/*
FinFeedAPI Stock REST API

No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)

API version: v1
Contact: support@apibricks.io
*/

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

package openapi

import (
	"encoding/json"
	"time"
)

// checks if the AdminAuctionInformationModel type satisfies the MappedNullable interface at compile time
var _ MappedNullable = &AdminAuctionInformationModel{}

// AdminAuctionInformationModel Represents the response DTO for auction information
type AdminAuctionInformationModel struct {
	// The stock symbol
	Symbol NullableString `json:"symbol,omitempty"`
	// Original timestamp in nanoseconds since epoch
	TimestampNanos *int64 `json:"timestamp_nanos,omitempty"`
	// Time when the auction data was recorded as DateTime
	Timestamp *time.Time `json:"timestamp,omitempty"`
	// Type of auction as byte value
	AuctionType *int32 `json:"auction_type,omitempty"`
	// Type of auction as character string
	AuctionTypeCode NullableString `json:"auction_type_code,omitempty"`
	// Human-readable description of the auction type
	AuctionTypeText NullableString `json:"auction_type_text,omitempty"`
	// Indicates if the auction type is 'Opening Auction' ('O'/0x4f).
	IsAuctionTypeOpening *bool `json:"is_auction_type_opening,omitempty"`
	// Indicates if the auction type is 'Closing Auction' ('C'/0x43).
	IsAuctionTypeClosing *bool `json:"is_auction_type_closing,omitempty"`
	// Indicates if the auction type is 'IPO Auction' ('I'/0x49).
	IsAuctionTypeIpo *bool `json:"is_auction_type_ipo,omitempty"`
	// Indicates if the auction type is 'Halt Auction' ('H'/0x48).
	IsAuctionTypeHalt *bool `json:"is_auction_type_halt,omitempty"`
	// Indicates if the auction type is 'Volatility Auction' ('V'/0x56).
	IsAuctionTypeVolatility *bool `json:"is_auction_type_volatility,omitempty"`
	// Number of shares paired at the Reference Price
	PairedShares *int32 `json:"paired_shares,omitempty"`
	// Reference price as decimal
	ReferencePrice *float64 `json:"reference_price,omitempty"`
	// Indicative clearing price as decimal
	IndicativeClearingPrice *float64 `json:"indicative_clearing_price,omitempty"`
	// Number of unpaired shares at the Reference Price
	ImbalanceShares *int32 `json:"imbalance_shares,omitempty"`
	// Side of the imbalance as byte value
	ImbalanceSide *int32 `json:"imbalance_side,omitempty"`
	// Side of the imbalance as character string
	ImbalanceSideCode NullableString `json:"imbalance_side_code,omitempty"`
	// Human-readable description of the imbalance side
	ImbalanceSideText NullableString `json:"imbalance_side_text,omitempty"`
	// Indicates if there is a buy-side imbalance ('B'/0x42).
	IsImbalanceSideBuy *bool `json:"is_imbalance_side_buy,omitempty"`
	// Indicates if there is a sell-side imbalance ('S'/0x53).
	IsImbalanceSideSell *bool `json:"is_imbalance_side_sell,omitempty"`
	// Indicates if there is no imbalance ('N'/0x4e).
	IsImbalanceSideNone *bool `json:"is_imbalance_side_none,omitempty"`
	// Number of extensions to the auction
	ExtensionNumber *int32 `json:"extension_number,omitempty"`
	// Scheduled auction time in seconds since epoch
	ScheduledAuctionTimeSeconds *int32 `json:"scheduled_auction_time_seconds,omitempty"`
	// Scheduled time for the auction as DateTime
	ScheduledAuctionTime *time.Time `json:"scheduled_auction_time,omitempty"`
	// Auction book clearing price as decimal
	AuctionBookClearingPrice *float64 `json:"auction_book_clearing_price,omitempty"`
	// Collar reference price as decimal
	CollarReferencePrice *float64 `json:"collar_reference_price,omitempty"`
	// Lower auction collar as decimal
	LowerAuctionCollar *float64 `json:"lower_auction_collar,omitempty"`
	// Upper auction collar as decimal
	UpperAuctionCollar *float64 `json:"upper_auction_collar,omitempty"`
}

// NewAdminAuctionInformationModel instantiates a new AdminAuctionInformationModel 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 NewAdminAuctionInformationModel() *AdminAuctionInformationModel {
	this := AdminAuctionInformationModel{}
	return &this
}

// NewAdminAuctionInformationModelWithDefaults instantiates a new AdminAuctionInformationModel 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 NewAdminAuctionInformationModelWithDefaults() *AdminAuctionInformationModel {
	this := AdminAuctionInformationModel{}
	return &this
}

// GetSymbol returns the Symbol field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *AdminAuctionInformationModel) GetSymbol() string {
	if o == nil || IsNil(o.Symbol.Get()) {
		var ret string
		return ret
	}
	return *o.Symbol.Get()
}

// GetSymbolOk returns a tuple with the Symbol field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *AdminAuctionInformationModel) GetSymbolOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.Symbol.Get(), o.Symbol.IsSet()
}

// HasSymbol returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasSymbol() bool {
	if o != nil && o.Symbol.IsSet() {
		return true
	}

	return false
}

// SetSymbol gets a reference to the given NullableString and assigns it to the Symbol field.
func (o *AdminAuctionInformationModel) SetSymbol(v string) {
	o.Symbol.Set(&v)
}
// SetSymbolNil sets the value for Symbol to be an explicit nil
func (o *AdminAuctionInformationModel) SetSymbolNil() {
	o.Symbol.Set(nil)
}

// UnsetSymbol ensures that no value is present for Symbol, not even an explicit nil
func (o *AdminAuctionInformationModel) UnsetSymbol() {
	o.Symbol.Unset()
}

// GetTimestampNanos returns the TimestampNanos field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetTimestampNanos() int64 {
	if o == nil || IsNil(o.TimestampNanos) {
		var ret int64
		return ret
	}
	return *o.TimestampNanos
}

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

// HasTimestampNanos returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasTimestampNanos() bool {
	if o != nil && !IsNil(o.TimestampNanos) {
		return true
	}

	return false
}

// SetTimestampNanos gets a reference to the given int64 and assigns it to the TimestampNanos field.
func (o *AdminAuctionInformationModel) SetTimestampNanos(v int64) {
	o.TimestampNanos = &v
}

// GetTimestamp returns the Timestamp field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetTimestamp() time.Time {
	if o == nil || IsNil(o.Timestamp) {
		var ret time.Time
		return ret
	}
	return *o.Timestamp
}

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

// HasTimestamp returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasTimestamp() bool {
	if o != nil && !IsNil(o.Timestamp) {
		return true
	}

	return false
}

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

// GetAuctionType returns the AuctionType field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetAuctionType() int32 {
	if o == nil || IsNil(o.AuctionType) {
		var ret int32
		return ret
	}
	return *o.AuctionType
}

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

// HasAuctionType returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasAuctionType() bool {
	if o != nil && !IsNil(o.AuctionType) {
		return true
	}

	return false
}

// SetAuctionType gets a reference to the given int32 and assigns it to the AuctionType field.
func (o *AdminAuctionInformationModel) SetAuctionType(v int32) {
	o.AuctionType = &v
}

// GetAuctionTypeCode returns the AuctionTypeCode field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *AdminAuctionInformationModel) GetAuctionTypeCode() string {
	if o == nil || IsNil(o.AuctionTypeCode.Get()) {
		var ret string
		return ret
	}
	return *o.AuctionTypeCode.Get()
}

// GetAuctionTypeCodeOk returns a tuple with the AuctionTypeCode field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *AdminAuctionInformationModel) GetAuctionTypeCodeOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.AuctionTypeCode.Get(), o.AuctionTypeCode.IsSet()
}

// HasAuctionTypeCode returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasAuctionTypeCode() bool {
	if o != nil && o.AuctionTypeCode.IsSet() {
		return true
	}

	return false
}

// SetAuctionTypeCode gets a reference to the given NullableString and assigns it to the AuctionTypeCode field.
func (o *AdminAuctionInformationModel) SetAuctionTypeCode(v string) {
	o.AuctionTypeCode.Set(&v)
}
// SetAuctionTypeCodeNil sets the value for AuctionTypeCode to be an explicit nil
func (o *AdminAuctionInformationModel) SetAuctionTypeCodeNil() {
	o.AuctionTypeCode.Set(nil)
}

// UnsetAuctionTypeCode ensures that no value is present for AuctionTypeCode, not even an explicit nil
func (o *AdminAuctionInformationModel) UnsetAuctionTypeCode() {
	o.AuctionTypeCode.Unset()
}

// GetAuctionTypeText returns the AuctionTypeText field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *AdminAuctionInformationModel) GetAuctionTypeText() string {
	if o == nil || IsNil(o.AuctionTypeText.Get()) {
		var ret string
		return ret
	}
	return *o.AuctionTypeText.Get()
}

// GetAuctionTypeTextOk returns a tuple with the AuctionTypeText field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *AdminAuctionInformationModel) GetAuctionTypeTextOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.AuctionTypeText.Get(), o.AuctionTypeText.IsSet()
}

// HasAuctionTypeText returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasAuctionTypeText() bool {
	if o != nil && o.AuctionTypeText.IsSet() {
		return true
	}

	return false
}

// SetAuctionTypeText gets a reference to the given NullableString and assigns it to the AuctionTypeText field.
func (o *AdminAuctionInformationModel) SetAuctionTypeText(v string) {
	o.AuctionTypeText.Set(&v)
}
// SetAuctionTypeTextNil sets the value for AuctionTypeText to be an explicit nil
func (o *AdminAuctionInformationModel) SetAuctionTypeTextNil() {
	o.AuctionTypeText.Set(nil)
}

// UnsetAuctionTypeText ensures that no value is present for AuctionTypeText, not even an explicit nil
func (o *AdminAuctionInformationModel) UnsetAuctionTypeText() {
	o.AuctionTypeText.Unset()
}

// GetIsAuctionTypeOpening returns the IsAuctionTypeOpening field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetIsAuctionTypeOpening() bool {
	if o == nil || IsNil(o.IsAuctionTypeOpening) {
		var ret bool
		return ret
	}
	return *o.IsAuctionTypeOpening
}

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

// HasIsAuctionTypeOpening returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasIsAuctionTypeOpening() bool {
	if o != nil && !IsNil(o.IsAuctionTypeOpening) {
		return true
	}

	return false
}

// SetIsAuctionTypeOpening gets a reference to the given bool and assigns it to the IsAuctionTypeOpening field.
func (o *AdminAuctionInformationModel) SetIsAuctionTypeOpening(v bool) {
	o.IsAuctionTypeOpening = &v
}

// GetIsAuctionTypeClosing returns the IsAuctionTypeClosing field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetIsAuctionTypeClosing() bool {
	if o == nil || IsNil(o.IsAuctionTypeClosing) {
		var ret bool
		return ret
	}
	return *o.IsAuctionTypeClosing
}

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

// HasIsAuctionTypeClosing returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasIsAuctionTypeClosing() bool {
	if o != nil && !IsNil(o.IsAuctionTypeClosing) {
		return true
	}

	return false
}

// SetIsAuctionTypeClosing gets a reference to the given bool and assigns it to the IsAuctionTypeClosing field.
func (o *AdminAuctionInformationModel) SetIsAuctionTypeClosing(v bool) {
	o.IsAuctionTypeClosing = &v
}

// GetIsAuctionTypeIpo returns the IsAuctionTypeIpo field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetIsAuctionTypeIpo() bool {
	if o == nil || IsNil(o.IsAuctionTypeIpo) {
		var ret bool
		return ret
	}
	return *o.IsAuctionTypeIpo
}

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

// HasIsAuctionTypeIpo returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasIsAuctionTypeIpo() bool {
	if o != nil && !IsNil(o.IsAuctionTypeIpo) {
		return true
	}

	return false
}

// SetIsAuctionTypeIpo gets a reference to the given bool and assigns it to the IsAuctionTypeIpo field.
func (o *AdminAuctionInformationModel) SetIsAuctionTypeIpo(v bool) {
	o.IsAuctionTypeIpo = &v
}

// GetIsAuctionTypeHalt returns the IsAuctionTypeHalt field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetIsAuctionTypeHalt() bool {
	if o == nil || IsNil(o.IsAuctionTypeHalt) {
		var ret bool
		return ret
	}
	return *o.IsAuctionTypeHalt
}

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

// HasIsAuctionTypeHalt returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasIsAuctionTypeHalt() bool {
	if o != nil && !IsNil(o.IsAuctionTypeHalt) {
		return true
	}

	return false
}

// SetIsAuctionTypeHalt gets a reference to the given bool and assigns it to the IsAuctionTypeHalt field.
func (o *AdminAuctionInformationModel) SetIsAuctionTypeHalt(v bool) {
	o.IsAuctionTypeHalt = &v
}

// GetIsAuctionTypeVolatility returns the IsAuctionTypeVolatility field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetIsAuctionTypeVolatility() bool {
	if o == nil || IsNil(o.IsAuctionTypeVolatility) {
		var ret bool
		return ret
	}
	return *o.IsAuctionTypeVolatility
}

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

// HasIsAuctionTypeVolatility returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasIsAuctionTypeVolatility() bool {
	if o != nil && !IsNil(o.IsAuctionTypeVolatility) {
		return true
	}

	return false
}

// SetIsAuctionTypeVolatility gets a reference to the given bool and assigns it to the IsAuctionTypeVolatility field.
func (o *AdminAuctionInformationModel) SetIsAuctionTypeVolatility(v bool) {
	o.IsAuctionTypeVolatility = &v
}

// GetPairedShares returns the PairedShares field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetPairedShares() int32 {
	if o == nil || IsNil(o.PairedShares) {
		var ret int32
		return ret
	}
	return *o.PairedShares
}

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

// HasPairedShares returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasPairedShares() bool {
	if o != nil && !IsNil(o.PairedShares) {
		return true
	}

	return false
}

// SetPairedShares gets a reference to the given int32 and assigns it to the PairedShares field.
func (o *AdminAuctionInformationModel) SetPairedShares(v int32) {
	o.PairedShares = &v
}

// GetReferencePrice returns the ReferencePrice field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetReferencePrice() float64 {
	if o == nil || IsNil(o.ReferencePrice) {
		var ret float64
		return ret
	}
	return *o.ReferencePrice
}

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

// HasReferencePrice returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasReferencePrice() bool {
	if o != nil && !IsNil(o.ReferencePrice) {
		return true
	}

	return false
}

// SetReferencePrice gets a reference to the given float64 and assigns it to the ReferencePrice field.
func (o *AdminAuctionInformationModel) SetReferencePrice(v float64) {
	o.ReferencePrice = &v
}

// GetIndicativeClearingPrice returns the IndicativeClearingPrice field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetIndicativeClearingPrice() float64 {
	if o == nil || IsNil(o.IndicativeClearingPrice) {
		var ret float64
		return ret
	}
	return *o.IndicativeClearingPrice
}

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

// HasIndicativeClearingPrice returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasIndicativeClearingPrice() bool {
	if o != nil && !IsNil(o.IndicativeClearingPrice) {
		return true
	}

	return false
}

// SetIndicativeClearingPrice gets a reference to the given float64 and assigns it to the IndicativeClearingPrice field.
func (o *AdminAuctionInformationModel) SetIndicativeClearingPrice(v float64) {
	o.IndicativeClearingPrice = &v
}

// GetImbalanceShares returns the ImbalanceShares field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetImbalanceShares() int32 {
	if o == nil || IsNil(o.ImbalanceShares) {
		var ret int32
		return ret
	}
	return *o.ImbalanceShares
}

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

// HasImbalanceShares returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasImbalanceShares() bool {
	if o != nil && !IsNil(o.ImbalanceShares) {
		return true
	}

	return false
}

// SetImbalanceShares gets a reference to the given int32 and assigns it to the ImbalanceShares field.
func (o *AdminAuctionInformationModel) SetImbalanceShares(v int32) {
	o.ImbalanceShares = &v
}

// GetImbalanceSide returns the ImbalanceSide field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetImbalanceSide() int32 {
	if o == nil || IsNil(o.ImbalanceSide) {
		var ret int32
		return ret
	}
	return *o.ImbalanceSide
}

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

// HasImbalanceSide returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasImbalanceSide() bool {
	if o != nil && !IsNil(o.ImbalanceSide) {
		return true
	}

	return false
}

// SetImbalanceSide gets a reference to the given int32 and assigns it to the ImbalanceSide field.
func (o *AdminAuctionInformationModel) SetImbalanceSide(v int32) {
	o.ImbalanceSide = &v
}

// GetImbalanceSideCode returns the ImbalanceSideCode field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *AdminAuctionInformationModel) GetImbalanceSideCode() string {
	if o == nil || IsNil(o.ImbalanceSideCode.Get()) {
		var ret string
		return ret
	}
	return *o.ImbalanceSideCode.Get()
}

// GetImbalanceSideCodeOk returns a tuple with the ImbalanceSideCode field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *AdminAuctionInformationModel) GetImbalanceSideCodeOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.ImbalanceSideCode.Get(), o.ImbalanceSideCode.IsSet()
}

// HasImbalanceSideCode returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasImbalanceSideCode() bool {
	if o != nil && o.ImbalanceSideCode.IsSet() {
		return true
	}

	return false
}

// SetImbalanceSideCode gets a reference to the given NullableString and assigns it to the ImbalanceSideCode field.
func (o *AdminAuctionInformationModel) SetImbalanceSideCode(v string) {
	o.ImbalanceSideCode.Set(&v)
}
// SetImbalanceSideCodeNil sets the value for ImbalanceSideCode to be an explicit nil
func (o *AdminAuctionInformationModel) SetImbalanceSideCodeNil() {
	o.ImbalanceSideCode.Set(nil)
}

// UnsetImbalanceSideCode ensures that no value is present for ImbalanceSideCode, not even an explicit nil
func (o *AdminAuctionInformationModel) UnsetImbalanceSideCode() {
	o.ImbalanceSideCode.Unset()
}

// GetImbalanceSideText returns the ImbalanceSideText field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *AdminAuctionInformationModel) GetImbalanceSideText() string {
	if o == nil || IsNil(o.ImbalanceSideText.Get()) {
		var ret string
		return ret
	}
	return *o.ImbalanceSideText.Get()
}

// GetImbalanceSideTextOk returns a tuple with the ImbalanceSideText field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *AdminAuctionInformationModel) GetImbalanceSideTextOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.ImbalanceSideText.Get(), o.ImbalanceSideText.IsSet()
}

// HasImbalanceSideText returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasImbalanceSideText() bool {
	if o != nil && o.ImbalanceSideText.IsSet() {
		return true
	}

	return false
}

// SetImbalanceSideText gets a reference to the given NullableString and assigns it to the ImbalanceSideText field.
func (o *AdminAuctionInformationModel) SetImbalanceSideText(v string) {
	o.ImbalanceSideText.Set(&v)
}
// SetImbalanceSideTextNil sets the value for ImbalanceSideText to be an explicit nil
func (o *AdminAuctionInformationModel) SetImbalanceSideTextNil() {
	o.ImbalanceSideText.Set(nil)
}

// UnsetImbalanceSideText ensures that no value is present for ImbalanceSideText, not even an explicit nil
func (o *AdminAuctionInformationModel) UnsetImbalanceSideText() {
	o.ImbalanceSideText.Unset()
}

// GetIsImbalanceSideBuy returns the IsImbalanceSideBuy field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetIsImbalanceSideBuy() bool {
	if o == nil || IsNil(o.IsImbalanceSideBuy) {
		var ret bool
		return ret
	}
	return *o.IsImbalanceSideBuy
}

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

// HasIsImbalanceSideBuy returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasIsImbalanceSideBuy() bool {
	if o != nil && !IsNil(o.IsImbalanceSideBuy) {
		return true
	}

	return false
}

// SetIsImbalanceSideBuy gets a reference to the given bool and assigns it to the IsImbalanceSideBuy field.
func (o *AdminAuctionInformationModel) SetIsImbalanceSideBuy(v bool) {
	o.IsImbalanceSideBuy = &v
}

// GetIsImbalanceSideSell returns the IsImbalanceSideSell field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetIsImbalanceSideSell() bool {
	if o == nil || IsNil(o.IsImbalanceSideSell) {
		var ret bool
		return ret
	}
	return *o.IsImbalanceSideSell
}

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

// HasIsImbalanceSideSell returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasIsImbalanceSideSell() bool {
	if o != nil && !IsNil(o.IsImbalanceSideSell) {
		return true
	}

	return false
}

// SetIsImbalanceSideSell gets a reference to the given bool and assigns it to the IsImbalanceSideSell field.
func (o *AdminAuctionInformationModel) SetIsImbalanceSideSell(v bool) {
	o.IsImbalanceSideSell = &v
}

// GetIsImbalanceSideNone returns the IsImbalanceSideNone field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetIsImbalanceSideNone() bool {
	if o == nil || IsNil(o.IsImbalanceSideNone) {
		var ret bool
		return ret
	}
	return *o.IsImbalanceSideNone
}

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

// HasIsImbalanceSideNone returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasIsImbalanceSideNone() bool {
	if o != nil && !IsNil(o.IsImbalanceSideNone) {
		return true
	}

	return false
}

// SetIsImbalanceSideNone gets a reference to the given bool and assigns it to the IsImbalanceSideNone field.
func (o *AdminAuctionInformationModel) SetIsImbalanceSideNone(v bool) {
	o.IsImbalanceSideNone = &v
}

// GetExtensionNumber returns the ExtensionNumber field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetExtensionNumber() int32 {
	if o == nil || IsNil(o.ExtensionNumber) {
		var ret int32
		return ret
	}
	return *o.ExtensionNumber
}

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

// HasExtensionNumber returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasExtensionNumber() bool {
	if o != nil && !IsNil(o.ExtensionNumber) {
		return true
	}

	return false
}

// SetExtensionNumber gets a reference to the given int32 and assigns it to the ExtensionNumber field.
func (o *AdminAuctionInformationModel) SetExtensionNumber(v int32) {
	o.ExtensionNumber = &v
}

// GetScheduledAuctionTimeSeconds returns the ScheduledAuctionTimeSeconds field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetScheduledAuctionTimeSeconds() int32 {
	if o == nil || IsNil(o.ScheduledAuctionTimeSeconds) {
		var ret int32
		return ret
	}
	return *o.ScheduledAuctionTimeSeconds
}

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

// HasScheduledAuctionTimeSeconds returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasScheduledAuctionTimeSeconds() bool {
	if o != nil && !IsNil(o.ScheduledAuctionTimeSeconds) {
		return true
	}

	return false
}

// SetScheduledAuctionTimeSeconds gets a reference to the given int32 and assigns it to the ScheduledAuctionTimeSeconds field.
func (o *AdminAuctionInformationModel) SetScheduledAuctionTimeSeconds(v int32) {
	o.ScheduledAuctionTimeSeconds = &v
}

// GetScheduledAuctionTime returns the ScheduledAuctionTime field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetScheduledAuctionTime() time.Time {
	if o == nil || IsNil(o.ScheduledAuctionTime) {
		var ret time.Time
		return ret
	}
	return *o.ScheduledAuctionTime
}

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

// HasScheduledAuctionTime returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasScheduledAuctionTime() bool {
	if o != nil && !IsNil(o.ScheduledAuctionTime) {
		return true
	}

	return false
}

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

// GetAuctionBookClearingPrice returns the AuctionBookClearingPrice field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetAuctionBookClearingPrice() float64 {
	if o == nil || IsNil(o.AuctionBookClearingPrice) {
		var ret float64
		return ret
	}
	return *o.AuctionBookClearingPrice
}

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

// HasAuctionBookClearingPrice returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasAuctionBookClearingPrice() bool {
	if o != nil && !IsNil(o.AuctionBookClearingPrice) {
		return true
	}

	return false
}

// SetAuctionBookClearingPrice gets a reference to the given float64 and assigns it to the AuctionBookClearingPrice field.
func (o *AdminAuctionInformationModel) SetAuctionBookClearingPrice(v float64) {
	o.AuctionBookClearingPrice = &v
}

// GetCollarReferencePrice returns the CollarReferencePrice field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetCollarReferencePrice() float64 {
	if o == nil || IsNil(o.CollarReferencePrice) {
		var ret float64
		return ret
	}
	return *o.CollarReferencePrice
}

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

// HasCollarReferencePrice returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasCollarReferencePrice() bool {
	if o != nil && !IsNil(o.CollarReferencePrice) {
		return true
	}

	return false
}

// SetCollarReferencePrice gets a reference to the given float64 and assigns it to the CollarReferencePrice field.
func (o *AdminAuctionInformationModel) SetCollarReferencePrice(v float64) {
	o.CollarReferencePrice = &v
}

// GetLowerAuctionCollar returns the LowerAuctionCollar field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetLowerAuctionCollar() float64 {
	if o == nil || IsNil(o.LowerAuctionCollar) {
		var ret float64
		return ret
	}
	return *o.LowerAuctionCollar
}

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

// HasLowerAuctionCollar returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasLowerAuctionCollar() bool {
	if o != nil && !IsNil(o.LowerAuctionCollar) {
		return true
	}

	return false
}

// SetLowerAuctionCollar gets a reference to the given float64 and assigns it to the LowerAuctionCollar field.
func (o *AdminAuctionInformationModel) SetLowerAuctionCollar(v float64) {
	o.LowerAuctionCollar = &v
}

// GetUpperAuctionCollar returns the UpperAuctionCollar field value if set, zero value otherwise.
func (o *AdminAuctionInformationModel) GetUpperAuctionCollar() float64 {
	if o == nil || IsNil(o.UpperAuctionCollar) {
		var ret float64
		return ret
	}
	return *o.UpperAuctionCollar
}

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

// HasUpperAuctionCollar returns a boolean if a field has been set.
func (o *AdminAuctionInformationModel) HasUpperAuctionCollar() bool {
	if o != nil && !IsNil(o.UpperAuctionCollar) {
		return true
	}

	return false
}

// SetUpperAuctionCollar gets a reference to the given float64 and assigns it to the UpperAuctionCollar field.
func (o *AdminAuctionInformationModel) SetUpperAuctionCollar(v float64) {
	o.UpperAuctionCollar = &v
}

func (o AdminAuctionInformationModel) MarshalJSON() ([]byte, error) {
	toSerialize,err := o.ToMap()
	if err != nil {
		return []byte{}, err
	}
	return json.Marshal(toSerialize)
}

func (o AdminAuctionInformationModel) ToMap() (map[string]interface{}, error) {
	toSerialize := map[string]interface{}{}
	if o.Symbol.IsSet() {
		toSerialize["symbol"] = o.Symbol.Get()
	}
	if !IsNil(o.TimestampNanos) {
		toSerialize["timestamp_nanos"] = o.TimestampNanos
	}
	if !IsNil(o.Timestamp) {
		toSerialize["timestamp"] = o.Timestamp
	}
	if !IsNil(o.AuctionType) {
		toSerialize["auction_type"] = o.AuctionType
	}
	if o.AuctionTypeCode.IsSet() {
		toSerialize["auction_type_code"] = o.AuctionTypeCode.Get()
	}
	if o.AuctionTypeText.IsSet() {
		toSerialize["auction_type_text"] = o.AuctionTypeText.Get()
	}
	if !IsNil(o.IsAuctionTypeOpening) {
		toSerialize["is_auction_type_opening"] = o.IsAuctionTypeOpening
	}
	if !IsNil(o.IsAuctionTypeClosing) {
		toSerialize["is_auction_type_closing"] = o.IsAuctionTypeClosing
	}
	if !IsNil(o.IsAuctionTypeIpo) {
		toSerialize["is_auction_type_ipo"] = o.IsAuctionTypeIpo
	}
	if !IsNil(o.IsAuctionTypeHalt) {
		toSerialize["is_auction_type_halt"] = o.IsAuctionTypeHalt
	}
	if !IsNil(o.IsAuctionTypeVolatility) {
		toSerialize["is_auction_type_volatility"] = o.IsAuctionTypeVolatility
	}
	if !IsNil(o.PairedShares) {
		toSerialize["paired_shares"] = o.PairedShares
	}
	if !IsNil(o.ReferencePrice) {
		toSerialize["reference_price"] = o.ReferencePrice
	}
	if !IsNil(o.IndicativeClearingPrice) {
		toSerialize["indicative_clearing_price"] = o.IndicativeClearingPrice
	}
	if !IsNil(o.ImbalanceShares) {
		toSerialize["imbalance_shares"] = o.ImbalanceShares
	}
	if !IsNil(o.ImbalanceSide) {
		toSerialize["imbalance_side"] = o.ImbalanceSide
	}
	if o.ImbalanceSideCode.IsSet() {
		toSerialize["imbalance_side_code"] = o.ImbalanceSideCode.Get()
	}
	if o.ImbalanceSideText.IsSet() {
		toSerialize["imbalance_side_text"] = o.ImbalanceSideText.Get()
	}
	if !IsNil(o.IsImbalanceSideBuy) {
		toSerialize["is_imbalance_side_buy"] = o.IsImbalanceSideBuy
	}
	if !IsNil(o.IsImbalanceSideSell) {
		toSerialize["is_imbalance_side_sell"] = o.IsImbalanceSideSell
	}
	if !IsNil(o.IsImbalanceSideNone) {
		toSerialize["is_imbalance_side_none"] = o.IsImbalanceSideNone
	}
	if !IsNil(o.ExtensionNumber) {
		toSerialize["extension_number"] = o.ExtensionNumber
	}
	if !IsNil(o.ScheduledAuctionTimeSeconds) {
		toSerialize["scheduled_auction_time_seconds"] = o.ScheduledAuctionTimeSeconds
	}
	if !IsNil(o.ScheduledAuctionTime) {
		toSerialize["scheduled_auction_time"] = o.ScheduledAuctionTime
	}
	if !IsNil(o.AuctionBookClearingPrice) {
		toSerialize["auction_book_clearing_price"] = o.AuctionBookClearingPrice
	}
	if !IsNil(o.CollarReferencePrice) {
		toSerialize["collar_reference_price"] = o.CollarReferencePrice
	}
	if !IsNil(o.LowerAuctionCollar) {
		toSerialize["lower_auction_collar"] = o.LowerAuctionCollar
	}
	if !IsNil(o.UpperAuctionCollar) {
		toSerialize["upper_auction_collar"] = o.UpperAuctionCollar
	}
	return toSerialize, nil
}

type NullableAdminAuctionInformationModel struct {
	value *AdminAuctionInformationModel
	isSet bool
}

func (v NullableAdminAuctionInformationModel) Get() *AdminAuctionInformationModel {
	return v.value
}

func (v *NullableAdminAuctionInformationModel) Set(val *AdminAuctionInformationModel) {
	v.value = val
	v.isSet = true
}

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

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

func NewNullableAdminAuctionInformationModel(val *AdminAuctionInformationModel) *NullableAdminAuctionInformationModel {
	return &NullableAdminAuctionInformationModel{value: val, isSet: true}
}

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

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


