// Code generated by go-swagger; DO NOT EDIT.

package models

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
	"encoding/json"

	strfmt "github.com/go-openapi/strfmt"

	"github.com/go-openapi/errors"
	"github.com/go-openapi/swag"
	"github.com/go-openapi/validate"
)

// GetCorporationsCorporationIDAssetsOKBodyItems get_corporations_corporation_id_assets_200_ok
//
// 200 ok object
// swagger:model getCorporationsCorporationIdAssetsOKBodyItems

type GetCorporationsCorporationIDAssetsOKBodyItems struct {

	// get_corporations_corporation_id_assets_is_singleton
	//
	// is_singleton boolean
	// Required: true
	IsSingleton *bool `json:"is_singleton"`

	// get_corporations_corporation_id_assets_item_id
	//
	// item_id integer
	// Required: true
	ItemID *int64 `json:"item_id"`

	// get_corporations_corporation_id_assets_location_flag
	//
	// location_flag string
	// Required: true
	LocationFlag *string `json:"location_flag"`

	// get_corporations_corporation_id_assets_location_id
	//
	// location_id integer
	// Required: true
	LocationID *int64 `json:"location_id"`

	// get_corporations_corporation_id_assets_location_type
	//
	// location_type string
	// Required: true
	LocationType *string `json:"location_type"`

	// get_corporations_corporation_id_assets_quantity
	//
	// quantity integer
	Quantity int32 `json:"quantity,omitempty"`

	// get_corporations_corporation_id_assets_type_id
	//
	// type_id integer
	// Required: true
	TypeID *int32 `json:"type_id"`
}

/* polymorph getCorporationsCorporationIdAssetsOKBodyItems is_singleton false */

/* polymorph getCorporationsCorporationIdAssetsOKBodyItems item_id false */

/* polymorph getCorporationsCorporationIdAssetsOKBodyItems location_flag false */

/* polymorph getCorporationsCorporationIdAssetsOKBodyItems location_id false */

/* polymorph getCorporationsCorporationIdAssetsOKBodyItems location_type false */

/* polymorph getCorporationsCorporationIdAssetsOKBodyItems quantity false */

/* polymorph getCorporationsCorporationIdAssetsOKBodyItems type_id false */

// Validate validates this get corporations corporation Id assets o k body items
func (m *GetCorporationsCorporationIDAssetsOKBodyItems) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validateIsSingleton(formats); err != nil {
		// prop
		res = append(res, err)
	}

	if err := m.validateItemID(formats); err != nil {
		// prop
		res = append(res, err)
	}

	if err := m.validateLocationFlag(formats); err != nil {
		// prop
		res = append(res, err)
	}

	if err := m.validateLocationID(formats); err != nil {
		// prop
		res = append(res, err)
	}

	if err := m.validateLocationType(formats); err != nil {
		// prop
		res = append(res, err)
	}

	if err := m.validateTypeID(formats); err != nil {
		// prop
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *GetCorporationsCorporationIDAssetsOKBodyItems) validateIsSingleton(formats strfmt.Registry) error {

	if err := validate.Required("is_singleton", "body", m.IsSingleton); err != nil {
		return err
	}

	return nil
}

func (m *GetCorporationsCorporationIDAssetsOKBodyItems) validateItemID(formats strfmt.Registry) error {

	if err := validate.Required("item_id", "body", m.ItemID); err != nil {
		return err
	}

	return nil
}

var getCorporationsCorporationIdAssetsOKBodyItemsTypeLocationFlagPropEnum []interface{}

func init() {
	var res []string
	if err := json.Unmarshal([]byte(`["AssetSafety","AutoFit","Bonus","Booster","BoosterBay","Capsule","Cargo","CorpDeliveries","CorpSAG1","CorpSAG2","CorpSAG3","CorpSAG4","CorpSAG5","CorpSAG6","CorpSAG7","CrateLoot","Deliveries","DroneBay","DustBattle","DustDatabank","FighterBay","FighterTube0","FighterTube1","FighterTube2","FighterTube3","FighterTube4","FleetHangar","Hangar","HangarAll","HiSlot0","HiSlot1","HiSlot2","HiSlot3","HiSlot4","HiSlot5","HiSlot6","HiSlot7","HiddenModifers","Implant","Impounded","JunkyardReprocessed","JunkyardTrashed","LoSlot0","LoSlot1","LoSlot2","LoSlot3","LoSlot4","LoSlot5","LoSlot6","LoSlot7","Locked","MedSlot0","MedSlot1","MedSlot2","MedSlot3","MedSlot4","MedSlot5","MedSlot6","MedSlot7","OfficeFolder","Pilot","PlanetSurface","QuafeBay","Reward","RigSlot0","RigSlot1","RigSlot2","RigSlot3","RigSlot4","RigSlot5","RigSlot6","RigSlot7","SecondaryStorage","ServiceSlot0","ServiceSlot1","ServiceSlot2","ServiceSlot3","ServiceSlot4","ServiceSlot5","ServiceSlot6","ServiceSlot7","ShipHangar","ShipOffline","Skill","SkillInTraining","SpecializedAmmoHold","SpecializedCommandCenterHold","SpecializedFuelBay","SpecializedGasHold","SpecializedIndustrialShipHold","SpecializedLargeShipHold","SpecializedMaterialBay","SpecializedMediumShipHold","SpecializedMineralHold","SpecializedOreHold","SpecializedPlanetaryCommoditiesHold","SpecializedSalvageHold","SpecializedShipHold","SpecializedSmallShipHold","StructureActive","StructureFuel","StructureInactive","StructureOffline","SubSystemSlot0","SubSystemSlot1","SubSystemSlot2","SubSystemSlot3","SubSystemSlot4","SubSystemSlot5","SubSystemSlot6","SubSystemSlot7","SubsystemBay","Unlocked","Wallet","Wardrobe"]`), &res); err != nil {
		panic(err)
	}
	for _, v := range res {
		getCorporationsCorporationIdAssetsOKBodyItemsTypeLocationFlagPropEnum = append(getCorporationsCorporationIdAssetsOKBodyItemsTypeLocationFlagPropEnum, v)
	}
}

const (
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagAssetSafety captures enum value "AssetSafety"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagAssetSafety string = "AssetSafety"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagAutoFit captures enum value "AutoFit"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagAutoFit string = "AutoFit"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagBonus captures enum value "Bonus"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagBonus string = "Bonus"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagBooster captures enum value "Booster"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagBooster string = "Booster"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagBoosterBay captures enum value "BoosterBay"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagBoosterBay string = "BoosterBay"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCapsule captures enum value "Capsule"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCapsule string = "Capsule"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCargo captures enum value "Cargo"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCargo string = "Cargo"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpDeliveries captures enum value "CorpDeliveries"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpDeliveries string = "CorpDeliveries"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG1 captures enum value "CorpSAG1"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG1 string = "CorpSAG1"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG2 captures enum value "CorpSAG2"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG2 string = "CorpSAG2"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG3 captures enum value "CorpSAG3"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG3 string = "CorpSAG3"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG4 captures enum value "CorpSAG4"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG4 string = "CorpSAG4"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG5 captures enum value "CorpSAG5"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG5 string = "CorpSAG5"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG6 captures enum value "CorpSAG6"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG6 string = "CorpSAG6"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG7 captures enum value "CorpSAG7"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCorpSAG7 string = "CorpSAG7"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCrateLoot captures enum value "CrateLoot"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagCrateLoot string = "CrateLoot"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagDeliveries captures enum value "Deliveries"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagDeliveries string = "Deliveries"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagDroneBay captures enum value "DroneBay"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagDroneBay string = "DroneBay"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagDustBattle captures enum value "DustBattle"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagDustBattle string = "DustBattle"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagDustDatabank captures enum value "DustDatabank"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagDustDatabank string = "DustDatabank"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterBay captures enum value "FighterBay"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterBay string = "FighterBay"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterTube0 captures enum value "FighterTube0"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterTube0 string = "FighterTube0"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterTube1 captures enum value "FighterTube1"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterTube1 string = "FighterTube1"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterTube2 captures enum value "FighterTube2"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterTube2 string = "FighterTube2"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterTube3 captures enum value "FighterTube3"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterTube3 string = "FighterTube3"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterTube4 captures enum value "FighterTube4"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFighterTube4 string = "FighterTube4"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFleetHangar captures enum value "FleetHangar"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagFleetHangar string = "FleetHangar"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHangar captures enum value "Hangar"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHangar string = "Hangar"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHangarAll captures enum value "HangarAll"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHangarAll string = "HangarAll"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot0 captures enum value "HiSlot0"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot0 string = "HiSlot0"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot1 captures enum value "HiSlot1"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot1 string = "HiSlot1"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot2 captures enum value "HiSlot2"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot2 string = "HiSlot2"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot3 captures enum value "HiSlot3"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot3 string = "HiSlot3"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot4 captures enum value "HiSlot4"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot4 string = "HiSlot4"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot5 captures enum value "HiSlot5"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot5 string = "HiSlot5"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot6 captures enum value "HiSlot6"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot6 string = "HiSlot6"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot7 captures enum value "HiSlot7"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiSlot7 string = "HiSlot7"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiddenModifers captures enum value "HiddenModifers"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagHiddenModifers string = "HiddenModifers"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagImplant captures enum value "Implant"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagImplant string = "Implant"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagImpounded captures enum value "Impounded"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagImpounded string = "Impounded"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagJunkyardReprocessed captures enum value "JunkyardReprocessed"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagJunkyardReprocessed string = "JunkyardReprocessed"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagJunkyardTrashed captures enum value "JunkyardTrashed"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagJunkyardTrashed string = "JunkyardTrashed"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot0 captures enum value "LoSlot0"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot0 string = "LoSlot0"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot1 captures enum value "LoSlot1"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot1 string = "LoSlot1"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot2 captures enum value "LoSlot2"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot2 string = "LoSlot2"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot3 captures enum value "LoSlot3"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot3 string = "LoSlot3"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot4 captures enum value "LoSlot4"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot4 string = "LoSlot4"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot5 captures enum value "LoSlot5"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot5 string = "LoSlot5"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot6 captures enum value "LoSlot6"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot6 string = "LoSlot6"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot7 captures enum value "LoSlot7"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLoSlot7 string = "LoSlot7"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLocked captures enum value "Locked"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagLocked string = "Locked"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot0 captures enum value "MedSlot0"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot0 string = "MedSlot0"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot1 captures enum value "MedSlot1"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot1 string = "MedSlot1"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot2 captures enum value "MedSlot2"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot2 string = "MedSlot2"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot3 captures enum value "MedSlot3"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot3 string = "MedSlot3"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot4 captures enum value "MedSlot4"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot4 string = "MedSlot4"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot5 captures enum value "MedSlot5"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot5 string = "MedSlot5"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot6 captures enum value "MedSlot6"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot6 string = "MedSlot6"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot7 captures enum value "MedSlot7"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagMedSlot7 string = "MedSlot7"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagOfficeFolder captures enum value "OfficeFolder"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagOfficeFolder string = "OfficeFolder"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagPilot captures enum value "Pilot"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagPilot string = "Pilot"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagPlanetSurface captures enum value "PlanetSurface"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagPlanetSurface string = "PlanetSurface"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagQuafeBay captures enum value "QuafeBay"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagQuafeBay string = "QuafeBay"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagReward captures enum value "Reward"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagReward string = "Reward"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot0 captures enum value "RigSlot0"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot0 string = "RigSlot0"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot1 captures enum value "RigSlot1"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot1 string = "RigSlot1"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot2 captures enum value "RigSlot2"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot2 string = "RigSlot2"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot3 captures enum value "RigSlot3"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot3 string = "RigSlot3"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot4 captures enum value "RigSlot4"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot4 string = "RigSlot4"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot5 captures enum value "RigSlot5"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot5 string = "RigSlot5"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot6 captures enum value "RigSlot6"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot6 string = "RigSlot6"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot7 captures enum value "RigSlot7"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagRigSlot7 string = "RigSlot7"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSecondaryStorage captures enum value "SecondaryStorage"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSecondaryStorage string = "SecondaryStorage"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot0 captures enum value "ServiceSlot0"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot0 string = "ServiceSlot0"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot1 captures enum value "ServiceSlot1"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot1 string = "ServiceSlot1"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot2 captures enum value "ServiceSlot2"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot2 string = "ServiceSlot2"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot3 captures enum value "ServiceSlot3"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot3 string = "ServiceSlot3"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot4 captures enum value "ServiceSlot4"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot4 string = "ServiceSlot4"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot5 captures enum value "ServiceSlot5"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot5 string = "ServiceSlot5"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot6 captures enum value "ServiceSlot6"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot6 string = "ServiceSlot6"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot7 captures enum value "ServiceSlot7"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagServiceSlot7 string = "ServiceSlot7"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagShipHangar captures enum value "ShipHangar"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagShipHangar string = "ShipHangar"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagShipOffline captures enum value "ShipOffline"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagShipOffline string = "ShipOffline"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSkill captures enum value "Skill"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSkill string = "Skill"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSkillInTraining captures enum value "SkillInTraining"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSkillInTraining string = "SkillInTraining"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedAmmoHold captures enum value "SpecializedAmmoHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedAmmoHold string = "SpecializedAmmoHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedCommandCenterHold captures enum value "SpecializedCommandCenterHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedCommandCenterHold string = "SpecializedCommandCenterHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedFuelBay captures enum value "SpecializedFuelBay"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedFuelBay string = "SpecializedFuelBay"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedGasHold captures enum value "SpecializedGasHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedGasHold string = "SpecializedGasHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedIndustrialShipHold captures enum value "SpecializedIndustrialShipHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedIndustrialShipHold string = "SpecializedIndustrialShipHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedLargeShipHold captures enum value "SpecializedLargeShipHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedLargeShipHold string = "SpecializedLargeShipHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedMaterialBay captures enum value "SpecializedMaterialBay"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedMaterialBay string = "SpecializedMaterialBay"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedMediumShipHold captures enum value "SpecializedMediumShipHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedMediumShipHold string = "SpecializedMediumShipHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedMineralHold captures enum value "SpecializedMineralHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedMineralHold string = "SpecializedMineralHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedOreHold captures enum value "SpecializedOreHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedOreHold string = "SpecializedOreHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedPlanetaryCommoditiesHold captures enum value "SpecializedPlanetaryCommoditiesHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedPlanetaryCommoditiesHold string = "SpecializedPlanetaryCommoditiesHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedSalvageHold captures enum value "SpecializedSalvageHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedSalvageHold string = "SpecializedSalvageHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedShipHold captures enum value "SpecializedShipHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedShipHold string = "SpecializedShipHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedSmallShipHold captures enum value "SpecializedSmallShipHold"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSpecializedSmallShipHold string = "SpecializedSmallShipHold"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagStructureActive captures enum value "StructureActive"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagStructureActive string = "StructureActive"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagStructureFuel captures enum value "StructureFuel"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagStructureFuel string = "StructureFuel"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagStructureInactive captures enum value "StructureInactive"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagStructureInactive string = "StructureInactive"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagStructureOffline captures enum value "StructureOffline"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagStructureOffline string = "StructureOffline"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot0 captures enum value "SubSystemSlot0"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot0 string = "SubSystemSlot0"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot1 captures enum value "SubSystemSlot1"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot1 string = "SubSystemSlot1"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot2 captures enum value "SubSystemSlot2"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot2 string = "SubSystemSlot2"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot3 captures enum value "SubSystemSlot3"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot3 string = "SubSystemSlot3"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot4 captures enum value "SubSystemSlot4"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot4 string = "SubSystemSlot4"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot5 captures enum value "SubSystemSlot5"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot5 string = "SubSystemSlot5"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot6 captures enum value "SubSystemSlot6"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot6 string = "SubSystemSlot6"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot7 captures enum value "SubSystemSlot7"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubSystemSlot7 string = "SubSystemSlot7"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubsystemBay captures enum value "SubsystemBay"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagSubsystemBay string = "SubsystemBay"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagUnlocked captures enum value "Unlocked"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagUnlocked string = "Unlocked"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagWallet captures enum value "Wallet"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagWallet string = "Wallet"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagWardrobe captures enum value "Wardrobe"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationFlagWardrobe string = "Wardrobe"
)

// prop value enum
func (m *GetCorporationsCorporationIDAssetsOKBodyItems) validateLocationFlagEnum(path, location string, value string) error {
	if err := validate.Enum(path, location, value, getCorporationsCorporationIdAssetsOKBodyItemsTypeLocationFlagPropEnum); err != nil {
		return err
	}
	return nil
}

func (m *GetCorporationsCorporationIDAssetsOKBodyItems) validateLocationFlag(formats strfmt.Registry) error {

	if err := validate.Required("location_flag", "body", m.LocationFlag); err != nil {
		return err
	}

	// value enum
	if err := m.validateLocationFlagEnum("location_flag", "body", *m.LocationFlag); err != nil {
		return err
	}

	return nil
}

func (m *GetCorporationsCorporationIDAssetsOKBodyItems) validateLocationID(formats strfmt.Registry) error {

	if err := validate.Required("location_id", "body", m.LocationID); err != nil {
		return err
	}

	return nil
}

var getCorporationsCorporationIdAssetsOKBodyItemsTypeLocationTypePropEnum []interface{}

func init() {
	var res []string
	if err := json.Unmarshal([]byte(`["station","solar_system","other"]`), &res); err != nil {
		panic(err)
	}
	for _, v := range res {
		getCorporationsCorporationIdAssetsOKBodyItemsTypeLocationTypePropEnum = append(getCorporationsCorporationIdAssetsOKBodyItemsTypeLocationTypePropEnum, v)
	}
}

const (
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationTypeStation captures enum value "station"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationTypeStation string = "station"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationTypeSolarSystem captures enum value "solar_system"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationTypeSolarSystem string = "solar_system"
	// GetCorporationsCorporationIDAssetsOKBodyItemsLocationTypeOther captures enum value "other"
	GetCorporationsCorporationIDAssetsOKBodyItemsLocationTypeOther string = "other"
)

// prop value enum
func (m *GetCorporationsCorporationIDAssetsOKBodyItems) validateLocationTypeEnum(path, location string, value string) error {
	if err := validate.Enum(path, location, value, getCorporationsCorporationIdAssetsOKBodyItemsTypeLocationTypePropEnum); err != nil {
		return err
	}
	return nil
}

func (m *GetCorporationsCorporationIDAssetsOKBodyItems) validateLocationType(formats strfmt.Registry) error {

	if err := validate.Required("location_type", "body", m.LocationType); err != nil {
		return err
	}

	// value enum
	if err := m.validateLocationTypeEnum("location_type", "body", *m.LocationType); err != nil {
		return err
	}

	return nil
}

func (m *GetCorporationsCorporationIDAssetsOKBodyItems) validateTypeID(formats strfmt.Registry) error {

	if err := validate.Required("type_id", "body", m.TypeID); err != nil {
		return err
	}

	return nil
}

// MarshalBinary interface implementation
func (m *GetCorporationsCorporationIDAssetsOKBodyItems) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *GetCorporationsCorporationIDAssetsOKBodyItems) UnmarshalBinary(b []byte) error {
	var res GetCorporationsCorporationIDAssetsOKBodyItems
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}
