(ns weathergen.falcon.constants
  "Constants used in Falcon files."
  #?(:clj (:require [weathergen.cljs.macros :refer [with-file defenum]])
     :cljs (:require-macros [weathergen.cljs.macros :refer [with-file defenum]])))

(with-file "camplib.h"
 (def VEHICLE_GROUPS_PER_UNIT 16)
 (def FEATURES_PER_OBJ        32)
 (def MAXIMUM_ROLES           16)
 (def MAXIMUM_OBJTYPES        32)
 (def MAXIMUM_WEAPTYPES       600)
 (def MAX_UNIT_CHILDREN       5)
 (def MAX_FEAT_DEPEND         5)

 (def MAX_NUMBER_OF_OBJECTIVES 8000)
 (def MAX_NUMBER_OF_UNITS 4000)     ; Max # of NON volitile units only
 (def MAX_NUMBER_OF_VOLATILE_UNITS 16000)
 (def MAX_CAMP_ENTITIES (+ MAX_NUMBER_OF_OBJECTIVES
                           MAX_NUMBER_OF_UNITS
                           MAX_NUMBER_OF_VOLATILE_UNITS)))

(with-file "campweap.h"
  (defenum DamageDataType
    NoDamage,
    PenetrationDam,                ; Hardened structures, tanks, ships
    HighExplosiveDam,              ; Soft targets, area targets
    HeaveDam,                      ; Runways
    IncendairyDam,                 ; Burn baby, burn
    ProximityDam,                  ; AA missiles, etc.
    KineticDam,                    ; Guns, small arms fire
    HydrostaticDam,                ; Submarines
    ChemicalDam,
    NuclearDam,
    OtherDam)

  (def WEAP_RECON 0x01) ;; Used for recon
  (def WEAP_FUEL 0x02) ;; Fuel tank
  (def WEAP_ECM 0x04) ;; Used for ECM
  (def WEAP_AREA 0x08) ;; Can damage multiple vehicles
  (def WEAP_CLUSTER 0x10) ;; CBU -- cluster bomb
  (def WEAP_TRACER 0x20) ;; Use tracers when drawing weapon fire
  (def WEAP_ALWAYSRACK 0x40) ;; this weapon has no rack
  (def WEAP_LGB_3RD_GEN 0x80) ;; 3rd generation LGB's
  (def WEAP_BOMBWARHEAD 0x100) ;; this is for example a missile with a
                               ;; bomb war head. MissileEnd when
                               ;; ground impact, not when lethalradius
                               ;; reached
  (def WEAP_NO_TRAIL 0x200) ;; do not display any weapon trails or engine glow
  (def WEAP_BOMBDROPSOUND 0x400) ;; play the bomb drop sound instead of missile launch
  (def WEAP_BOMBGPS 0x800) ;; we use this for JDAM "missile" bombs to have them always CanDetectObject and CanSeeObject true

  ;; RV - Biker - Make the rocket marker flag usable
  (def WEAP_ROCKET_MARKER 0x1000)

  (def WEAP_FORCE_ON_ONE 0x2000) ;; Put all requested weapons on one/two hardpoints
  (def WEAP_GUN 0x4000) ;; Used by LoadWeapons only - to specify guns only
  (def WEAP_ONETENTH 0x8000) ;; # listed is actually 1/10th the # of shots

  (def WEAP_BAI_LOADOUT 0x10000) ;; special loadout for BAI type missions:
  ;;  Mavericks and dumb bombs, GBU only
  ;;  GBU-12 (wid 68) and GBU-22 (wid 310)
  ;;  flag is NOT used in the WeaponClassDataType,
  ;;  for loading specific weapons only
  ;;
  ;; RV Biker - Some more loadout flags
  (def WEAP_DEAD_LOADOUT 0x20000) ;; Give long range weapons higher prio
  (def WEAP_LASER_POD 0x40000) ;; Used to load laser pods on HPs
  (def WEAP_FAC_LOADOUT 0x80000) ;; Load Willy Pete rockets only
  (def WEAP_CHAFF_POD 0x100000) ;; Load Chaff Flare dispenser pods

  (def WEAP_INFINITE_MASK 0x07) ;; Things which meet this mask never run out.

  ;; Number of hardpoints in the weapon table
  (def HARDPOINT_MAX 16))


(with-file "f4vu.h"
  (def VU_DOMAIN 0)
  (def VU_CLASS 1)
  (def VU_TYPE 2)
  (def VU_STYPE 3)
  (def VU_SPTYPE 4)
  (def VU_OWNER 5)

  ;; Vis type defines
  (def VIS_NORMAL 0)
  (def VIS_REPAIRED 1)
  (def VIS_DAMAGED 2)
  (def VIS_DESTROYED 3)
  (def VIS_LEFT_DEST 4)
  (def VIS_RIGHT_DEST 5)
  (def VIS_BOTH_DEST 6))

(with-file "classtbl.h"
  (defenum Classtable_Domains
    DOMAIN_ABSTRACT             = 1,
    DOMAIN_AIR                  = 2,
    DOMAIN_LAND                 = 3,
    DOMAIN_SEA                  = 4,
    DOMAIN_SPACE                = 5,
    DOMAIN_UNDERGROUND          = 6,
    DOMAIN_UNDERSEA             = 7)

  (defenum Classtable_Classes
    CLASS_ANIMAL                = 1,
    CLASS_FEATURE               = 2,
    CLASS_MANAGER               = 3,
    CLASS_OBJECTIVE             = 4,
    CLASS_SFX                   = 5,
    CLASS_UNIT                  = 6,
    CLASS_VEHICLE               = 7,
    CLASS_WEAPON                = 8,
    CLASS_WEATHER               = 9,
    CLASS_SESSION               = 10,
    CLASS_ABSTRACT              = 0,
    CLASS_GAME                  = 11,
    CLASS_GROUP                 = 12,
    CLASS_DIALOG                = 13)

  (defenum Classtable_Types
    TYPE_NOTHING                = 1,
    TYPE_GUN                    = 3,
    TYPE_MINESWEEP              = 2,
    TYPE_RACK                   = 4,
    TYPE_ATM                    = 1,
    TYPE_FLIGHT                 = 1,
    TYPE_PACKAGE                = 2,
    TYPE_SQUADRON               = 3,
    TYPE_AIRPLANE               = 1,
    TYPE_BOMB                   = 2,
    TYPE_ELECTRONICS            = 3,
    TYPE_FUEL_TANK              = 4,
    TYPE_HELICOPTER             = 5,
    TYPE_MISSILE                = 6,
    TYPE_RECON                  = 7,
    TYPE_ROCKET                 = 8,
    TYPE_CLOUD                  = 1,
    TYPE_GTM                    = 1,
    TYPE_AIRBASE                = 1,
    TYPE_AIRSTRIP               = 2,
    TYPE_ARMYBASE               = 3,
    TYPE_BEACH                  = 4,
    TYPE_BORDER                 = 5,
    TYPE_BRIDGE                 = 6,
    TYPE_CHEMICAL               = 7,
    TYPE_CITY                   = 8,
    TYPE_COM_CONTROL            = 9,
    TYPE_DEPOT                  = 10,
    TYPE_FACTORY                = 11,
    TYPE_FORD                   = 12,
    TYPE_FORTIFICATION          = 13,
    TYPE_HILL_TOP               = 14,
    TYPE_INTERSECT              = 15,
    TYPE_NUCLEAR                = 17,
    TYPE_PASS                   = 18,
    TYPE_PORT                   = 19,
    TYPE_POWERPLANT             = 20,
    TYPE_RADAR                  = 21,
    TYPE_RADIO_TOWER            = 22,
    TYPE_RAIL_TERMINAL          = 23,
    TYPE_RAILROAD               = 24,
    TYPE_VASI                   = 47,
    TYPE_TANK                   = 48,
    TYPE_FENCE                  = 49,
    TYPE_PARKINGLOT             = 50,
    TYPE_SMOKESTACK             = 51,
    TYPE_BUILDING               = 52,
    TYPE_COOL_TWR               = 53,
    TYPE_CONT_DOME              = 54,
    TYPE_GUARDHOUSE             = 55,
    TYPE_TRANSFORMER            = 56,
    TYPE_AMMO_DUMP              = 57,
    TYPE_DEBRIS                 = 1,
    TYPE_AEXPLOSION             = 1,
    TYPE_CANOPY                 = 7,
    TYPE_CHEM_PLANT             = 60,
    TYPE_TOWER                  = 61,
    TYPE_HOSPITAL               = 62,
    TYPE_SHOPBLK                = 63,
    TYPE_FLYING_EYE             = 1,
    TYPE_RUNWAY_NUM             = 64,
    TYPE_AIR_TERMINAL           = 39,
    TYPE_END_MISSION            = 1,
    TYPE_RUNWAY_MARKER          = 65,
    TYPE_TAXI_SIGN              = 24,
    TYPE_STADIUM                = 66,
    TYPE_MONUMENT               = 67,
    TYPE_STATIC                 = 64,
    TYPE_REFINERY               = 25,
    TYPE_ROAD                   = 26,
    TYPE_SEA                    = 27,
    TYPE_TOWN                   = 28,
    TYPE_VILLAGE                = 29,
    TYPE_CRATER                 = 1,
    TYPE_BATTALION              = 1,
    TYPE_BRIGADE                = 2,
    TYPE_FOOT                   = 1,
    TYPE_TOWED                  = 2,
    TYPE_TRACKED                = 3,
    TYPE_WHEELED                = 4,
    TYPE_NTM                    = 1,
    TYPE_TASKFORCE              = 1,
    TYPE_ASSAULT                = 1,
    TYPE_BOAT                   = 2,
    TYPE_BUOY                   = 3,
    TYPE_CAPITAL_SHIP           = 4,
    TYPE_CARGO                  = 5,
    TYPE_CRUISER                = 6,
    TYPE_DEPTHCHARGE            = 7,
    TYPE_DESTROYER              = 8,
    TYPE_FRIGATE                = 9,
    TYPE_PATROL                 = 10,
    TYPE_RAFT                   = 11,
    TYPE_SHIP                   = 12,
    TYPE_TANKER                 = 13,
    TYPE_TORPEDO                = 14,
    TYPE_ARMADA                 = 1,
    TYPE_WOLFPACK               = 1,
    TYPE_SUBMARINE              = 1,
    TYPE_TEAM                   = 1,
    TYPE_NAV_BEACON             = 16,
    TYPE_SAM_SITE               = 31,
    TYPE_HARTS                  = 30,
    TYPE_ART_SITE               = 58,
    TYPE_TEST                   = 15,
    TYPE_OFFICE                 = 59,
    TYPE_NAV_BEAC               = 25,
    TYPE_TAXIWAY                = 30,
    TYPE_HANGAR                 = 45,
    TYPE_RUNWAY                 = 11,
    TYPE_HOUSE                  = 22,
    TYPE_CRATERS                = 27,
    TYPE_WAREHOUSE              = 12,
    TYPE_BRIDGES                = 16,
    TYPE_FACTORYS               = 6,
    TYPE_SHOP                   = 19,
    TYPE_FUEL_TANKS             = 14,
    TYPE_APARTMENT              = 21,
    TYPE_CTRL_TOWER             = 2,
    TYPE_BUNKER                 = 4,
    TYPE_BUSH                   = 5,
    TYPE_CHURCH                 = 7,
    TYPE_CITY_HALL              = 8,
    TYPE_DOCK                   = 9,
    TYPE_HELIPAD                = 13,
    TYPE_NUKE_PLANT             = 15,
    TYPE_PIER                   = 17,
    TYPE_PPOLE                  = 18,
    TYPE_PTOWER                 = 20,
    TYPE_PPLANT                 = 23,
    TYPE_RADAR_SITE             = 26,
    TYPE_RADARS                 = 28,
    TYPE_RTOWER                 = 29,
    TYPE_RAIL_TERMINALS         = 31,
    TYPE_REFINERYS              = 32,
    TYPE_SAM                    = 33,
    TYPE_SHED                   = 34,
    TYPE_TREE                   = 36,
    TYPE_WTOWER                 = 37,
    TYPE_BARRACKS               = 35,
    TYPE_LAUNCHER               = 5,
    TYPE_CHAFF                  = 5,
    TYPE_BARN                   = 3,
    TYPE_TWNHALL                = 38,
    TYPE_YARD                   = 39,
    TYPE_SHRINE                 = 40,
    TYPE_PARK                   = 41,
    TYPE_OFF_BLOCK              = 42,
    TYPE_COCKPIT                = 3,
    TYPE_TVSTN                  = 43,
    TYPE_HOTEL                  = 44,
    TYPE_SMOKE                  = 4,
    TYPE_FIRE                   = 2,
    TYPE_FLARE                  = 6,
    TYPE_EXPLOSION              = 1,
    TYPE_HULK                   = 2,
    TYPE_DUST                   = 3,
    TYPE_LIGHTS                 = 46,
    TYPE_EJECT                  = 9)

  (defenum Sub_Types
    STYPE_SITE1                 = 1,
    STYPE_HARTS1                = 1,
    STYPE_TEST                  = 1,
    STYPE_FAC_UNDER_1           = 4,
    STYPE_BRIDGE_044_7          = 3,
    STYPE_BRIDGE_044_5          = 4,
    STYPE_NAV_BEACON1           = 1,
    STYPE_TAXIWAY1              = 1,
    STYPE_ADMIN1                = 1,
    STYPE_HANGAR2               = 1,
    STYPE_CNC_TILE1             = 1,
    STYPE_HANG_TILE1            = 2,
    STYPE_HOUSE3                = 1,
    STYPE_HOUSE4                = 2,
    STYPE_HOUSE5                = 3,
    STYPE_CRATER1               = 1,
    STYPE_CNC1                  = 3,
    STYPE_WAREHOUSE2            = 1,
    STYPE_BRIDGE3               = 3,
    STYPE_TAXIWAY2              = 2,
    STYPE_SHOP2                 = 1,
    STYPE_FUEL_TANK2            = 1,
    STYPE_OFFICE2               = 3,
    STYPE_APARTMENT1            = 1,
    STYPE_R02_NPGA              = 1,
    STYPE_CTRL_TOWER1           = 1,
    STYPE_BRIDGE4               = 4,
    STYPE_BRIDGE2               = 2,
    STYPE_BRIDGE1               = 1,
    STYPE_BUNKER1               = 1,
    STYPE_BUNKER2               = 2,
    STYPE_BUSH1                 = 1,
    STYPE_CHURCH1               = 1,
    STYPE_CITY_HALL1            = 1,
    STYPE_SHOP1                 = 2,
    STYPE_SHOP3                 = 3,
    STYPE_SHOP4                 = 4,
    STYPE_DEPOT1_F              = 3,
    STYPE_DEPOT2_F              = 4,
    STYPE_DOCK01                = 1,
    STYPE_DOCK02                = 2,
    STYPE_FUEL_TANK1            = 2,
    STYPE_HANGAR3               = 2,
    STYPE_HANGAR8               = 4,
    STYPE_HANGAR1               = 5,
    STYPE_HANGAR6               = 3,
    STYPE_HANGAR7               = 6,
    STYPE_HELIPAD1              = 1,
    STYPE_HOUSE2                = 4,
    STYPE_NUKE_PLANT1           = 1,
    STYPE_NUKE_PLANT2           = 2,
    STYPE_OFFICE1               = 4,
    STYPE_PIER1                 = 1,
    STYPE_PPOLE1                = 1,
    STYPE_PTOWER1               = 1,
    STYPE_PPLANT1               = 1,
    STYPE_RADAR_SITE1           = 1,
    STYPE_RADAR2                = 2,
    STYPE_RADAR3                = 3,
    STYPE_RADAR4                = 4,
    STYPE_RADAR5                = 5,
    STYPE_RADAR6                = 6,
    STYPE_RADAR7                = 7,
    STYPE_RADAR8                = 8,
    STYPE_RTOWER1               = 1,
    STYPE_RTOWER2               = 2,
    STYPE_SAM1                  = 1,
    STYPE_SEARCH_RADAR1         = 9,
    STYPE_SHED1                 = 1,
    STYPE_TREE1                 = 1,
    STYPE_WAREHOUSE1            = 2,
    STYPE_WTOWER1               = 1,
    STYPE_APARTMENT2            = 2,
    STYPE_ART_SITE1             = 1,
    STYPE_BARRACKS1             = 1,
    STYPE_IR_POD                = 2,
    STYPE_CHAFF                 = 1,
    STYPE_APARTMENT4            = 3,
    STYPE_APARTMENT5            = 4,
    STYPE_HOUSE6                = 5,
    STYPE_HOUSE7                = 6,
    STYPE_HOUSE8                = 7,
    STYPE_BARN1                 = 1,
    STYPE_BARN2                 = 2,
    STYPE_HOUSE9                = 8,
    STYPE_HOUSE10               = 9,
    STYPE_HOUSE11               = 10,
    STYPE_UNIT_SSBN             = 13,
    STYPE_UNIT_SSGN             = 11,
    STYPE_UNIT_SSN              = 12,
    STYPE_AIRBASE_505           = 5,
    STYPE_AIRBASE1              = 1,
    STYPE_AIRBASE2              = 2,
    STYPE_AIR_ASW               = 1,
    STYPE_AIR_ATTACK            = 2,
    STYPE_AIR_AWACS             = 3,
    STYPE_AIR_BOMBER            = 4,
    STYPE_AIR_ECM               = 5,
    STYPE_AIR_FIGHTER           = 6,
    STYPE_AIR_FIGHTER_BOMBER    = 7,
    STYPE_AIR_JSTAR             = 8,
    STYPE_AIR_RECON             = 9,
    STYPE_AIR_TANKER            = 10,
    STYPE_AIR_TRANSPORT         = 11,
    STYPE_AIRSTRIPV             = 1,
    STYPE_ARMYBASE1             = 1,
    STYPE_AMPHIBIOUS            = 1,
    STYPE_WASP                  = 2,
    STYPE_UNIT_AIR_DEFENSE      = 1,
    STYPE_UNIT_AIRMOBILE        = 2,
    STYPE_UNIT_ARMOR            = 3,
    STYPE_UNIT_ARMORED_CAV      = 4,
    STYPE_UNIT_ENGINEER         = 5,
    STYPE_UNIT_HQ               = 6,
    STYPE_UNIT_INFANTRY         = 7,
    STYPE_UNIT_MARINE           = 8,
    STYPE_UNIT_MECHANIZED       = 9,
    STYPE_UNIT_ROCKET           = 10,
    STYPE_UNIT_SP_ARTILLERY     = 11,
    STYPE_UNIT_SS_MISSILE       = 12,
    STYPE_UNIT_SUPPLY           = 13,
    STYPE_UNIT_TOWED_ARTILLERY  = 14,
    STYPE_MISSILE_BOAT          = 1,
    STYPE_PATROL_BOAT           = 1,
    STYPE_BOMB                  = 1,
    STYPE_BOMB_GUIDED           = 2,
    STYPE_BOMB_IRON             = 3,
    STYPE_BOMB_GPS = 4, ; MI added for GPS Weaps
    STYPE_BOMB_JSOW = 5, ; Cobra - added for GPS JSOW (gliding weapons)
    STYPE_UNIT_AIRBORNE         = 2,
    STYPE_BATTLESHIP            = 1,
    STYPE_CARRIER               = 2,
    STYPE_AMMOSHIP              = 1,
    STYPE_FRIGATE               = 1,
    STYPE_GENERIC               = 3,
    STYPE_NEWPORT               = 4,
    STYPE_C01_OBJ               = 1,
    STYPE_DECK                  = 1,
    STYPE_PUFFY                 = 2,
    STYPE_COM_CONTROL1          = 1,
    STYPE_SMALL_CRATER          = 1,
    STYPE_CG                    = 1,
    STYPE_DEPOT1                = 1,
    STYPE_DEPTHCHARGE           = 1,
    STYPE_GEARING               = 1,
    STYPE_SPRUANCE              = 2,
    STYPE_ECM                   = 1,
    STYPE_F803_1                = 1,
    STYPE_F80F_1                = 2,
    STYPE_UNIT_AIR_TRANSPORT    = 1,
    STYPE_UNIT_ASW              = 2,
    STYPE_UNIT_ATTACK           = 3,
    STYPE_UNIT_ATTACK_HELO      = 4,
    STYPE_UNIT_AWACS            = 5,
    STYPE_UNIT_BOMBER           = 6,
    STYPE_UNIT_ECM              = 7,
    STYPE_UNIT_FIGHTER          = 8,
    STYPE_UNIT_FIGHTER_BOMBER   = 9,
    STYPE_UNIT_JSTAR            = 10,
    STYPE_UNIT_RECON            = 11,
    STYPE_UNIT_RECON_HELO       = 12,
    STYPE_UNIT_TANKER           = 13,
    STYPE_UNIT_TRANSPORT_HELO   = 14,
    STYPE_FOOT_SQUAD            = 1,
    STYPE_FORTIFICATION1        = 1,
    STYPE_FUEL_TANK             = 1,
    STYPE_AAA_GUN               = 1,
    STYPE_ARTILLERY             = 3,
    STYPE_GUN                   = 4,
    STYPE_MORTAR                = 5,
    STYPE_SMALLARMS             = 2,
    STYPE_AIR_ATTACK_HELO       = 1,
    STYPE_AIR_RECON_HELO        = 2,
    STYPE_AIR_TRANSPORT_HELO    = 3,
    STYPE_MINESWPBLADE          = 1,
    STYPE_MISSILE_AIR_AIR       = 1,
    STYPE_MISSILE_AIR_GROUND    = 2,
    STYPE_MISSILE_ANTI_SHIP     = 3,
    STYPE_MISSILE_SURF_AIR      = 5,
    STYPE_MISSILE_SURF_SURF     = 6,
    STYPE_NAV1                  = 1,
    STYPE_NOTHING               = 1,
    STYPE_NUCLEAR1              = 1,
    STYPE_PORT1                 = 1,
    STYPE_PP01_OBJ              = 1,
    STYPE_RACK                  = 1,
    STYPE_RADAR1                = 1,
    STYPE_RADIO_TOWER1          = 1,
    STYPE_LIFE_RAFT             = 1,
    STYPE_RAIL_TERMINAL1        = 1,
    STYPE_RAILROAD1             = 1,
    STYPE_CAMERA                = 1,
    STYPE_REFINERY1             = 1,
    STYPE_ROCKET                = 2,
    STYPE_CRUISER               = 1,
    STYPE_SEA_SUPPLY            = 1,
    STYPE_SEA_TRANSPORT         = 2,
    STYPE_SSBN                  = 1,
    STYPE_SSGN                  = 2,
    STYPE_SSN                   = 3,
    STYPE_UNIT_AMPHIBIOUS       = 1,
    STYPE_UNIT_BATTLESHIP       = 2,
    STYPE_UNIT_CARRIER          = 3,
    STYPE_UNIT_CRUISER          = 4,
    STYPE_UNIT_DESTROYER        = 5,
    STYPE_UNIT_FRIGATE          = 6,
    STYPE_UNIT_PATROL           = 7,
    STYPE_UNIT_SEA_SUPPLY       = 8,
    STYPE_UNIT_SEA_TANKER       = 9,
    STYPE_UNIT_SEA_TRANSPORT    = 10,
    STYPE_TORPEDO               = 1,
    STYPE_TOWED_AAA             = 1,
    STYPE_TOWED_ARTILLERY       = 2,
    STYPE_TRACKED_AAA           = 1,
    STYPE_TRACKED_AIR_DEFENSE   = 2,
    STYPE_TRACKED_ARMOR         = 3,
    STYPE_TRACKED_ARTILLERY     = 4,
    STYPE_TRACKED_ENGINEER      = 5,
    STYPE_TRACKED_HQ            = 6,
    STYPE_TRACKED_IFV           = 7,
    STYPE_TRACKED_MORTAR        = 8,
    STYPE_TRACKED_TRANSPORT     = 9,
    STYPE_WHEELED_AAA           = 1,
    STYPE_WHEELED_AIR_DEFENSE   = 2,
    STYPE_WHEELED_ARTILLERY     = 3,
    STYPE_WHEELED_ENGINEER      = 4,
    STYPE_WHEELED_FIRETRUCK     = 5,
    STYPE_WHEELED_HQ            = 6,
    STYPE_WHEELED_IFV           = 7,
    STYPE_WHEELED_TRANSPORT     = 8,
    STYPE_BRIDGE_044_4          = 1,
    STYPE_BRIDGE_044_6          = 2,
    STYPE_DEPOT2                = 2,
    STYPE_F405_1                = 3,
    STYPE_NUCLEAR2              = 2,
    STYPE_FACTORY1L             = 8,
    STYPE_FACTORY1R             = 9,
    STYPE_PORT_66B              = 2,
    STYPE_BRIDGE_A41_3          = 13,
    STYPE_BRIDGE_A42_3          = 14,
    STYPE_TWNHALL1              = 1,
    STYPE_SHOP5                 = 5,
    STYPE_HANGAR9               = 7,
    STYPE_HANGAR10              = 8,
    STYPE_R02_PGC               = 3,
    STYPE_TEMPLE1               = 2,
    STYPE_SHOP6                 = 6,
    STYPE_SHED2                 = 2,
    STYPE_SHED3                 = 3,
    STYPE_WTOWER2               = 2,
    STYPE_WTOWER3               = 3,
    STYPE_SHRINE1               = 1,
    STYPE_OFFICE7               = 5,
    STYPE_APARTMENT6            = 5,
    STYPE_STABLE1               = 3,
    STYPE_PARK1                 = 1,
    STYPE_TREE2                 = 2,
    STYPE_TREE3                 = 3,
    STYPE_TREE4                 = 4,
    STYPE_HOUSE12               = 11,
    STYPE_OFFICE3               = 1,
    STYPE_OFFICE4               = 6,
    STYPE_OFFICE5               = 7,
    STYPE_OFFICE6               = 8,
    STYPE_OFFICE8               = 9,
    STYPE_SKYSCRAPER1           = 10,
    STYPE_SKYSCRAPER2           = 11,
    STYPE_OFF_BLOCK1            = 1,
    STYPE_APARTMENT3            = 6,
    STYPE_CITY_HALL2            = 2,
    STYPE_BARRACKS2             = 2,
    STYPE_CHURCH2               = 3,
    STYPE_TEMPLE2               = 4,
    STYPE_COCKPIT               = 1,
    STYPE_OFFICE9               = 12,
    STYPE_OFFICE10              = 13,
    STYPE_OFFICE11              = 14,
    STYPE_OFFICE12              = 15,
    STYPE_OFFICE13              = 16,
    STYPE_OFFICE14              = 17,
    STYPE_OFFICE15              = 18,
    STYPE_OFFICE16              = 19,
    STYPE_OFFICE17              = 20,
    STYPE_BRIDGE1_4             = 6,
    STYPE_BRIDGE1_2             = 5,
    STYPE_BRIDGE1_1             = 7,
    STYPE_BRIDGE2_3             = 8,
    STYPE_BRIDGE2_1             = 9,
    STYPE_OFF_BLOCK2            = 2,
    STYPE_OFF_BLOCK3            = 3,
    STYPE_OFF_BLOCK4            = 4,
    STYPE_OFF_BLOCK5            = 5,
    STYPE_OFF_BLOCK6            = 6,
    STYPE_OFF_BLOCK7            = 7,
    STYPE_OFF_BLOCK8            = 8,
    STYPE_OFF_BLOCK9            = 9,
    STYPE_WAREHOUSE3            = 3,
    STYPE_WAREHOUSE4            = 4,
    STYPE_TVSTN1                = 1,
    STYPE_HOTEL1                = 1,
    STYPE_CITY_835              = 24,
    STYPE_BRIDGE_241_3          = 5,
    STYPE_SM_BRIDGE3            = 10,
    STYPE_BRIDGE_242_3          = 6,
    STYPE_BRIDGE_D41_3          = 7,
    STYPE_BRIDGE_D42_3          = 8,
    STYPE_MISS_LAUN             = 1,
    STYPE_SAM_LAUN              = 2,
    STYPE_MISS_FLAME            = 1,
    STYPE_ENG_FIRE              = 2,
    STYPE_SM_FACT1              = 5,
    STYPE_SM_FACT2              = 6,
    STYPE_SM_FACT3              = 7,
    STYPE_4KRUNWAY              = 5,
    STYPE_FLARE1                = 1,
    STYPE_TANK_HULK             = 2,
    STYPE_R02_NPGB              = 6,
    STYPE_R02_NPGC              = 7,
    STYPE_R02_NPGD              = 8,
    STYPE_R03_NPGA              = 4,
    STYPE_BRIDGE_654_1          = 15,
    STYPE_BRIDGE_656_1          = 16,
    STYPE_R03_NPGB              = 16,
    STYPE_A33_VILLAGE           = 9,
    STYPE_VILL_D3D              = 25,
    STYPE_VILL_D37              = 26,
    STYPE_OSAN                  = 24,
    STYPE_TAXIOSAN              = 2,
    STYPE_R02_PGA               = 9,
    STYPE_R02_PGB               = 10,
    STYPE_AIRBASE_501           = 3,
    STYPE_AIRBASE_510           = 4,
    STYPE_AIRBASE_560           = 5,
    STYPE_OFFICE18              = 21,
    STYPE_OFFICE19              = 22,
    STYPE_OFFICE20              = 23,
    STYPE_OFFICE21              = 24,
    STYPE_OFFICE22              = 25,
    STYPE_OFFICE23              = 26,
    STYPE_OFFICE24              = 27,
    STYPE_OFFICE25              = 28,
    STYPE_OFFICE26              = 29,
    STYPE_DUST1                 = 1,
    STYPE_TAXI_01               = 3,
    STYPE_R01_NPGA              = 12,
    STYPE_R01_NPGB              = 11,
    STYPE_R01_NPGC              = 13,
    STYPE_R01_PFLA              = 3,
    STYPE_R01_PGB               = 15,
    STYPE_R01_PGA               = 14,
    STYPE_R01_PFLB              = 4,
    STYPE_STROBE_1              = 1,
    STYPE_STROBE_2              = 2,
    STYPE_HANGAR11              = 9,
    STYPE_HANGAR12              = 10,
    STYPE_WTOWER4               = 4,
    STYPE_CTRL_TOWER2           = 2,
    STYPE_EJECT1                = 1,
    STYPE_EJECT2                = 2,
    STYPE_VASI_N                = 1,
    STYPE_VASI_F                = 2,
    STYPE_VASI_RB               = 3,
    STYPE_VASI_RF               = 4,
    STYPE_FACTORY1_SHIP         = 10,
    STYPE_TANK1                 = 1,
    STYPE_PARKINGLOT1           = 1,
    STYPE_SMOKESTACK1           = 1,
    STYPE_SECONDARY1            = 1,
    STYPE_SECONDARY2            = 2,
    STYPE_PARKINGLOT2           = 2,
    STYPE_COOL_TWR1             = 1,
    STYPE_CONT_DOME1            = 1,
    STYPE_FENCE_NUKE2           = 1,
    STYPE_GUARDHOUSE1           = 1,
    STYPE_TRANSFORMER1          = 1,
    STYPE_SHED4                 = 4,
    STYPE_WAREHOUSE5            = 5,
    STYPE_RADAR9                = 10,
    STYPE_AMMO_DUMP1            = 1,
    STYPE_C01_03                = 2,
    STYPE_BRIDGE_046_2          = 9,
    STYPE_BRIDGE4_1             = 11,
    STYPE_BRIDGE5_1             = 12,
    STYPE_BRIDGE6_1             = 13,
    STYPE_BRIDGE7_1             = 14,
    STYPE_BRIDGE_046_3          = 10,
    STYPE_BRIDGE_046_4          = 11,
    STYPE_BRIDGE_046_5          = 12,
    STYPE_UNIT_RESERVE          = 15,
    STYPE_DEBRIS                = 1,
    STYPE_LEXPLOSION1           = 3,
    STYPE_WEXPLOSION1           = 1,
    STYPE_AEXPLOSION1           = 2,
    STYPE_AEXPLOSION2           = 1,
    STYPE_CRATER                = 2,
    STYPE_FIREBALL              = 3,
    STYPE_BRIDGE_6E6_1          = 17,
    STYPE_BRIDGE_6E4_1          = 18,
    STYPE_BRIDGE_684_1          = 19,
    STYPE_BRIDGE_686_1          = 20,
    STYPE_BRIDGE_68B_1          = 21,
    STYPE_BRIDGE_68D_1          = 22,
    STYPE_TOWN_D37              = 3,
    STYPE_TOWN_D3B              = 4,
    STYPE_TOWN_D3D              = 5,
    STYPE_TOWN_D3E              = 6,
    STYPE_TOWN_D3F              = 7,
    STYPE_BRIDGE2_2             = 16,
    STYPE_TOWN_D47              = 1,
    STYPE_TOWN_D48              = 2,
    STYPE_BRIDGE_65B_1          = 23,
    STYPE_BRIDGE_65D_1          = 24,
    STYPE_BRIDGE_6EB_1          = 25,
    STYPE_BRIDGE_6ED_1          = 26,
    STYPE_BRIDGE_754_1          = 27,
    STYPE_BRIDGE_044_1          = 28,
    STYPE_BRIDGE_046_1          = 29,
    STYPE_BRIDGE_04B_1          = 30,
    STYPE_BRIDGE_04D_1          = 31,
    STYPE_BRIDGE_75D_1          = 32,
    STYPE_JUNCTION1             = 1,
    STYPE_BRIDGE_624_1          = 33,
    STYPE_BRIDGE_626_1          = 34,
    STYPE_BRIDGE_62B_1          = 35,
    STYPE_BRIDGE_62D_1          = 36,
    STYPE_BRIDGE6_2             = 15,
    STYPE_BRIDGE6_3             = 17,
    STYPE_BRIDGE3_1             = 18,
    STYPE_BRIDGE_044_2          = 37,
    STYPE_BRIDGE_044_3          = 38,
    STYPE_BRIDGE_046_6          = 39,
    STYPE_BRIDGE_046_7          = 40,
    STYPE_BRIDGE_04B_2          = 41,
    STYPE_BRIDGE_04B_3          = 42,
    STYPE_BRIDGE_04B_4          = 43,
    STYPE_BRIDGE_04B_5          = 44,
    STYPE_BRIDGE_04B_6          = 45,
    STYPE_BRIDGE_04B_7          = 46,
    STYPE_BRIDGE_04D_2          = 47,
    STYPE_BRIDGE_04D_3          = 48,
    STYPE_BRIDGE_04D_4          = 49,
    STYPE_BRIDGE_04D_6          = 50,
    STYPE_BRIDGE_04D_7          = 51,
    STYPE_BRIDGE_624_2          = 52,
    STYPE_BRIDGE_624_3          = 53,
    STYPE_BRIDGE_624_4          = 54,
    STYPE_BRIDGE_624_5          = 55,
    STYPE_BRIDGE_624_6          = 56,
    STYPE_BRIDGE_624_7          = 57,
    STYPE_BRIDGE_62D_2          = 58,
    STYPE_BRIDGE_62D_3          = 59,
    STYPE_BRIDGE_62D_4          = 60,
    STYPE_BRIDGE_62D_5          = 61,
    STYPE_BRIDGE_62D_6          = 62,
    STYPE_BRIDGE_62D_7          = 63,
    STYPE_BRIDGE_626_2          = 64,
    STYPE_BRIDGE_626_3          = 65,
    STYPE_BRIDGE_626_4          = 66,
    STYPE_BRIDGE_626_5          = 67,
    STYPE_BRIDGE_626_6          = 68,
    STYPE_BRIDGE_626_7          = 69,
    STYPE_BRIDGE_62B_2          = 70,
    STYPE_BRIDGE_62B_4          = 71,
    STYPE_BRIDGE_62B_3          = 72,
    STYPE_BRIDGE_62B_5          = 73,
    STYPE_BRIDGE_62B_6          = 74,
    STYPE_BRIDGE_62B_7          = 75,
    STYPE_BRIDGE_654_2          = 76,
    STYPE_BRIDGE_654_3          = 77,
    STYPE_BRIDGE_654_4          = 78,
    STYPE_BRIDGE_654_5          = 79,
    STYPE_BRIDGE_654_6          = 80,
    STYPE_BRIDGE_654_7          = 81,
    STYPE_BRIDGE_656_2          = 82,
    STYPE_BRIDGE_656_3          = 83,
    STYPE_BRIDGE_656_4          = 84,
    STYPE_BRIDGE_656_5          = 85,
    STYPE_BRIDGE_656_6          = 86,
    STYPE_BRIDGE_656_7          = 87,
    STYPE_BRIDGE_65B_2          = 88,
    STYPE_BRIDGE_65B_3          = 89,
    STYPE_J235                  = 15,
    STYPE_BRIDGE_65B_4          = 90,
    STYPE_BRIDGE_65B_5          = 91,
    STYPE_BRIDGE_65B_6          = 92,
    STYPE_BRIDGE_65B_7          = 93,
    STYPE_BRIDGE_65D_2          = 94,
    STYPE_BRIDGE_65D_3          = 95,
    STYPE_BRIDGE_65D_4          = 96,
    STYPE_BRIDGE_65D_5          = 97,
    STYPE_BRIDGE_65D_6          = 98,
    STYPE_BRIDGE_65D_7          = 99,
    STYPE_BRIDGE_684_2          = 100,
    STYPE_BRIDGE_684_3          = 101,
    STYPE_BRIDGE_684_4          = 103,
    STYPE_BRIDGE_684_6          = 104,
    STYPE_BRIDGE_686_2          = 102,
    STYPE_BRIDGE_686_3          = 105,
    STYPE_BRIDGE_686_4          = 106,
    STYPE_BRIDGE_686_5          = 107,
    STYPE_BRIDGE_686_6          = 108,
    STYPE_BRIDGE_68B_2          = 110,
    STYPE_BRIDGE_68B_3          = 109,
    STYPE_BRIDGE_68B_4          = 111,
    STYPE_BRIDGE_68B_5          = 112,
    STYPE_BRIDGE_68B_6          = 113,
    STYPE_BRIDGE_68D_2          = 115,
    STYPE_BRIDGE_68D_3          = 114,
    STYPE_BRIDGE_68D_4          = 116,
    STYPE_BRIDGE_68D_6          = 118,
    STYPE_BRIDGE_6E4_2          = 117,
    STYPE_BRIDGE_6E4_3          = 119,
    STYPE_BRIDGE_6E4_4          = 120,
    STYPE_BRIDGE_6E4_5          = 122,
    STYPE_BRIDGE_6E4_6          = 121,
    STYPE_BRIDGE_6E4_7          = 123,
    STYPE_BRIDGE_6E6_2          = 124,
    STYPE_BRIDGE_6E6_3          = 125,
    STYPE_BRIDGE_6E6_4          = 126,
    STYPE_BRIDGE_6E6_6          = 127,
    STYPE_BRIDGE_6E6_5          = 128,
    STYPE_BRIDGE_6E6_7          = 129,
    STYPE_BRIDGE_6EB_2          = 130,
    STYPE_BRIDGE_6EB_3          = 131,
    STYPE_BRIDGE_6EB_4          = 132,
    STYPE_BRIDGE_6EB_5          = 133,
    STYPE_BRIDGE_6EB_6          = 134,
    STYPE_BRIDGE_6EB_7          = 135,
    STYPE_BRIDGE_6ED_2          = 136,
    STYPE_BRIDGE_6ED_3          = 137,
    STYPE_BRIDGE_6ED_4          = 138,
    STYPE_BRIDGE_6ED_5          = 139,
    STYPE_BRIDGE_6ED_6          = 140,
    STYPE_BRIDGE_6ED_7          = 141,
    STYPE_BRIDGE_754_2          = 142,
    STYPE_BRIDGE_754_3          = 143,
    STYPE_BRIDGE_754_4          = 144,
    STYPE_BRIDGE_754_5          = 145,
    STYPE_BRIDGE_754_6          = 146,
    STYPE_BRIDGE_754_7          = 147,
    STYPE_BRIDGE_75D_2          = 148,
    STYPE_BRIDGE_75D_3          = 149,
    STYPE_BRIDGE_75D_4          = 150,
    STYPE_BRIDGE_75D_5          = 151,
    STYPE_BRIDGE_75D_6          = 152,
    STYPE_BRIDGE_75D_7          = 153,
    STYPE_BRIDGE1_1A            = 19,
    STYPE_BRIDGE1_2A            = 20,
    STYPE_BRIDGE1_X2            = 21,
    STYPE_BRIDGE1_X2A           = 22,
    STYPE_BRIDGE1_X3            = 23,
    STYPE_BRIDGE1_X3A           = 24,
    STYPE_BRIDGE2_1A            = 25,
    STYPE_BRIDGE2_2A            = 26,
    STYPE_BRIDGE2_3A            = 27,
    STYPE_BRIDGE3_1A            = 28,
    STYPE_BRIDGE4_1A            = 29,
    STYPE_BRIDGE4_X2            = 30,
    STYPE_BRIDGE4_X2A           = 31,
    STYPE_BRIDGE5_1A            = 32,
    STYPE_BRIDGE6_1A            = 33,
    STYPE_BRIDGE6_X2            = 34,
    STYPE_BRIDGE6_X2A           = 35,
    STYPE_BRIDGE7_1A            = 36,
    STYPE_NSEOUL                = 4,
    STYPE_DTSEOUL               = 5,
    STYPE_J43E                  = 2,
    STYPE_J437                  = 3,
    STYPE_J43B                  = 4,
    STYPE_J43D                  = 5,
    STYPE_F303_1                = 5,
    STYPE_PLOT_F01_04           = 3,
    STYPE_PLOT_F01_05           = 4,
    STYPE_F30E_1                = 6,
    STYPE_F66C_1                = 7,
    STYPE_F801_1                = 8,
    STYPE_F802_1                = 9,
    STYPE_F804_1                = 10,
    STYPE_F805_1                = 11,
    STYPE_F80A_1                = 12,
    STYPE_F80B_1                = 13,
    STYPE_F80C_1                = 14,
    STYPE_FEC1_1                = 15,
    STYPE_FEC2_1                = 16,
    STYPE_FEC8_1                = 17,
    STYPE_APARTMENT7            = 7,
    STYPE_EJECT3                = 3,
    STYPE_FIRE1                 = 3,
    STYPE_EJECT4                = 3,
    STYPE_CANOPY1               = 1,
    STYPE_C01_02                = 1,
    STYPE_C01_04                = 4,
    STYPE_C01_05                = 5,
    STYPE_C01_06                = 6,
    STYPE_WAREHOUSE_CHEM        = 6,
    STYPE_OFFICE_CHEM           = 30,
    STYPE_WAREHOUSE_CHEM2       = 7,
    STYPE_TANK2                 = 2,
    STYPE_TANK3                 = 3,
    STYPE_TANK4                 = 4,
    STYPE_CRACKER1              = 1,
    STYPE_CRACKER2              = 2,
    STYPE_REL_VALVE1            = 3,
    STYPE_PROC_TANK1            = 5,
    STYPE_C01_10                = 7,
    STYPE_HOUSE1                = 12,
    STYPE_R02_01                = 2,
    STYPE_R02_02                = 3,
    STYPE_R02_03                = 4,
    STYPE_R02_04                = 5,
    STYPE_R02_05                = 6,
    STYPE_R02_06                = 7,
    STYPE_R02_07                = 8,
    STYPE_R02_08                = 9,
    STYPE_R02_09                = 10,
    STYPE_R02_10                = 11,
    STYPE_R02_11                = 12,
    STYPE_R02_12                = 13,
    STYPE_R02_13                = 14,
    STYPE_F05_01                = 11,
    STYPE_F05_02                = 12,
    STYPE_F05_03                = 13,
    STYPE_F05_04                = 14,
    STYPE_F05_05                = 15,
    STYPE_F05_06                = 16,
    STYPE_F05_07                = 17,
    STYPE_F05_08                = 18,
    STYPE_F05_09                = 19,
    STYPE_DOCK06                = 3,
    STYPE_HOTEL02               = 2,
    STYPE_HOSPITAL01            = 1,
    STYPE_HOSPITAL02            = 2,
    STYPE_HOSPITAL03            = 3,
    STYPE_SHOPBLK01             = 1,
    STYPE_SHOPBLK02             = 2,
    STYPE_SHOPBLK03             = 3,
    STYPE_SHOPBLK04             = 4,
    STYPE_REFINERY2             = 2,
    STYPE_F05_OBJ               = 18,
    STYPE_N02_01                = 3,
    STYPE_N02_02                = 4,
    STYPE_N02_03                = 5,
    STYPE_N02_04                = 6,
    STYPE_N02_05                = 7,
    STYPE_COOLT2                = 8,
    STYPE_R02_OBJ               = 3,
    STYPE_N03_01                = 9,
    STYPE_N03_02                = 10,
    STYPE_N03_03                = 11,
    STYPE_N03_04                = 12,
    STYPE_N03_05                = 13,
    STYPE_N03_06                = 14,
    STYPE_N03_OBJ               = 4,
    STYPE_N04_01                = 15,
    STYPE_N04_02                = 16,
    STYPE_N04_03                = 17,
    STYPE_N04_04                = 18,
    STYPE_N04_OBJ               = 5,
    STYPE_N02_OBJ               = 3,
    STYPE_C02_01                = 2,
    STYPE_C02_02                = 8,
    STYPE_C02_03                = 9,
    STYPE_C02_04                = 10,
    STYPE_C02_05                = 11,
    STYPE_C02_06                = 12,
    STYPE_C02_07                = 13,
    STYPE_C02_OBJ               = 2,
    STYPE_LGTNK_05              = 3,
    STYPE_LGTNK_06              = 4,
    STYPE_LGTNK_07              = 5,
    STYPE_RTWR_03               = 3,
    STYPE_RTWR_04               = 4,
    STYPE_CMTWR_01              = 14,
    STYPE_SILO_01               = 15,
    STYPE_CMTWR_02              = 16,
    STYPE_C03_01                = 17,
    STYPE_C03_OBJ               = 3,
    STYPE_PP01_01               = 2,
    STYPE_PP02_01               = 3,
    STYPE_PP02_02               = 2,
    STYPE_PP02_03               = 4,
    STYPE_PP03_01               = 5,
    STYPE_PP03_02               = 6,
    STYPE_PP03_03               = 7,
    STYPE_PP04_01               = 8,
    STYPE_PP02_OBJ              = 2,
    STYPE_PTWR_03               = 2,
    STYPE_PP01_04               = 9,
    STYPE_PP01_05               = 10,
    STYPE_PTWR03                = 3,
    STYPE_PP03_OBJ              = 3,
    STYPE_PTWR02                = 2,
    STYPE_PP04_OBJ              = 4,
    STYPE_F03_01                = 20,
    STYPE_F03_02                = 21,
    STYPE_F03_03                = 22,
    STYPE_F03_04                = 23,
    STYPE_F03_05                = 24,
    STYPE_F03_OBJ               = 19,
    STYPE_R03_01                = 15,
    STYPE_R03_02                = 16,
    STYPE_R03_03                = 17,
    STYPE_R03_04                = 18,
    STYPE_R03_05                = 19,
    STYPE_R03_06                = 20,
    STYPE_R03_07                = 21,
    STYPE_R03_OBJ               = 3,
    STYPE_NUM380                = 2,
    STYPE_NUM270                = 3,
    STYPE_TAIL_GUN              = 6,
    STYPE_ADMIN02               = 2,
    STYPE_CTR01                 = 3,
    STYPE_DEPO03                = 1,
    STYPE_R02OVER               = 2,
    STYPE_TAXIS02               = 4,
    STYPE_R03_NPGC              = 18,
    STYPE_R03_PGA               = 17,
    STYPE_R03_PGB               = 19,
    STYPE_R03_PGC               = 20,
    STYPE_TAXIS03L              = 5,
    STYPE_TAXIS03U              = 6,
    STYPE_SUNAN                 = 6,
    STYPE_F02_03                = 25,
    STYPE_SEOULAFB              = 7,
    STYPE_HNGR05                = 11,
    STYPE_R04AGA                = 21,
    STYPE_R04AGB                = 22,
    STYPE_R04AGC                = 23,
    STYPE_R04BGA                = 24,
    STYPE_R04BGB                = 25,
    STYPE_R04BGC                = 26,
    STYPE_TAXIS04               = 7,
    STYPE_LANDL                 = 27,
    STYPE_GEN_AFB               = 8,
    STYPE_NUM160                = 1,
    STYPE_RV82A                 = 28,
    STYPE_RV82B                 = 29,
    STYPE_RV82C                 = 30,
    STYPE_TAXIS05               = 8,
    STYPE_CTR03                 = 4,
    STYPE_KIMPO                 = 9,
    STYPE_TAXIS06               = 9,
    STYPE_R06RGA                = 31,
    STYPE_R06RGB                = 32,
    STYPE_R06RGC                = 33,
    STYPE_R06LGA                = 34,
    STYPE_R06LGB                = 35,
    STYPE_R06LGC                = 36,
    STYPE_FLAND                 = 37,
    STYPE_BLDG01                = 1,
    STYPE_BLDG02                = 2,
    STYPE_BLDG03                = 3,
    STYPE_BLDG04                = 4,
    STYPE_BLDG05                = 5,
    STYPE_BEACH                 = 1,
    STYPE_BORDER                = 1,
    STYPE_FORD                  = 1,
    STYPE_HILL_TOP              = 1,
    STYPE_PASS                  = 1,
    STYPE_SEA                   = 1,
    STYPE_ROAD                  = 1,
    STYPE_40F_9CC2              = 9,
    STYPE_80F_9CC1              = 10,
    STYPE_ECF_TOWN              = 10,
    STYPE_EC1_TOWN              = 11,
    STYPE_D35_TOWN              = 12,
    STYPE_D3A_TOWN              = 13,
    STYPE_237_TOWN              = 14,
    STYPE_23A_TOWN              = 15,
    STYPE_23B_TOWN              = 16,
    STYPE_23D_TOWN              = 17,
    STYPE_23E_TOWN              = 18,
    STYPE_247_TOWN              = 19,
    STYPE_248_TOWN              = 20,
    STYPE_235_TOWN              = 21,
    STYPE_A35_TOWN              = 22,
    STYPE_A37_TOWN              = 23,
    STYPE_A3A_TOWN              = 24,
    STYPE_A3B_TOWN              = 25,
    STYPE_A3D_TOWN              = 26,
    STYPE_A3E_TOWN              = 27,
    STYPE_A47_TOWN              = 28,
    STYPE_A48_TOWN              = 29,
    STYPE_C2F_TOWN              = 30,
    STYPE_D38_TOWN              = 31,
    STYPE_SHOP7                 = 7,
    STYPE_234_VILLAGE           = 7,
    STYPE_D39_VILLAGE           = 8,
    STYPE_JA3F                  = 6,
    STYPE_324_VILLAGE           = 9,
    STYPE_J324                  = 7,
    STYPE_40FBURB1              = 6,
    STYPE_835BURB1              = 7,
    STYPE_80FBURB1              = 11,
    STYPE_40F_9CC1              = 23,
    STYPE_80F_9CC2              = 8,
    STYPE_J40B                  = 8,
    STYPE_J435                  = 9,
    STYPE_J439                  = 10,
    STYPE_J444                  = 11,
    STYPE_J446                  = 12,
    STYPE_J83A                  = 13,
    STYPE_J844                  = 14,
    STYPE_23B_VILLAGE           = 15,
    STYPE_23D_VILLAGE           = 16,
    STYPE_23E_VILLAGE           = 17,
    STYPE_435BURB1              = 16,
    STYPE_A35_VILLAGE           = 18,
    STYPE_437BURB1              = 19,
    STYPE_43BBURB1              = 17,
    STYPE_446_TOWN              = 32,
    STYPE_A37_VILLAGE           = 20,
    STYPE_A3A_VILLAGE           = 21,
    STYPE_A3B_VILLAGE           = 22,
    STYPE_A3D_VILLAGE           = 23,
    STYPE_A3F_VILLAGE           = 24,
    STYPE_D35_VILLAGE           = 6,
    STYPE_D3A_VILLAGE           = 5,
    STYPE_D3B_VILLAGE           = 4,
    STYPE_D3E_VILLAGE           = 3,
    STYPE_D3F_VILLAGE           = 2,
    STYPE_D37_VILLAGE           = 1,
    STYPE_30F_9CC1              = 18,
    STYPE_307_TOWN              = 37,
    STYPE_83ABURB1              = 15,
    STYPE_ECFBURB1              = 13,
    STYPE_237BURB1              = 14,
    STYPE_237_VILLAGE           = 13,
    STYPE_D38_VILLAGE           = 14,
    STYPE_C2FBURB1              = 15,
    STYPE_A3E_VILLAGE           = 10,
    STYPE_235_VILLAGE           = 11,
    STYPE_23A_VILLAGE           = 12,
    STYPE_23ABURB1              = 12,
    STYPE_307BURB1              = 2,
    STYPE_30BBURB1              = 3,
    STYPE_30D_TOWN              = 33,
    STYPE_30DBURB1              = 19,
    STYPE_30E_TOWN              = 34,
    STYPE_30EBURB1              = 20,
    STYPE_E8B_TOWN              = 35,
    STYPE_E8BBURB1              = 21,
    STYPE_E8E_TOWN              = 36,
    STYPE_E8EBURB1              = 22,
    STYPE_30FBURB1              = 1,
    STYPE_JA35                  = 16,
    STYPE_JA37                  = 17,
    STYPE_JA3A                  = 18,
    STYPE_JA3B                  = 19,
    STYPE_JA3D                  = 20,
    STYPE_JA3E                  = 21,
    STYPE_JD37                  = 22,
    STYPE_JD39                  = 23,
    STYPE_JD3B                  = 24,
    STYPE_JD3D                  = 25,
    STYPE_JD3E                  = 26,
    STYPE_JEC1                  = 27,
    STYPE_EE7BURB1              = 25,
    STYPE_EE4BURB1              = 26,
    STYPE_303BURB1              = 27,
    STYPE_B27BURB1              = 28,
    STYPE_B2BBURB1              = 29,
    STYPE_B2B_TOWN              = 38,
    STYPE_B2FBURB1              = 30,
    STYPE_B2F_TOWN              = 39,
    STYPE_C27BURB1              = 31,
    STYPE_C2ABURB1              = 32,
    STYPE_C2BBURB1              = 33,
    STYPE_E8FBURB1              = 34,
    STYPE_EC2BURB1              = 35,
    STYPE_EC5BURB1              = 36,
    STYPE_ECABURB1              = 37,
    STYPE_ECDBURB1              = 38,
    STYPE_ECEBURB1              = 39,
    STYPE_EEDBURB1              = 40,
    STYPE_EEFBURB1              = 41,
    STYPE_EED_TOWN              = 8,
    STYPE_EEF_TOWN              = 9,
    STYPE_FLAND27               = 38,
    STYPE_AB5_THP1              = 34,
    STYPE_AB5_THP2A             = 35,
    STYPE_AB5_THP3              = 36,
    STYPE_AB5_THP4              = 37,
    STYPE_AB5_THP7              = 38,
    STYPE_AB5_TMD1              = 39,
    STYPE_AB5_TMD2              = 40,
    STYPE_AB5_TMD3              = 41,
    STYPE_AB5_TMD4              = 42,
    STYPE_AB5_THP5              = 43,
    STYPE_AB5_THP6              = 44,
    STYPE_AB5_THP2B             = 45,
    STYPE_A52ARMB               = 2,
    STYPE_252ARMB               = 3,
    STYPE_251ARMB               = 4,
    STYPE_A51ARMB               = 5,
    STYPE_D52ARMB               = 6,
    STYPE_D51ARMB               = 7,
    STYPE_24FSAM                = 7,
    STYPE_24ESAM                = 2,
    STYPE_CRANE1                = 4,
    STYPE_DAEWOO                = 5,
    STYPE_BUNKER3               = 3,
    STYPE_D4FSAM                = 3,
    STYPE_D4ESAM                = 4,
    STYPE_A4FSAM                = 5,
    STYPE_A4ESAM                = 6,
    STYPE_DOCK07                = 6,
    STYPE_00CPORT               = 3,
    STYPE_66DPORT               = 4,
    STYPE_731PORT               = 5,
    STYPE_795PORT               = 6,
    STYPE_79APORT               = 7,
    STYPE_79BPORT               = 8,
    STYPE_79DPORT               = 9,
    STYPE_79EPORT               = 10,
    STYPE_7A0PORT               = 11,
    STYPE_DOCK04                = 7,
    STYPE_DOCK05                = 8,
    STYPE_7A1PORT               = 12,
    STYPE_7A2PORT               = 13,
    STYPE_7A5PORT               = 14,
    STYPE_7A6PORT               = 15,
    STYPE_304CHEM               = 4,
    STYPE_40CCHEM               = 1,
    STYPE_80ACHEM               = 5,
    STYPE_817CHEM               = 6,
    STYPE_84DCHEM               = 7,
    STYPE_C28CHEM               = 8,
    STYPE_EC1CHEM               = 9,
    STYPE_EC2CHEM               = 10,
    STYPE_EC4CHEM               = 11,
    STYPE_41EREFIN              = 4,
    STYPE_436REFIN              = 2,
    STYPE_807REFIN              = 3,
    STYPE_EC2REFIN              = 5,
    STYPE_ECAREFIN              = 6,
    STYPE_14DNUKE1              = 6,
    STYPE_14DNUKE2              = 1,
    STYPE_79BNUKE1              = 2,
    STYPE_805NUKE1              = 3,
    STYPE_817NUKE1              = 4,
    STYPE_84BNUKE1              = 5,
    STYPE_D35NUKE1              = 7,
    STYPE_D3ANUKE1              = 8,
    STYPE_D3BNUKE1              = 9,
    STYPE_D3CNUKE2              = 10,
    STYPE_D5ANUKE1              = 11,
    STYPE_D5ANUKE2              = 12,
    STYPE_D89NUKE1              = 13,
    STYPE_DA7NUKE1              = 14,
    STYPE_EE1NUKE1              = 15,
    STYPE_20_02ABASE            = 10,
    STYPE_02_20ABASE2           = 2,
    STYPE_20_02ABASE2           = 1,
    STYPE_05_23ABASE2           = 10,
    STYPE_34_16ABASE2           = 3,
    STYPE_MFLAME_S              = 2,
    STYPE_MFLAME_L              = 1,
    STYPE_01_19ABASE            = 4,
    STYPE_02_20ABASE            = 11,
    STYPE_08_26ABASE            = 12,
    STYPE_11_29ABASE            = 13,
    STYPE_12_30ABASE            = 14,
    STYPE_20_02ABASE1           = 15,
    STYPE_21_03ABASE            = 16,
    STYPE_23_05ABASE            = 17,
    STYPE_26_08ABASE            = 18,
    STYPE_30_12ABASE            = 19,
    STYPE_32_14ABASE            = 20,
    STYPE_34_16ABASE            = 21,
    STYPE_36_18ABASE            = 22,
    STYPE_THP                   = 10,
    STYPE_THPX                  = 11,
    STYPE_THA                   = 12,
    STYPE_THB                   = 13,
    STYPE_THC                   = 14,
    STYPE_THD                   = 15,
    STYPE_THE                   = 16,
    STYPE_THF                   = 17,
    STYPE_THG                   = 18,
    STYPE_ABLTL1                = 19,
    STYPE_AB1TL2                = 20,
    STYPE_AB1TL3                = 21,
    STYPE_AB1TL4                = 22,
    STYPE_AB1TL5                = 23,
    STYPE_AB1TL7                = 24,
    STYPE_AB1TL8                = 1,
    STYPE_AB7TMD1               = 25,
    STYPE_AB1TMD2               = 2,
    STYPE_AB1TMD3               = 26,
    STYPE_AB5TL1                = 27,
    STYPE_AB5TL2                = 28,
    STYPE_AB5TL3                = 29,
    STYPE_AB5TL4                = 30,
    STYPE_AB5TL5                = 31,
    STYPE_AB6TMD1               = 32,
    STYPE_AB6TMD2               = 33,
    STYPE_AB6TMD3               = 34,
    STYPE_AB6TMD4               = 35,
    STYPE_AB6TL3                = 36,
    STYPE_AB6UTMD2              = 38,
    STYPE_AB6UTMD3              = 39,
    STYPE_AB6UTL2               = 40,
    STYPE_AB8TMD1               = 42,
    STYPE_AB7TMD2               = 43,
    STYPE_AB7TMD3               = 41,
    STYPE_AB9TMD1               = 45,
    STYPE_AB9TMD2               = 46,
    STYPE_AB9TMD3               = 47,
    STYPE_AB9TMD4               = 57,
    STYPE_AB9TL1                = 48,
    STYPE_AB9TL2                = 49,
    STYPE_AB9TL4                = 50,
    STYPE_AB9TL3                = 51,
    STYPE_AB9TL6                = 52,
    STYPE_AB9TL5                = 7,
    STYPE_R03PGD                = 39,
    STYPE_R06RGD                = 40,
    STYPE_AB5TMD1               = 54,
    STYPE_AB5TMD2               = 55,
    STYPE_AB5TMD3               = 56,
    STYPE_SUWON                 = 23,
    STYPE_AB6TL1                = 9,
    STYPE_AB6UTMD1              = 53,
    STYPE_AB7TL1                = 37,
    STYPE_AB1TL1                = 44,
    STYPE_AB8TMD2               = 19,
    STYPE_AB6UTL1               = 8,
    STYPE_AIRSTRIPH             = 2,
    STYPE_HWYTAX1               = 1,
    STYPE_231FACT               = 20,
    STYPE_232FACT               = 2,
    STYPE_238FACT               = 1,
    STYPE_305FACT               = 3,
    STYPE_322FACT               = 9,
    STYPE_324FACT               = 10,
    STYPE_328FACT               = 11,
    STYPE_403FACT               = 12,
    STYPE_405FACT               = 13,
    STYPE_40AFACT               = 14,
    STYPE_F02_01                = 26,
    STYPE_F02_02                = 2,
    STYPE_F02_04                = 3,
    STYPE_F02_05                = 1,
    STYPE_WHSE06                = 8,
    STYPE_40CFACT               = 15,
    STYPE_417FACT               = 16,
    STYPE_418FACT               = 17,
    STYPE_41EFACT               = 5,
    STYPE_444FACT               = 6,
    STYPE_446FACT               = 7,
    STYPE_44BFACT               = 8,
    STYPE_44DFACT               = 21,
    STYPE_79CFACT               = 22,
    STYPE_7A0FACT               = 23,
    STYPE_801FACT               = 24,
    STYPE_802FACT               = 25,
    STYPE_803FACT               = 26,
    STYPE_805FACT               = 27,
    STYPE_807FACT               = 28,
    STYPE_80AFACT               = 29,
    STYPE_80BFACT               = 30,
    STYPE_817FACT               = 31,
    STYPE_81EFACT               = 32,
    STYPE_844FACT               = 33,
    STYPE_846FACT               = 34,
    STYPE_84BFACT               = 35,
    STYPE_84DFACT               = 36,
    STYPE_B28FACT               = 37,
    STYPE_B2CFACT               = 38,
    STYPE_C21FACT               = 39,
    STYPE_C22FACT               = 40,
    STYPE_C23FACT               = 41,
    STYPE_C24FACT               = 42,
    STYPE_C25FACT               = 43,
    STYPE_C28FACT               = 44,
    STYPE_C2BFACT               = 45,
    STYPE_C2CFACT               = 46,
    STYPE_D35FACT               = 47,
    STYPE_D3AFACT               = 48,
    STYPE_DA8FACT               = 49,
    STYPE_E81FACT               = 50,
    STYPE_E83FACT               = 51,
    STYPE_E8AFACT               = 52,
    STYPE_E8CFACT               = 53,
    STYPE_EC1FACT               = 54,
    STYPE_EC4FACT               = 55,
    STYPE_EC5FACT               = 56,
    STYPE_ECCFACT               = 57,
    STYPE_EE1FACT               = 58,
    STYPE_EE2FACT               = 60,
    STYPE_EE5FACT               = 59,
    STYPE_EE8FACT               = 61,
    STYPE_21DUGFACT             = 62,
    STYPE_UGNDFACT              = 27,
    STYPE_204UGNDFACT           = 63,
    STYPE_23CUGNDFACT           = 64,
    STYPE_202UGNDFACT           = 65,
    STYPE_20FUGNDFACT           = 66,
    STYPE_21CUGNDFACT           = 67,
    STYPE_FENCE1                = 3,
    STYPE_FENCE2                = 4,
    STYPE_FENCE3                = 5,
    STYPE_FENCE4                = 6,
    STYPE_2A6DMZ                = 3,
    STYPE_2A4DMZ                = 4,
    STYPE_2ADDMZ                = 2,
    STYPE_2ABDMZ                = 5,
    STYPE_DA8PP                 = 5,
    STYPE_40CPP                 = 6,
    STYPE_40APP                 = 7,
    STYPE_DA7PP                 = 8,
    STYPE_44BPP                 = 9,
    STYPE_EE2PP                 = 10,
    STYPE_322PP                 = 11,
    STYPE_235PP                 = 12,
    STYPE_PP01_02               = 11,
    STYPE_PP01_03               = 12,
    STYPE_EE2NUKE1              = 16,
    STYPE_DUGNDFACT             = 4,
    STYPE_RWYDIST1              = 6,
    STYPE_RWYDIST2              = 5,
    STYPE_RWYDIST3              = 4,
    STYPE_RWYDIST4              = 3,
    STYPE_MAYDAY                = 1,
    STYPE_KOEX                  = 31,
    STYPE_ARCH                  = 1,
    STYPE_KORYO                 = 3,
    STYPE_STOWER                = 5,
    STYPE_RYUGYONG              = 4,
    STYPE_TANKER                = 1,
    STYPE_OLY1                  = 2,
    STYPE_OLY2                  = 3,
    STYPE_OLY3                  = 4,
    STYPE_OLY4                  = 5,
    STYPE_OLY5                  = 6,
    STYPE_STADOBJ               = 36,
    STYPE_PANMUN                = 37,
    STYPE_PMJ1                  = 2,
    STYPE_PMJ2                  = 3,
    STYPE_DMZSFNC               = 7,
    STYPE_40FKOEX               = 38,
    STYPE_80FSTARCH             = 39,
    STYPE_STARCH                = 2,
    STYPE_KIM2                  = 3,
    STYPE_NBBRD1                = 8,
    STYPE_NBBRD2                = 9,
    STYPE_80FKYORO              = 40,
    STYPE_CLUBBLK               = 5,
    STYPE_80FRYUGNG             = 41,
    STYPE_5F0TOWER              = 42,
    STYPE_MAYDAYOBJ             = 43,
    STYPE_D35ARMB               = 8,
    STYPE_D35DEPOT              = 3,
    STYPE_D3AARMB               = 9,
    STYPE_D3ADEPOT              = 10,
    STYPE_D3FBURB1              = 42,
    STYPE_141ARMB               = 11,
    STYPE_D5CNUKE1              = 17,
    STYPE_D5ACHEM               = 12,
    STYPE_C2F_CITY              = 43,
    STYPE_307_CITY              = 44,
    STYPE_81E_CITY              = 45,
    STYPE_41E_CITY              = 46,
    STYPE_817_CITY              = 47,
    STYPE_137_TOWN              = 40,
    STYPE_137_VILLAGE           = 27,
    STYPE_137_JUNCT             = 28,
    STYPE_12E_TOWN              = 41,
    STYPE_12D_TOWN              = 43,
    STYPE_138_TOWN              = 44,
    STYPE_127_TOWN              = 45,
    STYPE_12A_TOWN              = 46,
    STYPE_12B_TOWN              = 47,
    STYPE_125_TOWN              = 48,
    STYPE_12E_VILLAGE           = 28,
    STYPE_12D_VILLAGE           = 29,
    STYPE_138_VILLAGE           = 30,
    STYPE_127_VILLAGE           = 31,
    STYPE_12A_VILLAGE           = 32,
    STYPE_12B_VILLAGE           = 33,
    STYPE_125_VILLAGE           = 34,
    STYPE_12E_JCT               = 29,
    STYPE_12D_JCT               = 30,
    STYPE_138_JCT               = 31,
    STYPE_127_JCT               = 32,
    STYPE_12A_JCT               = 33,
    STYPE_12B_JCT               = 34,
    STYPE_125_JCT               = 35,
    STYPE_RUNWAY_NUM            = 41,
    STYPE_CSHIP1                = 2,
    STYPE_CSHIP2                = 5,
    STYPE_CSHIP3                = 6,
    STYPE_CSHIP4                = 7,
    STYPE_                      = 4,
    STYPE_RWYLIT                = 5,
    STYPE_GRLINE                = 6,
    STYPE_YRLINE                = 7,
    STYPE_THR160                = 42,
    STYPE_MNAVBEAC              = 8,
    STYPE_F16PIT                = 2,
    STYPE_F16PIT_MP             = 3,
    STYPE_B_131_1               = 154,
    STYPE_LB02                  = 37,
    STYPE_B132_1                = 155,
    STYPE_B_784_1               = 156,
    STYPE_B_78B_1               = 157,
    STYPE_LB01                  = 38,
    STYPE_LB03                  = 39,
    STYPE_LB04                  = 40,
    STYPE_BRIDGE_131_2          = 158,
    STYPE_BRIDGE_131_3          = 159,
    STYPE_BRIDGE_131_4          = 160,
    STYPE_BRIDGE_132_2          = 161,
    STYPE_BRIDGE_132_3          = 162,
    STYPE_BRIDGE_132_4          = 163,
    STYPE_BRIDGE_242_1          = 164,
    STYPE_BRIDGE_241_1          = 6,
    STYPE_BRIDGE_241_2          = 5,
    STYPE_BRIDGE_241__3         = 165,
    STYPE_BRIDGE_241_4          = 166,
    STYPE_BRIDGE_242_2          = 167,
    STYPE_BRIDGE_242__3         = 168,
    STYPE_BRIDGE_242_4          = 169,
    STYPE_BRIDGE_A42_1          = 170,
    STYPE_BRIDGE_A41_1          = 14,
    STYPE_BRIDGE_a41_2          = 13,
    STYPE_BRIDGE_a41__3         = 171,
    STYPE_BRIDGE_a41_4          = 172,
    STYPE_BRIDGE_a42_2          = 173,
    STYPE_BRIDGE_A42__3         = 174,
    STYPE_BRIDGE_A42_4          = 175,
    STYPE_BRIDGE_D41_1          = 176,
    STYPE_BRIDGE_D41_2          = 177,
    STYPE_BRIDGE_D41__3         = 178,
    STYPE_BRIDGE_D41_4          = 179,
    STYPE_BRIDGE_D42_1          = 178,
    STYPE_BRIDGE_D42_2          = 180,
    STYPE_BRIDGE_D42_4          = 181,
    STYPE_B2AC_1                = 182,
    STYPE_B2A3_1                = 183,
    STYPE_BD2A_1                = 184,
    STYPE_POPMENU               = 1,
    STYPE_R03OPGA               = 43,
    STYPE_R03OPGD               = 44,
    STYPE_OSANLIT               = 9,
    STYPE_THP27                 = 58,
    STYPE_THP09                 = 59,
    STYPE_1RWYLIT               = 10,
    STYPE_2RWYLIT               = 11,
    STYPE_KIMPOLIT              = 12,
    STYPE_SEOULLIT              = 13,
    STYPE_SUNANLIT              = 14,
    STYPE_SUNANLIT2             = 15,
    STYPE_WONSANLIT             = 16,
    STYPE_THP01                 = 60,
    STYPE_THP02                 = 61,
    STYPE_THP02LR               = 62,
    STYPE_THP02RL               = 63,
    STYPE_THP03                 = 64,
    STYPE_THP05LR               = 65,
    STYPE_THP05RL               = 66,
    STYPE_THP08                 = 67,
    STYPE_THP11                 = 68,
    STYPE_THP12                 = 69,
    STYPE_THP14                 = 70,
    STYPE_THP14LR               = 71,
    STYPE_THP14RL               = 72,
    STYPE_THP15                 = 73,
    STYPE_THP16                 = 74,
    STYPE_THP16LR               = 75,
    STYPE_THP16RL               = 76,
    STYPE_THP18                 = 77,
    STYPE_THP19                 = 78,
    STYPE_THP20                 = 79,
    STYPE_THP20LR               = 80,
    STYPE_THP20RL               = 81,
    STYPE_THP21                 = 82,
    STYPE_THP23LR               = 83,
    STYPE_THP23RL               = 84,
    STYPE_THP26                 = 85,
    STYPE_THP29                 = 86,
    STYPE_THP30                 = 87,
    STYPE_THP32                 = 88,
    STYPE_THP32LR               = 89,
    STYPE_THP32RL               = 90,
    STYPE_THP33                 = 91,
    STYPE_THP34                 = 92,
    STYPE_THP34LR               = 93,
    STYPE_THP34RL               = 94,
    STYPE_THP36                 = 95,
    STYPE_00CPORTLIT            = 17,
    STYPE_MIRIM                 = 25,
    STYPE_66DPORTLIT            = 18,
    STYPE_731PORTLIT            = 19,
    STYPE_795PORTLIT            = 20,
    STYPE_79APORTLIT            = 21,
    STYPE_79BPORTLIT            = 22,
    STYPE_79DPORTLIT            = 23,
    STYPE_79EPORTLIT            = 24,
    STYPE_7A0PORTLIT            = 25,
    STYPE_7A1PORTLIT            = 26,
    STYPE_7A2PORTLIT            = 27,
    STYPE_7A5PORTLIT            = 28,
    STYPE_7A6PORTLIT            = 29,
    STYPE_C0FARMB               = 10,
    STYPE_D39ARMB               = 12,
    STYPE_142ARMB               = 13,
    STYPE_A0FARMB               = 14,
    STYPE_A35ARMB               = 15,
    STYPE_322DEPOT              = 4,
    STYPE_402DEPOT              = 5,
    STYPE_40CDEPOT              = 6,
    STYPE_84BDEPOT              = 7,
    STYPE_ECADEPOT              = 8,
    STYPE_D31DEPOT              = 9,
    STYPE_D36DEPOT              = 11,
    STYPE_D3BDEPOT              = 5,
    STYPE_D3CDEPOT              = 12,
    STYPE_D79DEPOT              = 13,
    STYPE_125DEPOT              = 14,
    STYPE_126DEPOT              = 15,
    STYPE_12DDEPOT              = 16,
    STYPE_A35DEPOT              = 17,
    STYPE_A3BDEPOT              = 18,
    STYPE_D35HQ                 = 2,
    STYPE_D5AHQ                 = 3,
    STYPE_14CHQ                 = 4,
    STYPE_FEFRADAR              = 2,
    STYPE_D35RADAR              = 3,
    STYPE_D3ARADAR              = 4,
    STYPE_D48RADAR              = 5,
    STYPE_20FRADAR              = 6,
    STYPE_DEPOTONE              = 9,
    STYPE_21BRADAR              = 7,
    STYPE_RTOWER01              = 6,
    STYPE_21CRADAR              = 8,
    STYPE_2DFRADAR              = 9,
    STYPE_F00RADAR              = 10,
    STYPE_F0FRADAR              = 11,
    STYPE_A34RADAR              = 12,
    STYPE_A3ERADAR              = 13,
    STYPE_BA2RADAR              = 14,
    STYPE_BA7RADAR              = 15,
    STYPE_BCFRADAR              = 16,
    STYPE_DA9RADAR              = 17,
    STYPE_PYONGNUKE             = 18,
    STYPE_6CEPORT               = 16,
    STYPE_6CCPORT               = 17,
    STYPE_798PORT               = 18,
    STYPE_FUELTRUCK             = 1,
    STYPE_SM977                 = 2,
    STYPE_APU                   = 3,
    STYPE_WTRAILER              = 4,
    STYPE_WLOADER               = 5)

  (defenum Specific_Types
    SPTYPE_20mmAAA              = 2,
    SPTYPE_P3                   = 1,
    SPTYPE_S3                   = 2,
    SPTYPE_A10                  = 1,
    SPTYPE_A37B                 = 2,
    SPTYPE_A6E                  = 3,
    SPTYPE_AC130U               = 4,
    SPTYPE_F4G                  = 5,
    SPTYPE_FB111                = 6,
    SPTYPE_HARRIER              = 7,
    SPTYPE_IL28                 = 8,
    SPTYPE_MIG27                = 9,
    SPTYPE_Q5                   = 10,
    SPTYPE_SU24                 = 11,
    SPTYPE_SU25                 = 12,
    SPTYPE_SU7                  = 13,
    SPTYPE_AH1                  = 1,
    SPTYPE_AH64                 = 2,
    SPTYPE_AH64D                = 3,
    SPTYPE_AH66                 = 4,
    SPTYPE_KA50                 = 5,
    SPTYPE_MI24                 = 6,
    SPTYPE_MI28                 = 7,
    SPTYPE_MI8                  = 8,
    SPTYPE_A50                  = 1,
    SPTYPE_E2C                  = 2,
    SPTYPE_E3                   = 3,
    SPTYPE_B1B                  = 1,
    SPTYPE_B2                   = 2,
    SPTYPE_B52G                 = 3,
    SPTYPE_TU16                 = 4,
    SPTYPE_TU160                = 5,
    SPTYPE_TU22                 = 6,
    SPTYPE_TU95                 = 7,
    SPTYPE_EA6B                 = 1,
    SPTYPE_EF111                = 2,
    SPTYPE_F14A                 = 2,
    SPTYPE_F15C                 = 3,
    SPTYPE_F22                  = 4,
    SPTYPE_F4E                  = 5,
    SPTYPE_F5E                  = 6,
    SPTYPE_J7                   = 7,
    SPTYPE_J8                   = 8,
    SPTYPE_MIG19                = 10,
    SPTYPE_MIG21                = 11,
    SPTYPE_MIG23MS              = 12,
    SPTYPE_MIG25                = 13,
    SPTYPE_MIG29                = 14,
    SPTYPE_MIG31                = 15,
    SPTYPE_SU15                 = 9,
    SPTYPE_SU27                 = 1,
    SPTYPE_F117                 = 1,
    SPTYPE_F15E                 = 2,
    SPTYPE_F16C                 = 3,
    SPTYPE_F18C                 = 4,
    SPTYPE_J5                   = 5,
    SPTYPE_E8C                  = 1,
    SPTYPE_OV10D                = 1,
    SPTYPE_RC135                = 2,
    SPTYPE_SR71                 = 3,
    SPTYPE_TR1                  = 4,
    SPTYPE_TR2                  = 5,
    SPTYPE_U2                   = 6,
    SPTYPE_MD500                = 1,
    SPTYPE_OH58D                = 2,
    SPTYPE_IL78                 = 1,
    SPTYPE_KC10                 = 2,
    SPTYPE_KC130R               = 3,
    SPTYPE_KC135                = 4,
    SPTYPE_TU16N                = 5,
    SPTYPE_AN12                 = 1,
    SPTYPE_AN124                = 2,
    SPTYPE_AN2                  = 3,
    SPTYPE_AN225                = 4,
    SPTYPE_AN70                 = 5,
    SPTYPE_AN72                 = 6,
    SPTYPE_C130                 = 7,
    SPTYPE_C141                 = 8,
    SPTYPE_C17                  = 9,
    SPTYPE_C5                   = 10,
    SPTYPE_IL76M                = 11,
    SPTYPE_MV22                 = 12,
    SPTYPE_Y8                   = 13,
    SPTYPE_CH46                 = 1,
    SPTYPE_CH47                 = 2,
    SPTYPE_CH53                 = 3,
    SPTYPE_MI26                 = 4,
    SPTYPE_UH1N                 = 5,
    SPTYPE_UH60L                = 6,
    SPTYPE_SACRAMENTO           = 1,
    SPTYPE_FAGLST               = 1,
    SPTYPE_120mmAP              = 28,
    SPTYPE_120mmHEAT            = 29,
    SPTYPE_105mm                = 1,
    SPTYPE_152mm                = 2,
    SPTYPE_73mm                 = 3,
    SPTYPE_BOFORS               = 4,
    SPTYPE_BLU109B              = 1,
    SPTYPE_BLU27                = 2,
    SPTYPE_CBU52BB              = 3,
    SPTYPE_CBU58AB              = 4,
    SPTYPE_CBU87                = 5,
    SPTYPE_CBU89B               = 6,
    SPTYPE_DURANDAL             = 7,
    SPTYPE_MK20ROCKEYE          = 8,
    SPTYPE_GBU10AB              = 1,
    SPTYPE_GBU12B               = 2,
    SPTYPE_GBU24B               = 3,
    SPTYPE_GPS_JSOW1            = 1, ; MI added for GPS Weaps
    SPTYPE_GPS_JSOW2            = 2, ; MI added for GPS Weaps
    SPTYPE_GPS_JSOW3            = 3, ; MI added for GPS Weaps
    SPTYPE_GPS_JSOW4            = 4, ; MI added for GPS Weaps
    SPTYPE_GPS_JSOW5            = 5, ; MI added for GPS Weaps
    SPTYPE_GPS_JDAM1            = 6, ; MI added for GPS Weaps
    SPTYPE_GPS_JDAM2            = 7, ; MI added for GPS Weaps
    SPTYPE_MK82                 = 1,
    SPTYPE_MK82SNAKEYE          = 2,
    SPTYPE_MK84                 = 3,
    SPTYPE_MK84AIR              = 4,
    SPTYPE_LOWALT               = 1,
    SPTYPE_CV67KENNEDY          = 1,
    SPTYPE_CG47                 = 1,
    SPTYPE_DECK_CLOUD1          = 1,
    SPTYPE_DEPTHCHARGE          = 1,
    SPTYPE_ALQ131               = 1,
    SPTYPE_ALLM16SQD            = 1,
    SPTYPE_ALLM4SQD             = 2,
    SPTYPE_ALLM60SQD            = 3,
    SPTYPE_CISARTSQD            = 4,
    SPTYPE_CISATMISSQD          = 5,
    SPTYPE_CISMORTSQD           = 6,
    SPTYPE_CISSAMSQD            = 7,
    SPTYPE_DPRKARTSQD           = 8,
    SPTYPE_DPRKATMISSQD         = 9,
    SPTYPE_DPRKMORTSQD          = 10,
    SPTYPE_DPRKSAMSQD           = 11,
    SPTYPE_PRCARTSQD            = 12,
    SPTYPE_PRCATMISSQD          = 13,
    SPTYPE_PRCMORTSQD           = 14,
    SPTYPE_PRCSAMSQD            = 15,
    SPTYPE_ROKARTSQD            = 16,
    SPTYPE_ROKATMISSQD          = 17,
    SPTYPE_ROKMORTSQD           = 18,
    SPTYPE_ROKSAMSQD            = 19,
    SPTYPE_USARTSQD             = 20,
    SPTYPE_USATMISSQD           = 21,
    SPTYPE_USMORTSQD            = 22,
    SPTYPE_USSAMSQUAD           = 23,
    SPTYPE_JANGWEI              = 1,
    SPTYPE_ULSAN                = 2,
    SPTYPE_100GAL               = 1,
    SPTYPE_300GAL               = 2,
    SPTYPE_370GAL               = 3,
    SPTYPE_500GAL               = 4,
    SPTYPE_600GAL               = 5,
    SPTYPE_GEARDEST             = 1,
    SPTYPE_CARGOSHP             = 1,
    SPTYPE_GENTANKER            = 2,
    SPTYPE_12_7mm               = 1,
    SPTYPE_20mm                 = 2,
    SPTYPE_30mm                 = 3,
    SPTYPE_40mmGL               = 4,
    SPTYPE_7_62mm               = 5,
    SPTYPE_7_62mmPKT            = 6,
    SPTYPE_76mm_3in_50cal       = 7,
    SPTYPE_GAU12U               = 8,
    SPTYPE_GAU8                 = 9,
    SPTYPE_GSH23                = 10,
    SPTYPE_M16GUN               = 11,
    SPTYPE_M46130mm             = 12,
    SPTYPE_M4GUN                = 13,
    SPTYPE_M60MGUN              = 14,
    SPTYPE_MK15PHALANX          = 15,
    SPTYPE_MK45                 = 16,
    SPTYPE_MNCLRBLADE           = 1,
    SPTYPE_AA1                  = 1,
    SPTYPE_AA10                 = 2,
    SPTYPE_AA10C                = 3,
    SPTYPE_AA11                 = 4,
    SPTYPE_AA12                 = 5,
    SPTYPE_AA2                  = 6,
    SPTYPE_AA2R                 = 7,
    SPTYPE_AA3                  = 8,
    SPTYPE_AA7                  = 9,
    SPTYPE_AA7R                 = 10,
    SPTYPE_AA8                  = 11,
    SPTYPE_AA9                  = 12,
    SPTYPE_AIM120               = 13,
    SPTYPE_AIM54                = 14,
    SPTYPE_AIM7                 = 15,
    SPTYPE_AIM9M                = 16,
    SPTYPE_AIM9P                = 17,
    SPTYPE_AIM9R                = 18,
    SPTYPE_AGM114               = 1,
    SPTYPE_AGM119               = 2,
    SPTYPE_AGM122               = 3,
    SPTYPE_AGM45                = 4,
    SPTYPE_AGM65A               = 5,
    SPTYPE_AGM65B               = 6,
    SPTYPE_AGM65D               = 7,
    SPTYPE_AGM65G               = 8,
    SPTYPE_AGM78                = 9,
    SPTYPE_AGM84                = 10,
    SPTYPE_AGM88                = 11,
    SPTYPE_AS10                 = 12,
    SPTYPE_AS11                 = 13,
    SPTYPE_AS12                 = 14,
    SPTYPE_AS14                 = 15,
    SPTYPE_AS15                 = 16,
    SPTYPE_AS7                  = 17,
    SPTYPE_AS9                  = 18,
    SPTYPE_AT2                  = 10,
    SPTYPE_AT6                  = 20,
    SPTYPE_HELLFIRE             = 21,
    SPTYPE_AS4                  = 1,
    SPTYPE_AS6                  = 2,
    SPTYPE_ADATS                = 1,
    SPTYPE_CHAPARRAL            = 2,
    SPTYPE_HAWK                 = 3,
    SPTYPE_HN_5_A               = 4,
    SPTYPE_HYDRA                = 5,
    SPTYPE_MK26                 = 6,
    SPTYPE_NIKE                 = 7,
    SPTYPE_PATRIOT              = 8,
    SPTYPE_RAPIER               = 9,
    SPTYPE_RIM7                 = 10,
    SPTYPE_SA13                 = 12,
    SPTYPE_SA14                 = 13,
    SPTYPE_SA15                 = 14,
    SPTYPE_SA19                 = 15,
    SPTYPE_SA2                  = 16,
    SPTYPE_SA3                  = 17,
    SPTYPE_SA4                  = 18,
    SPTYPE_SA5                  = 19,
    SPTYPE_SA6                  = 20,
    SPTYPE_SA7                  = 21,
    SPTYPE_SA8                  = 22,
    SPTYPE_SA9                  = 23,
    SPTYPE_SAN5                 = 24,
    SPTYPE_STINGER              = 25,
    SPTYPE_TOWM1046             = 1,
    SPTYPE_122mmAProcket        = 1,
    SPTYPE_122mmHErocket        = 2,
    SPTYPE_240mmROCKET          = 3,
    SPTYPE_ASROC                = 4,
    SPTYPE_AT3                  = 5,
    SPTYPE_AT5                  = 6,
    SPTYPE_FROG7                = 7,
    SPTYPE_M47                  = 8,
    SPTYPE_MINUTEMAN            = 9,
    SPTYPE_PEACEKEEPER          = 11,
    SPTYPE_RPG_7VAT             = 12,
    SPTYPE_SCUD                 = 13,
    SPTYPE_SS1                  = 14,
    SPTYPE_SS18                 = 15,
    SPTYPE_SS21                 = 16,
    SPTYPE_SS24                 = 17,
    SPTYPE_SS45                 = 18,
    SPTYPE_SSN2                 = 3,
    SPTYPE_160mmMORT            = 1,
    SPTYPE_60mmMORT             = 2,
    SPTYPE_M1937MORT            = 3,
    SPTYPE_M252MORT             = 4,
    SPTYPE_LST1179              = 1,
    SPTYPE_NOTHING              = 1,
    SPTYPE_NOWEAPON             = 2,
    SPTYPE_OSA2                 = 1,
    SPTYPE_WILDCAT              = 2,
    SPTYPE_PONTOONBRIDGE        = 1,
    SPTYPE_PUFFY_CLOUD1         = 1,
    SPTYPE_SINGLE               = 1,
    SPTYPE_TRIPLE               = 2,
    SPTYPE_LAU3A                = 1,
    SPTYPE_UB3257               = 2,
    SPTYPE_VIKHR                = 22,
    SPTYPE_SMALL_CRATER1        = 1,
    SPTYPE_FIRETEAM             = 1,
    SPTYPE_DD963                = 1,
    SPTYPE_DELTA                = 1,
    SPTYPE_TRIDENT              = 2,
    SPTYPE_PTK250               = 9,
    SPTYPE_TYPHOON              = 3,
    SPTYPE_OSCAR                = 1,
    SPTYPE_AKULA                = 1,
    SPTYPE_KILO                 = 2,
    SPTYPE_LOSANGELES           = 3,
    SPTYPE_SEAWOLF              = 4,
    SPTYPE_MK32                 = 1,
    SPTYPE_M167                 = 1,
    SPTYPE_2A65                 = 1,
    SPTYPE_M198                 = 2,
    SPTYPE_M163                 = 1,
    SPTYPE_P76ZSU23_4           = 2,
    SPTYPE_ZSU57_2              = 4,
    SPTYPE_CHAPARRALL           = 1,
    SPTYPE_M2A2ADATS            = 2,
    SPTYPE_M2A2ADV              = 3,
    SPTYPE_SA13L                = 4,
    SPTYPE_SA15L_GM569          = 5,
    SPTYPE_SA2L                 = 6,
    SPTYPE_SA4L                 = 7,
    SPTYPE_SA6L                 = 8,
    SPTYPE_M1A1                 = 5,
    SPTYPE_M1A2                 = 6,
    SPTYPE_M2A2                 = 7,
    SPTYPE_M2A2BC               = 8,
    SPTYPE_M48A5TNK             = 9,
    SPTYPE_M60                  = 10,
    SPTYPE_PT76                 = 13,
    SPTYPE_T55                  = 14,
    SPTYPE_T62                  = 15,
    SPTYPE_T72                  = 16,
    SPTYPE_T80                  = 17,
    SPTYPE_T90                  = 18,
    SPTYPE_TYPE62               = 19,
    SPTYPE_TYPE80               = 20,
    SPTYPE_TYPE85II             = 21,
    SPTYPE_TYPE90II             = 22,
    SPTYPE_XM8AGS               = 23,
    SPTYPE_2S19                 = 1,
    SPTYPE_2S3                  = 2,
    SPTYPE_M109                 = 3,
    SPTYPE_M110A2               = 4,
    SPTYPE_M1973SPARTY          = 5,
    SPTYPE_M1974SPARTY          = 6,
    SPTYPE_MLRS                 = 7,
    SPTYPE_SM240                = 9,
    SPTYPE_AVLM                 = 1,
    SPTYPE_M1MS                 = 2,
    SPTYPE_M60AVLB              = 3,
    SPTYPE_M88AVRV              = 4,
    SPTYPE_M9ACE                = 5,
    SPTYPE_P76MDK_2DOZER        = 6,
    SPTYPE_P76MT_55BRGLY        = 7,
    SPTYPE_ACRV                 = 1,
    SPTYPE_MTLBU                = 3,
    SPTYPE_AAV7A1               = 1,
    SPTYPE_AAVC7A1              = 2,
    SPTYPE_BMD                  = 3,
    SPTYPE_BMP1                 = 4,
    SPTYPE_BMP1ATG              = 5,
    SPTYPE_BMP2                 = 6,
    SPTYPE_BMP3                 = 7,
    SPTYPE_M113                 = 9,
    SPTYPE_M113A3               = 10,
    SPTYPE_M901                 = 11,
    SPTYPE_160mmMRTL            = 1,
    SPTYPE_FROG7L_ZIL135        = 1,
    SPTYPE_MTLB                 = 3,
    SPTYPE_YW_534_APC           = 4,
    SPTYPE_BRIGADE              = 1,
    SPTYPE_CHINESE_SA6          = 2,
    SPTYPE_CHINESE_ZU23         = 3,
    SPTYPE_DPRK_SA2             = 4,
    SPTYPE_DPRK_SA3             = 5,
    SPTYPE_DPRK_SA5             = 6,
    SPTYPE_DPRK_ZSU57           = 7,
    SPTYPE_ROK_HAWK             = 8,
    SPTYPE_30mmAAA              = 1,
    SPTYPE_203mm                = 6,
    SPTYPE_25mm                 = 25,
    SPTYPE_M2A3                 = 8,
    SPTYPE_HUMMVSTD             = 15,
    SPTYPE_HUMMVCARGO           = 14,
    SPTYPE_HMMWV_AMB            = 13,
    SPTYPE_ROK_NIKE             = 9,
    SPTYPE_SOVIET_SA15          = 10,
    SPTYPE_SOVIET_SA6           = 11,
    SPTYPE_SOVIET_SA8           = 12,
    SPTYPE_US_HAWK              = 13,
    SPTYPE_US_PATRIOT           = 7,
    SPTYPE_SOVIET_AIR           = 1,
    SPTYPE_US_AIR               = 2,
    SPTYPE_DPRK_AMPH            = 1,
    SPTYPE_SOVIET_AMPH          = 2,
    SPTYPE_US_AMPH              = 3,
    SPTYPE_CHINESE_TYPE80       = 2,
    SPTYPE_CHINESE_TYPE85II     = 3,
    SPTYPE_CHINESE_TYPE90II     = 4,
    SPTYPE_DPRK_T62             = 5,
    SPTYPE_ROK_M48              = 6,
    SPTYPE_SOVIET_T72           = 7,
    SPTYPE_SOVIET_T80           = 8,
    SPTYPE_SOVIET_T90           = 9,
    SPTYPE_US_M1                = 10,
    SPTYPE_US_M60               = 11,
    SPTYPE_US_CAV               = 1,
    SPTYPE_CHINESE_BB           = 1,
    SPTYPE_SOVIET_BB            = 2,
    SPTYPE_US_BB                = 3,
    SPTYPE_CHINESE_CV           = 1,
    SPTYPE_SOVIET_CV            = 2,
    SPTYPE_US_CV                = 3,
    SPTYPE_CHINESE_CR           = 1,
    SPTYPE_SOVIET_CR            = 2,
    SPTYPE_US_CR                = 3,
    SPTYPE_ROK_DD               = 1,
    SPTYPE_SOVIET_DD            = 2,
    SPTYPE_US_DD                = 3,
    SPTYPE_SOVIET_ENG           = 2,
    SPTYPE_US_ENG               = 1,
    SPTYPE_CHINESE_FF           = 1,
    SPTYPE_ROK_FF               = 2,
    SPTYPE_SOVIET_FF            = 3,
    SPTYPE_CHINESE_HQ           = 2,
    SPTYPE_DPRK_HQ              = 3,
    SPTYPE_ROK_HQ               = 4,
    SPTYPE_SOVIET_HQ            = 5,
    SPTYPE_US_HQ                = 1,
    SPTYPE_CHINESE_INF          = 2,
    SPTYPE_DPRK_INF             = 3,
    SPTYPE_ROK_INF              = 4,
    SPTYPE_SOVIET_INF           = 5,
    SPTYPE_US_INF               = 1,
    SPTYPE_SOVIET_MARINE        = 2,
    SPTYPE_US_LAV25             = 1,
    SPTYPE_CHINESE_MECH         = 2,
    SPTYPE_DPRK_BMP1            = 3,
    SPTYPE_ROK_M113             = 4,
    SPTYPE_SOVIET_MECH          = 5,
    SPTYPE_US_M2                = 1,
    SPTYPE_DPRK_PAT             = 1,
    SPTYPE_SOVIET_BM21          = 2,
    SPTYPE_SOVIET_BM24          = 3,
    SPTYPE_SOVIET_BM9A52        = 4,
    SPTYPE_US_MLRS              = 5,
    SPTYPE_ANY_SS               = 1,
    SPTYPE_SOVIET_SS            = 2,
    SPTYPE_US_SS                = 3,
    SPTYPE_ANY_TANK             = 1,
    SPTYPE_SOVIET_TRAN          = 1,
    SPTYPE_US_TRAN              = 2,
    SPTYPE_CHINESE_SP           = 2,
    SPTYPE_ROK_SP               = 4,
    SPTYPE_SOVIET_SP            = 5,
    SPTYPE_US_M109              = 6,
    SPTYPE_SOVIET_FROG7         = 2,
    SPTYPE_SOVIET_SCUD          = 3,
    SPTYPE_CHINESE_SSBN         = 1,
    SPTYPE_SOVIET_SSBN          = 2,
    SPTYPE_US_SSBN              = 3,
    SPTYPE_CHINESE_SSGN         = 1,
    SPTYPE_SOVIET_SSGN          = 2,
    SPTYPE_US_SSGN              = 3,
    SPTYPE_CHINESE_SSN          = 1,
    SPTYPE_SOVIET_SSN           = 2,
    SPTYPE_US_SSN               = 3,
    SPTYPE_SOVIET_SUP           = 2,
    SPTYPE_US_SUP               = 1,
    SPTYPE_CHINESE_ART          = 2,
    SPTYPE_SOVIET_ART           = 3,
    SPTYPE_US_M198              = 1,
    SPTYPE_LHD1                 = 1,
    SPTYPE_ZSU30                = 1,
    SPTYPE_ZU_23AAA             = 2,
    SPTYPE_2S6_TUNGUSKA         = 1,
    SPTYPE_HAWKL                = 2,
    SPTYPE_HUMMVAVG             = 3,
    SPTYPE_LAVADATS             = 4,
    SPTYPE_LAVADV               = 5,
    SPTYPE_MK29L                = 6,
    SPTYPE_NIKEL                = 7,
    SPTYPE_PATRIOTL             = 8,
    SPTYPE_SA2R                 = 9,
    SPTYPE_SA3L                 = 10,
    SPTYPE_SA3R                 = 11,
    SPTYPE_SA4R                 = 12,
    SPTYPE_SA5L                 = 13,
    SPTYPE_SA5R                 = 14,
    SPTYPE_SA8L                 = 15,
    SPTYPE_SA9L                 = 16,
    SPTYPE_BM21MLRS             = 1,
    SPTYPE_BM24MLRS             = 2,
    SPTYPE_BM9A52               = 3,
    SPTYPE_HUMMVTOW             = 16,
    SPTYPE_LAVR                 = 1,
    SPTYPE_FIRETRUCK            = 1,
    SPTYPE_HAWKRADAR            = 17,
    SPTYPE_M997HQ               = 1,
    SPTYPE_NIKERADAR            = 18,
    SPTYPE_PATRIOTR             = 19,
    SPTYPE_SA6RADAR             = 20,
    SPTYPE_BRDM1                = 1,
    SPTYPE_BRDM2                = 2,
    SPTYPE_BRDM3                = 3,
    SPTYPE_BTR70                = 4,
    SPTYPE_BTR80                = 5,
    SPTYPE_FAV                  = 6,
    SPTYPE_LAV25                = 7,
    SPTYPE_LAVC2                = 8,
    SPTYPE_LAVM                 = 9,
    SPTYPE_LAVTOW               = 10,
    SPTYPE_M998                 = 12,
    SPTYPE_CAR                  = 2,
    SPTYPE_CARGOTRUCK           = 3,
    SPTYPE_FUELTRUCK            = 4,
    SPTYPE_JEEP                 = 5,
    SPTYPE_KrAz255B             = 6,
    SPTYPE_KrAzFUEL             = 7,
    SPTYPE_M977                 = 8,
    SPTYPE_M977_FUEL            = 9,
    SPTYPE_M977CARGO            = 10,
    SPTYPE_SCUDL                = 11,
    SPTYPE_WC_551_APC           = 12,
    SPTYPE_120mmHE              = 26,
    SPTYPE_105mmAP              = 17,
    SPTYPE_105mmHE              = 18,
    SPTYPE_115mmAP              = 19,
    SPTYPE_115mmHE              = 20,
    SPTYPE_125mmAP              = 21,
    SPTYPE_125mmHE              = 22,
    SPTYPE_135mmAP              = 23,
    SPTYPE_135mmHE              = 24,
    SPTYPE_155mmAAA             = 3,
    SPTYPE_155mmHE              = 7,
    SPTYPE_122mmHE              = 5,
    SPTYPE_2S1                  = 8,
    SPTYPE_ZIL135               = 1,
    SPTYPE_DPRK_SP_152          = 1,
    SPTYPE_DPRK_AAA             = 1,
    SPTYPE_DPRK_SP_122          = 3,
    SPTYPE_DPRK_FROG            = 4,
    SPTYPE_TEST                 = 1,
    SPTYPE_DPRK_SCUD            = 1,
    SPTYPE_DPRK_T55             = 1,
    SPTYPE_DPRK_AIR_MOBILE      = 3,
    SPTYPE_DPRK_BM21            = 1,
    SPTYPE_2_75mm               = 4,
    SPTYPE_GBU15                = 4,
    SPTYPE_F18D                 = 6,
    SPTYPE_F18A                 = 7,
    SPTYPE_F18E                 = 4,
    SPTYPE_AN24                 = 14,
    SPTYPE_MK46                 = 2,
    SPTYPE_GPU5                 = 27,
    SPTYPE_FAB250LD             = 6,
    SPTYPE_FAB250HD             = 7,
    SPTYPE_GBU28B               = 7,
    SPTYPE_FAB250LGB            = 5,
    SPTYPE_FAB1000LD            = 8,
    SPTYPE_FAB1000HD            = 9,
    SPTYPE_FAB1000LGB           = 6,
    SPTYPE_LANTIRN_NAV          = 1,
    SPTYPE_LANTIRN_TARG         = 2,
    SPTYPE_AGM130               = 19,
    SPTYPE_AT4                  = 2,
    SPTYPE_SA12                 = 11,
    SPTYPE_MLRS_ROCKET          = 5,
    SPTYPE_UB1957               = 3,
    SPTYPE_RPK180               = 10,
    SPTYPE_RPK500               = 11,
    SPTYPE_AA8R                 = 19,
    SPTYPE_CHAFF1               = 1,
    SPTYPE_300GALW              = 6,
    SPTYPE_57MMROCK             = 6,
    SPTYPE_DESTBOMBER           = 8,
    SPTYPE_DISRUPTOR            = 20,
    SPTYPE_FFG                  = 3,
    SPTYPE_ENFAC                = 3,
    SPTYPE_DESTF16_1            = 8,
    SPTYPE_DESTF16_2            = 9,
    SPTYPE_DESTMIG29            = 17,
    SPTYPE_KIROV                = 2,
    SPTYPE_ROK_MARINE           = 3,
    SPTYPE_ROK_AAA              = 14,
    SPTYPE_ROK_M198             = 4,
    SPTYPE_DESTASW              = 3,
    SPTYPE_DESTATTACK           = 14,
    SPTYPE_DESTAWACS            = 4,
    SPTYPE_DESTECM              = 3,
    SPTYPE_DESTJSTAR            = 2,
    SPTYPE_DESTRECON            = 7,
    SPTYPE_DESTTANKER           = 6,
    SPTYPE_DESTTRANSPORT        = 15,
    SPTYPE_DESTATTHELO          = 9,
    SPTYPE_DESTRECHELO          = 3,
    SPTYPE_DESTTRANHELO         = 7,
    SPTYPE_DESTMIG19            = 18,
    SPTYPE_DESTMIG21            = 19,
    SPTYPE_RIFLE                = 30,
    SPTYPE_RES_INF_SQUAD        = 24,
    SPTYPE_ALL_RESERVE          = 1,
    SPTYPE_DEBRIS1              = 1,
    SPTYPE_DEBRIS2              = 2,
    SPTYPE_DEBRIS3              = 3,
    SPTYPE_CRATER2              = 1,
    SPTYPE_CRATER3              = 2,
    SPTYPE_CRATER4              = 3,
    SPTYPE_DESTIL28             = 15,
    SPTYPE_DESTMIG23MS          = 20,
    SPTYPE_DESTSU25             = 16,
    SPTYPE_DESTSU27             = 21,
    SPTYPE_DESTAN2              = 16,
    SPTYPE_30MM_TAIL_GUN        = 1,
    SPTYPE_DPRK_BMP2            = 6,
    SPTYPE_DPRK_TOW_ART         = 1,
    SPTYPE_D30                  = 3,
    SPTYPE_SIX                  = 3,
    SPTYPE_QUAD                 = 4,
    SPTYPE_GUYDIE               = 25,
    SPTYPE_DOWN_PILOT           = 26,
    SPTYPE_DPRK_FF              = 3,
    SPTYPE_ROK_PATROL           = 2,
    SPTYPE_240MM                = 8,
    SPTYPE_NUM380               = 1,
    SPTYPE_NUM270               = 2,
    SPTYPE_NUM160               = 3,
    SPTYPE_NAJIN                = 4,
    SPTYPE_AC130                = 16,
    SPTYPE_F16BLU               = 14,
    SPTYPE_F4                   = 15,
    SPTYPE_F5                   = 16,
    SPTYPE_F16B                 = 8,
    SPTYPE_PRC_MIG21            = 16,
    SPTYPE_CIS_MIG29            = 17,
    SPTYPE_CIS_SU27             = 18,
    SPTYPE_PRC_SU27             = 19,
    SPTYPE_57MM_HE              = 31,
    SPTYPE_SINGLE_AA            = 5,
    SPTYPE_2RAIL                = 6,
    SPTYPE_MAVRACK              = 7,
    SPTYPE_MUH1                 = 7,
    SPTYPE_CUH1                 = 8,
    SPTYPE_NUM01                = 4,
    SPTYPE_RCKT1                = 1,
    SPTYPE_AA10A                = 21,
    SPTYPE_DPRK_HART            = 5,
    SPTYPE_ALL_AK47SQUAD        = 27,
    SPTYPE_AK47                 = 32,
    SPTYPE_CF16A                = 8,
    SPTYPE_BIRACK               = 8,
    SPTYPE_HBIRACK              = 9,
    SPTYPE_HTRIRACK             = 10,
    SPTYPE_HONERACK             = 11,
    SPTYPE_RTRIRACK             = 12,
    SPTYPE_ONELAU3A             = 1,
    SPTYPE_BILAU3A              = 2,
    SPTYPE_TRILAU3A             = 3,
    SPTYPE_NUM23RW              = 5,
    SPTYPE_NUM05LW              = 6,
    SPTYPE_WLOADER              = 2,
    SPTYPE_APU                  = 3,
    SPTYPE_WTRAILER             = 4,
    )

  ;; data Type Class table Entries
  (defenum Data_Types
    DTYPE_MIN = 0, ;; JB 010106 for sanity checks
    DTYPE_FEATURE               = 1,
    DTYPE_NONE                  = 2,
    DTYPE_OBJECTIVE             = 3,
    DTYPE_UNIT                  = 4,
    DTYPE_VEHICLE               = 5,
    DTYPE_WEAPON                = 6,
    DTYPE_MAX = 7, ;; JB 010106 for sanity checks
    )
  )

(with-file "falcent.h"
  (defenum MoveType
    NoMove = 0,
    Foot,
    Wheeled,
    Tracked,
    LowAir,
    Air,
    Naval,
    Rail,
    MOVEMENT_TYPES))

(with-file "vuentity.h"
  (def VU_LAST_ENTITY_TYPE 100))

(with-file "pilot.h"
  (def PILOT_AVAILABLE 0)
  (def PILOT_KIA 1)
  (def PILOT_MIA 2)
  (def PILOT_RESCUED 3)
  (def PILOT_IN_USE 4))

(with-file "pilot.cpp"
  (def NUM_CALLSIGNS 160)
  (def NUM_PILOTS 686)
  (def FIRST_PILOT_ID 2300)
  (def FIRST_CALLSIGN_ID 2000))

(with-file "atm.h"
  (def ATM_MAX_CYCLES 32))

(with-file "cresmgr.h"
  (defenum unnamed
    _RSC_8_BIT_ = 0x00000001,
    _RSC_16_BIT_ = 0x00000002,
    _RSC_USECOLORKEY_ = 0x40000000,
    _RSC_SINGLE_ = 0x00000001,
    _RSC_MULTIPLE_ = 0x00000002,

    ;; Add types as needed
    _RSC_IS_IMAGE_ = 100,
    _RSC_IS_SOUND_ = 101,
    _RSC_IS_FLAT_ = 102))

(with-file "mission.h"
  (defenum MissionTypeEnum           ; NOTE: This must fit int a uchar
    AMIS_NONE           = 0,
    AMIS_BARCAP         = 1, ; BARCAP missions to protect a target area
    AMIS_BARCAP2        = 2, ; BARCAP missions to defend a border
    AMIS_HAVCAP         = 3,
    AMIS_TARCAP         = 4,
    AMIS_RESCAP         = 5,
    AMIS_AMBUSHCAP      = 6,
    AMIS_SWEEP          = 7,
    AMIS_ALERT          = 8,
    AMIS_INTERCEPT      = 9,
    AMIS_ESCORT         = 10,
    AMIS_SEADSTRIKE     = 11,
    AMIS_SEADESCORT     = 12,
    AMIS_OCASTRIKE      = 13, ; OCA strike (direct w;escort bitand sead)
    AMIS_INTSTRIKE      = 14, ; Interdiction (direct, alone)
    AMIS_STRIKE         = 15, ;
    AMIS_DEEPSTRIKE     = 16, ; Deep strike (safe path, w;escort bitand sead)
    AMIS_STSTRIKE       = 17, ; Stealth strike (safe path, alone)
    AMIS_STRATBOMB      = 18,
    AMIS_FAC            = 19,
    AMIS_ONCALLCAS      = 20,        ; On call CAS
    AMIS_PRPLANCAS      = 21,        ; Pre planned CAS
    AMIS_CAS            = 22,        ; Immediate CAS
    AMIS_SAD            = 23,        ; Search and destroy interdiction
    AMIS_INT            = 24, ; Interdiction (vs supply;fuel lines only)
    AMIS_BAI            = 25, ; Battlefield area interdiction
    AMIS_AWACS          = 26,
    AMIS_JSTAR          = 27,
    AMIS_TANKER         = 28,
    AMIS_RECON          = 29,
    AMIS_BDA            = 30,
    AMIS_ECM            = 31,
    AMIS_AIRCAV         = 32,
    AMIS_AIRLIFT        = 33,
    AMIS_SAR            = 34,
    AMIS_ASW            = 35,
    AMIS_ASHIP          = 36,
    AMIS_PATROL         = 37,
    AMIS_RECONPATROL    = 38,        ; Recon for enemy ground vehicles
    AMIS_ABORT          = 39,
    AMIS_TRAINING       = 40,
    AMIS_OTHER          = 41,
    )

  ;; Mission rolls
  (defenum MissionRollEnum
    ARO_CA              = 1,
    ARO_TACTRANS        = 2,            ; AMIS_SAR bitor AMIS_AIRCAV
    ARO_S               = 3, ; AMIS_OCASTRIKE bitor AMIS_INTSTRIKE bitor  ; Strike target
    ARO_GA              = 4, ; AMIS_SAD bitor AMIS_BAI bitor AMIS_ONCALLCAS bitor AMIS_PRPLANCAS   ; Ground attack
    ARO_SB              = 5, ; AMIS_STRATBOMB            ; Strategic bomb
    ARO_ECM             = 6, ; AMIS_ELJAM            ; Jam radar
    ARO_SEAD            = 7, ; AMIS_SEADSTRIKE bitor AMIS_SEADESCORT ; SEAD
    ARO_ASW             = 8, ; AMIS_ASW
    ARO_ASHIP           = 9, ; AMIS_ASHIP
    ARO_REC             = 10, ; AMIS_BDA bitor AMIS_RECON bitor AMIS_PATROL ; Recon
    ARO_TRANS           = 11, ; AMIS_AIRBORNE bitor AMIS_AIRLIFT           ; Drop off cargo
    ARO_ELINT           = 12, ; AMIS_AWACS
    ARO_AWACS           = 12,
    ARO_JSTAR           = 13,           ; AMIS_JSTAR
    ARO_TANK            = 14,           ; AMIS_TANKER
    ARO_FAC             = 15,
    ARO_OTHER           = 16,
    )                                   ;

  ;; Target Type
  (defenum MissionTargetTypeEnum
    AMIS_TAR_NONE       = 0,
    AMIS_TAR_OBJECTIVE  = 1,
    AMIS_TAR_UNIT       = 2,
    AMIS_TAR_LOCATION   = 3,
    )                                    ;

  ;; Additional Escort condition modes (normally ATM_MODE_OCA, DCA or INT)
  (defenum MissionEscortConditionEnum
    AMIS_ESC_ALWAYS     = 99,
    AMIS_ESC_NONE       = 98,
    )                                    ;

  ;; Tanker conditional modes
  (defenum TankerConditionalModeEnum
    TANKER_NONE         = 0,
    TANKER_HALF         = 1,
    TANKER_FULL         = 2,
    TANKER_ALWAYS       = 3,
    )                                    ;

  ;; flags for mission data
  (defenum MissionDataFlagEnum
    AMIS_ADDAWACS       = 0x01, ; Request AWACS
    AMIS_ADDJSTAR       = 0x02, ; Request JSTAR
    AMIS_ADDECM         = 0x04, ; Request ECM
    AMIS_ADDBDA         = 0x08, ; Request BDA
    AMIS_ADDESCORT      = 0x10, ; Request CA Escort (if enemy responds)
    AMIS_ADDSEAD        = 0x20, ; Request SEAD Escort (if enemy AD present)
    AMIS_ADDBARCAP      = 0x40, ; Trigger enemy BARCAP
    AMIS_ADDSWEEP       = 0x80, ; Trigger enemy Sweep
    AMIS_ADDOCASTRIKE   = 0x100, ; Trigger friendly OCA Strike vs enemy assets found
    AMIS_ADDTANKER      = 0x200, ; Add a tanker, if possible
    AMIS_NEEDTANKER     = 0x400, ; This mission can't go w;o a tanker
    AMIS_ADDFAC         = 0x800, ; Request FAC aircraft
    AMIS_ADDINTERCEPT   = 0x1000, ; Add an enemy intercept mission to intercept this mission

    AMIS_NOTHREAT       = 0x2000, ; Abort if above the minimum threat threshold
    AMIS_AVOIDTHREAT    = 0x4000, ; Dodge ADs vertically
    AMIS_HIGHTHREAT     = 0x8000, ; Abort only if extreme threat
    AMIS_IMMEDIATE      = 0x10000, ; Set if I'm looking for aircraft in flight
    AMIS_MATCHSPEED     = 0x20000, ; Try to build package with equivalent speed a;c
    AMIS_TARGET_ONLY    = 0x40000, ; go directly to target and back
    AMIS_NO_BREAKPT     = 0x80000, ; Don't add a breakpoint to this mission
    AMIS_DONT_COORD     = 0x100000, ; Don't match ingress;egress times with the main flight
    AMIS_AIR_LAUNCH_OK  = 0x200000, ; This mission can launch in mid-air (ie: from the edge of the map)
    AMIS_DONT_USE_AC    = 0x400000, ; Don't subtract aircraft from the squadron
    AMIS_NPC_ONLY       = 0x800000, ; Don't assign to potential player squadrons
    AMIS_FUDGE_RANGE    = 0x1000000, ; This mission is always in range - we'll just load more fuel
    AMIS_EXPECT_DIVERT  = 0x2000000, ; We want to sit around until we're told to divert
    AMIS_ASSIGNED_TAR   = 0x4000000, ; Used for diverts with a specific target in mind
    AMIS_NO_DIST_BONUS  = 0x8000000, ; Don't adjust mission priority by distance to front (add a constant)
    AMIS_NO_TARGETABORT = 0x10000000, ; Don't abort after reaching our target - just fly home
    AMIS_FLYALWAYS      = 0x20000000, ; Don't restrict percentage of missions flown
    AMIS_HELP_REQUEST   = 0x40000000, ; 2001-10-27 S.G. It's from an help request
    )                                    ;

  ;; Flags for mission requests
  (defenum MissionRequestFlagEnum
    REQF_USERESERVES    = 0x01, ; Use reserve aircraft for this request, if nessesary (mostly for support)
    REQF_CHECKED        = 0x02, ; This request has already been checked at least once
    REQF_NEEDRESPONSE   = 0x04, ; This needs to be dealt with immediately, and returns a response
    REQF_MET            = 0x08, ; This has been met already (in planned list)
    REQF_ONETRY         = 0x100, ; We get one try at building this, otherwise cancel
    REQF_USE_REQ_SQUAD  = 0x200, ; Use the squadron which requested the mission
    REQF_PART_OF_ACTION = 0x400, ; This target is part of a larger action by this team
    REQF_ALLOW_ERRORS   = 0x800, ; Allow missions to be planned with errors (for tactical engagement)
    REQF_TE_MISSION    = 0x1000,     ; This is a TE mission, correct mission length calculation mission.cpp
    )                                    ;

  ;; Returned by TargetThreats
  ;; Flags for what we really need
  (defenum TargetThreatReturnFlagEnum
    NEED_SEAD           = 0x01,
    NEED_ECM            = 0x02,

                                        ; Specifics as to the threat types
    THREAT_LALT_SAM     = 0x10,
    THREAT_HALT_SAM     = 0x20,
    THREAT_AAA          = 0x40,

                                        ; Specifics as to the threat location
    THREAT_ENROUTE      = 0x100,
    THREAT_TARGET       = 0x200,
    )                                    ;

  ;; Mission profiles
  (defenum MissionProfileEnum
    MPROF_LOW           = 0x01, ; Low engress profile
    MPROF_HIGH          = 0x02, ; High engress profile
    )                                    ;

  ;; Target area profiles
  (defenum TargetAreaProfileEnum
    TPROF_NONE          = 0, ; No target WP
    TPROF_ATTACK        = 1, ; IP, Target, Turn point  (Assembly, Break point)
    TPROF_HPATTACK      = 2, ; IP, Target (Assembly, Break point)
    TPROF_LOITER        = 3, ; 2 Turn points (Assembly)
    TPROF_TARGET        = 4, ; Target only (Assembly, Break point)
    TPROF_AVOID         = 5, ; Break point, Turn point (Assembly)
    TPROF_SWEEP         = 6, ; 3 circular Turn points
    TPROF_FLYBY         = 7, ; Pass over target, at lowest possible threat
    TPROF_SEARCH        = 8, ; Like loiter, but at full speed
    TPROF_LAND          = 9, ; Land at target for station time, then takeoff again
    )                                    ;

  ;; Target desctiption types (when to use target actions)
  (defenum TargetDescriptionType
    TDESC_NONE          = 0,
    TDESC_TTL           = 1, ; Takeoff To Landing (mission actions during whole route)
    TDESC_ATA           = 2, ; Assembly To Assembly
    TDESC_TAO           = 3, ; Target Area Only
    )                                    ;

  ;; Special time on target types
  (defenum SpecialTOTTypeEnum
    TOT_TAKEOFF         = 10,
    TOT_ENROUTE         = 11,
    TOT_INGRESS         = 12,
    )                                    ;

  ;; Mission request contexts (Why this mission is being requested)
  (defenum MissionRequestContext
    noContext,                    ; We don't really know why
    enemyUnitAdvanceBridge,  ; An enemy unit is advancing over a bridge
    enemyUnitMoveBridge,     ; An enemy unit is moving over a bridge
    enemyUnitAdvance,        ; An enemy unit is advancing
    enemyUnitMove,           ; An enemy unit is moving
    enemyUnitAttacking,      ; An enemy unit is attacking our forces
    enemyUnitDefending, ; An enemy unit is defending against our forces
    enemyForcesPresent, ; Enemy forces are suspected to be here
    attackEnemyUnit,    ; FAC CALL: Attack specific enemy unit (8)
    emptyUnit1,         ; TBD (9)
    emptyUnit2,         ; TBD (10)
    friendlyUnitAirborneMovement, ; a friendly unit needs airborne transportation
    emptyUnit5,                   ; TBD (12)
    emptyUnit6,                   ; TBD (13)
    enemyStrikesExpected,     ; Enemy air strikes expected in this area
    enemyAircraftPresent,  ; Enemy aircraft are expected (generic) (15)
    enemyGroundForcesPresent, ; Enemy ground forces are expected (JSTAR trigger)
    enemyRadarPresent,        ; Enemy radar operating (ECM trigger)
    enemySupportAircraftPresent,     ; Enemy support aircraft operating
    enemyCASAircraftPresent, ; Enemy ground attack aircraft are present
    interceptEnemyAircraft, ; AWACS CALL: Intercept specific enemy aircraft (20)
    emptyEnemyAir1,         ; TBD (21)
    hostileAircraftPresent, ; Hostile aircraft operating in an area
    emptyHostileAir1,       ; TBD (23)
    friendlyRescueExpected, ; Friendly SAR craft will be operating in the area
    friendlyCASExpected, ; Friendly CAS aircraft will be entering the area (25)
    friendlyAssetsExpected, ; Generic 'Friendly assets' will be operating here
    friendlyAssetsRefueling, ; Friendly aircraft will be refueling in the area (TANKER trigger)
    emptyFriendly1,          ; TBD (28)
    emptyFriendly2,          ; TBD (29)
    enemySupplyInterdictionBridge, ; Enemy supplies are being transported through here (30)
    enemySupplyInterdictionPort, ; Enemy supplies are being transported through here
    enemySupplyInterdictionDepot, ; Enemy supplies are being stored here
    enemySupplyInterdictionZone, ; Enemy supplies are being moved through here
    emptySupply1,                ; TBD (34)
    enemyProductionSource,      ; This is producing enemy war materials
    enemyFuelSource,            ; This is producing or storing fuel.
    enemyEnergySource,     ; This is a source of enemy electrical power
    enemyCommand,          ; This is being used as an enemy CCC module
    enemyAirDefense, ; Enemy air defenses are blocking friendly missions
    enemyAirPowerAirbase, ; This is being used to promote enemy air power (40)
    enemyAirPowerRadar, ; This is being used to promote enemy air power
    emptyObj1,          ; TBD (42)
    emptyObj2,          ; TBD (43)
    friendlyAWACSNeeded,             ; We need an awacs (AWACS trigger)
    friendlySuppliesIncomingAir, ; We've got friendly supplies coming in by air
    friendlySuppliesIncomingNaval,         ; Same by naval
    friendlySuppliesIncomingGround,        ; Same by ground
    friendlySuppliesIncomingRail,          ; Same by rail
    targetReconNeeded,      ; Need recon of this objective
    emptyx,                 ; TBD (50)
    emptyy,                 ; TBD (51)
    AirActionPrepAD,       ; OCA vs Air Defenses part of any air action
    AirActionPrepAB,    ; OCA vs Air Bases;Radar part of non-OCA action
    AirActionPrepAir,   ; Sweep;Escort part of a any action
    AirActionDCA,       ; Part of a DCA action
    AirActionOCA,       ; Part of an OCA action
    AirActionInterdiction,           ; Part of an interdiction action
    AirActionAttrition,              ; Part of an attrition action
    AirActionCAS,                    ; Part of a CAS action (59)
    emptyAction1,                    ; TBD (60)
    enemyNavalForceActive,           ; Ships are operating here
    enemyNavalForceStatic,           ; Ships in port
    enemyNavalForceUnloading,       ; Transport ships unloading in port
    otherContext))

(with-file "teamdata.cpp"
  ;; COLORREF TeamColorList[NUM_TEAM_COLORS] =
  (def TeamColorList
    ["CAMP_TEAM_WHITE"
     "CAMP_TEAM_GREEN"
     "CAMP_TEAM_BLUE"
     "CAMP_TEAM_BROWN"
     "CAMP_TEAM_ORANGE"
     "CAMP_TEAM_YELLOW"
     "CAMP_TEAM_RED"
     "CAMP_TEAM_GREY"])

  (defenum FlagImageIds ;; Flag Image IDs
    OOB_FLAGS_USA = 52000,
    OOB_FLAGS_NKOREA = 52001,
    OOB_FLAGS_CHINA = 52002,
    OOB_FLAGS_CIS = 52003,
    OOB_FLAGS_SKOREA = 52004,
    OOB_FLAGS_JAPAN = 52005,
    OOB_FLAGS_USA_DRK = 52006,
    OOB_FLAGS_NKOREA_DRK = 52007,
    OOB_FLAGS_CHINA_DRK = 52008,
    OOB_FLAGS_CIS_DRK = 52009,
    OOB_FLAGS_SKOREA_DRK = 52010,
    OOB_FLAGS_JAPAN_DRK = 52011,

    SMFLGS_USA = 52012,
    SMFLGS_SKOREA = 52013,
    SMFLGS_JAPAN = 52014,
    SMFLGS_CIS = 52015,
    SMFLGS_CHINA = 52016,
    SMFLGS_NKOREA = 52017,
    SMFLGS_GERMAN = 52018,
    SMFLGS_FRANCE = 52019,
    OOB_FLAGS_SWISS = 52020,
    OOB_FLAGS_SWISS_HRZ = 52021,
    OOB_FLAGS_BELGIUM_HRZ = 52022,
    OOB_FLAGS_BELGIUM = 52023,
    OOB_FLAGS_BELGIUM_DRK = 52024,
    OOB_FLAGS_BAHRAIN_HRZ = 52025,
    OOB_FLAGS_BAHRAIN_DRK = 52026,
    OOB_FLAGS_BRAZIL_HRZ = 52027,
    OOB_FLAGS_BRAZIL = 52028,
    OOB_FLAGS_BRAZIL_DRK = 52029,
    SMFLGS_SWISS = 52030,
    SMFLGS_BAHRAIN = 52031,
    OOB_FLAGS_GERMAN = 52032,
    SMFLGS_BELGIUM = 52033,
    SMFLGS_BRAZIL = 52034,
    OOB_FLAGS_SWISS_DRK = 52035,
    OOB_FLAGS_BAHRAIN = 52036,
    OOB_FLAGS_GERMAN_DRK = 52037,
    OOB_FLAGS_GERMAN_HRZ = 52038,
    OOB_FLAGS_FRANCE_DRK = 52039,
    OOB_FLAGS_FRANCE_HRZ = 52040,
    OOB_FLAGS_FRANCE         = 52041,
    OOB_FLAGS_USA_HRZ = 52046,
    OOB_FLAGS_NKOREA_HRZ = 52047,
    OOB_FLAGS_CHINA_HRZ = 52048,
    OOB_FLAGS_CIS_HRZ = 52049,
    OOB_FLAGS_SKOREA_HRZ = 52050,
    OOB_FLAGS_JAPAN_HRZ = 52051,
    );

;;   long FlagImageID[TOTAL_FLAGS][MAX_FLAG_TYPES] =
;; {
;;     // { BIG_VERT_DARK, BIG_VERT, BIG_HORIZ, SMALL_HORIZ },

;;     { 0, OOB_FLAGS_SWISS_DRK, OOB_FLAGS_SWISS, OOB_FLAGS_SWISS_HRZ, SMFLGS_SWISS }, // 6
;;     { 0, OOB_FLAGS_USA_DRK, OOB_FLAGS_USA, OOB_FLAGS_USA_HRZ, SMFLGS_USA }, // 0
;;     { 0, OOB_FLAGS_SKOREA_DRK, OOB_FLAGS_SKOREA, OOB_FLAGS_SKOREA_HRZ, SMFLGS_SKOREA }, // 1
;;     { 0, OOB_FLAGS_JAPAN_DRK, OOB_FLAGS_JAPAN, OOB_FLAGS_JAPAN_HRZ, SMFLGS_JAPAN }, // 11
;;     { 0, OOB_FLAGS_CIS_DRK, OOB_FLAGS_CIS, OOB_FLAGS_CIS_HRZ, SMFLGS_CIS }, // 8
;;     { 0, OOB_FLAGS_CHINA_DRK, OOB_FLAGS_CHINA, OOB_FLAGS_CHINA_HRZ, SMFLGS_CHINA }, // 3
;;     { 0, OOB_FLAGS_NKOREA_DRK, OOB_FLAGS_NKOREA, OOB_FLAGS_NKOREA_HRZ, SMFLGS_NKOREA }, // 2
;;     { 0, OOB_FLAGS_GERMAN_DRK, OOB_FLAGS_GERMAN, OOB_FLAGS_GERMAN_HRZ, SMFLGS_GERMAN }, // 4
;;     // These flags are no longer used because we have no team adjectives to match them
;;     /* { 0, OOB_FLAGS_FRANCE_DRK, OOB_FLAGS_FRANCE, OOB_FLAGS_FRANCE_HRZ, SMFLGS_FRANCE }, // 5
;;      { 0, OOB_FLAGS_BELGIUM_DRK,OOB_FLAGS_BELGIUM, OOB_FLAGS_BELGIUM_HRZ, SMFLGS_BELGIUM }, // 7
;;      { 0, OOB_FLAGS_BRAZIL_DRK, OOB_FLAGS_BRAZIL, OOB_FLAGS_BRAZIL_HRZ, SMFLGS_BRAZIL }, // 10
;;      { 0, OOB_FLAGS_BAHRAIN_DRK,OOB_FLAGS_BAHRAIN, OOB_FLAGS_BAHRAIN_HRZ, SMFLGS_BAHRAIN }, // 9
;;     */
;; };

  (def FlagImageID
    [{:big-vert-dark OOB_FLAGS_SWISS_DRK
      :big-vert      OOB_FLAGS_SWISS
      :big-horiz     OOB_FLAGS_SWISS_HRZ
      :small-horiz   SMFLGS_SWISS}
     {:big-vert-dark OOB_FLAGS_USA_DRK
      :big-vert      OOB_FLAGS_USA
      :big-horiz     OOB_FLAGS_USA_HRZ
      :small-horiz   SMFLGS_USA}
     {:big-vert-dark OOB_FLAGS_SKOREA_DRK
      :big-vert      OOB_FLAGS_SKOREA
      :big-horiz     OOB_FLAGS_SKOREA_HRZ
      :small-horiz   SMFLGS_SKOREA}
     {:big-vert-dark OOB_FLAGS_JAPAN_DRK
      :big-vert      OOB_FLAGS_JAPAN
      :big-horiz     OOB_FLAGS_JAPAN_HRZ
      :small-horiz   SMFLGS_JAPAN}
     {:big-vert-dark OOB_FLAGS_CIS_DRK
      :big-vert      OOB_FLAGS_CIS
      :big-horiz     OOB_FLAGS_CIS_HRZ
      :small-horiz   SMFLGS_CIS}
     {:big-vert-dark OOB_FLAGS_CHINA_DRK
      :big-vert      OOB_FLAGS_CHINA
      :big-horiz     OOB_FLAGS_CHINA_HRZ
      :small-horiz   SMFLGS_CHINA}
     {:big-vert-dark OOB_FLAGS_NKOREA_DRK
      :big-vert      OOB_FLAGS_NKOREA
      :big-horiz     OOB_FLAGS_NKOREA_HRZ
      :small-horiz   SMFLGS_NKOREA}
     {:big-vert-dark OOB_FLAGS_GERMAN_DRK
      :big-vert      OOB_FLAGS_GERMAN
      :big-horiz     OOB_FLAGS_GERMAN_HRZ
      :small-horiz   SMFLGS_GERMAN}])


  ;; Map Icons
  (defenum MapIcons
    BLUE_TEAM_ICONS = 565120000,
    BLUE_TEAM_ICONS_W = 565120001,
    BROWN_TEAM_ICONS = 565120002,
    BROWN_TEAM_ICONS_W = 565120003,
    GREEN_TEAM_ICONS = 565120004,
    GREEN_TEAM_ICONS_W = 565120005,
    GREY_TEAM_ICONS = 565120006,
    GREY_TEAM_ICONS_W = 565120007,
    ORANGE_TEAM_ICONS = 565120008,
    ORANGE_TEAM_ICONS_W = 565120009,
    RED_TEAM_ICONS = 565120010,
    RED_TEAM_ICONS_W = 565120011,
    WHITE_TEAM_ICONS = 565120012,
    WHITE_TEAM_ICONS_W = 565120013,
    YELLOW_TEAM_ICONS = 565120014,
    YELLOW_TEAM_ICONS_W = 565120015,
    BLUE_AIR_EAST = 565121000,
    BLUE_AIR_EAST_W = 565121001,
    BLUE_AIR_NE = 565121002,
    BLUE_AIR_NE_W = 565121003,
    BLUE_AIR_NORTH = 565121004,
    BLUE_AIR_NORTH_W = 565121005,
    BLUE_AIR_NW = 565121006,
    BLUE_AIR_NW_W = 565121007,
    BLUE_AIR_SE = 565121008,
    BLUE_AIR_SE_W = 565121009,
    BLUE_AIR_SOUTH = 565121010,
    BLUE_AIR_SOUTH_W = 565121011,
    BLUE_AIR_SW = 565121012,
    BLUE_AIR_SW_W = 565121013,
    BLUE_AIR_WEST = 565121014,
    BLUE_AIR_WEST_W = 565121015,
    BROWN_AIR_EAST = 565121016,
    BROWN_AIR_EAST_W = 565121017,
    BROWN_AIR_NE = 565121018,
    BROWN_AIR_NE_W = 565121019,
    BROWN_AIR_NORTH = 565121020,
    BROWN_AIR_NORTH_W = 565121021,
    BROWN_AIR_NW = 565121022,
    BROWN_AIR_NW_W = 565121023,
    BROWN_AIR_SE = 565121024,
    BROWN_AIR_SE_W = 565121025,
    BROWN_AIR_SOUTH = 565121026,
    BROWN_AIR_SOUTH_W = 565121027,
    BROWN_AIR_SW = 565121028,
    BROWN_AIR_SW_W = 565121029,
    BROWN_AIR_WEST = 565121030,
    BROWN_AIR_WEST_W = 565121031,
    GREEN_AIR_EAST = 565121032,
    GREEN_AIR_EAST_W = 565121033,
    GREEN_AIR_NE = 565121034,
    GREEN_AIR_NE_W = 565121035,
    GREEN_AIR_NORTH = 565121036,
    GREEN_AIR_NORTH_W = 565121037,
    GREEN_AIR_NW = 565121038,
    GREEN_AIR_NW_W = 565121039,
    GREEN_AIR_SE = 565121040,
    GREEN_AIR_SE_W = 565121041,
    GREEN_AIR_SOUTH = 565121042,
    GREEN_AIR_SOUTH_W = 565121043,
    GREEN_AIR_SW = 565121044,
    GREEN_AIR_SW_W = 565121045,
    GREEN_AIR_WEST = 565121046,
    GREEN_AIR_WEST_W = 565121047,
    GREY_AIR_EAST = 565121048,
    GREY_AIR_EAST_W = 565121049,
    GREY_AIR_NE = 565121050,
    GREY_AIR_NE_W = 565121051,
    GREY_AIR_NORTH = 565121052,
    GREY_AIR_NORTH_W = 565121053,
    GREY_AIR_NW = 565121054,
    GREY_AIR_NW_W = 565121055,
    GREY_AIR_SE = 565121056,
    GREY_AIR_SE_W = 565121057,
    GREY_AIR_SOUTH = 565121058,
    GREY_AIR_SOUTH_W = 565121059,
    GREY_AIR_SW = 565121060,
    GREY_AIR_SW_W = 565121061,
    GREY_AIR_WEST = 565121062,
    GREY_AIR_WEST_W = 565121063,
    ORANGE_AIR_EAST = 565121064,
    ORANGE_AIR_EAST_W = 565121065,
    ORANGE_AIR_NE = 565121066,
    ORANGE_AIR_NE_W = 565121067,
    ORANGE_AIR_NORTH = 565121068,
    ORANGE_AIR_NORTH_W = 565121069,
    ORANGE_AIR_NW = 565121070,
    ORANGE_AIR_NW_W = 565121071,
    ORANGE_AIR_SE = 565121072,
    ORANGE_AIR_SE_W = 565121073,
    ORANGE_AIR_SOUTH = 565121074,
    ORANGE_AIR_SOUTH_W = 565121075,
    ORANGE_AIR_SW = 565121076,
    ORANGE_AIR_SW_W = 565121077,
    ORANGE_AIR_WEST = 565121078,
    ORANGE_AIR_WEST_W = 565121079,
    RED_AIR_EAST = 565121080,
    RED_AIR_EAST_W = 565121081,
    RED_AIR_NE = 565121082,
    RED_AIR_NE_W = 565121083,
    RED_AIR_NORTH = 565121084,
    RED_AIR_NORTH_W = 565121085,
    RED_AIR_NW = 565121086,
    RED_AIR_NW_W = 565121087,
    RED_AIR_SE = 565121088,
    RED_AIR_SE_W = 565121089,
    RED_AIR_SOUTH = 565121090,
    RED_AIR_SOUTH_W = 565121091,
    RED_AIR_SW = 565121092,
    RED_AIR_SW_W = 565121093,
    RED_AIR_WEST = 565121094,
    RED_AIR_WEST_W = 565121095,
    WHITE_AIR_EAST = 565121096,
    WHITE_AIR_EAST_W = 565121097,
    WHITE_AIR_NE = 565121098,
    WHITE_AIR_NE_W = 565121099,
    WHITE_AIR_NORTH = 565121100,
    WHITE_AIR_NORTH_W = 565121101,
    WHITE_AIR_NW = 565121102,
    WHITE_AIR_NW_W = 565121103,
    WHITE_AIR_SE = 565121104,
    WHITE_AIR_SE_W = 565121105,
    WHITE_AIR_SOUTH = 565121106,
    WHITE_AIR_SOUTH_W = 565121107,
    WHITE_AIR_SW = 565121108,
    WHITE_AIR_SW_W = 565121109,
    WHITE_AIR_WEST = 565121110,
    WHITE_AIR_WEST_W = 565121111,
    YELLOW_AIR_EAST = 565121112,
    YELLOW_AIR_EAST_W = 565121113,
    YELLOW_AIR_NE = 565121114,
    YELLOW_AIR_NE_W = 565121115,
    YELLOW_AIR_NORTH = 565121116,
    YELLOW_AIR_NORTH_W = 565121117,
    YELLOW_AIR_NW = 565121118,
    YELLOW_AIR_NW_W = 565121119,
    YELLOW_AIR_SE = 565121120,
    YELLOW_AIR_SE_W = 565121121,
    YELLOW_AIR_SOUTH = 565121122,
    YELLOW_AIR_SOUTH_W = 565121123,
    YELLOW_AIR_SW = 565121124,
    YELLOW_AIR_SW_W = 565121125,
    YELLOW_AIR_WEST = 565121126,
    YELLOW_AIR_WEST_W = 565121127,
    ))

(with-file "cmpradar.h"
  (def NUM_RADAR_ARCS 8)                   ; How many arcs each radar
                                        ; data will store
  (def ALT_FOR_RANGE_DETERMINATION 2500.0) ; when we return range,
                                        ; it'll be how far we can
                                        ; see something at this
                                        ; altitude
  (def MINIMUM_RADAR_RATIO 0.022) ; Minimum ratio (about 1 deg angle)
  )

(with-file "ptdata.h"
  (defenum PointTypes
    NoPt = 0,
    RunwayPt,
    TakeoffPt,
    TaxiPt,
    SAMPt,
    ArtilleryPt,
    AAAPt,
    RadarPt,
    RunwayDimPt,
    SupportPt,
    StaticRadarPt,
    SmallParkPt,
    LargeParkPt,
    SmallDockPt,
    LargeDockPt,
    TakeRunwayPt,
    HelicopterPt,
    FollowMePt,
    TrackPt,
    CritTaxiPt))

(with-file "campwp.h"
  ;; Waypoint actions
  (def WP_NOTHING 0)
  (def WP_TAKEOFF 1)
  (def WP_ASSEMBLE 2)
  (def WP_POSTASSEMBLE 3)
  (def WP_REFUEL       4)
  (def WP_REARM        5)
  (def WP_PICKUP 6) ;; Pick up a unit
  (def WP_LAND 7)
  (def WP_TIMING 8) ;; Just cruise around wasting time
  (def WP_CASCP 9)  ;; CAS contact point

  (def WP_ESCORT 10)       ;; Engage engaging fighters
  (def WP_CA 11)           ;; Engage all enemy aircraft
  (def WP_CAP 12)          ;; Patrol area for enemy aircraft
  (def WP_INTERCEPT    13) ;; Engage specific enemy aircraft
  (def WP_GNDSTRIKE 14)    ;; Engage enemy units at target
  (def WP_NAVSTRIKE 15)    ;; Engage enemy shits at target
  (def WP_SAD 16)          ;; Engage any enemy at target
  (def WP_STRIKE 17)       ;; Destroy enemy installation at target
  (def WP_BOMB 18)   ;; Strategic bomb enemy installation at target 
  (def WP_SEAD 19)   ;; Suppress enemy air defense at target
  (def WP_ELINT 20)  ;; Electronic intellicence (AWACS, JSTAR, ECM)
  (def WP_RECON 21)  ;; Photograph target location
  (def WP_RESCUE 22) ;; Rescue a pilot at location
  (def WP_ASW 23)
  (def WP_TANKER 24) ;; Respond to tanker requests
  (def WP_AIRDROP 25)
  (def WP_JAM 26)

  ;; M.N. fix for Airlift missions
  ;;(def WP_LAND2 27 ;; this is our 2nd landing waypoint for Airlift missions
  ;; supply will be given at WP_LAND MNLOOK -> Change in string.txt 377

  (def WP_B5)
  (def WP_B6)
  (def WP_B7)
  (def WP_FAC 30)

  (def WP_MOVEOPPOSED 40) ;; These are movement wps
  (def WP_MOVEUNOPPOSED 41)
  (def WP_AIRBORNE 42)
  (def WP_AMPHIBIOUS 43)
  (def WP_DEFEND 44) ;; These are action wps
  (def WP_REPAIR 45)
  (def WP_RESERVE 46)
  (def WP_AIRDEFENSE 47)
  (def WP_FIRESUPPORT 48)
  (def WP_SECURE 49)

  (def WP_LAST 50)

  (def WPF_TARGET 0x0001)     ;; This is a target wp
  (def WPF_ASSEMBLE 0x0002) ;; Wait for other elements here
  (def WPF_BREAKPOINT 0x0004) ;; Break point
  (def WPF_IP 0x0008)         ;; IP waypoint
  (def WPF_TURNPOINT 0x0010)  ;; Turn point
  (def WPF_CP 0x0020)         ;; Contact point
  (def WPF_REPEAT 0x0040) ;; Return to previous WP until time is
                          ;; exceeded
  (def WPF_TAKEOFF 0x0080)
  (def WPF_LAND 0x0100) ;; Suck aircraft back into squadron
  (def WPF_DIVERT 0x0200) ;; This is a divert WP (deleted upon
                          ;; completion of divert)
  (def WPF_ALTERNATE 0x0400) ;; Alternate landing site

  ;; Climb profile flags
  (def WPF_HOLDCURRENT 0x0800) ;; Stay at current altitude until last minute

  ;; Other stuff
  (def WPF_REPEAT_CONTINUOUS 0x1000) ;; Do this until the end of time
  (def WPF_IN_PACKAGE 0x2000) ;; This is a package-coordinated wp

  ;; Even better "Other Stuff"
  (def WPF_TIME_LOCKED 0x4000) ;; This waypoint will have an arrive
                               ;; time as given, and will not be
                               ;; changed
  (def WPF_SPEED_LOCKED 0x8000) ;; This waypoint will have a speed as
                                ;; given, and will not be changed.
  (def WPF_REFUEL_INFORMATION  0x10000) ;; This waypoint is only an
                                        ;; informational waypoint, no
                                        ;; mission waypoint
  (def WPF_REQHELP 0x20000) ;; This divert waypoint is one from a
                            ;; request help call

  (def WPF_CRITICAL_MASK 0x07FF) ;; If it's one of these, we can't
                                 ;; skip this waypoint

  (def GRIDZ_SCALE_FACTOR 10) ;; How many feet per pt of Z.

  (def MINIMUM_ASL_ALTITUDE 5000) ;; Below this # of feet, the WP is considered AGL
  )

(with-file "team.h"
  ;; Country defines
  (defenum CountryListEnum
    COUN_NONE = 0,
    COUN_US,
    COUN_SOUTH_KOREA,
    COUN_JAPAN,
    COUN_RUSSIA,
    COUN_CHINA,
    COUN_NORTH_KOREA,
    COUN_GORN,
    NUM_COUNS,
    )

  ;; Team data defines
  (defenum TeamDataEnum
    TEAM_NEUTRAL = 0,
    TEAM_1,
    TEAM_2,
    TEAM_3,
    TEAM_4,
    TEAM_5,
    TEAM_6,
    TEAM_7,
    NUM_TEAMS,
    )

  ;; Relationship/stance type
  (defenum RelType
    NoRelations,
    Allied,
    Friendly,
    Neutral,
    Hostile,
    War)

  (defenum TeamFlagEnum
    TEAM_ACTIVE         = 0x01, ; Set if team is being used
    TEAM_HASSATS        = 0x02, ; Has satelites
    TEAM_UPDATED        = 0x04, ; We've gotten remote data for this team
    )
  )

(with-file "campstr.h"
  (def NUM_CAMERA_LABELS 16))

(with-file "ato.cpp"
  (defenum MissionCategories
    ATO_OCA = 1,
    ATO_STRIKE,
    ATO_INTERDICTION,
    ATO_SEAD,
    ATO_CAS,
    ATO_DCA,
    ATO_CCCI,
    ATO_MARITIME,
    ATO_SUPPORT,
    ATO_OTHER,
    ))


(with-file "flight.h"
  ;; planeStats values
  (def AIRCRAFT_NOT_ASSIGNED 0)
  (def AIRCRAFT_MISSING 1)
  (def AIRCRAFT_DEAD 2)
  (def AIRCRAFT_RTB 3)
  (def AIRCRAFT_AVAILABLE 4))

(with-file "phyconst.h"
  (def PASL 2116.22) ;; Standard pressure at sea level
  (def AASLK 661.48) ;; Speed of sound at sea level
  )
