contract Lockable is Ownable {
    event onLock();

    bool public locked = false;
    /**
     * @dev Modifier to make a function callable only when the contract is not locked.
     */
    modifier whenNotLocked() {
        require(!locked);
        _;
    }

    /**
     * @dev called by the owner to set lock state, triggers stop/continue state
     */
    function setLock(bool _value) onlyOwner public {
        locked = _value;
        emit onLock();
    }
}
/**
 * @title Lockable
 * @dev Base contract which allows to implement an emergency stop mechanism.
 */
function setLock(bool _value) onlyOwner public {
    locked = _value;
    emit onLock();
}

/**
 * @dev called by the owner to set lock state, triggers stop/continue state
 */