contract FreezableToken is BasicToken, Ownable {
    
    event FrozenFunds(address target, bool frozen);

    /**
     * @dev Freeze or unfreeze specified account
     * @param target Address to be frozen
     * @param freeze either to freeze it or not
     */
    function freezeAccount(address target, bool freeze) onlyOwner public {
        _frozenAccount[target] = freeze;
        emit FrozenFunds(target, freeze);
    }
    
    /**
    * @dev Gets account frozen status.
    * @param _owner The address to query the frozen status.
    * @return Boolean status: frozen - true or 1, unfrozen - false or 0.
    */
    function frozenAccount(address _owner) public view returns (bool) {
        return _frozenAccount[_owner];
    }
}
/**
 * @title Freezable Token
 * @dev Token that can be frozen and unfrozen.
 */
function freezeAccount(address target, bool freeze) onlyOwner public {
        _frozenAccount[target] = freeze;
        emit FrozenFunds(target, freeze);
    }
/**
 * @dev Freeze or unfreeze specified account
 * @param target Address to be frozen
 * @param freeze either to freeze it or not
 */