contract KToken is StandardToken {
    address private _underlying;

    constructor(string memory name_, string memory symbol_, uint8 decimals_, address underlying_) StandardToken(name_, symbol_, decimals_) {
        require(underlying_ != address(0x0), "underlying address cannot be 0x0");
        _underlying = underlying_;
    }

    /// @return The address of the underlying token.
    function underlying() public view returns (address) {
        return _underlying;
    }
}
function underlying() public view returns (address) {
    return _underlying;
}

/// @return The address of the underlying token.