From d820fda979d39801b76a8c9a0c76c82c7f2f67e1 Mon Sep 17 00:00:00 2001 From: Alexander Bus Date: Sat, 28 Jul 2018 13:21:35 +0700 Subject: [PATCH] Version 2.0.0 release --- README.md | 54 +- README.rst | 6 +- cutelog/__main__.py | 67 +- cutelog/about_dialog.py | 13 +- cutelog/config.py | 138 ++- cutelog/level_edit_dialog.py | 113 +- cutelog/levels_preset_dialog.py | 226 ++++ cutelog/listener.py | 183 ++- cutelog/log_levels.py | 108 +- cutelog/logger_tab.py | 446 ++++--- cutelog/logger_table_header.py | 137 ++- cutelog/main_window.py | 402 ++++-- cutelog/merge_dialog.py | 42 +- cutelog/pop_in_dialog.py | 16 +- cutelog/resources/dark_theme.qss | 25 +- cutelog/resources/light_theme.qss | 20 +- cutelog/resources/resources.qrc | 2 - cutelog/resources/ui/about_dialog.ui | 1483 +++++++++++++---------- cutelog/resources/ui/logger.ui | 84 +- cutelog/resources/ui/main_window.ui | 37 - cutelog/resources/ui/merge_dialog.ui | 121 -- cutelog/resources/ui/settings_dialog.ui | 686 ++++++----- cutelog/settings_dialog.py | 86 +- cutelog/text_view_dialog.py | 8 +- cutelog/utils.py | 21 +- screenshots/main_dark.png | Bin 155488 -> 186442 bytes screenshots/main_light.png | Bin 174767 -> 180937 bytes setup.py | 19 +- 28 files changed, 2732 insertions(+), 1811 deletions(-) create mode 100644 cutelog/levels_preset_dialog.py delete mode 100644 cutelog/resources/ui/main_window.ui delete mode 100644 cutelog/resources/ui/merge_dialog.ui diff --git a/README.md b/README.md index 3b01953..140422d 100644 --- a/README.md +++ b/README.md @@ -1,23 +1,25 @@ -# cutelog – GUI for Python's logging module +# cutelog – GUI for logging [![PyPi](https://img.shields.io/pypi/v/cutelog.svg?style=flat-square)](https://pypi.python.org/pypi/cutelog) -This is a graphical log viewer for Python's standard logging module. +This is a graphical log viewer for Python's logging module. It can be targeted with a SocketHandler with no additional setup (see [Usage](#usage)). -The program is in beta: it's lacking some features and may be unstable, but it works. -cutelog is cross-platform, although it's mainly written and optimized for Linux. +It can also be used from other languages or logging libraries with little effort (see the [Wiki](../../wiki/Creating-a-client-for-cutelog)). +For example, a Go library [gocutelog](https://github.com/busimus/gocutelog) shows how to enable +regular Go logging libraries to connect to cutelog. -This is my first released project, so the code is by no means stellar. -Feedback and contributions are appreciated! +This program is in beta, so please report bugs if you encounter them. ## Features * Allows any number of simultaneous connections -* Fully customizable look of log levels and columns -* Filtering based on level and name of the logger, as well as filtering by searching +* Customizable look of log levels and columns, with presets for each +* Filtering based on level and namespace, as well as filtering by searching * Search through all records or only through filtered ones +* Display extra fields under the message with [Extra mode](../../wiki/Creating-a-client-for-cutelog#extra-mode) * View exception tracebacks or messages in a separate window * Dark theme (with its own set of colors for levels) * Pop tabs out of the window, merge records of multiple tabs into one +* Save/load records to/from a file in JSON format ## Screenshots Light theme | Dark theme @@ -30,7 +32,7 @@ Light theme | Dark theme ``` $ pip install cutelog ``` -Or install the latest development version from the source: +Or install the latest development version from the source (requires PyQt5 to build resources): ``` $ pip install git+https://github.com/busimus/cutelog.git @@ -38,7 +40,8 @@ $ pip install git+https://github.com/busimus/cutelog.git ### Requirements * Python 3.5 (or newer) -* PyQt5 (preferably 5.6 or newer) +* PyQt5 (preferably 5.6 or newer) or PySide2 +* [QtPy](https://github.com/spyder-ide/qtpy) ## Usage 1. Start `cutelog` @@ -48,7 +51,7 @@ import logging from logging.handlers import SocketHandler log = logging.getLogger('Root logger') -log.setLevel(1) # to send all messages to cutelog +log.setLevel(1) # to send all records to cutelog socket_handler = SocketHandler('127.0.0.1', 19996) # default listening address log.addHandler(socket_handler) log.info('Hello world!') @@ -56,32 +59,13 @@ log.info('Hello world!') Afterwards it's recommended to designate different loggers for different parts of your program with `log_2 = log.getChild("Child logger")`. This will create "log namespaces" which allow you to filter out messages from various subsystems of your program. -## Planned features -* [ ] Presets for colors -* [ ] Modify how rows are arranged in the detail table (like the header dialog) -* [ ] Fix double-search on the last matched result (or indicate that the last result was reached) -* [ ] Ability to save and load logs (as text or as full records) -* [ ] Alarms/notifications triggered by specified messages -* [ ] Figure out how to search up - -### Code improvements: -* [ ] Proper exception handling in critical places -* [ ] Message boxes for errors to avoid relying on CLI logging -* [ ] Ability to ignore resources.py and instead use actual files for quick stylesheet reload, etc. - -### Dreams, uncertainties, and low priority improvements: -* [ ] Rewrite all/most UIs in code instead of using Qt Designer -* [ ] Switch to [qtawesome](https://github.com/spyder-ide/qtawesome) instead of ion-icons? -* [ ] Support for custom themes? -* [ ] Rewrite the server with robust architecture and additional transports and serializers (e.g. ZeroMQ, WebSockets; msgpack)? -* [ ] Ditch asyncio if/when [curio](https://github.com/dabeaz/curio) takes off? -* [ ] Or rewrite the whole thing in C++ and make it be a generic logging receiver not just for Python??? - - ## Attributions Free software used: -* [PyQt5](https://riverbankcomputing.com/software/pyqt/intro) - GPLv3 License, Copyright (c) 2018 Riverbank Computing Limited -* [ion-icons](https://github.com/ionic-team/ionicons) - MIT License, Copyright (c) 2016 Drifty (http://drifty.com/) +* Qt via either: + * [PyQt5](https://riverbankcomputing.com/software/pyqt/intro) - GPLv3 License, Copyright (c) 2018 Riverbank Computing Limited + * [PySide2](https://wiki.qt.io/PySide2) - LGPLv3 License, Copyright (C) 2015 The Qt Company Ltd (http://www.qt.io/licensing/) +* [QtPy](https://github.com/spyder-ide/qtpy) - MIT License, Copyright © 2009–2018 The Spyder Development Team +* [ion-icons](https://github.com/ionic-team/ionicons) - MIT License, Copyright (c) 2015-present Ionic (http://ionic.io/) And thanks to [logview](https://pythonhosted.org/logview/) by Vinay Sajip for UI inspiration. diff --git a/README.rst b/README.rst index bba07ec..9fa04b8 100644 --- a/README.rst +++ b/README.rst @@ -11,9 +11,6 @@ It can be targeted with a SocketHandler with no additional setup (see Usage_). The program is in beta: it's lacking some features and may be unstable, but it works. cutelog is cross-platform, although it's mainly written and optimized for Linux. -This is my first released project, so the code is by no means stellar. -Feedback and contributions are appreciated! - Features ======== * Allows any number of simultaneous connections @@ -39,7 +36,8 @@ Or install the latest development version from the source:: Requirements ------------ * Python 3.5 (or newer) -* PyQt5 (preferably 5.6 or newer) +* PyQt5 (preferably 5.6 or newer) or PySide2 +* QtPy Usage ===== diff --git a/cutelog/__main__.py b/cutelog/__main__.py index 5b53072..06219fd 100644 --- a/cutelog/__main__.py +++ b/cutelog/__main__.py @@ -1,59 +1,32 @@ -import asyncio -import signal import sys +import qtpy -try: - import PyQt5.QtCore - PyQt5.QtCore -except ImportError: + +if not qtpy.PYQT5 and not qtpy.PYSIDE2: if sys.platform == 'linux': - sys.exit("Error: PyQt5 couldn't be imported.\n" + sys.exit("Error: a compatible Qt library couldn't be imported.\n" "Please install python3-pyqt5 (or just python-pyqt5) from your package manager.") else: # this technically shouldn't ever happen - sys.exit("Error: PyQt5 couldn't be imported.\n" - "Please install it by running `pip install pyqt5`") - -from PyQt5.QtCore import pyqtRemoveInputHook -from PyQt5.QtGui import QIcon -from PyQt5.QtWidgets import QApplication - -# !! resources and config must be imported before main_window !! -from .resources import qCleanupResources -from .config import CONFIG, ROOT_LOG -from .main_window import MainWindow - - -class Application(QApplication): - def __init__(self, argv): - super().__init__(argv) - self.log = ROOT_LOG - self.setWindowIcon(QIcon(':/cutelog.png')) - self.config = CONFIG - - async def process_events(self): - while not self.main_finished.is_set(): - await asyncio.sleep(self.config.loop_event_delay) - self.processEvents() - - def run(self): - pyqtRemoveInputHook() # to prevent Qt conflicting with pdb debug - self.loop = asyncio.get_event_loop() - self.loop.set_debug(False) - - main = MainWindow(self.loop, self.log, self) - self.main_finished = main.finished - try: - self.loop.add_signal_handler(signal.SIGINT, main.shutdown, None) - except NotImplementedError: # for Windows - pass - self.loop.run_until_complete(self.process_events()) - qCleanupResources() + sys.exit("Error: a compatible Qt library couldn't be imported.\n" + "Please install it by running `pip install pyqt5") def main(): - app = Application(sys.argv) - app.run() + import signal + from .config import ROOT_LOG + from .main_window import MainWindow + from .resources import qCleanupResources + from qtpy.QtGui import QIcon + from qtpy.QtWidgets import QApplication + + app = QApplication(sys.argv) + app.setWindowIcon(QIcon(':/cutelog.png')) + mw = MainWindow(ROOT_LOG, app) + signal.signal(signal.SIGINT, mw.signal_handler) + + sys.exit(app.exec_()) + qCleanupResources() if __name__ == '__main__': diff --git a/cutelog/about_dialog.py b/cutelog/about_dialog.py index 5bba094..1f3d0f0 100644 --- a/cutelog/about_dialog.py +++ b/cutelog/about_dialog.py @@ -1,18 +1,15 @@ -from PyQt5 import uic +# from qtpy.uic import loadUi +from qtpy.QtWidgets import QDialog from .config import CONFIG +from .utils import loadUi -uif = CONFIG.get_ui_qfile('about_dialog.ui') -AboutDialogBase = uic.loadUiType(uif) -uif.close() - - -class AboutDialog(*AboutDialogBase): +class AboutDialog(QDialog): def __init__(self, parent): super().__init__(parent) self.setupUi() def setupUi(self): - super().setupUi(self) + self.ui = loadUi(CONFIG.get_ui_qfile("about_dialog.ui"), baseinstance=self) self.nameLabel.setText(CONFIG.full_name) diff --git a/cutelog/config.py b/cutelog/config.py index 5d2e223..770bf2c 100644 --- a/cutelog/config.py +++ b/cutelog/config.py @@ -3,11 +3,11 @@ import os import sys from collections import namedtuple +from distutils.version import StrictVersion from pkg_resources import get_distribution, resource_filename -from PyQt5.QtCore import (QT_VERSION_STR, QCoreApplication, QFile, QObject, - QSettings, Qt, pyqtSignal) - +from qtpy import QT_VERSION +from qtpy.QtCore import QCoreApplication, QFile, QObject, QSettings, Qt, Signal if sys.platform == 'win': DEFAULT_FONT = 'MS Shell Dlg 2' @@ -16,9 +16,21 @@ else: DEFAULT_FONT = 'Sans' +try: + import msgpack + MSGPACK_SUPPORT = True +except ImportError: + MSGPACK_SUPPORT = False + +try: + import cbor + CBOR_SUPPORT = True +except ImportError: + CBOR_SUPPORT = False + # @Future: when Qt 5.6 becomes standard, remove this: -QT_VER = QT_VERSION_STR.split('.') +QT_VER = QT_VERSION.split('.') if QT_VER[0] == '5' and int(QT_VER[1]) < 6: QT55_COMPAT = True else: @@ -44,8 +56,9 @@ class Exc_Indication(enum.IntEnum): ('logger_table_font_size', int, 9), ('text_view_dialog_font', str, 'Courier New'), ('text_view_dialog_font_size', int, 12), - ('logger_row_height', int, 20), + ('logger_row_height', int, 15), ('exception_indication', int, Exc_Indication.RED_BG), + ('time_format_string', str, "%Y-%m-%d %H:%M:%S.%f"), # Search ('search_open_default', bool, False), @@ -57,24 +70,27 @@ class Exc_Indication(enum.IntEnum): ('listen_host', str, '0.0.0.0'), ('listen_port', int, 19996), ('single_tab_mode_default', bool, False), + ('extra_mode_default', bool, False), + ('default_serialization_format', str, 'pickle'), # Advanced ('console_logging_level', int, 30), - ('loop_event_delay', float, 0.005), ('benchmark', bool, False), ('benchmark_interval', float, 0.0005), ('light_theme_is_native', bool, False), # NON-SETTINGS OPTIONS: # Header - ('default_header_preset', str, "Default"), + ('default_header_preset', str, 'Stock'), + ('default_levels_preset', str, 'Stock'), + ('cutelog_version', str, ''), ) class Config(QObject): - "Configuration provider for the whole program, wapper for QSettings" + "Configuration provider for the whole program, wrapper for QSettings" - row_height_changed = pyqtSignal(int) + row_height_changed = Signal(int) def __init__(self, log=None): super().__init__() @@ -94,19 +110,25 @@ def __init__(self, log=None): self.full_name = "{} {}".format(QCoreApplication.applicationName(), QCoreApplication.applicationVersion()) - # options that need fast access are also definded as attributes, which + # options that need fast access are also defined as attributes, which # are updated by calling update_attributes() - # (on paper it's 4 times faster, but i don't think it matters in my case) + # (on paper it's 4 times faster, but I don't think it matters in my case) self.logger_table_font = None self.logger_table_font_size = None - self.loop_event_delay = None + self.logger_row_height = None self.benchmark_interval = None self.update_attributes() + def post_init(self): + running_version = StrictVersion(QCoreApplication.applicationVersion()) + config_version = self.options['cutelog_version'] + if config_version == "" or config_version != running_version: + self.save_running_version() + def __getitem__(self, name): # self.log.debug('Getting "{}"'.format(name)) - value = self.options.get(name, None) + value = self.options.get(name) if value is None: raise Exception('No option with name "{}"'.format(name)) # self.log.debug('Returning "{}"'.format(value)) @@ -141,8 +163,8 @@ def get_ui_qfile(self, name): @property def listen_address(self): - host = self.options.get('listen_host', None) - port = self.options.get('listen_port', None) + host = self.options.get('listen_host') + port = self.options.get('listen_port') if host is None or port is None: raise Exception('Listen host or port not in options: "{}:{}"'.format(host, port)) return (host, port) @@ -170,6 +192,7 @@ def load_options(self): return options def update_options(self, new_options, save=True): + self.emit_needed_changes(new_options) self.options.update(new_options) if save: self.save_options() @@ -177,20 +200,22 @@ def update_options(self, new_options, save=True): def update_attributes(self, options=None): "Updates fast attributes and everything else outside of self.options" - if options: - # here will be things that only need to be updated when they actually changed - new_row_height = options.get('logger_row_height', self.options['logger_row_height']) - if new_row_height != self.options['logger_row_height']: - self.row_height_changed.emit(new_row_height) - else: + if options is None: options = self.options - self.loop_event_delay = options.get('loop_event_delay', self.loop_event_delay) self.benchmark_interval = options.get('benchmark_interval', self.benchmark_interval) self.logger_table_font = options.get('logger_table_font', self.logger_table_font) self.logger_table_font_size = options.get('logger_table_font_size', self.logger_table_font_size) + self.logger_row_height = options.get('logger_row_height', self.logger_row_height) self.set_logging_level(options.get('console_logging_level', ROOT_LOG.level)) + def emit_needed_changes(self, new_options): + new_row_height = new_options.get('logger_row_height') + old_row_height = self.options.get('logger_row_height') + if new_row_height != old_row_height: + self.logger_row_height = new_row_height + self.row_height_changed.emit(new_row_height) + def save_options(self, sync=False): self.log.debug('Saving options') self.qsettings.beginGroup('Configuration') @@ -214,8 +239,47 @@ def set_logging_level(self, level): ROOT_LOG.setLevel(level) self.log.setLevel(level) - # def save_levels_preset(self, levels, preset_name): - # pass + def get_levels_presets(self): + self.qsettings.beginGroup('Levels_Presets') + result = self.qsettings.childGroups() + self.qsettings.endGroup() + return result + + def save_levels_preset(self, name, levels): + self.log.debug('Saving levels preset "{}"'.format(name)) + s = self.qsettings + s.beginGroup('Levels_Presets') + s.beginWriteArray(name, len(levels)) + for i, levelname in enumerate(levels): + level = levels[levelname] + s.setArrayIndex(i) + dump = level.dumps() + s.setValue('level', dump) + s.endArray() + s.endGroup() + + def load_levels_preset(self, name): + from .log_levels import LogLevel + self.log.debug('Loading levels preset "{}"'.format(name)) + s = self.qsettings + if name not in self.get_levels_presets(): + return None + s.beginGroup('Levels_Presets') + size = s.beginReadArray(name) + result = {} + for i in range(size): + s.setArrayIndex(i) + new_level = LogLevel(None).loads(s.value('level')) + result[new_level.levelname] = new_level + s.endArray() + s.endGroup() + return result + + def delete_levels_preset(self, name): + s = self.qsettings + s.beginGroup('Levels_Presets') + s.remove(name) + s.endGroup() def get_header_presets(self): self.qsettings.beginGroup('Header_Presets') @@ -230,7 +294,12 @@ def save_header_preset(self, name, columns): s.beginWriteArray(name, len(columns)) for i, col in enumerate(columns): s.setArrayIndex(i) - s.setValue('column', col.dump_to_string()) + # read the comment in Column.dumps() for reasoning + if i == len(columns) - 1: + col.width = 10 + # dump = col.dumps(width=10) + dump = col.dumps() + s.setValue('column', dump) s.endArray() s.endGroup() @@ -238,14 +307,14 @@ def load_header_preset(self, name): from .logger_table_header import Column self.log.debug('Loading header preset "{}"'.format(name)) s = self.qsettings - result = [] if name not in self.get_header_presets(): return None s.beginGroup('Header_Presets') size = s.beginReadArray(name) + result = [] for i in range(size): s.setArrayIndex(i) - new_column = Column(load=s.value('column')) + new_column = Column().loads(s.value('column')) result.append(new_column) s.endArray() s.endGroup() @@ -271,6 +340,20 @@ def load_geometry(self): s.endGroup() return geometry + def save_running_version(self): + version = QCoreApplication.applicationVersion() + self.log.debug("Updating the config version to {}".format(version)) + s = self.qsettings + s.beginGroup('Configuration') + s.setValue('cutelog_version', version) + self.options['cutelog_version'] = version + s.endGroup() + self.sync() + + def restore_defaults(self): + self.qsettings.clear() + self.sync() + def init_qt_info(): QCoreApplication.setOrganizationName('busimus') @@ -303,3 +386,4 @@ def init_logging(): init_qt_info() ROOT_LOG = init_logging() CONFIG = Config(ROOT_LOG) +CONFIG.post_init() diff --git a/cutelog/level_edit_dialog.py b/cutelog/level_edit_dialog.py index 4620bea..d73cb68 100644 --- a/cutelog/level_edit_dialog.py +++ b/cutelog/level_edit_dialog.py @@ -1,26 +1,32 @@ +from copy import deepcopy from functools import partial -from PyQt5.QtWidgets import (QCheckBox, QColorDialog, QDialog, - QDialogButtonBox, QFormLayout, QGridLayout, - QGroupBox, QLabel, QLineEdit, QPushButton, - QSizePolicy, QSpacerItem) +from qtpy.QtCore import Signal +from qtpy.QtGui import QValidator +from qtpy.QtWidgets import (QCheckBox, QColorDialog, QDialog, QDialogButtonBox, + QFormLayout, QGridLayout, QGroupBox, QLabel, + QLineEdit, QSizePolicy, QSpacerItem) -from .log_levels import DEFAULT_LEVELS, LogLevel +from .log_levels import DEFAULT_LEVELS, NO_LEVEL, LogLevel class LevelEditDialog(QDialog): - def __init__(self, parent, level=None, creating_new_level=False): + + level_changed = Signal(LogLevel) + + def __init__(self, parent, level=None, creating_new_level=False, level_names=set()): super().__init__(parent) if level: self.level = level else: - self.level = level = LogLevel(0, 'NOTSET') + self.level = deepcopy(NO_LEVEL) self.creating_new_level = creating_new_level + self.level_names = level_names - self.load_level() self.setupUi() + self.load_level(self.level) self.update_output() def setupUi(self): @@ -28,13 +34,9 @@ def setupUi(self): self.gridLayout = QGridLayout(self) self.levelNameLabel = QLabel("Level name", self) self.gridLayout.addWidget(self.levelNameLabel, 0, 0) - self.levelNumberLabel = QLabel("Level number", self) - self.gridLayout.addWidget(self.levelNumberLabel, 0, 1) self.levelNameLine = QLineEdit(self) - self.levelNoLine = QLineEdit(self) - self.gridLayout.addWidget(self.levelNameLine, 1, 0) - self.gridLayout.addWidget(self.levelNoLine, 1, 1) + self.gridLayout.addWidget(self.levelNameLine, 1, 0, 1, 0) self.groupBox = QGroupBox("Light mode", self) self.gridLayout.addWidget(self.groupBox, 2, 0) @@ -77,11 +79,10 @@ def setupUi(self): self.previewLineDark = QLineEdit(self) self.gridLayout.addWidget(self.previewLineDark, 5, 1) - self.resetButton = QPushButton('Reset') - self.gridLayout.addWidget(self.resetButton, 6, 0) - - self.buttonBox = QDialogButtonBox(QDialogButtonBox.Save | QDialogButtonBox.Cancel, self) - self.gridLayout.addWidget(self.buttonBox, 6, 1) + buttons = QDialogButtonBox.Reset | QDialogButtonBox.Save | QDialogButtonBox.Cancel + self.buttonBox = QDialogButtonBox(buttons, self) + self.resetButton = self.buttonBox.button(QDialogButtonBox.Reset) + self.gridLayout.addWidget(self.buttonBox, 6, 0, 1, 2) self.setup_widget_attributes() self.setup_widget_connections() @@ -100,13 +101,12 @@ def setup_widget_attributes(self): self.resetButton.setSizePolicy(QSizePolicy.Minimum, QSizePolicy.Minimum) self.levelNameLine.setText(self.level.levelname) - self.levelNoLine.setText(str(self.level.levelno)) - - if not self.creating_new_level: - self.levelNoLine.setReadOnly(True) - self.levelNoLine.setDisabled(True) - - self.set_checkboxes_state() + if self.creating_new_level: + self.name_validator = LevelNameValidator(self, self.level_names) + self.levelNameLine.setValidator(self.name_validator) + self.levelNameLine.textChanged.connect(self.level_name_valid) + else: + self.levelNameLine.setReadOnly(True) def setup_widget_connections(self): self.boldCheckBox.toggled.connect(self.toggle_bold) @@ -136,8 +136,7 @@ def set_checkboxes_state(self): self.italicCheckBoxDark.setChecked(self.italicDark) self.underlineCheckBoxDark.setChecked(self.underlineDark) - def load_level(self): - level = self.level + def load_level(self, level): self.bg = level.bg self.fg = level.fg self.bgDark = level.bgDark @@ -152,35 +151,32 @@ def load_level(self): self.underlineDark = 'underline' in level.stylesDark def reset_level(self): - if self.level.levelno in DEFAULT_LEVELS: - replacement = DEFAULT_LEVELS[self.level.levelno] - else: - replacement = LogLevel(0, 'NOTSET') + replacement = DEFAULT_LEVELS.get(self.level.levelname) + if not replacement: + replacement = NO_LEVEL - self.level.copy_level(replacement) - self.load_level() - self.set_checkboxes_state() + self.load_level(replacement) self.update_output() - def toggle_bold(self, value, dark=False): + def toggle_bold(self, enabled, dark=False): if not dark: - self.bold = value + self.bold = enabled else: - self.boldDark = value + self.boldDark = enabled self.update_output() - def toggle_italic(self, value, dark=False): + def toggle_italic(self, enabled, dark=False): if not dark: - self.italic = value + self.italic = enabled else: - self.italicDark = value + self.italicDark = enabled self.update_output() - def toggle_underline(self, value, dark=False): + def toggle_underline(self, enabled, dark=False): if not dark: - self.underline = value + self.underline = enabled else: - self.underlineDark = value + self.underlineDark = enabled self.update_output() def open_color_dialog(self, attr_name, mouse_event): @@ -216,10 +212,9 @@ def accept(self): self.level.bgDark = self.bgDark self.level.fgDark = self.fgDark - self.level.levelname = self.levelNameLine.text() - if self.creating_new_level: - self.level.levelno = self.levelNoLine.text() + self.level.levelname = self.levelNameLine.text().upper() + self.level_changed.emit(self.level) self.done(0) def reject(self): @@ -242,8 +237,10 @@ def update_output(self): self.bgColorPreview.setStyleSheet('QLineEdit {{background: {} }}'.format(self.bg.name())) self.fgColorPreview.setStyleSheet('QLineEdit {{background: {} }}'.format(self.fg.name())) - self.bgColorPreviewDark.setStyleSheet('QLineEdit {{ background: {} }}'.format(self.bgDark.name())) - self.fgColorPreviewDark.setStyleSheet('QLineEdit {{ background: {} }}'.format(self.fgDark.name())) + self.bgColorPreviewDark.setStyleSheet('QLineEdit {{ background: {} }}' + .format(self.bgDark.name())) + self.fgColorPreviewDark.setStyleSheet('QLineEdit {{ background: {} }}' + .format(self.fgDark.name())) font = self.previewLine.font() font.setBold(self.bold) @@ -256,3 +253,23 @@ def update_output(self): fontDark.setItalic(self.italicDark) fontDark.setUnderline(self.underlineDark) self.previewLineDark.setFont(fontDark) + + self.set_checkboxes_state() + + def level_name_valid(self): + if self.levelNameLine.hasAcceptableInput(): + self.buttonBox.button(QDialogButtonBox.Save).setEnabled(True) + else: + self.buttonBox.button(QDialogButtonBox.Save).setEnabled(False) + + +class LevelNameValidator(QValidator): + def __init__(self, parent, level_names): + super().__init__(parent) + self.level_names = level_names + + def validate(self, levelname, pos): + if len(levelname.strip()) == 0 or levelname in self.level_names: + return self.Intermediate, levelname, pos + else: + return self.Acceptable, levelname.upper(), pos diff --git a/cutelog/levels_preset_dialog.py b/cutelog/levels_preset_dialog.py new file mode 100644 index 0000000..ea3d01b --- /dev/null +++ b/cutelog/levels_preset_dialog.py @@ -0,0 +1,226 @@ +from copy import deepcopy +from functools import partial + +from qtpy.QtCore import Qt, Signal +from qtpy.QtGui import QBrush, QFont +from qtpy.QtWidgets import (QCheckBox, QDialog, QDialogButtonBox, QHBoxLayout, + QHeaderView, QInputDialog, QLabel, QMenu, + QTableWidget, QTableWidgetItem, QVBoxLayout, + QWidget) + +from .config import CONFIG +from .level_edit_dialog import LevelEditDialog +from .log_levels import DEFAULT_LEVELS, get_default_level +from .utils import show_warning_dialog + + +class LevelsPresetDialog(QDialog): + # name of the current preset; whether to set this preset as default; dict of Levels + levels_changed = Signal(str, bool, dict) + + def __init__(self, parent, preset_name, levels): + super().__init__(parent) + + self.preset_name = preset_name + self.levels = deepcopy(levels) + + self.setupUi() + self.update_output() + + def setupUi(self): + self.resize(480, 340) + self.vbox = QVBoxLayout(self) + self.presetLabel = QLabel(self) + self.table = QTableWidget(0, 4, self) + self.setAsDefaultCheckbox = QCheckBox("Set as default preset", self) + self.vbox.addWidget(self.presetLabel) + self.vbox.addWidget(self.table) + self.vbox.addWidget(self.setAsDefaultCheckbox) + + self.table.setEditTriggers(QTableWidget.NoEditTriggers) + self.table.setSelectionBehavior(QTableWidget.SelectRows) + self.table.setHorizontalHeaderLabels(["Show", "Level name", "Preview", "Preview (dark)"]) + self.table.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch) + self.table.horizontalHeader().setSectionsClickable(False) + self.table.horizontalHeader().setSectionsMovable(False) + self.table.horizontalHeader().setSectionResizeMode(0, QHeaderView.ResizeToContents) + self.table.verticalHeader().setVisible(False) + self.table.doubleClicked.connect(self.open_level_edit_dialog) + + self.table.setContextMenuPolicy(Qt.CustomContextMenu) + self.table.customContextMenuRequested.connect(self.open_menu) + + buttons = QDialogButtonBox.Reset | QDialogButtonBox.Save | QDialogButtonBox.Cancel + self.buttonBox = QDialogButtonBox(buttons, self) + self.vbox.addWidget(self.buttonBox) + + self.buttonBox.accepted.connect(self.accept) + self.buttonBox.rejected.connect(self.reject) + self.resetButton = self.buttonBox.button(QDialogButtonBox.Reset) + self.resetButton.clicked.connect(self.reset) + + def update_output(self): + self.presetLabel.setText("Preset: {}".format(self.preset_name)) + self.setAsDefaultCheckbox.setChecked(CONFIG['default_levels_preset'] == self.preset_name) + self.table.clearContents() + self.table.setRowCount(len(self.levels)) + + for i, levelname in enumerate(self.levels): + level = self.levels[levelname] + checkbox = self.get_level_show_checkbox(level) + nameItem = QTableWidgetItem(level.levelname) + preview, previewDark = self.get_preview_items(level) + + self.table.setCellWidget(i, 0, checkbox) + self.table.setItem(i, 1, nameItem) + self.table.setItem(i, 2, preview) + self.table.setItem(i, 3, previewDark) + + def get_level_show_checkbox(self, level): + checkbox_widget = QWidget(self.table) + checkbox_widget.setStyleSheet("QWidget { background-color:none;}") + + checkbox = QCheckBox() + checkbox.setStyleSheet("QCheckBox::indicator { width: 15px; height: 15px;}") + checkbox.setChecked(level.enabled) + + checkbox_layout = QHBoxLayout() + checkbox_layout.setAlignment(Qt.AlignCenter) + checkbox_layout.setContentsMargins(0, 0, 0, 0) + checkbox_layout.addWidget(checkbox) + checkbox_widget.setLayout(checkbox_layout) + return checkbox_widget + + def get_preview_items(self, level): + previewItem = QTableWidgetItem("Log message") + previewItem.setBackground(QBrush(level.bg, Qt.SolidPattern)) + previewItem.setForeground(QBrush(level.fg, Qt.SolidPattern)) + previewItemDark = QTableWidgetItem("Log message") + previewItemDark.setBackground(QBrush(level.bgDark, Qt.SolidPattern)) + previewItemDark.setForeground(QBrush(level.fgDark, Qt.SolidPattern)) + font = QFont(CONFIG.logger_table_font, CONFIG.logger_table_font_size) + fontDark = QFont(font) + if 'bold' in level.styles: + font.setBold(True) + if 'italic' in level.styles: + font.setItalic(True) + if 'underline' in level.styles: + font.setUnderline(True) + if 'bold' in level.stylesDark: + fontDark.setBold(True) + if 'italic' in level.stylesDark: + fontDark.setItalic(True) + if 'underline' in level.stylesDark: + fontDark.setUnderline(True) + previewItem.setFont(font) + previewItemDark.setFont(fontDark) + return previewItem, previewItemDark + + def open_level_edit_dialog(self, index): + levelname = self.table.item(index.row(), 1).data(Qt.DisplayRole) + level = self.levels[levelname] + d = LevelEditDialog(self, level) + d.setWindowModality(Qt.NonModal) + d.setWindowTitle('Level editor') + d.level_changed.connect(self.update_output) + d.open() + + def open_menu(self, position): + menu = QMenu(self) + + preset_menu = menu.addMenu('Presets') + preset_menu.addAction('New preset', self.new_preset_dialog) + preset_menu.addSeparator() + + preset_names = CONFIG.get_levels_presets() + + if len(preset_names) == 0: + action = preset_menu.addAction('No presets') + action.setEnabled(False) + else: + delete_menu = menu.addMenu('Delete preset') + for name in preset_names: + preset_menu.addAction(name, partial(self.load_preset, name)) + delete_menu.addAction(name, partial(self.delete_preset, name)) + + menu.addSeparator() + menu.addAction('New level...', self.create_new_level_dialog) + + if len(self.table.selectedIndexes()) > 0: + menu.addAction('Delete selected', self.delete_selected) + + menu.popup(self.table.viewport().mapToGlobal(position)) + + def load_preset(self, name): + new_levels = CONFIG.load_levels_preset(name) + if not new_levels: + return + + self.levels = new_levels + self.preset_name = name + self.update_output() + + def delete_preset(self, name): + CONFIG.delete_levels_preset(name) + if name == self.preset_name: + self.reset() + + def delete_selected(self): + selected = self.table.selectionModel().selectedRows() + for index in selected: + item = self.table.item(index.row(), 1) + del self.levels[item.text()] + self.update_output() + + def new_preset_dialog(self): + d = QInputDialog(self) + d.setLabelText('Enter the new name for the new preset:') + d.setWindowTitle('Create new preset') + d.textValueSelected.connect(self.create_new_preset) + d.open() + + def create_new_preset(self, name): + if name in CONFIG.get_levels_presets(): + show_warning_dialog(self, "Preset creation error", + 'Preset named "{}" already exists.'.format(name)) + return + if len(name.strip()) == 0: + show_warning_dialog(self, "Preset creation error", + 'This preset name is not allowed.'.format(name)) + return + + self.preset_name = name + self.update_output() + CONFIG.save_levels_preset(name, self.levels) + + def create_new_level_dialog(self): + d = LevelEditDialog(self, creating_new_level=True, level_names=self.levels.keys()) + d.setWindowModality(Qt.NonModal) + d.setWindowTitle('Level editor') + d.level_changed.connect(self.level_changed) + d.open() + + def level_changed(self, level): + if level.levelname in self.levels: + self.levels.copy_from(level) + else: + self.levels[level.levelname] = level + self.update_output() + + def accept(self): + for i, _ in enumerate(self.levels): + checkbox = self.table.cellWidget(i, 0).children()[1] + levelname = self.table.item(i, 1).text() + self.levels[levelname].enabled = checkbox.isChecked() + self.levels_changed.emit(self.preset_name, + self.setAsDefaultCheckbox.isChecked(), + self.levels) + self.done(0) + + def reject(self): + self.done(0) + + def reset(self): + for levelname, level in self.levels.items(): + level.copy_from(get_default_level(levelname)) + self.update_output() diff --git a/cutelog/listener.py b/cutelog/listener.py index dedac90..f05fafd 100644 --- a/cutelog/listener.py +++ b/cutelog/listener.py @@ -1,41 +1,41 @@ -import logging -import struct +import json import pickle +import struct import time -from PyQt5.QtNetwork import QTcpServer, QTcpSocket, QHostAddress -from PyQt5.QtCore import QThread, pyqtSignal +from qtpy.QtCore import QThread, Signal +from qtpy.QtNetwork import QHostAddress, QTcpServer, QTcpSocket +from .config import CONFIG, MSGPACK_SUPPORT, CBOR_SUPPORT +from .logger_tab import LogRecord from .utils import show_critical_dialog -from .config import CONFIG class LogServer(QTcpServer): - def __init__(self, main_window, on_connection, log, stop_signal): - super().__init__() + def __init__(self, main_window, on_connection, log): + super().__init__(main_window) self.log = log.getChild('TCP') self.log.info('Initializing') self.main_window = main_window self.on_connection = on_connection - self.stop_signal = stop_signal self.host, self.port = CONFIG.listen_address self.host = QHostAddress(self.host) self.benchmark = CONFIG['benchmark'] + self.conn_count = 0 self.threads = [] - self.connections = 0 def start(self): self.log.info('Starting the server') if self.benchmark: self.log.debug('Starting a benchmark connection') - new_conn = BenchmarkConnection(self, None, "benchmark", self.stop_signal, self.log) + new_conn = BenchmarkConnection(self, None, "benchmark", self.log) new_conn.finished.connect(new_conn.deleteLater) new_conn.connection_finished.connect(self.cleanup_connection) - self.on_connection(new_conn, "benchmark") + self.on_connection(new_conn, -1) self.threads.append(new_conn) new_conn.start() @@ -48,70 +48,81 @@ def start(self): self.main_window.set_status('Server is listening on {}...'.format(address)) def incomingConnection(self, socketDescriptor): - self.connections += 1 - name = 'Logger {}'.format(self.connections) - self.log.info('New connection: "{}"'.format(name)) - new_conn = LogConnection(self, socketDescriptor, name, self.stop_signal, self.log) + self.conn_count += 1 + conn_id = str(self.conn_count) + self.log.info('New connection id={}'.format(conn_id)) + new_conn = LogConnection(self, socketDescriptor, conn_id, self.log) - self.on_connection(new_conn, name) + self.on_connection(new_conn, conn_id) + new_conn.setObjectName(conn_id) new_conn.finished.connect(new_conn.deleteLater) new_conn.connection_finished.connect(self.cleanup_connection) new_conn.start() self.threads.append(new_conn) - def close_server(self, wait=True): + def close_server(self): self.log.debug('Closing the server') self.main_window.set_status('Stopping the server...') self.close() - if wait: - self.wait_connections_stopped() + for thread in self.threads.copy(): + thread.requestInterruption() + self.wait_connections_stopped() self.main_window.set_status('Server has stopped') def wait_connections_stopped(self): self.log.debug('Waiting for {} connections threads to stop'.format(len(self.threads))) - to_wait = self.threads.copy() # to protect against changes during iteration - for thread in to_wait: + for thread in self.threads.copy(): try: - if not thread.wait(1000): - self.log.error('Thread "{}" didn\'t stop in time, terminating'.format(thread)) - thread.terminate() - self.log.error('Thread "{}" terminated'.format(thread)) + if not thread.wait(1500): + # @Hmm: sometimes wait() complains about QThread waiting on itself + self.log.debug("Thread \"{}\" didn't stop in time, exiting".format(thread)) + return except RuntimeError: # happens when thread has been deleted before we got to it self.log.debug('Thread {} has been deleted already'.format(thread)) - self.log.debug('All connections stopped') + self.log.debug('Waiting for connections has stopped') def cleanup_connection(self, connection): try: self.threads.remove(connection) - except Exception as e: + except Exception: self.log.error('Double delete on connection: {}'.format(connection), exc_info=True) - # import pdb; pdb.set_trace() + return class LogConnection(QThread): - new_record = pyqtSignal(logging.LogRecord) - connection_finished = pyqtSignal(object) + new_record = Signal(LogRecord) + connection_finished = Signal(object) + internal_prefix = b"!!cutelog!!" - def __init__(self, parent, socketDescriptor, name, stop_signal, log): + def __init__(self, parent, socketDescriptor, conn_id, log): super().__init__(parent) - self.log = log.getChild(name) + self.log = log.getChild(conn_id) self.socketDescriptor = socketDescriptor - self.name = name - self.stop_signal = stop_signal + self.conn_id = conn_id self.tab_closed = False # used to stop the connection from a "parent" logger + self.setup_serializers() def __repr__(self): - # return "{}(name={}, socketDescriptor={})".format(self.__class__.__name__, self.name, - # self.socketDescriptor) - return "{}(name={})".format(self.__class__.__name__, self.name) + return "{}(id={})".format(self.__class__.__name__, self.conn_id) + + def setup_serializers(self): + self.serializers = {'pickle': pickle.loads, 'json': json.loads} + if MSGPACK_SUPPORT: + import msgpack + from functools import partial + self.serializers['msgpack'] = partial(msgpack.loads, raw=False) + if CBOR_SUPPORT: + import cbor + self.serializers['cbor'] = cbor.loads + self.deserialize = self.serializers[CONFIG['default_serialization_format']] def run(self): - self.log.debug('Connection "{}" is starting'.format(self.name)) + self.log.debug('Connection id={} is starting'.format(self.conn_id)) def wait_and_read(n_bytes): """ - Convinience function that simplifies reading and checking for stop events, etc. + Convenience function that simplifies reading and checking for stop events, etc. Returns a byte string of length n_bytes or None if socket needs to be closed. """ @@ -124,7 +135,11 @@ def wait_and_read(n_bytes): return None else: continue + if self.need_to_stop(): + return None new_data = sock.read(n_bytes - len(data)) + if type(new_data) != bytes: + new_data = new_data.data() data += new_data return data @@ -142,34 +157,65 @@ def wait_and_read(n_bytes): if not data: break + if data.startswith(self.internal_prefix): + self.handle_internal_command(data) + continue + try: - data = pickle.loads(data) - record = logging.makeLogRecord(data) - except Exception as e: + logDict = self.deserialize(data) + record = LogRecord(logDict) + except Exception: self.log.error('Creating log record failed', exc_info=True) continue self.new_record.emit(record) - self.log.debug('Connection "{}" is stopping'.format(self.name)) + self.log.debug('Connection id={} is stopping'.format(self.conn_id)) sock.disconnectFromHost() sock.close() self.connection_finished.emit(self) - self.log.debug('Connection "{}" has stopped'.format(self.name)) + self.log.debug('Connection id={} has stopped'.format(self.conn_id)) def need_to_stop(self): - return any([self.stop_signal.is_set(), self.tab_closed]) + return any([self.tab_closed, self.isInterruptionRequested()]) + + def handle_internal_command(self, data): + """ + Used for managing listener options from non-Python clients. + Command data must start with a special prefix (see self.internal_prefix), + followed by a command in a key=value format. + + Supported commands: + format - changes the serialization format to one specified in + self.serializers[value]. pickle and json are supported out of the box + Example: format=json + """ + try: + data = data[len(self.internal_prefix):].decode('utf-8') + cmd, value = data.split("=", 1) + except Exception: + self.log.error('Internal request decoding failed', exc_info=True) + return + self.log.debug('Handling internal cmd="{}", value="{}"'.format(cmd, value)) + if cmd == 'format': + if value in self.serializers: + self.log.debug('Changing serialization format to "{}"'.format(value)) + self.deserialize = self.serializers[value] + else: + self.log.error('Serialization format "{}" is not supported'.format(value)) class BenchmarkConnection(LogConnection): def run(self): + import random test_levels = [(10, 'DEBUG'), (20, 'INFO'), (30, 'WARNING'), (40, 'ERROR'), (50, 'CRITICAL'), (21, 'REQ')] + test_names = ['CL', 'CL.Test1', 'CL.Test1.Test2', 'CL.Test3' + 'hey', 'hey.hi.hello', 'CL.Test3.Test4.Test5'] # dummy log item d = {'args': None, 'created': 0, 'exc_info': None, - 'exc_text': 'exception test', 'filename': 'test.py', 'funcName': 'test_func', 'levelname': 'DEBUG', @@ -187,20 +233,51 @@ def run(self): 'thread': 140062538003776, 'threadName': 'MainThread', 'extra_column': 'hey there'} + d = {} c = 0 while True: if self.need_to_stop(): break - d['msg'] = "hey {}".format(c) + dd = d.copy() + dd['msg'] = "msg {}".format(c) + dd['name'] = random.choice(test_names) t = time.time() - d['created'] = t - d['msecs'] = t % 1 * 1000 + dd['created'] = t level_index = c % len(test_levels) - d['levelno'] = test_levels[level_index][0] - d['levelname'] = test_levels[level_index][1] - r = logging.makeLogRecord(d) + dd['levelname'] = test_levels[level_index][1] + if dd['levelname'] == "CRITICAL": + dd['exc_text'] = 'exception test' + + for i in range(random.randrange(6)): + dd[str(i) + "f"] = random.randrange(256) + r = LogRecord(dd) self.new_record.emit(r) c += 1 time.sleep(CONFIG.benchmark_interval) self.connection_finished.emit(self) - self.log.debug('Connection "{}" has stopped'.format(self.name)) + self.log.debug('Connection id={} has stopped'.format(self.conn_id)) + + +class BenchmarkMonitor(QThread): + speed_readout = Signal(str) + + def __init__(self, main_window, logger): + super().__init__(main_window) + self.logger = logger + + def run(self): + import time + readouts = [] + while True: + if self.isInterruptionRequested(): + break + time.sleep(0.5) + readouts.append(self.logger.monitor_count) + average = int(sum(readouts) / len(readouts)) * 2 + status = "{} rows/s, average: {} rows/s".format(self.logger.monitor_count * 2, average) + if self.logger.monitor_count == 0: + continue + self.speed_readout.emit(status) + print(status, average) + self.logger.monitor_count = 0 + print('Result:', int(sum(readouts) / len(readouts)) * 2, 'average') diff --git a/cutelog/log_levels.py b/cutelog/log_levels.py index 273fc32..47e1c2e 100644 --- a/cutelog/log_levels.py +++ b/cutelog/log_levels.py @@ -1,15 +1,18 @@ +import json from copy import deepcopy -from PyQt5.QtGui import QColor +from qtpy.QtGui import QColor -# from .config import CONFIG +from .config import CONFIG class LogLevel: - def __init__(self, levelno, levelname, enabled=True, - fg=None, bg=None, - fgDark=None, bgDark=None, styles=set(), stylesDark=None): - self.levelno = levelno + def __init__(self, levelname, enabled=True, fg=None, bg=None, + fgDark=None, bgDark=None, styles=set(), stylesDark=None, load=None): + if load: + self.loads(load) + return + self.levelname = levelname self.enabled = enabled @@ -19,8 +22,6 @@ def __init__(self, levelno, levelname, enabled=True, else: self.stylesDark = stylesDark - self.msg_count = 0 # @MaybeDelete: is this necessary? - if not fg: self.fg = QColor(0, 0, 0) else: @@ -39,57 +40,82 @@ def __init__(self, levelno, levelname, enabled=True, else: self.bgDark = bgDark - def set_enabled(self, value): - self.enabled = value + def set_enabled(self, enabled): + self.enabled = enabled - def copy_level(self, other_level): + def copy_from(self, other_level): for attr in self.__dict__: - if attr in ['levelno', 'levelname', 'msg_count', 'enabled']: + if attr in ['levelname']: continue self.__dict__[attr] = deepcopy(other_level.__dict__[attr]) + def dumps(self): + d = deepcopy(self.__dict__) + d['styles'] = list(d['styles']) + d['stylesDark'] = list(d['stylesDark']) + d['fg'], d['fgDark'] = d['fg'].name(), d['fgDark'].name() + d['bg'], d['bgDark'] = d['bg'].name(), d['bgDark'].name() + return json.dumps(d, ensure_ascii=False, separators=(',', ':')) + + def loads(self, string): + self.__dict__ = json.loads(string) + self.styles = set(self.styles) + self.stylesDark = set(self.stylesDark) + self.fg, self.fgDark = QColor(self.fg), QColor(self.fgDark) + self.bg, self.bgDark = QColor(self.bg), QColor(self.bgDark) + return self + def __repr__(self): - return "{}(levelname={}, "\ - "levelno={}, enabled={})".format(self.__class.__name__, self.levelname, - self.levelno, self.enabled) + return "{}(levelname={}, enabled={})".format(self.__class__.__name__, self.levelname, + self.enabled) DEFAULT_LEVELS = \ { - 50: LogLevel(50, 'CRITICAL', fg=QColor(255, 0, 0), bg=QColor(0, 0, 0), - fgDark=QColor(255, 0, 0), styles={'bold'}), - 40: LogLevel(40, 'ERROR', bg=QColor(255, 190, 190), fgDark=QColor(255, 169, 169)), - 30: LogLevel(30, 'WARNING', bg=QColor(255, 255, 180), fgDark=QColor(255, 255, 129)), - 20: LogLevel(20, 'INFO', bg=QColor(200, 255, 200), fgDark=QColor(169, 255, 169)), - 10: LogLevel(10, 'DEBUG', fg=QColor(145, 145, 145), fgDark=QColor(169, 169, 169)), + 'DEBUG': LogLevel('DEBUG', fg=QColor(145, 145, 145), fgDark=QColor(169, 169, 169)), + 'INFO': LogLevel('INFO', bg=QColor(200, 255, 200), fgDark=QColor(169, 255, 169)), + 'WARNING': LogLevel('WARNING', bg=QColor(255, 255, 180), fgDark=QColor(255, 255, 129)), + 'ERROR': LogLevel('ERROR', bg=QColor(255, 190, 190), fgDark=QColor(255, 169, 169)), + 'CRITICAL': LogLevel('CRITICAL', fg=QColor(255, 0, 0), bg=QColor(0, 0, 0), + fgDark=QColor(255, 0, 0), styles={'bold'}), } +NO_LEVEL = LogLevel("NO_LEVEL") -class LevelFilter: - def __init__(self): - self.levels = deepcopy(DEFAULT_LEVELS) - self.all_pass = False - - def add_level(self, level): - self.levels[level.levelno] = level - - def enable_level(self, level): - self.numbers.add(level) - def disable_level(self, level): - try: - self.numbers.remove(level) - except KeyError: - pass +def get_default_level(name): + if name in DEFAULT_LEVELS: + return DEFAULT_LEVELS[name] + # some Go compat + elif name in ('FATAL', 'PANIC'): + return DEFAULT_LEVELS['CRITICAL'] + elif name == 'WARN': + return DEFAULT_LEVELS['WARNING'] + else: + return NO_LEVEL - def set_all_pass(self, value): - self.all_pass = value - def __contains__(self, levelno): - if self.all_pass or levelno is None: +class LevelFilter: + def __init__(self): + self.preset_name = CONFIG['default_levels_preset'] + self.levels = CONFIG.load_levels_preset(self.preset_name) + if not self.levels: + self.levels = deepcopy(DEFAULT_LEVELS) + + def set_level(self, level): + self.levels[level.levelname] = level + + def merge_with(self, new_levels): + # This is done because self.levels gets passed to other things. + # I'm lazy, so lets just modify it inplace instead. + self.levels.clear() + self.levels.update(new_levels) + + def __contains__(self, levelname): + if levelname is None: return True - level = self.levels.get(levelno) + level = self.levels.get(levelname) if level and level.enabled: return True diff --git a/cutelog/logger_tab.py b/cutelog/logger_tab.py index 0e2016e..c5fc9fd 100644 --- a/cutelog/logger_tab.py +++ b/cutelog/logger_tab.py @@ -1,25 +1,20 @@ -# import time -import asyncio -import logging from collections import deque +from datetime import datetime from functools import partial -from PyQt5 import uic -from PyQt5.QtCore import (QAbstractItemModel, QAbstractTableModel, QEvent, - QModelIndex, QSortFilterProxyModel, Qt) -from PyQt5.QtGui import QBrush, QColor, QFont -from PyQt5.QtWidgets import (QCheckBox, QHBoxLayout, QMenu, QShortcut, QStyle, - QTableWidgetItem, QWidget) +from qtpy.QtCore import (QAbstractItemModel, QAbstractTableModel, QEvent, + QModelIndex, QSize, QSortFilterProxyModel, Qt) +from qtpy.QtGui import QBrush, QColor, QFont +from qtpy.QtWidgets import (QCheckBox, QHBoxLayout, QMenu, QShortcut, QStyle, + QTableWidgetItem, QWidget) from .config import CONFIG, Exc_Indication from .level_edit_dialog import LevelEditDialog -from .log_levels import LevelFilter, LogLevel +from .levels_preset_dialog import LevelsPresetDialog +from .log_levels import NO_LEVEL, LevelFilter, LogLevel, get_default_level from .logger_table_header import HeaderEditDialog, LoggerTableHeader from .text_view_dialog import TextViewDialog - -uif = CONFIG.get_ui_qfile('logger.ui') -LoggerTabBase = uic.loadUiType(uif) -uif.close() +from .utils import loadUi INVALID_INDEX = QModelIndex() SearchRole = 256 @@ -47,6 +42,9 @@ def row(self): else: return 0 + def is_descendant_of(self, node_path): + return self.path.startswith(node_path + '.') + def __repr__(self): return "{}(name={}, path={})".format(self.__class__.__name__, self.name, self.path) @@ -56,6 +54,7 @@ def __init__(self, parent=None): super().__init__(parent) self.root = TreeNode(None, '') self.registry = {'': self.root} + self.selected_nodes = set() def data(self, index, role=Qt.DisplayRole): if not index.isValid(): @@ -124,6 +123,60 @@ def columnCount(self, parent=None): def headerData(self, column, orientation, role): return None + def selection_changed(self, selected, deselected): + for item in selected.indexes(): + self.selected_nodes.add(item.internalPointer()) + for item in deselected.indexes(): + self.selected_nodes.remove(item.internalPointer()) + + +class LogRecord: + """ + This is a simple replacement for logging.LogRecord to support non-Python logging. + It's used to avoid creation of useless fields that logging.makeLogRecord produces, + as well as imitate some of its behavior. + """ + def __init__(self, logDict): + # this is what logging.Formatter (for asctime) did previously, but it didn't delete "msg" + self.message = logDict.get("message") + if self.message is None: + self.message = logDict.get("msg") + + # copying level field to levelname, if it doesn't exits already + self.levelname = logDict.get("levelname") + if self.levelname is None: + self.levelname = logDict.get("level") + if self.levelname is not None: + self.levelname = self.levelname.upper() + + self.created = logDict.get("created") + if self.created is None: + self.created = logDict.get("time") + if self.created is None or type(self.created) not in (int, float): + self.created = datetime.now().timestamp() + + self._logDict = logDict + self.generate_asctime() + + def __getattr__(self, name): + try: + return self.__dict__[name] + except Exception: + return self._logDict.get(name) + + def __repr__(self): + return str(self._logDict) + + def generate_asctime(self): + fmt = CONFIG['time_format_string'] + if fmt: + try: + self.asctime = datetime.fromtimestamp(self.created).strftime(fmt) + except Exception: + self.asctime = datetime.now().strftime(fmt) + else: + self.asctime = self.created + class LogRecordModel(QAbstractTableModel): @@ -133,11 +186,10 @@ def __init__(self, parent, levels, header, max_capacity=0): self.levels = levels self.records = deque() self.font = parent.font() - self.date_formatter = logging.Formatter('%(asctime)s') # to format unix timestamp as a date self.dark_theme = False self.max_capacity = max_capacity self.table_header = header - self.table_header.table_model = self # this is probably bad software practice + self.extra_mode = CONFIG['extra_mode_default'] def columnCount(self, index): return self.table_header.column_count @@ -153,26 +205,31 @@ def data(self, index, role=Qt.DisplayRole): record = self.records[index.row()] if getattr(record, '_cutelog', False): return self.data_internal(index, record, role) - level = self.levels[record.levelno] if role == Qt.DisplayRole: - column = self.table_header[index.column()] - result = getattr(record, column.name, None) + column_name = self.table_header[index.column()].name + if self.extra_mode and column_name == "message": + result = self.get_extra(record.message, record) + else: + result = getattr(record, column_name, None) + elif role == Qt.SizeHintRole: + if self.extra_mode and self.table_header[index.column()].name == 'message': + return QSize(1, CONFIG.logger_row_height * + (1 + len(self.get_fields_for_extra(record)))) + else: + return QSize(1, CONFIG.logger_row_height) elif role == Qt.DecorationRole: - if self.headerData(index.column()) == 'Message': + if self.table_header[index.column()].name == 'message': if record.exc_text: mode = CONFIG['exception_indication'] should = mode in (Exc_Indication.MSG_ICON, Exc_Indication.ICON_AND_RED_BG) if should: result = self.parent_widget.style().standardIcon(QStyle.SP_BrowserStop) elif role == Qt.FontRole: - result = None + level = self.levels.get(record.levelname, NO_LEVEL) styles = level.styles if not self.dark_theme else level.stylesDark - # although there is a more efficient way of doing this, - # this is as fast as QFont(self.font) result = QFont(CONFIG.logger_table_font, CONFIG.logger_table_font_size) if styles: - # result = QFont(self.font) if 'bold' in styles: result.setBold(True) if 'italic' in styles: @@ -180,6 +237,7 @@ def data(self, index, role=Qt.DisplayRole): if 'underline' in styles: result.setUnderline(True) elif role == Qt.ForegroundRole: + level = self.levels.get(record.levelname, NO_LEVEL) if not self.dark_theme: result = level.fg else: @@ -195,6 +253,7 @@ def data(self, index, role=Qt.DisplayRole): color = Qt.darkRed result = QBrush(color, Qt.DiagCrossPattern) return result + level = self.levels.get(record.levelname, NO_LEVEL) if not self.dark_theme: result = level.bg else: @@ -206,12 +265,14 @@ def data(self, index, role=Qt.DisplayRole): def data_internal(self, index, record, role): result = None if role == Qt.DisplayRole: - if index.column() == self.columnCount(INVALID_INDEX) - 1: # if last column + if index.column() == self.columnCount(INVALID_INDEX) - 1: result = record._cutelog else: column = self.table_header[index.column()] if column.name == 'asctime': result = record.asctime + elif role == Qt.SizeHintRole: + result = QSize(1, CONFIG.logger_row_height) elif role == Qt.FontRole: result = QFont(CONFIG.logger_table_font, CONFIG.logger_table_font_size) elif role == Qt.ForegroundRole: @@ -227,6 +288,17 @@ def data_internal(self, index, record, role): result = QBrush(color, Qt.BDiagPattern) return result + def get_fields_for_extra(self, record): + # this is a tiny bit slower than a set difference, but preserves order + return [field for field in record._logDict if field not in self.table_header.visible_names] + + def get_extra(self, msg, record): + fields = self.get_fields_for_extra(record) + result = ["{}={}".format(field, record._logDict[field]) for field in fields] + if msg is not None: + result.insert(0, msg) + return "\n".join(result) + def headerData(self, section, orientation=Qt.Horizontal, role=Qt.DisplayRole): result = None if orientation == Qt.Horizontal and role == Qt.DisplayRole: @@ -236,7 +308,6 @@ def headerData(self, section, orientation=Qt.Horizontal, role=Qt.DisplayRole): def add_record(self, record, internal=False): if not internal: self.trim_if_needed() - self.date_formatter.format(record) row = len(self.records) self.beginInsertRows(INVALID_INDEX, row, row) @@ -284,25 +355,26 @@ def get_record(self, pos): class RecordFilter(QSortFilterProxyModel): - def __init__(self, parent, namespace_tree, level_filter): + def __init__(self, parent, namespace_tree_model, level_filter): super().__init__(parent) - self.namespace_tree = namespace_tree + self.namespace_tree_model = namespace_tree_model self.level_filter = level_filter self.selection_includes_children = True self.search_filter = False + self.clear_filter() def filterAcceptsRow(self, sourceRow, sourceParent): record = self.sourceModel().get_record(sourceRow) - if record.levelno not in self.level_filter: + if record.levelname not in self.level_filter: return False else: result = True - tindexes = self.namespace_tree.selectedIndexes() - if len(tindexes) == 0: + selected_nodes = self.namespace_tree_model.selected_nodes + if len(selected_nodes) == 0: result = True else: - for tindex in tindexes: - path = tindex.internalPointer().path + for node in selected_nodes: + path = node.path if path == '': result = True break @@ -324,9 +396,10 @@ def filterAcceptsRow(self, sourceRow, sourceParent): result = False if result and self.search_filter: msg = record.message + if msg is None: + return False regexp = self.filterRegExp() if not regexp.isEmpty(): - # print(regexp.pattern()) return regexp.exactMatch(msg) else: if self.filterCaseSensitivity() == Qt.CaseInsensitive: @@ -390,33 +463,31 @@ def reset(self): self.endResetModel() def set_record(self, record): - record_dict = vars(record).copy() # copy to prevent editing the actual record - del record_dict['exc_text'] - del record_dict['exc_info'] + record_dict = record._logDict.copy() # copy to prevent editing the actual record self.record = tuple(record_dict.items()) self.reset() -class LoggerTab(*LoggerTabBase): - def __init__(self, parent, name, connection, log, loop, main_window): +class LoggerTab(QWidget): + def __init__(self, parent, name, connection, log, main_window): super().__init__(parent) self.log = log.getChild(name) self.log.debug('Starting a logger named {}'.format(name)) self.name = name self.main_window = main_window - self.loop = loop self.level_filter = LevelFilter() - self.level_filter.set_all_pass(False) self.filter_model_enabled = True self.detail_model = DetailTableModel() self.namespace_tree_model = LogNamespaceTreeModel() self.popped_out = False self.autoscroll = True self.scroll_max = 0 - self.record_count = 0 self.monitor_count = 0 # for monitoring - self.connections = [connection] + self.connections = [] + if connection is not None: + self.connections.append(connection) self.last_status_update_time = 0 + self.extra_mode = CONFIG['extra_mode_default'] self.search_bar_visible = CONFIG['search_open_default'] self.search_regex = CONFIG['search_regex_default'] @@ -425,18 +496,17 @@ def __init__(self, parent, name, connection, log, loop, main_window): self.search_start = 0 self.search_filter = False + self.setupUi() + self.setup_shortcuts() + self.setup_internal_connections() + self.set_columns_sizes() def setupUi(self): - super().setupUi(self) + self.ui = loadUi(CONFIG.get_ui_qfile('logger.ui'), baseinstance=self) self.table_header = LoggerTableHeader(self.loggerTable.horizontalHeader()) self.record_model = LogRecordModel(self, self.level_filter.levels, self.table_header) - self.createLevelButton.clicked.connect(self.create_level) - - self.loggerTable.setMouseTracking(False) - self.loggerTable.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) - self.loggerTable.verticalScrollBar().rangeChanged.connect(self.onRangeChanged) self.loggerTable.verticalScrollBar().valueChanged.connect(self.onScroll) self.loggerTable.setContextMenuPolicy(Qt.CustomContextMenu) @@ -447,12 +517,14 @@ def setupUi(self): self.loggerTable.verticalHeader().setDefaultSectionSize(CONFIG['logger_row_height']) self.namespaceTreeView.setModel(self.namespace_tree_model) - self.namespaceTreeView.selectionModel().selectionChanged.connect(self.reset_master) self.namespaceTreeView.setContextMenuPolicy(Qt.CustomContextMenu) self.namespaceTreeView.customContextMenuRequested.connect(self.open_namespace_table_menu) + tree_sel_model = self.namespaceTreeView.selectionModel() + tree_sel_model.selectionChanged.connect(self.namespace_tree_model.selection_changed) + tree_sel_model.selectionChanged.connect(self.tree_selection_changed) self.namespace_tree_model.rowsInserted.connect(self.on_tree_rows_inserted) - for levelno, level in self.level_filter.levels.items(): + for levelname, level in self.level_filter.levels.items(): self.add_level_to_table(level) self.levelsTable.doubleClicked.connect(self.level_double_clicked) self.levelsTable.installEventFilter(self) @@ -460,7 +532,7 @@ def setupUi(self): self.levelsTable.customContextMenuRequested.connect(self.open_levels_table_menu) if self.filter_model_enabled: - self.filter_model = RecordFilter(self, self.namespaceTreeView, self.level_filter) + self.filter_model = RecordFilter(self, self.namespace_tree_model, self.level_filter) self.filter_model.setSourceModel(self.record_model) self.loggerTable.setModel(self.filter_model) else: @@ -471,11 +543,28 @@ def setupUi(self): self.table_header_view = header = self.loggerTable.horizontalHeader() header.setStretchLastSection(True) - # header.sectionResized.connect(self.table_header.column_resized) + self.loggerTable.resizeColumnsToContents() header.viewport().installEventFilter(self.table_header) # read the docstring header.setContextMenuPolicy(Qt.CustomContextMenu) header.customContextMenuRequested.connect(self.open_header_menu) + self.searchLine.returnPressed.connect(self.search_down) + self.searchDownButton.clicked.connect(self.search_down) + self.searchDownButton.setMenu(self.setup_search_button_menu()) + + self.searchWidget.setVisible(self.search_bar_visible) + self.filterButton.clicked.connect(self.filter_or_clear) + self.filterButton.setToolTip('Adheres to the same settings as the search') + + def setup_shortcuts(self): + self.searchSC_Home = QShortcut('Home', self) + self.searchSC_Home.activated.connect(partial(self.loggerTable.selectRow, 0)) + self.searchSC_Home.setAutoRepeat(False) + + self.searchSC_End = QShortcut('End', self) + self.searchSC_End.activated.connect(self.select_last_row) + self.searchSC_End.setAutoRepeat(False) + self.searchSC = QShortcut('Ctrl+F', self) self.searchSC.activated.connect(self.toggle_search) self.searchSC.setAutoRepeat(False) @@ -488,37 +577,32 @@ def setupUi(self): self.searchSC_Esc.activated.connect(partial(self.set_search_visible, False)) self.searchSC_Esc.setAutoRepeat(False) - self.searchLine.returnPressed.connect(self.search_down) - self.searchDownButton.clicked.connect(self.search_down) - self.searchDownButton.setMenu(self.setup_search_button_menu()) - - self.searchWidget.setVisible(self.search_bar_visible) - self.filterButton.clicked.connect(self.filter_or_clear) - self.filterButton.setToolTip('Adheres to the same settings as the search') - - # @NextVersion: make this happen - self.createLevelButton.setVisible(False) - self.presetsButton.setVisible(False) - - self.setup_internal_connections() - self.set_columns_sizes() - def setup_search_button_menu(self): smenu = QMenu(self.searchDownButton) action_regex = smenu.addAction('Regex') action_regex.setCheckable(True) action_regex.setChecked(self.search_regex) - action_regex.triggered.connect(partial(setattr, self, 'search_regex')) + # PySide2 doesn't like functools.partial(setattr, ...) + action_regex.triggered.connect(self.set_search_regex) action_case = smenu.addAction('Case sensitive') action_case.setCheckable(True) action_case.setChecked(self.search_casesensitive) - action_case.triggered.connect(partial(setattr, self, 'search_casesensitive')) + action_case.triggered.connect(self.set_search_casesensitive) action_wild = smenu.addAction('Wildcard') action_wild.setCheckable(True) action_wild.setChecked(self.search_wildcard) - action_wild.triggered.connect(partial(setattr, self, 'search_wildcard')) + action_wild.triggered.connect(self.set_search_wildcard) return smenu + def set_search_regex(self, enabled): + self.search_regex = enabled + + def set_search_casesensitive(self, enabled): + self.search_casesensitive = enabled + + def set_search_wildcard(self, enabled): + self.search_wildcard = enabled + def setup_internal_connections(self): CONFIG.row_height_changed.connect(self.row_height_changed) @@ -532,13 +616,12 @@ def filter_or_clear(self): else: self.filterButton.setText('Filter') self.filter_model.clear_filter() + self.invalidate_filter(resize_rows=True) def set_columns_sizes(self): - # self.table_header.ignore_resizing = True cols = self.table_header.visible_columns for i, col in enumerate(cols): self.table_header_view.resizeSection(i, col.width) - # self.table_header.ignore_resizing = False def set_max_capacity(self, max_capacity): self.record_model.max_capacity = max_capacity @@ -557,7 +640,7 @@ def toggle_selected_levels(self): if index.column() == 0: checkbox = self.levelsTable.cellWidget(index.row(), index.column()).children()[1] checkbox.toggle() - self.reset_master() + self.invalidate_filter(resize_rows=True) def search_down(self): start = self.filter_model.index(self.search_start, 0, INVALID_INDEX) @@ -591,6 +674,10 @@ def search_down_or_close(self): self.search_down() def set_search_visible(self, visible): + # these 2 lines are for clearing selection when you press Esc with the search bar hidden + if not self.search_bar_visible and not visible: + self.loggerTable.clearSelection() + self.search_bar_visible = visible self.searchWidget.setVisible(self.search_bar_visible) if self.search_bar_visible: @@ -599,26 +686,25 @@ def set_search_visible(self, visible): self.searchLine.clear() def toggle_search(self): - self.search_bar_visible = not self.search_bar_visible - self.set_search_visible(self.search_bar_visible) + self.set_search_visible(not self.search_bar_visible) def on_record(self, record): - level = self.process_level(record.levelno, record.levelname) - record.levelname = level.levelname + levelname = record.levelname + if levelname: + self.process_level(levelname) self.record_model.add_record(record) - if self.autoscroll: - self.loggerTable.scrollToBottom() - self.register_logger(record.name) - self.record_count += 1 + if record.name: + self.register_logger(record.name) self.monitor_count += 1 - def add_conn_closed_record(self, conn): - d = {'_cutelog': 'Connection "{}" closed'.format(conn.name)} - record = logging.makeLogRecord(d) - self.record_model.add_record(record) + self.loggerTable.resizeRowToContents(self.filter_model.rowCount() - 1) if self.autoscroll: self.loggerTable.scrollToBottom() + def add_conn_closed_record(self, conn): + record = LogRecord({'_cutelog': 'Connection {} closed'.format(conn.conn_id)}) + self.on_record(record) + def get_record(self, index): if self.filter_model_enabled: source_index = self.filter_model.mapToSource(index) @@ -630,13 +716,14 @@ def get_record(self, index): def register_logger(self, name): self.namespace_tree_model.register_logger(name) - def process_level(self, levelno, levelname): - level = self.level_filter.levels.get(levelno) + def process_level(self, levelname): + levelname = levelname.upper() + level = self.level_filter.levels.get(levelname) if level: - level.msg_count += 1 return level - new_level = LogLevel(levelno, levelname) - self.level_filter.add_level(new_level) + new_level = LogLevel(levelname) + new_level.copy_from(get_default_level(levelname)) + self.level_filter.set_level(new_level) self.add_level_to_table(new_level) return new_level @@ -644,27 +731,24 @@ def add_level_to_table(self, level): row_count = self.levelsTable.rowCount() self.levelsTable.setRowCount(row_count + 1) + checkbox_widget = QWidget(self.levelsTable) + checkbox_widget.setStyleSheet("QWidget { background-color:none;}") + checkbox = QCheckBox() checkbox.setStyleSheet("QCheckBox::indicator { width: 15px; height: 15px;}") - checkbox.toggle() + checkbox.setChecked(level.enabled) checkbox.clicked.connect(level.set_enabled) - checkbox.clicked.connect(self.reset_master) + checkbox.clicked.connect(self.level_show_changed) checkbox.toggled.connect(level.set_enabled) checkbox_layout = QHBoxLayout() checkbox_layout.setAlignment(Qt.AlignCenter) checkbox_layout.setContentsMargins(0, 0, 0, 0) checkbox_layout.addWidget(checkbox) - - checkbox_widget = QWidget() checkbox_widget.setLayout(checkbox_layout) - checkbox_widget.setStyleSheet("QWidget { background-color:none;}") self.levelsTable.setCellWidget(row_count, 0, checkbox_widget) - self.levelsTable.setItem(row_count, 1, QTableWidgetItem(str(level.levelno))) - self.levelsTable.setItem(row_count, 2, QTableWidgetItem(level.levelname)) - - self.levelsTable.sortItems(1, Qt.SortOrder(Qt.AscendingOrder)) + self.levelsTable.setItem(row_count, 1, QTableWidgetItem(level.levelname)) self.levelsTable.resizeColumnToContents(1) def open_namespace_table_menu(self, position): @@ -674,13 +758,13 @@ def open_namespace_table_menu(self, position): if self.filter_model_enabled: include_children_action.setChecked(self.filter_model.selection_includes_children) else: - include_children_action.set_enabled(False) + include_children_action.setEnabled(False) include_children_action.triggered.connect(self.toggle_selection_includes_children) menu.popup(self.namespaceTreeView.viewport().mapToGlobal(position)) def toggle_selection_includes_children(self, val): self.filter_model.selection_includes_children = val - self.reset_master() + self.invalidate_filter(resize_rows=True) def open_levels_table_menu(self, position): menu = QMenu(self) @@ -689,8 +773,11 @@ def open_levels_table_menu(self, position): disable_all_action = menu.addAction("Disable all") disable_all_action.triggered.connect(self.disable_all_levels) menu.addSeparator() - edit_action = menu.addAction("Edit selected level") - edit_action.triggered.connect(self.open_edit_level_dialog) + if self.levelsTable.selectedIndexes(): + edit_action = menu.addAction("Edit selected level") + edit_action.triggered.connect(self.open_level_edit_dialog) + presets_dialog_action = menu.addAction("Presets") + presets_dialog_action.triggered.connect(self.open_levels_preset_dialog) menu.popup(self.levelsTable.viewport().mapToGlobal(position)) def open_logger_table_menu(self, position): @@ -715,9 +802,6 @@ def open_header_menu(self, position): menu = QMenu(self) customize_header = menu.addAction("Customize header") customize_header.triggered.connect(self.open_header_dialog) - reset_header_action = menu.addAction("Reset header") - reset_header_action.triggered.connect(self.table_header.reset_columns) - reset_header_action.triggered.connect(self.set_columns_sizes) menu.popup(self.table_header_view.viewport().mapToGlobal(position)) def open_header_dialog(self): @@ -730,15 +814,24 @@ def header_changed(self, preset_name, set_as_default, columns): self.table_header.preset_name = preset_name if set_as_default: CONFIG.set_option('default_header_preset', preset_name) + CONFIG.save_header_preset(preset_name, columns) self.table_header.replace_columns(columns) + self.record_model.modelReset.emit() self.set_columns_sizes() + if self.extra_mode: + self.loggerTable.resizeRowsToContents() def merge_with_records(self, new_records): self.record_model.merge_with_records(new_records) for record in new_records: - self.register_logger(record.name) - level = self.process_level(record.levelno, record.levelname) - record.levelname = level.levelname + if record._cutelog is not None: + continue + if record.name: + self.register_logger(record.name) + if record.levelname: + level = self.process_level(record.levelname) + record.levelname = level.levelname + self.invalidate_filter(resize_rows=True) def update_detail(self, sel, desel): indexes = sel.indexes() @@ -762,50 +855,128 @@ def enable_all_levels(self): checkbox = self.levelsTable.cellWidget(row, 0).children()[1] if not checkbox.isChecked(): checkbox.setChecked(True) - self.reset_master() + self.level_show_changed(True) def disable_all_levels(self): for row in range(self.levelsTable.rowCount()): checkbox = self.levelsTable.cellWidget(row, 0).children()[1] if checkbox.isChecked(): checkbox.setChecked(False) - self.reset_master() + self.level_show_changed(False) + + def set_dark_theme(self, enabled): + self.record_model.dark_theme = enabled - def set_dark_theme(self, value): - self.record_model.dark_theme = value + def set_extra_mode(self, enabled): + self.extra_mode = enabled + self.record_model.extra_mode = enabled + self.loggerTable.resizeRowsToContents() def level_double_clicked(self, index): row, column = index.row(), index.column() if column == 0: # if you're clicking at the checkbox widget, just toggle it instead checkbox = self.levelsTable.cellWidget(row, column).children()[1] checkbox.toggle() - self.reset_master() + self.level_show_changed(checkbox.isChecked()) else: - self.open_edit_level_dialog(row) + self.open_level_edit_dialog(row) - def open_edit_level_dialog(self, row=None): + def open_level_edit_dialog(self, row=None): if not row: selected = self.levelsTable.selectedIndexes() if not selected: return row = selected[0].row() - levelno = self.levelsTable.item(row, 1).data(Qt.DisplayRole) - level = self.level_filter.levels[int(levelno)] + levelname = self.levelsTable.item(row, 1).data(Qt.DisplayRole) + level = self.level_filter.levels[levelname] d = LevelEditDialog(self.main_window, level) + d.level_changed.connect(self.level_changed) d.setWindowModality(Qt.NonModal) d.setWindowTitle('Level editor') d.open() - def create_level(self): - self.log.warn('Creating level') - d = LevelEditDialog(creating_new_level=True) - d.setWindowModality(Qt.NonModal) - d.setWindowTitle('Level editor') + def open_levels_preset_dialog(self): + preset_name = self.level_filter.preset_name + d = LevelsPresetDialog(self.main_window, preset_name, self.level_filter.levels) + d.levels_changed.connect(self.levels_changed) + d.setWindowTitle('Header editor') d.open() - def reset_master(self, sel=None, desel=None): - self.record_model.beginResetModel() - self.record_model.endResetModel() + def level_changed(self, level): + self.level_filter.set_level(level) + CONFIG.save_levels_preset(self.level_filter.preset_name, self.level_filter.levels) + + def levels_changed(self, preset_name, set_as_default, levels): + self.level_filter.preset_name = preset_name + if set_as_default: + CONFIG.set_option('default_levels_preset', preset_name) + self.level_filter.merge_with(levels) + self.regen_levels_table(self.level_filter.levels) + CONFIG.save_levels_preset(preset_name, levels) + self.invalidate_filter(resize_rows=True) + + def regen_levels_table(self, levels): + self.levelsTable.clearContents() + self.levelsTable.setRowCount(0) + for levelname in levels: + level = levels[levelname] + self.add_level_to_table(level) + + def tree_selection_changed(self, sel, desel): + # Problem: when RecordFilter un-hides a row, that row forgets its size. + # This creates major problems in extra mode. + # + # The obvious solution is to use ResizeToContents mode on the vertical + # header of the table and let Qt handle it. But it slows down insertions + # to a halt, but it also doesn't have any speed benefits of this approach. + # + # So, the second best solution is to force a resize only when rows can + # definitely reappear. The drawback is code bloat, the benefit is speed + # in certain cases + cur_sel = self.namespace_tree_model.selected_nodes + sel = [i.internalPointer() for i in sel.indexes()] + desel = [i.internalPointer() for i in desel.indexes()] + prev_sel = cur_sel.difference(sel) + prev_sel = prev_sel.union(desel) + # print('prev:', prev_sel) + # print('cur :', cur_sel) + + resize_rows = False + # empty filter, resizing needed + if len(cur_sel) == 0: + resize_rows = True + # filter can only converge, no resizing needed + elif len(prev_sel) == 0: + resize_rows = False + else: + # if selection includes children, and at least one currently + # selected node is not a descendant of a previously selected + # node, then resizing is needed + if self.filter_model.selection_includes_children: + for node in cur_sel: + if not any([node.is_descendant_of(pnode.path) for pnode in prev_sel]): + resize_rows = True + break + # if selection doesn't include children, records can re-appear + # when a currently selected node wasn't selected before + else: + for node in cur_sel: + if node not in prev_sel: + resize_rows = True + break + + self.log.debug('resize_rows = {}'.format(resize_rows)) + self.invalidate_filter(resize_rows=resize_rows) + + def level_show_changed(self, val): + # resize_rows is only needed when rows get un-hidden, because they forget their size + self.invalidate_filter(resize_rows=val) + + def invalidate_filter(self, resize_rows=True): + self.filter_model.invalidateFilter() + # resizeRowsToContents is very slow, so it's best to try to do it only when necessary + if resize_rows: + self.loggerTable.resizeRowsToContents() if self.autoscroll: self.loggerTable.scrollToBottom() @@ -845,23 +1016,16 @@ def remove_connection(self, connection): self.connections.remove(connection) self.add_conn_closed_record(connection) - def stop_all_connections(self): + def destroy(self): for conn in self.connections: conn.tab_closed = True + self.record_model.records.clear() def row_height_changed(self, new_height): + self.log.info("new height = {}".format(new_height)) self.loggerTable.verticalHeader().setDefaultSectionSize(new_height) + self.loggerTable.resizeRowsToContents() - async def monitor(self): - "Used only when benchmark parameter of LogServer is True" - records = [] - while True: - await asyncio.sleep(0.5) - status = "{} rows/s".format(self.monitor_count * 2) - if self.monitor_count == 0: - break - records.append(self.monitor_count) - print(status, int(sum(records) / len(records)) * 2, 'average') - self.main_window.set_status(status) - self.monitor_count = 0 - print('Result:', int(sum(records) / len(records)) * 2, 'average') + def select_last_row(self): + row = self.record_model.rowCount() + self.loggerTable.selectRow(row - 1) diff --git a/cutelog/logger_table_header.py b/cutelog/logger_table_header.py index 05d62e5..444516c 100644 --- a/cutelog/logger_table_header.py +++ b/cutelog/logger_table_header.py @@ -1,47 +1,50 @@ -import copy import json +from copy import deepcopy from functools import partial -from PyQt5.QtCore import QEvent, QObject, Qt, pyqtSignal -from PyQt5.QtWidgets import (QCheckBox, QDialog, QDialogButtonBox, - QInputDialog, QLabel, QLineEdit, QListWidget, - QListWidgetItem, QMenu, QVBoxLayout) +from qtpy.QtCore import QEvent, QObject, Qt, Signal +from qtpy.QtWidgets import (QCheckBox, QDialog, QDialogButtonBox, QInputDialog, + QLabel, QLineEdit, QListWidget, QListWidgetItem, + QMenu, QVBoxLayout) from .config import CONFIG from .utils import show_warning_dialog class Column: - def __init__(self, name=None, title=None, visible=True, width=50, load=None): - if load: - self.load_from_string(load) - else: - self.name = name - self.title = title - self.visible = visible - self.width = width - - def dump_to_string(self): + def __init__(self, name=None, title=None, visible=True, width=50): + self.name = name + self.title = title + self.visible = visible + self.width = width + + def dumps(self, width=None): + # So QHeaderView sucks. It's hard to make it do what humans expect. + # For that reason, the program has many tiny hacks around its behavior. + # One of those hacks: setting the width of the last column to a small + # value to help with resizing when header.stretchLastSection is True. + if width is None: + width = self.width d = {'name': self.name, 'title': self.title, - 'width': self.width, 'visible': self.visible} + 'width': width, 'visible': self.visible} return json.dumps(d, ensure_ascii=False, separators=(',', ':')) - def load_from_string(self, string): - d = json.loads(string) - self.name = d['name'] - self.title = d['title'] - self.visible = d['visible'] - self.width = int(d['width']) + def loads(self, string): + self.__dict__ = json.loads(string) + self.width = int(self.width) + return self def __repr__(self): - return "{}(name={}, title={})".format(self.__class__.__name__, self.name, self.title) + return "{}(name={}, title={}, width={})".format(self.__class__.__name__, self.name, + self.title, self.width) +# @Future: replace with dict when Python 3.6 becomes the minimum DEFAULT_COLUMNS = [ Column('asctime', 'Time', width=125), - Column('name', 'Logger name', width=80), + Column('name', 'Name', width=80), Column('levelname', 'Level', width=60), - Column('levelno', '#', width=22), + Column('levelno', '#', False, width=22), Column('funcName', 'Function', False, width=80), Column('pathname', 'Path', False, width=120), Column('filename', 'File', False, width=75), @@ -51,21 +54,23 @@ def __repr__(self): Column('processName', 'Process name', False, width=80), Column('thread', 'Thread', False, width=100), Column('threadName', 'Thread name', False, width=70), - Column('message', 'Message'), + Column('message', 'Message', True, width=10), ] +SPECIAL_COLUMNS = {"created", "time", "levelname", "level", "name", + "message", "msg", "exc_text"} + class LoggerTableHeader(QObject): def __init__(self, header_view): super().__init__() + self.header_view = header_view self.preset_name = CONFIG['default_header_preset'] columns = CONFIG.load_header_preset(self.preset_name) if not columns: columns = DEFAULT_COLUMNS - self.columns = copy.deepcopy(columns) - self.visible_columns = [c for c in self.columns if c.visible] - self.header_view = header_view - self.table_model = None # will be set from within the model immediately + self.columns = deepcopy(columns) + self.regen_visible() def eventFilter(self, object, event): """ @@ -88,16 +93,16 @@ def mouse_released(self): col.width = self.header_view.sectionSize(section) CONFIG.save_header_preset(self.preset_name, self.columns) - def reset_columns(self): - self.replace_columns(copy.deepcopy(DEFAULT_COLUMNS), save=False) - self.preset_name = 'Stock' - - def replace_columns(self, new_columns, save=True): + def replace_columns(self, new_columns): self.columns = new_columns + self.regen_visible() + + def regen_visible(self): self.visible_columns = [c for c in self.columns if c.visible] - self.table_model.modelReset.emit() - if save: - CONFIG.save_header_preset(self.preset_name, self.columns) + self.visible_names = set([c.name for c in self.visible_columns]) | SPECIAL_COLUMNS + print(self.visible_names) + for i, column in enumerate(self.visible_columns): + self.header_view.resizeSection(i, column.width) def __getitem__(self, index): return self.visible_columns[index] @@ -131,8 +136,8 @@ def setData(self, role, value): class HeaderEditDialog(QDialog): - # name of the current preset, whether to set this preset as default, list of Columns - header_changed = pyqtSignal(str, bool, list) + # name of the current preset; whether to set this preset as default; list of Columns + header_changed = Signal(str, bool, list) def __init__(self, parent, table_header): super().__init__(parent) @@ -140,13 +145,14 @@ def __init__(self, parent, table_header): self.table_header = table_header self.default_preset_name = None self.preset_name = table_header.preset_name - self.columns = copy.deepcopy(table_header.columns) + self.columns = deepcopy(table_header.columns) self.setupUi() + self.update_output() def setupUi(self): - self.resize(200, 400) + self.resize(240, 400) self.vbox = QVBoxLayout(self) - self.presetLabel = QLabel("Preset: {}".format(self.preset_name), self) + self.presetLabel = QLabel(self) self.columnList = QListWidget(self) self.setAsDefaultCheckbox = QCheckBox("Set as default preset", self) self.vbox.addWidget(self.presetLabel) @@ -165,22 +171,27 @@ def setupUi(self): # for a dumb qss hack to make selected checkboxes not white on a light theme self.columnList.setObjectName("ColumnList") - self.buttonBox = QDialogButtonBox(QDialogButtonBox.Save | QDialogButtonBox.Cancel, self) + buttons = QDialogButtonBox.Reset | QDialogButtonBox.Save | QDialogButtonBox.Cancel + self.buttonBox = QDialogButtonBox(buttons, self) self.vbox.addWidget(self.buttonBox) self.buttonBox.accepted.connect(self.accept) self.buttonBox.rejected.connect(self.reject) - - self.fill_column_list() - self.set_default_checkbox() + self.resetButton = self.buttonBox.button(QDialogButtonBox.Reset) + self.resetButton.clicked.connect(self.reset_to_stock) def eventFilter(self, object, event): if event.type() == QEvent.KeyPress: if event.key() == Qt.Key_Space or event.key() == Qt.Key_Return: self.toggle_selected_columns() return True + if event.key() == Qt.Key_Delete: + self.delete_selected() + return True return False - def fill_column_list(self): + def update_output(self): + self.presetLabel.setText("Preset: {}".format(self.preset_name)) + self.setAsDefaultCheckbox.setChecked(CONFIG['default_header_preset'] == self.preset_name) self.columnList.clear() for column in self.columns: ColumnListItem(self.columnList, column) @@ -195,6 +206,10 @@ def accept(self): def reject(self): self.done(0) + def reset_to_stock(self): + self.columns = deepcopy(DEFAULT_COLUMNS) + self.update_output() + def read_columns_from_list(self): new_columns = [] for i in range(self.columnList.count()): @@ -242,9 +257,7 @@ def load_preset(self, name): self.columns = new_columns self.preset_name = name - self.fill_column_list() - self.presetLabel.setText("Preset: {}".format(name)) - self.set_default_checkbox() + self.update_output() def new_preset_dialog(self): d = QInputDialog(self) @@ -264,15 +277,14 @@ def create_new_preset(self, name): return self.preset_name = name - self.presetLabel.setText("Preset: {}".format(name)) + self.update_output() CONFIG.save_header_preset(name, self.columns) - self.setAsDefaultCheckbox.setChecked(False) def delete_preset(self, name): CONFIG.delete_header_preset(name) if name == self.preset_name: - self.columns = copy.deepcopy(DEFAULT_COLUMNS) - self.fill_column_list() + self.columns = deepcopy(DEFAULT_COLUMNS) + self.update_output() def create_new_column_dialog(self): d = CreateNewColumnDialog(self) @@ -282,28 +294,27 @@ def create_new_column_dialog(self): def add_new_column(self, name, title): new_column = Column(name, title) - # if the last column is message, insert this column before it (i think it makes sense?) - if self.columns[-1].name == 'message': + # if the last column is message, insert this column before it (I think that makes sense?) + if len(self.columns) == 0: + self.columns.append(new_column) + elif self.columns[-1].name in ('message', 'msg'): self.columns.insert(-1, new_column) else: self.columns.append(new_column) - self.fill_column_list() - - def set_default_checkbox(self): - self.setAsDefaultCheckbox.setChecked(CONFIG['default_header_preset'] == self.preset_name) + self.update_output() def delete_selected(self): selected = self.columnList.selectedItems() for item in selected: self.columnList.takeItem(self.columnList.row(item)) self.read_columns_from_list() - self.fill_column_list() + self.update_output() class CreateNewColumnDialog(QDialog): # name, title - add_new_column = pyqtSignal(str, str) + add_new_column = Signal(str, str) def __init__(self, parent): super().__init__(parent) diff --git a/cutelog/main_window.py b/cutelog/main_window.py index 017136d..4383588 100644 --- a/cutelog/main_window.py +++ b/cutelog/main_window.py @@ -1,58 +1,58 @@ -import asyncio -from functools import partial +from qtpy.QtCore import QFile, Qt, QTextStream +from qtpy.QtWidgets import (QFileDialog, QInputDialog, QMainWindow, QMenuBar, + QStatusBar, QTabWidget) -from PyQt5 import uic -from PyQt5.QtCore import Qt, QFile, QTextStream -from PyQt5.QtWidgets import QInputDialog, QMenuBar - -from .listener import LogServer -from .logger_tab import LoggerTab -from .settings_dialog import SettingsDialog from .about_dialog import AboutDialog +from .config import CONFIG +from .listener import LogServer +from .logger_tab import LoggerTab, LogRecord from .merge_dialog import MergeDialog from .pop_in_dialog import PopInDialog -from .utils import show_warning_dialog, center_widget_on_screen -from .config import CONFIG - - -uif = CONFIG.get_ui_qfile('main_window.ui') -MainWindowBase = uic.loadUiType(uif) -uif.close() +from .settings_dialog import SettingsDialog +from .utils import (center_widget_on_screen, show_critical_dialog, + show_warning_dialog) -class MainWindow(*MainWindowBase): +class MainWindow(QMainWindow): - def __init__(self, loop, log, app): - self.loop = loop + def __init__(self, log, app): self.log = log.getChild('Main') self.app = app super().__init__() - self.stop_signal = asyncio.Event() - self.finished = asyncio.Event() self.dark_theme = CONFIG['dark_theme_default'] self.single_tab_mode = CONFIG['single_tab_mode_default'] self.loggers_by_name = {} # name -> LoggerTab + self.popped_out_loggers = {} - # used for starting/stopping the server self.server_running = False - self.start_server_again = asyncio.Event() - self.stop_reason = None + self.shutting_down = False self.setupUi() - - self.loop.create_task(self.run()) + self.start_server() + # self.load_records('/home/bus/4krecords.log') + # self.load_records('/home/bus/busocket_records.log') def setupUi(self): - super().setupUi(self) + self.resize(800, 600) self.setWindowTitle('cutelog') + self.loggerTabWidget = QTabWidget(self) + self.loggerTabWidget.setTabsClosable(True) + self.loggerTabWidget.setMovable(True) + self.loggerTabWidget.setTabBarAutoHide(True) + self.loggerTabWidget.currentChanged.connect(self.change_actions_state) + self.setCentralWidget(self.loggerTabWidget) + + self.statusbar = QStatusBar(self) + self.setStatusBar(self.statusbar) + self.setup_menubar() self.setup_action_triggers() self.setup_shortcuts() - self.connectionTabWidget.tabCloseRequested.connect(self.close_tab) + self.loggerTabWidget.tabCloseRequested.connect(self.close_tab) self.reload_stylesheet() self.restore_geometry() @@ -60,12 +60,14 @@ def setupUi(self): self.show() def setup_menubar(self): - "Copied from pyuic-generated code to gain some control" self.menubar = QMenuBar(self) self.setMenuBar(self.menubar) # File menu self.menuFile = self.menubar.addMenu("File") + self.actionLoadRecords = self.menuFile.addAction('Load records') + self.actionSaveRecords = self.menuFile.addAction('Save records') + self.menuFile.addSeparator() self.actionDarkTheme = self.menuFile.addAction('Dark theme') self.actionDarkTheme.setCheckable(True) self.actionDarkTheme.setChecked(self.dark_theme) @@ -77,54 +79,100 @@ def setup_menubar(self): self.menuFile.addSeparator() self.actionQuit = self.menuFile.addAction('Quit') - # Edit menu - self.menuEdit = self.menubar.addMenu("Edit") - - self.menuEditTabs = self.menuEdit.addMenu("Tabs") - self.actionCloseTab = self.menuEditTabs.addAction('Close') - self.actionPopOut = self.menuEditTabs.addAction('Pop out') - self.actionRenameTab = self.menuEditTabs.addAction('Rename') - self.actionPopIn = self.menuEditTabs.addAction('Pop in tabs...') - self.actionMergeTabs = self.menuEditTabs.addAction('Merge tabs...') - - self.menuEditServer = self.menuEdit.addMenu("Server") - self.actionRestartServer = self.menuEditServer.addAction('Restart server') - self.actionStartStopServer = self.menuEditServer.addAction('Stop server') - - self.menuEditRecords = self.menuEdit.addMenu("Records") - self.actionTrimTabRecords = self.menuEditRecords.addAction('Trim records of this tab') - self.actionSetMaxCapacity = self.menuEditRecords.addAction('Set max capacity for this tab') + # Tab menu + self.menuTab = self.menubar.addMenu("Tab") + self.actionCloseTab = self.menuTab.addAction('Close') + self.actionPopOut = self.menuTab.addAction('Pop out') + self.actionRenameTab = self.menuTab.addAction('Rename') + self.menuTab.addSeparator() + self.actionPopIn = self.menuTab.addAction('Pop in tabs...') + self.actionMergeTabs = self.menuTab.addAction('Merge tabs...') + self.menuTab.addSeparator() + self.actionExtraMode = self.menuTab.addAction('Extra mode') + self.actionExtraMode.setCheckable(True) + + # Server menu + self.menuServer = self.menubar.addMenu("Server") + self.actionRestartServer = self.menuServer.addAction('Restart server') + self.actionStartStopServer = self.menuServer.addAction('Stop server') + + # Records menu + self.menuRecords = self.menubar.addMenu("Records") + self.actionTrimTabRecords = self.menuRecords.addAction('Trim records') + self.actionSetMaxCapacity = self.menuRecords.addAction('Set max capacity') # Help menu self.menuHelp = self.menubar.addMenu("Help") self.actionAbout = self.menuHelp.addAction("About cutelog") + self.change_actions_state() # to disable all logger actions, since they don't function yet + def setup_action_triggers(self): + # File menu + self.actionLoadRecords.triggered.connect(self.open_load_records_dialog) + self.actionSaveRecords.triggered.connect(self.open_save_records_dialog) + self.actionDarkTheme.toggled.connect(self.toggle_dark_theme) + self.actionSingleTab.triggered.connect(self.set_single_tab_mode) + # self.actionReloadStyle.triggered.connect(self.reload_stylesheet) + self.actionSettings.triggered.connect(self.settings_dialog) self.actionQuit.triggered.connect(self.shutdown) - self.actionSingleTab.triggered.connect(partial(setattr, self, 'single_tab_mode')) - self.actionRenameTab.triggered.connect(self.rename_tab_dialog) + # Tab meny self.actionCloseTab.triggered.connect(self.close_current_tab) - self.actionPopOut.triggered.connect(self.pop_out_tab) + self.actionRenameTab.triggered.connect(self.rename_tab_dialog) self.actionPopIn.triggered.connect(self.pop_in_tabs_dialog) - self.actionDarkTheme.toggled.connect(self.toggle_dark_theme) + self.actionMergeTabs.triggered.connect(self.merge_tabs_dialog) + self.actionExtraMode.triggered.connect(self.toggle_extra_mode) - # self.actionReloadStyle.triggered.connect(self.reload_stylesheet) + # Server menu self.actionRestartServer.triggered.connect(self.restart_server) self.actionStartStopServer.triggered.connect(self.start_or_stop_server) - self.actionAbout.triggered.connect(self.about_dialog) - self.actionSettings.triggered.connect(self.settings_dialog) - self.actionMergeTabs.triggered.connect(self.merge_tabs_dialog) + # Records menu self.actionTrimTabRecords.triggered.connect(self.trim_records_dialog) self.actionSetMaxCapacity.triggered.connect(self.max_capacity_dialog) + # About menu + self.actionAbout.triggered.connect(self.about_dialog) + + def change_actions_state(self, index=None): + logger, _ = self.current_logger_and_index() + # if there are no loggers in tabs, these actions will be disabled: + actions = [self.actionCloseTab, self.actionExtraMode, self.actionPopOut, + self.actionRenameTab, self.actionPopIn, + self.actionTrimTabRecords, self.actionSetMaxCapacity, self.actionSaveRecords] + + if not logger: + for action in actions: + action.setDisabled(True) + self.actionExtraMode.setChecked(False) + if len(self.popped_out_loggers) > 0: + self.actionPopIn.setDisabled(False) + else: + for action in actions: + action.setDisabled(False) + if len(self.loggers_by_name) == self.loggerTabWidget.count(): + self.actionPopIn.setDisabled(True) + self.actionExtraMode.setChecked(logger.extra_mode) + + # if all loggers are popped in + if len(self.popped_out_loggers) == 0: + self.actionPopIn.setDisabled(True) + + if len(self.loggers_by_name) <= 1: + self.actionMergeTabs.setDisabled(True) + else: + self.actionMergeTabs.setDisabled(False) + + def set_single_tab_mode(self, enabled): + self.single_tab_mode = enabled + def setup_shortcuts(self): self.actionQuit.setShortcut('Ctrl+Q') self.actionDarkTheme.setShortcut('Ctrl+S') # self.actionReloadStyle.setShortcut('Ctrl+R') - self.actionSettings.setShortcut('Ctrl+A') + # self.actionSettings.setShortcut('Ctrl+A') self.actionCloseTab.setShortcut('Ctrl+W') def save_geometry(self): @@ -146,7 +194,6 @@ def about_dialog(self): d.open() def reload_stylesheet(self): - # @Improvement: make one common function for both/many? styles? if self.dark_theme: self.reload_dark_style() else: @@ -176,60 +223,74 @@ def reload_dark_style(self): def set_style_to_stock(self): self.app.setStyleSheet('') - def toggle_dark_theme(self, value): - self.dark_theme = value + def toggle_dark_theme(self, enabled): + self.dark_theme = enabled self.reload_stylesheet() for logger in self.loggers_by_name.values(): - logger.set_dark_theme(value) + logger.set_dark_theme(enabled) - async def run(self): - while True: - self.create_server() - self.server.start() - self.server_running = True - await self.stop_signal.wait() - self.server.close_server(wait=False) + def toggle_extra_mode(self, enabled): + logger, _ = self.current_logger_and_index() + if not logger: + return + logger.set_extra_mode(enabled) - # executor is used here because stopping threads can take some time and stall the loop - await self.loop.run_in_executor(None, self.server.wait_connections_stopped) + def start_server(self): + self.log.debug('Starting the server') + self.server = LogServer(self, self.on_connection, self.log) + self.server.start() + self.server_running = True + self.actionStartStopServer.setText('Stop server') + def stop_server(self): + if self.server_running: + self.log.debug('Stopping the server') + self.server.close_server() self.server_running = False - self.log.debug('Run got the stop_signal with reason {}'.format(self.stop_reason)) - if self.stop_reason == 'restart': - continue - elif self.stop_reason == 'pause': - await self.start_server_again.wait() - continue - else: - break + del self.server + self.server = None + self.actionStartStopServer.setText('Start server') - self.log.info('Main window stopped') - self.finished.set() + def restart_server(self): + self.log.debug('Restarting the server') + self.stop_server() + self.start_server() - def on_connection(self, conn, name): - self.log.debug('New connection: "{}"'.format(name)) + def start_or_stop_server(self): + if self.server_running: + self.stop_server() + else: + self.start_server() - # self.single_tab_mode is ignored if there are 0 tabs currently - single_tab_mode = self.single_tab_mode and len(self.loggers_by_name) > 0 + def on_connection(self, conn, conn_id): + self.log.debug('New connection id={}'.format(conn_id)) - if single_tab_mode: + if self.single_tab_mode and len(self.loggers_by_name) > 0: new_logger = list(self.loggers_by_name.values())[0] new_logger.add_connection(conn) else: - name = self.make_logger_name_unique(name) - new_logger = LoggerTab(self.connectionTabWidget, name, conn, self.log, self.loop, self) - new_logger.set_dark_theme(self.dark_theme) + new_logger, index = self.create_logger(conn) + self.loggerTabWidget.setCurrentIndex(index) conn.new_record.connect(new_logger.on_record) conn.connection_finished.connect(new_logger.remove_connection) - if not single_tab_mode: - self.connectionTabWidget.addTab(new_logger, name) - self.loggers_by_name[name] = new_logger - - if self.server.benchmark and name == 'benchmark': - self.loop.create_task(new_logger.monitor()) + if self.server.benchmark and conn_id == -1: + from .listener import BenchmarkMonitor + bm = BenchmarkMonitor(self, new_logger) + bm.speed_readout.connect(self.set_status) + conn.connection_finished.connect(bm.requestInterruption) + self.server.threads.append(bm) + bm.start() + + def create_logger(self, conn, name=None): + name = self.make_logger_name_unique("Logger" if name is None else name) + new_logger = LoggerTab(self.loggerTabWidget, name, conn, self.log, self) + new_logger.set_dark_theme(self.dark_theme) + self.loggers_by_name[name] = new_logger + index = self.loggerTabWidget.addTab(new_logger, name) + return new_logger, index def make_logger_name_unique(self, name): name_f = "{} {{}}".format(name) @@ -239,30 +300,8 @@ def make_logger_name_unique(self, name): c += 1 return name - def create_server(self): - self.log.debug('Creating the server') - self.stop_reason = None - self.stop_signal = asyncio.Event() # putting .clear() here has some async weirdness - self.start_server_again = asyncio.Event() - self.server = LogServer(self, self.on_connection, self.log, self.stop_signal) - - def restart_server(self): - "Stops the server, and run() creates and starts again it automatically" - self.log.debug('Restarting the server') - self.stop_reason = 'restart' - self.stop_signal.set() - - def start_or_stop_server(self): - if self.server_running: - self.stop_reason = 'pause' - self.stop_signal.set() - self.actionStartStopServer.setText('Start server') - else: - self.start_server_again.set() - self.actionStartStopServer.setText('Stop server') - - def set_status(self, string): - self.statusBar().showMessage(string) + def set_status(self, string, timeout=3000): + self.statusBar().showMessage(string, timeout) def rename_tab_dialog(self): logger, index = self.current_logger_and_index() @@ -286,7 +325,7 @@ def rename_current_tab(self, new_name): logger.name = new_name self.loggers_by_name[new_name] = logger logger.log.name = '.'.join(logger.log.name.split('.')[:-1]) + '.{}'.format(new_name) - self.connectionTabWidget.setTabText(index, new_name) + self.loggerTabWidget.setTabText(index, new_name) def trim_records_dialog(self): logger, index = self.current_logger_and_index() @@ -357,26 +396,30 @@ def close_current_tab(self): def close_tab(self, index): self.log.debug("Tab close requested: {}".format(index)) - logger = self.connectionTabWidget.widget(index) - self.connectionTabWidget.removeTab(index) + logger = self.loggerTabWidget.widget(index) + self.loggerTabWidget.removeTab(index) + self.log.debug(logger.name) self.destroy_logger(logger) def destroy_logger(self, logger): - logger.setParent(None) - logger.stop_all_connections() del self.loggers_by_name[logger.name] + logger.setParent(None) + logger.destroy() del logger def close_popped_out_logger(self, logger): del self.loggers_by_name[logger.name] + del self.popped_out_loggers[logger.name] del logger + if len(self.popped_out_loggers): + self.actionPopIn.setDisabled(True) def current_logger_and_index(self): - index = self.connectionTabWidget.currentIndex() + index = self.loggerTabWidget.currentIndex() if index == -1: return None, None - logger = self.connectionTabWidget.widget(index) + logger = self.loggerTabWidget.widget(index) return logger, index def pop_out_tab(self): @@ -388,8 +431,9 @@ def pop_out_tab(self): logger.destroyed.connect(logger.closeEvent) logger.setAttribute(Qt.WA_DeleteOnClose, True) logger.setWindowFlags(Qt.Window) - logger.setWindowTitle('cutelog: "{}"'.format(self.connectionTabWidget.tabText(index))) - self.connectionTabWidget.removeTab(index) + logger.setWindowTitle('cutelog: "{}"'.format(self.loggerTabWidget.tabText(index))) + self.popped_out_loggers[logger.name] = logger + self.loggerTabWidget.removeTab(index) logger.popped_out = True logger.show() center_widget_on_screen(logger) @@ -412,7 +456,94 @@ def pop_in_tab(self, logger): logger.destroyed.disconnect(logger.closeEvent) logger.setWindowTitle(logger.name) logger.popped_out = False - self.connectionTabWidget.addTab(logger, logger.windowTitle()) + del self.popped_out_loggers[logger.name] + index = self.loggerTabWidget.addTab(logger, logger.windowTitle()) + self.loggerTabWidget.setCurrentIndex(index) + + def open_load_records_dialog(self): + d = QFileDialog(self) + d.setFileMode(QFileDialog.ExistingFile) + d.fileSelected.connect(self.load_records) + d.setWindowTitle('Load records from...') + d.open() + + def load_records(self, load_path): + import json + from os import path + + class RecordDecoder(json.JSONDecoder): + def __init__(self, *args, **kwargs): + json.JSONDecoder.__init__(self, object_hook=self.object_hook, *args, **kwargs) + + def object_hook(self, obj): + if '_created' in obj: + obj['created'] = obj['_created'] + del obj['_created'] + record = LogRecord(obj) + del record._logDict['created'] + else: + record = LogRecord(obj) + return record + + name = path.basename(load_path) + index = None + + try: + with open(load_path, 'r') as f: + records = json.load(f, cls=RecordDecoder) + new_logger, index = self.create_logger(None, name) + new_logger.merge_with_records(records) + self.loggerTabWidget.setCurrentIndex(index) + self.set_status('Records have been loaded into "{}" tab'.format(new_logger.name)) + except Exception as e: + if index: + self.close_tab(index) + text = "Error while loading records: \n{}".format(e) + self.log.error(text, exc_info=True) + show_critical_dialog(self, "Couldn't load records", text) + + def open_save_records_dialog(self): + from functools import partial + logger, _ = self.current_logger_and_index() + if not logger: + return + + d = QFileDialog(self) + d.selectFile(logger.name + '.log') + d.setFileMode(QFileDialog.AnyFile) + d.fileSelected.connect(partial(self.save_records, logger)) + d.setWindowTitle('Save records of "{}" tab to...'.format(logger.name)) + d.open() + + def save_records(self, logger, path): + import json + + # needed because a deque is not serializable + class RecordList(list): + def __init__(self, records): + self.records = records + + def __len__(self): + return len(self.records) + + def __iter__(self): + for record in self.records: + d = record._logDict + if not d.get('created', False) and not d.get('time', False): + d['_created'] = record.created + yield d + + try: + records = logger.record_model.records + record_list = RecordList(records) + with open(path, 'w') as f: + json.dump(record_list, f, indent=2) + self.set_status('Records have been saved to "{}"'.format(path)) + + except Exception as e: + text = "Error while saving records: \n{}".format(e) + self.log.error(text, exc_info=True) + show_critical_dialog(self, "Couldn't save records", text) def closeEvent(self, event): self.log.info('Close event on main window') @@ -425,13 +556,16 @@ def destroy_all_tabs(self): for logger in delete_this: self.destroy_logger(logger) - def shutdown(self, signal=None): + def shutdown(self): self.log.info('Shutting down') - if not self.stop_signal.is_set(): # do this for the first time shutdown is called - self.save_geometry() - self.destroy_all_tabs() - self.stop_reason = 'shutdown' - self.stop_signal.set() - else: - self.log.error('Forcefully shutting down') + if self.shutting_down: + self.log.error('Exiting forcefully') raise SystemExit + self.shutting_down = True + self.stop_server() + self.save_geometry() + self.destroy_all_tabs() + self.app.quit() + + def signal_handler(self, *args): + self.shutdown() diff --git a/cutelog/merge_dialog.py b/cutelog/merge_dialog.py index 89343b2..4a6f0aa 100644 --- a/cutelog/merge_dialog.py +++ b/cutelog/merge_dialog.py @@ -1,12 +1,8 @@ -from PyQt5 import uic -from PyQt5.QtCore import Qt, pyqtSignal -from PyQt5.QtWidgets import QListWidgetItem, QDialogButtonBox - -from .config import CONFIG - -uif = CONFIG.get_ui_qfile('merge_dialog.ui') -MergeDialogBase = uic.loadUiType(uif) -uif.close() +# from qtpy.uic import loadUi +from qtpy.QtCore import Qt, Signal +from qtpy.QtWidgets import (QAbstractItemView, QCheckBox, QComboBox, QDialog, + QDialogButtonBox, QGridLayout, QLabel, QListWidget, + QListWidgetItem, QSizePolicy, QSpacerItem) class LoggerListItem(QListWidgetItem): @@ -20,10 +16,10 @@ def data(self, role): return None -class MergeDialog(*MergeDialogBase): +class MergeDialog(QDialog): # name of src tab, names of dst tabs, whether to keep connections alive or not - merge_tabs_signal = pyqtSignal(str, list, bool) + merge_tabs_signal = Signal(str, list, bool) def __init__(self, parent, loggers): super().__init__(parent) @@ -35,7 +31,29 @@ def __init__(self, parent, loggers): self.setupUi() def setupUi(self): - super().setupUi(self) + self.resize(340, 320) + self.gridLayout = QGridLayout(self) + self.dstComboBox = QComboBox(self) + self.gridLayout.addWidget(self.dstComboBox, 1, 2, 1, 2) + self.buttonBox = QDialogButtonBox(QDialogButtonBox.Cancel | QDialogButtonBox.Ok, self) + self.gridLayout.addWidget(self.buttonBox, 5, 0, 1, 4) + self.loggerList = QListWidget(self) + self.loggerList.setDefaultDropAction(Qt.IgnoreAction) + self.loggerList.setSelectionMode(QAbstractItemView.MultiSelection) + self.gridLayout.addWidget(self.loggerList, 1, 0, 4, 2) + self.keepAliveCheckBox = QCheckBox("Keep connections alive", self) + self.keepAliveCheckBox.setChecked(True) + self.gridLayout.addWidget(self.keepAliveCheckBox, 2, 2, 1, 2) + self.srcsLabel = QLabel("All loggers:", self) + self.gridLayout.addWidget(self.srcsLabel, 0, 0, 1, 2) + self.dstLabel = QLabel("Merge all into:", self) + self.gridLayout.addWidget(self.dstLabel, 0, 2, 1, 2) + spacerItem = QSpacerItem(20, 169, QSizePolicy.Minimum, QSizePolicy.Expanding) + self.gridLayout.addItem(spacerItem, 4, 2, 1, 2) + + self.buttonBox.accepted.connect(self.accept) + self.buttonBox.rejected.connect(self.reject) + self.loggerList.selectionModel().selectionChanged.connect(self.merge_list_changed) self.dstComboBox.currentTextChanged.connect(self.merge_dst_changed) self.ok_button = self.buttonBox.button(QDialogButtonBox.Ok) diff --git a/cutelog/pop_in_dialog.py b/cutelog/pop_in_dialog.py index 1ee0a3b..c843403 100644 --- a/cutelog/pop_in_dialog.py +++ b/cutelog/pop_in_dialog.py @@ -1,10 +1,10 @@ -from PyQt5.QtCore import pyqtSignal -from PyQt5.QtWidgets import QDialog, QVBoxLayout, QListWidget, QDialogButtonBox +from qtpy.QtCore import Signal +from qtpy.QtWidgets import QDialog, QDialogButtonBox, QListWidget, QVBoxLayout class PopInDialog(QDialog): - pop_in_tabs = pyqtSignal(list) + pop_in_tabs = Signal(list) def __init__(self, parent, loggers): super().__init__(parent) @@ -16,11 +16,13 @@ def setupUi(self): self.vbox = QVBoxLayout(self) self.listWidget = QListWidget(self) self.listWidget.setSelectionMode(self.listWidget.MultiSelection) + self.listWidget.selectionModel().reset() self.vbox.addWidget(self.listWidget) self.buttonBox = QDialogButtonBox(QDialogButtonBox.Ok | QDialogButtonBox.Cancel, self) self.vbox.addWidget(self.buttonBox) self.buttonBox.accepted.connect(self.accept) + self.listWidget.doubleClicked.connect(self.accept) self.buttonBox.rejected.connect(self.reject) self.fill_logger_list() @@ -31,10 +33,14 @@ def fill_logger_list(self): self.listWidget.addItem(logger.name) self.listWidget.setCurrentRow(0) - def accept(self): + def accept(self, index=None): names = [] - for item in self.listWidget.selectedItems(): + if index is not None: + item = self.listWidget.itemFromIndex(index) names.append(item.text()) + else: + for item in self.listWidget.selectedItems(): + names.append(item.text()) if len(names) > 0: self.pop_in_tabs.emit(names) self.done(0) diff --git a/cutelog/resources/dark_theme.qss b/cutelog/resources/dark_theme.qss index 1e1d21d..19288ba 100644 --- a/cutelog/resources/dark_theme.qss +++ b/cutelog/resources/dark_theme.qss @@ -204,6 +204,10 @@ QMenu::item { border: 1px solid transparent; } +QMenu::item:disabled { + color: #777777; +} + QMenu::item:selected { padding: 2px 20px 2px 20px; border: 1px solid transparent; @@ -216,21 +220,36 @@ QMenu::indicator { } QMenu::indicator:non-exclusive:unchecked { - border: 1px solid #5A5A5F; + border: 1px solid #8A8A8F; + position: absolute; + top: 1px; + right: 1px; + bottom: 1px; + left: 1px; +} + +QMenu::indicator:non-exclusive:disabled { + border: 1px solid #777777; + position: absolute; + top: 1px; + right: 1px; + bottom: 1px; + left: 1px; } QMenu::indicator:non-exclusive:checked { image: url(:/dark_theme/icons/check); - border: 1px solid #5A5A5F; + border: 1px solid #8A8A8F; position: absolute; top: 1px; right: 1px; bottom: 1px; left: 1px; } + QMenu::separator { height: 1px; - background-color: #363636; + background-color: #636363; color: white; padding-left: 4px; margin-left: 10px; diff --git a/cutelog/resources/light_theme.qss b/cutelog/resources/light_theme.qss index 0670db0..06cff84 100644 --- a/cutelog/resources/light_theme.qss +++ b/cutelog/resources/light_theme.qss @@ -213,6 +213,10 @@ QMenu::item:selected { border: 1px solid transparent; } +QMenu::item:disabled { + color: #777777; +} + QMenu::indicator { width: 10px; height: 10px; @@ -220,7 +224,21 @@ QMenu::indicator { } QMenu::indicator:non-exclusive:unchecked { - border: 1px solid #35353B; + border: 1px solid #000000; + position: absolute; + top: 1px; + right: 1px; + bottom: 1px; + left: 1px; +} + +QMenu::indicator:non-exclusive:disabled { + border: 1px solid #777777; + position: absolute; + top: 1px; + right: 1px; + bottom: 1px; + left: 1px; } QMenu::indicator:non-exclusive:checked { diff --git a/cutelog/resources/resources.qrc b/cutelog/resources/resources.qrc index 31c6f0f..63a5da0 100644 --- a/cutelog/resources/resources.qrc +++ b/cutelog/resources/resources.qrc @@ -24,10 +24,8 @@ ui/logger.ui - ui/main_window.ui ui/about_dialog.ui ui/settings_dialog.ui - ui/merge_dialog.ui diff --git a/cutelog/resources/ui/about_dialog.ui b/cutelog/resources/ui/about_dialog.ui index befad7d..9742d47 100644 --- a/cutelog/resources/ui/about_dialog.ui +++ b/cutelog/resources/ui/about_dialog.ui @@ -60,659 +60,836 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Noto Sans'; font-size:10pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">PyQt5:</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">GPLv3 License, Copyright (c) 2018 Riverbank Computing Limited &lt;info@riverbankcomputing.com&gt;</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt; font-weight:600;">ion-icons</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">MIT License, Copyright (c) 2016 Drifty (http://drifty.com/)</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">And thanks to logview by Vinay Sajip for UI inspiration.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:16pt;">GPLv3 License:</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> GNU GENERAL PUBLIC LICENSE</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Version 3, 29 June 2007</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Copyright (C) 2007 Free Software Foundation, Inc. &lt;http://fsf.org/&gt;</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Everyone is permitted to copy and distribute verbatim copies</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> of this license document, but changing it is not allowed.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Preamble</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> The GNU General Public License is a free, copyleft license for</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">software and other kinds of works.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> The licenses for most software and other practical works are designed</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">to take away your freedom to share and change the works. By contrast,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the GNU General Public License is intended to guarantee your freedom to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">share and change all versions of a program--to make sure it remains free</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">software for all its users. We, the Free Software Foundation, use the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">GNU General Public License for most of our software; it applies also to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">any other work released this way by its authors. You can apply it to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">your programs, too.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> When we speak of free software, we are referring to freedom, not</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">price. Our General Public Licenses are designed to make sure that you</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">have the freedom to distribute copies of free software (and charge for</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">them if you wish), that you receive source code or can get it if you</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">want it, that you can change the software or use pieces of it in new</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">free programs, and that you know you can do these things.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> To protect your rights, we need to prevent others from denying you</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">these rights or asking you to surrender the rights. Therefore, you have</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">certain responsibilities if you distribute copies of the software, or if</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">you modify it: responsibilities to respect the freedom of others.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> For example, if you distribute copies of such a program, whether</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">gratis or for a fee, you must pass on to the recipients the same</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">freedoms that you received. You must make sure that they, too, receive</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">or can get the source code. And you must show them these terms so they</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">know their rights.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Developers that use the GNU GPL protect your rights with two steps:</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">(1) assert copyright on the software, and (2) offer you this License</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">giving you legal permission to copy, distribute and/or modify it.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> For the developers' and authors' protection, the GPL clearly explains</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">that there is no warranty for this free software. For both users' and</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">authors' sake, the GPL requires that modified versions be marked as</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">changed, so that their problems will not be attributed erroneously to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">authors of previous versions.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Some devices are designed to deny users access to install or run</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">modified versions of the software inside them, although the manufacturer</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">can do so. This is fundamentally incompatible with the aim of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">protecting users' freedom to change the software. The systematic</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">pattern of such abuse occurs in the area of products for individuals to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">use, which is precisely where it is most unacceptable. Therefore, we</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">have designed this version of the GPL to prohibit the practice for those</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">products. If such problems arise substantially in other domains, we</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">stand ready to extend this provision to those domains in future versions</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">of the GPL, as needed to protect the freedom of users.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Finally, every program is threatened constantly by software patents.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">States should not allow patents to restrict development and use of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">software on general-purpose computers, but in those that do, we wish to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">avoid the special danger that patents applied to a free program could</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">make it effectively proprietary. To prevent this, the GPL assures that</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">patents cannot be used to render the program non-free.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> The precise terms and conditions for copying, distribution and</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">modification follow.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> TERMS AND CONDITIONS</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 0. Definitions.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> &quot;This License&quot; refers to version 3 of the GNU General Public License.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> &quot;Copyright&quot; also means copyright-like laws that apply to other kinds of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">works, such as semiconductor masks.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> &quot;The Program&quot; refers to any copyrightable work licensed under this</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">License. Each licensee is addressed as &quot;you&quot;. &quot;Licensees&quot; and</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">&quot;recipients&quot; may be individuals or organizations.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> To &quot;modify&quot; a work means to copy from or adapt all or part of the work</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">in a fashion requiring copyright permission, other than the making of an</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">exact copy. The resulting work is called a &quot;modified version&quot; of the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">earlier work or a work &quot;based on&quot; the earlier work.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> A &quot;covered work&quot; means either the unmodified Program or a work based</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">on the Program.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> To &quot;propagate&quot; a work means to do anything with it that, without</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">permission, would make you directly or secondarily liable for</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">infringement under applicable copyright law, except executing it on a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">computer or modifying a private copy. Propagation includes copying,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">distribution (with or without modification), making available to the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">public, and in some countries other activities as well.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> To &quot;convey&quot; a work means any kind of propagation that enables other</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">parties to make or receive copies. Mere interaction with a user through</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">a computer network, with no transfer of a copy, is not conveying.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> An interactive user interface displays &quot;Appropriate Legal Notices&quot;</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">to the extent that it includes a convenient and prominently visible</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">feature that (1) displays an appropriate copyright notice, and (2)</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">tells the user that there is no warranty for the work (except to the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">extent that warranties are provided), that licensees may convey the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">work under this License, and how to view a copy of this License. If</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the interface presents a list of user commands or options, such as a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">menu, a prominent item in the list meets this criterion.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 1. Source Code.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> The &quot;source code&quot; for a work means the preferred form of the work</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">for making modifications to it. &quot;Object code&quot; means any non-source</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">form of a work.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> A &quot;Standard Interface&quot; means an interface that either is an official</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">standard defined by a recognized standards body, or, in the case of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">interfaces specified for a particular programming language, one that</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">is widely used among developers working in that language.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> The &quot;System Libraries&quot; of an executable work include anything, other</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">than the work as a whole, that (a) is included in the normal form of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">packaging a Major Component, but which is not part of that Major</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Component, and (b) serves only to enable use of the work with that</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Major Component, or to implement a Standard Interface for which an</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">implementation is available to the public in source code form. A</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">&quot;Major Component&quot;, in this context, means a major essential component</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">(kernel, window system, and so on) of the specific operating system</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">(if any) on which the executable work runs, or a compiler used to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">produce the work, or an object code interpreter used to run it.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> The &quot;Corresponding Source&quot; for a work in object code form means all</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the source code needed to generate, install, and (for an executable</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">work) run the object code and to modify the work, including scripts to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">control those activities. However, it does not include the work's</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">System Libraries, or general-purpose tools or generally available free</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">programs which are used unmodified in performing those activities but</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">which are not part of the work. For example, Corresponding Source</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">includes interface definition files associated with source files for</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the work, and the source code for shared libraries and dynamically</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">linked subprograms that the work is specifically designed to require,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">such as by intimate data communication or control flow between those</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">subprograms and other parts of the work.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> The Corresponding Source need not include anything that users</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">can regenerate automatically from other parts of the Corresponding</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Source.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> The Corresponding Source for a work in source code form is that</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">same work.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 2. Basic Permissions.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> All rights granted under this License are granted for the term of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">copyright on the Program, and are irrevocable provided the stated</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">conditions are met. This License explicitly affirms your unlimited</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">permission to run the unmodified Program. The output from running a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">covered work is covered by this License only if the output, given its</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">content, constitutes a covered work. This License acknowledges your</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">rights of fair use or other equivalent, as provided by copyright law.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> You may make, run and propagate covered works that you do not</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">convey, without conditions so long as your license otherwise remains</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">in force. You may convey covered works to others for the sole purpose</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">of having them make modifications exclusively for you, or provide you</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">with facilities for running those works, provided that you comply with</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the terms of this License in conveying all material for which you do</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">not control copyright. Those thus making or running the covered works</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">for you must do so exclusively on your behalf, under your direction</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">and control, on terms that prohibit them from making any copies of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">your copyrighted material outside their relationship with you.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Conveying under any other circumstances is permitted solely under</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the conditions stated below. Sublicensing is not allowed; section 10</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">makes it unnecessary.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 3. Protecting Users' Legal Rights From Anti-Circumvention Law.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> No covered work shall be deemed part of an effective technological</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">measure under any applicable law fulfilling obligations under article</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">11 of the WIPO copyright treaty adopted on 20 December 1996, or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">similar laws prohibiting or restricting circumvention of such</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">measures.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> When you convey a covered work, you waive any legal power to forbid</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">circumvention of technological measures to the extent such circumvention</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">is effected by exercising rights under this License with respect to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the covered work, and you disclaim any intention to limit operation or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">modification of the work as a means of enforcing, against the work's</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">users, your or third parties' legal rights to forbid circumvention of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">technological measures.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 4. Conveying Verbatim Copies.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> You may convey verbatim copies of the Program's source code as you</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">receive it, in any medium, provided that you conspicuously and</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">appropriately publish on each copy an appropriate copyright notice;</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">keep intact all notices stating that this License and any</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">non-permissive terms added in accord with section 7 apply to the code;</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">keep intact all notices of the absence of any warranty; and give all</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">recipients a copy of this License along with the Program.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> You may charge any price or no price for each copy that you convey,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">and you may offer support or warranty protection for a fee.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 5. Conveying Modified Source Versions.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> You may convey a work based on the Program, or the modifications to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">produce it from the Program, in the form of source code under the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">terms of section 4, provided that you also meet all of these conditions:</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> a) The work must carry prominent notices stating that you modified</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> it, and giving a relevant date.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> b) The work must carry prominent notices stating that it is</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> released under this License and any conditions added under section</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 7. This requirement modifies the requirement in section 4 to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> &quot;keep intact all notices&quot;.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> c) You must license the entire work, as a whole, under this</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> License to anyone who comes into possession of a copy. This</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> License will therefore apply, along with any applicable section 7</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> additional terms, to the whole of the work, and all its parts,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> regardless of how they are packaged. This License gives no</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> permission to license the work in any other way, but it does not</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> invalidate such permission if you have separately received it.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> d) If the work has interactive user interfaces, each must display</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Appropriate Legal Notices; however, if the Program has interactive</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> interfaces that do not display Appropriate Legal Notices, your</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> work need not make them do so.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> A compilation of a covered work with other separate and independent</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">works, which are not by their nature extensions of the covered work,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">and which are not combined with it such as to form a larger program,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">in or on a volume of a storage or distribution medium, is called an</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">&quot;aggregate&quot; if the compilation and its resulting copyright are not</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">used to limit the access or legal rights of the compilation's users</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">beyond what the individual works permit. Inclusion of a covered work</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">in an aggregate does not cause this License to apply to the other</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">parts of the aggregate.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 6. Conveying Non-Source Forms.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> You may convey a covered work in object code form under the terms</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">of sections 4 and 5, provided that you also convey the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">machine-readable Corresponding Source under the terms of this License,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">in one of these ways:</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> a) Convey the object code in, or embodied in, a physical product</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> (including a physical distribution medium), accompanied by the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Corresponding Source fixed on a durable physical medium</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> customarily used for software interchange.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> b) Convey the object code in, or embodied in, a physical product</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> (including a physical distribution medium), accompanied by a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> written offer, valid for at least three years and valid for as</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> long as you offer spare parts or customer support for that product</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> model, to give anyone who possesses the object code either (1) a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> copy of the Corresponding Source for all the software in the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> product that is covered by this License, on a durable physical</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> medium customarily used for software interchange, for a price no</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> more than your reasonable cost of physically performing this</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> conveying of source, or (2) access to copy the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Corresponding Source from a network server at no charge.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> c) Convey individual copies of the object code with a copy of the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> written offer to provide the Corresponding Source. This</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> alternative is allowed only occasionally and noncommercially, and</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> only if you received the object code with such an offer, in accord</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> with subsection 6b.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> d) Convey the object code by offering access from a designated</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> place (gratis or for a charge), and offer equivalent access to the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Corresponding Source in the same way through the same place at no</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> further charge. You need not require recipients to copy the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Corresponding Source along with the object code. If the place to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> copy the object code is a network server, the Corresponding Source</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> may be on a different server (operated by you or a third party)</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> that supports equivalent copying facilities, provided you maintain</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> clear directions next to the object code saying where to find the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Corresponding Source. Regardless of what server hosts the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Corresponding Source, you remain obligated to ensure that it is</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> available for as long as needed to satisfy these requirements.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> e) Convey the object code using peer-to-peer transmission, provided</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> you inform other peers where the object code and Corresponding</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Source of the work are being offered to the general public at no</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> charge under subsection 6d.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> A separable portion of the object code, whose source code is excluded</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">from the Corresponding Source as a System Library, need not be</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">included in conveying the object code work.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> A &quot;User Product&quot; is either (1) a &quot;consumer product&quot;, which means any</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">tangible personal property which is normally used for personal, family,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">or household purposes, or (2) anything designed or sold for incorporation</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">into a dwelling. In determining whether a product is a consumer product,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">doubtful cases shall be resolved in favor of coverage. For a particular</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">product received by a particular user, &quot;normally used&quot; refers to a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">typical or common use of that class of product, regardless of the status</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">of the particular user or of the way in which the particular user</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">actually uses, or expects or is expected to use, the product. A product</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">is a consumer product regardless of whether the product has substantial</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">commercial, industrial or non-consumer uses, unless such uses represent</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the only significant mode of use of the product.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> &quot;Installation Information&quot; for a User Product means any methods,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">procedures, authorization keys, or other information required to install</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">and execute modified versions of a covered work in that User Product from</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">a modified version of its Corresponding Source. The information must</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">suffice to ensure that the continued functioning of the modified object</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">code is in no case prevented or interfered with solely because</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">modification has been made.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> If you convey an object code work under this section in, or with, or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">specifically for use in, a User Product, and the conveying occurs as</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">part of a transaction in which the right of possession and use of the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">User Product is transferred to the recipient in perpetuity or for a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">fixed term (regardless of how the transaction is characterized), the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Corresponding Source conveyed under this section must be accompanied</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">by the Installation Information. But this requirement does not apply</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">if neither you nor any third party retains the ability to install</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">modified object code on the User Product (for example, the work has</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">been installed in ROM).</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> The requirement to provide Installation Information does not include a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">requirement to continue to provide support service, warranty, or updates</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">for a work that has been modified or installed by the recipient, or for</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the User Product in which it has been modified or installed. Access to a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">network may be denied when the modification itself materially and</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">adversely affects the operation of the network or violates the rules and</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">protocols for communication across the network.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Corresponding Source conveyed, and Installation Information provided,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">in accord with this section must be in a format that is publicly</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">documented (and with an implementation available to the public in</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">source code form), and must require no special password or key for</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">unpacking, reading or copying.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 7. Additional Terms.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> &quot;Additional permissions&quot; are terms that supplement the terms of this</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">License by making exceptions from one or more of its conditions.</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Additional permissions that are applicable to the entire Program shall</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">be treated as though they were included in this License, to the extent</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">that they are valid under applicable law. If additional permissions</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">apply only to part of the Program, that part may be used separately</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">under those permissions, but the entire Program remains governed by</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">this License without regard to the additional permissions.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> When you convey a copy of a covered work, you may at your option</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">remove any additional permissions from that copy, or from any part of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">it. (Additional permissions may be written to require their own</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">removal in certain cases when you modify the work.) You may place</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">additional permissions on material, added by you to a covered work,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">for which you have or can give appropriate copyright permission.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Notwithstanding any other provision of this License, for material you</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">add to a covered work, you may (if authorized by the copyright holders of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">that material) supplement the terms of this License with terms:</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> a) Disclaiming warranty or limiting liability differently from the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> terms of sections 15 and 16 of this License; or</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> b) Requiring preservation of specified reasonable legal notices or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> author attributions in that material or in the Appropriate Legal</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Notices displayed by works containing it; or</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> c) Prohibiting misrepresentation of the origin of that material, or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> requiring that modified versions of such material be marked in</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> reasonable ways as different from the original version; or</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> d) Limiting the use for publicity purposes of names of licensors or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> authors of the material; or</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> e) Declining to grant rights under trademark law for use of some</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> trade names, trademarks, or service marks; or</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> f) Requiring indemnification of licensors and authors of that</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> material by anyone who conveys the material (or modified versions of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> it) with contractual assumptions of liability to the recipient, for</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> any liability that these contractual assumptions directly impose on</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> those licensors and authors.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> All other non-permissive additional terms are considered &quot;further</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">restrictions&quot; within the meaning of section 10. If the Program as you</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">received it, or any part of it, contains a notice stating that it is</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">governed by this License along with a term that is a further</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">restriction, you may remove that term. If a license document contains</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">a further restriction but permits relicensing or conveying under this</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">License, you may add to a covered work material governed by the terms</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">of that license document, provided that the further restriction does</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">not survive such relicensing or conveying.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> If you add terms to a covered work in accord with this section, you</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">must place, in the relevant source files, a statement of the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">additional terms that apply to those files, or a notice indicating</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">where to find the applicable terms.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Additional terms, permissive or non-permissive, may be stated in the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">form of a separately written license, or stated as exceptions;</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the above requirements apply either way.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 8. Termination.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> You may not propagate or modify a covered work except as expressly</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">provided under this License. Any attempt otherwise to propagate or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">modify it is void, and will automatically terminate your rights under</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">this License (including any patent licenses granted under the third</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">paragraph of section 11).</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> However, if you cease all violation of this License, then your</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">license from a particular copyright holder is reinstated (a)</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">provisionally, unless and until the copyright holder explicitly and</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">finally terminates your license, and (b) permanently, if the copyright</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">holder fails to notify you of the violation by some reasonable means</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">prior to 60 days after the cessation.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Moreover, your license from a particular copyright holder is</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">reinstated permanently if the copyright holder notifies you of the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">violation by some reasonable means, this is the first time you have</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">received notice of violation of this License (for any work) from that</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">copyright holder, and you cure the violation prior to 30 days after</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">your receipt of the notice.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Termination of your rights under this section does not terminate the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">licenses of parties who have received copies or rights from you under</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">this License. If your rights have been terminated and not permanently</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">reinstated, you do not qualify to receive new licenses for the same</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">material under section 10.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 9. Acceptance Not Required for Having Copies.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> You are not required to accept this License in order to receive or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">run a copy of the Program. Ancillary propagation of a covered work</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">occurring solely as a consequence of using peer-to-peer transmission</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">to receive a copy likewise does not require acceptance. However,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">nothing other than this License grants you permission to propagate or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">modify any covered work. These actions infringe copyright if you do</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">not accept this License. Therefore, by modifying or propagating a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">covered work, you indicate your acceptance of this License to do so.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 10. Automatic Licensing of Downstream Recipients.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Each time you convey a covered work, the recipient automatically</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">receives a license from the original licensors, to run, modify and</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">propagate that work, subject to this License. You are not responsible</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">for enforcing compliance by third parties with this License.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> An &quot;entity transaction&quot; is a transaction transferring control of an</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">organization, or substantially all assets of one, or subdividing an</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">organization, or merging organizations. If propagation of a covered</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">work results from an entity transaction, each party to that</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">transaction who receives a copy of the work also receives whatever</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">licenses to the work the party's predecessor in interest had or could</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">give under the previous paragraph, plus a right to possession of the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Corresponding Source of the work from the predecessor in interest, if</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the predecessor has it or can get it with reasonable efforts.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> You may not impose any further restrictions on the exercise of the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">rights granted or affirmed under this License. For example, you may</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">not impose a license fee, royalty, or other charge for exercise of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">rights granted under this License, and you may not initiate litigation</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">(including a cross-claim or counterclaim in a lawsuit) alleging that</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">any patent claim is infringed by making, using, selling, offering for</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">sale, or importing the Program or any portion of it.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 11. Patents.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> A &quot;contributor&quot; is a copyright holder who authorizes use under this</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">License of the Program or a work on which the Program is based. The</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">work thus licensed is called the contributor's &quot;contributor version&quot;.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> A contributor's &quot;essential patent claims&quot; are all patent claims</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">owned or controlled by the contributor, whether already acquired or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">hereafter acquired, that would be infringed by some manner, permitted</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">by this License, of making, using, or selling its contributor version,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">but do not include claims that would be infringed only as a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">consequence of further modification of the contributor version. For</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">purposes of this definition, &quot;control&quot; includes the right to grant</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">patent sublicenses in a manner consistent with the requirements of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">this License.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Each contributor grants you a non-exclusive, worldwide, royalty-free</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">patent license under the contributor's essential patent claims, to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">make, use, sell, offer for sale, import and otherwise run, modify and</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">propagate the contents of its contributor version.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> In the following three paragraphs, a &quot;patent license&quot; is any express</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">agreement or commitment, however denominated, not to enforce a patent</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">(such as an express permission to practice a patent or covenant not to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">sue for patent infringement). To &quot;grant&quot; such a patent license to a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">party means to make such an agreement or commitment not to enforce a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">patent against the party.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> If you convey a covered work, knowingly relying on a patent license,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">and the Corresponding Source of the work is not available for anyone</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">to copy, free of charge and under the terms of this License, through a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">publicly available network server or other readily accessible means,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">then you must either (1) cause the Corresponding Source to be so</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">available, or (2) arrange to deprive yourself of the benefit of the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">patent license for this particular work, or (3) arrange, in a manner</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">consistent with the requirements of this License, to extend the patent</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">license to downstream recipients. &quot;Knowingly relying&quot; means you have</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">actual knowledge that, but for the patent license, your conveying the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">covered work in a country, or your recipient's use of the covered work</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">in a country, would infringe one or more identifiable patents in that</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">country that you have reason to believe are valid.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> If, pursuant to or in connection with a single transaction or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">arrangement, you convey, or propagate by procuring conveyance of, a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">covered work, and grant a patent license to some of the parties</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">receiving the covered work authorizing them to use, propagate, modify</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">or convey a specific copy of the covered work, then the patent license</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">you grant is automatically extended to all recipients of the covered</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">work and works based on it.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> A patent license is &quot;discriminatory&quot; if it does not include within</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the scope of its coverage, prohibits the exercise of, or is</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">conditioned on the non-exercise of one or more of the rights that are</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">specifically granted under this License. You may not convey a covered</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">work if you are a party to an arrangement with a third party that is</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">in the business of distributing software, under which you make payment</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">to the third party based on the extent of your activity of conveying</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the work, and under which the third party grants, to any of the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">parties who would receive the covered work from you, a discriminatory</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">patent license (a) in connection with copies of the covered work</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">conveyed by you (or copies made from those copies), or (b) primarily</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">for and in connection with specific products or compilations that</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">contain the covered work, unless you entered into that arrangement,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">or that patent license was granted, prior to 28 March 2007.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Nothing in this License shall be construed as excluding or limiting</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">any implied license or other defenses to infringement that may</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">otherwise be available to you under applicable patent law.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 12. No Surrender of Others' Freedom.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> If conditions are imposed on you (whether by court order, agreement or</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">otherwise) that contradict the conditions of this License, they do not</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">excuse you from the conditions of this License. If you cannot convey a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">covered work so as to satisfy simultaneously your obligations under this</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">License and any other pertinent obligations, then as a consequence you may</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">not convey it at all. For example, if you agree to terms that obligate you</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">to collect a royalty for further conveying from those to whom you convey</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the Program, the only way you could satisfy both those terms and this</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">License would be to refrain entirely from conveying the Program.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 13. Use with the GNU Affero General Public License.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Notwithstanding any other provision of this License, you have</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">permission to link or combine any covered work with a work licensed</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">under version 3 of the GNU Affero General Public License into a single</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">combined work, and to convey the resulting work. The terms of this</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">License will continue to apply to the part which is the covered work,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">but the special requirements of the GNU Affero General Public License,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">section 13, concerning interaction through a network will apply to the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">combination as such.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 14. Revised Versions of this License.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> The Free Software Foundation may publish revised and/or new versions of</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">the GNU General Public License from time to time. Such new versions will</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">be similar in spirit to the present version, but may differ in detail to</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">address new problems or concerns.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Each version is given a distinguishing version number. If the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Program specifies that a certain numbered version of the GNU General</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Public License &quot;or any later version&quot; applies to it, you have the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">option of following the terms and conditions either of that numbered</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">version or of any later version published by the Free Software</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Foundation. If the Program does not specify a version number of the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">GNU General Public License, you may choose any version ever published</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">by the Free Software Foundation.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> If the Program specifies that a proxy can decide which future</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">versions of the GNU General Public License can be used, that proxy's</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">public statement of acceptance of a version permanently authorizes you</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">to choose that version for the Program.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> Later license versions may give you additional or different</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">permissions. However, no additional obligations are imposed on any</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">author or copyright holder as a result of your choosing to follow a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">later version.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 15. Disclaimer of Warranty.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM &quot;AS IS&quot; WITHOUT WARRANTY</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">ALL NECESSARY SERVICING, REPAIR OR CORRECTION.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 16. Limitation of Liability.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">SUCH DAMAGES.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> 17. Interpretation of Sections 15 and 16.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> If the disclaimer of warranty and limitation of liability provided</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">above cannot be given local legal effect according to their terms,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">reviewing courts shall apply local law that most closely approximates</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">an absolute waiver of all civil liability in connection with the</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Program, unless a warranty or assumption of liability accompanies a</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">copy of the Program in return for a fee.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;"> END OF TERMS AND CONDITIONS</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:16pt;">The MIT License (MIT):</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">Permission is hereby granted, free of charge, to any person obtaining a copy</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">of this software and associated documentation files (the &quot;Software&quot;), to deal</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">in the Software without restriction, including without limitation the rights</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">to use, copy, modify, merge, publish, distribute, sublicense, and/or sell</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">copies of the Software, and to permit persons to whom the Software is</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">furnished to do so, subject to the following conditions:</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">The above copyright notice and this permission notice shall be included in</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">all copies or substantial portions of the Software.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">THE SOFTWARE.</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif'; font-size:9pt;"><br /></p></body></html> +</style></head><body style=" font-family:'Sans Serif'; font-size:12pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Qt: </span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt; font-weight:600;"> PyQt5:</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> GPLv3 License, Copyright (c) 2018 Riverbank Computing Limited &lt;info@riverbankcomputing.com&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> </span><span style=" font-size:9pt; font-weight:600;">OR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt; font-weight:600;"> PySide2:</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> LGPLv3 License, Copyright (C) 2015 The Qt Company Ltd (http://www.qt.io/licensing/)</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt; font-weight:600;">ion-icons:</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">MIT License, Copyright (c) 2015-present Ionic (http://ionic.io/)</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt; font-weight:600;">QtPy:</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">MIT License, Copyright © 2009–2018 The Spyder Development Team</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Thanks to logview by Vinay Sajip for UI inspiration.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">And thanks to contributors to the cutelog project: Anil Berry, Thomas Hess</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:16pt;">GPLv3 License:</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> GNU GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Version 3, 29 June 2007</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Copyright (C) 2007 Free Software Foundation, Inc. &lt;http://fsf.org/&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Everyone is permitted to copy and distribute verbatim copies</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> of this license document, but changing it is not allowed.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Preamble</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The GNU General Public License is a free, copyleft license for</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">software and other kinds of works.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The licenses for most software and other practical works are designed</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">to take away your freedom to share and change the works. By contrast,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the GNU General Public License is intended to guarantee your freedom to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">share and change all versions of a program--to make sure it remains free</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">software for all its users. We, the Free Software Foundation, use the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">GNU General Public License for most of our software; it applies also to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">any other work released this way by its authors. You can apply it to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">your programs, too.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> When we speak of free software, we are referring to freedom, not</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">price. Our General Public Licenses are designed to make sure that you</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">have the freedom to distribute copies of free software (and charge for</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">them if you wish), that you receive source code or can get it if you</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">want it, that you can change the software or use pieces of it in new</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">free programs, and that you know you can do these things.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> To protect your rights, we need to prevent others from denying you</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">these rights or asking you to surrender the rights. Therefore, you have</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">certain responsibilities if you distribute copies of the software, or if</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">you modify it: responsibilities to respect the freedom of others.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> For example, if you distribute copies of such a program, whether</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">gratis or for a fee, you must pass on to the recipients the same</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">freedoms that you received. You must make sure that they, too, receive</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">or can get the source code. And you must show them these terms so they</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">know their rights.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Developers that use the GNU GPL protect your rights with two steps:</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">(1) assert copyright on the software, and (2) offer you this License</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">giving you legal permission to copy, distribute and/or modify it.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> For the developers' and authors' protection, the GPL clearly explains</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">that there is no warranty for this free software. For both users' and</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">authors' sake, the GPL requires that modified versions be marked as</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">changed, so that their problems will not be attributed erroneously to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">authors of previous versions.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Some devices are designed to deny users access to install or run</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">modified versions of the software inside them, although the manufacturer</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">can do so. This is fundamentally incompatible with the aim of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">protecting users' freedom to change the software. The systematic</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">pattern of such abuse occurs in the area of products for individuals to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">use, which is precisely where it is most unacceptable. Therefore, we</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">have designed this version of the GPL to prohibit the practice for those</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">products. If such problems arise substantially in other domains, we</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">stand ready to extend this provision to those domains in future versions</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">of the GPL, as needed to protect the freedom of users.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Finally, every program is threatened constantly by software patents.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">States should not allow patents to restrict development and use of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">software on general-purpose computers, but in those that do, we wish to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">avoid the special danger that patents applied to a free program could</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">make it effectively proprietary. To prevent this, the GPL assures that</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">patents cannot be used to render the program non-free.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The precise terms and conditions for copying, distribution and</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">modification follow.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> TERMS AND CONDITIONS</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 0. Definitions.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> &quot;This License&quot; refers to version 3 of the GNU General Public License.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> &quot;Copyright&quot; also means copyright-like laws that apply to other kinds of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">works, such as semiconductor masks.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> &quot;The Program&quot; refers to any copyrightable work licensed under this</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">License. Each licensee is addressed as &quot;you&quot;. &quot;Licensees&quot; and</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">&quot;recipients&quot; may be individuals or organizations.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> To &quot;modify&quot; a work means to copy from or adapt all or part of the work</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">in a fashion requiring copyright permission, other than the making of an</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">exact copy. The resulting work is called a &quot;modified version&quot; of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">earlier work or a work &quot;based on&quot; the earlier work.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> A &quot;covered work&quot; means either the unmodified Program or a work based</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">on the Program.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> To &quot;propagate&quot; a work means to do anything with it that, without</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">permission, would make you directly or secondarily liable for</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">infringement under applicable copyright law, except executing it on a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">computer or modifying a private copy. Propagation includes copying,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">distribution (with or without modification), making available to the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">public, and in some countries other activities as well.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> To &quot;convey&quot; a work means any kind of propagation that enables other</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">parties to make or receive copies. Mere interaction with a user through</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">a computer network, with no transfer of a copy, is not conveying.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> An interactive user interface displays &quot;Appropriate Legal Notices&quot;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">to the extent that it includes a convenient and prominently visible</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">feature that (1) displays an appropriate copyright notice, and (2)</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">tells the user that there is no warranty for the work (except to the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">extent that warranties are provided), that licensees may convey the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">work under this License, and how to view a copy of this License. If</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the interface presents a list of user commands or options, such as a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">menu, a prominent item in the list meets this criterion.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 1. Source Code.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The &quot;source code&quot; for a work means the preferred form of the work</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">for making modifications to it. &quot;Object code&quot; means any non-source</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">form of a work.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> A &quot;Standard Interface&quot; means an interface that either is an official</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">standard defined by a recognized standards body, or, in the case of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">interfaces specified for a particular programming language, one that</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">is widely used among developers working in that language.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The &quot;System Libraries&quot; of an executable work include anything, other</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">than the work as a whole, that (a) is included in the normal form of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">packaging a Major Component, but which is not part of that Major</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Component, and (b) serves only to enable use of the work with that</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Major Component, or to implement a Standard Interface for which an</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">implementation is available to the public in source code form. A</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">&quot;Major Component&quot;, in this context, means a major essential component</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">(kernel, window system, and so on) of the specific operating system</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">(if any) on which the executable work runs, or a compiler used to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">produce the work, or an object code interpreter used to run it.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The &quot;Corresponding Source&quot; for a work in object code form means all</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the source code needed to generate, install, and (for an executable</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">work) run the object code and to modify the work, including scripts to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">control those activities. However, it does not include the work's</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">System Libraries, or general-purpose tools or generally available free</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">programs which are used unmodified in performing those activities but</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">which are not part of the work. For example, Corresponding Source</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">includes interface definition files associated with source files for</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the work, and the source code for shared libraries and dynamically</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">linked subprograms that the work is specifically designed to require,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">such as by intimate data communication or control flow between those</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">subprograms and other parts of the work.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The Corresponding Source need not include anything that users</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">can regenerate automatically from other parts of the Corresponding</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Source.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The Corresponding Source for a work in source code form is that</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">same work.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 2. Basic Permissions.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> All rights granted under this License are granted for the term of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">copyright on the Program, and are irrevocable provided the stated</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">conditions are met. This License explicitly affirms your unlimited</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">permission to run the unmodified Program. The output from running a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">covered work is covered by this License only if the output, given its</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">content, constitutes a covered work. This License acknowledges your</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">rights of fair use or other equivalent, as provided by copyright law.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> You may make, run and propagate covered works that you do not</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">convey, without conditions so long as your license otherwise remains</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">in force. You may convey covered works to others for the sole purpose</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">of having them make modifications exclusively for you, or provide you</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">with facilities for running those works, provided that you comply with</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the terms of this License in conveying all material for which you do</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">not control copyright. Those thus making or running the covered works</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">for you must do so exclusively on your behalf, under your direction</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">and control, on terms that prohibit them from making any copies of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">your copyrighted material outside their relationship with you.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Conveying under any other circumstances is permitted solely under</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the conditions stated below. Sublicensing is not allowed; section 10</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">makes it unnecessary.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 3. Protecting Users' Legal Rights From Anti-Circumvention Law.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> No covered work shall be deemed part of an effective technological</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">measure under any applicable law fulfilling obligations under article</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">11 of the WIPO copyright treaty adopted on 20 December 1996, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">similar laws prohibiting or restricting circumvention of such</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">measures.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> When you convey a covered work, you waive any legal power to forbid</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">circumvention of technological measures to the extent such circumvention</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">is effected by exercising rights under this License with respect to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the covered work, and you disclaim any intention to limit operation or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">modification of the work as a means of enforcing, against the work's</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">users, your or third parties' legal rights to forbid circumvention of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">technological measures.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 4. Conveying Verbatim Copies.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> You may convey verbatim copies of the Program's source code as you</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">receive it, in any medium, provided that you conspicuously and</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">appropriately publish on each copy an appropriate copyright notice;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">keep intact all notices stating that this License and any</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">non-permissive terms added in accord with section 7 apply to the code;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">keep intact all notices of the absence of any warranty; and give all</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">recipients a copy of this License along with the Program.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> You may charge any price or no price for each copy that you convey,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">and you may offer support or warranty protection for a fee.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 5. Conveying Modified Source Versions.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> You may convey a work based on the Program, or the modifications to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">produce it from the Program, in the form of source code under the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">terms of section 4, provided that you also meet all of these conditions:</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> a) The work must carry prominent notices stating that you modified</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> it, and giving a relevant date.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> b) The work must carry prominent notices stating that it is</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> released under this License and any conditions added under section</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 7. This requirement modifies the requirement in section 4 to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> &quot;keep intact all notices&quot;.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> c) You must license the entire work, as a whole, under this</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> License to anyone who comes into possession of a copy. This</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> License will therefore apply, along with any applicable section 7</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> additional terms, to the whole of the work, and all its parts,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> regardless of how they are packaged. This License gives no</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> permission to license the work in any other way, but it does not</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> invalidate such permission if you have separately received it.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> d) If the work has interactive user interfaces, each must display</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Appropriate Legal Notices; however, if the Program has interactive</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> interfaces that do not display Appropriate Legal Notices, your</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> work need not make them do so.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> A compilation of a covered work with other separate and independent</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">works, which are not by their nature extensions of the covered work,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">and which are not combined with it such as to form a larger program,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">in or on a volume of a storage or distribution medium, is called an</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">&quot;aggregate&quot; if the compilation and its resulting copyright are not</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">used to limit the access or legal rights of the compilation's users</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">beyond what the individual works permit. Inclusion of a covered work</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">in an aggregate does not cause this License to apply to the other</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">parts of the aggregate.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 6. Conveying Non-Source Forms.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> You may convey a covered work in object code form under the terms</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">of sections 4 and 5, provided that you also convey the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">machine-readable Corresponding Source under the terms of this License,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">in one of these ways:</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> a) Convey the object code in, or embodied in, a physical product</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> (including a physical distribution medium), accompanied by the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Corresponding Source fixed on a durable physical medium</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> customarily used for software interchange.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> b) Convey the object code in, or embodied in, a physical product</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> (including a physical distribution medium), accompanied by a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> written offer, valid for at least three years and valid for as</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> long as you offer spare parts or customer support for that product</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> model, to give anyone who possesses the object code either (1) a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> copy of the Corresponding Source for all the software in the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> product that is covered by this License, on a durable physical</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> medium customarily used for software interchange, for a price no</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> more than your reasonable cost of physically performing this</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> conveying of source, or (2) access to copy the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Corresponding Source from a network server at no charge.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> c) Convey individual copies of the object code with a copy of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> written offer to provide the Corresponding Source. This</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> alternative is allowed only occasionally and noncommercially, and</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> only if you received the object code with such an offer, in accord</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> with subsection 6b.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> d) Convey the object code by offering access from a designated</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> place (gratis or for a charge), and offer equivalent access to the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Corresponding Source in the same way through the same place at no</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> further charge. You need not require recipients to copy the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Corresponding Source along with the object code. If the place to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> copy the object code is a network server, the Corresponding Source</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> may be on a different server (operated by you or a third party)</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> that supports equivalent copying facilities, provided you maintain</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> clear directions next to the object code saying where to find the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Corresponding Source. Regardless of what server hosts the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Corresponding Source, you remain obligated to ensure that it is</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> available for as long as needed to satisfy these requirements.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> e) Convey the object code using peer-to-peer transmission, provided</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> you inform other peers where the object code and Corresponding</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Source of the work are being offered to the general public at no</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> charge under subsection 6d.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> A separable portion of the object code, whose source code is excluded</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">from the Corresponding Source as a System Library, need not be</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">included in conveying the object code work.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> A &quot;User Product&quot; is either (1) a &quot;consumer product&quot;, which means any</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">tangible personal property which is normally used for personal, family,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">or household purposes, or (2) anything designed or sold for incorporation</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">into a dwelling. In determining whether a product is a consumer product,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">doubtful cases shall be resolved in favor of coverage. For a particular</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">product received by a particular user, &quot;normally used&quot; refers to a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">typical or common use of that class of product, regardless of the status</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">of the particular user or of the way in which the particular user</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">actually uses, or expects or is expected to use, the product. A product</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">is a consumer product regardless of whether the product has substantial</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">commercial, industrial or non-consumer uses, unless such uses represent</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the only significant mode of use of the product.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> &quot;Installation Information&quot; for a User Product means any methods,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">procedures, authorization keys, or other information required to install</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">and execute modified versions of a covered work in that User Product from</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">a modified version of its Corresponding Source. The information must</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">suffice to ensure that the continued functioning of the modified object</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">code is in no case prevented or interfered with solely because</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">modification has been made.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> If you convey an object code work under this section in, or with, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">specifically for use in, a User Product, and the conveying occurs as</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">part of a transaction in which the right of possession and use of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">User Product is transferred to the recipient in perpetuity or for a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">fixed term (regardless of how the transaction is characterized), the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Corresponding Source conveyed under this section must be accompanied</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">by the Installation Information. But this requirement does not apply</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">if neither you nor any third party retains the ability to install</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">modified object code on the User Product (for example, the work has</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">been installed in ROM).</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The requirement to provide Installation Information does not include a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">requirement to continue to provide support service, warranty, or updates</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">for a work that has been modified or installed by the recipient, or for</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the User Product in which it has been modified or installed. Access to a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">network may be denied when the modification itself materially and</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">adversely affects the operation of the network or violates the rules and</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">protocols for communication across the network.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Corresponding Source conveyed, and Installation Information provided,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">in accord with this section must be in a format that is publicly</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">documented (and with an implementation available to the public in</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">source code form), and must require no special password or key for</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">unpacking, reading or copying.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 7. Additional Terms.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> &quot;Additional permissions&quot; are terms that supplement the terms of this</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">License by making exceptions from one or more of its conditions.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Additional permissions that are applicable to the entire Program shall</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">be treated as though they were included in this License, to the extent</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">that they are valid under applicable law. If additional permissions</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">apply only to part of the Program, that part may be used separately</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">under those permissions, but the entire Program remains governed by</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">this License without regard to the additional permissions.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> When you convey a copy of a covered work, you may at your option</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">remove any additional permissions from that copy, or from any part of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">it. (Additional permissions may be written to require their own</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">removal in certain cases when you modify the work.) You may place</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">additional permissions on material, added by you to a covered work,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">for which you have or can give appropriate copyright permission.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Notwithstanding any other provision of this License, for material you</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">add to a covered work, you may (if authorized by the copyright holders of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">that material) supplement the terms of this License with terms:</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> a) Disclaiming warranty or limiting liability differently from the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> terms of sections 15 and 16 of this License; or</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> b) Requiring preservation of specified reasonable legal notices or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> author attributions in that material or in the Appropriate Legal</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Notices displayed by works containing it; or</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> c) Prohibiting misrepresentation of the origin of that material, or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> requiring that modified versions of such material be marked in</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> reasonable ways as different from the original version; or</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> d) Limiting the use for publicity purposes of names of licensors or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> authors of the material; or</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> e) Declining to grant rights under trademark law for use of some</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> trade names, trademarks, or service marks; or</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> f) Requiring indemnification of licensors and authors of that</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> material by anyone who conveys the material (or modified versions of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> it) with contractual assumptions of liability to the recipient, for</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> any liability that these contractual assumptions directly impose on</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> those licensors and authors.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> All other non-permissive additional terms are considered &quot;further</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">restrictions&quot; within the meaning of section 10. If the Program as you</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">received it, or any part of it, contains a notice stating that it is</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">governed by this License along with a term that is a further</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">restriction, you may remove that term. If a license document contains</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">a further restriction but permits relicensing or conveying under this</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">License, you may add to a covered work material governed by the terms</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">of that license document, provided that the further restriction does</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">not survive such relicensing or conveying.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> If you add terms to a covered work in accord with this section, you</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">must place, in the relevant source files, a statement of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">additional terms that apply to those files, or a notice indicating</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">where to find the applicable terms.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Additional terms, permissive or non-permissive, may be stated in the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">form of a separately written license, or stated as exceptions;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the above requirements apply either way.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 8. Termination.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> You may not propagate or modify a covered work except as expressly</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">provided under this License. Any attempt otherwise to propagate or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">modify it is void, and will automatically terminate your rights under</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">this License (including any patent licenses granted under the third</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">paragraph of section 11).</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> However, if you cease all violation of this License, then your</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">license from a particular copyright holder is reinstated (a)</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">provisionally, unless and until the copyright holder explicitly and</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">finally terminates your license, and (b) permanently, if the copyright</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">holder fails to notify you of the violation by some reasonable means</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">prior to 60 days after the cessation.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Moreover, your license from a particular copyright holder is</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">reinstated permanently if the copyright holder notifies you of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">violation by some reasonable means, this is the first time you have</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">received notice of violation of this License (for any work) from that</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">copyright holder, and you cure the violation prior to 30 days after</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">your receipt of the notice.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Termination of your rights under this section does not terminate the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">licenses of parties who have received copies or rights from you under</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">this License. If your rights have been terminated and not permanently</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">reinstated, you do not qualify to receive new licenses for the same</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">material under section 10.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 9. Acceptance Not Required for Having Copies.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> You are not required to accept this License in order to receive or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">run a copy of the Program. Ancillary propagation of a covered work</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">occurring solely as a consequence of using peer-to-peer transmission</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">to receive a copy likewise does not require acceptance. However,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">nothing other than this License grants you permission to propagate or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">modify any covered work. These actions infringe copyright if you do</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">not accept this License. Therefore, by modifying or propagating a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">covered work, you indicate your acceptance of this License to do so.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 10. Automatic Licensing of Downstream Recipients.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Each time you convey a covered work, the recipient automatically</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">receives a license from the original licensors, to run, modify and</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">propagate that work, subject to this License. You are not responsible</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">for enforcing compliance by third parties with this License.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> An &quot;entity transaction&quot; is a transaction transferring control of an</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">organization, or substantially all assets of one, or subdividing an</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">organization, or merging organizations. If propagation of a covered</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">work results from an entity transaction, each party to that</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">transaction who receives a copy of the work also receives whatever</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">licenses to the work the party's predecessor in interest had or could</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">give under the previous paragraph, plus a right to possession of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Corresponding Source of the work from the predecessor in interest, if</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the predecessor has it or can get it with reasonable efforts.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> You may not impose any further restrictions on the exercise of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">rights granted or affirmed under this License. For example, you may</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">not impose a license fee, royalty, or other charge for exercise of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">rights granted under this License, and you may not initiate litigation</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">(including a cross-claim or counterclaim in a lawsuit) alleging that</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">any patent claim is infringed by making, using, selling, offering for</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">sale, or importing the Program or any portion of it.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 11. Patents.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> A &quot;contributor&quot; is a copyright holder who authorizes use under this</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">License of the Program or a work on which the Program is based. The</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">work thus licensed is called the contributor's &quot;contributor version&quot;.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> A contributor's &quot;essential patent claims&quot; are all patent claims</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">owned or controlled by the contributor, whether already acquired or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">hereafter acquired, that would be infringed by some manner, permitted</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">by this License, of making, using, or selling its contributor version,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">but do not include claims that would be infringed only as a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">consequence of further modification of the contributor version. For</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">purposes of this definition, &quot;control&quot; includes the right to grant</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">patent sublicenses in a manner consistent with the requirements of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">this License.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Each contributor grants you a non-exclusive, worldwide, royalty-free</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">patent license under the contributor's essential patent claims, to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">make, use, sell, offer for sale, import and otherwise run, modify and</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">propagate the contents of its contributor version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> In the following three paragraphs, a &quot;patent license&quot; is any express</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">agreement or commitment, however denominated, not to enforce a patent</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">(such as an express permission to practice a patent or covenant not to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">sue for patent infringement). To &quot;grant&quot; such a patent license to a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">party means to make such an agreement or commitment not to enforce a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">patent against the party.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> If you convey a covered work, knowingly relying on a patent license,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">and the Corresponding Source of the work is not available for anyone</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">to copy, free of charge and under the terms of this License, through a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">publicly available network server or other readily accessible means,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">then you must either (1) cause the Corresponding Source to be so</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">available, or (2) arrange to deprive yourself of the benefit of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">patent license for this particular work, or (3) arrange, in a manner</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">consistent with the requirements of this License, to extend the patent</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">license to downstream recipients. &quot;Knowingly relying&quot; means you have</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">actual knowledge that, but for the patent license, your conveying the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">covered work in a country, or your recipient's use of the covered work</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">in a country, would infringe one or more identifiable patents in that</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">country that you have reason to believe are valid.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> If, pursuant to or in connection with a single transaction or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">arrangement, you convey, or propagate by procuring conveyance of, a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">covered work, and grant a patent license to some of the parties</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">receiving the covered work authorizing them to use, propagate, modify</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">or convey a specific copy of the covered work, then the patent license</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">you grant is automatically extended to all recipients of the covered</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">work and works based on it.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> A patent license is &quot;discriminatory&quot; if it does not include within</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the scope of its coverage, prohibits the exercise of, or is</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">conditioned on the non-exercise of one or more of the rights that are</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">specifically granted under this License. You may not convey a covered</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">work if you are a party to an arrangement with a third party that is</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">in the business of distributing software, under which you make payment</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">to the third party based on the extent of your activity of conveying</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the work, and under which the third party grants, to any of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">parties who would receive the covered work from you, a discriminatory</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">patent license (a) in connection with copies of the covered work</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">conveyed by you (or copies made from those copies), or (b) primarily</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">for and in connection with specific products or compilations that</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">contain the covered work, unless you entered into that arrangement,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">or that patent license was granted, prior to 28 March 2007.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Nothing in this License shall be construed as excluding or limiting</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">any implied license or other defenses to infringement that may</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">otherwise be available to you under applicable patent law.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 12. No Surrender of Others' Freedom.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> If conditions are imposed on you (whether by court order, agreement or</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">otherwise) that contradict the conditions of this License, they do not</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">excuse you from the conditions of this License. If you cannot convey a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">covered work so as to satisfy simultaneously your obligations under this</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">License and any other pertinent obligations, then as a consequence you may</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">not convey it at all. For example, if you agree to terms that obligate you</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">to collect a royalty for further conveying from those to whom you convey</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the Program, the only way you could satisfy both those terms and this</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">License would be to refrain entirely from conveying the Program.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 13. Use with the GNU Affero General Public License.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Notwithstanding any other provision of this License, you have</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">permission to link or combine any covered work with a work licensed</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">under version 3 of the GNU Affero General Public License into a single</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">combined work, and to convey the resulting work. The terms of this</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">License will continue to apply to the part which is the covered work,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">but the special requirements of the GNU Affero General Public License,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">section 13, concerning interaction through a network will apply to the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">combination as such.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 14. Revised Versions of this License.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The Free Software Foundation may publish revised and/or new versions of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the GNU General Public License from time to time. Such new versions will</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">be similar in spirit to the present version, but may differ in detail to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">address new problems or concerns.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Each version is given a distinguishing version number. If the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Program specifies that a certain numbered version of the GNU General</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Public License &quot;or any later version&quot; applies to it, you have the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">option of following the terms and conditions either of that numbered</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">version or of any later version published by the Free Software</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Foundation. If the Program does not specify a version number of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">GNU General Public License, you may choose any version ever published</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">by the Free Software Foundation.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> If the Program specifies that a proxy can decide which future</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">versions of the GNU General Public License can be used, that proxy's</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">public statement of acceptance of a version permanently authorizes you</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">to choose that version for the Program.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Later license versions may give you additional or different</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">permissions. However, no additional obligations are imposed on any</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">author or copyright holder as a result of your choosing to follow a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">later version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 15. Disclaimer of Warranty.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM &quot;AS IS&quot; WITHOUT WARRANTY</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">ALL NECESSARY SERVICING, REPAIR OR CORRECTION.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 16. Limitation of Liability.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">SUCH DAMAGES.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 17. Interpretation of Sections 15 and 16.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> If the disclaimer of warranty and limitation of liability provided</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">above cannot be given local legal effect according to their terms,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">reviewing courts shall apply local law that most closely approximates</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">an absolute waiver of all civil liability in connection with the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Program, unless a warranty or assumption of liability accompanies a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">copy of the Program in return for a fee.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> END OF TERMS AND CONDITIONS</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:16pt;">LGPLv3 License:</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> GNU LESSER GENERAL PUBLIC LICENSE</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Version 3, 29 June 2007</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Copyright (C) 2007 Free Software Foundation, Inc. &lt;http://fsf.org/&gt;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Everyone is permitted to copy and distribute verbatim copies</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> of this license document, but changing it is not allowed.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> This version of the GNU Lesser General Public License incorporates</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the terms and conditions of version 3 of the GNU General Public</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">License, supplemented by the additional permissions listed below.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 0. Additional Definitions.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> As used herein, &quot;this License&quot; refers to version 3 of the GNU Lesser</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">General Public License, and the &quot;GNU GPL&quot; refers to version 3 of the GNU</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">General Public License.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> &quot;The Library&quot; refers to a covered work governed by this License,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">other than an Application or a Combined Work as defined below.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> An &quot;Application&quot; is any work that makes use of an interface provided</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">by the Library, but which is not otherwise based on the Library.</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Defining a subclass of a class defined by the Library is deemed a mode</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">of using an interface provided by the Library.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> A &quot;Combined Work&quot; is a work produced by combining or linking an</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Application with the Library. The particular version of the Library</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">with which the Combined Work was made is also called the &quot;Linked</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Version&quot;.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The &quot;Minimal Corresponding Source&quot; for a Combined Work means the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Corresponding Source for the Combined Work, excluding any source code</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">for portions of the Combined Work that, considered in isolation, are</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">based on the Application, and not on the Linked Version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The &quot;Corresponding Application Code&quot; for a Combined Work means the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">object code and/or source code for the Application, including any data</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">and utility programs needed for reproducing the Combined Work from the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Application, but excluding the System Libraries of the Combined Work.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 1. Exception to Section 3 of the GNU GPL.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> You may convey a covered work under sections 3 and 4 of this License</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">without being bound by section 3 of the GNU GPL.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 2. Conveying Modified Versions.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> If you modify a copy of the Library, and, in your modifications, a</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">facility refers to a function or data to be supplied by an Application</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">that uses the facility (other than as an argument passed when the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">facility is invoked), then you may convey a copy of the modified</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">version:</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> a) under this License, provided that you make a good faith effort to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> ensure that, in the event an Application does not supply the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> function or data, the facility still operates, and performs</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> whatever part of its purpose remains meaningful, or</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> b) under the GNU GPL, with none of the additional permissions of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> this License applicable to that copy.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 3. Object Code Incorporating Material from Library Header Files.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The object code form of an Application may incorporate material from</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">a header file that is part of the Library. You may convey such object</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">code under terms of your choice, provided that, if the incorporated</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">material is not limited to numerical parameters, data structure</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">layouts and accessors, or small macros, inline functions and templates</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">(ten or fewer lines in length), you do both of the following:</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> a) Give prominent notice with each copy of the object code that the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Library is used in it and that the Library and its use are</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> covered by this License.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> b) Accompany the object code with a copy of the GNU GPL and this license</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> document.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 4. Combined Works.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> You may convey a Combined Work under terms of your choice that,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">taken together, effectively do not restrict modification of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">portions of the Library contained in the Combined Work and reverse</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">engineering for debugging such modifications, if you also do each of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">the following:</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> a) Give prominent notice with each copy of the Combined Work that</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> the Library is used in it and that the Library and its use are</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> covered by this License.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> b) Accompany the Combined Work with a copy of the GNU GPL and this license</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> document.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> c) For a Combined Work that displays copyright notices during</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> execution, include the copyright notice for the Library among</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> these notices, as well as a reference directing the user to the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> copies of the GNU GPL and this license document.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> d) Do one of the following:</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 0) Convey the Minimal Corresponding Source under the terms of this</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> License, and the Corresponding Application Code in a form</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> suitable for, and under terms that permit, the user to</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> recombine or relink the Application with a modified version of</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> the Linked Version to produce a modified Combined Work, in the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> manner specified by section 6 of the GNU GPL for conveying</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Corresponding Source.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 1) Use a suitable shared library mechanism for linking with the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Library. A suitable mechanism is one that (a) uses at run time</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> a copy of the Library already present on the user's computer</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> system, and (b) will operate properly with a modified version</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> of the Library that is interface-compatible with the Linked</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Version.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> e) Provide Installation Information, but only if you would otherwise</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> be required to provide such information under section 6 of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> GNU GPL, and only to the extent that such information is</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> necessary to install and execute a modified version of the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Combined Work produced by recombining or relinking the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Application with a modified version of the Linked Version. (If</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> you use option 4d0, the Installation Information must accompany</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> the Minimal Corresponding Source and Corresponding Application</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Code. If you use option 4d1, you must provide the Installation</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Information in the manner specified by section 6 of the GNU GPL</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> for conveying Corresponding Source.)</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 5. Combined Libraries.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> You may place library facilities that are a work based on the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Library side by side in a single library together with other library</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">facilities that are not Applications and are not covered by this</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">License, and convey such a combined library under terms of your</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">choice, if you do both of the following:</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> a) Accompany the combined library with a copy of the same work based</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> on the Library, uncombined with any other library facilities,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> conveyed under the terms of this License.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> b) Give prominent notice with the combined library that part of it</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> is a work based on the Library, and explaining where to find the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> accompanying uncombined form of the same work.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> 6. Revised Versions of the GNU Lesser General Public License.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> The Free Software Foundation may publish revised and/or new versions</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">of the GNU Lesser General Public License from time to time. Such new</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">versions will be similar in spirit to the present version, but may</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">differ in detail to address new problems or concerns.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> Each version is given a distinguishing version number. If the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Library as you received it specifies that a certain numbered version</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">of the GNU Lesser General Public License &quot;or any later version&quot;</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">applies to it, you have the option of following the terms and</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">conditions either of that published version or of any later version</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">published by the Free Software Foundation. If the Library as you</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">received it does not specify a version number of the GNU Lesser</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">General Public License, you may choose any version of the GNU Lesser</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">General Public License ever published by the Free Software Foundation.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;"> If the Library as you received it specifies that a proxy can decide</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">whether future versions of the GNU Lesser General Public License shall</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">apply, that proxy's public statement of acceptance of any version is</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">permanent authorization for you to choose that version for the</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Library.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:16pt;">The MIT License (MIT):</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">Permission is hereby granted, free of charge, to any person obtaining a copy</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">of this software and associated documentation files (the &quot;Software&quot;), to deal</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">in the Software without restriction, including without limitation the rights</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">to use, copy, modify, merge, publish, distribute, sublicense, and/or sell</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">copies of the Software, and to permit persons to whom the Software is</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">furnished to do so, subject to the following conditions:</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">The above copyright notice and this permission notice shall be included in</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">all copies or substantial portions of the Software.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:9pt;">THE SOFTWARE.</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;"><br /></p></body></html> diff --git a/cutelog/resources/ui/logger.ui b/cutelog/resources/ui/logger.ui index 9640b49..c45f0af 100644 --- a/cutelog/resources/ui/logger.ui +++ b/cutelog/resources/ui/logger.ui @@ -28,7 +28,7 @@ - 12 + 15 0 @@ -54,22 +54,18 @@ Qt::Vertical - - - + + + - Create level + Log namespaces - - - - - - Presets + + 1 - + QAbstractItemView::NoEditTriggers @@ -112,7 +108,17 @@ - + + + + Levels + + + 1 + + + + @@ -173,11 +179,6 @@ Show - - - # - - Name @@ -185,26 +186,6 @@ - - - - Levels - - - 1 - - - - - - - Log namespaces - - - 1 - - - @@ -270,7 +251,7 @@ false - false + true QAbstractItemView::NoEditTriggers @@ -290,15 +271,24 @@ QAbstractItemView::SelectRows + + QAbstractItemView::ScrollPerPixel + false false + + false + false + + 20 + false @@ -357,6 +347,12 @@ 0 + + + 80 + 0 + + 60 @@ -379,14 +375,20 @@ 0 + + + 80 + 0 + + Search QToolButton::MenuButtonPopup - - Qt::NoArrow + + Qt::ToolButtonTextOnly diff --git a/cutelog/resources/ui/main_window.ui b/cutelog/resources/ui/main_window.ui deleted file mode 100644 index c2076a9..0000000 --- a/cutelog/resources/ui/main_window.ui +++ /dev/null @@ -1,37 +0,0 @@ - - - MainWindow - - - - 0 - 0 - 861 - 586 - - - - cutelog - - - - - - - true - - - true - - - true - - - - - - - - - - diff --git a/cutelog/resources/ui/merge_dialog.ui b/cutelog/resources/ui/merge_dialog.ui deleted file mode 100644 index d26431b..0000000 --- a/cutelog/resources/ui/merge_dialog.ui +++ /dev/null @@ -1,121 +0,0 @@ - - - Dialog - - - - 0 - 0 - 341 - 323 - - - - Dialog - - - - - - - - - Qt::Horizontal - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - - - - - Qt::IgnoreAction - - - QAbstractItemView::MultiSelection - - - - - - - Keep connections alive - - - true - - - - - - - All loggers: - - - - - - - Merge all into: - - - - - - - Qt::Vertical - - - - 20 - 169 - - - - - - label - loggerList - label_2 - dstComboBox - buttonBox - verticalSpacer - keepAliveCheckBox - - - - - buttonBox - accepted() - Dialog - accept() - - - 247 - 303 - - - 186 - 248 - - - - - buttonBox - rejected() - Dialog - reject() - - - 250 - 296 - - - 305 - 249 - - - - - diff --git a/cutelog/resources/ui/settings_dialog.ui b/cutelog/resources/ui/settings_dialog.ui index 627ff27..c20eca4 100644 --- a/cutelog/resources/ui/settings_dialog.ui +++ b/cutelog/resources/ui/settings_dialog.ui @@ -6,35 +6,25 @@ 0 0 - 614 - 392 + 695 + 438 Settings - - - - - Qt::Horizontal - - - QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - false - - - + - - 3 + + 1 0 + + 5 + Appearance @@ -57,59 +47,144 @@ + + + + Qt::Horizontal + + + QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Ok|QDialogButtonBox::RestoreDefaults + + + - - 10 + + 4 0 - - QFrame::StyledPanel - 0 - + 10 - - - - Lo&gger table row height + + + + + 1 + 0 + - - loggerTableRowHeight + + 1 - + + + + + 4 + 0 + + + + + + + + + + + + - - 5 + + 4 0 + + + + Font in logger tables + + + + + + + Font in text edit windows + + + + + + + Table row line height + + + + + + + Dark theme by default + + + + + + + Time formatting string + + + - + - Indica&te exception with + Indicate exception with + + + + + + + + 1 + 0 + + + + 1 + + + + + + + + 0 + 0 + - - excIndicationComboBox + + 1 - + - + 0 0 @@ -131,152 +206,128 @@ - + + + + + 0 + 0 + + + + %Y-%m-%d %H:%M:%S.%f + + + + Qt::Vertical - 0 - 0 + 20 + 40 - - + + - Font in te&xt edit windows + <a href="https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior">Help</a> - - textViewFont + + Qt::RichText - - - - - - - 5 - 0 - + + true + + + Qt::TextBrowserInteraction - - - - Font in &logger tables - - - loggerTableFont + + + + Qt::Horizontal - - - - - 0 - 0 - + + + + Qt::Horizontal - - + + + + + + 20 + + + 10 + + + - + 0 0 - + Case sensitive by default - - - Dark &theme by default - - - darkThemeDefaultCheckBox - - - - - + - - 1 + + 0 0 - - 1 + + Open by default - - + + - - 1 + + 0 0 - - 1 - - - - - - - - - 10 - - - - - Case sensi&tive by default - - - searchCaseSensitiveDefaultCheckBox - - - - - - Open by defa&ult - - - searchOpenDefaultCheckBox + Wildcard by default - - + + - + 0 0 - + Regex by default - + - + 0 0 @@ -286,20 +337,10 @@ - - - - Wi&ldcard by default - - - searchWildcardDefaultCheckBox - - - - - + + - + 0 0 @@ -309,10 +350,10 @@ - + - + 0 0 @@ -322,25 +363,28 @@ - - - - Rege&x by default + + + + + 0 + 0 + - - searchRegexDefaultCheckBox + + - + Qt::Vertical - 0 - 0 + 20 + 40 @@ -348,178 +392,266 @@ - + 10 - - - - Server &listen address - - - listenHostLine + + + + + 0 + 0 + - - - - - - - - - - - - 19996 + Default serialization format + + + 0 + 0 + + - 127.0.0.1 + 0.0.0.0 - - - - Single &tab mode by default + + + + + 0 + 0 + - - singleTabCheckBox + + Server listen port - - + + + + + 0 + 0 + + - Server listen &port + Server listen address + + + + + + + + 0 + 0 + - - listenPortLine + + 19996 - + Qt::Vertical - 0 - 0 + 20 + 40 - - - - - - 10 - - - - - 0.0075 + + + + + 0 + 0 + + + + Extra mode by default - - + + - Console &logging level - - - logLevelLine + - + - - + + + + + 0 + 0 + + + + + pickle + + + + + json + + + + + + + + + 0 + 0 + + - Enable benchmark + Single tab mode by default - - benchmarkCheckBox + + + + + + Qt::Horizontal - - - - 30 + + + + + + 10 + + + + + + 0 + 0 + + + + Console logging level - - + + + + + 0 + 0 + + - + Enable benchmark + + + + Qt::Vertical + + + + 20 + 40 + + + + - + + + + 0 + 0 + + - &Qt event sleep period + Benchmark record interval + + + + + + + + 0 + 0 + - - loopEventDelayLine + + 30 - - - - Benchmark record in&terval + + + + + 0 + 0 + - - benchmarkIntervalLine + + Light theme is native style - + + + + 0 + 0 + + 0.0005 - - + + - Li&ght theme is native style - - - lightThemeNativeCheckBox + - - - - Qt::Vertical - - - - 20 - 40 - + + + + - + @@ -527,21 +659,6 @@ - - listWidget - searchOpenDefaultCheckBox - searchRegexDefaultCheckBox - searchCaseSensitiveDefaultCheckBox - searchWildcardDefaultCheckBox - listenHostLine - listenPortLine - singleTabCheckBox - logLevelLine - loopEventDelayLine - benchmarkCheckBox - benchmarkIntervalLine - lightThemeNativeCheckBox - @@ -551,8 +668,8 @@ accept() - 235 - 253 + 225 + 420 157 @@ -567,8 +684,8 @@ reject() - 303 - 253 + 293 + 426 286 @@ -583,49 +700,14 @@ setCurrentIndex(int) - 54 - 39 - - - 235 - 48 - - - - - listenPortLine - textChanged(QString) - Dialog - server_options_changed() - - - 312 - 57 - - - 346 - 6 - - - - - listenHostLine - textChanged(QString) - Dialog - server_options_changed() - - - 585 - 45 + 92 + 200 - 296 - 5 + 230 + 182 - - server_options_changed() - diff --git a/cutelog/settings_dialog.py b/cutelog/settings_dialog.py index cf43198..b425a7f 100644 --- a/cutelog/settings_dialog.py +++ b/cutelog/settings_dialog.py @@ -1,45 +1,41 @@ -from PyQt5 import uic -from PyQt5.QtWidgets import QMessageBox, QDialogButtonBox -from PyQt5.QtGui import QFont, QIntValidator, QDoubleValidator +from datetime import datetime -from .utils import show_info_dialog -from .config import CONFIG +from qtpy.QtGui import QDoubleValidator, QFont, QIntValidator, QValidator +from qtpy.QtWidgets import QDialog, QDialogButtonBox, QMessageBox +from .config import CONFIG, MSGPACK_SUPPORT, CBOR_SUPPORT +from .utils import loadUi, show_info_dialog -uif = CONFIG.get_ui_qfile('settings_dialog.ui') -SettingsDialogBase = uic.loadUiType(uif) -uif.close() - -class SettingsDialog(*SettingsDialogBase): +class SettingsDialog(QDialog): def __init__(self, parent): super().__init__(parent) self.parent_widget = parent self.server_restart_needed = False + self.time_format_validator = TimeFormatValidator(self) self.setupUi() def setupUi(self): - super().setupUi(self) + self.ui = loadUi(CONFIG.get_ui_qfile("settings_dialog.ui"), baseinstance=self) self.applyButton = self.buttonBox.button(QDialogButtonBox.Apply) self.applyButton.clicked.connect(self.save_to_config) + self.restoreDefaultsButton = self.buttonBox.button(QDialogButtonBox.RestoreDefaults) + self.restoreDefaultsButton.clicked.connect(self.confirm_restore_defaults) + + self.listenHostLine.textChanged.connect(self.server_options_changed) + self.listenPortLine.textChanged.connect(self.server_options_changed) self.setup_tooltips() self.load_from_config() def setup_tooltips(self): - self.loopEventDelayLine.setToolTip('Determines how fast UI updates. ' - 'Recommended vaules: between 0 and 0.0075.
' - 'Smaller number means smoother UI, but ' - 'might hinder performance of some things.') - self.benchmarkCheckBox.setToolTip('Has effect after restarting the server, ' 'for testing purposes only.') self.singleTabCheckBox.setToolTip("Forces all connections into one tab. " "Useful for when you're restarting one " "program very often.") - self.singleTabLabel.setBuddy(self.singleTabCheckBox) # @Hmmm: why doesn't this work? def load_from_config(self): # Appearance page @@ -51,6 +47,9 @@ def load_from_config(self): self.textViewFontSize.setValue(CONFIG['text_view_dialog_font_size']) self.loggerTableRowHeight.setValue(CONFIG['logger_row_height']) self.excIndicationComboBox.setCurrentIndex(CONFIG['exception_indication']) + self.timeFormatLine.setText(CONFIG['time_format_string']) + self.timeFormatLine.setValidator(self.time_format_validator) + self.timeFormatLine.textChanged.connect(self.time_format_valid) # Search self.searchOpenDefaultCheckBox.setChecked(CONFIG['search_open_default']) @@ -63,12 +62,18 @@ def load_from_config(self): self.listenPortLine.setValidator(QIntValidator(0, 65535, self)) self.listenPortLine.setText(str(CONFIG['listen_port'])) self.singleTabCheckBox.setChecked(CONFIG['single_tab_mode_default']) + self.extraModeCheckBox.setChecked(CONFIG['extra_mode_default']) + if MSGPACK_SUPPORT: + self.serializationFormatCombo.addItem("msgpack") + if CBOR_SUPPORT: + self.serializationFormatCombo.addItem("cbor") + i = self.serializationFormatCombo.findText(CONFIG['default_serialization_format']) + if i != -1: + self.serializationFormatCombo.setCurrentIndex(i) # Advanced page self.logLevelLine.setValidator(QIntValidator(0, 1000, self)) self.logLevelLine.setText(str(CONFIG['console_logging_level'])) - self.loopEventDelayLine.setValidator(QDoubleValidator(0, 1, 9, self)) - self.loopEventDelayLine.setText(str(CONFIG['loop_event_delay'])) self.benchmarkCheckBox.setChecked(CONFIG['benchmark']) self.benchmarkIntervalLine.setValidator(QDoubleValidator(0, 1000, 9, self)) self.benchmarkIntervalLine.setText(str(CONFIG['benchmark_interval'])) @@ -84,9 +89,9 @@ def save_to_config(self): o['text_view_dialog_font'] = self.textViewFont.currentFont().family() o['text_view_dialog_font_size'] = self.textViewFontSize.value() o['exception_indication'] = self.excIndicationComboBox.currentIndex() - new_row_height = self.loggerTableRowHeight.value() - if new_row_height != CONFIG['logger_row_height']: # to prevent resizing unnecessarily - o['logger_row_height'] = new_row_height + o['logger_row_height'] = self.loggerTableRowHeight.value() + if self.timeFormatLine.hasAcceptableInput(): + o['time_format_string'] = self.timeFormatLine.text() # Search o['search_open_default'] = self.searchOpenDefaultCheckBox.isChecked() @@ -99,9 +104,10 @@ def save_to_config(self): o['listen_port'] = int(self.listenPortLine.text()) o['console_logging_level'] = int(self.logLevelLine.text()) o['single_tab_mode_default'] = self.singleTabCheckBox.isChecked() + o['extra_mode_default'] = self.extraModeCheckBox.isChecked() + o['default_serialization_format'] = self.serializationFormatCombo.currentText() # Advanced - o['loop_event_delay'] = float(self.loopEventDelayLine.text()) o['benchmark_interval'] = float(self.benchmarkIntervalLine.text()) o['benchmark'] = self.benchmarkCheckBox.isChecked() o['light_theme_is_native'] = self.lightThemeNativeCheckBox.isChecked() @@ -126,3 +132,37 @@ def display_warning(self): m.setWindowTitle('Warning') m.setIcon(QMessageBox.Information) m.show() + + def confirm_restore_defaults(self): + m = QMessageBox(QMessageBox.Question, "Restore to defaults", + "Restore settings to the default state?\n" + "You'll need to restart the program.", + QMessageBox.Yes | QMessageBox.No, self) + m.setDefaultButton(QMessageBox.No) + yesButton = m.button(QMessageBox.Yes) + yesButton.clicked.connect(self.restore_defaults) + m.show() + + def restore_defaults(self): + CONFIG.restore_defaults() + self.done(0) + + def time_format_valid(self, fmt): + if self.timeFormatLine.hasAcceptableInput(): + self.timeFormatLine.setStyleSheet("QLineEdit {}") + return True + else: + self.timeFormatLine.setStyleSheet("QLineEdit {color: red}") + return False + + +class TimeFormatValidator(QValidator): + def __init__(self, parent): + super().__init__(parent) + + def validate(self, fmt_string, pos): + try: + datetime.now().strftime(fmt_string) + return self.Acceptable, fmt_string, pos + except Exception: + return self.Intermediate, fmt_string, pos diff --git a/cutelog/text_view_dialog.py b/cutelog/text_view_dialog.py index afed2cc..726f542 100644 --- a/cutelog/text_view_dialog.py +++ b/cutelog/text_view_dialog.py @@ -1,7 +1,7 @@ -from PyQt5.QtGui import QFont -from PyQt5.QtWidgets import (QApplication, QDialog, QHBoxLayout, QLayout, - QPlainTextEdit, QPushButton, QSizePolicy, - QSpacerItem, QVBoxLayout) +from qtpy.QtGui import QFont +from qtpy.QtWidgets import (QApplication, QDialog, QHBoxLayout, QLayout, + QPlainTextEdit, QPushButton, QSizePolicy, + QSpacerItem, QVBoxLayout) from .config import CONFIG diff --git a/cutelog/utils.py b/cutelog/utils.py index a0ec441..3f06c32 100644 --- a/cutelog/utils.py +++ b/cutelog/utils.py @@ -1,5 +1,6 @@ -from PyQt5.QtCore import Qt -from PyQt5.QtWidgets import QMessageBox, QDesktopWidget +import qtpy +from qtpy.QtCore import QMetaObject, Qt +from qtpy.QtWidgets import QDesktopWidget, QMessageBox def show_info_dialog(parent, title, text): @@ -30,3 +31,19 @@ def center_widget_on_screen(widget): center = QDesktopWidget().availableGeometry().center() rect.moveCenter(center) widget.move(rect.topLeft()) + + +# So .ui file loading is pretty hard to get to work with both PySide2 and PyQt5. +# This is the only way I was able to figure it out. +# loadUi function is pulled from qtpy, but modified to work around some PySide2 +# nonsense. +if qtpy.PYSIDE2: + from qtpy.uic import UiLoader + + def loadUi(uifile, baseinstance=None): + loader = UiLoader(baseinstance, None) + widget = loader.load(uifile) + QMetaObject.connectSlotsByName(widget) + return widget +else: + from qtpy.uic import loadUi diff --git a/screenshots/main_dark.png b/screenshots/main_dark.png index 4628213f6df4309b45caba319b03cef2a9eec167..1de9555a13876e54f0afef1182023ba5211673fe 100644 GIT binary patch literal 186442 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

mgggbJJx%TzLT5RYD>%{9GNR{D^Gu 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�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%0AQ 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%0AIHaV3 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 P^O+8(kW% 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 N{oOGxY0fj2{|>w0+d=>U diff --git a/setup.py b/setup.py index e568cdb..5c46697 100644 --- a/setup.py +++ b/setup.py @@ -5,14 +5,26 @@ from setuptools.command.install import install -VERSION = '1.1.9' +VERSION = '2.0.0' def build_qt_resources(): print('Compiling resources...') - from PyQt5 import pyrcc_main + try: + from PyQt5 import pyrcc_main + except ImportError as e: + raise Exception("Building from source requires PyQt5") from e pyrcc_main.processResourceFile(['cutelog/resources/resources.qrc'], 'cutelog/resources.py', False) + # Rewrite PyQt5 import statements to qtpy + with open('cutelog/resources.py', 'r') as rf: + lines = rf.readlines() + for i, line in enumerate(lines): + if 'import' in line and not line.startswith('\\x'): + new_line = line.replace('PyQt5', 'qtpy') + lines[i] = new_line + with open('cutelog/resources.py', 'w') as wf: + wf.writelines(lines) print('Resources compiled successfully') @@ -37,7 +49,7 @@ def run(self): author_email="busfromrus@gmail.com", url="https://github.com/busimus/cutelog/", - requires=['PyQt5'], + requires=['PyQt5', 'QtPy'], python_requires=">=3.5", classifiers=[ @@ -45,7 +57,6 @@ def run(self): "Environment :: X11 Applications :: Qt", "Environment :: MacOS X :: Cocoa", "Environment :: Win32 (MS Windows)", - "Framework :: AsyncIO", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)",