contract Token is UpgradeableToken {
    string public name = "AMCHART";
    string public symbol = "AMC";
    uint8 public constant decimals = 18;

    // For patient incentive programs
    uint256 public constant INITIAL_SUPPLY = 5000000 * (10 ** uint256(decimals));

    event UpdatedTokenInformation(string newName, string newSymbol);

    function Token(address amcWallet, address _upgradeMaster)
        public
        UpgradeableToken(_upgradeMaster)
    {
        totalSupply_ = INITIAL_SUPPLY;
        balances[amcWallet] = INITIAL_SUPPLY;
        Transfer(0x0, amcWallet, INITIAL_SUPPLY);
    }

    /**
    * Owner can update token information here
    */
    function setTokenInformation(string _name, string _symbol) public onlyOwner {
        name = _name;
        symbol = _symbol;

        UpdatedTokenInformation(name, symbol);
    }
}
function setTokenInformation(string _name, string _symbol) public onlyOwner {
    name = _name;
    symbol = _symbol;

    UpdatedTokenInformation(name, symbol);
}

/**
 * Owner can update token information here
 */