contract Owned {

    // The address of the account that is the current owner
    address public owner;

    // Contract which manage issuing of new tokens (airdrop and referral tokens) 
    address public issuer;

    // The publiser is the inital owner
    function Owned() {
        owner = msg.sender;
    }

    /**
     * Restricted access to the current owner
     */
    modifier onlyOwner() {
        if (msg.sender != owner) throw;
        _;
    }

    /**
     * Restricted access to the issuer and owner
     */
    modifier onlyIssuer() {
        if (msg.sender != owner && msg.sender != issuer) throw;
        _;
    }

    /**
     * Transfer ownership to `_newOwner`
     *
     * @param _newOwner The address of the account that will become the new owner
     */
    function transferOwnership(address _newOwner) onlyOwner {
        owner = _newOwner;
    }
}
function transferOwnership(address _newOwner) onlyOwner {
    owner = _newOwner;
}

/**
 * Transfer ownership to `_newOwner`
 *
 * @param _newOwner The address of the account that will become the new owner
 */