diff options
Diffstat (limited to 'src/torkview_base.ui')
-rw-r--r-- | src/torkview_base.ui | 1005 |
1 files changed, 1005 insertions, 0 deletions
diff --git a/src/torkview_base.ui b/src/torkview_base.ui new file mode 100644 index 0000000..c2c5288 --- /dev/null +++ b/src/torkview_base.ui @@ -0,0 +1,1005 @@ +<!DOCTYPE UI><UI version="3.3" stdsetdef="1"> +<class>torkview_base</class> +<widget class="QWidget"> + <property name="name"> + <cstring>torkview_base</cstring> + </property> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>753</width> + <height>540</height> + </rect> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>3</hsizetype> + <vsizetype>3</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="caption"> + <string>tork_base</string> + </property> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="QFrame" row="0" column="0"> + <property name="name"> + <cstring>frame4</cstring> + </property> + <property name="minimumSize"> + <size> + <width>730</width> + <height>78</height> + </size> + </property> + <property name="frameShape"> + <enum>NoFrame</enum> + </property> + <property name="frameShadow"> + <enum>Plain</enum> + </property> + <widget class="QLabel"> + <property name="name"> + <cstring>textLabel2</cstring> + </property> + <property name="geometry"> + <rect> + <x>199</x> + <y>63</y> + <width>521</width> + <height>21</height> + </rect> + </property> + <property name="text"> + <string></string> + </property> + <property name="pixmap"> + <pixmap>image0</pixmap> + </property> + </widget> + <widget class="QLabel"> + <property name="name"> + <cstring>textLabel1_2</cstring> + </property> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>199</width> + <height>79</height> + </rect> + </property> + <property name="text"> + <string></string> + </property> + <property name="pixmap"> + <pixmap>image1</pixmap> + </property> + </widget> + <widget class="QFrame"> + <property name="name"> + <cstring>frame5</cstring> + </property> + <property name="geometry"> + <rect> + <x>199</x> + <y>0</y> + <width>515</width> + <height>25</height> + </rect> + </property> + <property name="paletteBackgroundColor"> + <color> + <red>0</red> + <green>154</green> + <blue>0</blue> + </color> + </property> + <property name="frameShape"> + <enum>NoFrame</enum> + </property> + <property name="frameShadow"> + <enum>Plain</enum> + </property> + </widget> + <widget class="QLabel"> + <property name="name"> + <cstring>textLabel3</cstring> + </property> + <property name="geometry"> + <rect> + <x>711</x> + <y>-6</y> + <width>20</width> + <height>90</height> + </rect> + </property> + <property name="text"> + <string></string> + </property> + <property name="pixmap"> + <pixmap>image2</pixmap> + </property> + </widget> + <widget class="QFrame"> + <property name="name"> + <cstring>ChartFrame</cstring> + </property> + <property name="geometry"> + <rect> + <x>198</x> + <y>8</y> + <width>515</width> + <height>60</height> + </rect> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>3</hsizetype> + <vsizetype>5</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>0</width> + <height>28</height> + </size> + </property> + <property name="frameShape"> + <enum>Box</enum> + </property> + <property name="frameShadow"> + <enum>Plain</enum> + </property> + </widget> + </widget> + <widget class="QTabWidget" row="1" column="0"> + <property name="name"> + <cstring>TorkTabs</cstring> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>3</hsizetype> + <vsizetype>3</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>690</width> + <height>0</height> + </size> + </property> + <widget class="QWidget"> + <property name="name"> + <cstring>Anonymize</cstring> + </property> + <attribute name="title"> + <string>Anonymize</string> + </attribute> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="KWidgetListbox" row="0" column="0"> + <property name="name"> + <cstring>Anonymizer</cstring> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>7</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>500</width> + <height>0</height> + </size> + </property> + <property name="focusPolicy"> + <enum>StrongFocus</enum> + </property> + </widget> + </grid> + </widget> + <widget class="QWidget"> + <property name="name"> + <cstring>TorNetwork</cstring> + </property> + <attribute name="title"> + <string>&Tor Network</string> + </attribute> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="QSplitter" row="0" column="0"> + <property name="name"> + <cstring>splitter5</cstring> + </property> + <property name="orientation"> + <enum>Horizontal</enum> + </property> + <widget class="QGroupBox"> + <property name="name"> + <cstring>Network</cstring> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>5</hsizetype> + <vsizetype>3</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="title"> + <string>Network</string> + </property> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="DndListView" row="1" column="0" rowspan="1" colspan="2"> + <property name="name"> + <cstring>serverList</cstring> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>3</hsizetype> + <vsizetype>3</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + </widget> + <widget class="KListViewSearchLine" row="0" column="1"> + <property name="name"> + <cstring>serverFilter</cstring> + </property> + </widget> + <widget class="QToolButton" row="0" column="0"> + <property name="name"> + <cstring>clearButton</cstring> + </property> + <property name="text"> + <string>...</string> + </property> + </widget> + </grid> + </widget> + <widget class="QSplitter"> + <property name="name"> + <cstring>splitter4</cstring> + </property> + <property name="orientation"> + <enum>Vertical</enum> + </property> + <widget class="QGroupBox"> + <property name="name"> + <cstring>groupBox2</cstring> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>3</hsizetype> + <vsizetype>3</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="title"> + <string>Connections</string> + </property> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="DndListView" row="0" column="0"> + <property name="name"> + <cstring>streamList</cstring> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>3</hsizetype> + <vsizetype>3</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + </widget> + </grid> + </widget> + <widget class="QSplitter"> + <property name="name"> + <cstring>splitter3</cstring> + </property> + <property name="orientation"> + <enum>Horizontal</enum> + </property> + <widget class="QGroupBox"> + <property name="name"> + <cstring>groupBox1</cstring> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>5</hsizetype> + <vsizetype>5</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="title"> + <string>Circuits</string> + </property> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="DndListView" row="0" column="0"> + <property name="name"> + <cstring>circuitList</cstring> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>3</hsizetype> + <vsizetype>3</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + </widget> + </grid> + </widget> + <widget class="QGroupBox"> + <property name="name"> + <cstring>groupBox3</cstring> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>5</hsizetype> + <vsizetype>5</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="title"> + <string>Routers/Entry Guards</string> + </property> + <hbox> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="DndListView"> + <property name="name"> + <cstring>ORList</cstring> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>3</hsizetype> + <vsizetype>3</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + </widget> + </hbox> + </widget> + </widget> + </widget> + </widget> + </grid> + </widget> + <widget class="QWidget"> + <property name="name"> + <cstring>TorLog</cstring> + </property> + <attribute name="title"> + <string>&Tor Log</string> + </attribute> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="QListView" row="0" column="0" rowspan="1" colspan="3"> + <column> + <property name="text"> + <string>Time</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>true</bool> + </property> + </column> + <column> + <property name="text"> + <string>id</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>true</bool> + </property> + </column> + <column> + <property name="text"> + <string>Severity</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>true</bool> + </property> + </column> + <column> + <property name="text"> + <string>Summary</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>true</bool> + </property> + </column> + <property name="name"> + <cstring>infoList</cstring> + </property> + <property name="resizePolicy"> + <enum>Manual</enum> + </property> + <property name="hScrollBarMode"> + <enum>Auto</enum> + </property> + <property name="selectionMode"> + <enum>Extended</enum> + </property> + <property name="allColumnsShowFocus"> + <bool>true</bool> + </property> + <property name="showSortIndicator"> + <bool>true</bool> + </property> + <property name="resizeMode"> + <enum>NoColumn</enum> + </property> + </widget> + <widget class="QPushButton" row="1" column="2"> + <property name="name"> + <cstring>clearInfo</cstring> + </property> + <property name="text"> + <string>Clear</string> + </property> + </widget> + <spacer row="1" column="0"> + <property name="name"> + <cstring>spacer1</cstring> + </property> + <property name="orientation"> + <enum>Horizontal</enum> + </property> + <property name="sizeType"> + <enum>Expanding</enum> + </property> + <property name="sizeHint"> + <size> + <width>370</width> + <height>21</height> + </size> + </property> + </spacer> + <widget class="QCheckBox" row="1" column="1"> + <property name="name"> + <cstring>ShowHostNames</cstring> + </property> + <property name="text"> + <string>Show Host Names in Log Entries</string> + </property> + </widget> + </grid> + </widget> + <widget class="QWidget"> + <property name="name"> + <cstring>TrafficLog</cstring> + </property> + <attribute name="title"> + <string>Traffic Log</string> + </attribute> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="QSplitter" row="0" column="0" rowspan="1" colspan="2"> + <property name="name"> + <cstring>splitter4</cstring> + </property> + <property name="orientation"> + <enum>Horizontal</enum> + </property> + <widget class="QGroupBox"> + <property name="name"> + <cstring>groupBox5</cstring> + </property> + <property name="title"> + <string>Tor Traffic</string> + </property> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="QListView" row="0" column="0" rowspan="1" colspan="2"> + <column> + <property name="text"> + <string>StreamID</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>false</bool> + </property> + </column> + <column> + <property name="text"> + <string>Time</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>true</bool> + </property> + </column> + <column> + <property name="text"> + <string>Host/Port</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>true</bool> + </property> + </column> + <column> + <property name="text"> + <string>Circuit</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>true</bool> + </property> + </column> + <property name="name"> + <cstring>TorTraffic</cstring> + </property> + <property name="selectionMode"> + <enum>Single</enum> + </property> + <property name="allColumnsShowFocus"> + <bool>true</bool> + </property> + <property name="showSortIndicator"> + <bool>true</bool> + </property> + </widget> + <widget class="QPushButton" row="1" column="1"> + <property name="name"> + <cstring>clearTorTraffic</cstring> + </property> + <property name="text"> + <string>Clear</string> + </property> + </widget> + <spacer row="1" column="0"> + <property name="name"> + <cstring>spacer2</cstring> + </property> + <property name="orientation"> + <enum>Horizontal</enum> + </property> + <property name="sizeType"> + <enum>Expanding</enum> + </property> + <property name="sizeHint"> + <size> + <width>240</width> + <height>20</height> + </size> + </property> + </spacer> + </grid> + </widget> + <widget class="QGroupBox"> + <property name="name"> + <cstring>groupBox6</cstring> + </property> + <property name="title"> + <string>Non-Tor Traffic (Not 100% Reliable)</string> + </property> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="QPushButton" row="1" column="3"> + <property name="name"> + <cstring>clearNonTorTraffic</cstring> + </property> + <property name="text"> + <string>Clear</string> + </property> + </widget> + <widget class="QListView" row="0" column="0" rowspan="1" colspan="4"> + <column> + <property name="text"> + <string>Time</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>true</bool> + </property> + </column> + <column> + <property name="text"> + <string>Host/Port</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>true</bool> + </property> + </column> + <column> + <property name="text"> + <string>Program</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>true</bool> + </property> + </column> + <column> + <property name="text"> + <string>Inode</string> + </property> + <property name="clickable"> + <bool>true</bool> + </property> + <property name="resizable"> + <bool>true</bool> + </property> + </column> + <property name="name"> + <cstring>NonTorTraffic</cstring> + </property> + <property name="allColumnsShowFocus"> + <bool>true</bool> + </property> + <property name="showSortIndicator"> + <bool>true</bool> + </property> + </widget> + <widget class="QSpinBox" row="1" column="1"> + <property name="name"> + <cstring>NonTorTrafficMaxEntries</cstring> + </property> + <property name="suffix"> + <string> entries</string> + </property> + <property name="maxValue"> + <number>2000</number> + </property> + <property name="minValue"> + <number>200</number> + </property> + <property name="lineStep"> + <number>100</number> + </property> + </widget> + <widget class="QLabel" row="1" column="0"> + <property name="name"> + <cstring>textLabel1</cstring> + </property> + <property name="midLineWidth"> + <number>1</number> + </property> + <property name="text"> + <string>Clear after every:</string> + </property> + </widget> + <spacer row="1" column="2"> + <property name="name"> + <cstring>spacer2_2</cstring> + </property> + <property name="orientation"> + <enum>Horizontal</enum> + </property> + <property name="sizeType"> + <enum>Expanding</enum> + </property> + <property name="sizeHint"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </grid> + </widget> + </widget> + <widget class="QCheckBox" row="1" column="1"> + <property name="name"> + <cstring>kcfg_LogNonTorTraffic</cstring> + </property> + <property name="text"> + <string>Enable Logging of Non-Tor Traffic</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + <widget class="QCheckBox" row="1" column="0"> + <property name="name"> + <cstring>kcfg_LogTorTraffic</cstring> + </property> + <property name="text"> + <string>Enable Logging of Tor Traffic</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </grid> + </widget> + </widget> + </grid> +</widget> +<customwidgets> + <customwidget> + <class>DndListView</class> + <header location="local">dndlistview.h</header> + <sizehint> + <width>-1</width> + <height>-1</height> + </sizehint> + <container>0</container> + <sizepolicy> + <hordata>5</hordata> + <verdata>5</verdata> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + <pixmap>image3</pixmap> + <signal>contextMenuRequested(QListViewItem*,const QPoint&,int)</signal> + <slot access="public" specifier="">contextMenuRequested(QListViewItem*,const QPoint&,int)</slot> + </customwidget> + <customwidget> + <class>KWidgetListbox</class> + <header location="local">kwidgetlistbox.h</header> + <sizehint> + <width>-1</width> + <height>-1</height> + </sizehint> + <container>0</container> + <sizepolicy> + <hordata>5</hordata> + <verdata>5</verdata> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + <pixmap>image1</pixmap> + <signal>selected(int)</signal> + <signal>doubleClicked(int, int, int, const QPoint&)</signal> + </customwidget> +</customwidgets> +<images> + <image name="image0"> + <data format="XPM.GZ" length="6499">789cedd8cb4ec2400085e13d4f31811d31da52063a312e002f8828b033312e4a2f200a2a3745e3bb9bff98f8129df3afbe0d04328b4e4feae67e7c6bea2795cd36d93ea5269d276b53cf76cbe5e1e1f1ecbb52b58dd084a1695a13568f2ad563939a5a10381745b0263ad78c6298c0308eb3a88053d848e3a8e9600a9bb6ddb61666b0a5c15ccc0816b01d139cc1588373e852824f706a092ec416c1673126f8223a824b3125f82a160457300d08be8921c177b141702d5a821b3126b81533823b3127b8875940f0438c087e8afa77e041d467c12f51831d3127d8150b823d980704cfc506c10bd112bc141dc12b714ab02fea37c06b515f0c076241f0061621c1a11811bc152dc13bb1457024b6098e4547702226a423eae7c7fc61f0fb9f3f0c7efff387c14fab257f4f7d999f5f5ecce6ba4df8957c8bc5e2f965b9d27dd0afec5bbdbdaf375b5de1fdcabedd6efff179d05b17bf72afd3e9747be717977a33e657f6f5fbd7839ba15e66fa957e77a3d17852fd39adfc02a2b1b9c2</data> + </image> + <image name="image1"> + <data format="XPM.GZ" length="61153">789cedbd4793eb3cb2f7b9bf9fa2e372f7c604df92a18b8959a8bcf77e621600ad488a46a40c3931df7d20fc13285fe79ce754f7ea36a2bbcfaf4802894c20330142d2fffe5fff7abc3cfbd7fffadfffd5b4ac9dfafff21336ffd7ff0a16b359f77fff3fffd7fffb5fff3df0bc7f39debf06ee68fcafe17fff1ffff5df66f22fff5fc696fc8fe458f360c346aa59de6f449a47925dcd63c9579a2dc94bcdf6867bc503b4c7ee34cbfaf98e6659bfdf6896f5fb03cdb27e73ad59d62ffaabd8d97037d1ec6e387aa9cf936c696652de9566bee1554b3c847c2cd42ce5638666f47fa259cac71ccd523ef341b3948f979aa57c6ca559ca175b9aa57c71aed997fa3c271ec15eab8566c873a059cad33c69863c579a21cfa566298f79ad59ca13ee6b96f294bb9aa5becc956629dffc5e73b0e1fa96784cf67bd42ce5e1be66298fb1af59cae39f6896f2f05eb39427bad02ce5f1c79aa53cab2dcd529ea6d61cc9f6943dc703a9cf85d29705f9e223cd529ef040b394677ea759cac32e354b79d852b394c7d8d62ce5314ccda1ecdf0b4bf99a67c5906fadeb1b487b771db10dfdcd5acd52de75ac59cabb7ad28cf175a859cae78f344b79c27bcd529e56e9df46fb6b35be1db4df0c35c37e9666d97ed76b96faa9cf34cbf6f9a966a91fdfd02cdbe785e281f42761a959eaa79d6896f3b76835cbf9bb5e6996f2b7b666e8eb58b3943757fd73495fae66d8b7d32ce58ff7344bf99773cd529fb192df85fcc6bd66293f6b34c3ff30cd52fefa46b39c4ffd4b7d98df5a1ec8dfcf344bf9176bcd52fe6545ecc13e95a959de5fa79ae5fd79a919fd1d6996fd9de79a657feb4bcd986fca5f79e8af116a96fde3679aa57de203cdb2bffe8566d9dfc550b3b4df4af707fd5f3f6a96ed576abc33ea4fa559f62779b92efbc302cdf2795fe98741feb0d02ce50b52cdf01f8e66cc8f81668cffa966f8f76dcdb2bd85be7f28c74bafeee79077f9a459ca9bb89ae14f6acdb2be508d1f4ef3c7d62cfb532c34235f88344b7b442ff723de7b9ae57899359a65ff3a355ef850dedf297df9e49f1f354bf9fb0bcd982f9966297fa2f2051ff21773cd52fe3ad68cfce552b3943f186b96e3835d6b96f227fb9aa5fc69af59ca93df6b96f22c957efda1ac7fa9e24180fe640f9ae5f3d35ab37c3e50fd0bc81f0c34cbfe749666393f827dcdb23d3ed12ce54f95bf08305e6673cd521fbdba3fa4f979a159cab356f331843c4da959ca53199aa53d5b47b31cefeb5433fcff5cb36c2fd1f743bee9b56629df54b7077d66f79a657beba966d9def2e53ae2cbb666cc27e5ef228aa76a7c46e8dff44633fc51a619f968a959b6e71f6b96f3397a795e8e1723d62cdb672fd7616f954f44d4df4ab3ecefec51b36c2f9b6b96ed6524ff600bf2f6b166595fb8ab19f1ee4033f24347b3d4d7f25133f2e16bc5902ff434cbe7134bb3942fe59aa57cc548b3b47fbfa319f912e9733080fed34eb3ec4f34d22cdb4f7dcd18ffb166391ea25ab394c7986a86ff7fd62ce723cf140f657be944b394b7dcd62cf5b17cd02ced5b31cdf05fba3f23d99f15f937513de6ef9166f467a059f66779a359ead79c6ac6fc5a6a96fd2bb6344b7d335331ec13e8e7315f923dcd88ef5cb39c8fdda9e29194674ef9fa6004793ba6595e4fb735cbf65663cdb087a119ebbf17c67ac3d52cf51d0c344b7dfb5b9aa57e8ba166e483ad62f437b635c33e4adf23d8a327ff3d1893fe0dcdb23f7daa19f954ae19f3add28cf1b1a719f9ea4ab3942f5a281ea2fe5dcdc8974f148fb07e7bd62cefef285f1b507e3fbfd18cf8e96996f24c5feec7fa28d58cf5d09166e433b566f8a34431fc7170ac19f369ad59d617ef6b46fcd0cf43fe29ad2f0736e45dde6a86ff5c6ac67ae95e33fca79a6f36fc89d16b96fdf3879aa5fea35633faa3fc930dfdd65a1ec8b752fa7268bc9e69c6f89c6b96fa5d6c6946be5f6996fd375eae233f3c578cf117ebf64672fccd1f344b795ad51f17ed8733cde8efb366ac774f354b7bae8f344b7998ea8f0bffbde83463bdf8721df98fab19e3438d2f17f2973b9aa13f25bf0779a78566a9aff90bc3df3f6a96f2f350b3d4e7f452b3b46739d18cfc755733ec7ba818f3cbd4cf633cf20bc5a45f353f19e46b1e3563beec6996f2e5379aa57cd15233f217159f281f9fe69a657b95af19f9b2a919f5a9f8ca20df9af2eb0127f91e34233e379a313f669aa5bd162bcdd08f928fa37d76a1598ef742d787f9dda8f1cb214fa2fc39e5c3cb52b36cbfef344b7b995b9aa53c9dd2af8ff167349a65fd61ae19f9c8b966f80735be7dc8d3a8f946f96d34d78c78aefc29e5bbf9b566c4d34633f69b8e35633da6eb43fc9f3d6846feb0d68c785f6bc678d3f2617e47979a31fed4f321ad87ee3523be0d34633f68a859d69f6e6996f665cabfa9fcf95c33d6a37b9a65ff625d1ff5afd62cf5d9a9f94ff96a9f69863d8f35c3dfabf11aa17d73a659b6ef3f6986ff56f94344f905d967b845f53f6886ff7a548cfad3b566f97cbcab19e33bd20c7f3ed40c7f7aa719eb11ae98e61ff99321e587eb4633e6fbae66e83f510cf90c5b33f6932ccdd80f78b92ec75fe86a86ff7db98efd883bcd583f2c14d378a2f9391c429eb5ba3e843c8b47cd723c56079ae18f6e354b79a273cd98cf378ad15ea0f439827d8bb166f88b6dcdd87f5a6ac67ecbb162c413bfd60cfdd3feca708cfad9b666ecb78f35a3bf4f8ae9799a4f430bcfcf679a91bf469a914f559ab1beaa35637f774733f2b9b166391ea297e7a53cb11a0f16fa67da9a917f5c6b463e48f9c8d0867cf94c33de1fec6846febcd28cf17ba919f1f34c31da0faf35c31f3c6846fb4a5e07fae82f3563bdd16946bc39d42cc747b5af59ea675669863f54fda1fc26a4f5e6d0257ddf6ac6fe61aa19eb9113cdd82f54f389f28f851a5f1eea8bc79ab1fe7cb92efd9be96896ede58566f85b35df285f58a9f1c4505f77a719ef6b1e3463bfc1d12cdb5b2d35c3df1f6ac6787ab91fe359d983c15e3ed38cf500c5cb21a7f5b4a919ed679ad1bf5bcdc84ff714a37e634733f693d5fcf7495fbd629a5faaff01fab36e35235e5c6b863fb735cbfe996abe06343e2bcdd85ff43463bed3fa751892bed47808f13cef34c3ff28ff46f1a5237f38daa2f1b8d68cf93a550c7d704333da277d8c683d1f3e6ac6feb4ba4efed1a07c4bb833ecd75f69c6fd8ac95f2d289f1f917f080e34cbe7fd43cd789efce388e6af41fe7444f3cba4f13ca2f961523e31a2f11caafa683c1964bf11d99f93bf1d91bd19e57b23b28741f9d188f4cd687c8c48df3eb53f26fd45d4dfb1d217d9774cfa3229ff1f937e0c8a3763d20fa7f13ea6fe8734ffc7d47f93f2d931f5df504cfdf7697c8da9ff098dc731f5dfa4fe8fa9ff4c31f5df277f3aa6fe9b64af31f5dfa0f137a6fe1b24af45fd3768fe59d47f83e6b7a5faafee57fd27fb5ad47f93f46d29fbd3face52f6a7f168a9fe533e6351ff39c53b8bfa6f923e2cd57f1aaf16f5df207b5bd47f83e69ba5fa4fe3dda2fe9bb43eb354ff69bd6353ff4df2e736f5df247ddaaaff94dfdbd47f93dab355ff697cdbd47f93fa6f2bfbd378b6d5f8a7f963abf14ff1c956fd27ff67abfe533e6753ff4df28736f5dfa4f960abf14ffab3a9ff9cfc8badfa4ffd7154ff291e39aaff341e1cea3f23fd39d4ff96ece150ff0df53cf59f91bc8eea3fcd0747f59fece750ffa7341f1cd57f8a670ef5dfa7f1e3a8f1afda57fda77cc851fd57ed53ff43d51feabf49fa7095ff247fe052ffa7a41f57f59ff24997facf68bcb8d47f46fbbbae1aff144f5db57f43fecda5fe738a972ef5dfa0f1e652ff338a5f2ef59fd17c7195ffa3f8e5aafed37c74d5f8a77cdd55fe8fc6ababfa4ffdf1d4fca7fe7b6afed3f8f554bca078e851ff7dd29fa7fa4ffaf2a8ff3ee5539e9aff641f4fd99ffae7a9f14ff980a7f219f477b079e32be3f519b183f32ceb9c98de27f59067280c8af515e41d7a6c84fd51f897913acfd1613c6cc221e229e6df48ddbfc67c1a7b7c847c16fdb3b6389ddf41ff2c715de65b2dfcad2d24427e88f1608beb52fe25e287a3ce97ac313f1de15f71be01e3d955e73552cc6fd7f3717d09fd78eafcc51af1cc1bf8b45ec6fcf4bc6084f781580f32c132ff5980f916ed87b71eb183f7e53dc60717e983cc3fd60531ed97ac305e7d755e6301fb055bb4bf9b3f11d3f981c53931bd8f8fa1ffd08b46b2fe06f133daa2fdd3c58498a1fd0ef94f24ee97f9cf4ab6b779db43ebc73db0178d65beb394e3633050e707960171087b0417602622fc86e7329f128b61da4f5b19c4f47e37bb04abf751b99cef83917a1f15a0fd111b8c65fe534aff36186f3426c713076f8aecff2d58dc8ffc55ea7b20c613ed173c80d5fbacc99a98f6f7d9ad66a9ffc94a33ce8b2560d71de37dee3358b4273997f179600fe8bc1083fc361b8e65fd35e475843c987f0131ed772d7262dabf299760f53ea192f36520ac8ff56c8ff65db51fbd86fe5d911fe27d385d67a3b19c4f13e8d753f54d02628bf66b0f886d5c9fc17e6c30a0f7152d31edcff74fc4b43f3a91f371c0953cab4633f637f7c16c3c96e36126fdab18fdb49fdba17d7fcc317ed6bb60cbc2fd4b19df07817a5f307b26f6b03fb3b489693f7425f38f41b8c5913f1733f06084f552db1007683fc4f80c993596cfb772fe0c22b5ff9c8e89e93c433f24a6f9cbe4781a0ed4fe737a40acc65fab19fab488697fb40fc1c331e45b7330b3c7383f23fb3f1c0e68fd3d37885daccfaa5362aa7f7e0156fb610dea1b0d687f62ea12fb686f85f6477a3f8a819933c6fb71399f869bf41def6f1c627abf9d5f82557b1dea1b33c792fdafe5f81d5a0386f5e164494cfba555484cefb77bc8670de97dec72ad59f62fd80233d782bf91e361b37b82fbf908acae67b82ed22df8b7664c4cefe7fa476207fe9e6560e65972fc2ce5fc19ba030bfeb51a13fb907ffa0456f65b8c35cbf15be79a315f38b185fe6419b17a9fe58345fb581fc29edec019c11f34c4b47e6e1660513fde47a13d4f3c0f7f85f1b17157b2bef28138407c2e67c4e148de3fe9c042df523f13464cef2b03aa6f68917e97c4f47ea93f26a6fd8f16fde30317f1248dc1a2bf529ee25931f4bd86fd386316ceab42fffec0413c68e79ab19eebc14307cf4f1262daff590fc116f99f0ef2fa8c5bf08fd2df0d03610ff8a719b10bfd67379ab19f9b127bd047b126a6f73b21fa1b88fa65fb4b99ef0dc38187785042bfe190ec53c8783e8c8603e413a54b4cfd8f4a30f32d29df44d63fdaecff227f1812d37e413f2226fd272131f577794e4cfb27dd183c1ec1ff752bb06a2f91f9c368203488e72de208e327e6e0319d67caa47e46c3a10bf9928e38803ea673300b2cd95e22f397d16818a2bd468e9fd178a301d91f39df47969017efc751bf35122b58e97fe4fc18394386f130ed8823e46b810b1e0dd1de1afd712cdf42be7705669105ff28c7cfc81d6d8de4f5729f784cfd592bc6f30bd8c3dbf4508e8f1d62babf77886d8a470fc42ef2cf899cef2326d247d9bf49483cc6fd71496c5938ffc6c0e310f16825f7ff465c680cf29c2926ffc0886df8ab54fa8fcdee0ef2977e4c6c61fe270f9ae5fdadcc8f4681989f52de2224f6c7386f08fd0623daef0e6b62cf96fd992d8919bd0fdb065b74fe3194f363148e18eeef1f8843b4cfa01f31da30ff1339dec75b236ec33f4af9c603e18fa4fdb2123cf2717d6a120736f6fbe5f81f0fc5fc93f517f760319e30be3b621feb8f680a7607b6f4ef1d070b8562fd21e3a3309645f51f8085c472fec62bf04602a94f192fc6c2db40be490416fa813e7be210eb9be8196cd3fbf1ae053b36fc4326c7ffd81e913f99421ff698e49db6c443f044c68bf1663e207e71e2688cf5879c5f6377a301799d98db36f211e8d313e104e781ef15c37f2cd11f11ed6dbc9fdd01dbf43e7085eb5c48847cb3506c63bf1afaf6372344da1bfaf3c72eda6f326286f622e8d3b703e4635d0ce68e83f75fd2df8c836160cbfeae72b045e3d9b7c1dc75906fa0fd7018388847682f14f2607d47d7c72ef2eda941cc507f047d8636e5b773e94f36bb83d4fe2178ec213f5a58c43ef2df56e6c7965820235ec6c7c43efa13f9606780f8564b7f26962b1e9e8fd78a21ef52ae47ada1d030d61f47c43e8d973be210fd5da2bdd1307290afe460313f917fd3f551085e1d80457d38bfb8208e50df42c6534b4c0007efd7af89c50896ed6d81458f909fe0796b44f69a5d81c5f895f64a1f8943ca0fd01f4b6808e7bf71bf2ddac3f9f68ad8222e896df012f2dbe279ac0fa4ffb19c91e3c8f1356989a9bfbd0d1e07187ffd80588c0069ef39d8a2f5575183b9ef48f95b395f2c77e4a2fe24005ba49f05f4e3097965ff97896257dabfad885d478ef7b624f61c393faa11588c00d99ff88698e25f7b454cf17e714f6c59f2fe24560c7912e8d7e301f4d5caf96a31b14090edd7c7c41cfd5b627c8ae514ea4f0f892dc81378c4b6033e2176f0fc02f2f291e3c2bf17c49e83fcfd9298a1bfed8c98839b0b621ffa9b34c411ec37817dc46a93b8261e8223cc27ee503c8dd03f2efa2ffbbbc0fdfec875918f3e127be0e69c58b50f7bf9aafe1923f6a1ef98ae5b2e8d47e83f10f563fd7645ecbb727e37ea7a40fa4814637ce4d07720fc25f667313e0397fa53ed8179087d2da04f117fa9bd33e210f535117144ed858a21cf04e32f54fd9bcc8847e072ac98fc49416ce17a057b846206e1fc8b4dec61fd1b617e842e9d1f68a1ff48e8433e3f3f058fb720effc847840f2f5c41cf139447b91b030e22de4896c1ff165f1401c51fc803f8a360b44d9fe80d8c5fc68e9ba3b22fd603e4562c106a6fad9103c873d234ef7d72131e9b796e3c3de1ad3fdf50eb18dfeadf6c1c2c34879c32db0e3433f5d00e611f90be9df6d917d405fcd943872a5ff9c1f8385be703e64424cfea66fc0c25d63bd6611537eb51c100718efe139d8a5f7e9614f4cebff06f26d96cbc89718f188ec1769c6f9c890780c4eaec116adcf62cdc86f6647c41ef2b994ea13f2e2f3030be200e32fa1f6ad10fa0e9fc10e9dffe243b0bf45f34ffa37115e4634fece34cbf1300f882df8afca2276d1bfa907b642e82f7b228e6cf85bae18f22cd1bf91189f18ff321edb63612f9c0f3c251e81eb43621bedcf7dcdd80f588145fb88372dd8dea27cf94431d9ff8898e67788fe6edc0bec27fd916d89fad1fe01b183f1956460315e115f208f650fa14f7e03f607341ed09e6810faadf7893dd467c03eb6188ff02ff7603123301e4e8869fc4c0c62d103d91f8fd8c67a61622ab6715ec7d78c789082fd21daaf219f23ec89feee117b24af49cc707fd51207e85f8efa1d6b00ffd1a1ffcea66c783d06abf62ac8eb8e39cd5ff4c715fdc575b9feb285b7c4f80b6ab06dd3fcc67812d9b28b7cdd20f6c195431ce2f9aad38cf50dfc01db245072fced12dbe010e38fb9749eab92f9a7cdc7912be3f914f39f8b1180f630fe7c6b80f6b323620ffd4fef8903e4032bf827317be19fa7cfc40eea5be68ab17e98a5c42e78d5117be85f5480c58202fb73e84f20e4c57a1ff33d10f2e1f3034be221e40d4ab0a80fe7c3e87e6f84f55d85fe86d616d537201eb99007e325143300fbd7dbc4b41e595d1333d41f54c41cf29632dfb023914e61bf688bd8427b6bf437b207f017d38c98ec1d62be469e4ff692f1d6d912f5c9fbcb67621bf52df7c136c37a71b5260e505f29f34d6760591ede5f34c4f47ce411bb36f2cf086c73ccbfe08c38a4fec8f8ec0c2dc745fecf8919fadf5e80c508c1fb0e8338827e2be9df1d912e7bd8dfac8919fa972460757fd8813d0febb952eadb195b1cfd2902b0d020ce0fa66091cee3ba1c7f8e65f9682f3e078b19887c709f38c0fec672ac18f96f526a867e12e210cf9754bfd038f211ba2e3486fc0ef6b0bc01d6e3a5f4378e6d310ffb8bb7c41cf21537c4246ff9a419f115fdb7ed10f2cda04fdb19603e16727c3a8e15e2fe39f4ebd8b45e5c5e818543c47890f34d048380e4b9228e3cc4bf102ce201d67f0e78d323d9bf13b0e752ffa02f4f3c8ff767db606151ec4f17c4f47cb54b6c43de42e6438e18cd1ece07c29ecc1ea0be790656f73733cd52be869e17cb15e443329f72b83df470be17e3970b89715de6d78e2fae633d986946fb09f118d717e8af185e58ef8618ef3ea3f5e90cf70bff81e76717c4c22149fd63be84a247525f859cef4ea4aecfce891df0dc050b0bc2be053143fe519c1173d457ae897db4bfa6fa1cca57820730f3b17f17ef807ddf43fd525e774bb48ff5e303d809507ffcac18f577fb6097f2919994c71dd81eea6b9660a1017c1ee94931f557c6277768330fefcf50dfd0a1f8b0a0eb4223f83c6fae18f5470cec310bf145dad31dd98c419e88d847fd650616f6c37ed81e31ad2fd21171847c60760776b73cf8e700ecd17ed04a8e5f77ecf8944fa1bf637780f6a6687fb36181fde680d841be90dc1333f8d36a40ccd1dfba230e102f52e8df123d96f5872bb01761ff28a4f65840fb7772febac25f7838ff8bf66d67cb93f5970760a151e84b8e47d7b143e82f3b063bd45e8cfe89d53ff6e322e8d3f1230fe311edbbb6585149fb79e0cd0bf10d73d4effa11ea0f604f2fd862f27a0e7b3391a0e1fde49298f6fbe63b60212fe6fb21b158a04a79b6c02c44fcc9e57c75b963439ef49ad8a5fcff8998a1be790b16231ce743d17f1e0cf07c2ef321d7771c86f74d18afbe180178bf0cfdfae27e9c9fc07c08443a043ed78cfdb11e2c9e87ff7d2266686f7545ccc1c91c2ceac7f844ff42d13fec273b6031fef0fe85138f11bf5674bfb088b4ffc224f6d0fe624acc115fe247621ff27723e210cf338cc73018a23f11c673a4e2cbcc27f698f417f9313163385f3e25f661ff05e48fc488433e7b484cebf9da25f610ef7239debc2d87a3fdf20eac9e6f1c6217fd998f893d709a10fbb87f35250ea0dfe016cc7c3abf22e7a73750cfe7727e79623d8afe15a760757d2afd833772d5fa18cf8fbc01ee9fdd838331437f20cf58d487fd47f447ace7901fb5a7c4948f3426586840cef7f580788c78b99e83c5f202f16a42cc28bf531c61bf797d0dd6f2c8f9ea592262c03f2fc162c4e1fb303ce208fb0bf33db09227847e2c3ea6f51fdd1f580ceb0b391f3cdb151a96d73b620eff5edd12fba8af21f6b6108f675bc403b43f93fe4c289ff61f178760210ff265837888fb8b9298e4f1315e1c211fce97c87c4b2c262c8c87850b16f5a1bf43626a3fb58887682f7fd60cfb6d118f10ff9a9166bc2fc9c122dce2fb28606f6fe3d1e5f519585d8fa5bff298d27f6d833ddaaff1313f58e030c44fe99f3cee3a1cf9e53158dc8ff9b74b3c064f0f15237e2c22620bd7eb19b10b8ea0ffcd7634e215c69f2fe693d4ef14f3cb171693fdcda43ff284bfe3727e04980f81bf85785cca7cd80b853cf0d719b1dabf89883dc4ebf69298f61fd7b06fc81cccb712f32b12331ccf97c416e2f7d427a6fd91d50d71007d71ccaf28f0206f2aaf33e12f707d6e813dda1f4ef7893d8a873e31a3f87f411ce2f94cc60b36707d8ef7f1a86f203c10f6a7f689697cce4c62da4fa8a6c4b4df5178c4d45e556bc6fe924dccc1b99cbf6c283c189e3f22a6fdb3a623a6fa0a5333fcb54f4cf5a50be200f123368869ff7385fe0d5980f1cc6fc19b031ab27f727eb091969713fbe0d9ae66ec1758c40138af1553bc91e3858dbd01f4bbda210e313ea68f9a715e881147584f77d7e04d91fe2d01fbf47e718df6c701e7b2bd1cfab1c4f8c2f9959e58c9fb4c4cf256b0bfc568ffa5a6fbd910ebef601bec07580f64d23f33b1fae19037208e707fb102b32df427de221e43be059e77c40886ff813e37fb5b78bf0afd3981cfd11ec6df26bc211f6cc0a27ee833261e227ed43eb145f3af27b6216fb006fb43c4a342c62326660bf6270a4e3c42be913bc4b41f52ed28467bc939b103794b30f342ec27a4259851fcc802e211ed0f3c10bb783e5c827dca1f8247e208f9de1ae39505c2e0b23e8c07ee391cfb3b31b10f7d17d08708bfe84f71486c235fca7788697fa4bf27e688bfe11358d807e775313ec5f0c3fdf36d627abe8d8919780dfdf97cc421bf4b2c22b41cdff01fbe1f72ec57d9c41131fc891f8cc19d494cf72fe03f0246fb4d996217ebf5d92d31e7389f89f114a8e7e7181f623642dee505b18b78525e1173acdfbb8638447ce3b04fc83dd88f3f113362d8370c2c8efb9f896de27be2085c409f919007fefe82d8a3fd118fd8c7fe4208fb463ec37e4b10828331dea777097184f1914bffc6b78487c1fac223a6f696bbc4b43f530d3563ffd8210e713dbb560cf9eb8098dae377e020f271de0f3c101117e703f688238ce7720a16f2c8faeb153147fb654c1c613e959e62d4df19e070cbc7f7f7c87c810f95be56a7c4143f932bcd385f7f401ce2fe588e373ef23cac5f73d43fda7858291fea1bf12dca27d0bf5140ebc5f50e381ca0bf35f43f16f303fe8013d3fe493d270e70bdba24a6fda96a8b38027362513fd6a7d087a5ee5fee10d3fd4b06161a473eb8473cc6fa6d72446c411f89dcffe1b698b190bf02f32d3c9fdc12537e391d11abfa0e896df8a314f73b22a2c05f2f883d9207fa77d4f305f4ed72dadf581c13533ed786c4b47fd4cf895df8fb995c7f89d949fb0953c523dc3f3920a6f95bcbf92d662fe5c7d98a784ced999a711e2a2476a9fe1d620fd7338c2f2ef489fda59ed886ff294e885de4bb01ecc38311e66f3c008763d2978c275c7877dc5f5e137bd80fe97d62f277937d621f5c4bffc403a12f399e7dc81f84968ffd3c3c1f8af10779f17c28e4c37ef98c98d17e8ead18f33fdf25e6585fcf0e89033c1f53fd3ead27a247620ff95a007d87c100f126088869bf3a87fd2231feb0bf3421b6697e36c424efbc23f690cf9627c40cf255cfc43ef2e5c92931f92f1fed47423ff8fe5aa93f7f4b04589c47392056fddd230e693f2553ece3fc105ddf1429afcc47fc8d3f43fcb6c17c1ce0bce71531c58bea8298da4b2f8969bf64ee81fd2de48bfd21f100fe7025f5eb0f05e3bcfb1df110fe2995f9973fe262c52ce7a34b1cd27e52a6d8c77e9001f647688fb7e020f0e1ff1b70e880e7e89f88e6a86fb54d1cf9f0cf3d58c883e71370e804525f13693fdfda14a9af2370e80658cfc87cd8b78507c7fec99838c47e4d968345fd783f7a030e683eb10158d5574a7fe53bbe857c363b24b6915fa60531adf7725733ce57ee2aa6f6a02f47a4df783fd01307c82719fae3841eec9f49ffeebb3eeddfc467c443ccd7c588780ccef78949de32252679eab566e4afa662b45755c42ed6cf9363c53efc3dc6bf2be493fa8d307e3c311ef0fd9218af9e6a2fbe578cfb7de8db0b02e4db7c0a16f5613d8dfe31319ef07ec0251e537d97c416f2d328060b8785fc04fde5a245ec674d89e97a7f40cc713dc4f8e0eaf906faf1857db13e4a881db437db2766580f17c79a919fee11fbf017510816f93af6cb313f36e9aef4ef2dee0f84be112f0e88a9bef92e31ad57bba162ccdf00fad8a4b358ef487f25aa0f61bf12fa0c55fd554aeca1bea5a959fa97be261665c36bd41f8afaa5fe2bd83b52f2851c1c8e39f65f4b623f80fd64ff82cdd7a7c29fcf88235caf1d70b085e727e78a31dfc32bb0aaaf93f123188462c2487d49ff11087f06f9cb0b62da0f6a0f8803d49f9ac421c6e3ea8c3802070d3818a07e4ecf8bf6b0be95f60f46fe90f6b756c436b87a2466686fde100790673e528cebad4b1c61fc4d20cf685364fd8c784cfb353eb1857c6c4d1c6e05d06f4b1c8033e96f83b14ff6498f8869ff679683458dc89f38f118f3b160c4b45eab70bf25d667f83e8a6b706861bef031b11040b627fd45606f0e5ccbfe72e211ea4b57c45680f1774b6ce37e7f07bc798129f98e98d6cb1dc687b32972be1d8243b1e291f35f8e77e16c46b0673321a6fd8800f2bb21e547f1367114e2bc23d80b543ebc20f6707d0dfd78e1001c1e138b0821f52be3b198bc03da9f91f948c08321f683ca15b183f1b55c10b310e7932a628eeb013d2f122c7c7f9e8c0fc219d0fec67c414cfb11dd80d8877d438c3f3ff4e0af138c173f1a848897e040f417e7ab436207f6c9b78949ffb31bc5b0f772a419f73f127bb0c7f49ed8477b26270ef0fc1afe2110fa447e26e36b10aaf6a643628fe3fcf10931c7fa71ba240e427cffe89c38843c2bd83f0cc7b85e607e47aabe926b46feef1233628398da5b9f11d378f3a19f480884f9181153fe97c9f12c66ab8de7d37362aa2fcd3523dfbc240e30beba397853e4780dc1d128c47a52cebf70a0e49f75c434bedb23cd383fb5260e608f6c171c6e21dff46f8943c4b306f20fd5f3494e1c80cb8898f6337a06de14a9af7db09017eb33a9df7024ec8bf70f0558dc8fcfd7ec128f205f81fe8c457b184fdb60212ff6e76e1423bf5e5d128f439c1792f131b4d47e4487ebd6a6487ba13d2bb242ec87caf915da627d8d7cfd8a7818221fab89ad10f313fab1a301fc6742d723ba9ecbf11b3ae110f978696ac6fa5a5d1f81678ac7586f84ea7e9bda5b82a311fcdffa86d80ae1ff71bf2bf481fd16463c46ffaa13620bfa592e35e3fc4143eca0bebe2476619f65ab19f900f4e92a79fc8ed8c6f529f4e989fe21be599ab11fa8ae7b90677aac19ebc51e1c51bc6307c454ff02fa67425fd81f3a22b6507fb4560cfdcd27c436ae2fd4fd0ed61713551f833ea68d66bc8f86bc2c72c0b1f4bf22fd1ae2f96c424ceb95994d4cf517bb9ab1df1328867cb327cdd84f3e2576a9fe4e33be5f8f11731a1f18af3c1ac3ff25181fbe6aafb134e3bcf28a98eacf6dcd88dfad62b247a719fe7e49ec51fdbb9a313e4f897dea0f5d8f9c08eb73f8b340c99366c4d47e7aa619f2ae89a9bdd4d58ce73d62062e1e1543dec8d58c7c618bd8873c5d4d1ca0bf89aa2f88f0fd5c3e58cc377c1f7a4aece27a24f77fc34dbcc1fbd92d6292276f35c31f6e1373bade6bc6f7b3ec138734deee14a3bd909e17e311fac47c8c74fd1631d5575d69c6fb9621b14fdc1307e06e873882befc041cd9887fc113b1037f9acbf9106da9faea5a337e0fc221a6fab39166f8df4c31fa377d20a6fec6a76051b0be9c12933cfebd62c447df25f6707f2afd9fc87ea8bdea5a33fcf58098d6b7dd057853647f39b1837c227088bd08fb23723e4543d15fc47f8798ea9fed10537e50cd8823f02a510c790bba3fda423c5e5e2a8e703eb1d58cf5cc39f100f24cb68987b8bfa834e33ccd113103c7e8ef48c5ffd22026f9a68166c833538cf6f30958c93b5b6bc6fa60a918f275cfc423b2e73eb10b7fb12279947c2de419abf6db73cdd85fedc1aafdd4d68c7c8511d37e58bbad18f2ac3ccdd89f7289495ffd0df198eebfd58ccf474c893df277604bb48fcf5333626a3f5b130f71bdc915a3bdb5a919fe2e251ee1fe95a318d74d83d8c2f3be474cfeaec2fcb0557bd503f108fb6feb2d621bf525679af1fe5dc667e1bde9fef980788cf56b63135bc807b256319eef2a62071c2e88398ddf67623fc2f94b557f00f94bcc7f57d48ffd8309b12852de4bcd58cfdbc41cf3d7dfd58cf176a019bf2fb726a6f6a7a85f780fec974d07c4d4feea9cd8c6fdc923b1034ef7885de2a166f817f5bc47cf9f68c6e7fb213f53f7678fc474bdbed38ccf873f11335c4f4e35cbebdc21f6697cec69c6fad8d48c7c6e451ce0f902cf73d17f9c370989693f713924a6f6fa3d620e4e8e35637ea03e3f72317ee239315d5f1b9ae57cb96a897d5cf7af8803c81b2c34e3bcd5843804c7f00fc1e60e79fd8198fa17ad34237f7d61ac8f52e290f479a819fb7f7bc411aecf305ec4ddd8df280f897decafc501b1aa3f26a6fafc5c33e4ed35e33c5aa659ce8f28228ee8f94c33ce8f41ff423a9a9f03e200f2643362aaaf2e8823ec4754e79ab1bf186bc6fbe047cdf8bd2a4331d6f7cd4ab31c7fdc520cf9d8a1e608f6360d9399dcf4cdc00ccdc88ccd4496d89c9aa999fda3929b33b310f5fdb3a77f554ab392ff5f7f7bd7dc6cccf6c35f17e6d25c996bb3337b73626e53d9a1b22bca9e28fbba1c887248e54896632a27544e4539932595e5dcbc302fcd2badc56bf3c6bc35ef7eaf6fef2c722fa47da09a12f3d17cfa871a7b36b7cc8139fc37d92313728ee4ff8fbfbdcb326dd3f9302a5cd3334c736d180633b8b6046cf1d61abf678bd357b6480d5f9640b411aa916d44462c46c66f6ae3ad458cc4981aa9b2ad91d148fcc362e486981f46f16fb387981b46295bfa563ea336e64623b4f5f6ef77466b2c8ca5b132d64627f4fed9cc786d8bc34f6d71f2de16ca1a62de4dc478098dde98684d6e1b3bc6ee3fb2c89eb1af668871601c1a47ff405bc21ec6f1bf717e6c74bd6b9cc8ff3f35deebfb6d3937cec55c7dfff48571695c099b5c1b3742c71f6df1f9ccf83d5b6ccab968f7d6b833eeb5ff5f1b0fc6a3f15b1ee7b5458c67634bcf90c41818f93fd0d6c4181aa37f5bfc786711d332bef75b0bc332ecf7d146e8c6113a720dcf38167afc9b88a1bc94ff620b14831b7366328374993266168cffa94598cf02650f168a4435fe635d1db2844dd93fcd06446119cbd9ec772dc28a0f3ee97d7d25ab8cf7e3e38cd56c6eb8ac11b17df49711e3a32d4e4429cd116bd9822db53e57226a9d1adf67221f2db25636153574acff636d4ed836db61bfe92f3f3cbdc7f6d9013b94e5881dbfb976f2b94544941eb1d36f6d57b23376feeeaf6376212c12b14b9103cd5fc58b7f12313ed84215336757ec9a7c4e2cec7f63b6bfe3b7de58e456f93d76c7ee45bcfb338dc6ec813d0a8ffce7b61072b267b645d65045fb7f3664a32f2c9209fddc7f6b915d3666d6db7bd888d9e683f0240e73455678fc771143db425b43cc3b51441e17328f72e0d88cb9080b9cfd994538573384fbe69fce903bbe79a11bfda93578cc1376c8a7efac210b4ff8c66f966cf251cfc8b536b1fd57f9a0902b3592374f9f19962946af58b2673c17fafebb88f1c116422251842e9ef98c175aa725afc428ffe5aae40b8bd4ece3caeafb72c1e7fc8f3301de7c6689375669f9e293276b5a8f647c2946f9f7b324e12bbe7ef3978277bc171649f9846f0badfe55c478638d4a95cdf68cc83a8fd90ddf51ab12762362cbb73ef62b8bb03bbefb8b1ce67d39e77bc62f3cfa076becf3834f2c20cabbbf7c965fd42f33c328f9b7393a9bf0637ef23adf12f1b5e0a7d22267fc5ce8f16f23c6075b884c4b147e64dcf00b7ea95625bce057fcfa9f5884fbbc7bd5a39cdff05b7ec7efbf2c0ffc913ff1e74faf6d7eda7bc847efdb15f6187fb086c56dee7cb048f289dcaf2c62966255f1ddf8191a3bdc7debdbb8e79b4664c642d94cd8f3f4ef22c66b5b286bc8f2c85a3e13ab12edb77c2ef29e5ff8ad4f2d52abdd20dff7835ff995df2b7ef8d62a7ef4e18ed84ffca99f8a7f65fcd0cf5f5dfb98a1d42f11cb9f9917e6c5773b047ee197e69beb7e25d688c222ecd2af458c39fbbb88f17666c016c6233f127324e7813f577ecb6ffcd6e0fe675ef87b8bc4fe12bb13c21eab9fb187d4f8fac5267cdfeff4df7b6e89ff9df8dbfe8ebf2bfeb5e7effb072f33e5f339f2268738f40fc528ffba97e7fe11db1699b2fe8b91f8c7628598fa27fea97f2674ff9711e3ad2d608d4d3173311aced59ea368efc298ff6a77e9a34598e15f62f7e4a7e687d6edc1c719e2e7fe9ef8df2bffdabfe1b6bfebdffa77febdfff0eaa94fe388f16afd6b3cf19c6f7fbd2ef51ffd27ffd9781de546fe963fd8e4bffed0af84eeff32627cb485b0c6dc9c1b817161def823e5b7fc31ef7eb572ff6811df32a4cff2ed9fb587d4bf433a72f55fbcc0e44eb0395b292678106c8e64bc8e24bcf954ee371611736ec1ae8ccfe6125a9b997d101bb7affe9606c9c6227e134ccd50e8faaf23c627b690c53fe35d90eafdad079f7f9f197e669120c3ae43a03d79300b8aa00caa7f54ea601ee81c3790b616ab41c58b60c9ed6015ac832ee88349b01decbcb647b01b7cbee27c6711519eb961de7ed54bbf08f68383577f390c0e99b3c9b6fcb931179afeeb88f1628b176b083de6466e16c1d14b24098ecdc9f739e9078b6ca2887c820db45e4e82d3bf2a67c1b9aeeb42d8fa52d355701ddc04b7c15d701f3c048fc1939fbdb2c773b0f585dcf5878c77334be6fe573b62a360100c5f2289711a8cfc81191b6930368e8575ff3e627cb0058a712b4683a5de396d5640c6c59f5984dd0536766e03476bc6fd4b8b78a1a9ea0a8d90698f95853cf4c36073582b8cc3247cb3720fd3f06bb93f5a24133abafbea8da7310ef370f62a472ecd66e3b58c342cc4dc9aff48c478670b618d6453786e30bde31887a51801dfae9fde5bc4988494b9eb5dbfc3b0fe3b8b84f350fbadb07da5f345b80c57e13aecc23e9c84dbafed11ec86dfed01d5420beffec697c631bffae23d4010ee84bb2fcfb051b867ae0de1dfe5fe6ffe1311e3a32d8cdb4d1199b6c5988a24e1be68cffdb25f9f58243c080f71e5253f0d8f7ece226f66c17178129e8667e17978115ebeb972f545fcf8c622a29c87d75faddff97978c3b71585b7e11d2c12de870f46fe1311e38d356e75c9591b3e1a9e7eefb4660bf3db15c97b8bf05abda7fa775bc44fc3a7f039dc0a07e1301c6dd624babd5fefe07c6a11ce78c0bbcfdf2a865668878e5a2fb33474d97c6311639b2dfcb35fdbe2d711e3edccd8d842964ed45e849edfa8d81e99e6ee77ef49de5b2432ccfdff9045f63767a9e489a6307ab5828f7ee33d599444d3288db2288f66e2bf45443bc1e628aa3e9d3d995146753467f4ae992f991d3572d5be14f9682bd69b3f10315ecf0c58c3e8cc67ff8c9551ab637b142dc47cfc7d8bc4d132bcfdf75a245a45eb48d41df5d124da8e76a2dd68eff7e747b41f1d449f78c0e8283ade8c7d7e1e9d7cb606334ea3d3e84c9d9430cea2735824ba882e8d0b916dfd40c4786b8b8d3550a2abe89af72adb8a6efcb32f73c20f166177d1ad7acff56fb4c85d741f3d448fd153f41c6d4583976b7cccf7bf9615ef52be2e1b9b187934fcec8d091bb2281ae9bd17371a4796e16ece5245d7c68dd0fd0f448c8fb6d8cc10e1b5361f5c54ebf638b28d9befc6dc3b8b1891a3aefcfbbcd6e6a46b2c5c78cc621efbb1deab89c3f8cb375e71fceb7729d111db33c671124f3f66fcec344e63114da86f0be32ece8d2bb13eb88c67dce3473f11313eda0285e7e14358aa9d94b8e0db7fe0b5aed895ba12a65a53e5df5924aee2fab5e6e279dcc46dbc8897f12a5ec75ddceb2b1fde16923da278fb57f690cfef18b55fc4bbe6c1c73ac2c778cfa73c52dcc56011f321de67bdd0fb0f448ccfacc15a916b59c64e7ca0f2dff89007dfedc8bfb5487ca4725fe123f47a243efe4b8b9cc4a7ef3477169fc717f1657c155fc737af66c9a7fb20c15e1cbe7bfe2ebe8f1fe2c7f8297e16ffd56fe8e3cdbbf9b378f892e7be9a257d3c8a7594123ab2c822b6b83bff9988f1de16ac3537e58277b1a32ce29ff0f72731beb388fbf26636f6543f3701296109a7e22741127eadff244ae2f844dd1dce932499fafd5b8d2669922579324b8aa44caa577faf930f9952d224af56957e9f2c9265b24ad64997f4d4e2445f5dcbf7bc7db2fd49ceff9cec24bbea649fb1c3569bfd78e6247be640acac7f24627cb0852cc6053f4ff6d5a9147e991cfcbed74a0e7d9dcd2747af34759c9ce8729a9c25e75fd944e8e922b914f7bcdc7ffcd1bb2457c9757293dc2677c97df2903cbeb9f6943cbf96f075344fb6924132fcd8eacb1df2893c197dcc818d93204ec6ecb545c41cf107896516c6edcf440c58c37c55123bb18545ae1287761b63f3caf47e3fd74adcd7e7183f3f212235e34dcdcf2d323592c5afbcfd944df9d49f06d3701a4de369327d3f87b6a67a7f2a78f52e31aea7d9e7adbeb5887936cd3f9cd1caccfde96c5a9888ed77666f5e4b8b34d3d23f141afe9188c1ded922b1fdcaaf84d70aa615ad1163b132e9bf7b8ff8d622d3376be1e9fc4b9d36d3f60b8b2ca6cb6fadb19aaea7ddb49f4ea6dbd39de9ee746fba3f3d981ebe9d27c2e624c754cfd4e9f1f4cb3de8b716999e4ecfa6e7d38b777dbd9d5e4eaf700a4d68a40ff7c922d7229b79fea188f1ce16281b8b24963f804598e3b3efde23beb3c88df9666c4de79fcf13a19ddb2f2c7237bdffc61e0fd3c7e9d3f479ba351d4c87d3d1743cb5a6f6d499ba532f35e337ef2c93a7cd0ae4c592c9f2ebd8f56e8e64e6e0fd19adcd5e163f490d53e6c54661ec288ba46c63919f8918b0c68b2dfc4aac3e2f42cb3f4cf98b458cbbefcea9bfb548ea9bc7efef4883e4e9272c12f7699846699c26e9344dd32ccdd3595aa4655aa5753a4f9bb44d17e99bf9c5a72f31245d25d1ef5bc478f48fde9ed1da44fc749d76b4461c2a8bf09db417b9cff3cf448cd7d6d8d8c2b8d89ccae0b9b0c8843ebbf0a716d9fefc94681ca73be94eb4ff671649775f3495eea5fbe9417a981ea5c7e9497a9a9ea5e7e9457a995ea5d7e94d7a9bdea5f7e943fa987eb0fea6f87dfafcb53d3e5a84ed867be956f8269736ce0c5b78659935b01369115759c43ffb9988f1d11a9f5be4f7bd563a30bf799bf2a71679658f613a4ac7a995daa993baa9979e6e5494b18c677e1664611665719664d32ccdb22ccf66ef9fcf8aecdb55ea87397264f659a54ea2d2df9eb25a642e882e81cf601123da5884b53f1331dedb6253c4faf0865f65f3575e6be7bbb7886f2d9235e617abe6bfb148d6668b6c99add2e36c9d75599f4db2ed6c27dbcdf6b2fdec203bcc8eb2e3ec243bcdceb2f3ec22bbccaededb24bbce6efec42238a3f57e9d98dd2687d853caeee4c9dfd716f99188f1de169b22567821bbcaeea545e28d45be3f53fdce220f9fef65ff8d45b2c7ec297bceb6b241364cbd6c948d332bb3332773336f134a73968b699d07799847799c27f9344ff3ec6d1d79fe9d3d3eb3885905837cf6762ce6455e467297882fe3042bc48d45d895b0c88f448cf7b640d958647a2db3df5866bfdeef5b24afbe3b81fd4f2c1207799dcff3261be46dbec897f92a5fe75ddee7937c3bdfc977f3bd7c3f3fc80ff3a3fc383fc94ff3b3fc3cbfc82ff3ab973a92d35f9dbdf86811b69b5fe737e61bbf95dfe6a521471c1be577bcdcecc61b517e2f72adf66722c67b5b6c8af0595ef898dfcb35bbb0887ff2b277f81b1679f8ee7cfb3fb148fe983fe5cfe971be950ff2613ecac7b9950d733b3d990e732777736f66ce8c199bf1993f0b66e12c9ac5b364369da5333d4f66f957bbcfb3d9ac48d8f44edfa92dc04e665510bffdf4447ecb3a78323699d5b088dfcce6ec2ab17f26627cb4c6a6f885e9cd1ab248c22e3f7e32f26b8bcc5ae347bd56dccf16b3e56c350d66eb5937eb6793d9b6b48737dbc9b767bbb3bdd9feec6076383b9a1dcf4e66a7b3b3d9f9ec627639bb9a5dcf6eb49e6f3fcf7c853dee36fbfc899e23b357a7d3f85568b3777324766111e374f6008b3067f6c885457e2662bcb785196e8a31372cff42ee348afff253ffdb73a66f2d621c7c37a3fedc22b3a7d9f36c6b36c807b3e16c341be7939935b3674edecfdc99576c3e62cd0a5ef84550844554c445524c8bb4c88abc981585da5b29cacfe37a1214af7629e59daf77f02e8a79fce68de48b45ccdda2311f609194b32ba1e71f8918ef6d81c24abf2e5a6591622166e46f5b84dd15cb9fb388df17ab625d74d9bae88b49b12de68995dc143bc56eb157ec1707c56171541c1727c56971569c1717c56571555c1737c56d7157dc170f05edac144fc527ab91e2397eb7f3e2bf3d19745e6c1503feaa3fafe648590c37717d639162b4b1c8cf448cf7b630e5ef56186d746998b4ab95f8e577d9d3c7f7ecc537efb9ffd422715058855d38d341e1165e6996466e97ace4a55f06655846655c26e5b44ccbaccccb59599465599575392f9bb22d17e5b2a493f9e5fab396caae7cb33f993cf9fe1b79c7e5e4e5cdba2c4eec921fcbfd63238245ca6d7e2534fd2311e3bd2d50cc41b953eeaa7788e59ef947671aa379f6e5fbad3fb548d696fbe54179581e95c7e549792aed71569e9717e5659a8a817a555e9737e56d7957de970fe563f9543e975be5a01c96a3725c5a259d052f9d4f2de296fa0d0e9f7e7cafc286812d56bc2f16b9cbeaca840f376e2bc3c0f7bf3c54ecc5223f6d0bee4557d1150f2aaebfdb24aefcef3fbff6c122675fdfffa716a9822aaca22aae926a2a9619417a52a55556e5b375ea55b3aaa8caaaaaeadc2926d5bc6aaab65a54cb6a55adabaeeaab49b55ded503dbbbfb248f5c9de8f7154edc799f1b2033cac0eaa43bc69874536738497d5917f685cfc4cc4786d0b5823ba627df8382dd5792dbe531db36fbf0fe3bd45be5bb5ffb1454eaad3eaac3aaf2eaacbeaaabaae6eaadbeaaeba4fdd995d3d548fd553f55c6d55836a588daa71655576e5546ee5d5666dd4ace6b5ffbd456abd575c879fc9cbbb78efd55b6a5647d98381cff33dd7f1e6d4efe62c4a9df0c0bcf89988f1d6167eb129227bedeb976f9bb9e2ddf7df33f0de2275ea7ff969e43fb5489dd5793dab8bbaacabbaae1eea79dd8858d2ceec7c52b7f5a25ed6ab7a5d77755f4feaed7aa7deadf7eafdfaa03eac8feae3faa43efd3b8b18c7f559addf2eb0229ad71738856adcd49772fd1c97bbf5d58b457ec64b295b9045dafababe7939f760fce253d01f2c72cbbfcc7fffd82277f57dfd503fd64ff573bea8b7eac174989ee4f66ca71ed6a37a5c5bb55d3bb55b7b9b57aa7336e7737f1eccc379348fe7c97c3aa7d330f34fdf1cfeda226638cfe7fafd29db9d17f312ef7f58599fbd58c42ccc8b9fb2c55b6bf805ebcd22bae4a68aebc5e2936ffcfad622ec6efe6373240ee6f57c5e17f366dece17e9d17c395fe58bf93ab5e7ddbc9f4fe6dbf39df9ee7c6fbe3f3f981f0a3b1c89ff1ecf4fe6a7f3b3f9f9fc627ef9bb16997f3a8afcb3389b5feb93e8fbf39bf92ded6d17f33b58647e3f7f300722bafc40c4786f8b4d31e6fe617d15ea6f64f2b70cff2bfd7e6e1133993f7ef5cd6e7fbe429c3fcd9fe75bf3c17c5837f3d17c5c1e656296d45b736b6e4f83b93377e75e633646c31adef84dd0844dd4c44dd24c9bb4c91a7ac7decc7e6591e6f35570de944da5bf6fe73c1a4daff06925b19e3f80459a3aba365a6591bf8b18ef6db129ac0c1ff54ebc18efcd9cdef4ff81459a467fe7c85f5ba4699b45b36c56cdbae9aaa2e99b495d177db33deb9b9d66b7d96bf69b83e6b0396a8e9b93e6b4396bce9b8be6b2b96aae9b9be656edc93777bfb4c8e79fedabc2dde641bdb732f2eca1a1d11656cdd3c61e46da3c375bb0c8df470c650b650d595a9f350315d79b2763e7fdb7eefc8645865f7d6bd09f5b245a35a366dc588ddd388ddb789bc34b6269cc5bbf0d9add366ca3366e9376daa66dd68a90df166dd9566dddcedba6d5a7b47e6d91f6f3b31da7edb25da94f62722f76dbf5e6bb628ca3b63326b048db4797621cff48c478670b3943cc822dda898aebfcf4ed4edbef5984855feda4fc93bddf76bbdd6977ebc776afdd6f0fdac3f6a83d6e4fdad3f6ac3d9f8eda8bf6b2bd6aafdb9bf6b6bd13b6b86f1fdac7f6a97d6e5f7d93d06f58e4f3ddd4d3c868872d7d8a9e5d71bf1d6fde98f0656bf11d6991a8b5d982953f1331deda02c53f2c77a20b15455ae7eb4f147f6d1119493ef502ffec8d55ebb6dec25c180bb6e00b7f112cc299b5881671f5301d2d92c574912eb245be982d8a45b9a816f562be68166d7df72716592c3efd76b6b45d4eafd437dd144be36021c71a1b2d56722d12f39dc5daaf8df94f448cf7b6e0db7cdb6893037d0a2531d245677e73f6ff6b8b8875d4a796fca76f7517fd62b2d85eec2c76177bede162bf3a5f1c2c0e17478be3c5c9e27471b6385f5c2c2e17578bebc5cde27671b7b86fdf9cbbfe0d8b3c189fed159d458688e5c81d878bc7c5d3429e7be08bc5162ce20f16033e133afd8988a1adb1b1058a296a5f0c5fa248f8f0fd27debeb2487d1b4f7fd222d96c315a8c17d6c25e380b77e12dcdd2581ad5c5922df9d25f06cb70192de365b29c2ed365b6cc97efdeb2ffda22cbe2d36ce4954558b12c979529d72d86df2e65a695f88365ed33bff88988f1de1a9be21ffaa7865e8b2c459cff555cffe2fbb5e265137e724afdc522cbf6abb3215363f9e929d3e572b95aae97ddb25f4e96dbcb9de5ee726fb9bf3c581e8ad68e96c7cb93e5e9f26c79bebc585e7e78f6eab396927e76abefb8fe74dd952e6f94458cd3e5edf20edffb60244d098b98ebe5bde9298bfc5dc4786b0ba3dd94e460f9f0b2c7b87c34f37ffa8d67cb27a3fb78ef527f57437cb7dcfadc22cbc152e748e19bef6b5a0e97a3e578692deda5b37497deca5c192b66262bbef257c12a5c45ab78957c66cdd5f4b3f723ab74a5dffbaef2cf3e9f609ea7fe4a7d8a7d128d56057dde3d8c47588db0d5aae44674f5f711e3bd2d44467d6816e1c3aa523e8b19abfafbef277e6f91d57cd5ac5a3cbd5aac3ec9b7983edde6f7ab9518b9d56afda674cbab957e67b19a98d9ac7cabdbb89f3dadb6573babddd5de6a7f75b03a5c1dad8e5727abd3d5d9eafc9d1d2ef4bf2e5757abeb69f6d292fcf7cd4acf91d5ddeab35ca4ca9ad5039d7e785e3d2aebf060f5048b98abd53313bafffb88f1da1ae1218ac8ee2e565bea4d552c78f5ed1bf64f2c325ce96fb9598d3f9e377dfbc9815f9595b5f984261b7c71d55e392b77e5adcdb5f1d9f535134b87df6c69ed273beb4fbe59c008d6e13ac27751f3ed759c8ca7a79bd5c83a31afd48a7dfec083e8eaef23c6cbcc50c52ccc7e3d55e7e6cc789d8ac5d86f7c4ff86b8bacb375ae3f2d77c43fe9e3cbc9e85f6a69b62e605376fcfa1339bff974b916f37b5dffe6dd73235b371fcfd21a17c96153e1bdeeba5d2dd68bcda75e591a0dfd06ebc3f5b2d9328b9fb6058a7fc816eb957abb6e4cd66b73efbbcf8d7c6a916eddb350edc04c2f3fdb81f9f5e733494b93bc546bfff5767410ecfede73e2c99df56e38dbec08aef7d6fbbfbe7f569ad5faa0a93e7ebfd6665eac0fa5a544eebb5ad0cefc787d84b75546b43e369839f8695b98834de1ddfac4bc563e8b9f0a0bfdd6375a2b8bac4fd767ebf3f5457da66609eb3eff942f8fc3ab5fe8f4727de59f2d9fd8f6ebcc627dfdcbe76ed6b79bcf57adeff81ef69f844dbe9d27fe6a7d8d4f4fb5abf7df09bcd94fe4fe5ac697f03619af1fd4a987a8a6dcb7593ffab518cd7f1d31deda42da23583f5154df641077eb6723ffbd6fe1c7efc1acb7a44506eb61316477649130d9feea9b37d7a3f5786df1fbb5bd76d6eedaeb4c598cb525fe2e35e33fce8b8ebdffcc6c1c753cc8a7476ff5daf9b1d7059d7ec7d145c5e0e51b67d67b5d1ce45dc2f6a91551c4bfa75dba567bf0e7c2227ab7e4a57459f3d4e144e05e37eb0a9c8b4fecf046ad46bad2b0c4aae107670695821bf5159d76d8f8acfdfadabcfd9def285716e9aaaeeee65dd3b562bd74a266c9f4c678fcd5f3dd62f9147dfa76829dd7e9a739e966f4ee47fbddb25b85591776ef3ee7e12f92dde4db6f0e91e5f56e84dc2d31dfb5651c15e3ae33642c3382fa62a5be63bee87ac4f56ed26d9b9ed0f94fda42dac33f0c1feaa9fee4e1e65b05e6bff815888f16d9e976bbbd6ebf3bf08ff52f991c7487bfac21ed8e8ac1a7eff2cfb3a63bfe5d395e15b718ac7fb9d7f0c6224759951aef7343961683ca84e765bd6fb5abcde7e0d84977d250ee1be7dd293758f993b6d814e33839983fd0fea28ceadd99e1ffee2f879045cebb8beeb2bbeaaebb9bee5648ac569937bffed5a4ee6ef568beffccdfa6dc854ed3987ffe8b1941771ffcfad74b5e5be4703a9bdfbeff958576d40ec52a5deed0adef568bee417ac2fbee518eddcdbb91babee2572f16f96711e3ad3536f6e057eba766f032437c831bbfdecf7a6d11bfef9ebae76eab1b74c36ed48d3b4bcd92fab6fbf644e4a6f0a869c42cf924d33682a6e99c5f3dffbe8851ecfee11c39e8bceee8c3d811b317ab747ecdc48ab937e55f4f7b03bd43ee6b1cffd4ccd8d86253c4aac15b3dab6fa691dfdfb4e047bfdecf7a6b91ab76bdd5d5c29df2deef833eec23354bfaf857df94cf4efba49f9a9f9c3d60bc7be8d35fef3fbfb3e3519f750fbffa9ee2b716e97361917773c4e8b207bcc5ddcc9666489f5368e38c7c72d4cfcc1bb3f8095b286b488b9cfbbc2f547e2466c848c4aad1effeae98b208fc565ff6555ff7f3bee9db7ed12fb19fd2af7ef50db5fca85ff79dff4916c0bdecc1f864edff7d69c7c9987f73fe5896d767e60efbbcefdfc711914359b44a2fd3ae9fe01b5a4556aaa2a4db6f1b5678f873b6d814ffd0b8eb77f4efbc8919d2ef1ab7bf3f436091cd3e55bfb7deeaf74574bfea0ffac3fea83fee4ffad3feac3fef2fbe3fcbbdc98efacbeaf0b3f7956c775acc8b3ffd8d98fe6a7af5f1172ede95d7bf8e72d4a7c222ef32edfeda3810abf44d3c0d2b3395dfe4c68ac0d6bf7a23f77d5f5be4cf23c6fbb2f90ebc72879b2fbf5f18de27077f32435e2c2266c9537f63b26ededf0a9bdcf5f7dd4dffd03ff64ffd73bf65fadf977ed00ffbd1a757c6bdd5dbbf7afedd334eeff6def7f74ccc57ff36266cc25fff45fed59f049350fe2b9ac49384fe3ae5f49f493ac926f964362944995129a954546a2aea5ff337a5f950dac962b29cac741beb4937e9ffacf7b0c8c62657ed6432d99eec8875c9555f4f76277b93fdc9413f9f1cca72f43fe53f535e2cb2f15c1b9b8879b22be209ef8693e3c989982d87c236a7ff53fe534559e4c526fd4dbf2f623ceb06fdede46c722e627d2db2e2ff29ffa1f26211d8e4aaed9e44267cd1d5627d7229ec325f9fade69b62f2ff29ff89f2da22b049b4eaf7ba7361956761979dae5e9fae4f4df63fe53f55de5ae4c52a9bb922d6285557adb74ce37fca7faefcf7fff77ffed7ff0f3d2668ef</data> + </image> + <image name="image2"> + <data format="XPM.GZ" length="3000">789cedd64b53da601886e13dbf2263764ee735212187e97481e7b3e009b5d30509c423d603a8d8e97feff7dc684747375d7503f7ea7a26f3114185b959efa8b5e5cdced5ee87dde179e99567dd3b6fb6371a0cc6df7f7cfb559b09032fcdbd24f1ea335f6a33eda1577a7e10e47914c956e1f0af1f7194a75103f7709ec75186cfe430cb7a5185ef7099157188afe47a9945718ee7e528c8c2b8c0d772dc48d3c6e47c5f4e78e0539c2adcc795c2bb725a287c8e2b85efe52c507805270a6fe242e105dc577820e7b1c27bb8abf0112e157e92bbb1c23f715fe163b94814dec2dc005ec5a5c2b15c060aefe350e1135c57b88153850f300762deefb2a7f036ee2bbc26f76285039c283cc6a9c23bb8507811f304b88b79e012f715bec095c237723f50781dd7151ee148e167dc50b8857903f112ce154e306f082e70a1f025e605c1b7981bc68798077ec095c24db90a154e715de1651c291ce258e10dcc2f38ce70a6701be70ad77157e10e2e14ce71a9708479c165df303f00e6efafe231f9fff036f3ad6bc5749feed37dba4ff7ffb8971f77eb59ffd3bdb2d37fbafeccceedc22e3fec5736f874bfb69f7663b7ef77bbb37b1bdac81edeeef6e8eee5c9c6f66ccd77fbbc2db8ab176dc9965f7777edbcadd8aaadd9badddac66477e79edaa66dd9b6ed58cb9ad6e673edda766dcff6edc09d3db243dbb0cee4fb991ddb895b037787858556b7c9e76e6c0d77c2d8ad89a59659eedbe4fb917bb61d7742c1daf1ed655f74f7d072e786afabef4fbe5fb83b6bba67abeb04ad2ffbb2dbdad6b1e8757dd9dd756f37f6df5f6b7f0026022757</data> + </image> + <image name="image3"> + <data format="PNG" length="1002">89504e470d0a1a0a0000000d4948445200000016000000160806000000c4b46c3b000003b149444154388dad945f4c5b551cc73fe7dc4b7b4bcba0762d45c43114323599ee6192609c51d883892ce083f1718b3ebb185f8dc91e972cf39d2d2a2f1af664b6f1e0fe3863a0718969700eb0c52142da0242a1bd6d696f7bcff101585203ceb8fd9ece39f99dcff9fe7edf939f88c562ec465f5f9fe609442c161362173c3e3eae7b7a7ac8e7f36432196cdbfe4f907c3e4f2291201e8fe338cec3737357e9e8e828aded1e229d650e1f2d51754b082110124c13a4dc5ea341eb9dc284c0558a853f3ce8cb0677ef500fde7d39d2596679e326597b8e9abb85d7a770ab16ab6983ec5a05b487a70e36f0f4e10afe408d6a558310980108478dba4a1e8233990c5d474b64ed39aa3a8fe5f3317fbf81dbd70bccfeb205947632fd74f6589c1c6ea2f70d03a58ba0c1f2c9bdc1b66de3b8256a6e11cbe7e3ee1d181b590124fe2693aeee08d223c82c3a2c24b7b874bec8f26288774f7bd054504aef0dde6e99c0eb83f9fb266323cb80a27fb0958141836044605a2ee5523393371cc646fee2da37195aa35d0c0c5b4859ac03d7e91712dcaac5adab3650a3ff9d08ef7dd8404bb48869e5d958b5b87dadc4c9a1464e9f0d0326df7ebd86bd2e310cb1bf62d384d59441f2d70a070e1c60e09489929b988681bdd9cc97170bcc4c65595f71f8e0e3301337fc24a7732467831875a47f289652b0be5e4151e6d07316c1b0c0340d8ab92023e76d66a6b2840e36d2fb7a13fee632475e6edc367ea98a90fb98b7dd6310ca0328a44761582e1bab41befabcc0ec940d28bc5e93b68e064cab84e1d9beaeb48934eac1f53b01c1b000fca496aa54b61a99fcde61662a4b4b4b23d1680be9d426173e4df3602a48ea411989a4fd590f52a8fd156b05ed9d350e3defe3cfdf4b4c7ce770ea7d3fb9f520afbe1620daeee5c26735d20b9b9cfb6811a754a439e4e5c5639a4caa1e5caf586bfc0197b78702005cb9b4cae4cd3267ce8638fe964bd72b393e39d74928d242617303a756a37f284447770dcdbffc6384a05a85de1306e9a52057c7527c7131c3c42d3f475eb2303c82d4fc3276d6811db37efeb148723082d9b08f79f97c1e5729109a9a28307cc622d2d6cdf52b2b24efe548dedb00142009862cfa879ee1a71f6cec928353511472fbf4389148b0b0e0c108081412458dfe21c9f11351e67e7358595468246d1d1e5e38a6e9e851bc39d84ab502a669331dafec0d8ec7e3e8cb06e1a881d727d1ae40180a434a8c9db129a54126ad48a7358c2b4c5352c8c374bcccdab2bb37d8719cba79fab8211f9df218e0582c261e95f8bfc04f1a1e8bc5c4dfe0a190172af6a9690000000049454e44ae426082</data> + </image> +</images> +<connections> + <connection> + <sender>clearInfo</sender> + <signal>clicked()</signal> + <receiver>torkview_base</receiver> + <slot>clearInfo_clicked()</slot> + </connection> + <connection> + <sender>clearTorTraffic</sender> + <signal>clicked()</signal> + <receiver>torkview_base</receiver> + <slot>clearTorTraffic_clicked()</slot> + </connection> + <connection> + <sender>clearNonTorTraffic</sender> + <signal>clicked()</signal> + <receiver>torkview_base</receiver> + <slot>clearNonTorTraffic_clicked()</slot> + </connection> + <connection> + <sender>NonTorTrafficMaxEntries</sender> + <signal>valueChanged(int)</signal> + <receiver>torkview_base</receiver> + <slot>NonTorTrafficMaxEntries_valueChanged(int)</slot> + </connection> + <connection> + <sender>streamList</sender> + <signal>contextMenuRequested(QListViewItem*,const QPoint&,int)</signal> + <receiver>torkview_base</receiver> + <slot>streamList_contextMenuRequested(QListViewItem*,const QPoint&,int)</slot> + </connection> + <connection> + <sender>circuitList</sender> + <signal>contextMenuRequested(QListViewItem*,const QPoint&,int)</signal> + <receiver>torkview_base</receiver> + <slot>circuitList_contextMenuRequested(QListViewItem*,const QPoint&,int)</slot> + </connection> + <connection> + <sender>serverList</sender> + <signal>contextMenuRequested(QListViewItem*,const QPoint&,int)</signal> + <receiver>torkview_base</receiver> + <slot>serverList_contextMenuRequested(QListViewItem*,const QPoint&,int)</slot> + </connection> + <connection> + <sender>streamList</sender> + <signal>contextMenuRequested(QListViewItem*,const QPoint&,int)</signal> + <receiver>torkview_base</receiver> + <slot>stopDisplayingBubble(QListViewItem*,const QPoint&,int)</slot> + </connection> + <connection> + <sender>circuitList</sender> + <signal>contextMenuRequested(QListViewItem*,const QPoint&,int)</signal> + <receiver>torkview_base</receiver> + <slot>stopDisplayingBubble(QListViewItem*,const QPoint&,int)</slot> + </connection> + <connection> + <sender>serverList</sender> + <signal>contextMenuRequested(QListViewItem*,const QPoint&,int)</signal> + <receiver>torkview_base</receiver> + <slot>stopDisplayingBubble(QListViewItem*,const QPoint&,int)</slot> + </connection> + <connection> + <sender>kcfg_LogNonTorTraffic</sender> + <signal>toggled(bool)</signal> + <receiver>torkview_base</receiver> + <slot>kcfg_LogNonTorTraffic_toggled(bool)</slot> + </connection> + <connection> + <sender>kcfg_LogTorTraffic</sender> + <signal>toggled(bool)</signal> + <receiver>torkview_base</receiver> + <slot>kcfg_LogTorTraffic_toggled(bool)</slot> + </connection> + <connection> + <sender>ShowHostNames</sender> + <signal>toggled(bool)</signal> + <receiver>torkview_base</receiver> + <slot>ShowHostNames_toggled(bool)</slot> + </connection> + <connection> + <sender>infoList</sender> + <signal>contextMenuRequested(QListViewItem*,const QPoint&,int)</signal> + <receiver>torkview_base</receiver> + <slot>infoList_contextMenuRequested(QListViewItem*,const QPoint&,int)</slot> + </connection> + <connection> + <sender>TorTraffic</sender> + <signal>contextMenuRequested(QListViewItem*,const QPoint&,int)</signal> + <receiver>torkview_base</receiver> + <slot>TorTraffic_contextMenuRequested(QListViewItem*,const QPoint&,int)</slot> + </connection> + <connection> + <sender>NonTorTraffic</sender> + <signal>contextMenuRequested(QListViewItem*,const QPoint&,int)</signal> + <receiver>torkview_base</receiver> + <slot>NonTorTraffic_contextMenuRequested(QListViewItem*,const QPoint&,int)</slot> + </connection> +</connections> +<includes> + <include location="local" impldecl="in implementation">torkview_base.ui.h</include> +</includes> +<signals> + <signal>closeStream(const QString &)</signal> + <signal>closeCircuit(const QString &)</signal> + <signal>closeAllCircuits( QListView* &)</signal> + <signal>copyOldConfig( )</signal> + <signal>attachStreams(bool)</signal> + <signal>newIdentity()</signal> + <signal>konqWithTor()</signal> + <signal>networkList()</signal> + <signal>hiddenServices()</signal> + <signal>toggleTorTraffic(bool)</signal> + <signal>toggleNonTorTraffic(bool)</signal> + <signal>updateExcludeNodes()</signal> + <signal>updateEntryNodes()</signal> + <signal>updateExitNodes()</signal> + <signal>clearNodes()</signal> + <signal>updateStrictExitNodes(bool)</signal> + <signal>safeLogging(bool)</signal> + <signal>resolveAddress(const QString &)</signal> +</signals> +<slots> + <slot>stopDisplayingBubble( QListViewItem *, const QPoint &, int )</slot> + <slot>streamList_contextMenuRequested( QListViewItem *, const QPoint & point, int )</slot> + <slot>slotAttachStreams()</slot> + <slot>slotCloseStream()</slot> + <slot>circuitList_contextMenuRequested( QListViewItem *, const QPoint & point, int )</slot> + <slot>slotCloseCircuit()</slot> + <slot>serverList_contextMenuRequested( QListViewItem *, const QPoint & point, int )</slot> + <slot>slotClearNodes()</slot> + <slot>slotAddToFamily()</slot> + <slot>slotAddPermExcludeCountry()</slot> + <slot>slotAddPermExcludeNodes()</slot> + <slot>slotAddSessionExcludeCountry()</slot> + <slot>slotAddSessionExcludeNodes()</slot> + <slot>slotAddPermExitNodes()</slot> + <slot>slotAddPermStrictExitNodes()</slot> + <slot>slotAddSessionExitNodes()</slot> + <slot>slotAddSessionStrictExitNodes()</slot> + <slot>slotAddPermEntryNodes()</slot> + <slot>slotAddSessionEntryNodes()</slot> + <slot>addExcludeNodes( bool perm, QStringList ccs )</slot> + <slot>clearInfo_clicked()</slot> + <slot>clearTorTraffic_clicked()</slot> + <slot>clearNonTorTraffic_clicked()</slot> + <slot>NonTorTrafficMaxEntries_valueChanged( int newval )</slot> + <slot>useNewIdentity_clicked( int, int )</slot> + <slot>useKonqWithTor_clicked( int, int )</slot> + <slot>viewNetworkList_clicked( int, int )</slot> + <slot>viewHiddenServices_clicked( int, int )</slot> + <slot>kcfg_LogNonTorTraffic_toggled( bool state )</slot> + <slot>kcfg_LogTorTraffic_toggled( bool state )</slot> + <slot>ShowHostNames_toggled( bool safe )</slot> + <slot>copyLogLines( )</slot> + <slot>selectAllLogLines( )</slot> + <slot>infoList_contextMenuRequested( QListViewItem *, const QPoint &, int )</slot> + <slot>TorTraffic_contextMenuRequested( QListViewItem *, const QPoint &, int )</slot> + <slot>queryHostName( )</slot> + <slot>resolvedAddress( const QString & )</slot> + <slot>NonTorTraffic_contextMenuRequested( QListViewItem *, const QPoint &, int )</slot> +</slots> +<functions> + <function access="private" specifier="non virtual">init()</function> + <function access="private" specifier="non virtual" returnType="QStringList">selectByCountry()</function> + <function access="private" specifier="non virtual">addEntryNodes( bool perm )</function> + <function access="private" specifier="non virtual">addExitNodes( bool perm, bool strict )</function> +</functions> +<layoutdefaults spacing="6" margin="11"/> +<includehints> + <includehint>kwidgetlistbox.h</includehint> + <includehint>dndlistview.h</includehint> + <includehint>dndlistview.h</includehint> + <includehint>dndlistview.h</includehint> + <includehint>dndlistview.h</includehint> +</includehints> +</UI> |