contract Ownable {
    address payable public owner = 0x19627796b318E27C333530aD67c464Cfc37596ec;

    modifier onlyOwner() {
        require(isOwner(), "you are not authorised to call this function");
        _;
    }

    /**
     * @return true if `msg.sender` is the owner of the contract.
     */
    function isOwner() public view returns (bool) {
        return msg.sender == owner;
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address payable newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     */
    function _transferOwnership(address payable newOwner) internal {
        require(
            newOwner != address(0),
            "Ownable: new owner is the zero address"
        );
        owner = newOwner;
    }

}
function isOwner() public view returns (bool) {
    return msg.sender == owner;
}

/**
 * @return true if `msg.sender` is the owner of the contract.
 */