package openapi

import (
	"encoding/json"
	"time"
)

type InstanceClassifier struct {
	Brands              *[]string            `json:"brands,omitempty"`
	CommitMessage       *string              `json:"commitMessage,omitempty"`
	DefaultIncidentType *string              `json:"defaultIncidentType,omitempty"`
	Description         *string              `json:"description,omitempty"`
	Feed                *bool                `json:"feed,omitempty"`
	FromServerVersion   *string              `json:"fromServerVersion,omitempty"`
	Highlight           *map[string][]string `json:"highlight,omitempty"`
	Id                  *string              `json:"id,omitempty"`

	IncidentSamples       *[]map[string]interface{} `json:"incidentSamples,omitempty"`
	IndicatorSamples      *[]FeedIndicator          `json:"indicatorSamples,omitempty"`
	InstanceIds           *[]string                 `json:"instanceIds,omitempty"`
	ItemVersion           *string                   `json:"itemVersion,omitempty"`
	KeyTypeMap            *map[string]interface{}   `json:"keyTypeMap,omitempty"`
	Locked                *bool                     `json:"locked,omitempty"`
	LogicalVersion        *int64                    `json:"logicalVersion,omitempty"`
	Mapping               *map[string]interface{}   `json:"mapping,omitempty"`
	Modified              *time.Time                `json:"modified,omitempty"`
	Name                  *string                   `json:"name,omitempty"`
	NameRaw               *string                   `json:"nameRaw,omitempty"`
	NumericId             *int64                    `json:"numericId,omitempty"`
	PackID                *string                   `json:"packID,omitempty"`
	PackPropagationLabels *[]string                 `json:"packPropagationLabels,omitempty"`
	PrevName              *string                   `json:"prevName,omitempty"`
	PrimaryTerm           *int64                    `json:"primaryTerm,omitempty"`
	PropagationLabels     *[]string                 `json:"propagationLabels,omitempty"`
	SequenceNumber        *int64                    `json:"sequenceNumber,omitempty"`
	ShouldCommit          *bool                     `json:"shouldCommit,omitempty"`
	SortValues            *[]string                 `json:"sortValues,omitempty"`
	SourceClassifierId    *string                   `json:"sourceClassifierId,omitempty"`
	System                *bool                     `json:"system,omitempty"`
	ToServerVersion       *string                   `json:"toServerVersion,omitempty"`
	Transformer           *map[string]interface{}   `json:"transformer,omitempty"`

	Type                              *string                      `json:"type,omitempty"`
	UnclassifiedCases                 *map[string]map[string]int64 `json:"unclassifiedCases,omitempty"`
	VcShouldIgnore                    *bool                        `json:"vcShouldIgnore,omitempty"`
	VcShouldKeepItemLegacyProdMachine *bool                        `json:"vcShouldKeepItemLegacyProdMachine,omitempty"`
	Version                           *int64                       `json:"version,omitempty"`
}

func NewInstanceClassifier() *InstanceClassifier {
	this := InstanceClassifier{}
	return &this
}

func NewInstanceClassifierWithDefaults() *InstanceClassifier {
	this := InstanceClassifier{}
	return &this
}

func (o *InstanceClassifier) GetBrands() []string {
	if o == nil || o.Brands == nil {
		var ret []string
		return ret
	}
	return *o.Brands
}

func (o *InstanceClassifier) GetBrandsOk() (*[]string, bool) {
	if o == nil || o.Brands == nil {
		return nil, false
	}
	return o.Brands, true
}

func (o *InstanceClassifier) HasBrands() bool {
	if o != nil && o.Brands != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetBrands(v []string) {
	o.Brands = &v
}

func (o *InstanceClassifier) GetCommitMessage() string {
	if o == nil || o.CommitMessage == nil {
		var ret string
		return ret
	}
	return *o.CommitMessage
}

func (o *InstanceClassifier) GetCommitMessageOk() (*string, bool) {
	if o == nil || o.CommitMessage == nil {
		return nil, false
	}
	return o.CommitMessage, true
}

func (o *InstanceClassifier) HasCommitMessage() bool {
	if o != nil && o.CommitMessage != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetCommitMessage(v string) {
	o.CommitMessage = &v
}

func (o *InstanceClassifier) GetDefaultIncidentType() string {
	if o == nil || o.DefaultIncidentType == nil {
		var ret string
		return ret
	}
	return *o.DefaultIncidentType
}

func (o *InstanceClassifier) GetDefaultIncidentTypeOk() (*string, bool) {
	if o == nil || o.DefaultIncidentType == nil {
		return nil, false
	}
	return o.DefaultIncidentType, true
}

func (o *InstanceClassifier) HasDefaultIncidentType() bool {
	if o != nil && o.DefaultIncidentType != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetDefaultIncidentType(v string) {
	o.DefaultIncidentType = &v
}

func (o *InstanceClassifier) GetDescription() string {
	if o == nil || o.Description == nil {
		var ret string
		return ret
	}
	return *o.Description
}

func (o *InstanceClassifier) GetDescriptionOk() (*string, bool) {
	if o == nil || o.Description == nil {
		return nil, false
	}
	return o.Description, true
}

func (o *InstanceClassifier) HasDescription() bool {
	if o != nil && o.Description != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetDescription(v string) {
	o.Description = &v
}

func (o *InstanceClassifier) GetFeed() bool {
	if o == nil || o.Feed == nil {
		var ret bool
		return ret
	}
	return *o.Feed
}

func (o *InstanceClassifier) GetFeedOk() (*bool, bool) {
	if o == nil || o.Feed == nil {
		return nil, false
	}
	return o.Feed, true
}

func (o *InstanceClassifier) HasFeed() bool {
	if o != nil && o.Feed != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetFeed(v bool) {
	o.Feed = &v
}

func (o *InstanceClassifier) GetFromServerVersion() string {
	if o == nil || o.FromServerVersion == nil {
		var ret string
		return ret
	}
	return *o.FromServerVersion
}

func (o *InstanceClassifier) GetFromServerVersionOk() (*string, bool) {
	if o == nil || o.FromServerVersion == nil {
		return nil, false
	}
	return o.FromServerVersion, true
}

func (o *InstanceClassifier) HasFromServerVersion() bool {
	if o != nil && o.FromServerVersion != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetFromServerVersion(v string) {
	o.FromServerVersion = &v
}

func (o *InstanceClassifier) GetHighlight() map[string][]string {
	if o == nil || o.Highlight == nil {
		var ret map[string][]string
		return ret
	}
	return *o.Highlight
}

func (o *InstanceClassifier) GetHighlightOk() (*map[string][]string, bool) {
	if o == nil || o.Highlight == nil {
		return nil, false
	}
	return o.Highlight, true
}

func (o *InstanceClassifier) HasHighlight() bool {
	if o != nil && o.Highlight != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetHighlight(v map[string][]string) {
	o.Highlight = &v
}

func (o *InstanceClassifier) GetId() string {
	if o == nil || o.Id == nil {
		var ret string
		return ret
	}
	return *o.Id
}

func (o *InstanceClassifier) GetIdOk() (*string, bool) {
	if o == nil || o.Id == nil {
		return nil, false
	}
	return o.Id, true
}

func (o *InstanceClassifier) HasId() bool {
	if o != nil && o.Id != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetId(v string) {
	o.Id = &v
}

func (o *InstanceClassifier) GetIncidentSamples() []map[string]interface{} {
	if o == nil || o.IncidentSamples == nil {
		var ret []map[string]interface{}
		return ret
	}
	return *o.IncidentSamples
}

func (o *InstanceClassifier) GetIncidentSamplesOk() (*[]map[string]interface{}, bool) {
	if o == nil || o.IncidentSamples == nil {
		return nil, false
	}
	return o.IncidentSamples, true
}

func (o *InstanceClassifier) HasIncidentSamples() bool {
	if o != nil && o.IncidentSamples != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetIncidentSamples(v []map[string]interface{}) {
	o.IncidentSamples = &v
}

func (o *InstanceClassifier) GetIndicatorSamples() []FeedIndicator {
	if o == nil || o.IndicatorSamples == nil {
		var ret []FeedIndicator
		return ret
	}
	return *o.IndicatorSamples
}

func (o *InstanceClassifier) GetIndicatorSamplesOk() (*[]FeedIndicator, bool) {
	if o == nil || o.IndicatorSamples == nil {
		return nil, false
	}
	return o.IndicatorSamples, true
}

func (o *InstanceClassifier) HasIndicatorSamples() bool {
	if o != nil && o.IndicatorSamples != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetIndicatorSamples(v []FeedIndicator) {
	o.IndicatorSamples = &v
}

func (o *InstanceClassifier) GetInstanceIds() []string {
	if o == nil || o.InstanceIds == nil {
		var ret []string
		return ret
	}
	return *o.InstanceIds
}

func (o *InstanceClassifier) GetInstanceIdsOk() (*[]string, bool) {
	if o == nil || o.InstanceIds == nil {
		return nil, false
	}
	return o.InstanceIds, true
}

func (o *InstanceClassifier) HasInstanceIds() bool {
	if o != nil && o.InstanceIds != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetInstanceIds(v []string) {
	o.InstanceIds = &v
}

func (o *InstanceClassifier) GetItemVersion() string {
	if o == nil || o.ItemVersion == nil {
		var ret string
		return ret
	}
	return *o.ItemVersion
}

func (o *InstanceClassifier) GetItemVersionOk() (*string, bool) {
	if o == nil || o.ItemVersion == nil {
		return nil, false
	}
	return o.ItemVersion, true
}

func (o *InstanceClassifier) HasItemVersion() bool {
	if o != nil && o.ItemVersion != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetItemVersion(v string) {
	o.ItemVersion = &v
}

func (o *InstanceClassifier) GetKeyTypeMap() map[string]interface{} {
	if o == nil || o.KeyTypeMap == nil {
		var ret map[string]interface{}
		return ret
	}
	return *o.KeyTypeMap
}

func (o *InstanceClassifier) GetKeyTypeMapOk() (*map[string]interface{}, bool) {
	if o == nil || o.KeyTypeMap == nil {
		return nil, false
	}
	return o.KeyTypeMap, true
}

func (o *InstanceClassifier) HasKeyTypeMap() bool {
	if o != nil && o.KeyTypeMap != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetKeyTypeMap(v map[string]interface{}) {
	o.KeyTypeMap = &v
}

func (o *InstanceClassifier) GetLocked() bool {
	if o == nil || o.Locked == nil {
		var ret bool
		return ret
	}
	return *o.Locked
}

func (o *InstanceClassifier) GetLockedOk() (*bool, bool) {
	if o == nil || o.Locked == nil {
		return nil, false
	}
	return o.Locked, true
}

func (o *InstanceClassifier) HasLocked() bool {
	if o != nil && o.Locked != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetLocked(v bool) {
	o.Locked = &v
}

func (o *InstanceClassifier) GetLogicalVersion() int64 {
	if o == nil || o.LogicalVersion == nil {
		var ret int64
		return ret
	}
	return *o.LogicalVersion
}

func (o *InstanceClassifier) GetLogicalVersionOk() (*int64, bool) {
	if o == nil || o.LogicalVersion == nil {
		return nil, false
	}
	return o.LogicalVersion, true
}

func (o *InstanceClassifier) HasLogicalVersion() bool {
	if o != nil && o.LogicalVersion != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetLogicalVersion(v int64) {
	o.LogicalVersion = &v
}

func (o *InstanceClassifier) GetMapping() map[string]interface{} {
	if o == nil || o.Mapping == nil {
		var ret map[string]interface{}
		return ret
	}
	return *o.Mapping
}

func (o *InstanceClassifier) GetMappingOk() (*map[string]interface{}, bool) {
	if o == nil || o.Mapping == nil {
		return nil, false
	}
	return o.Mapping, true
}

func (o *InstanceClassifier) HasMapping() bool {
	if o != nil && o.Mapping != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetMapping(v map[string]interface{}) {
	o.Mapping = &v
}

func (o *InstanceClassifier) GetModified() time.Time {
	if o == nil || o.Modified == nil {
		var ret time.Time
		return ret
	}
	return *o.Modified
}

func (o *InstanceClassifier) GetModifiedOk() (*time.Time, bool) {
	if o == nil || o.Modified == nil {
		return nil, false
	}
	return o.Modified, true
}

func (o *InstanceClassifier) HasModified() bool {
	if o != nil && o.Modified != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetModified(v time.Time) {
	o.Modified = &v
}

func (o *InstanceClassifier) GetName() string {
	if o == nil || o.Name == nil {
		var ret string
		return ret
	}
	return *o.Name
}

func (o *InstanceClassifier) GetNameOk() (*string, bool) {
	if o == nil || o.Name == nil {
		return nil, false
	}
	return o.Name, true
}

func (o *InstanceClassifier) HasName() bool {
	if o != nil && o.Name != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetName(v string) {
	o.Name = &v
}

func (o *InstanceClassifier) GetNameRaw() string {
	if o == nil || o.NameRaw == nil {
		var ret string
		return ret
	}
	return *o.NameRaw
}

func (o *InstanceClassifier) GetNameRawOk() (*string, bool) {
	if o == nil || o.NameRaw == nil {
		return nil, false
	}
	return o.NameRaw, true
}

func (o *InstanceClassifier) HasNameRaw() bool {
	if o != nil && o.NameRaw != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetNameRaw(v string) {
	o.NameRaw = &v
}

func (o *InstanceClassifier) GetNumericId() int64 {
	if o == nil || o.NumericId == nil {
		var ret int64
		return ret
	}
	return *o.NumericId
}

func (o *InstanceClassifier) GetNumericIdOk() (*int64, bool) {
	if o == nil || o.NumericId == nil {
		return nil, false
	}
	return o.NumericId, true
}

func (o *InstanceClassifier) HasNumericId() bool {
	if o != nil && o.NumericId != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetNumericId(v int64) {
	o.NumericId = &v
}

func (o *InstanceClassifier) GetPackID() string {
	if o == nil || o.PackID == nil {
		var ret string
		return ret
	}
	return *o.PackID
}

func (o *InstanceClassifier) GetPackIDOk() (*string, bool) {
	if o == nil || o.PackID == nil {
		return nil, false
	}
	return o.PackID, true
}

func (o *InstanceClassifier) HasPackID() bool {
	if o != nil && o.PackID != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetPackID(v string) {
	o.PackID = &v
}

func (o *InstanceClassifier) GetPackPropagationLabels() []string {
	if o == nil || o.PackPropagationLabels == nil {
		var ret []string
		return ret
	}
	return *o.PackPropagationLabels
}

func (o *InstanceClassifier) GetPackPropagationLabelsOk() (*[]string, bool) {
	if o == nil || o.PackPropagationLabels == nil {
		return nil, false
	}
	return o.PackPropagationLabels, true
}

func (o *InstanceClassifier) HasPackPropagationLabels() bool {
	if o != nil && o.PackPropagationLabels != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetPackPropagationLabels(v []string) {
	o.PackPropagationLabels = &v
}

func (o *InstanceClassifier) GetPrevName() string {
	if o == nil || o.PrevName == nil {
		var ret string
		return ret
	}
	return *o.PrevName
}

func (o *InstanceClassifier) GetPrevNameOk() (*string, bool) {
	if o == nil || o.PrevName == nil {
		return nil, false
	}
	return o.PrevName, true
}

func (o *InstanceClassifier) HasPrevName() bool {
	if o != nil && o.PrevName != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetPrevName(v string) {
	o.PrevName = &v
}

func (o *InstanceClassifier) GetPrimaryTerm() int64 {
	if o == nil || o.PrimaryTerm == nil {
		var ret int64
		return ret
	}
	return *o.PrimaryTerm
}

func (o *InstanceClassifier) GetPrimaryTermOk() (*int64, bool) {
	if o == nil || o.PrimaryTerm == nil {
		return nil, false
	}
	return o.PrimaryTerm, true
}

func (o *InstanceClassifier) HasPrimaryTerm() bool {
	if o != nil && o.PrimaryTerm != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetPrimaryTerm(v int64) {
	o.PrimaryTerm = &v
}

func (o *InstanceClassifier) GetPropagationLabels() []string {
	if o == nil || o.PropagationLabels == nil {
		var ret []string
		return ret
	}
	return *o.PropagationLabels
}

func (o *InstanceClassifier) GetPropagationLabelsOk() (*[]string, bool) {
	if o == nil || o.PropagationLabels == nil {
		return nil, false
	}
	return o.PropagationLabels, true
}

func (o *InstanceClassifier) HasPropagationLabels() bool {
	if o != nil && o.PropagationLabels != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetPropagationLabels(v []string) {
	o.PropagationLabels = &v
}

func (o *InstanceClassifier) GetSequenceNumber() int64 {
	if o == nil || o.SequenceNumber == nil {
		var ret int64
		return ret
	}
	return *o.SequenceNumber
}

func (o *InstanceClassifier) GetSequenceNumberOk() (*int64, bool) {
	if o == nil || o.SequenceNumber == nil {
		return nil, false
	}
	return o.SequenceNumber, true
}

func (o *InstanceClassifier) HasSequenceNumber() bool {
	if o != nil && o.SequenceNumber != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetSequenceNumber(v int64) {
	o.SequenceNumber = &v
}

func (o *InstanceClassifier) GetShouldCommit() bool {
	if o == nil || o.ShouldCommit == nil {
		var ret bool
		return ret
	}
	return *o.ShouldCommit
}

func (o *InstanceClassifier) GetShouldCommitOk() (*bool, bool) {
	if o == nil || o.ShouldCommit == nil {
		return nil, false
	}
	return o.ShouldCommit, true
}

func (o *InstanceClassifier) HasShouldCommit() bool {
	if o != nil && o.ShouldCommit != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetShouldCommit(v bool) {
	o.ShouldCommit = &v
}

func (o *InstanceClassifier) GetSortValues() []string {
	if o == nil || o.SortValues == nil {
		var ret []string
		return ret
	}
	return *o.SortValues
}

func (o *InstanceClassifier) GetSortValuesOk() (*[]string, bool) {
	if o == nil || o.SortValues == nil {
		return nil, false
	}
	return o.SortValues, true
}

func (o *InstanceClassifier) HasSortValues() bool {
	if o != nil && o.SortValues != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetSortValues(v []string) {
	o.SortValues = &v
}

func (o *InstanceClassifier) GetSourceClassifierId() string {
	if o == nil || o.SourceClassifierId == nil {
		var ret string
		return ret
	}
	return *o.SourceClassifierId
}

func (o *InstanceClassifier) GetSourceClassifierIdOk() (*string, bool) {
	if o == nil || o.SourceClassifierId == nil {
		return nil, false
	}
	return o.SourceClassifierId, true
}

func (o *InstanceClassifier) HasSourceClassifierId() bool {
	if o != nil && o.SourceClassifierId != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetSourceClassifierId(v string) {
	o.SourceClassifierId = &v
}

func (o *InstanceClassifier) GetSystem() bool {
	if o == nil || o.System == nil {
		var ret bool
		return ret
	}
	return *o.System
}

func (o *InstanceClassifier) GetSystemOk() (*bool, bool) {
	if o == nil || o.System == nil {
		return nil, false
	}
	return o.System, true
}

func (o *InstanceClassifier) HasSystem() bool {
	if o != nil && o.System != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetSystem(v bool) {
	o.System = &v
}

func (o *InstanceClassifier) GetToServerVersion() string {
	if o == nil || o.ToServerVersion == nil {
		var ret string
		return ret
	}
	return *o.ToServerVersion
}

func (o *InstanceClassifier) GetToServerVersionOk() (*string, bool) {
	if o == nil || o.ToServerVersion == nil {
		return nil, false
	}
	return o.ToServerVersion, true
}

func (o *InstanceClassifier) HasToServerVersion() bool {
	if o != nil && o.ToServerVersion != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetToServerVersion(v string) {
	o.ToServerVersion = &v
}

func (o *InstanceClassifier) GetTransformer() map[string]interface{} {
	if o == nil || o.Transformer == nil {
		var ret map[string]interface{}
		return ret
	}
	return *o.Transformer
}

func (o *InstanceClassifier) GetTransformerOk() (*map[string]interface{}, bool) {
	if o == nil || o.Transformer == nil {
		return nil, false
	}
	return o.Transformer, true
}

func (o *InstanceClassifier) HasTransformer() bool {
	if o != nil && o.Transformer != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetTransformer(v map[string]interface{}) {
	o.Transformer = &v
}

func (o *InstanceClassifier) GetType() string {
	if o == nil || o.Type == nil {
		var ret string
		return ret
	}
	return *o.Type
}

func (o *InstanceClassifier) GetTypeOk() (*string, bool) {
	if o == nil || o.Type == nil {
		return nil, false
	}
	return o.Type, true
}

func (o *InstanceClassifier) HasType() bool {
	if o != nil && o.Type != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetType(v string) {
	o.Type = &v
}

func (o *InstanceClassifier) GetUnclassifiedCases() map[string]map[string]int64 {
	if o == nil || o.UnclassifiedCases == nil {
		var ret map[string]map[string]int64
		return ret
	}
	return *o.UnclassifiedCases
}

func (o *InstanceClassifier) GetUnclassifiedCasesOk() (*map[string]map[string]int64, bool) {
	if o == nil || o.UnclassifiedCases == nil {
		return nil, false
	}
	return o.UnclassifiedCases, true
}

func (o *InstanceClassifier) HasUnclassifiedCases() bool {
	if o != nil && o.UnclassifiedCases != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetUnclassifiedCases(v map[string]map[string]int64) {
	o.UnclassifiedCases = &v
}

func (o *InstanceClassifier) GetVcShouldIgnore() bool {
	if o == nil || o.VcShouldIgnore == nil {
		var ret bool
		return ret
	}
	return *o.VcShouldIgnore
}

func (o *InstanceClassifier) GetVcShouldIgnoreOk() (*bool, bool) {
	if o == nil || o.VcShouldIgnore == nil {
		return nil, false
	}
	return o.VcShouldIgnore, true
}

func (o *InstanceClassifier) HasVcShouldIgnore() bool {
	if o != nil && o.VcShouldIgnore != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetVcShouldIgnore(v bool) {
	o.VcShouldIgnore = &v
}

func (o *InstanceClassifier) GetVcShouldKeepItemLegacyProdMachine() bool {
	if o == nil || o.VcShouldKeepItemLegacyProdMachine == nil {
		var ret bool
		return ret
	}
	return *o.VcShouldKeepItemLegacyProdMachine
}

func (o *InstanceClassifier) GetVcShouldKeepItemLegacyProdMachineOk() (*bool, bool) {
	if o == nil || o.VcShouldKeepItemLegacyProdMachine == nil {
		return nil, false
	}
	return o.VcShouldKeepItemLegacyProdMachine, true
}

func (o *InstanceClassifier) HasVcShouldKeepItemLegacyProdMachine() bool {
	if o != nil && o.VcShouldKeepItemLegacyProdMachine != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetVcShouldKeepItemLegacyProdMachine(v bool) {
	o.VcShouldKeepItemLegacyProdMachine = &v
}

func (o *InstanceClassifier) GetVersion() int64 {
	if o == nil || o.Version == nil {
		var ret int64
		return ret
	}
	return *o.Version
}

func (o *InstanceClassifier) GetVersionOk() (*int64, bool) {
	if o == nil || o.Version == nil {
		return nil, false
	}
	return o.Version, true
}

func (o *InstanceClassifier) HasVersion() bool {
	if o != nil && o.Version != nil {
		return true
	}

	return false
}

func (o *InstanceClassifier) SetVersion(v int64) {
	o.Version = &v
}

func (o InstanceClassifier) MarshalJSON() ([]byte, error) {
	toSerialize := map[string]interface{}{}
	if o.Brands != nil {
		toSerialize["brands"] = o.Brands
	}
	if o.CommitMessage != nil {
		toSerialize["commitMessage"] = o.CommitMessage
	}
	if o.DefaultIncidentType != nil {
		toSerialize["defaultIncidentType"] = o.DefaultIncidentType
	}
	if o.Description != nil {
		toSerialize["description"] = o.Description
	}
	if o.Feed != nil {
		toSerialize["feed"] = o.Feed
	}
	if o.FromServerVersion != nil {
		toSerialize["fromServerVersion"] = o.FromServerVersion
	}
	if o.Highlight != nil {
		toSerialize["highlight"] = o.Highlight
	}
	if o.Id != nil {
		toSerialize["id"] = o.Id
	}
	if o.IncidentSamples != nil {
		toSerialize["incidentSamples"] = o.IncidentSamples
	}
	if o.IndicatorSamples != nil {
		toSerialize["indicatorSamples"] = o.IndicatorSamples
	}
	if o.InstanceIds != nil {
		toSerialize["instanceIds"] = o.InstanceIds
	}
	if o.ItemVersion != nil {
		toSerialize["itemVersion"] = o.ItemVersion
	}
	if o.KeyTypeMap != nil {
		toSerialize["keyTypeMap"] = o.KeyTypeMap
	}
	if o.Locked != nil {
		toSerialize["locked"] = o.Locked
	}
	if o.LogicalVersion != nil {
		toSerialize["logicalVersion"] = o.LogicalVersion
	}
	if o.Mapping != nil {
		toSerialize["mapping"] = o.Mapping
	}
	if o.Modified != nil {
		toSerialize["modified"] = o.Modified
	}
	if o.Name != nil {
		toSerialize["name"] = o.Name
	}
	if o.NameRaw != nil {
		toSerialize["nameRaw"] = o.NameRaw
	}
	if o.NumericId != nil {
		toSerialize["numericId"] = o.NumericId
	}
	if o.PackID != nil {
		toSerialize["packID"] = o.PackID
	}
	if o.PackPropagationLabels != nil {
		toSerialize["packPropagationLabels"] = o.PackPropagationLabels
	}
	if o.PrevName != nil {
		toSerialize["prevName"] = o.PrevName
	}
	if o.PrimaryTerm != nil {
		toSerialize["primaryTerm"] = o.PrimaryTerm
	}
	if o.PropagationLabels != nil {
		toSerialize["propagationLabels"] = o.PropagationLabels
	}
	if o.SequenceNumber != nil {
		toSerialize["sequenceNumber"] = o.SequenceNumber
	}
	if o.ShouldCommit != nil {
		toSerialize["shouldCommit"] = o.ShouldCommit
	}
	if o.SortValues != nil {
		toSerialize["sortValues"] = o.SortValues
	}
	if o.SourceClassifierId != nil {
		toSerialize["sourceClassifierId"] = o.SourceClassifierId
	}
	if o.System != nil {
		toSerialize["system"] = o.System
	}
	if o.ToServerVersion != nil {
		toSerialize["toServerVersion"] = o.ToServerVersion
	}
	if o.Transformer != nil {
		toSerialize["transformer"] = o.Transformer
	}
	if o.Type != nil {
		toSerialize["type"] = o.Type
	}
	if o.UnclassifiedCases != nil {
		toSerialize["unclassifiedCases"] = o.UnclassifiedCases
	}
	if o.VcShouldIgnore != nil {
		toSerialize["vcShouldIgnore"] = o.VcShouldIgnore
	}
	if o.VcShouldKeepItemLegacyProdMachine != nil {
		toSerialize["vcShouldKeepItemLegacyProdMachine"] = o.VcShouldKeepItemLegacyProdMachine
	}
	if o.Version != nil {
		toSerialize["version"] = o.Version
	}
	return json.Marshal(toSerialize)
}

type NullableInstanceClassifier struct {
	value *InstanceClassifier
	isSet bool
}

func (v NullableInstanceClassifier) Get() *InstanceClassifier {
	return v.value
}

func (v *NullableInstanceClassifier) Set(val *InstanceClassifier) {
	v.value = val
	v.isSet = true
}

func (v NullableInstanceClassifier) IsSet() bool {
	return v.isSet
}

func (v *NullableInstanceClassifier) Unset() {
	v.value = nil
	v.isSet = false
}

func NewNullableInstanceClassifier(val *InstanceClassifier) *NullableInstanceClassifier {
	return &NullableInstanceClassifier{value: val, isSet: true}
}

func (v NullableInstanceClassifier) MarshalJSON() ([]byte, error) {
	return json.Marshal(v.value)
}

func (v *NullableInstanceClassifier) UnmarshalJSON(src []byte) error {
	v.isSet = true
	return json.Unmarshal(src, &v.value)
}
/*
Cortex XSOAR API

This is the public REST API to integrate with the Cortex XSOAR server. HTTP request can be sent using any HTTP-client.  For an example dedicated client take a look at: https://github.com/demisto/demisto-py.  Requests must include API-key that can be generated in the Cortex XSOAR web client under 'Settings' -> 'Integrations' -> 'API keys'   Optimistic Locking and Versioning\\:  When using Cortex XSOAR REST API, you will need to make sure to work on the latest version of the item (incident, entry, etc.), otherwise, you will get a DB version error (which not allow you to override a newer item). In addition, you can pass 'version\\: -1' to force data override (make sure that other users data might be lost).  Assume that Alice and Bob both read the same data from Cortex XSOAR server, then they both changed the data, and then both tried to write the new versions back to the server. Whose changes should be saved? Alice’s? Bob’s? To solve this, each data item in Cortex XSOAR has a numeric incremental version. If Alice saved an item with version 4 and Bob trying to save the same item with version 3, Cortex XSOAR will rollback Bob request and returns a DB version conflict error. Bob will need to get the latest item and work on it so Alice work will not get lost.  Example request using 'curl'\\:  ``` curl 'https://hostname:443/incidents/search' -H 'content-type: application/json' -H 'accept: application/json' -H 'Authorization: <API Key goes here>' --data-binary '{\"filter\":{\"query\":\"-status:closed -category:job\",\"period\":{\"by\":\"day\",\"fromValue\":7}}}' --compressed ```

API version: 2.0.0
*/

// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.

package openapi

import (
	"encoding/json"
	"time"
)

// InstanceClassifier InstanceClassifier - classifies an incident from a specific brand
type InstanceClassifier struct {
	Brands              *[]string            `json:"brands,omitempty"`
	CommitMessage       *string              `json:"commitMessage,omitempty"`
	DefaultIncidentType *string              `json:"defaultIncidentType,omitempty"`
	Description         *string              `json:"description,omitempty"`
	Feed                *bool                `json:"feed,omitempty"`
	FromServerVersion   *string              `json:"fromServerVersion,omitempty"`
	Highlight           *map[string][]string `json:"highlight,omitempty"`
	Id                  *string              `json:"id,omitempty"`
	// Incidents is a list of incident entities
	IncidentSamples       *[]map[string]interface{} `json:"incidentSamples,omitempty"`
	IndicatorSamples      *[]FeedIndicator          `json:"indicatorSamples,omitempty"`
	InstanceIds           *[]string                 `json:"instanceIds,omitempty"`
	ItemVersion           *string                   `json:"itemVersion,omitempty"`
	KeyTypeMap            *map[string]interface{}   `json:"keyTypeMap,omitempty"`
	Locked                *bool                     `json:"locked,omitempty"`
	LogicalVersion        *int64                    `json:"logicalVersion,omitempty"`
	Mapping               *map[string]interface{}   `json:"mapping,omitempty"`
	Modified              *time.Time                `json:"modified,omitempty"`
	Name                  *string                   `json:"name,omitempty"`
	NameRaw               *string                   `json:"nameRaw,omitempty"`
	NumericId             *int64                    `json:"numericId,omitempty"`
	PackID                *string                   `json:"packID,omitempty"`
	PackPropagationLabels *[]string                 `json:"packPropagationLabels,omitempty"`
	PrevName              *string                   `json:"prevName,omitempty"`
	PrimaryTerm           *int64                    `json:"primaryTerm,omitempty"`
	PropagationLabels     *[]string                 `json:"propagationLabels,omitempty"`
	SequenceNumber        *int64                    `json:"sequenceNumber,omitempty"`
	ShouldCommit          *bool                     `json:"shouldCommit,omitempty"`
	SortValues            *[]string                 `json:"sortValues,omitempty"`
	SourceClassifierId    *string                   `json:"sourceClassifierId,omitempty"`
	System                *bool                     `json:"system,omitempty"`
	ToServerVersion       *string                   `json:"toServerVersion,omitempty"`
	Transformer           *map[string]interface{}   `json:"transformer,omitempty"`
	// MapperType for instance classifier
	Type                              *string                      `json:"type,omitempty"`
	UnclassifiedCases                 *map[string]map[string]int64 `json:"unclassifiedCases,omitempty"`
	VcShouldIgnore                    *bool                        `json:"vcShouldIgnore,omitempty"`
	VcShouldKeepItemLegacyProdMachine *bool                        `json:"vcShouldKeepItemLegacyProdMachine,omitempty"`
	Version                           *int64                       `json:"version,omitempty"`
}

// NewInstanceClassifier instantiates a new InstanceClassifier object
// This constructor will assign default values to properties that have it defined,
// and makes sure properties required by API are set, but the set of arguments
// will change when the set of required properties is changed
func NewInstanceClassifier() *InstanceClassifier {
	this := InstanceClassifier{}
	return &this
}

// NewInstanceClassifierWithDefaults instantiates a new InstanceClassifier object
// This constructor will only assign default values to properties that have it defined,
// but it doesn't guarantee that properties required by API are set
func NewInstanceClassifierWithDefaults() *InstanceClassifier {
	this := InstanceClassifier{}
	return &this
}

// GetBrands returns the Brands field value if set, zero value otherwise.
func (o *InstanceClassifier) GetBrands() []string {
	if o == nil || o.Brands == nil {
		var ret []string
		return ret
	}
	return *o.Brands
}

// GetBrandsOk returns a tuple with the Brands field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetBrandsOk() (*[]string, bool) {
	if o == nil || o.Brands == nil {
		return nil, false
	}
	return o.Brands, true
}

// HasBrands returns a boolean if a field has been set.
func (o *InstanceClassifier) HasBrands() bool {
	if o != nil && o.Brands != nil {
		return true
	}

	return false
}

// SetBrands gets a reference to the given []string and assigns it to the Brands field.
func (o *InstanceClassifier) SetBrands(v []string) {
	o.Brands = &v
}

// GetCommitMessage returns the CommitMessage field value if set, zero value otherwise.
func (o *InstanceClassifier) GetCommitMessage() string {
	if o == nil || o.CommitMessage == nil {
		var ret string
		return ret
	}
	return *o.CommitMessage
}

// GetCommitMessageOk returns a tuple with the CommitMessage field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetCommitMessageOk() (*string, bool) {
	if o == nil || o.CommitMessage == nil {
		return nil, false
	}
	return o.CommitMessage, true
}

// HasCommitMessage returns a boolean if a field has been set.
func (o *InstanceClassifier) HasCommitMessage() bool {
	if o != nil && o.CommitMessage != nil {
		return true
	}

	return false
}

// SetCommitMessage gets a reference to the given string and assigns it to the CommitMessage field.
func (o *InstanceClassifier) SetCommitMessage(v string) {
	o.CommitMessage = &v
}

// GetDefaultIncidentType returns the DefaultIncidentType field value if set, zero value otherwise.
func (o *InstanceClassifier) GetDefaultIncidentType() string {
	if o == nil || o.DefaultIncidentType == nil {
		var ret string
		return ret
	}
	return *o.DefaultIncidentType
}

// GetDefaultIncidentTypeOk returns a tuple with the DefaultIncidentType field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetDefaultIncidentTypeOk() (*string, bool) {
	if o == nil || o.DefaultIncidentType == nil {
		return nil, false
	}
	return o.DefaultIncidentType, true
}

// HasDefaultIncidentType returns a boolean if a field has been set.
func (o *InstanceClassifier) HasDefaultIncidentType() bool {
	if o != nil && o.DefaultIncidentType != nil {
		return true
	}

	return false
}

// SetDefaultIncidentType gets a reference to the given string and assigns it to the DefaultIncidentType field.
func (o *InstanceClassifier) SetDefaultIncidentType(v string) {
	o.DefaultIncidentType = &v
}

// GetDescription returns the Description field value if set, zero value otherwise.
func (o *InstanceClassifier) GetDescription() string {
	if o == nil || o.Description == nil {
		var ret string
		return ret
	}
	return *o.Description
}

// GetDescriptionOk returns a tuple with the Description field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetDescriptionOk() (*string, bool) {
	if o == nil || o.Description == nil {
		return nil, false
	}
	return o.Description, true
}

// HasDescription returns a boolean if a field has been set.
func (o *InstanceClassifier) HasDescription() bool {
	if o != nil && o.Description != nil {
		return true
	}

	return false
}

// SetDescription gets a reference to the given string and assigns it to the Description field.
func (o *InstanceClassifier) SetDescription(v string) {
	o.Description = &v
}

// GetFeed returns the Feed field value if set, zero value otherwise.
func (o *InstanceClassifier) GetFeed() bool {
	if o == nil || o.Feed == nil {
		var ret bool
		return ret
	}
	return *o.Feed
}

// GetFeedOk returns a tuple with the Feed field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetFeedOk() (*bool, bool) {
	if o == nil || o.Feed == nil {
		return nil, false
	}
	return o.Feed, true
}

// HasFeed returns a boolean if a field has been set.
func (o *InstanceClassifier) HasFeed() bool {
	if o != nil && o.Feed != nil {
		return true
	}

	return false
}

// SetFeed gets a reference to the given bool and assigns it to the Feed field.
func (o *InstanceClassifier) SetFeed(v bool) {
	o.Feed = &v
}

// GetFromServerVersion returns the FromServerVersion field value if set, zero value otherwise.
func (o *InstanceClassifier) GetFromServerVersion() string {
	if o == nil || o.FromServerVersion == nil {
		var ret string
		return ret
	}
	return *o.FromServerVersion
}

// GetFromServerVersionOk returns a tuple with the FromServerVersion field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetFromServerVersionOk() (*string, bool) {
	if o == nil || o.FromServerVersion == nil {
		return nil, false
	}
	return o.FromServerVersion, true
}

// HasFromServerVersion returns a boolean if a field has been set.
func (o *InstanceClassifier) HasFromServerVersion() bool {
	if o != nil && o.FromServerVersion != nil {
		return true
	}

	return false
}

// SetFromServerVersion gets a reference to the given string and assigns it to the FromServerVersion field.
func (o *InstanceClassifier) SetFromServerVersion(v string) {
	o.FromServerVersion = &v
}

// GetHighlight returns the Highlight field value if set, zero value otherwise.
func (o *InstanceClassifier) GetHighlight() map[string][]string {
	if o == nil || o.Highlight == nil {
		var ret map[string][]string
		return ret
	}
	return *o.Highlight
}

// GetHighlightOk returns a tuple with the Highlight field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetHighlightOk() (*map[string][]string, bool) {
	if o == nil || o.Highlight == nil {
		return nil, false
	}
	return o.Highlight, true
}

// HasHighlight returns a boolean if a field has been set.
func (o *InstanceClassifier) HasHighlight() bool {
	if o != nil && o.Highlight != nil {
		return true
	}

	return false
}

// SetHighlight gets a reference to the given map[string][]string and assigns it to the Highlight field.
func (o *InstanceClassifier) SetHighlight(v map[string][]string) {
	o.Highlight = &v
}

// GetId returns the Id field value if set, zero value otherwise.
func (o *InstanceClassifier) GetId() string {
	if o == nil || o.Id == nil {
		var ret string
		return ret
	}
	return *o.Id
}

// GetIdOk returns a tuple with the Id field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetIdOk() (*string, bool) {
	if o == nil || o.Id == nil {
		return nil, false
	}
	return o.Id, true
}

// HasId returns a boolean if a field has been set.
func (o *InstanceClassifier) HasId() bool {
	if o != nil && o.Id != nil {
		return true
	}

	return false
}

// SetId gets a reference to the given string and assigns it to the Id field.
func (o *InstanceClassifier) SetId(v string) {
	o.Id = &v
}

// GetIncidentSamples returns the IncidentSamples field value if set, zero value otherwise.
func (o *InstanceClassifier) GetIncidentSamples() []map[string]interface{} {
	if o == nil || o.IncidentSamples == nil {
		var ret []map[string]interface{}
		return ret
	}
	return *o.IncidentSamples
}

// GetIncidentSamplesOk returns a tuple with the IncidentSamples field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetIncidentSamplesOk() (*[]map[string]interface{}, bool) {
	if o == nil || o.IncidentSamples == nil {
		return nil, false
	}
	return o.IncidentSamples, true
}

// HasIncidentSamples returns a boolean if a field has been set.
func (o *InstanceClassifier) HasIncidentSamples() bool {
	if o != nil && o.IncidentSamples != nil {
		return true
	}

	return false
}

// SetIncidentSamples gets a reference to the given []map[string]interface{} and assigns it to the IncidentSamples field.
func (o *InstanceClassifier) SetIncidentSamples(v []map[string]interface{}) {
	o.IncidentSamples = &v
}

// GetIndicatorSamples returns the IndicatorSamples field value if set, zero value otherwise.
func (o *InstanceClassifier) GetIndicatorSamples() []FeedIndicator {
	if o == nil || o.IndicatorSamples == nil {
		var ret []FeedIndicator
		return ret
	}
	return *o.IndicatorSamples
}

// GetIndicatorSamplesOk returns a tuple with the IndicatorSamples field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetIndicatorSamplesOk() (*[]FeedIndicator, bool) {
	if o == nil || o.IndicatorSamples == nil {
		return nil, false
	}
	return o.IndicatorSamples, true
}

// HasIndicatorSamples returns a boolean if a field has been set.
func (o *InstanceClassifier) HasIndicatorSamples() bool {
	if o != nil && o.IndicatorSamples != nil {
		return true
	}

	return false
}

// SetIndicatorSamples gets a reference to the given []FeedIndicator and assigns it to the IndicatorSamples field.
func (o *InstanceClassifier) SetIndicatorSamples(v []FeedIndicator) {
	o.IndicatorSamples = &v
}

// GetInstanceIds returns the InstanceIds field value if set, zero value otherwise.
func (o *InstanceClassifier) GetInstanceIds() []string {
	if o == nil || o.InstanceIds == nil {
		var ret []string
		return ret
	}
	return *o.InstanceIds
}

// GetInstanceIdsOk returns a tuple with the InstanceIds field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetInstanceIdsOk() (*[]string, bool) {
	if o == nil || o.InstanceIds == nil {
		return nil, false
	}
	return o.InstanceIds, true
}

// HasInstanceIds returns a boolean if a field has been set.
func (o *InstanceClassifier) HasInstanceIds() bool {
	if o != nil && o.InstanceIds != nil {
		return true
	}

	return false
}

// SetInstanceIds gets a reference to the given []string and assigns it to the InstanceIds field.
func (o *InstanceClassifier) SetInstanceIds(v []string) {
	o.InstanceIds = &v
}

// GetItemVersion returns the ItemVersion field value if set, zero value otherwise.
func (o *InstanceClassifier) GetItemVersion() string {
	if o == nil || o.ItemVersion == nil {
		var ret string
		return ret
	}
	return *o.ItemVersion
}

// GetItemVersionOk returns a tuple with the ItemVersion field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetItemVersionOk() (*string, bool) {
	if o == nil || o.ItemVersion == nil {
		return nil, false
	}
	return o.ItemVersion, true
}

// HasItemVersion returns a boolean if a field has been set.
func (o *InstanceClassifier) HasItemVersion() bool {
	if o != nil && o.ItemVersion != nil {
		return true
	}

	return false
}

// SetItemVersion gets a reference to the given string and assigns it to the ItemVersion field.
func (o *InstanceClassifier) SetItemVersion(v string) {
	o.ItemVersion = &v
}

// GetKeyTypeMap returns the KeyTypeMap field value if set, zero value otherwise.
func (o *InstanceClassifier) GetKeyTypeMap() map[string]interface{} {
	if o == nil || o.KeyTypeMap == nil {
		var ret map[string]interface{}
		return ret
	}
	return *o.KeyTypeMap
}

// GetKeyTypeMapOk returns a tuple with the KeyTypeMap field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetKeyTypeMapOk() (*map[string]interface{}, bool) {
	if o == nil || o.KeyTypeMap == nil {
		return nil, false
	}
	return o.KeyTypeMap, true
}

// HasKeyTypeMap returns a boolean if a field has been set.
func (o *InstanceClassifier) HasKeyTypeMap() bool {
	if o != nil && o.KeyTypeMap != nil {
		return true
	}

	return false
}

// SetKeyTypeMap gets a reference to the given map[string]interface{} and assigns it to the KeyTypeMap field.
func (o *InstanceClassifier) SetKeyTypeMap(v map[string]interface{}) {
	o.KeyTypeMap = &v
}

// GetLocked returns the Locked field value if set, zero value otherwise.
func (o *InstanceClassifier) GetLocked() bool {
	if o == nil || o.Locked == nil {
		var ret bool
		return ret
	}
	return *o.Locked
}

// GetLockedOk returns a tuple with the Locked field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetLockedOk() (*bool, bool) {
	if o == nil || o.Locked == nil {
		return nil, false
	}
	return o.Locked, true
}

// HasLocked returns a boolean if a field has been set.
func (o *InstanceClassifier) HasLocked() bool {
	if o != nil && o.Locked != nil {
		return true
	}

	return false
}

// SetLocked gets a reference to the given bool and assigns it to the Locked field.
func (o *InstanceClassifier) SetLocked(v bool) {
	o.Locked = &v
}

// GetLogicalVersion returns the LogicalVersion field value if set, zero value otherwise.
func (o *InstanceClassifier) GetLogicalVersion() int64 {
	if o == nil || o.LogicalVersion == nil {
		var ret int64
		return ret
	}
	return *o.LogicalVersion
}

// GetLogicalVersionOk returns a tuple with the LogicalVersion field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetLogicalVersionOk() (*int64, bool) {
	if o == nil || o.LogicalVersion == nil {
		return nil, false
	}
	return o.LogicalVersion, true
}

// HasLogicalVersion returns a boolean if a field has been set.
func (o *InstanceClassifier) HasLogicalVersion() bool {
	if o != nil && o.LogicalVersion != nil {
		return true
	}

	return false
}

// SetLogicalVersion gets a reference to the given int64 and assigns it to the LogicalVersion field.
func (o *InstanceClassifier) SetLogicalVersion(v int64) {
	o.LogicalVersion = &v
}

// GetMapping returns the Mapping field value if set, zero value otherwise.
func (o *InstanceClassifier) GetMapping() map[string]interface{} {
	if o == nil || o.Mapping == nil {
		var ret map[string]interface{}
		return ret
	}
	return *o.Mapping
}

// GetMappingOk returns a tuple with the Mapping field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetMappingOk() (*map[string]interface{}, bool) {
	if o == nil || o.Mapping == nil {
		return nil, false
	}
	return o.Mapping, true
}

// HasMapping returns a boolean if a field has been set.
func (o *InstanceClassifier) HasMapping() bool {
	if o != nil && o.Mapping != nil {
		return true
	}

	return false
}

// SetMapping gets a reference to the given map[string]interface{} and assigns it to the Mapping field.
func (o *InstanceClassifier) SetMapping(v map[string]interface{}) {
	o.Mapping = &v
}

// GetModified returns the Modified field value if set, zero value otherwise.
func (o *InstanceClassifier) GetModified() time.Time {
	if o == nil || o.Modified == nil {
		var ret time.Time
		return ret
	}
	return *o.Modified
}

// GetModifiedOk returns a tuple with the Modified field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetModifiedOk() (*time.Time, bool) {
	if o == nil || o.Modified == nil {
		return nil, false
	}
	return o.Modified, true
}

// HasModified returns a boolean if a field has been set.
func (o *InstanceClassifier) HasModified() bool {
	if o != nil && o.Modified != nil {
		return true
	}

	return false
}

// SetModified gets a reference to the given time.Time and assigns it to the Modified field.
func (o *InstanceClassifier) SetModified(v time.Time) {
	o.Modified = &v
}

// GetName returns the Name field value if set, zero value otherwise.
func (o *InstanceClassifier) GetName() string {
	if o == nil || o.Name == nil {
		var ret string
		return ret
	}
	return *o.Name
}

// GetNameOk returns a tuple with the Name field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetNameOk() (*string, bool) {
	if o == nil || o.Name == nil {
		return nil, false
	}
	return o.Name, true
}

// HasName returns a boolean if a field has been set.
func (o *InstanceClassifier) HasName() bool {
	if o != nil && o.Name != nil {
		return true
	}

	return false
}

// SetName gets a reference to the given string and assigns it to the Name field.
func (o *InstanceClassifier) SetName(v string) {
	o.Name = &v
}

// GetNameRaw returns the NameRaw field value if set, zero value otherwise.
func (o *InstanceClassifier) GetNameRaw() string {
	if o == nil || o.NameRaw == nil {
		var ret string
		return ret
	}
	return *o.NameRaw
}

// GetNameRawOk returns a tuple with the NameRaw field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetNameRawOk() (*string, bool) {
	if o == nil || o.NameRaw == nil {
		return nil, false
	}
	return o.NameRaw, true
}

// HasNameRaw returns a boolean if a field has been set.
func (o *InstanceClassifier) HasNameRaw() bool {
	if o != nil && o.NameRaw != nil {
		return true
	}

	return false
}

// SetNameRaw gets a reference to the given string and assigns it to the NameRaw field.
func (o *InstanceClassifier) SetNameRaw(v string) {
	o.NameRaw = &v
}

// GetNumericId returns the NumericId field value if set, zero value otherwise.
func (o *InstanceClassifier) GetNumericId() int64 {
	if o == nil || o.NumericId == nil {
		var ret int64
		return ret
	}
	return *o.NumericId
}

// GetNumericIdOk returns a tuple with the NumericId field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetNumericIdOk() (*int64, bool) {
	if o == nil || o.NumericId == nil {
		return nil, false
	}
	return o.NumericId, true
}

// HasNumericId returns a boolean if a field has been set.
func (o *InstanceClassifier) HasNumericId() bool {
	if o != nil && o.NumericId != nil {
		return true
	}

	return false
}

// SetNumericId gets a reference to the given int64 and assigns it to the NumericId field.
func (o *InstanceClassifier) SetNumericId(v int64) {
	o.NumericId = &v
}

// GetPackID returns the PackID field value if set, zero value otherwise.
func (o *InstanceClassifier) GetPackID() string {
	if o == nil || o.PackID == nil {
		var ret string
		return ret
	}
	return *o.PackID
}

// GetPackIDOk returns a tuple with the PackID field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetPackIDOk() (*string, bool) {
	if o == nil || o.PackID == nil {
		return nil, false
	}
	return o.PackID, true
}

// HasPackID returns a boolean if a field has been set.
func (o *InstanceClassifier) HasPackID() bool {
	if o != nil && o.PackID != nil {
		return true
	}

	return false
}

// SetPackID gets a reference to the given string and assigns it to the PackID field.
func (o *InstanceClassifier) SetPackID(v string) {
	o.PackID = &v
}

// GetPackPropagationLabels returns the PackPropagationLabels field value if set, zero value otherwise.
func (o *InstanceClassifier) GetPackPropagationLabels() []string {
	if o == nil || o.PackPropagationLabels == nil {
		var ret []string
		return ret
	}
	return *o.PackPropagationLabels
}

// GetPackPropagationLabelsOk returns a tuple with the PackPropagationLabels field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetPackPropagationLabelsOk() (*[]string, bool) {
	if o == nil || o.PackPropagationLabels == nil {
		return nil, false
	}
	return o.PackPropagationLabels, true
}

// HasPackPropagationLabels returns a boolean if a field has been set.
func (o *InstanceClassifier) HasPackPropagationLabels() bool {
	if o != nil && o.PackPropagationLabels != nil {
		return true
	}

	return false
}

// SetPackPropagationLabels gets a reference to the given []string and assigns it to the PackPropagationLabels field.
func (o *InstanceClassifier) SetPackPropagationLabels(v []string) {
	o.PackPropagationLabels = &v
}

// GetPrevName returns the PrevName field value if set, zero value otherwise.
func (o *InstanceClassifier) GetPrevName() string {
	if o == nil || o.PrevName == nil {
		var ret string
		return ret
	}
	return *o.PrevName
}

// GetPrevNameOk returns a tuple with the PrevName field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetPrevNameOk() (*string, bool) {
	if o == nil || o.PrevName == nil {
		return nil, false
	}
	return o.PrevName, true
}

// HasPrevName returns a boolean if a field has been set.
func (o *InstanceClassifier) HasPrevName() bool {
	if o != nil && o.PrevName != nil {
		return true
	}

	return false
}

// SetPrevName gets a reference to the given string and assigns it to the PrevName field.
func (o *InstanceClassifier) SetPrevName(v string) {
	o.PrevName = &v
}

// GetPrimaryTerm returns the PrimaryTerm field value if set, zero value otherwise.
func (o *InstanceClassifier) GetPrimaryTerm() int64 {
	if o == nil || o.PrimaryTerm == nil {
		var ret int64
		return ret
	}
	return *o.PrimaryTerm
}

// GetPrimaryTermOk returns a tuple with the PrimaryTerm field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetPrimaryTermOk() (*int64, bool) {
	if o == nil || o.PrimaryTerm == nil {
		return nil, false
	}
	return o.PrimaryTerm, true
}

// HasPrimaryTerm returns a boolean if a field has been set.
func (o *InstanceClassifier) HasPrimaryTerm() bool {
	if o != nil && o.PrimaryTerm != nil {
		return true
	}

	return false
}

// SetPrimaryTerm gets a reference to the given int64 and assigns it to the PrimaryTerm field.
func (o *InstanceClassifier) SetPrimaryTerm(v int64) {
	o.PrimaryTerm = &v
}

// GetPropagationLabels returns the PropagationLabels field value if set, zero value otherwise.
func (o *InstanceClassifier) GetPropagationLabels() []string {
	if o == nil || o.PropagationLabels == nil {
		var ret []string
		return ret
	}
	return *o.PropagationLabels
}

// GetPropagationLabelsOk returns a tuple with the PropagationLabels field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetPropagationLabelsOk() (*[]string, bool) {
	if o == nil || o.PropagationLabels == nil {
		return nil, false
	}
	return o.PropagationLabels, true
}

// HasPropagationLabels returns a boolean if a field has been set.
func (o *InstanceClassifier) HasPropagationLabels() bool {
	if o != nil && o.PropagationLabels != nil {
		return true
	}

	return false
}

// SetPropagationLabels gets a reference to the given []string and assigns it to the PropagationLabels field.
func (o *InstanceClassifier) SetPropagationLabels(v []string) {
	o.PropagationLabels = &v
}

// GetSequenceNumber returns the SequenceNumber field value if set, zero value otherwise.
func (o *InstanceClassifier) GetSequenceNumber() int64 {
	if o == nil || o.SequenceNumber == nil {
		var ret int64
		return ret
	}
	return *o.SequenceNumber
}

// GetSequenceNumberOk returns a tuple with the SequenceNumber field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetSequenceNumberOk() (*int64, bool) {
	if o == nil || o.SequenceNumber == nil {
		return nil, false
	}
	return o.SequenceNumber, true
}

// HasSequenceNumber returns a boolean if a field has been set.
func (o *InstanceClassifier) HasSequenceNumber() bool {
	if o != nil && o.SequenceNumber != nil {
		return true
	}

	return false
}

// SetSequenceNumber gets a reference to the given int64 and assigns it to the SequenceNumber field.
func (o *InstanceClassifier) SetSequenceNumber(v int64) {
	o.SequenceNumber = &v
}

// GetShouldCommit returns the ShouldCommit field value if set, zero value otherwise.
func (o *InstanceClassifier) GetShouldCommit() bool {
	if o == nil || o.ShouldCommit == nil {
		var ret bool
		return ret
	}
	return *o.ShouldCommit
}

// GetShouldCommitOk returns a tuple with the ShouldCommit field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetShouldCommitOk() (*bool, bool) {
	if o == nil || o.ShouldCommit == nil {
		return nil, false
	}
	return o.ShouldCommit, true
}

// HasShouldCommit returns a boolean if a field has been set.
func (o *InstanceClassifier) HasShouldCommit() bool {
	if o != nil && o.ShouldCommit != nil {
		return true
	}

	return false
}

// SetShouldCommit gets a reference to the given bool and assigns it to the ShouldCommit field.
func (o *InstanceClassifier) SetShouldCommit(v bool) {
	o.ShouldCommit = &v
}

// GetSortValues returns the SortValues field value if set, zero value otherwise.
func (o *InstanceClassifier) GetSortValues() []string {
	if o == nil || o.SortValues == nil {
		var ret []string
		return ret
	}
	return *o.SortValues
}

// GetSortValuesOk returns a tuple with the SortValues field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetSortValuesOk() (*[]string, bool) {
	if o == nil || o.SortValues == nil {
		return nil, false
	}
	return o.SortValues, true
}

// HasSortValues returns a boolean if a field has been set.
func (o *InstanceClassifier) HasSortValues() bool {
	if o != nil && o.SortValues != nil {
		return true
	}

	return false
}

// SetSortValues gets a reference to the given []string and assigns it to the SortValues field.
func (o *InstanceClassifier) SetSortValues(v []string) {
	o.SortValues = &v
}

// GetSourceClassifierId returns the SourceClassifierId field value if set, zero value otherwise.
func (o *InstanceClassifier) GetSourceClassifierId() string {
	if o == nil || o.SourceClassifierId == nil {
		var ret string
		return ret
	}
	return *o.SourceClassifierId
}

// GetSourceClassifierIdOk returns a tuple with the SourceClassifierId field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetSourceClassifierIdOk() (*string, bool) {
	if o == nil || o.SourceClassifierId == nil {
		return nil, false
	}
	return o.SourceClassifierId, true
}

// HasSourceClassifierId returns a boolean if a field has been set.
func (o *InstanceClassifier) HasSourceClassifierId() bool {
	if o != nil && o.SourceClassifierId != nil {
		return true
	}

	return false
}

// SetSourceClassifierId gets a reference to the given string and assigns it to the SourceClassifierId field.
func (o *InstanceClassifier) SetSourceClassifierId(v string) {
	o.SourceClassifierId = &v
}

// GetSystem returns the System field value if set, zero value otherwise.
func (o *InstanceClassifier) GetSystem() bool {
	if o == nil || o.System == nil {
		var ret bool
		return ret
	}
	return *o.System
}

// GetSystemOk returns a tuple with the System field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetSystemOk() (*bool, bool) {
	if o == nil || o.System == nil {
		return nil, false
	}
	return o.System, true
}

// HasSystem returns a boolean if a field has been set.
func (o *InstanceClassifier) HasSystem() bool {
	if o != nil && o.System != nil {
		return true
	}

	return false
}

// SetSystem gets a reference to the given bool and assigns it to the System field.
func (o *InstanceClassifier) SetSystem(v bool) {
	o.System = &v
}

// GetToServerVersion returns the ToServerVersion field value if set, zero value otherwise.
func (o *InstanceClassifier) GetToServerVersion() string {
	if o == nil || o.ToServerVersion == nil {
		var ret string
		return ret
	}
	return *o.ToServerVersion
}

// GetToServerVersionOk returns a tuple with the ToServerVersion field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetToServerVersionOk() (*string, bool) {
	if o == nil || o.ToServerVersion == nil {
		return nil, false
	}
	return o.ToServerVersion, true
}

// HasToServerVersion returns a boolean if a field has been set.
func (o *InstanceClassifier) HasToServerVersion() bool {
	if o != nil && o.ToServerVersion != nil {
		return true
	}

	return false
}

// SetToServerVersion gets a reference to the given string and assigns it to the ToServerVersion field.
func (o *InstanceClassifier) SetToServerVersion(v string) {
	o.ToServerVersion = &v
}

// GetTransformer returns the Transformer field value if set, zero value otherwise.
func (o *InstanceClassifier) GetTransformer() map[string]interface{} {
	if o == nil || o.Transformer == nil {
		var ret map[string]interface{}
		return ret
	}
	return *o.Transformer
}

// GetTransformerOk returns a tuple with the Transformer field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetTransformerOk() (*map[string]interface{}, bool) {
	if o == nil || o.Transformer == nil {
		return nil, false
	}
	return o.Transformer, true
}

// HasTransformer returns a boolean if a field has been set.
func (o *InstanceClassifier) HasTransformer() bool {
	if o != nil && o.Transformer != nil {
		return true
	}

	return false
}

// SetTransformer gets a reference to the given map[string]interface{} and assigns it to the Transformer field.
func (o *InstanceClassifier) SetTransformer(v map[string]interface{}) {
	o.Transformer = &v
}

// GetType returns the Type field value if set, zero value otherwise.
func (o *InstanceClassifier) GetType() string {
	if o == nil || o.Type == nil {
		var ret string
		return ret
	}
	return *o.Type
}

// GetTypeOk returns a tuple with the Type field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetTypeOk() (*string, bool) {
	if o == nil || o.Type == nil {
		return nil, false
	}
	return o.Type, true
}

// HasType returns a boolean if a field has been set.
func (o *InstanceClassifier) HasType() bool {
	if o != nil && o.Type != nil {
		return true
	}

	return false
}

// SetType gets a reference to the given string and assigns it to the Type field.
func (o *InstanceClassifier) SetType(v string) {
	o.Type = &v
}

// GetUnclassifiedCases returns the UnclassifiedCases field value if set, zero value otherwise.
func (o *InstanceClassifier) GetUnclassifiedCases() map[string]map[string]int64 {
	if o == nil || o.UnclassifiedCases == nil {
		var ret map[string]map[string]int64
		return ret
	}
	return *o.UnclassifiedCases
}

// GetUnclassifiedCasesOk returns a tuple with the UnclassifiedCases field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetUnclassifiedCasesOk() (*map[string]map[string]int64, bool) {
	if o == nil || o.UnclassifiedCases == nil {
		return nil, false
	}
	return o.UnclassifiedCases, true
}

// HasUnclassifiedCases returns a boolean if a field has been set.
func (o *InstanceClassifier) HasUnclassifiedCases() bool {
	if o != nil && o.UnclassifiedCases != nil {
		return true
	}

	return false
}

// SetUnclassifiedCases gets a reference to the given map[string]map[string]int64 and assigns it to the UnclassifiedCases field.
func (o *InstanceClassifier) SetUnclassifiedCases(v map[string]map[string]int64) {
	o.UnclassifiedCases = &v
}

// GetVcShouldIgnore returns the VcShouldIgnore field value if set, zero value otherwise.
func (o *InstanceClassifier) GetVcShouldIgnore() bool {
	if o == nil || o.VcShouldIgnore == nil {
		var ret bool
		return ret
	}
	return *o.VcShouldIgnore
}

// GetVcShouldIgnoreOk returns a tuple with the VcShouldIgnore field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetVcShouldIgnoreOk() (*bool, bool) {
	if o == nil || o.VcShouldIgnore == nil {
		return nil, false
	}
	return o.VcShouldIgnore, true
}

// HasVcShouldIgnore returns a boolean if a field has been set.
func (o *InstanceClassifier) HasVcShouldIgnore() bool {
	if o != nil && o.VcShouldIgnore != nil {
		return true
	}

	return false
}

// SetVcShouldIgnore gets a reference to the given bool and assigns it to the VcShouldIgnore field.
func (o *InstanceClassifier) SetVcShouldIgnore(v bool) {
	o.VcShouldIgnore = &v
}

// GetVcShouldKeepItemLegacyProdMachine returns the VcShouldKeepItemLegacyProdMachine field value if set, zero value otherwise.
func (o *InstanceClassifier) GetVcShouldKeepItemLegacyProdMachine() bool {
	if o == nil || o.VcShouldKeepItemLegacyProdMachine == nil {
		var ret bool
		return ret
	}
	return *o.VcShouldKeepItemLegacyProdMachine
}

// GetVcShouldKeepItemLegacyProdMachineOk returns a tuple with the VcShouldKeepItemLegacyProdMachine field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetVcShouldKeepItemLegacyProdMachineOk() (*bool, bool) {
	if o == nil || o.VcShouldKeepItemLegacyProdMachine == nil {
		return nil, false
	}
	return o.VcShouldKeepItemLegacyProdMachine, true
}

// HasVcShouldKeepItemLegacyProdMachine returns a boolean if a field has been set.
func (o *InstanceClassifier) HasVcShouldKeepItemLegacyProdMachine() bool {
	if o != nil && o.VcShouldKeepItemLegacyProdMachine != nil {
		return true
	}

	return false
}

// SetVcShouldKeepItemLegacyProdMachine gets a reference to the given bool and assigns it to the VcShouldKeepItemLegacyProdMachine field.
func (o *InstanceClassifier) SetVcShouldKeepItemLegacyProdMachine(v bool) {
	o.VcShouldKeepItemLegacyProdMachine = &v
}

// GetVersion returns the Version field value if set, zero value otherwise.
func (o *InstanceClassifier) GetVersion() int64 {
	if o == nil || o.Version == nil {
		var ret int64
		return ret
	}
	return *o.Version
}

// GetVersionOk returns a tuple with the Version field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *InstanceClassifier) GetVersionOk() (*int64, bool) {
	if o == nil || o.Version == nil {
		return nil, false
	}
	return o.Version, true
}

// HasVersion returns a boolean if a field has been set.
func (o *InstanceClassifier) HasVersion() bool {
	if o != nil && o.Version != nil {
		return true
	}

	return false
}

// SetVersion gets a reference to the given int64 and assigns it to the Version field.
func (o *InstanceClassifier) SetVersion(v int64) {
	o.Version = &v
}

func (o InstanceClassifier) MarshalJSON() ([]byte, error) {
	toSerialize := map[string]interface{}{}
	if o.Brands != nil {
		toSerialize["brands"] = o.Brands
	}
	if o.CommitMessage != nil {
		toSerialize["commitMessage"] = o.CommitMessage
	}
	if o.DefaultIncidentType != nil {
		toSerialize["defaultIncidentType"] = o.DefaultIncidentType
	}
	if o.Description != nil {
		toSerialize["description"] = o.Description
	}
	if o.Feed != nil {
		toSerialize["feed"] = o.Feed
	}
	if o.FromServerVersion != nil {
		toSerialize["fromServerVersion"] = o.FromServerVersion
	}
	if o.Highlight != nil {
		toSerialize["highlight"] = o.Highlight
	}
	if o.Id != nil {
		toSerialize["id"] = o.Id
	}
	if o.IncidentSamples != nil {
		toSerialize["incidentSamples"] = o.IncidentSamples
	}
	if o.IndicatorSamples != nil {
		toSerialize["indicatorSamples"] = o.IndicatorSamples
	}
	if o.InstanceIds != nil {
		toSerialize["instanceIds"] = o.InstanceIds
	}
	if o.ItemVersion != nil {
		toSerialize["itemVersion"] = o.ItemVersion
	}
	if o.KeyTypeMap != nil {
		toSerialize["keyTypeMap"] = o.KeyTypeMap
	}
	if o.Locked != nil {
		toSerialize["locked"] = o.Locked
	}
	if o.LogicalVersion != nil {
		toSerialize["logicalVersion"] = o.LogicalVersion
	}
	if o.Mapping != nil {
		toSerialize["mapping"] = o.Mapping
	}
	if o.Modified != nil {
		toSerialize["modified"] = o.Modified
	}
	if o.Name != nil {
		toSerialize["name"] = o.Name
	}
	if o.NameRaw != nil {
		toSerialize["nameRaw"] = o.NameRaw
	}
	if o.NumericId != nil {
		toSerialize["numericId"] = o.NumericId
	}
	if o.PackID != nil {
		toSerialize["packID"] = o.PackID
	}
	if o.PackPropagationLabels != nil {
		toSerialize["packPropagationLabels"] = o.PackPropagationLabels
	}
	if o.PrevName != nil {
		toSerialize["prevName"] = o.PrevName
	}
	if o.PrimaryTerm != nil {
		toSerialize["primaryTerm"] = o.PrimaryTerm
	}
	if o.PropagationLabels != nil {
		toSerialize["propagationLabels"] = o.PropagationLabels
	}
	if o.SequenceNumber != nil {
		toSerialize["sequenceNumber"] = o.SequenceNumber
	}
	if o.ShouldCommit != nil {
		toSerialize["shouldCommit"] = o.ShouldCommit
	}
	if o.SortValues != nil {
		toSerialize["sortValues"] = o.SortValues
	}
	if o.SourceClassifierId != nil {
		toSerialize["sourceClassifierId"] = o.SourceClassifierId
	}
	if o.System != nil {
		toSerialize["system"] = o.System
	}
	if o.ToServerVersion != nil {
		toSerialize["toServerVersion"] = o.ToServerVersion
	}
	if o.Transformer != nil {
		toSerialize["transformer"] = o.Transformer
	}
	if o.Type != nil {
		toSerialize["type"] = o.Type
	}
	if o.UnclassifiedCases != nil {
		toSerialize["unclassifiedCases"] = o.UnclassifiedCases
	}
	if o.VcShouldIgnore != nil {
		toSerialize["vcShouldIgnore"] = o.VcShouldIgnore
	}
	if o.VcShouldKeepItemLegacyProdMachine != nil {
		toSerialize["vcShouldKeepItemLegacyProdMachine"] = o.VcShouldKeepItemLegacyProdMachine
	}
	if o.Version != nil {
		toSerialize["version"] = o.Version
	}
	return json.Marshal(toSerialize)
}

type NullableInstanceClassifier struct {
	value *InstanceClassifier
	isSet bool
}

func (v NullableInstanceClassifier) Get() *InstanceClassifier {
	return v.value
}

func (v *NullableInstanceClassifier) Set(val *InstanceClassifier) {
	v.value = val
	v.isSet = true
}

func (v NullableInstanceClassifier) IsSet() bool {
	return v.isSet
}

func (v *NullableInstanceClassifier) Unset() {
	v.value = nil
	v.isSet = false
}

func NewNullableInstanceClassifier(val *InstanceClassifier) *NullableInstanceClassifier {
	return &NullableInstanceClassifier{value: val, isSet: true}
}

func (v NullableInstanceClassifier) MarshalJSON() ([]byte, error) {
	return json.Marshal(v.value)
}

func (v *NullableInstanceClassifier) UnmarshalJSON(src []byte) error {
	v.isSet = true
	return json.Unmarshal(src, &v.value)
}
