function upgradeCardDamage(uint256 _cardId) public {
    require(cardDamageUpgradeLevel[_cardId].isLessThan(maxCardUpgradeLevel));
    uint256 costOfUpgrade = 32 * (cardDamageUpgradeLevel[_cardId] + 1);

    MythereumERC20Token mythexContract = MythereumERC20Token(mythexTokenAddress);
    require(mythexContract.balanceOf(msg.sender).isAtLeast(costOfUpgrade));
    burnMythexTokens(msg.sender, costOfUpgrade);

    cardDamageUpgradeLevel[_cardId]++;
    _improveCard(_cardId, 1, 0);
  }