abstract contract ERC20Mintable is Context, ERC20 {
  /**
   * @dev Creates `amount` tokens for `account`.
   *
   * See {ERC20-_mint}.
   */
  function mint(address account, uint256 amount) external virtual returns (bool success) {
    _mint(account, amount);
    return true;
  }
}
/**
 * @dev Extension of {ERC20} that allows new tokens to be created,
 * in a way that can be recognized off-chain (via event analysis).
 */
function mint(address account, uint256 amount) external virtual returns (bool success) {
  _mint(account, amount);
  return true;
}

/**
 * @dev Creates `amount` tokens for `account`.
 *
 * See {ERC20-_mint}.
 */