diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..94535c9c68ff56c70024048dc4f5f78290b54587
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,19 @@
+NAME = donkiscripting-gui
+MAIN = DonkiScripting.py
+
+DIRNAME = $(NAME:-gui=)
+MODNAME = $(MAIN:.py=)
+
+default: bin
+	@cp src/*.py bin/${DIRNAME}
+	@cp -rf src/donkipylib bin/${DIRNAME}
+	@echo "#!/usr/bin/env python\nimport sys\nsys.path.append(sys.path[0]+'/${DIRNAME}')\nfrom ${MODNAME} import main\nif __name__ == '__main__':\n    main()\n" > bin/${NAME}
+	@chmod +x bin/${NAME} bin/${DIRNAME}/${MAIN}
+
+bin:
+	@test -d $@ || mkdir -p $@/${DIRNAME}
+
+clean:
+	@rm -fr bin/ src/*~ src/*.pyc 
+
+.PHONY: clean
diff --git a/src/DonkiScripting.py b/src/DonkiScripting.py
new file mode 100755
index 0000000000000000000000000000000000000000..0093484fabb6bec1bc82f089da0a4a02ad07a589
--- /dev/null
+++ b/src/DonkiScripting.py
@@ -0,0 +1,205 @@
+#! /usr/bin/python
+
+import os
+import sys
+import time
+import PyTango
+import signal
+import traceback
+import threading
+import fcntl
+from subprocess import Popen, PIPE
+from PyQt4 import QtCore, QtGui
+from DonkiScripting_ui import Ui_Dialog
+from SyntaxHilighter import PythonHighlighter
+import scriptingHelp
+from scriptingHelp_rc import *
+from pyEditor import PyEditWidget
+
+ui = None
+
+class checkScript(QtCore.QThread):
+    add_log = QtCore.pyqtSignal(str,bool)
+    def __init__(self, lwidget):
+        QtCore.QThread.__init__(self)
+        self.lwidget = lwidget
+        self.go_on = True
+        self.add_log.connect(self.lwidget.appendLogTxt)
+        
+    def run(self):
+        while self.go_on:
+            time.sleep(0.1)
+            if (self.lwidget.p is None):
+                continue
+            # Check stdout
+            while True:
+                try:
+                    out = self.lwidget.p.stdout.readline()
+                    if len(out) == 0:
+                        break
+                    self.add_log.emit(out.strip(),False)
+                except:
+                    break
+            # Check sterr
+            while True:
+                try:
+                    out = self.lwidget.p.stderr.readline()
+                    if len(out) == 0:
+                        break
+                    self.add_log.emit(out.strip(),False)
+                except:
+                    break
+            # Check if script has finished
+            if (self.lwidget.p.poll() is not None):
+                self.lwidget.p = None
+                self.add_log.emit("Script ended",True)
+                self.lwidget.runButton.setEnabled(True)
+                self.lwidget.abortButton.setEnabled(False)
+                
+        
+    
+################################################################################
+class myDialog(Ui_Dialog):
+    def __init__(self, script_path, parent):
+        Ui_Dialog.__init__(self)
+        self.script_path = script_path
+        self.p = None
+        self.default_header = "from donkipylib import *"
+        self.parent = parent
+        
+    def setupWindowAndConnections(self):
+        # Add logo
+        self.logoLabel.setPixmap(QtGui.QPixmap(":images/DonkiPy.png"))
+
+        # add Scripting Help
+        self.HelpTab = QtGui.QWidget()
+        self.HelpTab.setObjectName("HelpTab")
+        self.gridLayout_help = QtGui.QGridLayout(self.HelpTab)
+        self.gridLayout_help.setObjectName("gridLayout_help")
+        my_path = os.path.dirname(os.path.realpath(__file__))
+        self.HelpWidget = scriptingHelp.ScriptingHelpWidget(parent=None, lib_path=my_path+"/donkipylib")
+        self.gridLayout_help.addWidget(self.HelpWidget, 0, 1, 1, 1)
+        self.tabWidget.addTab(self.HelpTab, "Scripting Help")
+        self.HelpWidget.icon.clear()
+        # Add Python specific editor
+        self.pyEditWidget = PyEditWidget(self.parent, self.script_path)
+        self.scriptTextEdit = self.pyEditWidget.getTextEdit()
+        self.scriptTextEdit.appendPlainText(self.default_header + "\n")
+        self.gridLayout_3.addWidget(self.pyEditWidget, 1, 0, 1, 5)
+        
+        self.scriptTextEdit.setTabStopWidth(16)
+        self.runButton.clicked.connect(self.runScript)
+        self.abortButton.clicked.connect(self.abortScript)
+        self.abortButton.setEnabled(False)
+        self.tabWidget.setCurrentIndex(0)
+        self.highlight = PythonHighlighter(self.scriptTextEdit.document())
+        self.check_thread = checkScript(self)
+        self.check_thread.start()
+
+
+        
+    def tabChanged(self,index):
+        pass
+
+    def runScript(self):
+        #self.HelpWidget.show()
+        try:
+            if self.p is not None and self.p.poll() == None:
+                self.errorMessage("Script already executing")
+                return
+            if not str(self.pyEditWidget.fileName).endswith(".py"):
+                self.errorMessage("No active script found")
+                return
+            if self.default_header not in self.scriptTextEdit.toPlainText():
+                new_text = "%s\n%s" % (self.default_header,self.scriptTextEdit.toPlainText())
+                self.scriptTextEdit.setPlainText(new_text)
+            self.pyEditWidget._saveScript(forced=True)
+            scriptlines =  self.scriptTextEdit.toPlainText().split('\n')
+            if map(str,scriptlines) == ['']:
+                return
+            my_path = os.path.dirname(os.path.realpath(__file__))
+            donki_pypath = "%s/donkipylib" % my_path 
+            inp_list = ["python", '-u', self.pyEditWidget.fileName]
+            if 'PYTHONPATH' not in os.environ.keys():
+                new_PYTHONPATH = donki_pypath
+            else:
+                new_PYTHONPATH = "%s:%s" % (os.environ['PYTHONPATH'],donki_pypath)
+            env_dict = {'PYTHONPATH':new_PYTHONPATH, 'DONKIPY_LIBPATH':donki_pypath}
+            self.p = Popen(inp_list,cwd=my_path,stdout=PIPE,stderr=PIPE,bufsize=0,env=env_dict)
+            fd = self.p.stdout.fileno()
+            fl = fcntl.fcntl(fd, fcntl.F_GETFL)
+            fcntl.fcntl(fd, fcntl.F_SETFL, fl | os.O_NONBLOCK)
+            fd = self.p.stderr.fileno()
+            fl = fcntl.fcntl(fd, fcntl.F_GETFL)
+            fcntl.fcntl(fd, fcntl.F_SETFL, fl | os.O_NONBLOCK)
+            self.logpanel.clear()
+            self.appendLogTxt("Script Started",True)
+            self.tabWidget.setCurrentIndex(1)
+            self.runButton.setEnabled(False)
+            self.abortButton.setEnabled(True)
+        except:
+            self.errorMessage(traceback.format_exc())
+
+    def abortScript(self):
+        if self.p is None:
+            return
+        if hasattr(self.p, 'send_signal'):
+            #Python > 2.5
+            self.p.send_signal(signal.SIGABRT)
+        else:
+            #Python 2.5
+            os.kill(self.p.pid, signal.SIGABRT) 
+
+    def appendLogTxt(self,txt , timedate = False):
+        if timedate:
+            self.logpanel.appendPlainText("%s %s" % (time.asctime(),txt))
+        else:
+            self.logpanel.appendPlainText(txt)
+            
+
+    def close_and_exit(self):
+        self.check_thread.go_on = False
+        if self.p is not None and self.p.poll() == None:
+            self.abortScript()
+
+    def errorMessage(self, err_message):
+            msg = QtGui.QMessageBox()
+            msg.setIcon(QtGui.QMessageBox.Warning)
+            msg.setText(err_message)
+            msg.setWindowTitle("Error")
+            msg.setStandardButtons(QtGui.QMessageBox.Ok)
+            retval = msg.exec_()
+
+		
+
+def sigint_handler( *args):
+    """Handler for the SIGINT signal."""
+    global ui
+    ui.close_and_exit()
+    QtGui.QApplication.quit()
+
+
+def main():
+    app = QtGui.QApplication(sys.argv)
+    app.setWindowIcon(QtGui.QIcon(":images/DonkiPy.png"))
+    Dialog = QtGui.QDialog()
+    if len(sys.argv) < 2:
+        user_script_path = "."
+    else:
+        user_script_path = sys.argv[1]
+    ui = myDialog(user_script_path, Dialog)
+    ui.setupUi(Dialog)
+    ui.setupWindowAndConnections()
+    signal.signal(signal.SIGINT, sigint_handler)
+    signal.signal(signal.SIGTERM, sigint_handler)
+    # Next line enables CTRL-C abort
+    #signal.signal(signal.SIGINT, signal.SIG_DFL)
+    Dialog.show()
+    try:
+        app.exec_()
+    finally:
+        ui.close_and_exit()
+
+
+if __name__ == "__main__":
+    main()
diff --git a/src/DonkiScripting.ui b/src/DonkiScripting.ui
new file mode 100644
index 0000000000000000000000000000000000000000..6af8eec1c24537b1cf051b748c5e2c6692fcb05f
--- /dev/null
+++ b/src/DonkiScripting.ui
@@ -0,0 +1,195 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>Dialog</class>
+ <widget class="QDialog" name="Dialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>905</width>
+    <height>721</height>
+   </rect>
+  </property>
+  <property name="palette">
+   <palette>
+    <active>
+     <colorrole role="Base">
+      <brush brushstyle="SolidPattern">
+       <color alpha="255">
+        <red>255</red>
+        <green>255</green>
+        <blue>255</blue>
+       </color>
+      </brush>
+     </colorrole>
+     <colorrole role="Window">
+      <brush brushstyle="SolidPattern">
+       <color alpha="255">
+        <red>255</red>
+        <green>218</green>
+        <blue>107</blue>
+       </color>
+      </brush>
+     </colorrole>
+    </active>
+    <inactive>
+     <colorrole role="Base">
+      <brush brushstyle="SolidPattern">
+       <color alpha="255">
+        <red>255</red>
+        <green>255</green>
+        <blue>255</blue>
+       </color>
+      </brush>
+     </colorrole>
+     <colorrole role="Window">
+      <brush brushstyle="SolidPattern">
+       <color alpha="255">
+        <red>255</red>
+        <green>218</green>
+        <blue>107</blue>
+       </color>
+      </brush>
+     </colorrole>
+    </inactive>
+    <disabled>
+     <colorrole role="Base">
+      <brush brushstyle="SolidPattern">
+       <color alpha="255">
+        <red>255</red>
+        <green>218</green>
+        <blue>107</blue>
+       </color>
+      </brush>
+     </colorrole>
+     <colorrole role="Window">
+      <brush brushstyle="SolidPattern">
+       <color alpha="255">
+        <red>255</red>
+        <green>218</green>
+        <blue>107</blue>
+       </color>
+      </brush>
+     </colorrole>
+    </disabled>
+   </palette>
+  </property>
+  <property name="windowTitle">
+   <string>Donki Scripting</string>
+  </property>
+  <layout class="QGridLayout" name="gridLayout_2">
+   <item row="3" column="1">
+    <widget class="QPushButton" name="abortButton">
+     <property name="text">
+      <string>Abort</string>
+     </property>
+    </widget>
+   </item>
+   <item row="2" column="0" colspan="5">
+    <widget class="QTabWidget" name="tabWidget">
+     <property name="currentIndex">
+      <number>0</number>
+     </property>
+     <widget class="QWidget" name="Edit">
+      <attribute name="title">
+       <string>Script Editing</string>
+      </attribute>
+      <layout class="QGridLayout" name="gridLayout_3"/>
+     </widget>
+     <widget class="QWidget" name="Execution">
+      <attribute name="title">
+       <string>Execution Log</string>
+      </attribute>
+      <layout class="QGridLayout" name="gridLayout">
+       <item row="0" column="0">
+        <widget class="QPlainTextEdit" name="logpanel"/>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </item>
+   <item row="3" column="4">
+    <widget class="QDialogButtonBox" name="buttonBox">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+     <property name="orientation">
+      <enum>Qt::Horizontal</enum>
+     </property>
+     <property name="standardButtons">
+      <set>QDialogButtonBox::Close</set>
+     </property>
+    </widget>
+   </item>
+   <item row="3" column="0">
+    <widget class="QPushButton" name="runButton">
+     <property name="text">
+      <string>Run</string>
+     </property>
+    </widget>
+   </item>
+   <item row="1" column="1" colspan="4">
+    <widget class="QLabel" name="label_2">
+     <property name="font">
+      <font>
+       <pointsize>16</pointsize>
+       <weight>75</weight>
+       <bold>true</bold>
+      </font>
+     </property>
+     <property name="text">
+      <string>Donki Scripting</string>
+     </property>
+     <property name="alignment">
+      <set>Qt::AlignCenter</set>
+     </property>
+    </widget>
+   </item>
+   <item row="1" column="0">
+    <widget class="QLabel" name="logoLabel">
+     <property name="text">
+      <string/>
+     </property>
+    </widget>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>accepted()</signal>
+   <receiver>Dialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>248</x>
+     <y>254</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>157</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>rejected()</signal>
+   <receiver>Dialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>316</x>
+     <y>260</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>286</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/src/DonkiScripting_ui.py b/src/DonkiScripting_ui.py
new file mode 100644
index 0000000000000000000000000000000000000000..91aa7ca9c98dd19862290b9a8c8929f287cd3c33
--- /dev/null
+++ b/src/DonkiScripting_ui.py
@@ -0,0 +1,110 @@
+# -*- coding: utf-8 -*-
+
+# Form implementation generated from reading ui file 'DonkiScripting.ui'
+#
+# Created by: PyQt4 UI code generator 4.11.4
+#
+# WARNING! All changes made in this file will be lost!
+
+from PyQt4 import QtCore, QtGui
+
+try:
+    _fromUtf8 = QtCore.QString.fromUtf8
+except AttributeError:
+    def _fromUtf8(s):
+        return s
+
+try:
+    _encoding = QtGui.QApplication.UnicodeUTF8
+    def _translate(context, text, disambig):
+        return QtGui.QApplication.translate(context, text, disambig, _encoding)
+except AttributeError:
+    def _translate(context, text, disambig):
+        return QtGui.QApplication.translate(context, text, disambig)
+
+class Ui_Dialog(object):
+    def setupUi(self, Dialog):
+        Dialog.setObjectName(_fromUtf8("Dialog"))
+        Dialog.resize(905, 721)
+        palette = QtGui.QPalette()
+        brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
+        brush.setStyle(QtCore.Qt.SolidPattern)
+        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Base, brush)
+        brush = QtGui.QBrush(QtGui.QColor(255, 218, 107))
+        brush.setStyle(QtCore.Qt.SolidPattern)
+        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Window, brush)
+        brush = QtGui.QBrush(QtGui.QColor(255, 255, 255))
+        brush.setStyle(QtCore.Qt.SolidPattern)
+        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Base, brush)
+        brush = QtGui.QBrush(QtGui.QColor(255, 218, 107))
+        brush.setStyle(QtCore.Qt.SolidPattern)
+        palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Window, brush)
+        brush = QtGui.QBrush(QtGui.QColor(255, 218, 107))
+        brush.setStyle(QtCore.Qt.SolidPattern)
+        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Base, brush)
+        brush = QtGui.QBrush(QtGui.QColor(255, 218, 107))
+        brush.setStyle(QtCore.Qt.SolidPattern)
+        palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Window, brush)
+        Dialog.setPalette(palette)
+        self.gridLayout_2 = QtGui.QGridLayout(Dialog)
+        self.gridLayout_2.setObjectName(_fromUtf8("gridLayout_2"))
+        self.abortButton = QtGui.QPushButton(Dialog)
+        self.abortButton.setObjectName(_fromUtf8("abortButton"))
+        self.gridLayout_2.addWidget(self.abortButton, 3, 1, 1, 1)
+        self.tabWidget = QtGui.QTabWidget(Dialog)
+        self.tabWidget.setObjectName(_fromUtf8("tabWidget"))
+        self.Edit = QtGui.QWidget()
+        self.Edit.setObjectName(_fromUtf8("Edit"))
+        self.gridLayout_3 = QtGui.QGridLayout(self.Edit)
+        self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
+        self.tabWidget.addTab(self.Edit, _fromUtf8(""))
+        self.Execution = QtGui.QWidget()
+        self.Execution.setObjectName(_fromUtf8("Execution"))
+        self.gridLayout = QtGui.QGridLayout(self.Execution)
+        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
+        self.logpanel = QtGui.QPlainTextEdit(self.Execution)
+        self.logpanel.setObjectName(_fromUtf8("logpanel"))
+        self.gridLayout.addWidget(self.logpanel, 0, 0, 1, 1)
+        self.tabWidget.addTab(self.Execution, _fromUtf8(""))
+        self.gridLayout_2.addWidget(self.tabWidget, 2, 0, 1, 5)
+        self.buttonBox = QtGui.QDialogButtonBox(Dialog)
+        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Preferred)
+        sizePolicy.setHorizontalStretch(0)
+        sizePolicy.setVerticalStretch(0)
+        sizePolicy.setHeightForWidth(self.buttonBox.sizePolicy().hasHeightForWidth())
+        self.buttonBox.setSizePolicy(sizePolicy)
+        self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
+        self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Close)
+        self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
+        self.gridLayout_2.addWidget(self.buttonBox, 3, 4, 1, 1)
+        self.runButton = QtGui.QPushButton(Dialog)
+        self.runButton.setObjectName(_fromUtf8("runButton"))
+        self.gridLayout_2.addWidget(self.runButton, 3, 0, 1, 1)
+        self.label_2 = QtGui.QLabel(Dialog)
+        font = QtGui.QFont()
+        font.setPointSize(16)
+        font.setBold(True)
+        font.setWeight(75)
+        self.label_2.setFont(font)
+        self.label_2.setAlignment(QtCore.Qt.AlignCenter)
+        self.label_2.setObjectName(_fromUtf8("label_2"))
+        self.gridLayout_2.addWidget(self.label_2, 1, 1, 1, 4)
+        self.logoLabel = QtGui.QLabel(Dialog)
+        self.logoLabel.setText(_fromUtf8(""))
+        self.logoLabel.setObjectName(_fromUtf8("logoLabel"))
+        self.gridLayout_2.addWidget(self.logoLabel, 1, 0, 1, 1)
+
+        self.retranslateUi(Dialog)
+        self.tabWidget.setCurrentIndex(0)
+        QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("accepted()")), Dialog.accept)
+        QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("rejected()")), Dialog.reject)
+        QtCore.QMetaObject.connectSlotsByName(Dialog)
+
+    def retranslateUi(self, Dialog):
+        Dialog.setWindowTitle(_translate("Dialog", "Donki Scripting", None))
+        self.abortButton.setText(_translate("Dialog", "Abort", None))
+        self.tabWidget.setTabText(self.tabWidget.indexOf(self.Edit), _translate("Dialog", "Script Editing", None))
+        self.tabWidget.setTabText(self.tabWidget.indexOf(self.Execution), _translate("Dialog", "Execution Log", None))
+        self.runButton.setText(_translate("Dialog", "Run", None))
+        self.label_2.setText(_translate("Dialog", "Donki Scripting", None))
+
diff --git a/src/SyntaxHilighter.py b/src/SyntaxHilighter.py
new file mode 100644
index 0000000000000000000000000000000000000000..0b13367bf971811560ef983d78cd83dafddb16e5
--- /dev/null
+++ b/src/SyntaxHilighter.py
@@ -0,0 +1,176 @@
+# syntax.py
+
+import sys
+
+from PyQt4.QtCore import QRegExp
+from PyQt4.QtGui import QColor, QTextCharFormat, QFont, QSyntaxHighlighter
+
+def format(color, style=''):
+    """Return a QTextCharFormat with the given attributes.
+    """
+    _color = QColor()
+    _color.setNamedColor(color)
+
+    _format = QTextCharFormat()
+    _format.setForeground(_color)
+    if 'bold' in style:
+        _format.setFontWeight(QFont.Bold)
+    if 'italic' in style:
+        _format.setFontItalic(True)
+
+    return _format
+
+
+# Syntax styles that can be shared by all languages
+STYLES = {
+    'keyword': format('blue'),
+    'operator': format('red'),
+    'brace': format('darkGray'),
+    'defclass': format('black', 'bold'),
+    'string': format('magenta'),
+    'string2': format('darkMagenta'),
+    'comment': format('darkGreen', 'italic'),
+    'self': format('black', 'italic'),
+    'numbers': format('brown'),
+}
+
+
+class PythonHighlighter (QSyntaxHighlighter):
+    """Syntax highlighter for the Python language.
+    """
+    # Python keywords
+    keywords = [
+        'and', 'assert', 'break', 'class', 'continue', 'def',
+        'del', 'elif', 'else', 'except', 'exec', 'finally',
+        'for', 'from', 'global', 'if', 'import', 'in',
+        'is', 'lambda', 'not', 'or', 'pass', 'print',
+        'raise', 'return', 'try', 'while', 'yield',
+        'None', 'True', 'False',
+    ]
+
+    # Python operators
+    operators = [
+        '=',
+        # Comparison
+        '==', '!=', '<', '<=', '>', '>=',
+        # Arithmetic
+        '\+', '-', '\*', '/', '//', '\%', '\*\*',
+        # In-place
+        '\+=', '-=', '\*=', '/=', '\%=',
+        # Bitwise
+        '\^', '\|', '\&', '\~', '>>', '<<',
+    ]
+
+    # Python braces
+    braces = [
+        '\{', '\}', '\(', '\)', '\[', '\]',
+    ]
+    def __init__(self, document):
+        QSyntaxHighlighter.__init__(self, document)
+
+        # Multi-line strings (expression, flag, style)
+        # FIXME: The triple-quotes in these two lines will mess up the
+        # syntax highlighting from this point onward
+        self.tri_single = (QRegExp("'''"), 1, STYLES['string2'])
+        self.tri_double = (QRegExp('"""'), 2, STYLES['string2'])
+
+        rules = []
+
+        # Keyword, operator, and brace rules
+        rules += [(r'\b%s\b' % w, 0, STYLES['keyword'])
+            for w in PythonHighlighter.keywords]
+        rules += [(r'%s' % o, 0, STYLES['operator'])
+            for o in PythonHighlighter.operators]
+        rules += [(r'%s' % b, 0, STYLES['brace'])
+            for b in PythonHighlighter.braces]
+
+        # All other rules
+        rules += [
+            # 'self'
+            (r'\bself\b', 0, STYLES['self']),
+
+            # Double-quoted string, possibly containing escape sequences
+            (r'"[^"\\]*(\\.[^"\\]*)*"', 0, STYLES['string']),
+            # Single-quoted string, possibly containing escape sequences
+            (r"'[^'\\]*(\\.[^'\\]*)*'", 0, STYLES['string']),
+
+            # 'def' followed by an identifier
+            (r'\bdef\b\s*(\w+)', 1, STYLES['defclass']),
+            # 'class' followed by an identifier
+            (r'\bclass\b\s*(\w+)', 1, STYLES['defclass']),
+
+            # From '#' until a newline
+            (r'#[^\n]*', 0, STYLES['comment']),
+
+            # Numeric literals
+            (r'\b[+-]?[0-9]+[lL]?\b', 0, STYLES['numbers']),
+            (r'\b[+-]?0[xX][0-9A-Fa-f]+[lL]?\b', 0, STYLES['numbers']),
+            (r'\b[+-]?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?\b', 0, STYLES['numbers']),
+        ]
+
+        # Build a QRegExp for each pattern
+        self.rules = [(QRegExp(pat), index, fmt)
+            for (pat, index, fmt) in rules]
+
+
+    def highlightBlock(self, text):
+        """Apply syntax highlighting to the given block of text.
+        """
+        # Do other syntax formatting
+        for expression, nth, format in self.rules:
+            index = expression.indexIn(text, 0)
+
+            while index >= 0:
+                # We actually want the index of the nth match
+                index = expression.pos(nth)
+                length = expression.cap(nth).length()
+                self.setFormat(index, length, format)
+                index = expression.indexIn(text, index + length)
+
+        self.setCurrentBlockState(0)
+
+        # Do multi-line strings
+        in_multiline = self.match_multiline(text, *self.tri_single)
+        if not in_multiline:
+            in_multiline = self.match_multiline(text, *self.tri_double)
+
+
+    def match_multiline(self, text, delimiter, in_state, style):
+        """Do highlighting of multi-line strings. ``delimiter`` should be a
+        ``QRegExp`` for triple-single-quotes or triple-double-quotes, and
+        ``in_state`` should be a unique integer to represent the corresponding
+        state changes when inside those strings. Returns True if we're still
+        inside a multi-line string when this function is finished.
+        """
+        # If inside triple-single quotes, start at 0
+        if self.previousBlockState() == in_state:
+            start = 0
+            add = 0
+        # Otherwise, look for the delimiter on this line
+        else:
+            start = delimiter.indexIn(text)
+            # Move past this match
+            add = delimiter.matchedLength()
+
+        # As long as there's a delimiter match on this line...
+        while start >= 0:
+            # Look for the ending delimiter
+            end = delimiter.indexIn(text, start + add)
+            # Ending delimiter on this line?
+            if end >= add:
+                length = end - start + add + delimiter.matchedLength()
+                self.setCurrentBlockState(0)
+            # No; multi-line string
+            else:
+                self.setCurrentBlockState(in_state)
+                length = text.length() - start + add
+            # Apply formatting
+            self.setFormat(start, length, style)
+            # Look for the next match
+            start = delimiter.indexIn(text, start + length)
+
+        # Return True if still inside a multi-line string, False otherwise
+        if self.currentBlockState() == in_state:
+            return True
+        else:
+            return False
\ No newline at end of file
diff --git a/src/donkipylib/ControlSystemLib.py b/src/donkipylib/ControlSystemLib.py
new file mode 100644
index 0000000000000000000000000000000000000000..86d3b42305df8fb4ef1716b345018e1ce9c979e2
--- /dev/null
+++ b/src/donkipylib/ControlSystemLib.py
@@ -0,0 +1,75 @@
+# -*- coding: utf-8 -*-
+"""
+Created on Thu Mar  7 10:51:03 2013
+
+@author: rob
+"""
+import PyTango
+import types
+
+def addMethod(class_obj, func_name, cmd_in):
+    def proxy_command(class_obj,argin=None,tango_cmd=cmd_in):
+        tango_dev = tango_cmd.split("->",1)[0]
+        cmd_name = tango_cmd.split("->",1)[1]
+        dev=PyTango.DeviceProxy(tango_dev)
+        if argin is None:
+            return dev.command_inout(cmd_name)
+        else:
+            return dev.command_inout(cmd_name,argin)
+    return setattr(class_obj, func_name, types.MethodType(proxy_command, class_obj))
+    
+
+class ControlSystem(dict):
+    """Example of overloading __getatr__ and __setattr__
+    This example creates a dictionary where members can be accessed as attributes
+    """
+    def __init__(self,ATTRIBUTES_IN={},ATTRIBUTES_READONLY_IN={},COMMANDS_IN={}):
+        self.ATTRIBUTES = ATTRIBUTES_IN
+        self.ATTRIBUTES_READONLY = ATTRIBUTES_READONLY_IN
+        self.COMMANDS = COMMANDS_IN
+        indict = {}
+        dict.__init__(self, indict)
+        self.__initialised = True
+        for cmd in COMMANDS_IN:
+            tokens = COMMANDS_IN[cmd].split("|")
+            tango_name = tokens[0]
+            addMethod(self,cmd,tango_name)
+        # after initialisation, setting attributes is the same as setting an item
+        
+
+    def __getattr__(self, item):
+        """Maps values to attributes.
+        Only called if there *isn't* an attribute with this name
+        """
+        if item in self.ATTRIBUTES:
+            tokens = self.ATTRIBUTES[item].split("|")
+            tango_name = tokens[0]
+        elif item in self.ATTRIBUTES_READONLY:
+            tokens = self.ATTRIBUTES_READONLY[item].split("|")
+            tango_name = tokens[0]
+        else:
+             return
+        try:
+            attr_proxy = PyTango.AttributeProxy(tango_name)
+            val = attr_proxy.read().value
+        except:
+            return None
+        return val
+
+    def __setattr__(self, item, value):
+        """Maps attributes to values.
+        Only if we are initialised
+        """
+        if not self.__dict__.has_key('_ControlSystem__initialised'):  # this test allows attributes to be set in the __init__ method
+            return dict.__setattr__(self, item, value)
+        elif self.__dict__.has_key(item):       # any normal attributes are handled normally
+            print item,value
+            dict.__setattr__(self, item, value)
+        elif item in self.COMMANDS:
+            dict.__setattr__(self, item, value)
+        else:
+            tokens = self.ATTRIBUTES[item].split("|")
+            tango_name = tokens[0]
+            attr_proxy = PyTango.AttributeProxy(tango_name)
+            attr_proxy.write(value)
+
diff --git a/src/donkipylib/ControlSystemLib.pyc b/src/donkipylib/ControlSystemLib.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..53c6c4445519c446fa2ff758e3d34e57aec4f5a0
Binary files /dev/null and b/src/donkipylib/ControlSystemLib.pyc differ
diff --git a/src/donkipylib/demo_macro.py b/src/donkipylib/demo_macro.py
new file mode 100644
index 0000000000000000000000000000000000000000..db8253e5c2d93b83a755259a99e2e7cceabd9943
--- /dev/null
+++ b/src/donkipylib/demo_macro.py
@@ -0,0 +1,17 @@
+import sys
+import time
+from datetime import datetime
+
+LIBRARY_TYPE = "MACRO"
+
+MACROS = {
+    "print_date_and_time": "print_date_and_time|Dummy macro that prints date and time|demo_macro.print_date_and_time()",
+}
+
+def print_date_and_time():
+    now = datetime.now()
+    # dd/mm/YY H:M:S
+    dt_string = now.strftime("%d/%m/%Y %H:%M:%S")
+    print("date and time =", dt_string)	
+
+
diff --git a/src/donkipylib/demo_macro.pyc b/src/donkipylib/demo_macro.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..38d93a017fd3fef25ba5ab482ae5639c7eb69080
Binary files /dev/null and b/src/donkipylib/demo_macro.pyc differ
diff --git a/src/donkipylib/donkipylib.py b/src/donkipylib/donkipylib.py
new file mode 100644
index 0000000000000000000000000000000000000000..6e1ebb0d650b826753ce4852e648cc56ce675bc1
--- /dev/null
+++ b/src/donkipylib/donkipylib.py
@@ -0,0 +1,35 @@
+# -*- coding: utf-8 -*-
+"""
+Created on Fri Mar 15 11:05:41 2013
+
+@author: rob
+"""
+import os, sys, imp
+
+if (os.environ.get('DONKIPY_LIBPATH')):
+    dirname = os.environ.get('DONKIPY_LIBPATH')
+    sys.path.append(dirname)
+    #
+    modules_to_import = []
+    macros_to_import = []
+    #
+    mod_files = [x for x in os.listdir(dirname) if x.endswith('.py')]
+    for filename in mod_files:
+        filepath = dirname + '/' + filename
+        mod_name,file_ext = os.path.splitext(os.path.split(filepath)[-1])
+        if file_ext.lower() == '.py' and (mod_name != __name__) :
+            py_mod = imp.load_source(mod_name, filepath)
+            if hasattr(py_mod, 'LIBRARY_TYPE'):
+                if (py_mod.LIBRARY_TYPE == 'TRANSLATOR'):
+                    modules_to_import.append(mod_name)
+                if (py_mod.LIBRARY_TYPE == 'MACRO'):
+                    macros_to_import.append(mod_name)
+    #
+    for mod_name in modules_to_import:
+        cmd = "from " + mod_name+ " import cs as "+ mod_name
+        exec cmd
+    #
+    for mod_name in macros_to_import:
+        cmd = "import "+ mod_name + " as " + mod_name
+        exec( cmd )
+
diff --git a/src/donkipylib/donkipylib.pyc b/src/donkipylib/donkipylib.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..c8bb86d429867d2bcf9c9a579fe0d825778af088
Binary files /dev/null and b/src/donkipylib/donkipylib.pyc differ
diff --git a/src/donkipylib/test_dev.py b/src/donkipylib/test_dev.py
new file mode 100644
index 0000000000000000000000000000000000000000..79d0b17d57b2968b9f03282c274fdd2ffe94356d
--- /dev/null
+++ b/src/donkipylib/test_dev.py
@@ -0,0 +1,39 @@
+# -*- coding: utf-8 -*-
+from ControlSystemLib import ControlSystem
+
+LIBRARY_TYPE = "TRANSLATOR"
+
+ATTRIBUTES = {
+    "double_scalar": "ken:20000/test/device/1/double_scalar|R/W double scalar attribute|print test_dev.double_scalar<br>test_dev.double_scalar=5.3",
+}
+
+ATTRIBUTES_READONLY = {
+    "wave": "ken:20000/test/device/1/wave|Read wave spectrum attribute|print test_dev.wave",
+    "short_image": "ken:20000/test/device/1/short_image_ro|Read short_image attribute|print test_dev.short_image"
+}
+
+COMMANDS = {
+    "Status": "ken:20000/test/device/1->Status|Reads Tango Status|print test_dev.Status()"
+}
+
+################################################################################
+####                DO NOT CHANGE LINES BELOW PLEASE                        ####
+################################################################################
+
+cs = ControlSystem(ATTRIBUTES,ATTRIBUTES_READONLY,COMMANDS)
+
+for item in ATTRIBUTES:
+    cmd = item + " = " + "cs." + item
+    exec cmd
+
+for item in ATTRIBUTES_READONLY:
+    cmd = item + " = " + "cs." + item
+    exec cmd
+
+for item in COMMANDS:
+    cmd = item + " = " + "cs." + item
+    exec cmd
+
+if __name__ == "__main__":
+    print Status()
+
diff --git a/src/donkipylib/test_dev.pyc b/src/donkipylib/test_dev.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..7bd140f731b55359d72b80cb8cd6b8d33aaa2010
Binary files /dev/null and b/src/donkipylib/test_dev.pyc differ
diff --git a/src/pyEditor.py b/src/pyEditor.py
new file mode 100644
index 0000000000000000000000000000000000000000..51a6d8f6aa9812809c6ac7581233478f333f8cc6
--- /dev/null
+++ b/src/pyEditor.py
@@ -0,0 +1,534 @@
+# -*- coding: utf-8 -*-
+#
+# This file inherits code from original editor.py from NINJA-IDE (http://ninja-ide.org).
+# and https://nachtimwald.com/2009/08/15/qtextedit-with-line-numbers/
+
+from __future__ import absolute_import
+from __future__ import unicode_literals
+
+import re
+import sys
+import traceback
+from PyQt4.QtGui import QPlainTextEdit,QFrame,QPainter
+from PyQt4.QtGui import QTextCursor,QWidget,QHBoxLayout
+from PyQt4.QtCore import Qt,QRect
+from PyQt4.QtCore import SIGNAL
+from PyQt4 import QtGui,QtCore
+
+endCharsForIndent = [':', '{', '(', '[']
+
+patIndent = re.compile('^\s+')
+
+BRACE_DICT = {')': '(', ']': '[', '}': '{', '(': ')', '[': ']', '{': '}'}
+
+BRACES = {'{': '}',
+          '[': ']',
+          '(': ')'}
+QUOTES = {'"': '"',
+          "'": "'"}
+
+USE_TABS = False
+ALLOW_WORD_WRAP = False
+INDENT = 4
+# by default Unix (\n) is used
+USE_PLATFORM_END_OF_LINE = False
+MARGIN_LINE = 80
+SHOW_MARGIN_LINE = True
+REMOVE_TRAILING_SPACES = True
+SHOW_TABS_AND_SPACES = True
+
+def get_indentation(line, indent=INDENT, useTabs=USE_TABS):
+    global patIndent
+    global endCharsForIndent
+    indentation = ''
+    if len(line) > 0 and line[-1] in endCharsForIndent:
+        if useTabs:
+            indentation = '\t'
+        else:
+            indentation = ' ' * indent
+    elif len(line) > 0 and line[-1] == ',':
+        count = [x for x in endCharsForIndent[1:]
+            if (line.count(x) - line.count(closeBraces[x])) % 2 != 0]
+        if count:
+            if useTabs:
+                indentation = '\t'
+            else:
+                indentation = ' ' * indent
+    space = patIndent.match(line)
+    if space is not None:
+        return space.group() + indentation
+    return indentation
+
+
+class PyEditor(QPlainTextEdit):
+
+    def __init__(self):
+        QPlainTextEdit.__init__(self)
+        self.indent = INDENT
+        self.useTabs = USE_TABS
+        # GOTO LINE shortcut
+        QtGui.QShortcut(QtGui.QKeySequence("Ctrl+L"), self, self._scroll_To_Line, context=Qt.WidgetShortcut)
+        #Dict functions for KeyPress
+        self.preKeyPress = {
+            Qt.Key_Tab: self.__insert_indentation,
+            Qt.Key_Backspace: self.__backspace,
+            Qt.Key_Home: self.__home_pressed,
+            Qt.Key_Enter: self.__ignore_extended_line,
+            Qt.Key_Return: self.__ignore_extended_line,
+            Qt.Key_BracketRight: self.__brace_completion,
+            Qt.Key_BraceRight: self.__brace_completion,
+            Qt.Key_ParenRight: self.__brace_completion,
+            Qt.Key_Apostrophe: self.__quot_completion,
+            Qt.Key_QuoteDbl: self.__quot_completion}
+
+        self.postKeyPress = {
+            Qt.Key_Enter: self.__auto_indent,
+            Qt.Key_Return: self.__auto_indent,
+            Qt.Key_BracketLeft: self.__complete_braces,
+            Qt.Key_BraceLeft: self.__complete_braces,
+            Qt.Key_ParenLeft: self.__complete_braces,
+            Qt.Key_Apostrophe: self.__complete_quotes,
+            Qt.Key_QuoteDbl: self.__complete_quotes}
+
+
+    def _scroll_To_Line(self):
+        line,ok = QtGui.QInputDialog.getInt(self,"Go to line","Enter line number")
+        if not ok or (line <= 0):
+            return
+        self.moveCursor(QtGui.QTextCursor.Start)
+        cursor = QtGui.QTextCursor(self.document().findBlockByLineNumber(line-1))
+        cursor.select(QtGui.QTextCursor.LineUnderCursor)
+        self.setTextCursor(cursor)
+
+
+    def _add_line_increment(self, lines, blockModified, diference):
+        def _inner_increment(line):
+            if line < blockModified:
+                return line
+            return line + diference
+        return list(map(_inner_increment, lines))
+
+    def _add_line_increment_for_dict(self, data, blockModified, diference):
+        def _inner_increment(line):
+            if line < blockModified:
+                return line
+            newLine = line + diference
+            summary = data.pop(line)
+            data[newLine] = summary
+            return newLine
+        list(map(_inner_increment, list(data.keys())))
+        return data
+
+
+    def __insert_indentation(self, event):
+        if self.textCursor().hasSelection():
+            self.indent_more()
+        elif self.useTabs:
+            return False
+        else:
+            self.textCursor().insertText(' ' * self.indent)
+        return True
+
+    def __backspace(self, event):
+        if self.textCursor().hasSelection() or self.useTabs:
+            return False
+        cursor = self.textCursor()
+        cursor.movePosition(QTextCursor.StartOfLine, QTextCursor.KeepAnchor)
+        text = str(cursor.selection().toPlainText())
+        if (len(text) % self.indent == 0) and text.isspace():
+            cursor.movePosition(QTextCursor.StartOfLine)
+            cursor.movePosition(QTextCursor.Right, QTextCursor.KeepAnchor,
+                self.indent)
+            cursor.removeSelectedText()
+            return True
+
+    def __home_pressed(self, event):
+        if event.modifiers() == Qt.ControlModifier:
+            return False
+        elif event.modifiers() == Qt.ShiftModifier:
+            move = QTextCursor.KeepAnchor
+        else:
+            move = QTextCursor.MoveAnchor
+        if self.textCursor().atBlockStart():
+            self.moveCursor(QTextCursor.WordRight, move)
+            return True
+
+        cursor = self.textCursor()
+        position = cursor.position()
+        self.moveCursor(QTextCursor.StartOfLine, move)
+        self.moveCursor(QTextCursor.WordRight, move)
+        if position != self.textCursor().position() and \
+           str(cursor.block().text()).startswith(' '):
+            return True
+
+    def __ignore_extended_line(self, event):
+        if event.modifiers() == Qt.ShiftModifier:
+            return True
+
+    def __set_selection_from_pair(self, begin, end):
+        """Set the current editor cursor with a selection from a given pair of
+        positions"""
+        cursor = self.textCursor()
+        cursor.setPosition(begin)
+        cursor.setPosition(end, QTextCursor.KeepAnchor)
+        self.setTextCursor(cursor)
+
+    def __reverse_select_text_portion_from_offset(self, begin, end):
+        """Backwards select text, go from current+begin to current - end
+        possition, returns text"""
+        cursor = self.textCursor()
+        cursor_position = cursor.position()
+        cursor.setPosition(cursor_position + begin)
+        #QT silently fails on invalid position, ergo breaks when EOF < begin
+        while (cursor.position() == cursor_position) and begin > 0:
+            begin -= 1
+            cursor.setPosition(cursor_position + begin)
+        cursor.setPosition(cursor_position - end, QTextCursor.KeepAnchor)
+        selected_text = cursor.selectedText()
+        return selected_text
+
+    def __quot_completion(self, event):
+        """Indicate if this is some sort of quote that needs to be completed
+        This is a very simple boolean table, given that quotes are a
+        simmetrical symbol, is a little more cumbersome guessing the completion
+        table.
+        """
+        text = event.text()
+        pos = self.textCursor().position()
+        next_char = str(self.get_selection(pos, pos + 1)).strip()
+        if self.cursor_inside_string() and text == next_char:
+            self.moveCursor(QTextCursor.Right)
+            return True
+        PENTA_Q = 5 * text
+        TETRA_Q = 4 * text
+        TRIPLE_Q = 3 * text
+        DOUBLE_Q = 2 * text
+        supress_echo = False
+        pre_context = self.__reverse_select_text_portion_from_offset(0, 3)
+        pos_context = self.__reverse_select_text_portion_from_offset(3, 0)
+        if pre_context == pos_context == TRIPLE_Q:
+            supress_echo = True
+        elif pos_context[:2] == DOUBLE_Q:
+            pre_context = self.__reverse_select_text_portion_from_offset(0, 4)
+            if pre_context == TETRA_Q:
+                supress_echo = True
+        elif pos_context[:1] == text:
+            pre_context = self.__reverse_select_text_portion_from_offset(0, 5)
+            if pre_context == PENTA_Q:
+                supress_echo = True
+            elif pre_context[-1] == text:
+                supress_echo = True
+        if supress_echo:
+            self.moveCursor(QTextCursor.Right)
+        return supress_echo
+
+    def __brace_completion(self, event):
+        """Indicate if this symbol is part of a given pair and needs to be
+        completed.
+        """
+        text = event.text()
+        if text in list(BRACES.values()):
+            portion = self.__reverse_select_text_portion_from_offset(1, 1)
+            brace_open = portion[0]
+            brace_close = (len(portion) > 1) and portion[1] or None
+            balance = BRACE_DICT.get(brace_open, None) == text == brace_close
+            if balance:
+                self.moveCursor(QTextCursor.Right)
+                return True
+
+    def __auto_indent(self, event):
+        text = self.textCursor().block().previous().text()
+        spaces = get_indentation(text, self.indent, self.useTabs)
+        self.textCursor().insertText(spaces)
+        if text != '' and text == ' ' * len(text):
+            self.moveCursor(QTextCursor.Up)
+            self.moveCursor(QTextCursor.EndOfLine, QTextCursor.KeepAnchor)
+            self.textCursor().removeSelectedText()
+            self.moveCursor(QTextCursor.Down)
+        cursor = self.textCursor()
+        cursor.setPosition(cursor.position())
+        self.setTextCursor(cursor)
+
+    def insert_new_line(self):
+        cursor = self.textCursor()
+        at_block_end = cursor.atBlockEnd()
+        cursor.movePosition(QTextCursor.EndOfLine)
+        cursor.insertBlock()
+        if not at_block_end:
+            self.moveCursor(QTextCursor.Down)
+        self.__auto_indent(None)
+
+    def __complete_braces(self, event):
+        """Complete () [] and {} using a mild inteligence to see if corresponds
+        and also do some more magic such as complete in classes and functions.
+        """
+        brace = event.text()
+        if brace not in BRACES:
+            # Thou shalt not waste cpu cycles if this brace compleion dissabled
+            return
+        text = self.textCursor().block().text()
+        complementary_brace = BRACE_DICT.get(brace)
+        token_buffer = []
+        _, tokens = self.__tokenize_text(text)
+        is_unbalance = 0
+        for tkn_type, tkn_rep, tkn_begin, tkn_end in tokens:
+            if tkn_rep == brace:
+                is_unbalance += 1
+            elif tkn_rep == complementary_brace:
+                is_unbalance -= 1
+            if tkn_rep.strip() != "":
+                token_buffer.append((tkn_rep, tkn_end[1]))
+            is_unbalance = (is_unbalance >= 0) and is_unbalance or 0
+
+        if (self.lang == "python") and (len(token_buffer) == 3) and \
+                (token_buffer[2][0] == brace) and (token_buffer[0][0] in
+                                                        ("def", "class")):
+            #are we in presence of a function?
+            self.textCursor().insertText("):")
+            self.__fancyMoveCursor(QTextCursor.Left, 2)
+            self.textCursor().insertText(self.selected_text)
+        elif token_buffer and (not is_unbalance) and \
+           self.selected_text:
+            self.textCursor().insertText(self.selected_text)
+        elif is_unbalance:
+            pos = self.textCursor().position()
+            next_char = self.get_selection(pos, pos + 1).strip()
+            if self.selected_text or next_char == "":
+                self.textCursor().insertText(complementary_brace)
+                self.moveCursor(QTextCursor.Left)
+                self.textCursor().insertText(self.selected_text)
+
+    def __complete_quotes(self, event):
+        """
+        Completion for single and double quotes, which since are simmetrical
+        symbols used for different things can not be balanced as easily as
+        braces or equivalent.
+        """
+        cursor = self.textCursor()
+        cursor.movePosition(QTextCursor.StartOfLine,
+            QTextCursor.KeepAnchor)
+        symbol = event.text()
+        if symbol in QUOTES:
+            pre_context = self.__reverse_select_text_portion_from_offset(0, 3)
+            if pre_context == 3 * symbol:
+                self.textCursor().insertText(3 * symbol)
+                self.__fancyMoveCursor(QTextCursor.Left, 3)
+            else:
+                self.textCursor().insertText(symbol)
+                self.moveCursor(QTextCursor.Left)
+            self.textCursor().insertText(self.selected_text)
+
+    def keyPressEvent(self, event):
+        #On Return == True stop the execution of this method
+        if self.preKeyPress.get(event.key(), lambda x: False)(event):
+            #emit a signal then plugings can do something
+            self.emit(SIGNAL("keyPressEvent(QEvent)"), event)
+            return
+        self.selected_text = self.textCursor().selectedText()
+
+        QPlainTextEdit.keyPressEvent(self, event)
+
+        self.postKeyPress.get(event.key(), lambda x: False)(event)
+
+        #emit a signal then plugings can do something
+        self.emit(SIGNAL("keyPressEvent(QEvent)"), event)
+
+
+class PyEditWidget(QFrame):
+
+    class NumberBar(QWidget):
+
+        def __init__(self, *args):
+            QWidget.__init__(self, *args)
+            self.edit = None
+            # This is used to update the width of the control.
+            # It is the highest line that is currently visibile.
+            self.highest_line = 0
+            self.setSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)
+            
+
+        def setTextEdit(self, edit):
+            self.edit = edit
+
+        def update(self, *args):
+            '''
+            Updates the number bar to display the current set of numbers.
+            Also, adjusts the width of the number bar if necessary.
+            '''
+            # The + 4 is used to compensate for the current line being bold.
+            width = self.fontMetrics().width(str(self.highest_line)) + 10
+            if self.width() != width:
+                self.setFixedWidth(width)
+            QWidget.update(self, *args)
+
+        def paintEvent(self, event):
+            font_metrics = self.fontMetrics()
+            current_line = self.edit.document().findBlock(self.edit.textCursor().position()).blockNumber() + 1
+
+            painter = QPainter(self)
+
+            line_count = 0
+            # Iterate over all text blocks in the document.
+            block = self.edit.document().begin()
+
+            while block.isValid():
+                line_count += 1
+               
+                block_top = self.edit.blockBoundingGeometry(block).translated(self.edit.contentOffset()).top()
+
+                # We want the line number for the selected line to be bold.
+                bold = False
+                if line_count == current_line:
+                    bold = True
+                    font = painter.font()
+                    font.setBold(True)
+                    painter.setFont(font)
+
+                # Draw the line number right justified at the y position of the
+                # line. 3 is a magic padding number. drawText(x, y, text).
+                paint_rect = QRect(0, block_top, self.width(), font_metrics.height())
+                painter.drawText(paint_rect, Qt.AlignLeft, unicode(line_count))
+
+                # Remove the bold style if it was set previously.
+                if bold:
+                    font = painter.font()
+                    font.setBold(False)
+                    painter.setFont(font)
+
+                block = block.next()
+
+            self.highest_line = line_count
+            painter.end()
+
+            QWidget.paintEvent(self, event)
+
+
+    def _loadScript(self):
+        try:
+            fileName = QtGui.QFileDialog.getOpenFileName(None,'Load script file', self.script_path, filter='*.py')
+            if fileName:
+                f = open(fileName)
+                self.edit.setPlainText(f.read())
+                f.close()
+                self.fileName = fileName
+                self.saveButton.setText("Save")
+                if self.main_gui is not None:
+                    self.main_gui.setWindowTitle("Donki Scripting - %s" % self.fileName)
+                self.last_saved_text = self.edit.toPlainText()
+                self.text_changed = False
+        except:
+            self._errorMessage(traceback.format_exc())
+
+    def _saveScript(self, forced = False):
+        try:
+            if self.edit.toPlainText() == '':
+                return
+            if self.fileName is not None:
+                suggested = self.fileName
+            else:
+                suggested = self.script_path
+            if not forced:
+                fileName = QtGui.QFileDialog.getSaveFileName(None,'Save script', suggested, filter='*.py')
+            else:
+                fileName = self.fileName
+            self.fileName = fileName
+            if fileName:
+                f = open(fileName,"w")
+                f.write(self.edit.toPlainText())
+                f.close()
+            self.saveButton.setText("Save *")
+            if self.main_gui is not None:
+                self.main_gui.setWindowTitle("Donki Scripting - %s" % self.fileName)
+            self.last_saved_text = self.edit.toPlainText()
+            self.text_changed = False
+        except:
+            self._errorMessage(traceback.format_exc())
+
+    def _textChanged(self):
+        try:
+            if self.last_saved_text != self.edit.toPlainText():
+                self.text_changed = True
+                self.saveButton.setText("Save *")
+                if self.main_gui is not None:
+                    self.main_gui.setWindowTitle("Donki Scripting - %s *" % self.fileName)
+            else:
+                self.text_changed = False
+                self.saveButton.setText("Save")
+        except:
+            traceback.print_exc()
+            
+
+    def _errorMessage(self, err_message):
+            msg = QtGui.QMessageBox()
+            msg.setIcon(QtGui.QMessageBox.Warning)
+            msg.setText(err_message)
+            msg.setWindowTitle("Error")
+            msg.setStandardButtons(QtGui.QMessageBox.Ok)
+            retval = msg.exec_()
+
+
+    def __init__(self, main_gui, default_path = "."):
+        QFrame.__init__(self)
+
+        self.fileName = None
+        self.text_changed = False
+        
+        self.main_gui = main_gui
+        self.script_path = default_path
+
+        self.setFrameStyle(QFrame.StyledPanel | QFrame.Sunken)
+
+        self.edit = PyEditor()
+        self.edit.setFrameStyle(QFrame.NoFrame)
+        #
+        self.number_bar = self.NumberBar()
+        self.number_bar.setTextEdit(self.edit)
+        #
+        self.saveButton = QtGui.QPushButton(self)
+        self.saveButton.setAutoDefault(False)
+        self.saveButton.setObjectName("saveButton")
+        self.saveButton.setText("Save")
+        self.saveButton.clicked.connect(self._saveScript)
+        #
+        self.loadButton = QtGui.QPushButton(self)
+        self.loadButton.setAutoDefault(False)
+        self.loadButton.setObjectName("loadButton")
+        self.loadButton.setText("Load")
+        self.loadButton.clicked.connect(self._loadScript)
+
+        #
+        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
+        self.bbox = QtGui.QGridLayout(self)
+        self.bbox.setSpacing(0)
+        self.bbox.setMargin(0)
+        self.bbox.addWidget(self.loadButton,0,0,1,1)
+        self.bbox.addWidget(self.saveButton,0,1,1,1)
+        self.bbox.addItem(spacerItem,0,2,1,1)
+        #
+        self.hbox = QHBoxLayout()
+        self.hbox.setSpacing(0)
+        self.hbox.setMargin(0)
+        self.hbox.addWidget(self.number_bar)
+        self.hbox.addWidget(self.edit)
+        #
+        self.bbox.addLayout(self.hbox,1,0,1,3)
+        #
+        self.edit.installEventFilter(self)
+        self.edit.viewport().installEventFilter(self)
+        #
+        # Add some shortcuts
+        QtGui.QShortcut(QtGui.QKeySequence("Ctrl+S"), self.edit, self._saveScript, context=QtCore.Qt.WidgetShortcut)
+        self.edit.textChanged.connect(self._textChanged)
+        self.last_saved_text = self.edit.toPlainText()
+
+
+    def eventFilter(self, object, event):
+        # Update the line numbers for all events on the text edit and the viewport.
+        # This is easier than connecting all necessary singals.
+        if object in (self.edit, self.edit.viewport()):
+            self.number_bar.update()
+            return False
+        return QFrame.eventFilter(object, event)
+
+    def getTextEdit(self):
+        return self.edit
diff --git a/src/scriptingHelp.py b/src/scriptingHelp.py
new file mode 100644
index 0000000000000000000000000000000000000000..832e0cfe06aa4bb5fe6de6f2d8e0a0c3cb2683d6
--- /dev/null
+++ b/src/scriptingHelp.py
@@ -0,0 +1,168 @@
+# -*- coding: utf-8 -*-
+
+from __future__ import with_statement
+
+try:
+    # PyQt4 4.3.3 on Windows (static DLLs) with py2exe installed:
+    # -> pythoncom must be imported first, otherwise py2exe's boot_com_servers
+    #    will raise an exception ("ImportError: DLL load failed [...]") when
+    #    calling any of the QFileDialog static methods (getOpenFileName, ...)
+    import pythoncom #@UnusedImport
+except ImportError:
+    pass
+
+from PyQt4.QtGui import (QDialog, QVBoxLayout, QLabel, QHBoxLayout,
+                                QFileSystemModel, QMessageBox, QInputDialog,
+                                QLineEdit, QMenu, QWidget, QToolButton,
+                                QFileDialog, QToolBar, QTreeWidget,QGridLayout,
+                                QTreeWidgetItem, QDrag, QTextBrowser,QPixmap,
+                                QIcon, QFont, QColor)
+from PyQt4.QtCore import (Qt, SIGNAL, QMimeData, QSize, QDir,QUrl)
+
+import imp
+import os, sys, re
+import os.path as osp
+import time
+
+# Import resources (icon)
+from scriptingHelp_rc import *
+
+# For debugging purpose:
+STDOUT = sys.stdout
+
+class HelpListItem(QTreeWidgetItem):
+    def __init__(self, parent=None):
+        QTreeWidgetItem.__init__(self, parent)
+        self.details = ""
+    def setDetails(self,details_in):
+        self.details = details_in
+    def getDetails(self):
+        return self.details
+    
+
+class ScriptingHelpWidget(QWidget):
+    def __init__(self, parent=None, lib_path=None):
+        QWidget.__init__(self, parent)
+        #
+        self.bold_font = QFont()
+        self.bold_font.setBold(True)
+        #
+        self.treeView = QTreeWidget(self)
+        self.library_menu = QTreeWidgetItem(self.treeView)
+        self.library_menu.setText(0,"LIBRARIES")
+        self.library_menu.setFont(0,self.bold_font)
+        self.library_menu.setTextColor(0, QColor("Blue"));
+        self.macro_menu = QTreeWidgetItem(self.treeView)
+        self.macro_menu.setText(0,"MACROS")
+        self.macro_menu.setFont(0,self.bold_font)
+        self.macro_menu.setTextColor(0, QColor("Green"));
+        #
+        self.textBrowser = QTextBrowser(self)
+        self.textBrowser.setMaximumHeight(200)
+        #
+        self.icon = QLabel(self)
+        self.icon.setText(os.getcwd())
+        self.icon.setPixmap(QPixmap(":images/DonkiPy.png"))
+        self.icon.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignTop)
+        self.icon.setObjectName("icon")
+        #
+        self.gridLayout = QGridLayout()
+        self.gridLayout.setObjectName("gridLayout")
+        self.gridLayout.addWidget(self.treeView, 0, 1, 1, 1)
+        self.gridLayout.addWidget(self.textBrowser, 1, 1, 1, 1)
+        self.gridLayout.addWidget(self.icon, 0, 0, 1, 1)
+        self.setLayout(self.gridLayout)
+
+        '''
+        vlayout = QVBoxLayout()
+        vlayout.addWidget(self.icon)
+        vlayout.addWidget(self.treeView)
+        vlayout.addWidget(self.textBrowser)
+        self.setLayout(vlayout)
+        '''
+        #
+        self.treeView.setHeaderLabel("DonkiPy Library")
+        #
+        if (lib_path):
+            try:
+                idx = sys.path.index(lib_path)
+            except:
+                sys.path.append(lib_path)
+            self.load_all_modules_from_dir(lib_path)
+        #
+        self.connect(self.treeView,SIGNAL("itemClicked(QTreeWidgetItem*, int)"),self.itemClicked)
+        return 
+    def load_all_modules_from_dir(self,dirname):
+        class_inst = None
+	try:
+        	mod_files = [x for x in os.listdir(dirname) if x.endswith('.py')]
+	except:
+		return
+        for filename in mod_files:
+            filepath = dirname + '/' + filename
+            mod_name,file_ext = os.path.splitext(os.path.split(filepath)[-1])
+            if file_ext.lower() == '.py':
+                py_mod = imp.load_source(mod_name, filepath)
+            '''
+            elif file_ext.lower() == '.pyc':
+                py_mod = imp.load_compiled(mod_name, filepath)
+            '''
+            if hasattr(py_mod, 'LIBRARY_TYPE'):
+                if (py_mod.LIBRARY_TYPE == 'TRANSLATOR'):
+                    module_help = QTreeWidgetItem(self.library_menu)
+                    module_help.setText(0,mod_name)
+                    module_help.setFont(0,self.bold_font)
+                    module_help.setTextColor(0, QColor("darkBlue"));
+                elif (py_mod.LIBRARY_TYPE == 'MACRO'):
+                    module_help = QTreeWidgetItem(self.macro_menu)
+                    module_help.setText(0,mod_name)
+                    module_help.setFont(0,self.bold_font)
+                    module_help.setTextColor(0, QColor("darkGreen"));
+                else:
+                    module_help = QTreeWidgetItem(self.treeView)
+                    module_help.setText(0,mod_name)
+                    module_help.setFont(0,self.bold_font)
+                    module_help.setTextColor(0, QColor("darkBlue"));
+            if hasattr(py_mod, 'ATTRIBUTES_READONLY'):
+                self.fill_help_widget(module_help,py_mod.ATTRIBUTES_READONLY,QIcon(":images/attribute_readonly.png"))
+            if hasattr(py_mod, 'ATTRIBUTES'):
+                self.fill_help_widget(module_help,py_mod.ATTRIBUTES,QIcon(":images/attribute.png"))
+            if hasattr(py_mod, 'COMMANDS'):
+                self.fill_help_widget(module_help,py_mod.COMMANDS,QIcon(":images/command.png"))
+            if hasattr(py_mod, 'MACROS'):
+                self.fill_help_widget(module_help,py_mod.MACROS,QIcon(":images/macro.png"))
+        return 
+    def fill_help_widget(self,treeHeader,dictionary,item_icon):
+        for name in dictionary:
+             newHelpItem= HelpListItem(treeHeader)
+             newHelpItem.setText(0,name)
+             newHelpItem.setIcon(0,item_icon);
+             tokens = dictionary[name].split("|")
+             details = "<b>" + name + "</b><br>"
+             if len(tokens) > 1:
+                 details += tokens[1]
+             else:
+                 details += "Description not available"
+             details += "<br><br><b>Usage example:</b><br>"
+             if len(tokens) > 2:
+                 details += tokens[2]
+             else:
+                 details += "Example not available"
+             newHelpItem.setDetails(details)
+             self.treeView.addTopLevelItem(newHelpItem)
+        return 
+    def itemClicked(self,helpItem,col):        
+        try:
+            self.textBrowser.setText(helpItem.getDetails())
+        except:
+            self.textBrowser.setText("")
+        return 
+
+
+if __name__ == "__main__":
+    from spyderlib.utils.qthelpers import qapplication
+    app = qapplication()
+    scripting_lib_path = '/home/rob/lavoro/spyder-2.0.12/scripting_library'
+    test = ScriptingHelpWidget(lib_path=scripting_lib_path)
+    test.show()
+    sys.exit(app.exec_())
diff --git a/src/scriptingHelp_rc.py b/src/scriptingHelp_rc.py
new file mode 100644
index 0000000000000000000000000000000000000000..cfbc480d7790ef35595575a0eefdd8c3108be5eb
--- /dev/null
+++ b/src/scriptingHelp_rc.py
@@ -0,0 +1,1441 @@
+# -*- coding: utf-8 -*-
+
+# Resource object code
+#
+# Created: Fri Sep 27 18:06:55 2013
+#      by: The Resource Compiler for PyQt (Qt v4.6.2)
+#
+# WARNING! All changes made in this file will be lost!
+
+from PyQt4 import QtCore
+
+qt_resource_data = "\
+\x00\x00\x1f\xb0\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x4e\x00\x00\x00\x4d\x08\x06\x00\x00\x00\x08\x3e\x52\xb3\
+\x00\x00\x0a\x43\x69\x43\x43\x50\x49\x43\x43\x20\x70\x72\x6f\x66\
+\x69\x6c\x65\x00\x00\x78\xda\x9d\x53\x77\x58\x93\xf7\x16\x3e\xdf\
+\xf7\x65\x0f\x56\x42\xd8\xf0\xb1\x97\x6c\x81\x00\x22\x23\xac\x08\
+\xc8\x10\x59\xa2\x10\x92\x00\x61\x84\x10\x12\x40\xc5\x85\x88\x0a\
+\x56\x14\x15\x11\x9c\x48\x55\xc4\x82\xd5\x0a\x48\x9d\x88\xe2\xa0\
+\x28\xb8\x67\x41\x8a\x88\x5a\x8b\x55\x5c\x38\xee\x1f\xdc\xa7\xb5\
+\x7d\x7a\xef\xed\xed\xfb\xd7\xfb\xbc\xe7\x9c\xe7\xfc\xce\x79\xcf\
+\x0f\x80\x11\x12\x26\x91\xe6\xa2\x6a\x00\x39\x52\x85\x3c\x3a\xd8\
+\x1f\x8f\x4f\x48\xc4\xc9\xbd\x80\x02\x15\x48\xe0\x04\x20\x10\xe6\
+\xcb\xc2\x67\x05\xc5\x00\x00\xf0\x03\x79\x78\x7e\x74\xb0\x3f\xfc\
+\x01\xaf\x6f\x00\x02\x00\x70\xd5\x2e\x24\x12\xc7\xe1\xff\x83\xba\
+\x50\x26\x57\x00\x20\x91\x00\xe0\x22\x12\xe7\x0b\x01\x90\x52\x00\
+\xc8\x2e\x54\xc8\x14\x00\xc8\x18\x00\xb0\x53\xb3\x64\x0a\x00\x94\
+\x00\x00\x6c\x79\x7c\x42\x22\x00\xaa\x0d\x00\xec\xf4\x49\x3e\x05\
+\x00\xd8\xa9\x93\xdc\x17\x00\xd8\xa2\x1c\xa9\x08\x00\x8d\x01\x00\
+\x99\x28\x47\x24\x02\x40\xbb\x00\x60\x55\x81\x52\x2c\x02\xc0\xc2\
+\x00\xa0\xac\x40\x22\x2e\x04\xc0\xae\x01\x80\x59\xb6\x32\x47\x02\
+\x80\xbd\x05\x00\x76\x8e\x58\x90\x0f\x40\x60\x00\x80\x99\x42\x2c\
+\xcc\x00\x20\x38\x02\x00\x43\x1e\x13\xcd\x03\x20\x4c\x03\xa0\x30\
+\xd2\xbf\xe0\xa9\x5f\x70\x85\xb8\x48\x01\x00\xc0\xcb\x95\xcd\x97\
+\x4b\xd2\x33\x14\xb8\x95\xd0\x1a\x77\xf2\xf0\xe0\xe2\x21\xe2\xc2\
+\x6c\xb1\x42\x61\x17\x29\x10\x66\x09\xe4\x22\x9c\x97\x9b\x23\x13\
+\x48\xe7\x03\x4c\xce\x0c\x00\x00\x1a\xf9\xd1\xc1\xfe\x38\x3f\x90\
+\xe7\xe6\xe4\xe1\xe6\x66\xe7\x6c\xef\xf4\xc5\xa2\xfe\x6b\xf0\x6f\
+\x22\x3e\x21\xf1\xdf\xfe\xbc\x8c\x02\x04\x00\x10\x4e\xcf\xef\xda\
+\x5f\xe5\xe5\xd6\x03\x70\xc7\x01\xb0\x75\xbf\x6b\xa9\x5b\x00\xda\
+\x56\x00\x68\xdf\xf9\x5d\x33\xdb\x09\xa0\x5a\x0a\xd0\x7a\xf9\x8b\
+\x79\x38\xfc\x40\x1e\x9e\xa1\x50\xc8\x3c\x1d\x1c\x0a\x0b\x0b\xed\
+\x25\x62\xa1\xbd\x30\xe3\x8b\x3e\xff\x33\xe1\x6f\xe0\x8b\x7e\xf6\
+\xfc\x40\x1e\xfe\xdb\x7a\xf0\x00\x71\x9a\x40\x99\xad\xc0\xa3\x83\
+\xfd\x71\x61\x6e\x76\xae\x52\x8e\xe7\xcb\x04\x42\x31\x6e\xf7\xe7\
+\x23\xfe\xc7\x85\x7f\xfd\x8e\x29\xd1\xe2\x34\xb1\x5c\x2c\x15\x8a\
+\xf1\x58\x89\xb8\x50\x22\x4d\xc7\x79\xb9\x52\x91\x44\x21\xc9\x95\
+\xe2\x12\xe9\x7f\x32\xf1\x1f\x96\xfd\x09\x93\x77\x0d\x00\xac\x86\
+\x4f\xc0\x4e\xb6\x07\xb5\xcb\x6c\xc0\x7e\xee\x01\x02\x8b\x0e\x58\
+\xd2\x76\x00\x40\x7e\xf3\x2d\x8c\x1a\x0b\x91\x00\x10\x67\x34\x32\
+\x79\xf7\x00\x00\x93\xbf\xf9\x8f\x40\x2b\x01\x00\xcd\x97\xa4\xe3\
+\x00\x00\xbc\xe8\x18\x5c\xa8\x94\x17\x4c\xc6\x08\x00\x00\x44\xa0\
+\x81\x2a\xb0\x41\x07\x0c\xc1\x14\xac\xc0\x0e\x9c\xc1\x1d\xbc\xc0\
+\x17\x02\x61\x06\x44\x40\x0c\x24\xc0\x3c\x10\x42\x06\xe4\x80\x1c\
+\x0a\xa1\x18\x96\x41\x19\x54\xc0\x3a\xd8\x04\xb5\xb0\x03\x1a\xa0\
+\x11\x9a\xe1\x10\xb4\xc1\x31\x38\x0d\xe7\xe0\x12\x5c\x81\xeb\x70\
+\x17\x06\x60\x18\x9e\xc2\x18\xbc\x86\x09\x04\x41\xc8\x08\x13\x61\
+\x21\x3a\x88\x11\x62\x8e\xd8\x22\xce\x08\x17\x99\x8e\x04\x22\x61\
+\x48\x34\x92\x80\xa4\x20\xe9\x88\x14\x51\x22\xc5\xc8\x72\xa4\x02\
+\xa9\x42\x6a\x91\x5d\x48\x23\xf2\x2d\x72\x14\x39\x8d\x5c\x40\xfa\
+\x90\xdb\xc8\x20\x32\x8a\xfc\x8a\xbc\x47\x31\x94\x81\xb2\x51\x03\
+\xd4\x02\x75\x40\xb9\xa8\x1f\x1a\x8a\xc6\xa0\x73\xd1\x74\x34\x0f\
+\x5d\x80\x96\xa2\x6b\xd1\x1a\xb4\x1e\x3d\x80\xb6\xa2\xa7\xd1\x4b\
+\xe8\x75\x74\x00\x7d\x8a\x8e\x63\x80\xd1\x31\x0e\x66\x8c\xd9\x61\
+\x5c\x8c\x87\x45\x60\x89\x58\x1a\x26\xc7\x16\x63\xe5\x58\x35\x56\
+\x8f\x35\x63\x1d\x58\x37\x76\x15\x1b\xc0\x9e\x61\xef\x08\x24\x02\
+\x8b\x80\x13\xec\x08\x5e\x84\x10\xc2\x6c\x82\x90\x90\x47\x58\x4c\
+\x58\x43\xa8\x25\xec\x23\xb4\x12\xba\x08\x57\x09\x83\x84\x31\xc2\
+\x27\x22\x93\xa8\x4f\xb4\x25\x7a\x12\xf9\xc4\x78\x62\x3a\xb1\x90\
+\x58\x46\xac\x26\xee\x21\x1e\x21\x9e\x25\x5e\x27\x0e\x13\x5f\x93\
+\x48\x24\x0e\xc9\x92\xe4\x4e\x0a\x21\x25\x90\x32\x49\x0b\x49\x6b\
+\x48\xdb\x48\x2d\xa4\x53\xa4\x3e\xd2\x10\x69\x9c\x4c\x26\xeb\x90\
+\x6d\xc9\xde\xe4\x08\xb2\x80\xac\x20\x97\x91\xb7\x90\x0f\x90\x4f\
+\x92\xfb\xc9\xc3\xe4\xb7\x14\x3a\xc5\x88\xe2\x4c\x09\xa2\x24\x52\
+\xa4\x94\x12\x4a\x35\x65\x3f\xe5\x04\xa5\x9f\x32\x42\x99\xa0\xaa\
+\x51\xcd\xa9\x9e\xd4\x08\xaa\x88\x3a\x9f\x5a\x49\x6d\xa0\x76\x50\
+\x2f\x53\x87\xa9\x13\x34\x75\x9a\x25\xcd\x9b\x16\x43\xcb\xa4\x2d\
+\xa3\xd5\xd0\x9a\x69\x67\x69\xf7\x68\x2f\xe9\x74\xba\x09\xdd\x83\
+\x1e\x45\x97\xd0\x97\xd2\x6b\xe8\x07\xe9\xe7\xe9\x83\xf4\x77\x0c\
+\x0d\x86\x0d\x83\xc7\x48\x62\x28\x19\x6b\x19\x7b\x19\xa7\x18\xb7\
+\x19\x2f\x99\x4c\xa6\x05\xd3\x97\x99\xc8\x54\x30\xd7\x32\x1b\x99\
+\x67\x98\x0f\x98\x6f\x55\x58\x2a\xf6\x2a\x7c\x15\x91\xca\x12\x95\
+\x3a\x95\x56\x95\x7e\x95\xe7\xaa\x54\x55\x73\x55\x3f\xd5\x79\xaa\
+\x0b\x54\xab\x55\x0f\xab\x5e\x56\x7d\xa6\x46\x55\xb3\x50\xe3\xa9\
+\x09\xd4\x16\xab\xd5\xa9\x1d\x55\xbb\xa9\x36\xae\xce\x52\x77\x52\
+\x8f\x50\xcf\x51\x5f\xa3\xbe\x5f\xfd\x82\xfa\x63\x0d\xb2\x86\x85\
+\x46\xa0\x86\x48\xa3\x54\x63\xb7\xc6\x19\x8d\x21\x16\xc6\x32\x65\
+\xf1\x58\x42\xd6\x72\x56\x03\xeb\x2c\x6b\x98\x4d\x62\x5b\xb2\xf9\
+\xec\x4c\x76\x05\xfb\x1b\x76\x2f\x7b\x4c\x53\x43\x73\xaa\x66\xac\
+\x66\x91\x66\x9d\xe6\x71\xcd\x01\x0e\xc6\xb1\xe0\xf0\x39\xd9\x9c\
+\x4a\xce\x21\xce\x0d\xce\x7b\x2d\x03\x2d\x3f\x2d\xb1\xd6\x6a\xad\
+\x66\xad\x7e\xad\x37\xda\x7a\xda\xbe\xda\x62\xed\x72\xed\x16\xed\
+\xeb\xda\xef\x75\x70\x9d\x40\x9d\x2c\x9d\xf5\x3a\x6d\x3a\xf7\x75\
+\x09\xba\x36\xba\x51\xba\x85\xba\xdb\x75\xcf\xea\x3e\xd3\x63\xeb\
+\x79\xe9\x09\xf5\xca\xf5\x0e\xe9\xdd\xd1\x47\xf5\x6d\xf4\xa3\xf5\
+\x17\xea\xef\xd6\xef\xd1\x1f\x37\x30\x34\x08\x36\x90\x19\x6c\x31\
+\x38\x63\xf0\xcc\x90\x63\xe8\x6b\x98\x69\xb8\xd1\xf0\x84\xe1\xa8\
+\x11\xcb\x68\xba\x91\xc4\x68\xa3\xd1\x49\xa3\x27\xb8\x26\xee\x87\
+\x67\xe3\x35\x78\x17\x3e\x66\xac\x6f\x1c\x62\xac\x34\xde\x65\xdc\
+\x6b\x3c\x61\x62\x69\x32\xdb\xa4\xc4\xa4\xc5\xe4\xbe\x29\xcd\x94\
+\x6b\x9a\x66\xba\xd1\xb4\xd3\x74\xcc\xcc\xc8\x2c\xdc\xac\xd8\xac\
+\xc9\xec\x8e\x39\xd5\x9c\x6b\x9e\x61\xbe\xd9\xbc\xdb\xfc\x8d\x85\
+\xa5\x45\x9c\xc5\x4a\x8b\x36\x8b\xc7\x96\xda\x96\x7c\xcb\x05\x96\
+\x4d\x96\xf7\xac\x98\x56\x3e\x56\x79\x56\xf5\x56\xd7\xac\x49\xd6\
+\x5c\xeb\x2c\xeb\x6d\xd6\x57\x6c\x50\x1b\x57\x9b\x0c\x9b\x3a\x9b\
+\xcb\xb6\xa8\xad\x9b\xad\xc4\x76\x9b\x6d\xdf\x14\xe2\x14\x8f\x29\
+\xd2\x29\xf5\x53\x6e\xda\x31\xec\xfc\xec\x0a\xec\x9a\xec\x06\xed\
+\x39\xf6\x61\xf6\x25\xf6\x6d\xf6\xcf\x1d\xcc\x1c\x12\x1d\xd6\x3b\
+\x74\x3b\x7c\x72\x74\x75\xcc\x76\x6c\x70\xbc\xeb\xa4\xe1\x34\xc3\
+\xa9\xc4\xa9\xc3\xe9\x57\x67\x1b\x67\xa1\x73\x9d\xf3\x35\x17\xa6\
+\x4b\x90\xcb\x12\x97\x76\x97\x17\x53\x6d\xa7\x8a\xa7\x6e\x9f\x7a\
+\xcb\x95\xe5\x1a\xee\xba\xd2\xb5\xd3\xf5\xa3\x9b\xbb\x9b\xdc\xad\
+\xd9\x6d\xd4\xdd\xcc\x3d\xc5\x7d\xab\xfb\x4d\x2e\x9b\x1b\xc9\x5d\
+\xc3\x3d\xef\x41\xf4\xf0\xf7\x58\xe2\x71\xcc\xe3\x9d\xa7\x9b\xa7\
+\xc2\xf3\x90\xe7\x2f\x5e\x76\x5e\x59\x5e\xfb\xbd\x1e\x4f\xb3\x9c\
+\x26\x9e\xd6\x30\x6d\xc8\xdb\xc4\x5b\xe0\xbd\xcb\x7b\x60\x3a\x3e\
+\x3d\x65\xfa\xce\xe9\x03\x3e\xc6\x3e\x02\x9f\x7a\x9f\x87\xbe\xa6\
+\xbe\x22\xdf\x3d\xbe\x23\x7e\xd6\x7e\x99\x7e\x07\xfc\x9e\xfb\x3b\
+\xfa\xcb\xfd\x8f\xf8\xbf\xe1\x79\xf2\x16\xf1\x4e\x05\x60\x01\xc1\
+\x01\xe5\x01\xbd\x81\x1a\x81\xb3\x03\x6b\x03\x1f\x04\x99\x04\xa5\
+\x07\x35\x05\x8d\x05\xbb\x06\x2f\x0c\x3e\x15\x42\x0c\x09\x0d\x59\
+\x1f\x72\x93\x6f\xc0\x17\xf2\x1b\xf9\x63\x33\xdc\x67\x2c\x9a\xd1\
+\x15\xca\x08\x9d\x15\x5a\x1b\xfa\x30\xcc\x26\x4c\x1e\xd6\x11\x8e\
+\x86\xcf\x08\xdf\x10\x7e\x6f\xa6\xf9\x4c\xe9\xcc\xb6\x08\x88\xe0\
+\x47\x6c\x88\xb8\x1f\x69\x19\x99\x17\xf9\x7d\x14\x29\x2a\x32\xaa\
+\x2e\xea\x51\xb4\x53\x74\x71\x74\xf7\x2c\xd6\xac\xe4\x59\xfb\x67\
+\xbd\x8e\xf1\x8f\xa9\x8c\xb9\x3b\xdb\x6a\xb6\x72\x76\x67\xac\x6a\
+\x6c\x52\x6c\x63\xec\x9b\xb8\x80\xb8\xaa\xb8\x81\x78\x87\xf8\x45\
+\xf1\x97\x12\x74\x13\x24\x09\xed\x89\xe4\xc4\xd8\xc4\x3d\x89\xe3\
+\x73\x02\xe7\x6c\x9a\x33\x9c\xe4\x9a\x54\x96\x74\x63\xae\xe5\xdc\
+\xa2\xb9\x17\xe6\xe9\xce\xcb\x9e\x77\x3c\x59\x35\x59\x90\x7c\x38\
+\x85\x98\x12\x97\xb2\x3f\xe5\x83\x20\x42\x50\x2f\x18\x4f\xe5\xa7\
+\x6e\x4d\x1d\x13\xf2\x84\x9b\x85\x4f\x45\xbe\xa2\x8d\xa2\x51\xb1\
+\xb7\xb8\x4a\x3c\x92\xe6\x9d\x56\x95\xf6\x38\xdd\x3b\x7d\x43\xfa\
+\x68\x86\x4f\x46\x75\xc6\x33\x09\x4f\x52\x2b\x79\x91\x19\x92\xb9\
+\x23\xf3\x4d\x56\x44\xd6\xde\xac\xcf\xd9\x71\xd9\x2d\x39\x94\x9c\
+\x94\x9c\xa3\x52\x0d\x69\x96\xb4\x2b\xd7\x30\xb7\x28\xb7\x4f\x66\
+\x2b\x2b\x93\x0d\xe4\x79\xe6\x6d\xca\x1b\x93\x87\xca\xf7\xe4\x23\
+\xf9\x73\xf3\xdb\x15\x6c\x85\x4c\xd1\xa3\xb4\x52\xae\x50\x0e\x16\
+\x4c\x2f\xa8\x2b\x78\x5b\x18\x5b\x78\xb8\x48\xbd\x48\x5a\xd4\x33\
+\xdf\x66\xfe\xea\xf9\x23\x0b\x82\x16\x7c\xbd\x90\xb0\x50\xb8\xb0\
+\xb3\xd8\xb8\x78\x59\xf1\xe0\x22\xbf\x45\xbb\x16\x23\x8b\x53\x17\
+\x77\x2e\x31\x5d\x52\xba\x64\x78\x69\xf0\xd2\x7d\xcb\x68\xcb\xb2\
+\x96\xfd\x50\xe2\x58\x52\x55\xf2\x6a\x79\xdc\xf2\x8e\x52\x83\xd2\
+\xa5\xa5\x43\x2b\x82\x57\x34\x95\xa9\x94\xc9\xcb\x6e\xae\xf4\x5a\
+\xb9\x63\x15\x61\x95\x64\x55\xef\x6a\x97\xd5\x5b\x56\x7f\x2a\x17\
+\x95\x5f\xac\x70\xac\xa8\xae\xf8\xb0\x46\xb8\xe6\xe2\x57\x4e\x5f\
+\xd5\x7c\xf5\x79\x6d\xda\xda\xde\x4a\xb7\xca\xed\xeb\x48\xeb\xa4\
+\xeb\x6e\xac\xf7\x59\xbf\xaf\x4a\xbd\x6a\x41\xd5\xd0\x86\xf0\x0d\
+\xad\x1b\xf1\x8d\xe5\x1b\x5f\x6d\x4a\xde\x74\xa1\x7a\x6a\xf5\x8e\
+\xcd\xb4\xcd\xca\xcd\x03\x35\x61\x35\xed\x5b\xcc\xb6\xac\xdb\xf2\
+\xa1\x36\xa3\xf6\x7a\x9d\x7f\x5d\xcb\x56\xfd\xad\xab\xb7\xbe\xd9\
+\x26\xda\xd6\xbf\xdd\x77\x7b\xf3\x0e\x83\x1d\x15\x3b\xde\xef\x94\
+\xec\xbc\xb5\x2b\x78\x57\x6b\xbd\x45\x7d\xf5\x6e\xd2\xee\x82\xdd\
+\x8f\x1a\x62\x1b\xba\xbf\xe6\x7e\xdd\xb8\x47\x77\x4f\xc5\x9e\x8f\
+\x7b\xa5\x7b\x07\xf6\x45\xef\xeb\x6a\x74\x6f\x6c\xdc\xaf\xbf\xbf\
+\xb2\x09\x6d\x52\x36\x8d\x1e\x48\x3a\x70\xe5\x9b\x80\x6f\xda\x9b\
+\xed\x9a\x77\xb5\x70\x5a\x2a\x0e\xc2\x41\xe5\xc1\x27\xdf\xa6\x7c\
+\x7b\xe3\x50\xe8\xa1\xce\xc3\xdc\xc3\xcd\xdf\x99\x7f\xb7\xf5\x08\
+\xeb\x48\x79\x2b\xd2\x3a\xbf\x75\xac\x2d\xa3\x6d\xa0\x3d\xa1\xbd\
+\xef\xe8\x8c\xa3\x9d\x1d\x5e\x1d\x47\xbe\xb7\xff\x7e\xef\x31\xe3\
+\x63\x75\xc7\x35\x8f\x57\x9e\xa0\x9d\x28\x3d\xf1\xf9\xe4\x82\x93\
+\xe3\xa7\x64\xa7\x9e\x9d\x4e\x3f\x3d\xd4\x99\xdc\x79\xf7\x4c\xfc\
+\x99\x6b\x5d\x51\x5d\xbd\x67\x43\xcf\x9e\x3f\x17\x74\xee\x4c\xb7\
+\x5f\xf7\xc9\xf3\xde\xe7\x8f\x5d\xf0\xbc\x70\xf4\x22\xf7\x62\xdb\
+\x25\xb7\x4b\xad\x3d\xae\x3d\x47\x7e\x70\xfd\xe1\x48\xaf\x5b\x6f\
+\xeb\x65\xf7\xcb\xed\x57\x3c\xae\x74\xf4\x4d\xeb\x3b\xd1\xef\xd3\
+\x7f\xfa\x6a\xc0\xd5\x73\xd7\xf8\xd7\x2e\x5d\x9f\x79\xbd\xef\xc6\
+\xec\x1b\xb7\x6e\x26\xdd\x1c\xb8\x25\xba\xf5\xf8\x76\xf6\xed\x17\
+\x77\x0a\xee\x4c\xdc\x5d\x7a\x8f\x78\xaf\xfc\xbe\xda\xfd\xea\x07\
+\xfa\x0f\xea\x7f\xb4\xfe\xb1\x65\xc0\x6d\xe0\xf8\x60\xc0\x60\xcf\
+\xc3\x59\x0f\xef\x0e\x09\x87\x9e\xfe\x94\xff\xd3\x87\xe1\xd2\x47\
+\xcc\x47\xd5\x23\x46\x23\x8d\x8f\x9d\x1f\x1f\x1b\x0d\x1a\xbd\xf2\
+\x64\xce\x93\xe1\xa7\xb2\xa7\x13\xcf\xca\x7e\x56\xff\x79\xeb\x73\
+\xab\xe7\xdf\xfd\xe2\xfb\x4b\xcf\x58\xfc\xd8\xf0\x0b\xf9\x8b\xcf\
+\xbf\xae\x79\xa9\xf3\x72\xef\xab\xa9\xaf\x3a\xc7\x23\xc7\x1f\xbc\
+\xce\x79\x3d\xf1\xa6\xfc\xad\xce\xdb\x7d\xef\xb8\xef\xba\xdf\xc7\
+\xbd\x1f\x99\x28\xfc\x40\xfe\x50\xf3\xd1\xfa\x63\xc7\xa7\xd0\x4f\
+\xf7\x3e\xe7\x7c\xfe\xfc\x2f\xf7\x84\xf3\xfb\x80\x39\x25\x11\x00\
+\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\xa7\
+\x93\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x2e\x23\x00\x00\x2e\
+\x23\x01\x78\xa5\x3f\x76\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xdd\
+\x09\x1b\x10\x06\x29\xe0\xb2\x8b\x24\x00\x00\x14\xee\x49\x44\x41\
+\x54\x78\xda\xed\x9c\x67\x78\x15\x65\xda\xc7\x7f\xcf\xcc\x9c\x9a\
+\x93\x93\x4e\x42\x2a\x90\x84\x44\x3a\x81\x20\xbd\x8b\x08\x76\x3a\
+\x2b\x08\x2a\x16\x40\x11\x65\x79\x15\x65\x61\xb1\xb7\x45\x54\x14\
+\x01\x1b\x22\xeb\xa2\xe8\xb2\x8a\x22\x60\x81\x80\x52\x04\x91\xaa\
+\x80\xa1\xb7\x90\x02\x69\x27\x39\x67\x66\x9e\xf7\xc3\x89\x89\x18\
+\x40\x04\x92\x00\x97\x73\x5d\xf9\x32\x33\x99\x73\x3f\xff\xf9\xdf\
+\xfd\x7e\x46\x0c\x1d\x3a\x54\xda\xad\x16\xfe\x3a\xce\xfe\xd0\x4d\
+\x89\xe6\x2b\x2d\xc1\x9b\xdc\x0b\x19\x91\xf2\x17\x22\x67\x85\x9a\
+\x97\xbc\x25\xcf\xa1\x01\xf8\xdc\xf1\x98\xb5\x9a\xd4\xa0\x34\x12\
+\x29\x05\x00\x42\x48\x40\x5c\xb4\xb8\x49\x6f\x31\xba\x54\x50\x2e\
+\x0a\x61\xa4\x42\x94\xf3\x17\x0c\x14\x40\x20\xa5\xbc\xe8\x89\x77\
+\x51\x00\xa7\x29\xa5\xdc\xd3\xe8\x6e\xa6\xb6\x6d\x49\x61\x91\x82\
+\x10\xe2\x2f\xe0\xfe\x98\x6d\x82\x38\xd7\x76\x1a\x87\x7d\x4d\x62\
+\xf0\x7a\xae\xf3\xb6\xc4\x57\x54\x50\x76\x4d\x9e\xc7\x73\xc1\x30\
+\x15\xaa\x8a\xbc\x35\x0c\x9c\xa4\xc4\x10\x0c\x49\x79\x08\xa1\xf8\
+\x57\x78\xef\x90\xf5\x88\x65\x03\x51\xac\xca\x39\xda\x3a\x89\x94\
+\xa0\x9b\x0a\x0d\x43\x33\xd0\x14\xef\xe5\x07\x9c\x94\x0a\xa1\xf6\
+\xe3\x34\x8f\x5e\x82\x34\xcb\x4e\x9a\xf0\xde\x33\x8b\xd9\x31\xe7\
+\x31\x10\x82\xb3\xa7\x8c\xc4\x94\x0a\x02\x93\xc6\x61\x5f\x33\xb5\
+\x43\x3a\x1d\x9c\x93\xf1\x64\x1d\xf1\x3f\xe7\x72\x02\xce\x90\x82\
+\x36\x91\x1f\x81\x51\xb1\x36\x69\x42\x60\x08\x3c\x74\xc3\xcb\x9c\
+\xd8\xbb\x0b\x79\x96\xa0\x79\x0d\x95\x28\x67\x26\x2f\xb4\x6f\xc1\
+\xa4\xf4\xab\x49\x0c\xfc\x9e\xc7\xee\xdf\xc8\xde\x65\xf3\x51\x34\
+\x71\xb9\x31\x0e\x52\x42\xbe\x03\xb3\xe2\x9c\x10\x20\x0d\xe8\xde\
+\xfe\x18\xc6\x9a\x27\x51\x2d\xea\x69\xc1\x93\x12\x4c\xa9\x60\x51\
+\x4a\xb9\x26\x61\x16\x33\x3a\x27\x52\x27\x70\x33\xaa\xc5\x60\xdd\
+\x0f\x2a\xdf\xad\xb6\x11\xdf\x7d\x20\xa6\x4f\x5e\x66\x8c\x03\x62\
+\x02\x7e\xaa\x74\x5e\x08\xa8\x15\x0b\xe1\x45\x1f\x70\x62\xd7\x56\
+\x84\xa2\x9c\x56\x35\x13\x02\x37\x33\xb9\x55\x0f\x46\x35\xbd\xb3\
+\xe2\x92\x05\x66\xcc\xb2\x11\xde\xac\x3b\xd6\xd0\x28\xa4\x34\x2f\
+\x2f\xe0\x82\xad\x27\x08\xb6\x1d\x39\x2d\xaa\x83\x06\x95\xb0\xfd\
+\xa3\xd9\x28\x1a\x27\xb1\x4e\x4a\x30\xa4\x4a\xcb\xc8\xcf\x98\xd6\
+\xa9\x09\x57\x84\xac\x3a\x89\xb5\x00\x6f\xbd\xe3\x24\xba\x69\x6b\
+\x84\xaa\x55\x49\x78\x53\xc3\x5e\x55\x9c\xde\x73\x1a\x70\xe3\xf5\
+\x06\x07\xd7\x64\x20\x4b\x7c\xbf\xb9\xcb\xcf\xb4\x1b\xea\x4e\x65\
+\x62\xab\xde\x60\xfe\xce\x7f\x08\x58\xf5\x8d\x02\x16\x07\x61\xa9\
+\xad\xaa\x2e\xf6\xac\xd9\x60\xe4\xcc\xf6\x4f\x0b\x80\x96\x2d\x73\
+\xc9\xdb\xbb\x8b\xe0\xba\x29\x80\xc4\xa3\xab\x3c\xd5\xa6\x07\xcd\
+\xc2\x97\x96\x83\x76\x12\xa1\x14\xf8\x60\x81\x0d\x8b\x2d\x80\xd0\
+\xfa\xcd\x31\xab\x48\xf6\x1a\x65\x9c\xcb\x92\x87\x5d\x2d\x3c\x35\
+\x17\xcb\xc0\x48\x6f\x7a\x9c\xe3\xfb\x77\x03\x60\x55\x4a\x78\xaa\
+\xcd\xd5\x34\xab\xb5\xb4\x9c\x65\xbf\xd7\x42\x4f\x21\xac\x59\x2b\
+\x88\x6f\xdd\x0b\x61\x57\xab\x2c\x7d\xab\x51\xe0\x74\xd3\x8a\x29\
+\xcf\x4c\x7a\x8b\xe6\xc5\x9b\x7b\xb8\x4c\x3d\x5f\xa0\x59\xf8\x12\
+\xa4\x71\xea\xd0\x4c\x4a\xc8\xc9\x13\x6c\xdb\x26\x48\xec\x3d\x1c\
+\xc3\x47\x95\xa5\x6f\x35\x0a\x5c\x89\xe1\xc2\x6b\xda\x4f\xab\xaa\
+\x00\x79\x79\x02\x9f\xa1\xd2\x24\xec\x2b\x06\x35\x98\x54\x59\x35\
+\x7f\xcb\x52\x15\x36\x6d\x56\xc9\xf7\xd6\xc5\x9d\xd4\x08\x69\x18\
+\x97\x67\xae\xaa\x9b\x56\x0c\xd3\x72\x5a\x10\x7e\x5c\xa7\x30\x77\
+\x7e\x00\x75\x62\x3c\xfc\x5f\x5a\x1f\xd0\xff\xe0\x81\x56\x78\x67\
+\xae\x95\xf8\x8e\xbd\x30\xf4\x2a\x49\x18\x2e\x0e\xe0\x8a\x75\x1b\
+\x25\x46\xc0\xa9\x2f\x9a\x30\x61\x92\x13\x7b\x50\x34\x63\x07\x2e\
+\xc5\x69\x39\x7e\x4a\x9b\xf6\xfb\x63\xfe\x87\x01\xc4\xb6\xec\x5c\
+\x16\xbb\x89\xcb\x13\x38\x01\x1c\x29\x4e\x3a\xa5\x9a\xee\x3f\x20\
+\xf8\xfe\x7b\x41\xeb\xbe\x37\xd1\xa3\xf1\xb2\x3f\x86\x40\x83\xff\
+\x2d\xd0\xc0\x16\x81\x2b\x26\x19\x51\xc5\x35\xbd\x1a\x05\x4e\x11\
+\xb0\x2d\xb7\x43\x25\x62\x08\x05\xbe\xc9\xd0\xc8\x3a\x16\xc9\x88\
+\x91\x56\x14\xb3\xe0\xac\x02\xab\x97\x5f\xb3\xe3\x8e\x8a\xc6\x15\
+\x53\xb7\x6a\xf5\xb4\xe6\x81\x93\xac\x3f\xd6\x0b\xd4\x0a\x67\x20\
+\x25\x60\x83\x29\x4f\xd8\x48\xb8\xfe\x3e\x7a\xd7\x9b\xc6\xd9\x04\
+\x63\x47\xf6\x08\x36\x6d\x56\xa8\xd3\xe1\x7a\x84\xa6\x56\xbd\xec\
+\x35\xab\xaa\x92\x7d\x05\x09\xe4\x15\xd5\x2e\x27\x88\x50\x61\xff\
+\x4e\xc1\xae\x5f\xc2\xe9\xd2\x3b\x0c\xb7\xe5\xf0\x1f\x56\x96\xa4\
+\x84\x4d\x5b\x55\xb2\xb2\x34\xea\xf5\x1c\x82\xa9\xcb\xcb\x1c\x38\
+\x01\x36\x15\xde\xda\xfe\x7c\x85\x24\x56\x58\xf0\x3f\x0b\x6a\x78\
+\x3d\x5a\xa5\x66\x82\x3c\xb3\xd6\x49\x09\xc2\x02\x2f\xbc\x68\x25\
+\x26\xfd\x06\xb4\x90\xe0\x2a\x49\xea\x2f\xb2\x5c\x15\x14\x61\xf2\
+\x63\x76\x77\xb2\x8b\x62\xc1\x0e\xab\x57\x28\x2c\x59\x66\x23\x30\
+\x2a\x8e\x98\xc8\x22\xfe\xa8\x20\x27\x14\xc8\xcf\x83\x25\xcb\x9c\
+\xa4\xf4\x1b\x8d\x51\x2a\xab\xa5\x67\x51\xe3\xc0\x09\x01\x45\x7a\
+\x30\x3b\xf2\x3b\xd1\xbc\x79\x30\x6d\x3a\xc5\xb1\x62\x4b\x1a\x57\
+\xdc\x78\x27\xf1\x81\x1b\xff\xf8\x01\x36\x18\x34\x2c\x00\x57\x42\
+\x73\x9c\xd1\x49\x50\x0d\x6c\xab\xf1\x24\xff\xd7\x54\xbf\x58\xb7\
+\x32\x6d\xc3\x74\x8a\x93\x5a\xd1\xe6\x86\xd6\x44\xa4\x36\xc2\xb4\
+\x39\xd1\x64\xf1\x19\x33\x05\x04\x7c\xfd\x85\xca\xe7\x5f\x38\x68\
+\x32\xb4\x0f\x96\x00\x77\xb5\x01\x57\x63\x8c\x93\x12\x2c\x8a\x07\
+\x90\x3c\xd8\x6c\x38\x0e\xab\x87\x31\x0f\xbb\x19\xd3\xf7\x73\x5c\
+\xf6\x42\x5c\x6a\x01\x6e\x6b\xce\x69\x73\x52\x80\xa2\x42\x78\xf0\
+\x61\x27\x01\x11\xc9\xd4\xbf\xf9\xae\x6a\x03\xad\x46\x19\x27\x11\
+\x74\x8a\x9e\xc7\xb5\x75\xa6\x11\x1f\xb8\x95\x86\xa1\x2b\x08\xb7\
+\xef\x43\x73\xea\x3c\x71\xff\x0f\xc4\xf7\x7f\x11\xaf\x74\x9e\xbe\
+\x72\x62\x83\xc1\xfd\x03\xf8\x61\x63\x12\x3d\x5f\x9d\x87\xae\xfb\
+\xdb\x89\xd5\xd5\x93\x55\x6a\x82\x69\x52\xfa\x9d\x42\x5e\x69\x14\
+\xf1\xee\xad\x00\x44\x39\x33\xd1\x14\x7f\x32\x9a\xb3\x7d\x39\xc7\
+\xb6\xad\xc7\xc0\x76\x4a\xa6\x01\xdc\x7d\x97\x9d\x4f\x16\x07\x33\
+\x6b\xc6\x7e\xdc\x51\x11\x7e\xb6\x55\x63\x23\x5b\xab\x4e\xc0\x74\
+\xa9\xa0\x9b\xd0\x3c\x22\x83\x06\x21\x19\x0c\x48\x9a\x52\xd9\x6b\
+\x96\xc2\x9a\x15\x27\xc8\x2e\x7e\x80\x7a\xae\xac\x4a\x89\xbf\xd4\
+\x61\xf8\x3d\x4e\xde\x99\x13\xce\xff\x4d\x80\xe1\x43\x8b\x79\xaa\
+\xf7\x04\x92\x87\x3c\x81\x23\xc8\x79\xb9\x01\x27\x91\xa8\x5c\x13\
+\x3f\x93\x01\xc9\x53\x08\xb2\x1e\x2d\x67\xd7\xef\x8d\xbf\x34\x21\
+\x36\x46\x12\xcb\xbe\x4a\xc0\x67\x67\x09\x5a\x75\x0c\x64\xef\xc1\
+\x20\xfe\xf5\x8a\x9d\xb1\xb7\xef\x00\x60\xf9\xcc\x57\xc8\xc8\x2a\
+\xe1\xe3\x63\xaf\xe0\xd3\xab\x67\x84\x42\xab\x16\xd5\x44\xe5\x1f\
+\x2d\xaf\x21\x2d\x7a\x31\xe8\x27\xab\xdc\xef\xd7\x78\xda\x5a\x9b\
+\x02\x5d\x7a\xba\x71\x38\x9d\x7c\xbf\x22\x9b\xb4\x2b\x3d\x48\x8f\
+\xff\x5a\x6c\xac\x89\x75\xdd\x3b\x6c\x59\xd2\x9d\xd4\x1b\xfa\x81\
+\x69\x50\xd5\x13\x4f\x55\x0f\x1c\x0a\x31\xae\x9f\x49\x8b\x5e\x8c\
+\xf4\xf9\x81\x29\x07\x47\xf8\xad\xac\x3c\x9b\xda\x99\x84\x25\x9f\
+\x14\x10\x18\x98\x4f\xa0\x5b\x22\x3d\xbf\xf9\x1f\x09\x57\x77\x2f\
+\x25\xbd\xe5\x60\x9e\xdd\xdd\x82\x03\x85\xf5\x50\xa8\x5a\x0f\xab\
+\x54\x87\x9a\xe6\x97\x46\x9c\xc4\x26\x29\x01\x15\xbe\x5d\xad\xf2\
+\xe6\x9b\x56\x0e\x1d\x3a\x3b\x49\xa2\x6b\x9b\x04\xba\x24\x9c\xc2\
+\x0f\xb8\x5c\x10\x9f\xa4\x73\xe4\xcd\x9e\x68\x05\x3b\xcb\x7e\x47\
+\x5e\xba\xc0\x99\x52\xa0\x0a\xfd\x24\x27\x20\x34\x58\xb3\x5a\xa5\
+\x5d\xe7\x20\xee\x9e\xd4\x81\x7e\x13\x86\x72\xec\x98\xf5\xfc\x5f\
+\x91\x07\x3e\x7c\x7b\x27\x5d\xb8\x15\x5f\x7e\x9e\xbf\x91\x7d\xe9\
+\x35\x6b\xfc\x53\x43\xb1\xae\x1d\xbc\xda\x29\x19\xf9\xdb\xb2\xb7\
+\x0a\xeb\x36\xa8\x28\xa1\x0d\xe8\xf1\xdc\x02\x92\x87\xbd\x84\x74\
+\xc6\x5c\x90\xf4\x0d\x09\xa3\x6e\xf9\x8e\xa5\x7f\xbf\x19\xd5\x22\
+\xaa\x2c\x44\xd1\xaa\x0a\x34\xdd\x54\x49\x08\xdc\xc6\xe4\xf4\x1e\
+\x38\x2d\xf9\x27\x5f\xf6\xc2\xe8\x91\x5e\xb2\x4b\xf2\x29\x8e\x58\
+\x43\xaf\xe4\x77\xa9\xe5\xdc\x0d\x17\x82\x1c\x02\xbe\x5a\xa2\x52\
+\x7a\xe2\x00\x25\x47\x8f\x60\x09\xa9\x75\xe9\x00\x27\xa5\xc0\x65\
+\x39\xc1\x63\xad\xbb\x10\x6c\xcd\x3a\xf5\x4d\x06\x4c\x1e\xb3\x09\
+\xb8\xba\xdc\xc0\x5f\xa8\x23\x39\xc9\x04\xa1\x21\xec\x01\x97\x92\
+\x8d\x93\xa8\x8a\xce\x23\x2d\xaf\x23\xd8\x9a\x45\x75\x8f\xf3\x4a\
+\x13\xe2\x92\x24\xf1\x31\xa5\x78\xb2\x8f\x5e\x2a\xc0\x49\x0a\xbd\
+\x2a\x13\x5b\xf6\xa2\x61\x68\xc6\x19\xe3\xb2\xaa\x2c\x53\x51\x0a\
+\x5f\x7d\x7a\x88\xfd\x6b\x57\x5c\x1a\xc0\x09\x4c\x6e\x6b\x30\x99\
+\xa6\xb5\xbe\xa4\x26\x07\xc7\xa5\x09\x75\x13\x7c\x74\x89\x9a\x81\
+\x51\xea\x41\x5e\x3c\xc0\x49\x0c\x53\xc1\x67\x28\x78\xcb\xfe\x4c\
+\x29\x08\xb7\x1f\xe0\xa6\xc4\xe7\x4f\x3b\xa2\x50\x9d\xac\x53\x14\
+\xe8\xda\xf4\x7b\xb2\xbe\xfd\x18\x45\xbb\xf0\x61\xc9\x9f\x72\x0e\
+\x52\x82\x43\x2b\x24\xd0\x92\x43\xfd\x90\xd5\x24\x04\x6e\x21\xd8\
+\x76\x04\x8f\x1e\xc8\xda\xa3\xd7\xf3\xf3\xf1\x36\x8c\xfc\xdf\x52\
+\x9e\xef\xd4\x96\x90\x30\x6a\x1c\xc0\x7e\x03\x25\x0f\x3d\xf9\x04\
+\x31\xdd\x6e\x41\x5e\x60\x41\xfe\x14\x70\xba\x54\x18\xd1\xe0\x3e\
+\x3a\x45\xcf\x41\x71\xca\xf2\x6a\x06\xc0\x75\x89\xd3\xf8\x25\xb7\
+\x05\x4f\xaf\x7a\x83\x91\x1f\x7d\xc4\x0b\x3d\xfb\x10\x1d\x53\x73\
+\xfa\x2a\xa5\x3f\xbf\x9d\xfe\xcc\x2e\xee\x79\xf7\x4d\xd2\x86\xdc\
+\x86\x34\xcc\x9a\x51\x55\xc3\x84\x0e\xd1\xf3\x50\x1c\x92\xab\x7b\
+\xb8\x19\x3f\xce\xe5\x2f\xba\x4a\x7f\x78\x91\x18\xb4\x9e\xe7\x5a\
+\x35\x23\xef\x98\xc9\xa7\x47\x9e\x28\xaf\xbd\xd5\x94\xba\x4a\x2f\
+\xf4\xbc\x5e\x27\xb2\xe8\xdf\x78\x0b\x0a\x2f\x68\x0a\xf6\xa7\x6d\
+\x9c\x8f\x40\xde\x9e\x6d\x61\xc9\xd2\x60\xd6\xe7\xf4\xaf\x34\x62\
+\x1a\x1c\x0d\xa3\x9a\x0c\x61\xe6\x07\xcd\xf0\x9a\x8e\x73\x56\x55\
+\x59\xb6\xa5\xeb\x7c\xd6\xfa\xab\x87\x1d\x71\xe3\x1a\x0a\xf6\xef\
+\xb8\xa0\xe5\xa6\x3f\x05\x9c\x04\x1c\xf6\x5c\xda\xb5\x35\x08\xa8\
+\x15\x4a\xff\x11\xc9\x27\x15\x6f\x84\xf0\x67\x05\xdd\x3a\x7b\x10\
+\x99\xef\xb1\x28\xf3\x9e\x73\x76\x3f\x42\x81\x23\x47\x05\xe2\x3c\
+\xed\xba\x34\xa1\x47\x97\x02\x3c\x6b\xa7\xa1\x58\x94\x0b\xc6\x3a\
+\xe5\xec\x19\x20\x70\x5b\x8b\xc0\x84\xe4\x64\x93\xc2\xa3\x1b\xb9\
+\x2b\xfd\xe1\x53\x32\xca\xe1\x80\xfb\xfb\x2c\x24\x35\x68\xe5\x59\
+\x67\x04\xbf\x32\x0c\x3b\xe4\x1d\x87\xe7\xa7\xda\xa8\x9d\x10\xc4\
+\xf6\xed\x02\xa1\x9d\x1f\xeb\xe2\x12\x21\xf8\xf8\x02\x8a\x0e\xee\
+\x43\x28\x6a\xf5\x02\xa7\x4b\x41\xa7\x98\xf7\xfc\x73\x1c\x26\x50\
+\xe2\xb7\x6b\xa7\x13\xf6\x6f\x03\x0a\x69\x10\xb7\x96\xdf\xb5\x0d\
+\x4e\x0d\x96\x0a\xc2\x01\x39\xb9\xf0\xe0\xfd\x76\x52\x9a\x86\x30\
+\xfe\xd1\x50\x92\xfa\x3d\x8d\x37\xb4\x4b\xe5\x01\xe9\x3f\x6f\x5f\
+\x78\xe7\x8d\x22\xd6\xbc\xfe\x2c\xaa\xf5\xc2\xa8\xaa\xf6\x67\x6c\
+\x4e\xb4\x73\x17\x25\xc5\x02\x7b\xe0\x6f\x56\x61\x9e\xa6\x10\x69\
+\x87\xbf\x0d\x76\xb2\x79\x8b\x85\x05\xef\x9d\x20\x26\xd6\xaf\xeb\
+\x5e\x1f\x14\x14\x08\x4a\x4a\x04\x05\x85\x82\xcc\x3d\x82\xad\x5b\
+\x14\xe6\xcd\xb7\xb2\x63\x67\x28\xf6\xa8\x3a\x44\x35\x6a\x41\xfa\
+\x80\x31\x38\xa2\x13\x98\xb1\xad\x2b\xaf\xd5\xaa\x5f\xf9\xf9\x1a\
+\xe8\x25\xb0\x61\xa3\x8a\x2b\x40\xd2\xa0\xa1\x59\x69\x38\x47\x4a\
+\x7f\x9f\x02\x05\x34\x2b\x78\xf6\x66\xe0\xc9\xca\xc6\x1a\x14\x5a\
+\x7d\xc0\x59\x14\x93\x77\x77\x3e\xc3\xdb\x73\x83\x71\x67\x4e\x21\
+\x28\x54\xa0\x1b\x70\x55\x57\x83\x9b\xfb\xfa\xc0\xf7\x9b\xfe\x81\
+\x0d\x66\xcf\xb0\xb0\x60\xa1\x9d\xe8\xd6\x43\xb9\xe7\xed\x44\x0e\
+\x2d\x9a\x82\xee\xf3\xa0\x1b\x50\x58\xa8\xe0\x2d\x15\x78\x4d\x17\
+\x6a\x68\x0a\x61\xf5\xd3\x88\xec\xd5\x9a\xee\xf5\x1a\x61\x09\x89\
+\xc5\xe1\x0e\x40\x4a\x89\xe9\x35\x38\x6e\x46\xb1\xbf\xa0\x01\x71\
+\x81\xdb\xfc\xcf\xd7\xfc\x40\xcc\x9e\x69\xe5\xc5\xe9\x76\xb6\x6e\
+\x15\x74\xbd\x2a\x84\x2f\x97\xec\xf1\x6b\xc1\xaf\x80\x69\xfe\x99\
+\x92\x35\x2b\x15\x1e\x7a\xd4\xc9\x8f\x9b\x04\x56\x67\x10\x9a\xc3\
+\x59\xbd\x8c\x13\x02\x4c\xc3\x44\x6b\x3d\x81\x7d\x01\xdd\x39\xb0\
+\x72\x21\xce\xc2\xf5\x1c\x38\xba\x93\x9b\x07\x64\x82\x01\x86\x17\
+\x0e\x1d\x11\x8c\x1e\xeb\xe4\x93\x4f\x83\xa9\x9d\xd6\x99\xb4\x31\
+\x53\x91\x40\x48\xa7\xd1\xe4\x67\x6e\x45\xea\x5e\xac\xc1\x11\x38\
+\xc3\xa2\x50\x9c\x1a\x86\xe1\x0f\x94\x4d\x03\x90\x06\xdd\x63\xdf\
+\x64\xc3\xb1\x9e\x64\x97\xc4\x21\x10\x94\xe8\x2e\x36\xe7\x76\x21\
+\x2e\x68\x1b\x45\xf9\xf0\xd5\x72\x0b\x77\xdd\x1b\x80\xd7\x67\x81\
+\xe0\x56\x74\x7a\x6c\x12\x6d\xba\x2a\xa0\xb7\x04\x05\x4c\x1d\xb2\
+\x73\x04\x19\x2b\x35\xc6\x4d\x70\xb2\x67\x4f\x30\x81\xb1\xf1\x24\
+\xde\x34\x8c\x7a\x37\xdc\x86\xa1\x97\x95\x66\xce\xb3\x27\x21\x06\
+\x0d\xe8\x2f\xbd\x6d\xef\xc7\x8c\xbb\xf2\xac\x3d\xab\x50\x14\x34\
+\x0d\x7a\xd6\x9d\x43\xe2\xa1\x51\x14\x17\x7b\x39\x78\x58\xf0\xde\
+\xfb\x1a\x19\xcb\x25\xce\xb8\xb6\x34\x1d\x32\x9e\xc8\xf4\xab\x30\
+\x4c\xbf\x81\x12\x42\xf8\x5d\xa5\xa0\xbc\xb9\xea\x67\x68\xc5\x56\
+\x72\x81\xc9\xdb\xdd\x22\x01\xf8\x6c\xcf\x48\x3e\xc8\x9c\x48\xb1\
+\xcf\x4a\xe3\xc8\xcd\xb8\x32\x7a\x31\x6b\xa6\x87\x43\x47\x1d\x4c\
+\x7e\xa4\x90\x09\x63\x8e\x73\xf3\x8c\x85\x88\x94\xeb\x09\xb7\xee\
+\xe3\xe1\xc4\x54\x3e\x5d\x64\xf2\xd9\x62\x95\x55\x2b\x05\x85\x32\
+\x85\xf8\x6e\xb7\x10\x95\xde\x93\x5a\xf5\x13\x69\x5b\xe7\x6b\x12\
+\x9c\xeb\x38\x54\x94\xca\x77\xd9\x7d\x31\x7d\xc6\x39\x85\x27\xd2\
+\x5b\x4c\xfe\x7b\xb7\xff\xf9\x7a\x9c\x00\x30\x4d\x74\xaf\x64\xd1\
+\x2f\x43\xd9\xf7\xb9\x95\x8d\x73\x9f\x41\x1a\x5e\xc2\xea\xa6\xd0\
+\x61\xf2\x58\x42\x9b\x77\x40\xea\x26\x86\x51\x26\xdc\x6f\xb7\x06\
+\x56\xea\x70\x9d\x2c\xbc\x21\x2d\x04\xdb\x8e\x32\xa0\xfe\xe3\x5c\
+\x5f\xef\x45\x32\x0e\x0f\x62\xce\x8e\xe7\x39\x1e\xbc\x88\x01\x83\
+\x6f\xe2\xc9\x09\x99\x58\xac\x7e\x73\xe0\xdc\x78\x27\x99\xc7\x83\
+\x21\xbd\x3d\x43\xff\xfd\x15\xeb\xa6\xde\x4d\x78\x5c\x1c\xe9\x7f\
+\x1f\x4d\xfb\xab\xdc\x74\xab\x3d\x83\x48\xc7\x87\xa4\x86\x7f\x5b\
+\x6e\xff\x0e\x1c\x54\x99\x3f\x6f\x2e\x71\x3d\x06\x22\x75\xb3\xea\
+\x55\xf5\x94\xb5\x10\x9f\x41\xfc\x35\x03\xa9\x77\xdd\x40\x84\x04\
+\x53\x80\xe1\xa3\xfc\x6d\x9e\xcb\x1b\xf5\x1a\x8e\x93\xf2\xe2\x1e\
+\xf1\xb3\xe8\x11\x37\x8b\x52\x19\x88\xcd\x51\xe0\xb7\x63\x65\xe0\
+\xc7\x45\x17\xf1\xc3\xfe\x9f\x09\x4f\xeb\x48\xf3\x76\x61\x8c\xea\
+\x3f\x9c\xd6\xd1\x0b\x89\xb1\xf5\xc7\xaa\xe6\x43\xd9\x40\xbb\x5e\
+\x04\x9b\xb7\x2a\x2c\x5e\x62\xe5\xa3\x8f\x15\x36\xed\x78\x9c\xba\
+\xd7\x0c\xc4\xab\x9f\xbb\xc2\x9e\x57\x05\x58\x08\x81\xd4\x0d\xbc\
+\x7a\x45\xfb\xea\x5c\x01\xfb\xd5\x0c\x1c\x2b\x89\xa7\x96\x73\x4f\
+\xf9\x1e\x5f\x51\x16\x34\xd9\xcc\x82\x93\x5b\x82\x80\x69\x4a\x4a\
+\x8a\x74\xfa\x24\xbe\xc0\xf0\x06\xe3\xfc\x53\x10\x4a\x59\x90\x25\
+\x61\xfa\x34\x2b\x6b\xbe\xb7\xf0\xde\x7f\xec\xa8\xaa\x86\x24\x80\
+\x3a\x9d\xfa\xd1\xf3\x81\x87\xf0\x95\x9a\xd5\xe3\x1c\xce\xc4\x3c\
+\x71\xb2\xee\x9d\xd7\xb3\x7e\x39\x91\x46\xc3\xb0\x15\x60\x81\xbd\
+\xbb\x04\xef\xce\xb3\xb2\x62\x85\xca\x2d\x83\x4a\xb9\x75\xa8\x51\
+\x29\xa0\xd6\x4d\x2b\x1d\xa3\xdf\xe0\x97\x5d\xb0\xe5\x27\x0b\x2b\
+\x57\x29\x2c\xfb\x52\x63\xe3\x26\x17\x96\x88\x54\x42\xea\xa4\xd0\
+\xb0\x7f\x03\x6a\x35\xef\x4c\x68\xfd\xa6\x48\x15\x8c\x52\xf3\xbc\
+\x07\x74\x2e\x82\xf9\xb8\x93\xb3\x93\x7d\x85\x8d\xf1\x14\xc3\x1d\
+\xa3\x02\xf8\xf4\x33\x0b\xf9\x05\x6e\x1a\x0f\x1a\xc7\xcc\xcc\x44\
+\x56\x8c\x7f\x9c\xd9\x4f\x7d\x07\xa2\x42\xc5\x1c\x5a\x01\x8f\xae\
+\xcd\x60\xcb\x4b\x23\xd8\xb2\x6c\x29\xb5\xd3\x7a\x10\xdf\xf5\x46\
+\x7a\xdd\xd7\x1a\xd5\xee\x42\x73\x04\xe0\xdf\xb7\x29\xd1\x75\x13\
+\xe9\x3b\x3f\xad\xb8\x28\x81\x03\x58\x95\x3d\x9c\x27\xc6\xed\x21\
+\x7f\xd7\x72\xe2\xbb\x5f\x4d\xf7\x81\x0f\x20\xec\x76\xa4\x01\x87\
+\x8b\x7a\x32\x78\xca\x28\x5e\x1d\xf3\x3a\x21\x0e\x89\xd7\xe7\x1f\
+\xc0\x2e\xf5\x59\x49\xbd\x7f\x2e\x8d\x1e\x04\xdd\xf4\x87\x24\xa6\
+\x6e\x56\x78\xec\xdf\xcc\xcd\x5d\xa8\x44\xff\xa2\x02\x4e\x08\x49\
+\x89\x07\xda\x8c\x99\x84\x51\x52\x84\x16\xe0\x46\x9a\x26\xa6\xd7\
+\xef\x6c\xec\x0e\x28\x4e\x7f\x8d\xbb\xe6\xb6\xe1\xe9\x6b\x6f\xe7\
+\x8b\x65\x36\x2c\x2d\xed\x20\x04\xba\xd7\x44\x07\xff\xc6\x10\x21\
+\x4e\xe9\xb1\x2f\xda\x9e\xc3\x05\xb1\x97\xc2\x6f\x2b\x55\x87\x0b\
+\x69\x9a\x95\x58\xa2\x08\x03\xa3\xfe\x50\xfa\xbf\xf1\x05\x87\x3d\
+\x69\x44\xb7\xec\x5c\x1e\x26\x89\x0b\x62\x67\x2f\x51\x55\x3d\x1b\
+\x4f\x6e\x1a\x06\x09\x1d\xbb\x52\xaf\x4b\x57\x74\x1f\x48\xd3\xa8\
+\xf6\xaf\xe3\x9c\x11\xb8\x48\x47\x26\xed\x6a\xff\x07\x53\xaa\x48\
+\x04\x5e\xd3\xce\x81\xc2\x06\x6c\xce\xe9\x56\xb9\x94\xa4\xe5\x73\
+\x5d\x9d\xa9\x24\xba\x37\x90\xe5\x49\xe0\x93\x3d\x63\xc9\xf2\xd4\
+\x05\x20\xcc\x7e\x80\xb6\x51\xf3\x51\x85\xce\xf2\x43\x43\xc8\x2b\
+\xad\x4d\xe3\xb0\x2f\x49\x74\xaf\x47\x08\x49\xb1\xee\x66\xe9\xfe\
+\x11\x74\x8d\x79\x0b\x97\x25\x0f\x43\x6a\x2c\xda\x7b\x1f\x4d\xc3\
+\x96\x92\x10\xb8\x19\x80\x35\x47\x6f\xe2\x70\x71\x32\x16\xa5\x84\
+\x1e\x71\x33\xb0\xaa\xa5\xe5\x1f\xb2\x52\x84\xc1\x9e\x82\xa6\x6c\
+\x38\xd6\x0b\x80\x28\xe7\x2e\xae\x8c\xfc\x18\x51\xe6\x82\x4d\xa9\
+\x72\xb8\x38\x89\x75\x59\x37\x94\xcb\x9b\x1a\xb2\x92\x2b\x82\x57\
+\x22\x51\xd8\x92\xdb\x99\x02\x5f\x18\xed\xa3\xde\xc7\x44\x65\xe7\
+\xf1\x2b\xd9\x92\xdb\xe5\xdc\x81\xbb\xbe\xee\xbf\xb8\x26\xe1\x35\
+\x90\x65\xa9\x56\xd9\x6c\x46\x4e\x81\x83\xc9\xdf\xcc\xe1\xa0\xe5\
+\x66\x00\x1a\x84\xac\xe0\xd1\x96\xbd\xb0\x6b\x1e\xbc\x3e\xb0\x5a\
+\xa0\x77\x9d\xe9\x4c\x5b\x36\x92\xe5\xbe\x97\x69\x55\x6b\x21\xc3\
+\x52\xff\x0e\x40\x33\x1e\xe3\xe1\x4d\xbb\xe9\x93\x36\x91\x26\x91\
+\x6b\xfc\x4b\x93\xb0\x65\x75\x26\xb7\x77\x7b\x09\x9b\xc5\x3f\x64\
+\xf2\xe5\xbf\x97\x33\x68\xd4\x26\x92\x22\xfd\x03\x86\x9e\xf5\x2f\
+\xb1\x47\xfd\x81\xc6\xf5\x36\x31\x3c\x75\x1c\x8a\x72\x72\x5c\x72\
+\xe0\xb0\x95\xb5\x07\x72\xd0\x6c\x4e\xba\xd5\x7e\x95\x3e\xf5\xa7\
+\x55\x24\xfc\xc2\x2f\xbf\x34\x05\x93\x96\xcf\x65\x6b\xc9\x40\x86\
+\xc5\xdf\x4a\xfd\xe8\x3d\x00\xbc\xfb\x71\x14\xce\x7a\x1d\xe9\x93\
+\x32\x1f\x80\x4d\x3f\xbb\xd9\x92\x9b\x77\xee\x36\xee\x8d\xed\x2f\
+\xb2\x68\x4d\x03\x10\x10\x9b\x04\x6d\x07\x76\xe4\xfd\x05\x56\xc2\
+\xdc\x1e\x9e\xe9\xde\x8f\xa3\x3f\x7c\x81\xcb\x92\xc3\x3f\xd2\x7b\
+\x62\xd7\x3c\x8c\x18\x09\x0d\xda\xc5\xd2\x67\x74\x3a\x52\xc2\x7d\
+\xdd\x5e\xc5\x5c\x7d\x2f\x9f\xef\x1b\xc5\xf2\x0d\xfe\x6d\x47\x8d\
+\x53\x8a\x69\x91\x7d\x2d\x0f\x2f\x79\x97\x99\xf3\x22\x11\x40\x7a\
+\x07\xc1\xda\x3d\x57\xf2\xfc\x82\xeb\x00\xf8\xc7\x14\x58\xbb\xf3\
+\x0a\x8e\x14\xc4\x82\x84\x61\x77\xc0\xd3\xb3\x1b\x81\x10\x6c\xcd\
+\xed\x44\xaf\x49\x8f\xd2\x7f\x4c\x73\x0a\x0a\x05\xeb\x37\x40\x93\
+\x6b\x3b\xd0\xf3\x8e\x76\xe5\x45\xbb\x39\x9b\x1f\xe1\xe0\x21\x95\
+\x63\xd9\x70\x75\xdf\x50\x5a\xf5\x4e\xe1\xdd\xb9\x7e\xe7\xd3\x3b\
+\x70\x18\x16\xa5\x84\xb1\xef\xff\x93\x0d\x3f\x6a\x78\xbd\xf0\xdf\
+\xcf\xdd\xbc\xb5\x6e\x2c\x48\x98\xff\x21\xf4\x19\xd3\xf6\xfc\x9c\
+\x83\x29\x35\xb4\x5a\x69\x00\x64\x1d\x77\x13\x75\xeb\xd7\xcc\x0f\
+\xf0\xb0\x75\x77\x04\x4e\x27\x34\x2b\xb8\x8d\x8e\xd1\xf3\xb0\xaa\
+\xa5\x7c\xfe\x05\x7c\xf4\x6d\x6b\x9a\xfc\x73\x2f\xb2\xf7\x6a\xa6\
+\xaf\xb8\x0f\x04\xdc\xd5\x7e\x26\xc5\x59\x7b\xb1\x45\xb7\xf6\xe7\
+\xa2\x06\x3c\x30\x78\x1d\x42\x96\x10\xd8\xec\x56\x00\x8e\xe4\xba\
+\x89\x69\xdb\x17\x7b\x6a\x5f\x00\x8e\x65\xc3\xf4\x67\xf3\x68\x97\
+\xf8\x2d\xfd\x6f\x81\x1f\x1c\xd3\x68\x3e\x7e\x31\x36\x77\x38\xa6\
+\xd4\x70\xb6\x9d\x4c\xed\xbe\xef\x80\xe2\x5f\x78\xd2\xa8\x6f\xa8\
+\x3f\x7a\x19\x5a\xd9\xac\x88\xea\x0c\x43\x71\x45\x62\xf8\x80\x06\
+\x63\x88\x1d\xbd\x8d\x5d\xc9\xcb\x30\x0c\x08\x0c\xf0\x91\xf3\xe3\
+\x42\x6c\x57\xdc\xc2\xc7\x59\xd3\xb1\x58\xa1\x63\x3b\x9d\xc1\x1d\
+\x97\x80\x80\xc7\x67\xa7\xd1\x70\xf4\xc2\x0b\xe0\x55\x4f\x51\x7a\
+\xfd\xb1\x60\x00\x48\x68\x5a\x3f\x97\x28\xcd\xbf\xfb\xe5\xa7\x9f\
+\x20\xed\xde\xb7\xca\xef\xd9\x6e\x8e\x40\x48\xe8\xd0\x46\x27\x7f\
+\xdf\x16\xa4\x34\x29\x2a\x82\x19\x73\x82\x08\x0e\x82\x66\x39\x7d\
+\x50\x54\xad\x52\xce\x25\x25\x4c\x7c\x08\xae\x8a\x9b\xcd\xd6\xad\
+\xb0\x23\xec\x25\x12\x7b\x8d\x3e\x27\x03\xee\x72\xc1\x2d\x5d\x33\
+\x18\x9c\x3c\x91\xe1\xf5\x47\xa3\xaa\xb0\x77\x2f\xf8\xf0\x17\x32\
+\xb7\x78\x6f\x63\xe5\xfa\x70\x6e\xb9\x36\x93\x1b\xe3\x1f\xe3\xfd\
+\xf9\xe0\x6a\xff\xcf\xca\x72\x5d\xa8\x70\xc4\x66\xf3\x87\xee\xde\
+\x52\x03\xdd\x28\x33\xd0\x1a\x04\x46\xd7\xaf\x28\x7c\x6a\x06\x12\
+\xf0\x7a\x41\xf7\xf8\xf7\x9b\x6a\x16\x98\xfe\x5e\x3d\x7e\x3e\x58\
+\x9b\x87\x46\xec\xa4\x78\xff\xf7\x95\x4b\x2f\x02\x42\x42\x20\xff\
+\x04\x34\x6a\x08\x0f\x74\x7e\xea\x9c\x3d\x5f\x80\x0b\xfe\xd6\x71\
+\x19\x37\xd6\x79\x92\x58\xd7\x4f\xfc\xbc\x03\xee\x1c\x1f\x43\x58\
+\xe3\xab\xca\x1a\x42\x0a\x2f\xfe\x38\x87\xd0\x30\x70\xda\x75\x9e\
+\x9f\xdb\x82\xa8\x16\xbd\x2e\x4c\x1c\x67\xca\xca\xb7\xb4\x89\xfe\
+\x2f\x12\xf8\x32\xc3\x4e\x66\x7e\x73\x00\xae\x4c\x87\x82\x03\x15\
+\x9f\xfb\xe9\x16\xf3\x06\x42\xc0\xe2\xa5\xa0\x39\x02\x41\xfa\x2d\
+\xb4\xc3\xaa\x33\xed\xa7\x4f\xb1\xdb\x61\x60\xbb\x25\xbf\x23\xb7\
+\x82\x00\x26\x4e\x81\x6b\x27\x8e\xe1\xc8\x31\x85\xa1\x37\x1d\x26\
+\x28\x73\x62\x25\x19\x8c\xb2\xaf\x47\x9c\xa9\x17\x91\x93\x03\x83\
+\x46\xc6\x73\xdd\xa8\x4e\x74\xbc\xad\x37\x37\x3f\x3b\x85\x96\x8f\
+\xef\x3a\xf9\x37\x6b\xf7\xe0\x87\xad\x41\x7e\xef\x7f\xf3\x7f\x2e\
+\x4c\x00\xac\x60\x50\xcb\x79\x00\x80\x4e\xed\x75\xae\x8a\x9b\xc9\
+\xeb\x9d\x12\xa8\xed\xda\xcf\xee\xdd\xf0\xe5\xba\x04\x56\xe6\x8e\
+\xa2\xd0\x63\xa1\x75\x2b\x78\x20\xb9\x2d\x29\xc1\xdf\x32\x34\x65\
+\x3c\xd7\xd6\x7d\x19\x29\xe1\xc1\x89\x6e\xdc\xf1\x57\xe0\xb6\xe5\
+\x22\x04\xb4\xbf\xb2\x90\x63\x7a\x43\x16\x6f\x48\xc7\x6e\xaf\x1c\
+\xfe\x00\x44\x46\x40\xf8\x35\xff\xe2\xed\x0d\x0f\x22\x25\x8c\xed\
+\xfc\x1c\xc1\xd6\x8a\x4f\x09\x5d\x11\xe2\xdf\x27\xa1\x2a\x26\x41\
+\x41\xd0\x30\xf4\x1b\xc2\xec\xfb\x2b\x42\x05\x51\x8a\x45\xf1\xa1\
+\x08\x48\x6a\xdb\x9e\xb0\xbe\x1f\x13\x35\xf0\xbf\xa4\xf6\x7d\x04\
+\xc5\x52\xd1\xad\x09\xb1\x1d\x22\x2d\xe2\x73\x82\x43\xfc\x2f\xa1\
+\x71\xdd\x03\xb8\x2c\x39\xe7\x5f\x01\x1e\xdd\x78\x38\x5d\x63\xe7\
+\x54\xd8\x1f\x40\xd7\x61\xed\xf7\x30\xf8\x0e\x07\xf1\xc3\x17\x11\
+\xd1\xb0\x13\x61\xea\x76\x1e\xa8\x9b\x46\x6a\x92\xb7\x3c\x70\x3f\
+\x7a\x14\xc6\x8c\x83\x4d\xda\x64\xfe\x3e\xde\xc5\xb0\xd4\x71\xe5\
+\xc9\xf9\xb4\xf7\xd3\xd8\x18\xf1\x29\xb3\x3b\x47\xa3\xaa\x10\x7b\
+\x85\x9b\x7e\xb3\xbe\x61\x6a\xfb\xb4\xf2\xf2\xd2\xd0\xc7\x07\xa0\
+\xb7\x9a\xc5\xd4\xe6\x11\x44\x45\x94\xf2\x73\xa6\x93\x91\x8b\x57\
+\xd2\xa1\x65\x16\x93\x5b\xf5\x2c\x0f\x63\x7e\xcd\xac\x4e\x14\x68\
+\x0c\xfd\xf2\x38\xaa\xcd\xc1\x90\xa4\x31\xdc\x94\xfc\x4a\x39\x23\
+\x57\x6f\xae\xcd\x73\x07\x0f\x54\x5a\xdf\x13\x2d\x5a\x90\x1a\xb1\
+\xb1\xa2\x84\x25\x60\xd5\xc6\x28\x9e\xce\xfc\x09\x8b\x23\xf0\x8c\
+\x15\xe0\x33\x02\xe7\xb2\xe4\x90\xbd\x78\x3c\x39\x3f\xaf\x46\x08\
+\x7f\x33\x57\x17\x01\xf8\x42\xda\x53\xbb\xf3\x28\x02\xa2\xea\x55\
+\xb0\xd3\xb3\x17\x73\xdd\x23\xb8\x4f\x7c\xc2\xbe\xdd\x85\x1c\xf6\
+\xb6\x20\xbc\xc7\xd3\x44\x34\xe9\x8a\x43\xcb\xe7\xe0\xbc\x81\x78\
+\x72\xf6\xa2\x08\x85\x3c\x99\x42\xfd\xe1\xef\x10\x69\x2c\x21\x77\
+\xd1\xdd\x2c\x5f\x57\x8b\x2e\xcf\x6f\xa0\x28\xe3\x61\xb2\x7f\x5c\
+\x84\xa2\x68\xe4\x6a\xad\x69\x78\xfb\xeb\x04\x96\xac\xe3\x97\x79\
+\xa3\x38\x71\xc2\x24\xe2\x86\x99\x44\x24\x37\xc6\xb3\x6a\x02\x59\
+\x1b\x17\x23\x84\x02\x42\x20\xa5\x41\x89\xee\xa4\xce\x5d\x19\xa8\
+\x56\x3b\x36\x7d\x1f\xbb\x67\xf5\x2e\x33\x9b\x12\x8f\x35\x91\x7a\
+\xb7\x57\xf6\x94\xd6\x13\xdf\xb2\x67\xde\x9d\x15\x1d\x70\x69\xe0\
+\xb1\x24\x12\x3f\x78\x2e\x16\xa7\xfb\xdc\x81\xfb\xeb\x38\x3d\x70\
+\xca\x5f\x50\x9c\x73\xae\x2a\x28\x3d\xb4\x0d\xbd\xc4\xfb\x17\x1a\
+\x67\xc3\x38\xbd\x14\xd3\x5b\x82\x76\x3c\xbf\x80\xac\xa5\xd3\xe1\
+\x12\xf8\x68\xf1\xc5\x72\x28\xaa\xc6\xff\x03\x17\xfb\x45\xfd\xac\
+\xc9\x05\x58\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
+\x00\x00\x0f\x46\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x3c\x00\x00\x00\x3c\x08\x06\x00\x00\x00\x3a\xfc\xd9\x72\
+\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\
+\x00\x00\x0e\xfd\x49\x44\x41\x54\x68\x81\xed\x9a\x79\x74\x54\x65\
+\x9a\xc6\x7f\xb7\xf6\xaa\x54\xa8\x4a\x2a\x49\x25\x90\x10\x42\xc2\
+\x62\x90\x2c\x30\x46\x04\x69\x60\x50\x6c\x40\xda\x15\x69\x06\x0e\
+\xd8\x0c\x2a\x0d\x08\x04\x41\x41\x44\xdb\xa3\x03\x0e\xcc\x68\xeb\
+\xd0\x76\xe3\x34\x42\xd3\x83\x67\x0e\x47\xba\x71\x41\xa1\xa7\x15\
+\x10\x69\xc1\x20\xb2\xa8\x40\xd4\x40\x12\x92\xd4\x92\x3d\x55\xd9\
+\xab\xee\xfc\x71\xeb\x26\xb7\x2a\x55\xd9\x48\x9f\x71\xce\xf1\x3d\
+\xe7\xe6\xa6\xbe\xad\xde\xe7\x7d\x9e\xef\xfd\xbe\xfb\xd5\x85\x1f\
+\xed\x47\xfb\xd1\x7e\xb4\xff\x47\xa6\xee\x65\xbb\x38\xa0\x71\x00\
+\xbf\xd7\x08\x2c\x05\x16\x03\x5e\xa0\x78\x00\xc7\xbe\x21\x33\x01\
+\xbf\x01\x2a\x81\xa4\x01\x1a\xd3\x0c\x14\x00\x62\xe0\x6a\x01\xc6\
+\xf5\xa2\x9f\x01\xb8\x17\xb8\x1b\x50\x0d\x90\x2f\x41\x96\xa7\xd5\
+\x08\x57\x5e\x5c\x7b\x8b\xb8\xef\x95\xe9\x22\x70\x18\x10\x06\x60\
+\xdc\x1d\x48\x40\x2f\x00\xab\x81\xcd\xc0\xbe\x1e\xfa\x64\x00\xdf\
+\xd1\x19\xa4\x37\x07\xc0\x8f\x0e\xd3\x00\xbf\x9a\x91\x6b\x6c\xaf\
+\xff\x7d\x9e\xe8\x2f\x79\x59\xf4\x97\xbf\x2c\xce\x9b\x9d\x2a\x02\
+\x2b\x7a\x39\x86\x19\x58\x08\xec\x01\x3e\x46\x0a\xd6\x1f\x80\x57\
+\x80\x56\xe0\x73\x60\x2a\x12\x10\x13\xf0\x38\x10\xd3\x8d\x3f\xe7\
+\x91\x80\x5e\x42\x52\xdc\x77\x40\x76\x9f\x91\xd1\x95\xb1\x51\x82\
+\x20\xec\xdd\xb5\x7e\x54\xde\xc3\x93\x87\x23\xa8\x92\xc1\x18\x8d\
+\x98\x39\x82\xfa\xea\x6b\x64\x4e\xfd\x75\x53\xb9\xab\x39\x07\x28\
+\x8c\x30\x9e\x16\x58\x03\x3c\x15\x17\x17\x6f\xbb\xeb\xa7\xb3\xb1\
+\xc6\xc4\x50\x53\x5d\x8d\xdb\xe5\xa4\xf0\xdb\x2b\x94\x96\x48\xd3\
+\xd5\xef\xf7\x2b\xfb\xd5\x01\x2e\xe0\x3a\x50\x06\x38\x15\xf7\x0c\
+\xe0\x79\x60\x3b\xb0\x01\xf0\x03\x83\x81\x25\xc0\x8b\x37\x02\xf8\
+\x76\x8b\x59\xff\x97\x3f\xed\x59\x66\x9c\x36\x21\x17\xa1\xe8\x14\
+\xb4\xf8\xa1\x09\xc4\xa1\xc9\x90\x98\xc0\xb1\x63\x7f\x65\xfa\xfc\
+\xb7\x0b\x44\x91\x89\x40\x7b\xc8\x58\xa9\xc0\x9f\xad\xd6\x98\xdc\
+\x0d\x4f\x3f\xc7\xbc\x9f\x2f\x40\xaf\x37\x04\x35\xd8\xbd\x6b\x27\
+\x0e\x67\x05\x4f\x3e\xb5\x99\x4a\xb7\x0b\xa7\xd3\x81\xd3\xe5\xc4\
+\xe9\xa8\xc0\xe5\x74\xe0\x74\x39\xa4\xff\x5d\x2e\x9c\x8e\x0a\xdc\
+\x6e\x17\xed\xed\x41\x5f\xe3\x0d\x04\xc5\x09\x78\x90\x02\x2f\x7f\
+\x2e\x03\x1c\x40\x79\x20\x80\x61\x4d\xa3\xf8\xbf\xa0\xa1\xb1\xf5\
+\xfb\xa8\x28\xe3\xcd\x98\xe2\x10\xed\x23\x11\x1c\x97\xc1\x07\x42\
+\x49\x39\xa2\x35\x9a\xa9\x53\x7e\xc2\xaa\xc5\x97\x6e\x79\x75\xcf\
+\xd7\xcf\x00\xbf\x52\xf4\x4d\x06\x3e\xbd\x75\xc2\xc4\xe4\xdf\xfe\
+\x6e\x37\x89\x49\x83\xc3\x7e\x99\xdf\xef\x67\xc2\x84\x49\xa8\xd5\
+\x6a\xec\x89\x49\x24\x26\x75\xe6\x41\x01\x40\x10\x82\x3e\xfb\xfd\
+\x7e\xee\x9c\x7e\x3b\xcb\x57\xae\xc6\x62\xb1\xe0\x76\xb9\xa3\x2a\
+\x1c\xe5\xa3\xdc\x2e\xd7\xa8\x8a\xf2\x32\xdc\x6e\xd7\xac\xf2\xf2\
+\x32\x2a\x2b\xdd\xb4\xb6\xb6\x2a\xbf\xaa\x06\x69\x1a\x6d\x05\x2e\
+\x2a\x2b\x42\x25\x9d\x9d\x96\x62\x2d\xb8\x78\xf2\x65\xad\xc9\x1c\
+\x8f\x50\xf4\x29\xd4\xd7\x40\x13\xa0\x31\x21\x66\x8f\xa2\xd9\xeb\
+\x24\x67\xfa\xbf\xf9\x0a\xaf\x79\x26\x22\xcd\x45\x80\xfd\x49\x83\
+\x87\xcc\x3d\x71\xf2\x2c\x26\x93\x29\x52\x70\xf9\xf0\x83\x77\xb1\
+\x27\x26\x61\x19\x64\x61\x68\x6a\x2a\x7a\x9d\x21\xc8\x03\x41\xe1\
+\x91\x10\xf8\x7b\xcf\x9c\xbb\x38\xf8\xde\x61\x54\x42\x70\x43\x81\
+\xe0\xc6\x55\x6e\x37\x2e\xb7\x8b\xe2\x6b\x57\x39\x70\x60\x3f\x7f\
+\xfe\xd3\xdb\x20\xe5\x8b\x79\xc0\x41\xb9\x6b\x68\x7a\x3f\x7f\xb5\
+\xb4\x76\xf3\x9a\x0d\x3b\x41\x6c\x47\x4c\x1e\x0f\x3a\x0d\xe8\x81\
+\xd6\x46\x84\xd2\x72\x0c\x51\x89\xec\xff\xed\x03\x6a\xad\x46\xf8\
+\x2f\x20\x0a\x18\x0d\x3c\xf0\xe8\x63\x2b\xba\x80\x15\x90\x48\x93\
+\xaf\xdc\x9c\xf1\x6c\xda\xb8\x0e\xd1\xe7\xe5\xcc\xe7\x27\x83\xea\
+\x3a\x2e\x04\x84\xc0\x07\x41\x80\xb1\x59\xd9\x12\x58\x01\x04\x41\
+\xaa\x93\xdb\x74\xf6\x81\xf8\x84\x78\xc6\x8c\x19\xc3\xac\xd9\x73\
+\xd8\xf5\xe6\x1f\x59\xbe\xfc\x71\x00\x1d\x52\xb2\x8c\x93\x7d\x0a\
+\xb7\xf1\x38\x75\xf6\x62\xd9\xb4\xbc\x6c\x5b\xea\x88\xd1\x99\xa0\
+\xd1\x21\x34\x3a\xa5\x1c\x59\xd3\x08\xd6\x68\xec\x83\xcd\xf8\x9a\
+\x1d\xb6\xe3\x05\x95\x56\xe0\xf6\x41\x16\xcb\x3f\xfc\xe6\xf5\x37\
+\xd1\xe9\x74\x41\xce\xa3\x00\x20\x08\x02\x47\x0e\x1f\x62\xd2\xc4\
+\x3c\x6c\x36\x1b\x71\x71\x71\x58\x63\xe2\x82\xea\x3b\x40\x28\x02\
+\x75\xf5\x5a\x11\x05\x9f\x9f\xe6\x95\x97\xb7\x61\xb7\xdb\x49\x1d\
+\x36\xac\x43\xf9\x82\x22\x08\x84\x04\xc1\x64\x32\xb1\x6f\xdf\x5e\
+\x90\xe8\xfa\x1e\x69\x19\xf4\x87\x5b\xc0\x7d\xc0\xe2\x87\x57\xed\
+\xf1\x54\xbb\x8b\x21\x26\x15\x06\x25\x48\xb1\xd2\x8a\x08\x85\xc5\
+\xe0\x87\x4d\xcb\x47\x73\xcb\xd8\x98\x5f\x02\x8b\x17\x2d\x5a\x82\
+\xd9\x1c\x15\xc4\x50\x10\x80\xc0\xd5\xe0\x69\x20\x2d\x2d\x0d\x41\
+\x10\x88\x8b\x1f\xdc\xc1\xa2\x0c\x30\x1c\x8b\x65\xd7\x4b\xc9\xc9\
+\xce\xe4\x99\x4d\x1b\x19\x3a\x74\x48\x10\x48\xa9\x8d\x52\x1d\x9d\
+\x41\x28\x2c\xbc\xa2\xc4\x54\x0f\x24\x84\x93\xb4\x6c\x57\xdd\x55\
+\x8d\xab\x97\x3c\xbe\x03\xfc\x4d\x88\x83\x73\x41\xa7\x93\x40\xfb\
+\x5a\x10\x8a\xdc\x68\x35\x2a\xf6\x6e\xbf\x45\x30\x99\x34\xba\x87\
+\xe6\x2d\x88\xc8\x90\x32\x08\x8b\x16\x2f\x61\x58\xda\x48\xd2\xd2\
+\x33\x31\x9b\x07\x29\xda\x84\x91\x69\x80\xc5\xc2\xc2\xcb\x68\xb5\
+\x5a\x00\xf4\x7a\x43\x50\x1b\x84\x60\x96\x95\x41\x38\x78\xf0\x80\
+\x8c\xc5\x81\xb4\x6e\x1b\x22\x49\x5a\xb6\x2f\xaf\x7c\x5f\x99\x9b\
+\x96\x6c\x18\x9d\x9d\x93\x05\x86\x68\x04\x4f\x99\x24\x6d\x4f\x3b\
+\xb4\x97\x10\x97\x12\xc3\x20\xb3\x96\x3f\x1e\xb8\xc0\x3d\xf7\xde\
+\x1f\xcc\x52\xc8\x5c\x14\x00\xb5\x46\x8d\xde\x60\x44\xab\xd1\x46\
+\x9c\x8b\x42\x08\x08\x5b\x8c\x05\x8b\x65\x10\xa6\x28\x33\xf6\xc4\
+\x21\x81\xbe\xe1\x59\x96\x03\x50\x5d\x5d\xc5\xfa\x27\xf2\xe5\xb5\
+\xfe\x5d\xe0\x33\xa0\x1a\xf0\xf4\xb4\x27\x7d\x64\xe5\xc6\xfd\xae\
+\xd2\xe2\x2b\x10\x9d\x08\x31\x29\xd2\x8c\xd0\x0b\x08\xe7\x2b\xa0\
+\xb5\x85\x15\x0b\xd2\x69\xa9\xf9\x8c\xb7\xf7\xff\x77\x57\x19\x87\
+\x02\x88\xc0\x62\x77\x73\x71\xca\xd4\x3b\x18\x9d\x99\x45\x7a\xc6\
+\x4d\x18\x8d\xa6\x6e\xa4\xdc\xc9\xf2\xa1\xf7\xdf\x53\xae\xdf\x7f\
+\x0d\xdc\x6b\xbb\x93\xb4\x6c\x6e\x8f\xb7\x65\xe9\xcf\x97\xbe\x86\
+\xbf\xdd\x83\x98\x34\x16\x0c\x46\x49\xda\xb1\xc9\x08\x27\xce\x22\
+\x08\xb0\x6b\xcb\x78\xb6\x6f\xdd\x40\xd9\xf5\xd2\x2e\x0c\x45\x0e\
+\x42\x57\x19\x86\x03\xa0\xd1\x6a\xd1\xeb\x0c\xa8\x54\x21\x6d\xe4\
+\x00\x75\x8c\xd1\x59\x77\xe8\xd0\xfb\xb2\xff\x2e\xe0\x2b\xa0\x19\
+\x69\x71\xed\xd5\xe3\x61\xe1\xf5\x8a\xba\xe4\x28\x43\xeb\xb8\x49\
+\x13\xc7\x83\x21\x16\xa1\xbe\x54\x9a\xd3\x45\x5f\x82\x5e\xcb\xa0\
+\x94\x78\x92\xe2\x35\x3c\xff\xef\x87\x99\x37\xef\x9f\x10\x54\xaa\
+\x6e\x65\x4a\x28\xc0\xb0\x73\x31\x34\x0f\x10\x11\xa0\x32\x57\xb8\
+\xdc\x55\x3c\xb9\x6e\x8d\xcc\xf0\x7b\xc0\x49\xc0\x0d\x34\xf4\x86\
+\x61\xd9\xf2\x37\xbf\x74\xe8\xea\xd7\x17\xbf\x80\xa8\x58\x88\x1f\
+\x0e\xfa\x76\x48\x4d\x41\x38\x7d\x01\x3c\x1e\x1e\x9a\x99\x4c\xaa\
+\xf5\x2a\x3b\x7f\xb7\xa3\x0b\x8b\xa1\x32\x0d\x65\x91\x70\x2c\xf7\
+\xc0\x62\x38\x29\x0b\x02\x7c\x74\xf4\x28\x4d\x4d\x4d\xb2\xdf\x1f\
+\x05\xee\xb5\x72\x41\x6f\x01\x7b\x5a\xdb\x7c\x0b\x1f\xfa\xe7\xd7\
+\x7d\xad\x4d\xd5\x88\xf6\x9b\xc0\x68\x00\x5b\x34\x58\x35\x08\x9f\
+\x7c\x01\xa2\xc8\x6b\xcf\x66\xb3\xe7\xf7\x2f\x71\xf9\xf2\x37\x5d\
+\x59\x0c\x09\xc2\x8d\xb0\x48\x84\x31\x44\x44\x8e\x1e\x3d\x2a\xfb\
+\x5c\x89\xf4\x94\xd5\x82\xe2\xf0\xa2\xb7\x27\x1e\x00\xa5\x95\xd5\
+\x8d\xfa\xe6\xc6\x9a\xc9\x77\xfe\xe3\xad\x60\xd4\x22\x54\x9f\x07\
+\xbd\x0f\xae\xbb\x41\x50\x63\x4c\xb1\x33\x26\xc3\xcc\xaa\x4d\xfb\
+\x59\xb0\x70\x31\x1a\x8d\xba\xd7\x2c\x46\x0e\x42\xe4\x75\x5d\xee\
+\x2f\x2b\xa8\xac\xbc\x92\xd5\x2b\x97\xca\x72\x7e\x1f\xf8\x34\x00\
+\xbc\xa1\xaf\x0c\xcb\xb6\xff\xd5\x5d\x27\xf9\xf4\xe4\x09\xd0\x1b\
+\x10\xed\x19\x60\xd6\x40\xb2\x05\xe1\xdc\x37\x50\x5b\xcb\xf4\xdb\
+\x12\x98\x96\xd3\xc8\xd6\x2d\x2f\x84\x07\x18\x81\x45\x22\x82\x0c\
+\xcd\x03\x61\xea\x03\x6d\x4e\x7d\x5e\xa0\x94\xb3\x9c\x9d\x6b\x94\
+\x00\xfa\x0a\x38\x7f\xcc\x98\x31\x2c\x5a\xb1\x07\x4f\x7d\x0d\xd8\
+\x52\x20\xca\x06\xf6\x80\xb4\x8f\x15\x80\xdf\xc7\xd6\x75\x37\xf3\
+\xd1\x07\xbb\x38\x75\xea\x6f\x61\xe6\x59\xef\x58\x24\x02\x8b\x1d\
+\xf5\x04\xd7\xb7\xb6\xf9\x38\xf1\xc9\x71\xd9\xcf\x2a\xe0\x1c\x21\
+\x72\xee\x2b\xe0\x24\xb5\x5a\x3d\xff\xbe\xfb\x1e\x60\xee\xfc\xa5\
+\x2c\x5f\xff\x36\x88\x3e\xc4\xe4\x71\xd2\x03\x46\xb2\x15\x9a\xea\
+\x11\xbe\xf8\x1a\x83\x5e\xcd\xee\xad\xe3\x58\xb9\x62\x29\x5e\xaf\
+\x67\x40\x59\x0c\x9a\x0a\x8a\x64\x58\x5c\x5e\xcd\xbe\xbd\x3b\x65\
+\x5f\x3f\x46\x3a\x28\xa8\x09\x05\xd1\x17\xc0\x6b\xb4\x3a\x9d\xee\
+\xbe\xfb\x1f\x62\xc1\x82\x45\x14\x96\x19\x78\xe7\x48\x39\x68\x4d\
+\x88\x83\xc7\x82\x45\x0f\x09\x46\x28\xfc\x0e\x9c\x6e\xc6\x8d\xb1\
+\xb2\x68\xb6\x91\x0d\x4f\xad\x1f\x30\x16\xbb\x5b\xd7\xbf\xfe\xe6\
+\x12\x8d\x5e\xaf\xec\xab\x9c\x9d\xfb\x0d\xd8\x0c\x3c\x3a\x6f\xde\
+\x7c\x52\x87\xa5\x12\x1d\x1d\xcd\x8b\xff\xb2\x95\x55\xcf\x1e\xc7\
+\x55\x29\x82\x35\x05\x2c\x49\x60\x37\x83\x41\x44\x38\x71\x06\xda\
+\xda\xd8\xf0\xe8\x28\x0a\x2f\xbc\xcb\xa1\x43\xef\x0f\x08\x8b\x84\
+\xd4\xcb\x79\xa0\xa6\xbe\x85\x4f\x8e\xfd\x45\xf6\xb5\x1a\x38\x4b\
+\x18\x39\xf7\x05\xf0\x63\x2a\x95\xca\xba\x6a\x75\x3e\x82\x20\x60\
+\xb3\xc5\x91\x9c\x9c\xcc\xf2\xc7\xd7\xb3\x68\xf5\x11\x40\x83\x38\
+\x38\x07\x2c\x16\x30\x0b\xd0\xde\x88\x70\xea\x1c\x6a\xb5\xc0\xde\
+\x6d\xb7\xf0\xd4\xba\x95\xb8\xdd\xce\xb0\x2c\x76\x01\xd8\x0d\x8b\
+\xc1\x3b\xb3\xce\xfa\x92\x8a\x5a\xf6\xee\x7a\x5d\xf6\xf5\x28\x92\
+\x9c\x6b\xc3\x01\xe9\x0d\x60\x0d\xb0\x6a\xe6\xac\xd9\x8c\x1c\x31\
+\x12\x41\x00\x8d\x46\x4d\x42\x82\x9d\xbb\xef\xbe\x1b\xc1\x30\x82\
+\x37\xf6\x7d\x0b\x6a\x2d\x62\x72\x2e\x44\x6b\xa4\x63\x81\xe2\x12\
+\x28\xbd\x4e\xfa\xd0\x28\x36\x3e\x92\xc4\xca\x15\xcb\xc3\xb2\x48\
+\x18\x00\xe1\x58\x0c\xbf\xfd\x04\x9f\x5f\xa4\xf8\xda\x35\x3c\x9e\
+\x8e\x95\x27\xa2\x9c\x7b\x0b\x78\x3e\x30\x34\x7f\xcd\xda\x0e\x19\
+\x22\x08\x18\x8d\x46\xac\xd6\x18\x9e\x7d\xf6\x39\xb6\xec\x38\x47\
+\x51\x71\x1b\x98\x13\x20\x39\x47\x3a\x78\x35\x81\x70\xf2\x1c\x34\
+\x35\xf3\xc8\x43\x69\xe0\x3d\xc3\x9e\xdd\x6f\xf6\xc8\x22\x11\x58\
+\xec\x12\x80\x40\x9b\x72\xb7\x87\xe3\x1f\x1d\x92\x7d\xad\x01\xce\
+\x20\x1d\xed\x78\xc3\x81\xe9\x0d\xe0\xfc\xbc\xbc\x5b\xb9\x6d\xe2\
+\xa4\x2e\x32\x8c\x8d\x8d\x25\x21\x21\x9e\x4d\x9b\x9f\x67\xfe\xf2\
+\x43\xf8\xfc\x1a\xc4\x91\x33\xc0\x12\x2b\xb1\xac\x6a\x41\xf8\xf4\
+\x0b\x00\xde\x78\x71\x1c\xff\xba\x65\x23\xd7\xae\x15\xf5\x99\xc5\
+\x88\x0f\x19\x02\x5c\x77\xd6\xb3\xfb\x3f\xff\x43\xf6\x55\x96\x73\
+\x58\x76\x7b\x03\xf8\x2e\x20\x37\x7f\xed\xba\x90\x2f\x92\x1c\x50\
+\xa9\x54\x24\x24\xd8\x99\x7c\xfb\x64\x46\xde\x3c\x95\x97\x5e\x3b\
+\x0f\x2a\x1d\x62\xf6\x5c\x30\xaa\x24\xa6\x5d\x0e\x28\x2c\x22\x21\
+\xd6\xc0\xe2\x9f\x8d\xe6\xe9\xa7\x37\xf6\x99\xc5\xae\x41\x90\xea\
+\x3c\x8d\x6d\x54\xba\x1c\x4a\x39\x87\xdd\x6c\xf4\x05\x70\x7e\x7a\
+\x7a\x3a\x73\xe6\xfc\x8c\x48\x4b\x86\xde\xa0\x27\x26\xd6\xc6\x13\
+\x4f\xac\xe7\x0f\x07\x4b\x39\x75\xf6\x3a\x58\x86\x20\xa6\x4f\x96\
+\x58\x8e\x02\x5f\x51\x1d\x17\x2e\x8d\x23\x67\x54\x1e\xe6\x28\x73\
+\x9f\x59\x44\x01\x52\x90\x0b\x80\x12\x47\x03\x27\x3e\xee\x90\x73\
+\x2d\xf0\x05\xdd\xc8\xb9\x27\xc0\xb9\xc0\x5d\x6b\xf2\x9f\x40\xad\
+\x56\x75\xbb\x64\xc4\xc6\xc6\x60\xb5\x5a\xd9\xb2\xe5\x25\x7e\xb1\
+\xf6\x20\x1e\x6f\x2b\xa4\x4f\x83\x98\x24\x5c\x23\xee\xa7\x69\xea\
+\x16\x6e\x4a\x1f\x46\x7c\x8c\x19\x87\xa3\xa2\x6b\x46\xee\xe1\x81\
+\x5e\x09\x52\x36\xbf\x28\x52\xe1\x6e\x60\xd7\x1b\xaf\xc9\x45\xc7\
+\x90\xce\xe3\x22\xb2\xdb\x13\xe0\x7c\x9b\x2d\x8e\x85\x0b\x17\x76\
+\xbb\x24\xc8\x41\xb0\x27\xda\xc9\xca\xca\x66\xc6\xac\xf9\xac\x7b\
+\xe1\x30\xd5\x75\x3e\xce\xe8\x1e\x27\x7e\xec\x62\xa2\x8c\x06\x44\
+\xd1\x47\x7c\x4c\x14\x6e\xb7\x3b\x90\xf8\x42\xd6\xe4\x1e\x00\x86\
+\x9a\xb3\xaa\x11\x4f\x5d\x25\x75\xb5\x1d\xf8\x7a\x94\x73\x77\x80\
+\x87\x02\xf3\x57\xac\x5c\x89\x49\x3e\x56\x51\xee\x8c\xe8\x9a\x6c\
+\x74\x3a\x1d\xf1\xf1\x71\x2c\x5b\xb6\x8c\xcf\xbf\x6e\xe7\xe9\x2d\
+\x9f\x61\x8f\x4b\x04\x40\xf4\xfb\x69\x6f\x17\x51\xc7\x8d\xa6\xba\
+\xaa\x32\x2c\x8b\x7d\xb5\x52\x47\x03\x27\x8e\x76\xc8\xb9\x8e\x1e\
+\xb2\x73\x4f\x80\x57\x19\x8d\x46\xcd\x63\x8f\x2d\x0b\x2f\xe5\x08\
+\x32\xb4\x58\xad\x58\x2c\x83\xd8\xb6\x6d\x1b\x96\x94\x5c\x26\xcd\
+\xdf\xcc\x23\x4f\xef\xe0\x72\x89\x9b\x2b\x0d\xd1\xd4\xf9\x8c\x44\
+\x1b\x35\x88\xa2\xd8\x2f\x90\xb2\x35\xb7\xb4\x53\x55\xdb\xa4\xcc\
+\xce\xc7\x91\x7e\xeb\x0a\xbb\xd9\xe8\x09\xb0\x15\x78\xec\xe1\x87\
+\x7f\x41\x7c\x7c\x5c\x8f\x19\x35\xf4\x29\xc8\x6e\xb7\x93\x97\x97\
+\xc7\x8a\x15\x2b\xf8\xf0\xf0\x11\x86\xe7\x4c\xe5\xde\x5f\x6e\xe3\
+\x9d\x77\xde\xc3\x5b\x57\x49\x5a\x8a\x1d\xb7\xdb\xdd\x6f\xb0\x00\
+\xa5\xce\x06\x5a\x9b\xaa\xa9\xa9\xae\x92\x8b\xba\xdd\x6c\xf4\x64\
+\xeb\x55\x2a\x95\x78\xf9\xf2\x15\xb1\xad\xdd\x27\xb6\xb5\xfb\xc4\
+\x76\xe5\xe5\xf3\x8b\x3e\xe5\xe5\xf7\x8b\x7e\xc5\xa5\x34\x8f\xc7\
+\x23\x96\x94\x94\x88\x97\x2e\x5d\x12\xb7\x6f\xdf\x2e\x8e\x1a\x31\
+\x42\x8c\x36\x1b\xc5\x2f\xbf\xfc\x52\xbc\x11\xfb\xe8\x74\xb1\xb8\
+\x7e\xe3\x0b\xf2\x8f\xe3\xf5\xc0\x04\x20\xab\x3f\x60\x75\x40\xf9\
+\x83\x0f\x3e\xa8\x00\xe8\x0b\x06\xe8\x0b\x06\x18\x0a\x32\x9c\x79\
+\xbd\x5e\xb1\xb4\xb4\x54\xbc\x7c\xf9\xb2\xf8\xd6\x5b\x6f\x89\x5f\
+\x7d\xf5\x55\xbf\xc1\xba\x6b\x1a\xc5\x0f\x4e\x14\x89\x36\x5b\xbc\
+\x0c\xf8\x3d\x60\x3c\x90\xd2\x1b\x80\x9a\x90\xcf\xf3\x81\xa4\xfc\
+\xfc\xb5\x41\x73\x2c\x74\xba\xf5\x75\xfe\x99\x4c\x26\x4c\x26\x13\
+\x4d\x4d\x4d\x0c\x1b\x36\x0c\xbd\x5e\xdf\xa7\xfe\x4a\x2b\x75\x34\
+\xd0\xd6\x54\x43\x55\x55\xc7\xb4\xe8\x72\x50\xd7\x9d\x29\x01\x0b\
+\xc0\x93\x53\xa6\x4c\x61\xc2\x6d\x13\x08\x85\x74\x23\x49\x46\x36\
+\xa3\xd1\x78\x43\xfd\xdb\xda\xfd\x38\x2a\xbd\x9c\x3c\xfe\xa1\x5c\
+\xe4\x01\x4e\x03\x6d\x28\xce\xad\xba\x33\x25\xe0\x9f\x02\x99\x6b\
+\xd6\xac\xe9\x3c\x77\xfa\x81\x59\xb9\xcb\x03\xc0\xae\x9d\xaf\xca\
+\x45\x9f\x20\x2d\x45\xbd\x62\x17\x82\xb3\xf4\x93\x99\x99\x99\xdc\
+\x73\xcf\x3d\x3f\x48\xb0\x20\x6d\x25\xdb\x9a\x6b\xa9\xaa\xec\x90\
+\x73\xaf\x36\x1b\x4a\x93\x01\x5b\x81\xa9\x33\x67\xce\xfc\xc1\x82\
+\xad\xf7\xb6\x52\xe7\x69\xe1\xb3\x4f\x8e\xc8\x45\x5e\xe0\x14\x92\
+\x9c\x3d\xbd\x1d\x47\x06\x2c\x02\xfe\xb3\x67\xcf\x22\x8a\xe2\x80\
+\x3a\x3a\x50\x56\xe2\x68\x40\xa5\x12\xd8\xb5\xf3\xd7\x72\x91\x52\
+\xce\xbd\x76\x5a\x06\x5c\x07\xbc\x7b\xf4\xe8\x51\xe6\xce\x9d\x4b\
+\x41\x41\x01\x3e\x9f\x6f\x40\x1d\xbe\x11\xf3\xfb\x45\xca\x9c\x0d\
+\xf8\x9a\xeb\x70\xbb\x9c\x72\x71\xbf\x36\x1b\xca\xa4\xb5\x04\x18\
+\x7c\xe0\xc0\x81\xbc\x03\x07\x0e\x60\x34\x1a\xc9\xcc\xcc\x24\x2b\
+\x2b\x8b\xb1\x63\xc7\x76\xdc\x13\x12\x12\x06\x00\x42\xdf\xcc\x51\
+\xe5\xa5\xad\xdd\xcf\xe9\x93\xff\x23\x17\x35\x02\x7f\x43\xda\x4e\
+\xf6\x5a\xce\x40\x97\xd5\xc7\x00\x2c\x03\xee\x40\x7a\x59\x25\x95\
+\x90\xb5\xda\x6e\xb7\x93\x95\x95\xd5\x11\x80\x9b\xc7\x66\x93\x91\
+\x31\x82\xe8\x68\x53\xf0\x9b\x36\x03\x68\xa7\x2f\x56\x50\x55\xd7\
+\xcc\x92\xb9\x93\x70\x3a\x2a\x00\x8e\x00\x9b\x90\x7e\x46\x29\xee\
+\xcb\x58\xe1\x3c\x34\x20\x01\x35\x23\xbd\x59\x97\x86\xf4\x36\x5c\
+\x06\x30\x22\x70\x8f\x57\x76\xd0\xeb\xf5\xdc\x3a\xf1\x27\x64\x65\
+\xe5\x32\x62\xe4\x28\x86\xa5\xa5\x93\x9c\x32\x14\x9b\xcd\x86\xc9\
+\xa0\xc5\x64\xd0\x60\xd4\x6b\x50\xa9\xfa\x1e\x10\x6f\x53\x1b\xc7\
+\x0a\x4a\x11\xdb\x1a\x98\x73\x47\x8e\x5c\xfc\x24\xd2\x61\xfb\xb7\
+\x48\x5b\xcb\x5e\x5b\x77\x1e\x18\x90\x40\x1b\x03\x97\x89\xce\x1f\
+\xdf\x2c\x74\x82\x97\x03\x31\x3c\xd0\xae\xc3\xec\x89\x49\x4c\x99\
+\x36\x83\xec\x71\xb7\x32\x3c\xe3\x26\x62\x62\xe3\x30\x47\x5b\x30\
+\x19\xf5\x18\x0d\x1a\x4c\x7a\x0d\xc6\x6e\x02\xd2\xd2\xea\xe3\xcc\
+\x37\x4e\x6a\xea\x9b\x39\x73\xe2\x1d\x9e\x7f\x66\x2d\x48\x72\xbe\
+\x13\x29\x4b\x5f\xa0\x0f\x09\xab\x27\xc0\xe1\x4c\x47\x67\x00\xe4\
+\xcb\x10\x18\x47\x05\x0c\x09\x13\x88\x21\x84\x3c\x95\xe5\x8e\xcb\
+\xe3\xb6\xc9\xd3\xc8\xbc\x39\x97\x21\x29\xe9\x98\xcc\x31\xb4\xf9\
+\x55\xe8\xb5\x2a\x8c\x06\x2d\x06\x9d\x9a\x76\x9f\x9f\xea\xba\x66\
+\x7c\x7e\x11\x9d\x5a\x64\xee\xac\xf1\xd4\xd7\xd7\x81\xf4\x86\xdd\
+\x33\xf4\x43\xce\xfd\x01\x1c\x69\x0c\x03\x5d\x03\xa1\x0b\xd4\x1b\
+\x91\xa6\xc5\x48\x82\x03\x61\x51\x0e\x62\x8a\x8a\x62\xca\xd4\x19\
+\x8c\xcf\x9b\x44\xc6\xc8\x31\xd8\x12\x06\x23\x08\x02\xe5\xa5\xdf\
+\xf3\xdc\x86\x95\x54\x54\x94\x81\xf4\xea\xc2\x22\xa0\x88\x7e\xc8\
+\x59\x76\xf6\xef\x65\x6a\xa4\x69\x10\x1a\x08\x99\xed\x78\x82\xf3\
+\x42\x06\x52\x60\xb4\x11\xc6\xbb\x8e\xf4\x7e\xe7\x39\xa4\xf5\xf7\
+\x2b\xfa\x28\x67\xf8\xfb\x02\x8e\x64\x7a\xba\x06\x41\x1f\xf0\x45\
+\x83\x74\xbc\x94\x81\x94\x13\x62\x91\x36\x16\xa7\x91\x80\xfa\x90\
+\xce\x9d\xbf\xa7\x1f\xec\xc2\xff\x0d\xe0\x70\xa6\x42\x9a\x16\xa1\
+\x8a\x50\x2e\x89\x7e\xa4\x27\xa2\x32\x02\x6f\xe4\xf4\xc7\x7e\x28\
+\x80\x23\x99\x06\x89\x7d\x90\x40\xfa\xbb\x69\xfb\xa3\x85\xb3\xff\
+\x05\xf6\x57\xc4\xf3\x81\x08\x92\xde\x00\x00\x00\x00\x49\x45\x4e\
+\x44\xae\x42\x60\x82\
+\x00\x00\x0a\x5c\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x3c\x00\x00\x00\x3c\x08\x06\x00\x00\x00\x3a\xfc\xd9\x72\
+\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\
+\x00\x00\x0a\x13\x49\x44\x41\x54\x68\x81\xed\x9a\x7b\x70\x54\xf5\
+\x15\xc7\x3f\x77\x93\x7d\xb2\x98\x84\x4d\x42\x12\x30\x88\x09\xaf\
+\x20\xc1\xc0\x0c\x20\xa8\xe0\x88\xf2\x4c\xe9\x08\x0c\xcd\x88\xa8\
+\x69\x09\x0a\xc1\x24\xd4\x89\xb4\xea\x58\x67\x3a\xd3\x3f\x3a\xd3\
+\xe9\xbb\xd2\x0e\x3a\xb5\xc3\x74\xa6\x6d\x8a\xad\xd2\xd6\xb6\x12\
+\x20\x60\x45\x28\xd3\x6a\x6b\x35\x3e\x2a\x84\x24\xfb\xc8\x7b\x13\
+\x12\x92\xec\xdd\xfe\xf1\xdb\x7b\x73\xef\xcd\xbe\xb3\x04\x3a\xc3\
+\x77\xe6\xee\xdd\xdf\xf9\xbd\xce\xf7\x9c\x73\xcf\xef\xb7\x77\x7f\
+\x70\x13\x37\x71\x13\x37\xf1\x7f\x84\xb4\xeb\x34\xaf\x1d\xf8\x0a\
+\xf0\x28\x30\x00\x5c\xbc\x4e\x7a\x4c\x0a\x9c\xc0\x39\x20\x18\xba\
+\xae\x02\x4b\xe2\xe8\x67\x03\xbe\x08\x6c\x06\x4c\xd7\x4c\xbb\x6b\
+\x80\x1f\x22\x88\xbe\x07\xd4\x00\xcf\x03\x47\x62\xf4\x29\x06\x3e\
+\x61\xcc\x48\x2f\x27\x3b\x79\x7a\xb2\x1d\x63\xc0\x89\xf0\xc6\x5a\
+\xa0\x10\x18\x06\x3c\x40\x17\x50\x85\xf0\x70\x3d\x70\x19\x68\x03\
+\xbe\x0c\x64\x01\xdd\x11\x74\x6c\x00\x8a\x80\x0f\x81\xe3\xc0\x3a\
+\x60\x31\xf0\xcf\x44\x15\x93\x12\xed\x10\x03\x66\xa0\x16\x78\x26\
+\x3b\x3b\xc7\xb5\x6e\xfd\x26\x32\xb3\xb2\xe8\xee\xea\xc2\xe7\xf5\
+\xd0\xfc\xf1\x47\xb4\x5c\x12\x8f\xab\x2c\xcb\xda\x7e\xbd\x80\x17\
+\x61\x80\x56\x84\x71\x94\x7b\x31\xf0\x22\xf0\x6d\xe0\x20\x20\x03\
+\x05\x40\x25\xf0\xcd\x44\x15\x4c\x25\xe1\x59\xc0\xd1\xcc\xcc\xac\
+\xb2\x83\x5f\x7f\x81\x1d\x5f\x7a\x18\xab\xd5\xa6\x6b\xf0\xca\xe1\
+\x43\xb8\x3d\xed\xd4\x3f\xf3\x3c\x1d\x3e\x2f\x1e\x8f\x1b\x8f\xd7\
+\x83\xc7\xdd\x8e\xd7\xe3\xc6\xe3\x75\x8b\xef\x5e\x2f\x1e\x77\x3b\
+\x3e\x9f\x97\xd1\xd1\x51\xed\x10\x03\x08\xa3\x78\x80\x7e\xa0\x59\
+\x53\x6e\x05\xdc\x88\x88\xe9\x8d\xa4\x64\xaa\x42\x7a\x26\x70\x7a\
+\xf9\x8a\x95\x33\x7f\xf2\xd2\x2b\xe4\xe5\x17\x84\x6d\x24\xcb\x32\
+\x2b\x56\xac\x22\x2d\x2d\x8d\xe9\x79\xf9\xe4\xe5\xe7\xab\x75\x12\
+\x80\x24\xe9\xca\xb2\x2c\xf3\xc0\xfd\x77\xb3\xb7\xba\x86\x8c\x8c\
+\x0c\x7c\x5e\xdf\x94\x76\x77\xdb\x3c\x9f\xd7\x3b\xaf\xbd\xad\x15\
+\x9f\xcf\xbb\xb1\xad\xad\x95\x8e\x0e\x1f\xc3\xc3\xc3\xda\xa9\xba\
+\x81\x3f\x01\xdf\x02\xde\xd7\x56\xa4\x8a\xf0\x77\xf2\x0b\x66\xcc\
+\x3c\xf2\xcb\xa3\x38\x1c\x8e\x88\x8d\x0a\x66\xcc\x20\x23\x33\x93\
+\x4f\x3f\x69\xa6\x70\xd6\x2c\xac\x16\x9b\x2e\xc6\x24\xf5\x43\xdc\
+\xd2\xd2\xd2\x98\x3a\xf5\x16\xb6\x6e\xdb\x81\x49\xd2\x37\x94\xd0\
+\x37\xee\xf4\xf9\xf0\xfa\xbc\x5c\xfc\xfc\xbf\x34\x34\xfc\x2a\xeb\
+\xe8\x6f\x7f\x53\x01\x6c\x05\x76\x00\xaf\x29\x5d\x53\x91\xde\xe7\
+\x03\x5b\xab\xf6\xec\x1b\x47\x56\x42\x38\x4d\xb9\xca\xee\x5c\xca\
+\xb3\x5f\x7b\x9a\x60\x60\x80\xf3\xef\x9e\xd1\xd5\xa9\x17\x12\x52\
+\xa8\x20\x49\xb0\xa8\x74\xb1\x20\x2b\x81\x24\x89\x3a\xa5\xcd\x58\
+\x1f\xc8\xc9\xcd\x61\xe1\xc2\x85\x6c\xdc\x54\xce\xe1\x97\x7f\xc1\
+\xde\xbd\xfb\x01\x2c\xc0\xcf\x81\xec\x54\x12\x3e\x70\x4b\x46\x86\
+\x69\xe7\x23\x95\x82\xa4\x46\x79\x34\x04\x24\x49\xe2\xed\xb7\x9b\
+\xd8\x5f\xbd\x17\x80\xc2\xc2\x99\x3a\x82\x63\x97\xde\x50\xb7\x17\
+\x15\x71\xe8\xa5\x1f\xf1\x70\xc5\x36\x4e\x37\x9d\x18\x1b\x5b\x6d\
+\x13\x32\x90\xc1\x08\x9b\xcb\xb7\x28\xfa\xdd\x02\x3c\x84\x48\xa8\
+\x13\x0e\xe9\x3c\x60\xe7\xae\x5d\x95\x38\x9d\x53\x84\x12\x63\xf1\
+\x16\x2a\xa3\x96\xfd\xfd\x7e\x16\xcc\x5f\x8c\x24\x49\x64\xe7\x14\
+\x08\x2f\xea\x1a\x86\xfa\x2b\x22\x09\x5a\x2f\xb7\xb0\xee\xc1\xfb\
+\xb9\xf7\x9e\x15\x38\xa7\x66\x84\xc8\x4a\xe3\xc6\xd6\x97\x25\x9a\
+\x9b\x3f\xd2\xea\xd9\x07\xe4\x02\xad\x13\x25\xbc\xcf\x6c\xb1\xd8\
+\x77\x57\xed\x0b\x59\x99\x30\x04\x42\x9f\x12\xec\x7a\xb4\x92\xa1\
+\x2b\x7e\xac\x36\x87\xc8\xe0\x61\x9e\x45\xe3\xb2\xd1\xdc\xfc\x21\
+\x9b\x37\xad\x07\xc0\x6a\xb5\xa9\xf3\xa8\xd3\x18\x0d\x10\xfa\xf2\
+\xda\x6b\x0d\x4a\xc9\x8d\xd8\xb4\xd8\x60\x62\x1e\x76\x02\x4f\x6e\
+\xdd\xba\x83\xbc\xbc\x3c\x83\xa5\x75\x6c\xd5\x2a\x8b\xc5\x8c\xc5\
+\x32\x6d\x9c\x17\xc7\x13\x18\xeb\x55\xb5\xbb\x0a\xbb\xdd\x8e\x63\
+\x8a\x93\x69\xae\x1c\x9d\x17\x0d\x5f\xd5\x72\x67\x57\x27\xa7\x9b\
+\x4e\x29\xa2\xe3\x88\xdd\xd9\x15\x98\x18\xe1\xc7\x25\x49\x72\xed\
+\xab\xae\x19\xb3\xb2\x81\x20\x3a\x71\x64\x2f\x4a\x06\xad\xb5\x46\
+\x58\xbd\x66\x2d\x72\x30\x80\xd9\x6c\x0d\x25\x2c\x0d\x33\x6d\x2f\
+\x4d\x84\x1d\x7b\xe3\x75\xed\xfa\xfd\xd7\xd0\xbd\x07\x92\x27\x9c\
+\x0e\xd4\xad\x5d\xbb\x8e\x79\xf3\x17\x18\x26\x4e\x82\xa0\xbe\xa8\
+\x5b\x93\xd3\xcd\x66\x24\xcc\x11\x09\x86\x9b\xfb\xd8\xb1\x37\x14\
+\x89\x17\xf8\x17\x30\x04\x0c\x2a\x8a\x27\x83\x87\x80\xd9\xfb\xf6\
+\xd7\xaa\xca\x46\x23\x69\x0c\x53\x83\xbe\xe1\xc3\x54\x3f\x9c\xae\
+\x53\xc4\x7a\x24\xbc\xbe\x0e\x4e\x34\xbe\xa5\x08\x8e\x23\xb6\xa2\
+\xea\x1e\x3d\x59\xc2\xf5\x77\x96\x2d\xe1\xee\xbb\xef\x55\x67\x4c\
+\x24\x4c\xd5\x1a\xa3\x97\x12\xf0\xa2\x76\x60\x6d\xf9\xad\xc6\x46\
+\x06\x07\x07\xd5\x62\xe8\xde\xa3\x08\x92\x21\xbc\x06\x58\x5a\xbd\
+\xbf\x4e\xef\xa5\x49\xf4\x62\xa4\x08\x92\x83\x41\x1a\x1b\x1b\x15\
+\x71\x07\xe2\xd7\xd4\x55\x42\x09\x0b\x92\x23\x5c\x7f\xdb\x6d\xb3\
+\x29\x2f\xdf\x12\xdb\x8b\x51\x9e\xd5\x88\x04\x43\x85\x68\x04\xc7\
+\xd5\x87\x86\x69\x6b\xeb\xe0\xe8\xaf\xd5\x9f\xd6\xe3\xc2\x19\x12\
+\x27\x5c\x02\xac\x7f\xe2\xc9\x6a\xcc\x66\x73\xd4\x85\xdf\xf0\x55\
+\x4f\x2a\x0e\x2f\x46\x5e\xae\x22\xd4\x03\xef\xbc\x7b\x4e\x1b\xce\
+\x4a\x76\x9e\x10\xe1\x7a\x97\xcb\x25\xed\x7c\x64\x97\x6e\x7b\x97\
+\x70\x98\x86\x0a\xc9\x78\x51\xd7\x44\x33\xe1\xf0\xf0\x28\x4d\xa7\
+\x4e\x2a\x82\x4e\xe0\x1f\x18\xc2\x19\x12\x23\x9c\x0f\x54\x54\x56\
+\xee\xc6\xe9\x74\x72\xbd\xbc\xa8\x1d\x50\x5b\xbe\xd8\xd6\xc5\x91\
+\x57\x0f\x29\x95\x61\xc3\x19\x12\x23\x5c\x6b\xb3\xdb\x2d\x55\x7b\
+\xf6\xa2\xdd\x2f\x4f\xa6\x17\x23\x1b\x17\xfe\xfd\xc1\x7f\xb8\x32\
+\x30\xa0\x48\x94\xec\x9c\x34\x61\x27\x50\xb5\x63\x47\x05\xb9\xd3\
+\x73\xc3\x2f\x29\x9a\x2f\xd7\xca\x8b\x91\xea\xbb\xfa\x86\x38\x75\
+\xe2\xcf\x8a\xb0\x0b\xb8\x40\x98\x70\x86\xf8\x09\xef\x31\x99\x4c\
+\x99\x4f\xd5\xd4\x45\xdf\xde\x25\xe1\xc5\xb8\x08\x6a\x1a\x86\x9b\
+\xfb\x52\x7b\x0f\xaf\x1e\xfe\xb1\x52\xd3\x88\x08\x67\x75\xed\xd5\
+\x22\x1e\xc2\xe9\xc0\x53\x1b\x36\x6e\x62\xee\x9c\xb9\x61\x08\xe9\
+\x17\x7e\x23\xa1\x44\xbd\x68\x24\x64\x24\x69\x34\x66\x20\x10\xe4\
+\xe2\xe7\x9f\xd3\xdf\xef\x57\xa4\x11\xc3\x59\x21\x13\x0b\x15\x40\
+\x61\x5d\xed\x01\xdd\x8f\x04\xed\xc4\x46\x82\x46\x59\x2a\xbc\x18\
+\xb6\x1e\x68\xf3\xf9\x39\xf9\xd6\x31\xa5\xd8\x0d\x9c\x47\xbc\x16\
+\x1e\x20\x0c\xe2\x21\x5c\xb7\x6c\xd9\x72\xee\x5a\xb9\x4a\x27\x8c\
+\xdf\x8b\xe3\xb3\x79\xa2\x5e\x94\x0c\xd6\xd1\xd6\x5f\xf6\xf4\xf1\
+\xca\xcf\x7e\xa0\x14\x95\x70\x0e\xeb\x5d\x88\x4d\x78\x1d\x50\x56\
+\x77\xe0\xe9\xd4\x24\x1b\x4d\xc3\x44\xbc\x38\x3e\xf1\x09\x81\x7f\
+\x60\x98\x0e\xaf\x5b\x1b\xce\x61\x37\x1b\x5a\xc4\x22\x5c\x57\x54\
+\x54\x44\x79\xf9\x17\x88\x9e\x71\x63\x7b\x31\x9a\x97\x62\x79\x51\
+\xcc\x65\x94\xc0\x25\xb7\x9f\xa6\xe3\x6a\x38\xf7\x00\x7f\x27\x4a\
+\x38\x43\x74\xc2\x65\xc0\xba\xda\xba\xaf\x92\x96\x66\x1a\xd3\x3d\
+\x45\x5e\x34\xa6\xba\x48\x5e\x8c\x04\x39\x18\xa4\xdd\xe7\xe7\xf0\
+\x4f\xbf\xaf\x88\x4e\x00\x01\xa2\x78\x17\xa2\x13\xae\x73\xb9\xb2\
+\xd9\xb9\x73\xa7\x9a\xac\xa2\x87\xe1\xc4\xbc\x18\x8b\xa0\x11\x9e\
+\xce\x2b\xf4\xf7\x76\xd0\xdb\xa3\xf2\x8b\x19\xce\x10\x99\x70\x21\
+\x50\xb1\xaf\xba\x1a\x87\xdd\x71\xdd\xbc\x18\x0d\x2d\x6e\x3f\x4d\
+\x8d\x6a\x38\xf7\x12\x23\x3b\x2b\x88\x44\xf8\x29\xbb\xdd\x9e\xbe\
+\x67\xcf\x13\x63\x4a\xc6\xe5\x45\x29\x8c\x57\xb5\xd5\xc9\x13\xd4\
+\x62\xe8\xea\x28\x9d\x3d\x83\xda\xec\x7c\x12\x18\x25\xc2\x66\x43\
+\x8b\x70\x84\x33\x81\x3d\x8f\x3d\xf6\x38\x39\x39\xd9\x24\xb4\x64\
+\x90\x5a\x2f\x46\x42\x8b\xc7\xcf\xf0\x60\x17\xdd\x5d\x9d\x8a\x28\
+\xea\x66\x43\x8b\x70\x84\x77\x9b\x4c\x26\x67\x4d\x4d\xcd\xf8\x77\
+\xcd\x30\x69\x5e\x8c\x86\x16\xb7\x9f\x33\x8d\x7f\x54\x8a\x7e\xe0\
+\x5d\x60\x04\xf1\x8f\x62\x42\xb0\x00\x6d\xdb\xb6\x6d\x0b\x8e\x8e\
+\x06\xc4\x15\x08\x04\x03\x01\x59\x77\xc9\xb2\xfe\x9a\x4c\xf8\xba\
+\xaf\x04\xff\xd0\xf4\x59\xd0\xe5\xca\x51\x4e\x03\xbc\x0e\x2c\x05\
+\x6e\x8d\x87\xa0\xd1\xc3\x15\x40\x7e\x5d\xdd\x01\x9d\xa7\x26\x23\
+\x4c\xe3\x45\x8b\xdb\xcf\xc8\x60\x37\x9d\x9d\x3e\x45\x34\xee\x45\
+\x5d\x34\x68\x09\x4b\x40\xfd\xea\xd5\xab\x59\x71\xd7\x8a\xb8\x16\
+\xfe\xc9\xc6\xc8\xa8\x8c\xbb\x63\x80\x33\x27\xd5\x70\xee\x07\xce\
+\x22\xc2\xd9\x1f\xb1\xa3\x06\x5a\xc2\xeb\x81\x92\xda\x5a\xf1\xae\
+\xf9\x46\x20\x68\x44\x9b\x57\x3c\xa2\x87\x0f\x7d\x4f\x11\x9d\x42\
+\x2c\x45\x71\x79\x17\xf4\x7f\x97\xd6\x97\x94\x94\xb0\x65\xcb\x96\
+\x1b\x92\x2c\x88\xad\xe4\xc8\x50\x0f\x9d\x1d\x6a\x38\xc7\xb5\xd9\
+\xd0\x42\x21\x9c\x09\xac\xd9\xb0\x61\xc3\x0d\x4b\xb6\x6f\x60\x98\
+\xde\xfe\xab\xfc\xed\xd4\x9b\x8a\x68\x00\x78\x87\x04\xb3\xb3\x42\
+\x38\x08\xc8\x17\x2e\x5c\x20\x18\x0c\xa6\x54\xd1\x54\xe1\x92\xdb\
+\x8f\xc9\x24\x71\xf8\xd0\x77\x15\x91\x36\x9c\xe3\x56\x5a\x21\xdc\
+\x0b\xfc\xbe\xb1\xb1\x91\xed\xdb\xb7\x73\xee\xdc\x39\x02\x81\x40\
+\x4a\x15\x9e\x08\x64\x39\x48\xab\xc7\x4f\x60\xa8\x17\x9f\xd7\xa3\
+\x88\xe3\xde\x6c\x68\xa1\x4d\x5a\x95\x40\x41\x43\x43\xc3\xb2\x86\
+\x86\x06\xec\x76\x3b\x25\x25\x25\x94\x96\x96\xb2\x68\xd1\x22\xf5\
+\x9e\x9b\x9b\x9b\x02\x0a\x89\xc1\xdd\x39\xc0\xc8\xa8\xcc\xd9\x33\
+\x7f\x51\x44\x57\x80\xb7\x11\xdb\xc9\x84\x36\x1b\xc6\x07\xd6\x06\
+\x3c\x81\x38\x41\x37\x1f\x71\xf6\x4a\xb7\x56\x4f\x9f\x3e\x9d\xd2\
+\xd2\x52\xd5\x00\x77\x2c\x5a\x4c\x71\xf1\x1c\xa6\x4e\x75\xe8\x4f\
+\xda\xa4\x10\x67\xdf\x6f\xa7\xb3\x77\x88\xca\xed\xab\xf0\xb8\xdb\
+\x01\xde\x04\x9e\x45\xfc\x7f\x74\x31\x91\xb1\xc2\x69\x68\x43\x10\
+\x75\x22\x0e\x82\xcc\x46\x9c\x86\x2b\x06\xe6\x84\xee\x39\xda\x0e\
+\x56\xab\x95\xe5\x2b\xef\xa5\xb4\xb4\x8c\x39\x73\xe7\x71\xdb\xec\
+\x22\x66\xde\x5a\x88\xcb\xe5\xc2\x61\x33\xe3\xb0\xa5\x63\xb7\xa6\
+\x63\x32\x25\x6e\x90\x81\xc1\x11\x4e\x9c\x6b\x21\x38\xe2\xa7\x7c\
+\xed\x9d\x8a\xb8\x1e\xf1\xb2\xfd\x63\xc4\xf9\x8d\xb8\x11\x4d\x03\
+\x1b\x82\xb4\x3d\x74\x39\x18\x3b\x6e\x9c\xc1\x18\x79\xc5\x10\xb7\
+\x87\xda\xa9\x98\x9e\x97\xcf\xea\xfb\x1e\x64\xf1\x92\xe5\xdc\x5e\
+\xbc\x80\xac\x69\xd9\x38\xa7\x66\xe0\xb0\x5b\xb1\xdb\xd2\x71\x58\
+\xd3\xb1\x47\x31\xc8\xd5\xe1\x00\xe7\x3f\xf0\xd0\xdd\x37\xc4\xf9\
+\xa6\xdf\xf1\xe2\x73\x07\x40\x84\xf3\x03\x88\x2c\xfd\x1e\x09\x24\
+\xac\x58\x84\xc3\xc1\xc2\x98\x01\x94\xcb\x16\x1a\xc7\x04\xcc\x08\
+\x63\x88\x19\x18\x8e\x47\x95\x2d\x59\xc6\x5d\xf7\xdc\x47\xc9\x1d\
+\x65\xcc\xb8\xb5\x08\x87\x33\x8b\x11\xd9\x84\xd5\x6c\xc2\x6e\x33\
+\x63\xb3\xa4\x31\x1a\x90\xe9\xea\x1d\x22\x20\x07\xb1\xa4\x05\xd9\
+\xbe\x71\x29\x7d\x7d\xbd\x20\x4e\xd8\x3d\x47\x12\xe1\x9c\x0c\xe1\
+\x48\x63\xd8\x18\x6f\x08\x4b\xa8\xde\x8e\x78\x2c\xe6\xa2\x37\x44\
+\x86\x76\x10\xc7\x94\x29\xac\x5e\xf3\x20\x4b\x97\xad\xa2\x78\xee\
+\x42\x5c\xb9\x05\x48\x92\x44\x5b\xcb\xa7\xbc\x70\xb0\x9a\xf6\xf6\
+\x56\x10\x47\x17\x76\x01\x9f\x91\x44\x38\x2b\xca\x5e\x2b\xa4\x21\
+\x1e\x03\xa3\x21\x14\x6f\xe7\xa0\xcf\x0b\xc5\x08\xc3\x98\x23\x8c\
+\x77\x19\xf8\x06\xe2\x5f\xc1\x61\xc4\xd9\x8d\x84\x37\x0d\xd7\x63\
+\x5b\x65\x65\xbc\x11\xac\x21\x5d\xd2\x11\xaf\x97\x8a\x11\x39\x61\
+\x1a\x62\x63\x71\x16\x41\x34\x80\x78\xef\xfc\x29\x49\x78\x17\xae\
+\x0f\xe1\x70\x30\x21\x1e\x0b\x63\x44\x68\x97\x44\x19\xf1\x8b\xa8\
+\x95\xd0\x89\x9c\x64\x70\xa3\x10\x8e\x84\x74\x84\xf7\x41\x90\x94\
+\xa3\xb4\xbd\x89\x70\xf8\x1f\x6f\xd3\x5a\xa4\x89\xb6\x97\x21\x00\
+\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
+\x00\x00\x0c\xcd\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x3c\x00\x00\x00\x3c\x08\x06\x00\x00\x00\x3a\xfc\xd9\x72\
+\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\
+\x00\x00\x0c\x84\x49\x44\x41\x54\x68\x81\xdd\x9a\x79\x70\x5d\xc5\
+\x95\x87\xbf\x7b\xaf\xde\xd3\x2e\x6b\x97\x6c\x79\xb7\xb1\x01\xd9\
+\xd6\x93\xb5\xd8\xb2\xc7\x20\x62\x0a\x08\x10\x86\x4a\xc5\x13\xa6\
+\x26\x95\x0c\x0c\x90\x02\xb2\x18\x02\x43\x91\x09\x10\x32\x04\x53\
+\x18\x88\x03\x66\x42\xd8\xd7\x78\x52\x09\x26\xb1\x87\x0a\x83\x0d\
+\x98\xc1\xbb\x2d\x24\x79\x91\x64\x59\xd6\xbe\xeb\xe9\x49\x6f\x5f\
+\xee\xbb\xdd\xf3\xc7\x95\xc1\xb2\xb6\x27\x4b\x46\x76\x7e\x55\xfd\
+\x87\xa4\x7b\xcf\xe9\xef\xf6\xe9\x3e\xa7\xbb\xa5\x30\xc5\xba\xa2\
+\xb8\x78\x5e\xd8\x30\xee\x55\xc0\x2b\xac\xd6\x8d\xfb\xf6\xed\x73\
+\x9c\x4f\x7f\xca\xf9\x34\x3e\x96\x4a\x4b\x4b\x63\x74\xb7\xbb\x65\
+\x1a\xa4\x0b\xc0\x09\x0e\x69\x18\x37\xed\xaf\xa8\xd8\x73\xbe\x7c\
+\xaa\xe7\xcb\x70\x24\xd2\xbd\xde\x05\x16\x48\xcf\x8e\x81\x45\x29\
+\x0a\xd9\x90\x6a\xd1\xb4\xff\x5b\x61\xb3\x3d\x74\xbe\x7c\x4e\x29\
+\xb0\x10\x42\x55\x80\xb8\x68\x85\x0d\x77\x5b\x58\x5b\x98\xc2\x74\
+\x50\xe3\x35\xed\x89\x92\xfc\xfc\x9d\x2b\x56\xac\x48\x9a\x6c\x9f\
+\x53\x0a\x7c\xa6\xe2\x62\x14\xee\x79\xe6\x55\x7e\x7a\xd7\x4a\xa6\
+\xab\x90\xac\xaa\x6b\x35\x5d\x3f\x59\x9c\x9f\x9f\x37\x99\x7e\x2e\
+\x18\x60\x00\xa2\xd3\x58\x75\xdb\x73\xfc\x66\xf3\x1d\xcc\x9b\xa6\
+\x91\xa1\x28\x99\xd1\xaa\x7a\x78\x65\x7e\xfe\x5d\x93\xe5\xe2\xc2\
+\x02\x96\x06\x20\xc9\x28\xba\x9d\x4d\xef\xfc\x86\x35\xb6\x34\xb2\
+\x21\x2a\x46\x55\xff\xab\xd8\x66\x7b\xbf\xb4\xb4\x34\x66\xa2\x2e\
+\x2e\x2c\x60\x23\x04\x46\x10\x8c\x20\x96\x0c\x1b\x3f\xdb\xf4\x22\
+\x77\x7e\x3f\x8f\x6c\x05\x52\x34\xed\xe6\x80\xcb\x55\x53\xb0\x74\
+\xe9\xa5\x13\x71\x71\x61\x01\x8b\xe0\xe0\x66\x4d\xe6\xea\x3b\x37\
+\xb0\xf1\xa9\x5b\x98\x15\xa7\x92\xa9\x28\x73\x62\x2c\x96\xca\xc2\
+\x65\xcb\x6e\x39\x57\x17\x53\x06\x5c\x6a\xb3\x25\xab\xb0\x7a\xd0\
+\x2f\xcf\x06\x16\x41\x40\x30\xb3\xe4\x7b\x6c\x7e\xe3\x21\x0a\x17\
+\x25\x92\xad\x28\xd6\x78\x8b\x65\xcb\x0a\x9b\xed\xb5\x82\x82\x02\
+\xcb\x78\xfd\x7e\xad\x85\xc7\xaa\x82\x82\x05\x2a\xdc\x21\xa4\xfc\
+\xae\x0a\x73\xa2\x15\x45\x89\x03\xe6\x4c\x53\x78\xfe\x7e\x2b\xac\
+\x7e\x15\xb4\xd8\x11\xdf\x97\xfe\x2e\xb6\xbd\xf4\x5b\xb6\x6c\x3d\
+\x81\x03\xf0\x08\x51\x13\xd6\xf5\x6b\x0e\x1d\x3b\xd6\x12\x69\x1f\
+\xce\x3b\x70\x6e\x6e\xae\x35\x31\x26\xe6\x9f\x35\xb8\x4f\x85\x65\
+\xf1\x40\x3c\x60\x01\x96\xe6\x66\x60\xcb\x9f\xcf\x82\x45\x39\x2c\
+\x5e\x3c\x1d\x32\x56\x82\xa2\x8d\x6e\x50\x84\xa8\xdb\xbd\x85\x27\
+\x9e\xf8\x88\x9e\xa0\xc4\x21\xa5\x2f\x2c\xc4\x3f\x1d\xac\xa8\xf8\
+\x20\x92\xfe\x9c\x37\xe0\xd2\xd2\xd2\x28\xbf\xdb\x7d\xa7\xa6\x28\
+\xbf\x8a\x93\x32\x2d\x11\x88\x53\xe1\xba\xab\x17\x70\xd5\xb5\xc5\
+\x4c\x5f\x9c\x8f\x1a\x9b\x71\xce\xf6\x7d\x6d\x87\x78\xfc\xe1\x37\
+\x38\xd1\xe4\xa3\x17\xa4\xdf\x30\x36\x1d\xac\xa8\xb8\x1f\x10\xa3\
+\xbd\x77\x5e\x80\x57\xe5\xe7\x5f\x81\xaa\xbe\x19\x07\x73\x93\x81\
+\xac\x64\x8d\x5b\x7f\x50\x8c\x6d\xcd\x5a\xb4\xa4\x99\x93\xe6\x47\
+\xfa\x3b\xf9\xc3\xef\x5e\x67\xdb\x87\x4d\xa7\x43\xbc\x4c\x35\x8c\
+\xeb\xf7\x1e\x39\xd2\x3d\xd2\x3b\x93\x0a\x5c\x5a\x5a\x1a\x13\x72\
+\x3a\x9f\x8f\x52\xd5\xdb\xd3\x80\xd4\x38\x85\xbb\x6e\xb3\xb1\xfc\
+\xea\x6f\xa1\xc4\xa4\x4e\xa6\xab\xaf\x64\x04\x39\xf2\xd9\x76\x9e\
+\x7e\x76\x0f\x8e\xb0\xa4\x0f\x5c\x61\x5d\xbf\xf1\xe0\x91\x23\x9f\
+\x0f\xf7\xf8\xa4\x01\xaf\xb0\xd9\x2e\xd1\x34\x6d\x67\x22\xcc\x4e\
+\x06\xbe\x75\x65\x32\xb7\xdc\xf9\x5d\xb4\xe4\xf9\x93\xe5\x62\x14\
+\x49\x5c\xad\x15\x3c\xf6\xe8\x5f\x68\xe8\x0c\xd0\x03\x42\x17\xe2\
+\x97\x07\xca\xcb\x1f\x07\xe4\x99\x4f\x4e\x0a\x70\x49\x7e\xfe\x5a\
+\x4d\x55\xb7\xa7\x42\xec\xf4\x38\xc1\x7f\xdc\x57\xc0\xac\xa2\x1b\
+\x41\x1d\x77\xd6\x98\x90\x84\xaf\x9b\x97\x37\xbf\xc7\x27\x9f\x77\
+\x60\x07\xbc\x86\xb1\x2b\xac\x69\x37\x97\x95\x95\x39\x4f\x3f\x33\
+\x61\xe0\x55\x45\x45\xdf\xd3\x84\x78\x33\x03\xd4\xcb\x67\x48\x7e\
+\xf1\x8b\x6b\x89\xce\x29\x9a\xa8\xd9\x73\x97\x11\xe0\xc0\x27\x9f\
+\xf2\xdc\xef\xca\xe9\x33\x24\x2e\xe8\x09\x4b\xf9\xcd\x03\x5f\x7c\
+\x51\x06\x13\x04\x2e\x29\x2c\xfc\x37\x8b\x10\x2f\x67\x29\x8a\x72\
+\x55\x1e\xfc\xf0\xde\x75\xa8\x49\x73\x26\xa7\xe3\x13\x91\xd0\x39\
+\x55\xbe\x8b\x67\x5f\xa8\xa6\xbd\x3f\x84\x5d\xca\xa0\xd3\xe3\xb1\
+\x1d\xad\xad\xad\x19\x23\xe9\x8d\xac\x35\xc5\xc5\x37\x6b\x42\xbc\
+\x9b\xa5\x28\xca\x35\xcb\x05\x3f\x5c\xff\x1d\x94\x84\xe9\xe6\x06\
+\x60\xca\x9a\x0e\xde\x66\xe8\x3f\x42\x6a\xba\x85\x6b\x6e\x2d\xa6\
+\x72\x4f\x1b\x0e\x67\x28\xca\xad\xeb\x7d\xdd\xbd\xbd\x87\xa3\xce\
+\x05\xf6\x1f\x0a\x0a\x56\x48\xc3\xf8\x53\x16\x28\x57\x2e\x09\x71\
+\xfb\x8f\xbe\x0d\x71\x69\x03\xa5\xe0\x14\x48\xe8\xe0\x6f\x07\x7f\
+\x27\xc8\x30\xa4\x65\x20\x72\x66\xf3\xde\xf3\xfb\x68\x68\x74\xe1\
+\x07\xe9\xf1\x7a\x6b\x81\xcc\x71\x03\x17\x15\x15\x65\x4b\x21\x3e\
+\xcc\x84\xa8\xc2\xf9\x41\xee\xbe\xbb\x14\x62\xd3\xcc\x5d\xce\xd7\
+\x29\xa1\x43\xd0\x01\x21\x3b\x84\x5c\xa0\x28\xa0\x59\x60\xfe\x42\
+\x02\x6a\x0c\x4f\xdc\xb1\x9d\xa3\x35\x7d\xd8\xc1\x70\xba\x5c\x1b\
+\x1a\x5a\x5b\xab\x81\xd0\x78\x81\x55\x8b\x61\x7c\x90\xa4\x28\xc9\
+\x39\x89\x61\xee\xb9\xde\x8d\xe2\x69\x06\x0c\x88\x9f\x0e\x51\x23\
+\xd7\xc1\x13\x96\x11\x04\xdd\x6d\xb6\x90\x13\x0c\x3f\x28\xea\x57\
+\x2d\x3e\x09\x16\x5d\x46\xe3\xd1\x0e\x1e\x59\xff\x3f\xd8\x83\x06\
+\x7d\x42\xf4\x75\xda\xed\xf7\x34\xb6\xb4\xd4\x02\x5e\xa0\x7d\x5c\
+\xc0\xab\x0b\x0b\x7f\x16\x2d\xe5\xf2\x34\x4d\xb2\xfe\x86\x6e\x12\
+\xa2\x74\xe8\xd8\xff\x95\x53\x6b\x22\xc4\xa4\x40\x74\x0a\x44\x27\
+\x83\x25\xce\xfc\x08\x51\x31\xa0\xc5\x80\xaa\x81\x32\x8c\x4b\x61\
+\x00\x86\xb9\x1f\x16\x3a\x88\x10\x84\x83\x60\x04\xcc\x69\x12\xf6\
+\x9b\x73\xf4\x4c\x40\xe5\xf4\x46\x4f\x81\x19\xb3\x91\x39\xb3\xf9\
+\xdb\x6b\x07\x79\xe3\xe5\xe3\xf4\x02\x5e\xc3\x38\x78\xa2\xae\xee\
+\xc1\x7e\x8f\xc7\x0d\x74\x03\xad\x80\x8c\x78\x95\xbe\xa2\xb8\x78\
+\x9e\x30\x8c\xda\xe9\x10\xf5\x83\x35\xbd\xdc\xb0\xdc\x35\xb4\x03\
+\x91\x36\x55\x03\xd5\x3a\x3c\xc4\x78\x5a\x74\x2c\x2c\x5a\x42\x08\
+\x0b\x4f\xdf\xbf\x83\xb2\x0a\x3b\xdd\x20\xdd\x7e\xff\x0b\x95\x55\
+\x55\x6f\x02\x61\xa0\x09\xe8\x3b\xcd\x11\xf1\x08\x87\x0d\xe3\xf9\
+\x14\x88\x9a\x9f\x1e\xe4\x9b\x36\x27\x13\xca\x68\x52\x9a\x23\xf9\
+\xe5\x28\x9d\x83\x52\x33\x60\xd1\x12\x3a\x6b\x3b\x78\xe4\xc7\x9f\
+\xd0\xee\xd2\xe9\x03\x77\xb7\xdd\x7e\x5f\x5d\x53\x53\x39\xe0\x07\
+\x4e\x01\x83\x16\x97\x88\x80\x4b\x0a\x0b\x8b\xa3\xa4\xbc\x21\x49\
+\x81\x5b\x4b\x7b\x50\x15\xc9\x39\x01\x5b\xa2\x21\x25\x0b\x12\x92\
+\x21\x3a\x1e\xa2\xe3\x40\x8b\x82\x50\x00\x6a\xcb\x23\xb3\xa1\x6a\
+\xb0\xe0\x72\xc8\x9e\xc9\xa7\xef\x1c\xe2\xc5\xe7\x2a\x71\x00\x6e\
+\x21\x8e\xd7\xd5\xd7\xaf\xef\x75\x3a\xfb\x80\x5e\xa0\x99\x61\x76\
+\x4e\x11\x01\x2b\x52\xbe\x94\x0c\xac\x59\xec\x64\xf1\x74\x3f\xe3\
+\x3a\x28\x99\x96\x0e\xb3\x2e\x83\xac\x79\x90\x9c\xce\x97\x1f\x4a\
+\x4a\x44\xc0\x8f\x34\x0c\x84\xdf\x47\x44\x45\x68\x7c\x22\x5c\x5e\
+\x80\x21\x55\x5e\xb8\x6f\x3b\x9f\xed\xee\xa2\x17\xa4\x27\x10\x78\
+\xfb\x48\x6d\xed\x66\x5d\xd7\xc3\x98\xa0\xbd\x23\x99\x18\x13\x78\
+\x75\x61\xe1\x4d\x56\x29\xf3\x92\x34\xc9\x2d\x25\xf6\x88\x18\x51\
+\x54\x98\x93\x0b\x97\x14\x42\x4a\x36\x08\x03\x77\x73\x1b\x75\xbb\
+\xf6\x73\xa4\xac\x87\xea\x2a\x17\x2d\xad\x7e\x84\x61\xd6\xf5\xe9\
+\xa7\x4f\x3c\x46\x36\x08\x39\xf3\x60\x61\x2e\x8e\xfa\x4e\x1e\xbe\
+\x67\x07\x2d\xbd\x21\x1c\x10\xe8\x76\x38\xfe\xfd\x64\x43\xc3\x5e\
+\xcc\xd0\xad\x07\x7c\xa3\x75\x6d\x4c\x60\x29\xe5\xa3\xd3\x80\x55\
+\x0b\x5d\xa4\xc4\x87\x19\x73\x74\x73\x16\x43\xde\x37\x20\x31\x95\
+\x60\x77\x17\x07\xdf\xda\xc5\x96\xb7\xea\x71\xf4\x87\xf1\x0f\xf4\
+\x2a\x0c\xe8\x98\xf1\x66\x05\xd2\x47\xb3\x67\x8d\x86\xcb\x0a\x21\
+\x2d\x93\xc3\xdb\x2a\x78\xf6\xd7\x65\xd8\x85\xc4\x65\x18\xf5\x4d\
+\xad\xad\x3f\xe9\xb4\xdb\x3b\x81\x7e\xa0\x11\x30\xc6\xe2\x19\x15\
+\x78\x75\x61\xe1\xe2\x28\x29\x97\xc7\x2a\x70\xe3\xf2\x11\xa3\xc4\
+\x54\x5c\x12\x14\xde\x00\x39\x8b\x08\x76\x75\xb0\xf5\xd9\x6d\xfc\
+\x75\x7b\x27\x3e\xcc\x4f\x1e\x90\x32\xa8\x0b\x71\x20\x18\x0c\xee\
+\xf7\x78\x3c\xd5\x2e\xaf\xb7\x33\x2e\x2e\x2e\x75\x7e\x56\xd6\xbb\
+\x23\xda\x4c\xcd\x82\xdc\x62\x84\x90\xbc\xfa\xf3\xbf\xf1\xbf\x3b\
+\xda\xe8\x05\x3c\xba\xbe\xb5\xb2\xba\xfa\x29\x5d\xd7\x75\xa0\x0d\
+\xe8\x1a\x0b\x34\x22\x60\x21\xe5\xfa\x04\x60\xe9\x2c\x0f\xb3\x52\
+\x83\x8c\x38\xba\xd9\xf3\x61\xf5\x3a\xa4\xa2\xb2\xeb\x95\x9d\xbc\
+\xfc\x52\x03\x2e\x21\x71\x81\x0c\x84\xc3\x87\x5c\x1e\xcf\xbb\xf5\
+\xcd\xcd\x07\x06\xe6\x58\x08\xf0\x00\xbe\xa5\x99\x99\xc3\x6f\x96\
+\x55\x15\x2e\xc9\x83\xd9\x97\xe2\x6e\xed\xe4\xb1\x1f\x7f\x4c\x5d\
+\xab\x97\x5e\xd0\x1d\x6e\xf7\xa3\x55\xb5\xb5\x1f\x61\x06\xc9\x29\
+\xcc\x82\x22\x62\x8d\x08\x5c\x52\x52\x12\x4b\x28\xf4\xfd\x78\xe0\
+\xba\xa5\xa3\x5c\xd9\x5e\x5a\x02\xcb\xaf\xc3\xd3\xd4\xcc\x86\x07\
+\x3e\xa7\xa6\xc1\x4f\x2f\xe0\x37\x8c\x7d\x9d\x3d\x3d\x9b\x9a\xdb\
+\xda\x4e\x61\x46\xb1\x63\xa0\x7d\xd9\xc1\x84\xf8\xf8\xcc\x21\xf6\
+\xe2\x93\x60\xd9\x6a\x48\x4c\xe1\xf8\x8e\x0a\x7e\xfd\xf0\x61\x1c\
+\x86\xc0\x25\x44\x7b\x63\x5b\xdb\x8f\x3a\xba\xbb\x9b\x01\x17\xd0\
+\x30\x60\x77\x5c\x1a\x11\x58\xd1\xf5\x7f\x8c\x87\xb8\xc4\x68\x83\
+\x65\xb3\x3c\x0c\x9b\x86\x96\x5c\x09\xb6\x6b\x68\xde\xfb\x05\x3f\
+\xbf\xf7\x30\x0e\x03\x9c\x52\xf6\xf7\x38\x1c\x0f\x9d\x6c\x6c\x3c\
+\x84\x39\xa7\xba\x30\x2b\x9d\x31\xe7\x17\x33\x17\xc2\x65\x45\xc8\
+\x70\x98\x3f\x3e\xf9\x11\x5b\xdf\x6b\xa2\x07\xf0\xea\xfa\xce\x63\
+\x27\x4f\xfe\xd2\xef\xf7\x07\x80\x76\xa0\x63\xbc\xa0\xa7\x35\x72\
+\x48\x4b\xf9\x2f\xb1\x40\xd1\x3c\x17\x9a\x3a\x4c\xde\x5d\xb6\x16\
+\xf2\xd6\x72\xe8\xbf\x77\xf1\xcc\xd3\xb5\xf4\x00\x1e\x5d\xff\xa4\
+\xaa\xbe\xfe\x31\x8f\xc7\xe3\xc5\x4c\x0d\x2d\x44\x00\x6a\xb1\x6a\
+\x90\x7f\x25\x64\xcf\xc5\xdf\xd9\xcd\xe3\x3f\xdd\x49\xd5\x29\x8f\
+\x59\xf8\x7b\x3c\x1b\x8e\x9e\x38\xf1\x17\xcc\xd1\x6c\xc0\x1c\xdd\
+\x73\xd6\xb0\xc0\xeb\xd6\xad\xd3\xda\xeb\xeb\xbf\x11\x03\xac\x58\
+\xe0\x1c\xfa\xc0\xdc\x3c\xc8\xbb\x9a\xb2\x3f\xef\x62\xe3\x00\x6c\
+\x7f\x30\xf8\x7a\xc5\xb1\x63\x2f\xf0\x55\x39\xd7\x1f\x69\x27\x12\
+\x92\x63\x21\x7b\x0e\x0d\x7b\x8f\xf3\xe8\x03\xfb\xb0\x07\x05\x4e\
+\x29\xed\xed\x3d\x3d\x3f\x19\x28\xfc\x3d\x98\x29\x47\x1f\x3f\xe2\
+\x60\x0d\x0b\xdc\xda\xd8\xb8\x22\x66\x20\x9c\x97\xce\x3c\x2b\x9c\
+\x53\x67\xc0\xaa\x75\xd4\x7c\xb8\x97\xa7\x9e\xac\xa5\x1b\xa4\xc3\
+\xed\x7e\xea\x68\x6d\xed\x9f\x30\xb3\xce\x49\xce\x2a\xe7\xc6\x92\
+\x2f\x60\xf0\xd7\x4d\x3b\xf9\xc3\x3b\x0d\xd8\x01\xb7\xae\xef\xaf\
+\xae\xaf\x7f\x70\x20\x52\xba\x30\x57\x62\x39\xba\x95\xc8\x34\x2c\
+\xb0\x26\xc4\x4d\xb1\x40\xde\xcc\xb3\xc2\xd9\x62\x85\xab\xfe\x95\
+\xfe\xba\x7a\x7e\xf5\xc8\x71\xec\x40\xbf\xdf\xff\xfb\x01\x58\x1f\
+\x50\xc7\x38\x46\x21\xda\x30\x5a\x74\x4d\xd3\x1b\x5a\x7c\x96\xba\
+\x77\x1a\xe8\x05\xe1\xf6\xfb\x37\x57\x56\x55\xbd\x8d\x19\x29\x8d\
+\x8c\x23\x52\x22\xd1\xb0\x79\x46\xc0\xb7\x63\x80\x85\xd9\x67\x15\
+\x2d\xcb\xaf\xc7\x10\xf0\xc8\xbd\x7b\xcd\xe4\xaf\xeb\xdb\x2b\xab\
+\xaa\x5e\x01\x02\x40\x2d\xe3\x0c\xb9\x5d\x15\x15\xfd\x52\x88\xef\
+\x74\x08\xd1\xdc\x25\x44\x4d\x47\x4f\xcf\x6d\x95\x55\x55\x6f\x61\
+\xae\xe4\xd5\x4c\x32\x2c\x0c\x33\xc2\x05\x05\x05\x16\x05\xe6\x5b\
+\x80\x45\x59\x67\x00\x67\xcc\x85\xc5\x25\xbc\xf2\xc0\x56\x1a\x7b\
+\x74\x5c\x52\x9e\xa8\xac\xae\xfe\x4f\xcc\x91\xa8\x23\x92\x55\x78\
+\x18\xed\x29\x2f\xdf\x06\x7c\x0c\xcc\xc7\xbc\x72\xb2\x63\xee\x5d\
+\x47\xbd\x32\x39\x57\x0d\x01\x8e\x56\xd5\x5c\xab\x10\x9a\x55\x13\
+\xcc\x49\xf3\x03\x8a\x79\x7c\xb2\x6a\x1d\xcd\x7b\xca\xf9\xf8\xb3\
+\x7e\x1c\xa0\xb7\xb4\xb5\x3d\xa8\xeb\xba\x81\x09\x3b\xd1\xf3\x1d\
+\x2f\x70\x74\x82\x36\x22\xd2\xd0\x90\x36\x8c\x7c\x2b\x30\x2f\xdd\
+\x47\x94\x36\xb0\x4e\xcc\xb5\x21\x63\x93\xd8\xf8\xf8\x31\x7a\x01\
+\xa7\xd7\xfb\xdb\xf6\xae\xae\x56\xa0\x93\x71\x56\x3a\x53\xad\xa1\
+\xc0\x8a\xb2\xca\x02\x5c\x72\x3a\x9c\x15\x05\x6c\xd7\xf2\xf9\x96\
+\xdd\xb4\xf6\xea\x78\x85\x68\x38\x56\x53\xf3\x47\xcc\x45\xea\x9c\
+\x0b\x80\xa9\xd2\x70\x8b\xd6\x4a\x2b\x90\x93\x12\x30\x7f\x9a\x6b\
+\xc3\xc0\xc2\x8b\xbf\x6f\xa1\x1f\xe8\xeb\xef\x7f\x12\x33\x45\x34\
+\x31\x49\xa9\xe2\xeb\xd4\x10\x60\x05\xe6\x5a\x80\xcc\xc4\x81\x69\
+\xb9\xe4\x2a\xf6\xbe\x5f\x86\xc7\x90\xf8\x0c\xa3\xb2\xb6\xa1\xa1\
+\x0c\xb3\x26\x1e\x75\xdf\x79\xa1\x6a\x10\x70\x6e\x6e\xae\x55\x85\
+\x04\x05\x48\x4b\xd0\x21\x39\x1b\x11\x9f\xc6\xeb\xaf\xb7\xe0\x02\
+\xba\xec\xf6\x8d\x98\xa3\xda\x3e\x15\x9d\x9d\x0c\x0d\x02\x4e\x8b\
+\x8f\xcf\xd1\x30\xa7\x6d\x7a\x42\x08\x16\xad\xe4\xe8\x87\x87\xe9\
+\xf3\x0b\x82\x42\x34\x34\xb5\xb6\xd6\x60\xa6\x8d\x29\xba\x62\x98\
+\xb8\x06\x01\x0b\xc3\xc8\xd1\x80\x94\xb8\x10\x51\x16\x05\x16\x14\
+\xf1\xf6\x9b\xcd\x78\x00\xa7\xc7\xf3\xda\xc0\x63\x23\xde\xae\x5f\
+\x0c\x1a\x04\x2c\xa5\xcc\xd1\x80\x8c\xc4\x10\xcc\x58\x8c\xbb\xbd\
+\x9b\xe6\xf6\x10\x5e\x29\xbd\x75\x8d\x8d\x3b\x31\x77\x2a\x81\x29\
+\xe9\xe9\x24\x69\xf0\xa2\xa5\xaa\x33\xa2\x80\xd4\x78\x1d\x66\xe6\
+\x72\x70\x67\x2d\x3e\x20\xa4\xeb\x3b\x06\x8e\x53\x7a\xa6\xa2\x93\
+\x93\xa9\xc1\x21\x2d\xc4\x2c\x15\xb0\x46\x09\x64\xd6\x42\xde\xfb\
+\x73\x17\x3e\xc0\xe9\x72\x7d\x80\x59\x42\x0e\xb3\x57\xbc\xb8\x34\
+\x08\x58\x51\x94\x18\x05\x48\xc9\x48\xa0\xbf\xc7\x8d\xdd\x69\x10\
+\x90\xd2\x5b\xd7\xd4\x54\x89\x59\xc8\x5f\x74\x79\xf7\x6c\x0d\x0e\
+\x69\x29\x13\x00\xe6\xda\xe6\x72\xe2\x8b\x36\xfc\x80\xae\xeb\xbb\
+\x30\x0b\xf9\xbe\x21\x6f\x5f\x84\x1a\xbc\x68\x29\x4a\x82\x0a\x24\
+\xcf\x48\x63\xf7\x67\x3d\x04\x00\x8f\xcf\xf7\x29\x66\x38\xbb\xa7\
+\xa2\x83\x93\xad\xc1\x21\x0d\xd1\x00\x7e\x5f\x98\xb2\x0a\x1f\x41\
+\x90\x1d\x76\x7b\x39\x26\xec\x45\x1f\xce\x30\xb4\xb4\x4c\x52\x81\
+\xb2\xbd\x9d\x84\x81\xb0\x94\x9d\x4e\xa7\xd3\xc9\xdf\xc9\xe8\xc2\
+\xd0\x39\x2c\x00\x76\xef\x75\x11\x00\x42\xa1\xd0\xfe\x81\xbf\xfc\
+\x7d\x02\x4b\x45\xd9\xda\x0f\xf4\x06\x04\x2e\x90\x0e\x97\xeb\x7d\
+\xcc\x63\x9b\x8b\xba\xd8\x38\x53\x83\xfe\x6d\xa9\xb5\xa3\xe3\x40\
+\x46\x66\x66\xb3\x4b\xd7\x85\xbd\xbf\xff\x99\xfa\xe6\xe6\xa3\x98\
+\x3b\xa3\x8b\x3e\xff\x9e\xd6\x48\xb7\xda\xa9\x03\x2d\x88\x79\x44\
+\x7a\x5e\xce\x97\xa6\x42\xff\x0f\x2a\xee\xbe\x18\x11\xda\xf3\xf0\
+\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
+\x00\x00\x0f\x82\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x30\x00\x00\x00\x30\x08\x06\x00\x00\x00\x57\x02\xf9\x87\
+\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\
+\x00\x00\x0f\x39\x49\x44\x41\x54\x68\x81\xed\x58\x79\x58\x54\x57\
+\x96\xff\xdd\xf7\xaa\x8a\x5a\x29\x28\xaa\xd8\x15\x50\x30\xa8\x88\
+\x48\x30\x2e\xb8\x20\xe2\x16\x45\x63\xa2\x26\x5f\x67\x57\x27\x63\
+\x77\x96\x4e\x62\x88\xf6\x24\xe9\x90\xcc\x74\x8f\x8a\x89\x26\x93\
+\xe9\xc4\x24\x33\xed\xd8\x76\xda\x98\x2f\x89\x89\x13\x63\xa0\x44\
+\x30\x2a\x1a\xb7\x04\x05\x15\xb5\x40\x40\x0a\x8a\xad\x8a\xaa\x7a\
+\xb5\xbe\x77\xe7\x0f\x28\xac\x0d\x34\x4b\xcf\x5f\x7d\xbe\xef\x7e\
+\x75\xeb\xbc\xfb\xee\xfd\xfd\xde\x39\xf7\x9c\x73\x2f\xf0\x0f\xf9\
+\x87\xfc\x2c\x21\x3f\x77\x82\xa2\x4d\xd1\x6a\xb0\xa2\x05\x82\x08\
+\x33\x54\x8a\xe8\xe9\x4a\x89\x3a\x45\xca\x4a\x45\xa0\x44\xdc\xc7\
+\x75\xf1\xbd\xde\x1e\x23\x15\xbc\x2d\xc4\xc5\x94\xf3\x3c\xca\x0f\
+\x6f\x30\xd5\x82\x80\xfe\x12\xe0\x81\x9f\x48\xa0\xb4\x14\x4c\xb5\
+\x2c\x6e\x49\x66\xca\x84\xd7\x26\x25\xce\xca\xca\x49\xcf\xc7\xc8\
+\xe8\x0c\x91\x13\x1c\x8c\xb4\x11\x2e\x38\x40\x21\x20\x12\x31\x50\
+\x93\x18\xb4\x3b\x5a\x60\x68\xbf\xe0\xfd\xa1\xe1\xb8\xab\xb6\xf1\
+\x84\x53\xe0\x85\x37\x5d\x1e\xf7\xbb\x47\x7f\x67\xe9\xfd\x7f\x27\
+\x70\xf7\x1b\xc9\xf7\x15\x4c\xb8\x77\xc7\x92\x89\x0f\x45\x69\xd4\
+\x71\xec\x61\xd7\x67\x38\xe1\xfe\x1a\x17\xdd\xa7\xe0\xa4\xdc\xcd\
+\x81\x42\x7f\x63\x04\x06\x49\x4c\x3a\x32\x25\xb9\x98\xa2\x58\x88\
+\x68\x1a\x8b\xa3\x97\x0f\xb8\x2b\x6a\xf6\xf2\x2e\xaf\xab\x4c\x63\
+\xd3\xfd\xe1\x93\xd2\x3a\xf7\xdf\x9d\x40\xd1\xa6\xc4\x91\x53\x32\
+\x67\xef\x7b\x3c\xff\xa5\x89\x2e\x99\x9d\xf9\x8b\x73\x33\x4e\x38\
+\x0f\x42\x00\x1f\x3a\x98\x02\xe0\x7d\x24\x08\x88\x70\xb3\x1f\xcb\
+\x26\x63\xa1\xfa\x61\x8c\x8b\xb8\x0b\x07\xcf\x7c\xe4\x3c\x56\xfb\
+\x8d\x51\xf0\x90\x07\x2a\x37\xb4\x7f\xf7\x77\x23\xb0\xf2\x9d\xac\
+\x79\x0f\x4c\x7f\x7a\xff\xac\xb1\xc5\x11\x6f\xdb\x9e\xc3\x11\xd7\
+\x17\xa0\x43\xb9\x31\xc5\xe0\xd7\x87\x40\x00\x01\x03\x04\x48\x3f\
+\x29\x0a\x10\x9e\x20\x41\x94\x8a\x15\xba\xa7\xc0\xf5\xd9\xf1\xc9\
+\x37\x3b\x38\x87\xa3\xef\x9f\x2b\x4a\x4c\xbb\x87\xc3\x51\x50\xaa\
+\x53\x32\x0a\x32\xaf\xb2\xc4\xf4\xb9\x4f\xc7\xde\x0a\xfc\xaf\x76\
+\xe4\x3e\xb5\xa1\xf8\x3f\x76\x4b\xe2\xc5\xe2\x12\x6b\x31\x1a\xbc\
+\xe7\xa0\x63\x93\x90\x2e\xce\x46\x86\x38\x07\x29\xa2\x4c\x68\xd8\
+\x38\x10\x10\x70\xb4\x0f\x94\xd2\x7e\x12\x14\x21\x5f\x1f\x74\x80\
+\x0c\x25\xb0\x79\xcd\x38\x6d\x39\x04\xad\x3c\x01\x4b\xb3\x1f\x13\
+\x5f\x6b\xab\x5f\x18\x37\x53\x90\x19\xca\xed\x87\xc3\x7c\x14\x52\
+\xa8\xd0\x3d\xc6\x88\x49\x35\x01\x1e\x6c\xac\xb0\xbf\xe6\x7b\x34\
+\xac\x05\x56\xbd\x97\xb5\xee\xf5\xe5\xff\xf3\xce\x79\x71\x0d\x5b\
+\xc3\x1f\xc0\x5c\xf9\x2a\xdc\x29\x2e\x04\xe7\xb6\xc2\x60\xae\xf7\
+\xf6\xd8\x3b\x04\x9e\x7a\x20\x93\x29\xc5\x89\xea\x34\xa2\x91\xc5\
+\xe2\x7b\xd7\x11\x54\xdb\x3e\x47\x2d\x77\x1c\x10\x68\x80\x25\xfa\
+\xad\x41\x42\xdc\x6b\x9c\xe2\x2e\x2c\xd2\x3e\x8a\xbd\x87\xde\xe5\
+\x8c\xa6\x6b\x9b\x2a\xd6\x77\xfd\xab\x0f\x43\xd1\xe6\xb8\xa9\x82\
+\x88\x7e\x90\xa4\x4d\x19\x35\x6a\xe4\x58\xf9\xd1\x33\x07\x8d\x87\
+\x5e\x30\x25\xde\x92\xc0\x82\xb7\x93\x16\xbf\xb6\x74\xe7\xbe\xb1\
+\xc9\xb9\xa2\x2e\xbe\x0d\xbc\x93\xa7\xdf\x7c\xff\xb1\xe7\x48\xc3\
+\x97\x1d\x3d\x56\xd3\x67\xc4\x8b\x5a\x4a\x49\x0b\x00\x05\x18\x3a\
+\x96\x46\xa0\x40\xc5\xa8\x67\xe6\x65\x15\x60\x46\xd6\xdd\x32\x56\
+\x2a\xc2\xc7\x3d\x6f\xe2\x82\xfd\xe4\x20\x60\xe2\x47\x24\xc0\x3a\
+\x3c\xc1\x28\x79\x16\x8a\x75\xab\xf1\xa9\xfe\x7d\xae\xbd\xb3\x79\
+\x1d\x23\x11\xf4\x5e\x81\x6c\x93\x47\x44\x2e\x9d\x96\x53\x28\x1d\
+\x1d\x3f\x81\xd8\xed\x7d\xf8\xab\xfe\xad\x73\x87\xd6\x77\xe6\x0e\
+\x4b\xa0\x70\x6b\x42\xca\xfa\x05\x9b\x2f\xdf\x9d\xf5\x70\xc4\x55\
+\x5b\x2d\xfe\xac\xdf\xe4\x3e\xd1\xa4\xdf\x27\xe2\x85\x57\xcb\x5f\
+\xe8\xbe\x34\x14\xe9\x95\xa5\xe3\x25\x3d\xb2\xce\x95\x90\xd0\xd7\
+\x73\x32\xf2\x13\x96\x4f\x5f\x23\xab\x75\x1f\xc3\xa7\x5d\x7f\x02\
+\xcf\x7b\x02\x2c\x01\x81\x80\xf8\x59\x02\x02\x90\x21\x9f\x88\xb9\
+\x31\xab\xf0\xd1\xff\xbe\x03\xa7\x87\xc3\xa4\xec\xe9\xde\xac\x94\
+\xc9\xa2\x0b\x3d\x27\xe0\xf4\x70\x50\x79\x63\x50\x73\xae\xe2\x4b\
+\xfd\x7a\xd3\xb2\x21\x09\x94\x96\x82\x39\xa2\xd6\xfd\xb0\xff\x69\
+\x43\x96\xfe\xda\x5e\xef\x3b\x07\x5f\x36\x78\x1d\xf4\xde\xc3\x1b\
+\xdb\xeb\x86\x02\x1e\x76\x0e\x65\xdc\x6a\xa9\x58\xba\xfd\xc1\xc5\
+\xcf\xc8\x95\xd1\x91\xe4\xbf\x8d\xaf\xc3\xe2\xea\x0e\x1b\x99\x06\
+\x37\x3a\x4f\x30\x25\x66\x3e\xa6\x46\x2d\x82\xc5\xd5\x85\x0e\x57\
+\x0b\x8e\x1b\xbf\x42\x9f\xb3\x17\x93\x62\x66\x81\xf6\x01\xe7\x2e\
+\x9e\xdc\x56\xf9\x82\xe9\xf9\x21\x09\x14\x96\xe9\x1e\x87\x92\xfe\
+\x89\x10\xf0\xb0\x93\xbf\x69\xac\xb1\x4f\xfe\xd4\x38\x3d\xbf\x2c\
+\x2e\x4d\x10\xd1\xf2\x59\xd3\x96\xa4\xe6\xa5\x17\x88\xfe\xb3\xe5\
+\x45\xd8\x3d\xd6\x00\xd7\xf1\x85\x5c\x32\x48\x84\x20\x5f\x57\x8c\
+\x26\x4b\x1d\x6e\xd8\x0c\x83\xd1\x6b\x5a\xdc\x42\x74\x1b\xbb\xdc\
+\x97\x1b\x2f\x6c\xa8\x2c\xe9\xd8\xee\x5b\x23\x20\x0a\x15\x97\x26\
+\xca\xbd\x12\xe1\x38\x71\x31\x12\xc2\x63\xcb\xa1\xf5\x9d\xcf\xd5\
+\x57\x75\x86\x09\xf4\xb7\x27\xd7\x2a\xec\xe6\xc4\x02\xd1\xee\x56\
+\xe3\xd5\x7b\x22\xe4\xd2\xa8\xc2\x11\x2b\xd8\xf3\x7d\x35\x03\xee\
+\x04\x80\x0e\x80\xa6\x03\xfd\x81\xe8\xd5\xd2\xd7\x00\xab\xab\x37\
+\x20\x7a\x65\xa8\xb3\xd1\x69\x6a\x73\x58\xac\x3d\xbb\x1b\x2b\xb8\
+\x7a\xdf\x1a\x8c\xff\x82\x9c\xc2\xb3\x16\x94\x88\xa8\x88\xfe\x9b\
+\xfe\xf9\xce\x57\x7e\x2a\x70\x7f\x39\xfa\x3b\x4b\x2f\x71\xf3\xd3\
+\xaa\x8e\x7d\x69\x68\x6e\xbb\x42\x97\xc7\x3e\x31\x00\x74\x20\xac\
+\xd2\x9b\x20\xfd\x01\x07\x8f\x91\x30\x32\xd8\x39\x9b\xc0\x82\xb4\
+\xf9\xcf\x1f\x40\x00\x94\xbc\x45\x08\x7a\x2a\x9f\xeb\xfc\xfd\x2f\
+\x01\xde\x27\xfa\x8d\xbd\x16\x81\xa7\xcb\x2a\xaa\x3f\x75\x44\x41\
+\x87\x71\x8a\x29\xa1\x80\x07\x2c\x42\xfc\xc1\xfb\x25\x41\x29\x23\
+\x83\xdd\x61\x63\x29\x4f\x8c\x43\x13\x00\x79\xc9\x6b\x97\x27\xfd\
+\x92\xd5\xa2\x4f\x58\x2a\x71\xf0\x1e\x5e\x5e\x5d\xbb\x9f\x5f\x9a\
+\xb0\x06\x32\xa2\xf0\x03\x8b\x9b\x49\xce\xbf\xf9\xf4\x94\x80\x25\
+\x62\xb8\xdc\x0e\xa9\x58\xa1\xba\xe1\x3f\xaf\xc8\xff\xcf\xa1\x17\
+\x3b\xfe\x08\x00\x85\x6f\xc4\x9e\x04\xa5\x29\x44\x60\xd6\xce\xe4\
+\x3a\x0e\x94\x96\x42\xf8\xa9\xc0\xa7\xbd\x99\x2c\x93\x0b\xee\x8d\
+\x20\x42\xc9\xd4\xbc\x42\x3e\x2f\x7d\x0e\x7b\xa4\xf3\x0b\x78\x78\
+\xd7\x6d\xb9\x0e\x28\x81\x84\x48\xe1\x72\x3b\x40\x41\x1d\x5f\x3f\
+\x73\xd5\x35\x24\x81\x41\x61\xa8\x76\xd5\xfc\x75\x71\x67\xeb\x8f\
+\xee\xf9\xb6\x55\x30\xcf\xdd\x4a\xfe\x28\xb7\x89\x76\xee\x2f\x6d\
+\xe3\xc2\x8e\x1f\x42\xe6\x6e\xd6\xad\xa0\xd4\xf5\xee\xc8\xb4\x74\
+\xe5\xbc\xbc\x95\x52\x33\xdf\x89\x5d\xcd\xff\x0e\xb3\xb3\xab\x3f\
+\xea\xdc\x86\xeb\x40\x00\xa4\x62\x05\x6c\x4e\x2b\x40\xd0\x1d\xbc\
+\x46\x78\x02\x14\x9a\x35\x63\x5f\xc1\xea\xb1\x54\xf1\xbd\xed\x5b\
+\xc5\xfe\xb3\x3b\xdf\xa8\x39\x57\xb1\xb9\x70\x5b\xec\x7b\xac\x5b\
+\xd8\x56\xb1\xa1\xab\x2d\xec\x7b\x03\x32\x67\xab\xf6\x4e\x86\x21\
+\xef\xc9\x15\xca\xb1\x45\xb3\xee\x55\x24\xab\x47\xa3\xc2\xf4\x37\
+\x5c\xee\x3b\xe7\x17\x75\x70\x4b\xd7\xf1\x35\x29\x2b\x83\xcb\x65\
+\x07\x08\x8c\xc1\x6b\x31\xc1\x8a\x95\x7b\xc1\x32\x02\x51\xb9\x28\
+\x87\x25\xc6\x78\xec\xf7\x7c\x88\xe5\x53\xd7\x4a\xdf\xfb\xb5\x5e\
+\xb9\x74\xce\x23\xcf\x4a\x15\xaa\xab\x45\xdb\x74\x9f\x16\x6e\xd1\
+\xe6\x06\xbf\x3b\x38\x29\x65\x2a\x59\x41\x9c\xb7\x78\xe6\x43\x8a\
+\x71\xda\xc9\x38\xdf\x77\x0c\xcd\x5c\xc3\x8f\x8a\x3a\x3e\x4b\x40\
+\x00\x22\x88\x0c\x4e\x37\x07\x50\x72\x3d\x78\xad\x90\x6a\x74\xc4\
+\x74\x6d\x7c\xa4\x32\xe6\xa9\xc2\x9c\xe5\xe2\x8f\x6d\xdb\x71\xdd\
+\x7b\x09\x07\xb9\xdd\xb8\xe4\x39\x8d\x69\xf1\x0b\x99\xd5\x77\xbd\
+\x24\x56\x27\xc4\x64\xb6\x77\xb5\x3e\xa2\x9b\xe3\x59\x9e\x3a\x47\
+\xd5\xfe\xd8\x0c\xfb\x95\xaa\xaa\x9b\x1b\xff\xd1\x7c\xfb\x16\x03\
+\x2b\x3f\x7b\xb1\xf1\x54\xc6\x65\x43\x6d\x74\x4a\xf4\x1d\x6c\x61\
+\xd2\x0a\x12\x29\xd2\xc0\xe2\xea\x86\xc3\x6b\xbf\x2d\xd7\xf1\xe9\
+\xe3\x14\x23\xc1\x3b\x05\x6a\xea\x35\x7e\xd9\x54\xc1\x55\x0e\x4b\
+\x60\x54\xa1\x3c\x33\x3e\x21\xed\xe1\xac\x31\x93\x23\xbe\xe6\x76\
+\x0d\xea\xbb\x05\x23\x8e\x3b\xbf\x42\xb5\xf3\x73\xa4\xa9\xc7\x92\
+\xd5\xb9\xff\x22\x1e\x33\x3a\x3b\xd1\xea\xea\x59\x76\xc6\x61\x7e\
+\x32\xb5\x48\xe1\xca\x98\xaf\xaa\xbb\x56\x61\xf7\x54\x55\x81\x36\
+\xe9\xed\x97\x1b\xbf\xe1\x3e\x88\x2f\xe0\x0f\x5c\x6b\xa9\xd3\xd5\
+\x5f\x39\x9d\x16\x2d\x8d\xa3\xf9\xc9\x8b\xd9\x44\x79\x1a\x38\x8f\
+\x0d\x76\x97\x39\xf0\xec\x40\x43\x93\x1a\x11\x08\x12\x15\xa9\x70\
+\x72\x0e\xb7\xa5\xaf\xfb\x13\x43\x85\xfd\xf4\xb0\x04\x52\xe6\xa9\
+\xf2\x46\xa5\xdd\xb1\x22\x71\x44\x8a\xa4\xda\xf1\x79\xf0\x63\x38\
+\xa8\x0d\xb5\xee\x63\x38\xc8\xed\x86\x28\x42\x82\x7b\x33\x9f\x10\
+\x17\x64\x2f\x53\xf1\xac\x77\x6e\xab\xa9\x71\x7d\xca\x7c\x99\x36\
+\xa5\x30\xa2\xae\x49\xef\xe8\x03\x00\x43\x39\xd7\x6e\xf8\x86\xdb\
+\x3b\xb2\x40\xf4\xe7\x56\x93\x81\x9c\xbf\x72\x6a\x22\xeb\x65\xf8\
+\xec\xf8\x7c\xf1\x1d\xd1\x93\x20\x08\x3c\x2c\xce\x1e\x50\x41\x08\
+\x71\x1d\xdf\x46\x1f\xa9\x1e\x83\xde\xde\x6e\x87\xd5\xd1\xb7\xcb\
+\x50\x61\xbf\x3c\xbc\x05\xe6\x29\xe6\x8c\xcd\x9c\xb8\x58\xaa\x95\
+\xb1\xa7\x5c\xfa\x10\x02\x3e\xe1\xe1\x45\xa3\xa7\x0e\x7a\xfb\x1e\
+\xb4\xd3\x26\xcc\x18\xb9\x58\xb4\xe2\xce\x75\x12\x99\x5a\x31\xb9\
+\xbd\xa3\xe5\xe9\xc4\xf9\x4c\x6e\x6a\x91\xfc\x6a\x53\x39\x67\x04\
+\x00\x83\x9e\xb3\x36\x96\x73\x15\xe3\xa7\x45\xbe\xd5\x6e\x33\x76\
+\x5c\x6a\xfa\x21\xc7\x6a\x36\xb3\x29\x9a\x4c\x49\x4e\xdc\x0c\x88\
+\x20\x46\x9f\xb3\x07\x3c\xef\x1d\x74\x1d\x9f\x7b\xa5\x45\x8d\x47\
+\x5b\x47\x8b\xcb\xe5\xb4\xbe\x63\xd0\x73\x01\x01\x24\x84\x40\xda\
+\x42\xf9\xb2\xec\xac\xa9\x05\x4e\xa5\x9d\xd4\xb9\x4f\x86\x47\x1f\
+\x70\x6c\x04\x4c\x9e\x56\xd4\xd8\xbf\xc6\x59\x47\x35\xc6\x68\xb3\
+\x99\x5f\xe5\x3d\x2b\x4a\x4a\x48\xcd\xec\xed\xed\x7a\x24\x66\xa6\
+\xf3\xbe\x51\x85\xca\x8e\x47\x67\xd8\x1b\xaa\xaa\x40\x1b\xaa\xac\
+\x1e\x43\x85\xfd\xf4\xa3\xd3\xed\xdb\xeb\xbd\xee\xef\x9b\x8c\x57\
+\xd3\x8d\x6d\xd7\x35\x1a\x45\x3c\x3b\x31\x31\x9f\x28\xc5\x6a\x38\
+\xdc\x36\xb8\xdd\x8e\xc1\xf9\x33\x34\x39\x68\xbc\x71\x59\xf0\xf2\
+\xae\x3f\x18\xf4\x9c\xd5\x1f\x4a\x48\x18\x25\x22\x64\xa8\xe4\xd1\
+\xe4\x86\x70\x25\x14\xb4\x7f\xf3\xdb\x64\x3e\xdf\x35\x79\x9b\xf1\
+\x51\xd7\x56\xec\x23\xef\x63\x86\xb2\x98\x94\xac\xd8\x26\xeb\xb3\
+\x9b\x27\x6d\xde\xf3\xf4\xe7\x47\x08\xac\x80\x29\xd2\x37\x5d\x7f\
+\x72\xec\xfa\x0a\xc0\x57\x73\x36\x61\x62\xed\xa5\x93\x2f\xd5\x37\
+\x9c\x2b\x4e\x49\x4a\x67\xf2\x12\xe6\x49\x1c\xde\x3e\x18\xba\xeb\
+\x60\xea\x6b\x85\x54\x24\x83\xd3\xcb\x49\xa2\xd2\xba\x3a\x82\xf1\
+\x86\xe6\x01\x06\x23\x55\xd2\x28\xf4\xf0\x1d\x81\xc0\x03\xe2\xf3\
+\x80\x9f\xc2\x77\xc6\x0d\xd4\xc7\x48\xe2\x31\x41\x36\x1d\x06\x73\
+\x1d\xbe\xfc\x76\x27\xd7\xe7\xee\xa9\x67\x81\x7f\x0a\x6f\x4e\xe0\
+\xf0\x46\xd3\x0f\x00\x56\x15\x6c\xd1\xc5\x5f\xbd\x7e\xfe\xb9\x6b\
+\x2d\x17\x7f\x9d\xa4\x1d\xc1\x66\x24\xe6\xc8\x73\x62\x67\x82\x11\
+\x58\x08\x54\xb0\x7e\xb2\x2a\xf4\x0a\x24\x94\x00\x4f\x13\x23\x23\
+\xa2\xd1\xeb\x34\x0d\xde\x22\xf8\x67\xcc\x9b\x91\xc2\xa7\xbf\x19\
+\x31\x14\x4c\x24\x96\x68\x56\x63\x7c\xc4\x14\x1c\x3c\xbb\xc7\xf5\
+\x5d\x6d\xa5\x95\x0a\x78\xa2\xb2\xa4\x33\x34\x1a\x84\x91\xaa\x17\
+\x3b\xdb\x01\x6c\x28\x2e\x4d\x7c\xad\x8d\x5e\x7f\xb8\xc5\x74\xfd\
+\xe5\x18\x55\x6c\x54\xa2\x66\xa4\x12\x14\xe6\x70\xef\x84\x10\xa0\
+\x94\xc4\x28\xc5\x91\xb0\x58\xbb\x06\x08\xf8\x85\xb4\x30\xae\x03\
+\x01\x60\xc0\x62\xba\x72\x11\x16\x44\x3d\x84\x33\x86\x6a\xbe\xec\
+\xf8\xb3\x2e\xce\xcd\x95\x39\x88\x64\x73\x4d\x49\xab\xe3\x76\xc0\
+\xfb\xcb\x40\xc9\xb2\x03\x14\xef\xcf\x29\xa3\x8b\x7a\x6d\xa6\x0f\
+\x00\xda\x79\x4b\x02\x8b\xde\x4e\x8f\x70\xbb\x2d\x32\x39\x1b\x09\
+\x8b\xa7\xa7\xff\xe8\x17\xe0\xfb\x24\x24\xd5\x13\x0a\xa8\x98\x28\
+\x2c\xd3\x3c\x81\x5d\xc7\xb7\x0a\x17\xcf\x9f\x63\x89\x20\x1a\x5b\
+\xb9\xd1\xd4\xfc\x63\x81\x87\x08\x01\x3d\x8c\xce\x03\x00\x92\x80\
+\xfe\x03\x97\x43\xe6\x7d\x51\xbf\xc1\x54\xea\x1b\x12\x50\x4a\xf0\
+\x2e\x6b\xa2\x52\x19\xe5\xb4\xf1\x66\xf0\xbc\x67\xe0\x9c\x8a\xfe\
+\xa3\x1f\x7f\xf3\x3a\x84\xf0\xfd\x97\x53\x64\x40\xdf\xe7\xea\xc1\
+\x3e\xd3\x0e\x4c\x1b\x3f\x9f\x21\x2c\x38\x10\xaa\xf8\xd9\xe0\x83\
+\x85\x82\x38\xe4\x9e\x56\x4a\xf0\xaa\xbf\x3a\x80\x80\x97\xa7\x09\
+\x2a\x95\x5a\x30\x7b\x3b\xfd\x40\x0f\x00\xe7\x6f\x02\xf7\xd7\xf5\
+\x93\x22\xa8\xe9\x39\x08\xc2\x52\xdc\x35\xad\x40\x46\x59\xfe\x8b\
+\xa2\x4d\xd1\xea\x5f\x12\x7f\x61\x59\x6c\x19\x05\x89\xa6\xc0\x6f\
+\x86\x24\x40\x08\x4d\x8c\x54\x47\x31\x66\x4f\x97\x1f\xb8\xc0\xaf\
+\xed\xaf\xc7\x80\x9e\xf0\x00\x78\x8a\x3d\x2d\xdb\x31\x39\xb5\x90\
+\x64\x8c\x9f\x90\x42\x45\xe2\x93\x0b\xde\x4c\xd6\xfc\x32\xe0\x75\
+\x9b\x08\xb0\x1e\x84\x7a\x1c\x22\xc9\xce\x21\x09\x50\x86\x49\x56\
+\x28\x55\x92\x5e\xb7\x29\xc0\x4d\x62\x98\x78\xcc\x55\xaf\xba\x49\
+\x42\xf0\x07\x8e\x41\x37\xb3\xba\xcd\xd8\x73\x7d\x3b\xe6\x65\xdd\
+\x27\x49\xcb\xcc\x18\xe5\x15\xdc\xa7\x0a\xb7\xc4\x8e\xfe\xa9\xc0\
+\x0b\x4a\x53\xa5\x73\xcb\x74\x3b\x09\x8b\xa7\x20\xa2\x0e\x81\x92\
+\xb5\x35\xcf\x07\x06\x85\x40\x0b\x80\x8e\x90\xcb\x95\x62\x8b\xa7\
+\x1b\xe0\x09\x24\x54\x8a\x22\xf5\xfd\x78\x4c\xf7\x0a\xa6\x2b\x17\
+\x63\xb6\x7a\xf9\x00\x31\x04\xed\x0d\x32\xe8\x62\x9d\xdc\x0d\x7c\
+\xd6\xfc\x2e\xe6\x65\xad\x12\xe7\x4e\xca\x4f\x25\x2c\xbe\x2f\x2a\
+\xd3\x3d\x55\x5a\x1a\x5a\xba\x0f\x27\x73\x36\xc5\x4e\x14\xab\x5c\
+\xf5\xb3\xc7\x2f\x7d\x80\x55\x32\x52\x08\xe4\xd2\xe1\x12\xd3\x5f\
+\x82\xc7\x05\x94\x12\xa3\x16\xc9\x7e\x93\x99\x31\x29\xd3\xcc\x74\
+\x22\x9a\x8d\xc3\x2a\xed\x6f\x61\xef\xb0\x7b\x3f\x3b\xf8\x21\x73\
+\xe2\x7c\x05\x8a\xb2\xee\x83\xd5\x6b\x46\xb7\xb3\x3d\xa0\xa6\x27\
+\x83\xd7\x86\xfd\x3a\x9b\xdb\x8c\x06\xf3\x59\x4c\x4b\x5e\x48\x92\
+\x12\xd3\x24\x6d\xdd\xd7\x67\x5f\x83\x64\x4d\x5a\x91\xdc\x92\x92\
+\x1f\x7b\xa9\xa9\xca\xec\x1d\x1a\x78\xfc\xf8\xd1\x8b\xe4\x3b\x92\
+\x34\x29\x9b\x57\xe6\xaf\xd3\x69\xd4\x3a\x51\xe3\xf5\x06\x9b\xcd\
+\x69\x99\xd9\x34\xa3\xbf\x40\x0c\xfc\xe8\x7e\x32\x77\x9b\xee\xcc\
+\x9a\x7b\x36\xe6\xc6\xa8\x12\x60\xec\xba\x8e\x43\xc7\xf7\x39\x6e\
+\xf4\x18\xbe\x10\xb3\xf4\x79\xc1\xcd\x14\xe9\xb4\x49\xef\xdd\x53\
+\xf4\xb8\xfc\x40\xc7\x2e\x34\xdb\x2f\x85\x24\x32\xff\x70\x4b\x04\
+\x40\x04\x31\x26\xeb\x8a\x70\x87\x3a\x17\x17\x8d\x67\x51\xd7\x70\
+\xda\x66\xb3\x58\x59\xca\xe0\x38\xc3\xd3\x2a\x4a\x98\xab\x94\x0a\
+\x3c\x03\x26\x9a\x12\x3e\x97\x61\xc5\x4b\x46\x44\x8f\x8a\x1e\x97\
+\x96\x27\x8d\x8f\x4a\x62\x28\x05\xca\x4f\x7f\xc2\x19\xcd\xcd\xcb\
+\xf4\x25\x1d\x61\x2b\xcb\x20\x02\xb1\x37\x1e\x5c\xf0\x4c\xe2\x55\
+\x43\xbd\xe3\xbb\x2b\xfa\x6b\xbc\x97\xac\x3d\x5c\xd2\x31\x58\xd1\
+\xcd\x7b\x43\xfb\x4a\x5c\x4c\xca\xc6\xbb\x67\x3d\x28\x3f\x64\xda\
+\x8b\x46\x6b\x5d\x48\x46\x1e\xcc\x1b\x7e\x09\x4f\x25\x8a\x42\x96\
+\x66\x2a\x46\x47\x4e\x40\x9f\xb3\x07\x1d\xbd\xad\xe8\xb5\x76\x0a\
+\x02\x4f\x39\x50\x02\xb9\x58\x29\xd1\xa8\xe2\x24\x71\xea\x24\x98\
+\x5d\x26\x58\x5d\x66\x24\x2b\xd3\x51\x53\xa7\x77\xb4\x76\x1b\xd6\
+\xea\x4b\x3a\x3e\x1a\xca\x62\x81\x04\xb6\xc4\x52\x96\x15\x39\xbd\
+\xd4\xfb\x44\xe5\x7a\xd3\xee\x70\xd7\x2b\x73\xb7\x6a\x7f\xaf\x8b\
+\x4a\xde\xb0\x68\xc6\xfd\xf2\x0b\xd6\x1a\x9c\xed\xaa\x06\x28\x0d\
+\xad\x95\xfc\x48\xf8\x48\x11\xb0\xd0\x4a\x13\x10\x13\x11\x0f\x19\
+\xab\x84\x84\x89\x80\x57\xf0\xc0\xe5\x71\xc0\xec\xe8\x42\x8f\xbd\
+\x1d\x69\x51\xe3\x30\x26\x3a\x17\xc7\x2e\x94\x3b\x4c\x96\xd6\x75\
+\xfa\x17\x4d\xbb\x82\x31\x0c\x49\xa0\xb0\x2c\x76\xb9\x60\xa7\x15\
+\x55\xa5\x9d\xb6\xe1\xde\x99\x5f\xa6\xbd\x3f\x42\xaa\xfe\xaf\xc2\
+\x29\xc5\x32\x2a\x15\xc8\x51\xe3\xfe\x81\x8b\xdb\x70\x65\x47\x18\
+\x17\x0b\xc9\xf0\x40\x8c\x2c\x1e\x39\x71\xb3\xe1\x75\x78\xf9\x53\
+\x0d\x55\x56\xbb\xc3\x52\xac\xdf\xd8\x79\x74\x38\xf0\x21\x04\x82\
+\xf4\xe1\xda\xe0\xb3\xfc\x97\x34\x39\x32\x8d\xf8\xaf\xe3\x52\xf2\
+\x12\xb3\xef\xb8\x4b\xda\x68\xab\xc7\x85\xce\x1a\xd8\xdd\x96\x40\
+\x2b\x04\xb9\x53\xb0\x8b\xc5\xca\x47\x20\x3d\x26\x1b\x6a\x91\x16\
+\xf5\x4d\x67\x1d\x8d\x9d\x97\x8e\x50\x17\xbf\xa6\xf2\xe5\xee\x1b\
+\xb8\x0d\x21\x41\x7d\x66\x18\xf0\x21\x4d\x95\x04\x71\xee\x3a\xed\
+\x6f\x15\x2a\xf9\xfa\x71\x69\x79\xec\xa8\xa4\xcc\x08\x0b\xdf\x85\
+\x66\x73\x03\xba\xb9\x36\xf4\x3a\xbb\xfa\x8f\x8a\x7e\x96\x91\xb2\
+\x72\x44\x45\xe8\x10\x2b\x1f\x81\x04\x65\x0a\xdc\x2e\x37\x1a\xdb\
+\x2e\x73\xcd\xdd\x57\x4c\x4e\x9b\xf7\xf9\xea\x57\x4d\x5f\x21\xc8\
+\x5e\x03\xbf\xc3\x12\x18\x0a\xfc\xed\xe8\x98\x91\x33\xa4\x91\xa9\
+\x85\xca\x87\x23\xd4\xa2\x27\xe3\xd5\x29\x8a\x38\x6d\xa2\x28\x5a\
+\xad\x93\x28\x22\x54\xa0\x84\x87\xdb\xeb\x04\x4b\x44\x60\x21\x82\
+\xc7\xed\x81\x85\xeb\x46\xaf\xa5\xcb\xde\xd6\xdd\x22\xb2\x3a\x7a\
+\x4e\xba\xfb\x84\x37\xbf\xfd\xb0\x5b\x8f\x8e\xa1\x6e\x86\x86\x26\
+\xf1\xb3\x2c\x10\xd4\x00\x80\xe4\xae\xd5\x8c\x89\x4c\x26\x05\x24\
+\x82\x99\x4d\x58\xa4\x12\xc2\x68\xc5\x22\x31\xcb\x7b\x79\x41\xa0\
+\x5e\x0e\x14\x2d\x02\x8f\x33\xbc\x83\x9e\xb8\x71\xd2\xa9\xbf\x56\
+\x6e\xb3\x85\x01\xfc\xa3\x2d\x10\x4e\x3f\xec\x1e\x08\xd3\x0f\x37\
+\x67\xf0\xc2\xd4\x4f\x17\xae\x1f\xdc\x6e\x29\x43\x11\xb8\x9d\x77\
+\x82\xad\x77\x2b\xa1\x61\xfa\xb7\x05\x72\x38\xf9\x3f\x6f\x43\xc4\
+\x6f\x78\x5c\x1a\xee\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\
+\x82\
+"
+
+qt_resource_name = "\
+\x00\x06\
+\x07\x03\x7d\xc3\
+\x00\x69\
+\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\
+\x00\x0b\
+\x0e\xee\x9d\x67\
+\x00\x44\
+\x00\x6f\x00\x6e\x00\x6b\x00\x69\x00\x50\x00\x79\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x0d\
+\x0d\xd3\x49\xc7\
+\x00\x61\
+\x00\x74\x00\x74\x00\x72\x00\x69\x00\x62\x00\x75\x00\x74\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x16\
+\x0c\x01\xd6\x87\
+\x00\x61\
+\x00\x74\x00\x74\x00\x72\x00\x69\x00\x62\x00\x75\x00\x74\x00\x65\x00\x5f\x00\x72\x00\x65\x00\x61\x00\x64\x00\x6f\x00\x6e\x00\x6c\
+\x00\x79\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x09\
+\x0a\x92\xb1\xa7\
+\x00\x6d\
+\x00\x61\x00\x63\x00\x72\x00\x6f\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x0b\
+\x08\x93\x9f\x27\
+\x00\x63\
+\x00\x6f\x00\x6d\x00\x6d\x00\x61\x00\x6e\x00\x64\x00\x2e\x00\x70\x00\x6e\x00\x67\
+"
+
+qt_resource_struct = "\
+\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\
+\x00\x00\x00\x00\x00\x02\x00\x00\x00\x05\x00\x00\x00\x02\
+\x00\x00\x00\x98\x00\x00\x00\x00\x00\x01\x00\x00\x46\x2f\
+\x00\x00\x00\x80\x00\x00\x00\x00\x00\x01\x00\x00\x39\x5e\
+\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x01\x00\x00\x2e\xfe\
+\x00\x00\x00\x2e\x00\x00\x00\x00\x00\x01\x00\x00\x1f\xb4\
+\x00\x00\x00\x12\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
+"
+
+def qInitResources():
+    QtCore.qRegisterResourceData(0x01, qt_resource_struct, qt_resource_name, qt_resource_data)
+
+def qCleanupResources():
+    QtCore.qUnregisterResourceData(0x01, qt_resource_struct, qt_resource_name, qt_resource_data)
+
+qInitResources()