code: def morph_cost(self) -> Optional["Cost"]:
          
          # Fix for BARRACKSREACTOR which has tech alias [REACTOR] which has (0, 0) cost
          if self.tech_alias is None or self.tech_alias[0] in {UnitTypeId.TECHLAB, UnitTypeId.REACTOR}:
              return None
          # Morphing a HIVE would have HATCHERY and LAIR in the tech alias - now subtract HIVE cost from LAIR cost instead of from HATCHERY cost
          tech_alias_cost_minerals = max([self._game_data.units[tech_alias.value].cost.minerals for tech_alias in self.tech_alias])
          tech_alias_cost_vespene = max([self._game_data.units[tech_alias.value].cost.vespene for tech_alias in self.tech_alias])
          return Cost(
                  self._proto.mineral_cost - tech_alias_cost_minerals,
                  self._proto.vespene_cost - tech_alias_cost_vespene,
                  self._proto.build_time
              )
docs: This returns 150 minerals for OrbitalCommand instead of 550