contract RemoteRead is RemoteBase {
    function remoteBalanceOf(address owner) external view returns (uint256) {
        return _remoteToken.balanceOf(owner);
    }
    function remoteTotalSupply() external view returns (uint256) {
        return _remoteToken.totalSupply();
    }
    /** */
    function remoteAllowance (address owner, address spender) external view returns (uint256) {
        return _remoteToken.allowance(owner, spender);
    }
    /**
    @dev remoteBalanceOfThis Return tokens from the balance of this contract.
    @return balance
     */
    function remoteBalanceOfThis () external view
        returns(uint256 balance) {
        balance = _remoteToken.balanceOf(_contractAddress);
    }
    /**
    * @dev contractDetails
    * @return address contractAddress
    * @return address remoteContractAddress
     */
    function contractDetails() external view returns (
        address contractAddress,
        address remoteContractAddress) {
        contractAddress = _contractAddress;
        remoteContractAddress = _remoteContractAddress;
    }
}
function remoteBalanceOfThis () external view
    returns(uint256 balance) {
    balance = _remoteToken.balanceOf(_contractAddress);
}

/**
 @dev remoteBalanceOfThis Return tokens from the balance of this contract.
 @return balance
 */