diff --git a/python-api-src/lib_sc2_typeenums.cpp b/python-api-src/lib_sc2_typeenums.cpp index 40b993a2ef2e57bc959bf7673cf4fa26b7d4eb2c..9fd2551a7050a2534e1fd430b56d2d09b5914fa8 100644 --- a/python-api-src/lib_sc2_typeenums.cpp +++ b/python-api-src/lib_sc2_typeenums.cpp @@ -7,217 +7,1997 @@ namespace py = pybind11; void define_typeenums(py::module & m) { py::enum_<sc2::UNIT_TYPEID>(m, "UNIT_TYPEID") - .value("INVALID", sc2::UNIT_TYPEID::INVALID) - .value("TERRAN_ARMORY", sc2::UNIT_TYPEID::TERRAN_ARMORY) - .value("TERRAN_AUTOTURRET", sc2::UNIT_TYPEID::TERRAN_AUTOTURRET) - .value("TERRAN_BANSHEE", sc2::UNIT_TYPEID::TERRAN_BANSHEE) - .value("TERRAN_BARRACKS", sc2::UNIT_TYPEID::TERRAN_BARRACKS) - .value("TERRAN_BARRACKSFLYING", sc2::UNIT_TYPEID::TERRAN_BARRACKSFLYING) - .value("TERRAN_BARRACKSREACTOR", sc2::UNIT_TYPEID::TERRAN_BARRACKSREACTOR) - .value("TERRAN_BARRACKSTECHLAB", sc2::UNIT_TYPEID::TERRAN_BARRACKSTECHLAB) - .value("TERRAN_BATTLECRUISER", sc2::UNIT_TYPEID::TERRAN_BATTLECRUISER) - .value("TERRAN_BUNKER", sc2::UNIT_TYPEID::TERRAN_BUNKER) - .value("TERRAN_COMMANDCENTER", sc2::UNIT_TYPEID::TERRAN_COMMANDCENTER) - .value("TERRAN_COMMANDCENTERFLYING", sc2::UNIT_TYPEID::TERRAN_COMMANDCENTERFLYING) - .value("TERRAN_CYCLONE", sc2::UNIT_TYPEID::TERRAN_CYCLONE) - .value("TERRAN_ENGINEERINGBAY", sc2::UNIT_TYPEID::TERRAN_ENGINEERINGBAY) - .value("TERRAN_FACTORY", sc2::UNIT_TYPEID::TERRAN_FACTORY) - .value("TERRAN_FACTORYFLYING", sc2::UNIT_TYPEID::TERRAN_FACTORYFLYING) - .value("TERRAN_FACTORYREACTOR", sc2::UNIT_TYPEID::TERRAN_FACTORYREACTOR) - .value("TERRAN_FACTORYTECHLAB", sc2::UNIT_TYPEID::TERRAN_FACTORYTECHLAB) - .value("TERRAN_FUSIONCORE", sc2::UNIT_TYPEID::TERRAN_FUSIONCORE) - .value("TERRAN_GHOST", sc2::UNIT_TYPEID::TERRAN_GHOST) - .value("TERRAN_GHOSTACADEMY", sc2::UNIT_TYPEID::TERRAN_GHOSTACADEMY) - .value("TERRAN_HELLION", sc2::UNIT_TYPEID::TERRAN_HELLION) - .value("TERRAN_HELLIONTANK", sc2::UNIT_TYPEID::TERRAN_HELLIONTANK) - .value("TERRAN_LIBERATOR", sc2::UNIT_TYPEID::TERRAN_LIBERATOR) - .value("TERRAN_LIBERATORAG", sc2::UNIT_TYPEID::TERRAN_LIBERATORAG) - .value("TERRAN_MARAUDER", sc2::UNIT_TYPEID::TERRAN_MARAUDER) - .value("TERRAN_MARINE", sc2::UNIT_TYPEID::TERRAN_MARINE) - .value("TERRAN_MEDIVAC", sc2::UNIT_TYPEID::TERRAN_MEDIVAC) - .value("TERRAN_MISSILETURRET", sc2::UNIT_TYPEID::TERRAN_MISSILETURRET) - .value("TERRAN_MULE", sc2::UNIT_TYPEID::TERRAN_MULE) - .value("TERRAN_ORBITALCOMMAND", sc2::UNIT_TYPEID::TERRAN_ORBITALCOMMAND) - .value("TERRAN_ORBITALCOMMANDFLYING", sc2::UNIT_TYPEID::TERRAN_ORBITALCOMMANDFLYING) - .value("TERRAN_PLANETARYFORTRESS", sc2::UNIT_TYPEID::TERRAN_PLANETARYFORTRESS) - .value("TERRAN_RAVEN", sc2::UNIT_TYPEID::TERRAN_RAVEN) - .value("TERRAN_REAPER", sc2::UNIT_TYPEID::TERRAN_REAPER) - .value("TERRAN_REFINERY", sc2::UNIT_TYPEID::TERRAN_REFINERY) - .value("TERRAN_SCV", sc2::UNIT_TYPEID::TERRAN_SCV) - .value("TERRAN_SENSORTOWER", sc2::UNIT_TYPEID::TERRAN_SENSORTOWER) - .value("TERRAN_SIEGETANK", sc2::UNIT_TYPEID::TERRAN_SIEGETANK) - .value("TERRAN_SIEGETANKSIEGED", sc2::UNIT_TYPEID::TERRAN_SIEGETANKSIEGED) - .value("TERRAN_STARPORT", sc2::UNIT_TYPEID::TERRAN_STARPORT) - .value("TERRAN_STARPORTFLYING", sc2::UNIT_TYPEID::TERRAN_STARPORTFLYING) - .value("TERRAN_STARPORTREACTOR", sc2::UNIT_TYPEID::TERRAN_STARPORTREACTOR) - .value("TERRAN_STARPORTTECHLAB", sc2::UNIT_TYPEID::TERRAN_STARPORTTECHLAB) - .value("TERRAN_SUPPLYDEPOT", sc2::UNIT_TYPEID::TERRAN_SUPPLYDEPOT) - .value("TERRAN_SUPPLYDEPOTLOWERED", sc2::UNIT_TYPEID::TERRAN_SUPPLYDEPOTLOWERED) - .value("TERRAN_THOR", sc2::UNIT_TYPEID::TERRAN_THOR) - .value("TERRAN_THORAP", sc2::UNIT_TYPEID::TERRAN_THORAP) - .value("TERRAN_VIKINGASSAULT", sc2::UNIT_TYPEID::TERRAN_VIKINGASSAULT) - .value("TERRAN_VIKINGFIGHTER", sc2::UNIT_TYPEID::TERRAN_VIKINGFIGHTER) - .value("TERRAN_WIDOWMINE", sc2::UNIT_TYPEID::TERRAN_WIDOWMINE) - .value("TERRAN_WIDOWMINEBURROWED", sc2::UNIT_TYPEID::TERRAN_WIDOWMINEBURROWED) - .value("TERRAN_KD8CHARGE", sc2::UNIT_TYPEID::TERRAN_KD8CHARGE) - .value("TERRAN_NUKE", sc2::UNIT_TYPEID::TERRAN_NUKE) - .value("TERRAN_POINTDEFENSEDRONE", sc2::UNIT_TYPEID::TERRAN_POINTDEFENSEDRONE) - .value("TERRAN_REACTOR", sc2::UNIT_TYPEID::TERRAN_REACTOR) - .value("TERRAN_TECHLAB", sc2::UNIT_TYPEID::TERRAN_TECHLAB) - .value("ZERG_BANELING", sc2::UNIT_TYPEID::ZERG_BANELING) - .value("ZERG_BANELINGBURROWED", sc2::UNIT_TYPEID::ZERG_BANELINGBURROWED) - .value("ZERG_BANELINGCOCOON", sc2::UNIT_TYPEID::ZERG_BANELINGCOCOON) - .value("ZERG_BANELINGNEST", sc2::UNIT_TYPEID::ZERG_BANELINGNEST) - .value("ZERG_BROODLING", sc2::UNIT_TYPEID::ZERG_BROODLING) - .value("ZERG_BROODLORD", sc2::UNIT_TYPEID::ZERG_BROODLORD) - .value("ZERG_BROODLORDCOCOON", sc2::UNIT_TYPEID::ZERG_BROODLORDCOCOON) - .value("ZERG_CHANGELING", sc2::UNIT_TYPEID::ZERG_CHANGELING) - .value("ZERG_CHANGELINGMARINE", sc2::UNIT_TYPEID::ZERG_CHANGELINGMARINE) - .value("ZERG_CHANGELINGMARINESHIELD", sc2::UNIT_TYPEID::ZERG_CHANGELINGMARINESHIELD) - .value("ZERG_CHANGELINGZEALOT", sc2::UNIT_TYPEID::ZERG_CHANGELINGZEALOT) - .value("ZERG_CHANGELINGZERGLING", sc2::UNIT_TYPEID::ZERG_CHANGELINGZERGLING) - .value("ZERG_CHANGELINGZERGLINGWINGS", sc2::UNIT_TYPEID::ZERG_CHANGELINGZERGLINGWINGS) - .value("ZERG_CORRUPTOR", sc2::UNIT_TYPEID::ZERG_CORRUPTOR) - .value("ZERG_CREEPTUMOR", sc2::UNIT_TYPEID::ZERG_CREEPTUMOR) - .value("ZERG_CREEPTUMORBURROWED", sc2::UNIT_TYPEID::ZERG_CREEPTUMORBURROWED) - .value("ZERG_CREEPTUMORQUEEN", sc2::UNIT_TYPEID::ZERG_CREEPTUMORQUEEN) - .value("ZERG_DRONE", sc2::UNIT_TYPEID::ZERG_DRONE) - .value("ZERG_DRONEBURROWED", sc2::UNIT_TYPEID::ZERG_DRONEBURROWED) - .value("ZERG_EGG", sc2::UNIT_TYPEID::ZERG_EGG) - .value("ZERG_EVOLUTIONCHAMBER", sc2::UNIT_TYPEID::ZERG_EVOLUTIONCHAMBER) - .value("ZERG_EXTRACTOR", sc2::UNIT_TYPEID::ZERG_EXTRACTOR) - .value("ZERG_GREATERSPIRE", sc2::UNIT_TYPEID::ZERG_GREATERSPIRE) - .value("ZERG_HATCHERY", sc2::UNIT_TYPEID::ZERG_HATCHERY) - .value("ZERG_HIVE", sc2::UNIT_TYPEID::ZERG_HIVE) - .value("ZERG_HYDRALISK", sc2::UNIT_TYPEID::ZERG_HYDRALISK) - .value("ZERG_HYDRALISKBURROWED", sc2::UNIT_TYPEID::ZERG_HYDRALISKBURROWED) - .value("ZERG_HYDRALISKDEN", sc2::UNIT_TYPEID::ZERG_HYDRALISKDEN) - .value("ZERG_INFESTATIONPIT", sc2::UNIT_TYPEID::ZERG_INFESTATIONPIT) - .value("ZERG_INFESTEDTERRANSEGG", sc2::UNIT_TYPEID::ZERG_INFESTEDTERRANSEGG) - .value("ZERG_INFESTOR", sc2::UNIT_TYPEID::ZERG_INFESTOR) - .value("ZERG_INFESTORBURROWED", sc2::UNIT_TYPEID::ZERG_INFESTORBURROWED) - .value("ZERG_INFESTORTERRAN", sc2::UNIT_TYPEID::ZERG_INFESTORTERRAN) - .value("ZERG_LAIR", sc2::UNIT_TYPEID::ZERG_LAIR) - .value("ZERG_LARVA", sc2::UNIT_TYPEID::ZERG_LARVA) - .value("ZERG_LOCUSTMP", sc2::UNIT_TYPEID::ZERG_LOCUSTMP) - .value("ZERG_LOCUSTMPFLYING", sc2::UNIT_TYPEID::ZERG_LOCUSTMPFLYING) - .value("ZERG_LURKERDENMP", sc2::UNIT_TYPEID::ZERG_LURKERDENMP) - .value("ZERG_LURKERMP", sc2::UNIT_TYPEID::ZERG_LURKERMP) - .value("ZERG_LURKERMPBURROWED", sc2::UNIT_TYPEID::ZERG_LURKERMPBURROWED) - .value("ZERG_LURKERMPEGG", sc2::UNIT_TYPEID::ZERG_LURKERMPEGG) - .value("ZERG_MUTALISK", sc2::UNIT_TYPEID::ZERG_MUTALISK) - .value("ZERG_NYDUSCANAL", sc2::UNIT_TYPEID::ZERG_NYDUSCANAL) - .value("ZERG_NYDUSNETWORK", sc2::UNIT_TYPEID::ZERG_NYDUSNETWORK) - .value("ZERG_OVERLORD", sc2::UNIT_TYPEID::ZERG_OVERLORD) - .value("ZERG_OVERLORDCOCOON", sc2::UNIT_TYPEID::ZERG_OVERLORDCOCOON) - .value("ZERG_OVERLORDTRANSPORT", sc2::UNIT_TYPEID::ZERG_OVERLORDTRANSPORT) - .value("ZERG_OVERSEER", sc2::UNIT_TYPEID::ZERG_OVERSEER) - .value("ZERG_QUEEN", sc2::UNIT_TYPEID::ZERG_QUEEN) - .value("ZERG_QUEENBURROWED", sc2::UNIT_TYPEID::ZERG_QUEENBURROWED) - .value("ZERG_RAVAGER", sc2::UNIT_TYPEID::ZERG_RAVAGER) - .value("ZERG_RAVAGERCOCOON", sc2::UNIT_TYPEID::ZERG_RAVAGERCOCOON) - .value("ZERG_ROACH", sc2::UNIT_TYPEID::ZERG_ROACH) - .value("ZERG_ROACHBURROWED", sc2::UNIT_TYPEID::ZERG_ROACHBURROWED) - .value("ZERG_ROACHWARREN", sc2::UNIT_TYPEID::ZERG_ROACHWARREN) - .value("ZERG_SPAWNINGPOOL", sc2::UNIT_TYPEID::ZERG_SPAWNINGPOOL) - .value("ZERG_SPINECRAWLER", sc2::UNIT_TYPEID::ZERG_SPINECRAWLER) - .value("ZERG_SPINECRAWLERUPROOTED", sc2::UNIT_TYPEID::ZERG_SPINECRAWLERUPROOTED) - .value("ZERG_SPIRE", sc2::UNIT_TYPEID::ZERG_SPIRE) - .value("ZERG_SPORECRAWLER", sc2::UNIT_TYPEID::ZERG_SPORECRAWLER) - .value("ZERG_SPORECRAWLERUPROOTED", sc2::UNIT_TYPEID::ZERG_SPORECRAWLERUPROOTED) - .value("ZERG_SWARMHOSTBURROWEDMP", sc2::UNIT_TYPEID::ZERG_SWARMHOSTBURROWEDMP) - .value("ZERG_SWARMHOSTMP", sc2::UNIT_TYPEID::ZERG_SWARMHOSTMP) - .value("ZERG_TRANSPORTOVERLORDCOCOON", sc2::UNIT_TYPEID::ZERG_TRANSPORTOVERLORDCOCOON) - .value("ZERG_ULTRALISK", sc2::UNIT_TYPEID::ZERG_ULTRALISK) - .value("ZERG_ULTRALISKCAVERN", sc2::UNIT_TYPEID::ZERG_ULTRALISKCAVERN) - .value("ZERG_VIPER", sc2::UNIT_TYPEID::ZERG_VIPER) - .value("ZERG_ZERGLING", sc2::UNIT_TYPEID::ZERG_ZERGLING) - .value("ZERG_ZERGLINGBURROWED", sc2::UNIT_TYPEID::ZERG_ZERGLINGBURROWED) - .value("ZERG_PARASITICBOMBDUMMY", sc2::UNIT_TYPEID::ZERG_PARASITICBOMBDUMMY) - .value("PROTOSS_ADEPT", sc2::UNIT_TYPEID::PROTOSS_ADEPT) - .value("PROTOSS_ADEPTPHASESHIFT", sc2::UNIT_TYPEID::PROTOSS_ADEPTPHASESHIFT) - .value("PROTOSS_ARCHON", sc2::UNIT_TYPEID::PROTOSS_ARCHON) - .value("PROTOSS_ASSIMILATOR", sc2::UNIT_TYPEID::PROTOSS_ASSIMILATOR) - .value("PROTOSS_CARRIER", sc2::UNIT_TYPEID::PROTOSS_CARRIER) - .value("PROTOSS_COLOSSUS", sc2::UNIT_TYPEID::PROTOSS_COLOSSUS) - .value("PROTOSS_CYBERNETICSCORE", sc2::UNIT_TYPEID::PROTOSS_CYBERNETICSCORE) - .value("PROTOSS_DARKSHRINE", sc2::UNIT_TYPEID::PROTOSS_DARKSHRINE) - .value("PROTOSS_DARKTEMPLAR", sc2::UNIT_TYPEID::PROTOSS_DARKTEMPLAR) - .value("PROTOSS_DISRUPTOR", sc2::UNIT_TYPEID::PROTOSS_DISRUPTOR) - .value("PROTOSS_DISRUPTORPHASED", sc2::UNIT_TYPEID::PROTOSS_DISRUPTORPHASED) - .value("PROTOSS_FLEETBEACON", sc2::UNIT_TYPEID::PROTOSS_FLEETBEACON) - .value("PROTOSS_FORGE", sc2::UNIT_TYPEID::PROTOSS_FORGE) - .value("PROTOSS_GATEWAY", sc2::UNIT_TYPEID::PROTOSS_GATEWAY) - .value("PROTOSS_HIGHTEMPLAR", sc2::UNIT_TYPEID::PROTOSS_HIGHTEMPLAR) - .value("PROTOSS_IMMORTAL", sc2::UNIT_TYPEID::PROTOSS_IMMORTAL) - .value("PROTOSS_INTERCEPTOR", sc2::UNIT_TYPEID::PROTOSS_INTERCEPTOR) - .value("PROTOSS_MOTHERSHIP", sc2::UNIT_TYPEID::PROTOSS_MOTHERSHIP) - .value("PROTOSS_MOTHERSHIPCORE", sc2::UNIT_TYPEID::PROTOSS_MOTHERSHIPCORE) - .value("PROTOSS_NEXUS", sc2::UNIT_TYPEID::PROTOSS_NEXUS) - .value("PROTOSS_OBSERVER", sc2::UNIT_TYPEID::PROTOSS_OBSERVER) - .value("PROTOSS_ORACLE", sc2::UNIT_TYPEID::PROTOSS_ORACLE) - .value("PROTOSS_ORACLESTASISTRAP", sc2::UNIT_TYPEID::PROTOSS_ORACLESTASISTRAP) - .value("PROTOSS_PHOENIX", sc2::UNIT_TYPEID::PROTOSS_PHOENIX) - .value("PROTOSS_PHOTONCANNON", sc2::UNIT_TYPEID::PROTOSS_PHOTONCANNON) - .value("PROTOSS_PROBE", sc2::UNIT_TYPEID::PROTOSS_PROBE) - .value("PROTOSS_PYLON", sc2::UNIT_TYPEID::PROTOSS_PYLON) - .value("PROTOSS_PYLONOVERCHARGED", sc2::UNIT_TYPEID::PROTOSS_PYLONOVERCHARGED) - .value("PROTOSS_ROBOTICSBAY", sc2::UNIT_TYPEID::PROTOSS_ROBOTICSBAY) - .value("PROTOSS_ROBOTICSFACILITY", sc2::UNIT_TYPEID::PROTOSS_ROBOTICSFACILITY) - .value("PROTOSS_SENTRY", sc2::UNIT_TYPEID::PROTOSS_SENTRY) - .value("PROTOSS_SHIELDBATTERY", sc2::UNIT_TYPEID::PROTOSS_SHIELDBATTERY) - .value("PROTOSS_STALKER", sc2::UNIT_TYPEID::PROTOSS_STALKER) - .value("PROTOSS_STARGATE", sc2::UNIT_TYPEID::PROTOSS_STARGATE) - .value("PROTOSS_TEMPEST", sc2::UNIT_TYPEID::PROTOSS_TEMPEST) - .value("PROTOSS_TEMPLARARCHIVE", sc2::UNIT_TYPEID::PROTOSS_TEMPLARARCHIVE) - .value("PROTOSS_TWILIGHTCOUNCIL", sc2::UNIT_TYPEID::PROTOSS_TWILIGHTCOUNCIL) - .value("PROTOSS_VOIDRAY", sc2::UNIT_TYPEID::PROTOSS_VOIDRAY) - .value("PROTOSS_WARPGATE", sc2::UNIT_TYPEID::PROTOSS_WARPGATE) - .value("PROTOSS_WARPPRISM", sc2::UNIT_TYPEID::PROTOSS_WARPPRISM) - .value("PROTOSS_WARPPRISMPHASING", sc2::UNIT_TYPEID::PROTOSS_WARPPRISMPHASING) - .value("PROTOSS_ZEALOT", sc2::UNIT_TYPEID::PROTOSS_ZEALOT) - .value("NEUTRAL_BATTLESTATIONMINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_BATTLESTATIONMINERALFIELD) - .value("NEUTRAL_BATTLESTATIONMINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_BATTLESTATIONMINERALFIELD750) - .value("NEUTRAL_COLLAPSIBLEROCKTOWERDEBRIS", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLEROCKTOWERDEBRIS) - .value("NEUTRAL_COLLAPSIBLEROCKTOWERDIAGONAL", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLEROCKTOWERDIAGONAL) - .value("NEUTRAL_COLLAPSIBLEROCKTOWERPUSHUNIT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLEROCKTOWERPUSHUNIT) - .value("NEUTRAL_COLLAPSIBLETERRANTOWERDEBRIS", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERDEBRIS) - .value("NEUTRAL_COLLAPSIBLETERRANTOWERDIAGONAL", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERDIAGONAL) - .value("NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNIT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNIT) - .value("NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNITRAMPLEFT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNITRAMPLEFT) - .value("NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNITRAMPRIGHT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNITRAMPRIGHT) - .value("NEUTRAL_COLLAPSIBLETERRANTOWERRAMPLEFT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERRAMPLEFT) - .value("NEUTRAL_COLLAPSIBLETERRANTOWERRAMPRIGHT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERRAMPRIGHT) - .value("NEUTRAL_DEBRISRAMPLEFT", sc2::UNIT_TYPEID::NEUTRAL_DEBRISRAMPLEFT) - .value("NEUTRAL_DEBRISRAMPRIGHT", sc2::UNIT_TYPEID::NEUTRAL_DEBRISRAMPRIGHT) - .value("NEUTRAL_DESTRUCTIBLEDEBRIS6X6", sc2::UNIT_TYPEID::NEUTRAL_DESTRUCTIBLEDEBRIS6X6) - .value("NEUTRAL_DESTRUCTIBLEDEBRISRAMPDIAGONALHUGEBLUR", sc2::UNIT_TYPEID::NEUTRAL_DESTRUCTIBLEDEBRISRAMPDIAGONALHUGEBLUR) - .value("NEUTRAL_DESTRUCTIBLEDEBRISRAMPDIAGONALHUGEULBR", sc2::UNIT_TYPEID::NEUTRAL_DESTRUCTIBLEDEBRISRAMPDIAGONALHUGEULBR) - .value("NEUTRAL_DESTRUCTIBLEROCK6X6", sc2::UNIT_TYPEID::NEUTRAL_DESTRUCTIBLEROCK6X6) - .value("NEUTRAL_DESTRUCTIBLEROCKEX1DIAGONALHUGEBLUR", sc2::UNIT_TYPEID::NEUTRAL_DESTRUCTIBLEROCKEX1DIAGONALHUGEBLUR) - .value("NEUTRAL_FORCEFIELD", sc2::UNIT_TYPEID::NEUTRAL_FORCEFIELD) - .value("NEUTRAL_KARAKFEMALE", sc2::UNIT_TYPEID::NEUTRAL_KARAKFEMALE) - .value("NEUTRAL_LABMINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_LABMINERALFIELD) - .value("NEUTRAL_LABMINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_LABMINERALFIELD750) - .value("NEUTRAL_MINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_MINERALFIELD) - .value("NEUTRAL_MINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_MINERALFIELD750) - .value("NEUTRAL_PROTOSSVESPENEGEYSER", sc2::UNIT_TYPEID::NEUTRAL_PROTOSSVESPENEGEYSER) - .value("NEUTRAL_PURIFIERMINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_PURIFIERMINERALFIELD) - .value("NEUTRAL_PURIFIERMINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_PURIFIERMINERALFIELD750) - .value("NEUTRAL_PURIFIERRICHMINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_PURIFIERRICHMINERALFIELD) - .value("NEUTRAL_PURIFIERRICHMINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_PURIFIERRICHMINERALFIELD750) - .value("NEUTRAL_PURIFIERVESPENEGEYSER", sc2::UNIT_TYPEID::NEUTRAL_PURIFIERVESPENEGEYSER) - .value("NEUTRAL_RICHMINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_RICHMINERALFIELD) - .value("NEUTRAL_RICHMINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_RICHMINERALFIELD750) - .value("NEUTRAL_RICHVESPENEGEYSER", sc2::UNIT_TYPEID::NEUTRAL_RICHVESPENEGEYSER) - .value("NEUTRAL_SCANTIPEDE", sc2::UNIT_TYPEID::NEUTRAL_SCANTIPEDE) - .value("NEUTRAL_SHAKURASVESPENEGEYSER", sc2::UNIT_TYPEID::NEUTRAL_SHAKURASVESPENEGEYSER) - .value("NEUTRAL_SPACEPLATFORMGEYSER", sc2::UNIT_TYPEID::NEUTRAL_SPACEPLATFORMGEYSER) - .value("NEUTRAL_UNBUILDABLEBRICKSDESTRUCTIBLE", sc2::UNIT_TYPEID::NEUTRAL_UNBUILDABLEBRICKSDESTRUCTIBLE) - .value("NEUTRAL_UNBUILDABLEPLATESDESTRUCTIBLE", sc2::UNIT_TYPEID::NEUTRAL_UNBUILDABLEPLATESDESTRUCTIBLE) - .value("NEUTRAL_UTILITYBOT", sc2::UNIT_TYPEID::NEUTRAL_UTILITYBOT) - .value("NEUTRAL_VESPENEGEYSER", sc2::UNIT_TYPEID::NEUTRAL_VESPENEGEYSER) - .value("NEUTRAL_XELNAGATOWER", sc2::UNIT_TYPEID::NEUTRAL_XELNAGATOWER) + .value("ABANDONEDBUILDING", sc2::UNIT_TYPEID::ABANDONEDBUILDING) + .value("ABERRATIONACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ABERRATIONACGLUESCREENDUMMY) + .value("ACCELERATIONZONEFLYINGLARGE", sc2::UNIT_TYPEID::ACCELERATIONZONEFLYINGLARGE) + .value("ACCELERATIONZONEFLYINGMEDIUM", sc2::UNIT_TYPEID::ACCELERATIONZONEFLYINGMEDIUM) + .value("ACCELERATIONZONEFLYINGSMALL", sc2::UNIT_TYPEID::ACCELERATIONZONEFLYINGSMALL) + .value("ACCELERATIONZONELARGE", sc2::UNIT_TYPEID::ACCELERATIONZONELARGE) + .value("ACCELERATIONZONEMEDIUM", sc2::UNIT_TYPEID::ACCELERATIONZONEMEDIUM) + .value("ACCELERATIONZONESMALL", sc2::UNIT_TYPEID::ACCELERATIONZONESMALL) + .value("ACIDSALIVAWEAPON", sc2::UNIT_TYPEID::ACIDSALIVAWEAPON) + .value("ACIDSPINESWEAPON", sc2::UNIT_TYPEID::ACIDSPINESWEAPON) + .value("ADEPTFENIXACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ADEPTFENIXACGLUESCREENDUMMY) + .value("ADEPTPIERCINGWEAPON", sc2::UNIT_TYPEID::ADEPTPIERCINGWEAPON) + .value("ADEPTUPGRADEWEAPON", sc2::UNIT_TYPEID::ADEPTUPGRADEWEAPON) + .value("ADEPTWEAPON", sc2::UNIT_TYPEID::ADEPTWEAPON) + .value("ADJUTANTCAPSULE", sc2::UNIT_TYPEID::ADJUTANTCAPSULE) + .value("AIURLIGHTBRIDGEABANDONEDNE10", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNE10) + .value("AIURLIGHTBRIDGEABANDONEDNE10OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNE10OUT) + .value("AIURLIGHTBRIDGEABANDONEDNE12", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNE12) + .value("AIURLIGHTBRIDGEABANDONEDNE12OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNE12OUT) + .value("AIURLIGHTBRIDGEABANDONEDNE8", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNE8) + .value("AIURLIGHTBRIDGEABANDONEDNE8OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNE8OUT) + .value("AIURLIGHTBRIDGEABANDONEDNW10", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNW10) + .value("AIURLIGHTBRIDGEABANDONEDNW10OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNW10OUT) + .value("AIURLIGHTBRIDGEABANDONEDNW12", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNW12) + .value("AIURLIGHTBRIDGEABANDONEDNW12OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNW12OUT) + .value("AIURLIGHTBRIDGEABANDONEDNW8", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNW8) + .value("AIURLIGHTBRIDGEABANDONEDNW8OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGEABANDONEDNW8OUT) + .value("AIURLIGHTBRIDGENE10", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENE10) + .value("AIURLIGHTBRIDGENE10OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENE10OUT) + .value("AIURLIGHTBRIDGENE12", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENE12) + .value("AIURLIGHTBRIDGENE12OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENE12OUT) + .value("AIURLIGHTBRIDGENE8", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENE8) + .value("AIURLIGHTBRIDGENE8OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENE8OUT) + .value("AIURLIGHTBRIDGENW10", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENW10) + .value("AIURLIGHTBRIDGENW10OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENW10OUT) + .value("AIURLIGHTBRIDGENW12", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENW12) + .value("AIURLIGHTBRIDGENW12OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENW12OUT) + .value("AIURLIGHTBRIDGENW8", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENW8) + .value("AIURLIGHTBRIDGENW8OUT", sc2::UNIT_TYPEID::AIURLIGHTBRIDGENW8OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLENE10OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLENE10OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLENE12OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLENE12OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLENE8OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLENE8OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLENW10OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLENW10OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLENW12OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLENW12OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLENW8OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLENW8OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLESE10OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLESE10OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLESE12OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLESE12OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLESE8OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLESE8OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLESW10OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLESW10OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLESW12OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLESW12OUT) + .value("AIURTEMPLEBRIDGEDESTRUCTIBLESW8OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGEDESTRUCTIBLESW8OUT) + .value("AIURTEMPLEBRIDGENE10OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGENE10OUT) + .value("AIURTEMPLEBRIDGENE12OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGENE12OUT) + .value("AIURTEMPLEBRIDGENE8OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGENE8OUT) + .value("AIURTEMPLEBRIDGENW10OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGENW10OUT) + .value("AIURTEMPLEBRIDGENW12OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGENW12OUT) + .value("AIURTEMPLEBRIDGENW8OUT", sc2::UNIT_TYPEID::AIURTEMPLEBRIDGENW8OUT) + .value("ANTEPLOTT", sc2::UNIT_TYPEID::ANTEPLOTT) + .value("ARBITERMP", sc2::UNIT_TYPEID::ARBITERMP) + .value("ARBITERMPWEAPONMISSILE", sc2::UNIT_TYPEID::ARBITERMPWEAPONMISSILE) + .value("ARCHIVE", sc2::UNIT_TYPEID::ARCHIVE) + .value("ARCHIVESEALED", sc2::UNIT_TYPEID::ARCHIVESEALED) + .value("ARCHONACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ARCHONACGLUESCREENDUMMY) + .value("ARTANIS", sc2::UNIT_TYPEID::ARTANIS) + .value("ARTIFACT", sc2::UNIT_TYPEID::ARTIFACT) + .value("ARTIFACTPIECE1", sc2::UNIT_TYPEID::ARTIFACTPIECE1) + .value("ARTIFACTPIECE2", sc2::UNIT_TYPEID::ARTIFACTPIECE2) + .value("ARTIFACTPIECE3", sc2::UNIT_TYPEID::ARTIFACTPIECE3) + .value("ARTIFACTPIECE4", sc2::UNIT_TYPEID::ARTIFACTPIECE4) + .value("ARTIFACTPIECE5", sc2::UNIT_TYPEID::ARTIFACTPIECE5) + .value("ARTIFACTVAULT", sc2::UNIT_TYPEID::ARTIFACTVAULT) + .value("ARTILLERYMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ARTILLERYMENGSKACGLUESCREENDUMMY) + .value("ARTOSILOPE", sc2::UNIT_TYPEID::ARTOSILOPE) + .value("ATALASERBATTERYLMWEAPON", sc2::UNIT_TYPEID::ATALASERBATTERYLMWEAPON) + .value("ATSLASERBATTERYLMWEAPON", sc2::UNIT_TYPEID::ATSLASERBATTERYLMWEAPON) + .value("AUTOMATEDREFINERY", sc2::UNIT_TYPEID::AUTOMATEDREFINERY) + .value("AUTOTESTATTACKER", sc2::UNIT_TYPEID::AUTOTESTATTACKER) + .value("AUTOTESTATTACKTARGETAIR", sc2::UNIT_TYPEID::AUTOTESTATTACKTARGETAIR) + .value("AUTOTESTATTACKTARGETGROUND", sc2::UNIT_TYPEID::AUTOTESTATTACKTARGETGROUND) + .value("AUTOTURRETRELEASEWEAPON", sc2::UNIT_TYPEID::AUTOTURRETRELEASEWEAPON) + .value("AVERNUSGATECONTROL", sc2::UNIT_TYPEID::AVERNUSGATECONTROL) + .value("BACKLASHROCKETSLMWEAPON", sc2::UNIT_TYPEID::BACKLASHROCKETSLMWEAPON) + .value("BALL", sc2::UNIT_TYPEID::BALL) + .value("BANELINGACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BANELINGACGLUESCREENDUMMY) + .value("BANSHEEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BANSHEEACGLUESCREENDUMMY) + .value("BARRACKSTECHREACTOR", sc2::UNIT_TYPEID::BARRACKSTECHREACTOR) + .value("BATTLECRUISERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BATTLECRUISERACGLUESCREENDUMMY) + .value("BATTLECRUISERHELIOS", sc2::UNIT_TYPEID::BATTLECRUISERHELIOS) + .value("BATTLECRUISERHELIOSALMWEAPON", sc2::UNIT_TYPEID::BATTLECRUISERHELIOSALMWEAPON) + .value("BATTLECRUISERHELIOSGLMWEAPON", sc2::UNIT_TYPEID::BATTLECRUISERHELIOSGLMWEAPON) + .value("BATTLECRUISERHELIOSMORPH", sc2::UNIT_TYPEID::BATTLECRUISERHELIOSMORPH) + .value("BATTLECRUISERLOKILMWEAPON", sc2::UNIT_TYPEID::BATTLECRUISERLOKILMWEAPON) + .value("BATTLECRUISERMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BATTLECRUISERMENGSKACGLUESCREENDUMMY) + .value("BEACONARMY", sc2::UNIT_TYPEID::BEACONARMY) + .value("BEACONATTACK", sc2::UNIT_TYPEID::BEACONATTACK) + .value("BEACONAUTO", sc2::UNIT_TYPEID::BEACONAUTO) + .value("BEACONCLAIM", sc2::UNIT_TYPEID::BEACONCLAIM) + .value("BEACONCUSTOM1", sc2::UNIT_TYPEID::BEACONCUSTOM1) + .value("BEACONCUSTOM2", sc2::UNIT_TYPEID::BEACONCUSTOM2) + .value("BEACONCUSTOM3", sc2::UNIT_TYPEID::BEACONCUSTOM3) + .value("BEACONCUSTOM4", sc2::UNIT_TYPEID::BEACONCUSTOM4) + .value("BEACONDEFEND", sc2::UNIT_TYPEID::BEACONDEFEND) + .value("BEACONDETECT", sc2::UNIT_TYPEID::BEACONDETECT) + .value("BEACONEXPAND", sc2::UNIT_TYPEID::BEACONEXPAND) + .value("BEACONHARASS", sc2::UNIT_TYPEID::BEACONHARASS) + .value("BEACONIDLE", sc2::UNIT_TYPEID::BEACONIDLE) + .value("BEACONRALLY", sc2::UNIT_TYPEID::BEACONRALLY) + .value("BEACONSCOUT", sc2::UNIT_TYPEID::BEACONSCOUT) + .value("BEACON_NOVA", sc2::UNIT_TYPEID::BEACON_NOVA) + .value("BEACON_NOVASMALL", sc2::UNIT_TYPEID::BEACON_NOVASMALL) + .value("BEACON_PROTOSS", sc2::UNIT_TYPEID::BEACON_PROTOSS) + .value("BEACON_PROTOSSSMALL", sc2::UNIT_TYPEID::BEACON_PROTOSSSMALL) + .value("BEACON_TERRAN", sc2::UNIT_TYPEID::BEACON_TERRAN) + .value("BEACON_TERRANSMALL", sc2::UNIT_TYPEID::BEACON_TERRANSMALL) + .value("BEACON_ZERG", sc2::UNIT_TYPEID::BEACON_ZERG) + .value("BEACON_ZERGSMALL", sc2::UNIT_TYPEID::BEACON_ZERGSMALL) + .value("BILELAUNCHERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BILELAUNCHERACGLUESCREENDUMMY) + .value("BIODOME", sc2::UNIT_TYPEID::BIODOME) + .value("BIODOMECOMMAND", sc2::UNIT_TYPEID::BIODOMECOMMAND) + .value("BIODOMECOMMANDFLYING", sc2::UNIT_TYPEID::BIODOMECOMMANDFLYING) + .value("BIODOMEHALFBUILT", sc2::UNIT_TYPEID::BIODOMEHALFBUILT) + .value("BIOPLASMIDDISCHARGEWEAPON", sc2::UNIT_TYPEID::BIOPLASMIDDISCHARGEWEAPON) + .value("BIOSTASISMISSILE", sc2::UNIT_TYPEID::BIOSTASISMISSILE) + .value("BLACKOPSMISSILETURRETACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BLACKOPSMISSILETURRETACGLUESCREENDUMMY) + .value("BLASTERBILLYACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BLASTERBILLYACGLUESCREENDUMMY) + .value("BLIMP", sc2::UNIT_TYPEID::BLIMP) + .value("BLIMPADS", sc2::UNIT_TYPEID::BLIMPADS) + .value("BLIMPMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BLIMPMENGSKACGLUESCREENDUMMY) + .value("BLOCKER16X16", sc2::UNIT_TYPEID::BLOCKER16X16) + .value("BLOCKER4X4", sc2::UNIT_TYPEID::BLOCKER4X4) + .value("BLOCKER6X6", sc2::UNIT_TYPEID::BLOCKER6X6) + .value("BLOCKER8X8", sc2::UNIT_TYPEID::BLOCKER8X8) + .value("BRAXISALPHADESTRUCTIBLE1X1", sc2::UNIT_TYPEID::BRAXISALPHADESTRUCTIBLE1X1) + .value("BRAXISALPHADESTRUCTIBLE2X2", sc2::UNIT_TYPEID::BRAXISALPHADESTRUCTIBLE2X2) + .value("BREACHINGCHARGE", sc2::UNIT_TYPEID::BREACHINGCHARGE) + .value("BRIDGEBLOCKER4X12", sc2::UNIT_TYPEID::BRIDGEBLOCKER4X12) + .value("BROODLINGESCORT", sc2::UNIT_TYPEID::BROODLINGESCORT) + .value("BROODLORDACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BROODLORDACGLUESCREENDUMMY) + .value("BROODLORDAWEAPON", sc2::UNIT_TYPEID::BROODLORDAWEAPON) + .value("BROODLORDBWEAPON", sc2::UNIT_TYPEID::BROODLORDBWEAPON) + .value("BROODLORDEGG", sc2::UNIT_TYPEID::BROODLORDEGG) + .value("BROODLORDEGGMISSILE", sc2::UNIT_TYPEID::BROODLORDEGGMISSILE) + .value("BROODLORDWEAPON", sc2::UNIT_TYPEID::BROODLORDWEAPON) + .value("BRUTALISK", sc2::UNIT_TYPEID::BRUTALISK) + .value("BRUTALISKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BRUTALISKACGLUESCREENDUMMY) + .value("BRUTALISKWEAPON", sc2::UNIT_TYPEID::BRUTALISKWEAPON) + .value("BUBBACOMMERCIAL", sc2::UNIT_TYPEID::BUBBACOMMERCIAL) + .value("BUNKERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BUNKERACGLUESCREENDUMMY) + .value("BUNKERDEPOTMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BUNKERDEPOTMENGSKACGLUESCREENDUMMY) + .value("BUNKERUPGRADEDACGLUESCREENDUMMY", sc2::UNIT_TYPEID::BUNKERUPGRADEDACGLUESCREENDUMMY) + .value("BYPASSARMORDRONE", sc2::UNIT_TYPEID::BYPASSARMORDRONE) + .value("CABOOSE", sc2::UNIT_TYPEID::CABOOSE) + .value("CARGOTRUCKUNITBARRELS", sc2::UNIT_TYPEID::CARGOTRUCKUNITBARRELS) + .value("CARGOTRUCKUNITFLATBED", sc2::UNIT_TYPEID::CARGOTRUCKUNITFLATBED) + .value("CARGOTRUCKUNITTRAILER", sc2::UNIT_TYPEID::CARGOTRUCKUNITTRAILER) + .value("CARRIERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::CARRIERACGLUESCREENDUMMY) + .value("CARRIERAIURACGLUESCREENDUMMY", sc2::UNIT_TYPEID::CARRIERAIURACGLUESCREENDUMMY) + .value("CARRIERFENIXACGLUESCREENDUMMY", sc2::UNIT_TYPEID::CARRIERFENIXACGLUESCREENDUMMY) + .value("CARRIONBIRD", sc2::UNIT_TYPEID::CARRIONBIRD) + .value("CASTANARDESTRUCTIBLEDEBRIS", sc2::UNIT_TYPEID::CASTANARDESTRUCTIBLEDEBRIS) + .value("CASTANARULTRALISKSHACKLEDUNIT", sc2::UNIT_TYPEID::CASTANARULTRALISKSHACKLEDUNIT) + .value("CASTANARWINDOWLARGEDIAGONALBLURUNIT", sc2::UNIT_TYPEID::CASTANARWINDOWLARGEDIAGONALBLURUNIT) + .value("CASTANARWINDOWLARGEDIAGONALULBRUNIT", sc2::UNIT_TYPEID::CASTANARWINDOWLARGEDIAGONALULBRUNIT) + .value("CAUSTICSPRAYMISSILE", sc2::UNIT_TYPEID::CAUSTICSPRAYMISSILE) + .value("CELLBLOCKB", sc2::UNIT_TYPEID::CELLBLOCKB) + .value("CHARDESTRUCTIBLEROCKCOVER", sc2::UNIT_TYPEID::CHARDESTRUCTIBLEROCKCOVER) + .value("CHARDESTRUCTIBLEROCKCOVERULDR", sc2::UNIT_TYPEID::CHARDESTRUCTIBLEROCKCOVERULDR) + .value("CHARDESTRUCTIBLEROCKCOVERURDL", sc2::UNIT_TYPEID::CHARDESTRUCTIBLEROCKCOVERURDL) + .value("CHARDESTRUCTIBLEROCKCOVERV", sc2::UNIT_TYPEID::CHARDESTRUCTIBLEROCKCOVERV) + .value("CHECKSTATION", sc2::UNIT_TYPEID::CHECKSTATION) + .value("CHECKSTATIONDIAGONALBLUR", sc2::UNIT_TYPEID::CHECKSTATIONDIAGONALBLUR) + .value("CHECKSTATIONDIAGONALBLUROPENED", sc2::UNIT_TYPEID::CHECKSTATIONDIAGONALBLUROPENED) + .value("CHECKSTATIONDIAGONALULBR", sc2::UNIT_TYPEID::CHECKSTATIONDIAGONALULBR) + .value("CHECKSTATIONDIAGONALULBROPENED", sc2::UNIT_TYPEID::CHECKSTATIONDIAGONALULBROPENED) + .value("CHECKSTATIONOPENED", sc2::UNIT_TYPEID::CHECKSTATIONOPENED) + .value("CHECKSTATIONVERTICAL", sc2::UNIT_TYPEID::CHECKSTATIONVERTICAL) + .value("CHECKSTATIONVERTICALOPENED", sc2::UNIT_TYPEID::CHECKSTATIONVERTICALOPENED) + .value("CHRYSALISEGG", sc2::UNIT_TYPEID::CHRYSALISEGG) + .value("CIVILIAN", sc2::UNIT_TYPEID::CIVILIAN) + .value("CIVILIANCARSUNIT", sc2::UNIT_TYPEID::CIVILIANCARSUNIT) + .value("CIVILIANFEMALE", sc2::UNIT_TYPEID::CIVILIANFEMALE) + .value("CIVILIANSHIPWRECKED", sc2::UNIT_TYPEID::CIVILIANSHIPWRECKED) + .value("CIVILIANWEAPON", sc2::UNIT_TYPEID::CIVILIANWEAPON) + .value("CLEANINGBOT", sc2::UNIT_TYPEID::CLEANINGBOT) + .value("COLLAPSIBLEPURIFIERTOWERDEBRIS", sc2::UNIT_TYPEID::COLLAPSIBLEPURIFIERTOWERDEBRIS) + .value("COLLAPSIBLEPURIFIERTOWERDIAGONAL", sc2::UNIT_TYPEID::COLLAPSIBLEPURIFIERTOWERDIAGONAL) + .value("COLLAPSIBLEPURIFIERTOWERPUSHUNIT", sc2::UNIT_TYPEID::COLLAPSIBLEPURIFIERTOWERPUSHUNIT) + .value("COLLAPSIBLEROCKTOWER", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWER) + .value("COLLAPSIBLEROCKTOWERDEBRISRAMPLEFT", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERDEBRISRAMPLEFT) + .value("COLLAPSIBLEROCKTOWERDEBRISRAMPLEFTGREEN", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERDEBRISRAMPLEFTGREEN) + .value("COLLAPSIBLEROCKTOWERDEBRISRAMPRIGHT", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERDEBRISRAMPRIGHT) + .value("COLLAPSIBLEROCKTOWERDEBRISRAMPRIGHTGREEN", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERDEBRISRAMPRIGHTGREEN) + .value("COLLAPSIBLEROCKTOWERPUSHUNITRAMPLEFT", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERPUSHUNITRAMPLEFT) + .value("COLLAPSIBLEROCKTOWERPUSHUNITRAMPLEFTGREEN", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERPUSHUNITRAMPLEFTGREEN) + .value("COLLAPSIBLEROCKTOWERPUSHUNITRAMPRIGHT", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERPUSHUNITRAMPRIGHT) + .value("COLLAPSIBLEROCKTOWERPUSHUNITRAMPRIGHTGREEN", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERPUSHUNITRAMPRIGHTGREEN) + .value("COLLAPSIBLEROCKTOWERRAMPLEFT", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERRAMPLEFT) + .value("COLLAPSIBLEROCKTOWERRAMPLEFTGREEN", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERRAMPLEFTGREEN) + .value("COLLAPSIBLEROCKTOWERRAMPRIGHT", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERRAMPRIGHT) + .value("COLLAPSIBLEROCKTOWERRAMPRIGHTGREEN", sc2::UNIT_TYPEID::COLLAPSIBLEROCKTOWERRAMPRIGHTGREEN) + .value("COLLAPSIBLETERRANTOWER", sc2::UNIT_TYPEID::COLLAPSIBLETERRANTOWER) + .value("COLONIST", sc2::UNIT_TYPEID::COLONIST) + .value("COLONISTBIODOME", sc2::UNIT_TYPEID::COLONISTBIODOME) + .value("COLONISTBIODOMEHALFBUILT", sc2::UNIT_TYPEID::COLONISTBIODOMEHALFBUILT) + .value("COLONISTFEMALE", sc2::UNIT_TYPEID::COLONISTFEMALE) + .value("COLONISTHUT", sc2::UNIT_TYPEID::COLONISTHUT) + .value("COLONISTSHIP", sc2::UNIT_TYPEID::COLONISTSHIP) + .value("COLONISTSHIPFLYING", sc2::UNIT_TYPEID::COLONISTSHIPFLYING) + .value("COLONISTSHIPTHANSON02A", sc2::UNIT_TYPEID::COLONISTSHIPTHANSON02A) + .value("COLONISTTRANSPORT", sc2::UNIT_TYPEID::COLONISTTRANSPORT) + .value("COLONISTVEHICLEUNIT", sc2::UNIT_TYPEID::COLONISTVEHICLEUNIT) + .value("COLONISTVEHICLEUNIT01", sc2::UNIT_TYPEID::COLONISTVEHICLEUNIT01) + .value("COLONYINFESTATIONWEAPON", sc2::UNIT_TYPEID::COLONYINFESTATIONWEAPON) + .value("COLOSSUSACGLUESCREENDUMMY", sc2::UNIT_TYPEID::COLOSSUSACGLUESCREENDUMMY) + .value("COLOSSUSFENIXACGLUESCREENDUMMY", sc2::UNIT_TYPEID::COLOSSUSFENIXACGLUESCREENDUMMY) + .value("COLOSSUSPURIFIERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::COLOSSUSPURIFIERACGLUESCREENDUMMY) + .value("COLOSSUSTALDARIMACGLUESCREENDUMMY", sc2::UNIT_TYPEID::COLOSSUSTALDARIMACGLUESCREENDUMMY) + .value("COMMENTATORBOT1", sc2::UNIT_TYPEID::COMMENTATORBOT1) + .value("COMMENTATORBOT2", sc2::UNIT_TYPEID::COMMENTATORBOT2) + .value("COMMENTATORBOT3", sc2::UNIT_TYPEID::COMMENTATORBOT3) + .value("COMMENTATORBOT4", sc2::UNIT_TYPEID::COMMENTATORBOT4) + .value("COMPOUNDMANSION_DOORE", sc2::UNIT_TYPEID::COMPOUNDMANSION_DOORE) + .value("COMPOUNDMANSION_DOORELOWERED", sc2::UNIT_TYPEID::COMPOUNDMANSION_DOORELOWERED) + .value("COMPOUNDMANSION_DOORN", sc2::UNIT_TYPEID::COMPOUNDMANSION_DOORN) + .value("COMPOUNDMANSION_DOORNE", sc2::UNIT_TYPEID::COMPOUNDMANSION_DOORNE) + .value("COMPOUNDMANSION_DOORNELOWERED", sc2::UNIT_TYPEID::COMPOUNDMANSION_DOORNELOWERED) + .value("COMPOUNDMANSION_DOORNLOWERED", sc2::UNIT_TYPEID::COMPOUNDMANSION_DOORNLOWERED) + .value("COMPOUNDMANSION_DOORNW", sc2::UNIT_TYPEID::COMPOUNDMANSION_DOORNW) + .value("COMPOUNDMANSION_DOORNWLOWERED", sc2::UNIT_TYPEID::COMPOUNDMANSION_DOORNWLOWERED) + .value("CONSUMEDNAFEEDBACKWEAPON", sc2::UNIT_TYPEID::CONSUMEDNAFEEDBACKWEAPON) + .value("CONTAMINATEWEAPON", sc2::UNIT_TYPEID::CONTAMINATEWEAPON) + .value("CORROSIVEPARASITEWEAPON", sc2::UNIT_TYPEID::CORROSIVEPARASITEWEAPON) + .value("CORRUPTIONWEAPON", sc2::UNIT_TYPEID::CORRUPTIONWEAPON) + .value("CORRUPTORACGLUESCREENDUMMY", sc2::UNIT_TYPEID::CORRUPTORACGLUESCREENDUMMY) + .value("CORSAIRACGLUESCREENDUMMY", sc2::UNIT_TYPEID::CORSAIRACGLUESCREENDUMMY) + .value("CORSAIRMP", sc2::UNIT_TYPEID::CORSAIRMP) + .value("COVERTBANSHEEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::COVERTBANSHEEACGLUESCREENDUMMY) + .value("COW", sc2::UNIT_TYPEID::COW) + .value("CRABEETLE", sc2::UNIT_TYPEID::CRABEETLE) + .value("CREEPBLOCKER1X1", sc2::UNIT_TYPEID::CREEPBLOCKER1X1) + .value("CREEPBLOCKER4X4", sc2::UNIT_TYPEID::CREEPBLOCKER4X4) + .value("CREEPERHOSTACGLUESCREENDUMMY", sc2::UNIT_TYPEID::CREEPERHOSTACGLUESCREENDUMMY) + .value("CREEPONLYBLOCKER4X4", sc2::UNIT_TYPEID::CREEPONLYBLOCKER4X4) + .value("CREEPTUMORMISSILE", sc2::UNIT_TYPEID::CREEPTUMORMISSILE) + .value("CRUISERBIKE", sc2::UNIT_TYPEID::CRUISERBIKE) + .value("CYCLONEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::CYCLONEACGLUESCREENDUMMY) + .value("CYCLONEMISSILE", sc2::UNIT_TYPEID::CYCLONEMISSILE) + .value("CYCLONEMISSILELARGE", sc2::UNIT_TYPEID::CYCLONEMISSILELARGE) + .value("CYCLONEMISSILELARGEAIR", sc2::UNIT_TYPEID::CYCLONEMISSILELARGEAIR) + .value("CYCLONEMISSILELARGEAIRALTERNATIVE", sc2::UNIT_TYPEID::CYCLONEMISSILELARGEAIRALTERNATIVE) + .value("D8CHARGE", sc2::UNIT_TYPEID::D8CHARGE) + .value("D8CHARGEWEAPON", sc2::UNIT_TYPEID::D8CHARGEWEAPON) + .value("D8CLUSTERBOMB", sc2::UNIT_TYPEID::D8CLUSTERBOMB) + .value("D8CLUSTERBOMBWEAPON", sc2::UNIT_TYPEID::D8CLUSTERBOMBWEAPON) + .value("DARKARCHONACGLUESCREENDUMMY", sc2::UNIT_TYPEID::DARKARCHONACGLUESCREENDUMMY) + .value("DARKPYLONACGLUESCREENDUMMY", sc2::UNIT_TYPEID::DARKPYLONACGLUESCREENDUMMY) + .value("DARKTEMPLARSHAKURASACGLUESCREENDUMMY", sc2::UNIT_TYPEID::DARKTEMPLARSHAKURASACGLUESCREENDUMMY) + .value("DATACORE", sc2::UNIT_TYPEID::DATACORE) + .value("DEBRIS2X2NONCONJOINED", sc2::UNIT_TYPEID::DEBRIS2X2NONCONJOINED) + .value("DEFENSEWALLE", sc2::UNIT_TYPEID::DEFENSEWALLE) + .value("DEFENSEWALLN", sc2::UNIT_TYPEID::DEFENSEWALLN) + .value("DEFENSEWALLNE", sc2::UNIT_TYPEID::DEFENSEWALLNE) + .value("DEFENSEWALLNW", sc2::UNIT_TYPEID::DEFENSEWALLNW) + .value("DEFENSEWALLS", sc2::UNIT_TYPEID::DEFENSEWALLS) + .value("DEFENSEWALLSE", sc2::UNIT_TYPEID::DEFENSEWALLSE) + .value("DEFENSEWALLSW", sc2::UNIT_TYPEID::DEFENSEWALLSW) + .value("DEFENSEWALLW", sc2::UNIT_TYPEID::DEFENSEWALLW) + .value("DEFILERBONESAMPLE", sc2::UNIT_TYPEID::DEFILERBONESAMPLE) + .value("DEFILERMP", sc2::UNIT_TYPEID::DEFILERMP) + .value("DEFILERMPBURROWED", sc2::UNIT_TYPEID::DEFILERMPBURROWED) + .value("DEFILERMPDARKSWARMWEAPON", sc2::UNIT_TYPEID::DEFILERMPDARKSWARMWEAPON) + .value("DEFILERMPPLAGUEWEAPON", sc2::UNIT_TYPEID::DEFILERMPPLAGUEWEAPON) + .value("DESERTPLANETSEARCHLIGHT", sc2::UNIT_TYPEID::DESERTPLANETSEARCHLIGHT) + .value("DESERTPLANETSTREETLIGHT", sc2::UNIT_TYPEID::DESERTPLANETSTREETLIGHT) + .value("DESTRUCTIBLEBILLBOARDSCROLLINGTEXT", sc2::UNIT_TYPEID::DESTRUCTIBLEBILLBOARDSCROLLINGTEXT) + .value("DESTRUCTIBLEBILLBOARDTALL", sc2::UNIT_TYPEID::DESTRUCTIBLEBILLBOARDTALL) + .value("DESTRUCTIBLEBULLHORNLIGHTS", sc2::UNIT_TYPEID::DESTRUCTIBLEBULLHORNLIGHTS) + .value("DESTRUCTIBLECITYDEBRIS2X4HORIZONTAL", sc2::UNIT_TYPEID::DESTRUCTIBLECITYDEBRIS2X4HORIZONTAL) + .value("DESTRUCTIBLECITYDEBRIS2X4VERTICAL", sc2::UNIT_TYPEID::DESTRUCTIBLECITYDEBRIS2X4VERTICAL) + .value("DESTRUCTIBLECITYDEBRIS2X6HORIZONTAL", sc2::UNIT_TYPEID::DESTRUCTIBLECITYDEBRIS2X6HORIZONTAL) + .value("DESTRUCTIBLECITYDEBRIS2X6VERTICAL", sc2::UNIT_TYPEID::DESTRUCTIBLECITYDEBRIS2X6VERTICAL) + .value("DESTRUCTIBLECITYDEBRIS4X4", sc2::UNIT_TYPEID::DESTRUCTIBLECITYDEBRIS4X4) + .value("DESTRUCTIBLECITYDEBRISHUGEDIAGONALBLUR", sc2::UNIT_TYPEID::DESTRUCTIBLECITYDEBRISHUGEDIAGONALBLUR) + .value("DESTRUCTIBLECITYDEBRISHUGEDIAGONALULBR", sc2::UNIT_TYPEID::DESTRUCTIBLECITYDEBRISHUGEDIAGONALULBR) + .value("DESTRUCTIBLEDEBRIS4X4", sc2::UNIT_TYPEID::DESTRUCTIBLEDEBRIS4X4) + .value("DESTRUCTIBLEEXPEDITIONGATE6X6", sc2::UNIT_TYPEID::DESTRUCTIBLEEXPEDITIONGATE6X6) + .value("DESTRUCTIBLEGARAGE", sc2::UNIT_TYPEID::DESTRUCTIBLEGARAGE) + .value("DESTRUCTIBLEGARAGELARGE", sc2::UNIT_TYPEID::DESTRUCTIBLEGARAGELARGE) + .value("DESTRUCTIBLEGATEDIAGONALBLUR", sc2::UNIT_TYPEID::DESTRUCTIBLEGATEDIAGONALBLUR) + .value("DESTRUCTIBLEGATEDIAGONALBLURLOWERED", sc2::UNIT_TYPEID::DESTRUCTIBLEGATEDIAGONALBLURLOWERED) + .value("DESTRUCTIBLEGATEDIAGONALULBR", sc2::UNIT_TYPEID::DESTRUCTIBLEGATEDIAGONALULBR) + .value("DESTRUCTIBLEGATEDIAGONALULBRLOWERED", sc2::UNIT_TYPEID::DESTRUCTIBLEGATEDIAGONALULBRLOWERED) + .value("DESTRUCTIBLEGATESTRAIGHTHORIZONTAL", sc2::UNIT_TYPEID::DESTRUCTIBLEGATESTRAIGHTHORIZONTAL) + .value("DESTRUCTIBLEGATESTRAIGHTHORIZONTALBF", sc2::UNIT_TYPEID::DESTRUCTIBLEGATESTRAIGHTHORIZONTALBF) + .value("DESTRUCTIBLEGATESTRAIGHTHORIZONTALBFLOWERED", sc2::UNIT_TYPEID::DESTRUCTIBLEGATESTRAIGHTHORIZONTALBFLOWERED) + .value("DESTRUCTIBLEGATESTRAIGHTHORIZONTALLOWERED", sc2::UNIT_TYPEID::DESTRUCTIBLEGATESTRAIGHTHORIZONTALLOWERED) + .value("DESTRUCTIBLEGATESTRAIGHTVERTICAL", sc2::UNIT_TYPEID::DESTRUCTIBLEGATESTRAIGHTVERTICAL) + .value("DESTRUCTIBLEGATESTRAIGHTVERTICALLF", sc2::UNIT_TYPEID::DESTRUCTIBLEGATESTRAIGHTVERTICALLF) + .value("DESTRUCTIBLEGATESTRAIGHTVERTICALLFLOWERED", sc2::UNIT_TYPEID::DESTRUCTIBLEGATESTRAIGHTVERTICALLFLOWERED) + .value("DESTRUCTIBLEGATESTRAIGHTVERTICALLOWERED", sc2::UNIT_TYPEID::DESTRUCTIBLEGATESTRAIGHTVERTICALLOWERED) + .value("DESTRUCTIBLEICE2X4HORIZONTAL", sc2::UNIT_TYPEID::DESTRUCTIBLEICE2X4HORIZONTAL) + .value("DESTRUCTIBLEICE2X4VERTICAL", sc2::UNIT_TYPEID::DESTRUCTIBLEICE2X4VERTICAL) + .value("DESTRUCTIBLEICE2X6HORIZONTAL", sc2::UNIT_TYPEID::DESTRUCTIBLEICE2X6HORIZONTAL) + .value("DESTRUCTIBLEICE2X6VERTICAL", sc2::UNIT_TYPEID::DESTRUCTIBLEICE2X6VERTICAL) + .value("DESTRUCTIBLEICE4X4", sc2::UNIT_TYPEID::DESTRUCTIBLEICE4X4) + .value("DESTRUCTIBLEICE6X6", sc2::UNIT_TYPEID::DESTRUCTIBLEICE6X6) + .value("DESTRUCTIBLEICEDIAGONALHUGEBLUR", sc2::UNIT_TYPEID::DESTRUCTIBLEICEDIAGONALHUGEBLUR) + .value("DESTRUCTIBLEICEDIAGONALHUGEULBR", sc2::UNIT_TYPEID::DESTRUCTIBLEICEDIAGONALHUGEULBR) + .value("DESTRUCTIBLEICEHORIZONTALHUGE", sc2::UNIT_TYPEID::DESTRUCTIBLEICEHORIZONTALHUGE) + .value("DESTRUCTIBLEICEVERTICALHUGE", sc2::UNIT_TYPEID::DESTRUCTIBLEICEVERTICALHUGE) + .value("DESTRUCTIBLEKORHALFLAG", sc2::UNIT_TYPEID::DESTRUCTIBLEKORHALFLAG) + .value("DESTRUCTIBLEKORHALFOLIAGE", sc2::UNIT_TYPEID::DESTRUCTIBLEKORHALFOLIAGE) + .value("DESTRUCTIBLEKORHALPODIUM", sc2::UNIT_TYPEID::DESTRUCTIBLEKORHALPODIUM) + .value("DESTRUCTIBLEKORHALTREE", sc2::UNIT_TYPEID::DESTRUCTIBLEKORHALTREE) + .value("DESTRUCTIBLERAMPDIAGONALHUGEBLUR", sc2::UNIT_TYPEID::DESTRUCTIBLERAMPDIAGONALHUGEBLUR) + .value("DESTRUCTIBLERAMPDIAGONALHUGEULBR", sc2::UNIT_TYPEID::DESTRUCTIBLERAMPDIAGONALHUGEULBR) + .value("DESTRUCTIBLERAMPHORIZONTALHUGE", sc2::UNIT_TYPEID::DESTRUCTIBLERAMPHORIZONTALHUGE) + .value("DESTRUCTIBLERAMPVERTICALHUGE", sc2::UNIT_TYPEID::DESTRUCTIBLERAMPVERTICALHUGE) + .value("DESTRUCTIBLEROCK2X4HORIZONTAL", sc2::UNIT_TYPEID::DESTRUCTIBLEROCK2X4HORIZONTAL) + .value("DESTRUCTIBLEROCK2X4VERTICAL", sc2::UNIT_TYPEID::DESTRUCTIBLEROCK2X4VERTICAL) + .value("DESTRUCTIBLEROCK2X6HORIZONTAL", sc2::UNIT_TYPEID::DESTRUCTIBLEROCK2X6HORIZONTAL) + .value("DESTRUCTIBLEROCK2X6VERTICAL", sc2::UNIT_TYPEID::DESTRUCTIBLEROCK2X6VERTICAL) + .value("DESTRUCTIBLEROCK4X4", sc2::UNIT_TYPEID::DESTRUCTIBLEROCK4X4) + .value("DESTRUCTIBLEROCK6X6WEAK", sc2::UNIT_TYPEID::DESTRUCTIBLEROCK6X6WEAK) + .value("DESTRUCTIBLEROCKEX12X4HORIZONTAL", sc2::UNIT_TYPEID::DESTRUCTIBLEROCKEX12X4HORIZONTAL) + .value("DESTRUCTIBLEROCKEX12X4VERTICAL", sc2::UNIT_TYPEID::DESTRUCTIBLEROCKEX12X4VERTICAL) + .value("DESTRUCTIBLEROCKEX12X6HORIZONTAL", sc2::UNIT_TYPEID::DESTRUCTIBLEROCKEX12X6HORIZONTAL) + .value("DESTRUCTIBLEROCKEX12X6VERTICAL", sc2::UNIT_TYPEID::DESTRUCTIBLEROCKEX12X6VERTICAL) + .value("DESTRUCTIBLEROCKEX14X4", sc2::UNIT_TYPEID::DESTRUCTIBLEROCKEX14X4) + .value("DESTRUCTIBLEROCKEX16X6", sc2::UNIT_TYPEID::DESTRUCTIBLEROCKEX16X6) + .value("DESTRUCTIBLEROCKEX1DIAGONALHUGEULBR", sc2::UNIT_TYPEID::DESTRUCTIBLEROCKEX1DIAGONALHUGEULBR) + .value("DESTRUCTIBLEROCKEX1HORIZONTALHUGE", sc2::UNIT_TYPEID::DESTRUCTIBLEROCKEX1HORIZONTALHUGE) + .value("DESTRUCTIBLEROCKEX1VERTICALHUGE", sc2::UNIT_TYPEID::DESTRUCTIBLEROCKEX1VERTICALHUGE) + .value("DESTRUCTIBLESANDBAGS", sc2::UNIT_TYPEID::DESTRUCTIBLESANDBAGS) + .value("DESTRUCTIBLESEARCHLIGHT", sc2::UNIT_TYPEID::DESTRUCTIBLESEARCHLIGHT) + .value("DESTRUCTIBLESIGNSCONSTRUCTION", sc2::UNIT_TYPEID::DESTRUCTIBLESIGNSCONSTRUCTION) + .value("DESTRUCTIBLESIGNSDIRECTIONAL", sc2::UNIT_TYPEID::DESTRUCTIBLESIGNSDIRECTIONAL) + .value("DESTRUCTIBLESIGNSFUNNY", sc2::UNIT_TYPEID::DESTRUCTIBLESIGNSFUNNY) + .value("DESTRUCTIBLESIGNSICONS", sc2::UNIT_TYPEID::DESTRUCTIBLESIGNSICONS) + .value("DESTRUCTIBLESIGNSWARNING", sc2::UNIT_TYPEID::DESTRUCTIBLESIGNSWARNING) + .value("DESTRUCTIBLESPACEPLATFORMBARRIER", sc2::UNIT_TYPEID::DESTRUCTIBLESPACEPLATFORMBARRIER) + .value("DESTRUCTIBLESPACEPLATFORMSIGN", sc2::UNIT_TYPEID::DESTRUCTIBLESPACEPLATFORMSIGN) + .value("DESTRUCTIBLESTOREFRONTCITYPROPS", sc2::UNIT_TYPEID::DESTRUCTIBLESTOREFRONTCITYPROPS) + .value("DESTRUCTIBLESTREETLIGHT", sc2::UNIT_TYPEID::DESTRUCTIBLESTREETLIGHT) + .value("DESTRUCTIBLETRAFFICSIGNAL", sc2::UNIT_TYPEID::DESTRUCTIBLETRAFFICSIGNAL) + .value("DESTRUCTIBLEWALLCORNER45", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER45) + .value("DESTRUCTIBLEWALLCORNER45BL90R", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER45BL90R) + .value("DESTRUCTIBLEWALLCORNER45BR90T", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER45BR90T) + .value("DESTRUCTIBLEWALLCORNER45UL90B", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER45UL90B) + .value("DESTRUCTIBLEWALLCORNER45ULBL", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER45ULBL) + .value("DESTRUCTIBLEWALLCORNER45ULUR", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER45ULUR) + .value("DESTRUCTIBLEWALLCORNER45UR90L", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER45UR90L) + .value("DESTRUCTIBLEWALLCORNER45URBR", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER45URBR) + .value("DESTRUCTIBLEWALLCORNER90B45UR", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER90B45UR) + .value("DESTRUCTIBLEWALLCORNER90BR", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER90BR) + .value("DESTRUCTIBLEWALLCORNER90L45BR", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER90L45BR) + .value("DESTRUCTIBLEWALLCORNER90LB", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER90LB) + .value("DESTRUCTIBLEWALLCORNER90LT", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER90LT) + .value("DESTRUCTIBLEWALLCORNER90R45UL", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER90R45UL) + .value("DESTRUCTIBLEWALLCORNER90T45BL", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER90T45BL) + .value("DESTRUCTIBLEWALLCORNER90TR", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLCORNER90TR) + .value("DESTRUCTIBLEWALLDIAGONALBLUR", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLDIAGONALBLUR) + .value("DESTRUCTIBLEWALLDIAGONALBLURLF", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLDIAGONALBLURLF) + .value("DESTRUCTIBLEWALLDIAGONALULBR", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLDIAGONALULBR) + .value("DESTRUCTIBLEWALLDIAGONALULBRLF", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLDIAGONALULBRLF) + .value("DESTRUCTIBLEWALLSTRAIGHTHORIZONTAL", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLSTRAIGHTHORIZONTAL) + .value("DESTRUCTIBLEWALLSTRAIGHTHORIZONTALBF", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLSTRAIGHTHORIZONTALBF) + .value("DESTRUCTIBLEWALLSTRAIGHTVERTICAL", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLSTRAIGHTVERTICAL) + .value("DESTRUCTIBLEWALLVERTICALLF", sc2::UNIT_TYPEID::DESTRUCTIBLEWALLVERTICALLF) + .value("DESTRUCTIBLEZERGINFESTATION3X3", sc2::UNIT_TYPEID::DESTRUCTIBLEZERGINFESTATION3X3) + .value("DEVASTATIONTURRETACGLUESCREENDUMMY", sc2::UNIT_TYPEID::DEVASTATIONTURRETACGLUESCREENDUMMY) + .value("DEVASTATORMISSILEWEAPON", sc2::UNIT_TYPEID::DEVASTATORMISSILEWEAPON) + .value("DEVILDOG", sc2::UNIT_TYPEID::DEVILDOG) + .value("DEVOURERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::DEVOURERACGLUESCREENDUMMY) + .value("DEVOURERCOCOONMP", sc2::UNIT_TYPEID::DEVOURERCOCOONMP) + .value("DEVOURERMP", sc2::UNIT_TYPEID::DEVOURERMP) + .value("DEVOURERMPWEAPONMISSILE", sc2::UNIT_TYPEID::DEVOURERMPWEAPONMISSILE) + .value("DEVOURERTISSUEDOODAD", sc2::UNIT_TYPEID::DEVOURERTISSUEDOODAD) + .value("DEVOURERTISSUEMISSILE", sc2::UNIT_TYPEID::DEVOURERTISSUEMISSILE) + .value("DEVOURERTISSUESAMPLE", sc2::UNIT_TYPEID::DEVOURERTISSUESAMPLE) + .value("DEVOURERTISSUESAMPLETUBE", sc2::UNIT_TYPEID::DEVOURERTISSUESAMPLETUBE) + .value("DIAMONDBACK", sc2::UNIT_TYPEID::DIAMONDBACK) + .value("DIGESTERCREEPSPRAYTARGETUNIT", sc2::UNIT_TYPEID::DIGESTERCREEPSPRAYTARGETUNIT) + .value("DIGESTERCREEPSPRAYUNIT", sc2::UNIT_TYPEID::DIGESTERCREEPSPRAYUNIT) + .value("DISRUPTORACGLUESCREENDUMMY", sc2::UNIT_TYPEID::DISRUPTORACGLUESCREENDUMMY) + .value("DOG", sc2::UNIT_TYPEID::DOG) + .value("DOMINIONKILLTEAM", sc2::UNIT_TYPEID::DOMINIONKILLTEAM) + .value("DOMINIONKILLTEAMLMWEAPON", sc2::UNIT_TYPEID::DOMINIONKILLTEAMLMWEAPON) + .value("DRAGOONACGLUESCREENDUMMY", sc2::UNIT_TYPEID::DRAGOONACGLUESCREENDUMMY) + .value("DRAKKENLASERDRILL", sc2::UNIT_TYPEID::DRAKKENLASERDRILL) + .value("DRBATTLECRUISERALMWEAPON", sc2::UNIT_TYPEID::DRBATTLECRUISERALMWEAPON) + .value("DRBATTLECRUISERGLMWEAPON", sc2::UNIT_TYPEID::DRBATTLECRUISERGLMWEAPON) + .value("DUKESREVENGE", sc2::UNIT_TYPEID::DUKESREVENGE) + .value("DUMPTRUCK", sc2::UNIT_TYPEID::DUMPTRUCK) + .value("DUSKWING", sc2::UNIT_TYPEID::DUSKWING) + .value("DUSKWINGWEAPON", sc2::UNIT_TYPEID::DUSKWINGWEAPON) + .value("EGGPURPLE", sc2::UNIT_TYPEID::EGGPURPLE) + .value("ELEVATORBLOCKER", sc2::UNIT_TYPEID::ELEVATORBLOCKER) + .value("ELITEMARINEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ELITEMARINEACGLUESCREENDUMMY) + .value("ELSECARO_COLONIST_HUT", sc2::UNIT_TYPEID::ELSECARO_COLONIST_HUT) + .value("EMP2WEAPON", sc2::UNIT_TYPEID::EMP2WEAPON) + .value("ENEMYPATHINGBLOCKER16X16", sc2::UNIT_TYPEID::ENEMYPATHINGBLOCKER16X16) + .value("ENEMYPATHINGBLOCKER1X1", sc2::UNIT_TYPEID::ENEMYPATHINGBLOCKER1X1) + .value("ENEMYPATHINGBLOCKER2X2", sc2::UNIT_TYPEID::ENEMYPATHINGBLOCKER2X2) + .value("ENEMYPATHINGBLOCKER4X4", sc2::UNIT_TYPEID::ENEMYPATHINGBLOCKER4X4) + .value("ENEMYPATHINGBLOCKER8X8", sc2::UNIT_TYPEID::ENEMYPATHINGBLOCKER8X8) + .value("EXPERIMENTALPLASMAGUNWEAPON", sc2::UNIT_TYPEID::EXPERIMENTALPLASMAGUNWEAPON) + .value("EXPLODINGBARRELLARGE", sc2::UNIT_TYPEID::EXPLODINGBARRELLARGE) + .value("EXTENDINGBRIDGENEWIDE10", sc2::UNIT_TYPEID::EXTENDINGBRIDGENEWIDE10) + .value("EXTENDINGBRIDGENEWIDE10OUT", sc2::UNIT_TYPEID::EXTENDINGBRIDGENEWIDE10OUT) + .value("EXTENDINGBRIDGENEWIDE12", sc2::UNIT_TYPEID::EXTENDINGBRIDGENEWIDE12) + .value("EXTENDINGBRIDGENEWIDE12OUT", sc2::UNIT_TYPEID::EXTENDINGBRIDGENEWIDE12OUT) + .value("EXTENDINGBRIDGENEWIDE8", sc2::UNIT_TYPEID::EXTENDINGBRIDGENEWIDE8) + .value("EXTENDINGBRIDGENEWIDE8OUT", sc2::UNIT_TYPEID::EXTENDINGBRIDGENEWIDE8OUT) + .value("EXTENDINGBRIDGENWWIDE10", sc2::UNIT_TYPEID::EXTENDINGBRIDGENWWIDE10) + .value("EXTENDINGBRIDGENWWIDE10OUT", sc2::UNIT_TYPEID::EXTENDINGBRIDGENWWIDE10OUT) + .value("EXTENDINGBRIDGENWWIDE12", sc2::UNIT_TYPEID::EXTENDINGBRIDGENWWIDE12) + .value("EXTENDINGBRIDGENWWIDE12OUT", sc2::UNIT_TYPEID::EXTENDINGBRIDGENWWIDE12OUT) + .value("EXTENDINGBRIDGENWWIDE8", sc2::UNIT_TYPEID::EXTENDINGBRIDGENWWIDE8) + .value("EXTENDINGBRIDGENWWIDE8OUT", sc2::UNIT_TYPEID::EXTENDINGBRIDGENWWIDE8OUT) + .value("EYESTALKWEAPON", sc2::UNIT_TYPEID::EYESTALKWEAPON) + .value("FACTORYTECHREACTOR", sc2::UNIT_TYPEID::FACTORYTECHREACTOR) + .value("FEEDERLING", sc2::UNIT_TYPEID::FEEDERLING) + .value("FIREBAT", sc2::UNIT_TYPEID::FIREBAT) + .value("FIREBATACGLUESCREENDUMMY", sc2::UNIT_TYPEID::FIREBATACGLUESCREENDUMMY) + .value("FIREROACHACGLUESCREENDUMMY", sc2::UNIT_TYPEID::FIREROACHACGLUESCREENDUMMY) + .value("FIREWORKSBLUE", sc2::UNIT_TYPEID::FIREWORKSBLUE) + .value("FIREWORKSRED", sc2::UNIT_TYPEID::FIREWORKSRED) + .value("FIREWORKSYELLOW", sc2::UNIT_TYPEID::FIREWORKSYELLOW) + .value("FLAMINGBETTY", sc2::UNIT_TYPEID::FLAMINGBETTY) + .value("FLAMINGBETTYACGLUESCREENDUMMY", sc2::UNIT_TYPEID::FLAMINGBETTYACGLUESCREENDUMMY) + .value("FLATBEDTRUCK", sc2::UNIT_TYPEID::FLATBEDTRUCK) + .value("FLYOVERUNIT", sc2::UNIT_TYPEID::FLYOVERUNIT) + .value("FOOD1000", sc2::UNIT_TYPEID::FOOD1000) + .value("FREIGHTCAR", sc2::UNIT_TYPEID::FREIGHTCAR) + .value("FRENZYWEAPON", sc2::UNIT_TYPEID::FRENZYWEAPON) + .value("FUNGALGROWTHMISSILE", sc2::UNIT_TYPEID::FUNGALGROWTHMISSILE) + .value("FUSIONREACTOR", sc2::UNIT_TYPEID::FUSIONREACTOR) + .value("G4CHARGEWEAPON", sc2::UNIT_TYPEID::G4CHARGEWEAPON) + .value("GASCANISTER", sc2::UNIT_TYPEID::GASCANISTER) + .value("GASCANISTERPROTOSS", sc2::UNIT_TYPEID::GASCANISTERPROTOSS) + .value("GASCANISTERZERG", sc2::UNIT_TYPEID::GASCANISTERZERG) + .value("GATECONTROLUNIT", sc2::UNIT_TYPEID::GATECONTROLUNIT) + .value("GHOSTALTERNATE", sc2::UNIT_TYPEID::GHOSTALTERNATE) + .value("GHOSTLASERLINES", sc2::UNIT_TYPEID::GHOSTLASERLINES) + .value("GHOSTMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::GHOSTMENGSKACGLUESCREENDUMMY) + .value("GHOSTNOVA", sc2::UNIT_TYPEID::GHOSTNOVA) + .value("GLAIVEWURMBOUNCEWEAPON", sc2::UNIT_TYPEID::GLAIVEWURMBOUNCEWEAPON) + .value("GLAIVEWURMM2WEAPON", sc2::UNIT_TYPEID::GLAIVEWURMM2WEAPON) + .value("GLAIVEWURMM3WEAPON", sc2::UNIT_TYPEID::GLAIVEWURMM3WEAPON) + .value("GLAIVEWURMWEAPON", sc2::UNIT_TYPEID::GLAIVEWURMWEAPON) + .value("GLOBESTATUE", sc2::UNIT_TYPEID::GLOBESTATUE) + .value("GOLIATH", sc2::UNIT_TYPEID::GOLIATH) + .value("GOLIATHACGLUESCREENDUMMY", sc2::UNIT_TYPEID::GOLIATHACGLUESCREENDUMMY) + .value("GOLIATHAWEAPON", sc2::UNIT_TYPEID::GOLIATHAWEAPON) + .value("GRAPPLEWEAPON", sc2::UNIT_TYPEID::GRAPPLEWEAPON) + .value("GUARDIANACGLUESCREENDUMMY", sc2::UNIT_TYPEID::GUARDIANACGLUESCREENDUMMY) + .value("GUARDIANCOCOONMP", sc2::UNIT_TYPEID::GUARDIANCOCOONMP) + .value("GUARDIANMP", sc2::UNIT_TYPEID::GUARDIANMP) + .value("GUARDIANMPWEAPON", sc2::UNIT_TYPEID::GUARDIANMPWEAPON) + .value("HAILSTORMMISSILESWEAPON", sc2::UNIT_TYPEID::HAILSTORMMISSILESWEAPON) + .value("HAMMERSECURITY", sc2::UNIT_TYPEID::HAMMERSECURITY) + .value("HAMMERSECURITYLMWEAPON", sc2::UNIT_TYPEID::HAMMERSECURITYLMWEAPON) + .value("HEALINGPOTIONTESTINSTANT", sc2::UNIT_TYPEID::HEALINGPOTIONTESTINSTANT) + .value("HEALINGPOTIONTESTTARGET", sc2::UNIT_TYPEID::HEALINGPOTIONTESTTARGET) + .value("HEAVYSIEGETANKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HEAVYSIEGETANKACGLUESCREENDUMMY) + .value("HELLBATACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HELLBATACGLUESCREENDUMMY) + .value("HELLBATRANGERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HELLBATRANGERACGLUESCREENDUMMY) + .value("HELPEREMITTERSELECTIONARROW", sc2::UNIT_TYPEID::HELPEREMITTERSELECTIONARROW) + .value("HELSANGELASSAULT", sc2::UNIT_TYPEID::HELSANGELASSAULT) + .value("HELSANGELFIGHTER", sc2::UNIT_TYPEID::HELSANGELFIGHTER) + .value("HELSANGELFIGHTERWEAPON", sc2::UNIT_TYPEID::HELSANGELFIGHTERWEAPON) + .value("HERC", sc2::UNIT_TYPEID::HERC) + .value("HERCPLACEMENT", sc2::UNIT_TYPEID::HERCPLACEMENT) + .value("HERCULES", sc2::UNIT_TYPEID::HERCULES) + .value("HERCULESACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HERCULESACGLUESCREENDUMMY) + .value("HERCULESLANDER", sc2::UNIT_TYPEID::HERCULESLANDER) + .value("HERCULESLANDERFLYING", sc2::UNIT_TYPEID::HERCULESLANDERFLYING) + .value("HERONUKE", sc2::UNIT_TYPEID::HERONUKE) + .value("HHBATTLECRUISERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HHBATTLECRUISERACGLUESCREENDUMMY) + .value("HHBOMBERPLATFORMACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HHBOMBERPLATFORMACGLUESCREENDUMMY) + .value("HHHELLIONTANKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HHHELLIONTANKACGLUESCREENDUMMY) + .value("HHMERCSTARPORTACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HHMERCSTARPORTACGLUESCREENDUMMY) + .value("HHMISSILETURRETACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HHMISSILETURRETACGLUESCREENDUMMY) + .value("HHRAVENACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HHRAVENACGLUESCREENDUMMY) + .value("HHREAPERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HHREAPERACGLUESCREENDUMMY) + .value("HHVIKINGACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HHVIKINGACGLUESCREENDUMMY) + .value("HHWIDOWMINEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HHWIDOWMINEACGLUESCREENDUMMY) + .value("HHWRAITHACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HHWRAITHACGLUESCREENDUMMY) + .value("HIGHTEMPLARACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HIGHTEMPLARACGLUESCREENDUMMY) + .value("HIGHTEMPLARSKINPREVIEW", sc2::UNIT_TYPEID::HIGHTEMPLARSKINPREVIEW) + .value("HIGHTEMPLARTALDARIMACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HIGHTEMPLARTALDARIMACGLUESCREENDUMMY) + .value("HIGHTEMPLARWEAPONMISSILE", sc2::UNIT_TYPEID::HIGHTEMPLARWEAPONMISSILE) + .value("HIVEMINDEMULATOR", sc2::UNIT_TYPEID::HIVEMINDEMULATOR) + .value("HOLDINGPEN", sc2::UNIT_TYPEID::HOLDINGPEN) + .value("HOMELARGE", sc2::UNIT_TYPEID::HOMELARGE) + .value("HOMESMALL", sc2::UNIT_TYPEID::HOMESMALL) + .value("HUNTERKILLER", sc2::UNIT_TYPEID::HUNTERKILLER) + .value("HUNTERKILLERBURROWED", sc2::UNIT_TYPEID::HUNTERKILLERBURROWED) + .value("HUNTERKILLERWEAPON", sc2::UNIT_TYPEID::HUNTERKILLERWEAPON) + .value("HUNTERSEEKERWEAPON", sc2::UNIT_TYPEID::HUNTERSEEKERWEAPON) + .value("HURRICANEMISSILELEFT", sc2::UNIT_TYPEID::HURRICANEMISSILELEFT) + .value("HURRICANEMISSILERIGHT", sc2::UNIT_TYPEID::HURRICANEMISSILERIGHT) + .value("HUT", sc2::UNIT_TYPEID::HUT) + .value("HYBRID", sc2::UNIT_TYPEID::HYBRID) + .value("HYBRIDCPLASMAWEAPON", sc2::UNIT_TYPEID::HYBRIDCPLASMAWEAPON) + .value("HYBRIDDESTROYER", sc2::UNIT_TYPEID::HYBRIDDESTROYER) + .value("HYBRIDREAVER", sc2::UNIT_TYPEID::HYBRIDREAVER) + .value("HYBRIDSINGULARITYFEEDBACKWEAPON", sc2::UNIT_TYPEID::HYBRIDSINGULARITYFEEDBACKWEAPON) + .value("HYDRALISKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HYDRALISKACGLUESCREENDUMMY) + .value("HYDRALISKIMPALEMISSILE", sc2::UNIT_TYPEID::HYDRALISKIMPALEMISSILE) + .value("HYDRALISKLURKERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::HYDRALISKLURKERACGLUESCREENDUMMY) + .value("HYPERION", sc2::UNIT_TYPEID::HYPERION) + .value("HYPERIONALMWEAPON", sc2::UNIT_TYPEID::HYPERIONALMWEAPON) + .value("HYPERIONLMWEAPON", sc2::UNIT_TYPEID::HYPERIONLMWEAPON) + .value("HYPERIONYAMATOSPECIALWEAPON", sc2::UNIT_TYPEID::HYPERIONYAMATOSPECIALWEAPON) + .value("ICE2X2NONCONJOINED", sc2::UNIT_TYPEID::ICE2X2NONCONJOINED) + .value("ICEPROTOSSCRATES", sc2::UNIT_TYPEID::ICEPROTOSSCRATES) + .value("IMMORTALACGLUESCREENDUMMY", sc2::UNIT_TYPEID::IMMORTALACGLUESCREENDUMMY) + .value("IMMORTALFENIXACGLUESCREENDUMMY", sc2::UNIT_TYPEID::IMMORTALFENIXACGLUESCREENDUMMY) + .value("IMMORTALKARAXACGLUESCREENDUMMY", sc2::UNIT_TYPEID::IMMORTALKARAXACGLUESCREENDUMMY) + .value("IMMORTALTALDARIMACGLUESCREENDUMMY", sc2::UNIT_TYPEID::IMMORTALTALDARIMACGLUESCREENDUMMY) + .value("INFESTABLEBIODOME", sc2::UNIT_TYPEID::INFESTABLEBIODOME) + .value("INFESTABLECOLONISTBIODOME", sc2::UNIT_TYPEID::INFESTABLECOLONISTBIODOME) + .value("INFESTABLECOLONISTHUT", sc2::UNIT_TYPEID::INFESTABLECOLONISTHUT) + .value("INFESTABLEHUT", sc2::UNIT_TYPEID::INFESTABLEHUT) + .value("INFESTATIONSPIRE", sc2::UNIT_TYPEID::INFESTATIONSPIRE) + .value("INFESTEDABOMINATION", sc2::UNIT_TYPEID::INFESTEDABOMINATION) + .value("INFESTEDABOMINATIONBURROWED", sc2::UNIT_TYPEID::INFESTEDABOMINATIONBURROWED) + .value("INFESTEDACIDSPINESWEAPON", sc2::UNIT_TYPEID::INFESTEDACIDSPINESWEAPON) + .value("INFESTEDARMORY", sc2::UNIT_TYPEID::INFESTEDARMORY) + .value("INFESTEDBARRACKS", sc2::UNIT_TYPEID::INFESTEDBARRACKS) + .value("INFESTEDBUNKER", sc2::UNIT_TYPEID::INFESTEDBUNKER) + .value("INFESTEDCC", sc2::UNIT_TYPEID::INFESTEDCC) + .value("INFESTEDCIVILIAN", sc2::UNIT_TYPEID::INFESTEDCIVILIAN) + .value("INFESTEDCIVILIANBURROWED", sc2::UNIT_TYPEID::INFESTEDCIVILIANBURROWED) + .value("INFESTEDCOCOON", sc2::UNIT_TYPEID::INFESTEDCOCOON) + .value("INFESTEDCOLONISTSHIP", sc2::UNIT_TYPEID::INFESTEDCOLONISTSHIP) + .value("INFESTEDENGBAY", sc2::UNIT_TYPEID::INFESTEDENGBAY) + .value("INFESTEDFACTORY", sc2::UNIT_TYPEID::INFESTEDFACTORY) + .value("INFESTEDMERCHAVEN", sc2::UNIT_TYPEID::INFESTEDMERCHAVEN) + .value("INFESTEDMISSILETURRET", sc2::UNIT_TYPEID::INFESTEDMISSILETURRET) + .value("INFESTEDREFINERY", sc2::UNIT_TYPEID::INFESTEDREFINERY) + .value("INFESTEDSTARPORT", sc2::UNIT_TYPEID::INFESTEDSTARPORT) + .value("INFESTEDSUPPLY", sc2::UNIT_TYPEID::INFESTEDSUPPLY) + .value("INFESTEDTERRAN", sc2::UNIT_TYPEID::INFESTEDTERRAN) + .value("INFESTEDTERRANCAMPAIGN", sc2::UNIT_TYPEID::INFESTEDTERRANCAMPAIGN) + .value("INFESTEDTERRANCAMPAIGNBURROWED", sc2::UNIT_TYPEID::INFESTEDTERRANCAMPAIGNBURROWED) + .value("INFESTEDTERRANSEGGPLACEMENT", sc2::UNIT_TYPEID::INFESTEDTERRANSEGGPLACEMENT) + .value("INFESTEDTERRANSWEAPON", sc2::UNIT_TYPEID::INFESTEDTERRANSWEAPON) + .value("INFESTEDVENTBROODLORDEGG", sc2::UNIT_TYPEID::INFESTEDVENTBROODLORDEGG) + .value("INFESTEDVENTCORRUPTOREGG", sc2::UNIT_TYPEID::INFESTEDVENTCORRUPTOREGG) + .value("INFESTEDVENTEGGMISSILE", sc2::UNIT_TYPEID::INFESTEDVENTEGGMISSILE) + .value("INFESTEDVENTMUTALISKEGG", sc2::UNIT_TYPEID::INFESTEDVENTMUTALISKEGG) + .value("INFESTORENSNAREATTACKMISSILE", sc2::UNIT_TYPEID::INFESTORENSNAREATTACKMISSILE) + .value("INFESTORTERRANBURROWED", sc2::UNIT_TYPEID::INFESTORTERRANBURROWED) + .value("INFESTORTERRANSWEAPON", sc2::UNIT_TYPEID::INFESTORTERRANSWEAPON) + .value("INHIBITORZONEFLYINGLARGE", sc2::UNIT_TYPEID::INHIBITORZONEFLYINGLARGE) + .value("INHIBITORZONEFLYINGMEDIUM", sc2::UNIT_TYPEID::INHIBITORZONEFLYINGMEDIUM) + .value("INHIBITORZONEFLYINGSMALL", sc2::UNIT_TYPEID::INHIBITORZONEFLYINGSMALL) + .value("INHIBITORZONELARGE", sc2::UNIT_TYPEID::INHIBITORZONELARGE) + .value("INHIBITORZONEMEDIUM", sc2::UNIT_TYPEID::INHIBITORZONEMEDIUM) + .value("INHIBITORZONESMALL", sc2::UNIT_TYPEID::INHIBITORZONESMALL) + .value("INVALID", sc2::UNIT_TYPEID::INVALID) + .value("INVISIBLEPYLON", sc2::UNIT_TYPEID::INVISIBLEPYLON) + .value("INVISIBLETARGETDUMMY", sc2::UNIT_TYPEID::INVISIBLETARGETDUMMY) + .value("IONCANNONSWEAPON", sc2::UNIT_TYPEID::IONCANNONSWEAPON) + .value("IPISTOLAD", sc2::UNIT_TYPEID::IPISTOLAD) + .value("ITEMGRAVITYBOMBS", sc2::UNIT_TYPEID::ITEMGRAVITYBOMBS) + .value("ITEMGRAVITYBOMBSWEAPON", sc2::UNIT_TYPEID::ITEMGRAVITYBOMBSWEAPON) + .value("ITEMGRENADES", sc2::UNIT_TYPEID::ITEMGRENADES) + .value("ITEMGRENADESWEAPON", sc2::UNIT_TYPEID::ITEMGRENADESWEAPON) + .value("ITEMMEDKIT", sc2::UNIT_TYPEID::ITEMMEDKIT) + .value("ITEMMINES", sc2::UNIT_TYPEID::ITEMMINES) + .value("JORIUMSTOCKPILE", sc2::UNIT_TYPEID::JORIUMSTOCKPILE) + .value("KARAKMALE", sc2::UNIT_TYPEID::KARAKMALE) + .value("KARASS", sc2::UNIT_TYPEID::KARASS) + .value("KARASSWEAPON", sc2::UNIT_TYPEID::KARASSWEAPON) + .value("KD8CHARGEWEAPON", sc2::UNIT_TYPEID::KD8CHARGEWEAPON) + .value("KERRIGAN", sc2::UNIT_TYPEID::KERRIGAN) + .value("KERRIGANCHAR", sc2::UNIT_TYPEID::KERRIGANCHAR) + .value("KERRIGANCHARBURROWED", sc2::UNIT_TYPEID::KERRIGANCHARBURROWED) + .value("KERRIGANCHARWEAPON", sc2::UNIT_TYPEID::KERRIGANCHARWEAPON) + .value("KERRIGANEGG", sc2::UNIT_TYPEID::KERRIGANEGG) + .value("KERRIGANWEAPON", sc2::UNIT_TYPEID::KERRIGANWEAPON) + .value("KHAYDARINMONOLITHACGLUESCREENDUMMY", sc2::UNIT_TYPEID::KHAYDARINMONOLITHACGLUESCREENDUMMY) + .value("L800ETC_AD", sc2::UNIT_TYPEID::L800ETC_AD) + .value("LABBOT", sc2::UNIT_TYPEID::LABBOT) + .value("LARVARELEASEMISSILE", sc2::UNIT_TYPEID::LARVARELEASEMISSILE) + .value("LEVIATHAN", sc2::UNIT_TYPEID::LEVIATHAN) + .value("LEVIATHANACGLUESCREENDUMMY", sc2::UNIT_TYPEID::LEVIATHANACGLUESCREENDUMMY) + .value("LEVIATHANSCOURGEMISSILE", sc2::UNIT_TYPEID::LEVIATHANSCOURGEMISSILE) + .value("LIBERATORAGMISSILE", sc2::UNIT_TYPEID::LIBERATORAGMISSILE) + .value("LIBERATORDAMAGEMISSILE", sc2::UNIT_TYPEID::LIBERATORDAMAGEMISSILE) + .value("LIBERATORMISSILE", sc2::UNIT_TYPEID::LIBERATORMISSILE) + .value("LIBERATORSKINPREVIEW", sc2::UNIT_TYPEID::LIBERATORSKINPREVIEW) + .value("LIGHTNINGBOMBWEAPON", sc2::UNIT_TYPEID::LIGHTNINGBOMBWEAPON) + .value("LOCUSTMPEGGAMISSILEWEAPON", sc2::UNIT_TYPEID::LOCUSTMPEGGAMISSILEWEAPON) + .value("LOCUSTMPEGGBMISSILEWEAPON", sc2::UNIT_TYPEID::LOCUSTMPEGGBMISSILEWEAPON) + .value("LOCUSTMPPRECURSOR", sc2::UNIT_TYPEID::LOCUSTMPPRECURSOR) + .value("LOCUSTMPWEAPON", sc2::UNIT_TYPEID::LOCUSTMPWEAPON) + .value("LOGISTICSHEADQUARTERS", sc2::UNIT_TYPEID::LOGISTICSHEADQUARTERS) + .value("LOKI", sc2::UNIT_TYPEID::LOKI) + .value("LOKIHURRICANEMISSILELEFT", sc2::UNIT_TYPEID::LOKIHURRICANEMISSILELEFT) + .value("LOKIHURRICANEMISSILERIGHT", sc2::UNIT_TYPEID::LOKIHURRICANEMISSILERIGHT) + .value("LOKIYAMATOWEAPON", sc2::UNIT_TYPEID::LOKIYAMATOWEAPON) + .value("LONGBOLTMISSILEWEAPON", sc2::UNIT_TYPEID::LONGBOLTMISSILEWEAPON) + .value("LURKER", sc2::UNIT_TYPEID::LURKER) + .value("LURKERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::LURKERACGLUESCREENDUMMY) + .value("LURKERBURROWED", sc2::UNIT_TYPEID::LURKERBURROWED) + .value("LURKERDEN", sc2::UNIT_TYPEID::LURKERDEN) + .value("LURKEREGG", sc2::UNIT_TYPEID::LURKEREGG) + .value("LYOTE", sc2::UNIT_TYPEID::LYOTE) + .value("MAAR", sc2::UNIT_TYPEID::MAAR) + .value("MAARWARPINUNIT", sc2::UNIT_TYPEID::MAARWARPINUNIT) + .value("MAINCELLBLOCK", sc2::UNIT_TYPEID::MAINCELLBLOCK) + .value("MARAUDERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MARAUDERACGLUESCREENDUMMY) + .value("MARAUDERCOMMANDOACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MARAUDERCOMMANDOACGLUESCREENDUMMY) + .value("MARAUDERMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MARAUDERMENGSKACGLUESCREENDUMMY) + .value("MARINEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MARINEACGLUESCREENDUMMY) + .value("MARSARABRIDGEBLUR", sc2::UNIT_TYPEID::MARSARABRIDGEBLUR) + .value("MARSARABRIDGEBRUL", sc2::UNIT_TYPEID::MARSARABRIDGEBRUL) + .value("MECHABANELINGACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MECHABANELINGACGLUESCREENDUMMY) + .value("MECHABATTLECARRIERLORDACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MECHABATTLECARRIERLORDACGLUESCREENDUMMY) + .value("MECHACORRUPTORACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MECHACORRUPTORACGLUESCREENDUMMY) + .value("MECHAHYDRALISKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MECHAHYDRALISKACGLUESCREENDUMMY) + .value("MECHAINFESTORACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MECHAINFESTORACGLUESCREENDUMMY) + .value("MECHALURKERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MECHALURKERACGLUESCREENDUMMY) + .value("MECHAOVERSEERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MECHAOVERSEERACGLUESCREENDUMMY) + .value("MECHASPINECRAWLERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MECHASPINECRAWLERACGLUESCREENDUMMY) + .value("MECHASPORECRAWLERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MECHASPORECRAWLERACGLUESCREENDUMMY) + .value("MECHAULTRALISKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MECHAULTRALISKACGLUESCREENDUMMY) + .value("MECHAZERGLINGACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MECHAZERGLINGACGLUESCREENDUMMY) + .value("MEDIC", sc2::UNIT_TYPEID::MEDIC) + .value("MEDICACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MEDICACGLUESCREENDUMMY) + .value("MEDIVACMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MEDIVACMENGSKACGLUESCREENDUMMY) + .value("MENGSKHOLOGRAMBILLBOARD", sc2::UNIT_TYPEID::MENGSKHOLOGRAMBILLBOARD) + .value("MENGSKSTATUE", sc2::UNIT_TYPEID::MENGSKSTATUE) + .value("MENGSKSTATUEALONE", sc2::UNIT_TYPEID::MENGSKSTATUEALONE) + .value("MERCCOMPOUND", sc2::UNIT_TYPEID::MERCCOMPOUND) + .value("MERCENARYFORTRESS", sc2::UNIT_TYPEID::MERCENARYFORTRESS) + .value("METALGATEDIAGONALBLUR", sc2::UNIT_TYPEID::METALGATEDIAGONALBLUR) + .value("METALGATEDIAGONALBLURLOWERED", sc2::UNIT_TYPEID::METALGATEDIAGONALBLURLOWERED) + .value("METALGATEDIAGONALULBR", sc2::UNIT_TYPEID::METALGATEDIAGONALULBR) + .value("METALGATEDIAGONALULBRLOWERED", sc2::UNIT_TYPEID::METALGATEDIAGONALULBRLOWERED) + .value("METALGATESTRAIGHTHORIZONTAL", sc2::UNIT_TYPEID::METALGATESTRAIGHTHORIZONTAL) + .value("METALGATESTRAIGHTHORIZONTALBF", sc2::UNIT_TYPEID::METALGATESTRAIGHTHORIZONTALBF) + .value("METALGATESTRAIGHTHORIZONTALBFLOWERED", sc2::UNIT_TYPEID::METALGATESTRAIGHTHORIZONTALBFLOWERED) + .value("METALGATESTRAIGHTHORIZONTALLOWERED", sc2::UNIT_TYPEID::METALGATESTRAIGHTHORIZONTALLOWERED) + .value("METALGATESTRAIGHTVERTICAL", sc2::UNIT_TYPEID::METALGATESTRAIGHTVERTICAL) + .value("METALGATESTRAIGHTVERTICALLF", sc2::UNIT_TYPEID::METALGATESTRAIGHTVERTICALLF) + .value("METALGATESTRAIGHTVERTICALLFLOWERED", sc2::UNIT_TYPEID::METALGATESTRAIGHTVERTICALLFLOWERED) + .value("METALGATESTRAIGHTVERTICALLOWERED", sc2::UNIT_TYPEID::METALGATESTRAIGHTVERTICALLOWERED) + .value("MINDSIPHONRETURNWEAPON", sc2::UNIT_TYPEID::MINDSIPHONRETURNWEAPON) + .value("MINDSIPHONWEAPON", sc2::UNIT_TYPEID::MINDSIPHONWEAPON) + .value("MINERALCRYSTAL", sc2::UNIT_TYPEID::MINERALCRYSTAL) + .value("MINERALFIELDOPAQUE", sc2::UNIT_TYPEID::MINERALFIELDOPAQUE) + .value("MINERALFIELDOPAQUE900", sc2::UNIT_TYPEID::MINERALFIELDOPAQUE900) + .value("MINERMALE", sc2::UNIT_TYPEID::MINERMALE) + .value("MISSILETURRETACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MISSILETURRETACGLUESCREENDUMMY) + .value("MISSILETURRETMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MISSILETURRETMENGSKACGLUESCREENDUMMY) + .value("MOHANDAR", sc2::UNIT_TYPEID::MOHANDAR) + .value("MONLYTHARTIFACTFORCEFIELD", sc2::UNIT_TYPEID::MONLYTHARTIFACTFORCEFIELD) + .value("MONLYTHFORCEFIELDSTATUE", sc2::UNIT_TYPEID::MONLYTHFORCEFIELDSTATUE) + .value("MONOLITH", sc2::UNIT_TYPEID::MONOLITH) + .value("MOOPY", sc2::UNIT_TYPEID::MOOPY) + .value("MOTHERSHIPCOREWEAPONWEAPON", sc2::UNIT_TYPEID::MOTHERSHIPCOREWEAPONWEAPON) + .value("MULTIKILLOBJECT", sc2::UNIT_TYPEID::MULTIKILLOBJECT) + .value("MURLOCMARINE", sc2::UNIT_TYPEID::MURLOCMARINE) + .value("MUTALISKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MUTALISKACGLUESCREENDUMMY) + .value("MUTALISKBROODLORDACGLUESCREENDUMMY", sc2::UNIT_TYPEID::MUTALISKBROODLORDACGLUESCREENDUMMY) + .value("MUTALISKEGG", sc2::UNIT_TYPEID::MUTALISKEGG) + .value("MUTALISKEGGMISSILE", sc2::UNIT_TYPEID::MUTALISKEGGMISSILE) + .value("NATURALGAS", sc2::UNIT_TYPEID::NATURALGAS) + .value("NATURALMINERALS", sc2::UNIT_TYPEID::NATURALMINERALS) + .value("NATURALMINERALSRED", sc2::UNIT_TYPEID::NATURALMINERALSRED) + .value("NEEDLESPINESWEAPON", sc2::UNIT_TYPEID::NEEDLESPINESWEAPON) + .value("NEURALPARASITETENTACLEMISSILE", sc2::UNIT_TYPEID::NEURALPARASITETENTACLEMISSILE) + .value("NEURALPARASITEWEAPON", sc2::UNIT_TYPEID::NEURALPARASITEWEAPON) + .value("NEUTRAL_BATTLESTATIONMINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_BATTLESTATIONMINERALFIELD) + .value("NEUTRAL_BATTLESTATIONMINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_BATTLESTATIONMINERALFIELD750) + .value("NEUTRAL_COLLAPSIBLEROCKTOWERDEBRIS", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLEROCKTOWERDEBRIS) + .value("NEUTRAL_COLLAPSIBLEROCKTOWERDIAGONAL", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLEROCKTOWERDIAGONAL) + .value("NEUTRAL_COLLAPSIBLEROCKTOWERPUSHUNIT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLEROCKTOWERPUSHUNIT) + .value("NEUTRAL_COLLAPSIBLETERRANTOWERDEBRIS", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERDEBRIS) + .value("NEUTRAL_COLLAPSIBLETERRANTOWERDIAGONAL", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERDIAGONAL) + .value("NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNIT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNIT) + .value("NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNITRAMPLEFT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNITRAMPLEFT) + .value("NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNITRAMPRIGHT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERPUSHUNITRAMPRIGHT) + .value("NEUTRAL_COLLAPSIBLETERRANTOWERRAMPLEFT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERRAMPLEFT) + .value("NEUTRAL_COLLAPSIBLETERRANTOWERRAMPRIGHT", sc2::UNIT_TYPEID::NEUTRAL_COLLAPSIBLETERRANTOWERRAMPRIGHT) + .value("NEUTRAL_DEBRISRAMPLEFT", sc2::UNIT_TYPEID::NEUTRAL_DEBRISRAMPLEFT) + .value("NEUTRAL_DEBRISRAMPRIGHT", sc2::UNIT_TYPEID::NEUTRAL_DEBRISRAMPRIGHT) + .value("NEUTRAL_DESTRUCTIBLECITYDEBRIS6X6", sc2::UNIT_TYPEID::NEUTRAL_DESTRUCTIBLECITYDEBRIS6X6) + .value("NEUTRAL_DESTRUCTIBLEDEBRIS6X6", sc2::UNIT_TYPEID::NEUTRAL_DESTRUCTIBLEDEBRIS6X6) + .value("NEUTRAL_DESTRUCTIBLEDEBRISRAMPDIAGONALHUGEBLUR", sc2::UNIT_TYPEID::NEUTRAL_DESTRUCTIBLEDEBRISRAMPDIAGONALHUGEBLUR) + .value("NEUTRAL_DESTRUCTIBLEDEBRISRAMPDIAGONALHUGEULBR", sc2::UNIT_TYPEID::NEUTRAL_DESTRUCTIBLEDEBRISRAMPDIAGONALHUGEULBR) + .value("NEUTRAL_DESTRUCTIBLEROCK6X6", sc2::UNIT_TYPEID::NEUTRAL_DESTRUCTIBLEROCK6X6) + .value("NEUTRAL_DESTRUCTIBLEROCKEX1DIAGONALHUGEBLUR", sc2::UNIT_TYPEID::NEUTRAL_DESTRUCTIBLEROCKEX1DIAGONALHUGEBLUR) + .value("NEUTRAL_FORCEFIELD", sc2::UNIT_TYPEID::NEUTRAL_FORCEFIELD) + .value("NEUTRAL_KARAKFEMALE", sc2::UNIT_TYPEID::NEUTRAL_KARAKFEMALE) + .value("NEUTRAL_LABMINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_LABMINERALFIELD) + .value("NEUTRAL_LABMINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_LABMINERALFIELD750) + .value("NEUTRAL_MINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_MINERALFIELD) + .value("NEUTRAL_MINERALFIELD450", sc2::UNIT_TYPEID::NEUTRAL_MINERALFIELD450) + .value("NEUTRAL_MINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_MINERALFIELD750) + .value("NEUTRAL_PROTOSSVESPENEGEYSER", sc2::UNIT_TYPEID::NEUTRAL_PROTOSSVESPENEGEYSER) + .value("NEUTRAL_PURIFIERMINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_PURIFIERMINERALFIELD) + .value("NEUTRAL_PURIFIERMINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_PURIFIERMINERALFIELD750) + .value("NEUTRAL_PURIFIERRICHMINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_PURIFIERRICHMINERALFIELD) + .value("NEUTRAL_PURIFIERRICHMINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_PURIFIERRICHMINERALFIELD750) + .value("NEUTRAL_PURIFIERVESPENEGEYSER", sc2::UNIT_TYPEID::NEUTRAL_PURIFIERVESPENEGEYSER) + .value("NEUTRAL_RICHMINERALFIELD", sc2::UNIT_TYPEID::NEUTRAL_RICHMINERALFIELD) + .value("NEUTRAL_RICHMINERALFIELD750", sc2::UNIT_TYPEID::NEUTRAL_RICHMINERALFIELD750) + .value("NEUTRAL_RICHVESPENEGEYSER", sc2::UNIT_TYPEID::NEUTRAL_RICHVESPENEGEYSER) + .value("NEUTRAL_SCANTIPEDE", sc2::UNIT_TYPEID::NEUTRAL_SCANTIPEDE) + .value("NEUTRAL_SHAKURASVESPENEGEYSER", sc2::UNIT_TYPEID::NEUTRAL_SHAKURASVESPENEGEYSER) + .value("NEUTRAL_SPACEPLATFORMGEYSER", sc2::UNIT_TYPEID::NEUTRAL_SPACEPLATFORMGEYSER) + .value("NEUTRAL_UNBUILDABLEBRICKSDESTRUCTIBLE", sc2::UNIT_TYPEID::NEUTRAL_UNBUILDABLEBRICKSDESTRUCTIBLE) + .value("NEUTRAL_UNBUILDABLEPLATESDESTRUCTIBLE", sc2::UNIT_TYPEID::NEUTRAL_UNBUILDABLEPLATESDESTRUCTIBLE) + .value("NEUTRAL_UTILITYBOT", sc2::UNIT_TYPEID::NEUTRAL_UTILITYBOT) + .value("NEUTRAL_VESPENEGEYSER", sc2::UNIT_TYPEID::NEUTRAL_VESPENEGEYSER) + .value("NEUTRAL_XELNAGATOWER", sc2::UNIT_TYPEID::NEUTRAL_XELNAGATOWER) + .value("NEWFOLSOMPRISONENTRANCE", sc2::UNIT_TYPEID::NEWFOLSOMPRISONENTRANCE) + .value("NEWSARCTURUSINTERVIEWSET", sc2::UNIT_TYPEID::NEWSARCTURUSINTERVIEWSET) + .value("NEWSARCTURUSPRESSROOM", sc2::UNIT_TYPEID::NEWSARCTURUSPRESSROOM) + .value("NEWSMEINHOFFREFUGEECENTER", sc2::UNIT_TYPEID::NEWSMEINHOFFREFUGEECENTER) + .value("NEWSRAYNORLOGO", sc2::UNIT_TYPEID::NEWSRAYNORLOGO) + .value("NEWSTVEFFECT", sc2::UNIT_TYPEID::NEWSTVEFFECT) + .value("NOVA", sc2::UNIT_TYPEID::NOVA) + .value("NUKENOODLESCOMMERCIAL", sc2::UNIT_TYPEID::NUKENOODLESCOMMERCIAL) + .value("NUKEPACK", sc2::UNIT_TYPEID::NUKEPACK) + .value("NUKESILONOVA", sc2::UNIT_TYPEID::NUKESILONOVA) + .value("NYDUSCANALATTACKER", sc2::UNIT_TYPEID::NYDUSCANALATTACKER) + .value("NYDUSCANALATTACKERWEAPON", sc2::UNIT_TYPEID::NYDUSCANALATTACKERWEAPON) + .value("NYDUSCANALCREEPER", sc2::UNIT_TYPEID::NYDUSCANALCREEPER) + .value("NYDUSNETWORKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::NYDUSNETWORKACGLUESCREENDUMMY) + .value("NYDUSWORMLAVADEATH", sc2::UNIT_TYPEID::NYDUSWORMLAVADEATH) + .value("OBELISK", sc2::UNIT_TYPEID::OBELISK) + .value("OBSERVERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::OBSERVERACGLUESCREENDUMMY) + .value("OBSERVERFENIXACGLUESCREENDUMMY", sc2::UNIT_TYPEID::OBSERVERFENIXACGLUESCREENDUMMY) + .value("ODIN", sc2::UNIT_TYPEID::ODIN) + .value("ODINAAWEAPON", sc2::UNIT_TYPEID::ODINAAWEAPON) + .value("ODINBUILD", sc2::UNIT_TYPEID::ODINBUILD) + .value("ODINWRECKAGE", sc2::UNIT_TYPEID::ODINWRECKAGE) + .value("OMEGALISK", sc2::UNIT_TYPEID::OMEGALISK) + .value("OMEGALISKBURROWED", sc2::UNIT_TYPEID::OMEGALISKBURROWED) + .value("OMEGANETWORKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::OMEGANETWORKACGLUESCREENDUMMY) + .value("ORACLEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ORACLEACGLUESCREENDUMMY) + .value("ORACLEWEAPON", sc2::UNIT_TYPEID::ORACLEWEAPON) + .value("ORBITALCOMMANDACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ORBITALCOMMANDACGLUESCREENDUMMY) + .value("OVERLORDGENERATECREEPKEYBIND", sc2::UNIT_TYPEID::OVERLORDGENERATECREEPKEYBIND) + .value("OVERMIND", sc2::UNIT_TYPEID::OVERMIND) + .value("OVERMINDREMAINS", sc2::UNIT_TYPEID::OVERMINDREMAINS) + .value("OVERSEERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::OVERSEERACGLUESCREENDUMMY) + .value("OVERSEERZAGARAACGLUESCREENDUMMY", sc2::UNIT_TYPEID::OVERSEERZAGARAACGLUESCREENDUMMY) + .value("PALLETGAS", sc2::UNIT_TYPEID::PALLETGAS) + .value("PALLETMINERALS", sc2::UNIT_TYPEID::PALLETMINERALS) + .value("PARASITESPOREWEAPON", sc2::UNIT_TYPEID::PARASITESPOREWEAPON) + .value("PARASITICBOMBMISSILE", sc2::UNIT_TYPEID::PARASITICBOMBMISSILE) + .value("PARASITICBOMBRELAYDUMMY", sc2::UNIT_TYPEID::PARASITICBOMBRELAYDUMMY) + .value("PATHINGBLOCKER1X1", sc2::UNIT_TYPEID::PATHINGBLOCKER1X1) + .value("PATHINGBLOCKER2X2", sc2::UNIT_TYPEID::PATHINGBLOCKER2X2) + .value("PATHINGBLOCKERRADIUS1", sc2::UNIT_TYPEID::PATHINGBLOCKERRADIUS1) + .value("PERDITIONTURRET", sc2::UNIT_TYPEID::PERDITIONTURRET) + .value("PERDITIONTURRETACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PERDITIONTURRETACGLUESCREENDUMMY) + .value("PERDITIONTURRETUNDERGROUND", sc2::UNIT_TYPEID::PERDITIONTURRETUNDERGROUND) + .value("PERMANENTCREEPBLOCKER1X1", sc2::UNIT_TYPEID::PERMANENTCREEPBLOCKER1X1) + .value("PHOENIXAIURACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PHOENIXAIURACGLUESCREENDUMMY) + .value("PHOENIXPURIFIERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PHOENIXPURIFIERACGLUESCREENDUMMY) + .value("PHOTONCANNONACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PHOTONCANNONACGLUESCREENDUMMY) + .value("PHOTONCANNONFENIXACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PHOTONCANNONFENIXACGLUESCREENDUMMY) + .value("PHOTONCANNONTALDARIMACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PHOTONCANNONTALDARIMACGLUESCREENDUMMY) + .value("PHOTONCANNONWEAPON", sc2::UNIT_TYPEID::PHOTONCANNONWEAPON) + .value("PHYSICSCAPSULE", sc2::UNIT_TYPEID::PHYSICSCAPSULE) + .value("PHYSICSCUBE", sc2::UNIT_TYPEID::PHYSICSCUBE) + .value("PHYSICSCYLINDER", sc2::UNIT_TYPEID::PHYSICSCYLINDER) + .value("PHYSICSKNOT", sc2::UNIT_TYPEID::PHYSICSKNOT) + .value("PHYSICSL", sc2::UNIT_TYPEID::PHYSICSL) + .value("PHYSICSPRIMITIVES", sc2::UNIT_TYPEID::PHYSICSPRIMITIVES) + .value("PHYSICSSPHERE", sc2::UNIT_TYPEID::PHYSICSSPHERE) + .value("PHYSICSSTAR", sc2::UNIT_TYPEID::PHYSICSSTAR) + .value("PICKUPCHRONORIFTCHARGE", sc2::UNIT_TYPEID::PICKUPCHRONORIFTCHARGE) + .value("PICKUPCHRONORIFTDEVICE", sc2::UNIT_TYPEID::PICKUPCHRONORIFTDEVICE) + .value("PICKUPENERGY100", sc2::UNIT_TYPEID::PICKUPENERGY100) + .value("PICKUPENERGY25", sc2::UNIT_TYPEID::PICKUPENERGY25) + .value("PICKUPENERGY50", sc2::UNIT_TYPEID::PICKUPENERGY50) + .value("PICKUPENERGYFULL", sc2::UNIT_TYPEID::PICKUPENERGYFULL) + .value("PICKUPGRENADES", sc2::UNIT_TYPEID::PICKUPGRENADES) + .value("PICKUPHEALTH100", sc2::UNIT_TYPEID::PICKUPHEALTH100) + .value("PICKUPHEALTH25", sc2::UNIT_TYPEID::PICKUPHEALTH25) + .value("PICKUPHEALTH50", sc2::UNIT_TYPEID::PICKUPHEALTH50) + .value("PICKUPHEALTHFULL", sc2::UNIT_TYPEID::PICKUPHEALTHFULL) + .value("PICKUPMANARECHARGE", sc2::UNIT_TYPEID::PICKUPMANARECHARGE) + .value("PICKUPMEDICRECHARGE", sc2::UNIT_TYPEID::PICKUPMEDICRECHARGE) + .value("PICKUPMINES", sc2::UNIT_TYPEID::PICKUPMINES) + .value("PICKUPPALLETGAS", sc2::UNIT_TYPEID::PICKUPPALLETGAS) + .value("PICKUPPALLETMINERALS", sc2::UNIT_TYPEID::PICKUPPALLETMINERALS) + .value("PICKUPPLASMAGUN", sc2::UNIT_TYPEID::PICKUPPLASMAGUN) + .value("PICKUPPLASMAROUNDS", sc2::UNIT_TYPEID::PICKUPPLASMAROUNDS) + .value("PICKUPPSISTORM", sc2::UNIT_TYPEID::PICKUPPSISTORM) + .value("PICKUPRESTORATIONCHARGE", sc2::UNIT_TYPEID::PICKUPRESTORATIONCHARGE) + .value("PICKUPSCRAPSALVAGE1X1", sc2::UNIT_TYPEID::PICKUPSCRAPSALVAGE1X1) + .value("PICKUPSCRAPSALVAGE2X2", sc2::UNIT_TYPEID::PICKUPSCRAPSALVAGE2X2) + .value("PICKUPSCRAPSALVAGE3X3", sc2::UNIT_TYPEID::PICKUPSCRAPSALVAGE3X3) + .value("PLASMATORPEDOESWEAPON", sc2::UNIT_TYPEID::PLASMATORPEDOESWEAPON) + .value("PLATFORMCONNECTOR", sc2::UNIT_TYPEID::PLATFORMCONNECTOR) + .value("POINTDEFENSEDRONERELEASEWEAPON", sc2::UNIT_TYPEID::POINTDEFENSEDRONERELEASEWEAPON) + .value("PORTCITY_BRIDGE_UNITE10", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITE10) + .value("PORTCITY_BRIDGE_UNITE10OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITE10OUT) + .value("PORTCITY_BRIDGE_UNITE12", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITE12) + .value("PORTCITY_BRIDGE_UNITE12OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITE12OUT) + .value("PORTCITY_BRIDGE_UNITE8", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITE8) + .value("PORTCITY_BRIDGE_UNITE8OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITE8OUT) + .value("PORTCITY_BRIDGE_UNITN10", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITN10) + .value("PORTCITY_BRIDGE_UNITN10OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITN10OUT) + .value("PORTCITY_BRIDGE_UNITN12", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITN12) + .value("PORTCITY_BRIDGE_UNITN12OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITN12OUT) + .value("PORTCITY_BRIDGE_UNITN8", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITN8) + .value("PORTCITY_BRIDGE_UNITN8OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITN8OUT) + .value("PORTCITY_BRIDGE_UNITNE10", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNE10) + .value("PORTCITY_BRIDGE_UNITNE10OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNE10OUT) + .value("PORTCITY_BRIDGE_UNITNE12", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNE12) + .value("PORTCITY_BRIDGE_UNITNE12OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNE12OUT) + .value("PORTCITY_BRIDGE_UNITNE8", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNE8) + .value("PORTCITY_BRIDGE_UNITNE8OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNE8OUT) + .value("PORTCITY_BRIDGE_UNITNW10", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNW10) + .value("PORTCITY_BRIDGE_UNITNW10OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNW10OUT) + .value("PORTCITY_BRIDGE_UNITNW12", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNW12) + .value("PORTCITY_BRIDGE_UNITNW12OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNW12OUT) + .value("PORTCITY_BRIDGE_UNITNW8", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNW8) + .value("PORTCITY_BRIDGE_UNITNW8OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITNW8OUT) + .value("PORTCITY_BRIDGE_UNITS10", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITS10) + .value("PORTCITY_BRIDGE_UNITS10OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITS10OUT) + .value("PORTCITY_BRIDGE_UNITS12", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITS12) + .value("PORTCITY_BRIDGE_UNITS12OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITS12OUT) + .value("PORTCITY_BRIDGE_UNITS8", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITS8) + .value("PORTCITY_BRIDGE_UNITS8OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITS8OUT) + .value("PORTCITY_BRIDGE_UNITSE10", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSE10) + .value("PORTCITY_BRIDGE_UNITSE10OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSE10OUT) + .value("PORTCITY_BRIDGE_UNITSE12", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSE12) + .value("PORTCITY_BRIDGE_UNITSE12OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSE12OUT) + .value("PORTCITY_BRIDGE_UNITSE8", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSE8) + .value("PORTCITY_BRIDGE_UNITSE8OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSE8OUT) + .value("PORTCITY_BRIDGE_UNITSW10", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSW10) + .value("PORTCITY_BRIDGE_UNITSW10OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSW10OUT) + .value("PORTCITY_BRIDGE_UNITSW12", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSW12) + .value("PORTCITY_BRIDGE_UNITSW12OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSW12OUT) + .value("PORTCITY_BRIDGE_UNITSW8", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSW8) + .value("PORTCITY_BRIDGE_UNITSW8OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITSW8OUT) + .value("PORTCITY_BRIDGE_UNITW10", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITW10) + .value("PORTCITY_BRIDGE_UNITW10OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITW10OUT) + .value("PORTCITY_BRIDGE_UNITW12", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITW12) + .value("PORTCITY_BRIDGE_UNITW12OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITW12OUT) + .value("PORTCITY_BRIDGE_UNITW8", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITW8) + .value("PORTCITY_BRIDGE_UNITW8OUT", sc2::UNIT_TYPEID::PORTCITY_BRIDGE_UNITW8OUT) + .value("PORTJUNKER", sc2::UNIT_TYPEID::PORTJUNKER) + .value("PREDATOR", sc2::UNIT_TYPEID::PREDATOR) + .value("PRESERVERA", sc2::UNIT_TYPEID::PRESERVERA) + .value("PRESERVERB", sc2::UNIT_TYPEID::PRESERVERB) + .value("PRESERVERBASE", sc2::UNIT_TYPEID::PRESERVERBASE) + .value("PRESERVERC", sc2::UNIT_TYPEID::PRESERVERC) + .value("PRESERVERPRISON", sc2::UNIT_TYPEID::PRESERVERPRISON) + .value("PRIMALGUARDIANACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PRIMALGUARDIANACGLUESCREENDUMMY) + .value("PRIMALHYDRALISKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PRIMALHYDRALISKACGLUESCREENDUMMY) + .value("PRIMALIMPALERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PRIMALIMPALERACGLUESCREENDUMMY) + .value("PRIMALMUTALISKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PRIMALMUTALISKACGLUESCREENDUMMY) + .value("PRIMALROACHACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PRIMALROACHACGLUESCREENDUMMY) + .value("PRIMALSWARMHOSTACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PRIMALSWARMHOSTACGLUESCREENDUMMY) + .value("PRIMALULTRALISKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PRIMALULTRALISKACGLUESCREENDUMMY) + .value("PRIMALWURMACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PRIMALWURMACGLUESCREENDUMMY) + .value("PRIMALZERGLINGACGLUESCREENDUMMY", sc2::UNIT_TYPEID::PRIMALZERGLINGACGLUESCREENDUMMY) + .value("PRISONERCIVILIAN", sc2::UNIT_TYPEID::PRISONERCIVILIAN) + .value("PRISONERSPECTRE", sc2::UNIT_TYPEID::PRISONERSPECTRE) + .value("PRISONZEALOT", sc2::UNIT_TYPEID::PRISONZEALOT) + .value("PROTOSSCRATES", sc2::UNIT_TYPEID::PROTOSSCRATES) + .value("PROTOSSPSIELEMENTS", sc2::UNIT_TYPEID::PROTOSSPSIELEMENTS) + .value("PROTOSSRELIC", sc2::UNIT_TYPEID::PROTOSSRELIC) + .value("PROTOSSSNAKESEGMENTDEMO", sc2::UNIT_TYPEID::PROTOSSSNAKESEGMENTDEMO) + .value("PROTOSS_ADEPT", sc2::UNIT_TYPEID::PROTOSS_ADEPT) + .value("PROTOSS_ADEPTPHASESHIFT", sc2::UNIT_TYPEID::PROTOSS_ADEPTPHASESHIFT) + .value("PROTOSS_ARCHON", sc2::UNIT_TYPEID::PROTOSS_ARCHON) + .value("PROTOSS_ASSIMILATOR", sc2::UNIT_TYPEID::PROTOSS_ASSIMILATOR) + .value("PROTOSS_ASSIMILATORRICH", sc2::UNIT_TYPEID::PROTOSS_ASSIMILATORRICH) + .value("PROTOSS_CARRIER", sc2::UNIT_TYPEID::PROTOSS_CARRIER) + .value("PROTOSS_COLOSSUS", sc2::UNIT_TYPEID::PROTOSS_COLOSSUS) + .value("PROTOSS_CYBERNETICSCORE", sc2::UNIT_TYPEID::PROTOSS_CYBERNETICSCORE) + .value("PROTOSS_DARKSHRINE", sc2::UNIT_TYPEID::PROTOSS_DARKSHRINE) + .value("PROTOSS_DARKTEMPLAR", sc2::UNIT_TYPEID::PROTOSS_DARKTEMPLAR) + .value("PROTOSS_DISRUPTOR", sc2::UNIT_TYPEID::PROTOSS_DISRUPTOR) + .value("PROTOSS_DISRUPTORPHASED", sc2::UNIT_TYPEID::PROTOSS_DISRUPTORPHASED) + .value("PROTOSS_FLEETBEACON", sc2::UNIT_TYPEID::PROTOSS_FLEETBEACON) + .value("PROTOSS_FORGE", sc2::UNIT_TYPEID::PROTOSS_FORGE) + .value("PROTOSS_GATEWAY", sc2::UNIT_TYPEID::PROTOSS_GATEWAY) + .value("PROTOSS_HIGHTEMPLAR", sc2::UNIT_TYPEID::PROTOSS_HIGHTEMPLAR) + .value("PROTOSS_IMMORTAL", sc2::UNIT_TYPEID::PROTOSS_IMMORTAL) + .value("PROTOSS_INTERCEPTOR", sc2::UNIT_TYPEID::PROTOSS_INTERCEPTOR) + .value("PROTOSS_MOTHERSHIP", sc2::UNIT_TYPEID::PROTOSS_MOTHERSHIP) + .value("PROTOSS_MOTHERSHIPCORE", sc2::UNIT_TYPEID::PROTOSS_MOTHERSHIPCORE) + .value("PROTOSS_NEXUS", sc2::UNIT_TYPEID::PROTOSS_NEXUS) + .value("PROTOSS_OBSERVER", sc2::UNIT_TYPEID::PROTOSS_OBSERVER) + .value("PROTOSS_OBSERVERSIEGEMODE", sc2::UNIT_TYPEID::PROTOSS_OBSERVERSIEGEMODE) + .value("PROTOSS_ORACLE", sc2::UNIT_TYPEID::PROTOSS_ORACLE) + .value("PROTOSS_ORACLESTASISTRAP", sc2::UNIT_TYPEID::PROTOSS_ORACLESTASISTRAP) + .value("PROTOSS_PHOENIX", sc2::UNIT_TYPEID::PROTOSS_PHOENIX) + .value("PROTOSS_PHOTONCANNON", sc2::UNIT_TYPEID::PROTOSS_PHOTONCANNON) + .value("PROTOSS_PROBE", sc2::UNIT_TYPEID::PROTOSS_PROBE) + .value("PROTOSS_PYLON", sc2::UNIT_TYPEID::PROTOSS_PYLON) + .value("PROTOSS_PYLONOVERCHARGED", sc2::UNIT_TYPEID::PROTOSS_PYLONOVERCHARGED) + .value("PROTOSS_ROBOTICSBAY", sc2::UNIT_TYPEID::PROTOSS_ROBOTICSBAY) + .value("PROTOSS_ROBOTICSFACILITY", sc2::UNIT_TYPEID::PROTOSS_ROBOTICSFACILITY) + .value("PROTOSS_SENTRY", sc2::UNIT_TYPEID::PROTOSS_SENTRY) + .value("PROTOSS_SHIELDBATTERY", sc2::UNIT_TYPEID::PROTOSS_SHIELDBATTERY) + .value("PROTOSS_STALKER", sc2::UNIT_TYPEID::PROTOSS_STALKER) + .value("PROTOSS_STARGATE", sc2::UNIT_TYPEID::PROTOSS_STARGATE) + .value("PROTOSS_TEMPEST", sc2::UNIT_TYPEID::PROTOSS_TEMPEST) + .value("PROTOSS_TEMPLARARCHIVE", sc2::UNIT_TYPEID::PROTOSS_TEMPLARARCHIVE) + .value("PROTOSS_TWILIGHTCOUNCIL", sc2::UNIT_TYPEID::PROTOSS_TWILIGHTCOUNCIL) + .value("PROTOSS_VOIDRAY", sc2::UNIT_TYPEID::PROTOSS_VOIDRAY) + .value("PROTOSS_WARPGATE", sc2::UNIT_TYPEID::PROTOSS_WARPGATE) + .value("PROTOSS_WARPPRISM", sc2::UNIT_TYPEID::PROTOSS_WARPPRISM) + .value("PROTOSS_WARPPRISMPHASING", sc2::UNIT_TYPEID::PROTOSS_WARPPRISMPHASING) + .value("PROTOSS_ZEALOT", sc2::UNIT_TYPEID::PROTOSS_ZEALOT) + .value("PSIDISRUPTOR", sc2::UNIT_TYPEID::PSIDISRUPTOR) + .value("PSIINDOCTRINATOR", sc2::UNIT_TYPEID::PSIINDOCTRINATOR) + .value("PSIOPSCOMMERCIAL", sc2::UNIT_TYPEID::PSIOPSCOMMERCIAL) + .value("PSISHOCKWEAPON", sc2::UNIT_TYPEID::PSISHOCKWEAPON) + .value("PUNISHERGRENADESLMWEAPON", sc2::UNIT_TYPEID::PUNISHERGRENADESLMWEAPON) + .value("PURIFIER", sc2::UNIT_TYPEID::PURIFIER) + .value("PURIFIERBLASTMARKUNIT", sc2::UNIT_TYPEID::PURIFIERBLASTMARKUNIT) + .value("PYGALISK", sc2::UNIT_TYPEID::PYGALISK) + .value("PYGALISKCOCOON", sc2::UNIT_TYPEID::PYGALISKCOCOON) + .value("QUEENCOOPACGLUESCREENDUMMY", sc2::UNIT_TYPEID::QUEENCOOPACGLUESCREENDUMMY) + .value("QUEENMP", sc2::UNIT_TYPEID::QUEENMP) + .value("QUEENMPENSNAREMISSILE", sc2::UNIT_TYPEID::QUEENMPENSNAREMISSILE) + .value("QUEENMPSPAWNBROODLINGSMISSILE", sc2::UNIT_TYPEID::QUEENMPSPAWNBROODLINGSMISSILE) + .value("QUEENZAGARAACGLUESCREENDUMMY", sc2::UNIT_TYPEID::QUEENZAGARAACGLUESCREENDUMMY) + .value("QUESTIONMARK", sc2::UNIT_TYPEID::QUESTIONMARK) + .value("RAIDLIBERATORACGLUESCREENDUMMY", sc2::UNIT_TYPEID::RAIDLIBERATORACGLUESCREENDUMMY) + .value("RAILGUNTURRETACGLUESCREENDUMMY", sc2::UNIT_TYPEID::RAILGUNTURRETACGLUESCREENDUMMY) + .value("RAPTORACGLUESCREENDUMMY", sc2::UNIT_TYPEID::RAPTORACGLUESCREENDUMMY) + .value("RAVAGERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::RAVAGERACGLUESCREENDUMMY) + .value("RAVAGERBURROWED", sc2::UNIT_TYPEID::RAVAGERBURROWED) + .value("RAVAGERCORROSIVEBILEMISSILE", sc2::UNIT_TYPEID::RAVAGERCORROSIVEBILEMISSILE) + .value("RAVAGERWEAPONMISSILE", sc2::UNIT_TYPEID::RAVAGERWEAPONMISSILE) + .value("RAVASAURACGLUESCREENDUMMY", sc2::UNIT_TYPEID::RAVASAURACGLUESCREENDUMMY) + .value("RAVENREPAIRDRONE", sc2::UNIT_TYPEID::RAVENREPAIRDRONE) + .value("RAVENREPAIRDRONERELEASEWEAPON", sc2::UNIT_TYPEID::RAVENREPAIRDRONERELEASEWEAPON) + .value("RAVENSCRAMBLERMISSILE", sc2::UNIT_TYPEID::RAVENSCRAMBLERMISSILE) + .value("RAVENSHREDDERMISSILEWEAPON", sc2::UNIT_TYPEID::RAVENSHREDDERMISSILEWEAPON) + .value("RAVENTYPEIIACGLUESCREENDUMMY", sc2::UNIT_TYPEID::RAVENTYPEIIACGLUESCREENDUMMY) + .value("RAYNOR", sc2::UNIT_TYPEID::RAYNOR) + .value("RAYNOR01", sc2::UNIT_TYPEID::RAYNOR01) + .value("RAYNORCOMMANDO", sc2::UNIT_TYPEID::RAYNORCOMMANDO) + .value("REAPERPLACEHOLDER", sc2::UNIT_TYPEID::REAPERPLACEHOLDER) + .value("REAPERPLACEMENT", sc2::UNIT_TYPEID::REAPERPLACEMENT) + .value("REAVERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::REAVERACGLUESCREENDUMMY) + .value("REDSTONELAVACRITTER", sc2::UNIT_TYPEID::REDSTONELAVACRITTER) + .value("REDSTONELAVACRITTERBURROWED", sc2::UNIT_TYPEID::REDSTONELAVACRITTERBURROWED) + .value("REDSTONELAVACRITTERINJURED", sc2::UNIT_TYPEID::REDSTONELAVACRITTERINJURED) + .value("REDSTONELAVACRITTERINJUREDBURROWED", sc2::UNIT_TYPEID::REDSTONELAVACRITTERINJUREDBURROWED) + .value("RELEASEINTERCEPTORSBEACON", sc2::UNIT_TYPEID::RELEASEINTERCEPTORSBEACON) + .value("RENEGADELONGBOLTMISSILEWEAPON", sc2::UNIT_TYPEID::RENEGADELONGBOLTMISSILEWEAPON) + .value("RENEGADEMISSILETURRET", sc2::UNIT_TYPEID::RENEGADEMISSILETURRET) + .value("REPLICANT", sc2::UNIT_TYPEID::REPLICANT) + .value("REPTILECRATE", sc2::UNIT_TYPEID::REPTILECRATE) + .value("REPULSERFIELD10", sc2::UNIT_TYPEID::REPULSERFIELD10) + .value("REPULSERFIELD12", sc2::UNIT_TYPEID::REPULSERFIELD12) + .value("REPULSERFIELD6", sc2::UNIT_TYPEID::REPULSERFIELD6) + .value("REPULSERFIELD8", sc2::UNIT_TYPEID::REPULSERFIELD8) + .value("REPULSORCANNONWEAPON", sc2::UNIT_TYPEID::REPULSORCANNONWEAPON) + .value("RESOURCEBLOCKER", sc2::UNIT_TYPEID::RESOURCEBLOCKER) + .value("RIPFIELDGENERATOR", sc2::UNIT_TYPEID::RIPFIELDGENERATOR) + .value("RIPFIELDGENERATORSMALL", sc2::UNIT_TYPEID::RIPFIELDGENERATORSMALL) + .value("ROACHACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ROACHACGLUESCREENDUMMY) + .value("ROACHVILEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ROACHVILEACGLUESCREENDUMMY) + .value("ROCKS2X2NONCONJOINED", sc2::UNIT_TYPEID::ROCKS2X2NONCONJOINED) + .value("ROUGHTERRAIN", sc2::UNIT_TYPEID::ROUGHTERRAIN) + .value("SCIENCEFACILITY", sc2::UNIT_TYPEID::SCIENCEFACILITY) + .value("SCIENCEVESSEL", sc2::UNIT_TYPEID::SCIENCEVESSEL) + .value("SCIENCEVESSELACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SCIENCEVESSELACGLUESCREENDUMMY) + .value("SCIENTIST", sc2::UNIT_TYPEID::SCIENTIST) + .value("SCOPETEST", sc2::UNIT_TYPEID::SCOPETEST) + .value("SCOURGE", sc2::UNIT_TYPEID::SCOURGE) + .value("SCOURGEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SCOURGEACGLUESCREENDUMMY) + .value("SCOURGEMP", sc2::UNIT_TYPEID::SCOURGEMP) + .value("SCOUT", sc2::UNIT_TYPEID::SCOUT) + .value("SCOUTACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SCOUTACGLUESCREENDUMMY) + .value("SCOUTAIRWEAPONLEFT", sc2::UNIT_TYPEID::SCOUTAIRWEAPONLEFT) + .value("SCOUTAIRWEAPONRIGHT", sc2::UNIT_TYPEID::SCOUTAIRWEAPONRIGHT) + .value("SCOUTMP", sc2::UNIT_TYPEID::SCOUTMP) + .value("SCOUTMPAIRWEAPONLEFT", sc2::UNIT_TYPEID::SCOUTMPAIRWEAPONLEFT) + .value("SCOUTMPAIRWEAPONRIGHT", sc2::UNIT_TYPEID::SCOUTMPAIRWEAPONRIGHT) + .value("SCRAPHUGE", sc2::UNIT_TYPEID::SCRAPHUGE) + .value("SCRAPSALVAGE1X1", sc2::UNIT_TYPEID::SCRAPSALVAGE1X1) + .value("SCRAPSALVAGE2X2", sc2::UNIT_TYPEID::SCRAPSALVAGE2X2) + .value("SCRAPSALVAGE3X3", sc2::UNIT_TYPEID::SCRAPSALVAGE3X3) + .value("SECRETDOCUMENTS", sc2::UNIT_TYPEID::SECRETDOCUMENTS) + .value("SECURITYGATEDIAGONALBLUR", sc2::UNIT_TYPEID::SECURITYGATEDIAGONALBLUR) + .value("SECURITYGATEDIAGONALBLURLOWERED", sc2::UNIT_TYPEID::SECURITYGATEDIAGONALBLURLOWERED) + .value("SECURITYGATEDIAGONALULBR", sc2::UNIT_TYPEID::SECURITYGATEDIAGONALULBR) + .value("SECURITYGATEDIAGONALULBRLOWERED", sc2::UNIT_TYPEID::SECURITYGATEDIAGONALULBRLOWERED) + .value("SECURITYGATESTRAIGHTHORIZONTAL", sc2::UNIT_TYPEID::SECURITYGATESTRAIGHTHORIZONTAL) + .value("SECURITYGATESTRAIGHTHORIZONTALBF", sc2::UNIT_TYPEID::SECURITYGATESTRAIGHTHORIZONTALBF) + .value("SECURITYGATESTRAIGHTHORIZONTALBFLOWERED", sc2::UNIT_TYPEID::SECURITYGATESTRAIGHTHORIZONTALBFLOWERED) + .value("SECURITYGATESTRAIGHTHORIZONTALLOWERED", sc2::UNIT_TYPEID::SECURITYGATESTRAIGHTHORIZONTALLOWERED) + .value("SECURITYGATESTRAIGHTVERTICAL", sc2::UNIT_TYPEID::SECURITYGATESTRAIGHTVERTICAL) + .value("SECURITYGATESTRAIGHTVERTICALLF", sc2::UNIT_TYPEID::SECURITYGATESTRAIGHTVERTICALLF) + .value("SECURITYGATESTRAIGHTVERTICALLFLOWERED", sc2::UNIT_TYPEID::SECURITYGATESTRAIGHTVERTICALLFLOWERED) + .value("SECURITYGATESTRAIGHTVERTICALLOWERED", sc2::UNIT_TYPEID::SECURITYGATESTRAIGHTVERTICALLOWERED) + .value("SEEKERMISSILE", sc2::UNIT_TYPEID::SEEKERMISSILE) + .value("SELENDIS", sc2::UNIT_TYPEID::SELENDIS) + .value("SELENDISINTERCEPTOR", sc2::UNIT_TYPEID::SELENDISINTERCEPTOR) + .value("SENTRYACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SENTRYACGLUESCREENDUMMY) + .value("SENTRYFENIXACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SENTRYFENIXACGLUESCREENDUMMY) + .value("SENTRYGUN", sc2::UNIT_TYPEID::SENTRYGUN) + .value("SENTRYGUNUNDERGROUND", sc2::UNIT_TYPEID::SENTRYGUNUNDERGROUND) + .value("SENTRYPURIFIERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SENTRYPURIFIERACGLUESCREENDUMMY) + .value("SENTRYTALDARIMACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SENTRYTALDARIMACGLUESCREENDUMMY) + .value("SHAKURASLIGHTBRIDGENE10", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENE10) + .value("SHAKURASLIGHTBRIDGENE10OUT", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENE10OUT) + .value("SHAKURASLIGHTBRIDGENE12", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENE12) + .value("SHAKURASLIGHTBRIDGENE12OUT", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENE12OUT) + .value("SHAKURASLIGHTBRIDGENE8", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENE8) + .value("SHAKURASLIGHTBRIDGENE8OUT", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENE8OUT) + .value("SHAKURASLIGHTBRIDGENW10", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENW10) + .value("SHAKURASLIGHTBRIDGENW10OUT", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENW10OUT) + .value("SHAKURASLIGHTBRIDGENW12", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENW12) + .value("SHAKURASLIGHTBRIDGENW12OUT", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENW12OUT) + .value("SHAKURASLIGHTBRIDGENW8", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENW8) + .value("SHAKURASLIGHTBRIDGENW8OUT", sc2::UNIT_TYPEID::SHAKURASLIGHTBRIDGENW8OUT) + .value("SHAPE4POINTSTAR", sc2::UNIT_TYPEID::SHAPE4POINTSTAR) + .value("SHAPE5POINTSTAR", sc2::UNIT_TYPEID::SHAPE5POINTSTAR) + .value("SHAPE6POINTSTAR", sc2::UNIT_TYPEID::SHAPE6POINTSTAR) + .value("SHAPE8POINTSTAR", sc2::UNIT_TYPEID::SHAPE8POINTSTAR) + .value("SHAPEAPPLE", sc2::UNIT_TYPEID::SHAPEAPPLE) + .value("SHAPEARROWPOINTER", sc2::UNIT_TYPEID::SHAPEARROWPOINTER) + .value("SHAPEBANANA", sc2::UNIT_TYPEID::SHAPEBANANA) + .value("SHAPEBASEBALL", sc2::UNIT_TYPEID::SHAPEBASEBALL) + .value("SHAPEBASEBALLBAT", sc2::UNIT_TYPEID::SHAPEBASEBALLBAT) + .value("SHAPEBASKETBALL", sc2::UNIT_TYPEID::SHAPEBASKETBALL) + .value("SHAPEBOWL", sc2::UNIT_TYPEID::SHAPEBOWL) + .value("SHAPEBOX", sc2::UNIT_TYPEID::SHAPEBOX) + .value("SHAPECAPSULE", sc2::UNIT_TYPEID::SHAPECAPSULE) + .value("SHAPECARROT", sc2::UNIT_TYPEID::SHAPECARROT) + .value("SHAPECASHLARGE", sc2::UNIT_TYPEID::SHAPECASHLARGE) + .value("SHAPECASHMEDIUM", sc2::UNIT_TYPEID::SHAPECASHMEDIUM) + .value("SHAPECASHSMALL", sc2::UNIT_TYPEID::SHAPECASHSMALL) + .value("SHAPECHERRY", sc2::UNIT_TYPEID::SHAPECHERRY) + .value("SHAPECONE", sc2::UNIT_TYPEID::SHAPECONE) + .value("SHAPECRESCENTMOON", sc2::UNIT_TYPEID::SHAPECRESCENTMOON) + .value("SHAPECUBE", sc2::UNIT_TYPEID::SHAPECUBE) + .value("SHAPECYLINDER", sc2::UNIT_TYPEID::SHAPECYLINDER) + .value("SHAPEDECAHEDRON", sc2::UNIT_TYPEID::SHAPEDECAHEDRON) + .value("SHAPEDIAMOND", sc2::UNIT_TYPEID::SHAPEDIAMOND) + .value("SHAPEDODECAHEDRON", sc2::UNIT_TYPEID::SHAPEDODECAHEDRON) + .value("SHAPEDOLLARSIGN", sc2::UNIT_TYPEID::SHAPEDOLLARSIGN) + .value("SHAPEEGG", sc2::UNIT_TYPEID::SHAPEEGG) + .value("SHAPEEUROSIGN", sc2::UNIT_TYPEID::SHAPEEUROSIGN) + .value("SHAPEFOOTBALL", sc2::UNIT_TYPEID::SHAPEFOOTBALL) + .value("SHAPEFOOTBALLCOLORED", sc2::UNIT_TYPEID::SHAPEFOOTBALLCOLORED) + .value("SHAPEGEMSTONE", sc2::UNIT_TYPEID::SHAPEGEMSTONE) + .value("SHAPEGOLFBALL", sc2::UNIT_TYPEID::SHAPEGOLFBALL) + .value("SHAPEGOLFCLUB", sc2::UNIT_TYPEID::SHAPEGOLFCLUB) + .value("SHAPEGRAPE", sc2::UNIT_TYPEID::SHAPEGRAPE) + .value("SHAPEHAND", sc2::UNIT_TYPEID::SHAPEHAND) + .value("SHAPEHEART", sc2::UNIT_TYPEID::SHAPEHEART) + .value("SHAPEHOCKEYPUCK", sc2::UNIT_TYPEID::SHAPEHOCKEYPUCK) + .value("SHAPEHOCKEYSTICK", sc2::UNIT_TYPEID::SHAPEHOCKEYSTICK) + .value("SHAPEHORSESHOE", sc2::UNIT_TYPEID::SHAPEHORSESHOE) + .value("SHAPEICOSAHEDRON", sc2::UNIT_TYPEID::SHAPEICOSAHEDRON) + .value("SHAPEJACK", sc2::UNIT_TYPEID::SHAPEJACK) + .value("SHAPELEMON", sc2::UNIT_TYPEID::SHAPELEMON) + .value("SHAPELEMONSMALL", sc2::UNIT_TYPEID::SHAPELEMONSMALL) + .value("SHAPEMONEYBAG", sc2::UNIT_TYPEID::SHAPEMONEYBAG) + .value("SHAPEO", sc2::UNIT_TYPEID::SHAPEO) + .value("SHAPEOCTAHEDRON", sc2::UNIT_TYPEID::SHAPEOCTAHEDRON) + .value("SHAPEORANGE", sc2::UNIT_TYPEID::SHAPEORANGE) + .value("SHAPEORANGESMALL", sc2::UNIT_TYPEID::SHAPEORANGESMALL) + .value("SHAPEPEANUT", sc2::UNIT_TYPEID::SHAPEPEANUT) + .value("SHAPEPEAR", sc2::UNIT_TYPEID::SHAPEPEAR) + .value("SHAPEPINEAPPLE", sc2::UNIT_TYPEID::SHAPEPINEAPPLE) + .value("SHAPEPLUSSIGN", sc2::UNIT_TYPEID::SHAPEPLUSSIGN) + .value("SHAPEPOUNDSIGN", sc2::UNIT_TYPEID::SHAPEPOUNDSIGN) + .value("SHAPEPYRAMID", sc2::UNIT_TYPEID::SHAPEPYRAMID) + .value("SHAPERAINBOW", sc2::UNIT_TYPEID::SHAPERAINBOW) + .value("SHAPEROUNDEDCUBE", sc2::UNIT_TYPEID::SHAPEROUNDEDCUBE) + .value("SHAPESADFACE", sc2::UNIT_TYPEID::SHAPESADFACE) + .value("SHAPESHAMROCK", sc2::UNIT_TYPEID::SHAPESHAMROCK) + .value("SHAPESMILEYFACE", sc2::UNIT_TYPEID::SHAPESMILEYFACE) + .value("SHAPESOCCERBALL", sc2::UNIT_TYPEID::SHAPESOCCERBALL) + .value("SHAPESPADE", sc2::UNIT_TYPEID::SHAPESPADE) + .value("SHAPESPHERE", sc2::UNIT_TYPEID::SHAPESPHERE) + .value("SHAPESTRAWBERRY", sc2::UNIT_TYPEID::SHAPESTRAWBERRY) + .value("SHAPETENNISBALL", sc2::UNIT_TYPEID::SHAPETENNISBALL) + .value("SHAPETETRAHEDRON", sc2::UNIT_TYPEID::SHAPETETRAHEDRON) + .value("SHAPETHICKTORUS", sc2::UNIT_TYPEID::SHAPETHICKTORUS) + .value("SHAPETHINTORUS", sc2::UNIT_TYPEID::SHAPETHINTORUS) + .value("SHAPETORUS", sc2::UNIT_TYPEID::SHAPETORUS) + .value("SHAPETREASURECHESTCLOSED", sc2::UNIT_TYPEID::SHAPETREASURECHESTCLOSED) + .value("SHAPETREASURECHESTOPEN", sc2::UNIT_TYPEID::SHAPETREASURECHESTOPEN) + .value("SHAPETUBE", sc2::UNIT_TYPEID::SHAPETUBE) + .value("SHAPEWATERMELON", sc2::UNIT_TYPEID::SHAPEWATERMELON) + .value("SHAPEWATERMELONSMALL", sc2::UNIT_TYPEID::SHAPEWATERMELONSMALL) + .value("SHAPEWONSIGN", sc2::UNIT_TYPEID::SHAPEWONSIGN) + .value("SHAPEX", sc2::UNIT_TYPEID::SHAPEX) + .value("SHAPEYENSIGN", sc2::UNIT_TYPEID::SHAPEYENSIGN) + .value("SHEEP", sc2::UNIT_TYPEID::SHEEP) + .value("SHIELDBATTERYACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SHIELDBATTERYACGLUESCREENDUMMY) + .value("SHIPALARM", sc2::UNIT_TYPEID::SHIPALARM) + .value("SHORTBRIDGEHORIZONTAL", sc2::UNIT_TYPEID::SHORTBRIDGEHORIZONTAL) + .value("SHORTBRIDGEVERTICAL", sc2::UNIT_TYPEID::SHORTBRIDGEVERTICAL) + .value("SIEGEBREAKER", sc2::UNIT_TYPEID::SIEGEBREAKER) + .value("SIEGEBREAKERSIEGED", sc2::UNIT_TYPEID::SIEGEBREAKERSIEGED) + .value("SIEGETANKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SIEGETANKACGLUESCREENDUMMY) + .value("SIEGETANKMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SIEGETANKMENGSKACGLUESCREENDUMMY) + .value("SIEGETANKSKINPREVIEW", sc2::UNIT_TYPEID::SIEGETANKSKINPREVIEW) + .value("SILIBERATORACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SILIBERATORACGLUESCREENDUMMY) + .value("SLAYNELEMENTAL", sc2::UNIT_TYPEID::SLAYNELEMENTAL) + .value("SLAYNELEMENTALGRABAIRUNIT", sc2::UNIT_TYPEID::SLAYNELEMENTALGRABAIRUNIT) + .value("SLAYNELEMENTALGRABGROUNDUNIT", sc2::UNIT_TYPEID::SLAYNELEMENTALGRABGROUNDUNIT) + .value("SLAYNELEMENTALGRABWEAPON", sc2::UNIT_TYPEID::SLAYNELEMENTALGRABWEAPON) + .value("SLAYNELEMENTALWEAPON", sc2::UNIT_TYPEID::SLAYNELEMENTALWEAPON) + .value("SLAYNSWARMHOSTSPAWNFLYER", sc2::UNIT_TYPEID::SLAYNSWARMHOSTSPAWNFLYER) + .value("SMADJUTANT", sc2::UNIT_TYPEID::SMADJUTANT) + .value("SMADJUTANTHOLOGRAM", sc2::UNIT_TYPEID::SMADJUTANTHOLOGRAM) + .value("SMANNABELLE", sc2::UNIT_TYPEID::SMANNABELLE) + .value("SMARCTURUSHOLOGRAM", sc2::UNIT_TYPEID::SMARCTURUSHOLOGRAM) + .value("SMARCTURUSMENGSK", sc2::UNIT_TYPEID::SMARCTURUSMENGSK) + .value("SMARMORYBANSHEE", sc2::UNIT_TYPEID::SMARMORYBANSHEE) + .value("SMARMORYBANSHEEPHCRATE", sc2::UNIT_TYPEID::SMARMORYBANSHEEPHCRATE) + .value("SMARMORYDROPSHIP", sc2::UNIT_TYPEID::SMARMORYDROPSHIP) + .value("SMARMORYDROPSHIPPHCRATE", sc2::UNIT_TYPEID::SMARMORYDROPSHIPPHCRATE) + .value("SMARMORYGHOSTCRATE", sc2::UNIT_TYPEID::SMARMORYGHOSTCRATE) + .value("SMARMORYGHOSTCRATEPHCRATE", sc2::UNIT_TYPEID::SMARMORYGHOSTCRATEPHCRATE) + .value("SMARMORYRIFLE", sc2::UNIT_TYPEID::SMARMORYRIFLE) + .value("SMARMORYSPECTRECRATE", sc2::UNIT_TYPEID::SMARMORYSPECTRECRATE) + .value("SMARMORYSPECTRECRATEPHCRATE", sc2::UNIT_TYPEID::SMARMORYSPECTRECRATEPHCRATE) + .value("SMARMORYSPIDERMINE", sc2::UNIT_TYPEID::SMARMORYSPIDERMINE) + .value("SMARMORYSPIDERMINEPHCRATE", sc2::UNIT_TYPEID::SMARMORYSPIDERMINEPHCRATE) + .value("SMARMORYTANK", sc2::UNIT_TYPEID::SMARMORYTANK) + .value("SMARMORYTANKPHCRATE", sc2::UNIT_TYPEID::SMARMORYTANKPHCRATE) + .value("SMARMORYVIKING", sc2::UNIT_TYPEID::SMARMORYVIKING) + .value("SMARMORYVIKINGPHCRATE", sc2::UNIT_TYPEID::SMARMORYVIKINGPHCRATE) + .value("SMBANSHEE", sc2::UNIT_TYPEID::SMBANSHEE) + .value("SMBOUNTYHUNTER", sc2::UNIT_TYPEID::SMBOUNTYHUNTER) + .value("SMBRALIK", sc2::UNIT_TYPEID::SMBRALIK) + .value("SMBRIDGEPLANETAGRIA", sc2::UNIT_TYPEID::SMBRIDGEPLANETAGRIA) + .value("SMBRIDGEPLANETAIUR", sc2::UNIT_TYPEID::SMBRIDGEPLANETAIUR) + .value("SMBRIDGEPLANETAVERNUS", sc2::UNIT_TYPEID::SMBRIDGEPLANETAVERNUS) + .value("SMBRIDGEPLANETBELSHIR", sc2::UNIT_TYPEID::SMBRIDGEPLANETBELSHIR) + .value("SMBRIDGEPLANETCASTANAR", sc2::UNIT_TYPEID::SMBRIDGEPLANETCASTANAR) + .value("SMBRIDGEPLANETCHAR", sc2::UNIT_TYPEID::SMBRIDGEPLANETCHAR) + .value("SMBRIDGEPLANETHAVEN", sc2::UNIT_TYPEID::SMBRIDGEPLANETHAVEN) + .value("SMBRIDGEPLANETKORHAL", sc2::UNIT_TYPEID::SMBRIDGEPLANETKORHAL) + .value("SMBRIDGEPLANETMEINHOFF", sc2::UNIT_TYPEID::SMBRIDGEPLANETMEINHOFF) + .value("SMBRIDGEPLANETMONLYTH", sc2::UNIT_TYPEID::SMBRIDGEPLANETMONLYTH) + .value("SMBRIDGEPLANETNEWFOLSOM", sc2::UNIT_TYPEID::SMBRIDGEPLANETNEWFOLSOM) + .value("SMBRIDGEPLANETPORTZION", sc2::UNIT_TYPEID::SMBRIDGEPLANETPORTZION) + .value("SMBRIDGEPLANETREDSTONE", sc2::UNIT_TYPEID::SMBRIDGEPLANETREDSTONE) + .value("SMBRIDGEPLANETSHAKURAS", sc2::UNIT_TYPEID::SMBRIDGEPLANETSHAKURAS) + .value("SMBRIDGEPLANETSPACE", sc2::UNIT_TYPEID::SMBRIDGEPLANETSPACE) + .value("SMBRIDGEPLANETSPACEASTEROIDS", sc2::UNIT_TYPEID::SMBRIDGEPLANETSPACEASTEROIDS) + .value("SMBRIDGEPLANETTARSONIS", sc2::UNIT_TYPEID::SMBRIDGEPLANETTARSONIS) + .value("SMBRIDGEPLANETTYPHON", sc2::UNIT_TYPEID::SMBRIDGEPLANETTYPHON) + .value("SMBRIDGEPLANETTYRADOR", sc2::UNIT_TYPEID::SMBRIDGEPLANETTYRADOR) + .value("SMBRIDGEPLANETULAAN", sc2::UNIT_TYPEID::SMBRIDGEPLANETULAAN) + .value("SMBRIDGEPLANETULNAR", sc2::UNIT_TYPEID::SMBRIDGEPLANETULNAR) + .value("SMBRIDGEPLANETVALHALLA", sc2::UNIT_TYPEID::SMBRIDGEPLANETVALHALLA) + .value("SMBRIDGEPLANETXIL", sc2::UNIT_TYPEID::SMBRIDGEPLANETXIL) + .value("SMBRIDGEPLANETZHAKULDAS", sc2::UNIT_TYPEID::SMBRIDGEPLANETZHAKULDAS) + .value("SMBRIDGEWINDOWSPACE", sc2::UNIT_TYPEID::SMBRIDGEWINDOWSPACE) + .value("SMCADE", sc2::UNIT_TYPEID::SMCADE) + .value("SMCAMERABRIDGE", sc2::UNIT_TYPEID::SMCAMERABRIDGE) + .value("SMCAMERATERRAN01", sc2::UNIT_TYPEID::SMCAMERATERRAN01) + .value("SMCAMERATERRAN02A", sc2::UNIT_TYPEID::SMCAMERATERRAN02A) + .value("SMCAMERATERRAN02B", sc2::UNIT_TYPEID::SMCAMERATERRAN02B) + .value("SMCAMERATERRAN03", sc2::UNIT_TYPEID::SMCAMERATERRAN03) + .value("SMCAMERATERRAN04", sc2::UNIT_TYPEID::SMCAMERATERRAN04) + .value("SMCAMERATERRAN04A", sc2::UNIT_TYPEID::SMCAMERATERRAN04A) + .value("SMCAMERATERRAN04B", sc2::UNIT_TYPEID::SMCAMERATERRAN04B) + .value("SMCAMERATERRAN05", sc2::UNIT_TYPEID::SMCAMERATERRAN05) + .value("SMCAMERATERRAN06A", sc2::UNIT_TYPEID::SMCAMERATERRAN06A) + .value("SMCAMERATERRAN06B", sc2::UNIT_TYPEID::SMCAMERATERRAN06B) + .value("SMCAMERATERRAN06C", sc2::UNIT_TYPEID::SMCAMERATERRAN06C) + .value("SMCAMERATERRAN07", sc2::UNIT_TYPEID::SMCAMERATERRAN07) + .value("SMCAMERATERRAN08", sc2::UNIT_TYPEID::SMCAMERATERRAN08) + .value("SMCAMERATERRAN09", sc2::UNIT_TYPEID::SMCAMERATERRAN09) + .value("SMCAMERATERRAN10", sc2::UNIT_TYPEID::SMCAMERATERRAN10) + .value("SMCAMERATERRAN11", sc2::UNIT_TYPEID::SMCAMERATERRAN11) + .value("SMCAMERATERRAN12", sc2::UNIT_TYPEID::SMCAMERATERRAN12) + .value("SMCAMERATERRAN13", sc2::UNIT_TYPEID::SMCAMERATERRAN13) + .value("SMCAMERATERRAN14", sc2::UNIT_TYPEID::SMCAMERATERRAN14) + .value("SMCAMERATERRAN15", sc2::UNIT_TYPEID::SMCAMERATERRAN15) + .value("SMCAMERATERRAN16", sc2::UNIT_TYPEID::SMCAMERATERRAN16) + .value("SMCAMERATERRAN17", sc2::UNIT_TYPEID::SMCAMERATERRAN17) + .value("SMCAMERATERRAN20", sc2::UNIT_TYPEID::SMCAMERATERRAN20) + .value("SMCHARBATTLEFIELDENDPROPS", sc2::UNIT_TYPEID::SMCHARBATTLEFIELDENDPROPS) + .value("SMCHARBATTLEZONEARTIFACTHS", sc2::UNIT_TYPEID::SMCHARBATTLEZONEARTIFACTHS) + .value("SMCHARBATTLEZONEBRIEFCASEHS", sc2::UNIT_TYPEID::SMCHARBATTLEZONEBRIEFCASEHS) + .value("SMCHARBATTLEZONEBRIEFINGSET", sc2::UNIT_TYPEID::SMCHARBATTLEZONEBRIEFINGSET) + .value("SMCHARBATTLEZONEBRIEFINGSET2", sc2::UNIT_TYPEID::SMCHARBATTLEZONEBRIEFINGSET2) + .value("SMCHARBATTLEZONEBRIEFINGSETLEFT", sc2::UNIT_TYPEID::SMCHARBATTLEZONEBRIEFINGSETLEFT) + .value("SMCHARBATTLEZONEBRIEFINGSETRIGHT", sc2::UNIT_TYPEID::SMCHARBATTLEZONEBRIEFINGSETRIGHT) + .value("SMCHARBATTLEZONEDROPSHIPHS", sc2::UNIT_TYPEID::SMCHARBATTLEZONEDROPSHIPHS) + .value("SMCHARBATTLEZONEFLAG", sc2::UNIT_TYPEID::SMCHARBATTLEZONEFLAG) + .value("SMCHARBATTLEZONERADIOHS", sc2::UNIT_TYPEID::SMCHARBATTLEZONERADIOHS) + .value("SMCHARBATTLEZONESET", sc2::UNIT_TYPEID::SMCHARBATTLEZONESET) + .value("SMCHARBATTLEZONESET2", sc2::UNIT_TYPEID::SMCHARBATTLEZONESET2) + .value("SMCHARBATTLEZONESET3", sc2::UNIT_TYPEID::SMCHARBATTLEZONESET3) + .value("SMCHARBATTLEZONESET4", sc2::UNIT_TYPEID::SMCHARBATTLEZONESET4) + .value("SMCHARBATTLEZONESET5", sc2::UNIT_TYPEID::SMCHARBATTLEZONESET5) + .value("SMCHARBATTLEZONESHADOWBOX", sc2::UNIT_TYPEID::SMCHARBATTLEZONESHADOWBOX) + .value("SMCHARBATTLEZONETURRET", sc2::UNIT_TYPEID::SMCHARBATTLEZONETURRET) + .value("SMCHARCUTSCENES00", sc2::UNIT_TYPEID::SMCHARCUTSCENES00) + .value("SMCHARCUTSCENES01", sc2::UNIT_TYPEID::SMCHARCUTSCENES01) + .value("SMCHARCUTSCENES02", sc2::UNIT_TYPEID::SMCHARCUTSCENES02) + .value("SMCHARCUTSCENES03", sc2::UNIT_TYPEID::SMCHARCUTSCENES03) + .value("SMCHARGATLINGGUN", sc2::UNIT_TYPEID::SMCHARGATLINGGUN) + .value("SMCHARINTERACTIVE02SKYPARALLAX", sc2::UNIT_TYPEID::SMCHARINTERACTIVE02SKYPARALLAX) + .value("SMCHARINTERACTIVESKYPARALLAX", sc2::UNIT_TYPEID::SMCHARINTERACTIVESKYPARALLAX) + .value("SMCIVILIAN", sc2::UNIT_TYPEID::SMCIVILIAN) + .value("SMCOOPER", sc2::UNIT_TYPEID::SMCOOPER) + .value("SMDONNYVERMILLION", sc2::UNIT_TYPEID::SMDONNYVERMILLION) + .value("SMDONNYVERMILLIONDEATH", sc2::UNIT_TYPEID::SMDONNYVERMILLIONDEATH) + .value("SMDONNYVERMILLIONSET", sc2::UNIT_TYPEID::SMDONNYVERMILLIONSET) + .value("SMDROPSHIP", sc2::UNIT_TYPEID::SMDROPSHIP) + .value("SMDROPSHIPBLUE", sc2::UNIT_TYPEID::SMDROPSHIPBLUE) + .value("SMEARL", sc2::UNIT_TYPEID::SMEARL) + .value("SMFIREBAT", sc2::UNIT_TYPEID::SMFIREBAT) + .value("SMFIREBATPHCRATE", sc2::UNIT_TYPEID::SMFIREBATPHCRATE) + .value("SMFIRSTOFFICER", sc2::UNIT_TYPEID::SMFIRSTOFFICER) + .value("SMFLY", sc2::UNIT_TYPEID::SMFLY) + .value("SMGENERICMALEGREASEMONKEY01", sc2::UNIT_TYPEID::SMGENERICMALEGREASEMONKEY01) + .value("SMGENERICMALEGREASEMONKEY02", sc2::UNIT_TYPEID::SMGENERICMALEGREASEMONKEY02) + .value("SMGENERICMALEOFFICER01", sc2::UNIT_TYPEID::SMGENERICMALEOFFICER01) + .value("SMGENERICMALEOFFICER02", sc2::UNIT_TYPEID::SMGENERICMALEOFFICER02) + .value("SMHALL", sc2::UNIT_TYPEID::SMHALL) + .value("SMHAVENPLANET", sc2::UNIT_TYPEID::SMHAVENPLANET) + .value("SMHILL", sc2::UNIT_TYPEID::SMHILL) + .value("SMHYDRALISK", sc2::UNIT_TYPEID::SMHYDRALISK) + .value("SMHYDRALISKDEAD", sc2::UNIT_TYPEID::SMHYDRALISKDEAD) + .value("SMHYPERIONARMORER", sc2::UNIT_TYPEID::SMHYPERIONARMORER) + .value("SMHYPERIONARMORYSPACELIGHTING", sc2::UNIT_TYPEID::SMHYPERIONARMORYSPACELIGHTING) + .value("SMHYPERIONARMORYSTAGE1SET", sc2::UNIT_TYPEID::SMHYPERIONARMORYSTAGE1SET) + .value("SMHYPERIONARMORYSTAGE1SET01", sc2::UNIT_TYPEID::SMHYPERIONARMORYSTAGE1SET01) + .value("SMHYPERIONARMORYSTAGE1SET02", sc2::UNIT_TYPEID::SMHYPERIONARMORYSTAGE1SET02) + .value("SMHYPERIONARMORYSTAGE1SET03", sc2::UNIT_TYPEID::SMHYPERIONARMORYSTAGE1SET03) + .value("SMHYPERIONARMORYSTAGE1SWANNCAMERAS", sc2::UNIT_TYPEID::SMHYPERIONARMORYSTAGE1SWANNCAMERAS) + .value("SMHYPERIONARMORYSTAGE1TECHNOLOGYCONSOLEHS", sc2::UNIT_TYPEID::SMHYPERIONARMORYSTAGE1TECHNOLOGYCONSOLEHS) + .value("SMHYPERIONARMORYVIKING", sc2::UNIT_TYPEID::SMHYPERIONARMORYVIKING) + .value("SMHYPERIONBRIDGEBRIEFING", sc2::UNIT_TYPEID::SMHYPERIONBRIDGEBRIEFING) + .value("SMHYPERIONBRIDGEBRIEFINGCENTER", sc2::UNIT_TYPEID::SMHYPERIONBRIDGEBRIEFINGCENTER) + .value("SMHYPERIONBRIDGEBRIEFINGLEFT", sc2::UNIT_TYPEID::SMHYPERIONBRIDGEBRIEFINGLEFT) + .value("SMHYPERIONBRIDGEBRIEFINGRIGHT", sc2::UNIT_TYPEID::SMHYPERIONBRIDGEBRIEFINGRIGHT) + .value("SMHYPERIONBRIDGEHOLOMAP", sc2::UNIT_TYPEID::SMHYPERIONBRIDGEHOLOMAP) + .value("SMHYPERIONBRIDGEPROPS", sc2::UNIT_TYPEID::SMHYPERIONBRIDGEPROPS) + .value("SMHYPERIONBRIDGESTAGE1BATTLECOMMANDHS", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1BATTLECOMMANDHS) + .value("SMHYPERIONBRIDGESTAGE1BATTLEREPORTSHS", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1BATTLEREPORTSHS) + .value("SMHYPERIONBRIDGESTAGE1BOW", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1BOW) + .value("SMHYPERIONBRIDGESTAGE1CANTINAHS", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1CANTINAHS) + .value("SMHYPERIONBRIDGESTAGE1CENTERCONSOLEHS", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1CENTERCONSOLEHS) + .value("SMHYPERIONBRIDGESTAGE1HANSONCAMERAS", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1HANSONCAMERAS) + .value("SMHYPERIONBRIDGESTAGE1HORNERCAMERAS", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1HORNERCAMERAS) + .value("SMHYPERIONBRIDGESTAGE1SET", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1SET) + .value("SMHYPERIONBRIDGESTAGE1SET2", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1SET2) + .value("SMHYPERIONBRIDGESTAGE1SET3", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1SET3) + .value("SMHYPERIONBRIDGESTAGE1TOSHCAMERAS", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1TOSHCAMERAS) + .value("SMHYPERIONBRIDGESTAGE1TYCHUSCAMERAS", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1TYCHUSCAMERAS) + .value("SMHYPERIONBRIDGESTAGE1WINDOWHS", sc2::UNIT_TYPEID::SMHYPERIONBRIDGESTAGE1WINDOWHS) + .value("SMHYPERIONBRIDGETRAYNOR03BRIEFINGCAMERA", sc2::UNIT_TYPEID::SMHYPERIONBRIDGETRAYNOR03BRIEFINGCAMERA) + .value("SMHYPERIONCANTINABADGEHS", sc2::UNIT_TYPEID::SMHYPERIONCANTINABADGEHS) + .value("SMHYPERIONCANTINAHYDRACLAWSHS", sc2::UNIT_TYPEID::SMHYPERIONCANTINAHYDRACLAWSHS) + .value("SMHYPERIONCANTINAMERCCOMPUTERHS", sc2::UNIT_TYPEID::SMHYPERIONCANTINAMERCCOMPUTERHS) + .value("SMHYPERIONCANTINAPOSTER1HS", sc2::UNIT_TYPEID::SMHYPERIONCANTINAPOSTER1HS) + .value("SMHYPERIONCANTINAPOSTER2HS", sc2::UNIT_TYPEID::SMHYPERIONCANTINAPOSTER2HS) + .value("SMHYPERIONCANTINAPOSTER3HS", sc2::UNIT_TYPEID::SMHYPERIONCANTINAPOSTER3HS) + .value("SMHYPERIONCANTINAPOSTER4HS", sc2::UNIT_TYPEID::SMHYPERIONCANTINAPOSTER4HS) + .value("SMHYPERIONCANTINAPOSTER5HS", sc2::UNIT_TYPEID::SMHYPERIONCANTINAPOSTER5HS) + .value("SMHYPERIONCANTINAPROGRESSFRAME", sc2::UNIT_TYPEID::SMHYPERIONCANTINAPROGRESSFRAME) + .value("SMHYPERIONCANTINAPROPS", sc2::UNIT_TYPEID::SMHYPERIONCANTINAPROPS) + .value("SMHYPERIONCANTINASTAGE1ARCADEGAMEHS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1ARCADEGAMEHS) + .value("SMHYPERIONCANTINASTAGE1CORKBOARDHS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1CORKBOARDHS) + .value("SMHYPERIONCANTINASTAGE1EXITHS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1EXITHS) + .value("SMHYPERIONCANTINASTAGE1JUKEBOXHS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1JUKEBOXHS) + .value("SMHYPERIONCANTINASTAGE1PROGRESS1HS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1PROGRESS1HS) + .value("SMHYPERIONCANTINASTAGE1PROGRESS2HS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1PROGRESS2HS) + .value("SMHYPERIONCANTINASTAGE1PROGRESS3HS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1PROGRESS3HS) + .value("SMHYPERIONCANTINASTAGE1PROGRESS4HS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1PROGRESS4HS) + .value("SMHYPERIONCANTINASTAGE1PROGRESS5HS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1PROGRESS5HS) + .value("SMHYPERIONCANTINASTAGE1PROGRESS6HS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1PROGRESS6HS) + .value("SMHYPERIONCANTINASTAGE1SET", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1SET) + .value("SMHYPERIONCANTINASTAGE1SET2", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1SET2) + .value("SMHYPERIONCANTINASTAGE1STAIRCASEHS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1STAIRCASEHS) + .value("SMHYPERIONCANTINASTAGE1TVHS", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1TVHS) + .value("SMHYPERIONCANTINASTAGE1WALLPIECE", sc2::UNIT_TYPEID::SMHYPERIONCANTINASTAGE1WALLPIECE) + .value("SMHYPERIONCANTINATOSHCAMERAS", sc2::UNIT_TYPEID::SMHYPERIONCANTINATOSHCAMERAS) + .value("SMHYPERIONCANTINATYCHUSCAMERAS", sc2::UNIT_TYPEID::SMHYPERIONCANTINATYCHUSCAMERAS) + .value("SMHYPERIONCANTINAYBARRACAMERAS", sc2::UNIT_TYPEID::SMHYPERIONCANTINAYBARRACAMERAS) + .value("SMHYPERIONCORRIDORPROPS", sc2::UNIT_TYPEID::SMHYPERIONCORRIDORPROPS) + .value("SMHYPERIONCORRIDORSET", sc2::UNIT_TYPEID::SMHYPERIONCORRIDORSET) + .value("SMHYPERIONEXTERIOR", sc2::UNIT_TYPEID::SMHYPERIONEXTERIOR) + .value("SMHYPERIONEXTERIORHOLOGRAM", sc2::UNIT_TYPEID::SMHYPERIONEXTERIORHOLOGRAM) + .value("SMHYPERIONEXTERIORLOW", sc2::UNIT_TYPEID::SMHYPERIONEXTERIORLOW) + .value("SMHYPERIONLABADJUTANTCAMERAS", sc2::UNIT_TYPEID::SMHYPERIONLABADJUTANTCAMERAS) + .value("SMHYPERIONLABARTIFACTBASEHS", sc2::UNIT_TYPEID::SMHYPERIONLABARTIFACTBASEHS) + .value("SMHYPERIONLABARTIFACTPART1HS", sc2::UNIT_TYPEID::SMHYPERIONLABARTIFACTPART1HS) + .value("SMHYPERIONLABARTIFACTPART2HS", sc2::UNIT_TYPEID::SMHYPERIONLABARTIFACTPART2HS) + .value("SMHYPERIONLABARTIFACTPART3HS", sc2::UNIT_TYPEID::SMHYPERIONLABARTIFACTPART3HS) + .value("SMHYPERIONLABARTIFACTPART4HS", sc2::UNIT_TYPEID::SMHYPERIONLABARTIFACTPART4HS) + .value("SMHYPERIONLABCOWINCAMERAS", sc2::UNIT_TYPEID::SMHYPERIONLABCOWINCAMERAS) + .value("SMHYPERIONLABHANSONCAMERAS", sc2::UNIT_TYPEID::SMHYPERIONLABHANSONCAMERAS) + .value("SMHYPERIONMEDLABBRIEFING", sc2::UNIT_TYPEID::SMHYPERIONMEDLABBRIEFING) + .value("SMHYPERIONMEDLABBRIEFINGCENTER", sc2::UNIT_TYPEID::SMHYPERIONMEDLABBRIEFINGCENTER) + .value("SMHYPERIONMEDLABBRIEFINGLEFT", sc2::UNIT_TYPEID::SMHYPERIONMEDLABBRIEFINGLEFT) + .value("SMHYPERIONMEDLABBRIEFINGRIGHT", sc2::UNIT_TYPEID::SMHYPERIONMEDLABBRIEFINGRIGHT) + .value("SMHYPERIONMEDLABCRYOTUBEA", sc2::UNIT_TYPEID::SMHYPERIONMEDLABCRYOTUBEA) + .value("SMHYPERIONMEDLABCRYOTUBEB", sc2::UNIT_TYPEID::SMHYPERIONMEDLABCRYOTUBEB) + .value("SMHYPERIONMEDLABPROPS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABPROPS) + .value("SMHYPERIONMEDLABPROTOSSCRYOTUBE0HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABPROTOSSCRYOTUBE0HS) + .value("SMHYPERIONMEDLABPROTOSSCRYOTUBE1HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABPROTOSSCRYOTUBE1HS) + .value("SMHYPERIONMEDLABPROTOSSCRYOTUBE2HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABPROTOSSCRYOTUBE2HS) + .value("SMHYPERIONMEDLABPROTOSSCRYOTUBE3HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABPROTOSSCRYOTUBE3HS) + .value("SMHYPERIONMEDLABPROTOSSCRYOTUBE4HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABPROTOSSCRYOTUBE4HS) + .value("SMHYPERIONMEDLABPROTOSSCRYOTUBE5HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABPROTOSSCRYOTUBE5HS) + .value("SMHYPERIONMEDLABSTAGE1ARTIFACTHS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABSTAGE1ARTIFACTHS) + .value("SMHYPERIONMEDLABSTAGE1CONSOLEHS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABSTAGE1CONSOLEHS) + .value("SMHYPERIONMEDLABSTAGE1CRYSTALHS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABSTAGE1CRYSTALHS) + .value("SMHYPERIONMEDLABSTAGE1DOORHS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABSTAGE1DOORHS) + .value("SMHYPERIONMEDLABSTAGE1SET", sc2::UNIT_TYPEID::SMHYPERIONMEDLABSTAGE1SET) + .value("SMHYPERIONMEDLABSTAGE1SET2", sc2::UNIT_TYPEID::SMHYPERIONMEDLABSTAGE1SET2) + .value("SMHYPERIONMEDLABSTAGE1SETLIGHTS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABSTAGE1SETLIGHTS) + .value("SMHYPERIONMEDLABZERGCRYOTUBE0HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABZERGCRYOTUBE0HS) + .value("SMHYPERIONMEDLABZERGCRYOTUBE1HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABZERGCRYOTUBE1HS) + .value("SMHYPERIONMEDLABZERGCRYOTUBE2HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABZERGCRYOTUBE2HS) + .value("SMHYPERIONMEDLABZERGCRYOTUBE3HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABZERGCRYOTUBE3HS) + .value("SMHYPERIONMEDLABZERGCRYOTUBE4HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABZERGCRYOTUBE4HS) + .value("SMHYPERIONMEDLABZERGCRYOTUBE5HS", sc2::UNIT_TYPEID::SMHYPERIONMEDLABZERGCRYOTUBE5HS) + .value("SMKACHINSKY", sc2::UNIT_TYPEID::SMKACHINSKY) + .value("SMKATELOCKWELL", sc2::UNIT_TYPEID::SMKATELOCKWELL) + .value("SMKERRIGANPHOTO", sc2::UNIT_TYPEID::SMKERRIGANPHOTO) + .value("SMLABASSISTANT", sc2::UNIT_TYPEID::SMLABASSISTANT) + .value("SMLEEKENO", sc2::UNIT_TYPEID::SMLEEKENO) + .value("SMLEEKENOSET", sc2::UNIT_TYPEID::SMLEEKENOSET) + .value("SMMARAUDER", sc2::UNIT_TYPEID::SMMARAUDER) + .value("SMMARAUDERPHCRATE", sc2::UNIT_TYPEID::SMMARAUDERPHCRATE) + .value("SMMARINE01", sc2::UNIT_TYPEID::SMMARINE01) + .value("SMMARINE02", sc2::UNIT_TYPEID::SMMARINE02) + .value("SMMARINE02AOD", sc2::UNIT_TYPEID::SMMARINE02AOD) + .value("SMMARINE03", sc2::UNIT_TYPEID::SMMARINE03) + .value("SMMARINE04", sc2::UNIT_TYPEID::SMMARINE04) + .value("SMMARINERIFLE", sc2::UNIT_TYPEID::SMMARINERIFLE) + .value("SMMARSARABARBADGEHS", sc2::UNIT_TYPEID::SMMARSARABARBADGEHS) + .value("SMMARSARABARBOTTLESHS", sc2::UNIT_TYPEID::SMMARSARABARBOTTLESHS) + .value("SMMARSARABARBRIEFINGSET", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGSET) + .value("SMMARSARABARBRIEFINGSET2", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGSET2) + .value("SMMARSARABARBRIEFINGSETLEFT", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGSETLEFT) + .value("SMMARSARABARBRIEFINGSETRIGHT", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGSETRIGHT) + .value("SMMARSARABARBRIEFINGTVMAIN", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGTVMAIN) + .value("SMMARSARABARBRIEFINGTVMAIN2", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGTVMAIN2) + .value("SMMARSARABARBRIEFINGTVMAIN3", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGTVMAIN3) + .value("SMMARSARABARBRIEFINGTVPORTRAIT1", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGTVPORTRAIT1) + .value("SMMARSARABARBRIEFINGTVPORTRAIT2", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGTVPORTRAIT2) + .value("SMMARSARABARBRIEFINGTVPORTRAIT3", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGTVPORTRAIT3) + .value("SMMARSARABARBRIEFINGTVPORTRAIT4", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGTVPORTRAIT4) + .value("SMMARSARABARBRIEFINGTVPORTRAIT5", sc2::UNIT_TYPEID::SMMARSARABARBRIEFINGTVPORTRAIT5) + .value("SMMARSARABARCORKBOARDBACKGROUND", sc2::UNIT_TYPEID::SMMARSARABARCORKBOARDBACKGROUND) + .value("SMMARSARABARCORKBOARDHS", sc2::UNIT_TYPEID::SMMARSARABARCORKBOARDHS) + .value("SMMARSARABARCORKBOARDITEM1HS", sc2::UNIT_TYPEID::SMMARSARABARCORKBOARDITEM1HS) + .value("SMMARSARABARCORKBOARDITEM2HS", sc2::UNIT_TYPEID::SMMARSARABARCORKBOARDITEM2HS) + .value("SMMARSARABARCORKBOARDITEM3HS", sc2::UNIT_TYPEID::SMMARSARABARCORKBOARDITEM3HS) + .value("SMMARSARABARCORKBOARDITEM4HS", sc2::UNIT_TYPEID::SMMARSARABARCORKBOARDITEM4HS) + .value("SMMARSARABARCORKBOARDITEM5HS", sc2::UNIT_TYPEID::SMMARSARABARCORKBOARDITEM5HS) + .value("SMMARSARABARCORKBOARDITEM6HS", sc2::UNIT_TYPEID::SMMARSARABARCORKBOARDITEM6HS) + .value("SMMARSARABARCORKBOARDITEM7HS", sc2::UNIT_TYPEID::SMMARSARABARCORKBOARDITEM7HS) + .value("SMMARSARABARCORKBOARDITEM8HS", sc2::UNIT_TYPEID::SMMARSARABARCORKBOARDITEM8HS) + .value("SMMARSARABARCORKBOARDITEM9HS", sc2::UNIT_TYPEID::SMMARSARABARCORKBOARDITEM9HS) + .value("SMMARSARABARHYDRALISKSKULLHS", sc2::UNIT_TYPEID::SMMARSARABARHYDRALISKSKULLHS) + .value("SMMARSARABARJUKEBOXHS", sc2::UNIT_TYPEID::SMMARSARABARJUKEBOXHS) + .value("SMMARSARABARKERRIGANPHOTOHS", sc2::UNIT_TYPEID::SMMARSARABARKERRIGANPHOTOHS) + .value("SMMARSARABARPROPS", sc2::UNIT_TYPEID::SMMARSARABARPROPS) + .value("SMMARSARABARSET", sc2::UNIT_TYPEID::SMMARSARABARSET) + .value("SMMARSARABARSET2", sc2::UNIT_TYPEID::SMMARSARABARSET2) + .value("SMMARSARABARSTARMAPHS", sc2::UNIT_TYPEID::SMMARSARABARSTARMAPHS) + .value("SMMARSARABARTVHS", sc2::UNIT_TYPEID::SMMARSARABARTVHS) + .value("SMMARSARABARTYCHUSCAMERAS", sc2::UNIT_TYPEID::SMMARSARABARTYCHUSCAMERAS) + .value("SMMARSARAPLANET", sc2::UNIT_TYPEID::SMMARSARAPLANET) + .value("SMMIKELIBERTY", sc2::UNIT_TYPEID::SMMIKELIBERTY) + .value("SMMUTALISK", sc2::UNIT_TYPEID::SMMUTALISK) + .value("SMNOVA", sc2::UNIT_TYPEID::SMNOVA) + .value("SMPRESSROOMPROPS", sc2::UNIT_TYPEID::SMPRESSROOMPROPS) + .value("SMRAYNORCOMMANDER", sc2::UNIT_TYPEID::SMRAYNORCOMMANDER) + .value("SMRAYNORGUN", sc2::UNIT_TYPEID::SMRAYNORGUN) + .value("SMRAYNORHANDS", sc2::UNIT_TYPEID::SMRAYNORHANDS) + .value("SMRAYNORMARINE", sc2::UNIT_TYPEID::SMRAYNORMARINE) + .value("SMSHADOWBOX", sc2::UNIT_TYPEID::SMSHADOWBOX) + .value("SMSTETMANN", sc2::UNIT_TYPEID::SMSTETMANN) + .value("SMTERRAN01FX", sc2::UNIT_TYPEID::SMTERRAN01FX) + .value("SMTERRAN03FX", sc2::UNIT_TYPEID::SMTERRAN03FX) + .value("SMTERRAN05FX", sc2::UNIT_TYPEID::SMTERRAN05FX) + .value("SMTERRAN05FXMUTALISKS", sc2::UNIT_TYPEID::SMTERRAN05FXMUTALISKS) + .value("SMTERRAN05PROPS", sc2::UNIT_TYPEID::SMTERRAN05PROPS) + .value("SMTERRAN06AFX", sc2::UNIT_TYPEID::SMTERRAN06AFX) + .value("SMTERRAN06APROPS", sc2::UNIT_TYPEID::SMTERRAN06APROPS) + .value("SMTERRAN06BFX", sc2::UNIT_TYPEID::SMTERRAN06BFX) + .value("SMTERRAN06BPROPS", sc2::UNIT_TYPEID::SMTERRAN06BPROPS) + .value("SMTERRAN06CFX", sc2::UNIT_TYPEID::SMTERRAN06CFX) + .value("SMTERRAN07FX", sc2::UNIT_TYPEID::SMTERRAN07FX) + .value("SMTERRAN07PROPS", sc2::UNIT_TYPEID::SMTERRAN07PROPS) + .value("SMTERRAN08PROPS", sc2::UNIT_TYPEID::SMTERRAN08PROPS) + .value("SMTERRAN09FX", sc2::UNIT_TYPEID::SMTERRAN09FX) + .value("SMTERRAN09PROPS", sc2::UNIT_TYPEID::SMTERRAN09PROPS) + .value("SMTERRAN11FX", sc2::UNIT_TYPEID::SMTERRAN11FX) + .value("SMTERRAN11FXBLOOD", sc2::UNIT_TYPEID::SMTERRAN11FXBLOOD) + .value("SMTERRAN11FXDEBRIS", sc2::UNIT_TYPEID::SMTERRAN11FXDEBRIS) + .value("SMTERRAN11FXDEBRIS1", sc2::UNIT_TYPEID::SMTERRAN11FXDEBRIS1) + .value("SMTERRAN11FXDEBRIS2", sc2::UNIT_TYPEID::SMTERRAN11FXDEBRIS2) + .value("SMTERRAN11FXEXPLOSIONS", sc2::UNIT_TYPEID::SMTERRAN11FXEXPLOSIONS) + .value("SMTERRAN11FXMISSILES", sc2::UNIT_TYPEID::SMTERRAN11FXMISSILES) + .value("SMTERRAN11PROPS", sc2::UNIT_TYPEID::SMTERRAN11PROPS) + .value("SMTERRAN11PROPSBURROWROCKS", sc2::UNIT_TYPEID::SMTERRAN11PROPSBURROWROCKS) + .value("SMTERRAN11PROPSRIFLESHELLS", sc2::UNIT_TYPEID::SMTERRAN11PROPSRIFLESHELLS) + .value("SMTERRAN12FX", sc2::UNIT_TYPEID::SMTERRAN12FX) + .value("SMTERRAN12PROPS", sc2::UNIT_TYPEID::SMTERRAN12PROPS) + .value("SMTERRAN13PROPS", sc2::UNIT_TYPEID::SMTERRAN13PROPS) + .value("SMTERRAN14FX", sc2::UNIT_TYPEID::SMTERRAN14FX) + .value("SMTERRAN14PROPS", sc2::UNIT_TYPEID::SMTERRAN14PROPS) + .value("SMTERRAN15FX", sc2::UNIT_TYPEID::SMTERRAN15FX) + .value("SMTERRAN15PROPS", sc2::UNIT_TYPEID::SMTERRAN15PROPS) + .value("SMTERRAN16FX", sc2::UNIT_TYPEID::SMTERRAN16FX) + .value("SMTERRAN16FXFLAK", sc2::UNIT_TYPEID::SMTERRAN16FXFLAK) + .value("SMTERRAN17FX", sc2::UNIT_TYPEID::SMTERRAN17FX) + .value("SMTERRAN17PROPS", sc2::UNIT_TYPEID::SMTERRAN17PROPS) + .value("SMTERRANREADYROOMLEFTTV", sc2::UNIT_TYPEID::SMTERRANREADYROOMLEFTTV) + .value("SMTERRANREADYROOMMAINTV", sc2::UNIT_TYPEID::SMTERRANREADYROOMMAINTV) + .value("SMTERRANREADYROOMRIGHTTV", sc2::UNIT_TYPEID::SMTERRANREADYROOMRIGHTTV) + .value("SMTERRANREADYROOMSET", sc2::UNIT_TYPEID::SMTERRANREADYROOMSET) + .value("SMTESTCAMERA", sc2::UNIT_TYPEID::SMTESTCAMERA) + .value("SMTOSHKNIFE", sc2::UNIT_TYPEID::SMTOSHKNIFE) + .value("SMTOSHSHUTTLEPROPS", sc2::UNIT_TYPEID::SMTOSHSHUTTLEPROPS) + .value("SMTOSHSHUTTLESET", sc2::UNIT_TYPEID::SMTOSHSHUTTLESET) + .value("SMTOSHSHUTTLESET2", sc2::UNIT_TYPEID::SMTOSHSHUTTLESET2) + .value("SMTVSTATIC", sc2::UNIT_TYPEID::SMTVSTATIC) + .value("SMUNNCAMERA", sc2::UNIT_TYPEID::SMUNNCAMERA) + .value("SMUNNSCREEN", sc2::UNIT_TYPEID::SMUNNSCREEN) + .value("SMUNNSET", sc2::UNIT_TYPEID::SMUNNSET) + .value("SMVALERIANFLAGSHIPCORRIDORSSET", sc2::UNIT_TYPEID::SMVALERIANFLAGSHIPCORRIDORSSET) + .value("SMVALERIANFLAGSHIPCORRIDORSSET2", sc2::UNIT_TYPEID::SMVALERIANFLAGSHIPCORRIDORSSET2) + .value("SMVALERIANFLAGSHIPCORRIDORSSET3", sc2::UNIT_TYPEID::SMVALERIANFLAGSHIPCORRIDORSSET3) + .value("SMVALERIANFLAGSHIPCORRIDORSSET4", sc2::UNIT_TYPEID::SMVALERIANFLAGSHIPCORRIDORSSET4) + .value("SMVALERIANMENGSK", sc2::UNIT_TYPEID::SMVALERIANMENGSK) + .value("SMVALERIANOBSERVATORYPAINTINGHS", sc2::UNIT_TYPEID::SMVALERIANOBSERVATORYPAINTINGHS) + .value("SMVALERIANOBSERVATORYPROPS", sc2::UNIT_TYPEID::SMVALERIANOBSERVATORYPROPS) + .value("SMVALERIANOBSERVATORYSET", sc2::UNIT_TYPEID::SMVALERIANOBSERVATORYSET) + .value("SMVALERIANOBSERVATORYSET2", sc2::UNIT_TYPEID::SMVALERIANOBSERVATORYSET2) + .value("SMVALERIANOBSERVATORYSET3", sc2::UNIT_TYPEID::SMVALERIANOBSERVATORYSET3) + .value("SMVALERIANOBSERVATORYSTARMAP", sc2::UNIT_TYPEID::SMVALERIANOBSERVATORYSTARMAP) + .value("SMVIKING", sc2::UNIT_TYPEID::SMVIKING) + .value("SMYBARRA", sc2::UNIT_TYPEID::SMYBARRA) + .value("SMZERATUL", sc2::UNIT_TYPEID::SMZERATUL) + .value("SMZERGEDHANSON", sc2::UNIT_TYPEID::SMZERGEDHANSON) + .value("SMZERGLING", sc2::UNIT_TYPEID::SMZERGLING) + .value("SNARE_PLACEHOLDER", sc2::UNIT_TYPEID::SNARE_PLACEHOLDER) + .value("SNOWGLAZESTARTERMP", sc2::UNIT_TYPEID::SNOWGLAZESTARTERMP) + .value("SNOWREFINERY_TERRAN_EXTENDINGBRIDGENESHORT8", sc2::UNIT_TYPEID::SNOWREFINERY_TERRAN_EXTENDINGBRIDGENESHORT8) + .value("SNOWREFINERY_TERRAN_EXTENDINGBRIDGENESHORT8OUT", sc2::UNIT_TYPEID::SNOWREFINERY_TERRAN_EXTENDINGBRIDGENESHORT8OUT) + .value("SNOWREFINERY_TERRAN_EXTENDINGBRIDGENWSHORT8", sc2::UNIT_TYPEID::SNOWREFINERY_TERRAN_EXTENDINGBRIDGENWSHORT8) + .value("SNOWREFINERY_TERRAN_EXTENDINGBRIDGENWSHORT8OUT", sc2::UNIT_TYPEID::SNOWREFINERY_TERRAN_EXTENDINGBRIDGENWSHORT8OUT) + .value("SPACEDIABLO", sc2::UNIT_TYPEID::SPACEDIABLO) + .value("SPACEPLATFORMCLIFFDOOR0", sc2::UNIT_TYPEID::SPACEPLATFORMCLIFFDOOR0) + .value("SPACEPLATFORMCLIFFDOOR1", sc2::UNIT_TYPEID::SPACEPLATFORMCLIFFDOOR1) + .value("SPACEPLATFORMCLIFFDOOROPEN0", sc2::UNIT_TYPEID::SPACEPLATFORMCLIFFDOOROPEN0) + .value("SPACEPLATFORMCLIFFDOOROPEN1", sc2::UNIT_TYPEID::SPACEPLATFORMCLIFFDOOROPEN1) + .value("SPACEPLATFORMDESTRUCTIBLEJUMBOBLOCKER", sc2::UNIT_TYPEID::SPACEPLATFORMDESTRUCTIBLEJUMBOBLOCKER) + .value("SPACEPLATFORMDESTRUCTIBLELARGEBLOCKER", sc2::UNIT_TYPEID::SPACEPLATFORMDESTRUCTIBLELARGEBLOCKER) + .value("SPACEPLATFORMDESTRUCTIBLEMEDIUMBLOCKER", sc2::UNIT_TYPEID::SPACEPLATFORMDESTRUCTIBLEMEDIUMBLOCKER) + .value("SPACEPLATFORMDESTRUCTIBLESMALLBLOCKER", sc2::UNIT_TYPEID::SPACEPLATFORMDESTRUCTIBLESMALLBLOCKER) + .value("SPACEPLATFORMREACTORPATHINGBLOCKER", sc2::UNIT_TYPEID::SPACEPLATFORMREACTORPATHINGBLOCKER) + .value("SPACEPLATFORMVENTSUNIT", sc2::UNIT_TYPEID::SPACEPLATFORMVENTSUNIT) + .value("SPARTANCOMPANY", sc2::UNIT_TYPEID::SPARTANCOMPANY) + .value("SPARTANCOMPANYAWEAPON", sc2::UNIT_TYPEID::SPARTANCOMPANYAWEAPON) + .value("SPECIALOPSDROPSHIP", sc2::UNIT_TYPEID::SPECIALOPSDROPSHIP) + .value("SPECOPSGHOSTACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SPECOPSGHOSTACGLUESCREENDUMMY) + .value("SPECTRE", sc2::UNIT_TYPEID::SPECTRE) + .value("SPECTRENUKE", sc2::UNIT_TYPEID::SPECTRENUKE) + .value("SPIDERMINE", sc2::UNIT_TYPEID::SPIDERMINE) + .value("SPIDERMINEBURROWED", sc2::UNIT_TYPEID::SPIDERMINEBURROWED) + .value("SPINECRAWLERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SPINECRAWLERACGLUESCREENDUMMY) + .value("SPINECRAWLERWEAPON", sc2::UNIT_TYPEID::SPINECRAWLERWEAPON) + .value("SPINNINGDIZZYACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SPINNINGDIZZYACGLUESCREENDUMMY) + .value("SPLITTERLINGACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SPLITTERLINGACGLUESCREENDUMMY) + .value("SPORECANNON", sc2::UNIT_TYPEID::SPORECANNON) + .value("SPORECANNONFIREMISSILE", sc2::UNIT_TYPEID::SPORECANNONFIREMISSILE) + .value("SPORECRAWLERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SPORECRAWLERACGLUESCREENDUMMY) + .value("SPORECRAWLERWEAPON", sc2::UNIT_TYPEID::SPORECRAWLERWEAPON) + .value("SS_BACKGROUNDSPACE00", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACE00) + .value("SS_BACKGROUNDSPACE01", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACE01) + .value("SS_BACKGROUNDSPACE02", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACE02) + .value("SS_BACKGROUNDSPACELARGE", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACELARGE) + .value("SS_BACKGROUNDSPACEPROT00", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACEPROT00) + .value("SS_BACKGROUNDSPACEPROT01", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACEPROT01) + .value("SS_BACKGROUNDSPACEPROT02", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACEPROT02) + .value("SS_BACKGROUNDSPACEPROT03", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACEPROT03) + .value("SS_BACKGROUNDSPACEPROT04", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACEPROT04) + .value("SS_BACKGROUNDSPACEPROTOSSLARGE", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACEPROTOSSLARGE) + .value("SS_BACKGROUNDSPACETERRAN00", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACETERRAN00) + .value("SS_BACKGROUNDSPACETERRAN01", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACETERRAN01) + .value("SS_BACKGROUNDSPACETERRAN02", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACETERRAN02) + .value("SS_BACKGROUNDSPACETERRANLARGE", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACETERRANLARGE) + .value("SS_BACKGROUNDSPACEZERG00", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACEZERG00) + .value("SS_BACKGROUNDSPACEZERG01", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACEZERG01) + .value("SS_BACKGROUNDSPACEZERG02", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACEZERG02) + .value("SS_BACKGROUNDSPACEZERGLARGE", sc2::UNIT_TYPEID::SS_BACKGROUNDSPACEZERGLARGE) + .value("SS_BACKGROUNDZERG01", sc2::UNIT_TYPEID::SS_BACKGROUNDZERG01) + .value("SS_BATTLECRUISER", sc2::UNIT_TYPEID::SS_BATTLECRUISER) + .value("SS_BATTLECRUISERHUNTERSEEKERMISSILE", sc2::UNIT_TYPEID::SS_BATTLECRUISERHUNTERSEEKERMISSILE) + .value("SS_BATTLECRUISERMISSILE", sc2::UNIT_TYPEID::SS_BATTLECRUISERMISSILE) + .value("SS_BATTLECRUISERMISSILELAUNCHER", sc2::UNIT_TYPEID::SS_BATTLECRUISERMISSILELAUNCHER) + .value("SS_BLACKEDGEBORDER", sc2::UNIT_TYPEID::SS_BLACKEDGEBORDER) + .value("SS_CARRIER", sc2::UNIT_TYPEID::SS_CARRIER) + .value("SS_CARRIERBOSS", sc2::UNIT_TYPEID::SS_CARRIERBOSS) + .value("SS_CARRIERBOSSMISSILE", sc2::UNIT_TYPEID::SS_CARRIERBOSSMISSILE) + .value("SS_CORRUPTOR", sc2::UNIT_TYPEID::SS_CORRUPTOR) + .value("SS_CORRUPTORMISSILE", sc2::UNIT_TYPEID::SS_CORRUPTORMISSILE) + .value("SS_FIGHTER", sc2::UNIT_TYPEID::SS_FIGHTER) + .value("SS_FIGHTERDRONEMISSILE", sc2::UNIT_TYPEID::SS_FIGHTERDRONEMISSILE) + .value("SS_FIGHTERMISSILELEFT", sc2::UNIT_TYPEID::SS_FIGHTERMISSILELEFT) + .value("SS_FIGHTERMISSILERIGHT", sc2::UNIT_TYPEID::SS_FIGHTERMISSILERIGHT) + .value("SS_INTERCEPTOR", sc2::UNIT_TYPEID::SS_INTERCEPTOR) + .value("SS_INTERCEPTORMISSILE", sc2::UNIT_TYPEID::SS_INTERCEPTORMISSILE) + .value("SS_INTERCEPTORSPAWNMISSILE", sc2::UNIT_TYPEID::SS_INTERCEPTORSPAWNMISSILE) + .value("SS_LEVIATHAN", sc2::UNIT_TYPEID::SS_LEVIATHAN) + .value("SS_LEVIATHANBOMB", sc2::UNIT_TYPEID::SS_LEVIATHANBOMB) + .value("SS_LEVIATHANBOMBMISSILE", sc2::UNIT_TYPEID::SS_LEVIATHANBOMBMISSILE) + .value("SS_LEVIATHANSPAWNBOMBMISSILE", sc2::UNIT_TYPEID::SS_LEVIATHANSPAWNBOMBMISSILE) + .value("SS_LEVIATHANTENTACLEL1MISSILE", sc2::UNIT_TYPEID::SS_LEVIATHANTENTACLEL1MISSILE) + .value("SS_LEVIATHANTENTACLEL2MISSILE", sc2::UNIT_TYPEID::SS_LEVIATHANTENTACLEL2MISSILE) + .value("SS_LEVIATHANTENTACLER1MISSILE", sc2::UNIT_TYPEID::SS_LEVIATHANTENTACLER1MISSILE) + .value("SS_LEVIATHANTENTACLER2MISSILE", sc2::UNIT_TYPEID::SS_LEVIATHANTENTACLER2MISSILE) + .value("SS_LEVIATHANTENTACLETARGET", sc2::UNIT_TYPEID::SS_LEVIATHANTENTACLETARGET) + .value("SS_LIGHTNINGPROJECTORFACELEFT", sc2::UNIT_TYPEID::SS_LIGHTNINGPROJECTORFACELEFT) + .value("SS_LIGHTNINGPROJECTORFACERIGHT", sc2::UNIT_TYPEID::SS_LIGHTNINGPROJECTORFACERIGHT) + .value("SS_PHOENIX", sc2::UNIT_TYPEID::SS_PHOENIX) + .value("SS_PHOENIXMISSILE", sc2::UNIT_TYPEID::SS_PHOENIXMISSILE) + .value("SS_POWERUPBOMB", sc2::UNIT_TYPEID::SS_POWERUPBOMB) + .value("SS_POWERUPHEALTH", sc2::UNIT_TYPEID::SS_POWERUPHEALTH) + .value("SS_POWERUPSIDEMISSILES", sc2::UNIT_TYPEID::SS_POWERUPSIDEMISSILES) + .value("SS_POWERUPSTRONGERMISSILES", sc2::UNIT_TYPEID::SS_POWERUPSTRONGERMISSILES) + .value("SS_SCIENCEVESSEL", sc2::UNIT_TYPEID::SS_SCIENCEVESSEL) + .value("SS_SCIENCEVESSELMISSILE", sc2::UNIT_TYPEID::SS_SCIENCEVESSELMISSILE) + .value("SS_SCOURGE", sc2::UNIT_TYPEID::SS_SCOURGE) + .value("SS_SCOURGEMISSILE", sc2::UNIT_TYPEID::SS_SCOURGEMISSILE) + .value("SS_SCOUT", sc2::UNIT_TYPEID::SS_SCOUT) + .value("SS_SCOUTMISSILE", sc2::UNIT_TYPEID::SS_SCOUTMISSILE) + .value("SS_STRONGMISSILE1", sc2::UNIT_TYPEID::SS_STRONGMISSILE1) + .value("SS_STRONGMISSILE2", sc2::UNIT_TYPEID::SS_STRONGMISSILE2) + .value("SS_SWARMGUARDIAN", sc2::UNIT_TYPEID::SS_SWARMGUARDIAN) + .value("SS_SWARMGUARDIANMISSILE", sc2::UNIT_TYPEID::SS_SWARMGUARDIANMISSILE) + .value("SS_TERRATRON", sc2::UNIT_TYPEID::SS_TERRATRON) + .value("SS_TERRATRONBEAMTARGET", sc2::UNIT_TYPEID::SS_TERRATRONBEAMTARGET) + .value("SS_TERRATRONMISSILE", sc2::UNIT_TYPEID::SS_TERRATRONMISSILE) + .value("SS_TERRATRONMISSILELAUNCHER", sc2::UNIT_TYPEID::SS_TERRATRONMISSILELAUNCHER) + .value("SS_TERRATRONMISSILESPINNER", sc2::UNIT_TYPEID::SS_TERRATRONMISSILESPINNER) + .value("SS_TERRATRONMISSILESPINNERLAUNCHER", sc2::UNIT_TYPEID::SS_TERRATRONMISSILESPINNERLAUNCHER) + .value("SS_TERRATRONMISSILESPINNERMISSILE", sc2::UNIT_TYPEID::SS_TERRATRONMISSILESPINNERMISSILE) + .value("SS_TERRATRONSAW", sc2::UNIT_TYPEID::SS_TERRATRONSAW) + .value("SS_WRAITH", sc2::UNIT_TYPEID::SS_WRAITH) + .value("SS_WRAITHMISSILE", sc2::UNIT_TYPEID::SS_WRAITHMISSILE) + .value("STALKERSHAKURASACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STALKERSHAKURASACGLUESCREENDUMMY) + .value("STALKERTALDARIMACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STALKERTALDARIMACGLUESCREENDUMMY) + .value("STALKERWEAPON", sc2::UNIT_TYPEID::STALKERWEAPON) + .value("STARPORTTECHREACTOR", sc2::UNIT_TYPEID::STARPORTTECHREACTOR) + .value("STEREOSCOPICOPTIONSUNIT", sc2::UNIT_TYPEID::STEREOSCOPICOPTIONSUNIT) + .value("STETMANN", sc2::UNIT_TYPEID::STETMANN) + .value("STONEZEALOT", sc2::UNIT_TYPEID::STONEZEALOT) + .value("STRIKEGOLIATHACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STRIKEGOLIATHACGLUESCREENDUMMY) + .value("STUKOVBROODQUEENACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STUKOVBROODQUEENACGLUESCREENDUMMY) + .value("STUKOVINFESTEDBANSHEEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STUKOVINFESTEDBANSHEEACGLUESCREENDUMMY) + .value("STUKOVINFESTEDBUNKERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STUKOVINFESTEDBUNKERACGLUESCREENDUMMY) + .value("STUKOVINFESTEDCIVILIANACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STUKOVINFESTEDCIVILIANACGLUESCREENDUMMY) + .value("STUKOVINFESTEDDIAMONDBACKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STUKOVINFESTEDDIAMONDBACKACGLUESCREENDUMMY) + .value("STUKOVINFESTEDMARINEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STUKOVINFESTEDMARINEACGLUESCREENDUMMY) + .value("STUKOVINFESTEDMISSILETURRETACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STUKOVINFESTEDMISSILETURRETACGLUESCREENDUMMY) + .value("STUKOVINFESTEDSIEGETANKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STUKOVINFESTEDSIEGETANKACGLUESCREENDUMMY) + .value("STUKOVINFESTEDTROOPERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::STUKOVINFESTEDTROOPERACGLUESCREENDUMMY) + .value("SUPERWARPGATE", sc2::UNIT_TYPEID::SUPERWARPGATE) + .value("SUPPLICANTACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SUPPLICANTACGLUESCREENDUMMY) + .value("SUPPLYDEPOTDROP", sc2::UNIT_TYPEID::SUPPLYDEPOTDROP) + .value("SWANN", sc2::UNIT_TYPEID::SWANN) + .value("SWANNWEAPON", sc2::UNIT_TYPEID::SWANNWEAPON) + .value("SWARMHOSTACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SWARMHOSTACGLUESCREENDUMMY) + .value("SWARMLING", sc2::UNIT_TYPEID::SWARMLING) + .value("SWARMLINGACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SWARMLINGACGLUESCREENDUMMY) + .value("SWARMQUEENACGLUESCREENDUMMY", sc2::UNIT_TYPEID::SWARMQUEENACGLUESCREENDUMMY) + .value("SYSTEM_SNAPSHOT_DUMMY", sc2::UNIT_TYPEID::SYSTEM_SNAPSHOT_DUMMY) + .value("TALDARIMMOTHERSHIP", sc2::UNIT_TYPEID::TALDARIMMOTHERSHIP) + .value("TALDARIMPRISON", sc2::UNIT_TYPEID::TALDARIMPRISON) + .value("TALDARIMPRISONCRYSTAL", sc2::UNIT_TYPEID::TALDARIMPRISONCRYSTAL) + .value("TALONSMISSILEWEAPON", sc2::UNIT_TYPEID::TALONSMISSILEWEAPON) + .value("TANKERTRUCK", sc2::UNIT_TYPEID::TANKERTRUCK) + .value("TARSONISENGINE", sc2::UNIT_TYPEID::TARSONISENGINE) + .value("TARSONISENGINEFAST", sc2::UNIT_TYPEID::TARSONISENGINEFAST) + .value("TARSONIS_DOORE", sc2::UNIT_TYPEID::TARSONIS_DOORE) + .value("TARSONIS_DOORELOWERED", sc2::UNIT_TYPEID::TARSONIS_DOORELOWERED) + .value("TARSONIS_DOORN", sc2::UNIT_TYPEID::TARSONIS_DOORN) + .value("TARSONIS_DOORNE", sc2::UNIT_TYPEID::TARSONIS_DOORNE) + .value("TARSONIS_DOORNELOWERED", sc2::UNIT_TYPEID::TARSONIS_DOORNELOWERED) + .value("TARSONIS_DOORNLOWERED", sc2::UNIT_TYPEID::TARSONIS_DOORNLOWERED) + .value("TARSONIS_DOORNW", sc2::UNIT_TYPEID::TARSONIS_DOORNW) + .value("TARSONIS_DOORNWLOWERED", sc2::UNIT_TYPEID::TARSONIS_DOORNWLOWERED) + .value("TASSADAR", sc2::UNIT_TYPEID::TASSADAR) + .value("TAURENOUTHOUSE", sc2::UNIT_TYPEID::TAURENOUTHOUSE) + .value("TAURENSPACEMARINE", sc2::UNIT_TYPEID::TAURENSPACEMARINE) + .value("TECHREACTOR", sc2::UNIT_TYPEID::TECHREACTOR) + .value("TEMPESTACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TEMPESTACGLUESCREENDUMMY) + .value("TEMPESTWEAPON", sc2::UNIT_TYPEID::TEMPESTWEAPON) + .value("TEMPESTWEAPONGROUND", sc2::UNIT_TYPEID::TEMPESTWEAPONGROUND) + .value("TENTACLEAMISSILE", sc2::UNIT_TYPEID::TENTACLEAMISSILE) + .value("TENTACLEBMISSILE", sc2::UNIT_TYPEID::TENTACLEBMISSILE) + .value("TENTACLECMISSILE", sc2::UNIT_TYPEID::TENTACLECMISSILE) + .value("TENTACLEDMISSILE", sc2::UNIT_TYPEID::TENTACLEDMISSILE) + .value("TERRANBUGGY", sc2::UNIT_TYPEID::TERRANBUGGY) + .value("TERRANDROPPOD", sc2::UNIT_TYPEID::TERRANDROPPOD) + .value("TERRAN_ARMORY", sc2::UNIT_TYPEID::TERRAN_ARMORY) + .value("TERRAN_AUTOTURRET", sc2::UNIT_TYPEID::TERRAN_AUTOTURRET) + .value("TERRAN_BANSHEE", sc2::UNIT_TYPEID::TERRAN_BANSHEE) + .value("TERRAN_BARRACKS", sc2::UNIT_TYPEID::TERRAN_BARRACKS) + .value("TERRAN_BARRACKSFLYING", sc2::UNIT_TYPEID::TERRAN_BARRACKSFLYING) + .value("TERRAN_BARRACKSREACTOR", sc2::UNIT_TYPEID::TERRAN_BARRACKSREACTOR) + .value("TERRAN_BARRACKSTECHLAB", sc2::UNIT_TYPEID::TERRAN_BARRACKSTECHLAB) + .value("TERRAN_BATTLECRUISER", sc2::UNIT_TYPEID::TERRAN_BATTLECRUISER) + .value("TERRAN_BUNKER", sc2::UNIT_TYPEID::TERRAN_BUNKER) + .value("TERRAN_COMMANDCENTER", sc2::UNIT_TYPEID::TERRAN_COMMANDCENTER) + .value("TERRAN_COMMANDCENTERFLYING", sc2::UNIT_TYPEID::TERRAN_COMMANDCENTERFLYING) + .value("TERRAN_CYCLONE", sc2::UNIT_TYPEID::TERRAN_CYCLONE) + .value("TERRAN_ENGINEERINGBAY", sc2::UNIT_TYPEID::TERRAN_ENGINEERINGBAY) + .value("TERRAN_FACTORY", sc2::UNIT_TYPEID::TERRAN_FACTORY) + .value("TERRAN_FACTORYFLYING", sc2::UNIT_TYPEID::TERRAN_FACTORYFLYING) + .value("TERRAN_FACTORYREACTOR", sc2::UNIT_TYPEID::TERRAN_FACTORYREACTOR) + .value("TERRAN_FACTORYTECHLAB", sc2::UNIT_TYPEID::TERRAN_FACTORYTECHLAB) + .value("TERRAN_FUSIONCORE", sc2::UNIT_TYPEID::TERRAN_FUSIONCORE) + .value("TERRAN_GHOST", sc2::UNIT_TYPEID::TERRAN_GHOST) + .value("TERRAN_GHOSTACADEMY", sc2::UNIT_TYPEID::TERRAN_GHOSTACADEMY) + .value("TERRAN_HELLION", sc2::UNIT_TYPEID::TERRAN_HELLION) + .value("TERRAN_HELLIONTANK", sc2::UNIT_TYPEID::TERRAN_HELLIONTANK) + .value("TERRAN_KD8CHARGE", sc2::UNIT_TYPEID::TERRAN_KD8CHARGE) + .value("TERRAN_LIBERATOR", sc2::UNIT_TYPEID::TERRAN_LIBERATOR) + .value("TERRAN_LIBERATORAG", sc2::UNIT_TYPEID::TERRAN_LIBERATORAG) + .value("TERRAN_MARAUDER", sc2::UNIT_TYPEID::TERRAN_MARAUDER) + .value("TERRAN_MARINE", sc2::UNIT_TYPEID::TERRAN_MARINE) + .value("TERRAN_MEDIVAC", sc2::UNIT_TYPEID::TERRAN_MEDIVAC) + .value("TERRAN_MISSILETURRET", sc2::UNIT_TYPEID::TERRAN_MISSILETURRET) + .value("TERRAN_MULE", sc2::UNIT_TYPEID::TERRAN_MULE) + .value("TERRAN_NUKE", sc2::UNIT_TYPEID::TERRAN_NUKE) + .value("TERRAN_ORBITALCOMMAND", sc2::UNIT_TYPEID::TERRAN_ORBITALCOMMAND) + .value("TERRAN_ORBITALCOMMANDFLYING", sc2::UNIT_TYPEID::TERRAN_ORBITALCOMMANDFLYING) + .value("TERRAN_PLANETARYFORTRESS", sc2::UNIT_TYPEID::TERRAN_PLANETARYFORTRESS) + .value("TERRAN_POINTDEFENSEDRONE", sc2::UNIT_TYPEID::TERRAN_POINTDEFENSEDRONE) + .value("TERRAN_PREVIEWBUNKERUPGRADED", sc2::UNIT_TYPEID::TERRAN_PREVIEWBUNKERUPGRADED) + .value("TERRAN_RAVEN", sc2::UNIT_TYPEID::TERRAN_RAVEN) + .value("TERRAN_REACTOR", sc2::UNIT_TYPEID::TERRAN_REACTOR) + .value("TERRAN_REAPER", sc2::UNIT_TYPEID::TERRAN_REAPER) + .value("TERRAN_REFINERY", sc2::UNIT_TYPEID::TERRAN_REFINERY) + .value("TERRAN_REFINERYRICH", sc2::UNIT_TYPEID::TERRAN_REFINERYRICH) + .value("TERRAN_SCV", sc2::UNIT_TYPEID::TERRAN_SCV) + .value("TERRAN_SENSORTOWER", sc2::UNIT_TYPEID::TERRAN_SENSORTOWER) + .value("TERRAN_SIEGETANK", sc2::UNIT_TYPEID::TERRAN_SIEGETANK) + .value("TERRAN_SIEGETANKSIEGED", sc2::UNIT_TYPEID::TERRAN_SIEGETANKSIEGED) + .value("TERRAN_STARPORT", sc2::UNIT_TYPEID::TERRAN_STARPORT) + .value("TERRAN_STARPORTFLYING", sc2::UNIT_TYPEID::TERRAN_STARPORTFLYING) + .value("TERRAN_STARPORTREACTOR", sc2::UNIT_TYPEID::TERRAN_STARPORTREACTOR) + .value("TERRAN_STARPORTTECHLAB", sc2::UNIT_TYPEID::TERRAN_STARPORTTECHLAB) + .value("TERRAN_SUPPLYDEPOT", sc2::UNIT_TYPEID::TERRAN_SUPPLYDEPOT) + .value("TERRAN_SUPPLYDEPOTLOWERED", sc2::UNIT_TYPEID::TERRAN_SUPPLYDEPOTLOWERED) + .value("TERRAN_TECHLAB", sc2::UNIT_TYPEID::TERRAN_TECHLAB) + .value("TERRAN_THOR", sc2::UNIT_TYPEID::TERRAN_THOR) + .value("TERRAN_THORAP", sc2::UNIT_TYPEID::TERRAN_THORAP) + .value("TERRAN_VIKINGASSAULT", sc2::UNIT_TYPEID::TERRAN_VIKINGASSAULT) + .value("TERRAN_VIKINGFIGHTER", sc2::UNIT_TYPEID::TERRAN_VIKINGFIGHTER) + .value("TERRAN_WIDOWMINE", sc2::UNIT_TYPEID::TERRAN_WIDOWMINE) + .value("TERRAN_WIDOWMINEBURROWED", sc2::UNIT_TYPEID::TERRAN_WIDOWMINEBURROWED) + .value("TERRAZINECANISTER", sc2::UNIT_TYPEID::TERRAZINECANISTER) + .value("TERRAZINENODE", sc2::UNIT_TYPEID::TERRAZINENODE) + .value("TERRAZINENODEDEADTERRAN", sc2::UNIT_TYPEID::TERRAZINENODEDEADTERRAN) + .value("TERRAZINENODEHAPPYPROTOSS", sc2::UNIT_TYPEID::TERRAZINENODEHAPPYPROTOSS) + .value("TERRAZINETANK", sc2::UNIT_TYPEID::TERRAZINETANK) + .value("TESTHERO", sc2::UNIT_TYPEID::TESTHERO) + .value("TESTHERODEBUGMISSILEABILITY1WEAPON", sc2::UNIT_TYPEID::TESTHERODEBUGMISSILEABILITY1WEAPON) + .value("TESTHERODEBUGMISSILEABILITY2WEAPON", sc2::UNIT_TYPEID::TESTHERODEBUGMISSILEABILITY2WEAPON) + .value("TESTHEROTHROWMISSILE", sc2::UNIT_TYPEID::TESTHEROTHROWMISSILE) + .value("TESTSHOP", sc2::UNIT_TYPEID::TESTSHOP) + .value("TESTZERG", sc2::UNIT_TYPEID::TESTZERG) + .value("THORAALANCE", sc2::UNIT_TYPEID::THORAALANCE) + .value("THORAAWEAPON", sc2::UNIT_TYPEID::THORAAWEAPON) + .value("THORACGLUESCREENDUMMY", sc2::UNIT_TYPEID::THORACGLUESCREENDUMMY) + .value("THORMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::THORMENGSKACGLUESCREENDUMMY) + .value("THORNLIZARD", sc2::UNIT_TYPEID::THORNLIZARD) + .value("THORWRECKAGE", sc2::UNIT_TYPEID::THORWRECKAGE) + .value("TORNADOMISSILEDUMMYWEAPON", sc2::UNIT_TYPEID::TORNADOMISSILEDUMMYWEAPON) + .value("TORNADOMISSILEWEAPON", sc2::UNIT_TYPEID::TORNADOMISSILEWEAPON) + .value("TORRASQUEACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TORRASQUEACGLUESCREENDUMMY) + .value("TOSH", sc2::UNIT_TYPEID::TOSH) + .value("TOSSGRENADEWEAPON", sc2::UNIT_TYPEID::TOSSGRENADEWEAPON) + .value("TOWERMINE", sc2::UNIT_TYPEID::TOWERMINE) + .value("TRAFFICSIGNAL", sc2::UNIT_TYPEID::TRAFFICSIGNAL) + .value("TRANSPORTTRUCK", sc2::UNIT_TYPEID::TRANSPORTTRUCK) + .value("TRAYNOR01SIGNSDESTRUCTIBLE1", sc2::UNIT_TYPEID::TRAYNOR01SIGNSDESTRUCTIBLE1) + .value("TROOPERMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TROOPERMENGSKACGLUESCREENDUMMY) + .value("TRUCKFLATBEDUNIT", sc2::UNIT_TYPEID::TRUCKFLATBEDUNIT) + .value("TRUCKSEMIUNIT", sc2::UNIT_TYPEID::TRUCKSEMIUNIT) + .value("TRUCKUTILITYUNIT", sc2::UNIT_TYPEID::TRUCKUTILITYUNIT) + .value("TYCHUSCHAINGUN", sc2::UNIT_TYPEID::TYCHUSCHAINGUN) + .value("TYCHUSCOMMANDO", sc2::UNIT_TYPEID::TYCHUSCOMMANDO) + .value("TYCHUSEJECTMISSILE", sc2::UNIT_TYPEID::TYCHUSEJECTMISSILE) + .value("TYCHUSFIREBATACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TYCHUSFIREBATACGLUESCREENDUMMY) + .value("TYCHUSGHOSTACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TYCHUSGHOSTACGLUESCREENDUMMY) + .value("TYCHUSGRENADEWEAPON", sc2::UNIT_TYPEID::TYCHUSGRENADEWEAPON) + .value("TYCHUSHERCACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TYCHUSHERCACGLUESCREENDUMMY) + .value("TYCHUSMARAUDERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TYCHUSMARAUDERACGLUESCREENDUMMY) + .value("TYCHUSMEDICACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TYCHUSMEDICACGLUESCREENDUMMY) + .value("TYCHUSREAPERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TYCHUSREAPERACGLUESCREENDUMMY) + .value("TYCHUSSCVAUTOTURRETACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TYCHUSSCVAUTOTURRETACGLUESCREENDUMMY) + .value("TYCHUSSPECTREACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TYCHUSSPECTREACGLUESCREENDUMMY) + .value("TYCHUSWARHOUNDACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TYCHUSWARHOUNDACGLUESCREENDUMMY) + .value("TYRANNOZORACGLUESCREENDUMMY", sc2::UNIT_TYPEID::TYRANNOZORACGLUESCREENDUMMY) + .value("ULAANSMOKEBRIDGE", sc2::UNIT_TYPEID::ULAANSMOKEBRIDGE) + .value("ULTRALISKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ULTRALISKACGLUESCREENDUMMY) + .value("ULTRASONICPULSEWEAPON", sc2::UNIT_TYPEID::ULTRASONICPULSEWEAPON) + .value("UNBUILDABLEBRICKSSMALLUNIT", sc2::UNIT_TYPEID::UNBUILDABLEBRICKSSMALLUNIT) + .value("UNBUILDABLEBRICKSUNIT", sc2::UNIT_TYPEID::UNBUILDABLEBRICKSUNIT) + .value("UNBUILDABLEPLATESSMALLUNIT", sc2::UNIT_TYPEID::UNBUILDABLEPLATESSMALLUNIT) + .value("UNBUILDABLEPLATESUNIT", sc2::UNIT_TYPEID::UNBUILDABLEPLATESUNIT) + .value("UNBUILDABLEROCKSDESTRUCTIBLE", sc2::UNIT_TYPEID::UNBUILDABLEROCKSDESTRUCTIBLE) + .value("UNBUILDABLEROCKSSMALLUNIT", sc2::UNIT_TYPEID::UNBUILDABLEROCKSSMALLUNIT) + .value("UNBUILDABLEROCKSUNIT", sc2::UNIT_TYPEID::UNBUILDABLEROCKSUNIT) + .value("URSADAKCALF", sc2::UNIT_TYPEID::URSADAKCALF) + .value("URSADAKFEMALE", sc2::UNIT_TYPEID::URSADAKFEMALE) + .value("URSADAKFEMALEEXOTIC", sc2::UNIT_TYPEID::URSADAKFEMALEEXOTIC) + .value("URSADAKMALE", sc2::UNIT_TYPEID::URSADAKMALE) + .value("URSADAKMALEEXOTIC", sc2::UNIT_TYPEID::URSADAKMALEEXOTIC) + .value("URSADON", sc2::UNIT_TYPEID::URSADON) + .value("URSULA", sc2::UNIT_TYPEID::URSULA) + .value("URUN", sc2::UNIT_TYPEID::URUN) + .value("URUNWEAPONLEFT", sc2::UNIT_TYPEID::URUNWEAPONLEFT) + .value("URUNWEAPONRIGHT", sc2::UNIT_TYPEID::URUNWEAPONRIGHT) + .value("VALHALLABASEDESTRUCTIBLEDOOR", sc2::UNIT_TYPEID::VALHALLABASEDESTRUCTIBLEDOOR) + .value("VALHALLABASEDESTRUCTIBLEDOORDEAD", sc2::UNIT_TYPEID::VALHALLABASEDESTRUCTIBLEDOORDEAD) + .value("VALHALLADESTRUCTIBLEWALL", sc2::UNIT_TYPEID::VALHALLADESTRUCTIBLEWALL) + .value("VIKING", sc2::UNIT_TYPEID::VIKING) + .value("VIKINGACGLUESCREENDUMMY", sc2::UNIT_TYPEID::VIKINGACGLUESCREENDUMMY) + .value("VIKINGFIGHTERWEAPON", sc2::UNIT_TYPEID::VIKINGFIGHTERWEAPON) + .value("VIKINGMENGSKACGLUESCREENDUMMY", sc2::UNIT_TYPEID::VIKINGMENGSKACGLUESCREENDUMMY) + .value("VIKINGSKINPREVIEW", sc2::UNIT_TYPEID::VIKINGSKINPREVIEW) + .value("VIKINGSKY_UNIT", sc2::UNIT_TYPEID::VIKINGSKY_UNIT) + .value("VILESTREAMWEAPON", sc2::UNIT_TYPEID::VILESTREAMWEAPON) + .value("VIPERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::VIPERACGLUESCREENDUMMY) + .value("VIPERCONSUMESTRUCTUREWEAPON", sc2::UNIT_TYPEID::VIPERCONSUMESTRUCTUREWEAPON) + .value("VIROPHAGE", sc2::UNIT_TYPEID::VIROPHAGE) + .value("VOIDMPIMMORTALREVIVECORPSE", sc2::UNIT_TYPEID::VOIDMPIMMORTALREVIVECORPSE) + .value("VOIDRAYACGLUESCREENDUMMY", sc2::UNIT_TYPEID::VOIDRAYACGLUESCREENDUMMY) + .value("VOIDRAYSHAKURASACGLUESCREENDUMMY", sc2::UNIT_TYPEID::VOIDRAYSHAKURASACGLUESCREENDUMMY) + .value("VOIDSEEKER", sc2::UNIT_TYPEID::VOIDSEEKER) + .value("VOIDSEEKERPHASEMINEBLASTSECONDARYWEAPON", sc2::UNIT_TYPEID::VOIDSEEKERPHASEMINEBLASTSECONDARYWEAPON) + .value("VOIDSEEKERPHASEMINEBLASTWEAPON", sc2::UNIT_TYPEID::VOIDSEEKERPHASEMINEBLASTWEAPON) + .value("VOIDSEEKERWEAPON", sc2::UNIT_TYPEID::VOIDSEEKERWEAPON) + .value("VULTURE", sc2::UNIT_TYPEID::VULTURE) + .value("VULTUREACGLUESCREENDUMMY", sc2::UNIT_TYPEID::VULTUREACGLUESCREENDUMMY) + .value("VULTUREWEAPON", sc2::UNIT_TYPEID::VULTUREWEAPON) + .value("WALLOFFIRE", sc2::UNIT_TYPEID::WALLOFFIRE) + .value("WARBOT", sc2::UNIT_TYPEID::WARBOT) + .value("WARBOTBMISSILE", sc2::UNIT_TYPEID::WARBOTBMISSILE) + .value("WARHOUND", sc2::UNIT_TYPEID::WARHOUND) + .value("WARHOUNDWEAPON", sc2::UNIT_TYPEID::WARHOUNDWEAPON) + .value("WARPIG", sc2::UNIT_TYPEID::WARPIG) + .value("WARPPRISMSKINPREVIEW", sc2::UNIT_TYPEID::WARPPRISMSKINPREVIEW) + .value("WARPPRISMTALDARIMACGLUESCREENDUMMY", sc2::UNIT_TYPEID::WARPPRISMTALDARIMACGLUESCREENDUMMY) + .value("WEAPON", sc2::UNIT_TYPEID::WEAPON) + .value("WEAPONHYBRIDC", sc2::UNIT_TYPEID::WEAPONHYBRIDC) + .value("WEAPONHYBRIDD", sc2::UNIT_TYPEID::WEAPONHYBRIDD) + .value("WIDOWMINEAIRWEAPON", sc2::UNIT_TYPEID::WIDOWMINEAIRWEAPON) + .value("WIDOWMINEWEAPON", sc2::UNIT_TYPEID::WIDOWMINEWEAPON) + .value("WOLFSTATUE", sc2::UNIT_TYPEID::WOLFSTATUE) + .value("WRAITH", sc2::UNIT_TYPEID::WRAITH) + .value("WRAITHACGLUESCREENDUMMY", sc2::UNIT_TYPEID::WRAITHACGLUESCREENDUMMY) + .value("WRAITHAIRWEAPONLEFT", sc2::UNIT_TYPEID::WRAITHAIRWEAPONLEFT) + .value("WRAITHAIRWEAPONRIGHT", sc2::UNIT_TYPEID::WRAITHAIRWEAPONRIGHT) + .value("WRAITHGROUNDWEAPON", sc2::UNIT_TYPEID::WRAITHGROUNDWEAPON) + .value("WRECKEDBATTLECRUISERHELIOSFINAL", sc2::UNIT_TYPEID::WRECKEDBATTLECRUISERHELIOSFINAL) + .value("XELNAGADESTRUCTIBLEBLOCKER6E", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER6E) + .value("XELNAGADESTRUCTIBLEBLOCKER6N", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER6N) + .value("XELNAGADESTRUCTIBLEBLOCKER6NE", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER6NE) + .value("XELNAGADESTRUCTIBLEBLOCKER6NW", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER6NW) + .value("XELNAGADESTRUCTIBLEBLOCKER6S", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER6S) + .value("XELNAGADESTRUCTIBLEBLOCKER6SE", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER6SE) + .value("XELNAGADESTRUCTIBLEBLOCKER6SW", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER6SW) + .value("XELNAGADESTRUCTIBLEBLOCKER6W", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER6W) + .value("XELNAGADESTRUCTIBLEBLOCKER8E", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER8E) + .value("XELNAGADESTRUCTIBLEBLOCKER8N", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER8N) + .value("XELNAGADESTRUCTIBLEBLOCKER8NE", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER8NE) + .value("XELNAGADESTRUCTIBLEBLOCKER8NW", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER8NW) + .value("XELNAGADESTRUCTIBLEBLOCKER8S", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER8S) + .value("XELNAGADESTRUCTIBLEBLOCKER8SE", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER8SE) + .value("XELNAGADESTRUCTIBLEBLOCKER8SW", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER8SW) + .value("XELNAGADESTRUCTIBLEBLOCKER8W", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLEBLOCKER8W) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER6E", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER6E) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER6N", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER6N) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER6NE", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER6NE) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER6NW", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER6NW) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER6S", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER6S) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER6SE", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER6SE) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER6SW", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER6SW) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER6W", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER6W) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER8E", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER8E) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER8N", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER8N) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER8NE", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER8NE) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER8NW", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER8NW) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER8S", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER8S) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER8SE", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER8SE) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER8SW", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER8SW) + .value("XELNAGADESTRUCTIBLERAMPBLOCKER8W", sc2::UNIT_TYPEID::XELNAGADESTRUCTIBLERAMPBLOCKER8W) + .value("XELNAGAHEALINGSHRINE", sc2::UNIT_TYPEID::XELNAGAHEALINGSHRINE) + .value("XELNAGAPRISON", sc2::UNIT_TYPEID::XELNAGAPRISON) + .value("XELNAGAPRISONCONSOLE", sc2::UNIT_TYPEID::XELNAGAPRISONCONSOLE) + .value("XELNAGAPRISONHEIGHT2", sc2::UNIT_TYPEID::XELNAGAPRISONHEIGHT2) + .value("XELNAGAPRISONNORTH", sc2::UNIT_TYPEID::XELNAGAPRISONNORTH) + .value("XELNAGAPRISONNORTHHEIGHT2", sc2::UNIT_TYPEID::XELNAGAPRISONNORTHHEIGHT2) + .value("XELNAGASHRINE", sc2::UNIT_TYPEID::XELNAGASHRINE) + .value("XELNAGASHRINEXIL", sc2::UNIT_TYPEID::XELNAGASHRINEXIL) + .value("XELNAGATEMPLE", sc2::UNIT_TYPEID::XELNAGATEMPLE) + .value("XELNAGATEMPLEDOOR", sc2::UNIT_TYPEID::XELNAGATEMPLEDOOR) + .value("XELNAGATEMPLEDOORBURROWED", sc2::UNIT_TYPEID::XELNAGATEMPLEDOORBURROWED) + .value("XELNAGATEMPLEDOORURDL", sc2::UNIT_TYPEID::XELNAGATEMPLEDOORURDL) + .value("XELNAGATEMPLEDOORURDLBURROWED", sc2::UNIT_TYPEID::XELNAGATEMPLEDOORURDLBURROWED) + .value("XELNAGAVAULT", sc2::UNIT_TYPEID::XELNAGAVAULT) + .value("XELNAGAWORLDSHIPVAULT", sc2::UNIT_TYPEID::XELNAGAWORLDSHIPVAULT) + .value("XELNAGA_CAVERNS_DOORE", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORE) + .value("XELNAGA_CAVERNS_DOOREOPENED", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOOREOPENED) + .value("XELNAGA_CAVERNS_DOORN", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORN) + .value("XELNAGA_CAVERNS_DOORNE", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORNE) + .value("XELNAGA_CAVERNS_DOORNEOPENED", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORNEOPENED) + .value("XELNAGA_CAVERNS_DOORNOPENED", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORNOPENED) + .value("XELNAGA_CAVERNS_DOORNW", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORNW) + .value("XELNAGA_CAVERNS_DOORNWOPENED", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORNWOPENED) + .value("XELNAGA_CAVERNS_DOORS", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORS) + .value("XELNAGA_CAVERNS_DOORSE", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORSE) + .value("XELNAGA_CAVERNS_DOORSEOPENED", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORSEOPENED) + .value("XELNAGA_CAVERNS_DOORSOPENED", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORSOPENED) + .value("XELNAGA_CAVERNS_DOORSW", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORSW) + .value("XELNAGA_CAVERNS_DOORSWOPENED", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORSWOPENED) + .value("XELNAGA_CAVERNS_DOORW", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORW) + .value("XELNAGA_CAVERNS_DOORWOPENED", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_DOORWOPENED) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEH10", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEH10) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEH10OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEH10OUT) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEH12", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEH12) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEH12OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEH12OUT) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEH8", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEH8) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEH8OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEH8OUT) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENE10", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENE10) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENE10OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENE10OUT) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENE12", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENE12) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENE12OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENE12OUT) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENE8", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENE8) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENE8OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENE8OUT) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENW10", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENW10) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENW10OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENW10OUT) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENW12", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENW12) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENW12OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENW12OUT) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENW8", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENW8) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGENW8OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGENW8OUT) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEV10", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEV10) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEV10OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEV10OUT) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEV12", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEV12) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEV12OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEV12OUT) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEV8", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEV8) + .value("XELNAGA_CAVERNS_FLOATING_BRIDGEV8OUT", sc2::UNIT_TYPEID::XELNAGA_CAVERNS_FLOATING_BRIDGEV8OUT) + .value("YAMATOWEAPON", sc2::UNIT_TYPEID::YAMATOWEAPON) + .value("YOINKMISSILE", sc2::UNIT_TYPEID::YOINKMISSILE) + .value("YOINKSIEGETANKMISSILE", sc2::UNIT_TYPEID::YOINKSIEGETANKMISSILE) + .value("YOINKVIKINGAIRMISSILE", sc2::UNIT_TYPEID::YOINKVIKINGAIRMISSILE) + .value("YOINKVIKINGGROUNDMISSILE", sc2::UNIT_TYPEID::YOINKVIKINGGROUNDMISSILE) + .value("ZEALOTACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZEALOTACGLUESCREENDUMMY) + .value("ZEALOTAIURACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZEALOTAIURACGLUESCREENDUMMY) + .value("ZEALOTFENIXACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZEALOTFENIXACGLUESCREENDUMMY) + .value("ZEALOTPURIFIERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZEALOTPURIFIERACGLUESCREENDUMMY) + .value("ZEALOTSHAKURASACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZEALOTSHAKURASACGLUESCREENDUMMY) + .value("ZEALOTVORAZUNACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZEALOTVORAZUNACGLUESCREENDUMMY) + .value("ZERATUL", sc2::UNIT_TYPEID::ZERATUL) + .value("ZERATULCRYSTALCHARGE", sc2::UNIT_TYPEID::ZERATULCRYSTALCHARGE) + .value("ZERATULDARKTEMPLARACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZERATULDARKTEMPLARACGLUESCREENDUMMY) + .value("ZERATULDISRUPTORACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZERATULDISRUPTORACGLUESCREENDUMMY) + .value("ZERATULIMMORTALACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZERATULIMMORTALACGLUESCREENDUMMY) + .value("ZERATULOBSERVERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZERATULOBSERVERACGLUESCREENDUMMY) + .value("ZERATULPHOTONCANNONACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZERATULPHOTONCANNONACGLUESCREENDUMMY) + .value("ZERATULSENTRYACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZERATULSENTRYACGLUESCREENDUMMY) + .value("ZERATULSTALKERACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZERATULSTALKERACGLUESCREENDUMMY) + .value("ZERATULWARPPRISMACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZERATULWARPPRISMACGLUESCREENDUMMY) + .value("ZERGDROPPOD", sc2::UNIT_TYPEID::ZERGDROPPOD) + .value("ZERGDROPPODCREEP", sc2::UNIT_TYPEID::ZERGDROPPODCREEP) + .value("ZERGLINGKERRIGANACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZERGLINGKERRIGANACGLUESCREENDUMMY) + .value("ZERGLINGZAGARAACGLUESCREENDUMMY", sc2::UNIT_TYPEID::ZERGLINGZAGARAACGLUESCREENDUMMY) + .value("ZERG_BANELING", sc2::UNIT_TYPEID::ZERG_BANELING) + .value("ZERG_BANELINGBURROWED", sc2::UNIT_TYPEID::ZERG_BANELINGBURROWED) + .value("ZERG_BANELINGCOCOON", sc2::UNIT_TYPEID::ZERG_BANELINGCOCOON) + .value("ZERG_BANELINGNEST", sc2::UNIT_TYPEID::ZERG_BANELINGNEST) + .value("ZERG_BROODLING", sc2::UNIT_TYPEID::ZERG_BROODLING) + .value("ZERG_BROODLORD", sc2::UNIT_TYPEID::ZERG_BROODLORD) + .value("ZERG_BROODLORDCOCOON", sc2::UNIT_TYPEID::ZERG_BROODLORDCOCOON) + .value("ZERG_CHANGELING", sc2::UNIT_TYPEID::ZERG_CHANGELING) + .value("ZERG_CHANGELINGMARINE", sc2::UNIT_TYPEID::ZERG_CHANGELINGMARINE) + .value("ZERG_CHANGELINGMARINESHIELD", sc2::UNIT_TYPEID::ZERG_CHANGELINGMARINESHIELD) + .value("ZERG_CHANGELINGZEALOT", sc2::UNIT_TYPEID::ZERG_CHANGELINGZEALOT) + .value("ZERG_CHANGELINGZERGLING", sc2::UNIT_TYPEID::ZERG_CHANGELINGZERGLING) + .value("ZERG_CHANGELINGZERGLINGWINGS", sc2::UNIT_TYPEID::ZERG_CHANGELINGZERGLINGWINGS) + .value("ZERG_CORRUPTOR", sc2::UNIT_TYPEID::ZERG_CORRUPTOR) + .value("ZERG_CREEPTUMOR", sc2::UNIT_TYPEID::ZERG_CREEPTUMOR) + .value("ZERG_CREEPTUMORBURROWED", sc2::UNIT_TYPEID::ZERG_CREEPTUMORBURROWED) + .value("ZERG_CREEPTUMORQUEEN", sc2::UNIT_TYPEID::ZERG_CREEPTUMORQUEEN) + .value("ZERG_DRONE", sc2::UNIT_TYPEID::ZERG_DRONE) + .value("ZERG_DRONEBURROWED", sc2::UNIT_TYPEID::ZERG_DRONEBURROWED) + .value("ZERG_EGG", sc2::UNIT_TYPEID::ZERG_EGG) + .value("ZERG_EVOLUTIONCHAMBER", sc2::UNIT_TYPEID::ZERG_EVOLUTIONCHAMBER) + .value("ZERG_EXTRACTOR", sc2::UNIT_TYPEID::ZERG_EXTRACTOR) + .value("ZERG_EXTRACTORRICH", sc2::UNIT_TYPEID::ZERG_EXTRACTORRICH) + .value("ZERG_GREATERSPIRE", sc2::UNIT_TYPEID::ZERG_GREATERSPIRE) + .value("ZERG_HATCHERY", sc2::UNIT_TYPEID::ZERG_HATCHERY) + .value("ZERG_HIVE", sc2::UNIT_TYPEID::ZERG_HIVE) + .value("ZERG_HYDRALISK", sc2::UNIT_TYPEID::ZERG_HYDRALISK) + .value("ZERG_HYDRALISKBURROWED", sc2::UNIT_TYPEID::ZERG_HYDRALISKBURROWED) + .value("ZERG_HYDRALISKDEN", sc2::UNIT_TYPEID::ZERG_HYDRALISKDEN) + .value("ZERG_INFESTATIONPIT", sc2::UNIT_TYPEID::ZERG_INFESTATIONPIT) + .value("ZERG_INFESTEDTERRANSEGG", sc2::UNIT_TYPEID::ZERG_INFESTEDTERRANSEGG) + .value("ZERG_INFESTOR", sc2::UNIT_TYPEID::ZERG_INFESTOR) + .value("ZERG_INFESTORBURROWED", sc2::UNIT_TYPEID::ZERG_INFESTORBURROWED) + .value("ZERG_INFESTORTERRAN", sc2::UNIT_TYPEID::ZERG_INFESTORTERRAN) + .value("ZERG_LAIR", sc2::UNIT_TYPEID::ZERG_LAIR) + .value("ZERG_LARVA", sc2::UNIT_TYPEID::ZERG_LARVA) + .value("ZERG_LOCUSTMP", sc2::UNIT_TYPEID::ZERG_LOCUSTMP) + .value("ZERG_LOCUSTMPFLYING", sc2::UNIT_TYPEID::ZERG_LOCUSTMPFLYING) + .value("ZERG_LURKERDENMP", sc2::UNIT_TYPEID::ZERG_LURKERDENMP) + .value("ZERG_LURKERMP", sc2::UNIT_TYPEID::ZERG_LURKERMP) + .value("ZERG_LURKERMPBURROWED", sc2::UNIT_TYPEID::ZERG_LURKERMPBURROWED) + .value("ZERG_LURKERMPEGG", sc2::UNIT_TYPEID::ZERG_LURKERMPEGG) + .value("ZERG_MUTALISK", sc2::UNIT_TYPEID::ZERG_MUTALISK) + .value("ZERG_NYDUSCANAL", sc2::UNIT_TYPEID::ZERG_NYDUSCANAL) + .value("ZERG_NYDUSNETWORK", sc2::UNIT_TYPEID::ZERG_NYDUSNETWORK) + .value("ZERG_OVERLORD", sc2::UNIT_TYPEID::ZERG_OVERLORD) + .value("ZERG_OVERLORDCOCOON", sc2::UNIT_TYPEID::ZERG_OVERLORDCOCOON) + .value("ZERG_OVERLORDTRANSPORT", sc2::UNIT_TYPEID::ZERG_OVERLORDTRANSPORT) + .value("ZERG_OVERSEER", sc2::UNIT_TYPEID::ZERG_OVERSEER) + .value("ZERG_OVERSEERSIEGEMODE", sc2::UNIT_TYPEID::ZERG_OVERSEERSIEGEMODE) + .value("ZERG_PARASITICBOMBDUMMY", sc2::UNIT_TYPEID::ZERG_PARASITICBOMBDUMMY) + .value("ZERG_QUEEN", sc2::UNIT_TYPEID::ZERG_QUEEN) + .value("ZERG_QUEENBURROWED", sc2::UNIT_TYPEID::ZERG_QUEENBURROWED) + .value("ZERG_RAVAGER", sc2::UNIT_TYPEID::ZERG_RAVAGER) + .value("ZERG_RAVAGERCOCOON", sc2::UNIT_TYPEID::ZERG_RAVAGERCOCOON) + .value("ZERG_ROACH", sc2::UNIT_TYPEID::ZERG_ROACH) + .value("ZERG_ROACHBURROWED", sc2::UNIT_TYPEID::ZERG_ROACHBURROWED) + .value("ZERG_ROACHWARREN", sc2::UNIT_TYPEID::ZERG_ROACHWARREN) + .value("ZERG_SPAWNINGPOOL", sc2::UNIT_TYPEID::ZERG_SPAWNINGPOOL) + .value("ZERG_SPINECRAWLER", sc2::UNIT_TYPEID::ZERG_SPINECRAWLER) + .value("ZERG_SPINECRAWLERUPROOTED", sc2::UNIT_TYPEID::ZERG_SPINECRAWLERUPROOTED) + .value("ZERG_SPIRE", sc2::UNIT_TYPEID::ZERG_SPIRE) + .value("ZERG_SPORECRAWLER", sc2::UNIT_TYPEID::ZERG_SPORECRAWLER) + .value("ZERG_SPORECRAWLERUPROOTED", sc2::UNIT_TYPEID::ZERG_SPORECRAWLERUPROOTED) + .value("ZERG_SWARMHOSTBURROWEDMP", sc2::UNIT_TYPEID::ZERG_SWARMHOSTBURROWEDMP) + .value("ZERG_SWARMHOSTMP", sc2::UNIT_TYPEID::ZERG_SWARMHOSTMP) + .value("ZERG_TRANSPORTOVERLORDCOCOON", sc2::UNIT_TYPEID::ZERG_TRANSPORTOVERLORDCOCOON) + .value("ZERG_ULTRALISK", sc2::UNIT_TYPEID::ZERG_ULTRALISK) + .value("ZERG_ULTRALISKBURROWED", sc2::UNIT_TYPEID::ZERG_ULTRALISKBURROWED) + .value("ZERG_ULTRALISKCAVERN", sc2::UNIT_TYPEID::ZERG_ULTRALISKCAVERN) + .value("ZERG_VIPER", sc2::UNIT_TYPEID::ZERG_VIPER) + .value("ZERG_ZERGLING", sc2::UNIT_TYPEID::ZERG_ZERGLING) + .value("ZERG_ZERGLINGBURROWED", sc2::UNIT_TYPEID::ZERG_ZERGLINGBURROWED) + .value("ZERUSDESTRUCTIBLEARCH", sc2::UNIT_TYPEID::ZERUSDESTRUCTIBLEARCH) + .value("ZHAKULDASLIBRARYUNIT", sc2::UNIT_TYPEID::ZHAKULDASLIBRARYUNIT) + .value("ZHAKULDASLIBRARYUNITBURROWED", sc2::UNIT_TYPEID::ZHAKULDASLIBRARYUNITBURROWED) + .value("ZHAKULDASLIGHTBRIDGE", sc2::UNIT_TYPEID::ZHAKULDASLIGHTBRIDGE) + .value("ZHAKULDASLIGHTBRIDGEOFF", sc2::UNIT_TYPEID::ZHAKULDASLIGHTBRIDGEOFF) + .value("ZHAKULDASLIGHTBRIDGEOFFTOPRIGHT", sc2::UNIT_TYPEID::ZHAKULDASLIGHTBRIDGEOFFTOPRIGHT) + .value("ZHAKULDASLIGHTBRIDGETOPRIGHT", sc2::UNIT_TYPEID::ZHAKULDASLIGHTBRIDGETOPRIGHT) + .value("_10SLOTBAG", sc2::UNIT_TYPEID::_10SLOTBAG) + .value("_12SLOTBAG", sc2::UNIT_TYPEID::_12SLOTBAG) + .value("_14SLOTBAG", sc2::UNIT_TYPEID::_14SLOTBAG) + .value("_16SLOTBAG", sc2::UNIT_TYPEID::_16SLOTBAG) + .value("_18SLOTBAG", sc2::UNIT_TYPEID::_18SLOTBAG) + .value("_20SLOTBAG", sc2::UNIT_TYPEID::_20SLOTBAG) + .value("_22SLOTBAG", sc2::UNIT_TYPEID::_22SLOTBAG) + .value("_24SLOTBAG", sc2::UNIT_TYPEID::_24SLOTBAG) + .value("_4SLOTBAG", sc2::UNIT_TYPEID::_4SLOTBAG) + .value("_6SLOTBAG", sc2::UNIT_TYPEID::_6SLOTBAG) + .value("_8SLOTBAG", sc2::UNIT_TYPEID::_8SLOTBAG) .def("__eq__", [](const sc2::UNIT_TYPEID &value, sc2::UnitTypeID &value2) { return value == value2; }); py::enum_<sc2::ABILITY_ID>(m, "ABILITY_ID") diff --git a/python-api-src/library.cpp b/python-api-src/library.cpp index 1c59abb89366b7100c46e995e974cbf7ba7dad54..9b231c4a3ecb292458a8ae9bd5f53a6713a75e3b 100644 --- a/python-api-src/library.cpp +++ b/python-api-src/library.cpp @@ -55,6 +55,11 @@ PYBIND11_MODULE(library, m) py::implicitly_convertible<sc2::UPGRADE_ID, sc2::UpgradeID>(); + py::class_<sc2::EffectID>(m, "EffectID") + .def(py::init<sc2::EFFECT_ID>()); + + py::implicitly_convertible<sc2::EFFECT_ID, sc2::EffectID>(); + py::class_<sc2::AbilityID>(m, "AbilityID") .def(py::init<sc2::ABILITY_ID>()); @@ -122,8 +127,8 @@ PYBIND11_MODULE(library, m) .value("CheatMoney", sc2::Difficulty::CheatMoney) .value("CheatInsane", sc2::Difficulty::CheatInsane); - m.def("create_participants", &sc2::CreateParticipant, "Create participant from bot", "race"_a, "bot"_a); - m.def("create_computer", &sc2::CreateComputer, "Create participant from built-in Starcraft computer", "race"_a, "difficulty"_a); + m.def("create_participants", &sc2::CreateParticipant, "Create participant from bot", "race"_a, "bot"_a, "player_name"_a); + m.def("create_computer", &sc2::CreateComputer, "Create participant from built-in Starcraft computer", "race"_a, "difficulty"_a, "ai_build"_a, "player_name"_a); /* py::class_<BuildDescription>(m, "BuildDescription") diff --git a/src/Unit.cpp b/src/Unit.cpp index ff4c26f2eff10ade772578a9e6ec70ac470c1326..12a5ac1a0f373c981112385294359a6b4164da3e 100644 --- a/src/Unit.cpp +++ b/src/Unit.cpp @@ -236,7 +236,7 @@ void Unit::move(const CCPosition & targetPosition) const { BOT_ASSERT(isValid(), "Unit is not valid"); #ifdef SC2API - m_bot->Actions()->UnitCommand(m_unit, sc2::ABILITY_ID::MOVE, targetPosition); + m_bot->Actions()->UnitCommand(m_unit, sc2::ABILITY_ID::GENERAL_MOVE, targetPosition); #else m_unit->move(targetPosition); #endif @@ -246,7 +246,7 @@ void Unit::move(const CCTilePosition & targetPosition) const { BOT_ASSERT(isValid(), "Unit is not valid"); #ifdef SC2API - m_bot->Actions()->UnitCommand(m_unit, sc2::ABILITY_ID::MOVE, CCPosition((float)targetPosition.x, (float)targetPosition.y)); + m_bot->Actions()->UnitCommand(m_unit, sc2::ABILITY_ID::GENERAL_MOVE, CCPosition((float)targetPosition.x, (float)targetPosition.y)); #else m_unit->move(CCPosition(targetPosition)); #endif @@ -411,13 +411,13 @@ sc2::AbilityID Unit::getCurrentAbilityID() const void Unit::holdPosition() const { BOT_ASSERT(isValid(), "Unit is not valid"); - m_bot->Actions()->UnitCommand(m_unit, sc2::ABILITY_ID::HOLDPOSITION); + m_bot->Actions()->UnitCommand(m_unit, sc2::ABILITY_ID::GENERAL_HOLDPOSITION); } void Unit::patrol(const CCPosition & targetPosition) const { BOT_ASSERT(isValid(), "Unit is not valid"); - m_bot->Actions()->UnitCommand(m_unit, sc2::ABILITY_ID::PATROL, targetPosition); + m_bot->Actions()->UnitCommand(m_unit, sc2::ABILITY_ID::GENERAL_PATROL, targetPosition); } void Unit::stopDance() const