From 1ca55f7e68e88bf75329f0f2f4a2d4bf0e8d6f7d Mon Sep 17 00:00:00 2001 From: Dmitry Shachnev Date: Fri, 6 Jul 2018 11:09:02 +0100 Subject: [PATCH] Import pyqt5_5.11.2+dfsg.orig.tar.gz [dgit import orig pyqt5_5.11.2+dfsg.orig.tar.gz] --- ChangeLog | 10180 +++++++++++++ LICENSE | 674 + NEWS | 214 + README | 59 + __init__.py | 16 + config-tests/cfgtest_QtCore.cpp | 48 + config-tests/cfgtest_QtGui.cpp | 44 + config-tests/cfgtest_QtNetwork.cpp | 29 + config-tests/cfgtest_QtPrintSupport.cpp | 41 + configure.py | 3087 ++++ dbus/dbus.cpp | 433 + dbus/helper.h | 71 + designer/designer.pro-in | 23 + designer/pluginloader.cpp | 338 + designer/pluginloader.h | 66 + examples/README | 25 + examples/activeqt/README | 24 + examples/activeqt/webbrowser/icons/image0.xpm | 38 + examples/activeqt/webbrowser/icons/image1.xpm | 177 + examples/activeqt/webbrowser/icons/image2.xpm | 177 + examples/activeqt/webbrowser/icons/image3.xpm | 30 + examples/activeqt/webbrowser/icons/image4.xpm | 38 + examples/activeqt/webbrowser/icons/image5.xpm | 246 + examples/activeqt/webbrowser/icons/image6.xpm | 190 + examples/activeqt/webbrowser/mainwindow.qrc | 11 + examples/activeqt/webbrowser/mainwindow.ui | 215 + examples/activeqt/webbrowser/mainwindow_rc.py | 863 ++ examples/activeqt/webbrowser/ui_mainwindow.py | 143 + examples/activeqt/webbrowser/webbrowser.py | 147 + examples/animation/README | 24 + .../animation/animatedtiles/animatedtiles.py | 263 + .../animation/animatedtiles/animatedtiles.qrc | 11 + .../animatedtiles/animatedtiles_rc.py | 6103 ++++++++ .../animatedtiles/images/Time-For-Lunch-2.jpg | Bin 0 -> 32471 bytes .../animatedtiles/images/centered.png | Bin 0 -> 892 bytes .../animatedtiles/images/ellipse.png | Bin 0 -> 10767 bytes .../animatedtiles/images/figure8.png | Bin 0 -> 14050 bytes .../animatedtiles/images/kinetic.png | Bin 0 -> 6776 bytes .../animation/animatedtiles/images/random.png | Bin 0 -> 14969 bytes .../animation/animatedtiles/images/tile.png | Bin 0 -> 16337 bytes .../appchooser/accessories-dictionary.png | Bin 0 -> 5396 bytes examples/animation/appchooser/akregator.png | Bin 0 -> 4873 bytes examples/animation/appchooser/appchooser.py | 139 + examples/animation/appchooser/appchooser.qrc | 8 + .../animation/appchooser/appchooser_rc.py | 1423 ++ examples/animation/appchooser/digikam.png | Bin 0 -> 3334 bytes examples/animation/appchooser/k3b.png | Bin 0 -> 8220 bytes examples/animation/easing/easing.py | 267 + examples/animation/easing/easing.qrc | 5 + examples/animation/easing/easing_rc.py | 362 + examples/animation/easing/form.ui | 270 + examples/animation/easing/images/qt-logo.png | Bin 0 -> 5149 bytes examples/animation/easing/ui_form.py | 136 + examples/animation/moveblocks.py | 233 + .../states/accessories-dictionary.png | Bin 0 -> 5396 bytes examples/animation/states/akregator.png | Bin 0 -> 4873 bytes examples/animation/states/digikam.png | Bin 0 -> 3334 bytes examples/animation/states/help-browser.png | Bin 0 -> 6984 bytes examples/animation/states/k3b.png | Bin 0 -> 8220 bytes examples/animation/states/kchart.png | Bin 0 -> 4887 bytes examples/animation/states/states.py | 272 + examples/animation/states/states.qrc | 10 + examples/animation/states/states_rc.py | 2180 +++ .../animation/stickman/animations/chilling | Bin 0 -> 6508 bytes .../animation/stickman/animations/dancing | Bin 0 -> 2348 bytes examples/animation/stickman/animations/dead | Bin 0 -> 268 bytes .../animation/stickman/animations/jumping | Bin 0 -> 1308 bytes examples/animation/stickman/stickman.py | 657 + examples/animation/stickman/stickman.qrc | 8 + examples/animation/stickman/stickman_rc.py | 714 + examples/dbus/chat/chat.py | 200 + examples/dbus/chat/chatmainwindow.ui | 185 + examples/dbus/chat/chatsetnickname.ui | 149 + examples/dbus/chat/ui_chatmainwindow.py | 99 + examples/dbus/chat/ui_chatsetnickname.py | 68 + examples/dbus/listnames.py | 98 + examples/dbus/pingpong/ping.py | 75 + examples/dbus/pingpong/pong.py | 77 + examples/dbus/remotecontrolledcar/car/car.py | 198 + .../controller/controller.py | 111 + .../controller/controller.ui | 64 + .../controller/ui_controller.py | 48 + examples/designer/README | 23 + .../designer/calculatorform/calculatorform.py | 74 + .../designer/calculatorform/calculatorform.ui | 284 + .../calculatorform/ui_calculatorform.py | 94 + examples/designer/plugins/plugins.py | 86 + .../plugins/python/analogclockplugin.py | 195 + .../plugins/python/bubbleswidgetplugin.py | 194 + .../plugins/python/counterlabelplugin.py | 105 + .../plugins/python/datetimeeditplugin.py | 126 + .../plugins/python/helloglwidgetplugin.py | 105 + .../plugins/python/multipagewidgetplugin.py | 142 + .../plugins/python/polygonwidgetplugin.py | 175 + .../designer/plugins/python/pydemoplugin.py | 168 + .../plugins/python/pythonconsoleplugin.py | 143 + .../designer/plugins/widgets/analogclock.py | 189 + .../designer/plugins/widgets/bubbleswidget.py | 335 + .../designer/plugins/widgets/counterlabel.py | 177 + .../designer/plugins/widgets/datetimeedit.py | 371 + .../designer/plugins/widgets/helloglwidget.py | 261 + .../plugins/widgets/multipagewidget.py | 107 + .../designer/plugins/widgets/polygonwidget.py | 192 + examples/designer/plugins/widgets/pydemo.py | 156 + .../plugins/widgets/pythonconsolewidget.py | 98 + examples/desktop/README | 27 + examples/desktop/screenshot.py | 173 + examples/desktop/systray/images/bad.png | Bin 0 -> 2496 bytes examples/desktop/systray/images/heart.png | Bin 0 -> 25780 bytes examples/desktop/systray/images/trash.png | Bin 0 -> 12128 bytes examples/desktop/systray/systray.py | 237 + examples/desktop/systray/systray.qrc | 7 + examples/desktop/systray/systray_rc.py | 2580 ++++ examples/dialogs/README | 26 + examples/dialogs/classwizard/classwizard.py | 403 + examples/dialogs/classwizard/classwizard.qrc | 11 + .../dialogs/classwizard/classwizard_rc.py | 3887 +++++ .../dialogs/classwizard/images/background.png | Bin 0 -> 22578 bytes .../dialogs/classwizard/images/banner.png | Bin 0 -> 3947 bytes examples/dialogs/classwizard/images/logo1.png | Bin 0 -> 1619 bytes examples/dialogs/classwizard/images/logo2.png | Bin 0 -> 1619 bytes examples/dialogs/classwizard/images/logo3.png | Bin 0 -> 1619 bytes .../dialogs/classwizard/images/watermark1.png | Bin 0 -> 14516 bytes .../dialogs/classwizard/images/watermark2.png | Bin 0 -> 14912 bytes examples/dialogs/configdialog/configdialog.py | 244 + .../dialogs/configdialog/configdialog.qrc | 7 + .../dialogs/configdialog/configdialog_rc.py | 1157 ++ .../dialogs/configdialog/images/config.png | Bin 0 -> 7059 bytes .../dialogs/configdialog/images/query.png | Bin 0 -> 2269 bytes .../dialogs/configdialog/images/update.png | Bin 0 -> 8296 bytes examples/dialogs/extension.py | 117 + examples/dialogs/findfiles.py | 215 + examples/dialogs/standarddialogs.py | 322 + examples/dialogs/tabdialog.py | 205 + examples/dialogs/trivialwizard.py | 114 + examples/draganddrop/README | 26 + .../delayedencoding/delayedencoding.py | 136 + .../delayedencoding/delayedencoding.qrc | 6 + .../delayedencoding/delayedencoding_rc.py | 278 + .../delayedencoding/images/drag.png | Bin 0 -> 977 bytes .../delayedencoding/images/example.svg | 59 + .../draggableicons/draggableicons.py | 163 + .../draggableicons/draggableicons.qrc | 7 + .../draggableicons/draggableicons_rc.py | 620 + .../draggableicons/images/boat.png | Bin 0 -> 2772 bytes .../draganddrop/draggableicons/images/car.png | Bin 0 -> 2963 bytes .../draggableicons/images/house.png | Bin 0 -> 3292 bytes .../draggabletext/draggabletext.py | 155 + .../draggabletext/draggabletext.qrc | 5 + .../draggabletext/draggabletext_rc.py | 56 + examples/draganddrop/draggabletext/words.txt | 41 + examples/draganddrop/dropsite.py | 180 + .../fridgemagnets/fridgemagnets.py | 196 + .../fridgemagnets/fridgemagnets.qrc | 5 + .../fridgemagnets/fridgemagnets_rc.py | 58 + examples/draganddrop/fridgemagnets/words.txt | 48 + examples/draganddrop/puzzle/example.jpg | Bin 0 -> 42654 bytes examples/draganddrop/puzzle/puzzle.py | 367 + examples/draganddrop/puzzle/puzzle.qrc | 5 + examples/draganddrop/puzzle/puzzle_rc.py | 2706 ++++ examples/effects/README | 25 + examples/effects/lighting.py | 149 + examples/graphicsview/README | 26 + examples/graphicsview/anchorlayout.py | 130 + .../collidingmice/collidingmice.py | 221 + .../collidingmice/images/cheese.jpg | Bin 0 -> 3029 bytes examples/graphicsview/collidingmice/mice.qrc | 5 + .../graphicsview/collidingmice/mice_rc.py | 230 + .../graphicsview/diagramscene/diagramscene.py | 832 ++ .../diagramscene/diagramscene.qrc | 20 + .../diagramscene/diagramscene_rc.py | 404 + .../diagramscene/images/background1.png | Bin 0 -> 112 bytes .../diagramscene/images/background2.png | Bin 0 -> 114 bytes .../diagramscene/images/background3.png | Bin 0 -> 116 bytes .../diagramscene/images/background4.png | Bin 0 -> 96 bytes .../graphicsview/diagramscene/images/bold.png | Bin 0 -> 274 bytes .../diagramscene/images/bringtofront.png | Bin 0 -> 293 bytes .../diagramscene/images/delete.png | Bin 0 -> 831 bytes .../diagramscene/images/floodfill.png | Bin 0 -> 282 bytes .../diagramscene/images/italic.png | Bin 0 -> 247 bytes .../diagramscene/images/linecolor.png | Bin 0 -> 145 bytes .../diagramscene/images/linepointer.png | Bin 0 -> 141 bytes .../diagramscene/images/pointer.png | Bin 0 -> 173 bytes .../diagramscene/images/sendtoback.png | Bin 0 -> 318 bytes .../diagramscene/images/textpointer.png | Bin 0 -> 753 bytes .../diagramscene/images/underline.png | Bin 0 -> 250 bytes .../dragdroprobot/dragdroprobot.py | 314 + .../dragdroprobot/images/head.png | Bin 0 -> 14972 bytes examples/graphicsview/elasticnodes.py | 430 + .../embeddeddialogs/No-Ones-Laughing-3.jpg | Bin 0 -> 30730 bytes .../embeddeddialogs/embeddeddialog.py | 62 + .../embeddeddialogs/embeddeddialog.ui | 87 + .../embeddeddialogs/embeddeddialogs.py | 237 + .../embeddeddialogs/embeddeddialogs.qrc | 5 + .../embeddeddialogs/embeddeddialogs_rc.py | 1957 +++ examples/graphicsview/padnavigator/form.ui | 208 + .../padnavigator/images/artsfftscope.png | Bin 0 -> 1294 bytes .../padnavigator/images/blue_angle_swirl.jpg | Bin 0 -> 11826 bytes .../padnavigator/images/kontact_contacts.png | Bin 0 -> 4382 bytes .../padnavigator/images/kontact_journal.png | Bin 0 -> 3261 bytes .../padnavigator/images/kontact_mail.png | Bin 0 -> 3202 bytes .../padnavigator/images/kontact_notes.png | Bin 0 -> 3893 bytes .../padnavigator/images/kopeteavailable.png | Bin 0 -> 2380 bytes .../images/metacontact_online.png | Bin 0 -> 2545 bytes .../padnavigator/images/minitools.png | Bin 0 -> 2087 bytes .../graphicsview/padnavigator/padnavigator.py | 398 + .../padnavigator/padnavigator.qrc | 14 + .../padnavigator/padnavigator_rc.py | 3029 ++++ examples/graphicsview/padnavigator/ui_form.py | 109 + examples/ipc/README | 21 + examples/ipc/localfortuneclient.py | 155 + examples/ipc/localfortuneserver.py | 122 + examples/ipc/sharedmemory/dialog.py | 39 + examples/ipc/sharedmemory/dialog.ui | 47 + examples/ipc/sharedmemory/image.png | Bin 0 -> 10199 bytes examples/ipc/sharedmemory/qt.png | Bin 0 -> 2383 bytes examples/ipc/sharedmemory/sharedmemory.py | 181 + examples/itemviews/README | 25 + examples/itemviews/basicsortfiltermodel.py | 226 + examples/itemviews/chart/chart.py | 589 + examples/itemviews/chart/chart.qrc | 5 + examples/itemviews/chart/chart_rc.py | 65 + examples/itemviews/chart/mydata.cht | 8 + examples/itemviews/chart/qtdata.cht | 14 + examples/itemviews/coloreditorfactory.py | 128 + examples/itemviews/combowidgetmapper.py | 135 + examples/itemviews/customsortfiltermodel.py | 248 + examples/itemviews/dirview.py | 96 + .../itemviews/editabletreemodel/default.txt | 40 + .../editabletreemodel/editabletreemodel.py | 422 + .../editabletreemodel/editabletreemodel.qrc | 5 + .../editabletreemodel/editabletreemodel_rc.py | 159 + .../itemviews/editabletreemodel/mainwindow.ui | 125 + .../editabletreemodel/ui_mainwindow.py | 85 + examples/itemviews/fetchmore.py | 151 + .../itemviews/frozencolumn/frozencolumn.py | 163 + examples/itemviews/frozencolumn/grades.txt | 36 + .../itemviews/interview/images/interview.png | Bin 0 -> 174 bytes .../itemviews/interview/images/services.png | Bin 0 -> 3749 bytes examples/itemviews/interview/interview.py | 191 + examples/itemviews/pixelator/images/qt.png | Bin 0 -> 656 bytes examples/itemviews/pixelator/pixelator.py | 302 + examples/itemviews/pixelator/pixelator.qrc | 5 + examples/itemviews/pixelator/pixelator_rc.py | 81 + examples/itemviews/puzzle/example.jpg | Bin 0 -> 42654 bytes examples/itemviews/puzzle/puzzle.py | 431 + examples/itemviews/puzzle/puzzle.qrc | 5 + examples/itemviews/puzzle/puzzle_rc.py | 2706 ++++ examples/itemviews/simpledommodel.py | 224 + .../itemviews/simpletreemodel/default.txt | 40 + .../simpletreemodel/simpletreemodel.py | 212 + .../simpletreemodel/simpletreemodel.qrc | 5 + .../simpletreemodel/simpletreemodel_rc.py | 159 + examples/itemviews/simplewidgetmapper.py | 130 + examples/itemviews/spinboxdelegate.py | 95 + .../spreadsheet/images/interview.png | Bin 0 -> 174 bytes examples/itemviews/spreadsheet/printview.py | 53 + examples/itemviews/spreadsheet/spreadsheet.py | 543 + .../itemviews/spreadsheet/spreadsheet.qrc | 5 + .../itemviews/spreadsheet/spreadsheet_rc.py | 51 + .../spreadsheet/spreadsheetdelegate.py | 85 + .../itemviews/spreadsheet/spreadsheetitem.py | 159 + examples/itemviews/spreadsheet/util.py | 51 + examples/itemviews/stardelegate.py | 252 + examples/itemviews/storageview.py | 164 + examples/layouts/README | 27 + examples/layouts/basiclayouts.py | 137 + examples/layouts/borderlayout.py | 240 + examples/layouts/flowlayout.py | 159 + examples/mainwindows/README | 26 + .../mainwindows/application/application.py | 278 + .../mainwindows/application/images/copy.png | Bin 0 -> 1338 bytes .../mainwindows/application/images/cut.png | Bin 0 -> 1323 bytes .../mainwindows/application/images/new.png | Bin 0 -> 852 bytes .../mainwindows/application/images/open.png | Bin 0 -> 2073 bytes .../mainwindows/application/images/paste.png | Bin 0 -> 1645 bytes .../mainwindows/application/images/save.png | Bin 0 -> 1187 bytes .../mainwindows/dockwidgets/dockwidgets.py | 303 + .../mainwindows/dockwidgets/dockwidgets.qrc | 8 + .../mainwindows/dockwidgets/dockwidgets_rc.py | 462 + .../mainwindows/dockwidgets/images/new.png | Bin 0 -> 977 bytes .../mainwindows/dockwidgets/images/print.png | Bin 0 -> 1732 bytes .../mainwindows/dockwidgets/images/save.png | Bin 0 -> 1894 bytes .../mainwindows/dockwidgets/images/undo.png | Bin 0 -> 1768 bytes examples/mainwindows/mdi/images/copy.png | Bin 0 -> 1338 bytes examples/mainwindows/mdi/images/cut.png | Bin 0 -> 1323 bytes examples/mainwindows/mdi/images/new.png | Bin 0 -> 852 bytes examples/mainwindows/mdi/images/open.png | Bin 0 -> 2073 bytes examples/mainwindows/mdi/images/paste.png | Bin 0 -> 1645 bytes examples/mainwindows/mdi/images/save.png | Bin 0 -> 1187 bytes examples/mainwindows/mdi/mdi.py | 446 + examples/mainwindows/mdi/mdi.qrc | 10 + examples/mainwindows/mdi/mdi_rc.py | 604 + examples/mainwindows/menus.py | 286 + examples/mainwindows/recentfiles.py | 236 + examples/mainwindows/sdi/images/copy.png | Bin 0 -> 1338 bytes examples/mainwindows/sdi/images/cut.png | Bin 0 -> 1323 bytes examples/mainwindows/sdi/images/new.png | Bin 0 -> 852 bytes examples/mainwindows/sdi/images/open.png | Bin 0 -> 2073 bytes examples/mainwindows/sdi/images/paste.png | Bin 0 -> 1645 bytes examples/mainwindows/sdi/images/save.png | Bin 0 -> 1187 bytes examples/mainwindows/sdi/sdi.py | 317 + examples/mainwindows/sdi/sdi.qrc | 10 + examples/mainwindows/sdi/sdi_rc.py | 604 + examples/mainwindows/separations.py | 486 + examples/multimedia/README | 22 + .../multimedia/audiodevices/audiodevices.py | 279 + .../audiodevices/audiodevicesbase.ui | 390 + .../audiodevices/ui_audiodevicesbase.py | 252 + examples/multimedia/audiooutput.py | 295 + examples/multimediawidgets/README | 24 + examples/multimediawidgets/camera/camera.py | 512 + examples/multimediawidgets/camera/camera.ui | 492 + .../multimediawidgets/camera/imagesettings.ui | 123 + .../multimediawidgets/camera/ui_camera.py | 182 + .../camera/ui_imagesettings.py | 63 + .../camera/ui_videosettings.py | 117 + .../multimediawidgets/camera/videosettings.ui | 211 + examples/multimediawidgets/player.py | 691 + .../multimediawidgets/videographicsitem.py | 156 + examples/multimediawidgets/videowidget.py | 143 + examples/network/README | 26 + examples/network/blockingfortuneclient.py | 224 + examples/network/broadcastreceiver.py | 96 + examples/network/broadcastsender.py | 97 + examples/network/fortuneclient.py | 227 + examples/network/fortuneserver.py | 166 + examples/network/http/authenticationdialog.ui | 129 + examples/network/http/http.py | 245 + examples/network/lightmaps.py | 482 + examples/network/loopback.py | 174 + examples/network/threadedfortuneserver.py | 151 + examples/opengl/2dpainting.py | 172 + examples/opengl/README | 27 + examples/opengl/grabber.py | 395 + examples/opengl/hellogl.py | 281 + examples/opengl/openglwindow.py | 220 + examples/opengl/overpainting.py | 377 + examples/opengl/textures/images/side1.png | Bin 0 -> 935 bytes examples/opengl/textures/images/side2.png | Bin 0 -> 1622 bytes examples/opengl/textures/images/side3.png | Bin 0 -> 2117 bytes examples/opengl/textures/images/side4.png | Bin 0 -> 1222 bytes examples/opengl/textures/images/side5.png | Bin 0 -> 1806 bytes examples/opengl/textures/images/side6.png | Bin 0 -> 2215 bytes examples/opengl/textures/textures.py | 269 + examples/painting/README | 28 + .../painting/basicdrawing/basicdrawing.py | 349 + .../painting/basicdrawing/basicdrawing.qrc | 6 + .../painting/basicdrawing/basicdrawing_rc.py | 326 + .../painting/basicdrawing/images/brick.png | Bin 0 -> 767 bytes .../painting/basicdrawing/images/qt-logo.png | Bin 0 -> 3696 bytes examples/painting/concentriccircles.py | 146 + examples/painting/painterpaths.py | 298 + examples/painting/svgviewer/files/bubbles.svg | 215 + examples/painting/svgviewer/files/cubic.svg | 77 + examples/painting/svgviewer/files/spheres.svg | 72 + examples/painting/svgviewer/svgviewer.py | 298 + examples/painting/svgviewer/svgviewer.qrc | 8 + examples/painting/svgviewer/svgviewer_rc.py | 250 + examples/painting/transformations.py | 249 + examples/pyuic/compile-on-the-fly.py | 67 + examples/pyuic/demo.ui | 146 + examples/pyuic/load_ui1.py | 51 + examples/pyuic/load_ui2.py | 64 + examples/qml/referenceexamples/adding.py | 102 + examples/qml/referenceexamples/attached.py | 224 + examples/qml/referenceexamples/binding.py | 327 + examples/qml/referenceexamples/coercion.py | 148 + examples/qml/referenceexamples/default.py | 149 + examples/qml/referenceexamples/grouped.py | 217 + examples/qml/referenceexamples/methods.py | 144 + examples/qml/referenceexamples/properties.py | 135 + examples/qml/referenceexamples/signal.py | 242 + examples/qml/referenceexamples/valuesource.py | 325 + examples/qtdemo/colors.py | 279 + examples/qtdemo/demoitem.py | 236 + examples/qtdemo/demoitemanimation.py | 124 + examples/qtdemo/demotextitem.py | 113 + examples/qtdemo/examplecontent.py | 151 + examples/qtdemo/examples.xml | 205 + examples/qtdemo/guide.py | 140 + examples/qtdemo/guidecircle.py | 90 + examples/qtdemo/guideline.py | 75 + examples/qtdemo/headingitem.py | 105 + examples/qtdemo/imageitem.py | 118 + examples/qtdemo/images/demobg.png | Bin 0 -> 20675 bytes examples/qtdemo/images/qtlogo_small.png | Bin 0 -> 3546 bytes examples/qtdemo/images/trolltech-logo.png | Bin 0 -> 23547 bytes examples/qtdemo/itemcircleanimation.py | 392 + examples/qtdemo/letteritem.py | 85 + examples/qtdemo/mainwindow.py | 392 + examples/qtdemo/menucontent.py | 133 + examples/qtdemo/menumanager.py | 829 ++ examples/qtdemo/qtdemo.py | 89 + examples/qtdemo/scanitem.py | 78 + examples/qtdemo/score.py | 109 + examples/qtdemo/textbutton.py | 345 + examples/quick/README | 22 + examples/quick/animation/animation.py | 69 + examples/quick/animation/animation.qml | 63 + examples/quick/animation/animation.qrc | 22 + examples/quick/animation/animation_rc.py | 5135 +++++++ .../animation/basics/color-animation.qml | 123 + .../animation/basics/images/face-smile.png | Bin 0 -> 15408 bytes .../quick/animation/basics/images/moon.png | Bin 0 -> 2433 bytes .../quick/animation/basics/images/shadow.png | Bin 0 -> 425 bytes .../quick/animation/basics/images/star.png | Bin 0 -> 349 bytes .../quick/animation/basics/images/sun.png | Bin 0 -> 8153 bytes .../animation/basics/property-animation.qml | 107 + .../quick/animation/behaviors/SideRect.qml | 62 + .../animation/behaviors/behavior-example.qml | 120 + .../quick/animation/behaviors/tvtennis.qml | 111 + .../quick/animation/behaviors/wigglytext.qml | 112 + examples/quick/animation/easing/easing.qml | 156 + .../animation/pathanimation/pathanimation.qml | 107 + .../pathinterpolator/pathinterpolator.qml | 113 + examples/quick/animation/states/qt-logo.png | Bin 0 -> 5149 bytes examples/quick/animation/states/states.qml | 103 + .../quick/animation/states/transitions.qml | 132 + .../quick/canvas/bezierCurve/bezierCurve.qml | 123 + examples/quick/canvas/canvas.py | 69 + examples/quick/canvas/canvas.qml | 60 + examples/quick/canvas/canvas.qrc | 32 + examples/quick/canvas/canvas_rc.py | 11925 ++++++++++++++++ examples/quick/canvas/clip/clip.qml | 150 + examples/quick/canvas/contents/Button.qml | 87 + examples/quick/canvas/contents/ScrollBar.qml | 74 + examples/quick/canvas/contents/Slider.qml | 115 + examples/quick/canvas/contents/TitleBar.qml | 70 + examples/quick/canvas/contents/ToolBar.qml | 69 + .../canvas/contents/images/button-pressed.png | Bin 0 -> 571 bytes .../quick/canvas/contents/images/button.png | Bin 0 -> 564 bytes .../quick/canvas/contents/images/default.svg | 82 + .../quick/canvas/contents/images/gloss.png | Bin 0 -> 1236 bytes .../quick/canvas/contents/images/lineedit.png | Bin 0 -> 1415 bytes .../quick/canvas/contents/images/lineedit.sci | 5 + .../quick/canvas/contents/images/quit.png | Bin 0 -> 2369 bytes .../quick/canvas/contents/images/stripes.png | Bin 0 -> 257 bytes .../quick/canvas/contents/images/titlebar.png | Bin 0 -> 1436 bytes .../quick/canvas/contents/images/titlebar.sci | 5 + .../canvas/contents/images/toolbutton.png | Bin 0 -> 2550 bytes .../canvas/contents/images/toolbutton.sci | 5 + examples/quick/canvas/contents/qt-logo.png | Bin 0 -> 23519 bytes .../quadraticCurveTo/quadraticCurveTo.qml | 130 + .../quick/canvas/roundedrect/roundedrect.qml | 123 + examples/quick/canvas/smile/smile.qml | 126 + examples/quick/canvas/squircle/squircle.png | Bin 0 -> 771 bytes examples/quick/canvas/squircle/squircle.qml | 153 + examples/quick/canvas/tiger/tiger.js | 721 + examples/quick/canvas/tiger/tiger.qml | 128 + .../abstractitemmodel/abstractitemmodel.py | 126 + .../abstractitemmodel/abstractitemmodel.qrc | 6 + .../abstractitemmodel/abstractitemmodel_rc.py | 184 + .../quick/models/abstractitemmodel/view.qml | 50 + .../models/objectlistmodel/objectlistmodel.py | 108 + .../objectlistmodel/objectlistmodel.qrc | 5 + .../objectlistmodel/objectlistmodel_rc.py | 189 + .../quick/models/objectlistmodel/view.qml | 55 + .../models/stringlistmodel/stringlistmodel.py | 70 + .../stringlistmodel/stringlistmodel.qrc | 5 + .../stringlistmodel/stringlistmodel_rc.py | 187 + .../quick/models/stringlistmodel/view.qml | 54 + .../customgeometry/customgeometry.py | 188 + .../customgeometry/customgeometry.qrc | 5 + .../customgeometry/customgeometry_rc.py | 234 + .../quick/scenegraph/customgeometry/main.qml | 74 + examples/quick/shared/Button.qml | 91 + examples/quick/shared/LauncherList.qml | 153 + .../quick/shared/SimpleLauncherDelegate.qml | 89 + examples/quick/shared/images/back.png | Bin 0 -> 1590 bytes examples/quick/shared/images/next.png | Bin 0 -> 1371 bytes examples/quick/shared/shared.qrc | 9 + examples/quick/shared/shared_rc.py | 1022 ++ .../extending/chapter1-basics/app.qml | 59 + .../chapter1-basics/chapter1-basics.py | 103 + .../extending/chapter2-methods/app.qml | 65 + .../chapter2-methods/chapter2-methods.py | 107 + .../extending/chapter3-bindings/app.qml | 73 + .../chapter3-bindings/chapter3-bindings.py | 108 + .../chapter4-customPropertyTypes/app.qml | 59 + .../chapter4-customPropertyTypes.py | 116 + .../extending/chapter5-listproperties/app.qml | 69 + .../chapter5-listproperties.py | 129 + .../chapter6-plugins/Charts/chartsplugin.py | 51 + .../chapter6-plugins/Charts/piechart.py | 66 + .../chapter6-plugins/Charts/pieslice.py | 84 + .../extending/chapter6-plugins/Charts/qmldir | 2 + .../extending/chapter6-plugins/app.qml | 69 + examples/richtext/README | 28 + examples/richtext/calendar.py | 190 + examples/richtext/orderform.py | 303 + examples/richtext/syntaxhighlighter.py | 204 + examples/richtext/textedit/example.html | 79 + examples/richtext/textedit/images/logo.png | Bin 0 -> 632 bytes examples/richtext/textedit/images/logo32.png | Bin 0 -> 1410 bytes .../richtext/textedit/images/mac/editcopy.png | Bin 0 -> 1468 bytes .../richtext/textedit/images/mac/editcut.png | Bin 0 -> 1512 bytes .../textedit/images/mac/editpaste.png | Bin 0 -> 1906 bytes .../richtext/textedit/images/mac/editredo.png | Bin 0 -> 1752 bytes .../richtext/textedit/images/mac/editundo.png | Bin 0 -> 1746 bytes .../textedit/images/mac/exportpdf.png | Bin 0 -> 1215 bytes .../richtext/textedit/images/mac/filenew.png | Bin 0 -> 1172 bytes .../richtext/textedit/images/mac/fileopen.png | Bin 0 -> 2168 bytes .../textedit/images/mac/fileprint.png | Bin 0 -> 2087 bytes .../richtext/textedit/images/mac/filesave.png | Bin 0 -> 1206 bytes .../richtext/textedit/images/mac/textbold.png | Bin 0 -> 1611 bytes .../textedit/images/mac/textcenter.png | Bin 0 -> 1404 bytes .../textedit/images/mac/textitalic.png | Bin 0 -> 1164 bytes .../textedit/images/mac/textjustify.png | Bin 0 -> 1257 bytes .../richtext/textedit/images/mac/textleft.png | Bin 0 -> 1235 bytes .../textedit/images/mac/textright.png | Bin 0 -> 1406 bytes .../textedit/images/mac/textunder.png | Bin 0 -> 1183 bytes .../richtext/textedit/images/mac/zoomin.png | Bin 0 -> 1696 bytes .../richtext/textedit/images/mac/zoomout.png | Bin 0 -> 1662 bytes .../richtext/textedit/images/win/editcopy.png | Bin 0 -> 1325 bytes .../richtext/textedit/images/win/editcut.png | Bin 0 -> 1896 bytes .../textedit/images/win/editpaste.png | Bin 0 -> 1482 bytes .../richtext/textedit/images/win/editredo.png | Bin 0 -> 1787 bytes .../richtext/textedit/images/win/editundo.png | Bin 0 -> 1768 bytes .../textedit/images/win/exportpdf.png | Bin 0 -> 1059 bytes .../richtext/textedit/images/win/filenew.png | Bin 0 -> 768 bytes .../richtext/textedit/images/win/fileopen.png | Bin 0 -> 1662 bytes .../textedit/images/win/fileprint.png | Bin 0 -> 1456 bytes .../richtext/textedit/images/win/filesave.png | Bin 0 -> 1205 bytes .../richtext/textedit/images/win/textbold.png | Bin 0 -> 1134 bytes .../textedit/images/win/textcenter.png | Bin 0 -> 627 bytes .../textedit/images/win/textitalic.png | Bin 0 -> 829 bytes .../textedit/images/win/textjustify.png | Bin 0 -> 695 bytes .../richtext/textedit/images/win/textleft.png | Bin 0 -> 673 bytes .../textedit/images/win/textright.png | Bin 0 -> 677 bytes .../textedit/images/win/textunder.png | Bin 0 -> 971 bytes .../richtext/textedit/images/win/zoomin.png | Bin 0 -> 1208 bytes .../richtext/textedit/images/win/zoomout.png | Bin 0 -> 1226 bytes examples/richtext/textedit/textedit.py | 656 + examples/richtext/textedit/textedit.qrc | 45 + examples/richtext/textedit/textedit_rc.py | 3767 +++++ examples/richtext/textobject/files/heart.svg | 55 + examples/richtext/textobject/textobject.py | 139 + examples/sql/README | 26 + examples/sql/cachedtable.py | 110 + examples/sql/connection.py | 115 + examples/sql/querymodel.py | 157 + examples/sql/relationaltablemodel.py | 114 + examples/sql/tablemodel.py | 89 + examples/threads/README | 26 + examples/threads/mandelbrot.py | 347 + examples/threads/semaphores.py | 84 + examples/threads/waitconditions.py | 106 + examples/tools/README | 26 + examples/tools/codecs/codecs.py | 253 + .../tools/codecs/encodedfiles/iso-8859-1.txt | 6 + .../tools/codecs/encodedfiles/iso-8859-15.txt | 8 + examples/tools/codecs/encodedfiles/utf-16.txt | Bin 0 -> 162 bytes .../tools/codecs/encodedfiles/utf-16be.txt | Bin 0 -> 160 bytes .../tools/codecs/encodedfiles/utf-16le.txt | Bin 0 -> 160 bytes examples/tools/codecs/encodedfiles/utf-8.txt | 6 + .../tools/customcompleter/customcompleter.py | 206 + .../tools/customcompleter/customcompleter.qrc | 5 + .../customcompleter/customcompleter_rc.py | 734 + .../customcompleter/resources/wordlist.txt | 1454 ++ examples/tools/i18n/i18n.py | 217 + examples/tools/i18n/i18n.qrc | 18 + examples/tools/i18n/i18n_rc.py | 824 ++ examples/tools/i18n/translations/i18n_ar.qm | Bin 0 -> 736 bytes examples/tools/i18n/translations/i18n_ar.ts | 57 + examples/tools/i18n/translations/i18n_cs.qm | Bin 0 -> 796 bytes examples/tools/i18n/translations/i18n_cs.ts | 57 + examples/tools/i18n/translations/i18n_de.qm | Bin 0 -> 848 bytes examples/tools/i18n/translations/i18n_de.ts | 57 + examples/tools/i18n/translations/i18n_el.qm | Bin 0 -> 804 bytes examples/tools/i18n/translations/i18n_el.ts | 57 + examples/tools/i18n/translations/i18n_en.qm | Bin 0 -> 810 bytes examples/tools/i18n/translations/i18n_en.ts | 57 + examples/tools/i18n/translations/i18n_eo.qm | Bin 0 -> 806 bytes examples/tools/i18n/translations/i18n_eo.ts | 57 + examples/tools/i18n/translations/i18n_fr.qm | Bin 0 -> 844 bytes examples/tools/i18n/translations/i18n_fr.ts | 57 + examples/tools/i18n/translations/i18n_it.qm | Bin 0 -> 808 bytes examples/tools/i18n/translations/i18n_it.ts | 57 + examples/tools/i18n/translations/i18n_jp.qm | Bin 0 -> 722 bytes examples/tools/i18n/translations/i18n_jp.ts | 57 + examples/tools/i18n/translations/i18n_ko.qm | Bin 0 -> 690 bytes examples/tools/i18n/translations/i18n_ko.ts | 57 + examples/tools/i18n/translations/i18n_no.qm | Bin 0 -> 804 bytes examples/tools/i18n/translations/i18n_no.ts | 57 + examples/tools/i18n/translations/i18n_pt.qm | Bin 0 -> 838 bytes examples/tools/i18n/translations/i18n_pt.ts | 57 + examples/tools/i18n/translations/i18n_ru.qm | Bin 0 -> 806 bytes examples/tools/i18n/translations/i18n_ru.ts | 57 + examples/tools/i18n/translations/i18n_sv.qm | Bin 0 -> 814 bytes examples/tools/i18n/translations/i18n_sv.ts | 57 + examples/tools/i18n/translations/i18n_zh.qm | Bin 0 -> 700 bytes examples/tools/i18n/translations/i18n_zh.ts | 57 + examples/tools/regexp.py | 193 + .../settingseditor/inifiles/licensepage.ini | 46 + .../tools/settingseditor/inifiles/qsa.ini | 26 + .../tools/settingseditor/settingseditor.py | 725 + examples/tutorials/addressbook/README | 21 + examples/tutorials/addressbook/part1.py | 79 + examples/tutorials/addressbook/part2.py | 186 + examples/tutorials/addressbook/part3.py | 252 + examples/tutorials/addressbook/part4.py | 306 + examples/tutorials/addressbook/part5.py | 366 + examples/tutorials/addressbook/part6.py | 430 + examples/tutorials/addressbook/part7.py | 482 + examples/webkit/README | 23 + examples/webkit/domtraversal/domtraversal.py | 89 + examples/webkit/domtraversal/ui_window.py | 57 + examples/webkit/domtraversal/window.ui | 89 + examples/webkit/fancybrowser/fancybrowser.py | 211 + examples/webkit/fancybrowser/jquery.qrc | 5 + examples/webkit/formextractor/form.html | 46 + .../webkit/formextractor/formextractor.py | 143 + .../webkit/formextractor/formextractor.qrc | 5 + .../webkit/formextractor/formextractor.ui | 159 + .../webkit/formextractor/formextractor_rc.py | 99 + .../webkit/formextractor/ui_formextractor.py | 87 + examples/webkit/framecapture.py | 157 + examples/webkit/previewer/previewer.py | 178 + examples/webkit/previewer/previewer.ui | 99 + examples/webkit/previewer/ui_previewer.py | 62 + .../webkit/simpleselector/simpleselector.py | 85 + examples/webkit/simpleselector/ui_window.py | 50 + examples/webkit/simpleselector/window.ui | 72 + examples/widgets/README | 30 + examples/widgets/analogclock.py | 122 + examples/widgets/calculator.py | 357 + examples/widgets/calendarwidget.py | 417 + examples/widgets/charactermap.py | 281 + examples/widgets/digitalclock.py | 80 + examples/widgets/groupbox.py | 169 + examples/widgets/icons/icons.py | 475 + examples/widgets/icons/images/designer.png | Bin 0 -> 4205 bytes .../widgets/icons/images/find_disabled.png | Bin 0 -> 501 bytes examples/widgets/icons/images/find_normal.png | Bin 0 -> 838 bytes .../icons/images/monkey_off_128x128.png | Bin 0 -> 7045 bytes .../widgets/icons/images/monkey_off_16x16.png | Bin 0 -> 683 bytes .../widgets/icons/images/monkey_off_32x32.png | Bin 0 -> 1609 bytes .../widgets/icons/images/monkey_off_64x64.png | Bin 0 -> 3533 bytes .../icons/images/monkey_on_128x128.png | Bin 0 -> 6909 bytes .../widgets/icons/images/monkey_on_16x16.png | Bin 0 -> 681 bytes .../widgets/icons/images/monkey_on_32x32.png | Bin 0 -> 1577 bytes .../widgets/icons/images/monkey_on_64x64.png | Bin 0 -> 3479 bytes .../icons/images/qt_extended_16x16.png | Bin 0 -> 834 bytes .../icons/images/qt_extended_32x32.png | Bin 0 -> 1892 bytes .../icons/images/qt_extended_48x48.png | Bin 0 -> 3672 bytes examples/widgets/imageviewer.py | 216 + examples/widgets/lineedits.py | 207 + examples/widgets/movie/animation.mng | Bin 0 -> 5464 bytes examples/widgets/movie/movie.py | 211 + examples/widgets/scribble.py | 321 + examples/widgets/shapedclock.py | 149 + examples/widgets/sliders.py | 195 + examples/widgets/spinboxes.py | 213 + examples/widgets/styles.py | 243 + .../stylesheet/images/checkbox_checked.png | Bin 0 -> 263 bytes .../images/checkbox_checked_hover.png | Bin 0 -> 266 bytes .../images/checkbox_checked_pressed.png | Bin 0 -> 425 bytes .../stylesheet/images/checkbox_unchecked.png | Bin 0 -> 159 bytes .../images/checkbox_unchecked_hover.png | Bin 0 -> 159 bytes .../images/checkbox_unchecked_pressed.png | Bin 0 -> 320 bytes .../widgets/stylesheet/images/down_arrow.png | Bin 0 -> 175 bytes .../stylesheet/images/down_arrow_disabled.png | Bin 0 -> 174 bytes examples/widgets/stylesheet/images/frame.png | Bin 0 -> 253 bytes .../widgets/stylesheet/images/pagefold.png | Bin 0 -> 1545 bytes .../widgets/stylesheet/images/pushbutton.png | Bin 0 -> 533 bytes .../stylesheet/images/pushbutton_hover.png | Bin 0 -> 525 bytes .../stylesheet/images/pushbutton_pressed.png | Bin 0 -> 513 bytes .../stylesheet/images/radiobutton_checked.png | Bin 0 -> 355 bytes .../images/radiobutton_checked_hover.png | Bin 0 -> 532 bytes .../images/radiobutton_checked_pressed.png | Bin 0 -> 599 bytes .../images/radiobutton_unchecked.png | Bin 0 -> 240 bytes .../images/radiobutton_unchecked_hover.png | Bin 0 -> 492 bytes .../images/radiobutton_unchecked_pressed.png | Bin 0 -> 556 bytes .../widgets/stylesheet/images/sizegrip.png | Bin 0 -> 129 bytes .../widgets/stylesheet/images/spindown.png | Bin 0 -> 276 bytes .../stylesheet/images/spindown_hover.png | Bin 0 -> 268 bytes .../stylesheet/images/spindown_off.png | Bin 0 -> 249 bytes .../stylesheet/images/spindown_pressed.png | Bin 0 -> 264 bytes examples/widgets/stylesheet/images/spinup.png | Bin 0 -> 283 bytes .../stylesheet/images/spinup_hover.png | Bin 0 -> 277 bytes .../widgets/stylesheet/images/spinup_off.png | Bin 0 -> 274 bytes .../stylesheet/images/spinup_pressed.png | Bin 0 -> 277 bytes .../widgets/stylesheet/images/up_arrow.png | Bin 0 -> 197 bytes .../stylesheet/images/up_arrow_disabled.png | Bin 0 -> 172 bytes examples/widgets/stylesheet/mainwindow.ui | 356 + examples/widgets/stylesheet/qss/coffee.qss | 112 + examples/widgets/stylesheet/qss/default.qss | 1 + examples/widgets/stylesheet/qss/pagefold.qss | 299 + examples/widgets/stylesheet/stylesheet.py | 88 + examples/widgets/stylesheet/stylesheet.qrc | 37 + examples/widgets/stylesheet/stylesheet_rc.py | 1224 ++ .../widgets/stylesheet/stylesheeteditor.py | 115 + .../widgets/stylesheet/stylesheeteditor.ui | 176 + examples/widgets/stylesheet/ui_mainwindow.py | 191 + .../widgets/stylesheet/ui_stylesheeteditor.py | 88 + examples/widgets/tetrix.py | 504 + examples/widgets/tooltips/images/circle.png | Bin 0 -> 165 bytes examples/widgets/tooltips/images/square.png | Bin 0 -> 94 bytes examples/widgets/tooltips/images/triangle.png | Bin 0 -> 170 bytes examples/widgets/tooltips/tooltips.py | 278 + examples/widgets/tooltips/tooltips.qrc | 7 + examples/widgets/tooltips/tooltips_rc.py | 82 + examples/widgets/wiggly.py | 123 + examples/widgets/windowflags.py | 283 + examples/xmlpatterns/README | 24 + examples/xmlpatterns/schema/files/contact.xsd | 25 + .../schema/files/invalid_contact.xml | 11 + .../schema/files/invalid_order.xml | 13 + .../schema/files/invalid_recipe.xml | 14 + examples/xmlpatterns/schema/files/order.xsd | 23 + examples/xmlpatterns/schema/files/recipe.xsd | 40 + .../schema/files/valid_contact.xml | 11 + .../xmlpatterns/schema/files/valid_order.xml | 18 + .../xmlpatterns/schema/files/valid_recipe.xml | 13 + examples/xmlpatterns/schema/schema.py | 275 + examples/xmlpatterns/schema/schema.qrc | 13 + examples/xmlpatterns/schema/schema.ui | 71 + examples/xmlpatterns/schema/schema_rc.py | 388 + examples/xmlpatterns/schema/ui_schema.py | 63 + mk_distinfo.py | 113 + pylupdate/pylupdate_main.py | 239 + pylupdate/pylupdatemod.sip | 82 + pyrcc/pyrcc_main.py | 190 + pyrcc/pyrccmod.sip | 71 + pyuic/uic/Compiler/__init__.py | 20 + pyuic/uic/Compiler/compiler.py | 125 + pyuic/uic/Compiler/indenter.py | 77 + pyuic/uic/Compiler/misc.py | 59 + pyuic/uic/Compiler/proxy_metaclass.py | 100 + pyuic/uic/Compiler/qobjectcreator.py | 180 + pyuic/uic/Compiler/qtproxies.py | 463 + pyuic/uic/Loader/__init__.py | 20 + pyuic/uic/Loader/loader.py | 72 + pyuic/uic/Loader/qobjectcreator.py | 150 + pyuic/uic/__init__.py | 230 + pyuic/uic/driver.py | 149 + pyuic/uic/exceptions.py | 53 + pyuic/uic/icon_cache.py | 159 + pyuic/uic/objcreator.py | 163 + pyuic/uic/port_v2/__init__.py | 20 + pyuic/uic/port_v2/as_string.py | 40 + pyuic/uic/port_v2/ascii_upper.py | 33 + pyuic/uic/port_v2/proxy_base.py | 31 + pyuic/uic/port_v2/string_io.py | 27 + pyuic/uic/port_v3/__init__.py | 20 + pyuic/uic/port_v3/as_string.py | 40 + pyuic/uic/port_v3/ascii_upper.py | 30 + pyuic/uic/port_v3/proxy_base.py | 29 + pyuic/uic/port_v3/string_io.py | 24 + pyuic/uic/properties.py | 523 + pyuic/uic/pyuic.py | 96 + pyuic/uic/uiparser.py | 1036 ++ pyuic/uic/widget-plugins/qaxcontainer.py | 33 + pyuic/uic/widget-plugins/qscintilla.py | 33 + pyuic/uic/widget-plugins/qtcharts.py | 33 + pyuic/uic/widget-plugins/qtprintsupport.py | 33 + pyuic/uic/widget-plugins/qtquickwidgets.py | 33 + .../uic/widget-plugins/qtwebenginewidgets.py | 33 + pyuic/uic/widget-plugins/qtwebkit.py | 51 + qmlscene/pluginloader.cpp | 428 + qmlscene/pluginloader.h | 57 + qmlscene/qmlscene.pro-in | 23 + qpy/QtCore/qpycore_api.h | 119 + qpy/QtCore/qpycore_chimera.cpp | 1725 +++ qpy/QtCore/qpycore_chimera.h | 283 + qpy/QtCore/qpycore_chimera_signature.cpp | 113 + qpy/QtCore/qpycore_chimera_storage.cpp | 120 + qpy/QtCore/qpycore_classinfo.cpp | 63 + qpy/QtCore/qpycore_classinfo.h | 36 + qpy/QtCore/qpycore_decorators.cpp | 165 + qpy/QtCore/qpycore_enums_flags.cpp | 319 + qpy/QtCore/qpycore_enums_flags.h | 47 + qpy/QtCore/qpycore_event_handlers.cpp | 114 + qpy/QtCore/qpycore_event_handlers.h | 50 + qpy/QtCore/qpycore_init.cpp | 64 + qpy/QtCore/qpycore_misc.cpp | 55 + qpy/QtCore/qpycore_misc.h | 33 + qpy/QtCore/qpycore_namespace.h | 35 + qpy/QtCore/qpycore_objectified_strings.h | 40 + qpy/QtCore/qpycore_post_init.cpp.in | 157 + qpy/QtCore/qpycore_public_api.cpp | 424 + qpy/QtCore/qpycore_public_api.h | 109 + qpy/QtCore/qpycore_pyqtboundsignal.cpp | 1054 ++ qpy/QtCore/qpycore_pyqtboundsignal.h | 69 + qpy/QtCore/qpycore_pyqtconfigure.cpp | 269 + qpy/QtCore/qpycore_pyqtmethodproxy.cpp | 333 + qpy/QtCore/qpycore_pyqtmethodproxy.h | 67 + qpy/QtCore/qpycore_pyqtproperty.cpp | 655 + qpy/QtCore/qpycore_pyqtproperty.h | 82 + qpy/QtCore/qpycore_pyqtpyobject.cpp | 208 + qpy/QtCore/qpycore_pyqtpyobject.h | 57 + qpy/QtCore/qpycore_pyqtsignal.cpp | 867 ++ qpy/QtCore/qpycore_pyqtsignal.h | 87 + qpy/QtCore/qpycore_pyqtslot.cpp | 351 + qpy/QtCore/qpycore_pyqtslot.h | 77 + qpy/QtCore/qpycore_pyqtslotproxy.cpp | 407 + qpy/QtCore/qpycore_pyqtslotproxy.h | 116 + qpy/QtCore/qpycore_qjsonvalue.cpp | 174 + qpy/QtCore/qpycore_qmessagelogger.cpp | 112 + qpy/QtCore/qpycore_qmetaobject.cpp | 199 + qpy/QtCore/qpycore_qmetaobject_helpers.cpp | 162 + qpy/QtCore/qpycore_qmetaobjectbuilder.h | 124 + qpy/QtCore/qpycore_qobject_getattr.cpp | 131 + qpy/QtCore/qpycore_qobject_helpers.cpp | 320 + qpy/QtCore/qpycore_qobject_helpers.h | 40 + qpy/QtCore/qpycore_qstring.cpp | 187 + qpy/QtCore/qpycore_qt_conf.cpp | 115 + qpy/QtCore/qpycore_qvariant.cpp | 44 + qpy/QtCore/qpycore_qvariant_value.cpp | 222 + qpy/QtCore/qpycore_qvariantmap.cpp | 83 + qpy/QtCore/qpycore_types.cpp | 535 + qpy/QtCore/qpycore_types.h | 56 + qpy/QtDBus/qpydbus_api.h | 29 + qpy/QtDBus/qpydbus_chimera_helpers.cpp | 257 + qpy/QtDBus/qpydbus_chimera_helpers.h | 37 + qpy/QtDBus/qpydbus_post_init.cpp | 38 + qpy/QtDBus/qpydbuspendingreply.cpp | 66 + qpy/QtDBus/qpydbuspendingreply.h | 41 + qpy/QtDBus/qpydbusreply.cpp | 145 + qpy/QtDBus/qpydbusreply.h | 60 + .../qpydesignercontainerextension.h | 42 + .../qpydesignercustomwidgetcollectionplugin.h | 42 + .../qpydesignercustomwidgetplugin.h | 42 + .../qpydesignermembersheetextension.h | 42 + .../qpydesignerpropertysheetextension.h | 42 + qpy/QtDesigner/qpydesignertaskmenuextension.h | 42 + qpy/QtGui/qpyopengl_add_constants.cpp | 5132 +++++++ qpy/QtGui/qpyopengl_api.h | 79 + qpy/QtGui/qpyopengl_array_convertors.cpp | 200 + qpy/QtGui/qpyopengl_attribute_array.cpp | 295 + qpy/QtGui/qpyopengl_data_cache.cpp | 333 + qpy/QtGui/qpyopengl_data_cache.h | 106 + qpy/QtGui/qpyopengl_get.cpp | 184 + qpy/QtGui/qpyopengl_init.cpp | 58 + qpy/QtGui/qpyopengl_misc.h | 35 + qpy/QtGui/qpyopengl_uniform_value_array.cpp | 447 + qpy/QtGui/qpyopengl_value_array.cpp | 432 + qpy/QtGui/qpyopengl_version_functions.cpp | 157 + qpy/QtQml/qpyqml_api.h | 64 + qpy/QtQml/qpyqml_listdata.cpp | 52 + qpy/QtQml/qpyqml_listdata.h | 50 + qpy/QtQml/qpyqml_post_init.cpp | 65 + qpy/QtQml/qpyqml_qjsvalue.cpp | 129 + qpy/QtQml/qpyqml_register_singleton_type.cpp | 169 + qpy/QtQml/qpyqml_register_type.cpp | 413 + qpy/QtQml/qpyqmllistproperty.cpp | 439 + qpy/QtQml/qpyqmllistproperty.h | 35 + qpy/QtQml/qpyqmllistpropertywrapper.cpp | 352 + qpy/QtQml/qpyqmllistpropertywrapper.h | 59 + qpy/QtQml/qpyqmlobject.cpp | 713 + qpy/QtQml/qpyqmlobject.h | 221 + qpy/QtQml/qpyqmlsingletonobject.cpp | 110 + qpy/QtQml/qpyqmlsingletonobject.h | 100 + qpy/QtQuick/qpyquick_api.h | 33 + qpy/QtQuick/qpyquick_chimera_helpers.cpp | 157 + qpy/QtQuick/qpyquick_chimera_helpers.h | 42 + qpy/QtQuick/qpyquick_post_init.cpp | 58 + qpy/QtQuick/qpyquick_register_type.cpp | 57 + qpy/QtQuick/qpyquick_register_type.h | 39 + qpy/QtQuick/qpyquickframebufferobject.cpp | 188 + qpy/QtQuick/qpyquickframebufferobject.h | 102 + qpy/QtQuick/qpyquickitem.cpp | 195 + qpy/QtQuick/qpyquickitem.h | 98 + qpy/QtQuick/qpyquickpainteditem.cpp | 184 + qpy/QtQuick/qpyquickpainteditem.h | 98 + qpy/QtQuick/qpyquickview.cpp | 163 + qpy/QtQuick/qpyquickview.h | 88 + qpy/QtQuick/qpyquickwindow.cpp | 163 + qpy/QtQuick/qpyquickwindow.h | 88 + qpy/QtWidgets/qpywidgets_api.h | 29 + qpy/QtWidgets/qpywidgets_chimera_helpers.cpp | 53 + qpy/QtWidgets/qpywidgets_chimera_helpers.h | 37 + qpy/QtWidgets/qpywidgets_post_init.cpp | 35 + qpy/pylupdate/fetchtr.cpp | 939 ++ qpy/pylupdate/merge.cpp | 220 + qpy/pylupdate/metatranslator.cpp | 803 ++ qpy/pylupdate/metatranslator.h | 184 + qpy/pylupdate/numberh.cpp | 257 + qpy/pylupdate/proparser.cpp | 226 + qpy/pylupdate/proparser.h | 50 + qpy/pylupdate/pylupdate.h | 39 + qpy/pylupdate/sametexth.cpp | 104 + qpy/pylupdate/simtexth.cpp | 273 + qpy/pylupdate/simtexth.h | 94 + qpy/pylupdate/translator.cpp | 1214 ++ qpy/pylupdate/translator.h | 448 + qpy/pyrcc/rcc.cpp | 585 + qpy/pyrcc/rcc.h | 174 + sip/Enginio/Enginiomod.sip | 55 + sip/Enginio/enginio.sip | 71 + sip/Enginio/enginioclient.sip | 83 + sip/Enginio/enginioclientconnection.sip | 52 + sip/Enginio/enginioidentity.sip | 32 + sip/Enginio/enginiomodel.sip | 59 + sip/Enginio/enginiooauth2authentication.sip | 44 + sip/Enginio/enginioreply.sip | 55 + sip/QAxContainer/QAxContainermod.sip | 48 + sip/QAxContainer/qaxbase.sip | 153 + sip/QAxContainer/qaxobject.sip | 66 + sip/QAxContainer/qaxwidget.sip | 52 + sip/QtAndroidExtras/QtAndroidExtrasmod.sip | 48 + sip/QtAndroidExtras/qandroidjniobject.sip | 53 + sip/QtAndroidExtras/qtandroid.sip | 42 + sip/QtBluetooth/QtBluetoothmod.sip | 71 + sip/QtBluetooth/qbluetooth.sip | 63 + sip/QtBluetooth/qbluetoothaddress.sip | 46 + .../qbluetoothdevicediscoveryagent.sip | 108 + sip/QtBluetooth/qbluetoothdeviceinfo.sip | 240 + sip/QtBluetooth/qbluetoothhostinfo.sip | 47 + sip/QtBluetooth/qbluetoothlocaldevice.sip | 92 + sip/QtBluetooth/qbluetoothserver.sip | 108 + .../qbluetoothservicediscoveryagent.sip | 79 + sip/QtBluetooth/qbluetoothserviceinfo.sip | 95 + sip/QtBluetooth/qbluetoothsocket.sip | 149 + sip/QtBluetooth/qbluetoothtransfermanager.sip | 40 + sip/QtBluetooth/qbluetoothtransferreply.sip | 74 + sip/QtBluetooth/qbluetoothtransferrequest.sip | 51 + sip/QtBluetooth/qbluetoothuuid.sip | 539 + sip/QtBluetooth/qlowenergyadvertisingdata.sip | 66 + .../qlowenergyadvertisingparameters.sip | 84 + sip/QtBluetooth/qlowenergycharacteristic.sip | 64 + .../qlowenergycharacteristicdata.sip | 61 + .../qlowenergyconnectionparameters.sip | 51 + sip/QtBluetooth/qlowenergycontroller.sip | 147 + sip/QtBluetooth/qlowenergydescriptor.sip | 45 + sip/QtBluetooth/qlowenergydescriptordata.sip | 56 + sip/QtBluetooth/qlowenergyservice.sip | 119 + sip/QtBluetooth/qlowenergyservicedata.sip | 62 + sip/QtBluetooth/qpybluetooth_qlist.sip | 240 + sip/QtBluetooth/qpybluetooth_quint128.sip | 115 + sip/QtCore/QtCoremod.sip | 222 + sip/QtCore/qabstractanimation.sip | 82 + sip/QtCore/qabstracteventdispatcher.sip | 73 + sip/QtCore/qabstractitemmodel.sip | 332 + sip/QtCore/qabstractnativeeventfilter.sip | 36 + sip/QtCore/qabstractproxymodel.sip | 81 + sip/QtCore/qabstractstate.sip | 49 + sip/QtCore/qabstracttransition.sip | 110 + sip/QtCore/qanimationgroup.sip | 43 + sip/QtCore/qbasictimer.sip | 37 + sip/QtCore/qbitarray.sip | 94 + sip/QtCore/qbuffer.sip | 88 + sip/QtCore/qbytearray.sip | 418 + sip/QtCore/qbytearraymatcher.sip | 37 + sip/QtCore/qchar.sip | 71 + sip/QtCore/qcollator.sip | 70 + sip/QtCore/qcommandlineoption.sip | 90 + sip/QtCore/qcommandlineparser.sip | 87 + sip/QtCore/qcoreapplication.sip | 324 + sip/QtCore/qcoreevent.sip | 269 + sip/QtCore/qcryptographichash.sip | 76 + sip/QtCore/qdatastream.sip | 463 + sip/QtCore/qdatetime.sip | 566 + sip/QtCore/qdeadlinetimer.sip | 89 + sip/QtCore/qdir.sip | 182 + sip/QtCore/qdiriterator.sip | 54 + sip/QtCore/qeasingcurve.sip | 285 + sip/QtCore/qelapsedtimer.sip | 59 + sip/QtCore/qeventloop.sip | 76 + sip/QtCore/qeventtransition.sip | 42 + sip/QtCore/qfile.sip | 61 + sip/QtCore/qfiledevice.sip | 199 + sip/QtCore/qfileinfo.sip | 103 + sip/QtCore/qfileselector.sip | 41 + sip/QtCore/qfilesystemwatcher.sip | 43 + sip/QtCore/qfinalstate.sip | 37 + sip/QtCore/qglobal.sip | 233 + sip/QtCore/qhistorystate.sip | 69 + sip/QtCore/qidentityproxymodel.sip | 54 + sip/QtCore/qiodevice.sip | 347 + sip/QtCore/qitemselectionmodel.sip | 289 + sip/QtCore/qjsonarray.sip | 133 + sip/QtCore/qjsondocument.sip | 109 + sip/QtCore/qjsonobject.sip | 136 + sip/QtCore/qjsonvalue.sip | 88 + sip/QtCore/qlibrary.sip | 64 + sip/QtCore/qlibraryinfo.sip | 61 + sip/QtCore/qline.sip | 197 + sip/QtCore/qlocale.sip | 1531 ++ sip/QtCore/qlockfile.sip | 57 + sip/QtCore/qlogging.sip | 205 + sip/QtCore/qmargins.sip | 182 + sip/QtCore/qmessageauthenticationcode.sip | 46 + sip/QtCore/qmetaobject.sip | 211 + sip/QtCore/qmetatype.sip | 142 + sip/QtCore/qmimedata.sip | 59 + sip/QtCore/qmimedatabase.sip | 54 + sip/QtCore/qmimetype.sip | 57 + sip/QtCore/qmutex.sip | 79 + sip/QtCore/qnamespace.sip | 1802 +++ sip/QtCore/qnumeric.sip | 35 + sip/QtCore/qobject.sip | 751 + sip/QtCore/qobjectcleanuphandler.sip | 36 + sip/QtCore/qobjectdefs.sip | 185 + sip/QtCore/qoperatingsystemversion.sip | 97 + sip/QtCore/qparallelanimationgroup.sip | 39 + sip/QtCore/qpauseanimation.sip | 39 + sip/QtCore/qpluginloader.sip | 43 + sip/QtCore/qpoint.sip | 203 + sip/QtCore/qprocess.sip | 253 + sip/QtCore/qpropertyanimation.sip | 42 + sip/QtCore/qpycore_qhash.sip | 380 + sip/QtCore/qpycore_qlist.sip | 953 ++ sip/QtCore/qpycore_qmap.sip | 352 + sip/QtCore/qpycore_qpair.sip | 337 + sip/QtCore/qpycore_qset.sip | 252 + sip/QtCore/qpycore_qvariantmap.sip | 47 + sip/QtCore/qpycore_qvector.sip | 425 + sip/QtCore/qpycore_virtual_error_handler.sip | 23 + sip/QtCore/qrandom.sip | 57 + sip/QtCore/qreadwritelock.sip | 104 + sip/QtCore/qrect.sip | 336 + sip/QtCore/qregexp.sip | 137 + sip/QtCore/qregularexpression.sip | 200 + sip/QtCore/qresource.sip | 73 + sip/QtCore/qrunnable.sip | 35 + sip/QtCore/qsavefile.sip | 51 + sip/QtCore/qsemaphore.sip | 59 + sip/QtCore/qsequentialanimationgroup.sip | 45 + sip/QtCore/qsettings.sip | 110 + sip/QtCore/qsharedmemory.sip | 75 + sip/QtCore/qsignalmapper.sip | 60 + sip/QtCore/qsignaltransition.sip | 66 + sip/QtCore/qsize.sip | 176 + sip/QtCore/qsocketnotifier.sip | 51 + sip/QtCore/qsortfilterproxymodel.sip | 110 + sip/QtCore/qstandardpaths.sip | 90 + sip/QtCore/qstate.sip | 91 + sip/QtCore/qstatemachine.sip | 147 + sip/QtCore/qstorageinfo.sip | 68 + sip/QtCore/qstring.sip | 79 + sip/QtCore/qstringlist.sip | 138 + sip/QtCore/qstringlistmodel.sip | 43 + sip/QtCore/qsysinfo.sip | 198 + sip/QtCore/qsystemsemaphore.sip | 58 + sip/QtCore/qtemporarydir.sip | 47 + sip/QtCore/qtemporaryfile.sip | 49 + sip/QtCore/qtextboundaryfinder.sip | 67 + sip/QtCore/qtextcodec.sip | 117 + sip/QtCore/qtextstream.sip | 149 + sip/QtCore/qthread.sip | 93 + sip/QtCore/qthreadpool.sip | 88 + sip/QtCore/qtimeline.sip | 97 + sip/QtCore/qtimer.sip | 83 + sip/QtCore/qtimezone.sip | 111 + sip/QtCore/qtranslator.sip | 37 + sip/QtCore/qurl.sip | 308 + sip/QtCore/qurlquery.sip | 64 + sip/QtCore/quuid.sip | 118 + sip/QtCore/qvariant.sip | 177 + sip/QtCore/qvariantanimation.sip | 57 + sip/QtCore/qversionnumber.sip | 81 + sip/QtCore/qwaitcondition.sip | 39 + sip/QtCore/qwineventnotifier.sip | 54 + sip/QtCore/qxmlstream.sip | 442 + sip/QtDBus/QtDBusmod.sip | 61 + sip/QtDBus/qdbusabstractadaptor.sip | 38 + sip/QtDBus/qdbusabstractinterface.sip | 159 + sip/QtDBus/qdbusargument.sip | 187 + sip/QtDBus/qdbusconnection.sip | 262 + sip/QtDBus/qdbusconnectioninterface.sip | 71 + sip/QtDBus/qdbuserror.sip | 71 + sip/QtDBus/qdbusextratypes.sip | 89 + sip/QtDBus/qdbusinterface.sip | 32 + sip/QtDBus/qdbusmessage.sip | 74 + sip/QtDBus/qdbuspendingcall.sip | 59 + sip/QtDBus/qdbusservicewatcher.sip | 57 + sip/QtDBus/qdbusunixfiledescriptor.sip | 39 + sip/QtDBus/qpydbuspendingreply.sip | 44 + sip/QtDBus/qpydbusreply.sip | 238 + sip/QtDesigner/QtDesignermod.sip | 72 + sip/QtDesigner/abstractactioneditor.sip | 38 + sip/QtDesigner/abstractformbuilder.sip | 40 + sip/QtDesigner/abstractformeditor.sip | 51 + sip/QtDesigner/abstractformwindow.sip | 106 + sip/QtDesigner/abstractformwindowcursor.sip | 64 + sip/QtDesigner/abstractformwindowmanager.sip | 88 + sip/QtDesigner/abstractobjectinspector.sip | 36 + sip/QtDesigner/abstractpropertyeditor.sip | 44 + sip/QtDesigner/abstractwidgetbox.sip | 36 + sip/QtDesigner/container.sip | 40 + sip/QtDesigner/customwidget.sip | 54 + sip/QtDesigner/default_extensionfactory.sip | 41 + sip/QtDesigner/extension.sip | 45 + sip/QtDesigner/formbuilder.sip | 37 + sip/QtDesigner/membersheet.sip | 45 + sip/QtDesigner/propertysheet.sip | 47 + sip/QtDesigner/qextensionmanager.sip | 82 + .../qpydesignercontainerextension.sip | 32 + ...pydesignercustomwidgetcollectionplugin.sip | 33 + .../qpydesignercustomwidgetplugin.sip | 32 + .../qpydesignermembersheetextension.sip | 32 + .../qpydesignerpropertysheetextension.sip | 33 + .../qpydesignertaskmenuextension.sip | 32 + sip/QtDesigner/taskmenu.sip | 33 + sip/QtGui/QtGuimod.sip | 143 + sip/QtGui/opengl_types.sip | 43 + sip/QtGui/qabstracttextdocumentlayout.sip | 104 + sip/QtGui/qbackingstore.sip | 43 + sip/QtGui/qbitmap.sip | 52 + sip/QtGui/qbrush.sip | 223 + sip/QtGui/qclipboard.sip | 95 + sip/QtGui/qcolor.sip | 194 + sip/QtGui/qcursor.sip | 84 + sip/QtGui/qdesktopservices.sip | 67 + sip/QtGui/qdrag.sip | 61 + sip/QtGui/qevent.sip | 930 ++ sip/QtGui/qfont.sip | 230 + sip/QtGui/qfontdatabase.sip | 112 + sip/QtGui/qfontinfo.sip | 47 + sip/QtGui/qfontmetrics.sip | 189 + sip/QtGui/qgenericmatrix.sip | 1214 ++ sip/QtGui/qglyphrun.sip | 72 + sip/QtGui/qguiapplication.sip | 338 + sip/QtGui/qicon.sip | 107 + sip/QtGui/qiconengine.sip | 94 + sip/QtGui/qimage.sip | 282 + sip/QtGui/qimageiohandler.sip | 103 + sip/QtGui/qimagereader.sip | 111 + sip/QtGui/qimagewriter.sip | 96 + sip/QtGui/qinputmethod.sip | 91 + sip/QtGui/qkeysequence.sip | 246 + sip/QtGui/qmatrix4x4.sip | 320 + sip/QtGui/qmovie.sip | 95 + sip/QtGui/qoffscreensurface.sip | 60 + sip/QtGui/qopenglbuffer.sip | 108 + sip/QtGui/qopenglcontext.sip | 149 + sip/QtGui/qopengldebug.sip | 150 + sip/QtGui/qopenglframebufferobject.sip | 145 + sip/QtGui/qopenglpaintdevice.sip | 60 + sip/QtGui/qopenglpixeltransferoptions.sip | 56 + sip/QtGui/qopenglshaderprogram.sip | 364 + sip/QtGui/qopengltexture.sip | 629 + sip/QtGui/qopengltextureblitter.sip | 60 + sip/QtGui/qopengltimerquery.sip | 75 + sip/QtGui/qopenglversionfunctions.sip | 36 + sip/QtGui/qopenglvertexarrayobject.sip | 71 + sip/QtGui/qopenglwindow.sip | 73 + sip/QtGui/qpagedpaintdevice.sip | 400 + sip/QtGui/qpagelayout.sip | 97 + sip/QtGui/qpagesize.sip | 220 + sip/QtGui/qpaintdevice.sip | 81 + sip/QtGui/qpaintdevicewindow.sip | 45 + sip/QtGui/qpaintengine.sip | 196 + sip/QtGui/qpainter.sip | 556 + sip/QtGui/qpainterpath.sip | 179 + sip/QtGui/qpalette.sip | 127 + sip/QtGui/qpdfwriter.sip | 62 + sip/QtGui/qpen.sip | 103 + sip/QtGui/qpicture.sip | 187 + sip/QtGui/qpixelformat.sip | 159 + sip/QtGui/qpixmap.sip | 108 + sip/QtGui/qpixmapcache.sip | 80 + sip/QtGui/qpolygon.sip | 501 + sip/QtGui/qpygui_qlist.sip | 106 + sip/QtGui/qpygui_qpair.sip | 220 + sip/QtGui/qpygui_qvector.sip | 452 + sip/QtGui/qquaternion.sip | 161 + sip/QtGui/qrasterwindow.sip | 41 + sip/QtGui/qrawfont.sip | 106 + sip/QtGui/qregion.sip | 148 + sip/QtGui/qrgb.sip | 42 + sip/QtGui/qrgba64.sip | 90 + sip/QtGui/qscreen.sip | 93 + sip/QtGui/qsessionmanager.sip | 62 + sip/QtGui/qstandarditemmodel.sip | 215 + sip/QtGui/qstatictext.sip | 60 + sip/QtGui/qstylehints.sip | 121 + sip/QtGui/qsurface.sip | 64 + sip/QtGui/qsurfaceformat.sip | 147 + sip/QtGui/qsyntaxhighlighter.sip | 92 + sip/QtGui/qtextcursor.sip | 155 + sip/QtGui/qtextdocument.sip | 203 + sip/QtGui/qtextdocumentfragment.sip | 41 + sip/QtGui/qtextdocumentwriter.sip | 48 + sip/QtGui/qtextformat.sip | 550 + sip/QtGui/qtextlayout.sip | 185 + sip/QtGui/qtextlist.sip | 44 + sip/QtGui/qtextobject.sip | 296 + sip/QtGui/qtextoption.sip | 106 + sip/QtGui/qtexttable.sip | 75 + sip/QtGui/qtouchdevice.sip | 67 + sip/QtGui/qtransform.sip | 132 + sip/QtGui/qvalidator.sip | 129 + sip/QtGui/qvector2d.sip | 113 + sip/QtGui/qvector3d.sip | 131 + sip/QtGui/qvector4d.sip | 125 + sip/QtGui/qwindow.sip | 241 + sip/QtGui/qwindowdefs.sip | 24 + sip/QtHelp/QtHelpmod.sip | 56 + sip/QtHelp/qhelpcontentwidget.sip | 76 + sip/QtHelp/qhelpengine.sip | 37 + sip/QtHelp/qhelpenginecore.sip | 108 + sip/QtHelp/qhelpindexwidget.sip | 59 + sip/QtHelp/qhelpsearchengine.sip | 106 + sip/QtHelp/qhelpsearchquerywidget.sip | 62 + sip/QtHelp/qhelpsearchresultwidget.sip | 35 + sip/QtLocation/QtLocationmod.sip | 87 + sip/QtLocation/qgeocodereply.sip | 77 + sip/QtLocation/qgeocodingmanager.sip | 46 + sip/QtLocation/qgeocodingmanagerengine.sip | 47 + sip/QtLocation/qgeomaneuver.sip | 74 + sip/QtLocation/qgeoroute.sip | 55 + sip/QtLocation/qgeoroutereply.sip | 66 + sip/QtLocation/qgeorouterequest.sip | 152 + sip/QtLocation/qgeoroutesegment.sip | 50 + sip/QtLocation/qgeoroutingmanager.sip | 53 + sip/QtLocation/qgeoroutingmanagerengine.sip | 62 + sip/QtLocation/qgeoserviceprovider.sip | 191 + sip/QtLocation/qlocation.sip | 45 + sip/QtLocation/qplace.sip | 79 + sip/QtLocation/qplaceattribute.sip | 47 + sip/QtLocation/qplacecategory.sip | 48 + sip/QtLocation/qplacecontactdetail.sip | 48 + sip/QtLocation/qplacecontent.sip | 59 + sip/QtLocation/qplacecontentreply.sip | 49 + sip/QtLocation/qplacecontentrequest.sip | 48 + sip/QtLocation/qplacedetailsreply.sip | 41 + sip/QtLocation/qplaceeditorial.sip | 43 + sip/QtLocation/qplaceicon.sip | 46 + sip/QtLocation/qplaceidreply.sip | 50 + sip/QtLocation/qplaceimage.sip | 43 + sip/QtLocation/qplacemanager.sip | 66 + sip/QtLocation/qplacemanagerengine.sip | 70 + sip/QtLocation/qplacematchreply.sip | 43 + sip/QtLocation/qplacematchrequest.sip | 46 + sip/QtLocation/qplaceproposedsearchresult.sip | 39 + sip/QtLocation/qplaceratings.sip | 46 + sip/QtLocation/qplacereply.sip | 79 + sip/QtLocation/qplaceresult.sip | 43 + sip/QtLocation/qplacereview.sip | 49 + sip/QtLocation/qplacesearchreply.sip | 47 + sip/QtLocation/qplacesearchrequest.sip | 64 + sip/QtLocation/qplacesearchresult.sip | 52 + .../qplacesearchsuggestionreply.sip | 41 + sip/QtLocation/qplacesupplier.sip | 48 + sip/QtLocation/qplaceuser.sip | 43 + sip/QtMacExtras/QtMacExtrasmod.sip | 50 + sip/QtMacExtras/qmacpasteboardmime.sip | 64 + sip/QtMacExtras/qmactoolbar.sip | 67 + sip/QtMacExtras/qmactoolbaritem.sip | 67 + sip/QtMacExtras/qtmac.sip | 42 + sip/QtMultimedia/QtMultimediamod.sip | 89 + sip/QtMultimedia/qabstractvideobuffer.sip | 83 + sip/QtMultimedia/qabstractvideofilter.sip | 64 + sip/QtMultimedia/qabstractvideosurface.sip | 121 + sip/QtMultimedia/qaudio.sip | 89 + sip/QtMultimedia/qaudiobuffer.sip | 44 + sip/QtMultimedia/qaudiodecoder.sip | 85 + sip/QtMultimedia/qaudiodeviceinfo.sip | 49 + sip/QtMultimedia/qaudioformat.sip | 69 + sip/QtMultimedia/qaudioinput.sip | 58 + sip/QtMultimedia/qaudiooutput.sip | 60 + sip/QtMultimedia/qaudioprobe.sip | 39 + sip/QtMultimedia/qaudiorecorder.sip | 48 + sip/QtMultimedia/qcamera.sip | 200 + sip/QtMultimedia/qcameraexposure.sip | 146 + sip/QtMultimedia/qcamerafocus.sip | 105 + sip/QtMultimedia/qcameraimagecapture.sip | 91 + sip/QtMultimedia/qcameraimageprocessing.sip | 97 + sip/QtMultimedia/qcamerainfo.sip | 47 + .../qcameraviewfindersettings.sip | 57 + sip/QtMultimedia/qmediabindableinterface.sip | 35 + sip/QtMultimedia/qmediacontent.sip | 46 + sip/QtMultimedia/qmediacontrol.sip | 39 + sip/QtMultimedia/qmediaencodersettings.sip | 110 + sip/QtMultimedia/qmediametadata.sip | 120 + sip/QtMultimedia/qmediaobject.sip | 54 + sip/QtMultimedia/qmediaplayer.sip | 161 + sip/QtMultimedia/qmediaplaylist.sip | 104 + sip/QtMultimedia/qmediarecorder.sip | 118 + sip/QtMultimedia/qmediaresource.sip | 62 + sip/QtMultimedia/qmediaservice.sip | 36 + sip/QtMultimedia/qmediatimerange.sip | 78 + sip/QtMultimedia/qmultimedia.sip | 61 + sip/QtMultimedia/qpymultimedia_qlist.sip | 443 + sip/QtMultimedia/qradiodata.sip | 117 + sip/QtMultimedia/qradiotuner.sip | 116 + sip/QtMultimedia/qsound.sip | 47 + sip/QtMultimedia/qsoundeffect.sip | 75 + sip/QtMultimedia/qvideoframe.sip | 142 + sip/QtMultimedia/qvideoprobe.sip | 39 + sip/QtMultimedia/qvideosurfaceformat.sip | 81 + .../QtMultimediaWidgetsmod.sip | 52 + sip/QtMultimediaWidgets/qcameraviewfinder.sip | 41 + .../qgraphicsvideoitem.sip | 75 + sip/QtMultimediaWidgets/qvideowidget.sip | 98 + sip/QtNetwork/QtNetworkmod.sip | 85 + sip/QtNetwork/qabstractnetworkcache.sip | 78 + sip/QtNetwork/qabstractsocket.sip | 308 + sip/QtNetwork/qauthenticator.sip | 44 + sip/QtNetwork/qdnslookup.sip | 181 + sip/QtNetwork/qhostaddress.sip | 206 + sip/QtNetwork/qhostinfo.sip | 89 + sip/QtNetwork/qhstspolicy.sip | 61 + sip/QtNetwork/qhttpmultipart.sip | 64 + sip/QtNetwork/qlocalserver.sip | 70 + sip/QtNetwork/qlocalsocket.sip | 133 + sip/QtNetwork/qnetworkaccessmanager.sip | 149 + sip/QtNetwork/qnetworkconfigmanager.sip | 60 + sip/QtNetwork/qnetworkconfiguration.sip | 107 + sip/QtNetwork/qnetworkcookie.sip | 61 + sip/QtNetwork/qnetworkcookiejar.sip | 42 + sip/QtNetwork/qnetworkdatagram.sip | 55 + sip/QtNetwork/qnetworkdiskcache.sip | 50 + sip/QtNetwork/qnetworkinterface.sip | 152 + sip/QtNetwork/qnetworkproxy.sip | 154 + sip/QtNetwork/qnetworkreply.sip | 166 + sip/QtNetwork/qnetworkrequest.sip | 155 + sip/QtNetwork/qnetworksession.sip | 98 + sip/QtNetwork/qpynetwork_qhash.sip | 130 + sip/QtNetwork/qpynetwork_qmap.sip | 160 + sip/QtNetwork/qssl.sip | 105 + sip/QtNetwork/qsslcertificate.sip | 92 + sip/QtNetwork/qsslcertificateextension.sip | 43 + sip/QtNetwork/qsslcipher.sip | 53 + sip/QtNetwork/qsslconfiguration.sip | 147 + sip/QtNetwork/qssldiffiehellmanparameters.sip | 68 + sip/QtNetwork/qsslellipticcurve.sip | 57 + sip/QtNetwork/qsslerror.sip | 82 + sip/QtNetwork/qsslkey.sip | 51 + .../qsslpresharedkeyauthenticator.sip | 57 + sip/QtNetwork/qsslsocket.sip | 194 + sip/QtNetwork/qtcpserver.sip | 58 + sip/QtNetwork/qtcpsocket.sip | 32 + sip/QtNetwork/qudpsocket.sip | 82 + sip/QtNetworkAuth/QtNetworkAuthmod.sip | 56 + sip/QtNetworkAuth/qabstractoauth.sip | 243 + sip/QtNetworkAuth/qabstractoauth2.sip | 82 + .../qabstractoauthreplyhandler.sip | 46 + sip/QtNetworkAuth/qoauth1.sip | 83 + sip/QtNetworkAuth/qoauth1signature.sip | 69 + .../qoauth2authorizationcodeflow.sip | 54 + .../qoauthhttpserverreplyhandler.sip | 47 + sip/QtNetworkAuth/qoauthoobreplyhandler.sip | 39 + sip/QtNfc/QtNfcmod.sip | 58 + sip/QtNfc/qndeffilter.sip | 57 + sip/QtNfc/qndefmessage.sip | 74 + sip/QtNfc/qndefnfcsmartposterrecord.sip | 96 + sip/QtNfc/qndefnfctextrecord.sip | 49 + sip/QtNfc/qndefnfcurirecord.sip | 38 + sip/QtNfc/qndefrecord.sip | 92 + sip/QtNfc/qnearfieldmanager.sip | 152 + sip/QtNfc/qnearfieldsharemanager.sip | 70 + sip/QtNfc/qnearfieldsharetarget.sip | 45 + sip/QtNfc/qnearfieldtarget.sip | 129 + sip/QtNfc/qqmlndefrecord.sip | 60 + sip/QtOpenGL/QtOpenGLmod.sip | 50 + sip/QtOpenGL/qgl.sip | 336 + sip/QtPositioning/QtPositioningmod.sip | 60 + sip/QtPositioning/qgeoaddress.sip | 60 + sip/QtPositioning/qgeoareamonitorinfo.sip | 57 + sip/QtPositioning/qgeoareamonitorsource.sip | 73 + sip/QtPositioning/qgeocircle.sip | 53 + sip/QtPositioning/qgeocoordinate.sip | 83 + sip/QtPositioning/qgeolocation.sip | 46 + sip/QtPositioning/qgeopath.sip | 59 + sip/QtPositioning/qgeopolygon.sip | 55 + sip/QtPositioning/qgeopositioninfo.sip | 65 + sip/QtPositioning/qgeopositioninfosource.sip | 112 + sip/QtPositioning/qgeorectangle.sip | 72 + sip/QtPositioning/qgeosatelliteinfo.sip | 68 + sip/QtPositioning/qgeosatelliteinfosource.sip | 66 + sip/QtPositioning/qgeoshape.sip | 104 + sip/QtPositioning/qnmeapositioninfosource.sip | 66 + sip/QtPrintSupport/QtPrintSupportmod.sip | 58 + sip/QtPrintSupport/qabstractprintdialog.sip | 174 + sip/QtPrintSupport/qpagesetupdialog.sip | 86 + sip/QtPrintSupport/qprintdialog.sip | 97 + sip/QtPrintSupport/qprintengine.sip | 86 + sip/QtPrintSupport/qprinter.sip | 216 + sip/QtPrintSupport/qprinterinfo.sip | 87 + sip/QtPrintSupport/qprintpreviewdialog.sip | 59 + sip/QtPrintSupport/qprintpreviewwidget.sip | 85 + sip/QtPrintSupport/qpyprintsupport_qlist.sip | 241 + sip/QtQml/QtQmlmod.sip | 72 + sip/QtQml/qjsengine.sip | 125 + sip/QtQml/qjsvalue.sip | 83 + sip/QtQml/qjsvalueiterator.sip | 39 + sip/QtQml/qmlattachedpropertiesobject.sip | 46 + sip/QtQml/qmlregistertype.sip | 102 + sip/QtQml/qpyqmllistproperty.sip | 40 + sip/QtQml/qqml.sip | 27 + sip/QtQml/qqmlabstracturlinterceptor.sip | 45 + sip/QtQml/qqmlapplicationengine.sip | 52 + sip/QtQml/qqmlcomponent.sip | 74 + sip/QtQml/qqmlcontext.sip | 61 + sip/QtQml/qqmlengine.sip | 171 + sip/QtQml/qqmlerror.sip | 55 + sip/QtQml/qqmlexpression.sip | 52 + sip/QtQml/qqmlextensionplugin.sip | 37 + sip/QtQml/qqmlfileselector.sip | 47 + sip/QtQml/qqmlincubator.sip | 84 + sip/QtQml/qqmllist.sip | 47 + sip/QtQml/qqmlnetworkaccessmanagerfactory.sip | 32 + sip/QtQml/qqmlparserstatus.sip | 34 + sip/QtQml/qqmlproperty.sip | 121 + sip/QtQml/qqmlpropertymap.sip | 47 + sip/QtQml/qqmlpropertyvaluesource.sip | 33 + sip/QtQml/qqmlscriptstring.sip | 45 + sip/QtQuick/QtQuickmod.sip | 74 + sip/QtQuick/qquickframebufferobject.sip | 84 + sip/QtQuick/qquickimageprovider.sip | 93 + sip/QtQuick/qquickitem.sip | 324 + sip/QtQuick/qquickitemgrabresult.sip | 53 + sip/QtQuick/qquickpainteditem.sip | 112 + sip/QtQuick/qquickrendercontrol.sip | 56 + sip/QtQuick/qquicktextdocument.sip | 39 + sip/QtQuick/qquickview.sip | 74 + sip/QtQuick/qquickwindow.sip | 293 + sip/QtQuick/qsgabstractrenderer.sip | 63 + sip/QtQuick/qsgengine.sip | 66 + sip/QtQuick/qsgflatcolormaterial.sip | 36 + sip/QtQuick/qsggeometry.sip | 392 + sip/QtQuick/qsgimagenode.sip | 71 + sip/QtQuick/qsgmaterial.sip | 277 + sip/QtQuick/qsgnode.sip | 335 + sip/QtQuick/qsgrectanglenode.sip | 40 + sip/QtQuick/qsgrendererinterface.sip | 89 + sip/QtQuick/qsgrendernode.sip | 88 + sip/QtQuick/qsgsimplerectnode.sip | 37 + sip/QtQuick/qsgsimpletexturenode.sip | 79 + sip/QtQuick/qsgtexture.sip | 95 + sip/QtQuick/qsgtexturematerial.sip | 61 + sip/QtQuick/qsgtextureprovider.sip | 34 + sip/QtQuick/qsgvertexcolormaterial.sip | 36 + sip/QtQuickWidgets/QtQuickWidgetsmod.sip | 52 + sip/QtQuickWidgets/qquickwidget.sip | 128 + sip/QtSensors/QtSensorsmod.sip | 67 + sip/QtSensors/qaccelerometer.sip | 81 + sip/QtSensors/qaltimeter.sip | 67 + sip/QtSensors/qambientlightsensor.sip | 74 + sip/QtSensors/qambienttemperaturesensor.sip | 67 + sip/QtSensors/qcompass.sip | 69 + sip/QtSensors/qdistancesensor.sip | 67 + sip/QtSensors/qgyroscope.sip | 71 + sip/QtSensors/qholstersensor.sip | 67 + sip/QtSensors/qhumiditysensor.sip | 66 + sip/QtSensors/qirproximitysensor.sip | 67 + sip/QtSensors/qlidsensor.sip | 70 + sip/QtSensors/qlightsensor.sip | 72 + sip/QtSensors/qmagnetometer.sip | 78 + sip/QtSensors/qorientationsensor.sip | 78 + sip/QtSensors/qpressuresensor.sip | 73 + sip/QtSensors/qproximitysensor.sip | 67 + sip/QtSensors/qrotationsensor.sip | 74 + sip/QtSensors/qsensor.sip | 265 + sip/QtSensors/qtapsensor.sip | 91 + sip/QtSensors/qtiltsensor.sip | 70 + sip/QtSerialPort/QtSerialPortmod.sip | 49 + sip/QtSerialPort/qserialport.sip | 340 + sip/QtSerialPort/qserialportinfo.sip | 56 + sip/QtSql/QtSqlmod.sip | 62 + sip/QtSql/qsql.sip | 67 + sip/QtSql/qsqldatabase.sip | 94 + sip/QtSql/qsqldriver.sip | 160 + sip/QtSql/qsqlerror.sip | 68 + sip/QtSql/qsqlfield.sip | 77 + sip/QtSql/qsqlindex.sip | 41 + sip/QtSql/qsqlquery.sip | 88 + sip/QtSql/qsqlquerymodel.sip | 68 + sip/QtSql/qsqlrecord.sip | 63 + sip/QtSql/qsqlrelationaldelegate.sip | 34 + sip/QtSql/qsqlrelationaltablemodel.sip | 75 + sip/QtSql/qsqlresult.sip | 90 + sip/QtSql/qsqltablemodel.sip | 97 + sip/QtSql/qtsqlglobal.sip | 67 + sip/QtSvg/QtSvgmod.sip | 53 + sip/QtSvg/qgraphicssvgitem.sip | 57 + sip/QtSvg/qsvggenerator.sip | 52 + sip/QtSvg/qsvgrenderer.sip | 90 + sip/QtSvg/qsvgwidget.sip | 42 + sip/QtTest/QtTestmod.sip | 55 + sip/QtTest/qabstractitemmodeltester.sip | 48 + sip/QtTest/qsignalspy.sip | 102 + sip/QtTest/qtestcase.sip | 30 + sip/QtTest/qtestkeyboard.sip | 62 + sip/QtTest/qtestmouse.sip | 39 + sip/QtTest/qtestsystem.sip | 34 + sip/QtTest/qtesttouch.sip | 62 + sip/QtWebChannel/QtWebChannelmod.sip | 49 + sip/QtWebChannel/qwebchannel.sip | 81 + .../qwebchannelabstracttransport.sip | 42 + sip/QtWebEngine/QtWebEnginemod.sip | 50 + sip/QtWebEngine/qquickwebengineprofile.sip | 148 + sip/QtWebEngine/qquickwebenginescript.sip | 74 + sip/QtWebEngine/qtwebengineglobal.sip | 34 + sip/QtWebEngineCore/QtWebEngineCoremod.sip | 56 + sip/QtWebEngineCore/qwebenginecookiestore.sip | 156 + sip/QtWebEngineCore/qwebenginehttprequest.sip | 58 + .../qwebenginequotarequest.sip | 51 + ...ebengineregisterprotocolhandlerrequest.sip | 51 + .../qwebengineurlrequestinfo.sip | 83 + .../qwebengineurlrequestinterceptor.sip | 39 + .../qwebengineurlrequestjob.sip | 54 + .../qwebengineurlschemehandler.sip | 40 + .../QtWebEngineWidgetsmod.sip | 66 + .../qwebenginecertificateerror.sip | 64 + .../qwebenginecontextmenudata.sip | 114 + .../qwebenginedownloaditem.sip | 156 + .../qwebenginefullscreenrequest.sip | 41 + sip/QtWebEngineWidgets/qwebenginehistory.sip | 82 + sip/QtWebEngineWidgets/qwebenginepage.sip | 607 + sip/QtWebEngineWidgets/qwebengineprofile.sip | 126 + sip/QtWebEngineWidgets/qwebenginescript.sip | 65 + .../qwebenginescriptcollection.sip | 48 + sip/QtWebEngineWidgets/qwebenginesettings.sip | 158 + sip/QtWebEngineWidgets/qwebengineview.sip | 211 + sip/QtWebKit/QtWebKitmod.sip | 57 + sip/QtWebKit/qwebdatabase.sip | 40 + sip/QtWebKit/qwebelement.sip | 137 + sip/QtWebKit/qwebhistory.sip | 76 + sip/QtWebKit/qwebhistoryinterface.sip | 36 + sip/QtWebKit/qwebkitglobal.sip | 29 + sip/QtWebKit/qwebpluginfactory.sip | 109 + sip/QtWebKit/qwebsecurityorigin.sip | 62 + sip/QtWebKit/qwebsettings.sip | 159 + sip/QtWebKitWidgets/QtWebKitWidgetsmod.sip | 56 + sip/QtWebKitWidgets/qgraphicswebview.sip | 130 + sip/QtWebKitWidgets/qwebframe.sip | 159 + sip/QtWebKitWidgets/qwebinspector.sip | 42 + sip/QtWebKitWidgets/qwebpage.sip | 428 + sip/QtWebKitWidgets/qwebview.sip | 140 + sip/QtWebSockets/QtWebSocketsmod.sip | 53 + sip/QtWebSockets/qmaskgenerator.sip | 38 + sip/QtWebSockets/qwebsocket.sip | 140 + .../qwebsocketcorsauthenticator.sip | 41 + sip/QtWebSockets/qwebsocketprotocol.sip | 62 + sip/QtWebSockets/qwebsocketserver.sip | 95 + sip/QtWidgets/QtWidgetsmod.sip | 172 + sip/QtWidgets/qabstractbutton.sip | 82 + sip/QtWidgets/qabstractitemdelegate.sip | 55 + sip/QtWidgets/qabstractitemview.sip | 294 + sip/QtWidgets/qabstractscrollarea.sip | 95 + sip/QtWidgets/qabstractslider.sip | 98 + sip/QtWidgets/qabstractspinbox.sip | 124 + sip/QtWidgets/qaction.sip | 148 + sip/QtWidgets/qactiongroup.sip | 54 + sip/QtWidgets/qapplication.sip | 367 + sip/QtWidgets/qboxlayout.sip | 145 + sip/QtWidgets/qbuttongroup.sip | 56 + sip/QtWidgets/qcalendarwidget.sip | 115 + sip/QtWidgets/qcheckbox.sip | 51 + sip/QtWidgets/qcolordialog.sip | 83 + sip/QtWidgets/qcolumnview.sip | 65 + sip/QtWidgets/qcombobox.sip | 154 + sip/QtWidgets/qcommandlinkbutton.sip | 43 + sip/QtWidgets/qcommonstyle.sip | 50 + sip/QtWidgets/qcompleter.sip | 99 + sip/QtWidgets/qdatawidgetmapper.sip | 69 + sip/QtWidgets/qdatetimeedit.sip | 148 + sip/QtWidgets/qdesktopwidget.sip | 55 + sip/QtWidgets/qdial.sip | 53 + sip/QtWidgets/qdialog.sip | 98 + sip/QtWidgets/qdialogbuttonbox.sip | 118 + sip/QtWidgets/qdirmodel.sip | 79 + sip/QtWidgets/qdockwidget.sip | 73 + sip/QtWidgets/qdrawutil.sip | 39 + sip/QtWidgets/qerrormessage.sip | 41 + sip/QtWidgets/qfiledialog.sip | 352 + sip/QtWidgets/qfileiconprovider.sip | 71 + sip/QtWidgets/qfilesystemmodel.sip | 99 + sip/QtWidgets/qfocusframe.sip | 40 + sip/QtWidgets/qfontcombobox.sip | 59 + sip/QtWidgets/qfontdialog.sip | 91 + sip/QtWidgets/qformlayout.sip | 131 + sip/QtWidgets/qframe.sip | 79 + sip/QtWidgets/qgesture.sip | 191 + sip/QtWidgets/qgesturerecognizer.sip | 50 + sip/QtWidgets/qgraphicsanchorlayout.sip | 67 + sip/QtWidgets/qgraphicseffect.sip | 187 + sip/QtWidgets/qgraphicsgridlayout.sip | 100 + sip/QtWidgets/qgraphicsitem.sip | 703 + sip/QtWidgets/qgraphicslayout.sip | 45 + sip/QtWidgets/qgraphicslayoutitem.sip | 75 + sip/QtWidgets/qgraphicslinearlayout.sip | 79 + sip/QtWidgets/qgraphicsproxywidget.sip | 88 + sip/QtWidgets/qgraphicsscene.sip | 176 + sip/QtWidgets/qgraphicssceneevent.sip | 251 + sip/QtWidgets/qgraphicstransform.sip | 87 + sip/QtWidgets/qgraphicsview.sip | 194 + sip/QtWidgets/qgraphicswidget.sip | 120 + sip/QtWidgets/qgridlayout.sip | 145 + sip/QtWidgets/qgroupbox.sip | 62 + sip/QtWidgets/qheaderview.sip | 183 + sip/QtWidgets/qinputdialog.sip | 136 + sip/QtWidgets/qitemdelegate.sip | 51 + sip/QtWidgets/qitemeditorfactory.sip | 49 + sip/QtWidgets/qkeyeventtransition.sip | 41 + sip/QtWidgets/qkeysequenceedit.sip | 52 + sip/QtWidgets/qlabel.sip | 90 + sip/QtWidgets/qlayout.sip | 170 + sip/QtWidgets/qlayoutitem.sip | 114 + sip/QtWidgets/qlcdnumber.sip | 82 + sip/QtWidgets/qlineedit.sip | 167 + sip/QtWidgets/qlistview.sip | 139 + sip/QtWidgets/qlistwidget.sip | 196 + sip/QtWidgets/qmaccocoaviewcontainer.sip | 42 + sip/QtWidgets/qmainwindow.sip | 123 + sip/QtWidgets/qmdiarea.sip | 127 + sip/QtWidgets/qmdisubwindow.sip | 119 + sip/QtWidgets/qmenu.sip | 163 + sip/QtWidgets/qmenubar.sip | 93 + sip/QtWidgets/qmessagebox.sip | 172 + sip/QtWidgets/qmouseeventtransition.sip | 43 + sip/QtWidgets/qopenglwidget.sip | 85 + sip/QtWidgets/qplaintextedit.sip | 214 + sip/QtWidgets/qprogressbar.sip | 72 + sip/QtWidgets/qprogressdialog.sip | 85 + sip/QtWidgets/qproxystyle.sip | 61 + sip/QtWidgets/qpushbutton.sip | 59 + sip/QtWidgets/qpywidgets_qlist.sip | 124 + sip/QtWidgets/qradiobutton.sip | 42 + sip/QtWidgets/qrubberband.sip | 54 + sip/QtWidgets/qscrollarea.sip | 52 + sip/QtWidgets/qscrollbar.sip | 46 + sip/QtWidgets/qscroller.sip | 88 + sip/QtWidgets/qscrollerproperties.sip | 80 + sip/QtWidgets/qshortcut.sip | 101 + sip/QtWidgets/qsizegrip.sip | 45 + sip/QtWidgets/qsizepolicy.sip | 118 + sip/QtWidgets/qslider.sip | 57 + sip/QtWidgets/qspinbox.sip | 104 + sip/QtWidgets/qsplashscreen.sip | 52 + sip/QtWidgets/qsplitter.sip | 100 + sip/QtWidgets/qstackedlayout.sip | 113 + sip/QtWidgets/qstackedwidget.sip | 51 + sip/QtWidgets/qstatusbar.sip | 55 + sip/QtWidgets/qstyle.sip | 740 + sip/QtWidgets/qstyleditemdelegate.sip | 46 + sip/QtWidgets/qstylefactory.sip | 32 + sip/QtWidgets/qstyleoption.sip | 1052 ++ sip/QtWidgets/qstylepainter.sip | 41 + sip/QtWidgets/qsystemtrayicon.sip | 80 + sip/QtWidgets/qtabbar.sip | 178 + sip/QtWidgets/qtableview.sip | 116 + sip/QtWidgets/qtablewidget.sip | 237 + sip/QtWidgets/qtabwidget.sip | 138 + sip/QtWidgets/qtextbrowser.sip | 77 + sip/QtWidgets/qtextedit.sip | 219 + sip/QtWidgets/qtoolbar.sip | 111 + sip/QtWidgets/qtoolbox.sip | 64 + sip/QtWidgets/qtoolbutton.sip | 73 + sip/QtWidgets/qtooltip.sip | 44 + sip/QtWidgets/qtreeview.sip | 159 + sip/QtWidgets/qtreewidget.sip | 243 + sip/QtWidgets/qtreewidgetitemiterator.sip | 69 + sip/QtWidgets/qundogroup.sip | 57 + sip/QtWidgets/qundostack.sip | 101 + sip/QtWidgets/qundoview.sip | 44 + sip/QtWidgets/qwhatsthis.sip | 38 + sip/QtWidgets/qwidget.sip | 448 + sip/QtWidgets/qwidgetaction.sip | 43 + sip/QtWidgets/qwizard.sip | 237 + sip/QtWinExtras/QtWinExtrasmod.sip | 53 + sip/QtWinExtras/qwinfunctions.sip | 122 + sip/QtWinExtras/qwinjumplist.sip | 84 + sip/QtWinExtras/qwinjumplistcategory.sip | 69 + sip/QtWinExtras/qwinjumplistitem.sip | 59 + sip/QtWinExtras/qwintaskbarbutton.sip | 53 + sip/QtWinExtras/qwintaskbarprogress.sip | 64 + sip/QtWinExtras/qwinthumbnailtoolbar.sip | 67 + sip/QtWinExtras/qwinthumbnailtoolbutton.sip | 58 + sip/QtX11Extras/QtX11Extrasmod.sip | 46 + sip/QtX11Extras/qx11info_x11.sip | 66 + sip/QtXml/QtXmlmod.sip | 49 + sip/QtXml/qdom.sip | 438 + sip/QtXml/qxml.sip | 333 + sip/QtXmlPatterns/QtXmlPatternsmod.sip | 62 + sip/QtXmlPatterns/qabstractmessagehandler.sip | 65 + sip/QtXmlPatterns/qabstracturiresolver.sip | 33 + sip/QtXmlPatterns/qabstractxmlnodemodel.sip | 131 + sip/QtXmlPatterns/qabstractxmlreceiver.sip | 47 + sip/QtXmlPatterns/qsimplexmlnodemodel.sip | 38 + sip/QtXmlPatterns/qsourcelocation.sip | 47 + sip/QtXmlPatterns/qxmlformatter.sip | 44 + sip/QtXmlPatterns/qxmlname.sip | 48 + sip/QtXmlPatterns/qxmlnamepool.sip | 33 + sip/QtXmlPatterns/qxmlquery.sip | 126 + sip/QtXmlPatterns/qxmlresultitems.sip | 38 + sip/QtXmlPatterns/qxmlschema.sip | 50 + sip/QtXmlPatterns/qxmlschemavalidator.sip | 59 + sip/QtXmlPatterns/qxmlserializer.sip | 46 + .../_QOpenGLFunctions_2_0mod.sip | 46 + .../qopenglfunctions_2_0.sip | 2987 ++++ .../_QOpenGLFunctions_2_1mod.sip | 46 + .../qopenglfunctions_2_1.sip | 2988 ++++ .../_QOpenGLFunctions_4_1_Coremod.sip | 46 + .../qopenglfunctions_4_1_core.sip | 1167 ++ .../_QOpenGLFunctions_ES2mod.sip | 46 + .../qopenglfunctions_es2.sip | 82 + sip/pylupdate/pylupdate_main.py | 239 + sip/pylupdate/pylupdatemod.sip | 82 + sip/pyqt-gpl.sip | 1 + sip/pyrcc/pyrcc_main.py | 190 + sip/pyrcc/pyrccmod.sip | 71 + 1697 files changed, 273226 insertions(+) create mode 100644 ChangeLog create mode 100644 LICENSE create mode 100644 NEWS create mode 100644 README create mode 100644 __init__.py create mode 100644 config-tests/cfgtest_QtCore.cpp create mode 100644 config-tests/cfgtest_QtGui.cpp create mode 100644 config-tests/cfgtest_QtNetwork.cpp create mode 100644 config-tests/cfgtest_QtPrintSupport.cpp create mode 100644 configure.py create mode 100644 dbus/dbus.cpp create mode 100644 dbus/helper.h create mode 100644 designer/designer.pro-in create mode 100644 designer/pluginloader.cpp create mode 100644 designer/pluginloader.h create mode 100644 examples/README create mode 100644 examples/activeqt/README create mode 100644 examples/activeqt/webbrowser/icons/image0.xpm create mode 100644 examples/activeqt/webbrowser/icons/image1.xpm create mode 100644 examples/activeqt/webbrowser/icons/image2.xpm create mode 100644 examples/activeqt/webbrowser/icons/image3.xpm create mode 100644 examples/activeqt/webbrowser/icons/image4.xpm create mode 100644 examples/activeqt/webbrowser/icons/image5.xpm create mode 100644 examples/activeqt/webbrowser/icons/image6.xpm create mode 100644 examples/activeqt/webbrowser/mainwindow.qrc create mode 100644 examples/activeqt/webbrowser/mainwindow.ui create mode 100644 examples/activeqt/webbrowser/mainwindow_rc.py create mode 100644 examples/activeqt/webbrowser/ui_mainwindow.py create mode 100755 examples/activeqt/webbrowser/webbrowser.py create mode 100644 examples/animation/README create mode 100755 examples/animation/animatedtiles/animatedtiles.py create mode 100644 examples/animation/animatedtiles/animatedtiles.qrc create mode 100644 examples/animation/animatedtiles/animatedtiles_rc.py create mode 100644 examples/animation/animatedtiles/images/Time-For-Lunch-2.jpg create mode 100644 examples/animation/animatedtiles/images/centered.png create mode 100644 examples/animation/animatedtiles/images/ellipse.png create mode 100644 examples/animation/animatedtiles/images/figure8.png create mode 100644 examples/animation/animatedtiles/images/kinetic.png create mode 100644 examples/animation/animatedtiles/images/random.png create mode 100644 examples/animation/animatedtiles/images/tile.png create mode 100644 examples/animation/appchooser/accessories-dictionary.png create mode 100644 examples/animation/appchooser/akregator.png create mode 100755 examples/animation/appchooser/appchooser.py create mode 100644 examples/animation/appchooser/appchooser.qrc create mode 100644 examples/animation/appchooser/appchooser_rc.py create mode 100644 examples/animation/appchooser/digikam.png create mode 100644 examples/animation/appchooser/k3b.png create mode 100755 examples/animation/easing/easing.py create mode 100644 examples/animation/easing/easing.qrc create mode 100644 examples/animation/easing/easing_rc.py create mode 100644 examples/animation/easing/form.ui create mode 100644 examples/animation/easing/images/qt-logo.png create mode 100644 examples/animation/easing/ui_form.py create mode 100755 examples/animation/moveblocks.py create mode 100644 examples/animation/states/accessories-dictionary.png create mode 100644 examples/animation/states/akregator.png create mode 100644 examples/animation/states/digikam.png create mode 100644 examples/animation/states/help-browser.png create mode 100644 examples/animation/states/k3b.png create mode 100644 examples/animation/states/kchart.png create mode 100755 examples/animation/states/states.py create mode 100644 examples/animation/states/states.qrc create mode 100644 examples/animation/states/states_rc.py create mode 100644 examples/animation/stickman/animations/chilling create mode 100644 examples/animation/stickman/animations/dancing create mode 100644 examples/animation/stickman/animations/dead create mode 100644 examples/animation/stickman/animations/jumping create mode 100755 examples/animation/stickman/stickman.py create mode 100644 examples/animation/stickman/stickman.qrc create mode 100644 examples/animation/stickman/stickman_rc.py create mode 100755 examples/dbus/chat/chat.py create mode 100644 examples/dbus/chat/chatmainwindow.ui create mode 100644 examples/dbus/chat/chatsetnickname.ui create mode 100644 examples/dbus/chat/ui_chatmainwindow.py create mode 100644 examples/dbus/chat/ui_chatsetnickname.py create mode 100755 examples/dbus/listnames.py create mode 100644 examples/dbus/pingpong/ping.py create mode 100644 examples/dbus/pingpong/pong.py create mode 100755 examples/dbus/remotecontrolledcar/car/car.py create mode 100755 examples/dbus/remotecontrolledcar/controller/controller.py create mode 100644 examples/dbus/remotecontrolledcar/controller/controller.ui create mode 100644 examples/dbus/remotecontrolledcar/controller/ui_controller.py create mode 100644 examples/designer/README create mode 100755 examples/designer/calculatorform/calculatorform.py create mode 100644 examples/designer/calculatorform/calculatorform.ui create mode 100644 examples/designer/calculatorform/ui_calculatorform.py create mode 100755 examples/designer/plugins/plugins.py create mode 100644 examples/designer/plugins/python/analogclockplugin.py create mode 100644 examples/designer/plugins/python/bubbleswidgetplugin.py create mode 100644 examples/designer/plugins/python/counterlabelplugin.py create mode 100644 examples/designer/plugins/python/datetimeeditplugin.py create mode 100644 examples/designer/plugins/python/helloglwidgetplugin.py create mode 100644 examples/designer/plugins/python/multipagewidgetplugin.py create mode 100644 examples/designer/plugins/python/polygonwidgetplugin.py create mode 100644 examples/designer/plugins/python/pydemoplugin.py create mode 100644 examples/designer/plugins/python/pythonconsoleplugin.py create mode 100755 examples/designer/plugins/widgets/analogclock.py create mode 100755 examples/designer/plugins/widgets/bubbleswidget.py create mode 100755 examples/designer/plugins/widgets/counterlabel.py create mode 100755 examples/designer/plugins/widgets/datetimeedit.py create mode 100755 examples/designer/plugins/widgets/helloglwidget.py create mode 100755 examples/designer/plugins/widgets/multipagewidget.py create mode 100755 examples/designer/plugins/widgets/polygonwidget.py create mode 100755 examples/designer/plugins/widgets/pydemo.py create mode 100755 examples/designer/plugins/widgets/pythonconsolewidget.py create mode 100644 examples/desktop/README create mode 100755 examples/desktop/screenshot.py create mode 100644 examples/desktop/systray/images/bad.png create mode 100644 examples/desktop/systray/images/heart.png create mode 100644 examples/desktop/systray/images/trash.png create mode 100755 examples/desktop/systray/systray.py create mode 100644 examples/desktop/systray/systray.qrc create mode 100644 examples/desktop/systray/systray_rc.py create mode 100644 examples/dialogs/README create mode 100755 examples/dialogs/classwizard/classwizard.py create mode 100644 examples/dialogs/classwizard/classwizard.qrc create mode 100644 examples/dialogs/classwizard/classwizard_rc.py create mode 100644 examples/dialogs/classwizard/images/background.png create mode 100644 examples/dialogs/classwizard/images/banner.png create mode 100644 examples/dialogs/classwizard/images/logo1.png create mode 100644 examples/dialogs/classwizard/images/logo2.png create mode 100644 examples/dialogs/classwizard/images/logo3.png create mode 100644 examples/dialogs/classwizard/images/watermark1.png create mode 100644 examples/dialogs/classwizard/images/watermark2.png create mode 100755 examples/dialogs/configdialog/configdialog.py create mode 100644 examples/dialogs/configdialog/configdialog.qrc create mode 100644 examples/dialogs/configdialog/configdialog_rc.py create mode 100644 examples/dialogs/configdialog/images/config.png create mode 100644 examples/dialogs/configdialog/images/query.png create mode 100644 examples/dialogs/configdialog/images/update.png create mode 100755 examples/dialogs/extension.py create mode 100755 examples/dialogs/findfiles.py create mode 100755 examples/dialogs/standarddialogs.py create mode 100755 examples/dialogs/tabdialog.py create mode 100755 examples/dialogs/trivialwizard.py create mode 100644 examples/draganddrop/README create mode 100755 examples/draganddrop/delayedencoding/delayedencoding.py create mode 100644 examples/draganddrop/delayedencoding/delayedencoding.qrc create mode 100644 examples/draganddrop/delayedencoding/delayedencoding_rc.py create mode 100644 examples/draganddrop/delayedencoding/images/drag.png create mode 100644 examples/draganddrop/delayedencoding/images/example.svg create mode 100755 examples/draganddrop/draggableicons/draggableicons.py create mode 100644 examples/draganddrop/draggableicons/draggableicons.qrc create mode 100644 examples/draganddrop/draggableicons/draggableicons_rc.py create mode 100644 examples/draganddrop/draggableicons/images/boat.png create mode 100644 examples/draganddrop/draggableicons/images/car.png create mode 100644 examples/draganddrop/draggableicons/images/house.png create mode 100755 examples/draganddrop/draggabletext/draggabletext.py create mode 100644 examples/draganddrop/draggabletext/draggabletext.qrc create mode 100644 examples/draganddrop/draggabletext/draggabletext_rc.py create mode 100644 examples/draganddrop/draggabletext/words.txt create mode 100755 examples/draganddrop/dropsite.py create mode 100755 examples/draganddrop/fridgemagnets/fridgemagnets.py create mode 100644 examples/draganddrop/fridgemagnets/fridgemagnets.qrc create mode 100644 examples/draganddrop/fridgemagnets/fridgemagnets_rc.py create mode 100644 examples/draganddrop/fridgemagnets/words.txt create mode 100644 examples/draganddrop/puzzle/example.jpg create mode 100755 examples/draganddrop/puzzle/puzzle.py create mode 100644 examples/draganddrop/puzzle/puzzle.qrc create mode 100644 examples/draganddrop/puzzle/puzzle_rc.py create mode 100644 examples/effects/README create mode 100644 examples/effects/lighting.py create mode 100644 examples/graphicsview/README create mode 100755 examples/graphicsview/anchorlayout.py create mode 100755 examples/graphicsview/collidingmice/collidingmice.py create mode 100644 examples/graphicsview/collidingmice/images/cheese.jpg create mode 100644 examples/graphicsview/collidingmice/mice.qrc create mode 100644 examples/graphicsview/collidingmice/mice_rc.py create mode 100755 examples/graphicsview/diagramscene/diagramscene.py create mode 100644 examples/graphicsview/diagramscene/diagramscene.qrc create mode 100644 examples/graphicsview/diagramscene/diagramscene_rc.py create mode 100644 examples/graphicsview/diagramscene/images/background1.png create mode 100644 examples/graphicsview/diagramscene/images/background2.png create mode 100644 examples/graphicsview/diagramscene/images/background3.png create mode 100644 examples/graphicsview/diagramscene/images/background4.png create mode 100644 examples/graphicsview/diagramscene/images/bold.png create mode 100644 examples/graphicsview/diagramscene/images/bringtofront.png create mode 100644 examples/graphicsview/diagramscene/images/delete.png create mode 100644 examples/graphicsview/diagramscene/images/floodfill.png create mode 100644 examples/graphicsview/diagramscene/images/italic.png create mode 100644 examples/graphicsview/diagramscene/images/linecolor.png create mode 100644 examples/graphicsview/diagramscene/images/linepointer.png create mode 100644 examples/graphicsview/diagramscene/images/pointer.png create mode 100644 examples/graphicsview/diagramscene/images/sendtoback.png create mode 100644 examples/graphicsview/diagramscene/images/textpointer.png create mode 100644 examples/graphicsview/diagramscene/images/underline.png create mode 100755 examples/graphicsview/dragdroprobot/dragdroprobot.py create mode 100644 examples/graphicsview/dragdroprobot/images/head.png create mode 100755 examples/graphicsview/elasticnodes.py create mode 100644 examples/graphicsview/embeddeddialogs/No-Ones-Laughing-3.jpg create mode 100644 examples/graphicsview/embeddeddialogs/embeddeddialog.py create mode 100644 examples/graphicsview/embeddeddialogs/embeddeddialog.ui create mode 100644 examples/graphicsview/embeddeddialogs/embeddeddialogs.py create mode 100644 examples/graphicsview/embeddeddialogs/embeddeddialogs.qrc create mode 100644 examples/graphicsview/embeddeddialogs/embeddeddialogs_rc.py create mode 100644 examples/graphicsview/padnavigator/form.ui create mode 100644 examples/graphicsview/padnavigator/images/artsfftscope.png create mode 100644 examples/graphicsview/padnavigator/images/blue_angle_swirl.jpg create mode 100644 examples/graphicsview/padnavigator/images/kontact_contacts.png create mode 100644 examples/graphicsview/padnavigator/images/kontact_journal.png create mode 100644 examples/graphicsview/padnavigator/images/kontact_mail.png create mode 100644 examples/graphicsview/padnavigator/images/kontact_notes.png create mode 100644 examples/graphicsview/padnavigator/images/kopeteavailable.png create mode 100644 examples/graphicsview/padnavigator/images/metacontact_online.png create mode 100644 examples/graphicsview/padnavigator/images/minitools.png create mode 100644 examples/graphicsview/padnavigator/padnavigator.py create mode 100644 examples/graphicsview/padnavigator/padnavigator.qrc create mode 100644 examples/graphicsview/padnavigator/padnavigator_rc.py create mode 100644 examples/graphicsview/padnavigator/ui_form.py create mode 100644 examples/ipc/README create mode 100755 examples/ipc/localfortuneclient.py create mode 100755 examples/ipc/localfortuneserver.py create mode 100644 examples/ipc/sharedmemory/dialog.py create mode 100644 examples/ipc/sharedmemory/dialog.ui create mode 100644 examples/ipc/sharedmemory/image.png create mode 100644 examples/ipc/sharedmemory/qt.png create mode 100755 examples/ipc/sharedmemory/sharedmemory.py create mode 100644 examples/itemviews/README create mode 100755 examples/itemviews/basicsortfiltermodel.py create mode 100755 examples/itemviews/chart/chart.py create mode 100644 examples/itemviews/chart/chart.qrc create mode 100644 examples/itemviews/chart/chart_rc.py create mode 100644 examples/itemviews/chart/mydata.cht create mode 100644 examples/itemviews/chart/qtdata.cht create mode 100755 examples/itemviews/coloreditorfactory.py create mode 100755 examples/itemviews/combowidgetmapper.py create mode 100755 examples/itemviews/customsortfiltermodel.py create mode 100755 examples/itemviews/dirview.py create mode 100644 examples/itemviews/editabletreemodel/default.txt create mode 100755 examples/itemviews/editabletreemodel/editabletreemodel.py create mode 100644 examples/itemviews/editabletreemodel/editabletreemodel.qrc create mode 100644 examples/itemviews/editabletreemodel/editabletreemodel_rc.py create mode 100644 examples/itemviews/editabletreemodel/mainwindow.ui create mode 100644 examples/itemviews/editabletreemodel/ui_mainwindow.py create mode 100755 examples/itemviews/fetchmore.py create mode 100644 examples/itemviews/frozencolumn/frozencolumn.py create mode 100644 examples/itemviews/frozencolumn/grades.txt create mode 100644 examples/itemviews/interview/images/interview.png create mode 100644 examples/itemviews/interview/images/services.png create mode 100644 examples/itemviews/interview/interview.py create mode 100644 examples/itemviews/pixelator/images/qt.png create mode 100755 examples/itemviews/pixelator/pixelator.py create mode 100644 examples/itemviews/pixelator/pixelator.qrc create mode 100644 examples/itemviews/pixelator/pixelator_rc.py create mode 100644 examples/itemviews/puzzle/example.jpg create mode 100755 examples/itemviews/puzzle/puzzle.py create mode 100644 examples/itemviews/puzzle/puzzle.qrc create mode 100644 examples/itemviews/puzzle/puzzle_rc.py create mode 100755 examples/itemviews/simpledommodel.py create mode 100644 examples/itemviews/simpletreemodel/default.txt create mode 100755 examples/itemviews/simpletreemodel/simpletreemodel.py create mode 100644 examples/itemviews/simpletreemodel/simpletreemodel.qrc create mode 100644 examples/itemviews/simpletreemodel/simpletreemodel_rc.py create mode 100755 examples/itemviews/simplewidgetmapper.py create mode 100755 examples/itemviews/spinboxdelegate.py create mode 100644 examples/itemviews/spreadsheet/images/interview.png create mode 100644 examples/itemviews/spreadsheet/printview.py create mode 100644 examples/itemviews/spreadsheet/spreadsheet.py create mode 100644 examples/itemviews/spreadsheet/spreadsheet.qrc create mode 100644 examples/itemviews/spreadsheet/spreadsheet_rc.py create mode 100644 examples/itemviews/spreadsheet/spreadsheetdelegate.py create mode 100644 examples/itemviews/spreadsheet/spreadsheetitem.py create mode 100644 examples/itemviews/spreadsheet/util.py create mode 100755 examples/itemviews/stardelegate.py create mode 100644 examples/itemviews/storageview.py create mode 100644 examples/layouts/README create mode 100755 examples/layouts/basiclayouts.py create mode 100755 examples/layouts/borderlayout.py create mode 100755 examples/layouts/flowlayout.py create mode 100644 examples/mainwindows/README create mode 100755 examples/mainwindows/application/application.py create mode 100644 examples/mainwindows/application/images/copy.png create mode 100644 examples/mainwindows/application/images/cut.png create mode 100644 examples/mainwindows/application/images/new.png create mode 100644 examples/mainwindows/application/images/open.png create mode 100644 examples/mainwindows/application/images/paste.png create mode 100644 examples/mainwindows/application/images/save.png create mode 100755 examples/mainwindows/dockwidgets/dockwidgets.py create mode 100644 examples/mainwindows/dockwidgets/dockwidgets.qrc create mode 100644 examples/mainwindows/dockwidgets/dockwidgets_rc.py create mode 100644 examples/mainwindows/dockwidgets/images/new.png create mode 100644 examples/mainwindows/dockwidgets/images/print.png create mode 100644 examples/mainwindows/dockwidgets/images/save.png create mode 100644 examples/mainwindows/dockwidgets/images/undo.png create mode 100644 examples/mainwindows/mdi/images/copy.png create mode 100644 examples/mainwindows/mdi/images/cut.png create mode 100644 examples/mainwindows/mdi/images/new.png create mode 100644 examples/mainwindows/mdi/images/open.png create mode 100644 examples/mainwindows/mdi/images/paste.png create mode 100644 examples/mainwindows/mdi/images/save.png create mode 100755 examples/mainwindows/mdi/mdi.py create mode 100644 examples/mainwindows/mdi/mdi.qrc create mode 100644 examples/mainwindows/mdi/mdi_rc.py create mode 100755 examples/mainwindows/menus.py create mode 100755 examples/mainwindows/recentfiles.py create mode 100644 examples/mainwindows/sdi/images/copy.png create mode 100644 examples/mainwindows/sdi/images/cut.png create mode 100644 examples/mainwindows/sdi/images/new.png create mode 100644 examples/mainwindows/sdi/images/open.png create mode 100644 examples/mainwindows/sdi/images/paste.png create mode 100644 examples/mainwindows/sdi/images/save.png create mode 100755 examples/mainwindows/sdi/sdi.py create mode 100644 examples/mainwindows/sdi/sdi.qrc create mode 100644 examples/mainwindows/sdi/sdi_rc.py create mode 100755 examples/mainwindows/separations.py create mode 100644 examples/multimedia/README create mode 100755 examples/multimedia/audiodevices/audiodevices.py create mode 100644 examples/multimedia/audiodevices/audiodevicesbase.ui create mode 100644 examples/multimedia/audiodevices/ui_audiodevicesbase.py create mode 100755 examples/multimedia/audiooutput.py create mode 100644 examples/multimediawidgets/README create mode 100755 examples/multimediawidgets/camera/camera.py create mode 100644 examples/multimediawidgets/camera/camera.ui create mode 100644 examples/multimediawidgets/camera/imagesettings.ui create mode 100644 examples/multimediawidgets/camera/ui_camera.py create mode 100644 examples/multimediawidgets/camera/ui_imagesettings.py create mode 100644 examples/multimediawidgets/camera/ui_videosettings.py create mode 100644 examples/multimediawidgets/camera/videosettings.ui create mode 100755 examples/multimediawidgets/player.py create mode 100755 examples/multimediawidgets/videographicsitem.py create mode 100755 examples/multimediawidgets/videowidget.py create mode 100644 examples/network/README create mode 100755 examples/network/blockingfortuneclient.py create mode 100755 examples/network/broadcastreceiver.py create mode 100755 examples/network/broadcastsender.py create mode 100755 examples/network/fortuneclient.py create mode 100755 examples/network/fortuneserver.py create mode 100644 examples/network/http/authenticationdialog.ui create mode 100755 examples/network/http/http.py create mode 100644 examples/network/lightmaps.py create mode 100755 examples/network/loopback.py create mode 100755 examples/network/threadedfortuneserver.py create mode 100755 examples/opengl/2dpainting.py create mode 100644 examples/opengl/README create mode 100755 examples/opengl/grabber.py create mode 100755 examples/opengl/hellogl.py create mode 100644 examples/opengl/openglwindow.py create mode 100755 examples/opengl/overpainting.py create mode 100644 examples/opengl/textures/images/side1.png create mode 100644 examples/opengl/textures/images/side2.png create mode 100644 examples/opengl/textures/images/side3.png create mode 100644 examples/opengl/textures/images/side4.png create mode 100644 examples/opengl/textures/images/side5.png create mode 100644 examples/opengl/textures/images/side6.png create mode 100755 examples/opengl/textures/textures.py create mode 100644 examples/painting/README create mode 100755 examples/painting/basicdrawing/basicdrawing.py create mode 100644 examples/painting/basicdrawing/basicdrawing.qrc create mode 100644 examples/painting/basicdrawing/basicdrawing_rc.py create mode 100644 examples/painting/basicdrawing/images/brick.png create mode 100644 examples/painting/basicdrawing/images/qt-logo.png create mode 100755 examples/painting/concentriccircles.py create mode 100755 examples/painting/painterpaths.py create mode 100644 examples/painting/svgviewer/files/bubbles.svg create mode 100644 examples/painting/svgviewer/files/cubic.svg create mode 100644 examples/painting/svgviewer/files/spheres.svg create mode 100755 examples/painting/svgviewer/svgviewer.py create mode 100644 examples/painting/svgviewer/svgviewer.qrc create mode 100644 examples/painting/svgviewer/svgviewer_rc.py create mode 100755 examples/painting/transformations.py create mode 100755 examples/pyuic/compile-on-the-fly.py create mode 100644 examples/pyuic/demo.ui create mode 100755 examples/pyuic/load_ui1.py create mode 100755 examples/pyuic/load_ui2.py create mode 100755 examples/qml/referenceexamples/adding.py create mode 100755 examples/qml/referenceexamples/attached.py create mode 100755 examples/qml/referenceexamples/binding.py create mode 100755 examples/qml/referenceexamples/coercion.py create mode 100755 examples/qml/referenceexamples/default.py create mode 100755 examples/qml/referenceexamples/grouped.py create mode 100755 examples/qml/referenceexamples/methods.py create mode 100755 examples/qml/referenceexamples/properties.py create mode 100755 examples/qml/referenceexamples/signal.py create mode 100755 examples/qml/referenceexamples/valuesource.py create mode 100644 examples/qtdemo/colors.py create mode 100644 examples/qtdemo/demoitem.py create mode 100644 examples/qtdemo/demoitemanimation.py create mode 100644 examples/qtdemo/demotextitem.py create mode 100644 examples/qtdemo/examplecontent.py create mode 100644 examples/qtdemo/examples.xml create mode 100644 examples/qtdemo/guide.py create mode 100644 examples/qtdemo/guidecircle.py create mode 100644 examples/qtdemo/guideline.py create mode 100644 examples/qtdemo/headingitem.py create mode 100644 examples/qtdemo/imageitem.py create mode 100644 examples/qtdemo/images/demobg.png create mode 100644 examples/qtdemo/images/qtlogo_small.png create mode 100644 examples/qtdemo/images/trolltech-logo.png create mode 100644 examples/qtdemo/itemcircleanimation.py create mode 100644 examples/qtdemo/letteritem.py create mode 100644 examples/qtdemo/mainwindow.py create mode 100644 examples/qtdemo/menucontent.py create mode 100644 examples/qtdemo/menumanager.py create mode 100755 examples/qtdemo/qtdemo.py create mode 100644 examples/qtdemo/scanitem.py create mode 100644 examples/qtdemo/score.py create mode 100644 examples/qtdemo/textbutton.py create mode 100644 examples/quick/README create mode 100644 examples/quick/animation/animation.py create mode 100644 examples/quick/animation/animation.qml create mode 100644 examples/quick/animation/animation.qrc create mode 100644 examples/quick/animation/animation_rc.py create mode 100644 examples/quick/animation/basics/color-animation.qml create mode 100644 examples/quick/animation/basics/images/face-smile.png create mode 100644 examples/quick/animation/basics/images/moon.png create mode 100644 examples/quick/animation/basics/images/shadow.png create mode 100644 examples/quick/animation/basics/images/star.png create mode 100644 examples/quick/animation/basics/images/sun.png create mode 100644 examples/quick/animation/basics/property-animation.qml create mode 100644 examples/quick/animation/behaviors/SideRect.qml create mode 100644 examples/quick/animation/behaviors/behavior-example.qml create mode 100644 examples/quick/animation/behaviors/tvtennis.qml create mode 100644 examples/quick/animation/behaviors/wigglytext.qml create mode 100644 examples/quick/animation/easing/easing.qml create mode 100644 examples/quick/animation/pathanimation/pathanimation.qml create mode 100644 examples/quick/animation/pathinterpolator/pathinterpolator.qml create mode 100644 examples/quick/animation/states/qt-logo.png create mode 100644 examples/quick/animation/states/states.qml create mode 100644 examples/quick/animation/states/transitions.qml create mode 100644 examples/quick/canvas/bezierCurve/bezierCurve.qml create mode 100644 examples/quick/canvas/canvas.py create mode 100644 examples/quick/canvas/canvas.qml create mode 100644 examples/quick/canvas/canvas.qrc create mode 100644 examples/quick/canvas/canvas_rc.py create mode 100644 examples/quick/canvas/clip/clip.qml create mode 100644 examples/quick/canvas/contents/Button.qml create mode 100644 examples/quick/canvas/contents/ScrollBar.qml create mode 100644 examples/quick/canvas/contents/Slider.qml create mode 100644 examples/quick/canvas/contents/TitleBar.qml create mode 100644 examples/quick/canvas/contents/ToolBar.qml create mode 100644 examples/quick/canvas/contents/images/button-pressed.png create mode 100644 examples/quick/canvas/contents/images/button.png create mode 100644 examples/quick/canvas/contents/images/default.svg create mode 100644 examples/quick/canvas/contents/images/gloss.png create mode 100644 examples/quick/canvas/contents/images/lineedit.png create mode 100644 examples/quick/canvas/contents/images/lineedit.sci create mode 100644 examples/quick/canvas/contents/images/quit.png create mode 100644 examples/quick/canvas/contents/images/stripes.png create mode 100644 examples/quick/canvas/contents/images/titlebar.png create mode 100644 examples/quick/canvas/contents/images/titlebar.sci create mode 100644 examples/quick/canvas/contents/images/toolbutton.png create mode 100644 examples/quick/canvas/contents/images/toolbutton.sci create mode 100644 examples/quick/canvas/contents/qt-logo.png create mode 100644 examples/quick/canvas/quadraticCurveTo/quadraticCurveTo.qml create mode 100644 examples/quick/canvas/roundedrect/roundedrect.qml create mode 100644 examples/quick/canvas/smile/smile.qml create mode 100644 examples/quick/canvas/squircle/squircle.png create mode 100644 examples/quick/canvas/squircle/squircle.qml create mode 100644 examples/quick/canvas/tiger/tiger.js create mode 100644 examples/quick/canvas/tiger/tiger.qml create mode 100644 examples/quick/models/abstractitemmodel/abstractitemmodel.py create mode 100644 examples/quick/models/abstractitemmodel/abstractitemmodel.qrc create mode 100644 examples/quick/models/abstractitemmodel/abstractitemmodel_rc.py create mode 100644 examples/quick/models/abstractitemmodel/view.qml create mode 100644 examples/quick/models/objectlistmodel/objectlistmodel.py create mode 100644 examples/quick/models/objectlistmodel/objectlistmodel.qrc create mode 100644 examples/quick/models/objectlistmodel/objectlistmodel_rc.py create mode 100644 examples/quick/models/objectlistmodel/view.qml create mode 100644 examples/quick/models/stringlistmodel/stringlistmodel.py create mode 100644 examples/quick/models/stringlistmodel/stringlistmodel.qrc create mode 100644 examples/quick/models/stringlistmodel/stringlistmodel_rc.py create mode 100644 examples/quick/models/stringlistmodel/view.qml create mode 100644 examples/quick/scenegraph/customgeometry/customgeometry.py create mode 100644 examples/quick/scenegraph/customgeometry/customgeometry.qrc create mode 100644 examples/quick/scenegraph/customgeometry/customgeometry_rc.py create mode 100644 examples/quick/scenegraph/customgeometry/main.qml create mode 100644 examples/quick/shared/Button.qml create mode 100644 examples/quick/shared/LauncherList.qml create mode 100644 examples/quick/shared/SimpleLauncherDelegate.qml create mode 100644 examples/quick/shared/images/back.png create mode 100644 examples/quick/shared/images/next.png create mode 100644 examples/quick/shared/shared.qrc create mode 100644 examples/quick/shared/shared_rc.py create mode 100644 examples/quick/tutorials/extending/chapter1-basics/app.qml create mode 100644 examples/quick/tutorials/extending/chapter1-basics/chapter1-basics.py create mode 100644 examples/quick/tutorials/extending/chapter2-methods/app.qml create mode 100644 examples/quick/tutorials/extending/chapter2-methods/chapter2-methods.py create mode 100644 examples/quick/tutorials/extending/chapter3-bindings/app.qml create mode 100644 examples/quick/tutorials/extending/chapter3-bindings/chapter3-bindings.py create mode 100644 examples/quick/tutorials/extending/chapter4-customPropertyTypes/app.qml create mode 100644 examples/quick/tutorials/extending/chapter4-customPropertyTypes/chapter4-customPropertyTypes.py create mode 100644 examples/quick/tutorials/extending/chapter5-listproperties/app.qml create mode 100644 examples/quick/tutorials/extending/chapter5-listproperties/chapter5-listproperties.py create mode 100644 examples/quick/tutorials/extending/chapter6-plugins/Charts/chartsplugin.py create mode 100644 examples/quick/tutorials/extending/chapter6-plugins/Charts/piechart.py create mode 100644 examples/quick/tutorials/extending/chapter6-plugins/Charts/pieslice.py create mode 100644 examples/quick/tutorials/extending/chapter6-plugins/Charts/qmldir create mode 100644 examples/quick/tutorials/extending/chapter6-plugins/app.qml create mode 100644 examples/richtext/README create mode 100755 examples/richtext/calendar.py create mode 100755 examples/richtext/orderform.py create mode 100755 examples/richtext/syntaxhighlighter.py create mode 100644 examples/richtext/textedit/example.html create mode 100644 examples/richtext/textedit/images/logo.png create mode 100644 examples/richtext/textedit/images/logo32.png create mode 100644 examples/richtext/textedit/images/mac/editcopy.png create mode 100644 examples/richtext/textedit/images/mac/editcut.png create mode 100644 examples/richtext/textedit/images/mac/editpaste.png create mode 100644 examples/richtext/textedit/images/mac/editredo.png create mode 100644 examples/richtext/textedit/images/mac/editundo.png create mode 100644 examples/richtext/textedit/images/mac/exportpdf.png create mode 100644 examples/richtext/textedit/images/mac/filenew.png create mode 100644 examples/richtext/textedit/images/mac/fileopen.png create mode 100644 examples/richtext/textedit/images/mac/fileprint.png create mode 100644 examples/richtext/textedit/images/mac/filesave.png create mode 100644 examples/richtext/textedit/images/mac/textbold.png create mode 100644 examples/richtext/textedit/images/mac/textcenter.png create mode 100644 examples/richtext/textedit/images/mac/textitalic.png create mode 100644 examples/richtext/textedit/images/mac/textjustify.png create mode 100644 examples/richtext/textedit/images/mac/textleft.png create mode 100644 examples/richtext/textedit/images/mac/textright.png create mode 100644 examples/richtext/textedit/images/mac/textunder.png create mode 100644 examples/richtext/textedit/images/mac/zoomin.png create mode 100644 examples/richtext/textedit/images/mac/zoomout.png create mode 100644 examples/richtext/textedit/images/win/editcopy.png create mode 100644 examples/richtext/textedit/images/win/editcut.png create mode 100644 examples/richtext/textedit/images/win/editpaste.png create mode 100644 examples/richtext/textedit/images/win/editredo.png create mode 100644 examples/richtext/textedit/images/win/editundo.png create mode 100644 examples/richtext/textedit/images/win/exportpdf.png create mode 100644 examples/richtext/textedit/images/win/filenew.png create mode 100644 examples/richtext/textedit/images/win/fileopen.png create mode 100644 examples/richtext/textedit/images/win/fileprint.png create mode 100644 examples/richtext/textedit/images/win/filesave.png create mode 100644 examples/richtext/textedit/images/win/textbold.png create mode 100644 examples/richtext/textedit/images/win/textcenter.png create mode 100644 examples/richtext/textedit/images/win/textitalic.png create mode 100644 examples/richtext/textedit/images/win/textjustify.png create mode 100644 examples/richtext/textedit/images/win/textleft.png create mode 100644 examples/richtext/textedit/images/win/textright.png create mode 100644 examples/richtext/textedit/images/win/textunder.png create mode 100644 examples/richtext/textedit/images/win/zoomin.png create mode 100644 examples/richtext/textedit/images/win/zoomout.png create mode 100755 examples/richtext/textedit/textedit.py create mode 100644 examples/richtext/textedit/textedit.qrc create mode 100644 examples/richtext/textedit/textedit_rc.py create mode 100644 examples/richtext/textobject/files/heart.svg create mode 100755 examples/richtext/textobject/textobject.py create mode 100644 examples/sql/README create mode 100755 examples/sql/cachedtable.py create mode 100644 examples/sql/connection.py create mode 100755 examples/sql/querymodel.py create mode 100755 examples/sql/relationaltablemodel.py create mode 100755 examples/sql/tablemodel.py create mode 100644 examples/threads/README create mode 100755 examples/threads/mandelbrot.py create mode 100755 examples/threads/semaphores.py create mode 100755 examples/threads/waitconditions.py create mode 100644 examples/tools/README create mode 100755 examples/tools/codecs/codecs.py create mode 100644 examples/tools/codecs/encodedfiles/iso-8859-1.txt create mode 100644 examples/tools/codecs/encodedfiles/iso-8859-15.txt create mode 100644 examples/tools/codecs/encodedfiles/utf-16.txt create mode 100644 examples/tools/codecs/encodedfiles/utf-16be.txt create mode 100644 examples/tools/codecs/encodedfiles/utf-16le.txt create mode 100644 examples/tools/codecs/encodedfiles/utf-8.txt create mode 100644 examples/tools/customcompleter/customcompleter.py create mode 100644 examples/tools/customcompleter/customcompleter.qrc create mode 100644 examples/tools/customcompleter/customcompleter_rc.py create mode 100644 examples/tools/customcompleter/resources/wordlist.txt create mode 100755 examples/tools/i18n/i18n.py create mode 100644 examples/tools/i18n/i18n.qrc create mode 100644 examples/tools/i18n/i18n_rc.py create mode 100644 examples/tools/i18n/translations/i18n_ar.qm create mode 100644 examples/tools/i18n/translations/i18n_ar.ts create mode 100644 examples/tools/i18n/translations/i18n_cs.qm create mode 100644 examples/tools/i18n/translations/i18n_cs.ts create mode 100644 examples/tools/i18n/translations/i18n_de.qm create mode 100644 examples/tools/i18n/translations/i18n_de.ts create mode 100644 examples/tools/i18n/translations/i18n_el.qm create mode 100644 examples/tools/i18n/translations/i18n_el.ts create mode 100644 examples/tools/i18n/translations/i18n_en.qm create mode 100644 examples/tools/i18n/translations/i18n_en.ts create mode 100644 examples/tools/i18n/translations/i18n_eo.qm create mode 100644 examples/tools/i18n/translations/i18n_eo.ts create mode 100644 examples/tools/i18n/translations/i18n_fr.qm create mode 100644 examples/tools/i18n/translations/i18n_fr.ts create mode 100644 examples/tools/i18n/translations/i18n_it.qm create mode 100644 examples/tools/i18n/translations/i18n_it.ts create mode 100644 examples/tools/i18n/translations/i18n_jp.qm create mode 100644 examples/tools/i18n/translations/i18n_jp.ts create mode 100644 examples/tools/i18n/translations/i18n_ko.qm create mode 100644 examples/tools/i18n/translations/i18n_ko.ts create mode 100644 examples/tools/i18n/translations/i18n_no.qm create mode 100644 examples/tools/i18n/translations/i18n_no.ts create mode 100644 examples/tools/i18n/translations/i18n_pt.qm create mode 100644 examples/tools/i18n/translations/i18n_pt.ts create mode 100644 examples/tools/i18n/translations/i18n_ru.qm create mode 100644 examples/tools/i18n/translations/i18n_ru.ts create mode 100644 examples/tools/i18n/translations/i18n_sv.qm create mode 100644 examples/tools/i18n/translations/i18n_sv.ts create mode 100644 examples/tools/i18n/translations/i18n_zh.qm create mode 100644 examples/tools/i18n/translations/i18n_zh.ts create mode 100755 examples/tools/regexp.py create mode 100644 examples/tools/settingseditor/inifiles/licensepage.ini create mode 100644 examples/tools/settingseditor/inifiles/qsa.ini create mode 100755 examples/tools/settingseditor/settingseditor.py create mode 100644 examples/tutorials/addressbook/README create mode 100755 examples/tutorials/addressbook/part1.py create mode 100755 examples/tutorials/addressbook/part2.py create mode 100755 examples/tutorials/addressbook/part3.py create mode 100755 examples/tutorials/addressbook/part4.py create mode 100755 examples/tutorials/addressbook/part5.py create mode 100755 examples/tutorials/addressbook/part6.py create mode 100755 examples/tutorials/addressbook/part7.py create mode 100644 examples/webkit/README create mode 100755 examples/webkit/domtraversal/domtraversal.py create mode 100644 examples/webkit/domtraversal/ui_window.py create mode 100644 examples/webkit/domtraversal/window.ui create mode 100755 examples/webkit/fancybrowser/fancybrowser.py create mode 100644 examples/webkit/fancybrowser/jquery.qrc create mode 100644 examples/webkit/formextractor/form.html create mode 100755 examples/webkit/formextractor/formextractor.py create mode 100644 examples/webkit/formextractor/formextractor.qrc create mode 100644 examples/webkit/formextractor/formextractor.ui create mode 100644 examples/webkit/formextractor/formextractor_rc.py create mode 100644 examples/webkit/formextractor/ui_formextractor.py create mode 100755 examples/webkit/framecapture.py create mode 100755 examples/webkit/previewer/previewer.py create mode 100644 examples/webkit/previewer/previewer.ui create mode 100644 examples/webkit/previewer/ui_previewer.py create mode 100755 examples/webkit/simpleselector/simpleselector.py create mode 100644 examples/webkit/simpleselector/ui_window.py create mode 100644 examples/webkit/simpleselector/window.ui create mode 100644 examples/widgets/README create mode 100755 examples/widgets/analogclock.py create mode 100755 examples/widgets/calculator.py create mode 100755 examples/widgets/calendarwidget.py create mode 100755 examples/widgets/charactermap.py create mode 100755 examples/widgets/digitalclock.py create mode 100755 examples/widgets/groupbox.py create mode 100755 examples/widgets/icons/icons.py create mode 100644 examples/widgets/icons/images/designer.png create mode 100644 examples/widgets/icons/images/find_disabled.png create mode 100644 examples/widgets/icons/images/find_normal.png create mode 100644 examples/widgets/icons/images/monkey_off_128x128.png create mode 100644 examples/widgets/icons/images/monkey_off_16x16.png create mode 100644 examples/widgets/icons/images/monkey_off_32x32.png create mode 100644 examples/widgets/icons/images/monkey_off_64x64.png create mode 100644 examples/widgets/icons/images/monkey_on_128x128.png create mode 100644 examples/widgets/icons/images/monkey_on_16x16.png create mode 100644 examples/widgets/icons/images/monkey_on_32x32.png create mode 100644 examples/widgets/icons/images/monkey_on_64x64.png create mode 100644 examples/widgets/icons/images/qt_extended_16x16.png create mode 100644 examples/widgets/icons/images/qt_extended_32x32.png create mode 100644 examples/widgets/icons/images/qt_extended_48x48.png create mode 100755 examples/widgets/imageviewer.py create mode 100755 examples/widgets/lineedits.py create mode 100644 examples/widgets/movie/animation.mng create mode 100755 examples/widgets/movie/movie.py create mode 100755 examples/widgets/scribble.py create mode 100755 examples/widgets/shapedclock.py create mode 100755 examples/widgets/sliders.py create mode 100755 examples/widgets/spinboxes.py create mode 100755 examples/widgets/styles.py create mode 100644 examples/widgets/stylesheet/images/checkbox_checked.png create mode 100644 examples/widgets/stylesheet/images/checkbox_checked_hover.png create mode 100644 examples/widgets/stylesheet/images/checkbox_checked_pressed.png create mode 100644 examples/widgets/stylesheet/images/checkbox_unchecked.png create mode 100644 examples/widgets/stylesheet/images/checkbox_unchecked_hover.png create mode 100644 examples/widgets/stylesheet/images/checkbox_unchecked_pressed.png create mode 100644 examples/widgets/stylesheet/images/down_arrow.png create mode 100644 examples/widgets/stylesheet/images/down_arrow_disabled.png create mode 100644 examples/widgets/stylesheet/images/frame.png create mode 100644 examples/widgets/stylesheet/images/pagefold.png create mode 100644 examples/widgets/stylesheet/images/pushbutton.png create mode 100644 examples/widgets/stylesheet/images/pushbutton_hover.png create mode 100644 examples/widgets/stylesheet/images/pushbutton_pressed.png create mode 100644 examples/widgets/stylesheet/images/radiobutton_checked.png create mode 100644 examples/widgets/stylesheet/images/radiobutton_checked_hover.png create mode 100644 examples/widgets/stylesheet/images/radiobutton_checked_pressed.png create mode 100644 examples/widgets/stylesheet/images/radiobutton_unchecked.png create mode 100644 examples/widgets/stylesheet/images/radiobutton_unchecked_hover.png create mode 100644 examples/widgets/stylesheet/images/radiobutton_unchecked_pressed.png create mode 100644 examples/widgets/stylesheet/images/sizegrip.png create mode 100644 examples/widgets/stylesheet/images/spindown.png create mode 100644 examples/widgets/stylesheet/images/spindown_hover.png create mode 100644 examples/widgets/stylesheet/images/spindown_off.png create mode 100644 examples/widgets/stylesheet/images/spindown_pressed.png create mode 100644 examples/widgets/stylesheet/images/spinup.png create mode 100644 examples/widgets/stylesheet/images/spinup_hover.png create mode 100644 examples/widgets/stylesheet/images/spinup_off.png create mode 100644 examples/widgets/stylesheet/images/spinup_pressed.png create mode 100644 examples/widgets/stylesheet/images/up_arrow.png create mode 100644 examples/widgets/stylesheet/images/up_arrow_disabled.png create mode 100644 examples/widgets/stylesheet/mainwindow.ui create mode 100644 examples/widgets/stylesheet/qss/coffee.qss create mode 100644 examples/widgets/stylesheet/qss/default.qss create mode 100644 examples/widgets/stylesheet/qss/pagefold.qss create mode 100755 examples/widgets/stylesheet/stylesheet.py create mode 100644 examples/widgets/stylesheet/stylesheet.qrc create mode 100644 examples/widgets/stylesheet/stylesheet_rc.py create mode 100644 examples/widgets/stylesheet/stylesheeteditor.py create mode 100644 examples/widgets/stylesheet/stylesheeteditor.ui create mode 100644 examples/widgets/stylesheet/ui_mainwindow.py create mode 100644 examples/widgets/stylesheet/ui_stylesheeteditor.py create mode 100755 examples/widgets/tetrix.py create mode 100644 examples/widgets/tooltips/images/circle.png create mode 100644 examples/widgets/tooltips/images/square.png create mode 100644 examples/widgets/tooltips/images/triangle.png create mode 100755 examples/widgets/tooltips/tooltips.py create mode 100644 examples/widgets/tooltips/tooltips.qrc create mode 100644 examples/widgets/tooltips/tooltips_rc.py create mode 100755 examples/widgets/wiggly.py create mode 100755 examples/widgets/windowflags.py create mode 100644 examples/xmlpatterns/README create mode 100644 examples/xmlpatterns/schema/files/contact.xsd create mode 100644 examples/xmlpatterns/schema/files/invalid_contact.xml create mode 100644 examples/xmlpatterns/schema/files/invalid_order.xml create mode 100644 examples/xmlpatterns/schema/files/invalid_recipe.xml create mode 100644 examples/xmlpatterns/schema/files/order.xsd create mode 100644 examples/xmlpatterns/schema/files/recipe.xsd create mode 100644 examples/xmlpatterns/schema/files/valid_contact.xml create mode 100644 examples/xmlpatterns/schema/files/valid_order.xml create mode 100644 examples/xmlpatterns/schema/files/valid_recipe.xml create mode 100755 examples/xmlpatterns/schema/schema.py create mode 100644 examples/xmlpatterns/schema/schema.qrc create mode 100644 examples/xmlpatterns/schema/schema.ui create mode 100644 examples/xmlpatterns/schema/schema_rc.py create mode 100644 examples/xmlpatterns/schema/ui_schema.py create mode 100644 mk_distinfo.py create mode 100644 pylupdate/pylupdate_main.py create mode 100644 pylupdate/pylupdatemod.sip create mode 100644 pyrcc/pyrcc_main.py create mode 100644 pyrcc/pyrccmod.sip create mode 100644 pyuic/uic/Compiler/__init__.py create mode 100644 pyuic/uic/Compiler/compiler.py create mode 100644 pyuic/uic/Compiler/indenter.py create mode 100644 pyuic/uic/Compiler/misc.py create mode 100644 pyuic/uic/Compiler/proxy_metaclass.py create mode 100644 pyuic/uic/Compiler/qobjectcreator.py create mode 100644 pyuic/uic/Compiler/qtproxies.py create mode 100644 pyuic/uic/Loader/__init__.py create mode 100644 pyuic/uic/Loader/loader.py create mode 100644 pyuic/uic/Loader/qobjectcreator.py create mode 100644 pyuic/uic/__init__.py create mode 100644 pyuic/uic/driver.py create mode 100644 pyuic/uic/exceptions.py create mode 100644 pyuic/uic/icon_cache.py create mode 100644 pyuic/uic/objcreator.py create mode 100644 pyuic/uic/port_v2/__init__.py create mode 100644 pyuic/uic/port_v2/as_string.py create mode 100644 pyuic/uic/port_v2/ascii_upper.py create mode 100644 pyuic/uic/port_v2/proxy_base.py create mode 100644 pyuic/uic/port_v2/string_io.py create mode 100644 pyuic/uic/port_v3/__init__.py create mode 100644 pyuic/uic/port_v3/as_string.py create mode 100644 pyuic/uic/port_v3/ascii_upper.py create mode 100644 pyuic/uic/port_v3/proxy_base.py create mode 100644 pyuic/uic/port_v3/string_io.py create mode 100644 pyuic/uic/properties.py create mode 100644 pyuic/uic/pyuic.py create mode 100644 pyuic/uic/uiparser.py create mode 100644 pyuic/uic/widget-plugins/qaxcontainer.py create mode 100644 pyuic/uic/widget-plugins/qscintilla.py create mode 100644 pyuic/uic/widget-plugins/qtcharts.py create mode 100644 pyuic/uic/widget-plugins/qtprintsupport.py create mode 100644 pyuic/uic/widget-plugins/qtquickwidgets.py create mode 100644 pyuic/uic/widget-plugins/qtwebenginewidgets.py create mode 100644 pyuic/uic/widget-plugins/qtwebkit.py create mode 100644 qmlscene/pluginloader.cpp create mode 100644 qmlscene/pluginloader.h create mode 100644 qmlscene/qmlscene.pro-in create mode 100644 qpy/QtCore/qpycore_api.h create mode 100644 qpy/QtCore/qpycore_chimera.cpp create mode 100644 qpy/QtCore/qpycore_chimera.h create mode 100644 qpy/QtCore/qpycore_chimera_signature.cpp create mode 100644 qpy/QtCore/qpycore_chimera_storage.cpp create mode 100644 qpy/QtCore/qpycore_classinfo.cpp create mode 100644 qpy/QtCore/qpycore_classinfo.h create mode 100644 qpy/QtCore/qpycore_decorators.cpp create mode 100644 qpy/QtCore/qpycore_enums_flags.cpp create mode 100644 qpy/QtCore/qpycore_enums_flags.h create mode 100644 qpy/QtCore/qpycore_event_handlers.cpp create mode 100644 qpy/QtCore/qpycore_event_handlers.h create mode 100644 qpy/QtCore/qpycore_init.cpp create mode 100644 qpy/QtCore/qpycore_misc.cpp create mode 100644 qpy/QtCore/qpycore_misc.h create mode 100644 qpy/QtCore/qpycore_namespace.h create mode 100644 qpy/QtCore/qpycore_objectified_strings.h create mode 100644 qpy/QtCore/qpycore_post_init.cpp.in create mode 100644 qpy/QtCore/qpycore_public_api.cpp create mode 100644 qpy/QtCore/qpycore_public_api.h create mode 100644 qpy/QtCore/qpycore_pyqtboundsignal.cpp create mode 100644 qpy/QtCore/qpycore_pyqtboundsignal.h create mode 100644 qpy/QtCore/qpycore_pyqtconfigure.cpp create mode 100644 qpy/QtCore/qpycore_pyqtmethodproxy.cpp create mode 100644 qpy/QtCore/qpycore_pyqtmethodproxy.h create mode 100644 qpy/QtCore/qpycore_pyqtproperty.cpp create mode 100644 qpy/QtCore/qpycore_pyqtproperty.h create mode 100644 qpy/QtCore/qpycore_pyqtpyobject.cpp create mode 100644 qpy/QtCore/qpycore_pyqtpyobject.h create mode 100644 qpy/QtCore/qpycore_pyqtsignal.cpp create mode 100644 qpy/QtCore/qpycore_pyqtsignal.h create mode 100644 qpy/QtCore/qpycore_pyqtslot.cpp create mode 100644 qpy/QtCore/qpycore_pyqtslot.h create mode 100644 qpy/QtCore/qpycore_pyqtslotproxy.cpp create mode 100644 qpy/QtCore/qpycore_pyqtslotproxy.h create mode 100644 qpy/QtCore/qpycore_qjsonvalue.cpp create mode 100644 qpy/QtCore/qpycore_qmessagelogger.cpp create mode 100644 qpy/QtCore/qpycore_qmetaobject.cpp create mode 100644 qpy/QtCore/qpycore_qmetaobject_helpers.cpp create mode 100644 qpy/QtCore/qpycore_qmetaobjectbuilder.h create mode 100644 qpy/QtCore/qpycore_qobject_getattr.cpp create mode 100644 qpy/QtCore/qpycore_qobject_helpers.cpp create mode 100644 qpy/QtCore/qpycore_qobject_helpers.h create mode 100644 qpy/QtCore/qpycore_qstring.cpp create mode 100644 qpy/QtCore/qpycore_qt_conf.cpp create mode 100644 qpy/QtCore/qpycore_qvariant.cpp create mode 100644 qpy/QtCore/qpycore_qvariant_value.cpp create mode 100644 qpy/QtCore/qpycore_qvariantmap.cpp create mode 100644 qpy/QtCore/qpycore_types.cpp create mode 100644 qpy/QtCore/qpycore_types.h create mode 100644 qpy/QtDBus/qpydbus_api.h create mode 100644 qpy/QtDBus/qpydbus_chimera_helpers.cpp create mode 100644 qpy/QtDBus/qpydbus_chimera_helpers.h create mode 100644 qpy/QtDBus/qpydbus_post_init.cpp create mode 100644 qpy/QtDBus/qpydbuspendingreply.cpp create mode 100644 qpy/QtDBus/qpydbuspendingreply.h create mode 100644 qpy/QtDBus/qpydbusreply.cpp create mode 100644 qpy/QtDBus/qpydbusreply.h create mode 100644 qpy/QtDesigner/qpydesignercontainerextension.h create mode 100644 qpy/QtDesigner/qpydesignercustomwidgetcollectionplugin.h create mode 100644 qpy/QtDesigner/qpydesignercustomwidgetplugin.h create mode 100644 qpy/QtDesigner/qpydesignermembersheetextension.h create mode 100644 qpy/QtDesigner/qpydesignerpropertysheetextension.h create mode 100644 qpy/QtDesigner/qpydesignertaskmenuextension.h create mode 100644 qpy/QtGui/qpyopengl_add_constants.cpp create mode 100644 qpy/QtGui/qpyopengl_api.h create mode 100644 qpy/QtGui/qpyopengl_array_convertors.cpp create mode 100644 qpy/QtGui/qpyopengl_attribute_array.cpp create mode 100644 qpy/QtGui/qpyopengl_data_cache.cpp create mode 100644 qpy/QtGui/qpyopengl_data_cache.h create mode 100644 qpy/QtGui/qpyopengl_get.cpp create mode 100644 qpy/QtGui/qpyopengl_init.cpp create mode 100644 qpy/QtGui/qpyopengl_misc.h create mode 100644 qpy/QtGui/qpyopengl_uniform_value_array.cpp create mode 100644 qpy/QtGui/qpyopengl_value_array.cpp create mode 100644 qpy/QtGui/qpyopengl_version_functions.cpp create mode 100644 qpy/QtQml/qpyqml_api.h create mode 100644 qpy/QtQml/qpyqml_listdata.cpp create mode 100644 qpy/QtQml/qpyqml_listdata.h create mode 100644 qpy/QtQml/qpyqml_post_init.cpp create mode 100644 qpy/QtQml/qpyqml_qjsvalue.cpp create mode 100644 qpy/QtQml/qpyqml_register_singleton_type.cpp create mode 100644 qpy/QtQml/qpyqml_register_type.cpp create mode 100644 qpy/QtQml/qpyqmllistproperty.cpp create mode 100644 qpy/QtQml/qpyqmllistproperty.h create mode 100644 qpy/QtQml/qpyqmllistpropertywrapper.cpp create mode 100644 qpy/QtQml/qpyqmllistpropertywrapper.h create mode 100644 qpy/QtQml/qpyqmlobject.cpp create mode 100644 qpy/QtQml/qpyqmlobject.h create mode 100644 qpy/QtQml/qpyqmlsingletonobject.cpp create mode 100644 qpy/QtQml/qpyqmlsingletonobject.h create mode 100644 qpy/QtQuick/qpyquick_api.h create mode 100644 qpy/QtQuick/qpyquick_chimera_helpers.cpp create mode 100644 qpy/QtQuick/qpyquick_chimera_helpers.h create mode 100644 qpy/QtQuick/qpyquick_post_init.cpp create mode 100644 qpy/QtQuick/qpyquick_register_type.cpp create mode 100644 qpy/QtQuick/qpyquick_register_type.h create mode 100644 qpy/QtQuick/qpyquickframebufferobject.cpp create mode 100644 qpy/QtQuick/qpyquickframebufferobject.h create mode 100644 qpy/QtQuick/qpyquickitem.cpp create mode 100644 qpy/QtQuick/qpyquickitem.h create mode 100644 qpy/QtQuick/qpyquickpainteditem.cpp create mode 100644 qpy/QtQuick/qpyquickpainteditem.h create mode 100644 qpy/QtQuick/qpyquickview.cpp create mode 100644 qpy/QtQuick/qpyquickview.h create mode 100644 qpy/QtQuick/qpyquickwindow.cpp create mode 100644 qpy/QtQuick/qpyquickwindow.h create mode 100644 qpy/QtWidgets/qpywidgets_api.h create mode 100644 qpy/QtWidgets/qpywidgets_chimera_helpers.cpp create mode 100644 qpy/QtWidgets/qpywidgets_chimera_helpers.h create mode 100644 qpy/QtWidgets/qpywidgets_post_init.cpp create mode 100644 qpy/pylupdate/fetchtr.cpp create mode 100644 qpy/pylupdate/merge.cpp create mode 100644 qpy/pylupdate/metatranslator.cpp create mode 100644 qpy/pylupdate/metatranslator.h create mode 100644 qpy/pylupdate/numberh.cpp create mode 100644 qpy/pylupdate/proparser.cpp create mode 100644 qpy/pylupdate/proparser.h create mode 100644 qpy/pylupdate/pylupdate.h create mode 100644 qpy/pylupdate/sametexth.cpp create mode 100644 qpy/pylupdate/simtexth.cpp create mode 100644 qpy/pylupdate/simtexth.h create mode 100644 qpy/pylupdate/translator.cpp create mode 100644 qpy/pylupdate/translator.h create mode 100644 qpy/pyrcc/rcc.cpp create mode 100644 qpy/pyrcc/rcc.h create mode 100644 sip/Enginio/Enginiomod.sip create mode 100644 sip/Enginio/enginio.sip create mode 100644 sip/Enginio/enginioclient.sip create mode 100644 sip/Enginio/enginioclientconnection.sip create mode 100644 sip/Enginio/enginioidentity.sip create mode 100644 sip/Enginio/enginiomodel.sip create mode 100644 sip/Enginio/enginiooauth2authentication.sip create mode 100644 sip/Enginio/enginioreply.sip create mode 100644 sip/QAxContainer/QAxContainermod.sip create mode 100644 sip/QAxContainer/qaxbase.sip create mode 100644 sip/QAxContainer/qaxobject.sip create mode 100644 sip/QAxContainer/qaxwidget.sip create mode 100644 sip/QtAndroidExtras/QtAndroidExtrasmod.sip create mode 100644 sip/QtAndroidExtras/qandroidjniobject.sip create mode 100644 sip/QtAndroidExtras/qtandroid.sip create mode 100644 sip/QtBluetooth/QtBluetoothmod.sip create mode 100644 sip/QtBluetooth/qbluetooth.sip create mode 100644 sip/QtBluetooth/qbluetoothaddress.sip create mode 100644 sip/QtBluetooth/qbluetoothdevicediscoveryagent.sip create mode 100644 sip/QtBluetooth/qbluetoothdeviceinfo.sip create mode 100644 sip/QtBluetooth/qbluetoothhostinfo.sip create mode 100644 sip/QtBluetooth/qbluetoothlocaldevice.sip create mode 100644 sip/QtBluetooth/qbluetoothserver.sip create mode 100644 sip/QtBluetooth/qbluetoothservicediscoveryagent.sip create mode 100644 sip/QtBluetooth/qbluetoothserviceinfo.sip create mode 100644 sip/QtBluetooth/qbluetoothsocket.sip create mode 100644 sip/QtBluetooth/qbluetoothtransfermanager.sip create mode 100644 sip/QtBluetooth/qbluetoothtransferreply.sip create mode 100644 sip/QtBluetooth/qbluetoothtransferrequest.sip create mode 100644 sip/QtBluetooth/qbluetoothuuid.sip create mode 100644 sip/QtBluetooth/qlowenergyadvertisingdata.sip create mode 100644 sip/QtBluetooth/qlowenergyadvertisingparameters.sip create mode 100644 sip/QtBluetooth/qlowenergycharacteristic.sip create mode 100644 sip/QtBluetooth/qlowenergycharacteristicdata.sip create mode 100644 sip/QtBluetooth/qlowenergyconnectionparameters.sip create mode 100644 sip/QtBluetooth/qlowenergycontroller.sip create mode 100644 sip/QtBluetooth/qlowenergydescriptor.sip create mode 100644 sip/QtBluetooth/qlowenergydescriptordata.sip create mode 100644 sip/QtBluetooth/qlowenergyservice.sip create mode 100644 sip/QtBluetooth/qlowenergyservicedata.sip create mode 100644 sip/QtBluetooth/qpybluetooth_qlist.sip create mode 100644 sip/QtBluetooth/qpybluetooth_quint128.sip create mode 100644 sip/QtCore/QtCoremod.sip create mode 100644 sip/QtCore/qabstractanimation.sip create mode 100644 sip/QtCore/qabstracteventdispatcher.sip create mode 100644 sip/QtCore/qabstractitemmodel.sip create mode 100644 sip/QtCore/qabstractnativeeventfilter.sip create mode 100644 sip/QtCore/qabstractproxymodel.sip create mode 100644 sip/QtCore/qabstractstate.sip create mode 100644 sip/QtCore/qabstracttransition.sip create mode 100644 sip/QtCore/qanimationgroup.sip create mode 100644 sip/QtCore/qbasictimer.sip create mode 100644 sip/QtCore/qbitarray.sip create mode 100644 sip/QtCore/qbuffer.sip create mode 100644 sip/QtCore/qbytearray.sip create mode 100644 sip/QtCore/qbytearraymatcher.sip create mode 100644 sip/QtCore/qchar.sip create mode 100644 sip/QtCore/qcollator.sip create mode 100644 sip/QtCore/qcommandlineoption.sip create mode 100644 sip/QtCore/qcommandlineparser.sip create mode 100644 sip/QtCore/qcoreapplication.sip create mode 100644 sip/QtCore/qcoreevent.sip create mode 100644 sip/QtCore/qcryptographichash.sip create mode 100644 sip/QtCore/qdatastream.sip create mode 100644 sip/QtCore/qdatetime.sip create mode 100644 sip/QtCore/qdeadlinetimer.sip create mode 100644 sip/QtCore/qdir.sip create mode 100644 sip/QtCore/qdiriterator.sip create mode 100644 sip/QtCore/qeasingcurve.sip create mode 100644 sip/QtCore/qelapsedtimer.sip create mode 100644 sip/QtCore/qeventloop.sip create mode 100644 sip/QtCore/qeventtransition.sip create mode 100644 sip/QtCore/qfile.sip create mode 100644 sip/QtCore/qfiledevice.sip create mode 100644 sip/QtCore/qfileinfo.sip create mode 100644 sip/QtCore/qfileselector.sip create mode 100644 sip/QtCore/qfilesystemwatcher.sip create mode 100644 sip/QtCore/qfinalstate.sip create mode 100644 sip/QtCore/qglobal.sip create mode 100644 sip/QtCore/qhistorystate.sip create mode 100644 sip/QtCore/qidentityproxymodel.sip create mode 100644 sip/QtCore/qiodevice.sip create mode 100644 sip/QtCore/qitemselectionmodel.sip create mode 100644 sip/QtCore/qjsonarray.sip create mode 100644 sip/QtCore/qjsondocument.sip create mode 100644 sip/QtCore/qjsonobject.sip create mode 100644 sip/QtCore/qjsonvalue.sip create mode 100644 sip/QtCore/qlibrary.sip create mode 100644 sip/QtCore/qlibraryinfo.sip create mode 100644 sip/QtCore/qline.sip create mode 100644 sip/QtCore/qlocale.sip create mode 100644 sip/QtCore/qlockfile.sip create mode 100644 sip/QtCore/qlogging.sip create mode 100644 sip/QtCore/qmargins.sip create mode 100644 sip/QtCore/qmessageauthenticationcode.sip create mode 100644 sip/QtCore/qmetaobject.sip create mode 100644 sip/QtCore/qmetatype.sip create mode 100644 sip/QtCore/qmimedata.sip create mode 100644 sip/QtCore/qmimedatabase.sip create mode 100644 sip/QtCore/qmimetype.sip create mode 100644 sip/QtCore/qmutex.sip create mode 100644 sip/QtCore/qnamespace.sip create mode 100644 sip/QtCore/qnumeric.sip create mode 100644 sip/QtCore/qobject.sip create mode 100644 sip/QtCore/qobjectcleanuphandler.sip create mode 100644 sip/QtCore/qobjectdefs.sip create mode 100644 sip/QtCore/qoperatingsystemversion.sip create mode 100644 sip/QtCore/qparallelanimationgroup.sip create mode 100644 sip/QtCore/qpauseanimation.sip create mode 100644 sip/QtCore/qpluginloader.sip create mode 100644 sip/QtCore/qpoint.sip create mode 100644 sip/QtCore/qprocess.sip create mode 100644 sip/QtCore/qpropertyanimation.sip create mode 100644 sip/QtCore/qpycore_qhash.sip create mode 100644 sip/QtCore/qpycore_qlist.sip create mode 100644 sip/QtCore/qpycore_qmap.sip create mode 100644 sip/QtCore/qpycore_qpair.sip create mode 100644 sip/QtCore/qpycore_qset.sip create mode 100644 sip/QtCore/qpycore_qvariantmap.sip create mode 100644 sip/QtCore/qpycore_qvector.sip create mode 100644 sip/QtCore/qpycore_virtual_error_handler.sip create mode 100644 sip/QtCore/qrandom.sip create mode 100644 sip/QtCore/qreadwritelock.sip create mode 100644 sip/QtCore/qrect.sip create mode 100644 sip/QtCore/qregexp.sip create mode 100644 sip/QtCore/qregularexpression.sip create mode 100644 sip/QtCore/qresource.sip create mode 100644 sip/QtCore/qrunnable.sip create mode 100644 sip/QtCore/qsavefile.sip create mode 100644 sip/QtCore/qsemaphore.sip create mode 100644 sip/QtCore/qsequentialanimationgroup.sip create mode 100644 sip/QtCore/qsettings.sip create mode 100644 sip/QtCore/qsharedmemory.sip create mode 100644 sip/QtCore/qsignalmapper.sip create mode 100644 sip/QtCore/qsignaltransition.sip create mode 100644 sip/QtCore/qsize.sip create mode 100644 sip/QtCore/qsocketnotifier.sip create mode 100644 sip/QtCore/qsortfilterproxymodel.sip create mode 100644 sip/QtCore/qstandardpaths.sip create mode 100644 sip/QtCore/qstate.sip create mode 100644 sip/QtCore/qstatemachine.sip create mode 100644 sip/QtCore/qstorageinfo.sip create mode 100644 sip/QtCore/qstring.sip create mode 100644 sip/QtCore/qstringlist.sip create mode 100644 sip/QtCore/qstringlistmodel.sip create mode 100644 sip/QtCore/qsysinfo.sip create mode 100644 sip/QtCore/qsystemsemaphore.sip create mode 100644 sip/QtCore/qtemporarydir.sip create mode 100644 sip/QtCore/qtemporaryfile.sip create mode 100644 sip/QtCore/qtextboundaryfinder.sip create mode 100644 sip/QtCore/qtextcodec.sip create mode 100644 sip/QtCore/qtextstream.sip create mode 100644 sip/QtCore/qthread.sip create mode 100644 sip/QtCore/qthreadpool.sip create mode 100644 sip/QtCore/qtimeline.sip create mode 100644 sip/QtCore/qtimer.sip create mode 100644 sip/QtCore/qtimezone.sip create mode 100644 sip/QtCore/qtranslator.sip create mode 100644 sip/QtCore/qurl.sip create mode 100644 sip/QtCore/qurlquery.sip create mode 100644 sip/QtCore/quuid.sip create mode 100644 sip/QtCore/qvariant.sip create mode 100644 sip/QtCore/qvariantanimation.sip create mode 100644 sip/QtCore/qversionnumber.sip create mode 100644 sip/QtCore/qwaitcondition.sip create mode 100644 sip/QtCore/qwineventnotifier.sip create mode 100644 sip/QtCore/qxmlstream.sip create mode 100644 sip/QtDBus/QtDBusmod.sip create mode 100644 sip/QtDBus/qdbusabstractadaptor.sip create mode 100644 sip/QtDBus/qdbusabstractinterface.sip create mode 100644 sip/QtDBus/qdbusargument.sip create mode 100644 sip/QtDBus/qdbusconnection.sip create mode 100644 sip/QtDBus/qdbusconnectioninterface.sip create mode 100644 sip/QtDBus/qdbuserror.sip create mode 100644 sip/QtDBus/qdbusextratypes.sip create mode 100644 sip/QtDBus/qdbusinterface.sip create mode 100644 sip/QtDBus/qdbusmessage.sip create mode 100644 sip/QtDBus/qdbuspendingcall.sip create mode 100644 sip/QtDBus/qdbusservicewatcher.sip create mode 100644 sip/QtDBus/qdbusunixfiledescriptor.sip create mode 100644 sip/QtDBus/qpydbuspendingreply.sip create mode 100644 sip/QtDBus/qpydbusreply.sip create mode 100644 sip/QtDesigner/QtDesignermod.sip create mode 100644 sip/QtDesigner/abstractactioneditor.sip create mode 100644 sip/QtDesigner/abstractformbuilder.sip create mode 100644 sip/QtDesigner/abstractformeditor.sip create mode 100644 sip/QtDesigner/abstractformwindow.sip create mode 100644 sip/QtDesigner/abstractformwindowcursor.sip create mode 100644 sip/QtDesigner/abstractformwindowmanager.sip create mode 100644 sip/QtDesigner/abstractobjectinspector.sip create mode 100644 sip/QtDesigner/abstractpropertyeditor.sip create mode 100644 sip/QtDesigner/abstractwidgetbox.sip create mode 100644 sip/QtDesigner/container.sip create mode 100644 sip/QtDesigner/customwidget.sip create mode 100644 sip/QtDesigner/default_extensionfactory.sip create mode 100644 sip/QtDesigner/extension.sip create mode 100644 sip/QtDesigner/formbuilder.sip create mode 100644 sip/QtDesigner/membersheet.sip create mode 100644 sip/QtDesigner/propertysheet.sip create mode 100644 sip/QtDesigner/qextensionmanager.sip create mode 100644 sip/QtDesigner/qpydesignercontainerextension.sip create mode 100644 sip/QtDesigner/qpydesignercustomwidgetcollectionplugin.sip create mode 100644 sip/QtDesigner/qpydesignercustomwidgetplugin.sip create mode 100644 sip/QtDesigner/qpydesignermembersheetextension.sip create mode 100644 sip/QtDesigner/qpydesignerpropertysheetextension.sip create mode 100644 sip/QtDesigner/qpydesignertaskmenuextension.sip create mode 100644 sip/QtDesigner/taskmenu.sip create mode 100644 sip/QtGui/QtGuimod.sip create mode 100644 sip/QtGui/opengl_types.sip create mode 100644 sip/QtGui/qabstracttextdocumentlayout.sip create mode 100644 sip/QtGui/qbackingstore.sip create mode 100644 sip/QtGui/qbitmap.sip create mode 100644 sip/QtGui/qbrush.sip create mode 100644 sip/QtGui/qclipboard.sip create mode 100644 sip/QtGui/qcolor.sip create mode 100644 sip/QtGui/qcursor.sip create mode 100644 sip/QtGui/qdesktopservices.sip create mode 100644 sip/QtGui/qdrag.sip create mode 100644 sip/QtGui/qevent.sip create mode 100644 sip/QtGui/qfont.sip create mode 100644 sip/QtGui/qfontdatabase.sip create mode 100644 sip/QtGui/qfontinfo.sip create mode 100644 sip/QtGui/qfontmetrics.sip create mode 100644 sip/QtGui/qgenericmatrix.sip create mode 100644 sip/QtGui/qglyphrun.sip create mode 100644 sip/QtGui/qguiapplication.sip create mode 100644 sip/QtGui/qicon.sip create mode 100644 sip/QtGui/qiconengine.sip create mode 100644 sip/QtGui/qimage.sip create mode 100644 sip/QtGui/qimageiohandler.sip create mode 100644 sip/QtGui/qimagereader.sip create mode 100644 sip/QtGui/qimagewriter.sip create mode 100644 sip/QtGui/qinputmethod.sip create mode 100644 sip/QtGui/qkeysequence.sip create mode 100644 sip/QtGui/qmatrix4x4.sip create mode 100644 sip/QtGui/qmovie.sip create mode 100644 sip/QtGui/qoffscreensurface.sip create mode 100644 sip/QtGui/qopenglbuffer.sip create mode 100644 sip/QtGui/qopenglcontext.sip create mode 100644 sip/QtGui/qopengldebug.sip create mode 100644 sip/QtGui/qopenglframebufferobject.sip create mode 100644 sip/QtGui/qopenglpaintdevice.sip create mode 100644 sip/QtGui/qopenglpixeltransferoptions.sip create mode 100644 sip/QtGui/qopenglshaderprogram.sip create mode 100644 sip/QtGui/qopengltexture.sip create mode 100644 sip/QtGui/qopengltextureblitter.sip create mode 100644 sip/QtGui/qopengltimerquery.sip create mode 100644 sip/QtGui/qopenglversionfunctions.sip create mode 100644 sip/QtGui/qopenglvertexarrayobject.sip create mode 100644 sip/QtGui/qopenglwindow.sip create mode 100644 sip/QtGui/qpagedpaintdevice.sip create mode 100644 sip/QtGui/qpagelayout.sip create mode 100644 sip/QtGui/qpagesize.sip create mode 100644 sip/QtGui/qpaintdevice.sip create mode 100644 sip/QtGui/qpaintdevicewindow.sip create mode 100644 sip/QtGui/qpaintengine.sip create mode 100644 sip/QtGui/qpainter.sip create mode 100644 sip/QtGui/qpainterpath.sip create mode 100644 sip/QtGui/qpalette.sip create mode 100644 sip/QtGui/qpdfwriter.sip create mode 100644 sip/QtGui/qpen.sip create mode 100644 sip/QtGui/qpicture.sip create mode 100644 sip/QtGui/qpixelformat.sip create mode 100644 sip/QtGui/qpixmap.sip create mode 100644 sip/QtGui/qpixmapcache.sip create mode 100644 sip/QtGui/qpolygon.sip create mode 100644 sip/QtGui/qpygui_qlist.sip create mode 100644 sip/QtGui/qpygui_qpair.sip create mode 100644 sip/QtGui/qpygui_qvector.sip create mode 100644 sip/QtGui/qquaternion.sip create mode 100644 sip/QtGui/qrasterwindow.sip create mode 100644 sip/QtGui/qrawfont.sip create mode 100644 sip/QtGui/qregion.sip create mode 100644 sip/QtGui/qrgb.sip create mode 100644 sip/QtGui/qrgba64.sip create mode 100644 sip/QtGui/qscreen.sip create mode 100644 sip/QtGui/qsessionmanager.sip create mode 100644 sip/QtGui/qstandarditemmodel.sip create mode 100644 sip/QtGui/qstatictext.sip create mode 100644 sip/QtGui/qstylehints.sip create mode 100644 sip/QtGui/qsurface.sip create mode 100644 sip/QtGui/qsurfaceformat.sip create mode 100644 sip/QtGui/qsyntaxhighlighter.sip create mode 100644 sip/QtGui/qtextcursor.sip create mode 100644 sip/QtGui/qtextdocument.sip create mode 100644 sip/QtGui/qtextdocumentfragment.sip create mode 100644 sip/QtGui/qtextdocumentwriter.sip create mode 100644 sip/QtGui/qtextformat.sip create mode 100644 sip/QtGui/qtextlayout.sip create mode 100644 sip/QtGui/qtextlist.sip create mode 100644 sip/QtGui/qtextobject.sip create mode 100644 sip/QtGui/qtextoption.sip create mode 100644 sip/QtGui/qtexttable.sip create mode 100644 sip/QtGui/qtouchdevice.sip create mode 100644 sip/QtGui/qtransform.sip create mode 100644 sip/QtGui/qvalidator.sip create mode 100644 sip/QtGui/qvector2d.sip create mode 100644 sip/QtGui/qvector3d.sip create mode 100644 sip/QtGui/qvector4d.sip create mode 100644 sip/QtGui/qwindow.sip create mode 100644 sip/QtGui/qwindowdefs.sip create mode 100644 sip/QtHelp/QtHelpmod.sip create mode 100644 sip/QtHelp/qhelpcontentwidget.sip create mode 100644 sip/QtHelp/qhelpengine.sip create mode 100644 sip/QtHelp/qhelpenginecore.sip create mode 100644 sip/QtHelp/qhelpindexwidget.sip create mode 100644 sip/QtHelp/qhelpsearchengine.sip create mode 100644 sip/QtHelp/qhelpsearchquerywidget.sip create mode 100644 sip/QtHelp/qhelpsearchresultwidget.sip create mode 100644 sip/QtLocation/QtLocationmod.sip create mode 100644 sip/QtLocation/qgeocodereply.sip create mode 100644 sip/QtLocation/qgeocodingmanager.sip create mode 100644 sip/QtLocation/qgeocodingmanagerengine.sip create mode 100644 sip/QtLocation/qgeomaneuver.sip create mode 100644 sip/QtLocation/qgeoroute.sip create mode 100644 sip/QtLocation/qgeoroutereply.sip create mode 100644 sip/QtLocation/qgeorouterequest.sip create mode 100644 sip/QtLocation/qgeoroutesegment.sip create mode 100644 sip/QtLocation/qgeoroutingmanager.sip create mode 100644 sip/QtLocation/qgeoroutingmanagerengine.sip create mode 100644 sip/QtLocation/qgeoserviceprovider.sip create mode 100644 sip/QtLocation/qlocation.sip create mode 100644 sip/QtLocation/qplace.sip create mode 100644 sip/QtLocation/qplaceattribute.sip create mode 100644 sip/QtLocation/qplacecategory.sip create mode 100644 sip/QtLocation/qplacecontactdetail.sip create mode 100644 sip/QtLocation/qplacecontent.sip create mode 100644 sip/QtLocation/qplacecontentreply.sip create mode 100644 sip/QtLocation/qplacecontentrequest.sip create mode 100644 sip/QtLocation/qplacedetailsreply.sip create mode 100644 sip/QtLocation/qplaceeditorial.sip create mode 100644 sip/QtLocation/qplaceicon.sip create mode 100644 sip/QtLocation/qplaceidreply.sip create mode 100644 sip/QtLocation/qplaceimage.sip create mode 100644 sip/QtLocation/qplacemanager.sip create mode 100644 sip/QtLocation/qplacemanagerengine.sip create mode 100644 sip/QtLocation/qplacematchreply.sip create mode 100644 sip/QtLocation/qplacematchrequest.sip create mode 100644 sip/QtLocation/qplaceproposedsearchresult.sip create mode 100644 sip/QtLocation/qplaceratings.sip create mode 100644 sip/QtLocation/qplacereply.sip create mode 100644 sip/QtLocation/qplaceresult.sip create mode 100644 sip/QtLocation/qplacereview.sip create mode 100644 sip/QtLocation/qplacesearchreply.sip create mode 100644 sip/QtLocation/qplacesearchrequest.sip create mode 100644 sip/QtLocation/qplacesearchresult.sip create mode 100644 sip/QtLocation/qplacesearchsuggestionreply.sip create mode 100644 sip/QtLocation/qplacesupplier.sip create mode 100644 sip/QtLocation/qplaceuser.sip create mode 100644 sip/QtMacExtras/QtMacExtrasmod.sip create mode 100644 sip/QtMacExtras/qmacpasteboardmime.sip create mode 100644 sip/QtMacExtras/qmactoolbar.sip create mode 100644 sip/QtMacExtras/qmactoolbaritem.sip create mode 100644 sip/QtMacExtras/qtmac.sip create mode 100644 sip/QtMultimedia/QtMultimediamod.sip create mode 100644 sip/QtMultimedia/qabstractvideobuffer.sip create mode 100644 sip/QtMultimedia/qabstractvideofilter.sip create mode 100644 sip/QtMultimedia/qabstractvideosurface.sip create mode 100644 sip/QtMultimedia/qaudio.sip create mode 100644 sip/QtMultimedia/qaudiobuffer.sip create mode 100644 sip/QtMultimedia/qaudiodecoder.sip create mode 100644 sip/QtMultimedia/qaudiodeviceinfo.sip create mode 100644 sip/QtMultimedia/qaudioformat.sip create mode 100644 sip/QtMultimedia/qaudioinput.sip create mode 100644 sip/QtMultimedia/qaudiooutput.sip create mode 100644 sip/QtMultimedia/qaudioprobe.sip create mode 100644 sip/QtMultimedia/qaudiorecorder.sip create mode 100644 sip/QtMultimedia/qcamera.sip create mode 100644 sip/QtMultimedia/qcameraexposure.sip create mode 100644 sip/QtMultimedia/qcamerafocus.sip create mode 100644 sip/QtMultimedia/qcameraimagecapture.sip create mode 100644 sip/QtMultimedia/qcameraimageprocessing.sip create mode 100644 sip/QtMultimedia/qcamerainfo.sip create mode 100644 sip/QtMultimedia/qcameraviewfindersettings.sip create mode 100644 sip/QtMultimedia/qmediabindableinterface.sip create mode 100644 sip/QtMultimedia/qmediacontent.sip create mode 100644 sip/QtMultimedia/qmediacontrol.sip create mode 100644 sip/QtMultimedia/qmediaencodersettings.sip create mode 100644 sip/QtMultimedia/qmediametadata.sip create mode 100644 sip/QtMultimedia/qmediaobject.sip create mode 100644 sip/QtMultimedia/qmediaplayer.sip create mode 100644 sip/QtMultimedia/qmediaplaylist.sip create mode 100644 sip/QtMultimedia/qmediarecorder.sip create mode 100644 sip/QtMultimedia/qmediaresource.sip create mode 100644 sip/QtMultimedia/qmediaservice.sip create mode 100644 sip/QtMultimedia/qmediatimerange.sip create mode 100644 sip/QtMultimedia/qmultimedia.sip create mode 100644 sip/QtMultimedia/qpymultimedia_qlist.sip create mode 100644 sip/QtMultimedia/qradiodata.sip create mode 100644 sip/QtMultimedia/qradiotuner.sip create mode 100644 sip/QtMultimedia/qsound.sip create mode 100644 sip/QtMultimedia/qsoundeffect.sip create mode 100644 sip/QtMultimedia/qvideoframe.sip create mode 100644 sip/QtMultimedia/qvideoprobe.sip create mode 100644 sip/QtMultimedia/qvideosurfaceformat.sip create mode 100644 sip/QtMultimediaWidgets/QtMultimediaWidgetsmod.sip create mode 100644 sip/QtMultimediaWidgets/qcameraviewfinder.sip create mode 100644 sip/QtMultimediaWidgets/qgraphicsvideoitem.sip create mode 100644 sip/QtMultimediaWidgets/qvideowidget.sip create mode 100644 sip/QtNetwork/QtNetworkmod.sip create mode 100644 sip/QtNetwork/qabstractnetworkcache.sip create mode 100644 sip/QtNetwork/qabstractsocket.sip create mode 100644 sip/QtNetwork/qauthenticator.sip create mode 100644 sip/QtNetwork/qdnslookup.sip create mode 100644 sip/QtNetwork/qhostaddress.sip create mode 100644 sip/QtNetwork/qhostinfo.sip create mode 100644 sip/QtNetwork/qhstspolicy.sip create mode 100644 sip/QtNetwork/qhttpmultipart.sip create mode 100644 sip/QtNetwork/qlocalserver.sip create mode 100644 sip/QtNetwork/qlocalsocket.sip create mode 100644 sip/QtNetwork/qnetworkaccessmanager.sip create mode 100644 sip/QtNetwork/qnetworkconfigmanager.sip create mode 100644 sip/QtNetwork/qnetworkconfiguration.sip create mode 100644 sip/QtNetwork/qnetworkcookie.sip create mode 100644 sip/QtNetwork/qnetworkcookiejar.sip create mode 100644 sip/QtNetwork/qnetworkdatagram.sip create mode 100644 sip/QtNetwork/qnetworkdiskcache.sip create mode 100644 sip/QtNetwork/qnetworkinterface.sip create mode 100644 sip/QtNetwork/qnetworkproxy.sip create mode 100644 sip/QtNetwork/qnetworkreply.sip create mode 100644 sip/QtNetwork/qnetworkrequest.sip create mode 100644 sip/QtNetwork/qnetworksession.sip create mode 100644 sip/QtNetwork/qpynetwork_qhash.sip create mode 100644 sip/QtNetwork/qpynetwork_qmap.sip create mode 100644 sip/QtNetwork/qssl.sip create mode 100644 sip/QtNetwork/qsslcertificate.sip create mode 100644 sip/QtNetwork/qsslcertificateextension.sip create mode 100644 sip/QtNetwork/qsslcipher.sip create mode 100644 sip/QtNetwork/qsslconfiguration.sip create mode 100644 sip/QtNetwork/qssldiffiehellmanparameters.sip create mode 100644 sip/QtNetwork/qsslellipticcurve.sip create mode 100644 sip/QtNetwork/qsslerror.sip create mode 100644 sip/QtNetwork/qsslkey.sip create mode 100644 sip/QtNetwork/qsslpresharedkeyauthenticator.sip create mode 100644 sip/QtNetwork/qsslsocket.sip create mode 100644 sip/QtNetwork/qtcpserver.sip create mode 100644 sip/QtNetwork/qtcpsocket.sip create mode 100644 sip/QtNetwork/qudpsocket.sip create mode 100644 sip/QtNetworkAuth/QtNetworkAuthmod.sip create mode 100644 sip/QtNetworkAuth/qabstractoauth.sip create mode 100644 sip/QtNetworkAuth/qabstractoauth2.sip create mode 100644 sip/QtNetworkAuth/qabstractoauthreplyhandler.sip create mode 100644 sip/QtNetworkAuth/qoauth1.sip create mode 100644 sip/QtNetworkAuth/qoauth1signature.sip create mode 100644 sip/QtNetworkAuth/qoauth2authorizationcodeflow.sip create mode 100644 sip/QtNetworkAuth/qoauthhttpserverreplyhandler.sip create mode 100644 sip/QtNetworkAuth/qoauthoobreplyhandler.sip create mode 100644 sip/QtNfc/QtNfcmod.sip create mode 100644 sip/QtNfc/qndeffilter.sip create mode 100644 sip/QtNfc/qndefmessage.sip create mode 100644 sip/QtNfc/qndefnfcsmartposterrecord.sip create mode 100644 sip/QtNfc/qndefnfctextrecord.sip create mode 100644 sip/QtNfc/qndefnfcurirecord.sip create mode 100644 sip/QtNfc/qndefrecord.sip create mode 100644 sip/QtNfc/qnearfieldmanager.sip create mode 100644 sip/QtNfc/qnearfieldsharemanager.sip create mode 100644 sip/QtNfc/qnearfieldsharetarget.sip create mode 100644 sip/QtNfc/qnearfieldtarget.sip create mode 100644 sip/QtNfc/qqmlndefrecord.sip create mode 100644 sip/QtOpenGL/QtOpenGLmod.sip create mode 100644 sip/QtOpenGL/qgl.sip create mode 100644 sip/QtPositioning/QtPositioningmod.sip create mode 100644 sip/QtPositioning/qgeoaddress.sip create mode 100644 sip/QtPositioning/qgeoareamonitorinfo.sip create mode 100644 sip/QtPositioning/qgeoareamonitorsource.sip create mode 100644 sip/QtPositioning/qgeocircle.sip create mode 100644 sip/QtPositioning/qgeocoordinate.sip create mode 100644 sip/QtPositioning/qgeolocation.sip create mode 100644 sip/QtPositioning/qgeopath.sip create mode 100644 sip/QtPositioning/qgeopolygon.sip create mode 100644 sip/QtPositioning/qgeopositioninfo.sip create mode 100644 sip/QtPositioning/qgeopositioninfosource.sip create mode 100644 sip/QtPositioning/qgeorectangle.sip create mode 100644 sip/QtPositioning/qgeosatelliteinfo.sip create mode 100644 sip/QtPositioning/qgeosatelliteinfosource.sip create mode 100644 sip/QtPositioning/qgeoshape.sip create mode 100644 sip/QtPositioning/qnmeapositioninfosource.sip create mode 100644 sip/QtPrintSupport/QtPrintSupportmod.sip create mode 100644 sip/QtPrintSupport/qabstractprintdialog.sip create mode 100644 sip/QtPrintSupport/qpagesetupdialog.sip create mode 100644 sip/QtPrintSupport/qprintdialog.sip create mode 100644 sip/QtPrintSupport/qprintengine.sip create mode 100644 sip/QtPrintSupport/qprinter.sip create mode 100644 sip/QtPrintSupport/qprinterinfo.sip create mode 100644 sip/QtPrintSupport/qprintpreviewdialog.sip create mode 100644 sip/QtPrintSupport/qprintpreviewwidget.sip create mode 100644 sip/QtPrintSupport/qpyprintsupport_qlist.sip create mode 100644 sip/QtQml/QtQmlmod.sip create mode 100644 sip/QtQml/qjsengine.sip create mode 100644 sip/QtQml/qjsvalue.sip create mode 100644 sip/QtQml/qjsvalueiterator.sip create mode 100644 sip/QtQml/qmlattachedpropertiesobject.sip create mode 100644 sip/QtQml/qmlregistertype.sip create mode 100644 sip/QtQml/qpyqmllistproperty.sip create mode 100644 sip/QtQml/qqml.sip create mode 100644 sip/QtQml/qqmlabstracturlinterceptor.sip create mode 100644 sip/QtQml/qqmlapplicationengine.sip create mode 100644 sip/QtQml/qqmlcomponent.sip create mode 100644 sip/QtQml/qqmlcontext.sip create mode 100644 sip/QtQml/qqmlengine.sip create mode 100644 sip/QtQml/qqmlerror.sip create mode 100644 sip/QtQml/qqmlexpression.sip create mode 100644 sip/QtQml/qqmlextensionplugin.sip create mode 100644 sip/QtQml/qqmlfileselector.sip create mode 100644 sip/QtQml/qqmlincubator.sip create mode 100644 sip/QtQml/qqmllist.sip create mode 100644 sip/QtQml/qqmlnetworkaccessmanagerfactory.sip create mode 100644 sip/QtQml/qqmlparserstatus.sip create mode 100644 sip/QtQml/qqmlproperty.sip create mode 100644 sip/QtQml/qqmlpropertymap.sip create mode 100644 sip/QtQml/qqmlpropertyvaluesource.sip create mode 100644 sip/QtQml/qqmlscriptstring.sip create mode 100644 sip/QtQuick/QtQuickmod.sip create mode 100644 sip/QtQuick/qquickframebufferobject.sip create mode 100644 sip/QtQuick/qquickimageprovider.sip create mode 100644 sip/QtQuick/qquickitem.sip create mode 100644 sip/QtQuick/qquickitemgrabresult.sip create mode 100644 sip/QtQuick/qquickpainteditem.sip create mode 100644 sip/QtQuick/qquickrendercontrol.sip create mode 100644 sip/QtQuick/qquicktextdocument.sip create mode 100644 sip/QtQuick/qquickview.sip create mode 100644 sip/QtQuick/qquickwindow.sip create mode 100644 sip/QtQuick/qsgabstractrenderer.sip create mode 100644 sip/QtQuick/qsgengine.sip create mode 100644 sip/QtQuick/qsgflatcolormaterial.sip create mode 100644 sip/QtQuick/qsggeometry.sip create mode 100644 sip/QtQuick/qsgimagenode.sip create mode 100644 sip/QtQuick/qsgmaterial.sip create mode 100644 sip/QtQuick/qsgnode.sip create mode 100644 sip/QtQuick/qsgrectanglenode.sip create mode 100644 sip/QtQuick/qsgrendererinterface.sip create mode 100644 sip/QtQuick/qsgrendernode.sip create mode 100644 sip/QtQuick/qsgsimplerectnode.sip create mode 100644 sip/QtQuick/qsgsimpletexturenode.sip create mode 100644 sip/QtQuick/qsgtexture.sip create mode 100644 sip/QtQuick/qsgtexturematerial.sip create mode 100644 sip/QtQuick/qsgtextureprovider.sip create mode 100644 sip/QtQuick/qsgvertexcolormaterial.sip create mode 100644 sip/QtQuickWidgets/QtQuickWidgetsmod.sip create mode 100644 sip/QtQuickWidgets/qquickwidget.sip create mode 100644 sip/QtSensors/QtSensorsmod.sip create mode 100644 sip/QtSensors/qaccelerometer.sip create mode 100644 sip/QtSensors/qaltimeter.sip create mode 100644 sip/QtSensors/qambientlightsensor.sip create mode 100644 sip/QtSensors/qambienttemperaturesensor.sip create mode 100644 sip/QtSensors/qcompass.sip create mode 100644 sip/QtSensors/qdistancesensor.sip create mode 100644 sip/QtSensors/qgyroscope.sip create mode 100644 sip/QtSensors/qholstersensor.sip create mode 100644 sip/QtSensors/qhumiditysensor.sip create mode 100644 sip/QtSensors/qirproximitysensor.sip create mode 100644 sip/QtSensors/qlidsensor.sip create mode 100644 sip/QtSensors/qlightsensor.sip create mode 100644 sip/QtSensors/qmagnetometer.sip create mode 100644 sip/QtSensors/qorientationsensor.sip create mode 100644 sip/QtSensors/qpressuresensor.sip create mode 100644 sip/QtSensors/qproximitysensor.sip create mode 100644 sip/QtSensors/qrotationsensor.sip create mode 100644 sip/QtSensors/qsensor.sip create mode 100644 sip/QtSensors/qtapsensor.sip create mode 100644 sip/QtSensors/qtiltsensor.sip create mode 100644 sip/QtSerialPort/QtSerialPortmod.sip create mode 100644 sip/QtSerialPort/qserialport.sip create mode 100644 sip/QtSerialPort/qserialportinfo.sip create mode 100644 sip/QtSql/QtSqlmod.sip create mode 100644 sip/QtSql/qsql.sip create mode 100644 sip/QtSql/qsqldatabase.sip create mode 100644 sip/QtSql/qsqldriver.sip create mode 100644 sip/QtSql/qsqlerror.sip create mode 100644 sip/QtSql/qsqlfield.sip create mode 100644 sip/QtSql/qsqlindex.sip create mode 100644 sip/QtSql/qsqlquery.sip create mode 100644 sip/QtSql/qsqlquerymodel.sip create mode 100644 sip/QtSql/qsqlrecord.sip create mode 100644 sip/QtSql/qsqlrelationaldelegate.sip create mode 100644 sip/QtSql/qsqlrelationaltablemodel.sip create mode 100644 sip/QtSql/qsqlresult.sip create mode 100644 sip/QtSql/qsqltablemodel.sip create mode 100644 sip/QtSql/qtsqlglobal.sip create mode 100644 sip/QtSvg/QtSvgmod.sip create mode 100644 sip/QtSvg/qgraphicssvgitem.sip create mode 100644 sip/QtSvg/qsvggenerator.sip create mode 100644 sip/QtSvg/qsvgrenderer.sip create mode 100644 sip/QtSvg/qsvgwidget.sip create mode 100644 sip/QtTest/QtTestmod.sip create mode 100644 sip/QtTest/qabstractitemmodeltester.sip create mode 100644 sip/QtTest/qsignalspy.sip create mode 100644 sip/QtTest/qtestcase.sip create mode 100644 sip/QtTest/qtestkeyboard.sip create mode 100644 sip/QtTest/qtestmouse.sip create mode 100644 sip/QtTest/qtestsystem.sip create mode 100644 sip/QtTest/qtesttouch.sip create mode 100644 sip/QtWebChannel/QtWebChannelmod.sip create mode 100644 sip/QtWebChannel/qwebchannel.sip create mode 100644 sip/QtWebChannel/qwebchannelabstracttransport.sip create mode 100644 sip/QtWebEngine/QtWebEnginemod.sip create mode 100644 sip/QtWebEngine/qquickwebengineprofile.sip create mode 100644 sip/QtWebEngine/qquickwebenginescript.sip create mode 100644 sip/QtWebEngine/qtwebengineglobal.sip create mode 100644 sip/QtWebEngineCore/QtWebEngineCoremod.sip create mode 100644 sip/QtWebEngineCore/qwebenginecookiestore.sip create mode 100644 sip/QtWebEngineCore/qwebenginehttprequest.sip create mode 100644 sip/QtWebEngineCore/qwebenginequotarequest.sip create mode 100644 sip/QtWebEngineCore/qwebengineregisterprotocolhandlerrequest.sip create mode 100644 sip/QtWebEngineCore/qwebengineurlrequestinfo.sip create mode 100644 sip/QtWebEngineCore/qwebengineurlrequestinterceptor.sip create mode 100644 sip/QtWebEngineCore/qwebengineurlrequestjob.sip create mode 100644 sip/QtWebEngineCore/qwebengineurlschemehandler.sip create mode 100644 sip/QtWebEngineWidgets/QtWebEngineWidgetsmod.sip create mode 100644 sip/QtWebEngineWidgets/qwebenginecertificateerror.sip create mode 100644 sip/QtWebEngineWidgets/qwebenginecontextmenudata.sip create mode 100644 sip/QtWebEngineWidgets/qwebenginedownloaditem.sip create mode 100644 sip/QtWebEngineWidgets/qwebenginefullscreenrequest.sip create mode 100644 sip/QtWebEngineWidgets/qwebenginehistory.sip create mode 100644 sip/QtWebEngineWidgets/qwebenginepage.sip create mode 100644 sip/QtWebEngineWidgets/qwebengineprofile.sip create mode 100644 sip/QtWebEngineWidgets/qwebenginescript.sip create mode 100644 sip/QtWebEngineWidgets/qwebenginescriptcollection.sip create mode 100644 sip/QtWebEngineWidgets/qwebenginesettings.sip create mode 100644 sip/QtWebEngineWidgets/qwebengineview.sip create mode 100644 sip/QtWebKit/QtWebKitmod.sip create mode 100644 sip/QtWebKit/qwebdatabase.sip create mode 100644 sip/QtWebKit/qwebelement.sip create mode 100644 sip/QtWebKit/qwebhistory.sip create mode 100644 sip/QtWebKit/qwebhistoryinterface.sip create mode 100644 sip/QtWebKit/qwebkitglobal.sip create mode 100644 sip/QtWebKit/qwebpluginfactory.sip create mode 100644 sip/QtWebKit/qwebsecurityorigin.sip create mode 100644 sip/QtWebKit/qwebsettings.sip create mode 100644 sip/QtWebKitWidgets/QtWebKitWidgetsmod.sip create mode 100644 sip/QtWebKitWidgets/qgraphicswebview.sip create mode 100644 sip/QtWebKitWidgets/qwebframe.sip create mode 100644 sip/QtWebKitWidgets/qwebinspector.sip create mode 100644 sip/QtWebKitWidgets/qwebpage.sip create mode 100644 sip/QtWebKitWidgets/qwebview.sip create mode 100644 sip/QtWebSockets/QtWebSocketsmod.sip create mode 100644 sip/QtWebSockets/qmaskgenerator.sip create mode 100644 sip/QtWebSockets/qwebsocket.sip create mode 100644 sip/QtWebSockets/qwebsocketcorsauthenticator.sip create mode 100644 sip/QtWebSockets/qwebsocketprotocol.sip create mode 100644 sip/QtWebSockets/qwebsocketserver.sip create mode 100644 sip/QtWidgets/QtWidgetsmod.sip create mode 100644 sip/QtWidgets/qabstractbutton.sip create mode 100644 sip/QtWidgets/qabstractitemdelegate.sip create mode 100644 sip/QtWidgets/qabstractitemview.sip create mode 100644 sip/QtWidgets/qabstractscrollarea.sip create mode 100644 sip/QtWidgets/qabstractslider.sip create mode 100644 sip/QtWidgets/qabstractspinbox.sip create mode 100644 sip/QtWidgets/qaction.sip create mode 100644 sip/QtWidgets/qactiongroup.sip create mode 100644 sip/QtWidgets/qapplication.sip create mode 100644 sip/QtWidgets/qboxlayout.sip create mode 100644 sip/QtWidgets/qbuttongroup.sip create mode 100644 sip/QtWidgets/qcalendarwidget.sip create mode 100644 sip/QtWidgets/qcheckbox.sip create mode 100644 sip/QtWidgets/qcolordialog.sip create mode 100644 sip/QtWidgets/qcolumnview.sip create mode 100644 sip/QtWidgets/qcombobox.sip create mode 100644 sip/QtWidgets/qcommandlinkbutton.sip create mode 100644 sip/QtWidgets/qcommonstyle.sip create mode 100644 sip/QtWidgets/qcompleter.sip create mode 100644 sip/QtWidgets/qdatawidgetmapper.sip create mode 100644 sip/QtWidgets/qdatetimeedit.sip create mode 100644 sip/QtWidgets/qdesktopwidget.sip create mode 100644 sip/QtWidgets/qdial.sip create mode 100644 sip/QtWidgets/qdialog.sip create mode 100644 sip/QtWidgets/qdialogbuttonbox.sip create mode 100644 sip/QtWidgets/qdirmodel.sip create mode 100644 sip/QtWidgets/qdockwidget.sip create mode 100644 sip/QtWidgets/qdrawutil.sip create mode 100644 sip/QtWidgets/qerrormessage.sip create mode 100644 sip/QtWidgets/qfiledialog.sip create mode 100644 sip/QtWidgets/qfileiconprovider.sip create mode 100644 sip/QtWidgets/qfilesystemmodel.sip create mode 100644 sip/QtWidgets/qfocusframe.sip create mode 100644 sip/QtWidgets/qfontcombobox.sip create mode 100644 sip/QtWidgets/qfontdialog.sip create mode 100644 sip/QtWidgets/qformlayout.sip create mode 100644 sip/QtWidgets/qframe.sip create mode 100644 sip/QtWidgets/qgesture.sip create mode 100644 sip/QtWidgets/qgesturerecognizer.sip create mode 100644 sip/QtWidgets/qgraphicsanchorlayout.sip create mode 100644 sip/QtWidgets/qgraphicseffect.sip create mode 100644 sip/QtWidgets/qgraphicsgridlayout.sip create mode 100644 sip/QtWidgets/qgraphicsitem.sip create mode 100644 sip/QtWidgets/qgraphicslayout.sip create mode 100644 sip/QtWidgets/qgraphicslayoutitem.sip create mode 100644 sip/QtWidgets/qgraphicslinearlayout.sip create mode 100644 sip/QtWidgets/qgraphicsproxywidget.sip create mode 100644 sip/QtWidgets/qgraphicsscene.sip create mode 100644 sip/QtWidgets/qgraphicssceneevent.sip create mode 100644 sip/QtWidgets/qgraphicstransform.sip create mode 100644 sip/QtWidgets/qgraphicsview.sip create mode 100644 sip/QtWidgets/qgraphicswidget.sip create mode 100644 sip/QtWidgets/qgridlayout.sip create mode 100644 sip/QtWidgets/qgroupbox.sip create mode 100644 sip/QtWidgets/qheaderview.sip create mode 100644 sip/QtWidgets/qinputdialog.sip create mode 100644 sip/QtWidgets/qitemdelegate.sip create mode 100644 sip/QtWidgets/qitemeditorfactory.sip create mode 100644 sip/QtWidgets/qkeyeventtransition.sip create mode 100644 sip/QtWidgets/qkeysequenceedit.sip create mode 100644 sip/QtWidgets/qlabel.sip create mode 100644 sip/QtWidgets/qlayout.sip create mode 100644 sip/QtWidgets/qlayoutitem.sip create mode 100644 sip/QtWidgets/qlcdnumber.sip create mode 100644 sip/QtWidgets/qlineedit.sip create mode 100644 sip/QtWidgets/qlistview.sip create mode 100644 sip/QtWidgets/qlistwidget.sip create mode 100644 sip/QtWidgets/qmaccocoaviewcontainer.sip create mode 100644 sip/QtWidgets/qmainwindow.sip create mode 100644 sip/QtWidgets/qmdiarea.sip create mode 100644 sip/QtWidgets/qmdisubwindow.sip create mode 100644 sip/QtWidgets/qmenu.sip create mode 100644 sip/QtWidgets/qmenubar.sip create mode 100644 sip/QtWidgets/qmessagebox.sip create mode 100644 sip/QtWidgets/qmouseeventtransition.sip create mode 100644 sip/QtWidgets/qopenglwidget.sip create mode 100644 sip/QtWidgets/qplaintextedit.sip create mode 100644 sip/QtWidgets/qprogressbar.sip create mode 100644 sip/QtWidgets/qprogressdialog.sip create mode 100644 sip/QtWidgets/qproxystyle.sip create mode 100644 sip/QtWidgets/qpushbutton.sip create mode 100644 sip/QtWidgets/qpywidgets_qlist.sip create mode 100644 sip/QtWidgets/qradiobutton.sip create mode 100644 sip/QtWidgets/qrubberband.sip create mode 100644 sip/QtWidgets/qscrollarea.sip create mode 100644 sip/QtWidgets/qscrollbar.sip create mode 100644 sip/QtWidgets/qscroller.sip create mode 100644 sip/QtWidgets/qscrollerproperties.sip create mode 100644 sip/QtWidgets/qshortcut.sip create mode 100644 sip/QtWidgets/qsizegrip.sip create mode 100644 sip/QtWidgets/qsizepolicy.sip create mode 100644 sip/QtWidgets/qslider.sip create mode 100644 sip/QtWidgets/qspinbox.sip create mode 100644 sip/QtWidgets/qsplashscreen.sip create mode 100644 sip/QtWidgets/qsplitter.sip create mode 100644 sip/QtWidgets/qstackedlayout.sip create mode 100644 sip/QtWidgets/qstackedwidget.sip create mode 100644 sip/QtWidgets/qstatusbar.sip create mode 100644 sip/QtWidgets/qstyle.sip create mode 100644 sip/QtWidgets/qstyleditemdelegate.sip create mode 100644 sip/QtWidgets/qstylefactory.sip create mode 100644 sip/QtWidgets/qstyleoption.sip create mode 100644 sip/QtWidgets/qstylepainter.sip create mode 100644 sip/QtWidgets/qsystemtrayicon.sip create mode 100644 sip/QtWidgets/qtabbar.sip create mode 100644 sip/QtWidgets/qtableview.sip create mode 100644 sip/QtWidgets/qtablewidget.sip create mode 100644 sip/QtWidgets/qtabwidget.sip create mode 100644 sip/QtWidgets/qtextbrowser.sip create mode 100644 sip/QtWidgets/qtextedit.sip create mode 100644 sip/QtWidgets/qtoolbar.sip create mode 100644 sip/QtWidgets/qtoolbox.sip create mode 100644 sip/QtWidgets/qtoolbutton.sip create mode 100644 sip/QtWidgets/qtooltip.sip create mode 100644 sip/QtWidgets/qtreeview.sip create mode 100644 sip/QtWidgets/qtreewidget.sip create mode 100644 sip/QtWidgets/qtreewidgetitemiterator.sip create mode 100644 sip/QtWidgets/qundogroup.sip create mode 100644 sip/QtWidgets/qundostack.sip create mode 100644 sip/QtWidgets/qundoview.sip create mode 100644 sip/QtWidgets/qwhatsthis.sip create mode 100644 sip/QtWidgets/qwidget.sip create mode 100644 sip/QtWidgets/qwidgetaction.sip create mode 100644 sip/QtWidgets/qwizard.sip create mode 100644 sip/QtWinExtras/QtWinExtrasmod.sip create mode 100644 sip/QtWinExtras/qwinfunctions.sip create mode 100644 sip/QtWinExtras/qwinjumplist.sip create mode 100644 sip/QtWinExtras/qwinjumplistcategory.sip create mode 100644 sip/QtWinExtras/qwinjumplistitem.sip create mode 100644 sip/QtWinExtras/qwintaskbarbutton.sip create mode 100644 sip/QtWinExtras/qwintaskbarprogress.sip create mode 100644 sip/QtWinExtras/qwinthumbnailtoolbar.sip create mode 100644 sip/QtWinExtras/qwinthumbnailtoolbutton.sip create mode 100644 sip/QtX11Extras/QtX11Extrasmod.sip create mode 100644 sip/QtX11Extras/qx11info_x11.sip create mode 100644 sip/QtXml/QtXmlmod.sip create mode 100644 sip/QtXml/qdom.sip create mode 100644 sip/QtXml/qxml.sip create mode 100644 sip/QtXmlPatterns/QtXmlPatternsmod.sip create mode 100644 sip/QtXmlPatterns/qabstractmessagehandler.sip create mode 100644 sip/QtXmlPatterns/qabstracturiresolver.sip create mode 100644 sip/QtXmlPatterns/qabstractxmlnodemodel.sip create mode 100644 sip/QtXmlPatterns/qabstractxmlreceiver.sip create mode 100644 sip/QtXmlPatterns/qsimplexmlnodemodel.sip create mode 100644 sip/QtXmlPatterns/qsourcelocation.sip create mode 100644 sip/QtXmlPatterns/qxmlformatter.sip create mode 100644 sip/QtXmlPatterns/qxmlname.sip create mode 100644 sip/QtXmlPatterns/qxmlnamepool.sip create mode 100644 sip/QtXmlPatterns/qxmlquery.sip create mode 100644 sip/QtXmlPatterns/qxmlresultitems.sip create mode 100644 sip/QtXmlPatterns/qxmlschema.sip create mode 100644 sip/QtXmlPatterns/qxmlschemavalidator.sip create mode 100644 sip/QtXmlPatterns/qxmlserializer.sip create mode 100644 sip/_QOpenGLFunctions_2_0/_QOpenGLFunctions_2_0mod.sip create mode 100644 sip/_QOpenGLFunctions_2_0/qopenglfunctions_2_0.sip create mode 100644 sip/_QOpenGLFunctions_2_1/_QOpenGLFunctions_2_1mod.sip create mode 100644 sip/_QOpenGLFunctions_2_1/qopenglfunctions_2_1.sip create mode 100644 sip/_QOpenGLFunctions_4_1_Core/_QOpenGLFunctions_4_1_Coremod.sip create mode 100644 sip/_QOpenGLFunctions_4_1_Core/qopenglfunctions_4_1_core.sip create mode 100644 sip/_QOpenGLFunctions_ES2/_QOpenGLFunctions_ES2mod.sip create mode 100644 sip/_QOpenGLFunctions_ES2/qopenglfunctions_es2.sip create mode 100644 sip/pylupdate/pylupdate_main.py create mode 100644 sip/pylupdate/pylupdatemod.sip create mode 100644 sip/pyqt-gpl.sip create mode 100644 sip/pyrcc/pyrcc_main.py create mode 100644 sip/pyrcc/pyrccmod.sip diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..124b079 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,10180 @@ +2018-06-29 Phil Thompson + + * NEWS: + Released as v5.11.2. + [eae29c8c2da9] [5.11.2] <5.11-maint> + + * NEWS: + Updated the NEWS file. + [214d3a264b0e] <5.11-maint> + + * NEWS, lib/configure.py: + Documented and checked the availability of the enum34 module. + [580e69901a87] <5.11-maint> + + * test/tests/metaobject/test_qenum.py: + Fixed the enum tests for Python v2. + [5a5a9d928414] <5.11-maint> + +2018-06-26 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + The type parser will now retry without typedefs expanded if it fails + with them expanded. This fixes signal argument types like + QVector. + [e737f4c40ec9] <5.11-maint> + + * PyQt5.msp: + Fixed the remaining broken signals. + [58f88366d063] <5.11-maint> + +2018-06-25 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + Handle 'const' when parsing C++ types as it can occur in signal + arguments. + [4d0a42b79c8e] <5.11-maint> + + * NEWS, PyQt5.msp: + Updated the project file format version. + [67a00c5666c4] <5.11-maint> + + * PyQt5.msp, rb-product: + Replaced the /StripScope/ with the /ScopesStripped/ annotation. + [5e2c10455770] <5.11-maint> + + * PyQt5.msp: + Fixed the QGraphicsBlurEffect.blurHintsChanged() signal. + [86710c30a455] <5.11-maint> + + * NEWS, qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp: + Added the signatures attribute to unbound signals. + [db2ecffd264c] <5.11-maint> + + * PyQt5.msp: + Fixed the QDnsLookup.typeChanged() signal. + [5e524eb73a1f] <5.11-maint> + +2018-06-24 Phil Thompson + + * PyQt5.msp: + Fixed QGuiApplication.applicationDisplayNameChanged(). + [7062dc247c88] <5.11-maint> + + * lib/configure.py: + The .dist-info directory respects $(INSTALL_ROOT). + [93978a369f09] <5.11-maint> + +2018-06-23 Phil Thompson + + * .hgtags: + Added tag 5.11.1 for changeset e68a890ea6b8 + [30525c4119d4] <5.11-maint> + + * NEWS: + Released as v5.11.1. + [e68a890ea6b8] [5.11.1] <5.11-maint> + +2018-06-22 Phil Thompson + + * .hgtags: + Added tag 5.11 for changeset 8f5d26af2746 + [343a84f97ac6] + + * NEWS: + Released as v5.11. + [8f5d26af2746] [5.11] + +2018-06-21 Phil Thompson + + * NEWS: + Updated the NEWS file. + [df06aa4d7841] + + * NEWS, PyQt5.msp: + Updated for Qt v5.11.1. + [552f32ca0216] + +2018-06-18 Phil Thompson + + * lib/configure.py: + Put the check for the private sip module in the right place. + [0ee45a8ed20f] + +2018-06-17 Phil Thompson + + * lib/configure.py: + configure.py now checks for a private copy of the sip module. + [c431be7c36bd] + + * lib/configure.py, rb-product: + Use a private copy of the sip module. SIP v4.19.9 is now required. + [7c9bae40b66c] + +2018-06-12 Phil Thompson + + * PyQt5.msp: + QWebEngineCookieScore.setFilter() should no longer leak any previous + filter. + [55cef5311fc3] + + * PyQt5.msp: + Fixed garbage collection issues with + QWebEngineCookieStore.setCookieFilter() again. + [69f69256e752] + +2018-06-11 Phil Thompson + + * PyQt5.msp: + Fixed garbage collection issues with + QWebEngineCookieStore.setCookieFilter(). + [28340dc8210e] + + * PyQt5.msp: + Updated QtWidgets for Qt v5.11.0. + [aeee6c28cebd] + + * PyQt5.msp: + Fixed the building of QAbstractItemModelTester because of bugs in + qabstractitemmodeltester.h in Qt v5.11.0. + [b31a523572d9] + +2018-06-10 Phil Thompson + + * PyQt5.msp: + Updated QtXml and QtXmlPatterns for Qt v5.11.0. + [39851da4cb5f] + + * PyQt5.msp: + Updated QtWebChannel, QtWebEngine, QtWebEngineCore, + QtWebEngineWidgets and QtWebSockets for Qt v5.11.0. + [8b60186848da] + +2018-06-09 Phil Thompson + + * PyQt5.msp: + Updated QtSensors, QtSerialPort, QtSql, QtSvg and QtTest for Qt + v5.11.0. + [1a85a313a769] + + * PyQt5.msp: + Updated QtPositioning, QtPrintSupport, QtQml, QtQuick and + QtQuickWidgets for Qt v5.11.0. + [3343307dbde7] + + * PyQt5.msp: + Updated QtNetwork, QtNetworkAuth, QtNfc and QtOpenGL for Qt v5.11.0. + [fd21e0bf4512] + + * PyQt5.msp: + Updated QtMultimedia and QtMultimediaWidgets for Qt v5.11.0. + [9ba81ca7ac0a] + + * qpy/QtCore/qpycore_qvariantmap.cpp, + qpy/QtCore/qpycore_qvariantmap.sip: + Added the missing QVariantMap convertors to the repo. + [d9e1bccb7abd] + + * PyQt5.msp, qpy/QtCore/qpycore_api.h, qpy/QtCore/qpycore_chimera.cpp, + qpy/QtCore/qpycore_chimera.h: + QVariantMap is now implemented by a dedicated mapped type so that is + can be used as an argument to mapped type templates. Updated QtHelp + and QtLocation for Qt v5.11.0. + [b22b2c737a0c] + +2018-06-08 Phil Thompson + + * PyQt5.msp: + Updated QtDBus, QtDesigner and QtGui for Qt v5.11.0. + [f3bbee99095b] + + * PyQt5.msp: + Updated QtBluetooth and QtCore for Qt v5.11.0. + [e7804e2e16ba] + +2018-06-07 Phil Thompson + + * PyQt5.msp: + Removed the internal QTest methods that have been removed in Qt + v5.11.0. + [33c3ec619c2f] + + * Merged the 5.10-maint branch. + [53a61440fa64] + +2018-06-06 Phil Thompson + + * NEWS, PyQt5.msp, qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtslotproxy.cpp, + qpy/QtCore/qpycore_pyqtslotproxy.h: + connect() of a bound signal now returns a QMetaObject.Connection + object. disconnect() of a bound signal now accepts a + QMetaObject.Connection object. + [edb17999d00d] <5.10-maint> + +2018-06-05 Phil Thompson + + * qpy/QtCore/qpycore_qmetaobjectbuilder.h, + qpy/QtCore/qpycore_types.cpp: + Python enums are only marked as scoped in a QMetaObject in Qt v5.8.0 + and later. + [1ba6f6a7f02b] <5.10-maint> + + * NEWS, PyQt5.msp, qpy/QtCore/qpycore_enums_flags.cpp, + qpy/QtCore/qpycore_enums_flags.h, + qpy/QtCore/qpycore_qmetaobjectbuilder.h, + qpy/QtCore/qpycore_types.cpp, test/tests/metaobject/test_qenum.py: + Added support for Python enums to Q_ENUM() etc. + [3767261498bf] <5.10-maint> + + * PyQt5.msp, qpy/QtCore/qpycore_api.h, + qpy/QtCore/qpycore_enums_flags.cpp, + qpy/QtCore/qpycore_enums_flags.h, + test/tests/metaobject/test_qenum.py: + Implemented Q_ENUM() and Q_FLAG(). + [0929ceb1de64] <5.10-maint> + + * test/tests/metaobject/test_qenum.py: + Added unit tests for Q_ENUMS and Q_FLAGS. + [bfea3882d8c8] <5.10-maint> + +2018-06-04 Phil Thompson + + * lib/configure.py, lib/mk_distinfo.py: + Removed mk_distinfo.py as it is now added as part of preparation. + [3cbde28585b0] <5.10-maint> + + * NEWS, lib/configure.py, lib/mk_distinfo.py: + Completed the support for the .dist-info directory. + [49eee7a59afe] <5.10-maint> + +2018-06-03 Phil Thompson + + * lib/configure.py, lib/mk_distinfo.py: + Added the stub for creating the .dist-info directory. + [7082da319e5d] <5.10-maint> + +2018-05-29 Phil Thompson + + * lib/configure.py: + More fixes for spaces in path names. + [f1c6525f5245] <5.10-maint> + + * lib/configure.py: + Fixes for spaces in path names. + [b5f8125345a5] <5.10-maint> + +2018-05-25 Phil Thompson + + * PyQt5.msp: + QQuickWidget.setSource() now releases the GIL. + [fa1ca7902278] <5.10-maint> + +2018-05-02 Phil Thompson + + * .hgignore: + Ignore compiled QML files. + [88c4b4aff111] <5.10-maint> + + * designer/pluginloader.cpp: + Make sure the GIL isn't retained by the Designer plugin. + [2a1461190bee] <5.10-maint> + +2018-04-15 Phil Thompson + + * PyQt5.msp: + Added the explicit Qt v5.9 LTS versions to the timeline. The + previous approach (of adding a single high version number doesn't + work because sip does a string comparison on the tag and doesn't + interpret the embedded numbers). + [6105adee4a9f] <5.10-maint> + +2018-04-12 Phil Thompson + + * NEWS: + Updated the NEWS file. + [190602cb95d1] <5.10-maint> + + * NEWS, PyQt5.msp: + Added the missing inputMethod() and styleHints() method to + QGuiApplication. + [79a97a665db6] <5.10-maint> + +2018-04-10 Phil Thompson + + * qpy/QtQuick/qpyquickframebufferobject.cpp, + qpy/QtQuick/qpyquickframebufferobject.h, + qpy/QtQuick/qpyquickitem.cpp, qpy/QtQuick/qpyquickitem.h, + qpy/QtQuick/qpyquickpainteditem.cpp, + qpy/QtQuick/qpyquickpainteditem.h, qpy/QtQuick/qpyquickview.cpp, + qpy/QtQuick/qpyquickview.h, qpy/QtQuick/qpyquickwindow.cpp, + qpy/QtQuick/qpyquickwindow.h: + Improved the fix for QtQuick meta-objects so that the + customgeometry.py example works again. + [7facd5e24cbb] <5.10-maint> + + * examples/quick/tutorials/extending/chapter1-basics/chapter1-basics.p + y: + Improved fixes for the QtQuick tutorial chapter 1 example. + [2eb1ae9d235f] <5.10-maint> + + * qpy/QtQuick/qpyquickframebufferobject.h, qpy/QtQuick/qpyquickitem.h, + qpy/QtQuick/qpyquickpainteditem.h, qpy/QtQuick/qpyquickview.h, + qpy/QtQuick/qpyquickwindow.h: + Fixed the handling of QQuickItem and similar classes so that the + correct meta-object is returned by metaObject(). + [8bf883e1619f] <5.10-maint> + + * examples/quick/tutorials/extending/chapter1-basics/chapter1-basics.p + y: + Fixed a warning in one of the QtQuick examples. + [baaefd519f7e] <5.10-maint> + +2018-04-09 Phil Thompson + + * qpy/pylupdate/fetchtr.cpp: + The pylupdate expression parser can now handle more expressions. + [f9c40ec61b7c] <5.10-maint> + +2018-04-05 Phil Thompson + + * examples/quick/models/abstractitemmodel/abstractitemmodel_rc.py, + examples/quick/models/objectlistmodel/objectlistmodel_rc.py, + examples/quick/models/stringlistmodel/stringlistmodel_rc.py: + Regenerated the resource files in the examples that embed .qml + files. + [e64325318426] <5.10-maint> + + * qpy/pyrcc/rcc.cpp: + Fixed the handling of v2 format rcc files that affects embedded .qml + files. + [a5bb57d5a578] <5.10-maint> + +2018-03-28 Phil Thompson + + * qpy/QtCore/qpycore_qobject_helpers.cpp: + Fixed QObject.inherits() when applied to a Python sub-class of a C++ + sub-class of QObject. + [66270559fa89] <5.10-maint> + + * test/tests/classes/test_QObject.py: + Added the unit test for the failing QObject.inherits() when called + for a Python sub-class of a C++ class that is a sub-class of + QObject. + [9d6daf4a95ef] <5.10-maint> + +2018-03-27 Phil Thompson + + * qpy/QtCore/qpycore_pyqtsignal.cpp: + Signal signatures can now have a full version appended if a + namespace has been stripped from any argument. + [7815d8ce482d] <5.10-maint> + +2018-03-21 Phil Thompson + + * examples/quick/models/abstractitemmodel/abstractitemmodel.py, + examples/quick/models/objectlistmodel/objectlistmodel.py, + examples/quick/models/stringlistmodel/stringlistmodel.py: + Further fixes to the QtQuick examples that embed the QML is a + resource file. + [addc5cf26db3] <5.10-maint> + +2018-03-17 Phil Thompson + + * PyQt5.msp: + Added the missing QSqlQuery.exec() overload for Python v3. + [6a196c11e14d] <5.10-maint> + +2018-03-03 Phil Thompson + + * PyQt5.msp: + Implemented glReadPixels(). (Thanks to Jayson Kempinger.) + [e65865275584] <5.10-maint> + +2018-03-02 Phil Thompson + + * lib/configure.py: + Set the limited API to v3.7.0. + [5ab0e4c014a6] <5.10-maint> + + * PyQt5.msp: + Replaced calls to PySlice_GetIndicesEx() with + sipConvertFromSliceObject(). + [c732d9f55a63] <5.10-maint> + + * PyQt5.msp, qpy/QtQuick/qpyquick_register_type.cpp, + qpy/QtQuick/qpyquickview.cpp, qpy/QtQuick/qpyquickview.h, + qpy/QtQuick/qpyquickwindow.cpp, qpy/QtQuick/qpyquickwindow.h: + Handle QQuickWindow and QQuickView as special cases (cf. QQuickItem) + when exposing sub-classes to QML. + [78085eee5e7e] <5.10-maint> + +2018-03-01 Phil Thompson + + * examples/quick/models/abstractitemmodel/abstractitemmodel.py, + examples/quick/models/objectlistmodel/objectlistmodel.py, + examples/quick/models/stringlistmodel/stringlistmodel.py: + Further fixes for the QtQuick examples. + [5db868c90075] <5.10-maint> + + * examples/quick/models/objectlistmodel/objectlistmodel.py, + examples/quick/models/stringlistmodel/stringlistmodel.py: + Fixes for a couple of the QtQuick examples. + [9d3b24c4012a] <5.10-maint> + +2018-02-27 Phil Thompson + + * PyQt5.msp: + The connect() and disconnect() methods of QDBusConnection now + release the GIL. + [b07ff8dc7347] <5.10-maint> + + * NEWS: + Fixed a typo in the NEWS file. + [d624ede272dd] <5.10-maint> + +2018-02-26 Phil Thompson + + * .hgtags: + Added tag 5.10.1 for changeset dc149e6643d5 + [71c3d60be239] <5.10-maint> + + * NEWS: + Released as v5.10.1. + [dc149e6643d5] [5.10.1] <5.10-maint> + +2018-02-21 Phil Thompson + + * PyQt5.msp: + Added the new QAbstractOAuth2 methods added in Qt v5.10.1. + [b2ea22e58de6] <5.10-maint> + +2018-02-20 Phil Thompson + + * PyQt5.msp: + Updated for Qt v5.10.1. + [e27d89dd3457] <5.10-maint> + +2018-02-13 Phil Thompson + + * PyQt5.msp: + Added the missing qmlClearTypeRegistrations() to the QtQml module. + [c9a7040cb4a7] <5.10-maint> + +2018-02-12 Phil Thompson + + * PyQt5.msp: + Removed incorrect annotation on + QQmlNetworkAccessManagerFactory::create(). + [6401ed81edee] <5.10-maint> + +2018-02-08 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + Removed some (hopefully) redundant code. + [6e9e33411f41] <5.10-maint> + +2018-02-06 Phil Thompson + + * PyQt5.msp: + Make sure LTS releases of Qt v5.9 don't get handled as Qt v5.10. + [8474d7f26f1f] <5.10-maint> + +2018-02-04 Phil Thompson + + * lib/configure.py: + Added the --disabled-feature option to configure.py. + [5a554278bbf0] <5.10-maint> + +2018-01-31 Phil Thompson + + * examples/quick/tutorials/extending/chapter1-basics/chapter1-basics.p + y, examples/quick/tutorials/extending/chapter2-methods/chapter2-meth + ods.py, examples/quick/tutorials/extending/chapter3-bindings/chapter + 3-bindings.py, examples/quick/tutorials/extending/chapter4-customPro + pertyTypes/chapter4-customPropertyTypes.py, examples/quick/tutorials + /extending/chapter5-listproperties/chapter5-listproperties.py: + Avoid an assertion failure when using a debug version of Qt. + [6eb406e64db8] <5.10-maint> + + * qpy/QtQml/qpyqml_register_singleton_type.cpp, + qpy/QtQml/qpyqml_register_type.cpp: + Reverted the change in PyQt v5.8 that dealt with QML and properties + so that all the examples work again. + [9eb53449681d] <5.10-maint> + +2018-01-23 Phil Thompson + + * .hgtags: + Added tag 5.10 for changeset 9f68e48cf5f5 + [c18dad0e8eec] + + * NEWS: + Released as v5.10. + [9f68e48cf5f5] [5.10] + + * NEWS: + Updated the NEWS file. + [0f2753f9a303] + +2018-01-19 Phil Thompson + + * PyQt5.msp: + Added the %ConvertToSubClassCode for QtNetworkAuth. + [b9783c0386aa] + + * PyQt5.msp: + Implemented the remaining QtNetworkAuth methods. + [73f3c9cc94ae] + +2018-01-18 Phil Thompson + + * PyQt5.msp: + Fixes to get QtNetworkAuth to build. + [4d37b274bc0a] + + * lib/configure.py: + Added support for QtNetworkAuth to configure.py. + [4f516477a254] + + * qpy/QtCore/qpycore_qpair.sip: + Implemented the mapped typ etemplate for QPair needed by + QtNetworkAuth. + [4657c9ea8733] + +2018-01-17 Phil Thompson + + * PyQt5.msp: + Added initial support for QtNetworkAuth. + [ddbbb40ddf1e] + + * PyQt5.msp: + Updated QtWidgets for Qt v5.10.0. + [dadfd4f1295c] + + * PyQt5.msp: + Updated QtTest, QtWebChannel, QtWebEngine, QtWebEngineCore, + QtWebEngineWidgets and QtWebSockets for Qt v5.10.0. + [83b53f46e600] + +2018-01-16 Phil Thompson + + * PyQt5.msp: + Updated QtPrintSupport, QtQml, QtQuick, QtQuickWidgets, QtSensors, + QtSerialPort and QtSql for Qt v5.10.0. + [6b6e25ea6792] + + * PyQt5.msp: + Updated QtNetwork, QtNfc, QtOpenGL and QtPositioning for Qt v5.10.0. + [743896f26ce5] + +2018-01-10 Phil Thompson + + * PyQt5.msp: + Updated QtLocation, QtMultimedia and QtMultimediaWidgets for Qt + v5.10.0. + [3289ec6e2f72] + + * PyQt5.msp: + Updated QtGui for Qt v5.10.0. + [fcec94307c8f] + + * PyQt5.msp: + Updated QtDBus, QtDesigner, QtHelp, QtSvg, QtXml and QtXmlPatterns + for Qt v5.10.0. + [8fad1106423b] + +2018-01-09 Phil Thompson + + * qpy/QtCore/qpycore_qobject_helpers.cpp: + Properly fixed a regression in QObject.inherits(). + [92cbc384946a] + + * PyQt5.msp: + Finished updating QtCore for Qt v5.10.0. + [3dcac7147ec6] + +2018-01-08 Phil Thompson + + * PyQt5.msp: + Started to update QtCore for Qt v5.10.0. + [c18a11bf815d] + + * PyQt5.msp: + Updated QtBluetooth for Qt v5.10.0. + [df5635ee7bf6] + + * Merged the 5.9-maint branch into the trunk. + [e973de99d35d] + +2018-01-05 Phil Thompson + + * pyuic/uic/Compiler/qobjectcreator.py, + pyuic/uic/Loader/qobjectcreator.py, pyuic/uic/widget- + plugins/qtcharts.py: + Fixed pyuic's handling of widget implemented in a C++ namespace + (specifically QChartView). + [338e6a251aee] <5.9-maint> + +2017-12-20 Phil Thompson + + * pyrcc/pyrcc_main.py: + Fixed the handling of arguments to pyrcc5. + [7d9643a53c66] <5.9-maint> + + * lib/configure.py: + Fixed out-of-tree builds. + [573d3b66d402] <5.9-maint> + +2017-12-16 Phil Thompson + + * lib/configure.py: + Fixes for building in a Windows venv. + [1003c37c2cb5] <5.9-maint> + +2017-12-12 Phil Thompson + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Die more gracefully when attempting to connect to a Python method + with a non-ASCII name. + [0d30a9b8441b] <5.9-maint> + +2017-11-24 Phil Thompson + + * pyuic/uic/properties.py: + Fixed a bug in loadUi() handling gradients. + [0aef34d2beb2] <5.9-maint> + +2017-11-23 Phil Thompson + + * .hgtags: + Added tag 5.9.2 for changeset 7fac90c2d528 + [02e55c83f900] <5.9-maint> + + * NEWS: + Released as v5.9.2. + [7fac90c2d528] [5.9.2] <5.9-maint> + + * PyQt5.msp: + Updated for Qt v5.9.3. + [5fffc2c72bd5] <5.9-maint> + +2017-11-21 Phil Thompson + + * PyQt5.msp: + Added /NewThread/ to QRunnable::run(). + [17c89f899276] <5.9-maint> + +2017-11-19 Phil Thompson + + * qpy/QtCore/qpycore_event_handlers.cpp: + Ignore destroyed QObjects when there is no interpreter. + [276966407f1c] <5.9-maint> + +2017-11-18 Phil Thompson + + * QtAndroidExtras/qtandroid.sip: + Fixed the name of the QtAndroid header file. + [58b1a3f4108d] <5.9-maint> + + * QtAndroidExtras/qtandroid.sip: + Fixed the name of the QtAndroid namespace. + [87890f4acfe5] <5.9-maint> + +2017-11-15 Phil Thompson + + * QtAndroidExtras/qtandroid.sip: + Added the missing QtAndroid .sip file. + [ee26f550ab15] <5.9-maint> + + * QtMacExtras/qmacpasteboardmime.sip, QtMacExtras/qmactoolbar.sip, + QtMacExtras/qmactoolbaritem.sip: + Fixed QtMacExtras for iOS. + [058934cee148] <5.9-maint> + + * QtAndroidExtras/QtAndroidExtrasmod.sip: + Added the QtAndroid namespace to QtAndroidExtras. + [170c3a17042e] <5.9-maint> + +2017-11-14 Phil Thompson + + * lib/configure.py: + Check that user supplied module names are valid. + [b1154438a794] <5.9-maint> + +2017-11-10 Phil Thompson + + * QtAndroidExtras/QtAndroidExtrasmod.sip, + QtAndroidExtras/qandroidjniobject.sip, lib/configure.py: + Added the QtAndroidExtras module containing a sub-set of the + QAndroidJniObject class. + [bad8eb717c80] <5.9-maint> + +2017-11-06 Phil Thompson + + * PyQt5.msp: + Restored QUrl.query() for Qt v5.9.0 and earlier. + [3a40388e51bc] <5.9-maint> + +2017-11-02 Phil Thompson + + * lib/configure.py: + Module .pro fixes for static builds. + [08ccbbe1325c] <5.9-maint> + + * lib/configure.py: + Extension modules on macOS are now bundles rather than shared + libraries. + [2f298782351f] <5.9-maint> + + * .hgtags: + Added tag 5.9.1 for changeset 6a8d6710ba64 + [b68eec6b9b94] <5.9-maint> + + * NEWS: + Released as v5.9.1. + [6a8d6710ba64] [5.9.1] <5.9-maint> + + * lib/configure.py: + Windows-specific fixes related to the detection of sip version + mismatches. + [2a30790477c1] <5.9-maint> + +2017-11-01 Phil Thompson + + * lib/configure.py: + Further fixes for --sip-incdir. + [4859965322a4] <5.9-maint> + + * lib/configure.py: + Fixed the handling of the --sip-incdir option. + [e1ac86a6bc52] <5.9-maint> + + * config-tests/cfgtest_QtCore.cpp, lib/configure.py: + configure.py now makes sure that the version numbers of the sip code + generator and sip.h match. + [d5b36b960994] <5.9-maint> + + * lib/configure.py: + Added the --allow-sip-warnings option to configure.py. + [f4eebe2a30ee] <5.9-maint> + +2017-10-31 Phil Thompson + + * qpy/QtCore/qpycore_event_handlers.cpp: + Release the GIL when connecting a QObject monitor because of + reported deadlocks. + [f945685fa2b5] <5.9-maint> + +2017-10-07 Phil Thompson + + * PyQt5.msp: + Added support for Qt v5.9.2. + [f2ddcf108add] <5.9-maint> + + * PyQt5.msp: + Rescanned QUrl with the fixed metasip to fix code that may not be + able to be handled by old versions of GCC. There will probably be + other cases but the only solution woukd be to rescan every single + class. + [dd92e57fbfaa] <5.9-maint> + +2017-10-06 Phil Thompson + + * pyuic/uic/uiparser.py: + Fixed pyuic handling of margins of QWidgets that are not layout + widgets. + [ee2eef5d82ee] <5.9-maint> + +2017-09-22 Phil Thompson + + * pyuic/uic/uiparser.py: + Fixed the default margins of nested layouts. + [0e7d014185b6] <5.9-maint> + +2017-09-06 Phil Thompson + + * qpy/QtCore/qpycore_event_handlers.cpp: + Fixed a memory leak caused by multiple identical connections when + monitoring a QObject's lifecycle. + [0abf2886cbef] <5.9-maint> + +2017-09-05 Phil Thompson + + * examples/ipc/sharedmemory/sharedmemory.py: + Fixed the shared memeory example. + [718b731a63a8] <5.9-maint> + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_qlist.sip, qpy/QtGui/qpygui_qlist.sip, + qpy/QtGui/qpygui_qpair.sip, + qpy/QtMultimedia/qpymultimedia_qlist.sip, + qpy/QtNetwork/qpynetwork_qhash.sip, + qpy/QtPrintSupport/qpyprintsupport_qlist.sip, + qpy/QtWidgets/qpywidgets_qlist.sip: + Removed all calls to sipCanConvertToEnum(). + [c75deb889b1e] <5.9-maint> + +2017-08-31 Phil Thompson + + * qpy/QtCore/qpycore_enums_flags.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_qhash.sip, + qpy/QtCore/qpycore_qlist.sip, qpy/QtCore/qpycore_qmap.sip, + qpy/QtCore/qpycore_qmessagelogger.cpp, qpy/QtCore/qpycore_qpair.sip, + qpy/QtCore/qpycore_qvector.sip, qpy/QtGui/qpyopengl_value_array.cpp, + qpy/QtQml/qpyqmllistproperty.cpp: + Removed all calls to SIPLong_AsLong(). + [326d7caa3d2e] <5.9-maint> + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_qjsonvalue.cpp, qpy/QtCore/qpycore_qlist.sip, + qpy/QtGui/qpygui_qlist.sip, qpy/QtGui/qpygui_qpair.sip, + qpy/QtMultimedia/qpymultimedia_qlist.sip, + qpy/QtNetwork/qpynetwork_qhash.sip, + qpy/QtPrintSupport/qpyprintsupport_qlist.sip, + qpy/QtQml/qpyqml_qjsvalue.cpp, qpy/QtWidgets/qpywidgets_qlist.sip: + Migrated all handwritten code to use sipConvertToEnum(). + [8f3251301f87] <5.9-maint> + +2017-08-30 Phil Thompson + + * rb-product: + SIP v4.19.4 is now required. + [302c09890e23] <5.9-maint> + +2017-07-25 Phil Thompson + + * pyrcc/pyrcc_main.py, pyrcc/pyrccmod.sip, qpy/pyrcc/rcc.h: + Removed the unimplemented -name option to pyrcc. + [307cff7f1dbb] <5.9-maint> + +2017-07-22 Phil Thompson + + * PyQt5.msp: + Fixed QTabBar when built without accessibility support. + [0c5314852dd2] <5.9-maint> + +2017-07-16 Phil Thompson + + * lib/configure.py: + Fixed the configuration tests' handling of disabled features. + [1a7f9ba28fed] <5.9-maint> + +2017-07-10 Phil Thompson + + * qpy/QtBluetooth/qpybluetooth_qlist.sip, qpy/QtCore/qjsonarray.sip, + qpy/QtCore/qpycore_qlist.sip, qpy/QtCore/qpycore_qset.sip, + qpy/QtCore/qpycore_qvector.sip, qpy/QtCore/qstringlist.sip, + qpy/QtGui/qpygui_qvector.sip, + qpy/QtMultimedia/qpymultimedia_qlist.sip, + qpy/QtPrintSupport/qpyprintsupport_qlist.sip, + qpy/QtWidgets/qpywidgets_qlist.sip: + Clear the exception whenever PyObject_GetIter() fails when checking + if an object can be converted. + [07fc1c2b14a6] <5.9-maint> + + * PyQt5.msp: + Release the GIL on all QThreadPool methods that access the internal + mutex. + [f710d0e81300] <5.9-maint> + +2017-07-03 Phil Thompson + + * .hgtags: + Added tag 5.9 for changeset 307fa2afedd4 + [d84f568cd92f] + + * NEWS: + Released as v5.9. + [307fa2afedd4] [5.9] + +2017-07-02 Phil Thompson + + * sphinx/api_details/qjsonarray.rst, + sphinx/api_details/qjsonobject.rst, + sphinx/api_details/qjsonvalue.rst, sphinx/api_metadata.cfg, + sphinx/class_reference.rst, sphinx/conf.py, sphinx/dbus.rst, + sphinx/deploy_commercial.rst, sphinx/deprecations.rst, + sphinx/designer.rst, sphinx/extension_api.rst, sphinx/gotchas.rst, + sphinx/i18n.rst, sphinx/incompatibilities.rst, sphinx/index.rst, + sphinx/installation.rst, sphinx/introduction.rst, + sphinx/metaobjects.rst, sphinx/multiinheritance.rst, + sphinx/opengl.rst, sphinx/pickle.rst, sphinx/platforms.rst, + sphinx/pyqt4_differences.rst, sphinx/pyqt_qsettings.rst, + sphinx/pyqt_qvariant.rst, sphinx/python_shell.rst, sphinx/qml.rst, + sphinx/qt_interfaces.rst, sphinx/qt_properties.rst, + sphinx/resources.rst, sphinx/signals_slots.rst, + sphinx/static/classic.css, sphinx/static/logo.png, + sphinx/static/logo_tn.ico: + Remove the documentation. + [c10072f0b507] + +2017-07-01 Phil Thompson + + * PyQt5.msp: + Updated for Qt v5.9.1. + [a19c481d1d26] + +2017-06-15 Phil Thompson + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Removed some assumptions about a slot receiver when it is a method. + [e32538351d89] + +2017-06-11 Phil Thompson + + * lib/configure.py: + The .sip files of all public modules are now installed even if the + module has not been built. + [d5785dc95062] + + * .hgignore: + Ignore .pyc files. + [e9483645c942] + +2017-06-10 Phil Thompson + + * lib/configure.py: + Deal with the incompatibilities introduced in Qt v5.9.0 in the + Windows specs. + [ccaae0890fa8] + + * config-tests/cfgtest_QtCore.cpp, config-tests/cfgtest_QtGui.cpp, + config-tests/cfgtest_QtNetwork.cpp, config- + tests/cfgtest_QtPrintSupport.cpp, lib/configure.py: + Refactored the configuration tests so that they properly deal with + the build system incompatibilities introduced in Qt v5.8.0. + [5bff9174bdf5] + +2017-06-06 Phil Thompson + + * qpy/QtCore/qpycore_event_handlers.cpp, + qpy/QtCore/qpycore_event_handlers.h: + Fixed the QObject monitoring to deal with the argument of the + destroyed() signal. + [e600f5863011] + +2017-06-05 Phil Thompson + + * sphinx/conf.py: + Updated the documentation copyright notice. + [307e1590d17a] + +2017-06-04 Phil Thompson + + * PyQt5.msp: + Completed the updates for Qt v5.9.0. + [3f8fdcacc41e] + + * PyQt5.msp, sphinx/api_metadata.cfg: + Updated QtWebEngineCore for Qt v5.9.0. + [2a44428921a5] + + * PyQt5.msp, lib/SubclassCode/QtWebEngine.versions, + sphinx/api_metadata.cfg: + Updated QtWebEngine for Qt v5.9.0. + [200385c3790c] + + * PyQt5.msp, lib/SubclassCode/QtSensors.versions, + sphinx/api_metadata.cfg: + Updated QtSensors for Qt v5.9.0. + [4f978799eaed] + + * PyQt5.msp: + Update QtQml, QtQuick and QtWidgets for Qt v5.9.0. + [e4dce2d967dc] + + * PyQt5.msp, sphinx/api_metadata.cfg: + Updated QtNfc and QtPositioning for Qt v5.9.0. + [e96fbd85d316] + + * PyQt5.msp, sphinx/api_metadata.cfg: + Updated QtLocation and QtNetwork for Qt v5.9.0. + [66167aa051e8] + +2017-06-03 Phil Thompson + + * PyQt5.msp, sphinx/api_metadata.cfg: + Updated QtHelp for Qt v5.9.0. + [5ab49587596b] + + * PyQt5.msp: + Updated QtGui for Qt v5.9.0. + [8c2adf7c6678] + +2017-06-01 Phil Thompson + + * PyQt5.msp, sphinx/api_metadata.cfg: + Completed QtCore for Qt v5.9.0. + [c1647883b06a] + +2017-05-31 Phil Thompson + + * PyQt5.msp: + Started work on Qt v5.9.0. + [45fb92dcc67b] + +2017-05-30 Phil Thompson + + * lib/LICENSE.commercial, lib/LICENSE.commercial.short, + lib/LICENSE.gpl, lib/LICENSE.gpl.short, lib/LICENSE.internal, + lib/RaspberryPi/configuration.txt: + Merged the 5.8-maint branch with the trunk. + [15759489c83d] + + * .hgignore: + Updated .hgignore for the changed build directory. + [5507908d36d4] <5.8-maint> + + * lib/README, lib/RaspberryPi/configuration.txt: + Minor tidy ups. + [ce0390f84167] <5.8-maint> + +2017-05-27 Phil Thompson + + * qpy/QtCore/qpycore_event_handlers.cpp, + qpy/QtCore/qpycore_event_handlers.h, + qpy/QtCore/qpycore_post_init.cpp.in, rb-product: + Added the event handlers to implement detection of the destruction + of QObject instances created by C++. + [3312bc9f9693] <5.8-maint> + +2017-05-24 Phil Thompson + + * lib/configure.py: + Improved the reproduceability of builds. + [8c18ae66b8a3] <5.8-maint> + +2017-05-23 Phil Thompson + + * lib/configure.py: + Make the output of configure.py easier to read with --verbose. + [ebc3188b638c] <5.8-maint> + + * PyQt5.msp: + Fixed QGuiApplication for when there is no session management. + [f01c1372343b] <5.8-maint> + +2017-04-27 Phil Thompson + + * test/tests/classes/test_QObject.py: + Fixed the new QObject.inherits() unit test. + [05140ab844bf] <5.8-maint> + + * qpy/QtCore/qpycore_qobject_helpers.cpp, + test/tests/classes/test_QObject.py: + Fixed a regression in the qt_metacast() helper. + [412e7be14d1f] <5.8-maint> + + * qpy/QtCore/qpycore_chimera.cpp: + Reverted the part of changeset 1281 related to dict and QVariantMap. + [71b9958bad49] <5.8-maint> + +2017-04-18 Phil Thompson + + * sphinx/designer.rst: + Corrected the pyuic5 documentation. + [bba9257ee0f6] <5.8-maint> + +2017-04-17 Phil Thompson + + * examples/itemviews/interview/images/interview.png, + examples/itemviews/interview/images/services.png, + examples/itemviews/interview/interview.py, + examples/qtdemo/examples.xml: + Added the interview.py example from Hans-Peter Jansen. + [c9fd1cdbc210] <5.8-maint> + + * examples/itemviews/frozencolumn/frozencolumn.py, + examples/itemviews/frozencolumn/grades.txt, + examples/qtdemo/examples.xml: + Added the frozencolumn.py example from Hans-Peter Jansen. + [7fb636b504e8] <5.8-maint> + + * examples/itemviews/storageview.py, examples/qtdemo/examples.xml: + Added the storageview.py example from Hans-Peter Jansen. + [f98741ba3c82] <5.8-maint> + + * examples/itemviews/editabletreemodel/editabletreemodel.py: + Updates to the editabletreemodel.py example from Hans-Peter Jansen. + [76d240529c4c] <5.8-maint> + + * examples/itemviews/dirview.py: + Updated the dirview.py example from Hans-Peter Jansen. + [c588f6571970] <5.8-maint> + + * examples/itemviews/combowidgetmapper.py: + Fixes for the combowidgetmapper.py example from Hans-Peter Jansen. + [81cbf58f3bcf] <5.8-maint> + + * PyQt5.msp: + Implemented __hash__() for QFlags. + [7766a40af0d6] <5.8-maint> + +2017-04-05 Phil Thompson + + * examples/itemviews/pixelator/pixelator.py: + Fixes for the pixelator.py example. + [2c3574fb346f] <5.8-maint> + + * PyQt5.msp: + Implemented the non-argument overloads of the toSubpathPolygons(), + toFillPolygons() and toFillPolygon() methods of QPainterPath. + [af1fdb5e696d] <5.8-maint> + + * examples/itemviews/chart/chart.py: + Fixed issues with the chart.py example. + [86ca9f21d8ee] <5.8-maint> + + * examples/itemviews/spinboxdelegate.py: + Updated the spinboxdelegate.py example to match the current C++ + version. + [6d27e01c70b5] <5.8-maint> + +2017-04-03 Phil Thompson + + * examples/quick/animation/animation_rc.py, + examples/quick/canvas/canvas_rc.py, + examples/quick/models/abstractitemmodel/abstractitemmodel_rc.py, + examples/quick/models/objectlistmodel/objectlistmodel_rc.py, + examples/quick/models/stringlistmodel/stringlistmodel_rc.py, + examples/quick/scenegraph/customgeometry/customgeometry_rc.py, + examples/quick/shared/shared_rc.py: + Updated all the pyrcc output to use v2 where QML files are stored. + [0e09475f02d3] <5.8-maint> + + * qpy/pyrcc/rcc.cpp, qpy/pyrcc/rcc.h: + Added support for v2 of the resource file format to pyrcc. + [bc8a379011ca] <5.8-maint> + +2017-03-30 Phil Thompson + + * .hgtags: + Added tag 5.8.2 for changeset 96c86cda6415 + [833d4681ee3d] <5.8-maint> + + * NEWS: + Released as v5.8.2. + [96c86cda6415] [5.8.2] <5.8-maint> + +2017-03-29 Phil Thompson + + * lib/configure.py: + Fixes for the OpenGL detection needed by the incompatible + configuration changes in Qt v5.8.0. + [bf6caed84fd3] <5.8-maint> + +2017-03-27 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + When parsing a Python type map list and dict to QVariantList and + QVariantMap. + [e7158e3e2a31] <5.8-maint> + +2017-03-24 Phil Thompson + + * lib/LICENSE.commercial, lib/LICENSE.commercial.short, + lib/LICENSE.gpl, lib/LICENSE.gpl.short, lib/LICENSE.internal: + Remove the license copies that are now part of rb-tools. + [c15cf2c0c055] <5.8-maint> + +2017-03-22 Phil Thompson + + * pyuic/uic/uiparser.py: + Fixed the margins of the top layout in a tab by pyuic. + [f5594ddfb6ee] <5.8-maint> + + * pyuic/uic/driver.py, pyuic/uic/exceptions.py, + pyuic/uic/properties.py, pyuic/uic/pyuic.py: + Improved the error handling of an unknown C++ class. + [c4dab2a95dc6] <5.8-maint> + +2017-03-21 Phil Thompson + + * sphinx/qml.rst: + Added explicit warnings about PyQt's ability to support QML to the + docs. + [e0c7e29a7852] <5.8-maint> + +2017-03-16 Phil Thompson + + * PyQt5.msp: + Added a comment about why opengl_types.sip is included twice. + [95518ec3931a] <5.8-maint> + + * PyQt5.msp: + Only enable QOpenGLTextureBlitter if OpenGL is supported. + [ef351b9d8f03] <5.8-maint> + + * PyQt5.msp: + Avoid a deadlock when using asynchronous image providers in QML. + [33ed4db6949b] <5.8-maint> + +2017-03-07 Phil Thompson + + * .hgtags: + Added tag 5.8.1 for changeset 7426ab9ba43b + [0ddf209259b4] <5.8-maint> + + * NEWS: + Released as v5.8.1. + [7426ab9ba43b] [5.8.1] <5.8-maint> + +2017-03-03 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + Special case a QVariant containing std::nullptr_t. + [001ad7fc01fb] <5.8-maint> + +2017-02-27 Phil Thompson + + * METADATA.in: + Updated the Requires-Dist meta-data so it includes the values from + the release file. + [2933ac7bf19d] <5.8-maint> + +2017-02-24 Phil Thompson + + * lib/configure.py: + Disable desktop OpenGL if OpenGLES v3 or v3.1 is detected. + [4ba0f0b49e2a] <5.8-maint> + + * qpy/QtQml/qpyqml_register_type.cpp: + Fixed the handling of properties in Qml because of changes to the + internals in Qt v5.8.0. + [feeab3eb94fa] <5.8-maint> + +2017-02-22 Phil Thompson + + * PyQt5.msp: + Fixed QLocale.toString() for Python v2. + [027b070ff19e] <5.8-maint> + + * PyQt5.msp: + Anticipate that Qt v5.9.0 will be released before Qt v5.8.1 to avoid + problems building PyQt v5.9 against Qt v5.8.1. + [6022c9537b69] <5.8-maint> + +2017-02-21 Phil Thompson + + * qpy/QtPrintSupport/qpyprintsupport_qlist.sip: + The QtPrintSupport mapped types are only included if printers are + supported. + [7b3afef45f92] <5.8-maint> + + * sphinx/pyqt_qvariant.rst: + Updated the docs regarding support for QVariant. + [657a7b5e45ce] <5.8-maint> + +2017-02-16 Phil Thompson + + * qpy/QtQml/qpyqmlobject.cpp: + Fixed signals in QML registered types that are defined in a Python + sub-class of the registered type. + [e5d27b6ce571] <5.8-maint> + +2017-02-15 Phil Thompson + + * .hgtags: + Added tag 5.8 for changeset a04bf1746ae4 + [f12c11450b7f] + + * NEWS: + Released as v5.8. + [a04bf1746ae4] [5.8] + +2017-02-13 Phil Thompson + + * PyQt5.msp: + More SSL support fixes. + [f3e90b840b5f] + + * PyQt5.msp: + Fixed building without SSL support. + [0c33c8cce200] + + * sphinx/installation.rst, sphinx/qml.rst: + Some documentation clarifications. + [79b2d4a5368c] + +2017-02-09 Phil Thompson + + * qmlscene/pluginloader.cpp, qmlscene/qmlscene.pro-in: + The qmlscene plugin now loads the Python library with exported + symbols. + [03722ff7eea9] + +2017-02-08 Phil Thompson + + * PyQt5.msp, qpy/QtGui/qpyopengl_api.h, qpy/QtGui/qpyopengl_get.cpp: + Improved the support in the other glGet functions. + [e97a57356d73] + +2017-02-07 Phil Thompson + + * PyQt5.msp, qpy/QtGui/qpyopengl_api.h, qpy/QtGui/qpyopengl_get.cpp, + qpy/QtGui/qpyopengl_init.cpp: + Improved the support for glGetFloatv(). + [0e9414c6c2ad] + +2017-02-01 Phil Thompson + + * qpy/QtCore/qwineventnotifier.sip: + Hopefully fixed the QWinEventNotifier.activated() signal. + [0c65b46fa231] + + * lib/configure.py, sphinx/installation.rst: + On Windows a debug build of Python is needed if --debug is specified + (and vice versa). + [badca59b38be] + +2017-01-31 Phil Thompson + + * qpy/QtCore/qpycore_qhash.sip, qpy/QtCore/qpycore_qlist.sip, + qpy/QtCore/qpycore_qset.sip: + Disable the garbage collector while wrapping multiple C++ instances + in case some of those instances would be destroyed if the garbage + collector was run. + [652a401092f3] + + * qpy/QtCore/qsysinfo.sip: + Updated QSysInfo for Qt v5.8.0. + [104d002e3fc0] + +2017-01-29 Phil Thompson + + * PyQt5.msp: + Release the GIL in QmlApplicationEngine ctors. + [85a18ee47e51] + + * PyQt5.msp: + Updated QtWebSockets, QtWidgets, QtXml and QtXmlPatterns for Qt + v5.8.0. + [8fdb72bca3b5] + +2017-01-28 Phil Thompson + + * PyQt5.msp: + Updated QtSensors, QtSerialPort, QtSql, QtSvg, QtTest, QtWebChannel, + QtWebEngine, QtWebEngineCore and QtWebEngineWidgets for Qt v5.8.0. + [cf1faa2c9606] + + * PyQt5.msp, sphinx/api_metadata.cfg: + Updated QtQml, QtQuick and QtQuickWidgets for Qt v5.8.0. + [2459038a6733] + + * PyQt5.msp, sphinx/api_metadata.cfg: + Updated QtHelp, QtLocation, QtMultimedia, QtMultimediaWidgets, + QtNetwork, QtNfc, QtOpenGL, QtPositioning and QtPrintSupport for Qt + v5.8.0. + [d0eeb8270f29] + + * lib/configure.py: + Updated the configure.py test for QtDesigner to detect the broken Qt + v5.8.0 macOS installer. + [ce70a466f5c9] + +2017-01-24 Phil Thompson + + * PyQt5.msp: + Eliminate a compiler warning message in QtCore. + [99d23c39f9ff] + + * NEWS, PyQt5.msp, lib/configure.py, sphinx/installation.rst: + Updated QtBluetooth, QtCore, QtDBus, QtDesigner, QtGui and + configure.py for Qt v5.8.0. + [daac5fdeb6ee] + + * Makefile, build.py, pyuic/uic/port_v2/invoke.py, + pyuic/uic/port_v2/load_plugin.py, pyuic/uic/port_v3/invoke.py, + pyuic/uic/port_v3/load_plugin.py: + Merged the 5.7-maint branch. + [05971e186d25] + +2017-01-20 Phil Thompson + + * NEWS, PyQt5.msp: + Added __fspath__() to QFileInfo. + [6dbc033e73c4] <5.7-maint> + + * lib/configure.py: + Updated the configure.py test for qreal to allow for QT_COORD_TYPE. + [05bb9d526a1c] <5.7-maint> + + * lib/configure.py, sphinx/installation.rst: + QML debugging is now enabled with a separate --qml-debug option to + configure.py. + [b189f32a6cc7] <5.7-maint> + +2017-01-19 Phil Thompson + + * qpy/QtGui/qpyopengl_value_array.cpp: + Fixed a bug in the handling of Arrays. + [f4e8be0593cc] <5.7-maint> + +2017-01-17 Phil Thompson + + * lib/configure.py, sphinx/installation.rst: + Added the --link-full-dll option to configure.py to force a link + against the full DLL on Windows. + [a5ebf7ca384c] <5.7-maint> + +2017-01-13 Phil Thompson + + * qpy/QtQml/qpyqmlobject.cpp: + Fixed a bug emitting a signal defined in a super-class of a class + registered with QML. + [0e2a24362686] <5.7-maint> + + * qpy/QtQml/qpyqmllistproperty.cpp: + Check that the type argument to QQmlListProperty is a QObject sub- + type. + [67543cbe2445] <5.7-maint> + +2017-01-10 Phil Thompson + + * qpy/QtCore/qpycore_pyqtslotproxy.cpp: + Disabled slot proxies will be ignored when checking for unique + connections. + [7d061b0767d5] <5.7-maint> + + * PyQt5.msp, lib/configure.py, rb-product, sphinx/installation.rst: + Changes required to fix building for debug builds of Python. The + minimum SIP requirement is now v4.19.1. + [945c725e4eae] <5.7-maint> + +2017-01-09 Phil Thompson + + * PyQt5.msp: + Release the GIL on all QQmlComponent ctors that parse QML. + [d9cd45f80515] <5.7-maint> + + * PyQt5.msp: + Fixed problems building QtWebEngine against Qt v5.6. + [8d9460a607dd] <5.7-maint> + +2016-12-25 Phil Thompson + + * .hgtags: + Added tag 5.7.1 for changeset a25b699c3bff + [e6e0f1b22e73] <5.7-maint> + + * NEWS: + Released as v5.7.1. + [a25b699c3bff] [5.7.1] <5.7-maint> + +2016-12-24 Phil Thompson + + * lib/configure.py: + Link against the correct Python DLL when using the limited API. + [b09fa4890933] <5.7-maint> + +2016-12-19 Phil Thompson + + * sphinx/installation.rst: + Updated the pyqtlicense documentation. + [e8d4a7dff111] <5.7-maint> + +2016-12-17 Phil Thompson + + * QAxContainer/qaxobject.sip: + Fixed some very old convertor code in QAxContainer. + [1ca987d031ad] <5.7-maint> + +2016-12-15 Phil Thompson + + * PyQt5.msp: + Updated for Qt v5.7.1. + [5132c77b8800] <5.7-maint> + +2016-12-14 Phil Thompson + + * designer/pluginloader.cpp, designer/pluginloader.h: + The Designer plugin now releases the GIL once all plugins have been + loaded. + [57d8ce89670d] <5.7-maint> + +2016-12-04 Phil Thompson + + * pylupdate/pylupdate_main.py: + pylupdate now generates correct relative paths when -ts is used. + [1ba3c08d40e4] <5.7-maint> + + * pyuic/uic/uiparser.py: + Fixed a crash when a .ui file doesn't contain a button group when it + should. + [5f3cbec20103] <5.7-maint> + +2016-11-25 Phil Thompson + + * sphinx/installation.rst: + Documented the --build-tag command line option to pyqtlicense. + [422623d23a48] <5.7-maint> + +2016-11-23 Phil Thompson + + * pyuic/uic/objcreator.py, pyuic/uic/port_v2/invoke.py, + pyuic/uic/port_v2/load_plugin.py, pyuic/uic/port_v3/invoke.py, + pyuic/uic/port_v3/load_plugin.py, pyuic/uic/pyuic.py: + Removed all pyuic code that required Python v2.5 and earlier. + [446394da9951] <5.7-maint> + + * sphinx/deploy_commercial.rst, sphinx/extension_api.rst, + sphinx/installation.rst, sphinx/introduction.rst, + sphinx/pyqt4_differences.rst: + All references to the website no wuse https. + [16fd5cc19aab] <5.7-maint> + + * qpy/QtQml/qpyqmllistpropertywrapper.cpp: + Fixed the QML support when using the limited API. + [519b2b27c289] <5.7-maint> + +2016-11-14 Phil Thompson + + * qpy/QtCore/qpycore_types.cpp: + Fixed a regression trawling class hierachies using the limited API. + [4333b8ba87fd] <5.7-maint> + +2016-11-12 Phil Thompson + + * sphinx/installation.rst: + Documented the --qt-version option to pyqtlicense. + [d5efc2dd635e] <5.7-maint> + +2016-11-10 Phil Thompson + + * PyQt5.msp: + Added a missing /Out/ annotation to + QWebEnginePage.javaScriptPrompt(). + [c5886ff2dc94] <5.7-maint> + +2016-11-04 Phil Thompson + + * qpy/QtCore/qpycore_qobject_helpers.cpp: + Fixed a regression in the handling of ReadProperty and WriteProperty + in PyQt v5.6 that broke the chapter5-listproperties.py example. + [5c3d541a12a2] <5.7-maint> + +2016-10-26 Phil Thompson + + * PyQt5.msp: + Added QRegion.setRects(). + [a7014a7d4259] <5.7-maint> + + * pyuic/uic/widget-plugins/qtcharts.py, pyuic/uic/widget- + plugins/qtwebenginewidgets.py: + Added widget plugins for QChartView and QWebEngineView. + [29003cce4a88] <5.7-maint> + + * PyQt5.msp: + Added Qt_5_6_2 to the %Timeline and corresponding values for later + versions of Qt v5.6. + [9449a57f8e13] <5.7-maint> + +2016-10-25 Phil Thompson + + * PyQt5.msp, qpy/QtCore/qpycore_qstring.cpp: + Fixed a regression building against Python v2. + [935bb79a7b1c] <5.7-maint> + +2016-10-24 Phil Thompson + + * lib/SubclassCode/mksccode.py: + Updated mksccode.py to match the current handling of hidden + namespaces. + [fbddad196e67] <5.7-maint> + +2016-10-14 Phil Thompson + + * pylupdate/pylupdate_main.py: + Fixed a bad call in pylupdate. + [9a1caa071647] <5.7-maint> + +2016-10-04 Phil Thompson + + * sphinx/api_metadata.cfg: + Added the missing QOpenGLVersionProfile to the documentation. + [ed7f40f61a68] <5.7-maint> + +2016-09-23 Phil Thompson + + * PyQt5.msp, qpy/QtCore/qpycore_qmetaobject.cpp, + qpy/QtGui/qpyopengl_attribute_array.cpp, + qpy/QtGui/qpyopengl_uniform_value_array.cpp, + qpy/QtGui/qpyopengl_value_array.cpp: + Converted all access to the user object to use the new SIP calls. + [71c272511448] <5.7-maint> + + * qpy/QtCore/qpycore_chimera.cpp, qpy/QtCore/qpycore_pyqtsignal.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_types.cpp: + Changes needed by the different way of handling plugin generated + data. + [e9490c8f0819] <5.7-maint> + +2016-09-21 Phil Thompson + + * PyQt5.msp: + Updates for the latest SIP changes. + [1677ae8bd951] <5.7-maint> + +2016-09-19 Phil Thompson + + * PyQt5.msp: + Fixed calls to sipFindType() that were too early. + [f04f4d92ab9b] <5.7-maint> + + * PyQt5.msp: + Fixes for the latest SIP changes. + [81eaffffa555] <5.7-maint> + +2016-09-15 Phil Thompson + + * PyQt5.msp, lib/configure.py, sphinx/api_metadata.cfg, + sphinx/introduction.rst: + Added the QtWebEngine module. + [8c8d065d8148] <5.7-maint> + +2016-09-14 Phil Thompson + + * PyQt5.msp: + The byteArray argume to the QBuffer ctor and setBuffer() method must + be a QByteArray (and not something that can be converted to a + QByteArray) because it needs to outlive the QBuffer instance. + [2976e49222bb] <5.7-maint> + + * PyQt5.msp: + Added a missing /TransferThis/ to the QWebEngineUrlSchemeHandler + ctor. + [29be98207b30] <5.7-maint> + + * qpy/QtQml/qpyqmlobject.cpp: + Use a unique signal when connecting to a proxy model to allow the + model to be used in multiple views. + [cd6fbe437e70] <5.7-maint> + +2016-09-11 Phil Thompson + + * QtMacExtras/QtMacExtrasmod.sip, QtMacExtras/qtmac.sip: + Added the QtMac namespace to the QtMacExtras module. + [581743b7d329] <5.7-maint> + +2016-09-10 Phil Thompson + + * METADATA.in, lib/configure.py, rb-product: + Add configuration information to the product file. Specifiy the + minimal SIP version in the wheel meta-data. + [347419aab38c] <5.7-maint> + +2016-09-09 Phil Thompson + + * qpy/QtGui/qpyopengl_value_array.cpp: + Further changes for sipGetBufferInfo(). + [2dfc32d2117b] <5.7-maint> + + * qpy/QtGui/qpyopengl_value_array.cpp: + Fixed the call to sipGetBufferInfo(). + [842376cb0aa8] <5.7-maint> + +2016-09-08 Phil Thompson + + * qpy/QtCore/qpycore_pyqtproperty.cpp: + Fixed regressions in pyqtProperty. + [a1d6f69fef7a] <5.7-maint> + + * qpy/QtGui/qpyopengl_attribute_array.cpp, qpy/QtGui/qpyopengl_misc.h, + qpy/QtGui/qpyopengl_uniform_value_array.cpp, + qpy/QtGui/qpyopengl_value_array.cpp: + Fixed the limited API changes when using the PySequence_Fast_*() + macros. + [04fe0b23b049] <5.7-maint> + + * QAxContainer/QAxContainermod.sip, QAxContainer/qaxbase.sip, + QtMacExtras/QtMacExtrasmod.sip, QtWinExtras/QtWinExtrasmod.sip, + QtX11Extras/QtX11Extrasmod.sip, pylupdate/pylupdatemod.sip, + pyrcc/pyrccmod.sip: + The handwritten modules now all use the limited API. + [939cc11b2007] <5.7-maint> + + * qpy/QtBluetooth/qpybluetooth_qlist.sip, + qpy/QtBluetooth/qpybluetooth_quint128.sip: + QtBluetooth now uses the limited API. + [dec01d730da6] <5.7-maint> + +2016-09-07 Phil Thompson + + * qpy/QtDBus/qpydbus_chimera_helpers.cpp: + QtDBus now uses the limited API. + [82a0acefefd3] <5.7-maint> + + * qpy/QtWidgets/qpywidgets_qlist.sip: + QtWidgets now uses the limited API. + [16de076d88c6] <5.7-maint> + + * qpy/QtQuick/qpyquick_chimera_helpers.cpp: + QtQuick now uses the limited API. + [a834a23d561b] <5.7-maint> + + * qpy/QtQml/qpyqml_post_init.cpp, qpy/QtQml/qpyqml_qjsvalue.cpp, + qpy/QtQml/qpyqml_register_singleton_type.cpp, + qpy/QtQml/qpyqml_register_type.cpp, + qpy/QtQml/qpyqmllistproperty.cpp, qpy/QtQml/qpyqmllistproperty.h, + qpy/QtQml/qpyqmllistproperty.sip, + qpy/QtQml/qpyqmllistpropertywrapper.cpp, + qpy/QtQml/qpyqmllistpropertywrapper.h: + QtQml now uses the limited API. + [486082bf4be5] <5.7-maint> + + * qpy/QtPrintSupport/qpyprintsupport_qlist.sip: + QtPrintSupport now uses the limited API. + [b8c0b62a20a7] <5.7-maint> + + * qpy/QtNetwork/qpynetwork_qhash.sip, + qpy/QtNetwork/qpynetwork_qmap.sip: + QtNetwork now uses the limited API. + [82798213e9a3] <5.7-maint> + + * qpy/QtMultimedia/qpymultimedia_qlist.sip: + QtMultimedia now uses the limited API. + [6f34d2b297ce] <5.7-maint> + + * PyQt5.msp, qpy/QtGui/qpygui_qlist.sip, qpy/QtGui/qpygui_qpair.sip, + qpy/QtGui/qpygui_qvector.sip, + qpy/QtGui/qpyopengl_array_convertors.cpp, + qpy/QtGui/qpyopengl_attribute_array.cpp, + qpy/QtGui/qpyopengl_data_cache.cpp, + qpy/QtGui/qpyopengl_data_cache.h, qpy/QtGui/qpyopengl_init.cpp, + qpy/QtGui/qpyopengl_uniform_value_array.cpp, + qpy/QtGui/qpyopengl_value_array.cpp, + qpy/QtGui/qpyopengl_version_functions.cpp: + QtGui now uses the limited API. + [937e89e76d2d] <5.7-maint> + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.h, + qpy/QtCore/qpycore_pyqtmethodproxy.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.h, + qpy/QtCore/qpycore_pyqtproperty.cpp, + qpy/QtCore/qpycore_pyqtproperty.h, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_pyqtsignal.h: + More limited API changes - QtCore now compiles and loads. + [d9f7295c5dd7] <5.7-maint> + + * qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_types.cpp, qpy/QtCore/qpycore_types.h: + More limited API changes. + [00a8fbb9f360] <5.7-maint> + +2016-09-05 Phil Thompson + + * qpy/QtCore/qpycore_qstring.cpp: + The QString convertors now use the limited API. + [f57db32b0b5d] <5.7-maint> + + * qpy/QtCore/qpycore_objectified_strings.h, + qpy/QtCore/qpycore_post_init.cpp.in, + qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_qjsonvalue.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_types.cpp, qpy/QtCore/qpycore_types.h: + The QObject helpers now use the limited API. + [64c71c6a9ee3] <5.7-maint> + + * qpy/QtCore/qpycore_post_init.cpp.in, + qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.h, + qpy/QtCore/qpycore_pyqtproperty.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_pyqtsignal.h, + qpy/QtCore/qpycore_pyqtslot.cpp, qpy/QtCore/qpycore_types.cpp: + pyqtSignal now uses the limited API. + [9caf7074a4fe] <5.7-maint> + + * lib/configure.py, qpy/QtCore/qpycore_post_init.cpp.in, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.cpp, + qpy/QtCore/qpycore_pyqtproperty.cpp, + qpy/QtCore/qpycore_pyqtproperty.h, qpy/QtCore/qpycore_types.cpp: + Python v3.4 is now needed when using the limited API. pyqtProperty + now uses the limited API. + [4b144ae683bd] <5.7-maint> + + * qpy/QtCore/qpycore_post_init.cpp.in, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.h: + Moved the method proxy type to the limited API. + [ae940422e87f] <5.7-maint> + + * qpy/QtCore/qpycore_post_init.cpp.in, + qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.h, + qpy/QtCore/qpycore_pyqtconfigure.cpp: + The bound signal type is now created using the limited API. + [326cb5271420] <5.7-maint> + +2016-08-30 Phil Thompson + + * qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtslot.cpp: + More limited API changes. + [caef2e592071] <5.7-maint> + + * qpy/QtCore/qpycore_misc.cpp: + Use sipCheckPluginForType(). + [97c12d786d1e] <5.7-maint> + +2016-08-29 Phil Thompson + + * qpy/QtCore/qpycore_enums_flags.cpp, qpy/QtCore/qpycore_types.cpp: + Use sipPyTypeDict() where appropriate. + [eb2d099a8804] <5.7-maint> + + * qpy/QtCore/qpycore_classinfo.cpp, + qpy/QtCore/qpycore_enums_flags.cpp: + Used sipGetFrame() where appropriate. + [1d3dbd765934] <5.7-maint> + + * qpy/QtCore/qpycore_chimera.cpp: + Use sipIsUserType(). + [45310e53497b] <5.7-maint> + + * PyQt5.msp, qpy/QtCore/qpycore_pyqtsignal.cpp, + qpy/QtCore/qpycore_qlist.sip, qpy/QtCore/qpycore_qpair.sip, + qpy/QtCore/qpycore_qvector.sip: + Refactored the date/time conversions to use the new SIP calls. + [3705eb12433a] <5.7-maint> + +2016-08-28 Phil Thompson + + * PyQt5.msp, qpy/QtCore/qjsonarray.sip, qpy/QtCore/qjsonobject.sip, + qpy/QtCore/qpycore_chimera.cpp, qpy/QtCore/qpycore_enums_flags.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_qhash.sip, + qpy/QtCore/qpycore_qlist.sip, qpy/QtCore/qpycore_qmap.sip, + qpy/QtCore/qpycore_qobject_getattr.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_qpair.sip, qpy/QtCore/qpycore_qset.sip, + qpy/QtCore/qpycore_qvector.sip, qpy/QtCore/qpycore_types.cpp, + qpy/QtCore/qstringlist.sip: + Remove references to tp_name. + [f7f509727431] <5.7-maint> + + * PyQt5.msp, qpy/QtCore/qjsonarray.sip, + qpy/QtCore/qpycore_chimera.cpp, qpy/QtCore/qpycore_decorators.cpp, + qpy/QtCore/qpycore_enums_flags.cpp, + qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.cpp, + qpy/QtCore/qpycore_pyqtpyobject.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_pyqtslot.cpp, + qpy/QtCore/qpycore_qlist.sip, qpy/QtCore/qpycore_qmap.sip, + qpy/QtCore/qpycore_qmessagelogger.cpp, + qpy/QtCore/qpycore_qmetaobject_helpers.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_qstring.cpp, + qpy/QtCore/qpycore_qvariant_value.cpp, + qpy/QtCore/qpycore_qvector.sip, qpy/QtCore/qpycore_types.cpp, + qpy/QtCore/qstringlist.sip: + Started to switch over from the fast macros to the limited API + versions. + [806af319f405] <5.7-maint> + +2016-08-26 Phil Thompson + + * PyQt5.msp, lib/configure.py, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_post_init.cpp.in, qpy/QtCore/qpycore_types.cpp, + qpy/QtCore/qpycore_types.h, qpy/QtQml/qpyqmlobject.h: + Eliminated the PyQt-specific meta-type. + [b88f1ef8bcb0] <5.7-maint> + +2016-08-24 Phil Thompson + + * PyQt5.msp: + Enabled the limited API for all modules. + [937556c0ec2b] <5.7-maint> + + * PyQt5.msp: + Updated the %BIGetBufferCode for the limited API. + [94deb582b250] <5.7-maint> + + * lib/configure.py: + Updated configure.py to set Py_LIMITED_API for qpy code. + [236a19384c91] <5.7-maint> + +2016-08-23 Phil Thompson + + * PyQt5.msp: + toString() and toCurrencyString() of QLocale now only overflow if + they really have to. + [f850c5c9f5b1] <5.7-maint> + + * qpy/QtCore/qpycore_qobject_helpers.cpp: + Fixed QObject.inherits(). + [c7e1a7efb2bf] <5.7-maint> + +2016-08-18 Phil Thompson + + * lib/configure.py: + Build modules with 'exceptions_off' rather than special case g++ and + clang. Build static modules with 'hide_symbols' to avoid OS X weak + symbol warnings. + [f02239f94d5e] <5.7-maint> + +2016-08-08 Phil Thompson + + * Makefile, build.py: + Removed the old internal build system. + [633d0f7fe1b7] <5.7-maint> + +2016-08-03 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + Reverted the conversion of bytes to 'const char *' as the latter is + not supported by QMetaType and gives QSignalSpy a problem. + [75a3228c629a] <5.7-maint> + + * qpy/pylupdate/pylupdate.h: + Fixed the pylupdate changes. + [02a9da7b1643] <5.7-maint> + +2016-07-27 Phil Thompson + + * pylupdate/pylupdate_main.py, pylupdate/pylupdatemod.sip, + qpy/pylupdate/merge.cpp: + Moved a pylupdate progress message to C++ to avoid out-of-order + messages. + [6f932fba5b39] <5.7-maint> + + * sphinx/introduction.rst: + Clarified the docs intro about the inclusion of Qt in wheels. + [8d01fcc7cdd0] <5.7-maint> + +2016-07-25 Phil Thompson + + * METADATA.in: + Removed the Obsoletes tag from METADATA. + [3055d670d1da] + + * .hgtags: + Added tag 5.7 for changeset 5e459651a5cb + [bb3ddca217a0] + + * NEWS: + Released as v5.7. + [5e459651a5cb] [5.7] + + * lib/configure.py: + Simplified the setting of PATH to include the qmake directory. + [8b1b53bd60b1] + +2016-07-24 Phil Thompson + + * pylupdate/pylupdate_main.py, pyrcc/pyrcc_main.py, + pyuic/uic/pyuic.py: + Provided pylupdate, pyrcc and pyuic with main() wrappers that are + invoked by pip generated wrappers. + [0be6588d6b5c] + +2016-07-22 Phil Thompson + + * lib/configure.py: + When --qmake is used on Windows add the directory containing qmake + to PATH. + [c9fb16354936] + + * NEWS: + Updated the NEWS file. + [fd3b3f3e721c] + +2016-07-19 Phil Thompson + + * METADATA.in: + Updates to METADATA. + [24491cc4092b] + +2016-07-17 Phil Thompson + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Fixed the error message when an attempt is made to connect to a + pyqtSlot decorated method of a non-QObject class. + [84bb348755e1] + +2016-07-12 Phil Thompson + + * pylupdate/pylupdate_main.py: + Make sure the progress messages from pylupdate appear in the right + order. + [975fc04a1d1d] + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Further fixes for choosing the right pyqtSlot decorator for a + signal. + [96281e6eb259] + +2016-07-11 Phil Thompson + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Fixed an out-of-bound index regression. + [d4fcde1ad4e1] + +2016-07-07 Phil Thompson + + * PyQt5.msp: + Completed the support for Qt v5.7.0. + [877c3a8a6cbd] + + * PyQt5.msp: + Updated QtWidgets for Qt v5.7.0. + [4f59eafc77cf] + +2016-07-06 Phil Thompson + + * PyQt5.msp, sphinx/api_metadata.cfg: + Updated most of QtWebEngineWidgets for Qt v5.7.0. + [ca2289d9d0d0] + + * PyQt5.msp: + Updated QtGui for Qt v5.7.0. + [02bfa6bb3c5d] + + * PyQt5.msp: + Updated QtCore for Qt v5.7.0. + [d9bf4daa7994] + +2016-07-05 Phil Thompson + + * PyQt5.msp: + Added some Qt v5.7.0 support. + [7e56302498df] + +2016-06-30 Phil Thompson + + * PyQt5.msp: + Initial scan of Qt v5.7.0. + [659af5655c90] + + * build.py, installers/AddToPath.nsh, installers/BuildGPL.txt, + installers/PyQt5-Qt5-gpl.nsi, installers/StrSlash.nsh, installers + /mysql-config.bat, installers/psql-config.bat, + installers/pyqt5-check.py, installers/pyqt5-config.bat, installers + /qsci-pyqt5-config.bat, installers/qt5-config.bat, installers/sip- + pyqt5-config.bat: + Removed the old .nsi installers. + [22449f1b0af2] + + * lib/PlansForWheels.txt, pylupdate/fetchtr.cpp, pylupdate/main.cpp, + pylupdate/merge.cpp, pylupdate/metatranslator.cpp, + pylupdate/metatranslator.h, pylupdate/numberh.cpp, + pylupdate/proparser.cpp, pylupdate/proparser.h, + pylupdate/sametexth.cpp, pylupdate/simtexth.cpp, + pylupdate/simtexth.h, pylupdate/translator.cpp, + pylupdate/translator.h, pyrcc/main.cpp, pyrcc/rcc.cpp, pyrcc/rcc.h, + rbproduct.py: + Merged the v5.6 maintenance branch into the trunk. + [7b8de1cc9585] + + * qpy/QtCore/qpycore_qt_conf.cpp: + Removed the (now unnecessary) special handling of qt.conf on + Windows. + [1ada2bed3c1d] <5.6-maint> + +2016-06-28 Phil Thompson + + * sphinx/multiinheritance.rst: + Fixed a typo in the docs. + [129e481a1ef1] <5.6-maint> + +2016-06-27 Phil Thompson + + * lib/configure.py: + Fixed the creation of the .api file. + [8374c4c770c2] <5.6-maint> + +2016-06-23 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + Fixed a regression in the special handling of QGraphicsItem. + [02bc5a7d40d6] <5.6-maint> + +2016-06-22 Phil Thompson + + * PyQt5.msp: + Add some %Imports so that a module imports all the modules it + explicitly references. + [bb6823120280] <5.6-maint> + + * PyQt5.msp: + Updated for Qt v5.6.1. + [0ce20a30a8a1] <5.6-maint> + +2016-06-21 Phil Thompson + + * .hgignore, PyQt5.msp: + Updated QtBluetooth for Qt v5.6.1. + [db0d3198b0da] <5.6-maint> + + * rb-product, rbproduct.py: + Replaced the product plugin with a product file. + [a027ea04a02f] <5.6-maint> + +2016-06-20 Phil Thompson + + * rbproduct.py: + Implemented the minimal-build. + [cff7f5006501] <5.6-maint> + + * rbproduct.py: + The product plugin uses the sip from a minimal sip build. + [342d116ba9d6] <5.6-maint> + + * commercial/pyqt-commercial.sip, lib/pyqt-commercial.sip, + rbproduct.py: + More product plugin refactoring. + [674b4a8b867f] <5.6-maint> + +2016-06-18 Phil Thompson + + * rbproduct.py: + Updates to the product plugin in preparation for replacing build.py. + [2c314a5a11df] <5.6-maint> + +2016-05-30 Phil Thompson + + * sphinx/qt_properties.rst: + Removed some (aparant) ambibuity in the docus related to + pyqtProperty. + [62540c04cb07] <5.6-maint> + +2016-05-27 Phil Thompson + + * rbproduct.py: + Updated the product plugin to add pylupdate5 and pyrcc5 to wheels. + [117c4d6d7ed5] <5.6-maint> + + * Makefile, build.py, lib/configure.py, pylupdate/fetchtr.cpp, + pylupdate/main.cpp, pylupdate/merge.cpp, + pylupdate/metatranslator.cpp, pylupdate/metatranslator.h, + pylupdate/numberh.cpp, pylupdate/proparser.cpp, + pylupdate/proparser.h, pylupdate/pylupdate_main.py, + pylupdate/pylupdatemod.sip, pylupdate/sametexth.cpp, + pylupdate/simtexth.cpp, pylupdate/simtexth.h, + pylupdate/translator.cpp, pylupdate/translator.h, + pyrcc/pyrcc_main.py, qpy/pylupdate/fetchtr.cpp, + qpy/pylupdate/merge.cpp, qpy/pylupdate/metatranslator.cpp, + qpy/pylupdate/metatranslator.h, qpy/pylupdate/numberh.cpp, + qpy/pylupdate/proparser.cpp, qpy/pylupdate/proparser.h, + qpy/pylupdate/pylupdate.h, qpy/pylupdate/sametexth.cpp, + qpy/pylupdate/simtexth.cpp, qpy/pylupdate/simtexth.h, + qpy/pylupdate/translator.cpp, qpy/pylupdate/translator.h: + Refactored pylupdate5 to be a wrapper around a Python extension + module. + [2793a3f7cd3d] <5.6-maint> + + * Makefile, build.py, lib/configure.py, pyrcc/main.cpp, + pyrcc/pyrcc_main.py, pyrcc/pyrccmod.sip, pyrcc/rcc.cpp, pyrcc/rcc.h, + qpy/pyrcc/rcc.cpp, qpy/pyrcc/rcc.h: + Refactored pyrcc5 so that it is a Python wrapper around a C++ + extension module. + [7f2ffc54b8b7] <5.6-maint> + +2016-05-23 Phil Thompson + + * rbproduct.py: + Removed a duplicated import in the product plugin. + [8b00d4415e7d] <5.6-maint> + +2016-05-21 Phil Thompson + + * qpy/QtCore/qpycore_public_api.cpp: + Fixed a reference count problem in py_err_print(). + [427d33257f8b] <5.6-maint> + +2016-05-20 Phil Thompson + + * sphinx/installation.rst: + Installation docs updates regarding MSVC 2015. + [43f7f646b5f1] <5.6-maint> + + * PyQt5.msp: + Added some /ReleaseGIL/ annotations to potentially time consuming + methods of QSvgRenderer. + [9926569b7c70] <5.6-maint> + + * qpy/QtCore/qpycore_public_api.cpp: + Fixed a recursion problem when handling uncaught Python exceptions. + [2bb4251641d5] <5.6-maint> + +2016-05-16 Phil Thompson + + * sphinx/installation.rst: + More documentation updates. + [99509478d73f] <5.6-maint> + +2016-05-15 Phil Thompson + + * sphinx/installation.rst: + Updated the installation instruction to cover wheels and + pyqtlicense. + [d59c0d20804e] <5.6-maint> + +2016-05-12 Phil Thompson + + * METADATA.in, rbproduct.py: + Try to prevent the GPL and commercial versions being installed at + the same time. (Although it doesn't seem to work.) + [43e83a4358f7] <5.6-maint> + + * METADATA.in, rbproduct.py: + Configure the PKG-INFO meta-data according to the license. + [fab20f18cc82] <5.6-maint> + + * lib/PlansForWheels.txt: + Removed the plan for implementing wheels as it is now implemented. + [fe01c4744c57] <5.6-maint> + +2016-05-11 Phil Thompson + + * PyQt5.msp: + Eliminate a compiler warning message. + [988950701a58] <5.6-maint> + +2016-05-10 Phil Thompson + + * rbproduct.py: + More changes to the product plugin required by rbtools. + [1a1f56ebde3a] <5.6-maint> + +2016-05-09 Phil Thompson + + * rbproduct.py: + Updates to the product plugin for the latest rbtools changes. + [f9f06f093901] <5.6-maint> + + * rbproduct.py: + Give commercial unlicensed wheels a non-standard extension. + [a24e4ce279f6] <5.6-maint> + + * commercial/BuildNotes.txt, commercial/pyqtlicense.pdy, + commercial/pyqtlicense.py: + Moved pyqtlicense to a separate repo. + [7ccc7256c707] <5.6-maint> + +2016-05-08 Phil Thompson + + * commercial/BuildNotes.txt, commercial/pyqtlicense.pdy: + pyqtlicense can now be built for OS X. + [8b303294336e] <5.6-maint> + + * pyuic/uic/pyuic.py: + Fixed misleading help text in pyuic5. + [b5b8f9ddca13] <5.6-maint> + + * commercial/BuildNotes.txt, commercial/pyqtlicense.pdy: + Added the initial .pdy file for pyqtlicense. + [8b0724883824] <5.6-maint> + +2016-05-05 Phil Thompson + + * METADATA.in: + Fixed out of date information in the meta-data. + [c1e0ebea4ad4] <5.6-maint> + +2016-05-03 Phil Thompson + + * sphinx/incompatibilities.rst: + Documented the slot signature checking as a potential + incompatibility. + [12c3868cce84] <5.6-maint> + + * qpy/QtCore/qpycore_chimera.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Fixed connections to decorated slots to enforce the slot signature + and not silently ignore the decorator. sip.voidptr and bytes + arguments to the decorator now generate an appropriate C++ type. + [2a1416f9a2d3] <5.6-maint> + +2016-04-30 Phil Thompson + + * examples/multimediawidgets/camera/camera.py: + Fixed a bug in the camera.py example. + [20f251a709d4] <5.6-maint> + +2016-04-29 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + Don't expect QVariant convertor helpers to handle None. + [145437cb0acf] <5.6-maint> + +2016-04-28 Phil Thompson + + * PyQt5.msp: + Added /ReleaseGIL/ to QPushButton.event() because it can trigger the + display of a QMenu which will enter its own event loop. + [9c50925525e4] <5.6-maint> + +2016-04-27 Phil Thompson + + * commercial/pyqtlicense.py: + Added the --qt option to pyqtlicense. + [8054d2d4db90] <5.6-maint> + + * commercial/pyqtlicense.py: + Implemented the --openssl option of pyqtlicense. + [c4fb07c17181] <5.6-maint> + + * commercial/pyqtlicense.py: + Implemented the --no-msvc-runtime and --no-openssl options to + pyqtlicense. + [4591c0e28b5a] <5.6-maint> + +2016-04-26 Phil Thompson + + * commercial/pyqt-commercial.sip: + Licensing on OS X now works. + [a3b0438a540f] <5.6-maint> + +2016-04-25 Phil Thompson + + * commercial/pyqt-commercial.sip: + Debugged the license check code. + [5f579e057d18] <5.6-maint> + + * commercial/pyqt-commercial.sip, commercial/pyqtlicense.py: + Initial implementation of pyqtlicense. + [93328b3c897a] <5.6-maint> + + * Makefile, commercial/pyqt-commercial.sip, rbproduct.py: + Implemented the creation of unlicensed commercial wheels. + [f042971d28ec] <5.6-maint> + + * lib/configure.py: + --no-timestamps no longer passes the (redundant) -T flag to sip. + [77bff7d59668] <5.6-maint> + + * lib/configure.py: + Fixed the handling of dbus-python if it has multiple include + directories. + [db626499ded9] <5.6-maint> + + * installers/PyQt5-Qt5-gpl.nsi: + Fixed the Windows installers so that QtWebEngineProcess works. + [06ecf8131050] <5.6-maint> + +2016-04-24 Phil Thompson + + * .hgtags: + Added tag 5.6 for changeset ae50bac2ef88 + [b1939581dab4] + + * NEWS: + Released as v5.6. + [ae50bac2ef88] [5.6] + + * rbproduct.py: + The SSL library and MSVC runtime are now installed in the PyQt5 + directory. + [6b7672768236] + +2016-04-23 Phil Thompson + + * qpy/QtCore/qpycore_qt_conf.cpp: + Fixed the setting of PATH on Windows. + [8a95f97ca7aa] + + * METADATA.in, installers/BuildGPL.txt, installers/PyQt5-Qt5-gpl.nsi, + installers/pyqt5-check.py, installers/pyqt5-config.bat, + lib/LICENSE.commercial.short, lib/LICENSE.gpl, + lib/LICENSE.gpl.short, lib/LICENSE.internal: + Updated the installers fro Qt v5.6.0. Fixed the dates on copyright + messages. Updated the meta-data to say that Linux wheels will be + available on PyPI. + [f9cf4e3290c7] + +2016-04-21 Phil Thompson + + * qpy/QtCore/qpycore_qt_conf.cpp: + When --qtconf-prefix is specified then PATH is alos set on Windows. + [d147afaee2c6] + +2016-04-18 Phil Thompson + + * lib/configure.py, rbproduct.py: + Removed some (now redundant) qmake handlign on Windows. + [02f8ab12f5ad] + +2016-04-17 Phil Thompson + + * lib/configure.py, rbproduct.py: + More handling of spaces in directory names. Account for different + Makefile structures on Windows. + [94a4e61390a3] + + * rbproduct.py: + Fixed a testing regression in the product plugin. + [8e05253f91d8] + + * sphinx/installation.rst: + Removed a Sphinx warning. + [dd499921d5fb] + + * rbproduct.py: + Implemented the minimal install in the product plugin. + [8e25715c1d82] + + * rbproduct.py: + Exploit verbose mode in the product plugin. + [8099e3b3bca3] + + * rbproduct.py: + Fixed permissions on the product plugin. + [19c006f2d22c] + +2016-04-16 Phil Thompson + + * rbproduct.py: + The QScintilla API file is now included in the wheels. + [a8aa89c52747] + + * METADATA.in: + Fixed a typo in the meta-data. + [8f14fe6ee051] + + * Makefile, build.py, rbproduct.py: + Removed the --omit-license-tag option from build.py as it is no + longer needed. + [d24af7ea1d4c] + +2016-04-15 Phil Thompson + + * PyQt5.msp, qpy/QtWidgets/qmaccocoaviewcontainer.sip: + QMenu.setAsDockMenu() is not available on iOS. + [8dba3377ce19] + +2016-04-14 Phil Thompson + + * lib/configure.py: + The --dbus option to configure.py overrides (rather than + supplements) any directories returned by pkg-config. + [e39f0eeff58b] + + * Makefile, lib/configure.py: + Fixed the handling of dbus-python header files. + [608f71af6d2f] + + * qpy/QtCore/qpycore_qt_conf.cpp: + Adjusted qt.conf on Windows so that QtWebEngineProcess can be found. + [a4d8055d6b1a] + + * Makefile, build.py, rbproduct.py: + Ensure regular snapshots have the license tag but those used in + wheels don't. + [ca8272fb55ff] + +2016-04-12 Phil Thompson + + * rbproduct.py: + Fixes for the additional Windows DLLs. + [8402c18b9cfe] + + * rbproduct.py: + Windows wheels will now install OpenSSL DLLs and the MSVC C++ + runtime DLL. + [d8f47655a777] + +2016-04-09 Phil Thompson + + * METADATA.in: + Updated the description in the meta-data. + [94bd36376d2a] + +2016-04-08 Phil Thompson + + * METADATA.in: + Update the METADATA to try and require sip. + [6a2e30c56378] + + * METADATA.in, build.py: + Use v1.1 for the METADATA format. Don't tag the GPL source packages + with '_gpl' because of the knock-on effect with PyPi. + [04357f447388] + + * sphinx/qml.rst: + Fixed a sphinx warning. + [00b1ee427a44] + + * METADATA.in, rbproduct.py: + Added the METADATA.in file. + [0d593d43bf70] + +2016-04-06 Phil Thompson + + * rbproduct.py: + Added the test for SQL drivers to the product plugin. + [9d2b4177b3cf] + + * rbproduct.py: + Fixed the tests defined in the product plugin. + [21a0cdb51e30] + +2016-04-05 Phil Thompson + + * rbproduct.py: + Added more tests to the product plugin. + [9f8f7adbdcf0] + + * rbproduct.py: + Properly defined the PyQt5 modules in the product plugin. + [63dc33b74805] + + * rbproduct.py: + Added the rbtools product plugin. + [da8471176b5c] + +2016-04-04 Phil Thompson + + * lib/configure.py, qpy/QtCore/qpycore_qt_conf.cpp, + sphinx/installation.rst: + Removed --qtconf-libraries. + [b750e716119b] + + * lib/configure.py, qpy/QtCore/qpycore_api.h, + qpy/QtCore/qpycore_post_init.cpp.in, qpy/QtCore/qpycore_qt_conf.cpp, + sphinx/installation.rst: + Renamed --qt-prefix-path to --qtconf-prefix. Added --qtconf- + libraries. + [e63e022443bc] + +2016-04-03 Phil Thompson + + * lib/configure.py: + More spaces-in-path fixes. + [bebf960c9e18] + + * lib/configure.py: + Fixed the invocation of sip if it has spaces in its path. + [a491032a2f01] + +2016-04-02 Phil Thompson + + * lib/configure.py, qpy/QtCore/qpycore_api.h, + qpy/QtCore/qpycore_post_init.cpp.in, qpy/QtCore/qpycore_qt_conf.cpp: + The Qt prefix path is now calculated at run-time to make it re- + locatable. + [0c8718600680] + +2016-04-01 Phil Thompson + + * lib/configure.py: + Fixed the embedded qt.conf. + [def17c899da2] + +2016-03-31 Phil Thompson + + * lib/configure.py, qpy/QtCore/qpycore_post_init.cpp.in, + sphinx/installation.rst: + Added the --qt-prefix-path option to configure.py. + [7e55c68410fe] + + * PyQt5.msp: + Fixed an annotation typo. + [bd8301c85566] + +2016-03-29 Phil Thompson + + * PyQt5.msp: + Added the missing qt_set_sequence_auto_mnemonic() to QtGui. + [1cc2ecff7245] + +2016-03-28 Phil Thompson + + * PyQt5.msp: + Added the missing MouseLock to QWebEnginePage.Feature. + [49675f503e40] + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Backed out an incorrect fix (not mentioned in the previous(?) + commit). + [3a53b336acd1] + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_qobject_getattr.cpp: + Respect method names starting with '__' found in the meta-object as + private as they are most likely to be Python methods decorated with + pyqtSlot. + [6cb67313a7f3] + +2016-03-27 Phil Thompson + + * lib/PlansForWheels.txt: + Added the plan for handling commercial and GPL wheels. + [dfc074229564] + +2016-03-26 Phil Thompson + + * Makefile, lib/configure.py, sphinx/installation.rst: + Added the --rpath option to configure.py. + [2787cd711d1c] + +2016-03-25 Phil Thompson + + * QAxContainer/qaxbase.sip: + Removed deprecated /DocValue/ annotations. + [1f2319650dff] + + * build.py: + Apply the new naming standards to generated source packages. + [e1f0d30ea050] + +2016-03-24 Phil Thompson + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Connecting to a decorated method will now fail without a compatible + signature. + [d58baf1a1473] + + * examples/quick/models/abstractitemmodel/abstractitemmodel.py: + Fixed a bug in the abstyractitemmodel.py example. + [654315b1dcf6] + +2016-03-18 Phil Thompson + + * PyQt5.msp: + Added the missing WA_DontShowOnScreen. + [571b2ed0ce32] + +2016-03-17 Phil Thompson + + * qpy/QtCore/qsysinfo.sip: + Updated for Qt v5.6.0. Added the missing QSysInfo static functions. + [740db730593a] + +2016-03-13 Phil Thompson + + * pyuic/uic/driver.py, pyuic/uic/pyuic.py: + Fixed a couple of pyuic syntax errors. + [70e9fff5c84d] + +2016-03-12 Phil Thompson + + * PyQt5.msp: + Restored the QFlags copy ctor to ensure assignment helpers are + generated. + [2c5cceeba03a] + +2016-03-11 Phil Thompson + + * qpy/QtQml/qpyqmlobject.cpp, qpy/QtQml/qpyqmlobject.h: + Fixed a deadlock problem in the implementation of QML proxies. + [293152ad5ca1] + +2016-03-09 Phil Thompson + + * examples/designer/plugins/widgets/helloglwidget.py: + Fixed the heeloglwidget.py example so that it doesn't use PyOpenGL. + [2d7a76584798] + + * qpy/QtCore/qpycore_chimera.cpp, qpy/QtCore/qpycore_chimera.h, + qpy/QtCore/qpycore_enums_flags.cpp, qpy/QtCore/qpycore_types.cpp, + sphinx/metaobjects.rst: + Fixed the defining of enums and flags so that they appear as + expected in Qt Designer. + [0f17783785e4] + +2016-03-08 Phil Thompson + + * qpy/QtCore/qpycore_types.cpp: + Don't include an explicit scope when implementing Q_ENUMS and + Q_FLAGS. + [256cb1cf3c5d] + + * examples/designer/plugins/python/multipagewidgetplugin.py, + examples/designer/plugins/widgets/multipagewidget.py: + Fixes to the plugins.py example. + [151f0d8f13e8] + + * pyuic/uic/Compiler/compiler.py, pyuic/uic/Compiler/misc.py, + pyuic/uic/__init__.py, pyuic/uic/driver.py, pyuic/uic/pyuic.py, + sphinx/designer.rst: + Added the --import-from command line argument to pyuic5. + [d05ca4f9dda7] + +2016-03-07 Phil Thompson + + * PyQt5.msp: + Added the QVersionNumber class. + [c660515bc830] + + * PyQt5.msp: + Updated QtOpenGL for Qt v5.6rc. + [ea5c02548075] + + * lib/configure.py, sphinx/platforms.rst: + The Qt v5.5 rpath problems seem to have been fixed in v5.6. + [5205794e6b9a] + + * PyQt5.msp, lib/SubclassCode/QtQuick.versions: + Updated the QObject convertor code for QtQuick and QtWebEngineCore. + [82eea261797e] + +2016-03-06 Phil Thompson + + * PyQt5.msp, lib/configure.py, sphinx/api_metadata.cfg, + sphinx/introduction.rst: + Implemented the QtWebEngineCore module. + [023eb0e60c08] + + * PyQt5.msp: + Completed the QtWidgets updates for Qt v5.6rc. + [045ee6a65f5f] + +2016-03-05 Phil Thompson + + * PyQt5.msp: + Started updating the QtWidgets module for Qt v5.6rc. + [742e6cc983e8] + + * sphinx/api_metadata.cfg: + Updated the API metadata for new classes added so far. + [531a749af28d] + + * PyQt5.msp: + Updated the QtQml, QtQuick, QtQuickWidgets, QtSensors, QtSerialPort, + QtSql, QtSvg and QtTest modules for Qt v5.6rc. + [b3632c46462b] + +2016-03-04 Phil Thompson + + * PyQt5.msp: + Updated the QtNfc, QtPositioning, QtPrintSupport, QtXml and + QtXmlPatterns modules for Qt v5.6rc. + [ae1f88b0c079] + + * PyQt5.msp, qpy/QtMultimedia/qpymultimedia_qlist.sip: + Updated the QtHelp, QtLocation, QtMultimedia, QtMultimediaWidgets + and QtNetwork modules for Qt 5.6rc. + [b957d29ef95c] + + * PyQt5.msp: + Completed the QtGui support for Qt v5.6rc. + [e30d789c0141] + + * PyQt5.msp: + More QtGui updates for Qt v5.6rc. + [e232b46d197a] + +2016-03-03 Phil Thompson + + * PyQt5.msp: + Partially implemented the Qt v5.6rc support for the QtGui module. + [eb7a53fdfb5b] + +2016-03-02 Phil Thompson + + * PyQt5.msp: + Updated the QtDBus and QtDesigner modules for Qt v5.6.0rc. + [242ffa94e504] + + * PyQt5.msp: + Updated the QtCore module for Qt v5.6.0rc. + [75369fe650fe] + +2016-03-01 Phil Thompson + + * PyQt5.msp: + Updated the Enginio and QtBluetooth modules for Qt v5.6rc. + [b86fccf0f71e] + + * lib/configure.py: + Don't embed the -f flag in PYQT_CONFIGURATION. + [c1a15cadbc73] + + * PyQt5.msp: + All implementations of swap() now have the /Constrained/ annotation. + [fb287ed7e9da] + + * Makefile, PyQt5.msp: + Removed a redundant QBrush ctor. + [5f34d42010aa] + +2016-02-29 Phil Thompson + + * PyQt5.msp: + Fixed the previous change. + [b86e13d182d7] + + * Makefile, PyQt5.msp: + Removed the redundant QVariant copy ctor. + [0cb802120239] + +2016-02-27 Phil Thompson + + * Merged the 5.5-maint branch into the trunk. + [f923036edfe1] + + * PyQt5.msp: + Fixed the type hint for QDesktopServices.setUrlHandler(). + [0fa72a09eb1e] <5.5-maint> + + * PyQt5.msp, qpy/QtBluetooth/qpybluetooth_qlist.sip, + qpy/QtCore/qjsonarray.sip, qpy/QtCore/qpycore_qlist.sip, + qpy/QtCore/qpycore_qset.sip, qpy/QtCore/qpycore_qvector.sip, + qpy/QtCore/qstringlist.sip, qpy/QtGui/qpygui_qvector.sip, + qpy/QtMultimedia/qpymultimedia_qlist.sip, + qpy/QtPrintSupport/qpyprintsupport_qlist.sip, + qpy/QtWidgets/qpywidgets_qlist.sip: + Use Iterable rather than Iterator in type hints. + [ab690c76000c] <5.5-maint> + +2016-02-26 Phil Thompson + + * PyQt5.msp: + Removed some superfluous ctors. + [f0c110db9340] <5.5-maint> + + * PyQt5.msp: + Make sure the datetime module is available in stub files. + [aad90c9b7268] <5.5-maint> + + * PyQt5.msp: + Updated type hints for classes with %ConvertToTypeCode. + [0f619b3c60e2] <5.5-maint> + +2016-02-25 Phil Thompson + + * PyQt5.msp, qpy/QtQml/qmlregistertype.sip: + Updated the project version number. More type hint improvements. + [8be0a10b466f] <5.5-maint> + +2016-02-24 Phil Thompson + + * PyQt5.msp: + More changes to the type hints. + [5a3f980959af] <5.5-maint> + +2016-02-19 Phil Thompson + + * PyQt5.msp: + Fixed some handwritten type hine code. + [2677d628d385] <5.5-maint> + +2016-02-18 Phil Thompson + + * test/tests/classes/test_QFlags.py: + Added the QFlags unit tests. + [796954fadf1e] <5.5-maint> + + * lib/configure.py: + SIP warnings are now treated as fatal. + [ef2c015cb086] <5.5-maint> + + * Makefile, PyQt5.msp: + Updated the QFlags support from PyQt4. + [5bd2318ecef3] <5.5-maint> + + * PyQt5.msp: + Completed the conversion to /TypeHint/. + [7d4c7c1162e0] <5.5-maint> + + * PyQt5.msp: + Updated the type hints for the OpenGL modules. + [a3d88993c395] <5.5-maint> + +2016-02-17 Phil Thompson + + * PyQt5.msp, qpy/QtCore/qjsonarray.sip, qpy/QtCore/qjsonobject.sip, + qpy/QtCore/qpycore_chimera.cpp, qpy/QtCore/qpycore_enums_flags.cpp, + qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtconfigure.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_qhash.sip, + qpy/QtCore/qpycore_qlist.sip, qpy/QtCore/qpycore_qmap.sip, + qpy/QtCore/qpycore_qmetaobject_helpers.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_qpair.sip, qpy/QtCore/qpycore_qset.sip, + qpy/QtCore/qpycore_qstring.cpp, qpy/QtCore/qpycore_qvector.sip, + qpy/QtCore/qpycore_types.cpp, qpy/QtCore/qstringlist.sip, + qpy/QtGui/qpygui_qlist.sip, qpy/QtGui/qpygui_qpair.sip, + qpy/QtGui/qpygui_qvector.sip, qpy/QtGui/qpyopengl_api.h, + qpy/QtGui/qpyopengl_array_convertors.cpp, + qpy/QtGui/qpyopengl_attribute_array.cpp, + qpy/QtGui/qpyopengl_uniform_value_array.cpp, + qpy/QtGui/qpyopengl_value_array.cpp, + qpy/QtMultimedia/qpymultimedia_qlist.sip, + qpy/QtNetwork/qpynetwork_qhash.sip, + qpy/QtPrintSupport/qpyprintsupport_qlist.sip, + qpy/QtQml/qpyqmllistpropertywrapper.cpp, + qpy/QtQuick/qpyquick_chimera_helpers.cpp, + qpy/QtWidgets/qpywidgets_qlist.sip: + Removed all uses of SIP_SSIZE_T. + [f1c9ab62de9e] <5.5-maint> + +2016-02-16 Phil Thompson + + * PyQt5.msp, qpy/QtBluetooth/qpybluetooth_qlist.sip, + qpy/QtBluetooth/qpybluetooth_quint128.sip, + qpy/QtCore/qjsonarray.sip, qpy/QtCore/qpycore_qlist.sip, + qpy/QtCore/qpycore_qpair.sip, qpy/QtCore/qpycore_qset.sip, + qpy/QtCore/qpycore_qvector.sip, qpy/QtCore/qstringlist.sip, + qpy/QtGui/qpygui_qlist.sip, qpy/QtGui/qpygui_qpair.sip, + qpy/QtGui/qpygui_qvector.sip, + qpy/QtMultimedia/qpymultimedia_qlist.sip, + qpy/QtPrintSupport/qpyprintsupport_qlist.sip, + qpy/QtWidgets/qpywidgets_qlist.sip: + Removed all occurrences of SIP_SSIZE_T_FORMAT. + [6c323983f866] <5.5-maint> + + * Makefile, PyQt5.msp: + Make use of the new type hint class annotaions for QVariant. + [9e1f9b26502f] <5.5-maint> + + * PyQt5.msp: + Fix the type hints for signals and slots. + [a7286c0088ff] <5.5-maint> + + * PyQt5.msp: + Migrated the simple uses of /DocValue/ to /TypeHint/. + [17fe5ba76141] <5.5-maint> + + * Makefile, PyQt5.msp: + Removed /TypeHintValue/ when they will now be picked up from the + mapped type. + [e9ca1dfbd2f9] <5.5-maint> + + * sphinx/gotchas.rst: + Extended the section of QString gotchas to include null vs. empty + strings. + [4f9c20591646] <5.5-maint> + +2016-02-15 Phil Thompson + + * Makefile, PyQt5.msp, qpy/QtBluetooth/qpybluetooth_qlist.sip, + qpy/QtCore/qjsonarray.sip, qpy/QtCore/qjsonobject.sip, + qpy/QtCore/qpycore_qhash.sip, qpy/QtCore/qpycore_qlist.sip, + qpy/QtCore/qpycore_qmap.sip, qpy/QtCore/qpycore_qset.sip, + qpy/QtCore/qpycore_qvector.sip, qpy/QtCore/qstringlist.sip, + qpy/QtGui/qpygui_qlist.sip, qpy/QtGui/qpygui_qvector.sip, + qpy/QtMultimedia/qpymultimedia_qlist.sip, + qpy/QtNetwork/qpynetwork_qhash.sip, + qpy/QtNetwork/qpynetwork_qmap.sip, + qpy/QtPrintSupport/qpyprintsupport_qlist.sip, + qpy/QtWidgets/qpywidgets_qlist.sip: + Added /TypeHintValue/ to all mapped types that might have a default + value. + [2f5d9532caf3] <5.5-maint> + + * qpy/QtBluetooth/qpybluetooth_qlist.sip, + qpy/QtBluetooth/qpybluetooth_quint128.sip, + qpy/QtCore/qjsonarray.sip, qpy/QtCore/qjsonobject.sip, + qpy/QtCore/qpycore_qhash.sip, qpy/QtCore/qpycore_qlist.sip, + qpy/QtCore/qpycore_qmap.sip, qpy/QtCore/qpycore_qpair.sip, + qpy/QtCore/qpycore_qset.sip, qpy/QtCore/qpycore_qvector.sip, + qpy/QtCore/qstringlist.sip, qpy/QtDBus/qpydbusreply.sip, + qpy/QtGui/qpygui_qlist.sip, qpy/QtGui/qpygui_qpair.sip, + qpy/QtGui/qpygui_qvector.sip, + qpy/QtMultimedia/qpymultimedia_qlist.sip: + Updated the type hints for all handwritten code. + [1fc9973d53a9] <5.5-maint> + + * qpy/QtCore/qpycore_pyqtslot.cpp: + Updated the comment in the previous change. + [7bfc1d8650d4] <5.5-maint> + + * qpy/QtCore/qpycore_pyqtslot.cpp: + Fixed a bug disconnecting wrapped C++ methods. + [a930ddb1c6a7] <5.5-maint> + +2016-02-13 Phil Thompson + + * sphinx/gotchas.rst, sphinx/pyqt4_differences.rst: + Added a section to the gotchas chapter about patterns to avoid + crashes on exit. + [da3142f18207] <5.5-maint> + +2016-02-12 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp, qpy/QtCore/qpycore_chimera.h, + qpy/QtCore/qpycore_qobject_helpers.cpp: + Improved the support for Qt properties. Allow a QVariantMap to be + converted to a dict if that was what was expected. + [57ba51c12753] <5.5-maint> + +2016-02-11 Phil Thompson + + * examples/network/lightmaps.py: + Fixed the lightmaps.py example. + [9897e881d280] <5.5-maint> + + * PyQt5.msp: + Added comments explaining why deleting top level widgets is a bad + idea. + [eced50bba03e] <5.5-maint> + +2016-02-10 Phil Thompson + + * qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_pyqtslot.cpp: + Fixed a crash when a proxy for a non-method callable might be + invoked while the proxy is being garbage collected. + [fc21a0a97001] <5.5-maint> + + * qpy/QtDBus/qpydbuspendingreply.sip, qpy/QtDBus/qpydbusreply.sip, + qpy/QtNetwork/qpynetwork_qhash.sip, + qpy/QtNetwork/qpynetwork_qmap.sip, + qpy/QtPrintSupport/qpyprintsupport_qlist.sip, + qpy/QtQml/qpyqmllistproperty.sip, + qpy/QtWidgets/qpywidgets_qlist.sip: + Removed some of the handwritten uses of DocType. + [23c5a8da2265] <5.5-maint> + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp: + Updated the repr() of bound and unbound signals as per PyQt4. + [807eb26f59ef] <5.5-maint> + + * lib/configure.py, sphinx/installation.rst: + Added the --no-stubs and --stubdir options to configure.py. + [7b60214e8c60] <5.5-maint> + + * lib/LicenseFAQ.txt: + Updated the license FAQ to make sure the version numbers of the + commercial and GPL versions match. + [273545f90a4a] <5.5-maint> + +2016-02-08 Phil Thompson + + * sphinx/pyqt4_differences.rst: + Tone down the warnings about not using a main() function. + [d304857728a3] <5.5-maint> + +2016-02-06 Phil Thompson + + * PyQt5.msp, lib/configure.py, qpy/QtCore/qpycore_chimera.cpp, + qpy/QtWidgets/qpywidgets_api.h, + qpy/QtWidgets/qpywidgets_chimera_helpers.cpp, + qpy/QtWidgets/qpywidgets_chimera_helpers.h, + qpy/QtWidgets/qpywidgets_post_init.cpp: + Fixed the special handling of QGraphicsItem so that it doesn't + interfere with parsing pyqtSignal argument types. + [71cd6c6e7045] <5.5-maint> + +2016-02-05 Phil Thompson + + * PyQt5.msp: + Updated the project file to v8. + [3df32493cb78] <5.5-maint> + +2016-01-30 Phil Thompson + + * PyQt5.msp: + Renamed QUrlFormattingOption.None to None_. + [d4c8f03f6403] <5.5-maint> + +2016-01-25 Phil Thompson + + * lib/configure.py: + Removed some redundant Borland support. + [0f60e49c22df] <5.5-maint> + + * lib/configure.py, sphinx/installation.rst: + The --qmake option has been added to configure.py when running on + Windows on the assumption that the historical problem of invoking + qmake with a path has been resolved. + [d2653451e966] <5.5-maint> + +2016-01-22 Phil Thompson + + * qpy/QtCore/qpycore_types.h: + Removed some redundant data structures. + [b071187c2187] <5.5-maint> + + * qpy/QtCore/qpycore_types.h: + Fixes for the latest sip v5. + [fb770c78e3dd] <5.5-maint> + + * qpy/QtQml/qpyqml_register_type.cpp: + Fixed a regression in the registering of QtQuick items. + [0d9e60c88804] <5.5-maint> + +2016-01-21 Phil Thompson + + * PyQt5.msp, qpy/QtDBus/qpydbus_post_init.cpp, + qpy/QtQml/qmlregistertype.sip, qpy/QtQml/qpyqml_post_init.cpp, + qpy/QtQml/qpyqml_register_type.cpp, + qpy/QtQuick/qpyquick_post_init.cpp: + Call Q_ASSERT() for values returned by sipImportSymbol(). + [6ecc7eb4b7b8] <5.5-maint> + +2016-01-20 Phil Thompson + + * PyQt5.msp: + Removed an unused reference to the public API. + [e09839f29cbd] <5.5-maint> + +2016-01-18 Phil Thompson + + * PyQt5.msp: + Make sure QQmlProperty.connectNotifySignal() behaves the same as the + PyQt4 equivalent. + [074e64f58b7f] <5.5-maint> + + * qpy/QtCore/qpycore_public_api.cpp: + Fixed a compilation error. + [41cfb44def2b] <5.5-maint> + + * qpy/QtCore/qpycore_public_api.cpp: + Improved the error reporting in pyqt5_get_pyqtslot_parts(). + [5336dad73d73] <5.5-maint> + +2016-01-17 Phil Thompson + + * PyQt5.msp: + Use "slot" as an argument type consistently. + [3e72e500339c] <5.5-maint> + + * PyQt5.msp, qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_public_api.h, sphinx/extension_api.rst: + Re-implemented QWizardPage.registerField(). Fixed + QWizard.setDefaultProperty(). The transmitter argument to + pyqt5_get_signal_signature() is now optional. + [b701cde0001b] <5.5-maint> + +2016-01-11 Phil Thompson + + * lib/configure.py, qpy/QtCore/qpycore_decorators.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.cpp, + qpy/QtCore/qpycore_pyqtproperty.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_types.cpp, + qpy/QtGui/qpyopengl_data_cache.cpp, + qpy/QtQml/qpyqmllistproperty.cpp, + qpy/QtQml/qpyqmllistpropertywrapper.cpp: + Fixes for sip5. + [74c8e3a5a137] <5.5-maint> + +2016-01-06 Phil Thompson + + * sphinx/signals_slots.rst: + Documented the PyQt_PyObject signal argument type. + [b7d0ec91f94b] <5.5-maint> + +2016-01-05 Phil Thompson + + * PyQt5.msp: + Fixed the conversion of TouchCancel touch events. + [a611260e4cb5] <5.5-maint> + +2015-12-15 Phil Thompson + + * Makefile: + Switched the internal build system to Python v3.5. + [60e96c2f91b5] <5.5-maint> + +2015-12-14 Phil Thompson + + * Makefile: + Added support for venv to the internal build system. + [1f541a9bc326] <5.5-maint> + +2015-12-12 Phil Thompson + + * PyQt5.msp: + Added the internal QQuickCloseEvent as an opaque class. Added the + QQuickWindow::closing() signal. + [61e0fc70e389] <5.5-maint> + +2015-12-05 Phil Thompson + + * pyuic/uic/uiparser.py: + Fixed pyuic's handling of the margins of layout widgets. + [5b5f0fb1b3f6] <5.5-maint> + +2015-11-16 Phil Thompson + + * sphinx/platforms.rst: + Fixed a typo in the docs. + [7f0cbf6087dd] <5.5-maint> + +2015-10-28 Phil Thompson + + * lib/configure.py: + Handle PATH components that are enclosed in quotes. + [bfa081d2253d] <5.5-maint> + + * PyQt5.msp: + Fixed QStyleOptionButton.None. + [993102189469] <5.5-maint> + +2015-10-25 Phil Thompson + + * .hgtags: + Added tag 5.5.1 for changeset ee08241be21f + [0659e00fc2ab] <5.5-maint> + + * NEWS, installers/PyQt5-Qt5-gpl.nsi: + Released as v5.5.1. + [ee08241be21f] [5.5.1] <5.5-maint> + + * qpy/QtCore/qpycore_pyqtproperty.cpp: + Fixed the handling of getter docstrings by pyqtProperty. + [75fe5856da75] <5.5-maint> + + * lib/configure.py: + Make sure configure.py enables debug flags early enough. + [71a413789681] <5.5-maint> + +2015-10-18 Phil Thompson + + * Makefile, PyQt5.msp, installers/PyQt5-Qt5-gpl.nsi, + qpy/QtCore/qsysinfo.sip: + Remainig updates for Qt v5.5.1. + [13f9ece29d02] <5.5-maint> + +2015-10-17 Phil Thompson + + * lib/configure.py: + The workaround for the Qt v5.5 rpath problem on OS X will now handle + Qt builds where any of QtPrintSupport, QtDBus or QtWidgets have been + disabled. + [aec0addf0acb] <5.5-maint> + + * PyQt5.msp: + Updated from the initial scan of Qt v5.5.1. + [942ae18cf71c] <5.5-maint> + +2015-10-16 Phil Thompson + + * examples/network/http/http.py: + Another minor fix to http.py. + [0be6496d6bfe] <5.5-maint> + + * examples/network/http/http.py: + Fixed a bug in the http.py example. + [e4609df54374] <5.5-maint> + +2015-09-22 Phil Thompson + + * PyQt5.msp: + Fixed ownership issues with QQuickFramebufferObject.Renderer. + [32c52859b93a] <5.5-maint> + + * installers/BuildGPL.txt, installers/pyqt5-config.bat, + lib/configure.py, sphinx/installation.rst: + Added the --disable option to configure.py. + [992d1d3c2439] <5.5-maint> + +2015-09-19 Phil Thompson + + * qpy/QtCore/qpycore_qstring.cpp: + Don't assume unicode objects being converted to QStrings are ready. + [dd00723a6712] <5.5-maint> + +2015-09-18 Phil Thompson + + * PyQt5.msp: + Hopefully fixed the ownership of the object returned by + QQuickFramebufferObject.createRenderer(). + [28175521934f] <5.5-maint> + + * PyQt5.msp, qpy/QtQuick/qpyquick_register_type.cpp, + qpy/QtQuick/qpyquickframebufferobject.cpp, + qpy/QtQuick/qpyquickframebufferobject.h: + Handle a QQuickFramebufferObject in the same was as + QQuickPaintedItem. + [af9ef4c21748] <5.5-maint> + + * pyuic/uic/properties.py: + Fixed pyuic's handling of non-ASCII font family names. + [cf72929c8d36] <5.5-maint> + +2015-09-10 Phil Thompson + + * PyQt5.msp: + Fixed all handwritten code that uses C++11 lambdas. + [5c39838726ef] <5.5-maint> + + * Makefile, PyQt5.msp: + Improved some handwritten code. + [7bf4b1f25365] <5.5-maint> + +2015-09-09 Phil Thompson + + * build.py: + Updated the root URL for the Qt docs. + [c52056ca5ef2] <5.5-maint> + +2015-09-08 Phil Thompson + + * installers/BuildGPL.txt, installers/PyQt5-Qt5-gpl.nsi, installers + /psql-config.bat: + Updates to installers for Python v3.5. + [df9e3329a638] <5.5-maint> + + * lib/configure.py: + Use win32-msvc2015 for Python v3.5. + [8ab07055894e] <5.5-maint> + + * installers/BuildGPL.txt, installers/PyQt5-Qt5-gpl.nsi: + Installer updates for Python v3.5. + [bf1db67f03e7] <5.5-maint> + + * PyQt5.msp: + Remainder of QMacCocoaViewContainer fix. + [06cf88343082] <5.5-maint> + +2015-09-07 Phil Thompson + + * lib/SubclassCode/QtWidgets.versions, + qpy/QtWidgets/qmaccocoaviewcontainer.sip: + QMacCocoaViewContainer is now feature dependent so that it can be + disabled for iOS. + [ee9b7b0e0576] <5.5-maint> + +2015-09-02 Phil Thompson + + * examples/animation/animatedtiles/animatedtiles.py, + examples/animation/appchooser/appchooser.py, + examples/animation/easing/easing.py, + examples/animation/moveblocks.py, + examples/animation/states/states.py, + examples/animation/stickman/stickman.py, + examples/graphicsview/dragdroprobot/dragdroprobot.py, + examples/graphicsview/padnavigator/padnavigator.py: + Fixed implicit conversions from strings to QByteArray in the + examples. + [03781fa3b27e] <5.5-maint> + + * PyQt5.msp: + Implemented __matmul__ and __imatmul__ for QMatrix4x4 and + QTransform. + [f13ef1501dfb] <5.5-maint> + +2015-09-01 Phil Thompson + + * Makefile: + The internal build system now defaults to Python v3.5. + [514fd7675915] <5.5-maint> + +2015-08-28 Phil Thompson + + * qpy/QtCore/qpycore_qobject_getattr.cpp: + Fixed a legacy comment. + [fc27a24424ee] <5.5-maint> + +2015-08-27 Phil Thompson + + * examples/qml/referenceexamples/attached.py, + examples/qml/referenceexamples/binding.py, + examples/qml/referenceexamples/coercion.py, + examples/qml/referenceexamples/default.py, + examples/qml/referenceexamples/grouped.py, + examples/qml/referenceexamples/methods.py, + examples/qml/referenceexamples/properties.py, + examples/qml/referenceexamples/signal.py, + examples/qml/referenceexamples/valuesource.py, + qpy/QtCore/qpycore_namespace.h, qpy/QtQml/qpyqml_post_init.cpp, + qpy/QtQml/qpyqmllistproperty.cpp, qpy/QtQml/qpyqmllistproperty.sip, + qpy/QtQml/qpyqmllistpropertywrapper.cpp, + qpy/QtQml/qpyqmllistpropertywrapper.h, sphinx/qml.rst: + QQmlListProperty now acts as a proxy for any underlying Python list. + [ffd5437ab83f] <5.5-maint> + +2015-08-26 Phil Thompson + + * PyQt5.msp: + Applied a better fix than 56be1a87fd2c that doesn't break proxy + resolution. + [e0fc4cba9b47] <5.5-maint> + +2015-08-25 Phil Thompson + + * PyQt5.msp: + Backed out 56be1a87fd2c because it breaks the proxy resolution. + [209dc1cc0ecc] <5.5-maint> + +2015-08-17 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + Fixed the conversion of enums for Qt v5.5. + [698e32887e28] <5.5-maint> + +2015-08-12 Phil Thompson + + * PyQt5.msp: + Fixed a remaining OpenGL feature. + [02a5c02ddbcb] <5.5-maint> + +2015-08-11 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp, qpy/QtCore/qpycore_chimera.h: + Fixed a missing exception when failing to parse types. + [fb938891400e] <5.5-maint> + +2015-08-10 Phil Thompson + + * PyQt5.msp, lib/SubclassCode/QtWidgets.versions: + Fixes for building against a Qt without OpenGL support. + [2bd297e85e66] <5.5-maint> + +2015-08-02 Phil Thompson + + * PyQt5.msp: + Fixed a leak in the handling of QQuickItem.updatePaintNode(). + [8bfac6a28129] <5.5-maint> + + * lib/configure.py: + Properly fix the different licensee values for the LGPL version of + Qt. + [45a7890b0823] <5.5-maint> + + * PyQt5.msp: + Ensure that QtWebEngineWidgets is imported before a QCoreApplication + instance is created. + [a4041c1d6446] <5.5-maint> + +2015-07-23 Phil Thompson + + * examples/qtdemo/demoitemanimation.py: + Fixed an implicit coding bug in qtdemo. + [7ff58420e62e] <5.5-maint> + +2015-07-22 Phil Thompson + + * PyQt5.msp, lib/SubclassCode/QtCore.versions, lib/configure.py: + Changes needed because iOS doesn't have QProcess etc. + [4e482908fc36] <5.5-maint> + + * lib/configure.py: + Interpret a licensee of "Builder Qt" as being the LGPL version. + [1327c48468e4] <5.5-maint> + + * Merge the forgotten tagging of the v5.5 release. + [fec61fb57dc8] <5.5-maint> + + * .hgtags: + Added tag 5.5 for changeset a4bf2ec86f1e + [9d7d3e5d6370] + + * Makefile: + Updated the default target version. + [4e9e6b798220] <5.5-maint> + + * PyQt5.msp: + Fixes for compiling against Qt builds without SSL support. + [a5cfb55177fc] <5.5-maint> + +2015-07-17 Phil Thompson + + * NEWS, installers/pyqt5-check.py: + Released as v5.5. + [a4bf2ec86f1e] [5.5] + + * lib/configure.py: + Tidied up the format of chenerated .pro files. + [3481361d7081] + + * installers/pyqt5-check.py: + pyqt5-check.py now checks the import of each module. + [204bcf3320a3] + +2015-07-12 Phil Thompson + + * installers/BuildGPL.txt, installers/PyQt5-Qt5-gpl.nsi, + installers/pyqt5-check.py: + Updated the Windows installer for Qt v5.5.0. + [7291c392fd1f] + + * PyQt5.msp: + Fixed a build problem when compiling each class separately. + [6968432991a7] + + * sphinx/deprecations.rst, sphinx/index.rst, sphinx/platforms.rst: + Added the section covering platform specific issues to the docs. + [872c73dc46ec] + + * PyQt5.msp, designer/pluginloader.cpp, designer/pluginloader.h, + qpy/QtDesigner/qpydesignercustomwidgetcollectionplugin.h, + qpy/QtDesigner/qpydesignercustomwidgetplugin.h: + Eliminated the warning messages when compiling QtDesigner against Qt + v5.5.0. + [ef816a6023fa] + + * PyQt5.msp: + Ignore the Qt3D namespace. + [f76909162b0d] + +2015-07-10 Phil Thompson + + * qpy/QtCore/qpycore_qhash.sip, qpy/QtCore/qpycore_qmap.sip: + Made small improvements to the exception text for some mapped type + conversions. + [6636b3382c7c] + + * NEWS, PyQt5.msp, sphinx/api_metadata.cfg: + Implemented QProxyStyle. + [4a8da89efee1] + + * PyQt5.msp: + Added the initial scan of QProxyStyle. + [10918a24693d] + +2015-07-09 Phil Thompson + + * NEWS, sphinx/api_metadata.cfg, sphinx/introduction.rst: + Documented the QtNfc module. + [098fa0059151] + + * PyQt5.msp, lib/configure.py: + Completed the implementation of the QtNfc module. + [980a642056c2] + + * PyQt5.msp: + Completed the initial scan of the QtNfc module. + [f84dc533613e] + + * PyQt5.msp: + Really scan Qt v5.5.0. + [e942243e71f2] + + * lib/configure.py: + Update QMAKE_RPATHDIR rather than set it. + [6e7ef843d1a8] + +2015-07-07 Phil Thompson + + * NEWS, sphinx/api_metadata.cfg, sphinx/introduction.rst: + Added QtLocation to the documentation. Updated the NEWS file. + [6fd628724de4] + + * PyQt5.msp: + Updated for Qt v5.5.0. + [825d80753312] + + * lib/configure.py: + Fixed the remaining problems caused by the use of rpath in Qt v5.5.0 + on OS X. + [5245460dd4e0] + +2015-07-01 Phil Thompson + + * PyQt5.msp, lib/configure.py: + Completed the implementation of QtLocation. + [5ef6f88ed7cc] + + * pyuic/uic/uiparser.py: + Fixed the adding of a widget to a box layout when an alignment is + specified. + [c7462b03a569] + + * PyQt5.msp: + Added the initial support for QtLocation. + [74dba26ade24] + + * lib/configure.py: + Updated configure.py for the QtLocation module. + [2adcdd927f7b] + + * sphinx/api_metadata.cfg: + Updated the API configuration for the recently added new classes. + [46d2397e4bac] + + * PyQt5.msp: + Completed the initial scan of QtLocation. + [01c5d7b2f5c1] + +2015-06-30 Phil Thompson + + * PyQt5.msp, lib/SubclassCode/QtWebEngineWidgets.versions, + lib/configure.py: + Updated QtWebEngineWidgets for Qt v5.5.0-rc. + [9d90aaba2346] + + * PyQt5.msp: + Updated QtGui for Qt v5.5.0-rc. + [29e5da47d4eb] + + * PyQt5.msp: + Added QT v5.5.0-rc support to QtOpenGL, QtPositioning, + QtPrintSupport, QtQml, QtQuick, QtQuickWidgets, QtSensors, + QtSerialPort and QtTest. + [16c53510a247] + +2015-06-25 Phil Thompson + + * PyQt5.msp: + Completed the Qt v5.5 support for QtNetwork. + [7df1482cd7cd] + + * PyQt5.msp, lib/SubclassCode/QtMultimedia.versions: + Completed the Qt v5.5 support for QtMultimedia. + [9bc46f0d7c99] + + * PyQt5.msp: + Initial scan of the remaining existing modules. + [c267700a94e9] + +2015-06-24 Phil Thompson + + * PyQt5.msp: + Fixed a missing reference in the QtGui module. + [639da5a3046f] + + * lib/configure.py: + Set QMAKE_RPATHDIR for Qt v5.5 and later on OS X. + [4cb6a26802dd] + + * PyQt5.msp, lib/configure.py: + Completed the updates for QtGui for Qt v5.5.0-rc. + [40bfae01fe1a] + +2015-06-23 Phil Thompson + + * PyQt5.msp: + Completed the QtDBus and QtDesigner modules for Qt v5.5.0-rc. + [9169626a8e94] + + * PyQt5.msp: + Initial scan of QtDBus, QtDesigner and QtGui for Qt v5.5.0-rc. + [bd6a2e668fd7] + + * PyQt5.msp: + Completed the initial Qt v5.5 support for QtBluetooth and QtCore. + [19bff136b8f4] + + * PyQt5.msp: + Parsed the Qt v5.5.0-rc changes for Enginio, QtBluetooth and QtCore. + [051e57a17d18] + +2015-06-20 Phil Thompson + + * PyQt5.msp: + Simplified the fix for the memory leak in attributeNames(). + [d5b00e76067f] + +2015-06-19 Phil Thompson + + * PyQt5.msp: + QSGMaterialShader.attributeNames() no longer leaks memory. + [be201b77bdb6] + + * QtMacExtras/QtMacExtrasmod.sip, QtMacExtras/qmactoolbar.sip, + QtMacExtras/qmactoolbaritem.sip: + Added QMacToolBar and QMacToolBarItem. + [07cd3c5604f2] + + * PyQt5.msp: + Added /ReleaseGIL/ to the QCoreApplication, QGuiApplication and + QApplication dtors to allow for the internal mutex in OpenGL + rendering. + [64f2c9dbf061] + +2015-06-18 Phil Thompson + + * PyQt5.msp: + The ownership of the QSGNode returned by + QQuickItem.updatePaintNode() is now handled correctly. + [97ce4458a5c1] + + * PyQt5.msp: + Added /ReleaseGIL/ for all QQuickWindow methods that seem to lock + the internal mutex. + [61740b8dd171] + + * PyQt5.msp: + Fix the QSGMaterialShader super-type as it can be owned. + [67adc9416118] + + * PyQt5.msp: + The QQuickView dtor now releases the GIL in order to avoid a + deadlock. + [70f4a305607e] + +2015-06-17 Phil Thompson + + * PyQt5.msp: + Added the missing Qt.NoOpaqueDetection and Qt.NoFormatConversion + values. + [f800f67c3286] + +2015-06-12 Phil Thompson + + * sphinx/deprecations.rst, sphinx/incompatibilities.rst, + sphinx/index.rst: + Documented the incompatible changes. + [f6bfd44ba749] + + * PyQt5.msp, build.py, qpy/QtCore/qpycore_public_api.cpp: + Removed the (deprecated) ability to convert a Latin-1 string to a + QByteArray(). Unhandled Python exceptions now call qFatal(). + [de30e9dedad8] + + * examples/graphicsview/dragdroprobot/dragdroprobot.qrc, + examples/graphicsview/dragdroprobot/dragdroprobot_rc.py, + examples/opengl/samplebuffers.py, + examples/opengl/textures/textures.qrc, + examples/opengl/textures/textures_rc.py, examples/qtdemo/qtdemo.qrc, + examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml, + sphinx/static/default.css: + Merged the v5.4 maintenance branch with the trunk. + [b512611dd0ea] + +2015-06-11 Phil Thompson + + * .hgtags: + Added tag 5.4.2 for changeset 5a34feb6b31d + [6f80aa2771d3] <5.4-maint> + + * NEWS: + Released as v5.4.2. + [5a34feb6b31d] [5.4.2] <5.4-maint> + + * installers/PyQt5-Qt5-gpl.nsi: + Fixed a missing image plugin in the Windows installer. + [29760ab3d5f9] <5.4-maint> + + * Makefile: + Clean up any extra Mac crap. + [dcbc92d15a8b] <5.4-maint> + +2015-06-07 Phil Thompson + + * pyuic/uic/Compiler/compiler.py, + pyuic/uic/Compiler/qobjectcreator.py: + Make sure all generedt imports are sorted and therefore repeatable. + [9ad1a251d97b] <5.4-maint> + +2015-06-05 Phil Thompson + + * NEWS, PyQt5.msp: + Completed the support for Qt v5.4.2. + [02c99f5affde] <5.4-maint> + + * PyQt5.msp: + Scanned Qt v5.4.2. + [7fbd795f8c5e] <5.4-maint> + + * installers/PyQt5-Qt5-gpl.nsi: + Updated the Windows installer for Qt v5.4.2. + [74c080b5bdb2] <5.4-maint> + + * PyQt5.msp: + Added missing /Factory/ annotations from the create() and + beginCreate() methods of QQmlComponent. + [56be1a87fd2c] <5.4-maint> + +2015-06-02 Phil Thompson + + * PyQt5.msp: + Fixed the handling of the value returned by Python re- + implementations of QSGMaterialShader.attributeNames(). + [cb620297cbc8] <5.4-maint> + +2015-05-23 Phil Thompson + + * lib/configure.py, sphinx/installation.rst: + Added the --no-python-dbus option to configure.py. + [df17d3eace7a] <5.4-maint> + +2015-05-18 Phil Thompson + + * pyuic/uic/uiparser.py: + Fixed another deprecation warning in pyuic. + [6333c15a9a6b] <5.4-maint> + + * pyuic/uic/driver.py, pyuic/uic/objcreator.py, + pyuic/uic/port_v2/load_plugin.py, pyuic/uic/port_v3/load_plugin.py: + Fixed all the deprecation warnings from pyuic. + [e8f96fbc8cf0] <5.4-maint> + +2015-05-08 Phil Thompson + + * Makefile: + Fixed the path to SIP on OS/X. + [39ecf0bc71e1] <5.4-maint> + +2015-05-06 Phil Thompson + + * pyuic/uic/Compiler/qobjectcreator.py, + pyuic/uic/Loader/qobjectcreator.py, pyuic/uic/icon_cache.py, + pyuic/uic/objcreator.py: + Fixed the handling of themed icons by uic.loadUi(). + [506c268c8f43] <5.4-maint> + +2015-04-24 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + Handle properties that are objects that are defined in QML. + [aebd6aab85d4] <5.4-maint> + +2015-04-04 Phil Thompson + + * pyuic/uic/properties.py, pyuic/uic/uiparser.py: + Fixed pyuic's handling of default margins. + [6a7e3e6175c8] <5.4-maint> + + * pyuic/uic/properties.py, pyuic/uic/uiparser.py: + Fixed pyuic's handling of the default spacing. + [12193d5afbe1] <5.4-maint> + +2015-04-03 Phil Thompson + + * pylupdate/main.cpp: + pylupdate now saves locations as relative to the .ts file. + [1757d2e318f6] <5.4-maint> + +2015-04-01 Phil Thompson + + * PyQt5.msp: + Added QWIDGETSIZE_MAX to QtWidgets. + [b136fd7c485e] <5.4-maint> + +2015-03-25 Phil Thompson + + * sphinx/static/classic.css, sphinx/static/default.css: + Fixed the stylesheet. + [d35996e57f02] <5.4-maint> + +2015-03-16 Phil Thompson + + * PyQt5.msp: + The GIL is now released for all QImage ctors and methods that might + block. + [3fd70eec66b9] <5.4-maint> + + * PyQt5.msp: + Removed the internal QGraphicsSceneEvent.setWidget(). + [622e5b5ebcfc] <5.4-maint> + +2015-03-11 Phil Thompson + + * installers/PyQt5-Qt5-gpl.nsi: + Added the OpenGL v2.1 backend to the Windows installer. + [ca1e4c121c78] <5.4-maint> + + * sphinx/conf.py: + Updated for sphinx v1.3. + [1c1cd1eac7ce] <5.4-maint> + + * qpy/QtCore/qsysinfo.sip: + Added Yosemite and iOS v8.0 to QSysInfo. + [01d4d1af5961] <5.4-maint> + + * pyuic/uic/uiparser.py: + pyuic now handles empty zorder elements. + [a0dcd07b7e72] <5.4-maint> + + * lib/configure.py: + Added nostrup to the generated .pro file. + [d6445df281a6] <5.4-maint> + +2015-03-01 Phil Thompson + + * pyuic/uic/uiparser.py: + pyuic will now ignore spacer items when setting the z-order. + [28704a096a3a] <5.4-maint> + +2015-02-26 Phil Thompson + + * installers/PyQt5-Qt5-gpl.nsi: + Installer fix for Qt v5.4.1. + [0b21a7fa6750] <5.4-maint> + + * .hgtags: + Added tag 5.4.1 for changeset 0a5d7730c142 + [e9b5f2d5bd48] <5.4-maint> + + * NEWS: + Released as v5.4.1. + [0a5d7730c142] [5.4.1] <5.4-maint> + +2015-02-25 Phil Thompson + + * PyQt5.msp: + Completed the changes for Qt v5.4.1. + [368c0d736e49] <5.4-maint> + + * PyQt5.msp: + Scanned Qt v5.4.1. + [2045a358e1e4] <5.4-maint> + + * installers/PyQt5-Qt5-gpl.nsi: + Updated the installer for Qt v5.4.1. + [22974f5a4007] <5.4-maint> + + * NEWS: + Updated the NEWS file. + [fd53bf1f9638] <5.4-maint> + +2015-02-24 Phil Thompson + + * lib/LicenseFAQ.txt: + Slight clarification in the license FAQ. + [a4e16da29a86] <5.4-maint> + + * examples/opengl/grabber.py: + grabber.py now uses QtOpenGLWidget and no longer uses PyOpenGL. + [cf42f047f5af] <5.4-maint> + + * examples/opengl/samplebuffers.py, examples/qtdemo/examples.xml, + examples/qtdemo/mainwindow.py, examples/qtdemo/menumanager.py, + examples/qtdemo/qtdemo.py, examples/qtdemo/qtdemo.qrc, + examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + qtdemo.py no longer uses pyrcc. Removed the samplebuffers.py + example. + [9dd44e33dbf2] <5.4-maint> + +2015-02-15 Phil Thompson + + * examples/opengl/overpainting.py: + overpainting.py no longer uses PyOpenGL. + [0095ac30f3f1] <5.4-maint> + + * examples/opengl/hellogl.py: + hellogl.py no longer uses PyOpenGL. + [2466595ffaa8] <5.4-maint> + + * examples/opengl/textures/textures.py: + textures.py no longer uses PyOpenGL. + [cea54a81d734] <5.4-maint> + + * examples/opengl/textures/textures.py, + examples/opengl/textures/textures.qrc, + examples/opengl/textures/textures_rc.py: + The textures.py example now uses QOpenGLWidget and does not use + pyrcc. + [0038f626c540] <5.4-maint> + + * examples/opengl/overpainting.py: + overpainting.py now uses QOpenGLWidget. + [adb738a8823d] <5.4-maint> + + * PyQt5.msp: + Added the _QOpenGLFunctions_2_1 module. + [831d9420cdb9] <5.4-maint> + + * PyQt5.msp: + Initial scan of the _QOpenGLFunctions_2_1 module. + [87965430e499] <5.4-maint> + + * examples/opengl/2dpainting.py: + Updated 2dpainting.py to match Qt v5.4. + [2444297431e1] <5.4-maint> + + * examples/opengl/2dpainting.py, examples/opengl/hellogl.py: + 2dpainting.py and hellogl.py now use QOpenGLWidget. + [7570b3ee5137] <5.4-maint> + +2015-02-14 Phil Thompson + + * Makefile: + Default to sip4. + [56103de21ca0] <5.4-maint> + + * Makefile, lib/configure.py: + Installing into a virtual env should now work. + [d18494d4f984] <5.4-maint> + +2015-02-12 Phil Thompson + + * examples/graphicsview/dragdroprobot/dragdroprobot.py, + examples/graphicsview/dragdroprobot/dragdroprobot.qrc, + examples/graphicsview/dragdroprobot/dragdroprobot_rc.py: + Fixed the dragdroprobot.py example. + [29d42f347e05] <5.4-maint> + + * examples/widgets/calendarwidget.py: + Fixed the calendarwidget.py example so it doesn't use obsolete + methods. + [5bfdad59eee6] <5.4-maint> + +2015-02-08 Phil Thompson + + * Makefile, lib/configure.py: + Improved the implementation of the executable search. + [c8a254ad3b53] <5.4-maint> + + * Makefile: + Switch the internal build system to sip5. + [8553ce1a8cff] <5.4-maint> + + * lib/configure.py: + Use sip5 in preference to sip4. + [e104f5f49120] <5.4-maint> + +2015-02-06 Phil Thompson + + * PyQt5.msp: + QEvent.None is now QEvent.None_. + [21c5779b9a9a] <5.4-maint> + + * PyQt5.msp: + Added some missing QEvent.Type values. + [09db852ff2ee] <5.4-maint> + +2015-02-05 Phil Thompson + + * PyQt5.msp: + Fixed all the pseudo-ctors that take a QVariant argument. + [1507018b0814] <5.4-maint> + +2015-02-03 Phil Thompson + + * PyQt5.msp: + Enabled the simplest calls in OpenGL 4.0-core. + [bcb234196361] <5.4-maint> + +2015-02-02 Phil Thompson + + * PyQt5.msp: + Updated OpenGL 4.1Core from 2.0. + [2197f1d1f00b] <5.4-maint> + + * PyQt5.msp: + Get the name right for the _QOpenGLFunctions_4_1_Core module. + [8ce7c02e45da] <5.4-maint> + + * PyQt5.msp: + Added the stub of the _QOpenGLFunctions_4_1_core module. + [cc4b33b46918] <5.4-maint> + +2015-02-01 Phil Thompson + + * lib/configure.py: + configure.py will now ignore old moc generated C++ files. + [b9f4e00ddb92] <5.4-maint> + +2015-01-31 Phil Thompson + + * lib/configure.py, sphinx/installation.rst: + Added the --license-dir command line option to configure.py. + [bc8255a4dd33] <5.4-maint> + +2015-01-30 Phil Thompson + + * lib/configure.py: + configure.py will now handle a blank licensee. + [0db0131e1ac0] <5.4-maint> + + * lib/configure.py: + Fixed the handling of the --qml-plugindir option to configure.py. + [c4f830debfc8] <5.4-maint> + + * qpy/QtCore/qpycore_public_api.cpp: + Converting argv now uses the current locale codec rather than + Latin-1. + [73c52f636ad1] <5.4-maint> + + * pyuic/uic/uiparser.py: + pyuic now supports the z-order of widgets. + [f9b37fb09d6e] <5.4-maint> + + * pyuic/uic/properties.py, pyuic/uic/uiparser.py: + Improved the fix for handling frame shadows of lines. + [9904222abd9b] <5.4-maint> + +2015-01-29 Phil Thompson + + * pyuic/uic/properties.py, pyuic/uic/uiparser.py: + Fixed pyuic's handling of the frame shadow of lines. + [0b20cc5fda6f] <5.4-maint> + + * pyrcc/rcc.cpp, pyuic/uic/__init__.py: + Removed the timestamp from the header generated by pyrcc. + [a56bb17ad8ce] <5.4-maint> + + * pyuic/uic/__init__.py: + Removed the timestamp from the header generated by pyuic. + [83ff904a1929] <5.4-maint> + +2015-01-23 Phil Thompson + + * qpy/QtCore/qpycore_qstring.cpp: + Fixed a regression converting a QString with a surrogate pair as the + last character. + [55f521ae431b] <5.4-maint> + +2015-01-14 Phil Thompson + + * qpy/QtCore/qpycore_types.cpp: + Fixed the previous fix. + [0d0762e7b5ef] <5.4-maint> + +2015-01-12 Phil Thompson + + * qpy/QtCore/qpycore_types.cpp: + Ensure any exception is cleared after introspecting QObject class + attributes. + [afaaea82b022] <5.4-maint> + +2015-01-03 Phil Thompson + + * lib/configure.py: + The QtWebChannel and QtWebSockets modules don't need a GUI. + [154b7ed4e071] <5.4-maint> + + * PyQt5.msp: + The loadUrl() methods of QQmlComponent now release the GIL. + [c7a9f34318ad] <5.4-maint> + +2015-01-02 Phil Thompson + + * lib/LICENSE.commercial.short, lib/LICENSE.gpl, + lib/LICENSE.gpl.short, lib/LICENSE.internal, sphinx/conf.py: + Updated the copyright notices. + [83f2a9f8495b] <5.4-maint> + + * PyQt5.msp, lib/SubclassCode/QtWidgets.versions, lib/configure.py, + qpy/QtWidgets/qmaccocoaviewcontainer.sip, sphinx/api_metadata.cfg, + sphinx/introduction.rst: + Added the QMacCocoaViewContainer class. + [4e2f742ce34d] <5.4-maint> + +2014-12-25 Phil Thompson + + * .hgtags: + Added tag 5.4 for changeset 51e7270c0aad + [5bf7aad36927] + + * NEWS: + Released as v5.4. + [51e7270c0aad] [5.4] + +2014-12-24 Phil Thompson + + * installers/PyQt5-Qt5-gpl.nsi, installers/qt5-config.bat: + Enable ICU support for the WIndows build of Qt. Updated the + installer now that the default OpenGL support is desktop. + [bcbeae513872] + +2014-12-23 Phil Thompson + + * installers/pyqt5-check.py, installers/qt5-config.bat: + Updated the check script to handle the additional image formats in + Qt v5.4.0. Updated the Qt5 configure script to enable dynamic OpenGL + selection. + [8d58795da4b1] + + * installers/PyQt5-Qt5-gpl.nsi: + Updated the installer for Qt v5.4.0. + [0d2998cc5275] + +2014-12-22 Phil Thompson + + * qmlscene/pluginloader.cpp: + Fixed a bug in the qmlscene plugin when building against Python v2. + [73b7aaf3c7cc] + + * sphinx/introduction.rst: + Updated the docs regarding the commercial license. + [c8a533acf511] + + * lib/LICENSE.commercial.short: + Fixed the short commercial license to match the full one. + [1a7134faa09a] + + * lib/LicenseFAQ.txt: + Tweaks to the license FAQ. + [75f024dc27b1] + +2014-12-21 Phil Thompson + + * lib/LICENSE.commercial: + Updated the commercial license to v4.0. + [6f91254b3779] + + * lib/LicenseFAQ.txt: + Added the license FAQ. + [970d31cd4a5e] + +2014-12-18 Phil Thompson + + * lib/SubclassCode/mksccode.py: + The sub-class convertor code generator now handles hidden C++ + namespaces. + [f951bd1e9437] + +2014-12-16 Phil Thompson + + * qpy/QtCore/qpycore_qstring.cpp: + Fixed the QString to Unicode conversion to not assume that a QString + has a trailing null QChar. + [7c319bbde1bf] + +2014-12-14 Phil Thompson + + * qpy/QtQml/qpyqmlobject.cpp: + Fixed a bug in the relaying of signals defined in Python to QML. + [850ad2e2dd38] + +2014-12-12 Phil Thompson + + * qpy/QtQml/qpyqmlobject.cpp: + Removed a forgotton debug statement. + [10c73f88bfd5] + + * PyQt5.msp: + Updated for Qt v5.4.0. + [dde3d6b31be9] + + * PyQt5.msp: + Scanned Qt v5.4.0. + [77ec0fc59d92] + +2014-12-07 Phil Thompson + + * qpy/QtQml/qpyqmlobject.cpp, qpy/QtQml/qpyqmlobject.h: + Fixed problems with creating item models in Python and accessing + from QML. + [646b6aafd24f] + +2014-12-05 Phil Thompson + + * sphinx/pyqt4_differences.rst: + Further doc updates regarding QtXml. + [fd14d57dd224] + + * PyQt5.msp, installers/PyQt5-Qt5-gpl.nsi: + Completed the QtXml module. + [29dcc0a9556a] + + * sphinx/api_metadata.cfg, sphinx/introduction.rst: + Updated the docs for the QtXml module. + [3170490e2c54] + + * lib/configure.py: + Updated configure.py for QtXml. + [907b21fd87f3] + + * PyQt5.msp: + Added the initial scan of the QtXml module. + [b0ad7a93f4f3] + +2014-12-01 Phil Thompson + + * PyQt5.msp, sphinx/api_metadata.cfg: + Final fixes for QWebEnginePage. Added the QtWebChannel and + QtWebEngineWidgets classes to the docs. + [dddb0c57ea0a] + + * PyQt5.msp: + Scanned QWebEngineCertificateError now that we know it is part of + the API. + [1afa4ca635d0] + +2014-11-30 Phil Thompson + + * installers/PyQt5-Qt5-gpl.nsi, sphinx/introduction.rst: + Updated the docs and installer in relation to QtWebEngineWidgets and + Windows. + [c84926e7bb99] + + * PyQt5.msp: + Completed the implementation of QWebEnginePage. + [f23dc18cbc3d] + + * PyQt5.msp, lib/configure.py: + Completed the implementation of QWebEngineView. + [8a7d384eaf6d] + + * PyQt5.msp, qpy/QtCore/qpycore_qhash.sip: + Completed the QtWebChannel module. + [f184466d65d2] + +2014-11-29 Phil Thompson + + * PyQt5.msp, lib/configure.py: + Implemented the majority of the QtWebChannel and QtWebEngineWidgets + modules. + [c7a7ad2384ab] + + * PyQt5.msp: + Scanned the QtWebChannel and QtWebEngineWidgets modules. + [3a6e2f146f7b] + + * sphinx/introduction.rst: + Updated the docs for QtWebChannel and QtWebEngineWidgets. + [01d762d375dd] + + * pyuic/uic/Compiler/qtproxies.py, pyuic/uic/widget- + plugins/qtquickwidgets.py: + Added support for QQuickWidget and QOpenGLWidget to pyuic5. + [78b75d36ff67] + + * installers/PyQt5-Qt5-gpl.nsi, lib/configure.py: + Updated configure.py and the installer for QtWebChannel and + QtWebEngineWidgets. + [1f0847cc6406] + + * PyQt5.msp, lib/SubclassCode/QtWidgets.versions, + sphinx/api_metadata.cfg: + Updated QtWidgets for Qt v5.4.0-rc. + [c42a45936b60] + + * PyQt5.msp: + Updated QtSql, QtWebKit and QtWebSockets for Qy v5.4.0-rc. + [0db3c6fc10e9] + + * PyQt5.msp, lib/SubclassCode/QtSensors.versions, + sphinx/api_metadata.cfg: + Updated QtSensors for Qt v5.4.0-rc. + [89bd5ee95fc7] + + * PyQt5.msp, lib/SubclassCode/QtQuick.versions, + sphinx/api_metadata.cfg: + Updated QtQml, QtQuick and QtQuickWidgets for Qt v5.4.0-rc. + [a3465156fcca] + + * PyQt5.msp, qpy/QtPrintSupport/qpyprintsupport_qlist.sip: + Updated QtNetwork and QtPrintSupport for Qt v5.4.0-rc. + [e2ddf6704ca0] + + * PyQt5.msp, sphinx/api_metadata.cfg: + Completed QtMultimedia (mostly by ignoring the difficult bits + because they are very unlikely to ever be needed). + [aaf808e972a1] + + * PyQt5.msp, sphinx/api_metadata.cfg: + Fixed the transfer annotations on one of the QCompleter ctors. + Updated the easy parts of QtMultimedia for Qt v5.5.0-rc. + [a5a2787aac3c] + +2014-11-28 Phil Thompson + + * sphinx/api_metadata.cfg: + Updated the docs meta-data for the new classes added so far. + [4b9612f9fd6e] + + * PyQt5.msp, lib/SubclassCode/QtGui.versions: + Updated QtGui and QtHelp for Qt v5.4.0-rc. + [0040ab36e770] + + * PyQt5.msp: + Updated QtCore for Qt v5.4.0-rc. + [41f942bc3e5b] + + * PyQt5.msp, lib/SubclassCode/QtBluetooth.versions: + Updated the Enginio and QtBluetooth modules for Qt v5.4.0-rc. + [2cbf21f8c128] + + * QtX11Extras/qx11info_x11.sip: + Updated QtX11Extras for Qt v5.4.0-rc. + [6d979ec944e4] + + * QtWinExtras/qwinthumbnailtoolbar.sip: + Updated QtWinExtras for Qt v5.4.0-rc. + [5cc43b61d591] + + * installers/PyQt5-Qt5-gpl.nsi: + Updated the Qt version number in the installer. + [cd16e111cb7c] + + * PyQt5.msp: + Initial scan of Qt v5.4.0-rc for existing modules. + [7fa71f7ee0df] + +2014-11-27 Phil Thompson + + * PyQt5.msp: + Fixed the return values of the addWidget() and insertWidget() + methods of QStackedLayout. + [d3f5d1f98b7d] + +2014-11-25 Phil Thompson + + * sphinx/gotchas.rst: + Updated the description of conversions to QByteArray from latin-1 + strings. + [4e4b64fa2936] + +2014-11-20 Phil Thompson + + * sphinx/qml.rst: + Updated the docs to describe how to run the qmlscene plugin example. + [360981336f2f] + +2014-11-16 Phil Thompson + + * qpy/QtQml/qmlregistertype.sip: + Added the missing non-template overloads of qmlRegisterType() and + qmlRegisterSingletonType(). + [15b37c22d541] + + * build.py: + A source package now contains a full ChangeLog. + [51a45084f486] + +2014-10-24 Phil Thompson + + * PyQt5.msp: + QObject.findChild() and QObject.findChildren() now handle QML proxy + objects. + [837edec02d98] + + * lib/configure.py: + Fixed a regression in configure.py related to the DBus Python + module. + [c45eba355f57] + +2014-10-23 Phil Thompson + + * PyQt5.msp: + Reduced the delay in the input hook on Windows. + [6e9a8b1ba494] + +2014-10-22 Phil Thompson + + * lib/configure.py: + Always check for the Python dbus module. + [661bf1f5c6e0] + + * lib/configure.py: + Run qmake once, recursively. + [3729fd92a74b] + + * lib/configure.py: + Renamed the .pro files for pyrcc5 and pylupdate5. + [2c328ebcc4a3] + + * designer/designer.pro-in, designer/python.pro-in, lib/configure.py, + qmlscene/python.pro-in, qmlscene/qmlscene.pro-in: + Renamed the .pro files for the designer and qmlscene plugins. + [c6ba2b645332] + +2014-10-10 Phil Thompson + + * lib/configure.py: + Handle OS/X with --enable-shared as well as --enable-framework. + [f2a6301eac36] + +2014-10-04 Phil Thompson + + * sphinx/deprecations.rst: + Updated the docs regarding unhandled Python exceptions. + [027db5a97624] + + * PyQt5.msp, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_public_api.cpp, qpy/QtCore/qpycore_public_api.h, + qpy/QtCore/qpycore_pyqtpyobject.cpp, + qpy/QtCore/qpycore_pyqtslotproxy.cpp, + qpy/QtCore/qpycore_qmessagelogger.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_virtual_error_handler.sip, + qpy/QtQml/qpyqml_api.h, qpy/QtQml/qpyqml_post_init.cpp, + qpy/QtQml/qpyqmllistproperty.cpp, qpy/QtQml/qpyqmlobject.cpp, + qpy/QtQml/qpyqmlsingletonobject.cpp, qpy/QtQuick/qpyquick_api.h, + qpy/QtQuick/qpyquick_post_init.cpp, qpy/QtQuick/qpyquickitem.cpp, + qpy/QtQuick/qpyquickpainteditem.cpp, sphinx/extension_api.rst: + Added pyqt5_err_print() to the public API (as a replacement for + PyErr_Print() that implements the new policy for unhandled + exceptions). + [05a22fdd6ce2] + + * PyQt5.msp, qpy/QtCore/qpycore_virtual_error_handler.sip: + Implemented the new behaviour for unhandled Python exceptions in + virtual reimplementations. + [bd744ebca21d] + +2014-10-03 Phil Thompson + + * PyQt5.msp, build.py, sphinx/deprecations.rst, + sphinx/incompatibilities.rst, sphinx/index.rst: + The automatic conversion of a Latin-1 encoded string to QByteArray + is now deprecated. + [ce37c9511e58] + +2014-10-02 Phil Thompson + + * examples/mainwindows/application/application.qrc, + examples/mainwindows/application/application_rc.py, + qpy/QtCore/qpycore_qstringlist.sip: + Merged the 5.3-maint branch into the trunk. + [db7746b0db88] + +2014-10-01 Phil Thompson + + * PyQt5.msp, installers/BuildGPL.txt, lib/configure.py: + Fixed QNetworkAccessManager.createRequest() so that it aborts rather + than crashes when None is returned of there is an unhandled + exception. + [028a89e8d6a2] <5.3-maint> + +2014-09-23 Phil Thompson + + * installers/PyQt5-Qt5-gpl.nsi: + Updated the Qt version number in the installer. + [5cef3154ebc0] <5.3-maint> + +2014-09-22 Phil Thompson + + * installers/PyQt5-Qt5-gpl.nsi: + Updated the version of ICU included in the installers. + [b50fd07dcd1a] <5.3-maint> + + * installers/PyQt5-Qt5-gpl.nsi: + The qt.conf files now use relative pathnames. + [345f75972cd2] <5.3-maint> + + * PyQt5.msp: + Updated the project file for Qt v5.3.2. + [1b51adc53538] <5.3-maint> + + * lib/configure.py: + Fixed building against Qt v5.3.2. + [3d76ad16a090] <5.3-maint> + +2014-09-16 Phil Thompson + + * lib/configure.py: + Fixed a configure.py regression when introspecting for a static + Python library. + [35dae695e5fe] <5.3-maint> + +2014-09-13 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + Allow an invalid QVariant to be converted to None if a + QMetaType::Void is expected because QML seems to expect it. + [9b8a2870307b] <5.3-maint> + +2014-09-12 Phil Thompson + + * .hgtags: + Added tag 5.3.2 for changeset b0872e23eef2 + [09479720708a] <5.3-maint> + + * NEWS: + Released as v5.3.2. + [b0872e23eef2] [5.3.2] <5.3-maint> + + * installers/PyQt5-Qt5-gpl.nsi: + Add the Enginio DLL to the installer. + [9913df0c09a7] <5.3-maint> + +2014-09-10 Phil Thompson + + * lib/configure.py: + Improved a configure.py error message. + [55d2db4d2016] <5.3-maint> + +2014-09-09 Phil Thompson + + * designer/pluginloader.cpp, designer/python.pro-in, lib/configure.py: + Reverted the behaviour of the designer plugin so that it explicitly + loads the Python interpreter library. + [520c69cecd7f] <5.3-maint> + +2014-09-07 Phil Thompson + + * sphinx/incompatibilities.rst: + Documented the different handling of signals with default arguments + as a potential incompatibility in PyQt v5.3. + [21c492233b4f] <5.3-maint> + +2014-09-04 Phil Thompson + + * NEWS: + Updated the NEWS file. + [3e67087edaa6] <5.3-maint> + +2014-09-03 Phil Thompson + + * pyuic/uic/uiparser.py: + Fixed a pyuic bug handling the alignment of box layouts. + [8ceffd80eb09] <5.3-maint> + +2014-09-02 Phil Thompson + + * .hgignore, PyQt5.msp, installers/BuildGPL.txt, lib/configure.py: + Fixed the handling of Python exceptions in QWebPage.extension(). + [6b688d2514d2] <5.3-maint> + +2014-08-25 Phil Thompson + + * installers/BuildGPL.txt, lib/configure.py: + Avoid a qmake warning by embedding the SIP flags earlier. Fix the + license check when using a configuration file. + [2764886c6cc6] <5.3-maint> + +2014-08-14 Phil Thompson + + * sphinx/signals_slots.rst: + Tightened up the docs regarding pyqtSignal(). + [920e22cba0c2] <5.3-maint> + + * installers/PyQt5-Qt5-gpl.nsi: + Updated the installer to include qmake and mkspecs which are needed + by lrelease when it is given a .pro file. + [946843b4db4e] <5.3-maint> + +2014-08-13 Phil Thompson + + * PyQt5.msp: + Added the (no longer preliminary) QWidget.windowHandle(). + [eec511d5634f] <5.3-maint> + +2014-07-31 Phil Thompson + + * Makefile, qpy/QtCore/qpycore_qjsonvalue.cpp, + qpy/QtQml/qpyqml_qjsvalue.cpp: + Fixed a couple of Python v2 build regressions. + [dcc21846e00f] <5.3-maint> + + * Makefile, PyQt5.msp: + Fixed QAbstractPrintDialog.PrintDialogOption.None for Python v3. + [6cfab73403c8] <5.3-maint> + +2014-07-28 Phil Thompson + + * NEWS, PyQt5.msp, sphinx/api_metadata.cfg, sphinx/introduction.rst: + Completed the implementation of the Enginio module. + [4a9d7e1d5662] <5.3-maint> + +2014-07-27 Phil Thompson + + * PyQt5.msp, installers/PyQt5-Qt5-gpl.nsi, lib/configure.py: + Implemented the rest of the Enginio module except for EnginioModel. + [6f28c7ec4a3a] <5.3-maint> + + * PyQt5.msp, lib/configure.py, sphinx/api_metadata.cfg: + Added the Enginio module to the build system. Implemented the + Enginio.Enginio namespace. + [bf79ca211de1] <5.3-maint> + + * PyQt5.msp: + Initial scan of the Enginio module. + [b90c5231f98b] <5.3-maint> + + * build.py, sphinx/api_details/qjsonarray.rst, + sphinx/api_details/qjsonobject.rst, + sphinx/api_details/qjsonvalue.rst: + Added support for including additional API specific documentation. + [7c4bc36ed40a] <5.3-maint> + + * PyQt5.msp, qpy/QtCore/qjsonarray.sip, qpy/QtCore/qjsonobject.sip, + qpy/QtCore/qpycore_api.h, qpy/QtCore/qpycore_qjsonvalue.cpp, + qpy/QtCore/qpycore_qstringlist.sip, qpy/QtCore/qstringlist.sip, + qpy/QtQml/qpyqml_qjsvalue.cpp, sphinx/api_metadata.cfg: + Implemented the QJsonDocument, QJsonParseError and QJsonValue + classes. Implemented QJsonArray and QJsonObject as mapped types. + Remove redundant QJSValue ctors. + [abc3d82e4430] <5.3-maint> + + * PyQt5.msp: + Initial scan of the JSON classes. + [e454d7715289] <5.3-maint> + +2014-07-22 Phil Thompson + + * installers/BuildGPL.txt: + Updated the internal docs for installing MSVC2010. + [dae53e32f8d7] <5.3-maint> + +2014-07-21 Phil Thompson + + * PyQt5.msp: + Added the missing setUnifiedTitleAndToolBarOnMac() and + unifiedTitleAndToolBarOnMac() to QMainWindow. + [1cfe8cdfc5a8] <5.3-maint> + + * qpy/QtCore/qpycore_enums_flags.cpp: + Fixed a benign exception while parsing Q_ENUMS and Q_FLAGS. + [b8e6f34be940] <5.3-maint> + +2014-07-20 Phil Thompson + + * PyQt5.msp: + Fixed ownership changes when calling + QQmlEngine.setObjectOwnership(). + [77bc10e785e2] <5.3-maint> + + * sphinx/pyqt4_differences.rst: + Clarified the advice about setdestroyonexit(). + [126152cc8091] <5.3-maint> + + * qpy/QtQml/qpyqmlobject.cpp: + Fixed an attempt to decrement a reference count with the GIL in the + QML proxy. + [722a2bd8deb3] <5.3-maint> + + * PyQt5.msp: + Added a missing /TransferThis/ to the QItemSelectionModel single arg + ctor. + [c0c1d57cd8a8] <5.3-maint> + + * build.py, examples/mainwindows/application/application.py, + examples/mainwindows/application/application.qrc, + examples/mainwindows/application/application_rc.py: + Updated the application.py example so that it doesn't use pyrcc and + will work as a deployed application without changes. + [b4b75e5b26f5] <5.3-maint> + +2014-07-12 Phil Thompson + + * pylupdate/fetchtr.cpp: + Fixed the pylupdate parsing of translate(). + [7687a1e7a9e3] <5.3-maint> + + * PyQt5.msp: + Make sure widgets always have an owner even if the layout isn't in a + widget. + [51060169e5be] <5.3-maint> + + * PyQt5.msp: + Ensure that the ownership of widgets in a layout are always correct. + [09687398dc66] <5.3-maint> + +2014-07-10 Phil Thompson + + * designer/python.pro-in, lib/configure.py, qmlscene/python.pro-in: + Work around QTBUG-39300. + [0b94a0c4f4d2] <5.3-maint> + +2014-07-09 Phil Thompson + + * PyQt5.msp: + Fixed QWebSocket when SSL support is disabled. + [bae1d0bfb5a4] <5.3-maint> + +2014-07-04 Phil Thompson + + * .hgtags: + Added tag 5.3.1 for changeset 04f59a3d5419 + [afc3fc029eef] <5.3-maint> + + * NEWS: + Released as v5.3.1. + [04f59a3d5419] [5.3.1] <5.3-maint> + +2014-07-03 Phil Thompson + + * sphinx/deploy_commercial.rst, sphinx/installation.rst: + Updated the docs to refer to pyqtdeploy rather than VendorID. + [144f912ad1eb] <5.3-maint> + +2014-07-01 Phil Thompson + + * installers/BuildGPL.txt: + Updates to the installer docs. + [796d5e8ebe63] <5.3-maint> + +2014-06-26 Phil Thompson + + * Makefile, PyQt5.msp, installers/PyQt5-Qt5-gpl.nsi: + Updated for Qt v5.3.1. + [43eca77eb086] <5.3-maint> + + * PyQt5.msp: + Scanned Qt v5.3.1. + [ed0fcce6113e] <5.3-maint> + + * PyQt5.msp: + Added a missing /ReleaseGIL/ to + QNetworkAccessManager.createRequest(). + [a09288c24355] <5.3-maint> + +2014-06-25 Phil Thompson + + * qpy/QtGui/qpyopengl_value_array.cpp: + Fixed for building against Python v2.6.2 and earlier. + [b10aab47cc69] <5.3-maint> + +2014-06-17 Phil Thompson + + * pyuic/uic/uiparser.py: + Fixed a pyuic regression in the handling of implicit QTableWidget + dimensions. + [65acf1dcaa30] <5.3-maint> + +2014-06-16 Phil Thompson + + * Makefile, lib/configure.py, sphinx/installation.rst: + Removed the --consolidate argument to configure.py as it never + worked and pyqtdeploy is the way forward. + [8110e649a041] <5.3-maint> + +2014-06-14 Phil Thompson + + * lib/configure.py: + Only pass -spec to qmake if it is really necessary. + [770fc634f362] <5.3-maint> + +2014-06-03 Phil Thompson + + * lib/configure.py: + Fixes for Python v2.6. + [0e31a2da0fa2] <5.3-maint> + +2014-06-02 Phil Thompson + + * lib/configure.py: + Fixed the handling of the default qmake spec. Fixed the linker + version scripts generated for Linux. + [6ec15bc5d1bd] <5.3-maint> + +2014-06-01 Phil Thompson + + * pylupdate/fetchtr.cpp, pylupdate/main.cpp: + Added the -tr-function and -translate-function command line options + to pylupdate5. + [6cb476d4cc9a] <5.3-maint> + +2014-05-30 Phil Thompson + + * qpy/QtCore/qpycore_qvariant_value.cpp: + Ported the QSettings.value() fixes from PyQt4. + [4466a72038cc] <5.3-maint> + +2014-05-29 Phil Thompson + + * Makefile, installers/PyQt5-Qt5-gpl.nsi: + Fixed the link to the Qt documentation in the installers. Updated + the cross-compile target version. + [3d4d0f24d41b] + +2014-05-26 Phil Thompson + + * .hgtags: + Added tag 5.3 for changeset 1c94cbc7c33f + [50cfe16807be] + + * NEWS: + Released as v5.3. + [1c94cbc7c33f] [5.3] + + * PyQt5.msp: + Backed out the changes related to the parenting of dialogs. It + introduces potential incompatibilities for no real gain. + [187d130762ae] + +2014-05-24 Phil Thompson + + * PyQt5.msp: + Removed (rather than ignored) the missing QDnsLookup ctor so that we + will consider it again with Qt v5.3.1. + [db2986a5beb0] + +2014-05-23 Phil Thompson + + * PyQt5.msp: + Updated for Qt v5.3.0. Ignore the missing QDnsLookup ctor. + [bce757fd6b87] + +2014-05-19 Phil Thompson + + * Makefile: + Added the Android build target. + [f6e83c05f2a1] + +2014-05-16 Phil Thompson + + * lib/configure.py: + Make sure that the -B flag isn't included in PYQT_CONFIGURATION. + [e43b3f33502e] + + * Makefile: + Install the .sip files into sysroot when cross-compiling. + [5d636dfea5d7] + + * lib/configure.py, sphinx/installation.rst: + Renamed qt_disabled_features to pyqt_disabled_features. + [64489c7ec72b] + + * lib/configure.py: + Make use of SIP v4.16's handling of timelines to avoid having to + work out the exact version tag to use. + [be0afd3dfe65] + +2014-05-15 Phil Thompson + + * PyQt5.msp: + Added some missing PyQt_Printer features. Added the PyQt_NoBootstrap + feature for iOS. + [22e30a316ffc] + + * Makefile: + Fix the installation of __init__.py and uic for the iOS simulator + build. + [6707f8fb7fcd] + + * Makefile: + Fixed the installation of the Qt module for the iOS simulator build. + [d4cbad9ba118] + + * PyQt5.msp: + Fixed another desktop OpenGL dependency. + [a96eb576b700] + + * Makefile: + Refactored the top level Makefile and added support for iOS builds. + [0c7fb2aa9b47] + +2014-05-14 Phil Thompson + + * lib/configure.py: + Don't generate the QScintilla .api file if it isn't going to be + installed. + [3fdd63dd47f1] + + * lib/configure.py, sphinx/installation.rst: + Adjustments to the license handling because there is no way to + discover the licensee when cross-compiling. + [559814273fde] + + * qpy/QtGui/opengl_types.sip, qpy/QtGui/qpyopengl_api.h, + qpy/QtGui/qpyopengl_array_convertors.cpp, + qpy/QtGui/qpyopengl_init.cpp, qpy/QtGui/qpyopengl_value_array.cpp: + Fixes for building for an OpenGL ES system. + [b90c3d5ccd5d] + + * PyQt5.msp, installers/PyQt5-Qt5-gpl.nsi, lib/configure.py, + sphinx/api_metadata.cfg, sphinx/introduction.rst: + Completed the implementation of the QWebSockets module. + [b1dfa886d9a7] + + * PyQt5.msp: + Disabled the new (but missing) QDnsLookup ctor. + [fb490165ca64] + + * PyQt5.msp, installers/PyQt5-Qt5-gpl.nsi, lib/configure.py, + sphinx/api_metadata.cfg, sphinx/introduction.rst: + Completed the QtQuickWidgets module. + [a251131319a4] + + * PyQt5.msp: + Added the scanned stubs of the QtQuickWidgets and QtWebSockets + modules. + [dc836db4f607] + +2014-05-13 Phil Thompson + + * PyQt5.msp, lib/configure.py, sphinx/api_metadata.cfg: + Updated all existing non-platform-specific modules for Qt + v5.3.0-rc1. + [8ec4f9396cd6] + + * PyQt5.msp: + Initial scan of Qt v5.3.0-rc1. + [a0143121db58] + +2014-05-12 Phil Thompson + + * PyQt5.msp: + Fixes for building against Qt v5.3.0-rc1. + [90a1ae3f0434] + + * lib/configure.py: + Fixed the default configure.py help text related to prot-is-public. + [6ec1bbe11d50] + +2014-05-11 Phil Thompson + + * Makefile, lib/configure.py, sphinx/installation.rst: + Added the --no-tools option to configure.py. + [3afc3d6a0b8c] + + * Makefile, build.py, configurations/rpi_py3.cfg, lib/configure.py, + sphinx/installation.rst: + Reimplemented the support for configuration files so that it is + portable to Python v2. Removed the configurations directory. + --sysroot now replaces the sys.prefix part of a directory name. + [2bc27b9bbc8a] + +2014-05-10 Phil Thompson + + * lib/configure.py, sphinx/conf.py, sphinx/installation.rst: + Documented the --target-py-version and --sysroot options. A couple + of minor configure.py bug fixes. + [629d4c624ee3] + + * configurations/rpi_py3.cfg, lib/configure.py: + Added the --target-py-version and --sysroot options to configure.py. + Configuration files now have the Python version and sysroot pre- + populated from the command line. sysroot is now automatically + prepended to the relevent introspected directories. Updated the RPi + configuration file appropriately. + [a65adbbac0f5] + +2014-05-06 Phil Thompson + + * lib/configure.py, pyuic/uic/widget-plugins/qtdeclarative.py, + qpy/QtCore/qpycore.pro, qpy/QtCore/qpycore_qstringlist.cpp, + qpy/QtCore/qpycore_sip.h, qpy/QtDBus/qpydbus.pro, + qpy/QtDesigner/qpydesigner.pro, qpy/QtGui/qpygui.pro, + qpy/QtGui/qpyopengl_add_constants.c, qpy/QtQml/qpyqml.pro, + qpy/QtQuick/qpyquick.pro: + Merged the 5.2-maint branch into the trunk. + [c00d9ae88bd0] + + * configurations/rpi_py3.cfg, lib/configure.py: + A configuration file is now parsed with configparser with + ExtraInterpolation. A configuration file must define a section + covering the version of Qt being used. Updated the Raspberry Pi + configuration file to meet the revised requirements. + [38fca2a9702d] + +2014-04-30 Phil Thompson + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Qt::UniqueConnection is a flag. + [3b978cee5968] <5.2-maint> + +2014-04-29 Phil Thompson + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Implement support for Qt::UniqueConnection when connecting to Python + slots. + [33b67d803637] <5.2-maint> + +2014-04-28 Phil Thompson + + * qpy/QtCore/qpycore_pyqtslot.cpp, qpy/QtCore/qpycore_pyqtslot.h, + qpy/QtCore/qpycore_pyqtslotproxy.cpp: + Fixed a bug detecting when the Python receiver object has been + garbage collected. Delete slot proxies if the slot receiver no + longer exists. + [3a4d245409f0] <5.2-maint> + + * PyQt5.msp: + Removed the /TransferThis/ from the parent argument of the ctor of + all dialog classes. This is a better approach to the special + ownership behaviour of dialogs as that taken by PyQt4. + QWidget.setParent() now handles dialogs properly. + [4535ef2b7372] <5.2-maint> + +2014-04-23 Phil Thompson + + * PyQt5.msp: + Handle top-level widgets in the QApplication dtor as PyQt4 does + because sip.setdestoyonexit() can't help if the GUI isn't held in + the main block. + [f6521c24d6b1] <5.2-maint> + +2014-04-22 Phil Thompson + + * PyQt5.msp: + Added a missing /ReleaseGIL/ to the QSqlQuery ctor that can execute + a query. + [d11e914518cc] <5.2-maint> + + * sphinx/incompatibilities.rst, sphinx/index.rst, + sphinx/signals_slots.rst: + Documented the no_receiver_check issues. + [3acf8677f5aa] <5.2-maint> + +2014-04-21 Phil Thompson + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_pyqtslot.cpp, + qpy/QtCore/qpycore_pyqtslot.h, qpy/QtCore/qpycore_pyqtslotproxy.cpp, + qpy/QtCore/qpycore_pyqtslotproxy.h: + Implemented the 'no_receiver_check' argument to connect(). By + default checks for receiver C++ instances are enabled. + [c29a6eac4aff] <5.2-maint> + +2014-04-15 Phil Thompson + + * qpy/QtCore/qpycore_qstring.cpp: + Fixed a bug in the conversion of QStrings with surrogate pairs. + [16a9c19d08cf] <5.2-maint> + + * Makefile, lib/configure.py: + Make sure the SIP include directory is searched before the Python + include directory if they are different. + [50212db2acde] <5.2-maint> + +2014-04-06 Phil Thompson + + * PyQt5.msp, qpy/QtDBus/qpydbuspendingreply.cpp, + qpy/QtDBus/qpydbusreply.cpp, + qpy/QtQml/qmlattachedpropertiesobject.sip, + qpy/QtQml/qmlregistertype.sip, qpy/QtQml/qpyqml_api.h, + qpy/QtQml/qpyqml_register_singleton_type.cpp, + qpy/QtQml/qpyqml_register_type.cpp: + Fixed the remaining symbol name clashes with static builds. + [e1ef73ca0fbd] <5.2-maint> + + * pyuic/uic/uiparser.py: + Fixed pyuic handling of non-exclusive button groups. + [a46790060328] <5.2-maint> + +2014-03-31 Phil Thompson + + * qpy/QtCore/qpycore_types.cpp: + Fixed a regression with Python v2 where a classic class is used as a + mixin. + [5fc3bba566c7] <5.2-maint> + +2014-03-30 Phil Thompson + + * lib/configure.py: + Fixed the display of the static/shared status by configure.py. + [39a2d2d3925c] <5.2-maint> + +2014-03-29 Phil Thompson + + * pyuic/uic/uiparser.py: + Fixed pyuic's handling of connecting to QButtonGroups. + [6b06e4c8a5d2] <5.2-maint> + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Improved the text of an exception now that signals can be defined in + mixins. + [be0c8c6b433b] <5.2-maint> + +2014-03-24 Phil Thompson + + * pyuic/uic/widget-plugins/qtdeclarative.py: + Removed the unsupported pyuic widget plgin for QDeclarativeView. + [d8a05545da5d] <5.2-maint> + +2014-03-21 Phil Thompson + + * PyQt5.msp: + Added a missing /KeepReference/ to QThreadPool::globalInstance(). + Added /ReleaseGIL/ to start() and tryStart() for documentation + reasons. Removed /NewThread/ from QRunnable::run(). + [143e8bb4c4b9] <5.2-maint> + + * PyQt5.msp, lib/configure.py, sphinx/deploy_commercial.rst, + sphinx/installation.rst: + VendorID is Python v2 specific. + [1bf09b117cb2] <5.2-maint> + +2014-03-20 Phil Thompson + + * Makefile, lib/OpenGL/gen_opengl_constants.py, lib/configure.py, + qpy/QtGui/qpyopengl_add_constants.cpp: + Fixed the generated OpenGL constants to be C++11 compatible. + [5db729002562] <5.2-maint> + +2014-03-18 Phil Thompson + + * Makefile, PyQt5.msp: + Fixed a symbol clash when built as static modules. + [b582b195ed9f] <5.2-maint> + +2014-03-14 Phil Thompson + + * .hgtags: + Added tag 5.2.1 for changeset 8709a1871929 + [e86b25532c02] <5.2-maint> + + * NEWS: + Released as v5.2.1. + [8709a1871929] [5.2.1] <5.2-maint> + +2014-03-13 Phil Thompson + + * qpy/QtCore/qpycore_qobject_getattr.cpp: + Fixed a regression parsing introspected signal signatures. + [b12f051bec16] <5.2-maint> + + * qpy/QtCore/qpycore_public_api.h, + qpy/QtCore/qpycore_pyqtboundsignal.h: + Fixes for building against the latest XCode. + [67b67beb6e4b] <5.2-maint> + +2014-03-10 Phil Thompson + + * PyQt5.msp, lib/configure.py: + Fixed Windows build problems. + [f63c627bece7] <5.2-maint> + +2014-03-09 Phil Thompson + + * lib/LICENSE.commercial: + Updates to the commercial license. + [3a484144e4ff] <5.2-maint> + +2014-03-05 Phil Thompson + + * NEWS: + Updated the NEWS file. + [f6528098012c] <5.2-maint> + +2014-03-04 Phil Thompson + + * qpy/QtCore/qpycore_types.cpp, sphinx/pyqt4_differences.rst, + sphinx/signals_slots.rst: + Properties, signals and slots can now be defined in mixins (ie. non- + QObject) classes. + [3942032af2de] <5.2-maint> + + * pylupdate/fetchtr.cpp: + Backed out ab343b486918 (pylupdate support for nested classes) + because it breaks a common use case. + [6cf443fbd854] <5.2-maint> + + * pylupdate/fetchtr.cpp, pylupdate/main.cpp, pylupdate/merge.cpp, + pylupdate/metatranslator.cpp, pylupdate/metatranslator.h, + pylupdate/numberh.cpp, pylupdate/proparser.cpp, + pylupdate/proparser.h, pylupdate/sametexth.cpp, + pylupdate/simtexth.cpp, pylupdate/simtexth.h, + pylupdate/translator.cpp, pylupdate/translator.h, pyrcc/main.cpp, + pyrcc/rcc.cpp, pyrcc/rcc.h: + Updated the pylupdate5 and pyrcc5 copyright and license notices. + [379869955e02] <5.2-maint> + +2014-03-03 Phil Thompson + + * PyQt5.msp: + The first stride argument of the ArgumentSet ctor is now the + optional second argument. The stride is computed if not explicitly + specified. + [19a0243f60c2] <5.2-maint> + + * dbus/dbus.cpp, dbus/helper.h: + Fixed the licensing of the dbus module. + [6e831021c4ef] <5.2-maint> + +2014-02-22 Phil Thompson + + * lib/LICENSE.commercial: + Updated the commercial license. + [2685b40cf32d] <5.2-maint> + + * sphinx/pyqt4_differences.rst, sphinx/signals_slots.rst: + Updated the docs regarding the handling of Qt signals with optional + arguments. + [9b1debc115c7] <5.2-maint> + + * PyQt5.msp: + Added the QSGGeometry.AttributeSet ctor and fixed a couple of + related bugs. + [d5adaa40b597] <5.2-maint> + + * lib/configure.py: + Fixed configure.py when QtCore is not being built. + [d0b2571b8413] <5.2-maint> + +2014-02-21 Phil Thompson + + * PyQt5.msp: + Release the GIL when using QQmlApplicationEngine to load a QML file. + [8e4b7e2d80b4] <5.2-maint> + + * qpy/QtCore/qpycore_chimera_storage.cpp: + Fixed the handling of results of JavaScript functions in QML. + [548c6b36b376] <5.2-maint> + + * lib/configure.py: + Fix remaining misleading error messages about qmake on Windows. + [a527a1cb7ab0] <5.2-maint> + + * lib/configure.py: + Fixed the pyuic5 wrapper for Python v3.4 on OS/X. + [82582f4dbc26] <5.2-maint> + +2014-02-18 Phil Thompson + + * qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_pyqtsignal.h, + qpy/QtCore/qpycore_qobject_getattr.cpp, + qpy/QtCore/qpycore_types.cpp: + Use SIP generated signal emitters if they are available. + [e48c35dc1609] <5.2-maint> + + * Makefile, PyQt5.msp, QAxContainer/qaxbase.sip, + QAxContainer/qaxobject.sip, QAxContainer/qaxwidget.sip, + lib/configure.py, qpy/QtCore/qpycore_chimera.cpp, + qpy/QtCore/qpycore_misc.cpp, qpy/QtCore/qpycore_misc.h, + qpy/QtCore/qpycore_pyqtsignal.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_types.cpp: + Changes needed by the SIP v11.0 internal API. + [04cb8f12f608] <5.2-maint> + +2014-02-15 Phil Thompson + + * PyQt5.msp, lib/SubclassCode/QtGui.versions: + Fixes when building against OpenGL/ES2. + [c8f5b569c377] <5.2-maint> + +2014-02-10 Phil Thompson + + * lib/configure.py: + Removed a workaroud for a bug in the OS/X Python installation that + no longer seems necessary. + [42b4bf1a7bbc] <5.2-maint> + + * Makefile, lib/configure.py: + Fixed the building of the Qt module. + [cdfe5633ab6b] <5.2-maint> + + * PyQt5.msp, installers/PyQt5-Qt5-gpl.nsi: + Updated for Qt v5.2.1. + [8858e7832a48] <5.2-maint> + + * lib/OpenGL/gen_opengl_constants.py, lib/configure.py, + qpy/QtGui/qpyopengl_add_constants.c, + qpy/QtGui/qpyopengl_add_constants.cpp, + qpy/QtGui/qpyopengl_version_functions.cpp: + More fixes for the OpenGL changes. + [e40a56e2861e] <5.2-maint> + + * PyQt5.msp: + Don't call qpyopengl_init() if OpenGL is disabled. + [b3169a87acdd] <5.2-maint> + +2014-02-09 Phil Thompson + + * qpy/QtDBus/qpydbus_chimera_helpers.cpp: + Another fix for the QPy refactoring. + [db0f04a03742] <5.2-maint> + + * lib/OpenGL/gen_opengl_constants.py, + qpy/QtGui/qpyopengl_add_constants.c, qpy/QtGui/qpyopengl_api.h, + qpy/QtGui/qpyopengl_array_convertors.cpp, + qpy/QtGui/qpyopengl_attribute_array.cpp, + qpy/QtGui/qpyopengl_data_cache.cpp, + qpy/QtGui/qpyopengl_data_cache.h, qpy/QtGui/qpyopengl_init.cpp, + qpy/QtGui/qpyopengl_uniform_value_array.cpp, + qpy/QtGui/qpyopengl_value_array.cpp, + qpy/QtGui/qpyopengl_version_functions.cpp: + Fixes for the QPy QtGui library when building with OpenGL disabled. + [32991310ea1e] <5.2-maint> + + * PyQt5.msp, qpy/QtDBus/qpydbus_api.h, + qpy/QtDBus/qpydbus_chimera_helpers.cpp, + qpy/QtDBus/qpydbus_chimera_helpers.h, + qpy/QtDBus/qpydbus_post_init.cpp, + qpy/QtDBus/qpydbuspendingreply.cpp, qpy/QtDBus/qpydbusreply.cpp, + qpy/QtQml/qpyqml_post_init.cpp, qpy/QtQml/qpyqml_qjsvalue.cpp, + qpy/QtQml/qpyqml_sip.h, qpy/QtQml/qpyqmllistproperty.cpp, + qpy/QtQuick/qpyquick_chimera_helpers.cpp, + qpy/QtQuick/qpyquick_chimera_helpers.h, + qpy/QtQuick/qpyquick_post_init.cpp, + qpy/QtQuick/qpyquick_register_type.cpp, + qpy/QtQuick/qpyquick_register_type.h: + Refactored the rest of the QPy libraries with the exception of + QtGui. + [9cc5f284b315] <5.2-maint> + + * qpy/QtCore/qpycore_api.h, qpy/QtCore/qpycore_chimera.cpp, + qpy/QtCore/qpycore_chimera.h, + qpy/QtCore/qpycore_chimera_storage.cpp, + qpy/QtCore/qpycore_classinfo.cpp, qpy/QtCore/qpycore_decorators.cpp, + qpy/QtCore/qpycore_enums_flags.cpp, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_misc.cpp, qpy/QtCore/qpycore_misc.h, + qpy/QtCore/qpycore_objectified_strings.h, + qpy/QtCore/qpycore_post_init.cpp.in, + qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtconfigure.cpp, + qpy/QtCore/qpycore_pyqtpyobject.cpp, + qpy/QtCore/qpycore_pyqtslotproxy.cpp, + qpy/QtCore/qpycore_pyqtslotproxy.h, + qpy/QtCore/qpycore_qmessagelogger.cpp, + qpy/QtCore/qpycore_qmetaobject.cpp, + qpy/QtCore/qpycore_qmetaobject_helpers.cpp, + qpy/QtCore/qpycore_qobject_getattr.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_qobject_helpers.h, + qpy/QtCore/qpycore_qstring.cpp, qpy/QtCore/qpycore_qvariant.cpp, + qpy/QtCore/qpycore_qvariant_value.cpp, qpy/QtCore/qpycore_sip.h, + qpy/QtCore/qpycore_types.cpp, qpy/QtCore/qpycore_types.h: + Refactored the QPy QtCore header files slightly so that the private + API to the generated code is qpycore_api.h and the private API from + the generated code is sipAPIQtCore.h. The public API remains + qpycore_public_api.h. + [2194a7a65de6] <5.2-maint> + + * lib/configure.py: + Generate relative pathnames for the .sip files in the .pro files. + [501007c40b60] <5.2-maint> + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.cpp, + qpy/QtCore/qpycore_pyqtproperty.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_types.cpp, + qpy/QtGui/qpyopengl_data_cache.cpp: + Suppress warnings about tp_finalize. + [351f44e52713] <5.2-maint> + + * qpy/QtGui/opengl_types.sip, qpy/QtGui/qpygui_qpair.sip: + Added PyQt_OpenGL to a couple of extra places (primarily for + documentation purposes as wouldn't generate code). + [3c1cefcb0c1d] <5.2-maint> + + * lib/configure.py: + The extension modules now have the correct install name on OS/X. + [2b36703b6419] <5.2-maint> + +2014-02-06 Phil Thompson + + * lib/configure.py, qpy/QtCore/qpycore.pro, qpy/QtDBus/qpydbus.pro, + qpy/QtDesigner/qpydesigner.pro, qpy/QtGui/qpygui.pro, + qpy/QtQml/qpyqml.pro, qpy/QtQuick/qpyquick.pro: + The QPy support code is no longer built as separate libraries. + [b160ecda2f38] <5.2-maint> + +2014-02-05 Phil Thompson + + * PyQt5.msp, qpy/QtQml/qpyqml.pro, qpy/QtQml/qpyqml_api.h, + qpy/QtQml/qpyqml_qjsvalue.cpp, qpy/QtQml/qpyqml_sip.h: + A special value, bool, int, float or string may be specified + whenever a QJSValue is expected. + [4fe146b380cb] <5.2-maint> + + * pylupdate/fetchtr.cpp: + Fixes for the handling of nested classes in pylupdate from Matteo + Bertini. + [ab343b486918] <5.2-maint> + + * examples/widgets/tetrix.py: + Fixes to the tetrix.py example from Mike Taverne. + [1ff4b79a485e] <5.2-maint> + +2014-02-04 Phil Thompson + + * PyQt5.msp, lib/SubclassCode/QtGui.versions, lib/configure.py: + PyQt should now build against a Qt installation with no OpenGL + support. + [1fc92a957229] <5.2-maint> + + * lib/configure.py: + qreal is defined as double on all platforms when built against Qt + v5.2. + [0c098ca98d24] <5.2-maint> + +2014-02-03 Phil Thompson + + * qpy/QtCore/qpycore_qstring.cpp: + Fixed the QString to Python conversion for Python v3.3 and later as + I hadn't realised that the KIND is interpreted very strictly. + [ef3ac28273c8] <5.2-maint> + +2014-01-29 Phil Thompson + + * PyQt5.msp, qpy/QtCore/qpycore.pro, qpy/QtCore/qpycore_api.h, + qpy/QtCore/qpycore_qstringlist.cpp, + qpy/QtCore/qpycore_qstringlist.sip: + The mapping of QStringList is now handled the same as QList. + [9f2c1e2bc3c9] <5.2-maint> + +2014-01-17 Phil Thompson + + * QtX11Extras/qx11info_x11.sip, lib/configure.py: + Fixes for QX11Info so that it will build against Qt v5.1. + [7d0f384170fd] <5.2-maint> + +2014-01-13 Phil Thompson + + * PyQt5.msp: + Fixed the build when SSL support is disabled. + [cb3debf77d04] <5.2-maint> + +2014-01-10 Phil Thompson + + * build.py, sphinx/api_metadata.cfg: + Updated the docs generation to reflect the changes to the structure + of the docs on qt-project.org. + [9301cdf68316] <5.2-maint> + +2014-01-08 Phil Thompson + + * qpy/QtGui/qpygui_qpair.sip: + Fixed a bug building against versions of Qt prior to v5.2.0. + [5c798e751276] <5.2-maint> + +2014-01-07 Phil Thompson + + * .hgtags: + Added tag 5.2 for changeset 9352d801a9da + [0bb3d7b8c32a] + + * Makefile, NEWS: + Released as v5.2. + [9352d801a9da] [5.2] + +2014-01-04 Phil Thompson + + * qpy/QtCore/qpycore_qstring.cpp: + Fixed the PEP 393 conversion from QString to Python unicode objects + so that it properly handles surrogates. Also made the common case + where the text is Latin-1 faster and the final object smaller. + [52e28eb8f54e] + +2014-01-02 Phil Thompson + + * Makefile, build.py, dbus/dbus.cpp, dbus/helper.h, + lib/LICENSE.commercial.short, lib/LICENSE.gpl, + lib/LICENSE.gpl.short, lib/LICENSE.internal, pyrcc/rcc.cpp, + pyuic/uic/Compiler/compiler.py, pyuic/uic/Compiler/indenter.py, + pyuic/uic/Compiler/misc.py, pyuic/uic/Compiler/proxy_metaclass.py, + pyuic/uic/Compiler/qobjectcreator.py, + pyuic/uic/Compiler/qtproxies.py, pyuic/uic/Loader/loader.py, + pyuic/uic/Loader/qobjectcreator.py, pyuic/uic/__init__.py, + pyuic/uic/exceptions.py, pyuic/uic/objcreator.py, + pyuic/uic/properties.py, pyuic/uic/uiparser.py, pyuic/uic/widget- + plugins/qtwebkit.py, sphinx/conf.py: + Updated the copyright notices. + [95cd691c347d] + +2013-12-29 Phil Thompson + + * PyQt5.msp: + Fixed the QJSValue ctors. + [480c23d29277] + +2013-12-25 Phil Thompson + + * QtWinExtras/qwinjumplist.sip: + Updated the sub-class convertor code for the QtWinExtras module. + [31049d3853ae] + + * installers/PyQt5-Qt5-gpl.nsi: + Fixes for the installer for Qt v5.2.0. + [421c92fb3c1a] + + * QtWinExtras/qwinthumbnailtoolbar.sip, lib/configure.py: + More QtWinExtras fixes. + [35df5513f242] + + * QtWinExtras/qwinfunctions.sip: + Fixes for the QtWinExtras module. + [1cb902bbb5c1] + + * installers/PyQt5-Qt5-gpl.nsi: + Updated the installer for Qt v5.2.0. + [bb68738fcc1b] + +2013-12-24 Phil Thompson + + * sphinx/api_metadata.cfg: + Updated the documentation for the QtWinExtras module. + [c8cbc2483694] + + * QtWinExtras/QtWinExtrasmod.sip, QtWinExtras/qwinjumplist.sip, + QtWinExtras/qwinjumplistcategory.sip, + QtWinExtras/qwinjumplistitem.sip, QtWinExtras/qwintaskbarbutton.sip, + QtWinExtras/qwintaskbarprogress.sip, + QtWinExtras/qwinthumbnailtoolbar.sip, + QtWinExtras/qwinthumbnailtoolbutton.sip: + Completed the initial implementation of the QtWinExtras module. + [d27e0faa5fe7] + + * PyQt5.msp, qpy/QtBluetooth/qpybluetooth_qlist.sip: + Completed the implementation of the QtBluetooth module. + [cc31f2f83bb0] + +2013-12-22 Phil Thompson + + * PyQt5.msp, qpy/QtBluetooth/qpybluetooth_qlist.sip, + qpy/QtBluetooth/qpybluetooth_quint128.sip: + Completed the implementation of QBluetoohUuid. + [7aa305b853b0] + + * PyQt5.msp: + Fixed the signature of the QUuid ctor. + [dbaff74f3365] + + * PyQt5.msp, qpy/QtBluetooth/qpybluetooth_qlist.sip: + Implemented QList. + [4ef77ea90719] + + * PyQt5.msp: + Complete the Qt v5.2.0 support for QtGui. + [d2c55646d351] + + * PyQt5.msp, qpy/QtGui/qpygui_qpair.sip: + Implemented the new QtGui specific QPair based mapped types. + [91180027e254] + +2013-12-21 Phil Thompson + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Emitting a signal with default arguments ommitted no longer requires + the exact signal overload to be specified - the default overload can + be used. + [a9cbd3fc6215] + + * examples/multimediawidgets/player.py: + Removed some old debugging messages from the player.py example. + [4c6847702264] + +2013-12-20 Phil Thompson + + * PyQt5.msp, qpy/QtCore/qpycore_qhash.sip, + qpy/QtCore/qpycore_qmap.sip, qpy/QtNetwork/qpynetwork_qmap.sip: + Refactored QMap and QMultiMap. + [cfb5008d4436] + + * PyQt5.msp, qpy/QtCore/qpycore_qpair.sip: + Refactored QPair. + [49eaf99ce9de] + + * qpy/QtCore/qpycore_collections.sip, qpy/QtCore/qpycore_qhash.sip, + qpy/QtCore/qpycore_qlist.sip, qpy/QtCore/qpycore_qset.sip, + qpy/QtCore/qpycore_qvector.sip, qpy/QtGui/qlist.sip, + qpy/QtGui/qpygui_collections.sip, qpy/QtGui/qpygui_qlist.sip, + qpy/QtGui/qpygui_qvector.sip, + qpy/QtMultimedia/qpymultimedia_collections.sip, + qpy/QtMultimedia/qpymultimedia_qlist.sip, + qpy/QtPrintSupport/qpyprintsupport_collections.sip, + qpy/QtPrintSupport/qpyprintsupport_qlist.sip, + qpy/QtWidgets/qpywidgets_collections.sip, + qpy/QtWidgets/qpywidgets_qlist.sip: + Split up the mapped type implementations. + [2e1239c043cd] + + * PyQt5.msp, qpy/QtCore/qpycore_collections.sip, + qpy/QtNetwork/qpynetwork_qhash.sip: + Refactored QHash. + [567d67e5eb6f] + +2013-12-19 Phil Thompson + + * PyQt5.msp, qpy/QtCore/qpycore_collections.sip: + Refactored the QSet implementations. + [0127ff8a7de9] + + * qpy/QtCore/qpycore_collections.sip, + qpy/QtGui/qpygui_collections.sip, + qpy/QtMultimedia/qpymultimedia_collections.sip, + qpy/QtPrintSupport/qpyprintsupport_collections.sip, + qpy/QtWidgets/qpywidgets_collections.sip: + QList and QVector implementations now accept iterables rather than + sequences. + [fea8a346e95d] + + * test/tests/mapped_types/test_QList.py: + Fixed the QList unit tests. + [f7f4b9928694] + +2013-12-18 Phil Thompson + + * PyQt5.msp, qpy/QtCore/qlist.sip, qpy/QtCore/qpycore_collections.sip, + qpy/QtGui/qpygui_collections.sip, + qpy/QtGui/qpyopengl_collections.sip, qpy/QtMultimedia/qlist.sip, + qpy/QtMultimedia/qpymultimedia_collections.sip, + qpy/QtPrintSupport/qlist.sip, + qpy/QtPrintSupport/qpyprintsupport_collections.sip, + qpy/QtWidgets/qlist.sip, qpy/QtWidgets/qpywidgets_collections.sip: + Refactored QVector along the lines of QList. + [39671105f383] + + * PyQt5.msp, qpy/QtCore/qlist.sip, qpy/QtGui/qlist.sip, + qpy/QtMultimedia/qlist.sip, qpy/QtPrintSupport/qlist.sip, + qpy/QtWidgets/qlist.sip: + Completed the refactoring and standardisation of the QList + implementations. + [511f34c97c88] + + * qpy/QtCore/qlist.sip, test/tests/mapped_types/__init__.py, + test/tests/mapped_types/test_QList.py: + Added unit tests for most of the QList mapped types. More fixes for + QList mapped types. + [eebdef19090a] + + * PyQt5.msp, qpy/QtCore/qlist.sip: + Fixes to the QList implementations. Added the QList of enums used by + the QtCore module. + [05c4b4c81f62] + +2013-12-17 Phil Thompson + + * PyQt5.msp, qpy/QtCore/qlist.sip: + QList mapped types now only check for a sequence rather than also + checking the individual elements. This allows much more useful + exceptions to be raised. qlist.sip is now maintained separately from + the project file. + [5bdef54961f6] + + * QtMacExtras/qmacpasteboardmime.sip, QtWinExtras/qwinfunctions.sip, + QtX11Extras/qx11info_x11.sip: + Added version qualifiers to the platform specific modules. + [6182642eb464] + +2013-12-16 Phil Thompson + + * QtWinExtras/QtWinExtrasmod.sip, QtWinExtras/qwinfunctions.sip, + build.py, lib/configure.py, sphinx/api_metadata.cfg, + sphinx/introduction.rst: + Added the QtWinExtras module with only (for the moment) the QtWin + namespace implemented. + [5b7a6055d52e] + + * QAxContainer/qaxbase.sip, QAxContainer/qaxobject.sip, + QAxContainer/qaxwidget.sip, QtMacExtras/qmacpasteboardmime.sip, + QtX11Extras/qx11info_x11.sip: + Removed the (superfluous) platform directives from the platform + specific modules. + [719aa5e321e0] + + * lib/configure.py: + SIP v4.15.4 is now required. + [be675acbfe2d] + + * QtX11Extras/QtX11Extrasmod.sip, QtX11Extras/qx11info_x11.sip, + build.py, lib/configure.py, sphinx/api_metadata.cfg, + sphinx/introduction.rst: + Implemented the QtX11Extras module. + [c8cd08e0db4d] + + * PyQt5.msp: + Implemented the QOpenGLPixelTransferOptions class. + [b4919f0a515c] + + * QtMacExtras/QtMacExtrasmod.sip, QtMacExtras/qmacpasteboardmime.sip, + build.py, lib/configure.py, sphinx/api_metadata.cfg, + sphinx/introduction.rst: + Implemented the QtMacExtras module. + [3af1359543b4] + + * QAxContainer/QAxContainermod.sip: + Fixed the module configuration for the QAxContainer module. + [6cd0e9e81e5a] + + * PyQt5.msp, qpy/QtCore/qsysinfo.sip, sphinx/api_metadata.cfg: + Updated QSysInfo for Qt v5.2.0. qsysinfo.sip is now maintained + manually as it has so much platform specific code. + [039aa7167784] + +2013-12-15 Phil Thompson + + * Makefile, PyQt5.msp, sphinx/api_metadata.cfg: + Completed the QtPositioning module. + [94719e40833a] + + * Makefile, PyQt5.msp, lib/configure.py, sphinx/api_metadata.cfg, + sphinx/introduction.rst: + Removed the QtNfc module. Added the QtPositioning module to the + build system and docs. + [34457b8e4c87] + + * PyQt5.msp, sphinx/api_metadata.cfg: + Completed the majority of the QtBluetooth module. + [7ef992ea2ca8] + + * PyQt5.msp, lib/configure.py, sphinx/api_metadata.cfg, + sphinx/introduction.rst: + Added the QtBluetooth module to the build system and docs. + [9075d7437589] + + * Merge. + [a6a3c89427cd] + + * PyQt5.msp: + Added the initial implementation of the QtPositioning module. + [57a1a255ac9d] + + * sphinx/api_metadata.cfg: + Updated the docs for the new Qt 5.2.0 classes in the existing + modules. + [b4c9ed0667e3] + +2013-12-14 Phil Thompson + + * PyQt5.msp: + Added the initial QtBluetooth and QtNfc modules. + [7ab9befa4814] + + * PyQt5.msp: + Updated for Qt v5.2.0. + [abdbaeefb925] + +2013-12-11 Phil Thompson + + * lib/configure.py: + Fixed the required SIP version. + [5e2fa0fdc2d0] + +2013-12-09 Phil Thompson + + * PyQt5.msp: + Completed the update of QtWidgets. + [1b52104b143c] + + * examples/graphicsview/elasticnodes.py: + Fix an obsolete call in the elasticnodes.py example. + [db2f88d066a7] + +2013-12-06 Phil Thompson + + * PyQt5.msp, lib/SubclassCode/QtWidgets.versions: + Partially updated QtWidgets. + [05868fa42655] + + * PyQt5.msp: + Updated the vast majority of QtGui. + [f124efa2590b] + + * PyQt5.msp, lib/SubclassCode/QtQuick.versions: + Updated QtQuick. + [bac6eac771a3] + + * PyQt5.msp, lib/SubclassCode/QtQml.versions: + Updated QtQml. + [34b8d95c229c] + + * PyQt5.msp: + Updated QtSensors. + [ca372e3fdb40] + + * PyQt5.msp: + Updated QtNetwork. + [4b28b3eb46e0] + +2013-12-05 Phil Thompson + + * PyQt5.msp: + Updated QtWebKitWidgets. + [17bcdd6819d5] + + * PyQt5.msp: + Updated QtWebKit for Qt v5.2.0-rc1. Completed the update for QtCore. + [8b2f27fc1f47] + + * PyQt5.msp: + Updated QtSerialPort for Qt v5.2.0-rc1. + [82f4f311dcea] + +2013-12-04 Phil Thompson + + * Makefile, PyQt5.msp, lib/SubclassCode/QtCore.versions, + lib/configure.py: + Updated QtCore for Qt v5.2.0-rc1 (except for the broken QUrl). + [0409bc818f8b] + +2013-11-23 Phil Thompson + + * qpy/QtCore/qpycore_pyqtsignal.cpp: + Fixed the handling of pyqtsignal() keyword arguments with Python2. + [ceb50aaa7969] + +2013-11-19 Phil Thompson + + * sphinx/index.rst, sphinx/metaobjects.rst: + Documented Q_CLASSINFO(), Q_ENUMS() and Q_FLAGS(). + [c773b532165e] + + * qpy/QtCore/qpycore_api.h, qpy/QtCore/qpycore_chimera.cpp, + qpy/QtCore/qpycore_chimera.h, qpy/QtCore/qpycore_enums_flags.cpp, + qpy/QtCore/qpycore_qmetaobject.cpp: + Enums/flags types are now registered as such. + [fd9f3c1eb07a] + + * qpy/QtCore/qpycore_types.cpp: + Enums/flags now have a scope corresponding to the class they are + registered (rather than defined) in. + [0b2396183bc2] + +2013-11-18 Phil Thompson + + * PyQt5.msp, qpy/QtCore/qpycore.pro, qpy/QtCore/qpycore_api.h, + qpy/QtCore/qpycore_enums_flags.cpp, + qpy/QtCore/qpycore_enums_flags.h, + qpy/QtCore/qpycore_qmetaobjectbuilder.h, + qpy/QtCore/qpycore_types.cpp: + Reimplemented Q_ENUMS() and Q_FLAGS() so that they are added to the + meta-object. + [e1bd545bd994] + + * Merged the v5.1 maintenance branch. + [67e9f33f2606] + + * qpy/QtGui/opengl_types.sip, qpy/QtGui/qpyopengl_collections.sip: + Support for GLuint64 is disabled for ES 2. + [3f0065d77ee3] <5.1-maint> + +2013-11-17 Phil Thompson + + * examples/widgets/stylesheet/stylesheeteditor.py: + Fixes for examples. + [5346065f46ea] <5.1-maint> + +2013-11-15 Phil Thompson + + * pyrcc/main.cpp: + pyrcc5 uses the local encoding for the name of the .qrc file. + [ae550ef924d3] <5.1-maint> + + * qpy/QtQml/qpyqml_register_singleton_type.cpp, + qpy/QtQml/qpyqml_register_type.cpp, qpy/QtQml/qpyqmlobject.cpp, + qpy/QtQml/qpyqmlobject.h, qpy/QtQml/qpyqmlsingletonobject.cpp, + qpy/QtQml/qpyqmlsingletonobject.h: + 60 QML types can now be defined. 30 QML singleton types can now be + defined. + [faa179cff2c7] <5.1-maint> + + * qpy/QtQuick/qpyquickitem.cpp, qpy/QtQuick/qpyquickitem.h, + qpy/QtQuick/qpyquickpainteditem.cpp, + qpy/QtQuick/qpyquickpainteditem.h: + 30 each of Quick items and painted Quick items are now supported. + [53c7f63b5ad5] <5.1-maint> + +2013-11-11 Phil Thompson + + * examples/designer/plugins/widgets/datetimeedit.py, + examples/graphicsview/diagramscene/diagramscene.py, + examples/itemviews/chart/chart.py, + examples/itemviews/pixelator/pixelator.py, + examples/multimediawidgets/camera/camera.py, + examples/multimediawidgets/player.py, + examples/network/fortuneclient.py, examples/qtdemo/scanitem.py, + examples/richtext/textedit/textedit.py, examples/widgets/tetrix.py: + Various fixes to the examples from Dmitry Shachnev. + [440d468a0ae8] <5.1-maint> + +2013-11-05 Phil Thompson + + * qpy/QtQml/qpyqml_register_type.cpp: + Revised the previous change for really, really old (GCC 4.3) + compilers. + [f9d93ebb35b1] <5.1-maint> + + * qpy/QtQml/qpyqml_register_type.cpp: + Applied a couple of specific casts which might be needed by older + compilers. + [8ffa9810eb28] <5.1-maint> + +2013-10-25 Phil Thompson + + * Makefile, lib/configure.py: + Enable the QML debugger when --debug is passed to configure.py. + [c483162df565] <5.1-maint> + +2013-10-20 Phil Thompson + + * lib/configure.py: + Any qmake variables passed on the command line to configure.py are + also applied the plugins and applications Makefiles. + [44c92d7c6f19] <5.1-maint> + +2013-10-16 Phil Thompson + + * .hgtags: + Added tag 5.1.1 for changeset 06a65a43f646 + [2e77fd32377a] <5.1-maint> + + * NEWS: + Released as v5.1.1. + [06a65a43f646] [5.1.1] <5.1-maint> + +2013-10-15 Phil Thompson + + * examples/quick/canvas/contents/images/gloss.png, + examples/quick/canvas/contents/images/lineedit.png, + examples/quick/canvas/contents/images/quit.png, + examples/quick/canvas/contents/images/stripes.png, + examples/quick/canvas/contents/images/titlebar.png, + examples/quick/canvas/contents/images/toolbutton.png: + Removed the execute bits on some .png files. + [ac974835d7fe] <5.1-maint> + +2013-10-13 Phil Thompson + + * qpy/QtQml/qpyqmlobject.cpp: + Fixed a problem with Python properties that have notify signals + emitted. + [ebd36baa56e9] <5.1-maint> + + * Makefile, designer/python.pro-in, lib/configure.py, qmlscene/python + .pro-in: + PyQt will now build against a debug only version of Qt. + [d65e39e3cd7d] <5.1-maint> + +2013-10-12 Phil Thompson + + * lib/configure.py: + Fixed the handling of VendorID in configure.py. + [97319b4351e8] <5.1-maint> + +2013-10-07 Phil Thompson + + * Makefile, PyQt5.msp: + Minor fixes for building against Qt v5.2.0-alpha. + [41b8f6ca2ea4] <5.1-maint> + + * qpy/QtCore/qpycore_qobject_helpers.cpp: + Fixed the support for QObject meta-casting. + [aaa5588d9982] <5.1-maint> + +2013-10-05 Phil Thompson + + * PyQt5.msp: + Updated the project for Qt v5.1.1. + [fc7b8711dba0] <5.1-maint> + + * qpy/QtGui/qpyopengl_api.h, qpy/QtGui/qpyopengl_array_convertors.cpp, + qpy/QtGui/qpyopengl_init.cpp, qpy/QtGui/qpyopengl_value_array.cpp, + qpy/QtGui/qpyopengl_version_functions.cpp: + Fixed building against Qt v5.0. + [6666b6259893] <5.1-maint> + + * qpy/QtQml/qpyqml_register_type.cpp: + Fixed (hopefully) building with GCC v4.6 and earlier. + [0aa3e18d07a1] <5.1-maint> + +2013-10-04 Phil Thompson + + * PyQt5.msp: + Fixed the QShortcut ctor when passing slot arguments. + [3c895ca14f00] <5.1-maint> + +2013-10-03 Phil Thompson + + * qmlscene/pluginloader.cpp, qpy/QtCore/qpycore_pyqtconfigure.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtQml/qpyqmllistproperty.cpp, + qpy/QtQml/qpyqmlobject.cpp: + Fixed a number of incorrect (for Python2) format characters. + [b63b9dc3a3fa] <5.1-maint> + + * qpy/QtQml/qpyqml_register_type.cpp: + Fixed a bad format character when raising an exception. + [3547edcdd278] <5.1-maint> + + * build.py: + Updated the internal build script to use the latest hg rather than + that provided with MacHg. + [42f3b031a7b9] <5.1-maint> + +2013-10-02 Phil Thompson + + * .hgtags: + Added tag 5.1 for changeset e5fd9644dd9c + [6cb80b7fd2ed] + + * NEWS: + Released as v5.1. + [e5fd9644dd9c] [5.1] + +2013-09-28 Phil Thompson + + * qpy/QtCore/qpycore_pyqtsignal.cpp: + Improve the text of the exception raised when the type of a C++ + signal argument couldn't be parsed. + [fc0039af3b73] + + * installers/BuildGPL.txt, installers/PyQt5-Qt5-gpl.nsi: + Minor updates for the Windows installers. + [1a103cd1db02] + +2013-09-27 Phil Thompson + + * sphinx/installation.rst: + Updated the docs regarding the --configuration flag to configure.py. + [40038372e538] + +2013-09-26 Phil Thompson + + * lib/RaspberryPi/configuration.txt: + Added the Raspberry Pi configuration notes to the internal + documentation. + [3de62eb92856] + + * configurations/rpi_py3.cfg: + Updated the Raspberry Pi configuration for a full build. + [5f21be94b635] + + * qmlscene/pluginloader.cpp: + Fixed the build when Python3, prior to Python v3.3, has wide + characters. + [5b01202be52b] + + * designer/pluginloader.cpp, designer/python.pro-in, lib/configure.py, + qmlscene/pluginloader.cpp, qmlscene/python.pro-in: + The plugins no longer try to dynamically load the interpreter + library (as they are already linked against it). The plugins shoulkd + now build when cross-compiling. + [edd0734e2a64] + +2013-09-25 Phil Thompson + + * configurations/rpi_py3.cfg, lib/configure.py: + More cross-compilation fixes. The openglwindow.py example now runs + on the Pi. + [7ed7bf039abe] + +2013-09-24 Phil Thompson + + * lib/configure.py: + The --no-sip-files option to configure.py now works. + [10dd80985ac7] + + * PyQt5.msp: + Minor tweaks to handwritten OpenGL code. + [79a533fc00a1] + + * Makefile, configurations/rpi_py3.cfg, lib/configure.py, + qpy/QtGui/opengl_types.sip: + Further fixes for cross-compilation. OpenGL types are now hard- + coded. + [3166145ee331] + + * Makefile, configurations/rpi_py3.cfg, lib/configure.py: + QtCore can now be cross-compiled. + [f3bbee7cffae] + + * PyQt5.msp: + Fix QVector when qreal is float. + [b9a9f60ac6f4] + +2013-09-16 Phil Thompson + + * qpy/QtGui/qpyopengl_version_functions.cpp: + _QOpenGLFunctions_ES2 now works. + [597681874226] + + * Makefile, PyQt5.msp, qpy/QtGui/qpyopengl_value_array.cpp: + More _QOpenGLFunctions_ES2. + [6a10b084e6ca] + +2013-09-15 Phil Thompson + + * PyQt5.msp, lib/configure.py: + More _QOpenGLFunctions_ES2. + [5f6ec7374914] + + * PyQt5.msp: + More _QOpenGLFunctions_2_0. + [ee04c8a2c022] + + * PyQt5.msp, lib/configure.py: + More _QOpenGLFunctions_ES2. + [90c93700c52b] + + * PyQt5.msp: + More on _QOpenGLFunctions_ES2. + [9685fbc2b622] + + * PyQt5.msp: + Added the _QOpenGLFunctions_ES2 module. + [bd8d9c35627f] + +2013-09-09 Phil Thompson + + * Makefile, PyQt5.msp, qpy/QtGui/qpyopengl_api.h, + qpy/QtGui/qpyopengl_array_convertors.cpp, + qpy/QtGui/qpyopengl_init.cpp, sphinx/opengl.rst: + Completed the initial implementation of _QOpenGLFunctions_2_0. + [daa2bea192b2] + + * Makefile, PyQt5.msp, qpy/QtGui/qpyopengl_api.h, + qpy/QtGui/qpyopengl_array_convertors.cpp, + qpy/QtGui/qpyopengl_attribute_array.cpp, + qpy/QtGui/qpyopengl_data_cache.cpp, qpy/QtGui/qpyopengl_init.cpp, + qpy/QtGui/qpyopengl_uniform_value_array.cpp, + qpy/QtGui/qpyopengl_value_array.cpp, + qpy/QtGui/qpyopengl_version_functions.cpp: + More _QOpenGLFunctions_2_0. + [b5534bf36a20] + +2013-09-08 Phil Thompson + + * pylupdate/fetchtr.cpp: + Added support for the different line endings to pylupdate based on a + patch from Florent Rougon. + [96069d4e7caa] + + * lib/configure.py: + Do a better job of detecting when the user is trying to use Qt3. Do + a better job of detecting when the use doesn't have write + permissions. + [1610b9abbf10] + + * Makefile, PyQt5.msp, qpy/QtGui/qpygui.pro, + qpy/QtGui/qpyopengl_api.h, qpy/QtGui/qpyopengl_array_convertors.cpp, + qpy/QtGui/qpyopengl_init.cpp: + More _QOpenGLFunctions_2_0. + [64cb4aa6f8cf] + +2013-09-07 Phil Thompson + + * examples/opengl/textures/textures.py: + Fixed the textures.py example. + [7b33930e4c2d] + + * examples/opengl/grabber.py, examples/opengl/hellogl.py, + examples/opengl/overpainting.py, + examples/opengl/textures/textures.py: + Fixed the OpenGL examples for Python3. + [af3d975869cc] + + * PyQt5.msp, qpy/QtGui/qpyopengl_value_array.cpp: + OpenGL calls now accept None when a non-cached array is expected. + OpenGL calls now accept an offset when a cached array is expected. + [283b44baca06] + +2013-09-06 Phil Thompson + + * PyQt5.msp: + More _QOpenGLFunctions_2_0. + [cd5cd9bdbcfd] + + * PyQt5.msp, examples/opengl/openglwindow.py: + More _QOpenGLFunctions_2_0. + [2b2312a2da64] + + * PyQt5.msp: + More _QOpenGLFunctions_2_0. + [24610a59a9dc] + +2013-09-05 Phil Thompson + + * PyQt5.msp, lib/configure.py: + Implemented more of _QOpenGLFunctions_2_0. + [448e0631c418] + + * Makefile, PyQt5.msp, lib/configure.py, qpy/QtGui/qpyopengl_api.h, + qpy/QtGui/qpyopengl_data_cache.cpp, + qpy/QtGui/qpyopengl_data_cache.h, qpy/QtGui/qpyopengl_init.cpp, + qpy/QtGui/qpyopengl_value_array.cpp: + Updated the OpenGL array support to optimise the most common case + where the array doesn't have to be persistent. Implemented a bit + more of _QOpenGLFunctions_2_0. + [f7bd5bd22f67] + +2013-09-04 Phil Thompson + + * Makefile, examples/opengl/openglwindow.py, + qpy/QtGui/qpyopengl_value_array.cpp: + Added support for sequences as the basis of OPenGL arrays. + [98d2b977e23f] + + * qpy/QtGui/qpyopengl_value_array.cpp: + Added OpenGL array support for versions of Python that don't support + the new buffer protocol. + [844aaa83c62c] + + * Makefile, PyQt5.msp, examples/opengl/openglwindow.py, + qpy/QtCore/qpycore_pyqtproperty.cpp, qpy/QtGui/qpygui.pro, + qpy/QtGui/qpyopengl_api.h, qpy/QtGui/qpyopengl_data_cache.cpp, + qpy/QtGui/qpyopengl_data_cache.h, qpy/QtGui/qpyopengl_init.cpp, + qpy/QtGui/qpyopengl_value_array.cpp: + Implemented the buffer support for raw arrays passed to OpenGL. + [9bfb71b1d0f5] + +2013-09-03 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + Slight tweak on the previous change. + [ead833d00e02] + +2013-09-02 Phil Thompson + + * qpy/QtCore/qpycore_chimera.cpp: + Improved the handling of QGraphicsItem when parsing a Python type + object of a sub-class. + [527c79f1594f] + + * lib/configure.py: + Worked around SIP's broken handling of composite modules. + [6b8496f8cb72] + +2013-09-01 Phil Thompson + + * pylupdate/fetchtr.cpp: + pylupdate now handles backslash at the end of a line within a quoted + string. + [1e0878bd6a21] + +2013-08-30 Phil Thompson + + * PyQt5.msp, lib/configure.py: + Only check for OpenGL modules according to whether Qt is configured + for desktop OpenGL or OpenGL ES. Implemented the remaining easy + parst of _QOpenGLFunctions_2_0. + [3ba267894012] + +2013-08-29 Phil Thompson + + * PyQt5.msp, lib/configure.py: + Implemented more of the _QOpenGLFunctions_2_0 module. + [936925a906bb] + + * sphinx/index.rst, sphinx/introduction.rst, sphinx/opengl.rst: + Documented the OpenGL bindings support. + [9eca323f87e2] + + * PyQt5.msp, examples/opengl/openglwindow.py, + lib/OpenGL/gen_opengl_constants.py, lib/configure.py, + qpy/QtGui/qpygui.pro, qpy/QtGui/qpyopengl_add_constants.c, + qpy/QtGui/qpyopengl_api.h, qpy/QtGui/qpyopengl_attribute_array.cpp, + qpy/QtGui/qpyopengl_uniform_value_array.cpp, + qpy/QtGui/qpyopengl_version_functions.cpp: + Implemented the framework for the version specific OpenGL bindings. + Added the skeleton bindings for OpenGL v2.0. Updated the + openglwindow.py example to use the bindings. + [3a08e74da74f] + + * PyQt5.msp, lib/SubclassCode/QtGui.versions, lib/configure.py: + Fixed QAbstractOpenGLFunctions. Fixed things so that it will build + on an OpenGL ES system. + [318b82b05b53] + +2013-08-28 Phil Thompson + + * PyQt5.msp, lib/OpenGL/gen_opengl_constants.py, lib/OpenGL/gl.xml: + Added the beginnings of the full OpenGL bindings. + [3dd128404e5c] + +2013-08-27 Phil Thompson + + * PyQt5.msp, sphinx/api_metadata.cfg, sphinx/introduction.rst: + Completed the implementation of QtSensors. + [5ff7407d37c2] + +2013-08-26 Phil Thompson + + * PyQt5.msp, installers/PyQt5-Qt5-gpl.nsi, lib/configure.py, + sphinx/introduction.rst: + Added the stub of the QtSensors module. + [ffa47c3ca333] + + * PyQt5.msp, installers/PyQt5-Qt5-gpl.nsi, lib/configure.py, + sphinx/api_metadata.cfg, sphinx/introduction.rst: + Implemented the QtSerialPort module. + [5e397a878471] + + * PyQt5.msp: + Fixed build errors in third-party modules that use --public-not- + protected. + [ca9e6073899a] + +2013-08-24 Phil Thompson + + * PyQt5.msp: + Updated QtWidgets for Qt v5.1. + [693a95fde3fa] + + * PyQt5.msp: + Updated QtWebKit, QtWebKitWidgets and QtXmlPatterns for Qt v5.1. + [feefcd6865ab] + + * PyQt5.msp: + Updated QtSql, QtSvg and QtTest for Qt v5.1. + [b41ab51caad3] + + * PyQt5.msp, lib/SubclassCode/QtQuick.versions, + sphinx/api_metadata.cfg: + Updated QtQuick for Qt v5.1. + [06a106bb3979] + + * PyQt5.msp, lib/SubclassCode/QtQml.versions, sphinx/api_metadata.cfg: + Updated QtQml for Qt v5.1. + [b21cddbc7055] + + * PyQt5.msp: + Updated QtOpenGL and QtPrintSupport for Qt v5.1. + [d95b6fe223f7] + + * PyQt5.msp: + Updated QtNetwork for Qt v5.1. + [542876931098] + + * qpy/QtGui/qpyopengl_collections.sip: + Added the missing OpenGL mapped type implementations. + [5734b486da0e] + + * PyQt5.msp: + Updated QtMultimedia and QtMultimediaWidgets for Qt v5.1. + [6aa815198cb4] + + * PyQt5.msp: + Updated QtHelp for Qt v5.1. + [39e72b951edd] + + * PyQt5.msp: + Updated the QObject sub-class convertor code fro QtGui. + [c85fc0a95473] + + * PyQt5.msp, lib/SubclassCode/QtGui.versions, lib/configure.py, + sphinx/api_metadata.cfg: + Updated QtGui for Qt v5.1. + [dc11dcd36ea0] + +2013-08-22 Phil Thompson + + * sphinx/api_metadata.cfg: + Added the new QtCore classes to the docs. + [74868b1f6fbe] + + * PyQt5.msp: + Updated QtDBus and QtDesigner for Qt v5.1. + [ed9b4b48ed21] + + * PyQt5.msp, lib/SubclassCode/QtCore.versions: + Updated QtCore for Qt v5.1. + [a231bd34acb3] + + * lib/configure.py: + Added MULTIARCH support to configure.py. + [b6e3146e2327] + +2013-08-21 Phil Thompson + + * NEWS, PyQt5.msp, build.py, installers/PyQt5-Qt5-gpl.nsi, + lib/configure.py: + Switch to Qt v5.1 in the various places that need it. + [85f42f774296] + + * sphinx/api_metadata.cfg: + Added the missing QQmlParserStatus from the documentation. + [ad31726b792f] + + * contrib/lang/Makefile, contrib/lang/lang.py, contrib/lang/lang.qrc, + contrib/lang/lang/cs_cs.qm, contrib/lang/lang/cs_cs.ts, + contrib/lang/lang/da_da.qm, contrib/lang/lang/da_da.ts, + contrib/lang/lang/de_ch.qm, contrib/lang/lang/de_ch.ts, + contrib/lang/lang/de_de.qm, contrib/lang/lang/de_de.ts, + contrib/lang/lang/en_gb.qm, contrib/lang/lang/en_gb.ts, + contrib/lang/lang/en_us.qm, contrib/lang/lang/en_us.ts, + contrib/lang/lang/es_es.qm, contrib/lang/lang/es_es.ts, + contrib/lang/lang/et_et.qm, contrib/lang/lang/et_et.ts, + contrib/lang/lang/fi_fi.qm, contrib/lang/lang/fi_fi.ts, + contrib/lang/lang/fr_ca.qm, contrib/lang/lang/fr_ca.ts, + contrib/lang/lang/fr_fr.qm, contrib/lang/lang/fr_fr.ts, + contrib/lang/lang/hu_hu.qm, contrib/lang/lang/hu_hu.ts, + contrib/lang/lang/it_it.qm, contrib/lang/lang/it_it.ts, + contrib/lang/lang/nl_nl.qm, contrib/lang/lang/nl_nl.ts, + contrib/lang/lang/no_no.qm, contrib/lang/lang/no_no.ts, + contrib/lang/lang/pl_pl.qm, contrib/lang/lang/pl_pl.ts, + contrib/lang/lang/pt_pt.qm, contrib/lang/lang/pt_pt.ts, + contrib/lang/lang/sv_sv.qm, contrib/lang/lang/sv_sv.ts, + contrib/lang/lang/tr_tr.qm, contrib/lang/lang/tr_tr.ts, + contrib/lang/mainwindow.ui, contrib/pymodeltest/LICENSE.GPL, + contrib/pymodeltest/README, contrib/pymodeltest/modeltest.py, + contrib/sandbox/README, contrib/sandbox/sandbox.pyw, dbus/dbus.sbf, + qpy/QtGui/qpytextobject.h, qpy/QtGui/qpytextobject.sip, + qpy/QtOpenGL/qpyopengl.pro, qpy/QtOpenGL/qpyopengl_api.h, + qpy/QtOpenGL/qpyopengl_attribute_array.cpp, + qpy/QtOpenGL/qpyopengl_uniform_value_array.cpp: + Merged v5.0.1 into the trunk. + [82643b45e53c] + + * .hgtags: + Added tag 5.0.1 for changeset 59b34385ff6d + [72037931b2a8] <5.0-maint> + + * NEWS: + Released as v5.0.1. + [59b34385ff6d] [5.0.1] <5.0-maint> + +2013-08-19 Phil Thompson + + * installers/qt5-config.bat: + Updated the internal Qt5 build documentation. + [e131f74b7106] <5.0-maint> + + * lib/configure.py: + Fixed an error message bug in configure.py. + [1e1ad89c6da7] <5.0-maint> + +2013-08-18 Phil Thompson + + * installers/BuildGPL.txt, installers/PyQt5-Qt5-gpl.nsi, + qmlscene/python.pro-in: + Updated the installer for Qt v5.1.0. + [8463e4cb0371] <5.0-maint> + + * lib/configure.py: + More fixes for out of tree builds. + [a188359a1bf2] <5.0-maint> + + * lib/configure.py: + Fixed configure.py for out of tree builds. + [435ccc473b5d] <5.0-maint> + +2013-08-17 Phil Thompson + + * NEWS: + Updated the NEWS file. + [7e6f3768c519] <5.0-maint> + + * examples/qml/referenceexamples/binding.py, + examples/qml/referenceexamples/valuesource.py: + Added the valuesource.py example. + [9992e2e174c1] <5.0-maint> + + * qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_pyqtsignal.h, + qpy/QtCore/qpycore_qmetaobjectbuilder.h, + qpy/QtCore/qpycore_types.cpp, sphinx/gotchas.rst, + sphinx/signals_slots.rst: + Added the arguments keyword argument to pyqtSignal(). + [0073e2386c2d] <5.0-maint> + + * examples/qml/referenceexamples/binding.py, + examples/qml/referenceexamples/signal.py: + Fixed the signal definition in the binding.py and signal.py + examples. + [c5345f8bcb87] <5.0-maint> + + * examples/qml/referenceexamples/signal.py: + Added the signal.py example. + [5cdcf5b00f52] <5.0-maint> + + * qpy/QtQml/qpyqmlobject.cpp, qpy/QtQml/qpyqmlobject.h: + QML proxies now relay signals to QML. + [2080cdb152cc] <5.0-maint> + +2013-08-16 Phil Thompson + + * PyQt5.msp: + Tweak the previous fix. + [da4e96198c0b] <5.0-maint> + + * PyQt5.msp: + Fixed the error detection in the QList convertors based on Matt + Newell's patch. + [ea5ea9b31075] <5.0-maint> + + * qpy/QtQml/qpyqml_register_type.cpp, qpy/QtQml/qpyqmlobject.cpp, + qpy/QtQml/qpyqmlobject.h, sphinx/qml.rst: + Added support for QQmlParserStatus to the QML proxies. + [d9296d0519e9] <5.0-maint> + + * PyQt5.msp: + QQmlPropertyValueSource is also a mixin. + [a55b7bf0af7d] <5.0-maint> + + * examples/qml/referenceexamples/properties.py: + Added the properties.py example. + [84f06aab5c9a] <5.0-maint> + + * examples/qml/referenceexamples/methods.py: + Added the methods.py example. + [0621954b0ccb] <5.0-maint> + + * examples/qml/referenceexamples/grouped.py: + Added the grouped.py example. + [5b4a7349bb9d] <5.0-maint> + + * examples/qml/referenceexamples/coercion.py, + examples/qml/referenceexamples/default.py: + Added the default.py example. Cleaned up the coercion.py example. + [65212f2a631a] <5.0-maint> + + * examples/qml/referenceexamples/coercion.py: + Added the coercion.py example. + [36c88aa58b10] <5.0-maint> + + * examples/qml/referenceexamples/binding.py, + qpy/QtQml/qpyqml_register_type.cpp, qpy/QtQml/qpyqmlobject.cpp, + qpy/QtQml/qpyqmlobject.h, sphinx/qml.rst: + Completed the support for property value sources. + [4db347bfa0fa] <5.0-maint> + + * PyQt5.msp, sphinx/api_metadata.cfg: + Added QQmlPropertyValueSource. + [39c886b5f3a2] <5.0-maint> + + * examples/qml/referenceexamples/binding.py: + Added the initial implementation of the binding.py example. + [24a37fc53116] <5.0-maint> + +2013-08-15 Phil Thompson + + * Makefile, examples/qml/referenceexamples/attached.py, + qpy/QtQml/qmlattachedpropertiesobject.sip, qpy/QtQml/qpyqml_api.h, + qpy/QtQml/qpyqml_register_type.cpp, qpy/QtQml/qpyqmlobject.h, + sphinx/qml.rst: + Completed the implementation of qmlAttachedPropertiesObject(). + Documented the use of attached properties. Added the attach.py + example. + [9bb44d8cd582] <5.0-maint> + + * qpy/QtQml/qmlattachedpropertiesobject.sip, + qpy/QtQml/qmlregistertype.sip, qpy/QtQml/qpyqml_api.h: + Added the initial implementation of qmlAttachedPropertiesObject(). + [7dd0fa517103] <5.0-maint> + + * Makefile, qpy/QtQml/qmlregistertype.sip, qpy/QtQml/qpyqml_api.h, + qpy/QtQml/qpyqml_register_type.cpp, qpy/QtQml/qpyqmlobject.cpp, + qpy/QtQml/qpyqmlobject.h: + Added support for defining and creating (but not yet retrieving) + attached properties. + [e284892a8884] <5.0-maint> + + * Makefile, qpy/QtQml/qpyqml_register_singleton_type.cpp, + qpy/QtQml/qpyqml_register_type.cpp, qpy/QtQuick/qpyquickitem.cpp, + qpy/QtQuick/qpyquickpainteditem.cpp: + Make sure types get registered with the original meta-object and not + a copy. + [37335dddfa48] <5.0-maint> + +2013-08-14 Phil Thompson + + * Makefile, qpy/QtCore/qpycore_chimera.h, + qpy/QtCore/qpycore_types.cpp: + The Python type name is now returned as a property type name for + types that derive from QObject (as opposed to any C++ QObject sub- + class). This means that they have distinct types to QML. + [c954bec31706] <5.0-maint> + + * qpy/QtQuick/qpyquickitem.cpp: + Removed more redundant QByteArrays. + [1ef26c21cb3d] <5.0-maint> + + * Makefile, qpy/QtCore/qpycore_types.cpp, + qpy/QtQml/qpyqml_register_type.cpp: + Removed redundant QByteArrays from the registration of QML proxies. + [d3a3b05f836b] <5.0-maint> + +2013-08-13 Phil Thompson + + * PyQt5.msp, qpy/QtQml/qpyqml_api.h, qpy/QtQml/qpyqml_post_init.cpp, + qpy/QtQml/qpyqml_register_type.cpp, qpy/QtQml/qpyqmlobject.cpp, + qpy/QtQml/qpyqmlobject.h: + Improved the handling of QML proxies. + [7893d27b5297] <5.0-maint> + +2013-08-12 Phil Thompson + + * qpy/QtQml/qpyqml_listdata.cpp, qpy/QtQml/qpyqml_listdata.h, + qpy/QtQml/qpyqmllistproperty.cpp: + QQmlListProperty now supports automatic handling of a Python list. + [60d80fb8b575] <5.0-maint> + + * examples/qml/referenceexamples/adding.py: + Added the adding.py QML example. + [b743e47396da] <5.0-maint> + + * sphinx/introduction.rst, sphinx/qml.rst: + Documented the QML plugin. + [5540ce69ca6d] <5.0-maint> + + * examples/qtdemo/menumanager.py, examples/qtdemo/qtdemo_rc.py, + examples/qtdemo/xml/examples.xml: + qtdemo.py now handles launching qmlscene. + [23c41bdedce8] <5.0-maint> + + * examples/quick/tutorials/extending/chapter6-plugins/Charts/qmldir, + lib/configure.py: + configure.py now fixes the qmldir file of the chapter6-plugins + example. + [c83b531d316e] <5.0-maint> + + * qmlscene/pluginloader.cpp: + Completed the implementation of the qmlscene plugin. + [55b870798e9c] <5.0-maint> + + * examples/quick/tutorials/extending/chapter6-plugins/Charts/chartsplu + gin.py, examples/quick/tutorials/extending/chapter6-plugins/Charts/p + iechart.py, examples/quick/tutorials/extending/chapter6-plugins/Char + ts/pieslice.py, + examples/quick/tutorials/extending/chapter6-plugins/Charts/qmldir, + examples/quick/tutorials/extending/chapter6-plugins/app.qml: + Added the chapter6-plugins example. + [bebaac7a0d7d] <5.0-maint> + + * qmlscene/pluginloader.cpp, qmlscene/pluginloader.h: + The Qml plugin now calls any Python implementation of + initializeEngine(). + [3c588fa07a63] <5.0-maint> + +2013-08-11 Phil Thompson + + * Makefile, qmlscene/pluginloader.cpp, qpy/QtCore/qpycore_chimera.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp: + Fixed the handling of reading properties via a meta-call. + [ccdb334aad87] <5.0-maint> + + * Makefile, build.py, lib/configure.py, qmlscene/pluginloader.cpp, + qmlscene/pluginloader.h, qmlscene/python.pro-in, + sphinx/installation.rst: + Added the initial implementation of the qmlscene plugin. + [1be57f8f651f] <5.0-maint> + + * PyQt5.msp, sphinx/api_metadata.cfg: + Added QQmlExtensionPlugin. + [e88c65a97583] <5.0-maint> + +2013-08-10 Phil Thompson + + * build.py: + Removed an old reference to elementtree in the internal build + system. + [77a8aa22c304] <5.0-maint> + + * lib/configure.py: + Fixed the handling of the Designer plugin installation directory. + [0f65c507b625] <5.0-maint> + + * lib/configure.py: + Made sure the qmake version is checked before any other output. + [a8b6f4139914] <5.0-maint> + +2013-08-09 Phil Thompson + + * sphinx/api_metadata.cfg, sphinx/qml.rst: + Documented QQmlListProperty. + [ab75bbfed2d0] <5.0-maint> + + * PyQt5.msp, examples/quick/tutorials/extending/chapter5-listpropertie + s/chapter5-listproperties.py, qpy/QtQml/qpyqml.pro, + qpy/QtQml/qpyqml_api.h, qpy/QtQml/qpyqml_listdata.cpp, + qpy/QtQml/qpyqml_listdata.h, qpy/QtQml/qpyqml_post_init.cpp, + qpy/QtQml/qpyqmllistproperty.cpp, qpy/QtQml/qpyqmllistproperty.h, + qpy/QtQml/qpyqmllistproperty.sip: + Implemented QQmlListProperty. + [44a9f9f1e42c] <5.0-maint> + + * examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + Fixed the launching of the Quick tutorial examples. + [a4d11dd6fb95] <5.0-maint> + + * examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml, + examples/quick/tutorials/extending/chapter1-basics/app.qml, examples + /quick/tutorials/extending/chapter1-basics/chapter1-basics.py, + examples/quick/tutorials/extending/chapter2-methods/app.qml, example + s/quick/tutorials/extending/chapter2-methods/chapter2-methods.py, + examples/quick/tutorials/extending/chapter3-bindings/app.qml, exampl + es/quick/tutorials/extending/chapter3-bindings/chapter3-bindings.py, + examples/quick/tutorials/extending/chapter4-customPropertyTypes/app. + qml, examples/quick/tutorials/extending/chapter4-customPropertyTypes + /chapter4-customPropertyTypes.py, + examples/quick/tutorials/extending/chapter5-listproperties/app.qml, + e + xamples/quick/tutorials/extending/chapter5-listproperties/chapter5-l + istproperties.py: + Added the first five extending QtQuick tutorial examples. + [741a1c2515ab] <5.0-maint> + +2013-08-08 Phil Thompson + + * PyQt5.msp: + Fixed the QOpenGLFramebufferObject ctors for OpenGL/ES. + [2d63832f17f9] <5.0-maint> + + * PyQt5.msp: + Removed the desktop OpenGL specific enum members from QSGGeometry. + [ae254303ee10] <5.0-maint> + +2013-08-07 Phil Thompson + + * PyQt5.msp: + Removed remaining QList. + [5353ace04cdf] <5.0-maint> + + * PyQt5.msp: + Removed unused QSet and QMultiHash mapped types. + [f9d55d2d3f80] <5.0-maint> + + * PyQt5.msp: + Fixed the types of setDashPattern() and dashPattern() of QPen. + [d59baf568cd7] <5.0-maint> + + * PyQt5.msp: + Fixed the types of setDashPattern() and dashPattern() of + QPainterPath. + [65c2c020bd91] <5.0-maint> + + * PyQt5.msp: + Removed the unused QList mapped types. + [f931a114fe4e] <5.0-maint> + + * lib/configure.py: + The configure.py test for qreal is now the same as the one in + qglobal.h. + [2a46b7f185aa] <5.0-maint> + +2013-08-06 Phil Thompson + + * PyQt5.msp: + Fixed the QGradientStops typedef. + [d1bfba006b28] <5.0-maint> + +2013-08-05 Phil Thompson + + * PyQt5.msp, + examples/quick/scenegraph/customgeometry/customgeometry.py: + Completed the implementation of QSGGeometry. Ported the + customgeometry.py example to Qt v5.1. + [dc70ed4b71f2] <5.0-maint> + + * PyQt5.msp: + Added the remaining QSGGeometry methods that returned typed arrays. + [85c6ae5aae0b] <5.0-maint> + + * PyQt5.msp: + Fixed QSGNode.setFlags(). The customgeometry.py example now works. + [475543e43c7f] <5.0-maint> + +2013-08-04 Phil Thompson + + * PyQt5.msp, + examples/quick/scenegraph/customgeometry/customgeometry.py: + Added the GL drawing modes to QSGGeometry. Updated the + customgeometry.py example. Passed the struct format to the typed + array calls. + [da15276a17c7] <5.0-maint> + + * examples/quick/scenegraph/customgeometry/customgeometry.py: + Fixes to the customgeometry.py example. + [51419d8bd817] <5.0-maint> + +2013-08-03 Phil Thompson + + * PyQt5.msp: + Added some annotations to QSGGeometry. + [9f4a5ec6265a] <5.0-maint> + +2013-08-02 Phil Thompson + + * PyQt5.msp: + Implemented QSGGeometry.vertexDataAsPoint2D(). + [5dce48f13136] <5.0-maint> + +2013-07-31 Phil Thompson + + * examples/quick/scenegraph/customgeometry/customgeometry.py, + qpy/QtQuick/qpyquick.pro, qpy/QtQuick/qpyquick_register_type.cpp, + qpy/QtQuick/qpyquickitem.cpp, qpy/QtQuick/qpyquickpainteditem.cpp, + qpy/QtQuick/qpyquickpainteditem.h: + Added support for QQuickPaintedItem. Fixes to the customgeometry.py + example. + [78c6a5e85fef] <5.0-maint> + + * PyQt5.msp: + Added /ReleaseGIL/ to the QWindow show methods to avoid an apparent + deadlock. + [31330f114be8] <5.0-maint> + +2013-07-30 Phil Thompson + + * qpy/QtQml/qpyqmlsingletonobject.h: + Fixed a typo affecting case sensitive filesystems. + [55557cf6c754] <5.0-maint> + + * PyQt5.msp, + examples/quick/scenegraph/customgeometry/customgeometry.py, + qpy/QtQml/qpyqml_register_type.cpp, qpy/QtQuick/qpyquick.pro, + qpy/QtQuick/qpyquick_post_init.cpp, + qpy/QtQuick/qpyquick_register_type.cpp, + qpy/QtQuick/qpyquick_register_type.h, qpy/QtQuick/qpyquickitem.cpp, + qpy/QtQuick/qpyquickitem.h: + Python QQuickItem implementations now get created and their + properties updated. + [70f46d0d1f2f] <5.0-maint> + +2013-07-28 Phil Thompson + + * pyuic/uic/uiparser.py: + Grid alignments can now be a set of or-ed values. + [45a3ca3e06db] <5.0-maint> + +2013-07-27 Phil Thompson + + * examples/sql/connection.py: + Removed the unnecessary #! line from connection.py. + [26e093f17858] <5.0-maint> + +2013-07-26 Phil Thompson + + * examples/itemviews/puzzle/puzzle.py: + Fixed the item views version of the puzzle.py example. + [5cb5b4bdafbd] <5.0-maint> + + * examples/itemviews/stardelegate.py: + Fixed the stardelegate.py example. + [0cf81f6fbbe5] <5.0-maint> + + * pyuic/uic/uiparser.py: + Added support for the alignment of grid items in pyuic. + [8a7e107cfe07] <5.0-maint> + + * examples/layouts/borderlayout.py, examples/layouts/flowlayout.py, + examples/mainwindows/menus.py, examples/mainwindows/separations.py, + examples/widgets/styles.py: + Fixed the remaining calls to QLayout.setMargin(). + [630b2d432fc4] <5.0-maint> + + * examples/dialogs/extension.py, examples/dialogs/standarddialogs.py, + examples/dialogs/tabdialog.py, examples/dialogs/trivialwizard.py: + Fixed the dialog examples so that the close buttons are enabled on + OS/X when needed. + [63d2aaff27a8] <5.0-maint> + + * examples/activeqt/webbrowser/ui_mainwindow.py, + examples/dbus/chat/ui_chatmainwindow.py, + examples/dbus/chat/ui_chatsetnickname.py, + examples/designer/calculatorform/ui_calculatorform.py, + examples/itemviews/editabletreemodel/ui_mainwindow.py, + examples/webkit/domtraversal/ui_window.py, + examples/widgets/stylesheet/ui_mainwindow.py, + examples/widgets/stylesheet/ui_stylesheeteditor.py: + Re-rean pyuic5 on the examples to get rid of calls to setMargin(). + [cdfc8d862f73] <5.0-maint> + + * examples/quick/scenegraph/customgeometry/customgeometry.py, + examples/quick/scenegraph/customgeometry/customgeometry_rc.py, + examples/quick/scenegraph/customgeometry/main.qml: + Made the QML more readable. + [6442069f40a5] <5.0-maint> + + * examples/painting/concentriccircles.py: + Simplifies the concentriccircles.py example. + [5429c29179eb] <5.0-maint> + +2013-07-25 Phil Thompson + + * qpy/QtQml/qpyqmlobject.cpp, qpy/QtQml/qpyqmlobject.h: + Improvements to the QML object proxy. + [b78c48ae7358] <5.0-maint> + +2013-07-23 Phil Thompson + + * PyQt5.msp: + Added /ReleaseGIL/ to QQuickView.setSource(). Removed /TransferThis/ + from QQuickItem.setParentItem(). + [af06eab58162] <5.0-maint> + + * examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml, + examples/quick/scenegraph/customgeometry/customgeometry.py, + examples/quick/scenegraph/customgeometry/customgeometry.qrc, + examples/quick/scenegraph/customgeometry/customgeometry_rc.py, + examples/quick/scenegraph/customgeometry/main.qml: + Added the customgeometry.py example. + [c0cb02e1ed62] <5.0-maint> + + * examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + Added the abstractitemmodel.py example to qtdemo.py. + [554d667ee318] <5.0-maint> + + * PyQt5.msp, + examples/quick/models/abstractitemmodel/abstractitemmodel.py, + examples/quick/models/abstractitemmodel/abstractitemmodel.qrc, + examples/quick/models/abstractitemmodel/abstractitemmodel_rc.py, + examples/quick/models/abstractitemmodel/view.qml, + examples/quick/models/objectlistmodel/objectlistmodel.py: + Fixed QTextBlock.setUserData() and + QSyntaxHighlighter.setCurrentBlockUserData() so that an explicit + reference to the owning document doesn't need to be kept. + [fcd867e2f9c6] <5.0-maint> + + * qpy/QtCore/qpycore_chimera.cpp, qpy/QtCore/qpycore_chimera.h, + qpy/QtCore/qpycore_public_api.cpp, qpy/QtCore/qpycore_public_api.h, + qpy/QtQuick/qpyquick_chimera_helpers.cpp, + qpy/QtQuick/qpyquick_chimera_helpers.h, sphinx/extension_api.rst: + Improved the API of pyqt5_register_to_qvariant_convertor(). + [fd3dda9d913b] <5.0-maint> + + * PyQt5.msp, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_public_api.cpp, qpy/QtCore/qpycore_public_api.h, + qpy/QtCore/qpycore_pyqtslotproxy.cpp, + qpy/QtCore/qpycore_pyqtslotproxy.h, sphinx/extension_api.rst: + Removed pyqt5_qobject_sender() from the public API. + [c13032fa3dfd] <5.0-maint> + + * PyQt5.msp, lib/configure.py, qpy/QtCore/qpycore_chimera.cpp, + qpy/QtCore/qpycore_chimera.h, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_public_api.cpp, qpy/QtCore/qpycore_public_api.h, + qpy/QtDBus/qpydbus_chimera_helpers.h, qpy/QtQuick/qpyquick.pro, + qpy/QtQuick/qpyquick_api.h, + qpy/QtQuick/qpyquick_chimera_helpers.cpp, + qpy/QtQuick/qpyquick_chimera_helpers.h, + qpy/QtQuick/qpyquick_post_init.cpp, sphinx/extension_api.rst: + Added the QtQuick support library to add the necessary QVariant + convertors. + [16d58eaa4f93] <5.0-maint> + + * examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml, + examples/quick/models/objectlistmodel/objectlistmodel.py, + examples/quick/models/objectlistmodel/objectlistmodel.qrc, + examples/quick/models/objectlistmodel/objectlistmodel_rc.py, + examples/quick/models/objectlistmodel/view.qml, + examples/quick/models/stringlistmodel/stringlistmodel.py, + examples/quick/models/stringlistmodel/stringlistmodel.qrc, + examples/quick/models/stringlistmodel/stringlistmodel_rc.py, + examples/quick/models/stringlistmodel/view.qml: + Added the objectlistmodel.py and stringlistmodel.py examples. + [f29e57d95c66] <5.0-maint> + +2013-07-22 Phil Thompson + + * examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml, + examples/quick/animation/animation.py, + examples/quick/canvas/bezierCurve/bezierCurve.qml, + examples/quick/canvas/canvas.py, examples/quick/canvas/canvas.qml, + examples/quick/canvas/canvas.qrc, + examples/quick/canvas/canvas_rc.py, + examples/quick/canvas/clip/clip.qml, + examples/quick/canvas/contents/Button.qml, + examples/quick/canvas/contents/ScrollBar.qml, + examples/quick/canvas/contents/Slider.qml, + examples/quick/canvas/contents/TitleBar.qml, + examples/quick/canvas/contents/ToolBar.qml, + examples/quick/canvas/contents/images/button-pressed.png, + examples/quick/canvas/contents/images/button.png, + examples/quick/canvas/contents/images/default.svg, + examples/quick/canvas/contents/images/gloss.png, + examples/quick/canvas/contents/images/lineedit.png, + examples/quick/canvas/contents/images/lineedit.sci, + examples/quick/canvas/contents/images/quit.png, + examples/quick/canvas/contents/images/stripes.png, + examples/quick/canvas/contents/images/titlebar.png, + examples/quick/canvas/contents/images/titlebar.sci, + examples/quick/canvas/contents/images/toolbutton.png, + examples/quick/canvas/contents/images/toolbutton.sci, + examples/quick/canvas/contents/qt-logo.png, + examples/quick/canvas/quadraticCurveTo/quadraticCurveTo.qml, + examples/quick/canvas/roundedrect/roundedrect.qml, + examples/quick/canvas/smile/smile.qml, + examples/quick/canvas/squircle/squircle.png, + examples/quick/canvas/squircle/squircle.qml, + examples/quick/canvas/tiger/tiger.js, + examples/quick/canvas/tiger/tiger.qml: + Added the QtQuick canvas.py example. + [268df5fd8d34] <5.0-maint> + + * examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml, + examples/quick/README, examples/quick/animation/animation.py, + examples/quick/animation/animation.qml, + examples/quick/animation/animation.qrc, + examples/quick/animation/animation_rc.py, + examples/quick/animation/basics/color-animation.qml, + examples/quick/animation/basics/images/face-smile.png, + examples/quick/animation/basics/images/moon.png, + examples/quick/animation/basics/images/shadow.png, + examples/quick/animation/basics/images/star.png, + examples/quick/animation/basics/images/sun.png, + examples/quick/animation/basics/property-animation.qml, + examples/quick/animation/behaviors/SideRect.qml, + examples/quick/animation/behaviors/behavior-example.qml, + examples/quick/animation/behaviors/tvtennis.qml, + examples/quick/animation/behaviors/wigglytext.qml, + examples/quick/animation/easing/easing.qml, + examples/quick/animation/pathanimation/pathanimation.qml, + examples/quick/animation/pathinterpolator/pathinterpolator.qml, + examples/quick/animation/states/qt-logo.png, + examples/quick/animation/states/states.qml, + examples/quick/animation/states/transitions.qml, + examples/quick/shared/Button.qml, + examples/quick/shared/LauncherList.qml, + examples/quick/shared/SimpleLauncherDelegate.qml, + examples/quick/shared/images/back.png, + examples/quick/shared/images/next.png, + examples/quick/shared/shared.qrc, + examples/quick/shared/shared_rc.py: + Added the QtQuick animation.py example. + [837150b71731] <5.0-maint> + +2013-07-21 Phil Thompson + + * PyQt5.msp: + QQmlParserStatus is now defined as a Qt interface. + [f14be28e462e] <5.0-maint> + + * PyQt5.msp, examples/richtext/textobject/textobject.py, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_qobject_helpers.h, qpy/QtGui/qpygui.pro, + qpy/QtGui/qpytextobject.h, qpy/QtGui/qpytextobject.sip, + sphinx/api_metadata.cfg, sphinx/index.rst, + sphinx/pyqt4_differences.rst, sphinx/qt_interfaces.rst: + QTextObjectInterface is now supported as an interface that is used + as a mixin. Removed QPyTextObject as it is no longer needed. Updated + the textobject.py example. + [57bb15a5475d] <5.0-maint> + +2013-07-20 Phil Thompson + + * Makefile, PyQt5.msp, sphinx/api_metadata.cfg, + sphinx/introduction.rst: + Completed the initial implementation of the QtQuick module. + [2a99e59669ee] <5.0-maint> + + * PyQt5.msp: + Added the remaining QSG texture classes. + [334127f294d9] <5.0-maint> + +2013-07-19 Phil Thompson + + * Makefile, PyQt5.msp: + Completed the implementation of QSGMaterialShader. + [7bcb69ebcfc8] <5.0-maint> + +2013-07-14 Phil Thompson + + * PyQt5.msp: + More work on QSGMaterial and QSGGeometry. + [9c09c69e011c] <5.0-maint> + +2013-07-13 Phil Thompson + + * PyQt5.msp: + Completed the support for QQuickWindow and QQuickItem. + [770f796c0a61] <5.0-maint> + + * PyQt5.msp, lib/configure.py: + Added the minimal QtQuick module. + [1c3b391ebb72] <5.0-maint> + +2013-07-12 Phil Thompson + + * NEWS, sphinx/index.rst, sphinx/introduction.rst, + sphinx/pyqt4_differences.rst, sphinx/qml.rst: + Documented the QtQml module. + [f6f498d697aa] <5.0-maint> + + * qpy/QtQml/qmlregistertype.sip, qpy/QtQml/qpyqml.pro, + qpy/QtQml/qpyqml_api.h, + qpy/QtQml/qpyqml_register_singleton_type.cpp, + qpy/QtQml/qpyqmlobject.cpp, qpy/QtQml/qpyqmlsingletonobject.cpp, + qpy/QtQml/qpyqmlsingletonobject.h: + Implemented qmlRegisterSingletonType(). + [7a2acb8c9a93] <5.0-maint> + +2013-07-11 Phil Thompson + + * qpy/QtCore/qpycore_public_api.h, sphinx/extension_api.rst: + Documented pyqt5_get_qmetaaobject(). + [5beb97f61993] <5.0-maint> + + * qpy/QtCore/qpycore_chimera.h, qpy/QtCore/qpycore_decorators.cpp, + qpy/QtCore/qpycore_types.cpp, sphinx/signals_slots.rst: + Added the revision argument to pyqtSlot(). + [be2b6cd9bd25] <5.0-maint> + + * qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_pyqtsignal.h, + qpy/QtCore/qpycore_types.cpp, sphinx/signals_slots.rst: + Added the revision argument to pyqtSignal(). + [c1f360ca39a1] <5.0-maint> + + * qpy/QtCore/qpycore_pyqtproperty.cpp, + qpy/QtCore/qpycore_pyqtproperty.h, + qpy/QtCore/qpycore_qmetaobjectbuilder.h, + qpy/QtCore/qpycore_types.cpp, sphinx/qt_properties.rst: + Implemented the revision argument to pyqtProperty(). + [c8392c02c9b0] <5.0-maint> + + * qpy/QtQml/qpyqml_register_type.cpp: + Fixed qmlRegisterUncreatableType(). + [5d1a0f917f11] <5.0-maint> + + * qpy/QtQml/qmlregistertype.sip, qpy/QtQml/qpyqml_api.h, + qpy/QtQml/qpyqml_register_type.cpp: + Completed the implementation of qmlRegisterType(), + qmlRegisterRevision() and qmlRegisterUncreatableType(). + [12800b23bc24] <5.0-maint> + + * Makefile, test/tests/classes/test_QQmlComponent.py: + Added the start of the Qml unit tests. + [e50b70a97479] <5.0-maint> + + * qpy/QtQml/qpyqml_register_type.cpp, qpy/QtQml/qpyqmlobject.cpp, + qpy/QtQml/qpyqmlobject.h: + Tidied up the implementation of qmlRegisterType(). 20 types can now + be registered. + [91d2f136b7a5] <5.0-maint> + + * PyQt5.msp, qpy/QtQml/qpyqml_api.h, + qpy/QtQml/qpyqml_register_type.cpp, qpy/QtQml/qpyqmlobject.cpp, + qpy/QtQml/qpyqmlobject.h: + The simple test to create a Python object from QML now works. + [6cdb584a8a51] <5.0-maint> + +2013-07-10 Phil Thompson + + * Makefile, qpy/QtQml/qpyqml_register_type.cpp, + qpy/QtQml/qpyqmlobject.cpp, qpy/QtQml/qpyqmlobject.h: + More work on the implementation of qmlRegisterType(). + [2ed50117bb0e] <5.0-maint> + + * Makefile, lib/configure.py, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_public_api.cpp, qpy/QtCore/qpycore_public_api.h, + qpy/QtCore/qpycore_pyqtslotproxy.cpp, qpy/QtQml/qmlregistertype.sip, + qpy/QtQml/qpyqml.pro, qpy/QtQml/qpyqml_api.h, + qpy/QtQml/qpyqml_register_type.cpp, qpy/QtQml/qpyqmlobject.cpp, + qpy/QtQml/qpyqmlobject.h: + Added initial support (ie. it compiles) for qmlRegisterType(). + [4221776fc22b] <5.0-maint> + +2013-07-09 Phil Thompson + + * PyQt5.msp, sphinx/api_metadata.cfg: + Added the QQmlExpression, QQmlListReference, QQmlProperty, + QQmlPropertyMap and QQmlScriptString classes. + [bfcd01be5691] <5.0-maint> + + * PyQt5.msp, sphinx/api_metadata.cfg: + Added the QQmlComponent, QQmlContext, QQmlEngine, QQmlError, + QQmlIncubator, QQmlIncubatorControl, QQmlImageProviderBase and + QQmlNetworkAccessManagerFactory classes. + [06ff494f83cc] <5.0-maint> + + * PyQt5.msp, installers/PyQt5-Qt5-gpl.nsi, lib/configure.py, + sphinx/api_metadata.cfg: + Added the start of the QtQml module containing the QJSEngine, + QJSValue and QJSValueIterator classes. + [7c4a6b081187] <5.0-maint> + + * PyQt5.msp: + Removed the stub for QOpenGLFunctions as we still don't have an + example where we can remove the dependency on PyOpenGL (because of + glViewport() and glDrawArrays()). + [6ccb0554b869] <5.0-maint> + + * examples/opengl/openglwindow.py: + Updated the openglwindow.py example to use QOpenGLShaderProgram. + [ddd7a0259c4a] <5.0-maint> + + * PyQt5.msp, qpy/QtGui/qpygui.pro, qpy/QtGui/qpyopengl_api.h, + qpy/QtGui/qpyopengl_attribute_array.cpp, sphinx/api_metadata.cfg: + Completed the implementation of QOpenGLShaderProgram. + [665fb10f93e1] <5.0-maint> + +2013-07-08 Phil Thompson + + * PyQt5.msp, lib/configure.py, qpy/QtGui/qpygui.pro, + qpy/QtGui/qpyopengl_api.h, + qpy/QtGui/qpyopengl_uniform_value_array.cpp, + qpy/QtOpenGL/qpyopengl.pro, qpy/QtOpenGL/qpyopengl_api.h, + qpy/QtOpenGL/qpyopengl_attribute_array.cpp, + qpy/QtOpenGL/qpyopengl_uniform_value_array.cpp: + Implemented more of QOpenGLShaderProgram. + [b0afb72fc0ca] <5.0-maint> + + * PyQt5.msp, sphinx/api_metadata.cfg: + Added the QOpenGLBuffer, QOpenGLFramebufferObject, + QOpenGLFramebufferFormat, QOpenGLPaintDevice and QOpenGLShader + classes. Added stubs for the QOpenGLFunctions and + QOpenGLShaderProgram classes. + [5686e52f7350] <5.0-maint> + +2013-07-07 Phil Thompson + + * PyQt5.msp, lib/configure.py: + Backed out changeset c432a87e3a48, the correct fix is to SIP. + [de3d55fb4945] <5.0-maint> + + * PyQt5.msp, lib/configure.py: + Worked around a incompatibility with QProcess in Qt v5.1. + [c432a87e3a48] <5.0-maint> + +2013-07-06 Phil Thompson + + * Makefile, lib/configure.py: + Improved the error message when configure.py detects an incorrect Qt + version. Clean up __pycache__ directories. + [3513f56e65bf] <5.0-maint> + +2013-07-01 Phil Thompson + + * sphinx/multiinheritance.rst: + Tweaked the docs. + [cffb77db7dc1] <5.0-maint> + + * Makefile, PyQt5.msp, sphinx/gotchas.rst, sphinx/index.rst, + sphinx/multiinheritance.rst, sphinx/pyqt4_differences.rst: + Enabled call_super_init. Added the cooperative multi-inheritance + section to the documentation. + [a0323ed8bc1d] <5.0-maint> + +2013-06-30 Phil Thompson + + * examples/xmlpatterns/schema/schema.py: + Fixed bugs in the schema.py example. + [0d3ae95c947b] <5.0-maint> + + * PyQt5.msp, qpy/QtCore/qpycore_api.h, + qpy/QtCore/qpycore_qobject_getattr.cpp: + Moved a const_cast closer to where it is needed. + [c96b00d73380] <5.0-maint> + + * Makefile, PyQt5.msp, lib/configure.py, qpy/QtCore/qpycore_api.h, + qpy/QtCore/qpycore_init.cpp, qpy/QtCore/qpycore_pyqtconfigure.cpp, + qpy/QtCore/qpycore_qobject_helpers.h: + Changed the handling of QObject ctor keywords arguments so that it + doesn't break cooperative multi-inheritance and is compatible with + SIP v5. SIP v4.15 is now required. + [8c442640f72e] <5.0-maint> + + * dbus/dbus.cpp: + Fixed the names of the module init functions. + [950cd70446a1] <5.0-maint> + +2013-06-29 Phil Thompson + + * lib/configure.py: + Fixed the previous fix so that the framework status is still + checked. + [901a31b124a3] <5.0-maint> + +2013-06-28 Phil Thompson + + * lib/configure.py: + Make sure that the --spec value passed to configure.py is always + used. + [fe4c612ae259] <5.0-maint> + + * examples/multimediawidgets/camera/camera.py, + examples/multimediawidgets/camera/camera.ui, + examples/multimediawidgets/camera/imagesettings.ui, + examples/multimediawidgets/camera/ui_camera.py, + examples/multimediawidgets/camera/ui_imagesettings.py, + examples/multimediawidgets/camera/ui_videosettings.py, + examples/multimediawidgets/camera/videosettings.ui, + examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + Added the camera.py example. + [e74dbc5074d0] <5.0-maint> + + * PyQt5.msp, sphinx/api_metadata.cfg: + Removed QVideoWidgetControl. + [8c268c606cc4] <5.0-maint> + +2013-06-26 Phil Thompson + + * PyQt5.msp, sphinx/api_metadata.cfg: + Completed the implementation of the QtMultimedia module. + [6a522f87648d] <5.0-maint> + + * PyQt5.msp: + Added the radio classes. + [9420fcb1da43] <5.0-maint> + + * PyQt5.msp: + Removed QMediaControl as it seems pointless without a documented way + to create a QMediaService. + [b02de4d09d04] <5.0-maint> + + * PyQt5.msp: + More QtMultimedia classes. + [f52207a4280a] <5.0-maint> + +2013-06-25 Phil Thompson + + * PyQt5.msp, examples/multimedia/audiooutput.py, + examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + Added the audiooutput.py example. + [23e2468a55f1] <5.0-maint> + + * examples/multimedia/README, + examples/multimedia/audiodevices/audiodevices.py, + examples/multimedia/audiodevices/audiodevicesbase.ui, + examples/multimedia/audiodevices/ui_audiodevicesbase.py, + examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + Added the audiodevices.py example. + [8918a6427814] <5.0-maint> + + * lib/configure.py: + Make the pyuic5 wrapper executable before running qmake so that the + permissions don't get stripped when installing on Linux. + [b5c2fb502885] <5.0-maint> + +2013-06-23 Phil Thompson + + * dbus/dbus.cpp, dbus/dbus.sbf, dbus/helper.h, lib/configure.py, + sphinx/dbus.rst, sphinx/introduction.rst, + sphinx/pyqt4_differences.rst: + The dbus.mainloop.qt module is now called dbus.mainloop.pyqt5 so + that it can be installed side by side with the PyQt4 equivalent. + [b72659988feb] <5.0-maint> + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp, + test/tests/metaobject/test_connections.py: + Fixed the lack of exception when connect() is given a bad slot. + [a4985399df5e] <5.0-maint> + + * examples/multimediawidgets/player.py, + examples/multimediawidgets/videographicsitem.py, + examples/multimediawidgets/videowidget.py, + examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + Added the player.py example. + [67351785a13c] <5.0-maint> + + * PyQt5.msp: + Implemented some more of the QtMutimedia classes. + [3e35bd4e468a] <5.0-maint> + +2013-06-22 Phil Thompson + + * examples/graphicsview/elasticnodes.py, + examples/qtdemo/itemcircleanimation.py, + examples/threads/mandelbrot.py: + Removed the calls to the QWheelEvent.delta() method in the examples. + [562ea33d38e0] <5.0-maint> + + * PyQt5.msp, sphinx/api_metadata.cfg: + Completed the QtMultimediaWidgets module. + [d9d42fdc6b18] <5.0-maint> + + * build.py, contrib/lang/Makefile, contrib/lang/lang.py, + contrib/lang/lang.qrc, contrib/lang/lang/cs_cs.qm, + contrib/lang/lang/cs_cs.ts, contrib/lang/lang/da_da.qm, + contrib/lang/lang/da_da.ts, contrib/lang/lang/de_ch.qm, + contrib/lang/lang/de_ch.ts, contrib/lang/lang/de_de.qm, + contrib/lang/lang/de_de.ts, contrib/lang/lang/en_gb.qm, + contrib/lang/lang/en_gb.ts, contrib/lang/lang/en_us.qm, + contrib/lang/lang/en_us.ts, contrib/lang/lang/es_es.qm, + contrib/lang/lang/es_es.ts, contrib/lang/lang/et_et.qm, + contrib/lang/lang/et_et.ts, contrib/lang/lang/fi_fi.qm, + contrib/lang/lang/fi_fi.ts, contrib/lang/lang/fr_ca.qm, + contrib/lang/lang/fr_ca.ts, contrib/lang/lang/fr_fr.qm, + contrib/lang/lang/fr_fr.ts, contrib/lang/lang/hu_hu.qm, + contrib/lang/lang/hu_hu.ts, contrib/lang/lang/it_it.qm, + contrib/lang/lang/it_it.ts, contrib/lang/lang/nl_nl.qm, + contrib/lang/lang/nl_nl.ts, contrib/lang/lang/no_no.qm, + contrib/lang/lang/no_no.ts, contrib/lang/lang/pl_pl.qm, + contrib/lang/lang/pl_pl.ts, contrib/lang/lang/pt_pt.qm, + contrib/lang/lang/pt_pt.ts, contrib/lang/lang/sv_sv.qm, + contrib/lang/lang/sv_sv.ts, contrib/lang/lang/tr_tr.qm, + contrib/lang/lang/tr_tr.ts, contrib/lang/mainwindow.ui, + contrib/pymodeltest/LICENSE.GPL, contrib/pymodeltest/README, + contrib/pymodeltest/modeltest.py, contrib/sandbox/README, + contrib/sandbox/sandbox.pyw: + Removed the contrib directory. + [591c9a622a71] <5.0-maint> + + * PyQt5.msp: + Added %ConvertToSubClassCode for QGraphicsVideoItem. + [de85f62e8967] <5.0-maint> + + * examples/multimediawidgets/videowidget.py, + examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + Added the videowidget.py example. + [9acd16b2bdce] <5.0-maint> + + * examples/multimedia/README, + examples/multimedia/videographicsitem.py, + examples/multimediawidgets/README, + examples/multimediawidgets/videographicsitem.py, + examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + The QtMultimediaWidgets examples now go in their own directory. + [891bb8122a11] <5.0-maint> + + * examples/multimedia/videographicsitem.py: + Debugged the videographicsitem.py example. + [d1e778504aab] <5.0-maint> + + * PyQt5.msp, installers/PyQt5-Qt5-gpl.nsi, lib/configure.py, + sphinx/introduction.rst: + Added the QtMultimediaWidgets module (with a subset of the classes). + Added some of the new Qt5 QtMultimedia classes. + [6bfb31f31b0d] <5.0-maint> + + * examples/multimedia/README, + examples/multimedia/videographicsitem.py, + examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + Added the (untested) videographicsitem.py example. + [1eea557f6cad] <5.0-maint> + + * lib/configure.py: + configure.py now checks the Qt version as soon as possible. + [e1cf0c849548] <5.0-maint> + +2013-06-21 Phil Thompson + + * PyQt5.msp: + Manually fixed the project file for the parse state of all ignored + QtMultimedia header files. + [f02eb87af35c] <5.0-maint> + +2013-06-16 Phil Thompson + + * .hgtags: + Added tag 5.0 for changeset 785762fc2868 + [5d5021bfff4c] + + * NEWS, Qt5-TODO.txt: + Released as v5.0. + [785762fc2868] [5.0] + + * Makefile, examples/designer/plugins/plugins.py: + Fixed the plugins.py example so that it doesn't have to be run from + the directory containing it. + [2c51ab7a3c68] + + * examples/qtdemo/menumanager.py: + Removed the Help support from qtdemo.py because of bugs in QtSql in + Qt5 causing crashes on exit. + [f5b9ce401532] + +2013-06-15 Phil Thompson + + * build.py: + Fix to the build system when creating source packages. + [d700a2283637] + + * sphinx/pyqt4_differences.rst: + Fixed a short label in the docs. + [ca941a71d917] + + * PyQt5.msp, Qt5-TODO.txt, sphinx/api_metadata.cfg, + sphinx/pyqt4_differences.rst: + Removed the obsolete QtOpenGL classes. + [1a15fc8788a9] + + * build.py, sphinx/api_metadata.cfg, sphinx/introduction.rst, + sphinx/pyqt4_differences.rst: + Added the API metadata for all but the QtOpenGL module. + [478d7f271b71] + + * Makefile, build.py, sphinx/api_metadata.cfg, + sphinx/class_reference.rst: + Updated build.py to read the API meta-data from a file. + [4379f27de31d] + + * sphinx/class_reference.rst, sphinx/conf.py, sphinx/designer.rst, + sphinx/index.rst, sphinx/introduction.rst, + sphinx/pyqt4_differences.rst: + Documentation updates including the skeleton structure of the class + reference. + [aa1ba2118845] + +2013-06-14 Phil Thompson + + * Qt5-TODO.txt, sphinx/introduction.rst: + Updated the reference guide relating to QtOpenGL. + [7b37d453ec88] + + * PyQt5.msp, Qt5-TODO.txt, sphinx/buffer_interface.rst, + sphinx/build_system.rst, sphinx/dbus.rst, + sphinx/deploy_commercial.rst, sphinx/designer.rst, + sphinx/extension_api.rst, sphinx/gotchas.rst, sphinx/i18n.rst, + sphinx/incompatibilities.rst, sphinx/incompatible_apis.rst, + sphinx/index.rst, sphinx/installation.rst, sphinx/introduction.rst, + sphinx/keyword_arguments.rst, sphinx/new_style_signals_slots.rst, + sphinx/old_style_signals_slots.rst, sphinx/pickle.rst, + sphinx/pyqt4_differences.rst, sphinx/pyqt_qsettings.rst, + sphinx/pyqt_qvariant.rst, sphinx/python_shell.rst, + sphinx/python_v3.rst, sphinx/qml.rst, sphinx/qt_properties.rst, + sphinx/qt_v5.rst, sphinx/resources.rst, sphinx/signals_slots.rst, + sphinx/webkit.rst: + Updated the reference guide. + [f3e4f0cf5959] + +2013-06-13 Phil Thompson + + * Makefile, build.py: + Added build support for creating standalone documentation. + [8322dc67c499] + +2013-06-12 Phil Thompson + + * Qt5-TODO.txt, examples/designer/plugins/plugins.py, + examples/qtdemo/menumanager.py: + Fixed another use of QProcess.setEnvironment() in the examples. + [18f7592450f7] + + * Qt5-TODO.txt, installers/PyQt5-Qt5-gpl.nsi: + More installer fixes. + [08445543af31] + + * examples/qtdemo/examplecontent.py, examples/qtdemo/menumanager.py: + Windows and Python3 fixes for qtdemo.py. + [94ea20102c8f] + + * lib/configure.py: + Another fix for installing opengl_types.sip in the right place. + [f87b6b02fd2c] + + * installers/PyQt5-Qt5-gpl.nsi, installers/qsci-pyqt5-config.bat, + lib/configure.py: + pylupdate5 and pyrcc5 now get built again. More out-of-tree build + fixes. Installer fixes. + [519d3934205d] + + * lib/configure.py, qpy/QtOpenGL/opengl_types.sip: + Fixed the handling of OpenGL types with out-of-tree builds. + [116f5369e841] + + * installers/BuildGPL.txt, lib/configure.py: + Minor tweek to configure.py. + [d71d7716da87] + + * Qt5-TODO.txt, lib/configure.py: + Fixes for configure.py to handle debug builds on Windows. + [86a3338117e0] + + * installers/PyQt5-Qt5-gpl.nsi: + Updates to the installer to handle conflicts with PyQt4. + [a4ae753bd3e3] + +2013-06-11 Phil Thompson + + * PyQt5.msp, Qt5-TODO.txt, qpy/QtCore/qpycore_api.h, + qpy/QtCore/qpycore_pyqtslot.cpp, qpy/QtCore/qpycore_pyqtslot.h, + qpy/QtCore/qpycore_pyqtslotproxy.cpp, + qpy/QtCore/qpycore_pyqtslotproxy.h: + Proxied slots are now handled properly by the garbage collector. + [67de01d44e88] + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Clear a benign exception that was tripping up the garbage collector. + [8c527c6f681b] + + * Makefile, test/dbus/test_multibus.py, test/runtests.py, + test/tests/classes/test_QObject.py, + test/tests/classes/test_QSettings.py, + test/tests/classes/test_QSignalSpy.py, + test/tests/classes/test_QStringList.py, + test/tests/classes/test_QVariant.py, + test/tests/metaobject/test_connections.py, + test/tests/metaobject/test_connections_old_style.py, + test/tests/metaobject/test_connectslotsbyname.py, + test/tests/metaobject/test_destroyed.py, + test/tests/metaobject/test_gc_slots.py, + test/tests/metaobject/test_invoke.py, + test/tests/metaobject/test_pyqtproperty.py, + test/tests/metaobject/test_pyqtsignal.py, + test/tests/metaobject/test_pyqtsignature.py, + test/tests/metaobject/test_pyqtslot.py, + test/tests/metaobject/test_qvariantmap.py, + test/tests/metaobject/test_sender.py, + test/tests/metaobject/test_signal.py, + test/tests/misc/test_pickle.py, test/tests/misc/test_repr.py, + test/tests/pyuic/test_pyuic.py, test/v2_unicode.py, + test/v3_unicode.py: + Ported the unit tests. + [17137bd344c2] + +2013-06-10 Phil Thompson + + * qpy/QtCore/qpycore_qmetaobject_helpers.cpp: + Fixed QMetaObject.connectSlotsByName(). + [ef6ebf8e9f8d] + + * PyQt5.msp: + Fixed the QVariant ctors. + [3350bac153b0] + + * PyQt5.msp, Qt5-TODO.txt: + Updated to Qt v5.0.2. + [a9f027d06f8b] + +2013-06-08 Phil Thompson + + * PyQt5.msp: + QSyntaxHighlighter.setCurrentBlockUserData() now keeps a reference + to the document. + [0debe193744d] + + * PyQt5.msp, Qt5-TODO.txt: + Removed all qSwap() implementations. All QDataStream << and >> + operators now release the GIL. + [23e3a9f5433c] + + * PyQt5.msp, Qt5-TODO.txt, qpy/QtCore/qpycore.pro, + qpy/QtCore/qpycore_api.h, qpy/QtCore/qpycore_chimera.cpp, + qpy/QtCore/qpycore_qpynullvariant.cpp, + qpy/QtCore/qpycore_qpynullvariant.h, qpy/QtCore/qpynullvariant.sip: + Implemented the new QVariant support. + [c84a17f0d329] + +2013-06-07 Phil Thompson + + * PyQt5.msp: + Updated the project format to v4. + [b0c3cafe79e0] + +2013-06-06 Phil Thompson + + * PyQt5.msp, Qt5-TODO.txt: + Added support for QSignalSpy. + [3a69020f1620] + +2013-06-03 Phil Thompson + + * PyQt5.msp, Qt5-TODO.txt, qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_public_api.h: + Removed the unused argument from pyqt5_qobject_sender(). + [cdc78cf84e0d] + + * PyQt5.msp, Qt5-TODO.txt, qpy/QtCore/qpycore_api.h, + qpy/QtCore/qpycore_decorators.cpp, + qpy/QtCore/qpycore_post_init.cpp.in, qpy/QtCore/qpycore_types.cpp: + Removed the remaining support for pyqtSignature and __pyqtSignals__. + [9d544b4c475d] + + * qpy/QtCore/qpycore.pro, qpy/QtCore/qpycore_post_init.cpp.in, + qpy/QtCore/qpycore_pyqtproxy.cpp, qpy/QtCore/qpycore_pyqtproxy.h, + qpy/QtCore/qpycore_qobject_getattr.cpp: + Removed the old PyQtProxy implementation. + [d1543cb6f559] + +2013-06-02 Phil Thompson + + * PyQt5.msp, Qt5-TODO.txt, qpy/QtCore/qpycore.pro, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_sip_helpers.cpp, + qpy/QtCore/qpycore_sip_helpers.h: + Removed the legacy SIP helpers. + [036f09c3b943] + + * Makefile, examples/designer/plugins/widgets/bubbleswidget.py, + examples/designer/plugins/widgets/helloglwidget.py, + examples/graphicsview/dragdroprobot/dragdroprobot.py, + examples/graphicsview/elasticnodes.py, + examples/graphicsview/padnavigator/padnavigator.py, + examples/itemviews/spreadsheet/spreadsheet.py, + examples/opengl/hellogl.py, examples/opengl/overpainting.py, + examples/widgets/tetrix.py, examples/xmlpatterns/schema/schema.py: + Fixed some use of deprecated calls in the examples. + [f860e211c790] + + * Makefile, Qt5-TODO.txt, qpy/QtCore/qpycore.pro, + qpy/QtCore/qpycore_decorators.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtslot.cpp, qpy/QtCore/qpycore_pyqtslot.h, + qpy/QtCore/qpycore_pyqtslotproxy.cpp, + qpy/QtCore/qpycore_pyqtslotproxy.h, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_types.cpp, qpy/QtCore/qpycore_types.h: + Refactored the slot support so that doesn't used the support from + SIP and only supports what can happen with new-style connections. + [1579721f5e05] + +2013-06-01 Phil Thompson + + * qpy/QtCore/qpycore_init.cpp: + Temporarily disabled parts of the API that were used by the + QtDeclarative module. + [7af4bfe5aa42] + + * PyQt5.msp, qpy/QtCore/qpycore_api.h, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_misc.cpp, qpy/QtCore/qpycore_misc.h, + qpy/QtCore/qpycore_public_api.cpp, qpy/QtCore/qpycore_public_api.h, + qpy/QtCore/qpycore_shared.h: + Added pyqt5_from_argv_list() and pyqt5_update_argv_list() to the + public API. + [da24f909db1a] + + * PyQt5.msp, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_public_api.h, + qpy/QtCore/qpycore_qvariant_value.cpp, qpy/QtCore/qpycore_shared.h, + qpy/QtDBus/qpydbuspendingreply.cpp, qpy/QtDBus/qpydbusreply.cpp: + Added pyqt5_from_qvariant_by_type() to the public API. + [2dd262e0cd5c] + + * PyQt5.msp, Qt5-TODO.txt, qpy/QtCore/qpycore_chimera.cpp, + qpy/QtCore/qpycore_chimera.h, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_public_api.cpp, qpy/QtCore/qpycore_public_api.h, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_qobject_helpers.h, + qpy/QtDBus/qpydbus_chimera_helpers.cpp, + qpy/QtDBus/qpydbus_chimera_helpers.h, + qpy/QtDBus/qpydbus_post_init.cpp: + Added pyqt5_qobject_sender() and + pyqt5_register_from_qvariant_convertor() to the public API. + [66f421a3b6e7] + + * PyQt5.msp, Qt5-TODO.txt, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_public_api.cpp, qpy/QtCore/qpycore_public_api.h: + Changed the prefix of public API functions from qtcore_api_ to + pyqt5_. + [e32d69b5cc32] + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Fixed a bug in the handling of bound signals. + [3cc1a7558a51] + + * qpy/QtCore/qpycore_pyqtslotproxy.cpp, + qpy/QtCore/qpycore_pyqtslotproxy.h: + Added the missing slot proxy implementation to the repo. + [820b5f9d9b47] + + * PyQt5.msp, Qt5-TODO.txt: + Deprecated SIP features are no longer used anywhere. + [7aa4515516a4] + + * PyQt5.msp, Qt5-TODO.txt: + Removed the use of deprecated SIP feature from all QtWidgets + dialogs. + [cf1c268f04cc] + +2013-05-31 Phil Thompson + + * PyQt5.msp: + The QtPrintSupport module no longer uses deprecated SIP features. + [200f23469b4e] + + * Makefile, PyQt5.msp, + examples/dbus/remotecontrolledcar/controller/ui_controller.py, + qpy/QtCore/qpycore_init.cpp, qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_public_api.h, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtslot.cpp, qpy/QtCore/qpycore_shared.h: + The QtDBus module no longer uses deprecated SIP features. + [d8fb2e91a60b] + + * pyuic/uic/properties.py: + Fixed pyuic5's handling of margins. + [dd808c1bcced] + + * Makefile, PyQt5.msp: + The QtNetwork module no longer uses deprecated SIP features. + [8b15f81ccc85] + + * PyQt5.msp, Qt5-TODO.txt, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_public_api.cpp, qpy/QtCore/qpycore_public_api.h, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, qpy/QtCore/qpycore_shared.h: + The QtCore modules no longer uses the deprecated SIP features. + [631505f300c6] + + * Makefile, PyQt5.msp, Qt5-TODO.txt, qpy/QtCore/qpycore.pro, + qpy/QtCore/qpycore_api.h, qpy/QtCore/qpycore_chimera.cpp, + qpy/QtCore/qpycore_chimera.h, qpy/QtCore/qpycore_init.cpp, + qpy/QtCore/qpycore_post_init.cpp.in, + qpy/QtCore/qpycore_public_api.cpp, qpy/QtCore/qpycore_public_api.h, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.h, + qpy/QtCore/qpycore_pyqtconfigure.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, qpy/QtCore/qpycore_shared.h: + qtimer.sip no longer uses the deprecated SIP support. Added + QObject.disconnect(). + [bab5304e0ff1] + +2013-05-30 Phil Thompson + + * PyQt5.msp, Qt5-TODO.txt, qpy/QtCore/qpycore.pro, + qpy/QtCore/qpycore_init.cpp, qpy/QtCore/qpycore_public_api.cpp, + qpy/QtCore/qpycore_public_api.h, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_qobject_helpers.h: + Removed connect(), disconnect() and emit() from QObject. Removed + SIGNAL() and SLOT(). QObject.receivers() now takes a signal argument + rather than the output of SIGNAL(). Added the infrastructure for the + public API. + [12dc206d7ff6] + +2013-05-28 Phil Thompson + + * Qt5-TODO.txt, examples/qtdemo/colors.py, + examples/qtdemo/mainwindow.py: + qtdemo.py now only uses software rendering. + [29ad9b391d27] + + * examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + Added the openglwindow.py example to qtdemo.py. + [b5dd1edaeef4] + + * examples/opengl/openglwindow.py: + Added the openglwindow.py example. + [c40a6f2ed560] + + * PyQt5.msp: + Added the missing %PostInitialisationCode to the QtGui module. + [61727b76007a] + + * PyQt5.msp, lib/configure.py: + Added QOpenGLContext and QOpenGLContextGroup to QtGui. + [50c926bd4d3f] + +2013-05-27 Phil Thompson + + * PyQt5.msp, Qt5-TODO.txt: + Added QTemporaryDir to QtCore. + [b5eed4b461b8] + + * PyQt5.msp: + Updated QMutex. + [7af8195ab193] + + * PyQt5.msp: + Added QMimeDatabase and QMimeType to QtCore. + [32a91aa8c689] + + * PyQt5.msp, lib/SubclassCode/QtCore.versions, + qpy/QtCore/qwineventnotifier.sip: + Fixed the sub-class convertor code for QWinEventNotifier. + [1d9649254821] + + * lib/SubclassCode/mksccode.py: + Fixed mksccode.py to handle optional classes whose super-class is + QObject. + [fc5f5053c426] + + * PyQt5.msp: + Updated findChild() and findChildren(). + [af265098377b] + +2013-05-26 Phil Thompson + + * PyQt5.msp: + Added QRegularExpression, QRegularExpressionMatch and + QRegularExpressionMatchIterator to QtCore. + [744a790e2c26] + + * PyQt5.msp: + Added QEventLoopLocker to QtCore. + [fade28309590] + + * PyQt5.msp, Qt5-TODO.txt: + Added QBackingStore, QInputMethod, QPdfWriter and QStyleHints to + QtGui. + [408493dfd7db] + + * PyQt5.msp: + Added QScroller and QScrollerProperties to QtWidgets. + [fa49e60c4e92] + + * PyQt5.msp, Qt5-TODO.txt, qpy/QtCore/qpycore.pro, + qpy/QtCore/qpycore_api.h, qpy/QtCore/qpycore_qmessagelogger.cpp: + qDebug() etc. now use the correct Python context. + [00bf19f063d2] + + * PyQt5.msp: + Split qlogging.sip out from qglobal.sip. Implemented + qInstalleMessageHandler, QMessageLogContext and QMessageLogger. + [29629f01a51f] + +2013-05-25 Phil Thompson + + * PyQt5.msp: + Broke the qsysinfo.h contents out from qglobal.h. + [daa956d2a33d] + +2013-05-21 Phil Thompson + + * PyQt5.msp, Qt5-TODO.txt: + The QDataStream methods that handle qint8 and quint8 types now + interpret them as numeric values rather than single character + strings. + [c9b76fc250ce] + + * PyQt5.msp, Qt5-TODO.txt: + Added support for QTouchSequence. + [cbe60f53ab07] + + * PyQt5.msp: + Updated QtTest to support testing QWindows. + [5383cc77757c] + + * PyQt5.msp, Qt5-TODO.txt: + Updated QtGui for all API elements that use QWindow. + [d9a9af037a33] + +2013-05-20 Phil Thompson + + * PyQt5.msp, Qt5-TODO.txt: + Added support for the QSurface, QSurfaceFormat and QWindow classes. + [4c23a9d62c5a] + + * PyQt5.msp, Qt5-TODO.txt, examples/qtdemo/examplecontent.py, + examples/qtdemo/menucontent.py, examples/qtdemo/menumanager.py, + examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml, + examples/xml/README, examples/xml/dombookmarks/dombookmarks.py, + examples/xml/dombookmarks/frank.xbel, + examples/xml/dombookmarks/jennifer.xbel, + examples/xml/saxbookmarks/frank.xbel, + examples/xml/saxbookmarks/jennifer.xbel, + examples/xml/saxbookmarks/saxbookmarks.py, lib/configure.py: + Removed the QtXml module. + [b83926ccd7cb] + + * PyQt5.msp, Qt5-TODO.txt, + examples/declarative/minehunt/MinehuntCore/Explosion.qml, + examples/declarative/minehunt/MinehuntCore/Tile.qml, + examples/declarative/minehunt/MinehuntCore/pics/No-Ones- + Laughing-3.jpg, + examples/declarative/minehunt/MinehuntCore/pics/back.png, + examples/declarative/minehunt/MinehuntCore/pics/bomb-color.png, + examples/declarative/minehunt/MinehuntCore/pics/bomb.png, + examples/declarative/minehunt/MinehuntCore/pics/face-sad.png, + examples/declarative/minehunt/MinehuntCore/pics/face-smile-big.png, + examples/declarative/minehunt/MinehuntCore/pics/face-smile.png, + examples/declarative/minehunt/MinehuntCore/pics/flag-color.png, + examples/declarative/minehunt/MinehuntCore/pics/flag.png, + examples/declarative/minehunt/MinehuntCore/pics/front.png, + examples/declarative/minehunt/MinehuntCore/pics/quit.png, + examples/declarative/minehunt/MinehuntCore/pics/star.png, + examples/declarative/minehunt/MinehuntCore/qmldir, + examples/declarative/minehunt/minehunt.py, + examples/declarative/minehunt/minehunt.qml, + examples/declarative/modelviews/objectlistmodel/objectlistmodel.py, + examples/declarative/modelviews/objectlistmodel/objectlistmodel.qrc, + examples/declarative/modelviews/objectlistmodel/objectlistmodel_rc.p + y, examples/declarative/modelviews/objectlistmodel/view.qml, + examples/declarative/samegame/SamegameCore/BoomBlock.qml, + examples/declarative/samegame/SamegameCore/Button.qml, + examples/declarative/samegame/SamegameCore/Dialog.qml, + examples/declarative/samegame/SamegameCore/pics/background.png, + examples/declarative/samegame/SamegameCore/pics/blueStar.png, + examples/declarative/samegame/SamegameCore/pics/blueStone.png, + examples/declarative/samegame/SamegameCore/pics/greenStar.png, + examples/declarative/samegame/SamegameCore/pics/greenStone.png, + examples/declarative/samegame/SamegameCore/pics/redStar.png, + examples/declarative/samegame/SamegameCore/pics/redStone.png, + examples/declarative/samegame/SamegameCore/pics/star.png, + examples/declarative/samegame/SamegameCore/pics/yellowStone.png, + examples/declarative/samegame/SamegameCore/qmldir, + examples/declarative/samegame/SamegameCore/samegame.js, + examples/declarative/samegame/highscores/README, + examples/declarative/samegame/highscores/score_data.xml, + examples/declarative/samegame/highscores/score_style.xsl, + examples/declarative/samegame/highscores/scores.php, + examples/declarative/samegame/samegame.qml, + examples/declarative/toys/README, + examples/declarative/toys/clocks/clocks.qml, + examples/declarative/toys/clocks/content/Clock.qml, + examples/declarative/toys/clocks/content/QuitButton.qml, + examples/declarative/toys/clocks/content/background.png, + examples/declarative/toys/clocks/content/center.png, + examples/declarative/toys/clocks/content/clock-night.png, + examples/declarative/toys/clocks/content/clock.png, + examples/declarative/toys/clocks/content/hour.png, + examples/declarative/toys/clocks/content/minute.png, + examples/declarative/toys/clocks/content/quit.png, + examples/declarative/toys/clocks/content/second.png, + examples/declarative/toys/corkboards/Day.qml, + examples/declarative/toys/corkboards/cork.jpg, + examples/declarative/toys/corkboards/corkboards.qml, + examples/declarative/toys/corkboards/note-yellow.png, + examples/declarative/toys/corkboards/tack.png, + examples/declarative/toys/dynamicscene/Button.qml, + examples/declarative/toys/dynamicscene/GenericSceneItem.qml, + examples/declarative/toys/dynamicscene/PaletteItem.qml, + examples/declarative/toys/dynamicscene/PerspectiveItem.qml, + examples/declarative/toys/dynamicscene/Sun.qml, + examples/declarative/toys/dynamicscene/dynamicscene.qml, + examples/declarative/toys/dynamicscene/images/face-smile.png, + examples/declarative/toys/dynamicscene/images/moon.png, + examples/declarative/toys/dynamicscene/images/rabbit_brown.png, + examples/declarative/toys/dynamicscene/images/rabbit_bw.png, + examples/declarative/toys/dynamicscene/images/star.png, + examples/declarative/toys/dynamicscene/images/sun.png, + examples/declarative/toys/dynamicscene/images/tree_s.png, + examples/declarative/toys/dynamicscene/itemCreation.js, + examples/declarative/toys/tic-tac-toe/content/Button.qml, + examples/declarative/toys/tic-tac-toe/content/TicTac.qml, + examples/declarative/toys/tic-tac-toe/content/pics/board.png, + examples/declarative/toys/tic-tac-toe/content/pics/o.png, + examples/declarative/toys/tic-tac-toe/content/pics/x.png, + examples/declarative/toys/tic-tac-toe/content/tic-tac-toe.js, + examples/declarative/toys/tic-tac-toe/tic-tac-toe.qml, + examples/declarative/toys/tvtennis/tvtennis.qml, + examples/declarative/ui-components/README, examples/declarative/ui- + components/dialcontrol/content/Dial.qml, examples/declarative/ui- + components/dialcontrol/content/QuitButton.qml, examples/declarative + /ui-components/dialcontrol/content/background.png, + examples/declarative/ui-components/dialcontrol/content/needle.png, + examples/declarative/ui- + components/dialcontrol/content/needle_shadow.png, + examples/declarative/ui-components/dialcontrol/content/overlay.png, + examples/declarative/ui-components/dialcontrol/content/quit.png, + examples/declarative/ui-components/dialcontrol/dialcontrol.qml, + examples/declarative/ui-components/flipable/content/5_heart.png, + examples/declarative/ui-components/flipable/content/9_club.png, + examples/declarative/ui-components/flipable/content/Card.qml, + examples/declarative/ui-components/flipable/content/back.png, + examples/declarative/ui-components/flipable/flipable.qml, + examples/declarative/ui- + components/progressbar/content/ProgressBar.qml, examples/declarative + /ui-components/progressbar/content/background.png, + examples/declarative/ui-components/progressbar/main.qml, + examples/declarative/ui-components/scrollbar/ScrollBar.qml, + examples/declarative/ui-components/scrollbar/main.qml, + examples/declarative/ui-components/scrollbar/niagara_falls.jpg, + examples/declarative/ui-components/searchbox/SearchBox.qml, + examples/declarative/ui-components/searchbox/images/clear.png, + examples/declarative/ui-components/searchbox/images/lineedit-bg- + focus.png, examples/declarative/ui-components/searchbox/images + /lineedit-bg.png, examples/declarative/ui- + components/searchbox/main.qml, examples/declarative/ui- + components/slideswitch/content/Switch.qml, examples/declarative/ui- + components/slideswitch/content/background.svg, examples/declarative + /ui-components/slideswitch/content/knob.svg, examples/declarative + /ui-components/slideswitch/slideswitch.qml, examples/declarative/ui- + components/spinner/content/Spinner.qml, examples/declarative/ui- + components/spinner/content/spinner-bg.png, examples/declarative/ui- + components/spinner/content/spinner-select.png, examples/declarative + /ui-components/spinner/main.qml, examples/declarative/ui- + components/tabwidget/TabWidget.qml, examples/declarative/ui- + components/tabwidget/main.qml, examples/declarative/ui- + components/tabwidget/tab.png, examples/qtdemo/menumanager.py, + examples/qtdemo/qmlShell.qml, examples/qtdemo/qtdemo.qrc, + examples/qtdemo/qtdemo_rc.py, lib/configure.py, + qpy/QtDeclarative/qpydeclarative.pro, + qpy/QtDeclarative/qpydeclarative_api.h, + qpy/QtDeclarative/qpydeclarative_chimera_helpers.cpp, + qpy/QtDeclarative/qpydeclarative_chimera_helpers.h, + qpy/QtDeclarative/qpydeclarative_listwrapper.cpp, + qpy/QtDeclarative/qpydeclarative_listwrapper.h, + qpy/QtDeclarative/qpydeclarative_post_init.cpp, + qpy/QtDeclarative/qpydeclarativelistproperty.cpp, + qpy/QtDeclarative/qpydeclarativelistproperty.h, + qpy/QtDeclarative/qpydeclarativelistproperty.sip, + qpy/QtDeclarative/qpydeclarativepropertyvaluesource.h, + qpy/QtDeclarative/qpydeclarativepropertyvaluesource.sip: + Removed QtDeclarative. + [fa3ac0a64e09] + + * PyQt5.msp, Qt5-TODO.txt, examples/script/README, + examples/script/helloscript.py, lib/configure.py: + Removed the QtScript and QtScriptTools modules. + [8e5764df83df] + + * pylupdate/translator.h: + Fixed the compiler warning messages from pylupdate. + [ee49c8ae893f] + + * PyQt5.msp, Qt5-TODO.txt: + Removed support for QMatrix. + [29512282f3c3] + +2013-05-18 Phil Thompson + + * PyQt5.msp, Qt5-TODO.txt: + Removed remaining parts of the API that are part of the + compatibility layer. + [82a5ee70a4f3] + + * PyQt5.msp, Qt5-TODO.txt: + Removed support for deprecated (as opposed to obsolete) parts of the + API. + [4e8c4499a9ee] + + * PyQt5.msp, Qt5-TODO.txt: + Fixed QPixmapCache.find(). + [a320fdbc45b9] + + * PyQt5.msp, Qt5-TODO.txt, + examples/mainwindows/application/application.py, + examples/mainwindows/dockwidgets/dockwidgets.py, + examples/mainwindows/mdi/mdi.py, examples/qtdemo/demoitem.py, + examples/qtdemo/demoscene.py, examples/qtdemo/demotextitem.py, + examples/qtdemo/headingitem.py, examples/qtdemo/imageitem.py, + examples/qtdemo/letteritem.py, examples/qtdemo/mainwindow.py, + examples/qtdemo/scanitem.py, examples/qtdemo/textbutton.py, + examples/webkit/fancybrowser/fancybrowser.py, + examples/webkit/formextractor/formextractor.py: + Removed all parts of the API marked as obsolete. Updated qtdemo.py + not to use any obsolete calls. + [2d237a7da2f4] + +2013-05-17 Phil Thompson + + * PyQt5.msp: + Removed the deprecated QGraphicsItemAnimation. + [84eb34c80f46] + + * examples/qtdemo/colors.py, examples/qtdemo/demoitemanimation.py, + examples/qtdemo/menumanager.py, examples/qtdemo/score.py, + examples/qtdemo/textbutton.py: + qtdemo.py no longer uses the deprecated QGraphicsItemAnimation. + [7149eefd1fe8] + + * examples/qtdemo/demoitem.py, examples/qtdemo/textbutton.py: + DemoItem is now a QGraphicsObject. + [f5a12cb364ad] + + * examples/qtdemo/demoitem.py, examples/qtdemo/demoitemanimation.py, + examples/qtdemo/examplecontent.py, + examples/qtdemo/itemcircleanimation.py, + examples/qtdemo/menucontent.py, examples/qtdemo/score.py, + examples/qtdemo/textbutton.py: + Refactored DemoItem in preparation for subclassing from + QGraphicsObject. + [12ef1f22debf] + + * examples/qtdemo/demoitem.py, examples/qtdemo/demoitemanimation.py, + examples/qtdemo/itemcircleanimation.py, + examples/qtdemo/menumanager.py, examples/qtdemo/score.py, + examples/qtdemo/textbutton.py: + Refactored DemoItemAnimation in preparation for removing the + dependency on QGraphicsItemAnimation. + [857a57eb41a0] + +2013-05-16 Phil Thompson + + * examples/qtdemo/colors.py, examples/qtdemo/demoitem.py, + examples/qtdemo/demotextitem.py, examples/qtdemo/dockitem.py, + examples/qtdemo/examplecontent.py, examples/qtdemo/headingitem.py, + examples/qtdemo/imageitem.py, + examples/qtdemo/itemcircleanimation.py, + examples/qtdemo/letteritem.py, examples/qtdemo/mainwindow.py, + examples/qtdemo/menucontent.py, examples/qtdemo/menumanager.py, + examples/qtdemo/scanitem.py, examples/qtdemo/textbutton.py: + Removed the obsolete passing around of the scene. + [49dc741ba538] + + * examples/embedded/lightmaps.py, examples/network/lightmaps.py, + examples/qtdemo/qtdemo_rc.py, examples/qtdemo/xml/examples.xml: + Moved the lightmaps.py example to the network category. + [997d9560dea5] + + * examples/qtdemo/mainwindow.py, examples/qtdemo/menumanager.py: + Removed some PyQt4 specific hacks from qtdemo.py. + [05abb8647b3b] + + * Makefile, PyQt5.msp, Qt5-TODO.txt: + Removed the code that tracked certain widgets in an attempt to + delete things in the right order when the QApplication instance was + being destroyed. + [9e3abbcd7b7e] + + * examples/qtdemo/colors.py, examples/qtdemo/itemcircleanimation.py, + examples/qtdemo/mainwindow.py, examples/qtdemo/menumanager.py: + qtdemo.py basically works. + [9333a816276f] + + * Qt5-TODO.txt: + Updated the TODO list. + [c1673e305a89] + + * examples/declarative/toys/README, examples/declarative/ui- + components/README, + examples/designer/plugins/python/multipagewidgetplugin.py, + examples/tutorials/addressbook/README: + Removed the last remaining references to PyQt4 in the examples. + [5ffe74c1d33b] + + * examples/qtdemo/colors.py, examples/qtdemo/demoitem.py, + examples/qtdemo/demoitemanimation.py, examples/qtdemo/demoscene.py, + examples/qtdemo/demotextitem.py, examples/qtdemo/dockitem.py, + examples/qtdemo/examplecontent.py, examples/qtdemo/guide.py, + examples/qtdemo/guidecircle.py, examples/qtdemo/guideline.py, + examples/qtdemo/headingitem.py, examples/qtdemo/imageitem.py, + examples/qtdemo/itemcircleanimation.py, + examples/qtdemo/letteritem.py, examples/qtdemo/mainwindow.py, + examples/qtdemo/menucontent.py, examples/qtdemo/menumanager.py, + examples/qtdemo/qtdemo.py, examples/qtdemo/qtdemo_rc.py, + examples/qtdemo/qtdemo_rc2.py, examples/qtdemo/qtdemo_rc3.py, + examples/qtdemo/scanitem.py, examples/qtdemo/score.py, + examples/qtdemo/textbutton.py: + Initial update of qtdemo.py. + [4d70ea6fed11] + +2013-05-15 Phil Thompson + + * examples/demos/README, examples/demos/qtdemo/colors.py, + examples/demos/qtdemo/demoitem.py, + examples/demos/qtdemo/demoitemanimation.py, + examples/demos/qtdemo/demoscene.py, + examples/demos/qtdemo/demotextitem.py, + examples/demos/qtdemo/dockitem.py, + examples/demos/qtdemo/examplecontent.py, + examples/demos/qtdemo/guide.py, + examples/demos/qtdemo/guidecircle.py, + examples/demos/qtdemo/guideline.py, + examples/demos/qtdemo/headingitem.py, + examples/demos/qtdemo/imageitem.py, + examples/demos/qtdemo/images/demobg.png, + examples/demos/qtdemo/images/qtlogo_small.png, + examples/demos/qtdemo/images/trolltech-logo.png, + examples/demos/qtdemo/itemcircleanimation.py, + examples/demos/qtdemo/letteritem.py, + examples/demos/qtdemo/mainwindow.py, + examples/demos/qtdemo/menucontent.py, + examples/demos/qtdemo/menumanager.py, + examples/demos/qtdemo/qmlShell.qml, examples/demos/qtdemo/qtdemo.py, + examples/demos/qtdemo/qtdemo.qrc, + examples/demos/qtdemo/qtdemo_rc2.py, + examples/demos/qtdemo/qtdemo_rc3.py, + examples/demos/qtdemo/scanitem.py, examples/demos/qtdemo/score.py, + examples/demos/qtdemo/textbutton.py, + examples/demos/qtdemo/xml/examples.xml, examples/qtdemo/colors.py, + examples/qtdemo/demoitem.py, examples/qtdemo/demoitemanimation.py, + examples/qtdemo/demoscene.py, examples/qtdemo/demotextitem.py, + examples/qtdemo/dockitem.py, examples/qtdemo/examplecontent.py, + examples/qtdemo/guide.py, examples/qtdemo/guidecircle.py, + examples/qtdemo/guideline.py, examples/qtdemo/headingitem.py, + examples/qtdemo/imageitem.py, examples/qtdemo/images/demobg.png, + examples/qtdemo/images/qtlogo_small.png, examples/qtdemo/images + /trolltech-logo.png, examples/qtdemo/itemcircleanimation.py, + examples/qtdemo/letteritem.py, examples/qtdemo/mainwindow.py, + examples/qtdemo/menucontent.py, examples/qtdemo/menumanager.py, + examples/qtdemo/qmlShell.qml, examples/qtdemo/qtdemo.py, + examples/qtdemo/qtdemo.qrc, examples/qtdemo/qtdemo_rc2.py, + examples/qtdemo/qtdemo_rc3.py, examples/qtdemo/scanitem.py, + examples/qtdemo/score.py, examples/qtdemo/textbutton.py, + examples/qtdemo/xml/examples.xml, installers/PyQt5-Qt5-gpl.nsi: + Moved the qtdemo demo so there is no longer a demos directory. + [03b9dced2481] + + * examples/demos/qtdemo/xml/examples.xml, + examples/demos/textedit/example.html, + examples/demos/textedit/images/logo.png, + examples/demos/textedit/images/logo32.png, + examples/demos/textedit/images/mac/editcopy.png, + examples/demos/textedit/images/mac/editcut.png, + examples/demos/textedit/images/mac/editpaste.png, + examples/demos/textedit/images/mac/editredo.png, + examples/demos/textedit/images/mac/editundo.png, + examples/demos/textedit/images/mac/exportpdf.png, + examples/demos/textedit/images/mac/filenew.png, + examples/demos/textedit/images/mac/fileopen.png, + examples/demos/textedit/images/mac/fileprint.png, + examples/demos/textedit/images/mac/filesave.png, + examples/demos/textedit/images/mac/textbold.png, + examples/demos/textedit/images/mac/textcenter.png, + examples/demos/textedit/images/mac/textitalic.png, + examples/demos/textedit/images/mac/textjustify.png, + examples/demos/textedit/images/mac/textleft.png, + examples/demos/textedit/images/mac/textright.png, + examples/demos/textedit/images/mac/textunder.png, + examples/demos/textedit/images/mac/zoomin.png, + examples/demos/textedit/images/mac/zoomout.png, + examples/demos/textedit/images/win/editcopy.png, + examples/demos/textedit/images/win/editcut.png, + examples/demos/textedit/images/win/editpaste.png, + examples/demos/textedit/images/win/editredo.png, + examples/demos/textedit/images/win/editundo.png, + examples/demos/textedit/images/win/exportpdf.png, + examples/demos/textedit/images/win/filenew.png, + examples/demos/textedit/images/win/fileopen.png, + examples/demos/textedit/images/win/fileprint.png, + examples/demos/textedit/images/win/filesave.png, + examples/demos/textedit/images/win/textbold.png, + examples/demos/textedit/images/win/textcenter.png, + examples/demos/textedit/images/win/textitalic.png, + examples/demos/textedit/images/win/textjustify.png, + examples/demos/textedit/images/win/textleft.png, + examples/demos/textedit/images/win/textright.png, + examples/demos/textedit/images/win/textunder.png, + examples/demos/textedit/images/win/zoomin.png, + examples/demos/textedit/images/win/zoomout.png, + examples/demos/textedit/textedit.py, + examples/demos/textedit/textedit.qrc, + examples/demos/textedit/textedit_rc2.py, + examples/demos/textedit/textedit_rc3.py, + examples/richtext/textedit/example.html, + examples/richtext/textedit/images/logo.png, + examples/richtext/textedit/images/logo32.png, + examples/richtext/textedit/images/mac/editcopy.png, + examples/richtext/textedit/images/mac/editcut.png, + examples/richtext/textedit/images/mac/editpaste.png, + examples/richtext/textedit/images/mac/editredo.png, + examples/richtext/textedit/images/mac/editundo.png, + examples/richtext/textedit/images/mac/exportpdf.png, + examples/richtext/textedit/images/mac/filenew.png, + examples/richtext/textedit/images/mac/fileopen.png, + examples/richtext/textedit/images/mac/fileprint.png, + examples/richtext/textedit/images/mac/filesave.png, + examples/richtext/textedit/images/mac/textbold.png, + examples/richtext/textedit/images/mac/textcenter.png, + examples/richtext/textedit/images/mac/textitalic.png, + examples/richtext/textedit/images/mac/textjustify.png, + examples/richtext/textedit/images/mac/textleft.png, + examples/richtext/textedit/images/mac/textright.png, + examples/richtext/textedit/images/mac/textunder.png, + examples/richtext/textedit/images/mac/zoomin.png, + examples/richtext/textedit/images/mac/zoomout.png, + examples/richtext/textedit/images/win/editcopy.png, + examples/richtext/textedit/images/win/editcut.png, + examples/richtext/textedit/images/win/editpaste.png, + examples/richtext/textedit/images/win/editredo.png, + examples/richtext/textedit/images/win/editundo.png, + examples/richtext/textedit/images/win/exportpdf.png, + examples/richtext/textedit/images/win/filenew.png, + examples/richtext/textedit/images/win/fileopen.png, + examples/richtext/textedit/images/win/fileprint.png, + examples/richtext/textedit/images/win/filesave.png, + examples/richtext/textedit/images/win/textbold.png, + examples/richtext/textedit/images/win/textcenter.png, + examples/richtext/textedit/images/win/textitalic.png, + examples/richtext/textedit/images/win/textjustify.png, + examples/richtext/textedit/images/win/textleft.png, + examples/richtext/textedit/images/win/textright.png, + examples/richtext/textedit/images/win/textunder.png, + examples/richtext/textedit/images/win/zoomin.png, + examples/richtext/textedit/images/win/zoomout.png, + examples/richtext/textedit/textedit.py, + examples/richtext/textedit/textedit.qrc, + examples/richtext/textedit/textedit_rc.py: + Updated the richtext.py demo. + [ec5054cef278] + + * examples/demos/qtdemo/xml/examples.xml, + examples/demos/spreadsheet/images/interview.png, + examples/demos/spreadsheet/printview.py, + examples/demos/spreadsheet/spreadsheet.py, + examples/demos/spreadsheet/spreadsheet.qrc, + examples/demos/spreadsheet/spreadsheet_rc2.py, + examples/demos/spreadsheet/spreadsheet_rc3.py, + examples/demos/spreadsheet/spreadsheetdelegate.py, + examples/demos/spreadsheet/spreadsheetitem.py, + examples/demos/spreadsheet/util.py, + examples/itemviews/spreadsheet/images/interview.png, + examples/itemviews/spreadsheet/printview.py, + examples/itemviews/spreadsheet/spreadsheet.py, + examples/itemviews/spreadsheet/spreadsheet.qrc, + examples/itemviews/spreadsheet/spreadsheet_rc.py, + examples/itemviews/spreadsheet/spreadsheetdelegate.py, + examples/itemviews/spreadsheet/spreadsheetitem.py, + examples/itemviews/spreadsheet/util.py: + Updated the spreadsheet.py example. + [c2f9d4c351ba] + + * examples/demos/embedded/lightmaps.py, + examples/embedded/lightmaps.py: + Moved the lightmaps.py demo. + [9e961be64807] + + * examples/declarative/minehunt/MinehuntCore/Explosion.qml, + examples/declarative/minehunt/MinehuntCore/Tile.qml, + examples/declarative/minehunt/MinehuntCore/pics/No-Ones- + Laughing-3.jpg, + examples/declarative/minehunt/MinehuntCore/pics/back.png, + examples/declarative/minehunt/MinehuntCore/pics/bomb-color.png, + examples/declarative/minehunt/MinehuntCore/pics/bomb.png, + examples/declarative/minehunt/MinehuntCore/pics/face-sad.png, + examples/declarative/minehunt/MinehuntCore/pics/face-smile-big.png, + examples/declarative/minehunt/MinehuntCore/pics/face-smile.png, + examples/declarative/minehunt/MinehuntCore/pics/flag-color.png, + examples/declarative/minehunt/MinehuntCore/pics/flag.png, + examples/declarative/minehunt/MinehuntCore/pics/front.png, + examples/declarative/minehunt/MinehuntCore/pics/quit.png, + examples/declarative/minehunt/MinehuntCore/pics/star.png, + examples/declarative/minehunt/MinehuntCore/qmldir, + examples/declarative/minehunt/minehunt.py, + examples/declarative/minehunt/minehunt.qml, + examples/declarative/samegame/SamegameCore/BoomBlock.qml, + examples/declarative/samegame/SamegameCore/Button.qml, + examples/declarative/samegame/SamegameCore/Dialog.qml, + examples/declarative/samegame/SamegameCore/pics/background.png, + examples/declarative/samegame/SamegameCore/pics/blueStar.png, + examples/declarative/samegame/SamegameCore/pics/blueStone.png, + examples/declarative/samegame/SamegameCore/pics/greenStar.png, + examples/declarative/samegame/SamegameCore/pics/greenStone.png, + examples/declarative/samegame/SamegameCore/pics/redStar.png, + examples/declarative/samegame/SamegameCore/pics/redStone.png, + examples/declarative/samegame/SamegameCore/pics/star.png, + examples/declarative/samegame/SamegameCore/pics/yellowStone.png, + examples/declarative/samegame/SamegameCore/qmldir, + examples/declarative/samegame/SamegameCore/samegame.js, + examples/declarative/samegame/highscores/README, + examples/declarative/samegame/highscores/score_data.xml, + examples/declarative/samegame/highscores/score_style.xsl, + examples/declarative/samegame/highscores/scores.php, + examples/declarative/samegame/samegame.qml, + examples/demos/declarative/minehunt/MinehuntCore/Explosion.qml, + examples/demos/declarative/minehunt/MinehuntCore/Tile.qml, + examples/demos/declarative/minehunt/MinehuntCore/pics/No-Ones- + Laughing-3.jpg, + examples/demos/declarative/minehunt/MinehuntCore/pics/back.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/bomb- + color.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/bomb.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/face-sad.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/face-smile- + big.png, examples/demos/declarative/minehunt/MinehuntCore/pics/face- + smile.png, examples/demos/declarative/minehunt/MinehuntCore/pics + /flag-color.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/flag.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/front.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/quit.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/star.png, + examples/demos/declarative/minehunt/MinehuntCore/qmldir, + examples/demos/declarative/minehunt/minehunt.py, + examples/demos/declarative/minehunt/minehunt.qml, + examples/demos/declarative/samegame/SamegameCore/BoomBlock.qml, + examples/demos/declarative/samegame/SamegameCore/Button.qml, + examples/demos/declarative/samegame/SamegameCore/Dialog.qml, example + s/demos/declarative/samegame/SamegameCore/pics/background.png, + examples/demos/declarative/samegame/SamegameCore/pics/blueStar.png, + examples/demos/declarative/samegame/SamegameCore/pics/blueStone.png, + examples/demos/declarative/samegame/SamegameCore/pics/greenStar.png, + examples/demos/declarative/samegame/SamegameCore/pics/greenStone.png + , examples/demos/declarative/samegame/SamegameCore/pics/redStar.png, + examples/demos/declarative/samegame/SamegameCore/pics/redStone.png, + examples/demos/declarative/samegame/SamegameCore/pics/star.png, exam + ples/demos/declarative/samegame/SamegameCore/pics/yellowStone.png, + examples/demos/declarative/samegame/SamegameCore/qmldir, + examples/demos/declarative/samegame/SamegameCore/samegame.js, + examples/demos/declarative/samegame/highscores/README, + examples/demos/declarative/samegame/highscores/score_data.xml, + examples/demos/declarative/samegame/highscores/score_style.xsl, + examples/demos/declarative/samegame/highscores/scores.php, + examples/demos/declarative/samegame/samegame.qml, + examples/demos/qtdemo/xml/examples.xml: + Moved the declarative demos to the declarative examples. + [de4d2ee69036] + + * examples/demos/embeddeddialogs/No-Ones-Laughing-3.jpg, + examples/demos/embeddeddialogs/embeddeddialog.py, + examples/demos/embeddeddialogs/embeddeddialog.ui, + examples/demos/embeddeddialogs/embeddeddialogs.py, + examples/demos/embeddeddialogs/embeddeddialogs.qrc, + examples/demos/embeddeddialogs/embeddeddialogs_rc.py, + examples/demos/qtdemo/xml/examples.xml, + examples/graphicsview/embeddeddialogs/No-Ones-Laughing-3.jpg, + examples/graphicsview/embeddeddialogs/embeddeddialog.py, + examples/graphicsview/embeddeddialogs/embeddeddialog.ui, + examples/graphicsview/embeddeddialogs/embeddeddialogs.py, + examples/graphicsview/embeddeddialogs/embeddeddialogs.qrc, + examples/graphicsview/embeddeddialogs/embeddeddialogs_rc.py: + Moved the embeddeddialogs demo to the graphicsview examples. + [f4df98190d50] + + * examples/demos/embeddeddialogs/embeddeddialog.py, + examples/demos/embeddeddialogs/embeddeddialogs.py, + examples/demos/embeddeddialogs/embeddeddialogs_rc.py, + examples/demos/embeddeddialogs/embeddeddialogs_rc2.py, + examples/demos/embeddeddialogs/embeddeddialogs_rc3.py: + Updated the embeddeddialogs.py demo. + [30580c7f89b8] + + * examples/demos/embedded/lightmaps.py: + Updated the lightmaps.py example. + [0369ce3c4e98] + + * PyQt5.msp: + Added support for QStandardPaths. + [aaef91f631de] + + * examples/demos/declarative/minehunt/minehunt.py: + Updated the minehunt.py example. + [8d430da208a7] + + * examples/xmlpatterns/schema/schema.py, + examples/xmlpatterns/schema/schema_rc.py, + examples/xmlpatterns/schema/schema_rc2.py, + examples/xmlpatterns/schema/schema_rc3.py, + examples/xmlpatterns/schema/ui_schema.py: + Updated the xmlpatterns example. + [609c81ebfc0c] + + * examples/xml/dombookmarks/dombookmarks.py, + examples/xml/saxbookmarks/saxbookmarks.py: + Updated the xml examples. + [d81ecf65893f] + + * examples/widgets/analogclock.py, examples/widgets/calculator.py, + examples/widgets/calendarwidget.py, + examples/widgets/charactermap.py, examples/widgets/digitalclock.py, + examples/widgets/groupbox.py, examples/widgets/icons/icons.py, + examples/widgets/imageviewer.py, examples/widgets/lineedits.py, + examples/widgets/movie/movie.py, examples/widgets/scribble.py, + examples/widgets/shapedclock.py, examples/widgets/sliders.py, + examples/widgets/spinboxes.py, examples/widgets/styles.py, + examples/widgets/stylesheet/stylesheet.py, + examples/widgets/stylesheet/stylesheet_rc.py, + examples/widgets/stylesheet/stylesheet_rc2.py, + examples/widgets/stylesheet/stylesheet_rc3.py, + examples/widgets/stylesheet/stylesheeteditor.py, + examples/widgets/stylesheet/ui_mainwindow.py, + examples/widgets/stylesheet/ui_stylesheeteditor.py, + examples/widgets/tetrix.py, examples/widgets/tooltips/tooltips.py, + examples/widgets/tooltips/tooltips_rc.py, + examples/widgets/tooltips/tooltips_rc2.py, + examples/widgets/tooltips/tooltips_rc3.py, + examples/widgets/wiggly.py, examples/widgets/windowflags.py: + Updated the widgets examples. + [d2f301ac201a] + + * examples/tools/regexp.py: + Fixed the regexp.py example so that the close button works. + [8fede383c772] + +2013-05-14 Phil Thompson + + * examples/webkit/README, + examples/webkit/domtraversal/domtraversal.py, + examples/webkit/domtraversal/ui_window.py, + examples/webkit/fancybrowser/fancybrowser.py, + examples/webkit/fancybrowser/jquery_rc.py, + examples/webkit/fancybrowser/jquery_rc2.py, + examples/webkit/fancybrowser/jquery_rc3.py, + examples/webkit/formextractor/formextractor.py, + examples/webkit/formextractor/formextractor_rc.py, + examples/webkit/formextractor/formextractor_rc2.py, + examples/webkit/formextractor/formextractor_rc3.py, + examples/webkit/formextractor/ui_formextractor.py, + examples/webkit/framecapture.py, examples/webkit/googlechat/form.ui, + examples/webkit/googlechat/googlechat.py, + examples/webkit/googlechat/ui_form.py, + examples/webkit/previewer/previewer.py, + examples/webkit/previewer/ui_previewer.py, + examples/webkit/simpleselector/simpleselector.py, + examples/webkit/simpleselector/ui_window.py: + Updated the webkit examples. However formextractor.py and + simpleselector.py crash but this maybe due to Qt bugs (although the + C++ versions seem to be Ok). + [70aa9e5575f0] + + * PyQt5.msp: + Removed a wrong /Transfer/ annotation from + QWebFrame.addToJavaScriptWindowObject(). + [595fc25030b6] + + * examples/tutorials/addressbook/part1.py, + examples/tutorials/addressbook/part2.py, + examples/tutorials/addressbook/part3.py, + examples/tutorials/addressbook/part4.py, + examples/tutorials/addressbook/part5.py, + examples/tutorials/addressbook/part6.py, + examples/tutorials/addressbook/part7.py: + Updated the tutorials example. + [3507ed3a4178] + + * examples/tools/codecs/codecs.py, + examples/tools/customcompleter/customcompleter.py, + examples/tools/customcompleter/customcompleter_rc.py, + examples/tools/customcompleter/customcompleter_rc2.py, + examples/tools/customcompleter/customcompleter_rc3.py, + examples/tools/i18n/i18n.py, examples/tools/i18n/i18n_rc.py, + examples/tools/i18n/i18n_rc2.py, examples/tools/i18n/i18n_rc3.py, + examples/tools/regexp.py, + examples/tools/settingseditor/settingseditor.py: + Updated the tools examples. + [67da45febe99] + + * examples/threads/mandelbrot.py, examples/threads/semaphores.py, + examples/threads/waitconditions.py: + Updated the threads examples. + [9d668a2d5f1e] + + * examples/sql/cachedtable.py, examples/sql/connection.py, + examples/sql/querymodel.py, examples/sql/relationaltablemodel.py, + examples/sql/tablemodel.py: + Updated the sql examples. + [cfee8e97f2b0] + + * examples/script/helloscript.py: + Updated the script example. + [edc67efd321e] + + * examples/richtext/calendar.py, examples/richtext/orderform.py, + examples/richtext/syntaxhighlighter.py, + examples/richtext/textobject/textobject.py: + Updated the richtext examples. + [68202805ef7d] + + * examples/pyuic/compile-on-the-fly.py, examples/pyuic/demo.ui, + examples/pyuic/load_ui1.py, examples/pyuic/load_ui2.py: + Updated the pyuic examples. + [37fa592b6de2] + + * examples/painting/basicdrawing/basicdrawing.py, + examples/painting/basicdrawing/basicdrawing_rc.py, + examples/painting/basicdrawing/basicdrawing_rc2.py, + examples/painting/basicdrawing/basicdrawing_rc3.py, + examples/painting/concentriccircles.py, + examples/painting/painterpaths.py, + examples/painting/svgviewer/svgviewer.py, + examples/painting/svgviewer/svgviewer_rc.py, + examples/painting/svgviewer/svgviewer_rc2.py, + examples/painting/svgviewer/svgviewer_rc3.py, + examples/painting/transformations.py: + Updated the painting examples. + [1dc59a60cc5a] + +2013-05-13 Phil Thompson + + * examples/phonon/README, examples/phonon/capabilities.py, + examples/phonon/musicplayer.py: + Removed the phonon examples. + [66e123471275] + + * examples/opengl/2dpainting.py, examples/opengl/grabber.py, + examples/opengl/hellogl.py, examples/opengl/overpainting.py, + examples/opengl/samplebuffers.py, + examples/opengl/textures/textures.py, + examples/opengl/textures/textures_rc.py, + examples/opengl/textures/textures_rc2.py, + examples/opengl/textures/textures_rc3.py: + Updated the opengl examples. + [56994aef7046] + + * examples/README, examples/activeqt/README, + examples/animation/README, examples/demos/README, + examples/designer/README, examples/desktop/README, + examples/dialogs/README, examples/draganddrop/README, + examples/effects/README, examples/graphicsview/README, + examples/ipc/README, examples/itemviews/README, + examples/layouts/README, examples/mainwindows/README, + examples/network/README, examples/network/blockingfortuneclient.py, + examples/network/broadcastreceiver.py, + examples/network/broadcastsender.py, + examples/network/fortuneclient.py, + examples/network/fortuneserver.py, examples/network/ftp/ftp.py, + examples/network/ftp/ftp.qrc, examples/network/ftp/ftp_rc2.py, + examples/network/ftp/ftp_rc3.py, + examples/network/ftp/images/cdtoparent.png, + examples/network/ftp/images/dir.png, + examples/network/ftp/images/file.png, examples/network/http/http.py, + examples/network/loopback.py, + examples/network/threadedfortuneserver.py, examples/opengl/README, + examples/painting/README, examples/phonon/README, + examples/richtext/README, examples/script/README, + examples/sql/README, examples/threads/README, examples/tools/README, + examples/widgets/README, examples/xml/README, + examples/xmlpatterns/README: + Updated the network examples. + [17ed9232524b] + +2013-05-12 Phil Thompson + + * examples/mainwindows/application/application.py, + examples/mainwindows/application/application_rc.py, + examples/mainwindows/application/application_rc2.py, + examples/mainwindows/application/application_rc3.py, + examples/mainwindows/dockwidgets/dockwidgets.py, + examples/mainwindows/dockwidgets/dockwidgets_rc.py, + examples/mainwindows/dockwidgets/dockwidgets_rc2.py, + examples/mainwindows/dockwidgets/dockwidgets_rc3.py, + examples/mainwindows/mdi/mdi.py, examples/mainwindows/mdi/mdi_rc.py, + examples/mainwindows/mdi/mdi_rc2.py, + examples/mainwindows/mdi/mdi_rc3.py, examples/mainwindows/menus.py, + examples/mainwindows/recentfiles.py, + examples/mainwindows/sdi/sdi.py, examples/mainwindows/sdi/sdi_rc.py, + examples/mainwindows/sdi/sdi_rc2.py, + examples/mainwindows/sdi/sdi_rc3.py, + examples/mainwindows/separations.py: + Updated the mainwindows examples. + [4fa26f6310ae] + + * examples/layouts/basiclayouts.py, examples/layouts/borderlayout.py, + examples/layouts/flowlayout.py: + Updated the layouts examples. + [b710b235f26d] + + * examples/itemviews/basicsortfiltermodel.py, + examples/itemviews/chart/chart.py, + examples/itemviews/chart/chart_rc.py, + examples/itemviews/chart/chart_rc2.py, + examples/itemviews/chart/chart_rc3.py, + examples/itemviews/coloreditorfactory.py, + examples/itemviews/combowidgetmapper.py, + examples/itemviews/customsortfiltermodel.py, + examples/itemviews/dirview.py, + examples/itemviews/editabletreemodel/editabletreemodel.py, + examples/itemviews/editabletreemodel/editabletreemodel_rc.py, + examples/itemviews/editabletreemodel/editabletreemodel_rc2.py, + examples/itemviews/editabletreemodel/editabletreemodel_rc3.py, + examples/itemviews/editabletreemodel/ui_mainwindow.py, + examples/itemviews/fetchmore.py, + examples/itemviews/pixelator/pixelator.py, + examples/itemviews/pixelator/pixelator_rc.py, + examples/itemviews/pixelator/pixelator_rc2.py, + examples/itemviews/pixelator/pixelator_rc3.py, + examples/itemviews/puzzle/puzzle.py, + examples/itemviews/puzzle/puzzle_rc.py, + examples/itemviews/puzzle/puzzle_rc2.py, + examples/itemviews/puzzle/puzzle_rc3.py, + examples/itemviews/simpledommodel.py, + examples/itemviews/simpletreemodel/simpletreemodel.py, + examples/itemviews/simpletreemodel/simpletreemodel_rc.py, + examples/itemviews/simpletreemodel/simpletreemodel_rc2.py, + examples/itemviews/simpletreemodel/simpletreemodel_rc3.py, + examples/itemviews/simplewidgetmapper.py, + examples/itemviews/spinboxdelegate.py, + examples/itemviews/stardelegate.py: + Updated the itemviews examples. + [9a82c6b6c206] + + * examples/ipc/localfortuneclient.py, + examples/ipc/localfortuneserver.py, + examples/ipc/sharedmemory/dialog.py, + examples/ipc/sharedmemory/sharedmemory.py: + Updated the ipc examples. + [51e1605974ae] + +2013-05-05 Phil Thompson + + * examples/graphicsview/padnavigator/backside.ui, + examples/graphicsview/padnavigator/form.ui, + examples/graphicsview/padnavigator/padnavigator.py, + examples/graphicsview/padnavigator/padnavigator_rc.py, + examples/graphicsview/padnavigator/padnavigator_rc2.py, + examples/graphicsview/padnavigator/padnavigator_rc3.py, + examples/graphicsview/padnavigator/ui_backside.py, + examples/graphicsview/padnavigator/ui_form.py: + Updated the padnavigator.py example. + [dd29bc79def2] + + * PyQt5.msp: + Several fixes for properly tracking QPropertyAnimation instances. + Several fixes for properly handling the parent relationships of + transitions. + [f0b3dedbb506] + + * examples/graphicsview/elasticnodes.py: + Updated the elasticnodes.py example. + [b0831183bf83] + + * PyQt5.msp: + Added the missing Type and UserType to QGraphicsItem. + [57a15a6a1562] + + * QAxContainer/QAxContainermod.sip, QAxContainer/qaxwidget.sip: + QAxContainer fixes for PyQt5. + [74eb89bd4fb2] + + * installers/pyqt5-config.bat: + Fixed pyqt5-config.bat. + [2f55460b7aba] + + * examples/graphicsview/diagramscene/diagramscene.py, + examples/graphicsview/dragdroprobot/dragdroprobot.py, + examples/graphicsview/dragdroprobot/dragdroprobot_rc.py, + examples/graphicsview/dragdroprobot/dragdroprobot_rc2.py, + examples/graphicsview/dragdroprobot/dragdroprobot_rc3.py: + Updated the dragdroprobot.py example. + [8870ed27b984] + + * installers/BuildGPL.txt, installers/qsci-config.bat, installers + /qsci-pyqt5-config.bat: + More installer updates. + [2eaf68f6a2e8] + + * installers/BuildGPL.txt, installers/pyqt-check.py, installers/pyqt- + config.bat, installers/pyqt5-check.py, installers/pyqt5-config.bat, + installers/sip-config.bat, installers/sip-pyqt5-config.bat: + Updated the installer docs configuration scripts for PyQt5. + [6b2d127117e5] + + * build.py: + Fixed the previous change. + [f4c1ed30ad7d] + + * build.py: + Changed the format of the name of a snapshot to match other + packages. + [735211c341dd] + + * examples/graphicsview/diagramscene/diagramscene.py, + examples/graphicsview/diagramscene/diagramscene_rc.py, + examples/graphicsview/diagramscene/diagramscene_rc2.py, + examples/graphicsview/diagramscene/diagramscene_rc3.py: + Updated the diagramscene.py example. + [94f191b56126] + + * examples/graphicsview/collidingmice/collidingmice.py, + examples/graphicsview/collidingmice/mice_rc.py, + examples/graphicsview/collidingmice/mice_rc2.py, + examples/graphicsview/collidingmice/mice_rc3.py: + Updated the collidingmouse.py example. + [dcf139d2a4f2] + + * examples/graphicsview/anchorlayout.py: + Updated the anchorlayout.py example. + [951da62e51cd] + +2013-05-04 Phil Thompson + + * examples/effects/lighting.py: + Updated the lighting.py example. + [36e50731bdd0] + + * examples/draganddrop/puzzle/puzzle.py, + examples/draganddrop/puzzle/puzzle_rc.py, + examples/draganddrop/puzzle/puzzle_rc2.py, + examples/draganddrop/puzzle/puzzle_rc3.py: + Updated the puzzle.py example. + [2eb7204b878d] + + * examples/draganddrop/dropsite.py, + examples/draganddrop/fridgemagnets/fridgemagnets.py, + examples/draganddrop/fridgemagnets/fridgemagnets_rc.py, + examples/draganddrop/fridgemagnets/fridgemagnets_rc2.py, + examples/draganddrop/fridgemagnets/fridgemagnets_rc3.py: + Updated the fridgemagnets.py example. + [45b96eb4dfe5] + + * examples/draganddrop/draggabletext/draggabletext.py, + examples/draganddrop/draggabletext/draggabletext_rc.py, + examples/draganddrop/draggabletext/draggabletext_rc2.py, + examples/draganddrop/draggabletext/draggabletext_rc3.py: + Updated the draggabletext.py example. + [4e560c89eb82] + + * examples/draganddrop/draggableicons/draggableicons.py, + examples/draganddrop/draggableicons/draggableicons_rc.py, + examples/draganddrop/draggableicons/draggableicons_rc2.py, + examples/draganddrop/draggableicons/draggableicons_rc3.py: + Updated the draggableicons.py example. + [9483b75a05c6] + + * examples/draganddrop/delayedencoding/delayedencoding.py, + examples/draganddrop/delayedencoding/delayedencoding_rc.py, + examples/draganddrop/delayedencoding/delayedencoding_rc2.py, + examples/draganddrop/delayedencoding/delayedencoding_rc3.py: + Updated the delayedencoding.py example. + [b588fe1a4afd] + + * examples/dialogs/trivialwizard.py: + Updated the trivialwizard.py example. + [5a07f1e46607] + + * examples/dialogs/tabdialog.py: + Updated the tabdialog.py example. + [833ac17ac8fa] + + * examples/dialogs/standarddialogs.py: + Updated the standarddialogs.py example. + [05f085d04ad0] + + * examples/dialogs/findfiles.py: + Updated the findfiles.py example. + [6ef07cd09834] + + * examples/dialogs/extension.py: + Updated the extension.py example. + [76898b56b744] + + * examples/dialogs/configdialog/configdialog.py, + examples/dialogs/configdialog/configdialog_rc.py, + examples/dialogs/configdialog/configdialog_rc2.py, + examples/dialogs/configdialog/configdialog_rc3.py: + Updated the configdialog.py example. + [90003346d304] + + * examples/dialogs/classwizard/classwizard.py, + examples/dialogs/classwizard/classwizard_rc.py, + examples/dialogs/classwizard/classwizard_rc2.py, + examples/dialogs/classwizard/classwizard_rc3.py: + Updated the classwizard.py example. + [b4f1babe9513] + + * examples/desktop/systray/images/bad.png, + examples/desktop/systray/images/bad.svg, + examples/desktop/systray/images/heart.png, + examples/desktop/systray/images/heart.svg, + examples/desktop/systray/images/trash.png, + examples/desktop/systray/images/trash.svg, + examples/desktop/systray/systray.py, + examples/desktop/systray/systray.qrc, + examples/desktop/systray/systray_rc.py, + examples/desktop/systray/systray_rc2.py, + examples/desktop/systray/systray_rc3.py: + Updated the systray.py example. + [63266a59e774] + + * Qt5-TODO.txt, examples/desktop/screenshot.py: + Updated the screenshot.py example. + [f0d706faeaf8] + + * designer/pluginloader.cpp, designer/pluginloader.h, designer/python + .pro-in, installers/PyQt5-Qt5-gpl.nsi: + Updated the Qt Designer Python plugin for PyQt5. + [13fc7007e2e1] + + * examples/designer/plugins/plugins.py, + examples/designer/plugins/python/analogclockplugin.py, + examples/designer/plugins/python/bubbleswidgetplugin.py, + examples/designer/plugins/python/counterlabelplugin.py, + examples/designer/plugins/python/datetimeeditplugin.py, + examples/designer/plugins/python/helloglwidgetplugin.py, + examples/designer/plugins/python/highlightedtexteditplugin.py, + examples/designer/plugins/python/multipagewidgetplugin.py, + examples/designer/plugins/python/polygonwidgetplugin.py, + examples/designer/plugins/python/pydemoplugin.py, + examples/designer/plugins/python/pythonconsoleplugin.py, + examples/designer/plugins/widgets/analogclock.py, + examples/designer/plugins/widgets/bubbleswidget.py, + examples/designer/plugins/widgets/counterlabel.py, + examples/designer/plugins/widgets/datetimeedit.py, + examples/designer/plugins/widgets/helloglwidget.py, + examples/designer/plugins/widgets/highlightedtextedit.py, + examples/designer/plugins/widgets/multipagewidget.py, + examples/designer/plugins/widgets/polygonwidget.py, + examples/designer/plugins/widgets/pydemo.py, + examples/designer/plugins/widgets/pythonconsolewidget.py: + Updated the plugins.py example. + [0621efd149fc] + + * examples/designer/calculatorform/calculatorform.py, + examples/designer/calculatorform/ui_calculatorform.py: + Updated the calculatorform.py example. + [950978fbdba4] + + * examples/declarative/modelviews/objectlistmodel/objectlistmodel.py, + e + xamples/declarative/modelviews/objectlistmodel/objectlistmodel_rc.py + , examples/declarative/modelviews/objectlistmodel/objectlistmodel_rc + 2.py, examples/declarative/modelviews/objectlistmodel/objectlistmode + l_rc3.py: + Updated the objectlistmodel.py example. + [ea57e6a3e242] + +2013-05-03 Phil Thompson + + * examples/dbus/remotecontrolledcar/car/car.py, + examples/dbus/remotecontrolledcar/controller/controller.py, + examples/dbus/remotecontrolledcar/controller/ui_controller.py: + Updated the remotecontrolledcar example. + [808da6e6f117] + + * examples/dbus/pingpong/ping.py, examples/dbus/pingpong/pong.py: + Updated the pingpong example. + [12131d11ac01] + + * examples/dbus/listnames.py: + Updated the listname.py example. + [e64adc3c51d6] + + * examples/dbus/chat/chat.py, examples/dbus/chat/chatmainwindow.ui, + examples/dbus/chat/ui_chatmainwindow.py, + examples/dbus/chat/ui_chatsetnickname.py: + Updated the chat.py example. + [fd1e12a91493] + + * installers/BuildGPL.txt: + Updated the installer notes regarding Qt 5.0.2 installation bugs. + [f686f54765aa] + + * pyuic/uic/properties.py: + Fix to the previous fix which was PyQt4 specific. + [0b7f4feca737] + +2013-05-02 Phil Thompson + + * pyuic/uic/properties.py: + Backed out a pyuic5 change so that .ui files created by Qt Designer + prior to v4.3 can still be handled. + [e79c0c532f3e] + + * Qt5-TODO.txt, examples/animation/stickman/stickman.py, + examples/animation/stickman/stickman_rc.py, + examples/animation/stickman/stickman_rc2.py, + examples/animation/stickman/stickman_rc3.py: + Updated the stickman.py example. + [3976f1aa9e2f] + + * examples/animation/states/states.py, + examples/animation/states/states_rc.py, + examples/animation/states/states_rc2.py, + examples/animation/states/states_rc3.py: + Updated the states.py example. + [ec420e524416] + + * examples/animation/moveblocks.py: + Updated the moveblocks.py example. + [dae4e83bc570] + + * examples/animation/animatedtiles/animatedtiles.py, + examples/animation/appchooser/appchooser.py, + examples/animation/easing/easing.py, + examples/animation/easing/easing_rc.py, + examples/animation/easing/easing_rc2.py, + examples/animation/easing/easing_rc3.py, + examples/animation/easing/form.ui, + examples/animation/easing/ui_form.py: + Updated the easing.py example. + [3ed6c3313bfa] + + * examples/animation/appchooser/appchooser.py, + examples/animation/appchooser/appchooser_rc.py, + examples/animation/appchooser/appchooser_rc2.py, + examples/animation/appchooser/appchooser_rc3.py: + Updated the appchooser.py example. + [39bfe5aa8be1] + + * examples/activeqt/webbrowser/webbrowser.py, + examples/animation/animatedtiles/animatedtiles.py, + examples/animation/animatedtiles/animatedtiles_rc.py, + examples/animation/animatedtiles/animatedtiles_rc2.py, + examples/animation/animatedtiles/animatedtiles_rc3.py: + Updated the animatedtiles.py example. + [59c8a26a0b41] + + * Qt5-TODO.txt, examples/activeqt/webbrowser/mainwindow_rc.py, + examples/activeqt/webbrowser/mainwindow_rc2.py, + examples/activeqt/webbrowser/mainwindow_rc3.py, + examples/activeqt/webbrowser/ui_mainwindow.py, + examples/activeqt/webbrowser/webbrowser.py: + Updated the activeqt examples. + [9578fffd0970] + + * Makefile, Qt5-TODO.txt, lib/configure.py, + pyuic/uic/Compiler/compiler.py, pyuic/uic/Compiler/misc.py, + pyuic/uic/Compiler/proxy_metaclass.py, + pyuic/uic/Compiler/qobjectcreator.py, + pyuic/uic/Compiler/qtproxies.py, pyuic/uic/Loader/loader.py, + pyuic/uic/__init__.py, pyuic/uic/driver.py, pyuic/uic/exceptions.py, + pyuic/uic/icon_cache.py, pyuic/uic/objcreator.py, + pyuic/uic/port_v2/invoke.py, pyuic/uic/port_v2/load_plugin.py, + pyuic/uic/port_v2/proxy_base.py, pyuic/uic/port_v3/invoke.py, + pyuic/uic/port_v3/load_plugin.py, pyuic/uic/port_v3/proxy_base.py, + pyuic/uic/properties.py, pyuic/uic/pyuic.py, pyuic/uic/uiparser.py: + pyuic5 now uses relative imports throughout. + [4a1fcf0692c1] + + * Qt5-TODO.txt, pyuic/uic/Compiler/qtproxies.py, + pyuic/uic/uiparser.py: + pyuic5 now uses new-style signal connections. + [e46cc7cf20da] + + * pyuic/uic/Compiler/qtproxies.py, pyuic/uic/widget- + plugins/qtprintsupport.py: + Moved the pyuic support for QtPrintSupport classes to a separate + plugin. + [8c7f068d41fc] + +2013-05-01 Phil Thompson + + * Makefile, Qt5-TODO.txt, pyuic/uic/Compiler/compiler.py, + pyuic/uic/Compiler/qobjectcreator.py, + pyuic/uic/Compiler/qtproxies.py, pyuic/uic/Loader/loader.py, + pyuic/uic/Loader/qobjectcreator.py, pyuic/uic/__init__.py, + pyuic/uic/driver.py, pyuic/uic/objcreator.py, + pyuic/uic/port_v2/as_string.py, pyuic/uic/port_v3/as_string.py, + pyuic/uic/properties.py, pyuic/uic/pyuic.py, pyuic/uic/uiparser.py, + pyuic/uic/widget-plugins/phonon.py, pyuic/uic/widget- + plugins/qtwebkit.py: + Updated pyuic for PyQt5. + [f2a13577dc76] + + * PyQt5.msp, qpy/QtCore/qpycore_init.cpp, qpy/QtCore/qpycore_misc.cpp, + qpy/QtCore/qpycore_post_init.cpp.in, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.cpp, + qpy/QtCore/qpycore_pyqtproperty.cpp, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_types.cpp, + qpy/QtDeclarative/qpydeclarative_post_init.cpp, + qpy/QtDeclarative/qpydeclarativelistproperty.cpp: + Updated type objects to refer to PyQt5. Removed remaining references + to PyQt4 in strings. + [ae097f4e7c86] + + * installers/PyQt5-Qt5-gpl.nsi: + Updated the Windows installer. + [4b2182d32457] + + * Makefile, Qt5-TODO.txt, qpy/QtCore/qpycore_post_init.cpp.in: + Call sipSetDestroyOnExit(0) on initialisation. + [6e6dc5602337] + + * Makefile, PyQt5.msp, Qt5-TODO.txt: + Removed the implementation of QSet (as it was there + for QtMobility). QSet implementations now always use Python set + objects. + [ed773507d3a4] + + * PyQt5.msp, Qt5-TODO.txt: + Updated the docstrings to reflect the updated API version support. + [d56eb3f2e743] + + * PyQt5.msp, Qt5-TODO.txt, pyrcc/main.cpp, pyrcc/rcc.cpp, pyrcc/rcc.h, + qpy/QtCore/qpycore_chimera.cpp, qpy/QtCore/qpynullvariant.sip: + Stripped out the support for the various v1 APIs. + [fc729edff1c6] + +2013-04-30 Phil Thompson + + * PyQt5.msp, Qt5-TODO.txt: + Updated the remaining %ConvertToSubClassCode. + [122e8bd052e2] + + * PyQt5.msp: + Updated the %ConvertToSubClassCode for all QObject derived classes. + [95ab26300286] + + * PyQt5.msp, Qt5-TODO.txt, lib/SubclassCode/QtGui.versions, + lib/SubclassCode/QtGuiQt4.versions, + lib/SubclassCode/QtNetwork.versions, + lib/SubclassCode/QtPrintSupport.versions, lib/configure.py: + Updated the supported features and made sure the remaining ones are + applied where needed. + [bf764c6fabc2] + +2013-04-29 Phil Thompson + + * PyQt5.msp, Qt5-TODO.txt: + Added a missing /Transfer/ from + QStandardItemModel.invisibleRootItem(). + [d1df8f38fcfb] + + * PyQt5.msp, Qt5-TODO.txt: + Removed all code specific to Python earlier than v2.6. + [911d7106cb25] + + * PyQt5.msp, Qt5-TODO.txt, designer/python.pro-in, lib/configure.py, + qpy/QtDesigner/qpydesigner.pro: + Completed the project restructure. Added the new modules to the + build system. + [f17ee2a44642] + + * PyQt5.msp, lib/configure.py: + Removed the phonon and QtAssistant modules. Added the + QtPrintSupport, QtWebKitWidgets and QtWidgets modules. Reassigned + the header files to the new modules. Removed (unimplemented) support + for static plugins. + [a5cd5130a3ef] + + * PyQt5.msp, Qt5-TODO.txt: + Removed all the unused header files. + [9c872bd80a39] + +2013-04-28 Phil Thompson + + * PyQt5.msp, QAxContainer/qaxobject.sip, QAxContainer/qaxwidget.sip, + Qt5-TODO.txt, qpy/QtDBus/qpydbuspendingreply.sip, + qpy/QtDBus/qpydbusreply.sip: + Stripped out all remaining Qt4 specific code and API items. + [4001b637e5e3] + + * PyQt5.msp: + qabstractnativeeventfilter.h doesn't need parsing. + [f3fca0f11bf5] + +2013-04-27 Phil Thompson + + * PyQt5.msp: + Added the historical Qt_4_1_0 version tag. + [84436fb6ca22] + +2013-04-25 Phil Thompson + + * installers/PyQt5-Qt5-gpl.nsi: + Updated the installer to include the qminimal.dll platform plugin. + [553a88d5d8dd] + + * Qt5-TODO.txt, qpy/QtCore/qpycore.pro, qpy/QtCore/qpycore_api.h, + qpy/QtCore/qpycore_chimera.cpp, qpy/QtCore/qpycore_chimera.h, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.cpp, + qpy/QtCore/qpycore_pyqtproperty.cpp, + qpy/QtCore/qpycore_pyqtproxy.cpp, qpy/QtCore/qpycore_pyqtsignal.cpp, + qpy/QtCore/qpycore_pyqtslot.cpp, + qpy/QtCore/qpycore_qabstracteventdispatcher.cpp, + qpy/QtCore/qpycore_qmetaobject_helpers.cpp, + qpy/QtCore/qpycore_qmetaobjectbuilder.h, + qpy/QtCore/qpycore_qobject_getattr.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_qstring.cpp, + qpy/QtCore/qpycore_qvariant_value.cpp, + qpy/QtCore/qpycore_sip_helpers.cpp, qpy/QtCore/qpycore_types.cpp, + qpy/QtCore/qpycore_types.h, + qpy/QtDeclarative/qpydeclarativelistproperty.cpp, + qpy/QtOpenGL/qpyopengl_api.h, + qpy/QtOpenGL/qpyopengl_attribute_array.cpp, + qpy/QtOpenGL/qpyopengl_uniform_value_array.cpp: + Removed all Qt4 and earlier than Python v2.6 specific code from the + qpy support libraries. + [834b61dd5472] + + * PyQt5.msp, lib/configure.py: + Removed support for Qt4 features deprecated in Qt5. The SIP + requirement is now for v4.14.7 to avoid a bug triggered by PyQt5. + [fdbfb94b63ec] + +2013-04-23 Phil Thompson + + * qpy/QtCore/qpycore_pyqtboundsignal.cpp: + Connections to partial slots of objects in a different thread are + now handled correctly. + [632d7398e654] + + * lib/configure.py: + Directories are now ignored when searching for qmake and sip. + [9329bbaaeb65] + + * lib/configure.py: + Checking for modules is now tolerant of qmake failing to create a + makefile which can happen with an unsupported Qt5 module. + [9e54734d1e24] + +2013-04-22 Phil Thompson + + * Makefile, Qt5-TODO.txt, build.py: + Source packages are no longer platform specific. + [2ab4a5ae1714] + + * build.py: + Fix the initial version number. + [4a88db09cdc1] + + * Makefile, build.py: + Fixes to build.py so that a source package gets created. + [ec8a0d7d131a] + + * .hgignore, Makefile, NEWS, PyQt5.msp, + QAxContainer/QAxContainermod.sip, QAxContainer/qaxbase.sip, + QAxContainer/qaxobject.sip, QAxContainer/qaxwidget.sip, + Qt5-TODO.txt, build.py, configurations/rpi_py3.cfg, + contrib/lang/Makefile, contrib/lang/lang.py, contrib/lang/lang.qrc, + contrib/lang/lang/cs_cs.qm, contrib/lang/lang/cs_cs.ts, + contrib/lang/lang/da_da.qm, contrib/lang/lang/da_da.ts, + contrib/lang/lang/de_ch.qm, contrib/lang/lang/de_ch.ts, + contrib/lang/lang/de_de.qm, contrib/lang/lang/de_de.ts, + contrib/lang/lang/en_gb.qm, contrib/lang/lang/en_gb.ts, + contrib/lang/lang/en_us.qm, contrib/lang/lang/en_us.ts, + contrib/lang/lang/es_es.qm, contrib/lang/lang/es_es.ts, + contrib/lang/lang/et_et.qm, contrib/lang/lang/et_et.ts, + contrib/lang/lang/fi_fi.qm, contrib/lang/lang/fi_fi.ts, + contrib/lang/lang/fr_ca.qm, contrib/lang/lang/fr_ca.ts, + contrib/lang/lang/fr_fr.qm, contrib/lang/lang/fr_fr.ts, + contrib/lang/lang/hu_hu.qm, contrib/lang/lang/hu_hu.ts, + contrib/lang/lang/it_it.qm, contrib/lang/lang/it_it.ts, + contrib/lang/lang/nl_nl.qm, contrib/lang/lang/nl_nl.ts, + contrib/lang/lang/no_no.qm, contrib/lang/lang/no_no.ts, + contrib/lang/lang/pl_pl.qm, contrib/lang/lang/pl_pl.ts, + contrib/lang/lang/pt_pt.qm, contrib/lang/lang/pt_pt.ts, + contrib/lang/lang/sv_sv.qm, contrib/lang/lang/sv_sv.ts, + contrib/lang/lang/tr_tr.qm, contrib/lang/lang/tr_tr.ts, + contrib/lang/mainwindow.ui, contrib/pymodeltest/LICENSE.GPL, + contrib/pymodeltest/README, contrib/pymodeltest/modeltest.py, + contrib/sandbox/README, contrib/sandbox/sandbox.pyw, dbus/dbus.cpp, + dbus/dbus.sbf, dbus/helper.h, designer/pluginloader.cpp, + designer/pluginloader.h, designer/python.pro-in, examples/README, + examples/activeqt/README, + examples/activeqt/webbrowser/icons/image0.xpm, + examples/activeqt/webbrowser/icons/image1.xpm, + examples/activeqt/webbrowser/icons/image2.xpm, + examples/activeqt/webbrowser/icons/image3.xpm, + examples/activeqt/webbrowser/icons/image4.xpm, + examples/activeqt/webbrowser/icons/image5.xpm, + examples/activeqt/webbrowser/icons/image6.xpm, + examples/activeqt/webbrowser/mainwindow.qrc, + examples/activeqt/webbrowser/mainwindow.ui, + examples/activeqt/webbrowser/mainwindow_rc2.py, + examples/activeqt/webbrowser/mainwindow_rc3.py, + examples/activeqt/webbrowser/ui_mainwindow.py, + examples/activeqt/webbrowser/webbrowser.py, + examples/animation/README, + examples/animation/animatedtiles/animatedtiles.py, + examples/animation/animatedtiles/animatedtiles.qrc, + examples/animation/animatedtiles/animatedtiles_rc2.py, + examples/animation/animatedtiles/animatedtiles_rc3.py, + examples/animation/animatedtiles/images/Time-For-Lunch-2.jpg, + examples/animation/animatedtiles/images/centered.png, + examples/animation/animatedtiles/images/ellipse.png, + examples/animation/animatedtiles/images/figure8.png, + examples/animation/animatedtiles/images/kinetic.png, + examples/animation/animatedtiles/images/random.png, + examples/animation/animatedtiles/images/tile.png, + examples/animation/appchooser/accessories-dictionary.png, + examples/animation/appchooser/akregator.png, + examples/animation/appchooser/appchooser.py, + examples/animation/appchooser/appchooser.qrc, + examples/animation/appchooser/appchooser_rc2.py, + examples/animation/appchooser/appchooser_rc3.py, + examples/animation/appchooser/digikam.png, + examples/animation/appchooser/k3b.png, + examples/animation/easing/easing.py, + examples/animation/easing/easing.qrc, + examples/animation/easing/easing_rc2.py, + examples/animation/easing/easing_rc3.py, + examples/animation/easing/form.ui, examples/animation/easing/images + /qt-logo.png, examples/animation/easing/ui_form.py, + examples/animation/moveblocks.py, examples/animation/states + /accessories-dictionary.png, + examples/animation/states/akregator.png, + examples/animation/states/digikam.png, examples/animation/states + /help-browser.png, examples/animation/states/k3b.png, + examples/animation/states/kchart.png, + examples/animation/states/states.py, + examples/animation/states/states.qrc, + examples/animation/states/states_rc2.py, + examples/animation/states/states_rc3.py, + examples/animation/stickman/animations/chilling, + examples/animation/stickman/animations/dancing, + examples/animation/stickman/animations/dead, + examples/animation/stickman/animations/jumping, + examples/animation/stickman/stickman.py, + examples/animation/stickman/stickman.qrc, + examples/animation/stickman/stickman_rc2.py, + examples/animation/stickman/stickman_rc3.py, + examples/dbus/chat/chat.py, examples/dbus/chat/chatmainwindow.ui, + examples/dbus/chat/chatsetnickname.ui, + examples/dbus/chat/ui_chatmainwindow.py, + examples/dbus/chat/ui_chatsetnickname.py, + examples/dbus/listnames.py, examples/dbus/pingpong/ping.py, + examples/dbus/pingpong/pong.py, + examples/dbus/remotecontrolledcar/car/car.py, + examples/dbus/remotecontrolledcar/controller/controller.py, + examples/dbus/remotecontrolledcar/controller/controller.ui, + examples/dbus/remotecontrolledcar/controller/ui_controller.py, + examples/declarative/modelviews/objectlistmodel/objectlistmodel.py, + examples/declarative/modelviews/objectlistmodel/objectlistmodel.qrc, + examples/declarative/modelviews/objectlistmodel/objectlistmodel_rc2. + py, examples/declarative/modelviews/objectlistmodel/objectlistmodel_ + rc3.py, examples/declarative/modelviews/objectlistmodel/view.qml, + examples/declarative/toys/README, + examples/declarative/toys/clocks/clocks.qml, + examples/declarative/toys/clocks/content/Clock.qml, + examples/declarative/toys/clocks/content/QuitButton.qml, + examples/declarative/toys/clocks/content/background.png, + examples/declarative/toys/clocks/content/center.png, + examples/declarative/toys/clocks/content/clock-night.png, + examples/declarative/toys/clocks/content/clock.png, + examples/declarative/toys/clocks/content/hour.png, + examples/declarative/toys/clocks/content/minute.png, + examples/declarative/toys/clocks/content/quit.png, + examples/declarative/toys/clocks/content/second.png, + examples/declarative/toys/corkboards/Day.qml, + examples/declarative/toys/corkboards/cork.jpg, + examples/declarative/toys/corkboards/corkboards.qml, + examples/declarative/toys/corkboards/note-yellow.png, + examples/declarative/toys/corkboards/tack.png, + examples/declarative/toys/dynamicscene/Button.qml, + examples/declarative/toys/dynamicscene/GenericSceneItem.qml, + examples/declarative/toys/dynamicscene/PaletteItem.qml, + examples/declarative/toys/dynamicscene/PerspectiveItem.qml, + examples/declarative/toys/dynamicscene/Sun.qml, + examples/declarative/toys/dynamicscene/dynamicscene.qml, + examples/declarative/toys/dynamicscene/images/face-smile.png, + examples/declarative/toys/dynamicscene/images/moon.png, + examples/declarative/toys/dynamicscene/images/rabbit_brown.png, + examples/declarative/toys/dynamicscene/images/rabbit_bw.png, + examples/declarative/toys/dynamicscene/images/star.png, + examples/declarative/toys/dynamicscene/images/sun.png, + examples/declarative/toys/dynamicscene/images/tree_s.png, + examples/declarative/toys/dynamicscene/itemCreation.js, + examples/declarative/toys/tic-tac-toe/content/Button.qml, + examples/declarative/toys/tic-tac-toe/content/TicTac.qml, + examples/declarative/toys/tic-tac-toe/content/pics/board.png, + examples/declarative/toys/tic-tac-toe/content/pics/o.png, + examples/declarative/toys/tic-tac-toe/content/pics/x.png, + examples/declarative/toys/tic-tac-toe/content/tic-tac-toe.js, + examples/declarative/toys/tic-tac-toe/tic-tac-toe.qml, + examples/declarative/toys/tvtennis/tvtennis.qml, + examples/declarative/ui-components/README, examples/declarative/ui- + components/dialcontrol/content/Dial.qml, examples/declarative/ui- + components/dialcontrol/content/QuitButton.qml, examples/declarative + /ui-components/dialcontrol/content/background.png, + examples/declarative/ui-components/dialcontrol/content/needle.png, + examples/declarative/ui- + components/dialcontrol/content/needle_shadow.png, + examples/declarative/ui-components/dialcontrol/content/overlay.png, + examples/declarative/ui-components/dialcontrol/content/quit.png, + examples/declarative/ui-components/dialcontrol/dialcontrol.qml, + examples/declarative/ui-components/flipable/content/5_heart.png, + examples/declarative/ui-components/flipable/content/9_club.png, + examples/declarative/ui-components/flipable/content/Card.qml, + examples/declarative/ui-components/flipable/content/back.png, + examples/declarative/ui-components/flipable/flipable.qml, + examples/declarative/ui- + components/progressbar/content/ProgressBar.qml, examples/declarative + /ui-components/progressbar/content/background.png, + examples/declarative/ui-components/progressbar/main.qml, + examples/declarative/ui-components/scrollbar/ScrollBar.qml, + examples/declarative/ui-components/scrollbar/main.qml, + examples/declarative/ui-components/scrollbar/niagara_falls.jpg, + examples/declarative/ui-components/searchbox/SearchBox.qml, + examples/declarative/ui-components/searchbox/images/clear.png, + examples/declarative/ui-components/searchbox/images/lineedit-bg- + focus.png, examples/declarative/ui-components/searchbox/images + /lineedit-bg.png, examples/declarative/ui- + components/searchbox/main.qml, examples/declarative/ui- + components/slideswitch/content/Switch.qml, examples/declarative/ui- + components/slideswitch/content/background.svg, examples/declarative + /ui-components/slideswitch/content/knob.svg, examples/declarative + /ui-components/slideswitch/slideswitch.qml, examples/declarative/ui- + components/spinner/content/Spinner.qml, examples/declarative/ui- + components/spinner/content/spinner-bg.png, examples/declarative/ui- + components/spinner/content/spinner-select.png, examples/declarative + /ui-components/spinner/main.qml, examples/declarative/ui- + components/tabwidget/TabWidget.qml, examples/declarative/ui- + components/tabwidget/main.qml, examples/declarative/ui- + components/tabwidget/tab.png, examples/demos/README, + examples/demos/declarative/minehunt/MinehuntCore/Explosion.qml, + examples/demos/declarative/minehunt/MinehuntCore/Tile.qml, + examples/demos/declarative/minehunt/MinehuntCore/pics/No-Ones- + Laughing-3.jpg, + examples/demos/declarative/minehunt/MinehuntCore/pics/back.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/bomb- + color.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/bomb.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/face-sad.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/face-smile- + big.png, examples/demos/declarative/minehunt/MinehuntCore/pics/face- + smile.png, examples/demos/declarative/minehunt/MinehuntCore/pics + /flag-color.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/flag.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/front.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/quit.png, + examples/demos/declarative/minehunt/MinehuntCore/pics/star.png, + examples/demos/declarative/minehunt/MinehuntCore/qmldir, + examples/demos/declarative/minehunt/minehunt.py, + examples/demos/declarative/minehunt/minehunt.qml, + examples/demos/declarative/samegame/SamegameCore/BoomBlock.qml, + examples/demos/declarative/samegame/SamegameCore/Button.qml, + examples/demos/declarative/samegame/SamegameCore/Dialog.qml, example + s/demos/declarative/samegame/SamegameCore/pics/background.png, + examples/demos/declarative/samegame/SamegameCore/pics/blueStar.png, + examples/demos/declarative/samegame/SamegameCore/pics/blueStone.png, + examples/demos/declarative/samegame/SamegameCore/pics/greenStar.png, + examples/demos/declarative/samegame/SamegameCore/pics/greenStone.png + , examples/demos/declarative/samegame/SamegameCore/pics/redStar.png, + examples/demos/declarative/samegame/SamegameCore/pics/redStone.png, + examples/demos/declarative/samegame/SamegameCore/pics/star.png, exam + ples/demos/declarative/samegame/SamegameCore/pics/yellowStone.png, + examples/demos/declarative/samegame/SamegameCore/qmldir, + examples/demos/declarative/samegame/SamegameCore/samegame.js, + examples/demos/declarative/samegame/highscores/README, + examples/demos/declarative/samegame/highscores/score_data.xml, + examples/demos/declarative/samegame/highscores/score_style.xsl, + examples/demos/declarative/samegame/highscores/scores.php, + examples/demos/declarative/samegame/samegame.qml, + examples/demos/embedded/lightmaps.py, examples/demos/embeddeddialogs + /No-Ones-Laughing-3.jpg, + examples/demos/embeddeddialogs/embeddeddialog.py, + examples/demos/embeddeddialogs/embeddeddialog.ui, + examples/demos/embeddeddialogs/embeddeddialogs.py, + examples/demos/embeddeddialogs/embeddeddialogs.qrc, + examples/demos/embeddeddialogs/embeddeddialogs_rc2.py, + examples/demos/embeddeddialogs/embeddeddialogs_rc3.py, + examples/demos/qtdemo/colors.py, examples/demos/qtdemo/demoitem.py, + examples/demos/qtdemo/demoitemanimation.py, + examples/demos/qtdemo/demoscene.py, + examples/demos/qtdemo/demotextitem.py, + examples/demos/qtdemo/dockitem.py, + examples/demos/qtdemo/examplecontent.py, + examples/demos/qtdemo/guide.py, + examples/demos/qtdemo/guidecircle.py, + examples/demos/qtdemo/guideline.py, + examples/demos/qtdemo/headingitem.py, + examples/demos/qtdemo/imageitem.py, + examples/demos/qtdemo/images/demobg.png, + examples/demos/qtdemo/images/qtlogo_small.png, + examples/demos/qtdemo/images/trolltech-logo.png, + examples/demos/qtdemo/itemcircleanimation.py, + examples/demos/qtdemo/letteritem.py, + examples/demos/qtdemo/mainwindow.py, + examples/demos/qtdemo/menucontent.py, + examples/demos/qtdemo/menumanager.py, + examples/demos/qtdemo/qmlShell.qml, examples/demos/qtdemo/qtdemo.py, + examples/demos/qtdemo/qtdemo.qrc, + examples/demos/qtdemo/qtdemo_rc2.py, + examples/demos/qtdemo/qtdemo_rc3.py, + examples/demos/qtdemo/scanitem.py, examples/demos/qtdemo/score.py, + examples/demos/qtdemo/textbutton.py, + examples/demos/qtdemo/xml/examples.xml, + examples/demos/spreadsheet/images/interview.png, + examples/demos/spreadsheet/printview.py, + examples/demos/spreadsheet/spreadsheet.py, + examples/demos/spreadsheet/spreadsheet.qrc, + examples/demos/spreadsheet/spreadsheet_rc2.py, + examples/demos/spreadsheet/spreadsheet_rc3.py, + examples/demos/spreadsheet/spreadsheetdelegate.py, + examples/demos/spreadsheet/spreadsheetitem.py, + examples/demos/spreadsheet/util.py, + examples/demos/textedit/example.html, + examples/demos/textedit/images/logo.png, + examples/demos/textedit/images/logo32.png, + examples/demos/textedit/images/mac/editcopy.png, + examples/demos/textedit/images/mac/editcut.png, + examples/demos/textedit/images/mac/editpaste.png, + examples/demos/textedit/images/mac/editredo.png, + examples/demos/textedit/images/mac/editundo.png, + examples/demos/textedit/images/mac/exportpdf.png, + examples/demos/textedit/images/mac/filenew.png, + examples/demos/textedit/images/mac/fileopen.png, + examples/demos/textedit/images/mac/fileprint.png, + examples/demos/textedit/images/mac/filesave.png, + examples/demos/textedit/images/mac/textbold.png, + examples/demos/textedit/images/mac/textcenter.png, + examples/demos/textedit/images/mac/textitalic.png, + examples/demos/textedit/images/mac/textjustify.png, + examples/demos/textedit/images/mac/textleft.png, + examples/demos/textedit/images/mac/textright.png, + examples/demos/textedit/images/mac/textunder.png, + examples/demos/textedit/images/mac/zoomin.png, + examples/demos/textedit/images/mac/zoomout.png, + examples/demos/textedit/images/win/editcopy.png, + examples/demos/textedit/images/win/editcut.png, + examples/demos/textedit/images/win/editpaste.png, + examples/demos/textedit/images/win/editredo.png, + examples/demos/textedit/images/win/editundo.png, + examples/demos/textedit/images/win/exportpdf.png, + examples/demos/textedit/images/win/filenew.png, + examples/demos/textedit/images/win/fileopen.png, + examples/demos/textedit/images/win/fileprint.png, + examples/demos/textedit/images/win/filesave.png, + examples/demos/textedit/images/win/textbold.png, + examples/demos/textedit/images/win/textcenter.png, + examples/demos/textedit/images/win/textitalic.png, + examples/demos/textedit/images/win/textjustify.png, + examples/demos/textedit/images/win/textleft.png, + examples/demos/textedit/images/win/textright.png, + examples/demos/textedit/images/win/textunder.png, + examples/demos/textedit/images/win/zoomin.png, + examples/demos/textedit/images/win/zoomout.png, + examples/demos/textedit/textedit.py, + examples/demos/textedit/textedit.qrc, + examples/demos/textedit/textedit_rc2.py, + examples/demos/textedit/textedit_rc3.py, examples/designer/README, + examples/designer/calculatorform/calculatorform.py, + examples/designer/calculatorform/calculatorform.ui, + examples/designer/calculatorform/ui_calculatorform.py, + examples/designer/plugins/plugins.py, + examples/designer/plugins/python/analogclockplugin.py, + examples/designer/plugins/python/bubbleswidgetplugin.py, + examples/designer/plugins/python/counterlabelplugin.py, + examples/designer/plugins/python/datetimeeditplugin.py, + examples/designer/plugins/python/helloglwidgetplugin.py, + examples/designer/plugins/python/highlightedtexteditplugin.py, + examples/designer/plugins/python/multipagewidgetplugin.py, + examples/designer/plugins/python/polygonwidgetplugin.py, + examples/designer/plugins/python/pydemoplugin.py, + examples/designer/plugins/python/pythonconsoleplugin.py, + examples/designer/plugins/widgets/analogclock.py, + examples/designer/plugins/widgets/bubbleswidget.py, + examples/designer/plugins/widgets/counterlabel.py, + examples/designer/plugins/widgets/datetimeedit.py, + examples/designer/plugins/widgets/helloglwidget.py, + examples/designer/plugins/widgets/highlightedtextedit.py, + examples/designer/plugins/widgets/multipagewidget.py, + examples/designer/plugins/widgets/polygonwidget.py, + examples/designer/plugins/widgets/pydemo.py, + examples/designer/plugins/widgets/pythonconsolewidget.py, + examples/desktop/README, examples/desktop/screenshot.py, + examples/desktop/systray/images/bad.svg, + examples/desktop/systray/images/heart.svg, + examples/desktop/systray/images/trash.svg, + examples/desktop/systray/systray.py, + examples/desktop/systray/systray.qrc, + examples/desktop/systray/systray_rc2.py, + examples/desktop/systray/systray_rc3.py, examples/dialogs/README, + examples/dialogs/classwizard/classwizard.py, + examples/dialogs/classwizard/classwizard.qrc, + examples/dialogs/classwizard/classwizard_rc2.py, + examples/dialogs/classwizard/classwizard_rc3.py, + examples/dialogs/classwizard/images/background.png, + examples/dialogs/classwizard/images/banner.png, + examples/dialogs/classwizard/images/logo1.png, + examples/dialogs/classwizard/images/logo2.png, + examples/dialogs/classwizard/images/logo3.png, + examples/dialogs/classwizard/images/watermark1.png, + examples/dialogs/classwizard/images/watermark2.png, + examples/dialogs/configdialog/configdialog.py, + examples/dialogs/configdialog/configdialog.qrc, + examples/dialogs/configdialog/configdialog_rc2.py, + examples/dialogs/configdialog/configdialog_rc3.py, + examples/dialogs/configdialog/images/config.png, + examples/dialogs/configdialog/images/query.png, + examples/dialogs/configdialog/images/update.png, + examples/dialogs/extension.py, examples/dialogs/findfiles.py, + examples/dialogs/standarddialogs.py, examples/dialogs/tabdialog.py, + examples/dialogs/trivialwizard.py, examples/draganddrop/README, + examples/draganddrop/delayedencoding/delayedencoding.py, + examples/draganddrop/delayedencoding/delayedencoding.qrc, + examples/draganddrop/delayedencoding/delayedencoding_rc2.py, + examples/draganddrop/delayedencoding/delayedencoding_rc3.py, + examples/draganddrop/delayedencoding/images/drag.png, + examples/draganddrop/delayedencoding/images/example.svg, + examples/draganddrop/draggableicons/draggableicons.py, + examples/draganddrop/draggableicons/draggableicons.qrc, + examples/draganddrop/draggableicons/draggableicons_rc2.py, + examples/draganddrop/draggableicons/draggableicons_rc3.py, + examples/draganddrop/draggableicons/images/boat.png, + examples/draganddrop/draggableicons/images/car.png, + examples/draganddrop/draggableicons/images/house.png, + examples/draganddrop/draggabletext/draggabletext.py, + examples/draganddrop/draggabletext/draggabletext.qrc, + examples/draganddrop/draggabletext/draggabletext_rc2.py, + examples/draganddrop/draggabletext/draggabletext_rc3.py, + examples/draganddrop/draggabletext/words.txt, + examples/draganddrop/dropsite.py, + examples/draganddrop/fridgemagnets/fridgemagnets.py, + examples/draganddrop/fridgemagnets/fridgemagnets.qrc, + examples/draganddrop/fridgemagnets/fridgemagnets_rc2.py, + examples/draganddrop/fridgemagnets/fridgemagnets_rc3.py, + examples/draganddrop/fridgemagnets/words.txt, + examples/draganddrop/puzzle/example.jpg, + examples/draganddrop/puzzle/puzzle.py, + examples/draganddrop/puzzle/puzzle.qrc, + examples/draganddrop/puzzle/puzzle_rc2.py, + examples/draganddrop/puzzle/puzzle_rc3.py, examples/effects/README, + examples/effects/lighting.py, examples/graphicsview/README, + examples/graphicsview/anchorlayout.py, + examples/graphicsview/collidingmice/collidingmice.py, + examples/graphicsview/collidingmice/images/cheese.jpg, + examples/graphicsview/collidingmice/mice.qrc, + examples/graphicsview/collidingmice/mice_rc2.py, + examples/graphicsview/collidingmice/mice_rc3.py, + examples/graphicsview/diagramscene/diagramscene.py, + examples/graphicsview/diagramscene/diagramscene.qrc, + examples/graphicsview/diagramscene/diagramscene_rc2.py, + examples/graphicsview/diagramscene/diagramscene_rc3.py, + examples/graphicsview/diagramscene/images/background1.png, + examples/graphicsview/diagramscene/images/background2.png, + examples/graphicsview/diagramscene/images/background3.png, + examples/graphicsview/diagramscene/images/background4.png, + examples/graphicsview/diagramscene/images/bold.png, + examples/graphicsview/diagramscene/images/bringtofront.png, + examples/graphicsview/diagramscene/images/delete.png, + examples/graphicsview/diagramscene/images/floodfill.png, + examples/graphicsview/diagramscene/images/italic.png, + examples/graphicsview/diagramscene/images/linecolor.png, + examples/graphicsview/diagramscene/images/linepointer.png, + examples/graphicsview/diagramscene/images/pointer.png, + examples/graphicsview/diagramscene/images/sendtoback.png, + examples/graphicsview/diagramscene/images/textpointer.png, + examples/graphicsview/diagramscene/images/underline.png, + examples/graphicsview/dragdroprobot/dragdroprobot.py, + examples/graphicsview/dragdroprobot/dragdroprobot.qrc, + examples/graphicsview/dragdroprobot/dragdroprobot_rc2.py, + examples/graphicsview/dragdroprobot/dragdroprobot_rc3.py, + examples/graphicsview/dragdroprobot/images/head.png, + examples/graphicsview/elasticnodes.py, + examples/graphicsview/padnavigator/backside.ui, + examples/graphicsview/padnavigator/images/artsfftscope.png, + examples/graphicsview/padnavigator/images/blue_angle_swirl.jpg, + examples/graphicsview/padnavigator/images/kontact_contacts.png, + examples/graphicsview/padnavigator/images/kontact_journal.png, + examples/graphicsview/padnavigator/images/kontact_mail.png, + examples/graphicsview/padnavigator/images/kontact_notes.png, + examples/graphicsview/padnavigator/images/kopeteavailable.png, + examples/graphicsview/padnavigator/images/metacontact_online.png, + examples/graphicsview/padnavigator/images/minitools.png, + examples/graphicsview/padnavigator/padnavigator.py, + examples/graphicsview/padnavigator/padnavigator.qrc, + examples/graphicsview/padnavigator/padnavigator_rc2.py, + examples/graphicsview/padnavigator/padnavigator_rc3.py, + examples/graphicsview/padnavigator/ui_backside.py, + examples/ipc/README, examples/ipc/localfortuneclient.py, + examples/ipc/localfortuneserver.py, + examples/ipc/sharedmemory/dialog.py, + examples/ipc/sharedmemory/dialog.ui, + examples/ipc/sharedmemory/image.png, + examples/ipc/sharedmemory/qt.png, + examples/ipc/sharedmemory/sharedmemory.py, + examples/itemviews/README, + examples/itemviews/basicsortfiltermodel.py, + examples/itemviews/chart/chart.py, + examples/itemviews/chart/chart.qrc, + examples/itemviews/chart/chart_rc2.py, + examples/itemviews/chart/chart_rc3.py, + examples/itemviews/chart/mydata.cht, + examples/itemviews/chart/qtdata.cht, + examples/itemviews/coloreditorfactory.py, + examples/itemviews/combowidgetmapper.py, + examples/itemviews/customsortfiltermodel.py, + examples/itemviews/dirview.py, + examples/itemviews/editabletreemodel/default.txt, + examples/itemviews/editabletreemodel/editabletreemodel.py, + examples/itemviews/editabletreemodel/editabletreemodel.qrc, + examples/itemviews/editabletreemodel/editabletreemodel_rc2.py, + examples/itemviews/editabletreemodel/editabletreemodel_rc3.py, + examples/itemviews/editabletreemodel/mainwindow.ui, + examples/itemviews/editabletreemodel/ui_mainwindow.py, + examples/itemviews/fetchmore.py, + examples/itemviews/pixelator/images/qt.png, + examples/itemviews/pixelator/pixelator.py, + examples/itemviews/pixelator/pixelator.qrc, + examples/itemviews/pixelator/pixelator_rc2.py, + examples/itemviews/pixelator/pixelator_rc3.py, + examples/itemviews/puzzle/example.jpg, + examples/itemviews/puzzle/puzzle.py, + examples/itemviews/puzzle/puzzle.qrc, + examples/itemviews/puzzle/puzzle_rc2.py, + examples/itemviews/puzzle/puzzle_rc3.py, + examples/itemviews/simpledommodel.py, + examples/itemviews/simpletreemodel/default.txt, + examples/itemviews/simpletreemodel/simpletreemodel.py, + examples/itemviews/simpletreemodel/simpletreemodel.qrc, + examples/itemviews/simpletreemodel/simpletreemodel_rc2.py, + examples/itemviews/simpletreemodel/simpletreemodel_rc3.py, + examples/itemviews/simplewidgetmapper.py, + examples/itemviews/spinboxdelegate.py, + examples/itemviews/stardelegate.py, examples/layouts/README, + examples/layouts/basiclayouts.py, examples/layouts/borderlayout.py, + examples/layouts/flowlayout.py, examples/mainwindows/README, + examples/mainwindows/application/application.py, + examples/mainwindows/application/application.qrc, + examples/mainwindows/application/application_rc2.py, + examples/mainwindows/application/application_rc3.py, + examples/mainwindows/application/images/copy.png, + examples/mainwindows/application/images/cut.png, + examples/mainwindows/application/images/new.png, + examples/mainwindows/application/images/open.png, + examples/mainwindows/application/images/paste.png, + examples/mainwindows/application/images/save.png, + examples/mainwindows/dockwidgets/dockwidgets.py, + examples/mainwindows/dockwidgets/dockwidgets.qrc, + examples/mainwindows/dockwidgets/dockwidgets_rc2.py, + examples/mainwindows/dockwidgets/dockwidgets_rc3.py, + examples/mainwindows/dockwidgets/images/new.png, + examples/mainwindows/dockwidgets/images/print.png, + examples/mainwindows/dockwidgets/images/save.png, + examples/mainwindows/dockwidgets/images/undo.png, + examples/mainwindows/mdi/images/copy.png, + examples/mainwindows/mdi/images/cut.png, + examples/mainwindows/mdi/images/new.png, + examples/mainwindows/mdi/images/open.png, + examples/mainwindows/mdi/images/paste.png, + examples/mainwindows/mdi/images/save.png, + examples/mainwindows/mdi/mdi.py, examples/mainwindows/mdi/mdi.qrc, + examples/mainwindows/mdi/mdi_rc2.py, + examples/mainwindows/mdi/mdi_rc3.py, examples/mainwindows/menus.py, + examples/mainwindows/recentfiles.py, + examples/mainwindows/sdi/images/copy.png, + examples/mainwindows/sdi/images/cut.png, + examples/mainwindows/sdi/images/new.png, + examples/mainwindows/sdi/images/open.png, + examples/mainwindows/sdi/images/paste.png, + examples/mainwindows/sdi/images/save.png, + examples/mainwindows/sdi/sdi.py, examples/mainwindows/sdi/sdi.qrc, + examples/mainwindows/sdi/sdi_rc2.py, + examples/mainwindows/sdi/sdi_rc3.py, + examples/mainwindows/separations.py, examples/network/README, + examples/network/blockingfortuneclient.py, + examples/network/broadcastreceiver.py, + examples/network/broadcastsender.py, + examples/network/fortuneclient.py, + examples/network/fortuneserver.py, examples/network/ftp/ftp.py, + examples/network/ftp/ftp.qrc, examples/network/ftp/ftp_rc2.py, + examples/network/ftp/ftp_rc3.py, + examples/network/ftp/images/cdtoparent.png, + examples/network/ftp/images/dir.png, + examples/network/ftp/images/file.png, + examples/network/http/authenticationdialog.ui, + examples/network/http/http.py, examples/network/loopback.py, + examples/network/threadedfortuneserver.py, + examples/opengl/2dpainting.py, examples/opengl/README, + examples/opengl/grabber.py, examples/opengl/hellogl.py, + examples/opengl/overpainting.py, examples/opengl/samplebuffers.py, + examples/opengl/textures/images/side1.png, + examples/opengl/textures/images/side2.png, + examples/opengl/textures/images/side3.png, + examples/opengl/textures/images/side4.png, + examples/opengl/textures/images/side5.png, + examples/opengl/textures/images/side6.png, + examples/opengl/textures/textures.py, + examples/opengl/textures/textures.qrc, + examples/opengl/textures/textures_rc2.py, + examples/opengl/textures/textures_rc3.py, examples/painting/README, + examples/painting/basicdrawing/basicdrawing.py, + examples/painting/basicdrawing/basicdrawing.qrc, + examples/painting/basicdrawing/basicdrawing_rc2.py, + examples/painting/basicdrawing/basicdrawing_rc3.py, + examples/painting/basicdrawing/images/brick.png, + examples/painting/basicdrawing/images/qt-logo.png, + examples/painting/concentriccircles.py, + examples/painting/painterpaths.py, + examples/painting/svgviewer/files/bubbles.svg, + examples/painting/svgviewer/files/cubic.svg, + examples/painting/svgviewer/files/spheres.svg, + examples/painting/svgviewer/svgviewer.py, + examples/painting/svgviewer/svgviewer.qrc, + examples/painting/svgviewer/svgviewer_rc2.py, + examples/painting/svgviewer/svgviewer_rc3.py, + examples/painting/transformations.py, examples/phonon/README, + examples/phonon/capabilities.py, examples/phonon/musicplayer.py, + examples/pyuic/compile-on-the-fly.py, examples/pyuic/demo.ui, + examples/pyuic/load_ui1.py, examples/pyuic/load_ui2.py, + examples/richtext/README, examples/richtext/calendar.py, + examples/richtext/orderform.py, + examples/richtext/syntaxhighlighter.py, + examples/richtext/textobject/files/heart.svg, + examples/richtext/textobject/textobject.py, examples/script/README, + examples/script/helloscript.py, examples/sql/README, + examples/sql/cachedtable.py, examples/sql/connection.py, + examples/sql/querymodel.py, examples/sql/relationaltablemodel.py, + examples/sql/tablemodel.py, examples/threads/README, + examples/threads/mandelbrot.py, examples/threads/semaphores.py, + examples/threads/waitconditions.py, examples/tools/README, + examples/tools/codecs/codecs.py, + examples/tools/codecs/encodedfiles/iso-8859-1.txt, + examples/tools/codecs/encodedfiles/iso-8859-15.txt, + examples/tools/codecs/encodedfiles/utf-16.txt, + examples/tools/codecs/encodedfiles/utf-16be.txt, + examples/tools/codecs/encodedfiles/utf-16le.txt, + examples/tools/codecs/encodedfiles/utf-8.txt, + examples/tools/customcompleter/customcompleter.py, + examples/tools/customcompleter/customcompleter.qrc, + examples/tools/customcompleter/customcompleter_rc2.py, + examples/tools/customcompleter/customcompleter_rc3.py, + examples/tools/customcompleter/resources/wordlist.txt, + examples/tools/i18n/i18n.py, examples/tools/i18n/i18n.qrc, + examples/tools/i18n/i18n_rc2.py, examples/tools/i18n/i18n_rc3.py, + examples/tools/i18n/translations/i18n_ar.qm, + examples/tools/i18n/translations/i18n_ar.ts, + examples/tools/i18n/translations/i18n_cs.qm, + examples/tools/i18n/translations/i18n_cs.ts, + examples/tools/i18n/translations/i18n_de.qm, + examples/tools/i18n/translations/i18n_de.ts, + examples/tools/i18n/translations/i18n_el.qm, + examples/tools/i18n/translations/i18n_el.ts, + examples/tools/i18n/translations/i18n_en.qm, + examples/tools/i18n/translations/i18n_en.ts, + examples/tools/i18n/translations/i18n_eo.qm, + examples/tools/i18n/translations/i18n_eo.ts, + examples/tools/i18n/translations/i18n_fr.qm, + examples/tools/i18n/translations/i18n_fr.ts, + examples/tools/i18n/translations/i18n_it.qm, + examples/tools/i18n/translations/i18n_it.ts, + examples/tools/i18n/translations/i18n_jp.qm, + examples/tools/i18n/translations/i18n_jp.ts, + examples/tools/i18n/translations/i18n_ko.qm, + examples/tools/i18n/translations/i18n_ko.ts, + examples/tools/i18n/translations/i18n_no.qm, + examples/tools/i18n/translations/i18n_no.ts, + examples/tools/i18n/translations/i18n_pt.qm, + examples/tools/i18n/translations/i18n_pt.ts, + examples/tools/i18n/translations/i18n_ru.qm, + examples/tools/i18n/translations/i18n_ru.ts, + examples/tools/i18n/translations/i18n_sv.qm, + examples/tools/i18n/translations/i18n_sv.ts, + examples/tools/i18n/translations/i18n_zh.qm, + examples/tools/i18n/translations/i18n_zh.ts, + examples/tools/regexp.py, + examples/tools/settingseditor/inifiles/licensepage.ini, + examples/tools/settingseditor/inifiles/qsa.ini, + examples/tools/settingseditor/settingseditor.py, + examples/tutorials/addressbook/README, + examples/tutorials/addressbook/part1.py, + examples/tutorials/addressbook/part2.py, + examples/tutorials/addressbook/part3.py, + examples/tutorials/addressbook/part4.py, + examples/tutorials/addressbook/part5.py, + examples/tutorials/addressbook/part6.py, + examples/tutorials/addressbook/part7.py, + examples/webkit/domtraversal/domtraversal.py, + examples/webkit/domtraversal/ui_window.py, + examples/webkit/domtraversal/window.ui, + examples/webkit/fancybrowser/fancybrowser.py, + examples/webkit/fancybrowser/jquery.min.js, + examples/webkit/fancybrowser/jquery.qrc, + examples/webkit/fancybrowser/jquery_rc2.py, + examples/webkit/fancybrowser/jquery_rc3.py, + examples/webkit/formextractor/form.html, + examples/webkit/formextractor/formextractor.py, + examples/webkit/formextractor/formextractor.qrc, + examples/webkit/formextractor/formextractor.ui, + examples/webkit/formextractor/formextractor_rc2.py, + examples/webkit/formextractor/formextractor_rc3.py, + examples/webkit/formextractor/ui_formextractor.py, + examples/webkit/framecapture.py, examples/webkit/googlechat/form.ui, + examples/webkit/googlechat/googlechat.py, + examples/webkit/googlechat/ui_form.py, + examples/webkit/previewer/previewer.py, + examples/webkit/previewer/previewer.ui, + examples/webkit/previewer/ui_previewer.py, + examples/webkit/simpleselector/simpleselector.py, + examples/webkit/simpleselector/ui_window.py, + examples/webkit/simpleselector/window.ui, examples/widgets/README, + examples/widgets/analogclock.py, examples/widgets/calculator.py, + examples/widgets/calendarwidget.py, + examples/widgets/charactermap.py, examples/widgets/digitalclock.py, + examples/widgets/groupbox.py, examples/widgets/icons/icons.py, + examples/widgets/icons/images/designer.png, + examples/widgets/icons/images/find_disabled.png, + examples/widgets/icons/images/find_normal.png, + examples/widgets/icons/images/monkey_off_128x128.png, + examples/widgets/icons/images/monkey_off_16x16.png, + examples/widgets/icons/images/monkey_off_32x32.png, + examples/widgets/icons/images/monkey_off_64x64.png, + examples/widgets/icons/images/monkey_on_128x128.png, + examples/widgets/icons/images/monkey_on_16x16.png, + examples/widgets/icons/images/monkey_on_32x32.png, + examples/widgets/icons/images/monkey_on_64x64.png, + examples/widgets/icons/images/qt_extended_16x16.png, + examples/widgets/icons/images/qt_extended_32x32.png, + examples/widgets/icons/images/qt_extended_48x48.png, + examples/widgets/imageviewer.py, examples/widgets/lineedits.py, + examples/widgets/movie/animation.mng, + examples/widgets/movie/movie.py, examples/widgets/scribble.py, + examples/widgets/shapedclock.py, examples/widgets/sliders.py, + examples/widgets/spinboxes.py, examples/widgets/styles.py, + examples/widgets/stylesheet/images/checkbox_checked.png, + examples/widgets/stylesheet/images/checkbox_checked_hover.png, + examples/widgets/stylesheet/images/checkbox_checked_pressed.png, + examples/widgets/stylesheet/images/checkbox_unchecked.png, + examples/widgets/stylesheet/images/checkbox_unchecked_hover.png, + examples/widgets/stylesheet/images/checkbox_unchecked_pressed.png, + examples/widgets/stylesheet/images/down_arrow.png, + examples/widgets/stylesheet/images/down_arrow_disabled.png, + examples/widgets/stylesheet/images/frame.png, + examples/widgets/stylesheet/images/pagefold.png, + examples/widgets/stylesheet/images/pushbutton.png, + examples/widgets/stylesheet/images/pushbutton_hover.png, + examples/widgets/stylesheet/images/pushbutton_pressed.png, + examples/widgets/stylesheet/images/radiobutton_checked.png, + examples/widgets/stylesheet/images/radiobutton_checked_hover.png, + examples/widgets/stylesheet/images/radiobutton_checked_pressed.png, + examples/widgets/stylesheet/images/radiobutton_unchecked.png, + examples/widgets/stylesheet/images/radiobutton_unchecked_hover.png, + e + xamples/widgets/stylesheet/images/radiobutton_unchecked_pressed.png, + examples/widgets/stylesheet/images/sizegrip.png, + examples/widgets/stylesheet/images/spindown.png, + examples/widgets/stylesheet/images/spindown_hover.png, + examples/widgets/stylesheet/images/spindown_off.png, + examples/widgets/stylesheet/images/spindown_pressed.png, + examples/widgets/stylesheet/images/spinup.png, + examples/widgets/stylesheet/images/spinup_hover.png, + examples/widgets/stylesheet/images/spinup_off.png, + examples/widgets/stylesheet/images/spinup_pressed.png, + examples/widgets/stylesheet/images/up_arrow.png, + examples/widgets/stylesheet/images/up_arrow_disabled.png, + examples/widgets/stylesheet/mainwindow.ui, + examples/widgets/stylesheet/qss/coffee.qss, + examples/widgets/stylesheet/qss/default.qss, + examples/widgets/stylesheet/qss/pagefold.qss, + examples/widgets/stylesheet/stylesheet.py, + examples/widgets/stylesheet/stylesheet.qrc, + examples/widgets/stylesheet/stylesheet_rc2.py, + examples/widgets/stylesheet/stylesheet_rc3.py, + examples/widgets/stylesheet/stylesheeteditor.py, + examples/widgets/stylesheet/stylesheeteditor.ui, + examples/widgets/stylesheet/ui_mainwindow.py, + examples/widgets/stylesheet/ui_stylesheeteditor.py, + examples/widgets/tetrix.py, + examples/widgets/tooltips/images/circle.png, + examples/widgets/tooltips/images/square.png, + examples/widgets/tooltips/images/triangle.png, + examples/widgets/tooltips/tooltips.py, + examples/widgets/tooltips/tooltips.qrc, + examples/widgets/tooltips/tooltips_rc2.py, + examples/widgets/tooltips/tooltips_rc3.py, + examples/widgets/wiggly.py, examples/widgets/windowflags.py, + examples/xml/README, examples/xml/dombookmarks/dombookmarks.py, + examples/xml/dombookmarks/frank.xbel, + examples/xml/dombookmarks/jennifer.xbel, + examples/xml/saxbookmarks/frank.xbel, + examples/xml/saxbookmarks/jennifer.xbel, + examples/xml/saxbookmarks/saxbookmarks.py, + examples/xmlpatterns/README, + examples/xmlpatterns/schema/files/contact.xsd, + examples/xmlpatterns/schema/files/invalid_contact.xml, + examples/xmlpatterns/schema/files/invalid_order.xml, + examples/xmlpatterns/schema/files/invalid_recipe.xml, + examples/xmlpatterns/schema/files/order.xsd, + examples/xmlpatterns/schema/files/recipe.xsd, + examples/xmlpatterns/schema/files/valid_contact.xml, + examples/xmlpatterns/schema/files/valid_order.xml, + examples/xmlpatterns/schema/files/valid_recipe.xml, + examples/xmlpatterns/schema/schema.py, + examples/xmlpatterns/schema/schema.qrc, + examples/xmlpatterns/schema/schema.ui, + examples/xmlpatterns/schema/schema_rc2.py, + examples/xmlpatterns/schema/schema_rc3.py, + examples/xmlpatterns/schema/ui_schema.py, installers/AddToPath.nsh, + installers/BuildGPL.txt, installers/PyQt5-Qt5-gpl.nsi, + installers/StrSlash.nsh, installers/mysql-config.bat, installers + /psql-config.bat, installers/pyqt-check.py, installers/pyqt- + config.bat, installers/qsci-config.bat, installers/qt5-config.bat, + installers/sip-config.bat, lib/LICENSE.commercial, + lib/LICENSE.commercial.short, lib/LICENSE.gpl, + lib/LICENSE.gpl.short, lib/LICENSE.internal, + lib/QMetaObjectFormats.txt, lib/README, + lib/SubclassCode/QtGuiQt4.versions, + lib/SubclassCode/QtNetwork.versions, lib/SubclassCode/mksccode.py, + lib/UpdatingArgumentNames.txt, lib/__init__.py, lib/configure.py, + lib/license.py.commercial, lib/license.py.internal, lib/pyqt- + gpl.sip, lib/pyqt-internal.sip, pylupdate/fetchtr.cpp, + pylupdate/main.cpp, pylupdate/merge.cpp, + pylupdate/metatranslator.cpp, pylupdate/metatranslator.h, + pylupdate/numberh.cpp, pylupdate/proparser.cpp, + pylupdate/proparser.h, pylupdate/sametexth.cpp, + pylupdate/simtexth.cpp, pylupdate/simtexth.h, + pylupdate/translator.cpp, pylupdate/translator.h, pyrcc/main.cpp, + pyrcc/rcc.cpp, pyrcc/rcc.h, pyuic/uic/Compiler/__init__.py, + pyuic/uic/Compiler/compiler.py, pyuic/uic/Compiler/indenter.py, + pyuic/uic/Compiler/misc.py, pyuic/uic/Compiler/proxy_metaclass.py, + pyuic/uic/Compiler/qobjectcreator.py, + pyuic/uic/Compiler/qtproxies.py, pyuic/uic/Loader/__init__.py, + pyuic/uic/Loader/loader.py, pyuic/uic/Loader/qobjectcreator.py, + pyuic/uic/__init__.py, pyuic/uic/driver.py, pyuic/uic/exceptions.py, + pyuic/uic/icon_cache.py, pyuic/uic/objcreator.py, + pyuic/uic/port_v2/__init__.py, pyuic/uic/port_v2/as_string.py, + pyuic/uic/port_v2/ascii_upper.py, pyuic/uic/port_v2/invoke.py, + pyuic/uic/port_v2/load_plugin.py, pyuic/uic/port_v2/proxy_base.py, + pyuic/uic/port_v2/string_io.py, pyuic/uic/port_v3/__init__.py, + pyuic/uic/port_v3/as_string.py, pyuic/uic/port_v3/ascii_upper.py, + pyuic/uic/port_v3/invoke.py, pyuic/uic/port_v3/load_plugin.py, + pyuic/uic/port_v3/proxy_base.py, pyuic/uic/port_v3/string_io.py, + pyuic/uic/properties.py, pyuic/uic/pyuic.py, pyuic/uic/uiparser.py, + pyuic/uic/widget-plugins/phonon.py, pyuic/uic/widget- + plugins/qaxcontainer.py, pyuic/uic/widget-plugins/qscintilla.py, + pyuic/uic/widget-plugins/qtdeclarative.py, pyuic/uic/widget- + plugins/qtwebkit.py, qpy/QtCore/qpycore.pro, + qpy/QtCore/qpycore_api.h, qpy/QtCore/qpycore_chimera.cpp, + qpy/QtCore/qpycore_chimera.h, + qpy/QtCore/qpycore_chimera_signature.cpp, + qpy/QtCore/qpycore_chimera_storage.cpp, + qpy/QtCore/qpycore_classinfo.cpp, qpy/QtCore/qpycore_classinfo.h, + qpy/QtCore/qpycore_init.cpp, qpy/QtCore/qpycore_misc.cpp, + qpy/QtCore/qpycore_misc.h, qpy/QtCore/qpycore_namespace.h, + qpy/QtCore/qpycore_post_init.cpp.in, + qpy/QtCore/qpycore_pyqtboundsignal.cpp, + qpy/QtCore/qpycore_pyqtboundsignal.h, + qpy/QtCore/qpycore_pyqtconfigure.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.cpp, + qpy/QtCore/qpycore_pyqtmethodproxy.h, + qpy/QtCore/qpycore_pyqtproperty.cpp, + qpy/QtCore/qpycore_pyqtproperty.h, qpy/QtCore/qpycore_pyqtproxy.cpp, + qpy/QtCore/qpycore_pyqtproxy.h, qpy/QtCore/qpycore_pyqtpyobject.cpp, + qpy/QtCore/qpycore_pyqtpyobject.h, + qpy/QtCore/qpycore_pyqtsignal.cpp, qpy/QtCore/qpycore_pyqtsignal.h, + qpy/QtCore/qpycore_pyqtslot.cpp, + qpy/QtCore/qpycore_qabstracteventdispatcher.cpp, + qpy/QtCore/qpycore_qmetaobject.cpp, + qpy/QtCore/qpycore_qmetaobject_helpers.cpp, + qpy/QtCore/qpycore_qmetaobjectbuilder.h, + qpy/QtCore/qpycore_qobject_getattr.cpp, + qpy/QtCore/qpycore_qobject_helpers.cpp, + qpy/QtCore/qpycore_qobject_helpers.h, + qpy/QtCore/qpycore_qpynullvariant.cpp, + qpy/QtCore/qpycore_qpynullvariant.h, qpy/QtCore/qpycore_qstring.cpp, + qpy/QtCore/qpycore_qstringlist.cpp, qpy/QtCore/qpycore_qvariant.cpp, + qpy/QtCore/qpycore_qvariant_value.cpp, qpy/QtCore/qpycore_shared.h, + qpy/QtCore/qpycore_sip.h, qpy/QtCore/qpycore_sip_helpers.cpp, + qpy/QtCore/qpycore_sip_helpers.h, qpy/QtCore/qpycore_types.cpp, + qpy/QtCore/qpycore_types.h, qpy/QtCore/qpynullvariant.sip, + qpy/QtCore/qwineventnotifier.sip, qpy/QtDBus/qpydbus.pro, + qpy/QtDBus/qpydbus_api.h, qpy/QtDBus/qpydbus_chimera_helpers.cpp, + qpy/QtDBus/qpydbus_chimera_helpers.h, + qpy/QtDBus/qpydbus_post_init.cpp, + qpy/QtDBus/qpydbuspendingreply.cpp, + qpy/QtDBus/qpydbuspendingreply.h, + qpy/QtDBus/qpydbuspendingreply.sip, qpy/QtDBus/qpydbusreply.cpp, + qpy/QtDBus/qpydbusreply.h, qpy/QtDBus/qpydbusreply.sip, + qpy/QtDeclarative/qpydeclarative.pro, + qpy/QtDeclarative/qpydeclarative_api.h, + qpy/QtDeclarative/qpydeclarative_chimera_helpers.cpp, + qpy/QtDeclarative/qpydeclarative_chimera_helpers.h, + qpy/QtDeclarative/qpydeclarative_listwrapper.cpp, + qpy/QtDeclarative/qpydeclarative_listwrapper.h, + qpy/QtDeclarative/qpydeclarative_post_init.cpp, + qpy/QtDeclarative/qpydeclarativelistproperty.cpp, + qpy/QtDeclarative/qpydeclarativelistproperty.h, + qpy/QtDeclarative/qpydeclarativelistproperty.sip, + qpy/QtDeclarative/qpydeclarativepropertyvaluesource.h, + qpy/QtDeclarative/qpydeclarativepropertyvaluesource.sip, + qpy/QtDesigner/qpydesigner.pro, + qpy/QtDesigner/qpydesignercontainerextension.h, + qpy/QtDesigner/qpydesignercontainerextension.sip, + qpy/QtDesigner/qpydesignercustomwidgetcollectionplugin.h, + qpy/QtDesigner/qpydesignercustomwidgetcollectionplugin.sip, + qpy/QtDesigner/qpydesignercustomwidgetplugin.h, + qpy/QtDesigner/qpydesignercustomwidgetplugin.sip, + qpy/QtDesigner/qpydesignermembersheetextension.h, + qpy/QtDesigner/qpydesignermembersheetextension.sip, + qpy/QtDesigner/qpydesignerpropertysheetextension.h, + qpy/QtDesigner/qpydesignerpropertysheetextension.sip, + qpy/QtDesigner/qpydesignertaskmenuextension.h, + qpy/QtDesigner/qpydesignertaskmenuextension.sip, + qpy/QtGui/qpygui.pro, qpy/QtGui/qpytextobject.h, + qpy/QtGui/qpytextobject.sip, qpy/QtOpenGL/opengl_types.sip, + qpy/QtOpenGL/qpyopengl.pro, qpy/QtOpenGL/qpyopengl_api.h, + qpy/QtOpenGL/qpyopengl_attribute_array.cpp, + qpy/QtOpenGL/qpyopengl_uniform_value_array.cpp, + sphinx/buffer_interface.rst, sphinx/build_system.rst, + sphinx/conf.py, sphinx/dbus.rst, sphinx/deploy_commercial.rst, + sphinx/designer.rst, sphinx/gotchas.rst, sphinx/i18n.rst, + sphinx/incompatibilities.rst, sphinx/incompatible_apis.rst, + sphinx/index.rst, sphinx/installation.rst, sphinx/introduction.rst, + sphinx/keyword_arguments.rst, sphinx/new_style_signals_slots.rst, + sphinx/old_style_signals_slots.rst, sphinx/pickle.rst, + sphinx/pyqt_qsettings.rst, sphinx/pyqt_qvariant.rst, + sphinx/python_shell.rst, sphinx/python_v3.rst, sphinx/qml.rst, + sphinx/qt_properties.rst, sphinx/qt_v5.rst, sphinx/resources.rst, + sphinx/static/default.css, sphinx/static/logo.png, + sphinx/static/logo_tn.ico, sphinx/webkit.rst, + test/dbus/test_multibus.py, test/runtests.py, + test/tests/__init__.py, test/tests/classes/__init__.py, + test/tests/classes/test_QObject.py, + test/tests/classes/test_QSettings.py, + test/tests/classes/test_QStringList.py, + test/tests/classes/test_QVariant.py, + test/tests/metaobject/__init__.py, + test/tests/metaobject/test_connections.py, + test/tests/metaobject/test_connections_old_style.py, + test/tests/metaobject/test_connectslotsbyname.py, + test/tests/metaobject/test_destroyed.py, + test/tests/metaobject/test_gc_slots.py, + test/tests/metaobject/test_invoke.py, + test/tests/metaobject/test_pyqtproperty.py, + test/tests/metaobject/test_pyqtsignal.py, + test/tests/metaobject/test_pyqtsignature.py, + test/tests/metaobject/test_pyqtslot.py, + test/tests/metaobject/test_qvariantmap.py, + test/tests/metaobject/test_sender.py, + test/tests/metaobject/test_signal.py, test/tests/misc/__init__.py, + test/tests/misc/test_pickle.py, test/tests/misc/test_repr.py, + test/tests/pyuic/QMainWindow/MainWindow00.ui, + test/tests/pyuic/QToolBox/ToolBox00.ui, + test/tests/pyuic/QToolBox/ToolBox01.ui, + test/tests/pyuic/QWidget/Widget00.ui, + test/tests/pyuic/QWidget/Widget01.ui, + test/tests/pyuic/QWidget/Widget02.ui, + test/tests/pyuic/QWidget/Widget03.ui, + test/tests/pyuic/QWidget/Widget04.ui, + test/tests/pyuic/QWidget/Widget05.ui, test/tests/pyuic/__init__.py, + test/tests/pyuic/test_pyuic.py, test/v2_unicode.py, + test/v3_unicode.py: + Initial import of PyQt5 based on a stripped down PyQt4. + [b135a1e082d2] diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..94a9ed0 --- /dev/null +++ b/LICENSE @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/NEWS b/NEWS new file mode 100644 index 0000000..7b3ba3c --- /dev/null +++ b/NEWS @@ -0,0 +1,214 @@ +v5.11.2 2nd July 2018 + - Added the 'signatures' attribute to unbound signals. + - SIP v4.19.11 is required. + +v5.11.1 24th June 2018 + - A pseudo-release to create a version number for updated wheels. + +v5.11 23rd June 2018 + - Added support for Qt v5.11.0 and v5.11.1. + - Enum members are also visible as attributes of the enum in order to + emulate the behaviour of Python enums. The traditional use, where a member + is visible at the same scope as the enum, is deprecated but will be + supported throughout the life of PyQt5. + - Versions of Python earlier than v3.4 require the enum34 package to be + installed from PyPI. + - The connect() method of a bound signal now returns a QMetaObject.Connection + object that can be passed to the disconnect() method. + - Added QtCore.Q_ENUM() and QtCore.Q_FLAG(). + - Python enums can now be used with Q_ENUM() etc. + - Added the missing QGuiApplication.inputMethod() method. + - Added the missing QGuiApplication.styleHints() method. + - Added the missing QSqlQuery.exec() overload for Python v3. + - Added glReadPixels(). + - A PEP 376 .dist-info directory is created on installation that provides + version information for dependent packages and allows pip to uninstall. + - Added the --no-dist-info option to configure.py. + - Added support for Python v3.7. + +v5.10.1 26th February 2018 + - Added support for Qt v5.10.1. + - Added the missing qmlClearTypeRegistrations() to the QtQml module. + - Added the --disable-feature option to configure.py. + +v5.10 23rd January 2018 + - Added support for Qt v5.10.0. + - Added the QtNetworkAuth module. + +v5.9.2 23rd November 2017 + - Added support for Qt v5.9.3. + - Added the QtAndroidExtras module. + +v5.9.1 1st November 2017 + - Added support for Qt v5.9.2. + - Added the --allow-sip-warnings option to configure.py. + - Removed the unimplemented -name option to pyrcc5. + - SIP v4.19.4 is required. + +v5.9 3rd July 2017 + - Added support for Qt v5.9.0 and v5.9.1. + - Improved detection of the destruction of QObject-based instances by C++. + - QFlags instances are now hashable. + - pyrcc5 now supports v2 of the resource file format. + - Added the interview.py, frozencolumn.py and storageview.py examples from + Hans-Peter Jansen. + - SIP v4.19.3 is required. + +v5.8.2 30th March 2017 + - This is a bug fix release. + +v5.8.1 7th March 2017 + - This is a bug fix release. + +v5.8 15th February 2017 + - Added support for Qt v5.8.0. + - Added __fspath__() to QFileInfo. + - Added the --qml-debug option to configure.py. The --debug option no longer + enables the QML debugging infrastructure. + - Added the --link-full-dll option to configure.py. + - SIP v4.19.1 is required. + +v5.7.1 25th December 2016 + - Added support for Qt v5.7.1. + - Added the QtWebEngine module. + - Added QRegion.setRects(). + - Added QtMac to the QtMacExtras module. + - Added pyuic5 plugins for QChartView and QWebEngineView. + - The Python v3.4 limited API is used. + - SIP v4.19 is required. + +v5.7 25th July 2016 + - Added support for Qt v5.7.0. + +v5.6 24th April 2016 + - Added full support for Qt v5.6.0. + - Python v3.5 wheels are available for 64-bit Linux, 64-bit OS X and 32 and + 64-bit Windows. (After this release Windows .exe installers will no longer + be produced.) + - Added the QtWebEngineCore module. + - Added the missing qt_set_sequence_auto_mnemonic() to QtGui. + - Added the missing MouseLock to QWebEnginePage.Feature. + - Added the missing WA_DontShowOnScreen. + - PEP 484 stub files are installed by default. + - Added the --import-from command line argument to pyuic5. + - Added the --no-stubs and --stubsdir options to configure.py. + - Added the --qtconf-prefix option to configure.py. + +v5.5.1 25th October 2015 + - Added support for Qt v5.5.1. + - Added the --disable option to configure.py. + - Implemented __matmul__ and __imatmul__ for QMatrix4x4 and QTransform. + +v5.5 17th July 2015 + - Added full support for Qt v5.5.0. + - Added the QtLocation module. + - Added the QtNfc module. + - Added Qt.NoOpaqueDetection amd Qt.NoFormatConversion to QtCore. + - Added QMacToolBar and QMacToolBarItem to QtMacExtras. + - Added QProxyStyle to QtWidgets. + +v5.4.2 11th June 2015 + - Added support for Qt v5.4.2. + - Added QWIDGETSIZE_MAX to QtWidgets. + - Added the --no-python-dbus command line option to configure.py. + +v5.4.1 26th February 2015 + - Added support for Qt v5.4.1. + - Added the QMacCocoaViewContainer class. + - All OpenGL examples use QOpenGLWidget and no longer require PyOpenGL. + - Added initial implementations of _QOpenGLFunctions_2_1 and + _QOpenGLFunctions_4_1_Core. + - QEvent.None is now QEvent.None_. + - Added missing QEvent.Type members that are now documented in Qt. + - Added the --license-dir option to configure.py. + - Installing into a virtual env should now work. + - pyuic5 and pyrcc5 no longer include a timestamp in the generated code. + +v5.4 25th December 2014 + - Added full support for Qt v5.4.0. + - Added the QtWebChannel module. + - Added the QtWebEngineWidgets module. + - Added the QtXml module. + +v5.3.2 11th September 2014 + - Added the Enginio module. + - Added the QJsonDocument and QJsonValue classes. + - QJsonObject is implemented as a Python dict. + - QJsonArray is implemented as a Python list. + - Added setUnifiedTitleAndToolBarOnMac() and unifiedTitleAndToolBarOnMac() to + QWidget. + - Added windowHandle() to QWidget. + +v5.3.1 4th July 2014 + - Added support for Qt v5.3.1. + - Added the -tr-function and -translate-function command line options to + pylupdate5. + +v5.3 26th May 2014 + - By default a Python slot is only invoked if the underlying C++ instance + still exists. + - Added the no_receiver_check argument to connect(). + - Added support for Qt v5.3.0. + - Added the QtQuickWidgets module. + - Added the QtWebSockets module. + - Added the --target-py-version, --sysroot and --no-tools option to + configure.py. + - Cross-compilation (specifically to iOS and Android) is now supported. + +v5.2.1 14th March 2014 + - Added full support for Qt v5.2.1. + - Properties, signals and slots can now be defined in mixins (i.e. + non-QObject classes). + - Added support for creating QSGGeometry.AttributeSet instances. + - A fundamental value may now be given whenever a QJSValue is expected. + - Building PyQt5 as static libraries now works. + - Added support for building without OpenGL. + +v5.2 8th January 2014 + - Added full support for Qt v5.2. + - Added the QtBluetooth module. + - Added the QtPositioning module. + - Added the QtMacExtras module. + - Added the QtWinExtras module. + - Added the QtX11Extras module. + - Improved the conversion of Python objects to Qt collection types (e.g. + QList, QSet). Iterators (rather than just sequences) are accepted and + failed conversions now raise much more informative exceptions. + - QtCore.Q_ENUMS() and QtCore.Q_FLAGS() now populate the meta-object. + - The QML debugger is automatically enabled when --debug is passed to + configure.py. + +v5.1.1 16th October 2013 + - This is a bug fix release. + +v5.1 2nd October 2013 + - Added full support for Qt v5.1. + - Added the QtSensors module. + - Added the QtSerialPort module. + - A (nearly) complete set of OpenGL v2.0 and OpenGL ES/2 bindings are + included. + - Cross-compilation is now supported. A configuration file for Python3 on the + Raspberry Pi is included. + +v5.0.1 21st August 2013 + - Added the QtQuick module including the ability to create Python Quick items + from QML. + - Added the QtQml module including the ability to create Python objects from + QML. + - Added the QtMultimediaWidgets module. + - Completed the implementation of the QtMultimedia module including support + for cameras and radios. + - Added the remaining OpenGL classes to the QtGui module. + - Added the 'revision' keyword argument to pyqtProperty(). + - Added the 'revision' and 'arguments' keyword arguments to pyqtSignal(). + - Added the 'revision' keyword argument to pyqtSlot(). + - Added the 'pyqt5qmlplugin' plugin for qmlscene. + - The DBus main loop module has been renamed to dbus.mainloop.pyqt5 from + dbus.mainloop.qt. + - Added the --no-qml-plugin and --qml-plugindir options to configure.py. + - Added many QtMultimedia, QML and QtQuick related examples. + - Classes now support co-operative multi-inheritance. (This may introduce + incompatibilities with PyQt v5.0.) + +v5.0 16th June 2013 + - The first release of PyQt5. diff --git a/README b/README new file mode 100644 index 0000000..109a3c0 --- /dev/null +++ b/README @@ -0,0 +1,59 @@ + PyQt5 - Python Bindings for the Qt v5 Toolkit + + +INTRODUCTION + +These are the Python bindings for Qt v5. Python v2.6 or later is required. +You must also have the SIP Python bindings generator installed. PyQt4 is also +available which supports earlier versions of Python, and Qt v4 and the +compatible subset of Qt v5. + +The homepage is https://www.riverbankcomputing.com/software/pyqt/. + +The homepage of SIP is https://www.riverbankcomputing.com/software/sip/. + + +COMMERCIAL VERSION + +If you have the Commercial version of PyQt5 then you should also have a +license file that you downloaded separately. The license file must be copied +to the "sip" directory before starting to build PyQt5. + + +INSTALLATION + +Check for any other README files in this directory that relate to your +particular platform. Feel free to contribute a README for your platform or to +provide updates to any existing documentation. + +The first step is to configure PyQt5 by running the following command. + + python configure.py + +This assumes that the correct Python interpreter is on your path. Something +like the following may be appropriate on Windows. + + c:\python36\python configure.py + +If you have multiple versions of Python installed then make sure you use the +interpreter for which you wish to generate bindings for. + +The configure.py script takes many options. Use the "--help" command line +option to display a full list of the available options. + +The next step is to build PyQt5 using your platform's make command. + + make + +The final step is to install PyQt5 by running the following command. +(Depending on your system you may require root or administrator privileges.) + + make install + + +THE REST OF THE DISTRIBUTION + +The "examples" directory contain some examples of Python scripts, including +versions of the standard Qt tutorials and examples. + +The "doc" directory contains HTML documentation for the bindings. diff --git a/__init__.py b/__init__.py new file mode 100644 index 0000000..9665a1c --- /dev/null +++ b/__init__.py @@ -0,0 +1,16 @@ +# Copyright (c) 2018 Riverbank Computing Limited +# +# This file is part of PyQt5. +# +# This file may be used under the terms of the GNU General Public License +# version 3.0 as published by the Free Software Foundation and appearing in +# the file LICENSE included in the packaging of this file. Please review the +# following information to ensure the GNU General Public License version 3.0 +# requirements will be met: http://www.gnu.org/copyleft/gpl.html. +# +# If you do not wish to use this file under the terms of the GPL version 3.0 +# then you may purchase a commercial license. For more information contact +# info@riverbankcomputing.com. +# +# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. diff --git a/config-tests/cfgtest_QtCore.cpp b/config-tests/cfgtest_QtCore.cpp new file mode 100644 index 0000000..3bf0eb0 --- /dev/null +++ b/config-tests/cfgtest_QtCore.cpp @@ -0,0 +1,48 @@ +#include + +#include +#include +#include +#include + + +int main(int argc, char **argv) +{ + QCoreApplication app(argc, argv); + QFile outf(argv[1]); + + if (!outf.open(QIODevice::WriteOnly|QIODevice::Truncate|QIODevice::Text)) + return 1; + + QTextStream out(&outf); + + // This allows the version of sip.h to be checked against the code + // generator. + out << SIP_VERSION_STR << '\n'; + + // This is not a feature and needs to be handled separately. +#if defined(QT_SHARED) || defined(QT_DLL) + out << "shared\n"; +#else + out << "static\n"; +#endif + + // Determine which features should be disabled. + +#if defined(QT_NO_PROCESS) + out << "PyQt_Process\n"; +#endif + +#if QT_VERSION < 0x050200 +// This is the test used in qglobal.h in Qt prior to v5.2. In v5.2 and later +// qreal is double unless QT_COORD_TYPE is defined. +#if defined(QT_NO_FPU) || defined(Q_PROCESSOR_ARM) || defined(Q_OS_WINCE) + out << "PyQt_qreal_double\n"; +#endif +#else + if (sizeof (qreal) != sizeof (double)) + out << "PyQt_qreal_double\n"; +#endif + + return 0; +} diff --git a/config-tests/cfgtest_QtGui.cpp b/config-tests/cfgtest_QtGui.cpp new file mode 100644 index 0000000..ee9f7d0 --- /dev/null +++ b/config-tests/cfgtest_QtGui.cpp @@ -0,0 +1,44 @@ +#include +#include +#include +#include + +#include + + +int main(int argc, char **argv) +{ + QCoreApplication app(argc, argv); + QFile outf(argv[1]); + + if (!outf.open(QIODevice::WriteOnly|QIODevice::Truncate|QIODevice::Text)) + return 1; + + QTextStream out(&outf); + + // The link test. + new QFont(); + + // Determine which features should be disabled. + +#if defined(QT_NO_ACCESSIBILITY) + out << "PyQt_Accessibility\n"; +#endif + +#if defined(QT_NO_OPENGL) + out << "PyQt_OpenGL\n"; + out << "PyQt_Desktop_OpenGL\n"; +#elif defined(QT_OPENGL_ES) || defined(QT_OPENGL_ES_2) || defined(QT_OPENGL_ES_3) + out << "PyQt_Desktop_OpenGL\n"; +#endif + +#if defined(QT_NO_RAWFONT) + out << "PyQt_RawFont\n"; +#endif + +#if defined(QT_NO_SESSIONMANAGER) + out << "PyQt_SessionManager\n"; +#endif + + return 0; +} diff --git a/config-tests/cfgtest_QtNetwork.cpp b/config-tests/cfgtest_QtNetwork.cpp new file mode 100644 index 0000000..8f603ae --- /dev/null +++ b/config-tests/cfgtest_QtNetwork.cpp @@ -0,0 +1,29 @@ +#include +#include +#include +#include + +#include + + +int main(int argc, char **argv) +{ + QCoreApplication app(argc, argv); + QFile outf(argv[1]); + + if (!outf.open(QIODevice::WriteOnly|QIODevice::Truncate|QIODevice::Text)) + return 1; + + QTextStream out(&outf); + + // The link test. + new QHostAddress(); + + // Determine which features should be disabled. + +#if defined(QT_NO_SSL) + out << "PyQt_SSL\n"; +#endif + + return 0; +} diff --git a/config-tests/cfgtest_QtPrintSupport.cpp b/config-tests/cfgtest_QtPrintSupport.cpp new file mode 100644 index 0000000..0afa055 --- /dev/null +++ b/config-tests/cfgtest_QtPrintSupport.cpp @@ -0,0 +1,41 @@ +#include +#include +#include +#include + +#include + + +int main(int argc, char **argv) +{ + QCoreApplication app(argc, argv); + QFile outf(argv[1]); + + if (!outf.open(QIODevice::WriteOnly|QIODevice::Truncate|QIODevice::Text)) + return 1; + + QTextStream out(&outf); + + // The link test. + new QPrinter(); + + // Determine which features should be disabled. + +#if defined(QT_NO_PRINTDIALOG) + out << "PyQt_PrintDialog\n"; +#endif + +#if defined(QT_NO_PRINTER) + out << "PyQt_Printer\n"; +#endif + +#if defined(QT_NO_PRINTPREVIEWDIALOG) + out << "PyQt_PrintPreviewDialog\n"; +#endif + +#if defined(QT_NO_PRINTPREVIEWWIDGET) + out << "PyQt_PrintPreviewWidget\n"; +#endif + + return 0; +} diff --git a/configure.py b/configure.py new file mode 100644 index 0000000..7c48136 --- /dev/null +++ b/configure.py @@ -0,0 +1,3087 @@ +# This script generates the Makefiles for building PyQt5. +# +# Copyright (c) 2018 Riverbank Computing Limited +# +# This file is part of PyQt5. +# +# This file may be used under the terms of the GNU General Public License +# version 3.0 as published by the Free Software Foundation and appearing in +# the file LICENSE included in the packaging of this file. Please review the +# following information to ensure the GNU General Public License version 3.0 +# requirements will be met: http://www.gnu.org/copyleft/gpl.html. +# +# If you do not wish to use this file under the terms of the GPL version 3.0 +# then you may purchase a commercial license. For more information contact +# info@riverbankcomputing.com. +# +# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + + +from distutils import sysconfig +import glob +import optparse +import os +import shutil +import stat +import sys + + +# Initialise the constants. +PYQT_VERSION_STR = "5.11.2" + +SIP_MIN_VERSION = '4.19.11' + + +class ModuleMetadata: + """ This class encapsulates the meta-data about a PyQt5 module. """ + + def __init__(self, qmake_QT=None, qmake_TARGET='', qpy_lib=False, cpp11=False, public=True): + """ Initialise the meta-data. """ + + # The values to update qmake's QT variable. + self.qmake_QT = [] if qmake_QT is None else qmake_QT + + # The value to set qmake's TARGET variable to. It defaults to the name + # of the module. + self.qmake_TARGET = qmake_TARGET + + # Set if there is a qpy support library. + self.qpy_lib = qpy_lib + + # Set if C++11 support is required. + self.cpp11 = cpp11 + + # Set if the module is public. + self.public = public + + +# The module meta-data. +MODULE_METADATA = { + 'dbus': ModuleMetadata(qmake_QT=['-gui'], + qmake_TARGET='pyqt5'), + 'QAxContainer': ModuleMetadata(qmake_QT=['axcontainer']), + 'Qt': ModuleMetadata(qmake_QT=['-core', '-gui']), + 'QtAndroidExtras': ModuleMetadata(qmake_QT=['androidextras']), + 'QtBluetooth': ModuleMetadata(qmake_QT=['bluetooth']), + 'QtCore': ModuleMetadata(qmake_QT=['-gui'], qpy_lib=True), + 'QtDBus': ModuleMetadata(qmake_QT=['dbus', '-gui'], + qpy_lib=True), + 'QtDesigner': ModuleMetadata(qmake_QT=['designer'], + qpy_lib=True), + 'Enginio': ModuleMetadata(qmake_QT=['enginio']), + 'QtGui': ModuleMetadata(qpy_lib=True), + 'QtHelp': ModuleMetadata(qmake_QT=['help']), + 'QtLocation': ModuleMetadata(qmake_QT=['location']), + 'QtMacExtras': ModuleMetadata(qmake_QT=['macextras']), + 'QtMultimedia': ModuleMetadata(qmake_QT=['multimedia']), + 'QtMultimediaWidgets': ModuleMetadata( + qmake_QT=['multimediawidgets', + 'multimedia']), + 'QtNetwork': ModuleMetadata(qmake_QT=['network', '-gui']), + 'QtNetworkAuth': ModuleMetadata( + qmake_QT=['network', 'networkauth', + '-gui'], + cpp11=True), + 'QtNfc': ModuleMetadata(qmake_QT=['nfc', '-gui']), + 'QtOpenGL': ModuleMetadata(qmake_QT=['opengl']), + 'QtPositioning': ModuleMetadata(qmake_QT=['positioning']), + 'QtPrintSupport': ModuleMetadata(qmake_QT=['printsupport']), + 'QtQml': ModuleMetadata(qmake_QT=['qml'], qpy_lib=True), + 'QtQuick': ModuleMetadata(qmake_QT=['quick'], qpy_lib=True), + 'QtQuickWidgets': ModuleMetadata(qmake_QT=['quickwidgets']), + 'QtSensors': ModuleMetadata(qmake_QT=['sensors']), + 'QtSerialPort': ModuleMetadata(qmake_QT=['serialport']), + 'QtSql': ModuleMetadata(qmake_QT=['sql', 'widgets']), + 'QtSvg': ModuleMetadata(qmake_QT=['svg']), + 'QtTest': ModuleMetadata(qmake_QT=['testlib', 'widgets']), + 'QtWebChannel': ModuleMetadata( + qmake_QT=['webchannel', 'network', + '-gui']), + 'QtWebEngine': ModuleMetadata(qmake_QT=['webengine', '-gui']), + 'QtWebEngineCore': ModuleMetadata(qmake_QT=['webenginecore', '-gui']), + 'QtWebEngineWidgets': ModuleMetadata( + qmake_QT=['webenginewidgets', 'webchannel', + 'network', 'widgets'], + cpp11=True), + 'QtWebKit': ModuleMetadata(qmake_QT=['webkit', 'network']), + 'QtWebKitWidgets': ModuleMetadata( + qmake_QT=['webkitwidgets', + 'printsupport']), + 'QtWebSockets': ModuleMetadata(qmake_QT=['websockets', '-gui']), + 'QtWidgets': ModuleMetadata(qmake_QT=['widgets'], qpy_lib=True), + 'QtWinExtras': ModuleMetadata(qmake_QT=['winextras', 'widgets']), + 'QtX11Extras': ModuleMetadata(qmake_QT=['x11extras']), + 'QtXml': ModuleMetadata(qmake_QT=['xml', '-gui']), + 'QtXmlPatterns': ModuleMetadata( + qmake_QT=['xmlpatterns', '-gui', + 'network']), + + # The OpenGL wrappers. + '_QOpenGLFunctions_1_0': ModuleMetadata(public=False), + '_QOpenGLFunctions_1_1': ModuleMetadata(public=False), + '_QOpenGLFunctions_1_2': ModuleMetadata(public=False), + '_QOpenGLFunctions_1_3': ModuleMetadata(public=False), + '_QOpenGLFunctions_1_4': ModuleMetadata(public=False), + '_QOpenGLFunctions_1_5': ModuleMetadata(public=False), + '_QOpenGLFunctions_2_0': ModuleMetadata(public=False), + '_QOpenGLFunctions_2_1': ModuleMetadata(public=False), + '_QOpenGLFunctions_3_0': ModuleMetadata(public=False), + '_QOpenGLFunctions_3_1': ModuleMetadata(public=False), + '_QOpenGLFunctions_3_2_Compatibility': ModuleMetadata(public=False), + '_QOpenGLFunctions_3_2_Core': ModuleMetadata(public=False), + '_QOpenGLFunctions_3_3_Compatibility': ModuleMetadata(public=False), + '_QOpenGLFunctions_3_3_Core': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_0_Compatibility': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_0_Core': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_1_Compatibility': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_1_Core': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_2_Compatibility': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_2_Core': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_3_Compatibility': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_3_Core': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_4_Compatibility': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_4_Core': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_5_Compatibility': ModuleMetadata(public=False), + '_QOpenGLFunctions_4_5_Core': ModuleMetadata(public=False), + '_QOpenGLFunctions_ES2': ModuleMetadata(public=False), + + # Internal modules. + 'pylupdate': ModuleMetadata(qmake_QT=['xml', '-gui'], + qpy_lib=True, public=False), + 'pyrcc': ModuleMetadata(qmake_QT=['xml', '-gui'], + qpy_lib=True, public=False), +} + + +# The component modules that make up the composite Qt module. SIP is broken in +# its handling of composite module in that a component module must be %Included +# before it is first %Imported. In other words, a module must appear before +# any modules that depend on it. +COMPOSITE_COMPONENTS = ( + 'QtCore', + 'QtAndroidExtras', 'QtDBus', 'QtGui', 'QtNetwork', 'QtNetworkAuth', + 'QtSensors', 'QtSerialPort', 'QtMultimedia', 'QtQml', 'QtWebKit', + 'QtWidgets', 'QtXml', 'QtXmlPatterns', 'QtAxContainer', 'QtDesigner', + 'QtHelp', 'QtMultimediaWidgets', 'QtOpenGL', + 'QtPrintSupport', 'QtQuick', 'QtSql', 'QtSvg', 'QtTest', + 'QtWebKitWidgets', 'QtBluetooth', 'QtMacExtras', 'QtPositioning', + 'QtWinExtras', 'QtX11Extras', 'QtQuickWidgets', 'QtWebSockets', + 'Enginio', 'QtWebChannel', 'QtWebEngineCore', 'QtWebEngineWidgets', + 'QtWebEngine', + 'QtLocation', 'QtNfc' +) + + +def error(msg): + """ Display an error message and terminate. msg is the text of the error + message. + """ + + sys.stderr.write(format("Error: " + msg) + "\n") + sys.exit(1) + + +def inform(msg): + """ Display an information message. msg is the text of the error message. + """ + + sys.stdout.write(format(msg) + "\n") + + +def format(msg, left_margin=0, right_margin=78): + """ Format a message by inserting line breaks at appropriate places. msg + is the text of the message. left_margin is the position of the left + margin. right_margin is the position of the right margin. Returns the + formatted message. + """ + + curs = left_margin + fmsg = " " * left_margin + + for w in msg.split(): + l = len(w) + if curs != left_margin and curs + l > right_margin: + fmsg = fmsg + "\n" + (" " * left_margin) + curs = left_margin + + if curs > left_margin: + fmsg = fmsg + " " + curs = curs + 1 + + fmsg = fmsg + w + curs = curs + l + + return fmsg + + +def version_to_sip_tag(version): + """ Convert a version number to a SIP tag. version is the version number. + """ + + # Anything after Qt v5 is assumed to be Qt v6.0. + if version > 0x060000: + version = 0x060000 + + major = (version >> 16) & 0xff + minor = (version >> 8) & 0xff + patch = version & 0xff + + return 'Qt_%d_%d_%d' % (major, minor, patch) + + +def version_to_string(version, parts=3): + """ Convert an n-part version number encoded as a hexadecimal value to a + string. version is the version number. Returns the string. + """ + + part_list = [str((version >> 16) & 0xff)] + + if parts > 1: + part_list.append(str((version >> 8) & 0xff)) + + if parts > 2: + part_list.append(str(version & 0xff)) + + return '.'.join(part_list) + + +class ConfigurationFileParser: + """ A parser for configuration files. """ + + def __init__(self, config_file): + """ Read and parse a configuration file. """ + + self._config = {} + self._extrapolating = [] + + cfg = open(config_file) + line_nr = 0 + last_name = None + + section = '' + section_config = {} + self._config[section] = section_config + + for l in cfg: + line_nr += 1 + + # Strip comments. + l = l.split('#')[0] + + # See if this might be part of a multi-line. + multiline = (last_name is not None and len(l) != 0 and l[0] == ' ') + + l = l.strip() + + if l == '': + last_name = None + continue + + # See if this is a new section. + if l[0] == '[' and l[-1] == ']': + section = l[1:-1].strip() + if section == '': + error( + "%s:%d: Empty section name." % ( + config_file, line_nr)) + + if section in self._config: + error( + "%s:%d: Section '%s' defined more than once." % ( + config_file, line_nr, section)) + + section_config = {} + self._config[section] = section_config + + last_name = None + continue + + parts = l.split('=', 1) + if len(parts) == 2: + name = parts[0].strip() + value = parts[1].strip() + elif multiline: + name = last_name + value = section_config[last_name] + value += ' ' + l + else: + name = value = '' + + if name == '' or value == '': + error("%s:%d: Invalid line." % (config_file, line_nr)) + + section_config[name] = value + last_name = name + + cfg.close() + + def sections(self): + """ Return the list of sections, excluding the default one. """ + + return [s for s in self._config.keys() if s != ''] + + def preset(self, name, value): + """ Add a preset value to the configuration. """ + + self._config[''][name] = value + + def get(self, section, name, default=None): + """ Get a configuration value while extrapolating. """ + + # Get the name from the section, or the default section. + value = self._config[section].get(name) + if value is None: + value = self._config[''].get(name) + if value is None: + if default is None: + error( + "Configuration file references non-existent name " + "'%s'." % name) + + return default + + # Handle any extrapolations. + parts = value.split('%(', 1) + while len(parts) == 2: + prefix, tail = parts + + parts = tail.split(')', 1) + if len(parts) != 2: + error( + "Configuration file contains unterminated " + "extrapolated name '%s'." % tail) + + xtra_name, suffix = parts + + if xtra_name in self._extrapolating: + error( + "Configuration file contains a recursive reference to " + "'%s'." % xtra_name) + + self._extrapolating.append(xtra_name) + xtra_value = self.get(section, xtra_name) + self._extrapolating.pop() + + value = prefix + xtra_value + suffix + + parts = value.split('%(', 1) + + return value + + def getboolean(self, section, name, default): + """ Get a boolean configuration value while extrapolating. """ + + value = self.get(section, name, default) + + # In case the default was returned. + if isinstance(value, bool): + return value + + if value in ('True', 'true', '1'): + return True + + if value in ('False', 'false', '0'): + return False + + error( + "Configuration file contains invalid boolean value for " + "'%s'." % name) + + def getlist(self, section, name, default): + """ Get a list configuration value while extrapolating. """ + + value = self.get(section, name, default) + + # In case the default was returned. + if isinstance(value, list): + return value + + return value.split() + + +class HostPythonConfiguration: + """ A container for the host Python configuration. """ + + def __init__(self): + """ Initialise the configuration. """ + + self.platform = sys.platform + self.version = sys.hexversion >> 8 + + self.inc_dir = sysconfig.get_python_inc() + self.venv_inc_dir = sysconfig.get_python_inc(prefix=sys.prefix) + self.module_dir = sysconfig.get_python_lib(plat_specific=1) + self.debug = hasattr(sys, 'gettotalrefcount') + + if sys.platform == 'win32': + bin_dir = sys.exec_prefix + + try: + # Python v3.3 and later. + base_prefix = sys.base_prefix + + if sys.exec_prefix != sys.base_exec_prefix: + bin_dir += '\\Scripts' + + except AttributeError: + try: + # virtualenv for Python v2. + base_prefix = sys.real_prefix + bin_dir += '\\Scripts' + + except AttributeError: + # We can't detect the base prefix in Python v3 prior to + # v3.3. + base_prefix = sys.prefix + + self.bin_dir = bin_dir + self.data_dir = sys.prefix + self.lib_dir = base_prefix + '\\libs' + else: + self.bin_dir = sys.exec_prefix + '/bin' + self.data_dir = sys.prefix + '/share' + self.lib_dir = sys.prefix + '/lib' + + # The name of the interpreter used by the pyuic5 wrapper. + if sys.platform == 'darwin': + # The installation of MacOS's python is a mess that changes from + # version to version and where sys.executable is useless. + + py_major = self.version >> 16 + py_minor = (self.version >> 8) & 0xff + + # In Python v3.4 and later there is no pythonw. + if (py_major == 3 and py_minor >= 4) or py_major >= 4: + exe = "python" + else: + exe = "pythonw" + + self.pyuic_interpreter = '%s%d.%d' % (exe, py_major, py_minor) + else: + self.pyuic_interpreter = sys.executable + + +class TargetQtConfiguration: + """ A container for the target Qt configuration. """ + + def __init__(self, qmake): + """ Initialise the configuration. qmake is the full pathname of the + qmake executable that will provide the configuration. + """ + + inform("Querying qmake about your Qt installation...") + + pipe = os.popen(' '.join([qmake, '-query'])) + + for l in pipe: + l = l.strip() + + tokens = l.split(':', 1) + if isinstance(tokens, list): + if len(tokens) != 2: + error("Unexpected output from qmake: '%s'\n" % l) + + name, value = tokens + else: + name = tokens + value = None + + name = name.replace('/', '_') + + setattr(self, name, value) + + pipe.close() + + +class TargetConfiguration: + """ A container for configuration information about the target. """ + + def __init__(self): + """ Initialise the configuration with default values. """ + + # Values based on the host Python configuration. + py_config = HostPythonConfiguration() + self.py_debug = py_config.debug + self.py_inc_dir = py_config.inc_dir + self.py_venv_inc_dir = py_config.venv_inc_dir + self.py_lib_dir = py_config.lib_dir + self.py_platform = py_config.platform + self.py_version = py_config.version + self.pyqt_bin_dir = py_config.bin_dir + self.pyqt_module_dir = py_config.module_dir + self.pyqt_stubs_dir = os.path.join(py_config.module_dir, 'PyQt5') + self.pyqt_sip_dir = os.path.join(py_config.data_dir, 'sip', 'PyQt5') + self.pyuic_interpreter = py_config.pyuic_interpreter + + # Remaining values. + self.dbus_inc_dirs = [] + self.dbus_lib_dirs = [] + self.dbus_libs = [] + self.debug = False + self.designer_plugin_dir = '' + self.license_dir = source_path('sip') + self.link_full_dll = False + self.no_designer_plugin = False + self.no_docstrings = False + self.no_pydbus = False + self.no_qml_plugin = False + self.no_tools = False + self.prot_is_public = (self.py_platform.startswith('linux') or self.py_platform == 'darwin') + self.qmake = self._find_exe('qmake') + self.qmake_spec = '' + self.qmake_spec_default = '' + self.qmake_variables = [] + self.qml_debug = False + self.py_pylib_dir = '' + self.py_pylib_lib = '' + self.py_pyshlib = '' + self.pydbus_inc_dir = '' + self.pydbus_module_dir = '' + self.pyqt_disabled_features = [] + self.pyqt_modules = [] + self.qml_plugin_dir = '' + self.qsci_api = False + self.qsci_api_dir = '' + self.qtconf_prefix = '' + self.qt_shared = False + self.qt_version = 0 + self.sip = self._find_exe('sip5', 'sip') + self.sip_h_version = None + self.sip_inc_dir = self.py_venv_inc_dir + self.static = False + self.sysroot = '' + self.vend_enabled = False + self.vend_inc_dir = '' + self.vend_lib_dir = '' + + def from_configuration_file(self, config_file): + """ Initialise the configuration with values from a file. config_file + is the name of the configuration file. + """ + + inform("Reading configuration from %s..." % config_file) + + parser = ConfigurationFileParser(config_file) + + # Populate some presets from the command line. + version = version_to_string(self.py_version).split('.') + parser.preset('py_major', version[0]) + parser.preset('py_minor', version[1]) + + parser.preset('sysroot', self.sysroot) + + # Find the section corresponding to the version of Qt. + qt_major = self.qt_version >> 16 + section = None + latest_section = -1 + + for name in parser.sections(): + parts = name.split() + if len(parts) != 2 or parts[0] != 'Qt': + continue + + section_qt_version = version_from_string(parts[1]) + if section_qt_version is None: + continue + + # Major versions must match. + if section_qt_version >> 16 != self.qt_version >> 16: + continue + + # It must be no later that the version of Qt. + if section_qt_version > self.qt_version: + continue + + # Save it if it is the latest so far. + if section_qt_version > latest_section: + section = name + latest_section = section_qt_version + + if section is None: + error("%s does not define a section that covers Qt v%s." % (config_file, version_to_string(self.qt_version))) + + self.py_platform = parser.get(section, 'py_platform', self.py_platform) + self.py_debug = parser.get(section, 'py_debug', self.py_debug) + self.py_inc_dir = parser.get(section, 'py_inc_dir', self.py_inc_dir) + self.py_venv_inc_dir = self.py_inc_dir + self.py_pylib_dir = parser.get(section, 'py_pylib_dir', + self.py_pylib_dir) + self.py_pylib_lib = parser.get(section, 'py_pylib_lib', + self.py_pylib_lib) + self.py_pyshlib = parser.get(section, 'py_pyshlib', self.py_pyshlib) + + self.qt_shared = parser.getboolean(section, 'qt_shared', + self.qt_shared) + + self.pyqt_disabled_features = parser.getlist(section, + 'pyqt_disabled_features', self.pyqt_disabled_features) + self.pyqt_modules = parser.getlist(section, 'pyqt_modules', + self.pyqt_modules) + self.pyqt_module_dir = parser.get(section, 'pyqt_module_dir', + self.pyqt_module_dir) + self.pyqt_bin_dir = parser.get(section, 'pyqt_bin_dir', + self.pyqt_bin_dir) + self.pyqt_stubs_dir = parser.get(section, 'pyqt_stubs_dir', + self.pyqt_stubs_dir) + self.pyqt_sip_dir = parser.get(section, 'pyqt_sip_dir', + self.pyqt_sip_dir) + self.pyuic_interpreter = parser.get(section, 'pyuic_interpreter', + self.pyuic_interpreter) + + self.sip_inc_dir = self.py_venv_inc_dir + + def from_introspection(self, verbose, debug): + """ Initialise the configuration by introspecting the system. """ + + # Check that the enum module is available. + try: + import enum + except ImportError: + error( + "Unable to import enum. Please install the enum34 " + "package from PyPI.") + + # Check there is a private copy of the sip module already installed. + try: + from PyQt5 import sip + except ImportError: + error( + "Unable to import PyQt5.sip. Make sure you have " + "configured SIP to create a private copy of the sip " + "module.") + + # Get the details of the Python interpreter library. + py_major = self.py_version >> 16 + py_minor = (self.py_version >> 8) & 0x0ff + + if sys.platform == 'win32': + debug_suffix = self.get_win32_debug_suffix() + + # See if we are using the limited API. + limited = (py_major == 3 and py_minor >= 4) + if self.py_debug or self.link_full_dll: + limited = False + + if limited: + pylib_lib = 'python%d%s' % (py_major, debug_suffix) + else: + pylib_lib = 'python%d%d%s' % (py_major, py_minor, debug_suffix) + + pylib_dir = self.py_lib_dir + + # Assume Python is a DLL on Windows. + pyshlib = pylib_lib + else: + abi = getattr(sys, 'abiflags', '') + pylib_lib = 'python%d.%d%s' % (py_major, py_minor, abi) + pylib_dir = pyshlib = '' + + # Use distutils to get the additional configuration. + ducfg = sysconfig.get_config_vars() + + config_args = ducfg.get('CONFIG_ARGS', '') + + dynamic_pylib = '--enable-shared' in config_args + if not dynamic_pylib: + dynamic_pylib = '--enable-framework' in config_args + + if dynamic_pylib: + pyshlib = ducfg.get('LDLIBRARY', '') + + exec_prefix = ducfg['exec_prefix'] + multiarch = ducfg.get('MULTIARCH', '') + libdir = ducfg['LIBDIR'] + + if glob.glob('%s/lib/libpython%d.%d*' % (exec_prefix, py_major, py_minor)): + pylib_dir = exec_prefix + '/lib' + elif multiarch != '' and glob.glob('%s/lib/%s/libpython%d.%d*' % (exec_prefix, multiarch, py_major, py_minor)): + pylib_dir = exec_prefix + '/lib/' + multiarch + elif glob.glob('%s/libpython%d.%d*' % (libdir, py_major, py_minor)): + pylib_dir = libdir + + self.py_pylib_dir = pylib_dir + self.py_pylib_lib = pylib_lib + self.py_pyshlib = pyshlib + + # Apply sysroot where necessary. + if self.sysroot != '': + self.py_inc_dir = self._apply_sysroot(self.py_inc_dir) + self.py_venv_inc_dir = self._apply_sysroot(self.py_venv_inc_dir) + self.py_pylib_dir = self._apply_sysroot(self.py_pylib_dir) + self.pyqt_bin_dir = self._apply_sysroot(self.pyqt_bin_dir) + self.pyqt_module_dir = self._apply_sysroot(self.pyqt_module_dir) + self.pyqt_stubs_dir = self._apply_sysroot(self.pyqt_stubs_dir) + self.pyqt_sip_dir = self._apply_sysroot(self.pyqt_sip_dir) + + inform("Determining the details of your Qt installation...") + + # Compile and run the QtCore test program. + test = compile_test_program(self, verbose, 'QtCore', debug=debug, + uses_sip_h=True) + if test is None: + error("Failed to determine the detail of your Qt installation. Try again using the --verbose flag to see more detail about the problem.") + + lines = run_test_program('QtCore', test, verbose) + + self.sip_h_version = lines[0] + + self.qt_shared = (lines[1] == 'shared') + self.pyqt_disabled_features = lines[2:-1] + + if self.pyqt_disabled_features: + inform("Disabled QtCore features: %s" % ', '.join( + self.pyqt_disabled_features)) + + def _apply_sysroot(self, dir_name): + """ Replace any leading sys.prefix of a directory name with sysroot. + """ + + if dir_name.startswith(sys.prefix): + dir_name = self.sysroot + dir_name[len(sys.prefix):] + + return dir_name + + def get_win32_debug_suffix(self): + """ Return the debug-dependent suffix appended to the name of Windows + libraries. + """ + + return '_d' if self.py_debug else '' + + def get_qt_configuration(self): + """ Get the Qt configuration that can be extracted from qmake. """ + + # Query qmake. + qt_config = TargetQtConfiguration(self.qmake) + + self.qt_version = 0 + try: + qt_version_str = qt_config.QT_VERSION + for v in qt_version_str.split('.'): + self.qt_version *= 256 + self.qt_version += int(v) + except AttributeError: + qt_version_str = "3" + + # Check the Qt version number as soon as possible. + if self.qt_version < 0x050000: + error( + "PyQt5 requires Qt v5.0 or later. You seem to be using " + "v%s. Use the --qmake flag to specify the correct version " + "of qmake." % qt_version_str) + + self.designer_plugin_dir = qt_config.QT_INSTALL_PLUGINS + '/designer' + self.qml_plugin_dir = qt_config.QT_INSTALL_PLUGINS + '/PyQt5' + + if self.sysroot == '': + self.sysroot = qt_config.QT_SYSROOT + + # By default, install the API file if QScintilla seems to be installed + # in the default location. + self.qsci_api_dir = os.path.join(qt_config.QT_INSTALL_DATA, 'qsci') + self.qsci_api = os.path.isdir(self.qsci_api_dir) + + # Save the default qmake spec. and finalise the value we want to use. + self.qmake_spec_default = qt_config.QMAKE_SPEC + + # On Windows for Qt versions prior to v5.9.0 we need to be explicit + # about the qmake spec. + if self.qt_version < 0x050900 and self.py_platform == 'win32': + if self.py_version >= 0x030500: + self.qmake_spec = 'win32-msvc2015' + elif self.py_version >= 0x030300: + self.qmake_spec = 'win32-msvc2010' + elif self.py_version >= 0x020600: + self.qmake_spec = 'win32-msvc2008' + elif self.py_version >= 0x020400: + self.qmake_spec = 'win32-msvc.net' + else: + self.qmake_spec = 'win32-msvc' + else: + # Otherwise use the default. + self.qmake_spec = self.qmake_spec_default + + # The binary OS/X Qt installer used to default to XCode. If so then + # use macx-clang. + if self.qmake_spec == 'macx-xcode': + # This will exist (and we can't check anyway). + self.qmake_spec = 'macx-clang' + + def post_configuration(self): + """ Handle any remaining default configuration after having read a + configuration file or introspected the system. + """ + + # The platform may have changed so update the default. + if self.py_platform.startswith('linux') or self.py_platform == 'darwin': + self.prot_is_public = True + + self.vend_inc_dir = self.py_venv_inc_dir + self.vend_lib_dir = self.py_lib_dir + + def apply_pre_options(self, opts): + """ Apply options from the command line that influence subsequent + configuration. opts are the command line options. + """ + + # On Windows the interpreter must be a debug build if a debug version + # is to be built and vice versa. + if sys.platform == 'win32': + if opts.debug: + if not self.py_debug: + error( + "A debug version of Python must be used when " + "--debug is specified.") + elif self.py_debug: + error( + "--debug must be specified when a debug version of " + "Python is used.") + + self.debug = opts.debug + + # Get the target Python version. + if opts.target_py_version is not None: + self.py_version = opts.target_py_version + + # Get the system root. + if opts.sysroot is not None: + self.sysroot = opts.sysroot + + # Determine how to run qmake. + if opts.qmake is not None: + self.qmake = opts.qmake + + # On Windows add the directory that probably contains the Qt DLLs + # to PATH. + if sys.platform == 'win32': + path = os.environ['PATH'] + path = os.path.dirname(self.qmake) + ';' + path + os.environ['PATH'] = path + + if self.qmake is None: + error( + "Use the --qmake argument to explicitly specify a working " + "Qt qmake.") + + if opts.qmakespec is not None: + self.qmake_spec = opts.qmakespec + + if opts.sipincdir is not None: + self.sip_inc_dir = opts.sipincdir + + def apply_post_options(self, opts): + """ Apply options from the command line that override the previous + configuration. opts are the command line options. + """ + + self.pyqt_disabled_features.extend(opts.disabled_features) + + if opts.assumeshared: + self.qt_shared = True + + if opts.bindir is not None: + self.pyqt_bin_dir = opts.bindir + + if opts.licensedir is not None: + self.license_dir = opts.licensedir + + if opts.link_full_dll: + self.link_full_dll = True + + if opts.designerplugindir is not None: + self.designer_plugin_dir = opts.designerplugindir + + if opts.qmlplugindir is not None: + self.qml_plugin_dir = opts.qmlplugindir + + if opts.destdir is not None: + self.pyqt_module_dir = opts.destdir + + if len(opts.modules) > 0: + self.pyqt_modules = opts.modules + + if opts.nodesignerplugin: + self.no_designer_plugin = True + + if opts.nodocstrings: + self.no_docstrings = True + + if opts.nopydbus: + self.no_pydbus = True + + if opts.noqmlplugin: + self.no_qml_plugin = True + + if opts.notools: + self.no_tools = True + + if opts.protispublic is not None: + self.prot_is_public = opts.protispublic + + if opts.pydbusincdir is not None: + self.pydbus_inc_dir = opts.pydbusincdir + + if opts.pyuicinterpreter is not None: + self.pyuic_interpreter = opts.pyuicinterpreter + + if opts.qml_debug: + self.qml_debug = True + + if opts.qsciapidir is not None: + self.qsci_api_dir = opts.qsciapidir + + # Assume we want to install the API file if we have provided an + # installation directory. + self.qsci_api = True + + if opts.qsciapi is not None: + self.qsci_api = opts.qsciapi + + if opts.qsciapidir is not None: + self.qsci_api_dir = opts.qsciapidir + + if opts.qtconf_prefix is not None: + self.qtconf_prefix = opts.qtconf_prefix + + if opts.stubsdir is not None: + self.pyqt_stubs_dir = opts.stubsdir + elif not opts.install_stubs: + self.pyqt_stubs_dir = '' + + if opts.sip is not None: + self.sip = opts.sip + + if opts.sipdir is not None: + self.pyqt_sip_dir = opts.sipdir + elif not opts.install_sipfiles: + self.pyqt_sip_dir = '' + + if opts.static: + self.static = True + + if opts.vendenabled: + self.vend_enabled = True + + if opts.vendincdir is not None: + self.vend_inc_dir = opts.vendincdir + + if opts.vendlibdir is not None: + self.vend_lib_dir = opts.vendlibdir + + # Handle any conflicts. + if not self.qt_shared: + if not self.static: + error( + "Qt has been built as static libraries so the " + "--static argument should be used.") + + if self.vend_enabled and self.static: + error( + "Using the VendorID package when building static " + "libraries makes no sense.") + + def get_pylib_link_arguments(self, name=True): + """ Return a string to append to qmake's LIBS macro to link against the + Python interpreter library. + """ + + args = qmake_quote('-L' + self.py_pylib_dir) + + if name: + args += ' -l' + self.py_pylib_lib + + return args + + def add_sip_h_directives(self, pro_lines): + """ Add the directives required by sip.h to a sequence of .pro file + lines. + """ + + # Make sure the include directory is searched before the Python include + # directory if they are different. + pro_lines.append('INCLUDEPATH += %s' % qmake_quote(self.sip_inc_dir)) + if self.py_inc_dir != self.sip_inc_dir: + pro_lines.append('INCLUDEPATH += %s' % qmake_quote(self.py_inc_dir)) + + # Python.h on Windows seems to embed the need for pythonXY.lib, so tell + # it where it is. + if not self.static: + pro_lines.extend(['win32 {', + ' LIBS += ' + self.get_pylib_link_arguments(name=False), + '}']) + + @staticmethod + def _find_exe(*exes): + """ Find an executable, ie. the first on the path. """ + + path_dirs = os.environ.get('PATH', '').split(os.pathsep) + + for exe in exes: + # Strip any surrounding quotes. + if exe.startswith('"') and exe.endswith('"'): + exe = exe[1:-1] + + if sys.platform == 'win32': + exe = exe + '.exe' + + for d in path_dirs: + exe_path = os.path.join(d, exe) + + if os.access(exe_path, os.X_OK): + return exe_path + + return None + + +def create_optparser(target_config): + """ Create the parser for the command line. target_config is the target + configuration containing default values. + """ + + def store_abspath(option, opt_str, value, parser): + setattr(parser.values, option.dest, os.path.abspath(value)) + + def store_abspath_dir(option, opt_str, value, parser): + if not os.path.isdir(value): + raise optparse.OptionValueError("'%s' is not a directory" % value) + setattr(parser.values, option.dest, os.path.abspath(value)) + + def store_abspath_exe(option, opt_str, value, parser): + if not os.access(value, os.X_OK): + raise optparse.OptionValueError("'%s' is not an executable" % value) + setattr(parser.values, option.dest, os.path.abspath(value)) + + def store_abspath_file(option, opt_str, value, parser): + if not os.path.isfile(value): + raise optparse.OptionValueError("'%s' is not a file" % value) + setattr(parser.values, option.dest, os.path.abspath(value)) + + def store_version(option, opt_str, value, parser): + version = version_from_string(value) + if version is None: + raise optparse.OptionValueError( + "'%s' is not a valid version number" % value) + setattr(parser.values, option.dest, version) + + p = optparse.OptionParser(usage="python %prog [opts] [name=value] " + "[name+=value]", version=PYQT_VERSION_STR) + + # Note: we don't use %default to be compatible with Python 2.3. + p.add_option("--static", "-k", dest='static', default=False, + action='store_true', + help="build modules as static libraries") + p.add_option("--no-docstrings", dest='nodocstrings', default=False, + action='store_true', + help="disable the generation of docstrings") + p.add_option("--trace", "-r", dest='tracing', default=False, + action='store_true', + help="build modules with tracing enabled") + p.add_option("--debug", "-u", dest='debug', default=False, + action='store_true', + help="build modules with debugging symbols") + p.add_option("--qml-debug", dest='qml_debug', default=False, + action='store_true', + help="enable the QML debugging infrastructure") + p.add_option("--verbose", "-w", dest='verbose', default=False, + action='store_true', + help="enable verbose output during configuration") + + p.add_option("--concatenate", "-c", dest='concat', default=False, + action='store_true', + help="concatenate each module's C++ source files") + p.add_option("--concatenate-split", "-j", dest='split', type='int', + default=1, metavar="N", + help="split the concatenated C++ source files into N pieces " + "[default: 1]") + + # Configuration. + g = optparse.OptionGroup(p, title="Configuration") + g.add_option("--confirm-license", dest='license_confirmed', default=False, + action='store_true', + help="confirm acceptance of the license") + g.add_option("--license-dir", dest='licensedir', type='string', + default=None, action='callback', callback=store_abspath, + metavar="DIR", + help="the license file can be found in DIR [default: " + "%s]" % target_config.license_dir) + g.add_option("--target-py-version", dest='target_py_version', + type='string', action='callback', callback=store_version, + metavar="VERSION", + help="the major.minor version of the target Python [default: " + "%s]" % version_to_string(target_config.py_version, + parts=2)) + g.add_option("--link-full-dll", dest='link_full_dll', + default=False, action='store_true', + help="on Windows link against the full Python DLL rather than the " + "limited API DLL") + g.add_option("--sysroot", dest='sysroot', type='string', action='callback', + callback=store_abspath_dir, metavar="DIR", + help="DIR is the target system root directory") + g.add_option("--spec", dest='qmakespec', default=None, action='store', + metavar="SPEC", + help="pass -spec SPEC to qmake") + g.add_option("--disable", dest='disabled_modules', default=[], + action='append', metavar="MODULE", + help="disable the specified MODULE [default: checks for all " + "modules will be enabled]") + g.add_option("--disable-feature", dest='disabled_features', default=[], + action='append', metavar="FEATURE", + help="disable the specified FEATURE") + g.add_option("--enable", "-e", dest='modules', default=[], action='append', + metavar="MODULE", + help="enable checks for the specified MODULE [default: checks for " + "all modules will be enabled]") + g.add_option("--no-designer-plugin", dest='nodesignerplugin', + default=False, action='store_true', + help="disable the building of the Python plugin for Qt Designer " + "[default: enabled]") + g.add_option("--no-qml-plugin", dest='noqmlplugin', default=False, + action='store_true', + help="disable the building of the Python plugin for qmlscene " + "[default: enabled]") + g.add_option("--assume-shared", dest='assumeshared', default=False, + action='store_true', + help="assume that the Qt libraries have been built as shared " + "libraries [default: check]") + g.add_option("--qtconf-prefix", dest='qtconf_prefix', default=None, + action='store', metavar="DIR", + help="embed a qt.conf file in the QtCore module that has Prefix " + "set to DIR") + g.add_option("--no-timestamp", "-T", dest='notimestamp', default=False, + action='store_true', + help="suppress timestamps in the header comments of generated " + "code [default: include timestamps]") + g.add_option("--configuration", dest='config_file', type='string', + action='callback', callback=store_abspath_file, metavar="FILE", + help="FILE contains the target configuration") + + g.add_option("--protected-is-public", dest='protispublic', default=None, + action='store_true', + help="enable building with 'protected' redefined as 'public' " + "[default: %s]" % + "enabled" if target_config.prot_is_public + else "disabled") + g.add_option("--protected-not-public", dest='protispublic', default=None, + action='store_false', + help="disable building with 'protected' redefined as 'public'") + + g.add_option("--pyuic5-interpreter", dest='pyuicinterpreter', + type='string', default=None, action='callback', + callback=store_abspath_exe, metavar="FILE", + help="the name of the Python interpreter to run the pylupdate5, " + "pyrcc5 and pyuic5 wrappers is FILE [default: %s]" % + target_config.pyuic_interpreter) + + g.add_option("--qmake", "-q", dest='qmake', type='string', default=None, + action='callback', callback=store_abspath_exe, metavar="FILE", + help="the pathname of qmake is FILE [default: " + "%s]" % (target_config.qmake or "search PATH")) + + g.add_option("--sip", dest='sip', type='string', default=None, + action='callback', callback=store_abspath_exe, metavar="FILE", + help="the pathname of sip is FILE [default: " + "%s]" % (target_config.sip or "None")) + g.add_option("--sip-incdir", dest='sipincdir', type='string', + default=None, action='callback', callback=store_abspath_dir, + metavar="DIR", + help="the directory containing the sip.h header file is DIR " + "[default: %s]" % target_config.sip_inc_dir) + g.add_option("--allow-sip-warnings", dest='fatal_warnings', + default=True, action='store_false', + help="allow sip to issue non-fatal warning messages " + "[default: warning messages are treated as errors]") + + g.add_option("--no-python-dbus", dest='nopydbus', + default=False, action='store_true', + help="disable the Qt support for the standard Python DBus " + "bindings [default: enabled]") + g.add_option("--dbus", "-s", dest='pydbusincdir', type='string', + default=None, action='callback', callback=store_abspath_dir, + metavar="DIR", + help="the directory containing the dbus/dbus-python.h header is " + "DIR [default: supplied by pkg-config]") + p.add_option_group(g) + + # Installation. + g = optparse.OptionGroup(p, title="Installation") + g.add_option("--bindir", "-b", dest='bindir', type='string', default=None, + action='callback', callback=store_abspath, metavar="DIR", + help="install pyuic5, pyrcc5 and pylupdate5 in DIR [default: " + "%s]" % target_config.pyqt_bin_dir) + g.add_option("--destdir", "-d", dest='destdir', type='string', + default=None, action='callback', callback=store_abspath, + metavar="DIR", + help="install the PyQt5 Python package in DIR [default: " + "%s]" % target_config.pyqt_module_dir) + g.add_option("--designer-plugindir", dest='designerplugindir', + type='string', default=None, action='callback', + callback=store_abspath, metavar="DIR", + help="install the Python plugin for Qt Designer in DIR " + "[default: QT_INSTALL_PLUGINS/designer]") + g.add_option("--qml-plugindir", dest='qmlplugindir', type='string', + default=None, action='callback', callback=store_abspath, + metavar="DIR", + help="install the Python plugin for qmlscene in DIR " + "[default: QT_INSTALL_PLUGINS/PyQt5]") + g.add_option("--no-sip-files", action="store_false", default=True, + dest="install_sipfiles", help="disable the installation of the " + ".sip files [default: enabled]") + g.add_option("--sipdir", "-v", dest='sipdir', type='string', default=None, + action='callback', callback=store_abspath, metavar="DIR", + help="install the PyQt5 .sip files in DIR [default: %s]" % + target_config.pyqt_sip_dir) + g.add_option("--no-dist-info", action="store_false", default=True, + dest="distinfo", + help="do not install the dist-info directory") + g.add_option("--no-stubs", action="store_false", default=True, + dest="install_stubs", help="disable the installation of the PEP " + "484 stub files [default: enabled]") + g.add_option("--stubsdir", dest='stubsdir', type='string', default=None, + action='callback', callback=store_abspath, metavar="DIR", + help="install the PEP 484 stub files in DIR [default: " + "%s]" % target_config.pyqt_stubs_dir) + g.add_option("--no-tools", action="store_true", default=False, + dest="notools", + help="disable the building of pyuic5, pyrcc5 and pylupdate5 " + "[default: enabled]") + p.add_option_group(g) + + # Vendor ID. + g = optparse.OptionGroup(p, title="VendorID support") + g.add_option("--vendorid", "-i", dest='vendenabled', default=False, + action='store_true', + help="enable checking of signed interpreters using the VendorID " + "package [default: %s]" % + "enabled" if target_config.vend_enabled else "disabled") + g.add_option("--vendorid-incdir", "-l", dest='vendincdir', type='string', + default=None, action='callback', callback=store_abspath_dir, + metavar="DIR", + help="the VendorID header file is installed in DIR [default: " + "%s]" % target_config.vend_inc_dir) + g.add_option("--vendorid-libdir", "-m", dest='vendlibdir', type='string', + default=None, action='callback', callback=store_abspath_dir, + metavar="DIR", + help="the VendorID library is installed in DIR [default: " + "%s]" % target_config.vend_lib_dir) + p.add_option_group(g) + + # QScintilla. + g = optparse.OptionGroup(p, title="QScintilla support") + g.add_option("--qsci-api", "-a", dest='qsciapi', default=None, + action='store_true', + help="always install the PyQt API file for QScintilla [default: " + "install only if QScintilla installed]") + g.add_option("--no-qsci-api", dest='qsciapi', default=None, + action='store_false', + help="do not install the PyQt API file for QScintilla [default: " + "install only if QScintilla installed]") + g.add_option("--qsci-api-destdir", "-n", dest='qsciapidir', type='string', + default=None, action='callback', callback=store_abspath, + metavar="DIR", + help="install the PyQt5 API file for QScintilla in DIR [default: " + "QT_INSTALL_DATA/qsci]") + p.add_option_group(g) + + return p + + +def check_modules(target_config, disabled_modules, verbose): + """ Check which modules can be built and update the target configuration + accordingly. target_config is the target configuration. disabled_modules + is the list of modules that have been explicitly disabled. verbose is set + if the output is to be displayed. + """ + + target_config.pyqt_modules.append('QtCore') + + check_module(target_config, disabled_modules, verbose, 'QtGui') + check_module(target_config, disabled_modules, verbose, 'QtHelp', + 'qhelpengine.h', 'new QHelpEngine("foo")') + check_module(target_config, disabled_modules, verbose, 'QtMultimedia', + 'QAudioDeviceInfo', 'new QAudioDeviceInfo()') + check_module(target_config, disabled_modules, verbose, + 'QtMultimediaWidgets', 'QVideoWidget', 'new QVideoWidget()') + check_module(target_config, disabled_modules, verbose, 'QtNetwork') + check_module(target_config, disabled_modules, verbose, 'QtOpenGL', 'qgl.h', + 'new QGLWidget()') + check_module(target_config, disabled_modules, verbose, 'QtPrintSupport') + check_module(target_config, disabled_modules, verbose, 'QtQml', + 'qjsengine.h', 'new QJSEngine()') + check_module(target_config, disabled_modules, verbose, 'QtQuick', + 'qquickwindow.h', 'new QQuickWindow()') + check_module(target_config, disabled_modules, verbose, 'QtSql', + 'qsqldatabase.h', 'new QSqlDatabase()') + check_module(target_config, disabled_modules, verbose, 'QtSvg', + 'qsvgwidget.h', 'new QSvgWidget()') + check_module(target_config, disabled_modules, verbose, 'QtTest', 'QtTest', + 'QTest::qSleep(0)') + check_module(target_config, disabled_modules, verbose, 'QtWebKit', + 'qwebkitglobal.h', 'qWebKitVersion()') + check_module(target_config, disabled_modules, verbose, 'QtWebKitWidgets', + 'qwebpage.h', 'new QWebPage()') + check_module(target_config, disabled_modules, verbose, 'QtWidgets', + 'qwidget.h', 'new QWidget()') + check_module(target_config, disabled_modules, verbose, 'QtXml', 'qdom.h', + 'new QDomDocument()') + check_module(target_config, disabled_modules, verbose, 'QtXmlPatterns', + 'qxmlname.h', 'new QXmlName()') + + if target_config.qt_shared: + check_module(target_config, disabled_modules, verbose, 'QtDesigner', + ('QExtensionFactory', 'customwidget.h'), + 'new QExtensionFactory()') + else: + inform("QtDesigner module disabled with static Qt libraries.") + + check_module(target_config, disabled_modules, verbose, 'QAxContainer', + 'qaxobject.h', 'new QAxObject()') + + check_module(target_config, disabled_modules, verbose, 'QtDBus', + 'qdbusconnection.h', 'QDBusConnection::systemBus()') + + if target_config.qt_version >= 0x050100: + check_5_1_modules(target_config, disabled_modules, verbose) + + if target_config.qt_version >= 0x050200: + check_5_2_modules(target_config, disabled_modules, verbose) + + if target_config.qt_version >= 0x050300: + check_5_3_modules(target_config, disabled_modules, verbose) + + if target_config.qt_version >= 0x050400: + check_5_4_modules(target_config, disabled_modules, verbose) + + if target_config.qt_version >= 0x050500: + check_5_5_modules(target_config, disabled_modules, verbose) + + if target_config.qt_version >= 0x050600: + check_5_6_modules(target_config, disabled_modules, verbose) + + if target_config.qt_version >= 0x050a00: + check_5_10_modules(target_config, disabled_modules, verbose) + + +def check_5_1_modules(target_config, disabled_modules, verbose): + """ Check which modules introduced in Qt v5.1 can be built and update the + target configuration accordingly. target_config is the target + configuration. disabled_modules is the list of modules that have been + explicitly disabled. verbose is set if the output is to be displayed. + """ + + # Check the OpenGL functions. + if 'PyQt_OpenGL' in target_config.pyqt_disabled_features: + pass + elif 'PyQt_Desktop_OpenGL' in target_config.pyqt_disabled_features: + check_module(target_config, disabled_modules, verbose, + '_QOpenGLFunctions_ES2', 'qopenglfunctions_es2.h', + 'new QOpenGLFunctions_ES2()') + else: + desktop_versions = ( + '1_0', '1_1', '1_2', '1_3', '1_4', '1_5', + '2_0', '2_1', + '3_0', '3_1', + '3_2_Compatibility', '3_2_Core', + '3_3_Compatibility', '3_3_Core', + '4_0_Compatibility', '4_0_Core', + '4_1_Compatibility', '4_1_Core', + '4_2_Compatibility', '4_2_Core', + '4_3_Compatibility', '4_3_Core', + '4_4_Compatibility', '4_4_Core', + '4_5_Compatibility', '4_5_Core') + + for ogl in desktop_versions: + ogl_module = '_QOpenGLFunctions_' + ogl + ogl_h = 'qopenglfunctions_' + ogl.lower() + '.h' + ogl_ctor = 'new QOpenGLFunctions_' + ogl + '()' + + check_module(target_config, disabled_modules, verbose, ogl_module, + ogl_h, ogl_ctor) + + check_module(target_config, disabled_modules, verbose, 'QtSensors', + 'qsensor.h', 'new QSensor(QByteArray())') + check_module(target_config, disabled_modules, verbose, 'QtSerialPort', + 'qserialport.h', 'new QSerialPort()') + check_module(target_config, disabled_modules, verbose, 'QtX11Extras', + 'QX11Info', 'QX11Info::display()') + + +def check_5_2_modules(target_config, disabled_modules, verbose): + """ Check which modules introduced in Qt v5.2 can be built and update the + target configuration accordingly. target_config is the target + configuration. disabled_modules is the list of modules that have been + explicitly disabled. verbose is set if the output is to be displayed. + """ + + check_module(target_config, disabled_modules, verbose, 'QtBluetooth', + 'qbluetoothaddress.h', 'new QBluetoothAddress()') + check_module(target_config, disabled_modules, verbose, 'QtMacExtras', + 'qmacpasteboardmime.h', 'class Foo : public QMacPasteboardMime {}') + check_module(target_config, disabled_modules, verbose, 'QtPositioning', + 'qgeoaddress.h', 'new QGeoAddress()') + check_module(target_config, disabled_modules, verbose, 'QtWinExtras', + 'QtWin', 'QtWin::isCompositionEnabled()') + + +def check_5_3_modules(target_config, disabled_modules, verbose): + """ Check which modules introduced in Qt v5.3 can be built and update the + target configuration accordingly. target_config is the target + configuration. disabled_modules is the list of modules that have been + explicitly disabled. verbose is set if the output is to be displayed. + """ + + check_module(target_config, disabled_modules, verbose, 'QtQuickWidgets', + 'qquickwidget.h', 'new QQuickWidget()') + check_module(target_config, disabled_modules, verbose, 'QtWebSockets', + 'qwebsocket.h', 'new QWebSocket()') + check_module(target_config, disabled_modules, verbose, 'Enginio', + 'enginioclient.h', 'new EnginioClient()') + + +def check_5_4_modules(target_config, disabled_modules, verbose): + """ Check which modules introduced in Qt v5.4 can be built and update the + target configuration accordingly. target_config is the target + configuration. disabled_modules is the list of modules that have been + explicitly disabled. verbose is set if the output is to be displayed. + """ + + check_module(target_config, disabled_modules, verbose, 'QtWebChannel', + 'qwebchannel.h', 'new QWebChannel()') + check_module(target_config, disabled_modules, verbose, + 'QtWebEngineWidgets', 'qwebengineview.h', 'new QWebEngineView()') + + +def check_5_5_modules(target_config, disabled_modules, verbose): + """ Check which modules introduced in Qt v5.5 can be built and update the + target configuration accordingly. target_config is the target + configuration. disabled_modules is the list of modules that have been + explicitly disabled. verbose is set if the output is to be displayed. + """ + + check_module(target_config, disabled_modules, verbose, 'QtLocation', + 'qplace.h', 'new QPlace()') + check_module(target_config, disabled_modules, verbose, 'QtNfc', + 'qnearfieldmanager.h', 'new QNearFieldManager()') + + +def check_5_6_modules(target_config, disabled_modules, verbose): + """ Check which modules introduced in Qt v5.6 can be built and update the + target configuration accordingly. target_config is the target + configuration. disabled_modules is the list of modules that have been + explicitly disabled. verbose is set if the output is to be displayed. + """ + + check_module(target_config, disabled_modules, verbose, 'QtWebEngineCore', + 'qtwebenginecoreversion.h', + 'const char *v = QTWEBENGINECORE_VERSION_STR') + + # This may have appeared in an earlier version but this is as far back as + # choose to go. + check_module(target_config, disabled_modules, verbose, 'QtWebEngine', + 'qtwebengineversion.h', + 'const char *v = QTWEBENGINE_VERSION_STR') + + +def check_5_10_modules(target_config, disabled_modules, verbose): + """ Check which modules introduced in Qt v5.10 can be built and update the + target configuration accordingly. target_config is the target + configuration. disabled_modules is the list of modules that have been + explicitly disabled. verbose is set if the output is to be displayed. + """ + + check_module(target_config, disabled_modules, verbose, 'QtNetworkAuth', + 'qtnetworkauthversion.h', + 'const char *v = QTNETWORKAUTH_VERSION_STR') + + +def generate_makefiles(target_config, verbose, parts, tracing, fatal_warnings, distinfo): + """ Generate the makefiles to build everything. target_config is the + target configuration. verbose is set if the output is to be displayed. + parts is the number of parts the generated code should be split into. + tracing is set if the generated code should include tracing calls. + fatal_warnings is set if warnings are fatal. distinfo is set if a + .dist-info directory should be created. + """ + + # For the top-level .pro file. + toplevel_pro = 'PyQt5.pro' + subdirs = [] + + # Set the SIP platform, version and feature flags. + sip_flags = get_sip_flags(target_config) + + # Go through the modules. + pyqt_modules = list(target_config.pyqt_modules) + + # Add the internal modules if they are required. + if not target_config.no_tools: + pyqt_modules.append('pylupdate') + pyqt_modules.append('pyrcc') + + for mname in pyqt_modules: + metadata = MODULE_METADATA[mname] + + if metadata.qpy_lib: + sp_qpy_dir = source_path('qpy', mname) + + qpy_c_sources = [os.path.relpath(f, mname) + for f in matching_files(os.path.join(sp_qpy_dir, '*.c'))] + qpy_cpp_sources = [os.path.relpath(f, mname) + for f in matching_files(os.path.join(sp_qpy_dir, '*.cpp'))] + qpy_headers = [os.path.relpath(f, mname) + for f in matching_files(os.path.join(sp_qpy_dir, '*.h'))] + + qpy_sources = qpy_c_sources + qpy_cpp_sources + else: + qpy_sources = [] + qpy_headers = [] + + generate_sip_module_code(target_config, verbose, parts, tracing, mname, + fatal_warnings, sip_flags, metadata.public, qpy_sources, + qpy_headers) + subdirs.append(mname) + + # Generate the composite module. + qtmod_sipdir = os.path.join('sip', 'Qt') + mk_clean_dir(qtmod_sipdir) + + qtmod_sipfile = os.path.join(qtmod_sipdir, 'Qtmod.sip') + f = open_for_writing(qtmod_sipfile) + + f.write('''%CompositeModule PyQt5.Qt + +''') + + for mname in COMPOSITE_COMPONENTS: + if mname in target_config.pyqt_modules: + f.write('%%Include %s/%smod.sip\n' % (mname, mname)) + + f.close() + + generate_sip_module_code(target_config, verbose, parts, tracing, 'Qt', + fatal_warnings, sip_flags, False) + subdirs.append('Qt') + + wrappers = [] + if not target_config.no_tools: + # Generate the pylupdate5 and pyrcc5 wrappers. + for tool in ('pylupdate', 'pyrcc'): + wrappers.append((tool, + generate_tool_wrapper(target_config, tool + '5', + 'PyQt5.%s_main' % tool))) + + # Generate the pyuic5 wrapper. + wrappers.append(('pyuic', + generate_tool_wrapper(target_config, 'pyuic5', + 'PyQt5.uic.pyuic'))) + + # Generate the Qt Designer plugin. + if not target_config.no_designer_plugin and 'QtDesigner' in target_config.pyqt_modules: + if generate_plugin_makefile(target_config, verbose, 'designer', target_config.designer_plugin_dir, "Qt Designer"): + subdirs.append('designer') + + # Generate the qmlscene plugin. + if not target_config.no_qml_plugin and 'QtQml' in target_config.pyqt_modules: + if generate_plugin_makefile(target_config, verbose, 'qmlscene', target_config.qml_plugin_dir, "qmlscene"): + subdirs.append('qmlscene') + + rewrite_qmldir(target_config, 'Charts', + source_path('examples', 'quick', 'tutorials', 'extending', + 'chapter6-plugins')) + + # Generate the QScintilla API file. + if target_config.qsci_api: + inform("Generating the QScintilla API file...") + f = open_for_writing('PyQt5.api') + + for mname in target_config.pyqt_modules: + if MODULE_METADATA[mname].public: + api = open(mname + '.api') + + for l in api: + f.write('PyQt5.' + l) + + api.close() + os.remove(mname + '.api') + + f.close() + + # Generate the Python dbus module. + if target_config.pydbus_module_dir != '': + mname = 'dbus' + + mk_dir(mname) + sp_src_dir = source_path(mname) + + lib_dirs = ['-L' + l for l in target_config.dbus_lib_dirs] + lib_names = ['-l' + l for l in target_config.dbus_libs] + libs = ' '.join(lib_dirs + lib_names) + + generate_module_makefile(target_config, verbose, mname, + include_paths=target_config.dbus_inc_dirs, libs=libs, + install_path=target_config.pydbus_module_dir, + src_dir=sp_src_dir) + + subdirs.append(mname) + + # Generate the top-level .pro file. + all_installs = [] + + inform("Generating the top-level .pro file...") + out_f = open_for_writing(toplevel_pro) + + root_dir = qmake_quote(target_config.pyqt_module_dir + '/PyQt5') + + mod_ext = '.pyd' if sys.platform == 'win32' else '.so' + + for mname in pyqt_modules: + all_installs.append(root_dir + '/' + mname + mod_ext) + + all_installs.append(root_dir + '/Qt' + mod_ext) + + out_f.write('''TEMPLATE = subdirs +CONFIG += ordered nostrip +SUBDIRS = %s + +init_py.files = %s +init_py.path = %s +INSTALLS += init_py +''' % (' '.join(subdirs), source_path('__init__.py'), root_dir)) + + all_installs.append(root_dir + '/__init__.py') + + # Install the uic module. + out_f.write(''' +uic_package.files = %s +uic_package.path = %s +INSTALLS += uic_package +''' % (source_path('pyuic', 'uic'), root_dir)) + + all_installs.append(root_dir + '/uic') + + # Install the tool main scripts and wrappers. + if wrappers: + wrapper_exes = [] + for tool, wrapper in wrappers: + if tool != 'pyuic': + tool_main = tool + '_main.py' + + out_f.write(''' +%s.files = %s +%s.path = %s +INSTALLS += %s +''' % (tool, source_path('sip', tool, tool_main), tool, root_dir, tool)) + + all_installs.append(root_dir + '/' + tool_main) + + wrapper_exes.append(wrapper) + all_installs.append(target_config.pyqt_bin_dir + '/' + wrapper) + + out_f.write(''' +tools.files = %s +tools.path = %s +INSTALLS += tools +''' % (' '.join(wrapper_exes), qmake_quote(target_config.pyqt_bin_dir))) + + # Install the .sip files. + if target_config.pyqt_sip_dir: + for mname, metadata in MODULE_METADATA.items(): + if metadata.public and mname != 'Qt': + sip_files = matching_files(source_path('sip', mname, '*.sip')) + + if len(sip_files) != 0: + mdir = target_config.pyqt_sip_dir + '/' + mname + + out_f.write(''' +sip%s.path = %s +sip%s.files = %s +INSTALLS += sip%s +''' % ( + mname, qmake_quote(mdir), + mname, ' '.join([qmake_quote(s) for s in sip_files]), + mname +)) + + all_installs.append(mdir) + + # Install the stub files. + if target_config.py_version >= 0x030500 and target_config.pyqt_stubs_dir: + pyi_names = [mname + '.pyi' + for mname in target_config.pyqt_modules if mname[0] != '_'] + + out_f.write(''' +pep484_stubs.files = %s +pep484_stubs.path = %s +INSTALLS += pep484_stubs +''' % (' '.join(pyi_names), + qmake_quote(target_config.pyqt_stubs_dir))) + + all_installs.extend( + [target_config.pyqt_stubs_dir + '/' + pyi + for pyi in pyi_names]) + + # Install the QScintilla .api file. + if target_config.qsci_api: + api_dir = target_config.qsci_api_dir + '/api/python' + + out_f.write(''' +qscintilla_api.files = PyQt5.api +qscintilla_api.path = %s +INSTALLS += qscintilla_api +''' % qmake_quote(api_dir)) + + all_installs.append(api_dir + '/PyQt5.api') + + if distinfo: + # The command to run to generate the .dist-info directory. + distinfo_dir = os.path.join(target_config.pyqt_module_dir, + 'PyQt5-' + PYQT_VERSION_STR + '.dist-info') + mk_distinfo = sys.executable + ' mk_distinfo.py $(INSTALL_ROOT)' + distinfo_dir + ' installed.txt' + + out_f.write(''' +distinfo.extra = %s +distinfo.path = %s +INSTALLS += distinfo +''' % (mk_distinfo, root_dir)) + + # Create the file containing all installed files. + installed = open('installed.txt', 'w') + + for install in all_installs: + installed.write(install + '\n') + + installed.close() + + out_f.close() + + # Make the wrappers executable on platforms that support it. If we did it + # after running qmake then (on Linux) the execute bits would be stripped on + # installation. + if target_config.py_platform != 'win32': + for tool, wrapper in wrappers: + inform("Making the %s wrapper executable..." % wrapper) + + sbuf = os.stat(wrapper) + mode = sbuf.st_mode + mode |= (stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH) + os.chmod(wrapper, mode) + + # Generate the makefiles. + inform("Generating the Makefiles...") + run_qmake(target_config, verbose, toplevel_pro, recursive=True) + + +def generate_plugin_makefile(target_config, verbose, plugin_dir, install_dir, plugin_name): + """ Generate the makefile for a plugin that embeds the Python interpreter. + target_config is the target configuration. verbose is set if the output is + to be displayed. plugin_dir is the name of the directory containing the + plugin implementation. install_dir is the name of the directory that the + plugin will be installed in. plugin_name is a descriptive name of the + plugin to be used in user messages. Returns True if the makefile could be + generated. + """ + + # Check we have a shared interpreter library. + if target_config.py_pyshlib == '': + inform("The %s plugin was disabled because a dynamic Python library couldn't be found." % plugin_name) + return False + + # Create the qmake project file. + inform("Generating the %s plugin .pro file..." % plugin_name) + + sp_plugin_dir = source_path(plugin_dir) + + fin = open(os.path.join(sp_plugin_dir, '%s.pro-in' % plugin_dir)) + prj = fin.read() + fin.close() + + prj = prj.replace('@QTCONFIG@', + 'debug' if target_config.debug else 'release') + prj = prj.replace('@PYINCDIR@', qmake_quote(target_config.py_inc_dir)) + prj = prj.replace('@SIPINCDIR@', qmake_quote(target_config.sip_inc_dir)) + prj = prj.replace('@PYLINK@', target_config.get_pylib_link_arguments()) + prj = prj.replace('@PYSHLIB@', target_config.py_pyshlib) + prj = prj.replace('@QTPLUGINDIR@', qmake_quote(install_dir)) + + pro_name = os.path.join(plugin_dir, '%s.pro' % plugin_dir) + + mk_dir(plugin_dir) + fout = open_for_writing(pro_name) + fout.write(prj) + + if sp_plugin_dir != plugin_dir: + fout.write(''' +INCLUDEPATH += %s +VPATH = %s +''' % (qmake_quote(sp_plugin_dir), qmake_quote(sp_plugin_dir))) + + fout.write('\n'.join(target_config.qmake_variables) + '\n') + + fout.close() + + return True + + +def pro_sources(src_dir, other_headers=None, other_sources=None): + """ Return the HEADERS, SOURCES and OBJECTIVE_SOURCES variables for a .pro + file by introspecting a directory. src_dir is the name of the directory. + other_headers is an optional list of other header files. other_sources is + an optional list of other source files. + """ + + pro_lines = [] + + headers = [os.path.basename(f) for f in matching_files('%s/*.h' % src_dir)] + + if other_headers is not None: + headers += other_headers + + if len(headers) != 0: + pro_lines.append('HEADERS = %s' % ' '.join(headers)) + + sources = [os.path.basename(f) for f in matching_files('%s/*.c' % src_dir)] + + for f in matching_files('%s/*.cpp' % src_dir): + f = os.path.basename(f) + + # Exclude any moc generated C++ files that might be around from a + # previous build. + if not f.startswith('moc_'): + sources.append(f) + + if other_sources is not None: + sources += other_sources + + if len(sources) != 0: + pro_lines.append('SOURCES = %s' % ' '.join([qmake_quote(s) for s in sources])) + + objective_sources = [ + os.path.basename(f) for f in matching_files('%s/*.mm' % src_dir)] + + if len(objective_sources) != 0: + pro_lines.append('OBJECTIVE_SOURCES = %s' % ' '.join([qmake_quote(s) for s in objective_sources])) + + return pro_lines + + +def generate_tool_wrapper(target_config, wrapper, module): + """ Create a platform dependent executable wrapper for a tool module. + target_config is the target configuration. wrapper is the name of the + wrapper without any extension. module is the tool module. Returns the + platform specific name of the wrapper. + """ + + if target_config.py_platform == 'win32': + wrapper += '.bat' + + inform("Generating the %s wrapper..." % wrapper) + + exe = quote(target_config.pyuic_interpreter) + + wf = open_for_writing(wrapper) + + if target_config.py_platform == 'win32': + wf.write('@%s -m %s %%1 %%2 %%3 %%4 %%5 %%6 %%7 %%8 %%9\n' % (exe, module)) + else: + wf.write('#!/bin/sh\n') + wf.write('exec %s -m %s ${1+"$@"}\n' % (exe, module)) + + wf.close() + + return wrapper + + +def rewrite_qmldir(target_config, module, module_dir): + """ Re-write a qmldir file for a module that used the qmlscene plugin. + target_config is the target configuration. module is the name of the QML + module. module_dir is the name of the directory containing the QML module. + """ + + qmldir_fn = os.path.join(module_dir, module, 'qmldir') + + inform("Re-writing %s..." % qmldir_fn) + + qmldir = open_for_writing(qmldir_fn) + qmldir.write('module %s\nplugin pyqt5qmlplugin %s\n' % (module, target_config.qml_plugin_dir)) + qmldir.close() + + +def quote(path): + """ Return a path with quotes added if it contains spaces. path is the + path. + """ + + if ' ' in path: + path = '"%s"' % path + + return path + + +def qmake_quote(path): + """ Return a path quoted for qmake if it contains spaces. path is the + path. + """ + + if ' ' in path: + path = '$$quote(%s)' % path + + return path + + +def inform_user(target_config, sip_version): + """ Tell the user the values that are going to be used. target_config is + the target configuration. sip_version is the SIP version string. + """ + + inform("Qt v%s is being used." % + version_to_string(target_config.qt_version)) + + inform("The qmake executable is %s." % target_config.qmake) + + inform( + "Qt is built as a %s library." % ( + "shared" if target_config.qt_shared else "static")) + + if target_config.sysroot != '': + inform("The system root directory is %s." % target_config.sysroot) + + inform("SIP %s is being used." % sip_version) + inform("The sip executable is %s." % target_config.sip) + inform("These PyQt5 modules will be built: %s." % ', '.join(target_config.pyqt_modules)) + inform("The PyQt5 Python package will be installed in %s." % target_config.pyqt_module_dir) + + if target_config.debug: + inform("A debug version of PyQt5 will be built.") + + if target_config.py_debug: + inform("A debug build of Python is being used.") + + if target_config.no_docstrings: + inform("PyQt5 is being built without generated docstrings.") + else: + inform("PyQt5 is being built with generated docstrings.") + + if target_config.prot_is_public: + inform("PyQt5 is being built with 'protected' redefined as 'public'.") + + if target_config.no_designer_plugin: + inform("The Designer plugin will not be built.") + else: + inform("The Designer plugin will be installed in %s." % + target_config.designer_plugin_dir) + + if target_config.no_qml_plugin: + inform("The qmlscene plugin will not be built.") + else: + inform("The qmlscene plugin will be installed in %s." % + target_config.qml_plugin_dir) + + if target_config.qsci_api: + inform( + "The QScintilla API file will be installed in %s." % + os.path.join( + target_config.qsci_api_dir, 'api', 'python')) + + if target_config.py_version >= 0x030500 and target_config.pyqt_stubs_dir: + inform("The PyQt5 PEP 484 stub files will be installed in %s." % + target_config.pyqt_stubs_dir) + + if target_config.pydbus_module_dir: + inform( + "The dbus support module will be installed in %s." % + target_config.pydbus_module_dir) + + if target_config.pyqt_sip_dir: + inform("The PyQt5 .sip files will be installed in %s." % + target_config.pyqt_sip_dir) + + if target_config.no_tools: + inform("pyuic5, pyrcc5 and pylupdate5 will not be built.") + else: + inform("pyuic5, pyrcc5 and pylupdate5 will be installed in %s." % + target_config.pyqt_bin_dir) + + inform("The interpreter used by pyuic5 is %s." % + target_config.pyuic_interpreter) + + if target_config.vend_enabled: + inform("PyQt5 will only be usable with signed interpreters.") + + +def run_qmake(target_config, verbose, pro_name, makefile_name='', fatal=True, recursive=False): + """ Run qmake against a .pro file. target_config is the target + configuration. verbose is set if the output is to be displayed. pro_name + is the name of the .pro file. makefile_name is the name of the makefile + to generate (and defaults to Makefile). fatal is set if a qmake failure is + considered a fatal error, otherwise False is returned if qmake fails. + recursive is set to use the -recursive flag. + """ + + # qmake doesn't behave consistently if it is not run from the directory + # containing the .pro file - so make sure it is. + pro_dir, pro_file = os.path.split(pro_name) + if pro_dir != '': + cwd = os.getcwd() + os.chdir(pro_dir) + else: + cwd = None + + mf = makefile_name if makefile_name != '' else 'Makefile' + + remove_file(mf) + + args = [quote(target_config.qmake)] + + if target_config.qmake_spec != target_config.qmake_spec_default: + args.append('-spec') + args.append(target_config.qmake_spec) + + if makefile_name != '': + args.append('-o') + args.append(makefile_name) + + if recursive: + args.append('-recursive') + + args.append(pro_file) + + run_command(' '.join(args), verbose) + + if not os.access(mf, os.F_OK): + if fatal: + error( + "%s failed to create a makefile from %s." % + (target_config.qmake, pro_name)) + + return False + + # Restore the current directory. + if cwd is not None: + os.chdir(cwd) + + return True + + +def run_make(target_config, verbose, exe, makefile_name): + """ Run make against a makefile to create an executable. target_config is + the target configuration. verbose is set if the output is to be displayed. + exe is the platform independent name of the executable that will be + created. makefile_name is the name of the makefile. Returns the platform + specific name of the executable, or None if an executable wasn't created. + """ + + # Guess the name of make and set the default target and platform specific + # name of the executable. + if target_config.py_platform == 'win32': + if target_config.qmake_spec == 'win32-g++': + make = 'mingw32-make' + else: + make = 'nmake' + + if target_config.debug: + makefile_target = 'debug' + platform_exe = os.path.join('debug', exe + '.exe') + else: + makefile_target = 'release' + platform_exe = os.path.join('release', exe + '.exe') + else: + make = 'make' + makefile_target = '' + + if target_config.py_platform == 'darwin': + platform_exe = os.path.join(exe + '.app', 'Contents', 'MacOS', exe) + else: + platform_exe = os.path.join('.', exe) + + remove_file(platform_exe) + + args = [make, '-f', makefile_name] + + if makefile_target != '': + args.append(makefile_target) + + run_command(' '.join(args), verbose) + + return platform_exe if os.access(platform_exe, os.X_OK) else None + + +def run_command(cmd, verbose): + """ Run a command and display the output if requested. cmd is the command + to run. verbose is set if the output is to be displayed. + """ + + if verbose: + sys.stdout.write(cmd + "\n") + + fout = get_command_output(cmd, and_stderr=True) + + # Read stdout and stderr until there is no more output. + lout = fout.readline() + while lout: + if verbose: + if sys.hexversion >= 0x03000000: + sys.stdout.write(str(lout, encoding=sys.stdout.encoding)) + else: + sys.stdout.write(lout) + + lout = fout.readline() + + fout.close() + + try: + os.wait() + except: + pass + + +def remove_file(fname): + """ Remove a file which may or may not exist. fname is the name of the + file. + """ + + try: + os.remove(fname) + except OSError: + pass + + +def check_vendorid(target_config): + """ See if the VendorID library and include file can be found. + target_config is the target configuration. + """ + + if target_config.py_version >= 0x030000: + # VendorID doesn't support Python v3. + target_config.vend_enabled = False + elif target_config.vend_enabled: + if os.access(os.path.join(target_config.vend_inc_dir, 'vendorid.h'), os.F_OK): + if glob.glob(os.path.join(target_config.vend_lib_dir, '*vendorid*')): + inform("The VendorID package was found.") + else: + target_config.vend_enabled = False + inform( + "The VendorID library could not be found in %s and so " + "signed interpreter checking will be disabled. If the " + "VendorID package is installed then use the " + "--vendorid-libdir argument to explicitly specify the " + "correct directory." % target_config.vend_lib_dir) + else: + target_config.vend_enabled = False + inform( + "vendorid.h could not be found in %s and so signed " + "interpreter checking will be disabled. If the VendorID " + "package is installed then use the --vendorid-incdir " + "argument to explicitly specify the correct directory." % + target_config.vend_inc_dir) + + +def get_command_output(cmd, and_stderr=False): + """ Return a pipe from which a command's output can be read. cmd is the + command. and_stderr is set if the output should include stderr as well as + stdout. + """ + + try: + import subprocess + except ImportError: + if and_stderr: + _, sout = os.popen4(cmd) + else: + _, sout, _ = os.popen3(cmd) + + return sout + + if and_stderr: + stderr = subprocess.STDOUT + else: + stderr = subprocess.PIPE + + p = subprocess.Popen(cmd, shell=True, stdin=subprocess.PIPE, + stdout=subprocess.PIPE, stderr=stderr) + + return p.stdout + + +def source_path(*names): + """ Return the native path for a list of components rooted at the directory + containing this script. names is the sequence of component names. + """ + + path = [os.path.dirname(os.path.abspath(__file__))] + list(names) + + return os.path.join(*path) + + +def check_dbus(target_config, verbose): + """ See if the DBus support module should be built and update the target + configuration accordingly. target_config is the target configuration. + verbose is set if the output is to be displayed. + """ + + if target_config.no_pydbus or not os.path.isdir(source_path('dbus')): + return + + inform("Checking to see if the dbus support module should be built...") + + cmd = 'pkg-config --cflags-only-I --libs dbus-1' + + if verbose: + sys.stdout.write(cmd + "\n") + + sout = get_command_output(cmd) + iflags = sout.read().strip() + + if not iflags: + inform("DBus v1 does not seem to be installed.") + return + + if sys.hexversion >= 0x03000000: + iflags = iflags.decode() + + for f in iflags.split(): + if f.startswith('-I'): + target_config.dbus_inc_dirs.append(f[2:]) + elif f.startswith('-L'): + target_config.dbus_lib_dirs.append(f[2:]) + elif f.startswith('-l'): + target_config.dbus_libs.append(f[2:]) + + try: + import dbus.mainloop + except: + inform("The Python dbus module doesn't seem to be installed.") + return + + target_config.pydbus_module_dir = dbus.mainloop.__path__[0] + + # Try and find dbus-python.h. We don't use pkg-config because it is broken + # for dbus-python (at least for versions up to and including v0.81.0). + # Instead we look where DBus itself is installed - which in most cases will + # be where dbus-python is also installed. + if target_config.pydbus_inc_dir != '': + target_config.dbus_inc_dirs = [target_config.pydbus_inc_dir] + + for d in target_config.dbus_inc_dirs: + if os.access(os.path.join(d, 'dbus', 'dbus-python.h'), os.F_OK): + break + else: + inform( + "dbus/dbus-python.h could not be found and so the DBus " + "support module will be disabled. If dbus-python v0.80 or " + "later is installed then use the --dbus argument to " + "explicitly specify the directory containing " + "dbus/dbus-python.h.") + target_config.pydbus_module_dir = '' + + +def check_module(target_config, disabled_modules, verbose, mname, incfile=None, test=None): + """ See if a module can be built and, if so, add it to the target + configurations list of modules. target_config is the target configuration. + disabled_modules is the list of modules that have been explicitly disabled. + verbose is set if the output is to be displayed. mname is the name of the + module. incfile is the name of the include file (or sequence of multiple + include files) needed for the test. test is a C++ statement being used for + the test. If either incfile or test are None then there is a test program + that needs to be run and its output captured. + """ + + if mname in disabled_modules: + return + + # Check the module's main .sip file exists. + if not os.access(source_path('sip', mname, mname + 'mod.sip'), os.F_OK): + return + + if verbose: + sys.stdout.write('\n') + + inform("Checking to see if the %s module should be built..." % mname) + + if incfile is None or test is None: + source = None + else: + if isinstance(incfile, str): + incfile = [incfile] + + incfile = ['#include<%s>' % i for i in incfile] + + source = '''%s + +int main(int, char **) +{ + %s; +} +''' % ('\n'.join(incfile), test) + + test = compile_test_program(target_config, verbose, mname, source) + if test is None: + return + + # If there was an explicit test program then run it to get the disabled + # features. + if source is None: + for disabled in run_test_program(mname, test, verbose): + if disabled: + inform("Disabled %s feature: %s" % (mname, disabled)) + target_config.pyqt_disabled_features.append(disabled) + + # Include the module in the build. + target_config.pyqt_modules.append(mname) + + +def compile_test_program(target_config, verbose, mname, source=None, debug=None, uses_sip_h=False): + """ Compile the source of a Qt program and return the name of the + executable or None if it couldn't be created. target_config is the target + configuration. verbose is set if the output is to be displayed. mname is + the name of the PyQt module being tested. source is the C++ source of the + program. If it is None then the source is expected to be found in the + config-tests directory. debug is set if debug, rather than release, mode + is to be used. If it is None then the mode is taken from the target + configuration. uses_sip_h is set if the test program uses sip.h. + """ + + metadata = MODULE_METADATA[mname] + + # The derived file names. + name = 'cfgtest_' + mname + name_pro = name + '.pro' + name_makefile = name + '.mk' + name_source = name + '.cpp' + + # Create the source file if necessary. + if source is None: + name_source = source_path('config-tests', name_source) + else: + f = open_for_writing(name_source) + f.write(source) + f.close() + + # Create the .pro file. + pro_lines = [] + pro_add_qt_dependencies(target_config, metadata, pro_lines, debug) + pro_lines.append('TARGET = %s' % name) + + if uses_sip_h: + target_config.add_sip_h_directives(pro_lines) + + pro_lines.append('SOURCES = %s' % qmake_quote(name_source)) + + f = open_for_writing(name_pro) + f.write('\n'.join(pro_lines)) + f.close() + + if not run_qmake(target_config, verbose, name_pro, name_makefile, fatal=False): + return None + + return run_make(target_config, verbose, name, name_makefile) + + +def run_test_program(mname, test, verbose): + """ Run a test program and return the output as a list of lines. mname is + the name of the PyQt module being tested. test is the name of the test + executable. verbose is set if the output is to be displayed. + """ + + out_file = 'cfgtest_' + mname + '.out' + + # Create the output file, first making sure it doesn't exist. + remove_file(out_file) + run_command(test + ' ' + out_file, verbose) + + if not os.access(out_file, os.F_OK): + error("%s failed to create %s. Make sure your Qt installation is correct." % (test, out_file)) + + # Read the details. + f = open(out_file) + lines = f.read().split('\n') + f.close() + + return lines + + +def pro_add_qt_dependencies(target_config, metadata, pro_lines, debug=None): + """ Add the Qt dependencies of a module to a .pro file. target_config is + the target configuration. metadata is the module's meta-data. pro_lines + is the list of lines making up the .pro file that is updated. debug is set + if debug, rather than release, mode is to be used. If it is None then the + mode is taken from the target configuration. + """ + + if debug is None: + debug = target_config.debug + + add = [] + remove = [] + for qt in metadata.qmake_QT: + if qt.startswith('-'): + remove.append(qt[1:]) + else: + add.append(qt) + + if len(remove) != 0: + pro_lines.append('QT -= %s' % ' '.join(remove)) + + if len(add) != 0: + pro_lines.append('QT += %s' % ' '.join(add)) + + pro_lines.append( + 'CONFIG += %s' % ('debug' if debug else 'release')) + + if metadata.cpp11: + pro_lines.append('CONFIG += c++11') + + pro_lines.extend(target_config.qmake_variables) + + +def get_sip_flags(target_config): + """ Return the SIP platform, version and feature flags. target_config is + the target configuration. + """ + + sip_flags = ['-n', 'PyQt5.sip'] + + # If we don't check for signed interpreters, we exclude the 'VendorID' + # feature + if target_config.py_version < 0x030000 and not target_config.vend_enabled: + sip_flags.append('-x') + sip_flags.append('VendorID') + + # Handle Python debug builds. + if target_config.py_debug: + sip_flags.append('-D') + + # Handle the platform tag. + if target_config.py_platform == 'win32': + plattag = 'WS_WIN' + elif target_config.py_platform == 'darwin': + plattag = 'WS_MACX' + else: + plattag = 'WS_X11' + + sip_flags.append('-t') + sip_flags.append(plattag) + + # Handle the Qt version tag. + sip_flags.append('-t') + sip_flags.append(version_to_sip_tag(target_config.qt_version)) + + # Handle any feature flags. + for xf in target_config.pyqt_disabled_features: + sip_flags.append('-x') + sip_flags.append(xf) + + # Handle the version specific Python features. + if target_config.py_version < 0x030000: + sip_flags.append('-x') + sip_flags.append('Py_v3') + + return sip_flags + + +def mk_clean_dir(name): + """ Create a clean (ie. empty) directory. name is the name of the + directory. + """ + + try: + shutil.rmtree(name) + except: + pass + + try: + os.makedirs(name) + except: + error("Unable to create the %s directory." % name) + + +def mk_dir(name): + """ Ensure a directory exists, creating it if necessary. name is the name + of the directory. + """ + + try: + os.makedirs(name) + except: + pass + + +def generate_sip_module_code(target_config, verbose, parts, tracing, mname, fatal_warnings, sip_flags, doc_support, qpy_sources=None, qpy_headers=None): + """ Generate the code for a module. target_config is the target + configuration. verbose is set if the output is to be displayed. parts is + the number of parts the generated code should be split into. tracing is + set if the generated code should include tracing calls. mname is the name + of the module to generate the code for. fatal_warnings is set if warnings + are fatal. sip_flags is the list of flags to pass to sip. doc_support + is set if documentation support is to be generated for the module. + qpy_sources is the optional list of QPy support code source files. + qpy_headers is the optional list of QPy support code header files. + """ + + inform("Generating the C++ source for the %s module..." % mname) + + mk_clean_dir(mname) + + # Build the SIP command line. + argv = [target_config.sip, '-w'] + + argv.extend(sip_flags) + + if fatal_warnings: + argv.append('-f') + + # Make sure any unknown Qt version gets treated as the latest Qt v5. + argv.append('-B') + argv.append('Qt_6_0_0') + + if target_config.prot_is_public: + argv.append('-P'); + + if parts != 0: + argv.append('-j') + argv.append(str(parts)) + + if tracing: + argv.append('-r') + + if doc_support: + if not target_config.no_docstrings: + argv.append('-o'); + + if target_config.qsci_api: + argv.append('-a') + argv.append(mname + '.api') + + if target_config.py_version >= 0x030500 and target_config.pyqt_stubs_dir: + argv.append('-y') + argv.append(mname + '.pyi') + + # Pass the absolute pathname so that #line files are absolute. + argv.append('-c') + argv.append(os.path.abspath(mname)) + + argv.append('-I') + argv.append('sip') + + sp_sip_dir = source_path('sip') + if sp_sip_dir != 'sip': + # SIP assumes POSIX style separators. + sp_sip_dir = sp_sip_dir.replace('\\', '/') + argv.append('-I') + argv.append(sp_sip_dir) + + # The .sip files for the Qt modules will be in the out-of-tree directory. + if mname == 'Qt': + sip_dir = 'sip' + else: + sip_dir = sp_sip_dir + + # Add the name of the .sip file. + argv.append('%s/%s/%smod.sip' % (sip_dir, mname, mname)) + + run_command(' '.join([quote(a) for a in argv]), verbose) + + # Check the result. + if mname == 'Qt': + file_check = 'sip%scmodule.c' % mname + else: + file_check = 'sipAPI%s.h' % mname + + if not os.access(os.path.join(mname, file_check), os.F_OK): + error("Unable to create the C++ code.") + + # Embed the sip flags. + if mname == 'QtCore': + inform("Embedding sip flags...") + + in_f = open(source_path('qpy', 'QtCore', 'qpycore_post_init.cpp.in')) + out_f = open_for_writing( + os.path.join('QtCore', 'qpycore_post_init.cpp')) + + for line in in_f: + line = line.replace('@@PYQT_SIP_FLAGS@@', ' '.join(sip_flags)) + out_f.write(line) + + in_f.close() + out_f.close() + + # Generate the makefile. + include_paths = [] + libs = '' + + if target_config.vend_enabled: + if mname == 'QtCore': + include_paths.append(target_config.vend_inc_dir) + libs = '-L%s -lvendorid' % target_config.vend_lib_dir + + generate_module_makefile(target_config, verbose, mname, + include_paths=include_paths, libs=libs, qpy_sources=qpy_sources, + qpy_headers=qpy_headers) + + +def generate_module_makefile(target_config, verbose, mname, include_paths=None, libs='', install_path='', src_dir='', qpy_sources=None, qpy_headers=None): + """ Generate the makefile for a module. target_config is the target + configuration. verbose is set if the output is to be displayed. mname is + the name of the module. include_paths is an optional list of values of + INCLUDEPATH. libs is an optional additional value of LIBS. install_path + is the optional name of the directory that the module will be installed in. + src_dir is the optional source directory (by default the sources are + assumed to be in the module directory). qpy_sources is the optional list + of QPy support code source files. qpy_headers is the optional list of QPy + support code header files. + """ + + if verbose: + sys.stdout.write('\n') + + inform("Generating the .pro file for the %s module..." % mname) + + if src_dir == '': + src_dir = mname + + target_name = mname + + metadata = MODULE_METADATA[mname] + + if metadata.qmake_TARGET != '': + target_name = metadata.qmake_TARGET + + pro_lines = ['TEMPLATE = lib'] + + # Note some version of Qt5 (probably incorrectly) implements + # 'plugin_bundle' instead of 'plugin' so we specify both. + pro_lines.append('CONFIG += warn_on exceptions_off %s' % ('staticlib hide_symbols' if target_config.static else 'plugin plugin_bundle')) + + pro_add_qt_dependencies(target_config, metadata, pro_lines) + + if target_config.qml_debug: + pro_lines.append('CONFIG += qml_debug') + + # Work around QTBUG-39300. + pro_lines.append('CONFIG -= android_install') + + pro_lines.append('TARGET = %s' % target_name) + + if not target_config.static: + debug_suffix = target_config.get_win32_debug_suffix() + + # For Qt v5.5 make sure these frameworks are already loaded by the time + # the libqcocoa.dylib plugin gets loaded. This problem seems to be + # fixed in Qt v5.6. + extra_lflags = '' + + if mname == 'QtGui': + # Note that this workaround is flawed because it looks at the PyQt + # configuration rather than the Qt configuration. It will fail if + # the user is building a PyQt without the QtDBus module against a + # Qt with the QtDBus library. However it will be fine for the + # common case where the PyQt configuration reflects the Qt + # configuration. + fwks = [] + for m in ('QtPrintSupport', 'QtDBus', 'QtWidgets'): + if m in target_config.pyqt_modules: + fwks.append('-framework ' + m) + + if len(fwks) != 0: + extra_lflags = 'QMAKE_LFLAGS += "%s"\n ' % ' '.join(fwks) + + # Without the 'no_check_exist' magic the target.files must exist when + # qmake is run otherwise the install and uninstall targets are not + # generated. + shared = ''' +win32 { + PY_MODULE = %s%s.pyd + PY_MODULE_SRC = $(DESTDIR_TARGET) +} else { + PY_MODULE = %s.so + + macx { + PY_MODULE_SRC = $(TARGET).plugin/Contents/MacOS/$(TARGET) + + QMAKE_LFLAGS += "-undefined dynamic_lookup" + + equals(QT_MINOR_VERSION, 5) { + %sQMAKE_RPATHDIR += $$[QT_INSTALL_LIBS] + } + } else { + PY_MODULE_SRC = $(TARGET) + } +} + +QMAKE_POST_LINK = $(COPY_FILE) $$PY_MODULE_SRC $$PY_MODULE + +target.CONFIG = no_check_exist +target.files = $$PY_MODULE +''' % (target_name, debug_suffix, target_name, extra_lflags) + + pro_lines.extend(shared.split('\n')) + + if install_path == '': + install_path = target_config.pyqt_module_dir + '/PyQt5' + + install_path = install_path.replace('\\', '/') + + pro_lines.append('target.path = %s' % install_path) + pro_lines.append('INSTALLS += target') + + # This optimisation could apply to other platforms. + if 'linux' in target_config.qmake_spec and not target_config.static: + if target_config.py_version >= 0x030000: + entry_point = 'PyInit_%s' % target_name + else: + entry_point = 'init%s' % target_name + + exp = open_for_writing(os.path.join(mname, target_name + '.exp')) + exp.write('{ global: %s; local: *; };' % entry_point) + exp.close() + + pro_lines.append('QMAKE_LFLAGS += -Wl,--version-script=%s.exp' % target_name) + + if target_config.prot_is_public: + pro_lines.append('DEFINES += SIP_PROTECTED_IS_PUBLIC protected=public') + + if mname == 'QtCore' and target_config.qtconf_prefix != '': + pro_lines.append('DEFINES += PYQT_QTCONF_PREFIX=\\\\\\"%s\\\\\\"' % target_config.qtconf_prefix) + + # This is needed for Windows. + pro_lines.append('INCLUDEPATH += .') + + target_config.add_sip_h_directives(pro_lines) + + if metadata.qpy_lib: + # This is the easiest way to make sure it is set for handwritten code. + if not target_config.py_debug: + pro_lines.append('DEFINES += Py_LIMITED_API=0x03070000') + + pro_lines.append('INCLUDEPATH += %s' % + qmake_quote(os.path.relpath(source_path('qpy', mname), mname))) + + if include_paths: + pro_lines.append( + 'INCLUDEPATH += ' + ' '.join( + [qmake_quote(p) for p in include_paths])) + + if libs != '': + pro_lines.append('LIBS += %s' % libs) + + if src_dir != mname: + pro_lines.append('INCLUDEPATH += %s' % qmake_quote(src_dir)) + pro_lines.append('VPATH = %s' % qmake_quote(src_dir)) + + pro_lines.extend(pro_sources(src_dir, qpy_headers, qpy_sources)) + + pro_name = os.path.join(mname, mname + '.pro') + + pro = open_for_writing(pro_name) + pro.write('\n'.join(pro_lines)) + pro.write('\n') + pro.close() + + +def fix_license(src_lfile, dst_lfile): + """ Fix the license file, if there is one, so that it conforms to the SIP + v5 syntax. src_lfile is the name of the license file. dst_lfile is the + name of the fixed license file. + """ + + f = open(src_lfile) + f5 = open_for_writing(dst_lfile) + + for line in f: + if line.startswith('%License'): + anno_start = line.find('/') + anno_end = line.rfind('/') + + if anno_start < 0 or anno_end < 0 or anno_start == anno_end: + error("%s has missing annotations." % name) + + annos = line[anno_start + 1:anno_end].split(', ') + annos5 = [anno[0].lower() + anno[1:] for anno in annos] + + f5.write('%License(') + f5.write(', '.join(annos5)) + f5.write(')\n') + else: + f5.write(line) + + f5.close() + f.close() + + +def check_license(target_config, license_confirmed): + """ Handle the validation of the PyQt5 license. target_config is the + target configuration. license_confirmed is set if the user has already + accepted the license. + """ + + try: + import license + ltype = license.LicenseType + lname = license.LicenseName + + try: + lfile = license.LicenseFile + except AttributeError: + lfile = None + except ImportError: + ltype = None + + if ltype is None: + ltype = 'GPL' + lname = "GNU General Public License" + lfile = 'pyqt-gpl.sip' + + inform( + "This is the %s version of PyQt %s (licensed under the %s) for " + "Python %s on %s." % + (ltype, PYQT_VERSION_STR, lname, sys.version.split()[0], + sys.platform)) + + # Confirm the license if not already done. + if not license_confirmed: + loptions = """ +Type 'L' to view the license. +""" + + sys.stdout.write(loptions) + sys.stdout.write("""Type 'yes' to accept the terms of the license. +Type 'no' to decline the terms of the license. + +""") + + while 1: + sys.stdout.write("Do you accept the terms of the license? ") + sys.stdout.flush() + + try: + resp = sys.stdin.readline() + except KeyboardInterrupt: + raise SystemExit + except: + resp = "" + + resp = resp.strip().lower() + + if resp == "yes": + break + + if resp == "no": + sys.exit(0) + + if resp == 'l': + os.system('more LICENSE') + + # Check that the license file exists and fix its syntax. + sip_dir = 'sip' + mk_dir(sip_dir) + + src_lfile = os.path.join(target_config.license_dir, lfile) + + if os.access(src_lfile, os.F_OK): + inform("Found the license file %s." % lfile) + fix_license(src_lfile, os.path.join(sip_dir, lfile + '5')) + else: + error( + "Please copy the license file %s to %s." % (lfile, + target_config.license_dir)) + + +def check_qt(target_config): + """ Check the Qt installation. target_config is the target configuration. + """ + + # Starting with v4.7, Qt (when built with MinGW) assumes that stack frames + # are 16 byte aligned because it uses SSE. However the Python Windows + # installers are built with 4 byte aligned stack frames. We therefore need + # to tweak the g++ flags to deal with it. + if target_config.qmake_spec == 'win32-g++': + target_config.qmake_variables.append('QMAKE_CFLAGS += -mstackrealign') + target_config.qmake_variables.append('QMAKE_CXXFLAGS += -mstackrealign') + + +def check_python(target_config): + """ Check the Python installation. target_config is the target + configuration. + """ + + # Check the Python version number. This allows us to assume relative + # imports and ElemenTree are available. + if target_config.py_version < 0x020600: + error("PyQt5 requires Python v2.6 or later.") + + +def check_sip(target_config): + """ Check that the version of sip is good enough and return its version. + target_config is the target configuration. + """ + + # Check there is a private copy of the sip module already installed. + try: + from PyQt5 import sip + except ImportError: + error( + "Unable to import PyQt5.sip. Make sure you have configured " + "SIP to create a private copy of the sip module.") + + if target_config.sip is None: + error( + "Make sure you have a working sip on your PATH or use the " + "--sip argument to explicitly specify a working sip.") + + pipe = os.popen(' '.join([quote(target_config.sip), '-V'])) + + for l in pipe: + version_str = l.strip() + break + else: + error("'%s -V' did not generate any output." % target_config.sip) + + pipe.close() + + if '.dev' not in version_str and 'snapshot' not in version_str: + version = version_from_string(version_str) + if version is None: + error( + "'%s -V' generated unexpected output: '%s'." % ( + target_config.sip, version_str)) + + min_version = version_from_string(SIP_MIN_VERSION) + if version < min_version: + error( + "This version of PyQt5 requires sip %s or later." % + SIP_MIN_VERSION) + + return version_str + + +def version_from_string(version_str): + """ Convert a version string of the form m.n or m.n.o to an encoded version + number (or None if it was an invalid format). version_str is the version + string. + """ + + parts = version_str.split('.') + if not isinstance(parts, list): + return None + + if len(parts) == 2: + parts.append('0') + + if len(parts) != 3: + return None + + version = 0 + + for part in parts: + try: + v = int(part) + except ValueError: + return None + + version = (version << 8) + v + + return version + + +def open_for_writing(fname): + """ Return a file opened for writing while handling the most common problem + of not having write permission on the directory. fname is the name of the + file to open. + """ + try: + return open(fname, 'w') + except IOError: + error( + "There was an error creating %s. Make sure you have write " + "permission on the parent directory." % fname) + + +def matching_files(pattern): + """ Return a reproducable list of files that match a pattern. """ + + return sorted(glob.glob(pattern)) + + +def main(argv): + """ Create the configuration module module. argv is the list of command + line arguments. + """ + + # Create the default target configuration. + target_config = TargetConfiguration() + + # Parse the command line. + parser = create_optparser(target_config) + opts, target_config.qmake_variables = parser.parse_args() + + target_config.apply_pre_options(opts) + + # Query qmake for the basic configuration information. + target_config.get_qt_configuration() + + # Update the target configuration. + if opts.config_file is not None: + target_config.from_configuration_file(opts.config_file) + else: + target_config.from_introspection(opts.verbose, opts.debug) + + target_config.post_configuration() + + target_config.apply_post_options(opts) + + # Check the licenses are compatible. + check_license(target_config, opts.license_confirmed) + + # Check Python is what we need. + check_python(target_config) + + # Check SIP is what we need. + sip_version = check_sip(target_config) + + if target_config.sip_h_version is not None: + if target_config.sip_h_version != sip_version: + error("%s has version %s but %s has version %s." % ( + os.path.join(target_config.sip_inc_dir, 'sip.h'), + target_config.sip_h_version, target_config.sip, + sip_version)) + + # Check Qt is what we need. + check_qt(target_config) + + # Check for the VendorID package. + check_vendorid(target_config) + + # Check which modules to build if we haven't been told. + if len(target_config.pyqt_modules) == 0: + check_modules(target_config, opts.disabled_modules, opts.verbose) + else: + # Check that the user supplied module names are valid. + for mname in target_config.pyqt_modules: + if mname not in MODULE_METADATA: + error("'%s' is not a valid module name." % mname) + + check_dbus(target_config, opts.verbose) + + # Tell the user what's been found. + inform_user(target_config, sip_version) + + # Generate the makefiles. + generate_makefiles(target_config, opts.verbose, + opts.split if opts.concat else 0, opts.tracing, + opts.fatal_warnings, opts.distinfo) + + +############################################################################### +# The script starts here. +############################################################################### + +if __name__ == '__main__': + try: + main(sys.argv) + except SystemExit: + raise + except: + sys.stderr.write( +"""An internal error occured. Please report all the output from the program, +including the following traceback, to support@riverbankcomputing.com. +""") + raise diff --git a/dbus/dbus.cpp b/dbus/dbus.cpp new file mode 100644 index 0000000..7183d92 --- /dev/null +++ b/dbus/dbus.cpp @@ -0,0 +1,433 @@ +// This is the SIP interface definition for the Qt support for the standard +// Python DBus bindings. +// +// Copyright (c) 2014 Riverbank Computing Limited +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the "Software"), to deal in the Software without +// restriction, including without limitation the rights to use, copy, +// modify, merge, publish, distribute, sublicense, and/or sell copies +// of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be +// included in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +// DEALINGS IN THE SOFTWARE. + + +#include + +#include +#include +#include +#include + +#include "helper.h" + + +// The callback to add a watch. +extern "C" {static dbus_bool_t add_watch(DBusWatch *watch, void *data);} +static dbus_bool_t add_watch(DBusWatch *watch, void *data) +{ + pyqt5DBusHelper *hlp = reinterpret_cast(data); + + int fd = dbus_watch_get_fd(watch); + unsigned int flags = dbus_watch_get_flags(watch); + dbus_bool_t enabled = dbus_watch_get_enabled(watch); + + pyqt5DBusHelper::Watcher watcher; + watcher.watch = watch; + + if (flags & DBUS_WATCH_READABLE) + { + watcher.read = new QSocketNotifier(fd, QSocketNotifier::Read, hlp); + watcher.read->setEnabled(enabled); + hlp->connect(watcher.read, SIGNAL(activated(int)), SLOT(readSocket(int))); + } + + if (flags & DBUS_WATCH_WRITABLE) + { + watcher.write = new QSocketNotifier(fd, QSocketNotifier::Write, hlp); + watcher.write->setEnabled(enabled); + hlp->connect(watcher.write, SIGNAL(activated(int)), SLOT(writeSocket(int))); + } + + hlp->watchers.insertMulti(fd, watcher); + + return true; +} + + +// The callback to remove a watch. +extern "C" {static void remove_watch(DBusWatch *watch, void *data);} +static void remove_watch(DBusWatch *watch, void *data) +{ + pyqt5DBusHelper *hlp = reinterpret_cast(data); + + int fd = dbus_watch_get_fd(watch); + + pyqt5DBusHelper::Watchers::iterator it = hlp->watchers.find(fd); + + while (it != hlp->watchers.end() && it.key() == fd) + { + pyqt5DBusHelper::Watcher &watcher = it.value(); + + if (watcher.watch == watch) + { + if (watcher.read) + delete watcher.read; + + if (watcher.write) + delete watcher.write; + + hlp->watchers.erase(it); + + return; + } + + ++it; + } +} + + +// The callback to toggle a watch. +extern "C" {static void toggle_watch(DBusWatch *watch, void *data);} +static void toggle_watch(DBusWatch *watch, void *data) +{ + pyqt5DBusHelper *hlp = reinterpret_cast(data); + + int fd = dbus_watch_get_fd(watch); + unsigned int flags = dbus_watch_get_flags(watch); + dbus_bool_t enabled = dbus_watch_get_enabled(watch); + + pyqt5DBusHelper::Watchers::const_iterator it = hlp->watchers.find(fd); + + while (it != hlp->watchers.end() && it.key() == fd) + { + const pyqt5DBusHelper::Watcher &watcher = it.value(); + + if (watcher.watch == watch) + { + if (flags & DBUS_WATCH_READABLE && watcher.read) + watcher.read->setEnabled(enabled); + + if (flags & DBUS_WATCH_WRITABLE && watcher.write) + watcher.write->setEnabled(enabled); + + return; + } + + ++it; + } +} + + +// The callback to add a timeout. +extern "C" {static dbus_bool_t add_timeout(DBusTimeout *timeout, void *data);} +static dbus_bool_t add_timeout(DBusTimeout *timeout, void *data) +{ + // Nothing to do if the timeout is disabled. + if (!dbus_timeout_get_enabled(timeout)) + return true; + + // Pretend it is successful if there is no application instance. This can + // happen if the global application gets garbage collected before the + // dbus-python main loop does. + if (!QCoreApplication::instance()) + return true; + + pyqt5DBusHelper *hlp = reinterpret_cast(data); + + int id = hlp->startTimer(dbus_timeout_get_interval(timeout)); + + if (!id) + return false; + + hlp->timeouts[id] = timeout; + + return true; +} + + +// The callback to remove a timeout. +extern "C" {static void remove_timeout(DBusTimeout *timeout, void *data);} +static void remove_timeout(DBusTimeout *timeout, void *data) +{ + pyqt5DBusHelper *hlp = reinterpret_cast(data); + + pyqt5DBusHelper::Timeouts::iterator it = hlp->timeouts.begin(); + + while (it != hlp->timeouts.end()) + if (it.value() == timeout) + { + hlp->killTimer(it.key()); + it = hlp->timeouts.erase(it); + } + else + ++it; +} + + +// The callback to toggle a timeout. +extern "C" {static void toggle_timeout(DBusTimeout *timeout, void *data);} +static void toggle_timeout(DBusTimeout *timeout, void *data) +{ + remove_timeout(timeout, data); + add_timeout(timeout, data); +} + + +// The callback to delete a helper instance. +extern "C" {static void dbus_qt_delete_helper(void *data);} +static void dbus_qt_delete_helper(void *data) +{ + delete reinterpret_cast(data); +} + + +// The callback to wakeup the event loop. +extern "C" {static void wakeup_main(void *data);} +static void wakeup_main(void *data) +{ + pyqt5DBusHelper *hlp = reinterpret_cast(data); + + QTimer::singleShot(0, hlp, SLOT(dispatch())); +} + + +// The callback to set up a DBus connection. +extern "C" {static dbus_bool_t dbus_qt_conn(DBusConnection *conn, void *data);} +static dbus_bool_t dbus_qt_conn(DBusConnection *conn, void *data) +{ + bool rc; + + Py_BEGIN_ALLOW_THREADS + + pyqt5DBusHelper *hlp = reinterpret_cast(data); + + hlp->connections.append(conn); + + if (!dbus_connection_set_watch_functions(conn, add_watch, remove_watch, + toggle_watch, data, 0)) + rc = false; + else if (!dbus_connection_set_timeout_functions(conn, add_timeout, + remove_timeout, toggle_timeout, data, 0)) + rc = false; + else + rc = true; + + dbus_connection_set_wakeup_main_function(conn, wakeup_main, hlp, 0); + + Py_END_ALLOW_THREADS + + return rc; +} + + +// The callback to set up a DBus server. +extern "C" {static dbus_bool_t dbus_qt_srv(DBusServer *srv, void *data);} +static dbus_bool_t dbus_qt_srv(DBusServer *srv, void *data) +{ + bool rc; + + Py_BEGIN_ALLOW_THREADS + + if (!dbus_server_set_watch_functions(srv, add_watch, remove_watch, + toggle_watch, data, 0)) + rc = false; + else if (!dbus_server_set_timeout_functions(srv, add_timeout, + remove_timeout, toggle_timeout, data, 0)) + rc = false; + else + rc = true; + + Py_END_ALLOW_THREADS + + return rc; +} + + +// Create a new helper instance. +pyqt5DBusHelper::pyqt5DBusHelper() : QObject() +{ +} + + +// Handle a socket being ready to read. +void pyqt5DBusHelper::readSocket(int fd) +{ + Watchers::const_iterator it = watchers.find(fd); + + while (it != watchers.end() && it.key() == fd) + { + const Watcher &watcher = it.value(); + + if (watcher.read && watcher.read->isEnabled()) + { + watcher.read->setEnabled(false); + dbus_watch_handle(watcher.watch, DBUS_WATCH_READABLE); + + // The notifier could have just been destroyed. + if (watcher.read) + watcher.read->setEnabled(true); + + break; + } + + ++it; + } + + dispatch(); +} + + +// Handle a socket being ready to write. +void pyqt5DBusHelper::writeSocket(int fd) +{ + Watchers::const_iterator it = watchers.find(fd); + + while (it != watchers.end() && it.key() == fd) + { + const Watcher &watcher = it.value(); + + if (watcher.write && watcher.write->isEnabled()) + { + watcher.write->setEnabled(false); + dbus_watch_handle(watcher.watch, DBUS_WATCH_WRITABLE); + + // The notifier could have just been destroyed. + if (watcher.write) + watcher.write->setEnabled(true); + + break; + } + + ++it; + } +} + + +// Handoff to the connection dispatcher while there is data. +void pyqt5DBusHelper::dispatch() +{ + for (Connections::const_iterator it = connections.constBegin(); it != connections.constEnd(); ++it) + while (dbus_connection_dispatch(*it) == DBUS_DISPATCH_DATA_REMAINS) + ; +} + + +// Reimplemented to handle timer events. +void pyqt5DBusHelper::timerEvent(QTimerEvent *e) +{ + DBusTimeout *timeout = timeouts.value(e->timerId()); + + if (timeout) + dbus_timeout_handle(timeout); +} + + +PyDoc_STRVAR(DBusQtMainLoop__doc__, +"DBusQtMainLoop([set_as_default=False]) -> NativeMainLoop\n" +"\n" +"Return a NativeMainLoop object.\n" +"\n" +"If the keyword argument set_as_default is given and is True, set the new\n" +"main loop as the default for all new Connection or Bus instances.\n"); + +extern "C" {static PyObject *DBusQtMainLoop(PyObject *, PyObject *args, PyObject *kwargs);} +static PyObject *DBusQtMainLoop(PyObject *, PyObject *args, PyObject *kwargs) +{ + if (PyTuple_Size(args) != 0) + { + PyErr_SetString(PyExc_TypeError, "DBusQtMainLoop() takes no positional arguments"); + return 0; + } + + int set_as_default = 0; + static char *argnames[] = {"set_as_default", 0}; + + if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|i", argnames, &set_as_default)) + return 0; + + pyqt5DBusHelper *hlp = new pyqt5DBusHelper; + + PyObject *mainloop = DBusPyNativeMainLoop_New4(dbus_qt_conn, dbus_qt_srv, + dbus_qt_delete_helper, hlp); + + if (!mainloop) + { + delete hlp; + return 0; + } + + if (set_as_default) + { + PyObject *func = PyObject_GetAttrString(_dbus_bindings_module, "set_default_main_loop"); + + if (!func) + { + Py_DECREF(mainloop); + return 0; + } + + PyObject *res = PyObject_CallFunctionObjArgs(func, mainloop, 0); + Py_DECREF(func); + + if (!res) + { + Py_DECREF(mainloop); + return 0; + } + + Py_DECREF(res); + } + + return mainloop; +} + + +// The table of module functions. +static PyMethodDef module_functions[] = { + {"DBusQtMainLoop", (PyCFunction)DBusQtMainLoop, METH_VARARGS|METH_KEYWORDS, + DBusQtMainLoop__doc__}, + {0, 0, 0, 0} +}; + + +// The module entry point. +#if PY_MAJOR_VERSION >= 3 +PyMODINIT_FUNC PyInit_pyqt5() +{ + static PyModuleDef module_def = { + PyModuleDef_HEAD_INIT, + "pyqt5", + NULL, + -1, + module_functions, + }; + + // Import the generic part of the Python DBus bindings. + if (import_dbus_bindings("dbus.mainloop.pyqt5") < 0) + return 0; + + return PyModule_Create(&module_def); +} +#else +PyMODINIT_FUNC initpyqt5() +{ + // Import the generic part of the Python DBus bindings. + if (import_dbus_bindings("dbus.mainloop.pyqt5") < 0) + return; + + Py_InitModule("pyqt5", module_functions); +} +#endif diff --git a/dbus/helper.h b/dbus/helper.h new file mode 100644 index 0000000..0f70cd3 --- /dev/null +++ b/dbus/helper.h @@ -0,0 +1,71 @@ +// This is the declaration of the helper class for the Qt specific support for +// the standard Python DBus bindings. +// +// Copyright (c) 2014 Riverbank Computing Limited +// +// Permission is hereby granted, free of charge, to any person +// obtaining a copy of this software and associated documentation +// files (the "Software"), to deal in the Software without +// restriction, including without limitation the rights to use, copy, +// modify, merge, publish, distribute, sublicense, and/or sell copies +// of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be +// included in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +// DEALINGS IN THE SOFTWARE. + + +#include +#include +#include +#include +#include +#include + +#include + + +class QTimerEvent; + + +class pyqt5DBusHelper : public QObject +{ + Q_OBJECT + +public: + struct Watcher + { + Watcher() : watch(0), read(0), write(0) {} + + DBusWatch *watch; + QPointer read; + QPointer write; + }; + + typedef QMultiHash Watchers; + typedef QHash Timeouts; + typedef QListConnections; + + pyqt5DBusHelper(); + + Watchers watchers; + Timeouts timeouts; + Connections connections; + +public slots: + void readSocket(int fd); + void writeSocket(int fd); + void dispatch(); + +protected: + void timerEvent(QTimerEvent *e); +}; diff --git a/designer/designer.pro-in b/designer/designer.pro-in new file mode 100644 index 0000000..3a154ad --- /dev/null +++ b/designer/designer.pro-in @@ -0,0 +1,23 @@ +CONFIG += plugin @QTCONFIG@ warn_on +QT += designer + +# Work around QTBUG-39300. +CONFIG -= android_install + +TARGET = pyqt5 +TEMPLATE = lib + +INCLUDEPATH += @PYINCDIR@ +LIBS += @PYLINK@ +DEFINES += PYTHON_LIB=\\\"@PYSHLIB@\\\" + +SOURCES = pluginloader.cpp +HEADERS = pluginloader.h + +# Install. +target.path = @QTPLUGINDIR@ + +python.path = @QTPLUGINDIR@ +python.files = python + +INSTALLS += target python diff --git a/designer/pluginloader.cpp b/designer/pluginloader.cpp new file mode 100644 index 0000000..3ca8b11 --- /dev/null +++ b/designer/pluginloader.cpp @@ -0,0 +1,338 @@ +/* + * This is the Qt Designer plugin that collects all the Python plugins it can + * find as a widget collection to Designer. + * + * Copyright (c) 2018 Riverbank Computing Limited + * + * This file is part of PyQt5. + * + * This file may be used under the terms of the GNU General Public License + * version 3.0 as published by the Free Software Foundation and appearing in + * the file LICENSE included in the packaging of this file. Please review the + * following information to ensure the GNU General Public License version 3.0 + * requirements will be met: http://www.gnu.org/copyleft/gpl.html. + * + * If you do not wish to use this file under the terms of the GPL version 3.0 + * then you may purchase a commercial license. For more information contact + * info@riverbankcomputing.com. + * + * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE + * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + */ + + +#include "pluginloader.h" + +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "../qpy/QtDesigner/qpydesignercustomwidgetplugin.h" + + +// Construct the collection of Python widgets. +PyCustomWidgets::PyCustomWidgets(QObject *parent) : QObject(parent), + sys_path(0), sip_unwrapinstance(0), qtdesigner_custom(0) +{ + // Get the default list of directories to search. These correspond to a + // standard "python" subdirectory of all the places that Designer looks for + // its own plugins. + QStringList default_dirs; + + QStringList path_list = QCoreApplication::libraryPaths(); + foreach (const QString &path, path_list) + default_dirs.append(path + QDir::separator() + + QLatin1String("designer") + QDir::separator() + + QLatin1String("python")); + + default_dirs.append(QDir::homePath() + QDir::separator() + + QLatin1String(".designer") + QDir::separator() + + QLatin1String("plugins") + QDir::separator() + + QLatin1String("python")); + + // Get the list of directories to search. + QStringList dirs; + char *pyqt_path = getenv("PYQTDESIGNERPATH"); + + if (pyqt_path) + { +#if defined(Q_OS_WIN) + QLatin1Char sep(';'); +#else + QLatin1Char sep(':'); +#endif + + QStringList pyqt_dirs = QString::fromLatin1(pyqt_path).split(sep); + + for (QStringList::const_iterator it = pyqt_dirs.constBegin(); it != pyqt_dirs.constEnd(); ++it) + if ((*it).isEmpty()) + dirs << default_dirs; + else + dirs.append(QDir(*it).canonicalPath()); + } + else + dirs = default_dirs; + + // Go through each directory. + for (int i = 0; i < dirs.size(); ++i) + { + QString dir = dirs.at(i); + + // Get a list of all candidate plugin modules. We sort by name to + // provide control over the order they are imported. + QStringList candidates = QDir(dir).entryList(QDir::Files, QDir::Name); + QStringList plugins; + + for (int p = 0; p < candidates.size(); ++p) + { + QStringList parts = candidates.at(p).split('.'); + + if (parts.size() != 2) + continue; + + if (!parts.at(1).startsWith("py")) + continue; + + const QString &plugin = parts.at(0); + + if (!plugin.endsWith("plugin")) + continue; + + if (plugins.contains(plugin)) + continue; + + plugins.append(plugin); + } + + // Skip if there is nothing of interest in this directory. + if (!plugins.size()) + continue; + + // Make sure the interpreter is initialised. Leave this as late as + // possible. + if (!Py_IsInitialized()) + { + QLibrary library(PYTHON_LIB); + + library.setLoadHints(QLibrary::ExportExternalSymbolsHint); + + if (!library.load()) + return; + + Py_Initialize(); + +#ifdef WITH_THREAD + // Make sure we don't have the GIL. + PyEval_InitThreads(); + PyEval_SaveThread(); +#endif + } + + // Import the plugins with the GIL held. +#if defined(WITH_THREAD) + PyGILState_STATE gil_state = PyGILState_Ensure(); +#endif + + bool fatal = importPlugins(dir, plugins); + +#if defined(WITH_THREAD) + PyGILState_Release(gil_state); +#endif + + if (fatal) + break; + } +} + + +// Import the plugins from a directory. +bool PyCustomWidgets::importPlugins(const QString &dir, const QStringList &plugins) +{ + // Make sure we have sys.path. + if (!sys_path) + { + sys_path = getModuleAttr("sys", "path"); + + if (!sys_path) + return true; + } + + // Make sure we have sip.unwrapinstance. + if (!sip_unwrapinstance) + { + sip_unwrapinstance = getModuleAttr("sip", "unwrapinstance"); + + if (!sip_unwrapinstance) + return true; + } + + // Convert the directory to a Python object with native separators. + QString native_dir = QDir::toNativeSeparators(dir); + +#if PY_VERSION_HEX >= 0x03030000 + PyObject *dobj = PyUnicode_FromKindAndData(PyUnicode_2BYTE_KIND, native_dir.constData(), native_dir.length()); + + if (!dobj) + { + PyErr_Print(); + return false; + } +#elif PY_VERSION_HEX >= 0x03000000 +#if defined(Py_UNICODE_WIDE) + QVector ucs4 = native_dir.toUcs4(); + + PyObject *dobj = PyUnicode_FromUnicode(0, ucs4.size()); + + if (!dobj) + { + PyErr_Print(); + return false; + } + + memcpy(PyUnicode_AS_UNICODE(dobj), ucs4.constData(), + ucs4.size() * sizeof (Py_UNICODE)); +#else + PyObject *dobj = PyUnicode_FromUnicode(0, native_dir.length()); + + if (!dobj) + { + PyErr_Print(); + return false; + } + + memcpy(PyUnicode_AS_UNICODE(dobj), native_dir.utf16(), + native_dir.length() * sizeof (Py_UNICODE)); +#endif +#else + PyObject *dobj = PyString_FromString(native_dir.toLatin1().constData()); + + if (!dobj) + { + PyErr_Print(); + return false; + } +#endif + + // Add the directory to sys.path. + int rc = PyList_Append(sys_path, dobj); + Py_DECREF(dobj); + + if (rc < 0) + { + PyErr_Print(); + return false; + } + + // Import each plugin. + for (int plug = 0; plug < plugins.size(); ++plug) + { + PyObject *plug_mod = PyImport_ImportModule(plugins.at(plug).toLatin1().data()); + + if (!plug_mod) + { + PyErr_Print(); + continue; + } + + // Make sure we have QPyDesignerCustomWidgetPlugin. We make sure this + // is after the import of the first plugin to allow that plugin to + // change any API versions. + if (!qtdesigner_custom) + { + qtdesigner_custom = getModuleAttr("PyQt5.QtDesigner", "QPyDesignerCustomWidgetPlugin"); + + if (!qtdesigner_custom) + return true; + } + + // Go through the module looking for types that implement + // QDesignerCustomWidgetInterface (ie. by deriving from + // QPyDesignerCustomWidgetPlugin). + PyObject *mod_dict = PyModule_GetDict(plug_mod); + PyObject *key, *value; + Py_ssize_t pos = 0; + + while (PyDict_Next(mod_dict, &pos, &key, &value)) + { + if (!PyType_Check(value)) + continue; + + if (value == qtdesigner_custom) + continue; + + if (!PyType_IsSubtype((PyTypeObject *)value, (PyTypeObject *)qtdesigner_custom)) + continue; + + // Create the plugin instance. Note that we don't give it a + // parent, which make things easier. It also means that Python + // owns the instance so we don't decrement the reference count so + // that it doesn't get garbage collected. + PyObject *plugobj = PyObject_CallObject(value, NULL); + + if (!plugobj) + { + PyErr_Print(); + continue; + } + + // Get the address of the C++ instance. + PyObject *plugaddr = PyObject_CallFunctionObjArgs(sip_unwrapinstance, plugobj, NULL); + + if (!plugaddr) + { + Py_DECREF(plugobj); + PyErr_Print(); + continue; + } + + void *addr = PyLong_AsVoidPtr(plugaddr); + Py_DECREF(plugaddr); + + widgets.append(reinterpret_cast(addr)); + } + + Py_DECREF(plug_mod); + } + + // No fatal errors. + return false; +} + + +// Return the list of custom widgets. +QList PyCustomWidgets::customWidgets() const +{ + return widgets; +} + + +// Return the named attribute object from the named module. +PyObject *PyCustomWidgets::getModuleAttr(const char *module, const char *attr) +{ + PyObject *mod = PyImport_ImportModule(module); + + if (!mod) + { + PyErr_Print(); + return 0; + } + + PyObject *obj = PyObject_GetAttrString(mod, attr); + + Py_DECREF(mod); + + if (!obj) + { + PyErr_Print(); + return 0; + } + + return obj; +} diff --git a/designer/pluginloader.h b/designer/pluginloader.h new file mode 100644 index 0000000..fee74df --- /dev/null +++ b/designer/pluginloader.h @@ -0,0 +1,66 @@ +/* + * This is the interface of the Qt Designer plugin. + * + * Copyright (c) 2018 Riverbank Computing Limited + * + * This file is part of PyQt5. + * + * This file may be used under the terms of the GNU General Public License + * version 3.0 as published by the Free Software Foundation and appearing in + * the file LICENSE included in the packaging of this file. Please review the + * following information to ensure the GNU General Public License version 3.0 + * requirements will be met: http://www.gnu.org/copyleft/gpl.html. + * + * If you do not wish to use this file under the terms of the GPL version 3.0 + * then you may purchase a commercial license. For more information contact + * info@riverbankcomputing.com. + * + * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE + * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + */ + + +#ifndef _PLUGINLOADER_H +#define _PLUGINLOADER_H + +#include + +#include +#include +#include + + +QT_BEGIN_NAMESPACE +class QDesignerCustomWidgetInterface; +QT_END_NAMESPACE + + +class PyCustomWidgets + : public QObject, public QDesignerCustomWidgetCollectionInterface +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QDesignerCustomWidgetCollectionInterface") + Q_INTERFACES(QDesignerCustomWidgetCollectionInterface) + +public: + PyCustomWidgets(QObject *parent = 0); + + virtual QList customWidgets() const; + +private: + bool importPlugins(const QString &dir, const QStringList &plugins); + static PyObject *getModuleAttr(const char *module, const char *attr); + + // The sys.path object if we need it. + PyObject *sys_path; + + // The sip.unwrapinstance object if we need it. + PyObject *sip_unwrapinstance; + + // The PyQt5.QtDesigner.QPyDesignerCustomWidgetPlugin object if we need it. + PyObject *qtdesigner_custom; + + QList widgets; +}; + +#endif diff --git a/examples/README b/examples/README new file mode 100644 index 0000000..bc1ac67 --- /dev/null +++ b/examples/README @@ -0,0 +1,25 @@ +PyQt is supplied with a number of example applications and demonstrations that +have been written to provide developers with examples of the Qt API in use, +highlight good programming practise, and showcase features found in each of +Qt's core technologies. + +The example and demo launcher can be used to explore the different categories +available. It provides an overview of each example, lets you view the +documentation in Qt Assistant, and is able to launch examples and demos. + +Documentation for these examples can be found in the Tutorial and Examples +section of the Qt documentation. + + +Finding the PyQt Examples and Demos launcher +============================================ + +On Windows: + +The launcher can be accessed via the Windows Start menu. Select the menu +entry entitled "Examples and Demos" entry in the submenu containing PyQt5. + +On all platforms: + +The source code for the launcher can be found in the examples/demos/qtdemo +directory in the PyQt package. diff --git a/examples/activeqt/README b/examples/activeqt/README new file mode 100644 index 0000000..97ff42f --- /dev/null +++ b/examples/activeqt/README @@ -0,0 +1,24 @@ +On Windows PyQt provides support for integration with ActiveX controls. + +These examples demonstrate the basic techniques used to take advantage of +ActiveX in PyQt applications. + +The example launcher provided with PyQt can be used to explore each of the +examples in this directory. + +Documentation for these examples can be found via the Tutorial and Examples +link in the main Qt documentation. + + +Finding the PyQt Examples and Demos launcher +============================================ + +On Windows: + +The launcher can be accessed via the Windows Start menu. Select the menu +entry entitled "Examples and Demos" entry in the submenu containing PyQt5. + +On all platforms: + +The source code for the launcher can be found in the examples/demos/qtdemo +directory in the PyQt package. diff --git a/examples/activeqt/webbrowser/icons/image0.xpm b/examples/activeqt/webbrowser/icons/image0.xpm new file mode 100644 index 0000000..0eb3a23 --- /dev/null +++ b/examples/activeqt/webbrowser/icons/image0.xpm @@ -0,0 +1,38 @@ +/* XPM */ +static char *image0[]={ +"32 32 3 1", +". c None", +"a c #000080", +"# c #808080", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +".......#aaaaaaaaa...............", +"......#aaaaaaaaaaa.........a....", +".....#aaa.......aaa.......aa....", +"....#aaa.........aaaa....aaa....", +"....aaa...........aaaa..aaaa....", +"....aa..............aaaaaaaa....", +"....aa...............aaaaaaa....", +"....aa...............aaaaaaa....", +"....aa..............aaaaaaaa....", +"....aa.............aaaaaaaaa....", +"....#aa...........aaaaaaaaaa....", +".....#aa.........aaaaaaaaaaa....", +"......aa#.......................", +".......aa#......................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................"}; diff --git a/examples/activeqt/webbrowser/icons/image1.xpm b/examples/activeqt/webbrowser/icons/image1.xpm new file mode 100644 index 0000000..7808a87 --- /dev/null +++ b/examples/activeqt/webbrowser/icons/image1.xpm @@ -0,0 +1,177 @@ +/* XPM */ +static char *image1[]={ +"32 32 142 2", +"Qt c None", +"#O c #0010f7", +"#P c #0021ef", +"#R c #0021f7", +"#S c #0021ff", +"#T c #0029ff", +"ah c #0031ff", +"#N c #0829f7", +"#x c #0831ff", +"#C c #0839ff", +"#E c #1029e7", +"#r c #1039ff", +"#o c #1042ff", +"#Q c #1831de", +"ak c #1831e7", +"#k c #1842ff", +"#H c #184aff", +"aj c #2139e7", +"#s c #2142de", +"#G c #214aff", +".9 c #2152ff", +"#2 c #2939c6", +"ag c #2939d6", +"a# c #2942ce", +"#p c #2942de", +"#U c #2952ff", +"ae c #295aff", +"#y c #3152de", +".2 c #3152e7", +"#I c #315aff", +"#z c #3163ff", +"#1 c #394abd", +"#L c #394ade", +"#B c #3963ff", +"#w c #396bff", +"#V c #4252d6", +"#l c #4252de", +"#W c #4263ef", +"#q c #426bff", +".1 c #4273ff", +"#5 c #4a5ad6", +"#J c #4a73ff", +"#K c #4a7bff", +"ac c #4a84ff", +"ab c #5263c6", +".T c #5263ce", +".M c #5273d6", +".c c #5273e7", +".U c #527bde", +"#t c #527bf7", +"#A c #5284ff", +"#X c #5a63ad", +".V c #5a84ef", +"#F c #5a84ff", +"#v c #5a8cff", +"ad c #636bbd", +".e c #637bc6", +".W c #637bce", +".3 c #637bd6", +".Q c #6384de", +".5 c #638cef", +"#b c #638cff", +"#j c #6394ff", +"af c #6b73bd", +"#0 c #6b73c6", +".S c #6b84ce", +"#u c #6b94ff", +".C c #6b9cff", +"ai c #737bce", +".z c #7384b5", +".j c #7384c6", +"#6 c #738cce", +".4 c #738cd6", +".b c #739ce7", +".I c #73a5ff", +"#n c #73adff", +"#Z c #7b84b5", +".R c #7b8cbd", +".J c #7b94bd", +".n c #7ba5e7", +".P c #7badff", +"#c c #7bb5ff", +"#M c #84849c", +"#3 c #8484ad", +".i c #848cc6", +"al c #8494bd", +"aa c #849cc6", +".y c #84adff", +".O c #84b5ff", +"#a c #84bdff", +".t c #8c94ad", +".a c #8c94b5", +".D c #8c9cbd", +".m c #8c9cce", +".A c #8ca5ef", +".f c #8cadf7", +".H c #8cbdff", +"#D c #9494a5", +"#8 c #9494bd", +"#9 c #9494c6", +"a. c #949cbd", +".r c #94c6ff", +"#d c #94ceff", +"#4 c #9ca5ad", +"#7 c #9ca5b5", +".u c #9cbdf7", +".6 c #9cc6ff", +".0 c #9cceff", +".x c #9cd6ff", +".L c #a5a5b5", +"#Y c #a5a5bd", +"#e c #a5ceff", +"## c #a5d6ff", +".X c #adadb5", +".k c #adc6ff", +"#i c #add6ff", +".E c #b5b5b5", +".d c #b5b5bd", +".K c #b5bdc6", +".F c #b5ceff", +".N c #b5d6ff", +".B c #b5deff", +".s c #bdbdbd", +".# c #bdbdc6", +"#. c #bdd6ff", +".G c #bde7ff", +"#h c #c6e7ff", +"#f c #c6efff", +".w c #c6f7ff", +".h c #ced6ff", +".Y c #cee7ff", +".q c #ceefff", +".Z c #cef7ff", +".l c #d6efff", +".8 c #d6f7ff", +".o c #deefff", +".7 c #def7ff", +"#m c #deffff", +"#g c #e7ffff", +".v c #efffff", +".p c #f7ffff", +".g c #ffffff", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQt.#.a.b.c.aQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQt.d.e.f.g.h.iQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQt.d.j.k.g.g.l.mQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQt.a.n.o.g.p.q.r.mQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQt.s.t.u.g.g.v.w.x.y.mQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQt.z.A.g.g.v.B.x.r.C.DQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQt.E.a.F.g.g.v.G.r.H.H.I.JQtQtQtQtQtQtQtQtQtQt.s.s.K.K.KQtQt", +"QtQt.L.M.N.g.g.q.x.H.O.y.P.P.Q.LQtQtQt.s.s.K.a.R.S.T.U.V.V.Q.W.X", +"Qt.#.Q.Y.g.g.Z.0.O.y.P.P.P.P.1.2.3.4.S.e.c.5.f.6.N.l.7.8.Z.0.9.T", +".s.W#..g.p.Z###a.O.P.P.I.I.P#b#c#d#e.B#f#g.7.8.8.q#h#i.r.H#j#k#l", +".e#e.g#m.G#d.O.y.P.I.I.I.I.I.I.H.6####.0.r.H#a.O#c.I#n.I#j.1#o#p", +".5.p#f.x.0.O.y.P.I.I.I.I.I.I.I.I.I.I.I.I.I.I.I.I.I.C.C.C#b#q#r#s", +"#t##.r.H.O#c.P.I.I.I.I.I.I.C.I.C.C.I.C.I.C.C.C.C#u.C#j#j#v#w#x#p", +"#y#z#j.I.I.P.I.I.C.C.C.I.I.C.C#j#b#v#v#b#j#j#j#b#j#v#b#v#A#B#C#p", +"#D#E#k#q#A#j.C.I.C.I.C.C.C.I#F#G#k#k#H#G#I#B.1.1#J#K#K.1#q#z#x#L", +".s#M#N#r#z#K#b#u.C#u.C.C.I.I#B#O#P#Q#E#P#R#S#T#x#r#r#H.9#U#G#T#V", +"QtQt.z#N#r#I.1#v#j#u#j.C#u.I#W#X#D.s#Y#D#Z#0#1#2#Q#P#P#N#N#T#E#3", +"QtQt.s#4#5#x#H#B#K#v#j#j#j#j#6QtQtQtQtQtQtQt.s.s.d.X#7#8#9a..X.s", +"QtQtQtQt.da##S#k#z#J#v#b#j#vaaQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQt.Eab#x#o#I#K#v#vac.iQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQt.sad#E#rae#q#K#wafQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQt.#.Lagah#k#U#kafQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQt#4#Q#T#xahaiQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQt#4adajakalQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"}; diff --git a/examples/activeqt/webbrowser/icons/image2.xpm b/examples/activeqt/webbrowser/icons/image2.xpm new file mode 100644 index 0000000..83612c2 --- /dev/null +++ b/examples/activeqt/webbrowser/icons/image2.xpm @@ -0,0 +1,177 @@ +/* XPM */ +static char *image2[]={ +"32 32 142 2", +"Qt c None", +"#Y c #0018e7", +"aa c #0018ef", +"#E c #0018ff", +"#Q c #0021ef", +"#K c #0021ff", +"a# c #0029ff", +"a. c #0829ff", +"#P c #0831ff", +"#4 c #1021d6", +"#R c #1021de", +"#L c #1029d6", +"#V c #1029e7", +"#n c #1039f7", +"#W c #1039ff", +"#O c #1042ff", +"ah c #1831ce", +"#y c #1842ff", +"aj c #2131c6", +"#S c #2131ce", +"#z c #2139de", +".0 c #2142de", +"ai c #2142e7", +".t c #214aef", +"#D c #214aff", +".x c #2152ff", +"al c #2939de", +"#d c #294ae7", +"#I c #2952ff", +"#J c #295aff", +"#T c #3142bd", +"#N c #315aff", +"#s c #3163ff", +"#F c #394ac6", +"#G c #3952d6", +"ag c #395ae7", +".B c #3963f7", +"ae c #3963ff", +".g c #396bff", +"#U c #424ab5", +"#2 c #4252b5", +".J c #425ace", +"#A c #4263de", +".b c #426be7", +"#p c #426bef", +"#x c #426bff", +".n c #4273ff", +".o c #4a63ce", +"#t c #4a6be7", +".Q c #4a73de", +"#3 c #4a73ff", +"#C c #4a7bff", +"#Z c #525abd", +".1 c #526bbd", +".W c #526bc6", +".R c #526bce", +".P c #527be7", +"#w c #5284ff", +"#m c #528cff", +"ac c #5a63bd", +"ak c #5a6bbd", +".O c #5a7bf7", +"#H c #5a84ff", +"#9 c #5a8cff", +"af c #636bb5", +".h c #636bbd", +"ab c #6384ef", +"#v c #638cff", +".w c #6394ff", +".s c #639cff", +"#M c #6b73b5", +".C c #6b73bd", +"#u c #6b9cff", +".c c #737bb5", +".S c #7384ce", +".N c #738ce7", +".a c #7394de", +".8 c #7394ef", +"#8 c #739cf7", +"#B c #739cff", +".A c #73a5ff", +"#0 c #7b84b5", +".T c #7b8cbd", +".9 c #7b94c6", +"#. c #7b94d6", +".7 c #7ba5ff", +".X c #7badff", +".I c #7bb5ff", +"#5 c #848ca5", +".y c #848cad", +".M c #8494b5", +"## c #849cd6", +"#c c #84adff", +".G c #84b5ff", +".Z c #84bdff", +"#o c #8c8cad", +"#a c #8ca5ce", +".Y c #8cb5ff", +".H c #8cbdff", +"#1 c #9494a5", +".U c #9494ad", +"#7 c #949cad", +"#b c #94ade7", +".z c #94c6ff", +".v c #94ceff", +".j c #9c9cad", +".u c #9ca5ad", +"#r c #9cc6ff", +".m c #9cceff", +".d c #a5a5a5", +"#6 c #a5a5ad", +".V c #a5a5b5", +".K c #a5adb5", +".2 c #a5ceff", +".r c #a5d6ff", +".L c #adadad", +".i c #adadb5", +".p c #adadbd", +".q c #addeff", +"#e c #ade7ff", +"#X c #b5b5b5", +".D c #b5b5bd", +".E c #b5b5c6", +".F c #b5bdc6", +".f c #b5deff", +"#q c #b5efff", +".# c #bdbdbd", +"ad c #bdbdc6", +".6 c #bddeff", +"#i c #bde7ff", +"#h c #bdefff", +"#g c #c6f7ff", +"#l c #cee7ff", +"#j c #cef7ff", +"#f c #ceffff", +".k c #d6efff", +"#k c #d6f7ff", +".l c #d6ffff", +".e c #deefff", +".5 c #e7ffff", +".4 c #efffff", +".3 c #f7ffff", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.#.a.b.c.#QtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.d.e.f.g.h.iQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.j.k.l.m.n.o.pQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.d.f.q.r.m.s.t.cQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.u.q.v.m.r.m.w.x.y.#QtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.u.z.z.z.z.m.m.A.B.C.DQtQtQtQt", +"QtQt.#.E.F.#.#QtQtQtQtQtQtQtQtQtQt.j.G.H.z.H.z.m.m.I.n.J.KQtQtQt", +".L.M.N.O.P.Q.R.S.T.U.E.#.#QtQtQt.V.W.X.H.Y.H.H.z.z.z.Z.g.0.VQtQt", +".1.2.3.4.5.k.6.2.Y.7.8.a.9#.###a#b.Y.G.G.G.G.Y.G.Y.H.z#c.n#d.u.#", +".b#e#f#g#h#i.f#h#g#g#j#k#k#k.e.4.4#l#c.X.G.G.G.G.G.G.G.H.H#m#n#o", +"#p.m#q.r.m.m.m.z#r.m.z.m.r.q.q.q.m.H.G.G.X#c.G.G.G.X.X.X.X.7#s.J", +"#t.v.q.m.z.H.H.H.H.H.Z.Y.G.G.G.G.G.G.G.X#c.I#c.X.X.X.A.A#u#u.n#d", +"#t.H.r.z.Y.G#c.X.X.X.7.X.X.X.X.X.X.X.X.X.X.X.X.X.7.A#u#v#w#x#y#z", +"#A.I.m.H.X.X.X.A.A#B.A#B#u#u#u#u#B.X#c.X.X.X.X.A.A#u.w#C.g#D#E#F", +"#G.s.G.A.w#v#H#w#C.n#x#s#I#y#y#y#J#H.X.7.X.X.7.A#u.w#w#J#y#K#L.U", +"#M.x.n#N#D#O#P#K#K#Q#Q#R#S#T#U#U#V#W.A.X.A.A#B#u.w.n#D#P#E#L.VQt", +"#X.h#V#Q#Y#R#S#U#Z#0#1.p.#.#.#.#.V#2.s.7.A#u#u.w#3#D#P#E#4#5QtQt", +"QtQt#6#1#7.D.#.#QtQtQtQtQtQtQtQtQt#6#8#B#u.w#9#s#ya.#E#F.V.#QtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.#.8#9#H#w#s#Wa#aa#2#XQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.#ab#w#C#N#W#K#Eac.#QtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtad.Pae#J#Wa##Vaf#XQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.#ag#W#P#Eah#6QtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.#ai#K#Eaj.jQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.#akalak.iQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"}; diff --git a/examples/activeqt/webbrowser/icons/image3.xpm b/examples/activeqt/webbrowser/icons/image3.xpm new file mode 100644 index 0000000..d7ed631 --- /dev/null +++ b/examples/activeqt/webbrowser/icons/image3.xpm @@ -0,0 +1,30 @@ +/* XPM */ +static char *image3[]={ +"25 25 2 1", +"# c #000000", +". c #ffffff", +".........................", +".........................", +".........................", +".........######..........", +".......##########........", +"......####....####.......", +".....###........###......", +"....#####........###.....", +"....##.###........##.....", +"...###..###.......###....", +"...##....###.......##....", +"...##.....###......##....", +"...##......###.....##....", +"...##.......###....##....", +"...###.......###..###....", +"....##........###.##.....", +"....###........#####.....", +".....###........###......", +"......####....####.......", +".......##########........", +".........######..........", +".........................", +".........................", +".........................", +"........................."}; diff --git a/examples/activeqt/webbrowser/icons/image4.xpm b/examples/activeqt/webbrowser/icons/image4.xpm new file mode 100644 index 0000000..7dde165 --- /dev/null +++ b/examples/activeqt/webbrowser/icons/image4.xpm @@ -0,0 +1,38 @@ +/* XPM */ +static char *image4[]={ +"32 32 3 1", +". c None", +"# c #000080", +"a c #808080", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"...............#########a.......", +"....#.........###########a......", +"....##.......###.......###a.....", +"....###....####.........###a....", +"....####..####...........###....", +"....########..............##....", +"....#######...............##....", +"....#######...............##....", +"....########..............##....", +"....#########.............##....", +"....##########...........##a....", +"....###########.........##a.....", +".......................a##......", +"......................a##.......", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................", +"................................"}; diff --git a/examples/activeqt/webbrowser/icons/image5.xpm b/examples/activeqt/webbrowser/icons/image5.xpm new file mode 100644 index 0000000..ec72a8a --- /dev/null +++ b/examples/activeqt/webbrowser/icons/image5.xpm @@ -0,0 +1,246 @@ +/* XPM */ +static char *image5[]={ +"32 32 211 2", +"Qt c None", +"aJ c #000000", +"#W c #080800", +"#N c #100800", +"#V c #101000", +"#E c #101008", +"#M c #181000", +"#L c #181800", +"#D c #181808", +"#F c #181810", +"as c #211800", +"#K c #211808", +"#J c #212110", +"#G c #212118", +"#q c #212121", +"an c #292100", +"#I c #292110", +"aN c #292910", +"#H c #292918", +"#y c #292921", +"aF c #312900", +"#C c #312918", +"#i c #312929", +".0 c #313131", +"#7 c #393100", +"#U c #393108", +"aG c #393931", +".M c #393939", +"#u c #423939", +"#c c #424a42", +"aE c #4a4200", +"aY c #4a4210", +".V c #4a4239", +"#B c #4a4a39", +".m c #4a4a42", +"aP c #4a5218", +".G c #4a5252", +".z c #4a5a52", +"aO c #524200", +"am c #524a00", +"#T c #524a08", +"#p c #524a4a", +".s c #525252", +"#a c #525a52", +".7 c #52635a", +"#b c #526363", +"az c #5a4a00", +"#6 c #5a5208", +"aw c #5a5210", +".Z c #5a524a", +".L c #5a5a52", +".y c #5a5a5a", +".F c #5a635a", +"#S c #635208", +"ax c #635a10", +".U c #635a52", +".r c #635a5a", +"aZ c #636321", +"## c #63635a", +".A c #636363", +"#h c #636b6b", +"aL c #637329", +"af c #6b5a00", +".6 c #6b635a", +"#o c #6b6363", +".E c #6b6b63", +"a4 c #6b7321", +"aS c #6b7329", +"aR c #6b7331", +"aX c #736300", +"al c #736308", +"#R c #736b10", +".T c #736b63", +"a5 c #737329", +".i c #73736b", +".K c #737373", +"a7 c #737b29", +"#g c #737b73", +"a9 c #7b7318", +"#A c #7b7373", +"a8 c #7b7b21", +"aV c #7b7b29", +"aQ c #7b7b5a", +".J c #7b7b73", +".1 c #7b7b7b", +"b# c #7b8431", +"a3 c #7b844a", +".8 c #7b847b", +"ay c #847308", +"#5 c #847310", +"aT c #847b21", +"b. c #847b29", +".S c #847b73", +".d c #847b7b", +"aW c #848421", +"a1 c #848429", +"a0 c #848431", +"bq c #84844a", +".H c #848484", +"ae c #8c7b08", +"ak c #8c7b10", +"#j c #8c8484", +"ba c #8c8c63", +"a2 c #8c8c7b", +".x c #8c8c84", +".2 c #8c948c", +".9 c #8cada5", +"aC c #947b08", +".Y c #947b73", +"aK c #948c10", +"#Q c #948c18", +"a6 c #948c29", +"#m c #948c84", +"bp c #949442", +"aH c #949484", +".D c #94948c", +".n c #949494", +"bn c #949c4a", +"bl c #949c5a", +"bj c #949c63", +".u c #949c94", +".v c #94a59c", +"aI c #9c8c10", +"#4 c #9c8c18", +"#O c #9c8c29", +"aM c #9c9418", +"#r c #9c948c", +"bo c #9c9c4a", +"bm c #9c9c52", +"bk c #9c9c5a", +"bh c #9c9c6b", +".k c #9c9c94", +".a c #9c9c9c", +"bi c #9ca56b", +"bf c #9ca573", +".h c #9ca59c", +"#f c #9ca5a5", +".B c #9cbdb5", +"#P c #a59400", +"aB c #a59418", +"#k c #a5948c", +"ar c #a59c29", +".N c #a59c8c", +".P c #a59c94", +".W c #a59c9c", +"bg c #a5a573", +"bd c #a5a584", +".q c #a5a59c", +".c c #a5a5a5", +"be c #a5ad7b", +".o c #a5ada5", +".C c #a5adad", +".I c #a5b5ad", +"#d c #a5bdb5", +".w c #a5c6bd", +"ad c #ad9c10", +"aj c #ad9c18", +"#w c #ad9c94", +".f c #ada59c", +"bc c #adad7b", +"bb c #adad84", +".# c #adada5", +".t c #adadad", +".4 c #adb5ad", +"ai c #b5a518", +"aq c #b5a529", +"aD c #b5a542", +"ao c #b5a54a", +".O c #b5a594", +"#v c #b5a59c", +"at c #b5ad52", +"#z c #b5ad9c", +".5 c #b5ada5", +".j c #b5b5ad", +".e c #b5b5b5", +".3 c #b5bdb5", +".Q c #b5bdbd", +"#e c #b5cec6", +"#8 c #bda539", +"#x c #bda59c", +"#3 c #bdad29", +"#X c #bdad31", +"ag c #bdad42", +"#n c #bdb5ad", +".b c #bdbdbd", +".X c #bdcec6", +"aU c #c6b510", +"#. c #c6c6bd", +".p c #c6cece", +".g c #c6ded6", +"ac c #cebd31", +"#l c #ced6ce", +"#s c #ced6d6", +"#t c #cedede", +"#9 c #d6c610", +"#2 c #d6c631", +"ap c #dec608", +"ah c #dece10", +"ab c #dece31", +".l c #deefe7", +".R c #deefef", +"au c #e7ce08", +"a. c #e7d621", +"a# c #e7d631", +"aa c #e7d639", +"#1 c #e7de39", +"#Y c #efde10", +"av c #efde21", +"aA c #efde29", +"#Z c #f7e729", +"#0 c #f7e739", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.#.aQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQt.b.c.d.eQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQt.f.g.h.i.bQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQt.j.k.l.e.m.nQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQt.b.a.o.p.q.r.s.tQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQt.u.v.w.k.x.y.z.A.bQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQt.t.k.B.C.k.D.E.F.G.HQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQt.b.#.#.o.I.b.c.J.K.L.M.tQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQt.a.N.O.P.Q.R.o.S.T.U.V.s.bQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQt.t.N.P.W.k.X.R.P.Y.i.A.Z.0.1QtQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQt.b.x.2.w.3.4.I.j.#.5.6.L.F.7.0.cQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQt.n.8.9.p#..o.4.x.x.x##.s#a#b.s#c.bQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQt.t.D.##d#e.h#f.o.P.2.2#g###h.A.z#i.KQtQtQtQtQtQtQt", +"QtQtQtQtQtQt.b#j.P.f.P#k.q.4.X#l#m#n.n#o.J.6#p#i#q.cQtQtQtQtQtQt", +"QtQtQtQtQtQt.W#m#k.O#m#r.5.k#s#t#m.q#r.U.E.T#p#u#i.M.eQtQtQtQtQt", +"QtQtQtQtQt.b.x#r.o.t#v.f.o.4.l#l#w#x.f.i#o.E###a.m#y.nQtQtQtQtQt", +"QtQtQtQtQt.b.e.c#d.o#z.u.q#f.I.q.#.#.2#A.U.m#B#h.h.j.bQtQtQtQtQt", +"QtQtQtQtQtQtQtQt.b#C#D#E#F#G#G#G#H#I#J#K#L#M#N.iQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQt.b#O#P#Q#R#S#T#U#L#M#V#W#N#V#V.iQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQt.b#X#Y#Z#0#0#1#2#3#4#5#6#7#M#V#AQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQt.b#8#9a.a#aaaaabac#3adaeaf#7#M.JQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQt.bagaha.a##1aaaa#2aiajakalaman#AQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtaoapa.a#aaaqaraq#3aj#5afamas.JQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtatauava#aw#V#W#Max#4ayafazan.JQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtatahaAaB#W#N#M#V#V#RaCalazas.JQtQtQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQt.baDap#Z#Q#N#M#V#M#N#6akafaEaFaG.E#h.JQtQtQtQtQt", +"QtQtQtQtQtQtQtQtaHaIahaAaB#W#W#N#WaJ#6aKalamaF#WaJaJ#yQtQtQtQtQt", +"QtQtQtQtQtQtQt.qaLaIahavaM#WaJ#W#DaN#RaealaOan#NaNaPaQQtQtQtQtQt", +"QtQtQtQtQtQt.jaRaSaTaUavaB#WaNaPaLaVaWaeaX#6aYaZa0a1a2QtQtQtQtQt", +"QtQtQtQtQt.ba3a4a5a5aVa6a1aZa7aSaSa5a8a9a4a5b.b#a5a5.kQtQtQtQtQt", +"QtQtQtQtQtbaa7a7aVa0b.b#a7b#a0a7a7a7aSaSa7b.aVa0aVaR.#QtQtQtQtQt", +"QtQtQtQtQtbbbcbdbebebfbgbhbhbibjbjbkbkblbmbmbnbobpbq.bQtQtQtQtQt"}; diff --git a/examples/activeqt/webbrowser/icons/image6.xpm b/examples/activeqt/webbrowser/icons/image6.xpm new file mode 100644 index 0000000..8507aef --- /dev/null +++ b/examples/activeqt/webbrowser/icons/image6.xpm @@ -0,0 +1,190 @@ +/* XPM */ +static char *image6[]={ +"22 22 165 2", +"Qt c None", +".h c #000000", +".o c #010101", +"aF c #030303", +"#n c #060606", +".H c #080808", +".r c #0c0c0c", +".q c #121212", +"#V c #124e7f", +"#m c #131313", +".G c #161615", +"aI c #172cac", +".6 c #181818", +"aH c #1841b2", +".p c #191919", +"#8 c #1928ba", +"#W c #1929ba", +"aj c #192aba", +"av c #1a31c2", +"aE c #1b1b1b", +"aD c #1b2bc8", +"at c #1c79d2", +"ah c #1c7dd4", +"aA c #1d1d1d", +"aC c #1d7ad7", +"#6 c #1d7eda", +".5 c #1e1e1e", +"#7 c #1e8ae0", +"ai c #1e8de0", +"au c #1e90e0", +".g c #242424", +"#5 c #313b6c", +"aB c #343d8d", +"#3 c #393939", +".f c #3d3d3d", +"ak c #433967", +"#C c #434442", +"aw c #443c6e", +"#l c #454643", +"as c #454fa3", +".4 c #474845", +"#R c #474846", +".e c #484848", +"aG c #4856a0", +".d c #4a4a4a", +"#9 c #4c416a", +".c c #4c4c4c", +"ag c #4c5cae", +"#X c #4d4669", +"#z c #4dc2b2", +"#P c #4e445a", +"#G c #53504e", +".l c #545454", +".b c #555555", +"#Q c #595274", +"#i c #62b2a2", +".a c #676767", +"#j c #69b6a3", +".F c #6f6f6a", +".K c #6f8b89", +"ax c #747474", +"#a c #76a1a0", +".# c #797979", +"#A c #7bd7e8", +"ay c #7d7d7d", +"#U c #7e7d73", +".I c #808080", +".O c #81a3b8", +"az c #828282", +"#y c #82d1c0", +"#S c #848484", +"#O c #857e7c", +"#F c #86add2", +"#k c #86cdda", +"#N c #89b1bd", +"#h c #8acec3", +"#o c #8c8c8c", +"#L c #8cbbca", +"al c #8d8d8d", +".s c #8f8f8f", +"#H c #909090", +"#K c #90bac9", +"#M c #91c4cf", +"#t c #929292", +".X c #94c2cf", +".N c #94c2d0", +".W c #959595", +"#B c #96b9cb", +".3 c #97bede", +".L c #98c2ce", +".P c #9b9b9b", +"a. c #9c9c9c", +"am c #9d9d9d", +"#s c #9dbdc4", +"#b c #9e9e9e", +"#Y c #a0a0a0", +"an c #a6a6a6", +"#v c #a6d1d6", +".Z c #a7a1a1", +"#I c #a7a7a7", +"#D c #a7edde", +".M c #a8d8e5", +"#u c #aeaeae", +"ac c #b1b1b1", +"a# c #b2b2b2", +".2 c #b5cbd6", +".V c #b6b6b6", +"ar c #b7b7b7", +"#Z c #b8b8b8", +"#2 c #bababa", +".Q c #babbb9", +"aq c #bbbbbb", +"#c c #bcbcbc", +".8 c #bfbfbf", +"ap c #c0c0c0", +".1 c #c1d9d2", +"aa c #c8c8c8", +"ab c #cacaca", +"ao c #cbcbcb", +".Y c #ccf8f1", +"#J c #cdcdcd", +".R c #cecece", +"#p c #d1f9f4", +"#4 c #d5d5d5", +"#w c #d5ece4", +".9 c #d5f6f5", +"#0 c #d6d6d6", +".U c #d7d7d7", +"af c #d8d8d8", +".x c #dadada", +".y c #dbdbdb", +".w c #dcdcdc", +"#e c #dcf7f4", +"#1 c #dddddd", +"ae c #dedede", +".E c #dfdfdf", +".z c #e0e0e0", +"#g c #e0ebe4", +"#q c #e1edea", +"#d c #e2e2e2", +"#x c #e2ebe2", +".0 c #e2eee5", +".v c #e3e3e3", +"## c #e3e7d5", +"#r c #e4ebd9", +"#E c #e4f2ec", +".u c #e5e5e5", +".S c #e7e7e7", +".k c #e9e9e9", +".A c #ebebeb", +".D c #ededed", +".t c #f0f0f0", +"#T c #f4f4f4", +".n c #f6f6f6", +".C c #f7f7f7", +"#f c #f8f5f2", +".m c #f8f8f8", +".7 c #f9f9f9", +"ad c #fafafa", +"#. c #fbf0eb", +".J c #fbfbfb", +".T c #fcfcfc", +".B c #fdfdfd", +".j c #fefefe", +".i c #ffffff", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt", +"QtQtQtQtQt.#.a.b.c.d.d.e.f.g.hQtQtQtQtQtQtQt", +"QtQtQtQt.#.i.i.i.i.i.i.i.i.i.h.hQtQtQtQtQtQt", +"QtQtQtQt.a.j.j.j.j.j.j.i.i.i.h.k.hQtQtQtQtQt", +"QtQtQtQt.l.m.n.o.p.q.r.s.j.i.h.t.u.hQtQtQtQt", +"QtQtQtQt.e.v.w.x.y.z.A.n.B.B.h.C.D.E.hQtQtQt", +"QtQtQt.h.h.h.h.h.F.G.H.I.n.J.h.h.h.h.h.hQtQt", +"QtQt.h.K.L.M.N.O.h.P.Q.R.S.n.T.j.U.V.W.hQtQt", +"Qt.h.X.Y.Z.0.1.2.3.h.4.5.6.q.r.s.7.v.8.hQtQt", +"Qt.h.9#..###.F.F.F#a.h#b#c#d.m.j.7.v#c.hQtQt", +"Qt.h#e#f.a#g#h#i#j#k.h#l#m.r#n#o.7.v#c.hQtQt", +"Qt.h#p#q.a#r.F.F.F#s.h#t#u.x.n.j.7.v#c.hQtQt", +"Qt.h#v#w.##x#y#z#A#B.h#C#m#m.q#o.7.v#c.hQtQt", +"QtQt.h#D.Z#E.F.F#F.h#G#H#I#J.A.7.m.v#c.hQtQt", +"QtQtQt.h#K#L#M#N.h#O#P#Q#R#m.q#S#T#d#c.hQtQt", +"QtQtQtQt.h.h.h.h.Z#U#V#W#X#Y#Z#0.S#1#2.hQtQt", +"QtQtQtQt#3.t.v.x#4#5#6#7#8#9a.a#aaabac.hQtQt", +"QtQtQtQt.6ad.kae.yafagahaiajakalamana..oQtQt", +"QtQtQtQt.haeaoapaqaqarasatauavawaxayaz.oQtQt", +"QtQtQtQtQt.h.h.h.h.haA.oaBaCaiaD.HaEaFQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtaGaHaIQtQtQtQtQtQt", +"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"}; diff --git a/examples/activeqt/webbrowser/mainwindow.qrc b/examples/activeqt/webbrowser/mainwindow.qrc new file mode 100644 index 0000000..b95d874 --- /dev/null +++ b/examples/activeqt/webbrowser/mainwindow.qrc @@ -0,0 +1,11 @@ + + + icons/image0.xpm + icons/image1.xpm + icons/image2.xpm + icons/image3.xpm + icons/image4.xpm + icons/image5.xpm + icons/image6.xpm + + diff --git a/examples/activeqt/webbrowser/mainwindow.ui b/examples/activeqt/webbrowser/mainwindow.ui new file mode 100644 index 0000000..5f80470 --- /dev/null +++ b/examples/activeqt/webbrowser/mainwindow.ui @@ -0,0 +1,215 @@ + + MainWindow + + + + 0 + 0 + 812 + 605 + + + + Qt WebBrowser + + + + + 0 + + + 6 + + + + + QFrame::StyledPanel + + + QFrame::Sunken + + + + 1 + + + 0 + + + + + Qt::StrongFocus + + + {8856F961-340A-11D0-A96B-00C04FD705A2} + + + + + + + + + + + Navigation + + + Qt::Horizontal + + + 4 + + + + + + + + + + + + Address + + + Qt::Horizontal + + + 4 + + + + + + + 0 + 0 + 812 + 26 + + + + + &File + + + + New + + + + + + + + + + + &Help + + + + + + + + + + :/icons/image0.xpm + + + Go + + + + + :/icons/image1.xpm + + + Back + + + Backspace + + + + + :/icons/image2.xpm + + + Forward + + + + + :/icons/image3.xpm + + + Stop + + + + + :/icons/image4.xpm + + + Refresh + + + + + :/icons/image5.xpm + + + Home + + + + + C&lose + + + Close + + + + + :/icons/image6.xpm + + + Search + + + + + About + + + + + About Qt + + + + + + Window + + + Ctrl+N + + + + + + + + QAxWidget + QWidget +
qaxwidget.h
+ 1 +
+
+ +
diff --git a/examples/activeqt/webbrowser/mainwindow_rc.py b/examples/activeqt/webbrowser/mainwindow_rc.py new file mode 100644 index 0000000..63109c7 --- /dev/null +++ b/examples/activeqt/webbrowser/mainwindow_rc.py @@ -0,0 +1,863 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Thu May 2 15:37:04 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x00\xa7\ +\x00\ +\x00\x03\x23\x78\x9c\xd3\xd7\x52\x88\x08\xf0\x55\xd0\xd2\xe7\x2a\ +\x2e\x49\x2c\xc9\x4c\x56\x48\xce\x48\x2c\x52\xd0\xca\xcc\x4d\x4c\ +\x4f\x35\x8e\x8e\xb5\xad\xe6\x52\x32\x32\x55\x00\x21\x05\x43\x25\ +\x1d\x2e\x25\x65\x85\x64\x05\x65\x03\x30\x00\x71\xf5\x40\xdc\x34\ +\x30\x00\x73\x71\x01\x2a\x49\x2a\x83\x01\x56\x49\x65\x38\xc0\x94\ +\x84\x89\x22\xc9\xc2\x25\x91\x34\xc0\x99\x30\x49\x14\xe3\x60\x4c\ +\x84\x24\xaa\x5e\x64\x49\xb0\x04\x42\x16\xca\x82\x4b\xa2\xda\x8b\ +\x45\x12\x21\x8b\x4d\x12\x2e\x8b\x55\x52\x0f\xee\x59\x74\x07\x21\ +\x64\x51\x1d\xa4\x87\xea\x49\x0c\x7f\x22\xcb\xa2\x49\xe2\x0d\x3e\ +\xfc\x01\x8f\x3f\xca\xe0\xd2\x70\x2e\xb5\xd2\x10\x69\x92\xb5\xd6\ +\x5c\x00\xe0\x4d\x89\x7e\ +\x00\x00\x05\x19\ +\x00\ +\x00\x11\x8f\x78\x9c\xe5\x96\x5b\x4f\x23\x47\x10\x85\xdf\xf9\x15\ +\xd6\xd6\xdb\x2a\xaa\xc5\xe3\xb9\x2a\xca\x03\x77\x03\xcb\xc5\x5c\ +\x8c\x21\xca\x43\xcf\x8c\x6f\x80\xcd\xc5\x06\x83\xa3\xfc\xf7\x54\ +\xf7\xa9\xee\x45\xbb\xfb\xb0\x6c\xa4\x48\x51\x54\x80\xf8\x5c\x5d\ +\xa7\x4e\xd7\xf4\x8c\xe7\xd3\xc7\x46\xef\xf8\xa0\xf1\xf1\xd3\xca\ +\x6c\x6e\xe6\xe3\xaa\x51\x8d\xcc\x63\xe3\xe3\x78\x62\x86\xfd\xe8\ +\xf7\x3f\x7e\xfb\x73\xe5\x43\x2b\x6a\xc8\x4f\x33\x8e\x1a\xd1\x87\ +\x5f\x56\x3e\x74\xe6\x8d\xaa\x71\x78\x37\xed\x5b\xa0\x4b\x01\x5a\ +\x5d\x6d\xe6\xfd\xcc\xb2\x31\x81\x07\x2e\xbf\xe5\x79\x00\xee\x80\ +\xa3\xa6\xe6\xf7\x3d\x23\x6f\x48\xb9\x50\x66\xc7\xb9\x67\x3a\x06\ +\xb7\x74\x3d\xc5\x96\x9b\x52\x5f\xa7\x8e\x4f\x02\xc3\xdf\x67\xe5\ +\x42\xf3\x5d\xcf\xf0\x4b\x53\x70\xab\x18\x80\x2f\x02\x43\xff\x08\ +\x1c\x47\xea\x67\xe4\x58\xfa\x57\xd0\x7f\x05\x87\xfc\xb5\xe5\xa8\ +\x29\x79\xf4\x3b\x0d\x8c\xf5\x4b\xe5\x02\xfe\x78\x15\x1c\x47\x60\ +\x33\xf6\x0c\x7f\x3c\x57\x36\x3a\xaf\x4d\xcf\xe8\xc7\x2f\xe0\xc4\ +\xf7\xbf\x75\x5c\x78\x7d\xaa\xc1\x52\x8f\xfd\xed\x82\xfd\x7a\xda\ +\x53\x56\x3d\x3a\xb3\xdc\x92\xfe\x65\xed\xf8\x10\x1c\xf2\x33\x70\ +\xda\x52\xde\x76\x2c\xfa\xba\xdf\x1d\x70\x12\x61\xde\x66\xa8\xac\ +\xfd\x79\x1d\x2c\xf5\x38\x2f\xfd\xc0\xd8\x8f\xae\x4f\x4b\xd5\x3f\ +\xb7\x1c\x47\xb1\x29\x13\xc7\x11\x38\x89\xc0\xbc\xa7\x6c\x74\xbe\ +\x6b\xe0\xb4\xa5\xf3\x2d\x95\x4b\xdd\xff\x7d\x60\xe8\xbf\x78\xd6\ +\xfe\x53\x70\xe6\xfd\xdc\x39\x36\x69\x4b\xf5\xe7\xca\xaa\xc7\x1d\ +\x70\xa6\xfd\xa8\xe5\x59\xfd\x6f\x28\xfb\xfd\x5c\x59\x4e\xc4\x2f\ +\xe6\xcb\x4d\x70\x5a\x2a\x5f\x78\xc6\x3c\xf9\x24\x30\xf6\x73\x0c\ +\xce\xfc\x7e\x16\xe0\x3c\x56\xfd\x89\x72\xa5\xe7\xa1\x72\x2c\xfe\ +\xa1\x6f\x6e\x94\x7d\xbf\x23\xb0\xf8\x83\x5e\x1b\x1c\xf4\x0a\x65\ +\xaf\x37\xb0\x9c\xb6\xa4\x1e\xf3\x1f\x05\x86\x7e\x09\xce\x63\x9d\ +\xef\xb3\xb2\xd6\xf3\x02\x5c\xa8\x3e\xcf\x94\x35\x4f\x07\x8e\xcb\ +\xac\xa5\xfa\x1b\x81\x71\x1e\x9f\xc0\x7e\x3d\xbb\xfd\x65\xad\xcc\ +\xfb\x39\x05\xe7\xb1\xce\xeb\x50\xb9\xd2\xeb\x65\xc0\x45\xac\xe7\ +\x23\xf7\xac\x7e\x3d\x57\x3a\x8f\xf5\xc0\xe8\xb7\x06\x36\x89\xfa\ +\x75\xf7\x6f\x56\xe6\xb1\xf6\x3f\x53\xae\x74\xbe\x05\xb8\x88\xf5\ +\xfe\x60\xcf\xb8\x3f\x38\x03\x7b\x3d\xee\x29\xd7\xca\xbb\xe0\xd2\ +\xf7\x4b\x2c\xe7\x71\x5e\x19\xf4\x7b\x0d\x8c\x7e\x07\xe0\x42\xfd\ +\x10\x29\x57\xfa\xfc\xab\xc0\x41\x7f\x07\xec\xf5\xf9\x4a\x59\xf3\ +\xe4\xce\x7f\x5e\x79\x7d\x32\x60\x93\xe8\x7c\x2f\xc1\xa1\xbe\xad\ +\xec\xeb\xdd\xf9\x2e\xc4\x8f\xfa\x3d\x0f\x0c\xbd\x4c\xd9\xeb\x97\ +\x60\x53\xeb\xf5\x5a\x82\xab\x54\xf5\x9f\x95\xfb\xca\xee\x79\x5b\ +\x54\xbe\x9e\x9f\xc0\x26\x51\xbd\x47\x70\xa8\x9f\x28\xfb\x7a\xf7\ +\x7c\x94\xd5\x09\xfc\x51\x1a\x18\x7a\x5d\xcf\x7a\x7d\xf7\x95\x6b\ +\xe5\x08\x1c\xf4\x1e\xc1\xb5\xef\xe7\xbe\x7f\x4c\x6d\xc3\xf1\xd8\ +\xb3\xd6\xdf\x07\x46\xfe\x01\x5c\xab\x1e\xf5\xc1\xfd\x4c\xd9\x9d\ +\x8f\x32\x29\xbd\x9f\xcd\xc0\xa8\xdf\xf2\xac\xcf\x8f\x6d\xe5\x5a\ +\x79\x00\x0e\xfa\x0f\x60\x41\xf8\x75\xe7\xa5\xac\x4b\xf5\x63\x6a\ +\xcf\x5a\x9f\x82\x43\xfd\x18\x1c\xfc\x8d\x94\x55\x8f\xdc\xf3\x5c\ +\xa6\xef\xf3\xee\xfb\xa9\xea\x87\xf5\xd7\xe0\x90\x1f\x28\x7b\x3f\ +\xee\x79\x55\xa7\x41\x4f\xd9\xaf\xe7\x5b\x65\xbf\xde\xcd\xab\xee\ +\x87\xfd\xb8\xfb\xc5\x76\x53\x76\xef\x0b\x4e\x1e\xec\x9e\xd7\x83\ +\x90\xef\xcc\xff\x59\xfc\xff\x34\x98\xd8\x70\xc9\x15\xd3\x3f\xd0\ +\xa8\xb9\xcf\x03\x1e\xf2\x88\xc7\x3f\xad\x71\xcd\x37\x7c\xcb\x13\ +\x9e\xf2\x1d\xdf\xff\xb4\x8f\x01\x3f\xf0\xa3\xa8\xcc\x78\xce\xd5\ +\x4f\x69\x3c\x89\xc2\xb3\x28\x58\x95\x05\xbf\xf0\xeb\xdb\xc9\xfc\ +\xb0\xc6\x52\x63\x22\xb1\xc6\xeb\xbc\xc1\x9b\x5f\x6b\xc8\xe4\xb7\ +\x78\x5b\xfe\x7e\x77\xf2\x32\x8f\x1d\x6e\x8b\x42\x5b\x55\x76\x65\ +\x32\x7b\xbc\xff\x45\x83\x3f\xf3\x01\x1f\xf2\x11\x1f\x73\x87\x4f\ +\xf8\x94\xcf\xf8\x5c\x14\x83\x1e\x77\xf9\x82\x7b\x52\x7f\x29\xbf\ +\x6d\xf5\x73\x25\x57\x69\x95\xbb\x41\xa3\xc9\x11\xb7\x38\xe6\x44\ +\xa6\x9f\xca\xff\x97\x9c\x71\x2e\x27\xa2\x10\x19\x22\x43\xa5\x7c\ +\xb2\xa3\x71\xe9\x7e\x45\x89\x2a\x9e\x52\x2d\xbb\x24\xbc\xa3\x51\ +\x9f\x06\x34\xa4\x11\x8d\x79\x20\x7f\x87\x12\xd7\x74\x63\x43\xce\ +\x45\xcc\x31\xdd\x4a\x45\x2f\xe8\x20\xc4\x13\x4d\x68\x4a\x77\x78\ +\xaf\xe3\x09\xe1\xca\xd9\x58\x92\xfd\x6f\xe9\xae\xc2\x83\x8b\x89\ +\xac\xb7\x55\x3d\x51\x42\x7d\x4f\x23\xa3\x19\xef\xe1\xdd\x4e\xae\ +\xdb\x83\xab\x6b\x87\xb8\x7a\xe3\x7f\x27\x28\xec\x3a\x3f\x36\xd6\ +\x78\x8d\x9e\xe8\xc9\xee\x47\x35\xda\xd2\x73\x69\xab\xc2\x9a\x2c\ +\xf4\xfa\x36\x32\x57\xff\x4c\x0b\x7a\xa1\x57\x5a\xe2\x1d\x56\xae\ +\x95\xf5\xfb\xa5\xc3\xba\xfd\xb5\x7d\x5c\xac\x3b\x0f\xbd\xb7\x0e\ +\x78\x41\x1b\x3c\xa4\x4d\xda\xa2\x6d\xbc\x87\xcb\x09\xde\x91\xdc\ +\x42\xb4\xdb\x64\xb3\x53\xe9\x30\xa3\x5d\xe9\x62\x63\x8f\xda\xc1\ +\x59\xa6\x0a\x0b\xf9\xf4\x95\xf6\xe9\x33\x9f\xe3\x5d\x4c\x4e\xef\ +\x94\x0e\x45\xf5\x88\x8e\xe5\xf3\x7d\xea\x48\x9c\xd0\x29\x9d\xd1\ +\xb9\x44\x97\x2e\xa4\x83\x3a\xb4\x0a\xb2\x7a\x53\x56\x6e\x89\x42\ +\x17\xe7\x83\x7a\x3c\x92\x75\x1d\xba\x74\x75\xe7\x74\x45\xab\xd4\ +\xe4\x7b\x7b\xca\x5c\x74\x29\x12\xa7\x99\x4e\x71\x41\x2d\x55\x88\ +\x29\x79\x7b\xd6\x29\xa5\x26\x65\xbc\xf9\xfd\xd3\x2e\xd9\x1c\x0e\ +\xa8\x90\x3d\xbe\x1a\xb6\x73\x90\xf3\x4b\xef\xb8\xe7\x88\x73\xa9\ +\xb6\xb3\x9a\xd1\x85\x21\x63\x28\xa2\xde\x3b\xef\x5b\x32\xa5\x9d\ +\xb5\xcc\xec\x42\xa6\xb5\x65\xaa\xf7\xdf\xfb\xa6\xe6\x63\xd3\x97\ +\x2b\x21\x1e\xa8\x6b\x06\x5f\x3c\xbc\xcb\xc7\x50\x1c\xc8\x1c\xcd\ +\x88\xd2\xaf\xb3\x3f\xac\x31\x76\x7b\xb8\xe6\xeb\x6f\xb3\x3f\xac\ +\x71\x63\x6e\xcd\xcd\xf7\x9e\xea\xff\xb5\xef\xb9\x7f\x41\xe3\xaf\ +\x5f\x57\xfe\x06\xf5\x23\xb8\x71\ +\x00\x00\x0e\x9f\ +\x2f\ +\x2a\x20\x58\x50\x4d\x20\x2a\x2f\x0a\x73\x74\x61\x74\x69\x63\x20\ +\x63\x68\x61\x72\x20\x2a\x69\x6d\x61\x67\x65\x36\x5b\x5d\x3d\x7b\ +\x0a\x22\x32\x32\x20\x32\x32\x20\x31\x36\x35\x20\x32\x22\x2c\x0a\ +\x22\x51\x74\x20\x63\x20\x4e\x6f\x6e\x65\x22\x2c\x0a\x22\x2e\x68\ +\x20\x63\x20\x23\x30\x30\x30\x30\x30\x30\x22\x2c\x0a\x22\x2e\x6f\ +\x20\x63\x20\x23\x30\x31\x30\x31\x30\x31\x22\x2c\x0a\x22\x61\x46\ +\x20\x63\x20\x23\x30\x33\x30\x33\x30\x33\x22\x2c\x0a\x22\x23\x6e\ +\x20\x63\x20\x23\x30\x36\x30\x36\x30\x36\x22\x2c\x0a\x22\x2e\x48\ +\x20\x63\x20\x23\x30\x38\x30\x38\x30\x38\x22\x2c\x0a\x22\x2e\x72\ +\x20\x63\x20\x23\x30\x63\x30\x63\x30\x63\x22\x2c\x0a\x22\x2e\x71\ +\x20\x63\x20\x23\x31\x32\x31\x32\x31\x32\x22\x2c\x0a\x22\x23\x56\ +\x20\x63\x20\x23\x31\x32\x34\x65\x37\x66\x22\x2c\x0a\x22\x23\x6d\ +\x20\x63\x20\x23\x31\x33\x31\x33\x31\x33\x22\x2c\x0a\x22\x2e\x47\ +\x20\x63\x20\x23\x31\x36\x31\x36\x31\x35\x22\x2c\x0a\x22\x61\x49\ +\x20\x63\x20\x23\x31\x37\x32\x63\x61\x63\x22\x2c\x0a\x22\x2e\x36\ +\x20\x63\x20\x23\x31\x38\x31\x38\x31\x38\x22\x2c\x0a\x22\x61\x48\ +\x20\x63\x20\x23\x31\x38\x34\x31\x62\x32\x22\x2c\x0a\x22\x2e\x70\ +\x20\x63\x20\x23\x31\x39\x31\x39\x31\x39\x22\x2c\x0a\x22\x23\x38\ +\x20\x63\x20\x23\x31\x39\x32\x38\x62\x61\x22\x2c\x0a\x22\x23\x57\ +\x20\x63\x20\x23\x31\x39\x32\x39\x62\x61\x22\x2c\x0a\x22\x61\x6a\ +\x20\x63\x20\x23\x31\x39\x32\x61\x62\x61\x22\x2c\x0a\x22\x61\x76\ +\x20\x63\x20\x23\x31\x61\x33\x31\x63\x32\x22\x2c\x0a\x22\x61\x45\ +\x20\x63\x20\x23\x31\x62\x31\x62\x31\x62\x22\x2c\x0a\x22\x61\x44\ +\x20\x63\x20\x23\x31\x62\x32\x62\x63\x38\x22\x2c\x0a\x22\x61\x74\ +\x20\x63\x20\x23\x31\x63\x37\x39\x64\x32\x22\x2c\x0a\x22\x61\x68\ +\x20\x63\x20\x23\x31\x63\x37\x64\x64\x34\x22\x2c\x0a\x22\x61\x41\ +\x20\x63\x20\x23\x31\x64\x31\x64\x31\x64\x22\x2c\x0a\x22\x61\x43\ +\x20\x63\x20\x23\x31\x64\x37\x61\x64\x37\x22\x2c\x0a\x22\x23\x36\ +\x20\x63\x20\x23\x31\x64\x37\x65\x64\x61\x22\x2c\x0a\x22\x2e\x35\ +\x20\x63\x20\x23\x31\x65\x31\x65\x31\x65\x22\x2c\x0a\x22\x23\x37\ +\x20\x63\x20\x23\x31\x65\x38\x61\x65\x30\x22\x2c\x0a\x22\x61\x69\ +\x20\x63\x20\x23\x31\x65\x38\x64\x65\x30\x22\x2c\x0a\x22\x61\x75\ +\x20\x63\x20\x23\x31\x65\x39\x30\x65\x30\x22\x2c\x0a\x22\x2e\x67\ +\x20\x63\x20\x23\x32\x34\x32\x34\x32\x34\x22\x2c\x0a\x22\x23\x35\ +\x20\x63\x20\x23\x33\x31\x33\x62\x36\x63\x22\x2c\x0a\x22\x61\x42\ +\x20\x63\x20\x23\x33\x34\x33\x64\x38\x64\x22\x2c\x0a\x22\x23\x33\ +\x20\x63\x20\x23\x33\x39\x33\x39\x33\x39\x22\x2c\x0a\x22\x2e\x66\ +\x20\x63\x20\x23\x33\x64\x33\x64\x33\x64\x22\x2c\x0a\x22\x61\x6b\ +\x20\x63\x20\x23\x34\x33\x33\x39\x36\x37\x22\x2c\x0a\x22\x23\x43\ +\x20\x63\x20\x23\x34\x33\x34\x34\x34\x32\x22\x2c\x0a\x22\x61\x77\ +\x20\x63\x20\x23\x34\x34\x33\x63\x36\x65\x22\x2c\x0a\x22\x23\x6c\ +\x20\x63\x20\x23\x34\x35\x34\x36\x34\x33\x22\x2c\x0a\x22\x61\x73\ +\x20\x63\x20\x23\x34\x35\x34\x66\x61\x33\x22\x2c\x0a\x22\x2e\x34\ +\x20\x63\x20\x23\x34\x37\x34\x38\x34\x35\x22\x2c\x0a\x22\x23\x52\ +\x20\x63\x20\x23\x34\x37\x34\x38\x34\x36\x22\x2c\x0a\x22\x2e\x65\ +\x20\x63\x20\x23\x34\x38\x34\x38\x34\x38\x22\x2c\x0a\x22\x61\x47\ +\x20\x63\x20\x23\x34\x38\x35\x36\x61\x30\x22\x2c\x0a\x22\x2e\x64\ +\x20\x63\x20\x23\x34\x61\x34\x61\x34\x61\x22\x2c\x0a\x22\x23\x39\ +\x20\x63\x20\x23\x34\x63\x34\x31\x36\x61\x22\x2c\x0a\x22\x2e\x63\ +\x20\x63\x20\x23\x34\x63\x34\x63\x34\x63\x22\x2c\x0a\x22\x61\x67\ +\x20\x63\x20\x23\x34\x63\x35\x63\x61\x65\x22\x2c\x0a\x22\x23\x58\ +\x20\x63\x20\x23\x34\x64\x34\x36\x36\x39\x22\x2c\x0a\x22\x23\x7a\ +\x20\x63\x20\x23\x34\x64\x63\x32\x62\x32\x22\x2c\x0a\x22\x23\x50\ +\x20\x63\x20\x23\x34\x65\x34\x34\x35\x61\x22\x2c\x0a\x22\x23\x47\ +\x20\x63\x20\x23\x35\x33\x35\x30\x34\x65\x22\x2c\x0a\x22\x2e\x6c\ +\x20\x63\x20\x23\x35\x34\x35\x34\x35\x34\x22\x2c\x0a\x22\x2e\x62\ +\x20\x63\x20\x23\x35\x35\x35\x35\x35\x35\x22\x2c\x0a\x22\x23\x51\ +\x20\x63\x20\x23\x35\x39\x35\x32\x37\x34\x22\x2c\x0a\x22\x23\x69\ +\x20\x63\x20\x23\x36\x32\x62\x32\x61\x32\x22\x2c\x0a\x22\x2e\x61\ +\x20\x63\x20\x23\x36\x37\x36\x37\x36\x37\x22\x2c\x0a\x22\x23\x6a\ +\x20\x63\x20\x23\x36\x39\x62\x36\x61\x33\x22\x2c\x0a\x22\x2e\x46\ +\x20\x63\x20\x23\x36\x66\x36\x66\x36\x61\x22\x2c\x0a\x22\x2e\x4b\ +\x20\x63\x20\x23\x36\x66\x38\x62\x38\x39\x22\x2c\x0a\x22\x61\x78\ +\x20\x63\x20\x23\x37\x34\x37\x34\x37\x34\x22\x2c\x0a\x22\x23\x61\ +\x20\x63\x20\x23\x37\x36\x61\x31\x61\x30\x22\x2c\x0a\x22\x2e\x23\ +\x20\x63\x20\x23\x37\x39\x37\x39\x37\x39\x22\x2c\x0a\x22\x23\x41\ +\x20\x63\x20\x23\x37\x62\x64\x37\x65\x38\x22\x2c\x0a\x22\x61\x79\ +\x20\x63\x20\x23\x37\x64\x37\x64\x37\x64\x22\x2c\x0a\x22\x23\x55\ +\x20\x63\x20\x23\x37\x65\x37\x64\x37\x33\x22\x2c\x0a\x22\x2e\x49\ +\x20\x63\x20\x23\x38\x30\x38\x30\x38\x30\x22\x2c\x0a\x22\x2e\x4f\ +\x20\x63\x20\x23\x38\x31\x61\x33\x62\x38\x22\x2c\x0a\x22\x61\x7a\ +\x20\x63\x20\x23\x38\x32\x38\x32\x38\x32\x22\x2c\x0a\x22\x23\x79\ +\x20\x63\x20\x23\x38\x32\x64\x31\x63\x30\x22\x2c\x0a\x22\x23\x53\ +\x20\x63\x20\x23\x38\x34\x38\x34\x38\x34\x22\x2c\x0a\x22\x23\x4f\ +\x20\x63\x20\x23\x38\x35\x37\x65\x37\x63\x22\x2c\x0a\x22\x23\x46\ +\x20\x63\x20\x23\x38\x36\x61\x64\x64\x32\x22\x2c\x0a\x22\x23\x6b\ +\x20\x63\x20\x23\x38\x36\x63\x64\x64\x61\x22\x2c\x0a\x22\x23\x4e\ +\x20\x63\x20\x23\x38\x39\x62\x31\x62\x64\x22\x2c\x0a\x22\x23\x68\ +\x20\x63\x20\x23\x38\x61\x63\x65\x63\x33\x22\x2c\x0a\x22\x23\x6f\ +\x20\x63\x20\x23\x38\x63\x38\x63\x38\x63\x22\x2c\x0a\x22\x23\x4c\ +\x20\x63\x20\x23\x38\x63\x62\x62\x63\x61\x22\x2c\x0a\x22\x61\x6c\ +\x20\x63\x20\x23\x38\x64\x38\x64\x38\x64\x22\x2c\x0a\x22\x2e\x73\ +\x20\x63\x20\x23\x38\x66\x38\x66\x38\x66\x22\x2c\x0a\x22\x23\x48\ +\x20\x63\x20\x23\x39\x30\x39\x30\x39\x30\x22\x2c\x0a\x22\x23\x4b\ +\x20\x63\x20\x23\x39\x30\x62\x61\x63\x39\x22\x2c\x0a\x22\x23\x4d\ +\x20\x63\x20\x23\x39\x31\x63\x34\x63\x66\x22\x2c\x0a\x22\x23\x74\ +\x20\x63\x20\x23\x39\x32\x39\x32\x39\x32\x22\x2c\x0a\x22\x2e\x58\ +\x20\x63\x20\x23\x39\x34\x63\x32\x63\x66\x22\x2c\x0a\x22\x2e\x4e\ +\x20\x63\x20\x23\x39\x34\x63\x32\x64\x30\x22\x2c\x0a\x22\x2e\x57\ +\x20\x63\x20\x23\x39\x35\x39\x35\x39\x35\x22\x2c\x0a\x22\x23\x42\ +\x20\x63\x20\x23\x39\x36\x62\x39\x63\x62\x22\x2c\x0a\x22\x2e\x33\ +\x20\x63\x20\x23\x39\x37\x62\x65\x64\x65\x22\x2c\x0a\x22\x2e\x4c\ +\x20\x63\x20\x23\x39\x38\x63\x32\x63\x65\x22\x2c\x0a\x22\x2e\x50\ +\x20\x63\x20\x23\x39\x62\x39\x62\x39\x62\x22\x2c\x0a\x22\x61\x2e\ +\x20\x63\x20\x23\x39\x63\x39\x63\x39\x63\x22\x2c\x0a\x22\x61\x6d\ +\x20\x63\x20\x23\x39\x64\x39\x64\x39\x64\x22\x2c\x0a\x22\x23\x73\ +\x20\x63\x20\x23\x39\x64\x62\x64\x63\x34\x22\x2c\x0a\x22\x23\x62\ +\x20\x63\x20\x23\x39\x65\x39\x65\x39\x65\x22\x2c\x0a\x22\x23\x59\ +\x20\x63\x20\x23\x61\x30\x61\x30\x61\x30\x22\x2c\x0a\x22\x61\x6e\ +\x20\x63\x20\x23\x61\x36\x61\x36\x61\x36\x22\x2c\x0a\x22\x23\x76\ +\x20\x63\x20\x23\x61\x36\x64\x31\x64\x36\x22\x2c\x0a\x22\x2e\x5a\ +\x20\x63\x20\x23\x61\x37\x61\x31\x61\x31\x22\x2c\x0a\x22\x23\x49\ +\x20\x63\x20\x23\x61\x37\x61\x37\x61\x37\x22\x2c\x0a\x22\x23\x44\ +\x20\x63\x20\x23\x61\x37\x65\x64\x64\x65\x22\x2c\x0a\x22\x2e\x4d\ +\x20\x63\x20\x23\x61\x38\x64\x38\x65\x35\x22\x2c\x0a\x22\x23\x75\ +\x20\x63\x20\x23\x61\x65\x61\x65\x61\x65\x22\x2c\x0a\x22\x61\x63\ +\x20\x63\x20\x23\x62\x31\x62\x31\x62\x31\x22\x2c\x0a\x22\x61\x23\ +\x20\x63\x20\x23\x62\x32\x62\x32\x62\x32\x22\x2c\x0a\x22\x2e\x32\ +\x20\x63\x20\x23\x62\x35\x63\x62\x64\x36\x22\x2c\x0a\x22\x2e\x56\ +\x20\x63\x20\x23\x62\x36\x62\x36\x62\x36\x22\x2c\x0a\x22\x61\x72\ +\x20\x63\x20\x23\x62\x37\x62\x37\x62\x37\x22\x2c\x0a\x22\x23\x5a\ +\x20\x63\x20\x23\x62\x38\x62\x38\x62\x38\x22\x2c\x0a\x22\x23\x32\ +\x20\x63\x20\x23\x62\x61\x62\x61\x62\x61\x22\x2c\x0a\x22\x2e\x51\ +\x20\x63\x20\x23\x62\x61\x62\x62\x62\x39\x22\x2c\x0a\x22\x61\x71\ +\x20\x63\x20\x23\x62\x62\x62\x62\x62\x62\x22\x2c\x0a\x22\x23\x63\ +\x20\x63\x20\x23\x62\x63\x62\x63\x62\x63\x22\x2c\x0a\x22\x2e\x38\ +\x20\x63\x20\x23\x62\x66\x62\x66\x62\x66\x22\x2c\x0a\x22\x61\x70\ +\x20\x63\x20\x23\x63\x30\x63\x30\x63\x30\x22\x2c\x0a\x22\x2e\x31\ +\x20\x63\x20\x23\x63\x31\x64\x39\x64\x32\x22\x2c\x0a\x22\x61\x61\ +\x20\x63\x20\x23\x63\x38\x63\x38\x63\x38\x22\x2c\x0a\x22\x61\x62\ +\x20\x63\x20\x23\x63\x61\x63\x61\x63\x61\x22\x2c\x0a\x22\x61\x6f\ +\x20\x63\x20\x23\x63\x62\x63\x62\x63\x62\x22\x2c\x0a\x22\x2e\x59\ +\x20\x63\x20\x23\x63\x63\x66\x38\x66\x31\x22\x2c\x0a\x22\x23\x4a\ +\x20\x63\x20\x23\x63\x64\x63\x64\x63\x64\x22\x2c\x0a\x22\x2e\x52\ +\x20\x63\x20\x23\x63\x65\x63\x65\x63\x65\x22\x2c\x0a\x22\x23\x70\ +\x20\x63\x20\x23\x64\x31\x66\x39\x66\x34\x22\x2c\x0a\x22\x23\x34\ +\x20\x63\x20\x23\x64\x35\x64\x35\x64\x35\x22\x2c\x0a\x22\x23\x77\ +\x20\x63\x20\x23\x64\x35\x65\x63\x65\x34\x22\x2c\x0a\x22\x2e\x39\ +\x20\x63\x20\x23\x64\x35\x66\x36\x66\x35\x22\x2c\x0a\x22\x23\x30\ +\x20\x63\x20\x23\x64\x36\x64\x36\x64\x36\x22\x2c\x0a\x22\x2e\x55\ +\x20\x63\x20\x23\x64\x37\x64\x37\x64\x37\x22\x2c\x0a\x22\x61\x66\ +\x20\x63\x20\x23\x64\x38\x64\x38\x64\x38\x22\x2c\x0a\x22\x2e\x78\ +\x20\x63\x20\x23\x64\x61\x64\x61\x64\x61\x22\x2c\x0a\x22\x2e\x79\ +\x20\x63\x20\x23\x64\x62\x64\x62\x64\x62\x22\x2c\x0a\x22\x2e\x77\ +\x20\x63\x20\x23\x64\x63\x64\x63\x64\x63\x22\x2c\x0a\x22\x23\x65\ +\x20\x63\x20\x23\x64\x63\x66\x37\x66\x34\x22\x2c\x0a\x22\x23\x31\ +\x20\x63\x20\x23\x64\x64\x64\x64\x64\x64\x22\x2c\x0a\x22\x61\x65\ +\x20\x63\x20\x23\x64\x65\x64\x65\x64\x65\x22\x2c\x0a\x22\x2e\x45\ +\x20\x63\x20\x23\x64\x66\x64\x66\x64\x66\x22\x2c\x0a\x22\x2e\x7a\ +\x20\x63\x20\x23\x65\x30\x65\x30\x65\x30\x22\x2c\x0a\x22\x23\x67\ +\x20\x63\x20\x23\x65\x30\x65\x62\x65\x34\x22\x2c\x0a\x22\x23\x71\ +\x20\x63\x20\x23\x65\x31\x65\x64\x65\x61\x22\x2c\x0a\x22\x23\x64\ +\x20\x63\x20\x23\x65\x32\x65\x32\x65\x32\x22\x2c\x0a\x22\x23\x78\ +\x20\x63\x20\x23\x65\x32\x65\x62\x65\x32\x22\x2c\x0a\x22\x2e\x30\ +\x20\x63\x20\x23\x65\x32\x65\x65\x65\x35\x22\x2c\x0a\x22\x2e\x76\ +\x20\x63\x20\x23\x65\x33\x65\x33\x65\x33\x22\x2c\x0a\x22\x23\x23\ +\x20\x63\x20\x23\x65\x33\x65\x37\x64\x35\x22\x2c\x0a\x22\x23\x72\ +\x20\x63\x20\x23\x65\x34\x65\x62\x64\x39\x22\x2c\x0a\x22\x23\x45\ +\x20\x63\x20\x23\x65\x34\x66\x32\x65\x63\x22\x2c\x0a\x22\x2e\x75\ +\x20\x63\x20\x23\x65\x35\x65\x35\x65\x35\x22\x2c\x0a\x22\x2e\x53\ +\x20\x63\x20\x23\x65\x37\x65\x37\x65\x37\x22\x2c\x0a\x22\x2e\x6b\ +\x20\x63\x20\x23\x65\x39\x65\x39\x65\x39\x22\x2c\x0a\x22\x2e\x41\ +\x20\x63\x20\x23\x65\x62\x65\x62\x65\x62\x22\x2c\x0a\x22\x2e\x44\ +\x20\x63\x20\x23\x65\x64\x65\x64\x65\x64\x22\x2c\x0a\x22\x2e\x74\ +\x20\x63\x20\x23\x66\x30\x66\x30\x66\x30\x22\x2c\x0a\x22\x23\x54\ +\x20\x63\x20\x23\x66\x34\x66\x34\x66\x34\x22\x2c\x0a\x22\x2e\x6e\ +\x20\x63\x20\x23\x66\x36\x66\x36\x66\x36\x22\x2c\x0a\x22\x2e\x43\ +\x20\x63\x20\x23\x66\x37\x66\x37\x66\x37\x22\x2c\x0a\x22\x23\x66\ +\x20\x63\x20\x23\x66\x38\x66\x35\x66\x32\x22\x2c\x0a\x22\x2e\x6d\ +\x20\x63\x20\x23\x66\x38\x66\x38\x66\x38\x22\x2c\x0a\x22\x2e\x37\ +\x20\x63\x20\x23\x66\x39\x66\x39\x66\x39\x22\x2c\x0a\x22\x61\x64\ +\x20\x63\x20\x23\x66\x61\x66\x61\x66\x61\x22\x2c\x0a\x22\x23\x2e\ +\x20\x63\x20\x23\x66\x62\x66\x30\x65\x62\x22\x2c\x0a\x22\x2e\x4a\ +\x20\x63\x20\x23\x66\x62\x66\x62\x66\x62\x22\x2c\x0a\x22\x2e\x54\ +\x20\x63\x20\x23\x66\x63\x66\x63\x66\x63\x22\x2c\x0a\x22\x2e\x42\ +\x20\x63\x20\x23\x66\x64\x66\x64\x66\x64\x22\x2c\x0a\x22\x2e\x6a\ +\x20\x63\x20\x23\x66\x65\x66\x65\x66\x65\x22\x2c\x0a\x22\x2e\x69\ +\x20\x63\x20\x23\x66\x66\x66\x66\x66\x66\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x23\x2e\x61\x2e\x62\x2e\x63\ +\x2e\x64\x2e\x64\x2e\x65\x2e\x66\x2e\x67\x2e\x68\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x2e\x23\x2e\x69\x2e\x69\x2e\x69\x2e\x69\ +\x2e\x69\x2e\x69\x2e\x69\x2e\x69\x2e\x69\x2e\x68\x2e\x68\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x2e\x61\x2e\x6a\x2e\x6a\x2e\x6a\x2e\x6a\ +\x2e\x6a\x2e\x6a\x2e\x69\x2e\x69\x2e\x69\x2e\x68\x2e\x6b\x2e\x68\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x2e\x6c\x2e\x6d\x2e\x6e\x2e\x6f\x2e\x70\ +\x2e\x71\x2e\x72\x2e\x73\x2e\x6a\x2e\x69\x2e\x68\x2e\x74\x2e\x75\ +\x2e\x68\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x2e\x65\x2e\x76\x2e\x77\x2e\x78\x2e\x79\ +\x2e\x7a\x2e\x41\x2e\x6e\x2e\x42\x2e\x42\x2e\x68\x2e\x43\x2e\x44\ +\x2e\x45\x2e\x68\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x2e\x68\x2e\x68\x2e\x68\x2e\x68\x2e\x68\x2e\x46\ +\x2e\x47\x2e\x48\x2e\x49\x2e\x6e\x2e\x4a\x2e\x68\x2e\x68\x2e\x68\ +\x2e\x68\x2e\x68\x2e\x68\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x2e\x68\x2e\x4b\x2e\x4c\x2e\x4d\x2e\x4e\x2e\x4f\x2e\x68\ +\x2e\x50\x2e\x51\x2e\x52\x2e\x53\x2e\x6e\x2e\x54\x2e\x6a\x2e\x55\ +\x2e\x56\x2e\x57\x2e\x68\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x2e\x68\x2e\x58\x2e\x59\x2e\x5a\x2e\x30\x2e\x31\x2e\x32\x2e\x33\ +\x2e\x68\x2e\x34\x2e\x35\x2e\x36\x2e\x71\x2e\x72\x2e\x73\x2e\x37\ +\x2e\x76\x2e\x38\x2e\x68\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x2e\x68\x2e\x39\x23\x2e\x2e\x23\x23\x23\x2e\x46\x2e\x46\x2e\x46\ +\x23\x61\x2e\x68\x23\x62\x23\x63\x23\x64\x2e\x6d\x2e\x6a\x2e\x37\ +\x2e\x76\x23\x63\x2e\x68\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x2e\x68\x23\x65\x23\x66\x2e\x61\x23\x67\x23\x68\x23\x69\x23\x6a\ +\x23\x6b\x2e\x68\x23\x6c\x23\x6d\x2e\x72\x23\x6e\x23\x6f\x2e\x37\ +\x2e\x76\x23\x63\x2e\x68\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x2e\x68\x23\x70\x23\x71\x2e\x61\x23\x72\x2e\x46\x2e\x46\x2e\x46\ +\x23\x73\x2e\x68\x23\x74\x23\x75\x2e\x78\x2e\x6e\x2e\x6a\x2e\x37\ +\x2e\x76\x23\x63\x2e\x68\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x2e\x68\x23\x76\x23\x77\x2e\x23\x23\x78\x23\x79\x23\x7a\x23\x41\ +\x23\x42\x2e\x68\x23\x43\x23\x6d\x23\x6d\x2e\x71\x23\x6f\x2e\x37\ +\x2e\x76\x23\x63\x2e\x68\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x2e\x68\x23\x44\x2e\x5a\x23\x45\x2e\x46\x2e\x46\x23\x46\ +\x2e\x68\x23\x47\x23\x48\x23\x49\x23\x4a\x2e\x41\x2e\x37\x2e\x6d\ +\x2e\x76\x23\x63\x2e\x68\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x2e\x68\x23\x4b\x23\x4c\x23\x4d\x23\x4e\x2e\x68\ +\x23\x4f\x23\x50\x23\x51\x23\x52\x23\x6d\x2e\x71\x23\x53\x23\x54\ +\x23\x64\x23\x63\x2e\x68\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x2e\x68\x2e\x68\x2e\x68\x2e\x68\x2e\x5a\ +\x23\x55\x23\x56\x23\x57\x23\x58\x23\x59\x23\x5a\x23\x30\x2e\x53\ +\x23\x31\x23\x32\x2e\x68\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x23\x33\x2e\x74\x2e\x76\x2e\x78\x23\x34\ +\x23\x35\x23\x36\x23\x37\x23\x38\x23\x39\x61\x2e\x61\x23\x61\x61\ +\x61\x62\x61\x63\x2e\x68\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x2e\x36\x61\x64\x2e\x6b\x61\x65\x2e\x79\ +\x61\x66\x61\x67\x61\x68\x61\x69\x61\x6a\x61\x6b\x61\x6c\x61\x6d\ +\x61\x6e\x61\x2e\x2e\x6f\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x2e\x68\x61\x65\x61\x6f\x61\x70\x61\x71\ +\x61\x71\x61\x72\x61\x73\x61\x74\x61\x75\x61\x76\x61\x77\x61\x78\ +\x61\x79\x61\x7a\x2e\x6f\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x68\x2e\x68\x2e\x68\x2e\x68\ +\x2e\x68\x61\x41\x2e\x6f\x61\x42\x61\x43\x61\x69\x61\x44\x2e\x48\ +\x61\x45\x61\x46\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x61\x47\x61\x48\x61\x49\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x7d\x3b\x0a\ +\x00\x00\x05\x1a\ +\x00\ +\x00\x11\x8f\x78\x9c\xe5\x96\x49\x73\x32\x47\x0c\x86\xef\xfe\x15\ +\x94\x75\x73\xa5\xf4\xc1\xcc\x30\xcc\x54\x2a\x07\xef\x60\xbc\x80\ +\x8d\xd7\x54\x0e\x3d\x1b\x06\xbc\xb1\x18\x2f\xa9\xfc\xf7\xa8\x5b\ +\x52\xdb\xf9\xca\x17\x93\x5b\x52\x32\x86\x07\x49\xaf\xa4\xee\x9e\ +\x19\x7e\x6c\xd4\xae\x7a\x47\xb5\x8d\x1f\x6b\xf3\x85\x59\x8c\xf2\ +\x5a\x7e\x6b\x66\xb5\x8d\xd1\xbd\x19\x96\x8d\xdf\xff\xf8\xed\xcf\ +\xb5\xf5\x30\xa8\xd1\x5f\x23\x0a\x6a\xc1\xfa\x2f\x6b\xeb\xfd\x45\ +\x2d\xaf\x1d\x3f\x3e\x94\x16\xe0\x84\x00\xea\xf5\x46\xbd\x6a\x39\ +\xee\x31\x07\x8d\xb2\x72\x7c\xaa\x2c\xfe\x33\xcf\xec\x1f\x08\xa7\ +\xcc\xe6\x96\x39\x54\xff\xb1\xe3\x84\xfc\x9c\xff\xca\xec\xfd\xdb\ +\xc2\x92\x0f\xbb\x96\x1b\xa4\x57\x72\xfc\x8c\xd9\xfb\x1f\x99\xa3\ +\x40\xb8\xef\x98\xf4\x0a\x37\x8f\x99\x28\x4b\xbe\xb0\x8f\x6f\x0b\ +\x1b\xe9\x77\x6c\x39\x68\x84\x5a\x6f\xce\x1c\x05\xac\x07\xfb\xc2\ +\x12\x8f\x29\x73\x53\xf5\x02\xc7\x69\x98\xe6\xb1\xd3\x1b\x2a\x17\ +\xcc\xc0\x1c\x05\x39\xeb\x3d\x29\x8b\xfe\x39\xb3\xea\x99\x52\x58\ +\xea\xc1\x9b\xe5\x90\xea\x71\x3c\x06\xca\xd2\x6f\x47\x58\xe3\xdf\ +\x99\xe3\x50\xb8\xe1\x38\x8d\x4c\x56\x38\x3e\x54\x96\xfa\x5b\xcc\ +\x3e\xfe\x45\x38\x13\xbe\xb0\x1c\x05\x54\xdf\xcd\x03\x77\x9e\x39\ +\xff\x92\x39\x0e\xe5\xbc\x4c\x85\x25\x1f\x1b\xcc\x2d\xd5\x6f\x3a\ +\x36\x4d\x23\x7a\x07\xcc\xde\xdf\x15\x96\x7c\x93\x33\x27\x91\x70\ +\x66\xb9\x49\xf5\x78\xbd\x71\xe0\x99\xd7\xe7\x88\xb9\x15\xb2\x3e\ +\xe6\xca\xbc\x5e\x78\x2e\x9c\x49\xff\x0b\x65\x39\x9f\x9b\xcc\x5a\ +\x0f\xae\x1c\x9b\x38\x34\x6e\xfd\xf0\x82\x39\x89\x64\xde\x3d\x65\ +\x89\x5f\x0a\xe7\xd2\x6f\x61\x39\x0e\xe3\x8c\xd7\x1f\x4b\xe6\x56\ +\x26\xfd\x5f\x7a\xe6\xfe\x43\x65\xe9\xbf\xcf\x9c\x44\xb2\xff\x4d\ +\xe1\x5c\xea\x67\xca\x52\x7f\xcc\x9c\xea\x7a\x55\x8e\xb3\x56\x28\ +\xfb\x5f\x57\x96\xfa\x67\xcc\x49\x24\xe7\xf3\x99\x59\xf3\x71\x5b\ +\x58\xe7\x19\x59\x6e\x7d\xf4\xfb\xce\x9c\x44\x59\xd3\xf1\x58\x99\ +\xf5\x21\x16\xce\x25\x3e\x52\x96\xf9\x32\xe6\x34\x97\xfd\xe9\x30\ +\x9b\xa6\xcc\xf3\x20\x5c\x08\xdf\x38\xce\x7c\xbd\x53\xe1\x5c\xd6\ +\xf7\x80\x39\x8d\x84\x39\x3f\x33\x4d\xd1\xef\x09\xab\x5e\xce\x9c\ +\x69\x3d\x77\x7e\x92\x28\x89\xd2\xdc\x71\xa8\x2c\xfb\x3f\x12\xce\ +\xe5\x7a\xbf\x63\xd6\x7a\xc6\x08\x8b\x1f\xdf\x98\xb5\x1e\x9e\x30\ +\xfb\x7a\x12\x9f\xa9\xdf\x9d\xc7\x24\x4f\xb5\x9e\x51\x96\x79\x77\ +\x84\x75\xde\x7b\x65\x59\xdf\x4d\x66\x9a\x97\xf5\x2a\xe1\x82\xcf\ +\x37\xb6\x99\xb5\x1e\x38\xbd\x94\xfa\x37\x4e\x1f\x12\x65\x39\x2f\ +\xa9\xb2\xcc\x8b\xc2\x5a\x7f\xc6\x9c\xc7\xa2\x57\x08\x97\xc2\x6e\ +\xbf\xd3\xdc\x5e\xf0\x8e\x5b\xca\x32\xcf\x33\x73\xa6\xfd\xc5\xcc\ +\xaa\x87\x75\x61\xd1\xc3\x57\xe6\x42\xfd\xee\x7e\x46\xea\xa2\x07\ +\xd7\x9e\xb9\x5e\xc9\xec\xfb\x01\x66\x9f\xef\xae\x6f\x53\x98\x42\ +\xfa\x99\x30\xfb\x79\x46\xcc\x3e\xde\x3d\x9f\xb2\x66\xa6\xfd\x17\ +\x9e\x79\x3d\xba\xc2\x85\xec\xff\x1e\xb3\xef\xff\x98\xd9\xeb\x6d\ +\x09\xab\xdf\x3d\x7f\xb2\xc2\x9a\x63\x50\x96\xeb\x09\x99\x7d\xfe\ +\x3e\x73\xd9\x92\x7e\xdd\xf3\x37\x8f\x3d\x57\xc2\x95\xc4\xbf\x30\ +\x57\xe2\x47\x8e\x2f\xbd\xde\x35\xb3\xe6\xe3\x54\x58\xf3\x6f\x98\ +\x7d\xbe\x3b\xff\xc5\x87\x7e\xc2\xec\xfd\xee\x79\x5d\x7c\xe4\xb7\ +\x98\xd5\x0f\xf7\xc2\xe2\x07\xf7\xfc\xb4\xd5\x25\xde\xdd\x4f\x9d\ +\x9b\xd9\x3d\x3f\xab\x0f\xbf\x8b\xaf\xbc\xbf\xbf\xf8\x77\xf6\x7f\ +\xd0\x40\x40\x83\x19\xe6\x68\x56\xd5\xc0\x02\x4b\xac\x70\x88\xb7\ +\x38\x5a\x4d\x83\x14\xc6\x38\x21\x85\x21\xde\xe1\xfd\x2a\x1a\x34\ +\xc3\x03\x3e\x52\xfe\x13\x4e\x71\xf6\x7d\x0d\x9c\xe3\x02\x9f\x5d\ +\x07\x4b\x7c\xc1\x57\x7c\x5b\x41\xe3\x1d\x37\x45\x61\x8b\x14\x66\ +\xb8\x8d\x3b\xdf\xd1\xc0\x5d\x9a\x62\x4f\x14\xf6\x29\xbf\x4d\xd6\ +\xc1\x83\xaf\xb2\xa8\xdf\x39\x76\xad\x7d\xd6\xc0\x43\x3c\xc2\x63\ +\xa7\x30\xa5\x0e\xda\x78\x42\x73\xf4\xc8\xfa\x78\xf8\x8f\x3c\x83\ +\xa7\x78\x86\x03\x3c\xc7\x0b\xb2\x3e\x5e\xe2\x15\x6b\xd0\x69\xe8\ +\xe3\xb5\x53\xb8\xc1\xba\xcf\xb7\xd6\xc0\x00\x43\x8c\x28\xaf\xa4\ +\xd3\xd2\xa4\x1d\x8f\xa9\xd6\x1d\xb6\x30\x71\xb1\x29\x0e\xf8\x9e\ +\x85\x97\x80\x6e\x27\x6e\x00\xc0\x90\x86\xcd\xee\x90\xf5\x20\x83\ +\x1c\x0a\x28\x71\x0b\x2a\x18\xba\xcc\x04\xa7\x70\x0b\x23\x3b\x2d\ +\x8c\x61\x02\x77\xfc\xbb\x88\x62\x86\x70\x8f\xfb\x50\x48\x0f\x9d\ +\x4f\xd6\xc6\x98\x94\x81\x6a\xda\x2c\xaa\x00\x39\x76\xe0\x81\x5e\ +\x63\x6c\xc0\x23\x3c\xf1\x6f\x23\x7c\x82\x8a\x56\xa1\xfe\x85\xc2\ +\xd7\xb6\x6d\x8d\x7a\x9c\xc2\x0c\xe6\xfc\x7b\x90\xaa\xd8\x7d\xb0\ +\x15\x7a\x3f\xc5\x72\xfc\xc7\x27\x9b\xfb\x4c\xaf\x31\xd9\x12\x5e\ +\xe0\x95\xfb\x80\x37\x78\xa7\xbe\xdc\xfc\x1f\x55\xf4\x13\xc5\x66\ +\x14\xbd\xa4\xff\x63\x67\x99\xcb\xb6\xdf\x6d\xc2\x16\x6c\x8b\xc6\ +\x0e\xec\xd2\xda\x4c\xe9\xbb\xf1\x4f\x35\x3b\xb0\x07\xfb\xe4\x9b\ +\x40\x9b\xde\x3b\xb0\x45\xfb\xd4\x80\x03\xe8\x42\x97\xde\xa7\x54\ +\xfb\x15\x0e\x79\x5f\xe0\x08\x8e\x69\xb2\x77\xf2\x65\xae\xd3\x67\ +\xed\x84\x2a\x9d\x40\x0f\xfa\x54\xa5\x07\xa7\x70\x06\x03\xca\x9a\ +\x91\xb5\x31\x85\x73\xd2\x1d\xc0\x85\x3f\x63\xef\x4e\xa5\x43\xea\ +\x4b\xea\xf5\xd9\x76\x44\x4a\x1d\xb8\x84\x2b\xd8\xa1\x2a\xd7\xd4\ +\xed\x0d\xd4\xa1\x01\x01\x29\xf6\xc8\x8e\xc9\x06\xa4\x1d\x7a\x8d\ +\x39\x44\xd0\xa4\x1a\x6d\xaa\xdc\x75\x3a\x6c\xf1\x17\xa7\xbc\xc0\ +\x2b\x68\x41\x02\xa9\x41\xbc\xc2\xf9\xe7\x6b\x0e\x0b\x03\xd4\xed\ +\x84\x66\x3a\x90\x35\x5c\x9a\x6f\xdf\xc7\x70\xd7\x64\xd4\xcb\x23\ +\xad\x9e\xed\x65\x69\xf2\x55\xee\x63\x38\x37\x05\xcd\x38\x33\x25\ +\xad\x7a\x17\x5e\x4c\xf5\x7d\x0d\x77\xfd\x1d\x9a\xa1\xb9\xa5\x99\ +\xce\x61\xb2\x9a\x86\x35\x5a\xdf\xbe\xdd\x45\x73\x6b\x56\xbc\x27\ +\xb3\x0a\xfd\x16\x1a\x9b\x89\xb9\x5b\x5d\xe3\x3b\xf6\x9f\xd2\xf8\ +\xeb\xd7\xb5\xbf\x01\xda\x3f\xb9\x0e\ +\x00\x00\x15\xdf\ +\x2f\ +\x2a\x20\x58\x50\x4d\x20\x2a\x2f\x0a\x73\x74\x61\x74\x69\x63\x20\ +\x63\x68\x61\x72\x20\x2a\x69\x6d\x61\x67\x65\x35\x5b\x5d\x3d\x7b\ +\x0a\x22\x33\x32\x20\x33\x32\x20\x32\x31\x31\x20\x32\x22\x2c\x0a\ +\x22\x51\x74\x20\x63\x20\x4e\x6f\x6e\x65\x22\x2c\x0a\x22\x61\x4a\ +\x20\x63\x20\x23\x30\x30\x30\x30\x30\x30\x22\x2c\x0a\x22\x23\x57\ +\x20\x63\x20\x23\x30\x38\x30\x38\x30\x30\x22\x2c\x0a\x22\x23\x4e\ +\x20\x63\x20\x23\x31\x30\x30\x38\x30\x30\x22\x2c\x0a\x22\x23\x56\ +\x20\x63\x20\x23\x31\x30\x31\x30\x30\x30\x22\x2c\x0a\x22\x23\x45\ +\x20\x63\x20\x23\x31\x30\x31\x30\x30\x38\x22\x2c\x0a\x22\x23\x4d\ +\x20\x63\x20\x23\x31\x38\x31\x30\x30\x30\x22\x2c\x0a\x22\x23\x4c\ +\x20\x63\x20\x23\x31\x38\x31\x38\x30\x30\x22\x2c\x0a\x22\x23\x44\ +\x20\x63\x20\x23\x31\x38\x31\x38\x30\x38\x22\x2c\x0a\x22\x23\x46\ +\x20\x63\x20\x23\x31\x38\x31\x38\x31\x30\x22\x2c\x0a\x22\x61\x73\ +\x20\x63\x20\x23\x32\x31\x31\x38\x30\x30\x22\x2c\x0a\x22\x23\x4b\ +\x20\x63\x20\x23\x32\x31\x31\x38\x30\x38\x22\x2c\x0a\x22\x23\x4a\ +\x20\x63\x20\x23\x32\x31\x32\x31\x31\x30\x22\x2c\x0a\x22\x23\x47\ +\x20\x63\x20\x23\x32\x31\x32\x31\x31\x38\x22\x2c\x0a\x22\x23\x71\ +\x20\x63\x20\x23\x32\x31\x32\x31\x32\x31\x22\x2c\x0a\x22\x61\x6e\ +\x20\x63\x20\x23\x32\x39\x32\x31\x30\x30\x22\x2c\x0a\x22\x23\x49\ +\x20\x63\x20\x23\x32\x39\x32\x31\x31\x30\x22\x2c\x0a\x22\x61\x4e\ +\x20\x63\x20\x23\x32\x39\x32\x39\x31\x30\x22\x2c\x0a\x22\x23\x48\ +\x20\x63\x20\x23\x32\x39\x32\x39\x31\x38\x22\x2c\x0a\x22\x23\x79\ +\x20\x63\x20\x23\x32\x39\x32\x39\x32\x31\x22\x2c\x0a\x22\x61\x46\ +\x20\x63\x20\x23\x33\x31\x32\x39\x30\x30\x22\x2c\x0a\x22\x23\x43\ +\x20\x63\x20\x23\x33\x31\x32\x39\x31\x38\x22\x2c\x0a\x22\x23\x69\ +\x20\x63\x20\x23\x33\x31\x32\x39\x32\x39\x22\x2c\x0a\x22\x2e\x30\ +\x20\x63\x20\x23\x33\x31\x33\x31\x33\x31\x22\x2c\x0a\x22\x23\x37\ +\x20\x63\x20\x23\x33\x39\x33\x31\x30\x30\x22\x2c\x0a\x22\x23\x55\ +\x20\x63\x20\x23\x33\x39\x33\x31\x30\x38\x22\x2c\x0a\x22\x61\x47\ +\x20\x63\x20\x23\x33\x39\x33\x39\x33\x31\x22\x2c\x0a\x22\x2e\x4d\ +\x20\x63\x20\x23\x33\x39\x33\x39\x33\x39\x22\x2c\x0a\x22\x23\x75\ +\x20\x63\x20\x23\x34\x32\x33\x39\x33\x39\x22\x2c\x0a\x22\x23\x63\ +\x20\x63\x20\x23\x34\x32\x34\x61\x34\x32\x22\x2c\x0a\x22\x61\x45\ +\x20\x63\x20\x23\x34\x61\x34\x32\x30\x30\x22\x2c\x0a\x22\x61\x59\ +\x20\x63\x20\x23\x34\x61\x34\x32\x31\x30\x22\x2c\x0a\x22\x2e\x56\ +\x20\x63\x20\x23\x34\x61\x34\x32\x33\x39\x22\x2c\x0a\x22\x23\x42\ +\x20\x63\x20\x23\x34\x61\x34\x61\x33\x39\x22\x2c\x0a\x22\x2e\x6d\ +\x20\x63\x20\x23\x34\x61\x34\x61\x34\x32\x22\x2c\x0a\x22\x61\x50\ +\x20\x63\x20\x23\x34\x61\x35\x32\x31\x38\x22\x2c\x0a\x22\x2e\x47\ +\x20\x63\x20\x23\x34\x61\x35\x32\x35\x32\x22\x2c\x0a\x22\x2e\x7a\ +\x20\x63\x20\x23\x34\x61\x35\x61\x35\x32\x22\x2c\x0a\x22\x61\x4f\ +\x20\x63\x20\x23\x35\x32\x34\x32\x30\x30\x22\x2c\x0a\x22\x61\x6d\ +\x20\x63\x20\x23\x35\x32\x34\x61\x30\x30\x22\x2c\x0a\x22\x23\x54\ +\x20\x63\x20\x23\x35\x32\x34\x61\x30\x38\x22\x2c\x0a\x22\x23\x70\ +\x20\x63\x20\x23\x35\x32\x34\x61\x34\x61\x22\x2c\x0a\x22\x2e\x73\ +\x20\x63\x20\x23\x35\x32\x35\x32\x35\x32\x22\x2c\x0a\x22\x23\x61\ +\x20\x63\x20\x23\x35\x32\x35\x61\x35\x32\x22\x2c\x0a\x22\x2e\x37\ +\x20\x63\x20\x23\x35\x32\x36\x33\x35\x61\x22\x2c\x0a\x22\x23\x62\ +\x20\x63\x20\x23\x35\x32\x36\x33\x36\x33\x22\x2c\x0a\x22\x61\x7a\ +\x20\x63\x20\x23\x35\x61\x34\x61\x30\x30\x22\x2c\x0a\x22\x23\x36\ +\x20\x63\x20\x23\x35\x61\x35\x32\x30\x38\x22\x2c\x0a\x22\x61\x77\ +\x20\x63\x20\x23\x35\x61\x35\x32\x31\x30\x22\x2c\x0a\x22\x2e\x5a\ +\x20\x63\x20\x23\x35\x61\x35\x32\x34\x61\x22\x2c\x0a\x22\x2e\x4c\ +\x20\x63\x20\x23\x35\x61\x35\x61\x35\x32\x22\x2c\x0a\x22\x2e\x79\ +\x20\x63\x20\x23\x35\x61\x35\x61\x35\x61\x22\x2c\x0a\x22\x2e\x46\ +\x20\x63\x20\x23\x35\x61\x36\x33\x35\x61\x22\x2c\x0a\x22\x23\x53\ +\x20\x63\x20\x23\x36\x33\x35\x32\x30\x38\x22\x2c\x0a\x22\x61\x78\ +\x20\x63\x20\x23\x36\x33\x35\x61\x31\x30\x22\x2c\x0a\x22\x2e\x55\ +\x20\x63\x20\x23\x36\x33\x35\x61\x35\x32\x22\x2c\x0a\x22\x2e\x72\ +\x20\x63\x20\x23\x36\x33\x35\x61\x35\x61\x22\x2c\x0a\x22\x61\x5a\ +\x20\x63\x20\x23\x36\x33\x36\x33\x32\x31\x22\x2c\x0a\x22\x23\x23\ +\x20\x63\x20\x23\x36\x33\x36\x33\x35\x61\x22\x2c\x0a\x22\x2e\x41\ +\x20\x63\x20\x23\x36\x33\x36\x33\x36\x33\x22\x2c\x0a\x22\x23\x68\ +\x20\x63\x20\x23\x36\x33\x36\x62\x36\x62\x22\x2c\x0a\x22\x61\x4c\ +\x20\x63\x20\x23\x36\x33\x37\x33\x32\x39\x22\x2c\x0a\x22\x61\x66\ +\x20\x63\x20\x23\x36\x62\x35\x61\x30\x30\x22\x2c\x0a\x22\x2e\x36\ +\x20\x63\x20\x23\x36\x62\x36\x33\x35\x61\x22\x2c\x0a\x22\x23\x6f\ +\x20\x63\x20\x23\x36\x62\x36\x33\x36\x33\x22\x2c\x0a\x22\x2e\x45\ +\x20\x63\x20\x23\x36\x62\x36\x62\x36\x33\x22\x2c\x0a\x22\x61\x34\ +\x20\x63\x20\x23\x36\x62\x37\x33\x32\x31\x22\x2c\x0a\x22\x61\x53\ +\x20\x63\x20\x23\x36\x62\x37\x33\x32\x39\x22\x2c\x0a\x22\x61\x52\ +\x20\x63\x20\x23\x36\x62\x37\x33\x33\x31\x22\x2c\x0a\x22\x61\x58\ +\x20\x63\x20\x23\x37\x33\x36\x33\x30\x30\x22\x2c\x0a\x22\x61\x6c\ +\x20\x63\x20\x23\x37\x33\x36\x33\x30\x38\x22\x2c\x0a\x22\x23\x52\ +\x20\x63\x20\x23\x37\x33\x36\x62\x31\x30\x22\x2c\x0a\x22\x2e\x54\ +\x20\x63\x20\x23\x37\x33\x36\x62\x36\x33\x22\x2c\x0a\x22\x61\x35\ +\x20\x63\x20\x23\x37\x33\x37\x33\x32\x39\x22\x2c\x0a\x22\x2e\x69\ +\x20\x63\x20\x23\x37\x33\x37\x33\x36\x62\x22\x2c\x0a\x22\x2e\x4b\ +\x20\x63\x20\x23\x37\x33\x37\x33\x37\x33\x22\x2c\x0a\x22\x61\x37\ +\x20\x63\x20\x23\x37\x33\x37\x62\x32\x39\x22\x2c\x0a\x22\x23\x67\ +\x20\x63\x20\x23\x37\x33\x37\x62\x37\x33\x22\x2c\x0a\x22\x61\x39\ +\x20\x63\x20\x23\x37\x62\x37\x33\x31\x38\x22\x2c\x0a\x22\x23\x41\ +\x20\x63\x20\x23\x37\x62\x37\x33\x37\x33\x22\x2c\x0a\x22\x61\x38\ +\x20\x63\x20\x23\x37\x62\x37\x62\x32\x31\x22\x2c\x0a\x22\x61\x56\ +\x20\x63\x20\x23\x37\x62\x37\x62\x32\x39\x22\x2c\x0a\x22\x61\x51\ +\x20\x63\x20\x23\x37\x62\x37\x62\x35\x61\x22\x2c\x0a\x22\x2e\x4a\ +\x20\x63\x20\x23\x37\x62\x37\x62\x37\x33\x22\x2c\x0a\x22\x2e\x31\ +\x20\x63\x20\x23\x37\x62\x37\x62\x37\x62\x22\x2c\x0a\x22\x62\x23\ +\x20\x63\x20\x23\x37\x62\x38\x34\x33\x31\x22\x2c\x0a\x22\x61\x33\ +\x20\x63\x20\x23\x37\x62\x38\x34\x34\x61\x22\x2c\x0a\x22\x2e\x38\ +\x20\x63\x20\x23\x37\x62\x38\x34\x37\x62\x22\x2c\x0a\x22\x61\x79\ +\x20\x63\x20\x23\x38\x34\x37\x33\x30\x38\x22\x2c\x0a\x22\x23\x35\ +\x20\x63\x20\x23\x38\x34\x37\x33\x31\x30\x22\x2c\x0a\x22\x61\x54\ +\x20\x63\x20\x23\x38\x34\x37\x62\x32\x31\x22\x2c\x0a\x22\x62\x2e\ +\x20\x63\x20\x23\x38\x34\x37\x62\x32\x39\x22\x2c\x0a\x22\x2e\x53\ +\x20\x63\x20\x23\x38\x34\x37\x62\x37\x33\x22\x2c\x0a\x22\x2e\x64\ +\x20\x63\x20\x23\x38\x34\x37\x62\x37\x62\x22\x2c\x0a\x22\x61\x57\ +\x20\x63\x20\x23\x38\x34\x38\x34\x32\x31\x22\x2c\x0a\x22\x61\x31\ +\x20\x63\x20\x23\x38\x34\x38\x34\x32\x39\x22\x2c\x0a\x22\x61\x30\ +\x20\x63\x20\x23\x38\x34\x38\x34\x33\x31\x22\x2c\x0a\x22\x62\x71\ +\x20\x63\x20\x23\x38\x34\x38\x34\x34\x61\x22\x2c\x0a\x22\x2e\x48\ +\x20\x63\x20\x23\x38\x34\x38\x34\x38\x34\x22\x2c\x0a\x22\x61\x65\ +\x20\x63\x20\x23\x38\x63\x37\x62\x30\x38\x22\x2c\x0a\x22\x61\x6b\ +\x20\x63\x20\x23\x38\x63\x37\x62\x31\x30\x22\x2c\x0a\x22\x23\x6a\ +\x20\x63\x20\x23\x38\x63\x38\x34\x38\x34\x22\x2c\x0a\x22\x62\x61\ +\x20\x63\x20\x23\x38\x63\x38\x63\x36\x33\x22\x2c\x0a\x22\x61\x32\ +\x20\x63\x20\x23\x38\x63\x38\x63\x37\x62\x22\x2c\x0a\x22\x2e\x78\ +\x20\x63\x20\x23\x38\x63\x38\x63\x38\x34\x22\x2c\x0a\x22\x2e\x32\ +\x20\x63\x20\x23\x38\x63\x39\x34\x38\x63\x22\x2c\x0a\x22\x2e\x39\ +\x20\x63\x20\x23\x38\x63\x61\x64\x61\x35\x22\x2c\x0a\x22\x61\x43\ +\x20\x63\x20\x23\x39\x34\x37\x62\x30\x38\x22\x2c\x0a\x22\x2e\x59\ +\x20\x63\x20\x23\x39\x34\x37\x62\x37\x33\x22\x2c\x0a\x22\x61\x4b\ +\x20\x63\x20\x23\x39\x34\x38\x63\x31\x30\x22\x2c\x0a\x22\x23\x51\ +\x20\x63\x20\x23\x39\x34\x38\x63\x31\x38\x22\x2c\x0a\x22\x61\x36\ +\x20\x63\x20\x23\x39\x34\x38\x63\x32\x39\x22\x2c\x0a\x22\x23\x6d\ +\x20\x63\x20\x23\x39\x34\x38\x63\x38\x34\x22\x2c\x0a\x22\x62\x70\ +\x20\x63\x20\x23\x39\x34\x39\x34\x34\x32\x22\x2c\x0a\x22\x61\x48\ +\x20\x63\x20\x23\x39\x34\x39\x34\x38\x34\x22\x2c\x0a\x22\x2e\x44\ +\x20\x63\x20\x23\x39\x34\x39\x34\x38\x63\x22\x2c\x0a\x22\x2e\x6e\ +\x20\x63\x20\x23\x39\x34\x39\x34\x39\x34\x22\x2c\x0a\x22\x62\x6e\ +\x20\x63\x20\x23\x39\x34\x39\x63\x34\x61\x22\x2c\x0a\x22\x62\x6c\ +\x20\x63\x20\x23\x39\x34\x39\x63\x35\x61\x22\x2c\x0a\x22\x62\x6a\ +\x20\x63\x20\x23\x39\x34\x39\x63\x36\x33\x22\x2c\x0a\x22\x2e\x75\ +\x20\x63\x20\x23\x39\x34\x39\x63\x39\x34\x22\x2c\x0a\x22\x2e\x76\ +\x20\x63\x20\x23\x39\x34\x61\x35\x39\x63\x22\x2c\x0a\x22\x61\x49\ +\x20\x63\x20\x23\x39\x63\x38\x63\x31\x30\x22\x2c\x0a\x22\x23\x34\ +\x20\x63\x20\x23\x39\x63\x38\x63\x31\x38\x22\x2c\x0a\x22\x23\x4f\ +\x20\x63\x20\x23\x39\x63\x38\x63\x32\x39\x22\x2c\x0a\x22\x61\x4d\ +\x20\x63\x20\x23\x39\x63\x39\x34\x31\x38\x22\x2c\x0a\x22\x23\x72\ +\x20\x63\x20\x23\x39\x63\x39\x34\x38\x63\x22\x2c\x0a\x22\x62\x6f\ +\x20\x63\x20\x23\x39\x63\x39\x63\x34\x61\x22\x2c\x0a\x22\x62\x6d\ +\x20\x63\x20\x23\x39\x63\x39\x63\x35\x32\x22\x2c\x0a\x22\x62\x6b\ +\x20\x63\x20\x23\x39\x63\x39\x63\x35\x61\x22\x2c\x0a\x22\x62\x68\ +\x20\x63\x20\x23\x39\x63\x39\x63\x36\x62\x22\x2c\x0a\x22\x2e\x6b\ +\x20\x63\x20\x23\x39\x63\x39\x63\x39\x34\x22\x2c\x0a\x22\x2e\x61\ +\x20\x63\x20\x23\x39\x63\x39\x63\x39\x63\x22\x2c\x0a\x22\x62\x69\ +\x20\x63\x20\x23\x39\x63\x61\x35\x36\x62\x22\x2c\x0a\x22\x62\x66\ +\x20\x63\x20\x23\x39\x63\x61\x35\x37\x33\x22\x2c\x0a\x22\x2e\x68\ +\x20\x63\x20\x23\x39\x63\x61\x35\x39\x63\x22\x2c\x0a\x22\x23\x66\ +\x20\x63\x20\x23\x39\x63\x61\x35\x61\x35\x22\x2c\x0a\x22\x2e\x42\ +\x20\x63\x20\x23\x39\x63\x62\x64\x62\x35\x22\x2c\x0a\x22\x23\x50\ +\x20\x63\x20\x23\x61\x35\x39\x34\x30\x30\x22\x2c\x0a\x22\x61\x42\ +\x20\x63\x20\x23\x61\x35\x39\x34\x31\x38\x22\x2c\x0a\x22\x23\x6b\ +\x20\x63\x20\x23\x61\x35\x39\x34\x38\x63\x22\x2c\x0a\x22\x61\x72\ +\x20\x63\x20\x23\x61\x35\x39\x63\x32\x39\x22\x2c\x0a\x22\x2e\x4e\ +\x20\x63\x20\x23\x61\x35\x39\x63\x38\x63\x22\x2c\x0a\x22\x2e\x50\ +\x20\x63\x20\x23\x61\x35\x39\x63\x39\x34\x22\x2c\x0a\x22\x2e\x57\ +\x20\x63\x20\x23\x61\x35\x39\x63\x39\x63\x22\x2c\x0a\x22\x62\x67\ +\x20\x63\x20\x23\x61\x35\x61\x35\x37\x33\x22\x2c\x0a\x22\x62\x64\ +\x20\x63\x20\x23\x61\x35\x61\x35\x38\x34\x22\x2c\x0a\x22\x2e\x71\ +\x20\x63\x20\x23\x61\x35\x61\x35\x39\x63\x22\x2c\x0a\x22\x2e\x63\ +\x20\x63\x20\x23\x61\x35\x61\x35\x61\x35\x22\x2c\x0a\x22\x62\x65\ +\x20\x63\x20\x23\x61\x35\x61\x64\x37\x62\x22\x2c\x0a\x22\x2e\x6f\ +\x20\x63\x20\x23\x61\x35\x61\x64\x61\x35\x22\x2c\x0a\x22\x2e\x43\ +\x20\x63\x20\x23\x61\x35\x61\x64\x61\x64\x22\x2c\x0a\x22\x2e\x49\ +\x20\x63\x20\x23\x61\x35\x62\x35\x61\x64\x22\x2c\x0a\x22\x23\x64\ +\x20\x63\x20\x23\x61\x35\x62\x64\x62\x35\x22\x2c\x0a\x22\x2e\x77\ +\x20\x63\x20\x23\x61\x35\x63\x36\x62\x64\x22\x2c\x0a\x22\x61\x64\ +\x20\x63\x20\x23\x61\x64\x39\x63\x31\x30\x22\x2c\x0a\x22\x61\x6a\ +\x20\x63\x20\x23\x61\x64\x39\x63\x31\x38\x22\x2c\x0a\x22\x23\x77\ +\x20\x63\x20\x23\x61\x64\x39\x63\x39\x34\x22\x2c\x0a\x22\x2e\x66\ +\x20\x63\x20\x23\x61\x64\x61\x35\x39\x63\x22\x2c\x0a\x22\x62\x63\ +\x20\x63\x20\x23\x61\x64\x61\x64\x37\x62\x22\x2c\x0a\x22\x62\x62\ +\x20\x63\x20\x23\x61\x64\x61\x64\x38\x34\x22\x2c\x0a\x22\x2e\x23\ +\x20\x63\x20\x23\x61\x64\x61\x64\x61\x35\x22\x2c\x0a\x22\x2e\x74\ +\x20\x63\x20\x23\x61\x64\x61\x64\x61\x64\x22\x2c\x0a\x22\x2e\x34\ +\x20\x63\x20\x23\x61\x64\x62\x35\x61\x64\x22\x2c\x0a\x22\x61\x69\ +\x20\x63\x20\x23\x62\x35\x61\x35\x31\x38\x22\x2c\x0a\x22\x61\x71\ +\x20\x63\x20\x23\x62\x35\x61\x35\x32\x39\x22\x2c\x0a\x22\x61\x44\ +\x20\x63\x20\x23\x62\x35\x61\x35\x34\x32\x22\x2c\x0a\x22\x61\x6f\ +\x20\x63\x20\x23\x62\x35\x61\x35\x34\x61\x22\x2c\x0a\x22\x2e\x4f\ +\x20\x63\x20\x23\x62\x35\x61\x35\x39\x34\x22\x2c\x0a\x22\x23\x76\ +\x20\x63\x20\x23\x62\x35\x61\x35\x39\x63\x22\x2c\x0a\x22\x61\x74\ +\x20\x63\x20\x23\x62\x35\x61\x64\x35\x32\x22\x2c\x0a\x22\x23\x7a\ +\x20\x63\x20\x23\x62\x35\x61\x64\x39\x63\x22\x2c\x0a\x22\x2e\x35\ +\x20\x63\x20\x23\x62\x35\x61\x64\x61\x35\x22\x2c\x0a\x22\x2e\x6a\ +\x20\x63\x20\x23\x62\x35\x62\x35\x61\x64\x22\x2c\x0a\x22\x2e\x65\ +\x20\x63\x20\x23\x62\x35\x62\x35\x62\x35\x22\x2c\x0a\x22\x2e\x33\ +\x20\x63\x20\x23\x62\x35\x62\x64\x62\x35\x22\x2c\x0a\x22\x2e\x51\ +\x20\x63\x20\x23\x62\x35\x62\x64\x62\x64\x22\x2c\x0a\x22\x23\x65\ +\x20\x63\x20\x23\x62\x35\x63\x65\x63\x36\x22\x2c\x0a\x22\x23\x38\ +\x20\x63\x20\x23\x62\x64\x61\x35\x33\x39\x22\x2c\x0a\x22\x23\x78\ +\x20\x63\x20\x23\x62\x64\x61\x35\x39\x63\x22\x2c\x0a\x22\x23\x33\ +\x20\x63\x20\x23\x62\x64\x61\x64\x32\x39\x22\x2c\x0a\x22\x23\x58\ +\x20\x63\x20\x23\x62\x64\x61\x64\x33\x31\x22\x2c\x0a\x22\x61\x67\ +\x20\x63\x20\x23\x62\x64\x61\x64\x34\x32\x22\x2c\x0a\x22\x23\x6e\ +\x20\x63\x20\x23\x62\x64\x62\x35\x61\x64\x22\x2c\x0a\x22\x2e\x62\ +\x20\x63\x20\x23\x62\x64\x62\x64\x62\x64\x22\x2c\x0a\x22\x2e\x58\ +\x20\x63\x20\x23\x62\x64\x63\x65\x63\x36\x22\x2c\x0a\x22\x61\x55\ +\x20\x63\x20\x23\x63\x36\x62\x35\x31\x30\x22\x2c\x0a\x22\x23\x2e\ +\x20\x63\x20\x23\x63\x36\x63\x36\x62\x64\x22\x2c\x0a\x22\x2e\x70\ +\x20\x63\x20\x23\x63\x36\x63\x65\x63\x65\x22\x2c\x0a\x22\x2e\x67\ +\x20\x63\x20\x23\x63\x36\x64\x65\x64\x36\x22\x2c\x0a\x22\x61\x63\ +\x20\x63\x20\x23\x63\x65\x62\x64\x33\x31\x22\x2c\x0a\x22\x23\x6c\ +\x20\x63\x20\x23\x63\x65\x64\x36\x63\x65\x22\x2c\x0a\x22\x23\x73\ +\x20\x63\x20\x23\x63\x65\x64\x36\x64\x36\x22\x2c\x0a\x22\x23\x74\ +\x20\x63\x20\x23\x63\x65\x64\x65\x64\x65\x22\x2c\x0a\x22\x23\x39\ +\x20\x63\x20\x23\x64\x36\x63\x36\x31\x30\x22\x2c\x0a\x22\x23\x32\ +\x20\x63\x20\x23\x64\x36\x63\x36\x33\x31\x22\x2c\x0a\x22\x61\x70\ +\x20\x63\x20\x23\x64\x65\x63\x36\x30\x38\x22\x2c\x0a\x22\x61\x68\ +\x20\x63\x20\x23\x64\x65\x63\x65\x31\x30\x22\x2c\x0a\x22\x61\x62\ +\x20\x63\x20\x23\x64\x65\x63\x65\x33\x31\x22\x2c\x0a\x22\x2e\x6c\ +\x20\x63\x20\x23\x64\x65\x65\x66\x65\x37\x22\x2c\x0a\x22\x2e\x52\ +\x20\x63\x20\x23\x64\x65\x65\x66\x65\x66\x22\x2c\x0a\x22\x61\x75\ +\x20\x63\x20\x23\x65\x37\x63\x65\x30\x38\x22\x2c\x0a\x22\x61\x2e\ +\x20\x63\x20\x23\x65\x37\x64\x36\x32\x31\x22\x2c\x0a\x22\x61\x23\ +\x20\x63\x20\x23\x65\x37\x64\x36\x33\x31\x22\x2c\x0a\x22\x61\x61\ +\x20\x63\x20\x23\x65\x37\x64\x36\x33\x39\x22\x2c\x0a\x22\x23\x31\ +\x20\x63\x20\x23\x65\x37\x64\x65\x33\x39\x22\x2c\x0a\x22\x23\x59\ +\x20\x63\x20\x23\x65\x66\x64\x65\x31\x30\x22\x2c\x0a\x22\x61\x76\ +\x20\x63\x20\x23\x65\x66\x64\x65\x32\x31\x22\x2c\x0a\x22\x61\x41\ +\x20\x63\x20\x23\x65\x66\x64\x65\x32\x39\x22\x2c\x0a\x22\x23\x5a\ +\x20\x63\x20\x23\x66\x37\x65\x37\x32\x39\x22\x2c\x0a\x22\x23\x30\ +\x20\x63\x20\x23\x66\x37\x65\x37\x33\x39\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x23\x2e\x61\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\ +\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x62\ +\x2e\x63\x2e\x64\x2e\x65\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x2e\x66\x2e\x67\x2e\x68\x2e\x69\x2e\x62\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x2e\x6a\x2e\x6b\x2e\x6c\x2e\x65\x2e\x6d\x2e\x6e\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x2e\x62\x2e\x61\x2e\x6f\x2e\x70\x2e\x71\ +\x2e\x72\x2e\x73\x2e\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\ +\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x75\x2e\x76\x2e\x77\ +\x2e\x6b\x2e\x78\x2e\x79\x2e\x7a\x2e\x41\x2e\x62\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x74\x2e\x6b\ +\x2e\x42\x2e\x43\x2e\x6b\x2e\x44\x2e\x45\x2e\x46\x2e\x47\x2e\x48\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x62\ +\x2e\x23\x2e\x23\x2e\x6f\x2e\x49\x2e\x62\x2e\x63\x2e\x4a\x2e\x4b\ +\x2e\x4c\x2e\x4d\x2e\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x2e\x61\x2e\x4e\x2e\x4f\x2e\x50\x2e\x51\x2e\x52\x2e\x6f\ +\x2e\x53\x2e\x54\x2e\x55\x2e\x56\x2e\x73\x2e\x62\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\ +\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x2e\x74\x2e\x4e\x2e\x50\x2e\x57\x2e\x6b\x2e\x58\ +\x2e\x52\x2e\x50\x2e\x59\x2e\x69\x2e\x41\x2e\x5a\x2e\x30\x2e\x31\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x2e\x62\x2e\x78\x2e\x32\x2e\x77\x2e\x33\ +\x2e\x34\x2e\x49\x2e\x6a\x2e\x23\x2e\x35\x2e\x36\x2e\x4c\x2e\x46\ +\x2e\x37\x2e\x30\x2e\x63\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x6e\x2e\x38\x2e\x39\ +\x2e\x70\x23\x2e\x2e\x6f\x2e\x34\x2e\x78\x2e\x78\x2e\x78\x23\x23\ +\x2e\x73\x23\x61\x23\x62\x2e\x73\x23\x63\x2e\x62\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x74\x2e\x44\ +\x2e\x23\x23\x64\x23\x65\x2e\x68\x23\x66\x2e\x6f\x2e\x50\x2e\x32\ +\x2e\x32\x23\x67\x23\x23\x23\x68\x2e\x41\x2e\x7a\x23\x69\x2e\x4b\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\ +\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x62\ +\x23\x6a\x2e\x50\x2e\x66\x2e\x50\x23\x6b\x2e\x71\x2e\x34\x2e\x58\ +\x23\x6c\x23\x6d\x23\x6e\x2e\x6e\x23\x6f\x2e\x4a\x2e\x36\x23\x70\ +\x23\x69\x23\x71\x2e\x63\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x2e\x57\x23\x6d\x23\x6b\x2e\x4f\x23\x6d\x23\x72\x2e\x35\ +\x2e\x6b\x23\x73\x23\x74\x23\x6d\x2e\x71\x23\x72\x2e\x55\x2e\x45\ +\x2e\x54\x23\x70\x23\x75\x23\x69\x2e\x4d\x2e\x65\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x2e\x62\x2e\x78\x23\x72\x2e\x6f\x2e\x74\x23\x76\ +\x2e\x66\x2e\x6f\x2e\x34\x2e\x6c\x23\x6c\x23\x77\x23\x78\x2e\x66\ +\x2e\x69\x23\x6f\x2e\x45\x23\x23\x23\x61\x2e\x6d\x23\x79\x2e\x6e\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x62\x2e\x65\x2e\x63\x23\x64\ +\x2e\x6f\x23\x7a\x2e\x75\x2e\x71\x23\x66\x2e\x49\x2e\x71\x2e\x23\ +\x2e\x23\x2e\x32\x23\x41\x2e\x55\x2e\x6d\x23\x42\x23\x68\x2e\x68\ +\x2e\x6a\x2e\x62\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\ +\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x2e\x62\x23\x43\x23\x44\x23\x45\x23\x46\x23\x47\x23\x47\ +\x23\x47\x23\x48\x23\x49\x23\x4a\x23\x4b\x23\x4c\x23\x4d\x23\x4e\ +\x2e\x69\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x2e\x62\x23\x4f\x23\x50\x23\x51\x23\x52\ +\x23\x53\x23\x54\x23\x55\x23\x4c\x23\x4d\x23\x56\x23\x57\x23\x4e\ +\x23\x56\x23\x56\x2e\x69\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x62\x23\x58\x23\x59\ +\x23\x5a\x23\x30\x23\x30\x23\x31\x23\x32\x23\x33\x23\x34\x23\x35\ +\x23\x36\x23\x37\x23\x4d\x23\x56\x23\x41\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x62\ +\x23\x38\x23\x39\x61\x2e\x61\x23\x61\x61\x61\x61\x61\x62\x61\x63\ +\x23\x33\x61\x64\x61\x65\x61\x66\x23\x37\x23\x4d\x2e\x4a\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\ +\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x2e\x62\x61\x67\x61\x68\x61\x2e\x61\x23\x23\x31\x61\x61\ +\x61\x61\x23\x32\x61\x69\x61\x6a\x61\x6b\x61\x6c\x61\x6d\x61\x6e\ +\x23\x41\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x61\x6f\x61\x70\x61\x2e\x61\x23\ +\x61\x61\x61\x71\x61\x72\x61\x71\x23\x33\x61\x6a\x23\x35\x61\x66\ +\x61\x6d\x61\x73\x2e\x4a\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x61\x74\x61\x75\ +\x61\x76\x61\x23\x61\x77\x23\x56\x23\x57\x23\x4d\x61\x78\x23\x34\ +\x61\x79\x61\x66\x61\x7a\x61\x6e\x2e\x4a\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x61\x74\x61\x68\x61\x41\x61\x42\x23\x57\x23\x4e\x23\x4d\x23\x56\ +\x23\x56\x23\x52\x61\x43\x61\x6c\x61\x7a\x61\x73\x2e\x4a\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\ +\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x2e\x62\x61\x44\x61\x70\x23\x5a\x23\x51\x23\x4e\x23\x4d\ +\x23\x56\x23\x4d\x23\x4e\x23\x36\x61\x6b\x61\x66\x61\x45\x61\x46\ +\x61\x47\x2e\x45\x23\x68\x2e\x4a\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x61\x48\x61\x49\x61\x68\x61\x41\x61\x42\ +\x23\x57\x23\x57\x23\x4e\x23\x57\x61\x4a\x23\x36\x61\x4b\x61\x6c\ +\x61\x6d\x61\x46\x23\x57\x61\x4a\x61\x4a\x23\x79\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x71\x61\x4c\x61\x49\x61\x68\ +\x61\x76\x61\x4d\x23\x57\x61\x4a\x23\x57\x23\x44\x61\x4e\x23\x52\ +\x61\x65\x61\x6c\x61\x4f\x61\x6e\x23\x4e\x61\x4e\x61\x50\x61\x51\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x6a\x61\x52\x61\x53\ +\x61\x54\x61\x55\x61\x76\x61\x42\x23\x57\x61\x4e\x61\x50\x61\x4c\ +\x61\x56\x61\x57\x61\x65\x61\x58\x23\x36\x61\x59\x61\x5a\x61\x30\ +\x61\x31\x61\x32\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x2c\ +\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x2e\x62\x61\x33\ +\x61\x34\x61\x35\x61\x35\x61\x56\x61\x36\x61\x31\x61\x5a\x61\x37\ +\x61\x53\x61\x53\x61\x35\x61\x38\x61\x39\x61\x34\x61\x35\x62\x2e\ +\x62\x23\x61\x35\x61\x35\x2e\x6b\x51\x74\x51\x74\x51\x74\x51\x74\ +\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\ +\x62\x61\x61\x37\x61\x37\x61\x56\x61\x30\x62\x2e\x62\x23\x61\x37\ +\x62\x23\x61\x30\x61\x37\x61\x37\x61\x37\x61\x53\x61\x53\x61\x37\ +\x62\x2e\x61\x56\x61\x30\x61\x56\x61\x52\x2e\x23\x51\x74\x51\x74\ +\x51\x74\x51\x74\x51\x74\x22\x2c\x0a\x22\x51\x74\x51\x74\x51\x74\ +\x51\x74\x51\x74\x62\x62\x62\x63\x62\x64\x62\x65\x62\x65\x62\x66\ +\x62\x67\x62\x68\x62\x68\x62\x69\x62\x6a\x62\x6a\x62\x6b\x62\x6b\ +\x62\x6c\x62\x6d\x62\x6d\x62\x6e\x62\x6f\x62\x70\x62\x71\x2e\x62\ +\x51\x74\x51\x74\x51\x74\x51\x74\x51\x74\x22\x7d\x3b\x0a\ +\x00\x00\x00\xad\ +\x00\ +\x00\x04\xda\x78\x9c\xd3\xd7\x52\x88\x08\xf0\x55\xd0\xd2\xe7\x2a\ +\x2e\x49\x2c\xc9\x4c\x56\x48\xce\x48\x2c\x52\xd0\xca\xcc\x4d\x4c\ +\x4f\x35\x88\x8e\xb5\xad\xe6\x52\x32\x36\x52\x00\x21\x05\x43\x25\ +\x1d\x2e\x25\x3d\x85\x64\x05\xbf\xfc\xbc\x54\x10\x3b\x11\xc8\x56\ +\x36\x00\x02\x0b\x03\x10\x57\x19\xc4\xb5\x30\xb0\x80\x72\xf5\x08\ +\x80\x51\x35\x60\xa0\x9c\x08\x03\x38\xd5\x20\x94\x20\x29\x4a\x44\ +\x51\xa3\x8c\x90\x42\x66\x21\xab\x51\x46\xd1\x0d\xe5\x24\xa2\xaa\ +\x41\x75\x05\x44\x51\x22\x86\x1a\x54\x77\x22\xbb\x0c\x97\x1a\x3d\ +\x2a\xa9\x21\xc2\xae\x44\x6c\x6a\x94\x31\xfc\x85\xa9\x06\x45\x51\ +\x22\x0e\x35\x40\x09\x65\x3d\xec\x00\x29\x4e\x71\x2a\x1a\xc4\xe9\ +\x70\x78\xa9\xa9\xb5\xe6\x02\x00\x3d\x48\xf5\x6a\ +\x00\x00\x00\xad\ +\x00\ +\x00\x04\xda\x78\x9c\xd3\xd7\x52\x88\x08\xf0\x55\xd0\xd2\xe7\x2a\ +\x2e\x49\x2c\xc9\x4c\x56\x48\xce\x48\x2c\x52\xd0\xca\xcc\x4d\x4c\ +\x4f\x35\x89\x8e\xb5\xad\xe6\x52\x32\x36\x52\x00\x21\x05\x43\x25\ +\x1d\x2e\x25\x3d\x85\x64\x05\xbf\xfc\xbc\x54\x10\x5b\x19\xc8\x56\ +\x36\x00\x02\x0b\x03\x10\x37\x11\xc4\xb5\x30\xb0\x80\x72\xf5\x08\ +\x80\x51\x35\x24\xab\x51\x86\x81\x44\x34\x35\xca\x98\x4a\xe0\x8a\ +\xe0\x6a\x94\x11\x4a\x10\xac\x44\x34\x35\xca\x30\x43\x90\x4d\x4c\ +\x44\x53\xa3\x8c\xa6\x04\xae\x11\x59\x0d\x9a\x0a\xb8\x0b\xd0\xd4\ +\x60\x78\x91\x4c\x35\xc4\xd8\x85\xa6\x08\x87\x1a\x54\x7f\x61\xf8\ +\x1d\x5d\x11\x7a\x18\x62\x01\x89\x30\xe5\xb8\xd5\xc0\x95\x0c\x74\ +\x1a\x1b\x1e\x6a\x6a\xad\xb9\x00\xc3\x36\xd8\x5e\ +" + +qt_resource_name = b"\ +\x00\x05\ +\x00\x6f\xa6\x53\ +\x00\x69\ +\x00\x63\x00\x6f\x00\x6e\x00\x73\ +\x00\x0a\ +\x0d\x8c\x59\x8d\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x33\x00\x2e\x00\x78\x00\x70\x00\x6d\ +\x00\x0a\ +\x0d\x8b\x59\x8d\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x32\x00\x2e\x00\x78\x00\x70\x00\x6d\ +\x00\x0a\ +\x0d\x87\x59\x8d\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x36\x00\x2e\x00\x78\x00\x70\x00\x6d\ +\x00\x0a\ +\x0d\x8e\x59\x8d\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x31\x00\x2e\x00\x78\x00\x70\x00\x6d\ +\x00\x0a\ +\x0d\x8a\x59\x8d\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x35\x00\x2e\x00\x78\x00\x70\x00\x6d\ +\x00\x0a\ +\x0d\x8d\x59\x8d\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x30\x00\x2e\x00\x78\x00\x70\x00\x6d\ +\x00\x0a\ +\x0d\x89\x59\x8d\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x34\x00\x2e\x00\x78\x00\x70\x00\x6d\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x07\x00\x00\x00\x02\ +\x00\x00\x00\x44\x00\x00\x00\x00\x00\x01\x00\x00\x05\xc8\ +\x00\x00\x00\xac\x00\x01\x00\x00\x00\x01\x00\x00\x30\x1d\ +\x00\x00\x00\x78\x00\x00\x00\x00\x00\x01\x00\x00\x19\x89\ +\x00\x00\x00\x2a\x00\x01\x00\x00\x00\x01\x00\x00\x00\xab\ +\x00\x00\x00\x10\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x00\x92\x00\x01\x00\x00\x00\x01\x00\x00\x2f\x6c\ +\x00\x00\x00\x5e\x00\x01\x00\x00\x00\x01\x00\x00\x14\x6b\ +" + +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() diff --git a/examples/activeqt/webbrowser/ui_mainwindow.py b/examples/activeqt/webbrowser/ui_mainwindow.py new file mode 100644 index 0000000..971eb45 --- /dev/null +++ b/examples/activeqt/webbrowser/ui_mainwindow.py @@ -0,0 +1,143 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'mainwindow.ui' +# +# Created: Fri Jul 26 06:46:58 2013 +# by: PyQt5 UI code generator 5.0.1-snapshot-2a99e59669ee +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + MainWindow.setObjectName("MainWindow") + MainWindow.resize(812, 605) + self.centralWidget = QtWidgets.QWidget(MainWindow) + self.centralWidget.setObjectName("centralWidget") + self.hboxlayout = QtWidgets.QHBoxLayout(self.centralWidget) + self.hboxlayout.setContentsMargins(0, 0, 0, 0) + self.hboxlayout.setSpacing(6) + self.hboxlayout.setObjectName("hboxlayout") + self.Frame3 = QtWidgets.QFrame(self.centralWidget) + self.Frame3.setFrameShape(QtWidgets.QFrame.StyledPanel) + self.Frame3.setFrameShadow(QtWidgets.QFrame.Sunken) + self.Frame3.setObjectName("Frame3") + self.vboxlayout = QtWidgets.QVBoxLayout(self.Frame3) + self.vboxlayout.setContentsMargins(1, 1, 1, 1) + self.vboxlayout.setSpacing(0) + self.vboxlayout.setObjectName("vboxlayout") + self.WebBrowser = QAxContainer.QAxWidget(self.Frame3) + self.WebBrowser.setFocusPolicy(QtCore.Qt.StrongFocus) + self.WebBrowser.setControl("{8856F961-340A-11D0-A96B-00C04FD705A2}") + self.WebBrowser.setObjectName("WebBrowser") + self.vboxlayout.addWidget(self.WebBrowser) + self.hboxlayout.addWidget(self.Frame3) + MainWindow.setCentralWidget(self.centralWidget) + self.tbNavigate = QtWidgets.QToolBar(MainWindow) + self.tbNavigate.setOrientation(QtCore.Qt.Horizontal) + self.tbNavigate.setObjectName("tbNavigate") + MainWindow.addToolBar(4, self.tbNavigate) + self.tbAddress = QtWidgets.QToolBar(MainWindow) + self.tbAddress.setOrientation(QtCore.Qt.Horizontal) + self.tbAddress.setObjectName("tbAddress") + MainWindow.addToolBar(4, self.tbAddress) + self.menubar = QtWidgets.QMenuBar(MainWindow) + self.menubar.setGeometry(QtCore.QRect(0, 0, 812, 26)) + self.menubar.setObjectName("menubar") + self.PopupMenu = QtWidgets.QMenu(self.menubar) + self.PopupMenu.setObjectName("PopupMenu") + self.FileNewGroup_2 = QtWidgets.QMenu(self.PopupMenu) + self.FileNewGroup_2.setObjectName("FileNewGroup_2") + self.unnamed = QtWidgets.QMenu(self.menubar) + self.unnamed.setObjectName("unnamed") + MainWindow.setMenuBar(self.menubar) + self.actionGo = QtWidgets.QAction(MainWindow) + icon = QtGui.QIcon() + icon.addFile(":/icons/image0.xpm") + self.actionGo.setIcon(icon) + self.actionGo.setObjectName("actionGo") + self.actionBack = QtWidgets.QAction(MainWindow) + icon1 = QtGui.QIcon() + icon1.addFile(":/icons/image1.xpm") + self.actionBack.setIcon(icon1) + self.actionBack.setObjectName("actionBack") + self.actionForward = QtWidgets.QAction(MainWindow) + icon2 = QtGui.QIcon() + icon2.addFile(":/icons/image2.xpm") + self.actionForward.setIcon(icon2) + self.actionForward.setObjectName("actionForward") + self.actionStop = QtWidgets.QAction(MainWindow) + icon3 = QtGui.QIcon() + icon3.addFile(":/icons/image3.xpm") + self.actionStop.setIcon(icon3) + self.actionStop.setObjectName("actionStop") + self.actionRefresh = QtWidgets.QAction(MainWindow) + icon4 = QtGui.QIcon() + icon4.addFile(":/icons/image4.xpm") + self.actionRefresh.setIcon(icon4) + self.actionRefresh.setObjectName("actionRefresh") + self.actionHome = QtWidgets.QAction(MainWindow) + icon5 = QtGui.QIcon() + icon5.addFile(":/icons/image5.xpm") + self.actionHome.setIcon(icon5) + self.actionHome.setObjectName("actionHome") + self.actionFileClose = QtWidgets.QAction(MainWindow) + self.actionFileClose.setObjectName("actionFileClose") + self.actionSearch = QtWidgets.QAction(MainWindow) + icon6 = QtGui.QIcon() + icon6.addFile(":/icons/image6.xpm") + self.actionSearch.setIcon(icon6) + self.actionSearch.setObjectName("actionSearch") + self.actionAbout = QtWidgets.QAction(MainWindow) + self.actionAbout.setObjectName("actionAbout") + self.actionAboutQt = QtWidgets.QAction(MainWindow) + self.actionAboutQt.setObjectName("actionAboutQt") + self.FileNewGroup = QtWidgets.QActionGroup(MainWindow) + self.FileNewGroup.setObjectName("FileNewGroup") + self.actionNewWindow = QtWidgets.QAction(self.FileNewGroup) + self.actionNewWindow.setObjectName("actionNewWindow") + self.tbNavigate.addAction(self.actionBack) + self.tbNavigate.addAction(self.actionForward) + self.tbNavigate.addAction(self.actionStop) + self.tbNavigate.addAction(self.actionRefresh) + self.tbNavigate.addAction(self.actionHome) + self.tbNavigate.addSeparator() + self.tbNavigate.addAction(self.actionSearch) + self.tbAddress.addAction(self.actionGo) + self.FileNewGroup_2.addAction(self.actionNewWindow) + self.PopupMenu.addAction(self.FileNewGroup_2.menuAction()) + self.PopupMenu.addSeparator() + self.PopupMenu.addAction(self.actionFileClose) + self.unnamed.addAction(self.actionAbout) + self.unnamed.addAction(self.actionAboutQt) + self.menubar.addAction(self.PopupMenu.menuAction()) + self.menubar.addAction(self.unnamed.menuAction()) + + self.retranslateUi(MainWindow) + QtCore.QMetaObject.connectSlotsByName(MainWindow) + + def retranslateUi(self, MainWindow): + _translate = QtCore.QCoreApplication.translate + MainWindow.setWindowTitle(_translate("MainWindow", "Qt WebBrowser")) + self.tbNavigate.setWindowTitle(_translate("MainWindow", "Navigation")) + self.tbAddress.setWindowTitle(_translate("MainWindow", "Address")) + self.PopupMenu.setTitle(_translate("MainWindow", "&File")) + self.FileNewGroup_2.setTitle(_translate("MainWindow", "New")) + self.unnamed.setTitle(_translate("MainWindow", "&Help")) + self.actionGo.setIconText(_translate("MainWindow", "Go")) + self.actionBack.setIconText(_translate("MainWindow", "Back")) + self.actionBack.setShortcut(_translate("MainWindow", "Backspace")) + self.actionForward.setIconText(_translate("MainWindow", "Forward")) + self.actionStop.setIconText(_translate("MainWindow", "Stop")) + self.actionRefresh.setIconText(_translate("MainWindow", "Refresh")) + self.actionHome.setIconText(_translate("MainWindow", "Home")) + self.actionFileClose.setText(_translate("MainWindow", "C&lose")) + self.actionFileClose.setIconText(_translate("MainWindow", "Close")) + self.actionSearch.setIconText(_translate("MainWindow", "Search")) + self.actionAbout.setIconText(_translate("MainWindow", "About")) + self.actionAboutQt.setIconText(_translate("MainWindow", "About Qt")) + self.actionNewWindow.setIconText(_translate("MainWindow", "Window")) + self.actionNewWindow.setShortcut(_translate("MainWindow", "Ctrl+N")) + +from PyQt5 import QAxContainer diff --git a/examples/activeqt/webbrowser/webbrowser.py b/examples/activeqt/webbrowser/webbrowser.py new file mode 100755 index 0000000..2c8afff --- /dev/null +++ b/examples/activeqt/webbrowser/webbrowser.py @@ -0,0 +1,147 @@ +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import sys + +from PyQt5.QtCore import pyqtSlot +from PyQt5.QtWidgets import (QApplication, QLabel, QLineEdit, QMainWindow, + QMessageBox, QProgressBar) + +import mainwindow_rc +from ui_mainwindow import Ui_MainWindow + + +class MainWindow(QMainWindow, Ui_MainWindow): + # Maintain the list of browser windows so that they do not get garbage + # collected. + _window_list = [] + + def __init__(self): + super(MainWindow, self).__init__() + + MainWindow._window_list.append(self) + + self.setupUi(self) + + # Qt Designer (at least to v4.2.1) can't handle arbitrary widgets in a + # QToolBar - even though uic can, and they are in the original .ui + # file. Therefore we manually add the problematic widgets. + self.lblAddress = QLabel("Address", self.tbAddress) + self.tbAddress.insertWidget(self.actionGo, self.lblAddress) + self.addressEdit = QLineEdit(self.tbAddress) + self.tbAddress.insertWidget(self.actionGo, self.addressEdit) + + self.addressEdit.returnPressed.connect(self.actionGo.trigger) + self.actionBack.triggered.connect(self.WebBrowser.GoBack) + self.actionForward.triggered.connect(self.WebBrowser.GoForward) + self.actionStop.triggered.connect(self.WebBrowser.Stop) + self.actionRefresh.triggered.connect(self.WebBrowser.Refresh) + self.actionHome.triggered.connect(self.WebBrowser.GoHome) + self.actionSearch.triggered.connect(self.WebBrowser.GoSearch) + + self.pb = QProgressBar(self.statusBar()) + self.pb.setTextVisible(False) + self.pb.hide() + self.statusBar().addPermanentWidget(self.pb) + + self.WebBrowser.dynamicCall('GoHome()') + + def closeEvent(self, e): + MainWindow._window_list.remove(self) + e.accept() + + def on_WebBrowser_TitleChange(self, title): + self.setWindowTitle("Qt WebBrowser - " + title) + + def on_WebBrowser_ProgressChange(self, a, b): + if a <= 0 or b <= 0: + self.pb.hide() + return + + self.pb.show() + self.pb.setRange(0, b) + self.pb.setValue(a) + + def on_WebBrowser_CommandStateChange(self, cmd, on): + if cmd == 1: + self.actionForward.setEnabled(on) + elif cmd == 2: + self.actionBack.setEnabled(on) + + def on_WebBrowser_BeforeNavigate(self): + self.actionStop.setEnabled(True) + + def on_WebBrowser_NavigateComplete(self, _): + self.actionStop.setEnabled(False) + + @pyqtSlot() + def on_actionGo_triggered(self): + self.WebBrowser.dynamicCall('Navigate(const QString&)', + self.addressEdit.text()) + + @pyqtSlot() + def on_actionNewWindow_triggered(self): + window = MainWindow() + window.show() + if self.addressEdit.text().isEmpty(): + return; + + window.addressEdit.setText(self.addressEdit.text()) + window.actionStop.setEnabled(True) + window.on_actionGo_triggered() + + @pyqtSlot() + def on_actionAbout_triggered(self): + QMessageBox.about(self, "About WebBrowser", + "This Example has been created using the ActiveQt integration into Qt Designer.\n" + "It demonstrates the use of QAxWidget to embed the Internet Explorer ActiveX\n" + "control into a Qt application.") + + @pyqtSlot() + def on_actionAboutQt_triggered(self): + QMessageBox.aboutQt(self, "About Qt") + + +if __name__ == "__main__": + a = QApplication(sys.argv) + w = MainWindow() + w.show() + sys.exit(a.exec_()) diff --git a/examples/animation/README b/examples/animation/README new file mode 100644 index 0000000..efac411 --- /dev/null +++ b/examples/animation/README @@ -0,0 +1,24 @@ +The animation framework aims to provide an easy way for creating animated and +smooth GUI's. By animating PyQt properties, the framework provides great +freedom for animating widgets and other QObjects. The framework can also be +used with the Graphics View framework. + +The example launcher provided with PyQt can be used to explore each of the +examples in this directory. + +Documentation for these examples can be found via the Tutorial and Examples +link in the main Qt documentation. + + +Finding the PyQt Examples and Demos launcher +============================================ + +On Windows: + +The launcher can be accessed via the Windows Start menu. Select the menu +entry entitled "Examples and Demos" entry in the submenu containing PyQt5. + +On all platforms: + +The source code for the launcher can be found in the examples/demos/qtdemo +directory in the PyQt package. diff --git a/examples/animation/animatedtiles/animatedtiles.py b/examples/animation/animatedtiles/animatedtiles.py new file mode 100755 index 0000000..ef3bffb --- /dev/null +++ b/examples/animation/animatedtiles/animatedtiles.py @@ -0,0 +1,263 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (pyqtProperty, pyqtSignal, QEasingCurve, QObject, + QParallelAnimationGroup, QPointF, QPropertyAnimation, qrand, QRectF, + QState, QStateMachine, Qt, QTimer) +from PyQt5.QtGui import (QBrush, QLinearGradient, QPainter, QPainterPath, + QPixmap) +from PyQt5.QtWidgets import (QApplication, QGraphicsItem, QGraphicsPixmapItem, + QGraphicsRectItem, QGraphicsScene, QGraphicsView, QGraphicsWidget, + QStyle) + +import animatedtiles_rc + + +# PyQt doesn't support deriving from more than one wrapped class so we use +# composition and delegate the property. +class Pixmap(QObject): + def __init__(self, pix): + super(Pixmap, self).__init__() + + self.pixmap_item = QGraphicsPixmapItem(pix) + self.pixmap_item.setCacheMode(QGraphicsItem.DeviceCoordinateCache) + + def _set_pos(self, pos): + self.pixmap_item.setPos(pos) + + pos = pyqtProperty(QPointF, fset=_set_pos) + + +class Button(QGraphicsWidget): + pressed = pyqtSignal() + + def __init__(self, pixmap, parent=None): + super(Button, self).__init__(parent) + + self._pix = pixmap + + self.setAcceptHoverEvents(True) + self.setCacheMode(QGraphicsItem.DeviceCoordinateCache) + + def boundingRect(self): + return QRectF(-65, -65, 130, 130) + + def shape(self): + path = QPainterPath() + path.addEllipse(self.boundingRect()) + + return path + + def paint(self, painter, option, widget): + down = option.state & QStyle.State_Sunken + r = self.boundingRect() + + grad = QLinearGradient(r.topLeft(), r.bottomRight()) + if option.state & QStyle.State_MouseOver: + color_0 = Qt.white + else: + color_0 = Qt.lightGray + + color_1 = Qt.darkGray + + if down: + color_0, color_1 = color_1, color_0 + + grad.setColorAt(0, color_0) + grad.setColorAt(1, color_1) + + painter.setPen(Qt.darkGray) + painter.setBrush(grad) + painter.drawEllipse(r) + + color_0 = Qt.darkGray + color_1 = Qt.lightGray + + if down: + color_0, color_1 = color_1, color_0 + + grad.setColorAt(0, color_0) + grad.setColorAt(1, color_1) + + painter.setPen(Qt.NoPen) + painter.setBrush(grad) + + if down: + painter.translate(2, 2) + + painter.drawEllipse(r.adjusted(5, 5, -5, -5)) + painter.drawPixmap(-self._pix.width() / 2, -self._pix.height() / 2, + self._pix) + + def mousePressEvent(self, ev): + self.pressed.emit() + self.update() + + def mouseReleaseEvent(self, ev): + self.update() + + +class View(QGraphicsView): + def resizeEvent(self, event): + super(View, self).resizeEvent(event) + self.fitInView(self.sceneRect(), Qt.KeepAspectRatio) + + +if __name__ == '__main__': + + import sys + import math + + app = QApplication(sys.argv) + + kineticPix = QPixmap(':/images/kinetic.png') + bgPix = QPixmap(':/images/Time-For-Lunch-2.jpg') + + scene = QGraphicsScene(-350, -350, 700, 700) + + items = [] + for i in range(64): + item = Pixmap(kineticPix) + item.pixmap_item.setOffset(-kineticPix.width() / 2, + -kineticPix.height() / 2) + item.pixmap_item.setZValue(i) + items.append(item) + scene.addItem(item.pixmap_item) + + # Buttons. + buttonParent = QGraphicsRectItem() + ellipseButton = Button(QPixmap(':/images/ellipse.png'), buttonParent) + figure8Button = Button(QPixmap(':/images/figure8.png'), buttonParent) + randomButton = Button(QPixmap(':/images/random.png'), buttonParent) + tiledButton = Button(QPixmap(':/images/tile.png'), buttonParent) + centeredButton = Button(QPixmap(':/images/centered.png'), buttonParent) + + ellipseButton.setPos(-100, -100) + figure8Button.setPos(100, -100) + randomButton.setPos(0, 0) + tiledButton.setPos(-100, 100) + centeredButton.setPos(100, 100) + + scene.addItem(buttonParent) + buttonParent.setScale(0.75) + buttonParent.setPos(200, 200) + buttonParent.setZValue(65) + + # States. + rootState = QState() + ellipseState = QState(rootState) + figure8State = QState(rootState) + randomState = QState(rootState) + tiledState = QState(rootState) + centeredState = QState(rootState) + + # Values. + for i, item in enumerate(items): + # Ellipse. + ellipseState.assignProperty(item, 'pos', + QPointF(math.cos((i / 63.0) * 6.28) * 250, + math.sin((i / 63.0) * 6.28) * 250)) + + # Figure 8. + figure8State.assignProperty(item, 'pos', + QPointF(math.sin((i / 63.0) * 6.28) * 250, + math.sin(((i * 2)/63.0) * 6.28) * 250)) + + # Random. + randomState.assignProperty(item, 'pos', + QPointF(-250 + qrand() % 500, -250 + qrand() % 500)) + + # Tiled. + tiledState.assignProperty(item, 'pos', + QPointF(((i % 8) - 4) * kineticPix.width() + kineticPix.width() / 2, + ((i // 8) - 4) * kineticPix.height() + kineticPix.height() / 2)) + + # Centered. + centeredState.assignProperty(item, 'pos', QPointF()) + + # Ui. + view = View(scene) + view.setWindowTitle("Animated Tiles") + view.setViewportUpdateMode(QGraphicsView.BoundingRectViewportUpdate) + view.setBackgroundBrush(QBrush(bgPix)) + view.setCacheMode(QGraphicsView.CacheBackground) + view.setRenderHints(QPainter.Antialiasing | QPainter.SmoothPixmapTransform) + view.show() + + states = QStateMachine() + states.addState(rootState) + states.setInitialState(rootState) + rootState.setInitialState(centeredState) + + group = QParallelAnimationGroup() + for i, item in enumerate(items): + anim = QPropertyAnimation(item, b'pos') + anim.setDuration(750 + i * 25) + anim.setEasingCurve(QEasingCurve.InOutBack) + group.addAnimation(anim) + + trans = rootState.addTransition(ellipseButton.pressed, ellipseState) + trans.addAnimation(group) + + trans = rootState.addTransition(figure8Button.pressed, figure8State) + trans.addAnimation(group) + + trans = rootState.addTransition(randomButton.pressed, randomState) + trans.addAnimation(group) + + trans = rootState.addTransition(tiledButton.pressed, tiledState) + trans.addAnimation(group) + + trans = rootState.addTransition(centeredButton.pressed, centeredState) + trans.addAnimation(group) + + timer = QTimer() + timer.start(125) + timer.setSingleShot(True) + trans = rootState.addTransition(timer.timeout, ellipseState) + trans.addAnimation(group) + + states.start() + + sys.exit(app.exec_()) diff --git a/examples/animation/animatedtiles/animatedtiles.qrc b/examples/animation/animatedtiles/animatedtiles.qrc new file mode 100644 index 0000000..c43a979 --- /dev/null +++ b/examples/animation/animatedtiles/animatedtiles.qrc @@ -0,0 +1,11 @@ + + + images/Time-For-Lunch-2.jpg + images/centered.png + images/ellipse.png + images/figure8.png + images/kinetic.png + images/random.png + images/tile.png + + diff --git a/examples/animation/animatedtiles/animatedtiles_rc.py b/examples/animation/animatedtiles/animatedtiles_rc.py new file mode 100644 index 0000000..aba415e --- /dev/null +++ b/examples/animation/animatedtiles/animatedtiles_rc.py @@ -0,0 +1,6103 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Thu May 2 15:49:03 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x36\xe2\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x64\x00\x00\x00\x64\x08\x06\x00\x00\x00\x70\xe2\x95\x54\ +\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\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\x0e\xc4\x00\x00\x0e\xc4\x01\ +\x95\x2b\x0e\x1b\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x03\x03\ +\x0e\x1c\x24\x7c\x1a\xa6\xff\x00\x00\x20\x00\x49\x44\x41\x54\x78\ +\xda\xed\x9d\x77\x98\x9d\x65\x9d\xf7\x3f\xf7\x53\x4e\x9f\x99\x33\ +\x33\x99\x4c\x66\x12\x32\xa9\xa4\x03\x91\x90\x10\x6a\xe8\x48\xd9\ +\x05\xa5\x88\xc8\xba\xeb\xcb\xb2\xae\x04\x51\x57\x5f\x57\x5d\x5d\ +\x76\x5d\x45\x51\x56\x50\x71\x59\x75\xa5\x59\xc0\x12\x3a\x16\x88\ +\x94\x00\x09\x29\xa4\x4d\xea\xb4\x4c\xa6\xcf\x9c\x39\xbd\x3d\xf5\ +\x7e\xff\x38\xf3\x3c\x99\x41\x94\x34\x7d\xdf\xeb\xbd\xb8\xaf\x2b\ +\x57\x32\xc9\xc9\x79\xca\xf7\xfe\xb5\xef\xaf\xdc\xf0\xee\x7a\x77\ +\xbd\xbb\xde\x5d\xef\xae\x77\xd7\xbb\xeb\xdd\xf5\xee\x7a\x77\xfd\ +\x7f\xbf\xc4\xb1\xfc\xe7\xba\xba\xba\xab\x0c\xc3\x08\x4e\x99\x32\ +\xe5\x73\x2b\x57\xae\x3c\x51\x51\x14\xb6\x6d\xdb\x46\x6d\x6d\xed\ +\xa1\x0b\xb8\x02\x09\x20\xe4\x1f\x5c\x4d\x55\xd5\x94\xa2\x28\xf9\ +\x72\xb9\xac\xbf\xfa\xea\xab\xb3\xfe\x6f\xbf\x8c\xda\xda\xda\x9f\ +\x5d\x77\xdd\x75\x57\x97\xcb\x65\x17\x40\x41\xe0\x48\x89\xf8\x23\ +\x6f\xc9\x71\x1c\x02\x81\x00\xaf\xbf\xfe\xba\xb3\x60\xc1\x82\xc2\ +\xc0\xc0\x40\x6c\xcb\x96\x2d\xd3\x2d\xcb\x4a\x1e\xed\x3d\x68\xc7\ +\xf2\x00\x8b\x16\x2d\xfa\xe1\xcc\x99\x33\xeb\x37\x6f\xde\x4c\xa9\ +\x54\xc2\xb6\x6d\xea\xeb\xeb\x69\x68\x68\x40\x08\x41\xbf\x95\x62\ +\xda\x05\x45\xaa\xa2\x3a\x4e\x3a\x88\x93\xd1\x71\x73\x3a\x76\x4a\ +\x43\x16\x35\x80\xb0\x94\xf2\x0f\xbe\x77\xda\xb4\x69\xa2\xb7\xb7\ +\x57\xfe\x25\x40\xa8\xaa\xaa\xba\x60\xc5\x8a\x15\x6b\x74\x5d\x37\ +\x1d\xc7\xa9\xe9\xef\xed\xd3\x6d\x0b\x84\x22\x31\x30\x09\xc5\x04\ +\xb2\xa0\x4d\xd8\x4c\x42\x08\xf6\xee\xdd\xcb\xd2\xa5\x4b\xbd\x8d\ +\x85\xa6\x69\xb1\x58\x2c\x86\xeb\xba\xa7\x85\x42\xa1\x6c\x6d\x6d\ +\xed\xae\x81\x81\x81\xec\x9f\x1d\x90\x45\x8b\x16\xb1\x77\xef\xde\ +\x90\xe3\x38\x28\x8a\xe2\x94\x4a\x25\x5c\xd7\xc5\x34\x4d\x6c\xdb\ +\xc6\xb2\x2c\xca\xe5\x32\x42\x08\x8a\xdd\x09\xba\xba\xc3\x48\x69\ +\x22\x30\x91\xaa\x8b\x40\x80\xa8\x3c\xf0\x38\x19\x95\x67\x9c\x71\ +\x86\x04\xc8\x66\xb3\xb4\xb6\xb6\x8a\xbf\x94\x54\x94\xcb\xe5\xe6\ +\xc9\x93\x27\x57\x9b\xa6\x89\x82\xe0\x60\xb8\x87\x85\x17\x2a\xd8\ +\xc3\x41\xec\x44\x10\x67\x34\x88\x8c\x0a\xa4\xa9\x20\x2d\xa5\xf2\ +\xd2\x34\x0d\x55\x55\x31\x4d\x13\x45\x51\x70\x5d\x17\xc3\x30\x30\ +\x4d\x53\x5e\x75\xd5\x55\xbf\x11\x42\xf0\xda\x6b\xaf\x5d\x00\xfc\ +\xfe\xcf\x0e\x48\x47\x47\xc7\x9c\xd3\x4e\x3b\xad\xad\xb6\xb6\x96\ +\x42\xa1\x80\x69\x9a\x13\x00\xf1\x6e\x4e\x51\x14\xa6\x4c\x6d\x22\ +\x1c\x0e\xa3\x08\x41\xab\x71\x80\xe5\x1f\x82\x40\x40\xc1\x1e\xd5\ +\xb1\x7a\xa3\x98\x83\x01\x9c\xe1\x20\x42\xa9\x28\x05\x29\x25\xc1\ +\x60\xf0\x2f\xab\xb3\x85\xf0\x37\x92\x86\x8a\x3b\x3f\x43\x20\x5e\ +\x43\x20\x5e\x82\x13\x4b\x13\x3e\x3b\xf4\xe8\x24\xdc\xa2\x8a\xeb\ +\xba\x48\x29\x31\x0c\x03\x21\x04\x52\x4a\x2c\xcb\xc2\x75\x5d\x61\ +\x18\x06\x9a\xa6\x01\xb8\x7f\x11\x95\x55\x2e\x97\x1b\x1a\x1a\x1a\ +\x08\x85\x42\xe4\xf3\x79\x0c\xc3\xf0\x6f\xce\x71\x1c\x1c\xc7\xf1\ +\x6f\x34\x10\x08\x54\xc0\x11\x82\x5e\x7b\x84\xf3\x62\x4d\xb8\x46\ +\x90\x25\x4b\x4e\x61\xe7\xe4\x57\x89\x08\x89\xa2\xe8\xa4\x5f\xae\ +\xa2\xb0\x27\x8c\x94\x12\xd7\x75\xff\xec\x20\x44\xa3\xd1\xb3\xae\ +\xb9\xe6\x9a\x75\xa5\x52\xa9\xf2\x42\x5d\x29\x43\xf5\x42\xb8\x29\ +\x9d\x19\xbb\x4e\x61\x74\x97\xac\x48\xf0\x5b\xe4\xb4\x6d\xef\x2e\ +\x66\xcc\x98\xe1\x03\x32\x5e\x42\xca\xe5\xb2\xbf\x31\xa5\x94\x94\ +\xcb\xe5\x8f\x57\x55\x55\x5d\x57\x55\x55\xf5\x40\x7f\x7f\xff\xa6\ +\x3f\xab\x0d\xb1\x6d\x1b\xc3\x30\x7c\x69\xf0\x6e\xc4\x71\x1c\x7f\ +\xb7\x09\x21\x50\x55\x15\xcb\xb2\x90\xae\x4b\x7d\x3a\xc4\xc1\xa7\ +\x15\x4e\x08\x2e\x26\x57\x3f\x05\x3b\x31\x17\xac\x30\x49\x3a\x29\ +\x0c\x98\x38\x79\xc7\x07\xe4\xec\xb3\xcf\xfe\x1f\x29\x65\x20\x99\ +\x4c\x86\x7b\x7b\x7b\xff\x36\x9b\xcd\xe6\x8f\x27\x20\x52\xca\xb0\ +\xaa\xaa\x15\x89\x96\x92\x5d\x93\x77\x8a\xf3\xaf\xac\xc3\x95\x36\ +\x76\x56\x43\x64\xc3\xd8\x59\x0d\x27\xab\x51\xde\x1f\x41\x3a\xc2\ +\x97\xa6\x72\xb9\x8c\xa2\x54\x54\x97\x07\x88\x27\x21\x8e\xe3\x54\ +\x9e\x57\x4a\xb9\x6a\xd5\xaa\xab\x9b\x9b\x9b\x79\xf0\xc1\x07\xd7\ +\x03\x7f\x1e\x40\xa6\x4d\x9b\xb6\xb0\x54\x2a\xcd\xb7\x6d\x1b\x29\ +\x25\x8e\xe3\x4c\x50\x59\x8e\xe3\x00\xf8\x2a\x4b\xd3\x34\xff\x33\ +\x0b\x1b\x66\x13\x4d\x55\x91\x24\x41\x77\x7f\x37\xf1\xf7\x14\xd0\ +\xcc\x00\xd1\x44\x9c\x48\xbd\x86\xac\x11\x48\x43\x01\x57\x80\xe0\ +\x23\x00\xe1\x70\x98\xdd\xbb\x77\x7f\x14\x38\x26\x40\x9a\x9a\x9a\ +\x18\x18\x18\x18\x0f\x88\x34\x4d\x13\xd3\x34\x31\x5d\x9b\x58\xb5\ +\x0e\xb6\xc2\xf2\xc9\xef\xa7\xaa\x25\xc4\x4b\x9d\xbf\x62\xfa\xbc\ +\x26\x86\x8c\x2e\xf2\x1d\x2a\x4e\xa9\x02\x80\xf7\x9c\xe3\xed\x86\ +\xf7\x67\x4f\x32\xc6\xde\x87\xc8\x66\xb3\x44\xa3\x51\x14\x45\x91\ +\x7f\x36\x95\x55\x5b\x5b\xbb\x66\xd9\xb2\x65\xf3\xd2\xe9\xb4\x6f\ +\x2f\x1c\xa7\xb2\xb3\x3d\x2f\x2b\x18\x0c\x32\x66\xf0\x09\x06\x83\ +\xb8\xae\x8b\x65\x59\xbe\xb1\x57\x51\xd8\x17\xee\xe0\xc2\x05\xd5\ +\x40\xf1\x2d\x0a\x5d\x92\x5e\x57\x43\xb9\x2d\x02\x80\x65\x59\xc7\ +\x45\x22\x06\x06\x06\x68\x6a\x6a\x9a\x04\x2c\x01\x1c\xc3\x30\x4e\ +\x4e\x24\x12\x64\xb3\x59\x6c\x5c\xec\x11\x9b\x9d\xcf\x17\xb8\xf2\ +\x7d\xf3\x79\xfa\xd5\x35\xcc\x6b\xbe\x82\xf7\xd4\xaf\xe4\xbf\xb6\ +\x7f\x8a\x6c\x2a\x87\x2e\xc3\xbe\x9b\xeb\x01\x02\x50\x28\x14\x70\ +\x1c\x07\xd7\x75\x29\x95\x4a\x9e\xed\xc0\xf3\x1c\x3d\x4d\xf1\x67\ +\x03\x44\x4a\xa9\x14\x0a\x05\x1f\x08\xdb\xb6\xc9\xe5\x72\xd8\xb6\ +\x4d\x3e\x9f\xf7\x75\x6b\xa9\x54\x42\x51\x14\xc2\xe1\x30\xb6\x6d\ +\x63\xdb\xf6\xa1\x87\x91\x02\xc2\x15\xf1\xff\xc8\xc2\xbb\x91\x8a\ +\x4b\xda\xed\x64\xe3\xd6\x2e\x92\x55\xeb\x18\x1d\xfb\x9c\xb7\x23\ +\x8f\xd7\x2a\x95\x4a\x37\x9f\x7f\xfe\xf9\x77\xaa\xaa\x8a\x40\x90\ +\x30\x33\x4c\x3f\xbd\x1a\x77\x38\x8c\x33\xda\x82\x48\xc3\x8f\xbe\ +\xf3\x53\x14\x55\xf0\x1a\x5b\x78\x55\x6e\x26\xa0\xcd\x27\x9f\x6c\ +\x27\x1a\x55\x91\x52\x7a\xb6\xc1\x07\xa4\x58\x2c\xfa\xef\x22\x9b\ +\xcd\x12\x8b\xc5\x7c\x30\xc6\x49\x4b\x63\x2c\x16\x9b\x95\xcf\xe7\ +\x3b\xff\x1c\x80\xf8\x2f\xd8\xb2\x2c\x6c\xdb\xf6\x5f\x9e\xa6\x69\ +\x3e\x10\xaa\xaa\xfa\xde\x4b\xb1\x58\xf4\x8d\xbd\x27\x21\x58\x92\ +\xd1\x5e\x83\xa9\xef\x99\xcb\x75\x3f\x5a\xca\xcf\x3e\xb2\x81\xa6\ +\x93\xd2\xac\xed\xc9\xb2\x27\xfb\x2a\xf9\x9c\xe9\xab\x3e\xa0\xce\ +\xbb\xfe\xf4\xe9\xd3\x93\x07\x0f\x1e\x74\x8f\xd2\x6e\x44\xbd\x0d\ +\x53\x74\x4d\xb4\x73\xfa\xa9\x9d\x1f\xc1\x92\x83\x48\x1b\x44\x36\ +\x86\x9d\x51\x71\x52\x3a\xf9\x2d\xd5\xa0\x48\x1c\x69\xfb\xb6\xc2\ +\x93\x90\x54\x2a\x85\xaa\xaa\x38\x8e\xe3\xc5\x1f\x08\x21\xd0\x34\ +\x0d\x45\x51\xc8\xe5\x72\x04\x83\x41\x22\x91\x08\xa6\x69\xca\x93\ +\x4f\x3e\xf9\x9b\xaa\xaa\xde\xf1\xca\x2b\xaf\x54\xfd\x39\x00\x91\ +\x1e\x10\xde\x4e\x51\x14\x05\xdb\xb6\x99\x34\x69\x12\x37\xdd\x74\ +\x13\xdf\xf9\xce\x77\xa8\xad\xad\x65\xfa\xf4\xe9\x74\x75\x75\x91\ +\xcd\x66\x7d\x63\xed\x38\x0e\x96\x10\xa8\xdb\x5c\x8a\xf9\xa9\xdc\ +\xf4\xab\x0f\x50\x1b\x38\x95\x9b\xd6\xdd\x88\xae\xa9\xa8\x76\x08\ +\x4d\x6b\x24\x5e\xe3\xc7\x28\xf2\xca\x2b\xaf\xdc\xe7\xfd\xff\xf5\ +\xeb\xd7\xcf\x07\xf6\x1d\xad\x94\x78\x2a\xc4\x74\x4d\xe2\xe1\x00\ +\x85\x8c\xcb\x4d\x27\xdf\x81\xab\x16\x59\xb3\xf7\x5e\x26\x37\x34\ +\x32\x9c\xef\x65\xf4\xd5\x30\x4a\x40\x4e\x50\xc9\xde\x86\x54\x55\ +\xd5\x07\x24\x16\x8b\x21\x84\xf0\x37\xa1\xa2\x28\xfe\x35\x02\x81\ +\x00\x96\x65\x09\x21\x04\xe1\x70\xb8\x70\xb8\xf7\xa8\x1c\xce\x87\ +\xa6\x4c\x99\x32\x69\xca\x94\x29\x2f\xb9\xae\x3b\xcd\xb3\x05\xd9\ +\x6c\x25\x08\xbd\xea\xaa\xab\x68\x6c\x6c\xe4\x57\xbf\xfa\x15\xcd\ +\xcd\xcd\x00\xac\x5d\xbb\x96\xdb\x6f\xbf\x9d\x50\x28\x84\xa6\x69\ +\xbe\x71\x37\x0c\x83\x72\xa9\x84\xd0\x04\xa1\x58\x90\xda\xda\x5a\ +\xba\xd5\x21\x16\x7c\xbc\xcc\xac\x8f\x16\x69\xb9\x75\x94\xc9\xd7\ +\x24\x89\x9f\x6e\x10\x69\x16\x04\x83\x01\x11\x0c\x06\x09\x06\x83\ +\xd4\xd7\xd7\xe3\x38\xce\x31\xe9\x30\xc3\x30\xbc\x00\x0e\x45\x28\ +\x9c\x14\x7e\x3f\xa1\x6a\x9b\xe7\xdf\x78\x9d\x45\xda\xf5\xac\x3e\ +\xe3\x6e\x6a\x42\xf5\x94\xcb\xe5\xca\xbd\x96\xcb\x98\xa6\x49\x36\ +\x9b\xf5\x37\x56\x20\x10\xf0\xa5\xe1\xb2\xcb\x2e\x23\x12\x89\x50\ +\x5f\x5f\xcf\xdc\xb9\x73\x7d\x60\x34\x4d\xf3\xb5\x87\xe7\x7d\x1d\ +\x57\x40\x92\xc9\x64\xed\x05\x17\x5c\x70\x6e\x28\x14\x8a\x58\x96\ +\xe5\x5f\xb8\x5c\x2e\xf3\xe1\x0f\x7f\x18\xc3\x30\xb8\xff\xfe\xfb\ +\x59\xbe\x7c\xb9\xaf\x3b\xbd\x1b\x5f\xb0\x60\x01\xb7\xdd\x76\xdb\ +\x04\xe3\xee\xc5\x2d\xa6\x61\xe2\x04\x4c\x34\x4d\x25\x9b\x74\xb8\ +\x6a\xe1\xc7\xa8\x9b\x1a\x23\xb2\x38\x4b\xed\x15\xc3\xe8\x0b\x52\ +\x18\xa5\x31\x6f\xc8\x34\x8f\xd8\x40\x36\x34\x34\x5c\x1e\x8d\x46\ +\x6f\x8a\xc5\x62\x37\x4a\x29\x97\x0c\x0d\x0d\x31\x38\x38\x48\x62\ +\x68\x84\x81\x37\xb3\xf4\xed\x18\xe0\xb9\x35\x6b\xd9\xf1\xfa\x0e\ +\xf6\x6d\xda\xc3\xfd\x0f\x7c\x97\x9d\x2f\x76\x91\x2f\x64\x7d\xe0\ +\x3c\x0f\xca\xf3\xa2\xce\x3e\xfb\x6c\xaa\xab\xab\x91\x52\x92\x48\ +\x24\x7c\xa3\x9e\x48\x24\x18\x93\x06\x5f\x75\x65\xb3\x59\x5f\x5d\ +\x1f\x57\xa3\xee\xf9\xdf\xde\xc5\x15\x45\xe1\xfc\xf3\xcf\xa7\xb5\ +\xb5\x95\xc7\x1f\x7f\x9c\xba\xba\x3a\x9e\x7a\xea\x29\x9e\x79\xe6\ +\x19\x42\xa1\x10\x57\x5d\x75\x15\xa7\x9f\x7e\x3a\xa9\x54\x8a\xfb\ +\xef\xbf\x9f\xbe\xbe\x3e\x0c\xc3\x20\x99\x4c\xfa\xd1\xb8\x69\x9a\ +\x20\x41\x6a\x92\x72\xc9\xe1\xae\xf7\x3e\xc5\xa3\xad\xdf\xe0\xa6\ +\xf9\x5f\x65\xed\x8e\x17\x50\x1b\xfa\x78\xcd\xde\x56\xb1\x23\x4a\ +\x65\x67\x1e\xe9\x9a\x3c\x79\xf2\xb7\x97\x2d\x5b\x36\xcb\xb2\x2c\ +\x54\xa1\x50\xac\x4e\xcb\x58\xb5\x26\xdc\xac\x8e\x9d\xd4\xe9\xdb\ +\x36\x0c\x02\xea\xb5\x69\x8c\xa6\x73\x24\x64\x96\xa6\xc0\x0a\xf6\ +\x8f\xbe\x44\x53\xa0\xc9\x7f\x91\x9e\x4d\xb4\x2c\x8b\x48\x24\xe2\ +\x7b\x91\x1b\x37\x6e\x24\x16\x8b\x91\x48\x24\xa8\xae\xae\x46\x08\ +\xc1\xb4\x69\xd3\x18\x1e\x1e\x26\x9f\xcf\xfb\x31\xdb\x91\x48\xb6\ +\x72\xb8\x80\x78\x60\x14\x8b\x45\xa6\x4d\x9b\xc6\xbf\xfc\xcb\xbf\ +\xa0\x69\x1a\xcf\x3d\xf7\x1c\x7d\x7d\x7d\xc4\x62\x31\x82\xc1\xa0\ +\xef\xee\x6e\xdb\xb6\x0d\x4d\xd3\x26\xf8\xff\x9e\xcd\x39\x24\x21\ +\x95\x28\x3f\xa0\x46\x98\xd6\x38\x85\x84\xd8\x85\xb4\x42\x48\x09\ +\x8e\xb4\x70\x1d\x07\xc3\x34\x7c\xd1\xb7\xde\xe2\x07\x37\x35\x35\ +\xbd\xd3\x7d\x3b\xe5\x72\x99\x72\xb9\xcc\xee\x6c\x17\x91\x73\x07\ +\x45\xe8\xac\x7e\x42\x97\x75\x50\xf5\xe1\x7d\xd4\x7c\xf0\x00\xa1\ +\x73\xfb\x11\x33\x93\x95\xeb\x58\x26\x96\x7b\x28\x9e\xf0\x24\xbd\ +\xbe\xbe\x1e\x4d\xd3\xd0\x75\x9d\x97\x5e\x7a\xc9\xb7\x29\xba\xae\ +\xfb\x52\x14\x0e\x87\x31\x0c\xc3\x07\xcf\xb3\x35\x63\x80\x34\xad\ +\x5c\xb9\x52\xd6\xd7\xd7\xcf\x3f\x6e\x46\xdd\x8b\x3b\x4c\xd3\xa4\ +\x54\x2a\x31\x30\x30\x40\x24\x12\x61\x68\x68\x08\xc7\x71\xe8\xef\ +\xef\xf7\xe9\xe8\xd1\xd1\xd1\x0a\x97\x35\x65\x0a\x9f\xfd\xec\x67\ +\x71\x1c\x87\x60\x30\x88\xaa\x1e\x72\x1f\xbd\x77\xeb\xb4\x97\xd8\ +\xf0\xef\x2a\xa7\xfe\xdb\xa9\x00\x3c\xcf\x87\xde\xf6\xfa\xd9\x6c\ +\x96\xf9\xf3\xe7\x77\x79\xee\xf0\xd0\xd0\xd0\xbf\x0d\x0c\x0c\xdc\ +\xf1\x4e\x5e\xa1\x07\xa6\x29\x2d\x14\x14\xc8\x4c\xe6\x8e\xcb\xbf\ +\x47\x7b\x7a\x33\xdf\x7b\xf9\xdf\x58\xbc\x64\x0e\xdd\x75\x9d\x64\ +\x77\x69\xbe\x34\x18\x86\x41\x2a\x95\xf2\x8d\xf3\xf5\xd7\x5f\xcf\ +\x9a\x35\x6b\xc8\x64\x32\xd4\xd5\x55\x9c\xbe\xd1\xd1\x51\xff\x1a\ +\xf5\xf5\xf5\x98\xa6\x49\x38\x1c\x66\x68\x68\x08\x55\x55\x89\xc7\ +\xe3\xe8\xba\x4e\x2e\x97\x03\x60\xee\xdc\xb9\xec\xda\xb5\xcb\x39\ +\x2e\x80\x58\x96\x55\xf0\x5e\xa0\xa2\x28\x14\x8b\x45\x3e\xf3\x99\ +\xcf\x50\x5d\x5d\xed\xe7\x3e\xc6\x7b\x22\xde\x9f\x93\xc9\x24\x81\ +\x40\xc0\x07\xe4\x87\x3f\xfc\x21\x86\x61\xf0\xf1\x8f\x7f\xdc\xe7\ +\xbb\x54\x54\x96\x2c\x59\x52\x51\x89\xd2\x21\x39\xf7\x00\x73\x16\ +\x46\x70\x72\x2a\xd6\x70\x08\x7b\x28\x88\x35\x18\x44\x48\x05\xa1\ +\xbb\xfe\x35\x86\x86\x86\x0e\xdb\x90\xdb\x96\x8d\xab\x3a\x08\x45\ +\x70\xdd\x82\x4f\xb3\xbe\xf7\x49\x9c\x91\x69\x5c\x37\xf7\x4b\x9c\ +\x7f\xea\x99\xdc\xfe\xe8\xe5\xbe\x6b\xab\xaa\xaa\x1f\x03\x79\x6c\ +\xc3\x96\x2d\x5b\x2a\xe4\xe3\x98\x73\x32\x69\xd2\x24\xa4\x94\x08\ +\x21\x28\x95\x4a\xfe\xc6\x54\x55\x95\x50\x28\x44\xb1\x58\x24\x12\ +\x89\xf8\xa1\x80\x65\x59\xfe\xf7\x1f\x33\x20\xb5\xb5\xb5\xb7\x2c\ +\x5d\xba\xf4\x2e\x8f\x2e\x39\xe1\x84\x13\x48\xa5\x52\x04\x02\x01\ +\xd2\xe9\xb4\xaf\x82\xa4\x94\x28\x8a\xe2\xb3\x9f\xde\xee\x1a\xa3\ +\x16\x5c\x65\x2c\x9a\x9a\x36\x6d\x1a\x8e\xe3\x50\x28\x14\x10\x08\ +\x6c\x69\x51\x2c\x16\x29\x97\xcb\xf4\x59\x49\x5a\xa6\x3b\xc8\x48\ +\x89\xc6\x49\xd3\x49\x4d\xed\x43\x0a\x07\xd3\x35\x51\x4a\x61\x86\ +\x1e\x99\x5c\x49\x74\x1d\x01\x45\x62\x59\x16\xb6\x65\x21\x15\x89\ +\xa2\x09\x1a\xaa\x9b\x39\x58\xfa\x3d\xc9\x24\x64\xdd\x7e\xea\x4e\ +\x30\x08\x07\x23\x5e\xcc\x33\x41\xe5\x78\x2a\xb6\xa7\xa7\x87\x50\ +\x28\x84\xeb\xba\xac\x5e\xbd\x9a\xad\x5b\xb7\xd2\xd9\xd9\xe9\x7b\ +\x52\xaa\x5a\x61\x80\x6b\x6a\x6a\xc8\x66\xb3\xa8\xaa\x4a\x2c\x16\ +\xf3\xd5\x9e\x17\xbb\x1d\x8e\x53\xf2\x8e\x80\x98\xa6\x39\xb5\xa9\ +\xa9\xa9\xa6\xa7\xa7\x07\xd3\x34\xb9\xe7\x9e\x7b\xd8\xb3\x67\x0f\ +\x37\xde\x78\x23\x3f\xf8\xc1\x0f\x48\x24\x12\xd4\xd6\xd6\x12\x0c\ +\x06\x79\xe9\xa5\x97\x58\xb8\x70\x21\xbb\x76\xed\xa2\xa7\xa7\x87\ +\xb9\x73\xe7\xb2\x6d\xdb\x36\xf6\xef\xdf\x7f\xfb\x82\x05\x0b\xbe\ +\xf3\xec\xb3\xcf\x72\xd1\x45\x17\x51\x2e\x97\x7d\x95\x25\x74\xc5\ +\xf7\xbe\x5c\xc7\x45\x55\x04\xa1\xec\x7c\x3e\x71\xd1\x9d\x68\x32\ +\xca\x17\x9e\xf8\x08\x1f\x3e\xfb\x46\x7e\xb6\xfd\x6e\x2c\xcb\xac\ +\xe4\x52\xfe\xc8\x83\x0d\x0c\x0c\x30\x6b\xd6\xac\x3b\xa3\xd1\xe8\ +\x54\x00\xe9\xca\x29\xc9\xd1\x14\xd2\x75\x41\xb7\xe9\xfc\xa5\xc2\ +\x77\x5f\xf8\x16\x69\xf7\x20\x46\x36\x88\x4d\x89\xee\x75\x9d\x74\ +\x0d\xe6\x30\xcd\xb0\x0f\x48\x38\x1c\x66\xc6\x8c\x19\x0c\x0e\x0e\ +\x62\x9a\x66\xaa\x54\x2a\xf5\x38\x8e\xb3\x44\x51\x14\x71\xd7\x5d\ +\x77\x49\xd7\x75\x85\xb7\x01\x3d\x1b\x0b\xf8\x86\x1c\x20\x95\x4a\ +\x11\x8b\xc5\xfc\x4d\x7a\xb8\x34\x8a\x76\x38\x06\xdd\x34\x4d\x0a\ +\x85\x02\xaa\xaa\xf2\xa3\x1f\xfd\x88\x6f\x7f\xfb\xdb\xfc\xf4\xa7\ +\x3f\x65\xfd\xfa\xf5\xa8\xaa\x8a\xae\xeb\x68\x9a\x46\x2a\x95\x62\ +\xef\xde\xbd\xe4\xf3\x79\xca\xe5\x32\x89\x44\xc2\x53\x5f\x21\x55\ +\x55\xd9\xb0\x61\x03\xaf\xbf\xfe\xba\xef\xab\x8f\xbd\x34\xdf\xdf\ +\xb7\xb1\x71\x71\x59\xd6\x70\x19\x8f\x6c\xfb\x2a\xb3\xb4\xf3\xb9\ +\xf6\xa4\xd5\xb4\xd4\x4c\x41\xa0\x54\xd4\x9c\x22\xde\xc9\xb3\xfa\ +\xfb\xe9\xd3\xa7\xd7\x0b\x21\x28\x38\x65\x58\x38\x4c\x7d\x3c\x8c\ +\xd3\x1f\xc1\xea\x0b\x93\x19\x4d\x22\x88\x11\xaa\x98\x65\x8a\x43\ +\x92\x46\x71\x22\x1d\x66\x87\xcf\x38\x54\x57\x57\x13\x8f\xc7\x49\ +\xa5\x52\x98\xa6\xf9\xec\x9e\x3d\x7b\x6e\x8a\xc7\xe3\xd7\x5a\x96\ +\x35\xcb\xb2\xac\xaf\x5d\x70\xc1\x05\xac\x58\xb1\x82\x47\x1f\x7d\ +\xd4\xb7\xab\x5e\x10\xe9\x51\x4a\x8a\xa2\x30\x3c\x3c\x4c\x34\x1a\ +\x3d\x22\x5e\xeb\xb0\x00\xf1\xbe\xcc\x73\xf5\x4e\x3b\xed\x34\x5f\ +\x2d\x8d\xb7\x1f\x42\x08\x7a\x7b\x7b\xfd\x3f\x1f\x38\x70\xc0\xf3\ +\xbc\xd2\xfb\xf7\xef\xff\xab\xb1\xe8\x95\x50\x28\xf4\xf8\x89\x27\ +\x9e\xa8\x7e\xf1\x8b\x5f\xe4\x73\x9f\xfb\x1c\xa6\x69\x56\xf2\x29\ +\xaa\x8d\x10\x10\xd0\x22\x38\xae\x8d\x61\x9a\x64\x64\x8a\xae\x4c\ +\xe2\x10\x85\x21\xf0\x77\xe6\xdb\x2d\x8f\x85\x05\x78\x23\xbf\x9f\ +\xeb\x4f\xaf\xc1\xb2\x73\x94\x5a\x06\xa9\xd6\xc2\x08\x47\x45\x1a\ +\x2a\xc5\x3d\x51\xf2\xdb\x62\x20\x2a\x3b\x3d\x95\x4a\xf9\xd7\x28\ +\x95\x4a\xa4\x52\xa9\x09\xcf\x98\x4e\xa7\x7f\x01\x9c\xb8\x6a\xd5\ +\xaa\xaf\xdd\x79\xe7\x9d\xe8\xba\x8e\x61\x18\x74\x75\x75\xb1\x74\ +\xe9\x52\x7e\xf9\xcb\x5f\xf2\xbe\xf7\xbd\x8f\x2d\x5b\xb6\xb0\x67\ +\xcf\x1e\x2e\xbd\xf4\x52\x86\x86\x86\x58\xbb\x76\xad\xbf\xa9\x17\ +\x2c\x58\xf0\x66\x6b\x6b\xeb\xaa\x6c\x36\xbb\xe5\x98\x25\xc4\x33\ +\x70\x93\x27\x4f\x66\x68\x68\xc8\xb7\x15\xde\x4d\xbb\xae\xeb\xff\ +\xf2\x78\xac\xb1\x07\x7c\x42\xd7\xf5\xbd\xc3\xc3\xc3\xaf\x7a\xdf\ +\xd9\xd2\xd2\x22\x9f\x7b\xee\x39\x5e\x7c\xf1\x45\x96\x2f\x5f\xce\ +\x86\x0d\x1b\x2a\xbb\x2c\xe4\x32\xb4\xce\xe2\xf9\xf8\xd3\xc8\xc8\ +\x28\xfd\xca\x1b\x18\x56\x89\xaa\x1a\x9d\x83\x43\x06\x85\xa2\xed\ +\xdf\x53\x2c\x16\x3b\x77\xf1\xe2\xc5\x5f\x02\x84\x61\x18\x76\x5b\ +\x5b\xdb\x57\x3c\xbe\xc9\xf7\x8e\x85\x44\x22\x59\x20\xae\x67\xc5\ +\x7b\x4e\x21\x6d\xf6\xb3\x61\xdf\x6b\x64\x42\xfb\x29\x06\x6c\x2c\ +\xcb\x44\x22\xd1\x34\xcd\x27\x32\x5d\xd7\x95\xaa\xaa\x0a\xc7\x71\ +\x88\xc7\xe3\x24\x12\x89\xf1\xe8\x2b\x43\x43\x43\xec\xde\xbd\x9b\ +\xe6\xe6\x66\x3c\x97\x7a\xe3\xc6\x8d\x00\xbc\xf6\xda\x6b\x94\xcb\ +\x65\x74\x5d\xe7\xb5\xd7\x5e\xa3\xa1\xa1\xc1\xbf\x5f\xc3\x30\xa8\ +\xa9\xa9\x89\x59\x96\xa5\x1f\xab\x97\x25\x6d\xdb\x46\x55\x55\x1e\ +\x7e\xf8\x61\xa6\x4e\x9d\xca\x23\x8f\x3c\xc2\xce\x9d\x3b\x09\x85\ +\x42\x24\x93\x49\xa2\xd1\x28\x83\x83\x83\x04\x02\x01\x62\xb1\x18\ +\x23\x23\x23\x64\x32\x19\xd2\xe9\x34\x6d\x6d\x6d\x57\xbf\xdd\x2e\ +\x7e\xf6\xd9\x67\xa9\xad\xad\x25\x97\xcb\xf9\x34\x45\xa9\x54\xa4\ +\x2e\xb9\x08\x07\x0b\x91\xa9\xa1\xcf\x19\x22\x34\xbd\x8c\x99\x0d\ +\xd0\xc8\x3c\x26\xaf\xa8\xe4\xb5\xa5\x25\x40\x61\x95\x10\xac\x1a\ +\x8b\x69\x4a\x1e\x20\xe3\x25\x44\x00\x03\xfd\x79\xfe\xf3\x6f\x3e\ +\xce\xc7\x7f\x7d\x36\x5f\x3e\xe7\x69\x6a\xec\x79\xa8\x35\x29\xbe\ +\xb5\xe9\xab\x18\x86\x09\xa2\xc2\x59\x79\x2a\x54\xd3\x34\x31\x38\ +\x38\xd8\x39\x38\x38\xb8\x4d\x08\xe1\x06\x02\x81\xb5\x6f\xdd\xa0\ +\xab\x57\xaf\xc6\xb6\x6d\x42\xa1\xd0\x04\x35\x74\xf0\xe0\xc1\x09\ +\x3f\x1f\x38\x70\xc0\xb7\x21\x85\x42\xe1\x0f\x3e\x7f\x54\x80\x28\ +\x8a\x32\xc7\xb2\x2c\x54\x55\xa5\x54\x2a\x51\x2c\x16\x99\x3b\x77\ +\x2e\x6f\xbe\xf9\x26\x4b\x96\x2c\x61\x78\x78\x98\xda\xda\x5a\xb2\ +\xd9\x2c\xe5\x72\x99\x48\x24\xc2\x39\xe7\x9c\xc3\x33\xcf\x3c\xf3\ +\x47\x2f\xae\x69\x1a\x5f\xfa\xd2\x97\x7c\x43\xe8\xc5\x0b\x05\xa5\ +\x4c\xa9\x54\x42\xa4\x05\x42\x08\x76\xe8\xfb\x78\xef\x19\x35\xd8\ +\xd6\x78\xcf\x4a\xe2\x18\x0a\x99\x17\xea\x30\x87\x03\x80\xfc\x03\ +\xb0\x7d\x9a\x45\x07\xc7\x86\x80\xae\xa3\x29\x01\x10\x90\xc8\x0f\ +\xf2\x46\xff\x03\x48\x57\x8e\xa9\xc0\x8a\x94\x37\x34\x34\xf8\x36\ +\x40\x51\x94\x5f\x67\x32\x99\xd5\x6f\x17\x8e\x79\xae\xbc\xb7\xeb\ +\x0f\x33\xed\xed\x7f\xff\xb1\x02\x32\xbd\xb6\xb6\xf6\x46\xc3\x30\ +\xa4\xa6\x69\xe2\xee\xbb\xef\xa6\xb1\xb1\x91\xbd\x7b\xf7\xe2\xba\ +\x2e\x83\x83\x83\x18\x86\x41\x38\x1c\xa6\x50\x28\x20\xa5\x64\x74\ +\x74\x94\x5d\xbb\x76\xfd\x49\xee\xa9\x58\x2c\xe6\xa5\x94\xde\xb5\ +\x83\xe1\x70\x58\x77\x1c\x07\xdd\x52\x71\xdc\x43\x2a\x47\x09\x09\ +\x2c\xc7\x66\x45\xf4\x16\x16\xcf\x5c\xc0\x96\xe4\xe3\xe4\x92\x1a\ +\xbb\xdd\xe7\x70\xb4\x18\x96\x09\x12\x39\xc1\xa6\xb8\xae\x2b\x7d\ +\x03\x1a\x12\xc4\x27\x85\x28\x18\x65\x02\x21\x95\x9a\xaa\x5a\x4c\ +\xa5\x88\x16\xd2\x40\xa9\x00\x22\x91\xbe\xfa\x6d\x6e\x6e\x66\x68\ +\x68\x88\xb7\x2b\x4d\x02\x08\x04\x02\xed\x1d\x1d\x1d\x8d\xf3\xe7\ +\xcf\x1f\x9a\x32\x65\x0a\x37\xdc\x70\x03\x8f\x3d\xf6\x98\x6f\x7b\ +\xbc\x80\xd7\xdb\x60\x1e\xc3\xa1\xeb\xba\xcf\x8a\x1f\x2b\x20\x11\ +\x21\x04\xb9\x5c\x4e\xd4\xd7\xd7\x33\x3c\x3c\xcc\xe0\xc0\x10\x20\ +\x10\x02\x1f\xf1\x72\xb9\xec\x07\x54\xde\x36\x8e\xc5\x62\xa2\x54\ +\x2a\xbd\x6d\xf4\x2c\x84\xf0\x2b\xe9\x66\xce\x9c\xf9\xa0\xaa\xaa\ +\x1f\xbe\xfc\xf2\xcb\xfd\x00\xec\x90\x2b\x29\x49\x0d\x0a\xfe\xee\ +\xe6\x9b\xb9\xe9\x67\x4b\xf9\x97\xb3\x1f\xa3\x18\x2f\x30\xd3\x6c\ +\xe6\x27\xbf\x79\x02\xc3\x90\x9e\x0d\x08\x5d\x74\xd1\x45\x23\x80\ +\x14\x8e\xa8\xb3\x2c\x89\xa2\xc0\x22\x3b\xc2\xf0\xc3\x0a\xd7\x3f\ +\x74\x2d\x52\x09\x71\xfd\x7f\x5d\x83\x65\x5b\x04\xb5\x08\xdb\x5b\ +\x7b\xa9\x8a\xc4\x7d\x4a\xdd\x23\x3f\xff\x18\x18\xe3\xf2\x22\x32\ +\x16\x8b\xf1\xe2\x8b\x2f\xb2\x71\xe3\x46\x5a\x5a\x5a\xd8\xba\x75\ +\x2b\xe1\x70\x98\xf5\xeb\xd7\xfb\x36\x31\x12\x89\xd0\xd2\xd2\xc2\ +\xae\x5d\xbb\x18\x1d\x1d\xf5\x93\x74\xc7\xac\xb2\xa4\x94\xe8\xba\ +\xce\xbe\x7d\xfb\x90\xae\xa4\x66\xb1\x4e\x24\xac\x92\xeb\xb7\x29\ +\x0e\x39\x48\xf7\x6d\xd5\x9c\x28\x97\xcb\x9d\x8a\xa2\x7c\xf3\xed\ +\x9c\x84\xb7\xb0\x00\xfa\x07\x3e\xf0\x01\xe6\xcc\x99\xc3\x07\x3f\ +\xf8\x41\x6e\xbd\xf5\x56\x3f\xcf\x20\x10\x54\x05\xe3\xd8\xb2\x44\ +\xbc\xaa\x8a\xe6\xda\xa9\x3c\xbf\xe3\xd7\x3c\xd1\x77\x1f\xb6\xd5\ +\x88\x69\xb9\x50\xd9\xe1\xa2\xa6\xa6\x66\x92\x40\xd0\x35\x6d\x0f\ +\xa7\x5d\x14\xc6\x18\xac\xd4\x55\xd9\x83\x01\x9c\xac\x06\x96\x8e\ +\x5b\x52\x50\x75\x0d\x4d\x53\x29\xe5\x4d\x6c\x23\xe5\x25\xdd\x64\ +\x34\x1a\x15\x23\x23\x23\x84\x42\xa1\x77\xe4\xf8\x1c\xc7\xe1\x95\ +\x57\x5e\x21\x1e\x8f\xe3\xba\x2e\xfd\xfd\xfd\x7e\xa2\xca\x4b\xc8\ +\x79\xec\x6f\x5d\x5d\x1d\x03\x03\x03\x68\x9a\xe6\x05\x91\xb1\xe3\ +\x02\xc8\xec\xd9\xb3\x2b\x14\x40\xb2\x22\x9a\x51\x29\x89\xd4\xcb\ +\x09\xa5\x3b\x9e\x97\x35\xb6\xe3\x7a\x06\x06\x06\xfe\xeb\x70\xe9\ +\x8d\xb9\x73\xe7\xfa\x51\xed\x21\x75\x27\xb0\x5d\x13\x45\x68\x80\ +\xa0\x64\x15\xd1\x54\x8d\xa0\x16\xc5\x71\x5c\x4c\xd3\xf2\x83\x39\ +\xcb\xb2\x28\x38\x65\x6a\xa7\x29\x48\x5b\x25\x5a\x1f\x46\x99\x62\ +\x61\xcc\x4f\xf8\x9b\x60\xe0\xa1\x49\x48\x5b\xf1\x3d\x41\x8f\x5b\ +\x53\x55\x55\x74\x75\x75\x3d\xe0\xed\x11\x5d\xd7\x7f\xfd\xa7\xee\ +\xd7\x75\x5d\x3e\xf9\xc9\x4f\xfa\xdf\x33\x7e\xed\xdb\x77\x28\x7f\ +\xd6\xdf\xdf\xef\x7b\xa1\xf1\x78\x1c\xc7\x71\xa8\xaa\xaa\xfa\x72\ +\x3a\x9d\x7e\xe1\x98\x00\x59\xb1\x62\x05\x97\x5d\x76\x19\x67\x9f\ +\x7d\x36\xdf\xfb\xde\xf7\x68\x6d\x6d\xe5\xe4\x93\x4f\xe6\xf5\xd7\ +\x5f\x67\xee\xdc\xb9\x64\x32\x19\x5a\x5b\x5b\x09\x87\xc3\xcc\x9c\ +\x39\x93\x37\xde\x78\xe3\xb0\x29\xf2\x40\x20\xc0\x0b\x2f\xbc\xc0\ +\xde\xbd\x7b\xe9\xed\xed\xf5\x19\x54\x21\x04\x85\xd6\x1c\x43\x46\ +\x23\xff\xeb\xa5\x5b\x18\xcc\xea\x7c\xea\xb1\x4f\x60\x18\x36\x79\ +\x27\x8e\x5d\x14\x44\x22\x87\xa4\xae\xa2\x1e\x25\xca\xeb\x93\x39\ +\xf8\x86\xe0\xc1\x07\x7e\xc4\xfe\x9e\x2e\x7e\xbb\xf7\xa7\xfc\xed\ +\xaa\x8f\x72\xf7\xba\x5b\x31\x4d\x0b\x69\x1f\x02\x42\xd7\x75\x9f\ +\x4a\x1f\x19\x19\xf9\xc8\xe1\xde\x73\x3e\x9f\x27\x12\x89\x1c\x02\ +\xc3\x01\xcb\x74\xc7\xee\x05\x84\x2a\x50\xd4\x31\x6d\x30\xf6\x91\ +\xd1\xd1\x51\x5f\x3d\x1e\x8b\x84\xb8\xde\x2e\x88\xc7\xe3\x84\xc3\ +\x61\x9f\x74\x0b\x04\x02\x2c\x5d\xba\x94\xee\xee\x6e\xaa\xab\xab\ +\x7d\xa3\xa5\xeb\xfa\x3b\x5e\xf4\x2d\x2a\x2b\xa0\x28\x0a\x07\x0f\ +\x1e\xf4\x8a\x06\x64\xb9\x5c\x16\x00\xe5\x62\x91\x69\x2b\x66\x92\ +\xcb\xe5\x88\x69\x75\xa4\x67\x1c\xa0\x69\x46\x80\xaa\xb4\x8e\x93\ +\x1d\xfb\x95\xd6\x70\x73\x1a\x62\xec\x49\xc2\xe1\x30\xe9\x54\x9a\ +\xf5\x3d\xcf\xb2\xe9\xcd\x2e\x2e\x3e\xf9\x06\x1a\x63\xd3\x11\x28\ +\x95\x58\xc7\xaa\x48\xd4\xbc\x79\xf3\xfc\x6c\xe6\xe1\x12\x95\x00\ +\x35\x35\x35\x23\x1d\x1d\x1d\x4d\xa7\x9c\x72\xca\x40\x2a\x95\x42\ +\x48\x70\x67\x0b\x96\x5f\x59\x43\x7e\xc0\xa1\x38\x6c\x93\x1b\x70\ +\x28\x0e\xd9\x18\x19\x17\xcf\x24\x79\xef\xf0\x4f\xd9\xa8\x77\x04\ +\x24\x1a\x8d\x2e\x07\xd8\xb6\x6d\x1b\x89\x44\x82\xe1\xe1\x61\x8a\ +\xc5\x4a\xe9\xce\xee\xdd\xbb\xfd\xc0\xd0\x03\xcd\x75\x5d\x5e\x7e\ +\xf9\xe5\x23\x4a\x26\x25\x93\xc9\x2f\x0e\x0d\x0d\x7d\x77\xcc\x8d\ +\x9c\xbe\x60\xc1\x82\x87\x0f\x79\x23\x95\x0a\x96\x72\xb9\x4c\xca\ +\xcd\x31\x75\xae\x89\xa8\xb2\x69\x9c\xd6\x44\xd9\xcd\x51\x72\x12\ +\x28\x0a\xd8\x79\x95\xe1\x9f\x4e\xf6\x1f\x5c\x4a\x89\x57\xb2\x9e\ +\x29\x8d\x92\x35\x12\x08\x45\x4c\x00\x24\x93\xc9\x70\xf5\xd5\x57\ +\xf3\xf4\xd3\x4f\xfb\x31\xc8\xe1\xac\x4c\x26\x83\xae\xeb\x52\xd3\ +\x34\x9a\x9a\x9a\x2a\x36\xa2\x7f\x80\x8e\x07\x15\x2c\xc7\x45\x28\ +\x3a\xae\xab\xa2\x11\x40\x09\xbb\x7e\x4e\xc4\x53\xe5\xc7\x04\x88\ +\xae\xeb\x7f\xe3\x65\xf8\xfa\xfa\xfa\xfc\xa4\xcc\xf8\xdf\x8f\x75\ +\x15\x0a\x85\xbd\xc0\xde\xb1\x1f\xe7\x7b\x8c\x80\x10\x02\xa5\x50\ +\x79\x89\xa6\x61\x62\x2b\x0e\xaa\xaa\xd0\xa2\xae\xe2\xef\x56\xde\ +\x4a\x4d\xa0\x9e\x0f\x7c\xef\x7c\x6e\xbb\xea\x56\x7e\xb1\xfe\xfb\ +\x13\xe8\x73\xdb\xb1\x59\x30\xe9\x34\x92\x53\x54\x06\x72\xdd\x04\ +\xd5\xd3\x51\x50\x30\xcd\x32\xae\x55\x89\x83\x32\x99\x0c\x4f\x3f\ +\xfd\xb4\xef\x96\x1e\xe9\x52\x14\x85\x07\x1e\x78\x80\xe1\xe1\x61\ +\x84\x10\x3c\xfe\xf8\xe3\xc4\xe3\x71\x3a\x3b\x3b\x69\x6e\x6e\x66\ +\xcb\x96\x2d\xcc\x9a\x35\x0b\xc7\x71\xd8\xb7\x6f\x1f\xcd\xcd\xcd\ +\x74\x74\x74\x1c\x1b\x97\x25\xa5\x54\x63\xb1\x18\x7b\xf6\xec\x41\ +\x08\x41\xf4\x7c\x9d\x15\x17\xd5\x20\x01\x23\x27\x49\xee\x35\x18\ +\x6d\xb7\xc8\x74\x98\x98\x85\x43\xf9\x90\x9a\x9a\x9a\x11\xe0\x7d\ +\x47\x5b\xa6\xfa\xd3\x9f\xfe\x94\x42\xa1\xc0\xe7\x3f\xff\x79\xbf\ +\x30\xc1\x52\x4d\x84\x90\x9c\x3c\xe5\x6c\x7e\xd7\xfe\x00\xa9\xce\ +\x06\xae\x58\xf8\xb7\xcc\xa8\x59\x84\xed\x54\xaa\x60\x3c\x09\xe9\ +\xee\xee\xe6\x6b\xff\xfb\xbb\x95\xc4\x56\x29\xc5\xc6\x9f\xec\xe2\ +\xc0\x20\x64\x53\x79\x8f\x02\x92\x8a\xa2\x08\xaf\x8e\xea\x9d\x76\ +\xed\xdb\xd9\x55\x8f\x5d\x9e\x3f\x7f\x3e\x5d\x5d\x5d\x8c\x8c\x8c\ +\x78\xcf\xce\xc9\x27\x9f\xcc\xe6\xcd\x9b\x19\x19\x19\x61\xd1\xa2\ +\x45\xa4\x52\x29\x46\x47\x47\xd1\x34\xed\xd8\x24\xc4\x8b\xaa\x3d\ +\xef\xc9\xd9\xa9\xf1\x66\x47\x96\x7c\xbf\x83\x55\x94\x28\x9e\xf1\ +\x52\x55\x54\x55\xfa\xb9\x91\x40\x20\xe0\x0e\x0c\x0c\x1c\x55\xd3\ +\xca\xbc\x79\xf3\x68\x6e\x6e\x66\x74\x74\x94\xe6\xe6\xe6\x4a\x85\ +\xbd\x65\xe2\xe0\x00\x02\x4d\x09\x60\x4b\x0b\xdb\xb1\x18\x48\x0f\ +\xd3\x95\x0e\xa3\x09\xdd\x8f\x5f\x34\x4d\x03\xcd\xa1\xa4\xa6\x70\ +\xb2\x1a\x8a\xd4\xc9\xe6\xb2\xc4\xf4\x38\xb9\x5c\x07\x8a\xa2\xa0\ +\xeb\xba\x28\x14\x0a\x3b\x37\x6d\xda\xf4\x4f\x42\x08\x55\x51\x94\ +\x23\x2e\x91\x54\x55\x95\xaf\x7c\xe5\x2b\xcc\x9f\x3f\x9f\xcd\x9b\ +\x37\xa3\xeb\x3a\x1d\x1d\x1d\xb8\xae\xcb\xab\xaf\xbe\x8a\xa6\x69\ +\x24\x93\x49\xda\xdb\xdb\xc7\x9b\x00\xa4\x94\x35\xc7\x22\x21\x48\ +\x29\xf9\xd1\x8f\x7e\xc4\xac\x59\xb3\xb8\xf7\xde\x7b\x2b\x65\x93\ +\x73\x4a\x7e\x92\xaa\x58\x2c\x22\xa5\x64\xd2\xa4\x49\x74\x75\x75\ +\x91\xc9\x64\x8e\xb8\x3a\x64\x42\x85\x79\x5b\x1b\x2f\xbd\xf4\x12\ +\x2d\x2d\x2d\x1c\x38\x70\x80\x78\x3c\x5e\x49\xc3\x62\xa3\x6b\x21\ +\x52\xc6\x20\xd3\xa7\xcc\xa3\x7e\x5a\x1d\x9b\x7a\xba\xa9\x8d\x4c\ +\x1e\x8b\xba\x0f\xb9\xc0\x7a\x5c\x52\xf7\xfe\x01\x46\x9e\xae\xc3\ +\xe8\xad\xd0\x2b\x8e\xe3\xf8\xe5\x3b\x63\xbf\x27\x8b\xc5\xe2\xf3\ +\x47\x73\x8f\x63\x84\xab\xab\xeb\xba\xb2\x73\xe7\xce\x4a\x0b\x85\ +\x00\x55\x55\x90\x12\x62\x91\x18\x96\x6b\x55\x1c\x2c\x81\x1f\xab\ +\x8d\xd5\x78\x2d\x38\x26\x09\x99\x37\x6f\x1e\xb3\x67\xcf\xe6\x84\ +\x13\x4e\x60\xd9\xb2\x65\x6c\xdd\xba\x95\x65\xcb\x96\xf1\xe4\x93\ +\x4f\x72\xf1\xc5\x17\xb3\x7b\xf7\x6e\x36\x6c\xd8\xc0\x99\x67\x9e\ +\x49\x73\x73\x33\xcf\x3e\xfb\xec\x9f\xa4\xc7\xdf\x69\x45\x22\x11\ +\xbe\xf5\xad\x6f\x21\x84\x60\x68\x68\xa8\x52\x01\x68\x98\xd8\xaa\ +\xcb\x86\xff\x1e\x64\x93\xf9\x55\xe6\x35\x2e\xc1\x95\x2e\x3b\xfa\ +\x36\xd1\xfa\x68\x1b\x1d\x23\xbd\x14\x86\x0e\xbd\x2c\x4d\x53\x59\ +\xf7\xb5\x61\x8c\xd1\x51\x9c\x92\x64\xc6\x8c\x19\xe8\xba\xce\xd1\ +\xaa\xa8\xb7\xf1\x0c\x87\x76\xee\xdc\x79\xf1\xac\x59\xb3\x5e\x28\ +\x95\x4a\xb8\x2a\x4c\xbd\x21\xca\xc9\xcb\x63\xd8\x8e\x43\x53\x78\ +\x1e\xc3\x46\x3b\x8e\xe1\x72\xf0\xd5\x12\xfb\x9e\xc8\xa3\xa8\x15\ +\xa7\x27\xe2\xf9\xea\x47\x0b\x48\x67\x67\x27\xbf\xfc\xe5\x2f\x39\ +\xe5\x94\x53\x78\xe5\x95\x57\xc8\xe5\x72\xf4\xf4\xf4\x60\x18\x06\ +\x4f\x3e\xf9\xa4\x5f\x99\xf1\x9b\xdf\xfc\x86\x40\x20\xe0\xa7\x3e\ +\x8f\x72\x8d\x0e\x0d\x0d\x7d\x43\xd7\x75\x6b\xec\xc1\x3f\x98\x4a\ +\xa5\x66\xe4\xf3\x79\x2c\x53\x32\x2b\x3c\x83\x19\x33\xa6\x57\xa4\ +\x54\x1a\x2c\xbb\x7e\x16\x55\x91\x32\x0d\xc3\x27\x63\x0d\x06\x71\ +\x46\x2b\x69\x27\xa1\x48\x50\x24\x4c\x83\x5c\x2e\xc7\xc8\xc8\x08\ +\xd1\x68\x94\x78\x3c\xce\x69\xa7\x9d\xc6\xcb\x2f\xbf\x7c\x5c\x1c\ +\x12\x3f\xcd\x2b\xa1\xd4\x6a\xb3\x63\x7f\x8e\x7c\xaf\x83\x6d\x6c\ +\xc4\x2e\x4a\xec\x72\xa5\x3f\x51\x0f\x68\xbe\x23\x70\xac\xd4\x49\ +\x34\x1a\x8d\xf2\xf4\xd3\x4f\xf3\xc4\xe3\x4f\x1c\xf2\x46\x84\xc7\ +\x49\x29\x7e\x4f\x8b\x50\x2a\x89\xac\xea\xea\x6a\x69\xdb\xf6\xd1\ +\xea\xac\x91\xde\xde\xde\xff\xed\xfd\x50\x5f\x5f\xbf\x5c\x51\x94\ +\x19\xaa\xa2\x80\x03\xae\xe3\x92\xcf\xe7\x11\xc0\x66\xab\x8d\x4b\ +\x5a\xa2\xb8\x4a\x8e\xe0\xd4\x22\x8a\x2c\xa1\x6a\x0a\x76\x5a\xa7\ +\xbc\x2f\x46\x7e\x5b\xd4\x67\x01\xbc\xea\xc1\x7c\x3e\x5f\xc9\xe5\ +\x8b\xe3\xd3\x31\x67\x59\x16\xb7\xdc\x72\x0b\x00\x2f\xae\x7d\x11\ +\x51\x56\xd0\xb4\x02\x42\x17\x18\xba\x81\xac\x96\x7e\x6c\x94\x48\ +\x24\x0e\x2b\x6b\xa8\xbd\x83\x41\xaf\xf7\x92\xf9\xae\x0a\x93\xe6\ +\x05\xd0\x75\x81\xb4\x75\xe6\x4e\x5e\x48\x47\x6a\x07\x28\x50\x4e\ +\x39\xa4\xbb\x7c\x1d\x2e\x6c\xdb\xee\xe0\xf8\x2c\x25\x10\x08\x30\ +\x7d\xe1\xc2\x4a\x46\xcf\x1a\xa3\xd6\xbd\x88\x58\x11\xac\xac\xbe\ +\x85\xf7\x9d\x7e\x2d\x3b\x86\x5f\xe6\x85\x2d\x2f\xa1\x35\x0f\xd3\ +\xd6\x37\xe0\x13\x85\x5e\xc2\xca\x8b\x05\xd6\xaf\x5f\xef\xf1\x55\ +\xc7\xbc\xce\x3e\xfb\x6c\x2e\xb8\xe0\x02\xe6\xcc\x99\x43\xa1\x50\ +\xa0\xb7\xb7\x97\x8b\x2f\xbe\x98\xc7\x1f\x7f\x9c\xf3\xce\x3b\x8f\ +\x62\xb1\xc8\xab\xaf\xbe\xca\xfc\xf9\xf3\x89\xc5\x62\x3c\xf5\xd4\ +\x53\x7e\x09\xee\x51\x01\xa2\x28\x8a\xa8\xaf\xaf\xa7\x90\x2f\x60\ +\x45\x24\x4b\x3f\x52\x47\x75\x8d\x86\x74\x25\xc9\xb6\x7e\xea\xf6\ +\x55\x31\xbc\xdd\xc0\x1a\x75\x88\xc5\x82\xbe\x27\x31\x34\x34\xf4\ +\xe6\xf1\x78\x60\xd7\x75\xb9\xfd\xf6\xdb\xa9\xae\xae\xe6\x8a\x2b\ +\xae\xe0\xa2\x8b\x2e\xaa\xe4\x20\x24\x10\x82\x4c\xba\xc4\x65\x67\ +\x5c\xcf\x2d\xbf\x3c\x93\x9f\xff\xcd\x2e\x4e\x08\x2d\x25\xe1\xec\ +\x67\xf7\xfa\x3b\x30\x0c\xcd\x0f\x5a\xcb\xe5\x32\xd1\x68\x94\x60\ +\x30\x78\x58\xae\xe7\xe1\xae\x6d\xdb\xb6\x31\x75\xea\x54\x06\x06\ +\x06\x50\x55\x95\xda\xda\x5a\x76\xec\xd8\x81\x10\x82\x8e\x8e\x0e\ +\xbf\x16\x78\xe7\xce\x9d\xac\x5c\xb9\xf2\xd8\xe9\x77\x8f\x7b\x29\ +\x95\x4b\xe8\x8e\xce\x9b\x77\xa7\x91\x16\x58\xc5\x43\x39\x74\xa1\ +\x4c\xd4\x8d\x47\x42\x9b\x1c\xce\x32\x4d\x93\xfa\xfa\x7a\xbf\xe2\ +\xdc\xb2\xac\x4a\x27\x6f\x08\x0c\xc3\x25\x14\x0c\xe0\x52\xa9\x3f\ +\xeb\x1e\x3a\xc8\xc6\xfc\x63\x28\xa8\x13\x92\x47\x1e\xf7\xd4\xd6\ +\xd6\x36\xb7\x58\x2c\x8e\x00\xb2\xa1\xa1\xc1\x38\x1e\x36\xe4\xea\ +\xab\xaf\x46\xd3\xb4\x3f\x48\x56\xb5\xb7\xb7\xfb\xc4\xa2\x94\x92\ +\x5f\xfc\xe2\x17\x95\xf7\x75\xac\xf4\xfb\x25\x97\x5c\xc2\x87\x3e\ +\xf4\x21\x5c\xd7\xe5\xc9\x27\x9f\xa4\xab\xab\x8b\x68\x34\xca\xc1\ +\x83\x07\x89\xc5\x62\x54\x55\x55\x71\xe0\xc0\x01\x72\xb9\x1c\x8d\ +\x8d\x8d\xf4\xf4\xf4\x1c\xb7\x1d\x28\x84\xe0\x87\x3f\xfc\x21\xcb\ +\x96\x2d\xe3\x3f\xfe\xe3\x3f\x0e\x05\x7f\x08\xa4\x0b\xf1\x78\x88\ +\x64\x26\x4d\x4d\xa0\xbe\xe2\x56\x4a\x9b\x80\x88\x20\x5d\x89\x65\ +\xd9\x7e\xad\x98\x57\xd6\xa9\xeb\x7a\xce\x75\xdd\x0c\x70\x44\xfc\ +\xd5\x1f\x91\x5e\x73\x7c\xbe\xc7\x09\x40\x75\x5c\xc5\x71\x5d\x26\ +\x87\x67\x50\x72\xd3\x14\xac\x2c\x42\x48\x8c\xac\x8b\x5b\x92\x7e\ +\xf6\xf0\xa8\x01\x19\x6b\xc0\xa4\xb5\xb5\x95\x1b\x6e\xb8\x81\x6d\ +\xdb\xb6\x51\x2a\x95\xa8\xab\xab\x63\xd9\xb2\x65\x6c\xdc\xb8\x91\ +\x60\x30\x48\x38\x1c\x26\x93\xc9\x1c\xf7\xb6\x66\x29\xa5\x5b\x55\ +\x55\x25\x77\xec\xd8\x51\x29\x59\xf0\x4a\x50\x25\x48\x21\x89\x45\ +\xc2\x3c\xbe\xfb\x7e\xbe\x75\xe5\x6f\xf8\xcd\xfe\x87\x78\xa9\xe3\ +\x65\xce\x3a\xe9\x74\x5e\x73\x37\x62\x18\xa6\xcf\xe8\x7a\x54\x8c\ +\x6d\xdb\xb3\xea\xeb\xeb\x03\xa3\xa3\xa3\x3d\xc7\x7a\x6f\xb6\x6d\ +\xb7\x09\x21\x2a\xc5\x82\x08\x46\x96\x48\xfe\xee\xf6\x66\x24\x2e\ +\x51\x33\x42\x50\x0f\x72\x70\xb8\x80\x55\x90\xbc\x7e\x57\x0a\xe9\ +\x54\x34\xce\x31\xb9\xbd\x42\x08\xbe\xf9\xcd\x6f\x72\xfb\xed\xb7\ +\xf3\xc9\x4f\x7e\x92\xb6\xb6\x36\x5c\xd7\x9d\xd0\x5f\x38\xd6\x9f\ +\x8d\x94\x92\x9e\x9e\x9e\xe3\x0a\x48\x2a\x95\xba\xe8\xf9\xe7\x9f\ +\xa7\xa5\xa5\xa5\x7d\xce\x9c\x39\xb3\xb3\xd9\x6c\xa5\x6e\x58\x28\ +\x14\x6a\x24\x25\x33\xca\x7e\xf9\x1c\xdf\x79\x56\x67\xd5\xe9\xa7\ +\x90\x50\x76\xf0\xcc\xbe\x5d\x0c\xb5\xe5\x48\xa5\x2a\x01\x6b\x28\ +\x14\xa2\xa5\xa5\x85\x52\xa9\xc4\xb5\xd7\x5e\xfb\x7a\x5b\x5b\xdb\ +\x86\x75\xeb\xd6\xad\x3c\x1e\x0e\x87\xef\xfa\x0a\x85\xba\x83\x92\ +\x7d\x4f\x15\x18\xda\x6e\x90\xef\xdb\x38\x41\x35\xa9\x42\x03\x8d\ +\xb7\xcd\x9f\x1c\xb1\x0d\x89\xc7\xe3\xdc\x77\xdf\x7d\x7e\xc2\xc8\ +\x2b\x34\x00\xd0\x35\x1d\x5d\x3b\xe4\x0a\x7b\xe5\xa3\xfb\xf7\xef\ +\x9f\x71\x3c\xed\x88\x57\x2d\xef\xbd\x00\x81\x40\x35\x5c\xb4\x30\ +\xe4\x7b\xe1\xf5\xce\x9f\xf3\xe4\x4f\x7e\x4c\x79\x44\x62\x95\x5c\ +\xca\x69\xd7\x8f\x85\x54\x55\x25\x9d\x4e\x13\x0a\x85\x18\x19\x19\ +\x39\xa2\x5e\x8d\xc3\x21\x18\x2f\xbc\xf0\x42\x6e\xbc\xf1\x46\xbe\ +\xf5\xad\x6f\xa1\xf6\xa9\x10\xcc\xd1\x38\x1b\xbf\x7f\xbf\x5c\x2e\ +\x53\x55\x55\x45\x2a\x95\xc2\xeb\x8b\x3f\x6a\x40\x62\xb1\x98\xdc\ +\xb4\x69\x53\xa5\x92\x23\x06\x0b\xcf\x8f\xa1\x07\x04\x4a\xa9\x9e\ +\x0b\x16\x5f\xca\xef\x3a\x1f\x41\x0b\xa8\x8c\xee\x33\x19\xd8\x5c\ +\xf6\x12\x4e\x52\xd7\xf5\x29\xc7\x13\x10\xd7\x75\x1d\x2f\x69\xa5\ +\xaa\x2a\x8b\x17\x2f\xa6\xb3\xbd\x83\xd7\xfe\xa9\x5c\xd9\x1b\x0a\ +\xa0\x54\x28\x12\xe1\xba\x84\x42\xd2\xa7\x2a\xbc\x11\x18\x63\x3d\ +\x7f\xc7\xb5\x91\xb4\x58\x2c\xf2\xe9\x4f\x7f\x9a\x54\x2a\xc5\x27\ +\x3f\xf9\x49\x1e\x7a\xe8\x21\x4e\x5f\x79\x3a\xdd\xdd\xdd\xcc\x9b\ +\x37\x8f\xdf\xfe\xf6\xb7\xac\x5c\xb9\x12\x5d\xd7\xc9\x66\xb3\xec\ +\xd8\xb1\xc3\xaf\x9a\x3f\x2a\x40\x42\x63\x4f\x66\xdb\x36\xb2\xda\ +\x65\xc6\x39\x35\x68\x08\xac\xb2\xc1\xeb\x23\x3f\x43\xb5\xc3\x24\ +\x5a\x0d\x92\xfb\x2b\xc1\xcf\x98\xdb\x2b\x86\x87\x87\x8f\xc9\xaa\ +\xc7\xe3\xf1\x96\xb9\x73\xe7\x1e\x08\x04\x02\x15\x4f\x4f\x51\x71\ +\x84\x4d\xa9\x54\xe2\xdb\xdf\xfe\x36\x4d\x4d\x4d\x24\x12\x09\x7e\ +\xf7\xbb\xdf\xf9\x05\x04\x00\x23\x23\x23\x4c\x9d\x3a\x95\x64\x32\ +\xc9\xc8\xc8\x08\xaa\xaa\x92\x4c\x26\x09\x85\x42\x94\xcb\x65\x02\ +\x81\xc0\x71\x05\x24\x14\x0a\xb1\x63\xc7\x0e\x66\xcf\x9e\xcd\x0b\ +\x2f\xbc\xe0\xf7\xd0\x8c\x8e\x8e\xfa\x95\x90\x83\x83\x83\xc4\xe3\ +\x71\xbf\x78\xf0\x9d\x58\x8c\x77\xb4\x21\x9e\x1b\x5b\x9d\x83\x0d\ +\x77\x64\xdf\x32\xaa\xa8\xa2\x46\x82\x11\x7d\x82\x18\x1f\x87\x9d\ +\x17\x98\x3d\x7b\x36\xb6\x6d\xa3\x0a\x95\x56\x75\x3f\x67\xdd\x10\ +\x64\xfd\x7f\x38\xbe\x2b\x3c\x6f\xde\x3c\x1e\x7b\xec\x31\x9a\x9b\ +\x9b\xa9\xad\xad\x65\xde\xbc\x79\xdc\x73\xcf\x3d\x68\x9a\xc6\xc2\ +\x85\x0b\xd1\x75\x9d\x5f\xff\xfa\xd7\x7e\x56\xd0\xab\x5e\x3f\x9e\ +\x80\x84\xc3\x61\xbe\xfa\xd5\xaf\x4e\x50\x43\xad\xad\xad\x00\xec\ +\xdf\xbf\xdf\xa7\xe8\xc7\xab\xde\x63\x02\x44\x4a\xc9\x3f\xfe\xe3\ +\x3f\x32\x77\xee\x5c\x6a\x6b\x6b\x79\xe2\x89\x27\x38\x78\xf0\x20\ +\x9a\xa6\xf9\x85\xd4\x73\xe7\xce\xa5\xbd\xbd\x9d\x44\x22\x41\x73\ +\x73\x33\x07\x0e\x1c\x38\x2e\xee\xae\xd7\x68\xa3\x09\x95\x4c\x3c\ +\x03\x72\x32\x91\x48\x84\xaf\x7f\xfd\xeb\x9c\x7a\xea\xa9\x7e\xed\ +\x97\xc7\x24\xe8\xba\x4e\xb1\x58\x64\xd7\xae\x5d\x7e\x4f\xbc\xe7\ +\xf7\x8f\xa7\x2c\x8e\x17\x20\xf1\x78\xfc\x1b\x5e\x40\x08\x20\x15\ +\x89\xa6\x09\x5c\x17\xa2\xa1\x28\x05\x23\x57\x69\x10\x12\xe0\xda\ +\x87\x18\xdf\x77\xba\xbe\xf6\x4e\x5c\xcd\xfc\xf9\xf3\xc9\xe5\x72\ +\x5c\x7a\xe9\xa5\xfc\xfe\xf7\xbf\x67\xce\x9c\x39\xd4\xd7\xd7\x33\ +\x73\xe6\x4c\x1e\x7a\xe8\x21\x74\x5d\x67\xd2\xa4\x49\x78\xcd\xa0\ +\xc7\xc3\xcb\x1a\x3f\xa1\x47\x52\x29\x42\x28\x17\x25\xf9\xb4\x41\ +\x44\x53\x59\xbb\xb6\x52\xdd\xa9\xab\x41\x14\xad\x52\x23\xe6\x35\ +\x00\x79\x76\xc2\x8b\xc8\xbd\xde\x72\x2f\x4d\x6b\x59\xd6\xa4\x50\ +\x28\x74\x9d\x10\x22\x00\x88\xba\xba\xba\x57\xfb\xfa\xfa\xba\x8e\ +\xc2\xae\x4d\xaf\xaf\xaf\xaf\xd8\x04\x45\xa0\x9d\xaf\x73\xe9\xb5\ +\x93\x28\x96\x0d\x2e\x3b\xf1\x66\xb6\x8c\x3e\x45\x62\x28\x49\xae\ +\xdf\x61\xc3\x37\x93\x3e\xcb\x1c\x8d\x46\x87\x8f\x1a\x90\x60\x30\ +\xc8\xbd\xf7\xde\xcb\xe7\x3e\xf7\x39\x3e\xf6\xb1\x8f\xd1\xdf\xdf\ +\xef\x8b\xbd\x37\xdb\x24\x95\x4a\x61\x59\x16\xa5\x52\xc9\xcf\x85\ +\xc8\xb1\xc8\xf0\xad\x0d\x34\x47\x0a\x88\x61\x18\x38\x28\xa8\xaa\ +\x42\x6f\xa7\xc1\xdd\xf7\x7e\x95\x6f\x3c\xfb\x2f\x7c\xe1\xfc\x2f\ +\x13\x8f\xc4\xf9\x9f\xad\x5f\xa4\xfd\x37\x39\x8c\x11\xc5\xaf\xec\ +\x38\xe1\x84\x13\x68\x6c\x6c\x64\xfb\xf6\xed\xd4\x35\x55\x71\xc2\ +\xcc\x46\x96\x4f\x5a\x86\xea\xea\x15\x07\x40\x30\x47\x22\x1f\xf3\ +\xd2\xd0\x3f\xfc\xe1\x0f\xff\x06\xe8\x3a\x8a\x7b\x94\xe3\x55\xb4\ +\x18\x81\xe1\x5d\x65\x12\x7b\x2d\xbe\xfa\xdd\x7b\x49\xee\xb3\x70\ +\x4d\x89\xa2\x0b\x14\x4d\xf1\x35\x8e\x10\x42\x39\x26\x1b\x92\x48\ +\x24\xb8\xfd\xf6\xdb\x0f\xeb\x26\xbd\x1e\x43\x21\xc4\xa2\xa6\x43\ +\x9e\x9f\xf6\x00\x00\x16\x56\x49\x44\x41\x54\xa6\xa6\x53\x06\x06\ +\x06\xb6\x1d\x43\xe0\x55\x01\x5d\x2a\xa8\x42\x05\x14\x96\x2e\x3b\ +\x85\x86\xb6\x2a\x96\xaf\x38\x8d\x29\xb5\x4d\xac\x29\xa9\x54\x6d\ +\x8c\xa0\xe4\x85\xaf\xd3\x67\xcc\x98\xe1\x79\x88\x4c\x3a\xdd\xa5\ +\xf9\xec\x34\xd2\x4d\xe3\x00\xc6\x40\x00\xa3\x2d\x42\xb9\x33\x82\ +\x10\x15\xde\x4d\x55\xd5\xa3\x76\x40\x54\x55\x65\xe1\xc2\x85\x9c\ +\x74\xd2\x49\x6c\xd8\xb0\x81\x81\x35\x15\xa3\x1e\x70\x1c\x26\x37\ +\xba\x7e\xac\xe6\x6d\x62\x6f\xb0\xdb\x51\x03\x32\x3c\x3c\xdc\xe5\ +\xba\xee\x5c\xaf\x80\xa0\xe9\xac\x30\x91\x88\x82\xb4\x75\xde\x77\ +\xd2\x2d\x3c\xb3\xef\x87\xd8\x18\xd8\x86\xe4\xc0\xef\x8b\x7e\x0a\ +\xb5\xaa\xaa\x2a\x52\x2c\x16\xe3\x47\xf2\x70\x53\xa6\x4c\x79\x5f\ +\xb1\x58\xbc\x10\x70\xa5\x94\xf1\xce\xce\xce\x8a\xee\x97\x82\xb2\ +\x61\x32\xd0\x53\xe2\xab\x89\x6f\xb2\xa7\x6d\x98\x3b\xb6\xfd\x2b\ +\xb1\x50\x35\x1b\x0e\x1e\xc4\xee\x8b\xa2\x58\x41\x7f\x07\xb6\xb6\ +\xb6\xfa\x6d\x69\x81\x62\x33\x77\x5e\xf4\x23\x36\xf6\xfe\x96\x1f\ +\xbc\xf8\x9f\xcc\x9c\x51\xc7\x50\x39\x4f\x76\x77\xa5\xb6\x57\xd7\ +\xf5\x63\xa2\xe2\x83\xc1\x20\xdf\xfc\xe6\x37\x89\xc5\x62\x34\x35\ +\x35\xb1\x63\xc7\x0e\xce\x3d\xf7\x5c\xd6\xac\x59\xc3\xca\x95\x2b\ +\x69\x6b\x6b\x43\x08\xc1\xac\x59\xb3\xc8\x64\x32\xbc\xf2\xca\x2b\ +\xc7\xc6\xf6\x5a\x96\xd5\x16\x0c\x06\x2f\xf6\xf2\xd5\xd3\x2f\x09\ +\x13\x8f\x6b\xe4\xfa\x6d\x7e\x33\x70\x1f\xb6\x22\x28\x0c\x38\xa4\ +\xbb\x0f\x19\x4d\x5d\xd7\x7d\x37\xf4\x08\x49\xc4\x5b\xaf\xbb\xee\ +\xba\xf3\xa5\x94\xb8\x48\x32\x55\xa3\x34\x4d\x0f\xe0\x66\xbc\xfa\ +\x2b\x9d\x74\x22\xc7\xa9\x0d\xe7\x60\x16\x6d\x92\xc5\x24\xa7\x37\ +\x5d\xc9\xb3\x5b\x9f\x21\x18\x74\x7c\x09\x55\x14\x05\xe9\x4a\xa4\ +\x25\xb8\x76\xf9\x87\xf8\xef\x0d\xff\xca\xf2\xd8\x87\x58\xd9\x70\ +\x23\x2b\x17\x2c\xe0\x3b\xad\x5f\x99\xd0\xfb\x7e\xb4\x80\x48\x29\ +\x9d\xf1\x05\xe5\x9e\x93\xe3\xb9\xd9\x5e\xc7\x59\x77\x77\x37\x81\ +\x40\x80\xda\xda\x5a\x7f\x9c\xd3\xb1\x90\x8b\x0a\x40\x75\x75\x35\ +\xb6\x6d\xb3\xe3\x6b\x45\xac\x9c\x44\x68\x20\x14\x10\xaa\x57\x81\ +\xa1\xa2\x69\x87\x22\xe3\xa3\x1c\xab\xa4\x27\x93\x49\x5c\xd7\x25\ +\x63\x17\x99\x73\x45\x06\x5b\xad\xa8\x7d\x29\x6c\x74\x4d\x85\xa4\ +\x82\x71\x20\x4a\xfe\x8d\xb1\xe1\x30\x63\xde\xd4\xf8\x12\xa0\x48\ +\x38\x4c\x32\x98\xe3\xcc\x8f\x45\x38\xff\xfc\x0b\xf8\xd1\xce\xe7\ +\x18\x4a\x8d\xb0\xb7\x7f\x27\xc5\x9a\xed\xa8\x54\x6a\x6c\x85\x7a\ +\x74\xe3\x93\x00\x1a\x1b\x1b\x4f\x94\x52\xae\x08\x85\x42\x5c\x73\ +\xcd\x35\xc4\x62\x31\x7f\x13\x6e\xdd\xba\x15\x45\x51\xd8\xb3\x67\ +\x8f\x5f\xf4\x31\x30\x30\xe0\x17\x18\x1e\x2b\x20\x9c\x7c\xf2\xc9\ +\x7c\xe9\x4b\x5f\xc2\xb6\x6d\x1e\x7e\xf8\x61\x0e\x1c\x38\x30\x61\ +\x8e\x47\x3c\x1e\x67\x70\x70\xd0\x8f\x46\xbd\xc1\x34\x47\x9b\x81\ +\x73\x5d\x17\xcb\xb1\x51\x84\x42\xba\x27\xcc\x23\x7f\xff\x3b\xfa\ +\x0b\xfb\xb9\xe3\xb7\x7f\xc7\xec\xc6\x79\x74\x96\xdb\x30\xca\x21\ +\x14\xfd\xd0\x44\x37\xdf\xf5\xf4\x8a\xf6\x14\x85\x40\x40\xc7\xb2\ +\x0c\x34\x25\x88\xaa\x68\x04\xb4\x20\x21\xad\x42\x85\x1b\xa6\x81\ +\xa2\x8a\xa3\x9e\xc7\x55\x2a\x95\x5a\x9a\x9b\x9b\xc3\x85\x42\x81\ +\xaa\xaa\x2a\x9f\x32\x1a\xbf\xfe\x58\xb1\xa0\x17\x30\x1e\x35\x20\ +\x2b\x56\xac\x60\xf7\xee\xdd\xfc\xf5\x5f\xff\x35\x67\x9c\x71\x06\ +\x42\x08\x22\x91\x4a\x1b\xb1\x97\x0e\x2d\x16\x8b\x0c\x0f\x0f\xd3\ +\xdc\xdc\xcc\xe0\xe0\xa0\x6f\x97\x8f\xf4\x41\xbd\xb9\x8d\x16\x15\ +\x55\xb0\x7a\xd5\xbf\xf2\xf3\x3d\x5f\x27\x79\xa0\x9a\x05\xda\x55\ +\xdc\x72\xc6\xdf\xf3\x99\x9e\xf7\x57\x5c\x5c\xa7\xa2\x72\x82\xc1\ +\xa0\x3f\xdb\xd1\x75\x5d\x0c\xd3\xc4\x2a\x18\x64\xd7\x2c\xe6\x8b\ +\xbf\xfa\x22\x8e\xb4\xd9\xcb\xe3\x94\x0d\x8b\xcc\xcb\x02\xe4\x0c\ +\x66\xcf\x96\x20\x2a\xb9\x8a\xcb\x2f\xbf\xfc\x7f\x84\x10\xdf\x07\ +\xd8\xbc\x79\x73\xc7\xde\xbd\x7b\x97\x1c\xae\x27\x98\x4e\xa7\x2b\ +\x1d\xc4\x01\xb8\xe4\xdf\x1a\x50\x54\x01\xa8\x34\xd7\x9f\x40\x7f\ +\xea\x00\xa3\xfb\x4c\x0e\xbc\x58\x24\xd5\x5e\x91\xe0\xaa\xaa\x2a\ +\xf2\xf9\xfc\xfd\xc7\x14\x18\xfe\xfc\xe7\x3f\xe7\x03\x1f\xf8\x00\ +\x77\xdf\x7d\x37\xeb\xd7\xaf\xf7\xfd\xfd\x7c\x3e\xef\xd3\x25\xa9\ +\x54\x6a\x42\xaa\x54\x4a\x49\x63\x63\xe3\x97\x14\x45\xb9\xa5\xaf\ +\xaf\xef\xc0\x91\x4a\x88\x83\x83\x22\x55\xa6\xd4\x4d\x61\xff\x40\ +\x91\xa2\x05\x1d\xc3\xfb\x79\x72\xef\x7d\xd8\xb6\x85\x65\x55\x74\ +\xa9\x69\x9a\x04\x83\x41\x4e\x3d\xf5\x54\xf6\xee\xdd\x4b\x22\x91\ +\x20\x9d\x4e\x63\xba\x26\x56\xd9\xc6\x30\x2a\x53\x91\x76\xd7\x6e\ +\xe6\x9c\x6b\x63\x38\xb9\xca\x1c\x45\x37\x13\xc4\xc9\x6a\x38\x19\ +\x0d\x6b\x20\x18\x40\xfa\x33\x15\x83\x47\x60\x43\xd0\xf5\x4a\x3d\ +\x98\xee\x2a\x0c\x6c\x36\x29\x0e\x3b\x14\x86\x1c\x5e\x1d\x48\x50\ +\x4e\xb9\x95\xba\x35\x4d\xf8\xb5\x08\x63\x36\xcb\x3e\x26\x1b\xe2\ +\xba\x2e\x0f\x3c\xf0\xc0\xa1\x1b\xf1\x02\x4d\x01\x99\x74\x06\xcf\ +\xad\x16\xa2\xc2\xdb\x78\x63\xfd\xe6\xcc\x99\x73\x51\x26\x93\xa9\ +\x07\xfe\x28\x20\xf3\xe6\xcd\x7b\x8f\xae\xeb\x42\x51\x14\x67\x78\ +\x78\x38\x56\x2e\x55\x26\x7b\x5a\x8a\x4d\xbe\x3f\xc0\xae\x5d\xbb\ +\x48\xe4\x0a\xa4\x07\x6c\xb2\x89\x2c\xa3\x07\x8b\xe4\x07\x2d\x4c\ +\x4b\xa2\xc8\x0a\x80\x86\x61\xd0\xdc\xdc\xcc\x8e\x1d\x3b\x50\x94\ +\x4a\xeb\xb4\x23\x0f\x4d\x1e\x32\x5c\x8b\x70\x2d\x28\x8e\xc6\xb4\ +\xfa\x05\xc4\x67\x54\xb1\x73\x70\x03\x75\x91\xc9\x64\xe5\x10\x03\ +\x0f\x36\xe0\x14\x0e\xa9\xbc\x23\x49\x2f\x57\x55\x55\xb1\x7a\xf5\ +\x6a\xf6\xec\xd9\xc3\x81\x7d\x07\x08\x18\x65\x54\xc7\x21\x56\xef\ +\x62\xd7\xd8\xfe\x98\x0e\x2f\x6e\xf3\xbc\xbf\x63\x89\x43\xfe\xfb\ +\xe0\xc1\x83\x17\xdb\xb6\x3d\x53\x08\x41\x31\x26\x39\xf5\xf2\x6a\ +\xf4\x80\xa0\x30\x52\xc5\xfb\xcf\xb8\x9e\x67\xf6\xfd\x00\x4d\xd5\ +\x19\xda\x6e\x30\xb8\xb5\x84\x50\x84\x3f\xed\xe7\x1d\x1e\xb0\xe1\ +\xb4\xd3\x4e\xdb\xac\xaa\xaa\x10\x42\x20\x91\x50\x5b\x82\x6c\x10\ +\xe1\xa8\xb0\x11\x9e\xd8\xf8\xd4\x21\xde\x88\x1a\x76\x1c\x18\x64\ +\xf4\x60\x0c\x47\xe6\xb0\x4d\xe9\x1b\x73\xaf\x16\xcc\x9b\xec\xe6\ +\x9a\xae\xdf\x6a\x6d\x49\x07\x45\x55\xe8\xde\x6f\xf3\x95\x5b\xbf\ +\xc2\x0f\xd6\x7e\x97\x4b\x5a\x6e\xe1\x8a\x25\x1f\xe4\x53\xcf\x5f\ +\x80\x65\x5a\xd8\xa6\x73\x44\x80\x78\x69\xd9\x6f\x7f\xfb\xdb\x24\ +\x12\x09\x6e\xbe\xf9\x66\x9e\x7b\xee\x39\xbf\x72\xb1\xbd\xbd\x9d\ +\x65\xcb\x96\x11\x0e\x87\xd9\xb6\x6d\x1b\xdb\xb6\x6d\x63\xe9\xd2\ +\xa5\x6c\xd8\xb0\xe1\x1d\xbf\xfb\x4f\x02\x92\xcb\xe5\xb6\x36\x37\ +\x37\x0f\x1b\x86\x31\x53\x08\x81\xa1\x3b\xb4\x9c\x57\x8d\x9d\x92\ +\xa4\x3b\x0c\x1e\xfd\xed\x03\x14\x07\x04\x56\xd1\xa2\x9c\x92\x84\ +\xc2\x21\xdf\xf5\x7d\xa7\xf6\x30\x40\x2f\x97\xcb\xc2\xb6\x6d\x10\ +\xb0\x35\xb2\x8b\xf7\x9e\x5f\x87\x2b\x5d\x1c\xc3\x45\xb1\x83\x48\ +\x4b\xc1\xc9\xab\xe4\x5e\xab\xc1\x29\xaa\x3e\xb1\x98\x4c\x26\xfd\ +\xe0\xd1\xa3\x47\x5c\xd7\xa5\xb3\xb3\x53\xbe\xf1\xc6\x1b\xe2\xd1\ +\x47\x1f\x65\xdb\xb6\x6d\x15\xc7\x43\x3a\xa8\x9a\xc2\x09\xd5\x4b\ +\x38\x98\xdf\xcd\x48\xf9\x20\xff\xeb\xc4\xdb\x09\x6a\x21\x42\xa1\ +\x20\x96\x63\x63\x99\xbe\x1a\x7a\x47\x44\x6a\x6a\x6a\x3e\x71\xde\ +\x79\xe7\x7d\xa3\xb5\xb5\x95\x47\x1e\x79\x84\x2f\x7f\xf9\xcb\xf4\ +\xf5\xf5\xb1\x77\xef\x5e\x72\xb9\x9c\x4f\xd3\xac\x5d\xbb\x96\x99\ +\x33\x67\xd2\xd3\xd3\x83\xe3\x38\x8c\x8e\x8e\x1e\x9f\xc1\x01\x95\ +\x0d\x21\x38\xe9\xa4\x93\xe8\xee\xea\x66\xe3\xe7\xca\x48\x7b\xcc\ +\x21\x16\x1a\x08\x15\xe9\x38\x84\x42\xba\xff\x72\xbc\x12\xfc\x77\ +\xba\x01\xbf\x3c\x07\x49\xa0\xae\xd2\xd9\x74\xd6\xa4\x0f\xd3\x32\ +\xb9\x85\xa7\x3b\xbe\xc7\xcc\xaa\x53\xd8\x9a\xfa\x0d\xf6\xc6\x30\ +\xb6\x75\xa8\x8a\x64\x7c\x1b\x44\xa1\x50\xb8\x63\xff\xfe\xfd\xff\ +\x3e\x69\xd2\xa4\x81\x91\x91\x91\xc6\xb5\x6b\xd7\xb2\x68\xd1\x22\ +\x36\x6e\xdc\x58\xe9\xc8\x52\x5d\x92\xbf\x2f\xd3\x3b\x75\x90\x7b\ +\x36\x3f\x40\x32\x97\xe0\x0b\xbf\xfb\x12\xaa\xa2\xd2\x9d\x05\x2b\ +\x7f\x48\x32\x26\x4f\x9e\x7c\xc2\xb4\x69\xd3\x5e\x05\x54\xc7\x71\ +\xd8\xb9\x73\xe7\x75\xc9\x64\xb2\xe7\x2d\x6c\x44\xad\xa2\x28\x9a\ +\x94\x92\x4d\x9b\x36\x71\xd1\x45\x17\xf9\xe4\xe6\x5b\xd7\xfe\xfd\ +\xfb\x7d\x82\x73\xeb\xd6\xad\xc4\xe3\xf1\x63\x07\xc4\xb2\x2c\x6e\ +\xbd\xf5\x56\xce\x3b\xef\x3c\x0c\xc3\xe0\xb1\xc7\x1e\xf3\x07\x41\ +\x7a\x9e\xd6\x9c\x39\x73\xd8\xbb\x77\xaf\x4f\x0d\x0c\x0c\x0c\x78\ +\x37\xb9\x70\xda\xb4\x69\xc9\xde\xde\xde\xb7\xe3\x8a\x1c\x8f\xaf\ +\x92\x02\x14\x45\xd0\xbd\xcf\xe6\xdb\x7f\x75\x13\xff\xf0\xe3\x2b\ +\xf8\xe2\xc5\xdf\x27\x1e\x6e\x60\x74\x7b\x27\x83\xd6\x08\x86\xe1\ +\xf8\x80\x7b\xc4\xe1\xb8\x2a\x49\xa9\xaa\x2a\xb7\xde\x7a\x2b\x9f\ +\xff\xfc\xe7\xb9\xff\xfe\xfb\xfd\x09\x3c\xb6\x70\xd1\x8a\x1a\xb1\ +\x13\xaa\x28\x65\x2c\x0a\x96\x60\x64\xd9\x56\xe2\xb1\x10\x93\x46\ +\xc2\xd8\xf5\x41\xdc\xb2\x8a\x34\x14\xa4\xa9\x84\x91\xe2\x4c\x2f\ +\xf7\xfd\xe6\x9b\x6f\x86\xde\x4e\x5d\x8d\x4f\x5b\x2b\xaa\x4a\xb8\ +\x4a\x23\x10\x14\x87\x3a\xa6\x04\xd8\x25\x17\xbb\xa4\xf8\x36\x57\ +\x51\x14\x4a\xa5\x92\x65\x9a\x66\xe2\x98\x00\x71\x1c\x87\xd9\xb3\ +\x67\x93\x4c\x26\x39\xe5\x94\x53\x08\x85\x42\x9c\x72\xca\x29\x44\ +\xa3\x51\xa2\xd1\x28\x3f\xf9\xc9\x4f\xa8\xa9\xa9\xe1\xcc\x33\xcf\ +\x24\x9d\x4e\xb3\x6e\xdd\x3a\x02\x81\x00\xb6\x6d\xf3\x9e\xf7\xbc\ +\xe7\xe1\xf6\xf6\xf6\x1f\xf7\xf6\xf6\xde\x34\x46\x36\x36\x01\xab\ +\x01\xd3\x75\xdd\xea\xde\xde\xde\x4a\x01\x32\x60\x5a\x26\xf9\x6c\ +\x8c\x3b\xef\xfc\x1a\x3d\xed\x59\x1e\x1f\x7a\x86\x4c\x21\xc3\x2b\ +\x7d\x6f\x52\xe8\x0a\x13\xd3\x6b\x3d\xb6\x94\xaa\xaa\x2a\x72\xb9\ +\xdc\x84\xd1\x17\x42\x08\xda\xda\xda\xb8\xe9\xa6\x9b\xc8\xe5\x72\ +\x54\x55\x55\x55\x66\x09\x0b\x17\xdc\xb1\x39\xed\xc0\x90\x36\xc2\ +\xc2\x85\x01\x6c\xcb\x84\xa6\x89\x23\x93\xb2\x9b\xc7\x2a\x1e\x85\ +\xf4\x0b\x23\xfe\x18\xf1\xd9\xd0\xd0\x30\xd6\x82\x00\xb5\xe7\x04\ +\x59\x7c\x5a\x8c\xa1\xed\x65\x46\xf7\x59\x8c\xee\x36\x71\xed\xb7\ +\x75\x04\x0e\x0c\x0e\x0e\xde\x77\x4c\x80\x44\x22\x11\xee\xbc\xf3\ +\x4e\xce\x3c\xf3\x4c\xee\xb9\xe7\x1e\x8a\xc5\xe2\x84\xec\x97\x69\ +\x9a\xac\x5d\xbb\x16\xdb\xae\x64\xf4\x82\xc1\xa0\xff\xef\xde\xf0\ +\x2e\x6f\x8d\x8c\x8c\xac\xba\xf2\xca\x2b\x3f\xef\x51\xf4\x19\xb3\ +\x28\x6b\x67\x3b\x42\x26\xc3\xb8\xc9\x00\xd8\x92\x3d\x6f\x76\x32\ +\x59\x59\xc0\xa6\x8d\x95\xe9\xdc\xd3\xb4\xe5\x74\xba\x1d\x7e\x8e\ +\x3a\x12\x89\x10\x0c\x06\xfd\x91\x47\xe3\xa8\x97\x7b\x86\x87\x87\ +\xab\x84\x10\x6e\xb9\x5c\x5e\x2e\x84\xb8\xb8\x5c\x2e\xe3\x28\x2e\ +\xa1\x50\x78\xac\xe2\x51\x80\x2a\x31\x4d\x87\x0f\xcc\xbc\x93\xee\ +\xec\x2e\x4e\x9a\xb5\x98\xff\x7a\xee\x3e\xec\xba\x76\x1c\x27\x82\ +\x65\x5a\xa0\xc8\xb7\x8d\xe2\x03\x81\xc0\x6c\x29\x65\x9d\x37\x48\ +\x61\xd1\xa2\x45\x04\x02\x01\xfa\x5e\xeb\x65\xe7\xcb\x12\x49\x00\ +\x29\x75\x62\x91\x90\xaf\x52\xbd\x5f\x5e\x61\xc8\x31\xab\x2c\xdb\ +\xb6\x83\x8a\xa2\xf0\xda\x6b\xaf\x55\xf4\xa1\x64\xc2\x64\x05\x21\ +\xc0\xb6\x1c\x84\x52\x31\xe6\x5e\x2e\xa2\x50\x28\x4c\x18\x2c\xec\ +\x3d\x93\x33\x6e\x50\x72\x76\x61\xa7\x98\x79\x46\x14\xcb\x35\x71\ +\x1c\x17\x25\x17\xab\xc4\x07\xde\xec\xdc\x31\xf7\xd2\x9b\x17\x2c\ +\xa5\xf4\xe9\xfe\xfa\xfa\x7a\x12\x89\x43\xd2\x9f\x4c\x26\xbf\xe6\ +\x19\xfb\xc9\x93\x27\x7f\x4c\xd3\xb4\x8b\xa5\x94\x08\x1b\xb0\x5d\ +\xff\x50\x00\xcb\x34\x48\xec\x93\x54\x35\x57\xf3\xfc\x9b\x3f\xc6\ +\x3a\xf0\x31\x16\x28\x67\x12\x53\x56\xf0\x58\xef\x4f\xc9\x8d\x06\ +\x40\x48\x6f\xf0\xd8\x29\x81\x40\xa0\x5e\x55\x55\x51\x2a\x95\x76\ +\x5f\x72\xc9\x25\xed\x3d\x3d\x3d\x58\x96\x25\x6b\x6b\x6b\xc5\x3f\ +\xff\xf3\x3f\xb3\x78\xf1\x62\xee\xbd\xf7\x5e\xf6\xed\xdb\xc7\xe2\ +\xc5\x8b\x79\xf3\xcd\x37\x69\x69\x69\xa1\xbf\xbf\x9f\x74\x3a\xcd\ +\x94\x29\x53\x90\x52\xb2\x7d\xfb\x76\xd2\xe9\xf4\xb1\x03\x72\xe0\ +\xc0\x81\xbf\xcb\xe5\x72\x9b\xd4\x31\x7e\x22\x1f\x72\x39\xff\x96\ +\x3a\xca\x59\x07\xbb\x24\x29\xa5\x5c\xd2\x5d\x16\x99\x03\x36\xee\ +\x38\xa0\x26\x4d\x9a\xe4\xd1\x2b\x55\xb1\x58\x6c\x46\x3e\x9f\x3f\ +\x00\xb8\xe3\x77\x4a\x38\xa2\x61\x14\x25\x97\xcf\xfc\x27\x26\xd7\ +\xd5\xf2\xf3\x3d\xdf\x20\x56\xd7\x48\xa2\xf9\x00\xc9\xf5\x21\x5f\ +\xf7\x3a\x8e\x43\x3a\x9d\x46\x4a\x49\x38\x1c\xc6\xb2\x2c\x06\x06\ +\x06\xbc\x06\x98\xb7\xf3\x1c\x54\x4d\xd3\x58\xbd\x7a\x35\xf9\x7c\ +\x9e\x1f\xff\xf8\xc7\x7e\x02\xad\xae\x5c\x45\x68\xeb\x1c\xee\xda\ +\x7c\x17\xaa\x32\x87\xdf\x06\x9e\x20\xa4\xeb\x48\x43\x65\x8a\xb3\ +\x98\xa6\x13\xbd\x9d\x26\xb9\xfa\xea\xab\x7f\xee\x55\x8e\xac\x59\ +\xb3\x66\xaa\x57\x13\x6c\xdb\xb6\x37\x8f\xd7\x1f\x36\xe3\xba\x2e\ +\x93\x27\x4f\x66\xfa\xf4\xe9\x94\xcb\x65\x66\xcc\x98\xc1\xba\x75\ +\xeb\xfc\x64\xde\xce\x9d\x3b\x8f\x8f\x97\x65\x59\xd6\xd6\x40\x20\ +\x20\x3d\x35\x13\x01\x76\xfe\xc0\x7c\x4b\x6e\x5d\x27\xa4\xeb\xa0\ +\x1f\x8a\x62\x35\x4d\xc3\xb2\x2c\x1a\x1b\x1b\xff\x7a\xc9\x92\x25\ +\x97\xbd\xf8\xe2\x8b\x5f\xb5\x2c\xeb\xe4\xbe\xbe\xbe\x43\x63\x9d\ +\xde\x28\xa0\xb5\x57\xb3\xeb\xc4\x36\xbe\xb1\xf9\x19\x66\x4e\x99\ +\x89\x1e\x9f\x42\xdb\xe0\x4e\xf2\x43\xae\x5f\x1c\xf0\x16\xd1\x2f\ +\x77\x74\x74\x3c\x34\x96\xf1\x33\x34\x4d\x7b\xe5\xed\x72\x29\xef\ +\x7b\xdf\xfb\xa8\xaf\xaf\xe7\xb6\xdb\x6e\xe3\xd1\x47\x1f\xf5\x53\ +\xba\xae\x74\x29\x9b\x15\xb5\xbb\x21\xdd\xca\x7b\x6f\x0d\x4f\x18\ +\x33\x65\x0d\x07\x30\x7b\xc2\x98\x07\xc3\x38\x39\x8d\xf1\xb3\x54\ +\xbc\x2a\x7a\x2f\xc6\xb9\xed\xb6\xdb\x08\x06\x83\x94\x4a\x25\xa4\ +\x94\x7c\xff\xfb\xdf\x9f\xd0\x7f\x22\xa5\x64\xf7\xee\xdd\xb4\xb6\ +\xb6\x1e\x36\x89\x79\x58\xed\xa7\xae\xeb\xf2\xd1\x8f\x7e\x94\x73\ +\xce\x39\x87\x8e\x8e\x0e\x76\xee\xdc\x49\x67\x67\xa7\x3f\xdb\xc3\ +\x34\x4d\x4e\x3f\xfd\x74\xf6\xef\xdf\xcf\x9e\x3d\x7b\x98\x3d\x7b\ +\x36\x1d\x1d\x1d\x7e\x26\xb1\x5c\x2e\xeb\xe7\x9e\x7b\xee\xbf\x2a\ +\x42\x61\x58\x1b\x96\xd3\x4f\x12\xc2\x1c\x0c\x63\x0f\x07\x71\x53\ +\x3a\x3b\x36\xee\xa5\x45\x3d\x11\x67\xc4\xa5\x77\x78\x90\x26\x6d\ +\x29\xeb\x13\xaf\xfb\xbd\xe0\x5e\x71\xc0\x18\x91\x98\x4f\x24\x12\ +\x1f\xfd\x93\x0f\xa5\x69\xbc\xf2\xca\x2b\xac\x59\xb3\x86\x91\x91\ +\x11\x8a\xc5\xa2\x3f\x4f\xd7\x2b\x0b\x02\x28\x0a\x93\x68\x6d\x0c\ +\x92\xd3\xb8\xfd\x92\x2f\xf1\x8b\xd6\xff\x64\x24\x32\x82\x3d\x37\ +\x4b\x62\xb3\x45\xea\xe5\x2a\x54\xad\xd2\xb2\x7d\xd6\x59\x67\xad\ +\xf3\x00\x29\x95\x4a\x84\xc3\x95\xf3\x4e\x8a\xb9\x4a\x39\xa9\x50\ +\x15\x94\x3f\x5e\xd6\x2c\x01\x91\x4a\xa5\xa2\xc7\x05\x10\x29\x25\ +\xd7\x5c\x73\x0d\x5b\xb6\x6c\x61\xd5\xaa\x55\x24\x12\x09\x16\x2d\ +\x5a\xc4\xf6\xed\xdb\x69\x68\x68\xa0\xb3\xb3\x93\x9a\x9a\x1a\x16\ +\x2e\x5c\x48\x20\x10\xa0\xbd\xbd\xdd\x1f\x00\xe9\xbd\x80\xfe\xfe\ +\x7e\x1c\x29\xa9\xbe\x3e\x2f\xc2\x8b\x63\x84\x97\x66\x41\x91\x48\ +\x53\xc1\x4e\x6b\xb8\x59\x9d\xd4\xf3\xb5\x38\x96\x8b\xe6\x1e\xaa\ +\x2e\xf1\x06\xa7\xd5\xd5\xd5\x4d\x98\x35\xff\x4e\x91\x74\xb1\x58\ +\xe4\x9c\x73\xce\xf1\xc1\xf4\xf4\x77\x5d\x5d\x9d\xff\xbd\x4d\x3d\ +\x2a\x7b\xbf\x5c\x87\xed\x66\xf8\x9b\xff\xfc\x18\x02\x9d\x40\x40\ +\x45\x1a\x51\x14\x5d\x22\x74\x13\xd5\x55\xbc\xd1\xb8\xb3\x0c\xc3\ +\xc0\xb6\x6d\xaa\xab\xab\x2b\xc9\x27\x04\xb5\x4b\x82\xe8\x08\xf2\ +\x03\x0e\x46\xc6\x9d\x30\x9c\xc8\x93\x0a\x4d\xd3\x44\x36\x9b\x7d\ +\xc3\xb6\xed\xf7\x1e\x17\x40\x74\x5d\xe7\xfa\xeb\xaf\xe7\xae\xbb\ +\xee\xe2\xeb\x5f\xff\x3a\xdd\xdd\xdd\x13\x4e\xd2\x29\x16\x8b\x74\ +\x75\x75\x91\xcb\xe5\xfc\x29\x9d\xaa\xaa\x92\xcd\x66\xa9\xad\xad\ +\xc5\x75\x5d\x7f\xc8\xc0\xc0\x03\x36\x6f\x28\xde\xb0\x49\x65\x1c\ +\x65\x61\x52\xb4\xda\x68\x69\x69\x99\x90\xb7\xf7\x26\xea\x7c\xf4\ +\xa3\x1f\xe5\xfe\xfb\xef\x3f\xac\x32\x23\xc3\x30\x72\xb6\x6d\x77\ +\x7b\x75\x5d\x42\x88\xe9\xaa\xaa\x0a\x4f\xda\xfd\x89\xa8\x01\x8d\ +\x9a\x49\x31\x2c\xcb\x62\xb4\x6c\x53\x7d\xe9\x10\xb5\x93\x74\x64\ +\x49\xc3\x1c\x0a\x52\xec\x08\x40\x22\xea\x57\x4e\x7a\xf1\x47\x28\ +\x14\xe2\x13\x9f\xf8\x04\xc9\x64\x92\xed\xdb\xb7\x57\x1a\x95\x6a\ +\x2d\x64\xfc\x90\xf3\xe1\xfd\xee\x15\x5d\x94\x4a\xa5\x72\x22\x91\ +\x48\x1d\x17\x40\xbc\xb9\x8a\x5f\xf8\xc2\x17\xfe\xe8\x67\xf2\xf9\ +\xbc\x4f\xcd\x4b\x29\x19\x3b\xb1\xcc\x67\x81\x87\x86\x86\x2a\x85\ +\xda\x93\xe3\xa8\xaa\x4a\x5b\x5b\x9b\x3f\xcb\x77\xf1\xe2\xc5\x63\ +\xd4\x47\xd9\xcf\x71\xd8\xb6\xed\xe7\x0e\xaa\xaa\xaa\xfc\xf9\x86\ +\x87\x03\x48\x3a\x9d\x7e\x70\xd3\xa6\x4d\x0f\x7a\x3f\x4f\x9f\x3e\ +\xdd\x52\x55\x55\x3b\xf1\xc4\x13\xe9\xee\xee\xf6\x81\xf6\x5e\x98\ +\x61\x18\x24\x7b\x46\x68\x5e\x7f\x12\xd9\x52\x89\x75\xeb\xd6\xa1\ +\x69\x1a\xcb\x97\x2f\xa7\xa1\xa1\x81\x36\xa5\x7d\xc2\x09\x3a\x17\ +\x5e\x78\x21\x93\x27\x4f\xe6\x33\x9f\xf9\x0c\x8f\x3c\xf2\x08\x2f\ +\xbf\xfc\x32\x97\x5d\x76\x19\xbf\xff\xfd\xef\x99\x35\x6b\x16\xc3\ +\xc3\xc3\x6c\xd8\xb0\x81\x58\x2c\xc6\xa9\xa7\x9e\xca\x73\xcf\x3d\ +\x77\xd8\xa4\xe5\x61\x01\x92\x4a\xa5\xfe\x2a\x9b\xcd\x7e\xa3\xa6\ +\xa6\x66\x51\x3e\x9f\xf7\xcb\xfb\xc7\x1b\xaa\xb7\x1a\x2d\xaf\xc8\ +\xce\x03\xc5\xcb\x75\x54\x55\x55\x11\x08\x04\x68\x6a\x6a\x62\xe6\ +\xcc\x99\x0c\x0c\x0c\x4c\x38\xbf\x6a\xfc\x31\x42\xe3\x8b\x93\xbd\ +\xe1\x68\x47\x93\xfc\x92\x52\xb2\x6e\xdd\x3a\x86\x86\x86\x58\xbd\ +\x7a\xb5\x1f\x4b\x79\x52\xe8\x79\x4a\xb6\x6d\x93\x4e\xa7\x39\xeb\ +\xac\xb3\x88\xc5\x62\x24\x93\x49\x32\x99\xcc\xf8\x53\xd8\x30\x4d\ +\x93\xbd\x7b\xf7\x72\xdb\x6d\xb7\x31\x32\x32\xc2\x8e\x1d\x3b\x70\ +\x5d\x97\xed\xdb\xb7\xe3\xba\x2e\xfb\xf6\xed\xf3\x9f\xbd\x50\x28\ +\x30\x38\x38\x78\x44\x2c\xf2\x61\x01\x92\x4c\x26\x7f\x5d\x57\x57\ +\xf7\xcf\xcb\x97\x2f\x67\xf5\xea\xd5\x74\x77\x77\xb3\x79\xf3\x66\ +\xba\xba\xba\x08\x04\x02\x7e\xe2\x7e\xea\xd4\xa9\xf4\xf5\xf5\x91\ +\x4e\xa7\x99\x34\x69\x92\xcf\x7e\xfa\x25\x3d\xe3\x62\x10\xcb\xb2\ +\xc8\xe7\xf3\x3e\x4d\x3e\xfe\x40\xb1\xf1\xb3\x73\xc7\x5e\x5c\x6a\ +\x60\x60\xe0\xe1\xb1\xff\x37\x72\x34\x65\x45\x86\x61\xf8\x52\x9b\ +\xcd\x66\xfd\xef\x1f\x3f\x74\xdf\x53\x4b\xa6\x69\xfa\x07\xd5\x78\ +\xff\xe6\xfd\xbd\xe3\x38\x8c\x8c\x8c\xb0\x6a\xd5\x2a\x5f\x9d\x43\ +\xa5\x9b\xca\x1f\xeb\x31\x6e\x83\xbe\xf1\xc6\x1b\x47\xd4\x42\x77\ +\x24\xe7\x87\x88\x8f\x7f\xfc\xe3\x0c\x0e\x0e\x72\xed\xb5\xd7\x62\ +\xdb\x36\xb3\x67\xcf\xa6\xaf\xaf\x0f\xdb\xb6\xa9\xab\xab\x43\x88\ +\x4a\x32\xa6\xbd\xbd\x9d\x62\xb1\x48\x30\x18\xf4\x87\x24\x7b\xb6\ +\xc0\x03\xc4\x2f\xf3\x19\x03\x61\xbc\x24\xa9\xaa\x4a\x20\x10\xa0\ +\xa5\xa5\xc5\x9b\x3b\x35\xd2\xd9\xd9\xf9\x89\xf1\x31\xce\xf8\xa0\ +\xf0\x70\x54\xee\xc5\x17\x5f\xcc\x45\x17\x5d\xc4\xf0\xf0\xb0\xaf\ +\xb2\x42\xa1\x90\x9f\x8a\xf6\xd4\xd7\x78\x06\x60\xfc\xe1\x67\xde\ +\xdc\xc9\xb1\x0d\x3a\x81\x4c\x1c\x5f\x72\xfb\x76\xd7\x96\x52\x76\ +\x49\x29\xfb\x8e\x37\x20\x7c\xfa\xd3\x9f\xe6\xa1\x87\x1e\xe2\x67\ +\x3f\xfb\x19\x2f\xbe\xf8\xe2\x84\xf3\x38\x0c\xc3\x20\x1a\x8d\xfa\ +\x65\xf7\xde\x91\x0e\x9e\x6b\xec\xa9\xaf\xf1\xa7\xd5\x8c\x3f\xe9\ +\xcd\x7b\x21\xc5\x62\xd1\xaf\x32\x9c\x3a\x75\x2a\xe9\x74\xfa\x0f\ +\x28\x87\x23\x01\xc3\x53\x59\x4d\x4d\x4d\xec\xde\xbd\xdb\x57\xb7\ +\x9e\x5a\x1c\x7f\x14\x85\xf7\x67\x4f\x5a\xc7\xd7\x54\x99\xa6\x89\ +\xae\xeb\xdc\x71\xc7\x1d\x5c\x70\xc1\x05\xfc\xfb\xbf\xff\xbb\x97\ +\x5f\xf7\x59\x6b\x4f\xda\xab\xaa\xaa\xfc\x41\x3d\x52\x4a\x76\xed\ +\xda\x35\xeb\xb8\x4b\x88\xe7\x3e\x7e\xf0\x83\x1f\x9c\xd0\x53\x38\ +\xde\x76\x78\x93\x9d\x3d\xfd\x59\x55\x55\xe5\x9f\xc4\xe3\xed\x4a\ +\x8f\x23\xf2\xa4\xc5\xf3\x46\x3c\x8a\xc4\xa3\xab\xa5\x94\x13\x06\ +\x80\x1d\xcb\x4a\xa7\xd3\xb3\x36\x6f\xde\x8c\x65\x59\xf9\xe9\xd3\ +\xa7\x77\xac\x5a\xb5\xaa\xf6\x53\x9f\xfa\x14\x37\xdf\x7c\x33\xf9\ +\x7c\xde\xef\xb5\xf7\xdc\x5a\x6f\x1c\xdf\x78\x9a\x3f\x93\xc9\x30\ +\x7b\xf6\x6c\xce\x3d\xf7\x5c\xa2\xd1\x28\xe7\x9c\x73\x0e\x1b\x36\ +\x6c\xe0\x92\x4b\x2e\x61\xcd\x9a\x35\x5c\x79\xe5\x95\x3c\xf9\xe4\ +\x93\x2c\x5c\xb8\x90\xda\xda\x5a\x54\x55\xe5\xb9\xe7\x9e\x9b\x30\ +\xed\xfa\x78\x03\xf2\x8b\xee\xee\xee\xed\x8a\xa2\xac\x7e\xef\x7b\ +\xdf\x8b\xa2\x28\xb4\xb7\xb7\x63\x18\x86\x3f\xef\xdc\xd3\xb7\x35\ +\x35\x35\x38\x8e\xe3\x0f\x94\x14\x42\x90\x4a\xa5\xfc\x01\xf5\xe3\ +\x55\x96\x57\xd1\xe7\x7d\x6e\xac\x5a\x5d\x3a\x8e\x23\x6c\xdb\xa6\ +\xa6\xa6\x86\x4c\x26\xa3\x1e\x23\x20\x7e\x4e\xa3\x58\x2c\xba\x77\ +\xdd\x75\x17\xeb\xd7\xaf\xa7\xba\xba\x9a\x91\x91\x11\x7f\xf7\x8f\ +\xb7\x67\x1e\xd5\x32\x3e\xd1\x96\xcb\xe5\xd8\xbd\x7b\x37\x0d\x0d\ +\x0d\x78\xe7\xff\x7a\x6e\xef\xd6\xad\x5b\xb1\x6d\x9b\x9e\x9e\x1e\ +\x7f\x10\x8d\x37\x92\xe9\x88\xec\xdd\xe1\x7c\xc8\x3b\xab\x0f\xd0\ +\x96\x2c\x59\x62\x6d\xdd\xba\x95\x9d\x3b\x77\xd2\xd3\xd3\xc3\x96\ +\x2d\x5b\x58\xb1\x62\x05\x3f\xf8\xc1\x0f\xb8\xf0\xc2\x0b\xe9\xec\ +\xec\x24\x18\x0c\x32\x7f\xfe\x7c\x3a\x3b\x3b\x79\xf5\xd5\x57\xc9\ +\x66\xb3\x0c\x0f\x0f\x13\x8b\xc5\xfc\x72\x53\xef\x04\x01\x29\xa5\ +\xdf\x9f\x18\x8d\x46\xfd\x03\x51\x06\x07\x07\x13\xe5\x72\xf9\xe5\ +\x31\xbb\xb4\x67\x64\x64\xe4\x8b\x1c\x87\x75\xe2\x89\x27\x26\x6e\ +\xbc\xf1\xc6\xfa\x4b\x2f\xbd\x94\xcf\x7e\xf6\xb3\x0c\x0c\x0c\x50\ +\x2a\x95\xfc\x39\xed\x85\x42\x81\x29\x53\xa6\xf8\x07\x9c\x79\xe3\ +\x6f\x55\x55\x65\xe6\xcc\x99\x64\x32\x19\xff\xb4\x87\xb7\x73\x1e\ +\xde\x9a\xe6\xb5\x6d\x9b\x37\xdf\x7c\x53\x1c\x57\x09\x19\xa7\xc3\ +\x15\xcb\xb2\x78\xf8\xe1\x87\xb9\xec\xb2\xcb\x78\xf4\xd1\x47\x49\ +\x26\x93\xbc\xf0\xc2\x0b\x48\x29\x19\x1c\x1c\x64\xdf\xbe\x7d\x95\ +\xb3\xa5\xba\xbb\x27\x64\x10\xbd\xc1\x2f\xe9\x74\x9a\x60\x30\xe8\ +\x0f\x4f\x8e\x46\xa3\xbe\xd4\x18\x86\xc1\xec\xd9\xb3\xc9\x64\x32\ +\x28\x8a\xb2\x2b\x93\xc9\x5c\xc3\x71\x5e\xba\xae\xf3\xe4\x93\x4f\ +\xf2\xd4\x53\x4f\x91\xcf\xe7\x99\x3c\x79\x32\x9f\xfd\xec\x67\xf9\ +\xf4\xa7\x3f\xed\x0f\x4b\xf3\x46\x8d\xc7\xe3\x71\x9f\x36\xff\xfc\ +\xe7\x3f\xcf\x7d\xf7\xdd\xe7\x8f\x05\xf4\xc8\x4e\x4f\x9d\xd7\xd5\ +\xd5\x91\xcf\xe7\x49\xa5\x52\x34\x36\x36\x32\x3c\x3c\x8c\x65\x59\ +\x7d\x8a\xa2\xe4\xff\x2c\x2a\xcb\x5b\xa1\x50\x88\x7b\xee\xb9\x87\ +\xfb\xee\xbb\xcf\x8f\x13\x3c\x75\xd3\xdd\xdd\x8d\x10\xc2\x1f\x76\ +\xe6\xdd\x6c\x55\x55\x95\x4f\xc5\x7b\x27\x2d\x7b\xb6\xc6\x3b\xef\ +\xd0\x8b\x3f\xf6\xec\xd9\x73\x5c\xfb\x00\xdf\xba\x46\x47\x47\x5f\ +\x09\x87\xc3\xd5\x63\xf7\xb6\xf2\x1b\xdf\xf8\x46\xe4\xb5\xd7\x5e\ +\xf3\xef\xcd\xb3\x61\xe3\x8f\xde\x70\x5d\x97\x55\xab\x56\x31\x75\ +\xea\x54\x96\x2d\x5b\xc6\xd3\x4f\x3f\x4d\x75\x75\x35\x5b\xb6\x6c\ +\xa1\xb9\xb9\x99\xad\x5b\xb7\xb2\x72\xe5\x4a\x0a\x85\x02\xed\xed\ +\xed\x1c\x3c\x78\x90\x68\x34\x4a\x6f\x6f\xef\xe5\xdd\xdd\xdd\xdb\ +\x8f\xa4\x0b\xe0\x48\xad\xa5\x36\x73\xe6\xcc\x27\xa3\xd1\x68\x40\ +\xd7\xf5\x0b\x4f\x3c\xf1\x44\x42\xa1\x10\xaa\xaa\xb2\x6f\xdf\x3e\ +\xbf\x05\x39\x1c\x0e\xfb\xd3\x0d\x42\xa1\x90\x7f\x1c\x50\x26\x93\ +\x21\x97\xcb\x4d\xe0\xb9\x82\xc1\x20\x17\x5e\x78\x21\x2f\xbf\xfc\ +\x32\xde\xbc\x75\x21\x04\xed\xed\xed\xaf\x0f\x0c\x0c\x9c\x79\x3c\ +\xc1\x18\xb3\x47\xfe\xcf\x73\xe7\xce\xdd\x7b\xed\xb5\xd7\xce\xbb\ +\xf9\xe6\x9b\xb9\xfc\xf2\xcb\x59\xb6\x6c\x19\x2d\x2d\x2d\x3c\xf9\ +\xe4\x93\xbe\x6a\xfd\x87\x7f\xf8\x07\x1e\x79\xe4\x11\x0c\xc3\xe0\ +\x86\x1b\x6e\x60\xd3\xa6\x4d\x8c\x8e\x8e\xfa\xae\xb0\xd7\x93\xa2\ +\xeb\xba\x7f\x0c\x47\x30\x18\x44\xd7\x75\xba\xbb\xbb\x97\x1d\x3c\ +\x78\x70\xcb\x91\xdc\xe3\x91\xf6\x9f\xd9\x5d\x5d\x5d\x97\xb7\xb6\ +\xb6\x5e\x17\x0a\x85\x38\xf3\xcc\x33\xf9\xc2\x17\xbe\x40\x34\x1a\ +\xa5\xb9\xb9\x99\xa9\x53\xa7\x52\x55\x55\xc5\x8c\x19\x33\xa8\xa9\ +\xa9\xa1\xae\xae\x8e\x48\x24\x82\xeb\xba\x7e\xa0\xb5\x72\xe5\x4a\ +\x02\x81\x00\x0d\x0d\x0d\xc4\xe3\x71\x82\xc1\x20\xd1\x68\x94\xb1\ +\x81\xcd\x6f\x6e\xdf\xbe\xfd\x9f\xb6\x6f\xdf\xfe\x19\xe0\x2b\xc7\ +\x5b\x3a\xc6\x83\x31\x26\xa1\xca\x0b\x2f\xbc\xc0\x25\x97\x5c\x82\ +\x10\x82\x7b\xee\xb9\xc7\x3f\x9f\x70\xc3\x86\x0d\x18\x86\xc1\x15\ +\x57\x5c\x41\x22\x91\x40\xd7\x75\x7e\xf9\xcb\x5f\xd2\xdd\xdd\x4d\ +\xa1\x50\xa0\x58\x2c\x4e\x38\x39\xc7\x73\xed\x43\xa1\x90\xf4\xcb\ +\x91\x5c\xf7\x88\xdd\xc3\xa3\x3a\x2d\x5a\xd3\xb4\x80\x10\x82\x07\ +\x1f\x7c\x90\x87\x1e\x7a\xe8\x0f\xfe\xfd\xe0\xc1\x83\x7f\xd4\x39\ +\x78\xab\x1b\xeb\x38\x0e\xbf\xfd\xed\x6f\xbd\x49\x6f\xbb\x72\xb9\ +\xdc\x7f\x02\xef\x58\xb6\x7f\x3c\x56\x36\x9b\x95\x9e\x8a\x12\x42\ +\xf0\xfc\xf3\xcf\x73\xfa\xe9\xa7\xb3\x63\xc7\x0e\x36\x6c\xd8\x40\ +\x7d\x7d\x3d\x0f\x3e\xf8\x20\x0f\x3e\xf8\x20\x77\xdf\x7d\xb7\xef\ +\xba\x7b\x41\xaf\x77\xc2\x90\x97\xbe\x1e\x53\x6f\xa2\xad\xad\xed\ +\x5c\xc7\x71\xf6\xd4\xd5\xd5\x25\x8e\xf4\x9e\x8e\xca\xc1\x0f\x85\ +\x42\xb1\xba\xba\xba\xcf\x85\x42\x21\x17\xb8\x2a\x1c\x0e\x2f\x3e\ +\x1c\xbd\xef\x4d\x7a\xf0\xa6\x3c\x7b\x99\x36\xcf\xdf\x4f\xa7\xd3\ +\x6b\x7a\x7a\x7a\xde\xcf\x5f\x7e\x45\x16\x2f\x5e\x5c\xf0\xfa\x45\ +\x74\x5d\x67\xe9\xd2\xa5\xec\xdb\xb7\xcf\x77\xc9\x0f\xc7\x7d\xf5\ +\xf8\xb1\xed\xdb\xb7\xcf\x2d\x14\x0a\xed\x47\x73\x23\xc7\x3c\x38\ +\xaa\xb9\xb9\xf9\xe7\x4d\x4d\x4d\xd7\x1e\xce\x5c\x73\x0f\x14\x8f\ +\xce\xae\xa9\xa9\xa1\x50\x28\x14\x5b\x5b\x5b\xa3\xe3\xbe\x8f\xfe\ +\xfe\xfe\xbf\x34\x20\xc1\x96\x96\x96\x6d\xf1\x78\x5c\xe4\xf3\xf9\ +\x48\x63\x63\xe3\x09\x52\x4a\x0a\x85\xc2\x61\x8f\x90\x2d\x14\x0a\ +\x98\xa6\x79\x9f\xeb\xba\x56\xb9\x5c\xfe\x8f\xa1\xa1\xa1\xd1\xff\ +\x2b\x80\x00\x81\xb1\xef\x09\x86\x42\xa1\xa5\x87\x1b\xd7\x78\x51\ +\x7b\x38\x1c\x4e\x64\x32\x99\x5d\xfc\x3f\xb2\x82\xc1\x60\x6d\x38\ +\x1c\xfe\x47\xd7\x75\x9d\x23\x60\x08\x64\x20\x10\x48\x9e\x7c\xf2\ +\xc9\xff\xf3\xc2\x0b\x2f\x48\xde\x5d\xef\xae\x77\xd7\xbb\xeb\xdd\ +\xf5\xee\x7a\x77\xbd\xbb\xde\x5d\xff\x8f\xad\xff\x03\x21\xf6\x70\ +\xa0\xc1\x03\x97\x85\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\ +\x82\ +\x00\x00\x3a\x79\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x64\x00\x00\x00\x64\x08\x06\x00\x00\x00\x70\xe2\x95\x54\ +\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\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\x0e\xc4\x00\x00\x0e\xc4\x01\ +\x95\x2b\x0e\x1b\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x03\x03\ +\x0e\x1c\x1e\xba\x16\x7f\x4d\x00\x00\x20\x00\x49\x44\x41\x54\x78\ +\xda\xed\xbd\x79\x9c\x5c\x55\x99\xff\xff\x3e\x77\xa9\x5b\xd5\xd5\ +\xdd\xd5\xdd\xe9\x2d\x49\x77\xd2\x21\x1b\x09\x59\x00\x59\x02\x81\ +\x08\x88\x40\x40\x10\x46\x5c\x66\x1c\xc1\x19\x01\xf9\x02\x83\xdf\ +\x41\xe7\x0b\xe3\x38\x83\xc8\x57\x04\x74\x5c\x58\x64\x40\x51\x91\ +\x4d\x04\xd9\x05\x21\x04\x08\x09\xd9\x43\x3a\x0b\x4d\xd6\x4e\xa7\ +\xf7\xa5\xba\xf6\xed\xae\xe7\xf7\xc7\xed\xba\x49\x00\x35\x60\xc0\ +\xef\xcc\x8f\xf3\x7a\xd5\xab\xb7\xea\x53\xf7\x9e\xe7\x9c\x67\xf9\ +\x3c\x9f\xe7\xb9\xf0\xd1\xf8\x68\x7c\x34\x3e\x1a\x1f\x8d\x8f\xc6\ +\x47\xe3\xa3\xf1\xd1\xf8\x68\xfc\x8f\x1f\xe2\x7f\xf2\xcd\x9d\x74\ +\xd2\x49\x3b\xa7\x4c\x99\x32\x51\x4a\x89\x00\xa4\xad\x20\x25\xa0\ +\x48\x50\x24\x42\xbc\x73\x05\x4a\xa5\x52\x78\xc9\x92\x25\x5f\x4c\ +\xa7\xd3\x0f\xff\x35\xae\x59\xfb\x20\x26\xad\xaf\xaf\x5f\x94\xcf\ +\xe7\x27\x1d\xf4\xae\x10\x02\xcf\xf3\xa8\xa9\xa9\x79\x6e\x70\x70\ +\x30\x71\xa8\xae\x43\x55\xd5\xea\x42\xa1\x10\x01\xd8\x63\x0f\x32\ +\xf3\x73\x05\x2a\xa3\x3a\x4e\x4a\xc3\x4b\x87\xf0\x72\xfe\xf7\x6e\ +\x4a\xc3\x4d\x86\x00\xf0\x3c\x0f\x29\xa5\xf6\xd7\xda\x44\x1f\xc8\ +\x07\xd7\xd5\xd5\xdd\xf5\xd9\xcf\x7e\x76\x36\x80\x27\x3d\xdc\x0a\ +\x8b\xb0\xa1\x20\xad\xb1\x97\xad\x80\x1c\xdb\x9d\x63\x3b\xd4\x30\ +\x0c\x1e\x7f\xfc\xf1\x63\x81\x43\x26\x10\x29\xa5\xb4\x2c\x0b\x01\ +\x8c\xb8\x29\x3e\x16\xa9\x24\x24\xab\x38\xf6\x88\x05\x6c\x1f\x5d\ +\x4f\x22\x93\xa4\xae\x2a\x42\x6e\xd8\x66\xf8\x77\x75\x07\x6c\x90\ +\xff\x51\x02\xb1\x6d\xdb\x18\x1a\x1a\x02\x60\x67\xbe\x9f\x85\x57\ +\x81\xed\xed\xbf\x50\x60\x0f\x86\x28\xee\x8c\x62\xee\x8e\x80\x90\ +\x54\x55\x55\x81\x2f\xa6\x43\x36\x5c\xd7\xc5\xb2\x2c\x90\x20\x74\ +\xf0\x84\xc3\x45\x33\xbe\xcf\x73\x3d\xb7\x71\xeb\x99\xbf\xe7\x47\ +\x4f\xfe\x90\x89\xad\x1e\x4b\x06\x9e\xf1\xdf\x37\x26\x8c\xbf\xa6\ +\x40\x94\x0f\x68\x5e\xcf\x34\x4d\x4c\xd3\xc4\x76\x5d\x74\x5d\x21\ +\x37\x50\xc5\xb7\x3f\xfe\x5b\xce\x9e\x71\x31\x8a\x13\x61\xdc\xe4\ +\x0a\x42\x93\xf3\x98\x25\x0b\xcb\xb2\x30\x4d\xf3\xa0\x17\xa2\xa5\ +\xa5\xe5\xe0\x2e\xc2\xf3\xa4\x65\x59\xd8\xb6\x8d\x87\x24\x95\x31\ +\x39\xfa\xf0\x23\xe9\x48\xaf\x40\x11\x0a\x9f\x38\xfa\x93\x54\x55\ +\xc5\x50\x42\x12\xc7\x71\x30\x4d\x13\xc7\x71\xfe\xaa\x76\x4f\x7b\ +\x1f\xea\xe8\xc2\x63\x8e\x39\xe6\x5f\x1c\xc7\xf1\x24\x12\x55\xaa\ +\xb8\xb6\xf4\x45\xab\x48\x34\x5d\x75\x3b\x3b\x3b\x5b\x4d\xd3\xf4\ +\x77\xa9\xe7\x62\x96\x14\xfe\xed\xcc\x3b\xf8\xe9\xfa\x6b\x38\xab\ +\xf9\x1b\x4c\x51\xe2\x9c\x34\xeb\x28\xee\xde\x7e\xab\x2f\x08\x55\ +\x12\x0a\x85\x90\xf2\xe0\x0e\x48\x6f\x6f\x2f\x6d\x6d\x6d\xab\x1a\ +\x1b\x1b\x29\x1b\x6c\x3c\x05\x89\x24\x95\x4e\xd6\x4d\x39\x6c\xca\ +\x0c\x45\x51\x40\x08\xa4\x2b\x11\x86\xcb\xdc\xfc\x14\x72\xbf\x84\ +\xd3\x7e\xf6\x71\x2a\x42\xd3\x39\xf9\x8e\x93\xd1\x55\x0d\x81\x46\ +\x28\x54\xc3\xce\x9d\x5b\x68\x6d\x6d\x45\x4a\x89\xeb\xba\x53\x43\ +\xa1\xd0\x82\xf7\xb2\x2e\x15\x15\x15\x54\x57\x57\xaf\xe9\xee\xee\ +\x96\x1f\xaa\x40\x2c\xcb\x9a\x7b\xd8\x61\x87\x1d\x97\x48\xf8\xaa\ +\xbe\xaf\xae\x8b\xd9\x0b\x75\xac\x81\x08\xce\x48\x18\x91\x8b\xd0\ +\xdd\xa3\x62\xdb\xb6\xbf\x4b\x85\x87\x6b\x4b\x66\xb5\xcd\x40\xd9\ +\x03\x45\x3b\x4b\xb6\x98\xe3\xa5\xdd\x0f\xe0\x79\xbe\x4a\x11\xaa\ +\x0c\xde\x7f\x90\x23\x5c\x5f\x5f\xbf\x60\xda\xb4\x69\x78\x9e\x47\ +\x51\x9a\x68\x87\xa7\xa8\x0c\x87\xe8\x5c\xe1\x31\xae\xba\x1e\xcb\ +\x32\xd1\x84\xca\xf6\xf1\x5b\x39\xe1\xec\x4a\x5c\xd7\xc3\x1e\xd1\ +\x71\x07\xa3\x58\xc3\x50\x93\x19\x87\x9d\x52\x28\x16\x4a\xa8\xaa\ +\x40\xd3\x34\x72\xb9\x1c\xae\xeb\xca\x93\x4e\x3a\xe9\xfa\xda\xda\ +\xda\xeb\x01\x1c\xe9\xa2\x57\x79\xe0\x28\x60\x8f\xd9\xbf\xc0\xf6\ +\xc9\x40\xcd\xed\xde\xbd\x9b\xb5\x6b\xd7\x46\x80\xd2\x87\x6e\x43\ +\x4a\xa5\x12\xa6\x69\x92\x73\x4b\x44\x8e\x2d\xa2\x56\x2b\x44\xaa\ +\x73\x30\x33\x87\x66\x08\xc4\x5a\x27\xd0\xc9\x9e\xe6\xa1\xaa\x2a\ +\xa9\x5c\x1a\x45\x51\x51\x15\x1d\xdb\x33\xa9\xd2\x2b\xf1\x24\x58\ +\xa6\x89\xd0\x08\xde\x7f\xb0\x8e\x99\xe7\x79\x94\x4a\x25\xf0\x24\ +\x9d\x7a\x37\x0b\x8f\xd6\x81\x22\x46\x3c\x83\xbd\xc7\xc2\xb2\x2d\ +\x3c\x54\x8c\x98\xc4\x35\x05\xf5\xea\x6c\x1a\x67\xd6\xd0\x51\xb3\ +\x8a\x8a\xd9\x2a\x20\xd8\xf4\x23\x9b\xa9\x2d\x87\x53\x55\x55\x45\ +\x6b\x6b\x2b\x00\x83\x83\x83\xa2\xac\x42\x55\x14\x76\x36\x6e\x63\ +\xc1\xd9\x51\xbc\x31\x1b\xe8\x59\x02\x7b\xd0\xc0\xea\x89\x60\x76\ +\x85\xc1\xf5\xb5\xbe\xae\xeb\x78\x9e\xf7\xe1\xdb\x10\x21\x04\x96\ +\xe5\xeb\x7d\xc7\x71\x50\x55\x05\x37\x5d\xcf\x4d\xa7\x3f\xc3\x95\ +\x47\xfd\x17\x7a\xb1\x85\xd6\xd8\xd4\xe0\x3d\x9e\xe7\x11\x8d\x86\ +\xb8\xe5\xf1\xef\xf2\x37\xd3\xaf\x61\x7c\x53\x2d\x49\xaf\x93\x73\ +\x66\x5c\x82\x22\xf7\xcd\xf5\x1e\x4f\x08\x52\xca\x31\xdb\x63\x21\ +\x3d\xdf\x65\x3b\xa7\xf5\x1b\x2c\x9e\xf6\x0f\x98\xb6\x3f\xa7\x65\ +\x9a\xa8\xaa\x82\x9a\x6f\xe2\xfa\xb3\xfe\x0b\x37\x3e\x81\x93\x9b\ +\xbe\xcc\x37\x4f\x7a\x88\x90\x6a\x50\x32\x4b\x64\x32\x19\x86\x86\ +\x86\x18\x1a\x1a\x62\x53\xec\x75\xe4\xc2\x1d\x38\xa6\x87\x69\x9a\ +\x58\xa6\x85\xa2\x4b\x1c\xc7\x65\x6e\xf4\x5c\xbe\x76\xe2\x8f\x89\ +\x44\x42\xd4\xb4\x54\x52\x7d\x52\x12\xcf\xf0\x37\x66\xf9\x3e\xff\ +\x6a\x46\xbd\xbc\x83\x2c\xcb\x42\x08\x98\xa0\x1e\xc5\x8a\x9e\x27\ +\xf9\xed\xf2\xdf\xf0\xa5\x23\xbf\x89\xeb\x3a\xa4\xd3\x69\x52\xa9\ +\x14\xf9\x42\x1e\xc7\xb3\x49\xd6\x2e\x63\xeb\xee\xdd\xf4\xe4\x36\ +\x43\x6d\x3f\x3f\x5a\x7b\x39\xe9\x64\x8e\x54\x3a\x4d\x3a\x9d\x26\ +\x93\xc9\x20\x84\xf8\xb3\xc7\x64\xfc\xf8\xf1\x41\xbc\xe0\x0b\xd2\ +\x02\x21\xd1\xc3\x1a\x9f\x9c\x73\x3e\xab\x07\x9f\x41\x7a\xbe\x0a\ +\xb4\x6c\x1b\x3d\xac\x23\xac\x18\xbd\xc5\x1d\xb4\xf7\xaf\xe0\xb0\ +\xfa\x79\x34\xd5\x34\xa1\x0a\x1d\xd7\x75\x71\x1c\x27\xd8\x14\x91\ +\x2a\x81\xaa\x8a\xe0\xf7\xb6\x6d\x23\x74\x41\x85\xde\xc0\x95\x9f\ +\xf8\x26\x3f\x7c\xf6\x07\x5c\x7a\xec\xad\x5c\xb3\xe8\x1e\xda\x1a\ +\x67\xe0\xb8\x0e\x8e\xe3\xbf\x3c\xcf\x43\x51\x94\x0f\xdf\xa8\x97\ +\x4f\x88\x6d\xdb\x38\xd8\x08\xa1\x10\xd6\x23\xb8\x9e\x8d\x2b\x5d\ +\x92\xc5\x61\x14\x45\x0b\xbc\x15\xd7\x71\x91\x8a\x87\x6b\x49\x9e\ +\xeb\xba\x85\xd2\x56\x97\xe2\x80\x20\xdf\xa5\x31\xb4\xb1\x88\x11\ +\xd1\x41\x82\x65\xda\x54\x46\xab\x6e\x9e\x3b\x67\xee\xe8\x1f\xc3\ +\x0f\x52\xa9\xd4\xeb\x3d\x3d\x3d\x77\x97\x05\x32\x38\x38\xe8\x7b\ +\x66\xa3\x2e\xab\x6f\xca\x70\xfe\x0f\xcf\x63\x30\x91\x43\x9a\x05\ +\x24\x1e\x02\x81\x7c\xda\x65\xad\xda\xc1\xe5\x8f\x5c\xc3\x68\x36\ +\xc1\xe5\x77\x5f\xc1\x9a\x37\x5e\xc3\x74\x8b\xbe\x5d\xd9\xef\x64\ +\x6a\x86\xc2\xf6\x9f\xbb\x54\xc7\x72\x60\xfa\x66\x42\x5f\x51\xc5\ +\xea\x57\x93\xcc\xbd\x76\x1e\xd5\x91\x18\x5f\xfa\xd1\x57\x71\xa5\ +\x8b\xa1\x46\xd0\x23\x1a\x42\xf8\x1b\x54\x55\xd5\x43\xe2\x2e\x6b\ +\xef\xf7\x84\x58\x96\x85\x2d\x1c\x34\x45\x63\x30\xbf\x97\x33\x62\ +\x0b\xe8\x89\x99\x24\x0a\x7e\xfc\xa1\x69\xfe\xd4\x75\x05\x95\xa5\ +\xd7\x8d\x62\x67\x64\x10\x04\xda\xb6\xcd\xa2\x45\x8b\x68\x98\x6d\ +\xa2\x0a\x85\x4e\x6d\x2f\x47\x2c\xd2\xb1\xfb\x2a\xce\xb6\x07\x22\ +\xc8\x74\xe8\x5d\x41\x9d\x2d\x5b\xb6\x00\xdc\x5d\x56\x59\x93\x27\ +\x4f\x26\x12\x89\x20\x84\xa0\xcf\x19\xa1\xee\xfc\x21\x26\xca\x2a\ +\x9c\xfe\x0a\xac\xde\x0a\xdc\x78\x08\xe4\xbe\x89\x6a\xaa\xc6\xb1\ +\x77\xef\x5e\x22\x54\x51\x1b\x6e\xc4\x73\x07\x71\x1c\x27\xf0\xee\ +\xd4\x9c\x47\x7d\x63\x3d\xe3\xea\xc6\xa1\x28\x0a\x3b\x0b\xfd\xcc\ +\xfc\x5c\x91\x58\x4c\xc7\x4d\xc7\xb0\x7a\x23\x38\x83\x35\x58\xfd\ +\x61\x14\x45\x04\xaa\x13\xa0\xbb\xbb\xfb\xaf\x2b\x90\x52\xa9\x84\ +\xad\x49\xa4\x0c\x63\xd7\x6c\x27\x31\xec\x70\xd2\xc7\x8e\xe4\x57\ +\x9b\x6e\xa0\x2f\xd9\xc7\x59\x67\x9d\xc5\xa5\x97\x5e\xca\xf2\xe5\ +\xcb\x69\x6f\x6f\x67\x68\x68\x08\xd7\x75\x71\x5d\x97\x81\x81\x01\ +\xca\x71\x4a\xca\x29\x10\x3d\x39\x4b\xa8\x39\x8a\xd7\x90\x44\x3b\ +\x4a\x10\x12\x15\x38\x25\x0f\x55\x68\x0c\x3d\xd0\xe8\x63\x4f\xfb\ +\xdd\x7c\xf9\xfb\x72\xec\xa0\x08\x85\x2d\xd6\x1e\xe6\xd5\x36\x53\ +\xb2\x0a\xd4\xcc\x0b\x51\x98\xdd\x0b\x48\x84\x13\x22\xbd\xaa\x9a\ +\xe2\x8e\x30\x00\x21\x11\xe6\xba\x57\xcf\x23\x5b\xca\x60\xd9\x56\ +\xa0\x72\x00\x2a\x84\x82\x3b\x36\xa7\x10\x82\xbe\xd2\x28\x27\x37\ +\xd6\x51\x2c\xba\x1c\x39\xe3\x38\xb6\xd6\xac\x40\xce\x75\x11\xa8\ +\xe4\x36\x45\xc9\xac\xa9\x02\x21\x51\x14\x05\xcf\xf3\x3e\x78\x81\ +\x8c\x1f\x3f\x9e\x81\x81\x81\x03\x8d\x8e\xa2\x38\xc9\x64\x92\x54\ +\x2a\x85\xad\x79\x94\xac\x18\x8e\x90\xdc\xf5\xc6\xd7\xf9\xc6\x19\ +\x37\x23\xc3\x26\x96\x5b\xe0\xfa\xeb\xaf\x67\xd9\xb2\x65\x7c\xfe\ +\xf3\x9f\x47\xd7\x75\x22\x91\x08\x3b\x76\xec\xa0\xb2\xb2\x92\xf6\ +\xf6\x76\x5f\xa0\xb6\x8d\xed\xda\x18\x9a\x4a\x6a\x48\xe5\x07\x17\ +\x3e\xcd\x60\x7a\x80\xfb\x36\x5d\xcf\xe2\x79\x7f\xc3\xf3\x5d\xf7\ +\x8e\xb9\xc5\xbc\x43\x20\x65\xe1\x5a\x96\x85\x22\x04\x8a\xa2\x60\ +\xd9\x36\x5f\x3d\xfc\x67\x64\x44\x17\x9a\xe1\x91\x1c\x75\x58\x91\ +\xf8\x39\x49\x7c\x7b\x20\xa5\xc4\x93\x1e\xdd\xdb\x06\x48\xec\xb4\ +\xc9\xc6\x4b\x38\xd5\xfb\x3c\xc2\xa8\x50\x02\x35\x26\x84\x00\x01\ +\x25\xd3\xe4\x82\xe6\xef\x31\xaa\xb7\x73\xcd\x82\x7b\x78\x65\xf3\ +\xcb\x64\x22\x1d\xb4\xb3\x0b\xdb\xb6\x90\x48\x34\x4d\xc3\xb6\x6d\ +\x54\x55\x7d\xcf\xce\xc9\x7b\x12\xc8\xc0\xc0\x00\x6d\x6d\x6d\xff\ +\xbb\xba\xba\xfa\x68\x3f\x00\x13\x8c\x26\x46\xe7\xab\xaa\x8a\xa2\ +\x28\xe8\x52\xc1\xc9\x48\x72\x03\x2e\x76\x9f\xe0\xeb\xff\xf2\xcf\ +\xa4\x77\x49\x4a\xa3\x82\xaf\x7c\xe5\x2b\x7c\xfb\xdb\xdf\xe6\x57\ +\xbf\xfa\x15\xdb\xb7\x6f\x47\x4a\x49\x22\x91\x20\x16\x8b\xd1\xd9\ +\xd9\x49\x7d\x7d\xbd\x1f\x19\x4b\x1b\x01\x1c\x1e\x5e\xcc\x9a\xc1\ +\xa7\xd9\xd3\x35\xca\x39\xe3\xff\x0f\x0b\x0f\x3b\x96\x35\x43\xcf\ +\xb2\xd3\x2c\xbd\xab\x40\xca\x27\xc4\x71\x1c\x14\x04\x4a\xa5\xa0\ +\x73\x67\x96\x23\xcf\x9b\xcd\x65\xbf\xbd\x9c\xfb\xfe\x76\x1d\xc3\ +\x75\x23\x78\x03\x23\x3c\xe4\xfc\x0e\xd3\x1c\xfb\x7f\xcd\x63\xe5\ +\x77\x53\xa8\xba\x40\x11\x0a\xc5\x62\x91\x62\xb1\x08\x40\x95\x1b\ +\xc2\x75\x55\xff\xd4\x29\x0a\x42\x48\x46\x86\x4a\x9c\xfd\xe9\x4f\ +\x72\xe5\xd3\x37\x70\xe6\xd4\x8b\x99\xde\x30\x8f\x94\x6e\xb0\xc1\ +\xdd\x8e\x69\xfa\x0e\x85\x94\xfe\xeb\x43\x31\xea\xe3\xc6\x8d\xfb\ +\xc2\xb4\x69\xd3\x8e\x07\x70\xa5\xc7\xfa\x3d\x6f\xa0\x0a\x95\x89\ +\x13\x27\x62\xdb\x36\xe9\x67\x2d\x52\xd2\x43\x4a\x81\x94\x61\x34\ +\x40\xd3\x2d\xfa\xfa\xfa\xb8\xf4\xd2\x4b\xdf\x75\xce\x5c\x2e\x47\ +\x2c\x16\xf3\x5d\x67\xe1\x20\x84\x42\xa5\x51\x83\xe5\x16\x71\x3d\ +\x97\xba\x86\x10\x5d\xa9\xad\x64\xac\x04\x96\xa5\xa1\x68\xe2\x1d\ +\x02\x51\x14\x25\x38\x25\x02\x81\xa2\xa8\xb8\x2e\x68\xaa\x8a\x10\ +\xfe\xc2\x38\x8e\xc3\xea\x9e\xdf\xe3\xb9\x2e\x96\xe5\x05\xae\xf2\ +\x9c\xf9\xb3\xe9\xe8\xe8\x20\x16\x8b\x05\xaa\x13\xc0\xf1\x94\x7d\ +\xa7\x4e\x51\xc0\xd8\x87\x7e\x0a\x45\x41\x08\x41\xb6\x94\x65\xc3\ +\xc8\x92\x60\x2e\xc4\xbe\xe0\xf0\x60\x91\x86\xbf\x48\x20\x9e\xe7\ +\x09\xd3\x34\x91\x52\xf2\x96\xd9\x4b\xed\x14\x97\xe3\x9a\x8e\xe7\ +\x9c\x73\xce\xe6\xe4\x93\x4f\xe6\xa7\x3f\xfd\x29\x5b\xb7\x6e\x65\ +\xfe\xfc\xf9\xac\x5c\xb9\x92\x99\x33\x67\xb2\x66\xcd\x1a\xe2\xf1\ +\x38\xe1\x70\x98\x7c\x3e\x1f\xec\x9c\x8c\x52\x62\xfc\x1c\x85\xfa\ +\xc4\x54\x8a\xd9\x9c\xef\x18\x28\x0e\x8a\xa2\x32\x9c\xeb\x61\x7e\ +\x74\x2e\x03\xc2\x64\xb4\xd0\xcf\x84\xc8\x44\x84\x14\x58\xa6\x85\ +\x70\xdf\x79\x42\xf6\x07\x0f\x05\x02\x01\x34\x35\x45\xc8\x65\x1c\ +\xa4\xeb\xab\x26\x17\x9b\xb0\x52\x85\xeb\x66\x30\x4d\xb7\x0c\x8b\ +\x80\x84\x49\x93\x26\xa1\x69\x1a\xae\xeb\x06\xf3\x2a\x1b\x24\x39\ +\x27\x03\x58\xbe\xca\x0a\x43\x7d\x7d\x84\xcd\x3b\x77\x20\x2d\x1d\ +\x45\x51\x48\x17\xe3\x1c\x56\x7d\x34\x3b\xdc\x17\xb0\x2c\x5f\x65\ +\x95\x6d\xc7\x87\x22\x10\x29\xe5\x3e\xfd\xeb\xf9\xae\xa4\x10\x82\ +\x9a\x9a\x1a\x22\x91\x48\xe0\x7f\x87\x42\x21\x8e\x3a\xea\x28\xf6\ +\xee\xdd\xcb\xd1\x47\x1f\xcd\xba\x75\xeb\x30\x0c\x83\x9a\x9a\x1a\ +\xd2\xe9\x34\x42\x08\x52\x86\xc7\xb4\x4f\x45\x08\xaf\x9e\xc6\x96\ +\xd5\xeb\x7c\xf0\x51\xf7\x50\x44\x98\x41\x63\x39\x13\xf5\x8b\x68\ +\x9a\x3f\x9d\x7b\xd6\xff\x1b\xe7\x86\xfe\x91\xaa\x70\x2d\x25\xab\ +\x0f\xe5\x5d\x04\x22\x84\x1f\x2f\x94\x4a\x25\x94\x31\x2c\x63\xc2\ +\xc4\x6a\x7e\xf2\xca\xb7\xb8\xeb\xc2\x65\xdc\xf4\xda\xc5\x48\x33\ +\x42\x63\x4d\x33\xb6\xd3\x45\xa9\x64\xf9\xaa\xc5\x15\x8c\x3f\x5d\ +\x62\x0e\x55\xe1\x66\x75\x9c\xa4\x06\xb6\x82\x50\xfd\x13\x35\xe2\ +\x24\x82\x13\xe2\x54\xba\x54\x55\x86\xb9\x73\xdd\xff\xe6\xa7\x9f\ +\x5b\xca\x7f\x6d\xb8\x86\x1d\x99\x0e\x5a\xf4\x56\x6c\xd7\x22\x9f\ +\x2f\x80\xf0\x05\xa2\x28\xca\x87\x76\x42\x28\x9f\x10\x4f\x78\x28\ +\x42\xa1\xbd\xbd\x9d\xd1\xd1\x38\xc3\xc3\xc3\x14\x0a\x05\x00\x3a\ +\x3a\x3a\x02\x5d\xea\xba\x6e\xb0\x6b\x4a\xa5\x12\x86\x61\xf8\x49\ +\x28\xdd\xa3\xc2\x30\xd8\x34\xf4\x3a\x89\x44\x8e\x62\xb1\x88\x19\ +\x92\x14\xad\x18\x46\x34\xc2\xb5\xbf\xbb\x98\xbb\xbf\xf2\x5b\x32\ +\xde\x20\x8f\x75\xfc\x88\x52\xca\x63\x74\x64\x14\xcd\x50\xca\x6a\ +\xca\xdb\x5f\x20\xc5\x62\x91\x54\x2a\x85\x40\x50\x30\x25\x25\xcb\ +\xa4\xcb\x7b\x85\x5f\x2f\xbf\x87\x86\xda\x09\xac\x8b\x2f\xc5\x4b\ +\x08\xba\x37\x26\xc9\xa7\x7d\xf7\x56\xc3\xa0\x75\x41\x05\xfd\xf1\ +\xbd\xfe\x42\x86\x24\x89\x57\x63\x14\x3b\xa2\x41\x90\x58\x2c\x16\ +\xfd\xf9\xab\x3c\x2c\xd7\x82\xaa\x38\x5f\xfb\xed\xe7\x39\x72\xc6\ +\x0c\x52\xb9\x61\x92\xf1\x38\x3b\x96\x24\xc9\xe7\xfd\x39\x85\x10\ +\x18\x86\xf1\xe1\xa0\xbd\xe5\x88\x18\x40\xea\x12\x90\xd4\x8f\x1b\ +\x47\x3c\x1e\x47\x51\x14\x2a\x2b\x2b\xff\x64\x10\xd9\xdf\xdf\x4f\ +\x32\x99\x44\x51\x14\x72\xc2\xa1\x64\x57\x10\xad\xcf\x93\x56\x55\ +\x54\x55\x45\x43\x82\x10\x08\x45\x50\x69\x48\x2e\xfa\xe6\xa7\x19\ +\xed\xb0\x49\xed\x2e\x20\x14\x81\x51\xa1\x07\xf3\x19\x86\x71\xf1\ +\x84\x09\x13\xf6\xf4\xf7\xf7\xdf\x2a\x84\x40\x1d\x9b\x43\x11\x0a\ +\x46\xc1\x45\xba\x92\x64\x07\x3c\xbc\xfd\x1e\x86\x37\x5b\x98\x69\ +\x17\x31\x16\x2f\x68\x9a\xe6\x67\x03\x3d\x97\xd3\x26\xfc\x23\x62\ +\xa2\x43\x7a\x58\xf0\x4a\xf2\x36\x46\x6c\x5f\xf5\xb9\xae\x8b\xa2\ +\x28\x68\x9a\x86\xa2\x28\x44\xd3\x2e\xe9\x5e\x87\xfe\x0d\x26\x89\ +\x1d\x9b\x78\x7e\xef\xfa\xfd\x5c\x5b\x81\xae\xeb\x48\x29\x83\xa0\ +\xf0\x50\x9c\x10\xf5\xcf\xbd\xa1\xa1\xa1\xe1\x52\x55\x55\x27\xba\ +\xae\x4b\x56\xb5\x98\xff\xe9\x28\x67\x1c\xfd\x0f\x94\x66\x6c\xe2\ +\xb2\xcf\x5c\x87\xd1\xa2\x30\xfe\x38\x41\x32\xba\x87\xee\x35\x19\ +\xf2\x85\x3c\x85\x42\x81\x81\x81\x01\x2b\x9b\xcd\x5a\xb6\x6d\xab\ +\x8e\xe3\x08\x29\x25\xc5\x88\xc7\xec\x8f\x57\x92\xed\xb5\x29\xec\ +\xd1\x88\x44\x22\x18\x42\xa3\xd8\x01\x5d\x2f\x9a\x0c\xac\xb4\xc9\ +\x74\x4a\x9c\xac\x8f\xbe\xaa\xaa\x5a\x4e\xc5\x22\x84\x60\xe2\xc4\ +\x89\x24\x12\x89\x64\x38\x1c\x56\x33\x99\xcc\xce\x58\x2c\x76\x7c\ +\xb1\x58\x54\x9a\x9b\x9b\x09\x25\x25\x7b\x5f\xb2\x19\xdd\xec\x52\ +\xe8\x07\x5c\x05\x4d\x53\xc7\xbc\x25\x7f\x3e\x21\x04\x9a\x30\xc8\ +\x1f\xdd\xce\xff\x3a\xf6\x7b\x44\x8d\x2a\x06\x0a\xbb\xd9\xbd\xb9\ +\x97\x5c\x9f\x87\xe3\x38\x14\x0a\x05\xc6\x8f\x1f\xcf\x55\x57\x5d\ +\x45\xba\x6f\x84\xe4\x46\x0d\x67\x28\x44\xc8\xad\x20\x52\x11\xa1\ +\xa2\xa2\x02\x45\x51\x08\x87\xc3\x01\xa0\x68\x18\x06\xf1\x78\xfc\ +\x51\x55\x55\x1f\x2b\x14\x0a\xde\x07\x2e\x10\x60\xa2\xe7\x79\xe4\ +\x0d\x87\x39\xa7\x56\x93\x74\x07\xb9\xee\x9c\x3b\x18\x12\x6f\xb1\ +\x31\xf5\x02\x0b\xe7\x9c\xca\x9e\xc4\x56\x06\xd6\xfa\xd8\x96\xa2\ +\x28\x4c\x9f\x32\x53\x9d\x75\xf8\x6c\x3d\x91\x4a\x88\x52\xa9\x44\ +\xa9\x54\xa2\xca\x32\xc8\x74\xb9\xf4\xaf\xcb\x33\x67\xd6\x3c\x6e\ +\xbd\xf5\x56\xae\xb8\xe2\x0a\xf6\xee\xe9\x26\x16\x8b\xb1\x60\xc1\ +\xf1\x84\x42\x21\xe6\xcc\x99\xc3\xcc\x99\x33\x31\x4d\x93\x29\x53\ +\xa6\x30\x69\xd2\x24\xe2\xf1\x38\x91\x48\x84\xda\x58\xdd\x2c\x4f\ +\xba\x17\xcc\x99\x33\x67\x61\x32\x99\x54\xee\xbe\xfb\x6e\x2e\xbf\ +\xfc\x72\x6a\x6a\x6b\xd1\x43\x3a\xf3\xe6\xcf\xa3\xb2\xaa\x92\xb9\ +\x73\xe7\x00\x30\x6f\xde\x3c\xa6\x4d\x9b\x86\x94\x92\x48\x24\x42\ +\x3e\x5b\x64\xea\xe2\x6a\xce\x9e\x71\x31\xd9\x42\x8e\xe7\x3a\xef\ +\x22\xb1\xdd\x09\x04\x52\x2c\x16\x79\xf9\xe5\x97\x91\x52\x72\xd2\ +\xc9\x27\x91\x2f\xe4\x99\x35\x7b\x16\x55\x55\x55\xcc\x9b\x37\x0f\ +\x80\x73\xce\x39\x87\xe9\xd3\xa7\x07\x73\x16\x8b\x45\xb6\x6d\xdb\ +\x36\xe7\x2f\x15\xc6\x41\x81\x8b\x8e\xe3\x30\x3a\x3a\xca\xe8\xe8\ +\x28\xe9\x4c\x86\xa2\x55\xa4\x10\xd9\xc5\xf7\x9f\xfa\x2e\x9a\xae\ +\x90\x55\xba\x79\xea\xad\xbb\xe9\xeb\x48\x92\x4c\x26\x48\x24\x12\ +\xa4\x53\x19\xd4\xd3\x76\x23\x3e\xbe\x1d\x19\x29\x71\xc2\x09\x27\ +\xb0\x7e\xfd\x7a\x3e\x76\xcc\xd1\xc4\xec\xf1\x54\x68\xd5\x4c\x99\ +\x32\x85\x64\x32\x49\x73\x73\x33\xe3\xc7\x8f\xa7\xb6\xb6\x96\xa9\ +\x53\xa7\x32\x7d\xfa\x74\x14\x45\x61\xf2\xe4\xc9\x68\x9a\x46\x38\ +\x1c\xa6\xb1\xb1\x31\xd8\x8d\xea\xcc\x38\x42\x11\x54\x54\x54\xe0\ +\x79\x1e\x8d\x8d\x8d\xc4\xe3\x71\x26\x4d\x9a\x84\xeb\xba\x4c\x98\ +\x30\x81\x86\x86\x06\x66\xce\x9c\x19\xc0\x34\x75\x75\x75\x9c\x7e\ +\xfa\xe9\x14\x0a\x05\x54\x45\xa1\x52\xaf\xc5\x76\x4d\x2c\xcf\xa4\ +\xda\x68\x08\xbc\xb5\xb2\xda\xea\xea\xea\xc2\x75\x5d\x86\x87\x87\ +\xf1\x3c\x8f\xda\xda\x5a\xf2\xf9\x3c\x9a\xa6\x91\x4c\x26\xe9\xeb\ +\xeb\xc3\x71\x1c\x9a\x9b\x9b\x29\x95\x4a\xc1\x49\xfe\x50\x68\x40\ +\x33\x67\xce\x5c\x63\x9a\xe6\x71\x8a\xa2\x90\xaa\x74\xf8\xd4\x37\ +\x1b\x31\x0c\x41\x6a\xb7\xc3\xf0\x16\x93\xf8\x5b\x16\xf9\x61\xf7\ +\x00\x6c\x47\x55\x35\xce\xb9\xe2\x54\xf4\x79\x7b\x78\xf1\x3b\x7b\ +\xf8\xc9\x0d\x3f\x23\x9d\x4e\x73\xef\xbd\xf7\x52\x53\x53\x43\x67\ +\x67\x27\xae\xeb\x72\xec\xb1\xc7\x92\x4c\x26\xe9\xef\xef\x0f\x9c\ +\x01\xcf\xf3\xde\xf1\x2a\xbb\xa6\x95\x95\x95\x0c\x65\x7a\x50\x4c\ +\x83\x19\x33\x66\x32\x3c\x3c\x4c\x65\x65\x25\x0b\x16\x2c\x60\xcd\ +\x9a\x35\x7f\xf6\xff\x1d\xc7\x21\x97\xcb\xb1\x6b\xd7\x2e\xae\x7f\ +\xf9\x73\x14\xf3\x50\x5d\xa3\xb1\xf2\x81\xdd\x0c\xac\xdd\x67\x43\ +\xde\x4b\x5e\xbd\x7c\x4a\x56\xad\x5a\x25\x3e\x14\xa3\x5e\x1e\xcd\ +\xcd\xcd\x18\x89\x24\x1b\x6f\x2e\xe2\x94\xe4\x18\x6b\x44\x22\xd1\ +\x30\x0c\x35\xb8\x38\xcf\xf3\x50\x04\x7c\xe6\xd8\xbf\x27\xde\xb4\ +\x89\x57\x42\x77\xf2\xfd\xef\x7f\x9f\x6f\x7e\xf3\x9b\x64\x32\x19\ +\x22\x91\x08\xb6\x6d\x53\x55\x55\x45\x7b\x7b\xbb\x7f\xf3\x08\x3c\ +\x57\xe2\x49\x17\x21\x14\xdf\xb0\x2a\x1a\x9e\x94\x28\x42\x09\x22\ +\x75\xcb\xb2\x68\xaa\x6e\x65\x64\x64\xc4\x8f\x01\xa4\xc4\xb1\x1d\ +\x96\xbd\xf2\x1a\xae\x74\xd0\x14\x1d\x4f\xfa\x71\x8d\x82\x8a\x16\ +\xd2\x82\x6d\x27\x3c\x81\xeb\x4a\x9c\xa2\xc7\xcf\x97\xdf\x49\x63\ +\xb4\x85\xcd\x85\xe5\x14\x6d\x95\x3d\x6f\xc4\x29\x26\xfd\x20\x33\ +\x1c\x36\xd0\x09\x53\x74\xf2\x44\x42\x11\x2c\xdb\xf6\x6d\x11\x3a\ +\x8a\x2e\x0f\xd8\xc2\x41\x7c\x95\xc9\x7c\x78\x39\x75\xdb\xb6\xb9\ +\xfa\xea\xab\x59\xb4\x68\x11\x8e\xe3\xf0\xe8\xa3\x8f\x92\xc9\x64\ +\x82\xa0\xaf\x50\x28\x30\x7d\xfa\x74\xde\x7c\xf3\x4d\x12\x89\x04\ +\xf5\xf5\xf5\x6c\xdd\xba\x15\x4d\xd5\x58\xd3\xf3\x1c\x21\xcd\x20\ +\x97\xcb\xf1\xf5\xaf\x7f\x9d\x42\xa1\x40\x4d\x4d\x0d\xd1\x68\x94\ +\xad\x5b\xb7\xd2\xd8\xd8\xe8\xab\x0b\xc5\x65\xce\xe7\x22\x1c\x3b\ +\xee\x42\xcc\x70\x1f\xa9\xbe\x30\xeb\x7b\x5e\xe5\xf4\x63\x4e\x66\ +\xdd\x8e\x57\xd9\xf3\x8c\x83\xa2\x41\x43\x43\x03\xc5\x62\x31\xf0\ +\xfc\x5c\xc7\xa1\xdb\xeb\x67\xde\x19\x95\x5c\x71\xc2\xcd\xfc\x62\ +\xe3\xb7\x38\xa5\xf1\x32\x56\xed\x7a\x95\x7c\xc5\x36\xb6\x3c\x90\ +\x21\x9f\x2d\x20\x10\xe4\xc6\x79\x2c\x38\x3b\x86\x18\xf6\x78\xfc\ +\xf9\x9f\x92\xee\x76\x31\x47\x20\xdb\xe7\x60\xe7\xf7\x79\x4a\x9e\ +\xa5\x70\xfa\x1d\x2d\xfc\xe8\xec\xdf\xf3\x99\xff\xfc\x24\xff\xf2\ +\xe9\x7f\x47\x91\x21\x36\x24\x7f\xc7\x0b\xff\xf5\x06\xa5\x3e\x3d\ +\x10\xca\x4b\x2f\xbd\xd4\x0c\x0c\x1f\x4a\xb6\xcc\x41\xb9\xbd\x93\ +\x27\x4f\xa6\x58\x2c\x32\x73\xe6\x4c\x14\x45\x61\xda\xb4\x69\x54\ +\x56\x56\x52\x55\x55\xc5\x53\x4f\x3d\x15\x18\xe2\x4c\x26\xc3\xc6\ +\x8d\x1b\x09\x85\x42\x08\x04\xba\x88\x50\x74\xf2\xec\xdd\x35\xe2\ +\xbb\x91\xd1\x68\x80\x13\x95\xed\x83\x6d\xdb\x48\xcd\x63\xe2\x91\ +\xd5\xbc\x35\xf8\x2a\x3f\xb8\xe0\x01\x4c\x25\xc5\x7f\x3c\xbb\x86\ +\xc5\x27\x9f\x4d\x9f\xda\x4e\xef\xf3\x69\xd4\x90\x4f\xa6\x2b\xc3\ +\xe5\x96\x65\x11\x0e\x47\x30\xea\x1c\x5a\xe6\xd7\x70\xc6\x19\x67\ +\xb0\x54\xf9\x21\xc7\xb7\x9e\xc8\x50\xa4\x8b\xe1\xe8\x5e\xba\xaa\ +\x3c\x0c\x3d\x4c\x43\x43\x03\xc3\x83\x43\x74\x3d\x06\x42\x11\xc4\ +\x55\x90\x63\xe6\x53\x78\x1a\x46\x58\x04\x2a\x53\x95\x1a\x8a\x5d\ +\x85\xc4\x25\x4b\x2f\x4d\x35\xcd\x3c\xbf\xfa\x55\x76\x2a\x1b\xf1\ +\xc6\xd4\x1e\xc2\xf7\xfc\xaa\xaa\xaa\xc8\x66\xb3\x87\x94\xba\xf4\ +\x67\x05\x12\x89\x44\xb8\xe9\xa6\x9b\x38\xf7\xdc\x73\xf9\xde\xf7\ +\xbe\x47\xa9\x54\x0a\x74\x72\x59\x3f\xf7\xf6\xf6\x1e\x60\x03\x14\ +\xa1\xb0\xec\xad\xa5\xcc\x3d\xfe\x44\xd6\xb6\x75\xe3\x0c\x86\x89\ +\x46\xa3\xa4\xd3\xe9\x03\xd2\xb5\x89\x44\xc2\x0f\xc6\x42\x12\xcb\ +\x0d\x53\xd1\x58\xe2\x7b\x7f\xb8\x86\x1b\x3f\xf3\x13\x8c\x4a\x87\ +\x5f\x6e\xfc\x0f\xe2\x03\x26\xa9\x74\x12\x45\x13\xd8\xb6\x1d\xc4\ +\x13\x65\xbe\x95\x94\xe0\x78\x26\xb9\x62\x0e\x2b\x6b\xa0\x1a\x16\ +\xaa\xaa\x53\x1f\x6a\xa3\x64\x6e\xe0\xb6\x1f\xdf\x41\x7d\x7d\x3d\ +\xab\x56\xad\x62\xe3\xc6\x8d\x84\xc3\x61\x7a\x7a\x7a\x68\x6c\x6c\ +\xa4\xab\xab\x8b\xd9\xb3\x67\x63\x59\x16\x1b\x36\x6c\xa0\xa2\xa2\ +\x82\xbe\xae\x01\x14\x0d\x54\x55\xc7\x71\x05\xae\x74\x89\xe8\x61\ +\xa4\xe7\xe1\xd8\x0e\xa6\xe5\x93\x1b\xca\xc1\xee\x87\x4e\x03\x72\ +\x5d\x57\xaf\xac\xac\x64\xe9\xd2\xa5\xc1\x05\x94\x8d\x5e\x39\x30\ +\x13\x12\xf6\x4f\x29\x3b\xb6\xc7\xda\xc4\x23\x74\xf7\x45\x48\x0d\ +\x65\x49\xa7\x0b\x54\x55\x55\x51\x57\x57\x17\x08\xa4\x1c\x50\x79\ +\x9e\x87\x82\x44\x0b\x0b\x8a\x09\x97\xc1\x9d\x5b\x39\xeb\xcb\x27\ +\x91\xeb\xf5\xb0\xf3\x12\x2b\xe3\xa2\x85\xf6\xc5\x23\xe5\xcd\x50\ +\x2a\x95\x90\x9e\xc4\x71\x3c\x22\x51\x95\x6b\x9f\xfd\x2c\x37\x9e\ +\xf9\x30\xbf\xd8\x72\x1d\x83\xfa\x4e\x1a\xf4\x06\xa4\x84\x71\xe3\ +\xc6\x91\xcd\x66\x69\x6d\x6d\x65\xdd\xba\x75\xcc\x9f\x3f\x1f\xcf\ +\xf3\x98\x3d\x7b\x36\x43\x43\x43\xe4\xf3\x79\xda\xda\xda\x98\x35\ +\x6b\x16\x0f\x3c\xf0\x00\x42\x51\x70\x34\x3f\xfa\xff\xdb\xa3\xff\ +\x89\xbc\xec\x47\xa2\x72\xc6\x94\x7f\x60\xab\x73\x27\xd6\x98\x40\ +\x0e\x55\x86\xf0\x3d\x7b\x59\x55\x55\x55\x0b\x3c\xcf\xab\x79\x9b\ +\x67\x51\xdb\xda\xda\xfa\x50\x2e\x97\x43\x48\x70\xa7\x08\x8e\x3b\ +\xb7\x9a\xfc\x90\x4b\x7e\xd8\xa5\x30\xe4\x11\xa9\xd2\x29\xa5\x3d\ +\x92\xbb\x6c\x3c\xe9\x32\x79\xf2\x64\x74\x5d\x27\x97\xcb\x61\xdb\ +\x36\xc3\xc3\xc3\x84\x42\x21\xe6\xcd\x9b\x47\x5f\x6f\x1f\x96\x6d\ +\xe3\x99\x72\x8c\x08\xed\x3b\x0c\xae\xeb\x1e\xa0\x3a\xa3\xd1\x28\ +\xa5\x52\x89\x7c\x3e\xef\x5f\xbc\x04\x73\x9a\xe0\x6f\xbe\xd1\x84\ +\xeb\x42\x4b\xf8\x28\xc6\x37\xd7\xb2\x7a\xd7\x4b\xe4\xfa\x5d\xba\ +\x1e\x0c\xd1\x32\xb1\x95\x63\x8f\x3d\x96\x17\x5e\x78\x21\x88\xa6\ +\x2d\xcb\xc2\x30\x7c\xdb\x56\xce\x65\xf8\xfc\x00\x81\x5d\xf0\x38\ +\xed\xce\x4a\xf2\x43\x06\x3f\xff\xfc\x52\x6e\x5a\xf1\x65\xba\xd2\ +\x6f\x22\xf1\xd8\xfc\xd3\x12\xc9\x4e\x07\x90\xd4\xd6\xd6\xb2\x73\ +\xe7\xce\xe6\x64\x32\x39\xf4\xa1\x0a\xe4\xdd\x86\xae\xeb\x4d\xf3\ +\xe7\xcf\x1f\x4c\xa5\x52\xd4\xd4\xd4\x90\xcb\x66\x71\x2c\x3f\x5f\ +\x82\x02\x8a\xcf\xb2\x39\x00\xdb\x6a\x69\x69\x61\x60\x60\x00\xcf\ +\xf3\x13\x40\xa6\x69\x72\xdf\x7d\xf7\xd1\xd2\xd2\x82\xa2\x28\x3c\ +\xf9\xe4\x93\xec\xde\xbd\x1b\xd7\x75\x03\x6f\x6c\xc2\x84\x09\x74\ +\x76\x76\x92\x4c\x26\xd1\x34\x8d\x74\x3a\x4d\x22\x91\xc0\x34\xcd\ +\x40\x75\x79\x8d\x82\x93\xff\xb1\x96\xf8\x0e\x9b\x54\xa7\xcd\xe8\ +\x36\x0b\x33\xe5\xa1\x68\x82\xc6\xf1\xf5\x41\x2a\xf9\xcf\x79\xaf\ +\xe5\xb5\xc8\xa5\x0a\x1c\xf5\x8d\x10\x4e\x49\x52\xa1\xd6\xa1\xaa\ +\x1e\x59\x33\x49\xba\xc7\x61\xfb\x13\x39\x3c\xc7\x37\x19\xd5\xd5\ +\xd5\xe4\xf3\xf9\x33\xc3\xe1\xf0\x68\x2a\x95\x32\x7b\x7a\x7a\xb6\ +\xfe\x55\xb9\xbd\x42\x08\x1e\x7d\xf4\x51\xa4\x94\xac\x5c\xb9\x92\ +\xdd\xbb\x77\xd3\xdb\xdb\xeb\x67\x01\xc7\x5e\xaa\xaa\x62\x18\x06\ +\x9d\x9d\x9d\x44\x22\x11\x74\x5d\x3f\x80\xa1\x31\x7d\xfa\x74\x5e\ +\x7f\xfd\x75\x3e\xfb\xd9\xcf\xd2\xda\xda\x4a\x24\x12\xa1\xbf\xbf\ +\x9f\x19\x33\x66\xd0\xde\xde\x8e\x61\x18\x34\x34\x34\x90\xcd\x66\ +\x49\xa5\x52\xe8\xba\xee\xa3\xbb\x8a\x82\x61\x18\x7c\xf1\x8b\x5f\ +\xe4\xe5\x97\x5f\xa6\xe7\xa1\xb1\x39\x5d\x97\x71\x31\x0f\xb7\xd2\ +\xb7\x65\xfb\x7b\x64\xb1\x58\x8c\xed\xdb\xb7\x9f\x52\x2a\x95\xf6\ +\xbc\xed\x56\x8e\x3e\xfc\xf0\xc3\x9f\xc8\xe5\x72\x14\x0a\x05\x16\ +\x2d\x5a\x84\xb2\xbc\x92\x10\x50\xf0\x6c\xb4\x3a\x0b\x2d\x35\x91\ +\x06\x04\x0d\x27\xbe\x63\x19\x5e\x50\x55\x95\x8e\x8e\x8e\x1d\x3d\ +\x3d\x3d\x33\xff\x6a\x27\x44\xd3\xb4\xa6\xa3\x8f\x3e\x7a\xf0\x96\ +\x5b\x6e\xa1\xa9\xa9\x09\xc3\x30\xb8\xe1\x86\x1b\x68\x68\x68\x40\ +\x55\x55\x16\x2c\x58\xc0\x5d\x77\xdd\x45\x55\x55\x15\x4d\x4d\x4d\ +\x84\xc3\x61\x5e\x78\xe1\x85\x20\xc3\xd7\xd0\xd0\xc0\xde\xbd\x7b\ +\x99\x3e\x7d\x3a\x47\x1e\x79\x24\x83\x83\x83\x24\x93\xc9\x20\xe1\ +\x34\x56\x12\x80\xae\xeb\x14\x8b\x45\x1c\xc7\x21\x12\x89\x04\x64\ +\x02\x45\x51\x78\xf3\xcd\x37\xd9\xbc\x79\x33\x00\x1b\x36\x6c\x40\ +\xd3\x34\x56\xae\x5c\xc9\xe4\xc9\x93\xc9\x66\xb3\x4c\x99\x32\x85\ +\x62\xb1\xc8\xfa\xf5\xeb\x91\x52\x32\x34\x34\xc4\x5b\x6f\xbd\x35\ +\x7d\x74\x74\x74\x57\xf9\x3e\x1a\x1b\x1b\xaf\x2d\x14\x0a\xc7\xd4\ +\xd6\xd6\x5e\x58\xbe\xf6\x6c\x36\x1b\x44\xde\x83\xc5\x61\x2a\x23\ +\x3e\xac\x2e\xed\x31\xe6\xbe\x23\x98\x34\x69\x12\x55\xd5\x55\x3e\ +\x89\x5b\x08\x1c\xc7\xb1\x84\x10\x5d\x63\xea\x5c\xdb\xb4\x69\xd3\ +\x7d\xf1\x78\xfc\x3b\x1f\xea\x09\x51\x14\x85\x47\x1f\x7d\x94\xe3\ +\x8f\x3f\x9e\x67\x9f\x7d\x96\x5c\x2e\x17\xa8\x93\xce\xce\xce\x20\ +\x67\x1e\x8f\xc7\xf1\x3c\x8f\x48\x24\x42\x26\x93\xe1\x86\x1b\x6e\ +\x60\xca\x94\x29\x5c\x7c\xf1\xc5\x98\xa6\xc9\xca\x95\x2b\x03\x1b\ +\x51\x86\x47\xca\xc6\xb2\x9c\xdb\xd6\x75\x1d\xdb\xb6\x09\x87\xc3\ +\x41\x00\xba\x71\xe3\x46\x9a\x9a\x9a\xd8\xb1\x63\x07\xa3\xa3\xa3\ +\x81\x0b\x5d\x59\x59\xc9\xc6\x8d\x1b\x19\x1a\x1a\xa2\xa1\xa1\x01\ +\x5d\xd7\xe9\xed\xed\x45\x55\x55\xa4\x94\xe2\x6d\xc1\xee\x25\x0b\ +\x17\x2e\x9c\x66\xdb\xb6\x44\x22\x8a\xd5\x69\xaa\x62\x1a\x5e\x2a\ +\x84\x9b\xd6\x11\x52\x01\x05\x84\x90\x01\xc8\x64\x95\x2c\x7a\xd8\ +\x4c\xf3\x94\x5a\xdc\x8c\x8e\x9b\xd2\xf0\xb2\x5a\x48\x68\xcc\x00\ +\x08\x87\xc3\x6c\xd8\xb0\xa1\xf1\xc3\x88\xd4\xeb\x92\xc9\xa4\x3e\ +\x56\x5c\xd3\xe0\xba\x2e\x6b\xd6\xac\x61\xf5\xea\xd5\xef\xf0\x36\ +\xca\xbc\xdf\xb2\x6a\xdb\x3f\xc5\x59\x55\x55\x45\xa9\x54\xe2\x17\ +\xbf\xf8\x05\xf7\xde\x7b\x2f\xb6\x6d\x53\x53\x53\x43\x63\x63\x23\ +\x2f\xbc\xf0\x02\xad\xad\xad\xe4\xf3\x79\xb2\xd9\x2c\x9e\xe7\x91\ +\x4e\xa7\xc9\x66\xb3\xc4\x62\x31\x52\xc9\x14\x55\x95\xd5\x14\x4b\ +\x05\x2e\xbb\xec\x32\x62\xb1\x98\x8f\x4f\x8d\xed\x68\x21\x04\x6f\ +\xbd\xf5\x56\x90\xde\xdd\x1f\xde\x18\x37\x6e\xdc\xbb\xb2\xe3\x13\ +\x89\x04\xb6\x6d\x8b\xbd\xf6\x10\xb3\x3f\x69\x22\xa3\x0a\x1e\x0e\ +\xaa\xa6\xe0\xa5\x74\xac\x01\x03\xbb\x2f\x4c\xa9\xd3\x3f\xa1\xd2\ +\x85\xda\x79\x61\xea\x16\x94\x28\xba\x71\x14\x05\x9c\x9c\xca\xf0\ +\x43\x8d\xef\xb8\xe7\x0f\x54\x20\x8a\xa2\xac\xb9\xf0\xc2\x0b\xa7\ +\xbd\x17\xca\x64\x28\x14\xe2\xc5\x17\x5f\x7c\xc2\x34\xcd\x27\x01\ +\xea\xeb\xeb\x6f\xbd\xe9\xa6\x9b\x9a\xce\x3a\xeb\x2c\x56\xad\x5a\ +\x15\xa8\xa7\x72\x1c\xa3\x28\x0a\xbd\xbd\xbd\x07\xe0\x50\xd1\x68\ +\x94\xfa\xfa\x7a\xc6\x35\xd7\xc3\xbc\x21\xaa\x23\x21\x5e\xb9\x6d\ +\x37\xb1\x58\x2c\x60\x9d\x1f\xcc\xd8\x3f\x95\xfc\x76\x3a\xaa\x6d\ +\xdb\x58\xd2\x46\x41\x41\xcf\x4d\xe4\xe6\xf3\xee\xe1\x85\xdd\xbf\ +\xe6\xf9\xd1\xc7\x99\x3c\xbf\x9e\xbe\xd8\x20\xd9\xed\x5a\x70\x6a\ +\x3f\x31\xe1\x5c\xae\x38\xf5\x6a\xbe\xf0\xd3\xd3\xf8\xa7\xf3\xaf\ +\xe4\xd1\x55\xf7\x04\x39\xa3\xbf\x94\xe8\x70\xd0\x02\xf1\x3c\xaf\ +\xaa\x4c\xb1\x1c\x75\x33\x4c\xbc\x20\x4d\xa4\x42\x01\x4b\xc1\xb3\ +\x15\xdc\x94\x86\x35\x60\xe0\x0c\x19\xb8\x19\x1d\x21\xfc\xaa\xa8\ +\x50\x28\xd4\x3e\x30\x30\xf0\xeb\x31\x28\xff\x3f\xea\xeb\xeb\x1b\ +\x57\xae\x5c\x29\xf6\x8f\x63\x74\x5d\xff\x93\xe0\x5d\x3e\x97\x67\ +\x43\x7e\x07\x67\xcc\xaa\x40\xd5\x2d\x16\xde\x58\x81\xa6\x14\xd0\ +\x55\x1d\xd7\x96\x38\x71\x83\xd4\xd2\xda\xe0\x7f\x5e\x7b\xed\xb5\ +\xaf\xe6\xf3\xf9\x47\xde\xb6\xa1\xdc\xa6\xa6\xa6\xfc\xdb\xe7\x37\ +\x4d\x13\xc7\x76\xf0\x54\x3f\x99\xf5\x99\xe9\xd7\xf0\x5f\xab\xff\ +\x9d\x2f\xcc\xfa\x57\x66\x2d\xfc\x04\x7a\xb4\xc4\xcd\xbb\xaf\xde\ +\x47\x06\xf7\x04\xaf\x74\x3f\x88\xf6\x6c\x8c\x4f\xcd\xfe\x32\x6d\ +\xb1\x23\x70\x5c\xc7\x27\x7e\x8f\x09\xe4\x43\x39\x21\x65\x70\xcf\ +\xb1\x1d\xb2\x4a\x9e\xca\x6a\x41\x36\x67\x72\xce\x11\x7f\xcf\xa8\ +\xd9\xcd\x9b\x43\xab\xa9\x9a\xe6\x51\x18\xcd\x30\xf4\x70\x3d\x42\ +\x0b\x6a\x3e\x82\xab\x8b\xc7\xe3\x09\xdb\xb6\xa7\x9a\xa6\x19\x40\ +\x31\xe5\x2c\x5b\x52\x49\xd1\x38\x51\xc7\x4d\xeb\x78\x59\x1d\x69\ +\xa9\x64\x0b\x29\x8c\xb0\xc1\xb8\xba\x71\x40\x06\x45\x15\xcc\x33\ +\xbe\xc0\xe2\xc5\x67\x63\x91\xe3\x7b\x4f\xfd\x3b\xf3\x67\x4f\x66\ +\xab\xb3\x35\x98\x67\x2c\xbf\x5d\xf4\x3c\x2f\xbd\xff\xb5\x47\xa3\ +\xd1\xfa\xbe\xbe\xbe\xf0\xdb\x84\xa1\x96\xe3\x22\xcb\x30\x29\xa6\ +\x15\xbc\x82\x4a\xef\xd0\x1e\x36\x29\x5b\x78\xab\xe7\x4d\x1a\x0e\ +\xcf\xa1\x29\xa1\x80\x99\xa2\xa0\xa2\x22\x71\x5c\x9b\x81\xd4\x30\ +\x7b\x52\x11\x34\xa1\x07\xe8\x43\x39\x9e\xf9\xf0\x04\xe2\x38\x78\ +\xba\x8b\x50\x14\x3e\x5e\x7f\x19\xcd\xb1\x3a\x1a\x12\x47\xb1\x6e\ +\x68\x3b\x9f\x3d\xf9\x42\x1e\x1f\xf4\xc9\x6d\x8a\xa4\x1c\x91\xef\ +\x8f\xf5\x64\xc3\xe1\x30\xae\xeb\xa2\x69\x1a\x13\x27\x4e\xc4\x75\ +\x5d\xd2\x4e\x81\x59\x17\xb9\x18\x61\x05\x17\x1b\xa1\x38\x78\x79\ +\x85\xed\x77\xd7\x60\x88\x0a\x3f\x4a\xf0\x20\x95\x2a\x72\xfe\xf1\ +\x17\x71\xdb\xda\xcb\xf8\xfc\xf4\xff\xe0\xdf\x17\xdf\x81\xad\x8f\ +\xd2\xbe\xf5\xaa\x60\xc1\xfe\x48\x04\xad\xb4\xb4\xb4\x8c\x94\x13\ +\x55\x00\x9e\xea\xa2\x69\x2a\x9e\x29\x10\x52\xd0\x20\x1a\xc8\x3d\ +\x06\x37\x7b\xd7\xa3\x2b\x06\x3f\xf5\x6e\x43\x41\xc5\x99\xbb\x9b\ +\x49\xb3\x9a\xf6\x95\xbc\xa1\xd0\x1a\x69\xe5\xb0\xe6\xc3\x58\xdf\ +\xbb\x97\x1a\xa3\x11\x89\xc4\xb2\xec\x03\x28\xb4\x1f\x8a\x40\xca\ +\xc7\xdb\x15\x0e\x0a\x61\x16\xcd\x5d\xc4\xca\xa1\x87\x19\xe9\xaa\ +\xc0\x70\xea\xb1\xbd\x12\x48\xe1\x03\x88\x1e\xe5\x9c\xf3\xa9\xe3\ +\xc7\x8f\x1f\x1c\x18\x18\xb8\xa7\x7c\xc1\xe5\x8b\x2e\xd3\xf8\x6d\ +\xd7\x26\xa4\x6b\x24\x06\x5d\x7e\x70\xc1\xe3\x74\x66\xd6\xf1\xe0\ +\xc6\xff\x44\x7a\xc2\x27\x19\x48\xc0\x00\xab\x24\x89\x46\x2a\xf0\ +\x84\x43\xb6\x90\x67\xdd\xce\x0d\x54\xb4\xf4\xa3\x29\xa1\x7d\x05\ +\x42\xef\x4e\xe9\x34\x2a\x2a\x2a\x88\x44\x22\x48\xcf\xa3\x47\x0e\ +\x33\xff\x22\x6b\x1f\xe1\x6e\x34\x84\x33\x10\xa1\xd4\x6d\x10\x4e\ +\x54\x8f\x91\x8a\xc2\x84\x8d\x30\xf3\xa7\x9f\xc4\x26\xf7\x09\x2c\ +\x6b\xdf\xbe\x3a\xa5\xed\x52\x26\x4f\x8f\xf0\xfc\xf0\x2a\x56\x74\ +\xd9\x50\xe6\x68\x8d\xdd\xdf\x5f\x72\x42\x0e\xda\x02\x95\x0d\xa0\ +\x65\x59\x78\xae\x07\x63\xa5\xcc\x08\x51\xa6\x92\x51\x72\x72\x63\ +\xef\x33\x83\x72\x85\xc3\x0f\x3f\xfc\x14\xc3\x30\xbe\x5a\x9e\x23\ +\x16\x8b\x71\xd7\x5d\x77\x31\x7e\xfc\xf8\x7d\x75\x26\xb6\x83\x10\ +\x82\xaf\x1c\xf3\x6d\xd6\x0c\x3d\xce\xce\x6d\x19\x66\xa9\x9f\xa5\ +\xd2\xa8\x0e\xe6\x41\x42\xac\xc6\x60\x24\x35\x4a\xb5\x5e\xcf\xf8\ +\xba\x46\x5c\xcf\xc6\x76\x6c\x84\x54\x02\xc2\xdb\x1f\xa3\x72\x4a\ +\x29\xc7\x6a\x3e\x6c\xf2\x22\x0f\x12\x0a\x29\x95\x0b\x66\xff\x2f\ +\xaa\x9b\x43\x18\xb3\xd3\x8c\x3b\x37\x4e\x78\x7e\x22\x98\xcb\x71\ +\x5c\x96\x74\xdd\x87\x63\x7b\x24\x93\x49\x92\xc9\x24\xa5\x82\xc9\ +\xa3\x9b\xee\xc2\x94\x39\x42\x95\x92\xce\xe2\x5a\x86\x77\xe7\x82\ +\xbf\x8f\x51\x9e\x9c\x0f\xd5\x86\xb8\xae\x8b\x82\xc2\x8b\xed\x7f\ +\xe0\xe4\x8f\x9d\x4c\x4a\xea\xbc\xd6\xf5\x34\x47\x36\x7e\x8d\x97\ +\xc5\x73\x58\x56\x1e\x45\xfa\xe8\xec\x98\x57\xe6\x95\x77\xef\x75\ +\xd7\x5d\x47\x3c\x1e\xa7\xa5\xa5\x85\x42\xa1\xe0\x9f\x10\x61\xa3\ +\x48\x95\xc3\x9a\xa6\xf2\xda\xe0\x4a\x46\x0b\x25\x76\x0d\x75\x20\ +\xf0\x17\x5a\x20\x90\x48\x2a\x2b\x22\x3c\xb2\xe5\x87\x7c\x79\xc1\ +\x77\xe8\xcc\xad\xe6\xcd\xfc\xf3\x9c\x11\x39\x1b\x5b\xee\x63\x1f\ +\xfe\x31\xb7\xb3\x1c\xb1\x4b\x57\xe2\x85\x7c\xa4\xe0\xc6\x33\x1f\ +\xe6\xa9\xad\x3f\xe7\xba\x85\x0f\xb0\x64\xe3\x12\xcc\xea\x9d\x2c\ +\x59\xff\x2a\xa6\xe9\x73\x03\x8c\x90\x4d\xff\x6a\x8b\x3d\x23\xa9\ +\xa0\x20\xc7\x71\x6d\x92\x9b\x2c\x6e\xf8\xfa\xad\x28\xd2\x20\xdf\ +\xef\x61\xe7\x75\x26\x8e\xaf\x06\x21\x51\x35\x85\x9a\x9a\x9a\xcf\ +\xcf\x9d\x3b\xf7\xf8\xfd\x3f\x7f\x70\x70\x90\xee\xee\xee\x8f\xe7\ +\x72\x39\xeb\x90\x09\xa4\x50\x28\xe0\xd8\x36\x66\xc4\xc3\xc3\x65\ +\xb3\xf5\x30\x87\xf5\x4d\xa5\xae\x51\xa1\x6d\x96\xca\x7f\xae\xba\ +\x04\xcb\x09\x91\xcb\xe5\x51\x74\x7f\x61\xca\xc1\x5c\xd9\x03\x59\ +\xb9\x72\x25\x9f\xf9\xcc\x67\x02\x40\xcf\xf3\x3c\x6c\xc5\x46\x28\ +\x1a\x99\x62\x86\x90\x6a\xa0\x8b\x10\x96\x6b\xe2\x38\x36\xa3\xa3\ +\xa3\x28\x42\x21\x5b\xe5\x51\xb4\x2a\xe8\x0e\xbd\xc6\x0f\x9e\x4b\ +\xf1\xa5\x4f\x7e\x11\x33\xd2\xc3\xb3\xdb\x7f\xce\x68\x57\x91\x64\ +\x32\x1b\xb8\xc1\xef\xe6\x7a\x06\xfc\x32\x57\x42\x54\x22\xa4\x42\ +\x4d\x64\x1c\x9b\xe3\xaf\x70\xf2\xf0\x67\xf0\x2c\x15\xd7\x75\x70\ +\x5d\x89\x65\xfa\xc5\x21\x86\x61\x90\xee\x74\x31\x0c\x0d\x4d\xf3\ +\xe7\xb4\x1d\x9b\xa6\xca\x49\x18\xd2\x40\x00\xb9\x89\x83\xcc\x3a\ +\xcb\x81\x4c\x08\x37\x6e\xe0\x0c\x87\x91\xb6\xd2\x2c\x4d\xa5\x59\ +\xda\x3e\x81\xaf\x4c\xea\xeb\xe8\xe8\x50\x0e\xe9\x09\xc9\xe7\xf3\ +\x7e\x4e\xa0\x42\x62\xbb\x16\x9a\xaa\xf2\x78\xe7\x77\x39\xa2\x74\ +\x0c\x96\x6d\x61\xa5\x15\xb6\xfd\x3e\x49\xc9\xb6\x10\xce\x81\xf6\ +\xa2\x3c\x96\x2f\x5f\xce\xf3\xcf\x3f\xcf\xe0\xe0\x20\x2d\x2d\x2d\ +\x7e\xb5\x92\xea\xa7\x6e\xef\x5b\x76\x0f\xff\x72\xc1\xb5\x94\x1a\ +\x3c\x56\xfc\xee\x51\x2c\x3b\x12\xf0\xae\x34\xd7\x57\x8b\x9e\x25\ +\xe8\x1b\x6e\xe7\x9a\x7f\x5d\xcb\xe8\x36\x93\xc2\xa0\x8b\x50\xc5\ +\x01\x94\xa1\x77\xe3\x47\x05\x5c\x5c\x4f\xe2\x49\x89\x50\xfc\x53\ +\xa7\x08\x05\x55\x55\x49\x66\x53\xa4\x43\x5d\xe0\x81\x65\xdb\x41\ +\x21\x4e\x4b\x4b\x0b\xd1\x68\xb4\x5c\x10\x4a\x32\x99\x0c\xd4\xa2\ +\x8a\x42\x69\x72\x82\xc8\xb8\x4a\x64\x5d\x11\xda\x8a\x07\x7c\xe6\ +\xf0\xef\xc6\xe1\xa6\xb5\x80\xf6\x7a\xc8\x55\x56\x99\x0b\x1b\xc9\ +\x29\xec\x7e\x31\x4f\x6a\xb7\x83\x99\xf6\x58\x55\x58\x82\x5b\x02\ +\xd7\x94\x08\x55\xa0\x69\xfb\x16\x67\xff\x82\x18\xa0\xd0\xd3\xd3\ +\x93\x97\x52\x4a\xdb\xb6\x23\xe9\x74\x5a\xb5\x6d\xdb\x4f\x50\x39\ +\x06\xb2\xae\x9d\x47\x56\x3e\xc4\xe7\x4f\xfe\x3c\x8d\x93\xa0\xc7\ +\x49\xe1\x38\x0e\x93\x26\x4d\xc2\x48\x24\x58\x7b\x63\x1e\xb7\x34\ +\x06\xce\x0a\x90\x68\x84\xc2\xfb\xf2\xf9\x7f\x8a\x81\x5e\x16\x88\ +\x74\x25\xd2\xf3\x91\xe9\x54\x21\xce\xec\xda\x53\x98\x32\x71\x02\ +\x2f\xae\xf7\x38\xbe\xf9\x53\xbc\xe1\xfe\x38\x30\xe0\xe1\x70\x98\ +\x68\x45\x94\xa6\xba\x09\x34\xd6\x4a\xde\xdc\xbe\x85\xb6\xb6\xb6\ +\x7d\xf9\x1c\x1f\x57\xc1\x73\x42\x7c\xef\x93\x4f\xf2\xd2\x96\x17\ +\x70\xaa\xf7\x92\xd8\x1b\x61\x93\xfd\x80\x5f\x16\x67\x79\x41\xeb\ +\x90\x83\x21\xd3\xbd\x27\x81\xb4\xb5\xb5\x71\xe1\x85\x17\xb2\x7e\ +\xfd\x7a\x06\x7a\x06\xf1\xac\x0c\x6e\xc8\x41\xea\x12\x2b\x62\x05\ +\x09\x27\xcf\xf3\xc8\xe5\x72\xc1\xcf\x80\x33\x06\xa9\x9c\x5b\x86\ +\x55\x62\xb1\xd8\x8b\xae\xeb\x7e\xd2\xcf\x3a\x7a\x28\x86\xbf\x6b\ +\xdb\x47\x7e\x47\xc7\xfd\xaf\x30\xd8\x53\xc0\x2a\x48\xee\xbc\xf3\ +\x4e\x26\x4f\x9e\xcc\xf0\xf0\x30\x4b\x96\x2c\xc1\x34\x4d\x5c\xd7\ +\xa5\x50\x28\x90\xc9\x64\x98\x30\x61\x02\x7b\xf6\xec\x61\x64\x64\ +\x84\xe6\xe6\x66\xba\xbb\xbb\xff\x68\x2a\x3a\x9f\xcf\x23\x5d\x0f\ +\xcb\xf6\x09\x15\xdf\x7d\xf5\x62\xae\x3f\xf5\x11\x1e\xda\x74\x0b\ +\x3b\xb4\x65\xf4\x77\x56\xe2\xd8\x2e\xb9\x5c\xa1\x9c\x66\xa0\xc7\ +\x1b\xa1\xf9\xb2\x51\x22\xba\x8e\xbc\x67\x14\xe1\x34\x04\x20\xa8\ +\x8a\x82\x22\x04\x21\x6b\x1c\xb1\x68\x8c\x1f\xbd\x74\x1d\xf7\x5e\ +\xfc\x07\xea\x4f\xaa\x23\xd7\xbe\x85\x1e\x6b\x17\x96\xa9\x7c\x70\ +\x02\xf9\xf5\xaf\x7f\xcd\xab\xaf\xbe\xca\x2d\xb7\xdc\xc2\xb2\x65\ +\xcb\xd8\xb8\x71\x23\x42\x08\xba\xbb\xbb\x99\x34\x69\x12\x93\x27\ +\x4f\x66\xf5\xea\xd5\x74\x74\x74\x70\xec\xb1\xc7\xb2\x71\xe3\x46\ +\x8a\xc5\x22\xaa\xaa\x2e\x38\xf1\xc4\x13\x65\x40\x92\xf6\x3c\x34\ +\x5d\x05\x47\x48\x84\xdf\x94\xa7\xfd\x5b\x1e\x12\x50\x14\x1d\xa1\ +\xda\xa8\x7a\x2d\x8e\x19\x0f\xa2\xf8\xa9\x53\xa7\xf2\xc8\x23\x5f\ +\x1c\x22\x28\x00\x00\x19\xed\x49\x44\x41\x54\x8f\x50\x57\x57\x47\ +\x73\x73\x33\x8d\x8d\x8d\xdc\x7f\xff\xfd\x14\x0a\x05\xc2\xe1\x30\ +\xb1\x58\xac\x5c\x38\x8a\xe7\x79\x6d\xb5\xb5\xb5\x1f\xdb\x8f\xa8\ +\x11\x76\x5d\x37\xb0\x21\xb6\x09\x8e\xb4\x51\x2b\x6d\x7e\xb0\xfa\ +\x2b\xb4\xd5\xcc\xa0\x94\xb6\xc9\x0f\x27\xe8\x7c\x2d\x45\xb1\xe8\ +\xab\x97\x48\x38\x8c\x5d\x6d\x51\x53\x15\xc6\xce\x87\x69\xac\x99\ +\x88\x3d\x60\xe3\x49\x1f\x8d\x76\xa5\x40\x11\x02\xe9\x29\x38\x9e\ +\x0d\x02\x14\xdd\x65\xf7\xc0\x2e\xba\xd3\xdb\x70\x6c\xb0\x6d\x11\ +\x6c\x88\x72\xa5\xd5\x21\x13\xc8\x13\x4f\x3c\xc1\x69\xa7\x9d\xc6\ +\x9e\x3d\x7b\x18\x1a\x1a\xc2\xb6\x7d\xa3\xab\x69\x1a\x5b\xb7\x6e\ +\xc5\xb2\x2c\x92\xc9\x64\x40\xb0\x03\x02\xe2\xf2\xc4\x89\x13\x7d\ +\x6f\xa3\x94\xa2\x6e\xf1\x30\x13\x26\x86\x71\xb2\xaa\xb0\xfb\x22\ +\x38\x03\x61\xac\xbe\x08\x65\x07\xba\xcc\xc1\x2a\x6c\xc9\x73\xe3\ +\x8d\x37\x72\xc6\x19\x67\xf0\xfa\xeb\xaf\xe3\x79\x1e\xbb\x76\xed\ +\xc2\xb6\x6d\x74\x5d\x67\xc2\x84\x09\x14\x0a\x05\x74\x5d\x0f\xc0\ +\xc3\xe6\xe6\x66\x66\xce\x9c\xf9\x1d\xe0\x3b\xfb\x93\xfd\xb6\x6c\ +\xd9\x82\xa6\x69\x48\x45\xa2\xc7\x61\xef\xcb\x45\x46\xb6\x9a\xa4\ +\xba\x46\x11\x6c\x3b\x20\x23\x51\xb6\x7b\xaa\xea\x17\x75\x96\x8a\ +\x2e\xb7\x9c\xf9\x3b\xfe\xfe\xa9\xf3\x28\x39\x2e\x12\x9f\x6c\x21\ +\x3c\x40\x0a\xf4\x88\x43\x48\x35\x68\x8c\x4e\x22\x59\x1c\x42\x11\ +\x51\xf0\x14\x6c\xc7\x0a\xd4\x5f\x99\x94\x7d\x48\x6d\xc8\x3d\xf7\ +\xdc\xc3\x43\x0f\x3d\x44\x2e\x97\x7b\x87\x7e\x06\xd8\xb9\x73\x67\ +\xf0\xbb\x35\x6b\xd6\x50\x5d\x5d\x1d\xfc\xbd\x8c\xf5\x8c\x94\x52\ +\x1c\x39\xa5\x82\x62\xc9\x66\xf6\xe4\xe3\xd8\x53\xb3\x09\x67\x76\ +\x16\xcf\x93\x98\x7b\x2a\x18\x7d\x31\x86\x50\x65\x90\xcc\x8a\x46\ +\xa3\x41\x3e\x5f\x08\xe1\x97\xd2\xd9\x36\x93\x27\x4f\xc6\xb6\x6d\ +\x14\x04\x3b\xd4\x3d\x1c\x73\xa1\x86\x90\x0a\xd2\x12\x78\x25\x15\ +\x27\x1e\xc2\xea\x37\x70\x86\x0d\x9c\xb1\xce\x37\xc7\x1c\x73\x0c\ +\x97\x5e\x7a\x29\xf7\xfd\xea\x3e\xe4\x28\x48\x75\x90\xba\x29\x5e\ +\x60\x13\x4c\xd3\x24\x1a\x8d\x32\x86\x00\xa3\x69\x2a\x02\xbf\xe6\ +\xb1\xae\xaa\x96\x82\x95\xc3\x71\xfc\x66\x39\xa5\x52\x09\x45\x0a\ +\x42\x02\x6c\x2d\xc1\x8f\xff\xf0\x7f\xf9\xe5\xa5\x4f\x70\xd3\xeb\ +\x17\x61\x78\x31\xaa\x23\x31\x4c\xb3\x97\x52\xc9\x0b\xec\xe9\xc1\ +\x00\x8f\xef\x05\x5c\xdc\x65\x9a\xa6\x61\x59\x56\xcd\x3e\x86\xe2\ +\x81\x30\xc5\xdb\x4b\xce\xb2\xd9\xec\x01\xb9\x0d\xff\xf7\x1e\x9e\ +\x27\x39\x2e\x74\x39\x2d\x0d\x1a\x67\x4c\xba\x84\x5f\xbc\xfe\x9f\ +\xcc\x98\xda\xcc\xaa\x3d\xab\xb0\x2d\x1b\xa1\xf9\x35\x29\x75\x8d\ +\x31\x42\x5e\xa5\xaf\xd3\x14\x49\xae\x90\x65\xfc\xf8\xf1\x44\xa3\ +\x51\xb2\xd9\x6c\xd0\x6d\x21\x57\x59\x40\xd3\xab\x89\x29\x93\x58\ +\x38\xf7\x14\x5e\xda\xfd\x30\xce\x38\x17\x31\x2f\x41\xfc\xd5\x28\ +\xf9\x2d\x7e\xb1\xcd\x1d\x77\xdc\xc1\x8a\x15\x2b\xf8\xc1\x7f\xfe\ +\x80\x5f\xfd\xea\x57\xcc\x91\x47\xd0\xdd\xdd\xcd\xac\x59\xb3\x78\ +\xe1\x85\x17\x98\x34\x69\x12\x96\x65\xa1\x69\x1a\xa1\x50\x88\x54\ +\x32\x35\x56\x6b\x28\xf6\xab\x49\x71\xb0\x6c\xcb\x2f\x83\x70\xa1\ +\xb2\x14\xc2\xf6\x74\x3a\xcc\x27\x59\xdd\x73\x18\x55\x15\x55\x0c\ +\xe6\x77\x93\x1f\x74\x89\xf7\x25\xb1\x0b\xfb\x52\xbe\x07\x43\x39\ +\x3d\x68\x81\x8c\x8c\x8c\x9c\x54\x2c\x16\x7f\x72\xce\x39\xe7\x5c\ +\x7d\xdb\x6d\xb7\x91\xcd\x66\x79\xf8\xe1\x87\xd9\xb5\x6b\x17\x8a\ +\xa2\x90\x4c\x26\x89\x44\x22\x28\x8a\xc2\xe8\xe8\x68\x90\xf5\x4b\ +\xa5\x52\x94\x4a\xa5\x00\x5a\x70\xa5\x47\xa9\xe8\x71\xf1\x79\x7f\ +\xcf\x4d\x2b\xfe\x1e\xad\x66\x02\x53\xab\x8e\x61\x76\x43\x2b\x2b\ +\xe5\x2a\x4c\xcb\x44\xb8\x3e\x30\xd9\x74\x41\x96\xaa\x89\x05\xec\ +\x11\x03\x77\x30\x02\x1d\x02\x67\xd8\x0b\xa8\x48\xb6\x6d\xe3\x4a\ +\xdf\x08\x49\x04\xdf\x3c\xe5\x5e\x7e\xf4\xf2\xbf\xf2\xef\x67\x3c\ +\xc4\xea\x8d\x6f\xb2\xc9\xf9\x35\x43\x76\x1f\xb6\xed\x2f\xe6\xd3\ +\x4f\x3f\xcd\x82\x05\x0b\x68\x6f\x6f\x67\xe7\xce\x9d\xc1\x02\x25\ +\x12\x09\x4a\xa5\x12\x89\x44\x22\x48\x3b\x17\x0a\x05\xca\x0d\x6c\ +\x5c\x69\x32\x9a\x1e\xa5\xda\xa8\x23\xed\x24\x02\xc6\x0d\x02\x94\ +\xbc\xa0\x30\xe2\x91\x1b\x76\xb9\xf5\xd9\x1b\x49\xec\x70\x49\x75\ +\x3a\x20\xfd\xba\xf7\xb2\x0c\x0e\xb6\xa0\xe7\x3d\xa9\x2c\x21\x84\ +\xbe\x70\xe1\x42\xd6\xad\x5b\xc7\x39\xe7\x9c\xc3\xe1\x87\x1f\x4e\ +\x3e\x9f\xc7\xf3\x3c\x5a\x5b\x5b\x29\x14\x0a\x98\xa6\x49\x3a\x9d\ +\x26\x1e\x8f\x53\x5b\x5b\x1b\x64\x01\x83\x1a\x13\xc5\x1b\xd3\xd3\ +\xba\x8f\xcc\x0a\x85\xa1\xec\x00\xb9\xde\x4d\xfe\xfb\x4c\x2b\x38\ +\x21\xb8\x82\x29\x91\xe3\x08\x1d\xee\xb2\xab\x61\x33\x66\x2c\xcf\ +\xf0\x23\x3a\x20\x83\x40\x4f\x91\x3e\x15\x35\x1d\xf7\x88\x86\x2b\ +\x58\xd6\xf9\x04\xd7\x6a\x37\xd3\x50\x57\x83\xd5\x6f\xe1\x38\x2e\ +\xa6\xe9\x43\x33\x77\xde\x79\x27\x77\xdc\x71\xc7\x1f\xbd\xbf\xd1\ +\xd1\xd1\x03\x7e\x8e\x55\x8f\xe5\x5c\xa2\x3a\xff\xe7\xf7\x9f\xa5\ +\x36\x34\x89\xed\xc5\x5e\xa2\xd1\x28\x86\x61\xd0\xd4\xd4\x44\x6a\ +\x73\x8a\x2d\x9b\xdd\x31\xb7\xdb\xef\x68\x54\x15\xf3\x0e\xa0\xd6\ +\x96\x0b\x98\x0e\xb9\x40\xa4\x94\xfc\xf6\xb7\xbf\xa5\x9c\x60\xea\ +\xe8\xe8\x08\x20\x8b\xb2\x8d\x10\x42\x50\x28\x14\x70\x5d\x37\x10\ +\x56\x59\x3f\x03\xb8\x61\x8f\x48\x58\xe7\xe5\x0d\xcb\x09\x51\x4d\ +\x6d\xb4\x9e\x81\x4c\x17\x67\x55\x7f\x9c\xad\x72\x07\xa6\x55\x42\ +\xf1\x7c\x20\xb3\x3a\x7d\x2c\xe7\x1f\xfd\x45\x5e\x5a\xbd\x8e\x71\ +\xd2\xe3\xf4\xd9\xa7\xf0\x7d\xeb\x76\xc2\xaa\xb1\x8f\x94\x37\x56\ +\x61\xa8\x28\x82\x03\x6d\xa6\xc0\xf6\x8a\x63\x27\xc9\x25\x95\x4a\ +\xf9\xe9\x80\xb1\x60\x50\x4a\xe9\x7f\xaf\xf9\x7c\xa2\xb0\x16\xa5\ +\x60\x67\x51\x84\x8a\x6b\xfa\x0b\x97\x4e\xa5\x70\x5a\x1c\x4c\xa7\ +\x84\x16\xf5\xd8\x38\xb4\x02\xd7\x11\x34\x36\x36\x72\xf7\xdd\x77\ +\xe3\x79\x1e\xab\x57\xaf\x66\xd5\xaa\x55\xb4\xb6\xb6\xb2\x66\xcd\ +\x1a\x8e\x3c\xf2\x48\x36\x6d\xf2\x37\x57\x5d\x5d\x1d\xf9\x7c\x9e\ +\xde\xde\xde\x83\xe6\xff\xbe\x57\xac\x58\xd5\x34\x8d\x67\x9e\x79\ +\x46\x0a\x21\x84\x22\x94\x80\x3d\xe8\x4a\x9f\xaf\xa4\x29\x21\x3f\ +\x3f\xae\x86\x70\x1c\x87\x8a\x8a\x0a\xa4\x94\x41\xe9\xb1\xa5\xd8\ +\x68\xba\xe0\xc1\xed\xff\xce\x2d\x67\x3f\xce\xda\xe1\x27\x08\x35\ +\xf7\xd3\x93\xdf\x82\xed\x59\x14\xf2\x05\x14\xdd\x8f\x01\x8e\x9b\ +\xbe\x80\xee\xd4\x76\xde\xec\x5f\xc7\xc2\x19\xa7\x11\x56\x8c\xb1\ +\xb2\x33\x11\xb4\xf8\x50\xa4\x40\x22\xa8\xad\x0f\x91\xce\x67\x38\ +\xf7\x88\x7f\x20\x51\x1c\x20\x97\x2b\x31\xb5\xf6\x28\xda\x9d\x3f\ +\xe0\xba\xd2\xf7\xf2\x5c\x41\xa9\x26\xc1\xb4\xd8\x5c\x4a\xa5\x12\ +\x03\x6e\x8a\x19\x5f\x34\x99\x56\xb1\x90\x8b\xcf\xf8\x12\x35\x6a\ +\x2b\x37\x3d\x7e\x0d\xcf\x5e\xbf\x0e\x0f\x5f\xe0\x91\xa2\xce\xc0\ +\x1b\x26\x99\x5e\x87\xd4\x9e\x02\xba\x5a\x5d\xce\xed\x30\x77\xee\ +\x5c\xaa\xaa\xaa\xc8\xe5\x72\x74\x74\x74\xa0\xeb\x3a\xb1\x58\x0c\ +\x29\x25\xc9\x64\x12\xd3\x34\x69\x6b\x6b\x63\xdb\xb6\x6d\x1f\x8c\ +\xca\x52\x14\xe5\xd1\x37\xde\x78\x63\xda\xac\x59\xb3\x4e\x2b\x14\ +\x0a\x58\xd2\x45\x9f\x9e\xa7\xae\xaa\x96\xb3\xe7\x7e\x8e\x92\x69\ +\xb1\x74\xfb\x13\x9c\x39\xfb\x1c\x96\xee\xfe\x2d\xe9\xf5\x61\x0a\ +\x85\x02\x42\x88\x60\x87\xe4\x85\x87\xed\x5a\x84\xaa\x3c\xfe\xed\ +\xf7\x17\xb1\x78\xfe\xd9\x64\xf3\x29\xd6\xc7\x57\xb2\xf3\xe5\x2c\ +\xd9\x82\x19\xec\xf4\x92\x69\xe2\x58\x2a\xae\xe3\x91\x2b\xa5\xf0\ +\x1c\x1f\xcd\x95\x78\x68\x9a\xe6\xcf\x2d\xfd\xb8\x06\xe1\x71\xcd\ +\xd3\xe7\xf3\xc3\xf3\x9e\xe2\xc6\xd7\x2f\x24\x53\x8a\xa3\xe9\x1a\ +\x56\xc9\x22\x97\xdb\x97\x2b\x99\x14\x9d\x46\x3e\x9f\xf7\x53\xb7\ +\xd8\xd8\xa6\xcb\xac\xc6\x45\x3c\xd9\xfe\x33\x0e\x53\x3f\xc1\x31\ +\x0d\x8b\x79\x46\xae\xa6\xbe\xa1\x9e\xe3\x8f\x3f\x9e\xad\x5b\xb6\ +\x12\xff\x83\x83\xe5\x98\xb8\x99\x0c\xd1\x6a\x9d\x64\x32\xc9\xd7\ +\xbe\xf6\x35\x5a\x5b\x5b\xe9\xec\xec\xdc\x57\x2e\x27\x25\x3b\x76\ +\xec\x08\x16\x3f\x95\x4a\x05\x2c\x99\x3f\x06\xe9\xfc\x45\x02\xc9\ +\x64\x32\x2f\x55\x55\x55\x9d\xdc\xda\xda\x7a\x5a\x32\x99\xa4\x88\ +\x45\xf5\xc9\x3a\xc7\x34\x9e\xc9\xdc\x63\x9a\x59\xb7\xb1\x93\xef\ +\x7f\xe6\x6e\x8e\x9b\x79\x0c\x43\xcf\x2c\x63\x47\x4f\x08\xe1\xaa\ +\xa4\x52\xa9\xc0\x80\x46\x4a\x2e\xd9\x21\x87\xc1\x8d\x16\xa3\xdb\ +\xf6\xb0\xfa\x96\xbb\x83\x5e\x55\x4d\xa2\x99\xa6\xb9\xfb\x3e\xef\ +\xf7\x0f\x3f\x05\x63\xcd\x5a\xfb\x78\x09\x80\x09\x13\xc7\x53\x2c\ +\x16\xc9\x66\xb3\xe4\xf3\x79\x84\x14\x38\xa6\xf0\x85\x5c\x6d\x71\ +\xe3\x6b\x7f\x47\x24\x5c\x41\x41\xd5\x48\x76\xda\x74\xae\x4c\x21\ +\x9d\x80\xe0\xc7\xb8\xea\x71\xf4\xf7\xf7\xfb\xec\x79\xd5\x19\xab\ +\xf8\xf2\xf1\x32\xd7\xf3\x48\x17\x13\xa8\xaa\xc6\xaa\x55\xab\x78\ +\xf1\xc5\x17\xf9\xd2\x97\xbe\xc4\xb2\x65\xcb\xa8\xa8\xa8\xe0\xfe\ +\xfb\xef\xa7\xad\xad\x8d\xae\xae\xae\xc0\x3d\xae\xa9\xa9\x39\xa8\ +\xb5\x8b\xc7\xe3\x1f\x0c\x0d\x48\x55\xd5\x69\xe5\xf6\x4c\xb6\xf0\ +\x6f\xa8\x52\x8f\x61\xba\x45\x4c\xa7\xc4\x50\xa6\x97\xbe\x6c\x2c\ +\x80\xeb\x71\xf6\xf9\xde\xd7\x5e\x7b\x2d\x4b\x96\x2c\xa1\xe7\xbe\ +\x04\xae\x6b\x13\x05\xf4\x4a\x2b\x28\x1c\xdd\x59\xe8\xe7\x88\xcf\ +\x38\x54\x84\x35\xa4\xa9\x62\x27\x74\xdc\x11\x03\xab\x3f\x8c\x97\ +\xd5\x10\x9a\x0c\x82\xc6\x6c\x36\xeb\xef\x4c\xd7\x23\xdc\x2d\xd8\ +\xf6\xbb\x1c\xe9\xbd\x0e\x4e\x21\x81\x5d\x90\x38\x45\x89\x94\xa0\ +\xa8\x6a\x50\xb8\x67\x84\x22\x6c\xea\x5a\x45\xb5\x6c\xf6\xf3\x1d\ +\x86\x87\xae\x18\xec\x18\xdd\xc8\xf1\x47\x9f\xc0\x78\xed\x70\x36\ +\xed\x5e\x13\x70\xbd\xda\xda\xda\xe8\xee\xee\xf6\x05\x3f\x86\xd8\ +\x0e\x0c\x0c\x70\xc3\x0d\x37\x30\x3a\x3a\xca\x93\x4f\x3e\x19\x54\ +\x28\xe7\x72\xb9\xe0\x24\x94\x49\xe5\xb5\xb5\xb5\xe5\x62\xa4\xd1\ +\xe1\xe1\xe1\x85\x8d\x8d\x8d\x66\x6f\x6f\xef\xa1\x15\x88\x94\xf2\ +\xb0\x80\x9d\xa8\xb8\xa8\x42\x63\xb4\x38\x40\x53\x74\x2e\x35\x15\ +\x69\xb2\x56\x1a\x5d\x0d\xa3\xa0\x60\x5b\x26\xd2\x11\x38\x8e\xc3\ +\x33\xcf\x3c\xc3\xe8\xe8\x28\x27\x9f\x7c\x32\xbf\xff\xfd\xef\x03\ +\x2c\x6a\xd9\xb2\x65\x81\xc1\xef\x2d\xc5\x59\x34\x7e\x1c\x85\xac\ +\xc7\x71\xd3\x3f\xce\xa6\xc1\x65\x38\x33\x72\x54\xa9\x92\xec\xe6\ +\x0a\x32\xaf\x57\xfb\x86\x58\xf1\x8b\x7a\x16\x2f\x5e\xcc\xec\xd9\ +\xb3\x79\x69\xc9\x4b\x78\x19\x09\x8c\x42\x05\x58\x9a\x85\x88\xf9\ +\x0b\xa8\xeb\x3a\x99\x4c\x06\xc7\x71\xd0\x74\x85\x64\xb7\x83\x5e\ +\x5f\xf4\x93\x55\x38\x78\x9e\xc1\x40\xe8\x55\xc2\xc5\xd3\xc9\xd7\ +\xf6\xb0\xdb\x7a\x19\x5d\x35\xb8\xe8\xa2\x8b\x98\x3d\x7b\x76\xd0\ +\xe5\xc7\xf3\x3c\x86\x86\x86\x98\x3a\x75\x2a\xdf\xf8\xc6\x37\x10\ +\x42\x10\x0a\x85\xde\x35\x07\x53\x2e\x32\xcd\x64\x32\xd4\xd4\xd4\ +\x50\x28\x14\x9c\xd1\xd1\xd1\xed\x1f\x14\x51\x4e\x09\x1a\x98\xa9\ +\x7e\x6e\xb5\x50\xb9\x8d\xb6\xca\xeb\x38\x62\xf1\x09\x5c\xf3\xe4\ +\x05\xb4\x4d\x6c\x06\x01\x96\x65\xe2\x8d\x61\x39\x6f\xbe\xf9\x26\ +\x8d\x8d\x8d\x64\x32\x99\x72\xd3\x64\x86\x87\x87\x0f\xf0\xc0\x84\ +\x10\x94\x6c\x93\x0b\x5a\x6e\x65\xc4\xdb\xc0\x3f\x2f\xb8\x9b\x97\ +\xda\x97\x90\x8e\x6c\xa5\xdd\xde\x15\xf4\x16\x29\x0b\xe4\xf2\xcb\ +\x2f\x27\x97\xcb\x71\xda\x69\xa7\x71\xfb\xed\xb7\x73\xc2\x89\x0b\ +\xe8\xee\xee\xe6\xc8\x23\x8f\xe4\xd1\x47\x1f\x65\xf2\xe4\xc9\x7e\ +\x7b\xc1\x54\x8a\x54\x2a\xc5\xe0\xe0\x20\x95\x95\x51\x32\x99\x0c\ +\xa6\x69\x52\xf0\xfc\x32\x08\x4f\x95\xfc\xf4\x8d\x7f\xe2\xaa\x53\ +\xbf\x8d\xed\x94\x30\x4d\x18\xd7\x54\x4b\x5f\x5f\x5f\xa0\x6a\x35\ +\x4d\xc3\x30\x0c\x7a\x7a\x7a\x10\x9a\x40\xd5\xfc\x66\x01\x39\x33\ +\x43\xa5\x51\xed\x57\x69\x45\x4d\xec\x3c\x63\x88\xf4\x81\xbd\xc5\ +\x3e\x30\xe6\xa2\x10\x82\x44\x22\xe1\xe7\x05\x34\x49\xc9\x8a\x61\ +\xab\x70\xe5\x6f\xcf\xe6\xd1\xaf\x6c\x44\x8b\x58\xdc\xb7\xe9\xdb\ +\x78\x2e\xc4\x87\x92\x41\x50\x74\xeb\xad\xb7\xbe\x23\xdf\xbd\x3f\ +\x1b\xdd\x87\x46\x60\x78\xa0\xc4\xd9\xe7\x9e\xc6\x95\xcf\x5c\xcf\ +\xe2\x19\x17\x33\xa9\x76\x06\x03\xa4\x91\xde\xce\xa0\xb7\x48\xb9\ +\x8e\xbc\xbb\xbb\x9b\x13\x4f\x3c\x91\xdf\xfc\xe6\x37\x01\x15\xb5\ +\xdc\x4c\x40\x4a\x19\xb4\xf7\xd0\x75\xdd\x8f\xac\xc7\x3e\xaf\x6c\ +\x84\x2b\x8a\x1e\xa5\xb8\x47\xcf\xae\x12\xf1\xad\x16\xff\xf0\xdd\ +\xaf\xfb\xf9\x7b\x05\x46\x46\x46\x0e\x70\xf7\xcb\xc5\xa4\x0a\x82\ +\xf8\x94\x0c\xc7\x9e\x59\xc5\xaf\xfe\x76\x25\x67\xde\x39\x85\x67\ +\xae\x58\xc1\xe6\xce\x0e\x9e\xea\xbd\x91\xad\x8f\x8f\x32\xba\xc9\ +\x37\xde\x86\x61\xb0\x7d\xfb\x76\x1a\x1b\x1b\x3f\x38\x81\x94\x17\ +\x58\x51\x14\x34\x4f\xa2\xea\x02\xd7\xf1\x60\x54\x72\xca\xa5\x87\ +\x93\xeb\xf2\xb0\xf2\x12\x33\xe3\x05\x1c\xa5\x62\xb1\x28\xcb\xb5\ +\xea\x6f\x17\xae\x10\x62\xdf\x0e\x32\x7c\x17\x7a\xff\xbf\xdb\x8e\ +\xcd\xae\xec\xc6\x31\xd6\xbc\x15\xb0\x91\x15\x45\xe1\x5b\xdf\xfa\ +\x16\xd1\x68\x34\x20\xc1\x95\xe7\xdf\xbc\x79\x73\x80\x18\xec\xff\ +\x99\xe5\xfa\x12\xc3\x30\xb8\xfa\xea\xab\x59\xbe\x7c\x39\x83\x2f\ +\x0e\xe2\x7a\x1e\x21\xc7\xa6\xa9\x51\xee\x6b\xed\x37\xa6\xa6\xca\ +\xbd\x7c\xcb\xc1\xad\x22\x05\x52\x08\x6a\xea\x74\xe2\x99\x11\xae\ +\x38\xe9\x46\xfa\xb3\xbb\x18\x49\xa4\x38\x7e\xe2\xd9\xbc\x61\xff\ +\x9c\x32\x85\xab\x6c\x53\xde\x0b\xe9\xe1\x7d\x09\x44\x08\xc1\xb4\ +\x69\xd3\x48\xa5\x52\x0c\xdc\x6b\xd2\x63\x9a\x08\x45\xe2\xe7\x6d\ +\xfd\xc0\x24\xa4\x4a\xa4\x22\xcb\xa4\x69\x31\x30\x30\xb0\x6c\x64\ +\x64\xe4\x94\xb7\xcf\x35\x67\xce\x9c\xb8\x69\x9a\xe3\x84\x10\x60\ +\x40\x4d\x4d\x98\x3d\x7d\x7d\x78\x8e\x82\xa6\xe8\x64\xcd\x24\x4d\ +\x91\x36\x76\xba\x71\x4c\xd3\x0e\xba\xef\xd8\xb6\x4d\x34\x1a\x0d\ +\xd2\xb6\xfb\x7b\x72\x65\xb8\xfb\x80\x93\xe8\x82\x65\xfa\xc4\xed\ +\xab\xae\xba\x0a\x21\x04\x0f\x3e\xf8\x20\xdf\xfe\xf6\xb7\xe9\xea\ +\xea\x62\xe6\xcc\x99\x8c\x8c\x8c\x60\xdb\x36\x4d\x4d\x4d\xbc\xf2\ +\xca\x2b\x84\x42\x21\xc6\x8f\x1f\xcf\xba\x75\xeb\xb0\x6d\xdb\xc7\ +\xe6\x3c\xb0\x2c\x70\xa5\xcd\xb5\x2f\x9e\xc7\xff\x3d\xf5\x29\xee\ +\xdd\xfc\xcf\xf4\xa4\xde\x42\x4b\xa8\x94\x0a\x26\x99\x8c\x79\xc0\ +\x26\x78\x2f\x6c\xc6\xf7\x63\xd4\x39\xf2\xc8\x23\xb9\xec\xb2\xcb\ +\x38\xe2\x88\x23\xb8\xf9\xe6\x9b\xe9\xec\xec\xa4\xa6\xa6\x86\x91\ +\x91\x11\x74\xdd\x6f\x2e\x39\x38\x38\x88\xae\xeb\x68\x9a\xc6\xe0\ +\xe0\x20\xe9\x74\xda\xfb\x63\x89\xa3\x52\xa9\xe4\xef\xc8\x2a\xc9\ +\xb8\x71\x95\xfc\x68\xd9\xbf\x70\xd7\xdf\x2d\xe3\x97\x6f\x5c\xcf\ +\x9b\xa9\x2d\x1c\x31\x69\x0e\xae\x37\xc6\x0e\x1c\xb3\x21\x53\xa7\ +\x4e\x0b\xe2\x15\x55\x55\x59\xb1\x62\x05\xcd\xcd\xcd\xef\xea\xeb\ +\xab\x21\x08\xcd\x4d\xd2\xb7\xb2\x48\x21\xe9\xb0\x6b\xd7\x2e\xae\ +\xbc\xf2\x4a\xf6\xee\xdd\x4b\xb1\x58\xa4\xb1\xb1\x91\xca\xca\x4a\ +\x74\x5d\x67\xd9\xb2\x65\xd4\xd5\xd5\xd1\xda\xda\x4a\x4f\x4f\x4f\ +\x50\x4e\x5d\x2c\x16\x83\xb8\xc7\x49\x0b\x92\xfd\x7e\x31\xe9\xbf\ +\x3e\x79\x3e\x15\x46\x98\x6c\xce\x25\xdd\x63\xd2\xb9\x22\x8b\xaa\ +\xa8\x07\x6c\x9a\xb1\xcd\x11\x06\x98\x34\x69\x92\xdd\xdd\xdd\xed\ +\x1e\xb2\x72\x84\xda\xda\xda\x35\x4d\x4d\x4d\xc7\x1d\x2c\xa7\xb6\ +\x3c\x5c\xd7\xa5\xbf\xbf\x7f\xc6\xc8\xc8\xc8\xce\xfd\x7f\x3f\x7d\ +\xfa\xf4\x78\xa9\x54\x1a\xa7\x28\x0a\xc3\x13\x5c\xfe\xf1\x5b\x13\ +\xb1\x2c\x97\x9a\xc2\xb1\x1c\x35\x67\x0a\x4b\x77\xff\x06\x4d\xd3\ +\x58\xf5\x83\x04\xa9\x2e\x5f\x17\x54\x56\x54\xb1\xe8\x96\x2a\x86\ +\xee\x6f\x44\x3a\xbe\x5a\x58\xbb\x76\x2d\xd1\x68\x94\x70\x38\x1c\ +\x30\xef\xcb\x69\x5d\xc7\xb5\x31\xa2\x21\xdc\x92\x0c\x9a\x0b\xec\ +\xcf\x52\xf9\x53\x19\xd2\xe6\xe6\xe6\xfd\xaa\x7a\x64\x90\xb3\xf9\ +\x63\x9b\xb5\xa7\xa7\x87\x6d\xdb\xb6\x21\x84\xa0\xb2\xb2\x32\x28\ +\x8e\x2d\x6f\xbe\xb5\x6b\xd7\x7e\x29\x99\x4c\x3e\x70\x48\x4f\x88\ +\x61\x18\xcc\x98\x31\x03\x80\x7e\x33\xc1\xe4\xb3\xf3\x44\xc2\x1a\ +\xc2\x34\xb0\x87\x42\x38\xc3\x61\x9c\xe1\x03\x1b\x59\x46\x22\x11\ +\xee\xbd\xf7\xde\xf4\xbb\x4d\x59\x26\x97\x85\x73\x50\xca\x78\x0c\ +\x6d\xb1\xe8\xd8\xf3\x0a\xcf\xdf\xb9\x04\xcf\x14\xd8\x79\x0f\xd7\ +\xf4\x8d\xf1\xbe\xbc\xb9\xc0\x76\x1c\xa4\xed\xeb\xfa\x39\x73\xe6\ +\xd0\xda\xda\x4a\x2c\x16\x63\xdb\xb6\x6d\x8c\x8e\x8e\xd2\xd4\xd4\ +\xc4\xd0\xd0\x10\xfd\xfd\xfd\x78\xa6\xaf\xba\x4c\xd3\x0c\xe8\x47\ +\x0a\x02\xc7\x94\xd8\xb2\x84\x42\x08\xcb\x2d\xa1\xab\x1a\x48\x05\ +\x4d\xd5\x28\x95\x8a\x0c\x0d\x0d\x21\x10\xac\x2c\x6d\xe5\x9c\xcb\ +\x62\x28\x52\xe0\x9a\x80\xa5\xfb\xd7\x36\x60\x50\xda\x5d\x81\x97\ +\xf5\xaf\xad\x50\x28\x50\x5b\x5b\x1b\x54\x1b\x47\x8c\x8a\x20\xce\ +\x8a\x46\xa3\x7f\xd6\xe3\x7a\x5f\x02\x29\xe7\xb4\x15\x04\xa3\x5a\ +\x9c\xf9\x2d\x61\x32\xd9\x34\xed\x77\x58\x4c\xac\x99\x82\xeb\x65\ +\x11\x8a\xc0\x72\x1d\x74\x5d\x20\x4d\x0d\x44\x82\xb3\xce\x5c\x3c\ +\x54\xb6\x01\x65\xa3\xd7\xd5\xd5\x45\x28\x14\xe2\xf4\xd3\x4f\x67\ +\xfd\xda\x75\xb4\xdf\xec\x20\x85\x0e\x42\x47\x93\x6e\xd9\xd1\xc6\ +\x88\x2a\x81\x8b\x5c\x66\xa2\x58\xa6\xef\x56\xab\xaa\xca\xc0\xc0\ +\x00\xae\xeb\x52\x59\x59\x49\x26\x93\x09\x58\x1e\x8e\xe3\x10\x0e\ +\x87\x39\xef\xbc\xf3\x48\xa7\xd3\x2c\x5f\xbe\x3c\xc8\x08\x0e\x47\ +\x8b\x9c\x7e\x55\x15\xc7\x1a\x57\xd1\x30\xc5\x64\x51\xeb\x17\xb8\ +\x7f\xc5\x4f\xf9\xf8\x91\x0b\xb9\xf3\xb9\x6f\xd3\xff\x98\x87\xa5\ +\xfa\x0d\xd2\x0a\x58\x18\xba\x42\x23\x47\x72\xfa\x51\xe7\xf0\xe4\ +\xb6\xbb\x50\x9d\x4a\x72\x2d\xbd\x8c\xe4\x25\xa5\xd1\x48\xe0\x31\ +\x1e\x73\xcc\x31\x6c\xdf\xbe\x9d\x7c\xa6\x80\x31\x37\x49\x69\x57\ +\x04\xa1\xec\xf3\x0e\x0f\xa9\x40\xaa\xab\xab\x03\x86\xa0\x82\x00\ +\x4d\x62\x3b\x2e\x7f\x33\xf1\x26\x12\x8d\x77\x05\xbb\x20\xe5\x66\ +\x19\x77\x41\x9c\x71\x0d\x3a\x4e\x1e\xec\xa1\x0a\xdc\x11\x03\x7b\ +\xd0\x40\x16\x55\xdc\xbc\x8a\xa6\x69\x94\x4a\x25\x7e\xf3\x9b\xdf\ +\x00\x70\xc6\x19\x67\xb0\x7c\xf9\x72\x1c\xc7\x21\x1e\x8f\x53\x53\ +\x53\x43\x4f\x4f\x0f\x8b\x16\x2d\x62\x64\x64\x84\x35\x6b\xd6\x10\ +\x8d\x46\xd9\xbb\xa7\x1b\x81\xc0\xb2\x6c\x3c\x9b\x20\x3a\x0e\x87\ +\xc3\xa4\x52\xa9\xe0\x5a\xfb\xfa\xfa\x08\x87\xc3\x58\x96\x45\x22\ +\x91\x60\xca\x94\x29\x81\x6b\x2c\x84\xc0\x0d\xbb\xa8\x8a\xc6\x26\ +\xef\x7e\x2e\x09\xdd\xce\x53\xbb\x7f\xc4\x4e\x6f\x29\x3b\xdf\x78\ +\x0e\x4f\x2a\x7e\x1a\xda\x94\x7e\x4f\x47\x43\x30\x38\x94\xe3\x3b\ +\x17\xdc\xca\xff\x7e\xf6\x0c\xee\xfe\xfc\x12\xf6\xf4\xf7\xf0\x74\ +\xef\xad\x0c\xda\x5d\x81\x0a\xf4\x3c\x8f\x78\x3c\x3e\x86\xe1\x29\ +\x78\x8e\x87\x6b\x9a\x08\x95\x03\x02\xc9\xbf\x98\x4a\x1a\x90\x64\ +\x0d\x23\xd8\x09\x25\xd3\xf4\xdb\x7c\xdb\x06\xe7\x9d\xb8\x98\xbc\ +\x99\x09\xe8\xa1\x23\x4e\x9a\x8a\x50\x08\x33\xab\xb0\x70\xca\xf9\ +\xd4\x4e\xd1\x88\x1e\x95\xa1\xf6\xec\x11\x2a\x4f\x89\x07\xdd\xb1\ +\xcb\x5e\xd0\xc8\xc8\x08\xe1\x70\x18\x45\x51\x98\x33\x67\x0e\x86\ +\x61\x30\x69\xd2\x24\x6c\xdb\x0e\x3a\x44\x9c\x78\xe2\x89\xa4\xd3\ +\xe9\x31\x57\x52\x39\xa0\x4d\xb9\xeb\xba\x41\xcb\xf0\x72\xb3\x9c\ +\x78\x3c\x1e\xd4\x3d\x76\x74\x74\xf0\xec\xb3\xcf\xa2\xaa\x6a\xd0\ +\x81\xa2\x50\x2c\x62\x3b\x16\x28\x36\x77\xb4\x5f\xc6\x70\xb6\x0f\ +\x89\x24\x3f\xe2\xb2\xfe\xde\x38\xae\xb7\xaf\xeb\xb5\xa2\x28\x8c\ +\x0c\x98\xc4\x6a\x42\x28\xaa\x4b\x44\xaf\xa4\xa6\xb2\x86\x78\xae\ +\x2f\x48\x96\x95\x89\x7f\x5d\x5d\x5d\x7e\x73\x4e\x55\x41\xba\xde\ +\x01\x34\xd7\x3f\xe7\x02\xbf\x2f\xb7\xb7\xac\x3a\x04\x7e\xa0\x55\ +\xf6\x2a\xf6\xb5\xff\xb6\x71\x15\x17\x45\x15\x7c\x7a\xd2\x37\xc9\ +\xc8\x5d\x5c\xbf\xe8\x31\x1e\x5d\xfd\x20\xcd\x93\x74\x9e\x58\x71\ +\x5f\x70\x93\xd1\x68\x94\x2b\xaf\xbc\x92\xc9\x93\x27\xd3\xdf\xdf\ +\x8f\xeb\xba\x2c\x5d\xba\x14\xcf\xf3\x68\x6f\x6f\xc7\x71\x9c\x40\ +\x1d\x95\x03\xcb\x90\x66\x04\xf1\x8b\x6b\xf9\x49\xa0\x50\x28\x44\ +\x5d\x5d\x1d\x42\x08\x6a\x6b\x6b\xdf\x76\xc1\x63\x24\x03\x45\x04\ +\xa5\xd0\x9e\xe7\x51\x9d\x51\xe9\x5a\x52\x20\xd7\xed\x62\x65\x3d\ +\xd6\x14\x56\xe2\x14\xc1\xb3\x25\x8a\x2a\x70\x0d\x77\x5f\x5b\x43\ +\x14\x74\x5d\xc1\x19\xe3\x35\x83\xff\xf4\x20\x04\xb8\xae\x87\x69\ +\xfa\xfc\x33\xd7\x71\xa8\x6d\xae\x27\x99\x8f\x13\x8a\x99\x84\x2a\ +\x55\xd2\xb6\xdf\x37\xf2\x60\x4a\x15\xde\x57\xa4\x5e\x5e\x78\x81\ +\xdf\x30\xc0\xf1\x6c\x4a\xa6\x89\xa6\xe8\xfb\x0a\x60\x0c\x0f\x4f\ +\x0a\x5a\xab\x67\xf0\x9b\x3d\xbf\xa0\x2d\x74\x22\xf5\x91\x16\x0c\ +\x25\x83\xf4\x08\x04\x52\x2a\x95\x64\x28\x14\x12\x9d\x9d\x9d\xfb\ +\x47\xef\x52\x08\x21\x5c\xd7\x45\xda\x60\x7b\xde\x98\x43\xa8\x82\ +\x02\x96\x63\x63\x3a\x92\xd1\x91\x04\x72\x8c\x65\x5f\xce\x4c\xe6\ +\xf3\xf9\x75\x1d\x1d\x1d\x0f\xd6\xd7\xd7\xff\x58\xd3\x34\xbf\x0f\ +\x7c\x9d\xc7\xe1\x0b\x2b\xc0\xae\xa2\x32\x57\x45\x75\x75\x35\x97\ +\x5c\x72\x09\xcb\x97\x2f\x67\x78\x70\x18\xc5\xc9\xe1\x86\x5c\x3c\ +\xcd\xc3\x8d\xba\x01\xe4\x51\xde\x78\xca\x58\x43\x9c\xa9\xd3\x6b\ +\xd8\xd1\xb5\x97\xd3\x0f\xfb\x3b\xde\x1c\x5e\x4d\x32\x51\x64\x76\ +\xc3\x09\xbc\xe5\xfc\x01\xcb\xf2\xb3\x86\x85\x7c\x81\x07\x7f\xf9\ +\x30\x3f\x79\xea\xfb\xfc\xcd\x27\x4e\xe5\x67\x8f\xfd\xc4\xcf\x82\ +\xaa\x7c\x30\x27\x44\x4a\xa9\x4a\x29\x65\xa9\x54\x12\x02\x81\xe7\ +\xb9\x54\x44\x15\xfe\xf9\xe1\x8b\x91\x9e\xc0\xb6\x7d\x42\xb6\xa7\ +\xb9\x08\x11\x02\x24\xaa\xe2\x1b\xb3\x91\x54\x9c\x5c\x65\x7f\xa0\ +\x6e\x00\x1a\x1b\x1b\xc5\x1b\x6f\xbc\xf1\x95\x62\xb1\xf8\x10\xe0\ +\x45\xa3\xd1\xeb\xa7\x4d\x9b\xf6\xcd\x64\x32\x89\xa3\x48\xa6\x7f\ +\xa5\x92\xd6\x96\x30\x76\x41\x62\x17\x3d\x52\x9d\x36\x99\x6e\x87\ +\x25\xff\x6c\x07\x5e\xfb\xd8\xb3\xa6\x44\x2c\x16\x43\xd3\xb4\x5d\ +\xf9\x7c\xfe\xce\x96\x96\x96\x1f\x97\x79\x58\x6e\xb5\xa0\xed\xd4\ +\x28\x5a\x58\xf2\xd2\xfa\x7e\x7e\xf6\xfd\x5f\xb1\x77\xef\x5e\x6e\ +\xbf\xfd\x76\x6e\xb8\xe1\x06\x74\x5d\xa7\xbe\xbe\x9e\x62\xb1\xc8\ +\xee\xdd\xbb\x59\xb4\x68\x11\xeb\xd6\xad\x63\xfd\xfa\xf5\xe4\x72\ +\x39\xc4\x98\x47\xa7\xeb\x2a\xdf\x79\xf5\x0b\xdc\x7e\xc1\x0b\x7c\ +\x7f\xcd\x97\xc8\x5a\x09\x14\x5d\x90\xcf\x9a\x64\xb3\x3e\xea\xeb\ +\x58\x2e\x23\x72\x33\x4e\xdd\x56\x96\xed\x4e\x21\x5d\x49\xb1\x54\ +\x44\x28\x3e\x13\xf2\x90\x0b\x64\xd7\xae\x5d\x9f\x6a\x69\x69\x19\ +\x48\xa7\xd3\x7e\x13\xfd\x71\x02\xd3\x89\xe2\xd5\xee\x61\xb4\x90\ +\x25\x22\x6b\x7c\x81\x44\x20\xa4\x84\xe8\x4a\x77\x30\xbf\xfe\x34\ +\x8e\x9e\x3e\x8f\xd7\x77\xbc\xc2\x11\xb1\xa3\x59\xea\x3d\x8f\x65\ +\x39\x41\x8e\x22\x12\x89\xd8\xc5\x62\xb1\x34\xf6\xb3\x13\x0e\x87\ +\x31\x0c\x03\x03\xe8\xff\x95\x43\xbf\x92\x7b\x17\x5a\xab\xbe\x3f\ +\xc5\x55\x64\xb3\xd9\x6d\xbb\x76\xed\xba\x41\xd7\xf5\x37\x01\xb5\ +\x4c\x44\x90\x42\xe2\xb9\x3e\x27\xca\x35\x21\x6a\x84\x79\xfa\xe9\ +\xa7\xb9\xf6\xda\x6b\x79\xe9\xa5\x97\x28\x95\x4a\x44\xa3\x51\xfa\ +\xfb\xfb\x89\xc5\x62\x0c\x0f\x0f\xd3\xd9\xd9\x49\x38\xec\x27\xd7\ +\x4a\xa5\x12\x8a\x50\xb0\x5d\x0f\xc7\xb3\xa9\xab\x37\xb8\xfe\xb5\ +\x4f\xfb\xea\xaf\x4f\x32\xb4\xb9\xc8\x9e\x65\x79\x14\x6d\x8c\x9d\ +\xe8\x29\x24\xf2\x43\xa0\xba\x0c\x15\xf6\xb2\x77\x6d\x9a\x5c\xae\ +\x04\x82\x43\xef\x65\x8d\x31\xef\x06\x03\xd6\x05\x10\xb2\xa0\x98\ +\xf6\x18\x79\xd3\xc4\xca\x7b\xb8\x5e\x0e\xc7\x71\x28\x19\x2e\xb6\ +\x5b\xc1\x92\xa1\x9f\x70\x4e\xe3\xb7\x78\x78\xeb\x2d\xec\x16\x2f\ +\x92\xd8\xbe\x02\x4f\xba\x64\xb3\xd9\x20\x3e\x79\x3b\x95\xa8\xad\ +\xad\x8d\x1b\x6f\xbc\x91\x89\x13\x27\xf2\xcb\x5f\xfe\x92\xae\xae\ +\x2e\xc6\x8f\x1f\xcf\xb6\x6d\xdb\xa8\xaf\xf7\xbb\x33\x74\x75\x75\ +\x61\x18\x06\x91\x48\x84\xae\xae\x2e\x84\x10\x83\x89\x44\xe2\x37\ +\xe5\xb0\xa7\x5c\x60\x34\x61\xc2\x04\xd2\xc3\x69\x5e\xbf\x3e\xe7\ +\xc7\x22\x8a\xca\xcb\x2f\xbf\xcc\x86\x0d\x1b\x82\x16\x1d\xe5\xe8\ +\xbe\xfc\xb5\x9c\xb3\x28\x63\x76\xae\xeb\x52\xdb\xa9\xb1\xe6\xc7\ +\x29\xac\x8c\x87\x53\x92\x38\x79\x89\xf4\x7c\xb7\xa8\xdc\x8b\x45\ +\x51\x14\x8c\x90\xc1\x75\x5f\xf8\x21\x6e\xc1\x8f\x9f\x24\xa0\xee\ +\xc7\x75\x3e\xa4\xd0\xc9\xfe\xf8\x90\xae\xeb\x2c\x5e\xbc\x98\x75\ +\x6b\xd6\xb1\xe9\x66\x0b\x94\x10\x6e\xd1\xc4\x74\x0b\x38\xb6\x43\ +\xa9\x52\xe2\x48\x0b\x43\x53\x79\x76\xe8\x26\x4e\x98\x72\x1a\xf9\ +\x64\x89\x91\xb7\x7a\xd9\xf3\x72\x81\x62\xf1\xdd\x9f\x8a\xe6\xba\ +\x2e\x33\x66\xcc\x20\x1e\x8f\xf3\xc9\x4f\x7e\x92\x19\x33\x66\x90\ +\x4a\xa5\x38\xee\xb8\xe3\x68\x6b\x6b\xa3\xbf\xbf\x9f\x50\x28\x14\ +\xa4\x46\xcb\x4d\x64\xde\x8e\x3a\x94\x69\x3f\xe5\xf4\xf1\xaa\x55\ +\xab\x48\xa5\x52\xbc\xfa\xea\xab\x18\x86\x41\xb1\x58\x0c\xc0\xbf\ +\x72\x92\x69\x2c\x6e\x19\x50\x14\xa5\xcc\x48\x98\xfe\xb9\xcf\x7d\ +\x4e\x39\xf5\xd4\x53\x79\xf8\xe1\x87\xc9\x66\xb3\xe4\xd4\x5c\x60\ +\x43\xcb\x0d\x30\x5d\xd7\x27\x51\x94\x89\xe5\xd5\x4a\x03\x4e\xd8\ +\xc1\x52\x2c\x22\x91\x08\x85\x42\x21\xe8\x6c\x71\x48\xb9\xbd\xfb\ +\x0b\x66\xcd\x9a\x35\x6c\xd8\xb0\x81\x4f\x7d\xea\x53\x6c\xde\xbc\ +\x99\x81\x81\x01\x96\x2e\x5d\x4a\x3e\x9f\xc7\x75\x5c\xa2\x49\x85\ +\xa1\x0d\x16\x85\x3e\x87\xe4\xce\x04\xcf\x75\xdf\x87\xa2\x0b\x14\ +\x15\x14\x6d\x7f\xba\xa6\xfa\x0e\x44\x76\xd5\xaa\x55\x2c\x58\xb0\ +\x80\xdb\x6e\xbb\x8d\xa5\x4b\x97\x22\xa5\xe4\x91\x47\x1e\x21\x9f\ +\xcf\x13\x0e\x87\x83\xee\x0e\xa5\x52\x89\xe5\xcb\x97\xbf\x2b\xd5\ +\xbf\x0c\xb5\x4b\x29\x39\xec\xb0\xc3\x58\xb2\x64\x09\xba\xae\x73\ +\xe2\x89\x27\xb2\x70\xe1\x42\xee\xbd\xf7\x5e\x2a\x2b\x2b\xa9\xaf\ +\xaf\x27\x9f\xcf\xb3\x67\x8f\xdf\x71\x63\xeb\xd6\xad\x57\x27\x12\ +\x89\xc7\x00\x66\xcc\x98\x51\xb8\xe4\x92\x4b\x22\xa3\xa3\xa3\x5c\ +\x7e\xf9\xe5\xdc\x7b\xef\xbd\x9c\x7f\xfe\xf9\xb4\xb7\xb7\x33\x67\ +\xce\x1c\x9e\x7b\xee\x39\x66\xce\x9c\x49\x43\x43\x03\xc9\x64\x92\ +\x55\xab\x56\xd1\xdb\xdb\x1b\xb8\xe7\x1f\xfb\xd8\xc7\x58\xbb\x76\ +\x2d\xbb\x77\xef\xe6\xb0\xc3\x0e\x63\xd7\xae\x5d\x1f\x8c\x40\xca\ +\x5e\x48\x2e\x97\xa3\xa1\xa1\x01\x21\x04\xb3\x66\xcd\xe2\xd5\x57\ +\x5f\xa5\xb1\xb1\x91\xeb\xaf\xbf\x9e\x07\x1f\x7c\x90\xc4\x8e\x04\ +\x8a\x69\x12\x8e\x39\x34\xce\xf6\x4b\xaa\xcb\xcc\xf1\x72\xd3\xe2\ +\x77\xab\x1d\x0f\x87\xc3\xdc\x7c\xf3\xcd\xef\xfa\xd9\x65\x1a\x6b\ +\xb9\x9b\x36\x10\x60\x45\x6f\xbf\xc6\x2b\xae\xb8\x82\x33\xcf\x3c\ +\x93\xe5\xcb\x97\x07\xde\x61\xb9\xe1\x81\x94\x92\xd1\xd1\x51\xf6\ +\xec\xd9\x13\x08\x74\x6c\x9e\xa0\xc2\xa8\xb2\xb2\x52\xbc\xfe\xfa\ +\xeb\x9c\x7b\xee\xb9\xdc\x70\xc3\x0d\x58\x96\xc5\xe6\xcd\x9b\xe9\ +\xea\xea\xa2\xae\xae\x8e\x5c\x2e\xc7\xde\xbd\x7b\xe9\xec\xec\xc4\ +\xb2\x2c\x0a\x85\x02\x52\x4a\x8e\x38\xe2\x08\x1e\x7b\xec\x31\x74\ +\x5d\x27\x1a\x8d\x52\x51\x51\x41\x22\x91\x38\x28\xd4\xf7\x7d\x55\ +\x27\xb6\xb5\xb5\xc9\xa6\xa6\x26\x26\x4f\x9e\xcc\xc0\xc0\x40\xe0\ +\x31\xc5\xe3\x71\x1e\x7c\xf0\x41\xde\x78\xe3\x0d\xbe\xfa\xd5\xaf\ +\x72\xfb\xed\xb7\x33\x38\x38\x48\x24\x12\xa1\xbe\xbe\x9e\x95\x2b\ +\x57\xd2\xdc\xdc\xcc\xae\x5d\xbb\x18\x1d\x1d\xa5\xae\xae\x8e\x81\ +\x81\x01\x76\xef\xde\x7d\x51\x22\x91\xb8\x7f\x6c\x51\x66\x56\x55\ +\x55\xcd\x14\x42\xbc\x97\x4e\x6d\x9e\xeb\xba\x5d\x83\x83\x83\x6f\ +\x96\x6d\xc8\xe1\x87\x1f\x5e\x68\x6e\x6e\x3e\xa0\xcb\xf6\x1f\x2b\ +\x77\xdb\x5f\x0d\x6f\xd8\xb0\xe1\xcb\xc9\x64\xf2\x3e\x80\x13\x4e\ +\x38\xa1\x58\x28\x14\xc2\x65\x0c\x6d\x7f\xd2\xf4\xfe\x5f\xdf\x4e\ +\xa5\x0d\x85\x42\x41\xcc\x54\xee\xef\x55\x6e\x3a\xbd\x65\xcb\x96\ +\x2f\x25\x12\x89\x07\x0e\xb9\xca\xca\x64\x32\x74\x74\x74\x04\x79\ +\xeb\x32\xd7\xf7\xe9\xa7\x9f\xe6\xea\xab\xaf\xe6\xb5\xd7\x5e\x63\ +\xc7\x8e\x1d\x81\x5d\x28\x43\x0a\xa1\x50\x28\xc8\xe2\xbd\xdb\x43\ +\x1c\xb3\xd9\xec\xf6\x6c\x36\xbb\xfd\xfd\x5c\x57\x7d\x7d\x7d\x99\ +\xdd\x61\x0e\x0d\x0d\x2d\xee\xe9\xe9\x79\xaf\x53\xd8\x35\x35\x35\ +\x9b\xcb\x0c\xfe\xe1\xe1\xe1\xe7\xa3\xd1\xa8\x5a\x2c\x16\x8f\x55\ +\x14\x65\x3c\x80\xab\x42\xdd\x14\x8d\xe1\xad\x05\xa4\x2b\x29\xd9\ +\x25\xc2\x5a\x05\x20\xc7\xf0\xbb\x12\x4d\x4d\x4d\x07\x08\x6f\xff\ +\xb6\xeb\x42\x08\xfd\x90\x9f\x90\xfa\xfa\xfa\xdd\xab\x56\xad\x3a\ +\xac\xbd\xbd\x9d\xa3\x8f\x3e\x9a\x27\x9f\x7c\xb2\x8c\xe6\x06\x39\ +\xec\x70\x38\xfc\x0e\xaf\xe2\xdd\x76\xaa\x61\x18\x6c\xdb\xb6\x2d\ +\x38\x21\xff\x2f\x8e\xf1\xe3\xc7\x3f\x1a\x0a\x85\x2e\x04\xc8\x55\ +\x78\x9c\xf1\xcd\x46\x22\x06\xe4\x87\xab\xf8\xfa\x79\xff\xc6\xed\ +\x2b\xaf\x81\x92\xce\xc0\x86\x22\x6f\x3d\x96\xf5\x1f\xb0\xe9\x37\ +\x46\x7b\xa8\xbf\xbf\xff\x8b\xfb\xa9\xc1\xd2\x21\xf5\xb2\xf6\xc3\ +\xb3\xe4\x4d\x37\xdd\xc4\x2d\xb7\xdc\xc2\x4b\x2f\xbd\x44\x6f\x6f\ +\xaf\xff\x28\x87\x74\x1a\x5d\xd7\x83\x27\xcd\x1c\x4c\x72\x3f\x9b\ +\xcd\xfe\xc9\xd6\x1a\xff\x8f\x0c\x25\x70\xf3\x6d\x81\xe7\x49\x4a\ +\x49\x41\x72\x47\x9c\xcb\xbe\x7c\x15\x99\x2e\x2b\xd8\xdb\x46\x24\ +\x14\xe4\xed\x85\x28\x3f\x68\xe3\xe0\x1f\x36\xf9\xbe\x73\xea\xed\ +\xed\xed\x2c\x5e\xbc\x38\x68\x3e\x2c\xa5\xa4\xba\xba\xfa\x8f\x16\ +\x5c\xc6\x62\x31\x76\xee\xdc\x79\x6c\x7f\x7f\xff\x7a\xfe\x9b\x8e\ +\x53\x4e\x39\x85\xae\xae\x2e\xf6\xdc\x99\xc3\x73\x25\x52\x1a\x08\ +\xa9\x53\x5d\x1d\xf1\x0b\x78\xc6\x6c\x46\x39\x3c\xb0\x6d\xfb\x3d\ +\xb7\xbc\x7e\x5f\x02\x31\x4d\xf3\x65\xd7\x75\xb7\x95\xbd\x93\x83\ +\xe9\x10\x94\x4a\xa5\x6c\xcf\xf3\x46\xff\x3b\x0a\x42\x4a\x69\x5e\ +\x72\xc9\x25\x9c\x72\xca\x29\xb4\xb4\xb4\x70\xc7\x1d\x77\x90\x4a\ +\xa5\x68\x68\x68\xa0\xb7\xb7\x97\x9a\x9a\x1a\xda\xda\xda\x58\xb1\ +\x62\x45\x90\xa2\xd8\xb0\x61\x03\xb6\x6d\xaf\xfb\xc0\x05\x52\x5d\ +\x5d\xcd\xf0\xf0\xf0\x65\xc3\xc3\xc3\xfc\xff\x68\xc8\x32\x0e\x15\ +\x0e\xfb\x7d\x80\xcb\x7d\xbd\xa6\x4c\x99\xc2\xe6\xcd\x9b\x99\x30\ +\x61\x02\x53\xa7\x4e\xa5\xa7\xa7\x87\xee\xee\xee\x32\xb9\xc1\xfe\ +\xc0\x05\x72\x28\xdb\x6a\xff\x77\x19\x9a\xa6\x71\xff\xfd\xf7\xf3\ +\xc2\x0b\x2f\x90\xcd\x66\x83\xb8\xa5\x1c\x78\x4a\x29\xe9\xee\xee\ +\x0e\xbe\xf7\x3c\xef\x7d\x37\xe8\xd7\xf8\x68\xfc\xd9\xe1\x38\x4e\ +\xc8\x30\x0c\xd2\xe9\xf4\x01\x1e\xe2\x9f\x8a\x69\xc6\x82\xe7\xf7\ +\xec\xad\x88\x8f\x96\xfb\xcf\x8f\x48\x24\xd2\x54\x2a\x95\xaa\xde\ +\xe3\xba\xba\x75\x75\x75\x83\xa3\xa3\xa3\x85\x8f\x56\xf0\xa3\xf1\ +\xd1\xf8\x68\x7c\x34\x3e\x1a\x1f\x8d\x8f\xc6\x47\xe3\xa3\xf1\xd1\ +\x38\x60\xfc\x7f\xa7\x8c\x4b\xc9\xd0\xc3\x6c\x1c\x00\x00\x00\x00\ +\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x1a\x78\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x64\x00\x00\x00\x69\x08\x06\x00\x00\x00\xcc\x7c\x86\x8a\ +\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\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\x88\x26\x00\x00\x88\x26\x01\ +\xac\x91\x9d\x06\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x03\x03\ +\x0e\x04\x3a\x04\x0e\x03\xc5\x00\x00\x19\xf8\x49\x44\x41\x54\x78\ +\xda\xed\x9d\x7b\x74\x54\xf5\xbd\xe8\x3f\xbf\xbd\x67\xcf\x64\x92\ +\x0c\x79\x12\xc2\x23\x01\x4a\x28\x8f\x4a\x90\xa2\x16\x6b\xc3\xa9\ +\xa0\x02\xf5\xd4\x2e\xbd\xda\x2e\x5b\xee\xa5\x85\x7a\xb4\x75\xf5\ +\xae\x16\xef\x83\xf6\xf6\x9c\x73\x5b\xd0\x7a\x7b\xaf\x4b\xaf\xbd\ +\xb4\x97\xd5\x7a\x3d\x2a\xb7\xd6\x1e\x3d\xe7\xd4\x5a\xa1\x2a\x78\ +\x05\x0f\x4a\x00\x51\x08\xa4\x09\xaf\xc8\x23\x04\xf2\x9a\x24\x33\ +\x99\xcc\xec\xc7\xef\xfe\x31\xcc\x66\x1e\x7b\x87\x09\x4c\x12\x70\ +\xe5\x3b\x6b\xaf\x64\xf6\xfe\xfd\x7e\xfb\xf7\xfb\xbe\xbf\xdf\xdf\ +\x63\x04\x40\x65\x65\x65\x9d\x10\x62\x07\x63\x30\xea\xa0\x00\xaa\ +\x65\x59\xda\x18\x2a\xae\x0e\xf0\x00\x85\xa6\x69\x16\xaa\xaa\x0a\ +\x80\x94\x12\xcb\xb2\xc6\x30\x33\x42\x20\x84\x40\x51\x94\x14\x82\ +\x94\x1b\x86\x51\xe6\xf5\x7a\x01\xc8\xcf\xcf\x67\xe5\xca\x95\x63\ +\x98\x1a\x21\xd8\xbf\x7f\x3f\x7b\xf7\xee\x4d\x21\xc8\x44\xc3\x30\ +\x2a\xd3\x0b\x9a\xa6\x89\xae\xeb\x63\x18\x1b\x46\xc9\xf0\xf9\x7c\ +\x08\x21\x32\x54\xd6\xf8\x0b\x97\x0d\x52\x4a\xfa\xfb\xfb\x69\x6b\ +\x6b\x1b\xc3\xdc\x30\x41\x5e\x5e\x1e\x53\xa6\x4c\x41\x4a\x99\x41\ +\x90\x80\x65\x59\x81\xf4\x0a\xc3\x65\x4b\x84\x10\x28\x28\x08\x40\ +\x20\x88\x19\x26\x31\xcb\x40\xf5\x9b\xf1\x3b\x31\x0f\xaa\xa5\x82\ +\x00\xa1\x48\x10\x20\x91\x9f\x38\x82\xa4\x13\x22\x99\x20\x5e\x21\ +\x84\xe6\x54\x30\x5d\x9c\x72\x01\x41\xa3\x8f\x93\xfa\x39\xba\x8d\ +\x10\x03\x32\xc6\x67\x6e\xc8\x67\x76\x6d\x01\x49\x76\x8d\xfe\x1e\ +\x89\x6c\xcf\x27\x76\xce\x87\xd5\xee\xc7\x33\x90\x17\x27\x90\xdd\ +\xb1\x4f\x36\x41\x14\xcb\xb2\xd4\x64\x22\x58\x96\x95\x53\x09\x11\ +\x40\x8f\x19\xa6\x61\xe0\x04\x1d\x66\x0f\x42\x2a\x4c\x9d\x9e\xc7\ +\x8a\xa5\x65\xe4\xe5\x29\x98\x26\x48\x09\xe2\x82\x34\x14\x94\x0a\ +\x28\xeb\x47\xcc\x09\x83\x02\xb1\x01\x89\xec\xd3\x30\x7a\x35\x64\ +\x9f\x86\x19\xf2\x60\x85\x34\xac\xb0\x07\x2b\xa4\xa2\xe8\x9a\x2d\ +\x4d\xf1\x4b\x5e\x13\x04\x49\xe0\x39\x9d\x20\xc2\x49\x12\xdc\x28\ +\x78\x39\x10\xb2\x22\xfc\x6b\x7f\x03\x52\x4a\x54\xa9\x52\x31\xc9\ +\xcb\x17\xbf\x54\x8a\xb4\xc0\x30\x24\x42\x08\x12\x5d\x10\x71\x1d\ +\x05\x52\x20\x11\x60\x48\x34\x55\x81\x62\x13\x6f\xb1\x09\x0c\x10\ +\xef\xda\x85\x72\xc0\x40\x48\x62\x9c\xcf\xc3\x68\xf7\xa1\xb7\xf9\ +\xf0\x84\xf3\x6d\x4e\x10\x57\xa9\x44\x0d\x26\x21\xae\x94\xcb\x85\ +\x84\x18\xd2\x64\x57\xff\xa1\x0b\x12\x20\xf0\xe5\x09\x6e\xbb\xab\ +\x0c\x69\x65\xa9\x16\xed\xe7\xc2\xf1\x96\x04\xfc\x45\x02\x8a\x07\ +\x10\xb3\x07\x40\x01\x3d\x66\x61\xf6\x7a\xb0\x7a\xbd\x18\xbd\x2a\ +\xb2\xcf\x8b\x19\x56\x91\x21\x0f\x46\x48\x41\x89\x7a\x11\x42\xc6\ +\xc3\xe2\x51\x92\xa8\xc1\x24\xc4\xb5\x42\x2e\xa4\xe4\xa4\x7e\x0e\ +\x43\x9a\x28\x17\xb0\x58\x33\xb7\x00\x45\x11\xc8\x1c\x31\xae\xdd\ +\x86\x14\x48\x13\xa4\x09\x1e\xa1\xe0\x29\x92\x50\x14\xbd\x30\x96\ +\xfe\x14\x89\xd2\xa3\x92\x81\x36\x0d\xeb\x9c\x9f\x48\x9b\x07\x4f\ +\x77\xbe\xad\xee\x46\x4a\xa2\xb2\x96\x90\x64\x62\xe4\x82\x20\xed\ +\x46\x4f\x8a\x14\x54\x4e\xf6\x0e\xab\x5d\x16\x4e\xff\x25\x4b\x94\ +\x94\x78\xfd\x02\xef\x0c\x1d\x51\xa3\x53\xa2\x48\x4c\xab\x83\x58\ +\x8f\x02\x3d\x5e\x62\x3d\x2a\xf4\x7a\x31\xc2\x0a\x84\x35\x62\x21\ +\x81\x12\xd1\x10\x6a\x6e\x25\xc9\x0d\xbf\xc3\x4e\x90\x90\x8c\xa4\ +\x7c\x2f\x2c\x52\x47\x3d\x20\x03\xc0\x8a\x4b\xa9\x34\x40\x11\x0a\ +\x79\x85\x12\x0a\x63\xe4\x4d\x06\x49\x04\x64\xc2\x96\x81\x65\x40\ +\xd7\x9f\x4b\x90\x5d\x79\x39\x27\x48\x56\x2a\x2b\x97\x04\x31\x30\ +\xe3\x86\xfa\x02\xf8\x7c\xa3\x4b\x10\x57\x02\xa5\xcb\x56\xc2\x63\ +\x93\xa0\xfa\x40\xd1\xc0\x90\x72\xe4\x09\x92\x4b\xef\x8a\xf8\x78\ +\x6c\xfb\x01\xa0\x88\x6b\x2c\x8c\x10\x49\x03\x19\x01\x18\x54\x42\ +\xc6\xb2\xbe\xc3\x97\xb9\x18\x92\x0d\xc9\xb5\xa4\x64\xb6\x25\x87\ +\x50\xf7\x82\x5a\x11\xf1\x7a\x71\xc4\x48\x5b\xdd\x08\x2e\xc6\x30\ +\xc3\x4a\x90\x1c\x8b\xc8\x90\xbc\xac\x04\x27\xe4\x82\x23\x84\x88\ +\x1b\xcd\x54\x50\xb2\xaa\xab\xa8\xd0\xd5\xae\x73\xea\x64\x1f\x35\ +\x15\x73\xb8\x61\xc6\x4d\x54\x96\x4e\x60\x7a\xe5\xa7\x50\x15\xe8\ +\xec\x6f\xe3\x64\xf0\x2f\xb4\x85\x3e\xe6\x78\x77\x03\x8a\x50\x1d\ +\xde\x95\x33\x0c\xe6\x5c\x42\x86\x1c\x87\x0c\xb7\x63\x7a\x29\xc9\ +\x78\xfb\x4f\xdd\xf4\xb4\xc3\xab\x3f\xfb\xbf\xcc\x9f\x3e\x1f\x8f\ +\xea\x71\xec\xa7\x29\x0d\xce\xf4\x1e\xe5\xd7\x7b\xff\x96\xf3\xa1\ +\x93\xa8\x8a\x73\xb9\x44\x46\xc0\x92\x56\x5c\xf2\x10\x59\xe7\xeb\ +\xe4\x30\xa8\x40\x27\x3c\x2b\xd9\x78\x01\x57\x72\x5d\x0e\xc4\x06\ +\x2c\x5e\x7d\xb1\x0d\x2d\x56\xc6\x47\xcf\xec\x60\x61\xcd\x42\x54\ +\x45\x75\xf5\x92\x3c\x8a\xc6\xd4\xe2\x39\x6c\xb8\xed\x65\x6e\xfd\ +\xd4\x7d\x18\x96\xee\x58\x2e\xd4\x6b\xb0\xed\x4f\xed\x4c\xb6\xea\ +\xb8\xbf\x76\x2d\x4b\x3e\xf5\x55\xe6\x8c\xff\x5c\xd6\x0c\x92\x2b\ +\x9c\x0c\x86\x97\x61\x77\x7b\x11\x82\xf4\x66\x06\x6b\xd7\xb2\xe0\ +\xf5\x7f\xec\x24\xe0\x2f\xe5\xfd\x5f\xbe\x89\xdf\xeb\xcf\x2a\xc5\ +\x92\x90\x80\xfb\x6b\xff\x23\xc5\x79\x15\xfc\x63\xc3\xff\xc4\xab\ +\xfa\xec\xe7\xaa\x47\xd0\x72\x64\x80\xe6\xc3\x3d\xdc\xff\xf7\x7f\ +\x43\xcd\xc4\x99\x00\xb4\x74\x1f\xe6\xf0\xf9\xf7\xb3\xa0\x88\x95\ +\x53\xad\xe1\xa4\xae\x06\x55\x59\xb9\xf3\xf3\xe3\xae\x6e\x32\xa7\ +\x2a\x8a\x3b\x72\x0f\x7f\xd0\x47\xa4\xdf\xe4\xe7\x0f\x3e\x62\x13\ +\x23\x1d\xa2\x46\x84\xf7\xff\xb2\x1b\x4d\xf8\xb9\x61\xd6\x02\xbc\ +\x1e\x6f\x0a\x61\x56\x7c\x7a\x15\x4d\x1d\x7b\x69\xee\xfc\xe0\x22\ +\x41\x54\xc1\xc9\x63\x03\x54\x56\x94\x50\x33\x71\xa6\x4d\x40\x04\ +\x29\x73\xda\x57\xaa\x6a\x73\xee\xf6\xe6\x42\xe5\x5c\xb6\x1f\x23\ +\x05\x87\x3f\x0c\x51\x5e\x12\xe0\xdf\xde\x76\xbf\x63\xa9\x73\xa1\ +\x53\xfc\xb7\x9d\xab\xe9\xe9\x0b\xb3\xf5\xe5\x4e\xaa\x27\x54\xf1\ +\xde\x2f\xde\xca\x08\xf4\xfe\xcd\x67\xfe\x3d\x8f\xbd\xb3\xca\xfe\ +\x1e\x09\x5b\xf4\xf5\x98\xdc\x3c\x6f\x61\x76\x49\xcd\x61\xca\xed\ +\x5d\x4a\x0b\x29\x83\x89\x93\x65\x59\x57\x7c\x25\x5c\xc6\xc4\x27\ +\xfd\x7b\xe2\xa3\xa8\x82\x86\x7d\x7d\x74\xf7\x84\xf9\xdf\x8f\x3c\ +\xe1\x6a\x04\x5f\xf8\xf0\x51\x22\x46\x98\xbc\x7c\xc1\xed\x77\x97\ +\x70\xf0\x48\x13\x77\xfe\xf8\xde\x0c\x04\x57\x15\xcd\xa4\xa6\x74\ +\x3e\xa6\x65\x20\x91\x74\x77\xe8\x48\x24\xd7\xd7\x5c\xe7\xe8\xd2\ +\x5e\xf2\x93\x23\x7c\x24\x2e\x37\x2f\x4b\x71\x32\x7e\xb9\xe4\x06\ +\x91\xf6\x71\xba\x27\x10\x28\x42\xa1\xf9\x60\x3f\x15\xe5\x45\x2c\ +\xb9\x7e\x89\xa3\x51\xee\x8e\x9c\xa3\xb1\xbd\x1e\x81\x40\x5a\x50\ +\x50\xa8\x32\x73\xf6\x38\xde\xfb\x70\x3f\xef\x37\xd6\x67\xd4\x59\ +\xb3\xf0\xa7\x58\xc4\xd0\x54\x85\x73\x6d\x61\xf4\x98\xc1\xbc\x4f\ +\xcd\xc9\x70\x9f\x84\x14\x5c\xea\x93\x6b\x37\x2b\xeb\xc0\x30\xd9\ +\x1d\xcb\xdd\x8c\xa1\xc8\x20\x51\x3a\x74\xb4\xc5\xd0\x63\xb0\xe2\ +\xe6\xbf\x72\x8d\x25\xde\x39\xf1\x4f\xa8\xc2\x13\xaf\x7f\xa1\x89\ +\x09\x93\x7d\x9c\x3c\x16\xe5\x9d\x8f\xfe\x95\x45\x73\x6e\x4a\x19\ +\x47\xb1\x7f\x3c\x4d\x3b\x4b\x68\x3a\x76\x8a\xed\xbf\x78\x99\xfe\ +\xaf\xc7\x98\x33\x25\x95\x20\x01\x5f\x09\x9f\xab\x5a\xce\x80\x11\ +\x41\x37\x23\xb4\x87\x5b\xe9\xe8\x3f\xe3\x28\x45\xb9\x8e\x43\x46\ +\xc7\xcb\xca\x12\xba\xda\x75\x84\x80\x05\x33\xe7\xb9\x96\x69\xee\ +\xfc\x00\x55\xa4\xba\xbf\x25\x65\xf1\xe5\x00\x07\x8e\x35\x38\x26\ +\x0d\xe7\x55\xcd\xa7\xe1\x2f\x1f\x33\xa9\x64\x32\x25\x53\xca\x33\ +\xda\x2c\xcb\x9f\xc8\xaa\x05\x7f\x1b\x4f\xec\x4a\x8b\xff\x77\xe2\ +\x65\x5e\x39\xf4\xf4\xd5\x65\x43\x86\x23\x0f\x94\xfa\x72\x99\x71\ +\x85\x7a\x4d\xa4\x94\x54\x55\x4c\x74\x6d\xe7\x74\x4f\x33\x42\x28\ +\x29\xf5\x0a\x02\x2a\x52\x4a\xce\x76\xb6\x3b\xd6\x99\x3b\xf5\x33\ +\x59\x05\x76\x82\x78\x46\x41\x49\x6b\xff\xe2\x75\x15\x24\x17\x73\ +\xc1\x11\x8a\x48\x55\x51\xc2\xc5\x7d\x0c\xf7\x59\x08\x21\xa8\x99\ +\x3c\xd3\xb5\x2d\xc3\x32\x33\x8c\xb7\x3f\x5f\x41\x08\x41\x6b\xc7\ +\x19\xc7\x3a\xd3\x26\x4d\xc6\x32\xa1\xc0\xe7\x4f\x89\x57\x06\x57\ +\xaf\xc2\xd9\xf0\xcb\x51\x9a\xa0\x4a\xcf\x69\x5d\x79\x2c\x22\x2e\ +\xe9\xd3\x87\x43\x71\x64\x57\x96\x95\x39\x47\xef\x66\xd4\x11\x91\ +\xaa\x27\x9e\xfe\x08\x47\x23\xce\x12\x32\xb3\x9a\xaf\xfd\x4d\x25\ +\x13\xef\x9b\x45\x59\x51\x11\x47\xfe\xe1\x50\xaa\x1b\xdd\x77\x8a\ +\x7f\x3e\xf8\x0c\x9a\xe2\xa3\xc0\x57\x48\x47\xf4\x63\x67\x82\x58\ +\x57\x81\x0d\x19\x49\xd0\x63\xf1\xc1\x96\x14\x16\x3b\x3f\x37\x07\ +\x5c\x93\x4c\x9a\x4f\x10\x89\x39\x3f\x2f\xce\x1b\x8f\xc7\xa3\x90\ +\xe7\xc9\xc7\x32\x32\x35\x74\xc4\xe8\xe3\x40\xc7\x9b\xa9\x32\xe2\ +\xb4\x0a\x67\xd8\xd5\xf8\x20\x5e\x56\x6e\xd7\x65\x65\x17\x80\x99\ +\x46\xbc\x63\xf9\xde\x80\xab\x84\xb8\x81\xd7\xab\x10\xee\x77\x5e\ +\x87\xec\x55\xf3\x2e\xa6\x0c\x84\x73\xf7\x44\x36\x19\xe2\xd1\xcc\ +\xf6\x26\x62\x91\x5c\xac\x5c\x8c\xe3\x41\xa4\x7d\x77\x20\x88\x39\ +\x78\xf4\xac\x9b\x51\x57\xd2\xfa\x7c\x0a\xba\x61\x3a\x3e\xd3\x54\ +\xef\xc5\xf5\x73\x0e\xed\x0b\x57\xab\x96\x8d\xea\xcd\xb5\x2a\x1f\ +\x64\x3e\x64\xa4\x67\x0c\x0d\x43\x0e\x3a\xdf\x1e\x1b\x54\x65\x29\ +\x18\xba\x85\x69\x99\x19\x59\x61\x4d\xf1\x5d\x94\x84\x2b\xc8\x47\ +\xe5\x1a\x1f\xc9\x11\xfb\x88\x67\x7b\xb3\x51\xc0\x8a\x10\xf6\x4c\ +\xe0\x50\xb8\x53\x42\xea\xaa\xc7\x61\xe2\xea\x38\x3e\x86\x3f\x52\ +\x57\x46\x42\x34\xb3\x01\x55\x15\xe8\x86\x3b\x07\xda\xb6\xc0\x81\ +\xde\x7a\xcc\x42\x55\xe3\x3b\x91\xd2\x07\x69\x5a\xc6\x05\x0c\x08\ +\x57\x09\x1b\x2d\xc8\x5a\x65\xb9\xcd\x66\x5d\x49\x2e\x2b\xcd\x8a\ +\x3a\xbb\xaf\x03\xee\x8c\xa0\xa9\x3e\xc7\x7a\x08\x81\x11\x13\x68\ +\x9a\xc7\x71\x90\xba\x15\x03\x71\x31\x8b\xe6\x4a\xd5\x51\xca\xf6\ +\x66\x6d\x43\x92\xb3\xb5\x23\x25\x21\x08\x88\x9a\x11\x7c\x6a\xe6\ +\x3c\x88\x6d\x0b\x5c\x5c\x66\xaf\xe6\x71\x71\x06\x62\xb9\x41\x20\ +\x16\xb9\x44\x47\xd6\xd9\xde\x5c\x4a\x87\x9b\x4d\x72\x4a\x6f\xfb\ +\xfc\x71\x75\x73\xae\xfb\xbc\x8b\xca\xf2\x39\xd6\x13\x02\x62\x31\ +\x49\x9e\xe6\x75\xce\x00\xc4\x82\x17\xd3\xfe\xd2\x0d\xd9\x97\xfe\ +\x0c\x47\xb6\x77\x48\x81\x61\xee\x88\x92\x39\x43\xa8\x38\x98\xae\ +\xfc\x02\x15\x45\x51\xe8\xea\x09\x52\x5d\x3e\xd5\x51\x65\x09\xe9\ +\x10\xb4\x49\xe2\xa9\x91\x7c\x67\x1b\xd3\x1b\xed\x8e\xef\xd8\x12\ +\x02\xb7\x89\x41\x25\x8b\x94\x9e\xcc\xf1\x14\xee\x90\x92\x8b\x39\ +\x9d\x0f\x11\xd9\x39\x0c\xfe\xfc\xb8\xbb\xda\xda\xd9\x36\x88\x1d\ +\xf1\x66\x1a\x6d\x23\xfe\x8e\xc2\xbc\x80\x0b\x41\x3a\x93\xe2\x53\ +\x71\x45\x4a\x2b\xd7\x30\x6a\xb9\xac\x6c\xa0\x70\x5c\x9c\x20\xc7\ +\x5b\x5b\x5c\xcb\x54\x17\xcf\xe2\x48\xc7\x47\x29\x29\xf8\x70\x28\ +\x1e\x10\x56\x8f\x9f\xe2\x58\xa7\x2d\xd4\x92\x23\xe4\x31\xba\xb9\ +\x2c\xb7\x55\x11\x97\x3d\x9a\x34\x9d\x9d\x0e\x25\xe5\x1a\x48\xc9\ +\xfe\xa3\x07\x5c\x9b\x99\x51\x32\x9f\xa6\xf6\x0f\x52\x54\x4c\x7f\ +\xc8\x02\x29\x19\x5f\x52\xea\x58\xe7\x6c\xdf\x09\xdb\x06\x38\x8e\ +\x27\xcb\x4d\xa5\x72\x98\x56\x9d\x64\x6d\xd4\x73\x16\x8b\x08\x01\ +\x8a\x62\x5f\x82\xf8\x2e\xdc\xf4\x4f\x69\xb9\x06\x8a\xc2\xa1\x13\ +\xcd\xae\x1c\xf4\xb9\xaa\xe5\x58\xd2\x4c\xa9\x17\xec\x34\x40\x51\ +\x58\x38\x6b\x81\xe3\x38\x4e\x06\x9b\xe2\x04\x54\x04\xc2\x61\xb5\ +\x8b\xa6\xe6\xa1\xc8\xe4\x16\x9d\xfb\x37\x12\x69\x93\x41\x6d\x48\ +\x32\x05\x47\x62\xa1\x9c\xd7\x27\x98\x32\xcd\xc7\xc1\xa3\xcd\x1c\ +\x3d\xdb\x9c\xd1\x61\x29\x25\x13\x0a\xab\xa9\x2c\x9c\x9a\x82\xf0\ +\xf3\xad\x31\x2c\xcb\xa2\xae\xf6\x73\x19\x03\x6e\x09\x1e\xe6\x7c\ +\xe8\x54\xdc\xad\x56\x04\xb1\x68\x66\x02\x72\x42\x41\x15\xba\x15\ +\x45\x37\x74\x4e\x9f\xee\xa3\x37\xe8\x9c\x13\x93\x96\xcc\xe9\x42\ +\xb9\xac\x25\xc4\x2d\x1e\xb9\xa2\x55\x27\xe9\x04\x72\x98\x90\x33\ +\x0d\x58\xb0\x28\x80\x47\xd5\xf8\xbb\xff\xf3\xb8\x2b\x47\xdd\x32\ +\xf5\x2e\x4c\xcb\x44\x51\x05\xbd\x41\x83\xa3\xcd\xbd\x2c\xbd\x71\ +\x11\xb5\xd3\x6b\x33\xea\xbc\xd6\xf8\x1b\x3c\x8a\x06\x12\xbc\x3e\ +\x85\x48\x34\x13\xd9\xaa\xe2\xe1\x3f\xd7\x3d\xcb\xd4\xe8\xdd\xac\ +\xb9\xfe\x67\xac\xff\xeb\x67\x1d\xfb\x37\x1c\xab\x4e\xb2\xb6\x21\ +\x09\x24\xe6\x26\xdb\xeb\xb0\x3a\x5d\x38\xc7\x02\xf9\x85\x2a\x53\ +\xa7\x17\xb0\x6d\xdf\x7b\x1c\x6d\x3d\x4a\xcd\xa4\x9a\x8c\x72\x77\ +\xd4\xac\xa4\xab\xff\x2c\xbf\xdd\xf9\x02\x3b\xdf\xe8\xe3\xcb\x75\ +\xb7\xf3\xcc\x7f\xf8\x5f\x19\xe5\x4e\x74\x1f\xa2\xa9\x73\x9f\xbd\ +\xce\xb7\xb8\xd4\x43\x4f\xb7\x41\xd3\xe9\x26\x66\x4d\x99\x95\x32\ +\xce\x69\xa5\xb3\x59\xf7\xb5\xd9\x00\x9c\xea\x69\x1a\x24\xa0\x1f\ +\xfe\x94\x92\x32\x98\x77\x95\x2b\x09\x89\x13\x45\x5c\xdc\x56\xe0\ +\x70\xd9\x8b\x12\x6e\x28\x04\x09\x3f\xfb\xed\x53\xae\xb6\xe4\xfe\ +\xf9\xff\x89\x8d\x5f\x7b\x9d\xc3\xcf\xed\x64\xf3\x0f\x7f\x8d\x4f\ +\xf3\x65\x38\x0c\x6f\x1c\x7d\x21\xe5\x7d\x53\x6b\xf2\x40\xc2\x3f\ +\xed\x7c\x6d\x50\x5b\x29\x50\x1c\xfb\x97\x58\x75\x32\xe2\xeb\xb2\ +\x46\xc3\xe5\x4d\x86\xf2\x4a\x8d\x1b\x6e\x19\xc7\x2b\xdb\xff\xcc\ +\xaf\xfe\xb4\x29\x13\x61\x17\xbe\x57\x8f\xaf\x62\x52\x49\x55\xc6\ +\x80\x04\x82\x57\x0e\xfd\x82\x03\x6d\xef\xa6\xdc\x9f\x54\xed\xe3\ +\xc6\xc5\xe3\x78\xea\xa5\x67\xf8\xf5\x96\xe7\x1c\x6d\xd4\xbb\x2d\ +\x7f\xe0\xf9\x0f\x1f\xcd\xc6\x51\xcc\x99\xdb\x9b\x55\xfa\x3d\x97\ +\xfb\x43\x86\xec\x0e\x9a\x92\x9a\xb9\x7e\x06\x06\x8a\xf9\x2f\x9b\ +\xfe\x3b\x05\xbe\x00\xff\xee\xb6\xfb\x5d\x83\xba\x64\xc4\x1a\x96\ +\xce\x96\xe6\x7f\x60\xdb\xf1\xdf\xc5\x6d\x47\xca\x98\x24\x33\x66\ +\xfb\x99\x3e\xd3\xcf\x96\x8f\x7f\xc1\x9f\x36\x6e\xe4\xf3\x73\x6f\ +\xa4\xbc\xa8\x9c\x96\xee\xc3\x9c\xed\x6b\xc1\xa3\x78\xf0\x28\x5e\ +\x67\xd5\x34\x4c\x33\x86\x23\x1e\x87\x88\xcb\xb0\x39\x52\xc2\xdc\ +\xeb\xf3\x99\x5c\xed\xe3\xd1\x17\x1f\xe7\xb7\x6f\xfc\x0b\xcf\xae\ +\x7b\x8a\x89\xa5\x93\x5c\xeb\xed\x6f\x7d\x9b\xd7\x9b\x9f\xe5\x6c\ +\xa8\x25\x83\x18\xc9\xed\x0a\x05\xa6\x54\x15\x02\x92\x93\xe1\x83\ +\x9c\x0c\x4b\x04\xf1\x39\xf7\xc1\x6c\x84\x35\x42\xab\x4e\x94\x6c\ +\xf3\x2d\x23\xb9\x3f\x24\x81\xc0\xe2\x32\x0f\x7f\xfd\xb5\x32\x2a\ +\xae\x3b\xc3\xc2\x87\x3f\xcf\xb2\x75\x77\xd3\xda\x75\xd6\xb1\xfc\ +\xef\x0e\x3e\xc1\xb9\xf0\xc9\x21\xec\xa0\x12\x17\xd6\x61\xa9\x17\ +\xed\xdb\x10\x82\xdb\x2b\xc5\x99\x5b\xc4\x7e\xc9\x19\x43\xd3\x34\ +\x87\x1c\xfe\xa7\xa4\xbf\x0d\x23\x65\xbf\xbd\x69\x19\x08\x4b\xb8\ +\xe7\x8b\x64\x6a\xe6\xc8\x30\xa1\xb0\x04\x66\xce\x2e\x66\xf7\x9e\ +\x8f\x78\x63\xef\x36\xbe\x79\x47\xe6\x89\x77\x9f\xa9\x58\xc4\xfb\ +\xa7\x5e\xbf\x44\xe6\x49\x66\x9d\xaa\x92\x69\x37\x23\xfd\x11\xfa\ +\xfb\x8d\xdc\x79\x53\x8a\x92\xbd\xca\xb2\x2c\x0b\x5d\xd7\x09\x87\ +\xc3\x57\x2c\xa6\x51\xdd\x40\x58\xa9\xf3\x13\xf2\x32\xdc\xc7\x92\ +\xf1\x60\x18\x06\xef\x35\xec\xe5\x9b\x77\xac\x8c\xa7\xde\x93\x14\ +\xe2\x8a\x4f\x7f\x93\xe6\x8e\x0f\xe8\x8b\x06\x31\xa4\x8e\x31\xc8\ +\x2a\x95\x6c\x74\x6b\xfa\x84\x56\xb4\xdf\xc0\x30\x72\x47\x10\xc3\ +\x30\x18\x18\x18\xc8\x38\xb5\xcf\x51\xbe\x63\xb1\x18\xb1\x58\x2c\ +\x67\x36\x24\xd9\xed\x4d\xec\xeb\x1b\xea\x35\xb1\xca\x87\xd7\xab\ +\xf0\xcf\x17\xdc\xd6\x74\x8e\x1e\x5f\x30\x85\xbf\xbb\xf5\xb7\xfc\ +\xd7\x25\xbf\xe3\xce\x4f\xaf\xc6\xb0\x62\x43\x7b\x47\xc6\x2a\x7d\ +\x71\x31\x1e\x53\xa0\xaf\x2d\x77\xc4\x18\x72\x1c\x62\x9a\x66\x4e\ +\xf7\x87\xe4\x2a\x3f\x79\xcb\xed\xc5\xb4\x77\xf5\xf1\xf7\x2f\x6c\ +\x70\xd4\xf9\x5e\x4f\x1e\x25\xf9\x15\x14\xfa\x8a\x73\xb6\x8d\x59\ +\x51\x05\x67\x0f\x45\x31\x42\x66\x4e\xe3\x10\xb7\x88\x5d\x19\x2e\ +\x63\x6e\x1b\xaf\x1c\x05\xb7\x96\x25\x99\x54\xed\xa3\xf6\xb3\x25\ +\xfc\x8f\xcd\x9b\x78\x6b\xff\xf6\xac\xed\xd8\x15\x31\x82\x80\xc3\ +\x2f\xf6\xa2\x78\x73\x8b\x97\xcb\xf2\xb2\xae\x26\x48\x48\xc4\xe7\ +\x97\x14\x31\x77\x41\x80\x6f\x3c\xb6\x9a\x97\x77\xbd\x44\x7b\xef\ +\x79\x42\x03\xbd\xe8\x66\x94\xa8\x11\x21\xa2\x87\xe9\x8f\xf5\x72\ +\xa5\x9c\x90\x60\xa6\x13\x6f\xf7\x13\x0b\x9a\x23\x36\x4e\x8f\x7b\ +\xfe\x49\xe4\x26\x77\x93\x63\x0e\xb6\x2c\x58\x78\x4b\x80\x79\x0b\ +\x0b\xf8\x7d\xf3\x63\xfc\xf9\xf4\x46\x4a\x03\x25\xf8\x7d\x7e\x4c\ +\xcb\x24\x66\x46\x08\xc7\x7a\xd1\x14\xef\x15\xbd\x47\xf3\x2b\x9c\ +\xd8\xd5\xcf\x91\x7f\x09\x0d\x4b\x0e\xcb\x0d\xbf\x1e\xae\x41\x90\ +\x16\x68\x5e\x85\x12\x6f\x1e\x10\x25\x18\x6b\x23\x18\xbb\xcc\x44\ +\xe0\x85\x55\x49\x52\x82\x11\x95\x98\x31\x0b\x23\x22\x39\xb6\xbd\ +\x9f\x33\x3b\x22\xa8\x9a\x18\x56\x89\x77\x3a\xb7\x77\x78\x25\xe4\ +\x6a\x52\x7b\x0a\x08\x35\x6e\xa8\x0d\x43\xd2\x73\x46\xa7\xb7\xc5\ +\xa0\xe7\xb4\x4e\xff\x19\x13\xbd\x5f\xa2\xf7\x5b\xc4\xfa\x2c\xa4\ +\x89\x4d\x8c\xe1\xc2\x43\x62\x0d\xf5\x35\x2f\x21\xd9\xc6\x13\x66\ +\x4c\xda\x57\x34\x64\x11\x3c\x65\xd0\x73\x4c\xa7\xfb\x63\x9d\xc8\ +\x19\x23\xce\x74\x4a\x9c\x50\xe9\xd6\x54\x0c\xb3\x75\x1d\x35\x09\ +\x91\x62\xf8\xce\x98\xb4\x39\x5e\x11\x98\x52\xd2\x7b\xd6\xa0\xaf\ +\xc5\xa0\xe7\x8c\x41\xf8\xb4\x41\x2c\x2c\x31\xc2\x16\xb1\x7e\x89\ +\x19\x89\xaf\xe1\x4a\xa8\x28\x4f\xde\xe8\xfb\x33\x59\xdb\x90\x5c\ +\x8a\x68\x7e\x97\x42\xa4\xd8\xe2\xb2\xd7\x9e\x27\x73\xbc\x2e\xb1\ +\x62\x12\x53\x97\xc4\xfa\x25\xc1\xd3\x3a\xbd\xc7\x0c\xba\x3e\xd6\ +\xe9\x3f\x69\xc6\xc3\x39\x9b\xe3\x45\x4a\xf4\xa8\x5c\x65\xba\xc0\ +\x8d\xe9\x3d\x43\xa5\xe0\x50\x61\xdc\x79\x15\x8f\x2e\xe8\xad\x30\ +\x11\x52\x64\xc5\xf1\x42\x11\x48\x24\xbd\xe7\x4d\x42\x1f\x27\x38\ +\xde\x24\xd6\x67\xd9\x1c\x6f\xf4\x4b\x7b\xa9\x95\x10\xe0\xf1\x89\ +\x1c\xe4\x9a\x47\x1f\x5c\x93\x8b\xb9\x5b\x75\x02\x05\xdd\xf1\xb3\ +\xdc\x43\x65\x16\xc9\x7b\x2a\x2d\x23\xae\xdf\x2d\x5d\xa2\x0f\x48\ +\x7a\x5a\x8d\x38\xc7\x9f\xd4\x09\xb7\x98\x60\xe2\xaa\xe3\x15\x95\ +\x6b\x1e\xb2\x5e\x28\xe7\x66\x70\xae\x84\x28\x85\xdd\x2a\xaa\x2e\ +\x68\xff\x4b\x8c\x70\x9b\x49\xf8\x94\x49\xb4\xcf\x42\x0f\x49\xf4\ +\xb0\x85\x1e\x96\x71\x5b\xa3\xc4\x39\x5e\xf5\x88\x4f\xa2\xcb\x91\ +\xa1\xb2\xb2\xf6\xb2\x72\xed\xea\x49\x01\xfe\x90\xca\xa1\x5f\x87\ +\x3e\xb1\x1c\x9f\x0b\xc3\x3e\xb2\x71\x88\x00\x45\x13\x8c\x81\x7b\ +\xa4\xae\x8c\xa1\xe6\x1a\x30\xea\x39\xb7\x21\x63\x70\x65\x6e\xaf\ +\xc8\x72\x8b\x17\x80\xaa\xaa\x68\x9a\x86\x65\x59\xf6\x74\x6f\x2e\ +\x37\x5a\x5e\x6d\x5e\x50\x2e\xeb\x0d\x29\xb9\xe8\xa6\xe3\x2c\xcb\ +\x62\x60\x60\x80\x3b\xef\xbc\x93\x3b\xef\xbc\x93\xf1\xe3\xc7\x13\ +\x08\x04\x88\xc5\x62\x04\x83\x41\x76\xef\xde\xcd\xee\xdd\xbb\xd1\ +\x34\x2d\xc5\x8b\x70\xfa\x9b\xed\xb3\xa1\x96\x4b\xf4\x33\x19\x41\ +\x6e\xe5\xae\xf4\x5d\x4e\x7f\x13\x53\xe0\xb1\x58\xcc\x95\x39\xdd\ +\xee\x7b\xb2\x49\x78\x25\xc3\x67\x3f\xfb\x59\x7e\xf9\xcb\x5f\x52\ +\x96\x76\x26\x49\x22\x76\xb9\xf5\xd6\x5b\xe9\xed\xed\xe5\xe9\xa7\ +\x9f\xe6\xe8\xd1\xa3\x19\x03\x4f\xb4\x9d\x3e\x5b\x96\x3e\xd8\xc1\ +\xbe\x67\x5b\x6e\xb0\xff\xdd\xbe\x5b\x96\x95\x72\x88\xdb\x60\xfd\ +\x75\xeb\x97\xc7\xe3\xc1\xeb\xf5\xe2\xf7\xfb\xe9\xef\xef\xb7\x67\ +\x60\xb3\x91\x24\xe5\x52\xfa\x2d\x71\x19\x86\xc1\x8f\x7e\xf4\x23\ +\x5e\x7a\xe9\x25\x9b\x18\xe9\xcb\x45\x13\x10\x08\x04\x58\xb7\x6e\ +\x1d\x5f\xff\xfa\xd7\x5d\x17\x06\xe4\xe7\xe7\x53\x57\x57\x47\xe2\ +\x07\x2d\xaf\xc6\x20\x2d\x5d\x33\xdc\x7a\xeb\xad\x8c\x1f\x3f\x3e\ +\x2b\x35\x24\xa5\x44\x51\x14\x0a\x0a\x0a\xc8\xcb\xcb\x73\x9d\xcb\ +\x1f\xb2\x97\x95\xa8\xf4\xfd\xef\x7f\x9f\x55\xab\x56\xd9\x1d\xaf\ +\xaf\xaf\x67\xf5\xea\xd5\x6c\xdd\xba\xd5\x2e\x6b\x18\x06\x3f\xff\ +\xf9\xcf\x59\xb3\x66\x0d\x07\x0e\x1c\xe0\x8e\x3b\xee\xe0\x9e\x7b\ +\xee\x71\x1c\xec\x8a\x15\x2b\xf8\xce\x77\xbe\xc3\x4d\x37\xdd\x34\ +\xea\x84\x50\x14\x85\x69\xd3\xa6\x0d\x5a\x6e\xee\xdc\xb9\x6c\xd8\ +\xb0\x81\x87\x1e\x7a\x68\xc8\xf6\xc1\xe7\xf3\xe1\xf3\xf9\x2e\xcf\ +\xcb\xba\x78\x02\xb4\xb0\x7f\x20\x6c\xce\x9c\x39\x7c\xef\x7b\xdf\ +\x4b\x79\xd1\xb9\x73\xe7\xf0\xf9\x7c\x4c\x99\x32\xc5\xae\xf7\xf4\ +\xd3\x4f\xd3\xd8\xd8\xc8\xda\xb5\x6b\x99\x37\x2f\x7e\x32\xdc\x3d\ +\xf7\xdc\xc3\xfe\xfd\xfb\x69\x69\x69\x49\xe9\xe4\xce\x9d\x3b\x89\ +\x46\xa3\x1c\x3c\x78\x70\x54\x09\x12\x8d\x46\x79\xe8\xa1\x87\xb8\ +\xf9\xe6\x9b\x79\xe0\x81\x07\x5c\xcb\x1d\x3f\x7e\x9c\x27\x9f\x7c\ +\x92\x03\x07\x0e\x5c\x56\xe0\xe7\xf3\xf9\x30\x0c\xc3\x79\x01\xfa\ +\x50\x24\xc4\x30\x0c\x36\x6d\xda\x94\x71\xff\xdc\xb9\x73\x48\x29\ +\xa9\xac\xac\x44\x4a\xc9\x0b\x2f\xbc\x40\x53\x53\x13\xab\x57\xaf\ +\x66\xde\xbc\x79\x29\x52\xb1\x76\xed\xda\x94\x05\x77\x7e\xbf\x9f\ +\x50\x28\xc4\x5b\x6f\xbd\x45\x38\x1c\x76\x7c\xaf\xa6\x69\x68\x9a\ +\x86\x94\x92\xbc\xbc\x3c\x02\x81\x00\xf9\xf9\xf9\x59\x9e\xb1\x1b\ +\x7f\x47\x20\x10\xa0\xa0\xa0\xc0\x9d\x1b\x3d\x1e\xaa\xab\xab\x59\ +\xb9\x72\x25\xcd\xcd\xcd\xe4\xe7\xe7\xe3\xf7\x67\xee\x91\xf7\xf9\ +\x7c\x78\xbd\x5e\xb6\x6c\xd9\xc2\xf1\xe3\xc7\x07\x95\x36\x55\x55\ +\x29\x2c\x2c\x64\xdc\xb8\x71\x14\x16\x16\xda\x2a\x59\x08\xe1\xd8\ +\x76\x56\x46\x3d\xf9\x5a\xb4\x68\x11\x13\x26\x4c\xc8\x48\x38\xb6\ +\xb5\xb5\x21\x84\xa0\xa2\xa2\x82\x17\x5f\x7c\x91\x37\xdf\x7c\x93\ +\x07\x1e\x78\x80\xba\xba\xba\x0c\x5d\x5a\x52\x52\xc2\xdc\xb9\x73\ +\x69\x6e\x6e\xa6\xa4\xa4\x84\xa7\x9e\x7a\xca\x26\xc4\xb7\xbf\xfd\ +\x6d\x47\x3b\x72\xef\xbd\xf7\xe2\xf1\x78\xe8\xea\xea\xe2\xab\x5f\ +\xfd\x2a\x7e\xbf\x9f\x48\x24\xc2\x9b\x6f\xbe\xc9\xb3\xcf\x3e\x3b\ +\x28\x92\x1f\x7e\xf8\x61\x6e\xb9\xe5\x16\x2c\xcb\xc2\xe3\xf1\xb0\ +\x67\xcf\x1e\x1e\x7d\x34\x75\x55\x7b\x2c\x16\xe3\xc1\x07\x1f\xe4\ +\xde\x7b\xef\xb5\x55\xe8\xb2\x65\xcb\xa8\xaf\xaf\xe7\x87\x3f\xfc\ +\xa1\x5d\x2e\x12\x89\xb0\x71\xe3\x46\x6a\x6a\x6a\x88\x46\xa3\xfc\ +\xf8\xc7\x3f\x66\xff\xfe\xfd\x19\xef\xd5\x75\x9d\xeb\xae\xbb\x8e\ +\x47\x1e\x79\x84\xda\xda\x5a\x2c\xcb\x42\x55\x55\x36\x6c\xd8\xc0\ +\x1f\xff\xf8\x47\x9b\x58\xaa\xaa\xda\x8e\xc3\x65\x49\x48\x42\xc7\ +\x27\x57\x94\x52\xd2\xda\xda\x4a\x75\x75\x35\x3b\x76\xec\x60\xfb\ +\xf6\xed\xdc\x77\xdf\x7d\x2c\x5e\xbc\x38\x73\x7b\xc0\x85\x7a\xb3\ +\x67\xc7\x37\xc4\x74\x77\x77\xb3\x6a\xd5\x2a\xf2\xf3\xf3\xe9\xec\ +\xec\x74\xfd\xbd\xdd\xea\xea\x6a\x96\x2c\x59\xc2\xf2\xe5\xcb\x79\ +\xf0\xc1\x07\x59\xbe\x7c\x39\x67\xce\x9c\xe1\xae\xbb\xee\xc2\xe3\ +\xf1\xb8\x7a\x2d\x6b\xd7\xae\xe5\xb6\xdb\x6e\x63\xe3\xc6\x8d\x7c\ +\xe5\x2b\x5f\x61\xf3\xe6\xcd\xd4\xd5\xd5\xb1\x64\x49\xea\xd1\xb3\ +\x5e\xaf\x97\x4d\x9b\x36\xb1\x79\xf3\x66\x00\xd6\xad\x5b\xc7\xd2\ +\xa5\x4b\x59\xb7\x6e\x5d\x86\xa4\x3d\xfc\xf0\xc3\xd4\xd7\xd7\x53\ +\x5c\x5c\xcc\xd9\xb3\xce\x6b\x8b\x67\xcf\x9e\xcd\xf3\xcf\x3f\x4f\ +\x51\x51\x11\x2b\x56\xac\xa0\xb6\xb6\x96\x65\xcb\x96\xd9\x2a\x2e\ +\x81\x87\x4b\x39\x31\x97\xf4\xb2\x26\x4c\x98\x90\xf1\x3c\x18\x0c\ +\xd2\xd7\xd7\xc7\xc0\xc0\x00\x9b\x37\x6f\x66\xd9\xb2\x65\xdc\x75\ +\xd7\x5d\x83\xfa\xd7\x25\x25\x25\x36\xd2\x4a\x4b\x4b\x51\x55\x95\ +\x8f\x3e\xfa\xc8\xb5\x83\x93\x26\x4d\xa2\xa0\xa0\x80\xf5\xeb\xd7\ +\x13\x0e\x87\xf1\x7a\xbd\xec\xde\xbd\x1b\x80\xb2\xb2\xb2\x0c\x82\ +\x18\x86\xc1\x82\x05\x0b\x58\xbc\x78\x31\x7f\xf8\xc3\x1f\xd8\xb2\ +\x65\x0b\x3e\x9f\xcf\x56\x31\x45\x45\x45\x8e\x04\xac\xae\xae\x06\ +\xe0\xe4\xc9\x93\x83\xaa\xa2\xa9\x53\xa7\x62\x9a\xa6\x63\x39\x29\ +\x25\x3f\xf8\xc1\x0f\x6c\xf5\xdc\xd9\xd9\x49\x61\x61\x21\x5d\x5d\ +\x5d\x9c\x38\x71\x22\x15\xe1\x8a\x32\x74\x2f\x2b\xb9\xe0\xb8\x71\ +\xe3\x32\x9e\x1f\x3a\x74\x28\xbe\xd1\xb2\xae\x8e\x68\x34\x3a\xe8\ +\x82\xec\x04\x24\x74\xb9\x69\x9a\xd4\xd6\xc6\xf7\x03\x1e\x3c\x78\ +\x30\x83\x20\x09\x44\x4f\x9c\x38\x91\x96\x96\x16\x4e\x9c\x38\x61\ +\x3b\x17\x55\x55\x55\x00\xb4\xb7\xb7\x67\x1e\x32\xa3\xeb\xb6\xe3\ +\xf1\xcc\x33\xcf\x50\x58\x58\x48\x5e\x5e\x1e\xb7\xdf\x7e\x3b\x96\ +\x65\xd1\xd8\xd8\xe8\x38\xce\xaa\xaa\x2a\x2c\xcb\xe2\xd4\xa9\x53\ +\x83\x06\x71\xd3\xa6\x4d\xe3\xd0\xa1\x43\x19\x63\x95\x52\x52\x54\ +\x54\xc4\x8d\x37\xde\xc8\x87\x1f\x7e\x48\x73\x73\xb3\x6d\xe7\x14\ +\x45\xc9\xb0\x79\xc9\xef\xb8\xac\x19\xc3\x60\x30\x98\x71\xbf\xb1\ +\xb1\x11\x55\x55\x59\xba\x74\x29\x07\x0e\x1c\x60\xdb\xb6\x6d\x2c\ +\x5d\xba\x94\xf2\xf2\x72\xd7\xb6\x42\xa1\x90\x4d\x90\x84\x07\x96\ +\xdc\xf9\x74\x6e\x04\xd8\xb1\x63\x07\x9a\xa6\xd9\xf5\xae\xbf\xfe\ +\x7a\x82\xc1\x60\x4a\xf0\x96\x80\xc9\x93\x27\x53\x51\x51\x41\x24\ +\x12\xe1\x27\x3f\xf9\x09\x81\x40\x80\xea\xea\x6a\xda\xda\xda\xd8\ +\xb0\x61\x03\x0d\x0d\x0d\x78\x3c\x9e\x8c\xd8\x62\xfa\xf4\xe9\x34\ +\x36\x36\xa2\xeb\xba\xfd\xae\xf4\x32\x09\x29\xaa\xaf\xaf\xcf\x60\ +\x20\xc3\x30\x58\xbe\x7c\x39\x00\x2f\xbd\xf4\x12\x89\xdf\xa5\x1f\ +\x4c\xda\x06\x4b\x2d\x79\x2e\x15\x24\x39\xe9\xcc\xc3\x87\x0f\x53\ +\x59\x59\x89\xaa\xaa\x2c\x5e\xbc\x98\xe6\xe6\x66\xde\x7e\xfb\x6d\ +\xee\xbb\xef\x3e\xd7\x17\x76\x74\x74\xd8\x03\xbc\xee\xba\xeb\xe8\ +\xea\xea\xc2\x34\xcd\x0c\xc4\x26\x10\x0f\xa4\xa8\xb4\xd2\xd2\x52\ +\xc6\x8d\x1b\x47\x43\x43\x83\x63\x36\x21\xc1\x0c\x67\xce\x9c\x61\ +\xd7\xae\x5d\x74\x74\x74\xd0\xd0\xd0\x40\x30\x18\xc4\xe3\xf1\x64\ +\x10\x43\x4a\xc9\xc4\x89\xf1\x33\x82\xf7\xec\xd9\x93\xf1\x3c\xb9\ +\x3f\x8b\x16\x2d\x02\x60\xf7\xee\xdd\x19\x04\x31\x4d\x93\x19\x33\ +\x66\x00\x70\xe2\xc4\x89\x4b\x7a\x81\xc9\x7b\x1b\x2f\x2b\x52\xaf\ +\xaf\xaf\x4f\x69\x28\x12\x89\x10\x0e\x87\xed\xc1\xdc\x74\xd3\x4d\ +\x04\x02\x01\xde\x79\xe7\x1d\x0c\xc3\x70\xdc\xbb\x97\x20\x62\x42\ +\xff\xe7\xe7\xe7\xd3\xda\xda\xea\x8a\x80\xf9\xf3\xe7\x03\xa4\xa8\ +\x91\xc9\x93\x27\xdb\x08\x1f\x6c\xa0\x47\x8e\x1c\xe1\xb5\xd7\x5e\ +\xe3\xbd\xf7\xde\x23\x1c\x0e\x3b\x72\x7d\xfa\x7b\xf6\xec\xd9\xe3\ +\x6a\xcb\x0c\xc3\xb0\x1d\x9b\xa6\xa6\xa6\x8c\x72\x42\x08\xa2\xd1\ +\xa8\xad\x36\x5d\x4f\xbe\x4b\x4b\xcd\xb8\xd9\x5b\xe5\x52\xe9\xf7\ +\x7d\xfb\xf6\x71\xe4\xc8\x11\xfb\x5e\xc2\xdd\x4d\x36\xf6\xab\x56\ +\xad\x22\x18\x0c\xf2\xfb\xdf\xff\xde\xb1\xad\xd3\xa7\x4f\xd3\xd4\ +\xd4\x64\x1b\x6b\x37\xc9\x4b\xc0\x9c\x39\x73\x6c\x82\x25\xde\x9b\ +\x08\x40\xdd\x08\x72\xfe\xfc\x79\x5b\x05\x79\xbd\x5e\x54\x35\x7e\ +\xba\x50\x79\x79\x39\x85\x85\x85\x99\x87\xd6\x98\x26\x73\xe7\xce\ +\x4d\x41\xb4\xdb\x8f\x34\x2f\x58\xb0\x80\xd6\xd6\x56\xc7\xd5\xfc\ +\xaa\xaa\xda\xc1\xed\x97\xbe\xf4\x25\x3b\x6f\xa5\x69\x1a\xaa\xaa\ +\xa6\x48\x44\xe2\xd9\x60\x46\xfd\x92\x33\x86\x7e\xbf\x9f\xef\x7e\ +\xf7\xbb\x6c\xdd\xba\x15\x55\x55\x39\x75\xea\x14\x91\x48\x84\x8a\ +\x8a\x0a\xbb\xc3\xb5\xb5\xb5\x4c\x9f\x3e\x9d\xad\x5b\xb7\xb2\x64\ +\xc9\x12\x2a\x2b\x2b\x53\x74\xf0\x13\x4f\x3c\x61\xeb\xd6\x04\x62\ +\xdd\x08\x32\x69\xd2\x24\x54\x55\xa5\xad\x2d\xf5\x54\xa0\x84\x41\ +\x77\x23\x48\x7b\x7b\x3b\xcf\x3d\xf7\x1c\xdf\xfa\xd6\xb7\x78\xfc\ +\xf1\xc7\x39\x73\xe6\x0c\xe5\xe5\xe5\xcc\x9e\x3d\x9b\x35\x6b\xd6\ +\x64\x72\xa2\xa2\xd8\x1e\xd8\x4f\x7f\xfa\x53\x0c\xc3\xe0\xf5\xd7\ +\x5f\x67\xe7\xce\x9d\x29\xea\x6b\xca\x94\x29\xf8\x7c\x3e\x4e\x9f\ +\x3e\xed\x1a\xf7\xbc\xf1\xc6\x1b\x7c\xe3\x1b\xdf\x60\xcd\x9a\x35\ +\xcc\x98\x31\x83\x48\x24\xc2\xc2\x85\x0b\x59\xbf\x7e\x3d\xbb\x76\ +\xed\xb2\xdd\x74\x5d\xd7\x6d\x95\xe6\x46\x10\x15\xb8\x41\xd3\xb4\ +\xea\xbc\xbc\xbc\xda\x44\x47\xa7\x4d\x9b\xc6\xc0\xc0\x00\x3d\x3d\ +\xf1\xdf\xb1\x0d\x87\xc3\x74\x76\x76\x52\x57\x57\x47\x69\x69\x29\ +\x5f\xf8\xc2\x17\x98\x35\x6b\x96\x9d\x62\x07\x58\xb8\x70\x21\x75\ +\x75\x75\x04\x02\x01\x3b\x6f\x23\xa5\xe4\xf9\xe7\x9f\xa7\xb1\xb1\ +\xd1\x2e\x57\x54\x54\x44\x5f\x5f\x1f\xf5\xf5\xf5\xf4\xf6\xf6\x66\ +\x74\x28\x10\x08\x20\xa5\xa4\xbe\xbe\x3e\x05\xf9\xa5\xa5\xa5\x74\ +\x74\x74\xf0\xee\xbb\xef\xda\x2a\x22\x9d\x53\x0f\x1d\x3a\xc4\xbe\ +\x7d\xfb\x28\x2b\x2b\x23\x10\x08\xd0\xd0\xd0\xc0\x63\x8f\x3d\x46\ +\x5f\x5f\x5f\x66\x00\xa6\x28\x34\x36\x36\xd2\xd7\xd7\x47\x55\x55\ +\x15\x67\xcf\x9e\x65\xfb\xf6\xed\x0c\x0c\x0c\xa4\x94\x4d\xb8\xcb\ +\x3b\x76\xec\xa0\xa5\xa5\xc5\xd5\xf9\x79\xe5\x95\x57\x08\x87\xc3\ +\x4c\x98\x30\x81\x68\x34\xca\xaf\x7e\xf5\x2b\xf6\xee\xdd\x6b\x4b\ +\x89\xae\xeb\x29\x52\xaa\x69\x1a\xa5\xa5\xa5\x04\x83\x41\xba\xbb\ +\xbb\x2f\xb6\x05\x3c\xe8\xf7\xfb\xbf\x50\x5c\x5c\xbc\x32\x41\xf1\ +\x2f\x7e\xf1\x8b\x04\x83\xc1\x14\x9f\xdb\x30\x0c\xee\xbe\xfb\x6e\ +\xd6\xaf\x5f\x9f\x75\xd2\xee\x37\xbf\xf9\x0d\x3b\x76\xec\xb0\x3b\ +\x25\xa5\xc4\x30\x0c\x4c\xd3\x4c\x51\x11\xc9\x69\x6c\xd3\x34\x6d\ +\x4e\x4a\xae\xa7\xeb\xba\x1d\x79\x3b\xa5\xc7\x93\xf7\x44\x26\x72\ +\x46\x42\x08\x9b\xdb\xdd\xd2\xed\xb1\x58\xcc\xb6\x7d\x89\x54\x4d\ +\x72\xfb\x96\x65\x11\x8b\xc5\x52\xfa\xe3\x96\x7e\x8f\xc5\x62\x29\ +\xef\x4d\xd8\x1b\x5d\xd7\x6d\x07\x26\x39\xdb\x5d\x53\x53\xc3\xf1\ +\xe3\xc7\x53\xd2\x31\x9e\x6c\x53\xd2\x1e\x8f\x87\x57\x5f\x7d\x95\ +\xfa\xfa\x7a\x36\x6e\xdc\xc8\xf4\xe9\xd3\x1d\x0d\xa1\x65\x59\xb4\ +\xb6\xb6\xf2\xe4\x93\x4f\xd2\xd9\xd9\x99\x51\x26\x91\x3e\x70\xdd\ +\xb0\xa2\x28\x78\xbd\x99\x07\x95\xa5\x23\xd6\x35\xd2\x4d\xaa\x9f\ +\xcd\xc9\x78\x9a\xa6\xa5\x44\xfe\x4e\x99\x06\x9f\xcf\x97\xd5\xae\ +\xe2\x64\x97\x37\x79\xa2\x6a\x28\x27\xf4\x0d\x69\xc6\x50\x08\xc1\ +\xd9\xb3\x67\xf9\xf2\x97\xbf\x4c\x6d\x6d\x2d\xb5\xb5\xb5\x4c\x9a\ +\x34\x89\x8a\x8a\x0a\x42\xa1\x10\xed\xed\xed\x1c\x3b\x76\x8c\x63\ +\xc7\x8e\x39\xba\x99\x83\xcd\xd4\x39\xfd\xbd\xd4\x0c\xa3\x5b\xbb\ +\x43\xbd\x7f\xb9\xe5\x2e\x35\xbb\xe8\x34\x57\x74\xd9\x04\x71\x6b\ +\x28\xc1\xe1\xcd\xcd\xcd\xb6\xe7\x94\xf3\x33\xb6\x3e\x01\x0b\x18\ +\x2e\x85\x8f\x21\x4d\xe1\x66\xbb\x2e\x6b\x8c\x00\x57\x4e\xb8\x21\ +\x67\x7b\xc7\x60\x78\xa5\x68\xc8\x71\xc8\x18\x8c\x2c\x51\xc6\x24\ +\x64\x4c\x42\xc6\x60\x4c\x42\xae\x21\x4f\xcc\x55\x42\xc6\x8d\x1b\ +\xc7\xac\x59\xb3\xc6\x30\x37\x4c\x90\x98\x39\x74\x54\x59\xe9\x01\ +\x8f\x53\xae\x68\x0c\x72\x0b\x96\x65\x11\x8d\x46\x33\x16\x12\x7a\ +\x00\x4b\x88\x8b\xfb\x64\x0d\xc3\x60\xdb\xb6\x6d\x63\x18\x1b\xa5\ +\x58\xc4\x03\xe8\x40\x2c\x5d\x9c\xc6\x60\x94\x54\x19\x10\x16\x42\ +\x0c\x8c\x79\x54\xa3\x0f\x52\xc6\x77\x16\x2f\x05\x26\x6a\x9a\x56\ +\x21\xa5\xf4\x70\x2d\xee\x25\xbe\x76\xc0\x14\x42\xc4\x80\x5e\x45\ +\x51\x3a\x54\x55\x3d\xa7\x69\x5a\x50\xd3\xb4\x88\xc7\xe3\x31\x00\ +\xf9\xff\x01\xfa\x90\x4b\xa0\xc0\x4f\x7e\x35\x00\x00\x00\x00\x49\ +\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x3f\xd1\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x50\x00\x00\x00\x50\x08\x06\x00\x00\x00\x8e\x11\xf2\xad\ +\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\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\x0e\xc4\x00\x00\x0e\xc4\x01\ +\x95\x2b\x0e\x1b\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x03\x03\ +\x0e\x36\x08\x21\xa9\x06\x34\x00\x00\x20\x00\x49\x44\x41\x54\x78\ +\xda\x9c\xbc\x69\x98\x24\x57\x79\xe7\xfb\x3b\xb1\xe6\x9e\x59\x99\ +\x59\x5b\xd7\xd2\x55\x5d\xbd\xaa\x17\x49\x2d\xb5\xf6\xd6\x0e\x12\ +\x12\x18\x8c\x6d\x60\x7c\x19\x6c\x23\x1b\xcc\xb0\x08\xcf\x18\xdb\ +\x63\x3f\x9e\xe5\xde\x67\xbc\x8c\xf1\x78\x7b\xbc\x8c\x3d\x36\xc6\ +\xf6\x18\x06\x63\x1b\x0c\xd8\x80\x05\x5a\x11\x12\xdd\x48\xa8\x5b\ +\xea\x7d\x51\x55\xd7\xbe\xe4\x16\xfb\x7a\xee\x87\xac\xcc\xae\x06\ +\xc6\x73\x9f\x9b\x1f\xba\xb3\x9e\x38\x71\xe2\x8d\x13\x27\x22\xce\ +\xef\xfd\xff\xdf\x14\xef\x7a\xd7\xbb\xa4\xe3\x38\xd4\x6a\x35\x5e\ +\x7f\xfd\x75\x7c\xdf\x67\x61\x61\xc1\xfa\xe8\x47\x3f\x5a\x2c\x97\ +\xcb\x84\x61\xc8\x8b\x2f\xbe\x88\xaa\xaa\x84\x61\x48\x18\x86\x74\ +\x3a\x1d\xd6\xd7\xd7\xa9\xd5\x6a\x9c\x39\x73\x66\x75\x68\x68\xa8\ +\xf8\xfe\xf7\xbf\x3f\x5b\xab\xd5\xf8\xf4\xa7\x3f\xcd\xf0\xf0\x30\ +\x17\x2f\x5e\x64\x68\x68\x88\xf9\xf9\x79\x4c\xd3\xc4\x34\x4d\x4e\ +\x9e\x3c\x19\x25\x49\x12\xfc\xe2\x2f\xfe\x62\x61\x78\x78\x98\x67\ +\x9e\x79\x06\xc7\x71\xb8\x72\xe5\x0a\x83\x83\x83\x34\x1a\x0d\x86\ +\x87\x87\xd9\xd8\xd8\x60\x6e\x6e\x0e\xdb\xb6\x3b\xb7\xdf\x7e\xbb\ +\x78\xc3\x1b\xde\x50\xac\xd7\xeb\x3c\xf3\xcc\x33\xac\xac\xac\x90\ +\xa6\x29\x8e\xe3\x50\x2a\x95\xb8\x7c\xf9\x32\x51\x14\xe1\xba\x2e\ +\xf3\xf3\xf3\xb3\xef\x79\xcf\x7b\xb6\x3f\xf0\xc0\x03\x7c\xe9\x4b\ +\x5f\xe2\xca\x95\x2b\x14\x0a\x05\x82\x20\x20\x8a\x22\x66\x67\x67\ +\xa9\x56\xab\x34\x9b\x4d\x2e\x5d\xba\x74\xee\xae\xbb\xee\xda\xf9\ +\xb3\x3f\xfb\xb3\xca\x73\xcf\x3d\xc7\x4b\x2f\xbd\xc4\xf4\xf4\x34\ +\x97\x2f\x5f\x46\xd3\x34\x6c\xdb\x66\x72\x72\x92\x73\xe7\xce\xb1\ +\xb8\xb8\xb8\xb4\xb2\xb2\xb2\xfc\xeb\xbf\xfe\xeb\x37\x66\xb3\x59\ +\x4e\x9c\x38\xc1\xfa\xfa\x3a\xb6\x6d\xa3\x0c\x0d\x0d\x91\xcb\xe5\ +\x10\x42\x30\x39\x39\x89\xa6\x69\x08\x21\xc8\xe7\xf3\xfc\xc8\x8f\ +\xfc\x08\x83\x83\x83\x54\xab\x55\xa6\xa6\xa6\xd8\xb1\x63\x07\xc5\ +\x62\x91\x52\xa9\x84\xae\xeb\x8c\x8d\x8d\x01\x10\x86\x21\x0f\x3c\ +\xf0\x00\xd7\x5f\x7f\x3d\xa6\x69\x32\x35\x35\xc5\xe0\xe0\x20\xdb\ +\xb7\x6f\xa7\x5e\xaf\x63\x9a\x26\xfb\xf7\xef\x47\x08\x81\xef\xfb\ +\xec\xdf\xbf\xbf\xbf\x6d\x6c\x6c\x8c\x52\xa9\xc4\xbe\x7d\xfb\xc8\ +\xe7\xf3\x14\x0a\x05\x76\xee\xdc\x49\xa1\x50\x40\x55\x55\x56\x57\ +\x57\xb9\xfd\xf6\xdb\x29\x95\x4a\xa4\x69\x4a\x26\x93\xa1\x54\x2a\ +\x11\x04\x01\xba\xae\x23\x84\xa0\x5e\xaf\xa3\x69\x1a\x52\x4a\xf6\ +\xee\xdd\xcb\x7d\xf7\xdd\x47\xb1\x58\x64\x70\x70\x90\xe9\xe9\x69\ +\x06\x06\x06\x98\x9c\x9c\xc4\x30\x0c\x86\x87\x87\xc9\xe5\x72\x00\ +\x68\x9a\xc6\xbe\x7d\xfb\x30\x0c\x83\x5c\x2e\xd7\xdf\x5e\x28\x14\ +\x30\x0c\x83\x28\x8a\x28\x16\x8b\xa8\xaa\x8a\x10\x82\xc1\xc1\x41\ +\x6e\xbe\xf9\x66\xc6\xc6\xc6\xd8\xbb\x77\x6f\x77\xdc\x0e\x1f\x3e\ +\x2c\x01\xa4\x94\xfd\x00\x3b\x9d\x8e\x95\xcf\xe7\x8b\x99\x4c\x06\ +\xd7\x75\x11\x42\x20\xa5\xa4\xf7\x91\x52\x22\x84\x40\x08\x41\xa7\ +\xd3\x59\x1d\x1c\x1c\x2c\xa6\x69\x9a\x05\x88\xa2\xa8\xbf\x3d\x4d\ +\xd3\xfe\xbe\x52\x4a\xe2\x38\x8e\xa2\x28\x0a\xf2\xf9\x7c\xa1\x58\ +\x2c\x62\xdb\xf6\xf7\xf4\xbb\xf5\x7f\x4d\xd3\x3a\xed\x76\x5b\x94\ +\x4a\xa5\x62\x92\x24\x28\x8a\x72\xcd\xf1\xb7\xf6\x5f\xad\x56\x79\ +\xed\xb5\xd7\x66\xaf\xbb\xee\xba\xed\x8e\xe3\x90\xa6\x69\xff\x9c\ +\x7a\x6d\x7a\xfb\xe8\xba\xce\xec\xec\xec\xb9\x3d\x7b\xf6\xec\x6c\ +\xb7\xdb\x8a\xa6\x69\xd7\x1c\x77\xeb\x47\x4a\x89\xa2\x28\x4b\x6b\ +\x6b\x6b\xcb\x43\x43\x43\x37\x9a\xa6\x89\xef\xfb\x08\x21\xba\x31\ +\xa6\x89\x6c\x08\x01\x08\x50\x14\x05\xcf\xf3\x52\xcb\xb2\x2e\x67\ +\xb3\x59\xdd\xb6\x6d\x04\x82\x34\x95\x80\x40\x08\x09\x9b\x6d\x7b\ +\x07\x8b\xe3\x78\xa5\xd3\xe9\xec\xd1\x34\xad\x24\x10\x9b\x07\xdd\ +\xfc\x47\x00\x9b\xfb\x6c\x1e\x30\xf4\x3c\x6f\x31\x93\xc9\x28\xed\ +\x76\x1b\x05\xe5\xfb\xf6\xdd\x0b\xae\xd3\xe9\x34\x92\x24\xd1\xd3\ +\x34\x2d\x0a\x04\x71\x9c\x76\x8f\x20\x05\x42\xa4\xdd\x38\xe8\xc6\ +\xb1\xbe\xbe\x1e\x03\x8d\x76\xbb\x5d\x4d\xd3\x34\x12\x88\xee\x96\ +\x14\xa4\x90\x88\xcd\xb6\x42\x08\x92\x24\x51\x84\x10\xad\x8d\x8d\ +\x8d\xbf\x35\x0c\xc3\x90\x69\x4a\x9a\x00\xdd\x50\xba\x31\x28\xb2\ +\x7b\x0a\x42\x08\xd7\x75\x97\xc2\x30\x2c\x48\x29\x35\xcf\x75\x13\ +\xa4\x42\x2a\x53\x40\xa0\xed\xb9\x7b\xb4\x9a\xac\x99\xc8\x50\x41\ +\x28\x82\x28\x8a\x08\xc3\x30\xbb\x6d\xdb\xb6\x7c\x1c\xc7\xc4\x15\ +\x87\xc2\x64\x44\xe2\x81\x6c\xe6\x88\x1b\x3a\x32\x50\x51\x0c\x89\ +\xa2\x28\x44\x51\xb4\x32\x33\x33\x53\x52\x55\x35\x1b\x11\x11\x4f\ +\x34\xa9\xd6\x35\x22\x4f\x22\x5a\x05\xa2\x0d\x1d\x02\x15\xa1\x82\ +\xeb\xba\xe1\xdc\xdc\x5c\x6e\x64\x64\xa4\xa4\x28\x0a\x6b\xe6\x3a\ +\x3b\xae\xd3\x08\xda\x02\xd9\xca\x10\x37\x0d\x64\xa0\xa0\x18\xdd\ +\x19\xdb\x6a\xb5\xbc\x34\x4d\xe3\xed\xdb\xb7\x17\x9d\xc8\xa3\x7c\ +\xd8\x41\x20\x49\x5c\x05\xda\x39\xa2\x75\x1d\x22\x05\x54\x89\xa1\ +\x1b\xac\xac\xac\xfc\xf3\xae\x5d\xbb\x8a\x32\x96\xac\x15\x97\x99\ +\xdc\xab\x13\x78\x09\x58\x19\xd2\xa6\x49\xdc\xd2\x11\x0a\x18\x86\ +\x4e\xa7\xd3\xb9\x65\x64\x64\xe4\xfa\x8c\x99\x31\x37\x42\x8b\xa1\ +\xeb\x43\x14\x14\xe2\xa6\x4e\xda\xcc\x90\xb6\x55\x84\x01\x42\x01\ +\xcb\xb2\x08\x82\xe0\x89\xd1\xd1\xd1\x83\x41\x18\x11\x8d\xb6\xa9\ +\x8d\x2a\x44\x36\x68\xf9\xbb\x56\x21\x51\x69\x7f\xad\x4a\xb8\x6a\ +\x20\x14\xd0\x34\x2d\xcd\x66\xb3\xd8\x9e\x8b\x32\x1d\x92\xbf\xa9\ +\xc3\x9e\xea\x11\x4e\x2f\x1e\xc3\x4c\xf3\xd0\xc9\xd1\xfc\xe7\x01\ +\x54\x55\x45\xd3\x34\xd1\xbb\x75\x6d\xcd\xc1\xd8\xb5\xc1\xd4\xae\ +\x03\x8c\x57\xb7\xf3\xe4\xe9\xcf\x53\xd2\xca\xd8\x4f\xd7\x09\x16\ +\x75\xa2\x28\x12\x9a\xa6\x29\xa6\x69\x22\x84\xc0\x38\xe0\x33\x70\ +\xab\xc6\xb6\xdc\x1e\x2e\x2f\x9f\x45\xa4\x90\xce\xd6\xb0\x5e\xce\ +\x23\x63\xc8\xe5\x72\x51\xa7\xd3\x11\x69\x9c\xb2\x21\x5b\x6c\x3b\ +\xec\x30\x6a\xec\x43\xd3\x53\xe6\xd6\x2e\x10\x77\x34\xdc\x63\x55\ +\xfc\x05\x0d\xd3\x30\x91\x52\x66\xd2\x34\x45\x06\x12\x6b\xef\x2a\ +\xc5\x43\x75\x0e\x97\x8f\x70\x6e\xfd\x18\xad\xe6\x32\xb9\x76\x85\ +\xc6\xd7\x4a\x28\x8a\xe8\x3d\xe7\x43\x53\xd5\xcd\x97\xc3\x59\x0e\ +\xdf\x5f\x24\x8d\x15\x0a\x6a\x9e\xc5\x8d\xd7\xc9\xca\x2a\xd6\xf3\ +\x65\xc2\x15\x83\x5c\x2e\x01\x28\x9b\xa6\x49\x33\x08\x98\xba\x1b\ +\xcc\x41\x9b\x1d\x85\x9b\x50\x7e\x74\xdf\xaf\x70\xc3\x8e\x3b\x89\ +\x65\x80\xe7\xf9\x04\x41\x80\x94\x12\xdf\xf7\xf1\x83\x80\x50\xba\ +\xdc\x51\xf9\x71\xee\xdb\xfe\x4e\x7e\xe5\xc1\x2f\x71\xf3\xe4\x0f\ +\x50\x1b\xeb\x3e\xc4\x83\x20\x20\x49\x12\xc2\x30\xc4\xf7\x7d\xa2\ +\x24\xa4\xb1\x16\xf2\x8e\xeb\xfe\x1d\x39\x6f\x86\xf7\xdf\xfc\x9b\ +\xbc\xe7\x9e\x9f\x21\x90\x6e\xbf\x7d\x9a\xa6\x5b\xf6\x8d\x79\x74\ +\xfb\x87\xd9\xad\x3f\xcc\x8f\xdd\xf2\x4b\xdc\xbf\xe3\x31\x44\xd1\ +\x27\x08\x7c\x7c\xdf\x27\x8e\x63\xa2\x38\xc2\x73\x5d\xa2\x24\x66\ +\xbc\xb0\x9b\xa3\xa3\xef\xe4\x07\xa7\x7e\x81\x01\xef\x76\xee\xbf\ +\xe1\xcd\xb8\x49\x1b\xdf\xf3\x89\xa2\x08\x00\x3f\xf0\x71\x5d\x17\ +\x5d\xd3\x98\xd2\x6f\xe7\x81\xf1\x9f\xe0\x86\xf2\xdb\xf9\xaf\x6f\ +\xf9\x12\xb2\xe0\xe1\xfb\x3e\x9e\xeb\x91\xa6\x69\x37\x6e\x2f\x20\ +\x11\x09\xae\x1b\xf0\xa1\x83\x7f\xc2\x1b\x76\xbd\x9b\x8f\xde\xfe\ +\xe7\x4c\x4c\x8f\x12\xe2\xe1\x7b\x3e\x61\x18\xf6\xc7\x24\x08\x03\ +\xa4\xf0\xb9\x5d\x7b\x9c\x5b\x27\xde\x80\xa2\xc4\x3a\x6e\xe0\x10\ +\x04\x11\xbe\xe7\xf5\x1b\x7b\x9e\xd7\x7d\xfd\x27\x01\xfb\x87\x6e\ +\xe3\xb3\xaf\xfd\x2e\xf3\x4b\xeb\x1c\x1c\xb9\x15\x05\xa5\x3b\xc0\ +\xbe\x4f\x92\x24\x44\x51\x84\xe7\x79\x84\x41\xc8\x80\x3e\xc1\xb2\ +\x35\xcb\x8b\xb3\x4f\x70\xc7\xf4\x43\x78\x91\x43\x14\x84\xfd\xfe\ +\x92\x24\xe9\xef\x6b\xaa\x79\x06\x72\x75\x9e\x5f\xfa\x1b\x6e\xa8\ +\xbf\x81\x5a\x6e\x84\x92\x5e\xc7\xf3\xaf\x0e\x60\x12\x27\x78\xbe\ +\x4f\x1c\x45\xe4\xf4\x02\x4a\xc6\xe5\x5b\xe7\xbe\x85\x48\x55\x6c\ +\xbf\x49\x1c\x26\x78\x7e\x77\x60\x00\x02\x3f\xc0\x75\x3d\x34\x55\ +\xc5\x69\x09\xbe\x7e\xfe\xf3\x28\x71\x9e\x6a\xa5\x40\x92\x24\x78\ +\x9e\x87\xe7\x79\xf4\xee\x1a\xcf\x73\x51\x15\xc1\xc5\xb3\x16\x03\ +\x43\x2a\x1b\xce\x32\xd7\x4f\xde\x4c\x35\x33\x46\x10\x76\xe3\x88\ +\xa2\xa8\x7b\xe1\x37\xbf\xb7\x3a\x1e\x3f\xf5\xc8\x63\xfc\xd3\xf9\ +\x4f\xa0\x24\x32\x25\xa3\x94\x88\xe2\x88\x20\x08\xfa\x03\xd8\x9b\ +\x25\x0a\x2a\x7e\xe2\x50\xcf\x8e\x33\x50\xa8\x32\xb7\x3e\x8b\x84\ +\xef\x19\xc0\x30\x0c\x89\x93\x18\x3f\xb1\x19\x2c\x6c\x43\x13\x59\ +\x5a\xde\x1a\x59\x2d\x47\x14\xc7\x84\x61\x78\x35\x90\x20\xc0\xf7\ +\x7d\x24\x29\x0a\x1a\x9e\x03\xa9\xea\xd1\x72\xdb\xac\xdb\x2b\x84\ +\x9b\xdb\x93\x24\x21\x8e\xe3\xcd\x81\x4f\x49\x64\x42\x1a\x19\xcc\ +\x8c\xee\xa2\xe3\xd8\x94\x33\x43\x84\x71\xd0\x8f\x15\x20\x08\x43\ +\x7c\xdf\x43\x51\x14\xf2\x45\x9d\xbd\x43\x37\x62\xf9\x4d\x32\x4a\ +\x09\x4d\x18\xdd\xb6\x61\xf7\x2e\x8b\xa2\x08\xcf\xf7\x91\x52\x50\ +\x19\x30\x49\x02\x1d\x29\x05\x48\x85\x86\xbb\x4c\x12\xa7\xfd\x01\ +\x94\x52\xe2\xf9\x3e\x61\x14\x62\xe8\x1a\x73\xcb\xcb\x18\x4a\x16\ +\xed\x58\xfb\xd3\x78\x4a\x03\xdf\xf3\xb0\xec\x88\x6c\x9a\x41\x4a\ +\x89\xe3\x38\xf8\x71\x44\x11\x83\x2f\xbf\xfe\x47\xbc\xf7\xd0\xaf\ +\x72\xb2\xf3\x0f\x5c\x72\x4f\x10\x8b\x00\xc7\x71\x50\x55\xb5\x3f\ +\x78\xae\xeb\x92\x1a\x30\x52\x57\xf8\xc6\x99\xe7\xf8\xf9\x47\xff\ +\x1f\x7e\xeb\x9b\x1f\x64\x7c\x74\x9c\x34\x49\x71\x9c\xcd\x19\xb5\ +\x39\x0b\xa4\x94\x0c\x68\x82\xa7\x2e\xfd\x1d\x3f\xff\xc6\xdf\xe4\ +\x53\xaf\xfd\x1a\x96\xef\x50\xca\x54\x70\xdd\x79\xe2\x40\x62\x18\ +\x06\x61\x18\x62\x5b\x16\xbe\x1e\xb3\x64\x5f\x62\x89\x45\xf6\x6f\ +\xaf\x21\x07\x2f\x70\xa9\xd1\x5d\x20\x5b\x96\x8f\x61\xea\x00\xb8\ +\x8e\x83\xdb\x71\xd1\x52\x9d\xa5\xe8\x3b\xdc\x9b\x7d\x2b\x51\x71\ +\x8e\x8f\x3f\xfd\x41\x14\x15\x6c\xdb\x46\xd3\xf4\xab\x93\xc4\xf1\ +\x89\xf2\x31\xdb\xb7\x0f\xf2\xd4\xa9\xaf\x32\xb3\x7d\x86\xdf\x7b\ +\xf1\x71\x32\x46\x86\x30\x0e\xb0\xed\x18\xdd\xd4\x48\xd3\x14\x77\ +\x73\x4c\xca\xf9\x22\xbf\xf5\xcc\xe3\x7c\xec\xc1\x3f\x40\x5b\x5c\ +\x9b\xa5\xd1\x59\x63\xf9\x6c\x9b\xc8\x4d\x91\xa4\xa4\x69\x4a\xab\ +\xd5\x22\x48\x22\x8a\x41\x1e\x57\x5b\xe4\xf7\xbe\xf5\x38\x8f\x5e\ +\xff\xc3\x9c\x5d\x3d\xc6\xea\x0b\x92\x76\xdb\x46\x51\x14\xd2\x34\ +\xc5\xb6\x6d\xda\xed\x36\x52\x15\x08\xa5\xc2\xf3\x8d\x4f\x30\x3e\ +\x37\xca\x6a\x67\x8e\xc5\xd5\x39\x16\xce\x34\xf1\xda\x49\x7f\x0d\ +\x16\x86\x21\x69\x9a\x52\x48\xf2\xcc\x06\xdf\xe2\xd9\x85\xcf\x62\ +\xf9\x4d\x4e\x2f\xbc\xc2\xec\x31\x9f\x8d\x15\x07\x04\x94\x4a\xa5\ +\x2e\xf9\x44\x29\x41\x26\x25\x51\x4a\x3c\xb3\xfa\x57\xb4\xd3\xa3\ +\xf8\x9e\xc5\x4b\x17\x4f\xb0\x72\xda\xc1\x77\x62\x32\x59\x13\xe8\ +\x0e\x90\x6d\xd9\x14\x92\x02\x8e\x58\xe5\x8b\xb3\xbf\x8d\x65\x59\ +\x2c\xaf\x2d\xb0\xf2\x4a\x40\xbb\x61\x61\x64\xb5\xfe\x24\xb1\x1a\ +\x6d\x9c\xa2\x24\x91\x15\xbe\xd5\xfc\x14\xcb\xfe\x8d\x5c\x6e\xbd\ +\x8c\xe3\xb8\x5c\xfa\x66\x03\x99\xa6\xe4\x92\x1c\x69\x9a\xd2\x68\ +\x34\xe9\xc8\x84\x30\x32\x71\x33\x97\xf9\x95\xaf\x7c\x04\x31\x3d\ +\xb1\x53\x0a\x04\x66\x5e\x23\x8c\x42\xb2\xd9\x2c\x51\x14\x59\x69\ +\x9a\x16\x6b\xd5\x3a\x72\xac\x43\x69\x58\x67\xe5\x3b\x1e\xeb\x17\ +\x5d\x4c\xc3\x44\xa8\xa0\x1a\xdd\x37\x59\x10\x04\xab\x03\x03\x03\ +\x45\x45\x51\xb2\x52\x4f\x29\xdd\x2c\x89\x97\x52\x16\x5e\xe9\x80\ +\xa7\x21\x14\x81\x6a\x76\xd7\x60\x69\x9a\x46\x42\x88\xc0\x30\x8c\ +\x42\xa5\x52\x41\xee\xb1\x28\x19\x3a\x57\x8e\x5b\x38\x4b\x09\x9a\ +\xa6\x81\x2a\x51\x75\x41\x92\x24\x14\x0a\x85\x4e\xb3\xd9\x14\x3b\ +\x67\x76\x16\x1b\x9d\x06\xa3\x37\x1b\xcc\xbf\x68\x63\x37\x42\x34\ +\x45\x43\x92\xa2\x67\x54\xe2\x24\xa6\x52\xa9\x30\x3b\x3b\xfb\xec\ +\xce\x9d\x3b\x8f\x2a\xa8\x24\x43\x16\x6a\x2a\x58\x7e\xd5\x21\x8d\ +\x25\xaa\xa2\x22\x34\x50\xba\x6b\x66\xc2\x30\xa4\x5c\x2e\x5b\x02\ +\x51\x6c\xe2\x73\xe3\x5b\x0a\x2c\x1c\x77\x59\x3f\xe7\x21\x43\x15\ +\x64\x8a\x96\xed\x4e\x10\xc3\x30\xe8\x74\x3a\xc7\xf2\xf9\xfc\x11\ +\x33\x5b\x64\xfb\x23\x12\x67\x21\x61\xfd\x9c\x8f\x76\xc7\xdd\xb7\ +\xd2\x6c\x36\x19\x1d\x1d\xe5\xc2\x85\x0b\x78\x9e\xc7\xca\xca\x0a\ +\x3f\xf6\x63\x3f\xc6\xbe\x7d\x7b\x99\xbb\x3c\xcf\xcb\x2f\xbf\x42\ +\x7d\xbb\x24\x9d\xec\xbe\x00\x3c\xcf\xa3\xd1\x68\x50\x2c\x16\xb9\ +\x74\xe9\x12\x9a\xa6\xf1\xd3\x3f\xfd\xd3\x0c\x54\x06\xf8\xab\x4f\ +\xfe\x35\x95\x6a\x85\xf2\x9e\x25\x6a\xb5\x1a\x0b\x0b\x0b\x18\x86\ +\x81\xa2\x28\x5c\xb8\x70\x81\x30\x0c\xf9\xc0\x07\x3e\xc0\xc1\x83\ +\x07\xf9\xe4\x9f\xfe\x05\xaa\xd4\x30\x46\x97\x19\xbc\xbe\xce\xc6\ +\xc6\x06\x03\x03\x03\x34\x9b\x4d\x16\x16\x16\x08\x82\x80\x3b\xef\ +\xbc\x93\xc7\x1e\x7b\x8c\x30\x0c\x79\xe6\xc9\xe7\x18\xbd\x71\x19\ +\x55\x53\xe9\x74\x3a\x14\x0a\x05\x16\x16\x16\x70\x5d\x97\x24\x49\ +\x50\x55\x95\x87\x1e\x7a\x88\xb7\xbf\xfd\xed\x7c\xe1\x73\x5f\xe4\ +\x95\x13\x27\x98\xbe\x53\x23\x9f\xcf\xb3\xb0\xb0\x80\xe3\x38\x64\ +\xb3\x59\x9a\xcd\x26\xcb\xcb\xcb\x54\xab\x55\x3e\xf2\xf8\x47\xb8\ +\x7c\xf1\x12\xcf\x3e\xf5\x4d\xf6\x0c\x64\xd9\x7d\x5b\xca\xfa\xc6\ +\x3a\x85\x42\x01\x21\x04\x4b\x4b\x4b\x58\x96\x45\x92\x24\x7c\xe0\ +\x03\x1f\x60\x6a\x6a\x3b\x4f\x7f\xed\x1b\x34\xd3\x06\x83\x13\x2e\ +\xda\xe0\xe0\x20\x8e\xe3\x60\x18\x06\x53\x53\x53\x9c\x3b\x77\x8e\ +\x24\x49\x98\x99\x99\xe1\xe8\xd1\xbb\x39\x55\x3b\xc5\x5a\x63\x95\ +\xc1\xc1\x41\x14\x45\xe1\x95\x57\x5e\x61\x74\x74\x14\x80\xe1\xe1\ +\x61\x2e\x5d\xba\x44\x9a\xa6\xdc\x76\xdb\x6d\x64\xb3\x59\xbe\xfc\ +\x95\x2f\x73\xfd\xf5\xd7\x73\xe6\x4c\x16\xc3\x30\xfa\x57\xfb\xc0\ +\x81\x03\x5c\xbc\x78\x11\x80\xc3\x87\x0f\x33\x3e\x3e\xce\x2d\x77\ +\x1c\x61\x65\x65\x05\x2f\xb2\xd9\xb1\x63\x07\x69\x9a\x32\x34\x34\ +\xc4\xae\x5d\xbb\xf8\xca\x57\xbe\xd2\x9b\x25\x94\x4a\x25\x86\x86\ +\x86\x78\xf5\xd5\x57\x11\x9a\x24\x9f\xcf\x73\xfc\xf8\x71\xc6\xc6\ +\xc6\x68\x36\x9b\xe4\xf3\x79\xd6\xd6\xd6\x10\x42\x50\x2a\x95\xd8\ +\xbd\x7b\x37\x03\xf5\x0a\x95\x6a\x89\x72\xb9\x8c\x94\x92\x5a\xad\ +\x86\x65\x59\x0c\x0d\x0d\x11\x04\x01\x42\x08\x0a\x85\x02\x37\x5c\ +\x7f\x03\x19\x33\xc3\x99\xb3\x67\xd9\xbb\x77\x2f\x6b\x6b\x6b\x20\ +\xa0\x50\x28\x30\x3a\x3a\x4a\x36\x9b\xe5\xe4\xc9\x93\x00\xdc\x71\ +\xc7\x1d\x94\x4a\x25\x3a\x1d\x0b\xcf\xf3\x38\x79\xf2\x24\xe2\xc6\ +\x1b\x6f\xec\x03\x60\x8f\x85\xdb\xed\xb6\x55\x2a\x95\x8a\x41\x10\ +\xf4\xf9\xf3\xfb\x7d\x14\x45\xa1\xd3\xe9\xac\x0e\x0d\x0d\x15\x1d\ +\xc7\xc9\xf6\x10\xec\x7f\xf7\x89\xe3\x38\x0a\xc3\x30\xc8\xe7\xf3\ +\x85\xef\xc7\x9d\xdf\xcd\xda\x8a\xa2\x74\x3a\x9d\x8e\x28\x95\x4a\ +\xc5\xff\x53\xfb\x72\xb9\xcc\xa9\x53\xa7\x9e\xdd\xb9\x73\xe7\x51\ +\xcf\xf3\xf8\xdf\xc5\x22\xa5\x44\xd3\x34\x36\x36\x36\x18\x1c\x1c\ +\xb4\x82\x20\x28\xfe\x4b\x71\xf7\x62\x59\x5b\x5b\x3b\x36\x34\x34\ +\x74\xa4\xc7\xd6\xbd\x8f\xb6\x35\xae\x4d\x16\xc6\xb2\xac\x20\x9f\ +\xcf\x67\x15\x45\x91\x48\x90\x89\xd8\xc2\xb4\x9b\x8d\x05\xa4\x69\ +\x2a\xe2\x38\x8e\x3b\x9d\x0e\x3d\x20\x47\x0a\x64\x17\x53\x41\x91\ +\xfd\xb6\x9b\xc1\x48\xdf\xf7\xe3\x4c\x26\x13\x2b\x8a\x22\x85\x14\ +\x5d\x06\x15\x12\x94\xcd\x66\x5b\x58\xd8\xb2\x2c\xdf\xf7\xfd\x0d\ +\x21\x44\x19\x90\x24\xa2\xcb\xd9\xca\xb5\xb1\x48\x29\x85\xe7\x79\ +\x91\x94\x72\x61\x63\x63\x63\x5d\x4a\x19\x90\x8a\x2e\x27\xa7\x02\ +\x94\x2e\x0b\x6f\xc6\x21\x36\x9f\xdd\x0d\xcb\xb2\xb6\x9b\xa6\x19\ +\x0b\x90\x69\xb2\xd9\xd9\x26\x37\xb3\x25\x96\x20\x08\x94\x24\xe9\ +\x36\x50\xc4\x26\xbf\xcb\xcd\x64\xc2\xf8\xae\x21\xa4\xa7\x76\x0f\ +\xd4\x1d\x14\x96\x96\x96\x2e\xed\xd8\xb1\xe3\x80\xe7\x7a\x69\x98\ +\x73\xc9\xef\x08\x10\xae\x46\xd2\x36\x49\x2d\x1d\x19\x75\x77\x56\ +\x55\x55\x00\x72\x78\x78\x58\x64\x32\x19\x02\x11\xc2\x74\x8b\x52\ +\x41\x25\xee\xe8\xd0\xce\x90\x5a\x1a\x32\x51\x40\x82\xe7\x79\x72\ +\x71\x71\x31\x1a\x1b\x1b\x0b\x14\x45\x91\x8d\xcc\x06\x63\xbb\x35\ +\xa2\xa6\x86\x6c\x9b\x24\x8e\x0a\x49\xff\xea\x8a\x76\xbb\x1d\x04\ +\x41\x30\x36\x39\x31\x59\xf2\x93\x10\x75\x47\x9b\xac\xae\x93\x34\ +\x0d\x12\x4b\x47\x06\xdd\x7e\x01\x4c\xd3\xe4\xc9\x27\x9f\xbc\x70\ +\xe8\xd0\xa1\xba\x8c\x25\xab\xb9\x65\xb6\x1f\xd0\x08\xda\x20\xdb\ +\x19\x92\x8e\x01\xbe\x8a\x4c\xc1\x30\x0c\x8e\x1f\x3f\xbe\x6d\x62\ +\x62\x62\xde\x34\x4c\xa5\x15\xda\x72\xe0\x90\x8f\x96\xea\xc4\x0d\ +\x9d\xb4\xd3\x65\xf2\x6e\x92\x03\x61\x59\x56\x9c\x24\xc9\xc4\xf4\ +\xf4\x34\x96\xef\x93\xd9\x63\x51\xa8\x28\x04\x9d\x14\xad\xfe\x03\ +\x1b\xe8\x8a\x49\xf3\xc9\x2e\xf7\x19\x86\x40\x55\xd5\x01\xd3\x34\ +\x73\x9e\xe7\xa3\x6e\xf7\xa9\xdc\xee\xa0\x87\x45\xc2\x78\x0d\x25\ +\x36\x90\x81\x46\xe3\x8b\xdd\x1c\xdc\xe6\x2d\xae\x26\x49\x82\x9d\ +\xb1\x19\xbc\xbe\xc3\xee\xf1\xfd\x90\xa6\xcc\xad\x5c\x44\x55\x54\ +\x3a\xcf\xd4\x09\x17\x75\xd2\x34\x55\x54\x55\xcd\x69\x9a\x96\x17\ +\x42\xc0\x1e\x8b\x81\xdb\x35\x72\x69\x9d\x56\x7b\x1d\x21\x15\xc2\ +\x73\x15\xac\x13\x39\x84\x90\x68\x9a\x96\x7a\x9e\x07\x52\xb2\x21\ +\x5b\xec\xbf\xdf\x46\x4b\x32\x04\x6e\x03\x3d\xcd\x10\xb9\x02\xfb\ +\x78\x99\x60\x51\x47\xc9\x2a\x48\x29\x37\x1f\xba\xe0\xee\x5d\xa7\ +\x74\xc3\x00\x55\x75\x8a\x75\x6b\x0e\xcb\xb2\xd1\x3a\x55\x1a\x4f\ +\x14\xe9\xa5\xc6\x0c\xc3\xa8\xe8\xaa\x9e\xbf\x98\xac\xf2\xe6\xbb\ +\x73\x44\x81\x4f\x96\x12\x1d\x7b\x03\x43\xe4\xe8\x7c\xa3\x4c\xb8\ +\x6c\xf4\x72\x8d\x91\x4c\x25\x56\xea\x30\x7a\x38\xc0\x53\xda\xbc\ +\x71\xe7\x0f\xa2\x3c\xba\xfb\x71\x8a\xd5\x22\xb1\xec\xf2\xec\x26\ +\x0b\x4b\xdf\xf7\xf1\x7c\x9f\x54\x84\x4c\x72\x37\x1f\xbc\xf3\xbf\ +\xf2\xaf\xaf\xfb\x0d\xf6\x0c\x1d\x65\x78\xdb\x60\x9f\x26\x92\x24\ +\x91\xbd\x4c\x75\x9c\x46\x24\xcd\x0a\xf7\x8e\xbf\x93\x43\x85\xb7\ +\x72\xcf\xf6\x77\xf3\xa6\x5b\xde\x41\x78\x2d\x0b\xcb\xde\x71\xe2\ +\x34\xe1\xd1\xed\x1f\x61\x52\x79\x80\x07\x0f\xbc\x8b\xa3\x33\xef\ +\xc2\x11\x1b\x5b\x29\x47\xc6\x71\x8c\xe7\xfa\x84\x49\xc8\x48\x76\ +\x9a\x47\x26\x3e\xca\xcf\xdd\xfd\x49\xbc\x66\x9d\x1d\xd3\x53\x84\ +\xd2\xed\xf3\x6a\x8f\x85\x3d\xcf\xc5\x30\x54\xa6\xd5\xbb\x78\xcb\ +\xd4\xe3\x1c\xaa\xbc\x95\x5f\x79\xcb\xdf\x93\xe6\xec\xcd\x55\x84\ +\x8f\x94\x92\x30\x0c\xa5\xef\x7a\x44\x32\xc2\x73\x23\x3e\x7c\xfd\ +\x27\xb8\x7f\xf7\xbb\xf8\xd0\x1d\x7f\x48\x65\x34\x47\x24\x83\x3e\ +\x67\x4b\x29\xf1\x3d\x8f\x38\x89\x68\x76\x5a\xfc\xee\x43\x4f\xb3\ +\xb4\xbe\x86\x32\x5e\xd8\xc3\xc1\x91\x3b\x37\x07\xa4\xcb\xc2\x42\ +\x08\x3c\xcf\xc3\x0f\x7c\xc2\x38\xe0\xba\xa1\x5b\x79\x7e\xe1\xef\ +\x79\xe1\xe4\x09\x6e\x9f\x7a\x08\x4d\xd1\xfb\x4c\x99\x24\x09\x41\ +\x10\x74\x59\x38\x0a\x19\x2b\xee\x66\xb1\x73\x91\xf3\x6b\x27\xb9\ +\x6d\xfa\x01\x92\x34\x21\x0e\x63\x7c\xbf\x7b\x92\x5b\xdb\x67\xd4\ +\x3c\x95\xcc\x20\xaf\x7b\x2f\xb0\xbf\x7c\x3f\x3b\x87\x0e\x50\xd2\ +\xeb\xf8\xbe\x8b\xe7\x79\xc4\x71\x4c\x1c\xc7\xf8\x7e\xf7\x7b\x29\ +\x53\x21\x57\x4c\x78\xf6\xc4\xf3\x1c\x1c\xbd\x83\xdd\xb5\x9b\x70\ +\x03\xe7\x7b\x59\xd8\xf3\x51\x55\x15\xa7\x2d\x78\x71\xee\x9f\xc9\ +\x8a\x2a\x43\x03\x43\xa4\x49\x17\x41\x03\xdf\xef\x27\x13\x3c\xcf\ +\x43\x51\x15\x2e\x9f\xb3\x18\x1a\xc9\xe2\x47\x2e\x37\x4c\xdc\xc2\ +\x64\xe9\x3a\xfc\xb0\x1b\x47\x0f\x41\x3d\xdf\x27\x0a\x23\x34\x99\ +\x61\xb8\x3a\xc4\x46\x7a\x06\xcd\x09\x6c\xce\xae\xbc\x4a\x14\xc5\ +\xf8\x5e\xda\x7d\xa0\x43\x77\xc6\xf8\x01\x86\x14\xb8\xa1\xc5\x60\ +\x69\x02\x59\xc8\xf3\xfa\xfa\xb9\xfe\x76\x55\x55\xfb\x2c\x1c\xc7\ +\x31\x69\x92\xd2\xf4\xd7\x18\x2d\x3f\x4c\x73\x3d\x65\xc5\x9d\xc5\ +\x54\xb3\x44\x51\x44\x10\x24\x7d\x02\xe9\x65\x74\x75\x52\x14\x45\ +\xc1\x77\x25\x46\xce\x67\xfe\xd2\x02\x1b\xf6\x0a\x81\x6f\xf6\x5f\ +\x3c\x71\x1c\x77\x93\x09\x5a\xd2\x7d\x46\x27\x0a\x23\x03\x23\xbc\ +\x7c\xf9\x18\xb2\xa2\x40\xd2\x1d\xb4\x1e\xc3\x87\x61\x48\xe0\xfb\ +\x18\x42\xa5\x50\x30\x98\xa9\xed\xe7\xcc\xc2\x59\x4c\x91\x45\x11\ +\x4a\x3f\x23\xd4\xeb\x3b\xf6\x23\xc8\x40\xa9\x62\x92\x84\xda\x66\ +\xf6\x1a\x96\x3a\x97\x49\xe2\x6e\x06\x46\x8a\xb4\x8f\x7e\xb1\x1a\ +\x23\x45\x42\xe0\xc7\x04\xae\x8e\xf2\xcd\xf5\xbf\xc2\xc8\x4a\x82\ +\xd0\xef\xb2\xde\xe6\x95\xec\xcd\x30\x91\x6a\x1c\x6f\xfc\x2d\x39\ +\x6f\x86\xfc\xf8\x3a\x67\xed\x67\x71\x93\x36\x8e\xe3\xe0\x38\x4e\ +\xf7\x04\x3d\x0f\xdb\xb6\x09\xfc\x90\x38\xbf\xc8\x2b\xe7\xcf\xf0\ +\xc0\xf5\xf7\xf1\x77\x67\x7e\x9b\xb3\xad\x6f\x11\xc6\x21\x96\x65\ +\xe1\x38\x4e\x3f\x1b\xe3\xba\x2e\x8a\x96\xf0\xb5\x8b\x9f\xe1\x67\ +\xee\xff\x35\x3e\xf3\xea\x6f\x73\x39\x78\x8e\xac\x56\xc0\x71\x5d\ +\x1c\xc7\xe9\x5f\x18\xcf\x75\x09\xc3\x88\x65\xfb\x75\xd6\x5b\x2d\ +\x28\xb4\x48\xab\xb3\x04\x69\x17\xee\x1d\xc7\xe9\x67\x58\x1c\xc7\ +\xc1\xea\x58\x24\x69\xca\x7c\xf4\x6d\x34\x91\xc1\xcf\x5d\xe4\x77\ +\xbe\xf9\x33\xa8\x9a\x8a\x65\x59\x58\x1d\xab\x3f\xd8\xae\xe3\x12\ +\xc7\x29\x53\x53\x15\xbe\xfc\xca\xe7\x19\x2a\x8d\xf0\x3b\x2f\xfe\ +\x9b\xae\x26\x12\xfb\x38\x8e\xd3\xcf\x22\x59\x9d\x0e\xae\xeb\x91\ +\xcf\x65\xf9\xb5\xa7\xdf\xcf\x2f\xdd\xf3\xe7\x68\xae\xb2\xce\xdc\ +\x85\x39\x96\xce\xb5\x08\xac\x84\x84\x04\x80\x66\xb3\x49\xab\xd3\ +\x21\xef\xe6\x09\x55\x95\xbf\xbb\xfc\x6b\xbc\xe5\xf0\x3b\x99\xbb\ +\xf8\x1a\x6b\x2f\x49\xda\xed\x4e\x7f\x8d\xd8\x9b\x85\x94\x14\x14\ +\xd5\xe0\x78\xe7\x53\xd4\xd7\x14\xda\xd1\x32\xf3\x5f\xd9\x60\xfe\ +\x44\x9b\xc8\x4e\xbf\x2f\x0b\x2f\xf8\xdf\xe1\xb9\xa5\xff\x45\xa0\ +\xd9\x5c\x7a\xfd\x3c\x57\x4e\x3b\xb4\x9a\x1e\x42\xe9\xb2\xb0\xef\ +\xfb\xc4\x41\x44\xa0\x4b\xfc\x34\xc7\xb3\x4b\x7f\xcd\xbd\x7b\x7e\ +\x00\x99\x6b\xf1\x9d\x6f\xaf\xb0\x7c\xce\xc2\xe9\x44\xe8\x66\x77\ +\xf6\xd8\xb6\x8d\xdd\xb1\xc9\xa5\x05\x7c\x75\x9d\x63\xf6\x5f\xd3\ +\xf1\x2c\x5e\xfe\xce\x2c\xcb\xaf\x04\x74\x5a\x0e\xba\xa9\xf6\x19\ +\xde\x6a\xb6\xb1\x4b\x92\x58\x96\xf9\x8e\xfd\xf7\x74\x16\x6f\x60\ +\xae\xf3\x2a\xeb\xb3\x0e\x97\xbf\xd5\x20\x89\x52\xb2\xd9\x2c\x69\ +\x9a\xd2\xb1\x2c\xbc\x44\x92\x92\x65\x39\x7e\x95\x3f\x7c\xf9\xe7\ +\x10\xe3\x43\x53\x52\x48\x05\xbd\xd0\x5d\xf7\xe4\xf3\x79\xd6\xd7\ +\xd7\xcf\x55\xab\xd5\xdd\xaa\xa2\x62\x4e\x47\xd4\x76\x1a\x6c\x9c\ +\x0e\x58\x3e\xe5\x90\x76\x34\xf4\x9c\x82\x96\xed\xb2\x70\x1c\xc7\ +\xb6\xaa\xaa\x66\x2e\x97\xd3\x63\x23\x62\xec\x1e\x83\x60\x21\x61\ +\xe9\x94\x83\x73\x05\xb4\x8c\x40\xcf\x8a\x3e\x0b\x2b\x8a\x12\xa8\ +\xaa\x5a\xc8\xe5\x72\x18\x87\x22\x6a\x15\x9d\xc5\x93\x0e\x1b\xa7\ +\x62\x44\x22\xd0\x73\x02\x61\x80\x4c\x25\x85\x42\xa1\xb3\xb1\xb1\ +\x21\x86\x86\x86\x8a\x9d\xd8\xe6\xd0\x0f\x17\x59\x3b\x15\xb2\x7c\ +\xd2\xc6\x5f\x56\x50\x0c\x30\xf2\x5d\x7d\xa2\x5a\xad\x32\x3b\x3b\ +\xfb\xec\x8e\x1d\x3b\x8e\x8a\x54\x90\x4e\x38\xe4\x32\x1a\x8b\x2f\ +\x3b\x78\xeb\x09\xba\xa9\xa2\x1a\x20\xb4\xee\xda\x2e\x0c\x43\x4a\ +\xa5\x92\x15\x87\x71\xb1\x63\x46\xdc\xfc\xd6\x22\xab\xaf\xf9\xac\ +\x9e\xf6\xf0\x57\xba\xed\x8c\x42\x97\x85\x4d\xd3\xc4\x75\xdd\xf5\ +\x7c\x3e\x5f\xcf\x97\x8b\x54\x0e\x44\x74\xe6\x23\x5a\x97\x43\xb4\ +\x3b\xee\xbd\x05\xc7\x71\xa8\x56\xab\x5c\xb9\x72\xa5\xa7\x0b\xf3\ +\xe0\x83\x0f\x72\xf0\xe0\x41\x3a\x2d\x8b\x63\xdf\x3a\xce\xd8\x48\ +\x96\xf1\x4c\x83\x62\xa9\xc0\xd2\xe2\x12\xcd\x66\xb3\xa7\x0b\x33\ +\x3d\x3d\xcd\x23\x8f\x3c\xc2\xf0\xd0\x30\xff\xf3\x2f\x3f\xc5\xde\ +\xc9\x09\x4a\x13\x0b\x8c\xde\x3a\xca\xca\xca\x0a\x61\x18\x92\xcb\ +\xe5\x38\x79\xf2\x24\x69\x9a\xf2\xde\xf7\xbe\x97\x83\x07\x0f\xf2\ +\x99\x4f\xfd\x0d\x19\x37\x8b\x9a\x9b\xe7\xae\x1f\x9e\xdc\xd4\x90\ +\x0d\x54\x55\xe3\xdc\xb9\x73\x84\x61\xc8\xe1\xc3\x87\x79\xdb\xdb\ +\xde\x46\x12\x27\x9c\x78\xf9\x55\x0a\x6a\x8b\x6d\xfb\x7d\xb4\x1b\ +\xbb\x69\xfc\xd7\x5f\x7f\x1d\x45\x51\x70\x5d\x17\x55\x55\x79\xe3\ +\x1b\xdf\xc8\xdb\x7f\xa8\xcb\xc2\xaf\x9e\x7c\x95\xd1\x1b\x54\x86\ +\x86\x07\x39\x77\xf6\x1c\xae\xeb\x92\xcb\xe5\x68\xb5\x5a\x7d\x16\ +\xfe\xc9\x9f\xfc\x49\x56\x96\x57\x78\xfa\xc9\xe7\xd8\x3b\x58\x65\ +\xfb\xf5\x1e\xcd\x56\x83\x72\xb9\x8c\xa0\xcb\xc2\x8d\x46\x03\x21\ +\x04\x1f\xff\xf8\xc7\x11\x42\xf0\xd4\xd7\x9e\x21\x2d\x27\x5c\xc8\ +\x9c\x47\x1b\x1b\x1b\xe3\xd2\xa5\x4b\x14\x8b\x45\xb6\x6d\xdb\xc6\ +\xe5\xcb\x97\x49\x92\x84\x3d\x7b\xf6\xf0\xf6\xb7\xbf\x9d\xb9\xb9\ +\x39\x56\xd7\x57\xa8\x54\x2a\xb8\xae\xcb\xf2\xf2\x32\x03\x03\x03\ +\x58\x96\x45\xa5\x52\xe9\xeb\xab\xef\x78\xc7\x3b\x50\x14\x85\x63\ +\xc7\x8f\x31\x3d\x3d\x4d\xa1\x9c\x47\xd7\x75\xb2\xd9\x2c\xcb\xcb\ +\xcb\xec\xd9\xb3\x87\xd7\x5e\x7b\x8d\x28\x8a\xb8\xe7\x9e\x7b\xb8\ +\xe9\xa6\x9b\x38\x7f\xfe\x3c\xcd\x66\x13\xcb\x6d\x33\x39\x39\xd9\ +\xcf\x5a\x6f\xdf\xbe\xbd\xcf\xcd\xdb\xb7\x6f\xef\xeb\xbc\xae\xe7\ +\xb2\xb6\xb6\x46\xa5\x52\xe1\xc5\x17\x5f\x64\x68\x70\x88\x6a\xb5\ +\xda\x17\xfc\x01\x6a\xb5\x1a\x07\xf6\x1f\xe0\xf9\x6f\x3c\x4f\xb9\ +\x5a\xa2\x58\x2c\x02\x30\x30\x30\x80\xeb\xba\x94\xcb\x65\x7a\xa8\ +\x57\x2e\x97\x79\xd3\x9b\xde\xc4\xf1\xe3\xc7\x39\x7b\xee\x2c\x3b\ +\x77\xee\xc4\x75\x5d\x2e\x5c\xb8\x40\x3e\x9f\xa7\x56\xab\x21\x84\ +\xa0\xd5\x6a\x91\xa6\x29\x53\x53\x53\x84\x61\xc8\xd0\x68\x1d\x29\ +\x25\x8b\x4b\x0b\x88\x1b\x6e\xb8\xe1\x1a\x16\xce\x66\xb3\xcc\xce\ +\xce\x9e\x9b\x9e\x9e\xde\xdd\x4b\x7c\xaa\xaa\xfa\x3d\x9a\x6d\x0f\ +\xb7\x3c\xcf\xb3\x33\x99\x8c\xa9\xaa\xaa\xbe\xb5\xcd\xa6\x7c\xd8\ +\x6f\x9b\x24\x09\x52\xca\x28\x8a\xa2\x40\x55\xd5\x42\x3e\x9f\x27\ +\x8e\xe3\x7e\x3f\xbd\x37\x63\xef\x99\xaa\x28\x0a\xba\xae\x77\x1a\ +\x8d\x86\xa8\xd5\x6a\x45\xdf\xf7\xd1\x75\xbd\xdf\x56\x51\x14\xe2\ +\x38\x46\x51\x14\x92\x24\xa1\x56\xab\x71\xea\xd4\xa9\x67\xa7\xa6\ +\xa6\x8e\xb6\xdb\x6d\xb2\xd9\xec\x35\xcc\xba\xf5\xbb\x61\x18\xac\ +\xae\xae\x52\xaf\xd7\xad\x30\x0c\x8b\x3d\x51\xbe\xa7\x25\xf7\x74\ +\xe4\x5e\x4c\x9b\xcc\xbf\x5e\x2c\x16\xeb\x61\x18\x62\x18\x46\x5f\ +\x17\xd7\x0a\x85\x62\x2a\xb6\xf0\x6a\x18\x86\x8a\x10\x42\xc9\xe5\ +\x72\x64\x32\x19\xc4\x26\xdb\xf6\xf4\xd2\x4d\x61\xb6\x1f\x94\xeb\ +\xba\x81\xa6\x69\x6a\x26\x93\x51\x85\x10\x90\x6e\x8a\xf0\xdf\xc5\ +\xcd\x9b\x4b\x9f\x68\x7d\x7d\xdd\xaf\xd7\xeb\x79\x21\x84\xcc\x9a\ +\x59\xd2\x64\x53\x0f\xde\xc2\xc2\xbd\xcf\xfa\xfa\x7a\x92\xcd\x66\ +\xf5\x4c\x26\x93\x66\x32\x99\x2e\x93\xb3\x45\x3f\xde\xd2\x7e\x73\ +\xad\x16\x46\x51\x44\xbe\x90\x4f\x45\xda\xe3\x6c\xfa\x4b\xb3\x5e\ +\x2c\x9b\x59\x74\x99\x24\x49\x52\x2c\x16\xbb\x2a\xf6\xbf\xd0\xb7\ +\x65\x59\x22\x08\x02\xaf\x54\x2a\xc5\xa6\x69\x4a\x52\x90\x49\x57\ +\x6f\xd6\x46\x76\x97\x93\xc4\xd2\x20\xee\xbf\x14\x12\xdb\xb6\x6b\ +\x13\x13\x13\x84\x51\x44\x52\xf4\xc8\x8d\xc4\xa4\xbe\x02\xbe\x4e\ +\xea\xa8\xa4\xae\xda\xbf\xa2\xb6\x6d\xaf\xd7\xeb\xf5\x9a\x69\x9a\ +\x5a\x24\x62\xc4\xa8\x4d\x2e\xab\x75\xb5\x5b\xd7\x20\xb1\x55\x44\ +\xd2\x1d\x1d\xcf\xf3\x9c\x20\x08\xd6\xea\xf5\xfa\x80\xaa\xaa\x69\ +\x3b\xd3\x64\x68\x52\x25\x76\x14\xf0\x74\x12\x57\x45\xfa\x2a\x3d\ +\x81\x3e\x0c\xc3\x28\x9b\xcd\x16\x6b\xb5\x5a\xe2\xa4\x1e\xa5\x5d\ +\x01\x24\x0a\xa9\xab\x76\xdb\xdb\x2a\x24\x0a\x20\x31\x4d\x53\x5c\ +\xba\x74\x29\x3e\x78\xf0\x20\x69\x94\x26\x8d\xfc\x2a\xdb\x76\x69\ +\x84\x36\xe0\x99\xa4\xae\x42\xea\xe8\xc8\x50\x60\x9a\x26\xed\x76\ +\x3b\x19\x1e\x1e\x8e\x73\x99\x6c\xd2\x0c\x6d\x59\xdb\x17\x23\xd2\ +\x6e\xdf\xd2\xd3\x49\x6d\x15\x19\x2b\x28\xaa\xc0\x30\x0c\xc5\xf7\ +\x7d\x67\xef\x9e\xbd\x81\x1f\x86\xa9\x1c\xb6\x29\xd6\x15\x12\x4f\ +\xa2\x95\x1e\x5c\xd5\x55\x55\xa5\xf1\x85\x1a\xb1\xd5\x65\x5b\x21\ +\x84\x6e\xdb\x36\x96\xef\x92\x8c\xad\x91\xd9\x1f\xb1\x2d\x3f\xcd\ +\x4a\xeb\x75\x34\xa9\x90\xba\x3a\x8d\x2f\xd6\x7a\x6f\xb3\x2c\x90\ +\x49\xd3\x54\xef\x18\x16\x43\x47\x9a\x8c\x56\x07\x51\x11\x34\x3a\ +\xcb\xe8\x19\x95\x8d\x2f\xd6\x88\x9b\x1a\x49\x92\x64\x85\x10\x85\ +\x34\x4d\x55\x40\xf5\x77\xac\x53\xbe\x25\x4b\x4d\x1f\x67\xa9\x79\ +\x05\x45\xa8\x78\xa7\x0b\xd8\xaf\x14\x00\x89\xae\xeb\x39\x40\x13\ +\x09\x2c\x69\xeb\x6c\xbf\x4b\x62\xa4\x25\x64\x9a\x10\x04\x6d\xd2\ +\x40\xa1\xf3\x62\x89\x60\xde\x40\xcd\xa9\x24\x49\x92\xf3\x3c\x8f\ +\xd4\x4d\xf5\xd5\xa9\x39\xa6\x0f\x0e\x30\xae\x4d\xb3\x62\xcd\x11\ +\x79\x29\x71\x5b\x63\xe3\xcb\x15\xc2\x30\x42\x08\xa1\xab\xaa\x1a\ +\x93\xa2\x9d\xf2\x17\x78\xeb\xd1\x3c\x22\x36\x30\x44\x86\xb6\xbd\ +\x8e\xae\x99\xb4\x9e\x2a\x13\x2e\x19\xbd\x5b\xba\x1e\x45\x51\x7e\ +\xd5\xea\x30\xfd\x88\x8d\x5a\xf6\x98\x2a\xed\x46\x79\x64\xe7\xe3\ +\x0c\x54\x86\x08\x93\xb0\xbf\xa2\x07\x64\x10\x04\x84\x41\x48\xac\ +\xfa\xdc\x5e\x7b\x37\x77\x6f\x7f\x27\xff\xe9\x0d\x7f\xcb\x74\xe5\ +\x36\x06\xea\xa5\xfe\x83\xbb\xc7\x94\x41\x10\x10\xcb\x90\xd6\x1a\ +\xbc\xeb\xe0\xcf\xf3\xd0\xc4\xe3\x1c\x9a\x38\xca\xdd\x07\x1f\xc6\ +\x0f\x9d\x5e\x7b\xd9\xd3\x91\xc3\x30\x24\x8c\x23\xde\x3c\xf3\x41\ +\x86\xd2\xdb\x79\xd3\x0d\xef\xe2\xc8\xe8\x0f\xe1\xd2\xc2\xdf\x8c\ +\xa3\xc7\xc2\xbe\x1f\x90\xc8\x88\x89\x81\xdd\xfc\xc8\xde\x7f\xcf\ +\xbf\x3b\xfa\xdf\x59\x9e\xd7\xd9\x31\x39\x43\x94\xfa\x04\xfe\x55\ +\x55\xae\xcb\xc2\x1e\xba\xa1\x32\x63\x1c\xe5\x8d\x13\xff\x86\xbd\ +\x85\x87\xf8\xc5\x37\x7e\x92\xd8\xb0\xfb\x9a\xf3\xa6\x2a\x27\x7d\ +\xcf\x27\x25\xc6\x0f\x42\xde\x77\xf0\x0f\xb9\x77\xe7\x3b\xf9\xe0\ +\xad\x7f\x40\xa9\x96\x23\x96\x5d\x1a\xbb\xaa\x26\xfa\x04\x51\x48\ +\xa2\x7a\xdc\x5b\xfa\x59\xf6\x0e\xde\x8a\xb2\x7f\xe4\x30\x23\x95\ +\xb1\x2e\x1d\x78\x2e\xfe\x26\x27\xf6\xde\x88\x71\x1c\xb0\xb7\x7e\ +\x84\xaf\x5c\xfc\x73\x2e\x5f\x59\xe4\xd0\xb6\xdb\x50\x64\x77\xd9\ +\xd0\xe3\xd5\x3e\x0b\x87\x21\xbb\xaa\x37\x71\x7e\xfd\x15\x8e\xcd\ +\x3d\xc9\x1b\xa6\xff\x35\xba\x92\x21\x0c\xbb\xf6\xb3\x5e\xdf\x3d\ +\x12\xc9\xe9\x45\x8a\x66\x95\x0b\xce\xb3\x5c\x57\xb8\x9f\xd1\xca\ +\x24\x06\x19\x3c\xcf\xed\xaa\x7c\x69\xda\xd7\x6e\xd3\x24\x25\xa3\ +\x64\x49\xf4\x16\x4f\x7c\xfb\x49\x0e\x8d\xdc\x41\x2d\xb3\x0d\x3f\ +\xf0\xfa\x71\xf7\x58\xd8\x73\x5d\x34\x55\xc5\x6a\xc2\x4b\x8b\x4f\ +\x52\x54\x87\x19\xa9\x0e\x41\x2a\xf0\x3d\x1f\xdf\xef\x0a\xeb\x41\ +\x18\xe0\x79\x2e\x42\x11\x5c\x3c\x63\x31\x34\x6a\xe0\x86\x1d\x0e\ +\x8e\xdf\x44\xc5\x1c\xee\x8a\xf4\x5b\x58\xd8\x75\x5d\xc2\x30\xa0\ +\xdd\xf6\xf8\xf1\x87\xde\xcd\x4b\xcb\x5f\x41\xf1\x43\x1f\x3f\xec\ +\x66\x1c\xc2\x4d\x1f\xdd\x56\x5d\x18\x54\xfc\xd8\x61\xa8\x30\xc1\ +\x40\x7e\x80\xa6\xdd\x04\xa1\x74\x99\x73\x13\x71\xba\xac\x1b\x90\ +\xc6\x29\x4e\xd8\x61\x20\x37\x48\xd1\xac\xd2\x8e\x56\x51\x95\xab\ +\xbe\xc2\x28\x8a\xfa\xc9\x84\xee\xec\x4d\x11\x08\x94\x24\x4b\xa2\ +\xdb\xb8\x5e\x80\x17\xba\x84\xc1\xb5\x7d\xf7\x66\x8c\x50\x54\x34\ +\x91\x65\x64\x60\x94\x75\x6b\x0d\x2f\xb2\x49\xe2\x84\x30\xb8\xba\ +\x8c\x09\xc2\x00\xcf\xf7\x51\x84\x4a\xbe\xa0\x33\x53\x3f\x84\x15\ +\x36\x50\x31\x00\x05\x7f\x73\x06\x02\x44\x61\x57\x17\x46\x42\xa9\ +\x6c\x92\x04\x1a\x9a\xa2\x23\x53\x08\x22\x97\x24\x4e\xfa\x62\x7a\ +\x6f\x4c\xa2\x28\xc2\xd4\x35\xae\x2c\x2f\x51\xcc\x54\xd1\x3e\x77\ +\xf1\xe3\x78\xda\x3a\x41\xe0\xe3\xba\x29\x19\x99\x5e\x75\x26\xc4\ +\x11\x65\x25\xcb\x17\x2e\xff\x2e\x3f\x7d\xf8\xe3\x3c\xb9\xf8\xdf\ +\x99\xeb\x9c\xc7\x4f\xec\x2e\xcb\x6e\x2e\x21\x7a\x59\x16\x19\x43\ +\x98\x9f\xc3\xee\x24\x1c\xd9\x73\x23\x7f\x73\xea\xb7\xa8\x0c\x16\ +\x88\xa2\x18\xd7\x0d\x89\xe3\xb8\x6f\x91\x00\xc8\x18\x0a\x4f\x5c\ +\xf8\x5f\x7c\xe4\xde\xff\xc2\x5f\x9c\xfa\x45\xe2\x58\xa2\xa2\xe1\ +\xba\x5d\x59\x53\xd7\xf5\x6e\xf0\x91\x24\x4d\x25\x0b\xed\x0b\x2c\ +\x8a\x55\x4a\x25\x03\x6d\x78\x8e\x85\xb6\x4e\x1c\x77\x6d\x19\x99\ +\x9c\xd9\x8d\xdb\xf5\x70\x2d\x17\x43\x6a\x5c\x09\x5f\x62\xc6\xbb\ +\x81\x96\xf6\x1a\xbf\xf9\x8d\x0f\xa0\xeb\x1a\xb6\xd3\x46\x57\xf5\ +\xbe\xb0\x1e\xba\x01\x69\x51\x32\x35\x35\xc0\x57\x4f\x7e\x81\x99\ +\xc9\x51\x7e\xfd\xf9\x1f\x27\x10\x36\x51\x1c\xe1\xba\x11\xaa\xae\ +\x5c\xbd\x2b\xe3\x88\x72\xa1\xcc\xef\x7c\xf3\x71\x3e\x72\xf4\xd7\ +\xd1\x6c\x7d\x99\xf5\xc5\x16\x2b\xaf\x37\x89\x83\x94\x5c\xd4\xd5\ +\x40\x9b\xcd\x26\x7e\x12\x91\x77\x73\x84\xea\x3a\x7f\xf0\xed\x8f\ +\x72\xc3\xcc\x8d\xb4\x5a\x57\x38\xff\x4f\x01\xad\x96\xdb\xd7\x85\ +\xdb\xed\x36\x71\x1c\x43\x4e\x20\x45\x95\xcf\x5f\xfe\x6f\x3c\x9c\ +\xf9\x57\x34\xd3\x79\x16\x8f\xe9\xac\xce\x36\x89\x9c\xee\xba\x4a\ +\xd3\xb4\xbe\xff\x26\x17\xe5\x58\x8e\x5e\xe5\xef\xce\xfe\x0e\x8e\ +\x6c\xd2\xf6\x9a\x2c\x5d\xb4\x68\x6e\x61\x61\xcf\xf3\x48\xfc\x98\ +\x70\x50\xe0\xcb\x0c\x5f\x5f\xf8\x53\x0e\x6b\x47\x49\x0b\x1d\xe6\ +\x2f\x84\x2c\x9c\x6e\xe1\xb5\x63\x34\xa3\xbb\x32\xb0\x2c\xab\xcb\ +\xc2\x71\x81\x40\x59\xe3\x45\xfb\x2f\x48\x8c\x80\x85\x53\xeb\xbc\ +\xfe\xb4\x4b\xa7\xe9\x7e\x17\x0b\x77\xe8\x14\x52\x62\x4a\x1c\x6b\ +\x7e\x86\xf9\x78\x27\x4d\xed\x32\xeb\x97\x5c\x2e\x7c\xa3\x2b\x30\ +\x65\x32\x19\x92\x24\x61\x63\xa3\x41\x47\x26\x04\xa1\x8e\xa5\xbc\ +\xce\xc7\x9f\xfe\x08\x62\xfb\xc4\xb4\x4c\x3c\xc8\x54\xba\x9d\xe6\ +\x72\x39\xa2\x28\xb2\xa4\x94\x45\xdd\x30\x30\x27\x13\x8a\x83\x2a\ +\xf6\x52\x44\x63\xd6\x23\x6a\xa8\x68\x86\x82\x9a\xe9\x2f\x90\xe7\ +\x34\x4d\x1b\x30\x4d\xb3\x18\xeb\x11\x43\x87\x0d\xe2\x46\xc2\xc6\ +\x15\x07\x7f\x59\x25\xf1\x25\x66\x59\x25\x4d\x13\x00\x0b\x68\x1a\ +\x86\x31\xa9\x69\x1a\xe6\x9e\x84\x72\x51\xa7\x31\xe7\x61\xcf\x27\ +\xf8\x1b\xa0\xe7\x15\x14\xbd\x6b\x6f\x2b\x16\x8b\x96\xe7\x79\xc5\ +\x8c\x61\xe2\x19\x01\x33\x77\xe6\x68\xcf\x85\x34\xe7\x5d\xfc\x55\ +\x95\xd8\x97\x64\x4a\x57\x59\x78\x6e\x6e\xee\xd9\x89\x89\x89\xa3\ +\x49\x94\xa2\x8c\x85\xe4\x73\x2a\x8d\xd7\x03\xac\x85\x10\x81\x8a\ +\x66\x8a\x4d\x5b\x9e\x4a\x10\x04\x94\xcb\x65\x2b\x0a\xc2\xa2\x65\ +\xc4\xec\xbf\xa7\x40\x73\x36\xc0\x5a\x0a\x70\x16\x24\x69\x04\x66\ +\x45\x21\x4d\xba\xba\xb0\xe7\x79\xeb\x86\x61\xd4\x51\x75\x26\xef\ +\xd6\x88\xec\x14\x77\x2d\x46\x3b\x72\xcb\x4d\x34\x5b\x4d\x0a\x85\ +\x02\xed\x76\x9b\x20\x08\x58\x58\x58\xe0\xb1\xc7\x1e\x23\x9f\xcf\ +\x93\x84\x29\x2f\xbd\xfc\x32\x5a\x4d\xc5\xcd\x39\x28\xaa\x82\xe3\ +\x38\xac\xae\xae\x52\xad\x56\x39\x7b\xf6\x2c\x33\x33\x33\xdc\x7f\ +\xff\xfd\x0c\x0f\x0d\xf3\xe9\xff\xf9\x19\x76\x4d\x4d\xb0\xe0\x2e\ +\xb0\xed\xe0\x28\x1b\x8d\x0d\x6c\xdb\xa6\x52\xa9\xf0\xca\x2b\xaf\ +\x20\xa5\xe4\x7d\xef\x7b\x1f\xf5\x7a\x9d\x27\xbe\xf2\x35\x74\x0c\ +\x32\xc6\x22\xe3\xf7\x8c\xb1\xba\xb6\x82\xd1\xb5\xa9\xf5\xfd\xda\ +\x77\xde\x79\x27\x37\x1e\x3e\x8c\xa1\xe9\x7c\xfb\x5b\x2f\x33\x5c\ +\x0a\x68\x8f\xb7\xd1\xa6\x55\xaa\xd5\x2a\x67\xce\x9c\x21\x93\xc9\ +\x6c\x5a\x36\x34\xee\xbb\xef\x3e\x1e\x7d\xf3\xa3\xbc\xf0\x8d\x17\ +\x79\xe9\xa5\x97\x98\xda\x97\xa1\x7c\x7b\x89\xd9\xd9\x59\x2c\xcb\ +\xa2\x5c\x2e\xb3\xbe\xbe\xce\xd2\xd2\x12\xd5\x6a\x95\x77\xbf\xfb\ +\xdd\x34\x36\x36\x78\xe6\xa9\xe7\xd9\x57\x1f\xc0\xcf\x7a\x34\x06\ +\x1a\x0c\x0e\x0e\x12\x86\x21\x2b\x2b\x2b\xb4\xdb\x6d\x3c\xcf\xe3\ +\xc3\x1f\xfe\x30\x99\x4c\x86\x57\x5f\x39\x4d\x4b\x69\xe2\x97\x3d\ +\xb4\xa9\xe9\x29\xdc\x53\x2e\x9a\xa6\x31\x33\x33\xc3\x99\x33\x67\ +\x48\xd3\x94\x5d\xbb\x76\xf1\xc8\x23\x8f\xf0\xe2\x8b\x2f\xb2\xde\ +\x5c\xa3\x56\xab\x21\xa5\xe4\xfc\xf9\xf3\xd4\xeb\x75\x3c\xcf\x63\ +\x60\x60\xa0\x6f\x9b\x7d\xec\xb1\xc7\xf0\x7d\x9f\x13\x27\x4f\x30\ +\x33\x33\x43\xa1\x94\xa7\x5c\x2e\x53\x1f\xac\x73\xfa\xf4\x69\x6e\ +\xba\xe9\x26\x4e\x9c\x38\x41\x10\x04\xdc\x7f\xff\xfd\x4c\x4d\x4d\ +\xd1\x6e\xb7\xd9\xd8\xd8\xc0\x0b\x1d\xf6\xee\xdb\x0b\x02\x5c\xd7\ +\x65\xf7\xee\xdd\xcc\xcf\xcf\x03\xb0\x6d\xdb\x36\xde\xf9\x8e\x77\ +\xe0\x79\x1e\x17\x2e\x5e\x40\xd7\xab\xec\x1f\xb8\x8e\x6f\x7f\xfb\ +\xdb\xd4\x6a\x35\xea\xf5\x3a\xba\xae\xf7\xb3\xe3\xbb\x77\xef\xe6\ +\xbe\x7b\xef\xe3\xe4\x89\x93\xd4\x06\xab\x98\xa6\x49\xb9\x5c\xa6\ +\xd5\x6a\xf5\x2f\xa4\x65\x59\x00\x94\xcb\x65\xde\xf6\xb6\xb7\xf1\ +\xc2\x0b\x2f\x70\xfe\xc2\x05\xf6\xee\xdd\x8b\x65\x59\x5c\xbc\x78\ +\x91\x81\x81\x01\x4a\xa5\x12\xa6\x69\xf2\xda\x6b\xaf\x21\xa5\xe4\ +\xc8\x91\x23\x4c\x4c\x4c\xf4\x66\x24\xaf\xbd\xf6\x5a\xd7\x23\xdd\ +\x63\xbf\x28\x8a\xc8\x66\xb3\x58\x96\x65\x65\x32\x99\xe2\xb6\x6d\ +\xdb\x58\x5a\x5a\x42\xd3\xb4\x1e\xcb\xf6\x59\xb4\xb7\x8f\xeb\xba\ +\x73\xd9\x6c\x76\x60\x64\x64\xa4\xd8\x4b\x3e\xf6\xb6\xa7\x69\xda\ +\xff\xbe\xe9\xdf\xb3\xc2\x30\x6c\xe6\xf3\xf9\xc9\xf1\xf1\x71\x16\ +\x17\x17\x7b\x0b\xf7\xee\x33\x74\x93\xa3\x7b\x8c\xab\x69\x9a\xe5\ +\xba\x6e\x71\x66\x66\xa6\xef\x70\x48\xd3\xb4\xcf\xca\x3d\x96\x4e\ +\x92\x84\x6a\xb5\xda\x67\xe1\x9e\x51\x60\x2b\xe3\xf7\x72\x97\xbd\ +\x9c\x64\xa3\xd1\x60\x68\x68\xc8\xca\xe5\x72\xc5\xad\x2b\x84\xad\ +\xb1\xf7\x58\x5e\x51\x14\xda\xed\xf6\x7a\xb5\x5a\xad\xd7\x6a\x35\ +\x9a\xcd\x66\x9f\x99\xb5\x6c\x26\x1b\xf4\x98\x6f\xf3\xf9\x27\x6d\ +\xdb\x6e\xd4\xeb\x75\xa3\xd1\x68\x90\xcd\xe6\x20\x05\x5d\xdd\xc2\ +\xc1\x5b\x18\xdd\xb6\x6d\x3f\x93\xc9\x48\xc7\x71\x10\x42\x90\x35\ +\x73\x7d\xdf\x72\x9f\x27\xaf\xb2\xb0\xf0\x3c\x8f\x4c\x26\x13\xae\ +\xaf\xaf\xcb\x6c\x26\x4b\x9a\x82\x40\xa2\x6b\xc6\x35\xcc\x2a\x13\ +\x6a\x82\x26\x00\x00\x1f\x45\x49\x44\x41\x54\x84\x60\x75\x75\xd5\ +\xca\xe5\x72\x99\x76\xbb\xad\x17\x8b\xc5\x2e\x93\x7f\x9f\x7e\x7b\ +\x03\x93\xa6\x69\x1b\xe8\x14\x8b\xc5\x10\x49\xbf\xfd\x77\xf3\xb0\ +\xaa\xaa\x04\x41\x10\x85\x61\xa8\xab\xaa\x6a\x02\x52\x53\x74\x34\ +\x45\xbf\xf6\x1c\x05\x08\x04\xb6\x6d\x8b\x24\x49\x56\x72\xb9\x5c\ +\xd9\xb6\xed\xd4\xd0\xcd\xbe\x9c\xaa\x8d\xec\x2d\x99\xf1\x86\x81\ +\x48\x05\xa8\x5d\x9d\xe0\xf2\xe5\xcb\xcd\xb1\xb1\xb1\xed\x9e\xe7\ +\x93\x16\x3d\xb2\x63\x11\x69\x92\x82\xab\x93\xb4\x32\x24\x2d\xad\ +\xef\x91\x76\x1c\xa7\x30\x31\x31\xa1\xaa\xaa\x4a\xac\x24\x24\xdb\ +\xda\x94\xcb\x2a\x49\x24\x51\x82\x0c\x51\x43\x43\x3a\x3a\x02\x81\ +\xe3\x38\xba\xe7\x79\xa5\x7a\xbd\x6e\xa8\xaa\x4a\x33\xdb\x60\x62\ +\x87\x4e\xe4\x27\xc8\x4e\x96\xa4\xad\x21\x5d\xb5\x9f\xf4\x74\x5d\ +\x37\xc9\x64\x32\xf6\xf6\xc9\xc9\x01\x37\x0e\xc8\xef\x75\x50\x84\ +\x20\x75\x55\xd2\x8e\x49\xd2\xd4\x21\xa5\xeb\x91\x36\x0c\xce\x9c\ +\x39\xa3\x4f\x4c\x4c\x94\x64\x22\x69\xe6\x36\x18\x99\xd6\x88\xfc\ +\x14\x6c\x93\xa4\xad\x93\x74\xba\x71\x1b\x86\xce\xca\xca\x0a\x43\ +\x43\x43\xcd\x5c\x36\x67\xac\x07\x1d\x86\x0f\x74\x0d\xec\xa9\xab\ +\x20\x2d\x93\x68\xa3\x1b\xb3\xa2\x77\x97\x53\xed\x76\x7b\x6e\x68\ +\x70\x70\xbf\x17\x46\x88\x6d\x36\xc5\xaa\x42\x1c\x26\x68\xe5\x37\ +\xae\xa2\x48\x9d\xd6\xd7\xab\x44\x2b\x46\xaf\xf6\x22\xaf\x69\x1a\ +\x71\x9a\x20\x47\x6d\xb4\xc3\x2d\xf6\xd5\x6e\x66\xc5\xbe\x8c\xed\ +\x36\x50\xbc\x0c\x8d\x2f\x0c\xf6\xec\x17\x5a\x1c\xc7\x4a\x18\x86\ +\x58\x9a\x83\xb9\x63\x89\xfd\x3b\x0f\x32\x59\x9d\xe6\xe9\x73\xff\ +\x40\x25\x57\x63\xfd\xab\x39\x82\x05\x13\xd7\x75\x15\x45\x51\xb4\ +\xde\xed\x14\xef\x6c\x52\xbc\x39\xc3\x74\xe9\x00\xe7\x57\x4e\x92\ +\xa6\x92\xe8\x74\x15\xfb\x44\xbe\x97\x20\x50\xa3\x28\xd2\x7d\x37\ +\x60\x21\x5d\xe1\xe0\x4d\x0e\x25\x31\x8c\x24\xc0\xf6\x56\x89\x2c\ +\x81\x73\xac\x4a\xb0\xa0\xf7\x6e\xd1\x9c\xaa\xa9\xc8\x50\x62\x4f\ +\xad\x31\x70\x7b\x99\xaa\x36\xc1\xba\x33\x8f\x65\x3b\x18\xd6\x00\ +\x8d\x7f\x2e\x03\xa2\x97\x2e\xd3\x55\x29\x38\x1f\x2e\xb2\xff\x68\ +\x19\x2d\xc9\x92\x33\xb2\xcc\x6f\xbc\x4e\x45\x14\xe8\x3c\x3b\x40\ +\xb8\x64\xf4\xd2\x68\x75\x10\xb4\x02\x8f\x1d\xb7\xfa\x50\x6c\x73\ +\xd3\xf0\x3d\x28\x6f\xde\xf1\xb3\x8c\x0c\x4e\x11\xa7\x61\xdf\x23\ +\x0d\x48\xdf\xf7\xf1\x3d\x9f\x98\x80\x5d\xc6\x03\xfc\xab\x1b\x3e\ +\xc6\x8f\x5d\xf7\x9b\x5c\x3f\xf8\x28\xa3\x63\xa3\x7d\xed\x36\xde\ +\x74\x9f\x06\x41\x40\x9c\x44\xac\xaf\x06\xfc\xe8\xc1\x9f\x43\xb6\ +\x07\xf9\xa9\x23\xbf\xce\x0f\x1d\x79\x1f\x41\xe2\x5f\xe3\x50\xf5\ +\x3c\xaf\xef\xfc\x7c\xf3\xcc\x87\xd8\xa1\x3f\xc8\xdd\x3b\x7f\x90\ +\x37\xed\xfc\x20\xa1\x66\xe3\x79\x57\xfb\xee\x89\x56\x51\x1a\x31\ +\x9c\x9f\xe2\xa1\x89\x0f\xf1\x73\x77\xfd\x19\xf6\xd2\x20\x37\xee\ +\xb9\x95\x20\xb5\xaf\xd5\x85\xfd\x00\xd7\x75\xd1\x74\xc1\x8e\xdc\ +\xed\x7c\xf8\xc8\x1f\x70\xa0\xfa\x46\x7e\xe9\xbe\x4f\x11\x67\xba\ +\x6d\xb7\x78\xa4\xa5\xeb\x7a\x24\xa4\x78\x81\xcf\xfb\x0e\xfc\x01\ +\xf7\xed\xf8\x51\x7e\xe6\x96\x4f\x32\x36\xbe\x8d\x30\xbd\xd6\x23\ +\xed\xf9\x1e\x7e\x10\x10\x0b\x97\xbb\x73\x1f\xe3\xc0\xf0\x9d\x28\ +\x35\x73\x9c\xa1\xfc\x58\x9f\x67\x7b\xce\xa5\xfe\x49\xc6\x01\xd7\ +\x0d\x1f\xe1\x89\x4b\x7f\xc1\x97\x5f\x78\x8a\xbd\x43\x37\xf4\x6c\ +\x1a\xfd\x37\x5f\xdf\x23\x1d\xfa\xd4\x8c\x49\xe6\xdb\x17\x78\x75\ +\xe5\x05\x6e\x99\x78\x00\x3f\xb6\xfb\xfa\xeb\x56\x8f\xb4\xe7\x79\ +\x64\xf5\x22\xe5\x4c\x95\x67\x16\x3e\xcd\x91\x91\x47\x29\x64\x4a\ +\x68\xa9\x89\xe7\x79\xb8\xae\xbb\xc5\xc7\xec\x11\x47\x11\xe5\xec\ +\x00\x4a\xa1\xcd\x17\x5f\xfc\x12\x3b\x6b\x07\x29\x68\x15\xfc\x20\ +\xc0\xf3\xbd\xab\x16\x5f\xdf\xbf\xea\x91\x6e\xe8\x7c\xe6\xe5\x3f\ +\x24\x9f\x8e\x33\x33\x3e\x09\xa9\x8a\xe7\x5f\xf5\x48\x77\xe3\xea\ +\x7a\xa4\x2f\x9c\xb6\xa8\x0d\x2b\xac\x3b\x8b\xec\x9f\x38\x44\x4e\ +\x2d\x6f\xb2\xb2\x77\xcd\x85\x8f\xc2\x90\x76\xdb\xe3\xa7\x1e\xfd\ +\x71\xbe\x7a\xe9\x93\x28\x61\x1c\x63\x79\x9d\x4d\x16\xbe\xea\x76\ +\xef\x79\x89\x91\x02\x27\xb4\x19\x2e\x6c\x67\xa8\x32\x44\xcb\x6d\ +\xf5\xf5\xd5\xad\xbc\x1a\x86\x21\x71\x94\x12\xa4\x0e\xb5\xdc\x08\ +\x05\x7d\x80\x8e\xdf\x24\x6f\x94\xfb\x09\x87\x9e\x1a\xd7\x9b\xb1\ +\xa9\x4c\x10\x28\x68\x69\x9e\x58\xb3\xf0\xbc\x08\x3f\xf2\x09\x43\ +\xbf\xdf\x77\x92\x24\x04\xa1\x4f\x12\xa7\xa4\x52\x22\x63\x9d\xb1\ +\xda\x04\xab\xad\x35\xc2\x34\xd8\xe4\xd5\x2d\x1e\xe9\x4d\x83\x80\ +\xa2\xa8\x64\xb3\x1a\xe3\xe5\x19\x2c\xbf\x89\x21\xf2\x48\xb9\xe9\ +\xcf\x0e\xba\x49\x8d\x5e\xa6\x47\x4a\x28\x57\x4c\xe2\x40\x43\x57\ +\x0c\x04\x0a\x61\xe2\x13\x47\xc9\x35\x1e\xe9\x1e\x17\x1b\xba\xc6\ +\xdc\xd2\x12\x45\xa3\x8a\x72\xac\xf9\x69\x7c\xd1\xda\xf4\x39\x7b\ +\xdf\x57\x17\xfe\xc6\xca\xa7\xd9\x6e\xdc\xce\xf8\x4e\x85\x13\xcd\ +\x7f\xc2\x89\xdb\xb8\x6e\x37\x63\xd2\xbb\x85\x5d\xd7\x25\x08\x43\ +\x0a\xb5\x90\x97\x5f\xff\x36\x8f\x3f\xfc\x4b\x7c\xfc\xf9\xf7\xf1\ +\xed\xc5\x27\x49\x93\xf4\x9a\x6c\x4c\xaf\x6f\xd5\x48\xf9\xfa\x85\ +\xcf\xf2\xf8\xbd\xbf\xc2\xe7\x4e\xfd\x01\x67\xec\xaf\xa1\xa2\xe2\ +\xba\xd7\xce\x6e\xd7\xf5\x88\xe2\x88\x25\xeb\x12\xed\x8e\x4d\x6d\ +\xd8\x40\xd6\x2f\xb2\x61\xaf\x10\x27\xdd\x4c\x4f\x3f\x9d\xe5\xfb\ +\xb8\x8e\x8b\x94\xd0\xe0\x2c\x7b\x86\x6e\xc0\xcb\x5f\xe4\x77\x9e\ +\xf9\x18\xba\xa6\x5f\x33\xbb\xbb\x71\x3b\x24\x49\xca\xd4\xd4\x00\ +\x4f\x9d\xfe\x67\xc6\x6b\x93\xfc\xc6\x73\xef\x07\x91\xf4\xfb\xee\ +\x5d\x78\xd7\xeb\xde\xc2\x95\x7c\x99\xdf\x78\xe6\x83\x7c\xf0\xa6\ +\xdf\x41\x6b\x27\x8b\xb4\xa3\x15\x96\xce\x35\xf0\x3b\x29\x71\x9a\ +\x47\x08\x41\xb3\xd9\xa4\xdd\xb1\x28\xb8\x39\x84\xa9\xf2\x47\x2f\ +\x3f\xce\x1b\xf6\xfe\x10\xab\xf1\x79\xd6\xbf\xd3\xe5\xdf\x5e\x32\ +\xc1\xb6\x6d\x5a\xad\x56\x37\x87\x2f\x2a\x3c\xbb\xf6\x67\xa8\xaf\ +\x25\xb4\xc3\x65\x5a\x97\x57\x59\x38\xd3\xc0\x6f\xa7\xdf\xc3\xc2\ +\xf9\x28\xc7\x42\xf8\x32\x9f\x3f\xf3\x87\x58\x41\x93\x96\x7f\x9e\ +\xd5\x79\x9b\x56\xd3\x05\x21\xb7\xe8\xc2\x31\x81\x96\x12\x93\xe7\ +\x2b\xaf\xff\x0f\xee\xd1\xde\x02\x19\x87\xb3\xf3\x27\x58\x39\xdb\ +\xd5\x85\x35\x43\x05\xa0\xdd\x6e\x63\x37\x6d\x32\x51\x81\x66\xf2\ +\x3a\x5f\xb8\xf4\xbb\xb8\x71\x93\x8b\xce\x4b\x6c\x2c\xf8\x6c\x2c\ +\x37\x31\xf2\x5d\x0d\xc4\xb6\x6d\xac\x46\x07\xbb\xd8\xd5\x85\x9f\ +\x5f\xfb\x4b\x2e\xd9\x7b\x58\x8b\xcf\x11\x58\x3e\xe7\x9f\x5e\x43\ +\xd1\xe9\xeb\xc2\xcd\x66\x93\x4e\x9a\x10\x44\x06\xe6\xc0\x02\xbf\ +\xfc\xa5\x9f\x40\xec\xd8\xb9\x43\xc6\xb6\xc4\x2c\x68\x24\x69\x42\ +\x2e\x97\x63\x7d\x7d\xfd\xdc\xe0\xe0\xe0\x6e\x5d\xd3\xd1\xb6\x85\ +\xe4\xea\x82\x8d\xb3\x3e\x76\x23\x40\x7a\x3a\xc8\xae\xde\xbb\x99\ +\x91\x5e\xad\x54\x2a\x45\x20\x8b\x2e\xc9\x5f\x97\x12\x2d\xa7\xb4\ +\x96\x1c\x12\x57\x23\xf1\x40\xcf\x0a\x52\x99\xf6\x3d\xd2\xa6\x69\ +\x16\x72\xb9\x1c\xca\x8c\x4f\x5e\x55\x59\x39\xef\x10\x75\x20\xf1\ +\xe8\x56\x11\xe9\xdd\x75\x5d\x3e\x9f\x5f\x6c\xb5\x5a\xa5\x91\xe1\ +\x91\x82\x15\x5a\xcc\x3c\x98\x63\xf9\x84\x47\x6b\xc9\x45\x09\x0c\ +\x02\x27\xc1\xc8\x77\x39\xfb\x1a\x16\x0e\x12\xf4\xbd\x31\x85\xac\ +\xca\xca\x69\x9b\xd0\x92\xa4\x9e\x82\x4c\x41\xcb\x82\xd8\x4c\xc7\ +\x55\x2a\x15\x4b\xa6\xb2\xd8\xc1\x67\xef\xbd\x79\x56\x4e\xba\xd8\ +\xab\x21\xa9\xaf\x10\x3a\x29\x66\x49\x25\x89\x93\x9e\xe9\xf4\x58\ +\x3e\x9f\x3f\x62\x98\x59\xc6\xee\x56\xb0\x97\x23\xda\x73\x21\xda\ +\xa1\x03\x87\x7a\x86\x6e\xe6\xe6\xe6\x48\xd3\x94\x85\x85\x05\x1e\ +\x7e\xf8\x61\x0e\x1c\x38\x40\x6b\xa3\xcd\x73\xcf\x7e\x83\xc9\x5d\ +\x19\x36\x1a\x1b\x14\x8b\x05\x36\x36\x36\x68\x34\x1a\x54\xab\x55\ +\xce\x9d\x3b\x87\xa6\x69\xbc\xef\x7d\xef\xa3\x90\x2f\xf0\x99\x4f\ +\x7d\x96\xda\xb6\x2a\x57\xd2\x39\x86\x86\x87\x58\x5a\x5a\xc2\x34\ +\xbb\x0e\xfa\x8b\x17\x2f\x12\x86\x21\x8f\x3f\xfe\x38\xf5\x7a\x9d\ +\x2f\x7e\xfe\x1f\xbb\x25\x57\x43\xcb\x8c\x1c\x1a\x61\x75\x75\x95\ +\x6c\x2e\xdb\xd7\xa6\x3d\xcf\xe3\xd6\x5b\x6f\xe5\x91\x47\x1e\xc1\ +\xd0\x0d\x9e\x7d\xea\x79\x0a\x03\x0d\xe2\x52\x44\x14\xc7\x0c\x0e\ +\xd6\xb9\x70\xe1\x02\xaa\xaa\x76\x4d\x42\x8a\xc2\xbd\xf7\xde\xcb\ +\xfd\xf7\xdf\xcf\xd3\x5f\x7f\x86\xd3\xa7\xce\x50\x9b\xd4\x31\x32\ +\x26\xcd\x46\x03\xdb\xb5\xc9\x66\xb2\x74\x3a\x1d\x56\x56\x56\xa8\ +\xd5\x6a\xbc\xef\xfd\xef\x63\x7e\x6e\x9e\xe7\x9e\x7a\x9e\xeb\x46\ +\xf3\x44\x83\x01\x8d\x66\x93\x5a\xad\x4a\x14\x45\x2c\x2f\x2f\xf7\ +\x2d\x29\x1f\xfa\xd0\x87\xa8\xd7\x6b\x7c\xeb\xf9\x97\x58\xd5\x57\ +\x88\xb6\x07\x68\x3b\x76\xec\xe8\x83\x75\xa1\x50\xe0\xf4\xe9\xd3\ +\x24\x49\xc2\xde\xbd\x7b\xb9\xfb\xee\xbb\x09\x82\x80\x95\xf5\x65\ +\x06\x07\x07\xd9\xd8\xd8\xe8\xdf\xba\x96\x65\x5d\xe3\xa9\x7e\xe0\ +\x81\x07\x50\x55\x95\xaf\x3f\xf5\x75\x6e\xbb\xf5\x36\xf4\xe3\x1a\ +\xa3\xa3\xa3\xfd\x5b\xf6\xe6\x9b\x6f\xe6\xd2\xa5\x4b\x24\x49\xc2\ +\xad\xb7\xde\x4a\xa1\xd0\xbd\x10\xcb\xcb\xcb\xf8\x91\xcb\xee\x3d\ +\xbb\x31\x33\x26\x8e\xe3\x70\xd3\x4d\x37\xf1\xb9\xcf\x7d\x0e\xdf\ +\xf7\xd9\xb1\x63\x07\x87\x0e\x1d\x62\xdf\xbe\x7d\xb4\xda\x2d\xd6\ +\xd7\xd7\x29\x16\x8b\x3c\xf7\xdc\x73\x8c\x8d\x8d\xd1\xe9\x74\xd0\ +\x75\x9d\x2b\x57\xae\xa0\x28\x0a\xd3\xd3\xd3\x3c\xfa\xe8\xa3\x34\ +\x9b\x4d\x6c\xcf\xa2\x56\xab\x01\xb0\x52\xc8\x73\xee\xdc\x39\x66\ +\x66\x66\xb8\x70\xe1\x02\xab\xab\xab\x14\x0a\x05\xee\xb8\xfd\x0e\ +\x4e\x16\x4e\x72\xf6\xfc\x59\x0e\x1d\x3c\xc4\xfa\xfa\x3a\x97\x2e\ +\x5d\xa2\x5e\xaf\x53\xad\x56\xb9\x78\xf1\x22\x27\x4e\x9c\x00\xd8\ +\x52\xb7\xdc\x4d\xae\xbe\xf4\xd2\x4b\x57\x3d\xd2\x3d\x1d\xb4\xa7\ +\x0b\xcf\xcc\xcc\xec\xce\xe7\xf3\x7d\xee\xdb\xaa\xdb\x6e\xf5\x09\ +\x5b\x96\xb5\x3a\x38\x38\x58\xcc\x64\x32\xd9\x5e\x8e\x6d\x6b\x6d\ +\xee\xd6\xbe\x93\x24\x89\xc2\x30\x0c\xaa\xd5\x6a\xa1\x52\xa9\xf4\ +\x8d\xe1\x5b\x75\xe1\xad\x35\xbe\x42\x88\xc5\x4e\xa7\x53\xda\xb5\ +\x6b\x57\xa1\xd5\x6a\x5d\xc3\xcb\x5b\x75\xe7\x34\x4d\x19\x18\x18\ +\xe0\xd4\xa9\x53\xcf\x1e\x38\x70\xe0\xa8\xa2\x28\xdd\x67\xf2\x16\ +\x9f\xf3\x56\x8e\xd7\x34\x8d\x66\xb3\xc9\xd0\xd0\x90\x95\xc9\x64\ +\x8a\xbd\xaa\xa8\xad\xbc\xdf\xd3\xa7\x7b\xe8\xb7\xb6\xb6\x76\x6c\ +\x64\x64\xe4\x48\xb9\x5c\xee\xd6\xc4\xf4\x6a\x9a\xd3\x44\x6e\x28\ +\xaa\x10\x42\x88\x1e\x23\xca\x34\x4d\xd7\x3d\xcf\x2b\xb6\xdb\xed\ +\x54\x11\x8a\x90\xa9\xb8\xea\x1d\xde\xc2\x9f\x42\x08\x91\x24\xc9\ +\x7c\xa7\xd3\xa9\xd8\xb6\x9d\xef\x5a\x8c\x95\x6e\x9d\xad\x72\x0d\ +\x33\xf7\x4e\xc4\x0f\xc3\xd0\x75\x5d\xb7\xe6\x38\x8e\x54\x85\x4a\ +\x9a\xf2\x7d\xfb\xde\xac\x17\x5e\x54\x14\x45\xac\xac\xac\x44\x02\ +\x21\xb7\xb2\xad\x10\xb2\x3f\xf8\xaa\xaa\x62\xdb\xb6\x04\x56\x1a\ +\x8d\xc6\x46\x92\x24\xc1\xbf\xd4\xf7\xe6\x52\xca\x71\x1c\x27\xef\ +\xfb\x7e\xac\x20\x64\x2a\xaf\xd6\x0b\xf7\xda\xab\xaa\x0a\x20\xa2\ +\x28\x0a\xe3\x38\x76\xd3\x34\x6d\x6f\x6c\x6c\x24\x48\x01\x12\x54\ +\x4d\xd5\xb4\xf1\xbd\x83\xb5\xa4\xa9\x23\xd4\x6e\x6d\x6c\x77\x6d\ +\xe4\x8f\x0e\x0e\x0e\xc6\x49\x9c\x10\x16\x1d\x72\xdb\x03\x68\x65\ +\x48\xd6\x4d\x92\x8e\xd6\x7d\xd9\x1a\x12\x40\x49\x92\xc4\xa9\xd5\ +\x6a\x59\x4d\xd3\x32\x31\x09\xd1\x78\x83\x81\x5c\x96\x68\xcd\x20\ +\xd9\x30\x91\x91\x82\x62\x76\x5d\xe7\x41\x10\xb8\xc0\xda\xe0\xe0\ +\xe0\x80\xa2\x28\xe9\xba\xba\xce\xe4\x75\x2a\xc9\x86\x49\xbc\x62\ +\x92\x3a\x3a\x42\x93\x08\xad\x3b\x63\x72\xb9\xdc\x36\x45\x51\x46\ +\x2b\x95\x0a\x7e\x1c\x92\xb9\xae\x83\xa1\x2a\xc4\x2d\x83\xb4\xd1\ +\xe5\x5b\xa1\x4b\x50\x24\xba\xd6\xbd\x8d\x47\x46\x46\x22\x99\xa4\ +\xc9\x9a\xb2\xc1\xf6\xeb\x15\xc2\x55\x83\x68\xd5\x44\xda\x3a\x42\ +\x91\x08\xbd\xeb\xd2\x6f\x34\x1a\xb9\xc9\xc9\xc9\x11\x24\xca\x62\ +\xd0\x60\xea\x66\x20\x12\x24\x4d\x9d\xa4\x91\x21\xb1\x34\x54\x53\ +\x22\x14\x41\xb3\xd9\x5c\x0f\xc3\x70\xdf\xb6\x6d\xdb\xca\x8e\xef\ +\x63\xee\xb4\xc9\x55\x14\xc2\x0e\x68\xf5\xb7\xae\xa3\xa5\x19\xda\ +\x4f\x55\x89\xd6\x34\x0c\xc3\x40\xd7\xf5\xc1\x72\xb9\x5c\xb0\x3d\ +\x0f\x65\x8f\xc5\xe8\x6d\x11\x78\x0a\x9e\xdf\x22\x27\xca\xa4\x6d\ +\x93\xd6\x53\x15\x14\x45\xa1\xd1\x68\xa4\x85\x42\xa1\xaa\xeb\x7a\ +\xbe\x6d\xb4\xd9\x76\x9f\x4a\x21\x17\x90\x84\x1e\x7a\x9c\x27\x49\ +\x13\x9c\xa7\x46\x88\x3b\x0a\xaa\xaa\x56\x2d\xcb\x2a\x17\x8b\xc5\ +\x31\x21\x04\xde\x75\xab\x8c\xde\x2e\x49\x5d\x41\xea\xc7\xc8\x58\ +\x12\x9f\xaf\xe1\x9c\xc9\xf4\x3c\x37\x51\x18\x86\x64\x74\x93\x0d\ +\xdd\x62\xc7\x83\x21\x39\x59\xc5\xf7\x3d\x48\x23\xbc\x86\xc4\x7f\ +\xa9\x8a\xbf\xa4\x53\x2c\x16\x10\x42\x8c\x54\x06\x2a\x23\xd2\x95\ +\x34\xf7\x2e\xb2\xed\xee\x0c\x8d\x8d\x0d\x0a\x4a\x85\xc0\x0b\xd1\ +\xdb\x55\x5a\xdf\x28\x62\x9a\x26\x9a\xa6\x91\xcb\xe5\xc2\xc8\x8f\ +\x0c\xbb\x6a\x33\x7e\x6f\x91\xd8\x57\x29\x68\x05\xe6\xd6\x2e\x52\ +\x52\x86\xd8\xf8\xc7\x32\x32\x50\x31\x0c\x43\x13\x42\xa4\xa6\x61\ +\xd0\x4c\x5c\x26\xef\x04\x4f\x5f\xe3\xd6\xd1\x7b\x51\xde\xb6\xeb\ +\xe7\x19\x1f\x9b\x21\xc6\xc7\xf7\xaf\xf5\x31\x7b\x81\x47\xa4\x78\ +\xec\xd2\xdf\xc4\x2f\x3c\xf0\xa7\xfc\xc2\x83\x9f\x60\x62\xf0\x20\ +\xe5\x09\xf3\xbb\x3d\xd2\xa9\xef\xfb\x04\x49\x40\xa7\x19\xf1\xe1\ +\x5b\x7f\x9f\x8f\xde\xf1\xa7\x4c\x8c\xec\xe6\xae\x5b\xee\xc1\x4b\ +\xec\x1e\xb9\xa4\x49\x92\x5c\xf5\x48\x13\x71\xef\xc8\x7b\x79\xd7\ +\xae\x5f\xe5\xd6\xbd\xf7\x73\x64\xe6\x51\x3c\x63\x03\xdf\x0b\x7a\ +\x04\x20\xbb\xb5\xc8\x01\x51\x12\x32\x94\x99\xe6\xd1\xc9\x9f\xe1\ +\xe7\x8f\xfe\x05\x71\x73\x82\x9b\xf6\x1f\xc1\xc7\xea\x7b\xbb\xbb\ +\x0c\xdf\x95\x35\xd5\x0c\x4c\x67\x6e\xe7\x4f\xde\xf6\x1d\xae\x1b\ +\x3d\xca\x8f\xdf\xf9\x9f\x89\x2b\xad\x2e\x0b\x7b\x5e\xbf\x6a\xd4\ +\xf3\x7d\x34\x1d\xe6\xe7\x3a\xfc\xf2\x5d\x9f\x61\x6f\xf5\x28\xff\ +\xe5\x4d\x9f\x23\x3b\x92\x12\xc4\xdd\xed\x71\x1c\xcb\xae\x47\xda\ +\x27\x4c\x43\x3a\x5e\x87\x5f\xb8\xf1\xb3\x8c\x99\x07\x51\x46\xf2\ +\xd3\x4c\x0d\xec\x25\x08\xc2\x6b\x0a\xae\xbb\x2c\x1c\x10\xc6\x3e\ +\x77\x6c\x7f\x94\xdf\x7f\xe1\x63\x84\x56\x86\x1f\xb9\xe1\x03\x64\ +\xd4\x5c\x9f\x95\x7b\x32\xa5\xbf\x59\x0a\x3a\x5d\xb8\x99\x53\x6b\ +\xcf\xf3\xe5\x93\x7f\xc3\x3b\xf7\xfe\x7b\x26\x2a\x7b\x88\xa3\xb8\ +\xcf\xc2\x3d\x5d\xd8\xf3\x3c\x4c\x25\xc7\xc4\xc0\x0e\x3e\x77\xfe\ +\xb7\xb9\xa1\xf8\x83\x3c\xb0\xf7\xad\x0c\x66\x27\x71\xbd\xab\x9a\ +\x73\x4f\x17\x8e\xa3\x84\x72\x76\x00\x91\xed\xf0\xc4\x4b\x4f\xb0\ +\xb3\x76\x3d\xa3\x85\x1d\x78\x81\xb7\xd5\x1c\x4f\xe0\xfb\x38\xae\ +\x87\xae\x29\x04\xad\x3c\x9f\x3c\xf6\x1b\x4c\x9a\x47\x78\xf0\xba\ +\xb7\x60\xaa\x79\x5c\xdf\xc5\x73\xb7\xb2\xb0\x07\x48\xf2\xe1\x14\ +\xeb\xe9\x19\x2a\xf9\x12\xdb\x4a\x3b\xa8\x67\xc7\xf1\x7d\xaf\x8f\ +\x6f\x5b\x3d\xd2\x44\x1a\x37\xee\x3e\xc4\xf3\xeb\x9f\x42\x73\x7c\ +\x97\xb9\xe6\x25\xa2\x28\x26\xf0\x23\x24\x7a\x5f\x7a\x0c\xc3\x80\ +\x2c\x0a\x71\x12\x52\xd0\x2b\xe8\x8a\xc9\x8b\x17\xbf\x42\x9c\x76\ +\x1d\xfd\x5b\x65\x4d\x80\x24\x9f\x10\x24\x1e\x05\xa3\x8c\x2a\x3a\ +\x38\x2c\xd3\x70\x97\xf1\x7d\x97\xc0\xd7\xae\xa9\x17\x06\x30\x00\ +\x55\xa8\x04\x5e\x42\x75\x50\xe5\xc5\xb3\xc7\x98\x6b\x9c\x25\x08\ +\xba\xd6\x0e\x4d\xd3\x7a\xcf\x64\x12\x23\x46\x00\x32\x51\xa8\x97\ +\x07\x79\xe9\xf2\x4b\xc4\x25\x1f\x91\x76\x8b\xbf\x33\x81\xb9\xe9\ +\x4c\x08\x08\xbc\x00\x43\x68\x98\x19\x9d\x4a\x66\x88\xe5\xf6\x3c\ +\x31\x1e\x4e\x60\x11\xf8\x06\x32\x95\x57\xb5\x6f\xdf\x47\x20\xf0\ +\xd2\x0e\x25\x7d\x90\x86\xf3\x3c\x0a\x0a\xeb\xce\x12\x51\x18\x11\ +\xf9\xd1\x35\x72\x6c\xac\xc5\xa4\xa4\x90\x82\x63\xa5\x28\xc7\x5b\ +\x9f\xc5\xc8\x48\x82\xc0\xc3\x71\x9d\xfe\xf4\xee\x95\xfc\x6b\x22\ +\xcb\x57\x5f\xff\x33\xde\x73\xf0\x3f\x73\xca\xfd\x12\x1b\xf1\xe5\ +\x9e\x51\xa8\xcf\xab\xbd\x92\xff\x24\x4a\xe9\x68\x17\xc8\xc8\x41\ +\xee\x3b\x78\x2f\x9f\x3f\xfb\x47\xf8\xa9\x4d\x12\x5f\x4d\x61\x6d\ +\x2d\xb8\x16\x5a\xc2\x8b\x73\x4f\xf0\x33\xf7\xfe\x06\x7f\x7f\xfa\ +\xf7\xb1\xb8\x42\x35\x3b\x8a\xe7\x5d\x75\xc7\xf7\x06\x30\x8a\x62\ +\x96\xad\x39\x9c\x4e\xc2\xe8\xb6\x02\x71\x61\x96\x91\xe2\x76\xbc\ +\xa0\x3b\xa3\xae\x26\x13\x7c\x7c\xcf\x45\x22\xb0\xb5\xcb\x1c\x1e\ +\x3f\x4a\x47\x3f\xc3\x17\x4f\xfe\x15\x05\xb3\xd8\xcd\xc6\xb8\x5e\ +\x7f\x40\xba\x3e\xef\x94\xfa\x64\xc4\x4b\xe7\x5e\x65\xa2\x3e\xce\ +\x9f\xbc\xfc\x0b\x54\x8b\x75\xdc\xc0\xc1\xb6\x9d\xbe\xee\xed\x38\ +\x0e\x81\xef\x53\x2a\x64\xf9\xbf\xff\xf1\x23\xfc\xe6\xa3\x5f\x44\ +\x6b\xf9\x8b\x2c\x2e\xcd\xb2\x7c\xb1\x8d\xdf\x8e\x89\x93\x3c\x52\ +\x4a\x36\x36\x36\xf0\xe3\x88\x82\x97\xa7\xa5\x9e\xe3\xb7\x9f\xfc\ +\x25\x7e\xe2\xc1\xc7\xf8\xc7\x8b\xff\x83\xd6\x49\x95\x66\xb3\xeb\ +\x91\x96\x52\x5e\xf5\x48\x67\x04\x46\xb6\xc6\xef\x3e\xf7\x6f\xf9\ +\xa3\x1f\xfd\x27\xce\x36\xbe\xc9\x95\xd5\xf3\xac\xce\x37\xf0\x5b\ +\x57\x3d\xd2\x3d\xa7\x41\x2e\xc9\x73\xb2\xf5\x55\x0e\x78\xb7\xe1\ +\x26\x1d\xce\x2e\x7d\x89\xb9\x4b\x0e\x8d\x75\x17\xa1\x42\xa5\x52\ +\xe9\x9e\x60\x10\x13\x69\xe0\xc9\x0c\x4f\xcc\x7d\x92\xf7\x8c\x7c\ +\x0c\x51\x6a\xf0\xf5\x57\xbe\x48\x63\xde\xa1\xd5\x0c\x51\xf5\x6e\ +\x92\xb6\xd9\x68\x62\xaf\xdb\xe8\x51\x91\xa5\xe0\x14\xc7\xd6\xfe\ +\x81\x62\x31\xcb\x17\xce\xfc\x31\x8d\xc5\x90\x8d\x95\x26\x7a\xa6\ +\x2b\xe1\x5a\x96\x45\xb3\xd9\xea\x96\xe5\xaa\x79\x9e\x5c\xfe\x63\ +\x26\x9d\x43\x9c\x59\xf9\x06\x7e\x27\x61\xe1\xd5\x26\x7a\x01\x4c\ +\xb3\xab\x0b\x37\x9b\x4d\xfc\xbc\x24\x4e\x4d\x16\xd2\x17\xf8\xcd\ +\xaf\xfd\x1c\x62\xfb\xd8\x0e\x29\x10\xa8\x99\xae\x3f\xae\x57\x2f\ +\x1c\x45\x51\x31\x9b\xcd\x91\xbf\x21\x66\x6c\x6f\x8e\xd5\x93\x1e\ +\x57\x5e\xea\x80\x65\xa2\xe8\xa0\x9a\xe2\x1a\x5d\x58\xd7\xf5\x62\ +\x92\x8f\xd8\xfd\xf6\x02\xe1\x7c\xca\xe5\xe3\x1b\xf8\xb3\x5d\x9d\ +\x43\xcb\xf4\xcb\xc8\x2c\x45\x51\x9a\x52\xca\xc9\x7c\x3e\x4f\xfe\ +\x68\xca\xd8\x68\x86\xd9\xe3\x6d\xd6\xbf\x93\x90\x86\x02\xd5\x00\ +\x45\xeb\x2e\xc2\x2b\x95\x4a\xd8\x6e\xb7\x8d\x5c\x36\x87\xad\xb8\ +\xdc\xf5\xc1\x1a\x2b\x27\x7c\x66\x8f\xb5\x09\xe6\x75\x10\x29\x5a\ +\x46\x45\x72\x55\x17\x1e\x1d\x1d\x3d\xea\x5b\x01\x95\x37\x2a\x4c\ +\x4e\xe5\x98\x7d\xb1\xcd\xda\x89\x08\xe9\x75\x7f\x7a\x45\x35\xe9\ +\xeb\xc2\xb5\x5a\x2d\x94\x89\x34\xa2\x91\x88\xe9\x1b\x33\x2c\x1e\ +\x77\x68\x5e\x0c\x20\x56\x91\x48\xb4\xac\x20\x4d\x52\x74\x5d\x6f\ +\x7a\x9e\x27\x33\x99\x4c\x35\x57\x2e\xb0\xed\x5e\x89\x75\x25\x66\ +\xe3\x9c\x8f\x76\xe4\xf6\xc3\x58\x56\x17\x79\x66\x67\x67\x09\xc3\ +\x6e\xd9\xc0\x5b\xde\xf2\x16\x76\xed\xda\xc5\xc2\xdc\x22\xa7\xbf\ +\x79\x96\xba\x22\x29\xed\xf4\x51\x54\xa5\x5f\x2f\x5c\x28\x14\xb8\ +\x72\xe5\x0a\xd5\x6a\x95\x77\xbc\xe3\x1d\x68\xaa\xc6\xe7\xff\xf6\ +\x8b\x54\x6b\x03\x4c\xe4\x1b\x54\x8f\x0e\xd0\x6e\xb7\x09\xc3\x10\ +\xd3\x34\xb9\x70\xe1\x02\x71\x1c\xf3\xde\xf7\xbe\x97\x1d\x3b\x76\ +\xf0\x0f\x7f\xf7\x05\x94\x15\x8d\xaa\xbd\xce\xce\xdb\x06\x68\xb5\ +\x5b\x18\x86\x41\x92\x24\x2c\x2e\x2e\x22\xa5\x64\xdf\xbe\x7d\x3c\ +\xf2\xe8\x23\xf8\xae\xcf\x77\x9e\x7a\x95\x9c\xd5\x66\xa6\xea\xa3\ +\x8f\x6a\x64\xb3\x59\x16\x16\x16\xfa\xd4\x20\x84\xe0\x8e\x3b\xee\ +\xe0\xce\xbb\xee\xe4\xb9\xa7\xbe\xc1\xe5\xaf\xce\x52\xd7\x87\x99\ +\xbc\x21\x4b\xb3\xd5\xec\xfe\xd0\x85\x69\x62\x59\x16\x2b\x2b\x2b\ +\x8c\x8d\x8d\xf1\xe1\x0f\x7f\x98\xe7\x9e\x7e\x8e\x57\x4f\x9e\xe2\ +\xfa\xf1\x32\xd6\x40\x87\x30\x0a\x49\xe2\x84\x62\xb1\xc8\xfc\xfc\ +\x3c\xcd\x66\x13\x80\xff\xf8\x1f\xff\x23\x00\x2f\x3c\x77\x0c\x37\ +\x63\xb3\x3c\xb2\x8c\xb6\x6d\xdb\x36\x66\x67\x67\x19\x18\xe8\xfe\ +\x0e\xcc\x85\x0b\x17\x08\x82\x80\xfb\xee\xbb\x8f\xc3\x87\x0f\x33\ +\x3b\x3b\x4b\x2c\x23\x86\x86\x86\x30\x4d\x93\x6f\x7e\xf3\x9b\x8c\ +\x8e\x8e\x62\x9a\x66\xdf\x12\x3b\x3e\x3e\xce\x43\x0f\x3d\xc4\xd0\ +\xd0\x10\x17\x2f\x5d\xec\x0e\xfc\x66\x32\x60\x6c\x6c\x8c\xa5\xa5\ +\x25\x46\x46\x46\xb8\x7c\xf9\x32\x00\x0f\x3f\xfc\x30\x7b\xf6\xec\ +\xa1\xd3\xe9\xb0\xb6\xb6\xc6\xb9\x73\xb0\x6f\xdf\x3e\x2e\x5f\xbe\ +\x8c\xef\xfb\x8c\x8f\x8f\xb3\xb2\xb2\x42\x1c\xc7\xdc\x7c\xf3\xcd\ +\xdc\x79\xc7\x9d\xec\xdc\xb9\x93\xbf\xfc\xcb\xbf\x64\x7e\x61\x9e\ +\xd1\x91\x51\x9e\x78\xe2\x09\xea\xf5\x3a\x00\x6b\x6b\x6b\x44\x51\ +\x84\xa6\x69\x1c\x3c\x78\x90\x77\xff\x5f\xef\xc6\x34\x4c\x9e\x78\ +\xe2\x09\x86\x86\x86\x48\x92\x84\xf9\xf9\x79\xae\x5c\xb9\x42\x4f\ +\xaa\xed\xb1\xf0\x2d\xb7\xdc\xc2\xdc\xdc\x1c\x4b\xab\x4b\xdc\x78\ +\xe3\x8d\xbc\xf2\xca\x2b\x54\x2a\x15\xce\x9c\x39\xc3\xc1\x83\x07\ +\xc9\x64\x32\x1c\x3f\x7e\x9c\x34\x4d\x79\xf8\xe1\x87\xb9\x70\xf1\ +\x42\x3f\xb9\xf0\xfc\xf3\xcf\x7f\xff\x7a\xe1\x4e\xa7\x63\xe5\x72\ +\xb9\x62\xad\x56\xa3\xdd\x6e\xf7\xb7\xf5\x98\x72\xab\x17\xda\xb6\ +\xed\xb9\x7c\x3e\x3f\x50\xad\x56\x8b\x5b\xcd\xde\x5b\xf9\xb9\xf7\ +\x3d\x8e\x63\x2b\x0c\xc3\x66\xb1\x58\x9c\x1c\x18\x18\xa0\xd3\xe9\ +\x5c\xc3\xab\x3d\x1d\xb9\xf7\xb7\x61\x18\xa1\xe3\x38\xc6\xf0\xf0\ +\x30\xb6\x6d\x7f\x8f\x77\x79\xeb\xef\x63\x55\x2a\x15\x4e\x9f\x3e\ +\xfd\xec\xee\xdd\xbb\x8f\x6e\xb1\xfc\x5e\xb3\x4f\xef\x7f\x4d\xd3\ +\x58\x5b\x5b\x63\x7c\x7c\x3c\xb4\x6d\xdb\xf8\x97\x6a\xa2\x37\xcf\ +\xb7\x69\x59\x96\x2c\x97\xcb\xd5\xef\xde\xae\xa5\x49\x1a\x6d\xf5\ +\x31\x3b\x8e\x83\x65\x59\x5e\xb5\x5a\xcd\xb4\x5a\xdd\xf4\xbd\x4c\ +\x05\x8a\x10\x08\xe5\x7b\x78\x55\x58\x96\x95\x68\x9a\xd6\xcd\x5e\ +\x23\xd0\x84\xde\xd5\x85\x95\xab\x35\x19\x5b\xfc\xd7\xd2\x75\xdd\ +\x50\xd7\x75\x1c\xc7\x41\x57\xf5\x6b\xea\x85\x15\x5d\x5c\xd3\x7f\ +\xa7\xd3\x91\x8a\xa2\x44\xbe\xef\x6b\x9a\xa6\x09\x12\x81\x14\xa0\ +\x6a\x12\x45\xb9\xb6\xed\x26\xf8\xcb\x24\x49\x64\x9a\xa6\xb1\x82\ +\xd2\x35\x5e\x23\x51\x94\x3e\xd7\xf6\xab\x0a\xe2\x38\x4e\x2c\xcb\ +\x4a\x55\x55\x15\x02\xf8\x17\xea\x85\xc5\xe6\x7a\x37\xca\x66\xb3\ +\x71\x9a\xa6\x52\xc8\xcd\xba\x65\x40\xdb\x36\x39\x12\xc8\x48\xd9\ +\x2c\x90\xee\x16\x2f\xaf\xae\xae\x5e\xaa\xd7\xeb\x07\x7d\xcf\x97\ +\xa1\xd1\xd5\x85\x71\x4d\xd2\x4e\xb7\x46\x57\x46\x0a\x42\x93\xbd\ +\x3c\x9c\x51\x2a\x95\xf4\x4c\x26\x43\x44\x44\x3a\xde\xa6\x98\x35\ +\x48\x5a\xbd\xba\xdb\xab\x81\x87\x61\x18\xb8\xae\xbb\x5a\x2c\x16\ +\x67\x74\x5d\x17\x2d\xb5\xc5\xf0\x1e\x48\x6d\x8d\xb4\x65\x22\x1d\ +\x6d\xd3\x48\xde\xbf\xfa\x9e\xeb\xb9\xb2\x5a\xad\x0e\x04\x49\x88\ +\xb2\xa3\x4d\x4e\x33\x88\x5b\x3a\x69\x5b\x47\x46\x6a\xf7\xc7\xc5\ +\x90\x64\x32\x19\x2e\x5e\xbc\x58\x19\x1e\x1e\x0e\x7c\xd7\x8f\xdb\ +\x99\x16\x23\x13\x2a\xe1\x86\x41\x6a\x6b\xdd\x1a\xe7\x44\x20\x54\ +\xd0\x75\x5d\x18\x86\xe1\x8f\x8c\x8c\x04\x19\x33\x53\xfe\x3f\xd4\ +\x0b\x63\xdb\xb6\x7e\xe5\xca\x95\xb5\x72\xb9\x5c\x0c\xe3\x38\x0d\ +\xca\x16\x95\xba\x4a\xda\xd1\xd1\x46\x7e\xa4\x55\xd0\x35\x9d\xe6\ +\x53\x15\xa2\x55\x1d\x45\x15\x08\x21\x6a\xa5\x52\x29\x9f\x4a\x50\ +\x76\x39\x8c\xde\x11\x11\x05\x2e\x22\xd2\xd0\x45\x86\x34\x50\x68\ +\xfe\x63\x1d\x55\x55\xd1\x75\x5d\x98\xa6\xa9\xea\xba\x8e\x63\xb8\ +\x0c\xde\xe5\x53\x2f\x6a\x10\x87\x84\x9e\x0b\xba\xa4\xfd\xe5\x21\ +\xe2\x96\x8a\x94\x52\x68\x9a\xa6\x1b\x86\x21\x34\x4d\xc3\x1d\xeb\ +\x30\x7c\xbf\x46\x51\x8e\xb2\xda\x58\x41\x93\x1a\xf1\x42\x91\xce\ +\xf1\x02\x32\x06\xd3\x34\xd5\x3e\x0b\xab\x1d\xf6\xbf\x29\x42\x4b\ +\x54\x7c\xc7\xc1\x24\x47\xe4\x82\x75\xac\x44\xb0\x68\xf4\x7e\x03\ +\xb1\x52\x2e\x97\x33\x41\x94\x90\xb9\xc5\x65\xdb\x21\x13\xab\x6d\ +\x91\xa1\x40\x10\x06\xe8\x4e\x99\xc6\xd7\xcb\x98\x86\x81\xa6\x69\ +\x79\xd3\x34\xed\xff\x2f\xf5\xc2\xaa\xaa\xa2\xaa\x6a\xb5\x90\xcf\ +\xe7\x96\xfd\x16\x13\x6f\x94\x14\x06\x7d\x22\xcf\x47\xb9\x63\xea\ +\x1d\x88\x3c\xc4\xd2\xff\x2e\xa6\xec\xfe\x9d\xaa\x01\x35\x79\x80\ +\xff\xf0\xe0\xa7\x78\xef\x91\x5f\xa5\x56\xdc\x41\x7d\xdb\xc0\x35\ +\x35\xbd\x7d\x94\x4b\x03\xec\x35\x9d\x77\x1f\xfa\x65\xde\xbc\xe3\ +\x63\x1c\x9c\xb8\x87\x7b\x6e\x78\x23\x5e\xe4\x5c\xf3\xdb\x59\xbd\ +\xe3\xf8\x49\xc0\x7d\x23\x3f\xc1\xb0\x72\x23\x8f\xdd\xf1\x1f\xb8\ +\x65\xf2\xed\x78\x7a\xa3\xef\x22\x4d\x92\x44\x76\x51\x31\x24\x4c\ +\x23\x6a\xe6\x36\x1e\x19\xfb\xb7\xfc\xa7\x87\x3f\xcd\xeb\xf3\x1e\ +\xa3\xe3\xc3\xc4\xe2\xaa\x8f\x59\x76\xa7\x2c\x9e\xe7\x63\xe4\x04\ +\xdb\x94\xdb\xf9\xbd\x1f\x7c\x9a\x4a\x66\x86\x5f\x7e\xdb\x1f\xe3\ +\x65\x1a\x04\x9b\x75\xd0\xff\x7f\xea\x85\x3d\xcf\x27\x88\x02\x94\ +\x4c\xc0\xee\xf4\x9d\xfc\xe8\x4d\x3f\x87\x72\x78\xf8\x41\xee\x99\ +\xf9\x81\x4d\x16\xbe\x56\x17\xf6\x3c\x9f\x28\x0a\x38\x3c\x7a\x3f\ +\xff\xfc\xfa\x27\x78\xe1\xe5\xd3\xbc\xfd\xc0\xfb\x31\x14\xb3\x4f\ +\x22\x3d\x55\xae\x27\xff\x4d\x57\x0e\x71\xb9\xf9\x1a\x27\x16\xbe\ +\xc9\x43\x33\xef\xa1\x9c\x19\x24\xde\xd4\x76\xb7\x92\x88\xe7\x79\ +\xa8\xe8\xd4\xf3\x63\xf8\xb9\x8b\xec\x1f\xb8\x97\x89\xca\x2e\x86\ +\x72\x93\xf8\x5b\xfa\xee\x09\xeb\x71\x14\x51\xcb\x0f\x93\xad\x44\ +\x7c\xe5\x85\xaf\xf3\x96\x7d\x3f\xc1\x8d\xa3\xf7\x62\x7b\x9d\xfe\ +\xc5\x04\xfa\xb5\xc3\x42\x40\x31\xdd\xce\x27\x9e\xff\x6f\xfc\xbf\ +\x6d\x9c\x6b\x8c\x5c\x65\x01\x86\x9f\x73\xbe\x73\xce\x5c\x76\xe7\ +\xbe\xd3\xdd\x2e\xdd\xb2\xbd\xb0\xad\x6d\xb7\x58\x4b\xa9\x6c\xb1\ +\x36\xa4\x0d\x26\x1a\x8c\x25\x26\x18\x2d\x58\x8c\x3f\x08\x5a\x34\ +\x81\x5f\x68\x22\x09\xff\x88\x09\x09\x4a\x82\x09\x68\x34\x40\x0c\ +\x8a\x60\x0c\x72\x91\x16\x50\xda\x02\x52\x2b\x4b\xaf\x3b\xed\x76\ +\x2f\xdd\xeb\xcc\xec\xcc\xec\xcc\xb9\x5f\xfc\x71\x66\x4e\x97\xe2\ +\xef\x99\x39\xf9\xe6\x3b\x97\xef\xbc\xdf\xfb\xbc\xef\x57\x6e\xf8\ +\x36\x6b\x33\x43\xc4\xe5\x64\x5b\x67\xeb\x11\x4c\x65\x9a\x06\xe2\ +\x73\x79\xe1\x5d\xdc\x98\xde\x82\x69\x1b\xd7\x3a\xbc\xda\x8d\x4b\ +\x8e\xe3\xb0\x54\xd3\x79\xf8\xe0\x23\xbc\x56\xfa\x0d\x4a\xb5\x59\ +\xe1\xa3\xb9\x77\x71\x1d\x17\xcb\x0c\x08\xb8\x96\x8d\xb5\x6d\x0b\ +\x15\x70\x7c\x9b\x94\x56\xc0\x50\x54\xce\xcc\xfd\x1b\x9f\xd0\xdb\ +\x15\x42\x44\x20\xb8\xe3\x38\x78\xdd\x5e\xc8\x48\x27\x7a\x58\x10\ +\x26\x35\xf7\x2a\xb6\xdf\x6e\x81\xb3\x44\x98\x29\x6e\x4f\x60\xf8\ +\x50\x0f\xda\x09\x4b\x07\x4f\x36\xa9\x2c\x2f\x32\x5b\x9f\xc4\xb2\ +\x63\xf8\x76\x54\xf0\x88\x69\x99\x78\x8a\x87\x24\xc9\x48\xbe\x20\ +\x9f\xca\xf3\xf6\xe8\x1b\x94\x63\x2d\x64\x5f\x44\x57\x77\xb8\x99\ +\x60\x61\x5b\x16\x42\x56\xf0\x71\xe9\xe9\xea\x65\xb1\x35\x83\xe5\ +\xe9\x18\x4e\x0b\xdb\x4e\x46\xab\xb1\xe3\x38\x04\xb6\x07\x71\x48\ +\x74\xa9\x04\x6e\x48\xb9\x4a\xc8\x8c\xd7\x3e\x05\x2f\x9c\x07\x1f\ +\xaf\x3d\x27\x26\x8e\xec\xa0\x08\xc1\x52\xbd\x81\x2a\x62\xc8\xa7\ +\xea\x2f\x93\xee\x4e\x61\xbb\x76\x44\xda\xaf\x34\xa8\x45\xa0\x72\ +\x72\xfe\xcf\x6c\x49\x1d\xa0\x6f\x83\xcb\x44\xeb\x54\x38\x98\xff\ +\x93\x58\x77\x2c\x17\x23\x3e\xc1\xd2\x92\xc9\xce\xa1\x61\x5e\x39\ +\xff\x2b\x26\x97\xcf\xe2\xd8\x4e\x94\xe9\x5d\x49\xe9\xab\x9a\xe0\ +\xed\xcb\x2f\x72\xf8\x4b\x8f\xf1\xfb\xd1\xc7\xb8\x6c\x1e\x27\x9d\ +\xc8\xa3\x5f\x97\x17\x36\x8d\x70\xd7\x67\x6e\xf9\x0a\xf5\x86\x45\ +\xae\x28\x90\xf2\x33\xa8\x52\x02\xdb\xb5\x3e\x33\x6e\xd3\x34\x30\ +\x6d\x0b\x09\x41\x5d\xb9\xc8\x70\xff\x97\x99\xf2\x4e\xf0\xd7\x33\ +\xcf\xd1\xa5\x75\x87\xe3\xd6\x8d\x08\xb9\x33\x4c\x13\xcf\x87\x8d\ +\x1b\xf3\xbc\x7f\xee\x7d\xfa\xb2\xfd\x3c\xfd\xe1\x23\x64\xe2\x85\ +\x68\x4e\xae\x91\x09\x61\x8b\x5c\x21\x93\xe1\x89\xa3\x3f\xe5\x81\ +\x9d\xbf\x44\x69\x2a\xd3\xcc\x2e\x4d\x33\x5b\xaa\xa0\xd7\x3c\xba\ +\xdd\xd0\x17\x2e\x97\xcb\xd4\x1b\xcb\xc4\x9b\x49\x6c\x15\x9e\x3a\ +\xf1\x30\xf7\xec\xb9\x8f\xe9\xb9\xd3\x2c\x9d\x81\x6a\xb5\x1e\x69\ +\xe1\xce\x15\x48\x52\x42\xa8\x05\xfe\x78\xe6\x09\x7e\xb1\xfe\x19\ +\x66\xec\xb3\xcc\x8d\x66\x29\x5f\xad\x61\xd5\xfd\xce\xbb\x5d\x84\ +\x56\x74\xdb\x31\xaa\xfe\x25\x5e\x3d\xfb\x0c\x6e\xa2\xce\xe5\x85\ +\xb3\x94\x3e\x30\xa8\xce\x1b\x91\x2f\x6c\x18\x06\x8e\xe9\x60\xc9\ +\x3e\x86\x1f\xe3\xd8\xe4\x1f\xd8\xbf\xf9\x6e\xc8\x54\x38\x37\x39\ +\xcf\xfc\xe5\x3a\x8d\x25\x07\x49\x84\xef\x6c\xe5\x72\x99\x4a\xbd\ +\x41\xbf\x9d\x63\xd2\xf8\x98\x77\x27\xff\x44\x90\x68\xf2\xaf\x99\ +\x97\x59\x98\x32\x29\xcf\xd7\x50\xe3\x4a\xa4\x85\x97\xab\x0d\x1a\ +\x09\x1f\x2f\x48\xf1\xce\xdc\x73\x6c\xf5\xf7\x30\xee\x7c\x40\x63\ +\xd1\xe0\xca\xa9\x32\x8e\xee\x13\x4f\x84\x5a\xb8\x5c\x2e\x63\x24\ +\x7c\x4c\x5b\x50\xe9\x1e\xe5\xb9\xe3\x4f\xa2\x3c\xff\xc3\xd3\x98\ +\x8b\x10\xcb\x48\xa8\xaa\x12\x35\xd6\xca\xb2\x4c\x4c\xd3\x70\x17\ +\x02\xe6\xff\xe3\xd1\x98\x9a\xe3\xc7\x4f\x3d\x8a\x3e\xae\x41\x10\ +\x10\x4b\x2b\x91\xb1\xd3\x6e\xc0\xc0\xb7\x7c\x96\xce\xb9\xc8\xad\ +\x6e\xee\x7b\xe9\xfb\xe8\x25\x0d\xb3\x5e\x26\x91\x15\x88\x70\x75\ +\x8f\x8e\x9d\xcf\xe7\xb1\x67\x5b\x4c\xbd\x1d\xf0\xe1\xe8\x9b\x2c\ +\x8e\xda\xf8\x96\x84\x92\x04\x2d\xa6\x46\x50\x64\x10\x04\x68\x09\ +\x0d\xcf\xb0\x99\x3f\xed\xb2\x3c\x3b\xc3\xb1\x5f\x3f\x8e\x7e\x59\ +\xc5\x5c\x72\x89\x67\x15\x14\x45\x44\x81\x48\xa1\x28\xc4\x64\x15\ +\x7d\xdc\xa7\x5a\x87\x17\x2f\xbe\xc4\xd2\x79\x9f\xc6\x15\x1f\x2d\ +\x29\xa3\x25\xd5\xa8\xd2\x59\x08\x81\x1a\x53\xe9\xd6\x7d\x16\x47\ +\x1d\x96\xe7\x17\x39\x7e\xee\x05\x96\xce\x05\xb8\x7a\x40\x3c\x2b\ +\x50\x54\x39\x82\x33\x25\x49\x22\x21\x69\xd4\x2e\xb8\x34\x15\x9f\ +\xb3\x93\xef\xa0\x6c\xda\xb0\x05\xe9\x26\xd0\xd4\x30\xc1\xe8\xfb\ +\x3e\x33\x33\x33\xec\xd9\xb3\x87\x81\x81\x01\x2c\xdd\xe6\xf4\x07\ +\x9f\xb0\x2a\x19\x43\x4a\x2c\x52\xdc\xd7\xc3\xfc\xc2\x3c\x8d\x7a\ +\x83\x42\xa1\xc0\xd8\xd8\x18\xbd\xbd\xbd\xec\xdb\xb7\x8f\x54\x77\ +\x8a\xbf\xff\xed\x0d\x7a\xfb\x7a\x59\xe5\xcc\xd3\xbb\x7b\x15\xf5\ +\x46\x8d\x56\x4b\x27\x9d\x4e\x73\xe1\xc2\x05\x0c\xc3\xe0\xfe\xfb\ +\xef\x67\xe7\xce\x9d\xbc\xf5\xfa\x3f\xb0\xaa\x36\x92\x32\xc3\xb6\ +\x03\x39\x9a\xcd\x26\xb9\x5c\x8e\x5a\xad\xc6\xf4\xf4\x34\xad\x56\ +\x8b\xe1\xe1\x61\x46\x46\x46\x88\x69\x31\x3e\x39\xf5\x29\x9e\xd1\ +\xe2\x06\xa9\x45\x6c\xab\x46\x26\x97\xe1\x52\xe9\x12\xf1\x78\x3c\ +\x4c\x27\xa9\x2a\x23\x23\x23\xdc\x7c\xf3\xcd\x9c\xf8\xe7\x49\x16\ +\x2f\x56\x28\x6a\x82\xbe\x41\x19\x77\xad\x43\xb5\x52\xed\x10\xb8\ +\x51\x6c\xf6\xd0\xa1\x43\x2c\x55\xaa\x7c\x7c\xec\x34\x99\x54\x8a\ +\x78\xcc\x24\x7f\xd3\x32\xb9\x7c\x0e\xcb\xb2\xa8\x54\x2a\xb4\x5a\ +\x2d\x74\x5d\xe7\xc8\x43\x47\x68\x35\x9b\x8c\x97\x26\x59\xaa\xd5\ +\xc8\x3a\x16\xca\xf0\xf0\x36\xce\x9f\x3f\xcf\xe0\xe0\x20\xa9\x54\ +\x2a\x12\xfc\x7b\xf7\xee\xe5\xf6\xdb\x6f\x0f\x21\x1f\x7e\x47\x2e\ +\x97\xc3\xb6\xed\x08\xcb\xb5\x4c\x8b\x62\xb1\xc8\xd8\xd8\x18\xf9\ +\x7c\x9e\x43\x87\x0e\x91\xcf\xe7\xb9\x3a\x73\x95\xa1\xa1\x21\x26\ +\x26\x26\xe8\xd4\x28\x5f\xb9\x72\x85\xad\x5b\xb7\x52\x2a\x95\x30\ +\x4d\x93\x3b\xee\xb8\x83\x4d\x9b\x36\x31\x31\x31\x11\x2e\x00\x9e\ +\xc1\xf6\xed\xdb\x39\x7d\xfa\x34\xe9\x74\x9a\xfe\xfe\x7e\xe6\xe6\ +\xe6\x00\xd8\xb1\x63\x07\x07\x0f\x1e\x64\xfd\xfa\xf5\x3c\xfb\xec\ +\xb3\x2c\x2c\x2c\x50\x28\x14\x38\x79\xf2\x24\x7d\xbd\x7d\xed\xc6\ +\xca\x90\xd1\x51\x14\x85\x91\x91\x11\xee\xbd\xf7\x5e\x1c\xc7\xa1\ +\x54\x2a\x31\x34\x34\xc4\xa5\x4b\x97\xc8\x66\xb3\x1c\x3d\x7a\x94\ +\xb5\x6b\xd7\x32\x35\x35\x45\xb9\x5c\x26\x97\xcb\x71\xf8\xf0\x61\ +\x46\x47\x47\x29\x57\x2b\x6c\xde\xbc\x19\x5d\xd7\xb9\x70\xe1\x02\ +\x99\x4c\x86\x62\xb1\x48\xa9\x54\x8a\x7c\xe1\x23\x47\x8e\x70\xee\ +\xdc\x39\xc6\xc7\xc7\x99\x9d\x9d\x0d\x19\xe9\x5d\xbb\x76\x05\x1d\ +\x9d\xe8\x38\x0e\xc9\x64\x92\xc9\xc9\xc9\x8b\x6b\xd6\xac\x19\xda\ +\xbc\x79\x33\x63\x63\x63\xd1\xce\xf3\xf5\xdd\xcc\xed\xf8\x53\x53\ +\xd3\xb4\xd8\xd6\xad\x5b\xd5\x6a\xb5\xca\xf2\xf2\x72\xa4\x55\x3b\ +\x5e\x6b\x27\x62\x2f\x49\x52\xd9\x75\xdd\x71\x60\x57\x36\x9b\x8d\ +\x68\x82\x95\xbb\x29\x2b\xfd\x67\x55\x55\x1b\xb3\xb3\xb3\xd2\xfe\ +\xfd\xfb\x53\x63\x63\x63\x91\x36\xed\x3c\x36\x3a\x15\x2d\xae\xeb\ +\x76\x18\xe9\x89\x91\x91\x91\x1b\x6d\xdb\x8e\xbc\xdb\xce\x6e\xf2\ +\xca\xa6\x8e\x95\xbe\x70\x87\xed\x5e\xb9\x58\xac\x1c\xbb\xef\xfb\ +\x08\x21\xa8\xd7\xeb\xe5\x62\xb1\xd8\x33\x38\x38\xc8\xe4\xe4\x64\ +\x74\x4b\x2b\xa9\xee\x74\xa4\x29\xa5\x76\x96\xd6\x75\x5d\xaf\xbd\ +\xbf\x46\x32\xd1\x15\x62\xb4\xda\xf5\x5c\x72\x88\xf8\x5a\x96\xe5\ +\xa6\x52\x29\x75\x76\x76\x16\x59\x96\xdb\x8c\xf4\xf5\x1c\x73\xd0\ +\x99\x44\x79\x66\x66\x46\x5a\xbd\x7a\xb5\x27\x84\x90\x62\x5a\xec\ +\xb3\x59\x64\xae\x79\xbd\xed\x1a\xe4\xa0\x58\x2c\x2a\x53\x53\x53\ +\x24\x12\x09\x3a\x5a\x58\x6a\x7f\xb7\xab\xab\x3b\xfa\x4d\xfb\x8f\ +\x9a\xba\xae\x63\x3b\x36\x71\x2d\x8e\xef\x43\x5c\xfb\xfc\xf1\x85\ +\x10\x94\xcb\x65\x84\x10\x52\xbd\x5e\x47\x42\x42\x15\x31\x34\x25\ +\xb6\x82\x91\x96\x22\x4d\xdc\x68\x34\xf0\x7d\xbf\x99\x4e\xa7\x7b\ +\x16\x16\x16\xe8\x4a\x74\x11\xf8\x61\x7d\x96\x92\x1b\x8c\x47\x5a\ +\xb1\x73\x36\x65\x59\x76\xf3\xf9\x3c\x86\x6e\xe0\x74\x99\x24\xfb\ +\xed\xb0\x94\xd0\x10\xf8\xba\x1a\xe6\x85\xdb\x98\x6c\xa5\x52\x69\ +\x15\x0a\x05\x55\x08\x11\xf3\xf0\xf0\x56\x2d\xd3\x9d\x52\x42\xd6\ +\xb8\x93\xe9\x75\xe5\x4e\x0d\x7c\x22\x16\x8b\xe5\x93\xc9\xa4\xa3\ +\x28\x8a\x68\xca\x4d\x72\x03\x12\xbe\x29\x11\xb4\x54\x7c\x5d\x21\ +\xb0\xe4\xd0\xeb\x0d\xaf\x02\x21\x84\x48\xe6\x72\x39\x5a\xbe\x41\ +\x7a\xa3\x05\xae\x4c\xa0\x2b\x04\xa6\xd2\xee\xda\x92\x91\xa4\x10\ +\x6b\x53\x14\x65\xb2\xa7\xa7\x67\x93\xa9\x9b\xd4\xe2\x55\xfa\x06\ +\x05\x4e\xb3\x9d\x73\xd6\xc3\x9c\x73\x27\xb1\x2e\xcb\x32\x7d\x7d\ +\x7d\x6a\xe0\x07\x94\x9d\x3a\x7d\x5b\x20\xb0\x24\x7c\x43\x21\x30\ +\x04\x7e\x33\xe4\xaf\x65\x21\x77\x56\xf7\x4b\x99\x4c\x66\xd0\xb2\ +\x1d\xfc\x55\x4d\x52\x05\x19\x57\x07\x25\x7b\xa0\x8c\x2c\x04\x4b\ +\x6f\x65\x71\xe6\xb5\x4e\x0b\x5b\x5c\x08\x81\xe3\x7b\xf8\xfd\xcb\ +\x24\x77\xb7\xe8\x4d\x0c\xd0\x34\xeb\x21\x74\x69\x2b\x54\x5e\x29\ +\x46\x77\x9a\xa2\x28\xb2\xe7\x79\xe8\xaa\x41\x6c\x7b\x95\xe2\x9a\ +\x1c\x29\x35\xcb\x4c\x75\x8a\x58\x5c\xa5\x7e\x2c\x8f\x3d\x13\xc3\ +\xf7\x7d\x59\x51\x94\x64\x2c\x16\xd3\x14\x45\x91\xe7\x56\x4f\xb3\ +\xe5\x4e\x8d\x44\x50\x60\xa9\x59\x41\xc8\x02\x77\xaa\x9b\xe5\x8f\ +\x52\xf8\x6e\xd8\x20\x62\x59\x16\xb2\x2f\x05\x73\x4a\x45\x1a\xdc\ +\x1b\x10\x0f\xb2\x58\x76\x0b\xd7\xb1\x09\x0c\x95\xfa\xf1\x0c\xce\ +\xa2\x8a\xa6\x69\x04\x41\x10\x97\x65\x19\xd9\x95\x59\x5e\xb7\xc0\ +\xe6\x3d\x69\x12\x41\x9e\xa6\x5e\xc3\xb6\x1d\x68\x24\xa9\xbe\x99\ +\x5d\x59\xaf\x27\x39\xb6\xc3\x7c\x72\x91\xe1\xbd\x49\x02\x2b\x8e\ +\x2a\x4b\x34\x5a\x15\x54\x45\x63\xf1\x95\x3c\xbe\x11\xed\xe4\xa4\ +\x09\xa0\x6a\xe8\xac\xbb\x4d\x47\xc9\x18\x0c\xa4\x86\x90\x0f\xac\ +\x7b\x80\x64\x57\xbb\x3b\xcb\xba\x96\x17\x0e\x2b\x92\x2c\x3c\xd9\ +\x66\x7d\xec\xab\x7c\x6f\xc7\xa3\x7c\xe7\x0b\x8f\xb3\x2e\xb3\x3b\ +\x2a\x31\xec\xd8\x9a\x51\xfe\xd7\x73\x58\xa8\x34\xf8\xd1\xee\x27\ +\x19\xce\xde\xc5\x37\xb7\x3f\xc0\xb7\x6e\xfd\x01\xa6\xdb\x5a\x49\ +\xa8\x06\x1d\x59\x67\x05\x06\xbb\x7a\xef\x66\x77\xf1\xbb\xdc\xb3\ +\xfb\x41\xbe\xb8\xea\x1b\xe8\xa2\x82\x71\xad\x47\xba\x93\x17\x96\ +\xbc\xc0\x61\x6d\x6e\x13\x5f\x1f\x7c\x88\x9f\xdf\xf9\x5b\x32\xe6\ +\x6d\xac\xea\xed\xc1\xf6\xcc\x28\x45\x19\xf5\x5f\x1b\x26\x8a\x26\ +\xb1\x31\xb9\x87\x07\x6f\x79\x9a\xa1\xfc\x5e\x7e\xb2\xf7\x19\x6c\ +\x6d\xf9\x33\x34\x6b\xc7\x73\x96\x55\xb8\x32\x51\xe3\xd1\x7d\xcf\ +\xb3\x21\xbb\x9b\x9f\xed\x7f\x01\x27\xd9\x88\x3e\xbf\x96\xd6\x6c\ +\xe7\x85\x65\x83\x7d\xa9\x76\x5e\x78\x4d\x6a\x13\xeb\x0b\xdb\xb0\ +\xed\x50\x79\x74\xb4\x70\x28\xf8\x4d\x5c\xd7\x64\x53\xe1\x16\x8e\ +\xcf\xfc\x85\xf7\x4e\x7d\xc4\xce\x35\xfb\xc2\x64\xf9\x0a\x6d\x1b\ +\x69\x61\xdb\x22\x2b\x06\x98\xaa\x95\x38\x71\xf9\x75\xbe\x36\x74\ +\x08\x81\xc0\x75\xbd\x48\x67\x77\x1a\x83\x0c\xc3\x20\x70\x15\x06\ +\x73\x37\x71\xd6\x7c\x95\x1d\xf9\xbb\xd8\x58\xdc\x46\x5f\xd7\x7a\ +\xcc\xeb\x7c\x61\xd3\x34\xc2\xbc\xb0\x92\xa4\xea\x4c\xf3\xdf\xd2\ +\x28\xb7\xae\xdb\x4b\x3e\xbe\x1a\xd3\x32\xae\x53\x22\xa1\xe7\xac\ +\x08\x41\x73\x49\xf0\xda\xd9\xe7\x59\xad\x6d\x63\xfb\xda\xed\x68\ +\x52\x22\xd4\xca\xc6\x0a\x4d\x6e\x1a\x04\x81\x47\xd6\xdb\x40\xd5\ +\x2b\xd1\x97\xed\xa7\xb7\x7b\x80\xde\xe4\x40\x14\xde\xee\x48\x50\ +\xbd\xcd\x48\x37\xda\x79\xe1\x33\x95\xf7\xf8\x1f\xcb\xb6\x8e\xf6\ +\x8f\xf1\xef\x16\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\ +\x00\x00\x2a\x0f\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x64\x00\x00\x00\x64\x08\x06\x00\x00\x00\x70\xe2\x95\x54\ +\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\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\x0e\xc4\x00\x00\x0e\xc4\x01\ +\x95\x2b\x0e\x1b\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x03\x03\ +\x0e\x1c\x2b\xec\xa5\xbb\x6e\x00\x00\x20\x00\x49\x44\x41\x54\x78\ +\xda\xed\x9d\x79\x94\x5d\x55\x9d\xef\x3f\xfb\x0c\x77\xae\x39\x35\ +\xa5\x06\x2a\x21\x21\x09\x14\x15\x84\x88\xd1\x00\x09\x08\xad\x08\ +\x1d\x5b\xec\x36\x60\x0b\x48\xd3\xf0\x1c\x68\xc4\xf5\xda\xd5\x4f\ +\x78\x48\x83\xda\x93\xad\x48\xab\x4b\xb4\x15\x51\x40\x9f\xd8\x34\ +\xad\x08\xd8\x0e\xc8\x20\x24\x81\x8c\x18\x92\x9a\x92\xaa\x54\xaa\ +\xea\xd6\x70\xab\xea\xce\xc3\x99\xf6\xfb\xe3\xd6\x3e\xb9\xc9\x13\ +\x03\x61\xce\xcb\x5e\x2b\x8b\x5b\xdc\xe1\x9c\xbb\xbf\xfb\x37\x7d\ +\x7f\xc3\x85\xe3\xeb\xf8\x3a\xbe\x8e\xaf\xe3\xeb\xf8\x3a\xbe\x8e\ +\xaf\xe3\xeb\xf8\x3a\xe6\x97\x78\x33\xdd\x4c\x75\x75\x75\x57\x26\ +\x93\x31\xa5\x94\x5e\x5d\x5d\xdd\xfb\xd6\xac\x59\xf3\x39\xd3\x34\ +\x5d\xd7\x75\xe5\xfe\xfd\xfb\x5b\x56\xac\x58\x81\xe7\x79\x24\x93\ +\x49\x5a\x5b\x5b\x29\x95\x4a\x68\x9a\xc6\xae\x5d\xbb\xb0\x6d\xbb\ +\xfc\x85\x84\x40\xd3\xb4\x83\x5f\x50\x08\x0b\x70\xd5\x63\xc3\x30\ +\xfa\x00\x0d\x20\x1e\x8f\x7f\x30\x1e\x8f\x8f\xa8\xd7\xb6\xb6\xb6\ +\x12\x8f\xc7\xdf\xd0\x3d\x30\xde\xc8\x8b\xb7\xb5\xb5\x2d\x9d\x9b\ +\x9b\x7b\xa7\x94\xd2\x03\x58\xbe\x7c\xf9\xb7\xdb\xdb\xdb\xc3\x52\ +\x4a\x86\xf6\x0d\x11\x0c\x06\xa5\xa6\x69\xc2\x95\x2e\x86\x61\xe0\ +\x38\x0e\x48\xc9\x44\x3e\x41\x87\xd1\x41\x26\x93\x01\x5d\x90\x76\ +\xf2\x9c\xbd\xea\x9d\x00\x4c\x27\xa6\xd1\x84\x86\xae\xeb\x00\xe8\ +\xba\x1e\x90\x12\x44\xf9\xe8\x85\x81\x33\xd5\xf5\x1b\x1b\x1b\x77\ +\xae\x5c\xb9\xd2\x11\x42\xb0\x67\xcf\x1e\x86\x87\x87\x1b\xdf\xe8\ +\x43\xf9\xba\x03\x52\x55\x55\x65\x66\x32\x19\x1d\x60\x76\x76\xf6\ +\xba\x8f\x7e\xf4\xa3\xd7\xab\xe7\xfa\xfb\xfb\xcb\x27\x5c\x08\xf2\ +\x94\xb0\x4a\x96\x10\x9a\x20\xe7\x14\xf0\x3c\x0f\xcb\xb2\xc0\x83\ +\x9c\x5b\xc4\xb2\x2c\x2c\xcb\xc2\xd6\x5d\x1c\xd7\x26\x9d\x4e\x03\ +\x70\x60\x7a\x9c\xd3\x4e\xea\xa6\x58\x2a\xa1\xeb\x3a\x3b\x76\x3f\ +\x4f\x55\x93\xc0\x9b\x0b\x21\x84\x00\x49\xf9\x9f\x00\x04\xb5\xea\ +\xda\xd1\x68\x94\xee\xee\xee\x3e\x40\xb8\xae\x6b\xee\xd9\xb3\x67\ +\xd1\xff\x17\x80\xb4\xb5\xb5\x3d\xb8\x78\xf1\xe2\x8b\xa4\x94\xf4\ +\xf7\xf7\x33\x33\x33\x53\x3e\xf9\x40\xc9\x2e\x6f\xb2\x00\x8a\x9e\ +\x85\xed\xd8\x08\x21\x70\x1c\x07\x29\x25\x96\x65\x21\x3d\x89\x94\ +\x1e\xb6\x6d\x63\x59\x16\x8e\x21\x91\xe0\x7f\x86\xf4\x3c\x6c\xdb\ +\xc1\xb6\x6d\xa4\xe7\x11\xa9\x8a\xb2\xb8\x61\x31\x62\x81\x20\x91\ +\x99\xc3\x3a\x69\x94\x05\x75\x61\x9c\xb1\x28\xf6\x58\x08\xe1\xea\ +\x95\x8a\xfb\x24\x29\x25\x52\x4a\x92\xc9\xe4\xba\x0a\xb5\x3e\x1a\ +\x8f\xc7\x07\x8e\x19\x40\x1a\x1b\x1b\x3f\x58\x28\x14\x22\x80\x15\ +\x0c\x06\x97\xc7\x62\x31\xa4\x94\x98\x01\xd3\xdf\x58\x00\xc7\x73\ +\x28\x95\x4a\xfe\xc6\x5a\x96\x55\x06\x42\x5a\x78\x9e\x57\x7e\xce\ +\x03\x29\x25\xa5\x52\xa9\x0c\x88\xe7\x95\x01\x2c\x16\x01\x70\x1d\ +\xd7\xff\x4c\x57\xd3\x91\xea\x7d\x40\x7f\x6f\x1f\xe7\x37\x9e\x47\ +\x6e\x34\x87\x29\xa0\x14\x4d\xb3\xa0\x43\xc3\x89\x87\x90\x39\x13\ +\x74\x09\x9a\x44\x68\xc8\xb3\xce\x3a\xeb\xb7\x00\xa6\x69\xf2\xe8\ +\xa3\x8f\xde\x09\x7c\xfc\x98\x01\x64\xc1\x82\x05\xf7\xbf\xed\x6d\ +\x6f\xd3\x34\x4d\x63\xef\xde\xbd\x94\x4a\xa5\xf2\xa6\xba\x36\xb6\ +\x65\x57\x80\x50\xde\x68\x81\x40\x4a\xcf\x07\xca\x96\xb6\x2f\x21\ +\x78\x12\xcf\x93\x07\x37\x7d\xfe\x44\xab\xd7\xba\x5e\x59\x7a\x4a\ +\xa5\x12\xba\xa6\xfb\xcf\x09\x21\x90\x9e\x87\x87\x87\x2b\x5d\x12\ +\xb3\x33\x88\x25\x33\xa4\xa4\x09\x0b\x25\xd2\x16\x38\xc9\x00\x6e\ +\xca\xc0\x4b\x1b\xa2\x6c\xd5\xc0\x30\x0c\xea\xea\xea\x4e\x6f\x6b\ +\x6b\xbb\x45\x08\xc1\xec\xec\xec\xf3\x63\x63\x63\x0f\xbe\xe5\x00\ +\xe9\xe8\xe8\x38\xa3\xa6\xa6\x86\x52\xa9\x84\xe7\x79\x5e\xa1\x50\ +\xd0\x74\x5d\xc7\x75\xdd\x83\x00\x48\x0f\xcb\xb6\x7c\x0f\x49\xd9\ +\x09\x21\x04\x9e\x47\x59\xed\x48\x89\x8d\x8d\x37\xbf\xd1\xd2\xf5\ +\x90\x42\xfa\x9b\xee\x49\x81\x40\x1c\x04\xc4\x3d\x28\x21\xba\xa6\ +\xf9\xd2\x24\x84\xf0\xc1\xb1\x6d\x9b\x03\xc3\x23\x9c\xbb\xe8\x5c\ +\x64\x52\xe2\x49\x49\x36\x92\xa2\x61\xa9\x8e\x37\x17\x42\xda\x02\ +\x69\x69\x48\xab\xec\xad\x75\x76\x76\x9e\x09\x9c\x69\x18\x06\x3b\ +\x76\xec\xb8\xa7\x12\x90\x57\xdb\x33\x7b\xad\x00\x09\x34\x37\x37\ +\x6f\xe9\xe9\xe9\xc1\x71\x1c\x36\x6f\xde\x8c\x6d\xdb\xb8\xae\x7b\ +\x50\xf5\xcc\x03\x60\x5b\x07\x55\x96\xe7\x79\x58\xae\x5b\x36\xbe\ +\xa0\xc0\xc4\x16\x0e\x42\x42\x3a\x9d\x2e\x4b\x51\xb0\x44\xb1\x58\ +\x24\x9f\xcf\x23\x1d\x81\x44\x56\x7c\xc6\x41\x40\x34\xa1\xe1\x79\ +\x15\x12\x32\x0f\x88\xfa\xdc\x54\x2a\x85\xe7\x79\x4c\xa7\x66\xd1\ +\x16\x4d\x32\x33\x72\x58\x14\x60\x78\xd8\x89\x00\xd6\x81\x30\x42\ +\x2b\xbb\xd4\xb3\xb3\xb3\x2b\x5b\x5b\x5b\x6f\x06\x74\xe0\xe1\x78\ +\x3c\xfe\xdc\x9b\x56\x42\xda\xda\xda\x9a\xc7\xc6\xc6\x6a\x80\xa0\ +\xfa\xc2\xae\xeb\xfa\x1b\xa1\x69\x1a\xae\xeb\xfa\x9b\x27\x3d\x89\ +\xed\x1c\x04\xc4\xc5\x23\x9b\xca\xa0\x09\x0d\xdb\xb3\xc8\xd8\x19\ +\x1c\xc7\xc1\xd1\x3d\x62\x66\xc4\x57\x59\x8e\x61\x93\xcd\x66\xc9\ +\xe5\x72\x48\x47\xe0\x78\x2e\x73\x73\x73\x00\xe4\xbd\x22\xb6\x6d\ +\x51\x28\x14\xd0\x84\x40\x9a\x07\xc1\x92\xe0\x7b\x67\xbe\xd7\x06\ +\xe4\xe6\xd2\x2c\x6b\x3c\xcd\xb7\xe1\xe3\xc1\x71\x16\xad\x08\xe2\ +\x4c\x86\x71\x73\x41\x64\xa7\x31\x6f\x5b\x24\x8b\x16\x2d\xea\x01\ +\x7a\x34\x4d\x63\xfb\xf6\xed\x89\x37\x35\x20\x85\x42\xe1\x9e\x4b\ +\x2f\xbd\xf4\x82\x5c\x2e\xc7\xe8\xe8\x28\xb6\x6d\xfb\x1e\x92\x0a\ +\xe2\x2a\x37\xc2\x93\x92\x5c\x2e\x47\x2e\x97\x2b\x8b\x55\x38\xe8\ +\x9f\x66\x57\x73\x31\x4c\x1d\xcf\xf3\x30\xe4\xc1\x80\xaf\x50\x2a\ +\x10\x4c\x6b\x18\x55\xe5\x5b\x17\x36\xe8\x9e\x40\x33\xca\xea\x45\ +\x77\x05\x99\x4c\x96\x74\x3a\x8d\x40\x10\xaa\x8f\x50\xb4\x8b\xf3\ +\x12\xe2\xf9\xce\x80\xef\xb5\xc9\xb2\xfa\x2b\x96\xca\xaf\xd9\x9f\ +\x9d\xa2\xed\xe2\x14\xd4\x07\x30\x3a\x25\x86\x06\x5e\x51\xc3\x4d\ +\x1a\x38\x33\x01\x32\xcf\x55\x81\x26\xd1\x34\x8d\x7c\x3e\x1f\x01\ +\x6a\xe7\xf7\x31\xf1\xa6\x03\xc4\xf3\x3c\x2d\x18\x0c\x52\x28\x14\ +\x7c\xd5\xe4\x38\xce\x61\xb6\xc1\xa3\x50\x28\xcc\x3f\x76\xfd\x13\ +\x0b\x10\x8c\x84\xd0\xe6\xf5\x7e\x20\xaf\x21\xea\x34\xce\x3d\xf7\ +\x5c\x66\x67\x67\xe9\xeb\xeb\xe3\x82\x0b\x2e\xe0\xf2\xcb\x2f\xe7\ +\xce\x3b\xef\x64\x70\x70\x90\xcb\x2f\xbf\x9c\x58\x2c\xc6\x9d\x77\ +\xde\x89\xa6\x69\x74\x76\x76\x72\xe0\xc0\x01\x74\x43\xc7\x30\x0c\ +\x04\xe0\x14\x6c\x72\xb9\x4c\x59\x3a\x1d\xd7\x57\x91\xea\x9e\x3c\ +\xcf\xf3\xed\x13\x80\x91\xb4\xf1\x1e\x5d\x44\x42\x96\x25\xca\xd3\ +\x9d\xb2\x2d\xb2\x34\x04\x02\xdd\xf4\x7c\x37\xb9\xa7\xa7\xe7\x9f\ +\x4f\x3d\xf5\xd4\x7f\x2e\x95\x4a\xfc\xea\x57\xbf\x12\x6f\x0a\x40\ +\x9a\x9b\x9b\x9b\x84\x10\x0f\x01\x05\xcb\xb2\x7a\xd4\x06\x2b\xa9\ +\xa8\x54\x59\x2a\xa6\xc8\x66\xb3\x68\x9a\x86\x65\x59\x18\xba\x81\ +\x61\x94\x6f\x43\x93\x82\xf7\xbc\xe7\x3d\xdc\x74\xd3\x4d\x5c\x7b\ +\xed\xb5\x9c\x7b\xee\xb9\xbc\xfd\xed\x6f\xa7\xbb\xbb\x9b\x75\xeb\ +\xd6\x71\xcb\x2d\xb7\xf0\xfc\xf3\xcf\x73\xe5\x95\x57\xf2\x9d\xef\ +\x7c\x87\x77\xbc\xe3\x1d\x5c\x70\xc1\x05\xdc\x7f\xff\xfd\xdc\x78\ +\xe3\x8d\x74\x76\x76\xf2\xcc\x33\xcf\x70\xcf\x3d\xf7\x50\x53\x53\ +\x43\x34\x1a\x65\x7a\x7a\x1a\xd7\x30\xd0\x34\x0d\xcd\x12\x64\xb2\ +\x19\xb2\xd9\xac\xaf\x3a\x3d\xcf\xf3\x1f\x3b\x8e\x43\x38\x12\x26\ +\x18\x31\xd1\x34\x8d\x67\x8b\x7b\x78\xef\x35\x31\x04\xe5\x80\xd2\ +\x4a\x98\x38\x13\x61\xac\x91\x10\xee\x6c\x60\xde\x31\x91\x04\x83\ +\xc1\x37\x8f\xca\x9a\x9c\x9c\x5c\xf4\xfe\xf7\xbf\xff\xcc\x58\x2c\ +\xc6\xe6\xcd\x9b\x29\x16\x8b\xb2\x54\x2a\x09\x05\x82\xeb\xba\x38\ +\x8e\xc3\xdc\xdc\x1c\x42\x08\x74\x7d\xfe\xf4\x0a\x81\xe6\x69\x48\ +\x24\x77\xdd\x75\x17\x89\x44\x82\x5b\x6f\xbd\x95\xab\xae\xba\x8a\ +\xbe\xbe\x3e\xce\x39\xe7\x1c\x76\xec\xd8\xc1\x65\x97\x5d\x86\xe7\ +\x95\x7d\xd0\x6f\x7d\xeb\x5b\xdc\x70\xc3\x0d\x7c\xe1\x0b\x5f\x20\ +\x91\x48\xd0\xd3\xd3\x43\xb1\x58\x64\x66\x66\x86\x93\x4f\x3e\x99\ +\xde\xde\x5e\x3a\x3b\x3b\x59\xbc\x78\x31\x9f\xfa\xd4\xa7\x58\xb5\ +\x6a\x15\x67\x9f\x7d\x36\xae\xeb\xf2\x9e\xf7\xbc\x87\x87\x1e\x7a\ +\x88\x52\xa9\x74\xd0\x59\x38\xcc\xd1\x70\xe7\x1d\x0a\xdb\xb6\x49\ +\x26\x93\x94\x92\x73\xec\xb8\x37\x87\xe7\x49\x14\xfd\x22\xca\x11\ +\x3e\xd6\x8c\x81\x35\x11\xf0\xf9\xb3\xea\xea\xea\xaf\x4b\x29\x09\ +\x87\xc3\xcf\x4d\x4d\x4d\x7d\xff\x75\x05\xa4\xb9\xb9\x99\xc9\xc9\ +\x49\xf5\x67\xde\xb6\xed\xca\x53\x27\xd4\xc9\x53\x5f\x58\x79\x50\ +\x0a\x90\xaa\xaa\x2a\x2e\xbd\xf4\x52\x7e\xfc\xe3\x1f\xf3\xde\xf7\ +\xbe\x17\x21\x04\x17\x5d\x74\x11\xdf\xf8\xc6\x37\x78\xf0\xc1\x07\ +\xf9\xc8\x47\x3e\xc2\xf6\xed\xdb\xe9\xef\xef\xe7\xea\xab\xaf\xa6\ +\x58\x2c\xa2\x69\x1a\x0f\x3e\xf8\x20\x3f\xfc\xe1\x0f\xf1\x3c\x8f\ +\x45\x8b\x16\x71\xf1\xc5\x17\x63\x9a\xe5\xd3\x7c\xc5\x15\x57\x70\ +\xd9\x65\x97\xf1\xe8\xa3\x8f\xb2\x60\xc1\x02\xaa\xaa\xaa\x08\x85\ +\x42\xe4\x72\x39\xee\xbd\xf7\x5e\x22\x91\x08\x23\x23\x23\xec\xdf\ +\xbf\xdf\x77\xa7\x93\xc9\x24\x8e\xe3\xf8\xae\xb2\xeb\xba\x68\x9a\ +\x46\xa9\x54\xe2\xc0\x81\x03\xac\x3f\xff\xa2\x32\x18\x48\xa6\xf4\ +\x04\x9d\x2b\x4c\xbc\x94\x89\x9b\x31\xf1\xaa\x4d\x64\x87\x86\xd0\ +\x24\x18\x52\x22\xf9\xa4\x61\x18\x6c\xdd\xba\xf5\x47\xaf\x3b\x20\ +\x93\x93\x93\x34\x36\x36\xfe\xd5\x89\x27\x9e\xf8\xdd\x7c\x3e\x8f\ +\xeb\xba\x12\x10\x95\x7e\x7e\xa5\x97\x25\x84\x40\x08\x81\xb2\x2f\ +\xb7\xdf\x7e\x3b\xd9\x6c\x96\xb5\x6b\xd7\xf2\xf4\xd3\x4f\xb3\x7e\ +\xfd\x7a\xf6\xec\xd9\x83\xe3\x38\x3c\xf6\xd8\x63\x3c\xfa\xe8\xa3\ +\xe4\xf3\x79\x5a\x5a\x5a\xfc\xd3\x5c\x28\x14\x58\xb0\x60\x01\xa1\ +\x50\x88\x42\xa1\x40\x2a\x95\x22\x1a\x8d\xfa\x6a\x23\x10\x08\xf0\ +\xc0\x03\x0f\x30\x37\x37\x47\xa9\x54\x92\x37\xdd\x74\x93\x08\x04\ +\x02\x65\x6f\x4b\xd3\x48\xa5\x52\xe8\xba\xce\xc2\x85\x0b\xf9\xb7\ +\x7f\xfb\x37\x3e\xf3\x99\xcf\x90\x4c\x26\xfd\xf7\x2b\x69\x0e\x04\ +\x02\xbe\xb4\xcc\xcc\xce\x20\xa5\x24\xe7\x96\x08\x5f\x18\x47\x76\ +\x04\xd1\x84\x86\xa6\x79\x48\xcd\xc3\xc9\xe8\xd8\xe3\x21\x52\xbf\ +\xae\x13\xe8\x12\xc3\x30\x90\x52\xda\xaf\x24\x46\x39\x6a\x95\x65\ +\x59\x56\x57\x5b\x5b\x1b\x73\x73\x73\xd8\xb6\x2d\x94\xf1\x56\x31\ +\x80\x94\xd2\x3f\x7d\xae\xeb\x72\xdd\x75\xd7\x71\xf5\xd5\x57\xb3\ +\x61\xc3\x06\x76\xed\xda\xc5\xfa\xf5\xeb\x79\xf2\xc9\x27\x71\x1c\ +\x87\xeb\xaf\x2f\xf3\x8b\x13\x13\x13\x48\x29\xfd\x6b\xec\xdb\xb7\ +\xef\x90\x6b\x1e\x38\x70\x40\x6d\xa0\xed\x38\xce\x01\x29\x25\xba\ +\xae\x5b\xf9\x7c\xfe\xf2\xb1\xb1\xb1\x29\x80\x40\x20\x70\x49\x73\ +\x73\xf3\xed\xb9\x5c\x8e\x42\xa1\x40\x2c\x16\xe3\xda\x6b\xaf\xa5\ +\xa3\xa3\x83\x6d\xdb\xb6\xf1\xdd\xef\x7e\x97\x91\x91\x11\x9a\x9a\ +\x9a\x7c\x42\xd2\x71\x1c\x92\xc9\x24\xae\xeb\xd2\xd0\xd0\x70\x30\ +\x20\x9d\x97\xfc\xfd\x07\x46\x30\xa7\x1c\x06\x83\xd0\x12\x5c\x4a\ +\x20\x28\x38\x90\x1e\x44\x22\x11\x1e\x94\xe2\x63\x88\x79\xc6\x3f\ +\x9f\xcf\xff\x49\x73\x73\xf3\x63\x9a\xa6\x69\xf1\x78\x7c\xdd\xeb\ +\x66\x43\xa4\x94\x56\xa9\x54\xc2\xb6\x6d\x3f\xbe\x80\x72\xf0\x96\ +\x4e\xa7\x31\x4d\x13\x21\x04\xa5\x52\x89\x70\x38\xcc\xdf\xfe\xed\ +\xdf\xf2\xf4\xd3\x4f\xd3\xdc\xdc\xcc\x8f\x7e\xf4\x23\x1e\x7f\xfc\ +\x71\x06\x07\x07\x0f\x01\x20\x12\x89\xfc\xe1\xa4\x8d\x10\x58\x96\ +\xb5\x4f\xd3\xb4\x21\x40\x3a\x8e\xb3\x2b\x1e\x8f\x7f\xfa\x0f\xbd\ +\x36\x12\x89\x7c\x7b\xeb\xd6\xad\xff\x09\x48\xdb\xb6\xb3\x8b\x17\ +\x2f\x1e\x6d\x68\x68\x88\x28\x09\xb9\xef\xbe\xfb\xe4\x97\xbe\xf4\ +\x25\xf1\xbd\xef\x7d\x8f\x0f\x7c\xe0\x03\x7c\xe8\x43\x1f\xe2\xf3\ +\x9f\xff\x3c\xdb\xb7\x6f\xf7\x3d\xae\x4a\xa7\x24\x91\x48\x70\xf6\ +\x9a\xb3\x70\x1c\x07\x81\x60\xd4\x1c\xe3\x84\xf3\xa0\x6d\x7a\x39\ +\x4e\x22\x84\x1d\x0f\x21\x5b\xe6\xe3\x14\x43\x02\xb4\x18\x86\xd1\ +\xb2\x71\xe3\xc6\xa3\x8a\xe0\x5f\x36\x20\x75\x75\x75\xd7\xae\x59\ +\xb3\xe6\x1f\x07\x07\x07\x43\x8e\x53\x66\x55\x75\x5d\x3f\x24\xde\ +\xb0\x2c\x8b\x40\x20\xc0\x0d\x37\xdc\xc0\x8a\x15\x2b\xb8\xe6\x9a\ +\x6b\xb8\xfe\xfa\xeb\xb9\xf0\xc2\x0b\x19\x1e\x1e\x66\x3e\x39\x44\ +\x2c\x16\x3b\x12\xe8\x2e\x20\x85\x10\x64\x32\x99\x6f\xc4\xe3\xf1\ +\xaf\x1c\xe9\xfe\xd2\xe9\x74\x1e\xf0\x93\x4e\xa3\xa3\xa3\xeb\x47\ +\x46\x46\xcc\x79\xe9\xf9\xc7\xf1\xf1\xf1\xd3\x2e\xb8\xe0\x02\x12\ +\x89\x04\xb7\xdd\x76\x1b\x13\x13\x13\x2c\x5e\xbc\x98\xe7\x9f\x7f\ +\x9e\x7c\x3e\x8f\x6d\xdb\x14\x0a\x05\xd4\x77\x73\x5d\x97\x42\xa1\ +\x50\xfe\x4e\xc2\xa0\xd0\x33\x81\xb6\xa0\x16\xad\x36\x47\xf4\x14\ +\x0d\xa9\x49\xa4\x0d\x4e\x32\xc0\xec\xcf\xeb\xf1\x8a\x9a\x52\x5d\ +\x1c\x8d\xea\x32\x8e\x42\x55\xb5\x2d\x5c\xb8\xb0\x7e\x6c\x6c\xcc\ +\xb7\x17\x95\x34\x87\x4a\x0c\x01\xac\x5f\xbf\x9e\xbe\xbe\x3e\x4c\ +\xd3\x64\xf3\xe6\xcd\x3c\xf5\xd4\x53\x04\x83\x41\x82\xc1\xa0\x4f\ +\x8f\x1c\x8e\x81\xb2\x45\x55\x55\x55\x6c\xd9\xb2\xa5\x3d\x99\x4c\ +\x4e\xbc\x12\x9d\x9c\xc9\x64\x7e\xa3\x1e\x87\xc3\xe1\x4b\x0e\x1c\ +\x38\x60\x00\x9e\xeb\xba\x27\xde\x70\xc3\x0d\xd1\xaf\x7c\xe5\x2b\ +\xf4\xf6\xf6\xd2\xd1\xd1\xc1\x9d\x77\xde\xc9\xfa\xf5\xeb\x29\x14\ +\x0a\xbe\x5d\x71\x1c\x07\xc7\x71\x98\x9d\x9d\xc5\x2e\x59\x94\x4a\ +\x3a\x2f\xf4\xe7\x79\xfb\xc2\x0b\x89\x85\xa3\x3c\xbe\xef\x3f\x08\ +\xe9\xd5\xd8\x64\xc9\x1f\xb0\x91\x0e\x68\x9a\x86\x69\x9a\xf4\xf4\ +\xf4\xdc\x9d\x4c\x26\x37\x8d\x8c\x8c\xdc\xf9\x9a\x49\x88\x52\x43\ +\x95\xbe\xbb\xd2\xc1\xb6\x6d\xb3\x70\xe1\x42\xee\xb9\xe7\x1e\x3e\ +\xfc\xe1\x0f\xf3\xaf\xff\xfa\xaf\xfc\xdd\xdf\xfd\x1d\xc1\x60\xb0\ +\xcc\x3b\xcd\x4b\x90\xe7\x79\xa8\xbc\x83\x52\x13\xf3\xf6\x40\xa4\ +\x52\xa9\x87\x80\x84\xae\xeb\xe9\x70\x38\x6c\x2b\xc3\xab\xa4\xea\ +\x95\xac\x44\x22\x71\x6d\x22\x51\x0e\xa8\xeb\xeb\xeb\x9f\x8c\xc5\ +\x62\x67\xdf\x7c\xf3\xcd\x8c\x8f\x8f\x73\xfb\xed\xb7\xb3\x73\xe7\ +\x4e\x02\x81\x80\x4f\x5c\x56\x7e\xbf\xe9\xe9\x69\xba\xbb\xbb\xcb\ +\x81\xab\x2b\x79\x7c\xfc\x71\xba\xcf\x09\xd2\xae\xb5\xe2\x4e\x84\ +\xf0\x52\x0b\xa1\xed\x10\x72\x15\x5d\xd7\xaf\xec\xef\xef\xd7\x5f\ +\x2b\x40\x42\xef\x7b\xdf\xfb\xf6\x1e\x38\x70\xa0\x5a\x89\xb2\xa2\ +\x46\x94\xeb\x29\xa5\xe4\xd3\x9f\xfe\x34\x4f\x3d\xf5\x14\xf3\x5c\ +\x0f\x1f\xfc\xe0\x07\xa9\xa9\xa9\x79\x49\x17\x30\x4d\x93\x2d\x5b\ +\xb6\x7c\x3e\x93\xc9\xbc\xaa\xfc\xd0\x8b\x48\xfa\x8d\x03\x03\x03\ +\xf5\x9a\xa6\x59\x52\xca\xff\xf5\x4f\xff\xf4\x4f\x6b\x6f\xba\xe9\ +\x26\x2c\xcb\x62\xdd\xba\x75\xec\xdb\xb7\x8f\xb1\xb1\x31\x5f\x8d\ +\x39\x8e\xe3\xb3\xc6\x39\xaf\x44\xdb\x7b\x4a\x84\xdb\xa1\xd0\x3c\ +\x8b\x01\x04\xb5\x08\x6e\x09\x28\x98\x4c\xfd\xa4\x11\x61\x78\x18\ +\x86\xe1\xc7\x50\xaf\x05\x20\xf5\xd5\xd5\xd5\x0b\x75\x5d\xf7\x25\ +\xa4\x50\x28\x50\x2c\x16\x09\x04\x02\x84\xc3\x61\x34\x4d\xe3\x27\ +\x3f\xf9\x09\x57\x5c\x71\x05\xb5\xb5\xb5\x14\x8b\x45\xdf\x5b\x39\ +\x5c\x1a\xd4\xdf\xba\xae\x93\x4e\xa7\x77\x1a\x86\xf1\xb8\xeb\xba\ +\x4e\x24\x12\x89\x67\x32\x99\xd7\x14\x0c\x4d\xd3\xc8\x66\xb3\xbf\ +\xcb\x66\xb3\xea\x34\x5f\x61\x18\x06\xb7\xdc\x72\x0b\x86\x61\xc8\ +\xbb\xee\xba\x4b\xac\x5e\xbd\xda\x7f\xbd\x72\xe3\x95\x26\xc8\x14\ +\x73\x44\xb6\xe7\x98\xfa\x7d\x9a\xcb\xcf\xf8\x5b\x5c\xbd\xc0\x43\ +\xbd\xdf\xa6\x29\xdc\xc5\x44\x66\x88\xb9\xb1\x22\xc2\x28\x5f\x67\ +\x66\x66\x66\x51\x34\x1a\xfd\xcb\x5c\x2e\x77\xdf\xab\x02\x48\x85\ +\xde\x76\x95\xaf\xae\x44\xd9\xb2\x2c\xf2\xf9\x3c\xed\xed\xed\x3c\ +\xf4\xd0\x43\xbc\xff\xfd\xef\x67\xdf\xbe\x7d\x5c\x77\xdd\x75\x04\ +\x02\x01\x34\x4d\xfb\x43\x55\x20\x87\x7c\x7e\x38\x1c\x26\x1e\x8f\ +\x3f\x35\x33\x33\x73\xc3\xeb\x95\x46\x3e\xfc\xd4\xa6\xd3\xe9\xcd\ +\x3b\x76\xec\x08\x7a\x9e\xa7\xb7\xb4\xb4\xbc\xff\xe9\xa7\x9f\x46\ +\xd7\x75\x84\x10\x84\xc3\xe1\x43\x54\x97\x69\x9a\x9c\x7d\xda\x1a\ +\xa4\x07\xae\x74\xd9\xd6\xbb\x11\xd3\xd0\x59\xea\x9c\x83\x3b\x23\ +\x58\x6a\x2f\x86\xd5\xaa\x9e\x47\x02\xac\x29\x14\x0a\x6b\xee\xbe\ +\xfb\xee\x57\x07\x90\x78\x3c\x4e\x6b\x6b\xeb\x59\xb6\x6d\x7f\x40\ +\xc5\x15\x2a\x12\x37\x8c\x32\x0f\x55\x53\x53\xc3\xe6\xcd\x9b\x31\ +\x4d\x93\x9d\x3b\x77\x1e\x02\xc0\x4b\x4a\x9e\x04\x02\x6f\x68\x39\ +\x52\x2a\x95\xba\x03\xb8\x03\x08\x2c\x5e\xbc\xb8\xf4\x37\x7f\xf3\ +\x37\x4c\x4e\x4e\xb2\x61\xc3\x06\xba\xba\xba\xf8\xee\x77\xbf\x4b\ +\xb1\x58\x2c\xb3\xc2\xc5\x22\xf1\x78\x1c\x21\x04\x1b\x53\xbd\xfc\ +\xd9\xa7\xab\xf1\x5c\xf0\x7c\xb0\xc1\x1a\x0b\x52\xe8\x8d\x61\x8d\ +\x05\x01\xf9\x62\x0e\xcc\xd1\xab\xac\x50\x28\xf4\xd7\x67\x9e\x79\ +\xe6\x95\x96\x65\x49\xd7\x75\x85\xba\x39\xcf\xf3\x38\xef\xbc\xf3\ +\xd8\xbd\x7b\x37\xdf\xf8\xc6\x37\xe8\xea\xea\xf2\x6d\x8b\x0a\xb8\ +\x0c\xc3\xf0\xa3\x60\x29\xcb\xd1\xac\xa2\x42\xb6\x6d\xdb\x16\x01\ +\x0a\xbc\x79\x96\x4c\x24\x12\x39\xd3\x34\xa5\x6d\xdb\xe1\x0d\x1b\ +\x36\xe8\x3f\xf8\xc1\x0f\x7c\x49\xaf\xe4\xe6\x00\x2c\xcd\x25\x54\ +\x25\x88\x26\x4f\xe7\x86\x0b\x3f\xcb\x23\x83\xdf\x61\x60\x6c\x90\ +\xd2\xa9\x93\x4c\xe4\x0b\xe4\x86\x34\x10\xf2\x65\x1d\xd0\x97\x04\ +\x5d\x57\x57\xd7\x7d\x2b\x56\xac\xf8\xb0\x6d\xdb\xec\xdf\xbf\x9f\ +\x68\x34\x4a\x3c\x1e\xe7\x93\x9f\xfc\x24\x1d\x1d\x1d\xfc\xcb\xbf\ +\xfc\x0b\xe1\x70\xd8\x57\x49\xca\xc0\x7b\x9e\x57\x66\x59\xe7\xf3\ +\x20\x95\x2e\x71\x3e\x9f\x67\xef\xde\xbd\xe1\x7c\x3e\x5f\xe4\x4d\ +\xb8\xea\xea\xea\x1e\x3b\xe5\x94\x53\xce\x5d\xbe\x7c\x39\x5b\xb7\ +\x6e\x65\x7a\x7a\x9a\xd6\xd6\x56\xa4\x94\x64\x32\x19\x16\x2d\x5a\ +\x84\x8e\x86\x53\x82\xa2\x57\xc4\xa5\x84\x69\x47\xd0\x8d\x79\x35\ +\x6d\x82\x30\xfc\x78\x4a\x9a\xa6\x29\xb6\x6f\xdf\xbe\x7a\x6c\x6c\ +\x6c\xf3\x2b\xb5\x21\x31\xcf\xf3\xaa\xd4\xe9\x70\x5d\xd7\x67\x6b\ +\xe3\xf1\x38\xe7\x9c\x73\x0e\x37\xdd\x74\x13\xdb\xb6\x6d\x23\x97\ +\xcb\x31\x37\x37\x47\x2a\x95\x22\x10\x08\xd0\xda\xda\xca\xd8\xd8\ +\x18\x63\x63\x63\xac\x58\xb1\x82\x6d\xdb\xb6\x51\x2c\x16\x7f\x35\ +\x3e\x3e\x7e\x6b\x2c\x16\x4b\xd7\xd7\xd7\x97\xf2\xf9\xfc\x9b\x11\ +\x0f\x84\x10\x01\xdb\xb6\x79\xe2\x89\x27\xe8\xee\xee\x96\x97\x5c\ +\x72\x89\xb8\xeb\xae\xbb\xa8\xad\xad\xc5\xf3\x3c\x9f\x47\x1b\xd5\ +\x67\x68\xff\x8b\x59\x16\x34\x06\x70\xf2\x56\x39\xcb\x38\x15\xc2\ +\x9a\x08\x22\x0b\x3a\x5e\x5e\x07\x10\xd1\x68\x14\xc3\x30\x9c\x57\ +\xac\xb2\xea\xeb\xeb\x6f\x6f\x6c\x6c\xfc\x53\xe5\xea\x2a\x40\xba\ +\xba\xba\x78\xf6\xd9\x67\xd9\xb4\x69\xd3\x8b\xbe\x77\x74\x74\xd4\ +\x97\x9a\xde\xde\x5e\x62\xb1\x18\x81\x40\x60\x72\xff\xfe\xfd\x4f\ +\xcf\xcd\xcd\xf9\x69\xd7\x37\xe3\x72\x1c\xe7\xf3\x03\x03\x03\xcd\ +\xb6\x6d\xaf\x59\xb3\x66\xcd\xb5\x43\x43\x43\x18\x86\x71\x48\x7e\ +\x07\x20\x65\xe5\x38\xb3\x39\x4a\x21\x2f\x79\xd7\x09\xef\xa3\xaf\ +\x6a\x33\xe9\x8e\x19\x40\x50\x18\x36\x99\xf9\x45\x0d\xe8\x65\xf2\ +\xf3\x55\xb1\x21\xae\xeb\x46\x94\xfb\xaa\x0a\x0b\xde\xfd\xee\x77\ +\x33\x3a\x3a\xca\x63\x8f\x3d\x46\x38\x1c\xf6\xcb\x3c\x15\xbd\xae\ +\x0c\x7e\x85\x6b\x5b\x2e\x09\x75\x5d\xd2\xe9\x74\x94\x37\xf9\xaa\ +\xae\xae\x26\x9d\x4e\xff\xf7\x3c\x37\xe6\x0e\x0d\x0d\x5d\x9b\x4c\ +\x26\x51\x55\x33\x9e\xe7\xd1\xdf\xdf\x4f\x55\x55\x15\x86\x67\xb3\ +\xed\x6b\x36\x94\xa2\xcc\xd5\xed\x44\x0a\x93\x78\xca\x21\x60\xea\ +\x14\x0b\x19\x9c\x54\x39\x3d\x3d\x35\x35\x45\x2c\x16\xfb\x61\x53\ +\x53\xd3\x0d\x53\x53\x53\x8f\x1e\x35\x20\x52\x4a\x57\x49\x86\xb2\ +\x07\x13\x13\x13\xdc\x78\xe3\x8d\x7c\xf5\xab\x5f\xe5\xf6\xdb\x6f\ +\x67\x78\x78\x98\x93\x4f\x3e\x99\x99\x99\x19\xe2\xf1\x38\x35\x35\ +\x35\x3c\xff\xfc\xf3\x68\x9a\xc6\x49\x27\x9d\xc4\x96\x2d\x5b\xc4\ +\xe8\xe8\xe8\x13\xd3\xd3\xd3\xeb\x00\x16\x2e\x5c\xc8\xf8\xf8\xf8\ +\x9b\x16\x10\xc5\x02\xcf\x4b\xb7\xa9\xb2\x9c\xab\x56\xad\x92\xa3\ +\xa3\xa3\x22\x99\x4c\xd2\xd0\xd0\xc0\xc9\x27\x9f\x5c\x26\x23\x3d\ +\x1b\x4e\x9a\xa1\xa6\xae\x80\x97\x0e\x50\x93\x5a\x84\x97\x36\x71\ +\x53\x06\xb4\x80\xd0\xa5\x22\x3e\x4f\xba\xf7\xde\x7b\x1b\x8e\x5a\ +\x42\x9a\x9a\x9a\x16\xbb\xae\xfb\x6e\xe5\x39\x05\x02\x01\x02\x81\ +\x00\x43\x43\x43\x6c\xd8\xb0\xc1\xf7\x9a\x00\x7e\xff\xfb\xdf\xfb\ +\x39\xf3\xca\x78\x63\xd3\xa6\x4d\x84\x42\x21\xff\x75\xc0\x9b\x1a\ +\x8c\x3f\x10\x44\x3e\xba\x65\xcb\x96\xb5\x81\x40\xe0\xea\xf3\xce\ +\x3b\xef\x8a\x1f\xfc\xe0\x07\x7e\x6a\x21\x93\xc9\x20\x3d\x8f\x31\ +\x99\xe0\x8c\xb7\x39\xd8\x8e\x4b\x55\xa8\x86\x82\x9b\x41\xe8\xe5\ +\x82\xbe\xfc\xae\x18\xe9\x67\x6a\x40\x1c\x74\x72\xfe\xe8\xf5\x8e\ +\x40\xcc\xad\x89\x44\x22\x0b\x5d\xd7\x25\x99\x4c\x22\xa5\xe4\xfa\ +\xeb\xaf\xa7\x58\x2c\x12\x0e\x87\x89\x44\x22\x3e\x48\xa1\x50\x88\ +\x60\x30\x48\x38\x1c\x26\x1c\x0e\x13\x0a\x85\x08\x85\x42\xc4\x62\ +\xb1\x43\xbc\xab\xb7\xda\xca\x64\x32\x93\xa5\x52\xe9\x49\x4d\xd3\ +\x46\xbe\xf5\xad\x6f\x1d\x22\x3d\x7e\x32\x4e\xba\x80\xc6\x62\x79\ +\x11\x9f\x59\x7d\x37\x7f\x7f\xee\x8f\x18\xde\xe3\xd2\x11\x5b\x8e\ +\x08\x96\x6b\xcf\x14\x7b\x7c\xa4\x98\xe4\x8f\x3e\x1b\x0e\x87\xaf\ +\x5c\xb2\x64\xc9\xdd\x00\xc9\x64\x92\xa6\xa6\x26\x7e\xf2\x93\x9f\ +\x30\x3d\x3d\xcd\x43\x0f\x3d\xc4\xfe\xfd\xfb\x59\xb7\x6e\x1d\x8f\ +\x3c\xf2\x08\x2b\x57\xae\x24\x91\x48\x30\x38\x38\x48\x4f\x4f\x0f\ +\x8d\x8d\x8d\xfc\xf0\x87\x3f\xa4\x58\x2c\xce\xbc\xf0\xc2\x0b\x8d\ +\xcd\xcd\xcd\x81\xc9\xc9\xc9\xd2\x5b\x15\x98\x9a\x9a\x9a\x2f\xac\ +\x5e\xbd\xfa\xa6\xd1\xd1\x51\x92\xc9\x24\xa1\x50\x88\xd3\x4f\x3f\ +\x9d\x40\x20\x80\x04\x02\x86\x86\x74\x02\x38\x5e\x09\xc3\x30\x71\ +\xa4\x8d\xa6\x97\x6b\xcf\x64\x05\x31\x30\x3c\x3c\x1c\x7f\xfa\xe9\ +\xa7\x17\x1e\x95\xca\xd2\x34\x2d\xac\x54\x90\xae\xeb\x84\x42\x21\ +\x3e\xf9\xc9\x4f\xd2\xd9\xd9\xc9\x0b\x2f\xbc\x80\x94\x92\xde\xde\ +\x5e\x74\x5d\xf7\xf3\x1c\x00\x8f\x3c\xf2\x08\xae\xeb\xaa\x82\x06\ +\x09\xc8\xb7\x32\x18\xf3\x74\xcb\xcf\x9e\x79\xe6\x99\xfd\x0b\x17\ +\x2e\xbc\xbd\xbd\xbd\x3d\x3a\x3a\x3a\xea\xf3\x79\x1e\x1e\xdb\xeb\ +\xfb\x38\xeb\x2f\x22\x18\x19\x13\x37\x6d\xa0\xa7\x82\xb8\x29\x03\ +\x37\x6d\x60\x8d\x85\x10\x02\xc5\x68\x9b\x47\x6d\x43\x42\xa1\xd0\ +\xa7\x65\xd9\xaa\x8b\x25\x4b\x96\xe0\x38\x0e\xf9\x7c\x9e\x3d\x7b\ +\xf6\xf8\xd1\xab\xe2\x7c\x82\xc1\xa0\x9f\x94\x51\x65\x9b\x80\x4c\ +\xa5\x52\x36\xc7\xc0\xca\x64\x32\xcf\x02\xcf\x1a\x86\xf1\x8f\x23\ +\x23\x23\x51\x4d\xd3\x0e\x26\xe5\xa4\x43\xfd\x42\x03\xe1\xea\x2c\ +\x6a\x3c\x85\x9a\x45\x55\xbc\x30\xb5\x89\x58\xa0\x96\xbc\x3e\xc5\ +\xc8\x57\x5b\x11\x5a\x99\x50\x55\x99\xd5\xa3\x02\x44\x4a\x29\xa4\ +\x94\xa2\x54\x2a\xf1\x89\x4f\x7c\x02\xc3\x30\xb8\xe8\xa2\x8b\xf8\ +\xf2\x97\xbf\x8c\x69\x9a\x18\x86\x41\x2a\x95\x62\x64\x64\x84\xee\ +\xee\x6e\x86\x87\x87\x49\xa7\xd3\xf4\xf7\xf7\x93\xcd\x66\xc9\x64\ +\x32\x7f\x33\x30\x30\xf0\x0d\x8e\xa1\xa5\x3c\x4d\x28\xe7\xf8\xa5\ +\x94\xb8\x48\x3c\xf2\x3c\xbb\xab\xc8\xa2\x77\x76\xf1\xf0\xf3\x4f\ +\x10\xab\x8f\x12\x88\x2e\x66\xd7\xcc\x5e\x52\xa3\x36\x9a\x56\x3e\ +\xa4\x85\x42\xa1\xee\xa8\x6d\x48\x7d\x7d\x7d\x7f\x53\x53\xd3\x52\ +\xd7\x75\xa9\xab\xab\xe3\x8a\x2b\xae\xa0\xb7\xb7\xd7\x2f\x36\xf0\ +\xdb\x0a\x4a\x25\x42\xa1\x10\xa5\x52\x89\x6c\x36\x4b\x34\x1a\x25\ +\x95\x4a\x91\xcd\x66\xaf\x3b\xd6\x00\x69\x69\x69\xf9\x8c\x10\xe2\ +\xb3\x42\x88\xba\x95\x2b\x57\xfa\xb9\x9e\xa2\x67\x11\x3a\x39\x85\ +\xe1\x18\x78\xd3\x11\x9c\xc9\x30\x68\x1e\x42\x13\x2a\xd7\x8e\x94\ +\x92\xe9\xe9\x69\x1e\x7b\xec\x31\x71\xb4\x71\x88\x50\x74\xb5\xae\ +\xeb\xdc\x75\xd7\x5d\x87\x24\xa3\x2a\xdd\x5b\x15\xb9\x9a\xa6\x89\ +\x6d\xdb\x32\x16\x8b\x89\x74\x3a\xad\x1f\x4b\x60\x54\x57\x57\x33\ +\x31\x31\xf1\xa5\xd6\xd6\xd6\x6b\x81\x3a\xcf\xf3\xca\x44\xa9\xd0\ +\x78\xac\xb8\x9d\xbf\x5c\xd5\x84\x23\x6d\x2c\xb7\x44\xcc\x08\xe3\ +\x66\x74\xbc\x54\x90\xdc\xce\x18\x56\x3c\xf0\x07\xa9\xff\x97\xe5\ +\xf6\x02\xa6\x6d\xdb\x5c\x70\xc1\x05\x34\x36\x36\x72\xf5\xd5\x57\ +\xd3\xd4\xd4\x84\x69\x9a\x2c\x5e\xbc\x98\x8e\x8e\x0e\x4c\xd3\xa4\ +\xb1\xb1\x91\x64\x32\x49\x2e\x97\x43\xd7\x75\xe2\xf1\xb8\xd8\xbd\ +\x7b\xf7\x2f\x32\x99\xcc\x2f\x8f\x25\x40\x94\xcb\x2b\xe6\x4f\xa1\ +\x4a\x45\x58\x96\x85\xd0\xca\xe5\xa6\xef\x8c\xfd\x35\x5f\x5c\xf7\ +\x30\xcb\x6a\xcf\x64\x79\xc3\xd9\x44\x3b\x25\xc4\x4a\x07\x1b\x8c\ +\x5e\x89\x0d\x01\xc4\x7c\x76\x8d\x7b\xef\xbd\x97\xa1\xa1\x21\xf6\ +\xec\xd9\x83\x69\x9a\xd4\xd7\xd7\x93\xcd\x66\xd1\x75\x9d\xce\xce\ +\x4e\x6a\x6b\x6b\xd9\xbb\x77\x2f\x3d\x3d\x3d\x64\x32\x19\x0a\x85\ +\xc2\xe6\x78\x3c\xde\xcb\x31\xb8\x1c\xc7\x91\x7e\x57\x30\xa0\x21\ +\xd0\x43\x82\x7d\x7b\x93\xfc\xcb\xff\xb8\x9c\xeb\x1e\x7c\x37\x77\ +\x5f\xb6\x99\xc9\xb9\x69\x9e\x4b\xfc\x17\xdf\xfb\xd5\xbd\x58\x96\ +\xe6\x07\x94\xaf\x88\xcb\xd2\x34\x8d\x81\x81\x01\x2e\xba\xe8\x22\ +\x0a\x85\x82\xaf\x0b\x2b\xcb\x5c\xfa\xfa\xfa\xfc\xc7\x4f\x3f\xfd\ +\xf4\x21\x51\xf9\xb1\xb8\x66\x66\x66\xde\xd5\xd2\xd2\x32\xa5\x78\ +\x2d\x81\x40\x84\x05\x85\x9c\x47\x38\x74\xd0\xab\x75\x5c\x87\xc7\ +\x87\xfe\x03\xcf\x95\xbe\xbd\x7d\xa5\x12\x42\x20\x10\xa0\xbe\xbe\ +\x9e\x40\x20\xa0\xaa\x14\x09\x06\x83\x64\x32\x19\x6a\x6a\x6a\xfc\ +\xbc\xba\xca\xa9\x67\x32\x19\x2c\xcb\xb2\x81\xb1\x63\x15\x10\xd7\ +\x75\xb3\xf3\x92\x52\xa6\x43\x28\xe7\x80\x62\x31\x13\xdb\x02\xd7\ +\x9b\xef\x08\xc6\xc5\xf5\x1c\x3c\xd7\xc5\xb2\xbc\x57\x0e\x88\xe7\ +\x79\xac\x5b\xb7\x8e\x2b\xaf\xbc\x92\x33\xce\x38\x83\x87\x1f\x7e\ +\x98\xdf\xfd\xee\x77\xe4\xf3\x79\x26\x26\x26\x38\xe3\x8c\x33\x98\ +\x9c\x9c\xa4\xaf\xaf\x0f\xcf\xf3\x68\x6c\x6c\xe4\x85\x17\x5e\xc0\ +\xf3\xbc\x7d\xf1\x78\xfc\xdf\xdf\x0c\x93\x11\x5e\xab\x35\xcf\x64\ +\x4b\xcb\xb2\x84\x40\x20\x34\x9d\xa5\xcb\xea\x79\x64\xeb\xcf\xf9\ +\xcc\x39\xdf\xe2\xbf\xf6\x7c\x13\x27\x17\xe6\xbc\xc5\x1b\xe8\x75\ +\xbe\x43\xa9\xe4\x1c\xa2\x55\x8e\x5a\x42\x36\x6e\xdc\xc8\xf4\xf4\ +\x34\x35\x35\x35\x0c\x0c\x0c\xf8\x28\x4b\x29\xf9\xe9\x4f\x7f\xea\ +\x57\x92\x78\x9e\xc7\xd4\xd4\x94\x2a\xae\x16\xc0\x31\x0b\x06\x60\ +\x15\x0a\x85\xd9\x42\xa1\x50\x9f\x4c\x26\xd1\x84\x46\xbe\xd9\xa3\ +\x68\x55\xf1\x1f\x43\x7f\xcf\x27\x63\xdf\xe3\x40\xae\x9f\xe7\x27\ +\x7e\x87\x11\xd0\x98\x19\x4b\x31\x37\x57\xae\x43\x50\x99\xd5\xa3\ +\x06\xc4\x30\x0c\x46\x47\x47\x19\x1e\x1e\x46\xd7\x75\xdf\xe5\xd5\ +\x34\xcd\xff\x5b\x45\xed\x2a\x0f\x32\x39\x39\xd9\xd2\xda\xda\xfa\ +\xbe\x78\x3c\xfe\xc8\xb1\xaa\xb5\x84\x10\x96\x4a\x57\xab\x86\x1e\ +\x23\x28\xa8\x22\xc2\x1d\x8f\x5d\x4b\xb2\xcf\x63\x66\x6f\x81\x52\ +\xd2\x23\x37\xe9\x22\x34\xe1\xef\xd3\x51\x03\x12\x8d\x46\xf9\xc8\ +\x47\x3e\x42\x7f\x7f\x3f\x17\x5f\x7c\x31\x4f\x3c\xf1\x04\x43\x43\ +\x43\xd4\xd5\xd5\xe1\x38\x8e\xef\x06\x8e\x8c\x8c\x90\x4c\x26\x69\ +\x69\x69\x61\x72\x72\x92\x5c\x2e\x57\x4d\xb9\x18\xe6\x98\x03\xa4\ +\xa5\xa5\x45\x55\xe9\x4b\x75\x08\x6b\x6b\x6b\x31\x87\x8b\x3c\x71\ +\x63\x9a\x42\xc2\x2d\x77\xec\x6a\x20\xf4\xb2\x0f\x66\x98\xf8\x07\ +\xf6\x48\xf4\xfb\x1f\x05\x24\x12\x89\x30\x35\x35\xc5\xa7\x3e\xf5\ +\x29\xa4\x94\x6c\xdc\xb8\x91\xba\xba\x3a\x6a\x6b\x6b\x71\x5d\x97\ +\xd1\xd1\x51\xba\xba\xba\xfc\xc6\x97\xb6\xb6\x36\x72\xb9\x9c\x02\ +\xca\x3b\x16\x45\x63\x62\x62\x82\xf6\xf6\xf6\xef\x06\x02\x81\x46\ +\xd7\x75\xb9\xe3\x8e\x3b\x58\xb7\x6e\x1d\x5f\xfb\xda\xd7\x38\x70\ +\xe0\x00\x9e\xe7\x91\xc9\x64\x30\x0c\x83\xd9\xd9\x59\xaa\xab\xab\ +\x09\x85\x42\x0c\x0f\x0f\x53\x28\x14\x38\x52\x0d\xc1\x91\xd8\x5e\ +\x7e\xf1\x8b\x5f\xf0\xf3\x9f\xff\xfc\x45\x5f\x53\x69\x27\x76\xed\ +\xda\x45\x24\x12\x79\x49\xc6\xeb\xad\xbc\x02\x81\xc0\xda\x55\xab\ +\x56\x19\xbf\xff\xfd\xef\x59\xb1\x62\x05\x7d\x7d\x7d\xac\x5d\xbb\ +\x96\xef\x7f\xff\xfb\xf4\xf4\xf4\x30\x36\x36\x46\x57\x57\x17\x8f\ +\x3c\xf2\x08\xd5\xd5\xd5\xb4\xb7\xb7\x73\xda\x69\xa7\x71\xdf\x7d\ +\xf7\x1d\x31\x37\xf4\x47\x15\x5a\x6b\x6b\xeb\x70\x55\x55\xd5\x09\ +\x95\x84\x5a\xa9\x54\x22\x12\x89\xf8\x95\x25\x91\x48\x84\x5c\x2e\ +\x87\xe7\x79\xd4\xd5\xd5\xf9\xd2\xd2\xde\xde\x6e\xcf\xcd\xcd\xdd\ +\xb3\x67\xcf\x9e\xab\x8f\x35\x40\x16\x2d\x5a\x34\x78\xea\xa9\xa7\ +\x9e\x38\x31\x31\xc1\x92\x25\x4b\x58\xb3\x66\x0d\xbf\xfc\xe5\x2f\ +\x29\x95\x4a\x04\x02\x01\xb2\xd9\x2c\xe1\x70\x98\x74\x3a\xed\xef\ +\x9b\xe7\x79\xe4\x72\x39\x5c\xd7\x65\xe7\xce\x9d\x47\xc7\x65\x45\ +\xa3\x51\xeb\x9b\xdf\xfc\x26\xa9\x54\x8a\x0f\x7c\xe0\x03\xdc\x7f\ +\xff\xfd\xf4\xf6\xf6\xd2\xd0\xd0\x40\x55\x55\x15\xcf\x3d\xf7\x1c\ +\x55\x55\x55\xf4\xf5\xf5\x31\x31\x31\x41\x57\x57\x17\x23\x23\x23\ +\x0c\x0f\x0f\xe3\x38\x8e\x29\x84\x30\x8f\x41\x30\xfe\x2a\x10\x08\ +\xd4\xcd\xcc\xcc\x20\x84\x60\x68\xdf\x10\x03\x03\x83\x18\xc6\xa1\ +\x27\xdf\x1f\x86\x33\x1f\x77\x08\x21\x08\x85\x42\xfe\xff\x3f\x2a\ +\x40\x74\x5d\xe7\x73\x9f\xfb\x1c\x5f\xfc\xe2\x17\xb9\xf5\xd6\x5b\ +\xd9\xb1\x63\x87\x5f\x75\x91\xcf\xe7\xd1\x75\xdd\xaf\x46\x71\x1c\ +\x87\xe1\xe1\x61\x3f\x8a\x9f\x77\x8d\xbd\x79\x49\x3b\x66\x5c\xe0\ +\xb6\xb6\xb6\x7f\x5c\xba\x74\x69\x3d\xc0\x8e\x5d\xcf\xe3\x35\xa5\ +\x89\x04\x4c\x64\x26\x80\xb4\x34\x3c\x4b\x43\xda\x1a\x42\x48\x5f\ +\xff\x48\x29\xc9\xe7\xf3\x94\x4a\x25\x7f\x48\xc2\x2b\x8a\xd4\x6f\ +\xbe\xf9\xe6\x17\xe3\x74\x7c\x5b\xa3\x7a\xb5\x43\xa1\x90\x7f\x32\ +\x34\x4d\xbb\x72\xe9\xd2\xa5\x17\x0d\x0c\x0c\x34\x1e\x2b\x12\x62\ +\x59\x96\xae\x5a\xbc\xc7\xab\xf3\xfc\xf9\x27\x1a\x70\x0f\xa3\xa7\ +\x3c\x07\xb2\x5b\xaa\xc9\xef\x89\xa2\x6a\x7b\x67\x67\x67\xc9\x66\ +\xb3\x94\x4a\xa5\xc4\x51\xb3\xbd\x63\x63\x63\xf7\x37\x35\x35\x71\ +\xe9\xa5\x97\x72\xd3\x4d\x37\x71\xd6\x59\x67\xd1\xda\xda\x8a\x2a\ +\xd5\x3f\xef\xbc\xf3\x68\x6f\x6f\x07\xca\xad\xd2\x4b\x96\x2c\x61\ +\x72\x72\xd2\x77\x8b\xab\xab\xab\xe9\xe8\xe8\x38\x56\x24\x23\x02\ +\x2c\xcc\xe7\xf3\x7a\x32\x99\x2c\x37\x28\x15\x2c\x32\x13\x25\xc4\ +\xd0\x32\x3e\xdc\xf6\x45\x4e\x64\x0d\xda\x44\x3b\x6e\xca\x24\x53\ +\x4a\x91\x9c\x2b\x33\xe0\xaa\xb7\xe4\xa5\xd4\xf8\xfe\x51\x09\xb1\ +\x6d\xbb\xdf\xb2\x2c\xd6\xae\x5d\xcb\xb2\x65\xcb\x18\x1f\x1f\xa7\ +\x54\x2a\x31\x37\x37\x47\x73\x73\x33\xe9\x74\x9a\xda\xda\x5a\x52\ +\xa9\x14\x93\x93\x93\x54\x57\x57\xa3\xeb\x3a\xaa\x87\xc4\xb6\x6d\ +\x4c\xd3\x94\x15\x4e\xc2\x5b\x56\x75\xe5\xf3\xf9\x8f\xfd\xe9\x9f\ +\xfe\xe9\x97\x4d\xd3\x04\x29\xc9\xd8\x45\xde\xbd\x68\x39\xa9\x9f\ +\x19\xcc\x15\x53\xfc\xc3\xc3\x5f\xc6\xd0\x0d\x34\x43\x20\x58\x80\ +\xae\xc1\x82\x46\x9d\xa1\xa1\x21\x1a\x1b\x1b\x29\x16\x8b\x04\x83\ +\x41\xe9\x79\x5e\xf8\x15\xd1\xef\x63\x63\x63\x6c\xd8\xb0\x01\xc3\ +\x30\xfc\xfc\xb9\x5a\x83\x83\x83\xbe\xc1\x02\x78\xee\xb9\xe7\x30\ +\x4d\x93\x4a\xe2\xcd\x75\xdd\xaa\x95\x2b\x57\xde\x35\x35\x35\x35\ +\x18\x8f\xc7\xff\xe1\xad\x2a\x21\x9e\xe7\xd5\x29\x16\xbb\x20\x6d\ +\xec\x35\x23\x2c\xe8\x89\xe1\xe2\x22\x6d\x70\x27\xa2\x58\x93\x01\ +\x9c\xc9\x20\x56\xdc\xf0\xab\xde\x55\x43\x6c\x2a\x95\xa2\xb9\xb9\ +\x59\x14\x8b\xc5\xab\xda\xda\xda\x18\x1b\x1b\x7b\xf9\x2a\x4b\xd3\ +\x34\x4f\xa9\x9e\x48\x24\x42\x30\x18\xf4\xeb\xb0\x54\xd7\xd4\xe1\ +\x35\x58\x6a\x7a\x82\x6a\x03\x03\x42\x3d\x3d\x3d\x57\x01\x7f\x72\ +\x0c\xd8\x8f\x72\xff\xa1\x65\x51\x57\x13\xa2\x54\x70\x38\x77\xc1\ +\x5f\xf3\xde\x25\x57\x10\x68\xb5\xa8\x7f\x9b\x43\xd5\x79\x09\x4a\ +\x79\xfb\xe0\x4c\xc8\xf9\x7a\x2c\x55\xa0\x2e\x84\x08\xbe\x18\x18\ +\x47\x94\x90\xaa\xaa\xaa\x7b\xc7\xc6\xc6\xd6\x7f\xf6\xb3\x9f\xfd\ +\xf3\x9a\x9a\x1a\x2e\xbd\xf4\x52\x6e\xbb\xed\x36\x92\xc9\x24\x2b\ +\x57\xae\xc4\xf3\x3c\x7e\xf9\xcb\x5f\xb2\x72\xe5\x4a\x76\xec\xd8\ +\x01\x40\x30\x18\xa4\x58\x2c\x92\xcd\x66\xfd\xc1\x01\xf3\xae\x9e\ +\xfb\x56\x54\x5d\xa1\x50\xe8\x2f\xd6\xaf\x5f\x7f\xff\x7c\x25\x8d\ +\x74\x5d\x29\xc2\x55\x3a\xde\x2f\x1a\xc8\x08\xc9\x03\xda\x6f\x40\ +\x80\xa6\x75\xfa\xef\xa9\xae\xd7\xd8\xbc\x79\x33\xcb\x96\x2d\xf3\ +\x5b\xe1\x94\x2a\x3f\x52\xd0\xfc\x47\x01\x99\x9a\x9a\x92\x8b\x16\ +\x2d\xb2\x1e\x78\xe0\x01\x3e\xfe\xf1\x8f\x73\xf3\xcd\x37\xd3\xd7\ +\xd7\x87\xa6\x69\xc4\xe3\x71\x3f\x25\xb9\x65\xcb\x16\x0a\x85\x02\ +\xc9\x64\x92\xe6\xe6\x66\x9f\x7c\x54\xee\xaf\x6d\xdb\x84\xc3\xe1\ +\x33\x2e\xbc\xf0\xc2\x67\x06\x06\x06\xfe\x7b\x70\x70\xf0\xd6\xb7\ +\x90\xaa\x0a\x29\x9b\x68\x08\x5d\x0c\x9d\xb0\x8b\x77\x9c\x5f\x85\ +\xeb\xb9\xd8\x29\x0d\xd2\x11\xdc\xb4\x81\x9b\x34\x29\x0e\x86\x91\ +\xae\x00\xb7\xac\xde\x2b\xa7\xd7\x05\x02\x01\x12\x89\xc4\xf3\x86\ +\x61\xec\x7b\x45\x6e\xaf\x94\x52\x73\x5d\x97\x2f\x7d\xe9\x4b\x7e\ +\xbd\x95\xf2\x16\xa4\x3c\xb4\x5d\x4b\xd3\x34\xa6\xa7\xa7\x7d\xf1\ +\x54\xdd\x46\xf3\x11\x6c\x4d\x7d\x7d\xfd\x3b\x6b\x6b\x6b\xf7\xbe\ +\x45\x48\xc4\xda\xfa\xfa\xfa\x25\x89\x44\x62\xd1\x7c\xd2\x0d\x5d\ +\x6a\xe8\x96\x20\x35\x24\xa9\xd3\x4e\xa4\xb5\xae\x9a\x01\x6f\x3b\ +\xa2\x4a\x43\x54\x0b\x72\x2f\x54\xe3\x15\x35\x7f\x22\xc5\xc1\xd9\ +\x92\x52\xb5\x32\x7c\x73\x6a\x6a\xea\x99\x57\x04\xc8\xec\xec\xec\ +\x57\xb3\xd9\x6c\xe7\x35\xd7\x5c\xf3\xae\x42\xa1\xc0\xbb\xde\xf5\ +\x2e\x1e\x78\xe0\x01\x3c\xcf\x63\xc1\x82\x05\x8c\x8f\x8f\x13\x0e\ +\x87\x89\xc5\x62\x3c\xf3\xcc\x33\xb4\xb7\xb7\xd3\xd2\xd2\x42\xb1\ +\x58\xf4\x49\xb6\xca\x51\x15\x2f\xb7\x4d\xf8\x8d\x5a\xc5\x62\xf1\ +\xe3\xa7\x9f\x7e\xfa\x3f\x28\x43\x5e\x92\x16\xc1\x06\x87\xa6\xd9\ +\xb7\x23\x9e\x13\xe4\x80\x1c\x0e\x01\x4e\xf5\xdf\xd3\xde\x64\xb0\ +\x7b\xf7\x6e\xbf\x15\x43\x55\xe2\xa8\x34\x05\xe5\x39\x8d\x47\xaf\ +\xb2\x0c\xc3\x20\x9d\x4e\x6f\x5e\xb8\x70\xe1\xd0\xbe\x7d\xfb\xde\ +\xf5\xef\xff\xfe\xef\xf4\xf7\xf7\xb3\x74\xe9\x52\x0c\xc3\xf0\xdb\ +\xa3\x0d\xc3\x20\x1a\x8d\x72\xca\x29\xa7\x30\x37\x37\x47\x43\x43\ +\xc3\x21\x05\x65\xaa\x49\x74\x9e\x07\xfb\xe0\x25\x97\x5c\x72\xfe\ +\xcc\xcc\x8c\xd8\xbe\x7d\x7b\x77\x3a\x9d\x4e\xbc\x59\x40\xa8\xb4\ +\x6d\x9e\xe7\x99\xf9\x7c\x1e\x21\x04\x79\xb7\x04\xe7\x1e\x60\xf1\ +\xb2\x30\xd2\x03\x69\xcf\x47\xe4\x96\x86\x3d\x6d\x92\x7a\xbc\x0e\ +\x29\x5c\xbf\xa1\x47\x1d\xc0\x64\x32\x49\x30\x18\x44\xd3\x34\x19\ +\x08\x04\x84\x65\x59\xe6\x2b\x02\xa4\x22\x12\x17\x7d\x7d\x7d\xac\ +\x5b\xb7\xce\x37\x50\x87\x97\x8d\x2a\xf5\x25\x84\xe0\xd7\xbf\xfe\ +\xf5\xc1\x21\x65\x9a\x46\xb1\x58\xf4\x01\x11\x42\x84\x0d\xc3\x08\ +\xd7\xd6\xd6\x62\x59\xd6\x9b\x8a\x16\x8e\xc7\xe3\x9c\x72\xca\x29\ +\xff\xa7\xb9\xb9\xb9\xb3\x54\x2a\x75\x64\xd2\x69\xf0\x34\x1c\xcf\ +\xc3\x78\xb2\x96\xa1\xcd\x82\xf9\x56\xe7\x0a\x5e\xd6\x25\x3b\x33\ +\x4d\x75\x4d\x95\xdf\x61\xe6\xcf\x1b\xb6\x6d\x42\xa1\x10\xba\xae\ +\x8b\x4d\x9b\x36\x9d\x58\x5f\x5f\x3f\xf1\x8a\x00\x51\xab\x54\x2a\ +\x4d\x99\xa6\x39\xaa\xeb\x7a\x7b\x53\x53\x13\x86\x61\xf8\xdc\x8c\ +\x9a\x5f\x15\x0a\x85\x7c\x23\xaf\x8a\xe9\xd4\x00\x80\xd9\xd9\x59\ +\x7f\xca\x8e\x9a\xdb\xeb\x38\x0e\x5d\x5d\x5d\xd7\x04\x02\x81\xec\ +\xc4\xc4\xc4\xf3\x53\x53\x53\x4f\xbe\xd1\x52\x31\xef\x59\x5e\xb0\ +\x60\xc1\x82\x7a\x80\x84\x9d\xa6\x7a\xcd\x2c\xf5\xd5\x21\x9c\xc9\ +\x30\xce\x64\x08\x59\xd2\xf1\x4a\xe5\xb9\xbe\x78\xe5\xc3\x18\x6d\ +\x29\x77\x07\x54\x4e\x5d\x55\xd9\x53\x55\x74\x2e\xa5\xdc\x37\x33\ +\x33\x73\xc4\xfb\x79\x49\x95\x85\xf9\x7c\xfe\xbf\xc7\xc7\xc7\x7f\ +\xdc\xd4\xd4\xf4\x3f\xef\xbe\xfb\x6e\x56\xad\x5a\xe5\xab\xa3\x0f\ +\x7d\xe8\x43\x4c\x4e\x4e\xb2\x7c\xf9\x72\xba\xba\xba\x98\x99\x99\ +\x61\xed\xda\xb5\xac\x5e\xbd\xda\x1f\x4a\xa6\x5a\xdb\x22\x91\x88\ +\x3f\x24\xcc\xf3\x3c\x5a\x5b\x5b\xcf\xef\xea\xea\x7a\xdf\xee\xdd\ +\xbb\xf3\xc5\x62\xf1\x0d\xc9\x2e\x66\xb3\x59\x5a\x5b\x5b\x3b\xab\ +\xaa\xaa\xde\x56\x5d\x5d\xdd\x68\x9a\xe6\x47\xa5\x94\xc1\x42\xa1\ +\xc0\xae\xe4\x10\x4b\x4f\x35\x28\x16\x2c\x1c\x23\x87\x57\x9b\xc2\ +\x6b\x48\x22\x9b\x67\x29\x58\x79\x72\xe3\xf8\x55\xed\x2a\x05\x91\ +\x4e\xa7\x7d\xb2\x55\x0d\xda\x89\xc5\x62\x0c\x0f\x0f\xbf\x24\xcf\ +\xf2\x65\x15\x50\x85\x42\x21\xae\xbd\xf6\x5a\x6a\x6a\x6a\x18\x1f\ +\x1f\x47\x4a\xc9\xee\xdd\xbb\xf1\x3c\x8f\x7d\xfb\xf6\xf9\x0d\x29\ +\x3f\xfd\xe9\x4f\x7d\x35\xa6\x69\x9a\x6f\x6f\x94\x28\x2b\x5e\xa7\ +\x62\x60\x66\x8d\xa6\x69\x4b\x01\xb1\x70\xe1\xc2\xf8\xe8\xe8\x68\ +\xe6\xf5\x04\x25\x14\x0a\xdd\xb2\x6a\xd5\xaa\xbf\x2a\x47\xca\x1a\ +\x33\xcc\xb1\xa0\x5d\x67\xdd\x64\x0f\xf6\x6f\xcc\x72\x4b\x9a\x06\ +\x68\x07\x35\x6c\x58\xc0\xc4\xec\x10\x4d\x4d\x4d\xfe\x58\xc0\xca\ +\x31\xb8\xaa\xa0\x21\x9f\xcf\x3f\x3e\x3d\x3d\x7d\xdb\x4b\xbd\x97\ +\x97\x05\x88\xda\xd4\x44\x22\x21\x3d\xcf\x13\xf3\x5c\x15\xba\xae\ +\x53\x2c\x16\x0f\xe9\x51\x57\x34\x8b\x4a\x68\x25\x93\x49\x66\x66\ +\x66\xa8\xa9\xa9\xc1\xb2\x2c\x4c\xd3\x54\x80\xc8\xce\xce\xce\x8f\ +\x2c\x59\xb2\xe4\x23\xba\xae\xf3\xab\x5f\xfd\xea\x2a\xe0\xee\xd7\ +\x41\x55\xb5\xa5\xd3\xe9\xf3\x3c\xcf\x2b\xe5\x72\xb9\xe5\xaa\x63\ +\x38\x65\xe7\x09\xaf\x4c\xa1\x05\x83\xd0\x25\x91\x96\xc0\x4d\x99\ +\x38\x49\x03\x37\x69\x10\xf6\x6a\xa9\xae\xa9\x46\x7a\xd2\xb7\x8b\ +\xba\xae\xfb\x83\xdc\x94\x33\x54\x31\x28\xe1\xc0\xe8\xe8\xe8\x6f\ +\x5f\x0b\x40\xe2\x5b\xb7\x6e\x0d\x06\x83\xc1\x5b\x3e\xf1\x89\x4f\ +\xdc\x78\xf6\xd9\x67\x73\xfe\xf9\xe7\xf3\xed\x6f\x7f\x9b\xed\xbb\ +\x25\x5f\xa5\x00\x00\x09\x83\x49\x44\x41\x54\xdb\xb7\xf3\x8e\x77\ +\xbc\x83\x74\x3a\xcd\xe0\xe0\x20\x35\x35\x35\x3e\xaf\xb5\x7a\xf5\ +\x6a\x9e\x7b\xee\x39\x1f\xac\xc3\x67\xf8\x5a\x96\x25\x94\x73\x30\ +\xdf\x22\xd7\xd1\xdd\xdd\x7d\x86\x94\x92\x99\x99\x99\x3d\x13\x13\ +\x13\xaf\x49\x23\x7b\xa1\x50\xf8\xcb\xcb\x2e\xbb\xec\x9f\x55\xbb\ +\x72\x51\x2b\x12\xad\x13\x60\xe9\x78\x25\x0d\x99\x2e\xdb\x88\xb2\ +\x62\x97\xc8\x06\x30\x9a\x0d\xb6\xef\xd8\x46\xc8\x3a\x98\x62\x50\ +\x87\x2b\x99\x4c\x22\x84\xf0\x0f\x9c\x65\x59\x04\x83\x41\x6c\xdb\ +\x7e\x59\x73\x46\x5e\x0e\x20\x92\xf2\xcf\x4d\x38\xdb\xb7\x6f\x47\ +\x4a\xc9\x8f\x7f\xfc\x63\xa6\xa7\xa7\xf1\x3c\x8f\x07\x1e\x78\xc0\ +\x4f\x5e\x55\x8e\xca\xdb\xb4\x69\x93\x5f\xfe\xa2\x4e\x4e\xa1\x50\ +\x38\xc4\x45\xac\x9c\xd5\x78\xea\xa9\xa7\xde\xd6\xd1\xd1\x71\x5b\ +\x24\x12\xe1\xe1\x87\x1f\x5e\x05\x6c\x7d\x15\xa5\xe2\x03\xc0\x69\ +\xe5\xbd\x74\xdf\xbd\x73\xe7\xce\xf2\xc8\x0c\xcf\x41\x9c\x90\xa6\ +\xa6\x74\xa8\x57\x6a\x27\x75\xec\xf1\x20\x26\x21\x9a\x9b\x9b\x39\ +\xfc\xc7\x04\x0e\x3f\x5c\xca\x33\x8d\xc5\x62\x64\xb3\x59\x06\x07\ +\x07\xfb\x75\x5d\x1f\x78\xad\x00\xf1\x1d\x81\x50\x28\xc4\xb6\x6d\ +\xdb\xfc\x69\xa4\xaa\x5d\x41\x75\x54\x55\x26\xf2\x95\x64\xa8\xea\ +\x8b\x5c\x2e\x47\xb1\x58\xf4\xd9\xe3\x4a\xcf\x4b\x4d\x11\x4d\xa7\ +\xd3\x78\x9e\x47\x47\x47\xc7\x7f\x9e\x74\xd2\x49\x45\xd7\x75\xf5\ +\xde\xde\xde\x3b\xe2\xf1\xf8\xd7\x5e\xce\x8d\x1e\x36\xce\x96\x6c\ +\x36\x7b\xcd\x65\x97\x5d\x76\x61\x36\x9b\x45\x08\x41\xa2\x76\x5c\ +\x76\x2e\x33\x85\x15\x0f\xe3\xcc\x04\x91\x19\xd3\xf7\x68\xa5\xe7\ +\x21\x35\x49\x78\x69\x98\x8d\x9b\x36\x52\x5b\x5b\xeb\x03\x52\x39\ +\xe4\x53\x4d\xe9\x56\x71\x57\x30\x78\x70\x5c\xfa\xf4\xf4\xf4\xb2\ +\x97\xcb\xdd\xbd\x6c\x40\x74\x5d\xbf\xfb\xc9\x27\x9f\x7c\x4a\xd7\ +\xf5\x2b\x2f\xba\xe8\xa2\xcb\xd6\xae\x5d\x4b\x5b\x5b\x1b\x9b\x36\ +\x6d\x22\x9d\x4e\x93\x4c\x26\x99\x9b\x9b\x43\xd7\x75\x4e\x38\xe1\ +\x04\x86\x87\x87\x99\x98\x98\xe0\xf4\xd3\x4f\xe7\x85\x17\x5e\x38\ +\x04\x34\xdb\xb6\xfd\x21\x36\xa5\x52\x89\x60\x30\xe8\x7f\x61\xdb\ +\xb6\xa9\xab\xab\xeb\x54\x3f\xfe\xb2\x6b\xd7\xae\x75\xe1\x70\x78\ +\x06\xd0\x82\xc1\x60\x21\x99\x4c\x3e\x70\xa4\x7b\x9d\x9c\x9c\xe4\ +\xe4\x93\x4f\x7e\x7c\xd1\xa2\x45\x6b\x95\x5d\xdb\x37\xb6\x57\x06\ +\x82\x9a\x90\x05\x03\x7d\x26\x22\x0e\xf4\x83\xd0\x6c\x84\x66\xe3\ +\x7a\xae\x1f\x3f\x00\xd4\xd4\xd4\xa0\xe9\x07\x8b\x3b\x2a\x01\x51\ +\x01\xaf\x2a\x5c\x38\xf1\xc4\x13\x89\xc7\xe3\x94\x4a\x25\xaa\xaa\ +\xaa\x0e\x99\x52\xf1\x72\x88\xd4\x97\x0d\xc8\xdc\xdc\xdc\x20\x30\ +\x58\x53\x53\x73\xd6\xce\x9d\x3b\x59\xbe\x7c\x39\x03\x03\x03\xfe\ +\x54\x4f\x25\xca\xae\xeb\x32\x36\x36\xe6\x73\x5d\x3b\x76\xec\xf0\ +\xdb\xe0\x54\x10\x39\x37\x37\xc7\xe1\xe3\x65\x2b\xb8\x2f\x7f\x13\ +\x00\xd9\xdd\xdd\x7d\xc9\x8a\x15\x2b\x2e\x01\xd8\xbf\x7f\x7f\x7e\ +\x74\x74\xb4\x65\x5e\x45\xe8\x53\x53\x53\x4f\xba\xae\x1b\x9f\xe7\ +\x8d\x16\xb5\xb5\xb5\x6d\xac\x2c\xd9\xac\xdc\x10\xe9\x49\xa1\xa4\ +\x40\x49\x29\xc0\xf4\xf4\x34\x3d\x3d\x3d\x7e\x2c\x31\x3b\x3b\x5b\ +\xe6\xaf\xe6\x27\x53\x54\x8e\x16\x51\x80\x54\xd2\x22\x4b\x96\x2c\ +\x61\x7a\x7a\x9a\x52\xa9\x34\x37\x35\x35\x35\x52\x2c\x16\x9d\xa3\ +\x51\xab\xaf\xa8\x6f\xa0\xad\xad\x8d\x8d\x1b\x37\x02\xfc\xc1\x59\ +\x1e\x55\x55\x55\x87\xe7\x57\x08\x85\x42\xb8\xae\xcb\xd4\xd4\x94\ +\x1f\xd9\x2b\x5d\xac\x86\x84\x29\x09\x51\x7f\x03\x22\x97\xcb\x31\ +\x31\x31\xa1\xf4\x74\x64\xc5\x8a\x15\x5f\x57\xc4\xdd\xd6\xad\x5b\ +\xa9\xae\xae\xf6\x83\xd0\xe9\xe9\xe9\x3f\x58\xb2\xe9\x38\x0e\x17\ +\x5e\x78\xa1\xef\x11\x8d\x8f\x8f\xd3\xd8\xd8\xe8\xdf\xbf\x72\x5d\ +\x95\x3a\x52\x3f\xb1\xa1\xa6\xe2\x29\x57\x5d\x55\x8e\xa8\x61\x97\ +\xba\xae\x33\x32\x32\xa2\x00\x7a\x78\xf7\xee\xdd\x97\x1f\xed\x9e\ +\x1e\x35\x20\x9e\xe7\x7d\xed\xd9\x67\x9f\xfd\xb1\x65\x59\x2b\x7b\ +\x7a\x7a\xee\xbd\xf5\xd6\x5b\x69\x6b\x6b\xe3\x67\x3f\xfb\x19\x3b\ +\x76\xec\x40\x08\x41\x36\x9b\x65\xd9\xb2\x65\xf4\xf6\xf6\xfa\xcd\ +\x3d\x8d\x8d\x8d\xec\xdb\xb7\xcf\xd7\xbb\x8a\xda\x3e\x3c\xd2\x55\ +\x29\x60\xe5\x4e\xab\x0d\x52\x41\xa6\xda\x14\x29\x25\xad\xad\xad\ +\xb4\xb5\xb5\x21\x84\x60\x72\x72\x92\xd6\xd6\x56\x3f\x0e\xd8\xbb\ +\x77\xaf\x9f\xd7\xdf\xb5\x6b\x97\xcf\xbf\xa9\x93\x7f\xb8\x81\x56\ +\xb4\x90\xf2\x9e\x0e\xf7\x0c\xd5\xf5\x01\x9f\x48\x1d\x1c\x1c\x64\ +\x6e\x6e\x8e\xaa\xaa\x2a\x2a\x87\x76\xbe\xae\x80\x64\x32\x99\x29\ +\x60\x4a\xd7\xf5\x2a\x4d\xd3\xf8\xdc\xe7\x3e\x47\x43\x43\x03\x89\ +\x44\xc2\xff\x52\x52\x4a\x26\x26\x26\x0e\xa1\xeb\x15\x58\xb1\x58\ +\x8c\xee\xee\x6e\xe2\xf1\xb8\xaf\x12\x2a\x87\x6b\xaa\x7f\x4a\x8a\ +\x94\xe1\xaf\xcc\xb1\x54\x66\xf2\x14\x11\xa8\x0c\xad\x72\x34\x14\ +\xeb\xac\xdc\x54\xc5\x38\x2b\xf0\xd5\xe7\xa8\x83\xa0\x3c\xc2\xca\ +\xc2\x84\xf9\xa1\x39\xfe\xf7\x50\x0e\xcc\xb2\x65\xcb\xe8\xeb\xeb\ +\xc3\x30\x0c\xe2\xf1\xf8\x1d\x42\x08\xaf\x50\x28\x3c\xf3\x86\x00\ +\x52\xa1\x86\x9c\x52\xa9\x54\x0c\x87\xc3\xc5\x64\x32\x19\x8d\x46\ +\xa3\x66\x30\x18\x44\xd7\x75\x7f\x34\xac\x3a\x65\xca\xb0\xaa\x4d\ +\x53\xd5\x8f\x2a\x9a\xd7\x75\xdd\x4f\xff\x56\x66\xd6\x54\x4f\xb8\ +\x92\x10\x21\x84\x2f\x21\x95\x3a\x5e\x01\xa7\x1c\x05\xe5\xc1\xa9\ +\x4d\x57\xaa\x47\x01\xa2\xc6\xc1\x56\x3e\xa7\x0e\x40\x25\x20\x95\ +\x3f\xb7\x51\x55\x55\xe5\x17\x5c\xff\xf6\xb7\xbf\x25\x12\x89\x10\ +\x89\x44\xd8\xb7\x6f\x9f\x3f\x33\xb2\xa9\xa9\x89\xa9\xa9\xa9\x37\ +\x06\x10\xdb\xb6\x9f\xdb\xbe\x7d\x7b\x18\xa0\xbe\xbe\xfe\x37\xdd\ +\xdd\xdd\xe7\x7d\xec\x63\x1f\xe3\xc9\x27\x9f\x64\x60\x60\xc0\x4f\ +\x61\x2a\x43\xaf\x36\x44\xd7\x75\xb2\xd9\xac\xcf\xf7\xd4\xd4\xd4\ +\xf8\x06\x5f\xc5\x33\x2a\xda\xad\x54\x1b\x2a\xd9\xa3\x00\x3b\x7c\ +\xde\x7c\xa5\x24\x05\x02\x01\x7f\x63\xd5\xa6\x2b\xe6\xf9\x70\x8f\ +\x49\x5d\x4f\x79\x81\x4a\x22\x54\x1b\x9f\xca\x8b\x74\x76\x76\xb2\ +\x7c\xf9\x72\x1e\x7b\xec\x31\x3c\xcf\xa3\xa5\xa5\xe5\xff\xe9\x1b\ +\x3c\x5a\x30\x5e\x15\x40\x0e\xcb\x2e\x8a\xba\xba\x3a\xbe\xfe\xf5\ +\xaf\x2b\xf1\x9e\xaf\xda\x2f\x9f\x3a\xd3\x34\xfd\xaa\x14\xb5\x02\ +\x81\x00\x96\x65\x11\x8d\x46\xfd\xd3\xaf\x3c\x17\x55\x90\x66\xcc\ +\xff\x20\x8b\xda\x74\xb5\xb9\xea\xfd\x95\x9b\x5e\x19\x6c\x2a\x37\ +\xfa\x70\x3b\xa1\x24\x44\x49\x9d\x7a\x4e\xc5\x27\x6a\xf3\x95\x9d\ +\x33\x0c\x83\x70\x38\x8c\xe3\x38\xc4\xe3\x71\x9f\x3c\xcc\x66\xb3\ +\x0f\x0d\x0c\x0c\xfc\x4f\xf3\xf0\x2f\xf5\x46\xaa\xac\xc3\xd4\xd7\ +\x1d\xbf\xf9\xcd\x6f\x1e\x14\x42\xc8\x40\x20\xf0\xc5\xf6\xf6\xf6\ +\xea\x8b\x2f\xbe\x98\x1d\x3b\x76\xf8\x11\xbd\x3a\x89\xea\x34\x3a\ +\x8e\x43\x6d\x6d\xad\x5f\xf7\x1a\x0a\x85\x58\xba\x74\x29\xd3\xd3\ +\xd3\x87\x8c\x99\x2d\x16\x8b\xbe\xc4\xd4\xd6\xd6\x1e\x12\x78\x56\ +\x06\x6b\x95\x12\x52\x59\xf5\xa1\x40\x54\xaf\x53\x00\xab\xc1\x6b\ +\xa6\x69\xfa\x41\x9e\x72\xcf\x55\xb0\x17\x0e\x87\x59\xbd\x7a\x35\ +\xdb\xb6\x6d\xf3\x55\x5b\x5d\x5d\x1d\x85\x42\x21\x93\xcb\xe5\x5e\ +\xd5\x5f\x00\x7d\x55\x01\x99\x99\x99\xf9\x69\x45\x94\xfc\xbf\x63\ +\xb1\x58\xf5\x43\x0f\x3d\xe4\x7b\x2b\x95\xbf\xb0\x73\x98\xc7\x46\ +\x2a\x95\xa2\xaa\xaa\x8a\x33\xcf\x3c\x93\xfd\xfb\xf7\xfb\x9b\x52\ +\x39\xa5\x4e\x01\xe2\xba\x2e\xa9\x54\x0a\x28\xf7\xb0\x28\x6f\x4c\ +\x6d\xb4\x02\xa4\x72\x22\xb5\x02\x24\x9b\xcd\x1e\x32\x1d\x55\x1d\ +\x8c\xea\xea\xea\x43\xae\x57\x5d\x5d\x4d\x43\x43\x03\x73\x73\x73\ +\xa4\xd3\x69\xa2\xd1\x28\xae\xeb\x92\xcb\xe5\x0e\xec\xdd\xbb\xf7\ +\x59\x21\x84\x0c\x06\x83\xbf\x79\xb5\x39\xb6\xd7\xac\x7f\xd9\x75\ +\xdd\xe1\xfe\xfe\xfe\x1c\xe0\x09\x21\x4e\xd0\x75\xdd\xac\xae\xae\ +\xf6\x0d\x7d\xc5\x80\x9a\x43\x0c\x78\x22\x91\xa0\xbe\xbe\x1e\xdb\ +\xb6\x89\xc5\x62\x2c\x5d\xba\x94\xdd\xbb\x77\xfb\xaa\x43\xa9\x1b\ +\x15\x67\x08\x21\xfc\x71\xe0\x6a\x38\x65\x65\x85\x79\x3e\x9f\xf7\ +\xd5\x92\x4a\x03\x54\xb2\xd1\x4a\xdb\x68\x9a\x46\x4d\x4d\x8d\xff\ +\x39\xea\xf5\x81\x40\x00\xd7\x75\x79\xea\xa9\xa7\x30\x0c\x83\x50\ +\x28\xf4\x44\x2a\x95\xba\xfc\xb5\xda\xb7\xd7\x0c\x90\x44\x22\xe1\ +\xcf\xea\xee\xec\xec\x1c\xe8\xec\xec\x5c\xf2\x12\xed\x90\x4f\x3f\ +\x78\x9e\xc7\xc2\x85\x0b\x19\x1c\x1c\x24\x12\x89\xf8\x53\xa6\xfd\ +\xde\xbe\x0a\x1a\x46\xd9\x1d\x65\xaf\x14\x58\x87\x4f\xd6\x56\x91\ +\xb9\xa6\x69\xbe\x87\xa7\x24\xa8\xb3\xb3\x13\xc3\x30\x18\x1c\x1c\ +\xf4\x27\x1f\xcd\x57\xce\xa4\x67\x67\x67\x9f\x13\x42\x78\x96\x65\ +\x6d\x7e\x2d\xd3\x02\xaf\x4b\x87\x7f\x2e\x97\xfb\xfe\xf8\xf8\xf8\ +\x02\xca\x6d\x6e\xef\x0b\x87\xc3\xcb\x8e\xd4\xaf\x3d\x33\x33\x43\ +\x20\x10\xe0\x99\x67\x9e\xf1\x37\xf0\xec\xb3\xcf\x66\xe3\xc6\x8d\ +\x68\x9a\xe6\xf7\xa8\x24\x12\x09\xbf\x92\x52\xd9\x0a\xd3\x34\x0f\ +\x99\xbc\x1d\x0c\x06\x7d\x4f\xaf\xb5\xb5\x95\xd9\xd9\xd9\x72\xea\ +\x35\x1a\x65\xe9\xd2\xa5\x0c\x0f\x0f\x93\xcb\xe5\xd0\x34\x4d\xfd\ +\x57\x0a\x21\x84\xe3\x38\xaa\x23\x6c\xdf\xd0\xd0\xd0\xf9\x2f\x96\ +\xf6\x7d\x4b\x01\x32\x3f\x90\xfe\x0b\x2a\x9f\x7c\xc2\x09\x27\xb4\ +\x2e\x58\xb0\x60\x59\x45\xe4\x2b\xc5\x1f\xe0\x39\x2a\xd5\x98\x8a\ +\x69\x2a\xf3\xf8\xd1\x68\xd4\x1f\x31\x58\x5f\x5f\xcf\xf2\xe5\xcb\ +\xd9\xb3\x67\x0f\x75\x75\x75\xe4\x72\x39\x82\xc1\x20\xb9\x5c\x8e\ +\x13\x4f\x3c\x11\x21\x04\xa9\x54\x8a\x44\x22\x41\x47\x47\x07\xef\ +\x7c\xe7\x3b\xf9\xf5\xaf\x7f\x4d\xa1\x50\xa0\xa1\xa1\x81\xde\xde\ +\x5e\x34\x4d\x63\xff\xfe\xfd\x4a\x8d\x89\xc1\xc1\xc1\x6f\x39\x8e\ +\xb3\x0f\x70\x23\x91\xc8\xc0\xe1\xc5\x10\xaf\xd5\x7a\xdd\x67\xae\ +\x6b\x9a\xb6\x40\xd3\xb4\xc8\xfc\xe3\x0f\x76\x77\x77\x7f\xe5\x48\ +\xf3\x3f\x94\x3e\x57\x76\x27\x10\x08\xf8\x86\xd9\xb2\xca\x3f\xb3\ +\x7a\xd5\x55\x57\x71\xdf\x7d\xf7\x11\x0e\x87\xa9\xad\xad\x65\x7a\ +\x7a\xda\x9f\x3e\xb1\x61\xc3\x06\x7e\xfe\xf3\x9f\x33\x37\x37\x47\ +\x57\x57\x17\xdd\xdd\xdd\x3c\xfe\xf8\xe3\xaa\x3a\xdf\x57\x6d\xea\ +\xf7\x15\x5d\xd7\x25\x93\xc9\x9c\x1b\x8f\xc7\x1f\x7f\xbd\xf7\xe7\ +\x0d\x1d\x82\x1f\x0e\x87\x4f\x6b\x6c\x6c\xbc\x4c\xd7\x75\x07\x20\ +\x1a\x8d\x7e\x2a\x18\x0c\x1e\x71\xae\xaf\x9a\x60\xa7\xd4\xd3\xd8\ +\xd8\x18\xd5\xd5\xd5\x38\x8e\xe3\xe7\x24\x14\xf1\x37\x31\x31\x41\ +\x5d\x5d\x9d\x3f\x73\x38\x16\x8b\xf9\x81\x61\xa1\x50\xf0\x6d\xca\ +\xfc\xe8\xf3\x43\x66\xd1\xbf\x11\xe3\x6c\xdf\xd0\x29\x31\x85\x42\ +\x61\xc7\xc8\xc8\xc8\x8e\x0a\xdd\xec\x45\xa3\xd1\x2a\x29\xa5\xb4\ +\x6d\xbb\xcb\x30\x8c\x3f\x3b\x52\xa3\xbd\xb2\x05\xca\x63\x2a\x16\ +\x8b\x7e\x90\xa9\x62\x09\xf5\x6b\x9c\xd9\x6c\x16\xcf\xf3\x76\x4b\ +\x29\x75\xd7\x75\xdd\x64\x32\xf9\xf7\xe3\xe3\xe3\x3f\x79\xb1\xcf\ +\x7e\x23\xc6\xd9\xbe\xa1\x12\x72\x24\xed\x06\xf8\x9c\x7e\x2c\x16\ +\xbb\x5a\xd3\xb4\xd8\x8b\x81\xa2\x96\x69\x9a\x3e\x95\x21\x84\x28\ +\x00\x7b\x8b\xc5\x62\x56\x4a\x29\x63\xb1\x58\x66\x76\x76\x76\xfb\ +\x61\x69\xdd\x63\x79\x04\xc8\xf1\x75\x7c\x1d\x5f\xc7\xd7\xf1\x75\ +\x7c\x1d\x5f\xc7\xd7\xf1\x05\xc0\xff\x05\xf4\xe6\xb0\x9e\xc6\x6e\ +\xd0\xb8\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x03\x7c\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x64\x00\x00\x00\x64\x08\x06\x00\x00\x00\x70\xe2\x95\x54\ +\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\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\x0e\xc4\x00\x00\x0e\xc4\x01\ +\x95\x2b\x0e\x1b\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x03\x03\ +\x0e\x1c\x0e\xa7\xa1\x6f\x29\x00\x00\x02\xfc\x49\x44\x41\x54\x78\ +\xda\xed\xd6\xbf\x6f\x1c\x45\x18\xc6\xf1\xef\xcc\xed\xda\xb1\x0f\ +\x9b\x93\x85\x90\x2d\xb0\x38\x12\x09\x77\x6e\xac\x14\x6e\x10\xe0\ +\x8b\x90\x4b\x37\x14\xc8\x7f\x03\xfc\x01\x54\x27\x51\x42\x81\x28\ +\xdd\xd0\x90\x36\x6d\x30\x8e\x70\x2a\x44\x44\x94\x20\x17\xc8\x0e\ +\x06\x64\x90\xec\xe4\x02\xde\xf3\xde\x9e\xf7\xd7\xec\x50\x1c\x39\ +\x89\x32\x52\xae\x58\xf1\x7c\xa4\xed\x76\xa4\x9d\x7d\xe7\x79\xdf\ +\x01\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\ +\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\ +\x11\x79\x31\x4c\x9d\x3e\x76\x71\x71\xf1\x13\x63\x4c\xf8\x9c\xcb\ +\xa6\x80\xcf\x4e\x4f\x4f\xff\x56\x41\x5e\xb0\xf5\xf5\x75\xdf\x6e\ +\xb7\xf1\xde\x53\x51\x51\xbe\xf9\x94\x97\xae\x4c\x53\x3e\x99\xc6\ +\x9d\xcd\x8c\x5e\xb2\x60\xac\x1f\xef\x2c\x8e\x63\xf6\xf6\xf6\x56\ +\xb2\x2c\x3b\xaa\xc3\x1e\x83\xba\x45\x3a\x4d\x53\x0c\x70\x3f\xff\ +\x85\xce\xf5\x19\x1a\xe1\x05\x99\xbb\xa4\x19\x5e\x81\x24\xa0\x3c\ +\x9f\x22\xfb\x75\x86\xe1\xe1\x2c\x00\x65\x59\x62\x8c\xf1\x75\xd9\ +\x9f\xad\x53\x31\xaa\xaa\x22\xcf\x73\xf2\xbc\xc0\x53\x61\x8d\xe1\ +\xaa\x79\x9f\xcf\x3b\x77\x78\xe7\xf5\x0f\x98\xe7\x1a\x8b\x57\x5b\ +\xd8\x57\x32\x8a\xa2\xa0\x28\x0a\x9c\x73\xb5\x3a\x70\xb5\x4a\x88\ +\x73\x8e\x3c\xcf\xc1\x8f\x26\xc3\x60\x90\xf2\xe1\x7b\x1f\xf3\xd1\ +\xad\x1b\x7c\xbd\xfd\x90\x77\x5f\x3b\xe3\x24\x7d\xc0\x17\xf7\x3f\ +\x25\xcf\x73\xbc\xf7\xcf\x12\xa2\x82\x4c\x82\xf7\x9e\x2c\xcb\x30\ +\x18\x98\x82\xe1\xc0\x31\xd7\x6c\x92\x57\x29\x00\x87\x7f\x1e\xf2\ +\x63\x72\x0b\xe3\x2d\x59\x96\x8d\x53\xa5\x82\x4c\xb8\x65\x19\x00\ +\x0f\x73\xf3\x53\x0c\x86\x43\xa6\x1b\xa3\x79\x51\xe1\x29\x5d\x81\ +\xf7\x8c\x92\xf4\xec\xe6\x52\xa3\x82\xd8\x3a\x26\x24\xcb\x72\x2a\ +\x3c\x2f\xcf\x37\xb9\xfd\xf3\x4d\xba\x37\x6e\xf2\xe0\xf4\x2e\xf7\ +\xfe\xf8\x96\xb7\xdf\xd8\xa2\x28\xf3\x7f\xdf\xcb\xd4\xb2\x26\xa9\ +\x28\x0a\xe2\x38\xc6\x1a\x4b\x32\x57\x71\x99\x35\xf9\xc1\x7d\x45\ +\x75\x6f\x8e\x57\xaf\x65\x1c\x97\xdf\xf0\xfb\x4f\x7b\x44\x8f\x13\ +\xce\xcf\x13\xbc\xf7\xcc\xce\xce\x62\xad\x55\x41\x26\x16\x69\x6b\ +\x31\x18\x4c\x05\x8d\x69\x43\xc3\x86\x7c\xf7\xdb\x97\x5c\xdc\x31\ +\x3c\x79\x94\x90\xfe\xe5\x48\x1e\x3b\x8c\x31\xb5\x4a\x46\x6d\x0b\ +\xe2\x9c\x63\x61\x61\x81\xf0\x6c\xc8\xf7\xdd\x0b\x2e\x9f\x56\x18\ +\x03\xc6\x8e\x1e\x6f\x0c\x41\x10\x8c\x67\x4e\x9d\xd2\x51\xcb\x5b\ +\x56\xb7\xdb\x65\x63\x63\x83\xfd\xfd\x7d\x0e\x0e\x0e\xe8\xf5\x7a\ +\x94\x65\x49\x55\x55\x44\x51\x44\xab\xd5\x22\x49\x12\x7a\xbd\x1e\ +\x8d\x46\x83\x7e\xbf\x8f\xf7\xbe\x3e\x1d\xa0\x6e\x33\xa4\xdd\x6e\ +\x73\x72\x72\xc2\xe6\xe6\x26\x51\x14\xb1\xb4\xb4\xc4\xda\xda\x1a\ +\xdb\xdb\xdb\x78\xef\x69\xb5\x5a\xac\xac\xac\xd0\xe9\x74\x28\xcb\ +\x92\x30\x0c\x6b\x95\x90\x5a\x35\xd9\xd5\xd5\x55\xbf\xbc\xbc\xcc\ +\xd6\xd6\x16\xbb\xbb\xbb\xa3\x01\x6f\xed\xf8\xc7\x47\x51\x44\x18\ +\x86\x78\xef\x49\xd3\x14\xe7\x1c\xce\x39\x8e\x8e\x8e\xde\x1a\x0c\ +\x06\x8f\xd4\xb2\x26\xa0\xdf\xef\xb3\xb3\xb3\x33\x9e\x13\xff\x39\ +\x5d\xc6\x50\x14\xc5\x68\x63\x41\x40\x10\x04\x14\x45\xa1\x6b\xef\ +\xa4\x1c\x1f\x1f\x3f\x04\xca\xe7\x59\x13\x86\xe1\x4c\xb3\xd9\x4c\ +\xe3\x38\x46\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\ +\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\ +\x44\x44\x44\xfe\x4f\xfe\x01\xd1\xc0\x51\x25\xbd\x25\x7f\x60\x00\ +\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x7e\xd7\ +\xff\ +\xd8\xff\xe0\x00\x10\x4a\x46\x49\x46\x00\x01\x01\x00\x00\x01\x00\ +\x01\x00\x00\xff\xdb\x00\x43\x00\x04\x02\x03\x03\x03\x02\x04\x03\ +\x03\x03\x04\x04\x04\x04\x05\x09\x06\x05\x05\x05\x05\x0b\x08\x08\ +\x06\x09\x0d\x0b\x0d\x0d\x0d\x0b\x0c\x0c\x0e\x10\x14\x11\x0e\x0f\ +\x13\x0f\x0c\x0c\x12\x18\x12\x13\x15\x16\x17\x17\x17\x0e\x11\x19\ +\x1b\x19\x16\x1a\x14\x16\x17\x16\xff\xdb\x00\x43\x01\x04\x04\x04\ +\x05\x05\x05\x0a\x06\x06\x0a\x16\x0f\x0c\x0f\x16\x16\x16\x16\x16\ +\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\ +\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\ +\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\xff\xfe\x00\ +\x10\x54\x69\x6d\x65\x20\x66\x6f\x72\x20\x4c\x75\x6e\x63\x68\xff\ +\xc0\x00\x11\x08\x02\x00\x02\x00\x03\x01\x22\x00\x02\x11\x01\x03\ +\x11\x01\xff\xc4\x00\x1b\x00\x00\x02\x03\x01\x01\x01\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x02\x03\x01\x04\x05\x00\x06\x08\xff\ +\xc4\x00\x44\x10\x00\x02\x01\x02\x04\x04\x04\x03\x07\x02\x04\x05\ +\x04\x01\x05\x01\x01\x02\x03\x00\x11\x04\x12\x21\x31\x05\x41\x51\ +\x61\x13\x22\x32\x71\x42\x81\x91\x14\x23\x52\xa1\xb1\xc1\xd1\x62\ +\xe1\x06\x33\x72\xf0\x24\x43\x82\x92\xf1\x15\x53\x73\xa2\x25\x34\ +\x35\x54\x63\x93\xa3\xff\xc4\x00\x19\x01\x01\x01\x01\x01\x01\x01\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x03\x04\x05\ +\xff\xc4\x00\x21\x11\x01\x01\x01\x00\x03\x01\x01\x01\x00\x03\x01\ +\x01\x00\x00\x00\x00\x00\x01\x11\x02\x21\x31\x41\x12\x51\x22\x32\ +\x61\x71\x42\xff\xda\x00\x0c\x03\x01\x00\x02\x11\x03\x11\x00\x3f\ +\x00\xfa\x73\xfc\x3c\xe0\xa6\x23\x07\x32\x67\x92\x16\xcc\xb9\xc5\ +\xcd\xbf\x5a\xb1\x32\xca\xaa\x5e\x17\xce\xa0\x7a\x1f\x5b\x0e\xd5\ +\x9f\x23\xb2\xc9\xf6\x98\x6e\x1c\xa8\x0c\x47\x50\x74\x3f\x3a\xbd\ +\x82\xc5\x26\x29\x43\x0b\x09\x47\xa9\x3a\xfb\x57\xca\x97\xe3\xd5\ +\x7f\xae\x86\x48\xa6\x8b\x35\x95\x18\x1b\x10\x4f\xe9\x44\x6e\x0d\ +\x8d\xfe\xa6\xaa\x4e\xf2\x61\x84\xb0\xe5\xf2\x48\x6e\x1a\x9b\x83\ +\x90\xcb\x85\xbb\x6a\x50\xe5\xbf\x5a\x74\x58\x6f\x97\xa0\xa9\x0a\ +\x0d\xb5\x00\x93\x61\xae\xe6\x80\x9a\xe6\xf3\x44\xc8\x5b\x2d\xfd\ +\x27\xa1\xa8\x0d\x49\xd8\xb1\xa6\x21\x1c\xd4\x30\x3b\x83\xad\xe9\ +\x7e\x73\x1a\x99\x4a\x99\x2d\xe6\x20\xef\xd0\xd0\x7d\xe6\x6b\xf4\ +\xfa\x54\x8d\xc3\x48\x22\x95\xf0\xb9\xf2\xe5\x6f\x21\xd8\x51\xba\ +\x46\xc7\xcf\x18\xbe\xf7\x53\x63\x59\xf8\xec\xdf\x6b\x7c\xdb\x93\ +\x7a\xbb\x87\xb8\xc2\x47\x98\xdc\x90\x48\x3d\xa9\x94\x9f\x11\x44\ +\x16\x8d\x42\xdf\x73\xcc\xfc\xe8\x89\x04\x52\x41\xa9\x56\x07\x4b\ +\xfb\x53\xa0\xdc\xce\x08\x2a\xda\x8a\xcb\xe2\x03\xc3\xc7\x4a\x8a\ +\x6c\x03\x6d\xbd\x68\xc6\x0b\x38\x51\xcc\xda\xb2\xb8\x8c\x82\x4c\ +\x7c\xae\xb7\xb1\x6e\x74\x72\xf0\xc0\xec\x6f\x7b\x93\xce\x8b\x0d\ +\x27\x85\x88\x49\x00\x00\xab\x5e\xf6\xab\x58\x3c\x22\x18\x95\xe6\ +\x04\x97\xf4\xa8\x36\xb0\xea\x6a\x31\x78\x03\x94\xbe\x1d\xf3\x00\ +\x2e\x55\xb7\x1f\xcd\x67\x29\xd6\x93\x32\xba\x87\x8d\xae\x8d\xa8\ +\xa5\x3b\x00\x7a\x9e\x95\x9d\xc3\x71\xde\x00\xf0\xa6\x1f\x76\x5a\ +\xc4\x73\x53\xd6\xb4\xbd\x3a\x83\x70\xda\x86\x1c\xeb\x72\xeb\x38\ +\x15\xb0\xf4\xef\x52\xa1\x6c\x43\x2a\xb0\x3b\xdc\x57\x7c\xbe\x94\ +\x24\xf7\x1f\x5a\x90\xd4\x42\xa3\xcb\x12\x0f\x6b\xff\x00\x35\x24\ +\xa9\x50\xa0\x00\x06\xc0\x0d\xa9\x57\x27\x9d\xba\x69\x44\xa4\xfc\ +\xc5\x5a\x85\x1a\x90\xf7\x36\xb5\x54\xe3\x99\x1b\x18\x3c\x48\xd1\ +\xfe\xed\x75\x61\xda\xae\x29\xaa\x1c\x70\xff\x00\xc6\x8f\xfe\x35\ +\xfd\x2a\xe5\xe1\x9e\xab\xc6\x17\x35\x91\x42\x03\xba\x8d\x98\x7e\ +\xc6\xb5\x78\xba\x80\xd1\x95\xd8\x2e\x5b\xf5\xaa\xbc\x12\x11\x28\ +\x92\x47\x51\xa7\x95\x75\xd2\xe6\xac\xe3\xbe\xf3\x02\x8e\x3e\x12\ +\x2e\x2f\xce\xd6\xfd\xa8\x93\xa5\x7d\x54\xb8\x03\x7a\xec\xca\x7e\ +\x21\x4b\xf8\x87\x6a\x25\xbd\x0b\x13\xb9\x04\xec\x3b\x6e\x6b\x9a\ +\x8a\xd4\x2c\x39\xd4\x80\x47\x31\xbd\x06\x30\xe6\xc0\xca\xed\x9b\ +\x3a\x5b\xce\xbb\x81\xad\xff\x00\x6a\x61\xa8\x55\x0c\x59\x1a\xd9\ +\x64\x52\xa6\xf5\x12\x7f\xc3\xae\x35\x8d\xe4\x42\xc6\x45\x60\xca\ +\x2d\x98\x58\xef\xde\xb4\x25\x5b\x12\x1b\x4d\x6d\x58\x5c\x2d\x12\ +\x3e\x26\x60\x9d\x6d\x73\x6c\xc7\x4d\x79\x56\xfc\x8b\x93\x10\x63\ +\x72\x58\x91\x74\x66\xdc\xf6\xa3\x87\x70\x5f\x55\x9f\x43\x61\xa9\ +\xed\x43\x6b\x6f\xb9\xab\x24\x03\x4b\x75\xa5\x69\x40\x51\x90\x0a\ +\x65\x62\x74\x37\x52\x37\x53\xd4\x57\x05\xae\x22\xf5\x2d\x49\xb6\ +\xed\x6b\x7e\x35\x1f\xa8\xe5\x43\xe2\xc4\x08\x50\xfe\x23\x1d\x95\ +\x2b\x85\xd4\xdc\x13\x7a\x25\x20\x12\x42\x28\x62\x2c\x58\x0d\x6a\ +\x43\x65\x2f\x13\xa8\x8a\x40\x59\x2d\xc8\xfe\x95\x9a\x3c\xad\x60\ +\xac\xec\x3e\x1c\xa4\x0f\x99\x35\x78\x12\x0d\xc6\xe2\xaa\x71\x04\ +\x64\x93\x30\x27\xc3\x7d\x46\xba\x03\x45\x51\xc1\xb7\xbb\x06\x62\ +\x2c\x48\x16\x00\x74\x02\xac\xf0\xd9\x15\x49\x85\x8e\x8e\x7c\xbd\ +\x8d\x67\x83\x46\xad\x6a\x25\x6a\xc6\xb9\x1a\xd7\x0b\x83\x71\xca\ +\xab\xe1\xb1\x4b\x22\x65\x93\xd6\x07\xab\xf1\x7f\x7a\x31\x20\x2c\ +\x43\xe9\x6d\x81\xad\xeb\x18\xa1\xc7\x11\x17\x1c\x4c\x7a\x19\x14\ +\x35\xba\x13\x56\x38\x2c\xb7\x8d\xb0\xa7\x65\x05\x90\xfe\xb4\x9e\ +\x3f\x28\x6c\x4c\x68\x2d\x71\x18\xd7\x99\xbd\x17\x04\x04\x45\x34\ +\xa7\x73\x65\x1d\x7a\xd6\x3f\xfa\x6b\xe2\xe3\x9a\x84\x01\x89\x42\ +\x4d\x9f\x43\x42\x58\x5e\xd7\xd7\xa5\x09\x6e\x95\xa6\x41\x26\x26\ +\x31\x03\x86\x3f\x7c\x01\x51\xa6\xe7\xad\x23\x86\xe1\x8c\x83\xc6\ +\x95\x88\x04\xd8\x2d\xae\x5a\x83\x8a\xa9\x13\x78\xc0\x8b\x4a\x6f\ +\x6e\x95\x67\x0f\x2f\x8d\x1a\xac\x4a\xd0\xaa\x8b\x33\xff\x00\x15\ +\x9f\x6f\x6d\x7c\x5c\x67\x55\xd6\x42\x16\xda\x05\x1a\x9f\xa5\x04\ +\x99\xe7\x50\xa6\xf1\x45\xbe\xbb\xb5\x02\x14\x8c\x5a\x21\x6e\xad\ +\xf1\x1f\x9d\x71\x90\x03\xa9\x37\xf6\xad\xeb\x23\x48\x9a\x31\xf7\ +\x13\x1e\xeb\x20\xd0\xd1\x78\xae\x83\xfe\x22\x2c\xa3\xf1\xa6\xd4\ +\xb5\x95\x76\xd4\x7b\x8a\x62\xb8\xea\xba\xf2\x3c\xea\x46\x73\xd0\ +\xdc\x1d\x88\xe7\x52\x80\xad\xd0\x00\x5c\x1b\x12\x76\x5f\x7f\xe2\ +\x94\x09\x51\x68\xe6\x55\x5e\x4b\x6b\x95\xf6\x34\x48\x6c\x81\x40\ +\xb2\x8b\x9b\x53\xa8\xdb\xc9\xcb\x10\x49\xfc\x2c\xa3\x2d\x03\x62\ +\x10\x3e\x49\x94\xc4\xdd\xb5\x53\x42\x5a\xba\x40\x25\x89\xa3\x6d\ +\xac\x48\x3d\x2d\x56\xa3\x1a\x45\x44\x32\x31\xba\x81\x7d\x39\xd5\ +\x19\xe6\x97\x13\x32\x85\x51\xd1\x54\x1d\xaa\xd4\x66\xd8\x78\xd4\ +\x8f\xf9\x60\x10\x45\x70\xc8\xa6\xe9\x1a\x21\x3a\x5c\x51\x50\x62\ +\xc3\x28\x60\x1d\xf3\xb3\x68\x75\xda\xf5\x54\x48\xfe\x3e\x43\x2b\ +\x65\x24\xa9\x3f\x95\x5d\x8c\xfd\xea\xfb\x8a\xcc\x9c\xda\x57\xff\ +\x00\x51\xa2\xd3\x1d\xc3\x6d\xf6\x93\x98\x5c\x05\x3a\x75\xa5\x63\ +\x70\x46\x3b\xe2\x30\xac\x4a\x83\x7c\xbc\xd6\xbb\x86\xb9\x18\xc5\ +\x5f\xc4\x32\x9f\xa5\x5e\x85\xf2\xbd\xef\xd4\x1a\xcc\xee\x35\x55\ +\xa1\xe2\x90\xa2\x78\x38\xe9\x14\xc8\x79\xef\xcb\xe2\xa7\x60\xd3\ +\x26\x0e\xf9\x95\x83\xbd\xee\xa7\x41\x61\xfd\xeb\x17\xfc\x49\xc3\ +\x8c\x0e\x31\x50\xa9\x31\xc9\x7c\xd6\x37\xb1\xae\xe0\xd8\x99\xe1\ +\xe1\xb6\x8a\x42\xa1\x24\xb6\x52\x34\x37\xd7\x5a\xcc\xe5\x65\xca\ +\xb3\xae\x9b\x6e\xf6\xd1\x6c\x68\x4e\x6b\xf9\xaf\x7a\xa0\x9c\x4b\ +\x12\x18\x1f\x0e\x0f\xfb\x05\x13\x71\x4c\x4b\x10\x7c\x38\x7f\xec\ +\x15\xaf\xd4\x18\xd3\x43\x70\x0f\x5a\x2b\x58\xd5\x7c\x06\x26\x3c\ +\x62\x15\x0b\xe1\xc8\x2e\x72\x03\x70\x45\x34\xe7\xb5\x81\xd2\xb4\ +\x30\x73\x42\x93\x15\x2e\x4a\x95\xd2\xe0\x6e\x28\xa2\x8d\xa2\x4c\ +\xb1\x48\x1d\x7f\x03\x8b\x7d\x0d\x04\x57\x53\xae\xa0\xfe\x54\x38\ +\xfc\x60\xc3\x1f\x0e\x34\x57\x92\xda\x96\xd4\x2f\x6a\x91\xe4\x82\ +\xac\x40\x2a\x40\xf3\x29\xdc\x7f\x6a\x35\x46\x71\x70\x85\x87\x61\ +\x58\xd2\x71\x0c\x49\x95\x9f\xc4\xc8\xea\x97\x19\x74\x02\xda\xdb\ +\xfd\xf5\xa3\xc5\x62\x67\x32\x12\xd3\x39\xb0\x07\xd5\xf3\xab\xf5\ +\x17\xe6\xb4\x71\xb8\x85\xc1\xc4\x4b\x79\xe4\x20\x80\xb7\xf4\xf2\ +\xd6\xb2\xf8\x72\x3e\x27\x14\x91\x90\x3c\xcd\xa9\xb5\x01\xbb\xef\ +\x7d\x79\x5f\x53\x5a\x9c\x1f\x0c\x70\xf0\x99\x9a\xf9\xdc\x59\x54\ +\xe9\x61\xd6\x8f\xf6\xa7\xc8\xb6\xe5\x73\x1c\xa2\xc3\x61\xed\x50\ +\x09\x0d\x70\x6c\x6a\x06\xdb\x1f\xa5\x4d\xbb\x37\xd2\xb6\xca\x8f\ +\x19\xc3\x02\x46\x2a\x35\x16\xd9\xc0\x1e\x93\xd6\x83\x84\xe3\x15\ +\x41\x86\x66\x61\x1b\x7a\x58\x8d\x14\xd6\x88\x3b\x82\x0d\x98\x59\ +\xae\x39\x56\x46\x3b\x0c\xd8\x69\xb2\xda\xe8\x7d\x27\xa8\xac\xde\ +\xae\xc6\xa7\x7d\x35\x9d\x48\xb0\xb8\x20\xf3\x06\xe0\x8a\xeb\x5a\ +\xb1\xf0\x38\xa9\xb0\xc0\x04\x71\x6e\x68\xfb\x1a\xbb\x17\x16\xc3\ +\xb8\x1e\x2c\x45\x49\x3a\xe5\x3b\x55\x39\x41\x8b\x55\x23\x71\xdb\ +\x5f\xf7\xfe\xf9\x50\xc5\x2e\x1e\x60\x0c\x53\x29\xec\x74\x34\x44\ +\x32\xee\x08\x27\x5a\xd0\x48\x36\xac\xfe\x38\x6f\x8d\x5f\xfe\x35\ +\xfd\x2a\xfa\x02\xcc\x00\xdc\x9a\xcd\xe2\xb2\x2c\xb8\xd3\x93\x50\ +\xa0\x28\x3d\x6d\x47\x2f\x0c\xf5\x7f\x84\xa8\x5e\x1c\x08\xbd\xdd\ +\xc9\x3f\x2f\xfc\xd3\xb1\x0b\x9e\x1c\x42\x87\xf4\xb6\x6b\x5b\x9f\ +\x4a\x5f\x0e\x42\x9c\x3e\x3c\xc4\xf9\xae\xc0\x76\xd3\xf8\xa6\xb2\ +\x33\x33\x34\x4c\x15\xdd\x6c\x41\xd8\xd6\xa7\x81\x9a\xa0\x58\x7b\ +\x5e\x8d\x45\x71\x8d\x94\x90\x45\x99\x7c\xae\xbc\xd4\xd4\x81\x58\ +\x29\x14\x2d\x72\x3c\xba\x5f\x99\xa2\x61\xa8\x53\xcf\x5a\x83\x50\ +\x2d\x87\xbf\xd6\x81\xb5\xdf\x5e\xc6\x98\xfb\xd4\x11\x65\x66\xcb\ +\x98\xa8\xbe\x51\xce\xa3\x15\x78\xa6\x1c\xe2\x62\x13\x46\x01\x96\ +\x31\x66\x00\xea\xc3\x91\xab\x03\x12\x24\x68\x0b\xb1\x19\x72\x80\ +\xe0\xe9\xca\xd7\xe9\xd2\x83\x0d\x24\xf2\x44\x25\xcf\x0c\x77\x24\ +\x0f\xbb\xd6\xba\x7c\x1e\x21\xf0\x4c\xf0\xe4\x66\x6b\xa9\xfa\xdf\ +\x4a\x3f\xec\x2d\x19\x90\xac\x84\x11\x6e\x63\xda\x82\xb3\xb8\x57\ +\x11\x95\x30\x82\x2c\x4a\x67\x11\xbe\x43\x7d\xc0\xde\xb4\xe3\xc9\ +\x2c\x62\x48\x5b\x3a\x1f\x91\x1e\xf4\xcb\xbe\x0b\x30\x04\x0a\x16\ +\x02\xd4\xc6\x68\xc7\xc4\x5b\xba\xad\xc7\xd6\xa0\xa8\xb0\x20\x82\ +\x0e\xc7\xad\x40\xa2\x05\x08\xb5\x31\x96\x84\x8b\x54\x90\x68\x5d\ +\x16\x58\x8c\x6c\x6d\xcc\x1e\x95\xcd\xa6\xa6\x87\x29\x27\x36\xa0\ +\xde\xf5\x15\x29\x50\xc7\x21\x46\xdd\x4d\xa8\x41\xe9\x57\xb1\x11\ +\x89\xd4\x5c\x59\xc6\xc7\xaf\x6a\xa2\xc0\xab\x15\x61\x62\x37\xac\ +\x59\x8d\x4a\x90\x4d\x3e\x2c\x49\xf4\xcb\xa8\xda\xe3\x71\x55\x6f\ +\x5d\x7a\x34\xa7\x8f\xc8\x3e\xd0\xb6\xd4\x78\x6a\x01\x1b\x5e\xd5\ +\x73\x87\x00\x38\x54\x40\xf3\x66\xfd\xab\x33\x8a\xbb\xae\x1e\x2c\ +\x4a\x00\x42\xf9\x25\x16\xf5\x74\xbd\x68\xf0\xf9\x23\x6e\x15\x1f\ +\x86\x49\x0a\xc7\x97\x5a\x65\xff\x00\x2a\x3e\x1a\xd6\xe5\xa1\xa8\ +\x0e\x08\x25\xae\x00\xde\x96\xcf\x6e\xbf\x4a\x28\x88\xf2\x86\x1a\ +\xb4\x83\xf2\xb9\xfd\x85\x68\x25\xd5\x64\x70\xf3\x29\x27\xe1\x4b\ +\xe8\xa3\xa5\x10\x60\x14\x28\x00\x01\xb0\x14\xbb\xeb\x5d\x7a\xba\ +\x43\x2c\x6d\xa5\x72\x30\xca\x29\x6c\x6d\xef\xca\xb8\x69\xa5\x5a\ +\x8e\x06\x89\x5a\x92\x0d\x12\xb5\x29\x65\x5a\x8c\x30\x35\x5d\x4d\ +\x12\x35\x4c\x9f\x5c\x40\x24\xa6\xe0\x7a\xf5\xff\x00\xeb\xfc\xd0\ +\x17\x2a\x42\x8b\x67\x6f\x48\x3c\xbb\xd4\x82\x15\x02\x8f\x48\xff\ +\x00\x77\xa9\x08\x9b\x9b\xd4\x11\xde\x84\x3d\xf6\xd6\xa0\xbd\xb7\ +\x23\xeb\x52\x31\x48\x5b\xb1\x36\x0a\x09\x27\xa5\x63\x3b\x8b\xeb\ +\x7b\x9e\xd5\x7f\x1d\x2e\x5c\x26\x50\x48\x69\x3f\x21\x59\x6e\xc1\ +\x98\xef\xd0\x56\x79\x56\xb8\xc1\xe0\x64\xf0\xf1\x68\xcc\x35\x0c\ +\x34\xeb\x5a\x39\x7c\xe5\x17\x5d\x6d\x59\x4e\x03\x32\xdb\x42\x35\ +\xbd\x6a\xc2\x56\x58\xf3\xa9\xf5\x8b\x36\xba\x8e\xbf\x90\xfc\xea\ +\xe2\x68\x64\x4f\x1a\x42\xc5\xc0\x86\xd9\x00\x23\xd6\x3a\x8a\xa7\ +\x2f\x0c\xf0\x30\xe5\x70\x65\xa5\x42\xd9\x9a\xfe\xa1\xa7\x4a\xba\ +\xc7\x31\xe9\xd2\xdc\xaa\x23\x2c\xb2\x7a\x8f\x63\x4d\x92\x86\x3b\ +\xa3\xa7\xad\x19\x7d\xc5\xa8\x49\xb0\xbd\x6f\x78\xae\x48\x56\x39\ +\xb9\xf9\x85\xff\x00\x5a\x5c\x98\x4c\x14\xda\x98\x8c\x6d\xf8\x90\ +\xfe\x76\xac\xfe\x3f\x87\x59\x38\x49\x64\xc3\xe2\x04\xcb\xb8\x37\ +\xb5\x6c\x61\xf1\x98\x4c\x42\x66\x0f\xe0\xb7\x30\xfb\x7c\x8d\x52\ +\x9f\x86\x4c\x83\x3c\x4c\x26\x5e\x76\xdc\x7c\xaa\xab\x2b\x29\x21\ +\x94\xa9\xee\x2d\x54\xde\x2b\x25\x6c\x4b\x8c\x82\x05\xbc\x72\x2c\ +\xb2\x7c\x39\x76\x15\x9a\x03\x4b\x29\x21\x49\x66\xd7\x4d\xeb\xb0\ +\x78\x69\xb1\x0f\x68\xd0\x91\xcc\xf2\x15\xb1\x82\x85\x30\x89\x64\ +\x21\xa4\x3e\xa7\xfe\x29\x9b\xc8\x75\x08\x83\x85\x46\xb1\xb0\x9d\ +\xdb\x33\xa9\xba\x0f\xad\x89\xf9\x55\xb6\x83\x0c\x14\x2f\xd9\xe3\ +\x6f\x28\xd5\xb5\x3b\x51\x2f\x99\x48\xe6\xde\x50\x7d\xcd\xbf\x9a\ +\x97\x20\xb9\x23\x6a\xdc\x92\x33\xb4\x2a\xb0\x2b\x02\x30\xd1\x29\ +\x1b\x10\x2f\x4d\xb9\x66\x24\x9b\x93\x4b\x8f\xcc\xc4\x8e\x5b\x53\ +\x29\x89\x1a\xe5\xa9\xb1\xae\x16\xe6\x6b\x98\xd9\x49\xed\xa5\x29\ +\xd6\xa8\x3a\xae\x56\x50\xc3\x7b\x11\x7a\x9b\x2d\xb6\xbf\x73\x5c\ +\xbb\x91\xc8\x54\x83\x68\xb6\xf0\x22\x3f\xf4\xd4\x18\xb0\xcc\x7c\ +\xf8\x48\x4f\xfd\x34\xc0\xb6\xa8\x22\xf5\x62\x55\x93\x87\xe1\x1e\ +\x5f\xba\xcd\x13\x5b\xad\xc7\xf6\xa0\x64\xe2\x38\x4d\x98\xbc\x63\ +\x6f\x89\x4d\x5a\x37\x0d\x99\x45\x3a\x37\x36\x0c\xa4\x8b\xd1\x91\ +\x6b\x2a\x4c\x76\x25\x90\xa5\xd5\x2f\xbe\x55\xb1\xaa\xca\x09\x6b\ +\x0d\x49\x35\xb9\x2c\x30\x4b\xfe\x64\x22\xfd\x57\x43\x41\x87\xc2\ +\x61\xe1\x93\xc4\x5c\xce\xc3\x60\xc0\x58\x51\xf9\xa7\x4e\x2a\x11\ +\x55\x00\xb0\x55\x02\xdd\x2b\x80\xa9\x00\x93\x73\xb9\xa3\x51\x6a\ +\xd8\x0c\xd8\x78\xe7\x00\xb1\x2b\x22\x8b\x07\x53\x62\x7b\x1a\xa2\ +\xd1\x49\x1b\xb2\x4c\xcc\x59\x45\xc3\x6d\x98\x75\xf7\xad\x20\x34\ +\xa9\x75\x57\xc8\x19\x43\x00\xd6\xb1\xe8\x7f\xf1\x55\xe3\xa2\x56\ +\x4b\x58\x68\x05\xaa\x37\x15\xa3\x26\x16\x17\x37\x19\x93\xdb\x51\ +\x48\x93\x04\xc3\xd0\xe8\x7d\xf4\xb5\x66\xf1\xa7\x54\x9c\x54\x29\ +\x20\xdc\x55\x87\xc2\xce\x2f\x78\xc9\x03\x98\xda\x97\xe1\x3d\xfd\ +\x24\x77\x22\xb3\x94\xe9\x4e\xa1\x73\x46\xa2\xc0\x79\xd7\x4e\x47\ +\x7f\xce\xad\xe0\x98\xae\x0d\x2c\x6d\xe6\x6f\xda\xab\x61\xe1\x97\ +\x13\x8a\x92\x65\x5b\x46\xab\x91\x6f\xa0\x35\x71\x63\x11\xc2\xb1\ +\x83\x7b\x5e\xe7\xbd\x31\x52\x78\x86\x14\x62\x90\x98\xc0\x59\x46\ +\xb6\x03\x47\xfe\xf5\x9d\x83\x90\xc3\x8b\x11\x9f\xf2\xd4\x5e\x71\ +\xd7\xb5\x6c\x00\xf9\x08\x8d\x82\xbf\x22\x6b\x27\x1b\x1f\x87\x2b\ +\x8c\x99\x4b\xbe\x63\xf4\x1f\xbd\xe8\xe5\xfd\x53\xf8\xd7\x39\xd5\ +\x82\xa3\x10\xb6\xf2\xdb\x41\x6a\x5a\x15\x71\x29\x4b\x65\x12\x79\ +\x6c\x3a\xd2\x70\x38\x94\x7c\x11\x85\x9b\x2c\x80\x64\x43\xd6\xfc\ +\xbf\x5a\xbb\xe1\xd9\x02\x46\xb9\x94\x6d\x93\x51\x7a\xd4\xec\x2a\ +\xc8\x72\xe9\x6b\x93\xb5\x09\x4e\xac\x6a\xc1\x85\xef\x72\x8d\x7e\ +\xca\x68\x1d\x0a\x9b\x10\x47\xb8\xa3\x11\x05\x05\xef\xb9\xee\x76\ +\xa8\x2b\x4d\x22\x81\x8e\xb4\x22\x8a\xd2\xe7\x84\x4c\x08\x26\xce\ +\x3d\x2d\xd7\xb5\x3c\xda\xd7\xa0\x61\xa5\xf9\xd4\x65\x66\x3a\xb2\ +\x39\x56\xb8\x23\x7b\xd0\x93\x57\x38\xa2\x66\x8c\x4c\x37\x1e\x56\ +\xfd\xaa\x8b\x1b\x0a\xe7\x7a\x6e\x09\x54\x4b\x14\xb0\x1d\x9d\x0f\ +\xc8\x8d\x69\x5f\xe1\x59\xbe\xe9\xa1\x61\xe5\x67\xca\x3b\x5c\x51\ +\xc6\xc1\x23\x9a\x46\xf4\xa4\x64\x9e\xf5\x47\x81\xb6\x48\xd5\x94\ +\xf9\xbc\x71\x6a\xcf\x96\x26\xe3\x1b\x1a\x82\xcc\x27\xc3\x00\x37\ +\x72\x68\xa6\x53\xe3\xb2\x81\xf1\x1a\x01\x63\x2f\x8a\x0f\x96\x21\ +\x95\x3b\x9e\x66\xba\x32\x33\xbf\x5a\x82\x75\xb0\xff\x00\xc5\x0d\ +\xeb\x97\x46\x6d\x77\xa9\x27\xda\xbb\x9d\x75\x70\xde\xa4\x2a\x90\ +\x6a\x39\x54\xd3\x10\xd0\xd3\x03\x64\x42\xf6\xb9\x1a\x28\xea\x4e\ +\xd4\x90\x69\x80\xda\x4d\xae\x22\xd0\x77\x63\xfc\x0a\x52\x63\xfb\ +\xbb\x82\x09\x63\xbb\x6e\x4d\x48\x24\xea\x7e\x40\xd0\x83\x7a\x9a\ +\x90\x89\x07\x71\x52\x2c\x06\x77\xb2\xa8\xde\x84\x15\x55\x2e\xe6\ +\xca\x39\xd5\x3c\x5e\x20\xcc\xd6\x02\xc8\x36\x14\x5b\x83\x03\x89\ +\x93\xc6\x94\xb9\x03\xa0\x1d\x05\x21\x92\xcd\x75\x36\xa3\x35\x04\ +\x8a\xc3\x65\x5f\xcc\xb5\x67\x0d\x2b\xc3\x2c\x65\x6d\xac\x4e\x4d\ +\xc6\xf5\x5d\x56\xee\x14\x6a\x49\xb7\xbd\x4c\x72\x07\xc4\x62\x82\ +\x6a\x11\x15\x45\xba\x03\x44\xa9\x7e\x3c\x5c\x0f\xeb\x56\x43\xdb\ +\x51\x4f\x50\x1c\x5e\x36\x57\x1d\x8d\x64\x0a\x62\x31\x06\xe0\xdb\ +\xda\xb5\x39\x0c\x69\x6c\xda\xe9\x71\x61\x44\x06\x97\xa4\x61\xf1\ +\x80\x8c\xb3\xeb\xfd\x7c\xfe\x75\x64\xa8\xdc\x5a\xc4\x68\x46\x97\ +\xad\xb3\x5c\xb7\x07\x43\x63\x4d\x12\x39\xd4\xe5\x3d\xca\x82\x69\ +\x2c\x72\xdb\x98\xa9\x57\x61\xa9\x1e\x53\x50\xc3\x73\xb1\x16\x26\ +\xc3\xa0\x16\x15\x22\x81\x5b\x37\xa4\x7c\xcd\x18\xbf\x36\x3f\x41\ +\x4a\x74\x8f\x92\x48\x17\xf1\x3d\xea\x09\x62\xd6\x1a\x8e\x75\x2c\ +\xa0\xcb\x19\x37\x25\x41\x35\x23\x7a\x90\xb3\x05\xd0\x2d\x16\xb7\ +\xd5\x8f\xca\x84\x6d\x5c\x09\x02\xd7\x07\xde\x94\xe2\xa4\x9b\x96\ +\xa8\x28\xdb\x02\x2a\x6f\xad\x10\xd4\x8d\x0d\xc9\xe9\x52\x72\xa8\ +\x55\xb5\x16\x8a\x73\x3b\x2a\x29\x1b\xb1\xb5\x04\xf8\xa8\x20\x66\ +\x4d\x65\x91\x77\x51\xa0\x53\xd0\x9f\xda\xb3\xb1\x12\xc9\x34\x85\ +\xdd\xd2\xe7\x90\x52\x40\xf9\xdc\x55\x6e\x26\xce\x42\x40\x2b\x66\ +\x07\x62\xa6\xf4\x8c\x77\x88\x90\x06\x8c\xb2\xea\x73\x5a\x83\x84\ +\x43\x7c\x33\xb3\xb4\x85\x58\xf9\x47\xa7\xf4\xa7\xcb\x87\x71\x1b\ +\x08\xe5\xf2\x91\xaa\xb6\xa4\x53\xec\x4a\x8b\x8e\x21\x72\xcb\x15\ +\xcd\xbd\x6b\xa7\xe5\x56\x70\xe7\x34\x21\x85\xf2\x9d\x45\x72\x44\ +\x90\xc2\x2d\xe6\x2c\x75\xa6\x40\xb9\x70\xca\xa3\x93\x35\xbd\xaf\ +\x54\xd4\xe1\x44\x05\xeb\x82\xd1\x28\x26\xf6\xd0\x6d\x7a\xd2\x48\ +\x5b\x0b\xd4\x8e\xc0\x9e\xfb\x57\x05\x51\xc8\x5f\xa9\xd4\xd4\xee\ +\x69\x65\xda\xfe\x1f\xfe\xd5\xd7\xfb\xc4\x5d\x8e\x62\x6c\x7b\x0f\ +\xef\x47\x6b\x0d\x28\x5e\xe6\x64\x51\xba\xdc\xb5\xb9\x02\x2a\x48\ +\xa8\x22\x8f\x27\xf5\x1f\xca\xa0\xa1\xe4\x7e\xa2\xa4\x00\x0d\xe9\ +\x38\xec\x49\x45\x31\x2b\x12\xe7\x43\xae\xd5\x65\x6e\x1b\x6d\x7d\ +\xeb\x39\x22\x95\x66\x0e\xf0\x3b\x00\x6e\x47\x5a\xcd\xff\x00\x86\ +\x1f\x02\xb2\xe1\x54\x35\xee\x4d\xcd\xeb\x88\xa3\x12\xac\xad\x65\ +\xb8\x6e\x61\x86\xd5\x05\x3a\xde\xa2\x56\xec\x40\xb0\xb6\xe6\x93\ +\x89\xc2\xfd\xa4\x12\x08\xf1\x53\x4d\x46\x8e\x3a\x1a\xb4\x16\xc2\ +\xc0\x0a\x12\x32\xb6\x61\x7d\x4e\xb4\x62\x62\x48\x0a\xb5\x8d\xee\ +\xa7\x40\x16\xc0\x1b\x5a\xfd\x4d\x44\x5e\x3d\xad\x11\x7d\x39\x29\ +\x35\xbe\x58\x93\x72\x17\xe6\xa2\xa4\x3b\x0f\x4d\x97\xb8\x00\x7e\ +\x95\x9f\xc1\xd6\x03\x3c\xe0\x0c\xcf\x28\xbf\x22\x48\xa6\x61\xf1\ +\xf3\xc5\xe5\x73\xe2\x25\xad\x95\x8d\x6b\xc8\x24\x2d\x7b\x86\x1d\ +\x1e\xc6\xdf\x5a\xcc\xe2\xf0\x2a\x05\x96\x34\x20\x31\xb3\x0e\x86\ +\xb3\x65\x9d\xc3\x2e\xae\x12\xaf\x1a\xc8\x9e\x97\x17\x1d\xbb\x50\ +\x30\xa4\xf0\x96\x27\x0d\x24\x7f\x81\x81\x1e\xd4\xf7\x36\x17\xa7\ +\xde\xd9\xa4\xbe\x8e\xbf\x33\x42\xe6\xf4\xc6\x16\xd4\xee\x69\x46\ +\xa3\x09\xc7\xe9\x82\x3d\xd8\x56\x73\x5c\xe8\x35\x26\xae\x71\x77\ +\xb1\x48\x47\xc2\x2e\xde\xe6\xa9\x62\xa7\x4c\x14\x1e\x2b\x1b\xca\ +\xeb\xf7\x4b\x6d\xbb\xd7\x3e\x57\xb6\xa2\xaf\x1d\x9b\xc2\x85\x70\ +\x68\xd7\x6b\xde\x50\x0e\xe7\x90\xa3\xc3\x44\x62\x96\x08\x94\x5d\ +\xa3\x21\x9d\xbb\x92\x0d\x67\x60\x95\xe7\xc6\x78\xb2\x02\xe1\x4e\ +\x76\xef\x5b\x5c\x31\x95\xf1\xf9\xdf\x51\x18\x2d\x6f\xc4\xfc\xcf\ +\xcb\x6a\xe7\x3b\xba\x6a\xd3\xc8\x71\x39\xb2\x02\x88\xc6\xee\xe7\ +\x7f\x61\x52\xcc\x2c\x15\x45\x94\x0b\x01\xd2\x82\xe5\x9c\xb9\xe7\ +\xb5\x41\x35\xd7\x46\x08\xb5\x85\xcd\x70\x3a\x77\x26\x80\xea\x40\ +\x3c\xb5\x35\x20\xd5\xab\x0c\x06\xa6\xf4\xbb\xd4\x83\x56\xac\x30\ +\x1a\x9b\xd0\x03\x5c\xc7\xc8\x6d\x48\x36\x36\xf3\x02\x3e\xa6\xa3\ +\x0e\x4f\x84\x62\x63\x77\x8d\x89\x3a\xef\x7e\x74\x31\x9c\xc4\x5b\ +\x9d\x4a\x10\x59\xa6\xe6\xf6\x0b\xfe\x91\xce\xa4\x60\x34\x59\x95\ +\x10\xbc\x86\xca\x3f\x3a\x05\xb6\xb7\x36\x00\x5c\x9e\x95\x4b\x19\ +\x3f\x8b\x2d\x97\xd0\xbe\x9a\x6d\xc4\x3c\x4e\x21\xa6\x6e\x8a\x36\ +\x14\xb0\x69\x63\x7a\x9a\xe7\xad\x0c\xb5\x01\x3a\xd4\x1a\x83\xb6\ +\xd5\x27\x2b\x59\xb4\xb8\x3c\xaf\x4c\xb2\x87\x18\x85\x40\xa7\x30\ +\x59\x00\xf8\x81\xa1\xf0\xbc\xb6\xbe\xbd\x68\xd5\x5d\xa0\x75\x00\ +\x06\xb8\x61\x7e\x76\x35\x62\x73\xa6\x59\x19\x46\xb6\x24\x5e\xba\ +\xf6\xda\xb9\x87\x89\x69\xd5\x8f\x9c\x93\xa8\xdb\xb5\x72\x86\xce\ +\x41\xb1\xef\x6a\x52\x41\xab\x7c\x3e\x7c\xad\xe1\x39\xf2\x36\xdd\ +\x8d\x55\xd3\x99\x14\x2e\x5c\x37\x31\xd2\xad\xc5\x5b\x0e\x32\xdc\ +\x30\xfa\xd1\x0b\x5a\xd5\x53\x09\x29\x9a\x1b\x31\xf3\xa0\xb6\xa7\ +\x71\x56\x86\x80\x03\x5d\x18\xb0\x43\xb5\x4d\xc2\xa9\x63\xb2\x8b\ +\xd4\x0a\x56\x39\x98\x61\xec\xa2\xe1\x8f\x98\xda\xa0\x6c\x0d\x9e\ +\x1f\x14\xee\xe4\xdf\xb5\xb6\x14\x42\xa8\xe1\xa7\x96\x2f\x2a\xea\ +\xa7\xe1\x3b\x56\x83\x03\x60\x76\xd3\x50\x29\x9d\x9a\xe0\x6a\x75\ +\xa0\x37\xb5\xaf\xad\x12\x85\x03\xaf\xb9\xa4\x08\x0b\xd3\x10\x12\ +\xac\x01\xb3\x5b\xca\x6f\xce\x81\x4f\x73\x44\x46\x9b\x9f\xad\x31\ +\x31\xf1\x0a\xd0\x49\xe1\xce\xad\xab\x12\xb2\x01\xa1\xbe\xb6\x3d\ +\x0d\x5d\xc0\x60\x1d\x8a\xc9\x88\x5c\x89\xbd\xb9\xb5\x5c\x8f\xcc\ +\xb9\x5c\x93\xd6\xfa\xdb\xda\x8a\x16\x24\x34\x6e\xc1\x9a\x33\x6b\ +\xf5\x1c\xa8\x9c\x61\xd1\x46\xd7\x94\x20\x00\x28\x16\x00\x72\xa7\ +\x0d\x28\x10\x5b\x5b\x6b\x46\x2b\x71\x9a\x15\x48\xd5\x8b\x91\x60\ +\x35\x3d\xab\x91\x6d\x1a\x8b\x58\xda\xf6\xe9\x7d\x69\x8c\xb7\x0a\ +\xa7\x62\x75\xee\x00\xbf\xeb\x6a\xe6\x1a\x9d\x75\xa4\x16\xe3\xc8\ +\x7a\xda\xa4\x0b\x00\x3a\x57\x38\xf2\xdb\xae\x82\x8c\x81\x7a\x92\ +\x02\xde\x88\x0b\x54\xd7\x54\x9c\xc4\x2a\x96\x3b\x28\xb9\xa8\x41\ +\x65\xd7\xd4\x75\x63\xd4\xd4\x4d\xfe\x4b\xdc\x5c\x65\x35\x26\xe0\ +\xdb\xa6\xf5\x24\xd4\x13\x6a\x16\xbd\xea\x00\x26\xa4\xe3\xbd\x71\ +\x2d\xc8\xfe\x75\x39\x4d\x2e\x50\xd2\x44\x52\x3b\x00\x77\x73\xb7\ +\xb0\xeb\x52\x55\xe2\x52\xa3\x32\x84\x37\x65\xdd\x87\xe9\x44\x98\ +\xd4\xca\x03\xa3\x16\xe7\x6e\x74\xa9\x30\x53\x2f\xa4\x07\x03\xf0\ +\xd4\x70\xf4\x07\x17\xe6\xf8\x41\x36\x35\xcf\x6e\x95\xb5\x67\x71\ +\x75\x80\x01\xcb\x3b\xd8\x9a\x0c\xe9\x98\xa4\x9f\x76\xdf\x85\xb9\ +\xd3\x8e\xa6\xe6\xb9\x80\x6b\x66\x45\x6b\x6d\x71\xb5\x69\x00\x45\ +\xa6\x9f\x91\xa9\x29\x6e\x67\xf2\xa9\x78\xe3\x65\x39\xa3\x5d\xb7\ +\x02\xc4\x50\xc4\xd9\xe0\x46\xce\x3d\x3e\x6b\x9a\x52\x0a\xeb\xea\ +\x34\xb9\x21\x57\x86\x44\x37\x62\xca\x48\xbf\x5a\x6a\xb2\x35\xc2\ +\x48\xac\x57\x70\x2a\x50\x0c\xe3\xbe\x94\x16\x3f\x0a\x39\x71\x4c\ +\xa6\xde\x64\x23\x5e\xb5\x66\xe0\xc9\xa6\xc2\xa8\xc8\x4c\x38\x9b\ +\x8b\x82\x8f\x71\x7a\xbe\xb9\x58\x67\x8c\xdd\x48\xbd\xeb\x9c\x34\ +\x12\x52\x98\x84\x46\x91\xfd\x2b\xaf\xbf\x6a\x73\x8b\xd6\x6f\x13\ +\x9c\x3b\x78\x69\xe8\x53\xf5\xef\x45\xb9\x14\x21\x4f\x8d\x8c\xcc\ +\xfa\xdc\x96\x3e\xc3\x5a\xc1\xe2\x18\x89\x31\x78\xb2\xe7\x5b\x9b\ +\x28\xe8\x39\x0a\xdb\xc3\xb0\x13\x1c\xc6\xc0\xa9\x1f\x95\x52\x8b\ +\x87\x4d\x83\x66\xc4\x4c\x97\x0a\x6d\x19\xe4\x4f\x5a\xe3\xca\x5b\ +\x1b\x82\xc2\xa1\xc3\x44\xaa\x06\xb1\x83\x24\x96\xeb\xc8\x55\xbe\ +\x10\xa0\x49\x3e\x97\x29\x18\x5b\xdf\xbe\xbf\x9d\x54\x04\x29\x8a\ +\x36\xf5\x4a\x73\xb0\xe7\x94\x6d\xf9\xd5\xae\x18\x24\x2d\x3a\x44\ +\xe3\xc4\xca\x0b\xb7\x25\x37\xda\x9e\x3e\xaa\xb2\xc0\x8f\x50\x23\ +\xde\x84\xef\x40\x1a\x68\x0d\xb1\x0d\x9e\x36\x3a\x38\xd6\xd4\x63\ +\x23\x1f\x2c\xa8\x49\xd8\x66\xad\x00\x8b\x8b\xe9\x7b\x9a\x91\xf4\ +\xa2\x64\x65\x17\x2a\x6d\xd6\xa3\x42\x2a\x28\x6b\x01\x52\xa7\xad\ +\x44\xa6\x28\x55\x5a\x5c\xde\x6d\x94\x6f\x45\x04\xb1\xcf\x71\x1e\ +\x60\x47\x23\xce\xa0\x91\x6e\xf5\xc4\x12\x35\x36\xed\x53\xb5\x48\ +\xda\xb4\x10\x54\x88\x88\x5d\x59\xfc\x8b\xee\x69\xae\x6e\xe6\xdb\ +\x00\x05\x40\x03\xc6\x4e\xaa\x85\x80\xbf\x3b\xef\x43\x23\xac\x51\ +\xf8\x8d\xaf\x41\xd6\xa4\x5f\x10\x97\x22\x78\x2a\x75\x6d\x5b\xf8\ +\xaa\x60\x9a\xe7\x66\x77\x2e\xc6\xe4\x9b\x93\x52\x39\x56\x6b\x43\ +\x02\xa7\x95\x08\x3a\x51\x0d\xeb\x29\x04\x50\xb0\x60\xd7\xb5\xc0\ +\xa6\xd8\x74\xa8\x75\xb8\x22\xfb\xd3\x88\xef\x05\xf9\x21\x3d\xc6\ +\xb5\x24\xac\x0c\x1a\x56\xb3\x0f\x4a\x0d\xc9\xac\xd7\x5c\x4c\x1e\ +\x4b\x48\x8c\xdb\x00\x77\xab\x98\x18\x4e\x1d\x3c\x59\x35\x95\x87\ +\x97\x36\xa5\x7b\xd3\x2a\x31\x87\x84\x8b\x13\x0b\x11\x76\x3e\xe7\ +\x95\x72\x6a\x5a\xdf\x2a\xeb\xf5\xe7\xbd\x4d\xea\x4e\x51\x94\x00\ +\x45\x8f\x5e\xb5\x22\xba\xbb\x2e\x9b\x9f\xad\x21\x31\xb9\x49\x43\ +\x8d\xc7\x3a\xd2\x84\x89\x22\xce\x9a\x8b\xed\xcc\x56\x51\x36\x36\ +\x3a\x53\x20\x91\xd1\xcb\x46\xc4\x5a\x99\x55\x8d\x4b\x54\xa1\x00\ +\x12\xc7\xcb\x6b\x9b\xf3\x15\x49\x71\x92\x81\x62\x15\xbd\xc5\x41\ +\xc4\xcb\x23\x58\x90\x01\xd0\xe5\x00\x56\xb5\x9c\x58\xc2\x61\x85\ +\xbc\x56\x0d\x72\x6e\xa8\x3e\x1e\x97\xa7\x15\xb1\x25\x9e\xc7\x9d\ +\xda\xb3\x56\x79\x64\x46\x57\x91\x89\x89\xb2\x93\xd7\xa5\x40\xd7\ +\x5b\xd1\x2c\x58\xd4\x02\xfa\x06\x53\xff\x00\x50\xae\x60\x41\xda\ +\xb3\x05\x36\x09\xe4\x8d\xb4\x37\x1f\x84\xed\x4f\xe9\x62\xfa\xd3\ +\x06\xd4\xb8\xd8\x3a\x07\x5d\x9b\xf2\xa6\x2e\xd5\xa0\x20\x01\xde\ +\xa0\x69\xc4\xd4\x2e\xc6\x31\x71\xf2\xa2\x5d\xaa\x20\xb1\xe2\x33\ +\x5f\x70\x2c\xbe\xd5\xa4\xb1\xa0\x52\x49\xb0\x1b\x93\x47\x1d\x9a\ +\xc5\x48\x61\xd4\x1a\x4e\x25\x4b\x61\xca\xdf\x42\xcb\x7f\xad\x48\ +\xc3\xc6\x8f\x65\x2c\x17\x9a\xdf\x46\xa5\x91\xe6\x2e\xf7\x43\xa6\ +\xc0\xf6\xbe\xff\x00\xef\xb5\x1e\x45\xb6\xda\xf5\xe7\x5d\x1f\xa6\ +\xf6\xde\x8a\x94\x05\x8d\x43\x66\xd4\x9e\xf4\x43\x7a\x16\x34\x4a\ +\x74\xd6\xa4\x9a\xea\xeb\x8a\x1c\xc2\x94\xe9\x54\xb2\x15\x07\x5e\ +\x55\xc0\xb1\x17\x68\xf5\xff\x00\x58\xa1\x2c\x7a\xd4\x66\xd6\x84\ +\x98\x9d\x1e\xfb\x02\x0e\xa0\x9d\xa8\xb3\x0b\x79\x6c\xdd\xf6\x1f\ +\x5f\xe2\x80\xb2\x8f\x31\x03\xdf\x2d\xeb\xb3\x12\x6e\xdf\x2e\xd5\ +\x21\x9b\x11\xad\xdf\xb5\xac\xbf\xef\xde\xf4\x2e\xe6\xfe\x60\x2d\ +\xd6\xf5\xd7\xbd\x0b\x79\xc6\x50\x7d\xcf\x4a\x92\x6f\xad\x03\xa8\ +\xfb\x44\x72\x58\x5c\xdd\x4f\x7d\x28\xc0\x00\x58\x72\xa8\x27\xfe\ +\x2a\x34\xe8\xa4\x9a\xaa\x75\xaa\x40\xa3\xcb\x50\xc2\xc6\xa4\x5c\ +\xc8\xcd\x19\x55\x60\xb9\xb4\x24\xf4\xa4\xc7\x87\x85\x37\x5c\xe7\ +\xab\x6d\x56\x0d\x09\xd2\x8b\x09\x5e\x16\x49\x43\xc4\xaa\x0d\xac\ +\xcb\x7b\x5c\x51\x33\x0c\xc0\x15\x74\x27\x6b\xda\xc7\xe6\x2a\x49\ +\xa8\x60\x0a\x95\x61\x70\x68\x2a\x7c\x4f\x04\x66\x63\x34\x63\xcd\ +\x6f\x32\xdb\x53\x59\x2a\xf3\xe1\xa5\x25\x4b\x46\xdb\x11\xd2\xb7\ +\x46\x60\xc6\x27\x60\x40\x17\x43\x6d\xfb\x52\x78\x94\x69\x36\x19\ +\xdd\x96\xef\x18\xba\xd8\x7a\x8f\x4a\xc7\x2e\x3b\xdc\x32\xa8\xcb\ +\x8e\x57\x87\xc1\xb8\x49\xd8\x02\x75\xdc\x7f\x35\x9d\x38\x2a\x6c\ +\x45\x88\xe5\x59\xf8\xa9\x1d\xe5\x69\x09\xb3\x5f\x97\x2a\xbd\x04\ +\x87\x11\x82\x59\x08\xf3\x29\xc8\xdd\xfa\x57\x1f\xd7\xe9\xbc\xc1\ +\x61\x20\x32\xbd\xce\x8a\x37\x35\x7c\xb9\x06\xc0\x0c\xbb\x65\x23\ +\x4a\xe5\x8c\x43\x08\x8c\x6f\xbb\x77\x34\x27\x7a\xde\x63\x2c\xdf\ +\xf1\x07\x0e\xcf\x3a\xe2\xa2\x94\x45\x1e\x50\xa7\xa8\xf6\xa6\x70\ +\x22\x82\x39\xa1\x8c\x10\xa1\x6f\x73\xbb\x1b\xef\x57\x27\x8f\xc6\ +\xc2\xcb\x0d\xae\x4a\xdd\x7d\xc5\x65\xf0\x79\x44\x38\xd0\x1b\x69\ +\x01\x43\xaf\x5a\xc5\x92\x72\xd3\xf1\xa2\x48\xca\x54\x8b\xa9\xd0\ +\x8a\x50\x83\x0a\x3f\xe4\x9f\xfb\xcd\x36\x45\x2a\xc5\x48\xb5\x42\ +\x0b\xb0\x1d\x6b\x55\x17\x88\xfb\x98\x0c\xb0\xb3\x26\x52\x01\x52\ +\xd7\x06\x81\x31\x98\x72\x2e\xca\xea\x7a\x0d\x41\xa1\xc5\xbb\xcf\ +\x29\xc3\xc2\x9a\x29\xd7\xa9\x34\x71\x61\x22\x44\xfb\xe0\x5d\x8f\ +\x20\x6c\x05\x1d\xef\x49\x59\xd9\xf1\x78\xbf\x28\xb6\x6d\x85\xf6\ +\x14\xd9\x60\x6c\x32\x89\x92\x4b\xd8\xd8\xe9\x6a\x60\xc3\x45\x71\ +\xe1\x33\xc6\xc0\xe8\x77\xae\xc7\x44\xde\x5f\x1b\x13\x7e\x8b\x60\ +\x09\xa3\x3e\xa3\xa1\x94\x4d\x00\x93\x2e\x53\x7b\x1a\x9b\xda\xa8\ +\xe0\x38\xa6\x0f\x33\x61\x56\x17\x36\x37\x52\xc6\xc4\x9a\x62\xf1\ +\x34\xcc\x73\x61\x11\x11\x7d\x44\xb1\xbd\x33\x94\xfe\xac\x5a\x9a\ +\xcb\x87\x33\x92\x57\xc2\x20\x83\xfb\x55\x4c\x64\xad\x24\xd7\x61\ +\x6b\x01\xa7\x4a\xa9\x8d\xe3\x4d\x89\x4f\x0f\x09\x04\x6a\x11\xae\ +\xaa\xe7\xd5\xdf\x5e\x74\x2f\xc5\x1d\x90\xc9\x16\x1a\x1c\xc3\xd6\ +\x18\x6a\xa7\xb8\xac\xde\x70\xc9\x56\x2a\x41\xe5\x49\xc0\x71\x11\ +\x89\xc4\x24\x32\xe1\xa3\x05\xcd\x8b\x2e\x96\xf9\x53\xf2\x9f\x10\ +\xa2\x82\x4d\xed\xa5\x32\xcb\xe2\x12\xd1\xa8\xa7\xc1\x83\x00\x03\ +\x33\x5b\xfa\x56\xad\x45\x1e\x1d\x76\x88\x1f\xf5\x1b\xd3\x38\x8d\ +\x51\x14\x68\x8c\xc2\xe0\x6d\xb9\xab\x86\x08\x1e\xf6\x4c\xa6\xc4\ +\xe8\x74\xdb\xa5\x67\x62\xa2\xc5\x62\x2f\xe1\x36\x74\x1b\x22\xe9\ +\x6f\x95\x36\x62\xd5\xec\x3c\xb1\x4a\xf3\x0c\xa1\x4b\x1b\xc7\xdb\ +\xda\xa8\xc6\xcd\x98\xa9\xdc\x1a\xb3\xe2\x69\x1e\x1c\xc5\x95\xa2\ +\x6d\x5c\x0e\x55\x5d\x47\x9d\x18\x1b\xe6\x4b\x93\xd6\x8a\xa0\xc5\ +\x10\xa8\x5a\x9a\x88\xb4\xb5\xed\x52\x37\xb6\x95\x0a\x68\x59\x19\ +\xd8\xb0\xd8\x9d\x29\x64\x65\x14\x9b\x9b\xd7\x01\xc8\x0a\x88\x83\ +\xa9\xf3\x03\x6f\xd2\x8c\x6a\x34\x37\xa5\x04\xae\xc3\xa9\xa2\x16\ +\x45\xcf\x6d\x07\xa4\x75\x3d\x05\x43\x0b\x2e\x7b\x85\x09\xa9\x27\ +\xa5\x70\x60\xe0\x4a\xc4\xa9\x22\xc8\xbf\x84\x75\xf7\x35\x27\x22\ +\xf8\x51\xe5\x24\x66\x26\xec\x7b\xd7\x66\x3c\x87\xd6\xac\x43\x84\ +\x77\x50\xc6\xc8\xa7\x9b\x6e\x69\xc9\x84\x81\x46\xa5\x98\xfd\x29\ +\xca\xb5\x48\x13\xf8\x4f\xca\xb9\x58\xb3\x10\x45\xb4\xab\xb2\x61\ +\x52\xc4\xc6\xc4\x11\xc8\xd5\x2d\x4c\x9a\x82\x32\xe8\x6f\x56\x25\ +\xae\x1f\x29\x56\x31\x9d\x9b\x6f\x7a\xbd\x01\xba\xeb\x58\xf9\xd8\ +\x3f\x90\x6c\x77\xad\xa5\xb1\x01\x80\xd0\x80\x45\xab\x5c\x45\x31\ +\x05\xcd\xaa\xb9\x97\x2e\x3d\xa6\xb1\x2b\x9a\xd7\xb7\x2a\xb5\x0f\ +\xa8\x77\xa1\x89\x8a\xc0\x97\x50\x57\x28\xfe\xf5\xb0\x31\x22\x3b\ +\xaa\x23\x06\xbf\x98\xf6\x03\x5f\xd6\x8c\x6b\xf3\xaa\x39\xbe\xcf\ +\x8b\xce\x05\xc1\x1b\x7b\xd5\xd6\x60\xa0\x1e\xa0\x10\x29\x94\x25\ +\x5a\xea\x3d\xa8\xae\x6d\xbd\x2d\x76\xb7\x4d\x28\x81\xa4\x26\x88\ +\x11\x6a\x1b\xd0\x96\xb5\x48\x4c\x45\x09\x34\x2c\xff\x00\x2a\x0c\ +\xe3\x6b\x8f\xad\x1a\x70\xcb\xf7\xae\x2c\x05\x29\x9a\xc3\x5a\x12\ +\xe4\xec\x3e\xb4\x69\xc1\xca\xcd\x75\x03\xad\xea\x73\x6b\x4b\x5d\ +\xfa\x93\xce\x88\x54\x86\x4f\x97\xb5\xf5\x34\xd4\x17\x00\x2e\xdc\ +\xad\x42\x8a\x58\x58\x0b\xde\x80\x2c\xda\xc5\x19\xd7\x62\xdf\x86\ +\x90\x99\xa7\x0a\x08\x89\x73\x11\xbb\x72\x14\x58\x24\x60\x8d\x2c\ +\x9e\xb9\x3f\x4a\x88\xb0\x8c\x8b\xe6\x90\x38\xbd\xec\x05\x81\xf7\ +\xa6\xc6\x7c\xbb\x9b\x8a\x64\xbb\xda\x15\x03\xef\xbe\xd4\x67\x6a\ +\x5c\x84\x09\x3c\xc7\x4b\x5c\x55\x40\x49\xb8\xb8\x04\xd0\x33\x5d\ +\x8a\xda\xdf\x3a\xe9\x65\xb9\xb2\x7d\x6b\x88\x0a\x2c\x3e\x66\x83\ +\x11\x41\x23\x85\x5b\xd4\xbb\x59\x49\xe9\x55\xee\xce\xf7\x35\x9b\ +\x49\x81\x6e\xa4\x1d\x58\x8b\xdf\xa1\xaa\x78\xec\x40\x66\x40\x9b\ +\x2f\xab\xdf\x9d\x5b\x53\xf7\x83\xde\xb2\xb1\x0d\x7c\x64\xeb\x71\ +\x96\xf9\x94\x74\xbe\xf5\x9e\x57\xa3\x18\xdc\x6a\x1f\x07\x18\xf6\ +\x5b\x23\x1b\xaf\x71\x45\xfe\x1c\x90\x0e\x21\xe1\xc8\x7e\xed\x81\ +\x2c\x3a\x5b\x9d\x5e\xc5\xc2\xb8\xb8\x7c\x22\x40\x75\xf4\x13\xfa\ +\x56\x56\x0d\x5a\x0e\x20\x61\x95\x4a\xb3\x02\xba\xf2\xbd\x70\xb3\ +\x39\x6b\x7f\x1e\x8a\x60\x44\x87\x36\xf4\xa3\xbd\x55\xc1\xe3\x8a\ +\x0f\x03\x11\x72\xb7\xd1\x8e\xeb\x57\x19\x48\x20\x8d\x41\xd8\x8e\ +\x75\xd3\x75\x90\x83\x95\x83\x0e\x55\x9d\xc5\xb0\x6c\x92\x36\x22\ +\x11\x78\x98\xdf\x4f\x84\xd6\x8b\x29\x1a\x10\x45\x72\x12\xbb\x73\ +\xde\xfc\xe8\xb3\x54\xac\xfc\x16\x39\x72\x88\xb1\x37\x2a\x36\x7e\ +\x62\xad\x23\xc0\xd6\x29\x89\x8c\xdf\x5d\x4d\x88\xa8\xc4\x61\x30\ +\xb3\xfa\x94\xc4\xdd\x50\x68\x7e\x55\x56\x4e\x16\x6f\xf7\x58\x88\ +\xdb\xb3\x79\x68\xff\x00\x28\x57\xd7\xcc\x09\x59\xa2\xb7\x36\x0c\ +\x29\x12\x62\xb0\x48\x4e\x69\xcb\x11\xc9\x53\x7f\x9d\x51\x7e\x1d\ +\x8b\x52\x09\x8b\x32\xdf\x52\xa6\xf5\x57\x1c\x78\x96\x1f\x10\x50\ +\x61\x7e\xef\xe1\x1e\x1d\xc5\xa8\xbc\xac\xf8\xa4\x5d\xc4\x71\x57\ +\x23\x26\x1a\x31\x10\x23\x56\xdd\xbe\xb5\x51\xdd\x84\xb9\x14\xe7\ +\xc4\xb0\xcc\x4b\x1d\x10\x75\x34\x98\xb1\x2c\x49\x69\xf0\x91\x8c\ +\xbb\xe5\x26\xff\x00\x41\x54\x31\x3c\x59\xa2\xe2\x06\x58\xf0\xec\ +\x88\xde\xa2\x41\x0c\x47\x6e\x95\xca\xf2\xfb\x6b\x58\xb1\x89\xc2\ +\xa6\x1d\xd5\xdf\x10\xac\xc4\xde\xda\xaf\xf2\x68\x31\xf8\xb9\x31\ +\x01\x54\xbe\x60\xa3\x5b\x0b\x02\x7a\xda\x93\x2a\xf8\x89\xe3\xc4\ +\xe6\x44\x6d\xcf\x31\xef\x4a\xbd\x62\xdf\xe1\xc1\x03\x56\xa3\x2e\ +\x71\x38\x42\xba\xc9\x21\x2a\x6d\xbb\x27\x7a\xa8\x0d\x6d\xff\x00\ +\x87\x11\x15\xd3\x13\x3a\x80\x21\xd1\x6f\xbe\xa6\xf4\xf1\x9b\x55\ +\xab\x5c\x23\x87\x36\x1f\x33\x31\xb4\x8c\x37\xe4\x83\xf9\xad\x18\ +\x55\x21\x5c\xb1\xdf\xbb\x1d\xcd\x40\x91\x65\x17\x8e\x55\x23\xa5\ +\xec\x6a\x76\xd2\xbd\x32\x49\xe3\x14\x60\xd1\x03\x4b\x06\x8d\x01\ +\x63\x60\x09\x34\x83\x22\x60\x1a\xe7\x60\x09\x3e\xd5\xd8\x13\x93\ +\x04\xad\xac\x62\xec\xcd\xd6\xdc\xa9\x32\x9c\xc5\x70\xe8\x41\x67\ +\x20\xc9\x6d\x40\x14\xeb\xac\x85\x93\x65\x71\x94\x76\x1c\xa9\x4a\ +\x98\xb9\xd2\x46\x00\x2a\xbe\x5d\xd9\x86\xff\x00\x2a\x59\x66\x73\ +\x76\x37\xa5\xa0\x14\xc1\x58\x68\x42\xa4\x50\xd7\x7c\x27\xda\xa4\ +\x33\xf8\x79\x9e\x42\x8f\x9d\x00\xd0\xd8\x68\x28\x97\x6a\x60\xa2\ +\xe7\x50\x45\xcf\x7a\xea\x95\x3e\x60\x06\xa7\x90\x1b\xd2\x02\xaa\ +\xb2\xe2\x0c\x24\xb3\xac\x76\x39\x07\xc4\xd5\xa1\x87\xc3\xa4\x07\ +\xc5\x94\x03\x21\xe5\xc9\x6a\xbc\x90\x7d\x90\x7d\xa8\x00\x25\x63\ +\x62\x06\xb9\x68\xf0\xb3\x4f\x89\x3e\x75\x40\xa3\x98\x16\xb5\x33\ +\xaa\xaa\xcb\x48\xa4\xdc\xb1\xd7\x99\x15\xc4\x81\xb9\x1f\x5a\x51\ +\x56\x67\x0a\x4d\xc0\xfc\xaa\x7c\x21\x9a\xf7\xb0\xe9\x4b\x26\xd5\ +\x7c\x72\x82\x4c\x80\x00\x6d\xaf\x7a\x70\x04\x68\x18\xfc\xea\x55\ +\x41\x3e\x7d\x6f\xa1\x1d\xaa\x4c\xf1\x7a\xd2\xe1\x6d\x9b\x0c\xc2\ +\xf7\x28\x74\xf6\xac\xe9\x30\xec\x98\x96\x41\x7c\xbc\xb5\xb5\xe9\ +\xd8\x1c\xd0\xe2\x75\x07\x2b\x0b\x1a\xb8\xf5\x5a\xad\x50\xc5\x41\ +\x3d\x05\xc5\x14\x63\x2d\xd0\xdb\xf1\x0f\xdc\x7d\x7f\x5a\x50\x0f\ +\x7c\xad\x6b\x5f\x53\x45\x24\x81\x02\x3b\x1b\x0c\xc5\x49\xec\x45\ +\x74\x64\xae\x27\x1d\xd2\x36\x52\x6f\xaa\xfc\xea\xc3\x00\xa7\x28\ +\xdc\x00\x09\xf9\x50\x0c\xb3\x48\x1a\xf7\x8e\x3d\x8f\x26\x34\x4e\ +\x75\x26\xa4\x90\x6d\x5c\x1a\x80\x1a\xea\x92\x58\x96\xbd\xc9\x02\ +\xfb\x50\xb5\xed\xeb\x6f\xad\x40\x3e\x51\xdc\x57\x1a\x90\x6c\x4f\ +\xa8\xde\xd5\x24\x0e\x82\xba\xf5\x0c\x68\x48\x20\x03\xa5\x75\xea\ +\x2a\x54\x5c\xda\x84\x25\x37\x15\x18\xcc\x4a\xe1\x80\x45\x01\xe5\ +\x22\xf6\x3b\x20\xea\x6b\x95\xd4\x11\x93\xef\x09\x3c\x81\xb0\xf9\ +\xd6\x5c\xce\xcf\x33\xb3\x1b\xb3\x31\x2c\x7a\x9a\xad\xc8\xa2\xcb\ +\x62\xf1\x32\x8b\x3e\x25\xb2\xfe\x18\xd7\x2d\xe8\xb0\xb8\x89\x62\ +\x23\xc3\x62\x00\x37\xb7\x5a\xab\x1d\x59\xc1\x46\x65\x9d\x63\x51\ +\xab\x1b\x51\xde\x9a\xdd\x27\xee\xc3\x81\xba\x83\x6a\x15\x4d\x2f\ +\x7d\x4e\xa6\x9c\x40\xd8\x6c\x05\x85\x01\x16\x3a\x6d\xd2\xbb\xb0\ +\x5b\xf9\x54\x9b\x6c\x2f\x4b\x68\xc1\xf5\x6a\x7a\xd3\x24\x04\xe8\ +\x4e\x9d\x05\x41\xd3\x5a\x2a\x21\xa2\x50\x41\x51\xa8\xeb\x40\xf9\ +\xb7\x16\x14\xe6\xa5\x3d\x66\x98\x53\x82\x7d\x76\xf6\x14\x04\xd3\ +\x1c\xd2\x98\xd6\x69\x46\x62\x1a\xfd\x2b\x37\x8a\x2f\x83\x2f\x8e\ +\x6f\xb8\x52\x79\x32\x9a\xd0\xaa\xdc\x4d\x5a\x54\x11\x78\x25\xd2\ +\xd7\x24\x75\xac\x5f\x0c\x50\x93\x46\x20\x6d\x43\x3c\x29\x8c\x8c\ +\x24\xa1\x83\x29\xf2\xc8\xa3\x51\xef\x44\xe2\x64\x16\x43\x13\x90\ +\x2c\x33\x8b\x11\x55\x27\x4e\x22\xe4\xdc\x48\x47\xf4\x9f\xe2\xb9\ +\xd6\x88\xc4\x1c\x46\x1d\x8a\xe2\x62\xf1\x50\x68\x24\x1b\xfd\x69\ +\xf8\x3e\x27\x04\x70\x18\xb3\xba\x03\xb1\x61\x7c\xbf\x3a\x94\xc1\ +\xe2\xda\x2f\xbe\x25\x54\xf2\x60\x49\x34\xb1\xc3\xb0\xef\x7f\x0a\ +\x44\x27\x98\x91\x8a\x5b\xf5\xac\xf7\x3c\x3d\x35\xb0\xc6\x29\x30\ +\xaa\xd1\xe2\x52\x4b\x5e\xe6\xfa\xd7\x1c\x9c\xe4\x4f\xfb\xab\xcf\ +\x62\x70\xf8\x9c\x0c\x99\xd6\xe8\x2f\xa3\x2b\xdc\x1f\xca\x8a\x3e\ +\x2d\x36\xd8\x80\xb3\x2f\x32\x56\xcd\xf5\xa7\xf7\x3e\x8c\x6e\xbf\ +\x87\x6b\xf8\xd1\xe9\xfd\x54\x99\x24\x85\x75\x69\x47\xfd\x3a\xd5\ +\x28\x24\xc3\x62\x85\xb0\xf2\x15\x7b\x5f\xc3\x7d\x3f\x3a\x19\x94\ +\xa9\xb3\x0b\x11\x4d\xe5\xd2\xc5\xa6\xc5\xc2\x86\xe8\xae\xc7\xbe\ +\x82\x82\x6e\x21\x24\xa9\xe1\x95\xca\x84\x58\x8c\xc4\xfe\xb5\x50\ +\xd4\x56\x3f\x54\x86\x4c\x34\xa4\xfd\xd6\x3a\xea\x0e\xce\x4a\xda\ +\x97\x34\x18\xd4\x5c\xca\xe9\x32\x0d\xf6\x20\x8e\xf7\xa7\x57\x2b\ +\x14\x60\x54\xd8\xd1\x90\xeb\x35\x22\x84\xc8\x64\xc3\x01\x0c\x84\ +\x1c\xd1\x1f\x44\x9e\xdd\x0d\x56\xc4\xc7\x97\x12\x63\x41\xec\x08\ +\xd6\xb6\x71\x18\x13\x8b\x9d\x1a\x01\x95\x9f\x57\xe8\x2b\x51\x70\ +\xf8\x68\xe1\x10\x01\xaa\x8b\x09\x40\xd5\x4d\x13\x86\xad\x79\xdc\ +\x26\x0f\xc3\x0b\x2e\x24\x58\x9d\x55\x39\x9f\x7a\xbe\xb3\xc4\x8c\ +\xa9\x3b\x64\x59\xd0\x59\xc0\xd8\x82\x77\xfa\xd0\x63\xf0\xd2\xe1\ +\xe6\xb4\x87\x30\x6d\x43\xfe\x2a\x56\x2b\x0e\xf8\x98\x62\x58\x99\ +\x3c\x80\xdf\x33\x58\xd1\xe7\x8b\xd6\xa6\x0b\x08\xe6\x70\xe5\xbc\ +\x8b\x66\x0c\xba\xde\xae\x66\x0f\x3b\x2a\x87\x76\xbf\x9b\x28\x00\ +\x2f\xcc\xd6\x3f\x0a\x3c\x4f\x02\xa5\x22\x78\x24\x43\xbc\x65\xef\ +\x7f\x6a\xd6\xc0\xbc\x72\x42\x23\xb1\x8a\x76\xf3\x34\x64\xdf\xf3\ +\xae\xbc\x2f\x4c\xd3\x4a\x91\x6b\x42\xef\xfe\x97\x1a\x7b\xd4\xa3\ +\x5e\xe2\x42\x07\xff\x00\xd6\x87\x4f\x99\xe7\x42\x47\x6a\x95\x51\ +\x7b\x90\x0d\x6c\x08\xb1\x0b\x95\x55\x54\x74\x51\x52\x80\x93\x43\ +\x94\x11\x6d\x7e\xb4\x8c\x6b\x65\xfb\x95\x63\x7f\x8f\xf8\xab\x71\ +\x2b\x83\xde\xd4\xc0\x53\x28\x2d\x2a\x29\x23\x66\x3a\xd2\x63\x8c\ +\xbf\x94\x31\xa6\xaa\xa0\x3e\x33\x59\xf4\x01\x01\x1c\x86\x99\xab\ +\x11\xa3\x4a\x84\x17\x91\x85\xb9\x65\x20\x93\xec\x2b\xac\x4a\x12\ +\x30\xb3\xda\xdb\xdc\x54\x09\x5b\x93\x28\xee\x00\x15\xd7\xb9\xb9\ +\x37\xfc\xe9\x06\xd9\xef\xe5\x85\x35\xe4\xf2\x58\xd4\x48\xd9\x06\ +\x66\xc3\x4e\x07\x5b\x83\x40\xb7\xb0\x06\xa5\x4b\x03\x71\x71\x4a\ +\xc0\x7d\xa8\xb7\x97\x0d\x03\xbb\x75\x61\x7a\xbf\xc3\x9a\x35\x16\ +\x95\x44\x53\x30\xbd\x8e\xdf\xf9\xa8\xe1\xea\xce\xc5\xdf\xd2\xbc\ +\x86\x97\x35\x66\x78\xa3\x9c\x5a\x54\xb9\xea\x34\x35\xa9\x2f\xa2\ +\xd0\xca\xab\x88\x21\x33\x5e\x34\xd5\xcf\xe2\x3d\x05\x1a\xe8\x32\ +\x8d\x14\x6c\x06\xc2\xb8\x21\x48\xc2\x20\xb2\x8d\xaf\x5d\x66\x3a\ +\x11\x61\xce\x96\x51\x1f\xa3\xe7\x44\x05\x48\x15\xd6\xa9\x38\x54\ +\xaa\xdc\xf4\x00\x5c\x9e\x82\x88\x21\x22\xf6\xd3\xa9\xaa\xdc\x47\ +\x12\x91\x44\x61\x8d\x83\x3b\x8b\x31\x07\xd2\x29\xea\x7a\x99\x7f\ +\xe2\x39\xde\x5c\x44\x6f\x1b\x11\x1b\x0c\xaa\x3a\x5a\x91\xc3\xb1\ +\x72\xe1\xa5\xf5\x96\x46\xf5\x03\xaf\x3a\x2c\x59\xcf\x85\x0d\x63\ +\xf7\x6c\x0f\xd7\x4a\xaa\xbe\xab\x74\xae\x36\xf7\xad\xe3\xd9\x42\ +\xe2\x58\x04\x8b\xb7\xed\xca\xa2\x64\x12\xc2\x63\x26\xda\x82\x0d\ +\x66\x7f\x87\xb1\x36\xc2\x80\x7f\xe5\xb1\x56\x17\xe4\x79\xd6\xa9\ +\xec\x6e\x0e\xc6\xbd\x12\xec\x61\x2b\x65\x01\x57\x45\x5d\xab\x98\ +\xde\xa2\xba\x94\xea\xe1\xb8\xae\xae\xa9\x05\x3d\x03\xda\xa1\x88\ +\x02\xa2\x43\x96\xe7\x91\xde\x96\x5c\x6f\x63\x6e\xb4\x6a\x13\x35\ +\xea\x2f\x43\x7b\xed\xad\x70\xa1\x08\x7f\x73\x40\x5c\xca\xb9\x22\ +\x46\x2a\x4d\x99\xf9\x5a\x8b\x42\xac\xa4\x8f\x30\x22\x81\xa6\x8e\ +\x1c\x22\xc8\xdb\x81\x60\xbd\xea\x49\xc7\x62\x57\x0d\x0e\x55\x3e\ +\x72\x2c\x8b\xd0\x75\xac\xe4\x6b\xeb\x49\x9e\x57\x9a\x63\x23\x9b\ +\x93\x4d\x48\xe4\x45\x0c\xc8\xc0\x75\x22\xb1\xfa\xda\xd6\x61\xa9\ +\xbd\x6e\x70\x7c\x3f\x81\x17\x88\xe3\xef\x1f\x6e\xc2\xb0\xe1\xb6\ +\x71\x7d\xaf\xad\x7a\x53\xea\x1d\x2c\x2d\xf4\xae\x9c\x27\x6c\xf2\ +\x30\x1d\x2a\x0d\x4a\x54\x91\x5d\x59\x29\xc5\x03\xfa\x69\xac\x29\ +\x6c\x39\x51\x51\x47\x7a\x5c\x83\xa9\x03\xdc\x8a\x29\xdf\xc2\x89\ +\xa4\x3c\xb6\xf7\xac\xa4\xbc\xd8\x91\x9c\x17\xcc\x75\xb5\x63\x95\ +\x31\x79\xd7\x4b\xdd\x6d\xfe\xa1\x49\x25\x4e\xc7\x37\xfa\x05\xff\ +\x00\x3d\xa8\xca\x46\x86\xe9\x1a\x2d\xb9\xda\x85\x89\x3b\x92\x68\ +\x20\x21\xef\xea\x11\x8e\xde\x66\xfe\x28\x48\xb1\x37\x79\x1b\xdc\ +\x81\xfb\x51\x31\xa0\x63\x59\xa8\xb3\x06\x1b\x35\xfc\x22\x4f\x3b\ +\xb5\x42\xbc\x71\xe9\x1a\xe4\xf6\x1a\xd4\xb1\xa0\x26\x82\x23\x3b\ +\x6f\xe2\x3d\xfd\xcd\x04\x92\x17\x5b\x00\xbe\xf9\x05\x4e\x9d\x3f\ +\x2a\x06\x00\xf2\xb7\xb5\x45\xca\xea\x17\x21\x8a\x36\x5e\x61\x96\ +\xa9\x71\x0c\x0c\x0e\x9e\x26\x1f\x07\x11\xfc\x48\x14\xdc\x77\xab\ +\x7a\xdb\xad\x40\x24\x1b\x8b\x82\x3a\x51\x64\xa9\x84\xcb\x00\x24\ +\x1c\x32\x0e\xb6\xb8\x22\xb4\x70\x03\x0f\x89\x83\x2b\x02\x64\x5d\ +\x02\x97\xd6\xdf\x4a\xb3\x89\x86\x1c\x40\x1e\x34\x76\x61\xf1\x2d\ +\x81\xaa\x72\xf0\xdb\x31\x31\x62\x00\x3c\x83\x0b\x7e\x75\xcf\xf3\ +\x65\x6b\x61\xcd\x86\xc3\x29\xb3\x40\xe0\x8e\xae\x69\x58\x98\x70\ +\x91\x2e\x62\x18\x5f\x61\x7b\xd4\x88\xf8\xbc\x63\x2c\x72\x19\x07\ +\xf4\xb0\x6b\x50\xcb\x3e\x35\x7c\x98\x8c\x1e\x7d\x39\x2d\xbf\x4a\ +\x7a\xfe\x01\x61\xa3\xc2\x4b\x19\x61\x1b\x12\xbb\xdd\xad\x4e\x8d\ +\x63\x12\x00\xb0\xc6\xba\xda\xe0\x6b\x55\x63\xe2\x10\x44\x32\x36\ +\x19\x96\xfe\xa0\x0d\xa8\xcf\x11\xc1\x5e\xf9\x27\xfa\x8a\xb6\x21\ +\xc4\xa0\x33\xce\x45\x99\xd8\x81\xfd\x20\x69\x52\x8a\xcc\xc0\x0d\ +\x49\xa0\x18\xec\x26\x63\xe4\x93\x2b\xea\xb7\x61\x6c\xdd\x3b\x5e\ +\xaa\x62\xf8\x94\x85\x5a\x28\xa2\x10\x83\xa1\xeb\x46\xc8\x85\xc6\ +\xa6\x8d\x82\x40\x87\x31\x8c\x9c\xcd\xcb\xda\xa9\x28\xa1\x07\x5a\ +\x35\x3a\x57\x3d\xde\xda\xc4\x93\x6a\xe4\x62\xae\x19\x4d\x88\xd8\ +\xd7\x1a\x8e\x75\x44\xdd\xc3\x4d\xf6\x9c\x1a\x4c\x4f\x9c\x79\x5f\ +\xdf\xad\x1a\x9a\xce\xe0\xb8\x85\x8e\x46\x86\x56\xb4\x72\x0d\xfa\ +\x1e\x46\xb4\x8a\x95\x6b\x1a\xed\xc6\xec\x66\xa5\x9f\xc3\x85\xe5\ +\xe6\xa3\x4f\x7a\xce\x04\x93\x73\xa9\x35\x77\x19\xff\x00\xed\xf2\ +\x7f\xa9\x6b\x3f\x52\xb6\x1b\xde\xae\x4a\x2c\x46\xaa\x50\xeb\x9a\ +\x31\xff\x00\xfd\x0f\xf1\xfa\xd1\x31\x2c\xd7\x63\x44\xe1\xcb\xf9\ +\xc5\x8f\x4b\x5a\xd5\x39\x68\x41\x17\xe5\xa5\x4d\x8f\x3b\x9a\x20\ +\xbd\x68\x82\xd3\x8b\x42\xa2\x8a\xd4\x40\x57\x01\x48\x5e\xc1\xae\ +\x5c\x2a\xdb\xe2\x24\xd3\x00\x3a\xd8\x6b\x6d\x2f\xd6\x87\x00\x73\ +\x61\xb2\xde\xe5\x0e\xdd\xa8\xe5\x0c\x19\x55\x05\xdc\xec\xbf\xb9\ +\xad\xb2\xab\x84\x5c\x44\xa5\x9b\xc6\x65\x50\x75\x37\xe7\x56\x82\ +\xb8\xf8\x8c\xab\xce\xfa\x30\xfe\x68\xa0\x87\xc2\x84\x25\xee\x49\ +\xbb\x7b\xd1\xaa\xda\x99\x10\x14\x06\x17\x53\x7b\x6e\x2d\x62\x3d\ +\xe8\x71\x32\xc7\x86\x8c\x33\x82\xcc\xde\x95\x15\x60\xda\xe1\xc8\ +\xdb\x46\x3d\x8f\xf0\x6a\x97\x1e\x53\x68\x4d\xb4\x00\x8f\xce\xab\ +\xd4\x4a\x38\xbc\x44\xb3\xb9\x2c\x48\x5e\x4a\x36\x15\x56\x6b\x86\ +\x03\x91\xa6\xb6\xf4\x32\x8c\xc9\xa6\xe0\xd7\x2b\xdb\x63\x2b\x9a\ +\x39\x13\x7c\xc8\x6c\x2b\x32\x31\x6a\xd6\xc3\xa4\x84\x24\x99\x18\ +\xaf\x33\x6a\xcd\x99\x32\x4c\xeb\xd1\x88\xac\xf2\x89\x77\x80\x37\ +\xdf\xc9\x17\xfe\xe2\x7e\x63\x51\x5b\x38\x2c\x46\x82\x29\x2d\x6f\ +\x84\xf4\xaf\x3d\xc3\xa4\xf0\xb1\xd1\x49\x6d\x98\x56\xcc\xca\x15\ +\xca\x8e\x46\xba\x70\xbd\x0a\xd2\x20\x8f\xe6\xa2\xb3\xe2\x9a\x58\ +\xfd\x0e\x40\xe9\x4e\x18\xd9\x00\xf3\x22\x37\xca\xd5\xd3\xf5\x19\ +\xc5\xaa\x83\xb5\x57\x18\xdd\x75\x85\x7e\x44\xd7\x1c\x62\x69\xf7\ +\x47\xbf\x9a\xad\x8b\x0c\x7d\xe8\x0d\x29\xf1\x84\xe8\xb0\xaf\xd4\ +\x9a\x53\xe3\xa4\x07\x41\x18\xed\x96\x8d\x87\x0f\xc8\x3b\xfd\x6a\ +\x42\xad\xf6\xaa\x9f\x6c\x97\xf1\xaf\xd0\x51\x2e\x32\x41\xba\xa3\ +\x0f\x6a\x36\x2c\x5b\x05\x63\x46\x91\xb4\x54\x17\xf7\xac\x8c\x4c\ +\xad\x2c\xcd\x2d\xaf\x7d\xd0\x73\x1d\xbb\xd6\x9a\x62\x20\x91\x1a\ +\x39\x03\x28\x75\xb1\xe9\x59\x93\xc4\x62\x90\xad\xee\xa7\xd2\x7a\ +\xd6\x79\x18\xb1\xc2\x70\xcb\x2c\xa6\x56\xf3\x46\x9a\xfb\x9e\x95\ +\xab\x9f\x30\x2a\xe0\x32\x9f\x84\xed\x59\x3c\x3b\x10\xd0\xc8\xc0\ +\x65\xcb\x26\xe0\xec\x4f\x7a\xd5\x4b\x32\x07\x5f\x49\xfc\x8f\x4a\ +\xd7\x0f\x05\x51\xc7\x41\xe0\x4a\x0a\xff\x00\x96\xfa\xaf\x6e\xd5\ +\xb1\x80\x98\x4f\x83\x47\xbe\xaa\x32\xb5\x52\xc7\x28\x6c\x03\xdf\ +\xe1\x21\x85\x07\xf8\x7e\x52\x27\x78\x4e\xce\xb7\x1e\xe2\xb5\x3a\ +\xa2\xf8\xd8\x8d\xb5\xb1\xa6\x83\xa5\x57\x06\xfa\xd3\x11\xb4\xae\ +\xac\x8d\xe9\x2f\xbd\x30\x9b\xd0\xb6\xba\x54\x95\xf1\x68\x1e\x02\ +\xa4\x68\x59\x7f\x5a\x51\x45\x40\x42\x22\xa8\xec\x2a\xcc\x80\x98\ +\xd8\x0d\xed\x71\xdf\x9d\x2d\xc0\x3a\x8d\x8e\xa2\xb1\x61\x55\x90\ +\x69\x6a\x5b\x69\x56\x1d\x75\xa4\xc8\xa4\x56\x69\x25\xa8\x1f\x4a\ +\x61\x14\xb7\x15\x84\x5b\x9d\x68\x68\xce\xf5\x0c\x2a\x32\x80\xef\ +\x43\xa5\xe8\x88\xd2\x84\xd4\x50\x68\x6b\x89\xa8\xbd\x1a\x93\x42\ +\xdb\x57\x72\xa8\x6b\x05\x2c\xcc\xaa\xa3\x99\x34\x20\x10\x2f\xb5\ +\x48\x69\x14\x59\x64\x70\x3b\x35\x46\x68\x7f\xf7\xd0\x7b\xd1\x32\ +\x90\x3b\x75\x07\x4a\x93\xbc\x57\x1b\x90\x7d\xd4\x1f\xda\x93\x24\ +\x78\x69\x2e\x24\xc3\x47\xee\x83\x29\xa3\x61\xce\x85\xa8\xa6\x14\ +\xd8\x4c\x13\x23\x28\x59\x10\x1d\xfc\xc1\x81\xf9\x50\xae\x0b\x09\ +\x75\x52\xf2\xca\x3e\x1c\xda\x11\xfd\x34\xeb\x50\xca\xa4\x02\x14\ +\x7d\xe3\x8f\x20\xef\xd6\xb3\x90\x99\x19\x48\x85\xa1\x85\x23\xe5\ +\xe9\xb9\xa3\xce\x24\x19\x65\x8e\x37\x1d\x0a\x8f\xda\x97\x23\x03\ +\x26\xfa\xf3\xf7\xa9\x43\xad\x86\xf5\xa0\xa7\xc5\x70\x89\x08\x59\ +\xa1\x2d\xe1\xb9\x37\x07\xe1\x3d\x2a\x90\xad\x4e\x35\x2a\xc7\x85\ +\x18\x60\xc0\xbb\x36\x67\x03\x90\xe5\x59\x43\x38\x37\xbe\x9d\xab\ +\x9f\x39\x34\xc3\x2d\xa5\x5a\xc3\x71\x0c\x4c\x4a\x13\x30\x74\x02\ +\xc1\x5c\x5c\x0a\xa6\xcc\x2e\x32\xde\xe3\xad\x19\x3a\x5f\x29\x17\ +\xa2\x74\xbd\x6b\xc5\x8a\x87\x17\x87\x92\x30\x9e\x1c\x85\x7d\x37\ +\xd0\xfb\x55\x58\xe3\x66\x6c\x80\x6b\xfa\x52\x38\x79\x61\x89\x89\ +\x81\xd4\xb8\xd6\xb5\xf1\x50\x09\x99\xd6\x18\xec\xaa\x7c\xe8\x3e\ +\x3d\x34\x1e\xdd\xab\xa4\xff\x00\x28\x3c\x5e\x6c\xad\xe4\x91\x03\ +\x0e\xa7\x7a\x54\xd8\x20\x7c\xd0\xb5\xff\x00\xa4\xef\x56\x05\x88\ +\x2d\x96\xc6\xe4\x10\x77\x16\xa9\xb7\x3d\x2f\x5d\x71\x86\x6b\x23\ +\x23\x65\x60\x41\x1b\x83\x51\x6a\xd2\x9d\x12\x58\xfc\xe8\x73\x5b\ +\x46\xb6\xd5\x9f\x30\x68\xc9\x52\x3c\xc3\x4b\x56\x6c\x6a\x22\xa4\ +\x0a\x08\xcb\xde\xe7\x5f\x7a\x60\x64\x04\x29\x0e\xcc\x75\x08\xa3\ +\x5a\x91\x98\x67\x68\x98\x32\x9b\x66\x60\xbf\xef\xe5\x5a\x3e\x81\ +\x68\xc5\xc1\xd7\x37\x36\xee\x6b\x32\xc7\x38\x67\x00\x65\xf4\x20\ +\x37\xd7\xa9\xab\x58\x09\xf4\xf0\xa4\x3a\x7c\x24\xf2\xad\x71\xa2\ +\xac\x80\x48\xe9\x5d\x62\x07\x5a\x3b\x5b\x43\x5d\x5b\x08\x16\x23\ +\x5d\x54\x8b\x1a\x46\x22\x29\xe6\x84\xc2\x02\xb8\x02\xea\xd7\xb1\ +\x27\xa5\x3f\x28\xde\xd5\x0c\x0a\xea\x9a\x1d\xed\x45\x4c\x09\x4b\ +\x47\x7f\xf8\x69\x49\x1c\x88\xfe\x2b\x94\x87\x85\x64\x00\x8b\xe8\ +\x47\x42\x2b\x5f\x88\x61\x9a\x71\xe2\xc1\xfe\x67\xc4\x2f\xbf\x71\ +\x54\x57\x0f\x2b\x4c\x10\xc6\x47\x8b\xdb\x98\xfe\x47\xe9\x5c\xef\ +\x1c\xad\x4a\xd2\xc2\x1f\x0f\x86\x21\x51\xb4\x45\x88\xeb\xad\x60\ +\x71\xa8\xc0\xc5\x78\xaa\x34\x70\x09\xf7\xb5\x7a\x0c\x53\x2a\xe0\ +\xce\x5d\xb2\x84\x51\x59\xfc\x6b\x0c\x17\xc2\x4b\x82\x64\x8c\xe5\ +\x27\xad\xf4\xfe\x29\xe7\x36\x08\xc4\xad\xd5\x7f\x17\x0f\x14\xa3\ +\xe2\x40\x0f\xb8\xac\x47\x5f\x2e\x70\x08\x04\x90\x41\xf8\x4f\x31\ +\x5a\x7c\x20\x93\xc3\x98\x1f\x86\x4d\x3e\x95\x8e\x3e\xe3\x55\x61\ +\x45\xc8\x02\xa4\xa9\xcb\x7d\x0d\xba\x1b\xd0\x48\xc5\x30\xee\xe3\ +\x70\x2c\x3e\x75\x21\x12\x28\xe3\x91\x17\xd3\x6c\xdf\xd4\x0d\x6c\ +\x3a\xb9\xb4\x15\x2c\x32\xb1\x1d\x2a\x18\x12\x45\xad\x61\xca\xf5\ +\x00\x15\x36\xd7\x5a\x19\x0a\xc7\x11\x76\x07\x28\x36\xd0\x53\x09\ +\x6c\xd9\x42\xeb\xef\x43\x32\x13\x86\x93\x31\xbf\x97\x6b\x54\x41\ +\x19\x49\x14\xb4\x6c\x0d\xb7\x16\xd4\x57\x65\xe9\x4a\xc1\xe1\xa4\ +\xc8\x25\x49\x42\x13\xe9\x16\xde\xac\x44\xfe\x20\x60\xcb\x96\x44\ +\xf5\x2f\xef\x44\xff\x00\xa8\x20\x75\x15\x24\x02\x2c\x45\xc5\x16\ +\x95\x1f\x5a\x51\x7f\x67\x66\x04\xa0\xcc\x2d\xa8\x1b\xd1\xe0\xb1\ +\x72\xe1\x9f\x2c\x77\x65\xb8\xcf\x13\x7c\x5e\xdd\x0d\x1c\x32\x34\ +\x52\x07\x4d\xc5\x5c\x9e\x1c\x3e\x2e\x21\x29\x05\x5b\x9b\x2f\x2f\ +\x7a\xa4\xfe\x2d\x51\xe2\x1c\x60\x3e\x58\x63\x8c\x04\x27\xef\x05\ +\x8d\xea\xd7\x03\x8f\x36\x29\x67\x43\x78\xd0\x5e\xff\x00\xb5\x4a\ +\x70\x9c\x37\xda\x04\xcd\x3b\x16\x03\x5f\x2e\xe7\xad\x5c\x8a\x35\ +\x89\x6d\x0e\x97\xd4\x92\x3d\x5e\xe2\xb5\x25\xdd\xa2\xe7\xc5\x85\ +\x24\x53\x01\xb8\xa4\x23\x66\x21\x6d\x95\xed\xe9\xeb\xdc\x75\xa3\ +\x0d\x63\xa9\xb5\x74\x60\xca\xeb\xd7\x02\x0d\x56\x9b\x14\xd1\x4a\ +\xc8\xf1\x03\x6d\x88\x3b\xd5\x6e\x25\x9b\xeb\x42\xe2\xde\x65\x17\ +\xe6\x54\x73\xf6\xef\x41\x87\xc4\x47\x30\xb0\xf2\xb7\xe1\x3c\xe8\ +\xf3\x6b\x56\xea\x29\x80\x6f\x4d\xc8\x3b\x11\x48\x11\xda\xf9\x97\ +\xe7\x56\x25\xba\x13\x2c\x6a\x48\xf8\xd0\x7e\xa2\xa1\xca\x90\x19\ +\x48\x65\x3b\x11\xce\x8b\x0c\x54\x91\x2d\xb5\x2d\x94\xf2\xb5\x5a\ +\x75\x06\x94\xc9\x58\xb0\xab\x32\x91\xc8\x7c\x8d\x03\xe6\x03\xd2\ +\x6a\xc3\x2d\xa8\x6d\x59\x4a\xb9\x81\xed\x42\xe5\x6d\xbd\x14\xb1\ +\x95\x6b\x5b\x4a\xe0\x05\xb6\x15\x34\x43\xb0\x1d\x6a\x01\xb8\xb8\ +\xd0\x51\xca\x97\x3a\x69\x4b\x54\x65\x3b\xdc\x56\x6a\x49\x02\xdb\ +\x5f\xde\x86\x50\x81\xa2\x76\x00\x05\x72\x09\xe9\x71\x44\x76\xae\ +\xd0\x82\xad\xaa\xb0\xb1\x15\x20\xc8\x5b\x35\x9c\x66\x1c\xc1\xd6\ +\x80\x8f\x08\xf8\x90\x6a\xa7\xd7\x1f\xf1\x44\x97\xcf\xe0\xbe\xac\ +\xa2\xea\xdf\x8c\x54\xae\x8c\x0e\x97\x15\x17\x2b\x24\xa9\x9e\x32\ +\x48\xe6\x08\xda\x84\xad\x74\x51\x04\xc4\x4d\x97\x45\x75\x0c\xa0\ +\x1e\xf5\x24\x74\x63\x42\x27\x15\x2b\x40\xea\x88\x80\x16\xb7\x9d\ +\x85\xc5\x31\x62\x60\xe5\x54\x34\x92\x36\xef\xcc\xfb\x76\xa9\x0c\ +\x1a\x3c\xb2\x00\x50\xee\x0d\x54\xe3\x12\xcd\x87\x85\x30\xb8\x7c\ +\x59\x8d\x59\x73\x12\x45\xcd\x8d\x17\xae\xd2\xd4\x91\x88\x96\xf3\ +\xba\xc6\xbd\xcd\xef\x55\x66\xe2\x49\x1d\xd7\x0a\xa4\x9b\x7a\xdf\ +\x97\xb5\x50\x88\xb1\xf2\xac\xcc\xe3\xf0\xcc\x74\x6f\x63\xca\xad\ +\xe1\x38\x78\x95\x81\x93\x34\x00\x9d\x15\xac\x4b\x7b\x56\x76\xdf\ +\x0a\xb2\xe6\x91\xaf\x62\xce\x4e\xbc\xcd\x5e\xc3\x70\xc9\x99\x33\ +\x4a\xcb\x08\x23\x4c\xda\x93\xf2\xab\xf8\x68\xe2\xc3\x8c\x98\x68\ +\x80\x6e\x6e\xda\xb7\xf6\xae\x79\x61\x56\x39\xe5\x24\x8d\xca\xae\ +\x6b\x7c\xe9\x9c\x27\xd1\xaa\x91\xf0\x60\xe4\x01\x8c\x4b\x9d\x00\ +\xc8\x75\xaa\x33\x06\x8e\x46\x8d\xac\x72\x92\x2f\xd6\xb7\xf0\xcd\ +\x1e\x51\x88\x0d\x78\xd2\xec\x49\x16\xda\xb1\x1c\x78\xd2\xb1\x03\ +\xd6\xd7\x03\xde\x9e\x5c\x64\xf1\x4a\x77\x02\x84\xcb\x8d\x0c\x7d\ +\x11\xf9\x9e\xb7\x20\x8c\x04\x90\xa9\xd5\xa4\xd7\xb5\xa9\x38\x5c\ +\x32\xe1\x30\x8b\x11\xf5\xb6\xb2\x69\xf9\x55\xc4\x06\xf9\x94\x8b\ +\x91\x62\x1b\x66\xe9\xec\x6b\x7c\x78\xe4\xc6\x6d\x42\x92\x54\x16\ +\x3e\x66\x25\x9b\xb5\xff\x00\xd8\xa9\x06\x93\x01\xcf\x96\x55\x1e\ +\x52\xa3\xf4\xb5\x36\xb4\x04\x0d\x74\xa8\x26\x8f\x21\xb6\x61\xe9\ +\x6e\x86\x86\xf5\x20\xd2\x99\xec\x0a\xb1\x07\x71\x52\x4f\xfc\x4b\ +\x8d\x8f\x82\xb6\xfa\xd5\xae\x20\x83\xc3\x38\x83\xb2\x0f\x38\xeb\ +\x58\xf1\x4e\xff\x00\x6b\x38\x86\x42\x55\xae\x0e\x9a\x5a\xb1\x7a\ +\x6a\x2e\x8a\x35\xa1\x4c\xae\x99\xa3\x60\xcb\xfa\x51\x8e\x94\xa6\ +\x86\x0a\x6f\x16\x3c\xac\x46\x75\x1a\x77\x14\xda\xce\x81\xcc\x72\ +\x87\x07\x63\x5a\x4c\x3c\xda\x6c\x75\x15\xb9\x59\xa9\xa8\x22\xa4\ +\x6d\x5c\x69\x45\x95\x2a\x6e\xbf\x4f\xe2\xa6\xe5\xd3\x29\x73\x66\ +\xd8\xf4\x3d\x68\x88\xa0\x65\x20\xdd\x34\x3d\x3a\xd4\x95\xe3\x49\ +\x65\xc4\x2a\x4a\xbe\x55\x62\x49\xb6\xfa\xd4\x7f\x88\xd4\xb6\x06\ +\x39\x47\xc2\xf6\x3d\xaa\xcc\x57\x08\x01\xb8\xae\xc6\x28\x7c\x04\ +\x88\xcb\x71\xa1\xac\xe7\x49\x82\xf8\x49\x64\x8f\xed\x09\x18\x39\ +\xc7\xde\xa0\xdd\xba\x30\xef\x56\xb0\x91\x78\x18\x35\x8c\x9b\xb3\ +\x9c\xe7\xf6\xa6\x66\x21\x81\x5d\x2d\xa5\xab\xac\x02\x15\x1b\x29\ +\xba\xff\x00\xa4\xff\x00\xb3\x58\x93\x1a\xd7\x05\x0e\x8c\x8c\x6c\ +\x18\x5a\xfd\x2a\xa3\x62\x4c\x70\x18\x0a\xdc\xdb\x2a\x91\xef\x56\ +\x74\xcc\x09\xda\xd5\x2e\xb0\xbc\xaa\xcd\x18\x62\x39\xd5\x40\x97\ +\x3b\x46\xac\xc1\x41\x65\x04\xde\xa0\x82\x39\xaf\xbd\xa8\x9d\xff\ +\x00\x2e\x54\x05\xa9\x4e\x1a\x0b\x0b\xf7\x35\x28\x03\x5d\x18\x68\ +\xc2\xc6\x82\xfa\xd7\x4a\xe6\x38\x19\xc6\xe3\x41\xda\xf5\x27\x46\ +\x2d\x87\x41\xcc\x5c\x7e\x74\x13\xab\xf8\xab\x88\x8c\xdd\x90\x79\ +\xd7\xa8\xa6\x40\x19\xf0\xf1\x04\x17\x25\x2d\xa7\x5a\xb5\x86\xc2\ +\x28\x23\xc6\x24\x96\xd3\x28\x36\xb5\xea\xcd\x4a\x6e\x41\x01\x94\ +\xdd\x58\x5c\x50\xd5\xfc\x3a\xe1\x9e\x20\x82\x38\x83\x47\x71\x66\ +\x3c\xaf\x4a\xc4\xc3\x87\x22\xf0\xc8\xa5\xbf\x00\xd6\x9c\x5a\xab\ +\x4d\xc3\xca\x62\x7b\xee\xa7\x42\x3a\xd2\xb5\x04\x82\x2c\x6a\x77\ +\x34\x16\x9c\x46\xf1\xa9\x06\xe0\xec\x68\xef\x54\xb8\x7b\xb3\x46\ +\x50\x1f\x49\x24\x03\xd2\xad\x8a\xdc\xac\x98\x32\xba\xe5\x71\x71\ +\xf9\x8e\xe2\x97\x2c\xb2\xc5\x20\x49\xc9\x92\x36\xd5\x5f\x98\xf7\ +\xa2\x5a\x62\x3e\x53\x72\x74\x3a\x1a\x50\xa3\x7f\x28\x2b\xe6\x1e\ +\xf5\xd8\x88\xd7\x11\x1f\xf5\x0d\x8f\xec\x6a\xbe\x2c\xf8\x0c\xb3\ +\xc4\x72\x82\x6c\x40\xf4\x9a\x6e\x16\x5f\x19\x4b\x65\xca\xcb\xbd\ +\xb9\x8a\xb7\xe5\x0a\x48\xae\xd2\x05\x4f\x55\xf4\xab\xe2\x56\x5b\ +\x2e\x23\xca\xc7\x66\xf8\x5b\xe7\xd6\x95\x2c\x46\x2c\x40\xc4\x47\ +\x72\xb7\xf3\x2d\xef\x6a\x6b\x32\x11\x63\x62\x0e\xd7\xe7\x54\x98\ +\x85\x72\x06\x61\xb7\x51\x49\x90\xe4\x6c\xcb\xa2\xc8\x6c\x47\x2c\ +\xdd\x6a\x56\x24\x56\xcc\x85\x93\xfd\x26\xd4\xbc\x44\x02\x4d\x4c\ +\xd2\x5f\x95\xf5\x15\x5d\x43\x06\xf4\x2f\x42\x09\x03\x5f\x50\x16\ +\x36\xd9\xbb\xd4\x92\x0a\xdf\xad\x04\x04\xde\x81\x85\x11\xde\x85\ +\xa8\x41\x61\xa5\x25\xc6\xb4\xe6\x34\xa6\x35\x94\x4c\x82\x96\x69\ +\xce\x39\x52\xd8\x6b\x53\x40\x61\x42\x45\x19\xa1\xac\xa2\xe7\x42\ +\xf1\x66\x53\x69\x22\xd5\x4f\xed\x52\xb9\x65\x8d\x65\x5d\x2f\xbd\ +\xb9\x1a\x35\xd1\xae\x39\x52\x9e\x19\x52\x63\x26\x1e\x40\x81\x86\ +\xa0\x9d\x8d\x45\xd3\x12\x98\xac\x39\x20\x9c\xca\x41\x15\xd7\x63\ +\x7b\x0f\x9d\x32\x30\x14\x16\xbe\x79\x1b\xd4\xe7\xf4\x1d\xa8\x58\ +\x00\x2e\x36\xe9\x42\x2c\x29\x1b\xd5\x4f\xf1\x08\x6f\x16\x27\x03\ +\xca\x63\x02\xfe\xd5\x7c\xed\x4a\xe2\x31\x78\xbc\x3d\xf6\xcd\x17\ +\x98\x1e\xdc\xe8\xb3\xa5\xac\xfe\x0b\x1a\xcb\x8e\x51\x20\xb8\x00\ +\x9b\x56\xb3\xbf\x8a\x32\xc9\xe9\xf8\x6d\xf0\xfb\x56\x67\x04\x36\ +\xc7\x82\x7f\x09\xfd\x2a\xfa\x99\x5d\xc8\x81\x63\xc8\x86\xc5\x9f\ +\x99\xa3\x87\x8a\x8d\x56\x76\x19\x67\x99\x5a\x3f\xe9\xf5\x37\x63\ +\x4d\x57\xd3\x2e\x55\xc9\xf8\x6d\xa5\x0a\xa9\x63\x94\x80\xaf\xbe\ +\x50\x6e\x1b\xb8\x35\xda\x83\x62\x2d\x5b\x05\x71\x29\x46\x1f\x02\ +\xd8\x54\x56\x19\x9a\xe0\xf2\x2a\x75\xa5\xff\x00\x87\xe2\x0d\x88\ +\x69\x98\x5d\x62\x17\x00\xf3\x3c\xa9\x9c\x63\xcc\x72\x58\xe9\x11\ +\x00\xf2\xba\x9f\xe2\x8f\x81\x9f\xff\x00\x1d\x25\xbf\xf7\x47\xe9\ +\x47\xff\x00\x47\xe2\xf0\x39\xef\x7e\x74\xd8\x90\x0f\x88\xe9\xa9\ +\xa4\x47\x47\x88\x7c\x98\x29\x9b\x63\x96\xc0\xf7\x35\xb6\x04\xa5\ +\x40\x01\x54\x01\xca\xc2\x8a\x92\x9a\x0f\x2e\x9d\xb9\x1a\x60\x61\ +\x60\x7a\xd4\x85\x7a\x91\x40\x0d\xe8\x85\x49\xd3\x58\xe0\xe6\x56\ +\x1a\x3a\x65\xff\x00\x7f\x4a\xa2\x80\xc5\x12\x46\x0e\xca\x2f\xde\ +\xae\x62\xce\x5c\x04\xff\x00\x89\x92\xca\x3b\xd5\x18\x24\x12\xc4\ +\xac\xcc\xaa\xca\x2c\xe0\x9b\x5a\xab\xe9\x89\xca\xab\x8b\x81\x96\ +\xca\x5e\xf9\x80\xd8\xd3\x4e\xf4\x99\xd1\xe6\x64\x31\xb0\x44\x4d\ +\x9c\xf3\xee\x05\x1f\x88\x43\x85\x94\x7a\x8d\x84\x8b\xb1\xf7\xa2\ +\x13\x2b\x4f\x0c\xd9\xb0\xc8\xda\x6d\x63\x59\x7b\x1b\x1d\xc5\x5f\ +\xe1\xcc\x0e\x19\x97\x9a\x9b\xd6\xb8\xfa\x29\xe4\xd7\x03\x51\x5d\ +\x5b\x02\xae\x35\xc2\xba\xa4\x1a\x92\x33\x44\xeb\xd5\x48\xa9\x22\ +\xba\x2f\x58\x1d\x74\xa9\x32\x69\x8b\xa8\xf7\x4d\xbd\x8f\xf7\xa8\ +\x98\x65\x91\x97\xa1\x22\xa0\xb8\x46\x88\x9d\x03\x12\xa7\xe7\x5c\ +\xcb\x98\xe9\x60\x37\xae\xf4\x8b\x57\x35\xd5\x85\xc5\xb7\xa1\x26\ +\xf5\x24\x31\xae\xd0\x2b\x33\x1b\x2a\x8b\x9a\x93\x50\x50\x3c\x61\ +\x0e\xcc\xd7\x3e\xc0\x5f\xf8\xa8\x82\x19\xe1\x95\xb2\xa1\x60\x79\ +\x06\xe7\x57\x70\xf8\x4c\xe8\x7c\x6d\x10\xfc\x36\xd4\xd0\x43\x85\ +\x18\x84\x0e\x55\x54\x21\xf2\x5b\x4f\x95\x5b\xc3\xc8\xef\x9d\x25\ +\x5b\x3c\x7c\xfa\x8a\x64\xfe\x8b\x5d\x0c\x71\x61\x80\x48\x97\x2c\ +\x6f\xb1\x26\xe5\x5b\xdf\xbd\x17\xa5\xae\x46\xa0\xd4\x92\x2c\x41\ +\x17\x07\x71\xd6\xa2\xc4\x28\x55\x90\x10\x3f\x1a\xdf\x4e\x97\xde\ +\xb6\x19\xb8\xf8\x72\x62\x2c\xb7\x21\xc5\xc5\x0e\x59\xb0\xd2\xab\ +\xb2\x15\x23\x51\x71\x57\xd2\x39\x3c\x7f\x1a\x56\x4b\x80\x42\x2a\ +\xeb\x6a\x31\x7b\x65\x36\x20\xee\x0e\xd5\x9c\x3a\xcb\xc5\xe2\x13\ +\xc4\x0e\xf1\x39\x32\x0b\xf9\x0d\xea\x22\x78\xe5\x04\xc6\x4e\x61\ +\xba\xb0\xd4\x53\xf8\xb8\x5c\x2c\xb0\xcf\x1a\xdd\x42\x90\xca\x0e\ +\xab\x7a\xcd\x77\x93\x11\x8e\x0f\x87\x52\xad\x6e\x7f\xa9\xac\x5b\ +\x94\xc5\xfc\x1b\x14\xc4\xa9\x02\xe0\x9b\x69\x57\xa3\xf1\x33\x9b\ +\xdc\x0e\xf5\x47\x0e\x59\x5d\x5a\x50\x8d\x62\x09\x68\xf9\x7c\xab\ +\x51\xc7\x98\x90\x41\x5b\xe8\x45\x6f\x88\xa1\x19\xba\x8f\xa5\x12\ +\xb6\xe0\x8a\x8a\xe5\xf5\x8f\x7a\xd0\x06\x28\x2c\xa5\x70\xcb\xa1\ +\xbd\xd8\x81\xb5\x33\x0f\x14\x31\xae\x58\xc3\x2b\x1d\xc9\x35\x53\ +\x0d\x37\x87\x8d\x71\x29\x23\x35\xc1\x35\x70\xd8\xe8\x75\xf6\x34\ +\x4f\xea\x10\x72\x0d\x8e\xff\x00\xad\x0e\x89\xa0\x07\xc3\xfa\xe4\ +\xfe\xd4\x19\x6e\xc7\x33\x1d\x0e\x95\x20\x10\x74\x66\xa5\x08\xf9\ +\x40\x20\xdd\x08\xd0\x8d\xa8\x58\xd0\xc8\x59\x15\x98\x05\x2a\x7d\ +\x63\xf7\x15\xce\x6c\x05\x8d\xc1\xd8\xf5\xa9\x21\xbd\x54\x27\x7f\ +\x7a\xe6\x3a\x7b\xd0\xb1\x36\xd3\x71\x59\x4e\x34\x2d\x44\x35\x17\ +\x1b\x50\xbd\x15\x16\xc7\x7a\x07\xda\x88\xef\x40\xf4\x20\x9a\x17\ +\xa2\xa1\x6a\x9a\x03\x0a\x13\x47\x42\x45\x15\x06\xd5\xc4\x03\xa5\ +\x49\xd0\x57\x0c\xdd\x85\x08\x20\x11\xa0\xd4\x54\x10\x49\xd6\xd6\ +\xa9\x62\x46\xeb\xf4\xa3\x58\x99\x97\x35\xac\xb6\xf5\x1d\x05\x48\ +\xa5\x60\xd5\x18\x86\x58\xb0\x92\xbb\x91\xe6\x52\xaa\x0f\x33\x4a\ +\xc4\x62\x20\xc3\x7c\x42\x57\xe4\x14\xe9\xf5\xaa\x38\xa9\xe7\xc5\ +\x38\x0e\x6f\xaf\x95\x40\xd2\xb3\x79\x61\xc1\xf0\x78\xd9\xf1\x7a\ +\x72\x46\xb9\xe9\xa5\x68\xc2\x99\x21\x64\xb5\x8a\xc9\xaf\x7b\xed\ +\x43\x81\x80\xe1\x70\xc5\x5a\xde\x24\x9e\xa1\xd0\x53\x88\x62\x33\ +\xa2\xe6\x60\x2c\xcb\xf8\x87\xf2\x29\xe3\x32\x2b\x43\xe5\x65\xc8\ +\xe2\xeb\x7f\x98\xf6\xa9\x80\x3b\x19\x22\x63\x9a\x48\x9a\xda\x6e\ +\x45\x28\xca\x89\xe6\x6c\xe0\x77\x4b\x52\x10\xc9\x89\xc7\xb1\x52\ +\x63\xce\x6e\x48\x3b\x0a\xb5\x62\xdf\x12\x2a\x20\x45\x76\xca\xea\ +\x49\x23\xaa\xda\xc6\xff\x00\x2d\x7e\x55\x5f\x81\x4e\x23\x99\xb0\ +\xf2\x1b\x24\x9a\x7b\x1e\x55\x6e\x18\xa0\x89\x83\x14\xce\x79\xb3\ +\x9d\x4d\x63\x71\xbc\x46\x27\x09\xc5\xa5\x82\x19\x59\x62\x43\x74\ +\x17\xe5\xca\x8e\x5d\x76\xa7\xf1\xbc\x64\xcb\x70\x07\x9a\xfc\xc6\ +\xd4\x67\x58\xd5\x5c\x96\x56\x7b\x9b\x74\x03\x5f\xda\xab\xae\x35\ +\x25\x8e\x27\x92\x36\x66\x96\x30\xc0\x82\x2f\xd3\x5f\xa5\x58\x52\ +\xe0\x16\x75\xc8\x58\x65\x55\xe6\xa3\xbd\x74\x96\x56\x52\xba\x0a\ +\xeb\xdb\x6d\xb9\x8a\x59\x6b\x30\x1c\x88\xa9\x27\x43\x52\xc3\x97\ +\xda\x8a\xe1\x53\x33\x9b\x2f\x7a\xab\x2c\xa2\x30\x19\xda\xec\x46\ +\x8b\xfc\xd5\x77\x9a\x49\x48\x32\x1d\x46\x80\x0d\x80\xa3\x62\xc3\ +\xa6\x99\xa5\x92\xe3\x45\x1b\x0e\x94\x24\x86\x3e\x75\x56\x3d\xc5\ +\x2c\x1a\x2b\xd1\xa4\x45\xae\x75\xa0\xc6\x10\x30\x4f\x7e\xa2\xde\ +\xf4\x57\x19\x80\xe6\x6a\x9f\x13\xc4\x23\x48\xb0\xa9\x39\x57\x9f\ +\x22\x6a\xb7\xa5\x17\x60\x72\xf8\x68\xdd\x8d\xc9\x1a\x9a\xbb\xc2\ +\x5b\xef\x99\x09\xf5\x2e\xdd\x4d\x64\xf0\xb7\xf2\x3c\x6c\x74\x1a\ +\x8b\x9a\xb9\x0c\x85\x5c\x3a\x5e\xe3\x9e\xd5\xae\x35\x56\xbe\xbc\ +\xaa\x6c\x29\x65\x54\xd9\x94\xe8\xc2\xe0\xde\x89\x43\x03\x7c\xd5\ +\xd1\x91\x8a\x9a\x81\xa8\xb8\xa9\xa9\x22\xbb\xbd\x71\xae\xa9\x28\ +\xf1\x24\xcb\x89\x2d\xc9\xf5\x15\x5d\xd1\x64\x88\xc6\xe6\xc0\xea\ +\x0f\x43\x5a\x18\xf4\xcf\x86\xcc\x37\x8f\x5f\x95\x67\xd6\x39\x4e\ +\xcc\x20\x26\x36\x26\xf2\xdd\xd5\x76\xd6\xe0\xd3\xc3\x23\xb9\x0a\ +\x0a\xb8\xdd\x1b\x7a\xe3\xa8\xf9\xd0\x63\x43\x18\x44\xab\xeb\x8d\ +\xb7\xea\x2b\x3e\x11\xda\xf4\xd8\x21\x69\x65\x65\x03\x45\xb2\xdf\ +\xa7\x33\xfb\x7d\x2a\x93\x62\xe7\xd1\x44\x4a\x19\xb4\x0d\x6a\xd9\ +\xe1\xd1\x78\x58\x04\x51\xab\x90\x4b\x9d\xf5\xa7\x8f\x74\x51\x80\ +\xaa\xa1\x14\x59\x57\x6a\xed\x06\x20\x72\x2f\x1f\xd6\xc6\xa4\x82\ +\x37\x04\x50\x49\xa6\x2b\x0c\x7b\x91\x5d\x00\x8e\xd4\x35\x26\xd6\ +\x24\x9b\x00\x2e\x4f\x4a\xa3\x89\xe2\x45\x5e\xd0\x22\x65\x1f\x13\ +\x0b\x93\x45\xb2\x25\xda\xe1\xa9\xb5\x56\xe1\xf8\xdf\xb4\x4a\x21\ +\x95\x50\x33\x7a\x59\x45\xb5\xe9\x6a\xb2\x18\x28\x2e\x4d\x82\x82\ +\x6f\x54\xb2\xa5\x0e\x34\x7c\x44\x9d\x41\x16\x4b\x58\xf5\x02\x93\ +\x1c\x6b\x04\x62\x34\xdc\x80\x59\xb9\x9a\x94\x39\x99\xcb\x5a\xc5\ +\x49\x6b\xed\x40\xaf\xe2\x43\x1c\x82\xc7\x32\xeb\x6e\xda\x56\x3e\ +\xeb\x46\x43\xa4\xab\xee\x2b\x46\x42\xb0\xe2\x80\xd5\x63\x92\xe0\ +\xf4\x06\xa8\x60\x54\x3e\x32\x35\x61\x70\x5a\xaf\xe2\x54\xc9\x87\ +\x71\xf1\x0f\x30\xd2\xb5\x3c\x14\x6c\x08\x36\x3c\xab\x85\xb5\x63\ +\xb2\x8b\x9a\xa7\x1e\x2e\x61\x95\x06\x56\x3b\x00\x56\xe6\x9b\x8a\ +\x13\xb4\x2a\xc5\x95\x90\x1b\xba\xa0\xb5\xbd\xe9\xd0\x08\xf0\xc6\ +\x60\x66\x95\xca\x97\x24\x81\x6a\xb6\x00\x3e\x5b\x82\xca\x35\xbe\ +\xf5\xce\x41\x20\x8f\x49\x1e\x5f\x6a\x16\x8d\x1e\x65\x94\xb3\x06\ +\x51\x6f\x2f\x3a\xb1\x05\x1a\xc4\x8b\x12\x29\x9b\xeb\x41\x89\xb7\ +\xa8\x69\x73\xad\x44\x4c\x72\xdb\x29\x20\x73\x15\x21\x5e\xc6\x84\ +\x00\xb9\xd1\x76\x04\x38\x16\xd8\x1a\x92\x45\xed\x7d\x68\x26\x57\ +\x62\xad\x1b\x5a\x44\xd0\x03\xb3\x0e\x95\x54\x82\x68\x49\xa5\x7d\ +\xad\x09\x2a\xf0\xb0\x6b\xec\xa6\x8f\xc4\x87\xf1\x38\xee\xc8\x40\ +\x15\x9d\x43\x24\x8b\xb5\xc1\x52\x06\x9d\x08\xff\x00\xcd\x09\x52\ +\x76\xd6\x85\xf1\x18\x74\xff\x00\x98\x58\x8e\x40\x68\x7e\x75\x4a\ +\x58\xf1\x0e\xc6\x61\xa6\x6d\x40\x07\x51\x55\xa7\x16\xa4\xb2\x30\ +\x56\x04\xb3\x6c\xa3\x7a\x16\x23\x36\x42\xa5\x09\xf4\xdc\xdc\x37\ +\xce\xab\x0c\x54\x58\x58\x8e\x70\x5e\x56\xe5\x7f\xd6\xb9\x38\x84\ +\x33\x44\xe9\x24\x45\x34\x26\xe0\xdc\x0a\xce\xac\x3c\x8b\x1b\x1a\ +\x83\x41\x0c\xa1\x80\x49\x18\x6b\xe8\x93\x93\x0a\x36\x04\x0b\xee\ +\x3b\x6b\x49\x06\x80\x16\x3b\x28\xb9\xaa\xd8\x7c\x53\xc9\x89\xc9\ +\x27\xa1\xcd\x80\xfc\x35\x65\xf2\xb4\x4e\xa4\xd8\x32\x91\x7e\x95\ +\x99\x2e\x1e\x78\x4e\x7f\x84\x1f\x50\x3a\x56\x79\x69\x8d\x09\x06\ +\x51\xdc\x1a\xe1\x72\x2e\x45\xa9\x31\xe3\x22\x68\xc3\x4a\xcd\x9c\ +\x0b\x1b\x0d\xe9\xb0\x49\x2c\xaa\x1d\x63\x8e\x38\xfa\xb6\xa5\xa9\ +\xd0\x0c\x7c\xc7\x0d\x84\x56\x50\x0b\xbb\x58\x5f\x5b\x0a\xc9\x96\ +\x59\x24\xbe\x77\x2d\x7d\xee\x6b\x5b\x89\x2b\xbe\x04\x93\x87\x8d\ +\xb2\x38\xb5\xa4\xeb\xde\xb2\x64\x31\x89\x04\x72\x2b\x42\xcd\xe9\ +\xb9\xba\x9f\x9d\x73\xe7\xe9\x85\xac\x2d\x2c\x81\x62\x42\x49\xe5\ +\x5b\x38\x2c\x32\x61\x63\x1b\x3c\xbc\xd8\x8d\xbd\xa9\x7c\x16\x33\ +\x16\x1e\x49\x34\xcc\x5b\x28\xed\x4f\x7b\x8d\x47\x3a\x78\xcc\xed\ +\x54\x9d\xf5\x3a\x9a\x9f\x6a\xe5\x51\x6d\x45\xfb\xd7\x59\xbb\x56\ +\xc0\x96\x47\x3e\x5d\x5a\xdc\x9b\x51\x55\xe7\x88\x41\x8f\x8d\x97\ +\x28\x0f\x6b\xad\xce\x9d\x45\x3e\x30\x55\xee\x0d\xef\xbf\xf3\x54\ +\x4a\x48\xb8\xc0\xa4\x33\x30\x6d\xba\xd1\x4c\x5f\x58\x4a\xcd\x96\ +\xf7\x0a\x4d\xcf\x40\x2b\x17\x8d\x83\x8f\xe3\xea\xb1\x82\x04\x81\ +\x7e\x55\xa3\xc5\x78\xb6\x0e\x0c\xf0\xa5\xe4\x91\xbf\xcc\x03\x61\ +\xda\xaa\xe1\x63\x68\x10\xe2\x26\x00\x62\x27\xd4\x0b\xea\x8a\x6b\ +\x3c\xb2\xf4\xa2\xfe\x04\xab\x63\xce\x50\x32\xa4\x64\x2e\x9d\x06\ +\xf5\x64\x58\xef\x54\x78\x41\xff\x00\x89\x6f\xfe\x36\xfd\x2a\xe0\ +\x35\xae\x3e\x0a\x00\x33\x35\xce\xc3\x6e\xf4\x5e\x55\x46\x76\x1e\ +\x55\x17\xb7\x53\x45\x90\xa9\x0a\x75\x3f\xad\x56\xe2\x32\x02\xc2\ +\x25\x20\x85\xde\xdc\xcd\x37\xa4\x44\xae\xd2\x39\x66\x37\x26\xb8\ +\x54\x0a\x90\x2b\x0d\x0d\x4d\xa9\x80\xd2\x41\xb5\x4e\x6a\x74\x60\ +\xb1\x12\x98\x85\x94\x5d\xdc\x59\x47\xef\x54\x1b\x09\x89\x92\x75\ +\x41\x13\x0d\x37\x23\x41\x57\xdc\xf9\xe6\x6b\xf9\xae\x32\xf5\x0b\ +\x6d\x28\x92\x46\x0b\x94\xb1\xef\xad\x16\x6a\xd0\x88\xca\x20\x45\ +\x4d\xb7\x6e\xb4\xf0\x75\xa0\x0d\x44\x0d\x6e\x05\xac\x1e\x27\xc3\ +\x19\x1c\x5d\x39\x5b\x71\x5a\x09\x62\xb9\x94\xdd\x7a\xd6\x3a\xd3\ +\x60\x95\xe2\x37\x46\x23\xb5\x6a\x51\x8d\x45\xd3\xdb\xf4\xa2\x1b\ +\x8a\x46\x1f\x15\x1c\x9a\x3f\x91\xbf\x23\x4e\x22\xde\xd5\xb8\x04\ +\x45\xe8\x48\xa2\x5d\xaa\x6d\x7a\x40\x2d\x7d\x0e\xaa\x74\x22\xb3\ +\x71\x31\x18\xa5\x2b\xcb\x91\xeb\x5a\x85\x74\xa0\x91\x12\x44\xcb\ +\x20\xb8\xe5\xd4\x56\x6c\xd3\x2b\x2f\x99\xed\x52\x85\xaf\x65\xd4\ +\x9a\xb8\xd8\x38\x80\xb8\x77\xbd\xf4\xd2\x9d\x1c\x51\x45\xe8\x5d\ +\x7f\x11\xde\x8f\xcd\x3a\xa7\x88\x85\xd2\x14\x91\xf5\x60\x79\xfc\ +\x34\xcc\x2c\x4e\x22\x25\xdd\x95\x5b\x65\x06\xd7\xa7\xcc\x03\x64\ +\x8d\xbe\x23\x98\x8e\xc2\x86\x47\x24\xf7\xab\x02\x02\x5b\x44\x96\ +\x45\xf9\xde\x97\x1c\x32\x7d\xa5\x64\x92\x5c\xc1\x75\xbf\x3a\x2c\ +\xda\x5c\x9a\x25\x34\xa2\xf8\xab\x95\xc0\x1b\x7f\xcc\x6b\x56\x39\ +\x17\xda\xb6\xb1\xe9\xe2\xe0\x1d\x46\xe9\xe7\x15\x8c\x6b\x1c\xfd\ +\x31\x38\x42\xcb\x8a\x8d\x94\x90\x43\x8d\x6b\x6b\x88\x9c\xb0\xcd\ +\x61\xb9\xcb\xf9\xd6\x18\x62\x08\x23\x71\x5b\x78\xe1\x9f\x08\xc4\ +\x10\x6e\xaa\xd7\xbe\xfa\x6b\xf9\xd5\xc7\xca\xaf\xac\xb2\x85\xe0\ +\x96\x30\x45\xd9\x0d\xbf\x5f\xda\x87\x0e\x99\x70\x71\x03\xcc\x16\ +\x16\xe8\x69\xd1\x30\x52\x58\xe8\xa1\x4d\xc9\xe5\xa5\x09\x37\xca\ +\xb6\xb1\x08\x05\xbe\x55\x13\x78\x71\xb6\x36\x22\xd6\xdf\x7a\xd2\ +\xbe\x53\x73\xcb\x7a\xc9\x43\x96\x45\x27\x91\xb9\xad\x49\x08\x63\ +\x9b\x93\x6b\x5a\xe2\x2a\xa3\xdb\x0d\x8f\x59\x00\x39\x0b\x66\x1e\ +\xd5\x61\xb1\x10\xa4\x6c\x43\x86\x26\xf6\x51\xce\xf4\x18\xb4\xcd\ +\x11\x1b\x91\xaa\xf5\x15\x45\x2d\x9d\x73\x6d\x7e\x74\x78\x9a\x58\ +\x5c\xdf\x64\x8f\x36\xfa\xdb\xda\x8a\xe6\xf6\x16\xbf\x7e\x54\x33\ +\x92\x24\xb2\xb5\x94\xed\xd8\x57\x0b\x28\xb0\xf9\xd6\x82\x58\x66\ +\xf5\x12\x7d\xb4\xa9\x16\x0b\x61\x43\x9a\xa4\x1b\xd4\x9c\xe7\x63\ +\xd0\xd0\xb0\x37\xbd\x49\x60\x7c\xa3\x73\xa5\x11\xb0\x1a\x9b\x7b\ +\xd4\x80\x59\xaf\x7d\x01\xeb\x6d\x7e\xb5\x05\xd8\x0f\x33\x5c\x73\ +\x07\x51\x52\x59\x3a\x8e\xe7\x61\x49\x9f\x11\x85\x45\x39\xde\x4d\ +\xb4\xfb\xb2\x2f\xf3\xa1\x2a\x71\x18\xd5\x66\x53\x10\xb8\x93\x60\ +\x39\x1a\x64\xb8\x94\x8a\x20\xcb\xe6\x90\x2d\x89\xbf\x95\x2c\x39\ +\x9a\xab\x89\xc6\x99\x2f\x1a\xa6\x44\xe5\x66\xd4\xfc\xeb\x37\x1d\ +\x02\x2a\xc7\xe1\x33\x2a\xc8\xd6\x2a\x5a\xff\x00\x3a\xe7\x79\x67\ +\x8d\x48\x63\xa9\x99\xcb\xa4\x89\x2b\x1d\xf2\x9b\xd0\xba\xb4\x78\ +\x69\x8b\xa9\x19\x93\x28\xb8\xb5\xc9\xa3\xc9\x0c\x0f\x91\x20\x43\ +\x94\xd8\xb1\xbd\xcd\x41\x2a\xba\xac\x44\x13\xb1\x72\x5b\xe9\x7a\ +\xcb\x48\xe1\xe2\x4c\x3c\x19\x27\x70\x50\x9b\x15\xdc\xa5\xf6\x35\ +\x77\xc3\xc4\x61\xe3\xf1\x95\xac\x2f\x6b\x75\xaa\x31\x0f\x10\xbc\ +\x6d\x7f\x3a\x9b\x9b\xfc\xe9\xff\x00\xe1\xe9\xc6\x30\x0c\x3c\xcd\ +\xe6\x88\x5d\x6e\x7d\x42\xa9\xfc\x15\x78\xd9\x91\x58\x8b\x07\x50\ +\x48\xe9\x42\x9e\x47\x22\xe3\x5e\xb4\xd9\x83\x03\x66\x16\x3d\x29\ +\x6c\x9d\xf5\xae\x81\x5e\x7c\x28\x7c\x75\x94\x05\x52\xa1\x9b\xb5\ +\x58\x36\xb0\x55\x16\x55\x16\x15\x28\xa0\x48\x0d\xcd\xda\x36\xbf\ +\xc8\x8b\x7e\xf5\xce\xcb\x04\x46\x69\x6c\x00\xf4\x83\xf1\x1a\x27\ +\x49\x5b\x8c\xb8\x8f\x06\x20\xbf\x9a\x43\x98\x8e\xd5\x9b\x2c\x26\ +\x60\x98\x7b\xfa\x48\x77\x62\x3d\x3d\x05\x14\xaf\x26\x27\x11\x99\ +\xdb\xcc\xc6\xde\xd5\xab\x81\x81\x53\x0e\x31\x0e\xbe\x77\x76\x65\ +\x53\xf9\x13\xf2\xae\x7f\xed\x4f\x82\x0a\x23\x88\x26\x97\x3e\x66\ +\xb5\x75\xaf\x44\x41\x2d\x73\xa9\x34\x4a\x2d\xef\x5d\x70\x01\x12\ +\xc6\xf7\xd3\xa5\x11\x14\x56\xae\xa9\x04\x21\x24\x00\x09\x27\xa5\ +\x54\xe3\x73\x5b\x0c\xeb\x86\x65\x33\xc6\x9f\x78\xc3\x9a\xf4\x1e\ +\xd5\x67\x1f\x2b\x41\x81\x2c\x9a\x34\x8d\x92\xfd\x05\xab\x37\x05\ +\x1f\x8d\x21\x42\x33\x07\xd1\x87\x51\xbf\xec\x07\xce\xb3\xca\xfc\ +\x30\x8f\xf0\xde\x03\xc5\xc5\x7d\xa7\x14\xb6\x46\x6f\x28\x27\x57\ +\x35\xb4\xf1\x45\x33\xf9\xb0\xeb\x72\x7e\x0d\x0d\x09\xc2\xb7\x88\ +\xae\x31\x08\x85\x3d\x2a\xaa\x6c\xbd\xab\xa6\x4c\x63\xbe\x51\x2a\ +\x88\xce\xec\xa2\xc2\x8e\x33\xf3\x33\x15\xba\xad\x12\x18\xf8\xa0\ +\x8e\x27\x06\xcf\x60\x6a\xe3\x6a\xc7\x2e\xd7\xd2\x97\x1e\x12\x34\ +\x90\x3c\x53\xb2\xba\x9b\xdd\xd7\x4f\xca\x98\xd2\xb4\x6c\x7c\x40\ +\x8e\x83\x76\x45\xca\x57\xe5\x4c\xe8\x16\x71\x1e\x1e\x0d\x2d\x6f\ +\x13\x2d\x87\x61\xfc\xd5\x46\x94\xa6\x2e\x38\x40\x41\x9c\x02\xcc\ +\xc2\xfb\xd5\x63\xc4\x30\xb8\x62\x13\x19\x88\x46\x3b\xd9\x63\x24\ +\x8d\x7a\xd0\xe3\xf1\xb8\x39\x22\x47\x11\x4a\x1d\x96\xe1\xae\x34\ +\x1c\x85\x66\xf2\xff\x00\xad\x62\xfc\x8c\x06\x29\x60\x70\x2e\xe2\ +\xea\x42\x80\x54\xf7\xa0\xbd\x67\xe0\xb1\xf8\x48\xdb\x34\x89\x2b\ +\x39\xd0\x35\xc6\x95\x64\x62\xb8\x7b\x35\x97\x18\xc2\xfb\x66\x8c\ +\x80\x3d\xcd\x13\x94\xa8\xeb\xd7\x5e\x83\x36\x1f\xff\x00\xe7\x61\ +\xbf\xef\xfe\xd4\x48\x82\x40\x7c\x19\xe2\x97\x5d\x91\xbf\x9a\x50\ +\xc3\x31\x65\xcb\x6c\xc0\x11\xae\xcc\x3a\x54\xab\x44\xf6\x2b\x2a\ +\xad\xfe\x16\xdc\x52\xb5\x56\x01\xb4\x20\xd3\x16\x57\x1a\x83\xaf\ +\x5b\x6b\xf5\xa8\x05\xf1\x29\x19\xb2\xc3\x23\x0e\x6c\x45\x85\x58\ +\x56\x0c\xa1\xd0\x92\xad\xb1\xa5\x09\x5f\xf1\x93\xf3\xa9\x8e\xc0\ +\xdd\x0e\x42\x4e\xb6\xd5\x4f\xb8\xa6\x2a\x78\x34\x6a\x69\x2a\x7c\ +\xd9\x48\xca\xc7\x61\x7b\x86\xf6\x34\x52\xc8\x21\x8f\x3c\x8a\xc7\ +\x5b\x58\x69\x5a\xd0\x70\x37\xab\x38\x4c\x51\x8c\x64\x71\x99\x7d\ +\xf5\x15\x4e\x09\x23\x99\x43\x44\xc2\xfc\xd5\x8e\xa2\x9b\x91\xaf\ +\xcb\x5e\x57\xa6\x54\xd4\x56\x05\x43\xa1\xba\x9a\x35\x70\x45\x67\ +\x60\x24\x29\x88\x08\x76\x6d\x08\xab\xbb\x1b\x8a\xdc\xac\xd8\x63\ +\x1d\x28\x76\xa8\x56\xbd\x71\x34\xa0\xb9\x6c\xe0\x1f\x4d\xea\x24\ +\x9a\x14\x62\xae\xe7\x30\xdc\x01\x45\x7b\x29\xbf\x4a\xce\xc2\xc6\ +\x65\x66\x67\xf3\x2a\xeb\x6e\x67\xde\x8b\x52\xea\x31\x75\x32\x95\ +\xb1\x7b\x65\xec\x05\x2d\x8d\xc9\x00\xd4\xa1\x24\x90\x4f\xf6\xa0\ +\xcc\x10\x1b\xee\x0d\x15\x25\x88\x28\x00\x3b\xd1\x03\xad\x21\x49\ +\xce\x0f\x7a\x60\x27\xa5\x11\x2c\x42\xc2\xfa\xec\x74\x3e\xc6\xb1\ +\x31\x89\xe1\x62\x5e\x3f\xc2\x48\xad\x68\xc9\x3e\xe4\xda\xb2\xf8\ +\xc3\x2b\x71\x19\x8a\x9b\x8c\xd4\x72\xf0\xf1\xf5\x5e\xf5\x73\x07\ +\xc4\x0c\x71\x78\x32\xa0\x74\xd8\x1e\x6a\x2a\x8d\xcd\x1e\x1f\x0f\ +\x34\xe6\xd1\xa5\xc7\x53\xb0\xac\x4b\x67\x8d\x55\x9c\xd0\xb3\x08\ +\xcb\xe4\xcb\x62\xca\xfa\x66\x27\x61\x7e\x95\x0e\xcc\x65\x21\xd4\ +\x8b\xeb\x73\xce\x87\x89\x70\xb7\x91\x51\xc4\xd1\x99\x32\x65\x65\ +\x23\x47\xb6\xc2\xfc\xa9\x38\x61\xc4\x70\xa9\x67\xc2\x46\xd1\x74\ +\x12\xde\xfe\xd7\xa7\x6e\xf6\x16\x01\xab\xfc\x3e\x6c\xf1\xf8\x2d\ +\x6b\xaf\xa3\xbf\x6a\xce\x8f\x11\x85\x90\xd9\xcb\xe1\xdf\xa3\xa9\ +\xb5\x19\x93\x0c\x84\x13\x8c\x86\xfc\x80\x7b\x7e\xb6\xad\x4a\x9a\ +\xc0\xd8\x82\x37\x06\x96\xf8\x6c\x33\x36\x6c\xac\xb7\x37\x21\x4e\ +\x87\xf8\xa4\x47\xc4\xb0\xf2\x58\x11\x63\xd4\x87\xf3\x7b\x1b\x5a\ +\x8f\xed\x98\x5b\x5e\xed\xed\x63\x7f\xa5\xab\x5b\x19\xca\x73\xaa\ +\x93\xd3\x4b\x6f\x51\xcb\xb8\xa5\x2e\x26\x16\xbd\x96\x40\x06\xec\ +\x08\x36\xa1\x97\x13\x02\x59\xbc\x4c\xf7\xdc\x2e\xf5\x6c\x47\x0a\ +\x25\x22\x90\xb3\xc6\xe2\xe8\x49\x1c\xef\xb8\xa3\x92\x68\x61\x8b\ +\xc4\x95\xec\x0e\xca\x06\xa6\xad\x46\xb1\x5f\x9f\x6a\x8b\x80\x6f\ +\xcf\xa9\xac\xe9\xb8\xab\xe6\xfb\x98\xa3\x55\xfe\xa1\x72\x6b\x93\ +\x8a\x3d\x8f\x89\x04\x6f\xd2\xde\x5f\xd2\x8f\xd4\x39\x57\xa5\x62\ +\xaf\x98\x12\x3b\x8a\x57\x15\x7f\x17\x86\xc8\x49\xb9\x0e\xb9\x6f\ +\xb8\xaa\xe7\x89\x86\x5b\x7d\x95\x07\xfd\x66\x93\x8a\x9e\x4c\x51\ +\x16\x50\xaa\xa3\xd2\x0e\x9e\xf4\x5e\x53\xe2\x92\xaa\x85\x2c\x40\ +\x1b\xdc\x55\x9c\x16\x08\xe2\xe4\x13\xb0\x0b\x1c\x77\x11\xe6\x1a\ +\x7b\xf7\xa8\xc2\x44\xcf\x32\xf8\x56\x77\xbe\x83\x5b\x03\xdc\xed\ +\x5a\xcf\x00\x8e\x34\x89\x1a\xe2\x35\x03\xdc\xf3\x35\x9e\x3c\x74\ +\xda\x4a\x43\x87\x87\x58\xe2\x52\xc3\xe3\x71\x72\x6b\x9a\x42\x56\ +\xed\x1a\xb2\x5b\x62\xa2\x89\xa3\x76\xdc\xfd\x68\x5a\x0d\x34\x6a\ +\xdb\x2c\xfc\x7e\x13\xec\xee\x31\x10\x8c\xd1\x13\xa8\xfc\x3d\xab\ +\x23\xec\xf3\x41\xc4\x55\xa1\x52\x54\xb5\xd5\x80\xe5\x5e\x9d\x15\ +\xd4\xda\xde\x52\x3c\xc1\xb6\x34\xac\x46\x02\x27\xb9\x86\x66\x86\ +\xff\x00\x0e\xb9\x6b\x1c\xb8\x6f\x8d\x4e\x4c\xd6\xc6\xe2\x61\x93\ +\x2a\x38\x65\x04\x80\x18\x66\x00\x51\xe2\x78\xba\x43\x87\x0e\xf8\ +\x54\x66\x7f\x48\x0c\x45\xfb\xd5\x96\xe1\x98\x60\xb6\x33\x4a\x48\ +\xd6\xe1\x45\xa9\x27\x85\xc5\x36\x30\x93\x3a\xe5\x85\x00\x0a\xea\ +\x4d\x8f\x5f\xad\x59\xc9\x6c\x26\x2e\x29\x24\x90\x1c\x40\x82\x38\ +\xcb\x9c\xaa\x2e\x58\x58\x55\x77\x79\x31\x58\x90\x65\x62\xd9\x88\ +\xf9\x55\xfc\x47\x0f\xf0\xd0\x49\xf6\x88\x88\x26\xcd\xf7\x66\xdd\ +\xb4\xe4\x7b\xd4\xe0\x61\xc8\x59\xe0\x88\xc8\xdc\x98\x0d\x17\xeb\ +\x46\x5f\x29\xd8\x8c\x06\x10\x78\x4c\xf2\xbe\x53\xb0\x55\xf8\x3f\ +\xbd\x59\xb0\x0a\x15\x6f\x65\x16\xd6\x8e\x08\x7c\x28\x8a\x12\x0b\ +\x33\x5d\x88\xda\x88\xad\x6a\x4c\x66\xd2\x80\xa9\x02\x8e\xd5\xda\ +\x52\xb4\x36\xee\x2a\x00\xd6\x8c\x81\x5c\x05\x43\x55\xb8\xc2\x16\ +\xe1\xaa\x40\xf4\x49\x73\xf3\x15\x4b\x84\x3a\xc7\x8c\x57\x7f\x40\ +\x23\x31\xb6\xdc\xbf\x5b\x56\x9c\xf2\xc5\x10\x31\x3a\x97\x2e\x2c\ +\xca\x0e\xd5\x56\x6e\x1b\x30\xb1\x8c\x2b\x20\x20\xf8\x69\xea\x3d\ +\x2f\x59\xb3\xbd\x6a\x78\xb5\x20\x21\xf2\x8d\xaf\xa3\x6e\x0f\xb5\ +\x09\x17\xde\xe6\xb3\x44\xb8\xcc\x2c\x8c\x4a\xba\xdc\xea\xac\x34\ +\x26\xad\xc5\xc4\x70\xf2\x1f\xbd\x8d\xa3\x3d\x57\x51\xf4\xa6\x72\ +\x8b\x0e\x39\x86\xda\xfb\xf2\xae\xd3\x0f\x19\x92\x43\x61\x63\xbf\ +\xc5\xda\xa7\xc6\xc3\x88\x5a\x54\xc4\x26\xd6\x01\xae\x0d\xea\xa6\ +\x27\xec\xeb\x08\x92\x4c\x6a\x34\xcc\x2e\x11\x8f\x3a\xad\x4a\x32\ +\xf0\xfc\x1c\xb3\x45\x23\x46\xf2\x85\x16\x32\x33\xd8\xad\xba\x8e\ +\x74\xc9\xdb\x0e\xcf\x98\x60\xa0\x37\x3a\x0c\xa6\xf6\xfa\xd0\x1b\ +\xf2\xb1\xf9\xd0\xb6\xe7\xb5\x85\x73\x68\x77\xc3\x5b\x5c\x0e\x1c\ +\x7f\xd1\xfd\xe9\x72\x61\xb8\x74\xb7\xfb\xb7\x89\x89\xff\x00\x96\ +\xd7\xfc\x8d\x75\x45\x81\x7c\xdd\x3f\x3a\x2e\x22\xcf\x0b\x81\x89\ +\x30\xe3\x2d\xa6\x8b\x22\x9b\xfd\x76\xaa\x78\xac\x3e\x27\x07\x20\ +\x12\x29\x53\xf0\xb0\x3a\x1f\x63\x5a\x20\xda\x98\xcb\xf6\x9c\x1c\ +\xb8\x63\xa9\xca\x5a\x3d\x79\x8f\xf7\xf9\x51\x78\x4f\x8b\x41\xc3\ +\x71\x5f\x6b\xc3\xb4\x52\xff\x00\x9b\x1a\xdd\x5b\x9b\x0a\x76\x6a\ +\xc4\xc1\x4e\x70\xf8\x94\x94\x7c\x27\x5e\xe2\xb7\x4a\xab\xc2\xb3\ +\xc5\xac\x6d\xff\x00\xd7\xb1\xab\x8d\xd8\xab\x81\xa3\x53\x4b\x5d\ +\xef\x44\x34\xad\xa3\x95\xc6\x5c\xac\x2e\x0e\xe2\x95\x89\x86\x49\ +\x2d\xe1\xc8\xce\xa3\xe1\x66\xd4\x7b\x57\x5e\xa4\x1e\x86\xa1\x83\ +\xc1\x26\x1e\x4c\x3e\x52\x80\xc8\xbe\xa1\xb3\x54\x4f\x86\x60\x33\ +\xc2\xec\xd6\xd4\x83\xb8\xa2\x46\x25\xc3\x05\xbb\x01\x60\x46\xf5\ +\x6f\x0b\x0b\xe6\x0f\x25\xd4\x74\xe7\x5a\x93\x55\xe8\x1c\x17\x14\ +\xf9\xb3\x4f\xe6\x45\xd0\x13\xb8\xad\x65\x65\x65\xcc\xac\x18\x1e\ +\x62\xb3\xe7\x84\x36\x28\x22\x79\x55\x85\xfb\x0a\x38\xe2\x9e\x07\ +\xcd\x13\x09\x07\x30\x39\xfc\xab\x7c\x76\x33\x57\x74\xb5\x0b\xca\ +\xaa\xf9\x0c\x8b\x7e\xe3\x6a\x1c\xd7\x50\xc0\x11\x7e\x47\x71\x5d\ +\x98\x2c\xb7\x36\x02\x40\x06\x63\xc8\x8e\x47\xde\xb5\xa0\xac\x76\ +\x20\x78\x5e\x1a\x4a\xad\x9b\x72\xbc\xa9\x1e\x22\xc4\xaa\x60\x91\ +\xb3\x11\x67\xb8\xa9\xe2\x51\xa2\x15\x65\x00\x16\xbd\xc7\x2a\x3e\ +\x1c\x88\x22\xf1\x48\x05\xb3\x5b\x5e\x55\x9f\xa5\x6a\x26\x49\x23\ +\x0f\x1f\x31\xa8\xe9\x49\x9d\x6f\xa8\x1a\x93\x46\xde\x6f\x32\xd9\ +\x5c\x6c\x6d\x6f\x91\xed\x49\xc6\x49\x29\x4f\x0d\x21\x65\x6f\x88\ +\x8d\x40\x1d\xa9\xa1\x31\x80\x07\x23\x7a\x23\xf9\xf2\xa4\xe1\x6f\ +\xe0\xa5\x81\xf2\x5c\x1f\xf7\xf3\xa6\xa1\x0c\xc4\xd1\x10\xd0\x88\ +\xa3\x69\x0e\xbe\x1a\x96\xac\x29\x1b\x33\x96\x3b\x93\x7a\xd6\xe2\ +\x72\x78\x7c\x39\xb6\xbc\x87\x27\xef\x55\xf8\x54\x28\xb0\xfd\xa1\ +\xd4\x16\x63\x65\xbf\x2a\xcf\x2e\xee\x35\x3a\x80\xc1\x60\x4c\x8a\ +\x24\x95\xb2\x2d\xf4\x5b\x6a\x6b\x44\x65\x54\x08\x8b\x95\x06\xc2\ +\x96\xce\x49\xb9\x35\x19\xe9\x9d\x0b\x74\xc0\xd6\xda\xdf\x31\x43\ +\x2a\x89\x2e\xca\xc5\x24\xfc\x43\x9f\xbd\x0e\x6d\x2a\x03\x54\x15\ +\xe7\x52\x3c\x93\x46\x3b\x15\x39\x4f\xc8\x8a\x57\x85\x87\xfc\x33\ +\x7f\xfe\xe6\xae\xbb\x23\xa6\x57\x19\x87\x6e\x55\x56\x48\x98\x5c\ +\xa0\x2c\x3f\x31\x45\x87\x49\x38\x6c\x16\x6c\xc2\x19\x2f\xd7\xc5\ +\x34\x66\x34\x90\x91\xe2\xba\x5f\x6b\xd8\x8f\x9d\xa8\x0b\xdb\x90\ +\x34\x25\xbb\x0a\x3a\x21\x6f\xb4\x61\x58\x30\x24\x03\xb1\x1b\x1a\ +\xbb\x82\xe2\x10\xc8\xbe\x1c\xa1\x22\x70\x3d\x45\x46\x53\x55\xc4\ +\xc4\xc7\xe1\xbd\x99\x3a\x1a\x19\x70\x0e\xcb\x9f\x0f\xf7\x8b\xd3\ +\x9d\x53\x67\x87\xff\x00\x56\xf1\x73\xc1\x14\x82\x68\xd9\x64\xcc\ +\x9a\xaa\x6c\x75\xb5\x67\xcf\x3b\xca\xe5\xdc\xdd\x8d\x48\x56\x55\ +\x55\x70\x54\x32\xb2\x6a\x39\xdc\x11\xfb\xd5\x76\x24\x12\x0e\x96\ +\xa3\x95\xaa\x41\x86\xa2\x07\xa5\x29\x4e\xb4\x6b\x59\x26\x03\xf9\ +\xd5\x84\x8c\xbc\x82\x30\xb9\xb2\x90\x15\x6d\xa3\x36\xe4\x9e\xb6\ +\xa4\x44\x06\x60\x5b\xd2\x35\x3e\xd5\xab\xc2\xa3\x29\x84\x18\x89\ +\x57\xef\x24\x62\xc9\x71\xa8\x07\x9d\x6f\x8c\xd1\x6a\xd4\x00\xe1\ +\xe1\x11\x83\xe6\xb7\x9c\x8e\xbd\x2a\x43\x03\x4b\x1b\xd1\xa0\xd6\ +\xba\x30\xe2\x0f\x4a\x13\xa1\xa6\x69\x7d\xea\x1b\x28\xd4\x91\xf2\ +\xab\x11\x7a\x54\x15\xa6\x05\x0c\x2e\x2a\x4a\x91\x52\x21\x85\x01\ +\x8b\xef\x3c\x48\xd8\x23\x9f\x50\x23\x46\xab\x05\x6f\x49\xc5\x32\ +\xc7\x26\x42\xe7\x35\xb5\x55\x17\xb7\xbd\x18\x8a\x92\x39\xe5\x53\ +\x13\xa2\xc4\x81\x86\x63\x9a\xf9\xbd\xa9\xb9\x54\x28\x44\x16\x45\ +\xd8\x52\x92\x78\x90\xf9\xd2\x40\x4f\x33\x4d\x61\xa5\xc1\xb8\x3b\ +\x1e\xb4\x17\x1b\x0a\x12\xdd\xab\xac\xc4\x5e\x84\x9a\x82\x49\xa8\ +\x2d\x42\x4d\xe8\x6a\x38\x3c\xc2\x97\x8d\x96\x48\xa0\x46\x89\xca\ +\xdd\x88\x36\xe7\x53\x7a\x5e\x30\xd8\x43\x21\x52\xd1\xa1\x39\x87\ +\x7a\xaf\x8b\x15\x15\x99\x66\x56\x7b\x8d\x41\xd6\xb4\xa7\xbe\x72\ +\x79\x31\xf2\x9e\xb7\xaa\x78\x89\x5b\x1b\x32\xaa\x29\x55\x1f\x11\ +\xd6\xde\xf4\x79\x9f\x0a\xaa\x4b\x09\x62\x2d\xb1\x16\x3b\x72\xac\ +\xc3\x56\x04\x8f\xcd\xb3\x0e\x8c\x2e\x3f\x3a\x07\xc3\x61\x5d\x73\ +\x49\x87\x54\x1b\xdd\x5b\x2d\xff\x00\x9a\x4b\xe3\xa2\x0b\xf7\x71\ +\x31\x6f\xeb\x3a\x55\x69\x25\x92\x46\x0e\xe4\x34\x92\x1b\x46\xa7\ +\x6f\x7b\x74\xa6\xf2\x8b\x1d\x88\x8b\x0d\xe2\x59\x1e\x45\x54\x37\ +\x16\x50\x48\xbe\xd7\xd7\x7a\xab\x26\x0b\x07\x23\x97\x79\xb1\x04\ +\x9f\xe9\x5a\x6c\xac\x01\xc8\xa6\xea\x0e\xe7\xe2\x3c\xc9\xa5\xb3\ +\xa8\x6c\xa4\xd8\xfe\x95\xce\xb4\xe8\xf0\xef\x31\xb4\x71\x13\xa6\ +\xe2\x82\x58\x65\xc3\xf9\x64\x52\xa4\xeb\xad\x6b\xb8\x1a\xa2\x59\ +\x63\x4f\xa0\xee\x6b\x3f\x1f\x30\x96\x50\x17\xd0\x82\xcb\x7f\xd6\ +\xab\xc7\x04\xaa\xeb\x7d\xcd\x72\xe9\xa7\x4d\xaa\x6b\xbb\xf4\xa0\ +\xba\x9d\x82\x36\xc5\xa0\x3b\x31\xca\x7e\x7a\x7e\xf4\xa0\x2f\xd7\ +\xe9\x44\xa2\xcd\x71\x7d\x3a\x5b\xf9\xa6\x26\x3e\x21\x04\x78\x99\ +\x10\x03\x65\x72\x07\xb5\x3b\x05\x8a\x9f\x0a\xf7\x8a\x4c\xb9\xbe\ +\x13\xb1\xad\x2c\x46\x1f\x0b\x8b\x9c\xcd\x2f\x8b\x1b\x9f\x51\x40\ +\x0e\x63\xd7\x5a\x98\xb0\xbc\x3e\x16\x0c\xb0\x34\xac\x07\xaa\x56\ +\xd3\xe9\x58\x9c\x6c\xa7\x4a\x8b\x8b\x21\xb0\x9b\x08\x84\xfc\x45\ +\x09\x1f\x96\xd4\xf4\xc6\xf0\xf7\x5b\xf8\xb2\xc6\x7a\x32\x66\xfd\ +\x2a\x5a\x3c\x24\x82\xcf\x83\x8c\x5c\xef\x1d\xd4\xd4\x45\xc1\xe0\ +\xc4\x4b\x9b\x0f\x23\x28\x06\xe5\x1f\x6f\x60\x6b\x73\xf4\x0f\x89\ +\x23\x98\x06\x86\x65\x65\x3d\x74\x35\x6d\x30\xf8\x44\x8d\x5e\x59\ +\x90\xdf\xab\x7f\x15\x9b\x8b\x86\x68\x9f\x2c\x91\x14\x03\x61\x6d\ +\x00\xa4\xd3\xb9\xf0\x36\x86\x33\x05\x18\xca\xb3\x10\x07\x25\x8f\ +\x7f\x9d\x70\xc7\xe0\xd5\x0c\x85\xa4\xb2\xf3\x22\xb2\xe0\xc3\x4b\ +\x2a\x66\x58\xe4\x61\x7b\x79\x56\xac\x37\x09\x92\x58\x8c\x52\xc8\ +\x89\x73\x71\xe6\xd4\x7b\x8a\xd6\xf2\xf9\x06\x45\xa8\x31\xf0\x29\ +\x2d\x20\x92\xf2\x0b\xdf\xa0\xa7\x47\x8f\xc0\xb7\xfc\xe6\x07\xba\ +\x55\x01\xc3\x8c\x91\xae\x7c\x42\x29\x5f\x21\xb0\x3a\xda\xa3\xff\ +\x00\x4d\x60\x72\xa6\x22\x33\x61\xbe\xa2\xf5\x4b\xc9\x64\x6c\xa1\ +\x59\x17\x34\x52\x2c\x83\xaa\x9b\xd7\x5f\x75\x22\xe0\xee\x0d\x62\ +\x9c\x16\x36\x23\x9e\x3f\x31\xe6\x63\x6b\xfd\x69\x90\xf1\x4c\x44\ +\x44\x47\x89\x84\x32\xed\x98\x8b\x1f\xad\x3f\xaf\xe8\xc6\x89\x86\ +\x03\xae\x43\xa7\xf5\x69\x53\x9e\x35\x5c\xaa\x00\x1d\xa9\x11\x62\ +\xb0\xf8\x96\xc8\xb2\x80\xc0\x5e\xcd\xa7\xe7\x4f\x58\xd9\x45\xd5\ +\x2e\x3a\x8d\x69\x9f\xf1\x09\x1e\xe3\x45\x35\x21\x9f\x36\x6b\xdb\ +\xe7\x4b\xcf\x6a\x8c\xf7\xab\x40\xda\x45\x8a\x47\x32\x12\x16\x42\ +\x18\x10\x36\x36\xb5\xa8\x23\x99\x1a\x7b\x05\x74\xcd\xe9\xcd\xb3\ +\x51\x26\x76\xf4\x82\x7e\x57\xa5\x62\xe4\x48\x94\xb4\xee\x3b\x28\ +\x3a\xdf\x95\x45\x5f\xfc\x44\xf7\x58\xa0\xda\xc3\x31\xf7\x34\xdc\ +\x3c\x80\x60\x60\x04\x58\xe4\xe5\xef\x59\x53\x62\xa6\x93\x16\x44\ +\x90\xab\x48\x41\x2a\xf9\xb4\xb7\x5a\xd2\x0d\x96\x18\x45\xf3\x11\ +\x18\xcd\xde\xb3\x2e\xdb\x4e\x74\x66\x75\xfc\x55\x19\xd6\xfa\x30\ +\xa5\xdd\x4d\xed\x6a\x02\x7c\xd6\x14\xea\x58\xcd\x6a\xe7\x63\x94\ +\xd8\xda\x96\x49\xa8\x6b\xe5\x34\xa3\x81\xb0\x16\xe9\x50\x5c\x82\ +\x08\xde\x96\xad\x71\x53\x98\xdc\x5e\xa4\x99\x60\x8e\x7f\x31\x39\ +\x1f\xa8\xd8\xfb\xd5\x3c\x42\x3c\x4d\x66\x5f\xa5\x5d\x06\xa5\xb2\ +\xb2\xe5\x71\x99\x7a\x1a\x2c\xd4\xce\x07\x9d\x33\x0f\x88\x78\x5a\ +\xe8\x74\xe6\x0e\xd5\x38\xac\x2b\x20\x2f\x11\x2c\xbc\xc7\x31\x55\ +\x43\x9b\xd8\xd6\x3c\x6b\xd6\xbc\x58\xb5\x99\x4d\x88\x70\x47\x99\ +\x1b\x5f\xa5\xe8\x13\x3d\xf2\xc3\xe1\x15\xfe\xa1\x62\x2b\x2d\x49\ +\x49\x33\xa1\xb1\x15\x7b\x01\x8a\x59\x49\x0e\x32\xbf\x23\xc8\xd6\ +\xa5\xd6\x71\x63\xec\xf1\x6a\x71\x11\xa3\x06\x3a\xc8\xba\x65\xfe\ +\x28\x26\xe1\x8b\x7b\xc3\x25\xbf\xa5\xbf\x9a\xb1\x11\x21\xec\x47\ +\xb8\xeb\x54\x9a\x79\x17\x34\x71\xb9\xc8\x09\xb7\xb5\x37\x14\xd0\ +\x47\x10\x17\x59\x2c\x56\xfa\x80\x77\xfe\xd5\xae\x1b\x3c\x51\xb5\ +\xad\x74\x1a\x74\xac\x85\x37\xad\x4c\x3b\xe7\xc2\xc6\xcb\xf0\x8c\ +\xa6\x9e\x22\x9a\xa3\x5a\x25\xb9\x24\x03\x60\x37\x22\x97\x7b\x0a\ +\x6c\x43\x2a\x81\x5a\x80\x59\x53\xf0\x0a\x90\x00\xf4\x80\x3d\xab\ +\xaa\x6c\x6b\x49\x04\x03\xb8\x07\xdc\x54\x65\x53\xf0\x8f\xa5\x15\ +\xab\x97\x46\x07\xa1\xa9\x05\x97\xc3\x06\x46\x19\x02\x8b\xde\xd6\ +\xaa\xd8\x51\x6c\x32\xb1\xb8\x67\x62\x49\xe6\x69\x8b\x08\xf1\xe5\ +\xf1\x49\x65\x46\xd0\x13\xa5\x11\x60\xcc\x06\x5b\x0e\x5c\xa8\x40\ +\x7c\xb2\x0c\xb2\x8c\xc2\xd6\xb9\x1a\x8a\xa4\x9e\x3c\x38\xaf\xb3\ +\x29\x04\x16\xb0\xb8\xd3\xde\xae\xb5\x81\xb7\x3e\x82\xab\xe3\xd5\ +\xef\x0c\xab\xa1\x0d\x97\xde\xb3\x4c\x1b\x95\x0f\xa6\x5d\x09\x2b\ +\x7e\x54\x82\xc4\x9b\x20\xbd\xb7\x35\x62\x45\x01\x99\x40\xd2\xfb\ +\x52\x9b\xca\xa4\xa8\x1a\x50\x00\x7a\x8a\x8a\x30\xa0\x0d\x2e\x7b\ +\xd0\xb0\x00\x5c\x9d\x2a\x3a\x12\x2b\x90\x90\x74\xf9\xd4\xfb\x6b\ +\x50\xdb\x5b\xad\x45\x25\xcb\x02\xa2\xd6\xe7\x61\x6b\xd0\xe2\x23\ +\x59\xa1\x11\xb3\xe5\xb3\x5c\x1b\x5e\xa4\xda\xdd\x85\x42\x92\x58\ +\x00\x37\xa9\x13\x26\x0b\x0e\xb1\xb4\x9e\x24\x96\x51\xcc\x00\x0d\ +\x50\x9c\x5b\x13\xf6\x8f\x13\x33\x0f\x4d\x86\x8b\xf5\xab\x5c\x52\ +\x6c\xcf\xe0\xaf\xa5\x37\x23\x99\xaa\x65\xac\x6b\x9d\xcd\xe8\xc0\ +\xe7\x62\x7d\x63\xfe\x91\x40\xcc\x11\xb4\xdc\x8d\x6f\x44\xc0\x36\ +\xbb\x1e\x44\x0a\xe8\xa1\x69\xb1\x48\xa4\x8b\x31\x02\xb3\x49\xf3\ +\x4f\x3c\xa9\x95\xa4\x25\x7f\x08\xa4\x53\x0d\x71\x53\xae\x97\xf9\ +\xd3\xa8\xba\x90\x28\x97\x53\x63\xa1\xa2\x0a\x4e\x9c\xea\x40\xb5\ +\x10\x5a\x24\x0d\x94\x92\x01\xb1\xd4\x73\xa3\xca\x4a\x82\x96\xf9\ +\xd4\x8b\x17\xa9\xa6\x15\xe9\x50\x16\xac\x41\x15\xa9\x87\x4f\x0b\ +\x0e\xa9\xf1\x37\x99\xbf\x6a\xa5\x84\x88\x49\x89\x44\xd8\x13\xad\ +\x68\xb0\xbb\x93\xca\xf5\xbe\x30\x5a\xe5\x77\xcb\x96\xf7\x1d\x0e\ +\xa3\xf3\xa8\x6c\x84\xdd\xa1\x88\x91\xcc\xad\x48\xf6\xae\x22\xf5\ +\xa6\x50\x5d\xed\x60\xc4\x0e\x83\x4a\x53\x13\x7a\x32\x2d\x42\xd5\ +\x17\x06\x3e\x21\x1f\x0c\x9a\x8e\xcd\xd2\x96\x58\xe7\x35\x33\x06\ +\x31\xa2\x25\xb3\x3c\x82\xd7\xed\xad\x74\xa6\xf2\x16\x1d\x68\x42\ +\x0c\x46\xa0\xda\x8f\xc5\x63\xeb\xb3\x8f\xea\x17\xa4\x13\x5d\x9a\ +\xad\x4e\x97\x0b\x81\x94\xdc\xc1\x90\xf5\x8c\xd8\x0f\x95\x25\x70\ +\x53\xc4\x6f\x85\xc7\x01\x6d\x81\x25\x69\xad\x73\xb3\x11\x50\xb9\ +\xc1\xd4\x82\x28\xe9\x25\x5f\x8c\xaf\x34\x9b\xd8\x83\x4b\x9b\x1b\ +\xc4\xd1\xb2\xb4\x45\x4f\x68\xe9\xd7\xa2\x59\x64\x51\x65\x91\x80\ +\xe8\x1a\xac\xff\x00\xa9\x49\xa6\xe2\x73\xe8\x7c\x73\x7d\xbc\xa4\ +\x52\x8e\x0f\x1c\xce\x41\x85\xef\xcc\x9a\xd1\x92\x57\x6f\x29\x76\ +\x6f\x73\xb5\x43\x3d\x97\x56\x36\x14\x7e\x67\xf4\xea\xb4\x78\x27\ +\x45\x47\x9d\xd0\x04\x24\x35\xbc\xc7\x29\xdf\x6d\xaa\xd6\x21\x46\ +\x7f\x2e\xd6\xf2\xf7\x1c\xa9\x62\x51\x7d\x14\x91\xb1\xa8\x88\xe4\ +\x2f\x16\x62\x46\x50\xe9\x7e\x5d\x45\x33\x27\x81\x39\x0d\xaf\x7b\ +\x1a\x94\x52\x0d\xc9\xbd\x0e\x6a\x82\xd7\x39\x41\xf7\xa9\x19\x7a\ +\xeb\xd2\x55\x9b\x35\x81\xd0\x75\xa3\x2c\xdf\x87\xe9\x56\xac\x1d\ +\xec\x6f\xf5\xae\xbf\x2a\x58\x25\xb4\x0b\xda\x89\x4a\x33\x65\x59\ +\x55\x98\x7c\x20\xeb\x56\xa1\x23\xdc\x5e\xf4\x79\xcd\x27\x55\x3b\ +\x7b\x8a\x95\x6b\x8a\x75\x1a\x1a\xc6\xe3\x43\x49\xc5\x61\xd2\x62\ +\x5d\x3c\xaf\xd3\x91\xa2\x26\xc2\xf5\x19\x88\x3b\x1a\x92\x83\x02\ +\xad\x94\x82\x08\xe4\x6b\x81\xf3\x5c\x68\x6a\xf4\xea\xb3\x80\x18\ +\x59\x86\xcd\x54\xa5\x56\x8e\x42\xae\xba\x8e\x87\x7a\xc5\x8d\x2e\ +\xe0\xb1\x6c\x06\x49\x2e\xc3\x61\xd4\x55\xdc\x19\x5f\xb1\x21\x4c\ +\xac\xba\x86\xd3\x9f\x7a\xc5\x8c\xd9\x89\xd7\x5a\xb9\x86\x9d\xe3\ +\x7c\xc8\xd6\x63\xa1\xbe\xa1\xbb\x1f\xe6\x99\xc8\x58\xb9\x2e\x16\ +\x27\x6c\xc8\xde\x19\x3c\xad\x71\x52\x15\xf0\x6a\x64\x57\x12\x27\ +\xc4\xb6\xb5\x0f\xdb\x20\x24\x28\x56\x59\x0f\xfc\xb6\x3f\xa1\xe7\ +\x51\x36\x22\x16\x56\x5b\x3d\xd9\x6d\x62\x2b\x5d\x33\xda\xe4\x6c\ +\xae\xe0\xc7\x72\xac\x34\xa7\xa5\xf9\x8d\x6a\xa6\x15\x55\xb0\x28\ +\x14\x58\xe5\x20\x1e\x60\xd3\xb8\x79\x90\xc0\xa5\xe5\x62\x0e\xc0\ +\x80\x6b\x70\x2c\x2d\x10\x17\xa8\x19\xbf\x1c\x7f\xf6\x1f\xe6\x8c\ +\x1b\x0f\x30\x00\x7e\x25\x3a\x7c\xfa\x56\x83\x80\xa9\x2b\x70\x45\ +\x15\xba\xd4\xd8\xf4\xad\x05\x59\x62\x65\xfb\xc3\x72\xa0\x59\xc0\ +\xdc\x8e\xbf\x2b\xd7\x10\xac\xb7\x52\x19\x7a\x8a\xb5\x1f\xac\x03\ +\xb5\xf5\xaa\x78\x38\xb2\x89\x7f\xd6\x40\x17\xe5\x7a\xcd\x87\x5c\ +\x14\x0d\x86\xf4\xa6\x2a\xd8\xd0\x83\xfe\x52\x93\xf3\xab\x25\x7b\ +\x81\xef\xa5\x56\x96\x48\x53\x1b\xe2\x86\x04\x37\x95\xc8\x1a\x5c\ +\xf3\xa2\x94\x30\xa0\x2b\x4d\x0f\x13\x1b\x2b\x8b\xf4\x3a\x57\x3a\ +\xdb\x71\x59\xc4\x41\x45\x1b\x28\xa0\x74\x0c\x2d\x76\xfd\x69\xe4\ +\x50\xb2\xd0\x88\xc8\x14\x69\x70\x6a\x08\xf3\x5c\x9b\xd3\x1a\x81\ +\xad\x7a\x8c\x09\x1a\x5a\x82\x67\xf0\x30\xed\x27\xc4\x7c\xab\x4d\ +\x51\x73\x6f\xf6\x2a\x87\x11\x97\xc5\x94\x85\xf4\x26\x8b\x47\x2b\ +\x90\xab\x7b\xd0\x91\xda\x8a\xa2\xb9\x34\x1b\x0a\xe4\xcc\xac\x18\ +\x1b\x11\xb1\xa2\xa9\xb5\x3a\x9c\x6c\x05\xe8\xe3\xb3\x0f\x28\x27\ +\xf2\xa2\xcb\xe5\x3a\x5f\x4d\xa9\x9c\x3a\x13\x23\x14\xb5\x94\x6a\ +\x5b\xa5\x32\x22\x63\xc2\xcf\x34\xb9\x51\x33\x13\xae\x9c\xaa\xf4\ +\x3c\x3f\x28\x02\x59\x46\x9b\xe5\xd6\xaf\x22\x24\x71\x84\x41\x61\ +\x6d\x7a\x9a\x12\x40\xd8\x5e\xb7\x38\xc6\x6f\x25\x77\xc0\x46\xc2\ +\xf1\xcc\xca\xc3\xf1\x0d\xea\xab\xc0\xd0\x93\x1b\xea\x6f\xca\xb5\ +\x14\xad\xaf\x7b\x54\xcb\x08\x9e\x1c\xbf\x16\xe8\x6d\xf9\x55\xf9\ +\x83\x59\x16\xed\x5d\x96\xfc\xa9\xe5\x2c\x6c\x46\xb5\x19\x68\xc6\ +\xb4\x7c\x2d\x7f\xe2\x4e\x9f\x01\xab\x65\x6d\xca\xf5\x5f\x87\x69\ +\x8a\x02\xde\xa0\x54\x55\xb3\xbd\x33\xc6\x69\x2c\x2b\x81\xeb\x4d\ +\x65\xa5\x95\xa4\x3a\xc2\xc4\xda\xf9\x45\xec\x39\xd5\x27\xc6\x81\ +\x70\x60\x1f\xf7\x1a\xba\x2e\x0d\xc6\xf5\x9d\xc5\x54\x2e\x36\x50\ +\x05\x80\x34\x72\xdc\x6a\x1b\x0b\xb6\x21\x84\xec\x02\xa4\x67\xc8\ +\xa3\x99\xa9\x3b\xd4\xe1\xd1\x93\x09\x1a\xb0\x00\xea\x48\xf7\xa1\ +\x7c\xdc\x80\xab\xe2\x76\xde\xd5\x07\xf2\xa1\x0c\xe4\x1b\x28\xa0\ +\x05\x96\xf9\x86\x9d\xb9\x50\x70\xc9\x1e\x28\x80\x32\xbe\x5b\xec\ +\x00\xb9\x35\x1e\x2c\x44\x5f\x39\x5e\xee\x84\x0a\x5c\xca\xb3\x2a\ +\x82\xc1\x59\x4d\xd5\x88\xa9\x94\xcf\x24\x45\x24\x68\x54\x11\xa9\ +\x04\xb7\xe5\x46\xa3\x58\xd8\x03\x7b\x83\xb1\x1b\x1a\x8b\xd2\x60\ +\x41\x0a\x14\x59\x1d\xef\xca\xd6\x14\x46\xe0\xea\x08\xab\x56\x25\ +\x9b\x29\xb8\x3b\xef\x52\x1e\xe3\x51\x4a\x66\xf3\x0b\xf2\xa6\x01\ +\xa6\x62\x42\x8e\xa4\xd8\x55\xa9\x0c\xf4\xac\x54\xe6\x17\x8d\x86\ +\xae\x01\x05\x4e\xd9\x7b\xd1\xea\x5f\x42\x51\x7f\x15\xac\xcd\xed\ +\xd0\x54\xfd\xd2\x5e\xd1\xae\xbb\xe6\xd4\x9a\x12\x19\xae\x15\x97\ +\x40\xe2\xe0\x57\x2f\x99\xb5\xa8\x6d\x40\xb0\xb2\x8d\x00\x14\x4a\ +\x54\x0d\xef\x51\x12\xd9\x5b\x53\xbd\x49\x7f\xc3\xad\x05\xb3\x0b\ +\x93\xf2\xa8\xd5\x45\xd7\x7e\x94\x83\x12\xeb\x20\x20\xea\x75\xa0\ +\x91\x62\x86\xee\xca\x0c\x4e\x75\x36\xb9\x53\x5c\xa4\xde\xe7\x7f\ +\xd2\x88\xe5\x74\x68\xdf\xd2\xfb\xf6\xa9\x07\x0d\x3f\x8d\x19\xd4\ +\xe7\x8c\x6a\x4f\xc4\x3a\xd1\x0b\xdf\xcb\x54\x07\x8b\x83\xc4\x66\ +\x2b\xdb\x5d\x88\xa6\xcf\x8d\x56\x8b\x2c\x28\xca\xcd\x6b\x92\x76\ +\xf6\xac\xfe\xbf\xa9\x6a\xe6\xfa\xd1\x66\x14\xac\x3c\xab\x88\x4e\ +\x62\x45\x1e\x60\x79\xf7\xa2\xb9\xad\x6a\x15\xea\x64\x55\x95\x32\ +\x3f\xc8\xf4\xa0\xa9\x53\x6a\xb5\x62\xa4\x8a\xd1\x49\x95\xfe\x47\ +\xad\x10\x6b\x55\xa9\x51\x66\x4c\x87\xd4\x3d\x26\xa8\x6a\xa4\x83\ +\xc8\xd8\xd1\x61\x58\xba\xc9\x1e\x47\x06\xdc\x88\xdc\x51\x0f\x17\ +\x25\x83\x24\xd6\xda\xfa\x30\xaa\xea\xda\xd3\x15\xaa\xd4\xb1\x0f\ +\x15\x38\x7b\xc6\x20\x36\x3b\x86\x3b\x1a\xd2\xe1\xb8\xc8\x64\xc1\ +\xc6\x58\x14\xb1\x23\xa8\x15\x98\x72\x3d\xbc\x6f\x0c\xdc\x69\x9b\ +\x7f\x95\x16\x09\x44\x73\x4d\x02\x9b\xa6\x50\xc0\x74\x35\xa9\x6e\ +\xb3\x63\xd0\xae\xa9\x98\x10\xc0\xf3\x14\x71\x9a\xc7\xc2\xce\xf0\ +\xb5\xc3\x58\x74\x3b\x1a\xd3\xc2\xcc\x93\x26\x75\x20\x11\xea\x17\ +\xda\xba\xca\xcd\x8b\x08\x0a\xd8\x25\xad\xf8\x4f\x2f\x63\xca\x8d\ +\x5d\x49\xb1\xf2\xb0\xf8\x5b\x4a\x5a\x3a\xdf\x9f\xbd\x14\xae\xa6\ +\xca\x40\x61\xdf\x5a\xdb\x26\x01\x67\x06\xd6\xd6\x90\xb1\xa1\x8d\ +\x6c\x0e\xbd\x34\xbe\xb4\xc3\x1a\x15\x39\x4b\x2d\xc7\x23\xa7\xd2\ +\x82\x72\x21\xc3\x31\x5d\x32\x2d\x85\x49\x9d\x8e\x25\xa5\x31\x86\ +\xba\x2f\xe6\x6a\x9e\xd2\x18\xed\xe5\x7f\x2d\xaa\xc3\x1b\x9d\x69\ +\x2f\xa1\xcd\xcc\x57\x1a\xdc\x00\x6c\xf1\xab\x5f\x5b\x59\xbd\xc6\ +\x94\xc8\x71\x0f\x19\xb1\xf3\x2f\x43\x4b\x72\xa1\x09\x1b\x2b\xb5\ +\xfe\x7a\x8f\xd6\x95\x09\x25\x0d\xce\xc6\x8d\x2d\x28\xa4\x49\x41\ +\xc8\x6c\x7f\x09\xa2\x61\xae\xa2\xb3\x01\x21\xb4\x36\xa7\x47\x8a\ +\x99\x16\xd7\x0c\x3f\xa8\x5e\x9d\x18\xb0\xe3\x5a\x0c\xa5\x8e\x9f\ +\xf8\xa5\x49\x8e\xd3\xfc\x95\xbf\xb9\xaa\xd3\xe2\x65\x94\x59\x98\ +\x01\xd1\x45\x85\x1b\x14\x94\xcc\x74\xea\x23\xf0\xa2\x37\x27\xd4\ +\xc3\xf4\xaa\x4f\xb5\x1d\xa8\x5c\x69\x58\xb7\x5b\x2a\xa6\x8b\x2d\ +\x48\x5a\xce\x20\x5b\x5a\x9a\x92\x2a\x42\xd3\x89\x66\x38\xc9\x60\ +\x06\xf5\xaa\xb0\xac\x71\x08\x80\xbd\xbd\x47\xa9\xa4\xf0\xa8\xaf\ +\x39\x73\xff\x00\x2c\x5e\xae\x85\xae\xdc\x63\x16\x91\x94\x07\x00\ +\xb5\xc5\xa9\x80\x0e\xab\xf5\x14\x52\x45\x98\xdc\x1b\x1a\x01\x11\ +\xce\x14\xd3\x80\x56\x1b\x58\x37\x60\x2a\x51\x32\xa8\x1f\xbd\x31\ +\x50\x01\x60\x2a\x72\xd3\x89\x47\x89\xc3\xaf\x8e\xa3\xd5\xea\xec\ +\x6a\x99\x15\xb5\x94\x10\x55\x85\xd5\x85\x8d\x66\xe2\xe1\x68\x64\ +\xca\x57\x36\x6f\x4d\xb9\x8a\x2c\x31\x5d\x09\x57\x0c\xa7\x50\x6e\ +\x2b\x47\x47\x41\x22\xec\xc2\xfe\xd5\x9e\x79\xf9\x0e\x9f\x95\x5a\ +\xe1\xf2\x00\x3c\x26\x3e\x56\xd5\x49\x3b\x1a\x22\xa6\x91\x6a\x12\ +\x2f\x4e\x28\x79\xd0\x32\xda\xac\x05\x65\x25\xac\x06\xa6\xab\x49\ +\x0f\x8b\x8b\x92\x72\x2f\x18\x6b\x8b\xfc\x56\xab\x8c\x0e\x5d\x3d\ +\x4f\x75\x5d\x3e\xa7\xe5\x42\xea\x2d\x94\x68\xa0\x58\x0e\xd4\x58\ +\x62\xbc\x9a\xb1\x26\x94\xe2\xd4\xf9\x01\x51\xa8\xbd\xb9\x8e\x74\ +\xa3\xe6\xd2\xd6\xa8\x93\x6d\x49\xa1\x61\x4d\x22\xd4\x2c\x2b\x28\ +\x86\x16\x3d\x8d\x0d\xc5\xed\x4e\x65\x14\x21\x2d\xb5\x18\x74\x9c\ +\x54\xb2\x46\xd1\xaa\x3f\x86\x8e\x35\x7b\x52\xb1\x38\x86\x81\xc0\ +\x8f\x11\xe3\xa1\x1a\x83\xad\x5a\x9a\x21\x2c\x26\x36\x6c\xba\xdc\ +\x35\xb6\xa4\xe0\xe0\xf0\x26\x3e\x2d\xb3\x7c\x04\xec\x68\xba\x81\ +\x0c\x92\xcd\xac\x78\x5b\x13\xbb\x35\xec\x29\xc4\xfd\xe7\xa8\xb1\ +\x03\x56\xfe\x3a\x53\x24\x67\x6d\x19\x8f\xb7\x2a\x5a\x7a\x6d\x51\ +\x71\x37\x37\x22\xf5\xc2\xd6\xb5\x87\xd2\xa6\xd5\xd5\x27\x0e\xd4\ +\x5a\xda\x86\xe0\x1d\x6a\x0b\x12\x6c\x34\xa9\x08\xd4\x57\x1a\xea\ +\x93\xaa\x49\xbd\x09\x35\x17\xbd\x48\x77\x05\x72\xba\x86\x5e\x86\ +\x96\x23\x8e\x07\xfb\x44\x6a\x4a\x8f\x52\x9d\x6c\x3a\x8a\x20\x6a\ +\x64\x91\x61\x81\xa4\x61\x7c\xc3\x28\x5e\xb5\x22\x31\xb3\xc4\x65\ +\x8a\x48\xdb\x33\x29\xf3\x10\x2d\xa5\x5a\x70\x58\xe7\x40\x4a\xb6\ +\xa0\x8a\xcf\xc1\xe1\x9e\x6f\x31\x39\x50\x6e\xc6\x9f\x8a\x85\x70\ +\xf0\xe7\x8e\x69\x03\x5f\x40\x4d\xaf\x44\xb7\xd4\xb1\x66\x02\xe5\ +\x48\x1d\x6d\x51\x71\x55\x70\x12\x62\x1f\x14\xa3\x3b\x30\x3e\xab\ +\x9b\x8b\x55\xa2\x2e\xf6\x51\x7d\x74\xa6\x76\x84\xa7\xa1\xaa\xdc\ +\x4b\x49\xd5\xbf\x12\xeb\x56\x42\x30\x17\x20\x7d\x6a\xb7\x12\x20\ +\xca\x88\x06\xa8\xba\x9a\xaf\x80\x9a\x34\x3a\x50\x81\x73\x47\x10\ +\xf3\x00\x39\x6a\x68\x22\x96\x3f\x16\x48\x16\xf6\x24\x35\x58\xc0\ +\x42\x60\x8d\xf3\x90\x5d\x8d\xbe\x54\x97\x76\x8e\x48\x1d\x23\x2e\ +\xc0\x36\x80\x55\x9c\x39\x12\x47\x9d\x41\x52\x0d\x99\x4e\xe2\x99\ +\xe8\xa6\xaf\xad\x47\x7a\xbb\xc3\x74\xc5\xa8\x03\x46\xd0\xd5\x35\ +\xbe\x60\x40\x27\xda\xb4\xb8\x7c\x3e\x18\xf1\x18\xf9\x88\xb2\x8e\ +\x95\xd7\x8f\xac\xd5\xc8\xb6\xa3\x74\x04\x5c\x0d\x4d\x25\xa4\xf0\ +\xec\xc7\x61\xbd\x14\x18\x98\xa4\x75\x4d\x54\x93\xa5\xf9\xd7\x4d\ +\x9e\x32\x72\x5c\x79\x4f\x2a\xaf\xc5\x0d\xa1\x09\xf8\x8d\xea\xd1\ +\x03\x37\x7a\xa3\xc5\x9b\xef\x55\x7a\x2d\x5c\xba\x8a\x28\xb5\x2d\ +\xbb\xd1\xb9\x16\xde\x96\xfb\x57\x26\xa1\x13\xa3\x11\x9e\x3d\x5c\ +\x0d\x54\xec\xc2\xa3\x0f\x66\x80\xb0\x04\x10\xd6\x65\xe8\x68\xce\ +\xfa\x53\x06\x1a\x56\x1f\x68\x44\xd6\xde\x60\x74\x12\x0f\xe6\x8c\ +\x24\xf3\xa8\x6a\xb0\x70\x93\x11\x99\x56\xe0\xea\x35\xd6\x97\x26\ +\x1e\x70\x0f\xdd\x9d\x2a\xca\x95\x9c\xd0\xd3\x1a\x19\x83\x10\x62\ +\x6d\x3b\x50\x15\x60\x2e\x54\x81\xd4\x8a\xc3\x48\xae\x22\xbb\xf2\ +\xfd\x68\x80\xf7\xff\x00\xb8\xd4\x83\x96\xb8\x8a\x62\x8f\xea\x3f\ +\x3d\x6b\xb2\x83\xb9\x3f\x2d\x29\xc1\xa5\x65\xa9\x00\x02\x37\xb9\ +\xda\x9b\x91\x4f\x23\xef\x7a\xe8\xe3\xc8\x73\x6e\x3f\x4a\xb1\x6b\ +\x63\x86\xa6\x5c\x1e\x6b\x83\x98\xe8\x47\x41\x56\x00\xa4\x70\xf5\ +\xb6\x15\x5a\x32\x10\x96\x3e\x5f\x84\xf6\x23\xf7\xa7\x86\x05\x73\ +\x00\x45\x8d\x88\x3b\xa9\xe8\x6b\xb4\xf1\x87\x5a\xba\x50\x91\x47\ +\xe2\xc8\xe1\x00\xd0\x5f\xe2\xed\x51\x34\xb1\xe1\xe2\xf1\x24\xd4\ +\x9f\x4a\xf5\xac\xdc\x64\xef\x89\x6c\xd2\x01\x61\xb2\xf2\x15\x5b\ +\x89\x6e\x4e\x25\x1a\xbd\xa2\x83\x30\x1c\xdc\xd0\x2f\x13\x7c\xb6\ +\x78\x51\xbb\x8d\x3f\x4a\xa4\xaa\xc4\x90\x01\x6b\x7d\x68\x95\x24\ +\xbf\xf9\x6f\x6e\xb9\x4d\xab\x3f\xaa\x72\x34\x62\xc6\xe1\xa4\xd1\ +\xb3\x44\x7b\xea\x28\xe4\x48\xf1\x29\x95\x24\x46\xc9\xb1\x53\xad\ +\xfa\x56\x77\x81\x27\xfe\xd3\xff\x00\xda\x68\x4c\x52\x03\x70\x8e\ +\x08\xe6\x06\xd4\xea\xc3\x9a\x09\x6e\x54\xc6\xe6\xda\x6d\x40\x90\ +\xc8\xad\x90\x8c\xa4\x6d\x98\x81\x7f\xad\x54\xc6\x89\xe4\x52\x22\ +\x95\xc4\x8a\x2f\xe5\x3e\xa1\xfc\xd6\x6e\x20\x4a\x04\x71\xbb\x33\ +\x3c\xc6\xc0\x9b\x9b\x0b\xf2\xae\x77\x96\x7c\x32\x3d\x5c\x0e\x1d\ +\x0f\x88\xea\x19\x46\xa7\x91\xae\x70\x48\x3e\x12\x67\x3b\x66\x3a\ +\x28\xaf\x3d\x04\x86\x2c\x6c\x62\x2b\x00\xac\x00\x36\xf5\x0b\xd7\ +\xa2\xf1\xd6\x59\x99\x0e\x8e\x09\x00\x72\x35\xd3\x8f\x2d\x16\x61\ +\x79\x4a\x82\x5d\x83\x3b\x68\x48\xd8\x0e\x82\x81\x85\x39\xc6\x96\ +\xa4\xc8\x72\xa7\x7d\x85\x54\x16\xe5\x7a\x8a\x43\xaa\xf8\x83\x21\ +\xf7\xa7\x20\x19\x4d\xc8\xd7\xf2\xa1\xb0\x58\xaf\xd7\x7a\xc9\x85\ +\x3a\xeb\x4b\x6b\x03\x6e\x74\xf6\x04\x8e\x42\x96\xc8\x09\xd6\xf7\ +\xeb\x51\x28\x8a\x82\xb4\xc6\xd3\x7f\xad\x0d\x18\x80\x45\x04\xca\ +\x0e\x16\x55\x22\xf6\x52\x47\xbd\x3a\xb9\x00\x2c\x57\xf1\x02\x28\ +\xc4\x54\xc3\xcc\x17\x9d\x85\xf5\xed\x50\x16\x89\x98\x30\x43\x6b\ +\x12\xa2\xff\x00\x4a\x86\x20\x0b\x93\x41\x09\x1a\xd0\x9b\x57\x3c\ +\x82\xfb\x50\x9b\x9d\x49\xb7\x61\x41\x71\x55\xbd\xcd\x4a\x82\x4d\ +\x95\x6f\xec\x2a\x15\x03\x30\x5e\xa6\xab\x4f\x88\x91\xa4\xf0\x60\ +\x2c\x17\x6d\x0e\xad\x45\xb8\x96\xe4\xc9\x18\xbc\xb2\x2a\x76\xbd\ +\xcf\xd2\x85\xed\x94\x32\xe6\x21\x86\x84\xad\xa8\x70\xf0\x24\x3e\ +\x67\x01\xe5\x3b\xdf\x50\xb4\x6e\x4b\x35\xc9\xb9\xa5\x16\x73\x54\ +\x44\x18\x9b\x93\xa5\x18\x17\xf6\xfd\x68\xd5\x49\x36\x03\xd8\x54\ +\x83\x6a\xaf\xc5\x3f\xcd\x45\xbe\xcb\xb7\x4a\xba\x88\xc4\x7d\xd2\ +\xab\x9e\x6c\x7d\x2b\xfc\xd4\xa4\x10\xc6\xe5\xdb\xef\x64\x3b\xb3\ +\x6d\xf2\x15\x66\x8d\x66\xc3\x2e\x22\x24\xb4\x6c\xca\xb4\xdc\x3e\ +\x1e\x4c\x43\x78\xb3\x31\xc9\xd4\x9d\x4f\xb5\x68\x34\x84\xef\x6f\ +\x6b\x50\xc8\xdb\x17\xb9\xcd\xa2\xa8\xe7\xfc\x55\xf9\x5a\x04\x50\ +\x13\x24\x4a\x11\x79\xff\x00\x73\x48\x9a\x62\x5b\xc1\xc3\x0b\xb1\ +\xd0\xb7\xf1\x56\x99\x54\xaf\xde\x6a\xa3\x52\xa3\x44\x1e\xfd\x69\ +\x18\x63\x0c\x0c\xee\x54\xdd\xbd\x23\x98\x14\xd4\xe8\x50\x61\x22\ +\x2e\xde\x67\x6f\xd7\xa5\x55\xb3\xbc\x85\xc9\xb9\x63\x73\x7a\x6c\ +\xce\xf3\x49\x99\xb4\x1c\x80\xe5\x5c\xab\x61\xa5\x66\x90\xaa\x91\ +\xfd\xaa\xce\x0f\x0c\xd2\xb5\x94\x58\x0d\xcf\x21\x4c\xc1\x60\xda\ +\x4f\x3c\x9e\x54\xeb\xd6\xb4\x11\x00\x50\xaa\x2c\xa3\xf3\xad\x4e\ +\x3f\x68\xb5\x38\x60\x21\x5c\xb1\x0b\x77\xb6\xa6\x8c\x24\x47\x16\ +\x19\xa3\x5c\xd2\x21\xbf\x42\x46\xd5\x2a\xb6\xda\x83\x17\x13\xb2\ +\x2c\x88\x7d\x1c\xbf\x7a\xe8\xc1\xe9\x1a\x81\x65\x40\xbe\xc2\x99\ +\x15\x93\x36\x76\xb0\x1a\xde\x86\x09\x63\x68\x95\xd9\xc6\x6b\x6a\ +\xa3\x7b\xfb\x54\x82\x64\x90\x31\x1a\x8f\x48\xe4\xbf\xde\xb4\x83\ +\x8b\x49\x5c\x09\x32\xd9\x57\x40\xbc\xc7\xbd\x06\x10\x67\xc4\x22\ +\xf5\x61\x57\xa3\xf2\x8b\x6f\x4b\x8a\x20\x98\xd2\xc0\x79\x42\xe6\ +\x1d\xb9\x55\x78\xf6\x34\xf6\xca\x75\xb7\x3a\xa1\xc5\x54\x78\xe0\ +\xda\xfe\x51\xbe\xb5\x74\x1a\xa5\xc5\x35\xc4\xfb\x28\xa7\x97\x8a\ +\x2a\xb1\xd2\x90\x49\x00\x8e\x86\xd4\xd9\x0d\x28\x9b\xfc\xcd\xeb\ +\x9b\x50\xec\x04\x41\x98\xc8\xc2\xea\xbb\x0e\xa6\x9f\x8a\x62\x30\ +\xce\xc4\xea\xde\x51\x53\x87\x19\x30\x88\x3a\xdd\xab\xa4\xb1\x78\ +\x94\x81\x60\x0b\xeb\xcc\xed\x5a\xf8\x91\x7c\xa0\x06\x16\xd0\x7e\ +\x94\x12\x1e\x94\x52\x90\xd7\xcc\x6f\x7a\x51\x1d\xcd\x14\x27\x33\ +\x6c\x09\xd3\xbd\x48\x91\x8e\xfb\x0e\x47\x5a\x0b\x80\x2c\x2b\x94\ +\x92\x6c\x01\x26\x84\xe9\x62\x86\x4f\x52\x05\x27\xe2\x5a\xa7\x3c\ +\x4d\x0b\xe5\x61\x70\x76\x23\x63\x57\xb4\x0c\x14\xba\x06\x3b\x02\ +\xd4\x18\xb0\x87\x0c\x44\x92\x22\x95\xd5\x75\xbf\xe9\x45\x86\x29\ +\x0b\x72\xa2\x50\x49\xb0\xd4\xd0\x23\xc1\xcf\x13\x17\xd4\xd0\x89\ +\x96\x69\xd3\x0f\x09\x21\x5c\xf9\xda\xda\x9f\xed\x46\x93\x90\xa6\ +\x6c\xab\x9a\x46\x1f\x0a\x0b\xfe\x74\xc1\x95\x45\xe4\x8a\x48\x87\ +\xe2\x6b\x11\xf9\x54\x02\x02\xe5\x40\x15\x7a\x0a\x34\x62\xbb\x73\ +\xe5\x4c\x4b\xdc\x39\xc3\x61\x32\xf3\x46\xbe\xfb\xde\x8f\x15\x30\ +\x86\x45\x7b\x5c\xb2\x80\x41\x36\x04\xea\x45\xfe\x42\xa8\x60\x24\ +\x11\x62\xb3\x92\x6c\xe3\x2b\x0e\xd4\x7f\xe2\x58\x25\x93\x04\x92\ +\x46\x0b\x04\x7f\x35\xba\x01\x5a\xdf\xf1\x1f\x49\x96\x79\xb1\x38\ +\x96\x58\xbc\xf2\xf3\x6b\xf9\x53\xda\xb4\x21\xc1\xb4\x08\x1b\x13\ +\x31\x9d\x86\xad\x1d\xb6\xf9\xd5\x5f\xf0\x8a\x34\x65\xf3\xad\x89\ +\xbb\x2d\xc6\xfa\x6f\x5a\xc4\x02\xc1\xb9\x8e\x74\xf1\x9b\x35\x5b\ +\xf0\x11\x95\xb2\xac\x2a\xa8\x1b\x50\x40\xb1\xa6\x80\xe1\x6e\x25\ +\x72\x07\x22\x69\x2a\x8f\x1b\x05\x6d\x81\x25\x1f\x71\x6e\x86\x9d\ +\x1b\x07\x25\x43\xad\xf9\x81\xbd\x6e\x32\x3f\x12\x66\x5f\x29\x20\ +\x1e\xad\x43\x92\x5b\x1b\xc8\x75\xdc\x5e\xf7\xa6\x0a\x25\x50\x6b\ +\x58\x08\x58\x54\x91\xe2\x47\x1b\x01\xa8\xf2\xdb\xf4\xac\x2f\xf1\ +\x06\x0d\x61\xe2\x8f\x2c\x60\xe5\xf0\x96\xc3\x90\x26\xbd\x13\x34\ +\x48\x49\x79\x05\x97\x53\x6d\x4d\xab\x23\x12\xed\x89\x9d\x8b\xaf\ +\xf9\xc7\xd3\xd0\x72\x15\xcf\x9c\x99\x8d\x4b\xdb\x1f\x83\x61\xdc\ +\xce\x64\x91\x09\x8e\x3d\x4d\xfa\xf2\x15\xa4\xcd\x9c\x97\xd8\xdf\ +\x5a\xb4\xf8\x6f\xb1\xc6\xb0\x0b\xdb\x72\x7a\x9a\x44\x82\xcf\xee\ +\x2b\x19\x9d\x1d\xd1\xc1\x8a\x01\x42\x4d\xa8\x1b\x30\xde\x9a\xea\ +\x08\xb8\xb3\x29\xd8\xf2\xaa\x4e\x35\xae\x8e\x57\x88\xdd\x0f\xb8\ +\x3b\x1a\x75\x62\xd3\x28\xbd\xec\x3e\x94\x0f\x72\xc0\x5b\x63\x72\ +\x68\xe3\x92\x39\x63\x2c\xba\x11\xea\x1d\x2a\x06\xe4\xf5\xab\x01\ +\x4c\x2c\x68\x1c\x53\xa4\xda\x96\xda\x8a\x11\x46\x94\xc2\xcc\x7a\ +\x1a\x75\x2e\x41\x53\x41\xa8\xcd\x91\x1d\xf9\xaa\x93\x5d\x6e\xe6\ +\xa0\xd8\x5c\x1d\x98\x10\x6b\x28\xb4\x92\x03\x02\x31\x99\x14\x05\ +\x02\xd7\xd4\x50\xab\xc3\x2d\xc4\x66\x59\x0f\x50\x9a\x55\x7f\xb1\ +\x44\x8f\x98\xb9\x71\xf8\x6d\x6a\x79\x26\xc0\x1d\x00\xd9\x46\xc2\ +\xb3\xb7\xe9\x10\x8a\xdf\x04\x97\xf6\x5f\xe6\xa3\x28\xd6\xe0\xff\ +\x00\xd4\xc0\x7e\x97\xa1\x35\x16\xbd\x25\x33\x06\x28\x56\x29\x23\ +\x42\x45\x8d\x81\xfd\x6a\xae\x12\x29\x60\xc7\x20\x65\x07\x36\xc4\ +\x1d\x3d\xea\xd2\xad\xcd\x80\xd4\xd1\xaf\x99\x83\x28\xb8\x00\xaa\ +\x77\xea\x68\xcd\xed\x00\xee\x40\xae\xb6\x94\x41\x2c\x2e\xcc\xa0\ +\x75\x2c\x29\x89\x16\x72\x08\x05\x97\xae\x81\x4f\xcc\xef\x56\x22\ +\xe3\x17\x51\xa5\x31\x14\x0d\x6c\x3e\x62\xa3\x10\x71\x10\xa0\x65\ +\x48\x72\xed\xa1\xcd\x4c\xb1\x08\xb9\xc8\x2f\x6f\x35\x86\xd5\xa0\ +\xe6\x62\xdb\x9d\xb6\xed\x42\x75\xa2\xae\xb7\x5d\x6a\x01\x02\xf4\ +\x6b\x14\x9f\x6b\xf1\x33\x47\x95\x54\xaa\x0d\xcd\xbe\x55\x20\x00\ +\xa5\x98\x85\x51\xb9\x35\x5f\x11\x89\xcd\x74\x8b\xca\x9c\xcf\x33\ +\x55\xc8\x85\x8a\x91\x41\xca\xa7\x3b\x0e\xde\x51\xfe\xfe\x7e\xf5\ +\x57\x29\x26\xe7\x73\x46\x05\xa9\x98\x78\x9e\x56\xb2\x0d\x39\x9e\ +\x95\x9f\x5a\xf0\xb4\x42\x4e\x55\x04\x93\x57\xf0\xb8\x05\x5b\x34\ +\xda\xb7\xe0\x1f\xbd\x3b\x0f\x1c\x70\x0b\x26\xad\xcd\xbf\x8a\x66\ +\x6a\xdc\x98\xcd\xa9\xb5\xed\xca\xdc\x85\x12\x8a\x1b\x82\x2c\x6a\ +\x56\xca\xb6\x17\xa5\x91\x8b\x5e\xd7\xa6\xa1\x51\xcc\x77\xaa\xac\ +\x75\x00\x6e\x68\xe3\x00\x6e\x6f\x5a\x95\x1b\x68\xd4\xe5\x8d\x40\ +\xbe\xe7\xad\x14\x5e\x49\x6d\x7b\xe9\x42\xac\x2d\x63\x4c\x52\x00\ +\xd3\x4a\x50\xc3\x50\xcb\x23\x27\xde\x04\xcc\xa1\x6c\xc0\x1d\x46\ +\xb5\x05\xa8\x59\xc8\x46\x23\x73\xe5\x1e\xe7\x4a\x75\x1d\x04\xa9\ +\x2a\x07\x50\x40\x26\xda\xd6\x7e\x2e\x5f\x12\x77\x6e\xa6\xac\x4a\ +\xe2\x0c\x29\x50\x76\x19\x57\xbf\x7a\xce\x26\xe3\x53\xf2\xac\xf2\ +\xaa\x44\x3b\x5f\x40\x68\x4b\x54\x33\x5a\x82\x23\x9e\x74\x51\xcd\ +\x85\x63\x5a\x6a\x31\xb2\xaa\xdf\x40\xa0\x7e\x54\x8c\x63\x95\x30\ +\xba\x9d\x43\xe5\xa2\x99\xc6\x63\x6d\xaf\x49\x91\x81\x40\xcc\x2e\ +\x23\x70\xde\xc3\x9d\x36\x88\x37\x6f\x39\xe9\x7a\x16\x7a\x17\xbe\ +\x72\x07\xd6\x96\x59\x7f\x18\x62\x3e\x14\x37\x35\x23\x01\x19\x4b\ +\x31\xca\xa3\x73\x55\x71\x18\xdb\xdd\x61\x05\x57\xaf\x33\x4d\x6f\ +\x31\x0d\x20\x04\x8d\x97\x92\xff\x00\x26\x97\x26\x1e\x29\x1f\x35\ +\xca\x75\x00\x69\x59\xbb\xf0\xac\x41\x1c\x22\x04\x26\x35\x72\xeb\ +\x98\x96\xde\x8e\x3c\x3e\x1a\xe7\xc8\xc2\xea\x6f\xe6\xed\x42\x18\ +\x58\x28\x16\x0a\x2c\x28\xe2\xdc\xff\x00\xa4\xfe\x95\xa4\xcc\x8b\ +\x0f\x85\x51\xe8\x67\xff\x00\x51\xb5\xa9\xb0\xc5\x04\x73\x2c\xb1\ +\x87\x05\x76\x17\xb8\xa0\x5a\x25\x22\xf5\x89\x84\xe5\x34\x57\xa5\ +\xa9\xa2\x06\xb5\x00\x85\x68\x60\x1d\x71\x18\x76\xc3\x48\x75\xb7\ +\x94\xed\x59\xe0\x12\x36\x34\x50\xb3\x23\x86\x06\xc4\x1a\xd4\xaa\ +\x8e\x09\x64\xc3\x63\x41\x63\x66\x43\x95\x81\x35\xab\x81\x99\xb1\ +\x31\x34\x99\x57\x2d\x81\x16\xf8\x4f\x30\x7d\xa9\x18\xec\x32\x63\ +\xb0\xeb\x22\x0b\x4b\x6b\x82\x39\xf5\x15\x9d\x85\x69\x30\xf2\x96\ +\x89\xca\xb6\xc7\xca\x35\xf7\xeb\x4e\xde\x35\x9f\x5b\xea\x48\xd8\ +\x91\xed\x51\x1a\x83\x8b\x92\x4f\xc2\x32\xfb\x9b\x6a\x6a\x84\x3c\ +\x4e\x41\x61\x2a\x44\xfa\xea\x40\x20\xd5\xdc\x06\x25\x31\x39\xc0\ +\x39\x5f\x31\x60\x87\x72\x39\xfb\xd6\xe5\x94\x61\xf4\x9c\x74\xb2\ +\x20\x54\x5f\x2a\xb6\xed\xd7\xb5\x3a\xab\xf1\x17\x55\x54\x56\xb1\ +\x0a\x0b\x9d\x7f\x2a\x6f\x82\x3b\x8a\x4c\x90\x61\x7c\x08\xf7\x90\ +\x0b\x91\xd2\x93\xc2\x21\xb1\xfb\x4b\xec\xa7\xc8\x2d\xb9\xeb\x54\ +\x73\x34\x85\x09\xdd\xc5\xfe\x64\xff\x00\x7a\xda\x08\x22\x81\x63\ +\x03\xd1\x61\xf3\xac\xce\xee\x9f\x11\x32\x78\xb1\x95\x36\xd7\x6b\ +\xf2\x35\x97\x2a\x14\x25\x4f\xa8\x1d\x6b\x58\x9a\xa3\xc5\x96\xcc\ +\xae\x3e\x21\xad\x5c\xe7\xd5\x14\x5f\x6a\x51\xfd\xe9\x8f\x4b\xae\ +\x6d\x40\xe1\xdc\xa6\x2d\x6e\x6f\xae\xa3\xad\x5f\x7d\x18\xdb\xad\ +\x67\x46\xb9\xa5\x04\xef\x9a\xb4\x64\xd6\x43\xef\x54\xf1\x52\xdf\ +\x51\x4b\x90\xe9\x6a\x63\x02\x74\x1a\xd2\x64\x68\xc1\xb7\x88\x3e\ +\x40\x90\x3e\x75\x00\xd0\xbe\xd4\x4b\x94\x93\x96\x45\x6b\x6e\x06\ +\xe2\x84\x82\xc4\xdb\xff\x00\x15\x34\x59\xde\x85\xaa\x25\x95\x82\ +\xe6\x8a\x02\xe8\x37\x73\xcf\xda\xa6\xe1\x91\x5c\x02\x03\x0b\xd8\ +\xd6\x51\x4e\x35\xa8\x6a\x63\x2d\xec\x6f\x50\x10\x66\x1c\xfa\xd1\ +\x87\x40\x14\x9a\x2c\xb6\xa6\x65\xa9\xcb\x56\x2d\x28\x28\x2a\xca\ +\x4b\x2e\x61\x6b\x8d\xc5\x14\x71\xc6\xb1\xf8\x65\xe5\x75\xe8\x4e\ +\x5b\x7d\x29\x81\x68\x82\xd3\x80\x0a\xa9\x18\xb4\x51\x2a\x9e\x46\ +\xd7\x35\x2c\x5e\xd7\x73\x6e\x57\x34\xc8\x94\x5c\xb1\x04\xf6\x1c\ +\xea\x70\xe2\x62\xec\xf3\x46\xca\x76\x4f\x29\x21\x7e\x94\xe2\x05\ +\xac\xc1\x9d\x48\xb7\xa1\x5b\xf5\x3f\xc5\x47\x3a\x6b\x5b\x35\x83\ +\x02\x77\xb6\xb4\x06\x94\x1d\x7a\x57\x3b\xc7\x12\xe7\x96\xe3\xf0\ +\x8e\xb5\x2e\xc9\x14\x5e\x23\xeb\xf8\x47\x53\x54\x26\x91\xe5\x90\ +\xbb\x1b\x9f\xd2\xb3\x6e\x24\xe2\x71\x0d\x33\x6f\xec\xa3\x61\x4b\ +\x42\xc3\x73\xf2\xa8\xb6\xba\x1a\x76\x16\x23\x2b\x1b\x90\xaa\x37\ +\x35\x8e\xeb\x46\xe1\x30\xe6\x5f\x3b\x9c\xa8\x39\xf5\xf6\xab\xc0\ +\x85\x5c\x88\x32\xa8\xe5\x4a\x04\x9b\x6b\x60\x05\x80\xa2\x26\xba\ +\x48\xc8\xf3\x1a\xec\xc6\x97\x9a\xba\xe6\x95\x86\x86\xa9\xce\x00\ +\xb9\x34\x9c\xe3\xdf\xb0\xa8\x05\xcb\x5e\xd6\xa8\x62\xc4\x6d\xb9\ +\xe6\x69\x81\xc5\x56\xbd\x10\x6e\xf5\x2c\x59\x06\x8c\x3d\x56\x57\ +\xa6\x23\x16\x36\x02\xe6\x9d\x06\xe6\xbd\x0e\x22\x41\x14\x51\xb9\ +\x22\xe6\x41\x61\x7d\x4d\x26\x6c\x54\x10\x86\xbb\x66\x2b\xea\xb6\ +\xcb\x54\xa7\x9d\xe7\x91\x66\x94\xda\xc2\xf1\xa7\xe1\xee\x7b\xd1\ +\x79\x19\x0e\xc5\x4e\xd3\x49\xad\x85\xb4\x03\xa0\xa4\xbb\xd2\xf3\ +\x80\x34\x34\xb7\x92\xb3\x79\x35\x83\x76\xbd\x1e\x00\xdf\x12\x0f\ +\xe1\x05\xaa\xa3\xc9\xad\x85\xc9\xab\x1c\x3a\xe2\x39\x1e\xfb\xd9\ +\x45\x12\xf6\xbe\x2d\x96\xd2\xe7\x41\xd4\xd0\x19\x54\x5e\xec\x08\ +\x22\xc6\xd4\xb6\x60\x35\xa0\x2d\x7d\x6b\x5a\x12\x4b\x15\xca\x5d\ +\xdd\x47\x27\x3a\x7f\x7a\x92\xee\x45\x89\xb0\xe8\x28\x0b\x50\x93\ +\x59\xd3\x86\x73\x05\x4d\xa8\x81\x6b\x5e\xff\x00\x51\x48\xbb\x5c\ +\x5b\xe7\x46\x49\x23\x4f\x9d\x5a\xb0\xe5\x62\x45\xf2\xe9\x4f\x84\ +\xf9\x88\xec\x7f\x4a\xac\x5c\x11\xe5\x3b\xd3\x62\x62\xa6\xd6\xb9\ +\xca\x7f\x4a\xd4\xa1\x48\x1a\x90\x75\xa5\x67\xca\x2e\x41\x3e\xd4\ +\x68\xc1\xb5\x17\xac\x34\x7c\x66\x8c\x52\xe3\xa6\x2d\x69\x94\x8b\ +\x74\xbf\x7a\x24\x37\x72\x37\xb5\x56\x92\x6b\x68\x01\x04\xef\x7a\ +\x98\x4b\x13\xa5\xea\xd3\x8d\x9e\x17\x29\xb1\x88\x9e\xeb\xef\x43\ +\xc4\x70\x8c\xef\xe3\xc0\xb7\xbf\xad\x40\xd8\xf5\xaa\x51\x4b\x6b\ +\x16\x24\x30\x3d\x2b\x57\x0f\x88\x59\x62\xf1\x43\x00\xc3\xd4\x01\ +\xfc\xeb\xa4\xb2\xcc\x65\x93\xa8\x36\x3a\x1a\x38\x5d\xd2\x55\x78\ +\xdb\x2b\xae\xa1\xbb\xd6\xb4\xc9\x16\x25\x2d\x2a\xef\xa8\x60\x2c\ +\x45\x65\xe3\x30\xef\x87\x97\x2b\x6a\x0e\xaa\xc3\x63\x45\x98\xa5\ +\x6c\xc5\x8c\x8a\x58\x83\x94\x71\x26\xcc\x80\x73\xa8\xc4\x44\xad\ +\x85\x99\xe6\x5b\xb9\x5c\xc7\x5d\xba\x0a\xcb\xe1\xb8\xaf\xb3\x4c\ +\x49\x17\x56\x16\x60\x37\xab\xd8\xbc\x76\x1d\xb0\xae\x91\xbb\x33\ +\x38\xb5\x8a\xda\xd5\xb9\xcb\x67\x63\x19\xc8\xe4\x48\xad\xa6\x84\ +\x56\xec\xad\xf7\x82\xfc\xc6\x6a\xc0\x17\x2c\x15\x45\xc9\xda\xb7\ +\x4a\x02\x40\x3a\x9c\xa2\xe4\xfb\x51\xc1\x72\x43\x30\x2e\x14\x1d\ +\x46\xa6\xaa\xf1\x66\x45\x85\x03\xba\xa9\xb9\xde\x89\x8b\x16\x26\ +\x2b\xaa\xde\xc2\x43\xcf\xda\xa3\x1e\x8a\x30\xcc\xc8\x35\x0d\xb9\ +\xd4\x9b\xf5\xa6\xdd\x81\x9d\x2d\x94\xf9\x9d\x47\x4d\x6e\x4f\xb5\ +\x2d\x8a\x9f\x2a\x2c\x8c\xd6\xbf\xa6\xc0\x7c\xcd\x1e\x6c\xb7\x2a\ +\x02\xf5\xb0\xb5\x2d\xdd\x8a\x9b\xb1\xd7\xbd\x73\x6c\x58\x50\xfe\ +\x38\x26\x38\xd9\x13\x52\x15\xae\x6a\xdb\x32\x9b\x95\x0e\xc7\xba\ +\xe5\xfc\xcd\x27\x00\xb6\x89\x9f\xf1\x1b\x0f\x95\x35\xc3\x91\xa2\ +\xb1\xaa\x0a\x53\x9b\xe8\xd6\x61\xf8\x7e\x1f\xef\x40\xee\xd6\xd1\ +\x88\xf6\xa9\x9d\xa2\x89\x6f\x34\xca\xbd\x86\xa6\x93\x16\x27\x0b\ +\x34\xa2\x24\x66\x0c\x76\x2c\x34\x35\x6a\x82\x36\x76\xb9\x16\x61\ +\xb3\x8d\xc5\x57\xc4\x3c\xc9\x2a\xa6\x22\x4b\xc4\xc7\x52\x39\x8a\ +\xb6\x14\xe6\x20\xe9\x61\xaf\x6a\xad\x28\x49\xe5\x12\xbd\xcc\x6b\ +\xa4\x6b\xf8\xbb\xd1\x48\x89\x12\x21\x0b\x70\x84\x58\xb5\xad\xa7\ +\x45\x1f\xbd\x73\x9b\x9b\xec\x06\xc3\xa0\xae\x66\xb9\xeb\xd0\x74\ +\xae\xb5\xf7\xa9\x04\x02\x7b\x0a\x35\x4b\x6c\x2a\x54\x51\x9d\x2a\ +\xc4\x10\x95\xd9\x45\x10\xa9\x03\xa5\x28\x39\x6a\x72\xf7\xa3\x60\ +\x91\xae\x69\xa4\x58\xc7\x7d\xea\xac\xfc\x4a\x24\x16\x82\x3c\xc7\ +\xf1\x3e\xdf\x4a\x91\xc1\x09\x16\x5b\x9e\x82\xa5\xad\x10\x1e\x34\ +\x89\x1f\x42\xc6\xb3\xe5\xe2\x38\xa7\x5b\x66\x54\xff\x00\x42\xda\ +\xa8\xcd\x21\x24\xdc\x96\x27\x72\x6b\x17\x9c\x87\x1b\x6f\x8a\xc2\ +\xb9\x03\xc6\x67\x2a\xe2\xc7\x2e\xda\xf2\xa2\x4c\x92\xdd\xa2\x91\ +\x58\x73\xed\x59\x31\x00\x11\x46\x9f\x11\x07\xbd\x80\x1f\xa9\xaa\ +\xd2\xe3\x0e\x1a\x4c\x98\x7f\x33\x83\xe6\x6f\xda\x8f\xde\x7a\xb1\ +\xa3\x8f\x90\x4b\x3f\x94\xdd\x54\x58\x55\x72\x47\x33\xf2\x14\x42\ +\x48\xf1\x10\x09\xe1\x16\xbe\x8e\xbf\x84\xd0\x5f\xf2\xa3\xd2\xe2\ +\xdd\xad\xf3\xad\x28\x50\x47\x02\x27\xc5\x6b\x9a\xcf\xc3\x29\x93\ +\x10\x8b\xd5\xab\x49\xc8\x2e\x48\xeb\x5a\xe3\xd0\xa8\x2e\x41\xf4\ +\xde\x84\xca\x2f\xb5\xaa\x76\xa5\x4c\x09\x7e\x80\xd3\xa0\xdc\xeb\ +\xd6\xa6\xf7\xdf\xe9\x48\x45\xb3\x5c\x9d\xa8\xcb\x81\xdc\xf4\x15\ +\x6a\x30\x9e\xa6\xbb\x38\xef\xf4\xa5\xa9\x20\x6b\xa9\xa3\x8c\x33\ +\x9b\x28\xf7\xed\x4e\xa1\x06\x1d\x0f\xd2\x89\x6e\x4e\x83\xf3\xa5\ +\x3c\xd8\x74\x62\xa2\x68\xe4\x90\x7c\x0a\x6a\x9e\x23\x19\x2b\xdd\ +\x41\xc8\xbf\x84\x51\xfa\x4b\xf2\xcc\x90\xfa\x9d\x58\xfe\x10\x75\ +\xaa\xf3\xe3\x65\x71\x95\x3e\xed\x7a\x2f\xf3\x54\x73\x1a\x90\xd5\ +\x9b\x6d\x38\xb0\x35\x55\x46\x17\x04\x97\x3d\xc0\xe5\xf5\x35\xd9\ +\xd9\x98\x93\x49\x6c\x42\xa6\x3c\xc5\x21\xb2\xb2\x00\x1a\xf7\xb5\ +\x1b\x5c\x3e\x5d\x49\xed\xce\x8d\x29\x73\x40\x4f\x7a\x62\xe1\xe7\ +\x71\x70\x84\x03\xcd\xb4\x14\x47\x0a\x8b\xeb\x72\xe4\xf2\x5d\x05\ +\x59\x52\xbc\x28\xd3\x4a\x72\xe8\x0f\x33\xc8\x55\xdb\x85\x40\x89\ +\xb2\x8a\x92\x48\x50\xa0\x05\x1d\x05\x2c\x9a\x7c\x0e\x26\xb8\x9a\ +\x12\x7b\x9f\x6a\x16\x63\x7d\xf4\xa8\xa5\x9a\xa0\x35\x05\x48\x1a\ +\xd1\xa8\xc5\xa6\x21\x03\x52\x69\x4b\xbd\x1a\xd2\x8c\x50\x73\x66\ +\x5b\x0e\x97\xa6\x40\xcc\x24\xcc\xc2\x96\xa7\x4a\x34\xad\x46\x55\ +\x71\xe8\xd0\xb9\x16\xf2\xb6\xc7\xb5\x0e\x18\x31\xd4\x5b\x5d\x35\ +\xad\x06\x41\x34\x46\x33\xbd\xbc\xa6\xa8\x94\x78\xd8\xad\xac\x6f\ +\xb1\xe5\x45\x98\x62\x52\x56\x0d\x6b\x0d\xfa\x53\x73\xbd\xaf\x6b\ +\x52\x61\x42\xad\x99\x88\xf6\xa3\xbd\xee\x3a\xd1\x0a\x74\x61\x63\ +\xa8\xa7\x42\x86\xde\x45\x36\xa5\xa2\xd8\xd8\x00\x5b\x73\x7d\x97\ +\xdf\xf8\xa2\x96\x35\x93\x43\x34\x99\xb9\x36\xc0\x7c\xa9\x82\x9a\ +\x8a\x19\x8e\x6d\x02\xe9\x4e\x85\xbc\x39\x03\x28\xb6\xba\xf7\xa4\ +\xa3\x1b\x28\x60\x3c\x45\x16\x65\xfc\x43\xa8\xa2\x57\xcc\x6c\x10\ +\x83\xdf\x95\x6a\x06\xb6\x1d\x95\x96\xe8\x6e\xbb\xdb\x9a\xf6\xa6\ +\x90\xb2\x46\x63\x91\x43\x29\xfa\x8f\x6a\xcf\xe1\xb2\x78\x73\x65\ +\x63\xe5\x7d\x0d\x68\x01\x63\xde\xba\xca\xcd\x66\x63\x30\x92\x40\ +\xd9\x87\x99\x0e\xcc\x29\x1a\x1d\x6f\xad\x6e\x03\xa5\xb7\x07\x71\ +\xd6\x90\xd8\x3c\x2b\xbe\x6c\xac\xa4\xf2\x07\x4a\x2f\x1f\xe2\x95\ +\x5b\x83\x42\x5a\x63\x3b\xdc\xaa\x0d\x3b\x9a\xd1\x94\x93\x0c\x86\ +\xe7\xd2\x4d\x72\x85\x54\x08\x83\x2a\x8d\x85\x73\x6b\x1b\x8e\xaa\ +\x7f\x4a\xd4\x99\x06\xf6\x06\x8f\x2b\x80\x1a\xea\xb4\x38\xd7\x8a\ +\x3c\x3b\xac\xa7\x56\x5b\x85\x1b\xd3\x66\x91\x62\x8d\xa6\x6d\x94\ +\x5c\x77\x35\x8a\x5a\x4c\x46\x2f\x31\xbb\x16\x3a\xfb\x51\xca\xe2\ +\x9d\xa9\xcd\xc4\xe3\x5d\x23\xc3\x82\x35\x3e\x76\xaa\xf2\x71\x59\ +\xb4\xcb\x14\x40\xff\x00\xa6\xf5\x64\xe0\x30\xe9\x33\x09\x5d\x9c\ +\x8b\xf9\x46\x80\x51\xa2\x41\x1b\x7d\xd4\x08\xa7\xa9\x17\x35\xc3\ +\x39\x37\xd1\x7f\x6d\xc5\xa4\x68\x04\xa5\x5b\x28\x2d\x6e\xa6\x91\ +\x36\x27\x11\x26\x8f\x33\x90\x4d\xce\xb5\xbc\xd6\x51\x91\x51\x00\ +\xb0\xd3\x28\xa4\xcb\x0e\x1d\xc1\xcd\x87\x8c\x9e\xa0\x58\xd6\xaf\ +\x1b\xfd\x5a\xf3\x6e\xec\x58\xe9\xa9\xe7\x51\x77\x8c\x82\xa7\x5b\ +\xd6\xe8\xc3\xe1\x51\x48\x18\x54\xee\x49\xbd\x56\xc5\x70\xe8\xe5\ +\xf3\xe1\xce\x56\xff\x00\xdb\x3c\xfd\xab\x17\x85\x3a\x9c\x3e\x39\ +\x71\x11\xa4\x78\x80\x10\x1d\x59\xaf\xea\x02\xdb\xfd\x45\x58\x90\ +\x66\x5b\xa1\x42\x08\xf2\xd9\x86\xd5\x91\x30\x29\x9e\x33\xff\x00\ +\x2d\x55\x2d\xdc\x9b\x9a\x47\x85\x26\x5c\xd9\x18\x0e\xb6\xab\xf5\ +\x62\xc6\xc1\x78\x21\x07\xc6\x9d\x10\xf4\x1a\x9a\x4b\xf1\x28\x14\ +\xda\x28\x19\xf5\xdd\xcd\xbf\x4a\xcc\xb5\x12\xa8\xe9\x47\xee\xfc\ +\x58\xd2\x4e\x27\x11\xd2\x4c\x3e\x5e\x99\x5b\xf9\xa7\xae\x23\x06\ +\xc3\x37\xda\x32\xf6\x23\x5a\xce\x87\x05\x3c\xab\x9a\x38\x0b\x03\ +\xce\xd4\xd4\xe1\x78\x92\xd6\x78\x84\x63\xab\x5a\xb5\x2f\x25\xd2\ +\xeb\x63\x30\x6a\x09\x12\xbb\x9e\x81\x6d\xf9\xd2\xbe\xdd\x88\x98\ +\xe4\xc2\x41\x97\x4d\xed\x73\xf5\xae\xc2\xf0\xec\x34\x63\x34\x8e\ +\xd2\x37\x41\xa2\x8a\xb6\x32\x85\xca\x8a\x15\x7a\x0a\xd7\x63\xa5\ +\x13\x82\x9a\x43\x9f\x11\x38\x56\x3b\x86\xb9\x34\x63\x87\x41\x94\ +\x03\x33\x5c\x6e\x72\xe8\x7d\xaa\xdd\x8d\x71\x01\x57\x33\xb0\x51\ +\xd4\xd5\x91\x6a\xaf\xfe\x99\x87\x2c\x2d\x3c\x84\x7e\x1c\xbb\xfd\ +\x28\xfc\x3e\x1d\x85\xda\x10\xcd\xd0\x9c\xc7\xfb\x52\xf1\x58\x92\ +\xde\x58\xae\xab\xd7\x99\xaa\xc0\x58\x97\x63\xa2\xea\x4d\x66\xd9\ +\x3c\x38\x6c\xd3\x34\xae\x5b\x2e\x51\x1a\x8b\x5b\x99\x27\xfb\x52\ +\x25\xc3\xe1\xf1\x6b\x91\xd3\x24\x9f\x0b\x8d\x01\xf7\x15\xcc\xc5\ +\x57\x33\x7a\xa4\x39\x98\x74\x1c\x85\x75\xae\x34\xac\xd2\xcd\xc1\ +\xcb\x27\x0f\xc7\x94\x9c\x30\x53\xa3\xaf\x51\x5a\x33\x20\x52\x0a\ +\x9c\xca\xc2\xe0\xf5\x15\x5f\x8f\xa6\x7c\x3c\x13\x5b\xcd\xaa\x13\ +\x6d\xfa\x55\x8e\x03\x1c\xb3\xe1\x4c\x33\x02\xa1\x35\x46\x6d\xed\ +\xcc\x51\x3d\xc5\xff\x00\x4e\xe1\x91\xfd\xe9\x97\x92\x0f\xce\xad\ +\x11\x52\x02\xaa\x04\x41\x65\x1f\x9d\x41\xda\xba\x66\x46\x50\x45\ +\x0b\x0b\xd4\x9a\x83\x52\x09\x5d\x2c\x49\xb5\x47\x6d\xbe\x54\x44\ +\x8a\x8b\x83\x52\x71\xd0\x0d\x0b\x13\xb2\x8e\x75\x57\x17\x8d\x77\ +\x06\x3d\x90\x1f\x42\xe8\x3e\x7a\xdc\xd3\xf1\x44\xae\x14\xb8\x36\ +\x28\x41\x07\x6f\x7a\xcc\x7b\xe6\x37\xde\xf5\x9e\x57\x0c\x11\x48\ +\xe5\xb6\x48\xd2\x39\x14\xdd\x4a\x8b\x03\xd8\xd3\x24\x1e\x21\x32\ +\x2a\x90\x6f\xe7\x5e\x6a\x69\x17\x14\x78\x9c\x40\xc3\xe1\x52\x6b\ +\xa8\x99\x89\x11\xb1\x1b\x0e\xf5\x82\x91\x7b\x5e\xc6\xdd\x6a\xcc\ +\x18\x57\x70\x19\xce\x45\x3c\xce\xe6\xa8\x60\x31\xbc\x52\x66\x76\ +\x9b\x13\x85\xc8\x8b\xba\x1e\x7c\xaf\x57\xb0\xdc\x4e\x53\x88\x48\ +\x31\x30\xc4\xcb\x26\x89\x2a\x8b\x0b\xf7\xa7\x8d\x95\x76\xb4\x70\ +\xf8\x36\xb6\x78\x33\x30\x16\xce\xc6\xe7\xe9\x4c\x8d\xb2\x05\x88\ +\x15\x03\x64\x60\xb6\xbf\x63\xde\x80\x99\xd4\x5a\x48\x23\x24\x6e\ +\x11\xac\xdf\x4a\x15\x9b\x0f\x22\xb2\x34\x99\x3a\xac\x9a\x11\x5d\ +\x3a\x64\xc6\x24\x9d\x77\xef\x40\xc6\xe7\xd8\xeb\x4a\x93\x17\x1a\ +\x49\x91\x88\x91\x46\xce\xa7\x5f\x9d\x13\x9d\x99\x4e\x65\x61\x71\ +\xde\x8d\x38\x96\x6a\x02\xd5\x04\xdf\x9d\xbb\x50\xb9\xb7\x3b\x50\ +\x5c\xcd\x50\x6a\x2e\x2f\xa0\xbf\xb5\x46\x60\x76\xbe\xb4\x24\xeb\ +\x7a\x82\x58\x5b\x4b\x51\xc8\x22\x8d\x7e\xf1\x82\x9e\x97\xb9\xa8\ +\xc3\x78\x53\x12\x15\xce\x6e\x4a\x74\xbd\x48\x71\x5b\x2e\x9b\xf3\ +\xa3\x03\x5a\x0f\x0b\x5d\xed\xef\x46\xa2\xca\x05\xef\x4a\x1a\xd3\ +\x12\x82\x31\x4c\x02\xd5\xa8\xc8\xd2\x98\xf1\xac\xcb\x95\xf4\x3c\ +\x9b\xa5\x29\x69\xe9\xbd\x69\x33\xe6\x8d\xe2\x72\x8e\x35\x1f\x9d\ +\x08\xad\x39\x23\x59\x93\x23\xef\xf0\xb7\x4a\xce\x91\x19\x24\x28\ +\xc0\x82\x0d\x62\xcc\x32\xe9\xae\xb9\x4f\x87\xbd\x8e\xa4\x9d\xcf\ +\x33\x5c\x05\x1c\xdf\xe7\x37\xb9\xb5\x0d\xe9\x02\x53\x70\x15\xaf\ +\x61\xb7\x51\xdc\x53\x16\xec\x72\x9f\x58\x17\xb0\xd9\x87\x51\xfc\ +\x52\x81\xa9\x92\xed\x87\x70\x2f\x75\x19\x92\xdb\x83\x4c\x47\x29\ +\x37\x16\xde\xb5\x0c\xf1\x05\x52\xee\x01\x20\x68\x35\xaf\x3f\x06\ +\x2b\x17\x31\x11\xa1\x05\x8f\xc5\x6d\x7e\xb5\xbd\x87\x89\x61\x85\ +\x50\x85\x66\xb0\xcc\x6d\x7a\xd7\x1b\xa2\x9a\x45\x8e\x86\xa4\x5c\ +\xd2\xd4\xaa\x7d\xd9\xd1\x6f\xe4\x27\x6f\x6a\x60\x16\xde\xb6\x04\ +\x2a\x31\x04\x58\x44\x0d\x8b\xee\x7a\x0a\x0c\x54\xf1\xe1\x94\x67\ +\xbb\x3b\x0b\xac\x60\x6a\x47\x5e\xd5\x9d\x36\x26\x69\x59\x89\x01\ +\x2e\x2c\x15\x4d\xc9\xf7\xaa\xf2\x90\x48\x77\x10\x99\xb1\x58\x85\ +\x82\x1b\x95\x1a\x0e\xe6\x9b\x0c\x71\xe1\x90\xc6\x08\xb9\x1e\x66\ +\xeb\x4b\xc1\xc0\x62\x87\x3b\x2b\x09\x1f\x6e\xc2\x98\xca\xbb\x9d\ +\x7d\xe8\xff\x00\xa5\x4b\x8a\x80\x31\x02\x40\x2c\x24\x17\xf9\xf3\ +\xaa\x97\xd6\xb4\x31\xe9\x9f\x0d\xa0\xd6\x33\x7f\x95\x67\x1d\xeb\ +\x1c\xbd\x31\xa6\x5b\x32\x2b\x8f\x89\x45\x2c\x92\xca\x6d\xa5\xff\ +\x00\x3a\x5e\x0d\xf3\x41\x97\x9a\x7e\x94\x43\xa0\x36\xa8\x16\x49\ +\x36\xb8\xd3\xad\x14\x7a\x4a\xa7\xa1\xa2\x2b\xe4\xca\x35\xcd\xce\ +\xb8\x47\x76\x00\x54\x75\x8f\xc4\x6e\xb8\xa6\x70\x80\x17\x21\x9b\ +\xb9\x06\xa8\xe2\x23\x9d\x65\xf1\xf0\xec\xc7\x5b\x94\xbd\xed\xf2\ +\xad\x4e\x2d\x22\xc9\x8a\x7c\xa3\xc9\x1a\xe4\xbd\xb7\x6e\x75\x44\ +\xe6\x04\x10\x6c\x6f\xbd\x72\xe5\x3b\x6e\x22\x71\x63\x72\x02\x92\ +\xb7\x20\x72\x34\xce\x16\x10\xe3\x61\x32\x80\xc9\x9b\x51\x4b\x75\ +\xcf\xb9\xf9\xd0\x46\x5a\x39\x01\x53\xa8\x34\x79\x53\xd1\x4a\x49\ +\x94\x8e\x9a\x1d\x2d\x51\x63\x41\x81\xc4\x2e\x2e\x30\x09\x02\x65\ +\x1a\x8b\x7a\xbb\xd3\xc2\x9b\x5f\x61\xde\xbb\x30\x55\xad\xca\x89\ +\x41\x27\x4a\x87\x96\x04\xde\x4c\xc7\xa2\x8b\xd5\x79\xb1\x2e\xc3\ +\x2c\x63\x20\xeb\xce\x8d\x5d\xac\xcb\x24\x71\x03\x9d\x81\x6f\xc2\ +\x37\xaa\x38\xdc\x43\x34\x2d\x29\x4c\xd9\x48\x01\x6f\xa0\x14\x36\ +\x24\xde\x89\x55\x4a\x95\x7f\x4b\x0b\x1a\x2d\xb4\xe4\x84\x47\x39\ +\x91\x6e\x30\x8f\x6e\x45\x4d\xe9\x18\x99\x64\x98\x18\xa3\x85\x94\ +\x73\x16\xb9\xad\x08\xd4\xa4\x69\x11\x36\x2a\x2c\xa4\x1d\x1b\xfb\ +\xd4\xb1\x6b\xdc\x92\x1b\x6b\xf3\xac\xe6\xc3\xaa\xb6\x26\x24\x2e\ +\x2c\xc5\x7c\xc2\xd5\xd1\xa3\x19\x02\xa0\x27\x31\xb5\xa9\xae\x09\ +\x37\x26\x9f\x80\x0a\xaa\x64\xb7\x9a\xf6\x14\xc8\x8a\xe2\x31\x24\ +\x18\x35\xcd\xe6\x7f\x13\x4b\x8d\x2f\x6a\xa9\x81\x91\xd7\x88\x46\ +\xd9\x89\x25\xad\xa9\xab\xdc\x6e\xc7\x07\x10\x36\xf5\x1a\xad\xc1\ +\xe2\x0f\x8a\xf1\x18\x79\x62\x19\xbe\x7c\xa8\xbf\xec\xa7\x8b\xd2\ +\x8c\xb2\x30\x1b\x03\x42\x68\x98\xdd\x89\x3c\xe8\x6b\xa0\x41\xa1\ +\x22\x8c\xd4\x11\x59\x40\xcb\xda\xba\xdd\xa8\xab\x8e\xd5\x24\x04\ +\x8e\x55\xf0\xa4\x24\x03\xcc\x72\xd2\xb3\x71\x11\x15\x95\xa3\x60\ +\x04\xa9\xb8\xe4\xc3\xa8\xad\x2a\xab\xc4\xcf\xdf\xea\xc4\x1d\x19\ +\x1b\xa7\x6f\x6a\xcf\x29\xd1\x8c\xf2\x29\x7c\x62\x31\x2f\x08\x12\ +\x58\xe6\x81\xec\x35\xe4\x6a\xd4\xaa\xa4\x16\x5d\x34\xb9\x43\xb8\ +\xfe\x47\x71\x4a\xc5\xdb\xff\x00\x47\xc4\xdc\x1b\x1c\xb6\xb8\xef\ +\x5c\xec\xe8\xb3\xb8\x3b\x5e\x39\xe3\xfe\x90\xdf\x4a\xb2\x8c\xa5\ +\x32\x48\x09\x5b\xdc\x58\xd8\x83\xd4\x56\x7e\x12\x53\x06\x21\x64\ +\x1b\x0d\xfb\x8a\xd0\x9d\x02\xbf\x94\xf9\x48\xba\x9e\xd5\x89\x7a\ +\x6a\xb4\xe3\xc7\x4c\x70\xba\xb2\xbb\x47\x6b\x31\x1e\xa5\xeb\xd8\ +\xd5\x59\x1c\xc9\x31\x77\xe6\x6e\x6d\x4e\xe0\x20\x3a\x4e\x8e\x33\ +\x28\x50\x6d\x56\xc4\x38\x61\xa8\x83\x5e\xec\x48\xae\xb3\x6c\xd6\ +\x4a\x9a\x2c\x33\xe1\xcb\x40\x09\x60\x34\x02\xe4\xfc\xc5\x27\x0d\ +\x8a\x68\x87\x87\x22\x66\x5e\x9b\x11\x57\x73\x90\x00\x5f\x28\x1b\ +\x05\xd0\x0a\x09\x95\x66\x89\xfc\x45\x04\xaa\x92\x18\x0d\x69\xb3\ +\xf8\x80\xb8\x8c\x33\x9d\x59\x90\xf5\x23\xf8\xae\x02\x37\x92\xd1\ +\xb7\x88\x6d\x7d\x36\x1e\xe4\xd5\x48\xb0\xd3\x49\x1e\x74\x8c\x95\ +\xeb\x57\x30\x51\x34\x38\x76\x0e\xb6\x77\x23\x9e\xb6\xa2\x5b\x7d\ +\x54\x72\x00\xab\x72\x83\x2f\x36\x46\xbd\xbd\xc5\xab\x92\x10\x40\ +\x28\x33\x03\xb1\x06\xf7\xa3\x8c\x95\x37\x06\xb9\xa2\x85\xbe\x12\ +\x87\xf1\x21\xb5\x6f\x02\xb6\x32\x0f\x1b\x1a\xa9\x18\xf3\x10\x33\ +\xdb\x61\x56\x06\x1a\x0b\x04\x55\x0a\x57\xd3\x27\x3b\xd3\x22\x48\ +\xe2\x8f\x24\x40\xd8\xfa\x98\xee\xd4\x56\xaa\x45\xa8\x61\x71\x98\ +\x80\x1a\xf9\x5c\x03\xb1\xa5\xa6\x6c\xf6\xb0\xbf\x7a\xb1\xb8\xcc\ +\x6e\x54\x8b\x35\xb5\xb5\xb6\x3f\x4b\x83\x5c\x22\xb9\x00\x26\x6b\ +\xec\x46\xb7\xfa\x53\x80\x2a\xa7\xf1\x0f\xa5\x15\xb5\xb5\x19\x8e\ +\x45\x5b\xb2\xb0\x1f\xd4\xbf\xbd\x42\x03\x7b\x90\x05\xb6\xad\x27\ +\x20\xa6\xa0\xa8\x51\x46\x2a\x16\x8d\x57\x4a\x4f\x10\x8e\xea\xb3\ +\x00\x09\x0a\x46\xbc\xcf\x2f\xd6\x9e\x9b\x0a\xec\x55\x86\x02\x52\ +\x76\x16\xf9\x6b\x50\x8c\xcc\x44\x8d\x98\xe4\x5b\xd8\x74\xd8\x54\ +\x07\xba\x86\x1c\xe8\x1c\xb2\x5c\xdb\x51\xb8\x35\x03\x45\x03\xe7\ +\x58\xd6\xf0\xd5\x6a\x34\x62\x0d\xc1\xd6\x90\x0d\x1a\xb6\xb5\x6a\ +\xc5\xcc\x10\xf1\x27\x55\xb0\x00\x9b\xb5\x85\x69\x06\xb9\xbd\x53\ +\xc0\xc7\xe1\x45\x99\xbd\x6e\x3e\x82\xac\x29\xae\x93\xa8\xcd\x3d\ +\x4e\x96\x3a\x83\xc8\xd2\xf1\x52\xb6\x16\x0c\xf1\xc8\x00\x26\xca\ +\xac\x2f\x63\x52\xa6\xa9\xf1\x32\xd3\x71\x05\x81\x6e\x42\xd9\x40\ +\xef\xce\xb5\x6f\x41\xd8\x3c\x3c\x98\x96\x32\x3b\xb6\x52\x7c\xce\ +\xdb\xb1\xab\xf0\xc7\x0c\x2b\x68\xd0\x7f\xa8\xee\x6b\x88\x54\x02\ +\x34\x16\x55\xd0\x5a\xa2\xe6\xa9\x31\x22\x46\xcb\xa1\xbd\xb9\x1a\ +\x02\x74\xa9\x90\xe9\x40\x08\xd8\xde\xfb\x55\x52\x01\xf3\x6a\x2e\ +\x0e\xe2\xb3\x71\x91\x18\xa6\x2a\x76\xdc\x1e\xa2\xb4\x89\xd7\x63\ +\x49\xc5\xc4\x26\x87\x2f\xc6\xba\xaf\x7e\xd5\x9b\x34\xc6\x7c\x32\ +\x98\xa5\x0e\x35\x1b\x11\xd6\xae\xdd\x4a\x86\x53\x75\x3b\x56\x71\ +\xd0\xdb\xa5\x1e\x12\x73\x11\xca\xd7\x28\x77\x1d\x2b\x12\x9b\x17\ +\xc6\xa2\xa5\xe5\xf0\x20\x79\x88\xcd\x94\x69\xf3\xa1\x5b\x10\x1d\ +\x4d\xd4\xd2\xe7\x99\xfc\x76\xc2\xb2\xab\x2b\xec\x6d\xaf\x6a\xd0\ +\x8c\xb9\x41\x22\xda\x79\x18\x83\xae\xf7\xd4\x1f\xce\x94\xa3\x3b\ +\x65\x22\xc0\x9d\x7b\x55\x8c\x4c\x18\x88\x03\x09\xf5\x77\x6c\xd7\ +\x1b\x6d\xa5\x20\xdc\x6a\x2d\x5c\xab\x6d\x75\xe1\xd8\x45\xb4\x6d\ +\x03\x35\xc7\xac\x36\xf5\x9d\xc5\xf0\x70\xe0\x98\x66\x72\x43\x6a\ +\xa2\xda\xfc\xe8\xb0\xf8\x9c\x42\x59\x44\xec\x14\x6b\x60\x6b\x37\ +\x13\x3c\xb3\xc9\x9a\x59\x19\xcd\xf9\xd3\xcb\x94\xcf\x04\x94\xc8\ +\x31\xd2\xc2\xe1\xa1\x0a\xb6\xfe\x9b\x9a\xd4\x79\x8e\x22\x24\x9e\ +\xe4\x86\x1a\x8b\xec\x79\xd6\x22\x29\x76\x0a\xa2\xe4\xec\x05\x6d\ +\x61\x22\x68\x70\x29\x13\xfa\xae\x49\x1d\x2f\xca\x8e\x16\xd3\x62\ +\x10\x86\x17\x15\x36\x14\x4a\x8a\xa6\xe0\x57\x11\x5b\x64\x26\xf5\ +\xd5\x35\xd6\xa9\x39\x4e\x99\x48\x0c\xa7\x91\x1b\xd1\x7c\x36\xb9\ +\x60\x36\x3f\x10\xf7\xeb\xef\x43\x6a\xed\x8d\x48\x2e\xba\x66\x04\ +\x10\x76\x20\xdc\x1a\xb1\x82\x17\xc3\x9e\xaa\xd4\xab\x82\x6e\x49\ +\x04\xee\x47\x3f\x71\xb1\xa6\xe0\x0d\xa7\x31\xb6\x50\x59\x74\xe8\ +\xdd\xc5\x53\xd5\x7c\x27\x8e\x1f\xf8\x58\x56\xda\x96\x26\xbb\x85\ +\x47\x93\x04\xd2\x5f\x59\x1a\xdf\x4a\x57\x18\x94\x4d\x89\x58\xa3\ +\x20\xaa\x0b\x0f\x7a\xbc\x23\xf0\xa1\x48\x41\x07\x22\xd8\xfb\xd5\ +\x3f\xdb\x57\xc2\xce\xf5\x07\x6a\x93\x73\x7d\x28\x4e\xf4\xd4\xeb\ +\x9a\xed\xeb\xaa\x39\x50\x9c\x4d\x09\x35\x26\x84\xd4\x90\x5b\xa5\ +\x56\xe2\xba\xf8\x6d\xd5\x48\xab\x06\x91\xc5\x01\xf0\x22\x16\x3a\ +\xdc\xd6\x6f\x85\x55\x1b\x41\x1b\x6c\x0d\xc1\xe6\x3b\x8a\x2c\x52\ +\x99\x70\x18\x88\x55\x7e\xf1\x6d\x70\x36\x24\x6b\xa7\xb8\xa4\xb0\ +\x24\xe5\xda\xd4\xd4\x6b\x62\x1a\x3b\xe5\x91\x95\x5d\x0f\xca\xd6\ +\xac\x42\xc0\x65\x60\xcd\x71\x6d\x76\x3b\xd6\x86\x05\xbc\x5c\x0d\ +\x89\xf3\x42\x6d\xff\x00\x49\xab\xf3\x47\x06\x20\x9f\xb4\xc1\x67\ +\xe6\xe9\xa1\xfa\x50\x61\xb8\x77\x85\x24\x86\x09\x44\xa8\xe8\x46\ +\x5d\x9a\xfc\xb4\xac\xce\x16\x53\xa7\x70\x01\xac\xe7\x96\x4f\xde\ +\xae\x1d\xa9\x5c\x26\x16\x8b\x0b\x23\x3a\x95\x32\x10\xa0\x11\x6d\ +\xa9\xc4\x76\xae\xb3\xc0\x00\x09\x36\x02\xf4\x38\xb7\x10\xe1\xdf\ +\x31\xb3\xb8\xb0\x1c\xed\x5d\x88\x38\x87\xc5\x88\x22\x93\x22\xb2\ +\x06\xf6\x16\xa1\x9f\x06\x83\x0e\xef\x79\x0b\x28\xbe\x76\xd8\xf6\ +\xab\xff\x00\x01\x18\x2c\x48\x48\xc4\x72\x29\x28\x35\x04\x6e\x2a\ +\xca\xcb\x86\x94\x12\x98\x80\x00\x3f\x10\xb5\xeb\x39\x04\x92\x9f\ +\x06\x25\x2c\x58\xed\x6a\xb6\x9c\x39\x96\xe0\xcc\x99\xbf\x09\x16\ +\xfc\xeb\x32\xdc\x2b\x48\x84\x0c\xc0\x82\xa7\x40\x41\xbd\xe8\xd4\ +\x69\x4b\xc2\x44\xd0\x21\x8d\xca\x92\xc7\x37\x94\xdf\x91\xa6\xd6\ +\xe0\xa9\x14\x4c\x52\x38\xcc\xb2\xb6\x54\x1c\xed\x72\x7d\xaa\x10\ +\x28\x53\x24\x87\x2a\x2f\xa8\xfe\xd5\x99\x8b\x9e\x4c\x5e\x23\x41\ +\xa0\x36\x45\x1c\x85\x56\xe0\x5b\x6e\x26\x43\xe5\xc2\xc0\x2f\xc9\ +\x9b\xcc\x4f\xca\x8a\x57\xc7\xaa\x91\x24\xb9\x21\x91\x6f\x90\xb8\ +\x56\x53\xda\x9f\x84\xc3\x47\x83\x50\x02\x86\x9b\x76\x72\x3d\x3d\ +\x85\x76\x35\x4c\xd8\x62\xbe\xa6\x53\x98\x5c\xdf\xde\x9c\xb9\xda\ +\x26\x0c\x37\x14\x8c\xf8\x89\x88\x1a\x8f\x4f\x8b\x76\xb7\xb5\x1a\ +\x63\xe6\x89\xc4\x78\xc8\x73\x10\x6c\x58\xe8\xc3\xf9\xa6\xc3\x89\ +\x56\x44\x56\x8e\x42\xcb\x60\xc5\x75\xfc\xaa\xc3\x2c\x73\xc6\x52\ +\x4b\x4a\x9f\x46\x5a\x64\xfe\x55\xbf\xd4\xc2\x63\x9d\x73\x41\x20\ +\x71\xd0\xe8\x47\xca\xa4\x82\xa6\xc4\x5b\xde\xa9\x62\x78\x6c\x89\ +\xf7\x98\x66\x2e\xa0\x7b\x30\xae\x83\x88\x4b\x1d\x93\x10\x9e\x22\ +\x8e\xba\x30\xf9\xd5\xbf\xd1\x9f\xc5\xe5\x26\x97\xc4\xcf\xfc\x1a\ +\xc2\x0f\x9a\x76\x20\xff\x00\xa7\x99\xa6\x46\xd1\xcd\x1e\x78\x5b\ +\x30\x03\x51\xcd\x6a\xb7\x13\x90\x7d\xa5\x23\x3b\x04\x28\x18\xf2\ +\x6b\xde\xd4\xdf\x14\xf5\x51\x81\x92\x14\x63\x60\x59\x75\xb7\x22\ +\x34\xa5\xc4\xc4\xa5\xb2\x93\x97\x4d\x28\xf1\x09\x96\x49\x63\x24\ +\x8b\x36\x70\x0e\xe0\x1f\xef\x53\x83\x86\x59\x17\xd2\x04\x77\xf5\ +\x1a\xe7\xf5\xa4\x00\x4f\x23\xfa\xd5\xdc\x16\x16\xd6\x92\x51\x71\ +\xb8\x5e\xbe\xf4\xdc\x2c\x70\x44\x40\x52\xa2\x53\x7b\x16\x3a\xff\ +\x00\x6a\x64\x88\x54\x16\x98\x65\x03\x76\x23\x5a\xdc\xe2\x2d\x33\ +\x52\x46\xd7\x3b\x0a\xec\xc0\x10\x0d\x66\xcf\x36\x69\xfc\x41\x7c\ +\xab\x6c\xa7\xb7\x7a\xd1\x23\xc4\x54\x90\x69\x9d\x73\x53\x28\xc3\ +\x90\xf4\x35\x4e\x56\xf0\xf8\xe1\x3c\x84\xb5\x66\x25\xd4\x29\x27\ +\x53\xb5\x66\x62\x8e\x6e\x2e\xcd\x60\x4f\x8a\x36\xe7\xad\x36\xf4\ +\xa3\x66\x4d\x24\x60\x39\x1a\x8b\xe9\x43\x35\x8c\xcf\xa0\xdc\xf2\ +\xa8\x0c\x47\x7f\x9d\x6b\x42\x0b\x5c\x91\x44\xbc\xe8\x52\xc4\x74\ +\x23\xad\x70\x37\xed\x6d\xe8\x48\x7e\x7d\x28\x2f\xa5\xea\x64\x36\ +\x5d\x4d\x46\xf4\x54\xa9\xc4\x60\xce\xa6\x64\x1a\x8f\x58\x1f\xad\ +\x51\xb0\xad\x70\x1b\x3d\xd4\x12\x7b\x55\x7c\x56\x0f\x31\xbc\x6b\ +\x91\xb9\xa9\xe7\xed\x59\xb3\xeb\x52\xaa\x61\xe5\x78\x49\xca\x6e\ +\x0e\xe0\xec\x6a\xdc\x13\x47\x26\x24\x16\x21\x18\xc7\xe5\xbe\xdb\ +\xf5\xaa\x45\x48\x36\x3b\xd4\xb0\x6f\x23\x80\x4e\x4b\x86\x03\x7b\ +\x1a\x25\xa6\xb4\x58\x39\x1e\x19\x4c\xea\x77\x04\x5c\x52\xfe\xc3\ +\x85\x63\x7f\xb2\xb0\x3c\xf2\x35\x87\xd2\xa8\xea\x23\x0f\x1c\xbe\ +\x5e\xa0\xfe\xa2\xa0\x4f\x23\xe8\x5d\xaf\xef\x57\xea\x7d\x18\x6e\ +\x22\x0c\x34\x2e\x55\x73\x3d\xc5\x8f\x9b\x6a\x54\x71\xe1\xd1\xc1\ +\x8f\x0a\xa0\xff\x00\x56\xb5\xc0\x51\xa8\xd2\x82\x2c\xc4\x9d\x95\ +\x40\xfc\x20\x54\x85\x5b\xfa\x45\x08\xa9\xbd\x20\x56\xf7\xfa\xd4\ +\x1f\x7a\x8b\xd7\x6a\x6a\x4e\x3b\xee\x3e\x95\xd6\x3d\x45\x4d\xab\ +\xaa\x48\x1b\xdb\x63\x5c\x74\xa9\xde\xba\xc7\xb1\xa9\x20\x94\x48\ +\x8c\xb2\xb6\x54\x1c\xfa\xd5\x29\xf8\x89\x91\xbc\x28\x07\x86\x3e\ +\x16\x27\x5b\xf7\xae\xe3\xce\xde\x2c\x71\x0d\x15\x50\x1b\x77\x34\ +\xee\x19\x86\x8e\x2c\x32\xe2\x24\x50\x59\x86\x60\x4f\xc0\xbd\x7d\ +\xeb\x3b\x6d\xc8\x73\xad\x3b\x04\xb0\x9c\x42\xe2\x66\x5f\x0f\x38\ +\xcc\xaa\xdb\x5e\xad\xcb\x7c\xc6\xfb\xd2\xf0\x91\xc6\xf0\x09\x64\ +\x19\x9f\x31\x39\x49\xd1\x6f\xa8\xa6\x4a\xda\x92\x6b\x70\x7d\x2f\ +\xe1\x14\x24\x54\xee\x2f\xb0\xae\x53\x7d\x41\x20\x76\xa5\x04\x8e\ +\xd4\x07\xc4\xbe\xc2\xdd\xa8\xc9\x39\xf2\xef\x50\xc6\xc4\x0e\xb4\ +\x20\x9a\x13\x46\x68\x1b\x40\x4f\x4a\x10\x4e\xa6\xf5\x53\x8a\x13\ +\x26\x24\x22\x7c\x20\x00\x07\x33\x57\xa1\x1e\x23\x6a\x3c\xab\xa9\ +\x17\xde\xa8\x46\xc1\xb1\x99\xdb\x7b\x97\xfa\x6b\x59\xe4\xd4\x2a\ +\x00\x7c\x67\x48\x99\x57\xc2\xb6\x79\x48\xbe\xbd\x05\x0e\x23\x06\ +\x26\x97\xc4\x8f\x16\xc5\xfa\xca\x2c\x4f\xcc\x69\x4f\x2b\xe1\x40\ +\xa9\x6b\x34\x87\xc4\x93\xdc\xf2\xa8\x55\xbe\xf5\x9c\xeb\xb4\x98\ +\xe3\x9f\xc1\x3f\x68\x42\x19\x3d\x2e\x35\x0c\x2a\xc7\x0b\x4f\xf3\ +\x24\x3f\x08\xb0\x3d\xea\xae\xe0\xe5\x1b\x75\x35\xa3\xc3\x93\xfe\ +\x04\x58\x80\x59\x89\x60\xcc\x05\xad\xa5\x6a\x0a\x8c\x6e\x21\x20\ +\x11\x19\x95\x9f\xc4\x04\xe6\xcd\xa8\xd6\xd4\x50\xaa\x4e\xb9\xb0\ +\xce\x24\xed\xb3\x0f\x95\x27\x8b\x64\x64\x80\x85\x0f\x95\x4f\x99\ +\x9b\x2a\x03\x7f\xce\xa9\x78\xe1\x08\xfb\xc7\x62\x0e\x9e\x19\xc8\ +\xa3\xdb\xad\x57\x96\x5e\xd6\x74\x6f\x13\x90\x8c\x68\x31\xbd\x8a\ +\x28\x17\x1d\x45\x36\x18\x04\x98\x70\xf8\x89\x24\xcd\x26\xa3\x5d\ +\x87\xb5\x57\x82\x07\xc6\x67\x95\x0a\xa9\x07\xcc\x09\xb7\xce\xb4\ +\x25\x3e\x7d\x35\xb0\x00\x77\xa2\x77\xda\x56\xc0\xe1\xcc\x12\x34\ +\x99\xd7\x2e\x56\x02\xc7\x52\x4d\x34\x0f\x95\x48\x50\xa2\xc3\xf3\ +\xa1\x93\x53\x6e\x94\xe6\x21\x8b\x16\xd3\x97\x3a\x62\x85\x08\x5e\ +\x46\xca\x8b\xbb\x54\x44\xaa\x22\xcf\x21\xca\x8a\x35\x35\x43\x15\ +\x34\xb8\xe9\x84\x50\xa1\xc8\x0d\x95\x47\xea\x69\xb7\x10\x71\xd8\ +\x97\xc5\x4a\x23\x8d\x48\x8c\x1b\x22\x0e\x7d\xeb\x43\x87\xe1\x57\ +\x06\xa1\x9e\xc6\x73\xff\x00\xd3\xfb\xd1\x61\x30\xf1\xe0\xd0\x65\ +\x0a\xf3\x73\x7f\xc3\xd8\x53\x54\x5c\xdc\xd3\x38\xfd\xa3\x5c\x54\ +\xb0\xef\xde\xa7\x0c\x72\xb9\x16\xbe\x61\x6a\x34\x5a\x60\x5c\xdf\ +\xcd\x68\x6b\xa2\x51\x1d\xfc\x24\x09\x7d\xed\xbd\x0e\x25\x0a\xa3\ +\x4e\xac\x55\x97\x9f\x5e\xd4\xe8\xc1\x2a\x6f\xb8\x36\x35\x18\x98\ +\xcc\xb6\x86\xf6\x55\x37\x76\xfd\xaa\xc4\x4e\x0f\x16\x24\x60\xae\ +\xb6\x63\xa0\x75\xda\x9b\x8a\x82\x2c\x52\xda\x51\x67\xd6\xce\x34\ +\xd7\xbd\x28\x60\xa3\x59\x96\x45\x9a\xca\x1a\xe4\x15\xd4\xd5\x96\ +\x39\x98\x9b\x6e\x6f\x54\xdc\xed\x7f\xe3\x28\x24\xfc\x36\x76\x95\ +\x80\x20\x21\x3d\x43\x0a\x87\x03\x11\x11\x64\x24\xa4\xea\x4a\xf6\ +\x3d\x3d\xeb\x47\x89\x46\xb3\x70\xf3\x03\xb1\x1e\x23\x59\x48\xe5\ +\xfd\xab\x0b\x86\xca\xd8\x4c\x63\x61\xa5\xd1\x59\xac\x6f\xf0\x91\ +\xb1\xac\x5e\xae\x19\xda\xc7\x09\x55\x9e\x73\x1c\xce\x49\x78\xd4\ +\xa9\x36\xb1\xb0\x1e\x5b\xf5\xb8\x3f\xec\x56\x8a\x07\x13\x08\x94\ +\x05\x7c\xb7\xb7\xe0\x15\x93\x82\x85\x5e\x18\x62\x11\x96\x77\xb3\ +\x02\xbb\x8d\x6b\x68\x44\x90\xca\xcc\xac\x59\x88\xb1\xd0\x00\x4f\ +\x33\x4f\x1f\x15\x23\x11\x83\x52\xb7\x80\x5c\x8d\xc1\x1a\x9e\xe2\ +\xaa\x9f\x14\xb0\x46\x2e\xdc\xac\x4e\xbf\x4a\xd1\x04\x8a\x89\x50\ +\x4c\xca\xf9\x8a\x48\x9b\x35\xaf\x7a\x6c\x12\xa9\x34\x6d\x1d\xbc\ +\x45\x2b\x7f\xc5\xa5\x68\x70\xe9\x56\x4c\x3a\x44\x74\x74\x04\x2d\ +\xf9\x8a\x5e\x26\x19\xe6\x20\x2f\x85\x65\xd7\x43\x6b\x9e\xba\xd2\ +\xf0\x0a\xc9\x8f\x8d\x58\x10\x43\x73\xa6\x75\x53\x46\x1f\xf3\x54\ +\x9d\x81\xbf\xd2\xb1\x61\x19\xf1\xe0\xa9\xd1\xa5\xba\xdf\x90\xbd\ +\x6c\xc2\x7e\xf5\x7d\xed\x58\xa2\xe9\x8e\x00\x5b\xcb\x26\x97\x36\ +\xb6\xb5\x72\xf8\xa3\x66\x7d\x66\x6f\xf5\x1a\x85\x15\x33\x5f\xc5\ +\x7d\x47\xa8\xf2\xef\x43\xaf\x61\xf9\xd6\x80\xd4\x29\x2c\x58\x79\ +\x46\xa7\xe4\x2b\x29\xb8\x96\x20\x4c\xe2\x30\x42\x83\xa0\xab\x9c\ +\x4d\xcc\x7c\x38\xda\xf7\x76\x00\xd6\x41\x3a\xdf\xeb\x58\xe5\x73\ +\xc6\xa4\x5f\x87\x88\x2c\x8d\x7c\x4c\x36\xe4\x0a\xff\x00\x15\x2f\ +\xc4\xa0\x53\x95\x61\x76\x3f\xd4\x6c\x2b\x38\x11\xf8\x87\xd6\xb8\ +\xe6\x3b\x58\x0e\x57\xa3\xf5\x4e\x43\xf1\x38\xcc\x44\xd7\x19\xb2\ +\x2f\x45\xd2\x82\x1c\x6e\x2a\x11\x65\x94\x95\xfc\x2d\xa8\xa0\xe5\ +\xb8\xbf\xb5\x5f\xc0\xe1\xa2\x38\x41\x23\xc6\x24\x67\x26\xdd\xa8\ +\x9b\x6a\xb9\x0b\x18\xcc\x36\x20\x85\x99\x7c\x37\xfc\x43\x6a\x39\ +\x30\x6e\x14\x34\x6c\x24\x07\xf0\x9d\x68\xce\x03\x0d\x20\xb9\x56\ +\x8c\xff\x00\x4e\xb4\xb5\xc0\xe2\xf0\xe7\x3e\x12\x51\x27\x60\x6c\ +\x7e\x9c\xeb\x5d\xfd\x1d\x2b\x4f\x01\x2d\x9d\x33\x2c\xab\xea\x1b\ +\x67\x14\xa5\x4c\xc7\x32\x03\x6b\xfd\x3d\xea\xf2\xe3\xca\x9c\x98\ +\xbc\x31\xb8\x3b\x81\x63\x53\x2b\x60\xe6\x91\x1e\x19\x32\x3b\x1c\ +\xad\x71\x6c\xda\x6d\x46\x45\xb5\x5d\x52\xdc\xc9\xf7\x34\x40\x5a\ +\x9c\xf8\x59\x46\xa9\x67\x07\x9a\x9a\x53\xab\x21\xb3\x29\x1e\xf5\ +\x62\x45\x75\x45\xeb\xaa\x4e\x22\xe6\xa4\x57\x0a\x9a\x92\x40\xae\ +\xae\xae\xa5\x3a\xdd\xab\xad\xad\x4d\x75\xaa\xc4\xa7\xc7\x63\xce\ +\xb1\x4e\xa2\xc4\xae\x46\x37\xe6\x36\xd3\xfd\xef\x4d\xc1\xb1\x97\ +\x0e\x80\x90\x52\x15\xd1\x6d\xcc\x31\x02\xff\x00\x91\xa7\x49\x1f\ +\x8f\x87\x93\x0f\xcd\x85\xd7\xdc\x55\x6e\x1e\xcc\x85\xe0\x73\x6c\ +\xe8\x96\x1c\xb3\x6a\x7e\x5a\x00\x2b\x39\xda\xf8\xbd\xc3\xc9\x2b\ +\x2a\x12\x2f\xa3\x0b\xf3\xa2\x90\x5c\x58\xfe\x54\x8e\x1c\xc0\x63\ +\x2c\x7e\x20\x54\x55\x87\xb1\xad\x4f\x05\xf5\x5d\x94\x96\xcb\x5c\ +\x17\x21\x1a\xe8\x69\x84\x73\x1b\xfe\xb5\x04\xa8\x4c\xee\xe1\x54\ +\x73\x35\x12\xda\xec\xd7\x5e\x5b\x9a\x9c\xba\xdc\xb5\xcd\x4c\x6f\ +\x0c\xa4\x84\x97\x6e\x45\x6d\x45\x94\x13\x65\x74\x24\x6e\x2f\x6f\ +\xd6\xa4\x59\x15\xd9\x46\x52\x58\x85\x51\xb9\x3b\x53\x0c\x4d\xb8\ +\x1a\x75\xbe\x9f\x5a\x8b\x2b\x1b\xe8\xc2\x2d\x06\xb7\x05\x8d\x58\ +\x95\xe4\x56\x4c\x24\x8c\x8c\xb6\x60\x00\x21\xc0\x1a\xf3\xfc\xaa\ +\x9c\x30\x9c\x99\x94\x11\x9b\x43\x2b\x68\x00\xe7\x6e\xb5\x7f\x1f\ +\xe4\x81\x5d\x15\x43\x33\x58\xf9\x46\xba\x55\x2b\x97\x62\x59\x8b\ +\x1e\x75\x8e\x53\xb3\x13\x29\x0f\x29\x61\xb6\xc2\x84\x81\x6d\x6a\ +\x76\xae\x35\x92\x18\x90\x34\x81\x54\x1b\x13\xa8\xbe\xf4\xec\x04\ +\x0a\xd2\x33\x38\xba\xc5\xa1\x1d\x5b\xff\x00\x34\xdc\x36\x1c\xa6\ +\x11\xe7\x26\xcd\x94\x95\x16\xe5\x56\x32\x2c\x68\xb1\xa0\xd2\xc0\ +\x93\xd4\x91\x5b\x9c\x46\x93\xc4\xd0\xe2\x38\x79\x03\x78\x9b\x30\ +\x00\x72\xac\x60\x3a\x0a\xf4\x11\xb1\x57\xb8\x17\xb6\xe3\xf6\x35\ +\x9b\xc5\xb0\x9e\x0c\xbe\x2a\x29\x31\xbe\xa0\x9e\x47\xa5\x1c\xf8\ +\xfd\x52\x87\x82\x39\x18\xf5\x8c\x1b\x2c\xbe\x53\xde\xae\x85\x02\ +\x52\x3a\x0e\x75\x9b\xc3\xe3\x69\x31\xf1\x22\x9b\x12\xe3\x5a\xd8\ +\x97\x2b\x48\xc5\x45\x81\x26\xd5\x70\x9d\x2a\x55\xaa\x5a\x35\xf0\ +\xcc\x8d\xe5\x55\xdc\xd1\x48\xd1\x41\x18\x92\x72\x40\x3e\x95\x1b\ +\xb5\x51\x69\x26\xe2\x38\x85\x88\x2d\x90\x1d\x15\x74\x0a\x29\xb4\ +\x47\x4c\xd3\xf1\x0c\x42\xc3\x12\x15\x8c\x6c\x39\x7b\x9a\xd0\x82\ +\x38\xf0\xb0\xf8\x50\x9d\x4f\xad\xc6\xed\xfd\xaa\x62\x54\x81\x0c\ +\x30\x8b\x20\xe7\xcd\xbb\x9a\x9b\x53\x26\x76\x82\x06\xb4\xd8\xd7\ +\x95\x42\x8b\x53\x10\x56\x85\x12\x8d\x6d\x4c\x41\x50\x83\x4a\x35\ +\x14\xc0\x9b\x84\x90\x30\x17\xd2\xe4\x75\xa3\x28\x42\x05\x3a\x93\ +\xe6\x63\xd4\x9d\x6b\x94\x03\xa3\x6c\x41\x14\x69\x73\x18\xcf\xeb\ +\x5f\x2b\x58\x74\xd8\xfd\x2b\x51\x14\x56\xc0\x9b\x6c\x2a\x02\xe5\ +\x50\x29\xd7\x5b\xdb\xf2\xb5\x00\x07\x2e\xa3\x51\x46\x25\x3e\x28\ +\x40\x78\xd3\xa2\xdc\xfc\xeb\x23\x8f\xc7\x71\x16\x25\x45\x8b\x79\ +\x58\xf7\x15\xaf\xc5\x74\xc4\x8f\xf4\x0f\xd2\xb3\xb8\xbe\x5f\xfd\ +\x28\xe6\xdf\xc4\x19\x3d\xf9\xfe\x55\xcf\x9c\xf5\xae\x2d\x3c\x1c\ +\x0b\x86\xc3\xa1\x0b\x69\x1d\x05\xcf\xe1\x16\xda\xb8\xdc\x9a\x7e\ +\x28\x7d\xe6\x51\xb0\x00\x7d\x00\x14\x83\xa5\x69\x97\x0a\x25\x34\ +\x35\x2b\x52\x18\xda\x89\x81\x91\x40\x06\xce\xba\xa3\x5f\x63\x42\ +\xb4\x40\xeb\x4c\x43\x0d\x9d\x44\x83\x42\x77\xec\x79\xd6\x6f\x1b\ +\x8d\x93\x18\x66\x1b\x4b\xe6\x06\xb4\x09\xca\xcc\xe1\x4b\x2b\x6a\ +\xe0\x6e\x0f\x5a\x99\x16\x39\x22\xc9\x20\x12\x46\x76\x20\xed\xed\ +\x55\x9b\x0c\xea\xab\x61\xb1\xf0\xc8\x80\x62\x2e\x8e\x05\xb3\x01\ +\x7b\xd3\xda\x6c\x28\x5c\xc7\x13\x19\x03\xa6\xff\x00\x4a\xac\xfc\ +\x32\x26\x6b\xc7\x88\xca\x3a\x32\x9b\xfe\x54\xa9\xb8\x64\xf1\xdc\ +\x96\x8f\x2f\x22\x5a\xd7\xa3\x79\x45\xd0\x78\xa6\x29\x67\xcb\x1c\ +\x57\xc8\x97\xd4\xf3\xaa\x95\x63\xec\x73\x88\x4c\x9e\x04\xae\xa3\ +\xf0\x2e\x9f\x5a\x42\x14\x75\x25\x43\x02\xbe\xa5\x61\xa8\xac\x5d\ +\xfa\xd4\xc7\x0b\xd7\x58\xd4\x8a\x90\x3c\xb7\xa0\x86\xc6\xb5\x78\ +\x6d\x9f\x87\x2d\xbe\x06\x20\xfc\xeb\x2f\xe5\x57\xf8\x1c\x83\xc4\ +\x78\x0f\xfc\xc0\x32\xfb\xd6\xb8\xfa\x2f\x8b\x56\xae\xb5\x19\x17\ +\x14\x24\x6b\x5d\x18\x43\xda\x45\xc9\x2a\x89\x01\xd2\xcc\x2f\x55\ +\x8e\x0b\x0e\xf2\xfd\xde\x68\xc2\x12\x49\xbd\xc5\xc8\xb5\xaa\xd1\ +\x16\x89\x8e\x6c\xbb\x00\x7d\xcd\xaa\x5d\x42\x9c\x8a\x3c\xab\xa0\ +\xa3\x16\xb3\x1f\x0b\x8b\xc1\xfd\xec\x12\xe6\x41\xbd\x8e\xde\xe2\ +\xad\x60\x31\x23\x15\xf7\x4e\xa0\x48\x06\x9a\x68\xd5\x65\x09\x56\ +\xb8\xff\x00\xcd\x51\xe2\x78\x51\x1f\xfc\x4c\x07\x28\xbf\x99\x7f\ +\x09\xa3\x33\xc3\xba\xb0\xf8\x58\xe4\xbe\x51\xe1\xb7\x3e\x9f\xda\ +\xa9\xcc\x8b\x13\x65\x92\x44\x53\xca\xe7\x7a\xb5\x83\x91\xf1\x8e\ +\xc9\x2c\x8c\x72\x0c\xc5\x41\xb6\x70\x76\x3f\xcf\xb5\x49\xc2\xc6\ +\xd8\x93\x11\x04\xc2\x10\x31\x07\x52\x2f\xd2\xac\xdf\x12\x93\x29\ +\x53\x63\xf9\x57\x0a\xb1\x8d\x84\xc5\x2f\x55\x61\xe5\xb7\x4a\x4f\ +\xb5\x18\x5c\x05\x75\xaa\x46\x82\xa0\x1b\xd2\x93\x50\x6a\x6b\x8e\ +\xa2\xa4\x10\x4a\xb0\x61\xb8\x3a\x55\x3e\x34\x1a\x2c\x44\x8e\x9e\ +\x51\x94\x49\x19\x07\xa6\x9f\xb8\xab\x6d\x53\x2c\x51\x62\x03\x44\ +\xe3\xcc\x51\x42\xb5\xbd\x37\xfe\xe0\x56\x6c\xde\x90\x38\x64\x8b\ +\x89\x9a\x29\xd2\xd9\x81\xb4\x8a\x39\x1e\xb5\x64\xd7\x9e\xc1\xb4\ +\xf8\x4e\x26\xa2\x13\x66\x12\x65\x3a\xdb\x4a\xf4\x12\x32\xb4\xbe\ +\x22\xb7\x92\x41\x99\x7d\xaa\xe1\x76\x1a\x9b\xd2\x38\x92\x5f\x07\ +\x98\x35\xad\x25\xed\xd7\x4a\x2b\xf9\xf3\x0d\x40\xa6\xe4\xf1\x3c\ +\x10\xc3\xca\x25\x24\xdc\x5e\xfa\x53\xe8\x27\x0c\x7c\x18\x11\x14\ +\x10\xc4\x5d\x88\xef\x4c\x2c\x58\x11\x20\x0e\x3f\xa8\x5e\x80\x7f\ +\x9b\xf3\xe7\x4c\x37\xbd\x51\x06\xd1\x65\xcb\xe0\x47\x6e\x9a\xff\ +\x00\x35\x20\x8b\x05\x00\x28\x1b\x28\xda\xa6\xc6\xa4\x0b\xd2\x89\ +\xe2\x5a\x60\xd0\x85\xbd\xa4\x3f\xa5\x66\xc6\x72\xb5\xcf\x3d\xeb\ +\x57\x1e\x3f\xe1\x93\xff\x00\x90\xfe\x95\x9c\xa8\x19\xcf\x6a\xc7\ +\x2f\x4c\x41\xd7\x50\x34\xef\x45\x86\x88\xcb\x88\x58\xee\x06\x63\ +\xc8\x5e\x8a\xd5\x6b\x85\xc6\x73\x3b\x80\x6e\x05\x87\xce\x89\x36\ +\x9a\x9e\x20\xfe\x1e\x1f\x22\x9d\x24\xd0\x0b\x6b\x94\x54\x60\x09\ +\x93\x0c\x55\x8d\xcc\x67\x4b\xf4\xa8\xe2\x65\x4f\x86\x80\xdd\x94\ +\x1b\xd8\xde\xd5\x30\xc5\x2e\x12\xd2\xba\x82\x8e\x2c\x40\x35\xaf\ +\xac\xfc\x37\x2d\x2f\x89\x18\xd3\x07\xe0\xc8\xda\xca\xea\x6d\xd0\ +\x75\xab\x12\xbc\x50\xe1\x8e\x20\xd9\xd7\xe1\x1d\x4d\x63\x62\xa5\ +\x79\xe6\x32\x48\x75\x3f\x95\x36\xa8\x4c\x38\xf9\x30\x9c\x5c\x09\ +\x11\x04\x71\xb7\xa4\x0d\xbb\xd6\x8c\xdc\x45\x50\x0c\xb8\x54\x37\ +\x17\x0d\x98\x91\xee\x2b\x33\x8a\xa7\x89\x83\x49\x88\xbb\x23\x65\ +\x27\xb7\x2a\x77\x0e\xe1\xdc\x56\xc1\x51\x13\xc3\xb5\xfe\xf0\xf9\ +\x47\xf7\xae\x72\xf2\x97\x23\x5d\x02\x77\x9b\x15\x88\xcc\xe7\x33\ +\xb6\x80\x01\xfa\x56\xbe\x12\x0f\xb2\x61\x7c\x2f\xf9\x8f\xac\x9d\ +\xbb\x51\xe0\xe0\x4c\x39\x20\x46\x04\xfb\xdc\xdf\x6f\xe9\xa2\xb5\ +\xeb\x7c\x78\xe7\x75\x9b\x41\x6b\x58\xd1\x01\x53\x96\xed\x6f\x99\ +\xa3\x55\xad\x0d\x42\xad\x35\x56\xb9\x16\x98\x05\x41\xca\x28\xd4\ +\x6b\x50\xbb\xda\x88\x9b\x68\xba\xb7\xb6\xd5\xa4\x24\x5a\x6a\x8f\ +\x30\xe8\xfe\x53\xd8\x8d\x8f\xed\x49\x89\xb3\x1f\x31\xdb\x96\xd4\ +\xd8\x8f\xde\x2a\x83\xe5\xcc\x48\xee\x40\xdb\xf3\xad\x44\xe3\x7b\ +\x6e\x68\x5a\x9a\x46\x9a\xd0\x30\xa9\x33\x78\xb7\xff\x00\xaa\x1f\ +\xe8\x5f\xd2\xb2\xb8\xf3\x11\x85\x82\x3b\x68\xc4\xb9\xf7\xda\xb6\ +\x78\xba\x7d\xea\x3d\xfd\x4b\xfa\x69\x59\x3c\x69\x03\x3e\x0d\x0e\ +\xcd\x70\x7f\xee\xae\x5c\xe7\x55\xae\x2d\xc9\xbc\xc1\x5f\x6c\xea\ +\x1b\xda\x90\xc0\xde\x8b\x87\x16\x9f\x85\xc0\x43\x67\x65\x05\x0d\ +\xbb\x7f\xe6\x89\x81\x07\x51\xaf\xb5\x6a\xff\x00\x59\x2c\x2f\x5a\ +\x21\x5d\x51\x7e\xd4\x21\x0f\x7a\x9a\x10\x6a\x41\x35\x21\x02\x41\ +\x04\x6e\x29\x44\x4d\x16\x2b\x2c\x00\x15\x94\x66\x00\x8b\x81\x4c\ +\x15\x32\x5c\x46\xd2\xa5\xc3\xc6\xbe\xe0\x8e\x96\xa5\x03\x10\xf8\ +\xc8\xe2\x2d\x9a\x35\x00\xea\x63\xb5\x1e\x19\x32\xc2\xae\x7c\xce\ +\xe2\xe4\xb6\xb6\xaa\x32\x4b\x88\x9d\x6e\x73\xba\x83\xf0\x8d\x05\ +\x5d\x49\x84\xa1\x72\x02\x0a\xd8\x15\x3b\xe9\x54\xa4\xd0\xd2\x66\ +\xcd\x98\xdf\xad\xea\xbc\xb0\x26\x23\x89\x4a\x19\x72\xda\xf7\x75\ +\x1a\xfc\xea\xc6\x66\x12\x00\xaa\x73\x7c\x2b\xd7\xdf\xb5\x74\x71\ +\xac\x20\x85\x39\x8b\x1f\x33\x1e\x67\xb7\x6a\x7d\x0c\x9c\x66\x19\ +\xf0\xf2\xe5\x3a\xa9\xd5\x58\x6c\x69\x56\x35\xbb\x3c\x5e\x3e\x19\ +\xa2\xe7\xba\x7b\xd6\x31\x5b\x12\x08\x37\x15\x8e\x5c\x71\xa9\x41\ +\x6d\x2d\x56\x38\x40\xff\x00\xf2\x50\xff\x00\xaa\x92\x6c\x37\x20\ +\x7b\xd5\x8e\x12\x3f\xfc\x8c\x27\xfa\xaa\x9e\xa6\x89\x02\xda\x52\ +\xcd\x31\x98\x6c\x01\x27\xda\x81\xae\x01\xd0\x56\xd9\x71\x00\xca\ +\xa9\x73\x64\x5f\x10\x81\xcc\xec\x2a\x05\xed\x6d\xed\xce\xa1\x81\ +\x2a\xac\x1a\xef\x6b\x65\x3b\x30\xe9\xd8\xd3\x22\x0a\x45\x95\x80\ +\x23\x70\xda\x11\x52\x0d\x8d\x12\x73\xd0\x32\x9d\x18\x72\x34\xc5\ +\x8c\xf2\x19\xbd\x8d\xe9\x25\x6c\xe5\x46\x52\x06\xec\x4e\x9e\xda\ +\x6e\x6a\x4c\xfe\x2a\x92\x60\x18\x62\xa0\x3e\x54\x6b\x2e\xbb\x83\ +\xc8\xfc\xe9\xdc\x1b\x1d\x1e\x36\x49\x73\x30\x49\x99\x75\x52\x74\ +\x36\x3c\x8d\x59\x9a\x05\xc4\xc2\xd8\x76\x94\x80\xe2\xd6\x0a\x00\ +\xbf\x5a\xf3\x85\x25\xc0\x63\xd9\x1d\x7c\xcb\x70\xc3\x91\x15\x8b\ +\x6f\x1b\xbf\x0c\xed\xe9\xa7\x89\x9e\x06\x46\x1c\xae\xa6\xb3\x2d\ +\x47\x82\xc5\xbc\x79\x64\x8d\xd8\xc4\xc7\x55\x34\xdc\x5a\x05\x9c\ +\xd8\x68\xda\x8a\xd6\xea\x22\xc6\xbb\x2d\x34\x2d\x71\x5a\x16\xaa\ +\xe3\xe6\x92\x08\xd0\x44\x72\x97\xb9\x27\xb7\x4a\x94\xc5\x61\xde\ +\x30\xce\xf9\x5a\xde\x60\x16\xfa\xd3\xa7\x8e\x39\x23\xfb\xc4\x24\ +\xa0\xd0\x83\x6a\x4b\xe0\x62\x71\xe4\x63\x1b\x7f\x56\xa2\x8e\xf7\ +\xa3\xd3\x96\x48\x24\x6c\xb1\xcb\x73\xfd\x42\xd4\x4a\xd9\xe5\x31\ +\x23\x03\x95\x2c\x4f\x72\x74\xb5\x56\x7e\x1f\x38\x04\xfd\xd3\x76\ +\x56\xd7\xe9\x4e\xc0\x14\x83\x06\xce\x48\x56\x8e\xec\xc0\xef\xdb\ +\x4a\x3b\xde\xd3\x3b\x10\x56\x4f\xf1\x31\xc8\x43\x5e\x4f\xae\x95\ +\xb2\x61\x11\xc3\x1c\x6d\xea\x44\x00\xf6\x35\x99\xfe\x1e\x84\xcb\ +\xc6\x17\x12\xea\x08\x4d\x4d\xf9\x9a\xd6\x93\x31\xb9\x2a\x6e\x68\ +\xe1\xe6\xaa\x51\xb2\xad\x42\xc8\x4a\x94\x07\x29\x24\x10\x7a\x11\ +\xb5\x11\x40\x39\x6b\xd6\x81\xd4\x12\x2c\x35\xad\x23\x34\x20\x48\ +\xab\x6c\xdb\x8e\x87\x98\xa1\x66\xb1\xb5\xa8\x92\xd7\x24\x79\x49\ +\xdf\x4b\x86\xf7\x1f\xb8\xa9\xb5\xcd\xad\x66\x1a\xe5\xbe\xfd\xc7\ +\x5a\x52\x28\xd4\x50\xae\xf4\x6b\x50\xa0\xc7\x2e\x6c\x18\x23\xe1\ +\x7d\x7e\x75\x9c\x10\x2e\xa0\xed\xbd\x69\xe2\x41\x6c\x1c\x80\x6e\ +\x2c\x4f\xb5\x51\x50\x2d\x59\xbe\x99\x42\x12\xe6\xdb\x73\x27\xa5\ +\x5c\xc0\x25\xf0\xcc\xc4\xb2\x29\x60\x02\x8d\x0b\x0b\x1d\x4f\x4a\ +\x42\x80\x14\x2b\x5a\xce\x72\xfc\x86\xa7\xf2\x1f\x9d\x5c\xc0\xdd\ +\xa0\x91\x8e\xe6\x4b\xfe\x55\x48\xa8\xac\xa5\x72\x18\xd3\x2f\xe1\ +\xcb\x50\xd8\x44\x98\x04\xf1\x64\x50\x3d\x2a\x75\x02\x99\x61\x4c\ +\x87\xd6\x47\x55\x20\x7d\x0d\x69\x96\x0e\x35\xc3\x48\x51\x49\xca\ +\xa4\xdb\xa0\x1b\x0f\xd2\xff\x00\x3a\xb1\xc3\xb8\x78\x78\x84\xd8\ +\x82\xc1\x0f\xa5\x46\xed\x54\x9c\x10\xc5\x48\xd4\x1b\x1a\xdf\x6d\ +\x42\x64\xb6\x4c\x82\xc4\x7b\x56\x38\xf7\x75\xaa\x52\x41\x86\x8d\ +\x72\x24\x00\x5c\xdf\x31\x39\x88\x34\xb4\x79\x12\x5f\xb3\xce\xd7\ +\x0d\xe8\x6e\x5f\xf8\xa7\xb0\x23\x98\x3f\x95\x2d\xf2\x99\x21\x72\ +\x40\xc9\x25\x89\x27\x60\x7f\xbd\x6c\x39\x94\x98\xd8\x0d\x59\x7c\ +\xcb\xae\xc4\x57\x40\xc9\x32\xe7\x42\x01\xf8\x94\x9d\xa8\xe2\x17\ +\x97\x2f\x33\x70\x79\xf6\xac\xf8\x96\x21\x23\xac\x8c\xde\x51\xe5\ +\xcb\x45\xaa\x34\x02\x1b\x92\x74\x27\xb7\x2a\x25\x5b\x54\x61\x03\ +\x8c\x22\x67\x37\x27\x51\x7e\x42\x9a\x10\x9f\xee\x6d\x5a\xc0\x85\ +\x14\x5c\xab\x88\x23\x71\xa7\x23\xd6\xa4\x52\x9c\xbe\xaa\x38\xf4\ +\x5b\x03\xcc\xdf\xeb\x41\x6d\x6b\xae\x43\x79\x4d\x89\x3a\x8a\x90\ +\xa6\xb6\x9d\x4d\x1c\x79\x64\x87\x2b\x72\xe6\x39\x1e\xb5\x20\x8e\ +\x82\xb8\x1c\xa4\xe5\x1a\x1d\xc5\x69\x25\x24\x61\x27\x85\x3d\xae\ +\x7d\x2f\xc9\xa8\xd9\x4d\xed\x6f\x95\x2d\x99\x5d\x32\xb4\x64\xaf\ +\x7d\xc5\x04\x73\x98\xdf\xc2\x98\x92\xa7\xd0\xc7\x97\x6a\x90\x78\ +\x9a\x5f\x0c\xad\x6f\x4b\x6b\x58\xfc\x60\x5b\x09\x0c\xd9\x6f\xe1\ +\x4b\xa9\xe8\x37\xfd\x6b\x73\x1a\xc8\x20\x78\xdd\xd4\x31\x17\x00\ +\x9e\x95\x95\x8c\x48\xdf\x01\x34\x66\x45\x37\x00\x8b\x1e\x63\x6f\ +\xd6\xb1\xce\x18\xff\xd9\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x0b\ +\x08\x52\xaa\xc7\ +\x00\x66\ +\x00\x69\x00\x67\x00\x75\x00\x72\x00\x65\x00\x38\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0a\ +\x0b\x53\x47\xc7\ +\x00\x72\ +\x00\x61\x00\x6e\x00\x64\x00\x6f\x00\x6d\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0b\ +\x0a\x12\x5e\xc7\ +\x00\x6b\ +\x00\x69\x00\x6e\x00\x65\x00\x74\x00\x69\x00\x63\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x08\ +\x00\x28\x58\x27\ +\x00\x74\ +\x00\x69\x00\x6c\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0b\ +\x07\x50\x31\x47\ +\x00\x65\ +\x00\x6c\x00\x6c\x00\x69\x00\x70\x00\x73\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0c\ +\x05\x8f\xe2\xc7\ +\x00\x63\ +\x00\x65\x00\x6e\x00\x74\x00\x65\x00\x72\x00\x65\x00\x64\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x14\ +\x00\x22\x00\x47\ +\x00\x54\ +\x00\x69\x00\x6d\x00\x65\x00\x2d\x00\x46\x00\x6f\x00\x72\x00\x2d\x00\x4c\x00\x75\x00\x6e\x00\x63\x00\x68\x00\x2d\x00\x32\x00\x2e\ +\x00\x6a\x00\x70\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x07\x00\x00\x00\x02\ +\x00\x00\x00\xb4\x00\x00\x00\x00\x00\x01\x00\x00\xf9\x47\ +\x00\x00\x00\x64\x00\x00\x00\x00\x00\x01\x00\x00\x8b\xdf\ +\x00\x00\x00\x96\x00\x00\x00\x00\x00\x01\x00\x00\xf5\xc7\ +\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x01\x00\x00\xcb\xb4\ +\x00\x00\x00\x12\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x00\x48\x00\x00\x00\x00\x00\x01\x00\x00\x71\x63\ +\x00\x00\x00\x2e\x00\x00\x00\x00\x00\x01\x00\x00\x36\xe6\ +" + +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() diff --git a/examples/animation/animatedtiles/images/Time-For-Lunch-2.jpg b/examples/animation/animatedtiles/images/Time-For-Lunch-2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c57a555490fc98478ffabac51a9a5d9df7635829 GIT binary patch literal 32471 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 literal 0 HcmV?d00001 diff --git a/examples/animation/animatedtiles/images/centered.png b/examples/animation/animatedtiles/images/centered.png new file mode 100644 index 0000000000000000000000000000000000000000..e416156a0ed1e6931f2b1f1a55cca015def7057f GIT binary patch literal 892 zcmeAS@N?(olHy`uVBq!ia0vp^DIm1LhE&{o zdu@NdjH|@4kMGaCy|s~l_T<(Hx*IHnILq_ah~x=8=$_zhE^?xt`43}=dZ1II#@!1O z%yJF-3bb5YrYMM?;A2af@a75Az0ddNeZT%DK*qAuC}>^8$C@Q?%a+WoeO`H=QIG(r zH1wHkS5{c~Q8?M>$DGs48qWLq`~MGfjN9<_Yw7*G?H}(22L|r@Ic54fpJ2P0$L5~x ziQAO0M*h7{U-Gwa-@-QOSg$%P*SyQs$~Ty&!2W;hxv!E^4_RmKULqOSsItIjzS8f~ zwucXO7*ZpXdOnukoWC~MaMdcM^TnU`90*SAeYmP}{(0;2isxVXXFQkc4v)SOZq&7C zfd{mOSFyYg~YWdF>*Gkvy{X3yN-ukgh?E&%c_NwQL_k2Gu zw5Z9a>H9pL(*_bVnjRi7yq+^DT$7=_UhY$J5%*)=$Z5U7OPhRlq)IaI7k>`sX>(pC zy|^;)p=NC3_nt{#-aHFh+;qcAP33fvmW}>-^PPV``|dK&`}E+8-uHh$rft7}W0A(^ z`unG^Y*JgP!S%@En3T6sc;QUbp9gDQOY{4}*Qd%%zyIO4f3-`$@VWECd%mAJcP?pd zsH2)#X11Y(4{L9x^WnCd@3*JN+%dGNoHF6xQx7@o9>c9(Zn@l#<|HR3Hh#!C@%=8h z-uy5L=3{+w`8b^H95KY@84QJKE4-UtEQxShK9NXx~#scab1}Geu<2{ygkdQ=aIr~4}CV@^m%OI g=0X7c^Z&pVAf#pboFyt=akR{0Lqn(^8f$< literal 0 HcmV?d00001 diff --git a/examples/animation/animatedtiles/images/ellipse.png b/examples/animation/animatedtiles/images/ellipse.png new file mode 100644 index 0000000000000000000000000000000000000000..2c3ba881c5bed13a1f509518f2a6759a7fad6951 GIT binary patch literal 10767 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 KM;W4M^ZtKZa6j1q literal 0 HcmV?d00001 diff --git a/examples/animation/animatedtiles/images/figure8.png b/examples/animation/animatedtiles/images/figure8.png new file mode 100644 index 0000000000000000000000000000000000000000..6b058041c4bbbc48754c9bc4bb82f93cac4ce7ca GIT binary patch literal 14050 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 a`Tqg>kV~MzPkuE30000-qlv@1E0{=FH5CnOoQO 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 literal 0 HcmV?d00001 diff --git a/examples/animation/animatedtiles/images/tile.png b/examples/animation/animatedtiles/images/tile.png new file mode 100644 index 0000000000000000000000000000000000000000..c8f39d8d409c0033bd50b6471138af3c0f1f7c89 GIT binary patch literal 16337 zcmWlg1ymbb6h&!~;suJk1gE&WySr1|p}0dSR@|X@ad-FPRtS)y!JXpn@aM0r5Sf+C z%p>#ezUQ15sj4i4hD?YI0|SF5Co8EAJgWYGM??Vr#$jGo0}t=q)MdnBYNm(}ffop7 z3Nn%~Z~xzZb(bas?;w4Z)pLV^K_C48{w|dfod|gIgS(uP)Q2TlSafbgigE-_7#MOG zIY}{1@8#?++n*pEpZzC+`n_De3_XK|SuLaP3Ou>b&A0RDSXlTmj$ix<9H@x?)FFcL zq2?mFyKB~6F&Ex`T`@x3!?*Yd=0vEA-{AEzu~ucv4E_bEX)W~Z;6C}DMpXT&K^S(+ z%OdM&%;k02iv2`OId%5(wvK(~yU}uGX9n4o(SB+;rV80fT^WU)khYBWJ z<{2n2kEzPis0)mmeBMo*Kv9z(OMmEZu|G*PQ7rCejd2 z2dI^+Ym(dkRDD}pTT??r!}C$^>k*Gtqn>g$Z{Oo1e~V)wDjHhi#4d(7D<5BEi7g_< z=>FC7X#6uGaNwGiS|ueVi}mIohRhPx%R_69Vq#<8VT4nB6g-DnFbNVWv1RAt8rs+( zhqgMG8rPa<(mdUr$sh)wJsq$2_VzkDIK-%z5B3B+0bdFnyyxkPT)wKPmX@}TPW#I( zls;9y$X1>vIbV|j6YgC{4OQqbm1w(AOGlQ|50Eh}n>A@jnzF&#GWj4p}}H@d7M3gdfUpO{n6gVpfx@M5Qzv)2kb znK0A4qLddHftc@v}r;Xm;-NRcl#O9IhFxlUfR-kMZv`AAojpNhm8G(>-$wEHz>R%MK;iqUWpGftHMdoSgHKvjigI3TOzkIi;0XMu3QRfx3sX>d5pm8*ZkvZrZ3;EpplbOxJ96x4&d-xpjf=U_ z>?BFOurf>NOKd4afAel|e61XASs`U+$&)Hdn3}IMo}w}z-E~zfg<#rdH&7Tj2pqH8 z9ZNto_U4%}yf|0PwVvV8Agqb%R7ovV z_9ZmtCesJ>(AP~su{g+fxkIrFW8)0-SC;)az@_nyE~`Y21Mz1E(I2ralCUh*K=<|9 zuLE%ck(S@~AK=8krC_b!U4(p7?O0KJa5;s(DhKZNvAA6Ad{iYm5*`d8Czr$OXC1r? zC;%1J<6g!cy^`=bhu^I~XLar8=20X#^#){?7~IDCxIaZKRg3(IU%gaV>D^|NoS{YZ z_g|-tGcVxncQYygS#{NA6&9ZDd?*bJes|`1+PgW~CP%b>6iehGc3b$-BV*w}m$&OJ&jvE^}MA;(0jAv(_w3F;^E?9Pf`d)-%5jK|vA^b4op$hCxbq6Bv6%WD$o@XWr#2f@`N*W{7NsjN3x z-zhZ7c;u=U{Rq26a1?2%AYZ>|LL-**8ZdSt>}*z$ifuFxtdV`vsM8AK7cJsGSbXCY2V@F(W9 zV0$rzLn72=Iv$4{QNn*+LJj*;DyLh5$Lv9gT^>mZf3?N*jybvj5e!U{ssyZZ?@8$4 zWy8Wd6|qWR-leE-JqVj(n;j6kO-$g+Q**RSf1e>h}{$wzMU-n&R*hOqR$ z%5>dL*Sa=beKd4c!H9+#aZ%N37V)k*N+M)c*SR0g*uQ^}c_Rxv$|AGychBaObIG10 zXy!vHN

xUdsGJBJwu8zN1n5LYQ`@I8FhqTec#4J+k*14AA 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

$X42+zdA=Ial;=4HI+cL1w?xFy?oa28Z) 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%0D6n<2k3-2LA6Av9Zn+fdKaQ6H6wi9tjL}3 z_BFHK-rk$dSR!wAnl=RB+k`d(yl%O7*@-pxwqN<^bv093+EgVir85b)rlws=aulQey_sR~0 zKkslD`o}#H$%wxy^LPXSx6C|DfN=pu6=L5o)T0SDdMN7N_~D@6HS5Ht)l|`%_wL<$ zH-KLq>yD7HykOjF8wm{p2pkEIhXJgRW%-|cKHv6KDz(t#^}gJ3`ql5xKIQDM2`&Z< zLsR0BaQEIF8+UK~&6A_5n)X3geTESX2;EyHxK>4>6J$cKmzmz+mW=5 zcbd!XHM8yeUAyWqltY&qPx>24DM?q8GG%XBqn2k=?lCRx z860B^-ObA$-P!dzB!&k&red1_9cqxcOzFg>-aahYTTiYZn|0x`S2%_aH{RGi$(DwI1=E-ioWtNkH|R*^hME!Ew(Y2fw|ec~y`RkM?CjhQ z;7o%4j{w#!21|{DMPrbA6YMOy^Le-1-R$*xRce{b<#LmO$Qto@e7~Y7YXSUP2+>_Y zyqpJ=2nmf4At;0zx_&(^Prq~M z&>{b(O`FE)+Ft?4651wwr#8V0lZ4%bPC|;1u_i??N4j(f9RGbXA>i?NzD*vmoWfw` zsi&U0o|2=RT$53PEgs self.orig.size().width(): + self.p = self.orig.scaled(rect.size().toSize()) + else: + self.p = QPixmap(self.orig) + + +def createStates(objects, selectedRect, parent): + for obj in objects: + state = QState(parent) + state.assignProperty(obj, 'geometry', selectedRect) + parent.addTransition(obj.clicked, state) + + +def createAnimations(objects, machine): + for obj in objects: + animation = QPropertyAnimation(obj, b'geometry', obj) + machine.addDefaultAnimation(animation) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + p1 = Pixmap(QPixmap(':/digikam.png')) + p2 = Pixmap(QPixmap(':/akregator.png')) + p3 = Pixmap(QPixmap(':/accessories-dictionary.png')) + p4 = Pixmap(QPixmap(':/k3b.png')) + + p1.setGeometry(QRectF(0.0, 0.0, 64.0, 64.0)) + p2.setGeometry(QRectF(236.0, 0.0, 64.0, 64.0)) + p3.setGeometry(QRectF(236.0, 236.0, 64.0, 64.0)) + p4.setGeometry(QRectF(0.0, 236.0, 64.0, 64.0)) + + scene = QGraphicsScene(0, 0, 300, 300) + scene.setBackgroundBrush(Qt.white) + scene.addItem(p1) + scene.addItem(p2) + scene.addItem(p3) + scene.addItem(p4) + + window = QGraphicsView(scene) + window.setFrameStyle(0) + window.setAlignment(Qt.AlignLeft | Qt.AlignTop) + window.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) + window.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff) + + machine = QStateMachine() + machine.setGlobalRestorePolicy(QStateMachine.RestoreProperties) + + group = QState(machine) + selectedRect = QRect(86, 86, 128, 128) + + idleState = QState(group) + group.setInitialState(idleState) + + objects = [p1, p2, p3, p4] + createStates(objects, selectedRect, group) + createAnimations(objects, machine) + + machine.setInitialState(group) + machine.start() + + window.resize(300, 300) + window.show() + + sys.exit(app.exec_()) diff --git a/examples/animation/appchooser/appchooser.qrc b/examples/animation/appchooser/appchooser.qrc new file mode 100644 index 0000000..28a3e1c --- /dev/null +++ b/examples/animation/appchooser/appchooser.qrc @@ -0,0 +1,8 @@ + + + accessories-dictionary.png + akregator.png + digikam.png + k3b.png + + diff --git a/examples/animation/appchooser/appchooser_rc.py b/examples/animation/appchooser/appchooser_rc.py new file mode 100644 index 0000000..ebe093f --- /dev/null +++ b/examples/animation/appchooser/appchooser_rc.py @@ -0,0 +1,1423 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Thu May 2 16:14:11 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x13\x09\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\ +\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\x1b\xaf\x00\x00\ +\x1b\xaf\x01\x5e\x1a\x91\x1c\x00\x00\x00\x07\x74\x49\x4d\x45\x07\ +\xd7\x09\x17\x17\x15\x19\x49\x86\x70\x41\x00\x00\x12\x96\x49\x44\ +\x41\x54\x78\xda\xed\x5b\x09\x74\x5c\xd5\x79\xfe\xee\x7b\xb3\x6b\ +\xb4\x5a\xb2\x25\xd9\x96\x64\x63\x6c\x83\x31\x36\xb6\x81\x00\xe1\ +\xb0\x34\x14\xc2\xda\x94\x86\x04\xd2\x90\x42\x72\x20\x5d\x20\x14\ +\x68\x08\x4b\x48\x09\x87\xda\xad\x73\x52\x52\x02\x24\xad\x7b\x20\ +\xe4\xb0\x95\xcd\x40\xb0\x1b\x56\x2f\x80\xb1\x2d\xdb\xd8\xb2\x6c\ +\x6c\xd9\xb2\x2c\xc9\x1a\x4b\x1a\x69\xf6\xe5\x6d\xf7\xf6\x7f\x33\ +\xef\xf0\xf4\x3a\x9a\x19\x1b\x26\x3d\xc9\x69\x7e\x9d\x4f\xf7\xbd\ +\xfb\xee\x9b\x79\xdf\x77\xff\xe5\xbe\x2b\x1b\x7f\xb4\x3f\xda\xff\ +\x6f\x63\x38\x0e\x1b\xbb\x05\x75\x52\xed\xf4\x8b\x5d\x33\x97\x5c\ +\x06\xb7\xef\x3c\xa1\xa4\x3c\xd0\xb3\xc3\x42\xcd\x0c\x71\x35\x15\ +\x12\x4a\x22\xc4\x53\xe3\x21\x91\x8d\x85\x84\xc0\x10\x80\x10\xe1\ +\xe8\xd4\x9f\x43\xf9\x83\x16\x40\xfc\xd8\x7f\x95\x68\x5d\x76\x37\ +\xe7\x58\xc6\xd3\x51\x99\x08\x42\x70\x01\xe1\x0e\x12\xaa\xc0\x65\ +\x3f\x84\xec\x81\x60\x6e\x82\x0b\x90\x5c\x10\x82\x03\xdc\x00\xd7\ +\xd2\x02\xba\x32\x2e\x0c\x6d\x48\xe8\x6a\x48\x68\x4a\x48\xe8\xd9\ +\x10\x57\xd3\x24\x54\x7c\x48\x68\xd9\x90\x30\x85\x12\x08\x4d\x7f\ +\x0c\x99\xdf\x3b\x01\xc4\x03\x9e\x3f\xc7\xf9\xf7\xbf\x88\xe6\x45\ +\xcc\x24\x04\xae\x03\x26\x39\x43\x05\x32\x11\x80\xc4\x80\x9a\xcc\ +\x43\xcf\x40\x68\x19\xf0\x6c\x82\x90\x02\x57\x92\xe0\xa6\x50\xb2\ +\x0f\x5c\x48\x04\x53\x13\x4e\xd0\xc1\x75\x2d\x27\x14\x40\xd7\x0d\ +\x03\x24\x0a\x41\x8d\x0a\xae\x87\x08\x43\xc2\xa0\x36\x07\x95\x04\ +\x33\xa1\x0c\x09\x6e\x84\x00\x84\x3a\x1e\x47\xf2\xff\x4e\x80\xa7\ +\x2e\xee\xc4\x99\xb7\x2c\x85\xb0\xc8\x73\x23\x07\xc7\xb9\x28\xd6\ +\xa7\xe7\xa1\x98\xe2\x64\xed\x3e\xd3\x84\x00\x57\x33\xa4\xa3\x42\ +\xc8\x82\x73\x0e\x03\x6e\x70\x12\xd6\x50\x32\x39\x01\x0d\x12\x52\ +\xcf\xc4\x01\xba\x26\xcc\x1f\x6e\x80\x3c\x89\xa0\x27\x68\x60\x4e\ +\x90\x1c\x04\x0f\x01\x3c\xc4\x64\x98\xd8\xd9\x71\x29\xba\xd9\xc5\ +\x10\x95\x11\xe0\x85\x6b\x53\x58\x78\x6d\x20\x3f\xf3\x46\x09\x01\ +\x9c\x62\x38\xc6\x8b\xdc\x35\x1b\xa2\xc8\x58\xf2\x1e\x40\x00\x14\ +\x4e\x90\xdc\x80\xcb\x47\xf0\xe7\x3c\x46\xd7\x75\x18\x9a\x96\xf3\ +\x20\x9d\x33\x12\x27\x09\x3d\x35\x06\x75\xa4\x07\x7a\xa2\x0f\xae\ +\x00\x03\xf3\xe4\x6f\x37\x14\xf1\x3a\x35\xdf\xe8\x58\x81\x04\xca\ +\x98\x0b\x65\x8d\xb9\x72\x0f\x97\x8b\x69\x82\x63\xc6\xb9\x89\x82\ +\x63\xc7\x78\x61\x58\x2d\xb7\xfa\x8b\x8c\x35\x21\xc9\xf9\x3e\xcd\ +\xf4\x96\xd4\xa7\xe2\x48\x34\xc6\x63\x0b\x95\x0f\x3f\xd9\x0b\xd4\ +\xd7\x00\xb3\x2e\x85\xde\x34\x97\x9c\xec\x03\xe8\x43\xab\xc1\xb3\ +\x06\xd4\x38\xae\xc8\x8c\x88\x55\xa2\x1b\x5f\x63\x0b\x50\xd2\x24\ +\x94\x35\x0e\x88\x89\x04\x78\x01\x81\xa2\xd7\x45\x31\x91\x8a\x7c\ +\xd6\xb1\x7e\xb6\x69\x5a\x1a\x48\x1c\x01\x0e\xbf\x0f\xd7\xbe\x35\ +\xa8\x5a\xba\x02\x9e\xe9\xcb\x00\x96\x1f\x0a\xce\xbe\xda\xf3\x38\ +\x4e\x00\x3e\xaf\x00\x42\x4c\x70\xdd\x22\x33\x69\x79\x44\xd9\x87\ +\xe7\xe5\xbd\x80\x50\xfe\xb3\xed\x6b\x79\x11\x0e\xbc\x09\xac\xbd\ +\x13\x7a\x66\x16\x52\x43\x02\xe9\x61\x01\x35\x29\x98\xa1\x62\x49\ +\x25\x04\x28\x7c\x38\xce\x8b\xcc\x6c\x31\x61\x8e\x91\x38\x2f\x15\ +\x5a\x93\x08\x13\x27\xf2\xe9\x31\xe4\xec\x93\xd5\x30\x12\x5e\xa4\ +\x8f\x9a\xe4\xf3\xb7\x42\xc0\x5f\x81\x1c\x20\x0a\xc9\xd8\x84\x4a\ +\x92\x71\x1e\x97\x0a\x25\x5e\x46\x9c\x42\xf1\x6c\xf2\xf6\x44\x31\ +\xdd\x2c\xaf\xd6\x23\xc3\xb2\xcf\x2d\x40\xa1\xdb\x15\x78\x41\xb1\ +\xd8\x75\x1e\x17\x0f\x95\xc2\x44\x59\xc6\xc3\xe2\x83\x44\x3e\x8c\ +\x02\xe3\x1a\x84\xc5\xbc\x72\x02\x40\x14\xcd\xe8\x36\x81\xe3\x4d\ +\x88\x45\xae\x17\x92\x2d\x1c\x1f\x1b\x70\x90\x77\x98\xa1\x43\xa0\ +\xd2\x02\x08\x41\x30\x8e\x3d\xa3\x17\x86\x4a\xf9\x24\xc8\x8f\x31\ +\x29\xc6\x4b\x90\x27\x13\xa6\x07\x4c\x9c\xb7\x0a\x09\xe0\x24\x5b\ +\xbe\xd4\x95\x5f\x03\x94\xff\xac\x42\x0f\x8b\xf5\x03\xa9\x51\x94\ +\x34\x43\xb7\x89\x57\x38\x04\x2c\x18\x05\x0f\x57\x9e\x4c\x91\x6b\ +\x28\xa8\x26\xc5\x45\x8d\x1d\x2e\x4f\x1e\xc8\x2f\x93\xe1\x14\xa0\ +\x12\x65\xd0\x41\xb6\x10\x45\x32\x36\x6c\xa2\xb9\x7e\x10\x98\x75\ +\x0e\x6e\x9d\x13\x60\xf7\x4d\x9a\x10\xcb\xcf\xbc\x33\x09\x02\x36\ +\x44\x25\x04\x40\xc9\x44\x35\xb9\x10\xb0\x88\xb1\x63\x24\x6e\xc2\ +\x3e\xb6\xbf\x27\x6a\xce\xfc\x08\x8e\xd5\x04\xd7\x2d\xe2\x16\x2a\ +\xe4\x01\x65\x56\x7a\x0e\x22\xc5\x88\x95\x12\xc3\xea\x73\x0a\x87\ +\x58\x5f\x01\xf9\xb2\x66\x38\xca\x60\x25\x05\x28\x1f\xdb\x4e\x21\ +\x9c\x64\x0a\x3d\xc2\x26\x6e\x0b\x64\x58\xe0\x40\x9c\xc8\x67\x88\ +\xbc\x54\xe4\x7d\xb5\x74\x15\x70\xa0\xd2\x2b\xc1\x82\x38\xb7\x60\ +\x93\x13\xff\xdb\x0b\x2c\x62\xc2\xe1\xe6\x36\x59\x82\xe3\x38\x7e\ +\x88\xc8\x0f\x03\xb2\x35\x54\x58\xe0\x28\x67\xf6\x3a\xc0\xf6\x82\ +\x0a\xaf\x04\x3d\x55\x40\xfd\x09\xf9\xa7\xd1\xd3\x40\x26\x0c\x24\ +\x8f\x02\x5a\xd2\x99\xe8\xec\x58\x2e\x14\x88\x39\x12\xa3\x53\xa8\ +\x78\x6f\x9e\xbc\x64\x3d\x3d\xb3\x45\xb0\xfd\xba\x74\x15\xb0\xcb\ +\x60\xe5\xd6\x01\xb6\x08\xfe\x29\xc0\xdc\x4b\xe1\x34\x91\x17\x61\ +\x6c\x2f\x10\xfa\x28\xe7\xbe\x85\xee\x4f\x10\x13\xfa\x84\xc3\xe5\ +\xf3\x6d\xe2\x90\x93\xbc\x4d\xd6\xd9\xf2\x12\xcc\xac\x24\x58\xe9\ +\x75\x80\x23\xbb\x17\x1a\x03\x82\x2d\x79\xb4\x5f\x98\x17\xe0\xe0\ +\x6b\xc0\x48\xa7\x33\x1c\x18\x01\x36\x79\xb3\xb5\xc9\x9b\x33\x7f\ +\xd4\x72\xfb\x32\x02\xc0\x1e\x53\x72\x1d\x20\x08\x15\x4d\x82\xb0\ +\x50\xce\x6a\x3a\x80\xd3\x6e\x05\xce\xb8\x17\xa8\x9e\x3e\x21\xce\ +\xed\x7c\x60\x9f\x5b\xe4\xb3\x16\x79\x09\xd4\x5a\x90\xca\x80\xa1\ +\xf8\xcb\x90\xa8\x64\x15\xc0\x24\x19\xdf\x50\xca\xaf\x32\xea\xe7\ +\x01\xe7\x2c\x07\x3a\x2e\x73\x84\x84\x0d\x93\xfc\x41\x22\x1f\xb2\ +\x49\x95\x03\x2b\x2d\x82\x30\xf4\xca\x57\x01\x22\x6a\x27\xaa\x48\ +\x0f\xb0\xee\x6e\x40\xe8\xf9\x73\x6f\x35\x10\x6c\x26\xb2\x27\x02\ +\xd3\x96\xd1\x79\x7d\xc1\x76\x22\x4e\xba\x01\xa8\x9b\x03\xec\x5c\ +\x09\x18\x9a\x95\x00\x09\x89\x03\x80\x62\x91\x17\x93\x00\x8e\x44\ +\x68\x1b\xb7\xa7\xad\x20\x1c\xb8\xe6\x8c\x16\x51\xe9\x32\x88\x89\ +\xe5\x4f\x07\xb2\x61\xc2\x30\x30\xba\x1d\xe8\x79\x16\x68\x5c\x04\ +\xcc\xfe\x33\xa0\xba\x1d\x0e\x6b\x39\x17\xf0\x90\x58\x9d\x14\x16\ +\x9a\x0a\x24\x7b\xec\x99\x17\x25\x92\x9c\x70\x10\x76\x92\x66\x13\ +\x20\x9c\x1e\x90\xfb\x55\xb1\x10\x60\x02\xce\x9a\x3f\x59\x19\xb3\ +\xb6\xba\x47\xb6\x00\x9b\x7f\x00\x7c\xb2\x8a\xba\xb2\x70\xd8\x94\ +\xc5\xc0\x92\xfb\x81\x74\x9f\x49\xbe\x78\xcc\xdb\xfd\xc7\x17\x1a\ +\xa6\xd9\x65\x90\x50\xa9\x24\x08\x51\x58\xd7\x6d\xf2\x85\xab\x3e\ +\x53\x88\x81\x35\x24\xc4\x1d\x40\x6a\x10\x0e\x6b\x3a\x13\x38\xf5\ +\xfb\x05\x64\xcb\x82\x4d\x1a\xff\xce\x7e\xf6\x3b\x5d\x09\x5a\x04\ +\xfd\x8d\x40\xfb\x05\x80\xbb\x2a\x17\x6f\x48\x0f\x01\xf1\x83\xc0\ +\x78\x17\x60\xa8\x13\x44\xa0\x36\x75\x18\xd8\x4a\x22\x2c\x79\x10\ +\xa8\x99\x8b\x4f\x6d\xfe\xdf\x00\xa3\x1f\x00\x87\x9e\x01\x50\x26\ +\xfe\x51\xc2\xf5\x25\x47\x9e\xc8\x83\xeb\xf6\xed\xa2\x32\xeb\x00\ +\xe7\xcc\xfb\xea\x80\xd6\xb3\x60\xdb\x52\x02\xf2\x2b\xc1\xa1\x77\ +\x80\xbe\xd5\x74\x1c\xb1\x17\x3b\x5a\x14\xd8\x7e\x17\x89\xf0\xcf\ +\x4e\x11\xce\x7c\x04\x18\x79\xd7\xac\xfd\xc5\xe3\x9f\x17\xf5\x4f\ +\x27\x69\xc9\x3e\x17\x10\x16\xf1\x8a\x87\x80\xed\xee\x93\x9a\x3b\ +\x08\xb4\x5f\x05\x9c\xf5\x53\xa0\x71\xa9\xf3\xe5\x66\x7c\x2b\xb0\ +\xfe\x72\x40\x8b\xd9\xe3\x3d\x0d\xa4\xdd\x4f\xca\xd7\x7c\x66\xb7\ +\x36\x8a\x84\x06\x9b\xc4\xa1\x2a\x23\x80\x73\x25\x58\xd2\x3c\xf5\ +\xc0\xe2\xfb\x80\xb6\x2b\xf2\x5e\x90\xd8\x07\x28\x47\x80\x54\x0f\ +\xb0\xfd\x56\x38\xac\xfd\x5a\xa0\xe1\xb4\xcf\x50\xfb\x4b\xc2\xb1\ +\x12\x14\xa2\x62\x02\x70\x0b\x02\x50\x62\x40\x78\x17\x30\xb2\x0d\ +\x48\x0e\x4e\xf2\x2d\x0c\x98\xfb\x5d\xa0\xf1\x4c\x20\x3b\x68\x3f\ +\x78\xff\x53\x74\xcf\x3b\x13\x86\x51\xe7\x29\xf7\x1d\x67\x22\x2c\ +\x71\xcc\x9c\xc4\x05\x2a\x97\x03\xec\xfa\x3f\xbe\x17\xd8\x70\x1b\ +\x00\xdd\x0a\x09\xeb\x05\xa9\xe3\x4a\x60\xc6\xc5\xce\xa5\xd9\xc2\ +\x1f\x11\xe1\xdf\x02\x91\x4e\xfb\x41\x77\xdf\x05\x5c\xb8\xd5\x1e\ +\xd7\x4a\x61\x13\x6c\x03\x92\xfd\xce\xd8\x67\x36\x0a\x63\xbd\x04\ +\x80\xcf\xb6\x27\xf8\xe0\x7d\x37\x2d\xdc\xf2\xf6\x4f\xa5\xd2\x55\ +\x80\xc0\x55\xe7\x92\x18\x84\x4c\x08\xd8\xfb\x18\xb0\xfd\x87\x80\ +\x91\x99\xf0\xc9\x6e\xe0\x0b\xbf\x06\x5c\x2e\x7b\x16\xe3\xdb\x80\ +\xd1\x89\x5e\x20\x03\xed\xdf\x2c\x3b\xf3\x4e\x14\xef\x17\xec\x33\ +\xe6\x80\xb7\x37\xf7\xae\x7e\x6b\xc3\xbe\x5f\x90\x08\xac\x68\x0e\ +\x28\xdc\xf3\x73\x2e\x90\xc6\x3a\x81\x0f\x6f\xb4\xfa\x2c\xab\x9e\ +\x0f\xb4\x5d\xe7\x8c\xe3\xfe\x5f\xc2\x61\xd3\xaf\x2e\x41\xba\x4c\ +\xdc\xa3\xe0\xdc\x0e\x83\xe3\xc9\x01\xe3\x8a\x9e\xed\xdc\x35\x38\ +\x7f\xc7\xee\xc1\x7f\x25\x11\x4a\x6f\x89\x81\x3b\x84\xb0\x77\x6f\ +\xf7\x00\x87\x9f\x03\xf6\xac\x84\xc3\xe6\xdd\xe5\x24\x37\xba\x06\ +\x30\xd2\xf6\xf5\xda\xc5\x80\x7f\x6a\x01\xe9\xe3\x24\x6e\x0b\x20\ +\x3e\x83\x07\x24\x33\x19\x43\x81\xfb\xce\xd7\xdf\xec\xba\xe6\x50\ +\xff\xd8\x43\xc5\xdf\x06\x09\x81\x16\xe0\x8c\x1f\x03\x17\x3d\x4f\ +\xed\x0a\x20\x38\x33\x4f\x3e\x3d\x80\x9c\xed\xa5\x9a\xaf\xc5\x27\ +\x78\xc1\xc9\x40\xcd\x7c\x9b\x94\x20\xf2\xd1\x0f\x9d\x49\x73\xca\ +\xd9\x85\xa4\x51\x36\xde\x0b\xc9\x33\x27\x71\x21\xb9\xe5\x63\x12\ +\x20\x95\xc9\x1a\x29\xdd\xc8\x8e\x45\x92\xb7\x3c\xbb\x7a\xeb\x3d\ +\x6b\x5f\x78\xf0\x9e\xc2\x3f\x8d\xf1\x7c\xe6\x5e\x72\x27\x50\x6f\ +\x12\x72\x01\x75\xd4\x9e\xbe\xc2\x76\x7b\x86\xfc\xe2\xe7\xc8\xab\ +\x70\xd8\xd4\x8b\x9d\x33\x1b\xdb\x0c\x87\xd5\x2e\x3a\x0e\xa2\x65\ +\x44\x80\x05\xfa\xb5\xcb\x77\xfa\x2f\x96\x3f\x70\xeb\xeb\x8f\x3d\ +\xfc\xc3\xef\xfc\xec\x27\xf7\x4e\x2f\x5a\x05\x32\x8a\xa2\x27\xd2\ +\x19\xff\xf6\x4d\x9b\x5e\x5a\xba\x74\xe9\x6b\xcf\xbc\xbc\xf9\xa1\ +\x0f\xff\x7b\xe5\xc8\xd9\x97\xfc\xc3\x2a\x47\x12\xac\x99\x0d\x54\ +\xb5\xc0\x61\xee\x1a\xe0\xe4\xef\x01\xdb\xbf\x6f\xf7\x8d\x6e\x00\ +\x3a\xbe\x39\xc1\x0b\x4e\x71\xba\x77\x66\x1f\x1c\x56\x75\xc2\xf1\ +\x91\x47\x89\xbe\x09\x25\x70\xe3\xa6\x2e\xcf\x86\xa1\xfd\x97\x37\ +\xd4\xd7\x5e\x3e\x73\x66\x8b\xf8\xea\xd5\x57\xec\x9a\x36\x6d\xda\ +\x7b\x55\x55\x35\xeb\x33\x59\xf5\x83\x7f\x7b\xe4\xe7\xa3\x39\x01\ +\x14\x4d\xe3\x14\x06\x7e\x90\x71\xce\xff\x76\x67\x77\xff\xb9\x2f\ +\xbd\xb1\xed\x71\xca\x07\xc3\x38\xfc\xa4\x2d\x80\x96\x29\xb2\xf9\ +\x71\x0a\x1c\x96\x19\x80\xc3\x7c\xcd\xce\x87\x56\x87\xe0\x30\x6f\ +\x4b\x59\x82\xe5\xc9\x3b\x63\x9f\x83\x61\x6a\x9d\xf7\xad\xda\x54\ +\xed\x02\x26\xb9\x5a\x87\x47\xa2\x6c\x6c\x3c\xb9\xa8\xb7\x6f\x68\ +\x91\x2c\xcb\xb7\xa9\xaa\xca\xe7\xcc\x99\x73\x7b\x4e\x00\x5d\xd7\ +\x59\x3a\x9b\x0d\x80\x6c\xc7\x8e\x1d\x83\x0b\x16\x2c\xf8\xbb\x35\ +\x6f\xef\x7c\xba\x65\x5a\xed\x73\x27\x9d\x30\x53\x0e\x72\xc3\xda\ +\xc1\xe9\x07\xd2\x47\x81\x40\x33\x1c\x96\x3c\x0c\xe7\x02\x5c\x86\ +\xc3\x5c\xb5\xce\x35\xbf\x91\x82\xc3\xe4\x2a\x1c\x97\xb1\xc9\xfb\ +\x46\xb2\x3e\xbc\x1f\xa9\xc3\xc1\x4c\x2d\x0e\x67\x6b\x30\x1e\x4b\ +\x5f\xa4\xeb\x49\xc4\x62\x31\x28\xe4\xe5\x84\x7d\xc4\xb5\x95\x73\ +\x5e\x6f\xf9\xe2\x2c\xf3\x17\xb8\x10\x8c\xf2\x40\x10\x96\x75\x77\ +\x77\x3f\x63\x18\xc6\xd3\xff\xf9\xf4\xba\xc0\x6b\x91\xb9\x72\x5a\ +\x78\x00\x6e\xfd\xe3\xc8\xf5\xb7\xe5\x57\x83\xb0\x2c\x3b\x0a\xec\ +\x7c\xc8\x49\xb0\xaa\x03\x0e\xd3\xe3\x70\xee\xef\x7b\x50\x60\xf6\ +\xfd\xc7\x65\xe3\x59\x37\x7e\xb5\xb7\x19\xd7\xbf\xbd\x00\xcb\xfb\ +\xcf\xc5\x7b\xb1\x99\xd8\xdc\xaf\xe0\xc0\xde\x2e\xd4\x25\xba\x51\ +\xa7\xf4\x3f\x5a\x53\x53\x73\xe1\xca\x95\x2b\x67\x90\x00\x4b\x67\ +\xcf\x9e\xdd\x23\x49\x12\xac\x6f\x7a\xcb\x05\xb2\x80\xcf\xd3\x94\ +\x55\x95\x46\x4c\x30\x12\xe0\x26\x55\x35\x4e\x5e\xfe\xd8\xda\xd3\ +\x3c\xb7\x5c\x86\xcb\x9b\xfa\xe0\x33\x5f\x7b\x93\x7d\x24\xf5\x26\ +\x60\xee\xd7\xf3\x1a\xf6\x3c\x01\xa8\x24\x82\x3c\xe1\xe1\x5b\x2e\ +\x83\xc3\x52\xbd\x36\x79\x46\x90\xeb\xe1\x30\x6d\x1c\x10\xc7\x21\ +\x82\x99\xe0\x46\xaa\xf0\xec\xee\xa9\xd8\x12\x9e\x06\x4d\xd7\x10\ +\x8f\x8f\x43\x44\xdf\xc3\xe5\x73\x0d\xcc\x59\xe4\xc3\x89\xb3\xda\ +\xe0\xad\x6d\xa6\x3c\x7d\x41\x5f\xfb\x95\xf7\x0c\x03\x10\x0f\x3f\ +\xfc\x30\x23\x5b\x2c\x44\x2e\x6b\x5f\x4d\x78\xc3\x75\xcf\xdf\x5f\ +\x83\xc7\xd6\xee\x6c\x4a\xa6\xd5\x16\xcb\x2d\x38\x01\x07\x0f\x1e\ +\x4c\xb7\xb5\xb5\x7d\x25\x1a\x49\x6c\x5d\xf1\xcb\xdf\x36\xc9\x37\ +\x7e\x11\x97\x64\x87\xe0\x96\x00\x16\xeb\x07\xdb\xfe\x2f\x80\x79\ +\x2c\xe3\xd3\xed\x6c\xc6\xac\x87\xdf\xf9\x03\xe0\xc0\xa3\x66\xc9\ +\xcc\x23\xfc\x2e\xc0\x27\xb8\xaf\x6f\x0e\x1c\xa6\x5a\x02\x38\x45\ +\x98\xb4\x6f\xf3\x60\x10\xab\xb6\x35\x63\xd3\x61\x2f\xa2\xd1\x08\ +\x62\x91\x8f\xf1\xa5\x39\x0a\x7e\x74\x9e\x84\xf3\x17\xce\x04\xab\ +\x9b\x87\x3d\x83\x40\x64\xe8\x10\xa2\x07\x3b\x11\xee\xdd\x79\xf0\ +\x9d\x70\xf3\x01\x00\x7c\xc5\x8a\x15\xcb\xc8\x1b\x3c\x24\xc0\xeb\ +\x00\x72\xa5\xca\xd5\xd8\x58\x23\x65\x15\xad\xdf\xd0\x35\x0e\xa0\ +\x86\x90\x26\x68\x04\x31\xbb\xbf\xff\x70\xf4\x84\xa6\xeb\x87\x8e\ +\x8c\xac\x59\xf1\xe4\x26\x96\xb9\xfa\x6a\x9c\x6f\xbc\x08\x8f\xac\ +\x41\x96\xcd\x4a\x48\xa0\x56\xa6\x96\x59\xe7\x8c\x13\xc2\x5d\x60\ +\x11\x82\x9c\xaf\x9c\x29\x5d\xc6\xa1\xb1\x00\x8e\xc4\x3c\x18\x8a\ +\x7a\x10\x7a\xf5\xbf\x10\xd3\xd7\x21\xcd\xa6\x23\x65\xd4\x01\x24\ +\x6c\x2d\xef\x40\x8d\xcf\xc0\xd4\x6a\x0d\x73\x9b\x32\x58\x36\x23\ +\x85\x29\x7e\x1d\xa6\x0d\x27\xdc\xd8\x70\xb0\x1a\x2f\x75\x4d\xc1\ +\xc7\x83\x12\xc2\xe1\x30\x22\xe3\xe3\xf8\x8b\xa5\xc0\x03\x37\x07\ +\x70\xe2\xbc\x2f\xe4\x12\xb1\x88\x1d\x81\x31\xb4\x1d\x91\x7d\x31\ +\xa4\x14\x91\x4f\x37\x6e\xb7\x35\x45\x60\x2d\x2d\x2d\x17\x9b\xf9\ +\x80\xec\x79\x58\xe6\xba\xfd\xde\x55\x1c\x5e\xff\x12\xa8\x59\x93\ +\xfc\x14\x42\x15\x21\x46\xc8\x10\xf8\x99\xd3\x47\xd7\x6d\x3c\x5c\ +\xf7\x60\x6f\xdf\x91\xfb\x1f\x7e\x49\x42\xf4\x4f\xaf\xc2\x32\x75\ +\x35\x3c\x2e\x1d\x2e\x57\x9e\xbc\xcb\x12\x81\x13\xdb\x50\xda\x8b\ +\xc1\xb8\x17\xfd\x51\x1f\x8e\x24\x83\xd8\x3f\xec\x42\x6f\x48\x43\ +\x3a\x93\x45\x36\x9b\x85\xaa\x66\x20\x44\x1a\x3e\x5f\x06\x81\xc0\ +\x28\x82\xf2\x18\x3c\x48\x23\x6f\x12\x09\xe4\x42\x46\xf7\xc0\xef\ +\xaf\xc7\xec\x66\x2f\x3d\x5a\x35\x14\xe1\x43\x86\xee\x1f\x0a\x8d\ +\x20\x3c\x36\x86\xa0\x17\x78\xed\x8e\x7a\x5c\xf2\x27\xe7\x03\xb5\ +\x27\x43\x28\x29\x18\x07\xd7\xe6\x04\x10\x06\xc0\x49\x79\xc1\x04\ +\x84\xe0\x74\xec\xca\x15\x5f\xf3\xbb\xeb\xeb\xeb\xaf\xef\xeb\xeb\ +\xcb\x80\x6e\x77\xbe\x0d\x2a\xf4\xe9\x00\xb7\x50\x47\xf0\x13\xa2\ +\x9b\x81\x44\xbb\x0e\x76\x61\x7b\xf4\xb9\xf7\x0e\xd7\xce\x3e\xd4\ +\x37\xf0\x97\x4f\xbc\xc9\xb0\xff\xa4\xf3\x35\x79\x74\x4b\xca\x60\ +\xae\xa0\xaf\xaa\xc6\xe5\xae\x9e\x82\x81\xa8\x84\x81\x31\x8e\x68\ +\x3c\x8d\x54\x2a\x83\x44\x32\x8d\x80\x34\x88\x93\x5a\x75\x5c\xbb\ +\x54\xc2\xbc\x19\x40\x5b\xb3\x84\xf6\xd6\x20\x9a\xbf\xf4\x22\x24\ +\x33\x51\xba\x48\xf3\x9d\x37\x83\x99\x9b\x26\xba\x02\x28\x49\x30\ +\x35\x85\xa7\xd6\xeb\xb8\xf1\x3f\x52\x18\x19\xe1\x85\xc9\x9e\x01\ +\xab\x6f\x0b\xe0\xbc\x2b\xbe\x05\xe1\x69\x82\x48\x0e\x43\xdb\xf7\ +\x12\x90\x49\x12\x61\x19\x0c\xc8\x91\xe7\xd6\x96\x92\x90\x68\xa6\ +\x00\xf6\xca\x2b\xaf\xdc\x10\x08\x04\x66\x47\xa3\xd1\x55\x20\x5e\ +\xc5\x0a\x8a\x8b\x10\x24\x34\x10\xbc\x84\x64\x73\x10\x89\xf3\xe7\ +\x81\x35\x04\x51\xfb\x9b\xfd\x0d\x77\x29\xdc\xfd\xdd\xd6\xd6\x56\ +\xf4\xf7\xf7\xa1\x2a\xe0\x05\x37\x34\x84\x86\x23\x30\x0c\x8e\x69\ +\xb5\x14\x87\xf3\x25\x9c\x3b\x8f\xe1\x82\xa5\x4d\x68\x9f\x3d\x8b\ +\x2a\x5c\x13\x98\xbf\x01\xcc\x5b\x0b\xe6\x0e\x82\x41\x03\xb8\x92\ +\x03\x33\xb2\x10\x6a\x14\x2c\x3d\x08\xa4\x87\x73\xdb\xec\x4c\xcb\ +\xe2\xd0\x51\x81\xb3\x97\xd7\x62\x24\x1c\x01\x59\x6e\xc6\x3b\x1a\ +\x25\xec\x09\x01\xa7\xb5\x09\x7c\xf0\xb3\x0b\x20\xd1\xeb\x37\x4f\ +\x47\xa0\xed\x79\x06\x22\x9b\xb4\x37\xaa\x75\x81\x4d\x07\x38\x14\ +\x8d\x83\x09\xae\x27\x1b\x16\x2f\x7c\xba\xa7\x4e\x27\xf2\x5b\x3e\ +\xfa\xe8\x23\xcf\xc0\xc0\xc0\xa9\x00\x7a\x8b\xed\x07\xe8\x84\x38\ +\x41\xb5\x44\xa8\x1d\x4e\x22\xf0\x7a\x17\xa2\x27\x35\x23\x7c\xde\ +\xac\xc8\x9d\xef\xf6\x35\xb3\xde\xde\xde\x9b\xcd\x58\x22\x6f\xb4\ +\x66\x85\xe1\x9c\x39\xae\xc8\xbd\x5f\x9f\xe5\x9f\xb5\xe8\x42\x6f\ +\xb0\x75\x21\x73\xfb\x82\x48\x0b\x05\xc4\x90\xa0\x10\x31\x82\xaa\ +\xd0\x61\x14\x3c\xd9\x9f\xdb\x2c\x91\x94\x10\x24\x3d\x01\x99\x09\ +\xc8\x42\x40\x12\x66\xcb\xd0\x3d\x5c\x0d\x0e\x39\x37\xdb\x37\x9e\ +\x03\x7c\xeb\x6c\x50\x68\x00\x7f\xfd\x42\x2d\x66\x34\x24\x10\x97\ +\xdb\xe0\x4a\x2b\x48\xed\x5a\x0d\x91\xce\xd0\x7d\x66\xfc\x09\x08\ +\x9d\x23\x95\x11\x54\x1a\x01\xb3\x27\x65\xf8\x1e\x79\x64\x7d\xba\ +\xba\x75\x7a\xfd\xbf\xf7\xf4\xf4\xd4\x11\xf9\x1b\x4c\xf2\xe5\x36\ +\x44\xb8\x15\xff\x23\x04\x45\x00\x8d\x29\x15\x53\x3b\xfb\x11\xdb\ +\xd6\x2f\xc6\x5b\x1b\x95\xef\x69\x9a\x36\x04\xe0\xdb\x84\x36\x02\ +\xbc\x6e\xb9\x77\xd9\x89\x35\xf7\xb6\x5f\xf9\xe8\x75\x35\x53\x5a\ +\xda\x54\x25\x2d\xa5\x33\x09\xb7\xa6\xa6\x5d\x4a\x72\x14\xa3\xfd\ +\xbd\x99\x70\xff\xc7\x6e\x23\xbe\xbf\x5a\x36\xe2\xbe\x80\x57\x54\ +\x79\x3d\xc2\x13\xf0\x08\x29\xe0\x61\xb9\xca\xe2\x22\xb8\x19\xc0\ +\x0d\xe0\xdd\x81\x39\x48\x24\xba\x30\xb3\x1e\x5b\x82\x6e\xec\x79\ +\x6d\x07\x6a\x3d\x2e\x51\x27\x04\x3f\xef\x70\x18\xfa\xc7\x3d\x11\ +\xc9\x88\xbf\x2a\xf3\x78\x04\x01\xb7\xcc\x3c\x4c\x80\x71\x01\x45\ +\x15\x62\xdf\x30\xd4\xa3\x09\x36\x7a\x28\xea\xde\xf8\xe1\xa0\xdf\ +\x35\xeb\xc4\xa6\xd5\x54\xd1\x9a\xf7\xee\xdd\x7b\x37\x80\x5f\x1d\ +\xeb\x8e\x90\xb0\xbc\x60\xdc\x6a\x1b\x09\x0d\x02\x08\x1c\x09\x8f\ +\x87\x01\xac\x90\x65\xf9\x9f\x7c\x3e\xdf\xf6\x54\x2a\xb5\xd0\xe3\ +\xf5\xbe\xdc\x71\xfa\xd5\xef\xcf\x3e\xe5\xec\xaf\x09\x2e\x06\x0c\ +\x43\x53\xe2\x91\x70\xf7\xde\x1d\x1b\x77\x6f\xfc\xcd\x93\xa3\xaa\ +\x9a\xf6\x41\x57\x7d\x86\x11\x0c\x08\xdd\x5b\x25\xb8\x56\x45\xa1\ +\x13\x64\x42\xaf\x97\x99\xde\xe0\x96\x8c\xda\x6a\x9f\x41\x2d\x0f\ +\xc6\xa4\x99\xf3\x3b\xfb\xa4\x2a\x55\x51\xe2\x0b\xe6\xe0\x0e\x83\ +\x23\xab\xab\xf0\x65\x54\xe1\xf3\xbb\xb8\xa7\xfb\x88\xb1\x64\xcd\ +\x3b\x9d\xcf\xca\x2e\xd6\x00\x78\x83\x0c\xc2\xc7\x60\xb8\x05\x87\ +\x94\x48\xc3\x08\xa7\xb8\x72\x24\x2a\xbc\x9a\x67\xda\x17\x3b\xe6\ +\xcc\x98\xd1\xd5\xd5\x95\x08\x85\x42\xf7\x00\x78\xf4\xb3\x6c\x89\ +\x19\x84\x84\x25\xc2\x14\x0b\x33\x08\x11\xc3\x30\xc6\x1a\x1a\x1a\ +\xb6\x64\x32\x99\x85\xfe\x40\x70\xd7\x57\x6e\xbc\x77\x9a\xcb\xed\ +\x35\xb3\xed\xfb\x5d\xbb\xf7\xbc\xb1\xa3\x73\x6b\x94\x43\x97\x1a\ +\x4f\xfa\x32\xe3\x5c\x65\xa4\x89\xc4\xf5\x2c\x33\xd4\xb4\xa4\x2b\ +\x29\x49\x57\x93\x32\x65\x6f\x59\xa3\x96\x67\x53\xee\x31\x2d\xed\ +\x19\x1c\x63\x0b\xdd\xcd\xcb\x1e\xdd\xd9\xf5\x3a\x24\x86\x07\x3b\ +\xa6\x62\x9b\x00\x1d\x6a\x90\xb8\x4c\xe9\xc4\xa5\xde\x3e\x2c\xd8\ +\x5b\x4f\xae\x1f\x9b\x75\xe1\xb2\x59\xcf\xb7\x34\xf8\xd3\xe3\xb1\ +\xd4\xb4\xd1\x68\xfa\x84\x70\x4c\x9f\x6f\x48\xfe\x99\x9e\x40\x5d\ +\xa3\xab\xc6\x1f\x8c\x86\xc3\xea\xce\xee\xf7\x5e\xd6\x75\x7d\x39\ +\x80\x5d\x04\xed\xf3\xfc\xaf\x31\x66\x89\x55\x4b\x98\x6a\x95\xca\ +\x24\xd5\xd5\x9b\xa8\x26\xdf\xd6\xdc\xdc\xfc\x0d\x7a\x87\x50\xd2\ +\xe9\x74\xe2\x8d\x37\xde\xd8\x3d\xc9\x96\x86\x80\x05\xd3\x98\x10\ +\x9c\xc3\xe0\x42\x37\xe8\x48\xe5\x86\x9a\x11\xdb\xb6\xed\xa8\x86\ +\xb7\x7a\xed\xde\xbd\x9f\xcc\xeb\xec\xec\xdc\x0e\xe0\x4c\x82\xfe\ +\x8f\x00\xd6\x2d\x06\x4b\x8d\x83\x45\x63\x90\x7b\x13\xec\x2c\xba\ +\xf3\x79\xb7\xdb\xdd\xec\xf5\x7a\x55\x6a\x99\xcb\xe5\x72\x93\x81\ +\xc8\x1a\xf1\x78\x7c\xbf\xa2\x28\x6b\x01\xfc\x5a\x08\xd1\x5d\x40\ +\xbc\x9c\x07\x94\x08\x09\x8d\x10\x21\x28\x84\x26\xc2\x14\x55\x55\ +\xe3\xe6\xba\x9a\xda\xa6\x97\xc9\xc8\x2b\x38\x00\x97\x53\x00\xe7\ +\x9f\x3d\x18\x63\x1c\x8c\x41\xa2\x1f\x78\xdc\x02\xf0\xf1\x77\x37\ +\x7c\xd4\xee\xf7\x57\x3d\x91\x88\xc6\xe6\x6d\xdb\xb6\x6d\x14\xc0\ +\x35\xd6\x78\x99\x04\x90\xf0\x31\x64\xab\x2a\xd5\xe4\x77\x54\x70\ +\x0b\xe5\xa1\xb3\x08\xb5\xd6\x73\x85\x09\xfb\x09\xa6\x70\x7d\xd6\ +\x62\x4e\x54\x66\x57\xb8\x30\x24\x92\xd6\x97\x66\x69\xc6\x37\x92\ +\x00\x4a\x22\x91\x38\xe3\xc0\x81\x03\xaf\x51\x79\xe4\x74\x2e\x13\ +\x49\x13\x92\x55\x21\x72\xe4\xf3\x13\x2f\x0c\xab\x95\x48\x2c\xb1\ +\x6e\xdd\xba\x36\xba\x7e\x3d\x2d\x4f\xbf\x73\xe8\xd0\x21\xff\xa6\ +\x4d\x9b\xc6\xe9\xda\x5f\x01\xc8\x12\xda\x26\x7c\xa7\x36\xc1\x0b\ +\x93\x84\xdd\x84\x4e\x42\x8a\x90\xb1\x26\x45\x2f\x47\xba\x74\x08\ +\x1c\xff\x7d\x32\x21\xe0\xf1\x78\xbe\x4d\x1e\xb0\x9c\xc2\x60\xe5\ +\xa9\xa7\x9e\xba\x9e\x92\xa3\x9b\x5c\x93\x51\x82\xe4\xe4\x9a\x3a\ +\x09\xa2\x72\xce\x0d\x1a\x23\x28\x5f\xc8\xe3\xe3\xe3\x33\xfc\x7e\ +\xff\x29\x34\xe6\x22\x6a\x97\x51\x82\x62\x94\xa1\x0d\xea\xff\x10\ +\xc0\x2a\xc2\x51\x8b\x50\xc2\x2a\xc9\xb1\x1c\x51\x27\x41\x6e\x41\ +\xe0\x73\x1a\xab\xc0\xfd\x26\xae\x63\x8c\x3d\x4c\xa4\x6a\xab\xaa\ +\xaa\x86\x89\x58\x8a\xda\x0c\x09\x20\x3c\x79\xf3\xd1\xf5\x06\x42\ +\x8d\x39\xfb\xe4\x39\x88\x44\x22\xc6\xd0\xd0\x50\x2f\x79\xc2\x06\ +\x6b\x69\x3a\x60\x11\x4d\x12\xd2\x96\x08\x9a\x4d\xf6\x77\x63\x0c\ +\x95\xb3\x2a\xc2\x97\x09\xa7\x13\xda\x2c\xc2\x75\x04\x37\xe7\x5c\ +\xb2\x5e\x41\x23\x84\x83\x84\x6e\xc2\xfb\x84\x7e\x6b\xa6\x8d\x72\ +\x7f\xd6\xfb\x03\x10\xa0\xf0\xf3\x1c\xff\x0a\xc0\xf9\x17\x56\x81\ +\xdf\x13\xfb\x1f\x84\xaf\xe2\x02\x22\xe6\xe9\x93\x00\x00\x00\x00\ +\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x20\x1c\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\ +\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\x1b\xaf\x00\x00\ +\x1b\xaf\x01\x5e\x1a\x91\x1c\x00\x00\x00\x07\x74\x49\x4d\x45\x07\ +\xd7\x08\x12\x14\x39\x28\x29\x91\x7c\x0e\x00\x00\x1f\xa9\x49\x44\ +\x41\x54\x78\xda\xe5\x9b\x09\xb0\x5c\x57\x99\xdf\xff\xb7\xf7\xbd\ +\x5f\xbf\xfd\xe9\xe9\x3d\x49\xd6\x2e\xd9\xda\x2c\x79\xc1\x78\xc0\ +\x76\x42\x81\xc1\x03\x64\x0c\x13\x1c\x42\x65\x02\x4e\xb1\x84\x78\ +\x5c\xc5\x14\x55\x49\x2a\x54\x48\x05\x2a\x03\xc3\x14\x03\x55\x33\ +\x13\x43\x2a\xae\x21\x9e\x01\x26\x05\x43\x80\xd8\xb2\x0d\x78\xc3\ +\x96\x25\x6b\xb1\xf5\xb4\x3d\x6b\x7d\xd2\xdb\xb7\xde\xb7\xdb\xb7\ +\xf3\x3b\xa7\xbb\x35\x12\x1a\x0a\x18\xb0\x81\x4a\xcb\x9f\xcf\xed\ +\xbb\x9c\x77\xbe\xed\xff\x2d\xf7\xb4\xfe\x7f\xff\x38\xaf\xe7\xdf\ +\x59\xb3\x66\x8d\xaf\xab\xab\xcb\xd7\xdb\xdb\x6b\x29\x91\x48\x38\ +\xd5\x6a\x55\xb9\x5c\xce\x5b\x58\x58\xf0\x96\x97\x97\xbd\x0b\x17\ +\x2e\x78\xd9\x6c\xb6\x29\x09\xfa\x2d\x16\x40\x24\x12\xf1\x6d\xdd\ +\xba\x35\xb0\x7b\xf7\xee\xf8\xdd\x77\xdf\xbd\xb5\xaf\xaf\x6f\x67\ +\x34\x1a\x5d\xcf\xf9\x75\x7e\xbf\xbf\xd7\x71\x9c\x04\x14\x6f\xf2\ +\x69\x34\x1a\x05\x43\x08\x63\xa6\x5c\x2e\x9f\x2a\x16\x8b\xe3\xd3\ +\xd3\xd3\xfb\xbf\xfd\xed\x6f\x9f\x3c\x70\xe0\x40\x0d\xa1\x34\x8c\ +\x40\x7e\x1b\x04\xe0\x6c\xda\xb4\x29\x74\xef\xbd\xf7\xf6\xbe\xf5\ +\xad\x6f\xbd\x07\x2d\xbf\x3d\x16\x8b\xdd\x1c\x0e\x87\xfb\x60\x5a\ +\xf0\x2a\xd7\x75\x2d\xc1\xb0\x3c\xcf\xb3\x0f\xf9\x7c\x3e\x4b\xc1\ +\x60\x50\xdc\x67\xcf\x57\x2a\x15\x15\x0a\x85\x49\xac\xe1\xd9\xa9\ +\xa9\xa9\x6f\x3d\xca\xe7\x5b\xdf\xfa\x56\xde\x58\xca\xaf\x52\x18\ +\xce\xaf\x4a\xdb\xd7\x5f\x7f\x7d\xf4\x13\x9f\xf8\xc4\xae\x6d\xdb\ +\xb6\x7d\x34\x9d\x4e\xdf\x0d\xd3\x29\xc3\x08\x1a\x15\x1a\x55\xa9\ +\x54\x52\x15\xa6\x6a\xb5\x9a\xdc\x7a\xbd\x25\x00\x08\xa1\x40\xad\ +\x95\xc0\xbc\x15\x42\x38\x1a\x55\x2a\x95\xb2\x14\xe5\xb8\xce\xfd\ +\x8b\x8b\x8b\xf3\x33\x33\x33\xff\x7b\x6c\x6c\xec\xcf\x3e\xf7\xb9\ +\xcf\x8d\x4f\x4e\x4e\xba\x46\x10\xbf\x6e\x01\x38\x1b\x37\x6e\x8c\ +\x7e\xfa\xd3\x9f\xbe\x79\xc7\x8e\x1d\x7f\x94\xc9\x64\xde\xe2\xe7\ +\x03\xd3\xc6\xaf\x55\x2c\x14\x54\xe1\xd8\x50\x15\x2a\x23\x04\xc8\ +\x0a\xa2\x8e\x20\x1a\x58\x82\xe1\xde\xe7\x38\xf2\x07\x02\x0a\x05\ +\x43\x0a\x86\x42\x0a\x84\x43\xf2\x9b\x63\xc6\x68\x3c\xae\x9e\xbe\ +\x3e\xf5\x41\x21\xae\x2d\x2d\x2d\xd5\x2f\x5d\xba\xf4\xcd\x23\x47\ +\x8e\x7c\x96\xbf\x7b\x22\x9f\xcf\xbb\xbf\x16\x01\xa0\x9d\xe0\x87\ +\x3f\xfc\xe1\x91\xf7\xbf\xff\xfd\xff\x7e\x68\x68\xe8\x03\x98\x70\ +\x10\x4d\x5b\xc6\x4b\x30\x6e\x28\xbb\xbc\xac\x85\xb9\x79\xcd\xce\ +\xcd\x6a\x6e\x76\x56\x4b\x8b\x4b\xca\xe6\xb2\xd6\x1a\x3a\x02\xf0\ +\x49\x0a\xfa\xfc\x8a\x84\x82\x4a\x18\xcd\x27\x12\xea\x4a\xa7\xd5\ +\x95\xe9\x56\x2a\xd3\xa5\x68\x2a\xad\x50\x22\xae\x70\x2c\xa6\x6e\ +\x84\x30\xbc\x72\xa5\x62\x1c\xcf\xce\xce\x96\xcf\x9c\x39\xf3\xc5\ +\x6f\x7c\xe3\x1b\x9f\xfb\xfa\xd7\xbf\xbe\x2c\xc9\x7b\xbd\x04\xe0\ +\x8c\x8e\x8e\xc6\xbe\xf4\xa5\x2f\xbd\x63\xcf\x9e\x3d\x7f\x8a\x89\ +\x0e\x5d\xd6\x78\x3e\xaf\x1c\x4c\x4f\x4f\x4d\xe9\xfc\xb9\xf3\x3a\ +\x73\xf6\x8c\x26\x26\x26\x34\x03\xf3\xf8\x72\x87\x71\x6b\xfa\xc2\ +\x3d\x1c\xa3\x7d\x49\x01\xc7\xa7\x00\x18\x10\x0a\xf8\x15\x45\xcb\ +\x89\x48\x54\x19\xcc\xbf\xaf\xa7\x5b\x83\x83\x83\xea\x5f\xb1\x42\ +\xe9\x81\x01\x45\x33\x19\x85\xcd\x79\xce\xad\x5a\xb5\x4a\xc2\x72\ +\xce\x9d\x3b\xf7\xea\xc1\x83\x07\xff\xf5\x27\x3f\xf9\xc9\xe7\x5d\ +\x3e\xaf\xb5\x00\x7c\xb7\xdc\x72\x4b\xf7\x97\xbf\xfc\xe5\xff\x40\ +\x48\xfb\xb7\x66\xed\x98\xa0\x0a\x50\x76\x71\x51\x13\x17\x2e\xe8\ +\xc4\xf1\x13\x1a\x3b\x7e\x4c\x68\xc7\x32\x5e\x2e\x96\xd4\xdb\xdb\ +\xa3\x95\x2b\x86\xd5\xc7\xd8\xdd\xd5\xa5\x58\x24\xa2\x30\xbe\xde\ +\x6c\x78\x06\x0f\xb8\xa7\xa0\x02\x02\x5c\x5a\x58\xd0\xfc\xf4\x0c\ +\x34\x8d\x60\x9a\x8a\xe0\x06\x29\x5c\xa0\xbf\xa7\x47\x2b\x56\x0e\ +\x6b\xc5\xea\xd5\xca\x8c\x8c\x2a\xda\xdb\xab\x38\xc2\x19\xe5\x7b\ +\x5f\x7f\xbf\xc0\x86\x2a\xd8\xf0\x1f\x1f\x7c\xf0\xc1\x2f\xe3\x22\ +\x95\xd7\x4a\x00\xfe\xb7\xbf\xfd\xed\x2b\x3e\xff\xf9\xcf\xff\x05\ +\x5a\xb9\x1b\x60\xb2\x8c\xe7\xd0\xec\xe4\xc5\x8b\x3a\xfa\xca\x2b\ +\x3a\xf0\xd2\x4b\x3a\x7e\xf2\xa4\x66\xa6\xa6\xf1\xd9\x5e\x6d\xdb\ +\xba\x55\x9b\x37\x6d\x52\x22\x1c\x91\xaf\xe9\xc9\xef\xb5\xc8\x31\ +\x04\xf3\x62\x84\xac\x45\x34\x0c\x71\xec\x72\x5f\xb5\x5a\xb3\x73\ +\x9e\x3e\x76\x4c\x0b\x08\xd1\x80\x63\x12\xb3\xef\x87\xf1\x95\x30\ +\xbd\x62\xfd\x7a\xa5\x56\x8d\x2a\xc2\xf7\x01\x5c\x62\xf5\x75\xd7\ +\x59\xa0\x45\x08\x5f\xf9\xd4\xa7\x3e\xf5\xe0\xc9\x93\x27\x8b\x3f\ +\x2f\x40\xfa\x7f\x5e\xe6\x3f\xf0\x81\x0f\xac\xf9\xcc\x67\x3e\xf3\ +\x48\x7f\x7f\xff\x9d\x26\x44\xe5\xdb\x1a\x3b\x31\x36\xa6\x1f\xfe\ +\xf0\x87\x7a\xe2\x07\x3f\xd0\xcb\x2f\xbf\xac\x01\x16\xf5\xce\x77\ +\xdc\xa3\xbb\x6e\xbf\x5d\xd7\xa1\xf5\x0c\xbe\x9d\xc4\x54\xd3\x6a\ +\x51\xaa\x43\x9c\x4b\x4a\x4a\x74\x88\x73\x71\xc6\x18\x6e\x11\xe7\ +\x5a\x6f\x32\xa5\x75\x1b\xd6\x69\x04\x06\x6b\x08\xb9\xb0\xb0\xa8\ +\x12\x02\x2f\xf2\x37\x6b\x4b\x4b\xf2\x55\xaa\x0a\x20\x98\x4a\xdd\ +\x55\xae\x84\x95\x81\x0f\x03\x03\x03\xbb\x6e\xb8\xe1\x86\xad\x58\ +\xc4\x63\xe7\xcf\x9f\xaf\xfe\xaa\x04\xe0\xbf\xf3\xce\x3b\x57\x7e\ +\xf6\xb3\x9f\xfd\x5f\xc4\xf5\x5b\x0d\x8a\x1b\xb3\x9f\xc3\x4c\x5f\ +\xda\x7f\x40\x8f\x3d\xbe\x57\xcf\x3e\xfb\xac\x5c\x7c\xfb\xbd\xbf\ +\xf7\x7b\xba\xe3\x8d\x6f\xd4\x20\xc0\x95\xc2\xa7\xd3\x4e\x87\xe9\ +\x0e\xb3\x0e\x0c\xc2\xa4\xa4\xa8\x31\xf1\x26\x24\x99\x11\xe2\x9c\ +\x19\xa1\x98\xbd\xc6\x79\xac\x22\x01\x26\x5c\xb7\x6e\xbd\xba\x01\ +\xc4\xfc\xf4\x94\xaa\x68\xba\x9c\xcb\xab\xba\xbc\x24\x87\xb5\x84\ +\x88\x1e\x0d\x9f\xa3\x3c\xc7\x19\x5c\x05\x21\x6c\x02\xa3\x36\xee\ +\xdb\xb7\xef\xbb\xe0\x52\xfd\x97\x15\x80\x8f\x30\xd7\xff\xd0\x43\ +\x0f\x7d\x85\x89\xef\x00\xc4\xac\xd9\x4f\x5d\xba\xa4\xe7\x9f\x7f\ +\x5e\xff\xf7\xb1\x47\x75\xe8\xe0\x41\xed\xda\xb1\x43\xff\xfc\xde\ +\x7b\xb5\xb2\xa7\x57\xe9\x0e\xe3\x57\x68\x38\x0a\x85\x61\x0c\xaf\ +\x57\x00\xc6\x02\x8c\xfe\xa6\x20\x46\xaf\x75\xec\x33\xc7\xf6\xba\ +\x21\x29\xc8\x18\x16\xe4\xf1\x9c\x5b\x07\x3b\x12\x1a\xc1\x22\xaa\ +\x33\x73\xaa\xb1\x86\x5a\x89\xd0\x4a\x44\xb1\x42\xf0\x33\x23\x96\ +\x96\x03\x8c\xbb\x00\x4a\x42\xe6\x26\xb2\xd0\x81\xef\x7f\xff\xfb\ +\x8f\xe3\x5a\xee\x3f\x56\x00\x0e\x79\x7b\xea\xe1\x87\x1f\xfe\xcf\ +\x6b\xd7\xae\xbd\x8f\x58\x6e\x32\x33\x4d\xc3\xfc\x8f\x9f\x7b\x4e\ +\x8f\xed\xdd\xab\xb3\xa7\x4f\xeb\xdd\xef\x7c\xa7\x6e\xdb\xbd\x47\ +\x5d\x80\x5a\x86\x85\x74\x18\x8f\x59\xa6\x61\xb6\xcd\xa4\x45\x7c\ +\x33\x1a\xbf\x6f\x42\x1c\x37\x6d\x24\x68\x8d\x6a\x9f\x77\xec\xbd\ +\x8c\x1d\xe1\x58\x30\x6c\x32\x59\xdd\x5a\xcf\xf0\x9a\x0d\x6a\x10\ +\x4e\xdd\x42\x8e\x30\x5a\x53\x3d\x57\x40\x08\x65\x2c\x21\x88\xa4\ +\x23\x2a\xd6\x6a\xd6\x1d\x58\xfb\x2e\x92\xb3\x65\x84\xb0\x5f\xcc\ +\xfe\x0b\x0b\x80\xb8\x1e\xf9\xc2\x17\xbe\x70\xef\x6d\xb7\xdd\xf6\ +\x5f\x00\x3c\x1f\xcc\x5b\xb3\x7f\xe1\xf9\x17\xb4\xf7\xf1\xc7\x75\ +\x11\xc4\xbf\xef\xf7\x7f\x5f\x1b\x09\x47\x5d\xf8\x62\x06\xcd\xe3\ +\xd7\x76\x91\x21\x18\x68\x69\xb5\xcd\x58\x9b\xa9\xa6\x65\x9a\xb1\ +\x7d\xac\xf6\xb1\xda\xc7\xba\xea\xd8\x8e\xac\xc3\x53\x20\x0d\x40\ +\x3a\x9e\x42\x45\xc9\x29\xd7\x35\xb4\xf6\x3a\x35\x96\xc1\x02\x37\ +\x27\xa7\xee\x22\x84\xa2\xfc\x60\x42\x08\xb0\x6d\x1a\x21\x10\x0d\ +\x07\x08\x95\xe4\x0b\xbf\x43\x8e\xf2\x14\x2e\x3a\x21\x66\xfc\x45\ +\x04\xe0\xa7\x80\xd9\xf4\x91\x8f\x7c\xe4\xaf\x40\xe0\xa4\xc9\xe8\ +\x96\x09\x73\x07\x0f\x1c\x40\xf3\x8f\xeb\x3c\x21\xce\x30\xbf\x66\ +\x60\x00\xcd\xfb\xd4\xed\xf7\x29\xe9\x39\xd6\x7f\x03\x2d\x2d\x42\ +\xad\x58\xaf\x0e\xa3\x57\x33\x79\x95\x15\xa8\x6d\x05\x96\x38\xee\ +\x8c\x1c\x28\x18\xa7\x2e\xe8\x8a\x28\x56\x73\xe5\xe5\x4c\xf4\x80\ +\x88\x40\xfd\x6b\x56\x03\x86\x17\xb9\xa7\x2a\xaf\x84\x80\x8a\x65\ +\xf9\x39\x1f\x8a\xc7\xd4\x20\xcc\xba\x92\x86\x56\xac\x08\x90\xa7\ +\xdc\x76\xe2\xc4\x89\x47\x00\xc6\xf2\xcf\x2d\x00\x24\xd7\xf5\xc5\ +\x2f\x7e\xf1\xb3\x84\xbb\x5b\x08\x2f\x36\xc1\x39\x41\x48\x7a\xfc\ +\x89\x27\x34\x06\xd2\xbf\xfb\x77\xef\xd1\xda\xa1\x15\xea\x86\xf9\ +\x54\x44\xea\x92\x8f\xe4\x25\x2e\x11\xbe\x3a\xcc\x59\x26\x1a\x10\ +\x82\x40\xcb\x57\x6a\xfe\xaa\x31\x68\xb4\xe6\xba\xc4\xf7\x11\xad\ +\xba\x79\x8f\xfa\xd6\xae\x55\x1f\xbe\xde\x47\xa8\xeb\xdf\xb8\x56\ +\xf1\x35\xbd\x0a\xf7\xf4\x6b\xd5\x75\x5b\xd4\xbf\xe1\x06\x0d\x6e\ +\xde\xac\x9e\xd1\x51\x2d\x9c\x1a\x57\xdf\x48\x9f\x16\x16\x27\x14\ +\xab\x53\x64\x95\x5d\x35\x89\x4e\x01\x39\x0a\xa6\x92\xaa\x01\x9e\ +\x41\x04\xd1\xc3\x07\x2b\xf0\xbe\xf7\xbd\xef\x3d\x2d\xa9\x71\x8d\ +\xa5\xeb\xda\x4f\xf0\x81\x07\x1e\x78\x13\x7e\xff\x1e\xc2\x9d\xcd\ +\xe3\xa7\x88\xc9\xa0\xaa\x8e\x1e\x79\x59\xb7\xec\xd9\xad\x75\xc3\ +\xc3\x4a\x4b\x84\x38\xc1\x78\x40\x41\x98\x1b\x20\x16\xa7\x07\xfb\ +\x5b\x0c\x37\x5a\xc4\xf1\x15\x82\xb8\x96\x12\x84\xcc\x55\x37\xed\ +\x91\x83\xfb\xa8\x69\xdc\xe4\xea\xcc\xc4\xf1\xd7\x55\x27\x19\x8a\ +\x45\xc3\xdc\x1f\x30\x67\x3a\xff\xc9\x2b\x57\x14\x4b\x74\x6b\x64\ +\xeb\xf5\x44\x08\xbf\xe2\xc2\x32\x4c\x74\xc0\x3a\x6b\x27\x4e\xca\ +\x9b\x5f\xd0\x0c\x19\x29\x25\xb7\xe0\xe5\x81\x0f\x7e\xf0\x83\x9b\ +\xcd\x04\x3f\x4b\x00\x0e\xda\xcf\x50\xca\xfe\x21\x26\x18\xb0\xf1\ +\x9e\xd4\x76\xec\xe8\x98\x8e\x1c\x3a\xa4\x34\xfe\x75\xeb\xce\x5d\ +\x4a\x35\x05\xd8\x11\xaf\xc3\x3e\x28\x24\xc7\x6d\x58\x06\x52\x83\ +\x43\x56\x83\xfc\x55\xc3\x34\x74\x25\xf3\x8d\xd6\xb1\x71\x11\x09\ +\x0d\xaf\xd3\x10\x89\x12\xcc\x9b\x73\x96\x3c\xa8\xf3\x8c\xb8\xbf\ +\xd1\x2c\x2b\x90\xea\x95\xcf\x0a\x51\x10\xff\xb3\xd7\x20\xc6\xfa\ +\x72\x4e\xab\x6f\xbc\x49\xc9\xe1\x5e\x25\x03\xb8\x20\xcf\x08\x57\ +\x75\x4f\x9f\x55\x1d\x41\xd4\xb3\x39\xcd\xce\xcc\xa8\xbb\xbb\x3b\ +\x7a\xeb\xad\xb7\xfe\x91\xa4\xf0\xcf\x12\x40\xe0\x43\x1f\xfa\xd0\ +\x1b\x30\x99\xdb\x0d\xf3\xb5\x72\x19\xb0\x9b\xd0\x91\xc3\x87\x34\ +\x4b\x4e\xff\x4f\xde\x7c\x87\x92\x86\x51\x28\x0e\x85\x78\x9a\xe5\ +\x4b\x56\xe3\xae\x65\x32\x92\x4c\x6a\x68\xcb\x66\x05\x11\x56\xc7\ +\x0a\x3a\xcc\x73\xc0\xf9\x80\x86\x77\x6e\x53\x7a\x68\xa8\xe3\x16\ +\x1d\x21\x5d\x1e\xbd\xf6\x33\x35\xaf\xa6\x68\xba\x5b\xf8\xc8\x35\ +\x56\x64\x05\x56\xab\x2a\x46\x6a\xdd\x7b\xfd\x76\xd2\xeb\x16\x77\ +\x81\x5a\x5d\x4d\xc0\xba\x81\x00\x3c\xb2\xc8\x02\x0a\x34\x25\xf8\ +\xca\x95\x2b\xdf\x73\xdf\x7d\xf7\x6d\x90\xe4\xfc\x54\x01\x50\x8b\ +\x27\xdf\xf6\xb6\xb7\xdd\x4f\x1d\xef\x33\x0f\xe5\xc9\xc0\xc6\x4f\ +\x9e\xd0\x19\xd2\xdb\x35\xc3\x2b\xb5\xb2\x3b\xa3\x64\x87\x79\x16\ +\xe4\x73\x01\xa6\x96\x6a\x34\x73\xfc\x24\x7e\x58\xb1\x4c\x53\xda\ +\xe2\xab\xa4\xc0\x7d\xbd\x57\xb9\x43\x72\x20\xad\xe4\x86\x21\x85\ +\x13\x21\xfb\xbd\x01\x68\x4d\x1d\x79\x45\x2e\xc2\xbe\xc6\x6d\x9a\ +\x8c\x12\xf7\xa6\x25\xe6\x6b\xaa\x7e\xf9\x9a\xd7\x06\x53\x5f\x90\ +\x68\x43\xe1\xd4\xbd\x79\xbb\xc2\x71\x8a\x29\x2c\x2f\x64\xc2\x2d\ +\xb9\x81\x26\xa7\xe4\x52\x8c\x09\x25\x2e\x92\x3d\xd2\xa3\x08\xdd\ +\x7e\xfb\xed\x1f\x35\x6c\xfe\x14\x01\xd8\xa4\x67\xd5\xf0\xf0\xf0\ +\x9b\x6d\xd3\x02\x9a\x45\x92\xe3\xc7\x8f\x2b\x37\x33\xab\x3d\xdb\ +\xb7\x2b\xe1\xb5\x98\x0f\x7b\x6d\x34\xae\xd4\x44\x1b\x0b\x33\x6e\ +\xa8\x92\x5d\xd6\xa5\x23\x47\x54\x5e\x5a\x6a\x23\xbb\xd4\x43\xde\ +\xde\x0b\x36\x38\x8e\x0f\xd7\x58\xad\xae\xf5\x83\x72\x9d\x96\x36\ +\x2b\xa4\xd2\xe7\x5f\x78\x41\x59\xf2\x8a\x2b\x35\xeb\x59\x17\x60\ +\x6c\x0b\xc3\x4f\x7c\x0f\xf6\xad\x92\x17\xc8\x09\x6e\x38\x57\x63\ +\xee\x9a\x82\x31\x4f\x91\x95\x09\xa5\x46\x37\x2a\x3e\x30\xc2\xf7\ +\xa0\x65\xc6\x2f\x59\xc5\x80\x8e\x6a\x5e\xbc\x64\xb1\xa0\x8a\x40\ +\x5c\xce\x01\xea\xef\x06\x13\xd3\x3f\x4d\x00\xa1\xfb\xef\xbf\xff\ +\x1e\xc2\x5e\xcc\xdc\x5c\x06\xfd\x2f\x9e\x3b\xa7\x4b\x50\x17\x68\ +\xba\xb2\xaf\xcf\x32\x1f\x31\xc9\x89\xf5\x41\x34\x58\xc2\x02\xaa\ +\x2c\xca\x6f\x17\x6b\x35\x39\x05\x5e\x2c\x9d\xbf\x60\x90\xdd\x32\ +\x11\x27\x3d\x1d\xdd\xbd\x4b\xc9\x15\x5d\x2a\xe3\xef\x31\xc2\xd4\ +\xf2\xc4\xa4\x2e\xec\xdb\xaf\x6a\xbe\xd0\x36\xfd\x46\x27\x62\x40\ +\xae\x25\xbe\x5b\x6c\xa9\x15\x73\xea\x1e\xdd\x2c\x67\x78\xbd\x6a\ +\xf1\xaa\xea\xe1\x05\x79\xf1\xac\xba\x6e\x5a\xa3\xfe\x37\xbf\x13\ +\xdc\x59\x05\x58\xc2\x38\x40\xe9\x48\x90\xcd\x2a\xad\xe6\x1d\x98\ +\xaf\x9d\x3f\x2f\x1f\xf3\x93\xbe\x1b\x2b\xe8\xff\xd8\xc7\x3e\xf6\ +\x96\x2b\xf9\x0e\x74\x0e\x4c\xbc\x5f\xb7\x6e\xdd\x3f\xb5\xfd\x3a\ +\xc8\x80\xdf\xc4\xd9\x73\xca\xcf\xcd\x69\x23\x05\x89\x61\x3e\x6a\ +\xd2\x52\x99\x2c\xcd\x11\xff\xc1\xb0\xf1\x39\x4f\x35\xbf\x83\x96\ +\x1b\x62\xdd\x36\x7e\x2f\xf2\x5c\x79\x69\x59\x7d\xeb\xd6\xca\x47\ +\x8d\x2f\x01\x58\x2a\x29\xda\xb7\x5a\x0b\x2f\x3d\xa5\xec\x89\x39\ +\xee\xbd\x3a\x3a\x74\xa2\x87\xeb\x95\xe4\x73\x4c\x1e\x11\x56\x80\ +\x46\x49\x61\xfa\xac\x62\x3d\x03\xea\xb9\xee\x06\x35\x86\xd7\xa9\ +\x5e\x29\xda\x7b\xd3\x3c\xeb\x0f\x84\x54\x2f\xcd\x6b\xf9\xcc\x01\ +\xf9\x38\xbe\xaa\xbc\x75\x11\x22\x19\x63\x63\x72\x52\x3e\x5c\xb3\ +\x1a\x29\x8b\x2e\xb4\x46\x46\x46\xee\x91\xf4\xb7\x50\xf5\x4a\x01\ +\xf8\xe8\xeb\xf5\x51\xec\x6c\x43\x00\xb6\x46\x5f\x9a\x9f\xd7\x0c\ +\xc0\xe7\x15\x8a\x1a\x1d\x18\x84\x79\x4f\xe0\x7d\x0b\xf4\xd4\x12\ +\x00\xa7\x14\x2a\x4b\x95\x4c\x42\x3d\x23\x61\x92\x91\x90\xb8\x6c\ +\x85\x20\xa8\x00\x08\x25\xfa\xfb\x59\x5c\x55\x0d\xe2\x7d\x94\x92\ +\x36\x68\xd2\x65\xaa\x44\x0b\x1d\xed\x4c\x11\x8b\x69\x9b\xbd\xcb\ +\xbc\xf4\x06\xca\x05\x25\x82\x43\x6a\x54\x29\x74\x66\x2f\xa8\xd0\ +\x33\xc8\x3c\x2b\x69\x93\x05\x99\x2b\x6d\x05\x40\x6f\x0d\x21\x56\ +\x55\xbc\xf4\x8c\xca\xf3\x17\x98\x2c\x70\x75\xaa\x67\xc0\xb5\x84\ +\x30\x97\xb3\xaa\xd3\x91\x0a\x66\xba\x2c\x18\x92\x22\xdf\x2a\x29\ +\x7e\x8d\x00\xde\xf7\xbe\xf7\xed\xa4\xe7\x96\x32\x75\x7e\x1d\xbf\ +\x5e\x64\xf1\xb9\xf9\x39\x85\x78\xa8\x2f\x95\xb4\xa6\x1f\xb8\x42\ +\xfb\x12\xa3\x44\x4e\x8e\x65\xf4\xd3\xcc\x1c\x1a\x54\xaa\xe6\x80\ +\xcc\x2d\x21\x48\x56\x10\x2d\xcd\x3a\x15\x85\x32\xd7\x59\xbb\x4b\ +\x76\xf7\x90\xae\x26\x61\xfc\xef\x05\xb5\x6c\x05\xd0\x10\x12\xc0\ +\xd7\xc1\x1f\xa7\x2e\xa9\xc6\x5c\x01\x42\x20\x45\xce\xd8\x8f\xd1\ +\xf4\x0d\x4a\xaf\x24\xc4\xca\x69\x27\x57\x2e\x65\xf2\x69\x15\x27\ +\x9e\x43\x18\x01\x6b\x8d\x57\x49\x80\x63\x38\x96\x43\x16\x5b\xa3\ +\x3f\x11\xdb\xb8\xd1\xe2\x55\x32\x99\x1c\x7d\xef\x7b\xdf\xbb\x96\ +\x56\xda\x92\xb9\xab\xe3\x0b\xc1\xcd\x9b\x37\xef\x68\x58\xe0\xf1\ +\x6c\x03\x73\x79\x76\x4e\x55\xe2\x68\x8c\xef\x69\x90\x36\xc8\x1f\ +\xf5\x75\x90\xda\x35\xe4\x5a\x72\x2b\x1c\x67\xb3\x30\x38\x48\xd2\ +\xe2\x5a\xc1\xe2\xfb\x68\xc7\xf8\xb1\xa1\xba\xdc\x26\x85\x4c\x77\ +\x9f\xd5\x78\xc7\xd4\xbd\xcb\x73\xb9\x1d\x74\x87\x60\x3c\x88\x30\ +\x09\x7d\xcc\x63\xae\x63\x05\x7e\xf9\xf2\x21\x95\x4f\x1d\xd0\xc2\ +\xab\x87\x39\xc7\xf9\xa6\xc1\x9e\x25\x15\xce\x3f\xa6\xc2\x1c\xbd\ +\x01\x04\x5f\xcf\x5f\x5b\xf9\xda\x39\xc1\x19\x17\x6b\x0e\x4a\x82\ +\x3f\xdb\x7e\xa7\x48\xba\xd1\x28\xfd\x4a\x0b\x08\x63\x1a\xd7\x99\ +\xf0\x02\x59\xd4\x2c\x90\x50\x08\x41\x24\xda\xa5\x6c\x80\xf3\x72\ +\x98\x54\x90\x73\xd9\xd3\x6c\xde\xdf\x58\x32\xa5\xe9\x9c\xa2\x83\ +\x6b\x94\x3d\xf4\x8c\x2a\x97\x6a\x1d\x3c\xb0\xc5\x4c\x78\x75\x4c\ +\x99\x70\x54\x24\x16\x5a\x9a\x9c\xe0\xba\x07\xe3\xcd\xcb\xe9\xb0\ +\x5b\xad\xd1\xe8\x98\x57\xe0\x62\x45\xd1\xeb\xd7\x60\xe6\x61\x2d\ +\x1e\x3b\xa2\xca\x82\x1f\x86\x5b\xf7\xf8\xfc\x35\x85\xce\x9d\x56\ +\xa3\x56\x51\xd7\xaa\xf5\x98\xfe\xb3\xaa\xcc\x8f\xa9\xb4\x80\x5b\ +\x16\xa5\x7a\xe1\xda\xfe\x07\xcc\xd8\xf4\x98\x57\x4e\x56\x79\x00\ +\x9d\x3d\x0d\x18\xae\x6f\x0b\xa0\x61\x05\x40\xba\x18\xe5\xe4\x68\ +\x5b\x00\x36\x01\x2a\xe7\x73\xf2\xd7\xea\xb6\x3b\x13\x70\xeb\x98\ +\x62\xf8\x1f\x2c\xa8\x3c\xa8\x56\xc0\xdf\x27\x4e\xab\x67\xe3\x0e\ +\xe5\x87\x46\xc9\xc2\x9e\x57\x79\xc1\x33\x8b\x87\x19\x68\x68\xc0\ +\x40\x33\xa1\x2a\x8e\x35\xc0\x2c\x9d\xe2\x46\xa5\x53\x00\x59\x37\ +\xc1\xda\x96\x54\xca\xe4\x94\x19\xb8\x9d\x67\x69\xa2\x5e\xbc\xa0\ +\xfc\xc5\xc6\x55\x40\x19\x8c\x73\x5f\xed\xbb\xf2\x6e\xbd\x59\x95\ +\xc9\xa7\x54\x5e\xac\xa9\x59\x8c\xaa\x3c\x57\x27\xa7\xa8\xf2\xb7\ +\xac\x17\x5d\xbd\x4c\x5c\x5a\x46\x08\xf4\x26\xa9\x8c\xac\x52\x00\ +\xc3\x75\x6d\xe5\xd7\x6d\x82\xcd\xc9\x08\xfe\xdf\xdd\xa9\xc4\xea\ +\xa0\xa6\xcb\x03\x41\xd3\x91\x09\x88\x73\x39\x72\x11\x34\x68\x7c\ +\xfc\x27\xd2\x69\x66\xc4\x4c\x9b\xf4\xec\x12\xe4\xe7\x45\x0d\x6c\ +\xd8\xae\xd2\xf8\x51\x98\x58\xb4\x02\x18\xde\xb3\x4b\x4e\xb7\x2b\ +\x07\x21\x86\x58\x40\x64\xc5\x88\x4a\xaf\xce\x6a\x74\xcf\x1b\x25\ +\xaf\x85\x01\x67\x9e\x79\x56\x7e\xea\xfd\x08\x7d\xbe\xee\x61\x22\ +\x45\x31\xcf\xf5\x9b\x55\xdf\x1c\x63\x0e\x33\x7f\x15\x4d\x2f\x68\ +\xe1\xf4\xb8\x8a\x67\xa6\x34\xe1\xfe\x9d\x32\x83\x39\x84\x44\xb4\ +\x28\x86\x55\x99\xcb\x2b\x10\xa9\xcb\x09\xb3\xf6\x25\x3f\x56\x72\ +\x79\x6d\xd6\x0d\x7d\x75\x97\x90\x5d\xc4\x00\xfa\xad\x1b\xc0\x6b\ +\x7f\xc7\xfa\x2f\x63\x00\xbe\x11\x45\x00\xd6\x02\xdc\x3a\x92\x05\ +\x40\xa8\xeb\x61\xcc\x91\x8b\xf9\x05\x42\x36\x5e\x5f\x4d\xae\x6b\ +\x47\xaf\x8e\x58\x08\x87\x15\x6a\xf4\x10\x5a\x0e\x0f\x0e\x81\xd8\ +\xd6\xcf\x6d\xb8\x13\x0c\xd4\x8b\x59\xeb\x42\x19\xac\x24\x3c\x14\ +\x15\x27\x3b\x58\x80\xe6\x5c\xc5\x46\x42\xea\xd9\x76\x8b\xfc\xa1\ +\x20\xf3\x56\xed\x73\x16\x6b\xcc\x75\x4c\x37\xde\xdf\xa7\x91\x9b\ +\x6e\x26\x5b\xcd\xc0\x64\x5e\xf9\x19\xae\xe5\xfd\x58\x4e\x90\x28\ +\xb0\x48\x32\x86\x9b\x76\xb9\x8a\x64\x58\xcb\x95\x3a\x6a\x97\xe6\ +\x5e\x0d\x1e\x02\x81\x4e\xc8\x8f\x9b\xe1\x2a\x01\x70\x32\x72\xb9\ +\x16\x77\x5b\x80\x17\x96\x14\x89\xf9\x31\xdd\x28\x8b\xd4\x15\x49\ +\xcb\xb5\x82\xf0\x4c\x49\x5a\x5a\xb6\xb1\x21\xdc\x3d\x80\x46\xdb\ +\x80\xe7\x1a\xe1\x34\x31\xfb\x49\xc1\x15\x89\xcb\x0a\x65\x76\xdd\ +\x22\x5f\x2c\xcb\x12\x4a\x24\x31\x45\x25\x56\x39\xca\xec\xbe\x55\ +\x99\xd5\x6b\xdb\x00\x57\x62\xc1\xb8\xa3\x4d\xa6\xda\x64\xc1\xd2\ +\x53\xff\xa6\x75\xd6\x2a\x4a\x53\x92\x9b\x8d\x20\xd8\xba\xaa\x26\ +\xde\x57\x1d\x18\xa4\x14\xee\x62\xed\xc1\xab\x2c\x14\x62\xe4\x79\ +\x9a\xa8\x1d\x01\xc4\x7e\x12\x04\x1d\x4c\xc3\xf1\x0c\x83\xf6\x4a\ +\xd3\x5e\x08\x3a\x52\x18\xb2\xe8\x0f\x98\xd9\x30\xe5\x75\x26\xbe\ +\x3a\xe6\x34\xeb\x46\xca\x06\xa1\xeb\x36\x7d\xc5\x96\xda\xd6\x01\ +\x92\x97\x7d\xf2\xa6\xcf\xab\xb1\x9a\x50\x18\x0a\xab\xff\x86\xdd\ +\xca\x12\x59\x34\x77\xc6\x3c\x49\x65\x78\x17\xf8\xb1\x0d\x2d\x8a\ +\x79\xd0\x7e\x39\xaf\x06\x02\x38\xfd\xa3\xa7\x2c\xd3\xe1\x78\x5c\ +\x83\x37\x5c\x8f\x55\x31\xab\x93\xc5\x22\x82\x6a\xe4\x04\x78\x86\ +\x55\x26\x5a\x79\xf8\x39\x38\x06\xcc\x98\x05\x7b\xf8\x7a\x93\xe7\ +\x9d\x2b\x85\x60\xad\x08\x2b\xef\x84\xe7\x4e\xd2\xd8\x11\x00\x42\ +\xe7\xc3\x85\x76\x3b\xcc\x4f\xa3\x11\x62\x45\x7e\x18\xf0\xe1\x54\ +\x75\xb7\x80\xb6\x42\x52\xbd\x3d\xe7\x55\x42\x68\xb6\x42\x98\x5a\ +\x3e\xe7\x96\x0b\xb8\x90\x09\x93\x56\x8b\x00\x1e\x52\x07\x89\x0b\ +\x53\x17\x94\x1a\x59\x85\x80\x7c\xea\xdd\xb8\x55\x8d\x35\x68\x5c\ +\x20\xbc\x31\x7b\xeb\xaf\x35\x35\x8c\xf6\x4b\x05\xc6\x20\xb1\xbf\ +\x64\x05\x50\xcb\x17\x48\x84\x7a\x94\x59\x13\xa3\x29\x7b\x09\x2c\ +\xc1\xdd\x96\x22\xcc\x5b\x47\x00\xb3\xed\x90\x07\xb9\x0e\x2e\xd4\ +\xb4\x02\xa8\xe6\x6c\xc8\xb2\x82\x11\x14\x08\x87\x6d\xe9\xcd\x77\ +\x53\x17\x94\x0c\xcf\x57\xba\x80\x0b\xff\x95\x8e\x00\x02\xc1\x80\ +\xc2\xc1\x90\x15\x40\xb3\xcc\x12\x17\xa7\xd4\xe0\x38\x94\x34\x3c\ +\xa3\xd5\x2b\xfc\x1f\xe2\x24\xa3\x9f\x3e\x7d\x2c\x69\x05\x51\x5b\ +\x9c\x36\xa6\xd9\xbe\xee\xb6\xcc\xb9\xe8\xd3\xd2\xf1\x83\x68\xc6\ +\x30\x55\x13\x92\xc4\x4d\x70\x2f\x88\x63\x90\xd8\x16\x39\x30\x4b\ +\x31\x55\x2a\xa3\xd5\xcb\xee\x86\xe6\xfd\xa4\xc3\x21\x55\xaa\x13\ +\xe4\x13\x45\x04\xd0\x24\x22\x04\x40\xff\x29\xee\xab\xb5\x75\xd0\ +\xae\x03\x1c\xc1\x2c\x7e\xcf\xd8\xd6\x26\x6b\xf3\x29\x9c\x4c\x5e\ +\x16\x00\xd6\x5e\x96\xe4\x5d\x69\x01\x55\x8a\x85\x2c\x17\xe4\xf0\ +\x2f\x88\xb4\xa2\xd4\xf3\x05\x53\x86\x56\x1c\x55\x2f\x4d\x2a\x0a\ +\x6a\xbb\x4b\x53\x0a\xa7\x43\xaa\x2e\xb9\x1d\xe5\x63\x15\x14\x48\ +\x5d\x52\x33\x19\x55\xbc\xb7\x4f\x75\xb4\x5f\x9e\xba\x88\x00\x0c\ +\x00\x36\x21\xd7\x2c\x02\x01\x38\x2a\x2d\x9e\x52\x61\xc3\x46\xac\ +\x60\xd4\x6a\x85\xa7\xda\xeb\x68\xf9\x37\x44\xec\x9f\x46\x0e\x4d\ +\x0b\x82\xa3\xb7\xdc\x6c\x05\x10\x8c\xfa\x15\x88\xcf\xca\xf5\x16\ +\x50\x42\x59\x71\x94\x51\x9e\xe1\x38\x32\xaf\x6a\x10\x86\xea\x6a\ +\x15\x44\x30\x6e\x4a\x82\x9a\x8d\x6d\x86\xe0\x06\x1e\x3c\x53\x84\ +\x51\x94\x75\xde\x99\xa1\xec\x79\x06\xb7\x63\x01\x4d\x88\x28\xb3\ +\x30\xe9\xb5\x93\x9d\x40\x84\xbc\x9d\xc2\x21\x84\x69\xca\x63\xc2\ +\x19\xfa\x82\x17\x4f\x29\xb3\x69\xbb\xe2\x1b\x57\x28\x71\x5d\x58\ +\xb1\x15\x94\xc6\x2b\xa5\xd4\xfa\xa8\xd2\x3b\x37\x72\x6d\x27\x9a\ +\x0a\xa8\x34\x37\xad\xda\xec\x02\xe6\xd9\xd2\x1e\x02\x80\x18\xb1\ +\x82\xf2\xa5\xa2\x96\x8e\x1e\xe0\xb8\x24\x54\x67\x1b\x9a\x6a\x6b\ +\xbe\x69\xc8\xa5\x09\x33\x8f\xb5\x95\x1c\x2e\x5b\xf4\xc7\xa4\x03\ +\x54\x7a\xa4\xb3\xd5\x29\x3a\x3f\xe4\x23\x7c\x0f\xc5\x68\x84\xa4\ +\x27\x94\x1c\xad\xaa\x6b\x6d\x43\xd1\x6e\x62\xfb\x30\x58\x91\xa0\ +\x44\x4e\x19\x16\x3a\xd6\x60\x5c\x22\x24\x7f\x3c\x81\xe2\xd2\xea\ +\x58\x38\xca\x3e\xcb\xe0\x5e\x69\x01\x15\x5e\x37\x5f\x68\xa7\x8a\ +\x56\x00\x71\x3a\x2d\x61\x80\xca\x71\x72\xaa\x2e\x37\x95\x3b\xfa\ +\x8a\x86\x6e\xbc\x59\xdd\xeb\x37\xca\xb9\x7e\x37\xfe\x99\x67\x81\ +\xb8\x45\x22\x69\xcd\x2b\xc4\xbd\x1e\x0c\x94\x2e\x9e\xc5\x05\x4c\ +\x62\xd2\xb0\x21\xc8\x46\x08\x00\x94\x0f\x7e\x4b\x59\xfa\xea\xb8\ +\x4a\x37\x6c\x53\x6a\x68\x58\xb0\x29\x62\x94\x05\x4e\xdb\xe2\x22\ +\x6f\xaf\x13\x4a\xdd\x52\xc8\x0a\x8e\x05\x83\x17\x75\xc6\x59\xc5\ +\x7a\xa9\x27\xd2\x31\xd6\xd3\x24\xaf\x99\x50\x62\x10\x54\xc7\xdf\ +\xb3\xb1\xba\x92\x83\x8e\x55\x54\xac\xdf\xa3\x36\xc1\xcc\xc9\xf0\ +\xf9\x87\xc9\x1b\xcb\x89\xcb\x47\x63\xc6\x6f\x92\x20\xe6\xe7\x63\ +\x36\x5b\x9c\x66\x68\x5c\x89\x01\xb5\x31\x3e\x6e\xfb\x8f\xfa\x90\ +\x5a\x82\xfa\x3f\xc2\xc3\x4c\x62\x4d\xac\x7c\x3e\xaf\xe9\xe7\x7f\ +\x04\x43\x25\xf9\x9d\x0a\x85\xc9\x08\x4c\x0c\x21\x71\xee\x71\x6c\ +\x1e\x4f\x3c\x9e\x21\xef\x9e\xc5\x8f\x6d\x28\x6d\xbd\xf4\xb4\x16\ +\x00\xd5\x4d\xdd\x40\x9a\x3d\x57\x50\x69\xf2\x02\xf7\x57\xed\x33\ +\x1e\xd4\x74\x49\x9d\x99\xb7\x78\xe1\x04\xe8\x5e\x36\xf7\xd9\x6e\ +\xd1\xf9\x67\x9f\xd3\xf4\xb1\x1f\xab\xb4\x7c\x46\xd1\x01\x3f\x16\ +\x66\xc2\xd5\x8c\x22\xe9\xb8\x42\xa9\xa8\x62\x03\x41\xf5\x6d\x75\ +\xd4\xb3\xc9\x53\xcf\x96\x06\x02\x90\x4d\xd6\x1c\xd7\x47\x04\xf3\ +\xb5\x36\x5c\xa0\x9c\x38\x1d\x67\xe1\x0a\x9d\x4c\xf7\xa5\x97\x5e\ +\x3a\x72\x0d\x08\x3e\xf9\xe4\x93\x87\x79\x97\x56\x32\x37\x38\x94\ +\x9d\x71\x04\x10\xc5\x0a\x8c\x09\x35\x25\xea\x7b\x29\x77\xf8\xa8\ +\xe6\xc7\x0e\x61\xde\x79\x62\xef\x84\x8d\xd9\x96\xbc\x9a\x05\xb7\ +\xfc\xe9\x63\xc4\xe6\x26\xd7\x3d\xcb\x7c\xc7\x05\x3a\x84\x50\xb8\ +\x86\x20\xb0\x1e\x98\xb7\x66\xcf\x09\xc2\x24\xf5\xc1\xf4\x5e\xcd\ +\xef\x7f\xc2\x6a\xd0\xab\x59\x90\x45\x08\x15\x18\x68\xd0\xf1\x09\ +\x71\xef\x12\xe7\x2f\xe2\xe7\x30\x97\x48\x51\x7c\xf5\x70\x2d\x4e\ +\xe1\x14\xa2\x90\xf1\x81\xfc\xed\x30\x58\x43\xf7\x35\xbf\x22\x4e\ +\x00\x1c\x8b\xc9\x0b\x85\x08\xbb\xf4\x12\x4c\x94\x81\x30\xff\x69\ +\xb6\x1b\x9d\xfc\x49\x10\xf4\xf8\x5c\x64\x33\xc3\xab\xd4\x04\xdb\ +\x48\x15\x49\x66\x32\x4a\x50\xe2\xe6\xe9\xa8\xd8\x5c\xda\xe5\xe1\ +\x0b\x35\xcd\x3d\xff\x14\xdd\x9d\x21\xc5\xfa\xfa\x55\x5d\x30\x66\ +\x69\xea\xfd\x10\xe0\x35\xa7\x3a\x55\x57\x2d\x17\x31\xcc\xb6\xa3\ +\x83\xc9\x0f\x60\x1e\x57\x41\x8a\x9c\x73\xad\xc9\xe3\x9b\x30\x58\ +\x80\xa1\x79\x79\x95\x33\xb8\xd8\x51\xac\x62\x99\xe2\x86\x34\x35\ +\xe0\xb4\xdc\x47\x02\xe9\x23\x58\x98\x41\xf5\x79\x70\x61\x49\xa1\ +\xae\x1e\x1a\x17\x71\x14\x94\xa0\x59\x02\x40\xc3\xa4\x70\x51\xb1\ +\x36\x61\x31\x6e\x1d\xed\x57\xc0\x8c\x0a\xd1\x05\x73\xf1\x27\x53\ +\xaa\x74\xa5\x71\xdb\xf5\xca\xb6\x37\x66\xcd\xcf\xcf\x1f\x94\x94\ +\xfd\xc9\x96\x58\x13\x9a\xc7\x0b\x9e\x05\x21\xad\x99\xf8\x31\x9d\ +\xf4\x9a\x35\x0a\xa6\x52\xed\xa6\xa4\xd0\x9c\xa3\xfc\x49\x1a\x25\ +\xfb\x9e\x46\x71\x86\x81\x32\x42\xb8\x00\xd3\x33\xaa\x2d\x2f\x81\ +\x65\xa1\xab\xc2\x97\x07\xb5\xcd\x1f\x42\xe3\x6a\xa0\x41\x97\x89\ +\x2e\xaa\x3a\xbf\x17\xac\xd8\x8b\xc6\x8f\x32\x4f\x56\x45\x84\x0b\ +\xd6\xd8\x8c\xce\x41\x60\xe4\x06\x3c\x5f\x67\xfe\xf3\xcc\x3b\x4b\ +\x68\x0e\xc2\x78\x44\x0e\xc2\xf6\x05\xad\x10\xf0\xeb\x2e\xe6\x8b\ +\xf3\xbd\xdd\xaa\xc9\xe1\xf7\x65\x42\x78\x1d\xed\x93\x70\x05\x33\ +\x19\xa5\xae\xdf\x2a\x5f\x3c\x66\x9b\x21\xa6\xd7\xc1\xde\x81\xc7\ +\x84\x4a\xff\xa1\x9e\x60\xe9\x3b\xdf\xf9\xce\xf7\x30\x91\xaa\xc1\ +\x02\x87\x50\x18\xe7\x0d\x4c\x64\x90\xb4\x36\x16\xb5\x21\x05\xb9\ +\x80\xf2\xd2\xf2\xe1\x63\x5a\x3a\x31\x66\x72\x76\xa8\x26\x37\x3f\ +\xa7\xe5\xb1\x7d\x2a\x4d\x2f\xb0\xc0\xa0\x01\x1c\x8b\x1d\x3c\x70\ +\xd9\xfc\x1b\x90\xcf\xef\xa2\x4d\x63\xf6\x27\x08\xaf\x17\x44\xc5\ +\xc5\xb1\xc9\x14\x49\x6d\x67\xc8\xeb\x0b\x71\xc1\x91\x15\x58\x85\ +\x0c\xaf\x1b\x8c\x49\xf6\x0d\x12\x96\xbb\x15\x80\xe9\x96\x19\xc9\ +\xb6\xcd\x85\xf6\x1d\x5f\x08\x0e\x18\x9b\x30\x8e\xe9\x8b\x42\xc8\ +\x57\xc0\xfc\x3d\x08\xe4\x5f\x0e\xfa\xb4\xfa\xce\x3b\x55\x67\x1d\ +\xed\x0d\x1d\xcb\xff\xf3\xab\x5f\x7d\x54\x92\x7b\x4d\x4f\x50\x2c\ +\x85\xed\x25\x63\x48\xe8\x50\x3c\x1e\xbf\x85\x92\x51\x41\xd0\x33\ +\x45\x27\x25\x4b\x77\x55\x24\x27\xcc\x62\x2b\xad\xdc\xb9\x3a\xfe\ +\xba\x4f\x09\x5c\x21\x94\x4e\x09\x75\x63\xa2\x05\x15\xcf\x03\x82\ +\xe5\x59\xe5\xa7\xd1\x98\x79\x3e\x81\x76\x22\x61\xae\xdb\x82\x04\ +\x90\x42\x33\x69\xa8\x2f\x20\xc0\xc5\x76\x8b\xb9\x04\xb3\x2e\x89\ +\x48\x85\x50\x9b\x27\xf5\xbe\x84\x15\xd4\x5a\xcf\xf8\x4d\x76\x88\ +\x40\x8a\x97\x6b\x14\xdc\xa3\x6c\xdd\x11\x0d\xb5\xdc\xac\x0e\x55\ +\xb8\x37\x8f\xd5\x2c\x04\x14\xc8\x13\x26\x11\x8c\x47\xdc\x0f\x6c\ +\xda\xa0\x24\x2f\x6f\xe7\x0a\x79\xdb\x0d\x62\xd3\xc4\xe3\xf9\x62\ +\x71\xca\x4a\xf2\x5a\x01\xd8\x93\xb3\x7b\xf7\xee\x7d\x84\xf6\xb8\ +\xd9\xdc\xe8\x04\x89\x02\x49\x04\x50\xe4\xbd\xa0\x72\x79\x28\x67\ +\xb5\x5a\x2b\x38\xca\x9d\x9e\xd7\x12\xe7\xfb\xf7\xec\x84\x11\x59\ +\x8d\x37\x1d\x17\x01\xd5\x29\x54\xa6\x68\x5e\x56\x6c\x1c\x0f\x63\ +\xce\x84\x22\x50\x1b\xad\x24\x73\x8a\x0f\x61\x5d\x32\x61\xcf\xb1\ +\x59\x9c\xc7\xc2\xb2\x2f\x5f\xd2\xfc\xcb\x0d\x30\xc6\xa7\x64\x66\ +\xb0\x53\x9e\xd8\x66\x4b\xad\x14\xc6\x5d\x7c\x8a\x90\x03\x78\x80\ +\x26\x21\x02\xa1\x76\xf3\xf7\x10\x08\x2e\xa8\xb2\xd1\x08\xb8\x32\ +\x8b\xf6\x97\x30\xff\x32\x18\x80\xdb\x9e\x25\xc3\xdc\xf0\xcf\xde\ +\xad\xba\xcf\xe9\xec\x55\x74\xbf\xff\xdd\xef\x7e\x05\x26\x4b\xe2\ +\x73\x8d\x00\x3a\x49\xd2\xfe\xfd\xfb\x1f\xc7\x0a\x5e\xd9\xbe\x7d\ +\xfb\x36\xfa\x67\x0a\x00\x84\x5d\xbb\x76\x69\x79\x0e\xf3\x86\xa9\ +\x26\xa4\x86\x30\x59\x72\x83\x53\xa7\xd4\xbd\x69\x2d\x0c\x46\xf0\ +\xd7\x12\x3d\xfe\x57\xb4\x34\x0e\x63\x2d\x03\xb3\xa6\x7f\xfe\x99\ +\xe7\x8c\x55\xab\x7b\xa3\xc7\xcb\x4d\x97\x4c\x2e\x88\xb5\xa0\x79\ +\x00\x8b\x66\x08\x02\x80\xc9\x2c\xe9\x33\x9a\xf3\xc8\x00\x27\x5e\ +\xdc\x7f\xe5\x0e\x26\xee\x97\x46\x76\x01\x8e\xfd\x54\x99\x7d\x30\ +\x69\xe6\x75\x0a\x08\x1d\xa0\x2d\x92\x3c\x65\x6b\xf2\x2f\x32\xd7\ +\x14\x82\xce\x05\x01\xbf\xa8\xf2\x7d\xdd\x8a\xdc\xb2\x5b\x29\xc0\ +\x6f\x1e\xed\x9b\x8d\x1d\x67\x4e\x9f\x7e\xe2\x99\xa7\x9e\x3a\x20\ +\x56\xff\x53\xdf\x0e\x77\xb2\x42\x5e\x8b\xf9\xb6\x6c\xd9\xf2\x16\ +\x3a\xc5\x8e\x49\x8a\x82\x50\x9d\xee\x6a\x93\x56\xb7\x8c\x00\x6c\ +\xda\xea\x90\xa2\xd6\xd0\x68\x17\x3e\x38\x21\x77\xf9\x15\xb0\xa0\ +\x2c\x8c\x11\x80\x74\xac\x69\x63\xe1\x24\x55\x52\x7a\xb5\xa7\xde\ +\x55\xae\x7a\x77\x05\x40\x72\x98\x08\xf9\xb0\x0e\x23\x00\x21\x08\ +\xfc\xff\xac\xa7\xec\xb4\x0f\x30\x75\xae\x69\x3a\xe1\x5d\x60\x90\ +\xa3\x44\xcc\x53\xa8\xa7\xfd\x72\xd4\xb6\xa1\x58\xc3\x32\xda\x9f\ +\x02\x57\x26\xb9\xe7\x22\x20\x59\x00\x24\xfb\x07\x75\xaa\x2f\xa5\ +\x1d\x0f\xfe\xa1\x6a\x91\x90\x49\x7a\x44\x92\x57\xfb\xc6\x23\x8f\ +\x3c\x38\x7e\xf6\xec\x31\x33\xe5\xcf\x7a\x3d\xee\xb2\x0d\x75\x86\ +\x77\x69\xdb\xd9\x6a\xb2\x26\x12\x8d\xb2\x80\x98\xc2\x50\x69\x6e\ +\x16\x90\xa1\x2f\x8f\xd9\xa2\x3d\x00\xad\x81\xc4\x27\x15\x0c\x9d\ +\xc5\xa5\x2b\x80\x95\x09\x18\xd4\x06\xa4\xa6\x80\x34\xcd\x89\xa6\ +\xba\x60\xbe\x67\x65\x83\x66\x87\x0f\x40\x0d\x60\xbe\x41\x9b\x5b\ +\xd8\xac\xa6\x2d\x80\xfa\x82\x47\xb2\xe3\x53\x69\xde\x0a\xa5\xa3\ +\xfd\x4e\x25\x6b\x29\xc1\x5c\xb1\x3e\xb5\xdc\xad\xc1\x89\x3c\x37\ +\xce\x50\xfa\xe2\xd1\xc1\x69\x7c\x3f\x6b\x36\x47\xf4\xea\x04\x09\ +\xd2\xba\x7f\xf7\x51\x45\x79\xf9\xba\x48\x64\x9a\x9b\x9b\x63\x2f\ +\xd3\xfe\xaf\xfd\xcd\xc3\x0f\x3f\x64\xf2\xb9\x9f\x77\x83\x44\x89\ +\x0d\x88\xb3\xec\xb8\x7a\x07\x1b\x0c\xc2\x30\x6f\x22\x01\x42\x88\ +\xab\x44\xf9\xe9\x00\x88\x04\x5d\x5b\x76\xc6\xd3\x15\x16\xd6\x80\ +\x29\x07\x40\x74\x38\x86\xf1\x98\xc7\xf9\xa6\x52\x7d\x9e\xd2\xc3\ +\x4d\xa5\xb7\xf8\x31\x5f\x7c\x33\x12\x82\xa2\x58\x40\xbc\x85\xe0\ +\x4d\x59\x60\x13\x0c\xb9\xcb\x9e\x0a\x0b\x3e\xac\x47\xd7\x7e\x9a\ +\xcc\xdb\x83\x10\x98\xd3\x66\x83\x26\xdd\x5d\xa0\xc4\x9d\x26\xde\ +\xcf\x60\x55\xb9\x30\x80\x99\xd1\x59\xf2\xfd\xf0\xbb\xde\xae\x91\ +\xb7\xbd\x55\xd9\x72\xc9\x68\xde\x00\xdf\xe4\x9f\xfd\xf1\x1f\x7f\ +\x14\x0c\xb8\xe4\x32\xd3\xcf\x2b\x80\x06\x7e\x33\x07\x72\x3a\xec\ +\xc8\xbc\xdd\xb8\x42\x10\x21\x18\x30\x0b\x43\x65\xfa\x73\xbe\x4a\ +\x99\xa2\xa4\xa6\x44\x0f\x9d\xa3\x5e\x13\x8d\xa0\xa0\x6c\x46\x16\ +\xee\xf6\x51\x2c\xf9\x14\x1d\xf6\xa3\x75\x3f\x11\xc1\x68\x3e\x0c\ +\xf3\x09\xf0\x20\x45\x0c\xa7\x34\x05\xc5\x65\x30\xc0\xad\xdb\xf6\ +\x99\x93\x6d\x08\x78\xa4\xd1\x69\x31\xe4\xca\x8f\x2d\x61\xa3\xcc\ +\x99\x49\xca\xbe\x2d\xf2\x2d\xa2\xf1\x59\xfc\x7d\x0e\xca\x86\xb9\ +\x9e\xd6\x85\x44\x46\xb9\x9b\x76\x6b\xcb\x07\xff\x40\x45\x22\xce\ +\x2c\x9a\x27\xb3\x73\xbf\xfd\xcd\xbf\x7d\x60\xec\xd0\xa1\xa7\x8b\ +\x92\xfb\x8b\x6e\x92\x32\xfb\xf4\xcf\xd0\x2e\x5f\xcb\x0b\xc5\x8d\ +\xc6\x15\x82\x26\xb4\x25\x13\xb6\xf8\xa9\xd0\xc5\x4d\xc6\x4b\x8a\ +\x67\xaa\x14\x44\x4d\x2b\x00\x27\xe0\x20\x04\x53\x81\xf9\x18\x61\ +\x3a\x1c\xe0\xd8\x6a\x1d\x4a\xf2\x3d\x0d\xf3\x90\x2f\x81\x2a\x5a\ +\x4d\x10\xe2\x9a\xb5\x82\x00\x56\x13\x2c\x21\x04\x62\x77\x35\x27\ +\xce\x31\x9f\x98\xcb\x41\xd3\xe0\x45\x17\x00\x98\x89\xa0\xf1\x3a\ +\xf9\xfd\x42\x58\x21\x28\x98\x37\xf9\x46\x5a\xe7\x48\x17\x67\xe8\ +\x18\xed\x78\xe0\xe3\xaa\x04\xfc\x2d\xe6\xd9\xd4\xf1\xdc\xd3\xcf\ +\xfc\xf9\xb7\xbe\xf6\x57\x7f\xce\x74\xc5\x7f\xcc\x2e\xb1\x26\x54\ +\x38\x76\xec\xd8\x89\x15\x2b\x56\xec\x21\x22\x0c\x21\x04\x6b\x05\ +\x81\x54\xca\x36\x29\x6b\xe5\x9c\x52\xdd\xe6\x5d\x5e\xcd\x34\x25\ +\x21\x41\x7e\xcc\xd1\x6f\xb2\x33\x98\x07\x94\xc2\x31\x4c\x3e\xc1\ +\xf7\x14\xe7\x93\x5c\x8f\x73\x53\xa8\x95\x83\xd9\x1e\xa3\x6b\xdd\ +\xc9\x71\xc0\x93\x18\x7e\x5e\x47\x10\x29\x1f\x58\x40\x37\x0a\x0a\ +\xd3\x0c\x49\x67\x82\x1a\xec\x0e\x28\x19\x20\x45\x07\xe8\x42\xf8\ +\x7b\xa0\x4c\xc7\x38\xd8\xa3\x13\xfe\x08\x9a\xbf\x49\x3b\x3e\xfe\ +\x31\x55\x10\xfa\x0c\xcc\xa3\x38\xb3\x9f\xe9\xd1\xbf\xfc\x93\x2f\ +\x7c\xb2\x5b\x9a\x5b\xfe\x25\xf6\x09\x7a\x68\x69\xe1\xf8\xf1\xe3\ +\x63\xbc\x36\xbf\x0d\x3c\xe8\x09\x1b\x50\x8c\xc7\xa1\x24\x05\xd3\ +\xb0\xf2\x4b\xa0\x30\xd5\xa1\xdf\xd6\xf6\x08\x41\x62\x0c\x30\xfa\ +\xa1\x90\x80\x3e\x04\x84\x20\xcc\xc8\x79\x35\xfc\x26\x77\x87\xcc\ +\x66\xa7\x06\x63\x83\xb1\x2e\x51\x00\xc1\x36\xd6\xe4\x28\xe9\x49\ +\x5d\x34\x63\xbb\x32\x01\xf5\x76\xc3\x3c\x05\x4f\x97\x2f\xac\x70\ +\x93\x88\x54\x04\x43\xdc\x84\xaa\x80\xcd\x8b\x3c\x1f\x7d\xd7\xbb\ +\xb4\xf9\x5f\xfd\x4b\x15\xb1\x94\xe9\x99\x19\xcb\xfc\xcb\x87\x0f\ +\xbf\xf0\x97\x9f\xff\xc2\xbf\x49\x36\xea\x13\xe7\xe0\xe1\x97\xdd\ +\x29\x4a\x16\xeb\xce\x8c\x8f\x8f\x1f\x23\x2a\x98\x04\xa9\x27\x1c\ +\x89\xd8\x4c\xaf\x19\x89\x53\xa7\xaf\x22\xcb\x4a\xab\x9c\xaf\x90\ +\x81\xd5\x2d\x53\x0c\xb6\x2a\x73\xaa\x50\x05\x43\x2e\x0b\xe0\x84\ +\xd9\xa2\x2b\x15\xb0\x96\x62\x95\xe3\x0a\x54\x6b\x51\xc1\x05\xd8\ +\x1a\x8c\xb8\x50\x09\xcc\x00\xe9\xa2\x50\x02\x9c\x48\xf9\xe8\x4d\ +\x40\xa1\x26\xd6\x57\x8f\x23\xdb\x8c\x26\x7c\x51\x1d\x66\x0d\x9b\ +\x1f\x7c\x50\x43\x77\xdd\xa1\x2c\x51\x69\x6a\x7a\xda\x00\x1e\xbb\ +\x59\x0e\xbf\xf8\xb5\xbf\xf8\xef\xf7\x47\xf2\xd9\xf1\xb3\xac\xfd\ +\x57\xb9\x59\x3a\x82\x05\xdc\xc4\xcf\x61\xfe\x94\x24\x69\x17\xdb\ +\x68\x44\xe5\x68\x37\x48\x85\xca\x00\x62\x7e\x5e\xc5\xf1\x17\x15\ +\x29\x8f\x29\x1d\x98\x57\xa8\x51\x6d\xed\x0a\x35\x8d\x55\xfe\xf9\ +\x9a\x10\xff\x1c\x4b\x9d\xfd\x4e\xed\x37\xc4\xed\x1e\x23\x9e\xd4\ +\x29\x67\xa1\x20\xc2\x0c\xa2\x6d\x46\x2f\x2c\x4c\x4e\x34\xc1\x34\ +\x56\xa6\x17\x71\xd7\x5d\xda\xf8\x9e\x7b\xd5\xc0\x12\x17\xb3\xcb\ +\x76\x57\x3a\x95\xac\x8e\x1c\x3c\xf4\xf8\x5f\x3f\xf4\x95\x8f\x77\ +\x57\x4a\xa7\x8f\x4b\xee\x6b\xb1\x5d\x3e\x44\xc7\x68\x2b\x7b\x08\ +\x3f\xc5\x6f\x05\x7e\x97\x5c\xc1\x61\x03\x92\x22\x21\x80\x09\x33\ +\x8e\x19\x7f\xa6\xa7\x57\x3e\x7d\x08\x3f\x3d\xa5\x1e\x65\x11\x48\ +\x49\x81\x6a\xc3\xee\x23\xf0\xd7\x01\x4b\x5b\x11\x43\xcd\x76\xba\ +\x6b\x81\xc3\x69\x63\x82\x9f\xf3\x86\x60\xda\xe4\xfa\x68\xde\xa3\ +\x08\xba\x58\x71\x75\xae\xe1\xd1\x97\xdc\xa3\x4d\xec\x47\x0e\xb2\ +\x1b\x2d\x47\x42\xb6\x40\x92\xc3\xfe\x3f\xa3\xf9\xc6\x81\x7d\xfb\ +\xfe\xc7\xf7\xfe\xfa\x6f\xfe\xeb\x48\xd3\xbb\x78\x04\x91\xbe\x96\ +\x3f\x98\x08\x40\xc3\x3b\x77\xee\xfc\x83\x37\xbd\xe9\x4d\x0f\x12\ +\x26\x53\xec\x20\x17\x20\xa9\xb0\xc9\xfd\x59\x68\xdc\x41\x61\xc5\ +\x9c\x0a\xaf\x9e\x94\x26\xc7\x15\x9a\xbf\xa4\x1e\x9a\x1b\x09\xf2\ +\xf6\x40\x89\xd4\xb5\x4a\xee\x6e\x84\xc0\x3f\xf1\x8c\x7c\x50\x20\ +\x88\x79\x87\x60\x38\xa2\x1a\xe3\x54\xa9\xaa\x59\xee\xa9\x62\x69\ +\x03\x6f\x78\x83\x46\xd8\x7d\xee\x74\xa5\xf1\xa0\xaa\x96\xb2\x59\ +\x9b\xe1\x4d\x63\xf6\x67\xcf\x9c\x99\x7b\xe6\xc9\x1f\xfc\xa7\xa3\ +\xcf\x3d\xff\xcd\x95\xd4\x73\x07\x25\xef\xf5\xf8\xc9\x8c\x03\xa5\ +\xf9\xdc\x7a\xc7\x1d\x77\x7c\x82\xd7\xcd\x6f\xc6\x25\x7c\x84\x4b\ +\xc5\x63\x31\xbb\x83\x3b\x2c\x29\xee\x0f\x28\xe6\x43\xb3\xe4\xe3\ +\x45\x4c\xb4\x3a\x35\xa9\xe6\xec\x8c\x7c\x30\xa0\x82\x79\x77\x50\ +\xb7\x55\x5e\xc3\x54\x85\xe1\x88\x5c\x00\xd6\x4b\x53\xe3\x0f\xf4\ +\xab\x7f\xcb\x56\xf5\x6e\xdd\x22\x1f\x6e\x46\xd9\xa0\x3c\x6e\x96\ +\xe3\x99\x2c\xcf\xd2\xd4\x10\xd9\xaa\xcb\xa6\xcd\xbf\xfb\xc1\xf7\ +\x1f\xfd\x6f\xde\xe2\xe2\xd1\xf5\xf2\x2a\x3f\x92\x9a\xaf\xf7\x8f\ +\xa6\x82\xd0\x8a\x0d\x1b\x36\xdc\x73\xe3\x8d\x37\xde\xbf\x7e\xfd\ +\xfa\x1b\x00\x4a\xb3\xc9\xda\x6e\x47\x09\xe3\x1a\x21\x63\x15\x50\ +\x14\x0d\x47\x8c\x60\x10\x4a\xc0\x74\x6b\x3b\x11\x83\x63\x87\xeb\ +\xe2\x9a\x82\x41\x46\xbf\x5c\x47\xb6\x86\x2f\x03\x6e\x14\x26\x2a\ +\x96\x4a\xc8\xab\xd0\xc9\xeb\xbd\xd3\xe3\xe3\x2f\x1c\xdc\xf7\xe2\ +\x97\xce\x1d\x1d\x7b\x22\xd3\x6c\x2c\x8d\x4b\x8d\x5f\xe7\xcf\xe6\ +\x1c\x28\x02\x0d\xaf\x5b\xbb\xf6\x2d\x3b\x76\xee\xfc\x17\xb8\xc5\ +\x6e\x04\x11\xc2\x42\xac\x20\x00\x4f\x11\x3d\x14\x0c\xc0\x3c\xcc\ +\xf2\xfb\x20\x2c\x3f\x00\x01\x78\x68\x9f\xff\xd9\xa4\xa8\xe1\x79\ +\x96\xea\x00\x62\x0d\xe6\xcb\x30\x6f\x18\xe7\x17\xa5\x26\xa7\x2f\ +\x4f\x9c\x3f\xff\xdc\xe1\xfd\x07\xbe\x7a\xe1\xd4\xf8\xd3\x51\xcf\ +\x9d\x0f\x49\xb5\x73\xbf\x41\x3f\x9c\x74\xa0\x30\xec\xf4\x26\x62\ +\xb1\x2d\xdb\x77\xee\x7c\xc7\xc8\xe8\xe8\xef\x80\x0f\x1b\x32\xec\ +\xd4\x64\x07\xea\xdf\x0b\x02\x4d\x07\x10\x46\xe7\x5d\x9d\xda\xbb\ +\x37\x08\xb7\xb6\x75\x45\x35\x6a\x4b\xd8\xa5\xc5\xc5\xc2\xfc\xdc\ +\xdc\x31\x36\x6b\x3e\x79\xe4\xc5\x17\xff\x4f\xad\x54\x79\x35\xe8\ +\xd5\x97\x03\xa6\x60\x93\x9a\xbf\xa9\x3f\x9d\x75\xd4\x2a\x0d\xa2\ +\xb0\xd7\x8d\x81\x0f\xaf\xdd\xb0\xfe\xc6\x15\xc3\xc3\xd7\x03\x94\ +\xab\x12\xc9\xd4\xca\x70\x24\x9c\xa6\xf1\x8a\x57\x04\xc3\xdc\x6c\ +\x18\xaf\xd0\xb2\x2a\xc1\xfc\x32\x6d\xab\x0b\xec\x4e\x3f\x37\x39\ +\x31\x71\xf8\xec\xa9\xf1\x83\x5c\x9f\xa6\xfa\xcb\x8a\x3e\xd1\xb2\ +\xe4\xfd\x36\xfe\x78\x9a\xba\x0f\xb7\x97\xc8\xf2\x15\x91\x15\x8c\ +\xc3\xe8\x84\x9a\x9c\xc7\xfc\x3d\x47\xb8\x3d\x90\xc8\xf5\x32\x9b\ +\x54\xcb\xa0\x80\xcd\x08\x0c\xd7\xaf\xf5\x8f\xa8\x9d\xdf\xb0\x5f\ +\xad\x37\xf5\x3a\x7f\xfe\x1f\x5f\xbc\xdd\xe6\x1a\x53\x0c\xc2\x00\ +\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x0d\x06\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\ +\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\ +\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x06\xec\x00\x00\x06\xec\ +\x01\x1e\x75\x38\x35\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\ +\x74\x77\x61\x72\x65\x00\x77\x77\x77\x2e\x69\x6e\x6b\x73\x63\x61\ +\x70\x65\x2e\x6f\x72\x67\x9b\xee\x3c\x1a\x00\x00\x0c\x83\x49\x44\ +\x41\x54\x78\xda\xed\x9b\x5b\x68\x55\xd9\x19\xc7\xd7\x49\x4e\xa2\ +\x26\x26\x1a\xe3\x35\x31\x5e\xc6\x54\xad\x97\x4a\x95\x29\x38\x14\ +\xc4\x22\xb6\xcc\x73\x9f\x2a\xf4\x61\x5e\x7c\x10\xc4\xc2\x0c\x08\ +\x7d\x28\xf8\x54\x4a\x1f\x15\xa4\x4f\xf6\x51\x0a\x52\x90\x4e\x07\ +\x41\x94\xfa\xe0\xfd\xd6\xaa\x03\x5e\xc6\xfb\x35\x51\x63\x2e\x46\ +\xcd\xc5\x7e\xbf\x0d\xbf\x61\xcf\x31\x92\x8c\x1c\x83\xc1\x2c\x58\ +\xec\xbd\xd7\x59\x7b\xad\xef\xfb\x7f\xf7\xb5\x93\xc2\xeb\xd7\xaf\ +\xd3\xc7\xdc\x2a\xa2\x8f\x03\x30\x0e\xc0\x38\x00\xe3\x00\x8c\x03\ +\x30\x0e\xc0\x47\xda\x8a\x1f\x1a\x41\xc7\x8e\x1d\xdb\x53\x5d\x5d\ +\xfd\xb3\x69\xd3\xa6\x7d\xe1\x98\xad\xad\xad\xed\x8f\x95\x95\x95\ +\xf3\x57\xaf\x5e\xfd\x8b\x72\xed\xf7\x41\x24\x42\xdb\xb6\x6d\x5b\ +\x50\x2c\x16\xff\x10\xb7\x9f\xcd\x9e\x3d\xbb\x65\xf2\xe4\xc9\x93\ +\x18\x87\x36\xaf\xb6\x81\x81\x81\xc1\x4b\x97\x2e\xdd\x1a\x1c\x1c\ +\xbc\xd4\xd1\xd1\xf1\xb7\xbd\x7b\xf7\x1e\x1a\xd3\x00\x6c\xd9\xb2\ +\xe5\xb3\xfa\xfa\xfa\xc3\x21\xf5\xaa\x21\x09\x2c\x14\xd2\xdb\xc6\ +\x03\x84\x74\xfd\xfa\xf5\x43\x15\x15\x15\xbf\xd9\xb3\x67\xcf\xab\ +\xb1\x64\x02\x32\xff\xcb\x9a\x9a\x9a\x43\x21\x84\xe2\xcb\x97\x2f\ +\x87\x63\x78\xc8\xb1\x96\x96\x96\xf5\xd7\xae\x5d\xfb\x26\x1e\x7f\ +\x35\x96\x9c\xa0\x0c\xfc\xb3\xbf\xbf\x3f\x13\x42\x00\x91\xaa\xaa\ +\xaa\x52\x98\x02\x3d\xbb\xb7\x3b\x6e\x9f\x38\x71\x62\xc6\x3c\xa0\ +\xd1\x9b\x9a\x9a\xd6\x6f\xd8\xb0\x61\xdd\x98\xd2\x80\xcd\x9b\x37\ +\xff\x39\x98\x69\xec\xeb\xeb\x4b\xcf\x9e\x3d\x4b\x0f\x1e\x3c\x40\ +\xa5\x47\x0a\x5c\x0a\x27\x99\x1a\x1b\x1b\x93\xad\xae\xae\xee\xaf\ +\x71\xf9\x74\xac\x00\x00\xb3\x5f\x04\xf3\x48\x10\xef\x9e\x16\x2d\ +\x5a\x94\xc2\xf9\xa5\xe7\xcf\x9f\x23\x65\xe7\xa4\xce\xce\xce\xd4\ +\xd0\xd0\x90\x31\xfc\xf4\xe9\xd3\x34\x69\xd2\xa4\x74\xfa\xf4\xe9\ +\xf4\xe4\xc9\x93\x44\x0b\xff\x91\x68\x53\xa6\x4c\xf9\xf9\xc6\x8d\ +\x1b\x8b\x07\x0e\x1c\xe8\xff\xe0\x01\xd8\xb4\x69\x53\x75\xb4\xe9\ +\x71\x0b\xc3\x78\xf6\xb4\x6a\xd5\xaa\x34\x61\xc2\x84\x74\xe3\xc6\ +\x8d\x34\x6b\xd6\xac\x74\xea\xd4\xa9\xd4\xda\xda\x9a\xe6\xcf\x9f\ +\x8f\x9d\xc3\x60\xba\x7a\xf5\x6a\x5a\xb8\x70\x61\x3a\x7b\xf6\x6c\ +\xf6\x4e\x77\x77\xb7\xe6\x00\x68\x95\x2f\x5e\xbc\xd8\x14\x4b\xfe\ +\xfd\x83\x88\x02\xdb\xb7\x6f\x6f\x7c\xf4\xe8\xd1\xba\x20\xbc\x3f\ +\x88\x9d\x17\xd2\x5b\x31\x73\xe6\xcc\xdf\xde\xb9\x73\xa7\x2b\x88\ +\x9e\x1c\x63\xd3\x83\xe0\x84\x16\x00\x42\xc4\xf7\x77\xd1\xa2\x4c\ +\x33\x02\xcc\x0c\x84\x5b\xb7\x6e\xed\x0b\x8d\xd9\x4f\x38\x8d\x7e\ +\x34\xd6\xfc\xf7\x89\x13\x27\x1e\xbc\x17\x00\x7e\x1d\x6d\xc5\x8a\ +\x15\x95\xc1\x54\x6d\x30\xd3\x7a\xe6\xcc\x99\xdf\xaf\x59\xb3\xa6\ +\x39\x18\x7d\x10\xd2\x68\xba\x70\xe1\x42\xed\xb2\x65\xcb\xd2\xdd\ +\xbb\x77\xd3\xd4\xa9\x53\x53\x57\x57\x57\x7a\xfc\xf8\x71\x46\x6c\ +\x84\xad\xc4\xbe\xd8\x3e\x12\x0c\xa0\x90\xa8\x9e\x7e\xc4\x0d\x4d\ +\x61\x1d\x1c\x28\x66\xc3\xfd\xe5\xcb\x97\xf1\x07\x98\x13\xfb\xbc\ +\x0e\xad\xba\x1c\x4e\xf4\x1f\x3d\x3d\x3d\xff\xda\xbf\x7f\xff\x89\ +\x98\x33\x38\x62\x00\x76\xec\xd8\xb1\xf4\xe6\xcd\x9b\x5f\xc5\x6d\ +\xcb\xe2\xc5\x8b\x6f\xd6\xd6\xd6\xd6\x04\xa1\x8b\x7a\x7b\x7b\x5b\ +\xcf\x9f\x3f\xdf\xc8\x26\xa8\x24\x92\x84\x51\x18\xc0\x63\xf3\x8c\ +\x6d\xbf\x7a\xf5\xca\xae\x27\x77\x69\xa4\xce\x38\x44\xd2\x99\xcf\ +\x18\x4c\x0c\x1b\x0e\x01\x2d\x68\x51\x0b\x78\x3f\x63\xd8\xe7\x90\ +\x7a\x8a\xe8\x82\xf9\x00\x3e\x7e\x22\xdb\x3b\xe8\xee\x6c\x6f\x6f\ +\xff\x26\xf6\xfd\x32\xe6\xdc\x1e\x12\x80\xdd\xbb\x77\xa3\x8b\xbf\ +\x7b\xf8\xf0\xe1\x5f\x8e\x1f\x3f\x3e\x3b\xd4\x88\x97\x0d\x37\x10\ +\x08\xe1\x79\x06\x91\x1e\x1b\xdb\xdf\x78\x46\x42\x74\x1b\x6b\xe0\ +\xd0\x64\x9e\x3d\x60\x8c\x7b\xae\xf9\x6e\xf3\x3d\xaf\xac\xeb\x95\ +\x0e\x00\x79\xe7\x19\x1a\x09\x08\x00\xc5\xfa\x38\x4f\xfc\x48\xe6\ +\x67\x42\x1b\xae\x1f\x3d\x7a\xf4\x93\x37\x00\xd8\xb5\x6b\x57\x4d\ +\xd8\xd0\xd7\xa1\xaa\xeb\x62\x92\x4c\xb2\x10\x1d\xc6\xd8\x14\xbb\ +\x85\x38\x09\x18\x16\x00\x36\x86\x39\x1b\xce\x0b\x2d\x81\x30\xc6\ +\xed\x23\x01\x80\x2e\x93\x79\x10\x58\xcb\x88\xe0\xef\x87\x0f\x1f\ +\x66\x1f\x98\x56\x08\xdc\xd3\xfb\xc3\x24\xeb\x6f\xdf\xbe\xdd\x5b\ +\xf4\x85\x9d\x3b\x77\xb6\x44\x38\xfa\x36\x54\xb9\x96\xd0\x93\x27\ +\x02\x64\x91\x18\xe3\x61\xf3\x69\xee\xdc\xb9\x29\x5e\x06\x08\x36\ +\x96\x30\x89\xcb\xe6\x00\x60\xe4\xea\x3f\x20\xd6\xe6\xfa\x00\x25\ +\x08\x6a\x80\xfb\x39\xce\x9a\x39\x40\x87\xd4\x00\x3b\xcc\xf1\x1e\ +\xfe\x06\x8d\x20\x7a\x60\x56\x08\x12\x20\x42\xab\x11\x24\xeb\x17\ +\xc3\x17\xfd\x09\x5f\x9d\x01\xb0\x6f\xdf\xbe\xc6\x90\xca\xb5\x28\ +\x32\xaa\x64\x3a\xcf\x3c\x49\xca\xca\x95\x2b\x13\xed\xc8\x91\x23\ +\x20\x9d\x81\x10\x7e\x00\xe9\xe6\x01\xc8\x88\x8e\x82\x86\x8d\x01\ +\x8d\x35\xb2\x4d\x6d\x6a\x14\x8d\xb9\x30\xc7\x1e\xd3\xa7\x4f\xc7\ +\x79\xf1\x9b\x1a\x02\xe1\x43\x81\x24\x20\xa5\x20\xc8\x38\xe0\x2b\ +\x79\xd6\xc0\x0c\xe8\xd6\x0f\xfc\x86\xe3\xfd\x2a\x9e\xf7\x64\x00\ +\xdc\xbb\x77\xef\x3f\x11\x77\xab\x54\x53\x99\xd7\xfe\xc9\xb8\x02\ +\x31\x9c\x48\x46\xa4\xf3\x24\x16\xfb\x82\x10\xcd\x23\x22\x00\x8c\ +\xf2\x2c\x00\xae\x9b\xad\x41\x13\x00\x12\x20\xd6\x46\xa3\xc8\x01\ +\xf2\x4e\x50\xa6\x35\x3d\x9b\x29\x71\xe9\x6f\xac\x8d\x83\xc4\xe1\ +\x42\x07\xeb\xd2\xb6\x6e\xdd\x9a\xdd\x9f\x3b\x77\x0e\x67\x4d\xa4\ +\x40\x0b\x2b\x02\x88\x4f\x8b\x21\xfd\xda\x50\x8d\x9f\xe6\xbd\xac\ +\xc4\xa9\x8a\x84\x29\x50\x43\xa2\x80\x81\x84\x4f\x9e\x3c\xc9\x34\ +\xc6\xd9\x54\x00\x40\x18\x86\x95\x8e\x25\xec\x0f\x34\x80\x36\x6f\ +\xde\x3c\x9c\x2a\x5a\x04\x31\xec\x07\xb8\x86\x34\x9e\x5d\x03\x1a\ +\x74\xb6\xec\x87\x76\x71\xcd\xfb\x09\xe6\xb0\xaf\xeb\x93\x1f\x08\ +\x36\x91\x20\xfb\x7d\xce\x9c\x39\x19\x38\x57\xae\x5c\x31\x5a\x4d\ +\x2b\xc6\x4b\xad\x11\x8f\x0b\xbc\xa8\x63\x73\x41\x91\x9e\x31\x63\ +\x46\xb6\xb0\xa9\xea\xc1\x83\x07\x9d\x87\x8a\xb1\xd1\x1b\x6a\xc9\ +\x06\xda\xbf\x44\x0a\xc4\xf2\xe5\xcb\x49\x65\x31\x27\x18\x05\x54\ +\xcc\x0a\xa2\x19\xd7\x9e\x95\x24\xb4\x20\x41\x34\x0d\x3a\x98\x03\ +\xb3\xa8\x3c\x57\x23\x13\x82\x50\x20\x8c\xab\x45\xf8\x37\xae\xbc\ +\x57\xea\x5c\x0b\xc5\xd8\xa0\x10\x8d\x7c\x9b\x8d\xf3\x5e\x7f\x48\ +\xc6\x68\x10\xc6\x6f\x3c\x03\x00\x0b\x43\x30\x44\xd2\x35\x0d\x43\ +\x9f\xef\x31\x8e\x2f\x21\xa5\x25\x09\x82\x69\xf6\x05\x60\xd6\x40\ +\xc3\xb8\xc2\xb4\x0e\xcf\x7d\xd5\x4a\xf6\x31\x17\xc0\xff\xb0\x26\ +\x6b\x01\x12\x7b\xd2\xa0\x01\x3e\xbc\xd7\x17\xd9\xf3\x0d\x0d\xe0\ +\x65\x88\xd0\x86\xe9\x82\x90\x0f\x7f\x02\x61\x1e\xfe\x86\x5d\x6a\ +\x7f\x02\xa0\x59\xd8\xc8\xed\x2f\x5e\xbc\x08\x68\x48\x1d\x89\x03\ +\x00\x3e\x08\x69\xb2\x2f\x84\xeb\x00\xe9\x32\x8b\xf4\x55\x5b\xe6\ +\x40\x07\x6b\xe0\xf0\x58\x83\x88\xc3\x3c\x0b\x26\x53\xeb\x61\x53\ +\xec\xa2\x2a\xf4\xae\x4d\x2f\x9d\x6b\x10\x85\xa4\x4a\xd3\x56\x9c\ +\x1c\x0c\x10\x26\x91\x0c\x73\xd0\x06\x00\x83\x01\x1c\x14\x6b\xe1\ +\xb1\xd1\x1e\xf3\x07\x01\x61\x5d\x68\x45\x73\xb8\x47\x0b\x99\x03\ +\xe3\x80\x00\xf3\xbc\x8b\x43\x25\x04\x1a\xc5\xb8\xda\x87\x01\xa0\ +\x4c\x0d\xc2\x60\xc0\x06\x51\x48\x18\x55\x85\x50\x7d\x47\x14\x46\ +\x5c\x61\x1c\x8d\xc1\x31\xf2\x1e\x0c\xb3\x06\x0c\x41\x1b\x0c\xd2\ +\x01\x4d\xed\x83\x31\xd6\xa5\x94\xc6\x79\x5a\x1a\xb3\x47\x36\x7e\ +\xff\xfe\x7d\x9c\xec\xb0\xf5\x05\x3e\x20\x95\xbb\x69\x32\x46\x15\ +\x98\x8a\x63\x2b\x33\x31\x4d\x0b\x46\xa8\xe0\x32\x82\x97\x2c\x59\ +\x42\xb1\xc4\x19\x5f\x69\x46\x88\xb4\x61\x1e\xa6\x59\x03\x86\x01\ +\x8e\xe8\x01\xd3\x5c\x71\xd0\xac\xc9\x95\x75\x19\xc3\x54\x4c\xb3\ +\x05\xe2\xfd\x6b\x80\x9b\xda\xb0\x47\xc2\x28\x04\x40\xac\x21\x92\ +\x2b\xb6\x8f\x39\x00\x00\xe6\x01\xe1\xe6\x0d\xe6\x21\x26\x2f\xfa\ +\x03\x7d\x92\x76\x0e\x38\x80\x82\xc6\xa8\x25\x8c\x13\xfa\x58\x1f\ +\xad\x1a\xd6\x07\x94\xb3\x11\x26\x21\x02\x50\xb5\x41\xd4\xbf\x94\ +\x79\x54\x17\x82\x91\x26\x7e\x40\x4d\xe4\x1d\x23\x8a\x79\x88\xe9\ +\x30\x73\x60\xd4\xb9\xcc\x43\x5b\xe4\x81\x39\x00\x05\x20\x79\xc7\ +\x6d\x1b\x15\x0d\x30\x03\x63\x63\x25\x44\x83\x59\x01\x80\x09\xa4\ +\x4d\xb9\x8a\xad\x32\x66\x4a\x8c\x64\x35\x15\xcf\x0e\x64\xce\x08\ +\x01\xc8\x98\x0b\x8e\xd5\x04\x88\xf7\xd4\x06\x43\x26\x9a\x85\x1f\ +\x61\x9d\xd1\xd2\x00\xe3\x36\x1d\x86\x70\x4a\x84\xaf\x7c\xa6\x08\ +\xf1\x84\x5d\x3d\x39\x0c\xe8\xd4\xb0\x61\xa3\x00\xa0\x31\x6e\x78\ +\x86\x79\xde\xb1\xe0\xa1\x13\x05\x04\x3e\x9f\x00\xc1\xb4\x7b\x51\ +\x67\x70\xff\x56\x27\x58\x56\x0d\x90\x51\x9a\xea\x8e\x9a\xe7\x55\ +\xd2\x3a\x9d\x28\xc0\xb8\x67\x06\x8c\x31\x17\xa6\xb8\x1a\xfb\xcd\ +\xf4\x90\x3c\xcf\xfa\x05\x8b\x1f\x9a\xd9\xa2\x69\x35\x60\xd0\x0c\ +\x9b\x68\x1c\xfb\x8e\xaa\x06\x68\xab\x4a\xd1\x31\x98\x70\x1e\xfb\ +\x43\x38\x04\xeb\xe1\x71\x60\xf3\x66\x2c\x49\x4d\xd3\x3e\x49\x03\ +\x13\x42\xdd\xbb\x6f\xa3\x29\x30\x6c\x8d\x60\xde\x6f\xea\xab\x84\ +\x87\xca\x1e\xc9\x31\x00\xd5\x7c\xe2\xfd\xfa\x80\x3c\x21\x82\x9b\ +\xaf\xda\x54\x55\x88\xb7\xb4\x05\x00\x41\x50\x0b\xe6\xcf\x5c\x9a\ +\xfa\x6b\x1f\xa7\xe6\xa6\x96\x54\xdd\x96\x85\x4c\xed\x1d\x46\x74\ +\xb6\xac\xc7\x3b\xae\x6f\x04\x92\x27\xfd\x0a\xa6\x88\x29\x00\x40\ +\x59\x35\x60\xd8\x23\x2b\x01\xb0\xa9\x01\xee\x2b\xd1\x8c\xe5\x35\ +\xa1\x50\xf7\x32\x2d\x58\xb4\x34\x15\xeb\xfa\x52\xb1\xba\x39\x75\ +\x90\x2a\xc7\x3b\x66\x99\x9e\x31\xa2\x19\xac\xaf\x29\x5b\xd0\xe5\ +\xa3\x10\xe1\xd0\xcc\xb3\xb4\x55\x94\xd3\x07\xc8\xa8\x04\x20\x95\ +\x52\x60\xf2\x67\x0e\xf9\x7b\x9f\x3d\x23\x7c\xde\xdf\x1e\xcc\x3e\ +\x4a\xb5\x55\xf5\xa9\x3e\xca\xd8\x89\x75\x93\x53\xfd\xec\xc8\x19\ +\x1a\xa6\x38\xcf\xf7\x5c\xc3\xee\xfe\x76\x35\x0d\xb0\xde\x04\xa0\ +\xdc\x3e\x20\x4f\x40\xbe\xa2\xf3\xde\x4c\xd0\xef\x7f\x30\xeb\x5c\ +\xfb\xf7\x31\xbf\xa7\x37\x75\x84\xea\x77\xb5\xb7\xa5\xee\xb6\xf6\ +\xd4\x1b\x6a\x3c\x21\xbe\x9c\x0f\xe6\x34\x8c\xf5\x2c\x99\x05\x54\ +\xe9\x6b\x86\x66\x93\xac\x5b\xda\x8a\x12\x53\x6e\x00\x8c\xdd\x3a\ +\x2d\x9a\xa1\xd1\x33\x02\x55\x9f\x79\x3a\x35\xed\x1b\x6f\x5e\xc5\ +\x07\x8f\xfa\xba\xd4\xf7\xbc\x27\x3d\x8d\x32\xb9\xb3\xa7\x3b\xf5\ +\x15\x99\xfb\x7d\xc5\x0a\x00\xbc\x83\xa7\x57\xd2\xa5\x25\x38\x7b\ +\x50\x83\x70\x1d\x1d\x00\x24\x40\x00\x2c\xb9\x75\x4a\x82\xc2\xbd\ +\x85\x92\xcc\x6b\xe3\xcc\xc9\xca\xe3\xca\x42\x7a\x45\x32\x55\x5d\ +\x91\xba\xba\x3b\x23\xb7\x4e\xa9\xab\xb3\xcb\x13\x6b\x22\x06\x60\ +\x19\xf7\x65\xdc\xc6\x98\xc5\xd2\x90\xad\xa8\x57\x2e\x57\xf3\x24\ +\x57\x42\xcc\xe3\x21\x42\x7f\x03\xb1\x66\x7e\x48\x0e\xdb\xa4\x9b\ +\xfe\xe6\x6d\x96\x10\x56\x37\xb3\x21\x4d\xa8\x9c\x98\xba\x7a\xbb\ +\xd2\xa3\x2b\x0f\x01\x0c\x2d\x61\x4d\xee\xcd\x1a\x3d\x87\x54\xab\ +\xbc\x1f\xdd\x54\x18\x06\xf2\x84\xc0\x84\xa0\xd0\x4c\x7a\x90\x9a\ +\x80\x51\x10\x91\x12\x23\xfd\x7c\xf1\x83\x60\x3c\x95\xce\x67\x82\ +\xda\x33\x8c\x73\x82\xb4\x60\xc1\x02\xcf\x27\x05\xd8\xc4\x89\x44\ +\x69\x74\x8b\x21\x9d\x9a\xcd\xb3\x3a\x80\x80\x60\x6d\x14\xd5\x67\ +\x0c\x66\x01\x8a\xda\x3d\x3e\x5b\x65\xc0\x18\xeb\xad\x05\xb4\x65\ +\x41\xf0\x9c\x32\x3e\xdb\x71\x40\x2b\xd0\xcc\xc9\x3b\x42\xb5\x84\ +\x3d\x47\x4f\x03\x4c\x47\x05\x82\x67\x08\xf1\x68\x8b\x31\x99\xf6\ +\xd0\xd3\x12\x1a\x10\x50\x79\x6b\x04\xab\x41\xdf\xf1\xec\x12\x9a\ +\xa9\x20\x39\x12\xf3\x5c\xd0\x33\x4a\x80\xf5\xd3\x1d\xe6\x05\xf3\ +\xa3\x75\x20\x62\xfd\xaf\xf3\xd3\x0c\x60\xca\x6a\x4d\x02\x21\x1a\ +\x40\xf2\x1f\x47\x19\x83\x21\x8b\x17\xa4\xed\x3c\xc3\x27\x5f\x77\ +\x00\x94\x4a\x12\x06\xd9\x03\xe6\x35\x09\xfd\x0f\x42\xe0\x58\x8c\ +\xdf\x46\xd7\x07\x58\xcf\xeb\x84\x54\x77\x2b\x40\x98\x32\x13\xb4\ +\x74\x36\x1c\xf2\x9b\x45\x8b\x15\x9d\x1f\x52\x61\x44\x8f\x1e\x5f\ +\xaa\xd1\x0e\x4f\x95\x00\x8f\xf7\x33\xa0\x3c\x29\x6a\x6e\x6e\x36\ +\xed\x1d\x55\x1f\x20\xc3\x1e\x45\xeb\x18\x01\x85\x7c\xdc\x83\x4e\ +\xf3\x7a\x01\x31\xf4\xe1\x20\x61\x54\xd3\x00\x00\xde\xa1\xf6\x67\ +\x1d\xd7\xd4\x21\x5a\x4c\xb1\x27\x63\x74\xd6\xc0\xf9\x01\xfa\x88\ +\x00\xe0\x0b\x71\xb9\x01\xc0\xa1\x69\xbf\x66\x6c\x48\x0b\xf5\xd5\ +\x57\xc0\xb8\xde\xde\x52\xd7\x44\x4a\xa6\x4a\x73\x0b\x55\xde\x22\ +\x27\x9f\x0c\x79\x62\x84\xf4\x31\xbb\x11\x29\x6c\x31\x50\xae\x61\ +\xd1\x72\x54\x7f\x36\x88\xb3\x04\x2e\x05\x06\x10\x20\x54\xe7\x05\ +\x13\xac\x81\xdd\x23\x71\xa5\x6a\x6d\x60\x46\x49\xb7\xb6\x27\xf9\ +\xf1\x54\x29\xff\x75\x8a\x77\xf9\xd6\xc0\xbc\xb5\x6b\xd7\x72\xec\ +\xa6\x06\xe9\x24\xf9\x2e\x21\xdd\x00\xde\x87\x06\x34\xf0\xf0\x0e\ +\xcd\x8c\xee\x6d\x5a\x80\x2d\x2a\x39\xbb\xc7\xde\x10\xe7\x87\x0d\ +\x08\xf1\x4b\x8e\xa7\xba\x1e\x8c\x70\xc6\x0f\x53\x00\xc5\xf1\x39\ +\x6b\xc8\x98\xef\x20\x6d\x00\x63\x3d\x2b\x4e\x2a\x40\xd6\xf6\x3d\ +\x40\xf5\xbc\x01\xba\xa0\x01\x20\x6f\x15\xf9\xdb\x5b\xff\x14\xed\ +\xc7\xb6\x7c\xf5\xa5\xbd\xea\xfd\xd9\xc0\xdf\x4a\x9b\x4e\x12\x8f\ +\x0e\x51\x48\x15\xa2\xf3\x69\x33\x34\xd1\x79\x9f\x64\xc7\x46\xe6\ +\x67\x68\x33\x29\xe2\x7d\x4b\x5d\x01\xf8\xee\xbb\xef\x86\x22\x59\ +\x00\xd1\xd0\xb3\x11\x49\xfe\x5b\x8c\x81\x9b\x64\x5a\x6c\xca\x22\ +\xf9\xd8\x9b\xaf\xeb\xed\x2c\x6e\x4d\x0f\x61\x7e\xa8\x90\x28\x8f\ +\xb8\xec\x6e\xea\xb5\xa4\x79\x86\xef\x91\xd8\x70\x69\xb9\x66\x82\ +\xcf\xf0\x0b\xb6\xe7\x83\x23\x31\x57\xfd\xc7\x85\xf8\xfb\x86\x2f\ +\x63\xa8\xad\x18\x52\xea\x08\x6f\x79\x28\x08\x5f\xef\x5f\x58\x04\ +\x83\x32\xe2\x55\xe2\x65\x12\x2f\x3f\x10\x44\x7c\x1b\x8f\xcf\xf2\ +\x69\xae\xcd\xf8\x3e\x82\x26\x38\x95\x01\xe8\xd4\x58\x63\x7a\xd0\ +\x50\x13\x9d\xbf\x57\x80\x3e\xf6\x1b\x88\xf1\xbe\xb8\xbc\x88\xa9\ +\x8f\xc3\x41\x3e\x09\xa0\x7e\x6c\x02\x83\xd0\x3a\xc2\x9c\x2e\x45\ +\x38\xfe\x3a\xd6\xbb\xc0\x29\x7e\x21\xfe\xf6\x7e\x52\x2c\xbc\x3a\ +\x54\xf6\xf3\x40\x77\x59\xfc\xf0\x13\xfe\xcc\x8d\xf9\x79\xc9\x4b\ +\x67\x34\xa0\xbe\x1d\xb6\x74\x24\x88\xf8\x5f\xbc\xdb\x99\xde\x4f\ +\x73\xc3\x42\xb4\xd7\x65\xc8\x4f\x90\x0e\xb4\x12\x1b\xef\x45\x7f\ +\x12\x7f\x71\xfa\x3a\x0b\x81\xf1\xf7\x7d\xd3\x02\xed\x96\x60\x66\ +\x6e\x3c\x83\x7e\x7d\x00\x41\xfd\xca\xef\x48\xb2\x10\x9d\x7b\xfa\ +\x60\xdc\xb3\x50\x7b\xcc\xb9\x16\xd7\xa7\x69\x6c\x34\x40\xec\x23\ +\x68\x04\xe3\x7d\x0e\x9a\x03\x00\x42\x15\x99\x6c\xf4\x9a\xe8\x18\ +\xa2\xfa\xeb\xb5\x40\x67\x21\x54\x07\x7f\x44\x07\xc5\x34\x86\xdb\ +\xf8\xbf\xce\xa6\x34\xfe\x5f\x63\xe3\x00\x8c\x03\xf0\x11\xb7\xff\ +\x03\x7f\x19\x0a\xe4\xd7\x62\x63\xda\x00\x00\x00\x00\x49\x45\x4e\ +\x44\xae\x42\x60\x82\ +\x00\x00\x15\x14\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\ +\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\ +\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x06\xec\x00\x00\x06\xec\ +\x01\x1e\x75\x38\x35\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\ +\x74\x77\x61\x72\x65\x00\x77\x77\x77\x2e\x69\x6e\x6b\x73\x63\x61\ +\x70\x65\x2e\x6f\x72\x67\x9b\xee\x3c\x1a\x00\x00\x14\x91\x49\x44\ +\x41\x54\x78\xda\xe5\x5b\x79\x8c\x64\xc5\x7d\xfe\xbd\xa3\x8f\xe9\ +\xee\x39\x76\xa6\x97\xdd\xb9\x96\x3d\x66\x61\xef\x05\x61\x6c\xae\ +\xa0\x38\xb6\x20\x4e\x2c\x22\x27\x32\x09\x92\x0f\x14\x20\xc6\x81\ +\x18\x84\x92\x08\x59\x8a\x30\x7f\x18\x04\x09\xe0\xf8\x08\x47\x24\ +\xa2\x24\x76\x14\x9b\x80\xf3\x4f\x0e\x27\x86\x80\xc3\x61\x60\x31\ +\xe6\xb0\x21\xbb\xec\xb2\xf7\xce\xf4\x4c\xcf\xf4\xdd\xfd\xae\xaa\ +\x7c\xbf\x7a\x5d\xf3\xfa\x98\x49\xef\xb4\x90\x65\x29\x65\x7d\x54\ +\xbd\x7a\x47\xd7\xf7\xbb\xab\x66\x6d\x48\x29\xe9\xff\x73\xb3\xe9\ +\x97\xb8\xbd\x74\xed\xb5\x03\x9e\xeb\x66\x09\xf0\x84\x18\x23\xe9\ +\x67\xa5\x2f\xb3\x42\x88\xac\x14\x18\x63\x4e\x04\x22\x2d\xfd\xe0\ +\xdf\x7f\xf3\x95\x57\xfe\x8a\xfa\x68\xbf\x30\x0b\x78\xef\x4b\x5f\ +\x4a\x54\x3d\x2f\xeb\x48\x37\x6b\xf8\x41\x96\x04\x88\x04\x04\x02\ +\x41\x56\x92\xc8\x52\x20\x43\x52\x52\x8c\xc9\x40\xe0\x9e\x60\x82\ +\x29\x89\x87\x70\x4d\x18\x87\x08\x02\x12\xd1\xb8\xd9\x8b\xc6\x46\ +\x21\x86\x2e\x3a\x70\xc0\xfb\x85\x58\xc0\xcf\xef\xbe\x3b\x6e\xd5\ +\x6a\x59\xd7\xf3\xc6\x4c\xc3\xc8\x0a\x62\x12\x06\x2f\x18\x3d\x8d\ +\x19\x22\xc8\x0a\x49\x59\x92\x4c\x42\x86\x7d\x20\xd3\x20\x47\x06\ +\x6e\xa0\x03\xd0\xf3\x80\x00\x26\x21\x19\x12\x64\x00\xdc\x23\xd9\ +\x84\x7a\xae\x1d\xb4\x0c\xd2\x73\xc9\x63\x52\xee\xbc\x88\xe8\xcd\ +\x0f\x44\x00\xef\xdc\x79\xe7\xed\xe5\xb8\xbd\x29\x79\xe2\xe4\x88\ +\xb1\x6e\x24\x26\x0d\xca\x1a\x64\x8c\x11\x48\x12\x49\x80\x06\x7d\ +\xe2\x26\xa1\x38\xee\x42\x32\x7a\x61\x22\xec\x43\xed\xf0\x98\xfb\ +\xe6\x75\x04\xb9\x32\xa4\x86\x88\xde\xd7\x08\xaf\x43\x88\xf6\xdf\ +\x34\xa4\x7f\x01\x7d\x10\x02\x78\xec\xc2\x0b\xbf\x72\xc5\x95\x97\ +\xdf\xe5\x98\x43\x94\x1a\x18\xa0\x40\x88\x90\xaa\xc1\xff\x55\xff\ +\xa1\x50\xf4\x7a\x28\xc3\x61\xa4\x9d\x88\x74\x34\x56\xef\x5a\xa9\ +\x34\x05\x8d\x3a\x5c\x99\xcd\xda\x65\x33\x50\x30\x63\x36\xe6\x1b\ +\xe1\xb5\xd0\xc4\xf1\x46\x32\x41\xa4\x85\x55\xa9\xb4\x0b\xa3\xc3\ +\x2a\x84\x30\x2e\x30\x0c\xe3\xef\x25\x5a\x5f\x02\x30\xd0\xee\x98\ +\x9e\x4e\xce\x0c\x0f\xdf\x5e\x2f\x95\xa9\x54\x2c\x53\x76\x7c\x9c\ +\xfc\x72\x89\xc8\x34\x69\xb5\x66\x26\x12\x24\xea\xf5\x48\x10\xe1\ +\xe2\x99\x8c\xd6\x54\x48\xcc\x60\x01\x0c\xa0\xc7\x3b\x98\x0b\x6a\ +\xfc\xb2\xa5\xe6\xfc\x5a\x83\xac\xc1\x21\xf4\x35\xb2\x86\x06\xc9\ +\xcd\xcd\x13\xa5\x53\xca\xf7\x85\x03\xc1\x60\x5e\x13\xee\xd6\xbe\ +\xb6\x00\xb1\xbf\xa9\xa1\xb5\x0b\x80\xc9\xf3\x72\x3c\xa2\x6d\x41\ +\x10\x0c\xd7\xf0\x83\x85\xa5\x22\xc5\x76\xee\xa4\x5a\x6e\x8e\xcc\ +\x64\x52\x4b\x49\x6b\x5d\x75\xf1\x6c\x96\xbc\x42\x81\x12\x1b\x36\ +\x52\x50\xad\x84\x6b\xf1\x3d\x32\x62\x31\xe2\x4f\x06\x9e\x47\xd6\ +\x40\x4a\x09\xa8\x31\x3f\xaf\x34\xeb\xd7\x41\x36\x99\xc4\x3b\x1b\ +\xc8\xc9\xe5\x48\xb2\x65\xc0\xd2\xbc\x7a\x95\xc8\x32\xc9\xaf\xd6\ +\xc8\x84\x50\x02\xd7\xa3\x00\xe4\xf9\x5d\xe9\xba\x91\xf6\x05\xf7\ +\x1d\xae\x80\x1e\x2a\xda\xcb\x2b\xec\xd7\x05\x0c\x20\x31\x57\xaf\ +\xaf\x9f\x49\xa5\xa8\x86\x1f\x75\xaa\x55\xb2\x86\x47\x28\x60\xe9\ +\xc7\xe2\x78\xa2\xfd\xeb\x12\x30\x2c\x1b\x8b\x74\x48\xb8\x0e\x34\ +\x08\xcd\x2d\x2c\x28\x72\x36\xb4\xe9\x2c\x2e\xc2\xb4\xe3\xea\x9e\ +\xa4\xd0\xff\xb5\x00\xdd\xa5\x25\x08\x6e\x89\x04\x5c\x21\x58\x2a\ +\x34\x4d\xbe\x33\x3e\x04\xaa\x27\xdb\xc2\x37\xbc\xe8\x9e\xd4\x71\ +\xa5\x45\x18\x00\xfe\xb3\xfe\x9b\xdb\xb7\x8f\x43\xf0\xa7\xd6\xe2\ +\x06\x76\x53\xfb\x16\x90\x2e\x04\xc1\x04\x07\xb0\x06\xfc\x31\x33\ +\x98\x21\x7b\xdd\x08\x49\x98\xa7\x1c\x0c\x34\xe9\xb6\xe6\x2c\xcc\ +\x2b\xc2\x0d\x68\xd2\x4a\x24\x95\x86\xdc\x52\x99\x4d\x5b\x49\xab\ +\x7e\xfa\x54\x4b\x1c\x90\x54\x3b\x71\x42\xbb\x84\x26\xda\x41\x5e\ +\x32\xda\xef\x35\x7c\xfd\x8d\x2e\x17\x00\xda\x2c\x63\x90\x88\x03\ +\xe1\xa9\x7e\x2c\xc0\x04\x52\xae\x54\x45\x06\x39\x8e\x4b\xe7\x6c\ +\x9f\x21\xd7\x07\x71\x19\xe6\xdb\x95\x4c\xc0\x87\x95\xe8\x00\x28\ +\x3c\x8f\x47\xa1\x99\x57\xca\xad\x01\x31\x22\x2d\x23\x82\x3a\x4b\ +\x44\x02\x88\xae\x89\xc1\xf9\xde\xf7\x29\xf0\xb9\xf7\xd4\xd8\xc7\ +\x98\x94\xba\x2c\x32\x01\xb8\x5a\x28\x6c\xdc\x93\x58\x0b\xc8\xec\ +\xc3\xdd\x7f\xe9\x57\x00\x31\x43\xca\x14\x2f\xd2\x81\xcf\x4d\xcf\ +\x6c\xa3\xea\x7c\x8e\xcc\x78\x3c\x5c\x54\x77\xd3\xe4\xa3\x6c\xa0\ +\x53\x22\xe9\x34\x18\x09\x81\x05\x20\x02\xc1\x71\x21\x04\x2f\x1a\ +\x40\xaf\x82\xac\x61\x59\x80\x0d\x60\x8c\xdf\x34\x6c\x9b\x6c\xcc\ +\xc7\x00\xa4\x60\xf0\xe4\x9e\xf8\x79\x95\x31\x82\x3a\xe0\x38\xe1\ +\x98\xdd\x8c\xb3\x89\x94\xfb\x74\x20\xec\x27\x0d\x9a\xf0\xd1\x18\ +\x2f\xd6\xf3\x7c\x15\x7c\x2a\xe5\x1a\x0d\x20\x1a\x3b\xda\x02\xba\ +\x9a\x04\x09\x90\x0a\x3c\x28\xc1\x67\x2b\x08\xb5\x16\x04\x4c\x46\ +\x91\xb0\x00\xee\xc9\x8e\x21\x63\x58\xb8\xb6\xe0\xd6\x36\x00\xc2\ +\x26\x60\x19\xca\xc7\x03\xfc\x9e\xd0\x84\x18\xd0\xa8\xaf\x2d\xa4\ +\x37\x94\x0b\x58\x3a\x10\xf6\x15\x04\x81\x79\xdf\x2f\xa2\x57\x64\ +\x3c\x04\xb1\x52\xb5\x4e\x83\x08\x84\x8d\xc5\x3c\xd5\x0a\x45\x12\ +\x2c\xa5\x78\x8c\x4d\x4f\x59\x86\x65\xa1\xcf\xc4\xc8\x42\xb0\x8b\ +\xc7\x98\x5c\x1c\x81\x2f\xd4\xa2\x6c\x92\x11\x8a\x90\x43\x3e\x7a\ +\x59\x87\x90\x9a\xe6\xee\xb7\xb9\x40\x38\xa6\x68\xdc\x01\xd9\x1b\ +\x52\x32\x89\xed\x9f\xdb\xb0\x21\x89\xb0\x56\x93\x68\x6b\x2e\x84\ +\xde\xaf\xd7\x17\xf1\x96\xd2\x60\xad\x5c\xa6\x42\x2e\x4f\xe7\x5e\ +\x3c\x4d\xf2\xd4\x29\x1a\xdb\xb5\x8b\xcd\x34\x24\xa5\xc9\xb9\x0e\ +\x08\x42\x73\x24\x55\x40\xf6\xa8\xc5\x0d\x80\xee\x9e\xc9\x74\x8e\ +\x55\xdf\x4d\x3e\x22\x06\x88\xff\x1b\x62\x19\xb1\xcb\xe2\xf1\xdd\ +\x7f\x47\xf4\x6a\x3f\x2e\x20\xab\x41\xe0\xba\x42\xa0\x0b\xd2\xb5\ +\x5a\x9d\x4a\x88\xee\xf6\xc8\x88\xd2\x62\xf5\xd8\x51\x8a\x9a\xe2\ +\xd4\x51\x15\x46\xe4\x69\x45\x41\x88\x96\xba\xbe\x83\xb0\x5c\x51\ +\x00\x6d\xe4\x68\x19\xb2\x1b\x32\x42\xd2\x90\xfb\xa9\x0f\x01\x48\ +\x40\x00\x7e\x2d\x08\x0a\x83\x42\xa4\x51\x0b\xf0\x02\xb8\x16\x50\ +\x5a\x36\x06\x92\xd4\x91\x06\xda\x3b\x29\xb5\x30\x34\xe9\xae\x80\ +\xa8\x02\x2c\x4a\xda\x0a\xfc\x7b\xdd\xd8\xd8\xea\xfb\x85\x8e\x31\ +\x45\xa6\xde\x91\x39\xba\x61\x0a\xc4\x81\x35\x34\xb3\x85\x8d\x0f\ +\x78\x2c\x00\x5d\x0b\xf0\x22\x25\x07\x31\x21\x9b\x5b\xd2\x20\x44\ +\xc0\x10\xcb\x73\x22\xda\x96\x02\x3c\x0e\xaf\x45\x73\x4e\x00\x7c\ +\x5d\x02\xf9\xe9\xcf\x5f\x4f\x57\x3d\xf1\x4f\x3d\x82\x5a\x07\xf9\ +\x88\xb4\x86\x16\x52\x17\x8c\x30\x15\x9a\x6b\xb2\x00\xad\x7d\xc0\ +\xad\x0a\xb1\x14\xd6\x02\x1e\x4d\xef\xdd\x4d\xd5\x85\x79\x15\xf0\ +\x7c\xd1\x91\x09\xb4\xb6\xa3\xb1\x4a\x51\x25\x54\x83\x23\xe7\x9c\ +\xb3\xe2\x26\xe9\x43\xbf\xf3\xdb\x34\x75\xc3\x0d\x61\x4e\xe7\x32\ +\xd9\x30\x75\x31\x13\x91\x6d\x89\x0d\xb4\x7a\xb1\xc4\x58\xd9\x02\ +\xa4\x54\x99\xa0\x1f\x0b\xf0\x00\xa7\xe4\xfb\x0b\x4a\x00\xae\x4b\ +\xe3\x5b\x36\x43\x00\x79\xb2\x32\x19\x12\x5a\xbb\x80\x50\x50\x1a\ +\x6e\x5a\x44\xd8\xdb\xdb\x66\xe8\x23\x7f\xf9\x75\xf2\x38\x40\x0a\ +\xfd\x7c\x84\xc3\xdf\xfd\x2e\xcd\x7e\xff\x29\x32\x6d\x9b\x2b\x47\ +\x6d\x29\xcd\xf7\x57\x44\x37\xf9\xd5\xef\xeb\xc0\x34\x7a\xcf\xc6\ +\x8d\x53\x06\xda\x59\x09\x40\xa2\xb5\xb8\x80\x5b\xf4\xfd\xbc\x4e\ +\x85\x41\xb1\x48\x65\x04\xc2\xf8\xc8\x3a\x6d\xd2\x0a\x32\x22\x17\ +\xb9\x01\xfa\x0b\xef\xb8\x83\x26\x2e\xbb\x8c\xec\x89\xc9\xe5\xc5\ +\x89\x96\xde\x01\xe9\xd2\x1b\x3f\x25\x6e\x89\xb1\x51\x7d\xef\x2c\ +\xd1\xed\x0a\xd1\x39\x41\xd8\x8b\x26\x91\x75\xa6\xb9\xbf\x1f\x0b\ +\x08\x00\x37\x1f\x04\xf3\x4d\x01\xe0\x22\x4f\xc5\x33\x67\x38\x13\ +\x70\x5e\x6f\xd7\xa8\x5e\x8c\xb6\x06\x3c\x9f\xc0\x73\xdc\xce\xbf\ +\xe9\x26\x65\x05\xd1\xf3\x91\x96\x1b\xc7\x4f\x10\xb7\xf4\x94\x12\ +\x92\x16\x60\x6f\xd2\x00\xbb\x4d\x19\xbb\x4f\x07\x75\x48\xd5\x0f\ +\xa8\x5c\xa9\x44\xf7\x23\x22\xaa\x24\xee\x27\x0b\x28\x01\x9c\x74\ +\xdd\x39\x2d\x80\x4a\xa5\x4a\x65\x6c\x63\xed\x4b\x2f\x21\x62\x01\ +\x74\x58\x95\x6c\x19\xc7\xb0\x71\x5a\x78\xe6\x69\x4a\xc2\x5d\x26\ +\x7f\xfd\x13\xf4\xf3\x8d\xe3\x24\x72\xf8\x54\x47\x3d\x50\x9f\x3b\ +\x43\xdc\x52\x9b\x36\x93\xfc\xef\xe7\x95\xf6\x3c\xc7\x51\xd6\x60\ +\x59\x5c\x8c\x1a\x51\x0c\x68\xf1\x7f\xc7\xb2\x69\xc7\xcd\x37\xd3\ +\xf8\xee\xdd\x94\x9a\x9c\xa0\x81\x2d\x5b\xa8\x84\xcd\xd5\x0f\xaf\ +\xba\x5a\x0b\x40\x5b\x00\x7f\xe3\xac\x4b\x62\xb3\x23\x0d\x7a\x67\ +\x1c\x27\x1f\x80\x3f\x2f\x88\x53\x61\x65\x69\x29\xac\x05\x5c\x57\ +\xbb\xc0\x8a\xae\x30\xb8\x65\x2b\x15\x5f\x7f\x8d\xe6\xfe\xfa\x51\ +\xe2\xb6\xeb\xd6\x5b\x61\x05\x4e\x97\x1b\x94\x17\xf2\xaa\x64\x4e\ +\xcf\xcc\x50\x15\x5b\xe1\x7a\x22\x41\x9b\x10\x18\x67\xf0\xfc\xd8\ +\x27\x7e\x83\x8a\xd5\x2a\x07\xd3\xb6\xb8\x20\xd6\x8d\xd2\xd5\x88\ +\x1f\x23\xcf\xfd\x90\xde\xfd\xcc\x75\xf4\xda\xaf\x5e\x49\x87\x2e\ +\xff\x08\xd1\xf3\xcf\x61\xc5\x1e\x2f\x3e\x82\x61\xe8\xb3\x01\x73\ +\x0d\x2e\xd0\x96\x09\x9c\x1a\x4a\x62\x5e\x6c\xbd\x56\x23\x1b\x87\ +\x15\x46\x12\xd0\x64\x3b\xd1\x9c\x1f\xde\xbb\x8f\x6a\xef\x1d\xa6\ +\x93\x67\xe6\x68\xe1\x3f\x7e\x40\x93\x57\x5e\x49\xf1\xe9\xe9\x76\ +\x17\x00\x1c\x69\x50\xf9\xf0\x61\x9a\xfa\xd8\xc7\xe8\x92\xfb\xef\ +\xa7\x5f\xf9\xbd\x6b\x69\x6b\xad\x44\x5b\xb7\x6f\xa3\x2b\xee\xbd\ +\x97\x7e\xf7\xc0\x6b\x14\xdb\xb6\x4d\x93\x57\xc2\xf8\xe8\xe3\x8f\ +\x53\xe1\x1f\xbe\x4d\x07\x7e\xf2\x16\xe5\x92\x69\xca\x25\x52\xf4\ +\xe6\xdc\x22\x3d\xff\xe5\x3f\xa3\xa0\x9d\xbc\xb6\x80\x99\xcf\x8c\ +\x8e\xa6\x0c\xb4\xb5\x08\x40\x67\x02\xb7\x2e\x44\x41\xb0\xbf\xc2\ +\x34\x37\x4c\x4f\x51\x0d\xfb\x02\x2b\x91\xe8\xf6\x51\xf6\xfd\xe6\ +\x31\xf5\xe8\x85\x17\xaa\x78\x11\x90\x41\x73\x8f\x3e\x4c\xdc\xf6\ +\xdc\x76\x1b\x9b\x77\x18\x24\x01\xd9\x44\xf5\xd0\x41\xb2\x90\x5a\ +\xe7\x1f\xf9\x16\x1d\x78\xe4\x51\x7a\xfe\xdb\xff\x48\xaf\xdc\x74\ +\x23\x9d\xbe\xe5\x0b\x14\x1f\x1a\xa2\xab\xbf\xf3\x1d\x92\xc3\xc3\ +\xea\xd9\x91\x7d\xfb\x68\xdd\x79\xe7\xd1\xd1\xe7\x7e\x44\x42\xca\ +\x36\x9f\xaf\x5a\xf6\x32\x79\x11\x92\xd7\xb0\xf6\x0d\x0c\xec\x5e\ +\xab\x05\xc8\x65\x0b\x08\x82\x25\xa1\xb6\xc5\xa8\x05\x76\x9c\x4f\ +\x75\x6c\x86\xec\x74\xba\x4d\xf3\x82\xa1\x83\x97\x65\x71\x90\xc4\ +\xf3\xbe\x9a\x3b\xf2\xde\xfb\x94\x7b\xee\x39\x9a\xb8\xe2\x0a\x4a\ +\x6c\xdd\xd6\x6e\xce\x40\xfd\xbd\xf7\x88\x5b\x11\xd6\xe0\x41\x60\ +\x30\x78\x2a\x26\x53\xf4\xda\x7f\x3e\x43\xb3\x4f\x7c\x8f\xe2\x38\ +\x5d\xda\x7c\xcd\x35\xea\xd9\xb1\xcd\xe7\xaa\xa5\x35\x82\xa0\x8d\ +\xbc\x86\xe8\x20\xaf\x91\x20\xda\xdf\x8f\x0b\x78\x80\x53\x0e\x82\ +\xbc\x3e\x18\xd9\x30\x31\x8e\x54\x38\x4f\x71\xf8\xa1\xce\xfd\xdc\ +\xcb\x65\x04\x34\xb4\x79\x33\x39\x88\xfa\xd6\xf9\xe7\xd3\xf0\x47\ +\x7f\x8d\x36\x7f\xf1\x8b\x94\xda\xba\x95\xb8\xed\xbd\xfd\x76\x58\ +\x41\xa3\xcd\x0d\xea\xcd\x7d\x45\x72\x6a\xaa\xad\x62\x74\x0d\x93\ +\x72\x4f\x3e\x41\x68\xec\x42\x6a\xce\x32\x0d\x15\x40\xd3\xbb\xf7\ +\xa8\x5e\x10\xb5\x41\x76\x93\x57\x73\xb1\x30\x13\x9c\x9d\x0b\xb4\ +\xd6\x02\x5a\x00\xcb\xa9\x90\xb7\xc5\x73\x73\x64\x8f\x8e\xf2\x81\ +\xa7\x2e\x75\x23\x60\x91\x23\xf0\xff\x31\x04\xb5\x8b\x2f\xb9\x98\ +\x76\x0a\x97\xb2\x2f\x3c\x4b\xf9\x9b\x7f\x9f\x4a\xaf\x1d\xa0\x89\ +\xcb\x2f\xa7\xd4\x8e\x9d\xad\x6e\x00\x01\x1c\x0b\x53\x21\x22\x79\ +\xe7\x5f\x7e\x4e\x1f\x3c\x48\xaa\x35\x35\x5e\x7b\xe9\x45\x95\x48\ +\x66\xbe\xf0\x07\xe4\x0a\xd1\x45\x94\xd7\x68\x66\x32\x5d\x71\x80\ +\x4c\x53\x95\xc4\xfd\xb8\x80\xbb\x84\x5a\xa0\x55\x00\x95\x85\x05\ +\x95\x09\x60\xe3\x6a\xb1\x11\x42\x52\x59\x14\x3f\x07\xaf\xff\x2c\ +\xfd\xf8\xe1\x47\xe8\x85\x1f\x3c\x4d\xaf\xbc\xf5\x0e\xfd\xf4\x64\ +\x8e\x4e\xdf\x77\x2f\x71\xdb\x87\x02\x89\x33\x82\x7e\xaf\x78\xf2\ +\x64\x28\x80\x6d\x33\x1d\x55\x20\x22\xc8\xba\x31\xe2\xe6\xe7\xe6\ +\xd4\xdc\xc9\xa3\x27\xa8\xf8\xc2\xf3\xb4\xfe\x82\x0b\xe8\xa2\xfb\ +\xef\x23\xc7\xe0\xc0\xef\xa9\x2d\x7b\x1d\x19\x63\xe6\xfa\xeb\xe9\ +\xdc\x5d\x3b\xda\xc8\x03\x4c\x6c\x37\x77\x06\xda\x5a\x04\x10\x00\ +\xde\xac\xeb\xe6\x42\x25\x04\x61\x2d\x80\x54\x68\x8d\x0c\xf3\x2f\ +\x33\xe1\x08\xbc\x78\x32\x68\x74\xcf\x1e\x3a\x8e\xe8\xef\xe1\x73\ +\xa2\xa5\x34\x3e\xfc\xd6\xdb\x54\x7c\xf5\x15\x1a\xbf\xf4\x52\x1a\ +\xdc\xb7\x77\xb9\xe0\xa9\x14\x4a\xe4\xe0\x9b\x53\x57\x5d\x15\x1e\ +\x8c\xa8\x6f\x85\xef\xc5\xd9\xd2\x30\x97\xff\xdb\xbf\x51\xbd\x87\ +\xf5\x1f\xbe\xe5\x66\x72\x20\xb4\xed\x9f\xfe\x34\x7d\xea\xc7\x2f\ +\xd1\x87\x1e\xf8\x73\xda\xf5\xa7\x7f\x42\xd7\x3c\xfb\x5f\x34\x99\ +\x1d\xa1\xf7\x5f\x7e\xb5\xcb\x15\x70\x3d\x72\xe7\xfa\xf5\x9b\xd6\ +\x6a\x01\x02\xf0\x8e\x3b\xce\xac\x3e\x18\xe1\x5a\xa0\xc6\x47\xe4\ +\x99\x41\xf6\x95\x76\x0b\x10\xf0\xff\x6d\x5b\xa9\x7c\xe8\x10\x79\ +\xbe\xaf\x49\x2c\x9b\xb5\x83\xcf\xcf\x7e\xf3\xeb\xc4\xed\xc3\x5f\ +\xbd\x87\x5c\x37\x14\xa0\x4f\x52\xbd\x93\x04\xd9\xf1\x4f\x7e\x92\ +\xaa\xa5\x32\x79\xae\x4b\x55\xa4\xdd\xf3\x6e\xb9\x85\x16\x1e\x7b\ +\x98\x0e\xbe\xfe\xc6\x32\x99\x83\x85\x0a\xfd\xec\xea\x8f\x53\xe9\ +\xbe\xaf\x92\x3c\x7e\x8c\xa6\xf6\xef\xa7\x2d\xd3\x93\xe4\xdf\x73\ +\x37\xbd\xf9\xb5\xaf\x93\x6f\x9a\x7a\xf1\x6d\x41\x71\x5d\x22\xb1\ +\x6f\xad\x7f\x1a\x93\xcd\x2d\x71\xd5\x05\xe2\x52\xa6\x6b\x58\x54\ +\x06\x0b\x75\x0a\x4b\x2a\x15\x7a\x22\x68\x2b\x03\xc7\x90\xfe\xaa\ +\x47\xdf\x57\xd6\x80\xd6\x7e\x26\x80\xf6\xb3\x67\x7f\x44\xd3\x48\ +\x8f\x9c\xca\xf6\xdd\x75\x17\xbd\xf9\x8d\x6f\x90\x84\x4b\x79\x20\ +\x22\x2f\xba\x88\xae\x7c\xe8\x21\xda\x7b\xe3\x8d\x94\x3b\x70\x80\ +\x86\x51\xe1\x89\x27\xbf\x47\x2f\x3e\xf1\x14\xb9\x76\xac\xad\xbc\ +\x3d\x58\xf7\xe8\xc8\x63\x8f\xd3\xc8\xb7\x1e\x26\x5b\x08\x95\x02\ +\x17\xe3\x49\x68\xda\xea\x8a\x0b\x7a\x6c\x87\x99\xe0\x9f\x01\xd9\ +\x4b\x00\xdd\xc5\x10\x6a\x81\xb4\x10\x69\xce\x04\x93\xe7\x9f\x87\ +\x5a\x60\x89\x62\x48\x4f\x75\xc4\x04\xdd\x1a\x8d\x3a\x4d\x5e\xf3\ +\x5b\x34\xff\xfa\xeb\x54\xc4\xbe\x61\xa8\xb9\x17\x90\xa1\x10\x54\ +\xae\xbf\xf0\xa1\xaf\x91\x09\xed\x96\x9f\x7d\x86\x26\x93\x71\xca\ +\xde\x74\x03\xfd\xcf\x93\x4f\x51\xee\xa1\x07\xe8\xc4\x1f\xfd\x21\ +\x65\xb0\x75\x8e\x65\xd2\xe4\x97\x2b\xf4\xf6\x99\x59\xca\xc7\x07\ +\xc8\x67\xf2\x11\x21\x2d\x04\x95\x25\xe6\x70\xbf\x93\x28\xb0\xe2\ +\x1c\x59\x96\xca\x04\x6b\xb6\x80\xa6\x00\xb8\x16\x98\xe4\x6d\xf1\ +\xae\x5d\x3b\x69\xfe\xf8\x49\x8a\x83\xa0\xc0\xde\x80\xdb\x10\x0a\ +\x94\x4b\x60\xae\xe9\xc1\x0c\xc5\x21\xa0\x8f\x3f\xf8\x00\xbd\xfc\ +\x95\xbb\x49\xb6\x1e\x93\xc3\x75\xe6\x6f\xbd\x99\x8e\xc1\x35\x1a\ +\x56\x4c\x11\xf0\x0d\x43\xf5\xa7\xf8\xbe\x95\x20\xca\x17\x49\x02\ +\xdc\x64\x22\x15\x2d\x7e\x05\x82\xd4\x83\x78\xe7\x9c\x85\xb3\x81\ +\x66\x20\x14\x12\x6d\x2d\x16\xe0\x56\x5b\x6a\x81\x61\x90\x3c\x82\ +\xa8\x3c\x9e\x5d\x4f\xf4\xee\x3b\x61\x9e\x7d\xfb\x4d\x3a\xf5\xd9\ +\xeb\xe8\x10\x4c\xdf\x33\x2d\xf2\x2d\x8b\x84\x1d\x6f\x3b\x30\xf4\ +\xd0\x1f\x89\x0d\x10\xd9\xd1\x66\x08\x2d\x1c\xb7\x12\x5b\x85\x24\ +\xad\x4e\x94\x5b\x4f\x4b\x00\xf1\x2d\x9f\x1a\x19\x49\x7f\xbf\x50\ +\x28\xf6\x0a\x82\x51\x2d\x10\x15\x43\x8b\x3a\x13\x70\x2a\x2c\xcf\ +\x87\xa9\xd0\xf0\xc2\x8d\xca\xbc\xe3\xd1\xfb\x20\x37\x8b\x0a\x2e\ +\x1f\x4b\x50\xd1\xb4\x5b\xff\xd5\x46\x74\x4c\xa6\x7b\x29\xdb\x76\ +\x6c\xa2\x63\x8c\x45\x33\x74\x00\xeb\x0e\x6a\x8c\xee\x0a\xb0\xbd\ +\x28\xd2\xcf\x46\x73\x26\x4a\xe2\x3d\x6b\x75\x01\x7d\x30\xb2\x5c\ +\x0b\x38\x5c\x0b\x14\x8b\x64\x73\x7d\xce\xa9\x90\xba\x1b\x18\xb6\ +\x7e\x64\xf5\x71\xb7\x06\x3b\xe7\xba\xdd\xa0\xb7\xd6\xf5\x7c\xd7\ +\xb5\x1d\x8f\x73\x20\x7c\x11\xe8\xe1\x02\x1d\xe7\x02\x8b\x41\x90\ +\xd3\x02\xa8\x54\x6b\x61\x2a\x5c\xb7\x8e\x4c\xbd\xb7\x5f\xa1\xc9\ +\xce\xeb\xd5\x84\xd0\x69\xe2\x9d\xcf\xf7\x70\x83\x68\xae\xb7\x1b\ +\x20\x0e\xb0\x00\x8c\xb5\x58\x80\x00\xbc\x13\xa8\x05\xd0\x87\x9b\ +\x17\xd4\x02\x75\xd4\xfa\x6e\xa9\x44\x16\x6f\x8a\x5c\xb7\x9b\x70\ +\x2f\xad\x1b\xc6\x2a\x82\xe9\xd6\x78\x37\xf1\xfe\x83\x22\x22\x60\ +\x5b\x20\xec\x21\x80\xc8\x0d\x4e\xe3\x60\xc4\x97\xd2\x8f\x49\x69\ +\x73\x2d\xb0\x1e\x1b\x9e\x06\xbb\x01\xb6\xab\x62\x61\xa1\xb7\xf6\ +\x99\x70\xff\x6e\x10\x8d\x7b\xb9\x41\x8f\xe7\x41\x5c\x95\xc4\x3d\ +\x83\xe0\x4a\xbb\x42\x6c\x41\x8b\x3a\x13\x6c\xda\x79\x3e\x55\x51\ +\xbe\x26\xb2\x59\x0e\x34\x5d\x90\x8c\xd6\x6b\xa2\x5e\x41\x6f\xd5\ +\xe0\x26\xa3\xfb\xd1\x35\xa3\xc7\x0e\xb0\x2b\x28\xe2\x1a\x02\x18\ +\xbc\x6d\x62\x62\xf3\x1a\x04\x10\x05\xc2\xba\x10\x8b\xfa\x88\xfc\ +\x5c\xe4\xfa\x2a\x34\x9f\x58\xbf\x5e\x9f\xf9\x77\x47\xeb\xce\xb9\ +\x55\x48\xa9\x7e\x35\x01\x75\x13\x8f\xc6\x2d\xef\x8a\x1e\x31\x80\ +\x5a\x2c\x70\xd0\xb6\xf7\xaf\x49\x00\xda\x02\x50\x0b\x2c\xc1\x6d\ +\x54\x0d\x9f\x42\x55\x57\x99\x9f\x57\x81\x90\x84\x68\x27\xbd\x1a\ +\x71\x4d\xb8\x9d\xd4\x4a\x7d\xf4\xdc\x5a\xac\x81\xe7\x7a\x90\xe7\ +\x16\x37\x0c\x15\x08\x7b\x06\x41\x89\xc6\xc1\x42\x97\xc3\x95\xd6\ +\x73\x81\x7c\x3e\x4c\x85\xd8\x17\x18\x52\xf2\xa2\xd6\x16\x08\xf5\ +\xb8\x67\x36\xe8\x5d\x10\x51\x0f\xad\x77\x36\xcc\xee\x69\x2a\x5b\ +\x9c\x75\x10\x04\xdc\x12\x04\xa0\x8b\x21\xa7\x50\xa0\x7a\xa5\xc2\ +\x16\xa0\xbf\xd4\x3b\x10\x76\x8d\x35\xe9\xde\xd9\xa0\x37\xf1\x6e\ +\x61\xea\xac\x85\x8d\x9c\x82\x0f\x38\xbe\x2f\xc8\x34\xe7\xf8\x09\ +\x6e\x12\xad\xa7\x00\x74\x2d\x50\x68\xad\x05\x2a\x55\xaa\x3b\x0e\ +\x79\xd5\xaa\x3a\x29\x16\x98\xa3\x5e\xda\xd7\x56\xd2\xcb\x12\x7a\ +\xa4\x41\x5d\x56\x2b\x62\xf8\x5d\x0f\xbd\x27\x84\xf4\xd9\x5a\x13\ +\x89\xc0\x1a\x48\x0a\x3b\x95\x96\xf6\xf0\x90\x4c\x8e\x8e\xd1\xe0\ +\xe4\x84\x1c\x9d\xde\x44\x53\xbb\x76\xc8\xbf\xb8\xf3\xcb\xd7\xfd\ +\xdb\xbb\xef\xbe\xdc\xb3\x0e\x58\xf1\x60\xc4\xf3\xe6\x5a\x6b\x01\ +\xe5\x17\x70\x83\x18\x52\xa1\x5c\x5a\xea\x26\xdd\x87\x1b\xb8\x4d\ +\x8d\x79\x00\xf7\x0e\x88\x41\x63\x81\x88\xc7\x03\x23\x91\x10\x46\ +\x26\xc3\xff\x78\x52\x9d\x1d\x0c\x8c\x8f\xcb\xd1\xc9\x49\x63\x64\ +\x7a\xda\x1e\x99\x18\xb7\x6d\x3b\x66\x99\xf8\x9f\x6d\xd9\x14\x8b\ +\xc5\xc8\xb6\x2d\xf4\x71\xe2\xeb\x64\x32\x49\x43\x58\xe7\x79\x93\ +\x93\x15\x08\xa0\xce\x9c\x7a\xd4\x01\xdd\x81\xf0\x78\xa3\x31\x2b\ +\xf0\x8e\xfe\x23\xc9\xe4\xf6\x19\x6a\xa0\x18\x4a\x8e\x8d\x91\x80\ +\x00\x56\x7b\x11\xef\x68\x2d\x69\x73\x64\x0d\x0a\x11\x12\x63\xad\ +\x09\x99\x4a\x49\x2b\x93\x31\x6c\xa4\xd5\x01\x6c\x89\x33\xe3\xe3\ +\xe6\xf0\xf4\x94\x99\xc9\x66\x6d\x32\xd4\xc6\xc2\xe6\xe5\x5a\x96\ +\x45\x71\x45\x0e\x24\xe3\x71\x35\x8e\x27\xb8\x8f\x87\xa4\x63\x98\ +\xb7\x63\xfc\x9c\x7a\x06\x02\x61\x01\xa8\x67\xd2\xa9\x34\xed\x3f\ +\x77\x52\xe9\xad\x67\x29\xbc\xd2\xae\x10\x59\xa0\x02\x12\x15\x14\ +\x43\x19\x95\x0a\x77\xec\xc0\xb6\xf8\xb8\x0a\xa7\x8b\xb5\x5a\xe8\ +\x67\x78\x36\xb0\xac\x40\xc4\x62\x42\x26\x12\x52\x0e\x0c\x48\x99\ +\xce\x20\x58\x8e\xc9\xc4\x86\x73\xcc\xd4\xf8\x46\x63\xdd\xe4\xa4\ +\x3d\x38\x3a\x66\x41\x55\x26\x2f\xce\x34\x94\x43\x92\xc9\x8b\x06\ +\x4c\x1e\x9b\x26\x19\x80\x26\x8c\x7b\x21\x69\xc0\x62\xe0\x1e\xae\ +\x19\xea\x59\x0d\x7d\xe4\x87\x79\x7e\x57\x83\x05\xa4\xe6\x26\x92\ +\x99\x18\x6e\xf7\xda\x0e\xaf\x9e\x0a\xf9\x8f\x24\x49\x21\x32\xae\ +\xe3\xd1\xb6\xa9\x29\xf9\xea\xf1\x13\x1e\xcd\xcc\x48\xfb\xe2\x0f\ +\x1b\xa3\x9b\x36\xd9\x03\x83\x83\x26\x7e\xc8\xd4\x0b\x64\xad\x60\ +\xac\x34\x80\x59\xb2\x15\x19\x73\xf9\xf8\x1b\xd4\x31\x0e\x78\xcc\ +\x8b\x57\xe0\xb5\x99\xfc\x0e\x34\x0c\xe8\x39\x75\xf8\xc9\x82\x37\ +\x00\x7c\x97\x63\x11\xf7\xfc\x0c\x93\x0c\x85\xd8\xfc\x5d\x34\xbe\ +\xd6\xd9\x2c\xdc\xc5\xd6\xeb\x6e\xcc\x94\xa9\x35\x9c\x08\x75\x67\ +\x82\x1a\x8a\xa1\x11\x29\xa7\x38\xf2\x9f\x29\x14\xbc\x89\xcf\x7d\ +\x1e\xe7\x22\x23\x94\x49\xa7\x40\x32\xc1\x0b\x51\x84\x41\x45\xbd\ +\x26\x98\x8c\x8e\xe2\x18\xa3\x0f\x17\x69\x59\xbc\x78\x8c\x2d\x40\ +\x11\x6c\x03\x04\xa2\xc7\x9a\x84\x7a\x3e\x11\x5a\x85\x26\xac\x35\ +\xdd\x9a\xba\x59\x30\x3c\xd7\xf6\x0d\xbe\xae\x17\x8b\x65\xcb\x13\ +\x99\x35\x6c\x87\xa3\x5a\x40\x5b\x40\xa5\x79\x2e\xb0\x1e\x01\xe5\ +\xe4\x9e\x7d\xd6\xa6\xe9\x69\xca\x8e\x8d\x92\xdd\xd4\x34\xb1\x16\ +\x0c\x93\x3b\x6d\xaa\x9a\x44\x44\x8e\x11\x04\xbc\xd0\x30\xa5\x3a\ +\x2e\x6b\x57\x2f\x58\x43\x9b\x34\xa3\x6d\x8e\xdf\xd1\x42\x40\x6b\ +\x8e\xb5\x40\x57\x2e\xf3\xf9\xdb\x8d\x7c\xbe\x4a\xc2\x4f\xb3\x71\ +\xf4\x6b\x01\x2c\x00\xb5\xf3\x09\x3c\x4f\x66\xa6\xa7\x51\x06\x8c\ +\xd0\xf0\xf0\x30\xff\x78\xf3\xbb\xa1\xf6\x74\xbd\x00\x62\x7a\xcc\ +\xe0\x7b\x0a\xda\x2c\xd1\xba\xc9\x47\xd0\x1a\xe6\xbe\x6d\x0c\xa2\ +\xda\x0a\xf8\xdd\xd0\xc4\x9b\xbb\x52\xad\x71\xfd\x8c\x16\x4a\xe5\ +\xf4\xa9\x1a\x1e\x4c\xaf\xc1\x02\xba\x53\x61\xc9\xf7\x95\x00\x6a\ +\xae\x1b\x0c\x25\x93\x76\x22\x9e\x20\x5d\x1b\x60\x31\x6d\x64\xb5\ +\x00\x22\xd2\x91\x70\xb4\x56\x5b\x7d\x94\x7b\x4d\x46\x2f\x5e\x9b\ +\xb4\xe3\x38\xfa\x0f\x20\xda\xf4\xbb\x02\x1d\xe6\x75\x1c\x50\xdf\ +\xd1\xef\xeb\x00\xb9\xf8\xea\x2b\x0d\xc3\xf3\xfa\xb6\x00\xd1\xfc\ +\x17\x23\x73\xfc\xb6\x67\xdb\x42\xfd\xa8\x69\x68\xcd\x6a\xad\x69\ +\x82\xda\x2c\x79\xac\x89\x30\xb4\x50\x34\xda\xde\xd1\x66\xaf\xef\ +\xe9\x6b\xf4\xfa\x5b\x3c\xcf\xdf\x60\x8d\xab\xf9\x0c\x6a\x83\x81\ +\x81\x01\x95\xeb\x13\xcd\x38\xd4\xd9\x1a\xa5\x62\xc3\x39\x72\x78\ +\xc4\xf5\x7c\xd9\x87\x05\x44\xa9\x10\x07\x23\x67\x78\x11\x3e\x56\ +\x8d\x42\x43\x93\xd3\xd2\xd7\x5a\xd4\xda\xd7\x64\x3b\x03\x9b\x16\ +\x4e\x9b\x26\x75\xd3\x04\xb5\xf6\xf4\xb3\x3a\x23\x74\xb6\x72\x3e\ +\xef\xce\xbe\xf3\x4e\x3d\x7f\xf4\xa8\x53\x3a\x79\xc2\xaf\x9e\x99\ +\x95\x41\xa1\x60\x58\x8d\xba\x3d\x20\x45\x7c\xc8\x8e\xa5\x32\xa9\ +\x64\x32\x96\x88\x0f\xbf\x9e\x5b\xfc\xd7\x3e\xb2\x40\x94\x0a\x4f\ +\x39\xce\x82\x90\x92\x3d\x3b\xd0\x8b\x6e\xd5\xa8\x16\x82\xd6\x1a\ +\x34\xd2\xb5\x68\x5c\x6b\xb4\xa5\xaf\xd6\xc6\xef\x71\x2b\xe6\x72\ +\xce\xe9\x23\x47\xea\x0b\x47\x8e\xb8\x85\xe3\xc7\xfd\xf2\xe9\xd3\ +\xd2\x59\x58\x30\xfc\x62\xd1\x36\x1a\x8d\x44\xdc\xf7\x53\xb6\x69\ +\xc6\xf1\x8d\xb8\x0a\x90\x86\x51\x0b\x4c\xa3\xe4\x1a\x0a\x05\x60\ +\x09\xa2\x9c\x43\xd1\x75\xe8\xe9\xd3\xb3\x4f\xbe\x9d\xcf\x1f\xeb\ +\x57\x00\x3a\x13\x34\xea\xbe\x5f\xf2\xa4\x8c\x6b\x72\xda\x84\x5b\ +\xcd\x55\x43\x13\x5d\xa9\x15\x66\x67\x9d\x1c\xc8\x2d\x1d\x3b\xe6\ +\x2c\x1e\x3d\xea\x57\x67\x67\x79\x97\xb9\x4c\x2e\x21\x44\xca\x84\ +\x2c\x08\xc0\xef\x35\x1c\x29\x4b\x7c\x28\x83\x5a\xa4\x58\xc7\xd6\ +\x9c\xff\x0d\x63\x59\x88\x7c\x01\x9b\xb4\x3c\x14\x73\xd4\x75\xe7\ +\x30\x5f\x67\x57\x65\xe8\xcc\x05\xd4\x80\x02\x50\x0c\xe7\xfb\x17\ +\x80\x0b\xd4\x71\x40\x7a\x6c\x7c\x71\x71\x47\x12\x02\xb0\x59\x83\ +\xb6\xdd\x45\x12\xe4\x1a\xb9\x43\x87\xea\x79\x90\xc3\x5f\x7f\x83\ +\x0a\x6b\x0e\xe4\x44\xa9\x14\x53\x9a\x13\x22\xcd\xe4\x02\x64\xd9\ +\x86\x10\x7e\x43\xca\x4a\x93\x9c\x22\x56\xf1\xfd\x7c\x11\xc4\x16\ +\x7c\x3f\x87\x12\x7c\x1e\x3b\xd1\x32\x13\xea\x20\xc7\xf0\x5b\x10\ +\xb4\xf7\x7a\x1c\x3d\xab\xab\xc0\x1e\x02\x58\xb5\x16\x70\x80\xd2\ +\x7b\x8d\xc6\x4b\x9b\x97\x96\xf6\xbe\xf4\xe0\x83\x8b\x89\x7a\xd5\ +\x3c\x35\x9f\xaf\xe1\x80\x54\x82\x9c\x6d\x36\x1a\xc9\x18\x8a\x5f\ +\xfe\x16\x6f\x64\x80\x3a\xff\x59\xad\x2e\x65\xa1\xe6\xfb\x4b\x15\ +\x68\xac\xe8\x79\x0b\x8b\x38\x66\x3f\x89\xcd\xd5\x82\xeb\x96\x34\ +\xa1\x3e\x88\x31\x04\x20\xcf\x06\xdc\xfa\xfe\xbf\xce\x42\x00\x26\ +\x85\xe6\xb8\x11\x52\xda\x7e\xf3\xe4\xe4\x1f\x6f\x4c\x26\x77\xa7\ +\xd2\x29\xff\x8d\xb9\xdc\x4f\xaa\xa8\x0f\x4a\x40\x1e\xc4\x70\x80\ +\x9a\x3b\xe3\xba\x8b\xdd\xa4\x80\xde\xa4\xb8\x17\x8c\x1e\xe4\x28\ +\x1a\x77\xb7\xd5\xc8\xf6\x2b\x00\x2d\x04\x1b\x5d\x1a\x18\x05\x86\ +\x81\x18\x20\xce\x46\x5b\x6b\xd4\x18\x7d\x30\xc4\x3e\x78\x01\x18\ +\xe8\x2c\x26\xde\x84\xa1\x6b\x84\x5f\x2e\x62\xfd\xb7\xff\x05\xc7\ +\xfd\xe7\xdb\x23\x5d\x13\x38\x00\x00\x00\x00\x49\x45\x4e\x44\xae\ +\x42\x60\x82\ +" + +qt_resource_name = b"\ +\x00\x0d\ +\x0b\x34\x2d\xe7\ +\x00\x61\ +\x00\x6b\x00\x72\x00\x65\x00\x67\x00\x61\x00\x74\x00\x6f\x00\x72\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x07\ +\x0e\x95\x57\x87\ +\x00\x6b\ +\x00\x33\x00\x62\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0b\ +\x01\xad\xab\x47\ +\x00\x64\ +\x00\x69\x00\x67\x00\x69\x00\x6b\x00\x61\x00\x6d\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x1a\ +\x08\xdd\xe1\xa7\ +\x00\x61\ +\x00\x63\x00\x63\x00\x65\x00\x73\x00\x73\x00\x6f\x00\x72\x00\x69\x00\x65\x00\x73\x00\x2d\x00\x64\x00\x69\x00\x63\x00\x74\x00\x69\ +\x00\x6f\x00\x6e\x00\x61\x00\x72\x00\x79\x00\x2e\x00\x70\x00\x6e\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x04\x00\x00\x00\x01\ +\x00\x00\x00\x34\x00\x00\x00\x00\x00\x01\x00\x00\x33\x2d\ +\x00\x00\x00\x50\x00\x00\x00\x00\x00\x01\x00\x00\x40\x37\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x00\x20\x00\x00\x00\x00\x00\x01\x00\x00\x13\x0d\ +" + +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() diff --git a/examples/animation/appchooser/digikam.png b/examples/animation/appchooser/digikam.png new file mode 100644 index 0000000000000000000000000000000000000000..9de9fb2f8034a9bae6f4c40ab2d1f713fcfaa08b GIT binary patch literal 3334 zcmV+h4f*nkP)++KL|72mwt<0x!AqAe-5MMmywuUr@wdHu_Z}M40BqT^<+J+w`okghsv!w16w=$q1B7(_ z`t?H<6&1hPvuDq%v19@=|I3=1nnNLk;>(vWhhuoiv6hyW_1CUl`z9WLHI|&94E(dd zzdsW~0FkPys#2H&J-fF%Zl5@DV#Yk6(VLo@)^FIbVcnS0fX$mX|2ddx?Ca}G&z?O? z4<0-~rAG=}3MZKw8yl0YuCDH{artzt006UJ1oKD`@17PdT9m^1rRUF|BW35L&d$!% z(9n=E{PgM5G-=YLbo%t^^yJBtL<|3sXj7(4`T53;8;b`H9O(bx0ob%@Q+2fIaSOwE z_Oxo%sx)E3gmmM^jWlc4taR$ssnpuqn&!`+kDbF{x_b3$TDWjwI(znP_D*+qx8?w7 zl`mer*c40t{ey@C+qZ9TeDvtix*)tih@BVGTQPIy%-`O*bEhkao*ZM-gW!Y~07As~ zchRCuGXl&Egj=_6?F)_BPdJT!G}iq0i4!LtycYm|9c{&m6_vqMZ7|b%=FFMjuUWIE zIT(Eq(rCJH;X>`QWy{jtyLZ#nsZ&!|S66!c_;E&TgssHB*gg^rppdAZe#8w;VI3SO zX2bpE%a`#7m=pWF4z0QzPV^r=Jw5;0zkmOUm@_zH0Cw!yvGnH6n_tCk%i_h0Z`Rh< z)&!x8dV70Y&!0cv$R?;Hl7vwhz+>}_ZNGZ;%C0AOX{63LMADhh7)%Ts4goD_Q44rK zW7y}AdWz_R`2aqCBHKIY?rd*w|0eeRGUnVK5`f*iccY8Hd-(9-UydI?K0DNimkl=% z2;q4Kksce{-*`qsbQ^2n&}5!HV2pdN`EK()udM5p4gh)Q85#))0LA(^Py9&cXF?mU zA3b{XlQ#g^wQE;R*wELZs_SBsOtKIi#@H0Qg*XWq763MeIUCLkErBq`?IQtzE|Yl> zSj&ju?}rZ`W*?YV2;9^A!zAl(-@e^j^o5-}ceX@0`ZiR#me7+Y0%VaG<6-k@?%cU4 zUIqv@mN1FS<^W*i>OUaX=K2672x@@)InJ6nK!?--JIwJO{sxU8dSF%v5+FjW5hUvu z!x#MtU!4K4Z{NPgkjk|vGOA=c&pb)W%9SeiukF`P(7r1K;e`+^Y7BO(Bd@+<(Zo2@|;01_b9Mx)39@=j2uH9eatap`ZY zjf2GDLI>;8wr<^;-Jd&m4rfiIKnp7Zh);_l{n}8CpXR-+#HoseDNsYAfPsWho;=Ak z#@SQ=Kp2LVjwS35G=Mg5-aMQtS_Cod2e^hbo?QbPbhhk=c5%)73Ffe`>ysY{HjyCv zea@UY88}z2TrpZrE5=K$5swSJsAF?Mk)APQMz*l2>cN8torj9C(Hm;X2HL+w3dHi| z%SmN1Cm01(%nG6z*PfLmv>-t=4LXE)Wr)y*>4K0Ce*$41{)Sy@e*&Oc*vRcKUc3lsNF9j-06qw5 zvM+?|0O>M|^i^BtKnH8!@K}S0!#oQnQ|n<H`O4C-H91IX9kqmRt z1^|Nr929HevC$s$2LWMSXhn0lM+=z)$(3~(!&FSO1>*f{ zfScN|N5UusK&&B>E4Gh0008Cz;pPqIAto>S1AUTq4mf~<#;7HX6Z%*mts2$`l(P{g zAp%gfLDavLc~lpIktTjXP2?RTig}3XFmqtkxy(abkCsCcxElM-^pHHy`UQ(0n%SahHDJ&Tn`j*Sj;aP|t4h%^m~bBZLpTKM;c;N| zW-Lif(>_T96GGj)Z=)$NY>i;vZ|bXrhsqwwF#y$k;{E!7JRyRcui8{qh_|!_06|a- z=FeQ3`fDGj=BAcZ-Ij$+?HxvRwyeiHu5SdAC;bYhh$#R-Sv6qTBP#*0sR8aQ(TwFa zp-}fSEm*WP73=y^vAQ{RkSfPJW|^Kbq8Y5ODO=FxqY&ZH%(Jvrl+y>us01LDQeg6D z4*7eZJtKVH-yY09O0`w>sXofsiFK1x{p`pY8m2hU_gus7{&qDDu-*iq+&&;rK)#~$ z-b~Q%e=zG@`}Z-wr#E$k>UXubrS7)&)EjC%A-1&2&ldN0XiV{<9 z0F2!_Et;XxGXhngc{(-i8*g642ao!?)c3q6J&iKCv!^@t6`A{e#R>qtgQr*0r6o9f zP=jzC9RMUi04%w6N`k_@g_6u`U5+nV5@q=JImCk2^+B1xEg0x`40?#J} z*u;rMX>^Mrotn+FI)H#+Z4}jK3}yj}+C4s7WxyEgtp&7YLGYY1KHG6XE6~izJ3_UD zJx5OiOh*NRX9)3Vi!qt@(9;qc5Kwt*1gk;c@$3?ssUSHL^IXs~N`Up#9p(k|qjex+ z{jc-W3}DJ?O#&erK=L0)8G|8<7o_bx!zW*N0F+7+2H6AVH3|I>Lf}}8-$vI5SkLQ( zRCg;tm@*TzbT%CFn?;KiogY$RM2{X{s?iQll>m?TGoU;vYHn^e?HyGgAj2L->lgur zeB6Uh^Lha>^x+_3RMP+e-l6tq9oN($T1>GgV|3QQ`2qTf0N@L8xdFhTX}@M{NDKAV zSHQU5-cr{@N~TJ43sv4CC!Y*?VubWDyAdgDF;K2y(Q;IOHi)wXE(HbK=r%F?*}&gQn@$ps4pB%IqVs7pG|_pVWXDG4XJ|7i;(be90r>8_?}j2- z0MXF15lQ}AjDeeET5QT9`PiGU>+LLVO%GvysE{a+xa@A~wWN85?~&MWX}M;C&+rSj z=Yu0LSN+F@`1^)0W2mhdQtAkAc_;{9?_XF1gEHb(;$;#qKM+KG8;{TOX|B!qK7uAV zl>z9~SYvw7P!pZMSAahD8;J3~xV(s|kHbMe37~##0)x;x!kjKeIQ}};yTB=aA^!G$ zQY^eWRQB^gcUk=K6aLJN`FY7pXEdO`9kz5Ni1=T;+nL@^bHhTk*Ja30kPfsG8}CJb z5`S^}ItzjE_kGg>?UrC>Zajm2eE>oI%I`?B5S@GaVBE7%d(62O*QaT0G(hYlXawVZ z4w?f1LKT^8^qS}xqWbH#KxZLT2Y*Bd#WaT7_`lAkH2z;>;{c2U@DaEF1AiF`6a!T=6GJMlA)Wyy1w(+?vJH5{mL+Sk^|U=}ebU>v-nZMg^E;=zH4+*M z7_fm#%b(BfyPS8v?f)(JwElnpIIrj5S+i!1udA!e*W24`DUnDx)oN9_T+UlqSn!sY zm%R%YE_m5&wkZkvEfzo|67g-_x;3zS_wM-Jci+9Wudi=sG#Xvc`E`E3zt?e`1Qc)b zX*3!ILkMH0TrQs~7K`K4)6@IE{q1j`JaFJZ4WTrQKz_x8T^t#7>t zEx$b$i`^U!hx=e!@G94JEy1un&$AEtd_GITU{Ks=&sQoH6$*t(tl`#I9}IwtY06PTvjFDZ>aF6&h8kR8keDYPFi&dc7q8 z2%$i&mB73eLO2>#DwVPn<+#rMi;Ii%Gcz;)du(j%&p!9L&y7z`PP#@Azit6I8#iu@ ze)`j&zIn%v9e-2LcKOLkfmM z3WP)Qn`6dkJg%O;KJ`H%t}QJs)h}JT^vxqjj(nECdm^9DyT29zpq=1{Km6g5_rL%B z|9)s_=mVH=5KUXgOE7LIyS%K0xp~db&1!CTR!fUZ%I31x8ae{-NecS>iiCnn7|kaV z>Pn~8mFZS0)1_!CtxzJaa4e>7gfP5vrD7b<&d!$4oH_HwZ+zn$pZogPzrHNVd%XnU zjE;`RzVxLpy<^XwJ%5Uc4qeuGKCc{1Pftzh{JHZwbM}lTCMGlk^Z0Uyacla*JshKb zNdd>F02mMo_!ULViAYo#%)hUvTZ4mx>R+)!>45=7GZ}@=dCsj`wMxQr&Ye5=>cN8t z|Me$7`N`*9KCiU^e7D?kOZS(*{N?{ZNc*>D?Uu@Iir@w*T%fcJuZBil}k+12=@3qJ=1oL8qtVJ{o zaqMzmwOX@to<4R=3kcDGV-mCPhw+s#y<+`(rB;n9!uJ7OV)b>`S)fG-U-{IhKK0Qw|Aec(sRj!1Ufe!-%1G{dx;fAeP#AD~rpRfL^1mM5(&O29r_OqY;U&QrW z4T>AHpTkUF+J8WgJ-%1ZKKra(eEYq>_j|hIjc?Q-z?H(M(@ux!4zmsn!lb0AG4UoO znGxcg8KIcH#(AtF0VZ6xZoRqz#QgM>s%W~L%d5J)B!{(xh#n1}qddnMTm>O)0;4wW z+qdt#;8OjU6@ZU0*Z)E?S*BsO&7?(qGaA2dLL4`3BxsFlpLguN zj2+=vFl;he-CED^nhk0YPTfL|Fj`YRS3n45EFp-bBP!Nv)*V>;E|Rllgs@-C{tF9$ zxE}e!7rt=sZMWU_UjRHG%v-a6;rSP|_wmPd5yZdm_kUj-2}fP{Vg}9Q*LIO17-(s= z%~+eMre&J3eXRDe+Q+);*p95jQy>jMI-WvB$tl-0wDvkRmcaryC#UWrgrfXlLI|*J z8X*u32MCqq3%^5-@)RyQA!htV1mLHD+4PZ*eB`e{;H1gumI-qQ4;(=AkLx@k&M?1b zU;xeg)a~~v={eSa11&8=tyr%PqgOL|l@+LM1(rDOj2tK!r!MG*B-i!DFMjc}gu7b^ zFE+tBK}dT1i6=A$(!cw6@6p)*Im@in~)_w;Mkbz9WG;RX$E-mIR{Q7xPrSKmmV78WNI zt5al^T{VeL0XYh$lBxloK?Kpm2P^Qt_r32uEva#hrR&;H@PP*&coTmA9>Sf?-9tkzv99&Omx6HYbQ?1n_tij87U>V;N^i2 ze(-~v%>+M701n#EP|E%xCK#~sp44{i=$MWiI;1rIb?eSuN;L)85wF8OC?v;iSO!vq zLsoi4x44bCx`)^NhH^(JU*F>Xpw5Q4s&L*C59Fa!#vn zyh+L7UL^y#AkPR_bx)sF9YNHyInB<@sJpv6dh4yX{*k2c&k{i3Lm&Fk8!(yM4fC~f z8L*qsk;8{HOHTh!-h79WhEXUEg?O6fOIG8qWipaXYG})51rb)q3OdYl!1;iNcWzU9 zXsF{B9U)yFz4kLTucm0aTlmN|R%8WMt13on-Fy9Z((4v?fm&Tnz`B6|JhI3F3N$77 z%9ShMbKiaUZII;rQ~^+nC*StAx7|-2?=uhO$-u@>p3oW6+cm>0wX!>-WQTbczCFX0Y ze)*c$22)>sc3IYzxCrd=K`mk{8GcZa7zC?wW!z zPmz@grA9X@J}|=fpk>A{S;c^kYF@l#v7m}TT+RXN?*QMC+*}6z zFP=N6OHdbRy0Wj&G9NL?iSeYc)9qUM!uzV36H15hpzz-Mvf66K@%JXL!A8@v7?K1$ptTx^7yd{x`o9 z+*t)!!Z<+bNRZ7ct>zt=ubn?HAM=yG8!PDl*vCHhmMi%VbPi0sU$<`EKehcj$bjF( z*>lRz&1oYAiD5o!(o&f$%@O~>u<(~drR<40?!7uXbfSmrmE?0w9uZc6MoD4%tYSR_>bdR)HHO!zUMbpp(>&`Bgj6rh zYx&Fp`8d9+ymb*G8DnE|Qa)U>8Yzn|v_?io?veDjQ1way_~`5PQS59(0JcV7nxEGU zz~>c;8XXvfc~9Vd3-r_y0H+ixOO;GQJtJX~k&w7-g&?Q^2qpUaSzJ{O;(e5oHfYji zszeJN?MxAiX`8*vyz~aj1to$*YE&t7W-qAFGsrwEX_Ez+D{TcpZw(<PL5^t)65(iRI28H%q<~ERuC=CIu(U7*IBzucK493CSm;V1+{Di&=3;9 z*TEmBE~&;`0YV@}&e)I9^bJa{B*e;TCs!_I@@W+(ovWiHRM`y zD;#IDFgQrk;#$Gt`)J4bv7x%$CWTCQpVfHB)V<4dxgB(eU_6L034P3Cu44s$`SKx^ zPaV+0tA{zq`KH01B^Ay;rotS(0R&&qUt9UwIl&nhYYs|+Kiht%NV?G|{Ync6V;a|) z@B&%XERawLK_uFxY=HA}m{gE++0$&^-&iuG>71g2Ym`0oj4GFE9XznbOn7xnnQ&Aj z7FwE|;JOFn&CBVqTdmRPm{;IpMbYcmVCG>h9y_ASf**!k_xSuZh0dK;qgGMZs`Z%u zv#QLGskDGw7NvUO+WrU3*z}lJPF8sUojna0u5SyVVFf_C80F+>TL3lzD(7?Z*Xp)A z6L9O8V)!2{s641vz~3iMt7qd5<%dSe!k$-o!84188E9z0Kr^8#jy1q6o#IBNQvg{v z!P=Ho%H)(8xSeNdqF%h9{KdvqKpBj4U+uf{ZoOHR$){9atf^UysytUGr>OF`tQTFq zOk7$<2=peYjI2@s!*y-t*KLB$$q4@6-KoUtpr*?MLDP{5h;un|5j1Fg{3p_BX2eXJ z^z0Jk=S2-{*sjv}QJ7e?0vO)2OHQ{d2O)-7KxD;;O0Ujpbk7?luZ00;o_SV&>ir0P zzV2ZnMKRCyn^oT&V-7Qa6-_T_;qtRy@X6(>7bfaYAqMndY@c8mO>AoEu3a~5mN zbxb$j-=~qAZYEpJz+_(e8Ls91SWb{Aut+k7n|8U1WLV3UI%=2ZUJV`sflkPeo8c+} za58ea7I#~K7nT%>`7zxni_{fK%e8{=Oi5Z=wy`1HJ%C2rfae0!4-+i3T1ZP zB3~@a5=ta7MI}}_%Iv;Xnbm9C09RtcxT8&`+GN4fQ~#!Q)+$Oo$GGmfF?@FLQ=gw=T$;zwnCU%KIfJTxR42xR*L{0QU{3(Qx}vP zS%rXn>fN|ijWuXoAiObq>#sF6jP^?f#vrl3WCc*m7f6J9lvxv_DSHVl!QGZ3%v(nQ zv+a-vxehMWv;wH+Y{;^L5fliAZRyQ-Qx}vB&sVyD3;&gl00O~)!oiRgK(ove7pK(V zIFvLzqtz??AL1mVpFVvoX$4VRoHnM}zV5cnx#-i<@q=i_FjW(h#7%H7h+~l07CA6W zF;yy~)ywXN=KZ9@AyujqsQ3tF?8|t^*vwEPl_})+TH7DV$7R768^> zmgHS&0ac2HEEnYPFNn0F)bj;XhE^O^FHI^6YP(BQ3a3M=F1a1$V-*xgT~ad{RlK)P zb+liex`+S_05&1lECK;IDlMK;VZ%nOVAN`br`qdi`8P!DpGFQ%3xcD!+-wC9jQSOb z&&u@{P(oR8lu@4HI5Mwl5Qge%6+|#@N`jh=ZHC|m9z0WoQIvJwnW5}?2Df7YO^7J7 zFzL0Eoj`=Vox&l6Y06{58Tx`3Pbsr$yW$&HC~;j_u@#iYE2Y%>sM0$(a&0G?3aB(U zt=jAY=GoF70)QB?g7T%JmX03axFl3(8=7iszG=v%2{Vtil^iZx^v9$FRC=Vd)hRkZ z5Y5%DH|w{+VZixJ4pq%`3#c9t@N&p2Y=B zV$!f7$VLbNln;JOS^Da@N;hm%YG_!nDPoibPTS%lZ?6+d-BQR3js=4kb;eo6dZ{PU zG1k*0ubEI{5LCzCv$498gN{{Htly(H!OY3<`G?6H%ZbZJW5#ciAm-;|Hd~x#Xk3W_ zwJ|Bh_obI!I&uvN zKKbO6hk2J)GB-GsopA&Z#R`lGH6`kMDR=m&=En|U-g#p0gpJvjyqX2K{OM!F<|fxY z%Y4TLI)qTTh9IyWn73xn3Bn}x!Sr6u?|;H-(5qRHMF8gt;S{2f@qzs9FjzzPHNPTG033_S3xx=~^b$;zfiVARwi})NNf7k-Tx2uDtJDPB zNEJzDGD=Y5=IN-|T-xQ~3pLF>{}kPwA;tRoRb4PpWudFWmj|`YA4215ph1_3 zE~+}e7p&Ne#*Z>jRz-vh*4T{BL15$tJYQ%2^UOO-Xb!@7L=M9C1+5V9>n`St^S#}w z$>H~9LUFp;Xk0*6o-=M79` zkhC@ywIKz$fb!Dv;bU4lF=ldhs3tc*r{%GIDoro2z@Pyfiyb_0+58)j&+np5WA-Nq zuNOqc#j(j0No{Ay>kDzgkrh~l46hrEN%jpAmb(>z>6RJEw#|k19bX6z7@IJT>5D?h zSHS!|2;^T5`n3AaJ5^^L?F}8v|MRO~eN>WrO;1oPh3zF{Na#>J9>0Z>Q9;l%MJFXo zcU2@O%wj98+_^gbx=#sQA(T!Dbz`Ch70&~L{WEX|K0C?1tv@4bBzExNz(rP`ya;&UfI5V`!@P#3IK#%yLM@L z4)cboCZvWiS#pC@r_{Y^EeuBR*AhMcSF|(^V=V)-rhopK=ZsaWd!xt8O_xkAh_#@3 z0E=b_0)WXZ=`))1$N(o^+<)Z`ChnI;b^(t4RGED+Y36kb2pym;l00Q=@-H&i6oSqL z0l%p7ecg)OvRf&@ZyxQNjU8uBpMK(*r=B_>R{vAq4tKIbUW@s*Y}xV_I>nAjih@v` z?rM`(w~PR6+Uk&^*3f7dJ~$zF`4zCBEQ}F=bgXG(;Ura3dbOwCRjzt>1we9`2>GxM zBLE=?{Qs<{?6eOsb*^bT;ay;mqeRS8sHgpM)V85m!!p{R0#_!v=OQ3k03`bdb*e9= z9S{DYYLSphdPI^}`^F=WJUD*#>@hRt&w4%XvJG{HcWK+%YO*F0jk184!cb{$7LcJY zkJ+L<0Ih+ox?sL%WrJpi4?qoIzCoK?*sP{4fck<* zvg1=}-U_9o{Z1uoDZyN^KDFGf!HGOK&QSW|(ZOkaKWjEe^y&l&(z<{5QAK(Ax=3W2 zo10@V)Bdmh&BG5rWb(P6cY{QU4T!VsxOxX048kyPA^}2(t3>(f0Eh%#TXx3N6&BWj zDF;AwIEL|<$N8pGeV)?8O{KT^F<*Q$5`v;wK)i+EO<7;1k0N>=F{qY}v6b!iJGSkm1 zfChdu2XZ>>$h_USLJ%PsFbhLv`g6WYnWChoL=T;#UK5R=pln7K?)FhE`4k=Yqjf(K z!Dv1V^9k@EMGU7j1;u4Bz^&W%nUie@c%;#3G33gREn%a~nMumNE%Gg*@mc(R4$6kP zp4Np#M!B1IYs&}!Kt&?XESe{?bHDw~zkOir(4nV`lKYEpk}~`B&(JPk%L~Pg#ub7l zv?UX^_^HsvO~y-#XQ~uLO)CH=;2;E3f%zC=Ivn8GY8^`QJq`1aFM%prO%URmwSoXv z6D%PFVs|ws&M}{u%R$rNMHc{=iJ>(lyAp~m$fmF&iDQo4NQr+fVUd=Qm zAwho3(QmRdmbC{2k1ihd!S6mIM|~T{s@}CNjpCNF;x)y49ufAv!ChFzxo*7gWNVhk|)p^$(+1cV^W$ayvV zCU=L-W~T;YgRw4A0Kqoa6sbJ{L6Tj47MtBs!#<(E(_p<*`g~Iu$E$#;|f%3QNab+8jQG53CsZL zqEG^yNcreZK%pkqSC1pxj3#_h9cB%iAAC?lcio{ZQE6&=+5jHASq{JWwZHi9_eb*C z@w2S`SGid_f(6{f&td+QBxx7hXhh{`H%Nub0AhY##qk#vDUT@~m{+J#ZS4v*jaB~n znh^gSOP&2r?Ki~j9wVOADQBS|!VIEqMlUQ(PBg(ZR;Cwm*InB9o_p265*M?}c2_!; ztd1N!^!Q&t^p%fyS4yXkOYUp2T|Pv|Xe)aNKgDkaewSRqVFQvPA%F=pjv0TZr&m6G z2tPfg9%T_oNr7s^?j!Km0ZUsEL(O)&Yk|XQV}hUahG5#{`e@#x2)bBtb*|yjm)xUG z>_-l=8!bmdwm_1@{y(Gn#({nN{>S(J`fvX0NYlG`1d+a$KbQzW!#j8G{DU{W=}iw3 zCR6Mn7a*yy$^BVq+(BW*oC>d=lqSa&n!ltTni~o7_CSf$wMy=8gup-XjC@cah?2?x|vF18;bPM%aDsbfxj2s+O`@o8e7k_GizWnS18RAN;4I&prRmmDF`O$zx%=W zAN_CM;^NWu@+v=)ny>edrh?Fl4I4JxbK{LS-oJkR`WpaBv&q_SM+xH^A!8L#6b(m= zU=T{cbZa{igJXy5;+ld%M!#G~wuUbQZWJaemP*L0(8=q))8peW9NhQfm(Cp>dm__p zER9QzU+2%}94G<}uUotJEjxDZ{1>>zZUhm+LaZPFPZ2#748T0h^7|kxKL7!EXrKSt zq^RL}mg)dv4d%-*Zy4tnr6#8@PnBxD#83RZL16HPCqv}F>(0psquqcpQifDiayb@ 1.0: + easedProgress -= 1.0 + elif easedProgress < 0: + easedProgress += 1.0 + + pt = self.m_path.pointAtPercent(easedProgress) + self.updateCurrentValue(pt) + self.valueChanged.emit(pt) + else: + super(Animation, self).updateCurrentTime(currentTime) + + +# PyQt doesn't support deriving from more than one wrapped class so we use +# composition and delegate the property. +class PixmapItem(QObject): + def __init__(self, pix): + super(PixmapItem, self).__init__() + + self.pixmap_item = QGraphicsPixmapItem(pix) + + def _set_pos(self, pos): + self.pixmap_item.setPos(pos) + + pos = pyqtProperty(QPointF, fset=_set_pos) + + +class Window(QWidget): + def __init__(self, parent=None): + super(QWidget, self).__init__(parent) + + self.m_iconSize = QSize(64, 64) + self.m_scene = QGraphicsScene() + self.m_ui = Ui_Form() + + self.m_ui.setupUi(self) + self.m_ui.easingCurvePicker.setIconSize(self.m_iconSize) + self.m_ui.easingCurvePicker.setMinimumHeight(self.m_iconSize.height() + 50) + self.m_ui.buttonGroup.setId(self.m_ui.lineRadio, 0) + self.m_ui.buttonGroup.setId(self.m_ui.circleRadio, 1) + + dummy = QEasingCurve() + self.m_ui.periodSpinBox.setValue(dummy.period()) + self.m_ui.amplitudeSpinBox.setValue(dummy.amplitude()) + self.m_ui.overshootSpinBox.setValue(dummy.overshoot()) + + self.m_ui.easingCurvePicker.currentRowChanged.connect(self.curveChanged) + self.m_ui.buttonGroup.buttonClicked[int].connect(self.pathChanged) + self.m_ui.periodSpinBox.valueChanged.connect(self.periodChanged) + self.m_ui.amplitudeSpinBox.valueChanged.connect(self.amplitudeChanged) + self.m_ui.overshootSpinBox.valueChanged.connect(self.overshootChanged) + self.createCurveIcons() + + pix = QPixmap(':/images/qt-logo.png') + self.m_item = PixmapItem(pix) + self.m_scene.addItem(self.m_item.pixmap_item) + self.m_ui.graphicsView.setScene(self.m_scene) + + self.m_anim = Animation(self.m_item, b'pos') + self.m_anim.setEasingCurve(QEasingCurve.OutBounce) + self.m_ui.easingCurvePicker.setCurrentRow(int(QEasingCurve.OutBounce)) + + self.startAnimation() + + def createCurveIcons(self): + pix = QPixmap(self.m_iconSize) + painter = QPainter() + + gradient = QLinearGradient(0, 0, 0, self.m_iconSize.height()) + gradient.setColorAt(0.0, QColor(240, 240, 240)) + gradient.setColorAt(1.0, QColor(224, 224, 224)) + + brush = QBrush(gradient) + + # The original C++ code uses undocumented calls to get the names of the + # different curve types. We do the Python equivalant (but without + # cheating). + curve_types = [(n, c) for n, c in QEasingCurve.__dict__.items() + if isinstance(c, QEasingCurve.Type) and c != QEasingCurve.Custom] + curve_types.sort(key=lambda ct: ct[1]) + + painter.begin(pix) + + for curve_name, curve_type in curve_types: + painter.fillRect(QRect(QPoint(0, 0), self.m_iconSize), brush) + + curve = QEasingCurve(curve_type) + + if curve_type == QEasingCurve.BezierSpline: + curve.addCubicBezierSegment(QPointF(0.4, 0.1), + QPointF(0.6, 0.9), QPointF(1.0, 1.0)) + elif curve_type == QEasingCurve.TCBSpline: + curve.addTCBSegment(QPointF(0.0, 0.0), 0, 0, 0) + curve.addTCBSegment(QPointF(0.3, 0.4), 0.2, 1, -0.2) + curve.addTCBSegment(QPointF(0.7, 0.6), -0.2, 1, 0.2) + curve.addTCBSegment(QPointF(1.0, 1.0), 0, 0, 0) + + painter.setPen(QColor(0, 0, 255, 64)) + xAxis = self.m_iconSize.height() / 1.5 + yAxis = self.m_iconSize.width() / 3.0 + painter.drawLine(0, xAxis, self.m_iconSize.width(), xAxis) + painter.drawLine(yAxis, 0, yAxis, self.m_iconSize.height()) + + curveScale = self.m_iconSize.height() / 2.0; + + painter.setPen(Qt.NoPen) + + # Start point. + painter.setBrush(Qt.red) + start = QPoint(yAxis, + xAxis - curveScale * curve.valueForProgress(0)) + painter.drawRect(start.x() - 1, start.y() - 1, 3, 3) + + # End point. + painter.setBrush(Qt.blue) + end = QPoint(yAxis + curveScale, + xAxis - curveScale * curve.valueForProgress(1)) + painter.drawRect(end.x() - 1, end.y() - 1, 3, 3) + + curvePath = QPainterPath() + curvePath.moveTo(QPointF(start)) + t = 0.0 + while t <= 1.0: + to = QPointF(yAxis + curveScale * t, + xAxis - curveScale * curve.valueForProgress(t)) + curvePath.lineTo(to) + t += 1.0 / curveScale + + painter.setRenderHint(QPainter.Antialiasing, True) + painter.strokePath(curvePath, QColor(32, 32, 32)) + painter.setRenderHint(QPainter.Antialiasing, False) + + item = QListWidgetItem() + item.setIcon(QIcon(pix)) + item.setText(curve_name) + self.m_ui.easingCurvePicker.addItem(item) + + painter.end() + + def startAnimation(self): + self.m_anim.setStartValue(QPointF(0, 0)) + self.m_anim.setEndValue(QPointF(100, 100)) + self.m_anim.setDuration(2000) + self.m_anim.setLoopCount(-1) + self.m_anim.start() + + def curveChanged(self, row): + curveType = QEasingCurve.Type(row) + self.m_anim.setEasingCurve(curveType) + self.m_anim.setCurrentTime(0) + + isElastic = (curveType >= QEasingCurve.InElastic and curveType <= QEasingCurve.OutInElastic) + isBounce = (curveType >= QEasingCurve.InBounce and curveType <= QEasingCurve.OutInBounce) + + self.m_ui.periodSpinBox.setEnabled(isElastic) + self.m_ui.amplitudeSpinBox.setEnabled(isElastic or isBounce) + self.m_ui.overshootSpinBox.setEnabled(curveType >= QEasingCurve.InBack and curveType <= QEasingCurve.OutInBack) + + def pathChanged(self, index): + self.m_anim.setPathType(index) + + def periodChanged(self, value): + curve = self.m_anim.easingCurve() + curve.setPeriod(value) + self.m_anim.setEasingCurve(curve) + + def amplitudeChanged(self, value): + curve = self.m_anim.easingCurve() + curve.setAmplitude(value) + self.m_anim.setEasingCurve(curve) + + def overshootChanged(self, value): + curve = self.m_anim.easingCurve() + curve.setOvershoot(value) + self.m_anim.setEasingCurve(curve) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + w = Window() + w.resize(400, 400) + w.show() + sys.exit(app.exec_()) diff --git a/examples/animation/easing/easing.qrc b/examples/animation/easing/easing.qrc new file mode 100644 index 0000000..7e112d3 --- /dev/null +++ b/examples/animation/easing/easing.qrc @@ -0,0 +1,5 @@ + + + images/qt-logo.png + + \ No newline at end of file diff --git a/examples/animation/easing/easing_rc.py b/examples/animation/easing/easing_rc.py new file mode 100644 index 0000000..d26172d --- /dev/null +++ b/examples/animation/easing/easing_rc.py @@ -0,0 +1,362 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Thu May 2 16:22:48 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x14\x1d\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x2e\x00\x00\x00\x37\x08\x06\x00\x00\x00\x73\x60\x78\x64\ +\x00\x00\x13\xe4\x49\x44\x41\x54\x78\x9c\x62\xfc\xff\xff\x3f\xc3\ +\xdf\x7f\x7f\x99\x99\x99\x98\xff\x3e\x78\xf1\x58\x66\xe9\x9e\x55\ +\x09\x87\x2f\x9e\xb6\x79\xf7\xe9\xad\x98\xa4\xf2\x3f\x7e\x51\xb9\ +\xbf\xfc\xcc\x1c\x3f\xf8\xfe\xfd\xff\xc7\xca\xc5\xc6\xf7\x46\x9c\ +\x5b\xf6\x96\x24\xaf\xd2\x35\x29\x3e\xa5\xcb\xd2\xbc\x4a\xd7\xc4\ +\x78\x64\xef\x08\x70\x8a\x3e\x63\x63\x66\xff\xc5\x80\x05\xfc\x67\ +\xf8\xcf\xf4\xef\xff\x3f\x26\x06\x86\xff\x0c\x8c\x0c\x8c\xff\x19\ +\x19\x18\xff\x33\x30\x42\x69\x0a\x00\x00\x00\x00\xff\xff\x62\xfc\ +\xfb\xf7\x2f\x33\x13\x13\xd3\xdf\x59\x9b\x17\xa6\x54\xcf\x6d\xed\ +\x7d\xf3\xe6\x0d\x1f\x17\x2f\xdb\x7f\x7b\x2f\x61\x46\x59\x45\x4e\ +\x06\x86\x7f\x8c\x0c\x0c\xff\x99\x18\x18\x18\x18\x18\xfe\xfd\xff\ +\xc7\xf0\xe7\xdf\x6f\x86\x7f\xff\xff\x30\x30\x30\x30\x32\xb0\x30\ +\xb1\x32\x70\xb2\xf0\x7c\xe3\x63\x17\x7a\x26\xcc\x25\x75\x5f\x9c\ +\x47\xee\xa6\x04\x8f\xc2\x75\x09\x5e\x85\x9b\xa2\x5c\x52\xf7\x05\ +\x38\xc5\x9e\xb1\xb3\x70\xfc\xc0\x6e\xf5\x7f\xc6\x7f\xff\xff\x31\ +\xc3\x39\x24\x7a\x08\x00\x00\x00\xff\xff\x62\xfc\xff\xff\x3f\xc3\ +\xa4\xb5\xb3\x73\xf2\xbb\xf3\x26\x73\xf2\x09\xff\x63\x67\x63\xfb\ +\xef\x1e\x2c\xc4\x20\x21\xc3\xc6\xf8\xed\xeb\x3f\x46\x46\x88\x39\ +\x8c\x70\x0b\x18\x99\xfe\x33\x32\x30\xfc\x67\x60\x60\x60\xf8\xff\ +\xff\x3f\xd3\xbf\xff\x7f\x19\xff\xfc\xff\x03\xf1\xd0\xbf\x3f\x0c\ +\xff\x19\xfe\x33\xb0\x30\xb2\x32\xb0\xb3\x70\xff\xe5\x67\x17\x7e\ +\x21\xcc\x25\x79\x5f\x8c\x47\xee\xa6\x14\xaf\xe2\x75\x09\x1e\x85\ +\xeb\xa2\x3c\x32\x77\x85\x39\x25\x9e\x70\xb0\x72\x7d\xc5\xe7\xa1\ +\xff\x70\x4b\x19\xff\x31\x62\xf1\x10\x00\x00\x00\xff\xff\x6c\x92\ +\xbd\x0a\xc2\x30\x14\x46\xbf\x2f\x16\x7f\xd2\x06\x21\x83\xc6\x41\ +\xc5\x5d\x70\xec\xa8\xbb\xcf\xe2\x6b\xba\x76\x70\x28\xa8\x83\xe0\ +\xd6\xb1\x88\x20\x24\xf7\x3a\x88\x5b\x5e\xe0\x1c\x0e\x1c\x36\xb7\ +\xcb\x76\x7f\x3a\x9e\x85\xea\xe2\x87\xb2\xab\x4b\x53\x1f\xa6\x78\ +\xbf\x04\x66\x90\x03\x67\x4c\xa0\xfe\x0a\xa9\xc4\x7f\x8f\x64\xa2\ +\x44\x24\x89\x48\x1a\xa1\x2a\x30\x2c\x30\x2e\xac\xb8\x91\xef\xfc\ +\x24\x3c\x66\xe5\xf2\xba\x70\x9b\x36\x54\xeb\x76\x5e\xad\xee\xde\ +\x86\xa7\x1d\xba\x9e\x79\x0f\x45\xc5\x28\x94\x04\xf0\x05\x00\x00\ +\xff\xff\x62\x99\xbc\x76\x56\xee\xa7\xef\x5f\x79\xf9\xb9\xf9\xfe\ +\x32\xb2\xff\x65\x56\xd6\xe4\x62\xf8\xfd\xeb\x3f\x03\x23\x13\x51\ +\x8e\x66\x60\x60\x60\x60\xfc\xcf\xf0\x9f\xf1\xff\x7f\xf4\x18\x66\ +\xfc\xcf\xca\xc4\xf6\x9f\x8d\x99\x1d\xc9\x43\x0c\x8c\xff\xfe\xff\ +\x65\xfe\xf8\xe3\xb5\xc4\xbb\xef\xcf\x24\x6e\xbc\x39\x65\x01\xf1\ +\x10\x33\x03\x3b\x33\xe7\x7f\x1e\x36\xc1\xb7\x82\x9c\xe2\x0f\xc5\ +\x79\x64\x6f\x8b\xf3\x28\x5c\x97\xe4\x55\xb8\x2e\xce\x23\x77\x5b\ +\x98\x4b\xe2\x11\x0f\x9b\xc0\x3b\x26\x46\xa6\xbf\x30\xd3\x01\x00\ +\x00\x00\xff\xff\x62\x54\x89\x34\xbe\xfb\xf4\xed\x0b\x25\x86\xff\ +\xcc\xff\x85\x44\x58\x18\xbd\xc3\x45\x88\x76\x31\xb9\x00\x9a\x9e\ +\xff\x31\xa2\x79\xe8\xef\x7f\x48\x0c\xfd\xf9\xf7\x9b\xe1\xff\xff\ +\x7f\x0c\x8c\x8c\xcc\x0c\x6c\xcc\x1c\x0c\x3c\xac\xfc\x1f\x04\x39\ +\xc5\x1e\x89\x72\xcb\xde\x91\xe0\x51\xb8\x26\xc9\xab\x70\x03\x00\ +\x00\x00\xff\xff\xbc\xd1\xb1\x0d\x80\x30\x10\x03\x40\x3b\x05\x54\ +\x54\xb4\x91\x32\x0e\xa2\x65\xff\x45\xc8\xff\xdb\x54\x94\xb4\x8c\ +\x70\x3a\x6e\xe7\xb8\x01\x2f\x73\x1a\x7d\xac\x38\xae\x1d\x11\x06\ +\x3f\xbe\x7e\x00\x99\xa0\x5e\x90\xad\x56\x4e\x96\x02\xa9\x84\x5c\ +\x20\x1b\x1e\x00\x00\x00\xff\xff\xb4\x92\x21\x12\x00\x20\x0c\xc3\ +\xda\x5b\x81\xff\x7f\x98\xa0\x26\x70\x18\x2a\x73\x11\x11\x0d\x30\ +\xdd\xd6\xfb\x3d\xbe\x0c\x61\x81\x91\xae\x92\x72\xa8\x0c\x96\xbc\ +\x9b\x1d\x00\x00\x00\xff\xff\x94\x94\xb1\x0d\x00\x20\x0c\xc3\xdc\ +\x96\xff\x4f\x76\x19\xd8\x10\x42\x70\x40\x6c\x79\xc9\xd8\x96\x7f\ +\x22\x21\x33\xa8\x2a\x6c\xd1\x05\xc8\x08\xd6\x27\x34\xb6\x57\xc6\ +\x93\xe7\x10\x34\x01\x00\x00\xff\xff\x8c\x91\xc1\x0a\x80\x20\x10\ +\x05\x67\xdd\x35\xa5\xfe\xff\x3b\x83\x28\x41\xad\xad\x4b\x67\xeb\ +\xdd\x67\x18\x78\x36\x02\x46\xc1\x6a\x42\x9e\x8d\xbd\x1c\xac\x5b\ +\x21\x6a\x24\x4d\x09\x01\xaa\x37\x4e\xef\x68\x30\xb2\x2d\x04\x51\ +\xfc\xbe\x3e\xac\xef\xed\x3f\xf7\x00\x00\x00\xff\xff\x22\xd9\xe1\ +\xff\xff\x31\x30\x70\x70\x32\x33\x7c\xfb\xfa\x87\xe1\xf4\xc9\xc7\ +\x0c\x52\x5c\xea\x0c\x5e\x26\x3e\x0c\xc6\xaa\x86\x0c\xa2\x02\x22\ +\x0c\x8c\x8c\x0c\x0c\x5f\x7e\x7d\x60\x78\xf6\xe9\x1e\xc3\xb5\xd7\ +\x27\x19\xae\xbe\x3a\xc1\xf0\xf5\xf7\x27\x06\x6e\x56\x3e\x9c\x8e\ +\x67\x64\x64\x60\x80\x95\x4a\x4c\x8c\x4c\x0c\xff\xff\xff\x67\xf8\ +\x4f\xc0\x13\x00\x00\x00\x00\xff\xff\x22\xc9\xe1\xff\xff\x43\x1c\ +\x7d\xe7\xc6\x17\x86\xa3\xfb\xde\x32\x54\x84\x54\x30\x14\x85\x67\ +\x30\xb0\xb3\xb3\x32\xfc\x87\x54\xe9\x70\xb5\x5a\x62\x16\x0c\xae\ +\x2a\xd1\x0c\xcf\x3f\x3f\x60\x58\x73\x75\x22\xc3\xe9\x27\x3b\x19\ +\xb8\xd8\xf8\x18\x30\x8b\x4d\x06\x86\x5f\x3f\xff\x31\xb0\xb0\xb0\ +\x30\x30\x32\xfd\x65\xf8\xf6\xfb\x0b\x03\x0b\x13\x0b\x03\x2b\x13\ +\x3b\x5e\xc7\x03\x00\x00\x00\xff\xff\x22\x3a\x3b\xfe\xff\xc7\xc0\ +\xc0\xce\xc1\xc4\x70\xe3\xf2\x57\x86\x9d\x6b\x5f\x30\xcc\x2e\x9c\ +\xce\x50\x19\x97\xcb\xc0\xc2\xca\xc4\xf0\xf7\xdf\x5f\x86\xff\xff\ +\xff\xc1\x2b\x9b\x3f\x7f\x7f\x33\xfc\xfe\x03\x29\xd2\x24\x79\xe5\ +\x19\x72\x2d\xfa\x19\x42\x74\xf2\x19\xbe\xfd\xfa\xcc\xc0\x04\x2d\ +\x01\xfe\xff\x67\x60\x60\x65\x63\x64\x78\xf5\xec\x0f\xc3\x92\x59\ +\x0f\x18\x3c\xc4\x4b\x18\xba\xbc\x36\x32\xd4\xd8\x2f\x66\x30\x94\ +\x74\x64\xf8\xf1\xe7\x1b\x5c\x2d\x36\x00\x00\x00\x00\xff\xff\x8c\ +\xd4\x21\x0e\xc2\x40\x10\x40\xd1\x3f\x33\xbb\x75\x0d\x06\x01\x0e\ +\x53\x82\x44\x35\x58\x24\xa6\x12\x8d\x20\xe1\x04\x78\x6e\xc4\x01\ +\xb8\x0c\x69\x10\x08\x0c\x49\x31\x5d\xb6\x83\x42\x92\x70\x82\xff\ +\xd4\xff\x0b\xfe\x8d\x3c\xee\x99\xcb\xf9\xca\x69\x7f\x64\xbb\x6e\ +\xe8\x53\x42\x45\x31\x35\x44\x14\xd3\x80\x49\x20\x58\xa4\x08\x05\ +\x0e\x0c\xee\x64\xcf\x34\x8b\x03\x9b\xf9\x8e\xae\x7f\xa2\x62\xb8\ +\x3b\xaa\xc2\xad\x7d\x11\xbd\xa4\xae\x56\x8c\xe2\x94\x6a\xbc\x64\ +\x52\xce\x78\x0f\x09\xf8\xfd\xe4\x0f\x00\x00\x00\xff\xff\x22\x3a\ +\xc4\x19\x19\x99\x18\x0e\xee\x7e\xce\xa0\xa9\xac\xcb\x50\x16\x95\ +\xcb\xc0\xc0\xc0\xc0\xc0\xca\xc2\xc2\xc0\xc8\xc8\xc8\xf0\xff\x3f\ +\x24\x99\xdc\x78\x7b\x92\xa1\x66\x43\x3a\x83\x4f\x65\x04\xc3\xda\ +\x43\x5b\xa0\x21\xc6\x08\x0f\xb9\x10\xed\x3c\x06\x45\x41\x6d\x86\ +\x9f\x7f\xbe\x31\x30\x33\x31\x33\xfc\xff\xc7\xc8\xf0\xf4\xf1\x17\ +\x06\x6d\x25\x55\x06\x19\x51\x69\xa8\x63\x19\x18\xfe\x13\x51\x12\ +\x01\x00\x00\x00\xff\xff\x84\xd4\x2b\x0e\xc2\x40\x14\x46\xe1\xf3\ +\xdf\xa6\x4c\x05\xeb\x40\xa0\x50\x2c\x02\x0d\x49\x75\x05\x0e\xc9\ +\x1e\x58\x09\x8a\x2d\x90\x60\x70\x24\x78\x12\x14\x62\x12\x02\x02\ +\x0c\x8f\xb6\x77\xb0\x18\xc2\x0e\x8e\xf8\x72\xfe\x86\xa7\x04\x9d\ +\x20\xe2\xe9\x4d\x3c\xde\x99\x4d\x2a\x42\x5e\xd0\xb4\x0d\x92\xf0\ +\xe4\x48\xe2\x70\xdd\xb3\xd8\x4c\x89\xb6\xe5\xd6\xdd\x31\x9e\x97\ +\x2c\xd7\x2b\x4c\xc2\xdd\xf1\xd4\x92\x67\x81\x51\xaf\xa2\xf6\x1a\ +\x99\x78\x3d\xc4\xe5\xfc\x64\xd8\x1f\x00\x7c\xed\x34\xc3\x64\x98\ +\x0c\xfd\xe0\xf2\x01\x00\x00\xff\xff\x22\x1c\xe2\xff\x21\x65\xf5\ +\x8d\x2b\x1f\x19\x04\x84\xc4\x19\xfc\xad\x3d\x19\x18\x18\x18\x18\ +\x98\xa1\x2d\x30\x58\x64\x6e\xbe\x31\x8b\xe1\xdf\xff\xbf\x0c\xec\ +\x0c\x02\x0c\xa6\xe6\x92\x0c\x72\x9a\x22\x0c\x55\x33\xda\x18\xbe\ +\xff\x82\x84\x2e\x23\xb4\x08\x36\x94\x74\x60\x90\xe1\x57\x66\x60\ +\x62\xfd\xc5\xf0\xf2\xc5\x67\x86\xdf\x2f\xdf\x33\x58\xe9\x98\x20\ +\x2c\x63\x60\x60\xf8\xf5\xf7\x3b\xc3\xd7\xdf\x9f\x18\xbe\xff\xf9\ +\xca\xf0\xeb\x2f\xf6\x56\x31\x00\x00\x00\xff\xff\x22\xe8\x70\x26\ +\x66\x06\x86\x9f\xdf\x19\x18\xee\xdf\xfb\xc8\x60\xa9\x63\xc4\x20\ +\x25\x2c\x09\x0f\xe5\xff\x0c\xff\x19\x18\x19\x99\x18\x3e\xfc\x78\ +\xcd\xf0\xe0\xfd\x55\x06\x0e\x16\x2e\x86\x3f\xff\x7e\x33\xfc\xfe\ +\xf3\x87\x41\x53\x47\x90\xe1\xe1\xe3\xfb\x0c\x07\x2e\x1c\x85\x84\ +\xe6\xff\x7f\x0c\x7f\xff\xfd\x65\x60\x67\xe1\x64\xe0\xfd\x64\xc4\ +\xb0\x62\xfe\x43\x86\x64\xd3\x46\x86\xcd\x33\x76\x30\xb8\x98\x38\ +\x40\x03\x03\x52\xc8\x29\x08\x6a\x33\x98\xc9\xb8\x33\x68\x88\x98\ +\x30\x48\xf2\x28\x60\x75\x17\x00\x00\x00\xff\xff\xc2\x5b\x1c\xfe\ +\xff\xcf\xc0\xc0\xc2\xc2\xc8\xf0\xfe\xdd\x5f\x86\xef\xef\x7f\x30\ +\x58\xe9\x9a\x42\x1c\xf1\xef\x1f\x03\x13\x33\xa4\xbc\x65\x64\x64\ +\x64\x78\xf9\xe5\x21\xc3\x97\x5f\x1f\x19\xd8\x59\xb8\x20\xc9\xe2\ +\xef\x7f\x06\x61\x31\x36\x06\x06\xe6\x7f\x0c\xa7\xae\x9d\x63\xf0\ +\x34\x73\x85\xe7\x03\x06\x06\x06\x06\x4d\x51\x33\x86\x77\x8f\xfa\ +\x19\x54\xc5\xb4\x19\x34\xe5\xd5\x18\xfe\xfe\xfb\x0b\x75\x38\x24\ +\x16\x2d\x65\xbd\x19\x2c\x64\x3c\x19\x18\x19\x99\x18\x9e\x7f\xbe\ +\xcf\xd0\xb0\x2f\x02\xc3\x6d\x00\x00\x00\x00\xff\xff\xc2\x1f\xe2\ +\xff\x19\x18\x98\x98\x19\x19\xde\xbf\xfd\xcd\xc0\xf0\x8f\x99\x41\ +\x5f\x45\x8b\x81\x81\x81\x81\x81\x11\xde\x02\x83\x44\xed\x9b\x6f\ +\xcf\x19\xfe\xfc\xfb\xcd\xc0\xc8\xc0\xc8\xc0\xc8\x08\x49\xab\x9c\ +\xdc\x4c\x0c\xcc\x5c\x2c\x0c\x37\x1f\xdf\x83\xeb\x61\x64\x82\xe8\ +\xd3\x53\xd1\x64\xe0\xe2\xe3\x67\xf8\xf3\xf7\x0f\x6e\x8b\x09\x54\ +\x40\x00\x00\x00\x00\xff\xff\x22\x98\x54\x18\x19\x19\x18\x3e\xbc\ +\xff\xc5\xc0\xc4\xce\xc9\xa0\x20\x21\x07\x11\x83\x86\x1c\xcc\xe8\ +\x4f\x3f\xde\x42\x9a\xa1\x50\xfe\xbf\x7f\x0c\x0c\xac\xac\x0c\x0c\ +\xdc\xdc\xac\x0c\xcf\xdf\xbc\x84\x58\xc4\xc8\x04\xd7\x27\x25\x2c\ +\xc1\xa0\xa9\x26\xc5\x70\xf1\xfe\x25\x86\xa7\xaf\x9f\xc3\x43\x1a\ +\x06\xfe\xfc\xfd\xcb\xf0\xfb\xcf\x3f\x14\xbb\xd0\x01\x00\x00\x00\ +\xff\xff\x22\x5c\x73\xfe\x67\x60\xf8\xfc\xe9\x37\x03\x2f\x17\x37\ +\x83\x28\xbf\x30\xd4\x33\xd0\x4e\x15\x54\xc9\xb7\xdf\x9f\x51\x3c\ +\xc2\xc0\x00\xc9\x1b\x1c\x1c\x2c\x0c\xef\x3f\x7f\x82\xeb\xf9\x0f\ +\x0d\x49\x4e\x76\x4e\x86\x88\x28\x2d\x86\xd4\xce\x64\x06\x13\x69\ +\x17\x86\xc3\x53\x37\x32\xfc\xff\xff\x9f\xe1\x1f\xc3\x3f\x06\x66\ +\x46\x66\x86\xed\x37\x17\x32\xec\xba\xbd\x82\x41\x84\x5b\x92\x01\ +\xa9\xef\x80\x02\x00\x00\x00\x00\xff\xff\x7c\x95\x4d\x0a\x80\x20\ +\x18\x44\x9f\xf9\x43\x88\x50\xf7\xbf\x5b\x27\x88\x36\x2d\x34\x31\ +\xfd\x5a\xb8\x11\x8a\xf6\x03\xf3\x86\x19\x98\x7f\x70\xd5\x77\x9e\ +\x62\x21\xf8\x85\xe0\xc3\xa7\x2c\xdf\x91\xf1\x2c\x44\x7a\x53\xce\ +\x69\xe2\x95\x28\xb5\x60\xb5\x05\x81\x86\x30\x29\x85\xb7\x2b\xd6\ +\x18\x8c\x1e\x11\x7a\xf4\xd4\x4e\xf6\xbc\x91\xe4\xa0\xb6\x8a\xd3\ +\xf3\xcb\xf3\x01\x00\x00\xff\xff\x84\x97\xc1\x0a\x80\x30\x0c\x43\ +\x5f\xb7\xae\x9b\xc5\xff\xff\x57\xad\x16\x0f\x9e\x64\x03\xef\x21\ +\x79\x10\x08\xe4\x7f\xc7\x81\x88\x64\xb3\x41\x57\x5b\x6a\x22\x63\ +\x3a\x1e\x22\xa0\x5a\x38\xe2\xe4\xba\x63\x82\xf3\xb6\x93\x99\x7c\ +\x7b\x7a\x4d\x8a\x54\x9a\x0c\xac\x3a\x5d\x7d\x99\xf9\x00\x00\x00\ +\xff\xff\x22\xaa\x1c\xff\xfb\xf7\x3f\x03\x0b\x33\x33\x03\x13\x13\ +\x13\xb2\xf9\x70\x00\x69\xf5\xa1\xbb\x1c\x92\xb1\xff\xfe\xfb\x0b\ +\x75\x20\x2a\x60\x65\x62\x83\x26\x1d\x6c\x69\x18\xd2\x3a\xfc\xff\ +\xff\x1f\xce\x5a\x14\x00\x00\x00\xff\xff\x22\xb2\xad\x02\x29\xf6\ +\x18\x71\xf6\xe7\xb0\x97\x00\x8c\x50\x29\x6c\xb2\x4c\x8c\xc4\x0d\ +\x21\xe0\x02\x00\x00\x00\x00\xff\xff\x22\xca\xe1\x4c\x4c\x8c\x0c\ +\x7f\xff\xfd\x63\xf8\x87\xa5\x49\xca\xc0\xc0\x80\xbd\x5a\x86\x3a\ +\x98\x91\x11\x7b\xb9\x40\x69\xcf\x08\x00\x00\x00\xff\xff\x22\xaa\ +\x38\x64\x61\x85\xa4\xd5\xdf\x7f\x7e\xc3\x1d\x85\x0c\x58\x18\x59\ +\xb1\xb6\x9d\xff\xfd\xfd\xcf\xc0\xcc\xc4\xc4\xc0\x84\x65\x80\xe6\ +\xf7\xbf\x9f\xd0\xa2\x8e\xbc\x91\x38\x00\x00\x00\x00\xff\xff\x22\ +\x1c\xe2\x8c\x0c\x0c\xec\xec\x2c\x0c\xdf\x7e\x7c\x67\xf8\xf1\x0b\ +\x7b\xbb\x81\x95\x99\x1d\xc3\xfe\xff\x0c\x0c\x0c\x7f\xfe\xfe\x63\ +\x60\x65\x65\x65\x60\x61\x46\x76\x38\x24\xfc\x7f\xfc\xf9\x06\x2d\ +\x22\xc9\x03\x00\x00\x00\x00\xff\xff\x22\x58\x73\x32\x32\x32\x30\ +\x70\x73\x43\xfa\x96\x1f\xbf\x7e\x82\x0a\xff\x87\x3b\x8e\x81\x81\ +\x81\x81\x93\x95\x9b\x01\x32\xa8\x89\x70\xda\xff\x7f\x0c\x0c\xbf\ +\x7f\xfd\x65\xe0\x64\xe7\x80\x14\x85\x50\x09\x58\x3e\xf9\xfa\xeb\ +\x23\x24\x89\x91\xe9\x72\x00\x00\x00\x00\xff\xff\x22\x2a\x8d\xf3\ +\xf2\xb1\x32\x7c\xff\xf1\x8d\xe1\xe5\xfb\xd7\x10\x07\xff\x47\x38\ +\x90\x81\x81\x81\x81\x87\x4d\x80\x81\x81\x01\x29\xf4\x18\x21\x0e\ +\xff\xf9\xf3\x2f\x03\x1f\x17\x2f\x44\x0e\xaa\x89\x91\x81\x91\xe1\ +\xcf\xbf\xdf\x0c\x9f\x7e\xbe\x63\x60\x66\x64\x21\xd8\xb7\xc4\x05\ +\x00\x00\x00\x00\xff\xff\xc2\xef\x70\xa8\x03\xf8\x05\xd9\x18\x18\ +\xfe\xfc\x64\xb8\xf7\xec\x21\xd4\xe1\xa8\x96\x09\x70\x88\xa2\x74\ +\xb3\x18\x19\x19\x18\xfe\xfc\x81\x54\x5c\x62\x82\x42\x0c\x0c\x0c\ +\x90\x9e\x10\xcc\x8d\x9f\x7e\xbe\x83\x38\x9c\x89\x85\x81\xdc\x20\ +\x07\x00\x00\x00\xff\xff\x22\x18\xe2\x7f\xff\xfd\x67\xe0\x17\x64\ +\x61\x60\x60\x61\x60\xb8\x78\xe7\x2a\x9a\xbf\x20\x61\x2e\xc2\x25\ +\xc5\xc0\xc6\xc2\x09\x29\x29\xa0\xed\xf7\x9f\x3f\xfe\x33\xfc\xfc\ +\xf6\x87\x41\x5e\x42\x06\xee\x59\x58\xe8\xbe\xfc\xf2\x88\xe1\xeb\ +\xaf\x8f\x0c\xcc\x8c\xcc\x64\xa7\x71\x00\x00\x00\x00\xff\xff\xc2\ +\xeb\x70\x46\x46\x06\x86\xbf\x7f\xfe\x33\xf0\xf0\x31\x31\xf0\x0a\ +\x73\x32\x9c\xbc\x7a\x8e\x81\x81\x81\x81\x81\x19\x5e\x11\x41\x1c\ +\x2e\xca\x2d\xc3\x20\xc0\x2e\xc2\xf0\x17\xda\x4f\x64\x62\x66\x60\ +\xf8\xfc\xe1\x0f\x03\xc3\xaf\xff\x0c\xba\xca\x9a\x50\xd3\x10\x2d\ +\xbe\x7b\xef\x2e\x33\xfc\xfe\xfb\x0b\x9a\xc6\x91\x9d\x8e\x48\x4e\ +\x4c\x8c\x4c\x0c\xac\x2c\x2c\x0c\xcc\xcc\xd8\xcb\x7b\x00\x00\x00\ +\x00\xff\xff\x22\x5c\xe5\xff\x63\x60\x60\x65\x67\x60\x50\x50\xe2\ +\x67\x38\x7b\xe3\x32\xc3\xa3\x57\x8f\xa1\x5d\x36\x48\xfb\xfa\xdf\ +\xff\x7f\x0c\x9c\xac\x3c\x0c\x4a\x42\x3a\x0c\xbf\xfe\xfd\x64\x60\ +\x64\x60\x62\x60\x62\x62\x64\x78\xfa\xe8\x3b\x03\x2b\x27\x2f\x83\ +\x8d\xae\x05\xc4\x22\xa4\x6e\xd8\xb5\x57\x27\x18\x58\xa0\xc9\x04\ +\xa5\x3c\x87\xfa\x81\x87\x4d\x90\xe1\xeb\xef\x8f\x0c\x2f\xdf\xbd\ +\x61\x78\xf7\xf1\x23\xd6\x16\x22\x00\x00\x00\xff\xff\x22\xaa\x38\ +\xfc\xf7\xf7\x3f\x83\x9a\x06\x2f\xc3\xe7\x8f\x6f\x18\x36\x1f\xdb\ +\xc9\xc0\xc0\xc0\x80\x51\x8d\xdb\x2b\x86\x30\xfc\xfb\xfb\x97\x81\ +\x99\xed\x1f\xc3\xcf\x6f\x4c\x0c\xa7\x8e\x3e\x60\x08\x75\xf2\x66\ +\x50\x93\x51\x61\xf8\xf7\xef\x1f\x03\x23\x23\x24\x24\x9f\x7c\xba\ +\xc3\x70\xfb\xed\x45\x06\x0e\x56\x2e\x06\x56\x36\x26\x86\xcf\xdf\ +\xbe\x30\x30\x30\x40\x6a\x66\x58\x6d\x6a\x25\xef\xc5\x60\x2d\x92\ +\xc0\xa0\xfc\x27\x80\x21\x55\x77\x02\x83\x28\x8f\x34\x24\x86\x90\ +\x3c\x00\x00\x00\x00\xff\xff\x22\xaa\x02\xfa\xfd\xeb\x3f\x83\x84\ +\x0c\x1b\x83\x84\x12\x1f\xc3\xf4\xf5\x8b\x18\x7e\xfd\xf9\xc5\xc0\ +\xc2\xcc\xcc\xf0\x9f\xe1\x3f\x7c\xe4\x49\x5b\xcc\x82\x21\x4c\x2f\ +\x9f\xe1\xd3\xa7\xef\x0c\x5b\xd6\x3d\x64\xb0\xd5\x73\x61\x98\x98\ +\xd7\x0a\x35\x83\x91\xe1\x1f\x03\xc4\xa3\xfb\xef\xad\x62\xf8\xfa\ +\xeb\x13\x03\x0b\x0b\x33\x83\x98\x18\x27\xc3\xc3\x17\x4f\x19\x9e\ +\xbf\x7b\x01\x0d\x70\x48\x90\xf3\xb2\x09\x33\x14\xb9\xb6\x30\xb4\ +\x25\xb4\x31\x38\xe9\x3a\x33\xc0\x87\xe7\x90\x9a\x1c\x00\x00\x00\ +\x00\xff\xff\x22\xae\xad\xc2\xc0\xc0\xf0\x9f\xf1\x1f\x83\xad\x93\ +\x04\xc3\xd5\x5b\x17\x19\xa6\xac\x9b\xcd\xc0\xc0\xc0\xc0\xf0\xfb\ +\xcf\x1f\xb8\xc3\xfe\xff\xff\xcf\xe0\xa7\x91\xc1\x50\x67\xb7\x86\ +\x61\x4d\xf9\x46\x86\xbd\x13\xd7\x30\x88\xf0\x8b\x40\xc6\x56\x18\ +\xfe\x32\x30\x33\xb2\x30\xdc\x7b\x77\x99\xe1\xd0\x83\xf5\x0c\xdc\ +\x6c\x7c\x0c\xbf\x7e\xfd\x66\x50\xd7\xe1\x67\xf8\xf8\xf1\x15\xc3\ +\xca\x3d\x9b\x20\xf6\xfc\x83\xe5\x03\xb4\x21\x38\x2c\x39\x18\x00\ +\x00\x00\xff\xff\x22\x6a\x08\x8e\x91\x91\x81\xe1\xf7\xcf\xff\x0c\ +\x12\x32\x2c\x0c\xd6\xee\x32\x0c\x95\x53\xdb\x18\x4c\x35\x8d\x18\ +\x6c\x75\x2d\x19\x7e\xff\xf9\xcd\xc0\xc4\xc4\xc4\xc0\xcc\xc4\xc4\ +\xf0\xff\xff\x3f\x06\x55\x29\x55\x06\x55\x29\x48\x29\x02\x49\xbf\ +\xff\x19\x98\x19\x59\x18\x3e\xfd\x7c\xc7\x30\xe7\x6c\x2d\xc3\xdf\ +\x7f\xbf\x19\xd8\x59\x38\x19\x7e\xff\xfe\xc7\x20\x24\xc6\xcc\xe0\ +\x1a\x28\xcb\xd0\xb1\xaa\x9b\x41\x5c\x58\x94\x21\xc4\xde\x9f\x81\ +\x99\x81\x91\xe1\xff\xff\x7f\x0c\x9f\x7f\x7d\x60\x78\xf8\xe1\x3a\ +\xc3\xa9\x27\x3b\x19\xde\x7c\x7b\xc6\xc0\xca\xcc\x86\xd2\x52\x04\ +\x00\x00\x00\xff\xff\x62\xe4\xf1\x90\xfb\xcf\xc8\xc8\xc0\xf0\xeb\ +\xe7\x7f\x06\x59\x45\x76\x06\xb7\x40\xdc\x03\xfb\xff\xff\x33\x30\ +\x70\x70\x30\x33\x9c\x3a\xf2\x96\xe1\xe6\xf9\xbf\x0c\x4b\x6b\x66\ +\x33\x78\x59\x3a\x42\xca\x75\x68\x1a\xfe\xf7\xff\x1f\xc3\xff\xff\ +\x90\x92\x07\x36\x9e\xf8\xe4\xe3\x6d\x86\xe9\xa7\xca\x18\x9e\x7e\ +\xba\xcb\xc0\xc9\xca\x03\x1f\xfc\xfc\xff\x9f\x81\x81\x9d\x9d\x89\ +\xe1\xcb\x97\x5f\x0c\x2f\x5f\x7e\x65\x50\x93\x51\x66\x10\x17\x12\ +\x63\xf8\xf1\xe7\x1b\xc3\xfb\xef\x2f\x19\x3e\xfe\x78\x03\xcf\xfc\ +\xe8\x19\x14\x00\x00\x00\xff\xff\x22\xc9\xe1\x30\xcb\x38\x39\x59\ +\x18\x1e\xde\xff\xcc\x70\xf1\xf4\x47\x06\x6f\xfd\x50\x86\x64\xcf\ +\x78\x06\x1d\x25\x4d\x06\x56\x68\x6f\x06\xe6\xe0\x6f\xbf\x3f\x33\ +\xac\xbd\x3a\x99\xe1\xf0\x83\x0d\x0c\x7f\xfe\xfd\x82\x8c\x02\xa0\ +\x8d\xd8\xc2\x86\xac\x59\x58\x98\x18\x7e\xfc\xfa\xc1\xf0\xfb\xcf\ +\x1f\xc8\x8c\x03\x13\x2b\xb4\xe4\x61\xc4\x3a\xca\x0b\x00\x00\x00\ +\xff\xff\x22\x79\x0e\x82\x91\x91\x81\xe1\xfb\xb7\x3f\x0c\x32\x72\ +\xdc\x0c\x7e\xe1\xd2\x0c\x77\x19\x37\x31\x18\x25\x58\x31\xb4\x2e\ +\xee\x63\x60\x60\x60\x60\xf8\xfb\x17\x61\xc9\x9f\x7f\xbf\x18\x0e\ +\xde\x5f\xcb\xc0\xc0\xc0\xc0\xc0\xc5\xca\x8b\xd5\x01\x8c\x4c\x90\ +\x51\x81\x9f\x3f\xff\x32\x30\x33\xb0\x31\x70\xb0\x72\x33\xb0\xb3\ +\x70\x32\x30\x33\x42\x27\x0b\xb0\x0f\x4d\xff\x07\x00\x00\x00\xff\ +\xff\x22\x6b\xf2\x84\x91\x89\x81\xe1\xd7\xaf\x7f\x0c\x3f\xbe\xfd\ +\x65\x50\x53\x15\x67\x10\x94\xe0\x65\xd8\x7a\x6c\x0f\x03\x03\x03\ +\x03\x03\x13\x33\x33\x3c\xc9\xf0\xb1\x0b\x33\xb8\xa9\xc6\x30\x7c\ +\xf8\xf1\x8a\xe1\xe3\xcf\xb7\xd0\x34\x8f\x3d\x2a\x19\x19\x19\x50\ +\x7a\x3d\x78\xdb\x30\xff\x19\xfe\x00\x00\x00\x00\xff\xff\x22\x6b\ +\x46\x02\x6e\xd1\x3f\x06\x86\xff\x8c\x7f\x18\xd4\x35\x04\x19\xce\ +\x1c\xbd\xca\x70\xe9\xde\x15\x06\x3d\x25\x1d\xc8\x80\x11\xb4\x76\ +\x0d\xd4\xca\x66\x90\xe1\x53\x65\x78\xf1\xe9\x11\xc3\xb1\x27\x9b\ +\x19\x3e\xfc\x78\x85\xb3\xfd\x4e\x84\xad\xff\xff\xfd\xff\xc3\xc8\ +\xcf\x2e\xfa\x0c\x00\x00\x00\xff\xff\xa2\x6c\xba\x8a\x91\x81\xe1\ +\xf7\xef\xff\x0c\xea\xba\xbc\x0c\x7f\xfe\x7f\x63\x98\xb1\x71\x21\ +\x03\x03\x03\x03\xc3\x9f\xbf\x7f\xe0\x0d\x31\x16\x46\x56\x06\x2b\ +\x39\x1f\x86\x20\x9d\x2c\x06\x5e\x36\x01\x86\xbf\xff\xfe\x30\xe0\ +\xcc\x40\x04\x00\x13\x23\xe3\xbf\xdf\x7f\x7f\x32\xa8\x0a\x1b\xed\ +\x07\x00\x00\x00\xff\xff\xa2\xc8\xe1\x8c\x8c\x0c\x0c\x7f\x7f\xff\ +\x67\xe0\x15\x60\x64\x70\x74\x97\x65\x98\xb9\x76\x31\xc3\xf6\x13\ +\x7b\x19\xd8\x58\xd9\xe0\x0e\xff\xcf\xf0\x9f\x88\xf9\x1f\xa2\xc0\ +\xff\xff\x0c\xff\x99\x98\x99\xd8\x7e\x3b\x28\x06\xcf\x02\x00\x00\ +\x00\xff\xff\xa2\x78\x82\x90\x91\x89\x81\xe1\xe7\x8f\x7f\x0c\xda\ +\x86\x3c\x0c\xf6\x3e\xc2\x0c\x69\x93\x32\x19\x66\x6c\x9a\xcf\xf0\ +\xe1\xf3\x67\x86\xff\xff\x11\x6d\x94\x6f\xbf\x3f\x33\xfc\xf9\xff\ +\x1b\xe7\xc8\x14\x0e\xd3\xff\x33\x32\x32\xfd\x63\x62\x64\xfe\xc3\ +\xc2\xc4\xfa\xfb\xfd\xf7\x57\x8c\x0e\x0a\xa1\x53\xd4\x45\x8d\x8e\ +\x03\x00\x00\x00\xff\xff\x22\xb9\x38\xc4\x05\x60\x65\xfc\xb7\xef\ +\xbf\x19\x9e\x3c\xfd\xc0\x20\x29\x20\xc5\xa0\x28\x29\xc7\xc0\xce\ +\xc6\xce\xf0\xfd\xf7\x67\x86\x8f\x3f\xde\x41\x47\xbc\x30\xd3\x36\ +\x64\x62\x16\xba\x82\x02\xba\xd8\xe0\x3f\xc3\x3f\xe6\x7f\xff\x20\ +\x0b\x1c\xfe\xfe\xfb\xfd\xef\xf7\xdf\x5f\x4c\xb6\xf2\x41\x2b\x52\ +\x4d\x5b\x62\x58\x98\x58\xfe\x02\x00\x00\x00\xff\xff\x22\x3b\x73\ +\x62\x58\xce\xc8\xc0\xf0\xe3\xfb\x5f\x06\x16\x66\x66\x06\x35\x15\ +\x31\x86\x5f\xbf\xbf\x31\xdc\xff\x78\x09\x3e\xb5\x0d\x9d\x66\xf9\ +\x0f\x59\x09\xc1\x04\x6f\xe3\xfe\x67\xf8\xc7\xfc\xf7\xdf\x5f\xc6\ +\xbf\xff\x7e\x33\xfe\xfd\xf7\x87\xe1\xef\xbf\xbf\x0c\x8c\x0c\x90\ +\x7e\x2c\x17\x2b\xdf\x17\x71\x4e\xb1\xc7\xa2\x5c\x32\xb7\xcd\x64\ +\xdc\x97\x9a\xcb\x7a\xac\x82\x0c\xb4\xff\x67\x04\x00\x00\x00\xff\ +\xff\x62\x81\xac\x7a\xf8\x4f\x95\x09\x70\x48\xf3\xfa\x3f\xc3\xcf\ +\x1f\x7f\xfe\x33\x32\xb2\xfc\xe7\x64\x65\x83\x2f\xd7\xf8\xf7\xff\ +\x2f\xf3\xdf\x7f\x7f\x18\x7f\xff\xfb\xcd\xf8\xe7\xdf\x1f\x86\x7f\ +\xff\x20\x6b\x5e\xd8\x20\x0e\xfc\x2a\xc0\x21\xff\x58\x94\x5b\xe6\ +\xb6\x24\xaf\xc2\x75\x49\x5e\xc5\xab\x92\xbc\x0a\x37\x45\xb8\xa4\ +\x1e\xf0\x71\x08\xbd\x66\x62\x64\xfe\xc7\xc0\xc0\xc0\xf0\xff\xff\ +\x3f\x26\x06\x68\xac\x00\x00\x00\x00\xff\xff\x62\xf9\xf3\xe7\x0f\ +\x03\x1b\x1b\xdb\x3f\x06\x86\xdf\x4c\x24\x25\x3f\x88\x53\xff\x33\ +\x32\x32\xa0\x85\xe0\x7f\xe6\x7f\xff\xff\x30\xfe\xfe\xfb\x8b\xf1\ +\xef\x9f\xdf\xf0\x10\x64\x61\x66\x67\xe0\x66\xe5\xfb\x2a\xc6\x21\ +\xff\x58\x94\x5b\xfa\x0e\xc4\x81\x4a\x57\x25\x78\x14\x6e\x8a\x72\ +\x4b\xdd\x47\x76\x20\x3a\x80\x2c\xc8\xf9\xcf\xc0\xc4\xc8\x0c\xcf\ +\xe5\x00\x00\x00\x00\xff\xff\x62\x11\x13\x10\x7e\xf2\xf4\xed\x73\ +\x59\x76\x66\xee\xbf\xff\xff\x33\x30\x63\x77\x3c\xe3\x7f\xa4\xc5\ +\x2e\x28\x69\x10\x11\x82\x10\x33\x59\x61\x0e\xe4\x16\x7d\x22\xca\ +\x2d\x73\x5b\x82\x57\xe1\xba\x14\xaf\xe2\x35\x09\x1e\x85\x9b\x22\ +\xdc\xd2\xf7\xf9\x39\x84\x5e\xe1\x72\xe0\xff\xff\xff\x98\xff\xc3\ +\x63\x1f\xba\x18\x81\x91\xf1\x3f\x13\x96\x21\x5b\x00\x00\x00\x00\ +\xff\xff\x62\xd9\xd3\xbf\xc1\x2e\xa4\x2e\x6e\xd3\xc5\x2b\x97\x74\ +\x59\x98\xa5\xfe\x42\x06\x53\x99\xfe\x33\x31\x22\x56\x01\xfd\xfd\ +\xff\x87\xf1\xcf\x5f\xc8\x0a\x86\xbf\xff\xa1\x21\xc8\xc4\xce\xc0\ +\xcd\xc6\xf7\x5d\x94\x43\x0e\x12\x82\x3c\x8a\xd7\x24\x79\x15\xaf\ +\x49\xf0\xca\xdf\x10\xe5\x96\xb9\xcf\xcf\x2e\xf4\x8a\x89\x09\xb7\ +\x03\xff\x41\x17\xcc\x40\x03\x05\xb2\x04\x84\x91\xe9\x2f\xb1\x91\ +\x0e\x00\x00\x00\xff\xff\x62\xfc\xff\xff\x3f\xc3\xeb\x8f\x6f\x84\ +\xbd\x4a\xa2\x37\x3f\xfe\x76\xd9\x32\x38\x46\xee\xdf\xd7\x6f\xdf\ +\x99\xfe\x33\x40\x06\x32\x59\x99\xd8\x18\xb8\x58\x79\x3f\x09\x70\ +\x88\x3d\x11\xe1\x96\xbe\x23\xc1\xa3\x70\x43\x92\x57\xe1\x9a\x38\ +\x8f\xfc\x4d\x51\x6e\xa9\x07\xfc\xec\xc2\x78\x1d\x88\x2d\x04\x89\ +\x74\x1b\x5e\x00\x00\x00\x00\xff\xff\x62\xfc\xf3\xf7\x0f\x33\x33\ +\x13\xf3\xdf\x57\xef\xde\xf3\x66\xcf\x4e\xde\x2e\xa1\xfd\x56\x4f\ +\x96\x4f\xfd\xac\x04\xaf\xc2\x75\x69\x3e\x95\x4b\x52\xbc\x8a\xd7\ +\xc4\xb8\x65\xef\x08\x70\x8a\xbe\x64\x66\x62\xc6\xde\xe2\xf9\xff\ +\x8f\xf9\x1f\xc3\x3f\x68\xc3\x96\x11\x69\xa9\x13\xd9\x9d\x78\x82\ +\x00\x00\x00\x00\xff\xff\x03\x00\x3c\x1e\x17\xa6\x18\xe4\xa8\x9e\ +\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x0b\ +\x05\x52\xbf\x27\ +\x00\x71\ +\x00\x74\x00\x2d\x00\x6c\x00\x6f\x00\x67\x00\x6f\x00\x2e\x00\x70\x00\x6e\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\ +\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() diff --git a/examples/animation/easing/form.ui b/examples/animation/easing/form.ui new file mode 100644 index 0000000..364aebe --- /dev/null +++ b/examples/animation/easing/form.ui @@ -0,0 +1,270 @@ + + + Form + + + + 0 + 0 + 545 + 471 + + + + Easing curves + + + + + + + 0 + 0 + + + + + 16777215 + 120 + + + + Qt::ScrollBarAlwaysOff + + + QListView::Static + + + false + + + QListView::IconMode + + + false + + + + + + + + + + 16777215 + 16777215 + + + + Path type + + + + + + + 16777215 + 40 + + + + Qt::LeftToRight + + + Line + + + true + + + buttonGroup + + + + + + + + 16777215 + 40 + + + + Circle + + + buttonGroup + + + + + + + + + + + 0 + 0 + + + + Properties + + + + QFormLayout::AllNonFixedFieldsGrow + + + + + + 0 + 0 + + + + + 0 + 30 + + + + Period + + + + + + + false + + + + 0 + 0 + + + + + 0 + 30 + + + + -1.000000000000000 + + + 0.100000000000000 + + + -1.000000000000000 + + + + + + + false + + + + 0 + 30 + + + + -1.000000000000000 + + + 0.100000000000000 + + + -1.000000000000000 + + + + + + + + 0 + 30 + + + + Overshoot + + + + + + + false + + + + 0 + 30 + + + + -1.000000000000000 + + + 0.100000000000000 + + + -1.000000000000000 + + + + + + + + 0 + 30 + + + + Amplitude + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + diff --git a/examples/animation/easing/images/qt-logo.png b/examples/animation/easing/images/qt-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..14ddf2a0289e64c686b34712b8754bc4baac2726 GIT binary patch literal 5149 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 literal 0 HcmV?d00001 diff --git a/examples/animation/easing/ui_form.py b/examples/animation/easing/ui_form.py new file mode 100644 index 0000000..7ff3da5 --- /dev/null +++ b/examples/animation/easing/ui_form.py @@ -0,0 +1,136 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'form.ui' +# +# Created: Thu May 2 16:46:55 2013 +# by: PyQt5 UI code generator snapshot-5.0-e46cc7cf20da +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_Form(object): + def setupUi(self, Form): + Form.setObjectName("Form") + Form.resize(545, 471) + self.gridLayout = QtWidgets.QGridLayout(Form) + self.gridLayout.setObjectName("gridLayout") + self.easingCurvePicker = QtWidgets.QListWidget(Form) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.easingCurvePicker.sizePolicy().hasHeightForWidth()) + self.easingCurvePicker.setSizePolicy(sizePolicy) + self.easingCurvePicker.setMaximumSize(QtCore.QSize(16777215, 120)) + self.easingCurvePicker.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff) + self.easingCurvePicker.setMovement(QtWidgets.QListView.Static) + self.easingCurvePicker.setProperty("isWrapping", False) + self.easingCurvePicker.setViewMode(QtWidgets.QListView.IconMode) + self.easingCurvePicker.setSelectionRectVisible(False) + self.easingCurvePicker.setObjectName("easingCurvePicker") + self.gridLayout.addWidget(self.easingCurvePicker, 0, 0, 1, 2) + self.verticalLayout = QtWidgets.QVBoxLayout() + self.verticalLayout.setObjectName("verticalLayout") + self.groupBox_2 = QtWidgets.QGroupBox(Form) + self.groupBox_2.setMaximumSize(QtCore.QSize(16777215, 16777215)) + self.groupBox_2.setObjectName("groupBox_2") + self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox_2) + self.gridLayout_2.setObjectName("gridLayout_2") + self.lineRadio = QtWidgets.QRadioButton(self.groupBox_2) + self.lineRadio.setMaximumSize(QtCore.QSize(16777215, 40)) + self.lineRadio.setLayoutDirection(QtCore.Qt.LeftToRight) + self.lineRadio.setChecked(True) + self.lineRadio.setObjectName("lineRadio") + self.buttonGroup = QtWidgets.QButtonGroup(Form) + self.buttonGroup.setObjectName("buttonGroup") + self.buttonGroup.addButton(self.lineRadio) + self.gridLayout_2.addWidget(self.lineRadio, 0, 0, 1, 1) + self.circleRadio = QtWidgets.QRadioButton(self.groupBox_2) + self.circleRadio.setMaximumSize(QtCore.QSize(16777215, 40)) + self.circleRadio.setObjectName("circleRadio") + self.buttonGroup.addButton(self.circleRadio) + self.gridLayout_2.addWidget(self.circleRadio, 1, 0, 1, 1) + self.verticalLayout.addWidget(self.groupBox_2) + self.groupBox = QtWidgets.QGroupBox(Form) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.groupBox.sizePolicy().hasHeightForWidth()) + self.groupBox.setSizePolicy(sizePolicy) + self.groupBox.setObjectName("groupBox") + self.formLayout = QtWidgets.QFormLayout(self.groupBox) + self.formLayout.setFieldGrowthPolicy(QtWidgets.QFormLayout.AllNonFixedFieldsGrow) + self.formLayout.setObjectName("formLayout") + self.label = QtWidgets.QLabel(self.groupBox) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label.sizePolicy().hasHeightForWidth()) + self.label.setSizePolicy(sizePolicy) + self.label.setMinimumSize(QtCore.QSize(0, 30)) + self.label.setObjectName("label") + self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.label) + self.periodSpinBox = QtWidgets.QDoubleSpinBox(self.groupBox) + self.periodSpinBox.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.periodSpinBox.sizePolicy().hasHeightForWidth()) + self.periodSpinBox.setSizePolicy(sizePolicy) + self.periodSpinBox.setMinimumSize(QtCore.QSize(0, 30)) + self.periodSpinBox.setMinimum(-1.0) + self.periodSpinBox.setSingleStep(0.1) + self.periodSpinBox.setProperty("value", -1.0) + self.periodSpinBox.setObjectName("periodSpinBox") + self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.periodSpinBox) + self.amplitudeSpinBox = QtWidgets.QDoubleSpinBox(self.groupBox) + self.amplitudeSpinBox.setEnabled(False) + self.amplitudeSpinBox.setMinimumSize(QtCore.QSize(0, 30)) + self.amplitudeSpinBox.setMinimum(-1.0) + self.amplitudeSpinBox.setSingleStep(0.1) + self.amplitudeSpinBox.setProperty("value", -1.0) + self.amplitudeSpinBox.setObjectName("amplitudeSpinBox") + self.formLayout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.amplitudeSpinBox) + self.label_3 = QtWidgets.QLabel(self.groupBox) + self.label_3.setMinimumSize(QtCore.QSize(0, 30)) + self.label_3.setObjectName("label_3") + self.formLayout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.label_3) + self.overshootSpinBox = QtWidgets.QDoubleSpinBox(self.groupBox) + self.overshootSpinBox.setEnabled(False) + self.overshootSpinBox.setMinimumSize(QtCore.QSize(0, 30)) + self.overshootSpinBox.setMinimum(-1.0) + self.overshootSpinBox.setSingleStep(0.1) + self.overshootSpinBox.setProperty("value", -1.0) + self.overshootSpinBox.setObjectName("overshootSpinBox") + self.formLayout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.overshootSpinBox) + self.label_2 = QtWidgets.QLabel(self.groupBox) + self.label_2.setMinimumSize(QtCore.QSize(0, 30)) + self.label_2.setObjectName("label_2") + self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.label_2) + self.verticalLayout.addWidget(self.groupBox) + spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) + self.verticalLayout.addItem(spacerItem) + self.gridLayout.addLayout(self.verticalLayout, 1, 0, 1, 1) + self.graphicsView = QtWidgets.QGraphicsView(Form) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.graphicsView.sizePolicy().hasHeightForWidth()) + self.graphicsView.setSizePolicy(sizePolicy) + self.graphicsView.setObjectName("graphicsView") + self.gridLayout.addWidget(self.graphicsView, 1, 1, 1, 1) + + self.retranslateUi(Form) + QtCore.QMetaObject.connectSlotsByName(Form) + + def retranslateUi(self, Form): + _translate = QtCore.QCoreApplication.translate + Form.setWindowTitle(_translate("Form", "Easing curves")) + self.groupBox_2.setTitle(_translate("Form", "Path type")) + self.lineRadio.setText(_translate("Form", "Line")) + self.circleRadio.setText(_translate("Form", "Circle")) + self.groupBox.setTitle(_translate("Form", "Properties")) + self.label.setText(_translate("Form", "Period")) + self.label_3.setText(_translate("Form", "Overshoot")) + self.label_2.setText(_translate("Form", "Amplitude")) + diff --git a/examples/animation/moveblocks.py b/examples/animation/moveblocks.py new file mode 100755 index 0000000..6e58c67 --- /dev/null +++ b/examples/animation/moveblocks.py @@ -0,0 +1,233 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (QAbstractTransition, QEasingCurve, QEvent, + QParallelAnimationGroup, QPropertyAnimation, qrand, QRect, + QSequentialAnimationGroup, qsrand, QState, QStateMachine, Qt, QTime, + QTimer) +from PyQt5.QtWidgets import (QApplication, QGraphicsScene, QGraphicsView, + QGraphicsWidget) + + +class StateSwitchEvent(QEvent): + StateSwitchType = QEvent.User + 256 + + def __init__(self, rand=0): + super(StateSwitchEvent, self).__init__(StateSwitchEvent.StateSwitchType) + + self.m_rand = rand + + def rand(self): + return self.m_rand + + +class QGraphicsRectWidget(QGraphicsWidget): + def paint(self, painter, option, widget): + painter.fillRect(self.rect(), Qt.blue) + + +class StateSwitchTransition(QAbstractTransition): + def __init__(self, rand): + super(StateSwitchTransition, self).__init__() + + self.m_rand = rand + + def eventTest(self, event): + return (event.type() == StateSwitchEvent.StateSwitchType and + event.rand() == self.m_rand) + + def onTransition(self, event): + pass + + +class StateSwitcher(QState): + def __init__(self, machine): + super(StateSwitcher, self).__init__(machine) + + self.m_stateCount = 0 + self.m_lastIndex = 0 + + def onEntry(self, event): + n = qrand() % self.m_stateCount + 1 + while n == self.m_lastIndex: + n = qrand() % self.m_stateCount + 1 + + self.m_lastIndex = n + self.machine().postEvent(StateSwitchEvent(n)) + + def onExit(self, event): + pass + + def addState(self, state, animation): + self.m_stateCount += 1 + trans = StateSwitchTransition(self.m_stateCount) + trans.setTargetState(state) + self.addTransition(trans) + trans.addAnimation(animation) + + +def createGeometryState(w1, rect1, w2, rect2, w3, rect3, w4, rect4, parent): + result = QState(parent) + + result.assignProperty(w1, 'geometry', rect1) + result.assignProperty(w1, 'geometry', rect1) + result.assignProperty(w2, 'geometry', rect2) + result.assignProperty(w3, 'geometry', rect3) + result.assignProperty(w4, 'geometry', rect4) + + return result + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + button1 = QGraphicsRectWidget() + button2 = QGraphicsRectWidget() + button3 = QGraphicsRectWidget() + button4 = QGraphicsRectWidget() + button2.setZValue(1) + button3.setZValue(2) + button4.setZValue(3) + + scene = QGraphicsScene(0, 0, 300, 300) + scene.setBackgroundBrush(Qt.black) + scene.addItem(button1) + scene.addItem(button2) + scene.addItem(button3) + scene.addItem(button4) + + window = QGraphicsView(scene) + window.setFrameStyle(0) + window.setAlignment(Qt.AlignLeft | Qt.AlignTop) + window.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) + window.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff) + + machine = QStateMachine() + + group = QState() + timer = QTimer() + timer.setInterval(1250) + timer.setSingleShot(True) + group.entered.connect(timer.start) + + state1 = createGeometryState(button1, QRect(100, 0, 50, 50), button2, + QRect(150, 0, 50, 50), button3, QRect(200, 0, 50, 50), button4, + QRect(250, 0, 50, 50), group) + + state2 = createGeometryState(button1, QRect(250, 100, 50, 50), button2, + QRect(250, 150, 50, 50), button3, QRect(250, 200, 50, 50), button4, + QRect(250, 250, 50, 50), group) + + state3 = createGeometryState(button1, QRect(150, 250, 50, 50), button2, + QRect(100, 250, 50, 50), button3, QRect(50, 250, 50, 50), button4, + QRect(0, 250, 50, 50), group) + + state4 = createGeometryState(button1, QRect(0, 150, 50, 50), button2, + QRect(0, 100, 50, 50), button3, QRect(0, 50, 50, 50), button4, + QRect(0, 0, 50, 50), group) + + state5 = createGeometryState(button1, QRect(100, 100, 50, 50), button2, + QRect(150, 100, 50, 50), button3, QRect(100, 150, 50, 50), button4, + QRect(150, 150, 50, 50), group) + + state6 = createGeometryState(button1, QRect(50, 50, 50, 50), button2, + QRect(200, 50, 50, 50), button3, QRect(50, 200, 50, 50), button4, + QRect(200, 200, 50, 50), group) + + state7 = createGeometryState(button1, QRect(0, 0, 50, 50), button2, + QRect(250, 0, 50, 50), button3, QRect(0, 250, 50, 50), button4, + QRect(250, 250, 50, 50), group) + + group.setInitialState(state1) + + animationGroup = QParallelAnimationGroup() + anim = QPropertyAnimation(button4, b'geometry') + anim.setDuration(1000) + anim.setEasingCurve(QEasingCurve.OutElastic) + animationGroup.addAnimation(anim) + + subGroup = QSequentialAnimationGroup(animationGroup) + subGroup.addPause(100) + anim = QPropertyAnimation(button3, b'geometry') + anim.setDuration(1000) + anim.setEasingCurve(QEasingCurve.OutElastic) + subGroup.addAnimation(anim) + + subGroup = QSequentialAnimationGroup(animationGroup) + subGroup.addPause(150) + anim = QPropertyAnimation(button2, b'geometry') + anim.setDuration(1000) + anim.setEasingCurve(QEasingCurve.OutElastic) + subGroup.addAnimation(anim) + + subGroup = QSequentialAnimationGroup(animationGroup) + subGroup.addPause(200) + anim = QPropertyAnimation(button1, b'geometry') + anim.setDuration(1000) + anim.setEasingCurve(QEasingCurve.OutElastic) + subGroup.addAnimation(anim) + + stateSwitcher = StateSwitcher(machine) + group.addTransition(timer.timeout, stateSwitcher) + stateSwitcher.addState(state1, animationGroup) + stateSwitcher.addState(state2, animationGroup) + stateSwitcher.addState(state3, animationGroup) + stateSwitcher.addState(state4, animationGroup) + stateSwitcher.addState(state5, animationGroup) + stateSwitcher.addState(state6, animationGroup) + stateSwitcher.addState(state7, animationGroup) + + machine.addState(group) + machine.setInitialState(group) + machine.start() + + window.resize(300, 300) + window.show() + + qsrand(QTime(0, 0, 0).secsTo(QTime.currentTime())) + + sys.exit(app.exec_()) diff --git a/examples/animation/states/accessories-dictionary.png b/examples/animation/states/accessories-dictionary.png new file mode 100644 index 0000000000000000000000000000000000000000..e9bd55d918166d85d986bf19b1cda78a1ac5e05d GIT binary patch literal 5396 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%0D6n<2k3-2LA6Av9Zn+fdKaQ6H6wi9tjL}3 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%0De-C*1|18U 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 JPDHLkV1g{K>iGZw literal 0 HcmV?d00001 diff --git a/examples/animation/states/states.py b/examples/animation/states/states.py new file mode 100755 index 0000000..bdcc8c9 --- /dev/null +++ b/examples/animation/states/states.py @@ -0,0 +1,272 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (QPointF, QPropertyAnimation, QRect, QRectF, + QSequentialAnimationGroup, QSizeF, QState, QStateMachine, Qt) +from PyQt5.QtGui import QPixmap +from PyQt5.QtWidgets import (QApplication, QGraphicsLinearLayout, + QGraphicsObject, QGraphicsProxyWidget, QGraphicsScene, QGraphicsView, + QGraphicsWidget, QGroupBox, QPushButton, QRadioButton, QTextEdit, + QVBoxLayout) + +import states_rc + + +class Pixmap(QGraphicsObject): + def __init__(self, pix): + super(Pixmap, self).__init__() + + self.p = QPixmap(pix) + + def paint(self, painter, option, widget): + painter.drawPixmap(QPointF(), self.p) + + def boundingRect(self): + return QRectF(QPointF(0, 0), QSizeF(self.p.size())) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + # Text edit and button. + edit = QTextEdit() + edit.setText("asdf lkjha yuoiqwe asd iuaysd u iasyd uiy " + "asdf lkjha yuoiqwe asd iuaysd u iasyd uiy " + "asdf lkjha yuoiqwe asd iuaysd u iasyd uiy " + "asdf lkjha yuoiqwe asd iuaysd u iasyd uiy!") + + button = QPushButton() + buttonProxy = QGraphicsProxyWidget() + buttonProxy.setWidget(button) + editProxy = QGraphicsProxyWidget() + editProxy.setWidget(edit) + + box = QGroupBox() + box.setFlat(True) + box.setTitle("Options") + + layout2 = QVBoxLayout() + box.setLayout(layout2) + layout2.addWidget(QRadioButton("Herring")) + layout2.addWidget(QRadioButton("Blue Parrot")) + layout2.addWidget(QRadioButton("Petunias")) + layout2.addStretch() + + boxProxy = QGraphicsProxyWidget() + boxProxy.setWidget(box) + + # Parent widget. + widget = QGraphicsWidget() + layout = QGraphicsLinearLayout(Qt.Vertical, widget) + layout.addItem(editProxy) + layout.addItem(buttonProxy) + widget.setLayout(layout) + + p1 = Pixmap(QPixmap(':/digikam.png')) + p2 = Pixmap(QPixmap(':/akregator.png')) + p3 = Pixmap(QPixmap(':/accessories-dictionary.png')) + p4 = Pixmap(QPixmap(':/k3b.png')) + p5 = Pixmap(QPixmap(':/help-browser.png')) + p6 = Pixmap(QPixmap(':/kchart.png')) + + scene = QGraphicsScene(0, 0, 400, 300) + scene.setBackgroundBrush(scene.palette().window()) + scene.addItem(widget) + scene.addItem(boxProxy) + scene.addItem(p1) + scene.addItem(p2) + scene.addItem(p3) + scene.addItem(p4) + scene.addItem(p5) + scene.addItem(p6) + + machine = QStateMachine() + state1 = QState(machine) + state2 = QState(machine) + state3 = QState(machine) + machine.setInitialState(state1) + + # State 1. + state1.assignProperty(button, 'text', "Switch to state 2") + state1.assignProperty(widget, 'geometry', QRectF(0, 0, 400, 150)) + state1.assignProperty(box, 'geometry', QRect(-200, 150, 200, 150)) + state1.assignProperty(p1, 'pos', QPointF(68, 185)) + state1.assignProperty(p2, 'pos', QPointF(168, 185)) + state1.assignProperty(p3, 'pos', QPointF(268, 185)) + state1.assignProperty(p4, 'pos', QPointF(68 - 150, 48 - 150)) + state1.assignProperty(p5, 'pos', QPointF(168, 48 - 150)) + state1.assignProperty(p6, 'pos', QPointF(268 + 150, 48 - 150)) + state1.assignProperty(p1, 'rotation', 0.0) + state1.assignProperty(p2, 'rotation', 0.0) + state1.assignProperty(p3, 'rotation', 0.0) + state1.assignProperty(p4, 'rotation', -270.0) + state1.assignProperty(p5, 'rotation', -90.0) + state1.assignProperty(p6, 'rotation', 270.0) + state1.assignProperty(boxProxy, 'opacity', 0.0) + state1.assignProperty(p1, 'opacity', 1.0) + state1.assignProperty(p2, 'opacity', 1.0) + state1.assignProperty(p3, 'opacity', 1.0) + state1.assignProperty(p4, 'opacity', 0.0) + state1.assignProperty(p5, 'opacity', 0.0) + state1.assignProperty(p6, 'opacity', 0.0) + + # State 2. + state2.assignProperty(button, 'text', "Switch to state 3") + state2.assignProperty(widget, 'geometry', QRectF(200, 150, 200, 150)) + state2.assignProperty(box, 'geometry', QRect(9, 150, 190, 150)) + state2.assignProperty(p1, 'pos', QPointF(68 - 150, 185 + 150)) + state2.assignProperty(p2, 'pos', QPointF(168, 185 + 150)) + state2.assignProperty(p3, 'pos', QPointF(268 + 150, 185 + 150)) + state2.assignProperty(p4, 'pos', QPointF(64, 48)) + state2.assignProperty(p5, 'pos', QPointF(168, 48)) + state2.assignProperty(p6, 'pos', QPointF(268, 48)) + state2.assignProperty(p1, 'rotation', -270.0) + state2.assignProperty(p2, 'rotation', 90.0) + state2.assignProperty(p3, 'rotation', 270.0) + state2.assignProperty(p4, 'rotation', 0.0) + state2.assignProperty(p5, 'rotation', 0.0) + state2.assignProperty(p6, 'rotation', 0.0) + state2.assignProperty(boxProxy, 'opacity', 1.0) + state2.assignProperty(p1, 'opacity', 0.0) + state2.assignProperty(p2, 'opacity', 0.0) + state2.assignProperty(p3, 'opacity', 0.0) + state2.assignProperty(p4, 'opacity', 1.0) + state2.assignProperty(p5, 'opacity', 1.0) + state2.assignProperty(p6, 'opacity', 1.0) + + # State 3. + state3.assignProperty(button, 'text', "Switch to state 1") + state3.assignProperty(p1, 'pos', QPointF(0, 5)) + state3.assignProperty(p2, 'pos', QPointF(0, 5 + 64 + 5)) + state3.assignProperty(p3, 'pos', QPointF(5, 5 + (64 + 5) + 64)) + state3.assignProperty(p4, 'pos', QPointF(5 + 64 + 5, 5)) + state3.assignProperty(p5, 'pos', QPointF(5 + 64 + 5, 5 + 64 + 5)) + state3.assignProperty(p6, 'pos', QPointF(5 + 64 + 5, 5 + (64 + 5) + 64)) + state3.assignProperty(widget, 'geometry', QRectF(138, 5, 400 - 138, 200)) + state3.assignProperty(box, 'geometry', QRect(5, 205, 400, 90)) + state3.assignProperty(p1, 'opacity', 1.0) + state3.assignProperty(p2, 'opacity', 1.0) + state3.assignProperty(p3, 'opacity', 1.0) + state3.assignProperty(p4, 'opacity', 1.0) + state3.assignProperty(p5, 'opacity', 1.0) + state3.assignProperty(p6, 'opacity', 1.0) + + t1 = state1.addTransition(button.clicked, state2) + animation1SubGroup = QSequentialAnimationGroup() + animation1SubGroup.addPause(250) + animation1SubGroup.addAnimation(QPropertyAnimation(box, b'geometry', state1)) + t1.addAnimation(animation1SubGroup) + t1.addAnimation(QPropertyAnimation(widget, b'geometry', state1)) + t1.addAnimation(QPropertyAnimation(p1, b'pos', state1)) + t1.addAnimation(QPropertyAnimation(p2, b'pos', state1)) + t1.addAnimation(QPropertyAnimation(p3, b'pos', state1)) + t1.addAnimation(QPropertyAnimation(p4, b'pos', state1)) + t1.addAnimation(QPropertyAnimation(p5, b'pos', state1)) + t1.addAnimation(QPropertyAnimation(p6, b'pos', state1)) + t1.addAnimation(QPropertyAnimation(p1, b'rotation', state1)) + t1.addAnimation(QPropertyAnimation(p2, b'rotation', state1)) + t1.addAnimation(QPropertyAnimation(p3, b'rotation', state1)) + t1.addAnimation(QPropertyAnimation(p4, b'rotation', state1)) + t1.addAnimation(QPropertyAnimation(p5, b'rotation', state1)) + t1.addAnimation(QPropertyAnimation(p6, b'rotation', state1)) + t1.addAnimation(QPropertyAnimation(p1, b'opacity', state1)) + t1.addAnimation(QPropertyAnimation(p2, b'opacity', state1)) + t1.addAnimation(QPropertyAnimation(p3, b'opacity', state1)) + t1.addAnimation(QPropertyAnimation(p4, b'opacity', state1)) + t1.addAnimation(QPropertyAnimation(p5, b'opacity', state1)) + t1.addAnimation(QPropertyAnimation(p6, b'opacity', state1)) + + t2 = state2.addTransition(button.clicked, state3) + t2.addAnimation(QPropertyAnimation(box, b'geometry', state2)) + t2.addAnimation(QPropertyAnimation(widget, b'geometry', state2)) + t2.addAnimation(QPropertyAnimation(p1, b'pos', state2)) + t2.addAnimation(QPropertyAnimation(p2, b'pos', state2)) + t2.addAnimation(QPropertyAnimation(p3, b'pos', state2)) + t2.addAnimation(QPropertyAnimation(p4, b'pos', state2)) + t2.addAnimation(QPropertyAnimation(p5, b'pos', state2)) + t2.addAnimation(QPropertyAnimation(p6, b'pos', state2)) + t2.addAnimation(QPropertyAnimation(p1, b'rotation', state2)) + t2.addAnimation(QPropertyAnimation(p2, b'rotation', state2)) + t2.addAnimation(QPropertyAnimation(p3, b'rotation', state2)) + t2.addAnimation(QPropertyAnimation(p4, b'rotation', state2)) + t2.addAnimation(QPropertyAnimation(p5, b'rotation', state2)) + t2.addAnimation(QPropertyAnimation(p6, b'rotation', state2)) + t2.addAnimation(QPropertyAnimation(p1, b'opacity', state2)) + t2.addAnimation(QPropertyAnimation(p2, b'opacity', state2)) + t2.addAnimation(QPropertyAnimation(p3, b'opacity', state2)) + t2.addAnimation(QPropertyAnimation(p4, b'opacity', state2)) + t2.addAnimation(QPropertyAnimation(p5, b'opacity', state2)) + t2.addAnimation(QPropertyAnimation(p6, b'opacity', state2)) + + t3 = state3.addTransition(button.clicked, state1) + t3.addAnimation(QPropertyAnimation(box, b'geometry', state3)) + t3.addAnimation(QPropertyAnimation(widget, b'geometry', state3)) + t3.addAnimation(QPropertyAnimation(p1, b'pos', state3)) + t3.addAnimation(QPropertyAnimation(p2, b'pos', state3)) + t3.addAnimation(QPropertyAnimation(p3, b'pos', state3)) + t3.addAnimation(QPropertyAnimation(p4, b'pos', state3)) + t3.addAnimation(QPropertyAnimation(p5, b'pos', state3)) + t3.addAnimation(QPropertyAnimation(p6, b'pos', state3)) + t3.addAnimation(QPropertyAnimation(p1, b'rotation', state3)) + t3.addAnimation(QPropertyAnimation(p2, b'rotation', state3)) + t3.addAnimation(QPropertyAnimation(p3, b'rotation', state3)) + t3.addAnimation(QPropertyAnimation(p4, b'rotation', state3)) + t3.addAnimation(QPropertyAnimation(p5, b'rotation', state3)) + t3.addAnimation(QPropertyAnimation(p6, b'rotation', state3)) + t3.addAnimation(QPropertyAnimation(p1, b'opacity', state3)) + t3.addAnimation(QPropertyAnimation(p2, b'opacity', state3)) + t3.addAnimation(QPropertyAnimation(p3, b'opacity', state3)) + t3.addAnimation(QPropertyAnimation(p4, b'opacity', state3)) + t3.addAnimation(QPropertyAnimation(p5, b'opacity', state3)) + t3.addAnimation(QPropertyAnimation(p6, b'opacity', state3)) + + machine.start() + + view = QGraphicsView(scene) + view.show() + + sys.exit(app.exec_()) diff --git a/examples/animation/states/states.qrc b/examples/animation/states/states.qrc new file mode 100644 index 0000000..60ab3f7 --- /dev/null +++ b/examples/animation/states/states.qrc @@ -0,0 +1,10 @@ + + + accessories-dictionary.png + akregator.png + digikam.png + help-browser.png + k3b.png + kchart.png + + diff --git a/examples/animation/states/states_rc.py b/examples/animation/states/states_rc.py new file mode 100644 index 0000000..cdf5db3 --- /dev/null +++ b/examples/animation/states/states_rc.py @@ -0,0 +1,2180 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Thu May 2 17:13:38 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x15\x14\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\ +\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\ +\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x06\xec\x00\x00\x06\xec\ +\x01\x1e\x75\x38\x35\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\ +\x74\x77\x61\x72\x65\x00\x77\x77\x77\x2e\x69\x6e\x6b\x73\x63\x61\ +\x70\x65\x2e\x6f\x72\x67\x9b\xee\x3c\x1a\x00\x00\x14\x91\x49\x44\ +\x41\x54\x78\xda\xe5\x5b\x79\x8c\x64\xc5\x7d\xfe\xbd\xa3\x8f\xe9\ +\xee\x39\x76\xa6\x97\xdd\xb9\x96\x3d\x66\x61\xef\x05\x61\x6c\xae\ +\xa0\x38\xb6\x20\x4e\x2c\x22\x27\x32\x09\x92\x0f\x14\x20\xc6\x81\ +\x18\x84\x92\x08\x59\x8a\x30\x7f\x18\x04\x09\xe0\xf8\x08\x47\x24\ +\xa2\x24\x76\x14\x9b\x80\xf3\x4f\x0e\x27\x86\x80\xc3\x61\x60\x31\ +\xe6\xb0\x21\xbb\xec\xb2\xf7\xce\xf4\x4c\xcf\xf4\xdd\xfd\xae\xaa\ +\x7c\xbf\x7a\x5d\xf3\xfa\x98\x49\xef\xb4\x90\x65\x29\x65\x7d\x54\ +\xbd\x7a\x47\xd7\xf7\xbb\xab\x66\x6d\x48\x29\xe9\xff\x73\xb3\xe9\ +\x97\xb8\xbd\x74\xed\xb5\x03\x9e\xeb\x66\x09\xf0\x84\x18\x23\xe9\ +\x67\xa5\x2f\xb3\x42\x88\xac\x14\x18\x63\x4e\x04\x22\x2d\xfd\xe0\ +\xdf\x7f\xf3\x95\x57\xfe\x8a\xfa\x68\xbf\x30\x0b\x78\xef\x4b\x5f\ +\x4a\x54\x3d\x2f\xeb\x48\x37\x6b\xf8\x41\x96\x04\x88\x04\x04\x02\ +\x41\x56\x92\xc8\x52\x20\x43\x52\x52\x8c\xc9\x40\xe0\x9e\x60\x82\ +\x29\x89\x87\x70\x4d\x18\x87\x08\x02\x12\xd1\xb8\xd9\x8b\xc6\x46\ +\x21\x86\x2e\x3a\x70\xc0\xfb\x85\x58\xc0\xcf\xef\xbe\x3b\x6e\xd5\ +\x6a\x59\xd7\xf3\xc6\x4c\xc3\xc8\x0a\x62\x12\x06\x2f\x18\x3d\x8d\ +\x19\x22\xc8\x0a\x49\x59\x92\x4c\x42\x86\x7d\x20\xd3\x20\x47\x06\ +\x6e\xa0\x03\xd0\xf3\x80\x00\x26\x21\x19\x12\x64\x00\xdc\x23\xd9\ +\x84\x7a\xae\x1d\xb4\x0c\xd2\x73\xc9\x63\x52\xee\xbc\x88\xe8\xcd\ +\x0f\x44\x00\xef\xdc\x79\xe7\xed\xe5\xb8\xbd\x29\x79\xe2\xe4\x88\ +\xb1\x6e\x24\x26\x0d\xca\x1a\x64\x8c\x11\x48\x12\x49\x80\x06\x7d\ +\xe2\x26\xa1\x38\xee\x42\x32\x7a\x61\x22\xec\x43\xed\xf0\x98\xfb\ +\xe6\x75\x04\xb9\x32\xa4\x86\x88\xde\xd7\x08\xaf\x43\x88\xf6\xdf\ +\x34\xa4\x7f\x01\x7d\x10\x02\x78\xec\xc2\x0b\xbf\x72\xc5\x95\x97\ +\xdf\xe5\x98\x43\x94\x1a\x18\xa0\x40\x88\x90\xaa\xc1\xff\x55\xff\ +\xa1\x50\xf4\x7a\x28\xc3\x61\xa4\x9d\x88\x74\x34\x56\xef\x5a\xa9\ +\x34\x05\x8d\x3a\x5c\x99\xcd\xda\x65\x33\x50\x30\x63\x36\xe6\x1b\ +\xe1\xb5\xd0\xc4\xf1\x46\x32\x41\xa4\x85\x55\xa9\xb4\x0b\xa3\xc3\ +\x2a\x84\x30\x2e\x30\x0c\xe3\xef\x25\x5a\x5f\x02\x30\xd0\xee\x98\ +\x9e\x4e\xce\x0c\x0f\xdf\x5e\x2f\x95\xa9\x54\x2c\x53\x76\x7c\x9c\ +\xfc\x72\x89\xc8\x34\x69\xb5\x66\x26\x12\x24\xea\xf5\x48\x10\xe1\ +\xe2\x99\x8c\xd6\x54\x48\xcc\x60\x01\x0c\xa0\xc7\x3b\x98\x0b\x6a\ +\xfc\xb2\xa5\xe6\xfc\x5a\x83\xac\xc1\x21\xf4\x35\xb2\x86\x06\xc9\ +\xcd\xcd\x13\xa5\x53\xca\xf7\x85\x03\xc1\x60\x5e\x13\xee\xd6\xbe\ +\xb6\x00\xb1\xbf\xa9\xa1\xb5\x0b\x80\xc9\xf3\x72\x3c\xa2\x6d\x41\ +\x10\x0c\xd7\xf0\x83\x85\xa5\x22\xc5\x76\xee\xa4\x5a\x6e\x8e\xcc\ +\x64\x52\x4b\x49\x6b\x5d\x75\xf1\x6c\x96\xbc\x42\x81\x12\x1b\x36\ +\x52\x50\xad\x84\x6b\xf1\x3d\x32\x62\x31\xe2\x4f\x06\x9e\x47\xd6\ +\x40\x4a\x09\xa8\x31\x3f\xaf\x34\xeb\xd7\x41\x36\x99\xc4\x3b\x1b\ +\xc8\xc9\xe5\x48\xb2\x65\xc0\xd2\xbc\x7a\x95\xc8\x32\xc9\xaf\xd6\ +\xc8\x84\x50\x02\xd7\xa3\x00\xe4\xf9\x5d\xe9\xba\x91\xf6\x05\xf7\ +\x1d\xae\x80\x1e\x2a\xda\xcb\x2b\xec\xd7\x05\x0c\x20\x31\x57\xaf\ +\xaf\x9f\x49\xa5\xa8\x86\x1f\x75\xaa\x55\xb2\x86\x47\x28\x60\xe9\ +\xc7\xe2\x78\xa2\xfd\xeb\x12\x30\x2c\x1b\x8b\x74\x48\xb8\x0e\x34\ +\x08\xcd\x2d\x2c\x28\x72\x36\xb4\xe9\x2c\x2e\xc2\xb4\xe3\xea\x9e\ +\xa4\xd0\xff\xb5\x00\xdd\xa5\x25\x08\x6e\x89\x04\x5c\x21\x58\x2a\ +\x34\x4d\xbe\x33\x3e\x04\xaa\x27\xdb\xc2\x37\xbc\xe8\x9e\xd4\x71\ +\xa5\x45\x18\x00\xfe\xb3\xfe\x9b\xdb\xb7\x8f\x43\xf0\xa7\xd6\xe2\ +\x06\x76\x53\xfb\x16\x90\x2e\x04\xc1\x04\x07\xb0\x06\xfc\x31\x33\ +\x98\x21\x7b\xdd\x08\x49\x98\xa7\x1c\x0c\x34\xe9\xb6\xe6\x2c\xcc\ +\x2b\xc2\x0d\x68\xd2\x4a\x24\x95\x86\xdc\x52\x99\x4d\x5b\x49\xab\ +\x7e\xfa\x54\x4b\x1c\x90\x54\x3b\x71\x42\xbb\x84\x26\xda\x41\x5e\ +\x32\xda\xef\x35\x7c\xfd\x8d\x2e\x17\x00\xda\x2c\x63\x90\x88\x03\ +\xe1\xa9\x7e\x2c\xc0\x04\x52\xae\x54\x45\x06\x39\x8e\x4b\xe7\x6c\ +\x9f\x21\xd7\x07\x71\x19\xe6\xdb\x95\x4c\xc0\x87\x95\xe8\x00\x28\ +\x3c\x8f\x47\xa1\x99\x57\xca\xad\x01\x31\x22\x2d\x23\x82\x3a\x4b\ +\x44\x02\x88\xae\x89\xc1\xf9\xde\xf7\x29\xf0\xb9\xf7\xd4\xd8\xc7\ +\x98\x94\xba\x2c\x32\x01\xb8\x5a\x28\x6c\xdc\x93\x58\x0b\xc8\xec\ +\xc3\xdd\x7f\xe9\x57\x00\x31\x43\xca\x14\x2f\xd2\x81\xcf\x4d\xcf\ +\x6c\xa3\xea\x7c\x8e\xcc\x78\x3c\x5c\x54\x77\xd3\xe4\xa3\x6c\xa0\ +\x53\x22\xe9\x34\x18\x09\x81\x05\x20\x02\xc1\x71\x21\x04\x2f\x1a\ +\x40\xaf\x82\xac\x61\x59\x80\x0d\x60\x8c\xdf\x34\x6c\x9b\x6c\xcc\ +\xc7\x00\xa4\x60\xf0\xe4\x9e\xf8\x79\x95\x31\x82\x3a\xe0\x38\xe1\ +\x98\xdd\x8c\xb3\x89\x94\xfb\x74\x20\xec\x27\x0d\x9a\xf0\xd1\x18\ +\x2f\xd6\xf3\x7c\x15\x7c\x2a\xe5\x1a\x0d\x20\x1a\x3b\xda\x02\xba\ +\x9a\x04\x09\x90\x0a\x3c\x28\xc1\x67\x2b\x08\xb5\x16\x04\x4c\x46\ +\x91\xb0\x00\xee\xc9\x8e\x21\x63\x58\xb8\xb6\xe0\xd6\x36\x00\xc2\ +\x26\x60\x19\xca\xc7\x03\xfc\x9e\xd0\x84\x18\xd0\xa8\xaf\x2d\xa4\ +\x37\x94\x0b\x58\x3a\x10\xf6\x15\x04\x81\x79\xdf\x2f\xa2\x57\x64\ +\x3c\x04\xb1\x52\xb5\x4e\x83\x08\x84\x8d\xc5\x3c\xd5\x0a\x45\x12\ +\x2c\xa5\x78\x8c\x4d\x4f\x59\x86\x65\xa1\xcf\xc4\xc8\x42\xb0\x8b\ +\xc7\x98\x5c\x1c\x81\x2f\xd4\xa2\x6c\x92\x11\x8a\x90\x43\x3e\x7a\ +\x59\x87\x90\x9a\xe6\xee\xb7\xb9\x40\x38\xa6\x68\xdc\x01\xd9\x1b\ +\x52\x32\x89\xed\x9f\xdb\xb0\x21\x89\xb0\x56\x93\x68\x6b\x2e\x84\ +\xde\xaf\xd7\x17\xf1\x96\xd2\x60\xad\x5c\xa6\x42\x2e\x4f\xe7\x5e\ +\x3c\x4d\xf2\xd4\x29\x1a\xdb\xb5\x8b\xcd\x34\x24\xa5\xc9\xb9\x0e\ +\x08\x42\x73\x24\x55\x40\xf6\xa8\xc5\x0d\x80\xee\x9e\xc9\x74\x8e\ +\x55\xdf\x4d\x3e\x22\x06\x88\xff\x1b\x62\x19\xb1\xcb\xe2\xf1\xdd\ +\x7f\x47\xf4\x6a\x3f\x2e\x20\xab\x41\xe0\xba\x42\xa0\x0b\xd2\xb5\ +\x5a\x9d\x4a\x88\xee\xf6\xc8\x88\xd2\x62\xf5\xd8\x51\x8a\x9a\xe2\ +\xd4\x51\x15\x46\xe4\x69\x45\x41\x88\x96\xba\xbe\x83\xb0\x5c\x51\ +\x00\x6d\xe4\x68\x19\xb2\x1b\x32\x42\xd2\x90\xfb\xa9\x0f\x01\x48\ +\x40\x00\x7e\x2d\x08\x0a\x83\x42\xa4\x51\x0b\xf0\x02\xb8\x16\x50\ +\x5a\x36\x06\x92\xd4\x91\x06\xda\x3b\x29\xb5\x30\x34\xe9\xae\x80\ +\xa8\x02\x2c\x4a\xda\x0a\xfc\x7b\xdd\xd8\xd8\xea\xfb\x85\x8e\x31\ +\x45\xa6\xde\x91\x39\xba\x61\x0a\xc4\x81\x35\x34\xb3\x85\x8d\x0f\ +\x78\x2c\x00\x5d\x0b\xf0\x22\x25\x07\x31\x21\x9b\x5b\xd2\x20\x44\ +\xc0\x10\xcb\x73\x22\xda\x96\x02\x3c\x0e\xaf\x45\x73\x4e\x00\x7c\ +\x5d\x02\xf9\xe9\xcf\x5f\x4f\x57\x3d\xf1\x4f\x3d\x82\x5a\x07\xf9\ +\x88\xb4\x86\x16\x52\x17\x8c\x30\x15\x9a\x6b\xb2\x00\xad\x7d\xc0\ +\xad\x0a\xb1\x14\xd6\x02\x1e\x4d\xef\xdd\x4d\xd5\x85\x79\x15\xf0\ +\x7c\xd1\x91\x09\xb4\xb6\xa3\xb1\x4a\x51\x25\x54\x83\x23\xe7\x9c\ +\xb3\xe2\x26\xe9\x43\xbf\xf3\xdb\x34\x75\xc3\x0d\x61\x4e\xe7\x32\ +\xd9\x30\x75\x31\x13\x91\x6d\x89\x0d\xb4\x7a\xb1\xc4\x58\xd9\x02\ +\xa4\x54\x99\xa0\x1f\x0b\xf0\x00\xa7\xe4\xfb\x0b\x4a\x00\xae\x4b\ +\xe3\x5b\x36\x43\x00\x79\xb2\x32\x19\x12\x5a\xbb\x80\x50\x50\x1a\ +\x6e\x5a\x44\xd8\xdb\xdb\x66\xe8\x23\x7f\xf9\x75\xf2\x38\x40\x0a\ +\xfd\x7c\x84\xc3\xdf\xfd\x2e\xcd\x7e\xff\x29\x32\x6d\x9b\x2b\x47\ +\x6d\x29\xcd\xf7\x57\x44\x37\xf9\xd5\xef\xeb\xc0\x34\x7a\xcf\xc6\ +\x8d\x53\x06\xda\x59\x09\x40\xa2\xb5\xb8\x80\x5b\xf4\xfd\xbc\x4e\ +\x85\x41\xb1\x48\x65\x04\xc2\xf8\xc8\x3a\x6d\xd2\x0a\x32\x22\x17\ +\xb9\x01\xfa\x0b\xef\xb8\x83\x26\x2e\xbb\x8c\xec\x89\xc9\xe5\xc5\ +\x89\x96\xde\x01\xe9\xd2\x1b\x3f\x25\x6e\x89\xb1\x51\x7d\xef\x2c\ +\xd1\xed\x0a\xd1\x39\x41\xd8\x8b\x26\x91\x75\xa6\xb9\xbf\x1f\x0b\ +\x08\x00\x37\x1f\x04\xf3\x4d\x01\xe0\x22\x4f\xc5\x33\x67\x38\x13\ +\x70\x5e\x6f\xd7\xa8\x5e\x8c\xb6\x06\x3c\x9f\xc0\x73\xdc\xce\xbf\ +\xe9\x26\x65\x05\xd1\xf3\x91\x96\x1b\xc7\x4f\x10\xb7\xf4\x94\x12\ +\x92\x16\x60\x6f\xd2\x00\xbb\x4d\x19\xbb\x4f\x07\x75\x48\xd5\x0f\ +\xa8\x5c\xa9\x44\xf7\x23\x22\xaa\x24\xee\x27\x0b\x28\x01\x9c\x74\ +\xdd\x39\x2d\x80\x4a\xa5\x4a\x65\x6c\x63\xed\x4b\x2f\x21\x62\x01\ +\x74\x58\x95\x6c\x19\xc7\xb0\x71\x5a\x78\xe6\x69\x4a\xc2\x5d\x26\ +\x7f\xfd\x13\xf4\xf3\x8d\xe3\x24\x72\xf8\x54\x47\x3d\x50\x9f\x3b\ +\x43\xdc\x52\x9b\x36\x93\xfc\xef\xe7\x95\xf6\x3c\xc7\x51\xd6\x60\ +\x59\x5c\x8c\x1a\x51\x0c\x68\xf1\x7f\xc7\xb2\x69\xc7\xcd\x37\xd3\ +\xf8\xee\xdd\x94\x9a\x9c\xa0\x81\x2d\x5b\xa8\x84\xcd\xd5\x0f\xaf\ +\xba\x5a\x0b\x40\x5b\x00\x7f\xe3\xac\x4b\x62\xb3\x23\x0d\x7a\x67\ +\x1c\x27\x1f\x80\x3f\x2f\x88\x53\x61\x65\x69\x29\xac\x05\x5c\x57\ +\xbb\xc0\x8a\xae\x30\xb8\x65\x2b\x15\x5f\x7f\x8d\xe6\xfe\xfa\x51\ +\xe2\xb6\xeb\xd6\x5b\x61\x05\x4e\x97\x1b\x94\x17\xf2\xaa\x64\x4e\ +\xcf\xcc\x50\x15\x5b\xe1\x7a\x22\x41\x9b\x10\x18\x67\xf0\xfc\xd8\ +\x27\x7e\x83\x8a\xd5\x2a\x07\xd3\xb6\xb8\x20\xd6\x8d\xd2\xd5\x88\ +\x1f\x23\xcf\xfd\x90\xde\xfd\xcc\x75\xf4\xda\xaf\x5e\x49\x87\x2e\ +\xff\x08\xd1\xf3\xcf\x61\xc5\x1e\x2f\x3e\x82\x61\xe8\xb3\x01\x73\ +\x0d\x2e\xd0\x96\x09\x9c\x1a\x4a\x62\x5e\x6c\xbd\x56\x23\x1b\x87\ +\x15\x46\x12\xd0\x64\x3b\xd1\x9c\x1f\xde\xbb\x8f\x6a\xef\x1d\xa6\ +\x93\x67\xe6\x68\xe1\x3f\x7e\x40\x93\x57\x5e\x49\xf1\xe9\xe9\x76\ +\x17\x00\x1c\x69\x50\xf9\xf0\x61\x9a\xfa\xd8\xc7\xe8\x92\xfb\xef\ +\xa7\x5f\xf9\xbd\x6b\x69\x6b\xad\x44\x5b\xb7\x6f\xa3\x2b\xee\xbd\ +\x97\x7e\xf7\xc0\x6b\x14\xdb\xb6\x4d\x93\x57\xc2\xf8\xe8\xe3\x8f\ +\x53\xe1\x1f\xbe\x4d\x07\x7e\xf2\x16\xe5\x92\x69\xca\x25\x52\xf4\ +\xe6\xdc\x22\x3d\xff\xe5\x3f\xa3\xa0\x9d\xbc\xb6\x80\x99\xcf\x8c\ +\x8e\xa6\x0c\xb4\xb5\x08\x40\x67\x02\xb7\x2e\x44\x41\xb0\xbf\xc2\ +\x34\x37\x4c\x4f\x51\x0d\xfb\x02\x2b\x91\xe8\xf6\x51\xf6\xfd\xe6\ +\x31\xf5\xe8\x85\x17\xaa\x78\x11\x90\x41\x73\x8f\x3e\x4c\xdc\xf6\ +\xdc\x76\x1b\x9b\x77\x18\x24\x01\xd9\x44\xf5\xd0\x41\xb2\x90\x5a\ +\xe7\x1f\xf9\x16\x1d\x78\xe4\x51\x7a\xfe\xdb\xff\x48\xaf\xdc\x74\ +\x23\x9d\xbe\xe5\x0b\x14\x1f\x1a\xa2\xab\xbf\xf3\x1d\x92\xc3\xc3\ +\xea\xd9\x91\x7d\xfb\x68\xdd\x79\xe7\xd1\xd1\xe7\x7e\x44\x42\xca\ +\x36\x9f\xaf\x5a\xf6\x32\x79\x11\x92\xd7\xb0\xf6\x0d\x0c\xec\x5e\ +\xab\x05\xc8\x65\x0b\x08\x82\x25\xa1\xb6\xc5\xa8\x05\x76\x9c\x4f\ +\x75\x6c\x86\xec\x74\xba\x4d\xf3\x82\xa1\x83\x97\x65\x71\x90\xc4\ +\xf3\xbe\x9a\x3b\xf2\xde\xfb\x94\x7b\xee\x39\x9a\xb8\xe2\x0a\x4a\ +\x6c\xdd\xd6\x6e\xce\x40\xfd\xbd\xf7\x88\x5b\x11\xd6\xe0\x41\x60\ +\x30\x78\x2a\x26\x53\xf4\xda\x7f\x3e\x43\xb3\x4f\x7c\x8f\xe2\x38\ +\x5d\xda\x7c\xcd\x35\xea\xd9\xb1\xcd\xe7\xaa\xa5\x35\x82\xa0\x8d\ +\xbc\x86\xe8\x20\xaf\x91\x20\xda\xdf\x8f\x0b\x78\x80\x53\x0e\x82\ +\xbc\x3e\x18\xd9\x30\x31\x8e\x54\x38\x4f\x71\xf8\xa1\xce\xfd\xdc\ +\xcb\x65\x04\x34\xb4\x79\x33\x39\x88\xfa\xd6\xf9\xe7\xd3\xf0\x47\ +\x7f\x8d\x36\x7f\xf1\x8b\x94\xda\xba\x95\xb8\xed\xbd\xfd\x76\x58\ +\x41\xa3\xcd\x0d\xea\xcd\x7d\x45\x72\x6a\xaa\xad\x62\x74\x0d\x93\ +\x72\x4f\x3e\x41\x68\xec\x42\x6a\xce\x32\x0d\x15\x40\xd3\xbb\xf7\ +\xa8\x5e\x10\xb5\x41\x76\x93\x57\x73\xb1\x30\x13\x9c\x9d\x0b\xb4\ +\xd6\x02\x5a\x00\xcb\xa9\x90\xb7\xc5\x73\x73\x64\x8f\x8e\xf2\x81\ +\xa7\x2e\x75\x23\x60\x91\x23\xf0\xff\x31\x04\xb5\x8b\x2f\xb9\x98\ +\x76\x0a\x97\xb2\x2f\x3c\x4b\xf9\x9b\x7f\x9f\x4a\xaf\x1d\xa0\x89\ +\xcb\x2f\xa7\xd4\x8e\x9d\xad\x6e\x00\x01\x1c\x0b\x53\x21\x22\x79\ +\xe7\x5f\x7e\x4e\x1f\x3c\x48\xaa\x35\x35\x5e\x7b\xe9\x45\x95\x48\ +\x66\xbe\xf0\x07\xe4\x0a\xd1\x45\x94\xd7\x68\x66\x32\x5d\x71\x80\ +\x4c\x53\x95\xc4\xfd\xb8\x80\xbb\x84\x5a\xa0\x55\x00\x95\x85\x05\ +\x95\x09\x60\xe3\x6a\xb1\x11\x42\x52\x59\x14\x3f\x07\xaf\xff\x2c\ +\xfd\xf8\xe1\x47\xe8\x85\x1f\x3c\x4d\xaf\xbc\xf5\x0e\xfd\xf4\x64\ +\x8e\x4e\xdf\x77\x2f\x71\xdb\x87\x02\x89\x33\x82\x7e\xaf\x78\xf2\ +\x64\x28\x80\x6d\x33\x1d\x55\x20\x22\xc8\xba\x31\xe2\xe6\xe7\xe6\ +\xd4\xdc\xc9\xa3\x27\xa8\xf8\xc2\xf3\xb4\xfe\x82\x0b\xe8\xa2\xfb\ +\xef\x23\xc7\xe0\xc0\xef\xa9\x2d\x7b\x1d\x19\x63\xe6\xfa\xeb\xe9\ +\xdc\x5d\x3b\xda\xc8\x03\x4c\x6c\x37\x77\x06\xda\x5a\x04\x10\x00\ +\xde\xac\xeb\xe6\x42\x25\x04\x61\x2d\x80\x54\x68\x8d\x0c\xf3\x2f\ +\x33\xe1\x08\xbc\x78\x32\x68\x74\xcf\x1e\x3a\x8e\xe8\xef\xe1\x73\ +\xa2\xa5\x34\x3e\xfc\xd6\xdb\x54\x7c\xf5\x15\x1a\xbf\xf4\x52\x1a\ +\xdc\xb7\x77\xb9\xe0\xa9\x14\x4a\xe4\xe0\x9b\x53\x57\x5d\x15\x1e\ +\x8c\xa8\x6f\x85\xef\xc5\xd9\xd2\x30\x97\xff\xdb\xbf\x51\xbd\x87\ +\xf5\x1f\xbe\xe5\x66\x72\x20\xb4\xed\x9f\xfe\x34\x7d\xea\xc7\x2f\ +\xd1\x87\x1e\xf8\x73\xda\xf5\xa7\x7f\x42\xd7\x3c\xfb\x5f\x34\x99\ +\x1d\xa1\xf7\x5f\x7e\xb5\xcb\x15\x70\x3d\x72\xe7\xfa\xf5\x9b\xd6\ +\x6a\x01\x02\xf0\x8e\x3b\xce\xac\x3e\x18\xe1\x5a\xa0\xc6\x47\xe4\ +\x99\x41\xf6\x95\x76\x0b\x10\xf0\xff\x6d\x5b\xa9\x7c\xe8\x10\x79\ +\xbe\xaf\x49\x2c\x9b\xb5\x83\xcf\xcf\x7e\xf3\xeb\xc4\xed\xc3\x5f\ +\xbd\x87\x5c\x37\x14\xa0\x4f\x52\xbd\x93\x04\xd9\xf1\x4f\x7e\x92\ +\xaa\xa5\x32\x79\xae\x4b\x55\xa4\xdd\xf3\x6e\xb9\x85\x16\x1e\x7b\ +\x98\x0e\xbe\xfe\xc6\x32\x99\x83\x85\x0a\xfd\xec\xea\x8f\x53\xe9\ +\xbe\xaf\x92\x3c\x7e\x8c\xa6\xf6\xef\xa7\x2d\xd3\x93\xe4\xdf\x73\ +\x37\xbd\xf9\xb5\xaf\x93\x6f\x9a\x7a\xf1\x6d\x41\x71\x5d\x22\xb1\ +\x6f\xad\x7f\x1a\x93\xcd\x2d\x71\xd5\x05\xe2\x52\xa6\x6b\x58\x54\ +\x06\x0b\x75\x0a\x4b\x2a\x15\x7a\x22\x68\x2b\x03\xc7\x90\xfe\xaa\ +\x47\xdf\x57\xd6\x80\xd6\x7e\x26\x80\xf6\xb3\x67\x7f\x44\xd3\x48\ +\x8f\x9c\xca\xf6\xdd\x75\x17\xbd\xf9\x8d\x6f\x90\x84\x4b\x79\x20\ +\x22\x2f\xba\x88\xae\x7c\xe8\x21\xda\x7b\xe3\x8d\x94\x3b\x70\x80\ +\x86\x51\xe1\x89\x27\xbf\x47\x2f\x3e\xf1\x14\xb9\x76\xac\xad\xbc\ +\x3d\x58\xf7\xe8\xc8\x63\x8f\xd3\xc8\xb7\x1e\x26\x5b\x08\x95\x02\ +\x17\xe3\x49\x68\xda\xea\x8a\x0b\x7a\x6c\x87\x99\xe0\x9f\x01\xd9\ +\x4b\x00\xdd\xc5\x10\x6a\x81\xb4\x10\x69\xce\x04\x93\xe7\x9f\x87\ +\x5a\x60\x89\x62\x48\x4f\x75\xc4\x04\xdd\x1a\x8d\x3a\x4d\x5e\xf3\ +\x5b\x34\xff\xfa\xeb\x54\xc4\xbe\x61\xa8\xb9\x17\x90\xa1\x10\x54\ +\xae\xbf\xf0\xa1\xaf\x91\x09\xed\x96\x9f\x7d\x86\x26\x93\x71\xca\ +\xde\x74\x03\xfd\xcf\x93\x4f\x51\xee\xa1\x07\xe8\xc4\x1f\xfd\x21\ +\x65\xb0\x75\x8e\x65\xd2\xe4\x97\x2b\xf4\xf6\x99\x59\xca\xc7\x07\ +\xc8\x67\xf2\x11\x21\x2d\x04\x95\x25\xe6\x70\xbf\x93\x28\xb0\xe2\ +\x1c\x59\x96\xca\x04\x6b\xb6\x80\xa6\x00\xb8\x16\x98\xe4\x6d\xf1\ +\xae\x5d\x3b\x69\xfe\xf8\x49\x8a\x83\xa0\xc0\xde\x80\xdb\x10\x0a\ +\x94\x4b\x60\xae\xe9\xc1\x0c\xc5\x21\xa0\x8f\x3f\xf8\x00\xbd\xfc\ +\x95\xbb\x49\xb6\x1e\x93\xc3\x75\xe6\x6f\xbd\x99\x8e\xc1\x35\x1a\ +\x56\x4c\x11\xf0\x0d\x43\xf5\xa7\xf8\xbe\x95\x20\xca\x17\x49\x02\ +\xdc\x64\x22\x15\x2d\x7e\x05\x82\xd4\x83\x78\xe7\x9c\x85\xb3\x81\ +\x66\x20\x14\x12\x6d\x2d\x16\xe0\x56\x5b\x6a\x81\x61\x90\x3c\x82\ +\xa8\x3c\x9e\x5d\x4f\xf4\xee\x3b\x61\x9e\x7d\xfb\x4d\x3a\xf5\xd9\ +\xeb\xe8\x10\x4c\xdf\x33\x2d\xf2\x2d\x8b\x84\x1d\x6f\x3b\x30\xf4\ +\xd0\x1f\x89\x0d\x10\xd9\xd1\x66\x08\x2d\x1c\xb7\x12\x5b\x85\x24\ +\xad\x4e\x94\x5b\x4f\x4b\x00\xf1\x2d\x9f\x1a\x19\x49\x7f\xbf\x50\ +\x28\xf6\x0a\x82\x51\x2d\x10\x15\x43\x8b\x3a\x13\x70\x2a\x2c\xcf\ +\x87\xa9\xd0\xf0\xc2\x8d\xca\xbc\xe3\xd1\xfb\x20\x37\x8b\x0a\x2e\ +\x1f\x4b\x50\xd1\xb4\x5b\xff\xd5\x46\x74\x4c\xa6\x7b\x29\xdb\x76\ +\x6c\xa2\x63\x8c\x45\x33\x74\x00\xeb\x0e\x6a\x8c\xee\x0a\xb0\xbd\ +\x28\xd2\xcf\x46\x73\x26\x4a\xe2\x3d\x6b\x75\x01\x7d\x30\xb2\x5c\ +\x0b\x38\x5c\x0b\x14\x8b\x64\x73\x7d\xce\xa9\x90\xba\x1b\x18\xb6\ +\x7e\x64\xf5\x71\xb7\x06\x3b\xe7\xba\xdd\xa0\xb7\xd6\xf5\x7c\xd7\ +\xb5\x1d\x8f\x73\x20\x7c\x11\xe8\xe1\x02\x1d\xe7\x02\x8b\x41\x90\ +\xd3\x02\xa8\x54\x6b\x61\x2a\x5c\xb7\x8e\x4c\xbd\xb7\x5f\xa1\xc9\ +\xce\xeb\xd5\x84\xd0\x69\xe2\x9d\xcf\xf7\x70\x83\x68\xae\xb7\x1b\ +\x20\x0e\xb0\x00\x8c\xb5\x58\x80\x00\xbc\x13\xa8\x05\xd0\x87\x9b\ +\x17\xd4\x02\x75\xd4\xfa\x6e\xa9\x44\x16\x6f\x8a\x5c\xb7\x9b\x70\ +\x2f\xad\x1b\xc6\x2a\x82\xe9\xd6\x78\x37\xf1\xfe\x83\x22\x22\x60\ +\x5b\x20\xec\x21\x80\xc8\x0d\x4e\xe3\x60\xc4\x97\xd2\x8f\x49\x69\ +\x73\x2d\xb0\x1e\x1b\x9e\x06\xbb\x01\xb6\xab\x62\x61\xa1\xb7\xf6\ +\x99\x70\xff\x6e\x10\x8d\x7b\xb9\x41\x8f\xe7\x41\x5c\x95\xc4\x3d\ +\x83\xe0\x4a\xbb\x42\x6c\x41\x8b\x3a\x13\x6c\xda\x79\x3e\x55\x51\ +\xbe\x26\xb2\x59\x0e\x34\x5d\x90\x8c\xd6\x6b\xa2\x5e\x41\x6f\xd5\ +\xe0\x26\xa3\xfb\xd1\x35\xa3\xc7\x0e\xb0\x2b\x28\xe2\x1a\x02\x18\ +\xbc\x6d\x62\x62\xf3\x1a\x04\x10\x05\xc2\xba\x10\x8b\xfa\x88\xfc\ +\x5c\xe4\xfa\x2a\x34\x9f\x58\xbf\x5e\x9f\xf9\x77\x47\xeb\xce\xb9\ +\x55\x48\xa9\x7e\x35\x01\x75\x13\x8f\xc6\x2d\xef\x8a\x1e\x31\x80\ +\x5a\x2c\x70\xd0\xb6\xf7\xaf\x49\x00\xda\x02\x50\x0b\x2c\xc1\x6d\ +\x54\x0d\x9f\x42\x55\x57\x99\x9f\x57\x81\x90\x84\x68\x27\xbd\x1a\ +\x71\x4d\xb8\x9d\xd4\x4a\x7d\xf4\xdc\x5a\xac\x81\xe7\x7a\x90\xe7\ +\x16\x37\x0c\x15\x08\x7b\x06\x41\x89\xc6\xc1\x42\x97\xc3\x95\xd6\ +\x73\x81\x7c\x3e\x4c\x85\xd8\x17\x18\x52\xf2\xa2\xd6\x16\x08\xf5\ +\xb8\x67\x36\xe8\x5d\x10\x51\x0f\xad\x77\x36\xcc\xee\x69\x2a\x5b\ +\x9c\x75\x10\x04\xdc\x12\x04\xa0\x8b\x21\xa7\x50\xa0\x7a\xa5\xc2\ +\x16\xa0\xbf\xd4\x3b\x10\x76\x8d\x35\xe9\xde\xd9\xa0\x37\xf1\x6e\ +\x61\xea\xac\x85\x8d\x9c\x82\x0f\x38\xbe\x2f\xc8\x34\xe7\xf8\x09\ +\x6e\x12\xad\xa7\x00\x74\x2d\x50\x68\xad\x05\x2a\x55\xaa\x3b\x0e\ +\x79\xd5\xaa\x3a\x29\x16\x98\xa3\x5e\xda\xd7\x56\xd2\xcb\x12\x7a\ +\xa4\x41\x5d\x56\x2b\x62\xf8\x5d\x0f\xbd\x27\x84\xf4\xd9\x5a\x13\ +\x89\xc0\x1a\x48\x0a\x3b\x95\x96\xf6\xf0\x90\x4c\x8e\x8e\xd1\xe0\ +\xe4\x84\x1c\x9d\xde\x44\x53\xbb\x76\xc8\xbf\xb8\xf3\xcb\xd7\xfd\ +\xdb\xbb\xef\xbe\xdc\xb3\x0e\x58\xf1\x60\xc4\xf3\xe6\x5a\x6b\x01\ +\xe5\x17\x70\x83\x18\x52\xa1\x5c\x5a\xea\x26\xdd\x87\x1b\xb8\x4d\ +\x8d\x79\x00\xf7\x0e\x88\x41\x63\x81\x88\xc7\x03\x23\x91\x10\x46\ +\x26\xc3\xff\x78\x52\x9d\x1d\x0c\x8c\x8f\xcb\xd1\xc9\x49\x63\x64\ +\x7a\xda\x1e\x99\x18\xb7\x6d\x3b\x66\x99\xf8\x9f\x6d\xd9\x14\x8b\ +\xc5\xc8\xb6\x2d\xf4\x71\xe2\xeb\x64\x32\x49\x43\x58\xe7\x79\x93\ +\x93\x15\x08\xa0\xce\x9c\x7a\xd4\x01\xdd\x81\xf0\x78\xa3\x31\x2b\ +\xf0\x8e\xfe\x23\xc9\xe4\xf6\x19\x6a\xa0\x18\x4a\x8e\x8d\x91\x80\ +\x00\x56\x7b\x11\xef\x68\x2d\x69\x73\x64\x0d\x0a\x11\x12\x63\xad\ +\x09\x99\x4a\x49\x2b\x93\x31\x6c\xa4\xd5\x01\x6c\x89\x33\xe3\xe3\ +\xe6\xf0\xf4\x94\x99\xc9\x66\x6d\x32\xd4\xc6\xc2\xe6\xe5\x5a\x96\ +\x45\x71\x45\x0e\x24\xe3\x71\x35\x8e\x27\xb8\x8f\x87\xa4\x63\x98\ +\xb7\x63\xfc\x9c\x7a\x06\x02\x61\x01\xa8\x67\xd2\xa9\x34\xed\x3f\ +\x77\x52\xe9\xad\x67\x29\xbc\xd2\xae\x10\x59\xa0\x02\x12\x15\x14\ +\x43\x19\x95\x0a\x77\xec\xc0\xb6\xf8\xb8\x0a\xa7\x8b\xb5\x5a\xe8\ +\x67\x78\x36\xb0\xac\x40\xc4\x62\x42\x26\x12\x52\x0e\x0c\x48\x99\ +\xce\x20\x58\x8e\xc9\xc4\x86\x73\xcc\xd4\xf8\x46\x63\xdd\xe4\xa4\ +\x3d\x38\x3a\x66\x41\x55\x26\x2f\xce\x34\x94\x43\x92\xc9\x8b\x06\ +\x4c\x1e\x9b\x26\x19\x80\x26\x8c\x7b\x21\x69\xc0\x62\xe0\x1e\xae\ +\x19\xea\x59\x0d\x7d\xe4\x87\x79\x7e\x57\x83\x05\xa4\xe6\x26\x92\ +\x99\x18\x6e\xf7\xda\x0e\xaf\x9e\x0a\xf9\x8f\x24\x49\x21\x32\xae\ +\xe3\xd1\xb6\xa9\x29\xf9\xea\xf1\x13\x1e\xcd\xcc\x48\xfb\xe2\x0f\ +\x1b\xa3\x9b\x36\xd9\x03\x83\x83\x26\x7e\xc8\xd4\x0b\x64\xad\x60\ +\xac\x34\x80\x59\xb2\x15\x19\x73\xf9\xf8\x1b\xd4\x31\x0e\x78\xcc\ +\x8b\x57\xe0\xb5\x99\xfc\x0e\x34\x0c\xe8\x39\x75\xf8\xc9\x82\x37\ +\x00\x7c\x97\x63\x11\xf7\xfc\x0c\x93\x0c\x85\xd8\xfc\x5d\x34\xbe\ +\xd6\xd9\x2c\xdc\xc5\xd6\xeb\x6e\xcc\x94\xa9\x35\x9c\x08\x75\x67\ +\x82\x1a\x8a\xa1\x11\x29\xa7\x38\xf2\x9f\x29\x14\xbc\x89\xcf\x7d\ +\x1e\xe7\x22\x23\x94\x49\xa7\x40\x32\xc1\x0b\x51\x84\x41\x45\xbd\ +\x26\x98\x8c\x8e\xe2\x18\xa3\x0f\x17\x69\x59\xbc\x78\x8c\x2d\x40\ +\x11\x6c\x03\x04\xa2\xc7\x9a\x84\x7a\x3e\x11\x5a\x85\x26\xac\x35\ +\xdd\x9a\xba\x59\x30\x3c\xd7\xf6\x0d\xbe\xae\x17\x8b\x65\xcb\x13\ +\x99\x35\x6c\x87\xa3\x5a\x40\x5b\x40\xa5\x79\x2e\xb0\x1e\x01\xe5\ +\xe4\x9e\x7d\xd6\xa6\xe9\x69\xca\x8e\x8d\x92\xdd\xd4\x34\xb1\x16\ +\x0c\x93\x3b\x6d\xaa\x9a\x44\x44\x8e\x11\x04\xbc\xd0\x30\xa5\x3a\ +\x2e\x6b\x57\x2f\x58\x43\x9b\x34\xa3\x6d\x8e\xdf\xd1\x42\x40\x6b\ +\x8e\xb5\x40\x57\x2e\xf3\xf9\xdb\x8d\x7c\xbe\x4a\xc2\x4f\xb3\x71\ +\xf4\x6b\x01\x2c\x00\xb5\xf3\x09\x3c\x4f\x66\xa6\xa7\x51\x06\x8c\ +\xd0\xf0\xf0\x30\xff\x78\xf3\xbb\xa1\xf6\x74\xbd\x00\x62\x7a\xcc\ +\xe0\x7b\x0a\xda\x2c\xd1\xba\xc9\x47\xd0\x1a\xe6\xbe\x6d\x0c\xa2\ +\xda\x0a\xf8\xdd\xd0\xc4\x9b\xbb\x52\xad\x71\xfd\x8c\x16\x4a\xe5\ +\xf4\xa9\x1a\x1e\x4c\xaf\xc1\x02\xba\x53\x61\xc9\xf7\x95\x00\x6a\ +\xae\x1b\x0c\x25\x93\x76\x22\x9e\x20\x5d\x1b\x60\x31\x6d\x64\xb5\ +\x00\x22\xd2\x91\x70\xb4\x56\x5b\x7d\x94\x7b\x4d\x46\x2f\x5e\x9b\ +\xb4\xe3\x38\xfa\x0f\x20\xda\xf4\xbb\x02\x1d\xe6\x75\x1c\x50\xdf\ +\xd1\xef\xeb\x00\xb9\xf8\xea\x2b\x0d\xc3\xf3\xfa\xb6\x00\xd1\xfc\ +\x17\x23\x73\xfc\xb6\x67\xdb\x42\xfd\xa8\x69\x68\xcd\x6a\xad\x69\ +\x82\xda\x2c\x79\xac\x89\x30\xb4\x50\x34\xda\xde\xd1\x66\xaf\xef\ +\xe9\x6b\xf4\xfa\x5b\x3c\xcf\xdf\x60\x8d\xab\xf9\x0c\x6a\x83\x81\ +\x81\x01\x95\xeb\x13\xcd\x38\xd4\xd9\x1a\xa5\x62\xc3\x39\x72\x78\ +\xc4\xf5\x7c\xd9\x87\x05\x44\xa9\x10\x07\x23\x67\x78\x11\x3e\x56\ +\x8d\x42\x43\x93\xd3\xd2\xd7\x5a\xd4\xda\xd7\x64\x3b\x03\x9b\x16\ +\x4e\x9b\x26\x75\xd3\x04\xb5\xf6\xf4\xb3\x3a\x23\x74\xb6\x72\x3e\ +\xef\xce\xbe\xf3\x4e\x3d\x7f\xf4\xa8\x53\x3a\x79\xc2\xaf\x9e\x99\ +\x95\x41\xa1\x60\x58\x8d\xba\x3d\x20\x45\x7c\xc8\x8e\xa5\x32\xa9\ +\x64\x32\x96\x88\x0f\xbf\x9e\x5b\xfc\xd7\x3e\xb2\x40\x94\x0a\x4f\ +\x39\xce\x82\x90\x92\x3d\x3b\xd0\x8b\x6e\xd5\xa8\x16\x82\xd6\x1a\ +\x34\xd2\xb5\x68\x5c\x6b\xb4\xa5\xaf\xd6\xc6\xef\x71\x2b\xe6\x72\ +\xce\xe9\x23\x47\xea\x0b\x47\x8e\xb8\x85\xe3\xc7\xfd\xf2\xe9\xd3\ +\xd2\x59\x58\x30\xfc\x62\xd1\x36\x1a\x8d\x44\xdc\xf7\x53\xb6\x69\ +\xc6\xf1\x8d\xb8\x0a\x90\x86\x51\x0b\x4c\xa3\xe4\x1a\x0a\x05\x60\ +\x09\xa2\x9c\x43\xd1\x75\xe8\xe9\xd3\xb3\x4f\xbe\x9d\xcf\x1f\xeb\ +\x57\x00\x3a\x13\x34\xea\xbe\x5f\xf2\xa4\x8c\x6b\x72\xda\x84\x5b\ +\xcd\x55\x43\x13\x5d\xa9\x15\x66\x67\x9d\x1c\xc8\x2d\x1d\x3b\xe6\ +\x2c\x1e\x3d\xea\x57\x67\x67\x79\x97\xb9\x4c\x2e\x21\x44\xca\x84\ +\x2c\x08\xc0\xef\x35\x1c\x29\x4b\x7c\x28\x83\x5a\xa4\x58\xc7\xd6\ +\x9c\xff\x0d\x63\x59\x88\x7c\x01\x9b\xb4\x3c\x14\x73\xd4\x75\xe7\ +\x30\x5f\x67\x57\x65\xe8\xcc\x05\xd4\x80\x02\x50\x0c\xe7\xfb\x17\ +\x80\x0b\xd4\x71\x40\x7a\x6c\x7c\x71\x71\x47\x12\x02\xb0\x59\x83\ +\xb6\xdd\x45\x12\xe4\x1a\xb9\x43\x87\xea\x79\x90\xc3\x5f\x7f\x83\ +\x0a\x6b\x0e\xe4\x44\xa9\x14\x53\x9a\x13\x22\xcd\xe4\x02\x64\xd9\ +\x86\x10\x7e\x43\xca\x4a\x93\x9c\x22\x56\xf1\xfd\x7c\x11\xc4\x16\ +\x7c\x3f\x87\x12\x7c\x1e\x3b\xd1\x32\x13\xea\x20\xc7\xf0\x5b\x10\ +\xb4\xf7\x7a\x1c\x3d\xab\xab\xc0\x1e\x02\x58\xb5\x16\x70\x80\xd2\ +\x7b\x8d\xc6\x4b\x9b\x97\x96\xf6\xbe\xf4\xe0\x83\x8b\x89\x7a\xd5\ +\x3c\x35\x9f\xaf\xe1\x80\x54\x82\x9c\x6d\x36\x1a\xc9\x18\x8a\x5f\ +\xfe\x16\x6f\x64\x80\x3a\xff\x59\xad\x2e\x65\xa1\xe6\xfb\x4b\x15\ +\x68\xac\xe8\x79\x0b\x8b\x38\x66\x3f\x89\xcd\xd5\x82\xeb\x96\x34\ +\xa1\x3e\x88\x31\x04\x20\xcf\x06\xdc\xfa\xfe\xbf\xce\x42\x00\x26\ +\x85\xe6\xb8\x11\x52\xda\x7e\xf3\xe4\xe4\x1f\x6f\x4c\x26\x77\xa7\ +\xd2\x29\xff\x8d\xb9\xdc\x4f\xaa\xa8\x0f\x4a\x40\x1e\xc4\x70\x80\ +\x9a\x3b\xe3\xba\x8b\xdd\xa4\x80\xde\xa4\xb8\x17\x8c\x1e\xe4\x28\ +\x1a\x77\xb7\xd5\xc8\xf6\x2b\x00\x2d\x04\x1b\x5d\x1a\x18\x05\x86\ +\x81\x18\x20\xce\x46\x5b\x6b\xd4\x18\x7d\x30\xc4\x3e\x78\x01\x18\ +\xe8\x2c\x26\xde\x84\xa1\x6b\x84\x5f\x2e\x62\xfd\xb7\xff\x05\xc7\ +\xfd\xe7\xdb\x23\x5d\x13\x38\x00\x00\x00\x00\x49\x45\x4e\x44\xae\ +\x42\x60\x82\ +\x00\x00\x13\x17\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\ +\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\ +\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x06\xec\x00\x00\x06\xec\ +\x01\x1e\x75\x38\x35\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\ +\x74\x77\x61\x72\x65\x00\x77\x77\x77\x2e\x69\x6e\x6b\x73\x63\x61\ +\x70\x65\x2e\x6f\x72\x67\x9b\xee\x3c\x1a\x00\x00\x12\x94\x49\x44\ +\x41\x54\x78\xda\xed\x9b\x09\x90\x5c\x47\x79\xc7\xff\xdd\xef\x9a\ +\x73\x67\xf6\xd2\xae\x56\xbb\xba\xbd\xb2\x84\x0e\x0b\x1b\x51\xb2\ +\x1d\x0a\x6c\x8e\x40\x9c\x40\x48\x0a\xca\x54\x80\x70\xe4\xa8\x8a\ +\x53\x60\x08\x15\x8a\x22\x45\x48\x02\x14\x47\x01\x45\x05\x63\x28\ +\x53\xa9\xd8\xd8\xb1\x62\x82\x6d\x8e\x02\x0c\x54\x30\x92\x15\x09\ +\xc9\x96\xac\xd3\xd2\xae\x76\x25\x4b\x7b\x68\xaf\x99\xdd\xd9\x9d\ +\x79\xf3\x8e\xee\x7c\xaf\x5f\xc7\x33\x7b\x69\x25\xb0\x1c\x57\xa1\ +\x4f\xfa\xeb\xeb\xd7\x3b\xf5\x66\x7e\xff\xef\xeb\x7e\x6f\x34\xb3\ +\x4c\x4a\x89\xdf\xe5\xe0\xa4\x6b\x06\x5c\x33\xe0\x9a\x01\xd7\x0c\ +\xb8\x66\xc0\x35\x03\x5e\xfa\x60\x51\xe0\xff\x39\xae\xca\x7d\x00\ +\xbb\xee\x73\xad\x46\xd2\x79\x95\x44\x78\x13\x24\xef\x92\x12\x79\ +\xce\xd1\x68\x9a\x46\x63\xd2\x36\x9a\x52\x09\x33\xcf\x18\xcf\x80\ +\x49\x37\x0c\x51\x0c\x05\x0a\xbe\x2f\x0a\x55\x5f\x4c\x54\xaa\xfe\ +\xf8\xb6\x75\xa9\x83\x87\x1f\xff\xab\x7b\xf1\x12\x84\xf9\xdb\x97\ +\x11\x0c\xaf\xf8\xda\x2d\x8d\x59\xeb\x35\x89\x84\xb5\xa3\x54\x0e\ +\xb6\xb7\x2c\x6f\x59\x99\x72\x2c\xa4\x93\x26\x32\x29\x0b\xd9\xb4\ +\x85\x5c\xc6\x42\xc2\x31\x60\x5b\x06\x4c\x83\xc3\x88\xc4\x59\x86\ +\x31\x64\x00\x74\x0a\x01\xb8\x5e\x88\x3d\x87\xc6\x83\xa1\xbe\x5f\ +\x5a\x00\x5e\xde\x06\xb0\x1b\xee\x5d\xd1\xdd\x95\xff\x9b\xed\xef\ +\xb0\xdf\xdd\x37\x90\xeb\x5c\xd7\xd5\x00\xce\x01\xc7\xe6\x24\x03\ +\x09\x3b\x86\xa5\x63\x3d\xa6\xf9\x48\xb6\xa9\xc6\x96\xc9\x94\x11\ +\x8c\x01\xa1\x00\xaa\x04\xbf\xef\xe8\x04\x5a\xf3\xe1\x91\xde\xfd\ +\x67\x72\xa0\x78\xd9\x19\xc0\x5e\xf7\x4b\x33\x17\x0e\xbf\x6d\xd3\ +\x9a\xdc\x5d\xc9\x64\xc3\xad\x4d\x8d\x0d\x46\xa1\x54\xc5\xaa\x8e\ +\x26\x30\x82\xb1\x6d\x05\x1c\x03\x92\x6c\xc7\xd0\x63\x03\x96\x1d\ +\xcf\x99\x26\x87\x11\xc9\x60\xaa\x7d\x04\x24\x02\x21\x31\xed\x4a\ +\x4c\x56\x8c\xca\xc9\xbd\x8f\x77\x02\x38\xff\xb2\x33\xc0\xda\xf9\ +\xdd\xd7\x6e\x5f\x9b\xbf\x2f\x9f\x6d\x5f\x37\x34\x56\x41\x7b\x6b\ +\x0e\xe3\xd3\x8c\x40\x12\x90\xdc\x80\x50\x30\x1c\x81\x34\xc0\x25\ +\x03\x17\x1c\x2c\xe0\x90\xe0\x08\x49\xbe\x60\x70\x7d\xc0\xe0\x91\ +\x24\xb1\x4b\x48\x09\x25\x3f\x94\x38\xda\x57\x46\x02\x13\xc7\x67\ +\x4a\x85\x9b\x40\xf1\xb2\x31\x80\xdd\xf2\xe8\xb2\x5c\x22\xf9\xd5\ +\x1b\x36\xb4\xdd\x79\x71\xc2\xc5\xc8\xa4\x4f\x00\x16\x38\x67\x08\ +\x25\x00\x82\x05\xc1\x8a\x00\x04\xca\xe0\x4b\x0e\x2f\x8c\x2a\xcd\ +\x60\xfa\x24\x83\xc5\xd0\x06\xc0\x19\x03\xe7\x50\xf0\x00\x53\xf0\ +\x42\x4a\x94\x5d\x81\x54\x32\x39\xf5\xd4\x4f\x1f\xee\x06\x38\xc0\ +\xf8\xcb\xc3\x00\x76\xf3\xcf\xb7\xb4\xe6\x1a\x7f\xd1\x90\xb6\x5a\ +\xcf\x0c\xfa\x04\x61\x13\x0c\x83\x90\x04\x24\x19\x01\xc5\xe3\x80\ +\x80\x0d\xca\xbe\xe0\xe0\x3e\x08\x32\x12\x81\x2b\x78\x46\xc0\x0c\ +\x94\x94\x50\x77\xe5\x13\x92\x91\x00\xd7\xe3\xc8\x89\x9e\xd3\x9e\ +\x57\xbd\x09\x64\x2e\x98\x81\x28\x3e\x73\xf3\xcd\x2b\x66\x86\x87\ +\x1f\x19\xef\xef\x3f\x2c\x81\x43\x9c\x64\x03\x47\xbf\x26\x65\xf5\ +\x6a\x1b\x40\xf0\xbb\x77\x80\x27\x7e\x5c\xaa\xf2\xa6\x42\x59\x2a\ +\x78\x53\x30\xbd\x7b\x03\x66\x54\x51\xc9\x09\x54\x57\x56\x12\xa8\ +\x40\x04\x4b\x42\x2c\x30\x5d\xcc\xd8\x84\xfa\x90\x32\x9e\xf7\x42\ +\x89\xed\xeb\xec\xb1\x1f\xdd\xbf\x6b\x73\x0d\x9e\x44\x91\xe4\xfc\ +\xb3\x76\x5b\xdb\xce\xd6\x15\x2b\x76\x7a\xd3\xd3\x70\x4b\x25\xb8\ +\x53\x53\xc1\x47\xd3\xe9\x43\x7e\xb9\xfc\x98\x00\x1e\xff\x57\x29\ +\x8f\xbf\xe8\xf7\x01\xec\xf7\x7e\xdd\x0d\x66\x1c\x04\x43\xb6\x6e\ +\x76\x56\xd6\x70\xaa\xc2\xbc\x2e\x73\x65\x80\x56\xfc\x40\x95\x05\ +\xe2\x6a\x0b\x11\x29\x5a\x3e\x92\xb2\x44\xf7\x0a\x0b\xd6\xe4\xbe\ +\x83\x87\xf7\x7e\xef\x26\x05\xcf\x38\x28\x3f\xfe\x8d\x2d\x85\x4f\ +\xd2\x39\x0e\xe5\x57\xad\x32\x79\xf4\xd8\x30\x44\xe8\x79\x4a\x81\ +\xeb\x62\x66\x6c\x0c\xa5\xc1\xc1\x28\x9f\x71\xa7\xa7\xff\x0b\xc0\ +\x3d\x5f\x92\xf2\xdc\x8b\x63\xc0\xeb\x8e\xff\x84\xd2\x9b\x66\x41\ +\xb3\x7a\x23\x2e\x31\x66\x97\xff\x73\xc7\x62\xf8\xe3\x9d\x7c\xf0\ +\xe1\x7b\x3e\xd2\x4e\xe0\xfc\x05\x03\x38\x7f\xfc\xdf\xb6\x15\x13\ +\xcb\xb7\x6d\x7b\x53\xaa\xa5\x05\x22\x82\xae\x54\x40\x55\x87\x4f\ +\x39\xa0\xac\x8f\x95\xca\x64\xc6\xe4\xb9\x73\x81\x5b\x2c\x3e\xc4\ +\x84\xf8\xfc\xa7\xa4\x3c\xf1\x1b\x2f\x01\x76\x5b\xff\x1f\xc1\x48\ +\x12\xfc\xd5\x8f\x1d\x1b\x4c\x3c\xf3\x3f\x3f\xba\x08\x6e\x76\x28\ +\x78\x70\x44\x79\x67\x93\x68\xc9\xe7\x72\x37\x37\xe4\xf3\x90\x42\ +\xc0\x64\xd1\xd2\x33\x60\x58\x16\xcc\xa8\x13\x48\xc1\xff\x49\x08\ +\x38\x4d\x4d\x68\x48\x26\x4d\x32\xe0\x3d\x33\x83\x83\xef\xfe\x22\ +\x63\x0f\x13\xd8\x5d\x77\x4b\x39\x71\xe5\xef\x05\x0c\xf1\xa7\x58\ +\x34\xd8\x8b\xa6\xe6\x2c\xc7\xca\xe6\xa0\xff\xf4\xb3\x4f\x6e\x07\ +\xb3\x00\x66\x02\xdc\x52\x7a\xdf\x3a\xb9\xb9\xa1\xa9\x89\x85\x13\ +\x13\xf0\x49\xa2\x50\x00\x68\xfd\x73\xaa\xb6\xe9\xba\x30\x7d\x1f\ +\x16\xc1\xdb\x11\xbc\x94\x48\x02\x48\x32\x86\x6c\x22\x81\xd6\xe5\ +\xcb\xd9\xb2\xf6\xf6\x3b\x93\x86\x71\xf4\x9b\x8c\xbd\xe1\xca\x37\ +\x41\xc9\x6e\x04\xd8\x6f\x7c\x5f\x7c\x39\x61\x19\xc0\x6b\xb6\x5a\ +\x78\xf2\x89\x07\xcb\x0a\xba\xb6\xf6\xf1\x86\x65\x21\xd6\x58\x7e\ +\xce\xa0\x16\x97\xd1\x9a\x8f\xaa\x0f\xa8\x4e\x00\x41\xb3\x20\x00\ +\x27\x03\x98\xe7\x29\xf1\x6a\x15\x06\x1d\x0b\x9a\xd7\xdd\x01\xdb\ +\xb6\x91\x68\x6c\xec\x08\x8a\xc5\x9f\xde\xcf\xd8\xa7\xde\x23\xe5\ +\x3f\x5f\xbe\x01\x8c\xad\xfc\x4d\x0d\x58\x1a\x9c\x61\xeb\x5a\x13\ +\x5b\x56\xb3\x99\x91\xe1\xa1\xc3\x17\xce\x9e\xb8\x45\x19\xa0\x5b\ +\x9f\x73\x13\x7f\x7d\xbd\x07\xa3\x58\x06\xfc\xf8\x7a\x2a\xb4\xa9\ +\x4c\xc6\x3b\x28\xd3\x26\x48\x12\x27\x03\x84\xef\xc7\x46\x91\x11\ +\x26\x29\xa4\xb1\x3a\x8e\x1e\x63\x59\x8c\x8c\xf9\xa7\xef\x31\x56\ +\x7a\xbb\x94\x5f\xbd\x3c\x03\x44\x70\x0e\xdc\x7e\x05\x5e\xc4\xb0\ +\x4d\x46\xd0\x1c\x5b\xd7\x18\xd3\xbd\xfd\x43\xa7\x1f\x7c\xf8\x99\ +\x0d\x5d\xcb\xcc\x3c\xd8\xec\xea\xbf\x77\x8d\x40\xdb\xf8\x05\x84\ +\x53\x53\xe0\xa6\xa9\x3a\x4a\x72\x0e\xae\xaf\x9b\x4a\x64\x80\xd4\ +\x42\x5c\x79\x95\x8d\xc8\x0c\xea\x1a\x83\x96\x89\x88\x96\x09\x1d\ +\x2b\xc3\xa0\xe2\xcb\x4f\x30\x36\xf4\x46\x29\x77\x2d\x6d\x40\x50\ +\x2c\xc1\x5e\xb6\x64\x7b\x2f\x1d\x8c\xc0\x11\x41\x63\xcb\x2a\x3e\ +\xdd\x7b\x6e\xe8\xf4\x77\x76\x1d\xda\xe0\x07\xc1\x2b\x09\x96\xc0\ +\x1c\xa9\xaa\xaf\xe1\x13\x06\xc7\x07\xbb\x09\xec\xbf\xcf\xa8\x0d\ +\x8f\x93\xf4\x6d\x23\x0c\xe8\xd0\x5d\x00\x82\xa6\x2a\x2b\x50\x10\ +\xb0\xa4\xca\xf3\x48\x35\xe0\xb9\x99\x31\x32\xe1\xc7\x8c\x3d\xf6\ +\x66\x29\xab\x97\x36\xa0\x74\xba\x19\x2d\xed\x1e\x00\x1b\x60\x57\ +\x04\xac\x93\x06\xe7\xd8\xb2\x92\x4f\xf7\xf4\x0f\x9f\x7e\xe0\x3f\ +\x0f\x5d\x1f\x04\x82\xc0\x39\xc0\x13\x0a\x3a\x84\x49\x39\x92\xa1\ +\xf4\xf1\x2d\x0c\x89\xa7\x7e\x0e\xb7\xb7\x17\x1a\x5c\xc9\x27\x31\ +\xe8\x3d\x40\x8b\x49\xa9\xe6\x8c\x39\x5b\x33\xe6\x1f\xd7\xe7\x8e\ +\x0c\xf0\x01\x00\xf7\x2c\xb1\x04\xaa\xd7\xc1\x1b\xdd\x03\xa7\xfd\ +\xd6\xcb\x02\x06\x66\x5d\xd7\xb7\xae\x66\xd8\xbc\x8a\x97\x7a\xce\ +\x0e\xf5\x3c\xf0\xc8\xb3\x1a\xdc\xc0\xac\xcd\x0e\x1c\x42\x9a\x1c\ +\x7a\xae\x25\x61\xe0\x5d\x6b\x25\xa6\x1f\x3d\x86\x14\x50\xdf\xba\ +\x98\x21\x25\xe7\xc1\xe8\xbc\x18\xf0\xe2\xa6\xdc\xb9\xb4\x01\xdc\ +\x01\x26\x8f\xec\x40\xeb\xb2\x13\xe0\xe6\xa6\xc5\x80\xe7\x83\x43\ +\x81\x9f\xee\x1b\xea\x7d\xe0\x91\xe3\x04\x1e\x12\xb8\xa9\xab\xa9\ +\x85\xda\x58\xc8\xd0\x89\x0d\xb0\xf0\xc5\x9d\x16\xda\xb6\xad\x41\ +\xc3\xfb\xdf\x8f\xd2\xc3\x0f\x43\x96\xcb\x2f\x00\x0c\x91\x12\xaa\ +\xda\x2f\x4a\xb4\x2e\xbd\x07\x18\x0e\x10\xc2\xc6\xe8\x2f\x96\x37\ +\xaf\x7d\xe3\xb1\xf1\x19\x73\xf3\xa2\xe0\x36\x03\xbd\x6e\x6c\xea\ +\x44\xe9\x54\xdf\x85\xfe\x07\x1e\x39\xd5\x1d\x04\x72\xbb\xaa\xb4\ +\x41\x70\x52\x90\x02\x40\x90\x64\x08\x1a\xe8\xb9\x10\xfe\xd4\x64\ +\x13\xfd\xa3\x9e\x6f\xef\xd3\xfd\xe8\x5a\xd5\x80\x1d\x7f\x70\x07\ +\x52\x3b\x77\x62\xea\xbe\xfb\x50\xdd\xbf\x1f\x13\x00\xce\x92\x9e\ +\x27\xa5\x49\x59\x52\x86\x94\xd7\x62\xb8\xb2\x28\x02\x4d\x4b\xde\ +\x0a\xb3\x57\xff\x40\x22\xac\x02\xc2\x85\x69\x04\x6e\xd0\x78\xfb\ +\xb3\xe9\x74\xea\xd5\x33\x6e\x7d\xc5\x63\xf0\x8d\x2b\xc2\xe9\x53\ +\xbd\xe7\xcf\x1f\x38\x7c\x66\x5d\x18\x4a\x1b\xc2\x05\x44\x05\x08\ +\x23\xcd\x90\xaa\x75\x9b\x27\xd3\xe3\x58\x2d\xe9\x69\x77\xec\xe2\ +\x40\x22\x32\xeb\x6d\x23\xbf\x42\x8b\x37\x81\xfc\x96\x1b\x70\xc7\ +\xbb\xfe\x04\x37\x6d\x5e\x0b\xef\xa9\xa7\xf0\xab\x6f\x7e\x13\x63\ +\x85\xc2\x82\x3d\x68\xe9\x72\xb6\x20\xa6\xe2\x58\x3a\xf6\x00\x07\ +\xfe\x4c\xca\x1d\x97\x36\x60\xe7\x13\x52\x1b\xa0\x55\x95\xd7\x6f\ +\xe8\xde\x5f\x4d\xbe\x62\xcd\xc5\x49\xde\x76\x03\x81\x5f\x4f\xe0\ +\x27\x4e\xf6\x0f\x1d\x38\xd2\xbf\x3a\xac\x4e\x5a\x08\x26\xe3\xc7\ +\x4a\xe8\x16\x67\x7a\x5c\x03\x9e\x3b\xd7\xe8\x14\xbd\xc2\xf8\x45\ +\x3b\x32\xe0\x9d\xc3\x3f\xc7\xb2\xea\x18\x04\x24\x42\x00\xcb\xb6\ +\x6e\x9c\x7c\xd3\x7b\xdf\x69\x74\xac\xec\xcc\x9c\xfe\xd6\xb7\x30\ +\xf8\xb3\x9f\x5d\x72\x21\x9a\xa4\x0e\x52\x27\xc9\xc6\xe2\xf1\x61\ +\xe0\x17\x8f\x4a\xf9\xfa\x4b\x1b\x70\xcb\x93\x92\xa0\x81\x50\xc1\ +\x93\x5c\x35\xb6\x2d\x39\xfd\xd6\xdf\xbf\x75\x60\xa4\x50\xb6\xf6\ +\x1c\xe8\x59\x19\x56\xa7\x4c\x04\xa5\x79\xd5\xd5\x9a\x33\x37\xdf\ +\x8c\x9c\x39\xea\x4f\x16\xc7\x2d\xc0\xc4\xbb\x07\x7f\x88\x76\x77\ +\x34\x32\x80\x04\x84\x94\x07\x10\xa0\x65\xf3\x86\xe0\xad\xef\x7d\ +\x17\xeb\x12\x81\xf1\xdc\x57\xbe\x82\xca\xf0\xf0\xa2\x46\x30\xad\ +\x36\xd2\x4a\x52\x02\xb3\x63\x0c\x28\xbe\x03\x48\xf6\x48\x99\x58\ +\x7a\x13\xd4\xd7\x5c\x3d\x50\xf2\xfc\x6a\x66\x7a\xf8\x40\xe7\xa9\ +\x3e\x99\x0e\x2b\x25\xfd\xae\x2d\x15\x83\x31\x00\xb2\x76\xe9\x8a\ +\x83\x2f\x0c\xaf\x0d\x90\xbc\x04\xf0\x34\xc9\x80\x03\x13\x49\x30\ +\x08\x25\xa0\x80\x10\x06\x8d\x27\x8e\x9d\x36\xbf\xfd\xb1\x7f\x44\ +\xdb\x96\xeb\xc3\xb7\xfc\xed\x87\xd0\xd9\x73\x8a\x0f\x3e\xf6\x18\ +\xf3\x8a\xc5\x05\x4d\xd0\xa0\x28\x90\x56\xeb\xae\xd0\x11\x7c\x16\ +\xd6\xd3\x19\x88\xdb\x97\xde\x04\x79\xa2\x0e\x5c\x67\xe1\x83\xaa\ +\x4d\x29\x6d\x05\x22\x0d\x98\x99\x39\x40\x57\x38\x86\x80\x80\x0d\ +\x98\x91\x81\x26\x1c\x52\x02\x5c\xc1\x07\x91\xd9\x90\xda\x10\x28\ +\x15\x8e\x3e\x67\x7c\xe7\xe8\x67\xb1\x6c\xcb\xc6\xf0\xcd\x1f\xff\ +\x04\xd6\x8f\x8f\xf2\x81\x5d\xbb\x58\xe5\xf9\xe7\xb1\x58\x5c\x20\ +\x4d\x93\xd6\x91\xee\x45\x62\x5f\x05\xec\xf6\x2c\x02\xa8\x58\xba\ +\x03\x64\x9d\x77\x53\xf1\x86\xc6\xcd\xa8\x2e\x3c\x60\x29\xc0\x08\ +\xe7\x54\x96\xcf\x69\x77\x3e\x07\x5c\x46\x7f\xe3\xac\x25\x85\x23\ +\xe3\x67\x8f\x0d\x48\x6a\x03\x26\x10\xc0\xa2\xb1\xa1\x97\x83\x54\ +\x99\x45\x59\x19\xf1\xe0\xc7\xff\x05\xad\x5b\x37\x85\x7f\xf8\xd1\ +\x8f\x61\xbd\x5f\x35\x86\x1e\x7a\x08\x93\xcf\x3c\xb3\xe0\x5d\x4a\ +\x25\x99\xc4\xe7\x2b\x62\xcc\x83\x7d\x6b\x16\x21\x04\x0c\x30\x0a\ +\x49\x71\xe9\xcb\x20\xa4\x92\x82\x07\xa3\xb9\x14\x25\x03\x92\xd9\ +\x2c\x40\x64\x80\xa8\x01\xab\xcc\x6b\x63\x15\x6c\x76\x07\x49\x12\ +\xc3\xac\x39\x21\x38\x60\x64\xd5\x79\x2d\xdb\x81\xe3\x5b\xf0\x45\ +\x08\x57\x32\x24\x04\x87\x50\xc8\x40\xa8\xb3\xa8\xcb\x53\x47\x4e\ +\x1a\xf7\x7f\xe8\x93\x68\xdd\xb6\x29\xbc\xe3\x2f\x3e\x88\xed\x77\ +\x67\x8d\xe1\x07\x1f\xc4\x38\x6d\x96\x32\x0c\xc1\x1d\x07\xc3\x9e\ +\x1f\xec\x66\x59\x0f\xa8\xb6\x78\x90\x48\x13\x7c\x58\x63\xf6\x17\ +\x34\x80\xcc\x31\x70\xfb\x19\x7d\x2f\x50\x06\x98\x45\xe3\x34\x65\ +\x53\x49\x70\x2e\x95\x01\x26\x16\x00\x17\x80\x9c\x05\x59\x4b\xac\ +\x56\x79\xc6\x38\x72\x59\x07\xd9\x95\x67\xf9\xf9\x0d\x5f\x07\xeb\ +\xdf\x86\x7c\x49\x56\x93\x70\x9c\x29\xcf\x85\x15\x98\x30\x24\xc1\ +\x4a\x42\x15\x0a\x5a\x65\x01\xd2\x1c\x23\x4a\xcf\x9e\x34\x1e\xbc\ +\xeb\x13\x68\xde\xba\x51\xdc\x71\xd7\x07\xe4\x8d\x77\xdf\x6d\x0c\ +\xef\xda\x85\x27\x4f\xf5\x54\x2f\x1c\xeb\xb7\x5a\xdc\x20\x55\x81\ +\xa1\x1e\x1d\x92\x32\xe0\xa0\x48\x13\xe7\xa4\xee\x02\x98\x35\x78\ +\x45\x91\x56\x40\x32\x88\x97\x82\x29\x55\xeb\x23\x24\x89\xa8\x03\ +\x04\x42\x9e\xa5\xf9\xd9\xa0\xb5\x2a\x2f\x54\xf9\x48\xea\xfc\xc8\ +\x65\x6c\x34\xae\x1d\x01\x5f\xbf\x07\xd5\x65\x07\x4d\x24\x0e\x81\ +\x75\x1f\xc2\x0f\x6e\x58\x66\xbd\x7e\x4f\x13\xf2\xbb\x4d\x64\xc6\ +\x5d\x50\xf1\x20\x94\x01\x80\x50\x26\x48\x1a\xeb\x63\xc8\x59\x86\ +\x48\x52\xe9\xc8\x29\xfe\xd0\x5f\x7e\x0c\x4d\x64\x84\x63\x04\x41\ +\x43\x71\xc6\x69\x4a\x25\x51\x81\x1b\xbf\x06\xcf\xc7\x34\x24\x9c\ +\xb8\x0d\x9b\xf5\x1d\xb6\x3f\xcb\x00\x3d\xce\x93\x74\xdb\xdb\xba\ +\xf2\x5a\x64\x82\x60\x2e\x42\xe9\x00\x5c\x43\x83\xcd\x06\x55\xa1\ +\x8d\x90\x52\x57\x1c\x04\x6e\x21\xb7\x7a\x08\x7c\xdd\x41\x84\xd9\ +\x01\x54\x05\xe0\xf9\x02\xb0\xa0\xe4\xa6\x05\xdf\x73\x7b\x09\x89\ +\x9d\x1c\x1b\xf7\x25\xb0\x72\x77\x0a\x95\x02\x19\x11\x90\x11\x61\ +\x0c\x2c\xd5\xb2\xd1\x63\x49\x63\x59\x1b\xab\x63\x30\x4c\x93\x11\ +\x99\xee\xe5\x3c\x99\xb4\x11\xb7\x89\x54\x99\x51\x96\x41\x6c\x9e\ +\xbe\x77\x1a\x5e\xcc\x80\x56\x30\x56\x9b\x36\x74\x07\x08\x65\x82\ +\x5a\x8f\x82\xd9\xb3\x61\xa3\x21\xc7\xbc\xca\x33\x03\x68\x48\xdb\ +\xc8\xad\x3a\x0f\xb6\x66\x5f\x0c\x1e\x02\x41\x55\xc2\x0f\x24\x08\ +\x0d\x70\x30\x2b\xdc\x94\xc0\xa1\xdb\xca\x38\x41\x46\x6c\xde\x97\ +\xc4\xaa\xbd\x69\xb8\x13\x51\x47\xf8\x11\xac\x86\x86\xee\x0e\x0d\ +\xae\x40\xc5\x0b\x86\x24\x6c\x0b\x29\xc7\x89\xc1\x69\x0e\x42\xab\ +\x2c\xe1\x89\x10\x14\x0d\x24\x63\xa1\x3d\xc0\x8a\x3b\x80\xe9\xc2\ +\xc6\x15\x56\x24\x3c\xa1\xc6\x7e\xe0\xaa\xe3\xf9\xff\x3f\x20\xeb\ +\x8a\xcf\x90\x4d\x73\x34\x74\x9d\x05\x5b\xbd\x17\x41\x7a\x00\x41\ +\x08\xf8\x33\x92\x32\xc1\x87\x42\x19\x20\x24\x4d\x5a\x50\x26\x94\ +\x11\x20\x2b\x6c\xf2\x3b\x3e\x67\xd5\x16\x78\xfa\x35\x33\x38\xf6\ +\x2a\x8e\x2d\x4f\xa7\xb1\x66\x6f\x12\xd5\x42\x15\xbe\x1f\x10\xeb\ +\xec\xea\x0b\x95\xd5\xf2\x50\xc7\x8e\x63\x43\x75\x80\x36\xa0\x5e\ +\x46\xd9\x13\x90\xea\x59\xf9\x3c\x03\xf4\x24\x91\x4a\x2c\x6c\x82\ +\x03\x2f\xe4\x34\x5e\xf8\x1e\x4c\x81\x67\x4c\x64\x57\xf4\x01\x5d\ +\x7b\x10\xa4\x06\xe2\x4a\x97\x22\x68\x0d\x1f\xc4\x2f\x16\x20\xd9\ +\x5e\x44\x0e\x91\x92\xe8\x61\x45\x8c\x99\x2e\x3a\xbd\x0c\x72\x01\ +\x19\xa1\xcf\x5b\x35\x05\x0e\xee\x28\xe1\xe8\x36\x86\xad\x87\x33\ +\x58\xbf\x3f\x09\xaf\x58\x55\x7b\x84\xea\x88\x08\x1a\x22\x36\x41\ +\x2b\x99\xa0\x0e\x48\x38\x60\x02\x1a\x5c\x73\x48\x60\x4a\x88\x49\ +\x54\x10\x00\x10\x8b\x5d\x06\x05\xaa\x43\x13\x70\x3a\x9a\x74\x95\ +\x67\x99\xe0\x4b\x4b\x8d\xeb\x42\x81\x67\x52\x26\x32\x1d\x04\xde\ +\xb1\x07\x5e\x62\x20\x86\x9d\x22\x68\x55\x6d\x20\x14\x42\x9f\x27\ +\x04\x8c\x0a\xd0\x78\x02\xc8\x9f\x04\x26\x24\xe0\xc6\x97\xba\x71\ +\x54\x50\x60\x2e\x1a\x99\x85\xce\x4a\x0a\x39\xdf\xaa\x75\x04\xe9\ +\xc0\xa6\x2a\x8e\xac\x63\xb8\xe1\x78\x16\xdd\x87\x93\x74\xfe\x80\ +\x0a\x22\x5e\xe8\x08\xa8\xac\x0d\x48\x39\x0a\xbc\x26\xa9\x0c\xa9\ +\x7a\xee\x79\x00\x25\x52\x30\xcf\x00\x3d\x39\x8d\x99\x33\xe7\x90\ +\x58\xd1\x04\x39\x77\x43\x03\xc1\xf0\x1a\x38\xe7\x0a\x3c\xdd\x76\ +\x06\xb2\x8d\xc0\x9d\x0b\xb5\x8a\x07\x71\xd5\x75\x5f\xc6\x86\x1b\ +\x33\x31\x74\xc3\x73\x00\xf7\x01\x3f\x2a\x09\x00\x7d\x53\x29\x01\ +\x6d\x84\x87\x82\xe5\xa3\x51\x18\xe8\x9a\xb6\x91\xf3\x0c\x70\x05\ +\xc1\xe0\x01\xd8\xbf\xb6\x8c\xc3\x5d\x1c\xdb\x4f\xe5\xb0\xf1\x64\ +\x06\x7e\x19\xf0\x24\xf4\x72\x10\x64\x80\x8d\x54\x52\x1b\x80\xb8\ +\xf5\xa1\x3b\x61\x64\x26\x3c\x00\x60\x6c\xc1\xfb\x00\x3d\x39\x81\ +\xe9\x13\xc7\xd0\xfc\xda\xed\xca\xb2\x59\x26\x00\x55\x5f\x2a\xf0\ +\x74\x92\x5c\x5e\xd6\x0b\xd9\xb2\x1b\xae\x15\x55\x5c\xe8\x8a\x4b\ +\x84\x24\x40\xc1\x6b\xf0\x32\x41\x9f\x20\x9d\xaa\x81\x57\x01\x4c\ +\x92\x5c\x52\x1f\xa9\x61\x21\x23\x02\x14\xd2\x01\x1a\x39\x47\xd7\ +\x24\x43\xde\xd5\x9f\x3d\x02\xb1\x11\x5d\x33\x38\xdc\x4e\x46\xf4\ +\xe5\xb0\xb9\xa7\x11\xbe\xb4\xc9\x08\x03\xb6\x41\x45\x89\x0c\x00\ +\xf4\x12\x60\x0a\x7e\xc8\x75\xcf\xee\x2a\x5e\xfc\x0f\xc5\x08\x04\ +\x8b\x19\x30\x8a\xb3\xf7\x7d\x1f\xed\x6f\x7f\x0b\x9c\xf6\xe6\xb9\ +\x26\xf8\x21\x60\x27\x27\xd1\x7c\xdd\x5e\x54\x93\xbd\x98\xae\x96\ +\x51\x75\x43\x9a\xd7\x55\x96\x75\xe0\x5c\x83\x67\x4e\xd7\xc0\x3d\ +\xdd\x80\x2e\x6a\x11\xea\x9a\x14\xb4\x09\xa9\x7a\x23\x80\x71\x43\ +\xa0\x90\x07\xf2\x15\xa0\xb3\x08\xe4\x5c\xc4\x4b\x43\x02\x15\x84\ +\xd8\xb7\x6a\x1c\xcf\xad\xa8\xe0\xc6\x63\xcd\x58\x35\xd9\x04\xce\ +\x39\x12\x8e\xa5\x0c\xe0\x92\x04\x46\x45\x11\xde\x03\xc3\xe7\xbf\ +\xa0\xed\x2e\x2d\x78\x2b\x4c\x73\x82\x31\x36\x05\x6f\xf4\x38\x9e\ +\xfb\xe4\xd7\xb1\xf5\x1b\x9f\x00\xb3\xcc\x7a\x13\xbc\x40\xca\xc0\ +\x18\xc2\xc5\xf1\x43\x70\x8c\x75\xc8\xa7\xb2\x90\xf6\x08\xa6\xc3\ +\x22\x66\xfc\x69\x04\xc2\x8f\x5b\x3d\x43\xe0\xa9\x08\x3c\x88\xfb\ +\xd3\xd7\xef\x4c\x3c\x2c\x1e\x81\x5e\xec\x05\x6d\x42\x72\xb6\x11\ +\x13\x06\x50\x6c\x02\x72\x15\xa0\xab\xc4\xd1\x11\x64\xd0\xe1\xe5\ +\x90\x1c\x91\xe8\x2d\x8d\xe2\x38\x2b\x61\x83\xdd\x06\xcb\x30\x24\ +\xe7\x2c\xba\x12\x28\xf8\x6a\x10\x7a\x0f\x0d\x9c\xfb\xf2\xa1\xc9\ +\xc2\x2f\x01\x5c\x24\xf9\x97\x7a\x33\xe4\x91\x86\x30\xf2\xd3\x9f\ +\xe0\xfc\xbf\xaf\xc7\xca\x0f\xde\x09\x70\xa6\x4d\x88\x37\x34\x3a\ +\x0c\xbd\x00\x2e\x3f\x85\x49\x5f\x22\x65\xb5\xa0\xd1\x5e\x87\xd5\ +\x0d\x5c\xb6\xb5\xf7\x4a\x2f\x39\xc8\x47\x2b\xc0\x68\xb9\x11\xe5\ +\xe8\x83\xcb\xc9\x32\x84\x27\xb0\x60\x30\x2c\x18\x7a\x89\x28\x13\ +\xac\xa4\x85\xb4\x93\x46\x73\xb2\x19\x4d\xc9\x26\x91\x43\xc3\x70\ +\xa5\x38\x53\x1e\xee\xbb\xd0\x74\xfe\xe2\x40\x53\xa6\x12\xef\xf0\ +\xcd\x3c\x03\x87\x2a\x6f\x70\x0e\x93\x71\x44\x31\x63\xb0\xd2\xa7\ +\x9f\x3e\xf4\xf9\x1f\x9f\x3b\xf7\x43\xfd\x06\xb1\x22\x29\x16\x35\ +\x40\x77\x41\x09\x40\x0f\x4e\x7d\xfa\x1e\x54\x47\xa6\xb1\xfe\x23\ +\x7f\x0e\xe6\xd8\x60\x80\x1f\xea\xfb\x5a\x11\xaa\x04\x29\x50\xc6\ +\x19\x94\x13\xdf\xc7\x40\xa2\x97\x25\x7c\x03\xd7\xd9\xd7\x8d\x6c\ +\xcc\x6d\xc4\x6d\xcd\xb7\xa5\xda\xd3\xed\x4e\x73\x43\xb3\x59\x0d\ +\xaa\xcc\x0d\x5c\x94\xbd\x32\x66\xaa\x33\x98\xaa\x4e\xa1\xe4\x96\ +\x30\xe5\x4e\x51\xc5\x2c\x64\x9d\x2c\x92\x56\x12\x29\x3b\x85\x84\ +\x95\x80\x63\x3a\xb0\x0d\x5b\x8a\x40\x84\xe3\xa5\x71\x6f\xa4\x32\ +\x52\xee\x2f\xf5\xbb\x3d\x17\x7a\x1a\xc7\xa6\xc6\x3a\xe0\x23\xde\ +\x0f\xf2\x40\x83\xcd\xd0\x56\x62\x90\xe0\x48\x70\x1b\xb6\x61\x84\ +\x64\x82\x75\xf8\xe2\xe8\x91\x7f\xd8\xbd\xf7\x2b\x07\x86\x47\xf7\ +\x01\x18\x24\xcd\x48\x8a\xcb\xfb\x78\x9c\x31\x8b\x52\x8e\xb4\x16\ +\xad\xaf\x7f\x23\x36\x7d\xee\xc3\xb0\xdb\x9a\x4d\x7f\xc8\x0d\x32\ +\xa5\x04\xb2\xf7\x03\x56\x19\xc8\x1c\x03\xb2\xbd\x34\x0e\x48\xba\ +\xa2\x7e\x9d\xb5\x24\x27\xe1\xa0\x23\xd1\x21\x3a\x8d\x4e\xd1\x68\ +\x37\xca\x8c\x9d\x61\x79\x3b\x2f\x73\x66\x8e\x35\xd8\x0d\x08\xc2\ +\x00\xc5\x4a\x11\x85\x4a\x41\x96\xaa\x25\x4c\xba\x93\x6c\xa8\x32\ +\xc4\x2e\x94\x2f\x18\x85\x72\x21\x3e\x5f\xa0\xd7\x01\xaf\x7b\x0e\ +\x2d\x16\x90\x3c\xa0\x79\xc2\x7a\xf6\x73\xe5\x1b\x8d\xce\xce\x16\ +\xf3\x91\xbe\xfe\xef\x7e\xfb\x59\xf5\x11\x7f\xbf\x5e\x54\xd5\xa8\ +\xb8\x57\xf0\x45\x49\xfd\xce\x90\xf0\x48\xed\x30\xb2\x1b\x71\xfd\ +\xa7\xde\x87\xa6\x5b\x77\x22\x3b\x98\x42\xfb\xdf\xa7\x90\xee\x07\ +\x6c\x05\x1e\x87\xd0\xd9\xaa\xc1\xc3\xaa\xcb\x86\xce\x24\x15\x41\ +\x9d\x7c\x0d\xe8\x2f\x31\xa7\x8d\x50\x21\x6b\x3f\xd3\x7b\xcc\xa3\ +\x78\x02\x9f\x41\x1c\x45\xd2\xb8\x7e\xd3\x13\x48\x8a\x2b\xfe\x8a\ +\x8c\x94\x32\x54\x9b\x22\x50\x45\x58\x2a\xe0\xf8\xdf\xf5\x23\x7f\ +\xd3\x2a\xac\x3f\xde\x8d\x55\x95\x2f\x80\xe9\x17\x13\x90\x58\x1d\ +\x28\x27\x19\x5a\x7c\x4e\xd6\x52\x21\xb5\x84\x9e\x93\x3a\xcf\x9b\ +\xd3\xc7\x5c\x4b\xd4\x81\xd7\x63\x71\x35\x7b\xaa\xee\x55\x85\xaa\ +\xea\xbf\xcd\x97\xa4\xf4\x09\x2a\x64\x84\x47\x79\x0a\xc5\x83\xcf\ +\xa3\x01\x36\x84\xde\xa8\x78\x0d\x5a\x4b\x03\xcf\x85\x5e\xc2\x00\ +\x39\xe7\xb8\x06\x3d\x5f\x4c\xe7\xfa\x02\x08\x25\x5b\x43\x57\x5e\ +\xdc\x2f\x4b\xeb\x6e\xd0\x27\x2e\xe1\x24\x7e\x8d\x7e\x7c\x0d\x33\ +\x18\x9c\x0b\xba\xc4\xf1\xa2\xaa\x19\x37\xcf\xcc\xa5\x4d\x90\x70\ +\x31\x41\xcd\xff\x3c\xee\x8d\x66\xa2\xb8\x6a\x5f\x96\xa6\x73\x73\ +\xfd\x21\x4d\x3b\x69\x0d\xb6\xe0\x76\x6c\xc2\x5b\xd0\x89\x6e\x24\ +\x60\xc3\x9a\xb7\xf6\x6b\x32\x17\xd8\x03\xfc\xd9\x59\x8f\x97\x3e\ +\xf6\x20\x09\x7a\x04\x17\xb0\x1b\xc7\xf1\x18\x5c\x9c\xd0\x97\xb9\ +\x22\xf1\xf8\x57\xcb\x80\x7a\x13\x1c\x6d\x44\x63\xbc\x49\x62\x39\ +\xb6\xe1\x55\x58\x87\x57\x62\x05\x36\xd0\x51\x3b\x1c\x18\x57\x6c\ +\x80\x7f\x89\xb9\x22\x8a\x84\xdc\x87\x21\x1c\xc1\x69\xec\x47\x01\ +\x7d\xfa\xc6\x66\xb4\x76\x7f\xa9\x37\xbc\xab\x66\xc0\x7c\x23\x4c\ +\x6d\x46\x52\xdf\xd1\xe7\x95\x29\x49\xb4\xa0\x9b\xec\xe8\xc4\x1a\ +\xb2\xa2\x03\xcd\x68\x27\x35\x23\x8d\x04\x92\xb0\x55\xaf\x18\xda\ +\x16\x17\x02\x15\xf8\x2f\xa8\x0c\x0f\x93\xf4\xa7\x40\xb8\x13\x18\ +\x24\xbc\x73\x78\x9e\x60\xc7\x30\x00\xa0\xa0\x55\x24\x95\xf5\x4e\ +\xe4\x91\x84\x06\x7f\xe9\x7f\x5f\x40\xaf\xb9\x48\x46\x9d\x21\x36\ +\x29\x51\xbb\xa9\x55\x39\x51\xd7\x0b\x86\x16\xab\xdb\xfa\x82\x5a\ +\x56\x60\x95\x08\x52\xe7\x19\x0d\x4a\xd2\xbd\xb1\x14\xf4\xd5\x37\ +\x60\x69\x43\x16\xd9\xce\x50\xcb\xda\x80\x38\x44\x2d\xab\xb9\x50\ +\x8f\x43\x2d\xb9\x10\xf0\xcb\xc9\x80\xa5\x8d\xb9\xcc\x50\xa0\x2f\ +\x51\x5c\xfb\xd5\x59\xe0\xda\x6f\x8d\x5d\x33\xe0\x9a\x01\xbf\xc3\ +\xf1\xbf\x9d\xd2\xae\xe2\x5a\xef\x69\x4e\x00\x00\x00\x00\x49\x45\ +\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x1b\x48\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\ +\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\ +\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x06\xec\x00\x00\x06\xec\ +\x01\x1e\x75\x38\x35\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\ +\x74\x77\x61\x72\x65\x00\x77\x77\x77\x2e\x69\x6e\x6b\x73\x63\x61\ +\x70\x65\x2e\x6f\x72\x67\x9b\xee\x3c\x1a\x00\x00\x1a\xc5\x49\x44\ +\x41\x54\x78\xda\xcd\x7b\x0b\x5c\xcf\xf7\xf7\xbf\xf9\xee\xc6\x30\ +\x14\xdb\xd7\xfd\x32\x66\xc6\x66\xc3\xd8\xec\x8a\x51\x51\x2a\x42\ +\xae\xb9\x35\x84\xb9\x33\x86\xe6\xba\x94\x6b\xc9\xa5\x74\x2f\x11\ +\xa9\x24\x95\x8a\xe4\xbe\xdc\x72\x0b\x45\x49\x4a\x4a\xf7\xcb\xa7\ +\xcb\xe7\xf9\x3f\xcf\xd7\x47\xf3\xdd\x77\xdf\xff\x77\xfb\x7d\xc7\ +\xf0\x78\x9c\xf5\xde\xfb\xf3\x7e\x9d\xf3\x3c\xe7\x75\x5e\xe7\xf5\ +\x7a\x9f\x73\xde\x35\x00\xfc\x65\x5a\xbf\x7e\xbd\xbe\x87\x87\xc7\ +\x48\x77\x77\x77\xcb\xad\x5b\xb7\xb6\x5f\xb0\x60\x41\xcd\xff\xf6\ +\xfc\xa6\x4d\x9b\x6a\xb9\x07\x44\xce\xf1\x39\x7a\xcf\xca\x3b\x26\ +\x65\xa2\x47\x40\xf8\x4f\x32\x76\xd2\xce\x9d\x3b\xad\x5c\x5c\x5c\ +\xc6\x0a\x4d\x12\x9a\xbc\x63\xc7\x0e\x5e\x8f\x70\x75\x75\xed\x2d\ +\xfc\x9b\x71\xec\xd3\xa6\xbf\x34\x38\x28\x28\xa8\xf6\xee\xdd\xbb\ +\x8f\x87\x87\x87\x17\x47\x47\x47\xe3\xe8\xd1\xa3\x90\xbf\x15\xb1\ +\xb1\xb1\x5a\xf9\x2d\xf3\xc0\x81\x03\x39\x01\x01\x01\x09\xfb\xf7\ +\xef\x4f\x15\xba\x11\x12\x12\xf2\xe0\xd0\xa1\x43\x05\x31\x31\x31\ +\xda\x5b\xc9\x77\x50\x5c\x56\xa9\xe8\xc6\xad\x64\xc8\x18\x35\xf6\ +\xd4\xa9\x53\x88\x88\x88\x28\x38\x71\xe2\x04\xc2\xc2\xc2\x1e\xc9\ +\xb3\xfc\x5b\x10\x19\x19\x09\xa1\x22\xe1\x1b\xb7\x61\xc3\x86\x56\ +\x2f\x84\x01\xbc\xbd\xbd\x03\x05\x60\x85\x28\x19\x2b\x33\x64\x2d\ +\xb3\x38\xd5\xc7\xc7\x67\x9d\xbf\xbf\x7f\xe0\xae\x5d\xbb\xa2\x45\ +\xe1\xdb\x02\xf8\x4a\x58\x70\x60\x8e\xb7\xdd\x92\x87\x7b\xf7\x05\ +\x95\xee\xda\x1d\x58\xe6\xe2\xb9\xb7\x6c\xf9\xd6\xb0\xf2\xb9\xce\ +\xa7\x2a\xe7\x6f\x3b\x53\xb9\xd6\x3d\xae\x6c\x93\x67\x4c\xe1\x36\ +\x8f\x43\x99\xde\x1e\x81\x57\xc3\x67\x98\xaf\xda\xe3\xb0\x6c\xa2\ +\xf0\x1c\xec\xe7\xe7\x37\x55\xe4\xcc\x17\x9e\xbb\xf6\xed\xdb\x77\ +\x4e\x8c\x53\x29\xc6\xaa\x14\x6f\x19\xf2\x5c\x0d\x20\xb3\x50\xff\ +\xd8\xb1\x63\x5a\x01\x75\xea\x3f\xfd\x7e\xd2\xb0\x51\x97\x63\x03\ +\x1a\x6e\x3a\x32\x50\x2f\x39\x66\x60\x43\xed\xd1\xc1\x4d\x71\x39\ +\x25\x1f\x57\xd3\x0a\x90\x78\xaf\x08\xc9\x19\x45\xb8\x9d\x49\xd2\ +\x5d\x27\x09\xdd\xb8\x57\x88\xab\x77\x0b\x70\x6d\x58\x6b\x24\x98\ +\xbc\xa5\xfd\xc5\x50\xff\x97\xf3\x06\x7a\x0b\xe3\xfb\xe9\x75\xa8\ +\xe6\x2b\x4b\xac\x63\x70\x70\x70\x8a\x78\x5d\xce\x73\x35\x00\xd7\ +\xac\xb8\x6c\x95\xa7\xa7\xa7\x55\xf5\xbd\xab\xfd\xeb\x35\x8c\x37\ +\xd2\x5f\x15\x6f\xa0\x77\xfb\xe2\x80\x46\xb8\x36\xb8\x09\x6e\x8d\ +\x68\x89\x3b\x56\xef\x20\xcd\xe6\x43\x64\xe7\x97\x21\xb7\x50\x83\ +\xfc\xe2\x72\x14\x94\xe8\xa8\xb0\xa4\x82\x7f\xd5\xbd\xdc\x22\x0d\ +\x72\x0a\x34\xb8\x3f\xf3\x63\xa4\x59\x77\xe0\x38\x8e\x57\x7c\xce\ +\x0d\x68\x7c\x9b\xbc\x29\x43\x8c\x1e\x15\x17\x17\xa7\x7d\xae\x06\ +\x10\x97\xdc\x2d\x6b\x1c\x02\xa6\xd9\x49\x8b\x66\xb5\xe2\x0d\xf4\ +\x17\x9d\x33\xd0\x2f\xb8\x6c\xfa\x36\x6e\x5a\xb6\x40\xca\xf8\x76\ +\xb8\x3f\xf5\x7d\x3c\x9c\xd5\x05\x39\x0b\x7b\x20\x6f\x65\x5f\x54\ +\x54\x56\xa1\xb2\x4a\x8b\x2a\x92\x56\x0b\xad\x22\x5e\xab\x7b\xfc\ +\x4d\x3d\x93\xb7\xd6\x08\xb9\xb6\x5f\x72\x1c\xc7\x93\x0f\xf9\x29\ +\xbe\x97\x4c\xdf\x2e\x88\x99\x63\x71\xed\x60\x70\x60\xf1\x73\x35\ +\x80\xaf\xaf\xef\x51\x59\x9f\xda\x0b\x03\xdf\x9a\x28\xca\x3f\xa0\ +\xe2\xb7\x46\xb6\xc2\xdd\x49\xef\xe2\xc1\xf7\x1f\x20\xe7\x07\x51\ +\x7a\x45\x6f\x14\x38\x0c\x40\xd1\x96\x21\x28\x71\xb3\x42\x59\x05\ +\x50\xa2\x01\x8a\x84\x0a\xcb\x74\x54\x50\xaa\xfb\x5b\x24\x54\x2c\ +\xf7\x4b\xcb\x85\x7c\xbf\x43\x89\xcb\x48\x8e\xe3\x78\xf2\x21\x3f\ +\xf2\x25\x7f\x25\xe7\xfc\xf0\x76\xda\xf3\x06\x0d\x27\xec\xb1\xa8\ +\xf1\x8f\xe7\x62\x00\xb7\x2d\x9b\x6e\x6e\x75\x72\xc2\xa5\x81\x8d\ +\x38\x33\x0a\x58\xd6\xcc\x0f\xf1\x68\xc9\xe7\xc8\xb7\x33\x50\xe0\ +\x4b\xdd\xc7\x42\xe3\x3f\x19\x15\x41\xb3\x50\x19\xb9\x04\x0f\x0b\ +\x81\x07\x05\x40\x46\x3e\x70\x3f\x0f\x48\x57\xa4\xbb\xce\x10\xca\ +\x94\xfb\x59\xf2\x4c\xd5\xd1\x15\xa8\x0a\xff\x81\xe3\x38\x9e\x7c\ +\xc8\x8f\x7c\xc9\x9f\x72\x28\x8f\x72\xb9\x34\xae\x9c\x37\xaa\xdf\ +\xf2\x6f\x35\xc0\x39\xc3\x06\x9f\x3b\xaf\x58\xa4\xdd\xb0\x7e\x3d\ +\x6e\x5b\xb5\x45\xe6\xf4\xce\x78\xb4\xf8\x53\x9d\xe2\xce\x43\x51\ +\xe6\x33\x11\x15\xfb\x67\xa2\x2a\x62\x11\x10\xb3\x0c\x88\x5e\x02\ +\xed\xe1\x1f\x71\xfb\x21\x90\x94\x05\xdc\x7c\x00\xdc\xc8\x04\x12\ +\x9f\x90\xba\x77\x4b\x7e\x4b\x96\x67\xb4\x11\x0b\x80\xc8\x85\x1c\ +\xc7\xf1\xe4\x43\x7e\xe4\x4b\xfe\x94\x43\x79\x94\xab\xe4\x27\x98\ +\x35\xcd\x25\xa6\xbf\xc5\x00\xbf\x18\xea\x4d\x3c\x6f\xa8\x5f\xe1\ +\xb2\x6a\x11\xdc\x76\x6c\x45\xf6\xdc\x8f\x65\x7d\xf7\x41\x91\xd3\ +\x60\x94\x79\x4f\x50\xb3\xa6\x7d\xac\x34\x22\x45\x91\xb0\x19\x40\ +\xd0\x04\x68\x03\x46\xe0\xd2\x3d\xe0\xc2\x5d\xe0\x5c\x2a\x10\x9f\ +\x02\xfc\xf2\x84\xd4\xbd\xf3\xf2\xdb\xc5\x34\x40\xeb\x63\x02\xec\ +\xb6\xe0\x38\x8e\x27\x1f\xf2\x23\x5f\xf2\xa7\x1c\xca\xa3\x5c\xca\ +\x57\x01\x33\x71\x58\xf3\x0a\x62\x7b\x66\x06\x90\x47\x5f\x3a\x6b\ +\xa0\xb7\xe9\x82\x91\xbe\x8a\xcc\xbe\x9b\xed\x10\x12\x1c\xa4\xd6\ +\x68\x89\xeb\x28\x94\xef\x9d\xc6\x59\xd6\x29\x1e\x31\x0f\x08\xf9\ +\x4e\xa7\x84\xdb\xd7\xc0\xe6\x0e\xa8\x5a\xd3\x08\xc7\x93\x80\x63\ +\x37\x81\xa3\x37\x80\x23\x42\x31\x89\x5a\x44\x5f\xd7\xf2\x5a\x51\ +\xac\xfc\x76\xfc\x16\x50\xb1\xec\x75\x60\x65\x5d\x8e\xe3\x78\xf2\ +\x21\x3f\xf2\xad\xf6\x26\xca\xa3\x5c\x25\x3f\x67\x51\x4f\xa4\x4f\ +\xe9\xa8\x70\x9d\x35\x6c\xb4\x89\x58\x9f\xba\x01\x4e\x19\x34\xb6\ +\xbb\x38\x40\x1f\x49\x12\x80\x32\xa6\x75\x82\xff\x16\x3b\xec\xf7\ +\xf7\x56\xb3\x51\x19\x3a\x57\xb4\x59\xaa\x73\xdb\x03\x53\x00\xff\ +\xc1\xc0\xb6\xee\xc0\x9a\x86\xa8\x5a\x5c\x03\x9a\x85\x35\x51\xb4\ +\xe0\x0d\x04\x9e\x2b\x83\xff\x99\x12\x78\x9f\x28\x82\x47\x5c\x21\ +\xdc\x8e\x15\x28\x72\x97\x6b\x2f\xb9\xe7\x77\xaa\x18\x7b\xe3\x4b\ +\x51\x30\xaf\x0e\x4a\xe6\xfe\x83\xe3\x38\x9e\x7c\xc8\x8f\x7c\xc9\ +\x9f\x72\x28\x8f\x72\x95\xfc\xc2\x4d\xa6\x78\xb4\xf4\x0b\xe2\x52\ +\xf8\x4e\x19\x35\xb6\x7b\xaa\x06\x38\x6d\xa8\x37\xe2\x82\xa1\x1e\ +\x99\x73\xdd\xa9\x2d\x2a\xd8\xcf\x1d\xe1\x07\xf6\x73\x7d\xea\x66\ +\x3d\x7c\x36\xb0\x77\x24\xe0\xda\x0b\x58\x5d\x1f\x95\x8b\x5e\x42\ +\xe9\xfc\x9a\x28\x9c\xf5\x32\xb2\x6c\xea\xe0\xe6\xc4\x36\xd8\x28\ +\x67\x97\xb5\xa1\x59\x58\x15\xf4\x00\x3f\x05\x66\xc0\x76\x5f\x06\ +\x96\xed\xbd\xaf\xae\x57\x06\x65\xe2\xe7\x90\x2c\xac\x0f\xcb\x46\ +\xe2\x84\x36\xc8\x9c\x5c\x17\x79\x33\x5e\xe1\x78\xf2\x21\x3f\xf2\ +\x25\x7f\xca\xa1\x3c\xca\x55\xf2\x35\xbb\xbe\xe3\x92\x20\x2e\xe2\ +\x53\x38\x89\xf9\xa9\x18\xe0\xac\x91\x7e\xb7\x73\x06\x7a\xe5\x37\ +\x2d\x5b\xd2\xc2\x14\xa2\x22\x72\x58\xa0\x3f\x0e\xf8\xb9\x00\x51\ +\xe2\xf6\xa1\x36\x80\x9f\x09\xb0\xa1\x2d\xaa\x7e\xac\x81\xb2\xc7\ +\x8a\xdf\x9b\x5c\x1f\x97\xc6\xb6\xc1\xa9\x51\x9d\x71\x7a\x54\x27\ +\xcc\xf1\xbe\x8b\x99\x3b\x2e\x6b\xa7\xd9\x47\x95\x58\x2d\xd9\xf5\ +\xd0\x74\x86\xd3\x6d\xb3\xe9\x4e\xb7\xc7\x2d\xf1\xcb\xb6\xb1\x8f\ +\x2c\x9d\xb1\x2d\x41\x3b\xd3\x33\x85\xcf\xaa\x31\x17\xc7\xb4\x45\ +\xea\xc4\x06\xc8\x9d\xf6\x2a\xf9\x91\x2f\xf9\x53\x0e\xe5\x51\xae\ +\x92\xaf\x8d\x5a\x02\xcd\xee\x29\xc4\x45\x7c\x0a\xe7\x75\xcb\x96\ +\xe5\xc4\xfe\x97\x0c\x10\xdf\x5f\xff\x9f\x67\x0c\xf4\xb3\x13\x87\ +\x36\xe3\x1a\x53\x5b\x50\x91\xa3\x39\x72\xbd\xac\x71\x3c\x2e\x0e\ +\xe1\x5e\x1b\x80\x10\x6b\xc0\xa3\xaf\x9a\x9d\xf2\x1f\x5e\x42\xf1\ +\x9c\x7f\x20\x6b\x6a\x6d\x9c\x1d\xd5\x16\xc7\x2c\x3b\x2a\x8a\x1b\ +\xde\xae\xd2\x75\x60\xbb\xb4\x6f\xbe\xec\x73\xe0\xe3\x8f\x3f\x76\ +\x16\x5a\x2f\xb4\xea\xa3\x8f\x3e\x5a\x4a\xe2\x35\xef\xf1\xb7\xde\ +\x5f\xf5\x3e\xb0\xd5\xa8\x5d\xca\x91\xa1\xed\x2b\xaa\xc7\x9f\x19\ +\xf9\x0e\xd2\x27\xd5\x41\xde\xf4\x57\xc8\x9f\x72\x28\x8f\x72\x75\ +\xf2\x0f\x2f\x62\x80\xa4\x11\x88\x8f\x38\x15\xde\x04\x8b\xe6\xd9\ +\xd4\xe1\x7f\x36\xc0\xf1\xfe\x8d\x4e\x5f\x31\xfb\x27\xf7\x5c\x75\ +\x10\x29\xdc\x38\x08\x65\x7e\xd6\x38\xed\xb7\x06\x91\x11\x11\xb8\ +\xea\xbb\x10\xd8\xf9\x25\x60\xfb\x0a\x34\x0b\x64\xd6\x67\xbe\x8c\ +\xd4\x49\xf5\x70\x74\xf8\x3b\x88\x1e\xd6\x0e\xe1\x43\xda\x94\x2c\ +\xeb\xd3\x2e\xbe\x6b\xd7\xae\x1b\x44\xb9\x39\xa2\xec\x10\xb9\xfe\ +\xec\x43\xdd\xbf\x76\x5d\xba\x74\x69\x4a\xe2\x35\x6f\xf0\x37\x3e\ +\xc3\x67\x39\x66\xda\x57\x1d\x8f\x1f\x1c\xdc\xa6\x98\xbc\xc8\x33\ +\x79\x5c\x7d\xe4\x4c\x7d\x8d\x72\x28\x8f\x72\x75\xf2\x83\x27\x01\ +\x51\x8b\xe9\x09\xc4\x47\x9c\xc4\xab\x70\x9f\x19\xd4\xe4\xf4\xff\ +\x64\x80\xb8\x7e\xfa\xc6\x8c\xf8\xc9\x63\xda\x20\x7b\xce\x47\xc8\ +\x5f\x6b\x88\x52\xcf\x71\x28\x0d\x5b\x8c\xa8\x88\x30\x84\xca\x12\ +\xd0\xee\xfc\x1a\x58\x56\x53\xb9\x66\xfe\xf7\xaf\xe0\xfa\xb8\x06\ +\x38\x64\xd1\x06\x91\x16\xad\xb4\x73\xbe\x69\x7f\x56\x94\x58\x2b\ +\x0a\x0e\xa7\x72\xa2\x94\xbe\xd0\x2b\x7f\xe4\x92\x7c\x86\xcf\x72\ +\x0c\xc7\x92\x87\xcd\x97\x1d\x4e\x46\x0c\x69\x5d\x45\xde\x97\x47\ +\xeb\xe1\xe1\xe4\xd7\x28\x8f\x72\x29\x9f\x3b\x05\x3d\x81\x31\x81\ +\x07\x28\xe2\x24\x5e\xe2\x56\xf8\xe3\x0c\xdf\x36\xfe\xbf\x19\xc0\ +\xb6\x46\xcd\xe3\xfd\x1b\xa7\xca\xde\xaa\x5b\xf7\xcb\xbf\x91\xa3\ +\xe9\x08\x54\x84\xcc\x46\xd4\x3e\x0f\x99\xfd\x70\x9c\x71\x9e\x0c\ +\x2c\x7f\xfd\x57\xe5\xcf\x8f\xd6\x47\xc8\xe0\x96\x08\x1d\xdc\x5c\ +\x63\xdc\xb3\x93\xb7\xcc\xe4\x58\x51\xa4\xb3\xd0\xeb\xff\xeb\x29\ +\x8d\x63\xc9\x83\xbc\x8c\x3e\xe9\xec\x15\x6a\xde\xa2\x92\x32\xce\ +\x8e\x68\x84\xac\xef\x5e\xaf\x36\x82\xc2\x01\xaf\xfe\xc0\xc1\x69\ +\x34\x02\x71\x12\x2f\x71\x2b\xfc\xf1\x43\x5a\xa6\x52\xa7\x3f\x6d\ +\x80\x98\x7e\x8d\xa7\x26\x18\x37\xe6\x0b\x08\x5f\x48\x64\x9b\x31\ +\x83\x66\x8f\x0d\x0e\x07\xec\x54\x89\x8b\x88\x1d\xb6\xa8\x5c\xdd\ +\x48\xb9\x61\x81\x80\xb8\x39\xae\x2e\xf6\x99\x35\x83\xe7\xc0\x66\ +\x0f\xbb\x75\xe9\xb2\x46\x66\xee\x2b\x01\x5e\xf7\x69\x25\x2d\xc8\ +\x8b\x3c\x47\x0f\x1b\x7a\x29\xd0\xbc\xb5\x96\xb2\xae\x8e\xac\x47\ +\x23\x50\xbe\xc2\x81\x9f\x1b\x01\x7e\xa6\x40\xf8\x1c\x9e\x1e\x89\ +\x97\xb8\x89\x5f\xe9\x71\xd4\xe8\xed\xa9\x7f\xca\x00\x47\xbe\x6e\ +\xf5\xfa\x29\x83\x46\x8f\x6e\x0c\x6f\x81\xcc\x19\x9d\x91\xbf\xe6\ +\x5b\x14\x7a\x4c\x40\xa0\xef\x4e\x04\xf8\xfb\x21\xcc\xdd\x1e\x9a\ +\xf5\x1d\x50\x21\x81\x88\x91\x39\x53\x40\xec\x37\x6b\x2c\xca\x37\ +\x79\x24\x20\x17\xca\x6c\x75\x11\xc0\x2f\x3f\xed\xd4\x15\x79\x3a\ +\x38\x38\xc4\x2e\x5e\xf4\x03\x7c\x07\x34\xc9\x0f\x34\x7d\x0b\xa9\ +\x63\x6b\x73\x39\x10\x87\xc2\x03\xc7\x8e\x40\xe0\x18\x06\x45\xd9\ +\x1e\x65\x29\x78\x8c\x25\x7e\xa5\xc7\xc5\xa1\xad\x1e\x51\xb7\x3f\ +\x34\xc0\xa1\x7e\x8d\xe7\x5d\xaa\x9e\x7d\x9e\xb0\x9c\xc7\x62\xfb\ +\xe6\x75\x70\x74\x74\xc4\x41\xd7\x35\x28\x75\xee\x05\xed\x92\x1a\ +\x28\x96\x83\x4a\xce\xd4\x57\x11\x65\xd1\x00\xfe\x26\x8d\xca\x7b\ +\x7c\xd4\xd9\x56\x40\xbe\x23\xa4\x4e\x61\xcf\x82\x24\xf7\xb0\x55\ +\xa8\xf8\xf3\x5e\x9f\xae\xf3\x1c\xf0\x56\x59\x84\x59\x43\xa4\x8f\ +\xaf\x45\x1c\xc4\x43\x5c\x8c\x07\x8f\x97\xc2\x52\x94\x07\xce\xe0\ +\xf9\x80\x7a\x28\x7d\x82\xe6\x8e\x4a\x92\xd7\xf8\x63\x92\xad\xf2\ +\x93\x3c\x66\xad\xff\x68\x80\xf0\x7e\x6f\x5d\xe1\xb6\xc7\xb5\x93\ +\xb0\x61\x12\x7c\xbc\xbd\xb0\x6d\xeb\x56\x1c\xdb\x3e\x4f\x82\x8b\ +\x29\xb0\xf6\x6d\xba\x9c\x3a\xa4\x5c\x1e\xf3\x06\xbc\x06\xd6\xd7\ +\x8e\xe8\xf5\x9e\x97\x04\xab\xce\xcf\x52\x79\x92\xa4\xc8\x4c\x0e\ +\x1e\x3c\x88\xd5\xab\x57\x7b\x9a\xf4\xe8\xec\xea\x31\xa0\x81\xf6\ +\xdc\xb0\x7a\xc8\x9c\xf4\x3a\xf1\x10\x97\xc2\x87\x3d\xc3\xd5\x69\ +\xb1\x2a\x72\xb1\xf2\x82\xbc\xd5\x7d\x95\x3e\x31\xe3\x3f\x45\x68\ +\x68\x68\x16\x73\x96\x7b\xf7\xee\x8d\xfa\x9d\x01\x0e\x7e\xd1\xf4\ +\xcd\x78\x43\xbd\x4a\x46\xce\xa8\x8d\x0b\x21\x09\x4c\x04\xf8\xb8\ +\x23\xd1\x7b\x36\x2a\x82\xac\xb9\xe5\xa8\x83\x48\xd1\xec\x97\x95\ +\xeb\x05\x0e\xaa\x8b\xc5\xbd\x9b\x9f\x13\xe5\x3f\x17\xe5\xd5\x7b\ +\xf9\x33\xa6\x9a\x32\x7b\xd9\x92\x84\x29\x96\xe5\x70\x7b\x89\xf1\ +\x47\x8f\x02\x8c\xeb\x21\x4d\xb7\x14\x88\x8b\xf8\x88\x53\xe7\x05\ +\x31\xe2\x05\x01\xd3\xd4\x51\x39\x7b\x7e\x37\xdc\x1c\xdd\xa6\x92\ +\x3a\x06\x06\x06\x9e\x92\x94\x5a\xe9\xef\x0c\x10\xf0\x6d\x13\x9b\ +\x4b\x66\x4d\x64\x9d\x3b\x21\x3a\xe2\x10\x22\xf6\xf9\x22\xdb\x7b\ +\x12\xb4\x3c\x7b\xef\x1b\x05\x38\x34\xa7\x95\xd5\x81\x24\x6d\x5c\ +\x6d\xb8\x18\xd4\xad\x10\xc5\xc7\x09\x29\x77\xfa\x3b\x48\x92\xae\ +\xef\x4b\x32\xe6\xba\x64\xa3\x35\x4b\x96\x2c\xd1\x6c\x37\x68\x80\ +\x5b\x96\x75\x90\x31\xa1\x16\x71\x11\x1f\x71\x12\xaf\x3a\x1b\x54\ +\x1e\x9c\xaf\xdb\x11\x96\x7d\xa9\xde\x1a\x83\x8c\x9a\xd9\xc8\x32\ +\xd8\xca\xac\xb3\xa4\xdb\xbb\xfc\x86\x79\x88\x49\xfb\xb3\xa1\x5e\ +\xdb\x21\xc9\x4e\x1c\xdd\xb9\x1a\xf9\x2e\xc3\xb8\x96\x74\x91\xd5\ +\xdb\x88\x6b\x4c\x9d\xc4\xb2\xa7\xbc\x86\x93\x43\x6b\xe1\xe7\xde\ +\x8d\xae\x75\xeb\xd6\xad\x2d\xc7\x3e\x0f\xea\xd5\xab\x57\xbb\xc5\ +\x5f\xbe\x7d\xf1\xe8\xa0\x37\xe8\x05\xc4\x45\x7c\xc4\x49\xbc\xd5\ +\x3b\x82\xca\x23\xe4\xff\xdc\x5f\xbd\x27\x44\x9a\xb6\x3a\x21\xf9\ +\xcc\x91\x92\x6a\xcf\x17\x03\x8c\x79\x92\xe1\x59\x35\xad\x76\xb0\ +\xe7\x0e\x6d\xe4\xa1\x30\x9c\x58\x37\x1d\x79\xeb\x0c\x51\xbe\x47\ +\x05\x13\xdd\x1b\xd8\xd6\xae\x8c\xb4\xdc\x76\xd4\x9a\xf3\x1f\xf0\ +\x5a\x95\x51\x8f\xce\x56\xd5\x87\x9b\xe7\x41\x94\xfd\x59\xf7\x0f\ +\x47\xee\xfc\xb6\xb6\xe6\xce\xc8\x3a\xc4\x45\x7c\xc4\x49\xbc\xc4\ +\x4d\xfc\x5c\x06\x3c\x1d\xaa\x83\xd1\x95\x91\x6d\x4a\xdd\x5d\xb6\ +\x7e\x45\x0f\x90\x98\x62\xfb\x2b\x33\x2f\x57\x97\x98\xa8\xc8\x70\ +\xc4\xba\xac\x46\xde\x8e\xc9\x28\xde\x6f\x8b\xb2\x38\x67\x94\x9c\ +\x71\x43\xe1\x61\xb9\xe7\x31\x14\xe9\xf6\x5f\xe1\xfa\xb2\xaf\x70\ +\x66\xf6\xd7\xd8\x34\xa0\x69\x56\xf7\xee\xdd\x55\x81\xe2\x79\x12\ +\x31\xd8\xf5\x6b\x9e\x71\x64\x72\x6f\x9c\x9f\xf7\x0d\x92\xe4\xf0\ +\x93\xb5\xfe\x1b\x14\x78\x0e\x45\x71\xd4\x6a\x68\xce\xba\xa1\xfc\ +\xb8\x33\x4a\x83\x6c\x91\xbb\x7d\x0a\xee\xac\x18\x0e\xd7\x85\x53\ +\x4c\x59\x74\x91\x7a\xc3\x7a\xdd\xec\xbb\xb9\x19\xf1\x80\x13\x7e\ +\x38\x86\xe9\x69\x66\x68\x99\xa4\x64\xee\x8e\xa9\x2a\x66\x6b\x54\ +\x12\xc3\x57\xde\xd7\xd7\x84\x3c\xc0\xd4\x9d\xb7\x31\x7a\xd4\x8c\ +\x48\x99\x81\x3a\xcf\xdb\x00\xc4\x30\x76\xd8\xd4\x18\x2b\xe7\x5b\ +\x58\x12\x70\x1f\x2e\x47\xf3\x11\x71\xa5\x12\x67\xee\x00\xd7\xee\ +\x03\x69\x8f\x80\xdc\x12\x40\x92\xcd\x28\xd5\x54\x22\x3d\xa7\x04\ +\x01\x1b\xec\x1c\x58\x71\x92\x78\xe2\xa1\x98\x48\x76\x37\xea\xe0\ +\xc1\xd0\x8a\xc4\x94\x2c\x14\x95\x56\x00\xd0\x65\x6b\xd3\x73\x81\ +\xc4\x0c\x95\xb2\x62\xe6\x86\xc9\x0b\xf5\x0e\x3f\x7e\xdb\x2d\xf4\ +\x1a\x64\x33\x53\x84\x73\xfc\x73\x25\x62\xf8\xca\xc4\x7a\xee\xf0\ +\x4d\x89\x98\xef\x97\x86\x2d\x87\x73\x71\xe0\x62\x39\x4e\x26\x03\ +\x97\xd3\x81\x94\x1c\x20\xa7\x08\x28\xaf\x04\x34\x15\x55\xc8\xca\ +\x2b\xc3\x01\x27\x87\x7d\xb2\xc3\x15\x8a\xde\xbe\x8a\xc9\xe1\xc3\ +\x87\x35\x41\x7b\xf6\x14\xdf\xcb\x2e\x41\x89\x58\x49\x1c\x00\x79\ +\x25\xb4\x9e\xce\x8a\x67\x6e\x03\xe1\x62\xd5\x1d\x47\xf2\xb0\x78\ +\x77\x3a\x46\x3b\x5e\xc7\x07\x9f\x7e\xdb\x89\x63\x5f\x04\x22\x96\ +\xc1\x0e\x09\x98\xe5\x95\x8a\x0d\x87\xb2\x99\x79\x62\xfa\x8d\x39\ +\x48\x26\x62\x25\x1b\x4d\xe5\x69\x84\x2a\x55\x9c\x89\x74\x75\x3a\ +\x23\x75\x46\xad\x18\x60\x6f\x0d\x9f\x98\x3b\xd3\xf2\x0a\x4b\xb5\ +\x73\x37\x86\x97\xdd\xcf\x29\x45\xa9\x98\x8a\xee\x92\x5b\x0c\xa4\ +\xe6\x00\x57\xd2\x81\x53\x62\x80\xd0\x4b\xe5\x70\x8e\xca\xc5\x82\ +\x5d\x69\x18\x63\x77\x5c\x23\x96\x7f\xfb\x45\x31\x00\xb1\x8c\x5e\ +\x1e\x5d\x35\xdd\xfd\x0e\xec\x43\x1f\x62\xcf\xd9\x52\xc4\xdd\x62\ +\x82\x55\x97\x65\xce\x2a\x50\xf5\x06\x16\x5d\x54\xe5\xc9\x6b\xef\ +\xb1\xbc\xf4\x07\xb9\xd8\x15\x1c\x73\xb2\x86\x94\xa8\x67\xb2\x42\ +\x3b\x7f\x63\x74\x69\xe6\xa3\x52\xba\x89\x3c\x08\x3c\x2a\xa6\xfb\ +\x28\x37\x52\xee\x14\x22\x6e\xe5\x18\xf9\x08\xf3\x7c\xef\x62\xc4\ +\xb2\x90\x1c\x11\xaa\xf7\x02\x19\x40\x6f\xd2\x42\xdf\x32\x1b\xb7\ +\x3b\xb0\x3b\x90\x85\x5d\xa7\x4b\x98\x7c\x65\x06\x5a\xa5\xe1\x1f\ +\xfc\x8b\x01\x1e\x15\x6a\xe0\x19\x1c\xaf\xa1\x21\xfc\x0e\xc4\x9d\ +\xf8\xd5\x00\x0b\x36\x46\x56\x3d\x31\x00\xd7\xcd\x6f\x0d\x10\x7c\ +\x41\xa3\x0c\x30\xd7\xe7\x2e\x46\xae\x88\xc8\x17\xa1\xf5\x5e\x20\ +\x03\xd4\xb3\x5a\x1c\x58\xce\xe0\xcc\xbc\x22\x0d\x10\xfb\x6f\x06\ +\x28\xf9\x57\x03\x04\x9d\x2d\xa7\x01\x7c\x82\x8f\x45\xd1\x00\xb5\ +\xf7\x05\x06\x6e\x3e\xb8\xd3\x55\xfb\x67\x3d\xc0\xd2\xfe\x5c\xa5\ +\x08\x7d\xe3\x05\x32\xc0\x1b\x83\x57\x9e\xd6\xd2\x00\x7f\xc6\x03\ +\xc2\xbd\xdd\xb3\x25\x06\x94\x78\x78\xf9\xac\xa9\x7e\xcb\x0a\x0e\ +\x72\x74\xa8\x62\x0c\x28\xfb\x4f\x31\x20\xf9\x49\x0c\x60\xa4\x65\ +\xc4\xfd\x6c\xac\x7d\xdb\x17\xc5\x00\x5d\x87\xd9\xb7\x35\xb1\xbb\ +\x8c\xea\x18\xb0\xfb\x4c\xc9\x7f\x8d\x01\x41\xae\x5b\x1e\xf0\x20\ +\xb4\x7d\xfb\xf6\x41\x8a\x81\xbc\x5c\xdc\xf5\x72\x58\x55\xf6\xef\ +\xbb\xc0\xdd\x7f\xd9\x05\x0e\x5d\xae\xc4\xf6\x98\x3c\x2c\x92\x5d\ +\x60\x94\xd3\x0d\x18\x4e\x71\x35\x7f\x51\x0c\x60\x69\xf5\xd3\x78\ +\xf3\x75\x57\x7f\xdd\x05\xf6\xc5\xff\x7e\x17\x28\x7b\xb2\x0b\x48\ +\x3d\xc3\xaf\x58\x5e\x88\xd2\xbd\xbc\xbc\x6a\xd5\x90\x7e\x9e\x97\ +\xa5\xcc\xad\xd9\xbc\x62\xd9\x9d\x3b\xf1\xa7\x91\x97\x78\x1e\x95\ +\xf7\xae\xa1\xf0\x5e\x12\x1e\xa6\xa5\x21\x25\x39\x15\x57\x2f\xdf\ +\xc0\xd9\xb8\x93\x08\x0a\x3a\x82\xad\x6e\x87\xb0\xd4\x3e\x10\x8b\ +\x26\x4c\x77\x79\x51\x0c\xf0\xc3\x28\x6b\x9f\x39\x2b\xf6\x62\xdd\ +\x96\x50\xec\xf2\x8f\x46\x6c\xd4\x09\x24\x9c\x3e\x8d\xa4\xc4\x1b\ +\xc8\x48\x4d\x45\x7e\x46\x1a\x34\x99\x49\x28\x4d\xbd\x82\xb8\xb0\ +\x03\x38\x79\xf2\x24\x0f\x41\xfe\x1c\xcb\x46\x87\xc9\x62\x8d\xaa\ +\x79\x53\xac\x9d\x98\x34\x48\x9d\xd8\x5e\xa5\x95\x8b\x77\x58\xa2\ +\x32\x6c\x01\xb3\x2b\x7c\xbf\x56\x69\xe8\xd2\x79\xba\x24\xc8\x3d\ +\xab\xda\x38\x66\xaa\x77\xfd\x45\x31\x40\x48\xbf\xb7\xcf\xde\x1c\ +\x5a\x8f\xb8\x88\x8f\x38\x89\x97\xb8\x89\x5f\xe9\x51\xec\x32\x42\ +\x8e\xf9\xab\x10\x19\x7e\x08\xfe\xde\xee\xf7\xc5\xfd\xd5\x3b\x0c\ +\x5f\x2f\x83\xa5\xc7\x47\x6b\x6e\x6e\xde\xf3\xaa\x55\x7b\x0d\xbb\ +\x32\x72\x16\x7e\xc2\xfc\x3a\x2b\xb2\x4c\x32\xb2\x48\xc9\x3a\x1d\ +\x4b\x55\x4c\x3c\xa8\x57\xcf\x24\xcb\xba\x38\x6d\xd4\xa0\xc3\xf3\ +\x56\x3e\xb6\x6f\xa3\xd6\x17\x07\xd5\xaf\x4c\x16\x3c\xc4\x45\x7c\ +\xc4\x49\xbc\xc4\x4d\xfc\xc9\xbb\x97\x22\x6c\xaf\x0f\x22\xc2\x0e\ +\x62\x97\xb3\x03\x46\x0d\x1e\xd4\xa3\x7a\x3c\x1b\x9d\xa2\xe4\x44\ +\x74\x5f\x22\x69\xe3\xfd\xa6\xed\x92\xef\x8c\x6b\xc7\xfa\x3b\x8b\ +\x8e\xac\xcd\xf3\x75\x92\x15\x5a\x95\x64\xa8\x94\x3a\x1d\xf3\x6f\ +\x4c\x46\xa6\x8e\x7e\x03\xa7\x4c\xf5\xdc\x9f\xaf\x01\x58\xbb\xd0\ +\x0f\x4a\x1c\xfc\x26\xf1\x10\x17\xf1\x11\xa7\xe0\x95\x17\xb7\xc0\ +\x95\x88\x3c\xb0\x17\xf2\x96\x87\xb0\x03\xc1\xf0\x5f\x38\x92\x29\ +\xfb\x02\xea\x5a\x3d\x9e\x3b\x40\x9c\x2c\x81\x12\xb9\xf9\x9a\xf5\ +\x67\xef\x39\xdf\x95\x25\xc0\x96\x14\x96\x9e\x99\x4e\x62\x5a\x89\ +\xe5\x69\x55\x98\x5c\x51\x5b\xb9\xd7\x23\x9b\x57\x91\x2e\x09\x91\ +\x6b\x43\xeb\x95\xc6\x1b\x37\xa9\xfd\x77\x29\x2b\xff\x5e\x92\xbe\ +\xc1\x0f\x25\x78\xb5\xe0\xff\x5f\xea\xaf\xff\xf1\x65\x93\x06\xda\ +\xa4\x61\x75\x15\x9e\x1c\x9b\xd7\x70\x6d\x79\x0f\x84\xb9\xd8\x22\ +\x60\xb7\x1f\x82\x83\xf6\x23\x78\xff\x5e\x04\xad\x9b\x8f\x13\x53\ +\x3f\x46\xca\xe4\x0e\xf0\x30\xef\x14\x46\x5d\xab\x79\xf2\x4d\x70\ +\x8f\x78\x40\xc6\xf1\xe3\xc7\x5f\x92\xe4\x86\xe1\x0d\xab\x76\x15\ +\xa9\x13\xda\xa9\x06\x84\x22\x67\x0b\x54\x04\xeb\x8a\x90\x08\x9e\ +\x08\x6c\xf9\xe0\xd7\x9c\xc0\x03\xeb\xd7\x91\x32\x4a\x79\x81\xff\ +\xb3\x56\x7c\xcb\x96\x2d\x75\xa4\x2d\x2e\x4a\xfe\x56\xd8\xd9\xd9\ +\x55\x3a\x3b\x3b\x63\xdb\xb6\x6d\x05\x5e\x2e\xdb\x2a\xfc\xd6\x2f\ +\x87\x9f\x93\x1d\x5c\x36\xdb\xc3\xc1\xde\x1e\xab\x56\xad\xc2\x36\ +\xe7\x2d\xd8\xe5\xe6\x8c\x18\xa7\xd9\x48\x5a\x67\x82\x07\xf6\x46\ +\x4a\x9f\xdb\x93\x3b\x56\x0e\xfa\xbc\xeb\x6f\x76\x2f\x06\xc1\xb5\ +\x92\x1f\x63\x7a\xe8\x13\xf9\xd7\x3c\xdc\xac\xcd\xfd\x54\x09\x86\ +\x6c\x4e\xe2\x32\x60\xa9\x89\xcb\x40\x65\x57\x7c\x06\xb0\x12\x23\ +\xa5\xeb\x27\x5e\x90\x3c\xbc\x2e\x2e\x19\x37\x18\xfd\xac\x94\xb7\ +\xb5\xb5\x7d\x55\x26\x29\x63\xe5\xca\x95\x55\xa2\xf4\x5d\x31\xc4\ +\x0e\xc1\xec\xef\xeb\xb2\xf5\x56\x80\xb7\x07\xf6\x78\xbb\x21\x28\ +\x70\x2f\x02\x77\x79\x22\x54\x82\xdc\x29\x87\x21\xc8\xd8\xd4\x1b\ +\x79\x5e\xa3\x50\x16\x3a\x97\xf8\xa9\x87\x5a\xd6\x97\xc7\x77\x28\ +\xa4\x8e\xff\x6e\x80\xfe\x92\x23\xcb\x67\x76\x44\x5c\xa3\xf6\xf4\ +\x2f\x3a\x78\xdf\xb5\x7e\x17\xf7\xbe\x7b\x8f\x95\x56\xdd\x6e\x10\ +\x3a\xef\x49\x30\x74\xea\x84\x0a\x29\x55\x17\xce\x64\x2c\x78\x0d\ +\x77\x25\x33\x9c\x68\x51\xaf\xec\xaa\x71\xc3\xf7\x9f\x85\x01\x44\ +\x61\xb7\x35\x6b\xd6\x60\x9b\xfc\xab\xbe\x77\xc1\xa8\x51\x97\x0b\ +\xc6\xfa\xf9\x49\x96\xf5\x91\x36\xbe\x9e\x2a\xbf\xe7\xcf\xa9\x85\ +\xb2\x45\xaf\x40\xeb\xd8\xa9\x3a\xf8\x11\x37\xf1\x53\x0f\xa9\x54\ +\xbf\x07\xf7\x41\x1d\x63\xa8\xe3\xef\xea\x02\x92\x1d\xd1\xc8\x4e\ +\x70\x9d\xef\xd6\xb2\x0c\x4c\x8e\x0d\x69\x9d\x9f\x32\xa1\xbd\x4a\ +\x21\x15\xac\x1b\xc8\xfa\xbb\xce\x0b\x22\xe6\xb2\xfa\xc2\x2d\x86\ +\x25\x29\x46\x5c\x95\x86\x4a\x95\xa5\x90\x60\x5e\xff\x2e\x7b\xf8\ +\x9e\x81\xfb\x67\x6d\xde\xbc\x39\x8b\xd7\xa4\x8b\x06\x0d\x3e\xbf\ +\x38\xb0\x41\xd1\x8d\x21\xf5\x28\xb7\x3a\x25\x4e\x3c\xc4\x45\x7c\ +\xc4\x49\xbc\xc4\xad\xf0\x3f\x90\xd9\xbf\x31\xfe\xdd\xf2\x1e\x5d\ +\xbb\x0e\xa2\x8e\xbf\x33\x80\xa4\x9a\x4f\x48\x96\xf5\x21\x83\xcb\ +\x07\x1f\x7c\xd0\xc4\xb2\x67\x47\x4f\x9e\x09\x68\x35\xe5\x05\xdb\ +\x87\xb3\xde\xa6\xf3\x82\xd0\xa9\xdc\x11\x98\x78\xac\x5e\x0a\xdc\ +\x7e\x24\x1e\xd4\xc1\xd5\xc1\x6f\xde\xbf\x62\xac\xd7\xfd\x69\xae\ +\x7d\x49\x7f\x43\x02\xdf\x21\x35\xf3\x06\x8d\x8c\x2e\x0d\x68\x50\ +\x46\xe5\x29\x8f\x72\x29\x9f\x38\x88\x87\xb8\x88\xaf\xba\x3e\x48\ +\xdc\xb9\xcb\xbe\x50\x55\xe2\x9f\x0d\xde\x0f\xa7\x6e\xff\x2e\xa3\ +\x3a\x25\xd6\x9b\xcd\xc8\x7b\xf6\xec\x09\x14\x0b\xd5\x94\xc2\xac\ +\x41\xa8\x49\xeb\x07\x29\xe3\x24\x16\xcc\xee\xc2\x4a\x2b\x5b\x51\ +\x74\x3d\x40\x87\x7f\x00\xf6\x5b\x31\x20\xca\x76\xc3\x7e\x00\xdd\ +\xe1\xe8\xfe\x63\x23\x24\x0e\x79\xb3\xe2\xa2\x71\xfd\xe9\x4f\xc3\ +\x00\x12\x97\x7a\x4a\xd0\xab\x90\xae\xf1\x95\xf1\x86\xfa\x23\x13\ +\x06\x36\xac\xa8\x56\x9e\xf2\x28\x97\xf2\x89\x83\x78\x88\x8b\xf8\ +\x88\x93\x78\x89\x9b\x05\x91\x4b\xa3\xdb\x95\x50\x27\xea\xf6\xff\ +\x2d\x8d\xc9\x12\x48\x0a\xdc\x1f\x98\x25\xef\x05\xcd\xf9\x7e\xdd\ +\xbf\x5b\xe7\xf5\x49\x63\xda\x68\xb9\x14\x18\x41\x0b\x37\xab\x02\ +\xe9\xe3\xa5\x30\x4f\x77\xca\xda\xd4\x9e\xf1\x80\x05\x09\x9d\x27\ +\x4c\xac\xa5\xf6\xe3\x5b\x72\x2a\x4b\x18\xd4\x30\xf0\x82\x41\xfd\ +\x56\x7f\xb1\x19\x7b\xdc\xc6\x8d\x1b\xe1\x3a\x69\x40\xe6\x35\xd3\ +\xfa\x5a\xf2\x25\x7f\xca\xa1\x3c\xca\xa5\x7c\xe2\x20\x1e\xe2\xaa\ +\x2e\x8c\x12\xef\xc3\xf9\xdd\x71\x67\xdc\x3b\x98\xdb\xe7\x7d\x1f\ +\xea\xf4\x5f\x8b\xa3\x4e\x4e\x4e\x9f\x47\x47\x47\xb1\xf9\xf9\x32\ +\xd7\x89\x14\x3a\xbf\xd8\xd6\xbf\x6d\xe2\xed\xb1\x6d\x75\x01\x71\ +\xf9\xd7\x74\x29\x9e\x0e\x59\x71\x61\x8f\x8e\xee\x6c\xb0\xbe\x15\ +\x41\x70\x26\xd8\xca\xc2\x35\xa9\x72\xf4\xb7\x2d\xe9\x0d\xf5\xb4\ +\x97\x4c\xea\x87\x5f\x34\x6a\x30\xb0\xba\x3c\xfd\x67\x89\x81\x2e\ +\x78\xc1\xd8\xd8\xf5\xeb\x1c\xb0\x63\xec\x17\xe4\x47\xbe\xe4\x4f\ +\x39\x94\x47\xb9\x94\x4f\x1c\xc4\x43\x5c\xc4\xa7\x70\xe6\x48\xd3\ +\xd4\x1d\xe9\x21\x8c\xb6\x78\x27\x8b\xba\x50\xa7\x3f\xac\x0e\x4b\ +\x0c\x08\x0e\x0a\xda\x5f\xec\xe1\xe1\xbe\x49\x06\xbc\x29\x25\xaf\ +\x59\x87\x8c\x5b\xe5\xb0\x54\x96\x61\xd3\x49\x55\x5a\x4b\x76\x8e\ +\x46\xe5\x81\x39\x40\xf4\x13\x23\x70\x06\x78\xfa\xe2\x5a\xcc\x97\ +\x80\xc4\x32\xd5\xfd\xf1\xca\x1b\xd4\x36\x49\xb7\xbd\x68\xaa\x77\ +\x6f\x9c\x8d\xe3\x69\x93\x29\x9e\xab\xdf\x9f\x73\xb2\xff\xfb\xb3\ +\x4e\xbe\xd3\xd5\x3a\xfe\x15\x12\xaf\x79\xcf\x78\xb2\xf7\xaa\x31\ +\x93\x1d\x4f\xc7\x9b\xe8\x27\xc9\x8c\x23\x76\xb6\x21\xa4\x2b\x1d\ +\xde\x13\xbf\x24\x3f\xf2\x25\x7f\xca\xa1\x3c\xca\xad\x56\x9e\x78\ +\x88\x4b\xe1\xcb\x5b\xd5\x17\x3c\xd1\x5e\x1c\xf9\x4e\xe9\x67\xdd\ +\xbb\xce\xa5\x2e\x7f\xaa\x41\x82\x27\x2d\xf1\x80\x34\x59\x0a\x5a\ +\x59\x7f\xbe\xb2\x23\xbc\xdb\xb3\xdb\xc7\x6b\xe2\x87\xb4\x28\x4b\ +\x1e\xd5\x1a\x59\xb3\x3e\xe4\xba\x62\xeb\x2a\x5b\xd4\x9e\x54\x8d\ +\x02\x2c\x01\xe7\x2e\x0c\x44\x2c\x4d\xf1\x38\xca\x59\xe2\xd1\x94\ +\xc0\xd5\x56\x79\x4b\x3a\x3b\xcc\x1c\xae\x62\xc0\x9a\x04\x7c\xbb\ +\xe2\x22\xbe\xf9\xe9\x02\xbe\x5e\x76\x4e\x4b\xe2\x75\x5f\xb9\x67\ +\xb8\x3a\x01\x83\xd6\x5e\x41\xa2\xa5\x3e\x58\xe8\x38\xb5\xa0\x2f\ +\xd6\xda\xd9\x21\x60\x5a\xdf\xea\x46\x29\xf2\xa7\x1c\xca\xa3\x5c\ +\xca\x27\x0e\xe2\x21\x2e\xc1\x67\x80\x94\x89\xed\x70\x63\x64\xeb\ +\x2a\x93\x4f\xbb\x6c\x94\x72\x7d\xbb\xff\x53\x8b\x8c\xbc\x25\xd5\ +\x96\x60\x78\xd3\xd3\xcb\xa3\xd2\xd1\x69\x73\xf9\xac\xd9\xb3\xce\ +\x9b\x7d\xd3\xeb\xd0\xb5\x61\x2d\xaa\xd8\xa4\xfc\x60\xa6\x1c\x90\ +\xec\x8d\x28\x8c\x91\xf6\x71\x7f\xe0\x7c\x20\x68\x3c\xe0\xde\x9b\ +\x8d\x0a\x0c\x4a\x72\x64\x7e\x62\x08\xce\x5c\xfa\x77\x6f\xe2\x7b\ +\xcf\x14\x4c\x71\xbd\x8d\x09\xdb\x92\xc0\x3c\xfe\x98\x2d\x37\x15\ +\x8d\x75\xbe\xa9\x52\xed\xdf\xb9\x24\xab\xa4\x46\xda\xc4\xfa\xca\ +\xd5\x2f\x2d\xfa\x0c\x3f\xfd\xf4\x13\x42\xe6\x1b\x49\xf9\xbb\x26\ +\xf9\x92\x3f\xe5\x50\x1e\xe5\x52\x3e\x71\xe8\x94\xff\xd9\x00\xa9\ +\x12\xb3\x6e\x8d\x68\x85\xe9\x5f\x75\xdc\x2f\x51\xbf\xdb\x1f\x55\ +\xac\xff\x5b\x29\x7a\xba\xaf\xaf\x4f\xe6\x5a\x7b\xbb\x8a\x61\x96\ +\x43\x31\x63\xd0\xd7\x9a\xeb\xc3\x5a\xe0\x86\x34\x28\xa7\x73\x39\ +\xd8\x19\xb0\x53\x53\xd6\xdc\xf7\x0c\x3c\x2c\x44\xb2\x22\xcb\xae\ +\x4e\x36\x35\xb2\xd3\x93\xbd\x7d\xdc\x9f\x75\xf1\x61\x76\x1d\xac\ +\x0b\xcb\x56\x85\x95\xe5\x81\x99\x58\x2a\x45\x8c\x1f\xf7\xa4\x93\ +\x58\xd0\x60\xbd\x81\xfd\x83\x2a\xa3\x93\xf3\x7d\x5d\x5d\xe7\xc9\ +\xb2\x2e\x90\x5d\x00\x11\xcb\xcc\x50\xb9\xbc\x2e\xf9\x92\x3f\xe5\ +\x50\x1e\xe5\x52\xbe\xc2\x91\xb3\xbc\x37\x92\x46\xb7\x11\x7c\x2d\ +\x61\xff\x6d\xfb\xb3\xb2\xee\xfb\xfe\x99\xb2\xdd\x9f\x39\x89\xbd\ +\x2b\x5e\xb1\xcb\xfa\x3b\xeb\xdc\xe9\x66\xdf\x6a\x13\x2c\x5a\x80\ +\xfd\x03\xb4\x74\xee\xaa\x3e\x28\xde\x3a\x8c\xed\x69\xaa\x23\x03\ +\xd1\xca\x1b\x74\x0d\x4b\xbb\xcc\x80\x1d\x3d\x58\xaf\xd7\x2d\x8d\ +\x1f\x6b\x21\xe0\x97\x52\x56\x97\x54\x97\xe8\xce\xd8\x02\x56\x71\ +\x14\xb9\xc6\xaa\x6e\x51\x76\x90\xaa\x74\x56\xe9\x0f\xb5\xd5\x3b\ +\xc7\xfd\x55\xed\xe1\xe4\xb8\x19\x51\x6b\xad\x50\xe5\x33\x88\x7c\ +\xc9\x9f\x72\x28\x8f\x72\x95\xfc\x07\x0b\x7b\xe2\xc6\xf0\xe6\xb8\ +\x3e\xac\xb9\x76\x69\x9f\x77\x4f\x8a\xdb\x0f\xe5\x89\xef\xa9\xb6\ +\xca\x0a\xc3\xfa\xfd\xfa\xf5\x9b\x3e\x6c\x40\xff\x6b\x27\xa5\x4f\ +\xe7\xba\x45\x53\x24\x8d\x6a\x85\xec\xc5\x9f\xa9\xfa\x7b\xa9\x87\ +\x15\x23\xf0\x93\x46\x69\x6e\x49\x3c\x94\x70\x9d\x7a\x19\xa0\x6a\ +\x47\x2f\xe6\xe9\x98\xad\x55\x7d\xc1\x51\xd7\xaa\x10\x79\x55\x47\ +\x87\xe5\x9a\x7d\xc3\x2c\xbf\x31\x99\x59\xb5\xe9\x5d\x35\xdb\x59\ +\x9e\x23\x20\x81\x19\x47\x9c\xe7\xa0\xfc\xc0\xf7\xd5\x0d\xd3\x94\ +\xa3\xe4\x15\x6c\x30\xc1\x5d\x9b\xce\x10\x2c\xec\x09\xac\x18\xdd\ +\xab\x23\xcf\x31\xc3\x88\xf5\x99\x74\x8b\xb3\x0e\x27\x3b\x43\xbf\ +\xee\x5d\x3f\xda\x14\x32\xa0\x45\x36\x3f\x65\xb9\x2e\x94\x32\x5e\ +\xce\x0a\x2b\x7a\x57\xb7\xca\xab\x37\x48\x2d\xbd\x41\x88\x19\x19\ +\x06\x2a\xed\xc1\xef\x55\x92\xf2\x7c\xaa\xae\xd4\x76\xf6\xce\x6f\ +\xa9\xba\x63\x9c\x99\x5c\x6d\xb0\xb5\x32\xde\xa3\xd0\x1f\xb1\xdb\ +\xdf\x0f\xb1\x6e\x4b\xa0\x91\x3a\x3f\xf9\x92\x7f\xd1\x16\x0b\x64\ +\xcc\xe9\x0e\x76\xb1\x11\xc3\x49\xb3\x16\xc5\xbd\x3f\xf9\xd0\x99\ +\xd8\x88\xf1\x99\xb6\xcb\x8b\x80\x57\xc5\xc5\x7a\x08\xd9\x3a\x7c\ +\xdd\xfa\xea\x25\xf3\xa6\x55\x6c\xa6\xbc\x2a\x40\x52\xad\x3b\xca\ +\x56\xd9\x5f\x19\xa2\xd4\x6b\x3c\xca\xf7\x4d\xd7\xa5\xd5\x8e\xd8\ +\x42\x7b\x64\x39\x92\xb3\x80\x5b\xd5\xdf\x0a\x64\x00\xd7\x9f\x50\ +\xf5\x37\x03\x4c\x63\xcb\x2c\xff\xa4\x82\x5b\x4e\xc4\x6a\x7e\x32\ +\x87\x38\x37\x5b\x14\xee\x1c\xa5\xf8\x66\xfe\xf0\x19\x12\xa5\x81\ +\x8b\x32\xaf\x98\x37\xd1\xfa\x18\xb6\x4e\xed\x2a\x58\x88\x89\xd8\ +\xfe\x96\x0f\x26\x78\xa4\x94\x08\xfb\x9e\x58\x7c\x5a\xcf\xae\x5d\ +\xdc\xbd\xfb\xb7\xbc\x77\xd9\xf4\x9f\xda\xcb\x83\xde\xc2\x55\x01\ +\x76\x5b\x3c\x22\x73\xc1\xa7\xe2\xa2\xa6\xec\xce\x50\xc7\xd2\xb2\ +\x7d\x33\x91\xf5\xaf\x5f\x8b\xe4\x02\xf7\x14\xc9\x35\x29\x8f\xbf\ +\xe9\x72\xf8\xe5\x21\xf3\xd4\x69\x2e\xcd\x73\x26\x22\x24\x89\x79\ +\x62\xe3\x34\xa4\x4d\xff\x40\x29\x4e\x19\x97\xa5\x43\x2c\x74\x60\ +\x8b\xec\xfe\x9f\x7c\xe8\x4b\x0c\xc4\x42\x4c\x7f\xeb\x27\x33\x8f\ +\x4f\x8b\x8d\xc4\xf2\x7d\xe4\xbc\xb0\xa0\x4f\xf7\xce\xbb\x43\x0c\ +\x9b\x65\x13\x60\x82\x49\x63\x92\x02\x7a\x4b\x1a\x9e\xd3\x67\x77\ +\x43\xae\xbd\xb1\xca\xcd\x17\x69\x9e\x7c\x2b\x94\xaf\x88\xd7\x8a\ +\x54\x49\xbe\x44\x23\xd7\x8e\x16\x78\xb0\xe4\x4b\x1c\x5f\x31\x01\ +\x52\xb8\x45\xec\xf7\xfd\x65\xb6\x75\x7c\x8f\x18\x37\x2d\x1c\xde\ +\xf3\xfd\x60\xca\xa4\x6c\x62\x20\x96\xe7\xf0\xe1\xe4\x6f\xbc\xa1\ +\xa9\xcc\xc4\x40\x01\x63\x3b\xb0\x7b\xa7\x60\x97\xbe\xad\xd3\x4e\ +\x98\xb6\xc0\x25\x93\xb7\xf8\x4d\x91\xa2\x04\xf3\x66\x2c\x4c\xfc\ +\xe6\x8b\xb1\xea\x7f\xbc\x26\x55\x7f\x39\xc6\x67\x39\xe6\xe0\xe6\ +\x95\x60\xd3\xc6\x59\x8b\x96\x9a\x3d\x86\x2d\xee\x8f\xfc\xb4\x63\ +\x38\x65\x50\x16\x65\x52\xf6\x5f\xc5\xff\x54\x1b\x19\x85\x5a\x0b\ +\x99\x09\xc0\xd9\xd2\xbf\xe3\x3a\xc2\xc2\x3c\xcf\x71\xf0\xa7\x88\ +\x36\x6e\x59\x79\xde\xac\x79\x55\x4e\x6e\x11\xf2\x8a\x1e\x7f\x2f\ +\x58\x5a\x81\xa2\x27\xc4\xef\x07\x75\xdf\x0e\x16\x94\xe1\x82\x79\ +\xf3\xaa\x83\xd6\xdf\x6a\xa2\xa2\x0e\xc3\xd3\xdd\x2d\x4f\x66\xda\ +\x81\x3c\xc9\x9b\x32\x28\xeb\xf9\x7e\x3a\xfb\xc7\x86\xd0\x97\x99\ +\xfa\x40\x8c\x60\x6e\x6d\x6d\x7d\x6e\xd2\xa4\x49\x45\x42\x55\x43\ +\x87\x0e\xcd\x1e\x6d\x39\x3c\x75\xe9\xc4\x11\x29\x9b\x57\xda\xe7\ +\x3a\xba\x86\x6a\x1c\xdd\xc2\x35\x5b\xd6\x6f\xcb\xb5\x9b\x63\x73\ +\x73\xde\x8c\x69\xf1\xf3\xe6\xcf\x3f\x2f\x87\xb0\x6c\xf9\x3a\xb4\ +\x54\x52\x75\x9a\x3e\x7d\xfa\x0c\x27\x2f\xf2\x7c\x16\x1d\xa8\xcf\ +\xba\x68\x59\x53\xa8\x81\x8d\x8d\x8d\xa9\xb4\xb4\x1d\x95\x63\x6d\ +\x16\x5f\x6e\x98\xb8\x0c\x8b\x88\x42\xae\x78\x03\x29\xf1\x66\x32\ +\x1b\x18\x8b\x1f\x7f\x30\x5d\x2a\x5f\x85\x56\x49\x9a\x2e\x41\x0c\ +\xd6\x82\x3c\x9e\x25\x46\xfe\xe7\x6f\xa5\xe5\xcb\x97\xff\x53\xd2\ +\x7b\xc3\xb6\x7b\x07\xad\xde\xb1\xe7\x88\xf7\xce\x7d\xb1\xfe\x2e\ +\xbe\xc1\xeb\xe5\xde\x2c\x49\x7c\x4c\xe2\xa7\xf2\xac\xd9\xfd\x5d\ +\x78\xfe\x1f\x54\xc7\x67\x32\x0b\x29\x7c\xe5\x00\x00\x00\x00\x49\ +\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x20\x1c\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\ +\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\x1b\xaf\x00\x00\ +\x1b\xaf\x01\x5e\x1a\x91\x1c\x00\x00\x00\x07\x74\x49\x4d\x45\x07\ +\xd7\x08\x12\x14\x39\x28\x29\x91\x7c\x0e\x00\x00\x1f\xa9\x49\x44\ +\x41\x54\x78\xda\xe5\x9b\x09\xb0\x5c\x57\x99\xdf\xff\xb7\xf7\xbd\ +\x5f\xbf\xfd\xe9\xe9\x3d\x49\xd6\x2e\xd9\xda\x2c\x79\xc1\x78\xc0\ +\x76\x42\x81\xc1\x03\x64\x0c\x13\x1c\x42\x65\x02\x4e\xb1\x84\x78\ +\x5c\xc5\x14\x55\x49\x2a\x54\x48\x05\x2a\x03\xc3\x14\x03\x55\x33\ +\x13\x43\x2a\xae\x21\x9e\x01\x26\x05\x43\x80\xd8\xb2\x0d\x78\xc3\ +\x96\x25\x6b\xb1\xf5\xb4\x3d\x6b\x7d\xd2\xdb\xb7\xde\xb7\xdb\xb7\ +\xf3\x3b\xa7\xbb\x35\x12\x1a\x0a\x18\xb0\x81\x4a\xcb\x9f\xcf\xed\ +\xbb\x9c\x77\xbe\xed\xff\x2d\xf7\xb4\xfe\x7f\xff\x38\xaf\xe7\xdf\ +\x59\xb3\x66\x8d\xaf\xab\xab\xcb\xd7\xdb\xdb\x6b\x29\x91\x48\x38\ +\xd5\x6a\x55\xb9\x5c\xce\x5b\x58\x58\xf0\x96\x97\x97\xbd\x0b\x17\ +\x2e\x78\xd9\x6c\xb6\x29\x09\xfa\x2d\x16\x40\x24\x12\xf1\x6d\xdd\ +\xba\x35\xb0\x7b\xf7\xee\xf8\xdd\x77\xdf\xbd\xb5\xaf\xaf\x6f\x67\ +\x34\x1a\x5d\xcf\xf9\x75\x7e\xbf\xbf\xd7\x71\x9c\x04\x14\x6f\xf2\ +\x69\x34\x1a\x05\x43\x08\x63\xa6\x5c\x2e\x9f\x2a\x16\x8b\xe3\xd3\ +\xd3\xd3\xfb\xbf\xfd\xed\x6f\x9f\x3c\x70\xe0\x40\x0d\xa1\x34\x8c\ +\x40\x7e\x1b\x04\xe0\x6c\xda\xb4\x29\x74\xef\xbd\xf7\xf6\xbe\xf5\ +\xad\x6f\xbd\x07\x2d\xbf\x3d\x16\x8b\xdd\x1c\x0e\x87\xfb\x60\x5a\ +\xf0\x2a\xd7\x75\x2d\xc1\xb0\x3c\xcf\xb3\x0f\xf9\x7c\x3e\x4b\xc1\ +\x60\x50\xdc\x67\xcf\x57\x2a\x15\x15\x0a\x85\x49\xac\xe1\xd9\xa9\ +\xa9\xa9\x6f\x3d\xca\xe7\x5b\xdf\xfa\x56\xde\x58\xca\xaf\x52\x18\ +\xce\xaf\x4a\xdb\xd7\x5f\x7f\x7d\xf4\x13\x9f\xf8\xc4\xae\x6d\xdb\ +\xb6\x7d\x34\x9d\x4e\xdf\x0d\xd3\x29\xc3\x08\x1a\x15\x1a\x55\xa9\ +\x54\x52\x15\xa6\x6a\xb5\x9a\xdc\x7a\xbd\x25\x00\x08\xa1\x40\xad\ +\x95\xc0\xbc\x15\x42\x38\x1a\x55\x2a\x95\xb2\x14\xe5\xb8\xce\xfd\ +\x8b\x8b\x8b\xf3\x33\x33\x33\xff\x7b\x6c\x6c\xec\xcf\x3e\xf7\xb9\ +\xcf\x8d\x4f\x4e\x4e\xba\x46\x10\xbf\x6e\x01\x38\x1b\x37\x6e\x8c\ +\x7e\xfa\xd3\x9f\xbe\x79\xc7\x8e\x1d\x7f\x94\xc9\x64\xde\xe2\xe7\ +\x03\xd3\xc6\xaf\x55\x2c\x14\x54\xe1\xd8\x50\x15\x2a\x23\x04\xc8\ +\x0a\xa2\x8e\x20\x1a\x58\x82\xe1\xde\xe7\x38\xf2\x07\x02\x0a\x05\ +\x43\x0a\x86\x42\x0a\x84\x43\xf2\x9b\x63\xc6\x68\x3c\xae\x9e\xbe\ +\x3e\xf5\x41\x21\xae\x2d\x2d\x2d\xd5\x2f\x5d\xba\xf4\xcd\x23\x47\ +\x8e\x7c\x96\xbf\x7b\x22\x9f\xcf\xbb\xbf\x16\x01\xa0\x9d\xe0\x87\ +\x3f\xfc\xe1\x91\xf7\xbf\xff\xfd\xff\x7e\x68\x68\xe8\x03\x98\x70\ +\x10\x4d\x5b\xc6\x4b\x30\x6e\x28\xbb\xbc\xac\x85\xb9\x79\xcd\xce\ +\xcd\x6a\x6e\x76\x56\x4b\x8b\x4b\xca\xe6\xb2\xd6\x1a\x3a\x02\xf0\ +\x49\x0a\xfa\xfc\x8a\x84\x82\x4a\x18\xcd\x27\x12\xea\x4a\xa7\xd5\ +\x95\xe9\x56\x2a\xd3\xa5\x68\x2a\xad\x50\x22\xae\x70\x2c\xa6\x6e\ +\x84\x30\xbc\x72\xa5\x62\x1c\xcf\xce\xce\x96\xcf\x9c\x39\xf3\xc5\ +\x6f\x7c\xe3\x1b\x9f\xfb\xfa\xd7\xbf\xbe\x2c\xc9\x7b\xbd\x04\xe0\ +\x8c\x8e\x8e\xc6\xbe\xf4\xa5\x2f\xbd\x63\xcf\x9e\x3d\x7f\x8a\x89\ +\x0e\x5d\xd6\x78\x3e\xaf\x1c\x4c\x4f\x4f\x4d\xe9\xfc\xb9\xf3\x3a\ +\x73\xf6\x8c\x26\x26\x26\x34\x03\xf3\xf8\x72\x87\x71\x6b\xfa\xc2\ +\x3d\x1c\xa3\x7d\x49\x01\xc7\xa7\x00\x18\x10\x0a\xf8\x15\x45\xcb\ +\x89\x48\x54\x19\xcc\xbf\xaf\xa7\x5b\x83\x83\x83\xea\x5f\xb1\x42\ +\xe9\x81\x01\x45\x33\x19\x85\xcd\x79\xce\xad\x5a\xb5\x4a\xc2\x72\ +\xce\x9d\x3b\xf7\xea\xc1\x83\x07\xff\xf5\x27\x3f\xf9\xc9\xe7\x5d\ +\x3e\xaf\xb5\x00\x7c\xb7\xdc\x72\x4b\xf7\x97\xbf\xfc\xe5\xff\x40\ +\x48\xfb\xb7\x66\xed\x98\xa0\x0a\x50\x76\x71\x51\x13\x17\x2e\xe8\ +\xc4\xf1\x13\x1a\x3b\x7e\x4c\x68\xc7\x32\x5e\x2e\x96\xd4\xdb\xdb\ +\xa3\x95\x2b\x86\xd5\xc7\xd8\xdd\xd5\xa5\x58\x24\xa2\x30\xbe\xde\ +\x6c\x78\x06\x0f\xb8\xa7\xa0\x02\x02\x5c\x5a\x58\xd0\xfc\xf4\x0c\ +\x34\x8d\x60\x9a\x8a\xe0\x06\x29\x5c\xa0\xbf\xa7\x47\x2b\x56\x0e\ +\x6b\xc5\xea\xd5\xca\x8c\x8c\x2a\xda\xdb\xab\x38\xc2\x19\xe5\x7b\ +\x5f\x7f\xbf\xc0\x86\x2a\xd8\xf0\x1f\x1f\x7c\xf0\xc1\x2f\xe3\x22\ +\x95\xd7\x4a\x00\xfe\xb7\xbf\xfd\xed\x2b\x3e\xff\xf9\xcf\xff\x05\ +\x5a\xb9\x1b\x60\xb2\x8c\xe7\xd0\xec\xe4\xc5\x8b\x3a\xfa\xca\x2b\ +\x3a\xf0\xd2\x4b\x3a\x7e\xf2\xa4\x66\xa6\xa6\xf1\xd9\x5e\x6d\xdb\ +\xba\x55\x9b\x37\x6d\x52\x22\x1c\x91\xaf\xe9\xc9\xef\xb5\xc8\x31\ +\x04\xf3\x62\x84\xac\x45\x34\x0c\x71\xec\x72\x5f\xb5\x5a\xb3\x73\ +\x9e\x3e\x76\x4c\x0b\x08\xd1\x80\x63\x12\xb3\xef\x87\xf1\x95\x30\ +\xbd\x62\xfd\x7a\xa5\x56\x8d\x2a\xc2\xf7\x01\x5c\x62\xf5\x75\xd7\ +\x59\xa0\x45\x08\x5f\xf9\xd4\xa7\x3e\xf5\xe0\xc9\x93\x27\x8b\x3f\ +\x2f\x40\xfa\x7f\x5e\xe6\x3f\xf0\x81\x0f\xac\xf9\xcc\x67\x3e\xf3\ +\x48\x7f\x7f\xff\x9d\x26\x44\xe5\xdb\x1a\x3b\x31\x36\xa6\x1f\xfe\ +\xf0\x87\x7a\xe2\x07\x3f\xd0\xcb\x2f\xbf\xac\x01\x16\xf5\xce\x77\ +\xdc\xa3\xbb\x6e\xbf\x5d\xd7\xa1\xf5\x0c\xbe\x9d\xc4\x54\xd3\x6a\ +\x51\xaa\x43\x9c\x4b\x4a\x4a\x74\x88\x73\x71\xc6\x18\x6e\x11\xe7\ +\x5a\x6f\x32\xa5\x75\x1b\xd6\x69\x04\x06\x6b\x08\xb9\xb0\xb0\xa8\ +\x12\x02\x2f\xf2\x37\x6b\x4b\x4b\xf2\x55\xaa\x0a\x20\x98\x4a\xdd\ +\x55\xae\x84\x95\x81\x0f\x03\x03\x03\xbb\x6e\xb8\xe1\x86\xad\x58\ +\xc4\x63\xe7\xcf\x9f\xaf\xfe\xaa\x04\xe0\xbf\xf3\xce\x3b\x57\x7e\ +\xf6\xb3\x9f\xfd\x5f\xc4\xf5\x5b\x0d\x8a\x1b\xb3\x9f\xc3\x4c\x5f\ +\xda\x7f\x40\x8f\x3d\xbe\x57\xcf\x3e\xfb\xac\x5c\x7c\xfb\xbd\xbf\ +\xf7\x7b\xba\xe3\x8d\x6f\xd4\x20\xc0\x95\xc2\xa7\xd3\x4e\x87\xe9\ +\x0e\xb3\x0e\x0c\xc2\xa4\xa4\xa8\x31\xf1\x26\x24\x99\x11\xe2\x9c\ +\x19\xa1\x98\xbd\xc6\x79\xac\x22\x01\x26\x5c\xb7\x6e\xbd\xba\x01\ +\xc4\xfc\xf4\x94\xaa\x68\xba\x9c\xcb\xab\xba\xbc\x24\x87\xb5\x84\ +\x88\x1e\x0d\x9f\xa3\x3c\xc7\x19\x5c\x05\x21\x6c\x02\xa3\x36\xee\ +\xdb\xb7\xef\xbb\xe0\x52\xfd\x97\x15\x80\x8f\x30\xd7\xff\xd0\x43\ +\x0f\x7d\x85\x89\xef\x00\xc4\xac\xd9\x4f\x5d\xba\xa4\xe7\x9f\x7f\ +\x5e\xff\xf7\xb1\x47\x75\xe8\xe0\x41\xed\xda\xb1\x43\xff\xfc\xde\ +\x7b\xb5\xb2\xa7\x57\xe9\x0e\xe3\x57\x68\x38\x0a\x85\x61\x0c\xaf\ +\x57\x00\xc6\x02\x8c\xfe\xa6\x20\x46\xaf\x75\xec\x33\xc7\xf6\xba\ +\x21\x29\xc8\x18\x16\xe4\xf1\x9c\x5b\x07\x3b\x12\x1a\xc1\x22\xaa\ +\x33\x73\xaa\xb1\x86\x5a\x89\xd0\x4a\x44\xb1\x42\xf0\x33\x23\x96\ +\x96\x03\x8c\xbb\x00\x4a\x42\xe6\x26\xb2\xd0\x81\xef\x7f\xff\xfb\ +\x8f\xe3\x5a\xee\x3f\x56\x00\x0e\x79\x7b\xea\xe1\x87\x1f\xfe\xcf\ +\x6b\xd7\xae\xbd\x8f\x58\x6e\x32\x33\x4d\xc3\xfc\x8f\x9f\x7b\x4e\ +\x8f\xed\xdd\xab\xb3\xa7\x4f\xeb\xdd\xef\x7c\xa7\x6e\xdb\xbd\x47\ +\x5d\x80\x5a\x86\x85\x74\x18\x8f\x59\xa6\x61\xb6\xcd\xa4\x45\x7c\ +\x33\x1a\xbf\x6f\x42\x1c\x37\x6d\x24\x68\x8d\x6a\x9f\x77\xec\xbd\ +\x8c\x1d\xe1\x58\x30\x6c\x32\x59\xdd\x5a\xcf\xf0\x9a\x0d\x6a\x10\ +\x4e\xdd\x42\x8e\x30\x5a\x53\x3d\x57\x40\x08\x65\x2c\x21\x88\xa4\ +\x23\x2a\xd6\x6a\xd6\x1d\x58\xfb\x2e\x92\xb3\x65\x84\xb0\x5f\xcc\ +\xfe\x0b\x0b\x80\xb8\x1e\xf9\xc2\x17\xbe\x70\xef\x6d\xb7\xdd\xf6\ +\x5f\x00\x3c\x1f\xcc\x5b\xb3\x7f\xe1\xf9\x17\xb4\xf7\xf1\xc7\x75\ +\x11\xc4\xbf\xef\xf7\x7f\x5f\x1b\x09\x47\x5d\xf8\x62\x06\xcd\xe3\ +\xd7\x76\x91\x21\x18\x68\x69\xb5\xcd\x58\x9b\xa9\xa6\x65\x9a\xb1\ +\x7d\xac\xf6\xb1\xda\xc7\xba\xea\xd8\x8e\xac\xc3\x53\x20\x0d\x40\ +\x3a\x9e\x42\x45\xc9\x29\xd7\x35\xb4\xf6\x3a\x35\x96\xc1\x02\x37\ +\x27\xa7\xee\x22\x84\xa2\xfc\x60\x42\x08\xb0\x6d\x1a\x21\x10\x0d\ +\x07\x08\x95\xe4\x0b\xbf\x43\x8e\xf2\x14\x2e\x3a\x21\x66\xfc\x45\ +\x04\xe0\xa7\x80\xd9\xf4\x91\x8f\x7c\xe4\xaf\x40\xe0\xa4\xc9\xe8\ +\x96\x09\x73\x07\x0f\x1c\x40\xf3\x8f\xeb\x3c\x21\xce\x30\xbf\x66\ +\x60\x00\xcd\xfb\xd4\xed\xf7\x29\xe9\x39\xd6\x7f\x03\x2d\x2d\x42\ +\xad\x58\xaf\x0e\xa3\x57\x33\x79\x95\x15\xa8\x6d\x05\x96\x38\xee\ +\x8c\x1c\x28\x18\xa7\x2e\xe8\x8a\x28\x56\x73\xe5\xe5\x4c\xf4\x80\ +\x88\x40\xfd\x6b\x56\x03\x86\x17\xb9\xa7\x2a\xaf\x84\x80\x8a\x65\ +\xf9\x39\x1f\x8a\xc7\xd4\x20\xcc\xba\x92\x86\x56\xac\x08\x90\xa7\ +\xdc\x76\xe2\xc4\x89\x47\x00\xc6\xf2\xcf\x2d\x00\x24\xd7\xf5\xc5\ +\x2f\x7e\xf1\xb3\x84\xbb\x5b\x08\x2f\x36\xc1\x39\x41\x48\x7a\xfc\ +\x89\x27\x34\x06\xd2\xbf\xfb\x77\xef\xd1\xda\xa1\x15\xea\x86\xf9\ +\x54\x44\xea\x92\x8f\xe4\x25\x2e\x11\xbe\x3a\xcc\x59\x26\x1a\x10\ +\x82\x40\xcb\x57\x6a\xfe\xaa\x31\x68\xb4\xe6\xba\xc4\xf7\x11\xad\ +\xba\x79\x8f\xfa\xd6\xae\x55\x1f\xbe\xde\x47\xa8\xeb\xdf\xb8\x56\ +\xf1\x35\xbd\x0a\xf7\xf4\x6b\xd5\x75\x5b\xd4\xbf\xe1\x06\x0d\x6e\ +\xde\xac\x9e\xd1\x51\x2d\x9c\x1a\x57\xdf\x48\x9f\x16\x16\x27\x14\ +\xab\x53\x64\x95\x5d\x35\x89\x4e\x01\x39\x0a\xa6\x92\xaa\x01\x9e\ +\x41\x04\xd1\xc3\x07\x2b\xf0\xbe\xf7\xbd\xef\x3d\x2d\xa9\x71\x8d\ +\xa5\xeb\xda\x4f\xf0\x81\x07\x1e\x78\x13\x7e\xff\x1e\xc2\x9d\xcd\ +\xe3\xa7\x88\xc9\xa0\xaa\x8e\x1e\x79\x59\xb7\xec\xd9\xad\x75\xc3\ +\xc3\x4a\x4b\x84\x38\xc1\x78\x40\x41\x98\x1b\x20\x16\xa7\x07\xfb\ +\x5b\x0c\x37\x5a\xc4\xf1\x15\x82\xb8\x96\x12\x84\xcc\x55\x37\xed\ +\x91\x83\xfb\xa8\x69\xdc\xe4\xea\xcc\xc4\xf1\xd7\x55\x27\x19\x8a\ +\x45\xc3\xdc\x1f\x30\x67\x3a\xff\xc9\x2b\x57\x14\x4b\x74\x6b\x64\ +\xeb\xf5\x44\x08\xbf\xe2\xc2\x32\x4c\x74\xc0\x3a\x6b\x27\x4e\xca\ +\x9b\x5f\xd0\x0c\x19\x29\x25\xb7\xe0\xe5\x81\x0f\x7e\xf0\x83\x9b\ +\xcd\x04\x3f\x4b\x00\x0e\xda\xcf\x50\xca\xfe\x21\x26\x18\xb0\xf1\ +\x9e\xd4\x76\xec\xe8\x98\x8e\x1c\x3a\xa4\x34\xfe\x75\xeb\xce\x5d\ +\x4a\x35\x05\xd8\x11\xaf\xc3\x3e\x28\x24\xc7\x6d\x58\x06\x52\x83\ +\x43\x56\x83\xfc\x55\xc3\x34\x74\x25\xf3\x8d\xd6\xb1\x71\x11\x09\ +\x0d\xaf\xd3\x10\x89\x12\xcc\x9b\x73\x96\x3c\xa8\xf3\x8c\xb8\xbf\ +\xd1\x2c\x2b\x90\xea\x95\xcf\x0a\x51\x10\xff\xb3\xd7\x20\xc6\xfa\ +\x72\x4e\xab\x6f\xbc\x49\xc9\xe1\x5e\x25\x03\xb8\x20\xcf\x08\x57\ +\x75\x4f\x9f\x55\x1d\x41\xd4\xb3\x39\xcd\xce\xcc\xa8\xbb\xbb\x3b\ +\x7a\xeb\xad\xb7\xfe\x91\xa4\xf0\xcf\x12\x40\xe0\x43\x1f\xfa\xd0\ +\x1b\x30\x99\xdb\x0d\xf3\xb5\x72\x19\xb0\x9b\xd0\x91\xc3\x87\x34\ +\x4b\x4e\xff\x4f\xde\x7c\x87\x92\x86\x51\x28\x0e\x85\x78\x9a\xe5\ +\x4b\x56\xe3\xae\x65\x32\x92\x4c\x6a\x68\xcb\x66\x05\x11\x56\xc7\ +\x0a\x3a\xcc\x73\xc0\xf9\x80\x86\x77\x6e\x53\x7a\x68\xa8\xe3\x16\ +\x1d\x21\x5d\x1e\xbd\xf6\x33\x35\xaf\xa6\x68\xba\x5b\xf8\xc8\x35\ +\x56\x64\x05\x56\xab\x2a\x46\x6a\xdd\x7b\xfd\x76\xd2\xeb\x16\x77\ +\x81\x5a\x5d\x4d\xc0\xba\x81\x00\x3c\xb2\xc8\x02\x0a\x34\x25\xf8\ +\xca\x95\x2b\xdf\x73\xdf\x7d\xf7\x6d\x90\xe4\xfc\x54\x01\x50\x8b\ +\x27\xdf\xf6\xb6\xb7\xdd\x4f\x1d\xef\x33\x0f\xe5\xc9\xc0\xc6\x4f\ +\x9e\xd0\x19\xd2\xdb\x35\xc3\x2b\xb5\xb2\x3b\xa3\x64\x87\x79\x16\ +\xe4\x73\x01\xa6\x96\x6a\x34\x73\xfc\x24\x7e\x58\xb1\x4c\x53\xda\ +\xe2\xab\xa4\xc0\x7d\xbd\x57\xb9\x43\x72\x20\xad\xe4\x86\x21\x85\ +\x13\x21\xfb\xbd\x01\x68\x4d\x1d\x79\x45\x2e\xc2\xbe\xc6\x6d\x9a\ +\x8c\x12\xf7\xa6\x25\xe6\x6b\xaa\x7e\xf9\x9a\xd7\x06\x53\x5f\x90\ +\x68\x43\xe1\xd4\xbd\x79\xbb\xc2\x71\x8a\x29\x2c\x2f\x64\xc2\x2d\ +\xb9\x81\x26\xa7\xe4\x52\x8c\x09\x25\x2e\x92\x3d\xd2\xa3\x08\xdd\ +\x7e\xfb\xed\x1f\x35\x6c\xfe\x14\x01\xd8\xa4\x67\xd5\xf0\xf0\xf0\ +\x9b\x6d\xd3\x02\x9a\x45\x92\xe3\xc7\x8f\x2b\x37\x33\xab\x3d\xdb\ +\xb7\x2b\xe1\xb5\x98\x0f\x7b\x6d\x34\xae\xd4\x44\x1b\x0b\x33\x6e\ +\xa8\x92\x5d\xd6\xa5\x23\x47\x54\x5e\x5a\x6a\x23\xbb\xd4\x43\xde\ +\xde\x0b\x36\x38\x8e\x0f\xd7\x58\xad\xae\xf5\x83\x72\x9d\x96\x36\ +\x2b\xa4\xd2\xe7\x5f\x78\x41\x59\xf2\x8a\x2b\x35\xeb\x59\x17\x60\ +\x6c\x0b\xc3\x4f\x7c\x0f\xf6\xad\x92\x17\xc8\x09\x6e\x38\x57\x63\ +\xee\x9a\x82\x31\x4f\x91\x95\x09\xa5\x46\x37\x2a\x3e\x30\xc2\xf7\ +\xa0\x65\xc6\x2f\x59\xc5\x80\x8e\x6a\x5e\xbc\x64\xb1\xa0\x8a\x40\ +\x5c\xce\x01\xea\xef\x06\x13\xd3\x3f\x4d\x00\xa1\xfb\xef\xbf\xff\ +\x1e\xc2\x5e\xcc\xdc\x5c\x06\xfd\x2f\x9e\x3b\xa7\x4b\x50\x17\x68\ +\xba\xb2\xaf\xcf\x32\x1f\x31\xc9\x89\xf5\x41\x34\x58\xc2\x02\xaa\ +\x2c\xca\x6f\x17\x6b\x35\x39\x05\x5e\x2c\x9d\xbf\x60\x90\xdd\x32\ +\x11\x27\x3d\x1d\xdd\xbd\x4b\xc9\x15\x5d\x2a\xe3\xef\x31\xc2\xd4\ +\xf2\xc4\xa4\x2e\xec\xdb\xaf\x6a\xbe\xd0\x36\xfd\x46\x27\x62\x40\ +\xae\x25\xbe\x5b\x6c\xa9\x15\x73\xea\x1e\xdd\x2c\x67\x78\xbd\x6a\ +\xf1\xaa\xea\xe1\x05\x79\xf1\xac\xba\x6e\x5a\xa3\xfe\x37\xbf\x13\ +\xdc\x59\x05\x58\xc2\x38\x40\xe9\x48\x90\xcd\x2a\xad\xe6\x1d\x98\ +\xaf\x9d\x3f\x2f\x1f\xf3\x93\xbe\x1b\x2b\xe8\xff\xd8\xc7\x3e\xf6\ +\x96\x2b\xf9\x0e\x74\x0e\x4c\xbc\x5f\xb7\x6e\xdd\x3f\xb5\xfd\x3a\ +\xc8\x80\xdf\xc4\xd9\x73\xca\xcf\xcd\x69\x23\x05\x89\x61\x3e\x6a\ +\xd2\x52\x99\x2c\xcd\x11\xff\xc1\xb0\xf1\x39\x4f\x35\xbf\x83\x96\ +\x1b\x62\xdd\x36\x7e\x2f\xf2\x5c\x79\x69\x59\x7d\xeb\xd6\xca\x47\ +\x8d\x2f\x01\x58\x2a\x29\xda\xb7\x5a\x0b\x2f\x3d\xa5\xec\x89\x39\ +\xee\xbd\x3a\x3a\x74\xa2\x87\xeb\x95\xe4\x73\x4c\x1e\x11\x56\x80\ +\x46\x49\x61\xfa\xac\x62\x3d\x03\xea\xb9\xee\x06\x35\x86\xd7\xa9\ +\x5e\x29\xda\x7b\xd3\x3c\xeb\x0f\x84\x54\x2f\xcd\x6b\xf9\xcc\x01\ +\xf9\x38\xbe\xaa\xbc\x75\x11\x22\x19\x63\x63\x72\x52\x3e\x5c\xb3\ +\x1a\x29\x8b\x2e\xb4\x46\x46\x46\xee\x91\xf4\xb7\x50\xf5\x4a\x01\ +\xf8\xe8\xeb\xf5\x51\xec\x6c\x43\x00\xb6\x46\x5f\x9a\x9f\xd7\x0c\ +\xc0\xe7\x15\x8a\x1a\x1d\x18\x84\x79\x4f\xe0\x7d\x0b\xf4\xd4\x12\ +\x00\xa7\x14\x2a\x4b\x95\x4c\x42\x3d\x23\x61\x92\x91\x90\xb8\x6c\ +\x85\x20\xa8\x00\x08\x25\xfa\xfb\x59\x5c\x55\x0d\xe2\x7d\x94\x92\ +\x36\x68\xd2\x65\xaa\x44\x0b\x1d\xed\x4c\x11\x8b\x69\x9b\xbd\xcb\ +\xbc\xf4\x06\xca\x05\x25\x82\x43\x6a\x54\x29\x74\x66\x2f\xa8\xd0\ +\x33\xc8\x3c\x2b\x69\x93\x05\x99\x2b\x6d\x05\x40\x6f\x0d\x21\x56\ +\x55\xbc\xf4\x8c\xca\xf3\x17\x98\x2c\x70\x75\xaa\x67\xc0\xb5\x84\ +\x30\x97\xb3\xaa\xd3\x91\x0a\x66\xba\x2c\x18\x92\x22\xdf\x2a\x29\ +\x7e\x8d\x00\xde\xf7\xbe\xf7\xed\xa4\xe7\x96\x32\x75\x7e\x1d\xbf\ +\x5e\x64\xf1\xb9\xf9\x39\x85\x78\xa8\x2f\x95\xb4\xa6\x1f\xb8\x42\ +\xfb\x12\xa3\x44\x4e\x8e\x65\xf4\xd3\xcc\x1c\x1a\x54\xaa\xe6\x80\ +\xcc\x2d\x21\x48\x56\x10\x2d\xcd\x3a\x15\x85\x32\xd7\x59\xbb\x4b\ +\x76\xf7\x90\xae\x26\x61\xfc\xef\x05\xb5\x6c\x05\xd0\x10\x12\xc0\ +\xd7\xc1\x1f\xa7\x2e\xa9\xc6\x5c\x01\x42\x20\x45\xce\xd8\x8f\xd1\ +\xf4\x0d\x4a\xaf\x24\xc4\xca\x69\x27\x57\x2e\x65\xf2\x69\x15\x27\ +\x9e\x43\x18\x01\x6b\x8d\x57\x49\x80\x63\x38\x96\x43\x16\x5b\xa3\ +\x3f\x11\xdb\xb8\xd1\xe2\x55\x32\x99\x1c\x7d\xef\x7b\xdf\xbb\x96\ +\x56\xda\x92\xb9\xab\xe3\x0b\xc1\xcd\x9b\x37\xef\x68\x58\xe0\xf1\ +\x6c\x03\x73\x79\x76\x4e\x55\xe2\x68\x8c\xef\x69\x90\x36\xc8\x1f\ +\xf5\x75\x90\xda\x35\xe4\x5a\x72\x2b\x1c\x67\xb3\x30\x38\x48\xd2\ +\xe2\x5a\xc1\xe2\xfb\x68\xc7\xf8\xb1\xa1\xba\xdc\x26\x85\x4c\x77\ +\x9f\xd5\x78\xc7\xd4\xbd\xcb\x73\xb9\x1d\x74\x87\x60\x3c\x88\x30\ +\x09\x7d\xcc\x63\xae\x63\x05\x7e\xf9\xf2\x21\x95\x4f\x1d\xd0\xc2\ +\xab\x87\x39\xc7\xf9\xa6\xc1\x9e\x25\x15\xce\x3f\xa6\xc2\x1c\xbd\ +\x01\x04\x5f\xcf\x5f\x5b\xf9\xda\x39\xc1\x19\x17\x6b\x0e\x4a\x82\ +\x3f\xdb\x7e\xa7\x48\xba\xd1\x28\xfd\x4a\x0b\x08\x63\x1a\xd7\x99\ +\xf0\x02\x59\xd4\x2c\x90\x50\x08\x41\x24\xda\xa5\x6c\x80\xf3\x72\ +\x98\x54\x90\x73\xd9\xd3\x6c\xde\xdf\x58\x32\xa5\xe9\x9c\xa2\x83\ +\x6b\x94\x3d\xf4\x8c\x2a\x97\x6a\x1d\x3c\xb0\xc5\x4c\x78\x75\x4c\ +\x99\x70\x54\x24\x16\x5a\x9a\x9c\xe0\xba\x07\xe3\xcd\xcb\xe9\xb0\ +\x5b\xad\xd1\xe8\x98\x57\xe0\x62\x45\xd1\xeb\xd7\x60\xe6\x61\x2d\ +\x1e\x3b\xa2\xca\x82\x1f\x86\x5b\xf7\xf8\xfc\x35\x85\xce\x9d\x56\ +\xa3\x56\x51\xd7\xaa\xf5\x98\xfe\xb3\xaa\xcc\x8f\xa9\xb4\x80\x5b\ +\x16\xa5\x7a\xe1\xda\xfe\x07\xcc\xd8\xf4\x98\x57\x4e\x56\x79\x00\ +\x9d\x3d\x0d\x18\xae\x6f\x0b\xa0\x61\x05\x40\xba\x18\xe5\xe4\x68\ +\x5b\x00\x36\x01\x2a\xe7\x73\xf2\xd7\xea\xb6\x3b\x13\x70\xeb\x98\ +\x62\xf8\x1f\x2c\xa8\x3c\xa8\x56\xc0\xdf\x27\x4e\xab\x67\xe3\x0e\ +\xe5\x87\x46\xc9\xc2\x9e\x57\x79\xc1\x33\x8b\x87\x19\x68\x68\xc0\ +\x40\x33\xa1\x2a\x8e\x35\xc0\x2c\x9d\xe2\x46\xa5\x53\x00\x59\x37\ +\xc1\xda\x96\x54\xca\xe4\x94\x19\xb8\x9d\x67\x69\xa2\x5e\xbc\xa0\ +\xfc\xc5\xc6\x55\x40\x19\x8c\x73\x5f\xed\xbb\xf2\x6e\xbd\x59\x95\ +\xc9\xa7\x54\x5e\xac\xa9\x59\x8c\xaa\x3c\x57\x27\xa7\xa8\xf2\xb7\ +\xac\x17\x5d\xbd\x4c\x5c\x5a\x46\x08\xf4\x26\xa9\x8c\xac\x52\x00\ +\xc3\x75\x6d\xe5\xd7\x6d\x82\xcd\xc9\x08\xfe\xdf\xdd\xa9\xc4\xea\ +\xa0\xa6\xcb\x03\x41\xd3\x91\x09\x88\x73\x39\x72\x11\x34\x68\x7c\ +\xfc\x27\xd2\x69\x66\xc4\x4c\x9b\xf4\xec\x12\xe4\xe7\x45\x0d\x6c\ +\xd8\xae\xd2\xf8\x51\x98\x58\xb4\x02\x18\xde\xb3\x4b\x4e\xb7\x2b\ +\x07\x21\x86\x58\x40\x64\xc5\x88\x4a\xaf\xce\x6a\x74\xcf\x1b\x25\ +\xaf\x85\x01\x67\x9e\x79\x56\x7e\xea\xfd\x08\x7d\xbe\xee\x61\x22\ +\x45\x31\xcf\xf5\x9b\x55\xdf\x1c\x63\x0e\x33\x7f\x15\x4d\x2f\x68\ +\xe1\xf4\xb8\x8a\x67\xa6\x34\xe1\xfe\x9d\x32\x83\x39\x84\x44\xb4\ +\x28\x86\x55\x99\xcb\x2b\x10\xa9\xcb\x09\xb3\xf6\x25\x3f\x56\x72\ +\x79\x6d\xd6\x0d\x7d\x75\x97\x90\x5d\xc4\x00\xfa\xad\x1b\xc0\x6b\ +\x7f\xc7\xfa\x2f\x63\x00\xbe\x11\x45\x00\xd6\x02\xdc\x3a\x92\x05\ +\x40\xa8\xeb\x61\xcc\x91\x8b\xf9\x05\x42\x36\x5e\x5f\x4d\xae\x6b\ +\x47\xaf\x8e\x58\x08\x87\x15\x6a\xf4\x10\x5a\x0e\x0f\x0e\x81\xd8\ +\xd6\xcf\x6d\xb8\x13\x0c\xd4\x8b\x59\xeb\x42\x19\xac\x24\x3c\x14\ +\x15\x27\x3b\x58\x80\xe6\x5c\xc5\x46\x42\xea\xd9\x76\x8b\xfc\xa1\ +\x20\xf3\x56\xed\x73\x16\x6b\xcc\x75\x4c\x37\xde\xdf\xa7\x91\x9b\ +\x6e\x26\x5b\xcd\xc0\x64\x5e\xf9\x19\xae\xe5\xfd\x58\x4e\x90\x28\ +\xb0\x48\x32\x86\x9b\x76\xb9\x8a\x64\x58\xcb\x95\x3a\x6a\x97\xe6\ +\x5e\x0d\x1e\x02\x81\x4e\xc8\x8f\x9b\xe1\x2a\x01\x70\x32\x72\xb9\ +\x16\x77\x5b\x80\x17\x96\x14\x89\xf9\x31\xdd\x28\x8b\xd4\x15\x49\ +\xcb\xb5\x82\xf0\x4c\x49\x5a\x5a\xb6\xb1\x21\xdc\x3d\x80\x46\xdb\ +\x80\xe7\x1a\xe1\x34\x31\xfb\x49\xc1\x15\x89\xcb\x0a\x65\x76\xdd\ +\x22\x5f\x2c\xcb\x12\x4a\x24\x31\x45\x25\x56\x39\xca\xec\xbe\x55\ +\x99\xd5\x6b\xdb\x00\x57\x62\xc1\xb8\xa3\x4d\xa6\xda\x64\xc1\xd2\ +\x53\xff\xa6\x75\xd6\x2a\x4a\x53\x92\x9b\x8d\x20\xd8\xba\xaa\x26\ +\xde\x57\x1d\x18\xa4\x14\xee\x62\xed\xc1\xab\x2c\x14\x62\xe4\x79\ +\x9a\xa8\x1d\x01\xc4\x7e\x12\x04\x1d\x4c\xc3\xf1\x0c\x83\xf6\x4a\ +\xd3\x5e\x08\x3a\x52\x18\xb2\xe8\x0f\x98\xd9\x30\xe5\x75\x26\xbe\ +\x3a\xe6\x34\xeb\x46\xca\x06\xa1\xeb\x36\x7d\xc5\x96\xda\xd6\x01\ +\x92\x97\x7d\xf2\xa6\xcf\xab\xb1\x9a\x50\x18\x0a\xab\xff\x86\xdd\ +\xca\x12\x59\x34\x77\xc6\x3c\x49\x65\x78\x17\xf8\xb1\x0d\x2d\x8a\ +\x79\xd0\x7e\x39\xaf\x06\x02\x38\xfd\xa3\xa7\x2c\xd3\xe1\x78\x5c\ +\x83\x37\x5c\x8f\x55\x31\xab\x93\xc5\x22\x82\x6a\xe4\x04\x78\x86\ +\x55\x26\x5a\x79\xf8\x39\x38\x06\xcc\x98\x05\x7b\xf8\x7a\x93\xe7\ +\x9d\x2b\x85\x60\xad\x08\x2b\xef\x84\xe7\x4e\xd2\xd8\x11\x00\x42\ +\xe7\xc3\x85\x76\x3b\xcc\x4f\xa3\x11\x62\x45\x7e\x18\xf0\xe1\x54\ +\x75\xb7\x80\xb6\x42\x52\xbd\x3d\xe7\x55\x42\x68\xb6\x42\x98\x5a\ +\x3e\xe7\x96\x0b\xb8\x90\x09\x93\x56\x8b\x00\x1e\x52\x07\x89\x0b\ +\x53\x17\x94\x1a\x59\x85\x80\x7c\xea\xdd\xb8\x55\x8d\x35\x68\x5c\ +\x20\xbc\x31\x7b\xeb\xaf\x35\x35\x8c\xf6\x4b\x05\xc6\x20\xb1\xbf\ +\x64\x05\x50\xcb\x17\x48\x84\x7a\x94\x59\x13\xa3\x29\x7b\x09\x2c\ +\xc1\xdd\x96\x22\xcc\x5b\x47\x00\xb3\xed\x90\x07\xb9\x0e\x2e\xd4\ +\xb4\x02\xa8\xe6\x6c\xc8\xb2\x82\x11\x14\x08\x87\x6d\xe9\xcd\x77\ +\x53\x17\x94\x0c\xcf\x57\xba\x80\x0b\xff\x95\x8e\x00\x02\xc1\x80\ +\xc2\xc1\x90\x15\x40\xb3\xcc\x12\x17\xa7\xd4\xe0\x38\x94\x34\x3c\ +\xa3\xd5\x2b\xfc\x1f\xe2\x24\xa3\x9f\x3e\x7d\x2c\x69\x05\x51\x5b\ +\x9c\x36\xa6\xd9\xbe\xee\xb6\xcc\xb9\xe8\xd3\xd2\xf1\x83\x68\xc6\ +\x30\x55\x13\x92\xc4\x4d\x70\x2f\x88\x63\x90\xd8\x16\x39\x30\x4b\ +\x31\x55\x2a\xa3\xd5\xcb\xee\x86\xe6\xfd\xa4\xc3\x21\x55\xaa\x13\ +\xe4\x13\x45\x04\xd0\x24\x22\x04\x40\xff\x29\xee\xab\xb5\x75\xd0\ +\xae\x03\x1c\xc1\x2c\x7e\xcf\xd8\xd6\x26\x6b\xf3\x29\x9c\x4c\x5e\ +\x16\x00\xd6\x5e\x96\xe4\x5d\x69\x01\x55\x8a\x85\x2c\x17\xe4\xf0\ +\x2f\x88\xb4\xa2\xd4\xf3\x05\x53\x86\x56\x1c\x55\x2f\x4d\x2a\x0a\ +\x6a\xbb\x4b\x53\x0a\xa7\x43\xaa\x2e\xb9\x1d\xe5\x63\x15\x14\x48\ +\x5d\x52\x33\x19\x55\xbc\xb7\x4f\x75\xb4\x5f\x9e\xba\x88\x00\x0c\ +\x00\x36\x21\xd7\x2c\x02\x01\x38\x2a\x2d\x9e\x52\x61\xc3\x46\xac\ +\x60\xd4\x6a\x85\xa7\xda\xeb\x68\xf9\x37\x44\xec\x9f\x46\x0e\x4d\ +\x0b\x82\xa3\xb7\xdc\x6c\x05\x10\x8c\xfa\x15\x88\xcf\xca\xf5\x16\ +\x50\x42\x59\x71\x94\x51\x9e\xe1\x38\x32\xaf\x6a\x10\x86\xea\x6a\ +\x15\x44\x30\x6e\x4a\x82\x9a\x8d\x6d\x86\xe0\x06\x1e\x3c\x53\x84\ +\x51\x94\x75\xde\x99\xa1\xec\x79\x06\xb7\x63\x01\x4d\x88\x28\xb3\ +\x30\xe9\xb5\x93\x9d\x40\x84\xbc\x9d\xc2\x21\x84\x69\xca\x63\xc2\ +\x19\xfa\x82\x17\x4f\x29\xb3\x69\xbb\xe2\x1b\x57\x28\x71\x5d\x58\ +\xb1\x15\x94\xc6\x2b\xa5\xd4\xfa\xa8\xd2\x3b\x37\x72\x6d\x27\x9a\ +\x0a\xa8\x34\x37\xad\xda\xec\x02\xe6\xd9\xd2\x1e\x02\x80\x18\xb1\ +\x82\xf2\xa5\xa2\x96\x8e\x1e\xe0\xb8\x24\x54\x67\x1b\x9a\x6a\x6b\ +\xbe\x69\xc8\xa5\x09\x33\x8f\xb5\x95\x1c\x2e\x5b\xf4\xc7\xa4\x03\ +\x54\x7a\xa4\xb3\xd5\x29\x3a\x3f\xe4\x23\x7c\x0f\xc5\x68\x84\xa4\ +\x27\x94\x1c\xad\xaa\x6b\x6d\x43\xd1\x6e\x62\xfb\x30\x58\x91\xa0\ +\x44\x4e\x19\x16\x3a\xd6\x60\x5c\x22\x24\x7f\x3c\x81\xe2\xd2\xea\ +\x58\x38\xca\x3e\xcb\xe0\x5e\x69\x01\x15\x5e\x37\x5f\x68\xa7\x8a\ +\x56\x00\x71\x3a\x2d\x61\x80\xca\x71\x72\xaa\x2e\x37\x95\x3b\xfa\ +\x8a\x86\x6e\xbc\x59\xdd\xeb\x37\xca\xb9\x7e\x37\xfe\x99\x67\x81\ +\xb8\x45\x22\x69\xcd\x2b\xc4\xbd\x1e\x0c\x94\x2e\x9e\xc5\x05\x4c\ +\x62\xd2\xb0\x21\xc8\x46\x08\x00\x94\x0f\x7e\x4b\x59\xfa\xea\xb8\ +\x4a\x37\x6c\x53\x6a\x68\x58\xb0\x29\x62\x94\x05\x4e\xdb\xe2\x22\ +\x6f\xaf\x13\x4a\xdd\x52\xc8\x0a\x8e\x05\x83\x17\x75\xc6\x59\xc5\ +\x7a\xa9\x27\xd2\x31\xd6\xd3\x24\xaf\x99\x50\x62\x10\x54\xc7\xdf\ +\xb3\xb1\xba\x92\x83\x8e\x55\x54\xac\xdf\xa3\x36\xc1\xcc\xc9\xf0\ +\xf9\x87\xc9\x1b\xcb\x89\xcb\x47\x63\xc6\x6f\x92\x20\xe6\xe7\x63\ +\x36\x5b\x9c\x66\x68\x5c\x89\x01\xb5\x31\x3e\x6e\xfb\x8f\xfa\x90\ +\x5a\x82\xfa\x3f\xc2\xc3\x4c\x62\x4d\xac\x7c\x3e\xaf\xe9\xe7\x7f\ +\x04\x43\x25\xf9\x9d\x0a\x85\xc9\x08\x4c\x0c\x21\x71\xee\x71\x6c\ +\x1e\x4f\x3c\x9e\x21\xef\x9e\xc5\x8f\x6d\x28\x6d\xbd\xf4\xb4\x16\ +\x00\xd5\x4d\xdd\x40\x9a\x3d\x57\x50\x69\xf2\x02\xf7\x57\xed\x33\ +\x1e\xd4\x74\x49\x9d\x99\xb7\x78\xe1\x04\xe8\x5e\x36\xf7\xd9\x6e\ +\xd1\xf9\x67\x9f\xd3\xf4\xb1\x1f\xab\xb4\x7c\x46\xd1\x01\x3f\x16\ +\x66\xc2\xd5\x8c\x22\xe9\xb8\x42\xa9\xa8\x62\x03\x41\xf5\x6d\x75\ +\xd4\xb3\xc9\x53\xcf\x96\x06\x02\x90\x4d\xd6\x1c\xd7\x47\x04\xf3\ +\xb5\x36\x5c\xa0\x9c\x38\x1d\x67\xe1\x0a\x9d\x4c\xf7\xa5\x97\x5e\ +\x3a\x72\x0d\x08\x3e\xf9\xe4\x93\x87\x79\x97\x56\x32\x37\x38\x94\ +\x9d\x71\x04\x10\xc5\x0a\x8c\x09\x35\x25\xea\x7b\x29\x77\xf8\xa8\ +\xe6\xc7\x0e\x61\xde\x79\x62\xef\x84\x8d\xd9\x96\xbc\x9a\x05\xb7\ +\xfc\xe9\x63\xc4\xe6\x26\xd7\x3d\xcb\x7c\xc7\x05\x3a\x84\x50\xb8\ +\x86\x20\xb0\x1e\x98\xb7\x66\xcf\x09\xc2\x24\xf5\xc1\xf4\x5e\xcd\ +\xef\x7f\xc2\x6a\xd0\xab\x59\x90\x45\x08\x15\x18\x68\xd0\xf1\x09\ +\x71\xef\x12\xe7\x2f\xe2\xe7\x30\x97\x48\x51\x7c\xf5\x70\x2d\x4e\ +\xe1\x14\xa2\x90\xf1\x81\xfc\xed\x30\x58\x43\xf7\x35\xbf\x22\x4e\ +\x00\x1c\x8b\xc9\x0b\x85\x08\xbb\xf4\x12\x4c\x94\x81\x30\xff\x69\ +\xb6\x1b\x9d\xfc\x49\x10\xf4\xf8\x5c\x64\x33\xc3\xab\xd4\x04\xdb\ +\x48\x15\x49\x66\x32\x4a\x50\xe2\xe6\xe9\xa8\xd8\x5c\xda\xe5\xe1\ +\x0b\x35\xcd\x3d\xff\x14\xdd\x9d\x21\xc5\xfa\xfa\x55\x5d\x30\x66\ +\x69\xea\xfd\x10\xe0\x35\xa7\x3a\x55\x57\x2d\x17\x31\xcc\xb6\xa3\ +\x83\xc9\x0f\x60\x1e\x57\x41\x8a\x9c\x73\xad\xc9\xe3\x9b\x30\x58\ +\x80\xa1\x79\x79\x95\x33\xb8\xd8\x51\xac\x62\x99\xe2\x86\x34\x35\ +\xe0\xb4\xdc\x47\x02\xe9\x23\x58\x98\x41\xf5\x79\x70\x61\x49\xa1\ +\xae\x1e\x1a\x17\x71\x14\x94\xa0\x59\x02\x40\xc3\xa4\x70\x51\xb1\ +\x36\x61\x31\x6e\x1d\xed\x57\xc0\x8c\x0a\xd1\x05\x73\xf1\x27\x53\ +\xaa\x74\xa5\x71\xdb\xf5\xca\xb6\x37\x66\xcd\xcf\xcf\x1f\x94\x94\ +\xfd\xc9\x96\x58\x13\x9a\xc7\x0b\x9e\x05\x21\xad\x99\xf8\x31\x9d\ +\xf4\x9a\x35\x0a\xa6\x52\xed\xa6\xa4\xd0\x9c\xa3\xfc\x49\x1a\x25\ +\xfb\x9e\x46\x71\x86\x81\x32\x42\xb8\x00\xd3\x33\xaa\x2d\x2f\x81\ +\x65\xa1\xab\xc2\x97\x07\xb5\xcd\x1f\x42\xe3\x6a\xa0\x41\x97\x89\ +\x2e\xaa\x3a\xbf\x17\xac\xd8\x8b\xc6\x8f\x32\x4f\x56\x45\x84\x0b\ +\xd6\xd8\x8c\xce\x41\x60\xe4\x06\x3c\x5f\x67\xfe\xf3\xcc\x3b\x4b\ +\x68\x0e\xc2\x78\x44\x0e\xc2\xf6\x05\xad\x10\xf0\xeb\x2e\xe6\x8b\ +\xf3\xbd\xdd\xaa\xc9\xe1\xf7\x65\x42\x78\x1d\xed\x93\x70\x05\x33\ +\x19\xa5\xae\xdf\x2a\x5f\x3c\x66\x9b\x21\xa6\xd7\xc1\xde\x81\xc7\ +\x84\x4a\xff\xa1\x9e\x60\xe9\x3b\xdf\xf9\xce\xf7\x30\x91\xaa\xc1\ +\x02\x87\x50\x18\xe7\x0d\x4c\x64\x90\xb4\x36\x16\xb5\x21\x05\xb9\ +\x80\xf2\xd2\xf2\xe1\x63\x5a\x3a\x31\x66\x72\x76\xa8\x26\x37\x3f\ +\xa7\xe5\xb1\x7d\x2a\x4d\x2f\xb0\xc0\xa0\x01\x1c\x8b\x1d\x3c\x70\ +\xd9\xfc\x1b\x90\xcf\xef\xa2\x4d\x63\xf6\x27\x08\xaf\x17\x44\xc5\ +\xc5\xb1\xc9\x14\x49\x6d\x67\xc8\xeb\x0b\x71\xc1\x91\x15\x58\x85\ +\x0c\xaf\x1b\x8c\x49\xf6\x0d\x12\x96\xbb\x15\x80\xe9\x96\x19\xc9\ +\xb6\xcd\x85\xf6\x1d\x5f\x08\x0e\x18\x9b\x30\x8e\xe9\x8b\x42\xc8\ +\x57\xc0\xfc\x3d\x08\xe4\x5f\x0e\xfa\xb4\xfa\xce\x3b\x55\x67\x1d\ +\xed\x0d\x1d\xcb\xff\xf3\xab\x5f\x7d\x54\x92\x7b\x4d\x4f\x50\x2c\ +\x85\xed\x25\x63\x48\xe8\x50\x3c\x1e\xbf\x85\x92\x51\x41\xd0\x33\ +\x45\x27\x25\x4b\x77\x55\x24\x27\xcc\x62\x2b\xad\xdc\xb9\x3a\xfe\ +\xba\x4f\x09\x5c\x21\x94\x4e\x09\x75\x63\xa2\x05\x15\xcf\x03\x82\ +\xe5\x59\xe5\xa7\xd1\x98\x79\x3e\x81\x76\x22\x61\xae\xdb\x82\x04\ +\x90\x42\x33\x69\xa8\x2f\x20\xc0\xc5\x76\x8b\xb9\x04\xb3\x2e\x89\ +\x48\x85\x50\x9b\x27\xf5\xbe\x84\x15\xd4\x5a\xcf\xf8\x4d\x76\x88\ +\x40\x8a\x97\x6b\x14\xdc\xa3\x6c\xdd\x11\x0d\xb5\xdc\xac\x0e\x55\ +\xb8\x37\x8f\xd5\x2c\x04\x14\xc8\x13\x26\x11\x8c\x47\xdc\x0f\x6c\ +\xda\xa0\x24\x2f\x6f\xe7\x0a\x79\xdb\x0d\x62\xd3\xc4\xe3\xf9\x62\ +\x71\xca\x4a\xf2\x5a\x01\xd8\x93\xb3\x7b\xf7\xee\x7d\x84\xf6\xb8\ +\xd9\xdc\xe8\x04\x89\x02\x49\x04\x50\xe4\xbd\xa0\x72\x79\x28\x67\ +\xb5\x5a\x2b\x38\xca\x9d\x9e\xd7\x12\xe7\xfb\xf7\xec\x84\x11\x59\ +\x8d\x37\x1d\x17\x01\xd5\x29\x54\xa6\x68\x5e\x56\x6c\x1c\x0f\x63\ +\xce\x84\x22\x50\x1b\xad\x24\x73\x8a\x0f\x61\x5d\x32\x61\xcf\xb1\ +\x59\x9c\xc7\xc2\xb2\x2f\x5f\xd2\xfc\xcb\x0d\x30\xc6\xa7\x64\x66\ +\xb0\x53\x9e\xd8\x66\x4b\xad\x14\xc6\x5d\x7c\x8a\x90\x03\x78\x80\ +\x26\x21\x02\xa1\x76\xf3\xf7\x10\x08\x2e\xa8\xb2\xd1\x08\xb8\x32\ +\x8b\xf6\x97\x30\xff\x32\x18\x80\xdb\x9e\x25\xc3\xdc\xf0\xcf\xde\ +\xad\xba\xcf\xe9\xec\x55\x74\xbf\xff\xdd\xef\x7e\x05\x26\x4b\xe2\ +\x73\x8d\x00\x3a\x49\xd2\xfe\xfd\xfb\x1f\xc7\x0a\x5e\xd9\xbe\x7d\ +\xfb\x36\xfa\x67\x0a\x00\x84\x5d\xbb\x76\x69\x79\x0e\xf3\x86\xa9\ +\x26\xa4\x86\x30\x59\x72\x83\x53\xa7\xd4\xbd\x69\x2d\x0c\x46\xf0\ +\xd7\x12\x3d\xfe\x57\xb4\x34\x0e\x63\x2d\x03\xb3\xa6\x7f\xfe\x99\ +\xe7\x8c\x55\xab\x7b\xa3\xc7\xcb\x4d\x97\x4c\x2e\x88\xb5\xa0\x79\ +\x00\x8b\x66\x08\x02\x80\xc9\x2c\xe9\x33\x9a\xf3\xc8\x00\x27\x5e\ +\xdc\x7f\xe5\x0e\x26\xee\x97\x46\x76\x01\x8e\xfd\x54\x99\x7d\x30\ +\x69\xe6\x75\x0a\x08\x1d\xa0\x2d\x92\x3c\x65\x6b\xf2\x2f\x32\xd7\ +\x14\x82\xce\x05\x01\xbf\xa8\xf2\x7d\xdd\x8a\xdc\xb2\x5b\x29\xc0\ +\x6f\x1e\xed\x9b\x8d\x1d\x67\x4e\x9f\x7e\xe2\x99\xa7\x9e\x3a\x20\ +\x56\xff\x53\xdf\x0e\x77\xb2\x42\x5e\x8b\xf9\xb6\x6c\xd9\xf2\x16\ +\x3a\xc5\x8e\x49\x8a\x82\x50\x9d\xee\x6a\x93\x56\xb7\x8c\x00\x6c\ +\xda\xea\x90\xa2\xd6\xd0\x68\x17\x3e\x38\x21\x77\xf9\x15\xb0\xa0\ +\x2c\x8c\x11\x80\x74\xac\x69\x63\xe1\x24\x55\x52\x7a\xb5\xa7\xde\ +\x55\xae\x7a\x77\x05\x40\x72\x98\x08\xf9\xb0\x0e\x23\x00\x21\x08\ +\xfc\xff\xac\xa7\xec\xb4\x0f\x30\x75\xae\x69\x3a\xe1\x5d\x60\x90\ +\xa3\x44\xcc\x53\xa8\xa7\xfd\x72\xd4\xb6\xa1\x58\xc3\x32\xda\x9f\ +\x02\x57\x26\xb9\xe7\x22\x20\x59\x00\x24\xfb\x07\x75\xaa\x2f\xa5\ +\x1d\x0f\xfe\xa1\x6a\x91\x90\x49\x7a\x44\x92\x57\xfb\xc6\x23\x8f\ +\x3c\x38\x7e\xf6\xec\x31\x33\xe5\xcf\x7a\x3d\xee\xb2\x0d\x75\x86\ +\x77\x69\xdb\xd9\x6a\xb2\x26\x12\x8d\xb2\x80\x98\xc2\x50\x69\x6e\ +\x16\x90\xa1\x2f\x8f\xd9\xa2\x3d\x00\xad\x81\xc4\x27\x15\x0c\x9d\ +\xc5\xa5\x2b\x80\x95\x09\x18\xd4\x06\xa4\xa6\x80\x34\xcd\x89\xa6\ +\xba\x60\xbe\x67\x65\x83\x66\x87\x0f\x40\x0d\x60\xbe\x41\x9b\x5b\ +\xd8\xac\xa6\x2d\x80\xfa\x82\x47\xb2\xe3\x53\x69\xde\x0a\xa5\xa3\ +\xfd\x4e\x25\x6b\x29\xc1\x5c\xb1\x3e\xb5\xdc\xad\xc1\x89\x3c\x37\ +\xce\x50\xfa\xe2\xd1\xc1\x69\x7c\x3f\x6b\x36\x47\xf4\xea\x04\x09\ +\xd2\xba\x7f\xf7\x51\x45\x79\xf9\xba\x48\x64\x9a\x9b\x9b\x63\x2f\ +\xd3\xfe\xaf\xfd\xcd\xc3\x0f\x3f\x64\xf2\xb9\x9f\x77\x83\x44\x89\ +\x0d\x88\xb3\xec\xb8\x7a\x07\x1b\x0c\xc2\x30\x6f\x22\x01\x42\x88\ +\xab\x44\xf9\xe9\x00\x88\x04\x5d\x5b\x76\xc6\xd3\x15\x16\xd6\x80\ +\x29\x07\x40\x74\x38\x86\xf1\x98\xc7\xf9\xa6\x52\x7d\x9e\xd2\xc3\ +\x4d\xa5\xb7\xf8\x31\x5f\x7c\x33\x12\x82\xa2\x58\x40\xbc\x85\xe0\ +\x4d\x59\x60\x13\x0c\xb9\xcb\x9e\x0a\x0b\x3e\xac\x47\xd7\x7e\x9a\ +\xcc\xdb\x83\x10\x98\xd3\x66\x83\x26\xdd\x5d\xa0\xc4\x9d\x26\xde\ +\xcf\x60\x55\xb9\x30\x80\x99\xd1\x59\xf2\xfd\xf0\xbb\xde\xae\x91\ +\xb7\xbd\x55\xd9\x72\xc9\x68\xde\x00\xdf\xe4\x9f\xfd\xf1\x1f\x7f\ +\x14\x0c\xb8\xe4\x32\xd3\xcf\x2b\x80\x06\x7e\x33\x07\x72\x3a\xec\ +\xc8\xbc\xdd\xb8\x42\x10\x21\x18\x30\x0b\x43\x65\xfa\x73\xbe\x4a\ +\x99\xa2\xa4\xa6\x44\x0f\x9d\xa3\x5e\x13\x8d\xa0\xa0\x6c\x46\x16\ +\xee\xf6\x51\x2c\xf9\x14\x1d\xf6\xa3\x75\x3f\x11\xc1\x68\x3e\x0c\ +\xf3\x09\xf0\x20\x45\x0c\xa7\x34\x05\xc5\x65\x30\xc0\xad\xdb\xf6\ +\x99\x93\x6d\x08\x78\xa4\xd1\x69\x31\xe4\xca\x8f\x2d\x61\xa3\xcc\ +\x99\x49\xca\xbe\x2d\xf2\x2d\xa2\xf1\x59\xfc\x7d\x0e\xca\x86\xb9\ +\x9e\xd6\x85\x44\x46\xb9\x9b\x76\x6b\xcb\x07\xff\x40\x45\x22\xce\ +\x2c\x9a\x27\xb3\x73\xbf\xfd\xcd\xbf\x7d\x60\xec\xd0\xa1\xa7\x8b\ +\x92\xfb\x8b\x6e\x92\x32\xfb\xf4\xcf\xd0\x2e\x5f\xcb\x0b\xc5\x8d\ +\xc6\x15\x82\x26\xb4\x25\x13\xb6\xf8\xa9\xd0\xc5\x4d\xc6\x4b\x8a\ +\x67\xaa\x14\x44\x4d\x2b\x00\x27\xe0\x20\x04\x53\x81\xf9\x18\x61\ +\x3a\x1c\xe0\xd8\x6a\x1d\x4a\xf2\x3d\x0d\xf3\x90\x2f\x81\x2a\x5a\ +\x4d\x10\xe2\x9a\xb5\x82\x00\x56\x13\x2c\x21\x04\x62\x77\x35\x27\ +\xce\x31\x9f\x98\xcb\x41\xd3\xe0\x45\x17\x00\x98\x89\xa0\xf1\x3a\ +\xf9\xfd\x42\x58\x21\x28\x98\x37\xf9\x46\x5a\xe7\x48\x17\x67\xe8\ +\x18\xed\x78\xe0\xe3\xaa\x04\xfc\x2d\xe6\xd9\xd4\xf1\xdc\xd3\xcf\ +\xfc\xf9\xb7\xbe\xf6\x57\x7f\xce\x74\xc5\x7f\xcc\x2e\xb1\x26\x54\ +\x38\x76\xec\xd8\x89\x15\x2b\x56\xec\x21\x22\x0c\x21\x04\x6b\x05\ +\x81\x54\xca\x36\x29\x6b\xe5\x9c\x52\xdd\xe6\x5d\x5e\xcd\x34\x25\ +\x21\x41\x7e\xcc\xd1\x6f\xb2\x33\x98\x07\x94\xc2\x31\x4c\x3e\xc1\ +\xf7\x14\xe7\x93\x5c\x8f\x73\x53\xa8\x95\x83\xd9\x1e\xa3\x6b\xdd\ +\xc9\x71\xc0\x93\x18\x7e\x5e\x47\x10\x29\x1f\x58\x40\x37\x0a\x0a\ +\xd3\x0c\x49\x67\x82\x1a\xec\x0e\x28\x19\x20\x45\x07\xe8\x42\xf8\ +\x7b\xa0\x4c\xc7\x38\xd8\xa3\x13\xfe\x08\x9a\xbf\x49\x3b\x3e\xfe\ +\x31\x55\x10\xfa\x0c\xcc\xa3\x38\xb3\x9f\xe9\xd1\xbf\xfc\x93\x2f\ +\x7c\xb2\x5b\x9a\x5b\xfe\x25\xf6\x09\x7a\x68\x69\xe1\xf8\xf1\xe3\ +\x63\xbc\x36\xbf\x0d\x3c\xe8\x09\x1b\x50\x8c\xc7\xa1\x24\x05\xd3\ +\xb0\xf2\x4b\xa0\x30\xd5\xa1\xdf\xd6\xf6\x08\x41\x62\x0c\x30\xfa\ +\xa1\x90\x80\x3e\x04\x84\x20\xcc\xc8\x79\x35\xfc\x26\x77\x87\xcc\ +\x66\xa7\x06\x63\x83\xb1\x2e\x51\x00\xc1\x36\xd6\xe4\x28\xe9\x49\ +\x5d\x34\x63\xbb\x32\x01\xf5\x76\xc3\x3c\x05\x4f\x97\x2f\xac\x70\ +\x93\x88\x54\x04\x43\xdc\x84\xaa\x80\xcd\x8b\x3c\x1f\x7d\xd7\xbb\ +\xb4\xf9\x5f\xfd\x4b\x15\xb1\x94\xe9\x99\x19\xcb\xfc\xcb\x87\x0f\ +\xbf\xf0\x97\x9f\xff\xc2\xbf\x49\x36\xea\x13\xe7\xe0\xe1\x97\xdd\ +\x29\x4a\x16\xeb\xce\x8c\x8f\x8f\x1f\x23\x2a\x98\x04\xa9\x27\x1c\ +\x89\xd8\x4c\xaf\x19\x89\x53\xa7\xaf\x22\xcb\x4a\xab\x9c\xaf\x90\ +\x81\xd5\x2d\x53\x0c\xb6\x2a\x73\xaa\x50\x05\x43\x2e\x0b\xe0\x84\ +\xd9\xa2\x2b\x15\xb0\x96\x62\x95\xe3\x0a\x54\x6b\x51\xc1\x05\xd8\ +\x1a\x8c\xb8\x50\x09\xcc\x00\xe9\xa2\x50\x02\x9c\x48\xf9\xe8\x4d\ +\x40\xa1\x26\xd6\x57\x8f\x23\xdb\x8c\x26\x7c\x51\x1d\x66\x0d\x9b\ +\x1f\x7c\x50\x43\x77\xdd\xa1\x2c\x51\x69\x6a\x7a\xda\x00\x1e\xbb\ +\x59\x0e\xbf\xf8\xb5\xbf\xf8\xef\xf7\x47\xf2\xd9\xf1\xb3\xac\xfd\ +\x57\xb9\x59\x3a\x82\x05\xdc\xc4\xcf\x61\xfe\x94\x24\x69\x17\xdb\ +\x68\x44\xe5\x68\x37\x48\x85\xca\x00\x62\x7e\x5e\xc5\xf1\x17\x15\ +\x29\x8f\x29\x1d\x98\x57\xa8\x51\x6d\xed\x0a\x35\x8d\x55\xfe\xf9\ +\x9a\x10\xff\x1c\x4b\x9d\xfd\x4e\xed\x37\xc4\xed\x1e\x23\x9e\xd4\ +\x29\x67\xa1\x20\xc2\x0c\xa2\x6d\x46\x2f\x2c\x4c\x4e\x34\xc1\x34\ +\x56\xa6\x17\x71\xd7\x5d\xda\xf8\x9e\x7b\xd5\xc0\x12\x17\xb3\xcb\ +\x76\x57\x3a\x95\xac\x8e\x1c\x3c\xf4\xf8\x5f\x3f\xf4\x95\x8f\x77\ +\x57\x4a\xa7\x8f\x4b\xee\x6b\xb1\x5d\x3e\x44\xc7\x68\x2b\x7b\x08\ +\x3f\xc5\x6f\x05\x7e\x97\x5c\xc1\x61\x03\x92\x22\x21\x80\x09\x33\ +\x8e\x19\x7f\xa6\xa7\x57\x3e\x7d\x08\x3f\x3d\xa5\x1e\x65\x11\x48\ +\x49\x81\x6a\xc3\xee\x23\xf0\xd7\x01\x4b\x5b\x11\x43\xcd\x76\xba\ +\x6b\x81\xc3\x69\x63\x82\x9f\xf3\x86\x60\xda\xe4\xfa\x68\xde\xa3\ +\x08\xba\x58\x71\x75\xae\xe1\xd1\x97\xdc\xa3\x4d\xec\x47\x0e\xb2\ +\x1b\x2d\x47\x42\xb6\x40\x92\xc3\xfe\x3f\xa3\xf9\xc6\x81\x7d\xfb\ +\xfe\xc7\xf7\xfe\xfa\x6f\xfe\xeb\x48\xd3\xbb\x78\x04\x91\xbe\x96\ +\x3f\x98\x08\x40\xc3\x3b\x77\xee\xfc\x83\x37\xbd\xe9\x4d\x0f\x12\ +\x26\x53\xec\x20\x17\x20\xa9\xb0\xc9\xfd\x59\x68\xdc\x41\x61\xc5\ +\x9c\x0a\xaf\x9e\x94\x26\xc7\x15\x9a\xbf\xa4\x1e\x9a\x1b\x09\xf2\ +\xf6\x40\x89\xd4\xb5\x4a\xee\x6e\x84\xc0\x3f\xf1\x8c\x7c\x50\x20\ +\x88\x79\x87\x60\x38\xa2\x1a\xe3\x54\xa9\xaa\x59\xee\xa9\x62\x69\ +\x03\x6f\x78\x83\x46\xd8\x7d\xee\x74\xa5\xf1\xa0\xaa\x96\xb2\x59\ +\x9b\xe1\x4d\x63\xf6\x67\xcf\x9c\x99\x7b\xe6\xc9\x1f\xfc\xa7\xa3\ +\xcf\x3d\xff\xcd\x95\xd4\x73\x07\x25\xef\xf5\xf8\xc9\x8c\x03\xa5\ +\xf9\xdc\x7a\xc7\x1d\x77\x7c\x82\xd7\xcd\x6f\xc6\x25\x7c\x84\x4b\ +\xc5\x63\x31\xbb\x83\x3b\x2c\x29\xee\x0f\x28\xe6\x43\xb3\xe4\xe3\ +\x45\x4c\xb4\x3a\x35\xa9\xe6\xec\x8c\x7c\x30\xa0\x82\x79\x77\x50\ +\xb7\x55\x5e\xc3\x54\x85\xe1\x88\x5c\x00\xd6\x4b\x53\xe3\x0f\xf4\ +\xab\x7f\xcb\x56\xf5\x6e\xdd\x22\x1f\x6e\x46\xd9\xa0\x3c\x6e\x96\ +\xe3\x99\x2c\xcf\xd2\xd4\x10\xd9\xaa\xcb\xa6\xcd\xbf\xfb\xc1\xf7\ +\x1f\xfd\x6f\xde\xe2\xe2\xd1\xf5\xf2\x2a\x3f\x92\x9a\xaf\xf7\x8f\ +\xa6\x82\xd0\x8a\x0d\x1b\x36\xdc\x73\xe3\x8d\x37\xde\xbf\x7e\xfd\ +\xfa\x1b\x00\x4a\xb3\xc9\xda\x6e\x47\x09\xe3\x1a\x21\x63\x15\x50\ +\x14\x0d\x47\x8c\x60\x10\x4a\xc0\x74\x6b\x3b\x11\x83\x63\x87\xeb\ +\xe2\x9a\x82\x41\x46\xbf\x5c\x47\xb6\x86\x2f\x03\x6e\x14\x26\x2a\ +\x96\x4a\xc8\xab\xd0\xc9\xeb\xbd\xd3\xe3\xe3\x2f\x1c\xdc\xf7\xe2\ +\x97\xce\x1d\x1d\x7b\x22\xd3\x6c\x2c\x8d\x4b\x8d\x5f\xe7\xcf\xe6\ +\x1c\x28\x02\x0d\xaf\x5b\xbb\xf6\x2d\x3b\x76\xee\xfc\x17\xb8\xc5\ +\x6e\x04\x11\xc2\x42\xac\x20\x00\x4f\x11\x3d\x14\x0c\xc0\x3c\xcc\ +\xf2\xfb\x20\x2c\x3f\x00\x01\x78\x68\x9f\xff\xd9\xa4\xa8\xe1\x79\ +\x96\xea\x00\x62\x0d\xe6\xcb\x30\x6f\x18\xe7\x17\xa5\x26\xa7\x2f\ +\x4f\x9c\x3f\xff\xdc\xe1\xfd\x07\xbe\x7a\xe1\xd4\xf8\xd3\x51\xcf\ +\x9d\x0f\x49\xb5\x73\xbf\x41\x3f\x9c\x74\xa0\x30\xec\xf4\x26\x62\ +\xb1\x2d\xdb\x77\xee\x7c\xc7\xc8\xe8\xe8\xef\x80\x0f\x1b\x32\xec\ +\xd4\x64\x07\xea\xdf\x0b\x02\x4d\x07\x10\x46\xe7\x5d\x9d\xda\xbb\ +\x37\x08\xb7\xb6\x75\x45\x35\x6a\x4b\xd8\xa5\xc5\xc5\xc2\xfc\xdc\ +\xdc\x31\x36\x6b\x3e\x79\xe4\xc5\x17\xff\x4f\xad\x54\x79\x35\xe8\ +\xd5\x97\x03\xa6\x60\x93\x9a\xbf\xa9\x3f\x9d\x75\xd4\x2a\x0d\xa2\ +\xb0\xd7\x8d\x81\x0f\xaf\xdd\xb0\xfe\xc6\x15\xc3\xc3\xd7\x03\x94\ +\xab\x12\xc9\xd4\xca\x70\x24\x9c\xa6\xf1\x8a\x57\x04\xc3\xdc\x6c\ +\x18\xaf\xd0\xb2\x2a\xc1\xfc\x32\x6d\xab\x0b\xec\x4e\x3f\x37\x39\ +\x31\x71\xf8\xec\xa9\xf1\x83\x5c\x9f\xa6\xfa\xcb\x8a\x3e\xd1\xb2\ +\xe4\xfd\x36\xfe\x78\x9a\xba\x0f\xb7\x97\xc8\xf2\x15\x91\x15\x8c\ +\xc3\xe8\x84\x9a\x9c\xc7\xfc\x3d\x47\xb8\x3d\x90\xc8\xf5\x32\x9b\ +\x54\xcb\xa0\x80\xcd\x08\x0c\xd7\xaf\xf5\x8f\xa8\x9d\xdf\xb0\x5f\ +\xad\x37\xf5\x3a\x7f\xfe\x1f\x5f\xbc\xdd\xe6\x1a\x53\x0c\xc2\x00\ +\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x13\x09\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\ +\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\x1b\xaf\x00\x00\ +\x1b\xaf\x01\x5e\x1a\x91\x1c\x00\x00\x00\x07\x74\x49\x4d\x45\x07\ +\xd7\x09\x17\x17\x15\x19\x49\x86\x70\x41\x00\x00\x12\x96\x49\x44\ +\x41\x54\x78\xda\xed\x5b\x09\x74\x5c\xd5\x79\xfe\xee\x7b\xb3\x6b\ +\xb4\x5a\xb2\x25\xd9\x96\x64\x63\x6c\x83\x31\x36\xb6\x81\x00\xe1\ +\xb0\x34\x14\xc2\xda\x94\x86\x04\xd2\x90\x42\x72\x20\x5d\x20\x14\ +\x68\x08\x4b\x48\x09\x87\xda\xad\x73\x52\x52\x02\x24\xad\x7b\x20\ +\xe4\xb0\x95\xcd\x40\xb0\x1b\x56\x2f\x80\xb1\x2d\xdb\xd8\xb2\x6c\ +\x6c\xd9\xb2\x2c\xc9\x1a\x4b\x1a\x69\xf6\xe5\x6d\xf7\xf6\x7f\x33\ +\xef\xf0\xf4\x3a\x9a\x19\x1b\x26\x3d\xc9\x69\x7e\x9d\x4f\xf7\xbd\ +\xfb\xee\x9b\x79\xdf\x77\xff\xe5\xbe\x2b\x1b\x7f\xb4\x3f\xda\xff\ +\x6f\x63\x38\x0e\x1b\xbb\x05\x75\x52\xed\xf4\x8b\x5d\x33\x97\x5c\ +\x06\xb7\xef\x3c\xa1\xa4\x3c\xd0\xb3\xc3\x42\xcd\x0c\x71\x35\x15\ +\x12\x4a\x22\xc4\x53\xe3\x21\x91\x8d\x85\x84\xc0\x10\x80\x10\xe1\ +\xe8\xd4\x9f\x43\xf9\x83\x16\x40\xfc\xd8\x7f\x95\x68\x5d\x76\x37\ +\xe7\x58\xc6\xd3\x51\x99\x08\x42\x70\x01\xe1\x0e\x12\xaa\xc0\x65\ +\x3f\x84\xec\x81\x60\x6e\x82\x0b\x90\x5c\x10\x82\x03\xdc\x00\xd7\ +\xd2\x02\xba\x32\x2e\x0c\x6d\x48\xe8\x6a\x48\x68\x4a\x48\xe8\xd9\ +\x10\x57\xd3\x24\x54\x7c\x48\x68\xd9\x90\x30\x85\x12\x08\x4d\x7f\ +\x0c\x99\xdf\x3b\x01\xc4\x03\x9e\x3f\xc7\xf9\xf7\xbf\x88\xe6\x45\ +\xcc\x24\x04\xae\x03\x26\x39\x43\x05\x32\x11\x80\xc4\x80\x9a\xcc\ +\x43\xcf\x40\x68\x19\xf0\x6c\x82\x90\x02\x57\x92\xe0\xa6\x50\xb2\ +\x0f\x5c\x48\x04\x53\x13\x4e\xd0\xc1\x75\x2d\x27\x14\x40\xd7\x0d\ +\x03\x24\x0a\x41\x8d\x0a\xae\x87\x08\x43\xc2\xa0\x36\x07\x95\x04\ +\x33\xa1\x0c\x09\x6e\x84\x00\x84\x3a\x1e\x47\xf2\xff\x4e\x80\xa7\ +\x2e\xee\xc4\x99\xb7\x2c\x85\xb0\xc8\x73\x23\x07\xc7\xb9\x28\xd6\ +\xa7\xe7\xa1\x98\xe2\x64\xed\x3e\xd3\x84\x00\x57\x33\xa4\xa3\x42\ +\xc8\x82\x73\x0e\x03\x6e\x70\x12\xd6\x50\x32\x39\x01\x0d\x12\x52\ +\xcf\xc4\x01\xba\x26\xcc\x1f\x6e\x80\x3c\x89\xa0\x27\x68\x60\x4e\ +\x90\x1c\x04\x0f\x01\x3c\xc4\x64\x98\xd8\xd9\x71\x29\xba\xd9\xc5\ +\x10\x95\x11\xe0\x85\x6b\x53\x58\x78\x6d\x20\x3f\xf3\x46\x09\x01\ +\x9c\x62\x38\xc6\x8b\xdc\x35\x1b\xa2\xc8\x58\xf2\x1e\x40\x00\x14\ +\x4e\x90\xdc\x80\xcb\x47\xf0\xe7\x3c\x46\xd7\x75\x18\x9a\x96\xf3\ +\x20\x9d\x33\x12\x27\x09\x3d\x35\x06\x75\xa4\x07\x7a\xa2\x0f\xae\ +\x00\x03\xf3\xe4\x6f\x37\x14\xf1\x3a\x35\xdf\xe8\x58\x81\x04\xca\ +\x98\x0b\x65\x8d\xb9\x72\x0f\x97\x8b\x69\x82\x63\xc6\xb9\x89\x82\ +\x63\xc7\x78\x61\x58\x2d\xb7\xfa\x8b\x8c\x35\x21\xc9\xf9\x3e\xcd\ +\xf4\x96\xd4\xa7\xe2\x48\x34\xc6\x63\x0b\x95\x0f\x3f\xd9\x0b\xd4\ +\xd7\x00\xb3\x2e\x85\xde\x34\x97\x9c\xec\x03\xe8\x43\xab\xc1\xb3\ +\x06\xd4\x38\xae\xc8\x8c\x88\x55\xa2\x1b\x5f\x63\x0b\x50\xd2\x24\ +\x94\x35\x0e\x88\x89\x04\x78\x01\x81\xa2\xd7\x45\x31\x91\x8a\x7c\ +\xd6\xb1\x7e\xb6\x69\x5a\x1a\x48\x1c\x01\x0e\xbf\x0f\xd7\xbe\x35\ +\xa8\x5a\xba\x02\x9e\xe9\xcb\x00\x96\x1f\x0a\xce\xbe\xda\xf3\x38\ +\x4e\x00\x3e\xaf\x00\x42\x4c\x70\xdd\x22\x33\x69\x79\x44\xd9\x87\ +\xe7\xe5\xbd\x80\x50\xfe\xb3\xed\x6b\x79\x11\x0e\xbc\x09\xac\xbd\ +\x13\x7a\x66\x16\x52\x43\x02\xe9\x61\x01\x35\x29\x98\xa1\x62\x49\ +\x25\x04\x28\x7c\x38\xce\x8b\xcc\x6c\x31\x61\x8e\x91\x38\x2f\x15\ +\x5a\x93\x08\x13\x27\xf2\xe9\x31\xe4\xec\x93\xd5\x30\x12\x5e\xa4\ +\x8f\x9a\xe4\xf3\xb7\x42\xc0\x5f\x81\x1c\x20\x0a\xc9\xd8\x84\x4a\ +\x92\x71\x1e\x97\x0a\x25\x5e\x46\x9c\x42\xf1\x6c\xf2\xf6\x44\x31\ +\xdd\x2c\xaf\xd6\x23\xc3\xb2\xcf\x2d\x40\xa1\xdb\x15\x78\x41\xb1\ +\xd8\x75\x1e\x17\x0f\x95\xc2\x44\x59\xc6\xc3\xe2\x83\x44\x3e\x8c\ +\x02\xe3\x1a\x84\xc5\xbc\x72\x02\x40\x14\xcd\xe8\x36\x81\xe3\x4d\ +\x88\x45\xae\x17\x92\x2d\x1c\x1f\x1b\x70\x90\x77\x98\xa1\x43\xa0\ +\xd2\x02\x08\x41\x30\x8e\x3d\xa3\x17\x86\x4a\xf9\x24\xc8\x8f\x31\ +\x29\xc6\x4b\x90\x27\x13\xa6\x07\x4c\x9c\xb7\x0a\x09\xe0\x24\x5b\ +\xbe\xd4\x95\x5f\x03\x94\xff\xac\x42\x0f\x8b\xf5\x03\xa9\x51\x94\ +\x34\x43\xb7\x89\x57\x38\x04\x2c\x18\x05\x0f\x57\x9e\x4c\x91\x6b\ +\x28\xa8\x26\xc5\x45\x8d\x1d\x2e\x4f\x1e\xc8\x2f\x93\xe1\x14\xa0\ +\x12\x65\xd0\x41\xb6\x10\x45\x32\x36\x6c\xa2\xb9\x7e\x10\x98\x75\ +\x0e\x6e\x9d\x13\x60\xf7\x4d\x9a\x10\xcb\xcf\xbc\x33\x09\x02\x36\ +\x44\x25\x04\x40\xc9\x44\x35\xb9\x10\xb0\x88\xb1\x63\x24\x6e\xc2\ +\x3e\xb6\xbf\x27\x6a\xce\xfc\x08\x8e\xd5\x04\xd7\x2d\xe2\x16\x2a\ +\xe4\x01\x65\x56\x7a\x0e\x22\xc5\x88\x95\x12\xc3\xea\x73\x0a\x87\ +\x58\x5f\x01\xf9\xb2\x66\x38\xca\x60\x25\x05\x28\x1f\xdb\x4e\x21\ +\x9c\x64\x0a\x3d\xc2\x26\x6e\x0b\x64\x58\xe0\x40\x9c\xc8\x67\x88\ +\xbc\x54\xe4\x7d\xb5\x74\x15\x70\xa0\xd2\x2b\xc1\x82\x38\xb7\x60\ +\x93\x13\xff\xdb\x0b\x2c\x62\xc2\xe1\xe6\x36\x59\x82\xe3\x38\x7e\ +\x88\xc8\x0f\x03\xb2\x35\x54\x58\xe0\x28\x67\xf6\x3a\xc0\xf6\x82\ +\x0a\xaf\x04\x3d\x55\x40\xfd\x09\xf9\xa7\xd1\xd3\x40\x26\x0c\x24\ +\x8f\x02\x5a\xd2\x99\xe8\xec\x58\x2e\x14\x88\x39\x12\xa3\x53\xa8\ +\x78\x6f\x9e\xbc\x64\x3d\x3d\xb3\x45\xb0\xfd\xba\x74\x15\xb0\xcb\ +\x60\xe5\xd6\x01\xb6\x08\xfe\x29\xc0\xdc\x4b\xe1\x34\x91\x17\x61\ +\x6c\x2f\x10\xfa\x28\xe7\xbe\x85\xee\x4f\x10\x13\xfa\x84\xc3\xe5\ +\xf3\x6d\xe2\x90\x93\xbc\x4d\xd6\xd9\xf2\x12\xcc\xac\x24\x58\xe9\ +\x75\x80\x23\xbb\x17\x1a\x03\x82\x2d\x79\xb4\x5f\x98\x17\xe0\xe0\ +\x6b\xc0\x48\xa7\x33\x1c\x18\x01\x36\x79\xb3\xb5\xc9\x9b\x33\x7f\ +\xd4\x72\xfb\x32\x02\xc0\x1e\x53\x72\x1d\x20\x08\x15\x4d\x82\xb0\ +\x50\xce\x6a\x3a\x80\xd3\x6e\x05\xce\xb8\x17\xa8\x9e\x3e\x21\xce\ +\xed\x7c\x60\x9f\x5b\xe4\xb3\x16\x79\x09\xd4\x5a\x90\xca\x80\xa1\ +\xf8\xcb\x90\xa8\x64\x15\xc0\x24\x19\xdf\x50\xca\xaf\x32\xea\xe7\ +\x01\xe7\x2c\x07\x3a\x2e\x73\x84\x84\x0d\x93\xfc\x41\x22\x1f\xb2\ +\x49\x95\x03\x2b\x2d\x82\x30\xf4\xca\x57\x01\x22\x6a\x27\xaa\x48\ +\x0f\xb0\xee\x6e\x40\xe8\xf9\x73\x6f\x35\x10\x6c\x26\xb2\x27\x02\ +\xd3\x96\xd1\x79\x7d\xc1\x76\x22\x4e\xba\x01\xa8\x9b\x03\xec\x5c\ +\x09\x18\x9a\x95\x00\x09\x89\x03\x80\x62\x91\x17\x93\x00\x8e\x44\ +\x68\x1b\xb7\xa7\xad\x20\x1c\xb8\xe6\x8c\x16\x51\xe9\x32\x88\x89\ +\xe5\x4f\x07\xb2\x61\xc2\x30\x30\xba\x1d\xe8\x79\x16\x68\x5c\x04\ +\xcc\xfe\x33\xa0\xba\x1d\x0e\x6b\x39\x17\xf0\x90\x58\x9d\x14\x16\ +\x9a\x0a\x24\x7b\xec\x99\x17\x25\x92\x9c\x70\x10\x76\x92\x66\x13\ +\x20\x9c\x1e\x90\xfb\x55\xb1\x10\x60\x02\xce\x9a\x3f\x59\x19\xb3\ +\xb6\xba\x47\xb6\x00\x9b\x7f\x00\x7c\xb2\x8a\xba\xb2\x70\xd8\x94\ +\xc5\xc0\x92\xfb\x81\x74\x9f\x49\xbe\x78\xcc\xdb\xfd\xc7\x17\x1a\ +\xa6\xd9\x65\x90\x50\xa9\x24\x08\x51\x58\xd7\x6d\xf2\x85\xab\x3e\ +\x53\x88\x81\x35\x24\xc4\x1d\x40\x6a\x10\x0e\x6b\x3a\x13\x38\xf5\ +\xfb\x05\x64\xcb\x82\x4d\x1a\xff\xce\x7e\xf6\x3b\x5d\x09\x5a\x04\ +\xfd\x8d\x40\xfb\x05\x80\xbb\x2a\x17\x6f\x48\x0f\x01\xf1\x83\xc0\ +\x78\x17\x60\xa8\x13\x44\xa0\x36\x75\x18\xd8\x4a\x22\x2c\x79\x10\ +\xa8\x99\x8b\x4f\x6d\xfe\xdf\x00\xa3\x1f\x00\x87\x9e\x01\x50\x26\ +\xfe\x51\xc2\xf5\x25\x47\x9e\xc8\x83\xeb\xf6\xed\xa2\x32\xeb\x00\ +\xe7\xcc\xfb\xea\x80\xd6\xb3\x60\xdb\x52\x02\xf2\x2b\xc1\xa1\x77\ +\x80\xbe\xd5\x74\x1c\xb1\x17\x3b\x5a\x14\xd8\x7e\x17\x89\xf0\xcf\ +\x4e\x11\xce\x7c\x04\x18\x79\xd7\xac\xfd\xc5\xe3\x9f\x17\xf5\x4f\ +\x27\x69\xc9\x3e\x17\x10\x16\xf1\x8a\x87\x80\xed\xee\x93\x9a\x3b\ +\x08\xb4\x5f\x05\x9c\xf5\x53\xa0\x71\xa9\xf3\xe5\x66\x7c\x2b\xb0\ +\xfe\x72\x40\x8b\xd9\xe3\x3d\x0d\xa4\xdd\x4f\xca\xd7\x7c\x66\xb7\ +\x36\x8a\x84\x06\x9b\xc4\xa1\x2a\x23\x80\x73\x25\x58\xd2\x3c\xf5\ +\xc0\xe2\xfb\x80\xb6\x2b\xf2\x5e\x90\xd8\x07\x28\x47\x80\x54\x0f\ +\xb0\xfd\x56\x38\xac\xfd\x5a\xa0\xe1\xb4\xcf\x50\xfb\x4b\xc2\xb1\ +\x12\x14\xa2\x62\x02\x70\x0b\x02\x50\x62\x40\x78\x17\x30\xb2\x0d\ +\x48\x0e\x4e\xf2\x2d\x0c\x98\xfb\x5d\xa0\xf1\x4c\x20\x3b\x68\x3f\ +\x78\xff\x53\x74\xcf\x3b\x13\x86\x51\xe7\x29\xf7\x1d\x67\x22\x2c\ +\x71\xcc\x9c\xc4\x05\x2a\x97\x03\xec\xfa\x3f\xbe\x17\xd8\x70\x1b\ +\x00\xdd\x0a\x09\xeb\x05\xa9\xe3\x4a\x60\xc6\xc5\xce\xa5\xd9\xc2\ +\x1f\x11\xe1\xdf\x02\x91\x4e\xfb\x41\x77\xdf\x05\x5c\xb8\xd5\x1e\ +\xd7\x4a\x61\x13\x6c\x03\x92\xfd\xce\xd8\x67\x36\x0a\x63\xbd\x04\ +\x80\xcf\xb6\x27\xf8\xe0\x7d\x37\x2d\xdc\xf2\xf6\x4f\xa5\xd2\x55\ +\x80\xc0\x55\xe7\x92\x18\x84\x4c\x08\xd8\xfb\x18\xb0\xfd\x87\x80\ +\x91\x99\xf0\xc9\x6e\xe0\x0b\xbf\x06\x5c\x2e\x7b\x16\xe3\xdb\x80\ +\xd1\x89\x5e\x20\x03\xed\xdf\x2c\x3b\xf3\x4e\x14\xef\x17\xec\x33\ +\xe6\x80\xb7\x37\xf7\xae\x7e\x6b\xc3\xbe\x5f\x90\x08\xac\x68\x0e\ +\x28\xdc\xf3\x73\x2e\x90\xc6\x3a\x81\x0f\x6f\xb4\xfa\x2c\xab\x9e\ +\x0f\xb4\x5d\xe7\x8c\xe3\xfe\x5f\xc2\x61\xd3\xaf\x2e\x41\xba\x4c\ +\xdc\xa3\xe0\xdc\x0e\x83\xe3\xc9\x01\xe3\x8a\x9e\xed\xdc\x35\x38\ +\x7f\xc7\xee\xc1\x7f\x25\x11\x4a\x6f\x89\x81\x3b\x84\xb0\x77\x6f\ +\xf7\x00\x87\x9f\x03\xf6\xac\x84\xc3\xe6\xdd\xe5\x24\x37\xba\x06\ +\x30\xd2\xf6\xf5\xda\xc5\x80\x7f\x6a\x01\xe9\xe3\x24\x6e\x0b\x20\ +\x3e\x83\x07\x24\x33\x19\x43\x81\xfb\xce\xd7\xdf\xec\xba\xe6\x50\ +\xff\xd8\x43\xc5\xdf\x06\x09\x81\x16\xe0\x8c\x1f\x03\x17\x3d\x4f\ +\xed\x0a\x20\x38\x33\x4f\x3e\x3d\x80\x9c\xed\xa5\x9a\xaf\xc5\x27\ +\x78\xc1\xc9\x40\xcd\x7c\x9b\x94\x20\xf2\xd1\x0f\x9d\x49\x73\xca\ +\xd9\x85\xa4\x51\x36\xde\x0b\xc9\x33\x27\x71\x21\xb9\xe5\x63\x12\ +\x20\x95\xc9\x1a\x29\xdd\xc8\x8e\x45\x92\xb7\x3c\xbb\x7a\xeb\x3d\ +\x6b\x5f\x78\xf0\x9e\xc2\x3f\x8d\xf1\x7c\xe6\x5e\x72\x27\x50\x6f\ +\x12\x72\x01\x75\xd4\x9e\xbe\xc2\x76\x7b\x86\xfc\xe2\xe7\xc8\xab\ +\x70\xd8\xd4\x8b\x9d\x33\x1b\xdb\x0c\x87\xd5\x2e\x3a\x0e\xa2\x65\ +\x44\x80\x05\xfa\xb5\xcb\x77\xfa\x2f\x96\x3f\x70\xeb\xeb\x8f\x3d\ +\xfc\xc3\xef\xfc\xec\x27\xf7\x4e\x2f\x5a\x05\x32\x8a\xa2\x27\xd2\ +\x19\xff\xf6\x4d\x9b\x5e\x5a\xba\x74\xe9\x6b\xcf\xbc\xbc\xf9\xa1\ +\x0f\xff\x7b\xe5\xc8\xd9\x97\xfc\xc3\x2a\x47\x12\xac\x99\x0d\x54\ +\xb5\xc0\x61\xee\x1a\xe0\xe4\xef\x01\xdb\xbf\x6f\xf7\x8d\x6e\x00\ +\x3a\xbe\x39\xc1\x0b\x4e\x71\xba\x77\x66\x1f\x1c\x56\x75\xc2\xf1\ +\x91\x47\x89\xbe\x09\x25\x70\xe3\xa6\x2e\xcf\x86\xa1\xfd\x97\x37\ +\xd4\xd7\x5e\x3e\x73\x66\x8b\xf8\xea\xd5\x57\xec\x9a\x36\x6d\xda\ +\x7b\x55\x55\x35\xeb\x33\x59\xf5\x83\x7f\x7b\xe4\xe7\xa3\x39\x01\ +\x14\x4d\xe3\x14\x06\x7e\x90\x71\xce\xff\x76\x67\x77\xff\xb9\x2f\ +\xbd\xb1\xed\x71\xca\x07\xc3\x38\xfc\xa4\x2d\x80\x96\x29\xb2\xf9\ +\x71\x0a\x1c\x96\x19\x80\xc3\x7c\xcd\xce\x87\x56\x87\xe0\x30\x6f\ +\x4b\x59\x82\xe5\xc9\x3b\x63\x9f\x83\x61\x6a\x9d\xf7\xad\xda\x54\ +\xed\x02\x26\xb9\x5a\x87\x47\xa2\x6c\x6c\x3c\xb9\xa8\xb7\x6f\x68\ +\x91\x2c\xcb\xb7\xa9\xaa\xca\xe7\xcc\x99\x73\x7b\x4e\x00\x5d\xd7\ +\x59\x3a\x9b\x0d\x80\x6c\xc7\x8e\x1d\x83\x0b\x16\x2c\xf8\xbb\x35\ +\x6f\xef\x7c\xba\x65\x5a\xed\x73\x27\x9d\x30\x53\x0e\x72\xc3\xda\ +\xc1\xe9\x07\xd2\x47\x81\x40\x33\x1c\x96\x3c\x0c\xe7\x02\x5c\x86\ +\xc3\x5c\xb5\xce\x35\xbf\x91\x82\xc3\xe4\x2a\x1c\x97\xb1\xc9\xfb\ +\x46\xb2\x3e\xbc\x1f\xa9\xc3\xc1\x4c\x2d\x0e\x67\x6b\x30\x1e\x4b\ +\x5f\xa4\xeb\x49\xc4\x62\x31\x28\xe4\xe5\x84\x7d\xc4\xb5\x95\x73\ +\x5e\x6f\xf9\xe2\x2c\xf3\x17\xb8\x10\x8c\xf2\x40\x10\x96\x75\x77\ +\x77\x3f\x63\x18\xc6\xd3\xff\xf9\xf4\xba\xc0\x6b\x91\xb9\x72\x5a\ +\x78\x00\x6e\xfd\xe3\xc8\xf5\xb7\xe5\x57\x83\xb0\x2c\x3b\x0a\xec\ +\x7c\xc8\x49\xb0\xaa\x03\x0e\xd3\xe3\x70\xee\xef\x7b\x50\x60\xf6\ +\xfd\xc7\x65\xe3\x59\x37\x7e\xb5\xb7\x19\xd7\xbf\xbd\x00\xcb\xfb\ +\xcf\xc5\x7b\xb1\x99\xd8\xdc\xaf\xe0\xc0\xde\x2e\xd4\x25\xba\x51\ +\xa7\xf4\x3f\x5a\x53\x53\x73\xe1\xca\x95\x2b\x67\x90\x00\x4b\x67\ +\xcf\x9e\xdd\x23\x49\x12\xac\x6f\x7a\xcb\x05\xb2\x80\xcf\xd3\x94\ +\x55\x95\x46\x4c\x30\x12\xe0\x26\x55\x35\x4e\x5e\xfe\xd8\xda\xd3\ +\x3c\xb7\x5c\x86\xcb\x9b\xfa\xe0\x33\x5f\x7b\x93\x7d\x24\xf5\x26\ +\x60\xee\xd7\xf3\x1a\xf6\x3c\x01\xa8\x24\x82\x3c\xe1\xe1\x5b\x2e\ +\x83\xc3\x52\xbd\x36\x79\x46\x90\xeb\xe1\x30\x6d\x1c\x10\xc7\x21\ +\x82\x99\xe0\x46\xaa\xf0\xec\xee\xa9\xd8\x12\x9e\x06\x4d\xd7\x10\ +\x8f\x8f\x43\x44\xdf\xc3\xe5\x73\x0d\xcc\x59\xe4\xc3\x89\xb3\xda\ +\xe0\xad\x6d\xa6\x3c\x7d\x41\x5f\xfb\x95\xf7\x0c\x03\x10\x0f\x3f\ +\xfc\x30\x23\x5b\x2c\x44\x2e\x6b\x5f\x4d\x78\xc3\x75\xcf\xdf\x5f\ +\x83\xc7\xd6\xee\x6c\x4a\xa6\xd5\x16\xcb\x2d\x38\x01\x07\x0f\x1e\ +\x4c\xb7\xb5\xb5\x7d\x25\x1a\x49\x6c\x5d\xf1\xcb\xdf\x36\xc9\x37\ +\x7e\x11\x97\x64\x87\xe0\x96\x00\x16\xeb\x07\xdb\xfe\x2f\x80\x79\ +\x2c\xe3\xd3\xed\x6c\xc6\xac\x87\xdf\xf9\x03\xe0\xc0\xa3\x66\xc9\ +\xcc\x23\xfc\x2e\xc0\x27\xb8\xaf\x6f\x0e\x1c\xa6\x5a\x02\x38\x45\ +\x98\xb4\x6f\xf3\x60\x10\xab\xb6\x35\x63\xd3\x61\x2f\xa2\xd1\x08\ +\x62\x91\x8f\xf1\xa5\x39\x0a\x7e\x74\x9e\x84\xf3\x17\xce\x04\xab\ +\x9b\x87\x3d\x83\x40\x64\xe8\x10\xa2\x07\x3b\x11\xee\xdd\x79\xf0\ +\x9d\x70\xf3\x01\x00\x7c\xc5\x8a\x15\xcb\xc8\x1b\x3c\x24\xc0\xeb\ +\x00\x72\xa5\xca\xd5\xd8\x58\x23\x65\x15\xad\xdf\xd0\x35\x0e\xa0\ +\x86\x90\x26\x68\x04\x31\xbb\xbf\xff\x70\xf4\x84\xa6\xeb\x87\x8e\ +\x8c\xac\x59\xf1\xe4\x26\x96\xb9\xfa\x6a\x9c\x6f\xbc\x08\x8f\xac\ +\x41\x96\xcd\x4a\x48\xa0\x56\xa6\x96\x59\xe7\x8c\x13\xc2\x5d\x60\ +\x11\x82\x9c\xaf\x9c\x29\x5d\xc6\xa1\xb1\x00\x8e\xc4\x3c\x18\x8a\ +\x7a\x10\x7a\xf5\xbf\x10\xd3\xd7\x21\xcd\xa6\x23\x65\xd4\x01\x24\ +\x6c\x2d\xef\x40\x8d\xcf\xc0\xd4\x6a\x0d\x73\x9b\x32\x58\x36\x23\ +\x85\x29\x7e\x1d\xa6\x0d\x27\xdc\xd8\x70\xb0\x1a\x2f\x75\x4d\xc1\ +\xc7\x83\x12\xc2\xe1\x30\x22\xe3\xe3\xf8\x8b\xa5\xc0\x03\x37\x07\ +\x70\xe2\xbc\x2f\xe4\x12\xb1\x88\x1d\x81\x31\xb4\x1d\x91\x7d\x31\ +\xa4\x14\x91\x4f\x37\x6e\xb7\x35\x45\x60\x2d\x2d\x2d\x17\x9b\xf9\ +\x80\xec\x79\x58\xe6\xba\xfd\xde\x55\x1c\x5e\xff\x12\xa8\x59\x93\ +\xfc\x14\x42\x15\x21\x46\xc8\x10\xf8\x99\xd3\x47\xd7\x6d\x3c\x5c\ +\xf7\x60\x6f\xdf\x91\xfb\x1f\x7e\x49\x42\xf4\x4f\xaf\xc2\x32\x75\ +\x35\x3c\x2e\x1d\x2e\x57\x9e\xbc\xcb\x12\x81\x13\xdb\x50\xda\x8b\ +\xc1\xb8\x17\xfd\x51\x1f\x8e\x24\x83\xd8\x3f\xec\x42\x6f\x48\x43\ +\x3a\x93\x45\x36\x9b\x85\xaa\x66\x20\x44\x1a\x3e\x5f\x06\x81\xc0\ +\x28\x82\xf2\x18\x3c\x48\x23\x6f\x12\x09\xe4\x42\x46\xf7\xc0\xef\ +\xaf\xc7\xec\x66\x2f\x3d\x5a\x35\x14\xe1\x43\x86\xee\x1f\x0a\x8d\ +\x20\x3c\x36\x86\xa0\x17\x78\xed\x8e\x7a\x5c\xf2\x27\xe7\x03\xb5\ +\x27\x43\x28\x29\x18\x07\xd7\xe6\x04\x10\x06\xc0\x49\x79\xc1\x04\ +\x84\xe0\x74\xec\xca\x15\x5f\xf3\xbb\xeb\xeb\xeb\xaf\xef\xeb\xeb\ +\xcb\x80\x6e\x77\xbe\x0d\x2a\xf4\xe9\x00\xb7\x50\x47\xf0\x13\xa2\ +\x9b\x81\x44\xbb\x0e\x76\x61\x7b\xf4\xb9\xf7\x0e\xd7\xce\x3e\xd4\ +\x37\xf0\x97\x4f\xbc\xc9\xb0\xff\xa4\xf3\x35\x79\x74\x4b\xca\x60\ +\xae\xa0\xaf\xaa\xc6\xe5\xae\x9e\x82\x81\xa8\x84\x81\x31\x8e\x68\ +\x3c\x8d\x54\x2a\x83\x44\x32\x8d\x80\x34\x88\x93\x5a\x75\x5c\xbb\ +\x54\xc2\xbc\x19\x40\x5b\xb3\x84\xf6\xd6\x20\x9a\xbf\xf4\x22\x24\ +\x33\x51\xba\x48\xf3\x9d\x37\x83\x99\x9b\x26\xba\x02\x28\x49\x30\ +\x35\x85\xa7\xd6\xeb\xb8\xf1\x3f\x52\x18\x19\xe1\x85\xc9\x9e\x01\ +\xab\x6f\x0b\xe0\xbc\x2b\xbe\x05\xe1\x69\x82\x48\x0e\x43\xdb\xf7\ +\x12\x90\x49\x12\x61\x19\x0c\xc8\x91\xe7\xd6\x96\x92\x90\x68\xa6\ +\x00\xf6\xca\x2b\xaf\xdc\x10\x08\x04\x66\x47\xa3\xd1\x55\x20\x5e\ +\xc5\x0a\x8a\x8b\x10\x24\x34\x10\xbc\x84\x64\x73\x10\x89\xf3\xe7\ +\x81\x35\x04\x51\xfb\x9b\xfd\x0d\x77\x29\xdc\xfd\xdd\xd6\xd6\x56\ +\xf4\xf7\xf7\xa1\x2a\xe0\x05\x37\x34\x84\x86\x23\x30\x0c\x8e\x69\ +\xb5\x14\x87\xf3\x25\x9c\x3b\x8f\xe1\x82\xa5\x4d\x68\x9f\x3d\x8b\ +\x2a\x5c\x13\x98\xbf\x01\xcc\x5b\x0b\xe6\x0e\x82\x41\x03\xb8\x92\ +\x03\x33\xb2\x10\x6a\x14\x2c\x3d\x08\xa4\x87\x73\xdb\xec\x4c\xcb\ +\xe2\xd0\x51\x81\xb3\x97\xd7\x62\x24\x1c\x01\x59\x6e\xc6\x3b\x1a\ +\x25\xec\x09\x01\xa7\xb5\x09\x7c\xf0\xb3\x0b\x20\xd1\xeb\x37\x4f\ +\x47\xa0\xed\x79\x06\x22\x9b\xb4\x37\xaa\x75\x81\x4d\x07\x38\x14\ +\x8d\x83\x09\xae\x27\x1b\x16\x2f\x7c\xba\xa7\x4e\x27\xf2\x5b\x3e\ +\xfa\xe8\x23\xcf\xc0\xc0\xc0\xa9\x00\x7a\x8b\xed\x07\xe8\x84\x38\ +\x41\xb5\x44\xa8\x1d\x4e\x22\xf0\x7a\x17\xa2\x27\x35\x23\x7c\xde\ +\xac\xc8\x9d\xef\xf6\x35\xb3\xde\xde\xde\x9b\xcd\x58\x22\x6f\xb4\ +\x66\x85\xe1\x9c\x39\xae\xc8\xbd\x5f\x9f\xe5\x9f\xb5\xe8\x42\x6f\ +\xb0\x75\x21\x73\xfb\x82\x48\x0b\x05\xc4\x90\xa0\x10\x31\x82\xaa\ +\xd0\x61\x14\x3c\xd9\x9f\xdb\x2c\x91\x94\x10\x24\x3d\x01\x99\x09\ +\xc8\x42\x40\x12\x66\xcb\xd0\x3d\x5c\x0d\x0e\x39\x37\xdb\x37\x9e\ +\x03\x7c\xeb\x6c\x50\x68\x00\x7f\xfd\x42\x2d\x66\x34\x24\x10\x97\ +\xdb\xe0\x4a\x2b\x48\xed\x5a\x0d\x91\xce\xd0\x7d\x66\xfc\x09\x08\ +\x9d\x23\x95\x11\x54\x1a\x01\xb3\x27\x65\xf8\x1e\x79\x64\x7d\xba\ +\xba\x75\x7a\xfd\xbf\xf7\xf4\xf4\xd4\x11\xf9\x1b\x4c\xf2\xe5\x36\ +\x44\xb8\x15\xff\x23\x04\x45\x00\x8d\x29\x15\x53\x3b\xfb\x11\xdb\ +\xd6\x2f\xc6\x5b\x1b\x95\xef\x69\x9a\x36\x04\xe0\xdb\x84\x36\x02\ +\xbc\x6e\xb9\x77\xd9\x89\x35\xf7\xb6\x5f\xf9\xe8\x75\x35\x53\x5a\ +\xda\x54\x25\x2d\xa5\x33\x09\xb7\xa6\xa6\x5d\x4a\x72\x14\xa3\xfd\ +\xbd\x99\x70\xff\xc7\x6e\x23\xbe\xbf\x5a\x36\xe2\xbe\x80\x57\x54\ +\x79\x3d\xc2\x13\xf0\x08\x29\xe0\x61\xb9\xca\xe2\x22\xb8\x19\xc0\ +\x0d\xe0\xdd\x81\x39\x48\x24\xba\x30\xb3\x1e\x5b\x82\x6e\xec\x79\ +\x6d\x07\x6a\x3d\x2e\x51\x27\x04\x3f\xef\x70\x18\xfa\xc7\x3d\x11\ +\xc9\x88\xbf\x2a\xf3\x78\x04\x01\xb7\xcc\x3c\x4c\x80\x71\x01\x45\ +\x15\x62\xdf\x30\xd4\xa3\x09\x36\x7a\x28\xea\xde\xf8\xe1\xa0\xdf\ +\x35\xeb\xc4\xa6\xd5\x54\xd1\x9a\xf7\xee\xdd\x7b\x37\x80\x5f\x1d\ +\xeb\x8e\x90\xb0\xbc\x60\xdc\x6a\x1b\x09\x0d\x02\x08\x1c\x09\x8f\ +\x87\x01\xac\x90\x65\xf9\x9f\x7c\x3e\xdf\xf6\x54\x2a\xb5\xd0\xe3\ +\xf5\xbe\xdc\x71\xfa\xd5\xef\xcf\x3e\xe5\xec\xaf\x09\x2e\x06\x0c\ +\x43\x53\xe2\x91\x70\xf7\xde\x1d\x1b\x77\x6f\xfc\xcd\x93\xa3\xaa\ +\x9a\xf6\x41\x57\x7d\x86\x11\x0c\x08\xdd\x5b\x25\xb8\x56\x45\xa1\ +\x13\x64\x42\xaf\x97\x99\xde\xe0\x96\x8c\xda\x6a\x9f\x41\x2d\x0f\ +\xc6\xa4\x99\xf3\x3b\xfb\xa4\x2a\x55\x51\xe2\x0b\xe6\xe0\x0e\x83\ +\x23\xab\xab\xf0\x65\x54\xe1\xf3\xbb\xb8\xa7\xfb\x88\xb1\x64\xcd\ +\x3b\x9d\xcf\xca\x2e\xd6\x00\x78\x83\x0c\xc2\xc7\x60\xb8\x05\x87\ +\x94\x48\xc3\x08\xa7\xb8\x72\x24\x2a\xbc\x9a\x67\xda\x17\x3b\xe6\ +\xcc\x98\xd1\xd5\xd5\x95\x08\x85\x42\xf7\x00\x78\xf4\xb3\x6c\x89\ +\x19\x84\x84\x25\xc2\x14\x0b\x33\x08\x11\xc3\x30\xc6\x1a\x1a\x1a\ +\xb6\x64\x32\x99\x85\xfe\x40\x70\xd7\x57\x6e\xbc\x77\x9a\xcb\xed\ +\x35\xb3\xed\xfb\x5d\xbb\xf7\xbc\xb1\xa3\x73\x6b\x94\x43\x97\x1a\ +\x4f\xfa\x32\xe3\x5c\x65\xa4\x89\xc4\xf5\x2c\x33\xd4\xb4\xa4\x2b\ +\x29\x49\x57\x93\x32\x65\x6f\x59\xa3\x96\x67\x53\xee\x31\x2d\xed\ +\x19\x1c\x63\x0b\xdd\xcd\xcb\x1e\xdd\xd9\xf5\x3a\x24\x86\x07\x3b\ +\xa6\x62\x9b\x00\x1d\x6a\x90\xb8\x4c\xe9\xc4\xa5\xde\x3e\x2c\xd8\ +\x5b\x4f\xae\x1f\x9b\x75\xe1\xb2\x59\xcf\xb7\x34\xf8\xd3\xe3\xb1\ +\xd4\xb4\xd1\x68\xfa\x84\x70\x4c\x9f\x6f\x48\xfe\x99\x9e\x40\x5d\ +\xa3\xab\xc6\x1f\x8c\x86\xc3\xea\xce\xee\xf7\x5e\xd6\x75\x7d\x39\ +\x80\x5d\x04\xed\xf3\xfc\xaf\x31\x66\x89\x55\x4b\x98\x6a\x95\xca\ +\x24\xd5\xd5\x9b\xa8\x26\xdf\xd6\xdc\xdc\xfc\x0d\x7a\x87\x50\xd2\ +\xe9\x74\xe2\x8d\x37\xde\xd8\x3d\xc9\x96\x86\x80\x05\xd3\x98\x10\ +\x9c\xc3\xe0\x42\x37\xe8\x48\xe5\x86\x9a\x11\xdb\xb6\xed\xa8\x86\ +\xb7\x7a\xed\xde\xbd\x9f\xcc\xeb\xec\xec\xdc\x0e\xe0\x4c\x82\xfe\ +\x8f\x00\xd6\x2d\x06\x4b\x8d\x83\x45\x63\x90\x7b\x13\xec\x2c\xba\ +\xf3\x79\xb7\xdb\xdd\xec\xf5\x7a\x55\x6a\x99\xcb\xe5\x72\x93\x81\ +\xc8\x1a\xf1\x78\x7c\xbf\xa2\x28\x6b\x01\xfc\x5a\x08\xd1\x5d\x40\ +\xbc\x9c\x07\x94\x08\x09\x8d\x10\x21\x28\x84\x26\xc2\x14\x55\x55\ +\xe3\xe6\xba\x9a\xda\xa6\x97\xc9\xc8\x2b\x38\x00\x97\x53\x00\xe7\ +\x9f\x3d\x18\x63\x1c\x8c\x41\xa2\x1f\x78\xdc\x02\xf0\xf1\x77\x37\ +\x7c\xd4\xee\xf7\x57\x3d\x91\x88\xc6\xe6\x6d\xdb\xb6\x6d\x14\xc0\ +\x35\xd6\x78\x99\x04\x90\xf0\x31\x64\xab\x2a\xd5\xe4\x77\x54\x70\ +\x0b\xe5\xa1\xb3\x08\xb5\xd6\x73\x85\x09\xfb\x09\xa6\x70\x7d\xd6\ +\x62\x4e\x54\x66\x57\xb8\x30\x24\x92\xd6\x97\x66\x69\xc6\x37\x92\ +\x00\x4a\x22\x91\x38\xe3\xc0\x81\x03\xaf\x51\x79\xe4\x74\x2e\x13\ +\x49\x13\x92\x55\x21\x72\xe4\xf3\x13\x2f\x0c\xab\x95\x48\x2c\xb1\ +\x6e\xdd\xba\x36\xba\x7e\x3d\x2d\x4f\xbf\x73\xe8\xd0\x21\xff\xa6\ +\x4d\x9b\xc6\xe9\xda\x5f\x01\xc8\x12\xda\x26\x7c\xa7\x36\xc1\x0b\ +\x93\x84\xdd\x84\x4e\x42\x8a\x90\xb1\x26\x45\x2f\x47\xba\x74\x08\ +\x1c\xff\x7d\x32\x21\xe0\xf1\x78\xbe\x4d\x1e\xb0\x9c\xc2\x60\xe5\ +\xa9\xa7\x9e\xba\x9e\x92\xa3\x9b\x5c\x93\x51\x82\xe4\xe4\x9a\x3a\ +\x09\xa2\x72\xce\x0d\x1a\x23\x28\x5f\xc8\xe3\xe3\xe3\x33\xfc\x7e\ +\xff\x29\x34\xe6\x22\x6a\x97\x51\x82\x62\x94\xa1\x0d\xea\xff\x10\ +\xc0\x2a\xc2\x51\x8b\x50\xc2\x2a\xc9\xb1\x1c\x51\x27\x41\x6e\x41\ +\xe0\x73\x1a\xab\xc0\xfd\x26\xae\x63\x8c\x3d\x4c\xa4\x6a\xab\xaa\ +\xaa\x86\x89\x58\x8a\xda\x0c\x09\x20\x3c\x79\xf3\xd1\xf5\x06\x42\ +\x8d\x39\xfb\xe4\x39\x88\x44\x22\xc6\xd0\xd0\x50\x2f\x79\xc2\x06\ +\x6b\x69\x3a\x60\x11\x4d\x12\xd2\x96\x08\x9a\x4d\xf6\x77\x63\x0c\ +\x95\xb3\x2a\xc2\x97\x09\xa7\x13\xda\x2c\xc2\x75\x04\x37\xe7\x5c\ +\xb2\x5e\x41\x23\x84\x83\x84\x6e\xc2\xfb\x84\x7e\x6b\xa6\x8d\x72\ +\x7f\xd6\xfb\x03\x10\xa0\xf0\xf3\x1c\xff\x0a\xc0\xf9\x17\x56\x81\ +\xdf\x13\xfb\x1f\x84\xaf\xe2\x02\x22\xe6\xe9\x93\x00\x00\x00\x00\ +\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x0d\x06\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\ +\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\ +\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x06\xec\x00\x00\x06\xec\ +\x01\x1e\x75\x38\x35\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\ +\x74\x77\x61\x72\x65\x00\x77\x77\x77\x2e\x69\x6e\x6b\x73\x63\x61\ +\x70\x65\x2e\x6f\x72\x67\x9b\xee\x3c\x1a\x00\x00\x0c\x83\x49\x44\ +\x41\x54\x78\xda\xed\x9b\x5b\x68\x55\xd9\x19\xc7\xd7\x49\x4e\xa2\ +\x26\x26\x1a\xe3\x35\x31\x5e\xc6\x54\xad\x97\x4a\x95\x29\x38\x14\ +\xc4\x22\xb6\xcc\x73\x9f\x2a\xf4\x61\x5e\x7c\x10\xc4\xc2\x0c\x08\ +\x7d\x28\xf8\x54\x4a\x1f\x15\xa4\x4f\xf6\x51\x0a\x52\x90\x4e\x07\ +\x41\x94\xfa\xe0\xfd\xd6\xaa\x03\x5e\xc6\xfb\x35\x51\x63\x2e\x46\ +\xcd\xc5\x7e\xbf\x0d\xbf\x61\xcf\x31\x92\x8c\x1c\x83\xc1\x2c\x58\ +\xec\xbd\xd7\x59\x7b\xad\xef\xfb\x7f\xf7\xb5\x93\xc2\xeb\xd7\xaf\ +\xd3\xc7\xdc\x2a\xa2\x8f\x03\x30\x0e\xc0\x38\x00\xe3\x00\x8c\x03\ +\x30\x0e\xc0\x47\xda\x8a\x1f\x1a\x41\xc7\x8e\x1d\xdb\x53\x5d\x5d\ +\xfd\xb3\x69\xd3\xa6\x7d\xe1\x98\xad\xad\xad\xed\x8f\x95\x95\x95\ +\xf3\x57\xaf\x5e\xfd\x8b\x72\xed\xf7\x41\x24\x42\xdb\xb6\x6d\x5b\ +\x50\x2c\x16\xff\x10\xb7\x9f\xcd\x9e\x3d\xbb\x65\xf2\xe4\xc9\x93\ +\x18\x87\x36\xaf\xb6\x81\x81\x81\xc1\x4b\x97\x2e\xdd\x1a\x1c\x1c\ +\xbc\xd4\xd1\xd1\xf1\xb7\xbd\x7b\xf7\x1e\x1a\xd3\x00\x6c\xd9\xb2\ +\xe5\xb3\xfa\xfa\xfa\xc3\x21\xf5\xaa\x21\x09\x2c\x14\xd2\xdb\xc6\ +\x03\x84\x74\xfd\xfa\xf5\x43\x15\x15\x15\xbf\xd9\xb3\x67\xcf\xab\ +\xb1\x64\x02\x32\xff\xcb\x9a\x9a\x9a\x43\x21\x84\xe2\xcb\x97\x2f\ +\x87\x63\x78\xc8\xb1\x96\x96\x96\xf5\xd7\xae\x5d\xfb\x26\x1e\x7f\ +\x35\x96\x9c\xa0\x0c\xfc\xb3\xbf\xbf\x3f\x13\x42\x00\x91\xaa\xaa\ +\xaa\x52\x98\x02\x3d\xbb\xb7\x3b\x6e\x9f\x38\x71\x62\xc6\x3c\xa0\ +\xd1\x9b\x9a\x9a\xd6\x6f\xd8\xb0\x61\xdd\x98\xd2\x80\xcd\x9b\x37\ +\xff\x39\x98\x69\xec\xeb\xeb\x4b\xcf\x9e\x3d\x4b\x0f\x1e\x3c\x40\ +\xa5\x47\x0a\x5c\x0a\x27\x99\x1a\x1b\x1b\x93\xad\xae\xae\xee\xaf\ +\x71\xf9\x74\xac\x00\x00\xb3\x5f\x04\xf3\x48\x10\xef\x9e\x16\x2d\ +\x5a\x94\xc2\xf9\xa5\xe7\xcf\x9f\x23\x65\xe7\xa4\xce\xce\xce\xd4\ +\xd0\xd0\x90\x31\xfc\xf4\xe9\xd3\x34\x69\xd2\xa4\x74\xfa\xf4\xe9\ +\xf4\xe4\xc9\x93\x44\x0b\xff\x91\x68\x53\xa6\x4c\xf9\xf9\xc6\x8d\ +\x1b\x8b\x07\x0e\x1c\xe8\xff\xe0\x01\xd8\xb4\x69\x53\x75\xb4\xe9\ +\x71\x0b\xc3\x78\xf6\xb4\x6a\xd5\xaa\x34\x61\xc2\x84\x74\xe3\xc6\ +\x8d\x34\x6b\xd6\xac\x74\xea\xd4\xa9\xd4\xda\xda\x9a\xe6\xcf\x9f\ +\x8f\x9d\xc3\x60\xba\x7a\xf5\x6a\x5a\xb8\x70\x61\x3a\x7b\xf6\x6c\ +\xf6\x4e\x77\x77\xb7\xe6\x00\x68\x95\x2f\x5e\xbc\xd8\x14\x4b\xfe\ +\xfd\x83\x88\x02\xdb\xb7\x6f\x6f\x7c\xf4\xe8\xd1\xba\x20\xbc\x3f\ +\x88\x9d\x17\xd2\x5b\x31\x73\xe6\xcc\xdf\xde\xb9\x73\xa7\x2b\x88\ +\x9e\x1c\x63\xd3\x83\xe0\x84\x16\x00\x42\xc4\xf7\x77\xd1\xa2\x4c\ +\x33\x02\xcc\x0c\x84\x5b\xb7\x6e\xed\x0b\x8d\xd9\x4f\x38\x8d\x7e\ +\x34\xd6\xfc\xf7\x89\x13\x27\x1e\xbc\x17\x00\x7e\x1d\x6d\xc5\x8a\ +\x15\x95\xc1\x54\x6d\x30\xd3\x7a\xe6\xcc\x99\xdf\xaf\x59\xb3\xa6\ +\x39\x18\x7d\x10\xd2\x68\xba\x70\xe1\x42\xed\xb2\x65\xcb\xd2\xdd\ +\xbb\x77\xd3\xd4\xa9\x53\x53\x57\x57\x57\x7a\xfc\xf8\x71\x46\x6c\ +\x84\xad\xc4\xbe\xd8\x3e\x12\x0c\xa0\x90\xa8\x9e\x7e\xc4\x0d\x4d\ +\x61\x1d\x1c\x28\x66\xc3\xfd\xe5\xcb\x97\xf1\x07\x98\x13\xfb\xbc\ +\x0e\xad\xba\x1c\x4e\xf4\x1f\x3d\x3d\x3d\xff\xda\xbf\x7f\xff\x89\ +\x98\x33\x38\x62\x00\x76\xec\xd8\xb1\xf4\xe6\xcd\x9b\x5f\xc5\x6d\ +\xcb\xe2\xc5\x8b\x6f\xd6\xd6\xd6\xd6\x04\xa1\x8b\x7a\x7b\x7b\x5b\ +\xcf\x9f\x3f\xdf\xc8\x26\xa8\x24\x92\x84\x51\x18\xc0\x63\xf3\x8c\ +\x6d\xbf\x7a\xf5\xca\xae\x27\x77\x69\xa4\xce\x38\x44\xd2\x99\xcf\ +\x18\x4c\x0c\x1b\x0e\x01\x2d\x68\x51\x0b\x78\x3f\x63\xd8\xe7\x90\ +\x7a\x8a\xe8\x82\xf9\x00\x3e\x7e\x22\xdb\x3b\xe8\xee\x6c\x6f\x6f\ +\xff\x26\xf6\xfd\x32\xe6\xdc\x1e\x12\x80\xdd\xbb\x77\xa3\x8b\xbf\ +\x7b\xf8\xf0\xe1\x5f\x8e\x1f\x3f\x3e\x3b\xd4\x88\x97\x0d\x37\x10\ +\x08\xe1\x79\x06\x91\x1e\x1b\xdb\xdf\x78\x46\x42\x74\x1b\x6b\xe0\ +\xd0\x64\x9e\x3d\x60\x8c\x7b\xae\xf9\x6e\xf3\x3d\xaf\xac\xeb\x95\ +\x0e\x00\x79\xe7\x19\x1a\x09\x08\x00\xc5\xfa\x38\x4f\xfc\x48\xe6\ +\x67\x42\x1b\xae\x1f\x3d\x7a\xf4\x93\x37\x00\xd8\xb5\x6b\x57\x4d\ +\xd8\xd0\xd7\xa1\xaa\xeb\x62\x92\x4c\xb2\x10\x1d\xc6\xd8\x14\xbb\ +\x85\x38\x09\x18\x16\x00\x36\x86\x39\x1b\xce\x0b\x2d\x81\x30\xc6\ +\xed\x23\x01\x80\x2e\x93\x79\x10\x58\xcb\x88\xe0\xef\x87\x0f\x1f\ +\x66\x1f\x98\x56\x08\xdc\xd3\xfb\xc3\x24\xeb\x6f\xdf\xbe\xdd\x5b\ +\xf4\x85\x9d\x3b\x77\xb6\x44\x38\xfa\x36\x54\xb9\x96\xd0\x93\x27\ +\x02\x64\x91\x18\xe3\x61\xf3\x69\xee\xdc\xb9\x29\x5e\x06\x08\x36\ +\x96\x30\x89\xcb\xe6\x00\x60\xe4\xea\x3f\x20\xd6\xe6\xfa\x00\x25\ +\x08\x6a\x80\xfb\x39\xce\x9a\x39\x40\x87\xd4\x00\x3b\xcc\xf1\x1e\ +\xfe\x06\x8d\x20\x7a\x60\x56\x08\x12\x20\x42\xab\x11\x24\xeb\x17\ +\xc3\x17\xfd\x09\x5f\x9d\x01\xb0\x6f\xdf\xbe\xc6\x90\xca\xb5\x28\ +\x32\xaa\x64\x3a\xcf\x3c\x49\xca\xca\x95\x2b\x13\xed\xc8\x91\x23\ +\x20\x9d\x81\x10\x7e\x00\xe9\xe6\x01\xc8\x88\x8e\x82\x86\x8d\x01\ +\x8d\x35\xb2\x4d\x6d\x6a\x14\x8d\xb9\x30\xc7\x1e\xd3\xa7\x4f\xc7\ +\x79\xf1\x9b\x1a\x02\xe1\x43\x81\x24\x20\xa5\x20\xc8\x38\xe0\x2b\ +\x79\xd6\xc0\x0c\xe8\xd6\x0f\xfc\x86\xe3\xfd\x2a\x9e\xf7\x64\x00\ +\xdc\xbb\x77\xef\x3f\x11\x77\xab\x54\x53\x99\xd7\xfe\xc9\xb8\x02\ +\x31\x9c\x48\x46\xa4\xf3\x24\x16\xfb\x82\x10\xcd\x23\x22\x00\x8c\ +\xf2\x2c\x00\xae\x9b\xad\x41\x13\x00\x12\x20\xd6\x46\xa3\xc8\x01\ +\xf2\x4e\x50\xa6\x35\x3d\x9b\x29\x71\xe9\x6f\xac\x8d\x83\xc4\xe1\ +\x42\x07\xeb\xd2\xb6\x6e\xdd\x9a\xdd\x9f\x3b\x77\x0e\x67\x4d\xa4\ +\x40\x0b\x2b\x02\x88\x4f\x8b\x21\xfd\xda\x50\x8d\x9f\xe6\xbd\xac\ +\xc4\xa9\x8a\x84\x29\x50\x43\xa2\x80\x81\x84\x4f\x9e\x3c\xc9\x34\ +\xc6\xd9\x54\x00\x40\x18\x86\x95\x8e\x25\xec\x0f\x34\x80\x36\x6f\ +\xde\x3c\x9c\x2a\x5a\x04\x31\xec\x07\xb8\x86\x34\x9e\x5d\x03\x1a\ +\x74\xb6\xec\x87\x76\x71\xcd\xfb\x09\xe6\xb0\xaf\xeb\x93\x1f\x08\ +\x36\x91\x20\xfb\x7d\xce\x9c\x39\x19\x38\x57\xae\x5c\x31\x5a\x4d\ +\x2b\xc6\x4b\xad\x11\x8f\x0b\xbc\xa8\x63\x73\x41\x91\x9e\x31\x63\ +\x46\xb6\xb0\xa9\xea\xc1\x83\x07\x9d\x87\x8a\xb1\xd1\x1b\x6a\xc9\ +\x06\xda\xbf\x44\x0a\xc4\xf2\xe5\xcb\x49\x65\x31\x27\x18\x05\x54\ +\xcc\x0a\xa2\x19\xd7\x9e\x95\x24\xb4\x20\x41\x34\x0d\x3a\x98\x03\ +\xb3\xa8\x3c\x57\x23\x13\x82\x50\x20\x8c\xab\x45\xf8\x37\xae\xbc\ +\x57\xea\x5c\x0b\xc5\xd8\xa0\x10\x8d\x7c\x9b\x8d\xf3\x5e\x7f\x48\ +\xc6\x68\x10\xc6\x6f\x3c\x03\x00\x0b\x43\x30\x44\xd2\x35\x0d\x43\ +\x9f\xef\x31\x8e\x2f\x21\xa5\x25\x09\x82\x69\xf6\x05\x60\xd6\x40\ +\xc3\xb8\xc2\xb4\x0e\xcf\x7d\xd5\x4a\xf6\x31\x17\xc0\xff\xb0\x26\ +\x6b\x01\x12\x7b\xd2\xa0\x01\x3e\xbc\xd7\x17\xd9\xf3\x0d\x0d\xe0\ +\x65\x88\xd0\x86\xe9\x82\x90\x0f\x7f\x02\x61\x1e\xfe\x86\x5d\x6a\ +\x7f\x02\xa0\x59\xd8\xc8\xed\x2f\x5e\xbc\x08\x68\x48\x1d\x89\x03\ +\x00\x3e\x08\x69\xb2\x2f\x84\xeb\x00\xe9\x32\x8b\xf4\x55\x5b\xe6\ +\x40\x07\x6b\xe0\xf0\x58\x83\x88\xc3\x3c\x0b\x26\x53\xeb\x61\x53\ +\xec\xa2\x2a\xf4\xae\x4d\x2f\x9d\x6b\x10\x85\xa4\x4a\xd3\x56\x9c\ +\x1c\x0c\x10\x26\x91\x0c\x73\xd0\x06\x00\x83\x01\x1c\x14\x6b\xe1\ +\xb1\xd1\x1e\xf3\x07\x01\x61\x5d\x68\x45\x73\xb8\x47\x0b\x99\x03\ +\xe3\x80\x00\xf3\xbc\x8b\x43\x25\x04\x1a\xc5\xb8\xda\x87\x01\xa0\ +\x4c\x0d\xc2\x60\xc0\x06\x51\x48\x18\x55\x85\x50\x7d\x47\x14\x46\ +\x5c\x61\x1c\x8d\xc1\x31\xf2\x1e\x0c\xb3\x06\x0c\x41\x1b\x0c\xd2\ +\x01\x4d\xed\x83\x31\xd6\xa5\x94\xc6\x79\x5a\x1a\xb3\x47\x36\x7e\ +\xff\xfe\x7d\x9c\xec\xb0\xf5\x05\x3e\x20\x95\xbb\x69\x32\x46\x15\ +\x98\x8a\x63\x2b\x33\x31\x4d\x0b\x46\xa8\xe0\x32\x82\x97\x2c\x59\ +\x42\xb1\xc4\x19\x5f\x69\x46\x88\xb4\x61\x1e\xa6\x59\x03\x86\x01\ +\x8e\xe8\x01\xd3\x5c\x71\xd0\xac\xc9\x95\x75\x19\xc3\x54\x4c\xb3\ +\x05\xe2\xfd\x6b\x80\x9b\xda\xb0\x47\xc2\x28\x04\x40\xac\x21\x92\ +\x2b\xb6\x8f\x39\x00\x00\xe6\x01\xe1\xe6\x0d\xe6\x21\x26\x2f\xfa\ +\x03\x7d\x92\x76\x0e\x38\x80\x82\xc6\xa8\x25\x8c\x13\xfa\x58\x1f\ +\xad\x1a\xd6\x07\x94\xb3\x11\x26\x21\x02\x50\xb5\x41\xd4\xbf\x94\ +\x79\x54\x17\x82\x91\x26\x7e\x40\x4d\xe4\x1d\x23\x8a\x79\x88\xe9\ +\x30\x73\x60\xd4\xb9\xcc\x43\x5b\xe4\x81\x39\x00\x05\x20\x79\xc7\ +\x6d\x1b\x15\x0d\x30\x03\x63\x63\x25\x44\x83\x59\x01\x80\x09\xa4\ +\x4d\xb9\x8a\xad\x32\x66\x4a\x8c\x64\x35\x15\xcf\x0e\x64\xce\x08\ +\x01\xc8\x98\x0b\x8e\xd5\x04\x88\xf7\xd4\x06\x43\x26\x9a\x85\x1f\ +\x61\x9d\xd1\xd2\x00\xe3\x36\x1d\x86\x70\x4a\x84\xaf\x7c\xa6\x08\ +\xf1\x84\x5d\x3d\x39\x0c\xe8\xd4\xb0\x61\xa3\x00\xa0\x31\x6e\x78\ +\x86\x79\xde\xb1\xe0\xa1\x13\x05\x04\x3e\x9f\x00\xc1\xb4\x7b\x51\ +\x67\x70\xff\x56\x27\x58\x56\x0d\x90\x51\x9a\xea\x8e\x9a\xe7\x55\ +\xd2\x3a\x9d\x28\xc0\xb8\x67\x06\x8c\x31\x17\xa6\xb8\x1a\xfb\xcd\ +\xf4\x90\x3c\xcf\xfa\x05\x8b\x1f\x9a\xd9\xa2\x69\x35\x60\xd0\x0c\ +\x9b\x68\x1c\xfb\x8e\xaa\x06\x68\xab\x4a\xd1\x31\x98\x70\x1e\xfb\ +\x43\x38\x04\xeb\xe1\x71\x60\xf3\x66\x2c\x49\x4d\xd3\x3e\x49\x03\ +\x13\x42\xdd\xbb\x6f\xa3\x29\x30\x6c\x8d\x60\xde\x6f\xea\xab\x84\ +\x87\xca\x1e\xc9\x31\x00\xd5\x7c\xe2\xfd\xfa\x80\x3c\x21\x82\x9b\ +\xaf\xda\x54\x55\x88\xb7\xb4\x05\x00\x41\x50\x0b\xe6\xcf\x5c\x9a\ +\xfa\x6b\x1f\xa7\xe6\xa6\x96\x54\xdd\x96\x85\x4c\xed\x1d\x46\x74\ +\xb6\xac\xc7\x3b\xae\x6f\x04\x92\x27\xfd\x0a\xa6\x88\x29\x00\x40\ +\x59\x35\x60\xd8\x23\x2b\x01\xb0\xa9\x01\xee\x2b\xd1\x8c\xe5\x35\ +\xa1\x50\xf7\x32\x2d\x58\xb4\x34\x15\xeb\xfa\x52\xb1\xba\x39\x75\ +\x90\x2a\xc7\x3b\x66\x99\x9e\x31\xa2\x19\xac\xaf\x29\x5b\xd0\xe5\ +\xa3\x10\xe1\xd0\xcc\xb3\xb4\x55\x94\xd3\x07\xc8\xa8\x04\x20\x95\ +\x52\x60\xf2\x67\x0e\xf9\x7b\x9f\x3d\x23\x7c\xde\xdf\x1e\xcc\x3e\ +\x4a\xb5\x55\xf5\xa9\x3e\xca\xd8\x89\x75\x93\x53\xfd\xec\xc8\x19\ +\x1a\xa6\x38\xcf\xf7\x5c\xc3\xee\xfe\x76\x35\x0d\xb0\xde\x04\xa0\ +\xdc\x3e\x20\x4f\x40\xbe\xa2\xf3\xde\x4c\xd0\xef\x7f\x30\xeb\x5c\ +\xfb\xf7\x31\xbf\xa7\x37\x75\x84\xea\x77\xb5\xb7\xa5\xee\xb6\xf6\ +\xd4\x1b\x6a\x3c\x21\xbe\x9c\x0f\xe6\x34\x8c\xf5\x2c\x99\x05\x54\ +\xe9\x6b\x86\x66\x93\xac\x5b\xda\x8a\x12\x53\x6e\x00\x8c\xdd\x3a\ +\x2d\x9a\xa1\xd1\x33\x02\x55\x9f\x79\x3a\x35\xed\x1b\x6f\x5e\xc5\ +\x07\x8f\xfa\xba\xd4\xf7\xbc\x27\x3d\x8d\x32\xb9\xb3\xa7\x3b\xf5\ +\x15\x99\xfb\x7d\xc5\x0a\x00\xbc\x83\xa7\x57\xd2\xa5\x25\x38\x7b\ +\x50\x83\x70\x1d\x1d\x00\x24\x40\x00\x2c\xb9\x75\x4a\x82\xc2\xbd\ +\x85\x92\xcc\x6b\xe3\xcc\xc9\xca\xe3\xca\x42\x7a\x45\x32\x55\x5d\ +\x91\xba\xba\x3b\x23\xb7\x4e\xa9\xab\xb3\xcb\x13\x6b\x22\x06\x60\ +\x19\xf7\x65\xdc\xc6\x98\xc5\xd2\x90\xad\xa8\x57\x2e\x57\xf3\x24\ +\x57\x42\xcc\xe3\x21\x42\x7f\x03\xb1\x66\x7e\x48\x0e\xdb\xa4\x9b\ +\xfe\xe6\x6d\x96\x10\x56\x37\xb3\x21\x4d\xa8\x9c\x98\xba\x7a\xbb\ +\xd2\xa3\x2b\x0f\x01\x0c\x2d\x61\x4d\xee\xcd\x1a\x3d\x87\x54\xab\ +\xbc\x1f\xdd\x54\x18\x06\xf2\x84\xc0\x84\xa0\xd0\x4c\x7a\x90\x9a\ +\x80\x51\x10\x91\x12\x23\xfd\x7c\xf1\x83\x60\x3c\x95\xce\x67\x82\ +\xda\x33\x8c\x73\x82\xb4\x60\xc1\x02\xcf\x27\x05\xd8\xc4\x89\x44\ +\x69\x74\x8b\x21\x9d\x9a\xcd\xb3\x3a\x80\x80\x60\x6d\x14\xd5\x67\ +\x0c\x66\x01\x8a\xda\x3d\x3e\x5b\x65\xc0\x18\xeb\xad\x05\xb4\x65\ +\x41\xf0\x9c\x32\x3e\xdb\x71\x40\x2b\xd0\xcc\xc9\x3b\x42\xb5\x84\ +\x3d\x47\x4f\x03\x4c\x47\x05\x82\x67\x08\xf1\x68\x8b\x31\x99\xf6\ +\xd0\xd3\x12\x1a\x10\x50\x79\x6b\x04\xab\x41\xdf\xf1\xec\x12\x9a\ +\xa9\x20\x39\x12\xf3\x5c\xd0\x33\x4a\x80\xf5\xd3\x1d\xe6\x05\xf3\ +\xa3\x75\x20\x62\xfd\xaf\xf3\xd3\x0c\x60\xca\x6a\x4d\x02\x21\x1a\ +\x40\xf2\x1f\x47\x19\x83\x21\x8b\x17\xa4\xed\x3c\xc3\x27\x5f\x77\ +\x00\x94\x4a\x12\x06\xd9\x03\xe6\x35\x09\xfd\x0f\x42\xe0\x58\x8c\ +\xdf\x46\xd7\x07\x58\xcf\xeb\x84\x54\x77\x2b\x40\x98\x32\x13\xb4\ +\x74\x36\x1c\xf2\x9b\x45\x8b\x15\x9d\x1f\x52\x61\x44\x8f\x1e\x5f\ +\xaa\xd1\x0e\x4f\x95\x00\x8f\xf7\x33\xa0\x3c\x29\x6a\x6e\x6e\x36\ +\xed\x1d\x55\x1f\x20\xc3\x1e\x45\xeb\x18\x01\x85\x7c\xdc\x83\x4e\ +\xf3\x7a\x01\x31\xf4\xe1\x20\x61\x54\xd3\x00\x00\xde\xa1\xf6\x67\ +\x1d\xd7\xd4\x21\x5a\x4c\xb1\x27\x63\x74\xd6\xc0\xf9\x01\xfa\x88\ +\x00\xe0\x0b\x71\xb9\x01\xc0\xa1\x69\xbf\x66\x6c\x48\x0b\xf5\xd5\ +\x57\xc0\xb8\xde\xde\x52\xd7\x44\x4a\xa6\x4a\x73\x0b\x55\xde\x22\ +\x27\x9f\x0c\x79\x62\x84\xf4\x31\xbb\x11\x29\x6c\x31\x50\xae\x61\ +\xd1\x72\x54\x7f\x36\x88\xb3\x04\x2e\x05\x06\x10\x20\x54\xe7\x05\ +\x13\xac\x81\xdd\x23\x71\xa5\x6a\x6d\x60\x46\x49\xb7\xb6\x27\xf9\ +\xf1\x54\x29\xff\x75\x8a\x77\xf9\xd6\xc0\xbc\xb5\x6b\xd7\x72\xec\ +\xa6\x06\xe9\x24\xf9\x2e\x21\xdd\x00\xde\x87\x06\x34\xf0\xf0\x0e\ +\xcd\x8c\xee\x6d\x5a\x80\x2d\x2a\x39\xbb\xc7\xde\x10\xe7\x87\x0d\ +\x08\xf1\x4b\x8e\xa7\xba\x1e\x8c\x70\xc6\x0f\x53\x00\xc5\xf1\x39\ +\x6b\xc8\x98\xef\x20\x6d\x00\x63\x3d\x2b\x4e\x2a\x40\xd6\xf6\x3d\ +\x40\xf5\xbc\x01\xba\xa0\x01\x20\x6f\x15\xf9\xdb\x5b\xff\x14\xed\ +\xc7\xb6\x7c\xf5\xa5\xbd\xea\xfd\xd9\xc0\xdf\x4a\x9b\x4e\x12\x8f\ +\x0e\x51\x48\x15\xa2\xf3\x69\x33\x34\xd1\x79\x9f\x64\xc7\x46\xe6\ +\x67\x68\x33\x29\xe2\x7d\x4b\x5d\x01\xf8\xee\xbb\xef\x86\x22\x59\ +\x00\xd1\xd0\xb3\x11\x49\xfe\x5b\x8c\x81\x9b\x64\x5a\x6c\xca\x22\ +\xf9\xd8\x9b\xaf\xeb\xed\x2c\x6e\x4d\x0f\x61\x7e\xa8\x90\x28\x8f\ +\xb8\xec\x6e\xea\xb5\xa4\x79\x86\xef\x91\xd8\x70\x69\xb9\x66\x82\ +\xcf\xf0\x0b\xb6\xe7\x83\x23\x31\x57\xfd\xc7\x85\xf8\xfb\x86\x2f\ +\x63\xa8\xad\x18\x52\xea\x08\x6f\x79\x28\x08\x5f\xef\x5f\x58\x04\ +\x83\x32\xe2\x55\xe2\x65\x12\x2f\x3f\x10\x44\x7c\x1b\x8f\xcf\xf2\ +\x69\xae\xcd\xf8\x3e\x82\x26\x38\x95\x01\xe8\xd4\x58\x63\x7a\xd0\ +\x50\x13\x9d\xbf\x57\x80\x3e\xf6\x1b\x88\xf1\xbe\xb8\xbc\x88\xa9\ +\x8f\xc3\x41\x3e\x09\xa0\x7e\x6c\x02\x83\xd0\x3a\xc2\x9c\x2e\x45\ +\x38\xfe\x3a\xd6\xbb\xc0\x29\x7e\x21\xfe\xf6\x7e\x52\x2c\xbc\x3a\ +\x54\xf6\xf3\x40\x77\x59\xfc\xf0\x13\xfe\xcc\x8d\xf9\x79\xc9\x4b\ +\x67\x34\xa0\xbe\x1d\xb6\x74\x24\x88\xf8\x5f\xbc\xdb\x99\xde\x4f\ +\x73\xc3\x42\xb4\xd7\x65\xc8\x4f\x90\x0e\xb4\x12\x1b\xef\x45\x7f\ +\x12\x7f\x71\xfa\x3a\x0b\x81\xf1\xf7\x7d\xd3\x02\xed\x96\x60\x66\ +\x6e\x3c\x83\x7e\x7d\x00\x41\xfd\xca\xef\x48\xb2\x10\x9d\x7b\xfa\ +\x60\xdc\xb3\x50\x7b\xcc\xb9\x16\xd7\xa7\x69\x6c\x34\x40\xec\x23\ +\x68\x04\xe3\x7d\x0e\x9a\x03\x00\x42\x15\x99\x6c\xf4\x9a\xe8\x18\ +\xa2\xfa\xeb\xb5\x40\x67\x21\x54\x07\x7f\x44\x07\xc5\x34\x86\xdb\ +\xf8\xbf\xce\xa6\x34\xfe\x5f\x63\xe3\x00\x8c\x03\xf0\x11\xb7\xff\ +\x03\x7f\x19\x0a\xe4\xd7\x62\x63\xda\x00\x00\x00\x00\x49\x45\x4e\ +\x44\xae\x42\x60\x82\ +" + +qt_resource_name = b"\ +\x00\x1a\ +\x08\xdd\xe1\xa7\ +\x00\x61\ +\x00\x63\x00\x63\x00\x65\x00\x73\x00\x73\x00\x6f\x00\x72\x00\x69\x00\x65\x00\x73\x00\x2d\x00\x64\x00\x69\x00\x63\x00\x74\x00\x69\ +\x00\x6f\x00\x6e\x00\x61\x00\x72\x00\x79\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0a\ +\x08\x99\x64\x87\ +\x00\x6b\ +\x00\x63\x00\x68\x00\x61\x00\x72\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x10\ +\x0f\xad\xca\x47\ +\x00\x68\ +\x00\x65\x00\x6c\x00\x70\x00\x2d\x00\x62\x00\x72\x00\x6f\x00\x77\x00\x73\x00\x65\x00\x72\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x07\ +\x0e\x95\x57\x87\ +\x00\x6b\ +\x00\x33\x00\x62\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0d\ +\x0b\x34\x2d\xe7\ +\x00\x61\ +\x00\x6b\x00\x72\x00\x65\x00\x67\x00\x61\x00\x74\x00\x6f\x00\x72\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0b\ +\x01\xad\xab\x47\ +\x00\x64\ +\x00\x69\x00\x67\x00\x69\x00\x6b\x00\x61\x00\x6d\x00\x2e\x00\x70\x00\x6e\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\x01\ +\x00\x00\x00\xae\x00\x00\x00\x00\x00\x01\x00\x00\x76\xac\ +\x00\x00\x00\x3a\x00\x00\x00\x00\x00\x01\x00\x00\x15\x18\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x00\x8e\x00\x00\x00\x00\x00\x01\x00\x00\x63\x9f\ +\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x01\x00\x00\x43\x7f\ +\x00\x00\x00\x54\x00\x00\x00\x00\x00\x01\x00\x00\x28\x33\ +" + +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() diff --git a/examples/animation/stickman/animations/chilling b/examples/animation/stickman/animations/chilling new file mode 100644 index 0000000000000000000000000000000000000000..a81fc7a18c7b3646a43bad5cbde8aada0a33916f GIT binary patch literal 6508 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 literal 0 HcmV?d00001 diff --git a/examples/animation/stickman/animations/dead b/examples/animation/stickman/animations/dead new file mode 100644 index 0000000000000000000000000000000000000000..9859b4b4cd8ab93854588c06a25b5985f70fd0a5 GIT binary patch literal 268 zcmV+n0rUR<|Ns9000031000oca&^$WN`5;)Zm2qT%t}wdZp0Oh+lqleZIP8quaI%T zX-xi5YaYRmfP=%ksbaG}|9viMeaToFA_J4lBWG+`*<8N$0 za1>KsTWWg1U@gftCa=&ya`A+=@Yt@vQy?KNWLvX9azLP$zg3UGQ4P-z8%R7rYtaR$ zD&Jy2M0b1a1q2g7Zvp%pWocyM9`=}Oo-=ByX&|>YbT5 zxh=2(&WTip83Gn{fb2sAS7cQ&IyxST8z?U!x@dHc?mws|>rHOXckVg4_vU9do6RH= z$(Gm@V$UyBpk=c7B#TD>U%|>_&_e#^9IQNA?pbJ&NGOB(@onEK2df;zwF`YAE~u4% z`@VWUCSlluLawF%=0BDkta74F!A(a$ol%CrM3w3B@ez$PGX9`tx&;bQ-d=m7y8JN; zyeo&^y=X+C=$UlIx4ppI`Kn@>#ugKIaTmw@Qiraxj;20p1~95#&`ppIJn^=vdd(AX z@o5kCO=Y6!7-xAQb2HL34@bq4V<=&dHtZ5_1TJS?qyN}Bh+4hZwaGk!DYja*f%hjw z))WV)pRL98cb4h)nA^~ENo#ZSHVs75Ru8l4Qy?aw$3y$76hf3&R>`yl$Ql=yCD}Pc ziaWhfzbFPbH8*!9-}Qs+UopgS<{m^C*<}BKAy7=Ywd5#Bz>((8oGkHztd!uGX*5|F zTs}Mb0~uAnFLjM)xFTbuWVYr0UV_1GoigGe!Juf#iJqTPDE_L>Pm&8fi7;b(r3n)i zz4E-d1awuOagg0~1jeabj<*!kz)R@lJ?ZNO7tcHFduktoflW?k6$5Dp2ljQkXA%rP zzy3i_9&p24N-1&v1Ori1YRv|ML0Bz`>`X8y{YUkQC#I8)j&e7Qy^<1{ma+73j~9yh6A;)2?le0tK=SRaGuLd=fHT-u<5WvhqJ&R%6dLa-i_>z zjcb&D?*P@MiI1g?+cA{4#d#(x4st5vwF2dPz%3~kG5KpDrN4RK^Fv1=RM(jhy{;T` z)=cD6B%S{;0LE1(c~S9J+`Vb)zF{XFmM0(TS!w7(#cHO$LMTVRoKoGLr^lqAh`yHx z1Q0FKg%md$P+ZjNPaaIe@c0XrpP9Wl&$17fPLEfBFSWgaFWd)ivZDh#c!+UmJl#3E z8B@F~VfvICCY;V4rt=M$HsoSFDZT)rL8e-tsm9PN^x3UBzd>@4!-JnzT?dx5;L%v* zVvIVIclrFKC%~So+u&H156oCB)5?8j}hw#lhbXe05yXsQ+FEs@~*tv2$6L&jgyVy97(e3{Qj>P!L literal 0 HcmV?d00001 diff --git a/examples/animation/stickman/stickman.py b/examples/animation/stickman/stickman.py new file mode 100755 index 0000000..71f85ee --- /dev/null +++ b/examples/animation/stickman/stickman.py @@ -0,0 +1,657 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import math + +from PyQt5.QtCore import (pyqtProperty, pyqtSignal, QDataStream, QDateTime, + QEvent, QEventTransition, QFile, QIODevice, QParallelAnimationGroup, + QPointF, QPropertyAnimation, qrand, QRectF, QSignalTransition, qsrand, + QState, QStateMachine, Qt, QTimer) +from PyQt5.QtGui import QColor, QPen, QPainter, QPainterPath, QPixmap +from PyQt5.QtWidgets import (QApplication, QGraphicsItem, QGraphicsObject, + QGraphicsScene, QGraphicsTextItem, QGraphicsView) + +import stickman_rc + + +class Node(QGraphicsObject): + positionChanged = pyqtSignal() + + def __init__(self, pos, parent=None): + super(Node, self).__init__(parent) + + self.m_dragging = False + + self.setPos(pos) + self.setFlag(QGraphicsItem.ItemSendsGeometryChanges) + + def boundingRect(self): + return QRectF(-6.0, -6.0, 12.0, 12.0) + + def paint(self, painter, option, widget): + painter.setPen(Qt.white) + painter.drawEllipse(QPointF(0.0, 0.0), 5.0, 5.0) + + def itemChange(self, change, value): + if change == QGraphicsItem.ItemPositionChange: + self.positionChanged.emit() + + return super(Node, self).itemChange(change, value) + + def mousePressEvent(self, event): + self.m_dragging = True + + def mouseMoveEvent(self, event): + if self.m_dragging: + self.setPos(self.mapToParent(event.pos())) + + def mouseReleaseEvent(self, event): + self.m_dragging = False + + +Coords = ( + # Head: 0 + (0.0, -150.0), + + # Body pentagon, top->bottom, left->right: 1 - 5 + (0.0, -100.0), + (-50.0, -50.0), + (50.0, -50.0), + (-25.0, 50.0), + (25.0, 50.0), + + # Right arm: 6 - 7 + (-100.0, 0.0), + (-125.0, 50.0), + + # Left arm: 8 - 9 + (100.0, 0.0), + (125.0, 50.0), + + # Lower body: 10 - 11 + (-35.0, 75.0), + (35.0, 75.0), + + # Right leg: 12 - 13 + (-25.0, 200.0), + (-30.0, 300.0), + + # Left leg: 14 - 15 + (25.0, 200.0), + (30.0, 300.0)) + + +Bones = ( + # Neck. + (0, 1), + + # Body. + (1, 2), + (1, 3), + (1, 4), + (1, 5), + (2, 3), + (2, 4), + (2, 5), + (3, 4), + (3, 5), + (4, 5), + + # Right arm. + (2, 6), + (6, 7), + + # Left arm. + (3, 8), + (8, 9), + + # Lower body. + (4, 10), + (4, 11), + (5, 10), + (5, 11), + (10, 11), + + # Right leg. + (10, 12), + (12, 13), + + # Left leg. + (11, 14), + (14, 15)) + + +class StickMan(QGraphicsObject): + def __init__(self): + super(StickMan, self).__init__() + + self.m_sticks = True + self.m_isDead = False + self.m_pixmap = QPixmap('images/head.png') + self.m_penColor = QColor(Qt.white) + self.m_fillColor = QColor(Qt.black) + + # Set up start position of limbs. + self.m_nodes = [] + for x, y in Coords: + node = Node(QPointF(x, y), self) + node.positionChanged.connect(self.childPositionChanged) + self.m_nodes.append(node) + + self.m_perfectBoneLengths = [] + for n1, n2 in Bones: + node1 = self.m_nodes[n1] + node2 = self.m_nodes[n2] + + dist = node1.pos() - node2.pos() + self.m_perfectBoneLengths.append(math.hypot(dist.x(), dist.y())) + + self.startTimer(10) + + def childPositionChanged(self): + self.prepareGeometryChange() + + def setDrawSticks(self, on): + self.m_sticks = on + + for node in self.m_nodes: + node.setVisible(on) + + def drawSticks(self): + return self.m_sticks + + def boundingRect(self): + # Account for head radius of 50.0 plus pen which is 5.0. + return self.childrenBoundingRect().adjusted(-55.0, -55.0, 55.0, 55.0) + + def nodeCount(self): + return len(self.m_nodes) + + def node(self, idx): + if idx >= 0 and idx < len(self.m_nodes): + return self.m_nodes[idx] + + return None + + def timerEvent(self, e): + self.update() + + def stabilize(self): + threshold = 0.001 + + for i, (n1, n2) in enumerate(Bones): + node1 = self.m_nodes[n1] + node2 = self.m_nodes[n2] + + pos1 = node1.pos() + pos2 = node2.pos() + + dist = pos1 - pos2 + length = math.hypot(dist.x(), dist.y()) + diff = (length - self.m_perfectBoneLengths[i]) / length + + p = dist * (0.5 * diff) + if p.x() > threshold and p.y() > threshold: + pos1 -= p + pos2 += p + + node1.setPos(pos1) + node2.setPos(pos2) + + def posFor(self, idx): + return self.m_nodes[idx].pos() + + @pyqtProperty(QColor) + def penColor(self): + return QColor(self.m_penColor) + + @penColor.setter + def penColor(self, color): + self.m_penColor = QColor(color) + + @pyqtProperty(QColor) + def fillColor(self): + return QColor(self.m_fillColor) + + @fillColor.setter + def fillColor(self, color): + self.m_fillColor = QColor(color) + + @pyqtProperty(bool) + def isDead(self): + return self.m_isDead + + @isDead.setter + def isDead(self, isDead): + self.m_isDead = isDead + + def paint(self, painter, option, widget): + self.stabilize() + + if self.m_sticks: + painter.setPen(Qt.white) + + for n1, n2 in Bones: + node1 = self.m_nodes[n1] + node2 = self.m_nodes[n2] + + painter.drawLine(node1.pos(), node2.pos()) + else: + # First bone is neck and will be used for head. + + path = QPainterPath() + path.moveTo(self.posFor(0)) + path.lineTo(self.posFor(1)) + + # Right arm. + path.lineTo(self.posFor(2)) + path.lineTo(self.posFor(6)) + path.lineTo(self.posFor(7)) + + # Left arm. + path.moveTo(self.posFor(3)) + path.lineTo(self.posFor(8)) + path.lineTo(self.posFor(9)) + + # Body. + path.moveTo(self.posFor(2)) + path.lineTo(self.posFor(4)) + path.lineTo(self.posFor(10)) + path.lineTo(self.posFor(11)) + path.lineTo(self.posFor(5)) + path.lineTo(self.posFor(3)) + path.lineTo(self.posFor(1)) + + # Right leg. + path.moveTo(self.posFor(10)) + path.lineTo(self.posFor(12)) + path.lineTo(self.posFor(13)) + + # Left leg. + path.moveTo(self.posFor(11)) + path.lineTo(self.posFor(14)) + path.lineTo(self.posFor(15)) + + painter.setPen(QPen(self.m_penColor, 5.0, Qt.SolidLine, Qt.RoundCap)) + painter.drawPath(path) + + n1, n2 = Bones[0] + node1 = self.m_nodes[n1] + node2 = self.m_nodes[n2] + + dist = node2.pos() - node1.pos() + + sinAngle = dist.x() / math.hypot(dist.x(), dist.y()) + angle = math.degrees(math.asin(sinAngle)) + + headPos = node1.pos() + painter.translate(headPos) + painter.rotate(-angle) + + painter.setBrush(self.m_fillColor) + painter.drawEllipse(QPointF(0, 0), 50.0, 50.0) + + painter.setBrush(self.m_penColor) + painter.setPen(QPen(self.m_penColor, 2.5, Qt.SolidLine, Qt.RoundCap)) + + # Eyes. + if self.m_isDead: + painter.drawLine(-30.0, -30.0, -20.0, -20.0) + painter.drawLine(-20.0, -30.0, -30.0, -20.0) + + painter.drawLine(20.0, -30.0, 30.0, -20.0) + painter.drawLine(30.0, -30.0, 20.0, -20.0) + else: + painter.drawChord(QRectF(-30.0, -30.0, 25.0, 70.0), 30.0 * 16, 120.0 * 16) + painter.drawChord(QRectF(5.0, -30.0, 25.0, 70.0), 30.0 * 16, 120.0 * 16) + + # Mouth. + if self.m_isDead: + painter.drawLine(-28.0, 2.0, 29.0, 2.0) + else: + painter.setBrush(QColor(128, 0, 64 )) + painter.drawChord(QRectF(-28.0, 2.0 - 55.0 / 2.0, 57.0, 55.0), 0.0, -180.0 * 16) + + # Pupils. + if not self.m_isDead: + painter.setPen(QPen(self.m_fillColor, 1.0, Qt.SolidLine, Qt.RoundCap)) + painter.setBrush(self.m_fillColor) + painter.drawEllipse(QPointF(-12.0, -25.0), 5.0, 5.0) + painter.drawEllipse(QPointF(22.0, -25.0), 5.0, 5.0) + + +class GraphicsView(QGraphicsView): + keyPressed = pyqtSignal(int) + + def keyPressEvent(self, e): + if e.key() == Qt.Key_Escape: + self.close() + + self.keyPressed.emit(Qt.Key(e.key())) + + +class Frame(object): + def __init__(self): + self.m_nodePositions = [] + + def nodeCount(self): + return len(self.m_nodePositions) + + def setNodeCount(self, nodeCount): + while nodeCount > len(self.m_nodePositions): + self.m_nodePositions.append(QPointF()) + + while nodeCount < len(self.m_nodePositions): + self.m_nodePositions.pop() + + def nodePos(self, idx): + return QPointF(self.m_nodePositions[idx]) + + def setNodePos(self, idx, pos): + self.m_nodePositions[idx] = QPointF(pos) + + +class Animation(object): + def __init__(self): + self.m_currentFrame = 0 + self.m_frames = [Frame()] + self.m_name = '' + + def setTotalFrames(self, totalFrames): + while len(self.m_frames) < totalFrames: + self.m_frames.append(Frame()) + + while totalFrames < len(self.m_frames): + self.m_frames.pop() + + def totalFrames(self): + return len(self.m_frames) + + def setCurrentFrame(self, currentFrame): + self.m_currentFrame = max(min(currentFrame, self.totalFrames() - 1), 0) + + def currentFrame(self): + return self.m_currentFrame + + def setNodeCount(self, nodeCount): + frame = self.m_frames[self.m_currentFrame] + frame.setNodeCount(nodeCount) + + def nodeCount(self): + frame = self.m_frames[self.m_currentFrame] + return frame.nodeCount() + + def setNodePos(self, idx, pos): + frame = self.m_frames[self.m_currentFrame] + frame.setNodePos(idx, pos) + + def nodePos(self, idx): + frame = self.m_frames[self.m_currentFrame] + return frame.nodePos(idx) + + def name(self): + return self.m_name + + def setName(self, name): + self.m_name = name + + def save(self, device): + stream = QDataStream(device) + stream.writeQString(self.m_name) + stream.writeInt(len(self.m_frames)) + + for frame in self.m_frames: + stream.writeInt(frame.nodeCount()) + + for i in range(frame.nodeCount()): + stream << frame.nodePos(i) + + def load(self, device): + self.m_frames = [] + + stream = QDataStream(device) + self.m_name = stream.readQString() + frameCount = stream.readInt() + + for i in range(frameCount): + nodeCount = stream.readInt() + + frame = Frame() + frame.setNodeCount(nodeCount) + + for j in range(nodeCount): + pos = QPointF() + stream >> pos + + frame.setNodePos(j, pos) + + self.m_frames.append(frame) + + +class KeyPressTransition(QSignalTransition): + def __init__(self, receiver, key, target=None): + super(KeyPressTransition, self).__init__(receiver.keyPressed) + + self.m_key = key + + if target is not None: + self.setTargetState(target) + + def eventTest(self, e): + if super(KeyPressTransition, self).eventTest(e): + key = e.arguments()[0] + return key == self.m_key + + return False + + +class LightningStrikesTransition(QEventTransition): + def __init__(self, target): + super(LightningStrikesTransition, self).__init__() + + self.setEventSource(self) + self.setEventType(QEvent.Timer) + self.setTargetState(target) + qsrand(QDateTime.currentDateTime().toTime_t()) + self.startTimer(1000) + + def eventTest(self, e): + return (super(LightningStrikesTransition, self).eventTest(e) and + (qrand() % 50) == 0) + + +class LifeCycle(object): + def __init__(self, stickMan, keyReceiver): + self.m_stickMan = stickMan + self.m_keyReceiver = keyReceiver + + # Create animation group to be used for all transitions. + self.m_animationGroup = QParallelAnimationGroup() + stickManNodeCount = self.m_stickMan.nodeCount() + self._pas = [] + for i in range(stickManNodeCount): + pa = QPropertyAnimation(self.m_stickMan.node(i), b'pos') + self._pas.append(pa) + self.m_animationGroup.addAnimation(pa) + + # Set up intial state graph. + self.m_machine = QStateMachine() + self.m_machine.addDefaultAnimation(self.m_animationGroup) + + self.m_alive = QState(self.m_machine) + self.m_alive.setObjectName('alive') + + # Make it blink when lightning strikes before entering dead animation. + lightningBlink = QState(self.m_machine) + lightningBlink.assignProperty(self.m_stickMan.scene(), + 'backgroundBrush', Qt.white) + lightningBlink.assignProperty(self.m_stickMan, 'penColor', Qt.black) + lightningBlink.assignProperty(self.m_stickMan, 'fillColor', Qt.white) + lightningBlink.assignProperty(self.m_stickMan, 'isDead', True) + + timer = QTimer(lightningBlink) + timer.setSingleShot(True) + timer.setInterval(100) + lightningBlink.entered.connect(timer.start) + lightningBlink.exited.connect(timer.stop) + + self.m_dead = QState(self.m_machine) + self.m_dead.assignProperty(self.m_stickMan.scene(), 'backgroundBrush', + Qt.black) + self.m_dead.assignProperty(self.m_stickMan, 'penColor', Qt.white) + self.m_dead.assignProperty(self.m_stickMan, 'fillColor', Qt.black) + self.m_dead.setObjectName('dead') + + # Idle state (sets no properties). + self.m_idle = QState(self.m_alive) + self.m_idle.setObjectName('idle') + + self.m_alive.setInitialState(self.m_idle) + + # Lightning strikes at random. + self.m_alive.addTransition(LightningStrikesTransition(lightningBlink)) + lightningBlink.addTransition(timer.timeout, self.m_dead) + + self.m_machine.setInitialState(self.m_alive) + + def setDeathAnimation(self, fileName): + deathAnimation = self.makeState(self.m_dead, fileName) + self.m_dead.setInitialState(deathAnimation) + + def start(self): + self.m_machine.start() + + def addActivity(self, fileName, key): + state = self.makeState(self.m_alive, fileName) + self.m_alive.addTransition(KeyPressTransition(self.m_keyReceiver, key, state)) + + def makeState(self, parentState, animationFileName): + topLevel = QState(parentState) + + animation = Animation() + + file = QFile(animationFileName) + if file.open(QIODevice.ReadOnly): + animation.load(file) + + frameCount = animation.totalFrames() + previousState = None + for i in range(frameCount): + animation.setCurrentFrame(i) + + frameState = QState(topLevel) + nodeCount = animation.nodeCount() + for j in range(nodeCount): + frameState.assignProperty(self.m_stickMan.node(j), 'pos', + animation.nodePos(j)) + + frameState.setObjectName('frame %d' % i) + + if previousState is None: + topLevel.setInitialState(frameState) + else: + previousState.addTransition(previousState.propertiesAssigned, + frameState) + + previousState = frameState + + previousState.addTransition(previousState.propertiesAssigned, + topLevel.initialState()) + + return topLevel + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + stickMan = StickMan() + stickMan.setDrawSticks(False) + + textItem = QGraphicsTextItem() + textItem.setHtml("Stickman" + "

" + "Tell the stickman what to do!" + "

" + "

" + "

  • Press J to make the stickman jump.
  • " + "
  • Press D to make the stickman dance.
  • " + "
  • Press C to make him chill out.
  • " + "
  • When you are done, press Escape.
  • " + "

    " + "

    If he is unlucky, the stickman will get struck by lightning, and never jump, dance or chill out again." + "

    ") + + w = textItem.boundingRect().width() + stickManBoundingRect = stickMan.mapToScene(stickMan.boundingRect()).boundingRect() + textItem.setPos(-w / 2.0, stickManBoundingRect.bottom() + 25.0) + + scene = QGraphicsScene() + scene.addItem(stickMan) + scene.addItem(textItem) + scene.setBackgroundBrush(Qt.black) + + view = GraphicsView() + view.setRenderHints(QPainter.Antialiasing) + view.setTransformationAnchor(QGraphicsView.NoAnchor) + view.setScene(scene) + view.show() + view.setFocus() + + # Make enough room in the scene for stickman to jump and die. + sceneRect = scene.sceneRect() + view.resize(sceneRect.width() + 100, sceneRect.height() + 100) + view.setSceneRect(sceneRect) + + cycle = LifeCycle(stickMan, view) + cycle.setDeathAnimation(':/animations/dead') + + cycle.addActivity(':/animations/jumping', Qt.Key_J) + cycle.addActivity(':/animations/dancing', Qt.Key_D) + cycle.addActivity(':/animations/chilling', Qt.Key_C) + cycle.start() + + sys.exit(app.exec_()) diff --git a/examples/animation/stickman/stickman.qrc b/examples/animation/stickman/stickman.qrc new file mode 100644 index 0000000..e5d66cf --- /dev/null +++ b/examples/animation/stickman/stickman.qrc @@ -0,0 +1,8 @@ + + + animations/chilling + animations/dancing + animations/dead + animations/jumping + + \ No newline at end of file diff --git a/examples/animation/stickman/stickman_rc.py b/examples/animation/stickman/stickman_rc.py new file mode 100644 index 0000000..60c3456 --- /dev/null +++ b/examples/animation/stickman/stickman_rc.py @@ -0,0 +1,714 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Thu May 2 17:29:21 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x19\x6c\ +\xff\ +\xff\xff\xff\x00\x00\x00\x19\x00\x00\x00\x10\x40\x38\x4c\xca\x3f\ +\x4a\x24\xde\xc0\x62\x97\x1b\x32\x01\x5d\xf3\x40\x3a\x05\x25\x01\ +\xce\x14\x45\xc0\x58\xb0\x20\xdd\x20\x86\x54\xc0\x40\xc3\x31\xca\ +\x2d\xe7\xe8\xc0\x4e\x4e\xc6\x85\x2f\x62\xd8\x40\x50\x0a\x03\xb2\ +\x01\xc4\x5d\xc0\x43\x9a\x8e\xca\x3e\xac\x2f\xc0\x3e\x83\x6a\xb1\ +\x60\x3b\xb1\x40\x45\x35\x2f\x6e\x30\x18\x5c\x40\x32\x53\x99\xcb\ +\xc5\x8d\xfc\x40\x4a\x8f\xc7\x9e\xd3\xec\x98\xc0\x44\x7e\x7d\xc3\ +\xb1\x2d\x7e\xc0\x60\x5d\xcb\xb7\xd6\xde\xd5\x40\x22\xa2\xe4\x37\ +\x5a\x12\x12\xc0\x63\x69\xe1\x79\x61\x98\x47\x40\x50\x78\x0c\x5a\ +\xfa\x18\xc4\xc0\x5b\x79\x6e\x7b\xba\xd3\x77\x40\x3c\x78\x0c\xfd\ +\x1b\x24\x7a\xc0\x62\xee\x0e\xa0\x41\x5e\x50\xc0\x46\xd1\x51\x1c\ +\xc7\x57\xf6\x40\x50\x2c\x59\x00\x05\x07\x96\x40\x36\xbd\x5a\xba\ +\x55\x33\x3c\x40\x53\xeb\xd5\xdc\x95\x84\x02\xc0\x64\x7c\xe6\xa7\ +\x82\xd4\x73\x40\x5a\x98\x3a\x9d\x99\xd2\x25\xc0\x67\x9f\x24\xfc\ +\xa8\x8b\x88\x40\x69\x6a\x0c\xdc\x04\x07\xad\x40\x61\x88\x18\xa6\ +\x50\x33\xdf\x40\x5e\xdc\xf7\xac\x43\x1d\x93\x40\x60\xa1\xe2\xfa\ +\x78\x8e\x27\x40\x6b\xea\x33\x3e\x3c\x8e\x55\x00\x00\x00\x10\x40\ +\x38\x4c\xcb\x75\x7c\x04\xe4\xc0\x62\x97\x16\xcb\x46\x05\x9e\x40\ +\x3a\x04\xf9\x90\xa0\xa1\x90\xc0\x58\xb0\x1c\x43\xe6\x16\xc6\xc0\ +\x40\xc3\x37\x29\xb0\xad\x71\xc0\x4e\x4e\xa0\x29\xf8\xaf\x63\x40\ +\x50\x0a\x04\xf7\x7a\x75\xf9\xc0\x43\x9a\xa3\xc7\xff\x8e\xe7\xc0\ +\x3e\x83\x24\xc7\x88\x06\x31\x40\x45\x35\x0f\x82\x42\x98\x23\x40\ +\x32\x53\xbe\x35\xfa\x10\xf1\x40\x4a\x8f\xeb\x86\x7e\xa9\xe7\xc0\ +\x44\x7e\x73\x44\xb1\xe1\x51\xc0\x60\x5d\xc2\x5a\x55\xc7\x63\x40\ +\x22\xa2\xcb\x69\x59\x50\x4d\xc0\x63\x69\xe0\xb9\x0f\x32\xde\x40\ +\x50\x78\x10\xb9\x1c\xd7\xaa\xc0\x5b\x79\x7a\x66\xb3\x79\x6b\x40\ +\x3c\x77\xfd\x1b\x3d\x06\x10\xc0\x62\xee\x10\xd4\xaa\xf0\xf0\xc0\ +\x46\xd1\x4e\xde\x36\xe2\x04\x40\x50\x2c\x31\x73\xb4\xd5\x4d\x40\ +\x36\xbd\x01\xb5\xb5\x00\xbf\x40\x53\xeb\xec\x32\x09\x0f\xf3\xc0\ +\x64\x7c\xde\xd4\xf9\xea\x5a\x40\x5a\x98\x39\x7f\xc7\xf1\x43\xc0\ +\x67\x9f\x24\x5c\x76\xd5\xf3\x40\x69\x6a\x0a\x70\x9e\x4e\xa4\x40\ +\x61\x88\x12\x1f\x05\xdd\x03\x40\x5e\xdc\xf4\xca\xc1\xac\x79\x40\ +\x60\xa1\xe3\x0c\x44\xff\x6e\x40\x6b\xea\x32\x47\x27\x58\xb5\x00\ +\x00\x00\x10\x40\x38\x4c\xcb\x75\x7c\x04\xe4\xc0\x62\x97\x16\xcb\ +\x46\x05\x9e\x40\x3a\x04\xf9\x90\xa0\xa1\x90\xc0\x58\xb0\x1c\x43\ +\xe6\x16\xc6\xc0\x40\xc3\x37\x29\xb0\xad\x71\xc0\x4e\x4e\xa0\x29\ +\xf8\xaf\x63\x40\x50\x0a\x04\xf7\x7a\x75\xf9\xc0\x43\x9a\xa3\xc7\ +\xff\x8e\xe7\xc0\x3e\x83\x24\xc7\x88\x06\x31\x40\x45\x35\x0f\x82\ +\x42\x98\x23\x40\x32\x53\xbe\x35\xfa\x10\xf1\x40\x4a\x8f\xeb\x86\ +\x7e\xa9\xe7\xc0\x44\x7e\x73\x44\xb1\xe1\x51\xc0\x60\x5d\xc2\x5a\ +\x55\xc7\x63\x40\x22\xa2\xcb\x69\x59\x50\x4d\xc0\x63\x69\xe0\xb9\ +\x0f\x32\xde\x40\x50\x78\x10\xb9\x1c\xd7\xaa\xc0\x5b\x79\x7a\x66\ +\xb3\x79\x6b\x40\x3c\x77\xfd\x1b\x3d\x06\x10\xc0\x62\xee\x10\xd4\ +\xaa\xf0\xf0\xc0\x46\xd1\x4e\xde\x36\xe2\x04\x40\x50\x2c\x31\x73\ +\xb4\xd5\x4d\x40\x36\xbd\x01\xb5\xb5\x00\xbf\x40\x53\xeb\xec\x32\ +\x09\x0f\xf3\xc0\x64\x7c\xde\xd4\xf9\xea\x5a\x40\x5a\x98\x39\x7f\ +\xc7\xf1\x43\xc0\x67\x9f\x24\x5c\x76\xd5\xf3\x40\x69\x6a\x0a\x70\ +\x9e\x4e\xa4\x40\x61\x88\x12\x1f\x05\xdd\x03\x40\x5e\xdc\xf4\xca\ +\xc1\xac\x79\x40\x60\xa1\xe3\x0c\x44\xff\x6e\x40\x6b\xea\x32\x47\ +\x27\x58\xb5\x00\x00\x00\x10\x40\x38\x4c\xc9\x02\x38\xef\xcd\xc0\ +\x62\x97\x1f\xb1\x2b\xf9\x2a\x40\x3a\x05\x52\xd2\x95\xd7\xab\xc0\ +\x58\xb0\x25\xaa\x53\xdb\xfb\xc0\x40\xc3\x2b\xf2\x52\x75\x9c\xc0\ +\x4e\x4e\xee\xcf\x9b\x90\x20\x40\x50\x0a\x02\x68\x2b\x0a\x79\xc0\ +\x43\x9a\x79\x01\x1a\xe6\xb9\xc0\x3e\x83\xb4\x36\x4e\x91\x1d\x40\ +\x45\x35\x51\x17\x06\xbb\x13\x40\x32\x53\x73\x48\x82\xb8\xb3\x40\ +\x4a\x8f\xa1\xde\xcc\x91\x1f\xc0\x44\x7e\x88\xc8\x99\xcc\xe3\xc0\ +\x60\x5d\xd5\x8c\xe2\xd4\xd6\x40\x22\xa2\xfe\x41\x73\x93\xb3\xc0\ +\x63\x69\xe2\x43\x44\x69\xd7\x40\x50\x78\x07\xd5\xb0\x97\xb1\xc0\ +\x5b\x79\x62\x25\xed\x42\x8d\x40\x3c\x78\x1d\x6d\x64\xc2\xa2\xc0\ +\x62\xee\x0c\x58\x0f\x63\xac\xc0\x46\xd1\x53\xa5\xee\xcf\x4a\x40\ +\x50\x2c\x82\x94\x9a\xd5\x79\x40\x36\xbd\xb8\x76\x84\x73\x91\x40\ +\x53\xeb\xbe\x59\x7d\x1d\xee\xc0\x64\x7c\xee\xed\xf6\x5d\x09\x40\ +\x5a\x98\x3b\xcb\xed\xe6\x6c\xc0\x67\x9f\x25\xa6\x1c\x6e\xe9\x40\ +\x69\x6a\x0f\x6b\x3b\xad\xe5\x40\x61\x88\x1f\x86\x72\xb7\xce\x40\ +\x5e\xdc\xfa\xb5\x02\x69\xbf\x40\x60\xa1\xe2\xe7\xb9\x5c\x6a\x40\ +\x6b\xea\x34\x42\x75\x16\xa6\x00\x00\x00\x10\x40\x38\x4c\xc8\xf1\ +\x73\x46\x04\xc0\x62\x97\x1f\xee\x0c\xf5\x37\x40\x3a\x05\x55\x49\ +\x9a\x94\xdf\xc0\x58\xb0\x25\xec\x1f\xd6\x66\xc0\x40\xc3\x2b\xa0\ +\x8b\xcc\x68\xc0\x4e\x4e\xf0\xf9\x4c\x7d\xc5\x40\x50\x0a\x02\x56\ +\xcf\x1b\x74\xc0\x43\x9a\x77\xd7\x9d\x67\xb9\xc0\x3e\x83\xb8\x29\ +\x68\x18\xac\x40\x45\x35\x52\xe6\x88\x0c\x08\x40\x32\x53\x71\x35\ +\x56\x27\xbe\x40\x4a\x8f\x9f\xd7\xb3\x3a\x64\xc0\x44\x7e\x89\x5f\ +\xfb\xd6\xa6\xc0\x60\x5d\xd6\x13\xf6\xcd\x94\x40\x22\xa2\xff\xa7\ +\x2c\xa7\x01\xc0\x63\x69\xe2\x4e\x19\xcc\x87\x40\x50\x78\x07\x98\ +\x0d\x09\xcb\xc0\x5b\x79\x61\x7d\xbc\xc0\x33\x40\x3c\x78\x1e\x4d\ +\x88\xf4\x35\xc0\x62\xee\x0c\x38\xf1\xc4\xe8\xc0\x46\xd1\x53\xca\ +\x0b\x08\xfb\x40\x50\x2c\x84\xd0\x5d\x55\x8c\x40\x36\xbd\xbd\x80\ +\x5a\xad\x4a\x40\x53\xeb\xbd\x15\xf5\x07\xab\xc0\x64\x7c\xef\x60\ +\x1c\x2f\x98\x40\x5a\x98\x3b\xdc\x37\xef\xe9\xc0\x67\x9f\x25\xaf\ +\x3d\xbf\xd4\x40\x69\x6a\x0f\x8e\x89\x77\x9f\x40\x61\x88\x1f\xe5\ +\x0f\x7e\xd1\x40\x5e\xdc\xfa\xde\xc3\x4f\x44\x40\x60\xa1\xe2\xe6\ +\xb7\x5f\xeb\x40\x6b\xea\x34\x50\x71\xf2\x5e\x00\x00\x00\x10\x40\ +\x38\x4c\xc8\xe4\xe9\x4a\xe6\xc0\x62\x97\x20\x1b\x90\x2c\x4f\x40\ +\x3a\x05\x57\x22\x0c\x24\x7d\xc0\x58\xb0\x26\x1d\x5d\x86\x5d\xc0\ +\x40\xc3\x2b\x63\x3b\xcf\x8c\xc0\x4e\x4e\xf2\x97\xc3\x66\xc7\x40\ +\x50\x0a\x02\x49\xd6\x8c\x4d\xc0\x43\x9a\x76\xf9\x0d\x28\xdf\xc0\ +\x3e\x83\xbb\x1e\x53\x10\x07\x40\x45\x35\x54\x41\x8c\xf4\x10\x40\ +\x32\x53\x6f\xa7\x9a\x5e\xd5\x40\x4a\x8f\x9e\x53\x1a\xe6\x20\xc0\ +\x44\x7e\x89\xd1\x4c\x49\xec\xc0\x60\x5d\xd6\x79\x12\xe1\x41\x40\ +\x22\xa3\x00\xb2\xf0\x65\xf7\xc0\x63\x69\xe2\x56\x35\xbe\x3d\x40\ +\x50\x78\x07\x69\xf1\x50\x4e\xc0\x5b\x79\x60\xff\xec\xcb\x67\x40\ +\x3c\x78\x1e\xf5\x33\x9c\xb3\xc0\x62\xee\x0c\x21\xab\x29\xe4\xc0\ +\x46\xd1\x53\xe5\x27\x99\x97\x40\x50\x2c\x86\x7c\x61\xad\xa6\x40\ +\x36\xbd\xc1\x45\xf8\xa0\x3f\x40\x53\xeb\xbc\x23\xbf\xbf\x32\xc0\ +\x64\x7c\xef\xb5\x95\x62\x2d\x40\x5a\x98\x3b\xe8\x6a\x6d\xa5\xc0\ +\x67\x9f\x25\xb6\x13\xea\x8f\x40\x69\x6a\x0f\xa8\xf8\xea\x0c\x40\ +\x61\x88\x20\x2b\xe3\xfb\xb4\x40\x5e\xdc\xfa\xfe\x05\x65\x16\x40\ +\x60\xa1\xe2\xe5\xf6\x3c\x86\x40\x6b\xea\x34\x5a\xea\xb2\xfe\x00\ +\x00\x00\x10\x40\x38\x4c\xc8\xd4\x84\xf3\x4d\xc0\x62\x97\x20\x57\ +\x0f\x3b\xd7\x40\x3a\x05\x59\x8c\x8a\x5e\xce\xc0\x58\xb0\x26\x5d\ +\xcd\x2f\x15\xc0\x40\xc3\x2b\x12\xda\xcc\x87\xc0\x4e\x4e\xf4\xb6\ +\x3e\xa1\x52\x40\x50\x0a\x02\x38\xe4\x10\x8c\xc0\x43\x9a\x75\xd5\ +\xe6\xa1\x5c\xc0\x3e\x83\xbe\xfd\x1d\x6c\x0f\x40\x45\x35\x56\x07\ +\xd6\x3e\xb6\x40\x32\x53\x6d\x9e\xdc\x7b\x7c\x40\x4a\x8f\x9c\x56\ +\x73\x8e\x7b\xc0\x44\x7e\x8a\x65\x9b\x9a\xc2\xc0\x60\x5d\xd6\xfd\ +\x68\xf0\x6a\x40\x22\xa3\x02\x11\x65\xf2\x80\xc0\x63\x69\xe2\x60\ +\xd2\xcd\x1f\x40\x50\x78\x07\x2d\xa2\x09\x53\xc0\x5b\x79\x60\x5b\ +\x5c\xc5\x6c\x40\x3c\x78\x1f\xd0\x82\x80\xbc\xc0\x62\xee\x0c\x03\ +\x39\x4a\xd4\xc0\x46\xd1\x54\x08\xbe\xbb\x9e\x40\x50\x2c\x88\xac\ +\xa3\x4c\x7c\x40\x36\xbd\xc6\x35\xfc\x61\x64\x40\x53\xeb\xba\xe6\ +\xb1\x05\x48\xc0\x64\x7c\xf0\x25\x7e\x80\x23\x40\x5a\x98\x3b\xf8\ +\x62\xb1\x2e\xc0\x67\x9f\x25\xbf\x07\x67\xde\x40\x69\x6a\x0f\xcb\ +\x95\x87\xec\x40\x61\x88\x20\x88\x9b\xc5\x2f\x40\x5e\xdc\xfb\x26\ +\xf0\x4e\x91\x40\x60\xa1\xe2\xe4\xf9\x69\xcb\x40\x6b\xea\x34\x68\ +\x9f\xdc\x0a\x00\x00\x00\x10\x40\x38\x4c\xc8\xcf\x45\x6d\x70\xc0\ +\x62\x97\x20\x6a\x1b\x9c\x23\x40\x3a\x05\x5a\x52\xc4\x7b\x1c\xc0\ +\x58\xb0\x26\x72\x72\x66\xea\xc0\x40\xc3\x2a\xf9\x10\xed\xb9\xc0\ +\x4e\x4e\xf5\x64\x15\x69\xb0\x40\x50\x0a\x02\x33\x77\xa5\x56\xc0\ +\x43\x9a\x75\x78\xa3\x77\x6b\xc0\x3e\x83\xc0\x3a\xa2\x9b\x18\x40\ +\x45\x35\x56\x99\x6e\xfb\xd2\x40\x32\x53\x6c\xf7\xf3\x6f\x59\x40\ +\x4a\x8f\x9b\xb3\x71\xd9\x7e\xc0\x44\x7e\x8a\x95\x22\x08\xc3\xc0\ +\x60\x5d\xd7\x27\xd0\xff\x24\x40\x22\xa3\x02\x81\xb3\x6a\x1c\xc0\ +\x63\x69\xe2\x64\x39\x77\x1e\x40\x50\x78\x07\x1a\x50\xf1\xd4\xc0\ +\x5b\x79\x60\x26\xa7\x76\x2b\x40\x3c\x78\x20\x16\xc0\xae\xfd\xc0\ +\x62\xee\x0b\xf9\x78\xf7\x9a\xc0\x46\xd1\x54\x14\x2c\xd4\x30\x40\ +\x50\x2c\x89\x60\x2e\x92\x45\x40\x36\xbd\xc7\xcb\x13\x78\x86\x40\ +\x53\xeb\xba\x81\x14\xb0\x4f\xc0\x64\x7c\xf0\x49\x5d\x6b\x81\x40\ +\x5a\x98\x3b\xfd\x81\x19\xae\xc0\x67\x9f\x25\xc1\xe5\xe5\x65\x40\ +\x69\x6a\x0f\xd6\xad\x9f\xef\x40\x61\x88\x20\xa6\x52\x94\x24\x40\ +\x5e\xdc\xfb\x34\x0d\x4b\xd1\x40\x60\xa1\xe2\xe4\xa8\x63\x78\x40\ +\x6b\xea\x34\x6d\x04\x78\x67\x00\x00\x00\x10\x40\x38\x4c\xc8\xc3\ +\x53\xf0\xd7\xc0\x62\x97\x20\x95\x74\xbf\xc7\x40\x3a\x05\x5c\x16\ +\x3e\x0f\x2d\xc0\x58\xb0\x26\xa1\x74\xe5\x62\xc0\x40\xc3\x2a\xbe\ +\x48\x1a\xc9\xc0\x4e\x4e\xf6\xef\xf7\x35\xd6\x40\x50\x0a\x02\x27\ +\x21\x30\x73\xc0\x43\x9a\x74\xa4\x51\xd1\x0d\xc0\x3e\x83\xc3\x0d\ +\xc2\x0e\xf4\x40\x45\x35\x57\xe5\x09\x34\x5f\x40\x32\x53\x6b\x7b\ +\xc7\x91\x61\x40\x4a\x8f\x9a\x40\x37\x7d\xc1\xc0\x44\x7e\x8b\x01\ +\x5c\x12\x71\xc0\x60\x5d\xd7\x88\x63\x00\x6f\x40\x22\xa3\x03\x81\ +\x71\x1e\xdd\xc0\x63\x69\xe2\x6b\xf8\x2e\x8c\x40\x50\x78\x06\xee\ +\x57\xe8\x39\xc0\x5b\x79\x5f\xae\xab\x35\x22\x40\x3c\x78\x20\xb6\ +\xa7\x72\x0b\xc0\x62\xee\x0b\xe3\x46\x4f\xd6\xc0\x46\xd1\x54\x2e\ +\x40\x0a\x1b\x40\x50\x2c\x8a\xf9\x12\xa8\xf6\x40\x36\xbd\xcb\x65\ +\xa5\xcc\xd1\x40\x53\xeb\xb9\x99\xaa\xcf\x03\xc0\x64\x7c\xf0\x9b\ +\x11\xbc\x05\x40\x5a\x98\x3c\x09\x29\xdc\x73\xc0\x67\x9f\x25\xc8\ +\x6e\xde\xfd\x40\x69\x6a\x0f\xef\xf2\x9d\x38\x40\x61\x88\x20\xe9\ +\xfe\xa9\x62\x40\x5e\xdc\xfb\x51\xea\xa9\x9f\x40\x60\xa1\xe2\xe3\ +\xef\xdb\xd6\x40\x6b\xea\x34\x77\x05\xb5\xb1\x00\x00\x00\x10\x40\ +\x38\x4c\xc8\xc2\x67\xdd\x57\xc0\x62\x97\x20\x98\xcd\x94\x1a\x40\ +\x3a\x05\x5c\x39\x1f\x5d\xdb\xc0\x58\xb0\x26\xa5\x16\x7d\x84\xc0\ +\x40\xc3\x2a\xb9\xbc\xba\x60\xc0\x4e\x4e\xf7\x0e\x8c\x4a\xb1\x40\ +\x50\x0a\x02\x26\x2d\x64\x0a\xc0\x43\x9a\x74\x93\xeb\xe8\x2d\xc0\ +\x3e\x83\xc3\x45\x9f\x4d\x2f\x40\x45\x35\x57\xfe\xa7\x9e\xb3\x40\ +\x32\x53\x6b\x5e\x68\x2f\x32\x40\x4a\x8f\x9a\x23\x89\xc3\x22\xc0\ +\x44\x7e\x8b\x09\xb8\x5e\x6c\xc0\x60\x5d\xd7\x8f\xd8\xc8\x46\x40\ +\x22\xa3\x03\x95\x32\xa9\x80\xc0\x63\x69\xe2\x6c\x91\x58\xc3\x40\ +\x50\x78\x06\xea\xf2\x89\xaa\xc0\x5b\x79\x5f\xa5\x67\x05\xe0\x40\ +\x3c\x78\x20\xc3\x00\xcb\xb0\xc0\x62\xee\x0b\xe1\x8f\x72\x2a\xc0\ +\x46\xd1\x54\x30\x44\x61\xe5\x40\x50\x2c\x8b\x18\xa9\x44\x23\x40\ +\x36\xbd\xcb\xac\xeb\xcc\x19\x40\x53\xeb\xb9\x87\xca\x0f\x26\xc0\ +\x64\x7c\xf0\xa1\x61\xc8\xea\x40\x5a\x98\x3c\x0a\x10\x78\x9d\xc0\ +\x67\x9f\x25\xc8\xf0\x21\x1c\x40\x69\x6a\x0f\xf1\xe6\x6c\xcd\x40\ +\x61\x88\x20\xef\x39\x09\x1b\x40\x5e\xdc\xfb\x54\x39\x4e\x8a\x40\ +\x60\xa1\xe2\xe3\xe1\x9a\x53\x40\x6b\xea\x34\x77\xcb\x94\x20\x00\ +\x00\x00\x10\x40\x38\x4c\xc8\xc1\x32\xe4\xf9\xc0\x62\x97\x20\x9d\ +\x2e\xf8\xde\x40\x3a\x05\x5c\x66\xc6\xea\x0b\xc0\x58\xb0\x26\xa9\ +\xd7\x32\x7d\xc0\x40\xc3\x2a\xb3\xc9\xdf\x14\xc0\x4e\x4e\xf7\x36\ +\x93\x96\x7f\x40\x50\x0a\x02\x24\xee\x51\x65\xc0\x43\x9a\x74\x7e\ +\x75\x91\x91\xc0\x3e\x83\xc3\x8e\xbe\x00\x43\x40\x45\x35\x58\x20\ +\x2f\xea\x4a\x40\x32\x53\x6b\x37\xf6\x02\x6f\x40\x4a\x8f\x99\xfe\ +\x00\x4b\x9f\xc0\x44\x7e\x8b\x14\xa9\xbf\x4b\xc0\x60\x5d\xd7\x99\ +\x9c\x71\xc0\x40\x22\xa3\x03\xaf\x0e\x58\x32\xc0\x63\x69\xe2\x6d\ +\x59\xd1\xf7\x40\x50\x78\x06\xe6\x80\xb1\x85\xc0\x5b\x79\x5f\x99\ +\x46\x45\x3d\x40\x3c\x78\x20\xd3\x2a\x6b\xb5\xc0\x62\xee\x0b\xdf\ +\x51\x0d\x21\xc0\x46\xd1\x54\x32\xe8\x5b\x66\x40\x50\x2c\x8b\x42\ +\x01\xb4\x84\x40\x36\xbd\xcc\x0a\x35\xc8\xee\x40\x53\xeb\xb9\x70\ +\x63\x9a\x1b\xc0\x64\x7c\xf0\xa9\xa5\x0c\xbe\x40\x5a\x98\x3c\x0b\ +\x3e\x51\xa0\xc0\x67\x9f\x25\xc9\x99\x51\x18\x40\x69\x6a\x0f\xf4\ +\x74\xa1\xea\x40\x61\x88\x20\xf6\x10\xd1\x9d\x40\x5e\xdc\xfb\x57\ +\x3e\x65\x10\x40\x60\xa1\xe2\xe3\xce\xf1\x84\x40\x6b\xea\x34\x78\ +\xce\x91\x2c\x00\x00\x00\x10\x40\x38\x4c\xc8\xc1\x32\xe4\xf9\xc0\ +\x62\x97\x20\x9d\x2e\xf8\xde\x40\x3a\x05\x5c\x66\xc6\xea\x0b\xc0\ +\x58\xb0\x26\xa9\xd7\x32\x7d\xc0\x40\xc3\x2a\xb3\xc9\xdf\x14\xc0\ +\x4e\x4e\xf7\x36\x93\x96\x7f\x40\x50\x0a\x02\x24\xee\x51\x65\xc0\ +\x43\x9a\x74\x7e\x75\x91\x91\xc0\x3e\x83\xc3\x8e\xbe\x00\x43\x40\ +\x45\x35\x58\x20\x2f\xea\x4a\x40\x32\x53\x6b\x37\xf6\x02\x6f\x40\ +\x4a\x8f\x99\xfe\x00\x4b\x9f\xc0\x44\x7e\x8b\x14\xa9\xbf\x4b\xc0\ +\x60\x5d\xd7\x99\x9c\x71\xc0\x40\x22\xa3\x03\xaf\x0e\x58\x32\xc0\ +\x63\x69\xe2\x6d\x59\xd1\xf7\x40\x50\x78\x06\xe6\x80\xb1\x85\xc0\ +\x5b\x79\x5f\x99\x46\x45\x3d\x40\x3c\x78\x20\xd3\x2a\x6b\xb5\xc0\ +\x62\xee\x0b\xdf\x51\x0d\x21\xc0\x46\xd1\x54\x32\xe8\x5b\x66\x40\ +\x50\x2c\x8b\x42\x01\xb4\x84\x40\x36\xbd\xcc\x0a\x35\xc8\xee\x40\ +\x53\xeb\xb9\x70\x63\x9a\x1b\xc0\x64\x7c\xf0\xa9\xa5\x0c\xbe\x40\ +\x5a\x98\x3c\x0b\x3e\x51\xa0\xc0\x67\x9f\x25\xc9\x99\x51\x18\x40\ +\x69\x6a\x0f\xf4\x74\xa1\xea\x40\x61\x88\x20\xf6\x10\xd1\x9d\x40\ +\x5e\xdc\xfb\x57\x3e\x65\x10\x40\x60\xa1\xe2\xe3\xce\xf1\x84\x40\ +\x6b\xea\x34\x78\xce\x91\x2c\x00\x00\x00\x10\x40\x38\x4c\xc8\xbf\ +\xcf\xfc\x3c\xc0\x62\x97\x20\xa2\x37\x18\xbc\x40\x3a\x05\x5c\x9b\ +\x39\x94\x7a\xc0\x58\xb0\x26\xaf\x4c\xea\x97\xc0\x40\xc3\x2a\xac\ +\xf4\x31\x63\xc0\x4e\x4e\xf7\x64\x8f\x9a\x25\x40\x50\x0a\x02\x23\ +\x7f\xd0\x06\xc0\x43\x9a\x74\x65\xcd\xff\xd0\xc0\x3e\x83\xc3\xe2\ +\xbe\x25\x12\x40\x45\x35\x58\x46\xb5\xb3\x85\x40\x32\x53\x6b\x0b\ +\xcb\x0d\x92\x40\x4a\x8f\x99\xd2\xe0\xed\x42\xc0\x44\x7e\x8b\x21\ +\x3b\xf0\xf6\xc0\x60\x5d\xd7\xa4\xd4\x07\xaf\x40\x22\xa3\x03\xcc\ +\xc2\xf6\xcf\xc0\x63\x69\xe2\x6e\x40\x1f\x33\x40\x50\x78\x06\xe1\ +\x65\x9e\x9c\xc0\x5b\x79\x5f\x8b\x57\xc0\xf2\x40\x3c\x78\x20\xe5\ +\xbb\x6d\x77\xc0\x62\xee\x0b\xdc\xbd\x3a\x54\xc0\x46\xd1\x54\x35\ +\xf1\x1f\xf9\x40\x50\x2c\x8b\x71\x81\x27\x09\x40\x36\xbd\xcc\x75\ +\x61\x96\xaf\x40\x53\xeb\xb9\x55\x81\xb9\x30\xc0\x64\x7c\xf0\xb3\ +\x23\x22\x31\x40\x5a\x98\x3c\x0c\x99\x17\x47\xc0\x67\x9f\x25\xca\ +\x5b\xaf\x44\x40\x69\x6a\x0f\xf7\x64\x34\xea\x40\x61\x88\x20\xfd\ +\xed\x47\xed\x40\x5e\xdc\xfb\x5a\xb6\x86\x41\x40\x60\xa1\xe2\xe3\ +\xb9\x81\xe1\x40\x6b\xea\x34\x79\xf8\x18\x55\x00\x00\x00\x10\x40\ +\x38\x4c\xc8\xc0\x4e\x4f\x3d\xc0\x62\x97\x20\xa0\x6c\x9c\x10\x40\ +\x3a\x05\x5c\x88\x8e\x66\x1c\xc0\x58\xb0\x26\xad\x5b\x68\x24\xc0\ +\x40\xc3\x2a\xaf\x63\x02\x46\xc0\x4e\x4e\xf7\x54\x31\x68\xc3\x40\ +\x50\x0a\x02\x24\x02\x43\xaf\xc0\x43\x9a\x74\x6e\x94\x89\x25\xc0\ +\x3e\x83\xc3\xc4\xd7\xce\x09\x40\x45\x35\x58\x38\xff\x69\xa6\x40\ +\x32\x53\x6b\x1b\x83\xc1\xd0\x40\x4a\x8f\x99\xe2\x3a\x5a\x44\xc0\ +\x44\x7e\x8b\x1c\xc2\x70\xf4\xc0\x60\x5d\xd7\xa0\xd5\xe7\x48\x40\ +\x22\xa3\x03\xc2\x30\x23\x5c\xc0\x63\x69\xe2\x6d\xee\x25\xab\x40\ +\x50\x78\x06\xe3\x36\xdb\x68\xc0\x5b\x79\x5f\x90\x4d\x36\x90\x40\ +\x3c\x78\x20\xdf\x1f\xa6\xa9\xc0\x62\xee\x0b\xdd\xa8\x15\x8e\xc0\ +\x46\xd1\x54\x34\xdc\x9c\x16\x40\x50\x2c\x8b\x60\x99\x08\x6c\x40\ +\x36\xbd\xcc\x4f\x3b\xe3\xde\x40\x53\xeb\xb9\x5f\x13\x4e\xf5\xc0\ +\x64\x7c\xf0\xaf\xc2\x25\x0e\x40\x5a\x98\x3c\x0c\x1d\xa8\x48\xc0\ +\x67\x9f\x25\xca\x16\x7f\xd6\x40\x69\x6a\x0f\xf6\x58\xaf\x08\x40\ +\x61\x88\x20\xfb\x20\xf3\x53\x40\x5e\xdc\xfb\x59\x7a\x65\xa7\x40\ +\x60\xa1\xe2\xe3\xc1\x23\x31\x40\x6b\xea\x34\x79\x8e\x30\xd7\x00\ +\x00\x00\x10\x40\x38\x4c\xc8\xc0\x24\xc9\x42\xc0\x62\x97\x20\xa1\ +\x03\x51\x04\x40\x3a\x05\x5c\x8e\xb1\x4a\x18\xc0\x58\xb0\x26\xad\ +\xfe\xf0\x2a\xc0\x40\xc3\x2a\xae\x96\x4c\x84\xc0\x4e\x4e\xf7\x59\ +\x92\xb9\xe9\x40\x50\x0a\x02\x23\xd7\x61\x93\xc0\x43\x9a\x74\x6b\ +\xb2\x17\xa4\xc0\x3e\x83\xc3\xce\xab\xca\x54\x40\x45\x35\x58\x3d\ +\x81\x3f\x26\x40\x32\x53\x6b\x16\x58\xd6\x2c\x40\x4a\x8f\x99\xdd\ +\x2e\xc0\x07\xc0\x44\x7e\x8b\x1e\x3a\xf7\xb4\xc0\x60\x5d\xd7\xa2\ +\x25\xe0\x7c\x40\x22\xa3\x03\xc5\xa9\xdf\x80\xc0\x63\x69\xe2\x6e\ +\x09\x17\x9f\x40\x50\x78\x06\xe2\x9d\xee\x8d\xc0\x5b\x79\x5f\x8e\ +\xab\xef\xf2\x40\x3c\x78\x20\xe1\x4b\xbe\x79\xc0\x62\xee\x0b\xdd\ +\x5a\xe2\xd6\xc0\x46\xd1\x54\x35\x37\x7f\x10\x40\x50\x2c\x8b\x66\ +\x27\xb0\x54\x40\x36\xbd\xcc\x5b\xc5\xe0\xc4\x40\x53\xeb\xb9\x5b\ +\xee\x21\x36\xc0\x64\x7c\xf0\xb0\xde\x77\x49\x40\x5a\x98\x3c\x0c\ +\x46\x3a\xd9\xc0\x67\x9f\x25\xca\x2d\x3d\x92\x40\x69\x6a\x0f\xf6\ +\xb0\x9e\x4b\x40\x61\x88\x20\xfc\x0c\x68\x9b\x40\x5e\xdc\xfb\x59\ +\xe2\x4e\xeb\x40\x60\xa1\xe2\xe3\xbe\xa1\x23\x40\x6b\xea\x34\x79\ +\xb1\x00\x66\x00\x00\x00\x10\x40\x38\x4c\xc8\xbf\xee\x70\x14\xc0\ +\x62\x97\x20\xa1\xc8\x92\x26\x40\x3a\x05\x5c\x96\xb9\x6c\xbd\xc0\ +\x58\xb0\x26\xae\xd4\xfb\x26\xc0\x40\xc3\x2a\xad\x8a\x57\xfb\xc0\ +\x4e\x4e\xf7\x60\x9d\x78\x70\x40\x50\x0a\x02\x23\x9f\x41\xd1\xc0\ +\x43\x9a\x74\x67\xeb\x91\x0b\xc0\x3e\x83\xc3\xdb\x88\xea\x29\x40\ +\x45\x35\x58\x43\x67\x7a\x47\x40\x32\x53\x6b\x0f\x95\x49\xb5\x40\ +\x4a\x8f\x99\xd6\x94\x32\x19\xc0\x44\x7e\x8b\x20\x27\xcb\x9d\xc0\ +\x60\x5d\xd7\xa3\xdd\xa0\x33\x40\x22\xa3\x03\xca\x36\x6d\xdb\xc0\ +\x63\x69\xe2\x6e\x2c\x5c\x37\x40\x50\x78\x06\xe1\xd5\xc5\xef\xc0\ +\x5b\x79\x5f\x8c\x89\xc7\x6e\x40\x3c\x78\x20\xe4\x23\x98\x6b\xc0\ +\x62\xee\x0b\xdc\xf5\xd8\x14\xc0\x46\xd1\x54\x35\xae\x76\x39\x40\ +\x50\x2c\x8b\x6d\x6d\xc6\x31\x40\x36\xbd\xcc\x6c\x2f\x5e\xd3\x40\ +\x53\xeb\xb9\x57\xd0\x3e\xef\xc0\x64\x7c\xf0\xb2\x52\x9c\x24\x40\ +\x5a\x98\x3c\x0c\x7b\x55\xad\xc0\x67\x9f\x25\xca\x4b\x01\x8e\x40\ +\x69\x6a\x0f\xf7\x23\xb6\xf6\x40\x61\x88\x20\xfd\x40\x98\x5e\x40\ +\x5e\xdc\xfb\x5a\x6a\x50\xcc\x40\x60\xa1\xe2\xe3\xbb\x58\xc4\x40\ +\x6b\xea\x34\x79\xde\x90\x91\x00\x00\x00\x10\x40\x38\x4c\xc8\xbf\ +\xdd\x05\x9e\xc0\x62\x97\x20\xa2\x07\xc7\xe2\x40\x3a\x05\x5c\x99\ +\x4c\x59\xcf\xc0\x58\xb0\x26\xaf\x19\x92\x90\xc0\x40\xc3\x2a\xad\ +\x34\x79\x79\xc0\x4e\x4e\xf7\x62\xdf\x2a\xa1\x40\x50\x0a\x02\x23\ +\x8d\x45\xef\xc0\x43\x9a\x74\x66\xb5\xd7\xe9\xc0\x3e\x83\xc3\xdf\ +\xa8\x34\xb2\x40\x45\x35\x58\x45\x4b\x6f\x42\x40\x32\x53\x6b\x0d\ +\x6a\x68\xe4\x40\x4a\x8f\x99\xd4\x76\x73\x36\xc0\x44\x7e\x8b\x20\ +\xc5\xb9\x45\xc0\x60\x5d\xd7\xa4\x6a\x8b\x7a\x40\x22\xa3\x03\xcb\ +\xab\x9d\x74\xc0\x63\x69\xe2\x6e\x37\xa9\x75\x40\x50\x78\x06\xe1\ +\x95\xa1\xdb\xc0\x5b\x79\x5f\x8b\xda\xc3\x2a\x40\x3c\x78\x20\xe5\ +\x0c\xd5\xed\xc0\x62\xee\x0b\xdc\xd5\x77\x11\xc0\x46\xd1\x54\x35\ +\xd4\x96\x1e\x40\x50\x2c\x8b\x6f\xc2\x7c\x13\x40\x36\xbd\xcc\x71\ +\x71\xc0\xb2\x40\x53\xeb\xb9\x56\x7e\x86\x5a\xc0\x64\x7c\xf0\xb2\ +\xc9\xdd\x72\x40\x5a\x98\x3c\x0c\x8c\x5a\x33\xc0\x67\x9f\x25\xca\ +\x54\x8b\x69\x40\x69\x6a\x0f\xf7\x48\x99\x09\x40\x61\x88\x20\xfd\ +\xa3\x5a\xc4\x40\x5e\xdc\xfb\x5a\x95\xe6\x4c\x40\x60\xa1\xe2\xe3\ +\xba\x4b\x77\x40\x6b\xea\x34\x79\xed\x2a\x63\x00\x00\x00\x10\x40\ +\x38\x4c\xc8\xbf\xa9\x3c\xf7\xc0\x62\x97\x20\xa2\xc3\xba\x2f\x40\ +\x3a\x05\x5c\xa0\xf4\xb7\xf1\xc0\x58\xb0\x26\xaf\xe5\x96\xe4\xc0\ +\x40\xc3\x2a\xac\x34\xe6\xf4\xc0\x4e\x4e\xf7\x69\x95\xca\xcd\x40\ +\x50\x0a\x02\x23\x57\xdb\x46\xc0\x43\x9a\x74\x63\x1c\x4c\x49\xc0\ +\x3e\x83\xc3\xeb\xeb\x58\x7a\x40\x45\x35\x58\x4a\xeb\x0b\xde\x40\ +\x32\x53\x6b\x06\xf7\xe1\xda\x40\x4a\x8f\x99\xce\x2a\xed\x2d\xc0\ +\x44\x7e\x8b\x22\x9b\x7b\xcb\xc0\x60\x5d\xd7\xa6\x0d\xc7\x6c\x40\ +\x22\xa3\x03\xd0\x01\xd2\x5f\xc0\x63\x69\xe2\x6e\x59\x48\xae\x40\ +\x50\x78\x06\xe0\xd6\xe9\xc6\xc0\x5b\x79\x5f\x89\xd1\xfd\x18\x40\ +\x3c\x78\x20\xe7\xc2\xd5\xed\xc0\x62\xee\x0b\xdc\x75\x1f\x54\xc0\ +\x46\xd1\x54\x36\x45\xdf\xf2\x40\x50\x2c\x8b\x76\xb1\x88\xd7\x40\ +\x36\xbd\xcc\x81\x16\xe5\x42\x40\x53\xeb\xb9\x52\x91\xe6\x77\xc0\ +\x64\x7c\xf0\xb4\x2c\x9e\xd1\x40\x5a\x98\x3c\x0c\xbe\x99\x62\xc0\ +\x67\x9f\x25\xca\x70\xda\x68\x40\x69\x6a\x0f\xf7\xb6\x0f\x69\x40\ +\x61\x88\x20\xfe\xc9\x33\xea\x40\x5e\xdc\xfb\x5b\x17\x3b\x26\x40\ +\x60\xa1\xe2\xe3\xb7\x2f\x1f\x40\x6b\xea\x34\x7a\x18\x57\x7f\x00\ +\x00\x00\x10\x40\x39\x3a\xfb\x80\x37\xf3\x20\xc0\x61\xfc\xcb\xa3\ +\xcd\x26\xb3\x40\x36\xe1\xc0\x3b\x54\x6a\xc7\xc0\x57\x7d\x1f\x83\ +\x86\xf3\x1c\xc0\x42\x8a\xc6\x53\xae\xe3\x90\xc0\x4c\x3d\xf4\x90\ +\xee\x6c\x3f\x40\x4e\x2d\x2a\x66\xb7\xf4\x4a\xc0\x40\xfe\x98\xb5\ +\x59\x0c\x29\xc0\x41\x9c\x26\x3c\x27\x7a\x60\x40\x47\x49\xd1\x47\ +\xd2\xac\x49\x40\x2a\xff\x46\x2d\x2a\xf5\xdd\x40\x4c\xe9\x81\x90\ +\xd0\x9c\x7c\xc0\x43\xec\x12\xf4\xe3\xc3\x79\xc0\x5f\xc9\x03\x0f\ +\xff\x7b\x76\x40\x21\x4c\x2e\x53\x8d\xf5\xb6\xc0\x63\x5e\x70\x2e\ +\xf1\x12\x4a\x40\x60\x35\xaf\x9d\x23\xb9\xb3\xc0\x47\xf5\xbd\xee\ +\x88\x2b\x80\x40\x5f\x27\xde\x05\x0a\xe0\xcd\xc0\x59\xe5\xec\x76\ +\x6e\x20\x9e\xc0\x49\x4b\x2f\xeb\x9c\x1a\x49\x40\x51\x2b\xee\x40\ +\x71\xae\x98\x40\x31\x9e\x54\x8b\xa5\x0f\x9e\x40\x55\x1b\xb6\xcb\ +\xa1\xcb\x36\xc0\x65\x42\x19\x74\x05\x9a\xf9\x40\x5a\xb0\xf1\x49\ +\x6b\xdf\x29\xc0\x67\xab\x60\x4e\xa0\x19\x85\x40\x69\xa0\x71\xdc\ +\x2e\x28\xe1\x40\x61\x1f\xc5\xf2\x50\xd7\x8a\x40\x5e\xb5\x77\xa5\ +\x7e\x2d\xd8\x40\x60\xa2\xa4\x00\xc9\xca\x1b\x40\x6b\xdc\x49\x66\ +\x6f\x08\x2d\x00\x00\x00\x10\x40\x39\x6d\xdd\x13\x57\xa1\xd5\xc0\ +\x61\x88\xae\xf7\xb1\x07\xb9\x40\x3d\xcf\xf4\x8d\x6a\x17\x82\xc0\ +\x56\x9d\xa9\x7a\xdd\x4a\xee\xc0\x3f\xd1\x0f\xe0\xc8\xca\x1b\xc0\ +\x4b\xe5\xb8\x99\x8a\x88\x81\x40\x50\x1e\xc0\x45\x2f\x34\x10\xc0\ +\x3c\xd5\xaf\x28\x25\x54\xfa\xc0\x41\x59\xfd\x10\xd6\x49\xbe\x40\ +\x47\x9e\x2c\x2b\x96\x3e\x8e\x40\x2a\xe2\xd5\x8c\x54\xd6\x15\x40\ +\x4e\x5c\xbb\xef\xb1\x92\x66\xc0\x43\xbf\xfb\xa6\x99\x4b\x21\xc0\ +\x5f\x85\x8a\xa8\x9e\x7f\x25\x40\x20\xe3\xcd\x5f\xf2\x68\xe2\xc0\ +\x63\x5a\x9f\x77\xe2\x62\x79\x40\x60\xd6\xe3\xac\xcc\x5f\x90\xc0\ +\x34\xa5\x13\xa5\x48\xae\xc2\x40\x64\xe3\x80\x6b\x21\x27\x96\xc0\ +\x50\x8d\x0b\x23\xa9\xc3\xe4\xc0\x49\x89\xcb\x5b\xbe\x67\xd3\x40\ +\x51\x26\xf3\x40\xd2\x0d\xc1\x40\x30\x53\x3d\xec\x2b\xcb\xe3\x40\ +\x55\xdf\xb6\x87\x83\x72\xc9\xc0\x65\x50\x90\x7a\x79\xec\x90\x40\ +\x5a\xb3\x5d\xfd\x75\x1b\xbb\xc0\x67\xac\x23\x85\x4c\x3e\xc1\x40\ +\x69\xa4\x50\xfd\xc1\x1a\xbe\x40\x61\x15\x08\x2c\x04\x80\x35\x40\ +\x5e\xb2\x16\xd8\x69\xeb\x99\x40\x60\xa2\xb0\x72\x32\x30\x48\x40\ +\x6b\xdb\x00\x4c\xb4\x72\x34\x00\x00\x00\x10\x40\x39\x79\xe6\xd8\ +\x96\x75\x3a\xc0\x61\xc0\x16\x90\x87\x0e\xed\x40\x38\x8f\xec\xd9\ +\xc7\x51\xb7\xc0\x57\x00\xb8\x99\x9b\x0c\x77\xc0\x42\x03\xf3\x87\ +\x9c\x0b\x95\xc0\x4b\xc8\x06\x2f\x17\xcb\x6f\x40\x4e\x81\x5b\x7b\ +\x07\x5f\xac\xc0\x3f\x6b\x1b\x49\x9f\xef\xa8\xc0\x41\xf5\x1a\xbf\ +\x81\x76\xdc\x40\x47\xc1\xb0\x33\x3e\x15\x87\x40\x29\x35\xe9\x42\ +\xe0\x6f\x26\x40\x4d\xcb\x37\x6d\xa6\xc4\xbd\xc0\x43\xc2\xd2\x31\ +\x5b\xf1\xae\xc0\x5f\x8b\xf9\x65\x4b\xb3\xb9\x40\x20\xf2\x38\xea\ +\x61\xb5\x68\xc0\x63\x5b\x25\xb1\x29\x73\x44\x40\x60\x74\xb0\xf1\ +\xaf\x14\x87\xc0\x3c\x2b\x5b\x9f\xd5\xcc\x3a\x40\x5f\xd1\xff\x1a\ +\xb3\xb4\x69\xc0\x54\xf9\x9f\x72\x33\xf9\x81\xc0\x49\xd3\xfa\x57\ +\xad\xf2\x84\x40\x51\x56\xe6\x30\xad\x36\xf7\x40\x30\x45\x7a\x8e\ +\xd7\x55\xf9\x40\x55\x90\xcf\xcc\x04\x2a\x2d\xc0\x65\x6a\x17\x30\ +\x58\x3c\xd3\x40\x5a\xb7\x3e\x31\xfb\xc0\xbc\xc0\x67\xad\x5a\x2e\ +\xcc\x97\xbb\x40\x69\xaa\xd2\x12\x76\xcf\xc6\x40\x61\x08\x27\xfd\ +\xad\x8d\xa9\x40\x5e\xad\xed\x6b\x24\xb9\x5c\x40\x60\xa2\xbe\x9a\ +\x9d\xff\x01\x40\x6b\xd9\x5b\x1b\x78\x99\x99\x00\x00\x00\x10\x40\ +\x3a\x1c\xba\xdc\xfa\x1a\x5d\xc0\x60\xf5\xc8\x41\xf4\x13\xe6\x40\ +\x41\xfa\x03\xbb\xf4\x1d\x4a\xc0\x55\xaa\x26\xe9\xec\x4c\xf0\xc0\ +\x3b\x21\x4c\xc6\x54\x3f\x5c\xc0\x4b\x5b\x50\x0c\x7c\x8f\x98\x40\ +\x50\xf9\x7f\xcb\x19\x0b\xae\xc0\x37\x93\x4b\x4f\x3b\xf3\x58\xc0\ +\x41\x41\x68\xf8\x0c\x13\x54\x40\x48\x0c\x99\x85\x2c\x7f\x15\x40\ +\x2a\x01\x64\x6f\x7e\xaa\x70\x40\x4f\xd5\xa4\x26\x6b\xe0\x61\xc0\ +\x43\x74\x8b\x1b\xb1\x98\xf2\xc0\x5f\x1b\xe4\x8e\x02\x7c\x6d\x40\ +\x20\x42\xe5\x35\xba\xbe\x4c\xc0\x63\x54\x64\xe8\xa8\x03\x5e\x40\ +\x61\x53\x48\x12\x1c\xc4\xf0\xc0\x38\x89\xd7\xe7\xcb\xc4\x43\x40\ +\x65\x76\x6e\x3f\xaf\x20\x22\xc0\x51\x65\xa7\xda\xaa\x26\x75\xc0\ +\x49\xe6\x46\x82\xd0\x24\xb9\x40\x51\x2f\x67\xdc\xf2\x10\xf5\x40\ +\x2d\x70\x6e\xe1\xf3\xcb\xfa\x40\x56\xa2\x91\x0e\xe0\x3f\x9d\xc0\ +\x65\x68\x72\x72\x08\xfb\x25\x40\x5a\xb7\x12\xd7\xa9\xc0\x26\xc0\ +\x67\xad\x49\xf8\x95\x22\x31\x40\x69\xaa\x71\xed\xc5\x2f\x89\x40\ +\x60\xfd\xd6\x05\x90\x17\x3d\x40\x5e\xab\x02\x86\x36\xeb\xc5\x40\ +\x60\xa2\xc7\x56\x35\x46\xe9\x40\x6b\xd8\x35\x4f\xe4\xc4\x52\x00\ +\x00\x00\x10\x40\x3a\x22\xa0\xc0\xc8\x8c\x68\xc0\x61\x7a\xe1\x71\ +\x57\xe2\xd0\x40\x37\x88\x57\x2b\xb4\x27\x65\xc0\x56\x7a\x19\x92\ +\x2d\x24\x6c\xc0\x42\xaa\x2f\xed\x9b\x21\x34\xc0\x4a\xf4\xa5\x85\ +\xef\xfb\x8d\x40\x4d\xc3\xc6\xac\x45\x1a\x79\xc0\x3d\x0b\xa3\xc1\ +\xb3\x70\xbf\xc0\x42\xfd\x76\x03\x11\x38\x1a\x40\x48\x95\x81\x53\ +\xec\x54\xe6\x40\x24\xe6\xbc\x4c\xf9\xb4\xf7\x40\x4e\xcc\x4f\xe2\ +\x80\x6a\x4e\xc0\x43\x7b\x0d\x6e\x7d\x0a\xc0\xc0\x5f\x26\x9b\xe0\ +\x90\x2d\x70\x40\x20\x57\xdc\x86\xe0\xd3\xec\xc0\x63\x55\x29\x47\ +\x39\xb3\x08\x40\x60\x47\xa0\x6e\xe2\x7b\xe5\xc0\x3d\x8e\x03\x79\ +\xb3\xc5\xd8\x40\x59\xf4\xd9\x6e\xa3\x7d\xca\xc0\x53\xb4\xae\x8b\ +\xb8\xe6\x2d\xc0\x4a\xf0\xb2\x63\x73\x25\x8f\x40\x51\xb9\x89\xae\ +\x4e\xeb\xcd\x40\x2b\xd9\x2c\xa9\xd0\xb1\x70\x40\x56\x13\x03\x84\ +\xe7\x17\x50\xc0\x65\xbe\x60\xdc\xb9\x87\x4b\x40\x5a\xc4\x9a\x9e\ +\x26\x0d\xb2\xc0\x67\xb0\xd3\x88\x9b\xee\x09\x40\x69\xbf\x4a\x43\ +\x04\x51\xc2\x40\x60\xd2\x70\x29\x96\x40\xc4\x40\x5e\x9e\x5d\xed\ +\x9c\x03\x41\x40\x60\xa2\xe4\x5f\xbf\xef\x51\x40\x6b\xd2\xd4\x01\ +\xf5\xda\x8f\x00\x00\x00\x10\x40\x39\x93\x07\x18\x7c\x00\x57\xc0\ +\x61\xed\x38\x48\x04\xf6\x05\x40\x39\xce\xd4\x3d\x16\x4f\xe1\xc0\ +\x57\x5a\x79\x80\xd1\xee\x90\xc0\x41\x5a\xb0\x5b\xd9\x84\xa7\xc0\ +\x4c\x6b\x4b\xa6\xc5\x05\x67\x40\x4f\x31\x11\x79\x69\xca\xc4\xc0\ +\x40\x72\xd8\x87\x3f\x4a\xdb\xc0\x41\x30\x33\x06\x0e\xbd\x6d\x40\ +\x47\x1e\x92\xf6\x5f\x87\x9d\x40\x2c\x56\xb7\x92\x4c\x0f\x54\x40\ +\x4d\x1a\xcc\x86\x22\xf3\x62\xc0\x43\xed\x68\x86\x6d\xf1\xf7\xc0\ +\x5f\xd7\x21\x49\x55\x4f\x8d\x40\x21\x78\xc7\xca\xdd\xae\x33\xc0\ +\x63\x60\x08\x68\x37\x94\x7d\x40\x55\x61\x16\x46\xec\xb7\xbc\xc0\ +\x58\xed\xdd\x9f\xdd\x31\xf6\x40\x4d\x34\xd5\x5d\xce\x73\x18\xc0\ +\x62\x93\x74\x7f\x87\x8c\xe0\xc0\x49\x09\x16\x63\x43\xbe\xc4\x40\ +\x51\x07\x88\xc1\x11\x6b\x6e\x40\x31\xe4\xaf\x64\x08\xd2\xab\x40\ +\x55\x38\x17\x72\x80\xb5\xac\xc0\x65\x2c\x52\x57\x7f\x38\xd6\x40\ +\x5a\xad\x44\x85\x31\xfe\xd5\xc0\x67\xaa\x28\xdf\x87\x91\xd0\x40\ +\x69\x9a\x80\x20\x4d\x49\x84\x40\x61\x2c\x4a\x92\x0c\x64\x0a\x40\ +\x5e\xba\x92\xb8\xd5\x32\x10\x40\x60\xa2\x8e\x79\x47\xf5\xf0\x40\ +\x6b\xde\x52\x7b\xcd\xff\x76\x00\x00\x00\x10\x40\x39\xa0\x87\x98\ +\xb8\xe0\xec\xc0\x62\x2e\x9b\xf4\x0c\x9a\x1f\x40\x38\x3b\x99\x1e\ +\x7f\x21\x57\xc0\x57\xde\x76\x78\x0a\x75\x02\xc0\x41\xdb\xc9\xce\ +\x7f\xdb\x4c\xc0\x4c\xfd\x56\x17\x6b\xc4\x02\x40\x4e\xdd\x63\x67\ +\xe8\x83\x36\xc0\x41\xc3\x56\x92\x55\x6f\xcc\xc0\x40\xe7\x7e\x05\ +\xfc\x43\x82\x40\x46\x8a\x57\x00\x41\xd6\xd1\x40\x2d\xd4\x62\x54\ +\xe0\x04\x59\x40\x4c\x27\x56\xc2\xcd\x8b\x08\xc0\x42\x5a\xf0\x4d\ +\x5a\xcb\xe6\xc0\x60\x15\xda\x3c\x46\xaf\x80\x40\x2e\xe6\x21\xc4\ +\x8c\x1a\x04\xc0\x62\x99\x50\xe9\xf4\x73\xa0\x40\x50\x8a\xee\x4b\ +\xfe\x05\x2c\xc0\x5a\x86\x37\xad\x7c\x15\x19\x40\x3e\x0c\x8f\x47\ +\x89\x42\x31\xc0\x62\x98\x5b\xa9\x88\xc3\x3a\xc0\x48\x95\x4f\x39\ +\x7f\x7d\xf0\x40\x50\xcc\x9d\xf9\xdf\xe9\xd6\x40\x33\x0b\xd4\x0c\ +\x5e\xaf\x8e\x40\x54\xba\x84\x35\x41\xd8\x1e\xc0\x65\x06\xae\x6d\ +\x56\x5a\x3b\x40\x5a\xa7\x7d\x7e\x97\xc5\xb4\xc0\x67\xa7\xfe\xa3\ +\xda\x60\x69\x40\x69\x90\x32\x32\xe0\xf7\x43\x40\x61\x3b\xaa\x06\ +\x78\xb7\xc1\x40\x5e\xc0\x47\x72\x5e\x23\xb6\x40\x60\xa2\x75\x46\ +\x84\x56\xc3\x40\x6b\xe0\x78\xd5\xcc\x8c\x07\ +\x00\x00\x05\x1c\ +\xff\ +\xff\xff\xff\x00\x00\x00\x05\x00\x00\x00\x10\x00\x00\x00\x00\x00\ +\x00\x00\x00\xc0\x62\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\xc0\x59\x00\x00\x00\x00\x00\x00\xc0\x49\x00\x00\x00\ +\x00\x00\x00\xc0\x49\x00\x00\x00\x00\x00\x00\x40\x49\x00\x00\x00\ +\x00\x00\x00\xc0\x49\x00\x00\x00\x00\x00\x00\xc0\x39\x00\x00\x00\ +\x00\x00\x00\x40\x49\x00\x00\x00\x00\x00\x00\x40\x39\x00\x00\x00\ +\x00\x00\x00\x40\x49\x00\x00\x00\x00\x00\x00\xc0\x59\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x5f\x40\x00\x00\ +\x00\x00\x00\x40\x49\x00\x00\x00\x00\x00\x00\x40\x59\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x5f\x40\x00\x00\ +\x00\x00\x00\x40\x49\x00\x00\x00\x00\x00\x00\xc0\x41\x80\x00\x00\ +\x00\x00\x00\x40\x52\xc0\x00\x00\x00\x00\x00\x40\x41\x80\x00\x00\ +\x00\x00\x00\x40\x52\xc0\x00\x00\x00\x00\x00\xc0\x39\x00\x00\x00\ +\x00\x00\x00\x40\x69\x00\x00\x00\x00\x00\x00\xc0\x3e\x00\x00\x00\ +\x00\x00\x00\x40\x72\xc0\x00\x00\x00\x00\x00\x40\x39\x00\x00\x00\ +\x00\x00\x00\x40\x69\x00\x00\x00\x00\x00\x00\x40\x3e\x00\x00\x00\ +\x00\x00\x00\x40\x72\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x10\xc0\ +\x3c\x89\x78\xef\x64\x41\xf9\xc0\x66\xd9\xe8\x90\xe1\x7d\x15\xc0\ +\x31\xe3\x24\x6e\x1a\x35\x4b\xc0\x60\xbe\xa8\xcb\xa3\x98\xe8\xc0\ +\x4b\x26\x9c\xdd\x08\xb6\xce\xc0\x52\x55\xf3\x5e\x1e\x9a\xcc\x40\ +\x45\x5c\xfa\x9b\x0f\x7d\x05\xc0\x58\x63\x42\x06\x4d\xc8\xaa\xc0\ +\x17\x5f\xc1\xb2\xd2\x1c\x6d\x40\x31\x9d\xf7\x2f\xd9\x40\x6c\x40\ +\x45\x56\x51\xec\xae\x7d\xee\x40\x16\x28\xbe\x3a\x2e\x6a\x36\xc0\ +\x55\x8e\x3f\x19\x86\x36\x44\xc0\x24\x7d\xe2\xe5\x56\x5d\x8e\xc0\ +\x5d\x38\xe5\xb0\x63\x56\x32\x40\x42\x3f\x2b\xb1\x33\xe6\xab\x40\ +\x47\x27\x75\x17\xb2\xff\xe1\xc0\x65\x05\x80\x69\xc9\x45\xe4\x40\ +\x46\xa5\x8b\x3a\x6c\xa7\xa8\xc0\x6c\x02\x0f\xa6\x73\xff\xbc\xc0\ +\x23\x07\xbb\xb5\xb5\x51\x7d\x40\x46\x24\x27\xde\x37\xae\x65\x40\ +\x4d\x34\xca\x20\x80\xfa\x8f\x40\x3b\x64\xbd\x21\x5f\x80\x81\xc0\ +\x37\xe9\x56\x97\x59\x09\x15\x40\x65\x1b\x2f\x86\xb4\x04\x4d\xc0\ +\x3c\xb5\xb5\xc5\x5a\xd5\x30\x40\x70\xcd\xc0\x3b\x0e\xef\xd6\x40\ +\x43\xce\x38\x01\x33\x34\xdd\x40\x62\xec\x1a\xba\x71\x62\x00\x40\ +\x3f\x5e\x72\xef\x9e\x8c\x25\x40\x6f\x65\x3a\x4d\xed\xc0\xd9\x00\ +\x00\x00\x10\xc0\x3c\x89\xb8\xa7\xeb\xa9\x01\xc0\x66\xda\x0d\x17\ +\x53\x31\x17\xc0\x31\xe1\x8c\xf0\xba\xdf\x75\xc0\x60\xbe\xd1\xa6\ +\x64\x43\x82\xc0\x4b\x26\x88\x07\x92\xca\xbf\xc0\x52\x56\x94\xaa\ +\x30\x5d\x72\x40\x45\x5d\x52\x6d\x57\x9c\xd9\xc0\x58\x62\xcc\x60\ +\x74\xfe\x54\xc0\x17\x69\xa4\x0b\x5f\xcf\x0e\x40\x31\xa0\xd0\x0e\ +\xd0\x62\xed\x40\x45\x54\xc3\x45\xee\xd2\xcc\x40\x16\x23\xd3\x38\ +\xd6\x69\x28\xc0\x55\x8e\x03\x71\x6e\x9d\x31\xc0\x24\x82\xdb\x79\ +\xc3\x1b\x6e\xc0\x5d\x38\x8a\xc7\x14\xca\x74\x40\x42\x3e\x16\x8f\ +\x10\x50\x33\x40\x47\x27\x55\xb2\x6a\xa5\x2d\xc0\x65\x05\x3e\xa8\ +\x00\x01\x15\x40\x46\xa5\x8f\xfd\x66\x67\x23\xc0\x6c\x01\xce\x0e\ +\xaa\x42\x46\xc0\x23\x05\x39\x8c\x95\xa5\x0f\x40\x46\x26\xe0\xb5\ +\x34\x5e\x5e\x40\x4d\x34\xad\x03\x49\x41\x5e\x40\x3b\x5f\xf9\x28\ +\x4b\xa6\x62\xc0\x37\xea\x6c\x93\xfc\xa6\xb3\x40\x65\x1b\xec\xb0\ +\x7b\xa8\xfc\xc0\x3c\xb5\xfe\xd2\xbb\xf3\x4b\x40\x70\xce\x1f\x6d\ +\x37\x5e\x7d\x40\x43\xce\xcc\x1c\x47\x26\xc2\x40\x62\xeb\x73\x80\ +\x3a\x8b\xaf\x40\x3f\x5e\xe2\xb7\xae\x5f\xb6\x40\x6f\x64\x91\x2c\ +\x26\xca\x21\x00\x00\x00\x10\xc0\x38\x01\x30\x6b\xba\xdc\x1b\xc0\ +\x64\xeb\xbe\xf4\x99\xf2\x9b\xc0\x13\xa3\x04\x1c\x30\xdb\xb6\xc0\ +\x5e\x4a\x12\x9f\x80\xef\xb8\xc0\x48\xf6\x8c\x7d\xe9\xbd\xf2\xc0\ +\x50\xa8\x10\x7e\x26\x5b\x6d\x40\x48\xcf\x7a\x59\xa1\x24\xc5\xc0\ +\x53\x09\x35\x0a\x19\xb4\xbb\xc0\x2f\x0b\x6a\x35\x97\xd3\x7e\x40\ +\x3e\x88\x20\x7b\xc1\xb4\x2f\x40\x41\x20\x0b\x54\x51\x2e\x7e\x40\ +\x39\xc9\x9e\xf7\xb2\xd8\xc6\xc0\x55\xfe\xc6\x23\xb0\x4f\x25\xc0\ +\x1c\x1c\x60\x3d\x66\x92\xe7\xc0\x5d\xba\xce\x5e\x2a\x54\x25\x40\ +\x43\xc4\x24\x4f\x00\x90\x62\x40\x58\x0b\xce\x4b\xd9\x22\xe1\xc0\ +\x36\xed\xde\xb4\x40\x2c\x73\x40\x5a\xd1\x4e\xef\xc4\x03\x6b\x40\ +\x3f\xdc\xbc\xa5\x13\x81\x98\xc0\x37\x1b\xea\x35\xa6\x66\xff\x40\ +\x4c\x2e\x2d\x1e\x28\x01\x86\x40\x47\x49\xa3\x1a\xd5\xe2\xf0\x40\ +\x48\xdd\x6f\xf6\xf0\x01\x68\xc0\x38\xc1\x32\x29\x64\xfb\x5b\x40\ +\x66\xb7\xea\x61\x5e\xb1\x57\xc0\x3d\x45\x4c\x15\xef\x6f\x50\x40\ +\x71\x9c\x53\x80\x4b\x64\x0c\x40\x42\x8c\x98\x55\x36\x48\x2a\x40\ +\x65\xd8\xb5\x79\xf6\x83\x89\x40\x3d\xa6\xc3\x54\x49\x2b\x98\x40\ +\x71\x29\xea\x7e\x10\x5d\xc3\x00\x00\x00\x10\x40\x31\xc2\x13\x60\ +\x88\x8b\x4e\xc0\x68\x3c\xec\xdf\xc9\x5c\x2f\x40\x19\x5a\x83\xca\ +\x1f\xc9\xc5\xc0\x62\x27\x36\xb4\x9b\x52\x60\xc0\x48\x60\x10\xa3\ +\xc6\x74\xb4\xc0\x59\x39\x43\xd2\xf9\x7b\x4b\x40\x49\x55\xa6\x3b\ +\x8b\xb1\xc9\xc0\x56\x88\xbb\x33\x01\xdc\x6b\xc0\x41\x53\xb3\x9c\ +\x85\xff\x25\x3f\xf3\x70\x84\x8f\xed\xe9\x9b\x40\x2e\x1c\xbe\xb0\ +\x48\x52\x79\x40\x1a\x5f\x89\xdb\x5b\x45\xc0\xc0\x50\xc0\xce\xa2\ +\xc3\xe5\x44\xc0\x65\x26\x9c\x40\xed\xa0\x1a\xc0\x54\xa2\x72\xde\ +\x2f\x48\xc9\xc0\x6b\xdd\x16\xce\x9e\x56\xb3\x40\x55\xdc\x36\x69\ +\xb4\x6e\x69\xc0\x3d\xbd\x2f\xf0\x4e\x71\xd7\x40\x5a\x39\x0b\xe0\ +\xb9\x21\xc7\x40\x37\x5e\x81\xe7\xe6\x46\x06\xc0\x47\xa4\x74\xb8\ +\xaf\xb7\xee\x40\x38\xfe\xaa\x2d\x0e\x97\x7e\x40\x36\x4f\x1c\x98\ +\xc9\x38\x7d\x40\x40\x43\x0a\x66\x30\x52\xdc\xc0\x3f\xd3\xf0\xcb\ +\x87\x9d\x38\x40\x62\xae\x04\x10\x53\xde\x8c\xc0\x3d\x00\x25\x84\ +\x92\xd2\x45\x40\x6f\x30\xbc\x58\x1f\xbc\xdf\x40\x41\x44\xa6\xc0\ +\x0b\x29\xd8\x40\x63\xaa\x6a\x7a\x0d\xd9\x34\x40\x3e\xab\x98\x09\ +\xd9\x42\x57\x40\x70\x16\x03\x15\xe6\x2f\x0a\ +\x00\x00\x09\x2c\ +\xff\ +\xff\xff\xff\x00\x00\x00\x09\x00\x00\x00\x10\xc0\x36\xc1\x31\xf7\ +\x71\x07\xcd\xc0\x62\xc4\x31\x65\x15\x96\x34\xc0\x22\x59\x75\x1b\ +\x5e\x3f\xf0\xc0\x59\x80\x9a\x15\x13\xe9\x09\xc0\x47\x52\xc9\x1c\ +\x2f\x1a\x7a\xc0\x45\x06\x29\x2a\x67\x31\x79\x40\x49\x64\xe4\x36\ +\x8c\xfe\x06\xc0\x50\x22\x71\x64\xe5\x3f\xcb\x3f\xc9\x7e\x46\xc2\ +\x82\x74\x41\x40\x48\xe2\x7c\x67\xa7\x02\xf2\x40\x48\x75\xb8\xda\ +\x6c\xe4\xac\x40\x43\x43\x8c\xb1\x63\x97\xf6\xc0\x59\x94\x32\xd7\ +\x73\x76\xf3\x3f\xf8\xd1\x11\x6b\x2c\x82\x25\xc0\x5f\x82\xbf\x09\ +\xb5\x16\xad\x40\x4a\x15\x6d\x1b\x87\x1c\x19\x40\x55\x32\x73\xaa\ +\x94\xec\x77\xc0\x04\x4e\x49\x68\xe6\x95\xd3\x40\x60\xe5\xde\x62\ +\x15\x6c\x95\xc0\x3a\xbb\x5f\xa9\x86\x06\x7e\xc0\x0f\x68\xca\xdb\ +\xdc\xdd\x36\x40\x53\x18\x3a\x74\x13\x56\x51\x40\x50\x12\x0e\xb5\ +\x6f\x61\x5c\x40\x4e\x52\x58\x0d\xd3\x0c\x6d\xc0\x38\xbe\x69\x34\ +\x34\x0d\xd7\x40\x69\x01\x3e\xaa\x3a\x4e\xf3\xc0\x3d\xff\xa9\xa5\ +\x4e\x81\xa7\x40\x72\xc0\x69\xcc\x0a\xb2\x0e\x40\x3f\xa2\xaf\xee\ +\xb2\x7a\xa3\x40\x66\xb7\x06\x0c\x87\xf6\x2d\x40\x3d\xae\x9a\x40\ +\x3c\x67\x56\x40\x71\x9d\x34\xa4\xbb\x47\x7d\x00\x00\x00\x10\xc0\ +\x30\xaf\xc1\x69\x97\x5a\x95\xc0\x63\x49\x63\x4e\x8e\x9f\xdc\xc0\ +\x1e\xaf\xb7\x04\x39\xf0\x0c\xc0\x5a\x46\x95\xdc\xfb\x24\x8e\xc0\ +\x49\x9c\xd2\x5c\x93\x47\x4c\xc0\x48\xb5\xcf\xe8\x99\x9c\xdd\x40\ +\x48\x02\x8f\xa5\xd6\xdc\x31\xc0\x4e\xc7\x1a\x4e\x1b\x4a\x1c\xc0\ +\x2c\x94\xbf\x13\x77\x29\x41\x40\x47\x68\xf0\xdd\xb4\xba\x6a\x40\ +\x41\xac\x5d\x06\x4f\x13\x18\x40\x44\x62\x29\x5f\x79\x2c\x69\xc0\ +\x58\x78\xf9\x10\x42\x39\x8c\x40\x0d\x9e\x34\x27\x91\xbd\x70\xc0\ +\x63\x03\xb5\x2e\x0b\xf6\xb5\x40\x31\x49\xc5\x70\x34\x57\xdc\x40\ +\x55\x55\x0b\xb2\x96\x65\xb2\xbf\xf7\xd0\xc3\xa3\x37\x60\x82\x40\ +\x60\xe6\x74\x90\x7c\xd3\xd5\xc0\x3a\xbd\xb7\xf4\x49\xd6\x6d\xc0\ +\x35\x33\x14\x59\x01\x4b\xa9\x40\x52\x36\xaa\xf8\xcd\xd9\x51\x40\ +\x48\x24\x95\xbf\x77\x92\xaf\x40\x50\x19\x5d\x72\x39\xa4\xee\xc0\ +\x38\x3c\x43\x48\x09\x4c\x70\x40\x68\xc7\x21\x6e\x01\xfb\xd3\xc0\ +\x3d\xe6\x09\x44\x84\xd2\x4f\x40\x72\xa2\xff\xdd\x04\x92\x32\x40\ +\x3d\x30\xda\x3a\xb4\x2e\xfe\x40\x67\x8a\xdf\x98\x83\xb8\xf6\x40\ +\x3d\xa4\x89\x7f\x23\xcd\xd5\x40\x72\x07\x6b\x4d\x22\x90\x7e\x00\ +\x00\x00\x10\x3f\xe8\xdc\xd8\x6c\x4e\xe2\x7a\xc0\x63\x6c\xe1\x17\ +\xf2\xa0\xbf\xc0\x1c\xa0\x1f\x76\xa3\x67\x0e\xc0\x5a\x82\x4b\xa2\ +\xc3\x07\x44\xc0\x4e\x6a\xa4\x92\xae\xdd\x89\xc0\x4e\x00\xb1\x06\ +\xb8\xfd\xe4\x40\x43\x6f\xe2\x4f\x4e\xd0\x7e\xc0\x4a\x2d\xf6\xac\ +\x0f\xbe\x52\xc0\x45\xc6\xbd\x2e\xcf\xf5\x06\x40\x44\xce\x84\x52\ +\x4a\x5a\x37\x40\x19\x34\x31\x96\xfb\x44\x7f\x40\x46\xb7\xe1\xb0\ +\xec\xbd\xa9\xc0\x58\xfd\xf7\xfd\x56\xdc\x11\xbf\xf1\xca\x67\x3c\ +\x06\x01\x31\xc0\x63\x1e\x02\x33\x3c\x22\x49\xc0\x32\xfa\x9d\x13\ +\x66\xaf\x41\x40\x54\x9e\xa9\xbe\x7c\x61\xe3\x40\x0a\x72\xb1\x55\ +\x98\x28\x33\x40\x61\x32\xb3\x01\xb0\xbc\x2d\xc0\x18\x63\x1b\xa0\ +\x7e\x49\xee\xc0\x4b\xb7\xac\x9e\xf7\xef\xea\x40\x50\x71\xa3\x37\ +\xe4\x2e\xa7\x40\x2c\xb8\x60\xb8\xfe\xc6\xc2\x40\x51\xc8\x31\x75\ +\xbd\x97\x6c\xc0\x3b\x25\x5d\xe3\x55\xb6\xc3\x40\x67\x7e\x28\x3a\ +\x2f\xcf\x04\xc0\x3d\x79\xfb\x74\x2a\xf4\x86\x40\x72\x00\xa4\xae\ +\xf2\x81\x95\x40\x3c\xfa\x8b\x66\xc9\x22\x30\x40\x68\x75\x84\x1e\ +\x7d\x6d\xd4\x40\x3d\xb5\xf8\x8b\xe7\x75\x6d\x40\x72\x7c\xb6\xc6\ +\x9a\xe9\x9a\x00\x00\x00\x10\x3f\xe4\x9d\xa9\x42\x5e\xe7\x43\xc0\ +\x63\x56\x3a\x89\xf9\xf5\x03\xc0\x1b\xb9\xb9\x7a\xc0\xda\x37\xc0\ +\x5a\x51\x6d\x68\xd6\x38\x91\xc0\x4f\xf0\xb8\xf8\x76\x60\x54\xc0\ +\x4f\xad\xc6\x15\x51\x43\xe4\x40\x41\x7d\xdd\x1f\xa6\x7e\x97\xc0\ +\x48\x29\x8c\x8c\x88\xc5\xd5\xc0\x4b\x19\x1c\xf8\xef\x04\xe9\x40\ +\x43\xa1\x52\x38\x86\xcc\xe1\xc0\x13\x11\x86\xaf\xfa\x18\xd1\x40\ +\x47\x64\x45\xcd\x84\x52\xf0\xc0\x5d\x6b\xc7\x4d\xed\xcd\x82\xc0\ +\x31\x79\xa5\x95\x16\x3c\x6c\xc0\x64\x78\xba\xa8\x85\x58\x74\xc0\ +\x48\x8e\x36\x95\x37\x4b\xa5\x40\x54\xcc\x34\x76\x69\xe8\x4e\x40\ +\x0b\x3e\xdf\x5f\x9e\x8d\xa3\x40\x60\x65\x54\x53\xc4\x38\x71\x40\ +\x40\x0c\xb3\x84\x9f\xd2\x9c\xc0\x50\xf6\x2c\x1c\x95\xbd\x9f\x40\ +\x4f\x3b\xb0\x51\x91\x96\x07\x3f\xf5\xb6\xbb\x4c\x89\xfb\xa7\x40\ +\x52\x40\x4d\xcb\x0f\x40\xae\xc0\x3e\x45\x9a\x76\x56\xfb\xac\x40\ +\x66\xc3\x4b\x9c\xe2\xcb\x0b\xc0\x3d\x73\xb5\x3b\x21\x32\xb6\x40\ +\x71\xa3\x97\xbc\x79\xdf\x84\x40\x3c\xd5\xf8\x27\x62\x64\x9d\x40\ +\x68\x6b\x6d\x0c\x69\x1b\x7e\x40\x3d\xb5\x37\x81\x76\xb1\xee\x40\ +\x72\x77\xa6\xa6\x21\xce\x5f\x00\x00\x00\x10\xbf\xe3\x54\xf9\xd1\ +\xc3\xbb\x96\xc0\x62\x39\x5d\x48\x40\x62\x61\xc0\x13\xa4\x40\xfe\ +\x23\x41\x66\xc0\x57\xfe\x9e\x7a\x5a\x8c\x65\xc0\x51\x53\x87\x2f\ +\x98\x9f\x2f\xc0\x50\xb1\x13\x00\xa7\xbf\x57\x40\x38\x4d\x1d\xa7\ +\x39\x9a\x03\xc0\x3f\x95\x6d\x6a\x72\xf6\x4d\xc0\x54\x45\x8b\x2f\ +\x57\x8e\x27\x40\x41\xd1\x53\x04\xab\x6e\xf7\xc0\x41\x24\x47\xc5\ +\x1a\x30\x9b\x40\x4a\x9d\x0a\xaa\x84\xfc\x0d\xc0\x61\x26\xda\xae\ +\x5a\xbe\x0d\xc0\x47\x87\xad\x31\xe6\x56\x49\xc0\x65\xf1\xab\xa2\ +\x9d\x71\x7a\xc0\x55\xef\x9f\x23\x26\xbf\xfd\x40\x44\x02\xa4\x34\ +\x49\x99\xb4\x40\x42\xad\xc5\x39\xfc\xc3\xc9\x40\x54\x77\x1a\x63\ +\x55\xdd\x55\x3f\xd2\x3b\x7b\x22\x6a\xd6\x1f\xc0\x58\xcf\x8d\xc1\ +\xb5\x07\x54\x40\x4b\xc2\x62\x63\xab\x19\x62\xc0\x40\xdb\xfa\x46\ +\x22\x87\x89\x40\x54\x09\x64\xf2\x9a\x80\x2a\xc0\x44\xeb\x29\x9a\ +\x2f\x94\x49\x40\x64\xe0\x36\x35\x4c\x3c\x43\xc0\x3e\x7e\x4a\x3b\ +\x7b\x99\xfd\x40\x70\xa7\xca\x20\xaa\x48\xd9\x40\x39\x90\x46\xa5\ +\x32\x46\xfc\x40\x67\xd4\xc0\x6c\x37\x15\xaa\x40\x3d\x93\xe0\x30\ +\xd5\xa0\xe6\x40\x72\x2b\x16\x2e\xda\x91\xd2\x00\x00\x00\x10\xbf\ +\xd7\x9d\xe7\xa1\x97\x39\xc0\xc0\x62\xbc\xd5\xa4\x38\x2b\x33\xc0\ +\x2b\x24\x07\xa2\xf7\xbc\x3a\xc0\x59\x6b\x39\x1d\x48\x8d\x2d\xc0\ +\x50\xfc\x22\x5d\x98\xd8\xe0\xc0\x4c\x3b\x80\x46\xaf\xdc\x40\x40\ +\x3f\xa3\xe1\x10\x37\xbc\x7c\xc0\x47\xa7\x33\xb0\x1d\xd6\x38\xc0\ +\x4a\x1a\x00\x9f\xcb\xe1\x48\x40\x46\xb3\xbc\xc6\xce\x1c\xfe\xc0\ +\x03\x4e\xc7\x08\x76\xc7\x1c\x40\x48\xfd\xf5\x33\x7e\x4b\x81\xc0\ +\x60\x62\xd0\x37\xd0\x3e\x25\xc0\x38\xa5\xfa\x53\xfc\x7a\x7d\xc0\ +\x64\x52\x8c\x8e\xde\xf0\x6d\xc0\x51\xb5\x7b\xf0\xe3\x85\x21\x40\ +\x52\x61\x8e\x3b\xeb\xd1\xde\x40\x23\x54\x72\x4d\x7e\x66\xb6\x40\ +\x5a\xc6\x30\x18\x78\x65\x5e\xc0\x41\x84\x35\xad\x81\xc8\x84\xc0\ +\x50\x1c\xe1\x3c\xef\x41\x96\x40\x51\x58\x7f\x41\x27\xa7\x22\x40\ +\x15\x04\xa4\x11\x8b\xa5\x4c\x40\x52\xf2\xe2\x10\x1d\xbe\x94\xc0\ +\x3a\xad\xdb\xf6\xe0\xcd\x29\x40\x67\x9e\xa8\x6e\xa4\x7f\x43\xc0\ +\x3d\xa4\xca\x4b\x1f\x0f\x46\x40\x72\x10\xa0\x16\xce\x0d\xd1\x40\ +\x3d\xed\xb9\x7b\x1d\xf5\x8a\x40\x68\xd7\xc6\xd6\xaf\x31\x50\x40\ +\x3d\xb4\xa6\x32\xb3\x72\x09\x40\x72\xad\xe2\x15\x3d\xe8\xd8\x00\ +\x00\x00\x10\xc0\x34\xf7\x01\x4a\xe8\x31\x37\xc0\x63\x08\xe7\x3c\ +\xd7\x52\x6e\xc0\x32\x87\x01\x16\xce\x22\x54\xc0\x59\x95\x8a\xc3\ +\xc9\x1c\xb8\xc0\x51\x35\xc9\xdc\xb0\xdf\xb7\xc0\x4a\x53\xba\xaa\ +\x59\xe9\x6d\x40\x3f\x27\xe3\x21\x77\x13\xbc\xc0\x4a\x03\x47\xa6\ +\x3c\x27\xd1\xc0\x46\x3c\x28\x27\x7d\x72\x7b\x40\x47\xbf\xcc\xb2\ +\x9b\x75\xf7\x40\x16\x1c\xbe\x7d\x45\x21\x89\x40\x47\xe9\x2b\xf5\ +\x69\xa9\x7a\xc0\x5e\xfa\xe4\x52\xe2\xee\x3d\xc0\x20\x9f\xc3\x12\ +\xc5\x03\x2a\xc0\x63\x2d\x67\xd4\x68\xd9\xd5\xc0\x4b\xe6\x04\xf7\ +\xc6\xd3\xb2\x40\x56\x9a\x17\x7f\xf0\x8a\x61\xc0\x2a\xde\xdc\xce\ +\x99\x86\xc2\x40\x5d\x35\xe2\x20\x89\xba\x10\xc0\x4f\x58\x95\x85\ +\x01\x84\xd4\xc0\x4b\x51\x42\xfa\x2b\xa5\xef\x40\x52\x1b\x84\x34\ +\xad\x36\xdf\x40\x2e\xba\x76\xa5\xb1\xb8\x45\x40\x52\x39\x02\x49\ +\xaa\x30\x3e\xc0\x37\xb9\x6f\x87\xfd\xd0\x77\x40\x68\x3e\xb5\xb9\ +\xe8\xcd\x8a\xc0\x3d\xdf\x2f\x40\x7a\xc8\xd0\x40\x72\x5e\x54\xd0\ +\xa5\x34\x44\x40\x3d\x8f\xfd\xe1\x90\x52\x8a\x40\x68\xaf\x88\xff\ +\xd8\xfc\x30\x40\x3d\xb4\x96\xe1\xc9\x47\x14\x40\x72\x99\xc3\xc3\ +\x16\xad\x07\x00\x00\x00\x10\xc0\x44\x1f\xc5\xb0\x8d\xff\xf8\xc0\ +\x62\xd7\xcc\xdb\x51\x37\xe9\xc0\x38\x70\x1f\x26\x3f\xdd\xd1\xc0\ +\x59\xd3\xca\x12\xd1\x6d\x66\xc0\x50\x9b\x5f\xdf\x54\x98\x82\xc0\ +\x47\x35\x38\xde\x3e\x59\xd1\x40\x40\x3a\x4b\xde\xb1\x11\x5e\xc0\ +\x4e\xa8\xe3\x73\xc2\x1e\x04\xc0\x3a\xcd\xa4\x3c\x9c\xa3\x4a\x40\ +\x48\x5e\xe9\xc8\x41\x4a\x06\x40\x36\xa3\x67\x5c\xdf\x00\x72\x40\ +\x44\xa5\x11\xd4\x30\xbb\xbe\xc0\x58\xc8\x06\xa1\x52\x29\xa4\x40\ +\x30\x47\xe1\xaa\x31\x64\x3e\xc0\x63\x5d\xb2\xe9\xcc\x7a\xe2\x40\ +\x29\xe9\x00\x97\x5b\x70\xaa\x40\x58\x50\x0c\x6f\xef\x08\x06\xc0\ +\x40\x80\xf5\x5f\x55\x35\x51\x40\x60\xea\x26\xcc\x19\xc3\x62\xc0\ +\x52\x7c\x87\x94\x54\x11\xcd\xc0\x40\x7b\x99\x9a\x58\x7d\x4e\x40\ +\x52\xbc\xf9\x47\x74\x9c\xd3\x40\x42\x20\x54\x4b\xe3\x87\xa0\x40\ +\x50\x21\x47\x81\x50\x58\x25\xc0\x35\xd8\x1b\x0b\x45\x8c\xdd\x40\ +\x68\xfb\x74\x42\x1b\x4c\x50\xc0\x3e\x4d\x9f\x09\xae\x3a\xcb\x40\ +\x72\xb9\xff\x8f\xad\x92\x5a\x40\x3d\x6b\xf8\x3a\xfe\x5b\xcc\x40\ +\x67\xb7\x76\x0a\x83\x1d\x2b\x40\x3d\xaf\x2e\x02\x24\x00\xa5\x40\ +\x72\x1d\xb9\x4a\x83\x5a\x36\x00\x00\x00\x10\xc0\x56\x21\x7b\x1a\ +\x2d\x27\x74\xc0\x5d\x7f\x81\xf7\x72\x97\xeb\xc0\x45\x6a\xce\x4b\ +\x4a\x59\x0e\xc0\x58\x6b\x98\xca\x1a\xce\x5b\xc0\x50\x79\x21\x8d\ +\x02\xed\x0a\xc0\x3e\xd5\xf2\x5c\x01\x40\xa0\x40\x38\x02\xd4\x2c\ +\x79\x7b\xb7\xc0\x52\xa7\xde\x66\xb0\xaa\x42\x3f\xd7\xb5\xe2\x7b\ +\x89\xa4\xca\x40\x48\x0f\x83\x05\x1a\x5b\x33\x40\x46\xa9\x42\x70\ +\x82\xf2\xfc\x40\x3a\x3a\x42\xb9\x85\x37\x29\xc0\x54\xe2\xc5\x27\ +\x1d\x51\x6a\x40\x42\xd1\x7b\x2a\xa1\x08\x15\xc0\x61\x0b\x0a\x8b\ +\x23\x7a\xc0\x40\x33\x47\x9a\x49\x82\xe6\x81\x40\x57\xac\xeb\x9b\ +\x79\x30\xfa\xc0\x53\x13\x15\xe5\x3e\x1d\x05\x40\x60\x43\xab\x51\ +\xbf\x87\xef\xc0\x5d\xe3\x5c\x69\xf3\x2d\x89\x40\x02\x9d\x80\x74\ +\x60\xb9\xea\x40\x52\xbe\x74\x1e\x0d\x17\x2d\x40\x50\x50\x9b\xe2\ +\xa5\xba\x4e\x40\x46\x29\x92\xd8\xeb\x51\xb2\xc0\x32\x67\x07\xb9\ +\x5f\xcb\x99\x40\x68\xd4\xcc\x9f\x63\x2f\x21\xc0\x3e\x08\x79\x67\ +\x07\x43\x5b\x40\x72\xa1\x8d\xaf\x2d\x86\xe8\x40\x43\x38\x54\x39\ +\x89\x5f\xf6\x40\x64\xda\x52\xe8\xbe\xbd\x10\x40\x3e\xaa\x65\xda\ +\xb3\xd9\xcf\x40\x70\xaa\x52\xf4\x99\xff\x0c\ +\x00\x00\x01\x0c\ +\xff\ +\xff\xff\xff\x00\x00\x00\x01\x00\x00\x00\x10\xc0\x72\x75\xd0\xbc\ +\x4a\x7e\x3b\x40\x6e\xa8\x3a\x76\xcc\x4a\x4f\xc0\x6e\xc4\x15\x8d\ +\xdb\x8a\x81\x40\x6d\x91\x95\x4a\xaf\x90\x71\xc0\x69\x4c\xfe\x50\ +\x6c\x77\x6e\x40\x72\x41\xf5\x29\xa3\x44\xca\xc0\x67\xd1\xbb\x6b\ +\x66\xf4\xfc\x40\x68\x1a\x7c\x41\xab\x27\xf0\xc0\x59\x09\x41\xf0\ +\xd6\x29\x49\x40\x71\x72\x68\x78\x60\x60\x84\xc0\x57\x8e\x4b\x36\ +\x5e\x8b\x6f\x40\x6c\xb0\x0b\xce\x10\xc5\x22\xc0\x70\xf5\x12\xcb\ +\xa7\x78\x95\x40\x71\x44\x4e\x7a\x50\x85\x9f\xc0\x74\x72\x66\x5a\ +\x1e\x1b\xae\x40\x71\x17\xf1\xe4\xf6\x7f\x7e\xc0\x64\x2e\x57\x5b\ +\xe3\x6f\x6c\x40\x70\x14\x53\x5e\x5b\x6a\x7a\xc0\x60\x2d\xc9\x35\ +\x26\xaf\xd0\x40\x72\xf1\x84\xb6\xf0\xd8\xae\xc0\x53\x20\x21\x2d\ +\x64\x5b\xb3\x40\x72\x40\xa0\x97\xbf\x55\x8f\xc0\x51\x0d\xcf\x0f\ +\x1b\x48\x3c\x40\x6b\xd1\x05\xa8\x2a\xdf\x62\x40\x44\x77\x7b\xec\ +\x05\x04\x13\x40\x6f\x01\xfc\x1b\x65\x69\x69\x40\x61\x21\xf2\x32\ +\xa1\xd8\xd9\x40\x71\x41\x25\x0f\x44\xd0\xa8\x40\x4c\x88\xe7\x4e\ +\xbb\xeb\xb8\x40\x6c\x7b\xe4\x15\x28\x7a\x0a\x40\x62\x87\x8c\xab\ +\xb5\x95\xf1\x40\x70\xd4\x4b\x4c\x03\x9d\x83\ +" + +qt_resource_name = b"\ +\x00\x0a\ +\x03\x88\x10\x53\ +\x00\x61\ +\x00\x6e\x00\x69\x00\x6d\x00\x61\x00\x74\x00\x69\x00\x6f\x00\x6e\x00\x73\ +\x00\x08\ +\x0f\x03\x25\x67\ +\x00\x63\ +\x00\x68\x00\x69\x00\x6c\x00\x6c\x00\x69\x00\x6e\x00\x67\ +\x00\x07\ +\x01\xc4\x70\xa7\ +\x00\x6a\ +\x00\x75\x00\x6d\x00\x70\x00\x69\x00\x6e\x00\x67\ +\x00\x07\ +\x0a\x84\xa0\x87\ +\x00\x64\ +\x00\x61\x00\x6e\x00\x63\x00\x69\x00\x6e\x00\x67\ +\x00\x04\ +\x00\x06\xab\x74\ +\x00\x64\ +\x00\x65\x00\x61\x00\x64\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x04\x00\x00\x00\x02\ +\x00\x00\x00\x58\x00\x00\x00\x00\x00\x01\x00\x00\x27\xc0\ +\x00\x00\x00\x30\x00\x00\x00\x00\x00\x01\x00\x00\x19\x70\ +\x00\x00\x00\x44\x00\x00\x00\x00\x00\x01\x00\x00\x1e\x90\ +\x00\x00\x00\x1a\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() diff --git a/examples/dbus/chat/chat.py b/examples/dbus/chat/chat.py new file mode 100755 index 0000000..d1065cd --- /dev/null +++ b/examples/dbus/chat/chat.py @@ -0,0 +1,200 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import pyqtSignal, pyqtSlot, Q_CLASSINFO +from PyQt5.QtWidgets import QApplication, QDialog, QMainWindow, QMessageBox +from PyQt5.QtDBus import (QDBusAbstractAdaptor, QDBusAbstractInterface, + QDBusConnection, QDBusMessage) + +from ui_chatmainwindow import Ui_ChatMainWindow +from ui_chatsetnickname import Ui_NicknameDialog + + +class ChatAdaptor(QDBusAbstractAdaptor): + + Q_CLASSINFO("D-Bus Interface", 'org.example.chat') + + Q_CLASSINFO("D-Bus Introspection", '' + ' \n' + ' \n' + ' \n' + ' \n' + ' \n' + ' \n' + ' \n' + ' \n' + ' \n' + ' \n' + '') + + action = pyqtSignal(str, str) + + message = pyqtSignal(str, str) + + def __init__(self, parent): + super(ChatAdaptor, self).__init__(parent) + + self.setAutoRelaySignals(True) + + +class ChatInterface(QDBusAbstractInterface): + + action = pyqtSignal(str, str) + + message = pyqtSignal(str, str) + + def __init__(self, service, path, connection, parent=None): + super(ChatInterface, self).__init__(service, path, 'org.example.chat', + connection, parent) + + +class ChatMainWindow(QMainWindow, Ui_ChatMainWindow): + + action = pyqtSignal(str, str) + + message = pyqtSignal(str, str) + + def __init__(self): + super(ChatMainWindow, self).__init__() + + self.m_nickname = "nickname" + self.m_messages = [] + + self.setupUi(self) + self.sendButton.setEnabled(False) + + self.messageLineEdit.textChanged.connect(self.textChangedSlot) + self.sendButton.clicked.connect(self.sendClickedSlot) + self.actionChangeNickname.triggered.connect(self.changeNickname) + self.actionAboutQt.triggered.connect(self.aboutQt) + QApplication.instance().lastWindowClosed.connect(self.exiting) + + # Add our D-Bus interface and connect to D-Bus. + ChatAdaptor(self) + QDBusConnection.sessionBus().registerObject('/', self) + + iface = ChatInterface('', '', QDBusConnection.sessionBus(), self) + QDBusConnection.sessionBus().connect('', '', 'org.example.chat', + 'message', self.messageSlot) + iface.action.connect(self.actionSlot) + + dialog = NicknameDialog() + dialog.cancelButton.setVisible(False) + dialog.exec_() + self.m_nickname = dialog.nickname.text().strip() + self.action.emit(self.m_nickname, "joins the chat") + + def rebuildHistory(self): + history = '\n'.join(self.m_messages) + self.chatHistory.setPlainText(history) + + @pyqtSlot(str, str) + def messageSlot(self, nickname, text): + self.m_messages.append("<%s> %s" % (nickname, text)) + + if len(self.m_messages) > 100: + self.m_messages.pop(0) + + self.rebuildHistory() + + @pyqtSlot(str, str) + def actionSlot(self, nickname, text): + self.m_messages.append("* %s %s" % (nickname, text)) + + if len(self.m_messages) > 100: + self.m_messages.pop(0) + + self.rebuildHistory() + + @pyqtSlot(str) + def textChangedSlot(self, newText): + self.sendButton.setEnabled(newText != '') + + @pyqtSlot() + def sendClickedSlot(self): + msg = QDBusMessage.createSignal('/', 'org.example.chat', 'message') + msg << self.m_nickname << self.messageLineEdit.text() + QDBusConnection.sessionBus().send(msg) + self.messageLineEdit.setText('') + + @pyqtSlot() + def changeNickname(self): + dialog = NicknameDialog(self) + + if dialog.exec_() == QDialog.Accepted: + old = self.m_nickname + self.m_nickname = dialog.nickname.text().strip() + self.action.emit(old, "is now known as %s" % self.m_nickname) + + @pyqtSlot() + def aboutQt(self): + QMessageBox.aboutQt(self) + + @pyqtSlot() + def exiting(self): + self.action.emit(self.m_nickname, "leaves the chat") + + +class NicknameDialog(QDialog, Ui_NicknameDialog): + + def __init__(self, parent=None): + super(NicknameDialog, self).__init__(parent) + + self.setupUi(self) + + +if __name__ == '__main__': + import sys + + app = QApplication(sys.argv) + + if not QDBusConnection.sessionBus().isConnected(): + sys.stderr.write("Cannot connect to the D-Bus session bus.\n" + "Please check your system settings and try again.\n") + sys.exit(1) + + chat = ChatMainWindow() + chat.show() + + sys.exit(app.exec_()) diff --git a/examples/dbus/chat/chatmainwindow.ui b/examples/dbus/chat/chatmainwindow.ui new file mode 100644 index 0000000..537bad5 --- /dev/null +++ b/examples/dbus/chat/chatmainwindow.ui @@ -0,0 +1,185 @@ + + + + + ChatMainWindow + + + + 0 + 0 + 800 + 600 + + + + Qt D-Bus Chat + + + + + 9 + + + 6 + + + + + 0 + + + 6 + + + + + false + + + Messages sent and received from other users + + + true + + + + + + + 0 + + + 6 + + + + + Message: + + + messageLineEdit + + + + + + + + + + + 1 + 0 + 0 + 0 + + + + Sends a message to other people + + + + + + Send + + + + + + + + + + + + + 0 + 0 + 800 + 31 + + + + + Help + + + + + + File + + + + + + + + + + + + Quit + + + Ctrl+Q + + + + + About Qt... + + + + + Change nickname... + + + Ctrl+N + + + + + + chatHistory + messageLineEdit + sendButton + + + + + messageLineEdit + returnPressed() + sendButton + animateClick() + + + 299 + 554 + + + 744 + 551 + + + + + actionQuit + triggered(bool) + ChatMainWindow + close() + + + -1 + -1 + + + 399 + 299 + + + + + diff --git a/examples/dbus/chat/chatsetnickname.ui b/examples/dbus/chat/chatsetnickname.ui new file mode 100644 index 0000000..fb9894e --- /dev/null +++ b/examples/dbus/chat/chatsetnickname.ui @@ -0,0 +1,149 @@ + + + + + NicknameDialog + + + + 0 + 0 + 396 + 105 + + + + + 1 + 1 + 0 + 0 + + + + Set nickname + + + + 9 + + + 6 + + + + + 0 + + + 6 + + + + + + 1 + 1 + 0 + 0 + + + + New nickname: + + + + + + + + + + + + 0 + + + 6 + + + + + Qt::Horizontal + + + + 131 + 31 + + + + + + + + OK + + + + + + + Cancel + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + okButton + clicked() + NicknameDialog + accept() + + + 278 + 253 + + + 96 + 254 + + + + + cancelButton + clicked() + NicknameDialog + reject() + + + 369 + 253 + + + 179 + 282 + + + + + diff --git a/examples/dbus/chat/ui_chatmainwindow.py b/examples/dbus/chat/ui_chatmainwindow.py new file mode 100644 index 0000000..db629df --- /dev/null +++ b/examples/dbus/chat/ui_chatmainwindow.py @@ -0,0 +1,99 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'chatmainwindow.ui' +# +# Created: Fri Jul 26 06:48:06 2013 +# by: PyQt5 UI code generator 5.0.1-snapshot-2a99e59669ee +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_ChatMainWindow(object): + def setupUi(self, ChatMainWindow): + ChatMainWindow.setObjectName("ChatMainWindow") + ChatMainWindow.resize(800, 600) + self.centralwidget = QtWidgets.QWidget(ChatMainWindow) + self.centralwidget.setObjectName("centralwidget") + self.hboxlayout = QtWidgets.QHBoxLayout(self.centralwidget) + self.hboxlayout.setContentsMargins(9, 9, 9, 9) + self.hboxlayout.setSpacing(6) + self.hboxlayout.setObjectName("hboxlayout") + self.vboxlayout = QtWidgets.QVBoxLayout() + self.vboxlayout.setContentsMargins(0, 0, 0, 0) + self.vboxlayout.setSpacing(6) + self.vboxlayout.setObjectName("vboxlayout") + self.chatHistory = QtWidgets.QTextBrowser(self.centralwidget) + self.chatHistory.setAcceptDrops(False) + self.chatHistory.setAcceptRichText(True) + self.chatHistory.setObjectName("chatHistory") + self.vboxlayout.addWidget(self.chatHistory) + self.hboxlayout1 = QtWidgets.QHBoxLayout() + self.hboxlayout1.setContentsMargins(0, 0, 0, 0) + self.hboxlayout1.setSpacing(6) + self.hboxlayout1.setObjectName("hboxlayout1") + self.label = QtWidgets.QLabel(self.centralwidget) + self.label.setObjectName("label") + self.hboxlayout1.addWidget(self.label) + self.messageLineEdit = QtWidgets.QLineEdit(self.centralwidget) + self.messageLineEdit.setObjectName("messageLineEdit") + self.hboxlayout1.addWidget(self.messageLineEdit) + self.sendButton = QtWidgets.QPushButton(self.centralwidget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy(1), QtWidgets.QSizePolicy.Policy(0)) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.sendButton.sizePolicy().hasHeightForWidth()) + self.sendButton.setSizePolicy(sizePolicy) + self.sendButton.setWhatsThis("") + self.sendButton.setObjectName("sendButton") + self.hboxlayout1.addWidget(self.sendButton) + self.vboxlayout.addLayout(self.hboxlayout1) + self.hboxlayout.addLayout(self.vboxlayout) + ChatMainWindow.setCentralWidget(self.centralwidget) + self.menubar = QtWidgets.QMenuBar(ChatMainWindow) + self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 31)) + self.menubar.setObjectName("menubar") + self.menuQuit = QtWidgets.QMenu(self.menubar) + self.menuQuit.setObjectName("menuQuit") + self.menuFile = QtWidgets.QMenu(self.menubar) + self.menuFile.setObjectName("menuFile") + ChatMainWindow.setMenuBar(self.menubar) + self.statusbar = QtWidgets.QStatusBar(ChatMainWindow) + self.statusbar.setObjectName("statusbar") + ChatMainWindow.setStatusBar(self.statusbar) + self.actionQuit = QtWidgets.QAction(ChatMainWindow) + self.actionQuit.setObjectName("actionQuit") + self.actionAboutQt = QtWidgets.QAction(ChatMainWindow) + self.actionAboutQt.setObjectName("actionAboutQt") + self.actionChangeNickname = QtWidgets.QAction(ChatMainWindow) + self.actionChangeNickname.setObjectName("actionChangeNickname") + self.menuQuit.addAction(self.actionAboutQt) + self.menuFile.addAction(self.actionChangeNickname) + self.menuFile.addSeparator() + self.menuFile.addAction(self.actionQuit) + self.menubar.addAction(self.menuFile.menuAction()) + self.menubar.addAction(self.menuQuit.menuAction()) + self.label.setBuddy(self.messageLineEdit) + + self.retranslateUi(ChatMainWindow) + self.messageLineEdit.returnPressed.connect(self.sendButton.animateClick) + self.actionQuit.triggered['bool'].connect(ChatMainWindow.close) + QtCore.QMetaObject.connectSlotsByName(ChatMainWindow) + ChatMainWindow.setTabOrder(self.chatHistory, self.messageLineEdit) + ChatMainWindow.setTabOrder(self.messageLineEdit, self.sendButton) + + def retranslateUi(self, ChatMainWindow): + _translate = QtCore.QCoreApplication.translate + ChatMainWindow.setWindowTitle(_translate("ChatMainWindow", "Qt D-Bus Chat")) + self.chatHistory.setToolTip(_translate("ChatMainWindow", "Messages sent and received from other users")) + self.label.setText(_translate("ChatMainWindow", "Message:")) + self.sendButton.setToolTip(_translate("ChatMainWindow", "Sends a message to other people")) + self.sendButton.setText(_translate("ChatMainWindow", "Send")) + self.menuQuit.setTitle(_translate("ChatMainWindow", "Help")) + self.menuFile.setTitle(_translate("ChatMainWindow", "File")) + self.actionQuit.setText(_translate("ChatMainWindow", "Quit")) + self.actionQuit.setShortcut(_translate("ChatMainWindow", "Ctrl+Q")) + self.actionAboutQt.setText(_translate("ChatMainWindow", "About Qt...")) + self.actionChangeNickname.setText(_translate("ChatMainWindow", "Change nickname...")) + self.actionChangeNickname.setShortcut(_translate("ChatMainWindow", "Ctrl+N")) + diff --git a/examples/dbus/chat/ui_chatsetnickname.py b/examples/dbus/chat/ui_chatsetnickname.py new file mode 100644 index 0000000..93e1c0a --- /dev/null +++ b/examples/dbus/chat/ui_chatsetnickname.py @@ -0,0 +1,68 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'chatsetnickname.ui' +# +# Created: Fri Jul 26 06:48:20 2013 +# by: PyQt5 UI code generator 5.0.1-snapshot-2a99e59669ee +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_NicknameDialog(object): + def setupUi(self, NicknameDialog): + NicknameDialog.setObjectName("NicknameDialog") + NicknameDialog.resize(396, 105) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy(1), QtWidgets.QSizePolicy.Policy(1)) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(NicknameDialog.sizePolicy().hasHeightForWidth()) + NicknameDialog.setSizePolicy(sizePolicy) + self.vboxlayout = QtWidgets.QVBoxLayout(NicknameDialog) + self.vboxlayout.setContentsMargins(9, 9, 9, 9) + self.vboxlayout.setSpacing(6) + self.vboxlayout.setObjectName("vboxlayout") + self.vboxlayout1 = QtWidgets.QVBoxLayout() + self.vboxlayout1.setContentsMargins(0, 0, 0, 0) + self.vboxlayout1.setSpacing(6) + self.vboxlayout1.setObjectName("vboxlayout1") + self.label = QtWidgets.QLabel(NicknameDialog) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy(1), QtWidgets.QSizePolicy.Policy(1)) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label.sizePolicy().hasHeightForWidth()) + self.label.setSizePolicy(sizePolicy) + self.label.setObjectName("label") + self.vboxlayout1.addWidget(self.label) + self.nickname = QtWidgets.QLineEdit(NicknameDialog) + self.nickname.setObjectName("nickname") + self.vboxlayout1.addWidget(self.nickname) + self.vboxlayout.addLayout(self.vboxlayout1) + self.hboxlayout = QtWidgets.QHBoxLayout() + self.hboxlayout.setContentsMargins(0, 0, 0, 0) + self.hboxlayout.setSpacing(6) + self.hboxlayout.setObjectName("hboxlayout") + spacerItem = QtWidgets.QSpacerItem(131, 31, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.hboxlayout.addItem(spacerItem) + self.okButton = QtWidgets.QPushButton(NicknameDialog) + self.okButton.setObjectName("okButton") + self.hboxlayout.addWidget(self.okButton) + self.cancelButton = QtWidgets.QPushButton(NicknameDialog) + self.cancelButton.setObjectName("cancelButton") + self.hboxlayout.addWidget(self.cancelButton) + spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.hboxlayout.addItem(spacerItem1) + self.vboxlayout.addLayout(self.hboxlayout) + + self.retranslateUi(NicknameDialog) + self.okButton.clicked.connect(NicknameDialog.accept) + self.cancelButton.clicked.connect(NicknameDialog.reject) + QtCore.QMetaObject.connectSlotsByName(NicknameDialog) + + def retranslateUi(self, NicknameDialog): + _translate = QtCore.QCoreApplication.translate + NicknameDialog.setWindowTitle(_translate("NicknameDialog", "Set nickname")) + self.label.setText(_translate("NicknameDialog", "New nickname:")) + self.okButton.setText(_translate("NicknameDialog", "OK")) + self.cancelButton.setText(_translate("NicknameDialog", "Cancel")) + diff --git a/examples/dbus/listnames.py b/examples/dbus/listnames.py new file mode 100755 index 0000000..0333fba --- /dev/null +++ b/examples/dbus/listnames.py @@ -0,0 +1,98 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import sys + +from PyQt5.QtCore import QCoreApplication +from PyQt5.QtDBus import QDBusConnection, QDBusInterface + + +def method1(): + sys.stdout.write("Method 1:\n") + + reply = QDBusConnection.sessionBus().interface().registeredServiceNames() + if not reply.isValid(): + sys.stdout.write("Error: %s\n" % reply.error().message()) + sys.exit(1) + + # Mimic the output from the C++ version. + for name in reply.value(): + sys.stdout.write('"%s"\n' % name) + + +def method2(): + sys.stdout.write("Method 2:\n") + + bus = QDBusConnection.sessionBus() + dbus_iface = QDBusInterface('org.freedesktop.DBus', + '/org/freedesktop/DBus', 'org.freedesktop.DBus', bus) + names = dbus_iface.call('ListNames').arguments()[0] + + # Mimic the output from the C++ version. + sys.stdout.write('QVariant(QStringList, ("%s") )\n' % '", "'.join(names)) + + +def method3(): + sys.stdout.write("Method 3:\n") + + names = QDBusConnection.sessionBus().interface().registeredServiceNames().value() + + # Mimic the output from the C++ version. + sys.stdout.write('("%s")\n' % '", "'.join(names)) + + +if __name__ == '__main__': + app = QCoreApplication(sys.argv) + + if not QDBusConnection.sessionBus().isConnected(): + sys.stderr.write("Cannot connect to the D-Bus session bus.\n" + "To start it, run:\n" + "\teval `dbus-launch --auto-syntax`\n"); + sys.exit(1) + + method1() + method2() + method3() + + sys.exit() diff --git a/examples/dbus/pingpong/ping.py b/examples/dbus/pingpong/ping.py new file mode 100644 index 0000000..01fc788 --- /dev/null +++ b/examples/dbus/pingpong/ping.py @@ -0,0 +1,75 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import sys + +from PyQt5.QtCore import QCoreApplication +from PyQt5.QtDBus import QDBusConnection, QDBusInterface, QDBusReply + + +if __name__ == '__main__': + app = QCoreApplication(sys.argv) + + if not QDBusConnection.sessionBus().isConnected(): + sys.stderr.write("Cannot connect to the D-Bus session bus.\n" + "To start it, run:\n" + "\teval `dbus-launch --auto-syntax`\n"); + sys.exit(1) + + iface = QDBusInterface('org.example.QtDBus.PingExample', '/', '', + QDBusConnection.sessionBus()) + + if iface.isValid(): + msg = iface.call('ping', sys.argv[1] if len(sys.argv) > 1 else "") + reply = QDBusReply(msg) + + if reply.isValid(): + sys.stdout.write("Reply was: %s\n" % reply.value()) + sys.exit() + + sys.stderr.write("Call failed: %s\n" % reply.error().message()) + sys.exit(1) + + sys.stderr.write("%s\n" % QDBusConnection.sessionBus().lastError().message()) + sys.exit(1) diff --git a/examples/dbus/pingpong/pong.py b/examples/dbus/pingpong/pong.py new file mode 100644 index 0000000..fc94d93 --- /dev/null +++ b/examples/dbus/pingpong/pong.py @@ -0,0 +1,77 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import sys + +from PyQt5.QtCore import pyqtSlot, QCoreApplication, QMetaObject, QObject +from PyQt5.QtDBus import QDBusConnection + + +class Pong(QObject): + + @pyqtSlot(str, result=str) + def ping(self, arg): + QMetaObject.invokeMethod(QCoreApplication.instance(), 'quit') + + return "ping(\"%s\") got called" % arg + + +if __name__ == '__main__': + app = QCoreApplication(sys.argv) + + if not QDBusConnection.sessionBus().isConnected(): + sys.stderr.write("Cannot connect to the D-Bus session bus.\n" + "To start it, run:\n" + "\teval `dbus-launch --auto-syntax`\n"); + sys.exit(1) + + if not QDBusConnection.sessionBus().registerService('org.example.QtDBus.PingExample'): + sys.stderr.write("%s\n" % QDBusConnection.sessionBus().lastError().message()) + sys.exit(1) + + pong = Pong() + QDBusConnection.sessionBus().registerObject('/', pong, + QDBusConnection.ExportAllSlots) + + sys.exit(app.exec_()) diff --git a/examples/dbus/remotecontrolledcar/car/car.py b/examples/dbus/remotecontrolledcar/car/car.py new file mode 100755 index 0000000..0e26333 --- /dev/null +++ b/examples/dbus/remotecontrolledcar/car/car.py @@ -0,0 +1,198 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import math + +from PyQt5.QtCore import pyqtSlot, Q_CLASSINFO, QRectF, Qt +from PyQt5.QtGui import QBrush, QPainter, QTransform +from PyQt5.QtWidgets import (QApplication, QGraphicsItem, QGraphicsObject, + QGraphicsScene, QGraphicsView) +from PyQt5.QtDBus import QDBusAbstractAdaptor, QDBusConnection + + +class Car(QGraphicsObject): + + def __init__(self): + super(Car, self).__init__() + + self.color = QBrush(Qt.green) + self.wheelsAngle = 0.0 + self.speed = 0.0 + + self.startTimer(1000 // 33) + self.setFlag(QGraphicsItem.ItemIsMovable, True) + self.setFlag(QGraphicsItem.ItemIsFocusable, True) + + def accelerate(self): + if self.speed < 10: + self.speed += 1 + + def decelerate(self): + if self.speed > -10: + self.speed -= 1 + + def turnLeft(self): + if self.wheelsAngle > -30: + self.wheelsAngle -= 5 + + def turnRight(self): + if self.wheelsAngle < 30: + self.wheelsAngle += 5 + + def boundingRect(self): + return QRectF(-35, -81, 70, 115) + + def timerEvent(self, event): + axelDistance = 54.0 + wheelsAngleRads = (self.wheelsAngle * math.pi) / 180 + turnDistance = math.cos(wheelsAngleRads) * axelDistance * 2 + turnRateRads = wheelsAngleRads / turnDistance + turnRate = (turnRateRads * 180) / math.pi + rotation = self.speed * turnRate + + self.setTransform(QTransform().rotate(rotation), True) + self.setTransform(QTransform.fromTranslate(0, -self.speed), True) + self.update() + + def paint(self, painter, option, widget): + painter.setBrush(Qt.gray) + painter.drawRect(-20, -58, 40, 2) # Front axel + painter.drawRect(-20, 7, 40, 2) # Rear axel + + painter.setBrush(self.color) + painter.drawRect(-25, -79, 50, 10) # Front wing + + painter.drawEllipse(-25, -48, 50, 20) # Side pods + painter.drawRect(-25, -38, 50, 35) # Side pods + painter.drawRect(-5, 9, 10, 10) # Back pod + + painter.drawEllipse(-10, -81, 20, 100) # Main body + + painter.drawRect(-17, 19, 34, 15) # Rear wing + + painter.setBrush(Qt.black) + painter.drawPie(-5, -51, 10, 15, 0, 180 * 16) + painter.drawRect(-5, -44, 10, 10) # Cockpit + + painter.save() + painter.translate(-20, -58) + painter.rotate(self.wheelsAngle) + painter.drawRect(-10, -7, 10, 15) # Front left + painter.restore() + + painter.save() + painter.translate(20, -58) + painter.rotate(self.wheelsAngle) + painter.drawRect(0, -7, 10, 15) # Front right + painter.restore() + + painter.drawRect(-30, 0, 12, 17) # Rear left + painter.drawRect(19, 0, 12, 17) # Rear right + + +class CarInterfaceAdaptor(QDBusAbstractAdaptor): + + Q_CLASSINFO("D-Bus Interface", 'org.example.Examples.CarInterface') + + Q_CLASSINFO("D-Bus Introspection", '' + ' \n' + ' \n' + ' \n' + ' \n' + ' \n' + ' \n' + '') + + def __init__(self, parent): + super(CarInterfaceAdaptor, self).__init__(parent) + + self.setAutoRelaySignals(True) + + @pyqtSlot() + def accelerate(self): + self.parent().accelerate() + + @pyqtSlot() + def decelerate(self): + self.parent().decelerate() + + @pyqtSlot() + def turnLeft(self): + self.parent().turnLeft() + + @pyqtSlot() + def turnRight(self): + self.parent().turnRight() + + +if __name__ == '__main__': + import sys + + app = QApplication(sys.argv) + + scene = QGraphicsScene() + scene.setSceneRect(-500, -500, 1000, 1000) + scene.setItemIndexMethod(QGraphicsScene.NoIndex) + + car = Car() + scene.addItem(car) + + view = QGraphicsView(scene) + view.setRenderHint(QPainter.Antialiasing) + view.setBackgroundBrush(Qt.darkGray) + view.setWindowTitle("Qt DBus Controlled Car") + view.resize(400, 300) + view.show() + + a = CarInterfaceAdaptor(car) + connection = QDBusConnection.sessionBus() + connection.registerObject('/Car', car) + connection.registerService('org.example.CarExample') + + rc = app.exec_() + + # Make sure things get destroyed in the right order. + del view + + sys.exit(rc) diff --git a/examples/dbus/remotecontrolledcar/controller/controller.py b/examples/dbus/remotecontrolledcar/controller/controller.py new file mode 100755 index 0000000..cea7726 --- /dev/null +++ b/examples/dbus/remotecontrolledcar/controller/controller.py @@ -0,0 +1,111 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtWidgets import QApplication, QWidget +from PyQt5.QtDBus import QDBusAbstractInterface, QDBusConnection + +from ui_controller import Ui_Controller + + +class CarInterface(QDBusAbstractInterface): + + def __init__(self, service, path, connection, parent=None): + super(CarInterface, self).__init__(service, path, + 'org.example.Examples.CarInterface', connection, parent) + + def accelerate(self): + self.asyncCall('accelerate') + + def decelerate(self): + self.asyncCall('decelerate') + + def turnLeft(self): + self.asyncCall('turnLeft') + + def turnRight(self): + self.asyncCall('turnRight') + + +class Controller(QWidget): + + def __init__(self, parent=None): + super(Controller, self).__init__(parent) + + self.ui = Ui_Controller() + + self.ui.setupUi(self) + + self.car = CarInterface('org.example.CarExample', '/Car', + QDBusConnection.sessionBus(), self) + + self.startTimer(1000) + + def timerEvent(self, event): + if self.car.isValid(): + self.ui.label.setText("connected") + else: + self.ui.label.setText("disconnected") + + def on_accelerate_clicked(self): + self.car.accelerate() + + def on_decelerate_clicked(self): + self.car.decelerate() + + def on_left_clicked(self): + self.car.turnLeft() + + def on_right_clicked(self): + self.car.turnRight() + + +if __name__ == '__main__': + import sys + + app = QApplication(sys.argv) + + controller = Controller() + controller.show() + + sys.exit(app.exec_()) diff --git a/examples/dbus/remotecontrolledcar/controller/controller.ui b/examples/dbus/remotecontrolledcar/controller/controller.ui new file mode 100644 index 0000000..379015b --- /dev/null +++ b/examples/dbus/remotecontrolledcar/controller/controller.ui @@ -0,0 +1,64 @@ + + Controller + + + + 0 + 0 + 255 + 111 + + + + Controller + + + + 9 + + + 6 + + + + + Controller + + + Qt::AlignCenter + + + + + + + Decelerate + + + + + + + Accelerate + + + + + + + Right + + + + + + + Left + + + + + + + + diff --git a/examples/dbus/remotecontrolledcar/controller/ui_controller.py b/examples/dbus/remotecontrolledcar/controller/ui_controller.py new file mode 100644 index 0000000..a5ca26c --- /dev/null +++ b/examples/dbus/remotecontrolledcar/controller/ui_controller.py @@ -0,0 +1,48 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'controller.ui' +# +# Created: Fri May 31 18:58:37 2013 +# by: PyQt5 UI code generator 5.0-snapshot-dd808c1bcced +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_Controller(object): + def setupUi(self, Controller): + Controller.setObjectName("Controller") + Controller.resize(255, 111) + self.gridlayout = QtWidgets.QGridLayout(Controller) + self.gridlayout.setContentsMargins(9, 9, 9, 9) + self.gridlayout.setSpacing(6) + self.gridlayout.setObjectName("gridlayout") + self.label = QtWidgets.QLabel(Controller) + self.label.setAlignment(QtCore.Qt.AlignCenter) + self.label.setObjectName("label") + self.gridlayout.addWidget(self.label, 1, 1, 1, 1) + self.decelerate = QtWidgets.QPushButton(Controller) + self.decelerate.setObjectName("decelerate") + self.gridlayout.addWidget(self.decelerate, 2, 1, 1, 1) + self.accelerate = QtWidgets.QPushButton(Controller) + self.accelerate.setObjectName("accelerate") + self.gridlayout.addWidget(self.accelerate, 0, 1, 1, 1) + self.right = QtWidgets.QPushButton(Controller) + self.right.setObjectName("right") + self.gridlayout.addWidget(self.right, 1, 2, 1, 1) + self.left = QtWidgets.QPushButton(Controller) + self.left.setObjectName("left") + self.gridlayout.addWidget(self.left, 1, 0, 1, 1) + + self.retranslateUi(Controller) + QtCore.QMetaObject.connectSlotsByName(Controller) + + def retranslateUi(self, Controller): + _translate = QtCore.QCoreApplication.translate + Controller.setWindowTitle(_translate("Controller", "Controller")) + self.label.setText(_translate("Controller", "Controller")) + self.decelerate.setText(_translate("Controller", "Decelerate")) + self.accelerate.setText(_translate("Controller", "Accelerate")) + self.right.setText(_translate("Controller", "Right")) + self.left.setText(_translate("Controller", "Left")) + diff --git a/examples/designer/README b/examples/designer/README new file mode 100644 index 0000000..f606ed2 --- /dev/null +++ b/examples/designer/README @@ -0,0 +1,23 @@ +Qt Designer is a capable graphical user interface designer that lets you +create and configure forms without writing code. GUIs created with +Qt Designer can be converted to Python code or created at run-time. + +Some of the examples in this directory can be run from the example launcher; +others can only be used from within Qt Designer. + +Documentation for these examples can be found via the "Tutorial and Examples" +link in the main Qt documentation. + + +Finding the PyQt Examples and Demos launcher +============================================ + +On Windows: + +The launcher can be accessed via the Windows Start menu. Select the menu +entry entitled "Examples and Demos" entry in the submenu containing PyQt5. + +On all platforms: + +The source code for the launcher can be found in the examples/demos/qtdemo +directory in the PyQt package. diff --git a/examples/designer/calculatorform/calculatorform.py b/examples/designer/calculatorform/calculatorform.py new file mode 100755 index 0000000..810ceef --- /dev/null +++ b/examples/designer/calculatorform/calculatorform.py @@ -0,0 +1,74 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import pyqtSlot +from PyQt5.QtWidgets import QApplication, QWidget + +from ui_calculatorform import Ui_CalculatorForm + + +class CalculatorForm(QWidget): + def __init__(self, parent=None): + super(CalculatorForm, self).__init__(parent) + + self.ui = Ui_CalculatorForm() + + self.ui.setupUi(self) + + @pyqtSlot(int) + def on_inputSpinBox1_valueChanged(self, value): + self.ui.outputWidget.setText(str(value + self.ui.inputSpinBox2.value())) + + @pyqtSlot(int) + def on_inputSpinBox2_valueChanged(self, value): + self.ui.outputWidget.setText(str(value + self.ui.inputSpinBox1.value())) + + +if __name__ == '__main__': + import sys + + app = QApplication(sys.argv) + calculator = CalculatorForm() + calculator.show() + sys.exit(app.exec_()) diff --git a/examples/designer/calculatorform/calculatorform.ui b/examples/designer/calculatorform/calculatorform.ui new file mode 100644 index 0000000..3a95639 --- /dev/null +++ b/examples/designer/calculatorform/calculatorform.ui @@ -0,0 +1,284 @@ + + + + + CalculatorForm + + + CalculatorForm + + + + 0 + 0 + 400 + 300 + + + + + 5 + 5 + 0 + 0 + + + + Calculator Form + + + + + + + 9 + + + 6 + + + + + horizontalSpacer + + + + 239 + 9 + 152 + 52 + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + label_3_2 + + + + 169 + 9 + 20 + 52 + + + + = + + + Qt::AlignCenter + + + + + + + + + + 1 + + + 6 + + + + + label_2_2_2 + + + + 1 + 1 + 36 + 17 + + + + Output + + + + + + + outputWidget + + + + 1 + 24 + 36 + 27 + + + + QFrame::Box + + + QFrame::Sunken + + + 0 + + + Qt::AlignAbsolute|Qt::AlignBottom|Qt::AlignCenter|Qt::AlignHCenter|Qt::AlignHorizontal_Mask|Qt::AlignJustify|Qt::AlignLeading|Qt::AlignLeft|Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing|Qt::AlignVCenter|Qt::AlignVertical_Mask + + + + + + + + + verticalSpacer + + + + 89 + 67 + 20 + 224 + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + 1 + + + 6 + + + + + label_2 + + + + 1 + 1 + 46 + 19 + + + + Input 2 + + + + + + + inputSpinBox2 + + + + 1 + 26 + 46 + 25 + + + + + + + + + + label_3 + + + + 63 + 9 + 20 + 52 + + + + + + + + Qt::AlignCenter + + + + + + + + + + 1 + + + 6 + + + + + label + + + + 1 + 1 + 46 + 19 + + + + Input 1 + + + + + + + inputSpinBox1 + + + + 1 + 26 + 46 + 25 + + + + + + + + + + + + diff --git a/examples/designer/calculatorform/ui_calculatorform.py b/examples/designer/calculatorform/ui_calculatorform.py new file mode 100644 index 0000000..2b32eb0 --- /dev/null +++ b/examples/designer/calculatorform/ui_calculatorform.py @@ -0,0 +1,94 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'calculatorform.ui' +# +# Created: Fri Jul 26 06:41:48 2013 +# by: PyQt5 UI code generator 5.0.1-snapshot-2a99e59669ee +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_CalculatorForm(object): + def setupUi(self, CalculatorForm): + CalculatorForm.setObjectName("CalculatorForm") + CalculatorForm.resize(400, 300) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy(5), QtWidgets.QSizePolicy.Policy(5)) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(CalculatorForm.sizePolicy().hasHeightForWidth()) + CalculatorForm.setSizePolicy(sizePolicy) + self.gridlayout = QtWidgets.QGridLayout(CalculatorForm) + self.gridlayout.setContentsMargins(9, 9, 9, 9) + self.gridlayout.setSpacing(6) + self.gridlayout.setObjectName("gridlayout") + spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.gridlayout.addItem(spacerItem, 0, 6, 1, 1) + self.label_3_2 = QtWidgets.QLabel(CalculatorForm) + self.label_3_2.setGeometry(QtCore.QRect(169, 9, 20, 52)) + self.label_3_2.setAlignment(QtCore.Qt.AlignCenter) + self.label_3_2.setObjectName("label_3_2") + self.gridlayout.addWidget(self.label_3_2, 0, 4, 1, 1) + self.vboxlayout = QtWidgets.QVBoxLayout() + self.vboxlayout.setContentsMargins(1, 1, 1, 1) + self.vboxlayout.setSpacing(6) + self.vboxlayout.setObjectName("vboxlayout") + self.label_2_2_2 = QtWidgets.QLabel(CalculatorForm) + self.label_2_2_2.setGeometry(QtCore.QRect(1, 1, 36, 17)) + self.label_2_2_2.setObjectName("label_2_2_2") + self.vboxlayout.addWidget(self.label_2_2_2) + self.outputWidget = QtWidgets.QLabel(CalculatorForm) + self.outputWidget.setGeometry(QtCore.QRect(1, 24, 36, 27)) + self.outputWidget.setFrameShape(QtWidgets.QFrame.Box) + self.outputWidget.setFrameShadow(QtWidgets.QFrame.Sunken) + self.outputWidget.setAlignment(QtCore.Qt.AlignAbsolute|QtCore.Qt.AlignBottom|QtCore.Qt.AlignCenter|QtCore.Qt.AlignHCenter|QtCore.Qt.AlignHorizontal_Mask|QtCore.Qt.AlignJustify|QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignRight|QtCore.Qt.AlignTop|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter|QtCore.Qt.AlignVertical_Mask) + self.outputWidget.setObjectName("outputWidget") + self.vboxlayout.addWidget(self.outputWidget) + self.gridlayout.addLayout(self.vboxlayout, 0, 5, 1, 1) + spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) + self.gridlayout.addItem(spacerItem1, 1, 2, 1, 1) + self.vboxlayout1 = QtWidgets.QVBoxLayout() + self.vboxlayout1.setContentsMargins(1, 1, 1, 1) + self.vboxlayout1.setSpacing(6) + self.vboxlayout1.setObjectName("vboxlayout1") + self.label_2 = QtWidgets.QLabel(CalculatorForm) + self.label_2.setGeometry(QtCore.QRect(1, 1, 46, 19)) + self.label_2.setObjectName("label_2") + self.vboxlayout1.addWidget(self.label_2) + self.inputSpinBox2 = QtWidgets.QSpinBox(CalculatorForm) + self.inputSpinBox2.setGeometry(QtCore.QRect(1, 26, 46, 25)) + self.inputSpinBox2.setObjectName("inputSpinBox2") + self.vboxlayout1.addWidget(self.inputSpinBox2) + self.gridlayout.addLayout(self.vboxlayout1, 0, 3, 1, 1) + self.label_3 = QtWidgets.QLabel(CalculatorForm) + self.label_3.setGeometry(QtCore.QRect(63, 9, 20, 52)) + self.label_3.setAlignment(QtCore.Qt.AlignCenter) + self.label_3.setObjectName("label_3") + self.gridlayout.addWidget(self.label_3, 0, 1, 1, 1) + self.vboxlayout2 = QtWidgets.QVBoxLayout() + self.vboxlayout2.setContentsMargins(1, 1, 1, 1) + self.vboxlayout2.setSpacing(6) + self.vboxlayout2.setObjectName("vboxlayout2") + self.label = QtWidgets.QLabel(CalculatorForm) + self.label.setGeometry(QtCore.QRect(1, 1, 46, 19)) + self.label.setObjectName("label") + self.vboxlayout2.addWidget(self.label) + self.inputSpinBox1 = QtWidgets.QSpinBox(CalculatorForm) + self.inputSpinBox1.setGeometry(QtCore.QRect(1, 26, 46, 25)) + self.inputSpinBox1.setObjectName("inputSpinBox1") + self.vboxlayout2.addWidget(self.inputSpinBox1) + self.gridlayout.addLayout(self.vboxlayout2, 0, 0, 1, 1) + + self.retranslateUi(CalculatorForm) + QtCore.QMetaObject.connectSlotsByName(CalculatorForm) + + def retranslateUi(self, CalculatorForm): + _translate = QtCore.QCoreApplication.translate + CalculatorForm.setWindowTitle(_translate("CalculatorForm", "Calculator Form")) + self.label_3_2.setText(_translate("CalculatorForm", "=")) + self.label_2_2_2.setText(_translate("CalculatorForm", "Output")) + self.outputWidget.setText(_translate("CalculatorForm", "0")) + self.label_2.setText(_translate("CalculatorForm", "Input 2")) + self.label_3.setText(_translate("CalculatorForm", "+")) + self.label.setText(_translate("CalculatorForm", "Input 1")) + diff --git a/examples/designer/plugins/plugins.py b/examples/designer/plugins/plugins.py new file mode 100755 index 0000000..c0f527c --- /dev/null +++ b/examples/designer/plugins/plugins.py @@ -0,0 +1,86 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Riverbank Computing Limited nor the names of +## its contributors may be used to endorse or promote products +## derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## +############################################################################# + + +import sys +import os + +from PyQt5.QtCore import QLibraryInfo, QProcess, QProcessEnvironment +from PyQt5.QtWidgets import QApplication, QMessageBox + + +app = QApplication(sys.argv) + +QMessageBox.information(None, "PyQt Designer Plugins", + "

    This example will start Qt Designer when you click the OK " + "button.

    " + "

    Before doing so it sets the PYQTDESIGNERPATH environment " + "variable to the python directory that is part of this " + "example. This directory contains all the example Python plugin " + "modules.

    " + "

    It also sets the PYTHONPATH environment variable to the " + "widgets directory that is also part of this example. This " + "directory contains the Python modules that implement the example " + "custom widgets.

    " + "

    All of the example custom widgets should then appear in " + "Designer's widget box in the PyQt Examples group.

    ") + +# Tell Qt Designer where it can find the directory containing the plugins and +# Python where it can find the widgets. +base = os.path.dirname(__file__) +env = QProcessEnvironment.systemEnvironment() +env.insert('PYQTDESIGNERPATH', os.path.join(base, 'python')) +env.insert('PYTHONPATH', os.path.join(base, 'widgets')) + +# Start Designer. +designer = QProcess() +designer.setProcessEnvironment(env) + +designer_bin = QLibraryInfo.location(QLibraryInfo.BinariesPath) + +if sys.platform == 'darwin': + designer_bin += '/Designer.app/Contents/MacOS/Designer' +else: + designer_bin += '/designer' + +designer.start(designer_bin) +designer.waitForFinished(-1) + +sys.exit(designer.exitCode()) diff --git a/examples/designer/plugins/python/analogclockplugin.py b/examples/designer/plugins/python/analogclockplugin.py new file mode 100644 index 0000000..c401ddd --- /dev/null +++ b/examples/designer/plugins/python/analogclockplugin.py @@ -0,0 +1,195 @@ +#!/usr/bin/env python + +""" +analogclockplugin.py + +An analog clock custom widget plugin for Qt Designer. + +Copyright (C) 2006 David Boddie +Copyright (C) 2005-2006 Trolltech ASA. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +""" + +from PyQt5.QtGui import QIcon, QPixmap +from PyQt5.QtDesigner import QPyDesignerCustomWidgetPlugin + +from analogclock import PyAnalogClock + + +class PyAnalogClockPlugin(QPyDesignerCustomWidgetPlugin): + """PyAnalogClockPlugin(QPyDesignerCustomWidgetPlugin) + + Provides a Python custom plugin for Qt Designer by implementing the + QDesignerCustomWidgetPlugin via a PyQt-specific custom plugin class. + """ + + # The __init__() method is only used to set up the plugin and define its + # initialized variable. + def __init__(self, parent=None): + + super(PyAnalogClockPlugin, self).__init__(parent) + + self.initialized = False + + # The initialize() and isInitialized() methods allow the plugin to set up + # any required resources, ensuring that this can only happen once for each + # plugin. + def initialize(self, core): + + if self.initialized: + return + + self.initialized = True + + def isInitialized(self): + + return self.initialized + + # This factory method creates new instances of our custom widget with the + # appropriate parent. + def createWidget(self, parent): + return PyAnalogClock(parent) + + # This method returns the name of the custom widget class that is provided + # by this plugin. + def name(self): + return "PyAnalogClock" + + # Returns the name of the group in Qt Designer's widget box that this + # widget belongs to. + def group(self): + return "PyQt Examples" + + # Returns the icon used to represent the custom widget in Qt Designer's + # widget box. + def icon(self): + return QIcon(_logo_pixmap) + + # Returns a short description of the custom widget for use in a tool tip. + def toolTip(self): + return "" + + # Returns a short description of the custom widget for use in a "What's + # This?" help message for the widget. + def whatsThis(self): + return "" + + # Returns True if the custom widget acts as a container for other widgets; + # otherwise returns False. Note that plugins for custom containers also + # need to provide an implementation of the QDesignerContainerExtension + # interface if they need to add custom editing support to Qt Designer. + def isContainer(self): + return False + + # Returns an XML description of a custom widget instance that describes + # default values for its properties. Each custom widget created by this + # plugin will be configured using this description. + def domXml(self): + return '\n' \ + ' \n' \ + ' The current time\n' \ + ' \n' \ + ' \n' \ + ' The analog clock widget displays the current ' \ + 'time.\n' \ + ' \n' \ + '\n' + + # Returns the module containing the custom widget class. It may include + # a module path. + def includeFile(self): + return "analogclock" + + +# Define the image used for the icon. +_logo_16x16_xpm = [ + "16 16 58 1", + "L c #2d2d2d", + "N c #4f4f4f", + "K c #636363", + "J c #666666", + "I c #696969", + "D c #727272", + "F c #737373", + "O c #757575", + "G c #7f7f7f", + "o c #878787", + "t c #888888", + "Y c #898989", + "c c #8a8a8a", + "d c #8b8b8b", + "H c #8d8d8d", + "Q c #8f8f8f", + "b c #909090", + "M c #959595", + "g c #979797", + "n c #989898", + "x c #999999", + "0 c #9a9a9a", + "X c #9b9b9b", + "a c #9d9d9d", + "E c #9e9e9e", + "1 c #9f9f9f", + "T c #a0a0a0", + "v c #a1a1a1", + "r c #a2a2a2", + "B c #a6a6a6", + "R c #a7a7a7", + "3 c #a8a8a8", + "z c #aaaaaa", + "A c #ababab", + "m c #acacac", + "h c #adadad", + "u c #b1b1b1", + "q c #b2b2b2", + "V c #bfbfbf", + "W c #c6c6c6", + "w c #c7c7c7", + "s c #c8c8c8", + "p c #c9c9c9", + "k c #cdcdcd", + "l c #cfcfcf", + "2 c #d3d3d3", + "S c #d4d4d4", + "C c #d5d5d5", + "y c #d8d8d8", + "# c #d9d9d9", + "e c #dadada", + "i c #dbdbdb", + "P c #dcdcdc", + "U c #dfdfdf", + "j c #e1e1e1", + "f c #fbfbfb", + "Z c #fcfcfc", + ". c #ffffff", + "....#abcdbae....", + "..fghijkljimnf..", + ".fopjjjqrjjjstf.", + ".gsjjjjuvjjjjwx.", + "yvjjjjjzbjjjjjAi", + "BCjjjjjaDjjjjjiE", + "bjjjjjjEFjjjjjjG", + "HjjjjjjIJjjjjjjc", + "HjjjjjjnKLtjjjjc", + "bjjjjjjj#MNOPjjQ", + "RSjjjjjjjj#mdPiE", + "#TjjjjjjjjjjUjzP", + ".nVjjjjjjjjjjWX.", + ".fEVjjjjjjjjWYZ.", + "..f012jjjj2EXZ..", + "....i3QccQ3P...."] + +_logo_pixmap = QPixmap(_logo_16x16_xpm) diff --git a/examples/designer/plugins/python/bubbleswidgetplugin.py b/examples/designer/plugins/python/bubbleswidgetplugin.py new file mode 100644 index 0000000..9bdb48b --- /dev/null +++ b/examples/designer/plugins/python/bubbleswidgetplugin.py @@ -0,0 +1,194 @@ +#!/usr/bin/env python + +""" +bubbleswidgetplugin.py + +A bubbles widget custom widget plugin for Qt Designer. + +Copyright (C) 2006 David Boddie +Copyright (C) 2005-2006 Trolltech ASA. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +""" + +from PyQt5.QtGui import QIcon, QPixmap +from PyQt5.QtDesigner import QPyDesignerCustomWidgetPlugin + +from bubbleswidget import BubblesWidget + + +class BubblesPlugin(QPyDesignerCustomWidgetPlugin): + """BubblesPlugin(QPyDesignerCustomWidgetPlugin) + + Provides a Python custom plugin for Qt Designer by implementing the + QDesignerCustomWidgetPlugin via a PyQt-specific custom plugin class. + """ + + # The __init__() method is only used to set up the plugin and define its + # initialized variable. + def __init__(self, parent=None): + + super(BubblesPlugin, self).__init__(parent) + + self.initialized = False + + # The initialize() and isInitialized() methods allow the plugin to set up + # any required resources, ensuring that this can only happen once for each + # plugin. + def initialize(self, core): + + if self.initialized: + return + + self.initialized = True + + def isInitialized(self): + + return self.initialized + + # This factory method creates new instances of our custom widget with the + # appropriate parent. + def createWidget(self, parent): + + return BubblesWidget(parent) + + # This method returns the name of the custom widget class that is provided + # by this plugin. + def name(self): + + return "BubblesWidget" + + # Returns the name of the group in Qt Designer's widget box that this + # widget belongs to. + def group(self): + + return "PyQt Examples" + + # Returns the icon used to represent the custom widget in Qt Designer's + # widget box. + def icon(self): + + return QIcon(_logo_pixmap) + + # Returns a short description of the custom widget for use in a tool tip. + def toolTip(self): + + return "" + + # Returns a short description of the custom widget for use in a "What's + # This?" help message for the widget. + def whatsThis(self): + + return "" + + # Returns True if the custom widget acts as a container for other widgets; + # otherwise returns False. Note that plugins for custom containers also + # need to provide an implementation of the QDesignerContainerExtension + # interface if they need to add custom editing support to Qt Designer. + def isContainer(self): + + return False + + # Returns an XML description of a custom widget instance that describes + # default values for its properties. Each custom widget created by this + # plugin will be configured using this description. + def domXml(self): + + return '\n' \ + ' \n' \ + ' Click and drag here\n' \ + ' \n' \ + ' \n' \ + ' The bubbles widget displays colorful ' \ + 'bubbles.\n' \ + ' \n' \ + '\n' + + # Returns the module containing the custom widget class. It may include + # a module path. + def includeFile(self): + + return "bubbleswidget" + + +# Define the image used for the icon. +_logo_16x16_xpm = [ +"16 16 48 1", +"O c #d0cfcf", +"d c #d0d0d0", +"i c #d3d3d2", +"q c #d3d3d3", +"M c #dad7d7", +"g c #dad8d7", +"e c #dcd9d9", +"f c #e0dcdc", +"c c #e0e0e0", +"L c #e1dddb", +"D c #e1dddc", +"E c #e1e0e0", +"R c #e1e1e1", +"Q c #e2dedc", +"p c #e2dedd", +"j c #e3dfdf", +"b c #e7e7e7", +"S c #ebe4e3", +"z c #ebe5e3", +"r c #ece6e8", +"a c #eeeeee", +"N c #f6edeb", +"I c #f6eeed", +"o c #f6eeee", +"h c #f7f7f7", +"K c #f8efee", +"C c #f8efef", +"T c #f8f8f8", +"y c #f9f1f0", +"H c #f9f1f1", +"n c #f9f1f2", +"m c #f9f1f3", +"k c #f9f2f4", +"x c #faf3f5", +"l c #faf3f6", +"w c #faf3f7", +"G c #faf3f8", +"v c #fbf5fa", +"s c #fbf5fb", +"u c #fbf5fc", +"t c #fbf5fd", +"# c #fbfbfb", +"J c #fcf6fe", +"B c #fcf7fe", +"P c #fcfcfc", +"F c #fdf8ff", +"A c #fefbff", +". c #ffffff", +".....#abba#.....", +"...#cdeffgdc#...", +"..hijkllmnopqh..", +".#irstuvwxnyzq#.", +".cjs.ABuvwknCDE.", +"#dktAAFtsGlmHId#", +"aeluBFJusGlmHKga", +"bflvutusvGlmHKLb", +"bfmwvssvGwxmHKLb", +"agnxwGGGwlmnyKMa", +"#donklllxmnHCNOP", +".cpynmmmmnHCKQR.", +".#qzCHHHHyCKSqP.", +"..hqDIKKKKNQqT..", +"...#EdgLLMORP...", +".....#abbaP....."] + +_logo_pixmap = QPixmap(_logo_16x16_xpm) diff --git a/examples/designer/plugins/python/counterlabelplugin.py b/examples/designer/plugins/python/counterlabelplugin.py new file mode 100644 index 0000000..a793eaa --- /dev/null +++ b/examples/designer/plugins/python/counterlabelplugin.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python + +""" +counterlabelplugin.py + +A counter label custom widget plugin for Qt Designer. + +Copyright (C) 2006 David Boddie +Copyright (C) 2005-2006 Trolltech ASA. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +""" + +from PyQt5.QtGui import QIcon +from PyQt5.QtDesigner import QPyDesignerCustomWidgetPlugin + +from counterlabel import CounterLabel + + +class CounterLabelPlugin(QPyDesignerCustomWidgetPlugin): + """CounterLabelPlugin(QPyDesignerCustomWidgetPlugin) + + Provides a Python custom plugin for Qt Designer by implementing the + QDesignerCustomWidgetPlugin via a PyQt-specific custom plugin class. + """ + + # The __init__() method is only used to set up the plugin and define its + # initialized variable. + def __init__(self, parent=None): + + super(CounterLabelPlugin, self).__init__(parent) + + self.initialized = False + + def initialize(self, formEditor): + + if self.initialized: + return + + self.initialized = True + + def isInitialized(self): + + return self.initialized + + # This factory method creates new instances of our custom widget with the + # appropriate parent. + def createWidget(self, parent): + widget = CounterLabel(parent) + widget.setValue(1) + return widget + + # This method returns the name of the custom widget class that is provided + # by this plugin. + def name(self): + return "CounterLabel" + + # Returns the name of the group in Qt Designer's widget box that this + # widget belongs to. + def group(self): + return "PyQt Examples" + + # Returns the icon used to represent the custom widget in Qt Designer's + # widget box. + def icon(self): + return QIcon() + + # Returns a short description of the custom widget for use in a tool tip. + def toolTip(self): + return "" + + # Returns a short description of the custom widget for use in a "What's + # This?" help message for the widget. + def whatsThis(self): + return "" + + # Returns True if the custom widget acts as a container for other widgets; + # otherwise returns False. Note that plugins for custom containers also + # need to provide an implementation of the QDesignerContainerExtension + # interface if they need to add custom editing support to Qt Designer. + def isContainer(self): + return False + + # Returns an XML description of a custom widget instance that describes + # default values for its properties. Each custom widget created by this + # plugin will be configured using this description. + def domXml(self): + return '\n' + + # Returns the module containing the custom widget class. It may include + # a module path. + def includeFile(self): + return "counterlabel" diff --git a/examples/designer/plugins/python/datetimeeditplugin.py b/examples/designer/plugins/python/datetimeeditplugin.py new file mode 100644 index 0000000..4360a3a --- /dev/null +++ b/examples/designer/plugins/python/datetimeeditplugin.py @@ -0,0 +1,126 @@ +#============================================================================# +# Designer plugins for PyDateEdit and PyDateTimeEdit # +#----------------------------------------------------------------------------# +# Copyright (c) 2008 by Denviso GmbH, # +# # +# All Rights Reserved # +# # +# Permission to use, copy, modify, and distribute this software and its # +# documentation for any purpose and without fee is hereby granted, # +# provided that the above copyright notice appear in all copies and that # +# both that copyright notice and this permission notice appear in # +# supporting documentation. # +# # +# DENVISO DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS # +# SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY # +# AND FITNESS, IN NO EVENT SHALL DENVISO BE LIABLE FOR ANY # +# SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES # +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, # +# WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER # +# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE # +# OR PERFORMANCE OF THIS SOFTWARE. # +#----------------------------------------------------------------------------# + + +from PyQt5.QtGui import QIcon +from PyQt5.QtDesigner import QPyDesignerCustomWidgetPlugin + +from datetimeedit import PyDateEdit, PyDateTimeEdit + + +#============================================================================# +# The group name in designer widgetbox # +#----------------------------------------------------------------------------# +DESIGNER_GROUP_NAME = "PyQt Examples" + + +#============================================================================# +# Plugin for PyDateEdit # +#----------------------------------------------------------------------------# +class PyDateEditPlugin(QPyDesignerCustomWidgetPlugin): + + def __init__(self, parent=None): + super(PyDateEditPlugin, self).__init__(parent) + + self.initialized = False + + def initialize(self, formEditor): + if self.initialized: + return + self.initialized = True + + def isInitialized(self): + return self.initialized + + def isContainer(self): + return False + + def icon(self): + return QIcon() + + def domXml(self): + return '\n\n' + + def group(self): + return DESIGNER_GROUP_NAME + + def includeFile(self): + return "datetimeedit" + + def name(self): + return "PyDateEdit" + + def toolTip(self): + return "" + + def whatsThis(self): + return "" + + def createWidget(self, parent): + return PyDateEdit(parent) + + +#============================================================================# +# Plugin for PyDateTimeEdit # +#----------------------------------------------------------------------------# +class PyDateTimeEditPlugin(QPyDesignerCustomWidgetPlugin): + + def __init__(self, parent=None): + super(PyDateTimeEditPlugin, self).__init__(parent) + + self.initialized = False + + def initialize(self, formEditor): + if self.initialized: + return + self.initialized = True + + def isInitialized(self): + return self.initialized + + def isContainer(self): + return False + + def icon(self): + return QIcon() + + def domXml(self): + return '\n\n' + + def group(self): + return DESIGNER_GROUP_NAME + + def includeFile(self): + return "datetimeedit" + + def name(self): + return "PyDateTimeEdit" + + def toolTip(self): + return "" + + def whatsThis(self): + return "" + + def createWidget(self, parent): + return PyDateTimeEdit(parent) diff --git a/examples/designer/plugins/python/helloglwidgetplugin.py b/examples/designer/plugins/python/helloglwidgetplugin.py new file mode 100644 index 0000000..c3e962d --- /dev/null +++ b/examples/designer/plugins/python/helloglwidgetplugin.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python + +""" +helloglwidgetplugin.py + +A simple OpenGL custom widget plugin for Qt Designer. + +Copyright (C) 2006 David Boddie +Copyright (C) 2005-2006 Trolltech ASA. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +""" + +from PyQt5.QtGui import QIcon +from PyQt5.QtDesigner import QPyDesignerCustomWidgetPlugin + +from helloglwidget import HelloGLWidget + + +class HelloGLWidgetPlugin(QPyDesignerCustomWidgetPlugin): + """HelloGLWidgetPlugin(QPyDesignerCustomWidgetPlugin) + + Provides a Python custom plugin for Qt Designer by implementing the + QDesignerCustomWidgetPlugin via a PyQt-specific custom plugin class. + """ + + # The __init__() method is only used to set up the plugin and define its + # initialized variable. + def __init__(self, parent=None): + + super(HelloGLWidgetPlugin, self).__init__(parent) + + self.initialized = False + + # The initialize() and isInitialized() methods allow the plugin to set up + # any required resources, ensuring that this can only happen once for each + # plugin. + def initialize(self, core): + + if self.initialized: + return + + self.initialized = True + + def isInitialized(self): + return self.initialized + + # This factory method creates new instances of our custom widget with the + # appropriate parent. + def createWidget(self, parent): + return HelloGLWidget(parent) + + # This method returns the name of the custom widget class that is provided + # by this plugin. + def name(self): + return "HelloGLWidget" + + # Returns the name of the group in Qt Designer's widget box that this + # widget belongs to. + def group(self): + return "PyQt Examples" + + # Returns the icon used to represent the custom widget in Qt Designer's + # widget box. + def icon(self): + return QIcon() + + # Returns a short description of the custom widget for use in a tool tip. + def toolTip(self): + return "" + + # Returns a short description of the custom widget for use in a "What's + # This?" help message for the widget. + def whatsThis(self): + return "" + + # Returns True if the custom widget acts as a container for other widgets; + # otherwise returns False. Note that plugins for custom containers also + # need to provide an implementation of the QDesignerContainerExtension + # interface if they need to add custom editing support to Qt Designer. + def isContainer(self): + return False + + # Returns an XML description of a custom widget instance that describes + # default values for its properties. Each custom widget created by this + # plugin will be configured using this description. + def domXml(self): + return '\n' + + # Returns the module containing the custom widget class. It may include + # a module path. + def includeFile(self): + return "helloglwidget" diff --git a/examples/designer/plugins/python/multipagewidgetplugin.py b/examples/designer/plugins/python/multipagewidgetplugin.py new file mode 100644 index 0000000..4bddd50 --- /dev/null +++ b/examples/designer/plugins/python/multipagewidgetplugin.py @@ -0,0 +1,142 @@ +#============================================================================# +# PyQt5 port of the designer/containerextension example from Qt v4.x # +#----------------------------------------------------------------------------# +import sip +from PyQt5.QtGui import QIcon +from PyQt5.QtDesigner import (QDesignerFormWindowInterface, QExtensionFactory, + QPyDesignerContainerExtension, QPyDesignerCustomWidgetPlugin, + QPyDesignerPropertySheetExtension) + +from multipagewidget import PyMultiPageWidget + + +Q_TYPEID = { + 'QDesignerContainerExtension': 'org.qt-project.Qt.Designer.Container', + 'QDesignerPropertySheetExtension': 'org.qt-project.Qt.Designer.PropertySheet' +} + + +#============================================================================# +# ContainerExtension # +#----------------------------------------------------------------------------# +class MultiPageWidgetContainerExtension(QPyDesignerContainerExtension): + def __init__(self, widget, parent=None): + super(MultiPageWidgetContainerExtension, self).__init__(parent) + + self._widget = widget + + def addWidget(self, widget): + self._widget.addPage(widget) + + def count(self): + return self._widget.count() + + def currentIndex(self): + return self._widget.getCurrentIndex() + + def insertWidget(self, index, widget): + self._widget.insertPage(index, widget) + + def remove(self, index): + self._widget.removePage(index) + + def setCurrentIndex(self, index): + self._widget.setCurrentIndex(index) + + def widget(self, index): + return self._widget.widget(index) + + +#============================================================================# +# ExtensionFactory # +#----------------------------------------------------------------------------# +class MultiPageWidgetExtensionFactory(QExtensionFactory): + def __init__(self, parent=None): + super(MultiPageWidgetExtensionFactory, self).__init__(parent) + + def createExtension(self, obj, iid, parent): + if iid != Q_TYPEID['QDesignerContainerExtension']: + return None + if isinstance(obj, PyMultiPageWidget): + return MultiPageWidgetContainerExtension(obj, parent) + return None + + +#============================================================================# +# CustomWidgetPlugin # +#----------------------------------------------------------------------------# +class MultiPageWidgetPlugin(QPyDesignerCustomWidgetPlugin): + + def __init__(self, parent=None): + super(MultiPageWidgetPlugin, self).__init__(parent) + + self.initialized = False + + def initialize(self, formEditor): + if self.initialized: + return + manager = formEditor.extensionManager() + if manager: + self.factory = MultiPageWidgetExtensionFactory(manager) + manager.registerExtensions(self.factory, Q_TYPEID['QDesignerContainerExtension']) + self.initialized = True + + def isInitialized(self): + return self.initialized + + def createWidget(self, parent): + widget = PyMultiPageWidget(parent) + widget.currentIndexChanged.connect(self.currentIndexChanged) + widget.pageTitleChanged.connect(self.pageTitleChanged) + return widget + + def name(self): + return "PyMultiPageWidget" + + def group(self): + return "PyQt Examples" + + def icon(self): + return QIcon() + + def toolTip(self): + return "" + + def whatsThis(self): + return "" + + def isContainer(self): + return True + + def domXml(self): + return ('' + ' ' + '') + + def includeFile(self): + return "multipagewidget" + + def currentIndexChanged(self, index): + widget = self.sender() + if widget and isinstance(widget, PyMultiPageWidget): + form = QDesignerFormWindowInterface.findFormWindow(widget) + if form: + form.emitSelectionChanged() + + def pageTitleChanged(self, title): + widget = self.sender() + if widget and isinstance(widget, PyMultiPageWidget): + page = widget.widget(widget.getCurrentIndex()) + form = QDesignerFormWindowInterface.findFormWindow(widget) + if form: + editor = form.core() + manager = editor.extensionManager() + sheet = manager.extension(page, Q_TYPEID['QDesignerPropertySheetExtension']) + # This explicit cast is necessary here + sheet = sip.cast(sheet, QPyDesignerPropertySheetExtension) + propertyIndex = sheet.indexOf('windowTitle') + sheet.setChanged(propertyIndex, True) + +#============================================================================# +# EOF # +#----------------------------------------------------------------------------# diff --git a/examples/designer/plugins/python/polygonwidgetplugin.py b/examples/designer/plugins/python/polygonwidgetplugin.py new file mode 100644 index 0000000..9e486fa --- /dev/null +++ b/examples/designer/plugins/python/polygonwidgetplugin.py @@ -0,0 +1,175 @@ +#!/usr/bin/env python + +""" +polygonwidgetplugin.py + +A polygon widget custom widget plugin for Qt Designer. + +Copyright (C) 2006 David Boddie +Copyright (C) 2005-2006 Trolltech ASA. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +""" + +from PyQt5.QtGui import QIcon, QPixmap +from PyQt5.QtDesigner import QPyDesignerCustomWidgetPlugin + +from polygonwidget import PolygonWidget + + +class PolygonWidgetPlugin(QPyDesignerCustomWidgetPlugin): + """PolygonWidgetPlugin(QPyDesignerCustomWidgetPlugin) + + Provides a Python custom plugin for Qt Designer by implementing the + QDesignerCustomWidgetPlugin via a PyQt-specific custom plugin class. + """ + + # The __init__() method is only used to set up the plugin and define its + # initialized variable. + def __init__(self, parent=None): + + super(PolygonWidgetPlugin, self).__init__(parent) + + self.initialized = False + + # The initialize() and isInitialized() methods allow the plugin to set up + # any required resources, ensuring that this can only happen once for each + # plugin. + def initialize(self, core): + + if self.initialized: + return + + self.initialized = True + + def isInitialized(self): + + return self.initialized + + # This factory method creates new instances of our custom widget with the + # appropriate parent. + def createWidget(self, parent): + return PolygonWidget(parent) + + # This method returns the name of the custom widget class that is provided + # by this plugin. + def name(self): + return "PolygonWidget" + + # Returns the name of the group in Qt Designer's widget box that this + # widget belongs to. + def group(self): + return "PyQt Examples" + + # Returns the icon used to represent the custom widget in Qt Designer's + # widget box. + def icon(self): + return QIcon(_logo_pixmap) + + # Returns a short description of the custom widget for use in a tool tip. + def toolTip(self): + return "" + + # Returns a short description of the custom widget for use in a "What's + # This?" help message for the widget. + def whatsThis(self): + return "" + + # Returns True if the custom widget acts as a container for other widgets; + # otherwise returns False. Note that plugins for custom containers also + # need to provide an implementation of the QDesignerContainerExtension + # interface if they need to add custom editing support to Qt Designer. + def isContainer(self): + return False + + # Returns an XML description of a custom widget instance that describes + # default values for its properties. Each custom widget created by this + # plugin will be configured using this description. + def domXml(self): + return '\n' + + # Returns the module containing the custom widget class. It may include + # a module path. + def includeFile(self): + return "polygonwidget" + + +# Define the image used for the icon. +_logo_16x16_xpm = [ +"16 16 46 1", +". c #a5a5dc", +"l c #a69fd6", +"k c #a7a5da", +"h c #a7a6dc", +"a c #a7a7de", +"Q c #a8a5da", +"s c #a9a7d7", +"R c #a9a9e0", +"z c #abaad4", +"E c #afafda", +"M c #afafdb", +"K c #b0a8e2", +"o c #b1afe4", +"p c #b2b2d7", +"# c #b2b2ed", +"i c #b39eb6", +"F c #b3b3e1", +"e c #b4b4ef", +"t c #b58bab", +"d c #b6b6f2", +"n c #b798b8", +"P c #b798b9", +"c c #b8b6f2", +"D c #b8b89c", +"m c #b9648d", +"J c #ba84b0", +"A c #bdbdfb", +"f c #bfbffe", +"g c #c06996", +"b c #c0c0ff", +"B c #cbb889", +"L c #cbb989", +"O c #cfcf87", +"I c #d09585", +"w c #d0cf86", +"x c #dede81", +"G c #e8e87c", +"q c #edde7b", +"N c #f1e07b", +"v c #f2e07b", +"H c #f6e57c", +"j c #fb917e", +"u c #ffb580", +"r c #ffda80", +"C c #fffe80", +"y c #ffff80", +".##############a", +"#bbbbbbbbcdbbbbe", +"#bbbbbbbfghbbbbe", +"#bbbbbbbijkbbbbe", +"#blmnobpqrsbbbbe", +"#bbtuvwxyyzbbbbe", +"#bbABCyyyyDEfbbe", +"#bbbFGyyyyyHIJKe", +"#bbbFGyyyyyHIJKe", +"#bbALCyyyyDMfbbe", +"#bbtuNOxyyzbbbbe", +"#blmPobpqrsbbbbe", +"#bbbbbbbijQbbbbe", +"#bbbbbbbfghbbbbe", +"#bbbbbbbbcdbbbbe", +"aeeeeeeeeeeeeeeR"] + +_logo_pixmap = QPixmap(_logo_16x16_xpm) diff --git a/examples/designer/plugins/python/pydemoplugin.py b/examples/designer/plugins/python/pydemoplugin.py new file mode 100644 index 0000000..c7f7ffc --- /dev/null +++ b/examples/designer/plugins/python/pydemoplugin.py @@ -0,0 +1,168 @@ +# A demonstration custom widget plugin for Qt Designer. +# +# Copyright (c) 2013 Riverbank Computing Limited + + +from PyQt5.QtGui import QIcon, QPixmap +from PyQt5.QtDesigner import QPyDesignerCustomWidgetPlugin + +from pydemo import PyDemo + + +# This class implements the interface expected by Qt Designer to access the +# custom widget. See the description of the QDesignerCustomWidgetInterface +# class for full details. +class PyDemoPlugin(QPyDesignerCustomWidgetPlugin): + + # Initialise the instance. + def __init__(self, parent=None): + super(PyDemoPlugin, self).__init__(parent) + + self._initialized = False + + # Initialise the custom widget for use with the specified formEditor + # interface. + def initialize(self, formEditor): + if self._initialized: + return + + self._initialized = True + + # Return True if the custom widget has been intialised. + def isInitialized(self): + return self._initialized + + # Return a new instance of the custom widget with the given parent. + def createWidget(self, parent): + return PyDemo(parent) + + # Return the name of the class that implements the custom widget. + def name(self): + return "PyDemo" + + # Return the name of the group to which the custom widget belongs. A new + # group will be created if it doesn't already exist. + def group(self): + return "PyQt Examples" + + # Return the icon used to represent the custom widget in Designer's widget + # box. + def icon(self): + return QIcon(_logo_pixmap) + + # Return a short description of the custom widget used by Designer in a + # tool tip. + def toolTip(self): + return "PyQt demonstration widget" + + # Return a full description of the custom widget used by Designer in + # "What's This?" help for the widget. + def whatsThis(self): + return "PyDemo is a demonstration custom widget written in Python " \ + "using PyQt." + + # Return True if the custom widget acts as a container for other widgets. + def isContainer(self): + return False + + # Return an XML fragment that allows the default values of the custom + # widget's properties to be overridden. + def domXml(self): + return '\n' \ + ' \n' \ + ' PyQt demonstration widget\n' \ + ' \n' \ + ' \n' \ + ' PyDemo is a demonstration custom widget written ' \ + 'in Python using PyQt.\n' \ + ' \n' \ + '\n' + + # Return the name of the module containing the class that implements the + # custom widget. It may include a module path. + def includeFile(self): + return "pydemo" + + +# Define the image used for the icon. +_logo_16x16_xpm = [ +"16 16 61 1", +"6 c #5bbd7c", +"a c #7aaada", +"h c #7eaddb", +"n c #7faddb", +"E c #82afdc", +"x c #83b0dd", +"C c #84b0dd", +"z c #84b1dd", +"B c #85b1dd", +"u c #87b2de", +"U c #9ec1e4", +"Z c #9fc1e4", +"H c #a1c3e5", +"Y c #a5c5e4", +"V c #a6c6e4", +"P c #afcbe2", +"S c #afcbe3", +"O c #b1cde9", +"T c #b2cee9", +"t c #b4cee3", +"r c #b5cee3", +"q c #c2d8ee", +"0 c #c7dbef", +"f c #cedddb", +"b c #cfdddb", +"1 c #d0e1f2", +"J c #d8e2d2", +"I c #d9e2d2", +"# c #dfeaf6", +"g c #e3edf7", +"K c #ecf2f9", +"N c #ecf3f9", +"o c #eeecbb", +"i c #f2edb2", +"l c #f2edb3", +"w c #f6eea6", +"v c #f7eea6", +"W c #fcee8c", +"m c #fcfdfe", +"L c #fdec73", +"k c #fedd00", +"e c #fede06", +"p c #fede07", +"j c #fee013", +"X c #fee015", +"s c #fee223", +"d c #fee32c", +"A c #fee749", +"Q c #fee850", +"R c #fee851", +"D c #fee854", +"y c #feea65", +"M c #feec74", +"c c #feed7c", +"F c #feee85", +"G c #feee86", +"5 c #fef095", +"4 c #fef195", +"3 c #fef6bb", +"2 c #fefdf5", +". c #fefefe", +"..#abcdeedcfa#..", +".ghijkkkkkkjlhg.", +"mnopkkkkkkkkponm", +"qrskkkkkkkkkkstq", +"uvkkkkkkkkkkkkwu", +"xykkkkkkkkkkkkyx", +"zAkkkkkkkkkkkkAB", +"CDkkkkkkkkkkkkDC", +"EFkkkkkkkkkkkkGE", +"HIekkkkkkkkkkeJH", +"KBLkkkkkkkkkkMBN", +".OPQkkkkkkkkRST.", +"..UVWXkkkkXWYZ..", +"...0123453210...", +"6666666666666666", +"BBBBBBBBBBBBBBBB"] + +_logo_pixmap = QPixmap(_logo_16x16_xpm) diff --git a/examples/designer/plugins/python/pythonconsoleplugin.py b/examples/designer/plugins/python/pythonconsoleplugin.py new file mode 100644 index 0000000..89966db --- /dev/null +++ b/examples/designer/plugins/python/pythonconsoleplugin.py @@ -0,0 +1,143 @@ +#!/usr/bin/env python + +""" +pythonconsoleplugin.py + +A Python console custom widget plugin for Qt Designer. + +Copyright (C) 2006 David Boddie +Copyright (C) 2005-2006 Trolltech ASA. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +""" + +from PyQt5.QtGui import QIcon, QPixmap +from PyQt5.QtDesigner import QPyDesignerCustomWidgetPlugin + +from pythonconsolewidget import PythonConsoleWidget + + +class PythonConsolePlugin(QPyDesignerCustomWidgetPlugin): + """PythonConsolePlugin(QPyDesignerCustomWidgetPlugin) + + Provides a Python custom plugin for Qt Designer by implementing the + QDesignerCustomWidgetPlugin via a PyQt-specific custom plugin class. + """ + + # The __init__() method is only used to set up the plugin and define its + # initialized variable. + def __init__(self, parent=None): + + super(PythonConsolePlugin, self).__init__(parent) + + self.initialized = False + + # The initialize() and isInitialized() methods allow the plugin to set up + # any required resources, ensuring that this can only happen once for each + # plugin. + def initialize(self, core): + + if self.initialized: + return + + self.initialized = True + + def isInitialized(self): + + return self.initialized + + # This factory method creates new instances of our custom widget with the + # appropriate parent. + def createWidget(self, parent): + return PythonConsoleWidget(parent) + + # This method returns the name of the custom widget class that is provided + # by this plugin. + def name(self): + return "PythonConsoleWidget" + + # Returns the name of the group in Qt Designer's widget box that this + # widget belongs to. + def group(self): + return "PyQt Examples" + + # Returns the icon used to represent the custom widget in Qt Designer's + # widget box. + def icon(self): + return QIcon(_logo_pixmap) + + # Returns a short description of the custom widget for use in a tool tip. + def toolTip(self): + return "" + + # Returns a short description of the custom widget for use in a "What's + # This?" help message for the widget. + def whatsThis(self): + return "" + + # Returns True if the custom widget acts as a container for other widgets; + # otherwise returns False. Note that plugins for custom containers also + # need to provide an implementation of the QDesignerContainerExtension + # interface if they need to add custom editing support to Qt Designer. + def isContainer(self): + return False + + # Returns an XML description of a custom widget instance that describes + # default values for its properties. Each custom widget created by this + # plugin will be configured using this description. + def domXml(self): + return '\n' \ + ' \n' \ + ' Python console\n' \ + ' \n' \ + ' \n' \ + ' The Python console widget can be used to explore ' \ + 'Qt Designer.\n' \ + ' \n' \ + '\n' + + # Returns the module containing the custom widget class. It may include + # a module path. + def includeFile(self): + return "pythonconsolewidget" + + +# Define the image used for the icon. +_logo_16x16_xpm = [ + "16 16 6 1", + " c None", + ". c #FFFFFF", + "a c #000000", + "b c #808080", + "c c #C0C0C0", + "d c #404040", + "................", + "................", + "................", + ".aa..aa..aa.....", + "..aa..aa..aa....", + "...aa..aa..aa...", + "....aa..aa..aa..", + ".....aa..aa..aa.", + ".....aa..aa..aa.", + "....aa..aa..aa..", + "...aa..aa..aa...", + "..aa..aa..aa....", + ".aa..aa..aa.....", + "................", + "................", + "................"] + +_logo_pixmap = QPixmap(_logo_16x16_xpm) diff --git a/examples/designer/plugins/widgets/analogclock.py b/examples/designer/plugins/widgets/analogclock.py new file mode 100755 index 0000000..dffbb90 --- /dev/null +++ b/examples/designer/plugins/widgets/analogclock.py @@ -0,0 +1,189 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (pyqtProperty, pyqtSignal, pyqtSlot, QPoint, QSize, + Qt, QTime, QTimer) +from PyQt5.QtGui import QBrush, QColor, QPainter, QPen, QPolygon +from PyQt5.QtWidgets import QApplication, QWidget + + +class PyAnalogClock(QWidget): + """PyAnalogClock(QWidget) + + Provides an analog clock custom widget with signals, slots and properties. + The implementation is based on the Analog Clock example provided with both + Qt and PyQt. + """ + + # Emitted when the clock's time changes. + timeChanged = pyqtSignal(QTime) + + # Emitted when the clock's time zone changes. + timeZoneChanged = pyqtSignal(int) + + def __init__(self, parent=None): + + super(PyAnalogClock, self).__init__(parent) + + self.timeZoneOffset = 0 + + timer = QTimer(self) + timer.timeout.connect(self.update) + timer.timeout.connect(self.updateTime) + timer.start(1000) + + self.setWindowTitle("Analog Clock") + self.resize(200, 200) + + self.hourHand = QPolygon([ + QPoint(7, 8), + QPoint(-7, 8), + QPoint(0, -40) + ]) + self.minuteHand = QPolygon([ + QPoint(7, 8), + QPoint(-7, 8), + QPoint(0, -70) + ]) + + self.hourColor = QColor(0, 127, 0) + self.minuteColor = QColor(0, 127, 127, 191) + + def paintEvent(self, event): + + side = min(self.width(), self.height()) + time = QTime.currentTime() + time = time.addSecs(self.timeZoneOffset * 3600) + + painter = QPainter() + painter.begin(self) + painter.setRenderHint(QPainter.Antialiasing) + painter.translate(self.width() / 2, self.height() / 2) + painter.scale(side / 200.0, side / 200.0) + + painter.setPen(Qt.NoPen) + painter.setBrush(QBrush(self.hourColor)) + + painter.save() + painter.rotate(30.0 * ((time.hour() + time.minute() / 60.0))) + painter.drawConvexPolygon(self.hourHand) + painter.restore() + + painter.setPen(self.hourColor) + + for i in range(0, 12): + painter.drawLine(88, 0, 96, 0) + painter.rotate(30.0) + + painter.setPen(Qt.NoPen) + painter.setBrush(QBrush(self.minuteColor)) + + painter.save() + painter.rotate(6.0 * (time.minute() + time.second() / 60.0)) + painter.drawConvexPolygon(self.minuteHand) + painter.restore() + + painter.setPen(QPen(self.minuteColor)) + + for j in range(0, 60): + if (j % 5) != 0: + painter.drawLine(92, 0, 96, 0) + painter.rotate(6.0) + + painter.end() + + def minimumSizeHint(self): + + return QSize(50, 50) + + def sizeHint(self): + + return QSize(100, 100) + + def updateTime(self): + + self.timeChanged.emit(QTime.currentTime()) + + # The timeZone property is implemented using the getTimeZone() getter + # method, the setTimeZone() setter method, and the resetTimeZone() method. + + # The getter just returns the internal time zone value. + def getTimeZone(self): + + return self.timeZoneOffset + + # The setTimeZone() method is also defined to be a slot. The @pyqtSlot + # decorator is used to tell PyQt which argument type the method expects, + # and is especially useful when you want to define slots with the same + # name that accept different argument types. + + @pyqtSlot(int) + def setTimeZone(self, value): + + self.timeZoneOffset = value + self.timeZoneChanged.emit(value) + self.update() + + # Qt's property system supports properties that can be reset to their + # original values. This method enables the timeZone property to be reset. + def resetTimeZone(self): + + self.timeZoneOffset = 0 + self.timeZoneChanged.emit(0) + self.update() + + # Qt-style properties are defined differently to Python's properties. + # To declare a property, we call pyqtProperty() to specify the type and, + # in this case, getter, setter and resetter methods. + timeZone = pyqtProperty(int, getTimeZone, setTimeZone, resetTimeZone) + + +if __name__ == "__main__": + + import sys + + app = QApplication(sys.argv) + clock = PyAnalogClock() + clock.show() + sys.exit(app.exec_()) diff --git a/examples/designer/plugins/widgets/bubbleswidget.py b/examples/designer/plugins/widgets/bubbleswidget.py new file mode 100755 index 0000000..52ab107 --- /dev/null +++ b/examples/designer/plugins/widgets/bubbleswidget.py @@ -0,0 +1,335 @@ +#!/usr/bin/env python + +""" +bubbleswidget.py + +A PyQt custom widget example for Qt Designer. + +Copyright (C) 2006 David Boddie +Copyright (C) 2005-2006 Trolltech ASA. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +""" + +import random + +from PyQt5.QtCore import (pyqtProperty, pyqtSignal, pyqtSlot, QPointF, QRectF, + QSize, QSizeF, Qt, QTimer) +from PyQt5.QtGui import QBrush, QColor, QPainter, QPen, QRadialGradient +from PyQt5.QtWidgets import QApplication, QWidget + + +class BaseClass(QWidget): + """BaseClass(QWidget) + + Provides a base custom widget class to show that properties implemented + in Python can be inherited and shown as belonging to distinct classes + in Qt Designer's Property Editor. + """ + + def __init__(self, parent=None): + + super(BaseClass, self).__init__(parent) + + self.resetAuthor() + + # Define getter, setter and resetter methods for the author property. + + def getAuthor(self): + return self._author + + def setAuthor(self, name): + self._author = name + + def resetAuthor(self): + self._author = "David Boddie" + + author = pyqtProperty(str, getAuthor, setAuthor, resetAuthor) + + +class Bubble: + """Bubble + + Provides a class to represent individual bubbles in a BubblesWidget. + Each Bubble instance can render itself onto a paint device using a + QPainter passed to its drawBubble() method. + """ + + def __init__(self, position, radius, speed, innerColor, outerColor): + + self.position = position + self.radius = radius + self.speed = speed + self.innerColor = innerColor + self.outerColor = outerColor + self.updateBrush() + + def updateBrush(self): + + gradient = QRadialGradient( + QPointF(self.radius, self.radius), self.radius, + QPointF(self.radius*0.5, self.radius*0.5)) + + gradient.setColorAt(0, QColor(255, 255, 255, 255)) + gradient.setColorAt(0.25, self.innerColor) + gradient.setColorAt(1, self.outerColor) + self.brush = QBrush(gradient) + + def drawBubble(self, painter): + + painter.save() + painter.translate(self.position.x() - self.radius, + self.position.y() - self.radius) + painter.setBrush(self.brush) + painter.drawEllipse(0.0, 0.0, 2*self.radius, 2*self.radius) + painter.restore() + + +class BubblesWidget(BaseClass): + """BubblesWidget(BaseClass) + + Provides a custom widget that shows a number of rising bubbles. + Various properties are defined so that the user can customize the + appearance of the widget, and change the number and behaviour of the + bubbles shown. + """ + + # We define two signals that are used to indicate changes to the status + # of the widget. + bubbleLeft = pyqtSignal() + bubblesRemaining = pyqtSignal(int) + + def __init__(self, parent=None): + + super(BubblesWidget, self).__init__(parent) + + self.pen = QPen(QColor("#cccccc")) + self.bubbles = [] + self.backgroundColor1 = self.randomColor() + self.backgroundColor2 = self.randomColor().darker(150) + self.newBubble = None + + random.seed() + + self.animation_timer = QTimer(self) + self.animation_timer.setSingleShot(False) + self.animation_timer.timeout.connect(self.animate) + self.animation_timer.start(25) + + self.bubbleTimer = QTimer() + self.bubbleTimer.setSingleShot(False) + self.bubbleTimer.timeout.connect(self.expandBubble) + + self.setMouseTracking(True) + self.setMinimumSize(QSize(200, 200)) + self.setWindowTitle("Bubble Maker") + + def paintEvent(self, event): + + background = QRadialGradient(QPointF(self.rect().topLeft()), 500, + QPointF(self.rect().bottomRight())) + background.setColorAt(0, self.backgroundColor1) + background.setColorAt(1, self.backgroundColor2) + + painter = QPainter() + painter.begin(self) + painter.setRenderHint(QPainter.Antialiasing) + painter.fillRect(event.rect(), QBrush(background)) + + painter.setPen(self.pen) + + for bubble in self.bubbles: + + if QRectF(bubble.position - QPointF(bubble.radius, bubble.radius), + QSizeF(2*bubble.radius, 2*bubble.radius)).intersects(QRectF(event.rect())): + bubble.drawBubble(painter) + + if self.newBubble: + + self.newBubble.drawBubble(painter) + + painter.end() + + def mousePressEvent(self, event): + + if event.button() == Qt.LeftButton and self.newBubble is None: + + self.newBubble = Bubble(QPointF(event.pos()), 4.0, + 1.0 + random.random() * 7, + self.randomColor(), self.randomColor()) + self.bubbleTimer.start(50) + event.accept() + + def mouseMoveEvent(self, event): + + if self.newBubble: + + self.update( + QRectF(self.newBubble.position - \ + QPointF(self.newBubble.radius + 1, self.newBubble.radius + 1), + QSizeF(2*self.newBubble.radius + 2, 2*self.newBubble.radius + 2)).toRect() + ) + self.newBubble.position = QPointF(event.pos()) + self.update( + QRectF(self.newBubble.position - \ + QPointF(self.newBubble.radius + 1, self.newBubble.radius + 1), + QSizeF(2*self.newBubble.radius + 2, 2*self.newBubble.radius + 2)).toRect() + ) + + event.accept() + + def mouseReleaseEvent(self, event): + + if self.newBubble: + + self.bubbles.append(self.newBubble) + self.newBubble = None + self.bubbleTimer.stop() + self.bubblesRemaining.emit(len(self.bubbles)) + + event.accept() + + def expandBubble(self): + + if self.newBubble: + + self.newBubble.radius = min(self.newBubble.radius + 4.0, + self.width()/8.0, self.height()/8.0) + self.update( + QRectF(self.newBubble.position - \ + QPointF(self.newBubble.radius + 1, self.newBubble.radius + 1), + QSizeF(2*self.newBubble.radius + 2, 2*self.newBubble.radius + 2)).toRect() + ) + self.newBubble.updateBrush() + + def randomColor(self): + + red = 205 + random.random() * 50 + green = 205 + random.random() * 50 + blue = 205 + random.random() * 50 + alpha = 91 + random.random() * 100 + + return QColor(red, green, blue, alpha) + + def animate(self): + + bubbles = [] + left = False + for bubble in self.bubbles: + + bubble.position = bubble.position + QPointF(0, -bubble.speed) + + self.update( + QRectF(bubble.position - QPointF(bubble.radius + 1, + bubble.radius + 1), + QSizeF(2*bubble.radius + 2, 2*bubble.radius + 2 + bubble.speed)).toRect()) + + if bubble.position.y() + bubble.radius > 0: + bubbles.append(bubble) + else: + self.bubbleLeft.emit() + left = True + + if self.newBubble: + self.update( + QRectF(self.newBubble.position - QPointF( + self.newBubble.radius + 1, + self.newBubble.radius + 1), + QSizeF(2*self.newBubble.radius + 2, 2*self.newBubble.radius + 2)).toRect()) + + self.bubbles = bubbles + if left: + self.bubblesRemaining.emit(len(self.bubbles)) + + def sizeHint(self): + + return QSize(200, 200) + + # We provide getter and setter methods for the numberOfBubbles property. + def getBubbles(self): + + return len(self.bubbles) + + # The setBubbles() method can also be used as a slot. + @pyqtSlot(int) + def setBubbles(self, value): + + value = max(0, value) + + while len(self.bubbles) < value: + + newBubble = Bubble(QPointF(random.random() * self.width(), + random.random() * self.height()), + 4.0 + random.random() * 20, + 1.0 + random.random() * 7, + self.randomColor(), self.randomColor()) + newBubble.updateBrush() + self.bubbles.append(newBubble) + + self.bubbles = self.bubbles[:value] + self.bubblesRemaining.emit(value) + self.update() + + numberOfBubbles = pyqtProperty(int, getBubbles, setBubbles) + + # We provide getter and setter methods for the color1 and color2 + # properties. The red, green and blue components for the QColor + # values stored in these properties can be edited individually in + # Qt Designer. + + def getColor1(self): + + return self.backgroundColor1 + + def setColor1(self, value): + + self.backgroundColor1 = QColor(value) + self.update() + + color1 = pyqtProperty(QColor, getColor1, setColor1) + + def getColor2(self): + + return self.backgroundColor2 + + def setColor2(self, value): + + self.backgroundColor2 = QColor(value) + self.update() + + color2 = pyqtProperty(QColor, getColor2, setColor2) + + # The stop() and start() slots provide simple control over the animation + # of the bubbles in the widget. + + @pyqtSlot() + def stop(self): + + self.animation_timer.stop() + + @pyqtSlot() + def start(self): + + self.animation_timer.start(25) + + +if __name__ == "__main__": + + import sys + + app = QApplication(sys.argv) + widget = BubblesWidget() + widget.show() + sys.exit(app.exec_()) diff --git a/examples/designer/plugins/widgets/counterlabel.py b/examples/designer/plugins/widgets/counterlabel.py new file mode 100755 index 0000000..fc6c7c6 --- /dev/null +++ b/examples/designer/plugins/widgets/counterlabel.py @@ -0,0 +1,177 @@ +#!/usr/bin/env python + +""" +counterlabel.py + +A PyQt custom widget example for Qt Designer. + +Copyright (C) 2006 David Boddie +Copyright (C) 2005-2006 Trolltech ASA. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +""" + +from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QRectF, QSize, Qt +from PyQt5.QtGui import QFont, QFontMetricsF, QPainter +from PyQt5.QtWidgets import QApplication, QWidget + + +class CounterLabel(QWidget): + """CounterLabel(QWidget) + + Provides a custom label widget to be used as a counter, with signals + similar to those provided by QAbstractSlider subclasses and properties + similar to those provided by QLabel. + """ + + # We define two signals that are used to indicate changes to the status + # of the widget. + valueChanged = pyqtSignal((int, ), (str, )) + + def __init__(self, parent=None): + + super(CounterLabel, self).__init__(parent) + + self.setAutoFillBackground(False) + + self._font = QFont() + self._minimum = 1 + self._maximum = 1 + self._value = 1 + self._offset = 0 + self.rescale() + self.reposition() + + def paintEvent(self, event): + + p = QPainter() + p.begin(self) + p.setRenderHint(QPainter.Antialiasing) + p.setFont(self._font) + p.translate(self.width()/2.0, self.height()/2.0) + p.scale(self._scale, self._scale) + p.drawText(self._xpos, self._ypos, str(self._value)) + p.end() + + def sizeHint(self): + return QSize(32, 32) + + def rescale(self): + + fm = QFontMetricsF(self._font, self) + maxRect = fm.boundingRect(QRectF(self.rect()), Qt.AlignCenter, + str(self._maximum)) + xscale = float(self.width())/maxRect.width() + yscale = float(self.height())/maxRect.height() + self._scale = min(xscale, yscale) + + def reposition(self): + + fm = QFontMetricsF(self._font, self) + rect = fm.boundingRect(QRectF(self.rect()), Qt.AlignCenter, + str(self._value)) + self._xpos = -rect.width()/2.0 + self._ypos = rect.height()/2.0 - fm.descent() + self.update() + + # Provide getter and setter methods for the font property. + + def getFont(self): + return self._font + + def setFont(self, font): + self._font = font + self.rescale() + self.reposition() + + font = pyqtProperty(QFont, getFont, setFont) + + # Provide getter and setter methods for the minimum and maximum properties. + + def getMinimum(self): + return self._minimum + + def setMinimum(self, value): + self._minimum = value + if self._minimum > self._maximum: + self.setMaximum(self._minimum) + if self._minimum > self._value: + self.setValue(self._minimum) + + minimum = pyqtProperty(int, getMinimum, setMinimum) + + def getMaximum(self): + return self._maximum + + def setMaximum(self, value): + self._maximum = value + self._minimum = min(self._minimum, self._maximum) + if self._maximum < self._value: + self.setValue(self._maximum) + self.rescale() + self.reposition() + + maximum = pyqtProperty(int, getMaximum, setMaximum) + + # We provide an offset property to allow the value shown to differ from + # the internal value held by the widget. + + def getOffset(self): + return self._offset + + def setOffset(self, value): + self._offset = value + + offset = pyqtProperty(int, getOffset, setOffset) + + # The value property is implemented using the getValue() and setValue() + # methods. + + def getValue(self): + return self._value + + # The setter method for the value property can also be used as a slot. + @pyqtSlot(int) + def setValue(self, value): + if not self._minimum <= value <= self._maximum: + return + self._value = value + self.valueChanged[int].emit(value + self._offset) + self.valueChanged[str].emit(str(value + self._offset)) + self.reposition() + + value = pyqtProperty(int, getValue, setValue) + + # Like QAbstractSpinBox, we provide stepUp() and stepDown() slots to + # enable the value to be incremented and decremented. + + @pyqtSlot() + def stepUp(self): + self.setValue(self._value + 1) + + @pyqtSlot() + def stepDown(self): + self.setValue(self._value - 1) + + +if __name__ == "__main__": + + import sys + + app = QApplication(sys.argv) + widget = CounterLabel() + widget.setValue(123) + widget.show() + sys.exit(app.exec_()) diff --git a/examples/designer/plugins/widgets/datetimeedit.py b/examples/designer/plugins/widgets/datetimeedit.py new file mode 100755 index 0000000..d1adf5a --- /dev/null +++ b/examples/designer/plugins/widgets/datetimeedit.py @@ -0,0 +1,371 @@ +#!/usr/bin/env python + +#============================================================================# +# (Re)Implementation of QDateEdit and QDateTimeEdit. These classes force the # +# use of the calendar popup. # +#----------------------------------------------------------------------------# +# Copyright (c) 2008 by Denviso GmbH, # +# # +# All Rights Reserved # +# # +# Permission to use, copy, modify, and distribute this software and its # +# documentation for any purpose and without fee is hereby granted, # +# provided that the above copyright notice appear in all copies and that # +# both that copyright notice and this permission notice appear in # +# supporting documentation. # +# # +# DENVISO DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS # +# SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY # +# AND FITNESS, IN NO EVENT SHALL DENVISO BE LIABLE FOR ANY # +# SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES # +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, # +# WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER # +# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE # +# OR PERFORMANCE OF THIS SOFTWARE. # +#----------------------------------------------------------------------------# + +from PyQt5.QtCore import pyqtProperty, Qt +from PyQt5.QtWidgets import (QApplication, QCalendarWidget, QDateEdit, + QDateTimeEdit, QHBoxLayout, QWidget) + + +#============================================================================# +# PyDateEdit # +#----------------------------------------------------------------------------# +class PyDateEdit(QDateEdit): + # + # Initialize base class + # Force use of the calendar popup + # Set default values for calendar properties + # + def __init__(self, *args): + super(PyDateEdit, self).__init__(*args) + + self.setCalendarPopup(True) + self.__cw = None + self.__firstDayOfWeek = Qt.Monday + self.__gridVisible = False + self.__horizontalHeaderFormat = QCalendarWidget.ShortDayNames + self.__verticalHeaderFormat = QCalendarWidget.ISOWeekNumbers + self.__navigationBarVisible = True + + # + # Call event handler of base class + # Get the calendar widget, if not already done + # Set the calendar properties + # + def mousePressEvent(self, event): + super(PyDateEdit, self).mousePressEvent(event) + + if not self.__cw: + self.__cw = self.findChild(QCalendarWidget) + if self.__cw: + self.__cw.setFirstDayOfWeek(self.__firstDayOfWeek) + self.__cw.setGridVisible(self.__gridVisible) + self.__cw.setHorizontalHeaderFormat(self.__horizontalHeaderFormat) + self.__cw.setVerticalHeaderFormat(self.__verticalHeaderFormat) + self.__cw.setNavigationBarVisible(self.__navigationBarVisible) + + # + # Make sure, the calendarPopup property is invisible in Designer + # + def getCalendarPopup(self): + return True + calendarPopup = pyqtProperty(bool, fget=getCalendarPopup) + + # + # Property firstDayOfWeek: Qt::DayOfWeek + # Get: getFirstDayOfWeek() + # Set: setFirstDayOfWeek() + # Reset: resetFirstDayOfWeek() + # + def getFirstDayOfWeek(self): + return self.__firstDayOfWeek + def setFirstDayOfWeek(self, dayOfWeek): + if dayOfWeek != self.__firstDayOfWeek: + self.__firstDayOfWeek = dayOfWeek + if self.__cw: + self.__cw.setFirstDayOfWeek(dayOfWeek) + def resetFirstDayOfWeek(self): + if self.__firstDayOfWeek != Qt.Monday: + self.__firstDayOfWeek = Qt.Monday + if self.__cw: + self.__cw.setFirstDayOfWeek(Qt.Monday) + firstDayOfWeek = pyqtProperty(Qt.DayOfWeek, + fget=getFirstDayOfWeek, + fset=setFirstDayOfWeek, + freset=resetFirstDayOfWeek) + + # + # Property gridVisible: bool + # Get: isGridVisible() + # Set: setGridVisible() + # Reset: resetGridVisible() + # + def isGridVisible(self): + return self.__gridVisible + def setGridVisible(self, show): + if show != self.__gridVisible: + self.__gridVisible = show + if self.__cw: + self.__cw.setGridVisible(show) + def resetGridVisible(self): + if self.__gridVisible != False: + self.__gridVisible = False + if self.__cw: + self.__cw.setGridVisible(False) + gridVisible = pyqtProperty(bool, + fget=isGridVisible, + fset=setGridVisible, + freset=resetGridVisible) + + # + # Property horizontalHeaderFormat: QCalendarWidget::HorizontalHeaderFormat + # Get: getHorizontalHeaderFormat() + # Set: setHorizontalHeaderFormat() + # Reset: resetHorizontalHeaderFormat() + # + def getHorizontalHeaderFormat(self): + return self.__horizontalHeaderFormat + def setHorizontalHeaderFormat(self, format): + if format != self.__horizontalHeaderFormat: + self.__horizontalHeaderFormat = format + if self.__cw: + self.__cw.setHorizontalHeaderFormat(format) + def resetHorizontalHeaderFormat(self): + if self.__horizontalHeaderFormat != QCalendarWidget.ShortDayNames: + self.__horizontalHeaderFormat = QCalendarWidget.ShortDayNames + if self.__cw: + self.__cw.setHorizontalHeaderFormat(QCalendarWidget.ShortDayNames) + horizontalHeaderFormat = pyqtProperty(QCalendarWidget.HorizontalHeaderFormat, + fget=getHorizontalHeaderFormat, + fset=setHorizontalHeaderFormat, + freset=resetHorizontalHeaderFormat) + + # + # Property verticalHeaderFormat: QCalendarWidget::VerticalHeaderFormat + # Get: getVerticalHeaderFormat() + # Set: setVerticalHeaderFormat() + # Reset: resetVerticalHeaderFormat() + # + def getVerticalHeaderFormat(self): + return self.__verticalHeaderFormat + def setVerticalHeaderFormat(self, format): + if format != self.__verticalHeaderFormat: + self.__verticalHeaderFormat = format + if self.__cw: + self.__cw.setVerticalHeaderFormat(format) + def resetVerticalHeaderFormat(self): + if self.__verticalHeaderFormat != QCalendarWidget.ISOWeekNumbers: + self.__verticalHeaderFormat = QCalendarWidget.ISOWeekNumbers + if self.__cw: + self.__cw.setVerticalHeaderFormat(QCalendarWidget.ISOWeekNumbers) + verticalHeaderFormat = pyqtProperty(QCalendarWidget.VerticalHeaderFormat, + fget=getVerticalHeaderFormat, + fset=setVerticalHeaderFormat, + freset=resetVerticalHeaderFormat) + + # + # Property navigationBarVisible: bool + # Get: isNavigationBarVisible() + # Set: setNavigationBarVisible() + # Reset: resetNavigationBarVisible() + # + def isNavigationBarVisible(self): + return self.__navigationBarVisible + def setNavigationBarVisible(self, visible): + if visible != self.__navigationBarVisible: + self.__navigationBarVisible = visible + if self.__cw: + self.__cw.setNavigationBarVisible(visible) + def resetNavigationBarVisible(self): + if self.__navigationBarVisible != True: + self.__navigationBarVisible = True + if self.__cw: + self.__cw.setNavigationBarVisible(True) + navigationBarVisible = pyqtProperty(bool, + fget=isNavigationBarVisible, + fset=setNavigationBarVisible, + freset=resetNavigationBarVisible) + + +#============================================================================# +# PyDateTimeEdit # +#----------------------------------------------------------------------------# +class PyDateTimeEdit(QDateTimeEdit): + # + # Initialize base class + # Force use of the calendar popup + # Set default values for calendar properties + # + def __init__(self, *args): + super(PyDateTimeEdit, self).__init__(*args) + + self.setCalendarPopup(True) + self.__cw = None + self.__firstDayOfWeek = Qt.Monday + self.__gridVisible = False + self.__horizontalHeaderFormat = QCalendarWidget.ShortDayNames + self.__verticalHeaderFormat = QCalendarWidget.ISOWeekNumbers + self.__navigationBarVisible = True + + # + # Call event handler of base class + # Get the calendar widget, if not already done + # Set the calendar properties + # + def mousePressEvent(self, event): + super(PyDateTimeEdit, self).mousePressEvent(event) + + if not self.__cw: + self.__cw = self.findChild(QCalendarWidget) + if self.__cw: + self.__cw.setFirstDayOfWeek(self.__firstDayOfWeek) + self.__cw.setGridVisible(self.__gridVisible) + self.__cw.setHorizontalHeaderFormat(self.__horizontalHeaderFormat) + self.__cw.setVerticalHeaderFormat(self.__verticalHeaderFormat) + self.__cw.setNavigationBarVisible(self.__navigationBarVisible) + + # + # Make sure, the calendarPopup property is invisible in Designer + # + def getCalendarPopup(self): + return True + calendarPopup = pyqtProperty(bool, fget=getCalendarPopup) + + # + # Property firstDayOfWeek: Qt::DayOfWeek + # Get: getFirstDayOfWeek() + # Set: setFirstDayOfWeek() + # Reset: resetFirstDayOfWeek() + # + def getFirstDayOfWeek(self): + return self.__firstDayOfWeek + def setFirstDayOfWeek(self, dayOfWeek): + if dayOfWeek != self.__firstDayOfWeek: + self.__firstDayOfWeek = dayOfWeek + if self.__cw: + self.__cw.setFirstDayOfWeek(dayOfWeek) + def resetFirstDayOfWeek(self): + if self.__firstDayOfWeek != Qt.Monday: + self.__firstDayOfWeek = Qt.Monday + if self.__cw: + self.__cw.setFirstDayOfWeek(Qt.Monday) + firstDayOfWeek = pyqtProperty(Qt.DayOfWeek, + fget=getFirstDayOfWeek, + fset=setFirstDayOfWeek, + freset=resetFirstDayOfWeek) + + # + # Property gridVisible: bool + # Get: isGridVisible() + # Set: setGridVisible() + # Reset: resetGridVisible() + # + def isGridVisible(self): + return self.__gridVisible + def setGridVisible(self, show): + if show != self.__gridVisible: + self.__gridVisible = show + if self.__cw: + self.__cw.setGridVisible(show) + def resetGridVisible(self): + if self.__gridVisible != False: + self.__gridVisible = False + if self.__cw: + self.__cw.setGridVisible(False) + gridVisible = pyqtProperty(bool, + fget=isGridVisible, + fset=setGridVisible, + freset=resetGridVisible) + + # + # Property horizontalHeaderFormat: QCalendarWidget::HorizontalHeaderFormat + # Get: getHorizontalHeaderFormat() + # Set: setHorizontalHeaderFormat() + # Reset: resetHorizontalHeaderFormat() + # + def getHorizontalHeaderFormat(self): + return self.__horizontalHeaderFormat + def setHorizontalHeaderFormat(self, format): + if format != self.__horizontalHeaderFormat: + self.__horizontalHeaderFormat = format + if self.__cw: + self.__cw.setHorizontalHeaderFormat(format) + def resetHorizontalHeaderFormat(self): + if self.__horizontalHeaderFormat != QCalendarWidget.ShortDayNames: + self.__horizontalHeaderFormat = QCalendarWidget.ShortDayNames + if self.__cw: + self.__cw.setHorizontalHeaderFormat(QCalendarWidget.ShortDayNames) + horizontalHeaderFormat = pyqtProperty(QCalendarWidget.HorizontalHeaderFormat, + fget=getHorizontalHeaderFormat, + fset=setHorizontalHeaderFormat, + freset=resetHorizontalHeaderFormat) + + # + # Property verticalHeaderFormat: QCalendarWidget::VerticalHeaderFormat + # Get: getVerticalHeaderFormat() + # Set: setVerticalHeaderFormat() + # Reset: resetVerticalHeaderFormat() + # + def getVerticalHeaderFormat(self): + return self.__verticalHeaderFormat + def setVerticalHeaderFormat(self, format): + if format != self.__verticalHeaderFormat: + self.__verticalHeaderFormat = format + if self.__cw: + self.__cw.setVerticalHeaderFormat(format) + def resetVerticalHeaderFormat(self): + if self.__verticalHeaderFormat != QCalendarWidget.ISOWeekNumbers: + self.__verticalHeaderFormat = QCalendarWidget.ISOWeekNumbers + if self.__cw: + self.__cw.setVerticalHeaderFormat(QCalendarWidget.ISOWeekNumbers) + verticalHeaderFormat = pyqtProperty(QCalendarWidget.VerticalHeaderFormat, + fget=getVerticalHeaderFormat, + fset=setVerticalHeaderFormat, + freset=resetVerticalHeaderFormat) + + # + # Property navigationBarVisible: bool + # Get: isNavigationBarVisible() + # Set: setNavigationBarVisible() + # Reset: resetNavigationBarVisible() + # + def isNavigationBarVisible(self): + return self.__navigationBarVisible + def setNavigationBarVisible(self, visible): + if visible != self.__navigationBarVisible: + self.__navigationBarVisible = visible + if self.__cw: + self.__cw.setNavigationBarVisible(visible) + def resetNavigationBarVisible(self): + if self.__navigationBarVisible != True: + self.__navigationBarVisible = True + if self.__cw: + self.__cw.setNavigationBarVisible(True) + navigationBarVisible = pyqtProperty(bool, + fget=isNavigationBarVisible, + fset=setNavigationBarVisible, + freset=resetNavigationBarVisible) + + +if __name__ == "__main__": + + import sys + + app = QApplication(sys.argv) + + w = QWidget() + lay = QHBoxLayout() + + lay.addWidget(PyDateEdit()) + lay.addWidget(PyDateTimeEdit()) + + w.setLayout(lay) + w.show() + + sys.exit(app.exec_()) + +#============================================================================# +# EOF # +#----------------------------------------------------------------------------# diff --git a/examples/designer/plugins/widgets/helloglwidget.py b/examples/designer/plugins/widgets/helloglwidget.py new file mode 100755 index 0000000..f95bcdb --- /dev/null +++ b/examples/designer/plugins/widgets/helloglwidget.py @@ -0,0 +1,261 @@ +#!/usr/bin/env python + +""" +helloglwidget.py + +A simple OpenGL custom widget for Qt Designer. + +Copyright (C) 2007 David Boddie +Copyright (C) 2005-2006 Trolltech ASA. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +""" + +import math + +from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QPoint, QSize, Qt +from PyQt5.QtGui import QColor +from PyQt5.QtWidgets import QApplication, QOpenGLWidget + + +class HelloGLWidget(QOpenGLWidget): + """HelloGLWidget(QOpenGLWidget) + + Provides a custom widget to display an OpenGL-rendered Qt logo. + Various properties and slots are defined so that the user can rotate + the logo, and signals are defined to enable other components to + react to changes to its orientation. + """ + + # We define three signals that are used to indicate changes to the + # rotation of the logo. + xRotationChanged = pyqtSignal(int) + yRotationChanged = pyqtSignal(int) + zRotationChanged = pyqtSignal(int) + + def __init__(self, parent=None): + super(HelloGLWidget, self).__init__(parent) + + self.object = 0 + self.xRot = 0 + self.yRot = 0 + self.zRot = 0 + + self.lastPos = QPoint() + + self.trolltechGreen = QColor.fromCmykF(0.40, 0.0, 1.0, 0.0) + self.trolltechPurple = QColor.fromCmykF(0.39, 0.39, 0.0, 0.0) + + self.setWindowTitle("Hello GL") + + # The rotation of the logo about the x-axis can be controlled using the + # xRotation property, defined using the following getter and setter + # methods. + + def getXRotation(self): + return self.xRot + + # The setXRotation() setter method is also a slot. + @pyqtSlot(int) + def setXRotation(self, angle): + angle = self.normalizeAngle(angle) + if angle != self.xRot: + self.xRot = angle + self.xRotationChanged.emit(angle) + self.update() + + xRotation = pyqtProperty(int, getXRotation, setXRotation) + + # The rotation of the logo about the y-axis can be controlled using the + # yRotation property, defined using the following getter and setter + # methods. + + def getYRotation(self): + return self.yRot + + # The setYRotation() setter method is also a slot. + @pyqtSlot(int) + def setYRotation(self, angle): + angle = self.normalizeAngle(angle) + if angle != self.yRot: + self.yRot = angle + self.yRotationChanged.emit(angle) + self.update() + + yRotation = pyqtProperty(int, getYRotation, setYRotation) + + # The rotation of the logo about the z-axis can be controlled using the + # zRotation property, defined using the following getter and setter + # methods. + + def getZRotation(self): + return self.zRot + + # The setZRotation() setter method is also a slot. + @pyqtSlot(int) + def setZRotation(self, angle): + angle = self.normalizeAngle(angle) + if angle != self.zRot: + self.zRot = angle + self.zRotationChanged.emit(angle) + self.update() + + zRotation = pyqtProperty(int, getZRotation, setZRotation) + + def minimumSizeHint(self): + return QSize(50, 50) + + def sizeHint(self): + return QSize(200, 200) + + def initializeGL(self): + self.gl = self.context().versionFunctions() + self.gl.initializeOpenGLFunctions() + + self.setClearColor(self.trolltechPurple.darker()) + self.object = self.makeObject() + self.gl.glShadeModel(self.gl.GL_SMOOTH) + self.gl.glEnable(self.gl.GL_DEPTH_TEST) + self.gl.glEnable(self.gl.GL_CULL_FACE) + + def paintGL(self): + self.gl.glClear(self.gl.GL_COLOR_BUFFER_BIT | self.gl.GL_DEPTH_BUFFER_BIT) + self.gl.glLoadIdentity() + self.gl.glTranslated(0.0, 0.0, -10.0) + self.gl.glRotated(self.xRot / 16.0, 1.0, 0.0, 0.0) + self.gl.glRotated(self.yRot / 16.0, 0.0, 1.0, 0.0) + self.gl.glRotated(self.zRot / 16.0, 0.0, 0.0, 1.0) + self.gl.glCallList(self.object) + + def resizeGL(self, width, height): + side = min(width, height) + self.gl.glViewport((width - side) / 2, (height - side) / 2, side, side) + + self.gl.glMatrixMode(self.gl.GL_PROJECTION) + self.gl.glLoadIdentity() + self.gl.glOrtho(-0.5, +0.5, +0.5, -0.5, 4.0, 15.0) + self.gl.glMatrixMode(self.gl.GL_MODELVIEW) + + def mousePressEvent(self, event): + self.lastPos = QPoint(event.pos()) + + def mouseMoveEvent(self, event): + dx = event.x() - self.lastPos.x() + dy = event.y() - self.lastPos.y() + + if event.buttons() & Qt.LeftButton: + self.setXRotation(self.xRot + 8 * dy) + self.setYRotation(self.yRot + 8 * dx) + elif event.buttons() & Qt.RightButton: + self.setXRotation(self.xRot + 8 * dy) + self.setZRotation(self.zRot + 8 * dx) + + self.lastPos = QPoint(event.pos()) + + def makeObject(self): + genList = self.gl.glGenLists(1) + self.gl.glNewList(genList, self.gl.GL_COMPILE) + + self.gl.glBegin(self.gl.GL_QUADS) + + x1 = +0.06 + y1 = -0.14 + x2 = +0.14 + y2 = -0.06 + x3 = +0.08 + y3 = +0.00 + x4 = +0.30 + y4 = +0.22 + + self.quad(x1, y1, x2, y2, y2, x2, y1, x1) + self.quad(x3, y3, x4, y4, y4, x4, y3, x3) + + self.extrude(x1, y1, x2, y2) + self.extrude(x2, y2, y2, x2) + self.extrude(y2, x2, y1, x1) + self.extrude(y1, x1, x1, y1) + self.extrude(x3, y3, x4, y4) + self.extrude(x4, y4, y4, x4) + self.extrude(y4, x4, y3, x3) + + Pi = 3.14159265358979323846 + NumSectors = 200 + + for i in range(NumSectors): + angle1 = (i * 2 * Pi) / NumSectors + x5 = 0.30 * math.sin(angle1) + y5 = 0.30 * math.cos(angle1) + x6 = 0.20 * math.sin(angle1) + y6 = 0.20 * math.cos(angle1) + + angle2 = ((i + 1) * 2 * Pi) / NumSectors + x7 = 0.20 * math.sin(angle2) + y7 = 0.20 * math.cos(angle2) + x8 = 0.30 * math.sin(angle2) + y8 = 0.30 * math.cos(angle2) + + self.quad(x5, y5, x6, y6, x7, y7, x8, y8) + + self.extrude(x6, y6, x7, y7) + self.extrude(x8, y8, x5, y5) + + self.gl.glEnd() + self.gl.glEndList() + + return genList + + def quad(self, x1, y1, x2, y2, x3, y3, x4, y4): + self.setColor(self.trolltechGreen) + + self.gl.glVertex3d(x1, y1, -0.05) + self.gl.glVertex3d(x2, y2, -0.05) + self.gl.glVertex3d(x3, y3, -0.05) + self.gl.glVertex3d(x4, y4, -0.05) + + self.gl.glVertex3d(x4, y4, +0.05) + self.gl.glVertex3d(x3, y3, +0.05) + self.gl.glVertex3d(x2, y2, +0.05) + self.gl.glVertex3d(x1, y1, +0.05) + + def extrude(self, x1, y1, x2, y2): + self.setColor(self.trolltechGreen.darker(250 + int(100 * x1))) + + self.gl.glVertex3d(x1, y1, +0.05) + self.gl.glVertex3d(x2, y2, +0.05) + self.gl.glVertex3d(x2, y2, -0.05) + self.gl.glVertex3d(x1, y1, -0.05) + + def normalizeAngle(self, angle): + while angle < 0: + angle += 360 * 16 + while angle > 360 * 16: + angle -= 360 * 16 + return angle + + def setClearColor(self, c): + self.gl.glClearColor(c.redF(), c.greenF(), c.blueF(), c.alphaF()) + + def setColor(self, c): + self.gl.glColor4f(c.redF(), c.greenF(), c.blueF(), c.alphaF()) + + +if __name__ == "__main__": + + import sys + + app = QApplication(sys.argv) + widget = HelloGLWidget() + widget.show() + sys.exit(app.exec_()) diff --git a/examples/designer/plugins/widgets/multipagewidget.py b/examples/designer/plugins/widgets/multipagewidget.py new file mode 100755 index 0000000..b2b77b5 --- /dev/null +++ b/examples/designer/plugins/widgets/multipagewidget.py @@ -0,0 +1,107 @@ +#!/usr/bin/env python + +#============================================================================# +# PyQt5 port of the designer/containerextension example from Qt v5.x # +#----------------------------------------------------------------------------# +from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QSize +from PyQt5.QtWidgets import (QApplication, QComboBox, QLabel, QStackedWidget, + QVBoxLayout, QWidget) + + +#============================================================================# +# Implementation of a MultiPageWidget using a QComboBox and a QStackedWidget # +#----------------------------------------------------------------------------# +class PyMultiPageWidget(QWidget): + + currentIndexChanged = pyqtSignal(int) + + pageTitleChanged = pyqtSignal(str) + + def __init__(self, parent=None): + super(PyMultiPageWidget, self).__init__(parent) + + self.comboBox = QComboBox() + # MAGIC + # It is important that the combo box has an object name beginning + # with '__qt__passive_', otherwise, it is inactive in the form editor + # of the designer and you can't change the current page via the + # combo box. + # MAGIC + self.comboBox.setObjectName('__qt__passive_comboBox') + self.stackWidget = QStackedWidget() + self.comboBox.activated.connect(self.setCurrentIndex) + self.layout = QVBoxLayout() + self.layout.addWidget(self.comboBox) + self.layout.addWidget(self.stackWidget) + self.setLayout(self.layout) + + def sizeHint(self): + return QSize(200, 150) + + def count(self): + return self.stackWidget.count() + + def widget(self, index): + return self.stackWidget.widget(index) + + @pyqtSlot(QWidget) + def addPage(self, page): + self.insertPage(self.count(), page) + + @pyqtSlot(int, QWidget) + def insertPage(self, index, page): + page.setParent(self.stackWidget) + self.stackWidget.insertWidget(index, page) + title = page.windowTitle() + if title == "": + title = "Page %d" % (self.comboBox.count() + 1) + page.setWindowTitle(title) + self.comboBox.insertItem(index, title) + + @pyqtSlot(int) + def removePage(self, index): + widget = self.stackWidget.widget(index) + self.stackWidget.removeWidget(widget) + self.comboBox.removeItem(index) + + def getPageTitle(self): + cw = self.stackWidget.currentWidget() + return cw.windowTitle() if cw is not None else '' + + @pyqtSlot(str) + def setPageTitle(self, newTitle): + cw = self.stackWidget.currentWidget() + if cw is not None: + self.comboBox.setItemText(self.getCurrentIndex(), newTitle) + cw.setWindowTitle(newTitle) + self.pageTitleChanged.emit(newTitle) + + def getCurrentIndex(self): + return self.stackWidget.currentIndex() + + @pyqtSlot(int) + def setCurrentIndex(self, index): + if index != self.getCurrentIndex(): + self.stackWidget.setCurrentIndex(index) + self.comboBox.setCurrentIndex(index) + self.currentIndexChanged.emit(index) + + pageTitle = pyqtProperty(str, fget=getPageTitle, fset=setPageTitle, stored=False) + currentIndex = pyqtProperty(int, fget=getCurrentIndex, fset=setCurrentIndex) + + +#============================================================================# +# Main for testing the class # +#----------------------------------------------------------------------------# +if __name__ == "__main__": + import sys + app = QApplication(sys.argv) + widget = PyMultiPageWidget() + widget.addPage(QLabel('This is page #1')) + widget.addPage(QLabel('This is page #2')) + widget.show() + sys.exit(app.exec_()) + +#============================================================================# +# EOF # +#----------------------------------------------------------------------------# diff --git a/examples/designer/plugins/widgets/polygonwidget.py b/examples/designer/plugins/widgets/polygonwidget.py new file mode 100755 index 0000000..7f01276 --- /dev/null +++ b/examples/designer/plugins/widgets/polygonwidget.py @@ -0,0 +1,192 @@ +#!/usr/bin/env python + +""" +polygonwidget.py + +A PyQt custom widget example for Qt Designer. + +Copyright (C) 2006 David Boddie +Copyright (C) 2005-2006 Trolltech ASA. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +""" + +import math + +from PyQt5.QtCore import pyqtProperty, pyqtSlot, QPointF, QSize +from PyQt5.QtGui import QBrush, QColor, QPainter, QPainterPath, QRadialGradient +from PyQt5.QtWidgets import QApplication, QWidget + + +class PolygonWidget(QWidget): + """PolygonWidget(QWidget) + + Provides a custom widget to display a polygon with properties and slots + that can be used to customize its appearance. + """ + + def __init__(self, parent=None): + + super(PolygonWidget, self).__init__(parent) + + self._sides = 5 + self._innerRadius = 20 + self._outerRadius = 50 + self._angle = 0 + + self.createPath() + + self._innerColor = QColor(255, 255, 128) + self._outerColor = QColor(255, 0, 128) + + self.createGradient() + + def paintEvent(self, event): + + painter = QPainter() + painter.begin(self) + painter.setRenderHint(QPainter.Antialiasing) + painter.setBrush(QBrush(QColor(192, 192, 255))) + painter.drawRect(event.rect()) + + painter.translate(self.width()/2.0, self.height()/2.0) + painter.rotate(self._angle) + painter.setBrush(QBrush(self.gradient)) + painter.drawPath(self.path) + painter.end() + + def sizeHint(self): + + return QSize(2*self._outerRadius + 20, 2*self._outerRadius + 20) + + def createPath(self): + + self.path = QPainterPath() + angle = 2*math.pi/self._sides + self.path.moveTo(self._outerRadius, 0) + for step in range(1, self._sides + 1): + self.path.lineTo( + self._innerRadius * math.cos((step - 0.5) * angle), + self._innerRadius * math.sin((step - 0.5) * angle) + ) + self.path.lineTo( + self._outerRadius * math.cos(step * angle), + self._outerRadius * math.sin(step * angle) + ) + self.path.closeSubpath() + + def createGradient(self): + + center = QPointF(0, 0) + self.gradient = QRadialGradient(center, self._outerRadius, center) + self.gradient.setColorAt(0.5, QColor(self._innerColor)) + self.gradient.setColorAt(1.0, QColor(self._outerColor)) + + # The angle property is implemented using the getAngle() and setAngle() + # methods. + + def getAngle(self): + return self._angle + + # The setAngle() setter method is also a slot. + @pyqtSlot(int) + def setAngle(self, angle): + self._angle = min(max(0, angle), 360) + self.update() + + angle = pyqtProperty(int, getAngle, setAngle) + + # The innerRadius property is implemented using the getInnerRadius() and + # setInnerRadius() methods. + + def getInnerRadius(self): + return self._innerRadius + + # The setInnerRadius() setter method is also a slot. + @pyqtSlot(int) + def setInnerRadius(self, radius): + self._innerRadius = radius + self.createPath() + self.createGradient() + self.update() + + innerRadius = pyqtProperty(int, getInnerRadius, setInnerRadius) + + # The outerRadius property is implemented using the getOuterRadius() and + # setOuterRadius() methods. + + def getOuterRadius(self): + return self._outerRadius + + # The setOuterRadius() setter method is also a slot. + @pyqtSlot(int) + def setOuterRadius(self, radius): + self._outerRadius = radius + self.createPath() + self.createGradient() + self.update() + + outerRadius = pyqtProperty(int, getOuterRadius, setOuterRadius) + + # The numberOfSides property is implemented using the getNumberOfSides() + # and setNumberOfSides() methods. + + def getNumberOfSides(self): + return self._sides + + # The setNumberOfSides() setter method is also a slot. + @pyqtSlot(int) + def setNumberOfSides(self, sides): + self._sides = max(3, sides) + self.createPath() + self.update() + + numberOfSides = pyqtProperty(int, getNumberOfSides, setNumberOfSides) + + # The innerColor property is implemented using the getInnerColor() and + # setInnerColor() methods. + + def getInnerColor(self): + return self._innerColor + + def setInnerColor(self, color): + self._innerColor = max(3, color) + self.createGradient() + self.update() + + innerColor = pyqtProperty(QColor, getInnerColor, setInnerColor) + + # The outerColor property is implemented using the getOuterColor() and + # setOuterColor() methods. + + def getOuterColor(self): + return self._outerColor + + def setOuterColor(self, color): + self._outerColor = color + self.createGradient() + self.update() + + outerColor = pyqtProperty(QColor, getOuterColor, setOuterColor) + + +if __name__ == "__main__": + + import sys + + app = QApplication(sys.argv) + window = PolygonWidget() + window.show() + sys.exit(app.exec_()) diff --git a/examples/designer/plugins/widgets/pydemo.py b/examples/designer/plugins/widgets/pydemo.py new file mode 100755 index 0000000..18beddf --- /dev/null +++ b/examples/designer/plugins/widgets/pydemo.py @@ -0,0 +1,156 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Riverbank Computing Limited nor the names of +## its contributors may be used to endorse or promote products +## derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## +############################################################################# + + +from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot +from PyQt5.QtWidgets import QApplication, QTextEdit + + +# The purpose of this class is to show that Designer's property editor shows +# all Python classes in the hierarchy that define properties. +class PyTextViewer(QTextEdit): + + # Initialise the instance. + def __init__(self, parent=None): + super(PyTextViewer, self).__init__(parent) + + self.setReadOnly(True) + + # Initialise the author property by calling it's reset function. + self.resetAuthor() + + # The getter for the author property. Note that we cannot follow the Qt + # naming convention (ie. by using the naming the getter "author") because + # it would conflict with the property name. + def getAuthor(self): + return self._author + + # The setter for the author property. + def setAuthor(self, name): + self._author = name + + # The resetter for the author property. Only Qt Designer uses this. Qt + # Designer does not use the deleter function of the property. + def resetAuthor(self): + self._author = "David Boddie" + + # Define the author property. This will look like a C++ property to Qt + # Designer and a Python property to Python. + author = pyqtProperty(str, getAuthor, setAuthor, resetAuthor) + + +# This is the class that implements the custom widget. +class PyDemo(PyTextViewer): + + # Define the Qt signals as a sequence of C++ function signatures excluding + # the return type. These may be connected to other signals or slots in Qt + # Designer. + zoomChanged = pyqtSignal(int) + + # Initialise the instance. + def __init__(self, parent=None): + super(PyDemo, self).__init__(parent) + + self.setWindowTitle("PyQt Demonstration Widget") + self.setText(_demo_text) + + # Initialise the zoom property. We don't just call the resetter + # because it assumes that this has already been initialised. + self._zoom = 0 + + # The getter for the zoom property. + def getZoom(self): + return self._zoom + + # The setter for the zoom property. We also make define this as a Qt slot + # which can be connected to Qt signals in Qt Designer. + @pyqtSlot(int) + def setZoom(self, zoom): + # Don't do anything if nothing has changed. + if self._zoom == zoom: + return + + # Zoom in or out according to the relative zoom levels. + if self._zoom < zoom: + self.zoomIn(zoom - self._zoom) + elif self._zoom > zoom: + self.zoomOut(self._zoom - zoom) + + # Remember the new zoom level. + self._zoom = zoom + + # Emit the Qt signal to say that the zoom level has changed. + self.zoomChanged.emit(zoom) + + # The resetter for the zoom property. + def resetZoom(self): + self.setZoom(0) + + # Define the zoom property. Changing the value of this in Qt Designer's + # property editor causes the zoom level to change dynamically. + zoom = pyqtProperty(int, getZoom, setZoom, resetZoom) + + +# The text displayed in the custom widget. +_demo_text = """

    PyQt Demonstration Widget

    +

    This simple example demonstrates the following features.

    +
      +
    • The definition of properties that behave as C++ properties to Qt and + Python properties to Python.
    • +
    • The definition of new Qt signals that can be connected to other signals + and Qt slots in Designer.
    • +
    • The definition of new Qt slots that can be connected to signals in + Designer.
    • +
    +""" + + +# Display the custom widget if the script is being run directly from the +# command line. +if __name__ == "__main__": + + import sys + + app = QApplication(sys.argv) + + demo = PyDemo() + demo.show() + + sys.exit(app.exec_()) diff --git a/examples/designer/plugins/widgets/pythonconsolewidget.py b/examples/designer/plugins/widgets/pythonconsolewidget.py new file mode 100755 index 0000000..25182d3 --- /dev/null +++ b/examples/designer/plugins/widgets/pythonconsolewidget.py @@ -0,0 +1,98 @@ +#!/usr/bin/env python + +""" +pythonconsolewidget.py + +A Python console custom widget for Qt Designer. + +Copyright (C) 2006 David Boddie +Copyright (C) 2005-2006 Trolltech ASA. All rights reserved. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +""" + +from PyQt5.QtCore import pyqtSignal, QEvent, Qt +from PyQt5.QtWidgets import QApplication, QLineEdit + + +class PythonConsoleWidget(QLineEdit): + """PythonConsoleWidget(QLineEdit) + + Provides a custom widget to accept Python expressions and emit output + to other components via a custom signal. + """ + + pythonOutput = pyqtSignal(str) + + def __init__(self, parent=None): + + super(PythonConsoleWidget, self).__init__(parent) + + self.history = [] + self.current = -1 + + self.returnPressed.connect(self.execute) + + def keyReleaseEvent(self, event): + + if event.type() == QEvent.KeyRelease: + + if event.key() == Qt.Key_Up: + current = max(0, self.current - 1) + if 0 <= current < len(self.history): + self.setText(self.history[current]) + self.current = current + + event.accept() + + elif event.key() == Qt.Key_Down: + current = min(len(self.history), self.current + 1) + if 0 <= current < len(self.history): + self.setText(self.history[current]) + else: + self.clear() + self.current = current + + event.accept() + + def execute(self): + + # Define this here to give users something to look at. + qApp = QApplication.instance() + + self.expression = self.text() + try: + result = str(eval(str(self.expression))) + + # Emit the result of the evaluated expression. + self.pythonOutput.emit(result) + + # Clear the line edit, append the successful expression to the + # history, and update the current command index. + self.clear() + self.history.append(self.expression) + self.current = len(self.history) + except: + pass + + +if __name__ == "__main__": + + import sys + + app = QApplication(sys.argv) + widget = PythonConsoleWidget() + widget.show() + sys.exit(app.exec_()) diff --git a/examples/desktop/README b/examples/desktop/README new file mode 100644 index 0000000..ae4eb4e --- /dev/null +++ b/examples/desktop/README @@ -0,0 +1,27 @@ +PyQt provides features to enable applications to integrate with the user's +preferred desktop environment. + +Features such as system tray icons, access to the desktop widget, and +support for desktop services can be used to improve the appearance of +applications and take advantage of underlying desktop facilities. + + +The example launcher provided with PyQt can be used to explore each of the +examples in this directory. + +Documentation for these examples can be found via the Tutorial and Examples +link in the main Qt documentation. + + +Finding the PyQt Examples and Demos launcher +============================================ + +On Windows: + +The launcher can be accessed via the Windows Start menu. Select the menu +entry entitled "Examples and Demos" entry in the submenu containing PyQt5. + +On all platforms: + +The source code for the launcher can be found in the examples/demos/qtdemo +directory in the PyQt package. diff --git a/examples/desktop/screenshot.py b/examples/desktop/screenshot.py new file mode 100755 index 0000000..e959a84 --- /dev/null +++ b/examples/desktop/screenshot.py @@ -0,0 +1,173 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QDir, Qt, QTimer +from PyQt5.QtGui import QPixmap +from PyQt5.QtWidgets import (QApplication, QCheckBox, QFileDialog, QGridLayout, + QGroupBox, QHBoxLayout, QLabel, QPushButton, QSizePolicy, QSpinBox, + QVBoxLayout, QWidget) + + +class Screenshot(QWidget): + def __init__(self): + super(Screenshot, self).__init__() + + self.screenshotLabel = QLabel() + self.screenshotLabel.setSizePolicy(QSizePolicy.Expanding, + QSizePolicy.Expanding) + self.screenshotLabel.setAlignment(Qt.AlignCenter) + self.screenshotLabel.setMinimumSize(240, 160) + + self.createOptionsGroupBox() + self.createButtonsLayout() + + mainLayout = QVBoxLayout() + mainLayout.addWidget(self.screenshotLabel) + mainLayout.addWidget(self.optionsGroupBox) + mainLayout.addLayout(self.buttonsLayout) + self.setLayout(mainLayout) + + self.shootScreen() + self.delaySpinBox.setValue(5) + + self.setWindowTitle("Screenshot") + self.resize(300, 200) + + def resizeEvent(self, event): + scaledSize = self.originalPixmap.size() + scaledSize.scale(self.screenshotLabel.size(), Qt.KeepAspectRatio) + if not self.screenshotLabel.pixmap() or scaledSize != self.screenshotLabel.pixmap().size(): + self.updateScreenshotLabel() + + def newScreenshot(self): + if self.hideThisWindowCheckBox.isChecked(): + self.hide() + self.newScreenshotButton.setDisabled(True) + + QTimer.singleShot(self.delaySpinBox.value() * 1000, + self.shootScreen) + + def saveScreenshot(self): + format = 'png' + initialPath = QDir.currentPath() + "/untitled." + format + + fileName, _ = QFileDialog.getSaveFileName(self, "Save As", initialPath, + "%s Files (*.%s);;All Files (*)" % (format.upper(), format)) + if fileName: + self.originalPixmap.save(fileName, format) + + def shootScreen(self): + if self.delaySpinBox.value() != 0: + QApplication.instance().beep() + + screen = QApplication.primaryScreen() + if screen is not None: + self.originalPixmap = screen.grabWindow(0) + else: + self.originalPixmap = QPixmap() + + self.updateScreenshotLabel() + + self.newScreenshotButton.setDisabled(False) + if self.hideThisWindowCheckBox.isChecked(): + self.show() + + def updateCheckBox(self): + if self.delaySpinBox.value() == 0: + self.hideThisWindowCheckBox.setDisabled(True) + else: + self.hideThisWindowCheckBox.setDisabled(False) + + def createOptionsGroupBox(self): + self.optionsGroupBox = QGroupBox("Options") + + self.delaySpinBox = QSpinBox() + self.delaySpinBox.setSuffix(" s") + self.delaySpinBox.setMaximum(60) + self.delaySpinBox.valueChanged.connect(self.updateCheckBox) + + self.delaySpinBoxLabel = QLabel("Screenshot Delay:") + + self.hideThisWindowCheckBox = QCheckBox("Hide This Window") + + optionsGroupBoxLayout = QGridLayout() + optionsGroupBoxLayout.addWidget(self.delaySpinBoxLabel, 0, 0) + optionsGroupBoxLayout.addWidget(self.delaySpinBox, 0, 1) + optionsGroupBoxLayout.addWidget(self.hideThisWindowCheckBox, 1, 0, 1, 2) + self.optionsGroupBox.setLayout(optionsGroupBoxLayout) + + def createButtonsLayout(self): + self.newScreenshotButton = self.createButton("New Screenshot", + self.newScreenshot) + + self.saveScreenshotButton = self.createButton("Save Screenshot", + self.saveScreenshot) + + self.quitScreenshotButton = self.createButton("Quit", self.close) + + self.buttonsLayout = QHBoxLayout() + self.buttonsLayout.addStretch() + self.buttonsLayout.addWidget(self.newScreenshotButton) + self.buttonsLayout.addWidget(self.saveScreenshotButton) + self.buttonsLayout.addWidget(self.quitScreenshotButton) + + def createButton(self, text, member): + button = QPushButton(text) + button.clicked.connect(member) + return button + + def updateScreenshotLabel(self): + self.screenshotLabel.setPixmap(self.originalPixmap.scaled( + self.screenshotLabel.size(), Qt.KeepAspectRatio, + Qt.SmoothTransformation)) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + screenshot = Screenshot() + screenshot.show() + sys.exit(app.exec_()) diff --git a/examples/desktop/systray/images/bad.png b/examples/desktop/systray/images/bad.png new file mode 100644 index 0000000000000000000000000000000000000000..c8701a241a458d257e2e71c3d1af06007927fb86 GIT binary patch literal 2496 zcmZ`*cQ_S_8-A@EBxGb|ud^)M5P!1g#**la`B%_oOp(0tiX^3klA>AVs zHx<>vEpci1xqscie(&>s@B4h?&+mJl@2riL87I3iI{;4d0g~OO7jH%bfoW3{+MRSa zjUmL&%ouggMCUgXHtGS_kj>#g{|yFXg)0%8Mb=QVr3vdK6B}VCktAnz17IArv2ZZi zZ2dnlFo2N(OpIV=1Pc?kY?2wQ%pkCUjRovmz`=^Gtl%VI8v$Hw;ARI8JGOIxmjirT z!OsZ+PVCqQ!EF%Yf-pBkxFO1eojefR4sl*c@IsOgQhbo+hl~JZ1t7Nr@;jg)h+RV1 zEd)hjC<#MZ1S+CX6$No8)OO-GF{q0}LmZkC(2{_*By^;pD+N7i?2*P^8R*NxKoM8c^E5TzXC|RV6qFQyJ4mXvJws|!CV;@DzH?6l`5=NVMBzi8tl|y{~H|D;j94{ zO}J{pO$&##;jWFtIyj;O4_$cb!AlR`dvHu2eg^P2!0~-JVTb@jP>c|0gdk&_+z;x0 z1d|YAf>2Y0nIhZ_r_B&aMid#*2NAPLbHth>&I0ikNU%hrC6cU=Y>gCaq}m|O7U_04 zXO9efWIN)#6LOq!(FJ*~xa5j_HxwR1kvocy;OY@v^FWCQNo-kKZ=T@sPx7S zA5{6^rY~;$q1GRFj-&nr?w&wH02%|(L_u>PS_07;g!@#qQSl%c4}L9V=)|ykvNRT<3&8i67Vtse|gGVB035pznTaAxwH;v&L}L+>ErO*}CWeY_TJgj2t3f(TmqS@*MfPYj67s20GZZ zGyieMgyjimpUrTuyBmLVmrTFLfX2YV!TymKcAKivuzj%K;;zI60?FQR#d3wgw8-oI z)p*I5h3^h8oLV53JQx}(UX3e?e6xD(YjH@G$3B(+;5@eTbX)p*M*CFFDW0jWnV?;* zKHeoa4Fy!XMyhtdrHW>EK6z4fSg?*bYxY-VSmsQ>vBN9-6pHJkJ%t^PDJ>g=7t~3V z9jUh*t_XEFo(T(zTX@V~HKQDN?L>&wX%vBk3*xKU5_33%5mVax$U|ZgEMb096 zaa!P9V_-d1TRixH%fk_#@n=!AGz0IHlz>B`XD~c8e|L)(gcr~$o zo-0@iMeH z!D>EXS4);vv7}g{mPekl?R8PTnqtNv`P|=msFo>o5zd4DE<$RPDx^=c_3erD^exI7 ztqI%<-ag(6_0O~E0h}lNZ47uO<23IF@;mr+hPxz-318T}Pwr&PO7`YQk&i+<*}e@u zN!@d<*>KNc-C?uWYf?kqDdsP#iJEuI_bjVx230SobJzS`RtYS+&^9WNI-+qnHFV>gAX*=9Cmea&M0{XLsw9m-z?88 zYs@>lT{CH7FPZqpveb*}&#uWbhm-d6F}2W~B&4fm;;1c^TZkODeT9h=rdC#Dsn6GhfyzA7aY~i)p9$F&T-L2;O8l@-ZF41c#g)y>f&Nlv@^=!XdJ6 zYsQ_f6g6vP^w>7k@(OAtXC&9qj_?<@41evmsSo59rN}l?u3Ej~L1qlm##U_Pw7n>AA_r%SmXesH8o|t4Y z^;!Axy~H!k*XwmiN7MtBnBSsLe&QmYOtbi0-q96WZJI7@*OHj+=$Ri`9=aq)?BOT#_4cb?XLvIzpySaynx&erVUQ9=yQCR@ zJc5!i*=?`n?ay|nw;`6r)*)U#wobBw^s<`oWq+$~n&;1_8R_)cGN~Q?`|4u#cl)-P(H*>5nTy~<}eaLe1o8P+2;WsCI4!L$8t9~mo zYneOnkRI|WCy-g__Ibi>{=%k$y5+5=PrJPvb)~pZ`o1Vs{4Csicjvh2^-n?_=hf8$ zjthikx(yDyE{&~|ds!Ra=r6}KZJ`~hBKVC+8q|!Qrb+&zAq_$mLcS!S@aW@iO$WLsmeVj2D{ww*m`+wNj|C6Jr(ml>B*wgsm Omx^p+MXEFQO!^xC;V-$kf%K1|ZNK^z9!J0r1Jg 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 H-GBUl5R*?B literal 0 HcmV?d00001 diff --git a/examples/desktop/systray/images/trash.png b/examples/desktop/systray/images/trash.png new file mode 100644 index 0000000000000000000000000000000000000000..4c24db926d6fedc7cfe2b92a9b62c8aecd25f8be GIT binary patch literal 12128 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 literal 0 HcmV?d00001 diff --git a/examples/desktop/systray/systray.py b/examples/desktop/systray/systray.py new file mode 100755 index 0000000..0e20ad6 --- /dev/null +++ b/examples/desktop/systray/systray.py @@ -0,0 +1,237 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtGui import QIcon +from PyQt5.QtWidgets import (QAction, QApplication, QCheckBox, QComboBox, + QDialog, QGridLayout, QGroupBox, QHBoxLayout, QLabel, QLineEdit, + QMessageBox, QMenu, QPushButton, QSpinBox, QStyle, QSystemTrayIcon, + QTextEdit, QVBoxLayout) + +import systray_rc + + +class Window(QDialog): + def __init__(self): + super(Window, self).__init__() + + self.createIconGroupBox() + self.createMessageGroupBox() + + self.iconLabel.setMinimumWidth(self.durationLabel.sizeHint().width()) + + self.createActions() + self.createTrayIcon() + + self.showMessageButton.clicked.connect(self.showMessage) + self.showIconCheckBox.toggled.connect(self.trayIcon.setVisible) + self.iconComboBox.currentIndexChanged.connect(self.setIcon) + self.trayIcon.messageClicked.connect(self.messageClicked) + self.trayIcon.activated.connect(self.iconActivated) + + mainLayout = QVBoxLayout() + mainLayout.addWidget(self.iconGroupBox) + mainLayout.addWidget(self.messageGroupBox) + self.setLayout(mainLayout) + + self.iconComboBox.setCurrentIndex(1) + self.trayIcon.show() + + self.setWindowTitle("Systray") + self.resize(400, 300) + + def setVisible(self, visible): + self.minimizeAction.setEnabled(visible) + self.maximizeAction.setEnabled(not self.isMaximized()) + self.restoreAction.setEnabled(self.isMaximized() or not visible) + super(Window, self).setVisible(visible) + + def closeEvent(self, event): + if self.trayIcon.isVisible(): + QMessageBox.information(self, "Systray", + "The program will keep running in the system tray. To " + "terminate the program, choose Quit in the " + "context menu of the system tray entry.") + self.hide() + event.ignore() + + def setIcon(self, index): + icon = self.iconComboBox.itemIcon(index) + self.trayIcon.setIcon(icon) + self.setWindowIcon(icon) + + self.trayIcon.setToolTip(self.iconComboBox.itemText(index)) + + def iconActivated(self, reason): + if reason in (QSystemTrayIcon.Trigger, QSystemTrayIcon.DoubleClick): + self.iconComboBox.setCurrentIndex( + (self.iconComboBox.currentIndex() + 1) + % self.iconComboBox.count()) + elif reason == QSystemTrayIcon.MiddleClick: + self.showMessage() + + def showMessage(self): + icon = QSystemTrayIcon.MessageIcon( + self.typeComboBox.itemData(self.typeComboBox.currentIndex())) + self.trayIcon.showMessage(self.titleEdit.text(), + self.bodyEdit.toPlainText(), icon, + self.durationSpinBox.value() * 1000) + + def messageClicked(self): + QMessageBox.information(None, "Systray", + "Sorry, I already gave what help I could.\nMaybe you should " + "try asking a human?") + + def createIconGroupBox(self): + self.iconGroupBox = QGroupBox("Tray Icon") + + self.iconLabel = QLabel("Icon:") + + self.iconComboBox = QComboBox() + self.iconComboBox.addItem(QIcon(':/images/bad.png'), "Bad") + self.iconComboBox.addItem(QIcon(':/images/heart.png'), "Heart") + self.iconComboBox.addItem(QIcon(':/images/trash.png'), "Trash") + + self.showIconCheckBox = QCheckBox("Show icon") + self.showIconCheckBox.setChecked(True) + + iconLayout = QHBoxLayout() + iconLayout.addWidget(self.iconLabel) + iconLayout.addWidget(self.iconComboBox) + iconLayout.addStretch() + iconLayout.addWidget(self.showIconCheckBox) + self.iconGroupBox.setLayout(iconLayout) + + def createMessageGroupBox(self): + self.messageGroupBox = QGroupBox("Balloon Message") + + typeLabel = QLabel("Type:") + + self.typeComboBox = QComboBox() + self.typeComboBox.addItem("None", QSystemTrayIcon.NoIcon) + self.typeComboBox.addItem(self.style().standardIcon( + QStyle.SP_MessageBoxInformation), "Information", + QSystemTrayIcon.Information) + self.typeComboBox.addItem(self.style().standardIcon( + QStyle.SP_MessageBoxWarning), "Warning", + QSystemTrayIcon.Warning) + self.typeComboBox.addItem(self.style().standardIcon( + QStyle.SP_MessageBoxCritical), "Critical", + QSystemTrayIcon.Critical) + self.typeComboBox.setCurrentIndex(1) + + self.durationLabel = QLabel("Duration:") + + self.durationSpinBox = QSpinBox() + self.durationSpinBox.setRange(5, 60) + self.durationSpinBox.setSuffix(" s") + self.durationSpinBox.setValue(15) + + durationWarningLabel = QLabel("(some systems might ignore this hint)") + durationWarningLabel.setIndent(10) + + titleLabel = QLabel("Title:") + + self.titleEdit = QLineEdit("Cannot connect to network") + + bodyLabel = QLabel("Body:") + + self.bodyEdit = QTextEdit() + self.bodyEdit.setPlainText("Don't believe me. Honestly, I don't have " + "a clue.\nClick this balloon for details.") + + self.showMessageButton = QPushButton("Show Message") + self.showMessageButton.setDefault(True) + + messageLayout = QGridLayout() + messageLayout.addWidget(typeLabel, 0, 0) + messageLayout.addWidget(self.typeComboBox, 0, 1, 1, 2) + messageLayout.addWidget(self.durationLabel, 1, 0) + messageLayout.addWidget(self.durationSpinBox, 1, 1) + messageLayout.addWidget(durationWarningLabel, 1, 2, 1, 3) + messageLayout.addWidget(titleLabel, 2, 0) + messageLayout.addWidget(self.titleEdit, 2, 1, 1, 4) + messageLayout.addWidget(bodyLabel, 3, 0) + messageLayout.addWidget(self.bodyEdit, 3, 1, 2, 4) + messageLayout.addWidget(self.showMessageButton, 5, 4) + messageLayout.setColumnStretch(3, 1) + messageLayout.setRowStretch(4, 1) + self.messageGroupBox.setLayout(messageLayout) + + def createActions(self): + self.minimizeAction = QAction("Mi&nimize", self, triggered=self.hide) + self.maximizeAction = QAction("Ma&ximize", self, + triggered=self.showMaximized) + self.restoreAction = QAction("&Restore", self, + triggered=self.showNormal) + self.quitAction = QAction("&Quit", self, + triggered=QApplication.instance().quit) + + def createTrayIcon(self): + self.trayIconMenu = QMenu(self) + self.trayIconMenu.addAction(self.minimizeAction) + self.trayIconMenu.addAction(self.maximizeAction) + self.trayIconMenu.addAction(self.restoreAction) + self.trayIconMenu.addSeparator() + self.trayIconMenu.addAction(self.quitAction) + + self.trayIcon = QSystemTrayIcon(self) + self.trayIcon.setContextMenu(self.trayIconMenu) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + if not QSystemTrayIcon.isSystemTrayAvailable(): + QMessageBox.critical(None, "Systray", + "I couldn't detect any system tray on this system.") + sys.exit(1) + + QApplication.setQuitOnLastWindowClosed(False) + + window = Window() + window.show() + sys.exit(app.exec_()) diff --git a/examples/desktop/systray/systray.qrc b/examples/desktop/systray/systray.qrc new file mode 100644 index 0000000..a8b6535 --- /dev/null +++ b/examples/desktop/systray/systray.qrc @@ -0,0 +1,7 @@ + + + images/bad.png + images/heart.png + images/trash.png + + diff --git a/examples/desktop/systray/systray_rc.py b/examples/desktop/systray/systray_rc.py new file mode 100644 index 0000000..d1aa1e6 --- /dev/null +++ b/examples/desktop/systray/systray_rc.py @@ -0,0 +1,2580 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sat May 4 14:55:18 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x09\xc0\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x9c\x00\x00\x00\xb2\x08\x03\x00\x00\x00\x80\xc0\x56\x39\ +\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\x00\x00\x00\ +\x09\x70\x48\x59\x73\x00\x00\x0d\xd7\x00\x00\x0d\xd7\x01\x42\x28\ +\x9b\x78\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xdc\x03\x09\x08\x1d\ +\x30\x44\x26\x4e\xa6\x00\x00\x02\xd3\x50\x4c\x54\x45\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x00\x02\x01\x00\x03\x02\ +\x00\x04\x02\x00\x05\x03\x00\x06\x03\x00\x06\x04\x00\x07\x04\x00\ +\x08\x05\x00\x09\x05\x00\x0a\x06\x00\x0b\x07\x00\x0c\x07\x00\x0d\ +\x08\x00\x0e\x08\x00\x0f\x09\x00\x10\x0a\x00\x11\x0a\x00\x12\x0b\ +\x00\x13\x0b\x00\x14\x0c\x00\x15\x0d\x00\x16\x0d\x00\x17\x0e\x00\ +\x18\x0e\x00\x19\x0f\x00\x1a\x10\x00\x1b\x10\x00\x1c\x11\x00\x1d\ +\x11\x00\x1e\x12\x00\x1f\x13\x00\x20\x13\x00\x21\x14\x00\x22\x14\ +\x00\x23\x15\x00\x24\x16\x00\x25\x16\x00\x26\x17\x00\x27\x17\x00\ +\x28\x18\x00\x29\x19\x00\x2a\x19\x00\x2b\x1a\x00\x2c\x1a\x00\x2d\ +\x1b\x00\x2e\x1c\x00\x2f\x1c\x00\x30\x1d\x00\x31\x1d\x00\x32\x1e\ +\x00\x33\x1f\x00\x34\x1f\x00\x35\x20\x00\x36\x20\x00\x37\x21\x00\ +\x38\x22\x00\x39\x22\x00\x3a\x23\x00\x3b\x23\x00\x3c\x24\x00\x3d\ +\x25\x00\x3e\x25\x00\x3f\x26\x00\x40\x26\x00\x41\x27\x00\x42\x28\ +\x00\x43\x28\x00\x44\x29\x00\x45\x29\x00\x46\x2a\x00\x47\x2b\x00\ +\x49\x2c\x00\x4a\x2c\x00\x4b\x2d\x00\x4c\x2e\x00\x4d\x2e\x00\x4e\ +\x2f\x00\x4f\x2f\x00\x50\x30\x00\x51\x31\x00\x52\x31\x00\x53\x32\ +\x00\x55\x33\x00\x57\x34\x00\x58\x35\x00\x59\x35\x00\x5a\x36\x00\ +\x5b\x37\x00\x5c\x37\x00\x5d\x38\x00\x5e\x38\x00\x5f\x39\x00\x60\ +\x3a\x00\x61\x3a\x00\x63\x3b\x00\x65\x3d\x00\x67\x3e\x00\x68\x3e\ +\x00\x69\x3f\x00\x6a\x40\x00\x6b\x40\x00\x6c\x41\x00\x6d\x41\x00\ +\x6e\x42\x00\x6f\x43\x00\x70\x43\x00\x71\x44\x00\x73\x45\x00\x74\ +\x46\x00\x75\x46\x00\x76\x47\x00\x77\x47\x00\x79\x49\x00\x7a\x49\ +\x00\x7b\x4a\x00\x7c\x4a\x00\x7c\x4b\x00\x7d\x4b\x00\x7e\x4c\x00\ +\x7f\x4c\x00\x80\x4d\x00\x81\x4d\x00\x82\x4e\x00\x83\x4f\x00\x84\ +\x4f\x00\x86\x50\x00\x87\x51\x00\x88\x52\x00\x8a\x53\x00\x8b\x53\ +\x00\x8e\x55\x00\x8f\x56\x00\x91\x57\x00\x93\x58\x00\x94\x59\x00\ +\x95\x59\x00\x96\x5a\x00\x98\x5b\x00\x99\x5c\x00\x9c\x5e\x00\x9d\ +\x5e\x00\x9e\x5f\x00\x9f\x5f\x00\xa0\x60\x00\xa1\x61\x00\xa2\x61\ +\x00\xa3\x62\x00\xa4\x62\x00\xa5\x63\x00\xa6\x64\x00\xa7\x64\x00\ +\xaa\x66\x00\xac\x67\x00\xad\x68\x00\xaf\x69\x00\xb0\x6a\x00\xb1\ +\x6a\x00\xb2\x6b\x00\xb3\x6b\x00\xb4\x6c\x00\xb5\x6d\x00\xb6\x6d\ +\x00\xb8\x6e\x00\xba\x70\x00\xbb\x70\x00\xbc\x71\x00\xbd\x71\x00\ +\xbe\x72\x00\xbf\x73\x00\xc0\x73\x00\xc1\x74\x00\xc2\x74\x00\xc3\ +\x75\x00\xc5\x76\x00\xc7\x77\x00\xc8\x78\x00\xc9\x79\x00\xca\x79\ +\x00\xcb\x7a\x00\xcc\x7a\x00\xce\x7c\x00\xcf\x7c\x00\xd0\x7d\x00\ +\xd1\x7d\x00\xd2\x7e\x00\xd3\x7f\x00\xd4\x7f\x00\xd5\x80\x00\xd6\ +\x80\x00\xd7\x81\x00\xd8\x82\x00\xd9\x82\x00\xda\x83\x00\xdb\x83\ +\x00\xdc\x84\x00\xdd\x85\x00\xde\x85\x00\xdf\x86\x00\xe0\x86\x00\ +\xe1\x87\x00\xe2\x88\x00\xe3\x88\x00\xe4\x89\x00\xe5\x89\x00\xe6\ +\x8a\x00\xe7\x8b\x00\xe8\x8b\x00\xe9\x8c\x00\xea\x8c\x00\xeb\x8d\ +\x00\xec\x8e\x00\xed\x8e\x00\xee\x8f\x00\xef\x8f\x00\xf0\x90\x00\ +\xf1\x91\x00\xf2\x91\x00\xf3\x92\x00\xf4\x92\x00\xf5\x93\x00\xf6\ +\x94\x00\xf7\x94\x00\xf8\x95\x00\xf9\x95\x00\xfa\x96\x00\xfb\x97\ +\x00\xfc\x97\x00\xfd\x98\x00\xfe\x98\x00\xff\x99\x00\xff\xff\xff\ +\x73\xb6\xc7\xfa\x00\x00\x00\x08\x74\x52\x4e\x53\x00\x09\x0e\x1b\ +\x28\x3d\x5c\x72\xee\x75\x23\xcb\x00\x00\x00\x01\x62\x4b\x47\x44\ +\xf0\x35\xb8\xef\x54\x00\x00\x06\x52\x49\x44\x41\x54\x78\xda\xed\ +\x9c\xf9\x5f\x94\x55\x14\xc6\xad\xac\x66\x18\x6d\x54\x50\xc0\x04\ +\xc4\x85\x45\x05\xc1\x0d\xc9\x50\xd1\xc8\x5c\x5a\x15\xb5\xc5\x24\ +\xca\x34\xcb\x34\xcb\x4a\xcd\xca\xd2\xd4\x52\x4a\xcd\xca\x34\xb2\ +\x12\xcd\xca\x4c\xb1\x20\x90\x08\x44\x53\x40\xf6\x4d\xf6\x01\x46\ +\x99\x61\xe6\x9d\x7f\x21\xd6\x98\xe5\x5d\xee\x72\xee\x30\x9f\xbc\ +\xcf\xcf\x9c\xf7\x7e\x99\x79\xdf\xf7\x9e\xf3\x9c\x73\xa7\x5f\x3f\ +\x2e\x2e\x2e\x2e\x2e\x2e\x2e\x2e\x2e\x2e\x2e\x57\xd5\x1d\x77\xbb\ +\x88\xfa\x8b\xc0\xdd\xa9\x72\x11\xdd\xc5\xe1\x6e\x29\xb8\x64\x63\ +\x9f\xaa\x40\x16\x2e\xc5\xd2\xa7\x2a\xe3\x70\x1c\x8e\xc3\xc1\xc1\ +\x99\x5d\x18\xae\x30\xe4\x47\xe2\xa5\x75\x8c\xe1\xca\x42\x54\xda\ +\x53\x84\x6c\x59\xbe\x3b\x98\xc2\x55\x84\xb6\xff\xcd\x90\x33\x44\ +\x6c\x17\x86\xab\x54\x9b\x19\xc2\x55\x85\x75\x6e\x7e\xee\xbf\x11\ +\xb0\xa5\x7b\x77\x84\xbe\xcd\x0c\xae\x36\xa2\x7b\x6b\x76\x3f\x8b\ +\xcd\x96\xe6\xdd\x15\xba\x49\x60\x03\x57\x17\xf9\x5f\xe2\xe0\x7e\ +\x0e\x93\xed\x4f\xaf\x9e\xd0\x97\x05\x16\x70\x4d\xd1\x56\x69\x8d\ +\xc7\x79\x2c\xb6\x54\xaf\xde\xd0\x97\xcc\xf0\x70\xcd\x73\x6d\x92\ +\x2e\xcf\x54\x0c\xb6\x64\x0f\xeb\xd0\xb8\x36\x68\xb8\x96\x18\xbb\ +\x94\xd0\x2b\x0d\x99\xed\x9c\x87\x6d\xe8\xb3\x6d\xb0\x70\x37\x1f\ +\x71\x48\x58\xbd\xd2\x11\xd9\xce\x7a\xd8\x87\x3e\x63\x84\x84\x6b\ +\x7d\x4c\x24\x9d\xf6\xbe\x80\xc4\x76\xc6\xdd\x31\x74\x49\x2b\x1c\ +\x9c\x71\xb9\x68\xb2\xef\x9d\x81\xc0\xf6\xab\xbb\x58\xe8\xe3\x37\ +\xa1\xe0\xda\x9e\x96\x28\x45\x7c\xb2\x15\xd9\x4e\x0f\x11\x0f\x7d\ +\xf4\x06\x0c\x9c\xf9\x79\xc9\x42\xc9\xf7\xa2\x02\xdb\xc9\x41\x52\ +\xa1\xf3\x9a\x20\xe0\xcc\x2f\xca\x94\x71\x7e\x39\xb2\x6c\x27\xb4\ +\xd2\xa1\x31\x3a\x7a\x38\x61\x8d\x6c\x91\xe9\x77\x49\x86\x2d\x49\ +\x2b\x17\x1a\x55\x47\x0d\xf7\x9a\x42\x09\x3c\xf2\xb2\x24\xdb\x71\ +\xad\x7c\xe8\x8c\x5a\x4a\xb8\x37\x14\x0b\x74\xff\x7f\x24\xd8\x7e\ +\x18\xa8\x14\x1a\x59\x4d\x05\xf7\x1e\x82\x7d\x30\x36\x5f\x94\x2d\ +\x51\xa3\x1c\x3a\xa9\x9c\x02\x6e\x27\x92\xb9\x11\x70\x4d\x84\xed\ +\x1b\x0d\x4a\x68\x58\x19\x31\xdc\x2e\x44\xeb\x25\xb0\xc0\x81\xed\ +\x88\x06\x2d\x34\xb8\x80\x10\xee\x63\x64\x63\x28\xb0\xd0\x8e\xed\ +\x6b\x0d\x6a\x68\x50\x3e\x11\xdc\x7e\x35\xba\x6d\x15\x54\x64\xc3\ +\x76\x58\x83\x1e\x1a\x90\x47\x00\x77\x10\x83\x4d\xa5\x0a\xb5\xbe\ +\x79\xbe\x74\xc3\x09\xf5\xcf\xc1\x86\x3b\x8a\xb5\x40\x3b\x5d\x39\ +\xd1\x47\xde\xf9\x22\xcf\xc6\x84\x4b\xd4\xa8\x30\x35\xb1\xa2\x3b\ +\xf4\x33\x35\x6e\xa8\xef\xdf\x78\x70\xcb\xf0\xed\xd2\xc8\x3a\x82\ +\xef\xb4\x7b\x9f\xc5\x83\x33\x2e\xc5\x5f\x22\xbc\xb2\x3d\x30\x41\ +\x8d\x1f\x18\x51\x8d\x79\xcf\x19\x62\x09\x16\xa9\xb1\xec\x23\x60\ +\x8b\xaa\xc7\x7e\x5a\x0d\x4b\xf0\x97\x99\xfe\x2e\x81\x7b\x3e\xb3\ +\x9e\xe0\x3d\x67\x58\xec\x14\x67\x7f\x56\x03\xd1\x0e\x71\x63\x91\ +\x13\xd8\x66\x37\x12\xee\xad\xfa\x85\xcc\xd9\xa2\x1b\x89\xb3\x12\ +\xfd\x02\xc6\x6c\x0f\xb5\x50\xe4\x73\xfa\xf9\x4c\xd9\xe6\xb7\x50\ +\x65\xc2\x2d\xf3\x18\xb2\x2d\x6c\xa1\xac\x21\x74\xd1\xcc\xd8\x16\ +\xe9\xa9\x4b\xc3\xc6\x59\x8c\xd8\x1e\xd6\x03\x14\xd5\x8d\x33\x99\ +\xb0\x89\xf9\x25\x04\x76\x44\x43\x14\x03\xb6\xd8\x56\x20\x23\xa7\ +\xe1\x7e\x70\xb6\xa5\x06\x30\x0b\xac\x66\x1a\x30\xdb\x72\x03\xa0\ +\x79\x58\x3d\x15\x94\xed\x49\x03\xa8\xed\x7a\x7d\x0a\x20\xdb\x53\ +\xa0\xce\x66\x07\xdd\x64\x30\xb6\xe7\x4c\xe0\x56\x7f\xd5\x24\x20\ +\xb6\x78\x13\x83\x26\x49\x65\x38\x08\xdb\x0b\x26\x26\xed\xa5\xd2\ +\x09\x00\x6c\xab\x4c\x8c\x1a\x73\x25\xe3\xa9\xd9\x56\x9b\x99\xb5\ +\x34\x8b\xc7\x51\xb2\xad\x13\x18\x36\x83\x8b\x83\xa9\xd8\x5e\x15\ +\x98\xb6\xd1\xf3\xc6\x50\xb0\x6d\x10\x18\x0f\x20\xe4\x92\xd3\x6d\ +\x54\x62\xa3\x1f\xdd\xc8\x1d\x4d\xc8\xf6\xba\x22\x1b\xc0\x5c\xc9\ +\xd5\x51\x44\x6c\x5b\x9d\x33\xf4\xf2\xd7\x3d\x04\x6c\xdb\x9c\x33\ +\x91\xd3\xfc\x20\xc9\x07\xb7\xc9\x29\x70\x4d\x31\x64\xb7\xdc\x9b\ +\x4e\x80\x6b\x7a\x80\xf4\x61\xdd\xce\x1c\x4e\x37\x97\xfc\x35\xf7\ +\x21\x63\xb8\x7a\xaa\x5a\x67\x27\x53\xb8\x3a\xca\x4a\xe7\x23\x86\ +\x70\xb5\x33\x68\x93\x92\x5d\xec\xc6\x85\xee\xa3\x4f\xe7\xf6\x30\ +\x82\xab\x89\x04\xc8\x35\xd5\x09\x4c\xe0\xaa\xa7\x83\x64\xe9\xea\ +\x4f\x19\xc0\x55\x40\xd5\x37\xea\xfd\xe0\x70\x15\xe1\x2a\x28\xa9\ +\x0f\x00\xc3\x95\x87\x01\xd6\xd4\xea\x83\xa0\x70\x65\x13\x41\xdd\ +\x08\xb7\xc3\x80\x70\xa5\xa1\xc0\x3e\x8e\xdb\x11\x30\xb8\xc2\x60\ +\x15\xb4\x34\x47\x81\xe0\x0a\x82\x18\x78\x87\x9a\x44\x10\xb8\x6b\ +\x81\x4c\x5c\x57\xcd\xb7\x00\x70\xf9\x6c\xd8\xda\xe9\x8e\x51\xc3\ +\xe5\x05\x30\x73\xfa\x07\x26\x51\xc2\xe5\x8e\x65\xd8\x23\xd1\x9e\ +\xa0\x82\xbb\xe4\xcf\xb4\xbb\xa4\x3d\x49\x01\x97\x33\x92\x71\x5f\ +\xce\x7e\x08\x1f\x03\xee\xa2\x1f\xf3\x8e\xe6\xa0\x9f\x08\xe1\xb2\ +\xd9\xb3\xd9\x1f\x11\x40\x86\xcb\xf2\xc5\x5f\x6a\x30\xfe\xf8\x81\ +\xcd\x10\x3e\x2a\x5c\xc7\xf1\x05\x5c\x79\xa6\x10\x0c\x6e\x58\x0f\ +\xe1\x23\xc2\xa5\x7b\xe3\xb3\x0d\xcf\xb0\x58\xf6\xe1\x87\x79\x24\ +\x63\xc2\xa5\x11\xb0\xdd\xdb\x39\xd3\xbc\x97\x80\xee\x3c\x1e\xdc\ +\x1a\x92\xef\xb4\x2b\x74\x3b\x7e\xe8\x84\x36\x2c\x38\xd3\x6a\xdc\ +\x05\x46\x64\xf6\xfc\xfb\x9f\x60\x87\x66\x61\xde\x73\xc2\x7a\xbc\ +\x05\x7c\x32\x7b\x6f\xeb\x0f\x30\x6f\x87\x4c\xec\xa7\x55\xd8\x88\ +\xb3\x80\xbf\xcd\xb4\xf0\xfb\x38\xa1\xc3\x52\x49\x5e\xc2\xef\xa0\ +\x2f\x30\xca\x6e\x56\x78\x1b\x7a\xe8\xd0\x14\xb2\xed\x0b\xf9\xd6\ +\x1e\x7d\xc5\x3e\xbd\xd8\x8a\xfc\xa4\xfe\x41\xba\xf1\xef\x21\x65\ +\xb3\x58\xb6\x20\x6e\x29\xa7\xc9\x53\x26\xa4\x61\xdc\x31\x57\xc5\ +\xca\x81\xcd\x48\xfb\xfe\x2f\x34\xc9\xe6\x01\xe5\xed\x28\xb8\x50\ +\xb4\x90\x12\x36\x20\xe4\xc2\xc7\xe9\xd2\xf4\xcf\x95\x26\x30\xc7\ +\x15\x49\x14\xc8\xca\x2f\xa3\x01\xdf\xd3\x16\x38\x5f\xc8\xd3\x8d\ +\x2f\x96\x34\x3e\x84\x75\xd8\x95\x35\x76\x69\x78\x6c\x80\xdc\xc6\ +\x53\x2c\x63\x68\x09\xaf\xc8\xb2\x7d\x05\x51\x54\x7f\x27\x7d\xae\ +\x21\xa4\x44\xd6\xa8\x14\xd6\xca\xb8\x39\x87\x60\xec\x88\x53\x83\ +\x25\x16\x08\x2d\x55\x30\xa0\xcd\xab\x24\xe1\x12\xa0\x8c\x9c\x9f\ +\xc5\xcf\x47\x4d\xae\x54\x6c\x2c\x48\x9e\x7c\xda\x0b\x67\x81\x25\ +\x0f\x15\xb9\xfe\x94\x2a\x84\x86\x91\x29\x5e\x94\x6d\x07\xa4\x79\ +\xf8\xfb\x30\x87\xeb\x4f\xbd\x8e\x74\x9a\xcf\x14\x87\xd1\x42\x24\ +\xb4\x5d\x53\x3c\xed\xae\x3f\x0d\x8d\xad\x9d\x6e\xa5\x03\xdb\x16\ +\x68\xc3\x3a\x63\x84\xcd\xf5\x23\xaa\x91\x4f\x90\x9a\x56\xd8\xb1\ +\xbd\x05\x6f\xf5\x67\xfa\x58\x5d\xdf\x6a\x64\x5b\x59\xc6\x65\xa8\ +\xe3\x1b\xe4\x4d\x92\xcb\xbd\xed\x73\xeb\x91\x6d\x04\x19\xac\x8f\ +\x08\xac\x15\x98\xb4\x97\xae\xf4\x0c\x46\xcc\xc6\x63\xb3\x39\x22\ +\x10\x6f\x66\xd4\x98\x2b\xec\x1a\xc8\xb1\x1d\xd9\x46\xa3\xeb\x19\ +\xc2\x8f\x33\x31\x6b\x69\x16\x75\x8c\x5a\xcd\xd1\x59\xf0\xd5\xfa\ +\x44\x27\xdb\x0a\x13\xc3\x66\x70\x49\xa8\xc3\xc8\x36\xa2\x3a\x8f\ +\x08\xc4\x1a\x99\xb6\xd1\x8b\x57\x36\x5a\xc8\xa4\x5f\xa0\x5a\x6c\ +\x60\x3f\x57\x42\x28\xdd\xfa\x66\x8b\xcb\xc2\x39\x67\x22\x87\xc3\ +\x71\x38\x0e\xe7\x02\x70\xbb\x93\xfa\x54\x87\x64\xe1\x5c\x41\x1c\ +\xee\x96\x81\xbb\xad\xbf\x8b\xe8\x76\xfe\x83\xac\x5c\x5c\x5c\x5c\ +\x5c\x5c\x5c\x5c\x5c\x5c\x5c\xff\x43\xfd\x0b\x99\xa5\x5c\x7e\x47\ +\x71\x60\x42\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x2f\x60\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x01\x5b\x00\x00\x01\x5c\x08\x06\x00\x00\x00\x66\xca\x1d\x55\ +\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\x00\x00\x00\ +\x09\x70\x48\x59\x73\x00\x00\x0d\xd7\x00\x00\x0d\xd7\x01\x42\x28\ +\x9b\x78\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xdc\x03\x09\x08\x1f\ +\x25\x1b\xcd\xc8\xcf\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\ +\xff\x00\xff\xa0\xbd\xa7\x93\x00\x00\x2e\xe0\x49\x44\x41\x54\x78\ +\xda\xed\x9d\x09\x74\x15\x55\xb6\xfe\xaf\xb6\x43\xdb\x2d\xdc\x9b\ +\x00\x62\xdb\xb4\xa2\xb6\xf6\xa0\xdd\xb6\xa2\x3e\x71\xa0\xaa\x92\ +\x30\x2a\x8a\x20\xa2\x88\x8a\x38\xb7\x2d\x88\xa0\x38\x61\xa7\x45\ +\x51\x5b\x5b\x14\x27\x22\x21\x75\x2b\x84\x00\x81\x10\x48\x20\x10\ +\xa6\x40\x98\xc7\x80\x21\xcc\x90\x90\x89\x84\x04\x12\x12\x12\x12\ +\x02\xa9\x57\xbb\x82\x1a\x48\x6e\x86\x9b\x5b\x75\xeb\xd4\xf9\x7e\ +\xff\xf5\xad\xf7\x5f\xbd\x5e\x3f\xaa\xce\x3e\xe7\xcb\xb9\xa7\xf6\ +\xd9\xdb\xe1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x18\x40\x07\x59\xbc\x32\x50\x11\xba\x06\xc8\x42\x5f\x97\x2c\ +\x0e\x75\xb9\xc5\x51\x4e\x45\xfc\x58\xfb\x9f\xe1\x9a\xe2\x34\xa5\ +\xb8\xdc\x42\xba\xa6\x03\xb5\x12\x0b\x35\x1d\xd3\xfe\xff\xc7\xb5\ +\xff\xa9\xd6\x97\xfe\x9f\x1f\xab\xfd\xdf\xfb\xe9\xbf\xa3\xff\xf7\ +\x57\x6a\xff\xd9\x1c\x4d\x93\x9d\x6e\x69\x3c\xfd\x3b\xf4\xef\xd1\ +\xbf\x1b\x28\x8b\x77\xd1\x73\x20\x1a\x00\x00\x76\x09\xeb\x72\x71\ +\x80\x12\xfc\x77\xcd\xe0\x06\xe8\x06\xe7\x16\xbf\x71\x2a\xc2\x82\ +\x5a\x03\x14\x2b\x1a\x36\x4c\xbf\xa9\xe2\xec\x73\xcd\xd7\xf4\xb5\ +\x4b\x91\x5e\x77\xc9\x52\xff\x00\xb9\xdb\xdf\xe8\x3d\x10\x4c\x00\ +\x80\xff\x51\x1d\x17\x04\xba\xa5\x9b\x9c\xb2\x30\x50\xdb\x31\x86\ +\x6a\x66\x95\xa0\x29\xcf\x62\x66\xda\x5a\xe5\xe9\xef\xa5\xbd\x1f\ +\xbd\x27\xbd\x2f\xbd\x37\x82\x0f\x00\x30\x8e\x89\xbd\x2f\x0d\x8c\ +\x08\xba\xdb\xe9\x16\x47\x6b\xe6\x33\x57\xdb\x11\xe6\xda\xcc\x58\ +\x9b\x29\xfd\xbd\xe9\xb8\x63\x14\x1d\x87\x38\x62\x06\x5e\x82\xc9\ +\x01\x00\xf0\x9a\x36\x4a\x70\x3b\x97\x5b\x7a\x30\xc0\x2d\x7c\xaa\ +\x19\xcb\x2a\xcd\x64\x4f\xf2\x69\xae\x8d\xeb\xec\xb8\xa4\xd0\xb9\ +\x33\x9d\x07\xb7\x0d\xef\x19\x88\xd9\x03\x00\x68\x74\xe7\x4a\x66\ +\xa1\x99\x6b\xd8\xd9\x0f\x53\x30\x53\xef\x77\xbf\xf4\x91\xee\x2b\ +\xcd\x80\x43\x68\x5c\x31\xb9\x00\xe0\x9c\xc0\x28\xb1\x93\xb6\x33\ +\x7b\x56\x33\x88\x59\x67\xbf\xe8\xc3\x28\x7d\x6f\xbc\x47\xb5\x3f\ +\x60\x33\x5d\xb2\x34\xac\x9d\x12\xf4\x7b\xcc\x3a\x00\xf8\x39\x1e\ +\xb8\xb1\xf6\x83\x96\xfe\x15\x1e\x66\x68\xbe\xf9\xa6\xd3\xf8\xb7\ +\x95\xbb\xdd\x80\xd9\x08\x80\xcd\x70\xba\x83\xae\x87\xc1\x5a\xd7\ +\x78\x9d\x11\x21\xd7\x61\x96\x02\xc0\x28\x9d\x62\xba\x5e\xe6\x72\ +\x4b\x4f\x69\x8b\x7a\xa9\xa6\xd3\x30\x36\x4b\x8b\xe2\xb3\x38\x40\ +\x11\x87\x74\x96\xc5\x5f\x63\xf6\x02\xc0\xc2\x2e\x56\x11\x43\x02\ +\x14\x29\x06\xd9\x03\xcc\xaa\xd4\xa5\x48\x91\xfa\xc7\x35\x00\x80\ +\xe5\xce\x61\xdb\x69\x8b\x73\x8c\x66\xb0\x3b\x61\x56\xf6\x3a\x66\ +\xa0\xb8\x22\x9d\x0c\x00\x3f\xe3\x92\xc5\xce\x94\x62\xe4\xb9\x6e\ +\x00\x64\x13\x95\x68\x9a\xe0\x0a\x0f\xba\x06\xb3\x1e\x00\x93\x8f\ +\x0a\x6a\xaf\xc7\x0a\x67\x60\x44\x5c\xed\x74\x29\xde\x09\x01\x91\ +\xe2\xbd\x58\x05\x00\x18\x45\xb2\x78\x51\xed\x07\x2f\x61\x0b\x4c\ +\x07\xd2\xb4\x99\xe6\x83\x23\x66\xe0\xaf\xb0\x38\x00\xf0\x05\xa1\ +\xa1\x17\x06\xc8\xd2\x60\xa4\x6d\x41\x1e\x94\xa6\xfd\xd2\x19\x44\ +\xf3\x04\x8b\x05\x00\x6f\xd0\x76\x2c\x4e\xb7\xf4\x82\xb6\x98\x32\ +\x60\x28\x50\x33\x6a\x34\xec\xc2\x4e\x17\x80\x96\xa0\x3a\x2e\xd0\ +\xcb\x16\x62\x27\x0b\x79\xa7\x1d\x34\x7f\x50\x0a\x12\x80\x46\x70\ +\x45\x4a\x82\xb6\x58\x56\xc3\x30\x20\x1f\x7c\x4c\x5b\x89\x0f\x69\ +\x00\x9c\x07\x75\x06\x38\x7b\xd3\x0b\x26\x01\xf9\x5a\x4b\x34\xd3\ +\xbd\x19\xab\x0c\x70\xcd\xe5\x11\xf7\x75\xa8\x2d\x69\x28\x56\xc3\ +\x14\x20\x03\x75\x8a\xe6\x59\x9b\x68\xb1\x3d\x56\x1d\xe0\xed\xe3\ +\xd7\x25\x74\x33\x08\x65\x0d\x21\xb3\xcb\x3d\xba\x14\x71\x04\xa5\ +\x11\x62\x11\x02\xfb\x1f\x19\xb8\xa5\x7b\xb4\x89\x9f\x8a\x85\x0f\ +\xf9\x33\x47\x97\x3a\x0c\x63\x35\x02\x5b\x42\xf5\x0b\xa8\x40\x0c\ +\x16\x3a\x64\x11\xd5\x50\xc1\x1b\xd4\x5d\x00\xb6\xe2\x6c\xa9\xc3\ +\x7c\x2c\x70\xc8\x82\xf9\xb9\x87\x9d\x8a\xf8\x08\x56\x29\x60\x1a\ +\x6a\x3b\x73\xb6\xc5\x37\x16\x36\xc3\xfa\x47\xec\xe3\xea\x4b\xab\ +\xc6\xab\x13\xd2\xa2\xd5\x79\x99\x2b\xd5\x2d\x85\xbb\xd4\xbd\x25\ +\x87\xd4\x8c\xd2\x3c\x75\xdf\xf1\x6c\x35\xb5\x68\x8f\x9a\x98\xb5\ +\x46\xfd\x26\x3d\x46\x1d\xb1\xf6\x73\xf5\xff\xe6\x3e\xad\x06\xb8\ +\x25\xd6\xde\x33\x01\x6d\x7b\x00\xa3\x67\xb3\xc2\xe3\xda\x04\x2e\ +\x84\x59\xb1\xa9\xee\x0b\x5e\x51\xbf\xdf\x39\x5b\xcd\x39\x51\xa0\ +\x7a\x43\x51\x65\x89\xaa\xec\x9d\xaf\x3e\xbc\x78\xb4\x1a\xa8\xb0\ +\x62\xbc\x42\x81\xd3\x2d\x3d\x8a\xd5\x0b\x98\x39\x9b\xd5\x26\xee\ +\x1c\x18\x16\x7b\x22\x53\x7c\x76\xe5\x38\x7d\xa7\xea\x4b\x68\xf7\ +\x3b\x72\xdd\x17\xea\x15\x91\x21\x6c\x8c\x85\x22\xc4\xd2\x3c\xc6\ +\x6a\x06\xd6\xdd\xcd\xca\x52\x1f\x9c\xcd\xb2\xa9\x9e\x89\xff\xf2\ +\xb9\xc9\x9e\xcf\x7e\xcd\x74\x07\x2d\x7d\x9b\x99\xb3\xdc\x40\x59\ +\xec\x85\x55\x0d\xac\xc5\xc4\xde\x97\xd6\x16\xf1\x16\x6b\x60\x5c\ +\x6c\xa9\xe3\xd4\xee\xea\xa4\x9d\xb1\x6a\x8d\xf6\xff\xcc\x82\xce\ +\x7d\x3b\x47\xf7\x65\x23\x63\x41\x9b\xd7\x94\x17\x8e\x45\x0e\xfc\ +\x0e\xb5\xa4\xd6\x26\xe4\x06\x18\x17\x7b\xba\x71\x66\x7f\x75\x43\ +\xc1\x0e\xd5\x1f\xd0\x07\xb6\xdb\xe7\x0c\x61\x65\x97\xbb\x16\x1d\ +\x80\x81\x5f\x71\x29\xe2\xd3\x68\xac\xc8\xa6\xba\xce\x7d\x46\xcd\ +\xf6\xf2\xe3\x97\xaf\x28\xae\x2a\x55\xfb\x2e\x1a\xc9\xca\x98\x95\ +\xe9\xd5\xc4\x00\x30\x95\xb0\x2e\x17\x9f\xad\x69\x00\xe3\x62\x50\ +\xdd\xe2\x9f\x57\x4b\xaa\xca\x54\x2b\x50\x75\xa6\x5a\x1d\xb0\xe4\ +\x4d\x76\x2e\x42\xd0\xb1\x02\xae\xfb\x02\x33\xf8\xed\xe4\xe0\x8e\ +\x54\xbe\x0e\xa6\xc5\xea\xd1\xc1\xc3\x5e\xa7\x73\x19\x45\xe9\xa9\ +\x72\xf5\xce\xb8\xa7\x59\x1a\xc7\xe4\xcb\x23\x7b\x5c\x01\x37\x00\ +\xc6\x9d\xcf\x2a\x41\x77\x6a\x13\x2d\x1b\xa6\xc5\xa6\xda\x2b\xc1\ +\xea\xea\xfc\x6d\xaa\x15\xa1\x33\xdc\x3f\x4c\xeb\xc3\xd2\x78\x66\ +\xb5\x95\x85\x3b\xe0\x0a\xc0\xe7\x50\xb2\xb7\x36\xc1\x4e\xc0\xb4\ +\xd8\xd5\x27\xdb\xdc\xaa\x95\x99\xb6\x6f\x21\x6b\x63\x5a\xe6\x92\ +\xa5\xfe\x70\x07\xe0\x1b\x42\x43\x2f\x3c\x9b\xd6\x05\xc3\x62\x58\ +\xf4\xe5\xbf\xf2\x74\x95\xa5\xcd\x96\xd2\xcf\xee\x5f\x38\x82\xbd\ +\x82\x36\xb2\x18\x8a\x36\x3c\xa0\x55\x74\x8a\xe9\x7a\x19\x2a\x75\ +\xd9\x43\x0b\xb2\x56\xab\x2c\x90\x7e\xec\x00\x43\xd7\x7b\xeb\x48\ +\x16\xdd\xc8\xc7\x05\x5e\x41\x5d\x14\x28\xbf\x10\x46\xc5\xbe\xee\ +\x8b\x7f\xce\xd4\x4b\x0b\xad\x65\xc8\xf2\xb1\xac\x8e\xf5\x6a\x74\ +\x83\x00\x2d\xa2\xcd\x14\xe9\x4f\xda\xc4\xd9\x0f\xa3\xb2\x87\xe8\ +\x2c\x94\x25\xd6\xe4\x6f\x67\x79\xbc\xf7\xd1\x45\x1f\xb8\x08\x68\ +\x12\x97\xd2\xed\x56\xba\x17\x0e\x93\xb2\x87\x7e\x1f\xd5\x5b\x2d\ +\x3b\x55\xce\x94\xd9\xd2\x2e\xfc\x96\xd9\x8f\xb3\xdc\x7e\x27\x37\ +\x40\x09\xfe\x3b\xdc\x04\x78\xce\x38\x88\x08\x0a\x42\xc6\x81\xbd\ +\x44\x3f\xc9\x59\xe4\xbd\x4d\xdf\xb1\x3e\xf6\x25\x81\x11\x41\x77\ +\xc3\x55\x40\x7d\xa3\x95\x85\xee\xda\x5f\xe4\x72\x18\x94\xbd\x34\ +\x79\x57\x1c\x93\x66\xbb\x24\x67\xbd\x1d\xc6\xff\x84\x53\x11\x43\ +\xe0\x2e\xa0\xce\xd1\x81\xf4\x90\x36\x31\x2a\x61\x4e\xf6\x93\xd1\ +\x65\x13\x8d\x82\xae\x13\xdb\x24\x06\xda\xba\x92\x1e\x84\xcb\x00\ +\xba\xac\x30\x40\xdb\xd1\x56\xc1\x98\xec\x27\x6a\x4d\x53\x5e\x7d\ +\x52\x65\x15\xba\x5a\x6c\x93\x16\xea\x55\xb8\xfc\xc0\xfd\x8e\x56\ +\x78\x18\x46\x6b\x5f\xfd\x71\x46\x3f\x95\x65\x42\xe6\xbf\x6c\xa3\ +\x78\x68\xeb\x4c\xfb\x05\x09\xd7\xe1\x73\x47\x4b\xd7\x6f\x4f\xc3\ +\x94\xec\xab\x5b\x63\x07\x33\x6d\xb6\x03\x16\xbf\x61\xb7\x98\x9c\ +\x46\x99\x46\xce\xd0\x7e\x5e\xde\x8f\x1d\xad\xfd\x75\xf7\xbc\x61\ +\x4c\x9b\x2d\xc3\x97\x1b\x1a\xdd\xe1\x52\xfb\x28\xb8\x10\x0f\x47\ +\x07\xb2\x28\x6a\x41\xaf\x80\x19\xf1\xd1\x82\x9c\x65\xfa\x2f\x1e\ +\x6d\xd7\xd8\x54\xb8\x22\x25\x01\x6e\x64\xe7\x1d\x6d\xa4\x78\x2f\ +\xf2\x68\x71\x66\x8b\x33\x5b\x4b\xec\x70\x8f\xa3\x44\xa3\x7d\xcf\ +\x68\xbb\x50\xa2\x35\x4c\x88\xaf\x6c\x84\x52\xc6\x6e\x8f\xd5\x85\ +\xfe\x58\xd8\x3c\x46\xc5\x74\x63\x13\xee\x64\x23\x02\xa3\xc4\x4e\ +\x5a\x60\x73\x60\x40\xfc\x69\x73\xe1\x2e\x26\x8d\xb6\xa8\xb2\x84\ +\x97\x18\x65\xb5\x9f\xd2\xfd\x2a\xb8\x94\x1d\x76\xb4\xd3\xee\x0d\ +\x70\xba\xc5\x9d\x30\x1e\xdc\x20\xc3\x0d\x32\xcb\x1e\x29\xa4\xbb\ +\x64\xd1\x05\xb7\x62\x99\x89\xbd\x2f\xd5\x82\xb8\x02\xa6\xc3\xaf\ +\x1e\x5b\xf6\x0e\x93\x66\x3b\x66\xc3\x44\xde\x62\x95\x8c\x7a\xb8\ +\x2c\x67\x1e\xb8\x45\x19\x86\x83\xaa\x5f\xa8\xfa\xc5\x88\x14\x61\ +\x0a\x5c\x8b\x4d\xa3\x7d\x0f\x66\x03\x91\x22\xf6\xc4\x33\x65\xb6\ +\xcb\x73\x37\xf1\xfb\x51\x53\x16\xdf\x82\x7b\xb1\x95\x79\x40\xf5\ +\x0e\xce\xc0\x68\x20\x74\x6a\x60\xee\xfc\xf6\x0c\xae\xf5\x32\x94\ +\xe2\xe5\x74\x8b\x27\x61\x32\x50\x5d\xc5\x1e\x5c\xc6\x84\xd1\x6e\ +\x3c\xb2\x03\xf1\x72\x8b\x15\xce\x88\xa0\xdb\xe0\x66\x16\x86\xfa\ +\x1f\xb9\x14\x31\x13\x93\x15\x42\x77\x5d\xe6\x95\xd1\x46\x09\x6e\ +\x07\x57\xb3\x22\x31\x03\x7f\xa5\x05\x68\x09\x26\x29\xe4\x49\xef\ +\x6f\x9e\x64\x69\xb3\x0d\xdf\x3d\x17\x71\x3a\xe7\x52\x8a\x90\x44\ +\xeb\x1a\xe6\x66\xbd\x0f\x62\xe3\x30\x41\xa1\xc6\xd4\x5e\x09\x56\ +\x57\xe7\x6f\xb3\xa4\xd1\xee\x2d\x39\xa4\xfe\x61\x5a\x1f\xc4\xa9\ +\x5e\x86\x82\xf8\x6f\xb8\x9b\xe5\x3e\x88\x89\x35\x98\x9c\x50\x53\ +\xa2\x82\xdc\x39\x27\x0a\x2c\x65\xb4\x74\xa5\xf8\xce\xb8\xa7\x11\ +\x1f\x0f\x1f\xcc\xa8\x4a\x1f\x5c\xce\x0a\x46\x1b\xd9\xed\x5a\x2d\ +\x28\xc7\x30\x29\xa1\x96\xd4\xb9\x3d\x5c\x5e\x64\x09\xa3\xa5\x1c\ +\xe0\xe0\xf9\x2f\x21\x2e\x8d\xab\x30\x20\x32\xe4\x6a\xb8\x9d\x3f\ +\x09\xeb\x72\xb1\x16\x88\xcd\x98\x8c\x50\x4b\xd5\x75\xee\x33\x6a\ +\xb6\x9f\x77\xb8\xc5\x55\xa5\x6a\xdf\x45\x23\x11\x8f\xe6\x5d\x78\ +\x58\xe3\x48\x16\x2f\x82\xe9\xe1\x9c\x16\x62\xf2\x48\xa1\xbf\xba\ +\xa1\x60\x87\xdf\xce\x68\x29\x43\x02\x71\x68\x89\xa4\xf7\xe1\x7a\ +\xfe\x30\xda\x48\x49\xc0\xc5\x05\xa8\xb5\x6a\xa7\x04\xa9\xa1\x9b\ +\xc3\xd4\x53\x67\xaa\x4d\x4b\xef\x9a\xb4\x33\x56\xed\x38\xb5\x07\ +\xc6\xbf\xe5\xaa\x0e\x54\x84\xae\x70\x3f\x13\x09\x8c\xea\xdd\x56\ +\x1b\xf8\x83\x98\x7c\x90\xaf\xd4\x33\xf1\x5f\x86\xb7\x3d\xdf\x7f\ +\x3c\x5b\x1d\xb4\xf4\x6d\x8c\x77\xeb\x3e\x98\x1d\xa0\xf5\x0f\x17\ +\x34\x6b\x57\xab\x48\x91\x98\x74\x90\xaf\x15\xa8\x48\xea\xb3\x2b\ +\xc7\xf9\xdc\x74\xf7\x69\x26\x3b\x72\xdd\x17\xea\x15\x91\x21\x18\ +\x67\xdf\x1c\x27\x44\xc0\x05\xcd\x30\x5a\x59\xec\x87\xc9\x06\x19\ +\xad\xee\x0b\x5e\x51\xbf\xdf\x39\xdb\xeb\x34\x31\x2a\xfe\xad\xec\ +\x9d\xaf\x3e\xbc\x78\xb4\x6e\xe2\x18\x53\x5f\x17\xac\x11\xfa\xc2\ +\x0d\x0d\xe4\xf2\xc8\x1e\x57\x68\x03\x5d\x84\xc9\x06\x99\x29\x6a\ +\x1c\xf9\xd2\xaa\xf1\xea\x37\xe9\x31\xea\xb2\xdc\x4d\xea\x81\xd2\ +\x1c\x35\xa3\x34\xef\x1c\xa5\x1c\xde\xaa\x17\x2a\x1f\xb1\xf6\x73\ +\xf5\xff\xe6\x3e\xad\xb7\xe4\xc1\xd8\x19\xaa\xfc\xb6\xe1\x3d\x03\ +\xe1\x8a\x38\x3e\x80\x20\x08\xf5\x6f\xd9\xa4\x6d\xa4\xd4\x13\x13\ +\x0c\x82\xa0\x3a\xaa\x71\x2a\x62\x08\xdc\xd1\x87\x74\x88\x11\x2f\ +\x47\x35\x2f\xa8\xb5\xea\x1c\xdd\xb7\x49\x51\xee\x2d\x1d\x1b\x34\ +\x25\xaa\x91\x2b\x26\xbc\xd0\xa8\xa8\x15\x79\xbf\xa4\x51\x4d\x6a\ +\xf0\xb2\x77\xd5\xa1\x2b\x42\x1b\xd5\x93\xc9\x63\x11\xc3\x86\xb5\ +\xaf\x53\x4c\xd7\xcb\xe0\x92\x3e\xfb\x28\x26\xfc\x0f\x93\xea\x5c\ +\xfd\x25\xe6\x11\x75\xd4\xba\x09\xea\x84\xb4\x68\x8f\xfa\x2a\x6d\ +\xba\x2a\xef\x49\x68\x52\x33\xf6\x27\xa9\x71\x19\xc9\x4d\x8a\x3a\ +\x08\x24\xe7\x6d\x6e\x54\x6b\xf2\xb7\xeb\x5f\xf3\x9b\x12\x7d\xa1\ +\x3f\xff\xdc\xf3\x7c\x65\x95\xe5\xeb\xb7\xac\x9a\x52\xe5\xe9\x53\ +\x2a\x0f\xfc\x6d\xf6\x20\xcc\xfd\x06\xa4\xed\x6e\x3f\x86\x4b\xfa\ +\x22\xa7\x56\x11\xba\xe2\xf2\x42\xe3\x1f\x6f\xde\xda\xf0\xb5\xba\ +\xbe\x20\x8d\xa9\x6e\x04\xa0\xe5\x7c\xf1\x63\x14\xe6\xbc\x87\xcb\ +\x0e\x28\x36\xde\x5a\x54\xc7\x05\x4e\xb7\xb8\x0e\x93\xa9\x79\xa2\ +\xca\x51\x1f\x6c\x99\x6c\x78\x72\x3e\xf0\x0f\x85\x27\x8b\xd5\xdf\ +\x45\xf5\xc4\x5c\x6f\xf8\xb2\xc3\x4a\x18\x66\xeb\x72\x6a\x87\x62\ +\x12\x79\xa7\xeb\xa6\x3f\xa8\xa7\x2b\x2d\xca\x5e\xab\x56\x99\x74\ +\x15\x15\x18\x4f\xe8\x96\x1f\x30\xbf\x3d\xe6\xde\x4a\x83\xe1\x9a\ +\xde\x5f\xc9\xcd\xc7\x24\x6a\xbd\xae\x8a\xea\xa5\x3e\xb6\xec\x1d\ +\xfd\x6c\x96\xb5\xb6\xde\xe0\x5c\x4a\xaa\xca\xd4\x6b\xa2\x1f\xc0\ +\xbc\x6e\x58\x39\x1d\x23\x7b\xfc\x16\xee\xd9\x42\x9c\xb2\xf0\x11\ +\x26\x8f\xef\x45\x05\x50\xc8\x78\xe9\xc3\xd8\x11\xed\x67\x29\x60\ +\x8f\x4f\xb6\xb9\x31\x97\x3d\x49\x16\x43\xe1\x9e\x2d\x31\xda\xc8\ +\x6e\xd7\xa2\x43\xae\x39\x15\xaf\x7a\x25\xbe\xaa\x57\xa1\xca\x2b\ +\x2f\x84\x8b\x31\x02\x75\x76\xb8\x76\x7a\x5f\xcc\xe1\x86\x55\xe1\ +\x0a\x0f\xba\x06\x2e\xda\xdc\xb3\x5a\xb7\x38\x0b\x93\xc6\x7c\xdd\ +\x35\x77\xa8\xbe\x6b\xa2\x5a\xab\x00\x99\x09\xec\xa6\x82\x09\xd3\ +\xe0\xa2\xcd\x4e\xf5\x42\x3f\x31\x2b\x18\x2f\xd5\x79\x45\x4a\x99\ +\x35\x29\xaf\x3e\xa9\xf7\x53\xc3\x5c\x6d\xb8\x6f\x99\x33\x52\xbc\ +\x1d\x6e\xda\xf4\xae\x76\x35\x26\x8b\xf5\x8c\xf7\xc3\xad\x53\xd4\ +\x6d\x45\x7b\xe1\x72\x16\xe2\xeb\x1d\x33\x31\x3f\x3d\x6b\x29\xdc\ +\xb4\xb1\xb3\x5a\x45\x0c\xc1\x24\xb1\xb6\xae\x9f\xfe\x10\x52\xca\ +\x2c\x02\x8d\x3f\x35\xaf\xc4\xbc\xf4\xf8\xb1\x4c\x84\xab\x7a\xb8\ +\xc0\xa0\x0d\xd0\x46\x4c\x12\xb6\x6a\x0d\xd0\xbd\x7d\xa4\x94\xf9\ +\x8f\x99\x07\x16\x63\x2e\x7a\xd6\x6a\x18\x6b\x03\x04\xc8\x52\x1f\ +\x4c\x0e\x76\x75\xe5\xd4\x9e\x48\x29\xf3\x03\x67\x6a\x6a\xd4\x6e\ +\xf1\xcf\x63\x0e\x7a\xae\x9b\x80\xaa\x60\xf5\x77\xb5\xc2\x16\x4c\ +\x0e\xfb\xa5\x94\x1d\x2e\x2f\x82\x23\x1a\xcc\xe2\xec\xf5\x98\x77\ +\x9e\xcc\xd6\x2d\xae\x85\xc1\xd6\xfd\x28\xa6\x48\x0f\x61\x62\xd8\ +\xb7\xaf\x17\x95\x1b\xac\x4d\x29\xcb\x82\x33\x1a\xc4\x83\x49\x23\ +\x31\xdf\x3c\x5d\xe3\x55\x84\xde\x70\xd9\x5f\x32\x10\x70\x56\xcb\ +\x61\x4a\x19\xf0\x1d\x9b\x0b\x77\xa1\x15\x0f\xce\x6e\x9b\xc8\x40\ +\x88\x08\x0a\xc2\x64\xe0\x53\x7f\x9f\xfd\xd8\xcf\xe5\x21\xe9\xec\ +\x11\xb4\x8e\x21\xcb\x51\x60\xbc\x91\x06\x91\xf7\xc1\x6c\x15\x61\ +\x01\x26\x03\xf4\xc7\x19\xfd\x90\x52\xd6\x4a\xe8\x98\xa6\xbd\x12\ +\x8c\xf9\xd4\x70\x1a\xd8\x5c\xbe\x6f\x8b\x45\x04\xff\x15\xb7\xc5\ +\xa0\xc6\x52\xca\x4e\x54\x57\xc0\x45\x5b\xc0\xf0\x35\x9f\x61\x0e\ +\x79\xe8\x57\xd6\x4e\x16\xff\xcc\x6f\xba\x97\x22\xfd\x80\x49\x00\ +\x35\x27\xa5\x8c\x8c\x97\xca\x0b\x82\xc6\xa1\xec\x0f\x14\x18\xf7\ +\x94\x99\x20\x7d\xc7\xa5\xd1\x76\x90\xc5\x2b\xb5\x01\xa8\xc4\x24\ +\x80\xbc\x49\x29\xcb\xaf\x40\x4a\x99\x27\xe8\x03\x24\xe6\x4b\x83\ +\x35\x13\xca\xdb\x44\x8b\xed\xf9\xcb\x40\x90\xc5\x50\x04\x1f\xf2\ +\x45\x4a\x19\x35\x8f\x04\xbf\x40\xbf\x00\x50\x82\xd1\xd3\xd9\xad\ +\x30\x96\x2f\xa7\x0d\xeb\x72\xb1\xf6\xe2\x79\x08\x3e\xe4\xeb\xf2\ +\x90\xe8\xbf\x56\xcb\x97\x69\xd3\x31\x2f\x3c\x74\x73\x70\x24\x8b\ +\x17\xf1\x93\x81\x20\x0b\x03\x11\x74\xc8\x28\xdd\x32\x1b\x1d\x87\ +\x2b\x4f\x57\xa9\x37\xcd\x7a\x14\xf3\xa1\x21\x29\xc2\xc3\x3c\x5d\ +\x62\x58\x8c\xa0\x43\x66\xa7\x94\x9d\xe2\x2c\xa5\x4c\xd9\x3b\x1f\ +\x73\xa0\xe1\x2b\xbc\x89\x7c\xec\x6a\xdd\x41\xd7\x23\xdd\xcb\x47\ +\x89\xda\x6e\x49\xbd\x2f\xfe\x39\x8c\x45\x33\xf5\xe7\x98\x01\xea\ +\xeb\xeb\x26\xa8\x39\x27\x0a\xb8\x30\x5b\xfa\xe3\xd2\x65\xce\x10\ +\xc4\xbe\x81\xe2\xe2\x5c\xb4\xce\xd1\xfe\xaa\x7c\x88\x60\xfb\x46\ +\x03\x16\xbf\xf1\x73\x32\x3b\x7d\x81\xa6\xf6\xe5\x18\x97\xa6\xf5\ +\x54\xf2\xfb\xdc\xec\x6e\x13\x0e\xa5\x20\xe6\x5c\x36\x86\x0c\xeb\ +\x72\xb1\x66\xb6\x87\x11\x6c\xdf\x28\x36\x63\xf9\x39\x0b\x8b\x6a\ +\xca\x46\xec\x9e\xa7\x06\xcd\x7f\x09\xe3\xd3\xc4\x2f\x02\x5e\x3e\ +\xa4\xd1\x99\xb5\x94\xf0\x22\xe2\x5e\x5f\xd9\x8e\x98\x81\xbf\xb2\ +\xf1\x59\xad\xf4\x20\x82\xec\x1b\xdd\x30\xa3\x5f\xa3\xd7\x5a\x33\ +\xcb\xf2\xd4\xaf\xd2\xa6\xab\xc1\x9a\xf1\xa2\x40\x49\x7d\xf5\x5e\ +\x38\x9c\x9b\xdd\xed\xb2\xdc\x4d\x88\x39\x6f\xd5\xc0\xb4\x17\x9c\ +\x8d\x20\xfb\x46\xe3\xb6\x86\x37\x7b\xb1\x65\x9f\x28\x50\xbf\x4d\ +\x8f\xd1\x2f\x04\xe0\xee\xfc\x2f\x4a\xca\x5e\xc7\x8d\xe1\xd2\x1f\ +\x17\xc4\xbc\xde\x87\xb2\xe9\xf6\xbc\x9a\x1b\x16\xe2\xc4\x8d\x31\ +\xdf\xe8\x8a\xc8\x10\xaf\x6f\x50\x55\xd7\x9c\xd6\x7f\x42\x4f\x48\ +\x8b\x56\xfb\x25\x8d\xd2\xff\x6f\xf1\x3a\x8e\x42\xc2\xf3\xdc\xa4\ +\x86\x2d\xc9\x41\x81\xf1\x86\x6e\x94\x75\x88\x11\x2f\xb7\xe1\x8d\ +\x31\xe1\x49\x04\xd7\x37\x1a\xb6\xe2\x3f\x3e\x5b\x84\x85\x27\x8b\ +\xf5\xb3\xdf\x37\x37\x4c\xd4\x77\xbe\x9d\xa6\xf5\xe1\x6a\x2c\xe3\ +\x33\x53\xb8\xd9\xdd\xf6\xc1\xee\xb6\x81\xd2\x8b\xe2\x63\x76\x3c\ +\x42\x88\x47\x70\x7d\xf3\x71\x67\x6b\xd1\x6e\x43\x3f\xa8\x1c\x28\ +\xcd\x51\xe3\x32\x92\xd5\xff\x6c\x99\xac\x3e\xb2\x64\x8c\x7a\xf3\ +\xac\x47\xf5\xba\x04\x66\x5c\xc1\xbd\x2d\xf6\x09\x53\xc7\xf3\xde\ +\xf8\x67\xb9\xd9\xdd\xae\xc8\xdb\x82\x35\x54\x5f\x73\x6c\x65\xb4\ +\x6d\xc3\x7b\x06\x6a\x5b\xf6\x2a\x04\xb6\xf5\xa2\x0a\x58\xfe\x80\ +\x3e\xc6\x91\x09\x2f\xcf\xdd\xa4\x37\x75\x0c\xdd\xf2\x83\xbe\xc3\ +\x0e\x59\xf0\x4f\xf5\xf6\x39\x43\x9a\x9d\x76\x76\x75\xf4\xfd\xfa\ +\xcd\xa6\xbb\xe7\x0d\xd3\x8b\x5d\x8f\xdd\xf4\xbd\x1a\xb1\x27\x5e\ +\xdd\x50\xb0\xe3\xe7\x0e\xbd\x66\xa7\xb0\x2d\xc8\x5a\xcd\xcd\xee\ +\xf6\xfe\x85\x23\xb0\x8e\xce\x3d\xb7\x3d\x19\x18\xd5\xbb\xad\x9d\ +\x8a\xce\x0c\x45\x60\xed\x9f\xb2\x44\xdd\x16\x8a\xab\x4a\x3d\xaa\ +\xb9\x98\x7d\x51\x83\xba\xd3\xf2\xb2\xbb\x5d\x99\xb7\x15\x6b\xa9\ +\xde\xba\x12\x9f\x40\x37\x06\xe8\x1c\x0d\x5e\xf6\x2e\x17\x86\xd0\ +\x7d\xc1\x2b\xa6\x8f\xed\xd2\xdc\x8d\xdc\xec\x6e\x7b\x26\xfe\x0b\ +\xeb\xe9\xdc\x0f\x65\xf3\x90\x85\x00\x9d\x93\x81\xb0\xbb\x38\x93\ +\x0b\x33\xb8\x67\xde\x30\xd3\xc7\xb7\xef\xa2\x91\xdc\x98\xed\xaa\ +\xc3\xa9\x58\x53\xe7\x1d\x25\xd8\x22\x2b\xc1\xe9\x96\x1e\x45\x40\ +\x5b\xaf\x0f\xb6\x4c\xe6\xe6\xc6\xd3\x35\xd1\x0f\xf8\xe5\x88\x26\ +\xfd\xd8\x01\x6e\x0c\x97\x32\x4f\xb0\xae\x6c\x56\x09\xcc\xe5\x96\ +\x22\x10\xcc\xd6\xe9\x1f\xb1\x8f\xab\x27\x4f\x57\x72\x61\x02\x7b\ +\x4b\x0e\xf9\x6d\x9c\xa9\x3a\x18\x6e\x95\xf1\x7a\x6e\x2b\x84\xb1\ +\xed\xb4\xaa\xe3\x02\xd4\x42\x68\xfd\x8e\x6b\x75\xfe\x36\x6e\x4c\ +\x80\xb2\x1c\xfc\x35\xd6\x1d\x22\x43\xd4\xdc\xf2\x23\xdc\x8c\x35\ +\x75\xba\xc0\x1a\xab\x53\x2b\x81\xe9\x5d\xed\x14\xe9\x16\x04\xb1\ +\x75\x7a\x91\xa3\xdd\x16\xdd\x6e\xfb\x4b\xcc\x23\xcc\x5c\x83\x66\ +\x9d\x39\x19\xc9\x58\x63\x75\xf3\xbc\xdd\xd2\x4d\xec\x7e\x1c\x93\ +\xc5\xb7\x10\x44\xef\x75\x67\xdc\xd3\x6a\x79\xf5\x49\x6e\x16\xbf\ +\x15\x5a\xb9\x50\xb1\x71\xea\x72\xc0\xcb\x1f\x37\xea\x6a\x81\xb5\ +\xf6\xb3\x46\xb1\x9c\x5f\xbb\x02\x01\xf4\x4e\xd4\x8e\x7a\x5b\xd1\ +\x5e\x6e\x8c\xf6\x60\x69\xae\x65\x5a\x70\xcf\x3a\xb0\x94\x9b\x71\ +\xff\x61\xd7\x1c\xac\xb7\x5f\xb4\x84\xe5\x94\xaf\x6a\x04\xd0\xbb\ +\x73\x5a\xfa\x89\xc7\x0b\xd4\x0d\x96\x2e\x16\x58\x65\xfc\x1f\x58\ +\xf4\x1a\x37\x63\x5f\x51\x5d\x89\x4e\xbc\xbf\xe4\xdb\x56\x31\x99\ +\x02\x46\xb5\x22\x11\x3c\xef\x44\x15\xb9\x78\x81\x8e\x49\x7a\x24\ +\xbe\x62\xb9\x3f\x76\x74\x35\x99\x17\xde\xd9\xf8\x2d\xd6\xdd\x4f\ +\x39\xb7\x8a\x18\xc2\x5e\x7e\xad\x2c\x7c\x84\xe0\xb5\x5c\x54\x77\ +\x96\x17\xe8\xcb\xff\xdd\x7e\xb8\xc0\x80\x0f\x65\xf5\x8f\x70\xa8\ +\x08\x10\xd6\x9f\xbe\xbb\xfd\x0f\xce\x6b\x39\x38\x3a\xe0\x69\x47\ +\x4b\x3b\x47\x2b\x37\x23\xa4\xac\x88\xd3\x35\x67\xb8\x89\xc7\xc0\ +\xa5\x63\xb0\x0e\x6b\xb5\x94\x2d\xa7\x8d\x19\x78\x89\xf6\xd0\x15\ +\x08\x5c\xf3\xf3\x3b\xa7\xef\x4f\xe2\x66\x61\x47\xef\x5f\xc4\x44\ +\xdd\x5c\x9e\xea\x25\xcc\xcb\x5c\x89\xb5\x58\xab\x13\x8e\x64\xf1\ +\x22\x76\x4a\x2a\x2a\x41\x77\x22\x68\xcd\xbf\x1d\xc6\x4b\xd6\x41\ +\x41\xc5\x51\xbd\x23\x30\x2b\xb1\x79\x21\xe5\x23\x6e\xcc\x96\xd2\ +\xdd\xfc\x71\x4d\xda\x9a\xb5\x12\xa4\x2e\x0c\x5d\xd1\x15\x46\x22\ +\x68\x4d\xeb\xd1\xa5\x6f\xe9\x9d\x12\x78\x80\x6e\xc1\x51\x1d\x5b\ +\x96\xe2\x43\xb5\x77\x1b\x6b\xaa\x69\x37\x5e\x5b\xfb\x39\xd6\xa5\ +\x2e\x69\x38\x1a\x3b\xda\x44\x94\x48\xce\x4b\xb3\x41\x4a\x2d\xa2\ +\x45\xcc\x6a\x87\xdf\xe4\xbc\xcd\xdc\x98\xed\x9a\xfc\xed\x58\x9f\ +\xb5\x75\x12\x66\xb2\x64\xb6\x39\x08\x5a\xc3\xb7\x93\xe8\x23\xd8\ +\x89\xea\x0a\x2e\x16\xef\x9e\x92\x4c\x4b\xe5\xcf\x7a\x23\x4a\x8b\ +\xe2\x05\x2a\xfe\x7e\x83\x36\x47\xb1\x56\x85\x43\x4c\x18\xed\xe5\ +\x91\x3d\xae\x40\xb0\xce\x15\x75\x1e\xa0\x9b\x3a\xbc\x5c\xbd\xa5\ +\x32\x89\x93\x77\xc5\xa9\x57\x4e\xed\xc9\x7c\xec\x28\x35\x8d\x27\ +\xa8\x16\x07\xd6\xac\xa8\xb6\x51\x82\xdb\xb1\x50\xbf\x36\x18\xc1\ +\xfa\x25\xcb\x60\x53\xe1\x4e\xae\x16\x2b\x1d\x1b\x3c\x95\xfc\xbe\ +\xad\x52\xf2\x8a\x2a\x4b\xb8\x89\xdf\x8c\xfd\x49\x58\xbb\x24\x59\ +\x14\xf1\x71\x8c\x31\x51\x33\x43\x5e\xa0\x6c\x03\x29\xe1\x45\xdb\ +\xc5\x90\xa7\x86\x90\x79\xe5\x85\x58\xb7\xba\xd9\x0a\xaf\xa2\x58\ +\x38\x63\xa2\x36\xe0\xb4\xdb\xb3\x3b\xb4\xfb\xbb\x6b\xee\x50\x5b\ +\xc6\xf0\xb3\xed\x91\x5c\xfd\x3a\xa1\x2c\x0c\xee\x3f\x92\x29\xd2\ +\x0f\x2c\x7c\x1c\xdb\x0c\x93\x3d\x57\xd4\xae\xdb\xde\x39\x9a\xa7\ +\x6c\x5d\x88\xfa\xb9\x94\x71\x5c\x99\xad\x55\xaf\x50\x9b\x6a\xb6\ +\xb2\xb8\xde\xda\x4e\x9b\x2c\x5e\x44\xcd\xd3\x60\xb0\xe7\xaa\xbd\ +\x12\xac\xae\xcd\xdf\x6e\xdb\xc5\x39\x3e\x35\xc2\xd6\xf1\x0b\x99\ +\xff\x32\x57\x66\xdb\x7f\xf1\x68\xac\x5b\xba\x49\x16\x1a\x7a\xa1\ +\x65\xbd\xb6\x9d\x2c\xfe\x19\x41\xf2\x9c\xf6\x95\x59\x96\x67\xbb\ +\x85\x49\x35\x0e\xa8\xf3\xaf\x9d\x63\x77\x47\xdc\x53\x5c\x99\xad\ +\x3f\x5a\xc9\x5b\xf3\x26\x59\xd0\xf5\x56\x2e\x3e\xd3\x0f\x41\x6a\ +\xfc\x32\x43\x46\xa9\xbd\x0c\xf7\xed\x8d\xdf\xd8\x3e\x6e\x74\xf3\ +\xcd\xee\x19\x24\x39\x27\x0a\xd4\x1f\x8f\xee\xd3\xeb\x41\x74\x9c\ +\xda\x1d\xeb\x55\x3f\xb7\x15\x1f\xb0\xae\xd9\x2a\xd2\xeb\x08\x52\ +\xe3\xfa\x73\xcc\x00\x75\xd3\x91\x74\xdb\x2c\xd4\x5b\x63\x07\xdb\ +\x3e\x66\xb7\xc5\x3e\xc1\x4c\x3c\x28\x97\x3b\x5b\x33\x4e\xaa\xb7\ +\x41\xc6\x49\x5d\x27\xc2\x76\xc6\xaa\x1f\xa7\xca\xea\xe8\xf5\x5f\ +\xaa\xc3\x56\x7e\xa0\xf6\x4b\x1a\xa5\xe7\x7e\xd3\x1f\x11\x3b\xe4\ +\x42\x73\x79\x6d\x57\x33\xdb\x89\x08\x50\xf3\xf2\x6f\xbf\x4a\x9b\ +\xce\x7c\x09\x3f\xba\x09\xc7\xea\x35\xdc\x96\x88\x8a\xe7\x98\xcd\ +\xa9\x33\xd5\x6a\x7e\x45\x91\x9a\x5a\xb4\x47\x5d\x94\xbd\x56\xcf\ +\x7f\x9d\xa4\x99\xe6\x27\xdb\xdc\xea\x5b\x1b\xbe\xd6\xdb\xae\x93\ +\x69\x52\x06\x08\xfd\x01\x87\x69\x1a\x62\xb6\x5f\x58\x39\x13\x21\ +\x1e\x01\x6a\xbe\x84\x84\xe7\xd5\x55\x87\x53\x99\x35\x5b\xda\x41\ +\xf1\x10\xa7\x77\x5b\x79\x65\xf7\xe4\xe9\x4a\x3d\x7f\x35\xfd\xd8\ +\x01\x3d\xde\xf1\x99\x29\xaa\xb2\x77\xbe\x7e\x75\xfb\xfd\xcd\x93\ +\xd4\x57\xd7\xfc\x57\x7d\x62\xf9\x7b\x6a\x9f\x85\xc3\xd5\xae\x73\ +\x9f\xd1\xcd\xd3\xee\xe7\xe0\x8c\x68\x8e\x95\xcd\x36\x0d\x01\xf2\ +\xce\x74\x23\xf7\x2e\x50\xcb\x4e\x95\xfb\xd5\x3c\x69\xa7\x7d\xb8\ +\xbc\x48\xdd\x52\xb8\x4b\x2f\xc0\xf2\x93\x56\xe4\x6d\x51\x77\x68\ +\x46\x41\x97\x16\xea\xee\xc6\x8f\x9c\x2c\xe6\xa2\xa8\x7b\xda\xd1\ +\xfd\xfa\xfb\x56\x9d\xdd\x6d\xee\x2a\xce\xd0\xb3\x4b\xe6\x1f\x5a\ +\xa5\x4e\xdd\x9b\xa8\x4e\xdc\x31\x43\xfd\xcf\x96\xc9\xea\x88\xb5\ +\x9f\xeb\xb7\xe7\xa8\x87\xd9\x3d\xf3\x86\xa9\x7f\x8d\x19\x68\x99\ +\x26\x96\x90\x57\x4a\xb5\xb2\xd9\x96\x21\x40\xde\xeb\xf7\x51\xbd\ +\xd5\x21\xcb\xc7\xaa\xe1\xbb\xe7\xea\x1f\x2b\x4e\xf9\xa8\xbc\x1f\ +\xed\xac\xb2\xca\xf2\xd5\x8d\x47\x76\xa8\x89\x59\x6b\x54\x79\x4f\ +\x82\xfe\x73\x94\xaa\x71\x3d\xb6\xec\x1d\x3d\x47\xf6\x4f\x33\x07\ +\x34\xab\x35\x0a\xd5\x3c\x25\x43\x21\xa3\x21\xe3\xbd\x2a\xaa\x97\ +\xad\x63\x42\x85\x74\x68\x47\xba\xbe\x20\x4d\x3f\x03\x8d\xcb\x48\ +\x56\xa3\xf6\x25\xea\x31\xa2\x9d\x29\xb5\xcf\xa1\x9d\x2f\x8d\x25\ +\x9d\x87\xd2\x0e\x95\x7e\xde\x07\xcf\x7f\x49\xcf\x57\xa5\x7a\xc5\ +\xd7\x4d\x7f\x10\xa6\xcb\xa6\x8a\x2d\x69\xb4\x6d\xa2\xc5\xf6\x08\ +\x8e\x6f\x45\x5f\x85\xef\x8c\x7b\x5a\x5f\xbc\x2f\xaf\xfa\x58\xfd\ +\x28\x35\x42\x5f\xe4\x64\x96\x75\x45\xff\xd9\x17\x3f\x46\xa9\xa1\ +\x9b\xc3\xf4\x45\xff\x74\xf2\xbf\xd5\xde\xda\x4f\xd2\x3b\xe2\x9e\ +\x34\xb4\x23\x02\xfd\xec\xbd\xc7\xe6\x09\xf0\xaf\xac\xfe\xd4\x80\ +\x4b\x20\x55\x6a\x71\x55\xa9\xbe\x4b\xde\x5d\x9c\xa9\x1b\x39\xfd\ +\x82\xf8\xe9\x6c\x96\x62\xfa\xd3\xf9\x2c\xc5\xf4\xa7\x33\xda\xa1\ +\x2b\x42\xf5\x3f\x8e\xbd\x12\x5f\xd5\xff\x40\xfe\x74\x5e\xdb\x39\ +\xba\x2f\x7a\x88\x19\x57\x23\xc1\x65\xbd\x02\x34\x91\xe2\xed\x08\ +\x0e\x64\x37\x7d\x99\x36\x9d\x99\x8f\x95\x54\x88\x9e\x52\x0b\xe9\ +\xd8\x83\x32\x5e\xc8\xc0\xe9\x7c\x38\xe6\xc0\x12\xdd\xc0\xe9\xb8\ +\xe3\xbf\xdb\x14\xdd\xc0\x47\xae\xfb\x42\xff\x03\x4e\x06\xfe\xf0\ +\xe2\xd1\x3f\x1b\x38\x0f\x1f\x3c\x5b\x24\xa5\xdb\xad\xd6\x6b\x5d\ +\x2e\x0b\x7d\x11\x1c\xc8\x6e\x5a\x9c\xbd\x9e\x9b\xcb\x0c\x74\xdc\ +\x84\x98\x9f\x7f\x6d\x57\xea\x63\xc5\x6a\x5f\xcf\x20\x38\x90\xdd\ +\x74\xa8\xec\x30\x37\x66\x9b\xc3\x49\x76\x49\x0b\xd3\xbf\x9e\xb2\ +\xde\x31\x82\x2c\xbc\x81\xc0\x40\x76\xfb\x60\x49\x85\xd0\x79\x81\ +\x2e\x42\x20\xee\xe7\x1f\x23\x48\xaf\x5b\xf0\x18\x41\xfc\x04\xc1\ +\x81\xec\x24\xaa\xcd\xcb\x13\x4b\x73\x36\x20\xee\xe7\xd7\x47\x90\ +\x85\x8f\xac\x98\xf6\x35\x19\xc1\x81\xec\x24\xca\x00\xe0\x09\x74\ +\x69\x68\xb0\xd4\xe2\x24\x2b\x9a\x6d\x1c\x0f\x83\xff\x50\xd2\xeb\ +\xfa\x97\xdd\x65\xb9\x9b\xf4\xab\x94\x90\x31\xa2\x76\x42\x0b\xb3\ +\xd6\xa8\x13\x7e\x9c\xa6\xdf\xe3\xf7\x47\xac\xe9\xdf\xe6\x89\x6f\ +\xd2\x63\x60\xb0\xf5\x35\xdb\x8a\x66\x9b\x62\xe7\x41\xa7\xa4\x74\ +\xca\x83\x04\xe6\x43\xe7\xa6\x54\x4c\xa5\x9d\x12\x64\x6a\xcc\xe9\ +\x02\x08\x4f\x84\x6e\xf9\x01\xe6\x5a\x5f\xc9\x56\xcc\x46\x48\xb7\ +\xf3\xa0\x47\xef\x5f\x04\xd7\xf3\x33\x9f\x6e\x53\x4c\x8d\xf9\xc1\ +\xd2\x5c\xae\xc6\x97\x6a\x34\xc0\x5c\xeb\xe9\x47\x2b\x9a\xed\x21\ +\xbb\x0e\x78\x97\x39\x43\xb8\xfa\x2a\x6d\x55\xa8\xfd\x0e\xd5\x1b\ +\x30\x23\xe6\x54\x45\xeb\x4c\x0d\x5f\x31\xa7\xdb\x69\x30\xd7\x7a\ +\xca\xb0\xe2\x31\x42\xbe\x5d\x07\x7c\xcc\x86\x89\x70\x3a\x8b\xf0\ +\xce\xc6\x6f\x4d\xab\x89\xc0\x1b\x21\x0b\xfe\x09\x73\xad\x27\x21\ +\xd7\x8a\x66\x7b\xcc\xae\x03\x4e\x1f\x0e\x80\x35\xa0\xe3\x1c\x33\ +\x62\xfe\x7c\xca\x87\xdc\x8d\x2d\x0f\x85\xe0\xbd\x50\x91\x15\xcd\ +\xf6\x84\x5d\x07\x9c\xce\x0a\x81\x35\x98\x93\x91\x6c\x4a\xcc\x3f\ +\xdf\x3e\x95\xbb\xb1\xfd\x83\x81\x45\x8b\x18\x56\xa9\x15\xcd\xb6\ +\x1a\x95\x9f\x80\xd1\x7c\xbf\x73\xb6\x29\x31\x4f\x38\x94\xc2\xd9\ +\x79\x78\x15\x8c\xb5\xe1\x63\x84\x2a\x6b\x39\x6d\x68\xe8\x85\x76\ +\x1e\x70\xaa\x49\xca\xdb\xc7\x12\xab\x42\xb5\x74\xcd\x88\xf9\xbe\ +\xe3\xd9\x5c\x8d\x6b\x6e\xf9\x11\x18\x6b\xc3\xaa\x71\xa8\x8e\x0b\ +\x2c\xe3\xb5\x9d\x65\xf1\xd7\x76\x1f\xf4\x25\x39\xeb\xe1\x74\x7e\ +\x86\x8a\xc2\x98\xd1\x2e\x86\xea\x08\xb3\xde\x1f\xae\xa5\x6c\x3f\ +\x8a\xba\x08\x9e\xe4\x88\x19\x78\x89\x65\xcc\x36\x30\xaa\x77\x5b\ +\xbb\x0f\xf8\x1d\x71\x4f\xa9\x25\x55\x65\x70\x3c\x3f\x41\xed\xb6\ +\xa9\x20\xba\x19\xb1\xa6\x82\xe8\xbc\x41\x5d\x28\x60\xac\x0d\xab\ +\xfd\x94\x7b\xda\xc0\x6c\x4d\x16\x55\xc6\xa7\x6b\xba\xd5\x35\xa7\ +\xe1\x7e\x26\x41\x1d\x0d\xe6\x65\xae\xd4\x1b\x21\x9a\x15\x67\x6a\ +\x6f\xc3\x1b\x33\x0f\x2c\x86\xb1\xb2\x60\xb6\x3c\x1c\x23\xd4\xd5\ +\xd6\xa2\xdd\x70\x41\x93\x18\x9f\x1a\x81\xec\x13\x13\xf8\x16\x75\ +\x11\xd8\x38\x46\xb0\xfb\x07\xb2\xf3\x45\x6d\x46\x80\x39\x50\x26\ +\x88\xd9\xf1\x9d\x9b\xb9\x82\xbb\x71\xa6\xee\xc0\x30\x56\x06\x3e\ +\x90\x9d\x4d\xfd\x3a\xc5\x4b\x00\xa8\xf1\x22\x30\x07\xea\x8f\x65\ +\x76\x7c\xf7\x94\x64\x72\x37\xce\xc3\xd7\x7c\x06\x63\x65\x22\xf5\ +\xcb\xe6\x97\x1a\xce\xd7\x33\x2b\x42\xe1\x82\x26\x41\x1f\x26\xcd\ +\x8c\x2d\x65\x3b\xf8\xaa\x85\x3c\x4b\x3c\x8e\xba\x08\x4c\x5d\x6a\ +\x38\xc6\x4b\x00\xee\x8d\x7f\x16\x2e\x68\x12\x57\x45\xf5\x32\xfd\ +\x23\x28\x8f\x74\x5f\xf0\x0a\x8c\xb5\x61\x15\x5a\xaf\x07\x99\x5b\ +\x3c\xcc\x4b\x00\x78\xac\x08\xe5\xaf\x4c\x04\xb3\x63\x3b\x94\xd3\ +\x5f\x2d\xb7\xc5\x3e\x01\x63\x65\xa7\x10\x8d\x7d\x4b\x2c\x36\xa4\ +\xac\xb2\x7c\xb8\xa1\xc1\xec\x38\x76\xc0\xf4\xb8\x7e\x9c\x2a\x73\ +\x39\xd6\x57\x47\xdf\x0f\x63\x6d\x58\x07\x51\x3c\xdc\xcf\xa2\x7c\ +\x5b\x60\x2c\x8b\xb3\xd7\x9b\x1e\xd7\xd8\x8c\xe5\xdc\x8d\x33\xd5\ +\x09\x86\xa9\xb2\x55\x3c\x7c\x25\x4f\x41\xa0\x36\x2d\xc0\x58\x22\ +\xf6\xc4\x9b\x1e\xd7\x9d\xc5\x07\xb9\x1b\xe7\xbc\xf2\x42\x98\xaa\ +\x67\x2d\xb7\x9e\xd9\x2a\x42\x2c\x4f\x41\x18\xbd\xfe\x4b\xb8\xa1\ +\xc1\x7c\xb8\x75\x8a\xb9\x37\x85\x94\x60\xb5\x8a\xc3\x4c\x84\x1f\ +\x8f\xee\x83\xa9\x7a\xea\xae\xab\x48\x31\x96\x33\x5b\xed\xa1\x7e\ +\xe0\x29\x08\xfd\x92\x46\xc1\x0d\x0d\xe6\xe5\x55\x1f\x9b\x5e\xff\ +\x82\x47\xe8\x48\x0c\xc6\xda\xb0\x9c\x6e\xf1\x7b\x0b\x66\x23\x48\ +\xe3\x79\x0a\xc2\x4d\xb3\x1e\x85\x1b\x1a\xcc\x83\x49\x23\x4d\x8d\ +\xe9\x93\xc9\x63\xb9\x1c\x67\xba\x11\x09\x63\xf5\xa8\x71\x56\xcc\ +\xb3\x1d\xc5\xd5\xcf\x0b\xb7\xa4\x9e\xa8\xae\x80\x23\x1a\x08\x35\ +\xda\x34\x33\xa6\x74\x6c\xc1\x23\xdf\xa5\xcf\x82\xa9\x7a\x92\x2c\ +\xbe\x66\x3d\xb3\x95\xc5\xa1\xbc\x05\x82\x6a\x80\x02\xe3\xa0\x7c\ +\x66\x33\xe3\x39\xeb\xc0\x52\x2e\xc7\xf9\x03\xd4\x45\x68\xc4\x6c\ +\x85\x27\xad\x77\x66\x2b\x0b\x7d\x79\x0b\x44\xec\xc1\x65\x70\x44\ +\x83\x38\x5a\x79\xdc\xf4\x78\xa6\x1d\xdd\xcf\xe5\x58\x8f\x58\xfb\ +\x39\x4c\xd5\xd3\x2f\x58\x59\xea\x63\xbd\x33\xdb\x88\xa0\xdb\x78\ +\x0b\xc4\x27\xdb\xdc\x70\x45\x9b\x7c\x21\x6f\xa7\x04\xe9\x7d\xb8\ +\x78\x64\xf0\xb2\x77\x61\xac\x9e\x34\x45\xba\xc5\x72\x66\xdb\x36\ +\xbc\x67\x20\x6f\x81\x78\x76\xe5\x38\xb8\xa2\x41\x2c\xcc\x5a\x63\ +\x6a\x2c\xe9\x7c\x98\x57\x7a\x24\xa2\x2e\x82\x27\x51\x63\x04\x87\ +\x15\xd1\x1e\xae\x84\xa7\x40\x08\x09\xcf\xc3\x15\x0d\x62\xca\xee\ +\xb9\xa6\xc6\x92\x76\x77\xf8\x10\x09\x9d\x57\x17\xe1\xa8\xc3\xaa\ +\xb8\x14\x71\x1b\x4f\xc1\xa0\x8a\x54\x35\x2a\x0a\xd2\x18\x81\xd9\ +\xc5\xac\xe9\xdf\xe3\x95\x6b\xa2\x1f\x80\xb1\x36\x6c\xb6\x5b\xac\ +\x6b\xb6\xb2\x38\x97\xb7\x80\x50\x0b\x68\xe0\x7b\x5e\x5c\x35\xde\ +\xd4\x38\xce\xd8\x9f\xc4\xe5\x38\xd3\x8d\x39\x98\xaa\x47\xcd\xb6\ +\xb2\xd9\x7e\xc9\x5b\x40\x56\xe4\x6d\x81\x33\x1a\xc0\x03\x8b\x5e\ +\x33\x35\x8e\xa9\x45\x7b\xb8\x1c\xe7\xc3\xe5\x45\x30\x55\xcf\xfa\ +\xdc\xca\x66\xfb\x1a\x6f\x01\x09\xdf\x3d\x17\xce\x68\x00\xb7\xc6\ +\x0e\x36\xef\x23\x88\x22\xe9\xad\xd2\x79\x84\xd2\xdd\x60\xaa\x9e\ +\x2e\x2e\x89\xaf\x58\xd9\x6c\xfb\xf1\x16\x90\x31\x1b\x26\xc2\x19\ +\x7d\x0c\x9d\x83\x77\x9c\xda\xdd\xb4\x18\xfe\x23\xf6\x71\x6e\xc7\ +\x7a\x39\xea\x22\x34\x52\x84\x46\x7c\xc0\xb2\x66\xdb\x56\xee\x76\ +\x03\x6f\x01\x19\xb0\xf8\x0d\xb8\xa3\x8f\x39\x72\xb2\xd8\xd4\x18\ +\x0e\x5a\xfa\x36\xb7\x63\x4d\xb7\xe6\x60\xac\x1e\xaf\xea\x76\xb6\ +\xac\xd9\x9e\x6d\x69\x7e\x82\xa7\x80\xfc\x6d\xf6\x20\xb8\xa3\x8f\ +\xd9\x56\xb4\xd7\xd4\x18\xfe\x7b\xf3\x24\x6e\xc7\xfa\xfb\x9d\xb3\ +\x61\xaa\x0d\x67\x22\x1c\xb7\x5c\x0b\xf3\x06\x8a\x88\x6f\xe0\x2a\ +\xe9\x99\xe3\xf3\x3e\xa3\x58\x90\xb5\xda\xd4\x18\x4e\xdb\xb7\x90\ +\xdb\xb1\x1e\xb7\x35\x1c\xc6\xda\x90\x14\x61\x8d\xc3\xea\x68\x0f\ +\x3a\x99\xb7\xc0\x50\xaf\x2c\xe0\x3b\x7e\xd8\x35\xc7\xd4\xf8\x6d\ +\x2e\xdc\xc5\xed\x58\xbf\x86\xba\x08\xec\xd4\xb1\xad\x6f\xb6\xd2\ +\x70\xde\x02\x13\x97\x91\x0c\x87\xf4\x21\xa1\x9b\xc3\x50\x2a\xd3\ +\x24\x9e\x58\xfe\x1e\xcc\xb5\xe1\x0e\x0d\xff\xb4\xbe\xd9\xca\xa2\ +\xc8\x5b\x60\x3e\xdb\x1e\x09\x87\xf4\x21\xcf\xa5\x8c\xc3\x99\xbb\ +\x49\xf4\x4c\xfc\x17\xcc\xb5\xc1\x6a\x5f\xc2\x7d\x96\x37\x5b\x1e\ +\x0b\xd2\xbc\x90\xf2\x11\x1c\xd2\x87\xf4\x5e\x38\xdc\xb4\xd8\x3d\ +\xb2\x64\x0c\xd7\x63\x7d\x3b\xea\x22\x34\xa4\x9a\x80\xb0\x10\xa7\ +\x83\x05\xb4\x87\xcd\xe1\x29\x38\x41\xf3\x5f\x82\x43\xfa\x90\x5b\ +\x66\x3f\x6e\x5a\xec\xde\xdb\xf4\x1d\xd7\x63\xdd\x39\xba\x2f\xcc\ +\xb5\x7e\x26\xc2\x21\x07\x2b\x04\xc8\xe2\x0c\x9e\x82\xd3\x69\x5a\ +\x1f\x14\xa4\xf1\x11\x67\x6a\x6a\xd4\x2b\x22\x43\x4c\x8b\x5d\xe4\ +\xde\x05\xdc\x8e\xf5\xa9\x33\xd5\xfa\x99\x35\xcc\xf5\xbc\x8f\x63\ +\x8a\x30\x8d\x19\xb3\x75\xc9\xc2\xab\xbc\x05\x28\xbf\xa2\x08\x4e\ +\xe9\x03\x0a\x2a\x8e\x9a\x1a\xb7\x8d\x47\x76\x70\x3b\xd6\x34\x67\ +\x61\xae\x8c\x7e\x1c\xe3\xb9\x6b\xc3\xaa\xc3\xa9\x70\x4a\x1f\xb0\ +\xa5\x70\x97\xa9\x99\x08\xa5\xa7\xca\xb9\x1d\x6b\x4a\x59\x84\xb9\ +\x32\xd2\x9d\xc1\x23\x31\x03\x7f\xa5\x3d\x74\x29\x4f\x01\x8a\xd8\ +\x13\x0f\xa7\xf4\x01\x09\x87\x52\x4c\x8b\xd9\x5f\x63\x06\x72\x3d\ +\xd6\x54\xb1\x0e\xe6\x5a\x4f\x25\x74\x13\xd6\xc1\x12\xda\x43\x2f\ +\xe5\x29\x48\xef\x6c\xfc\x16\x4e\xe9\x03\x26\xed\x8c\x35\x2d\x66\ +\xfd\x17\x8f\xe6\x7a\xac\x67\x1f\x44\x5d\x84\xfa\x29\x5f\xe2\x22\ +\x07\x6b\xb8\xdc\xc2\x7f\x78\x0a\xd2\xc0\xa5\x63\xe0\x94\x3e\xe0\ +\xfd\xcd\x93\x4c\x8b\xd9\xdb\x1b\xbf\xc1\x1f\x36\x18\xec\xf9\xad\ +\xcb\xc7\x32\x67\xb6\x01\x8a\xd0\x9b\xa7\x20\xf1\x5c\xa6\xcf\x97\ +\x0c\x5b\xf9\x01\xb7\x47\x3f\x85\x27\x8b\x4d\xfd\xf7\x3e\x4a\x8d\ +\x80\xb9\xd6\xcb\x44\x10\x43\x98\x33\xdb\x8e\x91\x3d\x7e\xab\x3d\ +\x7c\x25\x4f\x05\x69\x78\x6d\x85\xed\x4b\xcc\xbc\xd1\xb4\xae\xe0\ +\x47\xcb\xbc\x77\xe5\xe9\x53\xea\x7d\xf1\xcf\xe9\x6d\x6a\xcc\x62\ +\xe4\xda\xff\xc1\x60\xcf\xcd\xaf\x2d\xef\x2c\x8b\xbf\x76\xb0\x88\ +\xf6\x02\x4b\x78\x0a\xd6\xae\xe2\x0c\xb8\x65\x2b\xb9\x79\xd6\xa3\ +\xa6\xc5\xab\xb8\xaa\xd4\x32\xef\xfd\xbf\x1f\xa3\x4c\x4f\x45\x7b\ +\x32\x79\x2c\x0c\xf6\xdc\xe2\x33\x89\x0e\x56\xd1\x5e\x60\x14\x4f\ +\xc1\x8a\xcf\x4c\x81\x5b\xb6\x82\xd3\x35\x67\xd4\xf6\x4a\xb0\x29\ +\xb1\xfa\xd3\xcc\x01\x96\x79\xef\x83\xa5\xb9\xea\x95\x53\x7b\xea\ +\xcf\x35\xe1\xc7\x69\xa6\xfd\xbb\xbd\x12\x5f\x85\xc9\x9e\x23\x69\ +\x38\xb3\x66\x1b\x18\x11\xfc\x57\x9e\x82\xf5\x85\xb6\x3b\x01\xde\ +\x63\x66\xf3\xc1\x87\x92\x5e\xb7\xcc\x7b\x53\x56\x84\x3f\x3e\xb4\ +\xde\x11\xf7\x24\x0c\xb6\x8e\xda\x28\xc1\x37\x3a\x58\xc6\xa5\x88\ +\x99\xbc\x04\xeb\xe5\x55\x1f\xc3\x31\x5b\xc1\xa6\xc2\x9d\xa6\xc5\ +\xea\x4d\x8b\xf4\x8e\x8b\xcd\x58\x7e\xce\x73\xfd\x61\x5a\x1f\x7d\ +\x87\x6f\x06\xd7\x4e\x47\x5d\x84\x3a\xda\xef\x60\x9d\x00\xb7\x10\ +\xc6\x4b\xc0\x42\xe6\xbf\x0c\xc7\x6c\x05\x73\x33\x57\x98\x16\xab\ +\x29\x16\xe8\x8a\x5c\x52\x55\xa6\xde\x38\xb3\xbf\x5f\xda\xaa\xa3\ +\x2e\xc2\x79\xe7\xb5\xb2\xf0\x2d\xf3\x66\xeb\x52\x84\x87\x79\x09\ +\xd8\x35\xd1\x0f\xc0\x31\x5b\xc1\x77\xe9\xb3\xb8\xba\x5e\x4d\x79\ +\xbe\x0d\x3d\x1b\xf5\x05\x33\x1a\xb3\x6b\x50\x30\x50\xbf\xb6\x2f\ +\xfb\x3b\xdb\xb0\x10\x27\x4f\x29\x60\x47\x4c\xce\x95\xb4\x13\xef\ +\x6e\xfc\xd6\xb4\x38\x1d\xad\x3c\xee\xd7\x77\xa5\xac\x03\x4a\x17\ +\x6c\xe8\xd9\xa8\x7b\x82\xd1\xa4\xa3\x2e\x42\xdd\x2c\x84\x93\x1d\ +\x62\xc4\xcb\x1d\x76\x40\x7b\xa1\x38\x5e\x02\xb7\x36\x7f\x3b\x5c\ +\xd3\x4b\x86\xae\x08\x35\x25\x46\x7f\x9c\xd1\xcf\xef\x59\x17\x54\ +\x03\xb9\xb1\xe7\x33\xba\x64\xe7\xca\xbc\xad\x30\xda\x5f\x34\xcb\ +\x61\x17\x02\x64\x69\x30\x2f\x81\x53\xf6\xce\x87\x6b\x7a\x49\xf7\ +\x05\xaf\x98\x12\xa3\xbe\x8b\x46\xfa\xf5\x3d\xbf\x4d\x8f\x69\xf2\ +\x19\xd3\x0d\x6e\x22\x1a\x7b\x70\x19\x4c\xf6\x97\xf3\xda\x81\xb6\ +\x31\x5b\xda\xa2\x6b\x2f\x55\xc1\x43\xe0\xc6\x6e\xfa\x1e\xae\xe9\ +\x25\x54\x85\xcb\x8c\x18\x8d\x5e\xff\xa5\xdf\xde\xf1\x50\xd9\x61\ +\xf5\x77\x51\x3d\x9b\x7c\xc6\xc9\xbb\xe2\x0c\x7d\x0e\xd4\x45\xf8\ +\x59\x65\x57\x85\xf5\xfd\x8d\xc3\x4e\xb8\x14\x21\x96\x87\xe0\x0d\ +\x5a\xfa\x36\x5c\xd3\x0b\xaa\x6b\x4e\xab\xed\x94\x20\x53\x62\x14\ +\xee\xc7\x4c\x84\xe6\x76\xb3\x7d\x66\x45\xa8\xa1\xcf\xf1\xe1\xd6\ +\x29\x30\xda\xda\x2a\x5f\x33\x1c\x76\xc3\xa9\x88\x83\x78\x08\x5e\ +\x97\x39\x43\xe0\x9c\x5e\x90\x73\xa2\xc0\xb4\x18\xad\xce\xdf\xe6\ +\x97\x77\x5c\x90\xb5\xba\xd9\xcf\x48\x29\x61\x46\xf2\xda\xda\xcf\ +\x61\xb6\xfa\xc7\x31\x69\x80\xed\xcc\x96\xb6\xea\xda\xcb\x9d\xb0\ +\x7b\xf0\xe8\xba\xa9\x99\xc5\x44\xec\x02\x7d\x9d\x37\x2b\x46\x45\ +\x95\x25\xa6\xbf\xdf\x89\xea\x0a\xf5\xa6\x16\xd6\x7d\xd8\x77\x3c\ +\xdb\xb0\xe7\x19\xb2\x1c\x75\x11\x5c\x6e\xe1\x38\xb3\x85\x67\x9a\ +\x91\x95\x30\x9b\x87\x20\xee\x2d\x39\x04\xf7\x6c\x21\x73\x32\x92\ +\x4d\x89\xcd\x0d\x7e\xca\x44\xa0\x2e\xbe\x2d\x7d\x56\xf7\x9e\x04\ +\xc3\x9e\xc7\xcc\xea\x6a\x16\x4e\xf9\x9a\xee\xb0\x2b\x6d\x23\xa5\ +\x9e\x3c\x04\x91\x7e\x2e\x82\x96\xf1\xf5\x8e\x99\xa6\xc4\xe6\x81\ +\x45\xaf\x99\xfe\x6e\xdb\x8f\xee\xf5\xaa\xc0\xce\x0b\x29\x1f\x19\ +\xf6\x4c\x74\xdc\xc5\xbd\xd9\x46\x04\x05\xd9\xd6\x6c\xa9\xb7\x8f\ +\xf6\x92\x19\x76\x0f\xe2\x97\x69\xd3\xe1\x9e\x2d\xc4\xd3\x6d\x2a\ +\xd6\x33\x11\x9a\xca\xa9\xf5\x57\x8f\xb4\xab\xa3\xef\xe7\xdd\x6c\ +\xf7\x39\x54\xc7\x05\x0e\x3b\x43\x6d\x27\xec\x1e\xc8\x7f\xad\xf9\ +\x14\xee\xd9\x42\x9e\x4a\x7e\xdf\x96\x99\x08\x54\x83\xa1\x35\xcf\ +\x4b\xa9\x62\xbe\x86\x0a\x95\x73\x9f\x85\xe0\x16\xde\x76\xd8\x9d\ +\x76\x4a\xd0\xef\xb5\x97\x3d\x6d\xe7\x40\xf6\x48\x7c\x05\xee\xd9\ +\x42\x82\xbd\xdc\xfd\x59\x39\x13\x81\x4a\x46\x52\x15\xaf\xd6\x3c\ +\xef\xf4\xfd\x49\x3e\x7f\xae\xdc\xf2\x23\xbc\x9b\xed\xa9\x0e\xb2\ +\x78\xa5\x83\x07\xb4\x97\x4d\xb0\x73\x30\xfd\x7d\x1d\x94\x45\xfe\ +\x12\xf3\x88\x29\xb1\x31\xb3\xcf\x97\x2f\xfa\xa9\xbd\xba\xe6\xbf\ +\x86\x9c\x21\x73\x6e\xb6\x71\x0e\x5e\x70\xb9\xa5\x07\xed\x1e\x50\ +\x7f\x17\x3a\x61\x09\x2a\xf7\xe7\xa9\x28\x0b\xab\x7f\x04\x93\xb2\ +\xd7\xf9\xe4\x99\x6f\x8b\x7d\xc2\xe7\xcf\xb6\x34\x77\x23\xe7\x47\ +\x08\xd2\xfd\xdc\x98\xad\x23\xac\xcb\xc5\xda\x4b\xe7\xd9\x39\xa0\ +\x1b\x0a\x76\xc0\x45\x9b\x09\x9d\x4b\xda\x29\x13\xe1\xe4\xe9\x4a\ +\xf5\xd6\xd8\xc1\x3e\x7b\x6e\x3a\x8e\xf0\x25\x33\xf6\x27\xf1\x6c\ +\xb6\x39\x8e\x64\xf1\x22\x07\x4f\x04\xc8\xe2\x5b\x76\x0e\x6a\xd4\ +\xbe\x44\xb8\x68\x33\x59\x93\xbf\xdd\x94\x98\x8c\x5a\x37\xc1\x94\ +\xf7\x19\xb7\x35\xdc\xa7\xcf\x4d\x45\x63\x58\x4c\xb3\xb3\x68\xd1\ +\x99\x37\x1c\xbc\xe1\x9c\x76\x6f\x00\x15\x81\xb0\x6b\x50\x43\x37\ +\x87\xc1\x45\x9b\x49\xcc\x81\x25\xb6\xc9\x44\xd8\x5d\x9c\xa9\x5e\ +\x11\x19\xe2\xd3\xe7\x7e\xdd\xc7\x7f\x24\x68\x6e\x72\x6a\xb6\x25\ +\x81\x51\xbd\xdb\x3a\x78\x44\x7b\xf9\xaf\xed\x1a\xd8\xc1\xcb\xde\ +\x85\x8b\x36\x13\xea\x28\x6b\x87\xee\x0c\x54\x83\xb6\xf7\xc2\xe1\ +\x3e\x7f\xee\xbb\xe6\x0e\xf5\xe9\x73\x52\x6a\x22\xa7\xdd\x73\xbf\ +\x70\xf0\x8a\x33\xb2\xdb\xb5\x76\x4d\x03\xbb\x23\xee\x29\xb8\x68\ +\x33\xa1\x9f\xf7\x76\xc8\x44\xa0\xa3\x23\x83\x3e\xe8\xf8\xb4\x03\ +\x08\x55\xa6\xe3\xd0\x6c\xab\x5d\xe1\x41\xd7\x38\x78\xc6\xae\xa5\ +\x17\xe9\xa7\x24\x95\x0d\x04\xd6\x58\xfc\x46\x67\x22\x90\x91\x1b\ +\xd9\xad\x36\x3e\x33\x85\xb9\x9c\x66\x94\x52\xb4\x18\x81\x11\x41\ +\x77\xdb\x35\xc0\xfb\x0d\xac\xda\x64\x27\xee\x8d\x7f\xd6\xf0\x58\ +\xdc\xbf\x70\x84\xa1\xef\xf0\xcf\xd5\x9f\x18\xfa\xfc\x6f\x6d\xf8\ +\xda\x67\xcf\x7a\xcb\xec\xc7\xf9\xfb\x30\x16\x29\xde\xee\x00\xfa\ +\xd9\xed\x46\x3b\x06\x78\x51\xf6\x5a\x38\x69\x33\x30\x72\x47\x68\ +\x46\x26\x02\xf5\xf3\x32\xba\x2d\x78\xb7\xf8\xe7\x7d\xf6\xbc\x57\ +\x45\xf5\xe2\xcd\x6c\x57\xc3\x65\x6d\x5e\x0d\x6c\xe2\x8e\x19\x70\ +\xd2\x26\xa0\x3a\xaf\x66\xc4\xc2\xa8\x36\x33\x54\x67\xe0\x76\x13\ +\x2a\x68\xd1\xa5\x8f\x92\xaa\xb2\x56\x3f\x6f\x79\xf5\x49\xfe\xce\ +\x6b\x15\x41\x82\xcb\x9e\xb3\xbb\x15\x56\xda\x2d\xc8\xc3\xd7\x7c\ +\x06\x37\x6d\x02\xaa\xfd\xcb\x72\x26\xc2\x67\xdb\x23\x99\xfa\xa5\ +\x64\xd6\x05\x12\x0b\x69\x39\xdc\xb5\xfe\x87\x32\xc9\x6e\x81\xa6\ +\x34\x20\xd0\x38\xcb\x72\x37\x99\x12\x8b\x23\x06\x64\x22\xec\x2d\ +\xc9\x52\x3b\x4e\xed\x6e\xda\x7c\x7a\x7f\xf3\xa4\x56\x3f\xf3\xe6\ +\xc2\x5d\x5c\x99\x2d\x7d\x13\x82\xbb\x36\x7c\x76\xbb\xdc\x4e\x81\ +\xbe\x01\x05\x69\x9a\x24\x72\xef\x02\x66\x33\x11\x1e\x5e\x3c\xda\ +\xd4\xf9\x14\x32\xff\xe5\x56\x3f\x33\xed\x8e\x39\x2a\xa3\x98\x04\ +\x57\xe5\x28\x33\xa1\xb8\xaa\x14\x8e\xda\x08\x1f\xa7\xca\x4c\x66\ +\x22\xcc\x3e\xb8\xd4\x2f\xfd\xed\xca\x4e\x95\x5b\x32\x17\xd8\x82\ +\xaa\x41\x06\x42\x53\x35\x13\xb4\xbf\x46\x76\x0a\xfa\xa6\xc2\x9d\ +\x70\xd4\x46\x78\x65\xb5\xf1\xb7\x99\x7c\x7d\xdd\x95\xfe\x80\xde\ +\x38\xf3\x61\xbf\xcc\xa7\xe5\xb9\x9b\x5a\xf5\xec\x13\xd2\xa2\x79\ +\x31\xdb\xf9\x70\xd3\xa6\x76\xb7\x8a\xd0\x95\xfe\x2a\xd9\x25\xe8\ +\x46\x14\x7f\xb6\x13\xfd\x92\x46\x19\x1e\x83\xb0\x9d\xb1\x3e\x7d\ +\xe6\x37\x37\x4c\xf4\xdb\x7c\x1a\x9f\x1a\xd1\xaa\x67\xf7\xa6\xf1\ +\x24\x83\x5d\x73\xcf\x60\x57\xdb\xfc\xcc\x04\xc5\x2e\x81\xff\x60\ +\xcb\x64\x38\x6a\x23\xdc\x11\xf7\xa4\xe1\x31\x48\x39\xbc\xd5\x67\ +\xcf\x4b\xa5\x33\xcd\xa8\xbd\x6b\xd4\x47\xd7\x17\x57\x8d\xe7\x61\ +\x57\x1b\x0e\x17\x6d\x26\xbf\x9d\x1c\xdc\x91\x7a\xba\xdb\x21\xf0\ +\x4f\x26\x8f\x85\xa3\x36\xc2\xef\xa2\x7a\x32\x93\x89\x40\x45\xce\ +\xef\x9e\x37\xcc\xaf\xf3\x89\xb2\x1f\x2a\x4f\x57\x79\xfd\x0e\x03\ +\x16\xbf\x61\xfb\xca\x5e\x97\x47\xf6\xb8\x02\x2e\xda\xb2\xcc\x84\ +\xf7\xec\x10\x7c\x5f\x57\x6c\xb2\x13\xd4\xcd\xc2\xe8\xf1\xbf\x7e\ +\xfa\x43\x3e\x7b\xde\xaf\xd2\xa6\x5b\x62\x4e\xb5\xa6\x8f\x9a\x90\ +\xf0\xbc\xbd\xaf\xe5\xba\xa5\x37\xe1\x9e\x2d\xa4\xb3\x2c\xfe\xda\ +\x0e\x6d\xcf\x69\x27\x42\xed\xac\x41\x7d\xcc\xe8\x85\xd5\xc7\x47\ +\xb9\xce\x19\xa5\x79\xa6\xec\xc2\x9b\xa3\x4f\xb7\x29\x5e\xbf\x07\ +\xb5\x47\xb7\xb1\xd9\xee\x75\xc4\x0c\xbc\x04\xee\xe9\x05\x4e\x45\ +\x1c\x64\x87\x49\x40\x0b\x15\xd4\x27\x31\x6b\x0d\x33\x99\x08\x03\ +\x96\xbc\x69\x99\xf9\x44\x1f\x15\xbd\xc5\xcc\x4b\x18\xa6\x4b\x16\ +\xfb\xc1\x35\xbd\x45\x75\x5c\xe0\x74\x8b\xeb\x58\x9f\x04\x4b\x72\ +\xd6\xc3\x59\x1b\x80\xea\x15\x18\x3d\xf6\x3f\xec\x9a\xd3\xea\xe7\ +\x9c\x97\xb9\xd2\x52\xf3\x89\x76\xd8\x55\x67\xaa\x5b\xfc\x1e\xc7\ +\xab\x4e\xd8\x39\x03\x61\x25\x0c\xb3\xb5\x79\xb7\x91\xe2\xcd\xda\ +\x40\x56\xb1\x3c\x11\xbe\x4d\x8f\x81\xb3\x36\x80\x19\xed\x59\x5a\ +\x9b\x89\x40\xc5\x5f\xfe\x34\x73\x80\xe5\xe6\xd4\xc6\x23\x2d\x6f\ +\x28\x4a\x25\x3f\xed\x79\x4e\x2b\x9e\x6c\xa3\x04\xdf\x08\xb7\xf4\ +\x49\xdd\x04\xe9\x03\x96\x27\xc3\xc8\xb5\xff\x83\xb3\x36\xc0\xb3\ +\x2b\xc7\x19\x3e\xf6\x05\x15\xc7\x98\xcd\xa9\x6d\x4c\x74\x39\xc1\ +\x9b\xb4\x35\x9b\xee\x6c\xdf\x83\x4b\xfa\x8a\x89\xbd\x2f\xd5\x76\ +\xb7\xe9\xac\x4e\x06\xb3\x5a\x68\xb3\x46\xaf\xc4\x57\x2d\x9d\x89\ +\xb0\xe9\x48\xba\x5f\x73\x6a\x1b\xd3\xc0\xa5\x63\x5a\xfc\x3e\xf3\ +\x0f\xad\xb2\xa3\xd1\xa6\x72\xd7\x9a\xdc\xf0\x9b\x65\xb2\x78\x17\ +\xdd\x0c\x61\x71\x42\xd0\xcf\x50\x50\x9f\x9b\x67\x3d\x6a\xd9\x4c\ +\x04\x6a\x69\x74\x8f\x9f\x73\x6a\x1b\xd3\x1f\xa6\xf5\x69\x71\x96\ +\x8b\xbc\x27\xc1\x6e\x46\x7b\xba\xad\x12\x74\x27\xdc\xd1\x88\xec\ +\x04\xb7\xf8\x3d\xab\x13\xa3\xb4\x95\x05\x44\xec\x06\x19\x05\x15\ +\x56\xb1\x6a\x26\xc2\x77\xe9\xb3\x2c\x3f\xa7\x52\x8b\xf6\xb4\xe8\ +\x9d\xcc\xac\xbd\x6b\x4e\x51\x70\x69\x22\x5c\xd1\xa8\xdd\x6d\x54\ +\xef\xb6\xda\x20\x67\xb3\x38\x31\xb6\x16\xed\x86\xc3\xd6\x21\xb7\ +\xfc\x88\x65\x33\x11\x72\x4e\x14\xa8\x9d\xb4\x9d\xa3\xdd\x3e\xbc\ +\x8e\xb1\xe8\xf9\xb3\x97\x3a\xd8\x31\xb2\xc7\x6f\xe1\x8a\x46\x7e\ +\x2c\x93\xc5\x7e\x2c\x4e\x8e\x99\x07\x16\xc3\x61\xeb\x40\x5f\xd3\ +\x8d\x1e\x73\xea\x0d\xe6\x0d\x4f\x2c\x7f\x8f\x89\x39\x45\xcf\x69\ +\xb5\x0f\x92\xe6\x75\xcb\x15\xfa\xc2\x0d\x4d\x39\x4e\x90\xbe\x63\ +\x6d\x72\x7c\xb8\x75\x0a\x1c\xb6\x0e\x73\x32\x92\x2d\x99\x89\xb0\ +\x20\x6b\x35\x33\x73\x8a\x1a\x65\x9e\xa9\xa9\x69\xf6\xbb\x3d\x94\ +\xf4\xba\x5d\x72\x6a\xbf\x82\x0b\x9a\x7b\x95\x37\x8d\xa5\x09\x32\ +\x74\x45\x28\x1c\xb6\x0e\xd4\x0c\xd3\x6a\x99\x08\xd4\x7c\xf2\x26\ +\x83\x3f\xda\xf9\x5a\x3b\x8b\x0f\x36\xfb\xfd\xee\xb6\xf0\x07\xbf\ +\x16\x18\xed\x76\xca\x4e\x82\x0b\x9a\x9a\x7b\xdb\xed\x56\x96\x2e\ +\x3b\xd0\x97\x6d\x60\xde\xf9\xa1\x37\xa5\x08\xdf\xdd\xf8\x2d\x73\ +\xe6\xd3\x92\xae\xc1\x37\xce\xec\xcf\xfc\xe5\x85\x40\xb7\x74\x13\ +\xdc\xcf\x3f\xb5\x13\xc6\xb0\x32\x51\xae\x9c\xda\xb3\x45\x3f\xf9\ +\xec\xce\x90\xe5\x63\x8d\xbd\x48\xb2\xee\x8b\x16\x3d\xcf\xb6\xa2\ +\xbd\x6a\x3b\x25\x88\x39\x03\x7a\xa6\x99\xbf\x98\x68\xee\xb1\xf8\ +\x7e\xe7\x65\x1f\xbc\x0e\xd7\xf3\x17\xa1\xa1\x17\xba\x14\x61\x19\ +\x2b\x93\x25\xab\x2c\x1f\x2e\x7b\x16\x31\xe1\x05\xcb\x74\x67\xa0\ +\x34\x34\x29\xe1\x45\x26\x0d\x88\x76\xab\xcd\xa1\xa8\xb2\x84\xf5\ +\x5d\x6d\x22\xd5\x4a\x81\xe9\xf9\x73\x77\x1b\xd9\xed\x5a\x2d\x18\ +\xc7\x58\x98\x30\xcb\x5a\xd9\x3f\xca\x4e\x50\xe7\x61\xab\x64\x22\ +\x50\x8a\x18\xcb\x46\xb4\xef\x78\x76\x93\xef\xb8\xa7\x24\x93\xe5\ +\x77\x2c\x0c\x88\x0c\xb9\x1a\x6e\x67\x05\xc3\x8d\x08\x0a\xd2\x02\ +\x52\x6d\xf5\x49\x33\xc9\xc7\xbd\xb0\x58\x85\x3a\x0d\x04\xb8\x25\ +\x83\x33\x11\x8e\x36\xeb\x59\xf2\xca\x0b\xf5\xdb\x58\x2c\x9b\xad\ +\x7b\x4f\x42\x93\xef\x49\x05\xc7\x19\x7d\xbf\x53\xd4\x75\x1b\x2e\ +\x67\xad\x74\xb0\x37\xad\x3e\x71\x46\xf9\xb8\xcb\x2b\xab\x1c\x28\ +\xcd\x31\x74\x9c\xaf\x9b\xfe\x60\xb3\x9f\x85\xb2\x44\x58\xff\x42\ +\x4f\x7d\xc5\x9a\x22\xce\x84\x54\x3b\x9c\xd3\xf2\x82\xea\xb8\x20\ +\xc0\x2d\xcc\xb4\xf2\xc4\xa1\x3c\x47\xa0\xea\x65\x0f\xad\x90\x89\ +\xb0\xd0\x84\xe2\xe5\x66\x88\xd2\xd5\x9a\x22\x7c\xf7\x5c\x16\xd3\ +\xbc\x14\x18\x9b\x45\xe9\x10\x23\x5e\xae\x05\x69\x87\x55\x27\x0f\ +\xb5\x24\x01\xaa\x1a\xbd\x7f\x91\xdf\x33\x11\xca\xab\x4f\x1a\x5e\ +\x08\xc7\x4c\x1d\x2a\x3b\xdc\xe8\xfb\x7e\xb2\xcd\xcd\xda\x3b\xa5\ +\xe1\x3a\xae\xc5\xa1\x22\xc2\xd4\x61\xd3\x92\x57\x0c\xdd\x92\x9e\ +\x38\xcf\x3b\x46\x17\x44\x69\x4e\x26\x82\x19\x85\xcb\xcd\xd4\xf4\ +\xfd\x49\x8d\xbe\x2f\x1d\x61\x31\xf4\x3e\xc5\x6d\xa7\x8a\x7f\x84\ +\x9b\xb1\x71\x7e\x3b\xc0\xaa\xe5\x18\xa9\xc9\x21\xef\xbc\xb6\xf6\ +\x73\x43\xc7\x78\x45\xde\x96\x46\xff\xfd\x1f\x8f\xee\x33\xbc\xe2\ +\x98\xd9\x7a\x75\xcd\x7f\x1b\x7d\xe7\xa7\x93\xff\xcd\xca\xd1\xc1\ +\x19\x97\x22\x3d\x04\x17\x63\xcb\x70\x5f\xb0\xe2\x64\x9a\x7d\x70\ +\x29\xf7\x66\xfb\xc8\x92\x31\x7e\xcb\x44\xa0\xe4\xfe\xe0\xf9\x2f\ +\xd9\xae\x88\xf6\x6d\xb1\x4f\x34\x3a\xe6\x54\xdb\x97\x89\x7c\x5a\ +\x45\x7c\x0e\xee\xc5\x20\x2e\x59\xfc\xd2\x6a\x93\xe9\xe3\x54\x99\ +\x7b\xb3\xbd\x6b\xee\x50\xbf\x65\x22\x44\xec\x89\xb7\x6d\xd3\xc3\ +\xc3\xe5\x45\x1e\xdf\xfb\xce\xb8\xa7\x59\x78\x87\xcf\xe1\x5a\xac\ +\x42\x37\xcc\xdc\x62\x9c\x95\x26\xd4\xb0\x95\x1f\x70\x6f\xb6\x46\ +\xd6\x8a\x6d\x2c\x13\x81\xcc\xe8\xea\xe8\xfb\x6d\x6b\xb6\xb1\x07\ +\x97\x79\x7c\x77\xfa\x23\x64\xed\x14\x2f\x21\x96\xd6\x2b\x4c\x8b\ +\x61\x3a\xc5\x74\xbd\x2c\x40\x16\xd7\x5b\x65\x52\x75\x8b\x7f\x9e\ +\x6b\xa3\x35\xba\x9d\x76\x63\xcd\x35\x9f\x4b\x19\x67\x5b\xa3\x6d\ +\xac\x33\x05\xb5\xf8\x31\xfa\x12\x49\x2b\xaf\xe2\xae\xa5\x75\x0a\ +\xb7\xb2\x01\x81\x51\x62\x27\x2d\xa8\x39\x56\x98\x58\x57\x45\xf5\ +\x52\x6b\x54\x7e\x0b\xd2\x50\x49\x40\x7f\xdc\xd2\x5b\x9c\xbd\xde\ +\xd6\x46\x4b\xa2\xe3\x99\x86\xa0\x33\x6c\x0b\x3f\x77\x56\xfb\x29\ +\xdd\xaf\x82\x4b\xd9\x08\x4a\x25\xd1\x02\x9b\x67\x85\x09\x46\x2d\ +\x61\x78\xc5\x68\xd3\x6b\x28\x13\xe1\xe4\xe9\x4a\xfd\x03\x92\xdd\ +\xcd\x96\x76\xaf\x47\x4e\x16\xd7\x7b\xff\x1d\xc7\x0e\x58\x35\xf3\ +\x20\xd7\xe9\x0e\xba\x1e\xee\x64\x43\x02\x22\xc5\x9b\xb5\x20\x17\ +\xf9\x7b\x92\x25\xe7\x6d\xe6\xd6\x6c\x8d\xfe\x40\x95\x5f\x51\xff\ +\x23\x11\x75\xc9\xb0\xbb\xd1\xfe\xa4\xf8\xcc\x94\x7a\xef\x4f\xf3\ +\xcd\x82\xcf\x9a\x4f\x39\xf1\x70\x25\x7b\x67\x28\xfc\xc3\xdf\x55\ +\xc2\x5a\x52\xf0\xd9\x6e\x8c\xdb\x1a\x6e\x68\x9b\x98\xf3\xd9\x5d\ +\x9c\xa9\x5e\x11\x19\xc2\x8d\xd9\xbe\xb5\xe1\xeb\x7a\x63\x40\xe9\ +\x86\x16\xdb\xd1\x1e\x75\x4d\x91\x6e\x81\x1b\xf1\x70\x86\xab\x08\ +\x5d\xb5\xa0\x97\xf9\x6b\xb2\xbd\xb9\x61\x22\xb7\x66\xfb\xd2\xaa\ +\xf1\x86\x8d\x6b\xaf\xc4\x57\xcf\xf9\xb7\xe8\x6c\xbc\x37\x23\xf9\ +\xa5\x46\x7e\x80\xfd\x7e\xe7\x6c\x2b\x3d\x63\x69\xa0\x2c\xde\x05\ +\x17\xe2\x08\xa7\x5b\x0a\xa6\x36\x1b\xfe\x98\x70\xfd\x17\x8f\xe6\ +\xd6\x6c\x1f\x58\xf4\x9a\x69\x99\x08\x53\xf7\x26\x72\x65\xb4\xa4\ +\x40\x45\x52\x4b\xaa\xca\x4c\xfb\x35\xd1\xd2\xb6\x36\x54\x0e\x15\ +\xee\xc3\xe3\x91\x82\x22\x3c\xec\x8f\x3e\x66\x7f\x9b\x3d\x88\x5b\ +\xb3\xbd\x35\x76\xb0\x29\x99\x08\xf4\xa1\x88\x8e\x15\x78\x33\x5b\ +\x52\x52\xf6\xba\x73\xc6\x7c\x84\xc1\xd7\xa3\x9b\x79\x74\x50\x85\ +\x6b\xb8\xbc\x1b\x6e\xa4\x24\x98\x7d\xa4\x40\xbb\x8f\x8a\xea\x4a\ +\xee\x8c\x96\x7e\xd6\x77\x9c\xda\xdd\xb0\x71\x4d\x38\xf4\xcb\xc7\ +\xa1\xe1\x6b\x3e\xe3\xd2\x68\x49\x54\x64\xa7\x2e\x4f\x2c\x7f\xcf\ +\xef\x47\x07\x2e\x77\x50\x37\xb8\x0d\xa0\x2c\x85\x7b\xb5\xbf\xbc\ +\xc7\xcd\x9c\x80\x69\x47\xf7\x73\x67\xb6\x05\x15\xc7\x0c\x1d\xd3\ +\xbe\x8b\x46\xea\xad\x87\xc6\xa7\x46\x58\x3a\x89\xdf\x8c\x52\x9e\ +\x4b\x73\x36\xe8\xed\x72\x16\x64\xad\xd6\xdb\xba\xfb\xf1\x79\x4a\ +\xb4\x58\xdc\x03\x97\x01\x75\xcf\x70\xbb\x98\x99\x16\x36\x27\x23\ +\x99\x3b\xb3\xdd\x52\xb8\x8b\x5b\x03\xe4\x54\x85\xce\x88\xa0\xdb\ +\xe0\x2e\xc0\x53\x5a\xd8\x11\xb3\xaa\xeb\x53\x87\x59\x9e\xd4\x65\ +\xce\x10\x18\x10\x3f\xca\x0b\x8c\x08\xfe\x2b\x5c\x05\x34\xf2\xd1\ +\xac\xdb\xad\x4e\xb7\x78\x18\x8b\x05\x82\xbc\xbf\x19\x16\xa0\x04\ +\xff\x1d\x6e\x02\x9a\xa4\xfd\xd4\xfb\x7e\xa7\x4d\x9a\xcd\x58\x34\ +\x10\xd4\x62\x6d\xec\x20\x8b\x57\xc2\x45\x40\xb3\xa1\xfe\x47\xda\ +\xc4\x89\xc7\xe2\x81\xa0\x66\x4a\x16\xe7\xa2\x6f\x18\xf0\x8e\x98\ +\x81\xbf\x72\x29\xd2\x44\x2c\x24\x08\x6a\xd2\x68\x43\xa9\xc3\x35\ +\x4c\x03\xb4\xf2\x1c\x57\x1c\xa1\x4d\xa8\xd3\x58\x54\x10\x54\x4f\ +\xd5\x4e\x59\x78\x1e\x2e\x01\x7c\x99\x1a\xf6\xa8\x36\xb1\x4e\x60\ +\x71\x41\xd0\xcf\x2a\x73\xc9\x52\x7f\xb8\x03\xf0\x39\x6d\xe5\x6e\ +\x37\x68\x13\x6c\x07\x16\x19\x04\x89\x69\x68\x37\x0e\x0c\xa5\x43\ +\x8c\x78\xb9\x36\xd1\x66\x63\xb1\x41\xbc\x2a\x40\x91\x62\x68\x1d\ +\xc0\x0d\x80\xf1\xa8\x8e\x0b\x9c\x8a\x38\x06\xe7\xb8\x10\x6f\xe7\ +\xb3\xf4\xfd\x02\x1f\xc2\x80\xe9\x04\xca\x62\x2f\x7f\x17\x22\x87\ +\x20\x93\x2e\x2a\x14\x50\xd1\x26\xac\x7a\xe0\xe7\x73\x5c\x61\x03\ +\x16\x23\x64\x57\x51\xf7\x5b\x67\x44\xc8\x75\x58\xed\xc0\xff\x84\ +\x86\x5e\x58\x9b\x1e\x66\x7e\x6d\x5c\x08\x32\xb6\x06\x2d\x8e\x0d\ +\x80\x25\x77\xb9\xc2\x1d\xda\x04\xdd\x83\x45\x0a\xb1\xff\x11\x4c\ +\xdc\x4d\x95\xf0\xb0\xaa\x81\x65\xe9\x14\xd3\xf5\x32\xcd\x70\xbf\ +\xc2\x82\x85\x18\xde\xd1\x7e\x45\xf3\x18\xab\x19\x30\x41\x80\x5b\ +\x78\x9c\xea\x79\x62\xe1\x42\x2c\x7d\x04\xa3\xcb\x3b\x58\xbd\x80\ +\x3d\xc3\x0d\x0b\x71\x6a\xa6\x1b\xa6\x4d\xe4\x1a\x2c\x64\xc8\xc2\ +\x26\x7b\x86\x76\xb3\x34\x5f\xb1\x6a\x01\xdb\xa6\x2b\x0b\xf7\xd1\ +\x19\x18\x16\x35\x64\xc1\x4c\x83\x5d\xd4\x16\x0a\xab\x14\xd8\xea\ +\x2c\x37\x40\x16\x3f\xc1\x45\x08\xc8\x32\x99\x06\xb2\x18\xda\x59\ +\x16\x7f\x8d\xd5\x09\x6c\x7a\x96\x2b\xdd\xa3\x4d\xf6\x54\x2c\x76\ +\xc8\x8f\xda\x1c\x28\x8b\x77\x61\x35\x02\xfb\x43\xd7\x7d\x65\x61\ +\xa0\x4b\x11\x33\xb1\xf0\x21\x13\x95\x11\x20\x0b\x7d\xb1\x00\x01\ +\x77\x5c\x15\xd6\xf7\x37\x67\x6b\x2c\x94\xc1\x08\x20\x03\x55\x4a\ +\xf3\x0c\xe9\x5c\x80\x7b\xda\x29\x41\xbf\x77\x29\x52\x24\xb2\x16\ +\x20\x5f\x67\x19\x50\x36\x4c\xfb\x29\xdd\xaf\xc2\x2a\x03\xa0\x0e\ +\x54\xe8\x43\x5b\x24\xab\x61\x12\x90\x0f\x8c\x76\x25\xb2\x0c\x00\ +\x68\xde\x47\xb4\xe5\x30\x0c\xa8\xc5\x52\x84\x65\x81\x8a\xd0\x15\ +\xab\x08\x80\x16\xe0\x54\xc4\x10\x6a\x0d\x0d\x13\x81\xb0\x93\x05\ +\xc0\x68\x42\x43\x2f\x0c\x90\xa5\xc1\xda\x62\x4a\x87\xa1\x40\x0d\ +\xb5\xa7\xd1\xfe\x28\x0f\xa2\x79\x82\xc5\x02\x80\xaf\x8e\x17\xb4\ +\x9d\x8b\xb6\xb8\x12\xf0\x21\x8d\x7b\x51\xfc\x13\xb0\x93\x05\xc0\ +\x60\xce\x16\x2c\xff\xca\xe9\x16\x4f\xc2\x78\xb8\x52\x05\xc5\x1d\ +\x8d\x16\x01\x30\x19\x97\x2c\x76\xae\x2d\xe7\x28\x1c\x87\x11\xd9\ +\x5a\x25\x9a\x26\xb8\xc2\x83\xae\xc1\xac\x07\xc0\x9f\x4c\xec\x7d\ +\xa9\x7e\x23\xcd\x2d\x2e\xc1\x11\x83\xad\x8e\x0a\x96\x50\x5c\x1d\ +\x31\x03\x2f\xc1\x24\x07\xc0\x82\x47\x0c\xb5\x05\x6f\x84\x02\x18\ +\x16\x93\xca\xa2\x02\x31\x38\x2a\x00\x80\x11\x6a\x3b\x46\x48\x4f\ +\x9d\xdd\xed\x56\xc3\xc4\xac\xdd\x22\x3c\xc0\x2d\x24\x05\x28\xe2\ +\x10\x54\xe1\x02\x80\x61\xa8\x06\x03\x15\x20\x39\x7b\x25\xf8\x04\ +\xcc\xcd\x12\x3a\x41\xf1\xa0\xb8\x50\x7c\x30\x4b\x01\xb0\x19\x6d\ +\x94\xe0\x76\x4e\x45\x7c\x8e\x76\x52\xd8\xf1\x9a\xae\x53\x4e\xb7\ +\xb8\xd0\x25\x4b\xc3\xda\x86\xf7\x0c\xc4\x6c\x04\x80\xa3\xa3\x86\ +\xda\x5b\x6a\xc2\x57\x28\xf7\x68\x60\x27\x04\x59\xfc\x84\xc6\x19\ +\x55\xb7\x00\x00\x3a\xce\x88\x90\xeb\x34\xd3\x1d\x51\x7b\xce\x2b\ +\x54\xc1\x2c\xbd\x52\x25\x5d\x38\x70\xba\xa5\x17\x68\x3c\x31\xab\ +\x00\x00\x4d\x1e\x37\xb8\xdc\xd2\x83\x01\x6e\xe1\x53\xcd\x3c\x56\ +\xe1\x02\x85\xc7\x9d\x2b\x8d\x4b\x8a\xb6\x73\xfd\x98\xce\x5f\x71\ +\x3c\x00\x00\x68\x1d\x13\x7b\x5f\x1a\x18\x11\x74\xb7\x66\x2e\xa3\ +\x5d\xb2\x38\x57\xdb\xf9\xe6\x72\x5a\xf0\x85\xde\x3b\x4e\xd3\x28\ +\xbd\xba\x16\x72\x60\x01\x00\x46\xd3\x7e\xca\x3d\x6d\xb4\x9f\xcb\ +\x5d\x6a\x53\xcc\xe8\x26\x9b\x5e\x8b\xd7\x2e\x5d\x27\xca\x6a\xdf\ +\x87\xde\x4b\x7a\x8a\xde\x93\xde\x17\x51\x07\x00\x58\x83\xb0\x2e\ +\x17\x07\x28\xc1\x7f\xd7\xcc\x69\x00\xed\xfe\x34\x7d\xe3\x54\x84\ +\x05\x67\xab\x96\x55\x58\xb0\xd6\x00\x3d\xd7\x7c\x4d\x5f\xbb\x14\ +\xe9\x75\x97\x2c\xf5\x0f\x90\xbb\xfd\x8d\xde\x03\xc1\x04\x00\x30\ +\x4b\x07\x59\xbc\x92\x7e\x7e\xeb\x79\xbf\xb2\x38\x94\x0c\x99\xce\ +\x3b\xb5\xff\x19\x7e\xf6\xe7\x79\x4a\xad\x01\x0a\x07\x6a\x25\x16\ +\x6a\x3a\xe6\xb9\xfe\x83\xfe\x9f\x1f\xab\xfd\xdf\xfb\xe9\xbf\xa3\ +\xff\xf7\x57\x6a\xff\xd9\x1c\x4d\x93\x35\xe3\x1f\xaf\x1b\xbf\xf6\ +\xef\xd1\xbf\x4b\x9d\x65\xe9\x39\x10\x0d\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x8c\xe0\xff\x01\x2f\x9b\xa0\xe9\xec\ +\x30\x8e\x92\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x64\xb4\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x02\xe8\x00\x00\x02\xe8\x08\x06\x00\x00\x00\x2a\x5a\x00\x90\ +\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\x00\x00\x00\ +\x09\x70\x48\x59\x73\x00\x00\x0d\xd7\x00\x00\x0d\xd7\x01\x42\x28\ +\x9b\x78\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xdc\x03\x09\x08\x1e\ +\x34\x68\x66\xd9\x7c\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\ +\xff\x00\xff\xa0\xbd\xa7\x93\x00\x00\x64\x34\x49\x44\x41\x54\x78\ +\xda\xec\x9d\x07\xb8\x55\xc5\xb9\xbf\xf7\x69\x1c\x0e\xe7\xd0\xcb\ +\x01\x54\x7a\x95\xa6\x20\xbd\x8b\x14\x45\x40\x10\x51\x14\xa4\x05\ +\x14\x14\x14\x41\x41\x44\xaa\x54\xe9\xe7\x68\xd4\xab\x26\xc6\x24\ +\xb6\xc4\x44\x4d\xa2\x26\x1a\x7b\x89\x35\xb1\x77\x05\xd9\x6b\xa7\ +\xdc\x14\x4d\x8c\xc6\x36\xf7\x1b\xf6\x4a\x82\x57\x84\xb5\xf6\xd9\ +\x6b\xd6\xac\xb5\xdf\xf7\x79\xde\xe7\xb9\xf7\x7f\xff\xf7\x46\xcf\ +\x9e\xf9\xe6\xb7\x67\xcf\x7c\x93\x48\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x40\x2e\x51\x28\xd6\x75\x6d\x22\xb6\x12\x3b\x8a\x3d\xc4\ +\x3e\xe2\x71\xe2\x28\xf1\x78\xf7\xbf\xd6\xf6\x75\xff\xe7\xda\xa3\ +\xdc\xff\x9d\x7a\xee\xff\x2d\x00\x80\xaa\x52\x4d\xac\xef\xd6\x96\ +\xee\xfb\xd5\x9b\x7e\xfb\xd5\xa1\xd1\xe2\x08\xf7\xbf\xee\xed\xfe\ +\xcf\xdb\xbb\xff\x3b\x8d\xf7\xab\x6b\xf9\xfc\x39\x01\x00\xc0\x06\ +\x6a\x8a\xdd\xc4\x93\xc4\x05\xe2\x2a\xb1\x42\xfc\x81\x78\x8f\xf8\ +\x94\xf8\x8e\xf8\x81\xa8\xb2\xec\x3f\xc5\xdf\x8b\x6f\x8a\x0f\x8a\ +\x37\x89\x3b\xc5\xe5\xe2\x2c\x71\x8c\xbb\x90\xd6\xe3\x63\x02\xc8\ +\x29\x1a\x89\xbd\xc4\xb1\xe2\x1c\x71\x85\x5b\x97\x6e\x13\x1f\x16\ +\xdf\x12\xff\x28\x7e\x1c\x40\x5d\xfa\x8b\x5b\x93\x7e\x23\xfe\x42\ +\xfc\xbe\x5b\x97\x56\x8a\xe7\xba\x75\xa9\x93\x58\x83\x8f\x09\x00\ +\x00\xaa\x42\xb3\x44\x7a\xf7\x68\xb6\xb8\x5e\xbc\xd9\x5d\x7c\xfe\ +\x14\xc0\xe2\x16\x94\x1f\x8a\x2f\x88\x77\x8a\xbb\xc4\x0b\xc4\x13\ +\xc4\xe6\x7c\xbc\x00\x91\x43\xef\x54\xb7\x16\xc7\x89\x17\x8a\x57\ +\x88\x3f\x17\x5f\x16\x3f\x8a\x50\x5d\x4a\x89\x8f\xbb\x1b\x1a\x6b\ +\xc5\x99\xe2\xb1\x89\xf4\x2f\x8c\x00\x00\x00\xfb\xa8\x9e\x48\xef\ +\x38\xeb\x45\x42\xef\xf8\x3c\x90\x48\xef\x06\xa9\x98\xfb\x81\xbb\ +\x48\x5e\x93\x48\xff\x0a\xa0\x7f\xc6\xae\xc3\x70\x00\xb0\x82\x86\ +\x89\xf4\xd1\xb7\x45\xe2\xf5\x89\xf4\xaf\x72\xff\xc8\x81\xba\xa4\ +\x77\xf8\x7f\x25\x5e\x2e\x4e\x15\xbb\x8a\x45\x0c\x07\x00\x80\x78\ +\x93\x97\x48\xff\xcc\xaa\x77\xc5\xbf\x23\xbe\x24\x7e\x96\x03\x8b\ +\x9e\x57\xbf\x14\x5f\x17\x6f\x74\x43\xbb\x3e\x0b\x5f\xca\xb0\x01\ +\x08\x94\x5a\xe2\x20\x71\xb1\x78\x8b\xf8\x2e\xb5\xe8\x2b\xfe\x4b\ +\x7c\xde\xdd\x4c\x98\x26\xb6\x65\xc8\x00\x00\x44\x1b\x7d\x09\x4a\ +\x9f\x7d\xdc\x28\x3e\x9a\x23\x3b\x50\x41\xf8\xb6\x78\xb5\x78\xa6\ +\x78\x04\xc3\x0a\xa0\x4a\xb4\x48\xa4\xcf\x88\x7f\xcf\x9d\x5b\xd4\ +\x18\xff\xfe\xdd\xad\xe9\x1b\xdd\x1a\xcf\xaf\x7f\x00\x00\x16\xa3\ +\x3b\x13\xe8\xb3\x8c\x9b\xc5\xa7\x13\xec\x8e\x07\xe1\xe7\xe2\xb3\ +\x89\xf4\x4f\xd0\xfa\x58\x4c\x75\x86\x1d\xc0\x41\x29\x73\x43\xa4\ +\xbe\xb0\xa9\x7f\xb5\xfb\x92\x3a\x92\x75\x3f\x11\x1f\x4b\xa4\xcf\ +\xb4\xeb\x5f\xfe\x0a\x18\x76\x00\x00\xe1\xa2\xcf\x8f\x2f\x49\xa4\ +\xcf\x2d\x06\xd1\x9d\x00\x0f\x1d\xd8\x9f\x71\x77\xb2\x74\x60\xa7\ +\x15\x24\xb0\x51\x90\x9e\x0b\x1b\xdd\xb9\xf1\x05\x75\xc2\xb8\x1f\ +\xb9\x6b\xc2\x79\x09\x2e\xc5\x03\x00\x18\x41\x9f\x23\xd7\xad\xc4\ +\x36\x89\x2f\xb2\x10\x59\xe7\x1e\x71\x87\x38\x20\x41\x7f\x64\xc8\ +\x1d\x0a\xdd\x50\x7e\x55\x22\xdd\x06\x95\x5a\x60\x8f\x5f\xb8\x5f\ +\x94\x56\x8b\x5d\x18\xaa\x00\x00\xd9\xe5\x98\x44\xfa\xe8\x0a\x17\ +\xa8\xa2\xa3\x23\x56\x8a\x43\x13\xfc\xe4\x0c\xf1\x43\xef\x94\xeb\ +\x07\xc6\xae\x15\xff\x97\xf9\x1e\x19\x5f\x75\xc3\x7a\x27\x86\x30\ +\x00\x40\x66\xe8\x17\xee\xf4\xcf\xc4\x5c\xa4\x8a\x47\xfb\x34\x1d\ +\xd6\xf5\xf9\xd0\x3c\x86\x36\x44\x14\xfd\xab\xd0\xb0\x44\xba\xf5\ +\xe1\xdf\x98\xd7\x91\x57\xf7\x90\xd7\x8f\x29\x75\x64\x68\x03\x00\ +\x1c\x9c\x96\x89\xf4\x45\x9f\x37\x59\x3c\x62\xab\x7e\xd1\x70\x4d\ +\x22\xfd\x6c\x38\x40\x14\x38\x4a\xdc\x22\xee\x65\xfe\xc6\x56\x7d\ +\x64\xf2\xe2\x04\x0f\x26\x01\x00\xfc\x07\xfd\x10\xc5\xc9\xe2\x3d\ +\x09\x2e\x54\xe5\x9a\x0f\x89\x93\xc5\x62\xa6\x01\x58\x86\x7e\x03\ +\x40\x3f\x60\xf6\x34\xf3\x34\xa7\xd4\xdd\xbf\x6e\x4f\xa4\x8f\x2f\ +\x71\x8f\x06\x00\x72\x12\xfd\x6c\xf5\x86\x44\xfa\xe9\x67\x16\x86\ +\xdc\xf6\x4f\x89\x74\xeb\xc6\x76\x4c\x0b\x08\x99\x6e\xe2\x15\x09\ +\x8e\xb0\x60\x22\xf1\x9e\x78\xa9\x78\x18\xd3\x02\x00\xe2\x8e\x3e\ +\x7f\x3c\x52\xfc\x65\x82\xdd\x72\x3c\xf0\x6b\xa6\xf7\x8b\x27\xb2\ +\x7b\x05\x06\xd1\x5d\x58\x4e\x13\x9f\x64\x0e\x62\xe2\xc0\xbb\xea\ +\x3f\x15\x07\x32\x55\x00\x20\x6e\xe8\x07\x6d\xbe\x95\x48\x3f\xd4\ +\x41\xc1\x47\x2f\xea\x7b\x08\x0b\xc4\x9a\x4c\x1f\x08\x88\xda\xe2\ +\x62\x71\x37\xf3\x0d\x3d\xaa\x8f\x3c\xe9\x63\x79\x45\x4c\x1f\x00\ +\x88\x32\x8d\xc4\x55\xe2\x1f\x28\xec\x98\xa1\x1f\x24\xd2\xbd\xd5\ +\x5b\x33\x9d\x20\x4b\xe8\xcb\xe8\xdb\xc5\x0f\x99\x5f\x98\xa1\xfa\ +\xcd\x87\x0b\xc5\x3a\x4c\x27\x00\x88\x12\xba\xc7\xec\xff\x24\x78\ +\xdd\x13\xb3\xfb\x33\xf3\xf7\x12\x9c\x53\x87\xcc\xd1\xdd\x58\xf4\ +\x05\xc0\x2f\x99\x4f\x98\x25\xf5\x97\xbc\x9d\x62\x2b\xa6\x17\x00\ +\xd8\x1e\xcc\x6f\x63\x01\xc4\x00\xfd\x5c\xfc\x7e\x82\xde\xc5\xe0\ +\x9d\x1e\xe2\x1d\xd4\x25\x0c\x78\x03\x41\xf7\xc7\x6f\xc1\x74\x03\ +\x00\x9b\x68\xeb\x86\x26\x2e\x7e\xa2\xc9\x27\xbc\x6f\x22\xa8\xc3\ +\x41\xe8\x25\xfe\x8c\xb9\x82\x06\xfd\x97\xf8\x6d\xf1\x70\xa6\x1f\ +\x00\x84\x89\xde\x2d\xb8\xce\xdd\x3d\xa0\x38\x63\x58\x3b\xea\xdf\ +\x11\x9b\x31\x1d\xc1\x45\x7f\x69\xe3\x28\x0b\x86\xa9\x3e\xde\xa9\ +\xef\xce\x94\x33\x1d\x01\xc0\x24\xba\xe8\x5c\xe1\xee\x16\x50\x8c\ +\xd1\x06\x3f\x49\xa4\x2f\xfe\x35\x64\x7a\xe6\x2c\xfa\x4b\xda\xf5\ +\xee\x97\x36\xe6\x04\xda\xe0\x3f\xc4\x8d\x89\x74\xc7\x20\x00\x80\ +\xc0\xa8\x96\x48\xb7\x25\xe3\x11\x0f\xb4\xf9\xd2\xd6\x6a\xb1\x8c\ +\xe9\x9a\x33\xd4\x77\xbf\x9c\x7d\xc2\xf8\x47\x4b\xfd\xbd\x38\x5b\ +\x2c\x60\xba\x02\x40\xb6\x19\x9f\x48\xf7\xa6\xa6\xd8\x62\x14\xdc\ +\x2b\x4e\x49\xa4\x1f\xc7\x82\x78\xa2\x1f\x18\x3a\x47\xfc\x33\xe3\ +\x1d\x23\xe2\xef\xc4\x63\x99\xba\x00\x90\x0d\x74\x6b\xb2\x5f\x53\ +\x58\x31\xa2\x3e\x26\x1e\xc3\x34\x8e\x1d\x43\xc5\x17\x18\xdf\x18\ +\x51\xf5\xcb\xa4\x6d\x99\xc6\x00\x90\x09\xfa\x9c\xb9\xee\x65\x4e\ +\x67\x16\x8c\x43\xc7\x17\x7d\x99\xb9\x31\xd3\x3a\xf2\xe8\x7e\xd3\ +\xb7\x31\xa6\x31\x06\xea\x3b\x5c\x5b\x13\x3c\x76\x04\x00\x1e\xd1\ +\x47\x02\xe6\x88\x7f\xa5\x80\x1e\xda\xea\x62\x3b\xb1\xaf\x38\x46\ +\x9c\x2e\x5e\x20\x5e\x26\x5e\x29\xde\x2a\xde\xe3\xfa\x2b\xf1\x09\ +\xd7\xe7\xc4\x57\x0f\xe2\xf3\xe2\xc3\xe2\xcf\xc5\x5b\xc4\x6b\xc4\ +\x6d\xe2\x12\x71\x96\x38\xce\xfd\xcf\xd4\xff\xd9\xf5\xf8\x1c\xbc\ +\xfa\x17\x71\x56\x82\x63\x2f\x51\x44\x1f\x67\xd1\x2f\x37\x7e\xc4\ +\x38\x3e\xb8\x32\xb8\x55\x03\xb1\xbd\x38\x40\x9c\x20\xce\x16\x97\ +\x89\xdb\xc5\x6b\xdd\x9a\x72\xb7\xf8\xa8\x5b\x6b\x0e\x56\x8b\x9e\ +\xd9\xaf\x6e\xdd\xbb\x5f\x3d\xbb\x49\xbc\x42\x5c\x2b\x2e\x14\xcf\ +\x14\x4f\x10\xfb\x88\xad\xc5\x62\x3e\x0b\xaf\x3a\xe2\x44\xa6\x38\ +\x00\x1c\x0c\xa9\xe9\x89\x87\x28\x98\x5f\xb5\x89\x38\x44\x9c\x21\ +\xae\x70\xc3\xf2\x2f\xc4\x17\x44\xc7\x12\xdf\x16\xef\x17\xaf\x17\ +\x57\xba\x5f\x14\x06\x89\x87\xf1\xf9\x1d\xc8\x07\x12\xfc\xbc\x1c\ +\x25\xba\x8b\xcf\x31\x6e\xff\x6b\xbe\xd8\x4c\x3c\x56\x9c\x29\xae\ +\x11\x6f\x10\xa5\x78\xab\x77\x2d\xaa\x4b\x3a\xfc\xdf\x25\x7e\x5b\ +\xbc\x44\x9c\x26\x0e\x14\x1b\xf2\x19\x1e\x48\xfd\x98\x16\xfd\xd3\ +\x01\xe0\x2b\x14\x89\xcb\x13\xe9\xde\xad\x39\x5b\x20\x6b\x89\x3d\ +\xc5\xa9\xe2\x7a\xf1\x76\x77\x07\xc9\x89\xb8\x6f\xb8\x5f\x28\x76\ +\x8a\x73\xc5\xfe\xee\xbf\x6b\x8e\x2f\x86\x7a\xac\x2f\x13\x8b\x99\ +\xfe\xd6\x52\x2a\x5e\x9e\xc8\xf1\x77\x16\xf4\x2f\x64\x83\xc5\x73\ +\xdd\x5f\xe5\x7e\xe9\x7e\x21\x8f\x7a\x5d\x7a\xd1\xfd\x85\x51\x7f\ +\xb9\x38\x5d\x3c\x5a\x2c\xa5\x2e\x7d\x90\x48\x5f\x7c\xce\x67\xfa\ +\x03\x40\x1f\xf1\xc5\x5c\x2c\x86\xfa\x67\xd8\xc9\xe2\x0e\xf1\xf1\ +\x18\x2c\x78\x7e\x4c\xba\xff\xce\x57\x89\x67\x89\xdd\xc4\x82\xdc\ +\x5c\x10\x5f\x4e\x70\x89\xd4\x46\x24\x93\x26\xde\xc9\xb5\xf1\x58\ +\xe4\x6e\x12\xcc\x17\xaf\x13\x9f\xca\xc1\xba\xa4\x7f\x05\x90\x6f\ +\x65\x6a\xa2\x78\x44\x6e\x5f\x6e\xef\x44\x19\x00\xc8\x4d\x4a\xc4\ +\x9d\x89\x1c\xb9\x04\xaa\xc3\xe7\x51\xee\x59\xcc\x6b\x2d\x3b\x9e\ +\x62\x8b\xaf\x8b\xdf\x13\xe7\x89\xdd\xc5\xc2\xdc\x59\x0c\xf5\x0e\ +\xed\x2a\xf7\x97\x24\x08\xbf\x2e\x6d\xcb\x95\xba\x54\x4d\xec\xed\ +\x9e\xe1\xbe\x25\x26\x3b\xe3\xd9\xf6\x59\xf7\x97\x83\xe9\x62\x47\ +\xf7\x8c\x7d\x8e\xd4\xa5\x7f\x51\x97\x00\x72\x8f\xfe\xe2\xbb\x71\ +\x2f\x70\x87\xbb\x17\x2a\x59\xf8\x32\xf3\x1d\xf7\x6f\x77\x8e\xd8\ +\x35\x37\x16\xc6\x97\xc4\x1e\x94\x87\xd0\x18\x12\xf7\xba\x94\xef\ +\xee\x90\x5f\xe2\x5e\xb4\x7c\x9f\x3a\xe3\xdb\x37\xdd\xf3\xf6\x53\ +\xdc\xfb\x41\x89\xdc\xa8\x4b\x5d\x29\x0f\x00\xf1\x46\x9f\x6b\xd3\ +\x2f\x81\xc6\xf2\xc5\x3d\xbd\xf8\x1d\xe3\x76\x3a\xb9\xd7\xfd\xb9\ +\x94\x05\x2d\x7b\xea\x2e\x0e\x17\xbb\xbf\x44\xc4\x38\xac\xeb\xb3\ +\xe9\x92\x9f\x78\xf1\xcf\x20\xfa\x6f\xbd\x32\x11\xd3\xb3\xe6\x05\ +\x6e\x67\x93\x95\x6e\xf7\x26\x6a\x49\xf6\xd4\x5f\x70\xee\x14\xcf\ +\x17\xbb\xc4\x3b\xa4\xff\x3d\x91\xee\x40\x05\x00\x31\xe4\x30\xf1\ +\x57\x71\x2c\x5e\x47\xb9\x8b\xdf\xb3\x2c\x58\x46\x7f\x76\x5e\xe7\ +\xb6\x71\x8b\xe9\x51\x98\x07\x13\x74\x54\x30\xc1\x11\xe2\xc3\x71\ +\x1b\x3f\xfa\xe8\xca\x70\x71\xab\x7b\x19\x92\x9a\x61\xc6\xc7\xdd\ +\x0d\x9a\x0e\xf1\x0d\xea\xfa\x0d\x80\x7a\x94\x0d\x80\xf8\x30\x41\ +\xfc\xdf\x38\x15\xaa\x0e\x6e\x21\x7e\x9c\x45\x29\x74\x7f\xe7\xf6\ +\x42\x3e\x3a\x7e\x8b\xa1\x9e\x33\xe3\x28\x1f\x81\x31\x5e\xfc\x73\ +\x9c\x7e\xc1\xeb\xeb\x5e\x70\x7c\x95\xba\x10\xba\xbf\x16\xcf\x13\ +\x5b\xc4\xaf\x2e\xbd\x9f\x48\xbf\xa4\x0b\x00\x11\xa6\x9a\x78\x65\ +\x5c\x0a\x53\x43\xf7\x3c\xf4\x83\x2c\x3e\xd6\xfa\x98\xb8\x28\x5e\ +\x67\x43\xbf\x14\x2b\x13\x5c\xd4\xca\x26\xa5\x71\xaa\x4b\x2d\xdd\ +\x33\xe5\x4f\x33\xff\xad\xf5\x1e\xb7\x5f\x7c\xed\x78\xbd\x8e\xbc\ +\x3a\x41\x3b\x46\x80\x48\xa2\x7f\x9e\x7f\x22\x0e\xbb\x52\x83\xdc\ +\xc7\x81\x76\xb3\xd0\x44\xea\x6c\xa8\xbe\xc8\x75\x5c\x7c\xda\x37\ +\xea\xc7\x8d\xca\x29\x2b\x55\xa6\x83\xf8\x6a\xd4\xc7\x83\x6e\x87\ +\x38\xd6\xed\xe3\xcd\x5d\x97\x68\x5d\x7c\xd7\xef\x41\xf4\x8a\x4f\ +\x50\xff\x99\x58\x97\xb2\x02\x10\x1d\x86\x88\x7f\x88\x72\xe1\x29\ +\x77\x7b\x01\x3f\xc1\xa2\x12\x79\xf5\xce\xe2\x05\xf1\xd8\x55\xdf\ +\x2b\xf6\xa3\xbc\x64\x8c\x3e\xd2\xf2\x61\xd4\x77\xcb\x97\xd3\xa6\ +\x35\x16\x3e\xe8\xb6\xdd\xad\x1b\xfd\xba\xf4\x96\xd8\x8d\xf2\x02\ +\x60\x37\xfa\xe7\xae\x8d\x89\xf4\xcf\xf2\x91\x2c\x36\xc7\xb8\x3b\ +\xaf\x7b\xa3\xfc\xd8\x46\x61\xa1\x4a\xd5\xae\xad\x52\x4d\x9b\x2a\ +\xa7\x6d\x5b\xe5\x74\xeb\xa6\x92\xfd\xfa\x29\x67\xc4\x08\xe5\x8c\ +\x1b\x97\x76\xd2\x24\xe5\x4c\x9e\xac\x9c\x29\x53\x94\x33\x6b\xd6\ +\xd7\x4c\x9d\x71\x46\xfa\x7f\xae\x3d\xe9\x24\xe5\x8c\x1c\xa9\x9c\ +\xc1\x83\x95\xd3\xab\x97\x72\xba\x76\x4d\xff\xdf\x6d\xdc\x58\x39\ +\xc5\xc5\x91\xf9\xbb\xec\x75\x3f\xdb\x81\xd1\x5e\x0c\x3f\x4f\xa4\ +\x7b\x13\xf3\xd3\xb2\x77\xf4\xf1\xa0\xab\xa3\xfa\x99\xe7\xb9\x17\ +\x3e\x7f\x4a\xa8\x8d\xa5\xbb\xdd\x5d\xf5\x88\x5f\x2c\xd5\x9d\xd9\ +\xce\xa3\xd4\x00\xd8\x49\x4d\xf1\xd6\xa8\x16\x18\x7d\x8c\xe5\xe6\ +\x08\x05\x70\xa7\xbc\x5c\x39\x47\x1e\xa9\x9c\x41\x83\x94\x33\x7e\ +\xbc\x72\x66\xcf\x56\xce\xd2\xa5\xca\xd9\xb2\x45\x39\x57\x5c\x61\ +\xd4\xe4\xd6\xad\xca\x59\xbe\x5c\x39\xf3\xe7\x2b\x67\xea\x54\xe5\ +\x8c\x1a\xa5\x9c\x1e\x3d\x94\xd3\xac\x99\x72\x4a\x4a\xac\xfc\x1b\ +\xea\xb0\x73\xbc\x7b\x84\x29\xa2\x63\xf6\x87\x62\x0d\xca\xce\x21\ +\xd1\x1d\x27\xee\x8e\xe2\x67\xac\x8f\xb1\x9c\x2c\xfe\x92\x10\x9b\ +\x13\xea\x0d\x84\xeb\xdc\x4d\xa2\x08\x07\xf5\x2b\x12\xe9\xbb\x67\ +\x00\x60\x09\x6d\xc4\x57\xa2\x56\x4c\x74\x7b\x3e\xfd\x9c\xf3\x7d\ +\x36\x17\xee\x3a\x75\x94\xd3\xa9\xd3\xbe\xdd\xef\xd4\xcc\x99\xfb\ +\x82\x70\xaa\xa2\xc2\x78\x08\xaf\x92\x1b\x37\x2a\xe7\xfc\xf3\xd3\ +\xbb\xf6\xfd\xfb\x2b\xa7\x45\x0b\x95\xaa\x56\xcd\x8a\xbf\xef\xc3\ +\x6e\x08\x8a\xe8\x39\xf5\x67\x13\xb4\x62\x3c\x18\xfa\xbc\xf9\x9b\ +\x51\xfb\x5c\xab\xb9\xaf\x56\x72\xe9\x33\x77\xd5\xbd\xd5\x47\x45\ +\xf7\xbd\x87\xc7\xc5\xc6\x94\x1f\x80\xf0\xd1\xaf\x82\xfe\x29\x4a\ +\x05\x44\xef\x9a\x8e\x17\x1f\xb5\xad\x30\x97\x95\x29\xa7\x73\x67\ +\xe5\x8c\x19\xa3\x9c\x05\x0b\x94\xb3\x79\x73\xb4\x82\xb8\x1f\x2b\ +\x2b\x95\xb3\x62\xc5\xbe\x1d\xf7\x7d\xc7\x6f\xf4\x71\x99\xbc\xbc\ +\x50\xbb\xbf\x4c\x8a\x66\x4f\x75\xf9\xc7\x4f\xf4\xa2\x0c\x7d\x8d\ +\x91\xe2\x5f\xa3\xf4\x59\x16\xbb\x9d\x3e\x78\x4c\x08\xff\xed\x2f\ +\xdd\xe3\x4d\x11\x0c\xe9\xef\x89\x9d\x29\x43\x00\xe1\x71\x5a\x22\ +\xfd\xf2\x61\x64\xce\x72\x9e\xe0\xf6\xa7\xb5\xa1\xf8\xa6\x9a\x34\ +\x51\xa9\x81\x03\x55\x52\x42\x6a\x6a\xe5\xca\xf8\x86\x71\xaf\xea\ +\x2f\x24\x67\x9f\xad\x9c\x61\xc3\x94\x73\xc4\x11\xa1\x04\x76\xdd\ +\xd7\xfe\xa4\xe8\x1d\x7d\xd1\x73\xf0\x74\xca\xd1\x7f\xd0\x67\x61\ +\x3f\x8f\xd2\x51\x96\xa9\xe2\xf3\x04\x52\xfc\x06\x7f\xe6\x1e\xc3\ +\x8c\x58\x48\xff\x9b\x38\x9c\x72\x04\x60\x1e\xfd\x1c\x79\x64\x2e\ +\x83\xea\x76\x7b\xf7\x86\x5d\x68\xf5\xb1\x8e\xae\x5d\x55\x4a\x5f\ +\xbc\x5c\xbb\x96\x40\xee\x25\xb0\x7f\xeb\x5b\xca\x91\x2f\x31\x4e\ +\xc3\x86\x46\x3f\x2b\x7d\xec\x69\x58\xf4\xfa\xa5\x5f\x9a\xe3\x35\ +\x49\x5f\x9c\xad\x88\xd2\x86\xc1\x38\xf7\xd7\x1b\x42\x28\x7a\xf1\ +\x76\xb1\x77\xb4\xea\xd2\xa7\xe2\x6c\xe2\x12\x80\x19\x74\x47\x84\ +\xeb\xa3\x52\x20\x8e\x74\x7b\x05\x87\x56\x54\x1b\x34\x48\xef\x08\ +\xcf\x9f\xaf\x52\x3b\x77\x12\xba\xab\xa2\xbe\x88\x3a\x66\x8c\x4a\ +\xea\xcb\xa7\x86\x76\xd7\x7f\x12\xbd\x17\x4a\xf5\xa3\x46\x05\x39\ +\x58\x97\x8a\xc5\x9b\xa3\xf2\x39\x0d\xe0\xf2\x27\x56\xc1\xeb\xa2\ +\xf7\x42\xa9\xee\xee\x96\x47\x7c\x02\x08\x8e\x3a\xe2\xfd\x51\x28\ +\x08\xfa\xd5\xcf\xcb\xdd\x07\x6b\x42\xb9\xd8\x79\xec\xb1\xca\xb9\ +\xf0\x42\x42\x75\x50\x5e\x76\x99\x72\x4e\x39\x45\x39\x2d\x5b\x06\ +\x1e\xd6\xf5\x43\x30\x15\xd1\xea\xa3\x7e\xbb\x58\x92\x63\x75\xe9\ +\x81\x28\x7c\x36\xba\x8f\xf9\x77\x09\x98\x98\xa5\xf6\x8c\x97\x8a\ +\xb5\xa2\x53\x97\x6e\xcd\xb1\xba\x04\x60\x8c\xfa\x89\x74\xd7\x08\ +\xeb\x3b\x20\x9c\x23\xbe\x6e\xba\xf5\xa1\xbe\xe0\xa9\x5b\x1e\x2e\ +\x5c\x98\xbe\x00\x49\x88\x36\x66\x6a\xf5\x6a\xe5\x8c\x1e\xad\x9c\ +\x46\x8d\x02\xfd\x8c\xdf\x16\x17\x89\x25\xd1\x58\x0c\x1f\x4d\xa4\ +\x5b\x0c\xc6\x1d\xdd\xc5\xe6\x05\xdb\x3f\x0f\x1d\xa2\x56\xf1\x1a\ +\x31\x06\xe0\x8b\xe2\x99\xd1\xe9\x44\xa5\xeb\x52\x6d\xe2\x14\x40\ +\xf6\x68\x22\xbe\x68\xfb\xe4\x1f\x2d\x3e\x69\xb2\x38\xe6\xe7\xa7\ +\x5b\x20\xce\x99\xa3\x9c\x5d\xbb\x08\xcb\x36\x84\xf5\x0b\x2f\xdc\ +\x77\xf1\x36\xc8\xfe\xeb\x4f\x47\xa7\xb3\xc2\x2b\xee\xdc\x8d\x2b\ +\xed\xc5\xf7\x6d\xff\x1c\xc6\xf3\xf2\x27\x1a\xf0\x7e\xf7\xe8\x54\ +\x04\xea\xd2\x33\x62\x03\x62\x15\x40\xd5\x69\x2b\xee\xb6\xfd\x67\ +\xe3\x1f\x9b\xec\xbe\xa2\x5f\xe8\x3c\xe5\x14\x95\xd2\xfd\xbd\x09\ +\xc5\x76\xaa\xcf\xfb\xeb\x57\x51\xbb\x74\x49\x7f\x91\x0a\x60\x1c\ +\xdc\x26\xb6\x8a\x46\xbb\xb3\xd6\x31\xac\x4b\x3d\xc5\xbf\xd8\xfc\ +\xb7\x6f\xcf\xeb\x9f\x18\x82\xfa\xb5\xe4\xc6\xf6\xd7\xa5\xd7\xc4\ +\x23\x88\x57\x00\x55\xdb\xa1\xda\x63\xeb\x24\xd7\x5d\x10\xce\x10\ +\x5f\x33\x51\xf8\xf4\x39\xe7\xce\x9d\x55\xea\x9c\x73\x38\xc2\x12\ +\xb5\x5d\xf5\x4b\x2f\x55\xa9\xc1\x83\xd3\x5d\x74\xb2\x3c\x2e\xde\ +\x10\x67\xd9\xdf\x96\xf1\x1d\xb1\x65\x8c\xea\xd2\x51\xe2\x1f\x6d\ +\xfd\x7b\xeb\xb6\x89\xe7\x89\xef\x10\x16\x31\x24\x7f\x27\x8e\xb5\ +\x3f\xa4\xbf\x41\x48\x07\xc8\x8c\x6e\xe2\x1f\x6c\x9d\xdc\x2d\xdc\ +\x1d\x4c\x23\xad\x11\x87\x0e\x55\xce\x9a\x35\x84\xdd\x88\x9b\xdc\ +\xba\x35\xfd\xcb\x47\xbd\x7a\x59\x1f\x27\xfa\x17\x9c\xe6\x76\x2f\ +\x86\xfa\x8b\x76\x3b\x76\xce\x83\xef\x1a\x45\x77\x16\xb4\xc5\xef\ +\x88\xe5\xfc\xc2\x07\x10\x2b\xfa\xd8\xba\x08\xea\x9d\xca\xb3\xdc\ +\x0b\x7b\x81\x16\xb7\x1a\x35\x54\x6a\xe4\x48\x95\xda\xb0\x81\x70\ +\x1b\xb7\x1d\xf5\x9d\x3b\x55\xea\x8c\x33\x54\x32\xcb\x97\x4a\xdf\ +\x12\x67\xd8\xfd\x3c\xb7\x7e\x75\x34\xca\xaf\xfb\x0d\x10\x3f\xb0\ +\x75\xd7\xfc\x02\x2e\x81\xa2\x85\xea\x5f\x98\x4f\xb5\x3b\xa4\x27\ +\xc5\x0e\xc4\x2e\x80\x43\xd3\x5b\xfc\xd0\xc6\x89\xdc\xd8\x44\x4f\ +\xf3\x9a\x35\x95\x33\x61\x82\x72\xb6\x6d\x23\xcc\xc6\xdd\x8a\x0a\ +\x95\x9c\x3e\x5d\x39\x4d\x9a\x64\x75\x0c\xfd\xc8\xee\xdd\xf4\x3f\ +\x89\x5d\x22\x58\x97\x06\x89\x1f\xb1\x6b\x8e\x98\x99\xd7\x88\x75\ +\xec\xad\x4b\xef\xc7\xec\x18\x1e\x40\x20\xc7\x5a\xac\xdc\x39\xd7\ +\x1d\x5a\x5e\x09\xb2\x80\xd5\xae\xad\x1c\xfd\xc2\x27\x8f\x09\xe5\ +\xa6\xfa\x21\x29\xdd\x53\x3d\x4b\xe3\xe9\x4d\xbb\x77\xad\x7e\x9f\ +\x48\xdf\x2f\x61\xd3\xa0\x8a\x77\x60\xce\x66\xd7\x1c\x23\xe4\xb3\ +\x62\x7f\xbb\xef\xca\x1c\x4e\x0c\x03\xf8\x3a\x47\x8b\x7f\xb5\x6d\ +\xd2\xd6\x16\xaf\x0e\xb2\x68\xe9\x76\x7c\x27\x9e\x98\x3e\x9f\x4c\ +\x50\xcd\x6d\x2b\x2b\x55\x4a\x77\x7e\x69\xd8\x30\xab\x67\x40\xeb\ +\xda\xb9\x18\xea\xfb\x25\x47\x46\xe4\x58\xcb\x3f\x6c\xfc\x35\xef\ +\x47\x04\x3e\x8c\xa0\xfa\xe1\xb5\xcd\xf6\xbe\xe7\xa0\x3b\xc6\x35\ +\x27\x8e\x01\xfc\x97\x16\x09\x0b\xfb\x09\xeb\x27\xd6\x1f\x0b\xaa\ +\x50\x15\x15\x29\x67\xe4\x48\xe5\x6c\xd9\x42\x30\xc5\xaf\xaa\x7b\ +\xda\x4f\x9a\x94\x3e\xee\x94\x85\xb1\xa6\x7b\xf3\x77\xb7\xf7\x82\ +\x56\x33\x8b\xeb\x52\x67\xf7\x48\x8e\x55\x7f\xb7\xc1\xe2\x6f\x09\ +\x7a\x18\x71\xef\x16\x5b\xdb\x59\x97\xf4\xc3\x63\xf5\x89\x65\x00\ +\x89\x44\x53\xf1\x2d\xdb\x26\xe9\xb7\x82\xfa\xe9\x58\xb7\x4b\xec\ +\xd1\x43\x39\x6b\xd7\x12\x44\xf1\xd0\x5d\x5f\x8e\x3f\x3e\xfd\x65\ +\x2e\x0b\xcf\x72\xcf\xb0\xb7\x1f\xb1\x8d\x8f\x86\xb4\x4a\xa4\x2f\ +\xb5\x5a\x75\x41\x7d\xb1\xbb\x03\x49\xc0\xc3\x38\xa8\x9b\x2d\x4c\ +\xb0\xb3\x2e\x3d\x9d\xe0\xc5\x51\xc8\x71\xf4\xc2\xfc\xb2\x4d\x13\ +\xb3\x86\x78\x65\x50\x05\xa9\x4d\x1b\xe5\x2c\x5d\x4a\xf8\x44\x7f\ +\x5d\x5f\xd6\xaf\x57\x4e\xef\xde\xe9\x2f\x77\x55\x1c\x83\x3b\xc5\ +\x62\xfb\x16\xc3\xdf\x88\xa5\x16\xd5\xa5\x86\x89\x74\x8f\x64\x6b\ +\xfe\x46\xb5\xc4\xef\x11\xe8\x30\xa6\x5e\xe6\x76\x22\xb2\xac\x2e\ +\x3d\x6a\x59\x5d\x02\x30\x46\x89\xf8\x84\x4d\x13\xb2\xa5\xfb\x5c\ +\x71\x10\x17\x40\x93\x53\xa7\xf2\xc0\x10\x56\xcd\x79\xf3\xb2\x72\ +\x3e\xfd\x5e\xf1\x70\xfb\x16\xc3\x5f\x88\x45\x16\xd4\xa5\x32\xf1\ +\x29\x9b\xfe\x36\x1d\xc4\xc7\x09\x71\x18\x73\xef\xb0\xb3\x67\xfa\ +\x9d\x62\x01\x71\x0d\x72\x89\x7c\xf1\x76\x9b\x26\xe2\x88\x20\x5e\ +\x04\xd5\x3b\x9e\x83\x06\x29\x87\x0b\xa0\x98\xc5\x1e\xea\xce\xe8\ +\xd1\x2a\x59\x58\x58\xa5\xb1\xf9\x92\x78\xac\x7d\x8b\xe1\x0d\x62\ +\x5e\x88\x75\x49\x7f\x41\xb8\xc7\xa6\xbf\xc9\x78\xb7\x23\x0f\x01\ +\x0e\x73\x41\x7d\xb7\xa2\x8f\x7d\x75\xa9\x92\xc8\x06\xb9\xc4\x76\ +\x9b\x26\xe0\x1c\x71\x6f\xb6\x8b\x4d\xf3\xe6\xca\x59\xb6\x8c\x50\ +\x89\xc1\xb8\x66\x8d\x4a\x76\xe8\x50\xa5\x31\xfa\xbe\x38\xcb\xbe\ +\xc5\x70\x63\x88\x75\xe9\x06\x5b\xfe\x0e\xba\x85\xe2\x45\x9c\x37\ +\xc7\x1c\xf4\x3d\xf1\x64\xfb\xea\xd2\x22\x62\x1b\xe4\x02\x17\xda\ +\x32\xe9\xf4\x99\xb7\xed\xd9\x2e\x30\xc5\xc5\xe9\xe7\xdc\x2b\x2a\ +\x08\x91\x18\xbc\xba\x2d\x63\x59\x59\x95\xc6\xec\x76\xfb\xce\x7f\ +\x9e\x13\x42\x5d\x5a\x65\xcb\xbf\x7f\x4d\xf1\xfb\x04\x35\xcc\x71\ +\xd7\xb8\x17\xa3\x2d\x99\x97\x5f\x8a\x53\x89\x6f\x10\x67\xc6\x89\ +\x9f\xdb\x30\xe1\xca\xc4\x1b\xb3\x5c\x50\xf4\x43\x33\xa9\x4b\x2f\ +\x25\x34\xa2\x59\x2f\xbb\xac\xca\xbb\xe9\x3f\x10\x4b\xed\x59\x0c\ +\xff\x25\x0e\x31\x58\x97\x26\x88\x5f\xd8\xf0\xef\x5e\x5f\xbc\x8b\ +\x70\x86\xb8\xcf\x5d\x76\x6d\x1e\xfc\x53\xec\x47\x8c\x83\x38\xd2\ +\x5f\xfc\xd8\x86\x89\x76\x84\xf8\x60\x36\x0b\x89\x3e\x0f\x7c\xca\ +\x29\x5c\x02\xc5\x70\x9d\x36\x2d\xfd\x0b\x4e\x86\xe3\xf8\x01\xb1\ +\xa9\x3d\x8b\xe1\x07\x89\x74\x1f\xf2\xa0\xe9\x6b\x4b\x5d\xd2\x3d\ +\xa1\x7f\x43\x28\x43\xfc\x8a\x3f\x13\x1b\xda\x53\x97\xfe\x26\x76\ +\x21\xce\x41\x9c\xd0\xcf\xe7\xa6\x6c\x98\x60\x9d\xc4\xe7\xb2\x59\ +\x40\x1a\x35\x52\xce\x45\x17\x11\x0e\xd1\x9a\xb3\xe9\x4e\xab\x56\ +\x19\x8f\xe7\x27\xdc\x6e\x46\x96\x2c\x86\xaf\x8a\x75\x02\xac\x4b\ +\xfa\x0d\x86\xbd\x36\xfc\xbb\x76\x14\x9f\x27\x8c\x21\x1e\xd0\x47\ +\xc4\x16\xf6\xd4\xa5\xd7\x03\xae\x4b\x00\xc6\x28\x4e\x58\xd2\x4e\ +\xf1\x98\x6c\x77\x6a\xe9\xde\x5d\x39\x97\x5f\x4e\x28\xc4\xc0\x5e\ +\x14\x4d\x6d\xd8\xa0\x9c\xe5\xcb\x55\x72\xe1\x42\xe5\xcc\x99\xa3\ +\x9c\x33\xce\x50\xa9\xf1\xe3\x95\x33\x6e\xdc\xbe\x6e\x2e\xa9\x11\ +\x23\x94\x33\x7c\xb8\x72\x06\x0c\xf8\xaf\x03\x07\xaa\x54\xf5\xea\ +\x19\x8f\xeb\x17\xed\x7a\x79\xf4\xde\x44\x30\x6d\xce\x74\x9b\xd7\ +\x67\x6c\xf8\x77\xec\x1b\x44\x07\x29\xc4\x98\xa9\xbf\xc0\xb6\xb3\ +\xa7\x2e\xdd\x95\x48\x77\xa3\x03\x88\x34\xdf\xb6\x61\x42\xf5\xcf\ +\x66\xbb\x32\xfd\xb2\xe3\x94\x29\x04\x48\xac\x9a\x5b\xb6\xec\x7b\ +\xb8\x2a\x35\x7b\xb6\x72\x74\xe8\x96\x60\xed\x1c\x79\xa4\x4a\x36\ +\x6a\x54\xa5\x80\x9d\x0d\xdf\xb0\xab\xdd\xd9\xfa\x00\xea\x92\x15\ +\x1d\x5b\x46\x89\xef\x12\xbe\x10\x3d\xb7\x87\xed\x6c\x4f\x5d\x5a\ +\x41\xbc\x83\x28\x73\xb6\x0d\x13\xe9\x04\xf7\xa9\xf3\xac\x14\x89\ +\x06\x0d\x94\x73\xf1\xc5\x84\x4b\xf4\xd7\xbb\x5c\xbf\x20\xab\x1f\ +\xab\x1a\x36\x4c\x39\xed\xdb\x57\xb9\xf3\x8a\xa9\x76\x67\x23\xed\ +\x59\x0c\x27\x65\xb1\x2e\x9d\x6f\xc3\xbf\xd3\xa9\x6e\xab\x4b\x82\ +\x17\xa2\x77\xdf\x12\x07\xd8\xd3\xd9\xe5\x64\x62\x1e\x44\x11\x99\ +\x43\x89\x4f\xc3\x9e\x44\xa7\x64\x73\x11\xec\xd4\x89\x23\x2d\x78\ +\xf0\x30\xae\xdb\x6b\xea\x30\x7e\xea\xa9\xca\xe9\xd5\x4b\x39\x4d\ +\x9a\xa8\x64\x7e\x7e\x64\x17\xc3\xdd\xee\x17\x5c\x0b\x16\xc3\xbf\ +\x8b\x9d\xb2\x50\x97\x06\x89\x9f\x85\xfd\xef\x33\x83\x1e\xe7\x88\ +\x19\xfb\xb6\x38\xc4\x8e\xba\xf4\xa1\xd8\x91\xb8\x07\x51\xa2\xbe\ +\xf8\x5e\xd8\x93\x47\xbf\xc2\xb7\x27\x5b\x2f\x82\x8e\x1e\x4d\x97\ +\x16\xfc\xba\xfa\x0b\xdb\xd9\x67\x2b\x67\xe4\x48\xe5\xb4\x6d\x5b\ +\xa5\x2e\x2a\x36\x87\xf4\xe3\xed\x58\x0c\x5f\x14\x4b\xab\x50\x97\ +\x1a\x89\xef\x87\xfd\xef\x31\x25\x88\x87\xd1\x10\x73\xcc\x77\xec\ +\x79\x0d\xf9\x79\xb1\x06\xb1\x0f\xa2\x80\xbe\xd0\x75\x6f\xd8\x93\ +\x66\x4c\xb6\x76\xce\x6b\xd4\x50\xce\xbc\x79\x04\x51\x4c\xab\xbf\ +\xa4\xe9\x1d\xf2\xb1\x63\x95\xd3\xba\xb5\x72\x22\xbc\x3b\xee\x37\ +\xa4\x8f\xb2\x63\x31\xfc\x61\x86\x75\x49\x5f\xe8\xba\x2f\xec\x7f\ +\xfe\xa9\xec\x9c\x23\x66\xb5\x2e\x1d\x67\x47\x5d\xfa\x1e\xd1\x0f\ +\xa2\xc0\xea\xb0\x27\xcb\xf0\x6c\x9d\x39\xaf\x5f\x9f\x87\x87\x50\ +\x39\xdb\xb6\x29\xe7\x5b\xdf\x52\x4e\xdf\xbe\x2a\x55\xbb\x76\x4e\ +\x2f\x86\x96\xec\x58\xcd\xcc\xa0\x2e\x2d\x0f\xfb\x9f\x7b\x12\x3b\ +\xe7\x88\x81\xec\xa4\xf7\xb7\xa3\x2e\xcd\x26\xfe\x81\xcd\xf4\x0b\ +\xfb\x7c\xe7\x60\xf7\x72\x5b\x95\x27\x7e\x9b\x36\xca\xd9\xbc\x99\ +\x70\x9a\xa3\x26\xb7\x6e\x4d\x3f\xfc\xa3\x5f\xe8\xcc\x91\x5d\x72\ +\xaf\x8b\xa1\x05\x17\xb4\xfe\x21\xb6\xf7\x51\x97\x06\x86\x5d\x97\ +\xc6\x72\x21\x14\x31\xd0\xae\x53\xdd\xed\xa8\x4b\xed\x88\x81\x60\ +\x23\xb5\xc4\xb7\xc3\x9c\x20\x7d\xdc\xcb\x23\x55\x9e\xf0\x3d\x7b\ +\xa6\x3b\x6f\x10\x54\x73\xcb\xed\xdb\xd3\xa1\xbc\x4b\x97\x74\x2b\ +\x4d\x16\xbe\x6f\xec\xa2\xd0\x2b\xfc\xc5\xf0\xb9\x44\xfa\x8d\x05\ +\x2f\xf7\x61\xf6\x84\xf9\xcf\x3a\x22\x9b\x5d\xa4\x10\xf1\x80\xbe\ +\x2a\x1e\x19\x7e\x5d\x7a\x5a\x2c\x22\x0e\x82\x6d\x7c\x37\xcc\x89\ +\xd1\xc3\xfd\x16\x5d\xe5\x89\x3e\x74\x28\x97\x41\x73\xad\xf3\xca\ +\x8a\x15\xfb\xda\x1f\x26\x23\xd0\xfa\xd0\xa6\xc5\xb0\x43\xf8\x8b\ +\xe1\xb6\x43\xd4\xa4\x3c\xf1\xce\x30\xff\x19\x7b\xb9\xbf\x3a\x30\ +\x66\x10\x83\xf7\x05\xb1\x75\xf8\x75\x69\x1d\x71\x10\x6c\xe2\x94\ +\x30\x27\x44\x5b\x37\x30\x54\xb9\x53\xcb\x84\x09\x04\xd6\x5c\x09\ +\xe5\x3b\x76\x28\xe7\xcc\x33\x55\x4a\x1f\x65\x62\x61\xcb\xc8\xe7\ +\xc4\xc3\xc2\xef\x43\x3c\xea\x20\x75\x69\x76\x98\x75\xa9\x7d\x36\ +\xea\x12\x22\xfa\xf2\x19\xb1\x3c\xdc\xba\xf4\xb9\x7b\xac\x0e\x20\ +\x74\x5a\x88\x7f\x0b\x6b\x32\x34\x49\xa4\x9f\x00\xae\x6a\x38\x4f\ +\x9d\x76\x1a\xc1\x35\x17\x82\xb9\xbe\xf4\x3b\x68\x90\x72\x4a\x4a\ +\x58\xcc\xb2\xe0\xe3\x62\xa3\x70\x17\xc3\x3f\x8a\xe5\x07\xa8\x4b\ +\x6d\xc4\x8f\xc2\xfa\xe7\x6a\x29\xbe\xc8\xf8\x40\x0c\xc5\x07\xc5\ +\x5a\xe1\xd6\xa5\xbd\xee\xf1\x3a\x80\xd0\xd0\xad\xcb\xee\x0f\x6b\ +\x12\x54\x17\xef\xaa\xea\x64\x2e\x28\x50\xce\xcc\x99\x84\xd7\x38\ +\xab\x1f\x0f\x9a\x35\x2b\xdd\x16\x91\xc5\x2b\xeb\xea\x39\x58\x6c\ +\x57\xeb\x45\x7d\xb4\x25\xb4\x96\x8a\x65\xe2\xfd\x8c\x0b\xc4\x50\ +\xbd\x41\x2c\x08\xb7\x2e\xdd\x48\x44\x84\x30\x59\x10\xd6\xe0\x97\ +\x6f\x06\xea\xea\xaa\x4e\x62\x7d\x11\x70\xee\x5c\x02\x6c\x9c\x2f\ +\x7d\x9e\x72\x8a\x4a\x36\x68\xc0\x82\x15\xb0\x57\x8a\x79\xe1\x2e\ +\x86\xa7\xec\x57\x97\xe6\x86\xf5\xcf\xa1\x03\xc1\xf7\x18\x0f\x88\ +\x56\xb8\x2e\xfc\xf3\xe8\x27\x12\x13\x21\x0c\x9a\x25\xd2\xcf\x6f\ +\x87\x32\xf0\x2f\xa9\xe2\xc4\x4d\x16\x16\x2a\xe7\xac\xb3\x08\xb1\ +\x71\x0d\xe6\x27\x9d\xa4\x9c\x5a\xb5\x58\xa4\x0c\xba\x30\xdc\x85\ +\xf0\x4f\x62\x63\xb1\x65\x98\x75\xe9\x32\xc6\x01\xa2\x55\x7e\x2b\ +\xdc\xba\xa4\x3b\x48\xd5\x22\x2e\x82\x69\x7e\x1e\xd6\xa0\x9f\x9c\ +\x8d\x9d\xf3\xf9\xf3\x09\xb2\x71\xbc\xf8\x39\x6e\x9c\x72\x4a\x4b\ +\x59\x98\x42\x50\xbf\x90\x39\x26\xdc\xc5\xf0\x16\xf1\xd7\x61\xfd\ +\xe7\xcf\x60\x0c\x20\x5a\xa7\x7e\x7f\x60\x78\xb8\x75\xe9\x0a\xe2\ +\x22\x98\xe4\xf4\xb0\x06\x7b\xf7\xaa\x3e\x44\xa4\xcf\x9c\xb3\x73\ +\x1e\xaf\x60\xae\x7b\xd6\xeb\x60\x5e\xb3\x26\x0b\x92\x05\x0f\x19\ +\x75\x0e\xff\x67\x65\xe3\x0e\xe4\x21\x22\x44\x6b\x7d\x4d\x6c\x11\ +\x5e\x7d\xf8\x22\x41\x57\x17\x30\x84\xbe\x99\xfc\x87\x30\x06\x7a\ +\x03\xb7\x85\x52\x95\x5a\x29\x4e\x99\x42\xa8\x8d\x93\x73\xe6\x28\ +\xa7\x71\x63\x16\x21\x8b\x7c\x52\xac\x93\x43\xe1\x5c\xb7\x9a\x7c\ +\x89\xcf\x1d\xd1\x6a\xf5\xc5\xed\x1a\xe1\xd5\x09\xf9\x8e\x90\xa8\ +\x4e\x7c\x84\xa0\xf9\x61\x18\x03\xbc\xa8\xaa\x1d\x5b\x74\x38\x9f\ +\x3a\x95\x40\x1b\x17\x17\x2d\x52\xc9\x66\xcd\x58\x78\x2c\xf5\x36\ +\xb1\x30\x07\xc2\x79\x09\x1d\x5b\x10\x23\xe3\x77\xc2\xbd\xcc\x7e\ +\x39\xf1\x11\x82\x64\x78\x58\x0b\xe1\xa5\x55\x9d\x9c\xfa\x08\x04\ +\xc1\x36\xfa\xc7\x59\x36\x6e\x54\x4e\xff\xfe\xca\xc9\xcf\x67\xc1\ +\xb1\xdc\xc5\x39\x10\xd0\x37\xf3\x39\x23\x72\x69\xd4\x9b\x9f\x8a\ +\xdd\x88\x91\x10\x04\xd5\xc4\xd7\xc3\x18\xd8\x63\xdc\x0b\x68\x19\ +\x4f\xca\xa1\x43\x09\xb7\x71\x38\x67\xae\x3b\xb3\x54\xaf\xce\x22\ +\x13\x11\xf7\x8a\x43\x62\x1c\xce\x27\xf1\x19\x23\x46\xce\xdd\x62\ +\xef\xf0\xea\xc6\x23\x89\xf4\x3b\x0d\x00\x59\x65\x51\x18\x03\xba\ +\x8d\xf8\x66\x55\x26\x64\xaf\x5e\xca\xa9\xac\x24\xe4\x46\x39\x9c\ +\x9f\x7b\xae\x72\xea\xd7\x67\x71\x89\xa0\xbf\x4b\x84\xfe\xd2\x68\ +\x60\x75\xe9\x2d\x3e\x5f\xc4\x48\xfa\x5b\xb1\x3c\xbc\xfa\x71\x1a\ +\x71\x12\xb2\x89\xac\xb1\x89\xbf\x85\x71\xee\xfc\xde\xaa\x4c\xc4\ +\x76\xed\x94\xa3\x77\x5e\x09\xb9\xd1\x0c\xe6\x9b\x36\x29\xa7\x7b\ +\x77\x16\x94\x88\x7b\x4b\x22\xfd\xb0\x58\x5c\xc2\x79\x31\xe7\xce\ +\x11\x23\xef\x0f\xc3\x3b\x8f\xbe\x5b\x2c\x21\x56\x42\xb6\xb8\x3e\ +\x8c\x85\x70\x65\x55\x26\x60\x79\xb9\x72\x36\x6f\x26\xe8\x46\x51\ +\xfd\x8b\xc7\xe4\xc9\xca\xa9\x51\x83\x85\x24\x26\x2e\x8a\x51\x40\ +\xdf\xca\xe7\x89\x18\x0b\xe7\x86\x57\x47\xd6\x12\x2b\x21\x1b\xe8\ +\x4b\x0d\x9f\x9b\x1e\xc0\x7d\xdd\x33\xac\x19\x4d\x3c\xfd\x50\xcd\ +\x8a\x15\x04\xdd\x28\xba\x7e\xbd\x72\xba\x76\x65\xf1\x88\x99\x7b\ +\xc4\x1e\x31\x08\xe7\x23\xf8\x2c\x11\x63\xe3\xbb\x62\x87\x70\x6a\ +\xc9\x47\xe2\xe1\xc4\x4b\xa8\x2a\x0f\x98\x1e\xbc\xb5\xc4\xa7\x33\ +\x9d\x74\xba\xbb\xc7\x82\x05\x04\xdd\x28\x3a\x77\xae\x4a\x96\x95\ +\xb1\x70\xc4\xd4\x47\xdd\xb6\x84\x51\x0d\xe7\xf5\xdc\xb3\xab\x7c\ +\x96\x88\xf1\xea\x8f\x5e\x2d\x9c\x9a\xf2\x03\xe2\x25\x54\x85\x93\ +\xc3\x58\x08\xaf\xac\xca\x84\x9b\x38\x91\xa0\x1b\x35\xb7\x6d\x53\ +\x4e\xef\xde\x2c\x16\x39\xe0\xba\x08\x07\xf4\xab\xf8\xfc\x10\x63\ +\xe9\xaa\x70\x6a\xca\x97\x62\x3f\x62\x26\x64\x42\x91\xf8\x96\xe9\ +\x41\x7b\x52\x55\x26\x5a\x9f\x3e\x84\xdd\xa8\x5d\x04\x5d\xbc\x98\ +\x0e\x2d\x39\xa4\x6e\x97\x3a\x20\x82\xe1\x7c\x1c\x9f\x1d\x62\xac\ +\xeb\x52\xff\x70\x6a\xcb\x13\x44\x4d\xc8\x84\x39\x61\xfc\x84\xfc\ +\x62\xa6\x93\xac\x49\x93\xf4\x4e\x2c\xa1\x37\x3a\x4e\x9a\xa4\x9c\ +\xa2\x22\x16\x88\x1c\x53\x1f\x5f\xab\x19\xa1\x70\xae\xdb\xb1\xbd\ +\xcc\xe7\x86\x18\x6b\x1f\x13\xab\x87\x53\x63\xc6\x10\x37\xc1\x0f\ +\xc5\xe2\x1e\xd3\x03\x75\x57\xa6\x93\x4b\x9f\x5b\x5e\xbb\x96\xc0\ +\x1b\x15\xb7\x6c\x51\x4e\x97\x2e\x2c\x0a\x1c\x75\x89\x84\xd7\xf0\ +\x79\x21\xe6\x84\xcb\xc2\xa9\x31\xcf\x25\x78\xbc\x08\x7c\x30\xdf\ +\xf4\x20\x1d\x52\x95\x89\x35\x67\x0e\xa1\x37\x2a\xae\x5c\xa9\x9c\ +\xa6\x4d\x59\x0c\x72\x5c\xdd\xa1\xa9\x7b\x04\xc2\xf9\x70\x3e\x2b\ +\xc4\x9c\xea\x36\xd5\x29\x9c\x5a\x73\x32\xb1\x13\xbc\xa0\x1b\xe8\ +\x3b\x26\x07\x67\x0d\xf1\x37\x99\x4e\xaa\xc1\x83\x09\xbd\x51\x71\ +\xe6\x4c\xe5\x14\x17\xb3\x10\xe0\x7f\xba\x27\x14\x59\x1c\xce\x4b\ +\xab\xd2\x4d\x0a\x11\x23\xe9\xdd\x62\x81\xf9\x7a\xf3\xa2\x98\x4f\ +\xfc\x84\x43\xb1\xc8\xf4\x42\xb8\x2a\xd3\xc9\xa4\x1f\x23\xda\xbe\ +\x9d\xe0\x1b\x85\x87\x87\x46\x8d\x52\x4e\x5e\x1e\x0b\x00\x7e\xc5\ +\x73\x2c\x0e\xe8\xab\xf9\x7c\x10\x73\xd2\xb3\xc2\xa9\x39\x93\x89\ +\x9f\x70\x30\xca\xc4\x3f\x9a\x1c\x94\x47\x8a\xef\x67\x32\x89\x8a\ +\x8a\x54\xf2\x92\x4b\x08\xbf\xb6\xbb\x75\xab\x72\x3a\x76\xa4\xe8\ +\xe3\x01\x7d\x47\x6c\x6e\x61\x38\xef\x9a\x69\x5d\x42\xc4\xc8\xfb\ +\x96\xd8\xc4\x7c\xdd\x79\x4d\x2c\x20\x86\xc2\x37\xb1\xd4\xf4\x42\ +\xf8\xa3\x4c\x27\xd1\xf8\xf1\x84\x5f\xdb\xbd\xec\x32\xce\x9b\xe3\ +\x21\xbd\xde\xb2\x70\x9e\x27\xde\xc5\xe7\x82\x98\xd3\x56\x86\x53\ +\x7f\xa6\x11\x43\xe1\x9b\x3a\xb7\x18\x3d\x7b\x3e\x3a\xc3\x89\x93\ +\x6a\xd3\x46\x39\x15\x15\x04\x60\x9b\xfb\x9b\xaf\x58\xa1\x9c\x06\ +\x0d\x28\xf4\xe8\xc9\x81\x16\x05\xf4\x09\x7c\x1e\x88\xf4\x46\x17\ +\x7b\x84\xb3\x8b\xce\x59\x74\xf8\x1a\xb3\x4c\x0e\x44\xf9\x36\xa0\ +\x9e\xcc\x24\x9c\x57\xaf\xae\x92\xb4\x54\xb4\xdb\xb9\x73\xb9\x0c\ +\x8a\xbe\x7c\x40\x2c\xb4\x20\x9c\xeb\x0b\xeb\xcf\xf1\x79\x20\xa2\ +\xf8\x73\x31\xdf\x7c\x1d\x1a\x4b\x1c\x85\xfd\xd1\x3d\x38\x5f\x36\ +\x39\x08\xe7\x67\x3a\x69\x26\x4c\x20\x00\xdb\xec\xac\x59\x2a\x59\ +\x58\x48\x71\x47\xdf\xce\xb0\x20\xa0\x2f\xe1\x73\x40\xc4\xfd\x9c\ +\x64\xbe\x0e\x3d\x4c\x24\x85\xfd\x39\xd1\xe4\x00\xd4\x2f\xf3\xbd\ +\x91\xc9\x64\x69\xdd\x3a\xdd\x11\x84\x20\x6c\xef\xcb\xa0\x74\x6a\ +\xc1\x0c\xd5\xaf\x75\xd6\x0a\x31\x9c\xeb\x4b\x61\xef\xf2\x39\x20\ +\xe2\x7e\x3e\xef\xb6\x5c\x35\x5c\x8f\x7a\x11\x4b\xe1\xdf\x3c\x68\ +\x72\xf0\x6d\xc9\xb0\x6b\x8b\xa3\xcf\x35\x13\x84\xed\xf4\xe4\x93\ +\x09\xe7\x58\x65\x2f\x0a\x31\xa0\x6f\xe1\xef\x8f\x88\x07\xf0\x42\ +\xf3\xf5\xe8\x56\x62\x29\x68\x7a\x9a\x1c\x78\x2d\x12\xe9\xd7\xba\ +\x7c\x4f\x92\xd1\xa3\x09\xc1\xb6\xaa\x3f\x1b\x8a\x38\x66\xc1\x37\ +\xc5\x86\x21\x84\xf3\xd6\x99\xd6\x25\x44\x8c\xbd\xfa\x17\xff\x7a\ +\x66\x6b\xd2\xe7\x62\x4b\xe2\x29\xdc\x6a\x72\x21\xac\xc8\x64\x82\ +\x94\x97\xab\xd4\xce\x9d\x04\x61\x1b\x1d\x3b\x96\x02\x8e\x59\x75\ +\x5d\x08\x01\xfd\x1a\xfe\xee\x88\x78\x10\x97\x9b\xaf\x4b\x3b\x89\ +\xa7\xb9\x4d\x33\xf7\x9b\x9a\x91\x01\xd7\x36\x91\xe1\xe3\x1f\xf3\ +\xe6\x11\x84\x09\xe7\x98\x23\xee\x16\x9b\x25\xcc\x3e\x4a\x94\xe4\ +\xef\x8e\x88\x89\x83\x3f\x5e\x64\xf8\xd7\xbd\xbf\x8b\xb5\x89\xa9\ +\xb9\xcb\x5a\x93\xdf\x08\xaf\xcd\xa4\xad\x62\xd7\xae\x04\x61\x1b\ +\xfb\x9c\x8f\x1b\x47\xd1\xc6\xc0\xdc\x6e\xb0\x2e\x7d\x8f\xbf\x37\ +\x22\xda\xf9\xeb\xde\xb9\xc4\xd4\xdc\xa4\x48\x4c\x99\x1a\x68\x47\ +\x65\xb0\x4b\xa5\xdb\xf5\xa5\x56\xaf\x26\x10\xdb\xa6\x6e\x75\x49\ +\xb1\xc6\x00\xd5\xbf\xb4\xb5\x34\x50\x97\xba\xf1\xb7\x46\x44\x4b\ +\x7f\xdd\x13\x5f\x20\xaa\xe6\x26\x46\x5b\x2b\x5e\x97\xc9\x84\x38\ +\xf6\x58\xc2\xb0\x6d\x9e\x7e\x3a\xdd\x5a\xd0\x88\x1b\x0d\xd4\xa5\ +\xab\xf9\x3b\x23\xa2\x0f\xd7\x9b\xdf\x45\x3f\x86\xb8\x9a\x7b\xdc\ +\x61\xb2\x43\xc2\x5e\xbf\x13\xa1\x46\x0d\xe5\x6c\xde\x4c\x20\xb6\ +\xc9\x39\x73\x54\x32\x3f\x9f\x22\x8d\x46\x7c\xcf\xed\x4d\x1e\x54\ +\x5d\x6a\x97\x49\x5d\x42\xc4\x9c\xf6\x1d\xb1\xbe\xd9\x80\x7e\x35\ +\x71\x35\xb7\x38\x4c\xfc\xcc\xd4\x00\xdb\x94\xc9\x44\x98\x38\x91\ +\x40\x6c\x91\xc9\x85\x0b\xd3\xbd\xe8\x29\xd0\x68\xd0\xcb\x02\xac\ +\x4b\x57\xf0\xf7\x45\xc4\x0c\x5c\x64\x36\xa0\x7f\x28\x96\x11\x5b\ +\x73\x87\x55\xa6\x06\x57\xb9\xbb\x13\xe6\x6b\x02\x34\x68\xa0\x9c\ +\x5d\xbb\x08\xc6\xb6\xb8\x6c\x99\x72\xaa\x57\xa7\x30\x63\x28\xbb\ +\xe8\xe5\x01\xd4\xa5\x56\xec\x9e\x23\x62\x86\xbe\x92\x30\xfe\xba\ +\xe8\xd9\xc4\xd6\xdc\xa0\x40\x7c\xdf\xd4\xc0\xba\x28\x93\x09\x30\ +\x65\x0a\xa1\xd8\x16\xd7\xad\x53\xa9\x3a\x75\x28\xca\x18\x9a\x17\ +\x27\x78\x35\x14\x11\xed\x72\x86\xd9\x80\xfe\x2c\xd1\x35\x37\x18\ +\x61\x6a\x50\x55\x17\x5f\xf4\x3b\xf0\xcb\xcb\x95\x53\x51\x41\x30\ +\xb6\xc1\x6d\xdb\x94\x73\xc4\x11\x14\x63\x0c\x7d\xb7\xaa\x2c\x8b\ +\x75\xa9\x91\xf8\x2e\x7f\x57\x44\xac\x82\x8f\x8a\xf9\x66\x43\x7a\ +\x67\xe2\x6b\xfc\xb9\xd1\xd4\x80\x9a\x91\xc9\xc0\x9f\x36\x8d\x60\ +\x6c\x43\x9f\x73\xf9\x92\x94\xea\xd4\x89\x42\x8c\x56\x78\x4e\x16\ +\xeb\xd2\xa5\xfc\x3d\x11\x31\x0b\x9e\x68\x36\xa0\x6f\x24\xbe\xc6\ +\x9b\x62\xf1\xaf\x26\x06\x53\x9e\xf8\x88\xcf\xc1\x9e\x6c\xd4\x68\ +\x5f\x30\x24\x20\x5b\x10\xd0\x47\x8e\xa4\x00\xa3\x35\x3e\x27\x16\ +\x65\xa1\x2e\xd5\x12\x5f\xe3\xef\x89\x88\x59\xf0\x27\x66\x03\xfa\ +\x9b\x44\xd8\x78\x73\x92\xa9\xc1\x34\x24\x83\xc1\x9e\x9c\x3e\x9d\ +\x70\x6c\x49\x3b\x45\x7a\x9d\xa3\x6d\x4e\xcd\x42\x5d\x3a\x9f\xbf\ +\x23\x22\x66\xd1\x4e\x66\x43\x7a\x4f\x62\x6c\x7c\xf9\xbe\xa9\x81\ +\x74\x55\x26\x67\xcf\x2b\x2b\x09\xc7\x61\xbb\x74\x29\xed\x14\xd1\ +\x4a\x1f\xa9\xe2\x99\xcf\x62\xf1\xb7\xfc\x1d\x11\x31\x8b\xae\x36\ +\x1b\xd0\x37\x11\x63\xe3\x49\xa9\xf8\x91\x89\x41\xd4\x20\x91\x7e\ +\x12\xd7\xcf\x20\x4f\x9d\x76\x1a\xe1\x38\x6c\xf5\xc3\x50\xf5\xeb\ +\x53\x74\xd1\x5a\xc7\x9a\xbe\x13\x83\x88\x78\x10\xf5\x91\xb9\x12\ +\x73\x01\x7d\x8f\x98\x47\x9c\x8d\x1f\x13\x4d\x7d\xcb\x9b\xe7\xf7\ +\x68\x4b\x59\x99\x4a\xed\xd8\x41\x40\x0e\xd3\x8a\x0a\x95\xec\xd0\ +\x81\x82\x8b\x56\x7b\x9f\x7b\xbf\xc5\x6f\x4d\xd2\xe7\xd7\x9f\xe1\ +\xef\x87\x88\x01\x38\xc1\xec\x2e\x7a\x3f\xe2\x6c\xfc\xb8\xcd\xd4\ +\xe5\xd0\x47\xfd\x0e\x70\x7d\x21\x91\x90\x1c\xae\xe3\xc6\x51\x68\ +\x31\x12\x0e\xcd\xa0\x2e\x4d\xe4\xef\x86\x88\x01\xf9\x23\xb3\x01\ +\x7d\x27\x71\x36\x5e\x94\x88\xff\x30\x31\x78\x7a\xf9\x1d\xdc\x45\ +\x45\x2a\xb5\x69\x13\x01\x39\xcc\x8e\x2d\x8b\x17\xab\x64\x7e\x3e\ +\x85\x16\x23\xe1\x2d\x19\x6c\x1a\xdc\xc7\xdf\x0d\x11\x03\x32\x29\ +\x36\xe7\x98\x0b\x64\xc8\xf1\xa6\xbe\xdd\x6d\xf5\x3b\xb8\x07\x0c\ +\x20\x24\x87\xe9\xd6\xad\xca\x69\xd0\x80\x22\x8b\x91\xb2\x9b\x8f\ +\x9a\x74\x2c\x7f\x2f\x44\x0c\xd8\x0b\xcd\xee\xa2\x1f\x45\xac\x8d\ +\x0f\x15\x26\x06\x4d\xb5\x4c\x7a\x0c\x2f\x5b\x46\x48\x0e\x53\xfd\ +\x05\x89\xe2\x8a\x11\xf3\x7a\x1f\x75\xe9\x67\xfc\xbd\x10\x31\x60\ +\x9f\xc8\xf0\x7e\x4c\x86\x5e\x42\xac\x8d\x0f\xef\x98\x18\x34\xc3\ +\xfd\x0e\xea\x96\x2d\x09\xc8\x61\x3a\x73\x26\x85\x15\x23\xfb\x93\ +\x72\x7b\x0f\x35\xa9\x37\x7f\x2b\x44\xb4\xf0\x97\xbd\x2a\xfa\x08\ +\xb1\x36\x1e\xb4\x36\xf5\xb3\xcb\x0e\xbf\x03\x7a\xca\x14\x42\x72\ +\x48\x26\xd7\xae\x55\x4e\x49\x09\x45\x15\x23\xeb\x16\x0f\x35\xe9\ +\x3b\xfc\x9d\x10\xd1\x90\x97\x98\x0b\xe8\x9f\x8a\xb5\x88\xb7\xd1\ +\x67\x81\x89\x01\x53\x5d\x7c\xc3\xcf\x60\x2e\x2e\x56\x49\x7d\xfe\ +\x99\xb0\x1c\x8e\x5d\xbb\x52\x50\x31\xd2\xea\xb7\x16\x0e\x3f\x48\ +\x4d\xea\xcc\xdf\x08\x11\x0d\xfa\x8c\xd9\x63\x2e\x13\x89\xb7\xd1\ +\xe7\x17\x26\x06\xcb\xf1\x3e\x07\x72\x6a\xe0\x40\x42\x72\x58\x4e\ +\x9f\x4e\x31\xc5\x58\xb8\xe6\x20\x35\xe9\x0a\xfe\x3e\x88\x68\xd8\ +\x1e\xe6\x02\xfa\xb5\xc4\xdb\x68\x53\x6c\xaa\xbd\x62\xa5\xdf\x81\ +\xac\x9f\x94\x27\x2c\x9b\x77\xe3\x46\xe5\x94\x96\x52\x48\x31\x16\ +\xea\x5f\xed\xea\x1c\xa0\x1e\x1d\x9e\xf0\xff\x9a\x31\x22\x62\x55\ +\x5d\x61\x2e\xa0\xef\x26\xe2\x46\x9b\xe1\x26\x06\x8a\x7e\xa5\xef\ +\x75\x3f\x83\xb8\x69\x53\x82\x72\x58\xf6\xe9\x43\x11\xc5\x58\xb9\ +\xf0\x00\x35\x69\x2d\x7f\x17\x44\x0c\xc1\x27\xcd\xb6\x5b\xec\x44\ +\xcc\x8d\x2e\x1b\x4c\x0c\x92\x7e\x7e\x07\xf1\x49\x27\x11\x94\xc3\ +\xb8\x18\x7a\xd6\x59\x14\x50\x8c\x9d\x2f\x8a\x25\xfb\xd5\xa3\x7a\ +\xe2\xdb\xfc\x5d\x10\x31\x24\x5b\x9b\x0b\xe8\xf3\x89\xb9\xd1\xe5\ +\x31\x13\x83\xe4\x52\xbf\xe7\xcf\x57\xaf\x26\x30\x9b\x76\xfb\x76\ +\xe5\xd4\xaf\x4f\xf1\xc4\x58\x3a\x67\xbf\x7a\xb4\x94\xbf\x07\x22\ +\x86\xe8\x59\xe6\x02\xfa\xad\xc4\xdc\x68\x52\x5d\xfc\xc4\xc4\x20\ +\xf9\xb5\x9f\xc1\xdb\xa2\x05\x61\x39\x0c\x47\x8e\xa4\x70\x62\x6c\ +\x7d\xd6\x3d\x6a\x57\xcb\xef\x71\x3b\x44\xc4\x2c\x7b\xb3\xb9\x80\ +\x9e\x24\xea\x46\x93\xbe\x26\x06\x48\xe3\x44\xfa\xd1\x10\xcf\x83\ +\x77\xc2\x04\xc2\xb2\x69\xd7\xac\x51\x4e\x51\x11\x85\x13\x63\xed\ +\x44\x77\xe7\x8a\xbf\x05\x22\x86\xe9\x3b\x89\x74\xeb\x69\x43\x21\ +\xbd\x39\x71\x37\x7a\x2c\x32\x31\x38\x4e\xf3\x33\x70\xf3\xf2\x94\ +\xb3\x6e\x1d\x81\xd9\xf4\xd9\xf3\xee\xdd\x29\x9a\x18\x7b\x1f\x70\ +\x77\xd2\xf9\x5b\x20\x62\xd8\x1e\x6b\x2e\xa0\x4f\x26\xee\x46\x8f\ +\xdb\x4d\x0c\x8e\x6b\xfc\x0c\xda\x56\xad\x08\xcc\xa6\x5d\xb8\x90\ +\x62\x89\x88\x88\x68\xd0\xb5\xe6\x02\x7a\x25\x71\x37\x7a\xfc\x3e\ +\xe8\x81\x51\x20\xbe\x46\xf7\x16\x7b\xad\xac\x54\xa9\x96\x2d\x29\ +\x96\x88\x88\x88\x06\x7d\xc4\x5c\x40\x7f\x9e\xb8\x1b\x2d\xda\x99\ +\x18\x18\x9d\xfc\x0e\xda\x4b\x2e\x21\x34\x9b\x3c\xda\xc2\x8b\xa1\ +\x88\x88\x88\xa1\x58\x6e\x26\xa0\x7f\x21\xd6\x21\xf6\x46\x87\xa9\ +\x26\x02\xfa\x34\x3f\x83\xb5\x5e\x3d\x42\xb3\x41\x53\x3b\x77\xaa\ +\x94\xfe\x9b\x53\x24\x11\x11\x11\x8d\x7b\xbc\xb9\x5d\xf4\xe1\xc4\ +\xde\xe8\xb0\xcd\xc4\xa0\xb8\xd2\xcf\x60\x1d\x30\x80\xe0\x6c\x72\ +\xf7\x7c\xd2\x24\x0a\x24\x22\x22\x62\x48\xae\x32\x17\xd0\x2f\x22\ +\xf6\x46\x87\x5f\x99\x18\x14\x4f\xfb\x19\xac\x73\xe6\x10\x9c\x0d\ +\x3e\x4a\x94\xaa\x5d\x9b\x02\x89\x88\x88\x18\x92\x3f\x37\x17\xd0\ +\x6f\x24\xf6\x72\x41\xf4\x3f\x96\xfb\x19\xa8\x85\x85\x2a\xb9\x75\ +\x2b\xc1\xd9\x94\xe3\xc7\x53\x1c\x11\x11\x11\x43\x74\x77\xc2\x58\ +\x3f\x74\x2e\x8a\x46\x84\xc6\x26\xbe\xb1\x8d\xf5\x33\x50\xdb\xb6\ +\x25\x34\x1b\xdc\x3d\x4f\xd6\xac\x49\x71\x44\x44\x44\x0c\xd9\xbe\ +\x66\x02\xfa\xa7\x62\x35\xe2\xaf\xfd\x1c\x67\x22\xa0\xaf\xf2\x33\ +\x48\x4f\x38\x81\xe0\x6c\xca\xb1\x63\x29\x8a\x88\x88\x88\x16\x38\ +\xcf\xdc\x31\x97\x4e\xc4\x5f\xfb\x31\xf2\x82\xe8\x6d\x7e\x06\xe9\ +\x82\x05\x04\x67\x43\xbb\xe7\x4e\x69\x29\x45\x11\x11\x11\xd1\x02\ +\xaf\x34\x17\xd0\x4f\x27\xfe\xda\xcf\x77\x4d\x0c\x86\x57\x3c\x0e\ +\xce\x64\x7e\x7e\x3a\x38\x12\xa0\x83\xf7\xb4\xd3\x28\x88\x88\x88\ +\x88\x96\xf8\x80\xb9\x80\xbe\x81\xf8\x6b\x3f\xcf\x58\x75\x41\xf4\ +\x88\x23\x08\xce\x86\x5e\x0d\x75\x1a\x35\xa2\x20\x22\x22\x22\x5a\ +\x74\x51\xb4\xc8\x4c\x40\xbf\x8b\xf8\x6b\x3f\x7f\x0f\x7a\x20\x0c\ +\xf6\x33\x40\x87\x0c\x21\x3c\x9b\xe8\x7b\x7e\xd6\x59\x14\x43\x44\ +\x44\x44\xcb\xec\x68\x26\xa0\xbf\x45\xfc\xb5\x9b\x86\x26\x7e\x4a\ +\x99\xeb\x67\x70\xce\x9c\x49\x80\x36\xa1\xee\x94\x43\x21\x44\x44\ +\x44\xb4\xca\x93\xcd\x75\x72\x29\x20\x06\xdb\x4b\x6f\x13\x01\xbd\ +\xc2\xc7\xc0\x4c\xae\x5d\x4b\x78\x0e\xda\x8b\x2f\xa6\x08\x22\x22\ +\x22\x5a\xe8\x72\x73\xe7\xd0\x9b\x13\x83\xed\xe5\x54\x13\x83\xe0\ +\x57\x5e\x07\xa6\xee\x28\x42\x80\x0e\xde\xbe\x7d\x29\x82\x88\x88\ +\x88\x16\xfa\x7d\x73\x01\x7d\x10\x31\xd8\x5e\x96\x04\x3d\x00\xf2\ +\xc4\xb7\xbd\x0e\xcc\xf6\xed\x09\xcf\x41\x7b\xf9\xe5\xca\x29\x2a\ +\xa2\x08\x22\x22\x22\x5a\xe8\x93\xe6\x02\xfa\x34\x62\xb0\xbd\x5c\ +\x1d\xf4\x00\x68\xe4\x67\x60\x0e\x1d\x4a\x80\x0e\xfa\x72\xe8\xa4\ +\x49\x14\x40\x44\x44\x44\x4b\xdd\x63\xae\x93\xcb\x2a\x62\xb0\xbd\ +\xdc\x1b\xf4\x00\xe8\xe1\x67\x60\x4e\x99\x42\x88\x0e\xda\xc3\x0e\ +\xa3\x00\x22\x22\x22\x5a\x6c\x33\x33\x01\xfd\x06\x62\xb0\xbd\xbc\ +\x11\xf4\x00\x38\xc9\xc7\x80\x4c\x2d\x59\x42\x80\x0e\xd2\x8b\x2e\ +\xa2\xf0\x21\x22\x22\x5a\x6e\x7f\x33\x01\xfd\x21\x62\xb0\x9d\xe4\ +\x89\x1f\x07\x3d\x00\xce\xf5\x3a\x20\xf3\xf3\x55\x6a\xc7\x0e\x42\ +\x74\x90\xf6\xef\x4f\xe1\x43\x44\x44\xb4\xdc\x53\xcd\x04\xf4\xf7\ +\x88\xc2\x76\x52\xd7\xc4\x25\x84\x4d\x5e\x07\xa4\x7e\xd5\x92\x10\ +\x1d\x9c\xdb\xb7\x2b\xa7\xa4\x84\xc2\x87\x88\x88\x68\xb9\x8b\xcd\ +\x04\xf4\x4f\x88\xc2\x76\xd2\xc6\x44\x40\xbf\xc9\xeb\x80\xec\xd4\ +\x89\x10\x1d\xa4\xfa\x01\x28\x8a\x1e\x22\x22\xa2\xf5\xee\x32\xd7\ +\xc9\xa5\x8c\x38\x6c\x1f\x7d\x4c\x7c\xf8\x0f\x7b\x3d\x7f\x3e\x78\ +\x30\x21\x3a\x48\x8f\x3a\x8a\xa2\x87\x88\x88\x18\x01\x7f\x64\x2e\ +\xa0\xb7\x20\x0e\xdb\xc7\x89\x26\x3e\xfc\x97\xbd\x0e\xc8\xf1\xe3\ +\x09\xd1\x41\xb9\x75\x2b\xbd\xcf\x11\x11\x11\x23\xe2\x03\xe6\x02\ +\xfa\x31\xc4\x61\xfb\x98\x16\xf4\x07\x5f\x20\xee\xf5\xba\x83\x3e\ +\x7b\x36\x41\x3a\x28\xa7\x4f\xa7\xe0\x21\x22\x22\x46\xc4\xdf\x9a\ +\x0b\xe8\x23\x89\xc3\xf6\xb1\x28\xe8\x0f\xbe\x9e\x9f\x01\xb9\x74\ +\x29\x41\x3a\x20\x53\x5d\xbb\x52\xf0\x10\x11\x11\x23\xe2\xee\x44\ +\xfa\x25\x76\x03\x01\xfd\x0c\xe2\xb0\x7d\xac\x0f\xfa\x83\x6f\xed\ +\x67\x40\x6e\xde\x4c\x98\x0e\xc2\x2d\x5b\x54\xb2\xb0\x90\x82\x87\ +\x88\x88\x18\x21\x6b\x99\x09\xe8\x0b\x88\xc3\xf6\x71\x75\xd0\x1f\ +\x7c\x4f\xaf\xc7\x5b\xaa\x57\x27\x48\x07\xb5\x7b\x4e\xf7\x16\x44\ +\x44\xc4\xc8\xd9\xc2\x4c\x40\x5f\x4d\x1c\xb6\x8f\xdb\x82\xfe\xe0\ +\x47\x78\x1c\x84\x49\x7a\xa0\x07\x67\xcf\x9e\x14\x3a\x44\x44\xc4\ +\x88\x79\xb4\x99\x80\x5e\x41\x1c\xb6\x8f\x5f\x04\xfd\xc1\x9f\xea\ +\x75\x20\xb6\x6c\x49\x90\x0e\xc2\xca\x4a\xe5\x94\x95\x51\xe8\x10\ +\x11\x11\x23\xe6\x30\x33\x01\xfd\x7a\xe2\xb0\x7d\xdc\x17\xf4\x07\ +\x3f\xcb\xeb\x40\xec\xd2\x85\x30\x1d\x84\x17\x5e\x48\x91\x43\x44\ +\x44\x8c\xa0\x63\xcd\x04\xf4\x1f\x10\x87\xed\xe3\xe1\xa0\x3f\xf8\ +\x79\x5e\x07\x62\x9f\x3e\x84\xe9\x20\x1c\x3d\x9a\x22\x87\x88\x88\ +\x18\x41\x27\x9a\x09\xe8\xb7\x11\x87\xed\xe3\x37\x41\x7f\xf0\xe7\ +\x79\x1d\x88\xc3\x86\x11\xa6\x83\xb8\x20\xaa\x8f\x0e\x51\xe4\x10\ +\x11\x11\x23\xe7\xe9\x66\x02\xfa\x9d\xc4\x61\xfb\x78\x3e\xe8\x0f\ +\x7e\xb1\xd7\x81\x38\x76\x2c\x81\x3a\xdb\xea\xb6\x95\xf9\xf9\x14\ +\x39\x44\x44\xc4\x08\x3a\xc3\x4c\x40\xbf\x97\x38\x6c\x1f\x2f\x07\ +\xfd\xc1\x2f\xf3\x3a\x10\x4f\x3f\x9d\x40\x9d\x6d\xe7\xcc\xa1\xc0\ +\x21\x22\x22\x46\xd4\x39\x66\x02\xfa\x03\xc4\x61\xfb\x78\x2b\xe8\ +\x0f\x7e\x95\xc7\x41\xb8\xaf\x57\x37\xa1\x3a\xab\x26\x8f\x3b\x8e\ +\x02\x87\x88\x88\x18\x51\xcf\x35\x13\xd0\x1f\x27\x0e\xdb\xc7\x9e\ +\xa0\x3f\xf8\x75\x5e\x07\xa2\xde\xed\x25\x54\x73\xfe\x1c\x11\x11\ +\x11\xf7\x79\x81\x99\x80\xfe\x0c\x71\xd8\x3e\x52\x41\x7f\xf0\x97\ +\x7b\x1d\x88\x73\xe7\x12\xaa\xb3\xe9\xf6\xed\xca\x29\x28\xa0\xc0\ +\x21\x22\x22\x46\xd4\x25\x66\x02\xfa\x0b\xc4\x61\xfb\x70\x82\xfe\ +\xe0\x37\x7b\x3d\xe2\x32\x7f\x3e\xa1\x3a\x9b\xc7\x5b\x16\x2e\xa4\ +\xb8\x21\x22\x22\x46\xd8\x0b\xcd\x04\xf4\xdf\x12\x87\x73\xf0\x88\ +\xcb\x7a\xaf\x03\x51\x07\x4a\x82\x75\xf6\x8e\xb7\x8c\x1b\x47\x71\ +\x43\x44\x44\xe4\x88\x0b\x47\x5c\x22\xc8\x3b\x41\x7f\xf0\x6b\xbd\ +\x0e\xc4\xc5\x8b\x09\xd6\xd9\x0c\xe8\x5d\xbb\x52\xdc\x10\x11\x11\ +\x23\xec\x02\x33\x01\xfd\x09\xe2\xb0\x7d\xbc\x11\xf4\x07\xbf\xd2\ +\xeb\x40\x5c\xba\x94\x60\x9d\x4d\x6b\xd7\xa6\xb8\x21\x22\x22\x46\ +\xd8\x79\x66\x02\xfa\x23\xc4\x61\xfb\x78\x25\xe8\x0f\x7e\xb9\xd7\ +\x81\xb8\x6c\x19\xa1\x3a\x9b\x0f\x14\x51\xd8\x10\x11\x11\xe9\x83\ +\x9e\xa0\x0f\x7a\x14\x79\x31\xe8\x0f\x7e\x29\x3b\xe8\xe6\x3d\xef\ +\x3c\x0a\x1b\x22\x22\x62\xc4\x9d\x69\x26\xa0\xff\x92\x38\x6c\x1f\ +\xcf\x07\xfd\xc1\x2f\xf6\x3a\x10\x2f\xba\x88\x60\x9d\x2d\x4f\x39\ +\x85\xc2\x86\x88\x88\x18\x71\xcf\x34\x13\xd0\x7f\x41\x1c\xb6\x8f\ +\xa7\x83\xfe\xe0\x2f\xf0\xda\x66\x91\x4b\xa2\xd9\x6b\xb1\xd8\xaf\ +\x1f\x85\x0d\x11\x11\x31\xe2\x4e\x36\x13\xd0\xef\x20\x0e\xdb\xc7\ +\xe3\x41\x7f\xf0\x73\x3d\x0e\xc2\x24\x6d\x16\xb3\x67\x8b\x16\x14\ +\x36\x44\x44\xc4\x88\x3b\xd6\x4c\x40\xbf\x8d\x38\x6c\x1f\xbf\x0a\ +\xfa\x83\x9f\xea\x75\x20\x9e\x7f\x3e\xc1\x3a\x1b\x56\x56\x2a\xa7\ +\xb8\x98\xc2\x86\x88\x88\x18\x71\x8f\x35\x13\xd0\xaf\x27\x0e\xdb\ +\xc7\x4f\x82\xfe\xe0\x27\x78\x3d\xe2\xc2\x4b\xa2\xd9\x71\xdd\x3a\ +\x8a\x1a\x22\x22\x62\x0c\xec\x69\x26\xa0\xef\x24\x0e\xdb\xc7\x8d\ +\x41\x7f\xf0\x23\xbc\x06\xf4\x73\xce\x21\x5c\x67\xc3\x0b\x2e\xa0\ +\xa8\x21\x22\x22\xc6\xc0\x8e\x66\x02\xfa\x65\xc4\x61\xfb\xb8\x32\ +\xe8\x0f\x7e\x80\xd7\x80\x3e\x7b\x36\xe1\x3a\x1b\x4e\x9b\x46\x51\ +\x43\x44\x44\x8c\x81\xcd\xcc\x04\xf4\x25\xc4\x61\xfb\xd8\x1c\xf4\ +\x07\x7f\xb4\xd7\x4b\xa2\x53\xa7\x12\xae\xb3\xe1\xe8\xd1\x14\x35\ +\x44\x44\xc4\x18\x58\xcf\x4c\x40\x9f\x4b\x1c\xb6\x8f\x15\x41\x7f\ +\xf0\xed\xbc\x0e\xc4\x49\x93\x08\xd7\xd9\xb0\x6f\x5f\x8a\x1a\x22\ +\x22\x62\x0c\xac\x66\x26\xa0\x4f\x25\x0e\xdb\xc7\x05\x41\x7f\xf0\ +\x4d\xbd\x1e\x71\x19\x37\x8e\x70\x9d\x0d\xdb\xb6\xa5\xa8\x21\x22\ +\x22\x46\xdc\x77\xcc\x84\x73\xed\x38\xe2\xb0\x7d\xcc\x09\xfa\x83\ +\x2f\xf1\x3a\x18\x47\x8d\x22\x5c\x67\xc3\xfa\xf5\x29\x6c\x88\x88\ +\x88\x11\xf7\x37\xe6\x02\xfa\xb1\xc4\x61\xfb\x98\x64\xe2\xc3\x7f\ +\xdb\xcb\x60\x1c\x3a\x94\x70\x9d\x8d\x57\x44\x0b\x0b\x29\x6c\x88\ +\x88\x88\x11\xf7\xe7\xe6\x02\x7a\x37\xe2\xb0\x7d\x0c\x35\xf1\xe1\ +\x3f\xe5\x65\x30\xea\xe7\xe9\x09\xd8\x55\x73\xdb\x36\x8a\x1a\x22\ +\x22\x62\x0c\xbc\xc1\x5c\x40\x6f\x4c\x1c\xb6\x8f\x2e\x26\x3e\xfc\ +\xbb\xbd\x0c\xc6\x6e\xdd\x08\xd8\x55\x75\xcd\x1a\x8a\x1a\x22\x22\ +\x62\x0c\xdc\x62\x26\x9c\x7f\x21\x16\x10\x87\xed\xa3\xb1\x89\x80\ +\xfe\x7d\x2f\x97\x44\xdb\xb4\x21\x60\x57\xd5\x25\x4b\x28\x6a\x88\ +\x88\x88\x31\x70\xa9\x99\x80\xfe\x47\xa2\xb0\x9d\x14\x89\x5f\x06\ +\x3d\x00\x76\x79\x19\x8c\xe5\xe5\x04\xec\x2a\x9a\x3a\xf7\x5c\x8a\ +\x1a\x22\x22\x62\x0c\xfc\x96\x99\x80\xfe\x12\x51\xd8\x5e\xfe\x1a\ +\xf4\x00\x58\xe5\x65\x30\x96\x96\x12\xb2\xab\xea\xf4\xe9\x14\x35\ +\x44\x44\xc4\x18\x38\xce\x4c\x40\xff\x35\x31\xd8\x5e\xde\x08\x7a\ +\x00\xcc\xf3\x32\x18\xf3\xf2\x94\x53\x51\x41\xc8\xae\x8a\xa7\x9c\ +\x42\x51\x43\x44\x44\x8c\x81\x3d\xcd\x04\xf4\x9b\x89\xc1\xf6\xf2\ +\x58\xd0\x03\xe0\x24\x8f\x83\x31\xb5\x69\x13\x21\xbb\x2a\x8e\x19\ +\x43\x51\x43\x44\x44\x8c\x81\x8d\xcd\x04\xf4\x9d\xc4\x60\x7b\xf9\ +\x69\xd0\x03\xa0\x97\xd7\x01\xb9\x7c\x39\x21\xbb\x2a\x1e\x7f\x3c\ +\x45\x0d\x11\x11\x31\xe2\xee\x16\xf3\xcd\x04\xf4\xa5\xc4\x60\x7b\ +\xb9\x22\xe8\x01\xd0\xd4\xeb\xa0\x5c\xb0\x80\x90\x5d\x95\x4b\xa2\ +\x23\x46\x50\xd8\x10\x11\x11\x23\xee\xe3\x09\x63\x3d\xd0\x4f\x23\ +\x06\xdb\xcb\xd2\xa0\x07\x40\x81\xb8\xc7\xcb\xa0\x9c\x3a\x95\xa0\ +\x5d\x15\x8f\x3d\x96\xc2\x86\x88\x88\x18\x71\x6f\x35\x17\xd0\xfb\ +\x10\x83\xed\xe5\x74\x13\x83\xe0\x19\x2f\x83\x72\xf4\x68\x42\x76\ +\x55\x76\xd0\x07\x0f\xa6\xb0\x21\x22\x22\x46\xdc\x6d\xe6\x02\x7a\ +\x13\x62\xb0\xbd\x0c\x32\x31\x08\xee\xf2\x30\x20\x93\xfd\xfa\x11\ +\xb4\xab\xe0\xbe\xbf\x1f\x85\x0d\x11\x11\x31\xd2\x5e\x60\x26\x9c\ +\x7f\x22\xe6\x13\x83\xed\xa5\x85\x89\x80\x7e\x95\x97\x41\xd9\xb1\ +\x23\x41\xbb\x2a\xf6\xee\x4d\x61\x43\x44\x44\x8c\xb8\x63\xcd\x04\ +\xf4\x37\x89\xc0\x76\xa3\x5f\x13\xfd\x22\xe8\x81\x70\x91\x97\x41\ +\xd9\xa4\x09\x21\xbb\x2a\x47\x5c\x7a\xf6\xa4\xb0\x21\x22\x22\x46\ +\xdc\x8e\x66\x02\xfa\x7d\x44\x60\xfb\xd9\x1b\xf4\x40\x98\xe8\x61\ +\x40\xa6\xaa\x57\x27\x68\xb3\x83\x8e\x88\x88\x98\xb3\xbe\x2f\x16\ +\x9b\x09\xe8\xd7\x11\x7f\xed\xe7\xf1\xa0\x07\x42\x77\xaf\x83\x73\ +\xe3\x46\x82\x36\x67\xd0\x11\x11\x11\x69\xb1\x18\xac\x97\x10\x7f\ +\xed\xe7\x07\x41\x0f\x84\xda\x5e\x07\xe7\x05\x17\x10\xb6\x33\x75\ +\xd0\x20\x8a\x1b\x22\x22\x62\x84\xbd\xc1\x5c\x40\x3f\x99\xf8\x6b\ +\x3f\x2b\x4c\x0c\x86\x17\xbc\x0c\xce\x33\xce\x20\x68\x67\xea\xd0\ +\xa1\x14\x37\x44\x44\xc4\x08\xbb\xdc\x5c\x40\xef\x48\xfc\xb5\x9f\ +\xc9\x26\x06\xc3\x1d\x5e\xce\xa1\xeb\xd7\x30\x09\xdb\x99\x1d\x71\ +\x39\xee\x38\x8a\x1b\x22\x22\x62\x84\x3d\xcd\x4c\x38\xff\x4c\xac\ +\x46\xfc\xb5\x9f\x1e\x26\x02\xfa\x76\x2f\x83\xb3\x5b\x37\xc2\x76\ +\xa6\x8e\x1c\x49\x71\x43\x44\x44\x8c\xb0\x9d\xcd\x04\xf4\xd7\x88\ +\xbe\xd1\xa0\xa6\xf8\x65\xd0\x03\xe2\x2c\x2f\x3b\xe8\xb4\x5a\xcc\ +\xdc\x71\xe3\x28\x6e\x88\x88\x88\x11\x75\xb7\x58\x64\x26\xa0\xff\ +\x84\xe8\x4b\xab\xc5\xff\x38\xc0\xcb\x00\x2d\x2a\x52\x4e\x45\x05\ +\x61\x3b\x93\x3e\xe8\x93\x27\x53\xe0\x10\x11\x11\x23\xea\xdd\xe6\ +\xce\x9f\xaf\x23\xf6\x46\x87\x07\x83\x1e\x10\xf5\xbc\x0e\xd2\xe5\ +\xcb\x09\xdc\x99\x38\x6b\x16\x05\x0e\x11\x11\x31\xa2\x6e\x31\x17\ +\xd0\xcf\x24\xf6\x46\x87\x6b\x4c\x0c\x8a\xe7\xbc\x0c\xd2\x19\x33\ +\x08\xdb\x99\x38\x7f\x3e\x05\x0e\x11\x11\x31\xa2\x4e\x33\x17\xd0\ +\x8f\x26\xf6\x46\x87\x85\x26\x06\xc5\x8d\x74\x72\x09\xce\x25\x4b\ +\x28\x70\x88\x88\x88\x11\xb5\xbb\x99\x70\xfe\x09\x1d\x5c\xa2\xc5\ +\xb1\x26\x02\xfa\xc5\x5e\x06\x69\xc7\x8e\x84\xed\x4c\x5c\xbd\x9a\ +\x02\x87\x88\x88\x18\xd1\x0b\xa2\xd5\xcd\x04\xf4\x67\x88\xbc\xd1\ +\xa2\xbe\x89\x80\x3e\xd6\xcb\x40\xad\x5d\x9b\xb0\x9d\x89\x5b\xb6\ +\x50\xe4\x10\x11\x11\x23\xe8\xcf\xcd\x1d\x6f\xb9\x86\xc8\x1b\x3d\ +\xf6\x04\x3d\x30\x5a\x79\x1c\xa8\xa9\x8d\x1b\x09\xdc\x99\x74\x72\ +\xa9\x5e\x9d\x42\x87\x88\x88\x18\x31\x57\x99\x0b\xe8\x73\x89\xbb\ +\xd1\xe3\xae\xa0\x07\x46\x9e\xf8\xb2\x97\x80\x7e\xee\xb9\x04\xee\ +\x4c\x2c\x2f\xa7\xd0\x21\x22\x22\x46\xcc\xd1\xe6\x02\x7a\x6f\xe2\ +\x6e\xf4\xb8\xcc\xc4\xe0\xf8\x9e\x97\xc1\x7a\xc2\x09\x84\xed\x4c\ +\x6c\xdf\x9e\x42\x87\x88\x88\x18\x31\x1b\x99\x09\xe7\x9f\x89\x25\ +\xc4\xdd\xe8\x31\xd1\x44\x40\x3f\x8f\x8b\xa2\xc1\xd9\xbb\x37\x85\ +\x0e\x11\x11\x31\x42\x3e\x6e\x6e\xf7\xfc\x05\xa2\x6e\x34\x69\x6b\ +\x62\x80\x78\x7a\x51\xb4\xa4\x44\x39\x95\x95\x04\x6e\xbf\x67\xd0\ +\x47\x8e\xa4\xd8\x21\x22\x22\x46\xc8\x1d\xe6\x02\xfa\x75\x44\xdd\ +\x68\x92\x27\xfe\x25\xe8\x01\x52\x26\xbe\xef\x65\xd0\xae\x58\x41\ +\xe8\xf6\xeb\xa4\x49\x14\x3b\x44\x44\xc4\x08\x79\x9a\xb9\x80\x3e\ +\x93\xa8\x1b\x5d\xee\x31\x31\x48\xee\xf3\x32\x68\xa7\x4c\x21\x70\ +\xfb\xdd\x41\x3f\xe7\x1c\x8a\x1d\x22\x22\x62\x84\x3c\xcc\x5c\x40\ +\x6f\x47\xcc\x8d\x2e\xab\x4c\x0c\x92\xf5\x5e\x06\xed\xc0\x81\x84\ +\x6e\xbf\xae\x5a\x45\xb1\x43\x44\x44\x8c\x88\x8f\x98\x0b\xe7\x7f\ +\x70\x4f\x4a\x40\x44\x19\x65\x62\xa0\x9c\xe8\x65\xe0\xea\x96\x81\ +\x84\x6e\x7f\x56\x54\xa8\x64\x61\x21\x45\x0f\x11\x11\x31\x02\xae\ +\x33\x17\xd0\x7f\x4c\xc4\x8d\x36\x75\xc5\x2f\x83\x1e\x28\xf2\x1f\ +\xa2\xf6\x7a\x19\xbc\xeb\xd6\x11\xba\xe9\x85\x8e\x88\x88\x18\x4b\ +\x47\x9a\x0b\xe8\x17\x10\x71\xa3\xcf\xcb\x26\x06\xcb\x3d\x5e\x06\ +\xef\xb4\x69\x04\x6e\xbf\xe7\xd0\xbb\x76\xa5\xe8\x21\x22\x22\x5a\ +\xee\x6e\xb7\x71\x86\xa1\x80\x7e\x0c\xf1\x36\xfa\x5c\x6f\x62\xb0\ +\xac\xf0\x32\x80\xfb\xf6\x25\x74\xfb\x75\xd8\x30\x0a\x1f\x22\x22\ +\xa2\xe5\xde\x61\x2e\x9c\xff\x43\x2c\x22\xde\x46\x9f\x39\x26\x06\ +\xcc\x30\x2f\x03\xb8\x41\x03\x02\xb7\x5f\x4f\x3f\x9d\xc2\x87\x88\ +\x88\x68\xb9\xe7\x99\x0b\xe8\x77\x13\x6d\xe3\xc1\x91\x26\x06\x4c\ +\xa9\xfb\xf3\xce\xa1\x06\x70\x6a\xf5\x6a\x42\xb7\x1f\x2f\xba\x88\ +\xc2\x87\x88\x88\x68\xb9\x1d\x38\x7f\x0e\x3e\xd1\x6d\x78\x52\x26\ +\x06\xcd\x8f\xbd\x0c\xe2\xc9\x93\x09\xdd\x7e\xdc\xbe\x5d\x39\x79\ +\x79\x14\x3f\x44\x44\x44\x4b\x7d\xdc\x5c\x38\xd7\x76\x26\xda\xc6\ +\x87\x1f\x98\x18\x34\xf3\xbc\x0c\xe4\xce\x9d\x09\xdd\x74\x72\x41\ +\x44\x44\x8c\x8d\xab\xcc\x85\xf3\x24\xfd\xcf\xe3\xc5\x0c\x13\x03\ +\xa7\x8d\x97\x81\x5c\x54\x94\xde\x15\x26\x78\x7b\x36\xd9\xbd\x3b\ +\x05\x10\x11\x11\xd1\x52\x7b\x99\x0b\xe8\xd7\x13\x69\xe3\x45\x4b\ +\x53\x3f\xbd\xfc\xc6\xcb\x60\x9e\x37\x8f\xe0\xed\xc7\xb1\x63\x29\ +\x80\x88\x88\x88\x16\xfa\xb2\x58\x60\x2e\xa0\x9f\x41\xa4\x8d\x1f\ +\x6f\x9b\x18\x3c\xeb\xbc\x0c\xe8\x21\x43\x08\xdd\x7e\x3c\xfb\x6c\ +\x8a\x20\x22\x22\xa2\x85\x6e\x37\x17\xce\xf5\xc3\x93\xe5\xc4\xd9\ +\xf8\xf1\x3f\xb6\xb4\x5b\x4c\xd5\xab\x47\xe8\xf6\xe3\xc6\x8d\x14\ +\x41\x44\x44\x44\x0b\x1d\x64\x2e\xa0\x3f\x47\x94\x8d\x27\x93\x4d\ +\x0c\xa0\xea\xe2\x9b\x5e\x06\xf5\xf2\xe5\x04\x6f\x3f\xd6\xaf\x4f\ +\x21\x44\x44\x44\xb4\xc8\xdf\x89\x85\xe6\x02\xfa\x4a\xa2\x6c\x3c\ +\xa9\x27\x7e\x6e\x62\x10\x55\x7a\x19\xd8\xc7\x1f\x4f\xe8\xf6\x61\ +\xaa\x67\x4f\x8a\x21\x22\x22\xa2\x45\xae\x35\xdb\x5e\xb1\x0b\x51\ +\x36\xbe\x3c\x61\x62\x10\x8d\xf6\x30\xa8\x93\x8d\x1a\x11\xbc\xfd\ +\x38\x69\x12\xc5\x10\x11\x11\xd1\x22\x7b\x9a\x0b\xe7\xef\x12\x61\ +\xe3\xcd\xc5\x26\x06\x52\xb1\xf8\xba\x97\xc1\x7d\xc9\x25\x04\x6f\ +\xaf\x3b\xe8\x4b\x96\x50\x0c\x11\x11\x11\x2d\xf1\x49\x31\xcf\x5c\ +\x40\xdf\x4a\x84\x8d\x37\x47\x99\xfa\x29\xe6\x6a\x8e\xb9\x64\xd7\ +\x5d\xbb\x54\xaa\x5a\x35\x8a\x22\x22\x22\xa2\x05\x2e\x37\x7b\xbc\ +\x65\x08\x11\x36\xde\xe8\xd7\xa7\xde\x37\x31\x98\xc6\x7a\x19\xe0\ +\x4d\x9a\x10\xbc\xfd\xd8\xba\x35\x45\x11\x11\x11\xd1\x02\x3b\x9a\ +\x0b\xe7\xff\x2b\x16\x12\x61\xe3\xcf\xd5\x26\x06\x54\x0d\xf1\x6d\ +\x2f\x67\xd1\x39\xe6\xe2\xdd\x51\xa3\x28\x8a\x88\x88\x88\x21\xfb\ +\x0b\xb3\xbb\xe7\xdf\x21\xba\xe6\x06\x63\x4d\x0d\xaa\xab\xbc\x0c\ +\xf4\x61\xc3\x08\xde\x5e\x5d\xb0\x80\xc2\x88\x88\x88\x18\xb2\x67\ +\x9a\x0d\xe8\x23\x89\xae\xb9\x41\x89\xf8\x77\x13\x83\xea\x38\x2f\ +\x03\xbd\x66\xcd\x7d\xe7\xab\x09\xe0\x1e\xdc\xb1\x43\x39\x45\x45\ +\x14\x47\x44\x44\xc4\x90\xd4\xa7\x03\x6a\x99\x0b\xe7\x7f\xe4\x78\ +\x4b\x6e\x71\xb3\x89\x81\xa5\x9b\xf7\xff\xd6\xcb\x80\x9f\x3b\x97\ +\xf0\xed\xd5\x36\x6d\x28\x90\x88\x88\x88\x21\xb9\xcb\xec\xee\xf9\ +\x15\x44\xd6\xdc\xe2\x24\x53\x83\x6b\xb9\x97\x01\xdf\xbd\x3b\xc1\ +\xdb\xab\x27\x9c\x40\x81\x44\x44\x44\x0c\xc9\x5e\x66\x03\x7a\x5f\ +\x22\x6b\x6e\x51\x43\xfc\x87\x89\xc1\xd5\xd1\xcb\x80\xd7\xc7\x36\ +\x2e\xbf\x9c\xf0\xed\xc5\xf3\xce\xa3\x40\x22\x22\x22\x86\xe0\x23\ +\x09\xa3\xbd\xcf\xf7\x88\xf9\x44\xd6\xdc\xe3\x87\xa6\xbe\x01\xde\ +\xe3\x65\xe0\x4f\x9e\x4c\xf8\xf6\xf2\x60\x11\xe7\xd0\x11\x11\x11\ +\x43\x71\x9a\xd9\xdd\xf3\x8d\x44\xd5\xdc\x64\xa2\xa9\x41\xf6\x2d\ +\x2f\x03\xff\xb0\xc3\x08\xe0\x5e\xed\xd4\x89\x42\x89\x88\x88\x68\ +\xd0\x37\xc4\x9a\x66\x03\x7a\x77\xa2\x2a\xc7\x5c\x02\xb5\xb6\xf8\ +\x8e\x97\x09\xb0\x68\x11\xe1\xdb\x8b\x93\x26\x51\x2c\x11\x11\x11\ +\x0d\xba\xce\x6c\x38\xff\x1d\x31\x35\xb7\xb9\xc9\xd4\x60\xdb\xee\ +\x65\x02\xf4\xea\x45\xf8\xf6\xe2\x9a\x35\x14\x4b\x44\x44\x44\x43\ +\x26\xc5\xd6\x66\x03\xfa\x02\x22\x6a\x6e\x73\x82\xa9\xc1\x76\xb4\ +\x97\x09\x50\x58\xa8\x52\x9b\x36\x11\xc0\xbd\xd8\xa8\x11\x45\x13\ +\x11\x11\xd1\x80\x3f\x34\x1b\xce\x3f\x11\xeb\x13\x51\x73\x1b\xdd\ +\xfc\x3e\x65\xd5\x65\xd1\xf1\xe3\x09\xdf\x5e\x1c\x32\x84\xa2\x89\ +\x88\x88\x68\xc0\x61\x66\x03\xfa\xcd\xc4\x53\xd0\x6c\x31\x35\xe8\ +\x4e\xf7\x32\x11\xf4\xce\x70\x65\x25\x01\xfc\x50\xce\x9b\x47\xd1\ +\x44\x44\x44\x0c\xd8\xfb\xcd\xb6\x56\xd4\x0e\x27\x9a\x82\xa6\xab\ +\xa9\x41\x57\x43\x7c\xcd\xcb\x84\x98\x3d\x9b\x00\x7e\xa8\x76\x8b\ +\x3b\x77\x2a\xa7\x7a\x75\x8a\x27\x22\x22\x62\x80\x9e\x6c\x36\x9c\ +\xbf\x97\xa0\xf7\x39\xec\xc7\x73\xa6\x06\xdf\x6a\x2f\x13\xa2\x55\ +\x2b\x42\xb8\x07\x93\xfa\x05\x56\x8a\x27\x22\x22\x62\x20\xfe\x46\ +\x2c\x34\x1b\xd0\x57\x12\x49\x61\x7f\xce\x37\x35\xf8\x8e\x10\xf7\ +\x78\x99\x18\x8b\x17\x13\xc2\x0f\xe5\x8c\x19\x14\x50\x44\x44\xc4\ +\x80\x9c\x69\x36\x9c\xff\x4b\x6c\x4c\x24\x85\xfd\x69\x24\x7e\x66\ +\x6a\x10\x5e\xe5\xa5\xa3\x8b\xde\x1d\x26\x84\x1f\xdc\x2d\x5b\x94\ +\x53\x58\x48\x11\x45\x44\x44\xcc\xb2\x2f\x8a\x25\x66\x03\xfa\xf7\ +\x89\xa3\x70\x20\x7e\x6a\x6a\x10\x76\xf7\x32\x39\x0a\x0a\x94\x73\ +\xd9\x65\x84\xf0\x43\x1d\x73\xe9\xd0\x81\x42\x8a\x88\x88\x98\x65\ +\x17\x9a\x0d\xe7\xda\x3e\x44\x51\x38\x10\xa3\x4c\x0e\xc4\x3b\xbc\ +\x4c\x90\xc1\x83\x09\xe1\x87\x72\xf2\x64\x0a\x29\x22\x22\x62\x16\ +\xd5\x0d\x2d\x6a\x99\x0d\xe7\x4f\x11\x43\xe1\x9b\xd0\xb7\x86\xdf\ +\x32\x35\x18\x8f\xf7\x30\x41\x52\xd5\xaa\xf1\x70\xd1\xa1\xba\xb9\ +\xac\x5f\xaf\x9c\xbc\x3c\x0a\x2a\x22\x22\x62\x74\x77\xcf\xa7\x12\ +\x43\xe1\x60\x5c\x64\x6a\x30\x16\x88\x8f\x79\x39\x8b\x7e\xdc\x71\ +\x04\xf1\x43\xd9\xae\x1d\x05\x15\x11\x11\x31\x0b\xbe\x2c\xd6\x34\ +\x1b\xce\xff\x20\x16\x13\x41\xe1\x60\x34\x48\xa4\x9f\x98\x35\x32\ +\x28\x4f\xf5\x32\x59\xd8\x45\x3f\xf4\x2e\x3a\xc7\x5c\x10\x11\x11\ +\xb3\xe2\x7c\xf3\xbb\xe7\x6b\x89\x9f\xe0\x85\x1b\x4d\x0d\xca\x22\ +\xf1\x49\x2f\x13\xe6\xf8\xe3\x09\xe2\x07\x53\x7f\x81\xd1\x97\x6a\ +\x29\xac\x88\x88\x88\x55\xea\xdc\x52\x6a\x36\x9c\xeb\x4d\xd1\x26\ +\x44\x4f\xf0\x42\x3f\x93\xdf\x1c\xa7\x7a\x99\x34\xa5\xa5\x2a\xb9\ +\x75\x2b\x41\xfc\x60\x76\xec\x48\x71\x45\x44\x44\xac\x82\x73\xcd\ +\xef\x9e\x5f\x4d\xec\x04\x3f\x3c\x6a\xdd\x2e\xfa\xa8\x51\x84\xf0\ +\x83\xb5\x5b\x9c\x3a\x95\xe2\x8a\x88\x88\x98\xa1\x4f\xb8\x99\xc4\ +\x60\x38\xd7\xef\xcf\xb4\x24\x72\x82\x1f\x4e\x35\xf9\x0d\x72\x86\ +\xd7\xb3\xe8\x1b\x37\x12\xc6\xbf\x49\xfd\x0b\x43\x51\x11\x45\x16\ +\x11\x11\x31\x03\x4f\x35\xbf\x7b\x7e\x2b\x71\x13\xfc\x52\x28\xee\ +\x36\x35\x48\x8b\xc5\xe7\xbc\x4c\x20\x3a\xba\x1c\xdc\xae\x5d\x29\ +\xb2\x88\x88\x88\x3e\xbd\xdf\xed\x2e\x67\x38\xa0\xf7\x20\x6e\x42\ +\x26\x9c\x6f\x72\xa0\x4e\xf6\x32\x89\xf4\xb3\xf6\x6b\xd6\x10\xc4\ +\xbf\xc9\xb3\xce\xa2\xd0\x22\x22\x22\xfa\xb4\xbf\xf9\x70\xfe\x0b\ +\x62\x26\x64\x4a\x6d\xf1\x43\x93\x67\xd1\x1f\xf7\x32\x91\xfa\xf6\ +\x25\x88\x7f\x53\xbb\xc5\x8a\x0a\x95\xac\x59\x93\x62\x8b\x88\x88\ +\xe8\xd1\x5b\xcd\x87\x73\xed\x71\xc4\x4c\xa8\x0a\x3b\x4c\x0e\xd8\ +\x09\x5e\x26\x93\x6e\x27\xb8\x62\x05\x81\xfc\x9b\x1c\x3c\x98\x82\ +\x8b\x88\x88\xe8\xc1\xa4\xd8\xd5\x7c\x38\x7f\x8a\x78\x09\x55\xa5\ +\x95\x7b\xcb\xd8\xc8\xa0\xcd\x77\xcf\x81\x1d\x6a\x42\xa5\x3a\x75\ +\x22\x88\x7f\x93\x17\x5f\x4c\xd1\x45\x44\x44\xf4\xe0\x15\xe1\xec\ +\x9e\x9f\x40\xbc\x84\x6c\x70\x83\xc9\x81\x3b\xd2\xe3\xa4\x4a\x9d\ +\x7b\x2e\x61\xfc\x9b\x3c\xec\x30\x0a\x2f\x22\x22\xe2\x41\x7c\x4b\ +\x6c\x62\x3e\x9c\x3f\x49\xac\x84\x6c\xd1\x41\xfc\xc2\xe4\x00\xbe\ +\xc3\xcb\xe4\x6a\xdc\x78\xdf\x99\x6b\x02\xf9\x01\x3c\xf9\x64\x8a\ +\x2f\x22\x22\xe2\x41\x3c\x3f\x9c\xdd\xf3\x51\xc4\x4a\xc8\x26\xdf\ +\x37\x39\x80\x3b\x89\x7b\xbd\x4c\xb0\x29\x53\x08\xe3\x07\xba\x2c\ +\xba\x61\x43\xfa\xac\x3e\x05\x18\x11\x11\xf1\x6b\x3e\x9a\x30\xfe\ +\x28\x91\xf6\x41\xe2\x24\x64\x9b\x8e\xa6\x77\xd1\xb7\x7b\x39\xe6\ +\x52\xbb\xb6\x72\xb6\x6d\x23\x94\x1f\xe8\x65\xd1\xa3\x8e\xa2\x08\ +\x23\x22\x22\x1e\xc0\x11\xe1\xec\x9e\x0f\x25\x4e\x42\x10\xdc\x61\ +\x72\x20\xeb\x73\x61\x6f\x7b\x99\x68\x43\x87\x12\xc8\x0f\xe4\x82\ +\x05\x14\x61\x44\x44\x44\x3b\xda\x2a\x3e\x4c\x8c\x84\xa0\x38\x4a\ +\xfc\xd2\xe4\x80\x3e\xdf\xcb\x64\xcb\xcf\x4f\x77\x2e\x21\x94\x7f\ +\xd5\xca\x4a\x95\x6c\xd4\x88\x62\x8c\x88\x88\xb8\xdf\xc5\xd0\xc3\ +\xcd\x87\xf3\x2f\xdc\x0c\x05\x10\x18\x77\x9b\x1c\xd4\x35\xc4\xe7\ +\xbc\x4c\xba\x56\xad\xf6\x05\x52\x82\xf9\xff\x3b\x8b\x3e\x7e\x3c\ +\x05\x19\x11\x11\xd1\xf5\x82\x70\x76\xcf\x6f\x23\x3e\x42\xd0\xf4\ +\x30\xbd\x8b\x3e\xc9\xeb\xc4\x9b\x3a\x95\x50\xfe\xff\xdd\xb4\x49\ +\x25\x0b\x0b\x29\xca\x88\x88\x98\xf3\x3e\x2c\x56\x33\x1f\xce\x3f\ +\x15\xdb\x12\x1f\xc1\x04\x37\x99\xfe\xf6\x79\x9b\x97\xc9\x57\xab\ +\x96\x72\xb6\x6c\x21\x94\xff\x7f\xbb\x77\xa7\x30\x23\x22\x62\x4e\ +\xab\x3b\xc3\x75\x0f\x67\xf7\x7c\x3b\xb1\x11\x4c\xd1\xd6\xfd\x46\ +\x68\x6c\x80\xb7\x13\x77\x7b\x99\x84\x83\x06\x11\xc8\xff\xbf\xe7\ +\x9d\x47\x71\x46\x44\xc4\x9c\x76\x63\x38\xe1\xfc\xcf\x62\x5d\x62\ +\x23\x98\xe4\x3b\xa6\x07\xfa\x65\x5e\x26\x61\x5e\x9e\x72\xe6\xcf\ +\x27\x94\xf3\xb2\x28\x22\x22\xe2\x3e\x5f\x10\xeb\x86\x13\xd0\x97\ +\x13\x17\xc1\x34\x2d\xc4\x7f\x99\x1c\xe8\xb5\xc4\xdf\x79\x99\x8c\ +\x8d\x1a\xa9\xd4\x8e\x1d\x84\xf2\xfd\x3d\xe3\x0c\x8a\x34\x22\x22\ +\xe6\xa4\x27\x86\x13\xce\xf7\x8a\xa5\xc4\x45\x08\x83\x5d\xa6\x07\ +\xfc\x29\x5e\x27\xe4\x88\x11\x84\xf2\xfd\xbb\xb9\xe8\x2f\x2c\xa5\ +\xa5\x14\x6a\x44\x44\xcc\x29\xaf\x0e\x27\x9c\x6b\x4f\x27\x26\x42\ +\x58\x34\x12\x3f\x30\x3d\xe8\x6f\xf6\x30\x21\x93\xba\x37\xfa\x92\ +\x25\x84\xf3\xfd\x43\xba\xfe\xd2\x42\xb1\x46\x44\xc4\x1c\xf1\x25\ +\xb1\x41\x38\xe1\xfc\x11\x31\x8f\x98\x08\x61\xb2\xd8\xf4\xc0\x3f\ +\x4c\x7c\xc3\xcb\xe4\x6c\xde\x5c\xa5\x2a\x2a\x08\xe7\xff\x76\xf5\ +\xea\xf4\x19\x7d\x8a\x36\x22\x22\xe6\x80\x23\xc2\x09\xe7\xba\x89\ +\xc6\x91\xc4\x43\x08\x9b\xea\xe2\x7b\xa6\x27\xc0\x5c\xaf\x13\x74\ +\xcc\x18\x82\xf9\xfe\xbb\xe8\x5d\xbb\x52\xb4\x11\x11\x31\xf6\x5e\ +\x1f\xde\xd1\x96\x2b\x89\x86\x60\x0b\x93\x4d\x4f\x80\x42\xf1\x5e\ +\xaf\x47\x5d\x2e\xba\x88\x70\xee\x9a\x5c\xb8\x90\xc2\x8d\x88\x88\ +\xb1\xf6\x45\xb1\x51\x78\x6d\x15\xeb\x13\x0b\xc1\x16\xf4\x39\xab\ +\x27\x4d\x4f\x84\x2e\xe2\x1e\x2f\x93\xb5\x71\x63\xe5\xd0\xd5\xe5\ +\xbf\xb6\x68\x41\x01\x47\x44\xc4\xd8\x3a\x2a\xbc\xdd\xf3\x79\x44\ +\x42\xb0\x8d\xfe\xe2\x97\xa6\x27\xc3\x52\xaf\x13\x76\xf8\x70\x82\ +\xf9\xbf\x8f\xb9\xcc\x9c\x49\x01\x47\x44\xc4\x58\xba\x2d\xbc\x70\ +\xfe\x94\x58\x40\x1c\x04\x1b\xb9\xd9\xf4\x84\x28\x12\x7f\xe5\xf1\ +\xa8\x4b\xea\xc2\x0b\x09\xe8\xda\x5d\xbb\x94\x53\xa7\x0e\x85\x1c\ +\x11\x11\x63\xe5\x13\x62\x59\x38\xe1\xfc\x73\xb1\x3b\x31\x10\x6c\ +\xa5\x5c\xfc\xab\xe9\x89\xd1\x46\x7c\xc7\xcb\xe4\xad\x5b\x57\x39\ +\x9b\x37\x13\xd0\xb5\x13\x26\x50\xcc\x11\x11\x31\x36\xee\x16\xbb\ +\x86\xb7\x7b\xbe\x99\x08\x08\xb6\xb3\x38\x8c\xc9\x31\xdf\xeb\x24\ +\x3e\xfa\x68\xc2\xb9\xbe\x2c\xba\x75\xab\x72\x4a\x4a\x28\xea\x88\ +\x88\x18\x0b\x2f\x0e\x2f\x9c\xeb\x17\x43\x6b\x12\xff\xc0\x76\xf4\ +\xf9\xab\xdf\x9a\x9e\x20\xf9\xe2\x8f\x3d\x4e\xe2\x7d\x67\xb0\x09\ +\xe9\xca\x19\x3a\x94\xa2\x8e\x88\x88\x91\xf7\x2e\xb7\xbb\x5b\x48\ +\x01\xfd\x78\xa2\x1f\x44\x85\xa1\x61\x4c\x92\xd6\xe2\xdb\x5e\x26\ +\x73\x71\xb1\x4a\xad\x5c\xc9\x65\xd1\x0d\x1b\x94\x53\x54\x44\x71\ +\x47\x44\xc4\xc8\xaa\x1f\x2e\x6c\x19\x5e\x38\xff\x19\x91\x0f\xa2\ +\xc6\x0f\xc3\x98\x2c\x67\x7b\x9d\xd4\xad\x5a\xf1\xca\xa8\x3e\xea\ +\xd2\xaf\x1f\x05\x1e\x11\x11\x23\xeb\xc4\xf0\xc2\xf9\x07\x62\x33\ +\xe2\x1e\x44\x8d\xa6\xe2\x87\x61\x1c\x75\xb9\xcd\xeb\xc4\x1e\x32\ +\x84\x80\xbe\x76\xad\x72\x0a\x0b\x29\xf2\x88\x88\x18\x39\x77\x86\ +\x17\xce\xb5\x67\x11\xf5\x20\xaa\x2c\x0a\x63\xd2\x34\x11\x5f\xf1\ +\x3a\xc1\xa7\x4d\xe3\x2c\x7a\xdf\xbe\x14\x7a\x44\x44\x8c\x94\x8f\ +\x8a\xa5\xe1\x85\xf3\xfb\x12\xe9\x47\x1a\x01\x22\x49\xa1\xf8\x4c\ +\x18\x93\x67\xb4\xd7\x49\x5e\x5c\xac\x9c\xe5\xcb\x73\xfb\x2c\xfa\ +\xea\xd5\xfb\xfa\xc4\x53\xf0\x11\x11\x31\x0a\xea\xfb\x66\x47\x86\ +\x17\xce\xff\x2e\xb6\x24\xe2\x41\xd4\xe9\x20\x7e\x12\xc6\x24\x5a\ +\xef\x75\xb2\x97\x97\x2b\x47\xb7\x1d\xcc\xe5\x5d\xf4\x63\x8e\xa1\ +\xe8\x23\x22\x62\x24\x1c\x1b\xee\xd1\x96\xd9\x44\x3b\x88\x0b\xeb\ +\xc2\x98\x44\x35\xc4\x87\xbd\x4e\xf8\x1e\x3d\x72\x3b\xa0\xeb\x5f\ +\x11\xf2\xf2\x28\xfc\x88\x88\x68\xb5\x97\x87\x1b\xce\x1f\x14\xf3\ +\x89\x75\x10\x17\xaa\x8b\xaf\x85\x31\x99\x3a\x78\x6d\xbd\xa8\x9d\ +\x34\x29\xb7\x43\x7a\xb7\x6e\x14\x7f\x44\x44\xb4\xd6\x7b\xc5\xe2\ +\x70\x8f\xb6\xb4\x26\xd2\x41\xdc\x18\x28\x7e\x11\xc6\xa4\x3a\xd5\ +\xeb\xe4\x2f\x28\x50\xce\xa2\x45\xb9\x1b\xd0\x97\x2e\x65\x17\x1d\ +\x11\x11\xad\xf4\x55\xb1\x59\xb8\xbb\xe7\xb3\x88\x72\x10\x57\xae\ +\x08\x6b\x62\xed\xf4\x5a\x04\xea\xd6\x55\xa9\x4d\x9b\x72\xf7\xc2\ +\x68\xa7\x4e\x2c\x04\x88\x88\x68\x95\x49\x71\x78\xb8\xe1\xfc\xa7\ +\x44\x38\x88\x33\x65\xe2\xdb\x61\x9d\x47\x7f\xd0\x6b\x31\x68\xdf\ +\x5e\x39\xb9\xfa\x88\xd1\xe2\xc5\x2c\x06\x88\x88\x68\x95\x8b\xc3\ +\x0d\xe7\xbf\x17\x1b\x12\xe1\x20\xee\x0c\x0e\xeb\xa8\x4b\x7b\x3f\ +\xe7\xd1\xc7\x8c\xc9\xdd\x5d\xf4\x36\x6d\x58\x10\x10\x11\xd1\x0a\ +\xbf\x9b\x48\x3f\x42\x18\x62\x40\x3f\x91\xe8\x06\xb9\xc2\xce\xb0\ +\x26\xda\x04\xaf\x45\x21\x2f\x4f\x25\xa7\x4f\xcf\xcd\x90\xbe\x60\ +\x01\x8b\x02\x22\x22\x86\xee\x43\x62\xcd\x70\xc3\xf9\xd5\x44\x36\ +\xc8\x25\x6a\x88\x6f\x84\x35\xe1\xd6\x78\x2d\x0e\xd5\xaa\x29\xe7\ +\xe2\x8b\x73\x73\x17\xbd\x65\x4b\x16\x07\x44\x44\x0c\xcd\xd7\xc4\ +\xd6\xe1\x86\xf3\xb7\xc4\x52\x22\x1b\xe4\x1a\xfd\xc3\x3a\xea\x52\ +\x24\xfe\xc4\x6b\x91\xa8\x55\x4b\x39\x97\x5d\x96\x7b\x21\xfd\x82\ +\x0b\x58\x20\x10\x11\x31\x14\xf7\x8a\xc7\x85\x1b\xce\xff\x25\xf6\ +\x24\xaa\x41\xae\xb2\x29\xac\xc9\xd7\x48\x7c\xde\x6b\xb1\x38\xfc\ +\x70\xe5\x6c\xdf\x4e\x47\x17\x44\x44\x44\x03\x2e\x08\x37\x9c\x6b\ +\x17\x13\xd1\x20\x97\xd1\xaf\x71\x3d\x10\xd6\x04\xec\x24\xbe\xe3\ +\xb5\x60\xe8\x47\x7c\x2a\x2b\x73\x2b\xa4\x2f\x5b\x46\x5f\x74\x44\ +\x44\x34\xea\xc6\xf0\xc3\xf9\x4f\xc4\x3c\x22\x1a\xe4\x3a\xfa\x55\ +\xae\x0f\xc3\x9a\x88\x33\x7c\x14\x8d\xd4\xc8\x91\xb9\x77\xd4\xa5\ +\x47\x0f\x16\x0c\x44\x44\x34\xa2\x3e\x7e\x5a\x2d\xdc\x70\x2e\xff\ +\x18\x89\x46\x44\x33\x80\x34\x67\x86\xf9\x6d\x79\x87\x9f\x90\x7e\ +\xc6\x19\xb9\x15\xd0\x57\xae\x4c\xbf\xb0\xca\xc2\x81\x88\x88\x01\ +\xfa\xb8\x58\x2f\xdc\x70\xae\xef\xc5\x0d\x23\x92\x01\x7c\x95\x9b\ +\xc2\x9a\x94\xfa\xdb\xfa\x4f\xbd\x16\x11\x1d\x56\xcf\x3f\x3f\xb7\ +\x42\xfa\x80\x01\x2c\x1e\x88\x88\x18\x98\xaf\x84\xdf\xb1\x45\xbb\ +\x9e\x28\x06\xf0\x75\xea\x88\xef\x85\x35\x31\xeb\x8b\x4f\x7a\x2d\ +\x26\xa5\xa5\x2a\xb5\x7a\x75\xee\x5c\x16\x5d\xbf\x5e\xa5\x74\xcb\ +\x49\x16\x11\x44\x44\xcc\xb2\xbb\xc5\xfe\xe1\x87\xf3\x87\xc4\x42\ +\xa2\x18\xc0\x81\x19\x20\x7e\x1e\xd6\x04\xd5\x2f\x8d\xbe\xee\xa3\ +\xb3\x4b\x72\xeb\xd6\xdc\xd9\x45\x1f\x3a\x94\x85\x04\x11\x11\xb3\ +\xee\xa9\xe1\x87\xf3\x94\xd8\x84\x08\x06\x70\x70\x96\x87\x39\x51\ +\xfb\xb8\xdf\xe6\x3d\x15\x96\x36\x6d\x94\xb3\x63\x47\x6e\x04\xf4\ +\xcb\x2f\x57\x4e\x8d\x1a\x2c\x26\x88\x88\x98\x35\x17\x85\x1f\xce\ +\x75\xbf\xf3\xde\x44\x2f\x80\x43\x53\x20\xfe\x3a\xcc\x09\x3b\xcb\ +\xcf\xa5\xd1\xae\x5d\x55\xaa\xa2\x22\x37\x42\xfa\x98\x31\x2c\x28\ +\x88\x88\x98\x15\xaf\x11\xf3\xc3\x0f\xe8\x17\x11\xbb\x00\xbc\xd3\ +\x50\xdc\x1b\xe6\xa4\x5d\xe3\xa7\xd0\xe8\x4b\x94\xb9\x10\xd0\xb7\ +\x6f\x57\xc9\x9a\x35\x59\x58\x10\x11\xb1\x4a\xde\x96\x48\xbf\xea\ +\x1d\x72\x38\xbf\x91\xb8\x05\xe0\x9f\xe3\x12\xe9\x96\x47\xa1\x4c\ +\x5c\x5d\x38\x6e\xf1\x53\x70\x4e\x38\x21\x37\x42\xfa\x29\xa7\xb0\ +\xb8\x20\x22\x62\xc6\x3e\x95\x48\xbf\xe6\x1d\x72\x38\x7f\x53\xac\ +\x4d\xd4\x02\xc8\x8c\xd5\x61\x4e\x60\x99\xb9\xea\x11\x3f\x85\x47\ +\x87\xd7\xb8\x07\xf4\x9d\x3b\x95\xd3\xa0\x01\x8b\x0c\x22\x22\xfa\ +\xf6\x35\xb1\x43\xf8\xe1\x5c\x3f\x8e\xd8\x89\x88\x05\x50\xb5\xf3\ +\xe8\xf7\x87\x39\x91\x5b\xba\xfd\x59\xbd\x14\x9e\x64\x7e\xbe\x72\ +\xe6\xce\x8d\x7f\x48\x9f\x3a\x95\x85\x06\x11\x11\x7d\xf9\x8e\xd8\ +\x3b\xfc\x70\xfe\xa5\x38\x9e\x78\x05\x50\x75\x1a\x24\x42\xec\x8f\ +\xae\xed\x27\xbe\xeb\xb5\x08\x15\x16\x2a\x67\xfe\xfc\x78\x07\xf4\ +\xca\x4a\xe5\xb4\x6a\xc5\x82\x83\x88\x88\x9e\xdc\x23\x0e\x0f\x3f\ +\x9c\x2b\xf7\x97\x79\x00\xc8\x12\x3d\xc4\x8f\xc3\x9c\xd4\x27\x88\ +\xef\x7b\x2d\x46\xd5\xab\x2b\xe7\xe2\x8b\xe3\x1d\xd2\x17\x2f\x56\ +\x4e\x5e\x1e\x0b\x0f\x22\x22\x1e\xfc\xd7\x65\x71\x92\x1d\xe1\xfc\ +\x0e\x31\x9f\x48\x05\x90\x5d\x26\x87\x3d\xb9\x4f\x76\x0b\x8d\xa7\ +\xa2\x54\xbb\xb6\x72\xd6\xac\x89\x75\x48\x4f\x76\xef\xce\xe2\x83\ +\x88\x88\x07\x75\x9a\x1d\xe1\xfc\x05\xb1\x8c\x28\x05\x10\x0c\x57\ +\x85\x3d\xc9\x17\xf9\xe9\x91\xde\xa4\x89\x4a\x6d\xda\x14\xdf\x90\ +\xbe\x6a\x55\xfa\x48\x0f\x0b\x10\x22\x22\x1e\xc0\xe5\x76\x84\xf3\ +\xbf\x88\xed\x89\x50\x00\xc1\x51\x28\x3e\x14\xf6\x64\x5f\xe5\xa7\ +\x40\x95\x97\xab\xd4\xc6\x8d\xf1\x0d\xe9\x23\x46\xb0\x08\x21\x22\ +\xe2\xd7\x5c\x63\x47\x38\xd7\xc7\x63\xfb\x13\x9f\x00\x82\xe7\x70\ +\xf1\x0f\x61\x4e\xf8\x02\xf1\x3a\x3f\x85\xea\xb0\xc3\x94\xb3\x79\ +\x73\x3c\x8f\xb9\x6c\xdd\xaa\x9c\x5a\xb5\x58\x8c\x10\x11\xf1\x3f\ +\x5e\x2f\x16\xda\x11\xd0\x67\x10\x9b\x00\xcc\x31\x44\xfc\x57\x98\ +\x93\xbe\x58\xfc\x89\x9f\x82\x75\xc4\x11\xca\xb9\xfc\xf2\x78\xee\ +\xa2\x4f\x9e\xcc\x82\x84\x88\x88\xfb\xfc\xb1\xbb\x46\x5a\x10\xce\ +\x37\x10\x97\x00\xcc\x33\x29\x91\xee\x67\x1a\xda\xe4\x2f\x13\xef\ +\xf5\x53\xb8\x5a\xb6\x54\xce\xb6\x6d\xf1\x0b\xe8\x15\x15\xca\x69\ +\xda\x94\x85\x09\x11\x31\xc7\xbd\x53\x2c\xb1\x23\x9c\x7f\x4f\xcc\ +\x23\x2a\x01\x84\xc3\xba\xb0\x8b\x40\x7d\xf1\x51\x3f\x05\xac\x7d\ +\x7b\x95\xda\xb1\x23\x7e\x21\x7d\xc1\x02\x16\x27\x44\xc4\x1c\xf6\ +\x21\xb1\xae\x1d\xe1\xfc\xd7\x62\x35\x22\x12\x40\x78\xe8\x97\x46\ +\xef\x0c\xbb\x18\xb4\x11\x5f\xf6\x53\xc8\x3a\x76\x54\xa9\x9d\x3b\ +\xe3\x17\xd2\x3b\x77\x66\x91\x42\x44\xcc\x41\x9f\x15\x9b\xd9\x11\ +\xce\xdf\x13\x1b\x13\x8f\x00\xc2\xa7\x44\xfc\x4d\xd8\x45\xa1\xab\ +\xf8\x86\x9f\x82\xd6\xad\x9b\x72\x76\xed\x8a\x55\x40\x4f\xad\x58\ +\xa1\x9c\x82\x02\x16\x2b\x44\xc4\x1c\x52\x16\x60\x75\x18\xed\x14\ +\x01\xe0\x00\x34\x17\x7f\x1f\x76\x71\x38\x2e\x91\x7e\xce\xd8\x73\ +\x61\x3b\xfa\x68\x95\xd2\xe7\xb7\xe3\xb4\x8b\x3e\x78\x30\x0b\x16\ +\x22\x62\x8e\xf8\x82\xd8\xd6\x8e\x70\xfe\x99\x38\x8a\x38\x04\x60\ +\x1f\x47\x8b\xff\x08\xbb\x48\x8c\xf2\x19\xd2\x53\x03\x07\x2a\xa7\ +\xb2\x32\x3e\x01\x5d\xf7\x7c\x2f\x29\x61\xe1\x42\x44\x8c\xb9\xcf\ +\x8b\xad\xec\x08\xe7\xb4\x53\x04\xb0\x9c\x09\xe2\x17\x61\x17\x8a\ +\x13\xc5\xf7\xfd\x14\xba\x63\x8e\x49\x77\x42\x89\xcb\x51\x97\xd3\ +\x4e\x63\xf1\x42\x44\x8c\xb1\x2f\x89\x1d\xed\x09\xe7\xb4\x53\x04\ +\x88\x00\xcb\x6d\x28\x18\xa7\x8a\x7b\xfd\x14\xbc\x1e\x3d\xe2\x73\ +\xdc\x45\xff\x22\xd0\xa2\x05\x8b\x18\x22\x62\x0c\x7d\x45\x3c\xd2\ +\x9e\x70\xfe\xc3\x04\xed\x14\x01\x22\x81\x9e\xa8\xb7\xda\x50\x38\ +\xe6\xf9\x2d\x7c\x71\x0a\xe9\x4b\x96\x28\x27\x2f\x8f\xc5\x0c\x11\ +\x31\x46\xbe\x29\xf6\xb4\x27\x9c\x3f\x25\x96\x11\x7b\x00\xa2\x43\ +\x75\xf1\x71\x1b\x0a\xc8\x1c\x9f\xc5\x2f\xd9\xbd\x7b\x7c\x42\xfa\ +\x80\x01\x2c\x68\x88\x88\x31\x51\x77\x2a\xeb\x61\x4f\x38\x7f\x5e\ +\xac\x4d\xdc\x01\x88\x1e\x4d\xc5\x77\x6d\x28\x24\xcb\xfd\x16\xc2\ +\xa3\x8f\x8e\x47\x0b\xc6\xcd\x9b\x55\xb2\xac\x8c\x85\x0d\x11\x31\ +\xe2\xca\x62\xaa\x06\xd9\x13\xce\xdf\x17\x9b\x11\x73\x00\xa2\x4b\ +\x2b\x31\x65\x43\x41\xb9\xc4\xef\x4e\xfa\x51\x47\xc5\x23\xa4\x9f\ +\x71\x06\x8b\x1b\x22\x62\x84\x7d\x47\x1c\x68\x4f\x38\xd7\x6b\x7a\ +\x6b\xe2\x0d\x40\xf4\xe9\x22\xfe\x35\xec\xa2\x92\x27\xae\xf7\x5b\ +\x18\x3b\x77\x8e\xfe\x8b\xa3\xfa\xc2\x68\xcb\x96\x2c\x72\x88\x88\ +\x11\xdd\x39\x1f\x6c\x4f\x38\xd7\x6b\x79\x57\x62\x0d\x40\x7c\x38\ +\x5e\xfc\x34\xec\xe2\x52\x20\x5e\xe1\xb7\x40\x76\xea\xa4\x9c\x1d\ +\x3b\xa2\x1d\xd2\x97\x2e\x55\x4e\x7e\x3e\x8b\x1d\x22\x62\x84\xd4\ +\x6f\x7a\x8c\xb5\x27\x9c\xff\x4b\x1c\x41\x9c\x01\x88\x1f\xa7\x26\ +\x2c\xe8\x91\x9e\x9f\x41\x48\x4f\xc5\x21\xa4\xf3\xc2\x28\x22\x62\ +\xa4\x76\xce\x8f\xb5\x27\x9c\xeb\x57\x42\xc7\x12\x63\x00\xe2\xcb\ +\x45\x36\x14\x9b\x22\xf1\x1a\xbf\x21\xbd\x6b\xd7\x68\x1f\x77\xd9\ +\xbc\x59\x39\x5c\x18\x45\x44\xb4\xde\xdd\x89\xf4\xab\xd8\x09\x7b\ +\x3c\x87\xf8\x02\x10\x7f\x36\xd8\x50\x70\xf4\x71\x97\xed\x7e\x43\ +\x7a\x9b\x36\xca\xd9\xb2\x25\xba\x21\xfd\xcc\x33\x59\xfc\x10\x11\ +\x2d\xef\x73\xde\xd7\xae\x70\xbe\x94\xd8\x02\x90\x1b\xe8\x87\x8c\ +\xae\xb5\xa1\xf0\xe8\x8b\xa3\x1b\xfc\x16\xd0\x23\x8e\x50\xa9\x4d\ +\x9b\xa2\x7b\x61\xb4\x6d\x5b\x16\x41\x44\x44\x4b\xc3\x79\x1f\xbb\ +\xc2\xf9\x16\x22\x0b\x40\x6e\x51\x20\xde\x6e\x4b\x48\xf7\xdd\xdd\ +\xa5\x71\x63\xe5\xac\x5b\x17\xcd\x90\xbe\x7c\xb9\x72\x0a\x0a\x58\ +\x0c\x11\x11\x2d\x7b\x84\xa8\x97\x5d\xe1\xfc\x3a\x77\x43\x0d\x00\ +\x72\x8c\x9a\xe2\x33\x36\x14\xa2\xfc\x0c\x8e\xbb\x38\xe5\xe5\xd1\ +\x0d\xe9\x43\x87\xb2\x20\x22\x22\x5a\xe2\x5b\x62\x7f\xbb\xc2\xf9\ +\xbd\x62\x35\x62\x0a\x40\xee\x52\x5f\x7c\xc5\x96\x9d\xf4\xb5\x7e\ +\xcf\xa4\xd7\xae\xad\x92\x97\x5c\x12\xb9\x80\x9e\xd2\x1d\x69\x1a\ +\x36\x64\x61\x44\x44\x0c\x59\x59\x00\x55\x57\xbb\xc2\xf9\xcf\x09\ +\xe7\x00\xa0\xd1\xaf\x8d\x3a\xb6\x84\xf4\x4d\x7e\x0b\x6c\x69\xa9\ +\x72\x2e\xbc\x30\x7a\xbb\xe8\xe7\x9f\xaf\x9c\xbc\x3c\x16\x48\x44\ +\xc4\x90\x7c\x5d\xec\x69\x57\x38\x7f\x4c\x2c\x23\x96\x00\xc0\xbf\ +\x69\x23\x26\x6d\x29\x52\x4b\xfd\x16\xda\x92\x12\xe5\x2c\x5a\x14\ +\xbd\x9d\xf4\x3e\x7d\x58\x24\x11\x11\x43\xf0\x25\xb1\x93\x5d\xe1\ +\xfc\x21\xb1\x06\x71\x04\x00\xfe\x3f\x47\x89\x7f\x89\xec\x71\x97\ +\x6a\xd5\x94\x73\xee\xb9\xd1\xeb\x8d\x5e\xb3\x26\x8b\x25\x22\xa2\ +\x41\x5f\x15\xbb\xd9\x15\xce\x9f\x17\xeb\x12\x43\x00\xe0\x9b\xe8\ +\x25\x7e\x60\x4b\x48\x5f\x95\x49\x48\x9f\x37\x2f\x52\x21\x3d\x39\ +\x75\x2a\x0b\x26\x22\xa2\xc1\x9d\x73\xcb\xce\x9c\xbf\x28\x36\x20\ +\x7e\x00\xc0\xa1\x18\x28\x7e\x64\x4b\xf1\x5a\xee\xb7\x00\xe7\xe7\ +\x2b\xe7\xf4\xd3\xa3\xb5\x93\xde\xa5\x0b\x0b\x27\x22\x62\xc0\x3e\ +\x2f\xb6\xb3\x2b\x9c\xbf\x2a\x96\x13\x3b\x00\xc0\x2b\xfd\xc4\xbf\ +\xdb\x52\xc4\x66\x88\x49\x3f\x85\x58\x5f\xbe\x1c\x3d\x3a\x3a\xbb\ +\xe8\x6b\xd7\x2a\xa7\xb8\x98\x05\x14\x11\x31\x20\x1f\x11\x0f\xb3\ +\x2b\x9c\xbf\x24\x36\x24\x6e\x00\x80\x5f\x8e\x13\x3f\xb6\xa5\x98\ +\x4d\x11\xf7\xfa\x2d\xca\x43\x86\xa4\x5f\xef\x8c\x42\x50\x3f\xf9\ +\x64\x16\x51\x44\xc4\x00\xfc\x95\xd8\xc0\xae\x70\xfe\x0a\x3b\xe7\ +\x00\x50\x15\x46\x89\x9f\xd8\x52\xd4\x4e\x12\x77\xfb\x2d\xce\xbd\ +\x7a\x29\x67\xd7\x2e\xfb\x03\xba\xfe\x22\xd1\xb2\x25\x8b\x29\x22\ +\x62\x16\xbd\x53\xac\x65\x57\x38\x7f\x5b\x3c\x9c\x78\x01\x00\x55\ +\x65\x82\xf8\x99\x2d\xc5\x6d\xb8\xf8\xae\xdf\x22\xdd\xb9\xb3\x72\ +\xb6\x6f\xb7\x3f\xa4\xeb\x47\x97\x0a\x0a\x58\x54\x11\x11\xb3\xe0\ +\x4d\x62\x0d\xbb\xc2\xb9\x2c\x5f\x89\x66\xc4\x0a\x00\xc8\x16\x73\ +\xc4\x2f\x6d\x29\x72\x23\xc4\xf7\xfc\x16\xeb\x16\x2d\xd2\x6d\x0d\ +\x6d\x0f\xe9\x23\x46\xb0\xb0\x22\x22\x56\xd1\x1f\x88\x25\x76\x85\ +\xf3\x3f\x88\x1d\x89\x13\x00\x90\x6d\xce\xb3\xa8\xd0\xa9\x81\xe2\ +\x5b\x7e\x8b\x76\x93\x26\xca\x59\xb7\xce\xee\xc7\x8b\x76\xee\x54\ +\x4e\x79\x39\x0b\x2c\x22\x62\x86\x5e\x23\x16\xd9\x15\xce\xff\x57\ +\xec\x4e\x8c\x00\x80\xa0\xb8\xd8\xa6\x90\xae\x9f\x68\x7e\xcd\x67\ +\xe1\x4e\x36\x6a\xa4\x9c\x35\x6b\xec\xde\x45\xd7\x0f\x2e\xe9\x4e\ +\x34\x2c\xb4\x88\x88\xbe\xdc\x2e\x16\xd8\x15\xce\xff\x28\x76\x23\ +\x3e\x00\x40\xd0\x5c\x68\x53\x48\xef\xe2\x3e\x3c\xe1\xeb\x41\xa3\ +\x3a\x75\x54\x52\x9f\xf7\xb6\xb9\xf5\x62\xbf\x7e\x2c\xb6\x88\x88\ +\x3e\xd4\x2f\x50\xe7\xd9\x15\xce\x7f\x2f\x76\x26\x36\x00\x80\x29\ +\x16\x26\x2c\x3a\x93\xde\xce\x7d\x80\xc2\x57\x31\x2f\x2e\x56\xa9\ +\x73\xce\xb1\x37\xa4\x6f\xdf\xae\x92\x0d\x1a\xb0\xe8\x22\x22\x7a\ +\xf0\x42\xbb\x82\xb9\x56\xfe\xb1\x38\x73\x0e\x00\xe6\x99\x25\x7e\ +\x61\x4b\x31\xd4\x0f\x50\x3c\xe6\xb7\xa8\x17\x16\xaa\xe4\xf4\xe9\ +\xf6\x86\xf4\xf3\xce\xe3\xa8\x0b\x22\xe2\x41\xdc\x23\x9e\x6a\x5f\ +\x38\xd7\xad\x14\x9b\x13\x13\x00\x20\x2c\xe6\xd9\xb4\x93\xde\x44\ +\x7c\xd8\x6f\x81\xd7\x01\xf8\xa4\x93\xec\xbd\x34\x3a\x70\x20\x8b\ +\x30\x22\xe2\x01\xd4\xef\x62\x9c\x6c\x5f\x38\x97\xef\x0c\x89\x36\ +\xc4\x03\x00\x08\x9b\xc9\x09\x8b\xfa\xa4\xeb\x07\x29\x7e\x92\x49\ +\xb1\x1f\x3a\xd4\xce\x57\x47\x75\xff\x76\x8e\xba\x20\x22\x7e\xc5\ +\xd7\xc5\xfe\xf6\x85\xf3\x37\xc5\x23\x88\x05\x00\x60\x0b\xa7\xda\ +\x14\xd2\xab\x89\xd7\x66\x52\xf4\x7b\xf6\x54\x8e\x6e\x73\x68\x5b\ +\x48\x5f\xb0\x80\xa3\x2e\x88\x88\xae\x2f\x8a\xdd\xec\x0b\xe7\x2f\ +\x8b\x8d\x89\x03\x00\x60\x1b\x93\x6c\x0a\xe9\xba\xcd\xd6\xd6\x4c\ +\x8a\x7f\xfb\xf6\xca\xd9\xba\xd5\xbe\x90\xde\xbf\x3f\x0b\x33\x22\ +\xe6\xbc\x4f\x8b\x6d\xec\x0b\xe7\xf2\x9d\x21\x51\x4e\x0c\x00\x00\ +\x5b\x99\x28\x7e\x6a\x4b\xd1\xd4\xed\xb6\x96\x67\xb2\x08\x34\x6d\ +\x6a\xdf\x83\x46\xf2\xa5\x21\x55\xaf\x1e\x0b\x34\x22\xe6\xac\xf7\ +\x8b\xe5\xf6\x85\xf3\x17\xc4\x46\x2c\xff\x00\x60\x3b\x27\xdb\x14\ +\xd2\xb5\xb3\xf4\x03\x45\x7e\x17\x83\xfa\xf5\x95\xb3\x62\x05\x47\ +\x5d\x10\x11\x2d\xf0\x2e\xb1\x8e\x7d\xe1\xfc\xb7\x62\x43\x96\x7d\ +\x00\x88\x0a\x56\x9d\x49\xd7\x4e\x17\xf7\xfa\x5d\x14\x4a\x4b\x95\ +\xb3\x68\x91\x5d\x21\x9d\x07\x8c\x10\x31\xc7\xbc\xdd\x6d\x00\x60\ +\x59\x38\x7f\x5a\x6c\xc0\x72\x0f\x00\x1c\x77\xa9\xa2\x63\xdd\xb6\ +\x5c\xbe\x16\x87\x92\x92\xf4\xce\xb5\x2d\x01\x7d\xf3\x66\x95\xaa\ +\x5d\x9b\x45\x1b\x11\x73\xc2\x1b\xc4\xea\xf6\x85\xf3\x87\xc5\x5a\ +\x2c\xf3\x00\x10\x55\x4e\x12\x3f\xb1\xa9\xb0\x0e\x12\xdf\xf4\xbb\ +\x48\xe4\xe7\xab\xd4\x69\xa7\xd9\x13\xd2\xe7\xcf\xe7\xa8\x0b\x22\ +\xc6\xde\x1d\x62\xa1\x7d\xe1\xfc\x1e\xb1\x06\xcb\x3b\x00\x44\x9d\ +\xe1\xe2\x3f\x6c\x2a\xb0\x47\x89\x2f\x65\xf2\xa0\xd1\x98\x31\xf6\ +\x84\xf4\x5e\xbd\x58\xc0\x11\x31\xb6\xae\x72\x2f\xfa\x5b\x16\xce\ +\x6f\x17\x8b\x59\xd6\x01\x20\x2e\xf4\x17\xff\x6a\x53\xa1\x6d\xe3\ +\xb6\xeb\xf2\xbd\x70\xe8\x60\x6c\x43\xaf\x74\xfd\x80\x51\xc3\x86\ +\x2c\xe4\x88\x18\x2b\xf5\x85\xfe\x79\xf6\x05\x73\xed\x8d\x62\x21\ +\xcb\x39\x00\xc4\x8d\xa3\xc5\x3f\xda\x54\x70\x1b\x8a\xf7\x66\xda\ +\x2b\x7d\xcb\x96\xf0\x43\xba\xbe\xc0\x9a\x9f\xcf\xa2\x8e\x88\xb1\ +\x50\xdf\x11\x9a\x68\x67\x38\xff\xb6\x98\xcf\x32\x0e\x00\x71\xa5\ +\xa5\xf8\x96\x4d\x85\xb7\xc4\xbd\x84\xe4\x7b\x31\x69\xd2\x44\x25\ +\xd7\xae\x0d\x3f\xa4\x8f\x18\xc1\xc2\x8e\x88\x91\xf7\x35\xb1\x9f\ +\x9d\xe1\x7c\x09\x4b\x37\x00\xe4\x02\x4d\x12\xe9\x57\xd7\xac\x29\ +\xc0\xfa\xd5\xd1\x4d\x19\x2c\x28\xfb\xba\xa9\x2c\x5d\x1a\x6e\x40\ +\xdf\xb5\x4b\x39\xcd\x9b\xb3\xc0\x23\x62\x64\x7d\x46\x6c\x6f\x5f\ +\x30\xff\x52\x3c\x97\x25\x1b\x00\x72\x09\xfd\xea\xda\xf3\xb6\xed\ +\x94\x9c\x93\xc9\xe2\x52\x5c\xac\x9c\x79\xf3\x42\x0d\xe9\xa9\x4b\ +\x2f\x55\x4e\x51\x11\x0b\x3d\x22\x46\xce\x87\xc5\xc3\xed\x0b\xe7\ +\x5f\x88\x73\x58\xaa\x01\x20\x17\xa9\x23\x3e\x6a\x5b\x48\x3f\x55\ +\xdc\xe3\xf7\x52\x93\x3e\x07\x3e\x79\x72\xb8\x3b\xe9\x13\x27\xb2\ +\xd8\x23\x62\xa4\xfc\xa9\x58\xdb\xbe\x70\xae\xdf\xef\x98\xcc\x12\ +\x0d\x00\xb9\x8c\xee\x25\x7b\xaf\x6d\x21\x7d\x84\xf8\x76\x26\x6d\ +\x18\x47\x8f\x56\x4e\x65\x65\x38\x01\x5d\xff\xe7\x1e\x79\x24\x8b\ +\x3e\x22\x46\xc2\x6b\xc4\x6a\xf6\x85\xf3\x8f\xc5\x13\x59\x9a\x01\ +\x00\xd2\x21\xfd\x6e\xdb\x42\x7a\x7f\xf7\xd2\x92\xef\x85\xa7\x4f\ +\x9f\xf4\xb9\xf0\x30\x42\xfa\xba\x75\xca\x29\x2d\x65\xf1\x47\x44\ +\xab\xdd\x25\x16\xd9\x17\xce\x3f\x12\x47\xb3\x24\x03\x00\xfc\x97\ +\x6a\xe2\x8f\x6c\x0b\xe9\x1d\xc5\xe7\x33\x59\x80\x3a\x74\x50\xce\ +\xd6\xad\xe1\x84\xf4\x19\x33\x08\x00\x88\x68\xad\xcb\xed\x7c\x80\ +\xe8\x2f\x62\x3f\x96\x62\x00\x80\x03\x87\xf4\x9b\x6d\x0b\xe9\xfa\ +\xf2\xd2\x43\x99\x2c\x44\x4d\x9b\xa6\x77\xb4\xc3\x08\xe9\xc7\x1c\ +\x43\x10\x40\x44\xab\xdc\x2b\x7e\xcb\xce\x36\x8a\xf2\x8f\x96\xe8\ +\xcc\x12\x0c\x00\xf0\xcd\xe8\x87\x20\xae\xb0\xad\x80\xd7\x15\xef\ +\xcc\xa4\x0d\x63\x9d\x3a\xca\x59\xb6\xcc\x7c\x40\xdf\xb2\x45\xa5\ +\xea\xd5\x23\x14\x20\xa2\x15\xbe\x2b\x8e\xb1\x33\x9c\xbf\x26\x36\ +\x67\xe9\x05\x00\xf0\xc6\x4a\xdb\x0a\x79\x75\xf1\xbb\x99\x2c\x4e\ +\x25\x25\xca\x39\xff\x7c\xf3\x21\x7d\xc1\x82\xf4\xc5\x55\xc2\x01\ +\x22\x86\xe8\xab\x62\x6f\x3b\xc3\xf9\xd3\x62\x43\x96\x5b\x00\x00\ +\x7f\x4c\x15\x3f\xb3\xa9\xa0\xeb\x73\x93\x8b\x32\x59\xa4\x74\x8f\ +\xf2\xd9\xb3\xcd\xf7\x47\x1f\x3c\x98\x80\x80\x88\xa1\xf9\xa8\xd8\ +\xdc\xce\x70\xfe\xb3\x44\xba\x41\x01\x00\x00\x64\xc0\x18\xf1\x9f\ +\xb6\x15\xf7\x59\xee\x79\xca\x8c\xda\x30\x9a\x0c\xe8\x3b\x77\x2a\ +\xe7\x88\x23\x08\x0a\x88\x68\xdc\x3b\xdd\xe3\x81\x16\x86\xf3\x6b\ +\xc5\x02\x96\x57\x00\x80\xaa\x31\x48\xfc\x9b\x6d\x45\x7e\x54\x26\ +\xbd\xd2\xb5\x7d\xfb\xaa\x54\x45\x85\xd1\x57\x46\x53\xd5\xaa\x11\ +\x18\x10\xd1\x98\x37\x88\x35\xec\x0c\xe7\x9b\xc4\x3c\x96\x55\x00\ +\x80\xec\xd0\x29\x91\xbe\x69\x6f\x55\xb1\xef\x2e\xbe\x90\xc9\x02\ +\xd6\xb1\xa3\x4a\x1a\x6c\xc3\x98\xd2\xaf\x9c\x12\x1a\x10\xd1\x80\ +\x92\x80\x55\x81\x7d\xc1\xfc\x4b\xf1\x3c\x96\x52\x00\x80\xec\xd3\ +\x52\x7c\xc3\xb6\x90\xde\xdc\x3d\x67\xe9\x7b\x21\x6b\xd5\x4a\x39\ +\x9b\x37\x9b\x7b\x65\xb4\x53\x27\xc2\x03\x22\x06\xea\x39\x76\xee\ +\x9a\xeb\xbb\x4c\x67\xb2\x84\x02\x00\x04\x47\xb9\xf8\x9c\x6d\x0b\ +\x80\x3e\x67\x79\x47\x26\x0b\x5a\xfd\xfa\xca\x59\xb1\xc2\x4c\x48\ +\xbf\xfc\x72\x5a\x2f\x22\x62\x20\xee\x16\x4f\xb5\x33\x9c\xeb\x3b\ +\x4c\x63\x58\x3a\x01\x00\x82\xa7\x9e\xf8\x84\x6d\x0b\x41\x99\xf8\ +\x83\x4c\x16\xb7\xd2\x52\xe5\x5c\x70\x81\x99\x90\xae\xdb\x3d\xe6\ +\xe7\x13\x28\x10\x31\xab\x3d\xce\x4f\xb0\x37\x9c\x9f\xc8\x92\x09\ +\x00\x60\x8e\xd2\x44\xba\x4d\x96\x55\x0b\x42\xa1\xb8\x35\x83\x05\ +\x2e\x59\x58\xa8\x9c\x59\xb3\xcc\x84\xf4\xe1\xc3\x09\x15\x88\x98\ +\x15\x5f\x11\x7b\xd9\x19\xce\xff\x2c\xf6\x63\xa9\x04\x00\x30\x8f\ +\x6e\x93\x75\xb5\x85\x0b\x83\x5a\xa8\x43\xb7\xdf\xc5\x2e\x3f\x5f\ +\x25\x27\x4d\x0a\x3e\xa0\xef\xda\xa5\x9c\x16\x2d\x08\x17\x88\x58\ +\x25\x9f\x12\xdb\xda\x19\xce\x77\x8b\x1d\x59\x22\x01\x00\xc2\xc5\ +\xba\x57\x47\xb5\x93\xdc\x73\x99\xbe\x17\xbe\xa1\x43\xd3\x97\x3a\ +\x83\xec\xea\xb2\x7a\xb5\x4a\x55\xaf\x4e\xc8\x40\xc4\x8c\xfc\x95\ +\x58\x6e\x67\x38\x7f\x41\x3c\x8c\x65\x11\x00\xc0\x0e\xa6\x88\x9f\ +\xda\xb6\x58\xf4\x10\x5f\xca\x64\x01\x3c\xfa\x68\xe5\xec\xd8\x11\ +\xec\x4e\xfa\x94\x29\x04\x0d\x44\x8c\x53\x8f\xf3\x5f\x24\xd2\xc7\ +\x1f\x01\x00\xc0\x22\x86\x89\x1f\xd8\xb6\x68\xb4\x10\x1f\xcf\x64\ +\x21\x6c\xdf\x5e\x39\x5b\xb6\x04\x1b\xd2\x7b\xf4\x20\x70\x20\xa2\ +\x67\x37\xda\xd9\xe3\xfc\xdf\xaf\x83\x16\xb2\x0c\x02\x00\xd8\x49\ +\x97\x84\x85\x0f\x1a\x35\x12\xef\xc9\xe4\xf2\x68\xb3\x66\x2a\xb5\ +\x71\x63\x70\x01\x7d\xd3\x26\xe5\xd4\xae\x4d\xf0\x40\xc4\x83\xd7\ +\x22\x7b\x7b\x9c\x6b\x57\x25\x78\x1d\x14\x00\xc0\x7a\xf4\x83\x46\ +\xaf\xd9\xb6\x88\xd4\x70\x7f\x1a\xf6\xbd\x38\xea\x00\xbd\x6c\x59\ +\x70\xe7\xd1\x2f\xbc\x50\x39\x05\x05\x84\x10\x44\x8c\x5a\x8f\xf3\ +\x2f\xc4\x05\x2c\x79\x00\x00\xd1\x41\xf7\x4a\x7f\xcc\xb6\x05\x45\ +\xff\x34\xbc\x21\x93\x45\xb2\xa4\x24\xdd\xc3\x3c\xa8\x9d\xf4\xb1\ +\x63\x09\x22\x88\xf8\x35\xdf\x10\x07\xd9\x19\xce\x3f\x16\x27\xb0\ +\xd4\x01\x00\x44\x0f\x2b\x7b\xa5\x6b\x67\x89\x7b\xfd\x2e\x96\x85\ +\x85\x2a\x39\x7d\x7a\x30\x01\x5d\x77\x8d\xe9\xd8\x91\x40\x82\x88\ +\xff\xf1\x77\x62\x37\x3b\xc3\xf9\xdf\xc4\xa1\x2c\x71\x00\x00\xd1\ +\x45\xf7\x4a\xbf\xc6\xc6\x90\x3e\xc6\x7d\x81\xcf\xd7\xa2\x99\x97\ +\xa7\x9c\xd1\xa3\x83\x09\xe9\xfa\xac\x3b\xe7\xd1\x11\x51\x7c\x44\ +\x6c\x66\x67\x38\x7f\x5f\xec\xcc\xd2\x06\x00\x10\x7d\xf2\xc5\x6d\ +\x36\x86\xf4\x63\xc5\x37\x33\x59\x40\x87\x0c\x09\xa6\x57\xba\x3e\ +\x46\x93\x9f\x4f\x40\x41\xcc\x61\x7f\x69\x6f\x8f\xf3\x77\xc4\xf6\ +\x2c\x69\x00\x00\xf1\x62\x51\x22\x7d\xa9\xc8\xaa\x45\xa7\x8b\xf8\ +\x7c\x26\x0b\x69\xb7\x6e\x2a\x15\x44\xaf\xf4\xe3\x8f\x27\xa4\x20\ +\xe6\xa8\x37\x8b\x65\x76\x86\xf3\x67\xc5\xc6\x2c\x63\x00\x00\xf1\ +\x64\xac\xf8\x91\x6d\x8b\x4f\xb9\xbb\x6b\xe5\x77\x31\x4d\xb5\x6c\ +\x99\x6e\x95\x98\xed\xf3\xe8\xba\x07\x3b\x61\x05\x91\x1e\xe7\x76\ +\x78\xa7\x58\x83\xe5\x0b\x00\x20\xde\x0c\x14\xff\x6c\xdb\x22\x54\ +\x5b\xbc\x3d\x93\x85\xb5\x61\x43\xe5\xac\x5a\x95\xdd\x90\xbe\x6e\ +\x9d\x72\xca\xca\x08\x2d\x88\x39\xe2\x72\x31\xcf\xce\x70\xfe\x5d\ +\xb1\x88\x65\x0b\x00\x20\x37\xe8\x90\x48\x9f\x67\xb4\x6a\x31\xaa\ +\x26\x5e\x9b\xc9\x02\x5b\xab\x96\x72\x96\x2e\xcd\x6e\x48\x9f\x37\ +\x2f\x7d\x29\x95\xf0\x82\x18\xeb\x07\x88\xe6\xda\xfb\x00\xd1\xba\ +\x04\x0f\x10\x01\x00\xe4\x1c\xba\x57\xfa\xc3\xb6\x2d\x4a\x7a\x17\ +\xeb\x92\x4c\x16\xdb\xe2\xe2\x74\xa8\xce\x66\x48\x1f\x36\x8c\x10\ +\x83\x18\x53\xdf\x11\x47\xd9\x19\xcc\x3f\x15\xcf\x64\x89\x02\x00\ +\xc8\x5d\x8a\xc5\x9b\x6c\xdc\x3d\xca\xa4\x57\x7a\x52\x77\x60\x39\ +\xfd\xf4\xec\x05\xf4\x5d\xbb\x94\xa3\xcf\xb9\x13\x66\x10\x63\xe5\ +\x4b\x62\x0f\x3b\xc3\xf9\x07\xe2\x71\x2c\x4d\x00\x00\xa0\x7f\x42\ +\xdd\x68\x63\x48\x3f\xde\xdd\xe5\xf2\xdd\x2b\x7d\xc2\x84\xec\x85\ +\xf4\x95\x2b\x55\xaa\x7a\x75\x42\x0d\x62\x4c\x7c\x5a\x6c\x67\x67\ +\x38\xdf\x2b\x76\x65\x49\x02\x00\x80\xfd\x39\x2f\x61\x61\x1b\x46\ +\xbd\xcb\xf5\x62\x26\x0b\xf1\x71\xc7\x65\xaf\x57\xfa\xcc\x99\x04\ +\x1b\xc4\x18\x78\x9f\xbd\x3d\xce\x5f\x15\x5b\xb2\x0c\x01\x00\xc0\ +\x81\x18\x2f\xfe\xd3\xb6\xc5\xab\x85\xf8\x58\x86\xbd\xd2\x9d\x6c\ +\xf5\x4a\xe7\x3c\x3a\x62\xa4\xd5\x5d\xa2\x6a\xd9\x19\xce\x1f\x49\ +\xa4\xef\x04\x01\x00\x00\x7c\x23\x7d\xc4\x3f\xda\xb6\x88\x35\x14\ +\xef\xce\x64\x61\x6e\xdb\x56\x39\x5b\xb6\x54\x39\xa0\xa7\x2a\x2a\ +\x94\xd3\xba\x35\x41\x07\x31\x82\x5e\xe5\x76\x89\xb2\x30\x9c\xdf\ +\x9a\x48\xdf\x05\x02\x00\x00\x38\x24\xad\xc5\xd7\x6d\x5b\xcc\x6a\ +\x88\x37\x64\xf2\xa0\x51\xd3\xa6\xe9\xde\xe6\x59\xe8\x8f\x9e\xa4\ +\x3f\x3a\x62\xa4\x5c\x67\xef\x03\x44\x57\x88\x05\x2c\x37\x00\x00\ +\xe0\x87\xfa\xe2\xa3\xb6\x2d\x6a\x7a\xa1\xdd\x90\xc9\x42\x5d\xbf\ +\xbe\x72\x56\xac\xa8\x7a\x48\x5f\xb0\x40\x39\xba\x5b\x0c\xc1\x07\ +\xd1\xfa\x1e\xe7\xb3\xec\x0c\xe6\x5f\x26\xd2\x77\x7e\x00\x00\x00\ +\x32\xa2\xa6\x78\xaf\x6d\x0b\x9c\xee\x95\xbe\x24\x93\x45\xbb\xb4\ +\x54\x39\x8b\x16\x55\x3d\xa4\x9f\x70\x02\x01\x08\xd1\x62\xdf\x17\ +\xcf\xb4\x33\x9c\x7f\x2e\x9e\xc5\xd2\x02\x00\x00\x55\x45\x3f\x33\ +\x7d\xbd\x85\x0b\x9d\x9a\x22\xee\xf1\xbb\x78\x57\xab\x56\xf5\x07\ +\x8d\x74\x77\x98\x8e\x1d\x09\x42\x88\x3c\x40\xe4\xc7\x8f\xc4\xb1\ +\x2c\x29\x00\x00\x90\x4d\xac\x6c\xc3\x38\x40\x7c\x2d\x93\x07\x8d\ +\xce\x38\xa3\x6a\x97\x46\x37\x6d\x52\x4e\x9d\x3a\x04\x22\x44\x8b\ +\x7c\x41\xec\x66\x6f\x8f\xf3\x2e\x2c\x23\x00\x00\x10\x04\x27\x8b\ +\x1f\xdb\xb6\xf8\x75\x10\x9f\xc9\xe4\x41\xa3\xd1\xa3\xab\xb6\x93\ +\xbe\x78\xb1\x72\x0a\x0b\x09\x46\x88\x16\xa8\x5b\xb1\x36\xb7\xb7\ +\xc7\x79\x0b\x96\x0f\x00\x00\x08\x92\x7e\xe2\x9f\x6c\x5b\x04\xf5\ +\xe3\x23\xbf\xca\x64\x61\x1f\x35\xaa\x6a\x0f\x1a\x8d\x1d\x4b\x38\ +\x42\x0c\xd9\x7b\xdc\x56\xac\x16\x86\x73\x7a\x9c\x03\x00\x80\x31\ +\x8e\x14\xdf\xb3\x6d\x31\x2c\x13\x7f\x98\xc9\x02\xdf\xb3\xa7\x72\ +\x76\xed\xca\xfc\x3c\xfa\x51\x47\x11\x92\x10\x43\xf2\xfb\x6e\x0b\ +\x56\x0b\xc3\x39\x3d\xce\x01\x00\xc0\x38\x8d\xc5\x67\x6c\x5b\x14\ +\x8b\xc4\x8a\x4c\x16\xfa\xa3\x8f\x56\xa9\x9d\x3b\x33\x0b\xe9\x9b\ +\x37\x2b\xa7\x5e\x3d\xc2\x12\xa2\x61\xb7\x8a\x85\x76\x86\xf3\xca\ +\x04\x3d\xce\x01\x00\x20\x24\x4a\xc5\x9f\xd9\xb6\x38\xea\x36\x8c\ +\x8b\x32\x79\xd0\xa8\x4d\x9b\xcc\x5f\x1d\x5d\xb6\x4c\xa5\x74\x87\ +\x18\x42\x13\xa2\x11\x17\xb9\x73\xdd\xb2\xfa\xa3\x2f\xd2\xd3\xe3\ +\x1c\x00\x00\x42\x47\xef\x12\x7d\xdb\xc2\x1d\x2c\x35\x39\x83\x36\ +\x8c\xfa\xd5\xd1\xd4\xfa\xf5\x99\x85\xf4\xe9\xd3\x09\x4e\x88\x01\ +\xbb\x57\x9c\x69\xe7\xae\xf9\xa7\xe2\x54\x96\x04\x00\x00\xb0\x85\ +\x3c\x71\x9d\x8d\x21\x7d\x8c\xf8\x6e\x26\xaf\x8e\xae\x5a\x95\x59\ +\x48\x1f\x30\x80\x10\x85\x18\x90\xbb\xc5\x89\x76\x86\xf3\x0f\xc5\ +\x13\x58\x0a\x00\x00\xc0\x46\xce\x4e\xa4\x5f\xca\xb3\x6a\xf1\xec\ +\x25\xbe\xe2\x37\x0c\xd4\xaa\xb5\xef\xd8\x8a\xef\xfe\xe8\xfa\x1c\ +\x7b\xf3\xe6\x84\x29\xc4\x2c\xfb\xa6\x38\xd8\xce\x70\xfe\x7b\xb1\ +\x07\xe5\x1f\x00\x00\x6c\xe6\x38\xf1\x03\xdb\x16\xd1\x66\xe2\x23\ +\x7e\x43\x41\x49\x89\x72\x2e\xb8\xc0\x77\x48\x4f\xae\x5d\xab\x9c\ +\xb2\x32\x42\x15\x62\x96\xd4\xef\x1c\xb4\xb7\x33\x9c\xff\x4e\x6c\ +\x4a\xd9\x07\x00\x80\x28\xa0\x5f\xcc\xdb\x6b\xdb\x62\x5a\x47\xfc\ +\xa9\xdf\x33\xe9\xfa\xe2\xe7\xbc\x79\xfe\x8f\xba\x2c\x58\xa0\x1c\ +\xfd\x62\x29\xe1\x0a\xb1\x4a\xde\xef\xbe\x73\x60\x61\x38\xd7\x3d\ +\xce\xeb\x52\xee\x01\x00\x20\x4a\xb4\x15\xdf\xb2\x6d\x51\x2d\x75\ +\xfb\x26\xfb\x09\x08\x49\x1d\xb4\xa7\x4e\xf5\x1f\xd2\xf5\x4b\xa5\ +\x04\x2c\xc4\x8c\xbd\x57\x6c\x60\x67\x38\xbf\x47\x2c\xa3\xcc\x03\ +\x00\x40\x14\x69\x24\x3e\x65\xdb\xe2\xaa\xfb\x26\x5f\xe1\x37\x2c\ +\xe4\xe5\x29\x67\xc2\x04\xff\x8f\x18\x75\xea\x44\xd0\x42\xcc\xc0\ +\x1f\x8b\xb5\xec\x0c\xe7\xdf\x13\x8b\x28\xef\x00\x00\x10\x65\xf4\ +\x4b\x7a\x37\xd9\xb6\xc8\x66\xd4\x2b\x5d\x87\xf4\xf1\xe3\xfd\x5d\ +\x1a\xdd\xb4\x49\x39\x75\xeb\x12\xb8\x10\x7d\xf8\x6d\xf7\xd1\x31\ +\x0b\xc3\xf9\x12\x4a\x3a\x00\x00\xc4\x05\xdd\x86\x71\x93\x85\x8b\ +\xad\x9a\xe1\xf6\x55\xf6\x15\x20\x86\x0f\xe7\x11\x23\xc4\x80\x5c\ +\x69\xe7\x03\x44\x9f\x89\x33\x28\xe5\x00\x00\x10\x47\xf4\x0b\x7b\ +\x5f\xd8\x16\xd2\x8f\xcf\xa0\x57\x7a\x6a\xe0\xc0\xf4\x11\x16\xaf\ +\x21\x7d\xda\x34\xc2\x17\xe2\x21\x3c\xc7\xce\x5d\xf3\x7f\x8a\x63\ +\x29\xdf\x00\x00\x10\x67\x26\xb8\x0b\x9e\x55\x8b\x70\x3f\xf1\x35\ +\xbf\x81\x62\xd0\x20\x7f\x21\xbd\x77\x6f\x42\x18\xe2\x37\xbc\x0e\ +\x3a\xcd\xce\x70\xfe\x27\xb1\x37\x65\x1b\x00\x00\x72\x81\xbe\xee\ +\xc2\x67\xd5\x62\xdc\x41\x7c\xce\x6f\xb8\xe8\xd1\x43\x39\xbb\x76\ +\x79\x0b\xe8\xf2\xff\x2f\xd5\xa6\x0d\x81\x0c\x71\x3f\xf5\xaf\x57\ +\xa3\xec\x0c\xe7\xbb\xc5\x8e\x94\x6b\x00\x00\xc8\x25\x8e\x14\xdf\ +\xb3\x6d\x51\x3e\x42\x7c\xd4\x6f\xc8\xe8\xdc\x59\x39\x3b\x76\x78\ +\xbb\x34\xba\x61\x83\x4a\xd5\xa9\x43\x30\x43\x14\x5f\x17\xfb\xdb\ +\x19\xce\x9f\x17\x9b\x50\xa6\x01\x00\x20\x17\xd1\x0b\xe0\xb3\xb6\ +\x2d\xce\x75\xc5\xbb\xfc\x86\x8d\x76\xed\x94\xb3\x6d\x9b\xb7\x9d\ +\xf4\xc5\x8b\x55\xb2\xb0\x90\x80\x86\x39\xed\x8b\x62\x37\x3b\xc3\ +\xf9\x43\x62\x1d\xca\x33\x00\x00\xe4\x32\xfa\xb1\x8f\x5f\xd8\xb6\ +\x48\xd7\xc8\xe0\x41\xa3\x7d\xc7\x57\xb6\x6e\xf5\x16\xd2\x27\x4f\ +\x26\xa4\x61\xce\xfa\xb4\xd8\xc6\xce\x70\x7e\x4b\x22\xdd\x1a\x16\ +\x00\x00\x20\xe7\xd1\x0b\xe2\xcd\xb6\x2d\xd6\xd5\xc4\xff\xf1\x1b\ +\x3e\x9a\x35\x53\xce\xe6\xcd\xde\x42\xfa\x80\x01\x84\x35\xcc\x39\ +\x1f\x13\x9b\xd9\x19\xce\xaf\x13\x0b\x29\xc7\x00\x00\x00\xff\x45\ +\xf7\x4a\x5f\x65\xdb\xa2\xad\xfb\x31\x5f\xe2\x37\x84\x34\x69\xa2\ +\x9c\xf5\xeb\x3d\x5d\x1a\x75\xb8\x34\x8a\x39\xe4\x1d\x62\x6d\xfb\ +\x82\xf9\x97\x09\x1e\x20\x02\x00\x00\x38\x28\x56\xf6\x4a\x5f\x28\ +\x26\xfd\x84\x91\xf2\x72\xe5\xac\x5b\x77\xe8\x4b\xa3\x1b\x37\x2a\ +\x87\x4b\xa3\x98\x03\xfe\x58\xac\x69\x5f\x38\xff\x5c\x9c\x47\xd9\ +\x05\x00\x00\x38\x34\x27\x8b\x1f\xdb\x16\xd2\x27\x89\x7b\x7c\x86\ +\xf4\x94\x87\x9d\xf4\xe4\xc2\x85\xca\x29\x28\x20\xc4\x61\x6c\xd5\ +\xf7\x39\x4a\xec\x0b\xe7\x1f\xbb\xb5\x06\x00\x00\x00\x3c\xd2\x53\ +\xfc\xbd\x6d\x21\x7d\x80\xf8\x86\x9f\x70\x52\xaf\x9e\x72\x56\xaf\ +\x3e\xf4\x71\x97\x33\xcf\x24\xc8\x61\x2c\xdd\x2e\x16\xd8\x17\xce\ +\xff\xe8\xd6\x18\x00\x00\x00\xf0\x49\x4b\xf1\x35\xdb\x42\xfa\x51\ +\xe2\x4b\x7e\xba\xbb\x48\x48\x4f\x79\x09\xe9\x03\x07\x12\xe8\x30\ +\x56\xae\x76\xef\x71\x58\x36\x87\xdf\x14\x5b\x53\x5e\x01\x00\x00\ +\x32\xa7\x9e\xf8\x88\x6d\x21\xbd\xad\xf8\xac\x9f\xb0\x52\xb7\xae\ +\x72\x56\xad\x3a\xf4\xa5\xd1\xb6\x6d\x09\x76\x18\x0b\xcf\xb1\xb3\ +\x53\xcb\x73\x62\x63\xca\x2a\x00\x00\x40\xd5\xd1\x6d\x18\x6f\xb1\ +\x6d\xb1\x3f\xdc\xef\xab\xa3\xfa\x32\xe8\x21\x42\x3a\x97\x46\x31\ +\xea\x26\xed\x0d\xe7\xf7\x26\xd2\xef\x2e\x00\x00\x00\x40\x96\x28\ +\x10\x2b\x6d\x5b\xf4\x1b\x8a\xbf\xf4\x13\x60\x6a\xd5\x52\xce\xf2\ +\xe5\x07\xdf\x49\x5f\xba\x54\x39\x45\x45\x84\x3d\x8c\x9c\x7b\xc5\ +\x33\xed\x0c\xe7\x37\x89\xd5\x28\xa3\x00\x00\x00\xc1\xb0\xca\xb6\ +\xc5\xbf\x8e\xf8\x33\x3f\x3b\x8c\x35\x6b\x1e\x3a\xa4\x4f\x9b\x46\ +\xe0\xc3\x48\xf9\xbe\x38\xd9\xce\x70\x7e\xa5\xfb\x05\x1f\x00\x00\ +\x00\x02\x64\xaa\xf8\x2f\x9b\x42\x40\xa9\x78\x93\x9f\x40\x23\x21\ +\x3d\x79\xc9\x25\x07\x3f\xee\x32\x78\x30\xc1\x0f\x23\xe1\x6e\x71\ +\xac\x9d\xe1\x7c\x25\xe5\x12\x00\x00\xc0\x1c\x23\xc4\xbf\xdb\x14\ +\x06\x8a\xc4\xab\x7c\x86\x74\xe7\x60\x21\x9d\x4b\xa3\x18\x01\xdf\ +\x11\x87\xd9\x17\xcc\xf5\x63\x67\xe7\x50\x26\x01\x00\x00\xcc\x73\ +\x8c\xf8\x07\x9b\x82\x81\xee\xf7\xbc\xc9\xcf\x71\x97\xb2\x32\xe5\ +\x2c\x5b\x76\xf0\x4b\xa3\xba\x03\x0c\x41\x10\x2d\xf4\x75\xb1\xaf\ +\x7d\xe1\x5c\xff\xba\x36\x99\xf2\x08\x00\x00\x10\x1e\xcd\xc5\x57\ +\x2d\x0b\x08\xfb\xba\x58\x78\x0e\x3a\x35\x6a\xa8\xd4\x92\x25\x07\ +\xbd\x34\x9a\xaa\x56\x8d\x40\x88\x56\xf9\xbc\xd8\xce\xbe\x70\xfe\ +\x81\x38\x98\xb2\x08\x00\x00\x10\x3e\xba\xaf\xf1\x73\xb6\x85\xf4\ +\x39\x6e\xcb\x39\xcf\xc7\x5d\x0e\x76\x71\x74\xf2\x64\x42\x21\x5a\ +\x15\xce\xdb\xdb\x17\xce\xff\x2c\xf6\xa5\x1c\x02\x00\x00\xd8\x43\ +\x2d\xf1\x3e\xdb\x42\xfa\xa9\x6e\x77\x0b\x4f\xc1\xa7\xac\xec\xe0\ +\x17\x47\x87\x0c\x21\x1c\x62\xe8\x3e\x2d\xb6\xb0\x2f\x9c\xcb\x77\ +\xe1\x44\x67\xca\x20\x00\x00\x80\x7d\xe8\x56\x6a\xff\x63\x5b\x48\ +\x1f\x2e\xbe\x9b\x85\x9d\xf4\x54\x45\x85\x72\xda\xb5\x23\x24\x62\ +\x68\x3e\x28\x36\xb2\x2f\x9c\xff\x4e\x6c\x42\xf9\x03\x00\x00\xb0\ +\x97\xbc\x84\x85\xbd\xd2\xfb\x89\x6f\x7a\x0d\x42\xf5\xea\x29\x67\ +\xed\xda\x03\xef\xa2\xaf\x5f\xcf\x4b\xa3\x18\x8a\xbf\x76\x1f\xe6\ +\xb2\x6c\x6e\x3d\x26\xd6\xa5\xec\x01\x00\x00\x44\x83\xf9\x89\x74\ +\xab\x35\x6b\xc2\x44\x2f\xb7\xeb\x85\xa7\x40\xa4\x3b\xb7\xac\x59\ +\x73\xe0\x90\xae\xbb\xbe\x70\x69\x14\x0d\x7a\xbf\xd8\xc0\xbe\x70\ +\x7e\xb7\x58\x4a\xa9\x03\x00\x00\x88\x16\x13\xc4\x8f\x6d\x0a\x15\ +\x5d\xc5\x97\x3c\x86\xa2\xd4\xc1\x76\xd2\xe7\xcc\x51\x4e\x5e\x1e\ +\xe1\x11\x03\xf7\xe7\x62\x6d\xfb\xc2\xf9\xcd\x62\x35\x4a\x1c\x00\ +\x00\x40\x34\x19\x9a\x48\xb7\x5e\xb3\x26\x5c\xb4\x73\xbb\x60\x78\ +\x0a\x48\x8d\x1a\xa9\x94\x3e\xd6\x72\xa0\x90\x3e\x7a\x34\x01\x12\ +\x03\xf5\x2e\xb1\x96\x7d\xe1\xfc\xdb\x89\xf4\x7d\x13\x00\x00\x00\ +\x88\x30\x7d\xc4\xbf\xd8\x14\x32\x3a\x88\xbf\xf5\x1a\x94\xca\xcb\ +\x55\x6a\xc3\x86\xaf\x07\xf4\xca\x4a\xe5\xf4\xe8\x41\x90\xc4\x40\ +\xbc\xdb\xce\x9d\xf3\xcb\x13\xe9\x7b\x26\x00\x00\x00\x10\x03\x3a\ +\x8a\x7b\x6c\x0a\x1b\x87\x8b\x8f\x7b\x0d\x4c\x4d\x9b\x2a\x67\xf3\ +\xe6\xaf\x77\x76\xd9\xb1\x43\x39\xcd\x9a\x11\x28\x31\xab\xde\x2a\ +\xd6\xb0\x2b\x98\x7f\x29\x9e\x4b\x19\x03\x00\x00\x88\x1f\xcd\xc4\ +\xd7\x6c\x0a\xe9\x8d\xdc\xee\x18\x9e\x82\xd3\xe1\x87\x1f\x30\xa4\ +\xef\x3b\xa7\xae\xdb\x33\x12\x2c\x31\x0b\xde\x2c\x96\xd8\x15\xce\ +\x3f\x13\xa7\x52\xbe\x00\x00\x00\xe2\x4b\x53\xf1\x05\x9b\x42\x7a\ +\xb9\xdb\x5f\xda\x53\x80\x6a\xd1\x42\x39\x5b\xb7\x7e\x3d\xa4\x2f\ +\x5a\xa4\x92\x85\x85\x04\x4c\x8c\xdb\xce\xb9\x0e\xe7\x67\x52\xb6\ +\x00\x00\x00\xe2\x4f\x99\xf8\x4b\x9b\x42\x7a\x2d\xf7\x42\x9e\xa7\ +\x20\xd5\xaa\x95\x72\xb6\x6d\xfb\x7a\x48\x9f\x3a\x95\x90\x89\x19\ +\x7b\x9d\x58\x64\x57\x38\xff\xa7\x78\x02\xe5\x0a\x00\x00\x20\x77\ +\x28\x16\x7f\x64\x53\x48\xd7\x3b\x97\xb7\x78\x0d\x54\x9d\x3b\x2b\ +\x67\xd7\xae\xaf\x87\xf4\xfe\xfd\x09\x9b\xe8\xdb\xff\xb1\x2f\x9c\ +\xeb\xce\x4b\x83\x28\x53\x00\x00\x00\xb9\x87\xee\xa3\x7c\x93\x4d\ +\x21\xbd\xd4\x3d\x66\xe0\x29\x58\x75\xeb\xa6\x52\x15\x15\x5f\xbd\ +\x34\xaa\xff\xfb\xf6\xed\x09\x9d\xe8\xd9\xeb\xed\x0b\xe7\x7f\x15\ +\xfb\x53\x9e\x00\x00\x00\x72\x17\xdd\xb2\x6d\xb3\x4d\x21\x5d\x87\ +\xa5\x6b\xbd\x06\xac\x01\x03\xbe\xbe\x8b\xae\x2f\x92\x36\x6c\x48\ +\xf8\xc4\x43\xfa\x6d\xb1\xc0\xae\x70\xbe\x37\x91\xee\xb8\x04\x00\ +\x00\x00\x90\x58\x92\x48\xb7\x72\xb3\x22\xa8\xe8\xd0\x74\xa5\xd7\ +\xa0\x35\x6a\xd4\xd7\xdb\x2f\xae\x58\xa1\x9c\x92\x12\x42\x28\x46\ +\x69\xe7\xfc\x2d\xb1\x05\xa5\x08\x00\x00\x00\xf6\x67\x5a\x22\xdd\ +\x35\xc2\x9a\x90\x7e\x85\xd7\xc0\x35\x61\xc2\xd7\x77\xd2\xcf\x3a\ +\x4b\x39\x79\x79\x84\x51\xfc\x9a\xdf\xb1\x2f\x9c\xeb\xce\x4a\x4d\ +\x28\x41\x00\x00\x00\x70\x20\x4e\x12\x3f\xb6\x29\xa4\x57\x7a\x09\ +\x5d\x3a\x88\x4f\x99\xf2\xf5\x90\x3e\x66\x0c\x81\x14\xbf\xe2\x77\ +\xed\x0b\xe7\x4f\x8a\xf5\x28\x3d\x00\x00\x00\x70\x30\x86\x8a\x1f\ +\xda\x14\xd2\x2b\xbc\x84\xaf\xfc\x7c\xe5\xcc\x9e\xfd\xd5\x80\x5e\ +\x59\xa9\x9c\x63\x8e\x21\x98\xe2\x3e\x6f\xb0\x2f\x9c\x3f\x22\xd6\ +\xa6\xe4\x00\x00\x00\x80\x17\x06\x8a\x7f\xb3\x25\xc8\x14\xb9\xad\ +\xf0\x0e\x19\xc2\x8a\x8a\x94\xb3\x70\xe1\x57\x43\xfa\x8e\x1d\xca\ +\x69\xde\x9c\x80\x9a\xe3\xfe\xc8\xbe\x17\x42\x1f\x12\x6b\x52\x6a\ +\x00\x00\x00\xc0\x0f\xba\x9b\x44\x32\x61\xd1\x4e\xfa\x4e\x2f\x61\ +\xac\x7a\x75\xe5\x2c\x5d\xfa\xd5\x4b\xa3\xeb\xd7\xab\x54\x9d\x3a\ +\x04\xd5\x1c\xf5\x46\xb1\x9a\x5d\xe1\xfc\x8e\x44\xfa\x2d\x02\x00\ +\x00\x00\x00\xdf\xb4\x13\xf7\xd8\x14\xd2\x77\x78\x08\x64\xc9\xb2\ +\x32\xe5\xe8\x4e\x2e\xfb\x87\xf4\xc5\x8b\x55\xb2\xb0\x90\xc0\x9a\ +\x63\xea\xbe\xfa\xd5\xed\x0a\xe7\xb7\x27\xd2\x6f\x10\x00\x00\x00\ +\x00\x64\x4c\x5b\x71\xb7\x2d\x01\xa7\xd0\xed\x5f\x7d\xc8\x70\x56\ +\xb7\xae\x72\x2e\xbb\xec\xab\xc7\x5d\xce\x3c\x93\xd0\x9a\x43\xde\ +\x29\x96\xd9\x15\xce\xe5\x1f\x89\x9d\x73\x00\x00\x00\xc8\x0e\xcd\ +\xc4\x37\x12\x89\x88\xb5\x60\x6c\xd2\x24\xfd\x70\xd1\xfe\x21\xfd\ +\xd8\x63\x09\xaf\x39\xe0\x5d\x62\x4d\xbb\xc2\xf9\x8f\x13\xec\x9c\ +\x03\x00\x00\x40\x96\xd1\xad\xe0\x7e\x63\x4b\xe0\xc9\x13\xd7\x7b\ +\x09\x6b\xed\xda\xa9\xd4\xce\x9d\xff\x0d\xe8\xbb\x76\xed\xfb\x7f\ +\x23\xc4\x72\x21\xd4\xa0\xd7\x8b\x05\x94\x10\x00\x00\x00\x08\x82\ +\x3a\xe2\x63\x91\x0b\xe9\x5d\xba\x28\xa7\xa2\xe2\xbf\x21\xfd\xf2\ +\xcb\x55\xb2\x51\x23\xc2\x6c\x0c\xbd\x5d\xac\x61\x57\x38\xaf\x14\ +\xf3\x28\x1d\x00\x00\x00\x10\x24\xb5\x6d\x0a\xe9\xf9\x1e\x2f\x8e\ +\x3a\xc3\x86\x7d\xf5\xa8\x8b\xbe\x44\x5a\x52\x42\xa8\x8d\x91\xf7\ +\x8a\xb5\xed\x0a\xe7\xd7\x8a\xf9\x94\x0c\x00\x00\x00\x30\x41\xa9\ +\x78\x9f\x4d\x21\xdd\xd3\x8b\xa3\x13\x27\x7e\x35\xa4\x9f\x7b\x6e\ +\xfa\x81\x23\xc2\x6d\xe4\x7d\x40\xac\x6b\x57\x38\xbf\x32\xc1\xce\ +\x39\x00\x00\x00\x18\x46\x5f\x78\xbb\xcd\xa6\x90\xbe\xeb\x50\x41\ +\x2e\x2f\xef\xeb\xaf\x8d\x9e\x74\x12\x01\x37\xe2\x3e\x28\xd6\xb7\ +\x2b\x9c\xaf\xa1\x3c\x00\x00\x00\x40\x58\xe8\x8b\x6f\xdf\xb1\x25\ +\x18\xe9\xee\x2e\x57\x7a\x79\x6d\x74\xd1\xa2\xaf\x86\xf4\xbe\x7d\ +\x09\xba\x11\xf5\x49\xb1\xb1\x5d\xe1\x7c\x09\x65\x01\x00\x00\x00\ +\xc2\x46\xff\x8c\xbf\xcb\xa6\x90\x7e\xd5\xa1\x82\x5d\x69\xa9\x4a\ +\xad\x5c\xf9\xdf\x80\xbe\x63\x87\x72\x5a\xb4\x20\xf0\x46\xcc\xe7\ +\xc5\x16\x84\x73\x00\x00\x00\x80\x03\xa2\x2f\xc2\x5d\x61\x4b\x50\ +\x2a\x16\x6f\x39\x54\xc0\x6b\xd0\x40\x39\x1b\x37\xfe\xf7\xa5\xd1\ +\x0d\x1b\x94\x53\xa7\x0e\xc1\x37\x22\xbe\x26\x76\xb6\x2b\x9c\xaf\ +\xa6\x0c\x00\x00\x00\x80\x6d\xe8\x9d\xf4\x75\xb6\x04\x26\xdd\x07\ +\xfb\xc7\x87\x0a\x7a\xcd\x9b\xab\xff\x6b\xef\xfe\x63\xed\xae\xeb\ +\x3b\x8e\x7f\x6f\x7f\xd1\xd6\xda\x9f\x16\x1a\x1b\x68\x4b\xaf\xa6\ +\x19\xb8\x44\xaa\x2d\x6d\x88\x73\xcd\xba\x46\x94\x15\x9d\x54\xc6\ +\xa6\x80\xa3\xb9\x13\x7f\xc4\x94\x8b\xd8\xc9\xc0\x16\x2a\x6b\xb5\ +\x2b\xed\xed\x36\xdc\x32\xe6\xb6\x66\x2c\xe0\x64\xd9\x96\x31\x41\ +\x13\xc1\x58\x7f\x21\x6e\xc8\x48\x51\x41\x84\xde\x73\x8d\x1a\xa3\ +\x9b\x66\x2a\xb4\x5f\xdf\xdf\x9d\xe3\x4e\x5b\xee\xbd\xed\xed\xfd\ +\xf1\xf9\x9c\x73\x1e\x8f\xe4\xf5\x6f\xd3\x9c\xf3\x3d\xc9\xb3\xa7\ +\xdf\xf3\xf9\xd6\xf6\xec\x69\x7e\x93\xfe\xfe\xf7\x97\x03\xd3\xa6\ +\x09\xe0\xcc\xf7\xcd\xd8\xab\xf3\x8a\xf3\x9d\x3e\xfe\x00\x40\xce\ +\xae\xcf\x25\x9c\xa6\xc7\xee\x19\xe9\x19\xe9\x57\x5e\x29\x82\x33\ +\x8f\xf3\x57\xf9\x41\x28\x00\xc0\x88\xf5\x16\xad\xf4\x4d\xfa\xba\ +\x75\xc7\xff\x68\x74\xfd\x7a\x31\x9c\xe1\x9e\x8e\xbd\x26\xaf\x38\ +\xbf\xd5\x47\x1d\x00\x68\x25\x37\xe5\x12\x52\xd5\xc3\x6b\xee\x1f\ +\xc9\x19\xe9\xfb\xf7\x97\xb5\xf3\xcf\x17\xc5\x19\xed\x70\xec\xcd\ +\x79\xc5\x79\xf5\xc3\x68\xe7\x9c\x03\x00\x2d\x67\x4b\x2e\x41\x35\ +\x3b\x76\xdf\x30\x01\xd8\x5f\x3d\xb0\xe8\x1d\xef\x68\x46\xfa\xae\ +\x5d\x65\x6d\xe1\x42\x71\x9c\x49\x9c\x6f\xca\x2b\xce\x6f\xf3\xd1\ +\x06\x00\x5a\xd9\x7b\x63\x47\x73\x89\xf4\x4f\x9e\xec\x8c\xf4\xf7\ +\xbd\xaf\x19\xe9\xdb\xb7\x97\xb5\x59\xb3\x44\x72\xe2\x5d\x9d\x57\ +\x9c\xff\xb1\x8f\x34\x00\xd0\x0e\xfe\x20\x97\x48\x5f\xd0\x78\x2c\ +\xfc\x90\x41\x38\x67\x4e\x59\xdb\xb1\xa3\x19\xe9\xef\x7e\x77\xfd\ +\xdb\x75\xa1\x9c\x64\x5b\xdc\xd6\x02\x00\x30\x6e\x7a\x72\x89\xf4\ +\x85\xb1\x07\x87\x89\xc2\x81\xee\xee\xb2\xb6\x77\x6f\x33\xd2\x37\ +\x6e\x14\xcb\x09\x76\x63\x5e\x71\xde\x27\xce\x01\x80\x76\x74\x5d\ +\x2e\xc1\x75\x4e\xec\xcb\xc3\x05\xe2\xaa\x55\xc7\x9f\xec\xb2\x66\ +\x8d\x68\x9e\xc0\xed\x8f\x4d\xca\x27\xce\x3f\x56\xd4\x1f\xc6\x05\ +\x00\xd0\x96\x36\xc7\x8e\xe4\x10\x5e\x4b\x1a\x8f\x8b\x1f\x32\x14\ +\x2f\xbd\xb4\x19\xe8\xb7\xdf\x5e\xd6\x96\x2e\x15\xcf\x13\xb0\x3b\ +\x63\x93\xf3\x89\xf3\x3f\x2b\x7c\x73\x0e\x00\x74\x80\x6b\x72\x89\ +\xf4\x15\xb1\xc7\x87\x8a\xc5\xae\xae\xb2\xbf\xa7\xa7\x19\xe9\x1f\ +\xfa\x50\xfd\x1e\x75\x11\x3d\x6e\xfb\xe7\xc6\x03\xa6\x32\x89\xf3\ +\x3b\xc4\x39\x00\xd0\x49\x7e\x3f\x97\x48\x5f\xd9\x78\x42\xe5\xa0\ +\xf7\xa3\x4f\x9f\x5e\xd6\x3e\xf0\x81\x66\xa4\x5f\x77\x5d\x59\x9b\ +\x32\x45\x4c\x8f\xc3\x1e\x8a\xcd\x73\x5b\x0b\x00\x40\x52\xef\x2c\ +\x32\xf9\xe1\xe8\xeb\x62\xcf\x0e\x15\x8f\x0b\x16\x94\x03\x3b\x77\ +\x36\x23\x7d\xd3\x26\x41\x3d\xc6\x7b\x34\xb6\x34\x9f\x38\xbf\x27\ +\x36\xc5\xc7\x13\x00\xe8\x54\x6f\x2f\x32\xf9\x26\xfd\x8d\x8d\x87\ +\xe2\x0c\x1a\x91\xcb\x97\x1f\x77\xb2\x4b\xff\xda\xb5\xc2\x7a\x8c\ +\x76\xa8\x71\xab\x51\x26\x71\x7e\x77\x6c\xb2\x8f\x25\x00\xd0\xe9\ +\xde\x55\x64\xf2\x4d\xfa\x55\xc3\xc5\x64\x75\x92\x4b\x23\xd0\x07\ +\xaa\x58\xf7\xa3\xd1\x51\xef\xe9\xd8\xda\x7c\xe2\xfc\xbe\xd8\x34\ +\x1f\x47\x00\x80\xba\xf7\x66\x12\x69\x65\xef\x30\x41\xd9\x5f\xdd\ +\xde\xe2\x47\xa3\x63\xb2\xea\x7f\x2b\x7e\x2b\x9f\x38\x7f\x28\x36\ +\xd3\xc7\x10\x00\xe0\x78\xd9\x9c\x93\xbe\x6d\xa8\x40\xaf\x9e\x2a\ +\xfa\x9e\xf7\x34\xbf\x49\xef\xed\xf5\xa3\xd1\xd3\xdc\x95\xf9\xc4\ +\xf9\xc3\xb1\x39\x3e\x7e\x00\x00\x83\xdb\x99\x43\xb4\x55\xe7\x70\ +\xff\xd5\x50\x71\x39\x73\x66\x59\xbb\xf9\xe6\x66\xa4\x5f\x7e\xb9\ +\xe0\x1e\xe1\xb6\xe7\x13\xe7\xdf\x8c\xbd\xd4\xc7\x0e\x00\x60\x78\ +\x3b\x72\x88\xb7\xa9\xb1\x03\x43\x45\xe6\xe2\xc5\xe5\x40\xf5\xf0\ +\xa2\x5f\xde\xee\x52\x3d\x79\x54\x78\x9f\xd2\xf6\xc4\xba\xf2\x88\ +\xf3\xa7\x62\x8b\x7d\xdc\x00\x00\x4e\x4d\x16\xdf\xa4\xcf\x88\xfd\ +\xd3\x50\xb1\xb9\x72\x65\x33\xd0\xf7\xed\x2b\x07\xba\xbb\x05\xf8\ +\x49\x76\xa0\xf1\x0f\x9f\x0c\xde\xdb\xf8\xeb\x14\xcb\x7d\xcc\x00\ +\x00\x4e\x5d\xf5\x04\xc7\x3f\xcd\x21\xd2\x67\xc7\x1e\x18\x2a\x3a\ +\x2f\xbb\xac\x79\xab\xcb\x6d\xb7\x95\x03\x73\xe7\x0a\xf1\x21\xf6\ +\x2f\x8d\x7f\xf0\x64\xf0\x9e\x7e\x3f\x76\xbe\x8f\x18\x00\xc0\xe9\ +\x45\xfa\x1d\x39\x44\xfa\x59\xb1\x2f\x0c\x16\x9e\x93\x27\x97\xb5\ +\x2d\x5b\x9a\xdf\xa4\xf7\xf6\x96\xfd\x7e\x34\xfa\x82\x7d\x36\x36\ +\x3f\x8f\x38\xff\xef\xd8\xab\x7d\xb4\x00\x00\x4e\x5f\xf5\xd0\x98\ +\xbb\x73\x88\xf4\x97\xc5\x1e\x1f\x2c\x40\xe7\xcf\x2f\x6b\xbb\x76\ +\x35\x23\xbd\xfa\x56\x5d\x94\xff\xff\x1e\x8b\x2d\xcf\x23\xce\x7f\ +\x1a\xfb\x4d\x1f\x29\x00\x80\xd1\x9b\x1a\xbb\x37\x87\x48\x5f\x1d\ +\xfb\xd6\x60\x21\xfa\xf2\x97\x97\xb5\xbe\xbe\x66\xa4\x5f\x78\xa1\ +\x38\x6f\x3c\x88\x68\x55\x1e\x71\xfe\x5c\xec\x8d\x3e\x4a\x00\x00\ +\x63\xa7\xfa\x26\xfd\x1f\x72\x88\xf4\xf5\xb1\x67\x07\x0b\xd2\x0d\ +\x1b\x9a\x81\x5e\x9d\xf0\x72\xf6\xd9\x1d\xff\x20\xa2\x37\xe4\x13\ +\xe7\x6f\xf2\x11\x02\x00\x18\x7b\xd3\x63\x0f\xe4\x10\xe9\xd7\x0e\ +\x16\xa5\x5d\x5d\x65\x6d\xf3\xe6\x66\xa4\x57\x67\xa5\xcf\x98\xd1\ +\xb1\x81\x7e\x43\x1e\x71\x7e\x34\x76\xad\x8f\x0e\x00\xc0\xf8\x99\ +\x51\xd4\x1f\xcb\x9e\x3c\xfe\x6e\x1e\x2c\x4c\x23\xc8\x07\xb6\x6d\ +\x6b\x46\x7a\x4f\x4f\x3d\xdc\x3b\x2c\xce\xf7\xe5\x73\xd6\xf9\x75\ +\x3e\x32\x00\x00\xe3\xaf\x7a\x2c\xfb\x23\xa9\xe3\x6f\x52\xec\x2f\ +\x86\x78\x88\x51\x6d\xcf\x9e\x66\xa4\xaf\x5b\xd7\x51\x71\xfe\xf1\ +\x7c\xce\x3a\xdf\xed\xa3\x02\x00\x30\x71\xce\x8c\x3d\x91\x3a\x02\ +\xcf\x18\xea\x41\x46\x17\x5d\xd4\x3c\x1f\x7d\xef\xde\xb2\xb6\x64\ +\x49\x47\xc4\xf9\xc1\xd8\xbc\x3c\xe2\xfc\x6f\x8b\xfa\x31\x9d\x00\ +\x00\x4c\xa0\x73\x8b\xfa\x13\x21\x93\xc6\xe0\xbc\xc6\x39\xdf\x2f\ +\x08\xd6\x2b\xae\x68\x7e\x8b\x7e\xeb\xad\x65\xed\x45\x2f\x6a\xeb\ +\x38\x3f\x14\xeb\xce\x23\xce\xef\x2f\xea\x27\xff\x00\x00\x90\xc0\ +\x2b\x62\x3f\x48\x1d\x85\xe7\xc4\xfe\xf3\x84\x60\xad\x1e\x58\x34\ +\x70\xc3\x0d\xcd\x6f\xd2\xab\x1f\x90\xb6\x69\x9c\x3f\x13\x7b\x4d\ +\x1e\x71\xfe\xd5\xd8\x6c\x1f\x0b\x00\x80\xb4\xd6\x15\xf5\x87\xd0\ +\x24\x8d\xc3\x55\x83\x9d\x91\xbe\x70\x61\x59\xfb\xc8\x47\x9a\xdf\ +\xa4\xaf\x5e\xdd\x96\x81\xbe\x39\x8f\x38\x3f\x1c\x3b\xc7\xc7\x01\ +\x00\x20\x0f\xaf\x8f\xfd\x3c\x75\x24\xfe\x46\xe3\xdb\xe4\xe3\x02\ +\xf6\xbc\xf3\xca\xda\xfe\xfd\xf5\x40\xaf\x7e\x3c\xba\x68\x51\x5b\ +\xc5\xf9\xf6\x3c\xe2\xfc\xbb\xb1\x6e\x1f\x03\x00\x80\xbc\x5c\x11\ +\x3b\x92\x3a\x16\x7f\xef\x64\xf7\xa3\x57\xb7\xbd\x4c\x99\xd2\x16\ +\x71\xfe\xb1\xc6\x69\x36\x89\x5f\xf3\x1f\xc7\x56\xb9\xfc\x01\x00\ +\xf2\x74\x6d\x91\xc1\x37\xba\x7f\x34\xc8\xfd\xe8\xb5\xad\x5b\x9b\ +\x91\xbe\x71\x63\xcb\xc7\xf9\xa7\x62\xb3\xf2\x78\x4a\xe8\x1b\x5c\ +\xf6\x00\x00\x79\xdb\x9e\x3a\xd0\xab\x87\xf4\xec\x3f\x31\x6a\xcf\ +\x3c\xb3\xec\xdf\xbd\xbb\x1e\xe8\x7d\x7d\x65\x6d\xe9\xd2\x96\x8d\ +\xf3\x47\x62\x8b\xf2\xb8\xb5\x65\xb3\xcb\x1d\x00\xa0\x35\xdc\x5e\ +\x64\x78\x46\x7a\xff\xda\xb5\xcd\x53\x5d\x6e\xba\xa9\xac\x4d\x9d\ +\xda\x72\x71\xfe\x64\xec\x57\xf3\x88\xf3\xed\x2e\x73\x00\x80\xd6\ +\x31\x39\xf6\x89\xd4\x11\xb9\x20\xf6\xf9\x13\x23\xfd\xaa\xab\x9a\ +\xb7\xba\x5c\x72\x49\xcb\x05\xfa\x5b\xf2\x88\xf3\xbf\x2b\x3c\x88\ +\x08\x00\xa0\xe5\x54\x0f\xab\xf9\xb7\xd4\x31\xb9\x24\xf6\xd8\xb1\ +\x91\x5b\x3d\xb0\xa8\x7a\x70\x51\x15\xe8\xd5\x53\x46\xcf\x3a\xab\ +\x65\xe2\xfc\xe6\x3c\xe2\xfc\xde\xc6\x3f\xc0\x00\x00\x68\x41\xd5\ +\x43\x6b\x1e\x4e\x1d\x95\xbf\x1e\x7b\xf6\xd8\xd8\xed\xee\xae\xdf\ +\x87\x5e\x45\x7a\x4f\x4f\x4b\xc4\xf9\x3f\xc6\xa6\xa6\x8f\xf3\x47\ +\x62\x2f\x76\x59\x03\x00\xb4\xb6\x05\xb1\x43\xa9\x23\xfd\xf2\x13\ +\xa3\xf7\xe2\x8b\x9b\xb7\xba\xac\x58\x91\x75\x9c\x1f\x8c\xcd\x49\ +\x1f\xe7\x4f\xc7\x16\xb9\x9c\x01\x00\xda\xc3\xb2\xd8\x77\x52\x47\ +\xfa\xf6\x63\xc3\x77\xf2\xe4\xb2\x76\xfd\xf5\xf5\x40\xef\xed\x2d\ +\x6b\x5d\x5d\x59\xc6\xf9\x13\xb1\x97\xa5\x8f\xf3\x1f\xc6\x7e\xc5\ +\x65\x0c\x00\xd0\x5e\x5e\x55\xd4\x1f\x6a\x93\x2c\x34\xab\x87\xfa\ +\xfc\xcd\xb1\x01\x3c\x6f\x5e\x59\xfb\xf0\x87\xb3\xfd\x16\xfd\x70\ +\x6c\x43\x1e\x67\x9d\x6f\x70\xf9\x02\x00\xb4\xa7\xd7\xc7\x9e\x4f\ +\x19\x9c\xd5\xc3\x7d\x3e\x7d\x6c\x08\xaf\x59\x53\x0f\xf4\xb7\xbd\ +\x2d\xbb\x40\xef\xcd\xe3\x47\xa1\xef\x72\xd9\x02\x00\xb4\xb7\xde\ +\xd4\xd1\xb9\x2c\xf6\xf8\xb1\x31\x7c\xcd\x35\x65\xff\x2d\xb7\x64\ +\x15\xe7\x07\x62\x93\xd3\xc7\xf9\x47\x5d\xae\x00\x00\x9d\xa1\x2f\ +\x75\xa4\x5f\x14\x7b\xe6\x97\x41\x3c\x73\x66\x59\xbb\xf1\xc6\x6c\ +\xe2\xfc\xa1\xd8\xec\xf4\x71\xfe\x40\x51\x3f\x2a\x13\x00\x80\x0e\ +\x50\x3d\xe4\xe6\x40\xea\x48\x7f\xeb\xb1\x61\x3c\x67\x4e\x16\x71\ +\x7e\x28\xb6\x34\x7d\x9c\xff\x47\xe1\x38\x45\x00\x80\x8e\x33\x3d\ +\xf6\xd9\xd4\x91\xbe\x33\xa3\xdb\x5a\xfa\x63\xeb\xd3\xc7\xf9\xe1\ +\xd8\x62\x97\x27\x00\x40\x67\x9a\x5f\x24\x3e\x23\x7d\x6a\xe3\x21\ +\x40\x39\x04\xfa\x1f\xa6\x8f\xf3\xea\x94\x9d\x95\x2e\x4b\x00\x80\ +\xce\x96\xfc\x8c\xf4\x85\xb1\x87\x13\xc7\xf9\x5d\x8d\x63\x20\x13\ +\xbe\x0e\x47\x62\xbf\xed\x72\x04\x00\xa0\x92\xfc\x8c\xf4\xf3\x62\ +\x4f\x26\x8a\xf3\xaf\xc4\x5e\x92\xfe\xdb\xf3\xad\x2e\x43\x00\x00\ +\x8e\x55\x9d\x91\xfe\x5c\xca\x48\x7d\x53\x82\x38\x7f\x3a\x76\x81\ +\xe3\x14\x01\x00\xc8\xd4\x96\xc4\xa1\x5a\xde\x32\xc1\x81\xde\x93\ +\x3e\xce\x3f\x57\xd4\x7f\xb0\x0b\x00\x00\x83\xda\x97\x32\x58\xa7\ +\xc4\x3e\x3e\x41\x71\x7e\x47\xac\x2b\x6d\x9c\x7f\x2b\xb6\xd0\x25\ +\x07\x00\xc0\x70\x26\xc5\xee\x4d\x19\xe9\x73\x63\x5f\x18\xe7\x38\ +\xff\x4c\x6c\x66\xda\x38\xff\x51\x6c\x85\xcb\x0d\x00\x80\x53\x31\ +\x23\xf6\xa5\x22\xf1\x8f\x46\x9f\x1a\xa7\x38\xff\x7a\x6c\x79\xfa\ +\x13\x5b\x36\xba\xcc\x00\x00\x18\x89\x97\x16\xf5\x87\xe6\x24\x0b\ +\xd9\xdf\x1d\xa7\x40\xbf\x34\xfd\x7d\xe7\xdb\x5c\x5e\x00\x00\x9c\ +\x8e\xea\xa1\x39\x3f\x49\x19\xb3\xbb\xc7\x38\xce\xff\x24\x7d\x9c\ +\xdf\x13\xeb\x72\x69\x01\x00\x70\xba\xde\x1c\x3b\x9a\x2a\x68\xcf\ +\x88\xdd\x37\x46\x71\x7e\x7f\xe3\xcf\x4b\x18\xe7\x5f\x8b\xcd\x72\ +\x49\x01\x00\x30\x5a\x1f\x4c\x18\xb5\xe5\xe2\xd8\x63\xa3\x8c\xf3\ +\x27\x62\xcb\xd2\xc6\xf9\xf7\x8a\xfa\x53\x5b\x01\x00\x60\xd4\xaa\ +\x93\x5d\x3e\x91\x32\xd2\xd7\xc7\x0e\x8f\x22\xd0\x37\xa5\xff\x51\ +\xe8\x25\x2e\x23\x00\x00\xc6\x52\x75\x6b\xc6\xa3\x29\x23\xbd\xf7\ +\x34\xe3\xbc\x2f\xfd\x7d\xe7\x3b\x5c\x3e\x00\x00\x8c\x87\xea\x64\ +\x97\xfe\x54\xa1\x3b\x29\x76\x60\x84\x71\xfe\x60\xfa\xf3\xce\xff\ +\xb5\xa8\xff\x0f\x04\x00\x00\x8c\x8b\xb5\xb1\x9f\x16\x09\x1f\x62\ +\xf4\xc5\x53\x8c\xf3\xea\x1c\xf5\x15\x69\xe3\xfc\x1b\xb1\xb9\x2e\ +\x19\x00\x00\xc6\xdb\x95\x09\xa3\xb7\x7c\x65\xec\xdb\xa7\x10\xe8\ +\x57\xa7\x8d\xf3\x1f\xc7\x5e\xe1\x52\x01\x00\x60\xa2\xf4\xa5\x8c\ +\xf4\x9e\x93\xc4\xf9\x9d\xe9\xef\x3b\xff\x1d\x97\x08\x00\x00\x13\ +\x69\x4a\xec\xd3\xa9\x02\xb8\x2b\xf6\x97\x43\xc4\xf9\x97\x62\x73\ +\xd2\xc6\xf9\x3e\x97\x07\x00\x00\x29\xcc\x2f\xea\xf7\x59\x27\x09\ +\xe1\xd9\xb1\x83\x27\xc4\xf9\xb3\xb1\xd5\x69\xe3\xfc\xc1\xd8\x54\ +\x97\x06\x00\x00\xa9\x5c\x10\xfb\xdf\x54\x41\x7c\xc1\x09\xf7\xa3\ +\x6f\x4d\x1b\xe7\xdf\x8f\x9d\xed\x92\x00\x00\x20\xb5\xab\x13\x46\ +\xf1\xff\xfd\x18\xb4\x8a\xf3\x7f\x8f\x4d\x49\xf7\xf7\x38\x1a\xbb\ +\xd8\xa5\x00\x00\x40\x2e\x6e\x4f\x19\xe9\xbb\x62\x4b\xd2\x7e\x7b\ +\xbe\xcd\x25\x00\x00\x40\x4e\xa6\xc5\x3e\x5f\x24\xfc\xd1\x68\xc2\ +\x38\x7f\xa8\xa8\xff\x68\x16\x00\x00\xb2\x72\x56\xec\x70\x91\xfe\ +\x88\xc3\x89\x5c\xf5\x64\xd5\x33\xbd\xf5\x00\x00\xe4\xea\xc2\xd8\ +\xcf\x3a\x24\xce\x9f\x8f\xfd\x9a\xb7\x1c\x00\x80\xdc\xbd\xb3\x43\ +\x02\xfd\x46\x6f\x35\x00\x00\xad\xe2\xce\x36\x8f\xf3\xfb\x62\x93\ +\xbc\xcd\x00\x00\xb4\x8a\x59\xb1\x43\x6d\x1a\xe7\xdf\x89\x2d\xf2\ +\x16\x03\x00\xd0\x6a\xce\x8f\xfd\xa4\xcd\xe2\xbc\x3a\xef\x7c\x83\ +\xb7\x16\x00\x80\x56\xb5\xa9\xcd\x02\x7d\x87\xb7\x14\x00\x80\x56\ +\xd7\xd7\x26\x71\x7e\xb0\x70\xde\x39\x00\x00\x6d\x60\x6a\xec\x73\ +\x2d\x1e\xe7\x3f\x8c\x2d\xf3\x56\x02\x00\xd0\x2e\xce\x8e\x7d\xaf\ +\x85\x03\xfd\x32\x6f\x21\x00\x00\xed\xe6\x75\xb1\x23\x2d\x18\xe7\ +\x7f\xed\xad\x03\x00\xa0\x5d\xed\x6a\xb1\x38\x7f\x32\x36\xc7\xdb\ +\x06\x00\x40\xbb\xaa\xee\x47\xff\x62\x8b\xc4\xf9\x73\xb1\x55\xde\ +\x32\x00\x00\xda\xdd\xb9\x45\xfd\x47\x97\xb9\x07\xfa\x4d\xde\x2a\ +\x00\x00\x3a\x45\xee\xe7\xa3\x3b\x52\x11\x00\x80\x8e\xf3\xd1\x4c\ +\xe3\xfc\x7f\x62\xcb\xbd\x3d\x00\x00\x74\x9a\x33\x62\x5f\xc9\x30\ +\xd0\xdf\xea\xad\x01\x00\xa0\x53\x75\xc7\x7e\x94\x51\x9c\xdf\xe5\ +\x2d\x01\x00\xa0\xd3\xbd\x25\x93\x38\xff\x76\x6c\xae\xb7\x03\x00\ +\x00\x8a\xe2\xef\x13\xc7\xf9\xd1\xa2\xfe\x20\x25\x00\x00\x20\xcc\ +\x8b\x3d\x93\x30\xd0\xef\xf0\x16\x00\x00\xc0\xf1\x5e\x1b\x3b\x92\ +\x20\xce\x9f\x8a\xbd\xd8\xcb\x0f\x00\x00\x2f\xb4\x6d\x82\xe3\xfc\ +\xf9\xd8\x1a\x2f\x3b\x00\x00\x0c\xae\x7a\x38\xd0\xc1\x09\x0c\xf4\ +\x5d\x5e\x72\x00\x00\x18\xde\xb9\xc5\xc4\x1c\xbd\xf8\xb5\xa2\x7e\ +\x16\x3b\x00\x00\x70\x12\x57\x8d\x73\x9c\xff\x3c\xf6\x4a\x2f\x33\ +\x00\x00\x9c\xba\xbb\xc6\x31\xd0\xb7\x7b\x79\x01\x00\x60\x64\x5e\ +\x12\xeb\x1f\x87\x38\x7f\xac\x70\x6b\x0b\x00\x00\x9c\x96\xea\xe1\ +\x41\x47\x8b\xb1\x3d\xb5\x65\x95\x97\x15\x00\x00\x4e\xdf\xde\x31\ +\x0c\xf4\x5b\xbc\x9c\x00\x00\x30\x3a\xd5\xed\x28\x8f\x8e\x41\x9c\ +\x57\x7f\xc6\x34\x2f\x27\x00\x00\x8c\x5e\x75\xe2\xca\xcf\x0a\xa7\ +\xb6\x00\x00\x40\x36\xb6\x8e\x22\xd0\x6f\xf3\xf2\x01\x00\xc0\xd8\ +\x9a\x14\xfb\x4c\xe1\xd4\x16\x00\x00\xc8\xc6\xb2\x62\x64\x4f\x19\ +\xad\x4e\x6d\x59\xed\x65\x03\x00\x80\xf1\xf3\xf6\x11\x04\xfa\x2e\ +\x2f\x17\x00\x00\x8c\xbf\xbb\x4f\x21\xce\xff\xab\x70\x6b\x0b\x00\ +\x00\x4c\x88\xea\x29\xa3\x03\xc5\xf0\xb7\xb6\x5c\xe8\x65\x02\x00\ +\x80\x89\xb3\xa1\x18\xfa\x29\xa3\xbb\xbd\x3c\x00\x00\x30\xf1\xfe\ +\x7c\x90\x38\xff\x7a\x6c\x86\x97\x06\x00\x00\x26\xde\xcc\xd8\xa1\ +\xe2\xf8\x5b\x5b\xd6\x78\x59\x00\x00\x20\x9d\x95\x45\xfd\x49\xa1\ +\x55\xa0\xef\xf5\x72\x00\x00\x40\x7a\x1f\x8c\x7d\xa3\xa8\x7f\xa3\ +\x0e\x00\x00\x24\x36\x2d\x76\x81\x97\x01\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x0e\xf2\x0b\x40\ +\x3b\x84\xc7\x9d\x59\x0c\xd3\x00\x00\x00\x00\x49\x45\x4e\x44\xae\ +\x42\x60\x82\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x07\ +\x08\x77\x57\x87\ +\x00\x62\ +\x00\x61\x00\x64\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x09\ +\x08\x9b\xa0\x47\ +\x00\x74\ +\x00\x72\x00\x61\x00\x73\x00\x68\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x09\ +\x08\x97\x8a\x27\ +\x00\x68\ +\x00\x65\x00\x61\x00\x72\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x03\x00\x00\x00\x02\ +\x00\x00\x00\x12\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x00\x3e\x00\x00\x00\x00\x00\x01\x00\x00\x39\x28\ +\x00\x00\x00\x26\x00\x00\x00\x00\x00\x01\x00\x00\x09\xc4\ +" + +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() diff --git a/examples/dialogs/README b/examples/dialogs/README new file mode 100644 index 0000000..efeae9a --- /dev/null +++ b/examples/dialogs/README @@ -0,0 +1,26 @@ +PyQt includes standard dialogs for many common operations, such as file +selection, printing, and color selection. + +Custom dialogs can also be created for specialized modal or modeless +interactions with users. + + +The example launcher provided with PyQt can be used to explore each of the +examples in this directory. + +Documentation for these examples can be found via the Tutorial and Examples +link in the main Qt documentation. + + +Finding the PyQt Examples and Demos launcher +============================================ + +On Windows: + +The launcher can be accessed via the Windows Start menu. Select the menu +entry entitled "Examples and Demos" entry in the submenu containing PyQt5. + +On all platforms: + +The source code for the launcher can be found in the examples/demos/qtdemo +directory in the PyQt package. diff --git a/examples/dialogs/classwizard/classwizard.py b/examples/dialogs/classwizard/classwizard.py new file mode 100755 index 0000000..7c5aeb3 --- /dev/null +++ b/examples/dialogs/classwizard/classwizard.py @@ -0,0 +1,403 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QDir, QFile, QRegExp +from PyQt5.QtGui import QPixmap +from PyQt5.QtWidgets import (QApplication, QCheckBox, QGridLayout, QGroupBox, + QLabel, QLineEdit, QMessageBox, QRadioButton, QVBoxLayout, QWizard, + QWizardPage) + +import classwizard_rc + + +class ClassWizard(QWizard): + def __init__(self, parent=None): + super(ClassWizard, self).__init__(parent) + + self.addPage(IntroPage()) + self.addPage(ClassInfoPage()) + self.addPage(CodeStylePage()) + self.addPage(OutputFilesPage()) + self.addPage(ConclusionPage()) + + self.setPixmap(QWizard.BannerPixmap, QPixmap(':/images/banner.png')) + self.setPixmap(QWizard.BackgroundPixmap, + QPixmap(':/images/background.png')) + + self.setWindowTitle("Class Wizard") + + def accept(self): + className = self.field('className') + baseClass = self.field('baseClass') + macroName = self.field('macroName') + baseInclude = self.field('baseInclude') + + outputDir = self.field('outputDir') + header = self.field('header') + implementation = self.field('implementation') + + block = '' + + if self.field('comment'): + block += '/*\n' + block += ' ' + header + '\n' + block += '*/\n' + block += '\n' + + if self.field('protect'): + block += '#ifndef ' + macroName + '\n' + block += '#define ' + macroName + '\n' + block += '\n' + + if self.field('includeBase'): + block += '#include ' + baseInclude + '\n' + block += '\n' + + block += 'class ' + className + if baseClass: + block += ' : public ' + baseClass + + block += '\n' + block += '{\n' + + if self.field('qobjectMacro'): + block += ' Q_OBJECT\n' + block += '\n' + + block += 'public:\n' + + if self.field('qobjectCtor'): + block += ' ' + className + '(QObject *parent = 0);\n' + elif self.field('qwidgetCtor'): + block += ' ' + className + '(QWidget *parent = 0);\n' + elif self.field('defaultCtor'): + block += ' ' + className + '();\n' + + if self.field('copyCtor'): + block += ' ' + className + '(const ' + className + ' &other);\n' + block += '\n' + block += ' ' + className + ' &operator=' + '(const ' + className + ' &other);\n' + + block += '};\n' + + if self.field('protect'): + block += '\n' + block += '#endif\n' + + headerFile = QFile(outputDir + '/' + header) + + if not headerFile.open(QFile.WriteOnly | QFile.Text): + QMessageBox.warning(None, "Class Wizard", + "Cannot write file %s:\n%s" % (headerFile.fileName(), headerFile.errorString())) + return + + headerFile.write(block) + + block = '' + + if self.field('comment'): + block += '/*\n' + block += ' ' + implementation + '\n' + block += '*/\n' + block += '\n' + + block += '#include "' + header + '"\n' + block += '\n' + + if self.field('qobjectCtor'): + block += className + '::' + className + '(QObject *parent)\n' + block += ' : ' + baseClass + '(parent)\n' + block += '{\n' + block += '}\n' + elif self.field('qwidgetCtor'): + block += className + '::' + className + '(QWidget *parent)\n' + block += ' : ' + baseClass + '(parent)\n' + block += '{\n' + block += '}\n' + elif self.field('defaultCtor'): + block += className + '::' + className + '()\n' + block += '{\n' + block += ' // missing code\n' + block += '}\n' + + if self.field('copyCtor'): + block += '\n' + block += className + '::' + className + '(const ' + className + ' &other)\n' + block += '{\n' + block += ' *this = other;\n' + block += '}\n' + block += '\n' + block += className + ' &' + className + '::operator=(const ' + className + ' &other)\n' + block += '{\n' + + if baseClass: + block += ' ' + baseClass + '::operator=(other);\n' + + block += ' // missing code\n' + block += ' return *this;\n' + block += '}\n' + + implementationFile = QFile(outputDir + '/' + implementation) + + if not implementationFile.open(QFile.WriteOnly | QFile.Text): + QMessageBox.warning(None, "Class Wizard", + "Cannot write file %s:\n%s" % (implementationFile.fileName(), implementationFile.errorString())) + return + + implementationFile.write(block) + + super(ClassWizard, self).accept() + + +class IntroPage(QWizardPage): + def __init__(self, parent=None): + super(IntroPage, self).__init__(parent) + + self.setTitle("Introduction") + self.setPixmap(QWizard.WatermarkPixmap, + QPixmap(':/images/watermark1.png')) + + label = QLabel("This wizard will generate a skeleton C++ class " + "definition, including a few functions. You simply need to " + "specify the class name and set a few options to produce a " + "header file and an implementation file for your new C++ " + "class.") + label.setWordWrap(True) + + layout = QVBoxLayout() + layout.addWidget(label) + self.setLayout(layout) + + +class ClassInfoPage(QWizardPage): + def __init__(self, parent=None): + super(ClassInfoPage, self).__init__(parent) + + self.setTitle("Class Information") + self.setSubTitle("Specify basic information about the class for " + "which you want to generate skeleton source code files.") + self.setPixmap(QWizard.LogoPixmap, QPixmap(':/images/logo1.png')) + + classNameLabel = QLabel("&Class name:") + classNameLineEdit = QLineEdit() + classNameLabel.setBuddy(classNameLineEdit) + + baseClassLabel = QLabel("B&ase class:") + baseClassLineEdit = QLineEdit() + baseClassLabel.setBuddy(baseClassLineEdit) + + qobjectMacroCheckBox = QCheckBox("Generate Q_OBJECT ¯o") + + groupBox = QGroupBox("C&onstructor") + + qobjectCtorRadioButton = QRadioButton("&QObject-style constructor") + qwidgetCtorRadioButton = QRadioButton("Q&Widget-style constructor") + defaultCtorRadioButton = QRadioButton("&Default constructor") + copyCtorCheckBox = QCheckBox("&Generate copy constructor and operator=") + + defaultCtorRadioButton.setChecked(True) + + defaultCtorRadioButton.toggled.connect(copyCtorCheckBox.setEnabled) + + self.registerField('className*', classNameLineEdit) + self.registerField('baseClass', baseClassLineEdit) + self.registerField('qobjectMacro', qobjectMacroCheckBox) + self.registerField('qobjectCtor', qobjectCtorRadioButton) + self.registerField('qwidgetCtor', qwidgetCtorRadioButton) + self.registerField('defaultCtor', defaultCtorRadioButton) + self.registerField('copyCtor', copyCtorCheckBox) + + groupBoxLayout = QVBoxLayout() + groupBoxLayout.addWidget(qobjectCtorRadioButton) + groupBoxLayout.addWidget(qwidgetCtorRadioButton) + groupBoxLayout.addWidget(defaultCtorRadioButton) + groupBoxLayout.addWidget(copyCtorCheckBox) + groupBox.setLayout(groupBoxLayout) + + layout = QGridLayout() + layout.addWidget(classNameLabel, 0, 0) + layout.addWidget(classNameLineEdit, 0, 1) + layout.addWidget(baseClassLabel, 1, 0) + layout.addWidget(baseClassLineEdit, 1, 1) + layout.addWidget(qobjectMacroCheckBox, 2, 0, 1, 2) + layout.addWidget(groupBox, 3, 0, 1, 2) + self.setLayout(layout) + + +class CodeStylePage(QWizardPage): + def __init__(self, parent=None): + super(CodeStylePage, self).__init__(parent) + + self.setTitle("Code Style Options") + self.setSubTitle("Choose the formatting of the generated code.") + self.setPixmap(QWizard.LogoPixmap, QPixmap(':/images/logo2.png')) + + commentCheckBox = QCheckBox("&Start generated files with a comment") + commentCheckBox.setChecked(True) + + protectCheckBox = QCheckBox("&Protect header file against multiple " + "inclusions") + protectCheckBox.setChecked(True) + + macroNameLabel = QLabel("&Macro name:") + self.macroNameLineEdit = QLineEdit() + macroNameLabel.setBuddy(self.macroNameLineEdit) + + self.includeBaseCheckBox = QCheckBox("&Include base class definition") + self.baseIncludeLabel = QLabel("Base class include:") + self.baseIncludeLineEdit = QLineEdit() + self.baseIncludeLabel.setBuddy(self.baseIncludeLineEdit) + + protectCheckBox.toggled.connect(macroNameLabel.setEnabled) + protectCheckBox.toggled.connect(self.macroNameLineEdit.setEnabled) + self.includeBaseCheckBox.toggled.connect(self.baseIncludeLabel.setEnabled) + self.includeBaseCheckBox.toggled.connect(self.baseIncludeLineEdit.setEnabled) + + self.registerField('comment', commentCheckBox) + self.registerField('protect', protectCheckBox) + self.registerField('macroName', self.macroNameLineEdit) + self.registerField('includeBase', self.includeBaseCheckBox) + self.registerField('baseInclude', self.baseIncludeLineEdit) + + layout = QGridLayout() + layout.setColumnMinimumWidth(0, 20) + layout.addWidget(commentCheckBox, 0, 0, 1, 3) + layout.addWidget(protectCheckBox, 1, 0, 1, 3) + layout.addWidget(macroNameLabel, 2, 1) + layout.addWidget(self.macroNameLineEdit, 2, 2) + layout.addWidget(self.includeBaseCheckBox, 3, 0, 1, 3) + layout.addWidget(self.baseIncludeLabel, 4, 1) + layout.addWidget(self.baseIncludeLineEdit, 4, 2) + self.setLayout(layout) + + def initializePage(self): + className = self.field('className') + self.macroNameLineEdit.setText(className.upper() + "_H") + + baseClass = self.field('baseClass') + is_baseClass = bool(baseClass) + + self.includeBaseCheckBox.setChecked(is_baseClass) + self.includeBaseCheckBox.setEnabled(is_baseClass) + self.baseIncludeLabel.setEnabled(is_baseClass) + self.baseIncludeLineEdit.setEnabled(is_baseClass) + + if not is_baseClass: + self.baseIncludeLineEdit.clear() + elif QRegExp('Q[A-Z].*').exactMatch(baseClass): + self.baseIncludeLineEdit.setText('<' + baseClass + '>') + else: + self.baseIncludeLineEdit.setText('"' + baseClass.lower() + '.h"') + + +class OutputFilesPage(QWizardPage): + def __init__(self, parent=None): + super(OutputFilesPage, self).__init__(parent) + + self.setTitle("Output Files") + self.setSubTitle("Specify where you want the wizard to put the " + "generated skeleton code.") + self.setPixmap(QWizard.LogoPixmap, QPixmap(':/images/logo3.png')) + + outputDirLabel = QLabel("&Output directory:") + self.outputDirLineEdit = QLineEdit() + outputDirLabel.setBuddy(self.outputDirLineEdit) + + headerLabel = QLabel("&Header file name:") + self.headerLineEdit = QLineEdit() + headerLabel.setBuddy(self.headerLineEdit) + + implementationLabel = QLabel("&Implementation file name:") + self.implementationLineEdit = QLineEdit() + implementationLabel.setBuddy(self.implementationLineEdit) + + self.registerField('outputDir*', self.outputDirLineEdit) + self.registerField('header*', self.headerLineEdit) + self.registerField('implementation*', self.implementationLineEdit) + + layout = QGridLayout() + layout.addWidget(outputDirLabel, 0, 0) + layout.addWidget(self.outputDirLineEdit, 0, 1) + layout.addWidget(headerLabel, 1, 0) + layout.addWidget(self.headerLineEdit, 1, 1) + layout.addWidget(implementationLabel, 2, 0) + layout.addWidget(self.implementationLineEdit, 2, 1) + self.setLayout(layout) + + def initializePage(self): + className = self.field('className') + self.headerLineEdit.setText(className.lower() + '.h') + self.implementationLineEdit.setText(className.lower() + '.cpp') + self.outputDirLineEdit.setText(QDir.toNativeSeparators(QDir.tempPath())) + + +class ConclusionPage(QWizardPage): + def __init__(self, parent=None): + super(ConclusionPage, self).__init__(parent) + + self.setTitle("Conclusion") + self.setPixmap(QWizard.WatermarkPixmap, + QPixmap(':/images/watermark2.png')) + + self.label = QLabel() + self.label.setWordWrap(True) + + layout = QVBoxLayout() + layout.addWidget(self.label) + self.setLayout(layout) + + def initializePage(self): + finishText = self.wizard().buttonText(QWizard.FinishButton) + finishText.replace('&', '') + self.label.setText("Click %s to generate the class skeleton." % finishText) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + wizard = ClassWizard() + wizard.show() + sys.exit(app.exec_()) diff --git a/examples/dialogs/classwizard/classwizard.qrc b/examples/dialogs/classwizard/classwizard.qrc new file mode 100644 index 0000000..41a5ddc --- /dev/null +++ b/examples/dialogs/classwizard/classwizard.qrc @@ -0,0 +1,11 @@ + + + images/background.png + images/banner.png + images/logo1.png + images/logo2.png + images/logo3.png + images/watermark1.png + images/watermark2.png + + diff --git a/examples/dialogs/classwizard/classwizard_rc.py b/examples/dialogs/classwizard/classwizard_rc.py new file mode 100644 index 0000000..9d78730 --- /dev/null +++ b/examples/dialogs/classwizard/classwizard_rc.py @@ -0,0 +1,3887 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sat May 4 14:59:27 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x58\x32\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\xdc\x00\x00\x01\x7c\x08\x06\x00\x00\x00\xa4\x31\xd5\xdb\ +\x00\x00\x57\xf9\x49\x44\x41\x54\x78\x5e\xec\xdd\xc1\x4b\x55\x69\ +\x18\xc7\xf1\xdf\xb9\xd7\xeb\x95\x0b\x95\x61\x10\x3a\xad\x24\x50\ +\x50\x08\x12\x0a\x71\x56\x21\x83\x25\x48\x10\x11\x2d\x6c\x51\x11\ +\x42\x81\x04\xdd\x6a\x46\xbc\xaf\x60\x50\xa3\xb6\x28\x89\x20\x72\ +\x71\x21\x5c\xb4\x90\xac\x08\x93\x36\xcd\xb4\x72\x06\x23\x62\x86\ +\x1a\x37\x52\xdc\xc8\x82\xb1\xc2\x6c\x91\xf2\xf4\x6c\x82\x10\xbc\ +\x48\x59\x69\x7e\x3f\xf0\xe5\xf9\x0b\x7e\xbc\x8b\xb3\x38\xfa\x11\ +\x00\x00\x00\x00\x00\x00\x00\x00\x82\xf4\x8b\xb7\x43\x79\x00\x31\ +\x7d\x11\x9c\x94\xd6\x06\xa9\x5f\xd2\xed\xa8\xa0\xa0\x45\x5f\x0f\ +\x18\x1c\xaf\x5a\x52\x7a\x68\xd2\x9e\x9f\xb6\x6e\x1d\x4a\x4f\x4c\ +\x3c\x30\xb3\x94\xe6\x01\x14\xe8\x73\x30\xb4\x94\x49\xbf\x4b\x3a\ +\x1c\x4f\x24\x26\xea\xbb\xbb\xfb\x6a\x5b\x5b\x9f\x4a\xba\xeb\xbd\ +\xd3\xa2\x01\x18\xdb\x16\xef\x91\x67\xbd\x15\x15\x7f\x4c\x8e\x8f\ +\x9f\x36\xb3\xc3\x5e\x99\x16\x07\x80\x43\x52\x22\x48\x1d\x19\xe9\ +\x7d\x47\x2c\x36\x39\x7c\xfc\x78\xd6\xcc\x82\xb7\xdd\x2b\xf8\x64\ +\x90\x45\xde\x21\xaf\x72\xb7\x14\xf7\x3b\xe4\x1d\xd3\xc2\x00\x08\ +\x52\xa5\x37\xe2\x59\x4f\x69\xe9\xdf\xb9\xd1\xd1\xb3\x66\x76\xd4\ +\x2b\xd7\x1c\xbf\x4a\xeb\x83\x34\x15\xa2\xe8\x49\x46\xea\x0c\x92\ +\xf5\xd5\xd5\x75\x69\x41\x00\xc6\x76\xd0\x9b\xf6\x01\x4d\x0f\x34\ +\x37\x5f\x9d\x9d\x9d\xed\x30\xb3\x5d\x5e\x91\xe6\x71\xa7\xad\xad\ +\xcb\x5f\xc1\x99\x20\x59\x67\x32\xf9\xf6\xbf\x5b\xb7\xba\x42\x08\ +\x31\xe5\x07\xc0\x87\x76\xfd\x4c\x49\xc9\xfd\xb1\xe1\xe1\x73\x66\ +\x76\xc2\xab\x56\x1e\xed\x52\xcd\xa9\x54\xea\x5e\x90\x6c\x4e\x37\ +\x95\x1f\x00\x33\xab\xf1\x82\xd7\xec\xad\x56\x7e\xca\x48\x17\x7d\ +\xa4\x53\x17\xaa\xaa\xfe\x0a\x92\x5d\xae\xad\xbd\xdf\xdf\xd4\x74\ +\x63\x60\xdf\xbe\x1e\x33\x4b\x28\x2f\xf0\x59\x00\x8f\xbd\x97\x51\ +\x14\x3d\xd1\x02\x1c\x18\x19\xe9\x2e\xdb\xb4\xe9\xc5\x9b\x5c\x2e\ +\x71\xbe\xbc\xbc\x26\x59\x5c\xfc\x7a\xef\xe0\xe0\xa0\xa4\x42\x6f\ +\x95\xf7\xbf\x56\x2c\x44\x5a\x54\x30\xb3\xa4\xa4\x6a\x6f\x2c\x5b\ +\x5f\x9f\xdd\xd8\xd0\x90\xfb\x39\x9d\x3e\xa2\xaf\x0e\x60\x7c\xdb\ +\xbc\x16\x7d\x13\x00\x83\x8b\xb4\x52\x01\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\ +\x47\x1f\x80\x8c\xd4\x16\xa4\x57\x7e\xc3\xca\x18\x1e\x62\xfa\x6e\ +\xb0\x7a\xc3\x86\x7f\x24\xad\x89\x45\x51\x26\x23\xdd\x0b\x52\x8b\ +\x96\x13\x30\xb8\x20\x15\xfe\x26\x95\x6a\x19\x98\x7a\xfe\xfc\x48\ +\x2c\x1e\x9f\x29\xdd\xbc\xf9\xdf\xd4\xba\x75\x25\x51\x14\xf5\x06\ +\x69\x67\xbb\x54\xb7\x5b\x8a\x6b\x29\x02\x32\x52\x3a\x48\x5d\x92\ +\x22\xbf\x97\xbc\x67\x5a\xe2\x82\xd4\xe4\xd9\x95\xc6\xc6\x3f\xcd\ +\x2c\x5c\xdb\xbf\x7f\x28\x48\xf6\xb1\x8c\x94\xd5\x52\x04\x7c\x68\ +\xef\x2a\xa0\xaa\xca\xda\xf6\xbe\xa2\x82\xd9\x1d\x60\x8c\x9d\x63\ +\x8d\xdd\xdd\x39\xea\x98\x63\xd7\xd8\x8d\x88\x08\x16\x12\x62\x61\ +\xa0\x98\x01\x82\x8d\x05\x82\x01\x8a\x8a\x58\x58\x18\x08\x62\x22\ +\x29\x20\xa1\xf2\x3f\xef\x5d\xfb\xac\x75\xbf\xfb\xe3\xcc\xe0\x10\ +\xd7\x99\xf7\x59\xeb\x59\x87\xb3\xcf\x61\x3e\xef\xb7\x79\xef\xde\ +\xfb\x8d\xe7\x5d\x96\x23\xc7\x7a\xf9\x47\x7a\x08\xd7\xaf\x1b\x6b\ +\xd5\xa2\x3f\xe2\xc2\x3a\x6a\x68\x79\xc1\xc9\x60\xa0\x79\xae\x5c\ +\x51\xd1\xaf\x5e\x99\x7b\x5b\x5a\x56\x82\x81\x85\xad\x2e\x5a\xf4\ +\xbd\xfb\x82\x05\x07\xb6\x36\x6e\xec\x4b\x46\xb7\x2c\x67\xce\xea\ +\x42\xd7\xc0\x60\xc4\x85\x85\x35\xb4\x2e\x53\xe6\x95\xb2\x3a\xec\ +\xeb\xd1\xc3\x7b\x47\xdb\xb6\xdd\x74\xd4\xe0\x9a\xc0\xb8\xbe\x90\ +\x41\xed\xea\xd0\xc1\x17\xab\x5b\x07\xdc\xdb\xd2\xfd\x15\x5b\xdb\ +\x3d\xb8\x1f\xb3\xae\x6a\xd5\xeb\xa6\x2a\xd5\xd7\xd7\xfe\xfe\xad\ +\x31\x5e\x07\xdc\x6d\x22\x44\x4f\xc1\x60\xe8\xc0\x8a\xf1\x13\x56\ +\x87\x5b\xd2\xd8\xb4\xf9\x93\xd0\x41\x5c\xb5\xb5\x5d\x67\x55\xaa\ +\xd4\x9b\x35\xa5\x4a\x85\x5a\x97\x2d\x5b\x1b\x06\x95\xb4\xbe\x7a\ +\xf5\x07\x30\xb6\x29\x66\xfa\xfa\x6d\xc9\xf8\xb6\xb7\x68\xe1\x8f\ +\xfb\xe6\x78\xd6\x50\x63\x9b\x69\x2f\xb2\x12\x0c\x76\x9a\x7c\x11\ +\x22\x57\x76\x7d\xfd\x6c\x3f\x75\xe9\xe2\x9a\xa7\x58\xb1\xb0\x7c\ +\xa5\x4b\xbf\x1d\xe4\xea\xba\xb9\xd7\xf6\xed\x9b\xe6\x44\x44\xe4\ +\x12\x3a\x88\x26\x33\x66\x6c\x9d\xf1\xf2\xa5\xed\x8c\xe7\xcf\x1d\ +\x12\xa2\xa3\xcd\x31\x94\x23\x6f\xc9\x92\x71\x31\x61\x61\xee\x5f\ +\x13\x13\xad\xb3\xe5\xc8\xf1\xa9\xfb\xa6\x4d\x1e\x18\x7f\x96\xb7\ +\x44\x89\x10\x01\xe4\x29\x5e\x3c\xac\xec\x2f\xbf\xe4\x81\x11\xaa\ +\xe7\x2c\xcb\x9c\x2a\x0c\x06\x56\x82\xd9\xe0\xc2\x0d\x35\x6a\xf8\ +\xaf\xc8\x9f\x3f\x1a\xf7\x5d\xc0\xbe\x60\xa5\xbf\x58\x1d\xab\x61\ +\xd5\x70\xc4\xb5\x49\x16\xfc\x9b\x73\x81\xb5\x2e\x59\x59\x55\xd9\ +\xd3\xa5\x8b\xb7\xf3\xc0\x81\x47\xb0\x82\x8d\xa3\x95\xcc\x75\xe8\ +\x50\x77\x3c\xeb\x25\x57\xf0\xf2\x34\x76\x68\xd0\xa0\xf3\x18\x5b\ +\x02\x16\xc1\xbd\x33\x9d\xf9\xc0\x49\x59\x11\xbf\x63\xb0\xc1\x15\ +\x02\x73\x7a\x2c\x5c\x38\xe0\xc6\x96\x2d\x8e\xb8\x2f\x2b\xfe\x1c\ +\xe4\xcd\x9c\x06\xc6\xe3\xac\x14\xbb\xbd\x79\xf3\x5f\xb3\xf0\xdf\ +\x5e\x18\x1c\x06\x1a\xc3\x89\xe2\x44\xc6\x65\x5f\xaf\xde\x5d\xdc\ +\xe7\x95\x06\x57\x8b\xc6\x5c\x7e\xfb\xed\x30\xc6\x72\x90\x81\xad\ +\x2c\x58\x70\xab\xc6\x36\x73\x8a\xc8\x22\x30\xd8\xf0\xf2\xc9\x3f\ +\xde\xc2\x7f\xb2\xaa\x95\xc5\xca\xe0\x8e\x6b\xca\xca\xc2\x85\x03\ +\x9e\x5f\xb8\x60\x8b\xf7\x47\xea\xc0\x2a\x9d\x13\xac\xe3\xbf\x7d\ +\xfb\xf6\x9b\xdb\xb6\x59\xe2\x3e\xbb\x00\x4c\x84\x68\x4a\x86\x75\ +\x74\xec\xd8\x3d\x8b\x85\xa8\x0d\x03\xf3\xa1\x7b\x72\x12\x9d\x9a\ +\x31\xe3\xd8\xfd\x23\x47\x86\xcb\xcf\xe3\x02\x56\x14\x3a\x04\x06\ +\xc7\xeb\x86\x82\x91\xe4\xa4\xd8\xdf\xb3\xe7\x91\xe4\xc4\x44\x33\ +\x18\xdb\x6f\x60\x5e\x1d\x59\xa9\xf5\xc0\xa6\xe0\x10\x30\x87\x34\ +\xb8\x8e\x64\x60\x70\xb0\x3c\xc1\x35\x69\xa9\x4a\x15\x77\xb0\x5f\ +\x3f\xe7\xe4\x4f\x9f\xe8\xdf\x3e\x09\xec\x62\xae\xaf\xef\x2b\x57\ +\xbb\x8f\xb8\x56\x11\x59\x09\x06\x63\x81\x10\x45\x60\x68\xea\xed\ +\x9a\x45\xee\xdc\xcf\x03\x9c\x9c\x36\xc2\xc8\x16\x81\x0d\x85\x8e\ +\x61\xa1\x10\xc5\xb0\x92\x55\xd7\x58\x91\x27\x2a\xdb\xc7\x35\x25\ +\x4b\xde\x7c\xe1\xed\x4d\x2b\xf2\x02\xb0\x11\xa8\x12\x80\xb9\x81\ +\xc1\xdb\x55\x85\x0b\x47\x38\x0d\x18\x70\xea\xd1\x99\x33\xd5\x44\ +\x16\x82\xc1\x61\x83\x2e\x30\x36\x8a\xd1\x7d\xdd\xf6\xcb\x2f\x67\ +\xe2\xc2\xc3\x2d\x28\xd6\xa5\xc3\x81\x71\x17\xf0\x33\xb8\x19\xdc\ +\x44\x31\x3b\x9c\xed\x62\xdd\xe7\xcf\x77\xa5\x8c\x14\x70\x10\x98\ +\x4f\xe3\xfd\x1a\x60\x0a\x1c\x2f\x57\x2e\x2d\x5f\xbe\x6d\x65\xa1\ +\x42\x37\xe4\xd6\xd3\x09\xf4\xa1\x2d\xe9\xb7\x52\xe0\x44\x7a\x81\ +\xc1\x98\x0d\x4f\x3a\xfd\xc1\x82\x5f\x91\x89\xf2\xe6\xea\xda\xb5\ +\xdb\x60\x64\x26\x60\x2b\x50\x67\xc3\x21\x5e\xa6\xa6\xf5\x90\x29\ +\xe3\xaf\xac\x6a\xcb\xf3\xe6\x7d\xf3\xe1\xf1\xe3\xd5\x30\xb2\x59\ +\x60\xf5\x54\xb6\xc9\xb3\xe9\xbd\x0d\xd5\xab\x3f\x96\x86\x9a\xb2\ +\xb2\x48\x91\x29\xab\x8a\x16\x35\xa1\x71\x32\xd8\xd4\x82\xe6\x78\ +\xe6\x09\xee\x98\x2f\x44\x01\xc1\x60\xfc\xd3\x6d\x19\xa5\x4e\x81\ +\x29\xc8\xda\xb8\x1c\xf9\xe2\xc5\x4a\x0a\x2a\x83\xa5\x7f\x10\xc7\ +\xcf\x78\xf2\xb6\x5a\x95\x2e\xfd\x86\x56\x66\x04\xca\xa7\x61\xcc\ +\x40\xa4\x02\x78\x59\x3d\x14\xe3\x34\xcb\x91\x23\x96\xae\xa7\xa7\ +\x4f\xdf\x82\xb4\xb0\x17\xb8\x4f\xda\xdd\xa9\xd3\xe5\x8b\x16\x16\ +\xbd\x35\xd2\xca\x72\x92\x91\x2d\xd3\xd7\xf7\xc1\xf6\x3a\xc8\x71\ +\xe4\x48\x03\xf1\x0f\xc1\xe0\x6d\xa4\xc1\x8a\x02\x05\xce\x21\x4c\ +\xb0\x53\x6e\xc3\xba\x82\xd9\x7f\x20\x6f\xab\x0a\xac\x9f\x94\x90\ +\x30\xef\x99\xa7\xe7\x3a\x72\xa4\x7c\xeb\x73\xc2\xe0\x12\xd4\xe9\ +\x6c\xdd\xbb\x7b\xef\xea\xd4\x49\xed\x3c\xc1\x99\x2e\x0a\xce\x95\ +\xc4\x2b\x36\x36\x8e\xf2\xbc\xd7\x5f\xbe\x7f\x17\x2b\x5e\x10\x38\ +\x30\x39\x39\xb9\xdf\xdb\x80\x80\x35\xf4\xbf\x23\x18\x8c\x74\x58\ +\x29\x86\x83\x33\xc1\x8a\x3f\xf0\x67\x30\x00\x5b\xff\xd9\xca\xec\ +\xbe\x70\xe1\xcc\xf3\x26\x26\x87\xf0\xce\x62\x38\x55\xae\x92\xc1\ +\x2d\xcd\x96\xed\xf3\xc5\xe5\xcb\x77\x63\x6c\x9a\xe6\x79\xcf\xa1\ +\x79\xf3\xd1\x58\xd5\xc2\xe9\x1d\x18\xea\x41\x3c\x6b\x9c\x5e\xdb\ +\x6b\x06\x1b\x9c\xfe\x7f\xe4\x73\xd6\x04\x27\x82\x86\x70\xae\xdc\ +\x81\xb1\x7d\xf1\x5a\xba\xd4\x09\xf7\x33\xc0\x02\x5a\xef\x56\x76\ +\x19\x32\xe4\x2c\x19\x9c\x53\xff\xfe\xb6\x72\x9b\xfa\x3d\x60\x30\ +\x18\x2f\x7d\x7d\xdb\xf9\x6d\xdd\xba\x43\x3a\x58\x0a\xa5\xb2\x05\ +\x2d\x89\x95\x2d\xc6\xa6\x5c\xb9\xd0\xcf\x49\x49\x73\x28\xd8\x2e\ +\xfe\x11\x18\x0c\x4e\x71\xeb\x07\x16\x55\x9c\x47\x32\x0b\x65\x32\ +\x98\x1d\x3f\x6f\xc7\xf5\xeb\xad\x9d\x3b\x1d\xf0\x4e\x3d\xf1\x37\ +\x20\x43\x0c\xa7\xf1\x7b\x7f\x51\xee\xc4\x60\xb0\xf3\xa8\x20\xb2\ +\x50\x02\x64\x78\xe0\x21\xf8\x65\x73\x83\x06\xb7\x60\x6c\xe3\x40\ +\x95\xd6\xbb\x55\x64\x22\xf7\x75\x32\x30\x70\xa0\x34\xb8\xea\x66\ +\x7a\x7a\xef\xe4\x7f\x63\x9c\xf8\x36\x18\x0c\x46\x62\x6c\xec\xe8\ +\xe3\xe3\xc7\xbb\x21\x4c\xf0\x91\x8c\x06\x75\x77\x4f\x8e\x4f\x9e\ +\xdc\x42\xbb\x6a\x02\x8c\x90\x31\xcb\x30\x7a\x4f\x72\x86\xa9\x91\ +\x91\x01\xb2\x58\x3e\x58\xe4\xc9\x13\xfb\xca\xdf\xbf\xb7\x60\x30\ +\x18\x7f\x59\x06\xd4\x2d\xfc\xe9\xd3\x15\xbb\xda\xb7\xbf\x46\x4e\ +\x95\x25\xb0\x43\x13\x21\x7a\x6b\x18\xdc\x51\x8c\x27\x5c\x34\x37\ +\xdf\x47\x61\x94\x88\x67\xcf\x56\x91\x61\xca\xca\xf4\x93\x60\xca\ +\xa9\x69\xd3\x8e\xe1\x59\x27\xf1\xb7\xc0\x60\xb0\xe1\x15\x07\x87\ +\x3f\x3e\x71\x62\x23\xca\x7f\x6e\xed\xed\xd9\x73\x94\x90\x40\xcc\ +\xee\x93\xad\x91\x51\x88\xf4\x6c\x56\x03\xeb\x86\x3d\x7e\x3c\x1e\ +\x21\x04\x75\x20\x7d\x4d\x89\x12\x2f\xe1\x64\x99\x9b\x76\xcf\x2f\ +\x83\xc1\x86\x57\x15\xfc\x03\x9c\x24\x24\xb0\xdd\x8c\xa2\xac\x96\ +\x57\x01\x01\x86\x1a\xef\x65\xc7\xf9\x2f\x8e\xb6\x99\xe4\xf9\xfc\ +\xfe\x00\x39\x83\xc1\x46\x97\x4d\x33\xf3\xc6\xbe\x6e\xdd\x63\xb4\ +\x92\xc1\xc0\x76\x2d\x10\xa2\x90\x2c\xd0\x9d\x45\x63\x70\xb2\x04\ +\xe0\xdd\x09\xa0\x8a\xb6\xa1\xe4\xf5\x04\xef\xe0\x99\x03\x1c\x2a\ +\x55\x45\xda\xc0\x60\x30\x9e\x79\x78\xb4\x44\xce\xe9\x33\x0d\x67\ +\xc9\x07\xba\xc2\x3b\x99\x18\x72\xf5\x2a\x05\xc8\x8d\x70\x3f\x55\ +\x66\xb1\xc4\x99\x65\xcf\x1e\xa9\xfe\x59\xa5\x7a\x89\x6b\x5a\xf3\ +\x53\x19\x0c\x5e\xf1\x12\x3f\x7d\x1a\xeb\x63\x6d\xbd\x77\x4f\xd7\ +\xae\xc7\x51\xa1\x40\x86\x94\x02\x7d\xcc\x3b\x78\x36\x80\x92\x9d\ +\x71\x9f\x00\x6f\xe5\x0b\xd4\xe3\xad\xc5\x98\xe9\xdd\x7d\xfb\xb6\ +\xc2\xf0\x92\x60\x80\x81\xb2\x0a\xbd\xb1\xf8\xdb\x60\x30\xd8\xe8\ +\xb2\x83\xed\xc0\xb1\xa8\xab\xdb\x4b\x62\x4c\x6a\x51\xdd\x7a\xf5\ +\x5a\x2b\x2a\xd1\xa4\x0e\x2d\xab\xd1\xcb\x83\xf5\xf7\x76\xeb\xe6\ +\xa5\xa1\xad\x92\x2c\x6b\xef\xd2\x08\x06\x83\x8d\xaf\xe4\xc7\x77\ +\xef\xcc\x7c\xd7\xad\xdb\x99\x98\x98\x58\x1f\x06\xd5\x01\x4c\x39\ +\xd0\xa7\xcf\x49\xa1\x01\x24\x4b\xef\x95\x82\xb6\xd7\x8e\x8c\x1a\ +\x75\xf2\xd9\x85\x0b\x8d\xc4\x77\x81\xc1\x60\xa3\x2b\x00\xf6\x04\ +\x7f\xfa\x43\x08\x7d\xac\x78\x51\x38\xd3\xd1\x2a\xd6\x9f\x72\x32\ +\xc1\xc1\x38\xc3\x45\xd3\x78\xec\xfb\xf7\x54\x02\x35\xea\x7d\x60\ +\x20\xad\x86\xe3\xb1\xda\x1d\xc1\xf5\x28\xae\x53\x70\xcd\x2f\xd2\ +\x06\x06\x83\x81\xf3\xdd\x52\x25\x2e\xa7\x49\x0f\x63\x63\x17\x18\ +\x5b\x9b\xf1\x42\xe4\xa0\x94\x30\xe9\x58\x89\x05\xe3\xe5\x3b\x81\ +\x7f\xd3\x9b\xc9\xca\xcb\x0c\x06\xad\x6e\xa4\x1c\x56\x6f\xe4\xc8\ +\x6d\x93\xee\xdc\xb1\xe9\x64\x65\xb5\xab\x6c\x93\x26\x9e\x02\x28\ +\x58\xbe\x7c\x48\x1b\x33\xb3\x2b\x64\x8f\x25\x85\xf8\x4d\x25\x44\ +\x17\xbd\x9c\x39\x13\xbb\xad\x5f\xef\x32\x3f\x3c\xdc\xba\xd9\xec\ +\xd9\x47\x55\xd9\xb2\x55\xcc\xa1\xa7\x77\x38\x35\xa5\x68\xf2\x70\ +\x82\x79\x05\x83\xc1\x50\x8c\x42\x8c\x90\x4e\x91\x9b\xeb\x6b\xd6\ +\x1c\x1c\xe0\xec\x3c\xca\xba\x5c\xb9\x07\xd4\x6c\xe4\x9e\xb3\xf3\ +\x16\x52\x8f\x96\xef\xed\xc5\x16\xf3\x8b\x65\xc9\x92\xef\xe8\xd9\ +\xaa\x22\x45\x0e\x23\xab\x65\xb0\xcb\xd0\xa1\xe7\xe8\xf7\x2d\x8b\ +\x15\xeb\x22\x24\x34\x2a\x19\xde\x81\xd6\x72\x88\xc1\x60\xf8\xf9\ +\xf9\xe5\x80\xcc\xfa\x61\x24\x35\xc7\x29\xdb\x48\x18\x54\xfc\x99\ +\x59\xb3\xa8\xca\x7c\xb4\x90\x80\x5a\xd8\x0e\x7a\x16\xe4\xe5\xb5\ +\x16\xc9\xd2\xc7\xf0\x7e\x34\xe9\x64\xae\x2a\x54\xe8\x3c\x8d\xef\ +\xef\xd3\x67\xb9\x14\x3d\x1a\x88\x7b\x5f\xf0\x14\x8d\x5f\x58\xb6\ +\x0c\x17\x4d\x30\x18\xec\x40\xe9\x0c\xe5\xb0\x55\xc7\xc6\x8c\x39\ +\xe9\xd8\xba\xb5\xdb\x03\x57\x57\x8a\xc5\xcd\x01\x4b\x08\x89\xfd\ +\x7d\xfb\xf6\xa2\x95\x0d\x4e\x94\x47\x4f\xcf\x9d\x1b\x42\xc9\xd2\ +\x3b\x5a\xb5\xba\x80\x31\xb5\x92\x18\x56\xc6\x59\x02\x30\x33\x30\ +\x68\xa9\x04\xce\x51\x81\x10\xf3\xe8\xf8\xf1\x25\xe2\xff\x83\xc1\ +\xe0\x50\x01\x38\x00\x9c\x0d\x8e\x00\xf3\x69\x3d\xcf\xed\x3a\x6c\ +\x98\x1b\x19\x1d\x18\xb1\x3c\x7f\xfe\x9d\x3e\x56\x56\x66\x8f\xdd\ +\xdc\x36\x62\x75\xbb\x84\xe7\x7d\xe4\x7b\xf9\xd7\x56\xaa\xf4\x9c\ +\x3c\x9e\xa4\xbd\x82\x77\x93\x60\x7c\x56\x73\x85\xc8\x27\xd2\x04\ +\x06\x83\x8d\xb2\xd1\x75\x7b\xfb\x9d\xd0\xc8\xbc\x2d\x0d\x29\x05\ +\x2b\x9e\xa7\x4c\x96\xfe\x49\x9e\xf5\x06\xd0\x38\xe4\xda\x2f\x04\ +\x9e\x39\xb3\x61\x5d\x95\x2a\x8f\xe4\x19\xd1\x5d\xa4\x19\x0c\x06\ +\x1b\x5d\x6d\x70\xf6\x87\x27\x4f\x56\xe3\x2c\x77\xf4\xd4\x1f\x7f\ +\x2c\xc3\x7d\x2e\x45\xd6\x8f\x64\xfa\x48\x39\x8c\x02\xeb\x18\xff\ +\x19\x9c\x0a\x91\xde\xdd\x57\xd7\xad\x5b\xf1\x5f\x28\xff\x51\x89\ +\x74\x06\x83\x21\xa5\xf7\x2a\x82\x75\xc0\x62\xe0\x41\x15\x82\xe4\ +\x14\x2c\xc7\xfd\x81\xa6\x33\x67\x1e\xeb\x6c\x63\x63\x87\x31\x2f\ +\xf9\xee\x2f\xe0\x4f\xa0\x2b\xc6\xe2\xc5\x3f\x07\x83\xc1\x90\x1e\ +\xca\x14\xc7\x36\x6d\x2e\x07\x04\x04\x64\xa4\x62\x18\x83\xc1\x08\ +\x0c\x0c\xd4\x27\x99\x07\x19\x5e\x78\x01\x03\x5c\x8f\x6b\x8f\xef\ +\x6d\x9f\xbc\x58\x88\x9f\xf1\xfb\xfd\xbe\xb1\x53\x63\x30\x18\x90\ +\x58\xef\x7a\x62\xf2\xe4\x93\x56\xa5\x4a\xdd\x57\x9a\x8f\x98\x08\ +\xd1\xf6\x3b\x83\xf2\xbb\xa5\xf1\x7a\x53\x20\x5d\xa4\x0a\x06\x83\ +\xcf\x78\x1d\xc1\x45\xd4\x15\x28\xf8\xca\x15\x2b\xdc\xb7\x11\xdf\ +\x81\xb3\xf3\xe7\xb7\xa3\xec\x16\xd4\xe9\x05\x7e\x08\x0c\xfc\x93\ +\x24\x69\x06\x83\x8d\x2e\x87\x14\x2c\xea\x00\x96\x15\xdf\x81\xa5\ +\x7a\x7a\xfb\xd4\xc2\xb6\xbb\x76\x39\x90\xf0\x91\x48\x3b\x18\x0c\ +\x06\x55\x8f\x93\x4a\xb4\xb1\x10\xe5\xfe\xe4\x9d\x26\xe0\xd7\x0d\ +\x35\x6a\x3c\x7c\x70\xe4\x88\x89\xf3\xc0\x81\x7a\xe2\xbb\xc0\x60\ +\xb0\xc1\xed\x04\x53\xcc\x72\xe6\xdc\x2e\x52\x87\x0a\x06\xa9\x76\ +\xbe\x28\xc4\x7d\x30\xae\x15\xb9\x3c\x47\xfd\x7f\x8e\xa0\x6e\x9c\ +\xad\xc4\xdf\x00\x83\xd1\xc1\xca\x6a\x7d\xd5\x3e\x7d\x2e\x0f\x3d\ +\x75\x2a\xe4\x1b\x06\x39\x5c\x85\x55\xd0\xb0\x55\x2b\xff\xee\x1b\ +\x37\x3a\xa0\x74\x68\x97\x5e\x8e\x1c\xc5\x54\x7a\x7a\x67\xfe\xf3\ +\x29\x62\xb2\xea\x37\x65\x75\xb1\x62\x4b\x71\xcd\x6f\x2c\x44\x25\ +\xc1\x60\xfc\x75\x5f\xbc\x31\xe0\x20\xcd\x71\x2a\x72\x85\xb1\x15\ +\xa7\x9e\xed\x10\x3a\xfa\x10\xfb\xe1\x03\x55\x9a\x0f\x04\xfb\x61\ +\x4b\xa9\x2e\x03\xb2\x2a\x57\xae\xe3\x7f\x75\x5b\x50\x1f\xac\x02\ +\xc6\xa2\x36\x2a\x34\x36\x2c\x6c\x1e\x8c\xcf\x0b\xf7\x97\xc4\xf7\ +\x81\xc1\x81\x73\xd2\xcf\x4c\x02\x53\x3c\x97\x2c\x71\xa6\x7e\xed\ +\x42\x02\xe9\x62\x97\x28\x21\xfa\xe5\x8d\x1b\x03\xfe\x73\x5b\x4a\ +\x18\x15\xb9\x79\x6f\x82\x77\x85\x4a\x65\x80\x65\xdf\x6d\x7f\x8f\ +\x1e\xe5\x54\x18\xaf\xde\xb7\x6f\xc4\xf7\xf4\x25\x63\x30\x0c\x9b\ +\x35\xdb\xae\x9f\x3f\x7f\x98\x00\x9e\x9e\x39\x63\x84\xcb\x15\x50\ +\x98\x08\xd1\x3d\x39\x3e\xbe\x65\xa5\x4e\x9d\xae\x97\x6d\xd8\x30\ +\x42\xfc\x17\x61\x5b\xb1\xe2\x75\xe5\x40\x6b\xf7\xd3\x4f\x77\xb0\ +\xba\x7d\x42\xb0\xf3\x39\xfa\x56\x1b\xcb\xd2\x8e\xb4\x82\xc1\x5b\ +\xcd\xd2\x09\xb1\xb1\x8b\xa8\x1b\xd0\xb9\xb9\x73\xad\x97\xe5\xcb\ +\x57\x15\xab\xde\x1a\xf0\x31\xfa\x9a\x47\x47\x86\x84\x58\xe0\x9d\ +\xc2\xff\xa5\x6d\x64\x5e\x18\x96\x19\x29\x3b\x21\x46\x92\x00\xbd\ +\xfa\xd7\xdb\x5b\xb4\xb8\xa9\x18\xde\x8e\xd6\xad\xfd\x92\x92\x92\ +\xfe\x89\x94\x1a\x83\x8d\x2e\x37\xd8\x03\x9c\xba\xb2\x48\x11\x92\ +\x5e\x4f\x56\x4b\xb2\xd7\xaf\x7f\x1f\x59\x2c\x9d\xff\x6b\xe7\xb6\ +\xf2\xa8\x83\x8a\x52\x0c\xec\xfa\xc6\x8d\x3b\x0f\xf6\xed\x7b\x82\ +\xee\x91\x0d\x10\x41\x7b\x6c\xe8\xd7\x57\x10\x40\x2a\xcd\x00\x2f\ +\xa6\x55\xbd\x97\xc1\x7d\xdc\xef\xbb\xb8\x6c\xb4\xab\x54\x29\x08\ +\x2b\xdc\x27\xc7\x6e\xdd\x4a\x8a\xff\x1a\x76\x77\xea\x74\x52\x31\ +\x38\x74\x65\x89\xc3\x35\xc1\xb6\x7c\xf9\x67\x5f\x92\x93\x97\x46\ +\x04\x05\xad\xc2\x92\xdf\x44\xbb\x3c\x88\xb4\x0c\x29\x45\x67\x79\ +\xbe\x7c\xcb\x44\xda\xc0\x60\xa3\xab\x02\x4e\x8f\x0b\x0b\xb3\xc0\ +\xf5\x67\xf1\x5f\x02\xb5\xa7\xc5\x0a\x97\x60\x63\x64\xf4\xf2\xda\ +\x86\x0d\xbb\xc8\x88\xd4\x8a\x4d\xc5\x8b\xbf\x7b\x78\xe4\x48\x67\ +\x18\x5b\x03\xb0\x80\x3c\xe8\xb6\xc4\xaa\x16\x86\xe7\x4b\xae\x6e\ +\xdb\x56\x02\xda\x16\xeb\xe3\xc3\xc3\xe7\xcb\xae\x2e\x69\x05\x83\ +\x65\xda\xeb\x81\xb9\xff\x6b\x6e\x5b\x1f\xea\xa4\xf9\xf4\xec\xd9\ +\xf5\x10\x9b\xd9\xa7\x6e\x08\xd1\xa4\xc9\x9d\x75\x95\x2b\x07\xee\ +\xeb\xd1\xa3\x9a\xb6\x4c\x1a\xb6\x99\xb7\x95\x52\x8d\xc3\xa3\x46\ +\x0d\x24\x83\x14\x7f\x0f\x0c\x06\x03\xc1\xc8\x63\xe7\xe6\xcd\x73\ +\xf1\xdf\xb1\x63\x11\xb5\xb5\xc5\x56\xf2\xf1\xe7\xcf\x9f\x17\xc1\ +\x90\x16\xa7\xd6\xae\x36\x29\x2e\x6e\x0a\x49\x65\x2f\xd3\xd7\x8f\ +\xbd\xb0\x6a\x55\x75\x91\x66\x30\x18\x5c\x76\x31\x17\x86\x67\x4b\ +\xba\x84\xb2\xb5\x51\x6d\x30\x0f\xa8\x12\x5a\x80\x03\xe5\x0f\x5a\ +\xe1\xc8\xcd\x8b\xe7\x5d\xff\x4a\x01\xf8\xff\xab\xf4\x32\x18\xbc\ +\x97\xce\xfb\xf0\xe8\xd1\xd2\xef\x1f\x3e\x5c\x8d\xfb\xc1\x5a\xde\ +\xc8\x6e\x14\x37\x59\x20\x44\x11\xfc\x5c\x18\xfc\xb0\xba\x48\x91\ +\xd7\x49\xf1\xf1\x0b\x14\xa1\x19\xad\xf7\xf3\xcb\x74\x9e\x3a\xb2\ +\xeb\x66\x12\x78\x05\x1c\x25\xfe\x07\x0c\x06\x1b\x5e\x4b\x50\x5f\ +\xeb\x8c\x37\x57\x66\x76\x87\xe3\x7a\x01\x4c\x81\x5a\xd3\x6e\xbc\ +\x97\x5a\x38\x40\x85\xe7\xa1\x14\xd4\xc4\xf5\x2d\xc4\x43\x43\xe0\ +\x01\x75\x86\x78\x68\xb0\x3c\xf7\xed\x07\xff\x24\x53\x86\xc1\x60\ +\x43\x2c\x4f\xde\x4b\xe8\xcc\xbf\x92\x61\x83\xc4\x8b\x2b\x56\xac\ +\xc3\x78\xaa\x86\xb3\xa3\x4d\x9b\xe9\x66\x39\x72\xc4\xd3\xbb\x36\ +\xe5\xca\x85\xa2\xee\xc9\x22\x3e\x22\xc2\x74\x67\xbb\x76\xd7\x69\ +\xcb\xba\xaa\x54\x29\x43\xf1\xa7\x60\x30\xd8\xe8\x1a\x20\xbd\x6b\ +\xc1\x89\x89\x13\x4f\x5a\xe4\xca\x15\xa7\xac\x56\xa9\x09\xc9\x5c\ +\x30\x33\xeb\x4a\xc1\x72\x0a\x9a\x23\x73\x85\xf4\x2f\x92\x70\xee\ +\xb3\xfa\x9c\x98\x38\x98\xe2\x7a\x30\xd4\xa6\xe2\x2f\xc1\x60\xb0\ +\xd1\xe5\x02\xbb\x86\x3f\x7f\xbe\x62\x77\xc7\x8e\x57\xd0\xf0\xe1\ +\xbe\x5d\xe3\xc6\xf9\x53\xcd\x0e\x87\x36\x7d\xe0\xa9\x53\x1b\x9e\ +\x79\x7a\xae\x83\xa2\xef\x7d\x6c\x2d\xa3\x97\xe7\xc9\x53\x82\x94\ +\x7c\xd3\x96\x93\xc9\x60\xb0\xe1\x15\x03\x87\x81\xa6\x60\x03\x19\ +\x10\xa7\xfc\xb8\x91\xb8\x76\xa6\xd5\x6f\x67\x87\x0e\x57\xe4\x3b\ +\x95\xc0\xc9\xc9\x9f\x3e\x99\x29\x67\x3e\x3c\xef\x03\xfe\x1d\x01\ +\x1a\x06\x83\x1b\x32\x42\x65\x37\x0c\xdc\x8b\x9b\xcd\xa0\xbf\xcc\ +\xf5\x1a\x05\xee\x04\x4f\xa2\xb9\x5f\x6c\xcf\xad\x5b\x2f\x60\xf8\ +\x2c\xde\x7b\x46\xef\x65\x37\x30\x70\xc2\xf5\x1e\x0c\x2d\x27\xae\ +\x6b\x41\x4f\xfc\x3c\x55\xde\xa7\x05\x0c\x06\xe3\x43\x50\x50\x93\ +\xc3\x23\x46\x9c\x93\xce\x92\xaf\x6b\x2b\x54\xf0\x4a\x4d\x4c\x86\ +\x3c\x94\xd8\x8a\x3e\x91\x2d\x6e\x93\x70\xfd\x4c\x5b\xd0\xb4\xc7\ +\xea\x18\x0c\x96\x4f\xeb\xf9\x36\x20\xc0\x92\x4a\x7b\xd4\xed\x8f\ +\x84\x88\xa1\x3c\x4d\xad\xf3\xdd\x18\x59\x96\x11\xe0\x36\x65\x8a\ +\xd3\xc6\xda\xb5\xcf\x90\x81\xc2\xf8\xce\xa7\x3d\x5c\xc0\x60\xb0\ +\xe1\x95\x02\x7f\xbf\x7f\xe8\xd0\xe6\x5d\x1d\x3a\x78\xfa\xda\xdb\ +\xd7\xd5\x88\xcf\xe5\x07\xdf\xae\x28\x50\x20\xec\x53\x74\x34\x9d\ +\xe9\xc6\x83\x13\xa1\x59\x7f\x83\x8c\x10\xc1\xf4\xef\x6c\xe2\xce\ +\x60\xb0\xe1\xd5\x02\xa7\x83\xad\xe4\xca\xe6\x46\x01\x71\x30\xe5\ +\x82\x85\xc5\x41\x8c\xb7\x10\x12\xd8\x62\x5e\xa7\xd8\xde\x9b\x7b\ +\xf7\xda\xfe\x45\xdd\x5e\x3d\xea\x2d\xbd\x48\x88\x32\x42\x57\xc1\ +\x60\xc8\x7c\xc6\x1a\x22\x0b\xb1\xa6\x74\xe9\xb9\x54\x4d\x4e\x06\ +\x77\x74\xf4\x68\x27\x18\x9c\x9e\x92\x36\x46\x63\x7b\xbb\x76\xf5\ +\x21\x23\x94\x63\xa5\x61\x58\xcb\x65\x56\xca\x0a\x6c\x4b\x2b\x2b\ +\x5d\x5c\x40\x2a\x1d\x8a\xa5\x32\x21\xa1\x8b\x60\xb0\x97\xb2\xb0\ +\x10\x8e\x29\xea\x9c\x46\x91\x65\x75\x47\x73\x5e\xbd\x3a\x33\xc6\ +\xc7\x67\xa3\x61\x8b\x16\xfe\x30\xac\xc0\x79\x2a\x55\x6e\xea\xaa\ +\x89\x47\x36\xf0\x60\xc6\x74\xdf\xb2\xc5\x0b\x3f\x07\x60\xac\x46\ +\x8a\x10\xf7\x55\x42\x2c\xc2\xfd\x10\x70\x21\x3e\x2c\x95\x03\x35\ +\x6e\x6b\x6a\x7a\x59\x3f\x6f\xde\x78\xfd\x7c\xf9\x12\xc7\xfb\xfb\ +\xc7\x08\x5d\x05\x83\x7b\x7b\x6d\x69\xd0\xe0\x32\xa4\x13\x1a\xe1\ +\x67\x5f\xb0\x4a\x16\x6d\x33\x0d\xe5\xb9\x6d\x36\x32\x51\xfa\x2a\ +\x15\xe6\x07\xfa\xf6\xbd\x28\xcb\x80\x94\xda\xbc\x78\x94\x0b\x1d\ +\xa4\x4a\xf3\x1b\x9b\x37\x3b\xa2\x8a\x21\x0a\x63\x1f\xa4\xb2\xaf\ +\x22\xb5\xd6\x5a\xe8\x10\x18\x6c\x68\xd6\x30\xac\x33\xb8\x86\x41\ +\xfb\xef\x03\x94\x91\x56\x20\xd3\x83\xee\xbf\xec\xef\xdb\xb7\xbb\ +\x0e\x24\x49\xab\xdc\xa6\x4e\x3d\x80\x7f\xd3\x47\xa8\x82\xbd\xc4\ +\xbd\xfe\x42\x21\x4a\x90\xc7\x72\x4b\xc3\x86\x77\x65\x13\xf8\x5f\ +\xc0\x8e\x77\xf6\xec\xb1\x92\x5e\xcf\x14\x92\x7d\x40\xad\xde\x4c\ +\x9d\xaa\x30\x67\x30\xe0\x09\x9c\x43\xee\x76\x30\x05\x8d\x13\x02\ +\x77\xb6\x6f\x6f\x4f\x3f\x23\x73\xdf\x9b\x14\x6f\x75\xc4\xb1\xd2\ +\x02\x3d\xa3\x97\x45\xbf\x7a\x45\xfd\xa4\xa9\xf4\xa7\x28\x98\xb2\ +\xad\x69\xd3\xdb\xb8\x2f\x28\x24\x7c\xd7\xad\xab\x40\xe3\x64\x74\ +\x10\x9f\xd9\x8c\x67\x35\x85\x2e\x80\xc1\xa0\x73\x1a\x0e\x3f\xa5\ +\x1c\x9a\x37\x27\x83\x4b\x59\x59\xa8\x50\xa4\x86\x38\x50\x2c\xfe\ +\xb8\x49\xb4\xa5\xa4\x0e\x79\x33\x0b\x83\x4d\xe4\x8a\xa5\x5a\x53\ +\xb2\xe4\x53\xf9\x45\xf1\xab\xc6\x67\x9a\x01\xa6\x6c\x6f\xd5\xea\ +\x26\xde\x1b\x25\x75\x58\x6a\x62\xcc\x02\x2b\xb6\x2d\x38\x08\xcf\ +\x0d\x44\x16\x80\xc1\x06\xe7\x4c\xe2\xad\xb8\x46\x61\x95\x7b\xf7\ +\xf1\xcd\x9b\xe5\x36\x86\x86\xa1\x8a\xd1\xad\xab\x56\xcd\x45\xe8\ +\x30\x7c\xac\xac\xa6\xe0\xcc\x16\x43\x46\x07\x43\x7a\x09\xde\x94\ +\x5f\x16\xf1\xef\x1f\x3c\xa0\xe2\xd8\x92\x18\x9b\xa0\xac\xde\xca\ +\x15\x63\xcf\x32\xdd\x13\xcb\x60\xb8\x8e\x1c\xd9\x84\xfe\x38\xc9\ +\xb8\x20\x5f\x17\x63\x57\xa5\xca\x49\xb5\xdb\xbd\x7b\x77\x9f\x33\ +\x33\x67\x1e\x45\x5d\xdb\xec\xbf\x30\xd8\x8a\xf3\x85\x28\x90\x85\ +\x2b\x5e\xfe\xd7\x37\x6f\x2e\x77\x1d\x36\xec\x2c\x54\xc4\x7c\x10\ +\x4a\x20\xe3\x4b\x39\xd8\xbf\xff\x05\xca\x64\x21\x0d\x4d\xf0\x33\ +\x6d\x2f\x4f\x4e\x9e\x7c\x0c\x46\x68\x89\xeb\x09\xbc\x97\x04\xc7\ +\xca\xbb\x4c\x4d\x11\x63\x30\xb0\x25\x9b\x48\x06\xb6\xa9\x4e\x9d\ +\x87\xca\x76\x92\x64\xef\x20\x77\xb7\x01\xab\x43\x6f\x70\x24\xa8\ +\x47\xb1\x39\x8a\x65\x81\x6d\x35\xb7\x63\x58\x29\xa2\xc1\x77\xe0\ +\xb8\x2c\xde\x66\x0e\x07\x17\x1e\xe8\xd3\xe7\x22\x0c\xe9\x0b\x09\ +\x86\xba\x0e\x1d\x5a\x56\x26\x3c\xa7\x90\xb3\x85\x3e\x17\x9c\x28\ +\x87\x5f\xf8\xf8\x0c\xf7\x58\xb4\xc8\x49\x76\xfb\x99\xfb\x27\xab\ +\x7f\xc1\x74\x4b\x1f\x63\x30\x28\x03\x03\x86\x12\xb9\xb2\x60\xc1\ +\xd7\x10\xd8\x5c\xb6\xae\x4a\x95\x40\xfa\x63\xa5\x2c\x0e\xc8\x97\ +\x7b\x0b\x09\x18\x59\x7b\x25\xeb\x43\x32\x82\xce\x41\x02\x70\x68\ +\xd6\x6c\x25\x8d\x61\x3b\x7a\x5c\x07\xce\x77\x2a\xb0\xe9\xe3\x13\ +\x27\x36\xc2\xa3\xe9\x14\xf7\xe1\x43\x19\xd4\xd5\xa9\xbf\x50\x2e\ +\x2c\x5b\x76\xf0\xf0\xf0\xe1\x27\x11\x5e\xf8\x48\x9f\xd9\xba\x6c\ +\x59\x7b\x1a\xdf\xd2\xa8\xd1\x71\xa1\x01\xd2\x61\xa1\xab\xdc\x86\ +\xc6\x4a\x99\x88\xc3\xe9\xb1\xfd\x64\x70\x28\x60\x12\x0c\x2c\xf1\ +\xf6\xde\xbd\xdb\x76\xb5\x6f\xbf\x86\x0c\xc7\x69\xe0\x40\x2f\x6a\ +\x82\x1e\xfb\xee\xdd\x42\xea\xdf\x85\x31\x43\x90\xe2\x5a\x9f\xa0\ +\x39\x79\x6c\x4f\x97\x2e\x9e\x48\xad\x0a\xc5\x6a\x91\x48\x86\x88\ +\x6a\x6e\x7f\x64\xfc\x27\x85\x5e\xbb\x66\x83\xf7\x8b\x0a\x1d\x80\ +\xec\x29\x3d\x16\xac\xb4\xa9\x61\xc3\xaa\x30\xba\x24\x54\x93\x07\ +\x3f\x3e\x7d\x7a\x14\x9d\xeb\xb6\x36\x6e\xec\x4d\xdb\x4c\xa9\x24\ +\xe6\xa4\xb1\xa2\xb5\x93\x67\x3c\x7a\x9e\x02\xa3\x3c\x8f\x90\x83\ +\x1b\xc5\xf9\xf0\x79\xe3\x30\x36\x58\x7c\x2f\x18\x8c\xdb\xbb\x77\ +\xe7\x09\xf6\xf1\xb1\x8c\x78\xf1\x62\x1a\x65\xea\x63\x7b\x15\x82\ +\xae\x25\x26\x32\xaf\xb1\x29\x48\x5d\x4d\x17\x92\x21\x5e\xb1\xb5\ +\xdd\x83\xfb\xb9\xe0\x64\x64\xf8\xaf\x86\xd1\x45\xe0\x5c\x94\xa4\ +\x36\xd2\x01\x03\xbc\x30\xde\x5f\xe8\x28\x60\x54\xce\x6a\x75\x68\ +\x95\xea\x3d\x7a\xd8\xad\x0d\x70\x71\x59\xf0\xc0\xd5\xd5\x7e\x43\ +\xcd\x9a\x8f\xde\x3d\x78\xb0\x50\xc3\xe0\x72\xa2\xda\xfc\x8c\xb2\ +\x92\xe3\xcb\xc5\x3b\xfa\xf5\xeb\x99\x24\x78\x8b\xad\xf7\x6b\xec\ +\x04\xce\x08\x06\xe3\x1f\x6e\xc1\x5a\x45\x44\x44\x14\x40\xf0\xd8\ +\x3e\xe4\xea\x55\x5b\xad\x9e\x00\x02\x5b\xb0\xcd\x64\x54\x21\x57\ +\xae\xcc\x53\xa4\x0e\x70\x35\xd8\xd7\xb3\xe7\x49\x1a\x87\x87\x30\ +\x22\xf6\xfd\x7b\x53\x8c\x15\xd0\xe1\xcf\x59\xf3\xea\xda\xb5\xbb\ +\xe1\x7d\x55\x87\x10\x88\x70\x10\x5d\x87\x6c\xdf\x2c\x0a\x94\x0b\ +\x0d\xec\xea\xd8\x71\x3f\x19\x1b\x04\x90\xde\x4b\xc3\x0b\x45\xf9\ +\xd0\xb0\xcf\x49\x49\x33\x65\xc5\x7a\xba\x39\x59\x18\x2c\xee\x3a\ +\x50\x5b\xc8\x15\x4e\x86\x25\xd2\xa9\xb2\x5f\x73\x1c\x4e\x88\xa3\ +\x34\x7e\xde\xd8\xf8\x10\x7e\xa7\x8d\xd2\xc6\x4a\xc6\xbb\x0c\x75\ +\xd1\xe8\xc0\x05\x2f\x2e\x5d\x5a\x0b\xc7\xca\x99\xcd\x3f\xff\x7c\ +\x28\x32\x28\xa8\xa0\xa6\xc4\x9f\x4c\x82\xfe\x88\xad\xe4\x8b\x2f\ +\x5f\xbe\x2c\xf5\x5a\xba\xd4\x09\x8a\xd1\x61\x30\xce\xa3\x52\x9f\ +\xa5\x0a\xa8\x27\x32\x0a\x0c\xc6\xbd\x03\x07\xca\x91\x9a\x96\x8c\ +\x73\xed\x01\x49\x45\x79\x37\x98\x82\x66\x8c\xc1\x48\x9b\xa2\x55\ +\x82\x44\x5c\xe7\x81\x51\x1a\xb1\x2e\x5f\x13\x21\x1a\xe8\x60\xd1\ +\x6b\x6d\xa9\x9d\x62\x0c\x56\x95\x95\x11\x0b\x64\x29\xcf\x2e\xfa\ +\x9c\x74\xa6\xc5\xb3\xfa\x60\x4b\xac\x82\xc6\x58\xdd\x4c\x32\x6d\ +\x65\x63\x30\x5e\xf9\xf9\x4d\xb7\xaf\x5b\xf7\x01\x9c\x0f\xb1\x64\ +\x50\x4a\xda\xd4\x3d\x67\xe7\x2d\x74\xde\xc3\xfd\x68\x1a\x43\x0e\ +\xe6\x4b\xac\x1e\x87\xe0\x94\xb8\x88\x77\x3f\xe2\x1d\x8a\xef\xb5\ +\xd0\xd1\x15\x3d\x9b\xc6\xaa\x16\x89\xeb\x67\x99\x97\x79\x8b\x1c\ +\x2e\x1a\xef\xe5\x03\xab\x89\xcc\x02\x83\x41\xe7\x33\x70\x02\x69\ +\x44\x92\x7b\x9d\x8c\x8b\x74\x24\xb1\x9d\xb4\x95\x5b\x31\x7f\x1a\ +\x83\x91\x25\xef\xeb\xde\xdd\x1d\x8e\x86\xd9\x10\x73\xb5\x27\x3d\ +\x4a\xc4\xc3\xee\x09\x1d\xc7\x93\x73\xe7\x66\xdb\xd7\xab\x77\x97\ +\x3e\x03\xc5\xef\xac\xcb\x95\x5b\x4a\xd2\xeb\x22\x0b\xc1\x60\xa3\ +\xd3\x03\x0d\xc1\xa6\xd7\x37\x6d\xda\x8c\xb3\x5d\xb0\x43\x8b\x16\ +\x2b\x05\x80\xac\x8d\x08\x4a\x07\x43\xd8\xe0\x12\x85\x0b\xc8\xd1\ +\x00\x6f\xdf\x34\xc4\xb8\xfc\xc8\x10\x4f\x4e\x9a\x54\xe8\x1b\x61\ +\x89\xa1\xa0\x2b\x38\xdd\x58\x88\x0a\x59\xf8\xd9\x4a\x82\x13\x6e\ +\x6c\xd9\xe2\x88\x4a\x84\x57\x32\xf5\xcb\xeb\x3b\x53\xe5\x4a\x4b\ +\xd9\xf6\xb5\x60\x41\xf1\x4f\xc1\x60\xc8\xf3\xcd\x1c\x70\x81\x00\ +\x2c\x4b\x94\xb8\x8d\x56\x54\x09\xf7\x0f\x1f\x9e\x1b\x74\xf1\xa2\ +\x1d\x02\xe8\xfe\x72\xdb\x99\x40\x4a\xca\x2f\x7d\x7d\x9b\x68\xf6\ +\x1d\x00\xed\xf0\x7c\x83\xcc\x79\x0c\x92\xe7\xc3\x38\x70\x4c\x16\ +\x7b\x6c\xeb\x43\x2d\x7a\x1e\xa5\xb4\x1d\xe8\xd7\x6f\x07\xee\xf5\ +\xbf\x27\x19\x1c\xab\x7f\xb4\xdc\x7a\xa7\x5f\x1e\x2a\x83\xfb\x2e\ +\x2b\xa1\x80\xb3\xf3\xe6\x4d\x40\x70\xf8\x33\xb6\x99\xe1\x28\x5c\ +\x9d\x1a\x17\x11\xf1\x07\x4a\x64\x76\x22\x55\xec\xe5\xc6\x5a\xb5\ +\x1e\x6b\x86\x1a\xd0\x2b\x40\x1d\x60\x97\xfd\xc0\x43\x48\xf0\x95\ +\x32\x43\xd6\x94\x28\xf1\x4a\x8e\xb7\xd2\x81\xcf\xd5\x49\xd6\xd7\ +\x95\xf8\x0e\x83\x1b\xa0\x7c\xbe\xad\x8d\x1a\x5d\x26\x47\x8d\x48\ +\x67\x30\xd8\xf8\xf2\xa1\x3a\x7c\x1b\x9c\x26\x31\x4a\xea\x17\xb6\ +\x9c\x2e\x38\x1b\x59\xbe\xbd\x7b\x77\x0d\x29\x73\x69\xbc\x5b\x4f\ +\xb3\x1a\x61\x99\x81\xc1\x53\xa7\xfe\xfd\xc7\xc5\x86\x85\xcd\x25\ +\x37\x7c\xd0\x85\x0b\x6d\x7f\xe0\xca\x0b\x03\xac\xd2\x41\x74\xbe\ +\x95\x95\xe9\x94\x40\xad\x52\xf2\x32\x97\xe0\x92\x5e\x5b\x67\x06\ +\x1b\x5d\xe5\x84\x98\x18\xe3\x0b\xe6\xe6\x07\xd0\x7a\xd8\x8f\xce\ +\x72\xc8\xcc\x58\xac\xdd\x88\x43\xca\x96\xa7\xc0\xb9\xe2\x7d\x62\ +\xf2\xe4\x93\xd8\x8a\xaa\x4b\x6b\x90\xc9\xd1\x4a\x26\x4b\x37\x14\ +\x1a\x30\x11\xa2\x2b\x55\x24\xfc\x20\xa9\x72\xc6\x64\x68\x48\x93\ +\xbb\x46\x57\xb4\x57\x3e\x22\x8d\xad\x15\xf8\x42\x9e\x0d\x3f\x81\ +\x83\x04\x83\x91\x2e\x59\xfb\x72\x3b\x96\xf8\xf1\xe3\x32\x5c\xa7\ +\x08\x80\x3c\x7e\x24\x87\x20\x63\x5e\x4f\xe1\xbd\x8c\x44\x61\xab\ +\x39\x9e\xf7\x08\x7f\xfa\x74\xc5\xb9\xf9\xf3\x0f\x45\x05\x07\x37\ +\x48\x65\xc5\xc8\x4b\xc9\xc3\x60\x1c\xf5\x0a\xd7\xf5\x44\x70\x19\ +\x34\x0f\xf2\x34\x31\xd9\x41\xc6\xe5\xf6\xc7\x1f\x8e\xb8\x5a\x80\ +\x9f\x35\xb6\xd1\xef\xb0\xcd\x36\xc7\xfd\x1c\x70\x98\x5a\xf5\x9d\ +\xc1\xf8\xa7\x31\x2e\xd9\xf5\xc6\x48\x1a\xce\x66\xf9\xcd\x7e\x9e\ +\x56\x80\xb3\x73\xe6\x1c\xc1\xb3\xf6\xf2\xdd\xa2\xe0\xaf\x60\x3d\ +\x0d\x43\x1b\x8d\x77\x7f\xc7\x35\x9b\xcb\xb0\x61\x53\x91\xab\x79\ +\x8a\x12\x91\x85\x8e\x42\x26\x3d\x1f\x24\xfd\x97\xbb\x07\x0e\x6c\ +\x45\x1c\xd2\x54\x86\x18\xa2\xa5\x91\x3d\xc1\xd9\x35\x11\x69\x70\ +\x1f\xa3\x43\x43\x57\xc4\x7e\xf8\xb0\x04\x0e\xa5\x00\xb9\xe2\x5d\ +\x4c\x57\x75\x34\x06\x63\x7f\xaf\x5e\x3f\xe3\x9b\xff\x81\x52\x6b\ +\x77\x7a\xfa\xf4\x03\x81\x81\x81\xdf\xf4\x00\xe2\x9d\xb3\x72\xfb\ +\x75\xf3\xe8\xef\xbf\xff\x2e\x93\xa6\x4b\x0a\x1d\x84\xb1\x10\x46\ +\x52\xfb\x32\xc5\xb6\x42\x85\xe7\xc8\xbc\x19\x6b\x9a\x2d\xdb\x22\ +\x25\x39\x00\x09\xd0\x67\x50\x97\xe7\x4e\xf7\xe4\xfd\xc4\xe7\xe8\ +\x0c\xe6\x83\xca\xf4\x5e\x59\x91\xe0\xef\xd8\xad\x9b\xfa\xb3\xc9\ +\xde\x79\xff\x1c\x0c\x0e\x9c\xe3\x0f\x71\x9a\x97\x99\x99\x13\x55\ +\x19\x48\x63\xba\xaa\x34\xef\xd0\x06\x64\x1e\xda\xec\xee\xdc\xf9\ +\x2a\xbd\x87\xd2\x9f\xd3\xba\xae\xb8\x75\x72\xea\xd4\x15\x38\xaf\ +\x86\x93\x01\xc1\xdb\x6a\x8d\x1a\xc1\xaa\x0e\x4d\x9b\xde\xba\x6e\ +\x6f\xbf\xf3\xed\xbd\x7b\x2b\x11\x1a\x89\xc5\x19\x35\x04\x29\x62\ +\x73\x94\x50\x83\x55\x99\x32\xd3\xe9\x7d\x5a\x11\xe9\x9c\x8b\x9f\ +\x3b\x81\x51\xe0\x22\xda\x7a\x8b\xf4\x00\x83\xfb\x81\xa3\x95\xb0\ +\x89\xcb\x90\x21\x1e\x88\xbf\xc5\xac\x2e\x51\x62\xd0\x37\xde\xcd\ +\x69\x5d\xa6\x8c\x1f\xc5\xf0\x9e\xb9\xbb\xdb\xe2\xbe\xa0\x8e\x7f\ +\xb6\xba\xf4\xb9\x50\x06\xe4\x86\xaa\x84\xc9\xb8\xcf\x85\x78\xe4\ +\x02\xa4\xc4\x2d\x5c\x91\x2f\xdf\x3e\x72\x0a\xf9\x3b\x3a\x6e\xc7\ +\xf8\xcf\x42\x02\xdb\xcb\x7e\x64\x70\x90\x7b\x30\xa5\xf3\x2d\x56\ +\xc9\x6d\x74\x2f\x57\x76\x57\x91\x5e\x60\x70\x08\x01\xec\x4b\xd9\ +\xf8\xb8\x8e\xd4\x38\x07\xd5\x07\x0d\x14\x39\x73\xa5\x1e\x0d\xef\ +\x0c\x49\xe5\xcc\x94\x53\x47\x3f\x57\x1f\x70\x84\xfc\x0c\x0f\xc8\ +\x89\x02\x7e\x41\x6c\xf2\xb6\x14\xb4\x55\x69\x7c\x86\x66\xea\xf3\ +\x5d\xd1\xa2\x8f\x70\x8d\x57\xb6\xa4\x47\xc7\x8e\x3d\x7d\x7a\xe6\ +\x4c\x1b\xac\x8a\x4e\x18\x3b\x07\xd6\x11\xe9\x04\x06\x77\xcd\x29\ +\x22\xcf\x41\x95\x14\x25\x2d\xa9\xfc\xfc\x88\x1c\x0e\x10\xa3\xb5\ +\x50\xde\x51\x40\xed\xac\xe4\x1f\xf2\x65\xbc\xa7\xb3\x49\xc5\x27\ +\xa6\x4c\xe9\x8b\x34\xb1\xe7\x64\x48\xc8\xbc\x79\x06\x63\x2b\xa7\ +\xe5\x68\x69\x42\xcf\x64\x48\xe4\xaa\xdf\xd6\xad\x9b\x64\xbd\xdd\ +\x14\x22\x62\x9a\xe7\xe8\xb9\xec\x87\xb7\x5c\xa4\x27\x18\x0c\xe8\ +\x8d\xac\x32\xcf\x95\x2b\x42\xd9\x56\x39\x0f\x1a\xe4\x49\x21\x86\ +\xd4\x1a\x34\x22\x76\xf7\x9a\xde\x81\xe7\xef\x24\xae\x5b\xc1\x66\ +\x3a\xb8\xe2\x95\xc6\x99\x6d\xb6\xc7\xc2\x85\x2e\xa7\x67\xcc\xd8\ +\x47\xdb\x64\x0a\x8f\x28\x31\x45\x18\x11\x49\x37\x24\xdf\xda\xb5\ +\xcb\x41\x1a\xda\x68\xb0\xb2\x12\x40\x47\x22\x78\x94\x65\xc9\x92\ +\xef\x50\xa5\x71\x0f\xe7\x5e\x3f\x8d\x26\x2b\xe9\x72\x9e\x65\xf0\ +\x8a\xd7\x10\xce\x12\xb3\xfd\xbd\x7b\x53\x69\x4f\x32\x79\x33\x61\ +\x50\x5b\xb4\x65\xec\x70\x3f\x58\x51\xe1\x5a\x53\xaa\xd4\x13\x2a\ +\x01\x92\xba\x9a\xed\x74\xd0\xe8\x72\x82\xed\xc0\x3f\xc0\x22\x24\ +\x27\x0f\x26\x83\xc7\xe4\x96\xd9\x47\x6e\x35\x8d\xb4\x3e\xe3\x28\ +\x7a\xee\x36\x6d\xda\x71\x38\x9b\x66\xa3\x37\x9e\x39\x85\x59\xf0\ +\x7b\xb7\x68\xab\x0a\x76\x11\xe9\x00\x06\x1b\x5d\x41\xf0\xd7\x17\ +\xde\xde\x6b\xe9\x9b\x5d\x86\x11\x96\x6b\x26\x06\xc3\xb8\x82\x2d\ +\xf2\xe4\x89\x80\xe4\xf9\x72\x5a\x19\x42\xaf\x5f\xb7\x81\x87\x30\ +\x12\x46\xfa\x46\xe8\x38\x8e\x8d\x19\xf3\xd3\xfa\x6a\xd5\xfc\x94\ +\x55\xdc\xf9\xd7\x5f\x3d\xde\x3c\x7d\x5a\x3c\x95\x8c\x95\x1b\xa4\ +\x15\xfa\xe1\xc9\x13\x63\x7c\xfe\x3d\xf8\x6c\x41\x26\x42\xfc\xb2\ +\xa9\x6e\xdd\x29\x18\x8f\x91\xdb\xef\x2d\x22\x9d\xc0\x60\xc3\x2b\ +\x0f\x4e\x24\xa1\x1f\xe8\xa5\x50\x31\x28\x89\x19\xcd\x07\xf7\x91\ +\x11\xba\x2f\x58\xe0\x8a\xe7\xdd\xc1\x22\x60\x05\x78\x34\x5f\x50\ +\xed\x5d\x74\x74\x74\x11\x1d\xff\x5c\xb9\xc0\x71\x14\x2e\xc0\xea\ +\xfc\x56\x1a\xde\x32\xa1\x01\x32\x2c\x1a\xa7\xb0\x02\x44\x9d\x14\ +\xe3\xa4\xea\xfa\x09\xc8\x57\x6d\x4d\x2b\x3b\x09\xf6\x42\xc6\x7d\ +\x33\x25\x18\xe0\x59\xe1\xf4\x12\xb3\x65\xb0\xc0\x51\x03\x19\xa3\ +\x32\xc0\xd6\xf1\x85\x2c\xe7\x49\x40\x42\xb4\x89\x92\x85\x8f\xb1\ +\x36\x34\xbe\xab\x53\x27\x5f\x8c\xd5\xd4\x4c\xb5\x82\x83\xa5\x36\ +\x9e\xe5\xd7\xc1\xcf\xd5\x10\x65\x40\xf3\xcf\x9b\x98\x1c\x7a\x74\ +\xfc\xf8\x58\xad\xed\xe4\x6e\xe5\x73\x92\x87\x13\x61\x85\x70\xba\ +\x0f\x38\x74\xc8\x04\xd7\x4b\x38\xf7\x25\xdd\x3b\x78\x90\x2a\xed\ +\x17\x82\x25\x31\x16\xa8\x08\xf1\xa6\x9b\x68\x2d\x83\xf1\xfa\xf6\ +\xed\x11\x14\x0c\xa7\x32\xa0\xed\xcd\x9b\x2f\x55\x32\x33\x60\x50\ +\xb7\xa9\xe9\x08\xb4\x34\x57\x91\x6b\x7e\x81\x10\x85\xb0\x12\x9e\ +\xd0\xe8\x21\x10\x87\xab\x83\xae\xad\x02\xa4\x7c\x26\xb3\x4e\xfa\ +\x0a\x09\xca\x17\x85\xd1\x24\x28\x15\xf5\x70\xb8\xec\xb5\xfb\xe9\ +\xa7\x67\x54\x85\x6e\x5f\xbf\xbe\x2b\x8d\x1f\x1b\x37\xee\x38\xad\ +\x92\x4a\x32\x00\x2a\x2d\x86\xad\x2c\x50\xe0\xb5\x5c\x09\xfd\xd3\ +\xb3\xd3\x2b\x83\x65\x1e\x86\x42\xbe\x61\x05\xae\x23\x61\x48\xb3\ +\xc1\x68\xd9\x92\xf8\x34\x6d\x31\xe5\xf9\xc7\x8b\xc6\x50\x02\xe4\ +\x8b\x1c\x4c\x67\x6c\xc5\xee\xc8\x34\x2b\x7f\x5d\xcf\xe0\x80\xc1\ +\x8c\x00\x53\xcc\xf5\xf5\x3f\xd1\xb6\x93\x1c\x26\xa4\x23\x43\x4a\ +\xd8\x14\x3e\x40\xd2\x33\x75\x03\x9a\xaf\x99\x08\x40\x5b\xea\x67\ +\x9e\x9e\x6b\x94\x7e\x78\x44\xda\x7a\xcf\x16\x22\x8f\x48\x07\x30\ +\xd8\xf0\x2a\x81\x46\x96\x65\xca\xd4\x41\xb6\x86\xba\xae\x6e\x77\ +\xc7\x8e\x54\xe8\x99\x5b\x4a\xf4\xa5\x10\x21\xf8\x1a\xee\xbe\x70\ +\xa1\x3d\xc6\x17\x28\xb9\x8c\x88\x6d\xcd\xd5\xf5\x6c\x9c\x8b\xcb\ +\x97\xef\x78\x78\xf4\x28\xc5\xe4\xa6\x20\xdf\xb2\xa1\x62\x44\x28\ +\xe6\x7d\x47\x89\xcf\x18\xaf\x2a\xb4\x00\xa3\x3c\x44\x5e\x5d\xd2\ +\xde\xdc\xd1\xb2\xe5\x0d\x32\x52\x8b\x02\x05\xea\x89\x74\x04\x83\ +\x0d\x2f\x2f\xea\xef\xe6\x9d\x98\x38\xf1\xa4\xaf\x9d\x1d\x95\x02\ +\xa9\xc8\x5d\x2e\xdd\xed\x57\xd6\x56\xa8\xf0\x48\x7a\x39\xdd\x2f\ +\x5a\x58\x8c\xa2\x2d\x9a\x4d\xf9\xf2\x57\x7e\x00\xdd\x98\xa6\x52\ +\xc6\x2f\x17\x0c\xed\x37\x29\xce\x94\x44\xa2\x4c\xa9\xc5\x25\x69\ +\x0b\x49\xab\x1f\x19\x9a\xdc\x6a\x8e\x4a\x4e\x4c\x34\xc3\xb5\x8b\ +\x4c\x19\x3b\x44\xff\x9d\xf4\x28\x03\x62\xb0\xd1\xe5\x01\x7b\x82\ +\x63\xc0\xec\x94\xb9\x4f\xcd\x48\x50\x00\x7b\x3f\xe1\xe3\xc7\x99\ +\x30\xb4\xfd\xf0\xea\xbd\xa6\xd8\x17\x9d\xfd\x36\xd7\xaf\x7f\x8f\ +\x3c\x7b\x3f\x50\x05\x79\x71\x24\x42\xfb\x9e\x9a\x31\xe3\x98\x0c\ +\x8c\x67\xd3\x4e\x02\xa0\x8a\x0a\xc4\x2b\xe3\x94\x5e\x78\x02\x90\ +\xa5\x51\xf9\xe8\xf7\xf1\xb9\xdf\xc8\x55\xd2\x1b\x6c\x28\xd2\x13\ +\x0c\xc6\x8e\xd6\xad\x3d\x94\x95\xed\xfc\xe2\xc5\xa3\x29\xa9\x18\ +\xf1\xae\x53\x08\xa2\x7f\x22\xaf\x20\x6d\x3d\x7f\x30\xa5\xb4\x51\ +\xb2\x3c\x29\xbf\x46\x0e\xe6\x00\x5a\xb1\x70\x1d\x0b\xa6\x1c\x19\ +\x35\xea\x2c\x7d\xf1\xa4\x62\xb0\xe5\xb1\xb2\x27\xae\x2e\x52\xe4\ +\x03\xae\x9f\xc8\xeb\x09\x62\x38\x9d\xc0\x60\x24\xc5\xc5\xfd\xb2\ +\xbf\x4f\x1f\x92\xeb\x53\xd7\xa8\x61\x65\xbb\x8f\xb3\x90\x23\x32\ +\xf7\xad\x92\x3e\x7d\xfa\x23\x8d\x2b\x4c\x13\x92\xf0\xcb\x6a\x67\ +\x0b\xad\x56\x1a\x41\x71\x27\x8d\x15\xeb\x2d\x82\xfe\x6f\x49\xda\ +\x82\x56\xfb\x54\x02\xe8\xea\xb3\x1d\x6d\x47\xf1\xf9\xad\x6d\x8d\ +\x8c\x14\x99\x87\x99\x22\x1d\xc1\xe0\xf8\x5d\xf7\x37\x77\xee\x58\ +\x51\x3f\x38\xfc\x41\x3e\x87\xd1\xc5\x1e\x19\x37\xae\x59\x5a\x15\ +\x94\x61\x70\xeb\xa4\xd7\xef\x09\xae\x65\x85\x0e\xe0\x5d\x40\x40\ +\x3d\xac\xd8\xe7\x69\xc5\x22\xe3\x59\x5f\xb5\xea\xd3\x07\x87\x0f\ +\xf7\x48\xe5\x6c\xd7\x9a\x9e\x3b\xb6\x6e\x7d\x5d\x36\xd5\x2c\x47\ +\x0d\x59\x90\xa5\x13\x8b\x5c\xd4\x0f\xe9\x1e\xb3\x63\xb0\xa8\x11\ +\x38\x08\x5c\x2c\xf5\x55\xd2\x1c\x9f\x82\xa7\xf3\xa0\xe2\x25\xdc\ +\xdf\xbf\x7f\x43\x1d\xca\xcf\xec\x47\x2b\x16\xa4\x1c\xee\x4a\x4d\ +\xcf\x68\xe5\x7c\xa6\xc4\x27\x31\x76\x0b\xc5\xbb\xb1\xef\x1f\x3e\ +\x5c\xad\xc8\xfd\xe1\xaa\x8f\x33\xe1\x65\x32\xc4\x8b\x56\x56\xe5\ +\x04\x83\x91\x41\xe9\x54\x75\xc0\x7c\x22\x0d\x40\x88\xe1\x67\x45\ +\x3a\x81\x88\x9e\x78\xbd\x84\x04\x62\x0b\x14\x60\x2f\x92\xc5\x86\ +\x57\x0e\x1c\x77\x6b\xe7\x4e\x07\xc8\xb4\xdf\x70\x1e\x38\xb0\x8b\ +\x52\x2b\x08\x8e\xd7\x88\x4f\xf6\x10\x1a\xc0\x0a\x77\x9d\x3c\xb6\ +\x58\x29\x5b\x68\xac\xe4\x75\xc0\xb1\xd4\xf5\x35\x2b\x56\x72\x06\ +\x43\xa5\x4e\xa3\xd2\xd3\x4b\x40\xeb\xe5\x37\xd4\xe1\x95\xdc\xf5\ +\x1a\x75\x6c\x4f\x65\x2b\xe2\xb1\x3a\xb0\xe2\xd5\x03\x67\x82\x43\ +\x28\xd8\x2d\x6b\x05\x93\xd5\x67\xbb\xd8\xd8\x45\xd2\x49\xa4\x18\ +\x56\x49\x6c\xaf\xe3\xa8\x31\x0b\xc6\x1b\x4b\x1d\x4d\x27\x25\x2b\ +\x47\xa3\xfe\x6e\x3d\xeb\xab\x30\x32\xd3\x1d\xff\xab\xd2\xd9\xd5\ +\xa6\x5c\xb9\x17\xa4\xc3\x12\x1b\x19\x59\x0f\x63\x4b\x28\xc4\xa0\ +\xac\x7a\x72\x05\x2c\xad\x0b\xe2\xae\xb2\x6f\x9d\x6a\x7d\x8d\x1a\ +\x9b\x28\xdf\x12\xfc\xb2\xb6\x52\x25\x8a\xc1\x15\x97\x45\xbe\x15\ +\x60\x48\xf7\x29\x23\xc5\x7f\xfb\xf6\xed\xb1\xb1\xb1\x94\x87\xe9\ +\x02\xa6\x20\x91\xfa\x36\x72\x3a\xd7\x93\xbe\x0a\xad\x96\x8a\x4c\ +\x3b\x15\x03\x8b\x0c\x06\x83\x8d\x2d\x37\xf8\x02\xf1\xbb\x70\xea\ +\xec\x6a\x9e\x3b\x77\x28\xf5\xc7\x43\x96\x8a\x9f\x14\x35\x8a\xa5\ +\x2b\x4a\x65\x1e\x52\x73\x47\xbb\x4a\x95\x1c\xa4\x01\x1e\x05\x4b\ +\xeb\x80\xe1\xb5\xa2\xfe\x0e\xf4\xef\x93\x86\x93\x40\x82\x4d\x60\ +\x38\xdd\xbb\x0e\x1b\x46\x92\x83\x63\x95\x2f\x95\x6d\x4d\x9b\x5e\ +\x91\x81\xf2\x81\x60\x5b\x70\x02\x54\xd6\x2e\x2b\x5f\x28\x14\x3c\ +\x17\x19\x04\x06\x1b\xdb\x32\xac\x02\x6f\x34\x3b\xbb\x92\xe2\x96\ +\xb2\x9a\x41\x51\xf9\x2c\x0c\x4c\x2d\x65\x4e\xc6\x86\xe7\x5d\x1f\ +\x9f\x3d\x5b\x8f\x56\x0d\x99\x11\xb2\x55\x47\xce\xad\x15\xc1\x49\ +\x74\xbe\x43\xbf\xbb\xab\xe8\xe2\xfa\x00\x32\x0e\x3e\x3e\xd6\xd6\ +\x3b\x65\x95\x41\x71\x0a\x2b\xa0\xa4\x29\x3a\x2e\x2c\x8c\x8c\xad\ +\x81\xd0\xc0\xd9\xb9\x73\x27\x4b\x63\xa4\xdc\xcd\x46\xf8\x79\x15\ +\x8c\x6f\x65\xba\x56\x5e\x30\x18\xab\x8b\x17\xef\x85\x00\xb9\x3a\ +\x21\x1a\x5b\x2b\x7f\xe7\xc9\x93\xf3\xae\x2e\x5a\xf4\x1e\x09\xb8\ +\x5e\xb5\xb3\xdb\x75\xd1\xdc\x7c\x1f\x3d\x43\x7f\xf3\x4b\xe4\x01\ +\x55\xf2\x1f\x91\xcd\x1f\x83\xc2\xd2\xa7\x90\x54\x98\x86\x7b\x15\ +\x75\x08\x52\x84\x6c\xb3\x58\x8c\xb7\xa1\xd4\x48\x31\x95\x9c\x04\ +\x1a\x51\xe5\x04\xf8\x15\xf1\xc9\x6b\xb8\x6f\x23\xab\x2e\x7a\x51\ +\xa5\x85\x52\xb5\x80\x8a\x0c\xef\x88\xe7\xcf\x57\x92\x54\x04\xbe\ +\x48\x76\xcb\xd5\xf2\x2d\x38\x3a\x5d\x3e\x17\x83\x41\xee\xf3\xb0\ +\xc0\xc0\xe5\x08\x94\xfb\x22\x24\xf0\x1c\xa5\x31\xc5\x92\x93\x93\ +\x7b\x51\x85\x42\x5c\x64\xe4\x0c\xac\x6c\x41\x1a\x32\xed\x85\x84\ +\x04\x0a\x42\x83\x71\x5e\x7a\x41\x2b\x05\x79\x09\x11\x6c\x56\xb6\ +\x73\xbe\x60\x71\x1d\x91\xa0\xcf\xaf\xd1\x58\xc4\x80\x56\x65\xfb\ +\x9f\x7f\x0e\x20\x2f\x2e\x25\x7d\xcb\x2c\x94\x30\x3c\x9b\x48\x06\ +\x28\xd3\xe5\x3a\xcb\xec\x1d\x2b\x32\x38\xc4\xef\x94\xd5\xfe\x86\ +\x89\x10\xcd\x45\x3a\x80\xc1\x46\x57\x0c\x1c\x2e\x57\x84\x26\x58\ +\xdd\x5a\xe2\xfc\x16\x08\x27\x84\xab\xb6\x4c\xbb\x02\xa4\x4e\xdd\ +\xa6\xea\x04\xd4\xa5\xcd\xc5\x3b\x21\x60\xca\x8a\x02\x05\xa2\xf0\ +\xbb\xef\x56\x97\x2c\x49\x92\x7f\x8b\xa5\xe8\xad\xce\x00\x2b\xf2\ +\x45\x69\x3c\xa6\x02\x70\x5f\xb4\x68\x35\x79\x36\x15\x83\x52\x56\ +\x3b\xba\x92\x21\xe2\x33\xbe\x87\xe6\xcc\xf2\xc3\x23\x46\x9c\xc3\ +\x39\x36\x5e\xae\x78\xfb\xd3\xeb\x73\x31\xd8\xf0\x4a\x83\xd9\x48\ +\xc2\x0f\xf5\x69\xc1\x64\x44\x38\xcf\x25\xbd\xbc\x7e\x9d\x82\xe8\ +\x39\x85\x06\x2c\x8b\x17\x3f\xaf\xd1\x7e\xeb\x39\x2a\x18\xf6\x24\ +\xc6\xc5\xd1\x7b\xa6\x10\x02\x32\x53\x0a\x61\x41\x13\x5d\x51\xdd\ +\xba\x7b\xf0\x60\x1f\x48\x38\x84\x49\x03\xdb\x75\x70\xc0\x80\x09\ +\xa8\xb2\x50\x1b\x21\x2a\x2d\x6e\xec\xed\xd6\x4d\xe9\x0b\xb1\x96\ +\xc6\xce\xcc\x9a\x75\x14\xfa\x31\xbd\xae\xae\x5f\x3f\x1d\x15\xf7\ +\x96\x78\x27\x88\xc6\x97\x66\xcf\x3e\x5f\x30\x18\xe9\x79\x16\x8a\ +\x8f\x8c\x9c\x87\x34\xb1\x73\x70\x3e\x44\x1d\x1e\x39\x72\xa2\x90\ +\x50\x56\x00\x6a\xb9\x8c\x7a\xb5\x48\x24\x4b\xef\xa5\x3e\xe8\x32\ +\x2e\xd6\x04\x2c\x05\xbd\x95\x81\x64\x70\x08\x38\x2b\xbd\xf3\x26\ +\xea\x4a\xed\x5d\xe4\x8b\x17\x73\x51\x41\x11\xa0\x19\x87\x93\x1a\ +\x9a\xa6\x60\x2b\xd2\x00\xc5\x58\x92\x74\x08\x25\x52\x58\x01\xbc\ +\x15\xe4\xe5\x55\x9e\x1c\x2e\xb4\xaa\x53\xf3\x4d\xbc\xab\x68\xce\ +\x0c\x4a\x97\x32\x20\x06\xd7\xde\x81\xbd\xc0\x25\xe0\x10\xd9\x46\ +\xeb\xac\x5c\xb1\x36\x83\x29\x54\xfc\x29\xe5\xf0\xea\x83\x7a\x1a\ +\x09\xc4\xa7\xc9\xab\x89\xf2\x19\x4b\x92\x3b\x8f\xfb\xf0\x81\x24\ +\xce\xab\xd1\xaa\x82\x6b\x7d\x1d\x28\x6f\x1a\xf5\xcc\xc3\x63\x1d\ +\x2a\x0e\x4e\x6f\x6f\xd1\xc2\xeb\xb1\x9b\xdb\x46\xa4\xc2\xd5\xa1\ +\x95\x98\xfe\xed\x38\x8f\x26\x53\xa3\x4c\x88\xda\xbe\x24\xc3\x83\ +\xcc\x85\xc7\x33\x3f\xbf\x02\xb8\x3f\x49\x5e\x50\xfc\x7e\x73\x8c\ +\x57\xc1\xbb\x89\xd2\x68\x2f\xa5\xd7\xe7\x62\xb0\xe1\x15\x07\xf3\ +\x51\xf5\x00\x9c\x27\x17\x95\x55\x01\xab\x58\x08\xe4\x10\xa6\xa4\ +\x52\xaf\x46\x5a\x92\x5f\xb6\x36\x69\x72\x27\xf2\xe5\xcb\xfe\x38\ +\x37\x39\xa1\xf1\x07\x69\x4e\x36\x83\x63\x25\x8e\x9e\x49\x21\xdb\ +\xdc\x59\xec\xcd\xac\x0d\x8e\x00\x67\x81\xc3\x61\x30\x7b\x49\x98\ +\x48\x6d\x60\x9d\x3a\x5d\xc1\xd8\x38\x68\xaa\xdc\xa0\x15\x5e\x3a\ +\x8c\x0a\xca\x2f\xa0\x89\x20\x79\x38\x4f\x92\x61\xd2\xbb\x94\x9d\ +\x23\xb3\x55\xb6\xa5\x5b\x0c\x8f\xc1\x80\xf7\xb2\x3f\xc5\xea\xa0\ +\xaa\x15\x49\x46\x07\x4f\xe5\x65\x52\x56\xd6\x2a\x8f\xb1\xa6\x67\ +\x97\x57\xae\xdc\x8f\x70\xc3\x75\xa9\xad\xf2\xc1\xcb\xcb\x2b\x3b\ +\xa4\xfe\x9c\xe4\x7d\x92\x59\xce\x9c\x7d\x85\x0e\x01\xd9\x2a\xbd\ +\xb0\x65\x54\x9f\xef\xd0\x3a\x3a\xd8\xa1\x55\xab\xb6\x57\xd6\xad\ +\x6b\x4c\x1a\xa0\x41\x97\x2f\xf7\x25\xcf\xab\xac\xd5\xcb\x81\x03\ +\x5c\x01\x5a\xdd\x70\xe6\xa3\x50\xc9\x6c\xca\xce\xd1\x48\x13\x8b\ +\x02\xe7\xa4\x57\x2f\x08\x06\x77\x03\x6a\x43\xd9\x28\x48\x1c\xf6\ +\x44\xce\xa5\x1f\xae\x05\x34\x33\x56\xb0\x8a\x45\x22\x46\x17\x8f\ +\x95\xe1\x2d\xad\x66\xb2\x9c\x26\xd0\xdb\xd2\xb2\x1e\x56\x82\xb7\ +\x64\xac\x48\x8a\x5e\x43\xd9\xff\x26\x42\x34\x92\x0d\x2b\x7b\xe8\ +\xc0\x67\x2b\x83\xcf\xb5\x84\x8c\x87\xce\x6e\xb4\x62\xe1\x4b\xc1\ +\xf1\xe1\xf1\xe3\xbf\xe1\x33\xdd\xa3\x15\x4d\x68\x00\xa9\x62\xd3\ +\x92\xe2\xe3\x4d\x4f\x4e\x9f\x5e\x1d\xde\x5c\xea\x02\xfb\x0a\xbd\ +\x12\x76\xc0\x99\xf4\x4a\x1a\xde\x3a\x91\x1e\x60\x30\x64\x7c\x6b\ +\x00\x68\xaa\xd9\x9f\x5c\xa9\xc6\x96\x0e\x87\x4f\x54\x9b\x47\xf7\ +\x94\x36\x05\xaf\x27\x15\xc8\x26\xcb\x33\xd0\xaf\x60\x71\xd2\xd0\ +\xc4\x7b\x8a\xd7\xf0\x2c\xae\x35\x74\x40\x25\xad\x7f\xe8\xb5\x6b\ +\x36\x70\xac\xdc\x26\xc7\x8a\x92\x47\xea\x3a\x62\xc4\x4e\x5a\xdd\ +\xb4\x4a\xa1\x6a\x49\x39\x42\xa5\x35\x57\x1f\x74\x03\x7a\x4a\x7a\ +\x2c\x81\x67\xce\xcc\x90\xe7\xda\xf4\x03\x83\x65\xfc\xb4\xb6\x93\ +\xb7\xa4\x77\x32\xf6\xee\xfe\xfd\x5b\xdc\xa6\x4c\xd9\x43\xf7\x48\ +\xb1\x7a\x2d\x73\x1a\xdd\xe4\x19\x28\xbb\x92\x7c\x1c\x15\x12\xb2\ +\x64\x43\x8d\x1a\x8f\xa5\xa1\x26\xc1\xf0\xec\x68\xcb\x96\xc5\x86\ +\x67\x08\x8e\xa7\x84\x67\xcb\x12\x25\x42\xd0\x70\xf2\x25\x44\x6c\ +\xe7\x69\x87\x46\xb0\x42\x37\xd0\x68\xcd\x35\x0e\x8e\xa2\xf6\x64\ +\x9c\x07\xfb\xf5\xbb\x80\xfb\x0c\x4d\x82\x66\x30\x54\x9b\xea\xd5\ +\x5b\x84\xf3\x4f\x08\x5c\xe8\x76\xf4\x07\x8b\xad\xa5\xbd\xb2\xe2\ +\xc1\x79\x72\x07\x4e\x96\x85\xda\xad\xb8\x7c\xb7\x6e\x2d\x8b\xb3\ +\x53\x38\x55\x27\x6c\xa8\x59\xf3\xbe\x92\x14\xad\x23\x55\xf4\x3f\ +\x23\x75\x6d\x2e\x55\xd2\x93\x27\x56\xa3\x9b\x4f\x79\x29\x45\x7f\ +\x99\x1c\x26\x74\xce\xa3\x5a\x3d\x8c\xe7\x47\xee\xe9\xb1\xf8\xa8\ +\x28\x53\x5a\x2d\xff\x8b\x89\xb9\xad\x44\xa6\x81\x21\xc3\x03\x8b\ +\x65\xd6\x4a\x4e\xc5\x69\x42\xc6\x14\x11\x14\xb4\x4a\x91\x65\xd7\ +\x5a\x15\xcd\xe9\x1d\x6a\xcd\x8c\xe7\xf3\x6e\x6c\xde\xec\x18\xe0\ +\xec\x4c\xa1\x88\x1c\x18\x37\xcc\xea\x74\x2a\xaa\x18\x07\x9b\x69\ +\xa4\x88\x6d\x92\x2b\xb1\x1b\x7d\x36\x3a\xcb\xd2\x36\x54\xe3\xfd\ +\x51\x60\x13\xf1\x5f\x04\x26\x3c\x48\x5d\x0f\x25\xc4\x2c\x91\x99\ +\xe0\x6e\x40\x7a\x52\xae\x41\x1d\x8f\x93\x7d\x01\xba\xa5\xa6\xb0\ +\x45\x6d\xb7\x90\xc1\xf1\x04\xcf\xa7\x4b\x29\x85\xc6\xb2\x6c\x86\ +\xaa\xb8\x15\xb9\x87\xc3\x60\x45\xa1\x03\x38\xfa\xfb\xef\x35\x90\ +\x6f\x7a\x5b\x59\xb9\x91\xf6\xe5\x16\x19\x14\x44\xaa\xd0\x0c\x2a\ +\x2d\x41\xae\x9f\x72\x3e\x98\x27\x32\x1b\x6c\x7c\xad\x43\xae\x5e\ +\xb5\x95\x62\xad\x7a\xd2\xc8\xf2\xa6\xa6\xb0\x85\xe7\xd5\x85\x16\ +\xd6\x55\xab\xb6\x40\xd9\x92\xca\x7e\x78\x4b\xc1\x6c\x3a\x10\x38\ +\x9f\x78\xc5\xd6\x76\x0f\x3c\x92\xef\xff\xe9\xdf\x16\xad\xe2\xa4\ +\x92\xf6\xaf\xe8\x06\x44\x5b\x14\xc8\xa9\x2d\x41\x90\xf6\x15\xf6\ +\xda\xf1\x9c\x82\x93\x25\x01\xe6\xc6\x60\x41\x69\x6c\x0d\x29\x7e\ +\x05\xba\x82\x23\xc9\x90\x90\x95\x7f\x4d\xe9\x7b\xae\x40\x31\x4c\ +\xc4\xeb\x5e\xa3\x10\x36\x9c\x56\x48\x5a\x05\xa5\xe1\x1d\xd0\x91\ +\xcf\xf5\x0b\xc9\x39\x50\x5c\xf2\x99\xbb\xfb\xd0\x7f\x60\x70\x13\ +\xa5\xd1\xbe\x06\x7b\x89\x1f\x1d\x81\x81\x81\xfa\xc8\x62\x7f\x09\ +\x46\xc5\xc7\xc7\x1b\x8a\x2c\x03\x83\x82\xc1\xeb\xab\x57\x77\x85\ +\x21\x7d\x96\xc2\xb5\x5f\x42\x7c\x7c\x6c\xa4\xc2\x96\xf6\xbb\x2b\ +\xc0\x14\x28\x49\x1f\xa0\x98\x5d\x42\x74\xf4\x4c\x1b\x23\xa3\x97\ +\x34\x66\xa6\xaf\xdf\x56\x47\x56\xf0\xdc\x60\x57\xb0\x9b\xf8\x4e\ +\xe0\xef\x72\x86\x6c\xd5\x15\x87\x52\x20\xf2\xf2\x66\x47\xb8\xa4\ +\xaa\xf8\x51\x81\xe5\x7a\xb8\x74\x49\xbb\x6b\x1e\xda\xe5\x81\xbc\ +\x3d\x29\x55\x89\x4c\x03\x83\x62\x55\x08\x26\x6f\x5a\x5b\xb1\xa2\ +\x7a\xc5\x82\x27\x33\x1c\xf3\xd0\x5b\xcb\xd8\x2a\xd2\x16\x12\x95\ +\xe6\x81\x78\x7f\x1a\xa8\x47\x84\x33\x65\xb6\xf4\x78\xee\x11\x3a\ +\x86\x34\x0b\xe7\x6a\x97\x01\xa1\xbb\xed\xa7\xc8\x48\xb3\x55\x45\ +\x8b\x5a\xca\x3a\x3d\x0a\xa9\x94\x14\x3f\x12\x60\x4c\x75\x31\x71\ +\xaf\x90\xf5\xf0\x9e\xe4\xbf\xa9\x3f\x99\x54\xa7\x5a\xa7\x04\x34\ +\x25\x1f\x64\xaa\xe1\xb1\xd1\x55\x43\x88\x60\xfa\x05\x0b\x8b\x83\ +\xa8\x47\x7b\x07\xe7\xd6\x63\x2d\xcf\xa5\x7a\x15\x24\xc3\xd4\x14\ +\xb2\x45\xc8\xe1\x17\xf5\x36\xb4\x55\x2b\x2f\xa1\x85\x99\x42\xe4\ +\xca\x2a\xd5\x2d\x5a\x95\x40\x6f\x70\x56\x5a\x52\xba\x94\x32\xa0\ +\x73\x73\xe7\x1e\xa6\x7a\x43\xf0\xe7\x33\xc6\xc6\xe5\x10\x4e\xf9\ +\x28\x53\xe0\xae\xfc\x68\x5b\x98\x14\x8d\x0f\xd4\x42\x4e\xa6\x09\ +\x8d\x61\xa2\x9f\x21\x13\xe2\xb0\x43\xf3\xe6\x3e\xd4\x43\x1a\x13\ +\x1c\x83\x67\x43\xa8\x3c\x43\xfb\x2c\x41\xab\x24\xf7\x1e\xcb\x90\ +\x1e\x02\x2d\x60\x78\x8b\xa0\x31\xb2\x8c\xb6\x95\x58\xe9\x3a\x53\ +\x81\x27\x98\xe2\xd8\xb6\xad\x2f\xc6\x46\x08\x40\x3b\x93\xc5\xd3\ +\xc4\x64\xb7\xbc\x2f\x0c\x5a\x91\x4c\x9e\x3c\xdf\xbd\x04\xcd\xb3\ +\x22\x8f\x31\x3c\x28\xa8\x29\xbc\x97\x54\x25\xee\x87\xcf\xd1\x5d\ +\xfc\x05\x94\x32\x20\x29\xd2\x94\x80\x1a\x3b\x63\xdc\x1b\x98\xe7\ +\xc9\x33\x84\xc6\xd0\x5e\xf9\x26\x52\xc5\xac\x7e\xa4\xbe\x10\x02\ +\xe9\x39\x3e\x54\x56\x0f\x35\x27\x12\x86\xc9\x2e\xcb\x2f\xc2\x20\ +\x91\x16\x14\x17\x1e\x6e\x21\xf5\x2e\x66\x51\x79\x06\x2a\x95\x95\ +\xda\x2d\x17\xad\x49\xee\xa3\x31\x99\x43\xd9\xf1\x92\xfe\x3d\x04\ +\xc0\x06\x60\x0e\x72\xa4\x28\xf9\x97\x48\x0c\xbe\xfc\xe4\xcc\x99\ +\x72\x1a\xbb\x95\xaa\x78\x16\x8c\x79\x8a\x46\x3d\xda\x54\x12\xa6\ +\xc5\xbd\x5a\xde\x0e\x5b\x32\x7f\xa8\x2b\xbb\xc2\x6b\xf8\x50\xae\ +\x0c\x1e\x52\xfc\x47\x95\xc9\xe5\x4c\x7d\x82\x2e\x5d\x9a\x8c\x6a\ +\xf9\x03\x32\x4e\x57\xed\x4f\x16\x83\x33\x38\xc3\x52\xc7\x57\x17\ +\x38\xf5\x94\xfe\x07\xcf\xc0\x97\xa4\x9e\x86\x2f\x21\xaa\x31\x1c\ +\x0c\xe6\xfa\x91\x26\x73\x04\x6d\x4b\xa0\xb8\x3b\x9f\x0c\x8e\x26\ +\x49\xc9\xed\x93\xf2\x68\x2a\xf9\x5e\xc9\x2d\x8d\x1a\xf9\xd1\xb3\ +\xcb\x96\x96\xf6\x14\x03\xd2\xf4\x48\xa1\xc8\x72\xa7\xa2\x6d\x41\ +\xfa\xf5\x22\xc3\xc0\x52\x0f\xa4\x13\x89\x06\x1c\x21\x72\xc5\x0a\ +\xc6\x75\x31\xae\x33\xc1\x70\x72\xb2\x5c\xb1\xb1\xd9\x23\x7b\xa0\ +\xef\x00\xbf\xee\xeb\xd1\xc3\x53\x4a\xde\xcd\x02\x17\xa1\xda\xfc\ +\x38\x6d\x47\x65\xdb\x65\xcb\xac\x48\x82\x06\x47\x5d\x30\x33\x9b\ +\x86\xa4\xe6\xcb\x30\x20\x5b\x18\x53\x41\x8d\xed\xf2\x7c\xdc\x87\ +\x6a\x94\x01\x8d\xa7\xae\xaf\xe7\xe6\xcd\x3b\xac\xfc\x8d\x91\x11\ +\x62\xbc\xcd\x8f\x3a\x89\xb5\xc1\x4e\xb2\x6e\x4b\x85\xf3\xdc\x6b\ +\x7c\x03\xc5\x52\x1e\x9c\xd0\x00\x56\xc1\xf9\x94\x29\x4e\xab\x9e\ +\xd0\xc2\x55\x5b\xdb\x7e\x08\x2b\x7c\xc6\x61\xfd\x09\x19\xaa\xc8\ +\x48\xb0\xd1\xd5\xc4\x36\x73\x16\x4a\x79\x5c\xa1\x1e\xa6\xfe\xe6\ +\x97\x5e\xbc\x77\x1e\xc6\xc6\x4e\xe4\x44\xb1\xaa\x50\xa1\x8a\xcc\ +\x61\xa4\x9d\x8b\x31\xf8\xb3\xfc\xdd\x1c\x60\x2b\x6c\xed\x9e\xcb\ +\x2c\x10\x0b\x5c\x0d\xc0\x1e\x54\x46\x94\xd9\x7f\x77\x30\xa4\x89\ +\x3b\xdb\xb7\x5f\x4c\x7d\xc8\xc1\xb1\x52\x9a\xa2\x03\x0c\x4b\x1d\ +\xbf\x43\x0e\x69\x60\x4c\x4c\x4c\x31\x0a\xf2\xdf\x77\x71\x19\x84\ +\xb3\x6c\x22\xa5\xc6\xd1\xe7\x97\x89\xd2\x3f\x3e\x4e\x4e\x99\xb2\ +\x8c\x14\x7a\xe9\xcc\x86\x89\x18\x06\xe6\x54\xfa\x46\x83\x26\x60\ +\xf9\x54\x3c\x9d\xc7\x68\xf9\x0f\x3c\x75\x6a\x03\x9e\x57\x11\x19\ +\x0a\x86\x34\x9c\xb6\xe0\x22\xca\xcb\x24\x91\x57\xd9\x9c\x64\x36\ +\x48\x4d\xf8\xd5\x01\x71\x19\x30\x57\x14\xa0\x55\x42\x02\xca\xd1\ +\x9e\xf4\xc7\x0c\xc3\x9d\x61\x9a\x2d\xdb\x60\x69\xb4\x8f\xc0\x6e\ +\x59\xf1\x39\xa2\x42\x43\xa7\x38\xb4\x6c\x39\x4a\x59\xc5\x63\xde\ +\xbe\x35\x3d\xd8\xbf\xff\x85\x8d\xb5\x6b\xdf\x80\xb7\xd6\x90\x02\ +\xe7\xa0\x0b\x1d\x7f\x64\x56\x4e\xed\x7f\xd5\xb6\xe5\xa6\x83\x83\ +\x03\x56\xba\x48\x45\x77\x50\xf9\x06\xd2\xce\x06\x27\x28\x2d\x7d\ +\x77\x76\xe8\x40\xcb\xff\x30\x91\x99\x60\xc3\x33\x90\x3a\x93\xed\ +\xe5\x35\x87\x00\xb0\xdb\x50\x17\xb9\x7e\x78\xfa\xf4\x77\xb9\x4d\ +\x5b\x2f\xdb\x6b\xf5\x11\x40\x62\x6c\x6c\x5d\x59\x3a\x54\xd3\xd9\ +\xd9\x59\x0f\x19\xff\xea\x2d\x9c\xe4\x29\x3a\x0f\x66\x45\xd9\x0f\ +\x98\x5f\x23\xfd\x6d\x20\x68\x0a\x79\xc2\x89\x8a\xbe\x0a\xe2\x8c\ +\xc1\x18\x1b\xfd\x6f\x9c\xc8\xaa\x28\xb7\x58\xe8\x63\x65\xb5\x67\ +\x43\xf5\xea\x57\xb0\xcc\x5f\x74\x1e\x34\x68\xd4\x37\xdc\xbd\x01\ +\xd8\x02\xc4\x84\x3f\x7f\xbe\x82\x8c\x55\x64\x39\x18\x76\x95\x2b\ +\x8f\x97\x32\x0f\x27\x70\xcd\x86\x3e\xe6\xbd\x51\x6f\xa7\x7c\x81\ +\x7a\xac\xab\x55\xab\x1a\xcd\xb1\x9c\xc3\x0e\x34\xee\xd0\xb4\xe9\ +\x2d\x68\x93\x78\x63\x77\x93\x2c\xb5\x48\x6c\xc0\x82\x3a\xa0\x1b\ +\xa3\x77\xdd\xde\x7e\x1b\x1c\x79\xea\x12\xa6\x7d\xdd\xbb\x77\xfe\ +\xd7\xd6\x72\x81\xed\x64\xd2\xac\x29\x38\x41\xb6\x3d\x9a\xa6\x44\ +\xfa\x31\x31\x7f\xd0\x64\x9d\x98\x3c\xf9\x24\x9e\x77\xd1\x32\xc6\ +\x2a\xe0\x92\xcc\x6f\xe1\xc4\x88\x8c\x8c\x2c\x48\x32\x08\xd2\xc0\ +\x36\x5f\xb6\xb1\xa9\x89\x04\x62\x73\x94\xf9\xc4\xc9\xe2\xd7\x3d\ +\x02\x90\x5e\xe9\x7b\x38\xff\xc5\x7e\x78\xfc\x78\x15\x39\xd1\x48\ +\x3c\x08\x67\xf1\x07\xca\xee\x86\x6a\xef\x74\xc1\xcf\x80\x32\xa0\ +\x79\x4f\xcf\x9e\x5d\x4f\x0e\xa1\xff\x4c\x21\x25\x09\x7c\x52\x4c\ +\x47\x29\x84\x04\xc3\x2d\x8b\x15\x7b\x85\xd5\x90\xbc\x9c\x06\x5a\ +\x06\x37\x5a\x7a\xd2\xc2\x33\xbf\x84\x84\xf1\xfe\xf1\xe3\x21\x90\ +\x66\x7f\x20\xe7\x20\x19\x46\x76\x47\x29\x97\x91\x4e\x07\x32\xb6\ +\x29\x32\x9b\x25\x7e\x57\xa7\x4e\x5b\x70\x7f\xcb\x75\xe8\xd0\xbe\ +\x57\xac\xad\xd7\xd2\x38\x7a\x10\x90\xb7\xba\xb4\x94\x3d\x6f\xa6\ +\x03\x65\x40\xad\xc1\x32\xe2\xbf\x84\x80\x43\x87\xe6\xc3\x1b\xa9\ +\x8e\xe7\x10\x31\x51\xbe\x71\x51\x51\x8d\x05\xa0\xa5\x69\x51\x0c\ +\xe7\xc0\x68\x78\x3c\xa3\x1e\xba\xb9\xd5\x56\x14\xab\x44\xa6\x81\ +\x9b\x4e\xc2\xb0\x46\x52\xb6\x0a\xbc\x92\x01\x58\xc5\xde\xa3\xee\ +\x4e\xe9\xfd\x5d\x4f\x06\xc5\x3f\x20\xc1\xe1\x3d\x2a\xce\xdf\x2a\ +\xf3\x79\xb0\x6f\xdf\xc1\x70\xa4\x2c\xc1\xbc\x45\x43\xc6\x6f\x35\ +\xe9\x68\x6a\x24\x10\x3b\x83\xe5\x45\xa6\x82\x27\xb2\x2c\x38\x05\ +\x5d\x57\xf6\x6a\xa8\xf4\xde\xd2\x3e\x68\x63\xcc\x98\x9e\x9d\x9d\ +\x3d\x9b\x64\xc0\x3b\xe0\x7e\x88\x9c\xb4\xe3\x78\xb7\xb2\xc8\x2c\ +\x70\x35\x42\x2b\x70\x2e\x68\xfa\xe5\xcb\x97\xa5\xd8\x96\x75\xa5\ +\x6d\x26\xe6\xe3\x08\xcd\x07\xc5\xed\x5e\x5c\xbc\x68\x2d\x9b\x95\ +\x04\x50\x43\x92\xa0\x6b\xd7\x4a\x42\x10\x96\x9a\x76\xf4\x54\xf2\ +\x19\x29\x06\x46\x71\x3e\xca\xe1\x04\xcd\x33\x3f\xb3\x88\x27\xb2\ +\x09\xbe\x2d\x17\x51\x0b\x5b\xea\x8f\x86\x6f\xca\x45\x42\x82\xb4\ +\x07\x69\xeb\x09\xd5\xaa\x60\xec\xbd\xe7\x90\x77\x13\x8d\xdc\x0d\ +\x10\xff\xb9\x2e\xcf\x10\x0e\x22\xb3\xc1\x6a\x62\x65\xc0\x1a\x88\ +\xdd\x55\x86\xe1\xa8\xbf\x28\x29\xde\xfa\xdc\xd3\x73\xc9\x95\x6d\ +\xdb\x0a\xc3\x69\xe2\x25\xd5\xc2\xca\x83\x2a\x59\x36\x94\x43\xa9\ +\x38\xa7\xfa\xb6\x87\x47\x8f\x6e\xc2\x4a\x99\x40\xf7\x32\x38\x3d\ +\x8c\x33\x8b\x32\xbf\xfc\xa2\x07\x32\x19\x96\xe2\x3a\x4d\xe3\xfc\ +\x36\x0d\x4c\xf1\x5e\xb3\x66\x1f\x6d\x5f\xe4\x58\x36\xa4\x18\x3d\ +\x83\xb7\xec\xd3\xeb\xdb\xb7\x4d\xc9\x08\xff\xa2\x97\xf6\x90\x8c\ +\x29\xa6\x64\xbc\xb9\x7b\x77\xbe\x63\x9b\x36\x37\x68\xc5\x02\xa9\ +\x70\x75\x59\x64\x70\xf0\x28\x64\xb1\x8c\xa7\x46\x8d\x9a\x3d\xbd\ +\x57\x16\x2d\xda\x0a\x95\x24\x27\x68\x57\xb3\xbb\x63\xc7\x69\x4a\ +\xe3\x49\x1c\x17\x94\xdd\xcd\xd5\xac\x11\x77\x65\xf5\xe1\x72\x42\ +\x02\x67\x80\x59\x34\x19\x68\x60\xb1\x03\xe3\x2a\x4d\x27\xca\x91\ +\x91\x23\xcf\xd2\x56\x45\x29\xbf\xc0\xd8\x54\x70\x19\xd8\x47\xc9\ +\x76\xc0\x24\x2a\xe2\x3a\x7e\x19\xd2\x41\x94\xe7\xab\x28\x38\x92\ +\x02\xe3\x24\x5b\xa7\x91\x0b\x7b\x93\x44\x68\x0f\xfe\xfa\x6b\x7d\ +\x2d\x6f\xf5\xbc\x97\xfe\xfe\x95\xa9\x8f\x39\x56\xc5\x48\x74\xcc\ +\x59\x16\xec\xe3\xb3\x9a\x12\x24\x50\x00\xfb\xf4\x43\x60\x60\x56\ +\x36\x65\x64\xb8\x9b\x9a\x1a\x62\x3b\xf9\x9a\xb2\x4f\xe8\xcc\x26\ +\x35\x37\xa2\xa8\xd4\x44\x1e\xda\xf3\x48\x09\x35\x75\x6c\x48\x21\ +\x4d\x38\xe5\x73\x7a\x59\x58\x34\x91\x93\x19\x14\x7c\xf7\x6e\x21\ +\x91\x51\x60\xc3\xab\x0e\x4e\xa7\x3e\x01\x50\x89\x0e\x53\x92\xa2\ +\xbf\xa1\xaf\xb2\x40\xb3\x35\x17\xce\x74\x3b\x71\xaf\xee\x0d\x2e\ +\x53\xc7\x18\x59\x29\xa1\x16\x7a\xe3\xc6\xac\x1d\x2d\x5b\xde\x80\ +\xd1\xdc\xa6\x4e\x32\x34\x59\xc8\xf5\x73\x21\x85\x27\xe9\x66\x7e\ +\x01\xa3\x8a\x87\x36\xa3\xd3\x8d\x2d\x5b\x1c\x0f\xfd\xf6\x9b\x3b\ +\xa5\xee\x60\x8c\xae\xbb\xe9\x7d\x1a\x97\xad\x6f\x33\x16\x7c\xbe\ +\x6b\x19\xfb\xe1\xc3\x12\xea\xf3\x16\xfd\xf2\xa5\x39\xee\x0b\x0b\ +\x0d\xe0\x70\x4e\x9e\xca\x18\x9c\xc9\x5f\x50\x22\x31\x1d\x07\x70\ +\x96\x73\x46\x89\x90\x3a\xb9\x18\xd4\x91\x73\x1c\x9f\xef\xc6\x91\ +\x67\x0c\x1d\x58\x6e\xd2\xb7\x21\xca\x81\xae\xcb\x46\x0f\x2d\xc0\ +\x14\xa7\x81\x03\xbd\x70\x3f\x07\xec\x0c\x0e\x73\x19\x3a\xf4\x1c\ +\x8d\x4b\x8f\xd9\x5d\x0a\xb6\x67\xea\x64\x72\x19\x50\x5f\xb0\x83\ +\x5c\xd1\x0a\x82\x1e\xd8\x75\x2c\xc4\x75\x2f\xf8\xf5\xf6\xee\xdd\ +\xdb\xf0\xbc\xae\x7c\xbf\x21\xb8\x04\xe4\xe6\x8b\x3a\x98\xb1\xd2\ +\x9a\xce\x0b\x61\x0f\x1f\xce\x25\x83\x53\xd2\x89\x8e\x8d\x1b\x47\ +\x85\xaf\x79\x85\xc4\x89\x29\x53\x46\x4a\x2f\x66\x12\xb4\x3c\x48\ +\xcd\xca\x48\x64\x09\x18\x54\x21\x8e\x80\xf8\x55\x65\xbb\x0f\x39\ +\x07\xea\x11\x37\x56\x33\xf1\x58\x87\x8d\x8d\xb7\x98\x60\x5d\xb0\ +\x23\xa8\xa2\x06\xed\xd8\x92\x24\x52\x03\x3f\x63\x21\x8c\x34\x62\ +\x77\xa6\x34\xb9\x07\xfa\xf6\xbd\x28\xa5\xb0\x95\xec\x96\x31\xe0\ +\xb8\xcc\xd5\x5e\x64\x60\xfb\x38\x98\xd4\x00\xa8\xa8\x55\x1d\x46\ +\xc8\x9b\xf7\xdc\x3f\xf1\x1c\xd3\xf9\x3c\x8b\xba\xbd\x32\xe0\x6a\ +\xde\xaf\x3e\xb3\xa9\x54\xe1\x94\xa1\xae\x28\xf5\xe2\xf0\x1e\x05\ +\xc1\x18\x2a\x98\xa4\x2d\xcd\x0c\xa5\xcc\x5e\xf2\xab\x6c\x5a\x68\ +\x20\x32\x0b\x5c\x06\xd4\x1e\x5e\x49\xb3\x03\x7d\xfa\x5c\xb4\x2a\ +\x5b\xf6\xea\x29\x3b\x3b\x7d\xf1\x1d\x20\x43\x05\xdf\x4b\xe1\xe1\ +\x4e\x22\xd3\xc1\x93\x59\x83\xb2\x1c\xec\xeb\xd6\xf5\x43\x6c\xee\ +\xa5\x52\x82\xe1\x3e\x7f\xbe\x2b\xd5\x48\x51\xfe\x25\x8d\x91\x5e\ +\xa6\xc7\xe2\xc5\xfb\x29\xf0\x8a\x73\xdd\x2d\x29\x1f\xe7\x2a\x32\ +\x1b\xac\x16\xfd\x2b\x68\xfa\x4f\x6a\xd1\x10\x52\xb8\xab\x7c\x71\ +\x66\x76\xed\x1d\xc0\x90\xdb\xcc\x79\xe4\x58\x51\x34\x15\x91\xe5\ +\xfe\x44\xea\xe6\xaf\x93\x06\xf7\x19\x5b\x9a\x08\x97\xdf\x7e\x5b\ +\x85\xac\x95\xc9\x70\xc0\xf8\xd3\x7b\xd8\x8e\x36\x14\x99\x0e\x6e\ +\xc3\x25\xbe\x13\xca\xb9\x7d\x5b\xd3\xa6\xb7\x4f\x4c\x98\x70\xfc\ +\xc1\xb1\x63\x1d\x65\x8b\xe6\x35\x99\x5f\x91\xc0\x13\x59\x04\x15\ +\xcb\xc3\xd0\x7a\xf7\x04\x5a\x19\x39\x91\xdb\x19\x07\xf6\xed\x64\ +\x70\x7e\x0e\x0e\x3b\xd6\x56\xaa\xa4\x68\xd5\x7b\x6f\x6b\xd6\x4c\ +\x1d\x32\x80\x4c\xbb\x89\xc8\x74\x30\x4c\x84\xe8\x89\x79\xf8\x2d\ +\x2d\x29\x5d\x4a\xdd\xa4\x46\x19\xd0\xb0\x4f\x1f\x3f\xb6\x35\xcf\ +\x95\xeb\x8c\xa2\xaa\x9c\x35\xe2\xae\x5c\xbd\xdc\x05\x9c\x07\x96\ +\xda\xda\xa8\xd1\x1f\x32\x8d\xe8\x34\x56\xb6\x29\xd8\x52\xee\x46\ +\x3a\x51\x08\x8d\x11\xcf\x9b\x98\x58\x88\x4c\x07\x83\xb2\x83\x90\ +\xc0\x40\x3d\xc8\x2f\x50\x87\xd6\xbf\x69\x70\x53\xe5\xae\x24\xee\ +\x40\xbf\x7e\xb6\x8a\xe3\x05\x9d\x5f\xcf\xd2\x2e\x06\xbb\x9a\x87\ +\x07\x7a\xf7\x6e\x29\xb2\x0e\x8c\xa8\xa8\xa8\x42\x1b\x6b\xd5\x7a\ +\xac\xc8\xba\x39\xf5\xef\x3f\x07\x2d\x6f\x17\xa3\x3b\xcb\x71\x2a\ +\x27\x81\x4c\xc0\x08\x91\x55\xe0\x2f\xc6\xa1\x7e\xdb\xb7\x4f\x41\ +\xf8\x86\xb6\x84\x8e\x14\x18\xff\x13\x63\x2b\x4c\x35\x91\x90\x2c\ +\x0f\x43\xb7\xa0\x70\x9a\x4f\x29\xdf\x37\x1e\xd7\x2f\xf8\x62\xbd\ +\x2b\xcf\x86\xfd\x44\xd6\x82\x91\x10\x17\xd7\x17\x92\x7d\x97\xa0\ +\xd6\x14\x27\x9d\x25\x61\x50\x15\xde\x01\x77\x35\x4d\x50\x23\x91\ +\x95\x60\xc3\xab\x02\x8e\x77\x19\x32\x64\x2e\xe6\xe5\x26\xc9\xdb\ +\x69\xca\x99\x53\x5e\x2c\xc6\x4c\x35\xcb\x80\x3e\x45\x47\x9b\x41\ +\x5c\xf8\x1c\xaa\x4b\xe2\x69\x4c\xa3\x59\xe3\x4f\xa0\x8e\x84\x0b\ +\x38\xed\xa8\x0f\x89\xd2\x42\x4d\xd8\x09\x89\xb6\xfe\xd6\x86\x86\ +\x3b\x31\x56\x42\x67\x64\xd2\x58\x1d\xba\xe9\xa7\xa8\xa8\xc9\x28\ +\x4a\x5e\x4d\xb9\xb0\x8a\x50\x11\xae\x45\xb1\x33\x51\xcb\xdd\x41\ +\xb8\xf5\x63\xd8\xe3\xc7\x73\x65\xef\xf3\x5e\x6e\x53\xa7\x1e\xd7\ +\x6a\xd6\xa8\x63\xe0\x89\x2d\x0d\x76\x55\x0a\x29\x53\xe9\x26\xc3\ +\xc8\xfa\x9e\x70\x3d\xb1\x5a\x4d\xc6\x39\x9b\x9a\x6c\x34\x11\x40\ +\x88\xaf\xef\x14\x4a\xeb\xa3\x78\xab\x5d\x95\x2a\x56\x18\xcf\x0f\ +\x16\xc6\xca\x16\x4a\xaa\x70\xc8\xdf\x34\x95\x9e\x4f\x5d\x05\x17\ +\xbe\xea\xf4\x04\xf1\xfc\x94\x02\x47\x82\xcd\x15\xef\x33\xf8\xfb\ +\x2b\x3f\x3f\x6b\x1c\x03\x46\x63\x05\x7c\x08\xaa\x8f\x07\xd4\x37\ +\x0e\xcf\xfe\x6d\x2a\xdd\x0c\x92\x02\xa0\x8c\x15\x4c\xf4\xef\xb8\ +\xf6\x21\x29\x76\xea\x1a\x84\x31\x43\x4a\x35\xe2\x8a\xe5\x8c\x91\ +\xb7\xd3\x4e\x72\x00\x6b\x22\x94\x33\x1a\xdb\x4b\x75\x19\x10\x14\ +\x00\x2e\xfd\x4b\xcf\x6d\x0c\xc4\x7f\xb6\xd2\x24\x7f\x83\xb1\x94\ +\xaf\x29\x32\x03\x6c\x88\x95\x69\x1b\x49\x8e\x93\xd3\x33\x66\x58\ +\xfd\x4b\x2b\x41\x18\xd8\xd2\x74\xa2\x0e\xaf\xd4\x01\x08\x7d\x10\ +\xec\xd1\x48\x62\x13\x0e\xee\x5b\x0e\x0d\x1e\xbc\x0d\x9a\x2c\x56\ +\x51\xc1\xc1\x15\x05\x20\xeb\xf4\xea\x53\x70\x17\x46\x58\x49\x64\ +\x08\x38\x5b\x05\xec\x07\xce\x00\x73\x89\xff\x10\x54\xff\xa5\xb3\ +\xdf\x85\xa5\x4b\x6d\x60\x68\xd3\x2b\x74\xe8\xb0\x7f\xa4\xbb\xbb\ +\x0b\x86\xf5\xc1\x9c\x60\x76\xd0\x7b\x89\x4a\x55\x06\xd1\x58\x3b\ +\xdc\x6b\xe6\x0a\x5e\x04\x07\x98\x09\xf1\x41\xa4\x0d\x0c\x06\xeb\ +\xae\x20\x2d\xcc\xdf\x4c\x4f\x2f\x51\x5b\x1f\x13\x2b\x5a\x53\x92\ +\x7f\x23\x49\x88\x3d\x5d\xba\xb8\x5c\x5a\xb1\xc2\x01\x9a\xf6\xe7\ +\x65\xec\xef\xde\x77\x74\x0e\x65\x30\x18\xc1\x97\x2f\xf7\xa4\x6d\ +\x25\xb2\xd6\xbd\x35\x57\x78\x18\xdb\x63\x64\x4d\xc4\x40\xc3\x9e\ +\x62\x7c\xf3\x65\x66\xfc\xa8\x6d\x4d\x9a\xa8\x73\x38\x91\x21\xf1\ +\x9b\x48\x3b\x18\x0c\x0e\x2b\xa0\xfc\x47\xad\x08\x86\x92\xa0\x2e\ +\xb2\xc0\xb5\x92\x54\x18\x3b\x49\x52\x70\x9a\x7a\x1e\xc1\xbe\xbe\ +\xbd\x65\x9f\x32\x17\x8d\x96\xbe\x07\xd3\x70\xbe\x63\x30\x38\x88\ +\xee\x6d\x65\xb5\xfb\xdd\xc3\x87\x9d\xa5\x11\x8d\x07\x53\x1e\x1c\ +\x3e\xbc\x46\xbb\x3f\x02\xda\xf4\xe6\xa3\x67\xdb\x5b\xb6\xf4\x16\ +\x00\xb6\x97\x76\x74\x0f\x26\x80\x4b\xff\x5e\xf5\x33\x83\xc1\x46\ +\xd7\x04\x6c\x2c\x00\x53\x3d\xbd\x6e\x64\x44\xf0\x5a\x9a\xa4\x92\ +\x78\x3b\x40\x4a\xc3\x39\x09\x00\xdb\x51\x1f\xe4\x01\x26\xa1\x1d\ +\xd4\x63\x64\x4b\xc4\xa4\xb1\x33\x10\x83\xc1\xf0\xda\xb0\x21\x2f\ +\x95\x8d\x58\xe4\xc9\xf3\x8a\x82\xe4\x5a\x05\x93\x11\xa8\xd9\x8a\ +\x89\x0c\x09\x99\x8d\xfb\x6a\xe0\x57\x2a\x80\x85\xb1\x2e\x46\x22\ +\xae\x39\xae\xa4\xad\x69\x8d\xf1\x2b\x7f\xd1\x5d\x86\xc1\x60\x90\ +\xf7\x91\x3c\x94\xd0\xdb\x57\xf7\xbc\x86\x07\xf3\x2a\x0c\x88\x8c\ +\x6b\x9d\x6c\xf1\x14\x45\x7a\xfa\xd4\xc0\x9d\xc6\xc0\x94\x7b\x07\ +\x0e\x6c\x46\x1b\xdc\x89\x10\xd4\xb9\x67\x63\x68\xd8\x6e\x55\xb1\ +\x62\x23\xb1\xda\xc5\x4a\xbd\x95\x6d\xbc\xcd\x64\x30\xbe\x5d\xab\ +\xb5\x0a\x4c\x21\x42\x33\xf3\xbe\x75\xd9\xb2\xf7\xd5\xdd\x3f\x55\ +\xaa\xd7\x48\xb6\x75\x97\x3d\xb2\xc7\x20\xab\xbd\x30\xc6\x62\xd0\ +\x1b\x3b\x74\x4f\xb7\x6e\x07\x15\xfd\x15\x6c\x31\xed\xa2\xde\xbd\ +\xab\xb4\xae\x4a\x95\x67\x10\xb0\xfd\x8c\x3a\x3d\x6f\x34\x2c\x49\ +\x4d\x64\x87\xc1\x60\x6c\xaa\x5d\xbb\xc1\xa6\x3a\x75\x7c\x50\x6f\ +\x47\x46\xf6\x15\x86\xe5\x0e\xc5\xb0\xe5\xa4\xb1\x22\xab\x12\x46\ +\x82\xfa\x30\xc2\x49\x52\x51\x2c\x86\xae\x48\x15\xfb\x48\x57\x8f\ +\x45\x8b\xf6\xe1\x99\x19\x8d\x1d\x19\x35\xea\xac\xfc\x9d\x3a\x1a\ +\x06\xdd\x49\x3a\x57\x72\x0b\x35\x18\x0c\x16\xa9\xfd\x23\x3a\x34\ +\x74\xc5\x8e\xd6\xad\xaf\xc8\xda\xad\x9b\x90\xf4\x3e\x74\xc9\xce\ +\x4e\xe9\x57\xae\xa2\xb6\xbc\x1a\x8a\xd0\x97\xa9\x09\x25\xdd\x43\ +\xea\x6f\x37\x55\x2d\x43\x2a\xe0\x36\xb2\xe1\x17\x6a\x77\xe7\x54\ +\x8a\x2f\x4d\x84\xe8\x2b\x14\x30\x18\x82\x0d\xcf\x90\x44\x4f\x49\ +\x5b\x1f\x5d\x42\x9f\x41\xc0\xe8\xce\xd6\xc6\x8d\xcb\xca\x55\xaa\ +\x89\x62\x6c\xa4\xcd\x48\xd5\xe6\x38\xf3\xdd\xa5\x56\x4f\x58\xe9\ +\xa8\xc3\xeb\x5b\xd9\xbc\xb0\xa6\x7c\x7f\x18\x0c\xcd\x1d\x46\xf6\ +\x4b\xd8\xa3\x47\xd5\x3c\x16\x2e\x74\x49\x5d\x3e\x80\xc1\x60\xc3\ +\x6b\x0f\x9a\x4a\x2a\xb5\x5a\xaa\xe3\x13\x26\x6c\x72\x9b\x36\xed\ +\x38\xc6\x8c\xa1\x2e\x56\x13\xe7\xb5\x58\xe9\x64\x49\xbe\x77\xf0\ +\xe0\x16\x8c\x77\xd5\xa8\x4c\xe8\x85\xe7\x71\x74\xce\x33\xcb\x99\ +\x73\xdf\x9b\x7b\xf7\x06\xe1\x79\x75\x91\x3a\x18\x0c\xae\xe5\x02\ +\x0d\xc1\x6c\x1a\x63\x6d\xc0\xd9\xa0\x11\x0c\xa9\x86\xb2\xe2\x1d\ +\x9f\x38\xd1\x0d\x63\xe3\x40\x3d\xcd\xde\x6b\x81\x6e\x6e\xeb\xe8\ +\x4c\x88\xed\xe9\x73\x2f\x53\xd3\xb4\xaa\x44\x33\x18\x0c\x8d\xc6\ +\x92\x45\x71\x66\xbb\xba\xa5\x41\x83\x7b\x32\xef\xb2\xa0\xd0\x02\ +\x72\x2f\xb7\x93\x41\x5e\x5d\xbb\x76\x37\x9e\xd7\x17\xff\x08\x0c\ +\x06\x1b\xdf\x88\x2f\xc9\xc9\xe4\xc9\xac\x2a\xab\x0d\xfa\x82\x5d\ +\x05\x20\x57\xc0\xa4\x0d\x35\x6b\xde\xc7\xf3\xc9\xe0\x5f\xc6\xe5\ +\xa4\x63\x86\x3a\x07\xd5\x12\xa9\x82\xc1\xe0\x6e\x40\x86\x1a\xee\ +\x7f\x5f\x30\x45\x36\x25\xb9\x88\x33\x5c\xf2\x33\x4f\xcf\x75\x78\ +\xa7\x52\x2a\xb1\xbf\xfa\xe0\x62\xbc\x67\xbc\x58\x88\x9a\x8a\x0c\ +\x04\xee\xc3\x30\xfe\x19\x5c\x25\xfe\x1c\x0c\x06\x57\x94\x23\x20\ +\xee\x4d\x86\x46\x86\x67\x55\xa6\x4c\xe8\xfb\xfb\xf7\x47\x0b\x2d\ +\xc0\xa8\x96\x2b\x41\x73\x85\x18\x5b\x28\x80\x9d\xed\xda\xed\xa6\ +\x7b\x78\x47\xd7\xfe\xf5\xaa\xc8\x60\xb0\x4c\xdc\x10\x5a\xd5\x14\ +\xb5\x68\x18\x5f\x38\xae\x03\xb4\x9b\x59\xa0\x05\xf3\xb3\x5b\x8e\ +\x8e\xdb\x2e\xae\x58\x71\x00\x5a\x8e\x0f\x65\x4a\xd8\x74\xbc\x1f\ +\x81\x70\x43\x58\x42\x6c\xec\x22\xea\x1e\x2b\xfe\x12\x0c\x06\x1b\ +\x5e\x25\x90\xfa\x20\xec\x81\x61\xbd\x46\x42\xf4\x25\x0d\x83\xdb\ +\x01\xa6\x84\x5e\xbb\x66\x43\x67\x40\xb0\xd7\xc7\xb7\x6f\x67\x60\ +\x35\x7c\x4d\xe3\x44\x9f\x35\x6b\xf6\x62\xbc\x89\x48\x13\x18\x0c\ +\xd6\xce\xfc\x05\x0d\x48\x16\x24\x27\x26\x92\x63\xa5\xa8\x00\x10\ +\x4c\x3f\x44\xab\x59\x78\x50\xd0\x10\xc5\xe3\x89\xab\xde\x96\x86\ +\x0d\x3d\xc9\xd8\xd6\x57\xaf\xfe\x08\xf7\x53\xbf\x6f\x3b\xc9\x60\ +\xb0\xe1\xe5\x06\xab\x83\x2a\x99\xb7\xa9\xce\xb9\x5c\x53\xaa\xd4\ +\x69\x45\xde\x81\xfa\xa2\x21\x8f\xf3\x3e\x25\x3e\x3f\x75\x77\x5f\ +\x4f\x32\x72\xb2\xb5\xd3\x60\x70\x19\x38\x99\xda\x33\x8b\xb4\x81\ +\xc1\x60\xbc\xf4\xf5\x2d\x8b\xb6\x4c\xc1\x72\xfb\x18\x80\x73\xdb\ +\x3e\xf0\x19\xdd\x43\xb8\xe8\x0a\x8c\xed\x37\x12\xa6\xc5\xd8\x0d\ +\x2d\xa7\xca\x3b\x5c\xcb\x8b\xb4\x81\xc1\x60\xc4\x47\x44\x8c\x40\ +\xb7\x19\x0f\x24\x47\xdf\xa1\x8a\x71\x32\x28\x14\xb8\xc6\x22\x17\ +\x73\x39\xc9\x82\xe3\x7e\x2b\x8d\x6d\xfb\xe5\x97\x0b\x0f\x8f\x1f\ +\xdf\x44\x72\xe0\x48\x15\x8b\xc7\xbb\x8f\x30\xbe\xc4\x58\x08\x23\ +\xf1\xef\x03\x83\xb6\x35\x22\xa3\xc0\x4d\xea\xfb\x83\x26\xb7\xf7\ +\xee\xdd\x06\x63\x52\x97\x05\x1d\xe8\xdb\xd7\x8a\xb6\x92\x48\x88\ +\x8e\x46\x4d\x5e\x30\x3d\x07\x7b\x80\x7d\xdc\x17\x2c\xd8\xa7\xb1\ +\xe2\xc5\x9b\x08\xf1\x2f\xeb\x36\xc3\xc6\x96\x8d\xb6\x3a\xa0\x17\ +\x69\xf0\x8b\x8c\x02\x1b\x9e\xd1\x6b\x7f\xff\x55\xbb\x3b\x77\xbe\ +\x7a\x76\xde\xbc\x31\x54\x29\x4e\x15\x08\x1b\xeb\xd4\x21\xe7\x49\ +\x35\x21\xb1\xbb\x63\xc7\x81\x64\x6c\xf0\x78\xc6\x22\xa5\xec\x3e\ +\xb4\x35\x67\x8a\x7f\x17\x18\xf0\xa8\xf9\x4b\x11\xd4\x67\x22\x23\ +\xc1\x86\x57\x06\x1c\x4d\x14\x80\x65\x89\x12\xf7\xc9\xe8\x56\x97\ +\x28\xd1\x43\xee\x34\x72\x2a\xe1\x04\xa5\x5a\x01\x9c\x2b\x33\x53\ +\x86\x60\x7c\x22\x56\xbc\xe6\x3f\xb6\x8a\x36\xaf\x70\x0d\xa9\xa8\ +\x92\x26\x19\x9a\x1d\xc1\xd2\xad\x9d\x09\x60\x78\x2d\x5d\x3a\x09\ +\xe1\x83\x78\x18\x1d\x65\xac\x3c\x00\x03\xc1\x14\xab\x52\xa5\x5e\ +\x25\x25\x24\xcc\xa3\x00\x3b\x1c\x2f\xad\x30\xf6\x41\xcb\xb1\x72\ +\xcb\x58\x88\x0a\x42\xa7\xc1\x48\x2d\xde\xa3\x4a\x11\xc2\x4e\x4f\ +\x4f\x2f\x49\x00\x06\x85\x0a\xc5\xd3\x7b\xd2\x10\xf3\x92\x42\x95\ +\x4c\xd2\xcd\x00\xf0\xb9\xb9\x8d\xa9\xe9\xde\x41\x47\x8f\xda\x57\ +\xe9\xd9\xd3\x3b\x4f\xc9\x92\x31\x2a\x95\xca\x48\x00\x6d\xcc\xcc\ +\xce\xe6\xd0\xd7\xf7\x98\xa6\x52\x7d\x8e\x7a\xf1\xc2\x05\x43\x45\ +\x2a\x75\xea\xe4\xd1\x77\xef\x5e\x87\xea\xfd\xfa\x9d\xcf\x96\x2d\ +\x5b\xed\x1c\x2a\x15\x55\xac\xff\x48\xbd\xf3\xd8\xe0\x30\x61\x43\ +\x54\x42\x34\xab\xd4\xa5\x8b\x9f\x00\x72\x15\x2a\x14\x8b\x4b\x1c\ +\x8c\xac\x11\xae\xfe\x78\x36\x0b\xbf\x44\x09\xba\x76\x22\x3d\xc1\ +\xc6\x46\xbb\x88\xb7\x58\xd9\xf6\x04\xec\xdb\xe7\x32\xe4\xd8\xb1\ +\x03\xed\x96\x2d\xbb\x8f\xb1\xec\xa5\x20\x6e\xd4\x60\xdc\xb8\x6b\ +\x78\x7e\xab\xb0\x10\xed\x71\x2d\x96\x2d\x7b\xf6\xcf\x41\x9e\x9e\ +\xad\x6f\xac\x5f\x9f\xa7\x8b\x9d\x9d\x73\x2b\x63\x63\x57\xac\x7e\ +\x25\xf1\x05\x39\x27\x95\xfc\xcd\xb9\x98\xd7\xa3\x42\xb7\xc0\x90\ +\xe7\x82\x97\x10\xca\x09\x7b\x74\xec\x98\x5a\x61\x78\x7f\xef\xde\ +\x94\xf9\x6e\x4c\xe5\x26\x74\x4f\xb4\x2c\x5e\xfc\xdd\xb6\xa6\x4d\ +\x1d\xd2\xb7\xb7\x17\x3b\xaa\xd6\x56\xa8\xe0\x68\x8a\x15\x8c\xe4\ +\xf9\x70\x7f\x1b\xd7\xc4\x95\x05\x0a\xbc\x96\x4d\xe7\x8d\xe4\x7b\ +\x7d\xc0\x94\xe3\xe3\xc7\xbb\x41\x57\xe5\x3c\x0c\x34\x91\xe6\x0c\ +\xd9\x2a\x0b\xe9\xec\x87\xdc\xcc\xcb\x02\xa0\x78\x1e\x85\x11\x4c\ +\x84\xe8\x4d\xff\x9d\x35\x25\x4a\x5c\xd1\xa1\xe6\x87\x0c\xda\x26\ +\x62\x82\x36\x83\x29\x9e\xa6\xa6\xce\xe7\xe6\xce\x9d\x28\xd5\xa9\ +\x12\xe8\xba\xb2\x60\xc1\x27\x2b\xf2\xe5\x8b\x86\x4e\x63\x52\x88\ +\x8f\x8f\x2d\x26\x6f\x09\x58\x50\xa4\x27\xd8\x81\xd2\xf1\xb1\x9b\ +\xdb\x46\xc4\xe0\xae\x43\x7e\x2f\x18\x72\x7b\x1e\xd1\xaf\x5f\xaf\ +\xd0\xd4\x43\x59\x24\x44\x29\x52\x18\xc3\x97\x5e\x10\x2a\x14\xc6\ +\x05\x79\x79\xd9\x41\xa2\xef\x16\xcd\x91\x0c\xa0\x7b\x0b\x00\xde\ +\xe5\xca\x30\xb4\x8f\xca\xb8\xbf\xa3\xe3\x76\xcc\x57\x59\xa1\x13\ +\x60\xa8\x30\x29\x6f\xa5\xeb\x39\x06\xcd\x09\xe7\x43\x89\xb8\xaf\ +\x9c\xac\xaf\xdb\x5b\xb5\x3a\x8f\x58\x90\x2b\xdd\x23\x5e\x74\x31\ +\x3e\x3c\x7c\x08\x26\x9d\xca\x4c\xa6\xa6\x7b\xbc\x8e\x8d\xae\x0a\ +\x38\x05\x34\x95\xec\xa4\x9d\x5b\xe9\xf2\xdb\x6f\xea\x9c\x4c\xac\ +\x86\xcf\x37\x54\xaf\xbe\x38\xec\xe1\xc3\xb9\x57\xed\xec\x76\xad\ +\x2e\x5e\xfc\xcd\x7d\x17\x97\x8d\x8a\xdc\xc3\xf1\x71\xe3\xf6\xd0\ +\x9c\xc9\xc6\x25\x1f\x75\x68\xbe\x18\xd7\xb7\x6c\x19\x8e\xc9\x53\ +\x97\x95\x60\x1b\xe3\x8d\xab\x01\x34\x1a\xdd\xbc\xd7\xac\xd9\xf7\ +\x29\x32\xd2\x0c\x9e\xb3\xd7\x50\xa7\x8a\x80\x66\xa3\xd9\xd3\xb3\ +\x67\x8b\x63\xb2\x43\xa4\x77\xec\x66\x86\x1c\xd4\xd9\xf0\x8a\x81\ +\x45\xbe\xf1\xac\x86\xe7\x92\x25\xce\xe8\xe8\x1a\xa6\x34\x16\x81\ +\x00\xed\xb9\x98\xb7\x6f\x17\x53\x89\x90\x00\xc6\x0b\x91\x03\xbb\ +\x91\x40\xcc\x59\xec\x45\x0b\x8b\x03\x96\xc5\x8a\xbd\x92\xef\xfa\ +\x49\x39\xf7\x2c\x06\x4f\x70\x49\x70\xea\xb5\xf5\xeb\x77\xa1\x47\ +\x9a\x39\xee\xf5\x1f\x9d\x3c\x39\xc6\x6f\xdb\x36\xeb\x35\xa5\x4b\ +\xaf\xa6\xc9\xa2\x55\x0e\xe3\x6d\x05\x00\x37\xf5\xfd\x65\xfa\xfa\ +\x09\x08\x1b\xdc\x71\x1d\x3a\xb4\x94\xf8\x06\x32\xac\x91\x21\xcf\ +\x57\x03\xc8\xf5\x99\xf8\x6f\xdf\xbe\x7d\x4b\xa3\x46\x97\xa0\xa1\ +\xe2\x7b\x76\xf6\xec\x0a\x8a\x91\x52\x7d\x1d\xcd\xd9\xc9\xa9\x53\ +\x4f\x60\x6c\x24\x42\x0a\x0b\xa8\x1d\x17\xce\x78\xde\xa7\x16\x2e\ +\x2c\xa6\x79\x76\xcc\xda\x86\x24\x5c\x56\xd2\x04\x1c\x0a\xe6\xc6\ +\x64\xec\x97\x5b\x92\x24\xd4\x6c\x05\x61\x82\x49\xb5\x2a\x87\x00\ +\xb0\xda\x3d\x40\x3e\xe0\x1b\xb9\xed\x69\x29\x83\xb0\x6f\x71\x25\ +\xe3\xcc\x2b\x27\xd3\x8a\x0e\xf4\xe0\xd0\x0c\x0b\xcc\x72\xaf\xec\ +\x16\xe0\x64\x39\x0f\xcd\x95\xd5\x8d\xe4\x1a\x68\x55\x83\xa1\x91\ +\xc8\x91\x01\x98\x0b\xec\x0a\x9a\x80\x0d\x35\x0c\x6e\x34\x18\xa5\ +\x03\x39\x9a\x8c\xeb\x0e\x0e\xb5\x1c\x9a\x37\xf7\x25\xef\x17\xa5\ +\x15\x85\xdc\xb8\xd1\x58\x48\x20\xe1\x36\x18\x0d\x2d\x5e\xc8\x82\ +\x4b\x95\x99\x81\x41\x6b\x0d\xe9\x80\x33\x02\xc0\xef\xac\xa4\x7b\ +\x49\xcf\x0c\x95\xfb\x66\xe3\x2b\xa8\xe9\x58\x51\x7a\x25\x24\x25\ +\x25\x35\x14\x1a\xd0\xee\x7f\x07\xc7\x4c\x31\x1c\x17\xa2\x70\x66\ +\xf7\xd2\x8d\x2f\x45\xae\xe7\x1a\xf9\xc0\xd5\xd5\x1e\x5d\x43\x5d\ +\xe9\x5c\xa1\x21\x76\x1a\x06\x55\xaa\xc0\x9b\xfb\xf7\x97\xc6\xe4\ +\x5a\x90\xeb\x99\xbc\x67\xe4\x54\xf1\x32\x33\xb3\xc2\xbb\x39\x21\ +\x82\x1a\x80\x95\x30\xce\x79\xf0\x60\x0f\x6c\x41\xef\xec\xef\xd9\ +\xb3\xc4\x1f\x42\xe8\x67\xf8\x16\x86\xa1\x82\x2e\xca\x39\x32\x3a\ +\x9c\xb5\xcf\x90\x1a\xd8\xb7\x6a\xea\x28\xb4\x83\x94\x31\xb5\xa4\ +\xdf\xd2\x1c\x39\xc6\x08\x9d\x00\x1b\x5e\x0d\x70\x0c\x68\x24\x24\ +\xa0\x38\x1c\x47\xf1\x38\xc4\xe8\x82\x68\xb2\x90\x03\x78\x1d\xe1\ +\x02\x6b\xbc\xb3\x80\xde\xb5\x32\x34\x6c\x4f\xe3\xfb\xba\x77\xf7\ +\x26\xaf\xdb\x87\x27\x4f\x56\xe3\xda\x14\x63\xce\x60\x0c\xb8\x80\ +\x8c\x4f\x64\x08\x18\xc9\xc9\xc9\x6d\xf6\xf7\xea\x75\x09\xde\x64\ +\x25\x34\x40\xba\x29\x26\xdf\x98\xdf\xb2\x68\xa9\x1c\x08\x27\x0b\ +\xcd\x4b\x69\xa1\x13\xe0\xb0\x41\x0d\x8d\x7d\x7f\x41\x2a\x29\xa1\ +\x89\xc4\x24\x45\x9c\x99\x39\x73\xb7\x3c\x43\xfc\x0a\xe6\x93\xef\ +\xec\xa7\x77\x9e\x7b\x7a\xda\x60\x35\xdc\x80\x9f\xe3\x61\x9c\xe3\ +\x0e\xf4\xee\xdd\x72\x75\x91\x22\x4a\x11\xe6\x5d\x30\xe3\x54\x89\ +\x79\x87\xd2\x2d\x31\x2e\x6e\x19\x39\xc2\x0e\xf6\xeb\x77\xf8\xea\ +\xba\x75\xc3\x34\xe6\xb0\x22\x58\x0d\x2c\x4b\x55\xe7\x28\x15\x1a\ +\x43\x3b\x14\x6c\x2d\x4f\x8b\xac\x05\x43\x3a\x44\x52\x70\x3d\x0d\ +\x8e\xc3\xcf\xaf\xc1\xaf\x0e\x4d\x9b\xde\x92\x2b\xd7\x2c\xb0\x9a\ +\xc6\x64\x96\xa4\x2d\x26\xce\x07\x41\xb6\x15\x2a\x5c\x55\xce\x71\ +\x76\x95\x2a\xd9\xfb\x6c\xd8\x60\x04\x71\x9d\x77\x38\x03\xc6\x63\ +\xf5\x3b\xf8\xcc\xcf\xaf\x80\x90\xc8\x98\x33\x04\xf7\x33\x07\xdb\ +\x81\x13\xc1\x81\x32\xc9\xa1\x39\xcd\x87\x16\x29\xae\xf7\x55\xaa\ +\x8d\x0d\x11\x59\x07\x86\x69\x8d\x1a\x39\x77\xb4\x6c\x79\x42\xd1\ +\x5c\x24\x27\xca\x85\x65\xcb\x76\xca\x6c\x93\xee\xa0\xbe\x96\x81\ +\x9a\xc8\xd5\x4f\xfd\x3e\xa4\xdf\x42\xe9\x7a\xd1\xdc\x7c\x17\x9e\ +\x39\xd1\xe4\x52\x7c\x0f\xbf\x37\x4f\xcb\x50\xc7\x82\x9e\x8b\x85\ +\xc8\xe0\xc6\x17\x9c\x46\x06\x89\xbe\x39\x88\xe5\xad\x3f\x39\x69\ +\xd2\x96\x83\x03\x06\xec\x74\x6c\xd7\x6e\xbf\x63\x9b\x36\xe7\x90\ +\xe4\x70\x13\xce\xb0\x23\x59\x1c\x20\x67\x50\x95\xb2\x5a\x73\xb1\ +\x66\xcd\x87\x64\x3c\x10\x3d\x3d\xa5\x28\x0f\x6b\x42\x56\x2d\xbf\ +\x52\x0c\xf3\xd8\xd8\xb1\xce\x10\x38\xf5\xa5\x7b\xf4\x5f\x3b\x29\ +\xd3\x8f\x3c\xf1\xbb\xd3\x41\x03\xf9\x3b\xca\xd5\x8a\x7e\xc7\xd6\ +\xc8\xa8\x8d\xc8\x50\x30\x64\xf8\xa7\x0f\x38\x04\xfc\x1d\x9c\x04\ +\xce\x04\x17\x82\xc6\xba\x53\x92\xc5\x9a\x8b\x93\xa9\x3d\x53\xec\ +\xfb\xf7\xa3\xbf\xf1\xed\x59\x8f\x12\x6a\x29\xe7\x92\x32\x1c\xa8\ +\xd9\x05\xf2\x02\xef\xd2\x76\x85\x56\x48\xeb\x32\x65\x1e\x27\xc5\ +\xc7\xd3\xca\x58\x5a\xae\x86\x0b\x29\x0e\x04\xce\x89\x78\xf6\xac\ +\xce\x0b\x6f\x6f\x52\x1d\x1e\x26\xb2\x1a\x1c\x8f\xd5\xa1\x15\x8e\ +\x27\xa3\x11\xd8\x4c\x7c\x03\x4f\xce\x9c\x31\xbe\xbb\x6f\xdf\x56\ +\xfa\xc6\x0c\xbe\x79\xb3\x34\x8c\x2d\x41\x8a\xe5\xc4\xbc\xf2\xf7\ +\xb7\xa6\xdf\x17\x12\x6b\xab\x55\xab\x85\x33\xdd\x53\x7a\x0e\x06\ +\xde\x39\x78\xb0\x95\x34\xc6\xbf\x09\x06\x83\x8d\xb2\x82\xf4\x58\ +\xe6\xc7\x79\xec\x67\x19\x0f\xfa\x0a\x2f\x19\x79\x33\x07\x68\xf7\ +\x62\x0b\x3c\x73\x66\x05\x6d\x25\xad\x0d\x0d\x03\xbe\x77\x2b\xc3\ +\x60\x30\x64\x2e\xe5\xa1\xc1\x83\x77\x51\x2b\x5f\xa9\x2a\x9c\x53\ +\x68\x01\x5b\xcd\xa3\xe0\x97\xc7\x27\x4e\x6c\x94\xed\x9f\xfe\x01\ +\x18\x0c\x5e\xf1\x3a\xc8\x80\x78\x09\x79\x6e\x33\xc7\xaa\xb7\x02\ +\xcc\x6f\x22\x84\x3a\x40\x4e\x8e\x15\x3c\x1f\xfe\x77\xa5\x08\xc0\ +\xcd\xf8\xef\x4c\x4a\x25\x39\x9a\xc1\x60\x68\x86\x0e\xe0\x50\xd9\ +\x21\xe3\x7a\x6f\x70\x7d\x8e\xc0\xf8\x47\xc4\xf3\xa8\x29\x7d\x71\ +\x2d\xc3\x32\xc0\x3b\x53\xc0\xd3\x44\xdc\x4f\x04\x73\xab\x4b\x4f\ +\xf4\xf4\xae\xc9\x73\xdf\x71\xf1\xa7\x60\x30\xd8\xf8\x9a\x5e\x5e\ +\xb5\x6a\x3f\xaa\xc8\xdf\xc9\xf6\x4d\x11\xe7\x4d\x4c\xe6\x68\x6f\ +\x45\x61\x64\x27\x64\x20\x36\x5e\x43\x9d\xea\x18\x3d\xdb\xda\xa4\ +\x89\x2b\xdd\xa3\xe4\xc4\xfa\xaf\x5b\x3b\x31\x18\xdc\x3d\xb4\x69\ +\x42\x4c\x8c\xf1\x91\x91\x23\xcf\x52\x5d\x9d\x34\x28\x4b\xed\xec\ +\x16\x68\x75\x5c\x8b\x0b\x0b\xb3\xa0\x8c\x16\x14\xc4\x7a\xca\xf8\ +\xde\x21\x5c\x13\xd6\x56\xaa\xf4\x9c\xe2\x79\x7f\xdf\x85\xcd\x60\ +\x70\x13\xc3\x5e\x6f\x03\x02\x2c\xb7\xb7\x6c\x79\x1d\xc5\x91\x4e\ +\x1a\x8d\xeb\x77\x83\x29\xaf\x6e\xde\xb4\x92\xa9\x49\x75\xc1\x9e\ +\xf6\xf5\xea\x3d\x50\x82\xea\x0f\x8e\x1c\xb1\xc7\x58\x1a\xb3\x52\ +\x18\x0c\x36\xbc\x52\x32\xdb\x61\x89\xe2\x58\x81\x7c\x00\xe9\xe9\ +\x7f\xbd\x77\xe0\xc0\x70\xa1\x01\x48\x7d\x9f\x22\x83\x43\x1a\xd2\ +\x0d\x2a\x1d\x12\xdf\x0d\x06\x83\x0d\x2f\xaf\x90\x40\x6e\xdf\x28\ +\x32\x2c\xd4\xd3\x05\x2a\xb5\x5c\xb8\xaf\x83\x2e\x32\xa1\x28\x98\ +\xfc\xf4\xfe\xe1\xc3\xd5\x64\x9c\xc6\x42\x94\xc3\xf8\x3a\xd0\x13\ +\xdb\xd0\x03\xb8\xb6\x13\x69\x07\x83\xc1\xf2\x01\x7b\xbb\x75\xbb\ +\xac\x64\xb2\x83\x21\x60\x3c\xdd\x1f\x1d\x3d\xfa\x34\x9e\xf7\xc0\ +\x7d\x45\xd9\x3b\x2d\x05\x5e\x4b\xa5\xee\x2b\x09\xec\x24\x74\x12\ +\x0c\x56\x5e\xd6\x51\x40\xe2\x3b\x66\xa8\x9b\xdb\x92\x9e\x5b\xb7\ +\x3a\x56\xe9\xd1\xe3\x54\x9e\x62\xc5\xa2\x30\x9c\x2b\x07\xca\x7a\ +\x3a\x58\x5a\xfa\xe0\x67\x4f\xd0\x06\xef\x15\x68\x3a\x6b\x96\xcb\ +\x92\xcf\x9f\xad\x26\xde\xba\x65\x9d\xa7\x78\xf1\x28\x55\xb6\x6c\ +\x2e\x30\xc4\xb3\xe0\x40\x91\x26\x30\x18\xbc\xd2\x35\x04\xc7\x3c\ +\x39\x7b\xd6\x16\x89\xcf\xea\x2a\x04\xb4\xee\x75\x90\xad\x9d\x12\ +\x6d\x8c\x8c\x82\xf1\x7c\x8e\x74\xaa\xd4\xf7\xdd\xb0\x61\x95\x56\ +\x9d\xd7\x12\x91\x66\x30\x18\x6c\x78\xd9\xd1\xa4\x7e\x3a\x55\x20\ +\x04\x5d\xbe\x3c\x5a\x00\x38\xcf\xc5\xa3\x93\x4c\x48\x5c\x5c\x5c\ +\x59\x21\x61\x53\xb1\x62\x77\x32\x34\x28\x56\xbd\x77\x19\x3a\xf4\ +\x9c\x97\xa9\xe9\x54\xf1\x7d\x60\x30\x38\x5b\x05\x6c\x0f\x76\x15\ +\xc0\xba\xaa\x55\x3d\xa4\xaa\xb0\x05\xae\x45\x41\x43\xd0\x9b\xc6\ +\xae\xd8\xd8\xec\x91\x55\xce\x24\x1d\xd0\x00\xcb\xdc\x7a\x29\xfb\ +\xb7\x00\x4c\xab\xe4\x37\x83\xc1\x78\x78\xe4\x48\x67\x65\x9b\x49\ +\x54\x7a\xda\x41\x4d\xec\x91\x94\x0b\xcf\x86\xb1\xe1\x8a\x7c\x1f\ +\xe9\xaa\xc8\xf7\x3e\x9a\x08\xd1\x53\x30\x18\xec\x34\xf9\xdb\x32\ +\x01\xb5\x2e\x6d\xdc\xe8\x3b\xfe\xe6\x4d\xcb\xce\x36\x36\x7b\x2b\ +\x77\xef\xee\xaa\x87\xa2\x57\x95\x9e\xde\x97\xae\x76\x76\xe7\xf0\ +\xca\xd9\x05\x2a\x55\x3e\x5c\xb7\x82\xaa\x6a\x90\xef\x5b\x1c\x1f\ +\xbf\xa6\xdb\x86\x0d\xbb\xf5\xf3\xe6\xfd\xa2\xa7\x52\x1d\x86\xf1\ +\xfd\x24\xb4\x40\x79\x9a\xb2\x75\x14\x83\xc1\x90\xc6\x56\x18\xfc\ +\x4c\xaa\xce\x88\xd3\x8d\x7e\x7b\xf7\x6e\x5f\xe7\x5f\x7f\x55\xab\ +\x44\xef\xed\xda\xd5\x87\x64\x03\x34\x5b\x3b\x41\x06\x3c\x9c\xae\ +\xe8\xfe\x73\x03\x67\xc0\xb1\x0f\x0e\x1f\x5e\x43\xf7\xd0\xe3\x77\ +\x4c\xc5\x90\x77\x82\x81\x1a\x43\x0c\x06\xe3\xe8\xef\xbf\x1b\xc3\ +\x80\xde\x6b\xc4\xe9\x52\xec\x2a\x57\xbe\x81\x66\x23\xcb\x14\x7d\ +\x7d\x13\x21\x3a\x2a\x71\xbb\xcb\x96\x96\x7b\xf1\x7e\x28\x19\xea\ +\xf2\x3c\x79\x76\x21\x21\xfa\x33\x52\xc9\xfc\xa5\x91\x95\x06\x3d\ +\x40\x4b\x30\x05\xe9\x63\xe7\x29\x0e\x28\x14\x30\x18\x82\x1d\x28\ +\xb5\xe2\x23\x22\x4c\x4e\xcf\x9c\x79\x04\x92\xde\x17\x5c\x87\x0d\ +\xdb\xf3\xe5\xcb\x97\xa5\x18\x6f\xa1\xb1\x5a\xe5\x46\x45\x42\x24\ +\x32\x53\x62\xdc\xa6\x4f\x1f\x97\x10\x1b\xbb\xe8\xf0\xf0\xe1\x27\ +\x51\x1e\xa4\x0e\x92\x1f\x1a\x34\x88\x0c\x4b\x8f\x94\xa0\xcd\x72\ +\xe4\x78\x40\x63\x44\xa8\x59\x39\x69\x95\x0a\x31\x18\x0c\x12\x9d\ +\x05\x7b\x80\xf3\xc1\xb9\x60\x0d\xa1\x05\xc8\xc1\x2d\xa7\x54\x30\ +\x29\x6c\xe4\x74\x6a\xda\x34\xd3\x37\x77\xee\xac\x41\x2e\xe6\xf5\ +\x60\x6f\xef\x55\x4a\x2f\x35\x84\x10\x76\xc9\x52\xa0\xcf\x52\xa5\ +\xf8\x10\xae\xe5\x45\xda\xc0\x60\x70\x1b\xae\xa7\x1e\x1e\xd6\xe8\ +\x2a\x7a\x93\xe2\x76\x64\x54\xb8\xbe\x7e\x79\xed\xda\x34\x92\x89\ +\x13\x00\x29\x0f\xc3\x83\xf9\x1e\x8a\xd0\xef\x61\x8c\x56\x8e\xad\ +\x5b\x5f\xa7\x6a\x04\x18\x5d\x24\xde\xff\x8e\x95\x8e\xc1\xe0\xde\ +\x77\x53\x70\xbe\x5b\x8e\x56\xca\x87\x1c\xdb\xb6\x3d\x14\x70\xfc\ +\xb8\x21\xc6\x72\x28\x7a\x98\x60\x8a\xcf\x9a\x35\x7b\x31\xd6\x05\ +\x1c\x49\xa5\x3f\x38\x27\xba\x84\x87\x86\x96\x13\xdf\x05\x06\x83\ +\x0d\xaf\x1c\xd8\x5d\x4a\xb3\xd7\x55\xce\x79\x60\x3c\x64\xd9\x03\ +\xa5\xc8\x51\x36\xf9\x6e\x75\x70\x02\x58\x4d\xa4\x0f\x18\x0c\xc6\ +\x5c\x21\xf2\x61\x3b\xf9\x19\x9d\x5c\x5f\x3e\x38\x7e\xbc\xbe\xc8\ +\x58\x30\x18\x8c\x13\x93\x26\x6d\x20\x99\x3e\x18\x1e\x85\x19\x1c\ +\xc0\x3e\x19\xd4\xb7\x9c\xc1\x99\x26\x8c\x1e\x9b\x36\x6d\x6c\xbf\ +\x72\xe5\xfe\xc2\x15\x2b\xbe\x43\xb9\x0f\x55\x98\x1f\x01\x57\x88\ +\x8c\x03\x83\xc1\x71\x3d\x70\x41\x74\x68\xe8\x8a\x9b\xdb\xb7\x6f\ +\x8b\xfd\xf0\x21\xdd\xbb\x81\x32\x18\x2a\x50\x82\x21\x63\x72\xe5\ +\xc1\x2a\x60\x14\x56\xbb\xab\xe2\xc7\x00\x83\xc1\x3d\xd8\x32\xe1\ +\x0b\x8d\xc1\x60\x50\x20\x1d\x41\xf3\x27\x30\x3a\x3f\x30\x23\x45\ +\x6a\x19\x0c\x06\x79\x38\x91\x46\xf6\x1a\xfc\xb4\xad\x49\x93\x9f\ +\x44\xc6\x82\xc1\x60\xbc\xbd\x7f\x7f\xe2\x2b\x3f\x3f\x92\x61\x6f\ +\x2b\x24\x18\x8c\x0c\x92\x08\x67\x94\xa8\x51\xc3\x19\x97\xfa\xe0\ +\x75\x91\xfe\x60\x30\x18\x24\x54\x0b\xda\x64\x42\xc2\x33\x83\x03\ +\xdf\x8c\x14\x21\x16\xe2\x32\x53\x2f\x07\x54\x1a\x32\x16\x0c\x06\ +\xc3\x7d\xc1\x82\xa6\xa8\x44\xb8\x06\x09\x87\x8c\xd6\xc2\x64\xf0\ +\x19\x8e\xd1\x61\xe5\xca\x7b\xb8\xec\x01\xa3\xc5\x0f\x01\x06\x83\ +\xcf\x81\x27\xb1\x3c\x5e\xc4\xb5\xa1\xf8\xd7\x81\x41\xba\x8d\x13\ +\x48\x1a\x4e\xe8\x04\x18\x79\x4b\x96\xf4\x55\x09\xd1\x4a\xa8\x54\ +\x9e\xd4\x09\xc8\x58\x08\x23\xf1\xef\x01\x43\x0a\xa3\x3e\xc4\xb5\ +\x8b\xc8\x72\x30\xd0\xff\x6e\x23\xcd\x89\xa6\xb8\x2d\xb8\xef\x5f\ +\x92\xb1\xc2\x38\x39\x75\xea\x09\x48\x85\x47\xcb\x09\x3e\xb9\x58\ +\x88\xca\x22\x4b\xc0\xa0\x5e\x77\x30\xae\x38\x8b\x5c\xb9\x3e\x9e\ +\x9d\x3d\xfb\x08\xfa\x22\x38\x6c\xaa\x53\xe7\xa6\x54\x8d\x3e\x29\ +\xfe\x15\xe0\x0c\xf9\x4e\x90\x17\x78\x0e\x61\x9d\xcf\x10\xce\x49\ +\xc6\x84\x93\xf1\x15\x9d\x29\x44\x2e\x91\xa9\x60\xc8\xde\x07\x4a\ +\xff\xbb\xd9\x60\x8f\xcf\x9f\x3f\x4f\x75\x68\xda\xf4\x16\x8d\x9b\ +\xe5\xca\xd5\x48\xfc\xf0\xe0\x49\xee\x07\xa6\xec\xeb\xd1\xc3\xfb\ +\xa9\xbb\xfb\xfa\xd3\x33\x66\x1c\x40\xbb\xdf\x3d\xd4\xe8\x10\x1c\ +\x37\x50\x08\x3d\x91\xe1\x60\x98\x08\xd1\x5c\x11\xb4\x75\x1e\x38\ +\xf0\x38\x35\x2e\x11\x12\x07\xfa\xf5\xb3\xa5\xf1\x3d\x5d\xba\x18\ +\xcb\x39\xdb\x8a\xb9\xb1\xc3\xb5\xb0\xf8\xe1\xc0\x06\xf7\xdc\x3c\ +\x57\xae\xa8\xe8\x97\x2f\xcd\xa9\xbf\x1a\xf8\xfb\xc9\xc9\x93\x47\ +\x91\xce\x87\xdc\x66\xfa\x83\xad\x44\x46\x82\xe7\x80\x9c\x57\x37\ +\x20\x46\x1b\xbf\xb1\x56\xad\x47\xe8\xe6\x9a\x8c\xb1\x6e\x78\xa4\ +\xc2\xd5\x00\x73\x71\x90\xe6\xe2\xfa\xe6\xcd\x73\x05\xb0\x4c\x5f\ +\x7f\xaf\x9c\x9b\x47\x3f\x60\x09\x10\x3b\x4d\xce\xcc\x9a\x75\x14\ +\x86\xd6\x41\x48\x58\x95\x2b\x37\x8b\xc6\x37\xd6\xac\xf9\x18\x7f\ +\x04\xb1\x52\x18\xd5\x29\x7d\x3d\x66\x0c\xf2\x0e\xc3\xd0\xc6\x80\ +\x0b\x69\x1e\x0e\x8f\x18\x71\x2e\xe6\xed\x5b\x63\x9b\x72\xe5\x42\ +\xa5\x41\xbd\xc7\xb3\x60\xd9\x11\x88\x54\xc5\xfa\x0b\x00\x5b\xcc\ +\x4d\x34\x76\x64\xd4\xa8\xfd\x18\xa3\x36\x5d\x4d\xc0\x36\x42\x03\ +\xd2\x58\xe7\x80\x1d\x84\xce\x80\x91\x2d\x5f\xe9\xd2\x21\x1d\x56\ +\xad\xf2\xc6\xcd\x65\xa5\x96\x2b\xe6\xe5\xcb\xf9\x06\x05\x0b\x86\ +\xfd\xee\xe3\xb3\x7f\xd2\xdd\xbb\x1b\x0d\x5b\xb6\xf4\xcb\xa6\x52\ +\x0d\x40\x94\xfc\xe1\x12\x7a\x25\x5d\xc0\x28\x25\x84\x91\x4a\x88\ +\x8d\xe0\x0a\xbd\x9c\x39\x13\xda\x9a\x9b\x5f\xc9\x57\xa2\xc4\xfa\ +\x81\xce\xce\x96\x95\x3a\x75\xf2\xd1\xcf\x9f\x3f\x29\x67\xee\xdc\ +\x02\x3f\x9f\x1f\xe9\xe9\x79\x48\x08\x11\xb0\x50\x88\x12\x21\x57\ +\xaf\x0e\x45\xf8\xe0\x4d\xf7\xcd\x9b\xef\x60\x2c\x36\x45\x08\x73\ +\x5c\xbd\x60\x5c\x47\xc9\xf1\x22\x57\x4d\x3a\x83\x4f\x03\xdd\x31\ +\x67\xdb\x84\x6e\x80\xf1\xcc\xd3\x73\x1d\x56\xb7\x7a\x42\x02\x93\ +\x63\x4d\xab\x1b\xf4\xfa\xef\x5f\x5d\xb7\x6e\x10\xd4\x88\xd7\xe3\ +\xf9\x28\xe7\x41\x83\x3c\x69\x1c\x0d\x30\xec\x44\xba\x81\xe1\xb7\ +\x65\xcb\x12\x5b\x23\xa3\x17\xb4\x62\xc1\x3b\x19\x02\x83\x2a\x86\ +\xf9\xc8\x05\xfe\x0e\x9a\x4a\x2e\x06\x5b\x49\x43\x5a\x07\xa6\xdc\ +\xd8\xbc\xd9\x11\x63\x0d\x04\xf0\xe8\xf8\xf1\x16\xe8\x22\x14\x47\ +\xca\xd2\x1b\xaa\x57\x37\x12\x12\x3b\xdb\xb7\xdf\x2d\x3b\x0a\xd9\ +\xe2\xdd\x9c\x42\x27\xc0\x5e\xca\x61\xa0\x4a\x00\x08\x09\x54\x85\ +\xc1\x25\x22\x4c\xf0\x49\x23\x06\x94\x88\x43\x7c\x01\xe8\xf3\x07\ +\xae\x2a\x5c\x38\x82\x1a\x68\xe0\xfd\x3c\x22\xbd\xc0\x5e\xe2\x4a\ +\xf0\x44\xce\xf2\x30\x36\x76\xd9\x58\xbb\xf6\x15\xf7\xf9\xf3\x0d\ +\x35\x9e\x15\x96\xe2\xb5\xb9\x85\x04\xce\x73\xaf\xd1\x66\xeb\x35\ +\xc6\x26\x2a\xf3\x86\x79\x19\x43\xf3\xe5\x32\x64\x88\x07\xc6\xba\ +\x09\x80\x0c\x17\xef\x46\x59\x95\x2e\xfd\x26\x29\x21\x61\x9e\x74\ +\xc2\xe8\x02\xb8\x8d\x2f\x75\x8f\xa1\xc0\x37\x78\x92\x9c\x25\x8f\ +\xdd\xdc\x36\x3a\x0d\x18\xe0\x45\x93\xb8\xbb\x4b\x97\x4b\xa4\x52\ +\xec\x3c\x64\xc8\xef\xcf\x3c\x3c\x68\x35\x6c\x29\xb7\x2c\x9d\x64\ +\xc3\x0b\x6f\xd0\x01\x6c\x21\xbe\x17\x3c\x07\x39\xc0\x36\xa0\x31\ +\xd8\x4c\xfc\x09\x56\xe4\xcf\xff\x80\x9a\x93\xb8\x0e\x1d\xda\x57\ +\xce\x43\x5e\x30\x14\xe3\x61\xf2\xcb\x30\x9f\x1c\xdf\x0c\xa6\xec\ +\xea\xd4\xc9\xd7\x75\xc4\x88\x09\x3a\xe4\x6d\x66\xc0\x70\x4c\x94\ +\xcc\x86\xad\x8d\x1a\xdd\xc6\xa4\x8d\xd8\xdf\xab\xd7\x62\x7c\x3b\ +\xbe\x96\xde\xcb\xc2\x60\x79\x70\x20\xa8\xa7\x6c\x6b\x10\xb7\xfb\ +\x88\x6d\x50\x20\x8c\x34\x49\xae\x86\xe3\xc4\x77\x83\xf1\x77\xb6\ +\x7d\x37\xec\xed\x47\x58\xe4\xc9\x13\x2b\xe7\xeb\x29\x98\x00\xa6\ +\x78\x99\x99\x39\xd1\x97\xa1\xdc\xa9\xd4\xc5\x98\xe2\x65\x56\x18\ +\x08\xd6\x11\x59\x0f\xc6\x23\x2f\xaf\xa2\x07\xfb\xf5\x3b\x8b\xe6\ +\xf3\x89\xe4\x91\x5c\x9e\x37\xef\xfe\x7d\xdd\xbb\x57\xc4\x04\x2e\ +\xf1\xdd\xb0\x61\x34\x0c\xe9\x77\x0d\xaf\xe6\x78\x30\x65\x75\xd1\ +\xa2\xcf\x43\xaf\x5f\xb7\xa1\x33\xc6\x87\x27\x4f\x56\xaf\xad\x58\ +\x31\x48\x6e\x43\xf7\x60\xc2\x6b\x8a\x8c\x02\x1b\x65\xa1\xe7\x5e\ +\x5e\xcb\xb1\x03\x39\x8b\x34\xb0\x53\x34\x17\x38\xbf\xc5\x24\x44\ +\x47\x53\xbf\x84\xec\xf2\x1c\xee\x45\xf3\xb8\xab\x43\x07\x5f\x74\ +\x7c\xdd\x7f\xa0\x4f\x9f\xf3\x50\x96\x4e\xa6\x2f\x48\x8c\x97\x14\ +\x12\x5a\x73\xba\x28\x13\x93\x1d\x58\x8f\x11\xec\x4d\x1a\x1c\xb4\ +\xc2\xc9\x30\x40\xb4\xb5\xa1\xe1\x4a\x5c\xef\xd3\xb9\x41\x00\x34\ +\x21\x78\x16\x81\x16\xbe\x21\x71\xe1\xe1\x16\xf8\x9d\x41\x60\x19\ +\xb0\x72\x54\x68\xe8\x94\x65\x39\x73\x26\xaa\x5b\xfb\x16\x2c\x68\ +\x2c\x80\x3f\x84\xc8\x98\x73\x03\xcf\x57\x71\x70\x54\xa8\x9f\x9f\ +\xe9\x96\x86\x0d\x6f\x43\xac\x28\xe9\xd8\xf8\xf1\x03\x31\x37\xcd\ +\x30\x5f\x43\x69\x0e\xec\xeb\xd6\x7d\x80\x77\x4c\xe4\xae\x64\x1c\ +\xfa\xe2\x1d\xa1\x71\xcb\x62\xc5\xd6\x0a\x2d\xc0\x10\xb7\xcb\x55\ +\xf0\x05\x7e\x7f\x90\xc8\x34\xf0\x44\x96\x05\xc7\xdd\xda\xb5\xcb\ +\x01\xdb\xc9\x60\x65\x3b\x02\xed\xfd\x13\x18\xaf\x88\xfb\x3e\xb2\ +\x43\xa8\x33\xc5\xed\xb4\xb7\x43\x58\x19\x3f\x2c\xcf\x97\x2f\x26\ +\xfa\xd5\xab\xe9\x78\x2f\xa7\x4c\x8a\xde\x40\x67\x44\x91\x11\xe0\ +\xf9\x52\x81\xa3\x3e\x45\x46\x9a\x63\x25\x9b\xaa\xb9\x85\xdc\xdd\ +\xb9\xf3\x55\x3c\x33\x12\x12\x8f\x4f\x9e\xfc\x45\xc6\xf3\xae\x0a\ +\x2d\x24\x25\x25\x35\x42\x67\xd8\x73\xf4\x1c\x0e\xb3\x0b\x22\xd3\ +\xc1\x93\x58\x17\x9e\xb3\x39\x94\x40\x8b\x6d\x4b\x20\xbc\x5c\xf3\ +\x31\x66\x80\x09\x99\x01\xa6\x3c\x39\x7b\x76\x29\xbd\x27\xb4\x80\ +\x6a\xe7\xb5\x64\xac\x78\xd6\x4e\x06\x5d\x95\x8c\xf7\x70\x5c\xa7\ +\x82\x19\x53\xf0\xca\xf3\x55\x03\x2c\x74\x64\xf4\xe8\x0d\xd8\x5e\ +\x46\x91\x97\x19\xd9\x43\xf1\xe4\x75\xd6\x48\x1d\xeb\x49\x73\x81\ +\xad\xa8\x67\x2a\x73\x9e\x0d\xe7\x75\x6f\x6a\x68\x02\xc3\xdc\x80\ +\xfb\x12\x22\xf3\xc1\x07\x78\xb0\xbd\x8c\x01\x35\x14\x00\xb6\x23\ +\x03\x69\xd2\xb6\x35\x6b\xb6\xfd\x1b\xbf\xd3\x08\x1c\xbf\xfe\xe7\ +\x9f\x4b\xd3\x96\x14\xee\xeb\x90\x6b\xeb\xd7\xef\x82\xdb\xfa\x8d\ +\x34\xbe\x00\x6a\x74\x2f\x32\x0a\x3c\x67\x4d\x3f\xbe\x79\xb3\x8c\ +\x72\x62\x61\x78\xb1\x30\xa0\x77\x32\x21\x7a\x03\x98\x84\x94\xb0\ +\xd8\x60\x1f\x9f\xd5\x64\x60\x42\x03\x34\x27\x6a\x8f\x66\xfb\xf6\ +\xb4\x2a\x0e\x17\x59\x0a\x9e\xc4\x82\xca\x6a\xb6\x65\xfc\xf8\x1c\ +\x96\x25\x4b\xbe\x93\x49\xb6\x23\xc4\x37\xb0\x48\x88\x32\x70\x5d\ +\x87\xde\x73\x76\xde\x92\x9c\x9c\xdc\xcf\xba\x5c\xb9\x60\x72\xc8\ +\x60\xc2\x63\xe4\x8a\x77\x0c\xd7\x0c\x12\x48\x65\xa7\x0a\x58\xf7\ +\xd6\xce\x9d\x76\xab\x8b\x15\x7b\xad\xec\x32\xb0\xd5\x0f\x92\xbb\ +\x8f\x3e\x5a\x0e\x93\xec\x98\x8f\x7b\x58\x15\x3f\x86\x3f\x7d\xba\ +\x02\xcf\x8b\xfd\xa9\x7c\x7b\xe6\x82\xe1\xe7\xe0\x30\x77\x65\xc1\ +\x82\x91\x14\x06\xc0\x04\x5c\x00\x17\xc8\xec\x14\x03\xad\x89\x9f\ +\x00\x8e\xc5\x36\x65\xb8\x12\x94\x8d\x08\x0a\x5a\x45\x8d\x0f\xe9\ +\x1e\x71\xa3\xa1\x22\xa3\xc1\x6d\x96\x17\x04\x5d\xbc\x68\xf7\xe2\ +\xd2\xa5\xb5\x5f\xbe\x7c\x59\x2a\x83\xe5\x06\x5a\x21\xa1\x29\x34\ +\x1f\xc7\x27\x4e\x74\xc3\xb3\xae\xe2\x4f\x20\xe7\xfa\x84\xb1\x10\ +\x15\x44\xe6\x81\xdd\xd2\xef\xee\xdd\x5b\xea\xd8\xa6\xcd\x0d\x64\ +\xb5\xab\x33\x52\x68\xeb\x82\x42\xc9\x5a\x5a\xef\x15\xc1\x19\xb0\ +\xb8\x66\x50\xd6\xd3\xc4\xa4\x39\x3c\x6a\x89\x08\x21\xbc\xc0\x19\ +\x31\xe3\x63\x76\x3c\x57\xb9\xc1\xc6\x60\x3b\xb0\x36\x98\x8d\x1c\ +\x5f\xb2\x82\xfc\x27\xb0\x30\xf8\x61\x55\xd1\xa2\xaf\x92\xe2\xe3\ +\x17\x50\x4a\x99\xd0\x86\xac\x58\x90\xde\x4c\x47\x30\x79\x6d\x85\ +\x0a\x99\x1c\xcf\xe3\x89\x2c\x00\x8e\xf9\x14\x1d\x6d\x1e\xe2\xe3\ +\x63\x4b\x57\x3a\xef\xa5\xb2\x05\xb1\x00\x53\x2e\x2c\x5b\x76\x90\ +\x82\xb2\xb8\x9f\x48\xf1\xa0\x07\xae\xae\xf6\xb8\xcf\x82\x58\x1d\ +\x83\x76\x1c\xb2\xf4\x2a\x01\x86\xa7\xae\x26\xa7\x73\x36\x9d\xbf\ +\xbf\x91\x14\x61\x2d\xab\x16\x26\xc5\x45\x45\x35\x7a\xe1\xed\xbd\ +\x16\xef\xf6\x13\x59\x06\x6e\x52\xdf\x0c\xfc\x05\x34\xd0\x38\x80\ +\x0f\x03\x2b\x62\x92\x3e\xe1\xdb\xf0\x09\x9e\x4d\x07\xb3\x43\x32\ +\xa0\x20\xbc\x60\x34\x61\xbf\x8b\x2c\x03\x6f\x35\x03\x4f\x9d\xda\ +\x60\x57\xb9\xf2\x63\x32\x36\xaa\xbd\x43\x0c\x6f\x37\xe6\x26\x55\ +\x0f\x32\xe2\x79\xcd\xb1\x43\x09\x91\x67\xc1\xdb\xaf\x6e\xdf\x6e\ +\x41\x25\x41\x42\x67\xc0\x69\x62\x07\xe4\xe4\xc4\x62\xfb\xf1\xe5\ +\xe1\xd1\xa3\x9b\x30\x41\xd5\x85\x84\xdc\xde\x14\x14\x59\x09\x36\ +\xba\xca\xe0\x1f\x97\x57\xad\xda\x8f\x6a\x90\x0f\xd2\x91\x75\x59\ +\x5b\xa8\x48\x49\xa0\x86\x03\x46\x9d\xca\xb7\xae\x4a\x15\x1f\x1d\ +\x9b\x3b\x46\x64\x68\x68\x3d\x2a\xa4\xa4\xea\x65\xf2\x66\x52\xa0\ +\x75\xae\x10\xf9\x84\x2e\x82\xb3\x8b\x9a\x25\xc4\xc4\x18\x1f\x19\ +\x39\xf2\x2c\x4a\x84\x6e\xb8\x0e\x1b\x96\x5a\x4f\x04\x15\xb6\xa1\ +\x97\xe9\xec\x1d\x7a\xed\x1a\xa5\xf2\x19\x0a\x9d\x03\x67\xbe\xf7\ +\x7c\x7b\xf7\xae\xe5\xf6\x16\x2d\x6e\xd2\x2a\x87\x04\xe7\x81\x42\ +\x57\xc1\xf3\x95\x07\xec\x05\x2e\x01\x1b\xcb\x5d\xca\x7a\xd0\x44\ +\xa6\xf2\xfd\x2a\x03\xe6\x5e\xb2\xe2\x5c\x47\xc1\x13\x59\x0a\xfc\ +\x3d\x32\x24\x64\x25\xae\x3a\x6e\x70\x0c\xa5\xac\x87\x80\xd5\xec\ +\x18\x19\x99\x94\x77\x08\x5d\x9e\x27\x4f\x78\xec\xfb\xf7\xa6\xe4\ +\x2c\x4b\xc5\x31\x56\x16\xef\xcd\x05\xcd\xa8\x64\x2b\xeb\xcb\x80\ +\x78\x22\xab\x83\x65\xc5\x8f\x04\x9e\xb3\xf6\xe7\x8d\x8d\x0f\xa1\ +\x0c\x48\x7d\xbe\x43\xc6\xd0\x5b\xaf\xa5\x4b\xc7\xa5\xa2\x34\xd6\ +\x9f\x0a\x94\xb5\x84\x6b\x6f\xca\x8a\x84\x34\x80\xc1\xe0\xf3\x5d\ +\x6b\x5a\xd5\x9c\x06\x0e\xf4\xc2\x79\x3c\x49\x26\x3a\x2c\xd0\x58\ +\xd9\xca\x83\xf1\x78\x16\x85\xc4\xe9\xdd\x14\x5a\x80\x32\xc0\x79\ +\x0a\x39\xe0\x18\x11\x84\xf7\x4d\xd3\xde\x27\x8f\xc1\xe0\x78\x6b\ +\x7f\x72\x96\x6c\x6d\xdc\xf8\x26\x92\x1b\x36\x0b\x09\x25\x39\x5d\ +\xa6\x8b\x4d\x05\xbb\x80\x23\x2e\x98\x99\x1d\xa0\x71\xa2\x4d\xa5\ +\x4a\xf5\x45\x9a\xc1\x60\xb0\xe1\x19\x82\xe3\x41\x13\x30\xbf\x00\ +\x10\xbf\x5b\x4a\x46\x85\x62\xd8\xb9\x9a\x7a\x29\xde\xd6\xd6\x6d\ +\x69\xdc\xbe\x5e\x3d\xaa\xc7\xeb\x2e\xbe\x1b\x0c\x06\x97\x01\xe5\ +\x15\x12\x0e\xcd\x9a\x91\x61\x7d\xc5\x39\xef\x89\xe6\x99\x8d\x9c\ +\x26\x07\xfb\xf7\xdf\x4d\x2a\x00\x24\xcb\x21\xd2\x07\x0c\x06\x97\ +\x6f\x41\x1e\xdf\x4b\x36\x1a\xa1\x4a\x71\x52\x0e\xcb\x3b\x5b\x08\ +\x0a\x33\x74\x02\xd3\xb9\x1b\x13\x83\xc1\x46\xd7\xdc\xd3\xd4\xd4\ +\x79\x65\xa1\x42\xef\x34\xbc\x94\x89\x24\x56\x2b\x32\x04\x0c\x06\ +\x1b\x5d\x23\x54\x7e\x98\xdc\xde\xbb\x77\xdb\xce\x76\xed\x4e\x9c\ +\x9a\x3e\x7d\xf5\xa7\xa8\xa8\x8a\xdf\x21\xb9\x9f\x1b\x1c\x0d\x5a\ +\xc0\x68\x67\xe3\x5a\x51\xfc\x0b\xa1\x12\xff\x10\x0c\x86\x3c\xdb\ +\xd5\x06\xeb\x80\x5f\xc1\xf3\x2a\x95\xea\x79\x1a\x3a\x07\x75\x56\ +\x09\xb1\x03\x2c\xad\x31\xfc\x25\x45\x88\x71\xcb\x84\x70\x14\xe9\ +\x06\x06\x83\x9b\xc9\xd4\xc3\x8a\xf6\x11\xb1\xbb\xc4\x13\x13\x27\ +\x1e\xa4\xcc\x24\x2a\xdf\x42\x91\xf3\x07\xa9\x2c\xd0\x4c\xfc\x6b\ +\x90\xc5\x25\xf3\x0c\x06\x56\x31\x13\x3d\x3d\x3d\xd1\x6b\xc7\x8e\ +\xbd\x3d\xec\xed\xfd\x0a\x96\x2b\x77\xaa\x7a\xbf\x7e\x7b\xda\x9a\ +\x99\xed\x15\x2a\x95\xc8\x5d\xb4\xa8\x89\x90\xf8\x67\x69\x63\x0c\ +\x06\xaf\x6e\xd9\x51\x89\x10\x4d\x82\xb5\xd8\x96\x4e\x02\x0b\x6a\ +\x2a\x06\xd8\x18\x19\x05\x5b\x96\x28\x11\x8a\x71\x15\xe9\x65\x82\ +\x91\xf8\x9d\xc5\xdf\x21\x58\xcb\x60\x30\x16\x0b\xf1\x33\x79\x36\ +\xd1\x00\xf4\xb8\x12\xe3\xd3\x04\x74\x4e\x9f\x93\xdc\xbe\xba\x07\ +\x9e\x9e\x5e\x37\x7a\x57\xf2\x79\x1a\x45\xa8\x18\x0c\x06\x29\x73\ +\x43\xad\x3b\x6e\x63\x9d\x3a\x57\x53\x71\xa4\xa8\x85\x6b\xd1\xe3\ +\xe2\x12\x55\x9e\x40\xf5\x6d\x0b\xdd\xbb\xfc\xf6\x9b\x07\x8c\x30\ +\xd0\xa1\x65\x4b\x6a\xdf\xa5\x5a\x44\x6d\xf6\xfe\x1e\x18\x0c\x06\ +\x8c\xed\x92\x5c\xb5\x7a\x69\x18\x5b\x77\xd2\x35\x25\x59\x45\x28\ +\x8e\x59\xed\xee\xdb\xb7\x38\x82\xeb\xb1\xb6\x15\x2a\xbc\xa0\x4a\ +\x75\xc8\xf9\x59\xe0\xfa\x2b\xde\x99\x09\x7e\x01\xb7\x50\x7b\x2e\ +\x91\x3a\x18\x0c\x06\x29\x81\x81\x63\xa1\x97\x72\x53\x76\x62\x4a\ +\xc4\xf5\x0c\x8c\xc7\x1d\xd7\xcf\xa8\xc9\x8b\x86\xb7\x92\xe4\x39\ +\xfa\x61\xec\x0f\x7a\x87\x7a\xe8\xd9\xff\xfc\xf3\x3c\x3c\x4f\x40\ +\x2e\xe7\xa6\x3d\x9d\x3b\x97\xb2\xab\x54\xc9\x4f\x51\xf7\x96\x4a\ +\xd3\x0c\x06\x23\x95\x2d\x63\x6f\xe5\x4c\x66\x5b\xb1\x62\x30\xba\ +\x37\x79\xa0\x23\xd3\xb5\xe5\xf9\xf3\x5f\xd9\xdd\xa9\xd3\x4e\xd2\ +\xd2\x24\x5d\xd3\xa0\xa0\x20\x03\xea\x51\x01\x25\xe9\x8f\x7b\xba\ +\x76\x3d\x43\xa1\x02\xd9\xbd\xc9\xef\xd5\xab\x57\xb9\xd1\x91\xd7\ +\x0f\xab\xdf\x57\x04\xdd\x3d\xce\x2f\x5b\x56\x97\x85\x6b\xb5\xc1\ +\x60\x48\x17\x3f\x74\x4a\xb7\x6e\xaa\x5b\xf7\x21\x3c\x95\x9f\xb1\ +\xd2\xbd\x7d\x72\xfa\xb4\xad\x6c\xb1\x3c\x17\xec\x23\xfb\x59\x74\ +\x00\x53\xa8\x43\x10\x5d\x91\x46\xf6\x42\x9e\xed\x2e\xa3\x30\x76\ +\xb1\xfa\xe7\x3e\x7d\xbc\x64\x33\xcb\x56\x1a\xc6\x56\x87\x0c\x95\ +\x82\xea\xb8\x65\x30\x18\x54\xe4\x0a\xce\x7a\x70\xe4\x88\x3d\x35\ +\x21\xa1\xfe\x07\xe8\x53\xfe\x02\xdb\xc5\xf6\x1a\x2a\x70\x47\x94\ +\x95\x10\x35\x79\xde\x67\xe7\xcc\x51\xdf\x63\x3b\x79\x99\xde\xb7\ +\x29\x57\xee\x21\x9a\xcd\x98\x90\xfc\x9f\xd2\x52\x4d\xfe\xde\x50\ +\x18\xf2\x27\xcb\xe2\xc5\x8d\x05\xc0\x60\x30\x64\xe7\x1e\xb0\xda\ +\x33\x77\xf7\x55\x68\x02\xea\x61\xf7\xd3\x4f\x67\x4e\xcf\x99\xd3\ +\x41\x39\xe7\xc1\x68\xde\x6a\x88\x18\x2d\xc1\xf6\x73\x9f\xd4\xd3\ +\xa4\x5e\x15\x11\x10\xab\x5a\x83\xf1\x06\xf2\xfd\x0e\x52\xe0\x76\ +\xe3\x91\x09\x13\xca\xbf\xba\x71\x63\x4d\x42\x6c\xec\x7c\xd9\xa8\ +\x92\xc1\x60\x68\x06\xba\xc1\x71\xa0\x09\xd8\x5b\x48\xbc\xb9\x7b\ +\x77\xa0\x8f\xb5\xf5\x5e\xb9\x65\xac\x0a\x49\x87\xab\xd2\xc9\xf2\ +\xe5\xba\xbd\xfd\x4e\x4d\x15\x68\x8c\xe7\x47\x13\x51\xc5\xeb\x19\ +\xb1\xb3\x63\xc7\xbe\x7f\xa1\xf0\xcd\x60\xb0\x9e\x4a\x2a\x86\x38\ +\x00\x2c\x47\x4e\x10\xac\x78\xf1\x64\x50\x87\x06\x0d\x3a\x8f\xb1\ +\x29\xda\x7d\xd1\xd1\x9c\x92\x3c\x9f\x51\xd8\xa2\x46\x3f\x74\x73\ +\xab\x2d\xbe\x1f\x0c\x06\xe3\xf8\xf8\xf1\x0b\xd0\xf8\xf3\xc6\xe7\ +\xa4\x24\xe3\xd4\x5a\x6b\x99\x66\xcb\x36\x8f\x0c\xf2\xcc\xac\x59\ +\x47\x65\x97\x5e\x9d\xc2\x0f\xb5\xb7\x65\x30\x7a\x6e\xd9\xe2\x86\ +\x4b\x0a\x78\x06\x25\x40\x61\x94\x63\xa9\x12\xa2\x2b\xee\x97\x26\ +\x61\x81\x4b\xf9\xfa\xd5\x38\x1f\x1a\x81\x76\x58\xb5\xca\x1b\x63\ +\x97\xfe\x66\x4c\x70\x16\x2e\xc5\xc1\x15\x66\x42\xc4\x68\x3c\x62\ +\x30\x18\x9a\xa2\x45\xd8\x62\x8e\xa3\x40\x39\x18\x0f\xe3\xbb\x85\ +\xeb\x57\xf4\x42\x20\x25\xb1\x7a\xda\xb5\x9f\x32\xf6\x77\x14\xef\ +\x9d\xc7\x75\x89\xa2\xc5\x02\xcf\xe8\x7a\x79\xee\x0b\x01\x0d\xc4\ +\x37\xc1\x60\xb0\xf1\x95\xa5\xb0\x02\xd2\xbe\x9e\x92\xd1\x50\xa7\ +\xdd\x93\x93\x26\x6d\x37\x35\x35\xcd\xa6\xd5\x64\xc6\x44\x3a\x5b\ +\x3e\x49\x8d\xcd\x14\x30\x10\x2c\x8a\x98\xde\x4c\xba\xdf\xd1\xaa\ +\x95\xfb\x5f\xf7\x37\x67\x30\xd8\xe8\xaa\x81\xd3\xbd\xcc\xcc\x9c\ +\x56\x15\x2a\x14\x41\xc6\x23\x57\xb1\x9c\x02\xa0\x8e\xad\xb4\xf2\ +\xa1\xd4\xe7\xc9\x2b\x3f\x3f\xeb\x8f\xef\xde\x2d\xa7\x9e\x85\x14\ +\x70\xc7\xea\x76\x1d\xef\x3e\x31\xcf\x95\x2b\x06\xc5\xaf\x16\xe4\ +\xa4\x11\x7f\x09\x06\x83\x8d\x2e\x3b\xd8\x92\x3a\xed\x3a\x0f\x1e\ +\xec\x81\xd6\xd6\xbe\xe8\x0a\x54\x50\x9e\xd1\x26\x83\x29\x90\x6b\ +\x77\xa2\x3e\x17\x60\x0d\xb0\xed\xe1\xe1\xc3\x4f\xd3\x38\xd1\x6d\ +\xda\x34\x2a\x11\xea\x24\xd2\x06\x06\x83\x9b\x92\x80\x7d\x41\x53\ +\xb0\xbe\x00\xb0\xcd\x1c\x2b\xeb\xee\xb6\x08\x0d\x6c\xfd\xe5\x97\ +\xc5\x34\x4e\x35\x77\xc8\x56\x99\x27\xcf\x86\xff\x04\x0c\x06\x77\ +\x03\x5a\x5b\xa3\x86\x21\x9d\xed\xc0\x8f\x8b\x85\xa8\x2b\x00\x2a\ +\xe7\xc1\x56\xf2\x22\x19\x9c\xdf\xd6\xad\x3b\xc8\x38\xa9\x8f\x21\ +\xee\x17\x81\xe7\xf0\xcc\x0d\xd7\x51\x22\xed\x60\x30\x18\x88\xcb\ +\xed\x44\x02\x74\xb2\x3c\xdf\x85\x11\xe9\xe7\xcd\xf5\xeb\x07\xc0\ +\xd8\x26\xac\x29\x51\x22\x0f\xee\x7d\x69\x0c\x67\xbb\x58\x0d\x9d\ +\x4d\x63\x16\x11\x4a\x23\x18\x8c\xce\xd6\xd6\x2b\x87\x9c\x38\x61\ +\x5f\x67\xd8\xb0\x93\x45\x2a\x55\x7a\xa4\x12\xa2\x88\x00\x5a\x19\ +\x1b\x5f\x26\x7b\x84\x23\x65\x2a\xae\xbf\x54\xea\xd4\xe9\xc2\xc2\ +\x8f\x1f\x6d\x66\x85\x86\xae\x2c\xdd\xa0\x41\x00\xde\x33\x87\xe1\ +\x79\x52\x0f\x3c\xe9\x84\xf9\x9b\x60\x30\x78\x9b\x59\x01\x1c\x1e\ +\x15\x1a\xba\x84\x9a\x8d\xa8\xcf\x6f\x65\xcb\xde\x16\x00\xc2\x05\ +\x17\xb1\xb2\x7d\xc1\x59\x8e\x3a\xc1\x36\x03\xeb\x44\x04\x07\x8f\ +\xa0\xad\xa8\xc6\x6a\x77\x5a\x7c\x17\x18\x0c\x36\xbe\x01\xfe\xdb\ +\xb7\x6f\xbf\x7b\xe0\x80\x39\x39\x4b\x90\x7f\xe9\x8d\xea\x83\x84\ +\x97\xbe\xbe\xed\x84\xc4\x86\xd6\xad\xf3\x52\x38\x81\x6a\xf1\x8e\ +\x8d\x1d\x7b\xea\xf8\x84\x09\xeb\x28\x77\x93\x53\xbb\xd2\x0e\x06\ +\xc3\xf5\xe7\xd1\xa3\x5f\xe0\x5a\x09\x14\xc5\x6a\xd5\xf2\x0a\xbd\ +\x72\xa5\xf9\xde\x2e\x5d\x16\x1a\x23\x2e\x07\xc3\x88\x0c\xbb\x78\ +\x71\x1d\x1e\xa9\xaa\xf6\xee\x7d\xa5\xd7\xb6\x6d\x6e\x74\x04\x3b\ +\xf4\xeb\xaf\x3f\x51\xad\x1d\xc6\x0d\xc1\xb7\x5f\x85\xd8\x6b\x21\ +\xc4\x1d\xf1\xf7\xc1\x60\x30\x5e\x05\x04\x18\xa2\xc0\xf5\x8e\x86\ +\x14\xdf\x67\xba\x42\xaa\x2f\x22\x2e\x2c\x6c\x29\x35\xa7\x24\x59\ +\x3f\x12\x37\x92\x1d\x83\xe2\xe5\x36\xf3\x4b\xda\x1c\x2b\x0c\x06\ +\x0b\x1a\x19\x92\xdc\x5e\x72\x72\x72\x3f\x7f\x47\xc7\xed\x90\xe2\ +\x73\x5e\x9e\x2f\xdf\x2b\x45\xb8\x08\xc6\xd6\x46\x00\xb2\x7f\x79\ +\xca\x86\x1a\x35\x1e\xc5\x85\x87\x5b\x3c\x3c\x7e\x7c\x93\xad\x91\ +\xd1\x0b\x69\xa0\x83\xbf\xf1\xdf\x2e\xfd\xbf\x5e\x4a\x06\x83\x71\ +\x32\x07\xb6\x91\x16\xfa\xfa\xb5\x72\x15\x2c\x78\xb4\x58\x8d\x1a\ +\x4f\xbe\x24\x24\x14\x2d\x58\xbe\x7c\x48\x1b\x33\xb3\x2b\x78\xee\ +\x43\x2d\xb8\x54\x42\xd4\x37\x28\x54\x28\xea\xc3\xa3\x47\x95\xad\ +\x4b\x97\x1e\x71\x6f\xcf\x9e\xa0\xd1\xde\xde\xb6\x39\xf3\xe6\x8d\ +\xd5\xcf\x9f\x7f\x89\xd0\x02\x06\x26\xa4\x08\x11\xa4\x61\x74\x0c\ +\x06\xc3\x6d\xfa\xf4\x3e\x56\x65\xca\x3c\xd3\xd8\x4e\x7e\x5d\x91\ +\x2f\xdf\x53\xa9\x1c\x56\x4b\x00\xd4\x68\x52\xc6\xed\xee\xd1\xca\ +\x66\x5d\xb6\x6c\x80\x8c\xd9\x79\x40\xd8\xe8\x0d\xb6\x9e\x31\x78\ +\x97\xf4\x54\x54\x18\x3f\x08\x5a\x91\x34\x3b\x9e\x3d\x8f\x7e\xff\ +\xbe\xb2\x00\x00\x06\x83\x41\x02\x44\xe8\x71\x37\xcb\x7b\xcd\x9a\ +\x7d\xdb\x9a\x34\xb9\x88\x02\xd7\xc3\xb4\x65\xc4\xf8\x60\xa1\x01\ +\xd2\xc0\xa4\xd0\xc1\x96\x06\x0d\xa8\xf8\x75\x1a\x12\xa0\xf7\xa3\ +\xe5\xf2\x1b\xb9\xcd\x0c\xc4\x98\x91\x00\xcc\x0d\x0c\x8e\x29\xc6\ +\xbb\xb7\x6b\x57\x9f\xc4\xd8\xd8\xfa\xe2\x7f\xc0\x60\xb0\xd1\xe5\ +\x90\x2a\x62\x33\xc0\x85\x60\x1b\x50\x25\x34\x70\xd7\xc9\xe9\xd7\ +\xd5\xc5\x8a\x85\xd1\x0a\x08\xa7\x89\x07\x8c\xc9\x22\x2c\x30\xd0\ +\xdc\x75\xe8\x50\x77\xef\xd5\xab\xf7\x29\xca\x61\x97\x2d\x2d\x27\ +\xd0\x3b\xa8\x44\xf8\x2c\x0d\xef\xba\x89\x10\x4d\x45\xda\xc0\x60\ +\x70\x5f\xf3\xf0\xe7\xcf\xe7\xef\xed\xde\xdd\xc7\x5c\x5f\x3f\x5c\ +\x7a\x2b\x63\xd1\x76\x79\x11\xe9\xab\xc8\xd7\x54\x18\xbb\x40\xb1\ +\xbb\xa7\xee\xee\xeb\x51\x91\x70\x0e\xc2\x47\xf1\xb2\x06\xaf\x9d\ +\x48\x13\x18\x0c\x36\xba\x3c\xe0\xb0\xe4\x4f\x9f\xcc\xae\xd8\xda\ +\xee\x71\x6c\xd3\xc6\xed\xa2\xb9\x79\x2b\x32\x46\xa9\x28\xdd\x9f\ +\x0c\xf1\x40\xdf\xbe\x17\x30\x36\x04\xec\x0d\x29\x3f\x4b\xd7\xe1\ +\xc3\x4f\x3d\x3e\x71\xa2\xa5\x4a\x7c\x0f\x18\x0c\x36\xbc\xc2\xb8\ +\xd4\x05\x6b\x83\x4f\xa0\xaf\x72\x5a\x7a\x26\xaf\xe6\x30\x30\xa8\ +\x31\x23\x38\x78\x6d\xde\xe2\xc5\x6d\x31\x1e\x45\xdd\x7f\xf0\xa8\ +\x23\x18\x2c\xd2\x0f\x0c\x06\x03\x0e\x93\xfb\xcb\xf3\xe4\xf9\x78\ +\x6d\xfd\xfa\x91\x19\x5c\x2d\xc0\x60\x30\xda\x98\x9a\x5a\x93\x9a\ +\xf4\xe9\x69\xd3\x36\x99\x0a\x71\x18\x1c\x85\xa0\x7a\x99\x0c\x30\ +\x38\x06\x83\xd1\x62\xc1\x82\xe3\x7d\xf7\xec\xd9\x5c\xaa\x7e\xfd\ +\x47\x2a\x3d\x3d\xd2\xc5\x74\x44\x50\xfd\x84\xc8\x18\x30\x18\x0c\ +\x52\xfe\x02\x67\x24\xc6\xc5\x2d\x23\xc9\xbe\xb0\xc7\x8f\xe7\x2a\ +\x15\xe8\x19\xe7\x34\x61\x30\xd8\xf0\x4a\xe3\x52\x4d\xda\x99\x0f\ +\x1c\x28\x09\xe2\x5f\x09\x06\x83\xc1\x60\x30\xfe\x0f\x1d\x9b\x1f\ +\x99\x66\xa1\x3a\xad\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\ +\x82\ +\x00\x00\x38\xb4\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\xa8\x00\x00\x01\x77\x08\x03\x00\x00\x00\x06\x8a\xf0\xc8\ +\x00\x00\x02\xc1\x50\x4c\x54\x45\x7f\x00\x00\xa3\x6d\x93\xa4\x75\ +\xa1\xae\x96\xd0\xbb\xb2\xec\xcb\x9d\xa4\xd7\xcd\xed\xbb\xbb\xfe\ +\xcb\xcb\xfe\xd0\xce\xfe\xd2\xd2\xff\xc8\xc6\xfe\xc3\xc3\xfe\xdc\ +\xdb\xfe\xc0\xbe\xfe\xb8\xb6\xfe\xd8\xd7\xff\xb3\xb3\xfe\xe2\xe2\ +\xfe\xeb\xeb\xfe\xf3\xf3\xfe\xfc\xfb\xfe\xb0\xae\xfe\xf0\xef\xfd\ +\xad\x80\xa3\xf9\xf7\xfb\xaa\x9b\xe0\xad\xac\xfe\xa4\x62\x7b\xbc\ +\x7b\x7b\xbd\xb9\xf5\xbf\x80\x80\x91\x31\x3d\xa7\x50\x50\xa9\x53\ +\x53\xca\xc4\xf2\x95\x2c\x2c\x96\x40\x53\xcc\x9b\x9b\xcf\xcb\xf7\ +\xae\xa6\xf1\x9c\x53\x6d\xdc\xb9\xb9\xe0\xdf\xff\x9c\x5a\x7b\xb5\ +\xb0\xf4\xee\xe0\xe1\xb7\x70\x70\x9e\x41\x42\xf5\xec\xec\xbb\x83\ +\x8f\x8f\x20\x21\xbe\xb1\xe4\xd5\xac\xac\xce\xa0\xa1\xbe\xa8\xd3\ +\xb2\x6c\x72\xd7\xb0\xb0\xdd\xc2\xc8\xed\xe3\xeb\xa9\x76\x99\x8b\ +\x22\x2c\xb6\xa9\xe4\x9d\x6a\x98\x89\x13\x14\xb9\x73\x73\xb9\x76\ +\x78\xb9\x9f\xcc\x9f\x68\x90\xa3\x81\xbb\xbc\xa2\xcb\xbc\xaa\xdb\ +\x9c\x3a\x3a\xa6\x71\x94\xc1\xbb\xf3\xa6\x88\xc2\xc4\x91\x98\xc5\ +\xba\xea\xc6\xba\xe5\xc6\xc0\xf4\x95\x4a\x69\xa8\x85\xb9\x96\x30\ +\x31\xcb\xaa\xbd\xb5\x6c\x6c\xaa\x84\xb3\xcd\xa3\xaa\xb5\xa0\xd5\ +\x8b\x1a\x1b\xd0\xa2\xa2\xac\x5a\x5b\xd1\xac\xb5\xac\x5e\x62\xac\ +\x84\xad\xad\x64\x6d\x97\x56\x7d\x98\x33\x33\xb6\x99\xc4\xdf\xdb\ +\xf7\x99\x46\x59\x9a\x3d\x44\xe4\xcd\xd1\xe6\xd0\xd2\xe8\xe6\xfb\ +\xea\xd7\xd8\xaf\x60\x60\xec\xda\xdb\xb3\x92\xbb\xaf\x8a\xb5\x9b\ +\x4a\x5c\xf1\xe3\xe3\xf3\xed\xf3\xb1\x63\x63\xb1\xa3\xe2\xf7\xf0\ +\xf0\xf8\xf3\xf3\x8c\x26\x32\xb3\x89\xab\xba\xaf\xe8\x8d\x2c\x3b\ +\xb6\x84\x9a\xac\x8a\xbb\xba\xb4\xf4\x89\x1a\x22\xa1\x50\x5c\xcb\ +\xc1\xec\xd9\xb3\xb3\x85\x10\x13\x95\x43\x5c\xc1\x83\x83\xa3\x54\ +\x61\xc2\xb4\xe2\xb0\x9e\xdb\x99\x43\x52\xb1\x86\xa9\xc7\xa8\xc0\ +\xb1\x8b\xb3\xa3\x87\xc6\xb2\x9c\xd3\xa5\x4c\x4c\xa5\x68\x84\xb4\ +\x73\x7c\xb4\xa1\xdb\xb4\xae\xf3\x9a\x4c\x62\x94\x45\x62\xa6\x8e\ +\xce\xd5\xb8\xc5\xd6\xc1\xd5\xb6\x78\x83\xa6\x8f\xd1\xd8\xd3\xf5\ +\xb6\x90\xb2\x9b\x57\x78\xd9\xc6\xda\xa7\x60\x70\xa7\x90\xd1\x9b\ +\x64\x91\xdd\xcf\xe2\x8d\x30\x44\x8e\x38\x52\xe1\xc4\xc4\xb9\x8b\ +\xa3\xe4\xcb\xcb\xa9\x8b\xc3\x8b\x27\x39\xe6\xe1\xf4\x9d\x60\x85\ +\x90\x2e\x3b\xea\xe4\xf2\xbb\x9a\xbe\x90\x35\x49\x9f\x45\x4d\x96\ +\x49\x64\xa1\x44\x44\xad\x90\xc7\xa1\x4d\x56\xae\x72\x86\x92\x34\ +\x43\xa3\x6a\x8d\x91\x2c\x34\xc0\x86\x8a\x83\x0a\x0b\x9f\x52\x66\ +\xbc\x93\xac\xc4\x8b\x8b\xc3\x9c\xb0\x89\x16\x1a\xcf\xc2\xe5\xe9\ +\xd4\xd4\xb1\xa6\xe9\xb5\xab\xeb\xc9\x94\x94\xa1\x6e\x98\xae\x99\ +\xd4\x9e\x58\x73\xd5\xbc\xcc\xbf\xa1\xc3\xae\xa9\xf5\x9b\x55\x73\ +\xaf\x78\x92\xc1\xab\xd4\xc1\xb7\xec\x87\x19\x23\xb6\x9b\xcb\xa4\ +\x72\x9d\xaa\x6c\x83\xb7\x7b\x87\xaa\x72\x8d\xc4\xa9\xc9\x92\x3d\ +\x53\xaa\x98\xdc\xb1\x92\xc1\xc7\x91\x92\xa4\x7a\xab\xba\x95\xb5\ +\xe8\xda\xe3\xba\x9c\xc3\xca\xb1\xcc\xba\xab\xe2\x94\x3b\x4c\x9a\ +\x5c\x82\xae\x95\xcd\x95\x39\x46\xa2\x59\x6d\xcf\xbb\xd7\xb4\x85\ +\xa1\x9d\x63\x8c\xbc\xa5\xd1\x99\x4f\x6d\xa6\x78\xa3\x91\x24\x24\ +\x9f\x6f\xa1\x86\x14\x1a\x8e\x29\x35\x0d\x87\x2a\x70\x00\x00\x35\ +\xae\x49\x44\x41\x54\x78\x5e\x84\x5d\x53\xb7\x2c\xcd\xb2\xed\xb7\ +\x72\xb5\x17\xb6\x6d\x1b\x1f\x6d\xdb\xb6\x8d\x63\xdb\xb6\x6d\xeb\ +\xda\xb6\x6d\xfd\x8a\x9b\x19\xe8\x59\x51\x51\x3d\x4e\x76\x65\x56\ +\xed\x97\x3d\xe6\x08\x67\x44\x64\xae\x5e\x9e\x0f\x72\x8c\x2c\x4f\ +\xc3\x1a\x66\x1a\x7f\xfc\xe8\x28\x75\x2d\x69\xca\xab\x2c\x4a\x19\ +\x75\x9c\x35\x3d\x65\x12\x9e\x32\xb1\xa3\x1f\x9e\xb8\x0c\x87\xf2\ +\xc4\xa5\x1f\x7e\x3a\x56\xc6\x67\x65\x7c\xe2\x57\x5c\x57\xf2\x58\ +\x11\x66\x2f\x1f\x0c\xf2\x01\xd0\x66\x39\x43\x15\xb0\xad\x51\xd2\ +\x14\xa8\x61\xa5\x59\x16\x0a\x97\x41\xd6\x34\x02\xb2\x32\xfe\x04\ +\x70\xcd\x50\xfb\x01\x5d\x12\x27\x23\x0d\x33\xe0\xec\xf7\x81\x34\ +\x0c\x8b\x52\xb1\xf6\x22\xc8\x30\x05\x69\x46\x33\x8d\x38\xe9\xc9\ +\x2c\x45\x89\x8c\xf4\x13\x7a\x82\xa2\xb5\x3c\x34\x93\x00\x34\xac\ +\x34\x4a\x4b\xd6\x00\x92\xa0\x0a\x41\xe9\xb1\x34\x25\xa2\x3a\xac\ +\x3d\xa0\x04\x3d\x99\x98\x59\x78\xe2\xa2\x58\x2d\x60\xb0\xde\x30\ +\x9f\xa9\x19\x49\x9b\xcc\xa8\x39\xa3\x28\x91\x53\x99\x1e\x66\xe0\ +\x3b\x51\xb3\xcf\x28\x01\x95\xb8\x6f\x70\x46\xd6\xc7\x5f\x03\x69\ +\x84\x45\x88\x09\x2d\x81\xcd\x0d\x44\x85\x09\x82\x02\x28\x43\x8d\ +\x13\x1c\xa7\x85\xc9\x29\xbc\x0f\x0c\x27\xa2\x32\x5a\x82\x89\x21\ +\x10\x15\x25\x28\xda\xa5\x4d\x59\x26\x8a\x94\x1b\x42\x42\x99\xf8\ +\xc5\x98\x0b\x03\x53\xa5\x94\xe8\x19\x95\x0a\x5c\xe7\x49\x48\x03\ +\x38\x61\xbf\xd1\x25\xd6\x23\x20\x35\x14\x8d\x9c\x07\xd4\x8c\x39\ +\x4f\x22\xaa\x04\x4d\x31\x3c\x69\x0b\xa1\x6b\x0d\xc5\xa7\x51\x92\ +\x74\xd6\x80\x09\x6d\x1a\x8a\x9c\x86\xc1\x7a\xaf\xac\x5f\xa9\x6f\ +\x91\x55\xa8\x12\xc9\xa8\xa2\x04\xeb\x55\x4a\x9d\xe6\xab\x61\x4a\ +\xe5\x4d\xb3\x28\x9a\xe6\x09\x14\x55\xa4\xa5\xa5\x68\x44\x09\xf3\ +\x04\x5d\x02\x58\x50\x73\x08\xa4\xbd\x81\x72\x7e\x00\xd6\x8b\x0d\ +\x0d\xdf\x2c\x02\x96\xff\x05\x01\x55\xde\x2b\xd0\x24\x4e\x5a\x09\ +\x24\xc1\x34\x4a\xcf\x04\x15\x19\x4d\x48\x8d\xc4\x88\xb6\xb8\xcf\ +\x60\xa1\xf6\x50\x26\x36\xa5\xe0\x7c\x2a\x4f\x06\xbe\x03\x27\xa3\ +\xb4\x56\x14\x43\x84\x94\x91\xd2\x1b\x28\x85\xa2\x42\xcc\x7e\x18\ +\xc0\x6a\xa1\x0e\x41\xce\x79\xca\xd4\x74\x49\xf2\x4a\xed\x00\xdb\ +\xf9\xdb\x23\x65\xb5\x67\xe3\x54\x1b\xa2\xf6\x1b\xbc\x6f\xe0\xa4\ +\x09\x0b\x4a\x53\xe1\x82\xf5\xa4\x49\x46\x99\x94\xa8\xaa\xf5\x59\ +\x1b\x26\xa0\x1a\x82\x12\x32\x75\xa2\x35\x19\xfd\xba\x05\x53\x3c\ +\x13\x53\x94\xb0\x0e\x3d\x4d\xa1\xf3\xde\x8e\x02\x66\x26\x1e\x29\ +\x63\x55\x92\x91\x33\xd7\xc1\x76\x5e\x5a\x86\x34\x01\x41\xc5\x33\ +\xb1\x0c\x60\xb0\x79\x02\x39\x69\xf6\x0d\xd3\xe1\x42\xe9\x31\x2e\ +\x54\xb1\x66\xca\xfd\x68\x48\x19\x25\x78\xef\x6d\x13\x7f\x59\xa8\ +\x49\xc9\x5a\x6f\xe1\xc1\xdc\xb3\x0b\x25\xa0\x82\xd5\x8e\xee\x98\ +\x84\x29\xda\x22\xa9\x38\xfa\x8c\x45\x35\xf3\x40\x4b\xc3\x7a\xb8\ +\x50\x98\x7d\x55\x26\xa2\x71\x0b\xab\x78\x51\xa5\x28\x3f\x0d\xae\ +\xcb\x2b\x4c\xef\xeb\x19\x69\x98\x50\x7b\xfc\x2c\x44\x88\xa8\x13\ +\x52\xe5\xbe\xb8\x4f\x60\x74\xae\x29\xda\x7b\xa6\xe7\xff\xec\x7a\ +\x92\x11\x12\x56\x8b\x72\xd8\x2d\xa3\x83\xa6\x94\x66\x71\xcc\xf4\ +\x29\x53\x65\x2a\xc2\x13\x66\x6a\xd4\x3d\x2d\x8c\x2a\x89\x01\x85\ +\x32\x19\x17\x4a\x3f\x26\xe8\xee\x8f\xff\xda\x93\xe7\xf6\x7a\xdf\ +\xce\x2d\xf3\x05\x2a\xd8\x0f\xd6\x2b\xe3\xc1\xfb\x8c\x46\xca\x30\ +\xdb\xa3\x80\x6f\x22\xb0\x88\x47\x31\x94\xaa\x50\x7b\x8b\xb5\xbc\ +\xf8\xcf\x7a\x3a\xee\x4d\x34\xd4\x53\x8b\x84\xe8\xd9\xc6\xa3\x4c\ +\x4d\x80\xcd\x04\x6a\x9e\x6a\x00\x9d\xcd\x40\x16\xec\x95\x6c\x08\ +\x65\x21\x26\x09\xcf\x40\x49\x82\x89\xc8\x49\xd6\x61\x79\x7a\xaf\ +\x31\xce\xaa\x08\xa6\xa3\x28\x2d\x9e\xf5\xc6\xdd\xf3\x68\x00\x4c\ +\xc1\x7b\xb0\x9e\x41\x42\x99\x12\x4c\x62\x3f\x13\xb4\x76\xf4\xfc\ +\xa5\x9e\x19\xfb\x26\x00\x8a\x40\x94\x40\x3a\x17\x2a\x24\x85\x88\ +\x0a\x5d\x49\x40\xad\xbd\x2f\x14\x29\x82\x92\x96\x2e\xa9\xb0\x12\ +\xcb\x09\xa9\x25\xe9\xbb\x7a\x76\x5c\x35\x31\xa4\xd4\x37\x7d\xb6\ +\x28\xda\x26\x28\x64\x34\xe2\xcc\x32\x13\x8f\x14\xd8\x2f\x15\x85\ +\x0b\x9d\x19\xa4\x2e\x24\xa5\x71\x7d\xfd\x93\xa0\xaa\xe0\xbb\xe5\ +\xe6\x1d\xf7\x5d\xf7\x44\xf8\x58\x3f\x85\x0f\x05\x48\xeb\xee\xd5\ +\xe0\x0f\x80\x15\x5a\xaf\x76\x14\x34\x05\xeb\xc3\xa0\x57\x41\x70\ +\x0d\xd8\x5a\x41\xd2\x9b\xc3\xd2\x2b\x7b\xbd\xbf\x2e\x25\x1e\xbd\ +\x95\x60\xae\xdd\x3f\x19\xd4\xc1\xa6\x3e\xbc\xef\xac\xe5\x91\x41\ +\x09\x62\x1a\x4f\x0f\xd6\x03\x65\x84\x19\x27\xe1\x44\xdc\x5c\x28\ +\x52\x0e\xf4\x09\xab\xc0\x2c\x14\x25\xbb\x25\x25\x69\x52\x9f\x76\ +\xce\xab\xbf\xd0\x5b\x47\x0c\x1e\x0b\xf7\x77\x11\xce\x49\x4e\x66\ +\x34\xcc\x3c\x1f\x26\x80\x09\xa2\x7a\xcd\x37\x14\x65\xc6\xe7\x02\ +\x94\x21\xd2\x9a\x41\x44\x05\xa8\x62\x65\xa0\x30\x4b\x60\xfe\xad\ +\xff\xd0\xc3\xf8\x5c\xc9\x40\x6f\x27\x05\x7a\xd3\x95\x4b\x9f\xb8\ +\xfd\x8a\xf7\x6c\xde\x7e\xfb\x39\xef\x4a\xa0\x4b\x82\x71\x6e\x50\ +\x62\xed\xa8\x1a\xd2\x48\x4d\x11\xd3\xa6\x26\x15\xc2\x7a\x46\xe9\ +\xa3\x3c\x41\x5a\xef\x8e\x30\x31\x0e\x8c\x12\x1a\x6a\x9a\x30\xbe\ +\xb3\xdb\xda\x26\x15\x00\xa0\x5d\xa1\x14\xb5\x66\x54\x79\x4f\x2e\ +\x29\x07\x39\x0b\x36\xa3\x08\xf2\x18\xa7\xb5\xa1\xb2\xd4\xf5\xf5\ +\xbf\x6f\xe1\xec\x1d\x4b\x80\xdf\x73\xe3\x82\xd4\x9b\x51\x81\x68\ +\xa3\x27\x63\x47\x33\x86\x29\xac\x6f\x3a\xd0\xac\xc8\xd8\x87\x96\ +\x4d\x67\x5f\x20\x26\x49\xb0\xd4\xc9\x33\x0c\x62\xd3\x4d\x67\x1d\ +\x78\x22\x7e\x5c\xb3\x38\x64\xde\xdf\xea\x91\x5e\x57\x8b\xda\x43\ +\xe3\xbb\xf7\xf5\xb4\x17\xb1\x04\x4d\x89\xf5\x6a\xf4\xe3\x72\xfe\ +\xd2\xdd\xab\xc2\x1b\x91\xbd\x4d\x40\x14\x8a\x96\x35\xea\x14\x42\ +\xb0\x61\xc7\xf2\xa8\xaa\xd2\x57\xdc\xd3\x5b\xff\xd4\x38\x91\xb1\ +\xfb\x63\x9b\x18\xdf\xd7\xbf\xb9\x61\x03\x7d\xdc\x30\x36\xd4\xd4\ +\xe7\xe7\xed\xeb\xc3\x24\x9a\x6a\xd8\x1c\xbe\x5e\xb7\x74\x37\xdb\ +\x66\x44\x51\xd8\x91\x14\x69\x7d\xf6\xad\x17\x7e\xe4\x94\x3b\xd7\ +\xd4\x1a\x3a\x27\xf5\x77\x49\xb9\xa7\xa3\xa2\xa4\x2c\xce\xd6\xf1\ +\x28\x41\xa6\x24\xad\x3e\xf9\x95\xf1\x78\x3c\x1a\xe5\x83\x94\x90\ +\x4e\x4b\xe8\x3c\x76\x4c\x6e\x5f\xaf\x30\xa1\xf7\x6a\x47\x19\xea\ +\xd2\xf3\xca\xa3\xc7\x4d\x9a\x4c\x74\xea\xfa\x5f\x57\x16\xbe\x20\ +\x24\x0d\x14\x25\x9b\x74\x63\xf5\xd2\x69\x6f\xfd\xd6\x23\x4b\xa7\ +\x2f\x5d\x79\x1a\x12\x4e\xc3\xb4\x0e\xb2\xca\x23\xd9\x1d\x71\x9e\ +\x41\x40\x87\x76\xdf\xe4\x2c\xa9\x33\x4f\x44\x4f\x44\x4f\xf9\x87\ +\x21\x4c\x37\x0f\x40\x4e\x11\xd5\xbf\x68\x0a\xdb\x6b\x67\xfc\xff\ +\x54\x5b\x0e\x7f\x14\xa0\xf2\x78\x7d\xef\xd3\x4f\x6a\x7c\x7f\x2e\ +\xbb\xfb\x69\xdd\x54\x79\x65\x3c\x4d\xc5\x29\xac\x77\x9e\x49\x47\ +\x10\xcf\x03\x00\x72\xe6\x98\x14\xbf\x90\xa1\x30\x31\x76\xa4\xbc\ +\xaf\xeb\x52\x99\x1f\xb3\xbb\xff\xe5\xf0\x79\xf0\xc7\xbb\x93\x7a\ +\xf7\x8a\x25\x21\xc0\x9e\x45\xb7\xb1\x77\x76\x74\x5b\x60\xbd\x17\ +\x51\x1e\x9a\xcd\x23\x08\xc7\xee\x09\xcb\x1d\x13\x42\xa9\x50\xb3\ +\x17\x01\xe3\x8c\x33\xc8\xd2\xdc\xaf\x26\xff\x79\x8f\xf4\x8b\xa4\ +\xf6\x2b\x9c\xd2\xff\xa5\x72\x7e\x61\xb8\x10\x96\xe6\x86\x19\x03\ +\x5b\x11\xe5\xbb\xb8\x51\x80\xcd\x2e\xfa\xe9\x8e\x3d\x93\x31\x11\ +\xf6\xa9\x8c\x02\x13\x1d\x82\x60\xd3\x96\xfd\xcb\xe3\xfb\xbf\x1d\ +\x3f\x1f\x48\xc5\xe0\x27\x7f\x04\x24\x3f\xfc\x21\xbd\x5e\x93\x26\ +\x09\x51\xd4\x8e\xe3\xd3\x1c\x04\x5d\x58\x20\x80\x08\xf3\x9c\xd6\ +\x0f\x8c\x6f\x02\xce\x2c\x95\x38\xff\x4e\xfa\x4f\x2b\xa1\x28\xbd\ +\xca\x55\x11\xc0\x4d\x27\xa6\xf7\xe7\x45\x50\xaa\x08\x60\x4b\x55\ +\x27\xb2\xbf\x2b\xdf\x7f\xdd\x96\xe3\x3b\xee\x7b\xe8\xe4\x64\x72\ +\xff\x0b\x1c\x79\xd2\xe6\xce\xc2\x7c\xdb\x63\xcb\x85\x31\xf7\x0b\ +\x8c\xb3\x53\xeb\x01\x94\x68\x09\xa0\xc4\x7a\xc6\x99\x6e\x64\x21\ +\x0d\x08\x31\xca\xa5\xd7\x1e\xd8\xbf\x1c\xc0\xff\xfd\x23\xdf\xdb\ +\xbe\x8e\x50\x8f\x69\xb7\x9c\xd4\x75\x9c\x65\x51\x72\x94\xff\x1c\ +\x61\x9a\x92\x6f\xfa\x55\xa0\x3c\xf5\x07\x27\x17\x2b\xda\x88\xd0\ +\xf4\x32\x0a\xac\xc6\x85\x7a\x5d\xca\x1a\xa9\xf1\xcd\x64\x49\x49\ +\x87\x18\x65\x78\xd2\xbc\xaa\x8a\xf2\x11\xb2\x9a\x6c\xbb\xa7\xb4\ +\x07\x09\xcb\x69\xbb\x96\x02\x44\x42\x9c\xbc\xf3\xfb\x11\xd6\x13\ +\x93\x80\x93\x2c\xd2\xa6\x03\x07\x5e\x73\xe6\x25\x41\xa0\x46\xa9\ +\xc9\x94\x04\xf9\x5c\x30\x7b\x65\x1f\x3d\x59\x75\x02\xca\x38\x65\ +\xbc\x9d\x84\x34\x67\x7d\x8f\x93\x23\xe7\x4b\x2f\x7c\x99\xa2\x54\ +\x21\xad\xa3\xaf\xff\xdf\x5e\xef\x1d\x97\x53\x78\x7f\xed\xd7\x44\ +\xb9\xc7\xa2\xf7\x47\xf7\x4f\xa2\x65\x2b\xc8\xaa\x82\xe7\xf2\x32\ +\x32\xea\x5d\x28\xd0\x32\xeb\x81\x95\x06\x84\x14\x14\x25\x5b\x7a\ +\xa8\x87\x21\x42\x4a\x16\xea\xbf\x08\xdb\xba\xed\x9b\x9f\x7f\x95\ +\x10\xfb\xb3\xd3\x82\x92\x64\x7d\xb5\xfc\x92\xc7\x6f\xa6\xc6\x23\ +\x45\x11\x3e\x03\xaf\xa7\x28\x74\x3f\x7b\x78\xf3\xc7\x08\xa9\xb2\ +\x7e\xab\x58\x52\x72\xf1\x45\x41\xef\xf2\x39\x8d\x80\x6e\x5a\x7d\ +\xe3\x89\x97\x91\x90\xf2\x56\xd9\x19\xd2\x5f\x59\x1e\x04\x94\x0c\ +\x95\x3c\x53\xb3\xd4\x34\x33\x4f\xe1\x51\x19\x0d\xb3\x9d\xcd\x73\ +\xe5\x86\x8d\xe7\x9d\xf7\xba\x57\xc4\xb0\x26\xe0\x45\xb2\xec\xbb\ +\x6c\x49\x69\x6f\xaf\x14\x65\x10\x6b\xf7\x4c\x47\x55\x9e\xde\x4d\ +\x42\xca\x99\xfc\xb7\x5a\x98\xff\x7d\xef\x34\xd7\xb4\x23\xe3\xec\ +\x2b\x49\x59\x95\x84\xf5\x90\x51\x10\x14\xac\xb7\x35\xa6\x67\x37\ +\x63\x87\xb8\x98\x21\xf7\x94\xad\x22\x77\x9f\xb1\xf3\xe4\x5d\x1e\ +\xf9\x96\x3b\x1e\x9a\x0e\xca\x30\x2e\xfa\x1a\x51\x6e\xd5\x47\x4e\ +\x8b\x44\x6d\x4a\xee\xfa\xe3\xcb\xe3\x72\x96\x72\x8e\xf5\x05\x7a\ +\x09\xce\x26\x45\x45\x46\x5d\x8a\x0c\xac\x17\xac\xaf\xf8\x8e\x21\ +\xc4\x9e\x1c\x42\x5a\x9c\xc7\x42\xca\x51\x49\xa0\xa8\x10\xf4\x86\ +\x93\x8b\xe4\xe2\xcf\x3f\x75\xb6\x03\xfe\x50\x40\xfa\xbd\x68\x90\ +\x2e\xd8\xb4\x69\xfd\x59\x47\xf6\x4f\xab\x82\x04\x13\x65\xc6\x21\ +\x51\x94\xa0\xda\x4d\xa8\xca\xa8\x53\x7b\xeb\x42\x7f\xb3\x67\xc7\ +\x8d\xa3\x14\xe1\x5e\xc9\x91\x3a\xe1\x64\xad\x27\x4d\x5a\x3d\xa5\ +\x48\xea\x91\x1e\xc6\x89\x3c\x88\xe9\xd2\xea\x87\xa6\x55\x35\x0a\ +\x32\x51\x24\x32\xa0\x45\xfa\x21\x39\x7c\x50\x54\xed\xfd\x42\x7b\ +\x27\xba\x4d\x5c\x28\xf1\x5f\x70\x62\x3c\xb8\xd8\xc8\x3d\x64\x9b\ +\x23\x9f\xd9\xb2\x84\xa1\xaa\xb4\x61\x5c\x96\x6b\x4e\x79\xa6\x87\ +\x71\xc6\xe3\x15\x29\x54\x5a\xa0\x20\x46\x04\xc5\x40\x85\x11\x30\ +\x69\x51\x5f\xbf\xd0\x99\x71\x96\x71\x54\xd3\x41\x47\x3e\xf3\x99\ +\xeb\xde\x46\x5e\x6f\x39\xcd\x80\x94\x85\x94\x08\x4a\x23\x5d\xc3\ +\xae\x7e\x73\x70\x4a\x18\x3f\xdb\xfb\xd0\xb4\xd0\xf2\x8d\x24\xa0\ +\x0c\x46\xc9\x3b\x6a\x51\xcc\x72\xde\xc8\xa8\x37\xf8\x71\xe6\xd9\ +\x41\x8a\x30\x6e\x9e\x2e\x8e\x06\x79\xba\xf5\xdb\x91\x7e\x53\x78\ +\xa6\x22\x3b\x9b\x22\xb9\x8a\x71\x92\x8b\x8a\xd0\x31\x36\x1d\xe9\ +\xdd\x74\xc9\x03\xd3\x71\x55\xa2\x20\x46\xe4\xac\x81\x92\x9f\x28\ +\xa3\x02\x32\x7c\x01\x26\x3d\x5d\xbb\xa6\x6d\xdb\xb6\x21\x01\xf1\ +\x55\x52\xe1\xa7\xa6\x03\xb1\xf5\xc1\xef\x7d\x6e\xda\xd8\xd3\x73\ +\xc0\xb7\x3a\x5a\x52\x0d\xf5\x8c\xb9\xdf\xfb\xf4\xb8\x18\x57\x99\ +\xd6\x42\xc9\xe1\xd7\x60\x3d\x8a\x0d\xc0\x0b\x7d\xc2\xb0\xe9\x07\ +\x0c\xe4\xf0\xef\x26\x3d\x9f\xcc\x7c\xd3\xd6\x8f\x7e\x65\xc2\x45\ +\x11\x45\xfa\xcf\x51\x1a\xc6\x61\x9f\xf7\xe8\xa9\xbd\x55\x59\xdc\ +\xd4\x1d\x7a\xb9\xc2\x3c\x16\x54\xc7\x54\xee\x08\x64\x0d\xd6\x0b\ +\x56\xd5\x76\x7d\x68\xf2\x40\x1c\xca\xd3\x85\x79\x62\x99\x28\x77\ +\xb5\x3c\x68\x79\xd0\xb0\x08\x54\xe1\xf4\x6d\x9a\x52\xc8\x29\x30\ +\x39\xef\xc0\x86\x6f\xde\xf2\x8e\xe3\x8f\x2f\x0e\x0a\x94\xc1\x6b\ +\xa1\xa8\xe2\x04\x49\xd5\x81\x0a\x3a\x55\xa7\xbe\xef\x2b\xb0\x96\ +\x14\x75\xa6\x01\xa9\xfc\x2b\x27\xad\x40\x4f\x02\xfd\xad\x11\xe7\ +\xf9\xbb\x4c\x06\x76\x12\x60\xd2\x36\xbf\x1a\x55\x83\x54\x6b\xa1\ +\xa6\x66\x9f\xc8\xaf\x49\x51\x29\xd9\xa3\xca\x0c\xc6\x23\xa5\x03\ +\xb4\x7e\xbb\x4c\x40\xef\x1b\xe5\xb9\x21\x69\xf8\x2c\x22\x41\x0f\ +\xf1\x8e\x19\xe3\x86\x07\x26\x05\x67\x1f\x52\x64\x73\xa4\x76\x23\ +\x93\xb3\xa3\x80\xc9\x5e\x9e\x50\x8a\x32\xc1\x92\xa2\xd0\xe4\xd8\ +\x8e\x4c\x09\x47\xce\x6f\x22\x9d\x1e\x35\x70\xe6\xf9\x65\xdb\x57\ +\x5d\x1a\x53\x24\x87\xd8\xad\x62\xdc\x74\xe3\xf2\x24\x2f\x09\xa9\ +\x1d\x35\xff\x98\xeb\xed\xec\x38\x94\x29\x60\x66\x4b\x0a\xbd\xb7\ +\xbc\xf7\xfa\x34\xcb\xe1\xff\x02\x09\xde\x38\xe2\x53\xf9\xbc\x2c\ +\xe6\x33\x76\x86\xcf\xed\x4d\x90\xb7\x6c\x79\x68\x3a\x1e\x65\x9c\ +\x22\x61\xa4\x29\x83\x44\xfb\x03\x98\x0f\xc5\x27\x4d\x52\xd6\x53\ +\xf4\x34\xa7\x0e\xae\x30\x69\xfa\x12\xe3\x20\x82\x38\xb8\xd8\x60\ +\x3c\x1b\x9f\xa7\xf3\x22\xfb\xd1\x8c\x92\x01\xe4\x64\x94\xab\x25\ +\x2d\xc9\xe5\x5b\x7a\x32\x41\xc5\xe2\x03\x25\xa9\x11\x94\xa9\xaf\ +\xda\x9e\x98\x7a\x58\x78\x80\xd5\x87\x79\x5c\x07\x7f\x81\xd3\x83\ +\xba\x19\xf9\x5b\x46\xb7\x69\x9a\xa7\xe9\x65\x31\x16\x3a\x76\xe4\ +\x6f\x26\x8b\xa3\x9c\x73\x10\x0a\xd3\xd7\xc0\x13\xc9\x3a\x93\x75\ +\x72\xc6\x89\x78\xcf\x5c\x77\xca\x24\x30\xc5\x46\x79\x3b\xaa\xa1\ +\xe8\x46\xde\x16\xfe\xdd\xd6\x2c\xbb\xec\xab\x6f\x3f\x28\x5b\xdd\ +\x13\xd3\x28\x04\x97\x7e\xf4\xe4\x64\x1c\x41\xc6\x78\x19\x4e\x94\ +\xb8\x6f\x68\x8a\x7c\xb3\x58\x28\x57\x66\x12\x3b\xaf\x20\x55\x99\ +\x7c\x7e\xb4\xbb\x41\x2b\x8e\x55\xaa\xd0\xcd\xf8\x69\x9a\x77\x55\ +\x45\xc0\x7b\xc9\x94\xa2\xc6\x44\x5f\xa4\x48\x4a\xd1\x12\x7e\x09\ +\x7e\x34\x82\x12\x21\xb0\xb5\x50\x48\x29\x70\xc2\x33\xd1\xb3\x55\ +\xdc\x0c\xc6\xbe\xe0\x6e\x2c\x4a\x49\x8f\x96\x02\x92\x16\x85\xa9\ +\x6f\x26\x67\x84\x0c\x9c\x02\x55\xab\xcb\xfa\xb3\xd4\x04\x5c\x6b\ +\xf2\x7d\xf9\xe6\x63\x36\x15\x7c\x78\x3a\x96\xbd\xbd\x1d\xa5\x08\ +\xa9\xc1\x89\xa2\x98\x56\x97\x5b\xb5\x70\x54\x42\x15\x25\x87\x51\ +\xc6\x8c\x1a\x11\x05\x50\x57\x15\xf9\xec\x55\x8a\xf2\x8e\x9f\xec\ +\x99\x8e\x07\x06\x64\x64\x32\xd9\x77\x12\x55\x61\xbe\x11\x50\xc6\ +\x19\x16\xfd\x91\xe6\x0b\xeb\x51\x06\x67\x9a\xd2\xe2\xcd\x13\x83\ +\xec\xd4\x7a\xd3\x57\xf0\x1b\x97\x5c\x73\xcd\xde\x9f\xec\x08\xd9\ +\xa4\x4a\x7d\x7d\x06\xa4\xba\x0a\x4a\xb1\xa3\xbe\x6e\xc7\xe0\x4a\ +\x9a\x2d\xbd\x47\x13\x21\x33\xde\x34\x11\x82\xac\x1d\x76\x14\xf9\ +\x51\x0e\x9c\x06\xd5\xce\xaa\x6a\xc6\x24\x88\xa0\xd0\xeb\x48\x20\ +\x1d\x45\x59\x99\x6a\x53\x10\xb7\x6d\x1a\xca\x7a\x6f\x9e\xe0\x98\ +\x1c\xdb\x91\x1f\x35\x05\x46\x7a\x78\x47\x6f\x4a\x62\xbe\x89\x2c\ +\x4c\x6f\xee\x23\x3d\xc1\x77\x5a\x7c\xdc\xcc\x93\x17\x87\x13\x24\ +\x9d\x93\x76\x74\x39\xe7\x0c\x45\x5b\xa8\x91\xab\xd7\x03\xac\x36\ +\xe3\x99\x1f\xc0\x02\x2d\x07\x25\x02\xd2\x82\x85\x1d\x85\xf2\xaf\ +\xe0\x7a\xbd\x2b\x34\x69\x2a\x8f\xcb\x37\x60\x3c\x06\x68\x4a\xb0\ +\x0d\xf3\x99\xf7\xec\x41\xc1\x7a\xd8\x27\x8d\x9e\x34\xd4\x03\x4e\ +\xdb\xab\xd1\x59\x15\x19\x18\x9c\x0c\x35\x7c\x13\x46\xcf\xf8\x30\ +\xc1\xfb\xc6\xa8\xf5\x45\xe1\xc8\x1c\xd6\xf7\x35\x7a\x02\x40\xe3\ +\x40\x81\xd3\x67\x9c\x6d\x0d\x5c\xa1\x6a\x37\xae\xd7\x79\x74\xe5\ +\xa6\x62\x49\xd1\xec\xc6\x32\x2a\x54\x05\x41\x4b\xeb\x42\x79\x12\ +\x71\x15\x30\x94\xde\xb5\x11\x8a\x32\x71\x44\x02\xb4\xb3\xf2\xa2\ +\xd6\xec\xad\x29\xd5\x89\x56\x22\x29\xdc\x83\xaa\xc9\xcc\xd9\x83\ +\xa8\x44\xc5\x30\x89\xfd\x8a\x14\x86\xc9\x08\xa9\x4e\x57\x5d\x36\ +\x20\x69\x65\xd6\x13\x50\xb5\xa4\xa0\x66\x9c\x8e\xf5\xd0\xfa\xe8\ +\xf0\xd1\x44\xe8\x34\x09\xec\xc7\x9e\x29\x31\x30\x31\x7d\x02\xc2\ +\xb2\x5f\x0b\x62\xda\xe7\xec\x6d\x13\xd4\xdf\x1b\xa8\x08\x13\x7d\ +\x4f\x3c\x1d\xd4\xe1\xec\x65\x38\x6f\x18\xef\xf2\xa3\xcc\x78\xf8\ +\xa6\x94\x58\xaf\xed\x59\xb0\x50\xa8\x85\x81\xa2\xbc\x00\x28\xfc\ +\x7c\x6d\x8c\x93\xb3\xf8\x0a\x31\xf1\x3a\xef\xeb\xf5\x68\x79\x33\ +\xea\xc4\x2f\x6d\xcc\x14\x94\x76\x28\x5c\x87\xb5\xe6\x45\x03\x13\ +\x4f\xcd\x3e\xda\x1d\x81\xd2\x6f\x44\xf4\xab\xb3\xd8\xe0\x1b\xde\ +\xe2\xc8\x2d\x4e\x70\x5d\x80\x5a\x9c\xe8\x29\x89\x8f\xa5\xe7\xb0\ +\x0f\xd6\x4b\x82\x84\x16\x97\x86\x50\x80\x06\x2b\x32\xce\x68\x22\ +\x94\x27\x95\xaa\xad\x89\x4a\x4a\x7e\x19\xd6\x17\x66\xbb\x2c\xbd\ +\x4f\x08\x49\xbc\x17\xa5\x1f\x7d\x1a\xeb\x84\xbe\x17\xb7\xaf\x67\ +\xcf\xe4\xdb\xdb\x09\x67\x06\x19\x05\x2d\xad\xa4\x3a\xbe\x87\x07\ +\xca\x94\x04\xe4\x5d\xee\x93\x1f\x24\xc5\x13\x63\xee\x8d\x15\xb5\ +\xad\x1a\xae\xdb\x91\xbb\xc5\x33\x18\x7c\xab\xf7\x82\x4f\xdf\xfc\ +\x82\xd6\xab\x79\xf2\x32\x0a\xb4\xba\x57\xa6\x6f\x2f\xa8\x70\xf9\ +\x36\x1e\xb5\x03\xfd\xcd\x99\x97\x51\x90\x35\x55\x74\xa9\xd1\xa3\ +\x1a\xa6\x49\x56\x6b\x99\xb0\x9f\x77\x18\xfd\xbe\xde\xfb\xfa\x2e\ +\xb4\x71\x69\xf9\x50\xeb\xe8\x49\x54\x5d\x96\xc4\x91\xd4\xb5\x0e\ +\xc3\x86\xd2\x62\x15\xc9\x1f\x6c\x98\xaf\x4c\xaa\xf8\xa0\xa8\x0b\ +\x4a\x8a\xb8\xfa\x6e\x4c\x75\xa1\x82\x12\x40\xed\x90\xe8\x09\x35\ +\x26\x40\xed\x6e\x78\x5b\xd1\xdd\x3f\x4a\x20\x55\xf3\xa1\xf5\x08\ +\x4c\x0a\xae\xde\xd0\xce\xd9\x84\xf8\x89\xb2\x1e\xb3\x9d\x77\x62\ +\x96\x73\x61\x84\xd4\x3e\x71\xbe\xc9\x24\x9b\x87\x36\x35\xee\xb8\ +\xce\xab\xb7\xf6\x08\x99\x71\x5a\x20\xc5\xae\x5e\x95\x49\xe3\x51\ +\xc8\xa9\xed\xc3\xc7\x61\x26\x43\x4d\x79\xe4\xe5\x73\x4f\xf2\x44\ +\x68\x99\x60\xcd\x54\xa7\x28\x84\x76\x68\x5b\x6d\xce\x18\x6a\x43\ +\x6b\x5a\x15\x6c\x9c\x84\x11\x38\x01\xd6\x0c\xa3\x46\x78\x7b\x8a\ +\xa6\xba\x46\xe9\x54\x19\x05\x54\xf6\x45\xea\x3b\xfd\x56\x84\x57\ +\x06\x5b\xf3\x0b\xc3\x22\xf5\x81\x33\x76\xa1\xde\xdb\xfb\xde\x3c\ +\x36\x4c\xcd\x63\x6c\x99\xe1\x3a\x3e\xbd\xa7\x07\x4a\xa4\x49\x8c\ +\x98\x82\x9a\x32\x05\x2d\x6c\x3e\x0c\x3e\x2d\x7e\x5f\xef\x3c\x13\ +\xc3\xf5\x5b\x50\x21\xa8\x85\xe9\x73\x3a\x25\xa4\xd3\xf8\x7b\x17\ +\xe5\x81\xb0\x4e\xef\xbd\x79\x32\x7d\x4f\x30\xa2\x19\x93\x15\xbc\ +\x77\xa7\x9a\x64\x5a\xf9\x04\xf3\x91\xd7\x61\x90\x16\x2e\x60\x26\ +\xde\x27\xe9\xea\xca\x37\xc6\x8e\x52\xef\xa0\xc0\xc5\xe0\x04\x59\ +\x31\xe3\xba\x4c\x4b\x57\x44\xf7\x6e\x6f\x87\xed\x08\x40\x5a\xdb\ +\x04\xc5\x9f\xd7\x01\xe1\x07\xe1\xe4\x98\xc4\xb0\xbf\x40\xa0\xd7\ +\x86\x09\xe1\xa4\xc5\x9f\x6d\xe8\xc3\xd3\xeb\x6a\xa0\x76\x07\x25\ +\xa0\x68\x65\xa5\x54\x39\x8f\xc0\x99\x61\x02\x69\x89\xc0\xd9\x31\ +\x5e\xd9\x5e\x93\x7d\x42\x58\x0a\xa2\xca\xe2\x72\x25\x40\xab\x7c\ +\x6f\x6b\x7d\x6b\x08\x4a\x9c\xc0\x70\x91\x93\x22\x2d\x60\x9c\x7c\ +\xea\xb1\x4c\x40\x52\x83\x12\x91\x13\x62\xd1\x44\x20\xfa\x5a\x18\ +\xa0\xba\xb6\x4c\x06\xca\x10\xad\x6f\x2a\x79\x16\x66\x17\x2a\xae\ +\x09\x3e\x54\xa5\x14\xd9\x92\x76\x80\x07\x39\xb5\x81\xb3\x8f\x97\ +\x3b\x3d\x13\xcc\x3d\xbf\x52\xdd\x88\xba\x5c\x49\x81\x93\x0d\xc6\ +\xd5\x1b\x51\x85\x57\x72\x4a\x4f\xe0\xd0\xa7\xd1\xd2\xa6\xb9\x40\ +\x2b\xbb\x5b\x96\xed\x27\x0c\x7e\x6e\xad\x28\x07\x25\x90\x53\xd4\ +\x99\x12\x5e\x98\xe3\x3c\xbb\xe3\xe6\x59\xc1\xa1\xa5\xf8\x5e\x34\ +\x7d\x7e\x94\x16\x2f\xa7\x80\x69\xad\xe8\xbc\x13\x2d\x00\x8b\x30\ +\xaf\x34\xd1\x93\x2a\x13\x60\x7a\x5d\x72\xe2\x49\xb3\x57\x0d\x2c\ +\xcc\x54\x81\x32\x3d\x69\x31\x32\x8a\x04\xa9\x1b\x7c\x88\x8d\xb0\ +\x39\x9c\xf0\xf3\xb6\x58\xef\x8f\xaf\xce\x73\xa1\x79\x05\x21\x85\ +\xb7\x87\xbd\xf7\x81\x33\xa6\x09\x9f\x6a\x9a\x20\xab\x97\x53\x8d\ +\xef\xb1\x5b\x02\x5d\x11\xe1\xe1\xa0\xb5\x09\x9c\x09\xa7\x0f\x47\ +\x89\x90\x58\xad\x29\xb5\xb9\xd1\xd4\xee\x43\x15\x62\x39\x67\x63\ +\x87\xd0\x49\x00\xfb\x5a\x83\x37\x53\x28\xda\x02\xa7\xe1\x7f\x66\ +\x37\xa2\x88\x43\xc3\x37\x12\x79\xc0\x89\x5d\xa8\xb8\x7a\x53\x6c\ +\xe8\x13\xf3\x01\x18\x3a\x6f\x63\x92\xee\x3e\xfc\xca\xf0\x3d\x15\ +\x8c\x10\x53\x9f\x23\x73\x1b\x7b\x79\xd5\xb0\xf8\x9a\xd2\x49\xb0\ +\xf6\x85\xf9\xb6\x5e\x6f\x30\x9a\xca\x9d\xa7\xa8\x69\x76\x84\x2a\ +\xe9\x23\x0b\x52\xb9\xcd\x9f\x19\x30\xa0\x51\xa9\xcc\xe6\x1e\x15\ +\x31\x5f\xaf\x4f\x3a\x14\xaa\x33\xf7\x34\xb0\x28\xf1\x9b\x01\x06\ +\x54\xd5\xfc\x19\x4a\x9f\x7e\x12\x5f\xef\x6c\xa8\x60\xb5\xf5\x7a\ +\x07\x53\xa0\x82\x9c\xd0\x7a\x2b\xa2\x78\x29\x35\x37\x86\xfa\xf8\ +\xaa\x5c\x83\x7b\x73\x30\xd4\x2a\xbd\xf8\x78\xe3\x9c\x4a\x13\x3b\ +\x71\xab\x86\xad\xd7\xeb\xb2\xd2\xe2\x0c\x6f\x77\xd2\x16\xa3\x83\ +\xf7\xe9\xc6\x2f\xd3\xc1\x13\xb0\x9f\x51\xf2\x2c\xe0\x99\x8c\x88\ +\xaa\x69\xd2\xa9\x58\x35\xed\x88\x82\x18\xc2\x67\xa8\x92\x77\xf9\ +\x62\x9e\x2a\x30\x1f\x8c\x17\xb4\x5b\x37\x73\x39\x7c\xdc\x14\x52\ +\x41\x29\xd3\x46\xa4\xc6\x3d\x41\xe5\xe7\xd5\xeb\xbd\xd6\xbb\x1a\ +\x23\x7c\x3d\xf4\x09\x04\x55\xaa\x1e\xe5\x12\xee\x63\xa3\x66\x36\ +\x0f\xfe\x93\x26\x06\xec\xa8\x2c\xf4\xc0\xd8\xbb\x7a\xbd\x7e\x43\ +\x8f\x90\x18\xf7\xad\xc3\xde\x85\xc2\xd1\xaf\xa2\x8e\xe1\xe5\x09\ +\xf6\xa2\x4e\x4a\x4d\x1c\x0a\x3b\x2a\x4f\x93\xf5\x7d\x5f\xaf\xc7\ +\x00\x54\xb0\xde\x36\x68\xf9\x34\x09\x9c\x68\x1a\x3b\x4b\xae\x5a\ +\x1e\x29\x4c\x94\xeb\x95\xb0\x96\x9a\xb0\xa3\x8a\xd6\x0c\x5f\xaf\ +\x87\x4a\x81\xef\xfa\xb6\x5a\x2f\x45\x11\xbb\x15\x81\xce\xc7\x5e\ +\x83\x83\x13\x77\x63\x41\x51\xc0\xe2\x5b\xb4\x33\x3b\xaa\x7a\x54\ +\xfa\xf3\xf5\x88\x9f\x00\xd2\x15\x1a\x7c\xd1\xd6\x88\xa7\x2e\x02\ +\x75\x2b\xf5\xee\x3c\x96\x2b\x44\x28\x94\x4d\x8f\x5a\x01\x80\x6c\ +\xaa\x36\x01\x6b\xbb\x5e\xef\x93\x8e\x0c\xd5\xda\x52\x5f\x15\x01\ +\xeb\x19\xe9\xef\x92\x71\xaa\x2c\xeb\x51\x5f\x2e\x9c\x8c\xf2\x5b\ +\x9f\xba\xfb\x7c\x3d\xcc\x93\x13\x52\xa0\xf5\x9e\xc9\xe0\x6c\x7b\ +\x7a\x3a\x3d\x31\x46\xf3\x8b\xb4\x8e\x42\x46\x7d\xcc\xac\x3f\x7d\ +\xe9\x30\x81\xb3\xa2\xf5\x5e\x49\x81\x9a\xcc\x38\xf6\x4c\x6d\xa4\ +\x02\x35\x7f\x77\x6c\xa3\x9f\x36\x1b\x75\x78\xf8\x44\x1e\x10\x9b\ +\x94\x8e\x2b\x36\xb5\xc2\xe6\xc4\xd9\xd0\xee\x4e\x32\x5b\xb2\x85\ +\x69\xd2\x68\xf4\x14\x11\x52\x82\x08\x9c\x85\xfa\x28\x0b\x18\xa7\ +\xab\xe3\x8b\xbf\x91\x26\xd1\x0f\xd4\xeb\x15\xa7\x05\xeb\xec\xa8\ +\xdf\x33\xf9\xf8\xf9\x28\x9f\xf3\x4b\xcd\x29\x56\xdf\x9e\x93\xb2\ +\xb3\x47\x4b\x11\x74\xde\xd7\x43\x50\xaf\x57\xbd\x07\xeb\xe7\x1f\ +\xb7\xf4\xca\x84\x6b\x3f\xf2\xad\x69\x46\x5d\xad\xe3\x8c\x71\x42\ +\x4c\x39\x90\x2a\x3a\x7a\x9e\x12\x6c\x46\x6b\x7f\xf3\x0b\xaa\xe0\ +\x1a\x45\x81\x98\x4d\x29\xed\xcc\x38\x2b\xf3\x53\x03\x97\x99\x9f\ +\xfd\x5f\x6c\xb6\x9f\x10\xc2\xd4\xb0\x5e\xea\xf5\x5e\x52\xa5\xa3\ +\x40\x45\xc0\x2a\xfe\x90\xa6\xb6\x64\x3a\xd6\x03\x9f\x0f\x4a\x8c\ +\xb1\x87\x19\x15\xda\xd2\xc9\x8b\x07\xa7\x50\xa5\xd4\x68\xbd\xf3\ +\xf5\x4c\x4a\x7e\x9b\xce\x76\xc8\x69\xbf\xa1\xee\x5c\x1d\x01\x4a\ +\xb4\x3c\x7a\x3b\xea\x92\xe3\x30\xa3\xf9\xe5\x7c\x26\xf2\xf0\x22\ +\x36\x76\x50\xa6\x00\x95\x24\xc0\xb4\x91\x41\x04\x5c\x46\x47\xcd\ +\x28\x32\xb9\x3e\x6a\x06\xeb\x8d\x07\xa5\xed\x32\x50\xfa\xfb\x89\ +\x8e\xca\x59\x0c\x75\xf6\x50\x78\x28\x7b\x6a\x23\x67\x95\x50\x18\ +\x51\xb7\xb7\x77\xbe\xde\x27\x72\x7d\xff\x68\xd5\xd0\xfa\xd4\x15\ +\x1c\xbe\xaa\x3d\xe2\x83\x34\x85\xc6\x23\x5f\x42\x20\x4d\xe0\x0c\ +\x88\xde\xdd\x0f\x55\x93\x6c\xae\x84\x96\x95\x4e\x4c\xb1\x20\x1e\ +\xad\x2c\xeb\x61\x47\x53\x39\xcf\xff\xaa\x09\xb4\xbe\x48\x29\x7a\ +\x72\x22\x0a\xad\x47\xd5\x0e\x2e\x14\x04\x35\xe6\xb3\xef\xe2\x7b\ +\x20\xf5\xc5\x06\xe7\x42\x53\x28\xd3\x2f\xdc\xbc\x97\x0e\x32\x0d\ +\x44\xeb\xc9\x34\xa5\x85\xb4\x91\x5a\xde\x9b\xbd\x28\x40\x22\x24\ +\x21\xa4\x90\x50\xef\xeb\x51\x17\x69\x83\x85\x8c\x0e\x5c\x86\x8c\ +\x66\x96\x6d\x14\x77\xcf\x8c\xe7\x08\xaf\x19\xe5\xa5\xa6\xb1\x00\ +\xed\x83\xbc\xd2\x34\x46\x94\xe5\x13\xf5\x7a\x97\x26\x01\x46\x13\ +\x38\x07\xde\xd3\xec\xa8\x2e\x0b\xde\x37\x50\x53\x36\xeb\x92\x20\ +\x55\x8d\xc2\x40\xec\x6c\xfc\xbc\xa3\x28\x2a\x4c\x88\xa0\xbd\x42\ +\x79\xc5\xef\x59\x80\x88\x98\x91\xc7\xcb\xfe\x84\x8f\xb5\x89\xd6\ +\x4b\x69\x59\xf5\x08\x68\x6b\xa3\x51\xdd\xf7\x3d\x59\x5f\x6a\x82\ +\x7b\x73\x08\x83\x5e\x6e\x73\xd7\x41\x53\x64\xf3\x32\x71\xf7\x47\ +\xaa\x54\x98\xcf\xda\xd4\x11\xdc\xd7\xa8\x81\x32\x4c\x9f\xcb\xe3\ +\x60\xc4\x86\x79\xbe\x6c\xdb\x7d\x65\xa2\x2b\x88\x65\xd4\xa7\xa1\ +\x89\xfc\x0c\x31\x29\xc1\x94\x5a\x53\xe7\x26\x34\x61\x8a\x92\xeb\ +\x94\xc9\x87\x06\x90\x17\x23\xa0\x8a\x54\x13\x26\x18\xf3\x4f\x8b\ +\xf4\xda\x7d\x64\xa9\x1c\x0a\xd6\xd6\xac\x38\x1f\x8d\x31\x29\x1b\ +\x28\x34\xe7\xf1\xbb\xb0\x4a\xaf\x31\x09\xa7\x74\xf4\xe4\x8d\xbd\ +\x4c\x09\x38\x09\xa9\x93\x4e\xab\x4f\xbe\xba\xec\xbb\x4a\x22\x55\ +\x09\xea\x29\x10\x52\x51\x77\x5a\x0d\x45\x7d\x17\x21\x2f\x35\x3d\ +\x2e\xca\xc7\xdd\x9e\x3f\x37\x1e\x85\x1d\x95\x27\x45\x2d\x14\x11\ +\x3e\x01\x25\x21\x5d\xff\xa6\x43\x24\x9e\xa6\x74\x8b\x74\x6e\x22\ +\x13\x45\x31\xbf\xc1\x23\x6c\x66\x25\xc6\x03\xa1\x8b\x47\x3d\x45\ +\xad\x12\xc1\x96\x32\x52\x3d\x4d\xf9\x21\xa9\xdc\x35\xda\x88\x5c\ +\xed\xce\x10\x14\x22\x6a\xb7\x4c\x48\x96\x00\x28\xaf\x2e\x1e\x45\ +\x83\x56\x77\x87\x0e\x4f\x69\x7e\x79\xa3\x00\xbd\x6d\x14\x94\xc9\ +\xd2\xb3\x9c\x53\xb0\xef\xa2\x28\x94\xca\x44\x24\xa6\x82\x03\x7c\ +\x00\x69\x1b\xb4\xa0\xf6\x30\xf6\xaa\x51\x7a\xb0\x72\xf5\x04\xc5\ +\x30\x6f\x9e\x92\x04\x38\xf9\xa3\x2d\xa1\x0c\x0a\xde\xc9\x27\xf0\ +\x5d\x3c\x3a\xaf\x5e\xcf\x4c\xf7\x1d\x10\xff\x16\xcf\x3c\xec\xdb\ +\x33\x2e\xb4\xd8\x10\xde\x04\xd5\x53\x15\x22\x0a\x9d\xf7\xea\xa4\ +\x67\xeb\xbd\x71\xf2\xf1\x28\x6e\xd0\xf2\xd9\xbc\xf8\x12\xdd\x17\ +\xb0\xff\x7a\xe2\xbe\xc9\x38\x2b\x1a\x09\x7c\xa3\x4c\x2d\x5d\x42\ +\xfc\xe4\xa2\x7c\x98\xa7\x2e\xcd\xf7\xf1\x28\x28\xda\x1d\x39\xbb\ +\xb6\x27\x71\xf5\xf3\x65\x14\x05\x46\x5d\x69\x76\x75\x11\xce\x2d\ +\x88\xcd\x8f\x47\x73\x9b\x24\x4b\x79\xb5\x5a\x8f\x41\x04\x85\x81\ +\xf2\xaa\x64\x3c\x3d\x6f\xef\xc0\xfd\x21\xd2\x63\x50\x7b\x9f\x27\ +\xf1\xe4\x5c\x21\x11\xbe\xdf\xd0\xe3\x2e\x1d\x53\x06\x67\x8a\xa2\ +\x5e\xef\x7b\x89\xd0\x55\x22\x37\x0e\x03\x25\x16\x93\xc9\xe3\xcf\ +\x9f\x1f\x8f\x56\xad\xb3\x22\xec\xde\x19\xaf\xf8\xfa\xcc\x92\x14\ +\x62\x5a\xd2\x3f\xac\xaf\xa7\xc9\x42\x0a\x82\xf2\x00\xcb\x91\x23\ +\xa3\xb0\xcf\x5f\xf7\xe4\xc2\x51\xc9\x94\x54\xd6\x3c\x19\xbe\x9b\ +\x7e\x5c\x8a\xf2\x05\xa9\xab\x82\xab\x07\xc5\xa1\x16\x1c\x08\xae\ +\x51\xaf\xf7\xbe\xde\xb0\x7f\x7e\x3c\xea\x7b\x4a\xe0\xef\x6d\x0b\ +\x21\x6a\xf5\xb6\x5e\x6f\xbb\x20\xa0\x4e\xa5\x3f\x66\xad\x12\x0a\ +\xe6\xfb\x02\x23\xae\x4b\xf5\x09\x08\xb7\xfd\x24\xe9\x0c\xd3\x75\ +\xe2\xf3\x52\xb8\xbe\x3c\xc8\xa7\x46\x4f\xa2\xf5\xf3\xce\xd7\x1b\ +\x5f\xef\xfb\xf0\x01\xd2\x1a\x7c\x0c\xa8\xbc\x70\xbf\x68\x5f\x97\ +\x09\x19\xa5\xd5\x94\xc1\x21\x9d\xb8\xdf\xd1\x07\x4e\xfa\x78\xee\ +\x83\xf7\x18\xae\xc7\x19\x03\x38\xa1\xf5\x2c\x9f\xa6\x5e\x5f\xf2\ +\xe2\x8f\x36\x98\x0c\xa9\x73\xf5\x4a\xd5\x46\x82\x5c\x41\x02\x63\ +\x2b\x93\xcb\x05\xb1\xbc\x4d\x50\x6c\xee\xe4\x4a\x9d\x22\x33\xf7\ +\x7a\x02\x61\xd1\x2a\xd7\x1b\x6f\xef\x60\x12\xb3\x91\x23\x0d\x08\ +\x69\xb1\x66\xc9\xd7\x99\x7c\x75\x19\x9a\xc4\x0b\x43\xe4\x29\x8f\ +\xb2\x5e\x2a\x77\xae\x57\xc3\xd5\xeb\x25\xd2\xc3\xd0\x3e\x6c\x36\ +\x4e\xf1\xed\x38\xff\xc1\xd3\xaf\xb0\x06\x0a\xf5\x7a\x0c\x25\x24\ +\x7d\xc4\x2f\x08\x29\x8b\xa8\xd6\x99\x8c\xd6\xab\x12\xb9\x7a\x7d\ +\xc0\x6d\xf8\x8e\x32\xb8\x37\x50\x42\xce\x4f\xd3\x65\x27\x65\xd7\ +\x35\xf3\xe1\xb1\x15\xb1\x2c\x6b\xb5\x12\x21\x8d\xab\x75\x26\x5f\ +\x0f\xa3\xc5\xd5\xeb\xad\x74\x9a\xd4\x38\x28\xab\xb4\xa4\x37\x5d\ +\xb7\xf8\x83\xdc\xd0\xd4\xd6\xeb\x81\x15\xdd\x59\x7a\x9c\xa9\xc8\ +\x54\xe9\x71\x62\xc4\xf6\x95\xf0\x9d\x54\x73\xeb\xf5\xc0\x8b\xd4\ +\xb8\xc2\xb4\x29\xb2\x2b\x22\xd0\x6f\xde\xa5\xfa\xb4\xc2\x9b\x27\ +\x98\x52\x65\x3d\x88\x9a\x05\x94\x71\xe2\x46\xf4\xce\xb6\xcc\xba\ +\x95\x22\x87\x84\x22\x26\x51\x8a\x12\x68\x6f\xf0\xf9\x3a\xbd\x0b\ +\xc6\x1d\xbe\xde\x3a\x26\x46\x8a\x03\x8c\xe4\xef\x35\x35\xae\x51\ +\xb3\xf6\xe1\x03\x66\x82\xb7\xf8\xfb\xda\x79\x26\x01\xaa\x77\xcc\ +\xf3\xe3\x62\xbd\x15\xbd\x63\xc7\xf7\x8f\xef\x72\x7d\x4f\x83\xf9\ +\xfd\x8e\xb8\x7e\x14\xca\xc4\x24\x45\x1f\xbe\xad\x82\xf2\xca\xb9\ +\x71\xa7\xef\xa8\x86\x09\xd2\x8b\x77\x7d\xbe\x79\x2d\xba\xd6\xc1\ +\x93\x2a\xed\xab\x31\x85\xd6\x0f\x9a\xea\x94\x32\x31\xf5\x95\xb5\ +\xc2\xe6\xd4\xee\x42\x11\x94\x80\x9a\x6a\x4b\x6b\xb9\xac\x02\x37\ +\x95\x08\xb3\x59\x3e\x77\x07\x90\xf1\x62\xc5\x63\xa3\xbe\x6f\xc3\ +\x1f\x76\x27\x20\xaa\xbc\xeb\x70\x83\xdc\x9a\x07\x92\x82\xa2\x08\ +\x9e\x3b\x2b\x22\x04\x51\x6f\xd6\xf0\x09\x88\x7e\x5c\xae\xdd\xac\ +\xa7\xce\xc7\x96\xf1\xba\x0d\xb9\xf8\xf6\xe7\xaf\x48\x6c\x4f\x89\ +\x17\xd0\x94\x4f\x04\xd3\x84\x3a\xb1\x8c\x0a\xc0\x02\x6a\xef\xa0\ +\xea\x20\x88\xae\xbf\x9d\xd8\xdf\xb8\x3c\x6f\xbf\x9e\x1a\x00\x21\ +\x2f\x3e\x87\x2f\xb8\x1b\x1b\x17\x8a\x2c\x2e\x86\x22\x05\x48\x90\ +\x54\x6e\x56\x80\xde\xe3\xa0\x90\x9e\x69\x00\xd2\x12\xc4\x44\x16\ +\x3f\x08\xe5\xab\x01\xf4\x78\xde\xb7\x61\xf3\x3f\xf6\x74\x3c\x96\ +\xb4\x33\x25\x95\xcb\x37\x66\x34\x5a\x91\x73\x01\x8a\x3a\x98\x6a\ +\xec\x81\x12\xc2\x59\x8b\x95\x47\x7f\xc1\xc5\x04\xe4\x9e\x1e\x09\ +\xa9\xb9\x76\x78\xe5\xb9\x20\xf6\x75\xb9\xeb\x1a\x77\x22\xca\x12\ +\x8a\xab\xb1\x0b\x5a\x94\xa2\xa6\x0f\xdf\x79\x7b\x60\x25\x6d\x52\ +\xa8\xa0\x68\x18\xd7\x7e\xe0\xc0\x8e\xa7\x27\x94\xca\x5e\x34\xac\ +\x5f\xb9\x04\xa0\x0f\x8e\xda\x14\x35\x26\x1f\xe7\x99\xb0\x1b\xa1\ +\xa0\xb4\x68\xe6\xc6\xad\x80\xa6\xba\xa9\xaf\xe5\xd6\x61\x04\xce\ +\xfe\xa2\x92\x3e\x3d\xf1\x26\xc2\x2f\xd1\xed\x86\x14\x97\x20\x70\ +\x5e\x17\xad\xfd\xea\x0b\x28\xd3\x89\xeb\x47\xdd\xbe\x1e\x09\x1d\ +\xc6\xcc\x8c\x27\xa7\x94\x15\x85\x6d\x1b\x86\x73\xc2\x10\xb8\x12\ +\x94\xbc\xf8\x22\x45\x7a\x48\x8e\x0a\x4e\x89\xee\xde\x4b\x42\x9a\ +\x5a\x9d\xff\xad\xb3\xef\x7d\x7c\xb1\xba\x90\x85\x74\x61\x06\x15\ +\xcd\x2f\x66\xe0\xcc\x65\x26\x38\xc5\x7f\x4a\x49\xa4\x2c\x70\xaa\ +\x0d\x5c\x97\x6c\x33\x53\xf4\x9d\xab\x82\x9d\xfc\xfe\xd8\x18\xfd\ +\xbe\x50\x54\x0d\x3e\xdd\xbc\x35\x6a\x02\xd5\xe7\xe3\x54\x7d\x4f\ +\xe7\xc9\xa8\xed\x7e\xd0\x02\x8e\x70\x3e\x43\xdc\x2c\xb5\x26\x37\ +\x12\x5e\x03\xce\xeb\xf5\x02\x60\x44\xf9\x52\x65\x8a\x00\x13\xf1\ +\xa0\xeb\x70\xd1\x3c\x33\x1e\xc9\x51\x08\xa9\x95\x51\x8b\x35\x55\ +\x17\x0a\x19\x15\xa5\xb7\x94\x94\xd4\x38\x30\xd6\xba\x0d\x79\x54\ +\x80\xbe\x2f\x67\x98\x8a\x93\x40\x92\x52\x45\xdf\xf9\xef\x6a\x49\ +\xa1\xf9\xfc\x5b\x58\x78\x4f\x00\xfa\xcc\xd4\x50\xd4\x85\xf8\x80\ +\x2b\xa9\xf1\x82\x63\x67\x68\x3f\xf6\xf5\xce\xda\xcb\x66\xf9\x1b\ +\x02\x74\xf5\x68\x16\x94\xf4\x31\xd5\xdb\x7f\x1c\x42\x6a\xfb\x9b\ +\x17\x16\x4e\x87\x25\xc5\x76\x79\x00\x90\xe8\x28\x41\x12\x42\x29\ +\x4a\x53\x8c\x13\x81\xe5\x37\x46\x8d\x2a\xe3\x4b\x5f\x96\xeb\x63\ +\x26\x33\x65\x7a\x89\xb0\x69\x88\x47\xbc\x37\x42\xaa\x50\x99\xa2\ +\x1f\x84\x90\xce\xef\x29\x81\x94\x42\xeb\xd5\x90\xc6\x51\x32\xe0\ +\x8e\xa3\x6c\x38\x24\xb2\xa6\x1a\x7f\x80\xac\x4f\x14\xd2\x7f\xfa\ +\xc6\x33\x3f\x0b\xdf\x6f\x58\xda\xdd\xd7\xab\x20\x58\x9b\x3e\x45\ +\xb7\x1b\x5a\x65\x62\x8a\x92\x90\x3e\x31\x32\x5b\x91\xaa\x6a\xb3\ +\xdd\x1c\x6a\xa1\xa7\x60\x88\x92\x79\x40\x25\xd4\xed\x96\x25\x1e\ +\x89\x9f\x74\x7d\xf2\x8e\x2c\xf9\xab\xc6\x85\x8a\xbf\xa3\xd1\x28\ +\x9f\x0c\xfc\x12\x0b\xa9\x6f\xd6\x58\x58\xf9\x69\xb6\xa4\x6f\xf9\ +\x44\x88\x5f\x36\x0f\x29\x70\xf6\xaa\x84\xba\xc8\xcc\x3e\x21\x3d\ +\x6a\x4e\x89\xb5\x46\xd3\xd5\x27\x7d\xaa\xf4\xef\xb4\xf7\x15\x1e\ +\x13\xef\xc4\x3d\xd9\x6c\x49\x33\x90\x13\x8d\xae\x24\xa4\x5f\x57\ +\x51\xaf\x11\xe1\x9b\xae\x71\x34\x37\x67\x7a\xc5\xbc\xf0\x9e\x21\ +\x16\x90\x4d\xc0\xd5\xea\x72\xad\x5e\x34\x32\xf6\x82\x63\x3d\x3b\ +\x5e\x5e\x0a\x49\xfb\x43\x15\xd2\x9d\x4d\xe9\x8c\x6c\x0f\x60\xdf\ +\x12\x76\x4e\x18\xd7\x8c\x7b\xa8\x82\x3b\x6b\x2f\x66\x94\x70\x66\ +\xda\xa3\xa3\x77\xe9\xe8\xde\xbe\x9d\xd2\x61\xaf\xc4\x40\x77\x01\ +\xde\x86\xb5\x5b\x0e\xdf\x76\x06\x7d\x1e\x29\x84\xf5\x11\xf0\xa7\ +\xc8\x92\xc2\xd9\xd3\xa5\xae\x1f\xfc\x52\xeb\xb2\xf2\x53\xf7\x8c\ +\x18\xa8\xab\x34\xb5\x94\x09\x96\x09\x59\x3c\x6c\xf2\x8c\xbd\xaf\ +\xd3\xf2\xca\x55\xbb\x98\xa4\x9f\x57\x98\xab\x1f\x5b\xae\xb2\x32\ +\xe1\xab\xaf\x36\x8d\x59\xfb\x89\xaa\x46\x48\xf9\x3a\xdf\x3f\xff\ +\x82\x45\x79\xd5\x35\x57\x4f\x46\xc3\xee\x7a\x3d\xc3\x74\xa9\xf1\ +\xc2\x16\x43\x8d\xd6\x27\xfc\xf9\x4e\xbe\x75\x7e\x42\x57\xd1\xad\ +\x11\x9c\x47\xa6\x03\xb1\xa4\xef\xa6\xfb\x0e\x23\x49\xc5\x94\xbe\ +\x28\x96\x14\xe5\x9b\x68\xea\x01\x72\xef\xcd\xfb\x17\x2b\x57\xaf\ +\x77\xd6\xd4\x50\x94\x7d\xbd\x3f\x2d\x80\x91\x28\xb2\xde\xe7\x52\ +\x0a\x48\x99\x83\x67\x4e\x73\xf6\xf3\x72\x01\xfe\xbe\x51\x40\x28\ +\x82\xba\x40\x0a\xb6\x33\xec\xf3\x6e\xff\xc6\xe6\x73\x57\x46\x8a\ +\x5e\x31\x03\x79\x78\xff\x64\x67\x3a\xa4\x5b\x3d\xb5\x5e\x3f\x98\ +\xd3\x98\xe9\x8b\x0d\xa0\x66\x13\xf0\x9a\x47\x9e\x8b\xaf\xa5\xc6\ +\x5f\xbd\x08\x40\x45\x48\xf7\xdc\x8f\xb0\xe4\x3f\x63\x27\xcd\x34\ +\xc1\x1f\xe6\x22\x2b\x74\x40\x64\xf2\xfd\x91\xa2\xdb\x9e\x21\x4a\ +\x3e\x35\xe1\xbd\xe8\xfc\xde\xbc\x14\x40\xfd\x5e\x44\x3b\xc9\x70\ +\xc1\x5f\x51\x5e\xfb\xdb\xc1\x50\xbe\x90\x07\xa0\x2f\x2a\xd0\xf5\ +\x13\xa2\x28\xfd\xfb\x8e\x69\x8a\xd8\xe9\x1c\x8a\x54\x88\xf7\x71\ +\x0e\x87\x46\xb9\xb7\xe4\x24\x01\x1b\xc7\xe3\x9d\x01\xa4\xbf\x93\ +\x0c\x01\x54\x96\x81\xf9\x0c\xd5\x6e\xec\x0b\x45\x89\x1b\xfe\x96\ +\x5e\xc5\xd0\xc6\x01\x68\x11\x0a\xe6\x37\xed\x23\x21\xe5\xdd\x1d\ +\x79\xd1\x29\xc2\x3c\xde\xd6\x3d\x95\xf6\x69\xbc\x77\x57\x4b\xbb\ +\x4f\x56\x6c\x43\x17\x16\x16\x3a\xb6\xcb\xce\x3a\x29\x35\xe9\x87\ +\xe4\x78\x21\x50\x2d\xd2\x8b\xf4\x0a\xdf\x65\x2e\xe0\x8f\x47\x3f\ +\xa5\x7b\x37\x33\x4a\x91\xac\xa3\xbe\x99\x1a\xcd\x2f\x44\xc0\x49\ +\x04\xfa\x4b\x86\x96\x91\xf2\x6b\x9f\x9e\x24\xac\xf9\x61\xf8\x23\ +\xc1\xb8\xa0\x86\x67\x6a\xf4\xa9\xb5\x05\x65\x98\x87\xce\x7b\xf8\ +\x8d\x17\xde\x59\x16\xf1\x57\x28\x35\x7e\x31\xe3\x10\x8f\x75\x7d\ +\x4b\x55\xce\x84\xf4\x5e\xec\x98\x77\x13\xf1\x97\x4b\x71\xf3\x00\ +\x79\xe6\x2b\xa3\x4c\xaa\xd1\x0f\xc3\xa5\xc6\x5d\x1f\xbe\xad\x2e\ +\x2b\xef\x81\x76\xeb\x23\xeb\xe4\x7e\xe1\xed\x11\x6b\x7a\x6b\xa0\ +\x26\xdd\x7a\xfe\x45\x89\x4a\x6a\x2a\x98\x8f\xeb\x44\x2d\xe9\x86\ +\x91\x6e\x98\x78\x9f\x7c\x7c\x1c\x4d\x93\x01\x39\x1e\x15\x62\xf4\ +\xc9\x37\x85\xa5\x41\xcd\x6d\xb8\x55\xc3\x67\xf0\x81\x35\xb3\x3a\ +\x7f\xb4\x79\x39\xf7\x1f\x93\x00\x7c\x72\x72\x30\xc2\x59\xd4\x90\ +\x74\xbb\x58\x52\x15\xd2\xde\xde\x52\x02\x3d\xe6\xf6\xf2\x20\x9a\ +\xfb\x25\x92\xdf\xb3\x5e\xf9\xf4\xe2\x28\x4d\x9a\x95\xf0\x05\xa2\ +\x28\x80\x76\xfe\xa5\x16\x45\x87\x56\x57\x18\xa8\x43\xcf\x6e\x3f\ +\xf5\xe8\xf9\x56\xae\x6e\xe1\x0d\xc9\x76\x12\xd2\x22\x29\xf1\x37\ +\x30\xee\x4d\x69\xaf\x2c\x77\x2f\x3e\xbb\x3b\x79\xe9\xf5\xbb\x58\ +\xed\x0e\x4c\x6b\x32\xa1\xef\xbd\xee\x7d\x8f\x8f\x03\xc8\x7e\x03\ +\x25\xc2\x3c\x73\x3b\x72\xcb\x3c\xf9\xed\x08\x28\x7a\xe9\x39\x07\ +\x89\x36\x7a\x43\xa5\xbe\x1f\xcc\x23\xd2\x25\xd6\x1f\xa9\x37\xec\ +\x66\x4b\x1a\x63\xbd\xf2\x0f\x7b\xed\xb1\x77\x5a\x69\xd7\x63\x42\ +\xfe\xa9\xe3\x7c\x58\x97\xd6\x9b\xba\x9d\x6f\x77\xe3\x94\x5e\xba\ +\xf1\xd4\x1e\xc6\xc1\xb5\x0f\x4c\x26\x5f\xbc\x7a\x1f\x01\x78\x20\ +\x02\x7d\x8e\xf5\x47\xa3\x92\x18\x7f\xbe\x6d\x91\x0c\xd4\xb5\xee\ +\x5a\xf0\xe9\x4e\x89\xf4\x13\x7f\x09\x25\x8e\xb4\xb8\x23\x03\xdd\ +\x27\x1b\x04\x24\x3c\xd3\xd1\x1e\xc6\xda\xe9\x62\x45\x96\xff\x3b\ +\x14\x84\x57\x51\xf7\x4f\xe5\x4b\xfb\x19\x29\x01\xed\x2d\x07\x98\ +\x6f\x45\x92\x49\x18\xb1\x76\x3a\x22\x9c\x0c\x4f\x36\x79\x18\x9d\ +\x17\x7d\x6d\x73\x49\x32\x75\xa0\xfa\x03\xd2\xcb\xaf\x82\xf7\x98\ +\x56\x85\x8c\xcd\xe4\x20\x23\x49\x29\xd8\x98\xca\x95\x44\xec\x38\ +\xd7\x2e\x5d\x5f\x2b\xbe\x7b\x64\x03\x75\xe3\xf2\x38\x27\x98\x26\ +\x87\xcf\x13\x52\x1a\x9e\x28\xa2\xc0\x89\x5a\xa8\x27\xaa\xd8\x7b\ +\x68\xd2\x6b\xf7\xae\xed\xb1\x9f\xa9\x52\x35\xf7\x67\x53\xff\x73\ +\xa5\x42\x7a\x2f\x97\x1c\xbe\x35\x13\x91\xf7\xeb\xd7\xf4\xae\xab\ +\x0f\x1c\x3e\xb1\x67\x3a\x2a\x24\x05\x81\x3f\x19\x4b\x20\x5d\xd9\ +\x76\x41\x4a\x62\xe6\x08\x46\x3b\xc2\x47\xb1\xde\xdc\x04\x50\x55\ +\x2f\xe3\x90\x2d\x55\xaf\x54\x5c\x44\x94\x1b\x15\x22\xa4\x1b\x76\ +\x96\x65\x91\x2c\x35\xd2\x71\x8f\x12\x1d\x57\xef\x58\x4e\x93\xb2\ +\xa8\x93\xa1\xfa\x27\xa1\x28\x85\x7a\x40\xea\xae\xcb\xc4\x30\x32\ +\xea\xcf\xdf\xcc\xcc\xd3\x56\x7a\x13\x7f\x77\x8c\xe0\x41\x4b\x02\ +\x1a\xed\x67\x41\xc2\xb8\xfe\xd9\x6b\x4f\xf9\xfd\x1e\xc6\x43\x77\ +\x2d\x6d\xd9\xf1\xd4\xe2\x28\xab\x4d\x52\x87\x86\xb4\xe9\xe8\x03\ +\x90\xdd\x2d\x5a\xdb\xa8\x55\xa3\xb3\xd4\x94\x3a\x83\xbf\xc4\x40\ +\xc9\x8f\x12\x45\xdf\x4c\x7f\xa5\x61\x1c\x85\xf4\x0f\x7a\x4d\xb3\ +\xb0\x85\x60\x7f\x66\x39\x5d\x13\x34\xad\x91\xcb\xa3\x85\x07\x71\ +\xde\xd7\x96\x2d\x3e\x6b\x47\xfd\x31\x5b\x98\x28\x13\x3e\x1d\x22\ +\x2d\x07\x45\x0b\xf2\xa5\x8f\x8d\xc8\xe6\x93\x62\xa9\xdb\x3f\xb9\ +\x2e\xb0\x7b\x71\x27\xe7\x1c\xeb\xda\x24\xf3\x84\xaa\x8d\x7b\x7f\ +\xfa\x8e\xf3\xb0\x4d\xa0\x68\x17\xe7\x81\xd3\x8c\x92\xd3\x5e\x7a\ +\xdf\x74\x4a\x0e\xf1\xe5\x93\xbc\x8c\xe3\xf2\x7f\x11\x94\x74\x8d\ +\x7e\x52\xe5\xd2\x9d\x87\xb6\xb7\xa1\xb9\xd1\x95\x81\x26\x5d\x7f\ +\x6b\x1d\x34\xf5\xf5\x7a\x4f\x54\xa8\x15\x00\xf3\x7e\xe8\x4f\xf9\ +\x4f\x06\xde\xc9\x34\x3c\x31\x2e\x65\x7c\x98\x3c\xc0\x1d\x87\x27\ +\x93\x4c\xfe\x2c\xbc\x1f\x80\xe9\xee\x7d\x41\x46\xcf\x1d\x0c\x5d\ +\xe1\x32\xce\x2e\x22\xb1\x64\x7d\x56\xac\xe2\xae\xa5\x03\xba\x13\ +\x7e\x62\x5c\x61\xcf\x34\xf8\xe8\xc9\xc5\xc9\x28\xd3\xb4\xb8\x69\ +\x72\x16\xe6\xa3\x67\x1c\x50\x9d\xc1\x9f\xd3\x91\x5b\xe5\x08\x9e\ +\x53\xdb\xad\x61\x39\x4f\x42\x6a\xc7\x6d\x93\x11\xce\xac\x9b\x14\ +\xbe\xf0\x5d\xd8\x0e\xa8\xee\x26\xc2\xc4\xdd\xe0\x0d\xdf\xe4\xef\ +\xd2\xf1\xe6\x1e\x09\x5d\xa8\x7d\xde\xc6\x79\xcd\x74\x94\xba\x0c\ +\x44\x78\x11\x50\x73\xe5\x30\x14\x5f\xcf\x31\xa1\x29\xd7\x88\xa8\ +\xa7\x27\xfa\x47\x6d\xbd\x5e\xa7\xd7\xa5\x34\xdf\x6e\xe3\x8b\xfb\ +\xa6\x23\x86\x98\xa2\xff\x41\x29\xaa\xcd\x44\xad\x1a\x93\xb0\x1e\ +\xa7\x83\x1c\xeb\x65\xb5\x48\xfd\x91\x60\xa7\x44\x26\x72\xe6\x48\ +\xf3\xe6\x63\xbd\x7b\xee\xd9\xb0\x76\xff\x72\x55\x94\x85\xbb\xe1\ +\x8d\x50\xb2\x8c\x72\xe9\xd6\xda\x51\xd3\x44\x98\x00\xad\x3f\x19\ +\x4a\x0b\x4e\x36\x18\x6a\xba\x14\x04\x04\x15\x96\xf4\x92\x51\x3a\ +\xa0\x3f\xfc\x47\x76\xdf\xe4\xc8\x78\x36\x65\xb4\xf6\x77\x95\xa0\ +\xe3\x4d\x86\x7e\x18\x62\xfa\xb3\x22\xf0\xf4\x96\xf7\xc0\x88\x51\ +\x90\x4b\x1f\x93\x15\xc5\x5d\xe3\xb6\xb6\xac\x09\x52\x1c\xb8\x83\ +\x6f\xb2\x76\x34\xce\x3e\x50\x6a\xe2\x11\x54\xb5\x8d\xae\x1d\xda\ +\x94\x42\x4c\x2d\xda\x22\x5a\xd2\x1b\x26\x05\x0d\x45\x9a\x5a\xa8\ +\x8d\x12\x63\x69\x19\x4f\xab\xc2\x44\xe8\x64\xd8\xef\x49\xe9\x6f\ +\x22\xb4\xe7\x2c\x9d\x6b\x2a\xe3\xf2\x30\x05\xf5\xb9\xa0\x2c\xdd\ +\x1d\xde\x5c\xb8\x53\xb0\xd0\x7a\x7b\x86\x51\x2d\x3d\x90\x7a\x17\ +\xea\xa2\x27\xd0\xd3\xc7\x4f\x5e\x48\x7f\x8f\x42\xe7\x91\xa6\x21\ +\xd0\x58\x80\xa1\x76\x54\x7e\xfe\xcc\x1d\x9a\x72\xfd\x31\x46\x14\ +\x70\xa0\x4f\x5e\xeb\x53\x2c\xc2\x7e\x7f\x41\x0d\x0b\xe9\x9d\xa7\ +\xac\x7a\xb3\xb0\x9e\x50\xda\xcb\x89\x94\xf5\x65\xe7\xa1\x16\x6d\ +\x7e\xe9\xf2\xf5\xf0\x9d\x9e\xa2\xb6\x71\x58\x57\xa5\xa3\xbc\xd1\ +\xab\x83\x24\xf2\xd5\x8c\xd4\x8f\x5a\x86\xf3\xf7\x4d\x3b\xda\x77\ +\x67\x6f\x0c\x5e\x50\xd3\xdc\xde\xee\xf2\xcd\xfc\xe9\x39\x8f\xbc\ +\x62\xdc\xcb\x05\xa0\x4e\xed\x13\x75\xa2\xa0\x64\xd7\x4d\x84\x08\ +\x43\xbd\x25\x75\xd7\xd1\xa1\x23\x97\xa7\x33\xfa\xce\xd9\xaf\x31\ +\x29\xc2\x49\x4b\xeb\x13\xd0\x33\xac\xe8\x1d\xef\xf0\xa0\xb2\xb2\ +\x75\x82\x2a\xf9\x4b\x5f\x86\xad\x30\xaf\x72\x59\x5c\xd5\x7c\x93\ +\x78\x6a\xd0\x73\xdf\xe1\xe5\x9d\x0c\xd4\xf6\xe8\xf8\x6b\x52\x95\ +\xfd\x43\x7b\xe4\x92\x1e\x47\x51\x1f\x35\xc3\xd7\x57\x4e\xe5\x9b\ +\x09\x08\xf3\xb7\xac\xff\x83\x30\x52\xc2\x28\x44\x73\x5e\x46\x71\ +\x54\xdd\x5d\x4a\xe5\x6e\xee\xa7\xe1\x5d\xa8\xe2\xf4\xd7\x7a\xce\ +\x2f\x35\xd8\x9b\x67\x29\xd3\xfc\xec\x1b\xd6\x9f\xb5\x63\x79\x3a\ +\x1e\xa4\xb3\x44\xee\xff\x37\x76\x36\xad\xb6\x1d\x45\x18\xbe\xd1\ +\xab\x6b\x7f\xac\xbd\xd6\x59\xd7\xbb\xb9\xde\x13\x50\x07\x5e\x41\ +\x49\x40\x74\x20\x38\x88\xa0\x01\x11\x27\x89\xa0\x44\xf1\x6b\x92\ +\x20\x19\x29\x82\x1f\x71\x60\x06\x8e\x1c\x38\xf0\x27\x38\x53\x34\ +\x19\x38\x0a\xfe\x80\x8c\xfc\x05\x01\x41\x32\x50\xfc\x15\xe6\x74\ +\xd7\x5e\x4f\x57\xbf\x55\x6b\xdf\x3e\x7b\x9f\x73\x86\x45\x77\x57\ +\x75\x7d\xbd\x6f\x09\xa4\x6d\x70\x16\xa0\x13\xd4\x31\x16\xe8\x2d\ +\x85\x1e\x59\x89\x00\x20\xd0\x42\x9f\x14\xdd\xb0\x4a\xfb\xe0\x41\ +\x15\x92\xd9\x12\x09\x59\x85\x4e\x17\x98\x61\x2c\xe0\xf4\xe5\xe4\ +\x5b\x1b\xda\x4d\xb2\xa6\xbd\xdd\x67\x73\x6c\x47\x91\x92\x9d\xad\ +\x2b\x18\x81\x51\x8f\x5c\xb0\xcb\xa3\x5d\x51\x2b\xd5\x83\x15\xd1\ +\x14\x99\x42\xee\x34\x91\xab\x45\x5b\x28\xfe\xa0\xa1\x3b\xb2\x2a\ +\x99\x8e\x48\x6b\xa2\x29\xf5\x2c\xc4\x3f\xf6\x90\xf6\x72\x2a\x55\ +\x85\xe2\xeb\x63\x92\x1a\x65\xc9\xed\x73\xf8\x5e\xcc\x2a\x9a\x9a\ +\xa6\x5e\xe3\x57\x4c\xd3\x2c\x2a\x05\xda\x4e\xba\x1d\xb9\xa3\x44\ +\xf5\x48\xca\x00\xb9\x75\xba\x21\x62\x0a\x17\x04\xf6\x89\x7b\xca\ +\x66\xfa\x99\x0d\x4c\x42\xe8\xb7\x14\x6e\x0d\x01\xb0\xb2\x9c\xa0\ +\xc2\x96\x39\x56\x08\x86\x69\x92\x37\xa3\x0e\x59\x5f\x3e\x8a\x5b\ +\x07\xd1\x14\xb2\xfe\x84\x2c\x00\x66\x47\xb1\x4f\xf2\xd6\x77\xef\ +\x27\x0d\xe3\x91\x3e\x79\x81\xb9\xa1\x4a\xe6\x4c\x02\x42\x19\x13\ +\xf9\x46\xdc\x8e\x8a\x05\x0f\xcd\x13\x72\x72\xf8\xc4\x76\x81\xcd\ +\x47\xab\xc8\x3c\x39\xfe\xee\x61\x96\xfc\x83\x28\xbc\x8c\x3d\x92\ +\xc2\x88\xea\x13\xd2\x16\x7d\x2f\xa2\x0a\xda\xb2\x01\x09\xc6\x7e\ +\x09\x18\x21\x21\x20\x05\xd5\xa0\x3b\x0a\x5b\x41\xaf\x4d\x7d\x8e\ +\xcc\xda\x85\xa1\x23\xcb\xfc\x3c\x30\x77\xfc\x76\xfe\x68\xc3\x94\ +\x99\xf2\x8f\xaa\xd6\x73\x49\xdd\x35\x45\x5c\xb7\x56\x49\x19\x24\ +\xd5\x8e\xe6\x02\xc2\xca\x93\xaf\x0e\x29\x89\x07\xf5\xf3\xb2\x85\ +\xa0\x27\x54\x1e\x07\x5f\xa9\x9c\x4d\x99\xd8\xd1\x9e\x97\x8a\xa3\ +\x57\x62\x2a\xc0\xe0\x8c\x39\x74\xea\xbe\x49\x94\xaa\x3e\x89\xaf\ +\x84\xea\xcc\x86\x0a\x1c\x30\x5d\x2a\x92\x0e\x1e\x67\x8b\x21\x95\ +\x67\x29\x99\x81\x91\x6f\xe9\x75\x7c\xfd\x8e\xc9\x0d\x32\x4f\x06\ +\xe4\xb2\xea\xfc\x80\xb8\x42\x8c\xcd\x3e\x22\xaa\x52\x92\x09\x3e\ +\x2c\xc7\xd7\x17\x61\x2f\x9b\x79\x10\xde\x61\xb0\xa1\x29\xdf\x93\ +\xba\xa4\x4b\x8b\x15\x22\x60\x42\x4a\xa1\x44\xbf\x8e\xaf\xb7\xec\ +\xbd\x94\x6c\xab\x94\x34\xe4\x06\x31\x13\xa0\xf0\xee\x8a\x22\x2f\ +\x96\x34\xe1\x1f\xe5\xae\x2e\x80\xac\x43\x7c\x3d\x68\x4b\xc9\xe9\ +\x15\x4d\x32\xc3\x1f\x3c\xf5\xe0\xea\x95\xe8\xcb\x65\x9c\xc5\x3a\ +\x21\x2a\x1f\xcc\x53\x8c\xaf\x27\x00\x65\x4b\x57\x64\x35\x58\x11\ +\xe9\x1b\x1f\x1a\xc5\x4f\xa3\x91\x35\x5c\xe2\x9b\xf2\x8f\x7a\xc6\ +\x02\xc4\x54\x30\x63\x67\x9f\x7a\xac\xc8\x18\xa2\x97\xb1\xa3\x91\ +\x2a\xa1\x48\xa2\xf7\x19\xff\x68\x82\xaf\xa7\x81\x30\xec\x80\x30\ +\x5d\x32\xc8\xe5\x31\x47\xad\x23\x35\x0b\x6d\xf2\xa0\x70\x30\x22\ +\xc2\x3f\xba\x85\xaf\xe7\x97\xb3\xa3\x7e\xbe\x80\xe8\x12\xd8\x45\ +\xec\xa8\xc8\x88\x7d\x8a\x9d\x3c\x9f\xd8\xe9\x76\x74\x0b\x5f\x2f\ +\x6c\xd3\x15\xc6\xc6\xfd\x54\x6d\x52\x43\xaa\x53\xa4\x70\xf2\x52\ +\xfe\x51\xdd\xd1\xd8\x3c\x91\x76\x3a\xe8\x6b\x0f\x7f\xbf\x5a\x27\ +\xaf\xee\xd0\xbf\x2c\x28\x3f\x31\xd3\x36\xff\xa8\x32\x68\xdd\x64\ +\xf8\x7a\x35\x4d\x3c\x4f\x0e\xd9\xa0\x7b\x89\xa1\x52\xbd\x07\x13\ +\x1e\xf3\x8f\x2e\x82\x0b\xbd\x8e\xaf\xc7\x6b\xc6\x79\xe2\x5d\xb2\ +\xdf\xba\xb3\x3c\xf6\xa2\xf7\x68\x51\xca\x3f\x9a\x95\x18\x73\x7c\ +\x3d\xaf\x13\xac\xc3\x20\xc1\x81\x30\xf6\xd6\x89\x0f\x82\x32\x1a\ +\x3a\xcf\x95\x64\xfc\xa3\xd7\xf1\xf5\x09\xdb\xb8\x32\x16\x0c\x6e\ +\x47\x11\xd2\xbf\x4d\x20\x6d\x49\x43\x39\x19\x73\xfe\xd1\xd3\x35\ +\x7c\x3d\x0b\x0a\xd2\x11\x0f\x4a\xd5\x1d\xa5\x4f\xea\xb6\xc4\xf6\ +\x3a\xf4\x48\x11\xcc\x78\xf8\x57\xf0\xf5\xe5\x83\xb0\x63\xcb\x3a\ +\xdc\xc9\x29\xa1\x88\xb8\x79\x38\x79\xc2\x46\x17\x33\x3e\x51\x5d\ +\x3e\x65\xf8\xfa\xb0\xcf\xf5\x68\xc2\xa2\x4c\x89\x26\x11\xd6\xcb\ +\x02\x5f\x1f\xb3\x62\x13\xdb\x6b\xda\x31\xc7\xd7\x6b\x52\x07\x5a\ +\x85\xf5\x2b\x03\x8d\x45\xe7\xf5\x61\x6a\xe4\x65\x09\x6d\x3f\x8b\ +\x44\x6e\x88\xaf\x07\x6e\x8b\x88\xf6\x3f\x6c\x99\x6e\x61\x41\x75\ +\xe4\x15\x0a\xa5\x15\x7b\xf6\x14\x9a\x79\xc9\x3d\x6d\xe1\xeb\x19\ +\x84\x50\x17\x47\x0f\x5b\x26\x79\x71\x0d\xf0\x9a\x25\x49\x12\xf4\ +\x09\x31\x91\xb6\x1d\xc2\xb9\x8d\xaf\x4f\xde\xfa\x31\x65\x28\xaa\ +\x82\x21\x6a\x08\x05\xef\x08\x9f\x9e\x8e\x7f\xf4\xf6\x2a\xbe\x3e\ +\x19\x10\x0d\xe7\xb4\x2e\x94\x49\x3d\x7c\x1d\xc1\xfb\x94\xfc\xa3\ +\xd7\xf1\xf5\x88\x39\xd6\x0f\x14\xc9\x86\x1b\x91\xe5\x67\x72\x65\ +\x44\xbe\x5a\x6f\x50\xfe\x51\x84\x4e\xf1\xf5\x07\x18\xb4\x5c\x80\ +\x67\xd2\x9a\x88\xfe\x71\xa2\x1a\xe2\x42\xd1\x60\x63\x79\x9b\xae\ +\xf1\x8f\xe6\x50\x36\x2a\xe0\x46\xa8\x81\xa4\xe8\xfe\x51\xe8\x0a\ +\xe4\x7d\x92\xf8\x0e\x63\xef\x72\xce\xd7\xf8\x47\x29\x31\x26\xf8\ +\x7a\x26\x33\xf9\xa8\xde\xe6\xdc\x31\x4d\x4a\xa7\xd7\x63\xa2\xc2\ +\xe5\xa7\xb4\xd8\x7f\x39\xff\x28\xc1\x1d\x06\x9f\x00\x84\x1d\x45\ +\xd4\x51\x20\xeb\x5e\x48\xd8\x1c\xc5\x8b\x72\x42\xfa\x51\xd6\x29\ +\xff\x68\xee\xe6\xb1\xe0\x24\xdb\xa3\xf5\x58\x53\x62\x26\x2d\x85\ +\xea\x70\xcb\x51\xc3\x7a\xe4\xcc\x38\x72\x23\xfe\xd1\x80\x00\xa2\ +\xda\x51\xdb\x53\x84\x84\x7b\xd2\xb8\x4a\xdc\x08\x56\x2d\x88\xe6\ +\x47\x8f\x42\xd9\x52\xbe\xa7\x04\x82\x71\xea\xb6\x73\xbf\x87\xfb\ +\xe3\xd0\xe7\x75\x72\x98\x50\xfd\x10\x86\x28\x53\x89\x67\xcf\x0a\ +\x1f\xfb\x96\x48\x69\x03\x5f\x7f\x01\xd8\x83\x13\x41\xcc\xe6\xd8\ +\xa3\x34\xd9\x80\xb4\x81\x09\xf5\xe2\xf2\x1b\x09\x95\x7f\x54\xf1\ +\xf5\x6a\xf2\xed\xe8\xfb\xb3\xf7\x13\x9a\xb4\x70\x47\x58\x2f\xe6\ +\xc9\xf4\x28\xa8\xdf\x0c\x79\x63\x26\x51\xa8\x89\x99\xe2\xeb\xf7\ +\xba\x9d\x8c\xba\xd3\x01\xd1\xae\x6c\x0b\xc0\x1a\x74\x3d\xd1\x9d\ +\xbb\x00\xd2\x49\x18\xbc\x4c\x37\x31\xbe\x1e\xa7\x44\xf6\x15\x6a\ +\x4f\x65\x2b\xc0\x77\xa2\x3d\xcb\x67\x9c\x39\xf8\x84\xe1\x2d\xb9\ +\xa3\xf8\x79\x62\xf3\xd9\x52\x3f\x6e\x3b\x87\xaf\x32\x7e\x53\xed\ +\xe8\xdc\xcc\x10\xa3\x6b\x3c\x0d\x45\x58\x4f\x8d\xaf\x97\xe7\xc9\ +\xc4\xcc\x20\xc1\xe5\xeb\x58\xbe\x26\x47\xde\xbf\xb8\xae\x71\xcd\ +\x38\x73\xec\xdb\x06\x1f\x2c\xf8\x7a\xf2\x92\x25\x73\x23\x8d\x8f\ +\x9d\xa4\x45\x46\xb6\xd2\x75\xb6\xb7\xf9\xfb\xb9\x4f\x3c\xf1\x41\ +\x9f\x32\xa7\x64\xa7\xf8\xfa\x4e\x9b\x50\xa6\xf0\x8a\x32\xb1\x85\ +\xc1\x7c\xed\x1d\x75\x53\x06\xe2\x61\x2d\xf6\xc1\xc7\x07\x78\x25\ +\x9e\x53\xd4\xf3\xc4\x8e\x3a\xe6\xbc\x60\x98\xb1\x9a\x51\x74\xa9\ +\x2e\x2c\x68\xc7\x44\x48\x10\x9a\xb0\xb7\xe7\xf8\x7a\x74\x1e\xfb\ +\x24\x05\x1c\xa4\x15\xdf\xc4\x98\x08\x69\x7c\x72\xbc\xd8\x02\x12\ +\x42\xca\x65\x91\x28\xf4\x14\x46\x76\x72\xf4\x08\x8b\x98\xa2\xf6\ +\xd8\x51\x98\x54\x58\x45\xe3\x7d\x0e\x7f\x50\xea\x51\xfb\x2f\xc3\ +\x8a\xb0\xc0\xd7\xfb\x58\x04\xd3\xc4\x0f\x02\x73\xf8\x75\x2b\xe1\ +\x79\x34\xbd\x72\x7c\x15\x4e\x46\x79\x45\xa9\x31\x0b\x83\xd6\x4d\ +\x8c\xaf\xc7\x3a\x89\xa7\xc7\xd1\x87\x73\xee\xca\x9a\x64\x06\x06\ +\x7e\xbe\xcc\xb5\x55\xe0\x55\x0e\xb7\x44\xa3\x28\xd6\xb3\xad\x44\ +\x76\xeb\x8f\xef\x19\x77\xf3\x99\xb8\xa0\xee\x09\x75\x1e\xbe\xef\ +\x73\x25\x99\x9b\xf3\xe1\x67\xf8\xfa\x68\x2b\x19\x1a\x29\xec\xed\ +\x2d\x6f\x9e\xce\x35\x75\x43\x0e\xab\xcc\x01\xf1\x6c\x92\xc3\xdf\ +\xc6\xd7\x7b\x07\x1f\x0b\xda\x19\x27\x64\x85\x37\xcf\xcf\x3c\xe3\ +\xf0\xcd\x69\xae\x60\x3b\xa5\xc3\xc7\xde\xb3\x36\xf0\xf5\xf6\xe5\ +\xec\xdd\x4a\x95\x1e\x65\x12\x97\x64\xb6\xdf\x0b\x3f\xb3\x28\x93\ +\x7d\xc8\xe2\x67\x7c\xf8\x8a\xaf\x57\x7f\x74\x64\x5f\x51\xfb\x89\ +\x69\xeb\x8d\x5f\xca\x20\x0c\x2e\x29\xf1\xb2\x9a\x27\x0d\x42\xf3\ +\xf9\xf5\xdb\xf8\xfa\x91\xbe\xa7\xc2\x8f\xab\xed\xa3\x13\x75\x11\ +\xb6\xd5\x5d\x52\x57\xb3\x4b\x4e\x5e\xfa\xc9\x6e\x25\xae\x8f\xf1\ +\xf5\xda\xaa\x01\xf1\x6c\x3c\x4d\x4a\x03\x26\x3d\x7a\x64\xf5\xa2\ +\x6e\xd7\xeb\x73\x7c\xfd\x6e\x0f\xe7\x2c\xe3\x8c\xd5\xc9\x23\xa5\ +\xe3\xcc\x92\x6f\xc8\xf5\x6c\xf8\x45\x9f\xd4\x8a\xea\x24\x46\x9d\ +\x5f\xaf\xf8\xfa\xbd\xb8\x7a\x8e\xca\x55\x75\xaa\x6a\x7d\x5f\x11\ +\x25\xe9\xe8\x5e\x7b\xc5\x06\x02\x0a\x8e\x76\x34\xc7\xd7\xab\x4b\ +\x42\x68\x6f\xdf\xee\x65\xba\x44\x23\x38\xa6\xed\xc2\x1f\x9d\x3b\ +\x7f\x34\x8f\xf0\xd4\xc3\x57\x34\x1b\x62\x6e\x9b\x27\xb8\xf3\xcc\ +\x86\xc2\xe3\xac\x61\x72\x5c\xbc\x21\x45\x66\x9f\xed\x7a\x7d\xab\ +\xf5\x7e\x36\x38\xde\x28\x5e\xbe\x8c\x5d\x9e\x68\xce\xe2\x09\x95\ +\x45\x70\xa7\x0b\x9f\x64\xd9\xe4\xc3\x6f\xb5\x5e\x0d\xa9\x7b\xeb\ +\x35\xe5\x8c\x87\x3f\xb4\xc9\x52\x15\x90\x70\x19\x4b\x9a\xcc\x6c\ +\xb8\xed\xf8\xf0\xc3\x51\x08\xbb\x36\x91\x7b\x84\x7e\x74\x54\xb5\ +\x67\x49\x26\x4f\x94\xc9\x61\xee\x74\x54\x8b\x1e\x3c\x5a\x1f\xe3\ +\xeb\xe3\x72\x28\x6f\x93\x32\x68\x91\xbc\x67\x2f\x35\x3b\x4e\xbc\ +\xa4\x45\x26\x01\x38\x08\x1f\x7e\x8c\xaf\x4f\x1a\x5f\x98\x79\x84\ +\xdf\x5c\xfd\xbc\x2a\xe2\xe4\xa0\x96\x62\x48\x17\x18\x0b\x36\x07\ +\x1a\x2b\x1f\x7e\x8e\xaf\x97\xc4\x73\x11\x96\x9f\x78\xfe\x49\x55\ +\xfc\xde\x3a\xe1\x2d\xd3\xde\x8e\xf2\x83\x6a\xc8\xb5\x9e\xe5\xf1\ +\xf5\x28\x13\x05\x3b\x52\x10\xb5\x20\x26\x64\xe3\xf8\xf8\x2e\xad\ +\xb7\xac\x6f\x3d\xde\x53\x94\x79\x92\xfd\xbc\xd5\x7a\xbd\xe2\xeb\ +\xf5\x8e\xc2\x3a\x1d\x28\xfe\xd4\x06\xcc\x7a\x47\x81\x34\x30\x2a\ +\x18\x95\xf7\x61\x68\x7f\xf8\xd4\xeb\x63\x7c\x7d\x18\x2a\x37\xb9\ +\xa7\xa3\x97\x72\x98\xf0\x46\xd0\xa6\xa8\xce\x98\x03\x58\xb3\x29\ +\xc1\xdb\xf8\x7a\x5b\xea\x3d\x51\x60\x74\xc3\xb9\xa4\x75\x78\x0c\ +\xcc\x13\x08\x56\x9f\x7c\x22\x89\x2f\x4a\x2f\xf5\x7a\xe2\xfa\x48\ +\xce\xa6\xa5\x24\x9e\x69\x3b\x55\x8d\xaf\x5a\xb4\x62\x43\xe9\x28\ +\xd1\x66\xc7\x00\xd3\x12\xbd\xa2\x32\xbf\x5e\xeb\xf5\x87\x5e\x4a\ +\xbe\x91\xb0\x36\xf8\xaa\xe2\x81\xa7\xbc\x2d\xd3\xa1\x2e\x63\xd8\ +\x7a\x3e\xbf\x9e\xb0\x8e\xc8\x49\x56\x3f\x6c\x9d\x3a\x38\x4f\x28\ +\xda\xef\x82\x11\x92\xb8\x33\x9d\x25\x12\x87\x6a\x6d\x39\x9f\x5f\ +\xcf\xe9\x87\x99\x32\x24\x0d\x0a\x77\xae\xed\x69\xf2\x31\xe8\x52\ +\x23\x27\xd0\xe0\x9a\xd0\x63\x3f\x7d\x5b\x89\xcc\xaf\x37\x01\xa3\ +\x1d\x1d\x11\xf0\x78\x64\x47\xb5\x7f\x94\x87\x14\x8b\x8f\xb0\xbe\ +\x55\x43\x79\x1d\xa9\x8c\x64\x7c\xf8\xfa\xd8\xdb\x57\x63\xbc\xe3\ +\x31\xf6\x48\x10\x51\x03\x3b\x90\x57\x46\xfc\x81\x83\x2f\xea\xf4\ +\xb4\xf5\x7a\x8f\x61\xf5\x7b\x6a\xed\x3a\x91\x8c\x48\x6a\x2f\xbe\ +\x3f\x7a\x86\xb2\xb1\xa7\xf3\x90\x95\xc1\x89\x9c\xf2\x7a\xbd\x05\ +\x77\xa2\xf3\x48\x7b\xf4\xbd\x3a\x5a\x67\xb2\x2b\xca\xd1\x0b\x58\ +\x04\x84\xd8\x80\x94\x00\x58\xd1\x27\x66\x83\x07\xd3\x25\x08\x98\ +\xa5\x99\xc8\x3e\xcc\xb9\x0b\xdb\xc9\xc6\x15\x66\x2d\x34\xf3\x94\ +\xc3\xb2\xc7\xe9\xea\xd1\x6b\x4d\x4c\x22\x50\x7f\x09\xdc\x63\x0f\ +\xe6\xc6\x8e\xbd\xc8\xaa\x3b\xca\xe3\x04\x7e\x99\x52\x18\xe9\x87\ +\x64\xd8\x19\xf5\x7a\xbc\x3c\x1a\xc7\x15\xdb\x20\x73\xee\x48\x90\ +\x18\x24\xbc\x27\xab\x30\xd3\x04\x9d\x4a\x6c\x45\xf1\xa1\x94\xfe\ +\x43\xd1\xb6\x80\x58\x3d\x4e\x88\xa4\x53\x3e\x97\xed\x52\x0b\x99\ +\x78\x9a\xc0\x58\xf7\x75\x50\x11\x96\x3b\x2a\xe5\x1b\x89\x97\x70\ +\x4b\xe4\xec\xed\x57\x6b\x45\x11\xd5\xde\xf9\x89\x70\x69\x05\x85\ +\x03\x0e\x64\x8e\xd0\x1c\xbe\xf5\x18\x7c\x85\xad\x37\x7b\x8a\xd2\ +\x67\x75\x26\x9d\x1b\xa8\x6f\x3d\xe6\x74\xc2\x3e\x61\x46\xcb\xd7\ +\xfc\x66\x9d\x72\xc7\x9e\xea\xfc\x7a\xa4\x24\x58\x0a\x10\x77\xa3\ +\x26\x75\x1a\xcc\xdd\xc0\xae\xe2\xe8\x4d\xbd\x94\x33\xe9\x31\x9d\ +\x6c\xa9\xe0\x0b\xc1\xd7\xfb\x85\xb9\x2f\x29\x09\xd6\x88\x32\xa5\ +\x13\xee\x7c\xbc\x3c\xf1\x42\x31\xdb\x32\xe6\x80\x78\x36\x68\x2a\ +\xda\xe2\xc3\x17\x0a\x4a\xcd\xe1\x73\xf4\xbd\x8f\x37\xc1\x3a\x8c\ +\xb1\x0f\xa1\x6c\xb6\xb9\x71\x04\xba\x28\xbe\x3e\x8c\xeb\x31\xf7\ +\x87\xd0\x71\x8e\xb5\x7e\x6a\xae\xa8\x09\x8a\x3a\xa1\xf5\xeb\x0f\ +\x88\x60\xcd\x8d\xcb\x12\x12\x4a\x21\xa7\x41\xf3\x47\x37\x05\x41\ +\x94\xde\xc4\x2c\xa2\x32\x5c\xa2\x88\xea\x41\x77\xe4\x47\xa3\x6d\ +\x15\x35\xca\xd1\x37\x88\x9b\x5d\x00\x24\xf5\xe5\xfa\xfa\xb1\x93\ +\x9f\x2c\x1c\xd1\xa2\xed\x42\xe1\x4e\xd3\xa3\x32\xe0\x32\xe7\xc8\ +\x45\xf1\x99\xcb\x26\xba\xe4\x8d\x53\x2b\x2e\xbb\x39\x51\xb0\x35\ +\x39\xa9\xd7\x03\xb2\x57\x65\x52\x31\xf1\x9e\xc2\xa2\x18\xcb\x67\ +\x1d\xe3\x7a\x3d\x83\x10\x6c\x43\xcd\x71\x9e\x92\x27\x94\x08\x54\ +\x23\x26\x56\xc6\x87\x6f\x1f\xea\xa1\x7e\x80\x1c\xb2\x2a\xe1\xb4\ +\xb2\xa9\x90\x7c\x42\xe5\xbd\x53\xa2\x4b\x04\x25\x53\xa2\xe6\x89\ +\x8a\x6d\x14\x8c\x60\xf1\x11\x16\x40\xc3\x1b\x9f\x7d\xf2\xe4\x1b\ +\xf7\xab\x9c\xb0\x68\x45\x3d\x3a\x14\xc5\x00\x5e\xc5\x37\x14\xc0\ +\xc0\xa9\x8f\x42\x9c\xa8\x72\xfe\x48\x28\xe3\xce\xee\xdf\x2b\xeb\ +\x2f\xc5\x1d\x2d\x1f\x77\xf4\xdf\x7c\xe9\xcd\x97\x8b\x26\xcd\x92\ +\x1c\x97\xa8\xbe\xc3\xd7\x4b\x36\x0f\x71\x23\x98\x90\x3f\xf8\xde\ +\xd5\x1b\xc6\xdf\xdf\xab\xeb\x23\xa3\x79\x79\x45\x54\x9b\x81\xf1\ +\x7c\x61\x04\xfc\x77\xa1\x4d\x4c\x30\xd6\xd8\xd2\x7e\xc5\x7c\xf8\ +\x76\xe4\xf6\x4d\xeb\xf5\x9a\xd1\xfb\xc5\x85\xdd\xf1\x51\x51\x25\ +\xbf\xa3\xcf\x54\x92\xe1\x93\xd9\x4e\x53\xa8\x6e\x57\xd3\x82\xd8\ +\x21\x63\x9c\x0e\x71\x2d\xbe\x5e\xbf\x8a\xca\x25\xfd\xda\xf7\xdf\ +\xfa\x74\x1d\xb0\x33\xc8\xcc\xab\x1f\xdd\x33\x66\xf7\x36\x66\x1a\ +\xe2\xa2\xed\x76\x92\x4c\x93\x0f\xb6\x0e\x54\xee\xc8\x38\x33\x3c\ +\xd0\xf9\xf8\x87\x8f\xc2\xe3\x6c\x9a\x64\x9d\x2f\xff\xaa\xdc\x85\ +\x67\xd7\xfb\xa0\x6f\x68\x24\xe8\xf5\xf9\xf5\xfa\xdc\xfb\x1c\x3e\ +\x27\x8f\xc1\xff\xdb\x85\x6c\x7c\xe8\x02\xbc\x8f\x17\x52\xa3\x42\ +\x3f\x5d\x58\x32\x87\x5e\x46\x9f\x2b\x61\x5d\x9f\x5f\xdf\xc7\xf5\ +\x5a\x10\x43\x4c\x6b\x29\x18\x2b\xa7\xeb\xeb\xc7\xa2\x4b\xbe\x57\ +\xe3\xfe\x97\xff\xfc\x70\x37\xd3\x03\xa1\xfe\x7d\x9e\x1f\xdd\x9e\ +\x5f\xaf\x3a\x2f\xf5\x7a\xdd\x51\x23\x4b\x9e\x6c\x4f\x7b\xa3\x3f\ +\xcf\x02\x69\xd1\x0c\xc4\xd6\x5b\x0f\x6c\xfd\xee\xcb\x6c\x4b\x87\ +\x67\xb2\x23\x67\x28\xe3\xc8\xc6\xae\xa8\xb0\xdf\x14\x82\xad\x22\ +\xa4\xd8\xd2\xc5\x66\x49\x2d\xf6\x9a\x46\x31\x13\x9f\x56\x50\x6a\ +\x8c\xfb\xf2\x29\x7f\xee\xe4\xdd\xfb\x3e\x32\xa4\xb5\xe4\xbd\x10\ +\xaa\xac\xec\x1f\x77\x97\xf4\x1f\xe7\x6e\x86\x18\x84\x44\x8c\xeb\ +\xd0\xb6\x12\xe2\x7a\x96\x8b\x42\x29\x31\xc2\x46\x46\x0d\x5c\x3b\ +\x08\x99\x6e\xa9\x47\x3f\x7d\xa8\xb0\xeb\xed\x64\xac\x29\x72\x56\ +\x92\x5c\x62\x11\xc5\xdf\x5c\x2d\xda\xf2\x34\x61\xa3\x92\x44\x2e\ +\x1b\xcb\x2a\xde\xd3\x7b\x65\x44\xcb\xa9\xa4\xca\xb1\xa4\xf3\xfa\ +\xb7\xca\xc9\x0c\xce\x84\xa4\x46\x47\x21\xa8\x61\x0a\xbb\x9e\xf4\ +\xfd\x64\x1d\x1b\x96\xb7\x69\xfa\x5f\x99\x62\xf1\xe4\x7d\x0b\x46\ +\xea\x5a\x2c\x14\x99\x7e\xf7\xb3\x32\x5c\xc2\xec\x3d\x3b\x4a\xa0\ +\x1c\x2b\x13\x5b\xea\x61\x8c\xcc\x42\xd0\xc8\x3e\xec\x72\xc6\xd1\ +\x7b\xc6\x5e\xd2\x3f\xed\x70\x9d\xcb\x9a\x3f\xfc\xe2\x07\xd4\xba\ +\x5f\xda\x17\x3a\x4a\xf6\xd3\x61\xc3\x42\x60\x0b\x50\xb6\xc8\xe0\ +\x87\x78\x26\xd7\x5d\xd2\x63\x58\x87\xea\x36\x7f\xe2\x53\xc6\xa0\ +\xfb\xa8\x33\xa4\x7f\xac\xcc\xfd\xfb\x9a\xc5\xcd\xd1\x0d\x51\x89\ +\x31\xe9\x71\xb6\xed\x54\x3c\x13\x47\xaf\x1c\x10\x83\x45\x77\xd3\ +\x1b\x95\xa3\xff\xbb\x8f\x07\x3f\x16\xbe\xcc\xef\xf8\xeb\x79\xb4\ +\x4b\xea\x5d\x12\x0f\x63\xd3\x3b\x1a\x61\xeb\x09\xeb\x38\x7a\x69\ +\xd4\x22\x72\x12\x24\xdb\x1f\x0a\xa7\xfc\xe7\xce\x37\x93\x77\xf2\ +\x5f\x2e\x9c\xfe\x0f\xe7\xcb\xd2\x70\x24\x62\x2c\x40\xeb\x91\x54\ +\x19\x5d\xb3\x0e\x7c\x5c\x3d\xdf\x4e\x50\xc2\xd1\xc2\x51\xfb\xda\ +\xc3\x5d\x51\x25\xdc\x92\xca\xe3\xff\xea\x83\x8b\x90\x72\x49\x1b\ +\xca\x44\x0d\x45\x58\x32\x9a\x49\x6b\xa1\xf4\xe1\xfb\x6c\x33\xe2\ +\x16\x8b\xf4\x76\x11\xf4\xd0\x45\xa1\x73\x75\x03\xce\x87\x99\x2d\ +\x1d\xb6\xc8\x5f\x34\xb8\xf3\x3b\x6a\xd4\x2f\x1c\xbd\x80\xaf\x8e\ +\x61\x9f\xc6\xb0\xde\xd3\xf7\xea\x73\x6f\x2e\x3e\xeb\xbf\x77\x63\ +\x75\xcf\xf6\x34\x95\x2f\x42\x3a\x9c\x48\x8c\xb9\xe3\xe8\xf7\x9e\ +\x9d\xe8\x70\x79\x9a\xc8\x8b\x96\xdf\x9a\x71\x46\xd4\x3a\x81\xb1\ +\x3e\xf7\xc0\x05\xa6\x9a\xd0\xf9\x4a\x19\xa5\xd0\xdc\xd0\x39\x76\ +\x4b\x78\x9b\xf0\x9e\xa2\x54\x89\xdb\x4e\x09\xf0\xa9\xd7\xdb\xff\ +\xca\xe8\x3b\xbd\x79\xa7\x4c\x67\xfc\x51\x63\x78\x7b\xf1\x8e\x9d\ +\xbc\xb9\xa2\xb3\xc4\x4b\xe8\x7c\x5e\x62\x84\x9e\xc8\x54\x89\x1e\ +\x67\x28\x4a\xbc\xc6\x7b\xa7\x84\x01\x72\xd3\x3f\xab\x4f\xda\xb7\ +\x3d\xbd\x6f\xf3\x4f\xea\xc1\x9b\xa0\x2c\x5f\x6d\xd0\xe0\x4e\x5a\ +\x5f\xaa\xab\x27\x58\x70\x8c\xfe\x51\xf3\xa3\x53\x5b\x69\x9a\xbe\ +\x5e\x2f\x69\x75\x9d\x79\xeb\x9f\xfb\x80\x10\xf4\x3c\xb6\x47\xef\ +\x02\x3b\xef\xe0\xe7\x5d\x3a\x18\x27\x25\xa6\x52\x4c\x53\x92\xc7\ +\xb5\xee\x2c\x0b\x9c\x3a\x3a\xd7\xe7\xb8\xa2\x28\x53\x67\x4a\x13\ +\x56\x8d\x38\xe1\x0c\xa8\x6d\x6f\xb2\x82\x07\xf6\x20\xeb\x84\xf0\ +\xa9\xf8\xa4\xff\x39\xfb\xdc\x78\x09\x44\x5f\x7b\xb0\x8e\xe1\x64\ +\x43\x11\x31\x88\x45\x6e\x5d\x63\x01\x62\x62\x49\xc3\x77\xc9\x1e\ +\x23\xcb\xe1\x53\x5f\x1e\xec\xf0\xad\x24\xfa\xf7\x62\x31\x77\x1d\ +\x79\xda\xed\x2f\xdf\x39\xef\x6d\x0c\x27\x73\x25\x70\xee\xed\x77\ +\xc6\x3f\x9a\x00\xaf\x76\xa0\x6d\x25\xe5\xcc\x7e\x76\x8f\x93\xd9\ +\xa7\xe1\xa5\x8b\xa0\x1d\x64\xe0\x74\x53\xe0\x42\xb6\xe2\x17\x94\ +\xd3\xef\x94\x09\xf1\x72\x7c\x3d\xe6\x9e\xc9\x81\x81\xcd\xb7\xce\ +\xac\x17\x8a\x4f\xf2\xd6\xe3\x63\xc7\xe7\x59\x65\x34\xad\xc7\x3c\ +\x21\x63\x18\x2c\xd3\x44\x88\xa8\xbc\x4c\xda\xe3\x3c\x12\xd7\xdb\ +\xa0\x7d\xaf\x49\x40\xee\xc6\x7b\xd5\x79\x7a\xe8\x4f\x9e\xd9\xbb\ +\x68\x7d\xca\xe6\xab\x5d\xe3\x91\x12\x01\x10\x91\xfb\x59\xe4\xc5\ +\xbf\xeb\x14\xca\x10\x0d\x95\xe9\xf9\xf1\x09\x31\xdd\x00\x14\xc6\ +\xad\x0b\x9e\x09\xac\x88\x94\x6f\x42\x1c\x23\x95\x5b\xcd\xe4\xea\ +\x9c\x3b\x22\x26\xb3\xa6\xef\xde\xc9\xf9\xf3\x8f\xb5\xa0\x01\x3b\ +\xfa\x22\xe7\xe2\xcd\x53\xd8\x98\x29\xa3\x10\x0e\x5d\x78\x47\x8f\ +\x8e\x43\x83\x8f\x1a\x8b\x50\x11\xdd\xad\x95\x06\xab\x2e\x3f\xff\ +\xab\x77\x5e\x7f\x74\x1a\x46\x6f\x9c\x96\x15\x7a\x65\x82\x72\xf2\ +\x2e\x54\x0e\xe3\x7a\x38\x28\x95\x08\xc0\x36\xd3\x07\x23\x00\xd9\ +\x34\x52\xa6\xdd\x71\xa8\x26\x8b\xe5\xc0\x0d\xee\x8e\xca\x0a\xac\ +\x93\xd9\x51\x4c\x29\x09\x7c\x84\xed\x72\xf7\xc0\x59\xec\x8f\x0a\ +\x0a\xee\x86\x2d\xf5\x09\x1d\xf6\x94\x30\x54\x77\xd5\x1b\x7c\x1d\ +\x17\x4a\x0c\x9a\x06\x22\xf6\xc3\x3b\xca\xd1\x2b\x6e\x7d\x6c\xd1\ +\x22\xeb\x2d\x5d\xea\xd9\x3b\xfa\x51\xa9\xd6\x2f\xb1\x79\x02\x76\ +\xb7\x07\x0d\x8e\xa4\x0e\xd3\x40\xcb\x9b\x13\x75\x6a\xfa\x74\x82\ +\x2b\xca\x80\x1e\x3d\xfa\x67\xb5\x01\x66\x1b\x69\x6b\xf0\x7a\x53\ +\x27\x0f\x5f\x1d\x31\x53\x31\x26\x18\xb6\xa7\xa0\x7b\x14\xad\x2f\ +\x3b\x5a\xbe\xea\x38\xa3\xf2\x89\x53\xa2\xe9\x92\xbd\x3c\xa1\xf8\ +\xf9\x75\x73\xa5\x68\x3b\xd5\x73\xa6\x20\xde\xc2\xae\x30\xf9\xb6\ +\xa7\xbc\xf5\xe2\x36\x2b\xab\x06\xe3\x8c\x7d\x58\x6f\x1a\x9f\xb4\ +\xbe\xf8\x3d\xa5\x1d\x9b\x36\x2d\xf4\x49\x86\x98\xdb\x9e\xb2\xa5\ +\x51\x7e\x54\xe3\xfa\x28\xf5\x44\x35\x4c\xc0\xb6\x88\xaa\x0c\x5a\ +\x0e\x22\x16\x15\xeb\xd9\xd0\xbc\x5e\xaf\x95\x70\x85\xad\x63\x48\ +\x3d\xf0\xea\xa0\x05\x46\xc5\x5b\x4e\xbc\xa0\x40\x9a\x5a\x7a\xaa\ +\x75\x34\xd7\x56\xbd\x9e\x4e\xa2\x25\x05\x0c\x28\x24\x58\x8b\x37\ +\x98\x52\x9c\xbc\x76\x01\xbd\x91\x46\x42\xd4\x09\x7c\xbd\x6c\x6b\ +\x95\x8f\x0b\xa0\x43\x7a\x34\x4b\xe2\xc9\x15\x50\x78\xb5\x4f\x8d\ +\xe5\x74\xdd\x79\x32\x46\x0a\xdf\x69\xc8\xea\xf5\x4b\x52\x0e\xb5\ +\xb7\x3e\xc5\xd7\xb3\xa9\x31\xbe\x5e\x82\x26\x85\x8a\xe0\x93\x98\ +\xa8\x36\x4d\x26\x64\x55\x91\x2c\x2e\x3b\xaa\x16\x9f\x17\x4a\x63\ +\x7a\xad\xd7\xab\xac\xd0\xd5\xe8\x53\x6f\xea\x04\x2e\x54\x18\x4a\ +\x36\xfd\xd1\x7c\x7e\xbd\xc2\x57\x3b\x88\x75\x44\xf9\xd3\x1e\xbc\ +\x1c\x3e\xa8\x9b\xd9\x89\xa9\x59\x67\xbd\xa3\x58\x28\xc5\xd7\x2b\ +\xa3\x4a\x06\xbb\x63\x2b\x51\x25\x7e\xd1\xaa\xe1\xe1\xd5\x82\x67\ +\xca\xb0\x22\x87\x78\x11\xd9\x13\x2f\x6b\x2b\xb6\x89\xaa\x2d\xce\ +\xd0\x3d\x89\x29\x75\x97\x33\xc6\x33\x51\x63\xee\xb2\x79\x27\x73\ +\xa0\x76\xd1\xfc\x7a\xd4\x9e\x0d\x15\x30\xb8\x13\x11\x28\x5b\xf0\ +\x32\x0d\x34\x8d\x67\xe6\x9e\xb7\x7e\xdb\x29\x21\x49\x4a\x17\x61\ +\x5a\xaf\xf7\x0b\x29\x95\xe7\x4b\x47\xca\x00\x69\xda\x86\x0c\x10\ +\x2e\xc7\x53\xd9\x0e\x1a\x86\x6a\xbd\x5e\x7a\xdb\x31\x50\xad\x94\ +\xd0\xcc\xb7\xf7\x33\xae\xd7\x9b\x90\x5a\x15\xf1\xf5\x5a\xc1\x33\ +\xe9\x56\x86\x50\x5b\xb8\x1f\xc8\x93\xcb\x0d\xcd\x40\x18\xca\xec\ +\xa9\x99\x12\x13\xf3\xe6\x3a\xbe\x9e\xce\x66\x14\x5f\x2d\x69\xf6\ +\x7e\xfa\x36\x7c\xeb\xc3\x8f\xf0\x4c\xf4\x40\x2c\x92\xcd\x53\xcc\ +\x3a\xa0\x16\x89\x42\x15\xcd\xc2\xff\x7a\xf4\x55\x6e\x7c\xbc\x22\ +\x9d\xd6\xeb\xf3\xfc\xa8\x92\x50\x9e\xbc\xac\xf6\x89\xbc\x12\x57\ +\xaf\xd7\x57\x69\x90\x93\x77\x03\x26\x1c\x07\x61\xf9\x72\xec\x69\ +\x10\x2a\x13\xaf\xd0\x22\xf1\x9e\xd0\x26\x93\x50\x8f\x7f\x32\x0f\ +\xdf\x3e\xf6\x57\xa7\x9d\x65\xe4\xed\xa8\x52\xde\x9b\x97\x95\x18\ +\x0f\x57\xfa\xdd\xd4\x1f\x65\x4f\xd9\x4e\x3f\x52\xc6\xab\x92\xd0\ +\x7f\xc4\xad\x64\x6e\xb0\x29\x87\xce\x0c\x94\x80\x24\x17\xcb\xe4\ +\xed\x13\xb8\x50\x3b\xf7\xf6\xfc\x17\x99\x71\x88\x1d\x8d\xb8\x15\ +\xb2\xc6\x02\xe5\x7f\x00\xc6\xe8\x29\x48\xf1\x9e\x42\x5a\x8d\x96\ +\xcf\x95\x3d\x45\x58\x48\xd1\x7b\x3b\x0a\x54\x40\x6f\x28\x64\xbe\ +\x1c\xb9\xbc\x4e\x38\x25\xa3\x00\xc4\xec\x2f\x42\x76\xfe\xd3\x06\ +\x27\x3a\x24\x94\xc2\x9d\x16\xad\x7e\x9c\x31\x22\xea\xd1\x63\xee\ +\x13\xb2\x2f\xc7\x8d\x8c\x4e\xc5\xbc\xe8\xc3\x2c\x08\xb1\xed\x59\ +\x8c\x88\xa9\x96\x74\xe7\x61\x42\xa0\x18\xd9\x4a\x99\xc0\xaa\x3c\ +\xe3\xa3\x03\x5b\x7a\x9e\x12\x62\x11\xec\x53\x38\xa9\xe5\xff\x47\ +\x8a\xa8\x96\xa8\x5a\x04\xd8\x00\x00\x00\x00\x49\x45\x4e\x44\xae\ +\x42\x60\x82\ +\x00\x00\x0f\x6b\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x01\xf4\x00\x00\x00\x4b\x08\x03\x00\x00\x00\xb1\xe3\x85\xac\ +\x00\x00\x00\x42\x50\x4c\x54\x45\xd5\xd5\xff\xf6\xf7\xff\xda\xdb\ +\xff\xef\xef\xff\xdf\xe0\xff\xe7\xe7\xff\xea\xea\xff\xea\xeb\xff\ +\xeb\xeb\xff\xdf\xdf\xff\xf7\xf7\xff\xfa\xfb\xff\xf3\xf3\xff\xd7\ +\xd7\xff\xff\xff\xff\xe6\xe7\xff\xdb\xdb\xff\xe3\xe3\xff\xd5\xd6\ +\xff\xf2\xf3\xff\xee\xef\xff\xe5\xe6\xff\x96\xf6\xba\x85\x00\x00\ +\x0e\xe4\x49\x44\x41\x54\x78\x5e\xed\x5d\xd9\x92\x24\x37\x08\x1c\ +\xa4\x3a\x8f\xbe\x66\x76\xff\xff\x57\x0d\x24\x14\x52\xd7\x4e\xd8\ +\x0f\x23\x47\x6c\x84\x52\x05\xd5\xf6\x9b\x9d\x83\x0e\x20\x55\x1f\ +\xf7\x1f\x45\xc7\x7e\xdf\x77\x76\xf7\xed\x4e\xf7\x6d\xdf\xb7\x3b\ +\x0f\xc1\x2e\x8e\xb6\x63\x3b\x88\x87\x81\x32\x2d\x94\xf9\xf9\xca\ +\x05\x96\x3c\x2f\x6a\xcb\x3c\x09\x1e\xd3\x43\x9e\x71\x1c\x1f\x8c\ +\xd7\xe3\x35\xb2\x29\x56\x19\x70\xc3\xb0\x0e\x6c\x6b\x5a\x13\x3f\ +\xcf\xe7\x73\x65\x4b\x29\x3d\xd3\x2d\xdd\x6e\x1f\xec\x3f\x3e\xf0\ +\x30\x7e\x94\x80\x8e\x1d\x9e\x84\xf5\x8d\xf9\xdf\x95\x6d\xf1\x02\ +\x12\x53\xde\xc1\xbc\x72\x9e\x29\x33\xc0\xfb\xaf\x99\xc9\x16\xd6\ +\xf3\x22\x98\x95\x72\xc6\xfc\x98\x9d\xf4\x51\x59\x07\xed\x41\xbd\ +\x93\x9e\xd6\xf5\x29\x8e\xc9\x06\xe9\x37\x19\xcf\xf4\x71\xbb\x81\ +\xf0\x06\xa4\xf7\x30\x87\x17\xe3\x58\xdf\xc5\xf1\x6b\x33\x10\xf3\ +\x6d\xd1\x2e\xc8\x94\xd9\xd3\x42\xcb\x97\xc5\xfa\xfc\x4b\x1c\xa2\ +\xfc\x8f\x91\xfe\x1a\x65\x54\x94\xaf\xaf\xd7\x60\xd1\x9e\x56\x01\ +\x07\x79\x5a\x11\xe9\x37\xe6\x3b\xdd\xf0\xdc\x3e\x38\xda\xd9\xb5\ +\x21\xbd\xc7\xfa\x2e\x41\x2e\xb1\xce\xcf\xae\xe3\xee\x91\x7e\x90\ +\x71\x4e\x94\x65\x1c\x59\xc3\x3d\x30\xcf\x12\xe7\x32\x9c\xf4\x49\ +\x49\x9f\x10\xe9\xc6\xbb\xd1\xbe\xca\x33\x30\xe9\x80\x44\x7a\x7a\ +\x1a\xe1\x6e\xe9\x79\xbb\xd9\x14\xaf\x9c\x37\x20\xbd\x83\x84\x6d\ +\x21\x9f\xd8\x8c\xf3\x3d\xd6\x74\xe7\x1c\x91\x9e\x17\x3a\x98\xf8\ +\xaf\xe0\x9c\x1f\xb0\xee\xd3\x3b\xc6\xc8\xcc\x0b\xe9\x55\xa4\xaf\ +\x6c\x03\x48\x1f\xd8\x56\x5d\xd3\x95\x78\x7e\x40\xba\x32\xfe\x94\ +\x18\x67\x28\xeb\xb7\x9f\x26\xbd\x63\x87\xdb\x09\x3b\x38\x59\xd5\ +\x85\x79\x00\x6b\x3a\x06\xf6\x71\x6c\xf9\xf0\x35\x3d\x38\x9f\x75\ +\x76\x8f\x48\x9f\x46\x79\xc6\xc7\x0b\xac\x57\x91\xce\x9c\x8b\x07\ +\xf1\xe0\x5c\xe7\x77\x4c\xef\x29\xdd\x94\xf7\x60\x9d\x9f\x1f\x26\ +\xa0\x53\xbe\xcb\x20\x9d\xde\x39\xde\x69\x33\xec\x14\x6b\x7a\xec\ +\xde\x25\xda\x63\x4d\x37\xcc\xc5\xee\x1d\xd0\xa9\x5d\x4d\xf6\x71\ +\x3a\x04\x60\xdd\xa6\xf7\x97\xd0\xad\x90\x30\x07\x12\x66\x77\x9b\ +\xdf\x99\xef\x26\x6b\x7a\xe7\x1c\x26\x5e\x28\x67\xf3\x75\xdd\xd7\ +\x74\x1e\x94\x6d\x8e\x97\x20\xc7\x16\x1e\x98\x84\x70\x7e\x62\xf7\ +\xce\x78\xf0\x33\x8a\x8d\x16\xe9\xfc\xc4\xee\x5d\x23\x7d\x78\xad\ +\x80\xed\xde\x13\x3b\x90\xce\xb4\x4b\x98\xa7\x9b\x20\xf9\x9a\x3e\ +\x01\xf3\xbc\x00\x59\xc7\x9c\x27\xfb\xb5\xe4\x1a\xf8\x67\x6c\x41\ +\xf8\xb1\x5d\xe8\xc2\xe3\x50\x6c\x78\x9d\xab\x57\x3e\xb6\x12\x98\ +\xf3\xf8\xa1\x8d\xa3\x00\xef\x4d\xd7\x40\x71\x9b\x9c\x71\xe5\x8d\ +\xb5\xb1\x0d\x3a\x0a\xd2\x03\x33\x3f\xe0\x5c\x80\x3f\x82\x80\x10\ +\x2c\x3e\xfb\x5f\x2a\xce\x1e\x01\x61\x1b\x9e\x0e\xda\xc1\xfe\x76\ +\xc1\x5d\x6c\x07\xe5\x4c\x36\x69\x3a\x83\xdf\x08\x16\x62\x93\x7f\ +\xe3\x53\x66\x03\x74\xd2\xa7\xe0\x3b\xcb\x5b\xa9\xce\xf3\xac\xaf\ +\x12\x87\xbd\x41\xb8\xc4\x37\x58\x3f\x00\xda\xd8\xf0\xd6\x41\x1b\ +\x50\x6c\x65\xee\xf8\x67\xb8\xfb\x1d\x26\xf1\x4d\xf8\x4d\x4e\xb9\ +\x1f\x79\xf1\x6a\x86\x4e\xfa\x24\x9c\xcf\x59\xdf\xba\xb6\x30\xa6\ +\xe0\x5d\x7e\x21\x75\x28\xac\xf3\x0f\x7e\x1f\xfa\xeb\x08\xe4\x63\ +\xf3\x41\xf8\x4d\x94\x83\x74\x65\x9b\x30\x9b\x6b\xc4\x13\x29\xf5\ +\x32\x24\xb4\xf5\x07\xf1\x60\xd7\x82\xec\x8e\x9f\xdd\xc8\x75\xec\ +\x18\xd8\x98\x60\xc7\xe2\x3b\xb9\xcc\xbf\x62\xa7\xa3\x20\x2c\x95\ +\xb4\x2c\x6c\x88\x2f\xc6\x82\xcd\xdc\x54\xec\xde\x1f\x23\x36\x72\ +\x91\x9b\x79\xd8\xde\x5d\x73\xef\x76\x46\x5f\x93\x3d\x29\x79\xee\ +\xfd\xa6\xc7\xb6\x27\xdb\xc7\xf3\x23\x35\x4d\xc3\x76\xea\xc9\x6c\ +\x43\x36\x2e\x56\x38\x9c\xd3\xe9\xf0\xdd\x3b\x61\x8f\x54\x16\x5b\ +\x2c\x33\x63\xa4\x33\xcf\xec\x41\x7a\x9c\xd3\x1d\xab\xda\xc0\x76\ +\xee\xde\x93\xba\x74\xe6\xde\x8d\x79\x1c\xd9\x5a\x64\xe4\x3a\x34\ +\x2d\x63\xb9\x77\xec\x4f\xad\xe6\x42\x1b\xc3\xcf\xe9\x9e\x7b\x17\ +\x4f\x4c\xbd\x63\x0e\xe2\x05\x73\x04\xfa\x58\xe5\xde\x03\x5e\x65\ +\x53\x73\xe2\x53\xe4\xde\xc5\xf0\x30\x9a\xe4\xde\x3b\x88\x0d\xe7\ +\x0e\x75\x98\xd9\xeb\x73\x7a\x99\x7b\xb7\xf3\x4f\xce\x14\xbc\x6b\ +\x8d\x6d\x2e\x48\x7f\x48\x72\xa6\xce\xbd\x3f\xca\x44\x2c\x58\x2f\ +\xcf\xe9\x4c\x38\x22\x5d\x89\xe7\xa3\x3a\xd0\x22\xf7\xde\xb1\xbb\ +\x27\xf1\x1b\xdb\xbf\xd4\xd3\x17\x1e\x5f\x19\x83\xf1\xeb\x2d\x0f\ +\x3b\xcf\x73\x44\xfa\x03\x69\x58\xb1\xd7\xeb\xf7\x6f\x4b\xcc\xac\ +\x2f\xa7\x7c\x18\x12\xc2\xbc\x5a\xd3\x51\x5d\xfd\x3c\x59\x6f\x44\ +\x7a\xe7\x5d\x52\x4c\x36\xb3\xff\x5b\x3d\x9d\x07\x18\x07\x9c\x73\ +\xcd\x92\xd5\xd3\xfb\x14\x4d\x14\xec\x02\xeb\x8a\x42\x1b\xa3\x5c\ +\xd3\xad\xca\xa6\xc9\x38\x75\x40\x9b\x8d\x5c\xcf\xbd\x47\x94\x5b\ +\xce\x69\xfb\xae\x9e\x4e\x19\xb9\x77\xe1\xbc\xce\xbd\x83\xf7\xa8\ +\xa7\x8f\xbe\x7b\x37\xc6\x7f\x47\xc5\x45\x06\xca\xaa\x8a\x54\xaf\ +\xe9\xfc\x28\xe3\x9f\xc5\xfc\xfe\xd9\x8a\xf4\x1e\xea\xc8\xbd\x7f\ +\x5f\x4f\x07\xef\xc8\x7a\x44\xac\x4b\x80\x2b\xe3\x58\xd4\x27\xc7\ +\xe8\x4d\x14\x0f\xc5\xef\x32\xd4\x6d\x78\x3d\x3d\xbd\xd2\x1a\xeb\ +\xb9\x45\xfa\x1a\xab\x7a\x13\xd2\x3b\xe9\xc4\xb6\xe9\x60\xae\x7d\ +\x8e\xa7\xa2\x9e\x4e\x45\x0e\xb3\x9e\xdd\x79\x78\x2d\xfd\x0c\xf4\ +\xc7\x3c\x71\xa4\xb3\xe9\xb2\xce\x28\xf8\x1e\x94\xef\x24\xbe\xae\ +\xa7\x6b\x7b\x1c\xea\xe9\x4a\xbb\xae\xe7\x0d\xce\xe9\x1d\xbb\x97\ +\xd9\xb0\x77\xd7\xf4\x32\x69\xfe\x71\x83\xed\x79\x23\xcd\xcd\x90\ +\x4c\xed\xb4\xa0\x8f\xc2\x76\x72\x53\x16\x4c\x1a\xe9\xec\x8d\x74\ +\x9f\xe0\x1f\x4a\x3a\x12\x33\x30\xc1\x60\x47\x36\x85\xae\xea\x5e\ +\x4f\x47\x59\x35\x25\xdf\xc9\xa5\x14\xc9\x99\x09\x98\x97\x05\xa9\ +\xd8\x09\x96\xc5\x66\xf5\xfc\x3b\xe7\xd3\xc8\x72\xb2\x07\xbf\x49\ +\x72\x49\x3a\x55\xa9\x3f\xc4\x67\x36\xf6\xba\x72\x65\x92\x42\x4b\ +\xde\xd9\x9d\x6f\x2a\x4c\xba\xc8\xf8\xd9\x50\x6c\x81\x69\x2d\xda\ +\xff\xc7\x01\xf4\x5f\x4b\x2e\x7d\x92\xf9\x6f\x08\xd2\x03\x59\x4d\ +\x93\x04\xd1\xb7\x55\x62\xa1\x6c\x75\x60\xab\xb5\xc9\x0b\x20\x31\ +\xf5\x36\x93\xc1\xd3\xa5\xbe\xe6\x53\x1f\xce\x34\x9e\xb7\x44\xc7\ +\xc9\xc9\x3f\x42\xa7\x31\x7a\xc1\xe5\x5c\x4f\x72\x59\x4f\xbf\x02\ +\x89\x05\x78\x79\x88\xad\x00\xc8\xb6\x2a\x9b\xfe\x0c\xc6\x81\xa8\ +\xb6\x59\x9b\x01\xc8\x16\x92\xc1\xba\x2d\x90\x0d\x2b\xeb\x9d\x74\ +\xd0\x3e\x63\x76\xcf\x66\x5e\x63\x8b\x19\x7e\xc1\xbc\x8e\x5f\xf2\ +\xdb\x6a\x6c\x19\xb3\x3c\x3b\xab\xad\x09\xeb\xa8\xb1\xed\x79\xdb\ +\x48\x3c\x83\x48\x1c\xaa\x6c\x62\xcc\xb5\xfe\xc2\xec\xce\xcf\x2e\ +\x6f\x79\x29\xf9\xf4\x57\x31\xde\xab\x6c\xbd\xfb\x1d\x7f\xcd\xf6\ +\x37\xee\xbb\x9a\x83\x34\x12\x32\x91\xac\x89\x1a\x25\xb4\x2c\xe7\ +\x3e\x6e\x16\x6f\x3b\x39\x17\x3b\xa8\x63\x58\x72\x46\x53\xb0\xfc\ +\x00\xb1\x75\x4f\x2b\x80\x8c\x1c\x12\xb1\xc8\xbd\x27\x6d\x8c\xc4\ +\xd6\x1d\xfe\xa7\x09\xe8\xe7\x35\x14\x5d\x4c\xd1\x84\x07\x59\xb9\ +\xb2\xe2\xa2\xf8\xbe\xef\x7d\x5e\xea\x1e\x39\x7e\x81\x74\x10\x2e\ +\xa3\xca\xbd\xaf\xea\xa2\xd8\xa2\xa7\xf4\x90\x35\x99\xb4\x29\xb5\ +\xca\xbd\x77\xf8\x1e\x14\xbb\xd2\x6d\x8f\xce\xc8\xa8\xa7\x1b\xbe\ +\xeb\x7b\xaf\xb5\x6c\x28\xaf\x22\xc8\xd5\xd5\x0a\x17\x88\x5b\xd8\ +\xa2\x9e\x1e\x5a\x36\x61\x3f\xa1\xbe\x26\x68\x58\x65\xeb\x7d\xef\ +\x42\x3c\x1e\x64\xe3\x2e\x7d\xef\x60\xfe\xda\xf7\xbe\xe4\xfc\xa7\ +\x6e\xd8\xc7\xe4\x2d\xd0\x4c\xf7\x58\x74\xc3\xae\xa7\x94\x6d\xb8\ +\xd4\xd3\x43\xdd\xf2\x2c\xfb\xde\x3f\x7f\x9a\xf4\x9e\x9c\x71\x1d\ +\x9b\x98\x32\x4e\x45\x3d\x9d\xa2\x9e\x0e\xfc\xb1\xef\xdd\xa2\xbc\ +\x10\x30\x22\x23\xe7\xd9\x19\x70\xee\xb8\x94\xd3\x8b\x1e\xe8\xf4\ +\x34\x2d\x5b\xd9\xf7\xde\x86\xf4\x1e\xea\x5a\x65\xd3\x73\xc9\xf7\ +\xf5\x74\xf0\x1e\x7d\xef\x45\xe7\xf1\x82\x11\x79\x58\x61\x1c\x91\ +\xfe\xe2\x17\x5b\x10\x0e\xc7\xf6\x4d\x3d\xfd\xc6\x3f\xa2\x87\xa2\ +\x59\xa4\x77\xd2\x23\xd7\xe4\xeb\xb9\x81\xe8\x40\xfe\xdd\x38\xcf\ +\x59\x1d\x31\xc3\x91\x7b\x77\xc1\x43\x31\xbd\x83\x74\x8b\x74\x4d\ +\xc5\x7e\xaf\x4f\x4f\xb5\x3e\x1d\xcd\x52\x1f\x09\xe2\xf4\x56\x6b\ +\x7a\x5f\xd1\x49\x4d\x13\xcc\xf7\x4d\x5d\x28\x18\x7d\x3d\x07\xe7\ +\xe2\xa1\x23\x10\x03\x42\x9d\x5e\xd6\xd3\x99\x79\x44\x7a\x74\xce\ +\x5c\xf5\xe9\x6b\x7a\xaf\xa7\x0b\x70\x60\x0b\xce\x9b\x91\xde\xbb\ +\x67\x78\xa0\x96\xee\x1d\xfe\x78\xd9\xba\xee\x9b\x77\x21\x9b\x34\ +\xb3\xe9\x98\x8b\x1e\xb9\xd9\x54\xab\xde\x23\x87\xc3\xfa\x6b\xbc\ +\xe8\xd3\x11\xed\x86\xd7\x59\x4f\xf7\x9e\x48\xb8\x36\xfa\xf4\x0e\ +\x57\x66\x10\x8a\x07\xbb\x86\x7a\x71\x4e\xcf\x16\xe5\xfa\xc6\x31\ +\x5d\x94\x03\xba\x94\x13\xb4\x6c\xfa\x7b\x42\x39\x7d\x3a\x31\x5a\ +\xe3\xcc\xf8\xba\x34\xc3\x96\x7c\x87\x6a\x15\xe2\x45\xc6\x13\xe9\ +\x19\x7d\x3c\x37\x53\x15\x5c\x26\xcb\xbd\x87\x96\x6d\xae\x94\x0e\ +\x53\xf6\x2e\xbe\x85\x2c\x0b\x4b\x8b\xe9\x1b\xe4\x8d\x5f\x50\x36\ +\x65\x36\x7d\x18\x59\x3d\x40\xa1\x70\x21\x8a\x53\xec\xee\x55\x36\ +\x79\x21\x4c\x5c\xec\xb0\xc3\xfd\x18\x3a\x2e\xa4\x33\x72\xa1\x65\ +\x9b\xc5\x09\xf9\x05\x0e\xa9\xc0\xa1\xd6\x42\x78\x65\xdf\x8c\xea\ +\x1b\x75\x35\x2b\xb8\xf0\x6f\x4f\x43\xd6\x40\x51\x8d\x1d\x66\x41\ +\x71\x62\xca\x2f\x89\xc3\xef\xff\x05\xbd\xca\x16\x5a\x36\xb6\x77\ +\x7c\xd9\xfa\x43\x47\xc6\xc8\x11\xdf\xa8\xa3\x97\x2a\x46\xd4\xd0\ +\x0f\x04\x75\x09\x21\xd9\xb5\x6c\xc4\x86\xcb\x59\xc4\xe0\x37\x17\ +\x2f\xb6\x97\x36\x75\xd2\x01\x68\xd9\x30\xec\x55\x01\x5a\x36\x0c\ +\x53\x2a\x1f\x00\x65\xe5\x9b\x0e\x44\x78\xde\xf3\x81\xdc\xa3\x91\ +\x4e\xae\xf3\x61\xb8\x96\x4d\x6c\x27\xaf\xa7\x8b\xe9\x10\x6c\x6c\ +\x7f\x89\x6e\xb5\x57\xd9\xfa\xfe\x9d\xde\x7b\xe4\xbc\x6d\x08\x19\ +\xb9\x4c\xe7\x39\x3d\x17\x19\xb9\x5f\x93\x9f\xd3\x97\x8b\xc2\xc5\ +\x1b\xe4\x90\x7a\x67\xe7\xb0\xbc\x3b\xbf\x79\x58\xdf\xbb\x6f\xe6\ +\x90\x8e\x93\xf4\xbb\x0b\x9b\xc4\x5a\x90\xde\x13\x72\xea\xd0\x08\ +\x76\x07\xeb\x40\xd9\xf3\x5e\x9f\xd3\x81\x5f\x9e\x7b\xcf\xf5\xe5\ +\x81\xd1\xf7\x7e\xd9\xbd\x0f\xc3\x4b\x86\xe6\xe2\xe2\x1e\x39\x88\ +\x5b\x40\xba\xeb\x5b\x8c\xf5\x56\xa4\xf7\xbe\x77\xbb\x5d\x6a\xdb\ +\x91\x9c\x8b\xdc\xbb\xf1\xfe\x76\x4e\xbf\xf4\xbd\xcf\xcb\x9c\x6b\ +\x59\x93\x0b\x18\x85\x77\xa8\x56\x1d\xab\x8f\xb8\x73\x86\xf3\x71\ +\x48\xc3\x2a\x6e\xb8\x68\xa8\x75\x95\xad\xe7\xde\x37\x3f\xa7\xa3\ +\xfb\xd9\x73\xef\xbe\xc3\x29\xce\xe9\x39\x38\x8f\xbe\x77\xf6\x0a\ +\x50\xce\x66\x7d\xef\x3c\xca\xc2\xea\xea\xc9\x77\xc7\x79\x8f\x5c\ +\x3a\xef\x9c\xb9\xdd\xd8\xb7\xd3\xb2\x75\xec\x30\x72\x95\x0b\x69\ +\x8c\x57\x0a\x97\x4a\xcf\x26\x5b\x62\xfa\x53\xdf\xfb\x8c\x84\x5c\ +\x5c\x34\xe4\x55\x36\x49\xc1\x56\xb4\xf3\x03\x7d\x3a\xac\xae\xa7\ +\x43\xbc\x28\x9c\xab\x42\x5d\xa2\xbd\xcb\x9a\x9a\xb0\x8e\x7b\x53\ +\x38\xca\xd9\x61\x4d\xc7\xa8\x14\x2e\x5e\x56\xfd\x22\xeb\x7a\x0f\ +\xe6\x17\x10\xef\xa4\x3f\x66\xb6\xa8\xb2\x5d\x72\xef\x43\xe8\xd3\ +\x87\xa1\xca\xbd\x3b\xe9\x89\x4d\xa8\x17\xba\x3f\x1b\x92\xde\xa7\ +\x77\x35\xe5\x1a\x3e\x04\x8c\x88\x72\x31\x88\x17\x2b\xc6\xab\xdd\ +\xbb\x47\x7a\x90\x2e\x0e\x1b\x39\x36\x60\x88\x82\xfa\x90\xde\xeb\ +\xe9\xb0\xe4\x8a\xd5\x67\x2b\x01\x63\xa7\x9c\xe4\xb5\xfb\x9a\x8e\ +\x19\x1e\xe6\x33\x3b\x19\xe7\xf4\xc5\x00\xe7\x62\xe0\x3c\xd6\xf4\ +\xe9\x84\x57\xd9\x94\x70\x71\x8e\xe1\x1b\x7d\xba\x13\x0e\xf9\x22\ +\xc7\xfb\x53\x58\x6f\xd4\x18\xd9\x49\x47\x05\xc1\xef\x7b\x67\xaa\ +\xb5\xcd\xfb\x04\xf2\x56\x27\x4c\x41\xe0\x88\xce\x99\x7a\x23\xe7\ +\xdd\xb0\xa5\xa4\xc9\xf5\xe9\x75\xeb\x4c\x4a\xa5\x3e\xfd\x5d\xa9\ +\xdc\x6a\x23\xd7\xa7\xf6\xb8\xef\x9d\x4c\xcb\xb6\x6d\xea\xf7\x7c\ +\x88\xa1\x0f\x9a\xb4\xf9\x99\xc4\x84\x68\x8d\xf4\x49\x09\x57\x35\ +\xdb\x3c\x95\xc9\x19\x36\x24\x67\xae\x0a\x75\xe1\x3d\x79\x0f\x74\ +\xac\xe9\x02\xbb\x94\x80\x17\x73\xa3\xdd\x0a\xea\x55\x1a\x56\x9c\ +\x6b\x1e\x50\xe1\x43\x65\xad\xf4\x4b\x16\x67\x35\x36\xbb\x4b\x8e\ +\x32\x65\x54\xd9\x16\x68\xd8\x8e\x83\xd8\x23\xf7\xb4\x6f\x6c\xc8\ +\xc2\x8b\xdd\xed\xbf\xff\xd4\xb2\x6d\xa4\xe9\x2b\xcf\xbb\xb3\xdb\ +\xed\xb4\xcb\x1e\xef\x86\xe8\xb9\xf7\xa9\xa8\xb9\x54\xb9\xf7\x39\ +\x97\x20\x1e\xd9\x55\x4d\xae\xb1\xa6\x23\x40\xa1\x64\xb3\x93\x29\ +\xbd\x5f\x22\xe8\x1a\x36\x7e\xe3\x89\x2a\x1b\x3f\x74\x76\xa0\xec\ +\x1e\x42\x2d\xd0\x4b\xab\xc0\x1c\x7c\x9b\x3c\x3e\xc3\x3b\x48\x2d\ +\xda\xf4\x85\x74\x33\x52\x03\xe2\xc6\x48\x63\x7d\xab\x81\x3c\x15\ +\xf8\xd6\x41\xe2\x2c\xd6\xd1\x4b\x4a\xec\x83\xfb\x06\xe8\xa4\x23\ +\xd6\x31\xc3\xcf\xa8\xb3\x99\xca\x46\xcd\xfd\x22\xb6\xe0\xd7\x71\ +\x2c\xaa\x62\x5b\xec\xc6\x48\xb1\x83\xb2\xdf\x03\x4c\x6a\x1b\xd4\ +\x6c\x0a\xbc\xa1\x63\x93\x37\x33\x0e\x2d\x5b\xa8\x95\x77\x36\xd0\ +\x2e\xa0\xbf\x81\xed\x5e\x65\xeb\xd8\x31\xb0\x7b\x67\xc3\x2e\x86\ +\x47\xde\x37\xca\x3b\x99\x92\x0d\x5a\x36\xb1\x42\xcb\x06\x5b\xf2\ +\x6c\x11\x08\x20\x25\xf7\x50\x03\x5e\x27\x92\x9f\xd8\x8a\xdc\x3b\ +\x76\xef\xb0\xdb\x99\x7d\x6f\xaa\x70\xe9\xa4\x17\x97\x0d\x6d\xdb\ +\x7b\x95\x6d\x0b\xad\x03\xf2\xee\x97\xbe\xf7\x45\x5d\x34\x46\x8a\ +\xb1\x03\xe9\x2f\x3c\xd7\x7a\x8b\x21\xc9\x03\x97\xe2\xc8\x26\x8f\ +\xa2\xe9\x8d\x91\xbd\xef\x1d\x37\x99\xdb\x5e\xf5\x92\x7b\x37\x44\ +\xff\x51\xd5\xf7\x7e\xd5\xb2\x8d\xd6\x19\xf9\x3a\x2f\x0f\x54\x0c\ +\xe6\xd0\x04\xeb\x61\x5e\xdd\x2e\x65\xca\x55\xb4\x45\xb6\x8e\xf4\ +\xde\xf7\xce\x5c\xbb\x6d\x97\xdc\x3b\xa2\x5d\xb7\x45\xc2\xf9\xa5\ +\xef\x3d\xbf\xab\x56\x47\x41\x7c\x96\x8d\x3d\x08\x1f\xca\x48\x8f\ +\x7a\x3a\x90\x54\xe2\x82\xc1\x87\xf5\x76\xc9\x99\x9e\x9c\x11\xd0\ +\xee\x79\x58\xda\xdf\x72\xef\x31\xbf\x53\x16\xa3\x6a\x7e\x9f\xdf\ +\xb5\x6c\xe3\x24\x0e\x78\x08\xe3\x9a\x88\xf5\x50\xff\x8d\x46\x0a\ +\xe3\x7d\x88\x7a\x3a\x48\x7f\x5a\xd3\xcc\x67\xfa\x4c\x6d\xd7\xf4\ +\xfe\xe5\x1e\xbb\x47\xae\x54\xb7\xa8\x95\x51\x4e\xc6\x37\x46\x5e\ +\xa8\xe0\xfc\xa2\x65\x1b\x2d\xd2\x79\x44\xa0\x87\x98\x0d\x64\xa7\ +\x61\x88\x7a\xba\x91\x8e\xa2\x2a\x87\xfc\xfa\xe9\x71\xde\x88\xf4\ +\xbe\x77\x8f\xc6\xee\xcd\x39\xb7\x48\x0f\xce\x11\xe9\xc6\x79\x66\ +\xbb\xce\xef\xbe\xa6\x8f\xe7\x8d\x91\xf2\x44\xa0\x5f\xd4\x0e\xd7\ +\x7a\x3a\xae\x92\xfb\xe4\x50\x17\xdf\x3e\xd2\x7b\x79\x15\x92\x65\ +\x0c\xdf\xbd\x57\x5a\xb6\x7c\x78\xb4\x57\xf7\xbd\x97\xdf\x65\x63\ +\xaa\xc5\xf3\x1b\xbb\xf7\xd0\xa7\x03\xab\x8d\xaa\xca\x66\x4d\x72\ +\xc8\xbe\x4b\xa4\x33\xeb\xb7\xf4\xd9\x32\xd2\xfb\x7d\xef\xe8\x93\ +\xb3\x1b\xd3\xaa\xdd\x3b\x86\x21\xfb\x70\xcc\xd5\x77\xd9\xae\xf7\ +\xbd\xbf\x34\xd2\xe5\x16\xe8\xd7\xb5\x9e\x9e\xd6\xe1\xaa\x4f\xc7\ +\x4e\x8e\x29\x57\x7c\xf2\xf8\x79\xd2\xfb\x17\x1d\x00\x66\x1b\xba\ +\x0d\x21\x9e\xde\x3b\x62\x61\xc0\xe5\xbe\xf7\xea\x26\x0a\xc1\x58\ +\xde\xf7\x3e\x62\xfb\x0e\x0c\x55\x3d\x3d\xbe\xaa\x0c\xc2\x15\xd0\ +\xa7\xcb\xec\x0e\xd6\x2f\x5a\xb6\xf2\xbb\x6c\xfa\xf6\x17\x0f\x87\ +\x7f\x82\x42\xdf\x4b\x3e\xb5\x6c\x8e\x0d\x2f\xa2\xd0\xb2\x1d\x3c\ +\x02\xa5\xce\x01\xfa\x3e\xfc\xf0\x0a\x1b\xf2\xb0\x3c\x14\xbb\x3d\ +\xcd\xd0\x0b\x2e\xf5\x77\xd9\xa0\x8e\xbf\x02\xb5\x37\x5c\x14\xe9\ +\x5a\xb6\x12\xae\xba\x87\x96\x8d\x30\xaf\x01\xd1\x2f\x86\x14\x65\ +\x7c\x97\xed\x4e\x20\x5f\xa3\x03\x34\x6f\xff\x57\xee\xbd\xcb\x9a\ +\x2e\x5a\xb6\x77\xde\x43\xcb\x46\xf2\xdb\xdb\xf6\x05\x54\x7d\x97\ +\x0d\x5a\xb6\xe3\xd4\xb2\xed\x88\x71\xc0\xd6\xba\x1d\x65\xd5\xb8\ +\x31\x92\x47\x68\xd9\x4c\xb9\xda\x94\xf9\x4e\xfa\x5c\x7d\x97\x8d\ +\x6d\x62\xe7\xd5\x36\xab\xad\x55\x5a\xb6\xc5\xbf\xba\x69\xdc\xe7\ +\xf8\x2e\x1b\xb4\x6c\x5b\x68\xd9\x72\x11\xed\xe4\xbf\xfc\xbb\x6c\ +\x88\x70\x92\xf8\x0f\x9a\xb7\xbf\x25\xd2\x7b\x95\xad\x0b\xd9\xd8\ +\x61\xde\x52\x49\x5b\x2c\x6f\x94\x91\x7b\x8f\xef\xb2\xe9\x7d\xef\ +\x84\x62\x75\x68\xd9\xe2\xbb\x6c\x51\x71\x81\x96\x0d\x1f\x77\xb8\ +\x1e\xd9\xce\xf6\x67\x6c\xe4\xd2\x93\x3d\xa4\x0e\xa8\xb4\x7d\x40\ +\xdd\xf4\xd1\x44\xd6\xd4\xb1\x63\x47\xaa\xe9\x19\x14\x5c\xc2\x68\ +\xb7\x9d\x3b\x1d\xe5\x37\x5c\x16\xca\xec\x4b\x2d\x9b\x7f\x97\x2d\ +\xee\x0e\xf4\x4f\x74\x79\xcd\xa5\xbe\x7e\xc4\x53\xb0\xce\x79\x9c\ +\xd3\x71\xdd\xfb\x07\x3f\xad\xab\x6c\x9d\x78\xcf\xbd\x13\xfb\x6f\ +\x73\xef\x38\x05\xb9\xd2\x41\x49\xff\xd3\x77\xd9\x46\x65\x1d\x55\ +\x36\x8b\xf4\xf1\x22\x6b\x7a\xc5\x05\xff\xea\x93\x67\xe4\x20\x58\ +\x85\x6b\x15\xe9\x3d\xf5\x1e\x7d\xef\xdb\xbf\xe6\xde\xe3\x6b\x4d\ +\x6a\x90\x34\xa9\x03\xe9\xd5\x97\x1d\xe2\x9c\x7e\xf9\x5a\x13\x5b\ +\x80\x59\x8f\x2a\x5b\xd9\x03\xfd\xf1\x4c\xcd\x32\x72\x5d\xcb\x26\ +\x5e\x0b\x6c\xca\x39\xbe\x24\x1d\xb9\xf7\xc8\xc9\xa1\xb4\x5a\xde\ +\x0d\x3b\x63\x78\xeb\xfb\xc9\x39\x3b\xdc\x22\x67\xa3\x84\x7e\xc6\ +\xe3\x25\x6e\x4d\x6a\x18\xa8\xac\x6a\xc9\xa5\x90\xa7\x37\x8b\xf4\ +\x1e\xed\x68\xf0\xd4\x04\x84\x67\xa2\xea\xdc\xfb\x21\x86\xd4\x3b\ +\x3f\x8c\x9a\xf7\xc5\x3f\xd1\x65\x60\xc2\xdd\x5c\xe5\x02\xac\x1e\ +\xe9\xf8\x16\x9f\x73\xfe\x4c\xd6\x31\x25\x79\x77\x95\xb7\xa4\x96\ +\xaa\xd5\x4e\xb8\x18\x34\x2e\xec\x91\x79\x02\xeb\x00\x73\x4d\xca\ +\xb8\x07\xfb\x42\x84\x63\xb1\x60\xae\xd7\xf4\xd0\xb2\xd9\xb7\xd9\ +\x4c\xbe\xe8\xac\xaf\x70\x2e\x70\x19\x10\xe9\x4f\x1e\xab\x92\xee\ +\x84\xd7\xdd\x52\xff\x00\x0e\x5e\x0c\x4e\xab\x94\x1d\x32\x00\x00\ +\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x06\x53\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x03\x00\x00\x00\x9d\xb7\x81\xec\ +\x00\x00\x02\xeb\x50\x4c\x54\x45\x00\x00\x00\xff\x00\x00\xff\xff\ +\xff\xff\xff\xff\xbf\x00\x00\xff\xff\xff\xcc\x00\x00\xff\xff\xff\ +\xdf\x00\x00\xe2\x00\x00\xe5\x00\x00\xff\xff\xff\xe7\x00\x00\xff\ +\xff\xff\xd4\x00\x00\xff\xff\xff\xd7\x00\x00\xda\x12\x12\xff\xff\ +\xff\xdd\x00\x00\xe4\x00\x00\xff\xff\xff\xff\xff\xff\xda\x00\x00\ +\xff\xff\xff\xdc\x00\x00\xe2\x00\x00\xff\xff\xff\xda\x00\x00\xff\ +\xff\xff\xdb\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\ +\xff\xdc\x00\x00\xde\x00\x00\xe4\x47\x47\xff\xff\xff\xff\xff\xff\ +\xdc\x00\x00\xdd\x00\x00\xdd\x00\x00\xff\xff\xff\xff\xff\xff\xdd\ +\x00\x00\xff\xff\xff\xdf\x00\x00\xff\xff\xff\xdd\x00\x00\xfa\xd5\ +\xd5\xff\xff\xff\xff\xff\xff\xe4\x38\x38\xdd\x00\x00\xff\xff\xff\ +\xff\xff\xff\xff\xff\xff\xdd\x00\x00\xff\xff\xff\xff\xff\xff\xdf\ +\x00\x00\xdd\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xdd\x00\ +\x00\xde\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\ +\xde\x00\x00\xde\x00\x00\xff\xff\xff\xdf\x00\x00\xeb\x70\x70\xdd\ +\x00\x00\xe0\x02\x02\xde\x00\x00\xff\xff\xff\xdf\x00\x00\xff\xff\ +\xff\xf0\x8c\x8c\xde\x00\x00\xff\xff\xff\xdf\x00\x00\xff\xff\xff\ +\xdf\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xde\x00\x00\xff\ +\xff\xff\xec\x75\x75\xdf\x00\x00\xe8\x51\x51\xde\x00\x00\xf9\xdc\ +\xdc\xff\xff\xff\xde\x00\x00\xdf\x00\x00\xff\xff\xff\xde\x00\x00\ +\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf5\xb2\xb2\xff\ +\xff\xff\xdf\x00\x00\xff\xff\xff\xdf\x00\x00\xdf\x00\x00\xde\x00\ +\x00\xde\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xed\x71\x71\ +\xde\x00\x00\xff\xff\xff\xe3\x27\x27\xde\x00\x00\xde\x00\x00\xfd\ +\xf4\xf4\xf0\x87\x87\xff\xff\xff\xff\xff\xff\xe3\x24\x24\xff\xff\ +\xff\xe3\x1f\x1f\xff\xff\xff\xfa\xd9\xd9\xff\xff\xff\xe2\x1a\x1a\ +\xdf\x00\x00\xde\x00\x00\xde\x00\x00\xff\xff\xff\xff\xff\xff\xdf\ +\x00\x00\xde\x00\x00\xea\x5c\x5c\xff\xff\xff\xe2\x1b\x1b\xe0\x0a\ +\x0a\xdf\x03\x03\xde\x00\x00\xff\xff\xff\xff\xff\xff\xde\x02\x02\ +\xff\xff\xff\xdf\x02\x02\xff\xff\xff\xff\xff\xff\xeb\x63\x63\xdf\ +\x00\x00\xdf\x01\x01\xff\xff\xff\xdf\x00\x00\xe0\x08\x08\xde\x00\ +\x00\xff\xff\xff\xec\x6d\x6d\xde\x00\x00\xe1\x10\x10\xf4\xae\xae\ +\xdf\x00\x00\xdf\x00\x00\xff\xff\xff\xff\xff\xff\xf6\xbd\xbd\xfd\ +\xf4\xf4\xdf\x00\x00\xde\x00\x00\xe3\x22\x22\xf6\xc1\xc1\xff\xff\ +\xff\xe9\x5a\x5a\xf0\x8b\x8b\xff\xff\xff\xdf\x00\x00\xff\xff\xff\ +\xe3\x22\x22\xdf\x01\x01\xe5\x32\x32\xe8\x48\x48\xf6\xb7\xb7\xfc\ +\xea\xea\xfd\xf0\xf0\xfd\xf2\xf2\xff\xfe\xfe\xdf\x02\x02\xe9\x4c\ +\x4c\xe2\x1a\x1a\xe0\x04\x04\xe4\x26\x26\xe4\x27\x27\xe0\x05\x05\ +\xe5\x33\x33\xe6\x35\x35\xe6\x3b\x3b\xe7\x3e\x3e\xe8\x44\x44\xe0\ +\x06\x06\xe2\x19\x19\xe9\x4f\x4f\xe9\x52\x52\xea\x57\x57\xea\x58\ +\x58\xea\x59\x59\xeb\x61\x61\xeb\x62\x62\xec\x66\x66\xec\x6a\x6a\ +\xee\x74\x74\xee\x75\x75\xee\x7b\x7b\xef\x7e\x7e\xef\x81\x81\xf1\ +\x8f\x8f\xf3\x9e\x9e\xf3\x9f\x9f\xf3\xa2\xa2\xf4\xaa\xaa\xf4\xab\ +\xab\xf5\xb0\xb0\xf5\xb1\xb1\xf6\xb4\xb4\xe0\x09\x09\xf7\xbe\xbe\ +\xf8\xc4\xc4\xf9\xd0\xd0\xfa\xd4\xd4\xfa\xd5\xd5\xfa\xdb\xdb\xfb\ +\xde\xde\xfb\xe0\xe0\xfc\xe4\xe4\xe0\x0b\x0b\xfd\xec\xec\xe1\x0e\ +\x0e\xe2\x15\x15\xfe\xf7\xf7\xfe\xfb\xfb\xff\xfc\xfc\xe2\x16\x16\ +\xe2\x17\x17\x66\xee\x72\x60\x00\x00\x00\xb6\x74\x52\x4e\x53\x00\ +\x01\x01\x03\x04\x04\x05\x08\x08\x09\x0a\x0a\x0b\x0b\x0c\x0d\x0d\ +\x0e\x0f\x0f\x13\x13\x14\x15\x15\x16\x1b\x1b\x1c\x1c\x1d\x1e\x1f\ +\x21\x24\x25\x27\x27\x2a\x2b\x2c\x2d\x2e\x2f\x32\x36\x36\x39\x3b\ +\x3c\x3d\x40\x41\x44\x45\x48\x4b\x4c\x4d\x4e\x4f\x50\x54\x54\x55\ +\x5a\x5c\x5d\x5d\x60\x61\x63\x65\x67\x67\x68\x6b\x6c\x6c\x6d\x70\ +\x71\x73\x78\x7c\x7e\x80\x81\x83\x84\x8a\x8b\x8c\x8c\x8d\x91\x93\ +\x95\x95\x95\x96\x98\x99\x9c\x9d\x9e\xa4\xa6\xa7\xa7\xa8\xa8\xa9\ +\xaa\xac\xad\xad\xb0\xb3\xb3\xb4\xb7\xbb\xbc\xbd\xbd\xc0\xc1\xc4\ +\xc6\xca\xcb\xcc\xcd\xcd\xd0\xd2\xd4\xd7\xd8\xd9\xdb\xdc\xdc\xdd\ +\xde\xe0\xe1\xe4\xe5\xe6\xe7\xe8\xe9\xe9\xea\xef\xf0\xf0\xf1\xf3\ +\xf3\xf5\xf6\xf6\xf7\xf7\xf7\xf8\xfa\xfa\xfb\xfb\xfb\xfb\xfc\xfc\ +\xfd\xfd\xfe\xfe\xfe\xa0\xb1\xff\x8a\x00\x00\x02\x61\x49\x44\x41\ +\x54\x78\x5e\xdd\xd7\x55\x70\x13\x51\x14\xc7\xe1\xd3\x52\x28\xda\ +\x42\xf1\xe2\x5e\xdc\x5b\x28\x10\xdc\xdd\xdd\xdd\x0a\x45\x8a\xb4\ +\xb8\x7b\x70\x29\x5e\x24\x50\xa0\xe8\xd9\xa4\x2a\xb8\xbb\xbb\xbb\ +\xeb\x23\x93\x3d\x77\xee\xcb\xe6\x66\x98\x93\x17\xa6\xbf\xd7\xff\ +\xe6\x9b\x7d\xc8\x9c\x99\x85\x14\x52\xfa\x52\x39\x5d\xfa\xf9\x80\ +\x28\xc4\x95\x41\x26\x36\x30\x10\xa9\x19\xd9\x78\x80\xc7\x4e\x14\ +\xed\xaa\xca\x02\x72\xa3\xec\x60\x25\x96\xb0\x1e\x65\x1b\x33\x70\ +\x80\xfa\x36\x09\xd8\x46\x00\xa7\x5e\x17\xbe\xa0\xe8\x68\x19\x96\ +\x50\x7d\xca\xee\x68\x02\xae\xb6\x03\x5e\x9e\x7d\x08\xb0\x8e\x02\ +\x66\x45\x09\x38\x61\xe6\x02\x79\x05\x10\xf9\x3f\x03\x6e\x2e\x01\ +\x25\x47\x2f\x39\xb0\x2a\x34\x90\x0d\x34\x8f\xa2\x7d\x32\x13\xf0\ +\xb3\xa0\x68\x2a\x0f\xe8\x84\x22\xbc\x5c\x97\x05\x8c\x95\x80\x75\ +\x3c\x0b\xe8\x2d\x81\x73\x66\x16\x60\x92\xc0\xdd\xe9\x0a\xc0\xd7\ +\x29\xe0\x36\x0b\x29\x6b\x7c\x37\x05\x90\x8e\x80\xa4\xfd\x8e\xe7\ +\x2c\xcb\x2e\xda\xe7\x2b\x1f\xcd\x3e\xa0\x68\x33\x09\x87\x14\x37\ +\xc9\xbb\xdf\xbe\x47\xb1\x9f\xb4\x71\x85\x40\xd5\x42\x02\x62\x5a\ +\xa8\xfe\xb1\x39\x2a\x37\x0a\x28\x08\xea\xc2\x50\xb4\xa2\x95\x17\ +\x70\xaa\x85\xb2\x6d\xc5\x58\xc2\x3c\x94\xed\xc8\xc7\x01\xca\xa2\ +\x2c\xb9\x27\x07\xe8\x81\xb2\x9b\x21\x0c\xc0\x6f\x8f\x04\x6c\xaf\ +\x87\x30\x80\x60\x14\xe1\x9f\x27\xc7\xaa\x30\x80\xf9\x04\x1c\xbf\ +\xf7\x2e\x71\x5d\x03\x60\xb4\x89\x80\x17\xab\xbb\x96\x70\x07\x46\ +\x59\x91\x8a\xab\xe1\xe2\x55\xd6\x72\x39\x9c\xfd\xbb\x88\x9a\x32\ +\x8f\x6a\x28\x8a\x26\x34\x63\x01\x5e\x16\xa4\x4e\xfd\x6c\xcc\x02\ +\x02\x51\xf4\x74\x51\x6a\x16\xd0\x17\xa9\xe8\xc4\x3a\xc0\x02\x96\ +\x22\x15\x3b\xd7\x9d\x05\x14\x41\xea\xbc\x16\x00\x2c\xa0\x35\x52\ +\x6f\xa6\x01\x0f\x98\x48\x63\xb2\x56\x81\x07\xa4\xdd\x4e\x17\xfb\ +\x6d\x08\xf0\x00\x7f\xda\xae\x1f\x2e\x0d\xea\xca\x13\xf0\x2a\x52\ +\x79\x6a\x4e\x7f\x18\x0e\x4e\xea\x40\xc0\xd9\x08\x30\xb6\x40\x9f\ +\x6e\xed\x2d\xac\x04\x7c\xeb\x05\x6f\x25\xe0\xf6\x4c\xe3\x9a\x9f\ +\xde\xed\xf3\x20\x50\x94\x39\x08\x65\x8f\xfb\x1b\xf7\x26\xfa\x72\ +\x27\x22\x8f\x0a\x18\x8c\xb2\xef\x71\x0d\x8d\xfb\x18\xfb\xf2\xed\ +\x6b\x77\x50\x94\xc6\x82\xb2\x67\xe1\xc6\x73\xe0\xa1\xdf\xaa\x07\ +\x5b\xb2\xff\xc3\xf7\xc2\x35\xad\xb6\x71\xaf\xa8\xbf\x5a\x42\x47\ +\x50\xb6\x16\x45\x37\x12\x46\x82\xb1\xb6\xf6\xe9\x61\xb8\xb7\x1a\ +\x30\x25\xe9\xc0\xef\xe7\xda\x50\x47\x4f\xb5\x44\xc4\x93\x3f\xda\ +\x80\x93\xda\x1f\x39\x13\x73\xff\x65\xfc\x86\x9a\x0e\xd7\x8c\xcb\ +\xf1\xd2\xfb\xc5\x9e\xe0\xac\x72\xc3\x66\x4f\xea\x5c\xcd\x47\xb1\ +\x66\x9a\xf3\x6b\x4d\x71\x70\xa9\x02\xa9\x20\x25\xf7\x17\x09\xba\ +\x39\x39\xea\xb1\x61\x75\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\ +\x60\x82\ +\x00\x00\x06\x53\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x03\x00\x00\x00\x9d\xb7\x81\xec\ +\x00\x00\x02\xeb\x50\x4c\x54\x45\x00\x00\x00\xff\x00\x00\xff\xff\ +\xff\xff\xff\xff\xbf\x00\x00\xff\xff\xff\x99\x00\x00\xff\xff\xff\ +\x9f\x00\x00\xaa\x00\x00\xb2\x00\x00\xff\xff\xff\xb9\x00\x00\xff\ +\xff\xff\xaa\x00\x00\xff\xff\xff\xb0\x00\x00\xb6\x12\x12\xff\xff\ +\xff\xaa\x00\x00\xae\x00\x00\xff\xff\xff\xff\xff\xff\xaa\x00\x00\ +\xff\xff\xff\xad\x00\x00\xb3\x00\x00\xff\xff\xff\xad\x00\x00\xff\ +\xff\xff\xaf\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\ +\xff\xac\x00\x00\xb0\x00\x00\xc4\x47\x47\xff\xff\xff\xff\xff\xff\ +\xad\x00\x00\xaf\x00\x00\xb1\x00\x00\xff\xff\xff\xff\xff\xff\xae\ +\x00\x00\xff\xff\xff\xae\x00\x00\xff\xff\xff\xae\x00\x00\xf2\xd5\ +\xd5\xff\xff\xff\xff\xff\xff\xbf\x38\x38\xad\x00\x00\xff\xff\xff\ +\xff\xff\xff\xff\xff\xff\xaf\x00\x00\xff\xff\xff\xff\xff\xff\xaf\ +\x00\x00\xb0\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xae\x00\ +\x00\xaf\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\ +\xae\x00\x00\xaf\x00\x00\xff\xff\xff\xae\x00\x00\xd1\x70\x70\xae\ +\x00\x00\xae\x02\x02\xaf\x00\x00\xff\xff\xff\xb0\x00\x00\xff\xff\ +\xff\xda\x8c\x8c\xae\x00\x00\xff\xff\xff\xaf\x00\x00\xff\xff\xff\ +\xaf\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xae\x00\x00\xff\ +\xff\xff\xd3\x75\x75\xaf\x00\x00\xc9\x51\x51\xae\x00\x00\xf4\xdc\ +\xdc\xff\xff\xff\xaf\x00\x00\xae\x00\x00\xff\xff\xff\xae\x00\x00\ +\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe6\xb2\xb2\xff\ +\xff\xff\xae\x00\x00\xff\xff\xff\xaf\x00\x00\xaf\x00\x00\xae\x00\ +\x00\xaf\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd2\x71\x71\ +\xaf\x00\x00\xff\xff\xff\xba\x27\x27\xae\x00\x00\xaf\x00\x00\xfa\ +\xf4\xf4\xd9\x87\x87\xff\xff\xff\xff\xff\xff\xba\x24\x24\xff\xff\ +\xff\xb8\x1f\x1f\xff\xff\xff\xf3\xd9\xd9\xff\xff\xff\xb7\x1a\x1a\ +\xae\x00\x00\xae\x00\x00\xaf\x00\x00\xff\xff\xff\xff\xff\xff\xae\ +\x00\x00\xaf\x00\x00\xcc\x5c\x5c\xff\xff\xff\xb7\x1b\x1b\xb2\x0a\ +\x0a\xaf\x03\x03\xae\x00\x00\xff\xff\xff\xff\xff\xff\xaf\x02\x02\ +\xff\xff\xff\xb0\x02\x02\xff\xff\xff\xff\xff\xff\xcd\x63\x63\xaf\ +\x00\x00\xaf\x01\x01\xff\xff\xff\xaf\x00\x00\xb1\x08\x08\xae\x00\ +\x00\xff\xff\xff\xd1\x6d\x6d\xaf\x00\x00\xb4\x10\x10\xe6\xae\xae\ +\xae\x00\x00\xaf\x00\x00\xff\xff\xff\xff\xff\xff\xea\xbd\xbd\xfb\ +\xf4\xf4\xae\x00\x00\xaf\x00\x00\xba\x22\x22\xeb\xc1\xc1\xff\xff\ +\xff\xcb\x5a\x5a\xda\x8b\x8b\xff\xff\xff\xaf\x00\x00\xff\xff\xff\ +\xba\x22\x22\xaf\x01\x01\xbf\x32\x32\xc6\x48\x48\xe8\xb7\xb7\xf8\ +\xea\xea\xfa\xf0\xf0\xfb\xf2\xf2\xff\xfe\xfe\xb0\x02\x02\xc7\x4c\ +\x4c\xb7\x1a\x1a\xb0\x04\x04\xbb\x26\x26\xbb\x27\x27\xb1\x05\x05\ +\xbf\x33\x33\xc0\x35\x35\xc2\x3b\x3b\xc2\x3e\x3e\xc4\x44\x44\xb1\ +\x06\x06\xb7\x19\x19\xc8\x4f\x4f\xc9\x52\x52\xca\x57\x57\xcb\x58\ +\x58\xcb\x59\x59\xcd\x61\x61\xce\x62\x62\xcf\x66\x66\xd0\x6a\x6a\ +\xd3\x74\x74\xd4\x75\x75\xd6\x7b\x7b\xd7\x7e\x7e\xd7\x81\x81\xdc\ +\x8f\x8f\xe1\x9e\x9e\xe1\x9f\x9f\xe2\xa2\xa2\xe4\xaa\xaa\xe5\xab\ +\xab\xe6\xb0\xb0\xe7\xb1\xb1\xe7\xb4\xb4\xb2\x09\x09\xeb\xbe\xbe\ +\xec\xc4\xc4\xf0\xd0\xd0\xf2\xd4\xd4\xf2\xd5\xd5\xf4\xdb\xdb\xf5\ +\xde\xde\xf5\xe0\xe0\xf7\xe4\xe4\xb2\x0b\x0b\xf9\xec\xec\xb3\x0e\ +\x0e\xb6\x15\x15\xfc\xf7\xf7\xfe\xfb\xfb\xfe\xfc\xfc\xb6\x16\x16\ +\xb6\x17\x17\xdc\x97\x3c\x09\x00\x00\x00\xb6\x74\x52\x4e\x53\x00\ +\x01\x01\x03\x04\x04\x05\x08\x08\x09\x0a\x0a\x0b\x0b\x0c\x0d\x0d\ +\x0e\x0f\x0f\x13\x13\x14\x15\x15\x16\x1b\x1b\x1c\x1c\x1d\x1e\x1f\ +\x21\x24\x25\x27\x27\x2a\x2b\x2c\x2d\x2e\x2f\x32\x36\x36\x39\x3b\ +\x3c\x3d\x40\x41\x44\x45\x48\x4b\x4c\x4d\x4e\x4f\x50\x54\x54\x55\ +\x5a\x5c\x5d\x5d\x60\x61\x63\x65\x67\x67\x68\x6b\x6c\x6c\x6d\x70\ +\x71\x73\x78\x7c\x7e\x80\x81\x83\x84\x8a\x8b\x8c\x8c\x8d\x91\x93\ +\x95\x95\x95\x96\x98\x99\x9c\x9d\x9e\xa4\xa6\xa7\xa7\xa8\xa8\xa9\ +\xaa\xac\xad\xad\xb0\xb3\xb3\xb4\xb7\xbb\xbc\xbd\xbd\xc0\xc1\xc4\ +\xc6\xca\xcb\xcc\xcd\xcd\xd0\xd2\xd4\xd7\xd8\xd9\xdb\xdc\xdc\xdd\ +\xde\xe0\xe1\xe4\xe5\xe6\xe7\xe8\xe9\xe9\xea\xef\xf0\xf0\xf1\xf3\ +\xf3\xf5\xf6\xf6\xf7\xf7\xf7\xf8\xfa\xfa\xfb\xfb\xfb\xfb\xfc\xfc\ +\xfd\xfd\xfe\xfe\xfe\xa0\xb1\xff\x8a\x00\x00\x02\x61\x49\x44\x41\ +\x54\x78\x5e\xdd\xd7\x55\x70\x13\x51\x14\xc7\xe1\xd3\x52\x28\xda\ +\x42\xf1\xe2\x5e\xdc\x5b\x28\x10\xdc\xdd\xdd\xdd\x0a\x45\x8a\xb4\ +\xb8\x7b\x70\x29\x5e\x24\x50\xa0\xe8\xd9\xa4\x2a\xb8\xbb\xbb\xbb\ +\xeb\x23\x93\x3d\x77\xee\xcb\xe6\x66\x98\x93\x17\xa6\xbf\xd7\xff\ +\xe6\x9b\x7d\xc8\x9c\x99\x85\x14\x52\xfa\x52\x39\x5d\xfa\xf9\x80\ +\x28\xc4\x95\x41\x26\x36\x30\x10\xa9\x19\xd9\x78\x80\xc7\x4e\x14\ +\xed\xaa\xca\x02\x72\xa3\xec\x60\x25\x96\xb0\x1e\x65\x1b\x33\x70\ +\x80\xfa\x36\x09\xd8\x46\x00\xa7\x5e\x17\xbe\xa0\xe8\x68\x19\x96\ +\x50\x7d\xca\xee\x68\x02\xae\xb6\x03\x5e\x9e\x7d\x08\xb0\x8e\x02\ +\x66\x45\x09\x38\x61\xe6\x02\x79\x05\x10\xf9\x3f\x03\x6e\x2e\x01\ +\x25\x47\x2f\x39\xb0\x2a\x34\x90\x0d\x34\x8f\xa2\x7d\x32\x13\xf0\ +\xb3\xa0\x68\x2a\x0f\xe8\x84\x22\xbc\x5c\x97\x05\x8c\x95\x80\x75\ +\x3c\x0b\xe8\x2d\x81\x73\x66\x16\x60\x92\xc0\xdd\xe9\x0a\xc0\xd7\ +\x29\xe0\x36\x0b\x29\x6b\x7c\x37\x05\x90\x8e\x80\xa4\xfd\x8e\xe7\ +\x2c\xcb\x2e\xda\xe7\x2b\x1f\xcd\x3e\xa0\x68\x33\x09\x87\x14\x37\ +\xc9\xbb\xdf\xbe\x47\xb1\x9f\xb4\x71\x85\x40\xd5\x42\x02\x62\x5a\ +\xa8\xfe\xb1\x39\x2a\x37\x0a\x28\x08\xea\xc2\x50\xb4\xa2\x95\x17\ +\x70\xaa\x85\xb2\x6d\xc5\x58\xc2\x3c\x94\xed\xc8\xc7\x01\xca\xa2\ +\x2c\xb9\x27\x07\xe8\x81\xb2\x9b\x21\x0c\xc0\x6f\x8f\x04\x6c\xaf\ +\x87\x30\x80\x60\x14\xe1\x9f\x27\xc7\xaa\x30\x80\xf9\x04\x1c\xbf\ +\xf7\x2e\x71\x5d\x03\x60\xb4\x89\x80\x17\xab\xbb\x96\x70\x07\x46\ +\x59\x91\x8a\xab\xe1\xe2\x55\xd6\x72\x39\x9c\xfd\xbb\x88\x9a\x32\ +\x8f\x6a\x28\x8a\x26\x34\x63\x01\x5e\x16\xa4\x4e\xfd\x6c\xcc\x02\ +\x02\x51\xf4\x74\x51\x6a\x16\xd0\x17\xa9\xe8\xc4\x3a\xc0\x02\x96\ +\x22\x15\x3b\xd7\x9d\x05\x14\x41\xea\xbc\x16\x00\x2c\xa0\x35\x52\ +\x6f\xa6\x01\x0f\x98\x48\x63\xb2\x56\x81\x07\xa4\xdd\x4e\x17\xfb\ +\x6d\x08\xf0\x00\x7f\xda\xae\x1f\x2e\x0d\xea\xca\x13\xf0\x2a\x52\ +\x79\x6a\x4e\x7f\x18\x0e\x4e\xea\x40\xc0\xd9\x08\x30\xb6\x40\x9f\ +\x6e\xed\x2d\xac\x04\x7c\xeb\x05\x6f\x25\xe0\xf6\x4c\xe3\x9a\x9f\ +\xde\xed\xf3\x20\x50\x94\x39\x08\x65\x8f\xfb\x1b\xf7\x26\xfa\x72\ +\x27\x22\x8f\x0a\x18\x8c\xb2\xef\x71\x0d\x8d\xfb\x18\xfb\xf2\xed\ +\x6b\x77\x50\x94\xc6\x82\xb2\x67\xe1\xc6\x73\xe0\xa1\xdf\xaa\x07\ +\x5b\xb2\xff\xc3\xf7\xc2\x35\xad\xb6\x71\xaf\xa8\xbf\x5a\x42\x47\ +\x50\xb6\x16\x45\x37\x12\x46\x82\xb1\xb6\xf6\xe9\x61\xb8\xb7\x1a\ +\x30\x25\xe9\xc0\xef\xe7\xda\x50\x47\x4f\xb5\x44\xc4\x93\x3f\xda\ +\x80\x93\xda\x1f\x39\x13\x73\xff\x65\xfc\x86\x9a\x0e\xd7\x8c\xcb\ +\xf1\xd2\xfb\xc5\x9e\xe0\xac\x72\xc3\x66\x4f\xea\x5c\xcd\x47\xb1\ +\x66\x9a\xf3\x6b\x4d\x71\x70\xa9\x02\xa9\x20\x25\xf7\x17\x09\xba\ +\x39\x39\xea\xb1\x61\x75\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\ +\x60\x82\ +\x00\x00\x06\x53\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x40\x00\x00\x00\x40\x08\x03\x00\x00\x00\x9d\xb7\x81\xec\ +\x00\x00\x02\xeb\x50\x4c\x54\x45\x00\x00\x00\x00\x00\x00\xff\xff\ +\xff\xff\xff\xff\x7f\x00\x00\xff\xff\xff\x66\x00\x00\xff\xff\xff\ +\x7f\x00\x00\x71\x00\x00\x7f\x00\x00\xff\xff\xff\x73\x00\x00\xff\ +\xff\xff\x7f\x00\x00\xff\xff\xff\x75\x00\x00\x7f\x12\x12\xff\xff\ +\xff\x77\x00\x00\x78\x00\x00\xff\xff\xff\xff\xff\xff\x79\x00\x00\ +\xff\xff\xff\x7f\x00\x00\x7a\x00\x00\xff\xff\xff\x7f\x00\x00\xff\ +\xff\xff\x7b\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\ +\xff\x7c\x00\x00\x7c\x00\x00\xa3\x47\x47\xff\xff\xff\xff\xff\xff\ +\x7f\x00\x00\x7c\x00\x00\x7f\x00\x00\xff\xff\xff\xff\xff\xff\x7f\ +\x00\x00\xff\xff\xff\x7d\x00\x00\xff\xff\xff\x7f\x00\x00\xea\xd5\ +\xd5\xff\xff\xff\xff\xff\xff\x99\x38\x38\x7d\x00\x00\xff\xff\xff\ +\xff\xff\xff\xff\xff\xff\x7d\x00\x00\xff\xff\xff\xff\xff\xff\x7f\ +\x00\x00\x7f\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7f\x00\ +\x00\x7e\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\ +\x7e\x00\x00\x7e\x00\x00\xff\xff\xff\x7f\x00\x00\xb7\x70\x70\x7f\ +\x00\x00\x7f\x02\x02\x7e\x00\x00\xff\xff\xff\x7e\x00\x00\xff\xff\ +\xff\xc5\x8c\x8c\x7f\x00\x00\xff\xff\xff\x7f\x00\x00\xff\xff\xff\ +\x7e\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7f\x00\x00\xff\ +\xff\xff\xba\x75\x75\x7e\x00\x00\xa8\x51\x51\x7e\x00\x00\xed\xdc\ +\xdc\xff\xff\xff\x7f\x00\x00\x7f\x00\x00\xff\xff\xff\x7f\x00\x00\ +\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd8\xb2\xb2\xff\ +\xff\xff\x7f\x00\x00\xff\xff\xff\x7e\x00\x00\x7f\x00\x00\x7f\x00\ +\x00\x7e\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb7\x71\x71\ +\x7f\x00\x00\xff\xff\xff\x93\x27\x27\x7f\x00\x00\x7e\x00\x00\xf9\ +\xf4\xf4\xc3\x87\x87\xff\xff\xff\xff\xff\xff\x91\x24\x24\xff\xff\ +\xff\x8f\x1f\x1f\xff\xff\xff\xec\xd9\xd9\xff\xff\xff\x8c\x1a\x1a\ +\x7f\x00\x00\x7f\x00\x00\x7e\x00\x00\xff\xff\xff\xff\xff\xff\x7e\ +\x00\x00\x7f\x00\x00\xad\x5c\x5c\xff\xff\xff\x8d\x1b\x1b\x84\x0a\ +\x0a\x81\x03\x03\x7f\x00\x00\xff\xff\xff\xff\xff\xff\x80\x02\x02\ +\xff\xff\xff\x80\x02\x02\xff\xff\xff\xff\xff\xff\xb1\x63\x63\x7f\ +\x00\x00\x7f\x01\x01\xff\xff\xff\x7e\x00\x00\x83\x08\x08\x7e\x00\ +\x00\xff\xff\xff\xb6\x6d\x6d\x7e\x00\x00\x87\x10\x10\xd6\xae\xae\ +\x7f\x00\x00\x7f\x00\x00\xff\xff\xff\xff\xff\xff\xde\xbd\xbd\xf9\ +\xf4\xf4\x7e\x00\x00\x7f\x00\x00\x90\x22\x22\xdf\xc1\xc1\xff\xff\ +\xff\xac\x5a\x5a\xc4\x8b\x8b\xff\xff\xff\x7f\x00\x00\xff\xff\xff\ +\x90\x22\x22\x80\x01\x01\x98\x32\x32\xa3\x48\x48\xdb\xb7\xb7\xf4\ +\xea\xea\xf7\xf0\xf0\xf8\xf2\xf2\xfe\xfe\xfe\x80\x02\x02\xa5\x4c\ +\x4c\x8c\x1a\x1a\x81\x04\x04\x92\x26\x26\x93\x27\x27\x82\x05\x05\ +\x99\x33\x33\x9a\x35\x35\x9d\x3b\x3b\x9e\x3e\x3e\xa1\x44\x44\x82\ +\x06\x06\x8c\x19\x19\xa7\x4f\x4f\xa8\x52\x52\xab\x57\x57\xab\x58\ +\x58\xac\x59\x59\xb0\x61\x61\xb0\x62\x62\xb2\x66\x66\xb4\x6a\x6a\ +\xb9\x74\x74\xba\x75\x75\xbd\x7b\x7b\xbe\x7e\x7e\xc0\x81\x81\xc7\ +\x8f\x8f\xce\x9e\x9e\xcf\x9f\x9f\xd0\xa2\xa2\xd4\xaa\xaa\xd5\xab\ +\xab\xd7\xb0\xb0\xd8\xb1\xb1\xd9\xb4\xb4\x84\x09\x09\xde\xbe\xbe\ +\xe1\xc4\xc4\xe7\xd0\xd0\xe9\xd4\xd4\xea\xd5\xd5\xed\xdb\xdb\xee\ +\xde\xde\xef\xe0\xe0\xf1\xe4\xe4\x85\x0b\x0b\xf5\xec\xec\x86\x0e\ +\x0e\x8a\x15\x15\xfb\xf7\xf7\xfd\xfb\xfb\xfd\xfc\xfc\x8a\x16\x16\ +\x8b\x17\x17\xd2\x67\xa5\xb8\x00\x00\x00\xb6\x74\x52\x4e\x53\x00\ +\x01\x01\x03\x04\x04\x05\x08\x08\x09\x0a\x0a\x0b\x0b\x0c\x0d\x0d\ +\x0e\x0f\x0f\x13\x13\x14\x15\x15\x16\x1b\x1b\x1c\x1c\x1d\x1e\x1f\ +\x21\x24\x25\x27\x27\x2a\x2b\x2c\x2d\x2e\x2f\x32\x36\x36\x39\x3b\ +\x3c\x3d\x40\x41\x44\x45\x48\x4b\x4c\x4d\x4e\x4f\x50\x54\x54\x55\ +\x5a\x5c\x5d\x5d\x60\x61\x63\x65\x67\x67\x68\x6b\x6c\x6c\x6d\x70\ +\x71\x73\x78\x7c\x7e\x80\x81\x83\x84\x8a\x8b\x8c\x8c\x8d\x91\x93\ +\x95\x95\x95\x96\x98\x99\x9c\x9d\x9e\xa4\xa6\xa7\xa7\xa8\xa8\xa9\ +\xaa\xac\xad\xad\xb0\xb3\xb3\xb4\xb7\xbb\xbc\xbd\xbd\xc0\xc1\xc4\ +\xc6\xca\xcb\xcc\xcd\xcd\xd0\xd2\xd4\xd7\xd8\xd9\xdb\xdc\xdc\xdd\ +\xde\xe0\xe1\xe4\xe5\xe6\xe7\xe8\xe9\xe9\xea\xef\xf0\xf0\xf1\xf3\ +\xf3\xf5\xf6\xf6\xf7\xf7\xf7\xf8\xfa\xfa\xfb\xfb\xfb\xfb\xfc\xfc\ +\xfd\xfd\xfe\xfe\xfe\xa0\xb1\xff\x8a\x00\x00\x02\x61\x49\x44\x41\ +\x54\x78\x5e\xdd\xd7\x55\x70\x13\x51\x14\xc7\xe1\xd3\x52\x28\xda\ +\x42\xf1\xe2\x5e\xdc\x5b\x28\x10\xdc\xdd\xdd\xdd\x0a\x45\x8a\xb4\ +\xb8\x7b\x70\x29\x5e\x24\x50\xa0\xe8\xd9\xa4\x2a\xb8\xbb\xbb\xbb\ +\xeb\x23\x93\x3d\x77\xee\xcb\xe6\x66\x98\x93\x17\xa6\xbf\xd7\xff\ +\xe6\x9b\x7d\xc8\x9c\x99\x85\x14\x52\xfa\x52\x39\x5d\xfa\xf9\x80\ +\x28\xc4\x95\x41\x26\x36\x30\x10\xa9\x19\xd9\x78\x80\xc7\x4e\x14\ +\xed\xaa\xca\x02\x72\xa3\xec\x60\x25\x96\xb0\x1e\x65\x1b\x33\x70\ +\x80\xfa\x36\x09\xd8\x46\x00\xa7\x5e\x17\xbe\xa0\xe8\x68\x19\x96\ +\x50\x7d\xca\xee\x68\x02\xae\xb6\x03\x5e\x9e\x7d\x08\xb0\x8e\x02\ +\x66\x45\x09\x38\x61\xe6\x02\x79\x05\x10\xf9\x3f\x03\x6e\x2e\x01\ +\x25\x47\x2f\x39\xb0\x2a\x34\x90\x0d\x34\x8f\xa2\x7d\x32\x13\xf0\ +\xb3\xa0\x68\x2a\x0f\xe8\x84\x22\xbc\x5c\x97\x05\x8c\x95\x80\x75\ +\x3c\x0b\xe8\x2d\x81\x73\x66\x16\x60\x92\xc0\xdd\xe9\x0a\xc0\xd7\ +\x29\xe0\x36\x0b\x29\x6b\x7c\x37\x05\x90\x8e\x80\xa4\xfd\x8e\xe7\ +\x2c\xcb\x2e\xda\xe7\x2b\x1f\xcd\x3e\xa0\x68\x33\x09\x87\x14\x37\ +\xc9\xbb\xdf\xbe\x47\xb1\x9f\xb4\x71\x85\x40\xd5\x42\x02\x62\x5a\ +\xa8\xfe\xb1\x39\x2a\x37\x0a\x28\x08\xea\xc2\x50\xb4\xa2\x95\x17\ +\x70\xaa\x85\xb2\x6d\xc5\x58\xc2\x3c\x94\xed\xc8\xc7\x01\xca\xa2\ +\x2c\xb9\x27\x07\xe8\x81\xb2\x9b\x21\x0c\xc0\x6f\x8f\x04\x6c\xaf\ +\x87\x30\x80\x60\x14\xe1\x9f\x27\xc7\xaa\x30\x80\xf9\x04\x1c\xbf\ +\xf7\x2e\x71\x5d\x03\x60\xb4\x89\x80\x17\xab\xbb\x96\x70\x07\x46\ +\x59\x91\x8a\xab\xe1\xe2\x55\xd6\x72\x39\x9c\xfd\xbb\x88\x9a\x32\ +\x8f\x6a\x28\x8a\x26\x34\x63\x01\x5e\x16\xa4\x4e\xfd\x6c\xcc\x02\ +\x02\x51\xf4\x74\x51\x6a\x16\xd0\x17\xa9\xe8\xc4\x3a\xc0\x02\x96\ +\x22\x15\x3b\xd7\x9d\x05\x14\x41\xea\xbc\x16\x00\x2c\xa0\x35\x52\ +\x6f\xa6\x01\x0f\x98\x48\x63\xb2\x56\x81\x07\xa4\xdd\x4e\x17\xfb\ +\x6d\x08\xf0\x00\x7f\xda\xae\x1f\x2e\x0d\xea\xca\x13\xf0\x2a\x52\ +\x79\x6a\x4e\x7f\x18\x0e\x4e\xea\x40\xc0\xd9\x08\x30\xb6\x40\x9f\ +\x6e\xed\x2d\xac\x04\x7c\xeb\x05\x6f\x25\xe0\xf6\x4c\xe3\x9a\x9f\ +\xde\xed\xf3\x20\x50\x94\x39\x08\x65\x8f\xfb\x1b\xf7\x26\xfa\x72\ +\x27\x22\x8f\x0a\x18\x8c\xb2\xef\x71\x0d\x8d\xfb\x18\xfb\xf2\xed\ +\x6b\x77\x50\x94\xc6\x82\xb2\x67\xe1\xc6\x73\xe0\xa1\xdf\xaa\x07\ +\x5b\xb2\xff\xc3\xf7\xc2\x35\xad\xb6\x71\xaf\xa8\xbf\x5a\x42\x47\ +\x50\xb6\x16\x45\x37\x12\x46\x82\xb1\xb6\xf6\xe9\x61\xb8\xb7\x1a\ +\x30\x25\xe9\xc0\xef\xe7\xda\x50\x47\x4f\xb5\x44\xc4\x93\x3f\xda\ +\x80\x93\xda\x1f\x39\x13\x73\xff\x65\xfc\x86\x9a\x0e\xd7\x8c\xcb\ +\xf1\xd2\xfb\xc5\x9e\xe0\xac\x72\xc3\x66\x4f\xea\x5c\xcd\x47\xb1\ +\x66\x9a\xf3\x6b\x4d\x71\x70\xa9\x02\xa9\x20\x25\xf7\x17\x09\xba\ +\x39\x39\xea\xb1\x61\x75\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\ +\x60\x82\ +\x00\x00\x3a\x40\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\xa8\x00\x00\x01\x77\x08\x03\x00\x00\x00\x06\x8a\xf0\xc8\ +\x00\x00\x02\xd9\x50\x4c\x54\x45\xad\xac\xff\xc4\x90\xc4\xe2\x5a\ +\x63\xe6\xc1\xd5\xe9\x9c\xa7\xb8\xb6\xfe\xc8\xc6\xfe\xcb\xcb\xfe\ +\xbb\xbb\xff\xc0\xbe\xfe\xc3\xc3\xfe\xd2\xd2\xff\xd8\xd7\xff\xdc\ +\xdb\xfe\xb3\xb3\xfe\xe2\xe2\xfe\xb0\xae\xfe\xd0\xce\xfe\xeb\xeb\ +\xfe\xf3\xf3\xfe\xfc\xfb\xfe\xdd\x06\x08\xda\x22\x2c\xdc\x0d\x12\ +\xb7\x8f\xd1\xe0\xde\xfe\xea\x5a\x5a\xdd\x09\x0b\xdd\x19\x1e\xfc\ +\xec\xec\xde\x00\x00\xf0\xef\xfd\xe1\x13\x13\xbf\xa1\xde\xbb\xb2\ +\xf4\xe3\x23\x23\xe5\x32\x32\xe6\x3a\x3a\xe6\x41\x42\xcc\xc3\xf4\ +\xe9\x53\x53\xdc\x14\x1a\xbd\x81\xbb\xec\x6c\x6c\xed\x72\x72\xee\ +\x7b\x7b\xf2\x9b\x9b\xf2\xa2\xa2\xd2\x81\xa2\xf4\xac\xac\xf6\xb9\ +\xb9\xfa\xdb\xdb\xfa\xf5\xfa\xfb\xe2\xe2\xdd\x10\x15\xbd\xab\xeb\ +\xfd\xf2\xf3\xe4\x2c\x2c\xeb\x63\x63\xf0\x8b\x8b\xf5\xcd\xd1\xd6\ +\x2b\x3c\xd8\x2d\x3b\xd8\x46\x58\xca\x56\x7b\xd9\x25\x31\xd9\x34\ +\x43\xd9\x42\x52\xd9\x6d\x83\xda\x1b\x25\xca\x75\x9e\xda\x31\x3d\ +\xda\x52\x64\xdb\x1a\x22\xdb\x85\x9d\xb2\xa9\xf5\xdc\xd3\xf5\xcc\ +\x69\x8d\xcc\x84\xad\xcc\x8b\xb4\xbb\xa3\xe3\xcd\x4a\x69\xdd\x50\ +\x5e\xb7\xb0\xf7\xdf\x30\x37\xcd\x5a\x7b\xcd\xa1\xcd\xe2\x1a\x1a\ +\xce\x71\x94\xce\xc0\xef\xe4\xaa\xbd\xcf\x39\x54\xcf\x40\x5b\xcf\ +\xba\xe7\xd0\x5f\x7e\xe8\x45\x45\xe8\x4c\x4c\xd0\xad\xd8\xe9\x6f\ +\x74\xbe\x8a\xc3\xd1\x56\x71\xea\xe6\xfb\xd2\x7a\x9a\xc4\xab\xe3\ +\xd2\x89\xab\xec\x76\x78\xd2\xcb\xf7\xc5\x83\xb4\xee\x8f\x91\xef\ +\x81\x81\xf0\x84\x84\xf8\xcb\xcb\xd3\x44\x5c\xf1\x93\x93\xd3\x53\ +\x6d\xd4\x35\x49\xd4\x4b\x62\xd4\x69\x84\xf4\xe2\xe9\xf5\xb3\xb3\ +\xe0\x0b\x0b\xd4\xc2\xeb\xf6\xd8\xdc\xf7\xc3\xc3\xd5\x62\x7b\xf9\ +\xd4\xd4\xc8\xbd\xf3\xd5\xa5\xc8\xd6\x27\x37\xbe\x9a\xd5\xd7\x49\ +\x5d\xd4\x5a\x73\xca\x86\xb2\xcb\x74\x9b\xf8\xc5\xc5\xd6\x39\x4c\ +\xce\x80\xa6\xcb\x61\x85\xcd\x9a\xc4\xdf\xa8\xc0\xd3\x9a\xbe\xcb\ +\x7a\xa2\xe4\x79\x84\xd4\x4e\x67\xd5\x40\x54\xe6\x73\x7c\xc4\xba\ +\xf4\xe6\xc6\xda\xe7\x6a\x70\xe7\xb8\xc9\xc5\x66\x92\xe8\x5e\x60\ +\xe8\x84\x8c\xc5\x73\xa1\xcd\x92\xbb\xb6\x9b\xe0\xcd\xb0\xde\xeb\ +\xad\xb7\xeb\xe2\xf4\xc5\x8a\xbb\xd7\xb5\xd8\xcd\xac\xda\xc5\xa0\ +\xd5\xed\xa3\xaa\xcd\xba\xea\xce\x55\x76\xc6\x5c\x86\xc8\x92\xc1\ +\xd9\x59\x6d\xf0\xac\xb1\xc8\xb3\xe8\xd9\x87\xa1\xf1\x9e\xa1\xc0\ +\xb6\xf4\xb9\x87\xc6\xf2\xbf\xc5\xda\x29\x35\xc2\x9b\xd3\xca\x5c\ +\x81\xf4\xe9\xf1\xd0\x6d\x8d\xdb\x4b\x5a\xd0\xa6\xd0\xca\x64\x8c\ +\xdc\x3a\x46\xc2\xa2\xda\xde\x98\xaf\xd1\x8d\xb1\xd1\xc5\xf1\xb9\ +\xa6\xe9\xd2\xbb\xe5\xd2\x9d\xc2\xcc\xa5\xd2\xde\xb1\xcc\xd3\x74\ +\x92\xe1\x3c\x42\xe3\x48\x4e\xcb\x9d\xcb\xe4\x64\x6d\xe2\x4e\x56\ +\xc4\x7b\xac\xcb\xb2\xe2\xd4\x31\x44\xbf\x94\xce\xbc\x9c\xdb\xca\ +\xa8\xd8\xd5\x93\xb4\xcd\x45\x63\xc5\x6c\x98\xb9\x8e\xce\xd0\x6f\ +\x90\xc4\x7f\xb0\xda\x3d\x4c\xb7\xab\xf2\xda\x73\x89\xf4\xc6\xcb\ +\xca\x6c\x93\xd8\x78\x92\xd4\x70\x8d\xc3\xb2\xec\xec\x92\x97\xec\ +\xd3\xe3\xf6\xde\xe3\xc5\x88\xba\xd1\x86\xa9\xe1\x82\x92\xf8\xd3\ +\xd5\xe1\x9b\xaf\xe1\x9c\xb0\xd3\x2e\x42\xd0\xaa\xd3\xdb\x93\xac\ +\xdb\xc7\xe9\xe2\xdb\xf7\xc7\x79\xa7\xdb\x61\x74\xe1\xbd\xd5\xd1\ +\x46\x61\xe4\x54\x5a\xc9\x7e\xa9\xd2\x3a\x52\xe8\xcf\xe2\xc2\x95\ +\xcc\xbd\x3d\xa6\xd0\x00\x00\x37\x22\x49\x44\x41\x54\x78\x5e\x94\ +\x5d\xe3\xa3\x6d\xbb\xae\x5f\x5f\x06\xa7\xb5\x8c\x6d\xdb\x38\xb6\ +\x6d\xdb\xb6\x8d\x4b\xdb\xb6\x6d\x1b\xcf\xb6\xed\xf7\x17\xbc\x36\ +\x0d\x9a\xb6\xf3\xec\xfb\x32\x30\xc7\x39\x9f\x7e\x3b\x6a\x92\xa6\ +\x59\x13\x8d\x46\xb3\x21\xd4\x33\x4f\x51\x98\xc7\x5e\xe6\x06\xc2\ +\x9f\x1c\x1e\xf3\xae\xeb\xc2\x5c\xf6\xd7\x7e\xd5\x79\x5e\x0b\x55\ +\x95\x79\x95\xf6\x2a\xcd\xaf\xa2\xb6\xbd\xe1\x81\xbb\xdd\xc6\x17\ +\xd1\x04\xde\xe6\x32\xb7\x7d\x14\x35\x9a\x4d\x0b\xb5\xc9\x48\x0d\ +\x4c\xc1\x09\x1f\x44\xb9\x45\x57\xd4\x16\x2a\x80\x74\x6f\x86\x59\ +\xd9\x57\x89\x77\x09\x28\xe1\x3b\xa0\xb6\x80\x84\x87\xde\x02\xb6\ +\x6b\x91\x9a\x4b\x93\x05\x69\x51\x36\x89\xa3\x8c\x14\xa0\xf6\x0a\ +\x26\x00\x68\x2e\x8b\x37\x37\x2f\xe0\x26\x22\x65\xac\x15\x20\x23\ +\xa4\xfc\x12\x94\x02\x55\xa1\x14\xa8\x70\x75\x3d\x84\xd3\xee\x87\ +\x50\x32\x4e\x07\xd5\x62\xec\x99\x87\x05\x2f\x84\x38\x9d\x0a\xe4\ +\x9a\xa1\x55\x55\x02\x5f\xe1\x42\xcc\x4c\x22\x7a\x7a\x29\x98\x5d\ +\x80\x08\xfc\xc4\x6f\xf3\xd5\xf5\x44\x6f\x2f\x0f\x29\x0a\xbc\x41\ +\x52\xef\x11\x53\x73\x50\x51\x44\x59\xd7\x80\x95\x18\x5a\xe5\x16\ +\x68\xe5\xae\x4a\x31\x34\xa2\x76\x3b\x33\x44\xf2\xcf\x80\xab\x88\ +\xb4\x0b\x00\x01\x62\x2c\xfa\xd0\x9a\x0a\x78\x03\x4a\x78\x31\x59\ +\x84\xcc\x49\x03\xba\xce\x45\x4b\xf3\xaa\x26\x9c\xc0\x55\xd4\x4e\ +\xf3\x25\x5c\xcd\x32\x10\x37\x7c\x65\x1e\x3f\xb3\x0c\x65\x0e\x60\ +\x01\x24\x50\x37\x30\x26\x43\xc8\x50\x11\x7e\xd1\x13\xa3\x6f\x30\ +\x47\xf9\x05\x1c\x35\x6f\xa0\x9c\xde\x15\xca\xbf\x34\x1c\xa5\x4b\ +\x11\x8b\x3d\x03\x8c\x09\x1d\xed\x76\x01\x30\x1a\x13\x21\x26\x1d\ +\x4d\xb9\x27\x23\x6f\xf8\x70\xc2\x17\x9e\x8a\x73\xaa\xdd\x6f\x0e\ +\x97\x11\x3d\x19\x93\x98\x3d\x72\x52\xc3\xcd\x58\x53\xdb\xb1\x92\ +\x12\x47\xe1\x01\x07\xd5\x15\x83\x6a\x92\xe4\x9b\xca\x3d\x59\x96\ +\xba\x47\x48\xbc\x28\xfe\xb2\xdc\xf3\xdc\x09\x1d\x59\x4a\x30\xe1\ +\xb7\xaa\xc4\x90\x18\xa1\xe1\x2a\x50\x3b\xd3\x48\xbb\xe4\x9d\x62\ +\x1d\x05\x27\xca\x68\xc5\xe8\x41\x3f\x01\xab\x46\x8a\x9c\x25\xbe\ +\x16\x06\x65\x85\x1c\x05\xfd\xb4\xf0\x1c\xd8\x5a\x98\x29\x18\xf9\ +\xdb\x82\x6c\xdb\x9b\xd9\xda\x15\xd3\x07\x90\xf4\x9a\x4e\x19\x53\ +\x4f\x7c\xbd\x05\x0b\x62\x17\x1d\x65\x63\xd2\xc2\xd7\xeb\x52\x69\ +\x11\x03\x4c\xb8\x2b\x73\x31\x3a\x7e\x80\xa3\x68\xfd\x9a\xa5\xa2\ +\x9f\x11\x47\x09\x6a\xec\x49\xc1\x90\x64\x01\x45\xf7\xe4\x50\xb2\ +\xe8\x11\x68\x2e\xa2\x07\x69\x03\xcc\x94\x8a\xb2\x5b\x02\x9e\x66\ +\x4a\x43\xb5\x2d\x85\x40\xc5\xdd\xdb\x0b\x17\xa4\x1e\x72\xd4\x17\ +\x7d\x8d\x70\x59\xec\xc0\x50\x54\xd3\xca\x88\x9f\x78\xa9\x04\xcf\ +\xfe\x29\x63\x96\x66\x4c\x6d\x65\xf9\x5d\xb8\x49\x41\xbb\x91\x1f\ +\x25\xac\x42\x80\x17\x48\x61\xcd\x79\xbd\x17\x99\xc3\x0f\x9a\x53\ +\x55\x3b\xab\x27\xb0\xf0\x1d\x53\x1b\x31\x02\x47\x05\x25\x3a\x7c\ +\x44\x1a\xc5\x25\xca\x92\x88\xa1\x12\x96\x68\xca\x91\x9f\xf6\x8d\ +\xbe\x34\x17\xc1\xa3\xf4\x79\x0d\x0d\x9c\x13\xf9\xd0\x8c\x89\x25\ +\x2f\xb6\x84\x3a\xda\x0e\x84\x3f\x8d\xc6\xa4\xa3\x12\x40\x09\x70\ +\xc9\xea\x1b\x8e\x9b\x68\xf4\xa2\xa6\x20\x75\x74\xf6\x39\x30\x14\ +\xf8\xa9\x38\xaa\xbc\x53\x66\x6e\x7b\x39\xfd\x7c\xfb\x51\x67\x31\ +\x47\xc5\x3d\xbd\x94\x31\x01\x89\x9e\x5a\xa2\x30\x4f\xcc\x3e\x87\ +\xa7\x66\xd1\x13\x54\xa2\xca\x3e\x3e\x59\x8c\x62\xf2\x80\x90\x19\ +\xba\xe2\x97\x4f\x2f\xff\xbd\xc5\xc5\x1f\x35\x30\xdc\x63\x96\x2a\ +\x66\xe2\xcf\x34\xeb\xa8\x8a\x9f\x7a\x40\x18\xe6\x11\x4c\xc4\xea\ +\x0b\x1f\x03\x67\x85\x15\x97\x7c\x21\x34\x26\xc2\xea\xd8\x79\xeb\ +\x65\x7b\x46\x8b\x8e\x0e\x2b\xfd\x10\x0f\x71\xb2\x23\x8d\xe3\x51\ +\xa1\x1e\x42\xb5\x30\x5d\xb4\xe7\xa1\xe4\x98\x94\x3c\xbe\xc0\x44\ +\xef\x54\x05\x30\x2b\x01\x59\x66\xee\x3e\x7f\xfd\xa2\xd0\xcd\x4d\ +\xe0\xa7\x04\x25\x14\xe2\x27\xdc\x53\xe0\xf2\x99\xa3\x8c\x50\xa0\ +\xe2\x2d\x4b\x28\xad\xf6\xc4\x50\x67\xfb\x08\x12\xde\x9a\xb2\x72\ +\xf9\x53\x8b\x3e\xad\x19\xa8\xa8\x59\x8c\x3e\x62\x29\x58\x12\x43\ +\xed\x21\x4f\x0b\x5c\xf3\x7b\x70\x19\xac\x80\x10\x43\xd1\x42\x2c\ +\x49\x67\x23\xd6\x97\x32\x47\x61\x51\x52\x3a\x6a\x9f\xa7\xa7\x14\ +\xce\xd1\xfe\x61\x2a\xc2\x4f\xaf\xf5\x9a\xa1\x05\xf2\x14\xf5\x13\ +\x6d\x89\x29\x47\x5b\xa2\x74\x84\xd9\x59\x29\xc9\x2b\x8e\x3e\x7d\ +\x96\x48\xff\x70\x87\x6f\x76\xcb\x8e\xc3\xb6\x1e\x30\x5f\x57\x19\ +\xa0\x19\x61\x9c\x50\x09\x1e\x39\x7c\xb4\xa7\x26\xc5\xf7\x82\x15\ +\x90\xe2\x12\x8a\x30\x45\x49\xc5\xe6\x49\xf2\xb5\xc7\x4f\x73\xb9\ +\x20\x9f\xc3\xa6\xaa\x7c\xfb\xe2\xe8\x1b\x35\x1a\xfd\xcf\x00\xe6\ +\xe6\x85\x41\xab\x32\xea\x7a\xe6\x9a\x4d\xc3\x3e\x02\x25\xb0\x88\ +\x36\x4e\xef\xd8\xe6\x65\x0d\x35\x18\x1d\x47\x25\x28\x01\x80\x51\ +\xb2\x0c\xaf\x5c\x59\x3d\x46\xf8\x10\x3b\xdf\xf8\xa5\xbb\x3e\x37\ +\x35\x7f\xf4\xd4\x68\xb4\xaa\x8f\x2c\x3d\xdf\x02\xdd\x3c\x6c\x64\ +\x48\x8d\x06\xc1\x9c\xc0\x47\x74\x34\xe0\xaa\x4b\x96\x15\xd4\x1e\ +\x7b\xfc\x84\x31\xb9\x24\xc4\x3c\xe8\x9e\x04\xa5\x76\x4c\xe5\x19\ +\x2f\x82\x0b\x72\x7e\xe8\x85\xdc\x39\xa7\x0f\x5b\xa0\xab\xff\xee\ +\xd6\xe7\xbf\x7a\xd4\xd9\x97\xbd\x78\xef\xd9\x5f\xfd\x76\xdb\x13\ +\xbd\xb9\xd3\xf1\x68\xda\xe1\xcb\x32\x8a\x3c\xed\x31\x37\x73\x90\ +\xbc\x35\xaa\x1c\xd7\x26\xed\xa0\x6a\x5a\xa0\xaa\x4f\xbf\xa8\x8c\ +\xe6\x8e\x19\xc7\xd1\x3f\x5e\x0c\x68\xee\xb8\x73\x55\x56\xdf\xd6\ +\xf1\x68\x9b\x34\x94\x96\xd0\xa6\x06\x0a\x2f\x61\xaa\xcf\x51\x5c\ +\xe1\x41\x07\x48\x49\x73\xc9\xec\xd0\x9a\x96\x9f\x0c\x30\x98\xa5\ +\x9b\xfa\xce\xea\x57\xec\x09\x91\x8e\x56\xe7\xed\x8c\xc5\xae\x63\ +\xbc\x50\x47\xa3\x15\x14\x74\x14\x73\x7a\x6d\x4e\x94\xdb\x81\xc3\ +\x87\x5b\x17\x4b\x48\xf8\x47\x3b\x89\xaf\x9c\xdd\xbc\xf9\x2a\xeb\ +\xdf\x37\xf6\xd1\xea\x6f\x9d\x5b\x0c\x69\x7b\xed\xfb\xa6\xb1\xf1\ +\x28\x46\x24\x02\x14\xdd\x53\xc0\xce\xf7\x3f\x7f\xd7\x15\x3d\xa8\ +\x92\x60\x18\x9a\xe7\x90\xd9\x6b\xb9\x13\xce\x8b\x00\xe7\xba\x1d\ +\xc3\x7e\xb3\x91\x3f\xbc\x7a\xf1\xaa\x7d\x04\xb4\xbc\xf1\xa4\xfd\ +\x96\xc7\x7b\x56\xae\x5a\xb3\x6e\x16\x9c\xea\x85\x7d\x01\xda\x65\ +\x55\x65\xd2\x05\x08\xe5\x9b\xd8\xea\x71\x05\x7d\xff\xb6\x23\xd7\ +\x1b\x0e\xad\x1a\x48\xa5\x04\x90\xe6\x58\xd5\xb9\xe0\xb9\x8b\x9e\ +\xbd\xe8\x97\x4f\x38\x8e\xe6\x16\xed\x89\x16\xc0\xed\xc3\x99\x1c\ +\xfc\x53\x79\x4b\xbf\xe3\xd6\x79\x78\x17\xa7\xfd\xcf\x17\x07\xfd\ +\x4e\x67\xa6\xd9\x7c\x78\xde\x0a\x7f\x58\x8b\x86\x8a\x82\xb6\xbb\ +\xda\xa0\x08\x24\xfe\xaa\x95\x09\x60\x6d\x9b\x74\xba\x34\x9a\x5b\ +\x28\x0a\xd4\x50\x20\xe7\x98\x7e\x7c\x0f\xaa\xdd\xdc\x29\xe8\x42\ +\x0d\x81\x5b\xdf\xda\x5a\x71\xe3\xe7\x3f\x7a\xeb\x09\xa7\x3f\xff\ +\xde\xe5\xfe\xe2\xe4\xd1\xb7\x2d\x4b\x97\x01\x50\xb5\x2c\x49\x68\ +\x72\x48\xf7\xc4\x1c\xfd\x26\x29\xfd\x68\xf4\xee\x16\x31\x94\xa8\ +\x3e\xc3\x5b\xb9\x47\xb3\x05\x09\xff\x5e\x31\xa3\x91\xfd\x19\x9d\ +\x73\x23\x85\x79\x4f\x1f\x7e\xcc\x72\x0a\x9b\xff\xf5\x78\xcb\x82\ +\x2b\x87\xa5\x30\x94\x0b\x3a\x49\xd1\x7b\x2e\x1f\x82\x7b\x0a\x4a\ +\xec\xf3\xa7\x82\x64\x63\x3f\xcf\x61\xbd\x27\x98\xef\x38\x5a\x9b\ +\xc5\x8e\x1c\x79\x7a\x46\x64\x31\x73\xff\x04\x1c\x05\x1e\x5e\x78\ +\xca\x59\x59\x76\xee\xaf\x8e\x5a\xef\x24\xb1\x73\xe0\x67\x77\x6c\ +\x47\x71\x98\x17\x97\x9e\x70\x09\x05\xac\x17\x5b\x30\x93\x6f\xdd\ +\xbf\xe8\x94\x54\x60\xe6\xf5\x0d\x23\xc6\xb1\x6c\x19\x78\xf2\x3e\ +\xad\xf6\x27\x46\x48\x2f\x7c\x0f\xf0\x74\xb9\xc3\x3d\x3f\xc5\xce\ +\xeb\xe0\xb0\x6a\x67\x5e\x72\xa7\xd7\xcf\xb6\x02\xca\x72\x77\x84\ +\x25\x1d\x27\xfc\xde\xe5\x7f\xbf\x63\xf7\xb0\xff\x1a\x0b\x64\xa1\ +\x47\x09\x09\xa8\xe8\xe1\x0e\xc2\xfe\x3f\x5f\x18\xf4\xaf\xff\xa9\ +\xfd\x7c\x3c\xc7\x20\xbf\x3c\x4e\xfe\x11\x0f\x39\x8f\xb4\xb9\x61\ +\x65\xff\x07\x81\x17\x9d\xda\x3e\x6c\x20\x4c\x0e\xf0\x83\xca\xb3\ +\x88\x1e\xee\x66\xe0\x49\x29\xb9\xeb\x39\x47\xfa\x0a\x8b\xe3\xc1\ +\x16\xc0\x24\xba\xc2\x0a\x6e\xf6\x85\x61\xbf\x61\x60\x7f\xc0\x02\ +\xd8\xd2\xaa\x2a\x84\x9a\xbf\xf1\x83\x5b\xb6\xef\xb8\xf3\x91\x07\ +\x06\xfd\xf7\xfc\x0d\xb0\x7b\x50\x5a\x3a\x59\xe1\xbc\x6a\xf7\x00\ +\xfc\x3d\x33\xb4\x8b\x0b\x52\x4c\x41\xfd\xa1\xa0\xb5\xbe\xd0\x25\ +\xb2\xb5\x73\xb0\xbe\x00\x37\xc9\xe6\xeb\xc7\x7e\x7a\x70\x61\xd0\ +\xc9\xf3\x1b\xcf\x3c\xfd\xb5\x20\xec\xd9\x7e\x55\x8a\xd7\xaf\xf2\ +\xda\x65\x4d\x7b\x17\x21\xa0\x83\xea\xc3\xf9\x02\x73\xf2\xb6\x07\ +\x06\xad\xb2\x2d\x40\x4d\x0e\xda\x25\x63\x4a\xc5\xa3\x51\x94\x07\ +\x69\x88\xc3\xca\x75\xdc\x63\xac\x90\x07\x06\xa5\x8f\xb5\xd1\x32\ +\xcc\x3c\xf3\x17\xcc\xa1\xf9\x21\x55\xa0\xce\x3a\xff\xd5\x1c\x91\ +\x7e\x1d\x6c\xee\xc0\x10\xbc\xd3\x59\x7b\x16\xe7\x6f\x3b\xb8\x79\ +\xd3\x6d\x3b\x76\xef\xea\x14\x92\x31\x8b\x41\x71\xf0\xf4\x92\x0e\ +\xbf\xc0\xb5\x1e\x55\x14\xa2\x67\xb8\xef\xb7\x40\xf6\xf5\x1c\x44\ +\x11\xff\x13\x5f\x52\xb2\xdc\x59\xd4\x50\x26\xfb\x80\xf1\xe4\xd7\ +\x3c\x01\x01\xe9\xad\xc7\x38\xe3\xde\xdd\xcf\xc0\x91\xee\xbd\x64\ +\x61\x00\xf1\x17\x96\x71\xb9\x92\xdb\x05\xd9\x8b\x7e\xa6\x45\xaf\ +\xa2\x12\x4c\xeb\x54\x75\xf4\xbb\xa8\xa4\xc0\x4f\x96\xfe\xf7\x0c\ +\x20\x9f\xee\x6e\xb9\xfa\xe8\x09\xa0\x81\x27\xde\xf3\xba\xa7\x70\ +\x39\x18\xdd\x36\xcc\x33\x8b\x14\x88\xb7\x46\xb2\x92\x2d\x5e\x72\ +\x3b\x4a\xee\xe2\x4a\x89\x4e\x46\x5c\x1e\xfa\x9b\xbf\xff\xac\x4e\ +\xee\x46\xa4\xa4\x9e\x96\x5e\x30\x85\x99\xcf\xec\xe6\xad\x77\x5e\ +\x08\x4a\xea\x2a\x7a\x2f\x63\xe8\x8c\xb3\x99\x61\xed\x81\xb1\x96\ +\xc8\x51\x4f\x49\x55\xe0\x6c\x50\x2b\xa0\xd1\x96\xd8\xc5\x4f\x5e\ +\xf0\xbe\x8b\x0d\xae\xed\x06\x36\xc2\x64\x25\x05\x98\x44\x6b\x27\ +\xc1\xfd\x6c\xde\x3d\xec\xb4\x1a\xc5\x5d\xe6\x7b\xfd\xd0\x19\xd2\ +\x72\x8d\x73\xe5\x9d\xc3\x1e\xae\x4c\xee\x41\x69\x03\x5f\xe1\x9b\ +\xcd\x9e\xd7\x25\xf3\xf9\x52\x79\xfd\x2d\x9f\x3c\xc6\x09\x0b\x60\ +\xf5\x84\xa3\xa0\xa4\xa3\x85\xc2\x07\x7a\xba\x05\xb1\xea\x91\x61\ +\xc3\xe6\x4a\x4f\x80\x2e\x1e\x7c\xec\xba\xbd\x46\xf6\xd5\xbc\x44\ +\xa3\xa3\x75\x0f\xee\xea\xe7\x94\xdd\x59\xc2\xdd\x06\x45\xac\xa5\ +\x13\xe4\x48\x85\xb4\xe8\x9b\x86\x97\x0f\x1f\xb7\x5e\x99\x46\x83\ +\xac\x5e\x3c\x29\x21\xad\xcd\x6d\x19\x3a\xbf\x7b\x60\xff\xa3\xfa\ +\x8d\x49\xc0\x65\xa3\xac\xd3\x0c\x57\x4f\x37\xe6\x73\xd5\xea\xfd\ +\xfb\xd7\xdd\xbc\x75\x61\x57\xab\xa6\xea\x13\x70\x95\x44\x0f\x37\ +\x9b\x12\xe0\xa4\x5d\x11\x7a\xd2\x79\x7d\xf3\x55\x41\x54\xbb\x75\ +\xc6\x4f\x95\xd1\x93\x8a\x7b\xba\xd1\x65\x6a\x36\x7a\xae\xce\x9c\ +\x12\x7d\x7c\xb4\x61\x84\x7f\xc3\xcd\x3b\x87\xcd\x56\xa7\xd3\xea\ +\xe5\x54\x25\x13\xc1\x13\x47\xc1\x94\x32\xcd\x52\x85\x34\xad\xa3\ +\x88\x53\xe8\xc0\x12\x30\x94\x3d\x29\x2c\xf7\x39\xd3\xbb\x20\x3a\ +\xbe\xbe\xce\xdf\x70\x03\xb0\x13\x69\xfd\x42\xcb\xba\xcf\xbc\x97\ +\x73\x2d\x4f\x28\xcb\xd8\xf0\x41\x3f\xe1\x42\x94\x8c\xd3\x7c\xcb\ +\x5a\x1f\xeb\xe8\x93\x0e\xe7\xfc\xcd\x5b\x1f\x7d\x61\xeb\x95\x50\ +\x6f\x19\xfa\x1c\x7d\x0c\x94\xb4\x27\x46\xff\x06\xa7\xc9\x5f\x3b\ +\x62\xca\x33\xef\xf5\x9b\x76\x0e\x73\x48\x9b\x21\xab\x57\x48\x7d\ +\xbb\xa7\x4d\xc6\x4c\x6b\x28\xd7\x47\xa3\xb5\x9e\xdd\x68\x6f\x19\ +\x18\xd0\xd6\xe1\xd2\x4c\xd3\xb8\xa8\x2f\x1b\x54\xab\x86\x45\x41\ +\xf5\xdc\x1c\x95\xb4\xe9\xb1\xf4\x3e\x6d\xda\x5b\xd6\xaf\xbb\xfb\ +\x71\x93\x7d\xd4\x5c\xc6\xab\xec\x55\x97\x42\x82\x54\xf6\x98\x32\ +\x65\x4e\x2c\xfa\x90\x38\x65\xfa\x4d\xf0\x23\x0b\x03\xfb\x5d\x18\ +\xa4\xe7\x2d\xee\x79\x74\x48\x69\x93\x5e\xee\x89\x7e\xbe\x07\x02\ +\x6a\xc7\xca\x8d\xfb\x96\x8a\x7e\xab\xa8\xad\xcd\xfb\x65\x9d\x40\ +\xf2\x58\xc6\xe7\xed\x30\xb5\x19\x2a\xdb\x37\xdd\x08\x28\xc7\xf7\ +\x47\x1a\x18\x53\x3b\x87\x16\x26\xac\x4e\xb7\xbc\xef\x81\x5d\xba\ +\x82\xef\x94\x34\x5f\xfe\xb2\x67\x26\xe7\x4f\x82\xbd\xd0\x4f\xfc\ +\x68\xd1\xe1\x5c\xb6\xf1\xb0\x61\xab\x76\x05\x9d\xaa\x74\xaf\x52\ +\xa0\x0a\x33\x19\x26\x60\xa3\x5f\x5e\x95\xba\xe8\xf0\xbb\x00\x18\ +\x49\xd7\xf0\xbf\x35\x67\x38\x33\x3b\xb4\x3a\x80\x64\x3f\xd4\xde\ +\x32\x28\xe9\xec\xbc\x83\x76\x5b\x03\xd6\xa6\x27\xdf\xb6\x6e\xcd\ +\x4f\xae\xf9\xf8\xae\xa5\x26\x55\xca\x4a\xfb\x01\x18\xe9\xf2\x4c\ +\x8a\xb7\x41\x4b\xf7\xab\xc5\x2e\x85\xbc\x74\x21\x17\x6e\x58\xcb\ +\x77\x0c\xdc\xe6\x32\x52\x61\x6f\x66\xe9\xbb\x9e\x65\x75\x04\x1d\ +\x40\x67\x5a\xb4\x3a\xcd\x46\x4f\x2a\x7a\x75\x49\xc2\x47\xb6\x2a\ +\x8b\xf7\x77\x42\x33\x78\x48\xee\xba\x09\x42\xa0\xea\x42\x2e\xaa\ +\xe8\x9d\x1d\x17\x3f\x29\xa4\x00\xf2\x86\x67\xe6\x75\x66\xb1\xb3\ +\x9f\xe3\x6e\x98\x6a\xd6\xb0\x46\x54\x0b\x4a\x8d\xb4\x24\xa0\x60\ +\xf3\x8c\x30\xf3\xc2\x51\x00\xa9\xb2\xa6\x30\xc2\x7f\x12\x38\xda\ +\x81\x22\x3e\xd1\xe5\x27\x3d\xf6\x70\xcf\xc2\xfc\xda\x48\xa1\x9c\ +\x9f\xdd\x3a\xec\xf7\x20\xb1\xcf\x0b\x5d\x23\xb3\xbf\x65\x45\x84\ +\x20\x2b\x56\x52\x14\xbd\x28\x40\x68\xf4\xdd\x20\x6b\x12\xa3\xa2\ +\xc2\xd3\x77\x60\xa5\xee\xcb\xb6\x48\xaf\xb8\xda\x18\xf5\x89\x1d\ +\xe3\xf0\xef\x1b\xc9\xc2\x3d\x3f\xbb\x65\xe7\xb0\x3f\xd3\xe0\x30\ +\x9f\x8b\x4f\xf6\x26\xa0\x22\x77\x36\x25\x78\x89\x31\xc1\x0d\xec\ +\xf4\x63\x12\xe5\x9d\xda\x69\xf7\x64\x45\xbb\x72\x09\x34\xd4\x81\ +\xbd\x7a\xbd\xc5\xb6\xaf\x59\x14\xaf\x23\x79\x9f\x83\x20\x11\x25\ +\x3c\xb5\x47\x95\x88\xbe\x64\xb0\x0a\x2a\xb9\x27\xe1\xa8\xc7\x54\ +\xde\xb9\x83\x8f\x71\x65\xc7\x3f\x84\x32\x4c\x0b\xf9\x59\x7c\xf7\ +\xcb\x73\xb0\x00\x0c\x0d\xd0\xcb\x8d\x7e\x1e\xff\xd6\x2d\x3b\x07\ +\x4b\x9d\x06\x78\x51\x42\x4a\xdc\x14\xaa\x70\xd7\x8e\xc0\xaa\x45\ +\x94\x8c\x09\xe0\x91\xd5\xc7\x1b\xf6\x91\x86\x4e\x73\x84\x0f\xfe\ +\xe9\x21\x28\x5b\x7c\xff\x5b\xbd\xc6\x77\x5e\x75\x1c\x26\x18\x0f\ +\xbd\x30\xb4\xe6\xf4\xa1\x37\x9a\x64\xb2\xd3\xc0\xfd\x86\x00\xa9\ +\x7b\x4a\x2c\xe7\x61\x77\x0e\xa4\x75\xf0\x28\x0d\x45\x33\x02\xb8\ +\x98\x85\xa4\x71\xb6\x13\x56\x8f\x57\xe3\x31\x0a\x2a\x24\x36\x19\ +\x6d\x1d\x36\xf5\x5e\x83\x20\x05\x53\x8a\x38\x5a\xd6\xdc\xf8\xc0\ +\x18\x2b\x96\x3c\x00\x25\xd9\x3b\x8e\x66\x71\x3c\xaa\xeb\x8e\xba\ +\xb1\x00\x5e\xe7\x2c\x06\xb4\xe6\xf1\x61\x8b\x20\x4a\xcd\x59\xb1\ +\xd4\xdb\x65\xc2\xce\x07\x44\x0b\x38\xb5\xc3\xa7\x95\x49\xb4\xd3\ +\x92\x4a\xeb\x39\xc2\x8f\x3b\x75\xfc\x12\xd9\xc7\x14\xcc\xd5\xdb\ +\x4d\x69\x41\x73\x53\x65\x4c\x96\x22\x7e\x52\x37\x51\x4d\x1a\x0a\ +\x38\xc5\x96\xd0\xdf\x67\xa2\xa6\xf1\x16\x23\x2f\x4e\xe3\x77\xee\ +\x3e\xb9\x9f\x50\xae\x3a\x68\xec\xbb\x09\x05\xbd\x90\xa7\x92\xd7\ +\xe3\x25\x30\x81\x2a\xe4\x28\x1b\x53\x15\x59\x53\x96\xd1\x2a\x0f\ +\xfc\x65\xd1\x23\xdc\xe4\x6e\x83\xce\x41\x9b\x6f\xbe\x7b\xe3\xc6\ +\x4d\x07\x77\x98\x6a\x52\x93\x3a\xca\x98\x04\xa4\x92\xbd\x90\x34\ +\xbe\x40\xed\x21\x82\x09\x37\xb0\x51\xae\x52\x5b\x93\x94\x74\x92\ +\xc6\xa4\xa8\x35\x33\x03\xc8\x99\x9b\x0d\xda\x68\xd2\xb2\x67\x94\ +\x9a\x70\xbb\xbe\x2a\x45\x49\x85\x9f\x2c\x7b\xbd\xcc\x97\x58\x78\ +\xf2\x9a\x4a\xe2\x1a\x7e\x5c\x29\x91\xa0\x44\xc2\x3c\xa1\x9a\x2f\ +\x59\x3d\x0b\xf6\xf7\x68\x4d\xd2\x9d\x17\xb6\x40\xf0\x4b\xc1\x14\ +\xa2\x08\x3f\x1d\x8f\x2a\xac\x02\x53\x6f\x84\xe6\x82\x8f\x36\xeb\ +\xe1\xd2\xed\x8e\x28\x7a\xba\x3c\xca\xbc\x9e\xa2\x44\xbf\x23\x32\ +\x51\xfd\xb4\x3d\xff\x04\x38\x83\x5d\x50\x07\x53\xda\x47\xf5\x36\ +\x38\x35\x42\x8c\x93\x7a\x55\xd9\x07\x41\xd6\x9a\xa1\xa0\xa4\x6d\ +\xe6\x68\x92\xc4\x87\xc6\x05\x88\x40\x4b\x7b\x08\xb7\x30\x17\x48\ +\x5f\x70\x52\xd7\x28\x77\x96\x08\xe2\xaa\x62\xab\xb7\xdf\x2c\x76\ +\xc2\x9c\xb1\x7b\x2a\x69\xed\x04\xbc\x21\x53\xc7\xaf\x4c\x7a\x9f\ +\x09\x75\x94\xf7\xc2\x74\x3b\x11\xf4\x8f\x32\x3e\xe5\x9e\x2a\xb8\ +\x4a\x04\x6a\x11\xea\x4e\xd7\x36\xbe\xb3\x52\xf0\x65\x8a\x93\xa2\ +\xa4\x09\x6a\x46\x9b\xa1\xb2\x7b\x47\x85\x47\xd1\x51\x7b\xe7\xac\ +\xa9\x45\x91\x0a\x49\x80\x91\xc0\x61\x0f\x25\x1b\x7b\x09\xcc\xa4\ +\x4e\x52\x88\x4c\x05\x2a\x5f\xd1\xe6\xcd\x34\xea\xa8\xaa\x3a\x02\ +\x35\x02\x25\xad\xf1\x45\x1c\xe5\x1e\xe7\x42\x47\xf8\xd2\x39\x9c\ +\x68\xca\x04\x80\xe0\x4e\xa9\x40\x96\xb0\x79\xb5\x2d\x12\x17\x72\ +\xd1\x75\xba\x08\x9f\x37\x1b\xe2\x1e\xe7\x3a\xd6\xce\xdc\x13\x3d\ +\xf7\x91\x51\x6c\x02\x97\x47\x80\xd2\x01\x0e\x31\xa2\xf0\x59\x49\ +\x35\xe9\x8d\x06\x78\x73\xda\xa4\x76\x6c\x69\x1b\x5c\x50\xc2\x43\ +\x70\x75\x76\xc7\x62\xaf\x6b\x95\x2f\x65\x28\xf1\x64\xa3\xeb\x04\ +\xde\x02\x52\x73\x54\x59\x53\x51\x30\x4f\x0d\x46\xf3\x08\x4b\x45\ +\x51\x2d\x4c\x81\xaa\x71\x02\x36\x88\x4c\x04\x64\x9d\x6a\x77\x2c\ +\xd3\x2e\x5f\xdc\x28\xfc\x26\x5a\xde\x84\x40\xea\xc8\x4f\x6c\xd4\ +\x02\xdd\x74\x0f\x5e\x8e\xab\xa0\xa3\xd1\xb9\x06\x30\xfd\x9a\x20\ +\x46\x59\x28\x94\xc4\xa9\x92\x57\x0a\x3b\x25\x9d\x4f\xd5\x75\x02\ +\x5b\xe2\xe6\x51\x92\x7d\x44\x0c\xb2\xce\xfd\x0e\x88\x92\x8c\xc9\ +\x57\x51\x78\x2b\xb3\x07\x4b\x02\x37\x1a\xf7\x63\x33\x64\x42\x19\ +\xaf\xf5\xc0\x55\x61\xa7\x18\xbc\x94\x1f\x74\xf7\xa0\xbc\x74\x34\ +\x4a\x1c\xc5\x64\x04\x81\xc6\x8b\xbd\x4a\xef\xe2\x45\x29\xf6\xa4\ +\xa1\xe8\x0b\x7c\xa0\x4e\x86\x15\x7c\xc1\x49\xbf\x04\x98\x48\x15\ +\x20\xd8\x39\x55\xe2\xee\x85\x50\x37\xd5\xaa\xc4\xd2\x57\xeb\x53\ +\x2a\x5d\x16\x12\x93\x4a\x72\xd4\xf7\xa7\xfc\xa1\xa1\x02\x91\x6e\ +\xd6\x31\x4a\xf9\x48\x49\x1d\x10\xa6\x33\x7b\xcc\xed\xd8\xdd\x5b\ +\x88\xa8\xa5\x88\x56\x88\xd7\x7a\xf7\x26\xb2\xa0\xd1\xe8\x49\xde\ +\x74\x0a\x03\x38\x2b\xe8\x32\x4f\xec\xca\x37\x95\x7e\xd7\x53\x8a\ +\xa1\xd3\xe1\x7e\x3d\x8b\x1f\x2e\xe0\xac\x8e\x45\xc1\x99\xe2\x8a\ +\x24\xf6\xa4\xe2\x12\xdf\x8c\xea\xb4\xe0\xe1\x8a\xce\x08\x09\x50\ +\xe4\x67\xc8\x51\x45\xc4\x50\xca\x97\x84\x72\x56\x50\x8a\xf3\xc2\ +\xe4\x8e\xac\x5e\xae\x04\x58\xc1\xe9\x70\xeb\xc5\x9e\x1d\xe9\xa1\ +\xdb\xdb\x85\x9f\xda\x96\x30\x22\x09\xda\xdb\x45\x07\x38\xb8\xa7\ +\x57\x2a\xc2\xcf\xda\x5e\xe8\x9c\x0e\x45\xe9\x15\x10\xad\xf4\x68\ +\xea\xa8\x9e\x80\x13\xff\x87\xa1\x86\x1f\x8f\xb2\x97\xd2\xba\x5a\ +\xe2\x8b\x78\x89\x77\x50\x1a\x0f\xdc\x53\x49\x76\x1f\x83\x8d\x9a\ +\xb1\x05\xa7\xb8\x27\x87\x91\x20\x36\x24\x70\x16\xa4\xc2\xd2\x42\ +\xbb\x52\x11\x3d\xac\x4e\xc2\x4c\xbd\x84\xea\xf5\x53\x3c\x7d\xd2\ +\x95\x4e\x8b\xe8\x63\x3d\xa5\x48\x4f\xf5\x8e\x4a\x2c\x2a\x50\x35\ +\x4e\x0f\x69\x85\xa2\xaf\xb5\x72\xf2\xaf\xc2\x7b\xc8\x46\x9d\xc8\ +\x94\x50\xd6\xcc\x51\x9f\x1c\x52\x12\x7b\x1a\x66\x70\x48\xa8\x4a\ +\xe4\xa0\x9e\xe0\x43\xb9\x13\x4f\x63\xa8\x0d\xed\x48\x7b\x08\x17\ +\xfd\xa8\x40\xad\xa3\x65\x94\x6f\x8d\x95\x71\x92\x13\xad\x62\xaf\ +\x9f\x54\x4e\xd5\x8e\x1b\x53\xea\xf8\x45\x41\xbe\x54\x13\xb5\x65\ +\x32\x52\xfa\x12\x9c\x64\x4d\x5e\x72\x57\x7b\x6b\x91\x58\x13\xfb\ +\xfc\x90\xa5\x11\xa5\x39\xea\x4c\x5e\x4e\x0b\xe1\xe5\x91\xc4\xa3\ +\x31\x2f\x45\xf4\x08\x14\x9e\xf8\x80\x98\x68\x67\xe2\x00\xeb\x38\ +\x0a\x63\x51\xdf\xe3\x17\x72\xde\x92\x97\x4e\xfc\xc0\x28\x2f\xc2\ +\x2b\xa2\x27\xf1\x87\x82\x47\x2f\x9a\xce\xed\xd3\x52\x9f\xe6\x54\ +\x44\xa3\x05\x98\x12\x98\x68\xaa\x95\xf0\xe3\x45\x49\x5e\x88\xb6\ +\xf2\xc5\xdf\x26\xac\xc4\x4e\x7e\x4f\xa4\x81\x8e\x5f\x99\xe4\xec\ +\x4d\x4f\x67\xf5\x12\x34\x49\x5e\x2f\x4b\x68\xec\x45\xeb\x14\x4b\ +\xdb\x1c\xe5\x27\xad\xe9\x10\x1c\x85\x5b\x05\x25\xe8\x9f\xe0\x1d\ +\x87\xa3\x79\x8d\xa0\x31\x38\xd1\x3a\xca\x58\x2b\x78\x02\x94\x0e\ +\x9f\xb2\x7d\x71\xf8\x87\xe4\x68\x4c\x64\x4c\x31\x47\xc9\x90\x88\ +\xa7\xf0\x0e\xd9\x2a\xc2\xaf\xf4\x5a\x2f\x2a\x10\x1b\x53\xda\xec\ +\xd3\x6b\x3d\xf3\x13\xcc\x1e\xef\x98\x28\xa9\x8b\x32\xd1\xb2\x14\ +\xa6\xf2\x86\x7d\x1c\xe6\x89\xe0\x15\xcc\xd8\xe8\xd3\x7e\x54\x83\ +\x25\xa4\xee\x75\x8b\x57\xcc\x8b\x30\xea\x42\x49\x29\x77\x2a\x1a\ +\x95\xf3\xf5\x78\x4b\xdc\xcc\xfe\x3e\xbd\x17\x1a\x55\x72\xf5\x15\ +\x14\xc6\x59\x3f\x51\x0d\x04\xaf\x6c\x83\xfb\x71\x53\x25\x58\x35\ +\x57\x05\xa6\x66\xea\xf8\xf3\x4c\xc2\x4e\xc1\x2a\x20\x75\xc6\x9c\ +\xf3\x52\x9f\x0a\x4a\x2a\x08\x98\x08\x27\x20\x56\x06\xc5\x62\xd7\ +\x09\x09\x92\x62\x29\xfc\x26\x0f\xb5\x08\x44\x85\x14\x50\x22\xd4\ +\x5c\x4a\x7a\x3e\xcc\x20\xbb\x2b\xc9\xa2\x38\xb9\xab\x12\xf1\xbd\ +\xc0\xa4\x97\xf2\xa5\x63\x8b\x64\x4c\x92\x2b\x93\xcb\x27\xe1\xcb\ +\x81\x2b\xf0\x50\xb9\x64\xf6\x01\xd1\x22\x4f\x1f\x1a\x24\x3f\x2a\ +\x74\x8e\x65\x1f\xbb\x54\xda\xb8\xd3\x3a\xca\x87\x03\xd1\x90\x98\ +\x10\x1f\x97\x1e\x85\xa7\x60\x48\xc2\xd1\x32\x26\x02\xa8\xa3\x91\ +\x38\x6a\x86\x57\xca\xea\x79\x09\x2d\x84\xab\x3d\x8c\x48\xb4\x31\ +\x49\x2e\x4f\xfe\x29\xd4\x51\x0c\x9f\x88\xa7\xc2\xe0\x76\x60\x4c\ +\xa1\x6f\x4a\x6f\x8a\xa4\x83\x12\x01\x8b\x28\x1d\x43\xb7\xcd\x9f\ +\x7c\x52\xa3\xc8\xd5\x09\x31\x92\x3a\x7c\x85\x35\xe7\xf4\x29\x5b\ +\x11\x39\x6b\xa8\xe4\xcc\x41\x40\x0a\x37\xe7\x23\xd3\x52\x1f\x4d\ +\xa4\xcb\x54\x24\x5b\xfb\x39\xbb\xcb\xfc\xc1\x46\x78\xda\xb2\xe0\ +\x1d\xf0\x42\x2f\xa1\xbc\xc5\xcc\xbb\xa0\x55\x00\x58\x6c\x3e\xb4\ +\x7a\x25\xf9\x76\xcc\xd1\xc8\x9c\x0a\x00\x0a\xce\xe9\x58\xb7\x1d\ +\xde\xc7\x42\x2e\x9f\xb9\x23\xb4\xbe\x1b\x2d\xf9\x06\xab\xc7\xae\ +\x0d\x0f\x29\xaf\xf3\x82\x36\xb2\xfa\x34\xce\x69\x0e\x4a\x84\x7a\ +\x00\x16\x39\xfa\x8f\x8b\x96\xce\xdb\xdd\xc7\x14\x14\x80\xfa\xbb\ +\x22\x4c\xc2\x4e\xb1\xf6\x38\x28\x01\xa0\x5e\x8c\x1f\xc5\x79\x41\ +\xcf\x78\x3b\x88\xf0\xe3\x68\x14\x9b\x89\xfe\xcd\xf2\x73\xd3\xbe\ +\xa5\x1e\xc0\x44\xd1\x73\x6a\x1f\xc3\xac\x18\x2c\xbc\x75\x3b\x11\ +\x82\x44\x94\xfc\xa1\x84\x3f\xd6\x3f\x05\x82\xc7\x62\x0e\x6f\x86\ +\x9d\x64\xb7\xc4\x77\x75\xa4\x88\x5f\xa3\x49\xd5\x29\x37\x2a\xce\ +\x5e\xf8\x2a\x6c\x55\xc6\xa4\xf3\xfa\xd8\x96\x22\x8e\xb6\x7c\x96\ +\x16\x08\x56\x36\x6d\x6d\xaf\xc1\xca\x81\x3e\xba\x0c\x9a\x29\x0b\ +\x53\xa1\x22\x7c\x78\xe8\x5b\x3a\xf3\x62\xeb\x97\xd0\x24\x61\x4e\ +\xf0\x95\xce\xeb\xb5\xe8\x01\x64\xcf\xfa\x26\xab\xa2\xbb\x1b\xfe\ +\x12\xea\xa5\x4d\xc0\xda\x20\x17\xf1\xfd\x3d\x4a\x1f\x49\xe2\xa6\ +\xf1\x79\x3d\x8b\x5f\x9d\x0c\xe4\x63\x42\x1a\x26\x00\xc5\x54\xe4\ +\x6a\x77\x84\x4a\xf6\xeb\x83\xe8\x9e\xa9\x0c\xda\x89\xf0\x57\x82\ +\x12\xc1\xaa\x33\x91\xb4\x86\x26\x2a\xce\xad\x56\xe0\x9e\xf4\x78\ +\xa2\x29\xdb\x42\xdc\x47\x98\xf0\xca\xe1\x85\x2a\x9a\xee\x29\xa0\ +\x10\x5f\x93\xb6\x79\xb8\xd3\x05\x9d\xf4\xbc\xa7\x98\xa4\x36\xda\ +\x70\x5d\x64\x2b\x87\x80\x53\xf5\xe8\x58\xae\x26\x49\x71\xb3\x4e\ +\x54\xc5\x03\x96\x96\x41\x22\xe2\x7e\xc2\x28\x8f\x3a\x20\xe2\x7c\ +\x99\xe0\xfe\x40\x94\x14\x91\x3a\x2a\x38\xcd\x47\xc8\xa5\x2e\x92\ +\x0a\x51\x41\x5f\x62\x92\x30\x38\x89\x1d\xbe\x72\xa3\xe9\x02\x44\ +\x11\x8c\xd0\x02\x8f\xbf\xb5\xa3\xfa\x9e\xdc\xb9\xab\x74\xe5\x01\ +\xb0\x62\x47\xd9\xd8\x15\x1f\x39\xaa\x1c\x14\xd9\x3c\xde\xb1\x1f\ +\xb5\x2a\x1a\xa4\x4b\xea\x94\xed\x1e\xe8\x6a\x2d\x42\x96\xd2\x18\ +\x00\x41\x5b\xaa\x28\x9f\xca\x0f\xda\x94\x10\xa0\xd8\x51\xa9\x94\ +\x54\xb0\xb6\x63\x8e\x2a\xa3\xd7\x11\x3e\x7c\xd8\xa0\x64\xdd\x40\ +\xb8\x89\x48\xbd\xa9\x54\x85\x40\xad\xb0\x43\x4b\xf2\x26\x79\xda\ +\x71\x8c\x5f\xa6\xa3\x3c\x0d\x76\x5a\x38\x9a\x36\x26\xc7\xd0\x27\ +\xad\xd9\xcf\x0e\x91\x9f\x62\x4e\x32\xb5\x40\x2f\xa1\x25\x3c\x20\ +\x74\x6e\x70\x1f\x9f\x30\x87\x86\xaf\x58\x1a\x59\x7d\x0b\x1f\x01\ +\x2a\x11\xa9\xeb\x2c\xdc\x3e\x28\xc4\x37\x01\xa1\x8e\x86\x8a\x5a\ +\x09\x44\x29\x3a\x56\xc9\x6c\xb9\x8c\x4d\x49\xe7\xa1\x01\xd6\xd4\ +\xd6\xb2\xa8\xe8\xd3\x23\x00\x3a\x7b\x3d\x00\x65\x6e\xe2\x71\x60\ +\xf2\xfa\x9a\xd2\x85\x27\x5f\xee\x29\x98\xb2\xce\x27\x19\x3a\x0d\ +\x79\x7d\x94\x87\x16\x04\xf7\x95\x73\x38\xa5\xc3\xf3\x4f\xcc\xd4\ +\x90\x9d\x62\xe8\xfc\x23\xad\x3a\xa4\x9b\x48\x64\x46\xd1\x72\xcf\ +\x2c\x8d\x37\xc4\x62\x12\xb0\xc5\x7f\x3b\xa0\x53\xfb\xd8\x94\x04\ +\x64\x2e\xf3\xd3\xf4\xa6\xad\x18\x7b\xcc\xd4\xb6\x96\x7c\x7a\x70\ +\x5e\xbc\x86\x2a\x87\xdf\x2c\x18\xa2\x38\xd2\xf7\x7d\xfc\x00\x9e\ +\x11\x21\x6b\x42\xf1\x53\xef\xa8\x22\xe9\xc3\xaf\xb5\x0f\xad\x54\ +\xaa\x9c\x2c\x3e\x01\x32\x42\xaa\xc5\xae\xf3\x7a\xfe\x2d\xd4\x5e\ +\x68\xef\x5b\x6e\xb9\xa7\x45\x94\xdc\x13\x3c\x2a\x19\xad\xd0\x9a\ +\x58\xe2\x22\xf6\xa4\x67\x2a\x23\x77\x8f\x97\xc3\x9b\x6e\x7e\x11\ +\x90\x8c\x92\xfb\x74\x8e\xc5\xe5\x3e\xea\x75\x35\x97\xe6\x25\xde\ +\xe2\xf1\xe3\x3a\x2e\x82\x64\xc4\x21\xe9\x13\x18\xf1\xf8\x8f\x74\ +\x79\xd4\x71\x15\x97\x7b\x03\x30\x6e\xc5\xd6\x06\x25\x39\x88\x54\ +\x20\xd3\x2e\x54\xf3\x53\x48\x2d\x4a\x11\x47\x23\x88\x64\x4c\xae\ +\xf2\xf4\x15\x77\xac\x8d\x26\xaa\x68\xac\x51\x44\xaa\xf6\xc3\xd2\ +\x2d\x5a\x0a\xb3\x80\x65\xa1\x27\x9a\x72\xa7\x13\x7e\xb4\x47\x65\ +\x1d\xae\x8f\xed\x41\x25\x05\xe2\x11\x10\x45\xbc\x11\x5e\x55\x15\ +\x3e\xd8\x5f\x10\x28\x28\x1f\x18\x80\x83\x57\xf8\x28\x76\xa6\xe3\ +\x51\x89\xf0\x9b\xd2\x98\xc9\xfb\x4c\xe6\x17\x93\x51\x50\xd2\x5d\ +\x34\x77\xd4\xfe\x00\xce\x31\xed\xed\x95\x01\x08\x0f\xad\xf5\x95\ +\x9a\xa0\x25\x7e\x89\xe6\xe6\x69\x76\x2a\x3d\x55\xee\x89\x2d\xde\ +\x81\xf4\x5a\x35\x80\x50\x49\x47\x3b\x1b\x7e\x83\x1e\x1b\x3b\x43\ +\x2d\xcb\xa8\x15\x1f\xde\x75\xb8\x0f\xae\x7c\x69\x16\x6a\x28\xbd\ +\xe2\xf9\xa3\xa1\x31\xe9\xe0\x09\xa4\xff\x3d\x38\xae\xf8\xca\xf7\ +\x17\x82\x93\x43\x66\x04\x5b\xe9\x6c\x44\x69\xa9\x6a\x2a\xd1\x79\ +\x53\x74\x8e\x55\xc7\xa3\x71\xff\x68\x6a\x9f\xc9\xde\x68\x4e\x38\ +\xeb\x61\xcf\x77\x84\x9d\xbc\xd5\x14\xee\x34\x45\xbb\x4c\x71\xda\ +\x34\x2e\xca\x53\x21\x1e\x7e\xa4\xfd\x68\x41\x0c\x15\xb8\x60\x4f\ +\x37\x2d\xe2\x01\xc0\x0e\x67\x20\xb2\xdb\x90\x27\x12\xbc\xd8\x8f\ +\xb2\xa5\x8b\x92\x86\x6b\xfd\x84\x02\x2b\xa4\x37\x1b\xd2\xdb\xf6\ +\x54\x1a\x7f\xcc\x01\xbd\x79\x00\xc2\x0f\xba\xf3\x94\x6e\x0a\x5b\ +\x4b\xd2\xd4\x80\xb0\x37\x8f\x8e\xb3\xfd\xba\xf1\x68\x33\xa1\xa0\ +\xe2\xa2\x78\x36\x11\x9c\x79\x58\xbd\xbb\x0f\x56\x0f\x28\x99\x99\ +\x9a\xa5\xf1\x26\xa3\x40\x95\xea\x43\x86\xef\x2c\x53\xec\x1c\x1b\ +\x8f\x4e\xf3\x86\x98\xc0\x0c\x92\x3b\x6e\x7b\xfb\xe7\x3f\x3a\x6c\ +\xd0\x07\x86\xb2\xf8\x35\x4c\x01\x18\xe6\xca\x71\xa9\x24\xcd\x50\ +\xd9\x0f\x39\xd4\x74\x22\x81\x9b\xde\x66\xa2\xf2\x78\x54\x23\x8b\ +\xcd\x69\xfc\x1c\x67\xf7\xc2\xf3\xcb\x31\x8d\x8f\x47\xd5\x06\x0e\ +\x71\xd2\x37\xfc\x9e\x6e\x7b\xd2\x00\x8b\x78\xdb\x96\x64\xae\x0d\ +\x4a\x62\x66\x39\xff\x1f\x99\xbd\xea\x78\x8c\xfb\x47\x63\xe2\x31\ +\x4a\x8a\xa7\xb2\x73\x27\x3b\x63\x22\x7e\x4e\xe5\x25\x8e\x4a\xda\ +\xbd\x70\x54\x77\x3b\xea\xca\x78\xba\x2d\x53\x8f\x4c\xf4\xb6\x6b\ +\xb1\x7d\x98\xa8\x06\x7c\xaa\x0f\x1f\x5f\x7a\xe8\x34\xa2\xc4\x77\ +\xe5\xc5\xf6\x19\x3c\x08\x94\x6d\x49\x80\x8e\x8f\x47\xc3\xce\xe1\ +\x82\x9b\x72\xa9\x4b\x4b\xb1\x35\x57\xeb\x52\x11\x04\x25\x78\xe4\ +\x8a\xa2\xbd\xa8\x40\x8a\x53\x20\xc0\x41\x65\xee\x56\x91\xf3\xf8\ +\x99\xe8\x41\xed\xa9\x90\x5e\x22\xb7\xd5\xe4\x71\xb4\x96\xd8\xa9\ +\x66\x73\xf2\x4f\x32\x96\x12\x92\xaa\xc1\xe8\x55\x32\x0b\x35\x10\ +\x11\xa7\x0f\xd5\x73\x4b\xc4\xd3\xe9\x74\x3c\x5a\xa8\xa1\x3f\x21\ +\xd5\x61\x54\x02\x4f\x72\x7a\x7b\xca\x43\xb5\xd9\xe4\x65\xaa\xeb\ +\x98\xcc\x3e\xb5\x0d\x8e\x97\x82\x2a\x91\xb3\x3e\xc9\x86\x56\x2f\ +\x77\x6a\xf9\x14\xb4\x31\xb5\x79\xe6\x30\xcd\xf2\x55\xe7\xd6\xbb\ +\x80\xb2\x0b\x34\xbe\xe5\x2d\x91\xdb\xab\x09\xa4\xb9\xbf\x73\x07\ +\x4f\xc8\xd4\x60\x82\xb3\x70\x36\x6c\xd2\xe2\x59\xbe\xf6\x46\x94\ +\x48\x30\xa1\xc4\xe0\x0c\xe3\xbc\xa6\xee\xd2\x61\xff\xc9\x20\x1b\ +\x7a\x84\x37\x0a\x9f\x26\x64\x27\x59\xea\xa0\x92\x8e\x2a\xc1\x67\ +\x3c\x55\x03\x60\x66\xda\x41\x75\xbd\xb1\x2f\xe9\x95\xa9\x99\x5e\ +\x9b\x74\x57\x01\x59\xbd\x3f\x70\x5a\x3c\x54\xdc\x49\x88\x20\xa3\ +\x71\x15\xe9\x69\xbe\xfe\x18\xe7\xe9\xb7\x5c\x1a\xe5\x23\xa0\x9e\ +\xda\xe8\x0b\xde\xaf\x8f\x67\x63\x87\x4b\x68\x28\x77\x40\xc9\x9e\ +\xb4\xc6\x4b\x9d\xad\x4f\xe3\xec\x32\xd2\x53\x2f\x9d\x32\x15\xaf\ +\xcf\xd6\xe9\x31\x4a\xf1\xca\x14\x2e\x4a\x78\xfb\xfb\xf5\x48\x85\ +\x7f\x5e\xa0\x44\x9f\x1f\x13\xc3\x25\x8c\xf0\xf6\x8d\x09\x8f\x04\ +\x9f\x3c\x32\x40\xef\x68\x06\x76\x9f\xd8\xb7\xf3\xc7\x7a\x2a\xe1\ +\x13\x52\x9c\x91\x8b\xac\x8d\xd2\x7a\xf9\xd2\x31\x09\x8f\xc5\x2e\ +\x15\x47\x23\xe1\xff\x16\x9c\xf6\xee\x27\xe2\xd1\x68\xb3\x01\xd7\ +\x7a\x8a\x48\x7b\x08\x53\x82\x27\xae\xe4\x45\x2e\x2a\xda\xaf\xaf\ +\x3d\x98\x99\xaf\xa5\x6d\xb8\x4a\xb1\x24\x1a\xf9\xb2\xc1\xc6\xe8\ +\xe7\x0d\xdb\xc9\x41\x00\x7a\x9c\x2f\x13\x32\x94\x81\xaa\x6d\xf0\ +\x9c\x57\x50\xbd\x15\x26\x47\x82\x6b\x3e\x65\xcd\xc1\x93\xa7\x9f\ +\x40\xb2\x2e\xd1\x14\xef\xee\x3b\x8f\xde\xb8\x7d\x61\xd0\x31\x9f\ +\xf1\x68\x05\x0d\x93\x36\x6d\x81\x95\x7a\x40\x32\x2f\x4c\xbc\x82\ +\x0a\x54\x9d\x92\x00\xbe\xb0\x40\xc6\x0e\x0a\xe8\xd4\x6b\x8f\xba\ +\x36\x8c\xf2\x00\x6b\x33\xcf\x92\x87\xac\x35\x52\x2a\x3c\xf4\x0a\ +\x16\xbb\x6e\x27\x92\x43\x18\xda\x37\x55\x5e\xfe\x41\x0e\x2a\xdc\ +\x0c\x65\xa0\xe7\x6e\x38\xff\x1f\x4c\x95\xf8\x27\x33\x08\x52\xd6\ +\xa6\x36\x7b\x7b\x5d\x71\xd6\xee\x9e\x66\x3b\xf2\xf4\x0f\xe5\xee\ +\xd1\x96\x08\xac\xee\x22\xd3\xbd\x1a\x08\x52\x9f\xbc\x62\xfd\xdc\ +\x70\xef\x68\x84\xc3\xaf\x3c\xab\x77\x77\xd7\xca\x7c\xc3\x17\x0e\ +\x3f\xbb\x54\xa2\x6f\x69\x63\x2a\x88\xa1\x05\x5e\xc2\xd2\x9c\xa7\ +\xf9\xca\x39\x31\x40\x1c\x9e\x67\x2a\x69\xe6\x4f\x5c\x25\x41\xa8\ +\xbf\x2d\x33\x11\x16\xca\x8c\x5b\x20\x1c\x37\x4f\xdd\x70\xd4\xe1\ +\x23\xa8\x74\x0a\x43\xdf\xc9\x8d\x05\xe1\xf0\x34\x22\x6d\x4a\x20\ +\x79\x75\x78\x59\x53\x45\x27\x42\x69\x8a\x7b\x5c\xcb\x03\xab\xbf\ +\x6b\x91\xe9\xc1\x86\x96\x7d\xf7\x0b\x3c\xc4\xeb\x2f\xcb\xb8\x23\ +\x57\x5b\x93\x93\xbc\xb0\x15\x89\x4c\x09\xde\x14\x94\x84\x58\x01\ +\xe8\xb8\x92\x0e\x99\xfd\x5f\xb9\xe9\xb8\x73\xe6\xbd\xb1\xe3\xa3\ +\xec\x76\x7f\xe6\x0d\xf0\xea\x75\xe3\xf1\xc8\x2a\x6e\x26\x05\x05\ +\xa4\xb1\xe8\x45\xe6\x45\x98\x89\x94\xfa\xc8\x00\x2c\xa5\x02\x52\ +\xbc\xe8\xad\xaf\xb9\x7d\xc7\xbe\xc1\xb1\xa0\xa4\x8a\xa3\x13\xa2\ +\x15\x8b\x07\x3a\x8c\x72\x7c\x0d\x3f\x15\x96\x00\x50\xbc\xf3\xc4\ +\xe1\x30\xe9\x7b\xc3\x29\x25\xf0\x1b\x85\x24\xf0\x54\x45\x9e\x65\ +\x5f\x85\x11\x9c\xda\x9a\x4e\xb5\x03\x18\x57\x6f\x5e\x6d\xde\x93\ +\xa2\xa4\xf1\x78\xe4\xa2\x60\xa4\x78\x2b\xd1\x4b\x75\xbc\x8e\x04\ +\x0f\xf8\xc0\xa2\x90\xca\x4f\x6f\xd8\x80\x7d\x3a\x82\xd3\xde\x14\ +\xe6\xfd\x0e\x28\x69\xcf\x83\xd9\x35\x48\x2f\x38\xec\x8b\x4b\xad\ +\x8b\xac\x6e\xec\xce\x14\x47\xd3\xe5\xfb\x18\x66\xa1\x36\x9a\xd8\ +\x9e\x94\x83\x2a\x2b\xda\xbc\xa9\x36\x5c\x61\x6c\x17\x66\x77\x57\ +\x3a\xb5\x93\xa5\xfe\x5c\x54\xd2\x4c\x8d\xff\x98\xb0\xdf\xd3\xa0\ +\xa4\x85\xe2\xa8\x30\x34\x4c\x47\x10\x2a\xa3\xcd\x55\x63\x41\x2e\ +\x1c\xd5\x33\x92\x2d\x3d\x7d\xb4\x9d\x01\x36\x1a\xed\xab\x83\x61\ +\x15\x7e\x40\x92\xdd\x0b\x33\xb9\xa2\xf1\x69\x5d\x43\x53\xa1\x92\ +\x6a\x8c\x85\xdc\x32\x85\xb2\xe7\xf3\x53\x80\x06\xc9\x32\x1f\x60\ +\x05\xa4\x97\xd1\xd8\xdc\x86\x8f\x13\x63\x27\x46\xfa\x72\xa7\xa4\ +\x99\x72\xf8\xf0\x74\x2f\x85\x3e\x26\xd5\x01\x91\x4c\x46\xa8\xee\ +\xa8\x55\x14\x58\x2a\x3a\x0a\x48\x99\x9b\x70\x13\x47\xef\xc3\xa9\ +\xc3\xaf\xef\x28\x97\x1f\xcc\x47\xbe\x16\xb6\xae\xc9\x93\xca\xe4\ +\x17\x03\xf4\x2d\xb0\x67\x94\x29\x8e\xa6\xcb\x64\xc4\x50\xae\x3c\ +\x22\x52\xad\xa3\xb9\xea\xc4\x16\x43\x5a\x31\xb9\x38\x37\x85\x03\ +\x67\x2b\x07\x72\xc5\x0a\x67\x4c\xa8\xa4\x10\x37\x5b\x25\xbd\x66\ +\x46\x80\xf2\x90\x37\x51\x52\xed\xf0\x95\x6a\x8a\xd5\xa7\xdc\x13\ +\xf0\x94\x74\x14\xb5\x34\x97\xe3\x96\x78\x55\x2b\x4e\x5b\x7a\x3d\ +\xcc\x8b\xca\x0d\xc8\xff\xfd\x8f\xc9\xf5\x46\x63\x8f\x3d\x61\x45\ +\x99\x50\xd2\x25\xc8\x44\xbb\x5d\x1e\x50\x04\x61\x49\xa8\xa4\x02\ +\x53\x6b\x6a\xaa\x46\xa6\x9a\x1f\x64\x6b\xb9\xd0\xe7\xd6\x79\x44\ +\xee\x7b\x47\x4e\x49\xff\x6b\x52\x26\x10\xff\x89\x75\xfd\x02\xf5\ +\xe5\x6e\xb9\x67\x86\xe2\x3d\x61\x80\x1a\x25\x1d\x4d\x0e\x26\x3e\ +\xf3\x91\x7b\xa7\xe6\x8e\x59\x11\x0e\x4a\x05\x78\x52\x7b\x12\xc1\ +\x4b\x4f\x09\x22\xd5\x7d\x3a\xc2\x51\x91\x7e\xbd\x02\x66\xab\x76\ +\x2c\x18\xa1\xd7\x03\x50\x42\x7a\xed\xc8\x2a\x69\x4f\x1b\x93\xd1\ +\x53\x52\xd2\x2b\xb1\x5f\x60\x73\x09\x1c\xc5\x08\x8a\x48\x4a\x0f\ +\x52\xc5\x07\x62\xb8\x1c\x3c\xeb\xe2\x78\xc5\xa3\x3f\x2a\x1e\x39\ +\xbe\xfa\x4d\xc1\x6c\xd7\x73\x6a\x51\x51\xe7\x49\x37\x75\xb4\xcb\ +\x87\x22\xc9\x67\x20\x73\x92\xa1\xdc\x13\x89\xde\x51\xd6\x51\xc5\ +\x52\xd5\x54\x02\x6e\x1e\xf5\x54\xac\x1e\xed\x9e\x07\x7d\xc9\x28\ +\xe4\xb9\x75\x77\x6c\xd9\x7a\x60\x19\xb8\x82\x4f\xe5\xa5\xa4\x76\ +\xbf\x90\xe5\xbe\x4b\x50\x27\xa6\x3f\x62\x62\x6a\x9f\x56\x3e\x72\ +\xbd\xf3\xa3\x71\x43\x11\x7c\x44\x89\x08\x4d\x2a\x81\x07\xf3\x10\ +\x86\xfa\x06\x74\xf8\x7b\x9f\xbb\xee\x3a\x54\x52\xc2\x69\x86\xd3\ +\xb6\x8a\xba\x5c\x7b\x0e\xc4\xca\x7d\x96\xbc\x53\x52\x59\xee\x41\ +\x41\x7f\xf5\x94\x96\xc1\xaa\x8d\x97\x2c\xb5\xda\x10\x38\xc7\x5d\ +\x84\xe1\xc0\x69\xed\x9f\xc0\xd7\x03\xd2\xa8\x55\x63\xc3\x87\x8f\ +\x36\x4c\x9b\xdb\x55\xc3\x5a\x8f\x63\xec\xb6\x0c\xd1\xed\x67\xf7\ +\xc1\xea\x9e\xa3\xe8\x4b\xf2\xa4\x3d\xe4\x27\x5c\x24\x73\xc8\x45\ +\x6d\x9a\xd7\xa2\xbe\xa7\xa6\x67\x4f\x85\x84\x4f\xa4\xa3\x31\x4f\ +\x81\xab\x2a\xb3\x43\xb8\x9f\x7e\x0a\xa1\xdd\xd9\x03\x96\x1e\x01\ +\x38\x37\x01\x4e\x58\x99\xf6\x5a\x91\xae\xe9\x78\x39\x3d\x2e\xf7\ +\xdd\x0d\x2f\xbf\xec\xd2\x0d\xb0\x80\x9e\x4d\x9c\xdc\xf4\xa0\x9d\ +\xbb\x4d\x8b\xd3\x98\x52\x1e\xfd\xc6\x1c\x35\xa0\x98\xa3\x05\x49\ +\xbe\xda\xb0\xd7\x02\x7d\xd9\x08\x81\x1e\x9c\xa9\x4a\x56\xd2\xdd\ +\x1d\x09\x9f\xee\xb1\x9d\x34\x43\x1e\x96\xda\xce\xac\x92\x4e\xbe\ +\xed\x70\xd0\xc9\xa9\x7f\xb7\x48\x4f\x9d\x34\xea\xb1\xd1\x80\x6c\ +\x15\xed\x78\x1b\x3c\x79\x6c\x3d\x5d\x2a\xf1\x7b\xb4\x40\xfa\xcf\ +\x5d\x67\x1c\xe5\x29\x4d\x03\xf4\xcc\x45\x04\x7a\x55\x1f\xac\xe9\ +\x1d\xc0\x99\x61\x21\x61\xde\xe9\xa0\x93\x35\xb3\xb4\xab\x8c\x7b\ +\x4b\xb3\x6b\x91\x5e\xdc\xef\xb7\x7a\x89\xd2\xb8\x40\x8c\x5a\xde\ +\x14\x54\x04\xa9\xdb\x35\xaa\x57\x2f\x03\x68\xeb\xfa\xd6\xe4\xef\ +\xdf\x73\xe1\x95\xab\xad\x63\x77\x4a\x0a\x9e\x74\xf5\x50\x46\xa7\ +\xb9\xb4\x6e\xa1\xe7\x18\x6a\x22\x41\x65\xdd\x73\x0b\x2d\xa9\x97\ +\xa4\x67\x8d\xfb\x0e\x5f\xd6\x26\x65\xf5\xb9\x1e\x46\xc7\xc6\x84\ +\x3c\x5c\x36\x04\xff\x54\xf4\x3b\xdf\x70\x4a\x0a\xd5\x87\xc3\x61\ +\x98\x61\x25\x63\x3d\x2d\x03\x47\xc3\xc2\xc0\x5c\x7e\xf6\xdc\x68\ +\xa4\xac\xfb\x8e\x85\x41\x09\x6e\x34\x1e\x57\x91\x5e\x42\x8b\x02\ +\x1f\xed\x47\xa5\xed\xe9\xe7\xaf\x38\x73\xdb\x45\xaf\x00\x98\xf9\ +\x5a\xe2\xc9\xe3\x05\x3a\xd2\x3f\x1b\x81\x92\x8a\x27\xbd\x33\x2f\ +\x89\x56\xcc\xc1\xc0\x79\x23\x7a\xf0\xa0\x40\x68\x38\xfb\x96\x5a\ +\x39\xcd\x75\x4d\x8e\xff\x48\xf7\xe3\x8a\xdd\x93\xec\x73\xb4\xf9\ +\xb5\xdf\x3c\x06\x87\x7b\x9e\x64\xb0\x1a\x03\x32\xdc\x74\xf3\xd0\ +\x6b\x4c\x96\x26\x9d\x92\x96\xe4\x49\xd7\x75\x38\x6c\x86\x3c\xf9\ +\xe3\x4b\xb6\x36\xbe\x9e\xfe\xfa\x84\x05\x39\x98\x29\x64\x84\xbb\ +\x54\xf0\xd3\xed\x44\x5a\xf4\x28\xf8\x86\x4a\x43\x0d\xc1\x04\x6c\ +\xa4\xd1\x6b\xac\xfc\xd7\xfe\xc5\x60\x25\x28\x29\x46\x4f\xb5\xb5\ +\xec\xb9\x61\xc5\x4a\xba\xb8\xa9\xc6\x40\xef\xb5\x4e\x49\x1a\xd6\ +\x83\xbe\xdd\x26\x00\xe7\x5d\x43\x20\x61\xec\xa8\xe0\xec\xf2\x1f\ +\xb7\x4c\x9f\xb9\x13\x1b\x22\x1d\x15\xb9\x7f\xe8\xa6\x7b\x26\xbf\ +\x72\xf5\x7a\xc4\x88\x19\xed\xda\x3a\x37\xe0\x5e\x8b\x4a\xea\x22\ +\xd2\x33\x58\x49\x61\xb9\x37\xb4\xe6\xaf\xf7\x96\x2b\x3e\x7f\xbe\ +\x9b\xf7\x7c\xc7\xd0\x85\x7a\x1b\x3e\xf8\xd9\x7d\xfd\x4e\x51\xea\ +\x02\xa9\xcb\x9c\x20\x30\xd5\x50\xc5\x94\xb4\xf8\x03\x1d\xbd\xfc\ +\xfe\x49\x8b\x6e\x13\x95\x31\xf6\x20\xd2\xd9\x86\xed\xd6\xd8\x26\ +\x4a\x6a\xa0\xee\x05\x25\x6d\x55\x86\x78\xb9\x1f\xb1\x79\x6f\x1c\ +\xb6\x32\x47\x86\xc9\xfe\xc0\xcc\x2e\x2a\xa8\xa3\x64\x07\x44\x9c\ +\xd4\x73\x44\x8a\xb4\x76\xd2\x0f\x11\x6e\x7f\x7c\xd7\xe0\x3d\x6f\ +\xfe\x21\x00\x78\xc4\xfa\xfc\x4f\x24\x95\xd4\x50\xf9\xdc\x62\x40\ +\x07\x86\x33\x3c\xbb\x9f\x07\x93\x65\xac\x9e\xbc\x17\x9a\xee\x24\ +\x6b\x0a\x4e\x65\xf9\x05\xe9\xe8\x05\x9e\x23\xb9\x7d\xd8\x6f\xe5\ +\x96\x8e\x03\xe1\xcf\x58\xa4\xc7\x83\x92\x82\xd9\xe7\x55\x39\x09\ +\x9e\xd4\xc0\xfc\xfc\x5d\x23\x0d\x73\xfe\x8e\x61\x87\x0b\xb8\xe1\ +\x0c\x6f\x44\x8b\x08\xe3\xde\xbc\x56\x28\x76\xb9\x00\xa8\xbd\xd6\ +\x1e\xcd\x38\xef\x1e\xce\xe4\x48\x5f\x83\x2a\x81\x05\x4a\x4a\x5a\ +\xd9\xeb\x0a\x60\xf5\xe6\x1b\xbe\x4e\x7f\x8d\xe9\xa1\xd5\x38\x7f\ +\xd3\xce\x00\xa6\x94\xa9\x1c\x37\xd6\xd3\x5e\xdd\x78\x78\x7f\x58\ +\x19\x2f\xf4\x81\x01\xa2\xcb\xcf\x79\xd3\xed\xae\xa0\x39\xec\xc8\ +\x5f\x42\x70\x07\x49\x8c\x96\xbe\xda\x7e\x1d\xd6\x03\x9c\x1f\x25\ +\x2e\x5e\xf8\x7d\xd4\xcf\x87\xf6\x9d\xf6\xee\xdb\xb6\x3f\xfa\xc0\ +\xb0\x53\x64\x44\x96\x95\xc0\x50\x01\x0a\x0f\x25\x24\xd1\x96\x18\ +\x80\x6c\xc5\x7e\x34\xca\x45\x9a\x2d\xd0\xd3\x4f\x0d\x65\x00\xe9\ +\x13\xa0\x09\x7d\x52\xd2\x75\x1d\xbb\x6f\x73\xc2\xbc\x94\xe3\xce\ +\x81\xa2\xdd\xcd\x3b\x76\x15\x65\x96\xd7\x54\xd0\x29\x4b\xa7\xa3\ +\x6a\xfa\x2c\xf1\x14\x29\xde\x06\x4f\x77\x91\xe1\x1c\x15\x9d\x86\ +\x3e\x03\x15\x85\x7e\xce\x54\x43\x50\xdc\xb7\xb2\x7f\x1d\x20\xbd\ +\xe9\x8c\xfb\x09\x26\x74\xc9\xfd\xcb\x0f\xb6\xec\x30\x2e\xa8\x51\ +\xa3\xbf\xf7\x4a\x25\x24\xf5\x0c\x7f\xd9\x93\x22\x4b\x63\x1d\x6d\ +\x79\xc9\xb2\xb6\xfc\x30\x28\x39\x05\x80\x76\xa4\x25\xf7\x9b\xa0\ +\xb3\x00\xf4\xc7\x2a\x73\xb8\xdb\xc2\xbc\xca\x0c\x7f\xaf\xf2\x3c\ +\x18\x94\x4a\x24\x47\x5a\x44\x4d\x27\x88\xa5\x13\x29\xf7\xa4\xfb\ +\x89\xc6\xc7\xa3\x66\xaa\x3c\xb8\xc1\x19\x89\x9e\x8e\x00\x63\xea\ +\xd4\x96\x5e\x14\x9c\x53\x8f\x3f\x70\xc4\x66\x53\xfe\x9c\xd1\x6d\ +\x99\x99\x7f\xc9\x9f\xeb\x10\x1d\x45\xac\x70\x75\x0f\x1d\x94\x14\ +\x2a\xb1\x57\x7f\x7c\xd7\x8a\x75\xee\x11\x2e\x3c\x1e\x69\x51\xfd\ +\xe7\xae\x9e\x6b\x7d\xf9\x18\xc5\x42\xf3\x3b\x86\x79\xdd\x6c\x24\ +\x6b\xe3\xd1\x9f\xb0\x2f\xc7\xcd\x1f\x4d\x6f\xdf\x8c\x3d\xb6\xae\ +\x07\xe2\x43\xc6\xb3\xfe\x92\x1c\xe8\x1d\x27\x02\xac\xcf\x0e\x6a\ +\xa4\x9b\xd6\x3c\x64\xb2\xa5\x55\x5b\x87\x4b\x05\xef\x87\x6b\xd2\ +\xa7\x42\x01\x62\x6a\xfe\x68\xfa\xfc\x4d\x4b\xa7\x76\x02\x50\x7e\ +\x18\x28\xfe\xfd\x95\x1f\x3e\xb6\xed\x4b\xcf\xe2\x52\x35\x3b\x68\ +\xd5\x4c\xa7\x99\xb9\xd4\x4b\x9d\xc2\x95\xf1\xd3\x27\xac\x43\x46\ +\x66\x63\x1b\xb4\xa2\xf6\xf6\x06\x99\x53\x2c\xff\x70\xd2\xd7\xbb\ +\x9c\x31\x8f\xfc\x05\xb1\x13\x96\x9c\x2b\xda\x08\xaf\xea\x74\xa3\ +\xab\xcf\xd9\x2c\x3a\x6f\xc9\x57\xba\xa7\x24\x92\x7c\xd8\x54\xd2\ +\x80\x18\xef\x78\xc4\x27\x01\x46\x27\x2a\x3d\x01\x58\xfa\xab\xe0\ +\xf6\x43\x13\xfa\xcf\x2c\x71\xe4\xee\x50\xf3\x47\xc5\x3d\x05\x79\ +\x48\xbc\x65\x0f\x4a\x4a\x0c\x1d\xcd\x1e\x66\x56\x29\xcd\x4e\xc0\ +\x2a\xfa\x69\x91\x0a\xd4\x4c\xba\xdb\xb3\x8c\x60\xfe\x3f\xe6\x8f\ +\xaa\xb2\x93\x7f\xb1\x2f\x65\xa0\xa0\xa4\x77\xbe\x7b\xe3\xca\x95\ +\xab\xd7\xdd\xbe\x30\x9c\xe1\x3a\xa9\xae\x39\x3b\x91\xcb\xb0\x71\ +\xbd\x85\x63\xc1\xa2\x7b\x4a\xd9\xfc\xb8\x5e\x7c\xa9\x3e\x68\x0d\ +\x45\xa4\x7a\x32\x36\x28\xe9\xdd\x9d\xbc\xd1\xe9\x77\x66\x1a\xc1\ +\xbc\xe9\x2a\x9a\x3e\x6b\x6f\xe9\x7d\x51\x23\xbc\xc5\xee\x7f\xfd\ +\xf9\xa3\x96\x5a\x0a\xa5\x62\xa9\x20\xad\x9d\x27\x9d\xf5\x17\x51\ +\x9f\x2a\x2c\xe5\x12\xc9\x66\x7d\xdc\x44\x8a\x5c\xcd\x12\x83\xa9\ +\xa4\x2d\x33\x0c\xf3\x30\x72\x4e\xfb\x51\x45\xf5\x33\x26\xd1\xd9\ +\x33\x2c\xb8\xfe\x10\x9e\xaf\xaf\x62\xa4\x95\xc6\xa8\x8e\x08\x65\ +\x89\x39\x35\xda\xdd\xeb\x29\x6f\xcd\xf4\x36\x53\x02\xe9\x36\x6b\ +\x49\x7f\xdb\x90\xbc\x3e\x3c\x80\x81\x30\x65\x76\x7b\xd2\xec\x05\ +\x6a\x3c\x22\x55\x4b\x3e\xfe\x2b\x18\x61\xb1\x24\x6d\xfa\xcb\x2d\ +\xd0\x2d\x1d\x84\xa9\xaa\xce\xfc\x87\x25\x34\x4b\x45\xf2\xd8\x3a\ +\xe8\x9d\x63\x55\xf3\x9e\xb4\xed\x87\xb2\x8f\x39\x4a\xf8\xd8\x8e\ +\xf4\xd4\xe1\x79\xc8\x39\x5e\xf5\xbb\x57\xdc\x94\xe7\xaa\x3c\xca\ +\xc2\xb7\x54\x0b\x57\xd3\xc7\x57\xe5\xe0\x95\x66\x29\x5f\xe3\xfd\ +\x68\x32\x67\x6a\x44\x4a\x6a\x3d\xe9\x9c\xcd\x28\x47\x97\x80\xe4\ +\x73\x0f\x24\xf2\x95\x51\x8a\xc7\x97\x4d\x26\xb6\x7a\xff\xef\xdf\ +\xc4\xcd\x8e\x81\x3d\xa5\x47\x2b\x44\x03\x7f\x04\xec\x13\xdb\x64\ +\x6d\x9a\xed\xa7\x8e\x33\x45\x62\xd7\x27\x9a\x32\xf6\xa5\x6c\x4e\ +\x91\xdd\x8f\x9f\xed\xa8\xa2\xd1\xa8\xdd\x51\xb0\xd6\xf5\xd4\x68\ +\xe4\x25\x79\xa9\x33\x77\x25\xfe\x45\x21\x0d\x56\x4f\xf3\xf5\x54\ +\x34\xd3\xf3\x47\xf5\x21\x0c\x7d\x9e\x29\xb2\x25\xbd\xdd\xa0\x6a\ +\x64\xcf\x73\x40\x32\x5a\xb3\x7d\x38\x43\x38\x8b\xc4\x80\xbf\x0a\ +\xa7\xb8\x07\x6d\x99\xed\xd0\x47\xbd\xe4\xfc\xd1\x43\x8e\xfa\x4a\ +\xeb\x67\x6e\xb2\xfb\xd1\x08\xaa\x5a\x3b\x16\x06\xd7\xf7\xf2\xe8\ +\x28\x9b\x34\x3a\xa2\x6e\x02\x47\x43\x12\xa4\x40\xbf\xee\xfc\x51\ +\xd8\x64\x8a\xfb\xf0\xc9\x43\x31\x4b\x73\x7b\xdd\x74\xe4\xba\x4d\ +\x26\xc7\xe8\xcb\xdf\xe7\xfa\xbf\xca\xce\xdd\x55\xb2\xac\x0a\xe3\ +\xbe\xea\x3c\x76\x75\xdd\xe6\xf6\xbd\xed\x5c\x54\x1a\xbb\x07\xc4\ +\x99\x40\xc5\x69\x1d\x75\x50\x26\x52\x04\x15\x44\xc4\x89\xd4\x44\ +\x06\xf1\x89\x18\x34\x46\x62\x20\x9a\x75\x64\x24\x18\x0a\xc2\x80\ +\x99\x68\x26\x9a\x75\xa0\xe1\x04\x82\x30\xa1\x88\x7f\x83\x5d\xfb\ +\x7c\xac\xc7\xf9\xed\x25\xed\xa9\x5b\x75\x1a\x3a\x59\xac\xbd\xd7\ +\xf3\xf1\xad\x1d\x95\x4d\x2e\xc9\x22\x8b\x4f\x78\x5c\x49\xba\x8f\ +\xe1\x14\xd0\x44\xc4\x71\x1e\x3e\x81\x9f\xb9\xbe\x7c\xfb\xf6\x69\ +\x8e\x86\x49\x1c\x05\xd4\x57\x6b\x40\xf8\x8b\xb8\x79\xd6\xd7\x5e\ +\xe1\x8f\x12\xd7\xf3\xc4\x4e\x57\xf1\x34\x8d\x8a\x5c\x76\x32\xe3\ +\xec\x32\x14\xbe\xce\x9d\xc3\xc0\x6b\xda\x73\xa7\x63\x97\x4a\x3d\ +\xd4\xf8\xa3\x41\x92\x14\x85\x96\x58\x15\x11\xc8\x79\x12\xa5\xf6\ +\xc0\x84\xae\x69\xb0\x65\x3c\x77\x65\xc8\xd8\x52\x4e\x87\x1a\x7f\ +\x94\xe1\xb2\x17\xc2\xe7\x84\x38\x3d\xc7\x51\x11\x14\x6e\x6d\x2e\ +\x94\xa0\xae\xa2\xd6\x31\x8a\x08\xf3\xa6\x04\x44\xe6\x28\xf1\x47\ +\x99\x80\xe0\x70\xbd\xde\xa9\xba\x9c\x79\xca\x93\x77\x28\xaa\xd5\ +\x26\x99\x9c\xaf\x87\x10\xdf\x05\xc7\xb9\xc6\x1f\xa5\xc2\x67\xb0\ +\x5c\xef\xaf\xcf\x1b\x65\x06\xb3\x96\x11\x15\xbd\x98\x61\xe5\x90\ +\x35\x81\x08\x6b\xac\xf1\x5b\xc8\x3e\x68\x4d\x30\x8f\xdd\x4b\x62\ +\x9d\xa5\x9c\xb1\x6e\x24\xd7\xa7\x6b\x9d\x58\xce\xd9\x82\xd2\x74\ +\xf4\x27\x78\x79\xb5\xd2\x4f\x8b\x4d\xdd\x32\x71\x0e\x43\x7c\x64\ +\xb4\x9c\x31\x6a\xe8\x91\xf2\x91\xd4\xe3\xe4\xfb\xc7\x19\x6a\x39\ +\x1d\xce\x82\xbb\xad\x17\x75\x59\x45\x61\x38\xf0\xe0\x98\x9e\x8a\ +\x98\x0f\x0b\x86\x6f\x6a\x8e\xa2\xbb\x5d\x74\xc6\xfc\xc3\x65\x98\ +\x17\x30\x96\x5a\x5b\x09\x9a\x86\x45\xa5\xc8\xb4\x11\x31\x0c\xde\ +\x01\x2c\xb5\x26\x54\x1c\xf5\xb3\x9f\x93\xd6\x8f\xdd\xc3\xa2\x71\ +\xce\x87\xcf\xc7\x85\x29\xba\x79\xa2\x6e\x87\x88\xff\xff\x40\xcf\ +\x92\xa1\xe2\xa4\x84\xdf\x1f\x0d\x87\x61\x2d\x57\xf2\x47\xf2\x1e\ +\x04\x22\xba\x66\xf0\xf6\x24\x4d\x84\xa3\xa2\x7a\x82\x0d\x15\x47\ +\x01\x43\x39\xe7\xe5\x5c\x40\xff\xc8\x92\x8f\x87\xe0\xed\xba\xa1\ +\xcf\x06\x8f\x9c\xb0\x67\x85\x8f\xdb\x7f\x37\x32\x8f\x49\x8f\x8a\ +\xd2\x61\xf7\xb0\xa2\x65\xc1\x64\x6e\xdc\xc5\xa0\x25\x70\x9c\x31\ +\x72\x37\x1e\x65\x2b\xa6\x18\x6d\x67\x07\xcd\xa7\x1f\xfd\xdc\xa6\ +\x1d\x9d\x4d\x74\xae\x46\x22\x60\xde\x00\x00\x11\x79\x9a\xe3\x25\ +\xc6\x4c\xbe\xb8\x3e\x36\x3a\x52\x8d\xba\x7e\x1a\xe2\xe6\xad\xd6\ +\x4a\x76\x7e\x75\xa9\x82\xa9\x27\x50\xaa\xfe\x65\x14\x8e\x13\x7a\ +\x58\x0d\x6e\x01\x93\xc8\x34\xa1\xcf\x4d\x84\x36\xc5\xa8\xe6\x27\ +\x39\x50\xfd\xe3\x6e\x73\x95\x7f\xc8\x60\xa9\xcc\x93\x10\x42\x8b\ +\xeb\x3a\x66\xbd\x33\xa4\xab\x34\xa8\x9b\xd0\xd6\x49\xdd\xab\x51\ +\x3f\xf6\xed\xcf\xfb\xf1\x2f\x28\x4b\x05\x84\x92\x18\x5b\x2d\x36\ +\xa5\xcc\xd3\x84\x6a\xe6\xae\xa3\xbe\xcc\xb6\x87\x11\xf9\xbc\x04\ +\xa2\x04\x66\x8a\x8f\xf1\x93\x9e\x67\xc3\xcd\xbb\x94\x5d\x2a\x3a\ +\x33\x9b\x06\x04\x03\x30\x15\x12\x7a\xf2\x44\x8d\x9b\x75\x26\x9f\ +\x20\x4a\x3a\xf6\xf8\x43\xf5\x94\x9e\x64\xe5\x2f\xf3\x26\x84\xd6\ +\x8f\x5f\x93\x77\xda\x1c\x19\xb2\xa3\x4d\xa7\xcf\x11\x46\xfd\x45\ +\x86\x22\x0a\xd5\x37\x07\x77\x37\xd5\xba\x0e\x89\x7c\x9c\xb9\xd3\ +\xa3\x9b\xa9\x37\x2d\x67\x5b\x0c\xe5\x2d\xce\x2f\xc3\xd4\x8b\xbc\ +\x3a\x0a\x2d\xb6\x04\xa7\x15\x3d\x9e\x2f\x41\x17\xbe\xff\x13\x5b\ +\xf9\x88\x53\x03\x99\xcf\xbe\xa8\x43\x7d\x29\x4f\x92\x57\x49\x21\ +\x41\x3a\x2a\xdd\x04\x33\x8f\x4d\x77\x2d\xaf\x91\x9a\x87\x70\x3a\ +\x74\x9b\xf5\x74\xd2\xdc\x85\x1e\xca\xd2\x60\xbc\xbe\xc4\xc3\xd7\ +\x0c\xa3\x87\xcc\xde\xdf\x1e\x81\xd1\x47\xbc\x74\x81\x0a\x35\x11\ +\xf0\xb5\x5e\x7f\x12\x24\xca\x5e\xe5\xf4\x4d\xa8\x35\xc5\x99\x50\ +\xfd\xf8\x48\x8b\x1a\xc7\xa7\x9c\x76\xf2\x08\x14\x04\x26\xb6\xba\ +\xc5\x87\xb1\x47\x8c\x47\x3c\x7c\xd9\x79\xf3\x9d\x30\x28\x64\x18\ +\xde\x6d\xca\x30\x25\x04\x01\x91\x83\xbf\xae\x69\x2c\xd8\xee\x69\ +\xa2\x92\x63\xeb\x35\x1e\xfe\x25\x86\xc1\xa5\xa5\xb2\xa1\x6f\x3e\ +\x1c\x98\x57\x73\x65\xf4\x7e\x63\xa8\x11\x49\xc7\x99\x00\x10\x22\ +\x35\xe9\xd3\x9b\x72\xe3\x95\xd0\x15\x2e\x15\x33\x61\x67\x64\xb3\ +\xa5\x67\x50\xf8\x21\x06\xa5\x97\x87\x64\x9e\xf4\x14\x00\x55\xe0\ +\x3a\x0d\xf1\xf0\xf3\x9c\x10\xb6\x09\xb5\x16\x6f\x69\x23\xfa\xb0\ +\x52\xf8\x1a\xbc\xc2\x93\x72\xf8\x2c\x89\xd9\x35\xa5\x65\x2a\xba\ +\x08\xb9\x55\x64\xd2\x37\x0a\x52\xf6\x48\x17\xc7\x7b\x5a\x85\xf7\ +\x04\xe3\x74\x91\x6d\x3e\xcf\x7e\x68\x3f\x6f\xd0\x9b\x67\x5a\x14\ +\xa5\xbb\x84\xa1\x34\x4d\xb8\xa3\xf9\xf8\x97\x0a\xef\x49\xb2\x24\ +\x62\xc7\xb5\xd0\xb1\x1e\x55\x1a\x17\x35\x11\x6f\xd5\x70\x1a\x13\ +\xdc\x7c\x9b\xc1\xd1\x12\xef\x49\xc4\x65\x04\x2d\xc2\x94\xf8\x1f\ +\x8d\x28\xb3\x8e\x8c\xeb\xb1\x46\xcc\x91\x32\xe7\x12\xda\xd1\x7f\ +\x28\xf7\xb1\x7a\xc7\xbc\x38\xd5\x68\x8d\x58\x20\x62\x71\xf0\x36\ +\x0c\x2c\xf4\x97\xf0\xb8\xac\x1b\xb5\xdc\x7b\xc3\x12\x23\x61\xfb\ +\x81\x3f\x59\xe0\xe1\xcf\x73\x59\xb2\x8d\x14\x37\x61\x2c\x60\x5b\ +\xa8\xb3\xb4\xae\x83\xba\x81\x22\x92\x8e\xe7\x9d\x89\x91\x4b\x76\ +\xe6\x0b\x90\x59\x6a\x7c\xa5\xef\xec\xed\x0f\x32\xfb\x9c\xaf\xf7\ +\x2a\x23\x59\xea\x5a\x34\x52\x59\x03\x53\x01\x26\x37\x90\x9a\xa4\ +\x9e\xab\x25\x44\x62\xfc\x5b\x4d\x96\x52\xd3\x93\x47\xcc\x3c\x78\ +\x46\x4d\x37\xaa\x2e\xb3\x6a\x0b\xa1\x37\xb1\x57\x5a\xa7\xd1\x36\ +\x89\xa3\x7e\xfa\xc0\x20\x4c\x29\x47\x64\x47\x51\x0e\xaf\xd1\x89\ +\xdc\x75\x66\x70\x27\x69\x0f\x80\x3f\x9d\xa3\x96\x21\x5d\x7c\x5e\ +\x3d\x2e\x3b\x5b\x17\xc0\xcc\x77\x22\x89\x36\x8e\x06\x2d\x10\x5a\ +\x44\x23\xde\x5b\xc0\xfd\x4c\x21\x56\x86\xb5\x77\xa1\xe7\xe8\x3a\ +\x8a\xb6\x94\x28\x7d\xa8\x9e\x4e\xf5\x72\x89\xac\x9f\xb8\x39\x50\ +\x93\x81\x53\x26\x72\x75\x8b\xd4\xe2\x9c\xfd\x21\xa5\x74\x10\x2b\ +\x9b\x2c\x11\x28\x15\xdb\x2d\x3d\x58\x22\x7e\x96\xee\x67\xb4\xa2\ +\x63\xd8\xbc\x18\x82\x72\x43\xb0\x2b\x7c\xe3\x25\x3d\x52\x7b\x71\ +\x7f\x3d\x05\x49\x92\x14\x48\xc5\x5a\x53\x28\x7c\xc4\x4c\x5c\xcf\ +\x74\x10\x53\x9d\x54\xaa\x52\x5a\x7b\x9a\x50\xc2\xbc\x65\xae\x36\ +\xf7\x9e\x68\xea\x33\x82\x52\x86\xd2\x71\xb4\x4c\x2e\xe4\x83\x83\ +\x3f\xdc\x82\x91\xf1\xf0\x75\xea\x65\xf3\x4b\xd3\x07\x4b\x9a\xe8\ +\x94\x64\x2b\xba\xa6\xdc\x83\x9b\xf9\x25\xd2\x19\x22\x65\x7a\x7b\ +\x63\x6c\xe4\x44\x21\xed\x68\xab\xf1\xf0\x93\xc6\x27\x04\x44\x94\ +\x79\x56\xc3\x76\x8d\xae\xc0\xcd\x3b\xf1\xd4\x1d\x22\x37\x05\x76\ +\x93\x4e\xde\x62\xa7\xd1\x52\x3e\xa7\xaf\x9b\x2a\x7a\xf7\x7e\xec\ +\x20\x57\x7a\xb4\xde\x7d\xc3\xdc\xd3\xd1\xd4\x28\x21\x6a\x6a\x2c\ +\x9d\x33\x71\xb1\x72\x4b\xae\x8a\xa1\xd8\x64\xfd\x36\xe7\xa8\x7d\ +\x50\xb4\x45\x24\x62\xd2\x0f\x8e\xb6\x04\xef\x98\x1b\x9f\x44\x9f\ +\x23\xd2\x29\xf5\xc8\x45\x9c\xe2\x2a\xf3\x8d\x75\x83\x16\x92\xa3\ +\x49\xec\x47\xf9\xf1\xe0\x2e\x03\x13\x5d\x12\xbf\xae\x4b\x81\x91\ +\xea\xae\x5e\x11\x35\x45\x97\x84\x96\xc9\x1c\xd2\xa8\xe8\xf3\x1d\ +\xa5\x8a\x02\x7a\xfb\xe2\xc4\xea\xdb\x92\xad\xbf\xb0\x9a\x48\xb1\ +\xd5\x96\x7b\x4d\x89\x87\x4f\xc1\xf7\xdc\x63\x34\xf2\xa2\x52\x31\ +\x13\x8f\x5d\x2f\xe6\xf3\x12\xb5\xb1\xe7\x2d\xb5\x3d\x39\x95\xe3\ +\x94\x0e\xd4\x68\x60\xed\x11\x71\x3d\xe0\xfd\x26\x64\x20\xf4\xb2\ +\x95\x91\x74\x49\xa3\xa5\x5f\x90\xc5\xa7\xe8\x1b\x1e\x3e\xc5\x09\ +\xc2\xa4\xaf\x3b\x25\x4a\x91\x45\xa7\xc4\x39\xba\x3a\x86\x33\x61\ +\xbc\xb1\xcd\x1a\x71\x3d\xa4\x89\x24\x46\x90\x5c\xa2\xa5\xb6\x94\ +\xd2\x11\x91\xd0\xa5\xbe\x71\x9d\x5b\x9a\x9c\xa3\x34\xf3\xbc\x9f\ +\x84\x4c\x4c\xdd\xe3\xfa\xc6\x48\x44\x1b\xac\x0d\xdd\x4f\x25\x26\ +\x63\xa8\x5b\x4f\x47\xcd\x23\x7c\x7b\x56\x4d\x14\xa8\xa4\x50\xfd\ +\x61\x75\x99\x78\xf8\xd5\x96\xe0\xfe\x07\x27\x2f\x06\x77\x63\x2b\ +\x9a\x6a\x22\x5c\x69\x6b\xf2\x34\xdc\xb6\x0e\xb7\x84\xce\x3d\x43\ +\x12\xd9\xa5\x28\xf7\xdc\x67\xdc\x82\x28\x65\xfd\xc4\xd0\x2e\x6d\ +\xb8\xd4\x2f\x12\x10\x84\xc2\x07\xa5\xb2\xed\x0d\xbb\xac\x27\xb2\ +\x74\xd1\x6f\x10\x7a\x56\x6d\x4d\xe9\xb3\x7c\x03\x13\x5a\xf9\xa3\ +\xfa\x83\x59\x72\x34\xba\x9c\x18\xf7\x44\x6e\x0c\xf1\xea\x26\xc2\ +\x48\x2d\xb6\x09\xf5\x2f\x9e\x21\xfa\x68\x59\x5f\x6e\xc1\x32\x59\ +\x85\xd1\xde\x2b\x6a\xa1\x0d\x2b\x1b\xcc\x86\x9a\x19\x85\x7a\x02\ +\x33\xb9\x8b\x11\x6d\xae\x26\xf5\x99\xad\xcd\x5c\xbe\x69\xce\x9d\ +\x0f\xab\x1d\xfc\x28\x35\x0e\xd3\x44\xe3\xa9\x37\xf3\x79\x1c\xbb\ +\x4a\x10\xa4\xf4\x9e\x24\x4c\xc6\x49\x6a\x51\xe3\x69\x94\xaa\x8b\ +\x24\x52\xce\x55\xda\xa6\x02\xce\xf7\x08\x5c\x4f\x80\xd4\xd0\x1f\ +\x4d\xe4\xce\x11\xf6\xa5\x39\x81\x65\xbd\x56\xa2\x24\xc6\xc2\xcb\ +\x63\xf6\x49\x7a\x14\x93\xcb\xc1\xc9\x23\x47\x13\x9d\x1e\x2d\x4f\ +\x86\xa7\xb2\xae\xa6\xfa\x09\xdd\x0e\x41\x42\x74\x07\x7e\x16\x99\ +\x12\x20\x92\x51\x9e\x1c\x1f\x95\x81\xbd\xfa\x5e\x1c\x83\x90\x86\ +\xc9\x55\x54\x08\x9a\x19\x37\x81\xd2\x4a\x3d\x1d\x4b\x7f\xd4\x02\ +\x66\x38\x4f\xab\xfe\x42\xe7\x4b\x63\xc5\x16\x23\x18\x00\x6f\xf7\ +\x10\x94\x47\x7f\x2b\x49\x92\x91\x6a\x32\x6f\x21\x48\xf4\x9e\xf4\ +\x71\xc8\x1f\xc7\xf6\x34\xc1\x87\x36\xc5\x8a\x9e\x65\xc8\x4c\xe6\ +\x9e\xf2\x25\x35\x32\x4b\x7f\xd4\x93\x0f\x8c\xee\x44\x69\xd8\x61\ +\x0e\x43\x8f\xbd\xf0\x7a\x11\x18\x9d\x52\x3f\x3a\xfb\xca\x1f\xd5\ +\x91\xfb\x6f\x7a\x24\x48\x1e\x8c\x30\xa6\x4f\xf5\xda\x05\xf9\x66\ +\xb0\x12\xe5\x9b\xa1\x22\x75\x60\x15\xab\xdd\xe8\xdf\xc4\xa1\x74\ +\x86\x46\xef\x7e\xcd\xc2\x94\xd4\x3d\x15\x3e\xb1\xe6\x2f\x2a\xa7\ +\x64\x06\xde\x53\x1a\x66\x9b\xe2\xc2\xc8\xe4\x3b\x2f\x46\xa9\x40\ +\x1d\x45\xab\x9f\x3f\x23\xbc\xe0\xe6\x61\xe7\x36\x1e\x6c\x35\xd5\ +\x17\xc5\x9b\x48\x2c\xfd\x51\xdf\x6b\xea\x61\x93\xaa\x77\x2b\x89\ +\xcc\xb7\x94\x69\x47\x90\x4a\x30\x5f\x17\x27\x16\x6e\x25\xf4\x42\ +\x4f\xcb\x3a\x74\xb6\xd5\x5c\xd9\x36\xb5\xe2\x92\xa6\x2c\x3e\x59\ +\x5a\xb4\x13\x55\x0b\xf9\x98\xc9\x75\xc9\x97\xec\x4f\x33\x90\xe6\ +\xf3\x76\x89\x62\x8a\x11\xd9\xbc\x68\xe9\xf5\x2e\x3d\x7c\x96\x99\ +\xce\x5f\x3a\xf7\x41\x98\xd8\xeb\x28\x41\xd2\x0b\x2b\x1b\xf4\x66\ +\xad\xc1\x45\x49\xe7\x4e\x0f\xbf\x1a\x63\xac\x23\x11\x3f\xfa\xcd\ +\xe7\x33\x5e\xea\x92\x6e\xe5\xfa\x35\x44\xcb\x2c\x85\x22\x2f\x5e\ +\x57\x1a\x7c\x6c\x9d\xe5\x50\x3a\x7a\x4e\x9e\xd7\xee\x82\xd0\x7b\ +\x76\x4c\xf5\x06\x81\x4d\xaf\x68\x22\x14\x3f\x99\x1c\x4f\xa5\x86\ +\xba\x68\x9b\x75\xbd\xe7\xf3\x79\xf4\x22\xb9\x70\x48\x3d\xe1\xbc\ +\x9e\xbf\xc5\x66\xae\xc3\x41\x54\x82\xa9\xa5\x30\x9d\xb0\xd3\xd6\ +\x19\x0a\x15\x15\xf1\xf0\x27\x75\xea\xa4\x4c\x49\x8e\x41\x1b\x05\ +\xa9\x0f\x33\xd9\x34\x38\x69\xd4\x67\x34\x78\x05\xb1\x17\x43\xe3\ +\xb1\x1f\xa3\x51\x8a\x51\xe8\x20\x08\x8d\x6d\x2f\x8d\x93\x0d\xa2\ +\xf6\x4c\x2c\x2d\xbd\xf2\xf8\x6c\xd0\xaa\x27\x6d\xed\x86\x0e\x02\ +\xe6\x14\x87\x92\xcc\x58\xc4\xb1\x1e\x67\x9b\x0c\x73\xd9\xdf\xc6\ +\x31\xe0\xdf\xfb\x30\x9b\xd7\xc3\x6e\x1c\x14\x9d\xbe\x68\x65\x9b\ +\xb0\x5a\xc0\x49\x15\x71\xbe\x77\x7b\xcd\x2b\x8f\xf2\xf0\x4d\x3f\ +\xfd\x83\x28\x65\x0e\xaa\xb0\x4c\xd8\xd5\x21\x99\x02\x3b\xfd\x2d\ +\x8b\x0f\x79\xf2\x15\xeb\xab\x46\x2e\xe9\xe3\x4b\x8a\x80\x01\xe1\ +\xe3\xab\x85\x9b\x77\x0b\xf5\x7a\x54\xc4\x9c\xd6\xa0\xa4\x72\xfb\ +\x70\x6c\x75\xd3\xec\x32\x5c\x3d\xcd\xb1\x99\x65\x2a\x7a\x09\x19\ +\x38\x11\x52\x83\x1d\x4f\xd4\xf7\xda\x86\xc0\x1c\xbe\xf5\xe6\x89\ +\xab\x1a\x6a\xa1\x40\xe9\xb3\x1b\x07\x4f\x43\xeb\x4c\x8d\x9b\x38\ +\x89\x40\xd1\xaa\x1f\xe6\x49\x3c\x18\x41\x12\xd7\x24\x49\x13\xc1\ +\x99\x42\xed\xe4\xca\x90\x2a\xf5\xd2\x6d\x36\x63\x9f\xea\x7a\x3d\ +\x7b\x5f\x5a\x0c\xed\xf4\xda\x69\x52\x41\x40\xf4\x4f\xc6\x1a\x8f\ +\x75\x50\x09\x16\x32\x64\x91\x4e\x17\x7d\xa6\xf2\xf6\xd9\xa7\xf4\ +\xf8\xb9\x5b\xd1\x36\x64\xc9\xd4\xee\xa6\x1d\xac\xc2\xc5\xe7\xb9\ +\xdb\x86\x43\x56\x6d\x77\x6d\xce\x8c\x42\x8b\xd1\xe5\x0c\xfb\x63\ +\x42\x64\xed\x99\xad\x71\x93\x94\xfa\x07\xd3\xd9\xb3\xda\x20\xcd\ +\xb4\x8c\x43\xbb\xa2\xdb\xf1\x04\x41\xaa\xc6\x05\x4c\xf6\x7d\x28\ +\x10\x60\x00\x5e\x14\x03\x99\xd6\xf9\x10\x91\x2a\xb8\xdf\x70\x98\ +\x20\xad\xca\x4c\xac\x89\xb5\x9c\x20\x55\x97\x3b\xd5\x93\xad\xeb\ +\x00\x44\x0d\x3c\x67\xf8\x4e\xc1\x84\xb2\x55\xa3\xc6\x4e\x63\x3f\ +\x11\xb7\x48\xcd\xbb\x59\xf0\x08\x02\x20\x40\x15\x0c\x07\x1a\x6f\ +\x19\x34\xf1\xe1\x28\x1b\xf3\xa3\x76\x4f\xb3\x7a\x82\xd4\xcf\xc9\ +\x2a\x25\x52\xa5\x45\x25\x46\xae\xeb\xdd\x92\xee\xc5\x89\x4f\x9d\ +\xc3\xc7\x0d\x8d\xa4\xb2\x37\x8f\x26\xb4\x3f\xdb\x2b\xf2\x53\x13\ +\xd6\x46\x24\xe0\xfd\x4a\x9e\xf2\xe8\x47\xc0\x89\xb9\x83\x30\xf5\ +\x0e\xa7\x47\x11\xa8\xb1\xd4\x00\x6a\x56\x27\xd5\xc0\x69\x96\x0b\ +\xec\x0b\x85\x13\x5a\xdb\xfa\x5c\x0a\x8d\xfe\xfd\xd1\xbb\x5c\x27\ +\xf3\x47\x0d\xbc\x3f\x77\xbc\xad\xc6\xd3\x65\xd1\xaf\x6f\x42\xe8\ +\x72\xa4\x3d\xb1\x0b\x36\x2f\xd7\xc7\x2f\x37\x8f\x0f\xc1\x3f\x7c\ +\xf2\xca\x8e\x1e\xae\x93\x64\x5e\xd0\x44\x4e\xa5\x33\xd4\x4c\xa8\ +\xbc\xfc\xe4\x93\xa2\x7f\xb4\xb8\xa3\x73\xc2\xf8\x42\x72\xdc\xe6\ +\x42\xd3\xa9\xcf\xee\x8b\x3a\xa9\x01\x4c\x67\x7f\x4b\xc3\x28\x23\ +\x9e\xaa\x12\x7a\x83\xf2\x0d\xba\x74\x8a\x42\x93\xb2\x8f\xec\xd4\ +\xf9\xca\x8f\x1e\x3f\x7e\xed\xe5\xc5\xe4\x9e\xc0\x79\x0a\x96\x0c\ +\x2b\x13\xe9\xd1\x82\xa3\xa2\xf1\x64\x14\x02\x45\x89\x88\x3a\xa2\ +\x90\x64\xb6\x07\x1d\x48\xf5\xd1\x9f\x24\xf9\x62\xab\x29\xd1\xdf\ +\xfc\xed\x87\x2f\xba\x72\x02\x53\x73\xb5\x9e\x43\xd6\x05\x4a\x09\ +\x98\x69\xce\xa8\xc5\xf5\x70\xf5\x5e\x14\xe0\xca\xbb\x9a\xa1\xbe\ +\xf8\xe1\x3f\xf8\xf1\xd3\xff\x7d\xf4\x6f\x07\xad\x40\xc6\xb9\x9e\ +\x5f\x16\xaa\x06\xac\x28\x3c\x27\x27\x36\x2e\x0a\x86\xa1\xff\x9d\ +\x10\x47\x9f\xff\x96\xd8\x19\x19\xfa\x5a\xc7\x8c\xf9\xe4\x6d\xf9\ +\xf5\x00\x2d\x28\xc6\x05\x6e\x52\xe5\xee\x84\x0e\xfc\xed\x27\x68\ +\x52\x21\xb7\xeb\x82\x86\x40\x24\x12\xfb\xdb\x77\xfc\xe5\xf9\x8e\ +\xe8\x79\x5c\x44\xa9\xcb\xfd\x57\x3b\xa1\xef\xbf\x5a\xcd\x75\x46\ +\x02\xdf\xff\x51\x78\xf8\x3c\x7a\x9c\xbc\x0f\xb3\xa5\xde\x3c\x5f\ +\xd7\xd1\xbf\xeb\x74\xfc\xc2\x73\x1d\xbb\x28\xa0\x92\xe9\x79\x72\ +\xc6\xb7\x79\x8a\x09\xd8\xb6\x0d\xac\x66\xf1\x79\x49\x41\x27\x51\ +\x35\xd8\x89\x8f\xd5\x5c\x76\x49\x5b\x7e\x0c\x90\xec\x8c\x53\xfa\ +\xbe\x2b\xc5\x4c\x6b\x90\xa5\x37\xef\xde\x7b\xf4\xdd\x87\xb7\xb5\ +\x4b\x8c\x7e\x5e\x8c\x9a\xa0\x9f\xf6\x64\x9a\xa4\x0f\xbc\x92\xb6\ +\x6f\xc8\xf5\x70\x39\x56\x70\x3a\xba\xde\x4f\xe6\x81\x0d\x7d\xfd\ +\x9d\x1f\xbb\xba\xdc\x36\xb0\xe6\x98\x9e\x25\xc6\x91\x7a\x2a\xba\ +\x35\x8c\xe4\xfe\xab\x73\x9f\x82\x9b\x87\xbd\x37\x42\xcf\xba\xdf\ +\x11\xe3\x4f\xe2\x68\x76\xf2\x0e\x86\x3d\x5a\x0e\x36\x80\x4e\xe4\ +\xf0\x2f\x6d\xa7\xed\xf9\xa5\xb1\xab\xfd\x74\xfd\x3c\xc7\xe9\x1b\ +\x75\x13\x19\xa9\x1b\x94\xca\xe7\xcf\xb8\xa4\x77\x88\x9b\x27\x90\ +\x54\x3d\x02\x9e\xad\xf3\xa3\x8c\x99\x9c\x58\x11\xa9\x55\x77\x9a\ +\x0d\x3c\xb2\x73\x78\x9a\x94\xca\xcb\x11\x93\xf2\xb9\x67\x2c\xf9\ +\x17\xae\xbb\xce\xdf\x91\xd9\xa9\x14\xa9\x22\x16\x4c\x35\x05\x55\ +\x97\xc1\x6d\x7f\xbd\x45\x4e\xd8\x10\xac\xbf\xa6\x2b\xd0\x59\xeb\ +\xc4\xca\x73\xfa\xec\x59\x0d\xbd\x35\xeb\xe0\xa3\xbd\x17\xa9\x4e\ +\x27\x2b\xb6\x64\x29\xfd\x51\x51\x3a\x1b\xb1\x45\xb8\xec\xdb\x57\ +\x9d\xa3\x71\xc0\xbe\x43\x40\x7e\xfb\x24\x9d\x5f\x70\x54\x6b\x82\ +\x29\xf3\xec\xcb\x24\x62\x81\x4f\x36\x14\xb9\x71\xff\xb3\x70\x39\ +\x5d\x52\xb9\xcd\xbf\xef\x26\xe8\xf1\x2f\x37\x56\xda\x82\x01\xad\ +\x67\x7a\x72\xff\xfc\xda\xc8\x04\x8e\x52\xe9\x3d\x23\x7d\x5f\x86\ +\xcb\x2d\x2a\x7b\xe7\xaa\xb3\xd4\xe5\xfe\x4d\x21\xc1\xfd\x63\x52\ +\x30\x62\xa4\x3e\xf9\xd5\xe3\xe7\xee\xfd\xf9\xf2\xec\x40\x77\x3a\ +\xd9\xe5\x5a\x4e\x36\x88\xa5\xd5\x76\x26\x90\x1a\x15\x29\x82\x26\ +\xa9\xfc\x37\x3e\xb7\x39\x27\x9f\xba\xb3\x4b\x92\x3c\xe9\xf0\xc9\ +\xd7\x67\x42\x75\xfa\x50\xf9\x7e\xf0\xd9\xe5\xbb\x55\x8e\x30\xa2\ +\x5d\x83\x86\x69\x6a\x50\x4e\xdb\x35\x7d\xf0\x68\xc3\xf0\xbe\x8a\ +\x8e\xde\xd9\xcf\xeb\xbb\x3c\xae\x57\x41\xcf\x16\xf9\xd1\xa1\x71\ +\x62\xc7\x5b\x6e\x2c\x61\x58\x1f\xb2\xb9\x54\x4e\xda\x6d\x78\xff\ +\x6c\xd6\x3f\xfe\xd1\xeb\x5b\xb9\x72\xd7\x57\x06\xde\xfd\xfe\x55\ +\xc0\xc3\x87\x19\xad\xb2\x4f\xb0\x4a\x44\x6e\xcf\xb4\xb6\xd0\x9f\ +\x83\x2b\xaa\xa4\x78\xeb\xdb\x10\xde\xba\x9a\xbb\xca\x0f\xd2\xf4\ +\x9d\x8e\x5d\x7b\x5b\x10\xde\x05\x9a\x4a\x91\x1f\x25\x84\x56\x74\ +\xf6\x98\xc3\x4d\x3b\xf6\x5d\xea\x57\x31\x75\x3b\xfe\xb7\x77\x42\ +\x8f\x4e\xa6\x48\xfd\x57\x87\xf4\x3f\x9e\x69\xce\x33\x62\x7a\xa1\ +\x0e\x5a\x83\x50\xce\x9e\x2c\x2b\x0a\x62\x7e\xf4\x91\xa5\x0e\x01\ +\x71\xbe\x96\xaf\x6f\xe6\x5e\xc6\xde\x95\xfd\xd9\x14\xfc\xf5\xba\ +\x53\x67\xe1\x1d\x2a\x23\xbe\xc6\x1c\x60\x15\xd1\xdc\xcf\x97\x12\ +\x25\xe4\x1d\xf3\x2a\x63\x53\xa2\x7e\xf4\x61\x8d\xd4\x06\xa6\x2b\ +\xf8\x34\x27\xf5\xef\xe7\x45\xc5\x57\xb6\xbf\xbe\x68\x28\xe1\x15\ +\xe5\x1d\xe5\x16\x0c\xc2\xd4\xe4\xfd\xf5\xce\x50\x1d\x7d\x5b\xe5\ +\x93\x7e\xed\x5a\x25\x46\x0f\x95\xcf\x8b\xc1\x7e\x7e\x5b\x10\xa4\ +\x16\x86\x64\xe7\xbe\x94\xfa\xec\x95\xd8\xfe\x7a\xd1\x28\x6a\xeb\ +\xfd\xf5\x59\xdb\x0b\x4f\xa7\x9b\xfb\x7b\x2f\x4d\x39\x41\xda\xf7\ +\x59\xde\xbd\x3e\x3a\xa8\x0a\xfd\xe6\x90\x1f\xad\x11\x5d\xad\xb4\ +\xb8\xed\xb5\x65\x21\xbc\xa5\x38\x94\xfd\x59\x0e\x3a\xfc\x47\xbf\ +\xa4\xcb\xea\x0a\xff\xe9\xde\x89\x0f\x5c\xb7\x8d\xcc\x03\xda\x32\ +\x55\xb1\xf7\x4b\x4a\x24\x42\x7f\x72\x60\x8f\x26\x42\xee\xaf\x0f\ +\xcd\xd8\x01\xa1\x46\x97\x74\xd9\x59\xd0\x57\xcf\xdb\x3e\xcc\x27\ +\x59\x08\xa8\x52\xcf\xdf\x88\x4a\x0c\x0d\x14\x30\x4a\xd8\x5f\x4f\ +\xb8\xc4\xad\xd9\xf5\x67\x7d\x33\xe9\xbe\x17\xff\xd5\x4d\x8b\xca\ +\x85\xaa\x0a\x38\x2c\x2f\x4b\x98\x88\xf4\x95\xb1\xde\x9c\xa5\xd8\ +\x5f\x9f\xf7\x19\x7b\x6b\x73\xfb\x62\xdf\xd4\xb3\xbb\xa4\xcb\xfd\ +\x9f\xbe\x72\x3d\x8b\xc8\x43\x17\x7d\xd8\xa4\x7a\xe6\x0e\xf1\x92\ +\x1f\x3d\x19\x8a\xfd\xf5\xc0\xa0\x54\x26\xf7\xcb\x7d\x63\xd4\x24\ +\x2c\x25\x4f\xe3\x9e\x8e\x9b\x3f\xea\xd0\xd8\x34\xa0\xb5\x7a\xc2\ +\x25\x1d\x2e\x62\x8c\x66\x74\x32\xf3\x34\x65\x85\xbf\xa1\x67\xbd\ +\xdc\xf7\xb1\x7d\xe3\x13\x93\xc8\x0c\xb3\x96\xf2\x9b\xe5\x90\x70\ +\xc2\x1e\x57\xd4\x38\x0a\xa0\x0a\x27\x96\x52\x2f\x65\xaf\x37\xe2\ +\x7a\x81\x7d\xb5\x17\xde\xbb\x39\x4f\xec\x26\x32\xf7\x7e\x39\x14\ +\x08\x10\xfe\xad\x27\x1b\xc8\x54\x91\xea\xd9\x66\xdb\x5f\xcf\xb8\ +\xde\x37\xc5\x3e\xe8\xa0\xbf\x1f\x7c\x78\xb2\x46\x52\x2f\x37\x78\ +\x1c\xd2\xcf\x7e\x21\xe0\x74\x51\xaf\xd7\x4a\x99\xb2\x5e\xaf\xdf\ +\x96\xf2\xa3\x64\xa8\x88\xdc\x08\x5d\x9e\xee\xdd\xbd\xfb\x9e\x87\ +\x77\xf6\x33\x2d\x87\x0b\x0b\x99\x95\x2e\xa1\x83\x57\x21\xa8\xd1\ +\xbb\x77\x79\x2a\xbb\xde\x9a\x2d\x8d\xcc\xf4\x1a\xee\xc7\x1b\x1f\ +\x79\xe5\xa5\xab\x93\xcd\xb0\xe6\xda\x9d\x09\x13\x8c\x68\xbc\xa8\ +\xe0\x28\x53\x25\xe8\x7d\x81\x9f\x97\x5b\xf3\xe6\xec\x3a\x6f\x95\ +\xdb\x69\xb6\x3e\x67\x3e\x5a\x7b\x84\xe6\xf6\xac\xed\x19\xd7\x57\ +\x68\x4f\xe8\x78\xd3\xd1\x63\x44\x2c\x59\xfb\xb8\xc0\x5a\xe5\x70\ +\xcc\x09\x6d\x17\x94\xaa\x09\xa1\x1d\xd4\x13\xbd\xd1\xf3\x0b\xf5\ +\xfa\xc9\xea\xf5\xc3\xb8\x49\x97\x74\xe9\x6f\x2b\x80\x4b\x91\xaa\ +\x06\x2a\x3b\xdf\xdf\x1e\xdc\xb1\x7f\x94\x8d\xae\x27\x48\x3c\x56\ +\xdf\x8c\xb3\xf8\x7a\xed\xa2\x7a\x81\x50\x12\xa4\xc4\x9b\xb1\xad\ +\x51\x0b\xde\x3d\xfa\x47\x11\xd7\xbb\x22\xd5\x9b\x30\x10\xaa\xd1\ +\xbb\xcc\x03\xaf\x42\xca\x29\xf6\x93\x8d\xc8\x5c\xa4\x97\x3a\x8f\ +\x2b\xe4\x61\xde\x51\x1f\x0a\x4d\x34\x8a\xaf\x7c\x9a\xb3\x73\x10\ +\xd3\x37\x6c\xd8\xef\xa6\x3f\xe3\x64\x02\x94\x0a\x53\x8c\xbb\x7a\ +\xfd\x8d\x7a\xf3\x28\x4e\xf2\x45\x3a\xd1\x28\x34\x58\x06\xdf\xc4\ +\x29\x7b\xf8\x19\xef\x29\xc6\x4c\x89\x60\xb4\xe1\x47\xc7\x84\x92\ +\xcf\x04\xae\x11\xeb\x1b\x04\x81\x9b\x67\x4e\x49\xd1\x3f\x2a\x86\ +\xb6\x90\x20\x65\x87\xd6\x52\xb0\x74\x1c\x86\x9e\x50\xbd\x71\x45\ +\x0f\xa7\xc4\x4d\xe9\xe4\x0e\x7e\x1e\x10\xd2\x4b\xd8\xfd\xfd\xe3\ +\x34\x9a\x30\xd9\xe1\x8f\xd3\x8e\xa0\x53\x1c\x2d\xea\xf5\x43\xa7\ +\x44\x31\x9d\xcf\xd7\x4f\xec\x1f\x8d\xa8\x64\xae\x47\xe3\x40\x4b\ +\x48\x8b\x2f\x35\x92\xf3\x2e\x5c\x3e\x0d\xc1\x89\x52\xc0\x4c\x4c\ +\x32\xd9\x4e\xf0\xb4\x13\x9a\x67\xc4\x78\xf4\xe5\x8c\x98\x0e\xbe\ +\x1c\xc1\x18\x91\x59\x78\xa4\x56\x06\xf7\xfd\xf5\x6c\xcc\x14\xa9\ +\x00\x9c\xde\xcd\x88\x1d\x46\xb4\xa6\x81\xa6\x1a\x5a\xc1\x13\x79\ +\x9c\x67\x9a\xbc\x56\x1b\x00\xc9\x26\x00\x2b\x44\xa9\x4f\x11\x93\ +\x84\x88\x50\xa9\xc4\x72\x05\x3f\xb1\xc4\x3c\xdf\xd4\xc2\x2e\xb9\ +\x63\x92\x39\x2a\xe2\xd4\x51\x26\xb6\x8a\xd6\x74\x45\x87\x20\x84\ +\x2e\xf8\xcf\x84\xa5\x43\xa4\x27\x24\x20\x4c\x8a\xe6\x56\xf7\x8f\ +\xb6\x15\xe3\x02\xd4\xa2\xba\xa8\x98\x62\x24\x4f\x7d\xb1\x29\x45\ +\x89\x71\x7d\x8b\x80\x9e\x04\xcd\x0b\xe0\xf2\xba\x02\x9c\x0a\x15\ +\x1e\xba\x1c\xe7\x71\x11\x3c\x4e\x5f\x71\x55\x6c\x76\x44\xeb\xdd\ +\x22\x2d\xc3\x29\x0d\x31\x33\xc3\xdc\x95\xaa\x77\xf4\x47\x47\x46\ +\xd4\xef\x67\x51\xb9\xf3\xb3\xa7\x61\xd2\x27\xb1\xd5\xef\xa8\x53\ +\xba\xa4\xaf\x9c\x27\xb1\x14\xfe\x68\x36\x9f\x85\x22\x65\x92\x0c\ +\x91\x08\x2c\x53\xc2\xcd\xf3\x3b\x9a\x06\x6d\xd9\x3f\xba\xec\xfb\ +\xb1\x13\x0a\xa1\x42\x26\xf8\xa3\xe5\xaa\x58\x1a\x26\x23\x15\xfe\ +\x68\x86\x4e\x6b\x2d\x61\x2b\x2c\xa1\x7f\xd4\xf9\xe9\x98\x64\x19\ +\xfe\x45\x49\x12\xfa\xa3\x59\x3b\x5d\x40\x3d\x39\xb1\x28\x8b\x50\ +\x43\x21\x57\x82\xfe\x51\x71\xd6\xb9\x19\x7d\xbc\x94\x1f\x5d\xea\ +\xfe\xd1\x0b\xa8\xa7\x2a\xa8\xd7\xf1\xc7\x00\x14\xf5\x30\x59\xfb\ +\x0c\xfe\xe1\xa3\xe0\xfa\xb8\xd8\x67\x8c\x37\x50\xc9\xfc\x28\xd1\ +\x32\x59\xc0\x01\x3f\x89\xea\x49\x50\x32\xfd\x09\x3a\x8d\x8f\x1b\ +\x27\xce\xdc\xb9\x09\xc5\xe3\xf3\xab\x1c\x06\x67\x18\xea\xb8\x79\ +\xfa\x62\x67\xc3\x1a\x9e\x86\x56\xb2\x43\x46\x4a\xa5\x9f\x57\x3f\ +\x5e\x6a\xe0\xba\x0e\x76\x67\x05\xdc\x3c\x22\x78\x63\x81\x5c\x08\ +\x41\x45\xa5\xda\x34\xf4\x41\xc8\x4c\x05\x5a\x17\x6d\xe9\x98\x88\ +\x64\x8e\xb2\xc9\xbf\x07\x47\x8d\x54\x6a\xa7\xc3\x12\xd6\x70\x16\ +\x3e\x7e\xf1\x70\xa3\x2d\x87\x03\x79\x47\xcd\x86\x4e\xe1\x9b\x39\ +\xba\xed\x0c\x15\x4b\x39\xd6\x50\x68\x7b\xf0\x14\x63\x42\x99\x4e\ +\x68\x7c\xb1\x52\x62\xef\x74\x22\x8b\xbb\x8a\x52\x55\x6e\x30\xdd\ +\xb0\x1b\x0c\x1d\xfa\xce\xd5\xd1\x0f\x4c\x93\x28\x06\xad\x31\x49\ +\x36\x8f\x51\x9c\x5d\x94\x56\xd8\x50\x15\x16\xb1\xa3\xc7\x98\x09\ +\x93\xf4\xac\xc0\xfd\x3c\x7d\x29\x51\x8e\x83\x77\x2a\x9d\xa3\xb6\ +\xf4\x88\xa0\x1a\xfe\xa1\xbe\x2f\x39\xfa\x5f\xc1\x2a\xd8\xa0\xc5\ +\x51\x93\x08\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x0e\ +\x07\x04\x9f\x87\ +\x00\x62\ +\x00\x61\x00\x63\x00\x6b\x00\x67\x00\x72\x00\x6f\x00\x75\x00\x6e\x00\x64\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0e\ +\x09\xbd\x6f\x27\ +\x00\x77\ +\x00\x61\x00\x74\x00\x65\x00\x72\x00\x6d\x00\x61\x00\x72\x00\x6b\x00\x31\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0a\ +\x04\xc8\x47\xe7\ +\x00\x62\ +\x00\x61\x00\x6e\x00\x6e\x00\x65\x00\x72\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x09\ +\x0e\x26\xb1\xe7\ +\x00\x6c\ +\x00\x6f\x00\x67\x00\x6f\x00\x33\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x09\ +\x0e\x25\xb1\xe7\ +\x00\x6c\ +\x00\x6f\x00\x67\x00\x6f\x00\x32\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x09\ +\x0e\x24\xb1\xe7\ +\x00\x6c\ +\x00\x6f\x00\x67\x00\x6f\x00\x31\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0e\ +\x09\xbc\x6f\x27\ +\x00\x77\ +\x00\x61\x00\x74\x00\x65\x00\x72\x00\x6d\x00\x61\x00\x72\x00\x6b\x00\x32\x00\x2e\x00\x70\x00\x6e\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x07\x00\x00\x00\x02\ +\x00\x00\x00\x56\x00\x00\x00\x00\x00\x01\x00\x00\x90\xee\ +\x00\x00\x00\x12\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x00\xb8\x00\x00\x00\x00\x00\x01\x00\x00\xb3\x62\ +\x00\x00\x00\x34\x00\x00\x00\x00\x00\x01\x00\x00\x58\x36\ +\x00\x00\x00\xa0\x00\x00\x00\x00\x00\x01\x00\x00\xad\x0b\ +\x00\x00\x00\x88\x00\x00\x00\x00\x00\x01\x00\x00\xa6\xb4\ +\x00\x00\x00\x70\x00\x00\x00\x00\x00\x01\x00\x00\xa0\x5d\ +" + +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() diff --git a/examples/dialogs/classwizard/images/background.png b/examples/dialogs/classwizard/images/background.png new file mode 100644 index 0000000000000000000000000000000000000000..44c7badb8568ff756804d2a5a651f8fff9961a1f GIT binary patch literal 22578 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 FV1kZVGdKVM literal 0 HcmV?d00001 diff --git a/examples/dialogs/classwizard/images/logo1.png b/examples/dialogs/classwizard/images/logo1.png new file mode 100644 index 0000000000000000000000000000000000000000..f9b594aafcd6f944f6d950aeaab01017ddaef68a GIT binary patch literal 1619 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 literal 0 HcmV?d00001 diff --git a/examples/dialogs/classwizard/images/logo3.png b/examples/dialogs/classwizard/images/logo3.png new file mode 100644 index 0000000000000000000000000000000000000000..9fd3ea23589d5cd1e36995fb7930fbb65537e2c9 GIT binary patch literal 1619 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

    ~pmFwck7jhkKr6uo?q0+;sEMYfP3VosyR1 zN!N8aY=%7f<4d+SzMlU2gatX6DP)AZRPfX7L|XJH_=ZYD4Z#F#q|s}v{MY`)U?nIi zMo+c1?73mZO1ikI#z612PDvWpgTCD+0OwspAYtsN;Oz1rw@jb86B{BO6}f-trh6v8 za`k$|h#BqLIyc~6i%RMu(lb~|VYxT7=CAjbD?Wd|oA-Rj(1m&%KKR*v{Z3Kp0;$WK zATZTX#gw%810B8m{z;2&6O}RcAkx`}?bg^PN@}3)1to1&hIqLjv3YMCwlYVC$^O91 zE-I*_WCui?)N@3Nw06=D5pI8c*Wf*G{viN(#QOYCB$d=q`P^ba2Zl2|yPpS>WvrgO z7n<%QYYI+f`333d1)d|heb{g1mW~7A&se0#gOY;T=T$igp47nn{9PjrbN-HDhYPsj z3~xk>2;<(oRw#D40I0pz9?dxK9?s-QUxO-v1xiX<+3N~m_2wJCPJfN*q18Bl)6M{< zl&Ksy*3(|yczAzU887sK0iw&#dDHE#pgHWwUqWyPNsN}h+I}6@1DqcvE?)S3)X#_Z zo%ZhAwmYPj`{w92K30J_8kne$G@wP~5k&e;pvb z>5TgcCUnXD%MZ5fFfOQ3qrdk`B_#C>f7z2FOJf~vdC9W2{4gjv1%P&>CHI@4vjFtR zDs#Bo!o121f3Na97?esRM_NQpCy1pJDfguNiN?pHW~w~6!5N93jsRoo)RtZpoKufK zaKvU){+!WmnVEmdpX(4EMXYdj4;_>gDzR68eAkL~?h!6L9%)hi=dPY>efb#0Li0O@ zdEIOzYva+MurJ5WA5CxHj6Jrl2jWA=$&I#^PaTrhq8}3O8D50^wi;b$T?p1yI0(l=c+u)!naflSJTH=<=~ZODPQCL zXfkJNL`rHs>730dN0)%)a}Ol)l~IbvmrW+NdjId=#LbR@J*7u0L<4^W>=WB$ZJO<; zjx$AK*C(1X_N8o2k=>7 zo++{=z1^T{WY2RzGFr2JI72v##DKpFr?>}gneEU=z2yASLyr1N>t}AV`_TxhT00g7 z*Z1=1D4R4oqHY35LlUGwzwZ1|*kp?P@X13lOLKeObmY2CCdcT@-{<@pO-&Yi=+YuahT<@>X z8)XKwmJt=bm|^9RHGv3gtnpjOK4?uakKIdRou!1R}a-@b)B4grlN*f(;c%0Yf?G9i2^du0|qY z-T(j*d79%T#!SArJ~ld1jkpEt=Go-6DsGHE%N!_baKlbg<`|&R*O9h0I7+Wni zrOeZWYUZw^zRb3V5&66Xq6B7&kMWb9XT#0AlwB%1Gn)nk127d5dh$e#n{_6iAWAy+ z_(S!So@C`O^CpDWk6)8_+8i0OqfMvJ5k~z*h9U~pHwSk&)w&Lee4M${qnoKWEoWN{ zol5+urA<@8OcHN}}w z{rE_W8po%ccJc@m1SYn+#fPy+j7L0t*?IGwFeqdg-fhY-B?JMHgTJn6EZFX8qLO3l zH6H#YhQXz!vY~H29GF*gW%Pbys1ZrWnE((XHR;ova^scI6)qJsVP|BsrDst1AqJ(F zhh(1g6aZD=It}sg^PCX23AGk)X(RfuQurFY!jp3NEQ#4QrDZC*2)R{c(l-iH_DC1U zds>C}1mkp(Z9dO_Xg_bzn`c@SrMrZoG)=gp`S_O#?@6*GV#l@6u^v?#7c~)Y)o>aU z+`3@r4Q z@VKlSwcLBd5+h;zfj?Q`;m>nfvW*lsVJu)d z?ClRS`<$=$DkE9yS~OBw15*JeH;|g7o~tE9V*Fc8mQvG`N6b8UMol-WF0*P2p*OKt zTBp%AiKBk{z#vR1M`TA)4zJOP+;wJfCut9WKb@nNAzgf4JuW+27r@MSB8fJR1}zX; zL?hl?!2L`iR))2Aq37s2inf#}eW;#J^>T@Qqrrd*@`6bdB zB4v7eV{GI^A?;|Z@$i$zCj>;4c~--Ajjq7WJMq*VA~ywglTO}Zr_oYAr>~nTdiQ?p zAXj>{-hIQ|)6vu@A!=$YoilNaJc9HAR<%mdPB_sOa+@rHTT2`{Kmv z+mfxnu$oA*)s}lriHA?Y_uOMN@}g2P6OUal=JOJ@vF9zdJvo)*ln&HrVC@lcJ>dN& zWFYjim63EwqorSv#i!^S9zMkh!lbV|B}$P+r^GqBI)*c0ys^z1aXqAoBu0>2qNTQ! z(h-r+rM_{UTbi7sH1oWlgiK7`sIP-A^SZW2jqCN6jOAdsa;psH9N+VRe~! z_|=x+{s$*726tmCnrb3kX>0N{+_nz4gw8!f64|9F_uOaPf+%JE#LzBnxYREa5QM@9 zrLye}yR0X&bkT1RdRA>s>9c$T6I%JB`h!_=G`gG^_e5?C@#-eRNG-Mr^)H?w`e<2S zZox8Hh0)$CYM~7)8_b598HIWRGr5ZqZLTKunXS!SzG=>#533#gC^Zh#MB}M9^LZS* zN)V*uYOMlb?W;jo){zB(VW5pID7yxhg5R^xMD@l@(YBFyjNc5icamXLX_B6qVHpPmb zWynnCp7JF%GE0BdlMjsUL}}Pz4nvQ<@Olv#ol-wK`^q2Hk^66YBuE~NFs4uS+6DP$ zuoC5)p(1r)6|3Fo-^8JGhDPsx&BBz_JrzE&<}WIzWCq?-8fKf~!pP)1FGi_A9Yw33 zKO?;0=3(bH9&9z$7sZ=MEd5d6YwBT>s&^}i%(s+jN03S|Ul%79ZYA_WPs=)Vw$)tO zHnrlCrYt^LTC@{Y3;CGIb;+0PPcx9_^LB}1iV@koXzBGXJ$#m#&R;tBL73RZD9bjzJp*sSh*RG&pJ0XEb;Pu@^(*u^*#Ric#nw2#swojgt+c_Dn1-z4G{M z(5feG?S>8l<`jpL%vi*+9%q{jbJ^d+|Id(A74 z^6*VR{eviF4yv$B*wrDK0z3UJiw}A773-@;F6rY-ihu#(@r+E&9RwfDtZYSI1y5V9Z%Hv+J?X!zV+sbs~T#dK!5MTga6a$&o`4EvRxZiM?Ag#(wtckUpAXS$;)swC3 z07MNuXZTLRgtAqm#!h2D5w}RqyIJrE0w6#Y3!&mc2Bc)n#>#feXy!^aJcq_Q`UCbU1>EAmql)ZLer_w?u$C90ZeCqOT#E5 zo~jahgYpf!bc#ZgvXAW4`O1$TKYs1y#pIsAc?y;cD--F_f}^7GWE28LiHJI)kYu(8 z9Z2=jpCtKWt0~dn{OyM?x^e#szLt8T%Mp|Exo0f- z7p}X`-;vp=6saN>Of>~nm%(j+y+uyg5UjtZE6`c%#L9E}>{$)HHS6G`y%(uYCo8sO zDg9AVIvcS?xa`|kouhHUzC%EM`y`!Ta8zr8Df8^hBw~S2HWayW|Fdv8T~fKtzwajK z@h>-4+JXVCXL@q~{MyI_j#BA8BYj_n%PlH<=c=>R<^D|}!Tn=WFk+-W`PJj+?)~}l z>_B%q+2vYJHi)Iwb|#P-6)A!ysr)xSw>c-Dy0c4?Jn8Vs*Jna?`cV0P@Y&_NRgN&C zU4w>cYEVwwHGS}C!|=X}j^5eN>$^OzS3%Df`O%?qV#ixJN8}bS21-v{tXei+oC-qI;aZ$=8zw)5nZjcxb3xNA-ttH zl>J!_I{Zh!q|53G|LNX|4_vp6%mdmoRk8O=N+d#ma$t`pLhi2*&Da5An~L)lG}ag{lfTEH6u#i1d}Q-khb_ zU!V6Gduwz1V&BxWyQItgpT2TEi^xM4eb}UW<___aA3Yh0{q?}0R3`V!ePh%lEG19l zo{pP8>d@FUptX9!B^@qejAnE)^E73JzoBQn-1o74;}es}46~NedTuh&YMvR<#>mhz)ysEFJMU7qgUz5AYrclI+ahYJgtl`f%!S0Sj; zyLWjiyWW~Djm-2K?#CM+dF7?6lg+T^+MNj#jA*>5;3!ii=zW2oms|7Z>^g6i+iA8w zXFghcgy#0F?HSisXiw;P)6ru@ELr=wz*^;S%n5B5l&T4#9n=%O(en%S`pN3`!?;P8 zbm?y^fJ>381}Zz>-yYntf0T``CrCV2-;A^PdhMcmflv~p#GA3LQ48KZ`bQDhyCT(_ zFc7NIyUYWxLdq%jla0t+q?bC6E97C`Q6CCTG>Wf$nzM5d(>H9`@1{TFWCD~5Q;fTM z{f&C_C{FT4I?*UJSO(w3DSP-C?l*}tn`cf*(LXANwvZrY zht^WCbR34BP`zEsT69uU$?*!}(EG@3Bk;g8dfpi>+z>h(jXL@}Mu*H7#p zji_Xv=f?V#CY`OjF=9-9KjfoS$L#Y2KW8- zY|Ip?0G!^rh%p!TEP=}oM)Q6RvQ4xCIBl$sZSA;gose7#Bv2cvBW&z)WR;g zW0E;4;?z+lwu;ttMTa1SF8I%cr9-4ABp^(R=2rKQwiV+7)S|kmm|`SPeX%J;iE(|4 zfSv@+3*hp)0-OpJ9=aUoaS=RDUvX7zc0}vlA}zxy4KXvr+?A?#^hZZV)bD3ex%0E9 zVbUkD)$gcNx}>k1C$SX%Xf~gPB4v^ckq9hP!p-wLng(szKf3Juu@efRLMHg5<*Ha3 zCL6m00{zXX=`lDGpT|hlKu_%jBLm^j!{!ww(xfy-DlpkH{ z{?QAlrz)t|@y7rZ^)Olc4F2Jx;QF}OXN)&c$^0nMGFiX@KZ)u|P%`}qI*pGTC(hit z3B}{{s~iSr80xrr`eJ9p8lHw$vO`8nrJq+nUTWaF4t8e++&m(9V}V={XBgsQI3OmDxIUY^oXDu{-M4vIr?A0D%haKQIiM&0000 + + images/config.png + images/query.png + images/update.png + + diff --git a/examples/dialogs/configdialog/configdialog_rc.py b/examples/dialogs/configdialog/configdialog_rc.py new file mode 100644 index 0000000..019024b --- /dev/null +++ b/examples/dialogs/configdialog/configdialog_rc.py @@ -0,0 +1,1157 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sat May 4 15:15:09 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x1b\x93\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x60\x00\x00\x00\x54\x08\x02\x00\x00\x00\xf2\x11\xa5\xd4\ +\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd\x7e\xfc\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd5\x03\ +\x03\x0f\x27\x36\xc5\x11\x92\xc3\x00\x00\x00\x06\x62\x4b\x47\x44\ +\x00\xff\x00\xff\x00\xff\xa0\xbd\xa7\x93\x00\x00\x1b\x20\x49\x44\ +\x41\x54\x78\xda\xed\x5c\x77\x90\x1d\x45\x7a\xef\x9e\x7d\x9b\x77\ +\x25\xad\x24\x24\x84\x84\x04\x16\xc8\x46\x27\x8b\x24\x1d\x20\x71\ +\x08\xec\x13\xb1\x10\xa7\x33\x20\xce\x1c\xa6\x08\x55\xa4\x32\x45\ +\xce\xc9\x84\x3a\x52\x99\x60\xe0\x70\x51\x47\xb0\xe0\x4c\x2c\x63\ +\x62\x95\x39\x71\x87\x41\x75\x60\x81\xc8\x06\xc3\x01\x26\x0a\x09\ +\xa5\xd5\xe6\xdd\xf7\xa6\xfd\x9b\xfe\xba\xbf\xfe\xa6\x67\xde\xc2\ +\x7f\xe7\xb2\x69\xa8\xa7\x79\xbd\xf3\x66\xba\x7f\xfd\xe5\xef\xeb\ +\xd6\x69\x9a\xaa\xef\x5b\xfd\x96\x68\xad\x8d\x31\xf4\x89\x86\x2e\ +\xbe\xa0\xc6\x9d\xfc\x59\xaf\x73\x94\xeb\xe2\xd3\x8a\xbf\x2d\x3e\ +\x59\x76\x16\xdf\x28\x1f\x55\x6c\xd1\x0f\xa3\x47\x95\x8e\xad\xb4\ +\x39\x5c\x18\xa6\xef\x49\x86\x1b\x78\x2b\x49\x92\x0a\x81\x0a\x68\ +\x6a\xb5\x5a\x5f\x5f\x5f\xb5\x5a\x23\x6c\x19\x2c\xfb\x57\x7c\x2a\ +\xfb\x69\xb4\xd2\xfc\x93\x22\xb2\xf5\xae\xe5\x02\xd2\x4f\xe8\x15\ +\xc5\x7b\x4a\x57\x2b\xba\x3f\xfa\x2c\x5f\x79\xad\xe5\x0f\x8b\x74\ +\x3d\x0a\x35\x34\x36\x56\x3a\x3a\x3a\xe8\xe1\x15\x26\xb9\x17\x5e\ +\x78\xe1\xc4\x13\x8f\x9f\x34\x71\xfc\x48\xb5\xaa\xed\x03\xbe\x3b\ +\xd8\xee\x65\xf6\xd5\x0e\xc2\xef\xf4\x33\xfb\x93\x3a\x2f\xd2\xdf\ +\xf6\xca\x6c\xd1\x94\x76\x0f\x09\x4f\x8b\x16\x44\x7d\xd7\xd1\x78\ +\x9c\x75\xa2\xbf\xf9\x66\xe3\x8a\x15\xcf\x6f\xbf\xfd\xf6\x19\x40\ +\x0c\xea\xda\x75\x1b\xe6\xfc\xe9\xb4\xfb\xee\xba\x7a\xdd\x37\x9b\ +\x1a\x2a\x15\xed\xa7\x9d\x01\xe9\x31\x70\x40\x64\xa3\xca\x2e\x0d\ +\x5d\x65\xd7\xf4\x45\x65\xc4\x26\xfe\xb3\xdd\x61\x39\xed\x7d\xf8\ +\x27\x29\x79\xaa\xbd\xd5\xd8\x6b\x42\x98\xee\x55\xf6\x3e\xf7\x0a\ +\xd1\x89\x1e\x23\xa8\xc0\x5f\xe0\x15\x89\x98\xae\x76\x0b\x66\x1c\ +\x7c\xc6\xa3\xa9\x3d\x72\x91\xb4\x42\x6b\x69\x6b\x3d\xf0\xa0\xe3\ +\xba\xbb\x7b\xf0\x4c\x70\x59\x45\xfb\x06\x7e\x6b\x6d\x6d\x1d\x3b\ +\xa6\x73\x60\x70\xa4\x52\xa9\x90\x00\xa7\x97\x1b\x71\x2d\x81\x4b\ +\x6d\xbf\xfb\xab\x71\x3d\x58\x01\x5c\x27\x09\xe8\x33\xfb\x4c\x0d\ +\xf5\x98\x24\x71\xf7\x18\x37\x5f\x4f\x3c\xf6\x83\xee\xf7\x13\x74\ +\x30\x19\xed\x26\xa9\xc3\x8d\xfe\x4f\x8c\x71\x09\x4c\xee\x4e\x4f\ +\x19\x86\x09\xdc\x78\x5c\x74\x41\xe1\x78\x8c\xd2\xc6\xd6\x36\xe0\ +\xe0\xe4\x89\xd6\x95\x48\x2c\x55\xab\x69\xad\x96\x42\x22\x65\x5f\ +\xfd\xb8\x8c\xbd\x16\x03\xcd\xf7\x6b\x95\xda\x2f\x86\xba\x53\x6d\ +\x1f\x95\x7d\xa9\xa5\x16\xcf\xcc\x90\x30\xd4\x63\xef\x49\x04\xf9\ +\xb8\x4f\xfc\xd5\x10\x65\xa4\xbe\xdf\xbf\x22\xbc\x54\x30\x23\x01\ +\xad\x75\x10\x4c\x16\x35\x4f\x82\x8c\x8b\x11\xec\x9a\x75\x19\x4f\ +\x41\x56\x41\x65\x5d\x39\x0d\x9e\x91\x4c\x5a\xb3\xa6\x8f\x71\x14\ +\x24\x20\x34\x62\xfa\x61\xf0\xc6\x91\xbc\xe8\xd2\x9e\xcd\x78\x79\ +\x59\xa4\xd2\x90\xc5\xed\xc6\xc1\xe2\xd8\x48\xf4\x28\x9e\xb6\x93\ +\x27\x39\x3e\x0a\x64\x90\xeb\xcc\xa3\xeb\xfe\x94\x11\x27\x4d\x3b\ +\x61\x2c\x12\xba\x76\x34\xc3\x84\xe3\xc9\x8a\x9e\x61\x69\x59\x79\ +\x85\x60\x81\x4e\xf8\x0e\xfa\xb7\x22\xde\x4d\xec\x4d\x58\x1a\x02\ +\xb8\x96\xe2\x2a\x55\xee\x67\x26\x40\xe4\xc8\xdb\x09\x15\x5a\x3b\ +\x93\x23\x32\xea\x0e\x02\xdc\x0b\x20\xe5\x7e\xe0\xf0\x65\x2a\x20\ +\x9b\x23\x2c\x01\xdd\x94\xe8\x88\xd4\x40\xa0\x8e\x2a\x92\x44\x6b\ +\xc9\x4b\x9e\x8f\xfc\x12\xfa\x6b\xb7\x7a\xda\xcb\x9e\x94\x96\xd1\ +\x51\x86\x13\x7f\xbc\xc2\x29\x2d\x1a\x33\x6f\xd0\x62\x44\x6e\xca\ +\xcf\x12\x8c\xd6\xd6\xd6\xd2\xdc\xd4\x94\x34\x24\xb0\x00\xbc\xf0\ +\x8c\x28\xcb\x4d\x8f\xbe\x18\x1d\x09\xa9\xc4\x38\xa1\x92\x26\x6e\ +\xb6\xda\xbd\x9f\x49\x8e\x3f\x8d\xb8\x96\x9f\x61\xe1\xb5\xe0\x96\ +\x46\xb0\x2f\xb8\x76\xb0\xaf\xaf\xa1\xa1\xa1\x44\x9f\x06\x50\x8c\ +\xd7\x76\x1e\x22\x52\x06\x7e\x9a\xd9\xc4\x13\x42\x8e\x78\x2a\x23\ +\x70\xe2\x28\x62\xac\x20\xa4\xed\x7c\x2d\x1d\x00\x9d\x34\x1d\x37\ +\xb6\xf3\x83\x0f\x3f\xfe\xe4\xbf\xbf\x5a\xb3\x6e\x43\x47\x47\xe7\ +\xe7\x5f\xac\x1d\xa9\xd6\x82\x02\x96\xba\xd9\x09\x5c\x65\x98\x86\ +\xb5\x54\xe2\x42\x99\x93\x98\x16\x6a\x3c\x6f\x12\xc8\x07\x97\x3e\ +\x27\xbb\x9e\x39\x73\x7a\x6f\x5f\xdf\xd4\x29\x5b\x4d\x9d\x36\xf9\ +\xcf\x77\x99\x3b\xd2\xdf\x47\x7c\x2d\x9e\xc6\xe4\x60\x98\xcc\xe9\ +\x4f\xa9\xb5\xe3\x9c\x74\x33\x29\x31\xb5\x14\xd2\x56\x92\x59\xbb\ +\xcf\x4b\xb7\x4a\x64\x33\x90\xc5\x38\x71\x5c\xd7\xfd\x0f\x3e\xb9\ +\xf2\xd5\x4f\x97\x2d\xfb\xeb\xd9\x53\x3b\xb6\xde\x7a\xeb\x1f\x35\ +\x35\xd7\xb3\x4f\x82\x51\x67\x0a\x46\x45\xfe\x07\x34\x02\x1a\xb8\ +\xbf\x70\xbc\x5c\x6a\x2e\x3a\xf9\x61\x82\x69\x95\x51\x79\x6a\xbe\ +\xfc\xf2\x8b\x6a\x75\xe4\xf6\x7f\x7c\x74\x87\xed\x57\x9e\x73\xce\ +\xa9\x43\x83\xbd\x09\x1b\x20\xe2\x51\xcc\x29\x26\x18\x39\x76\x29\ +\x9d\xbe\xf4\x1c\xad\xd8\xc0\x28\xa8\x40\x92\x41\x72\x26\x69\x6a\ +\x5a\x5b\x5b\xde\xff\xe0\xa3\xdf\xfd\xfe\x0f\xcb\xef\xff\xe7\xc6\ +\x4a\xc3\xff\x42\x27\x60\xd6\xac\x99\xf8\x5c\xbc\xf8\xc7\x67\x9c\ +\x71\xc6\x6b\xaf\xbe\xb6\xdb\xbc\xdd\x87\x07\xfb\x1a\x92\x84\x65\ +\xbf\x09\x64\x9d\xd3\x27\x4c\x52\x16\x74\xe7\x1b\x38\x7d\x16\x16\ +\xcc\xc8\x15\xae\x44\xf6\x29\x14\x5b\x5b\x6b\xcb\xef\xff\xe3\xcd\ +\xc3\x7e\xf2\x57\x40\x07\xce\x47\x63\x63\x63\xa9\x57\x51\x74\x0b\ +\x4a\xff\x3a\x8a\x9f\x51\xcf\x1d\x29\xf5\x2d\x82\xc8\xb0\x0d\x64\ +\xde\xdc\xdc\xbc\xf4\xa7\x87\xff\xfb\x8b\xcf\xec\xfe\xc3\xbd\x8c\ +\xe9\xb5\xe2\x2e\x9b\x66\x9a\xb7\x8c\x9c\x78\xf5\xac\xc7\xbe\xa7\ +\x57\x9c\x10\x65\xd6\x42\x10\x1a\x9c\x64\x77\x00\x88\xd5\x3c\x2b\ +\xaf\xa1\xa1\xda\x36\x53\xb6\xc9\x38\xb0\x52\x49\x92\x84\xdf\x94\ +\xa6\xe9\x1f\x11\x20\xc8\x63\x0c\xc6\x59\x3d\xb6\x6d\xb3\xcd\x36\ +\x2f\xf4\x0e\x1b\x33\x4c\xf6\x83\x12\xd2\x8a\x5f\x91\x49\xf1\x44\ +\x13\xaf\x3a\x0e\x4a\x61\xeb\xd5\x58\xba\x39\x40\xb2\xd9\xa7\xc6\ +\x3f\x80\x20\xcd\xcb\x20\xcf\xa9\xe8\x5d\xbf\xbe\xbb\xad\xbd\x43\ +\x0e\x9d\x56\x0c\xd4\xf4\xc7\x65\xae\xe1\xe1\x61\xc2\xc8\x2d\x6f\ +\x63\xa5\xa9\xc9\x79\x45\x04\xb8\x72\xae\x46\x50\xb7\x7d\x43\x43\ +\x43\x23\x23\x9a\xbd\x89\x5a\xad\xd2\xd0\xd0\xd1\xde\xee\xe5\x51\ +\x6a\x21\xd3\x19\xf3\x38\x4d\x6c\x02\x77\xe2\x15\x21\xaa\xe2\x74\ +\x8c\xa9\x55\xab\xad\x6d\x6d\x13\x26\x4c\x30\x4e\xf3\x41\xf6\x1b\ +\xa0\xf3\xf1\xc7\x1f\xaf\x58\xb1\xe2\xcb\x2f\xbf\x8c\x1c\xe8\x88\ +\x04\x22\x7b\xb7\xae\x67\x5b\xdf\xe3\x8f\x68\xcd\x3a\x22\xc9\x56\ +\x5b\x6d\xb5\xe7\x9e\x7b\xee\xbc\xf3\xce\x98\x6f\xf0\x75\x6a\x59\ +\x44\xc2\x38\xc6\xb1\x36\xa4\xb3\xf6\xb2\x61\x37\x34\x75\xae\x7c\ +\xe9\xa5\x5f\x5e\x7e\xdb\x8c\xad\x27\x8f\xc0\x6c\x6a\x6a\x4c\x1a\ +\x1b\x9b\x3b\x3a\xd6\x6e\xda\xbc\x68\xf1\xbc\x65\x3f\x3b\x72\x78\ +\x60\x73\xa5\x21\xf1\x53\x27\x15\x90\x91\x93\x15\x44\xce\xb6\xce\ +\x6b\x31\xad\x89\x7e\xc1\x4c\x96\x08\x1d\xc7\x82\x70\x5e\x7f\xfd\ +\xf5\x63\x8f\x3d\x76\xc6\x8c\x19\x63\xc6\x8c\xc1\x57\xd0\x6d\xc5\ +\x36\xba\xc8\xe2\x26\xf6\x9a\xb8\x80\x2e\xa8\x9f\x7b\x12\xdf\xc8\ +\xef\x63\xd7\xa1\x18\x8b\xa0\x97\xa6\xf9\xb6\x76\xed\x5a\x88\xe4\ +\xf3\xce\x3b\xef\x80\x03\x0e\x00\x46\x44\x47\x78\xea\x17\x5f\xac\ +\x51\xa6\x6a\xad\xad\x20\x3a\xbc\xa0\x69\xd8\xb0\xb9\x7b\x61\x5b\ +\xd7\x31\x0b\x16\xf5\x34\xb7\xb4\x74\x75\x35\x8c\x1d\x3b\x76\xfa\ +\xf4\x17\xdf\x7c\xe7\x9d\xf5\xef\xd2\x4f\x28\x90\xe3\xcc\x22\x8b\ +\x8f\x57\x58\x6e\x6c\x15\x41\x8d\x86\x4d\x64\xe3\x98\x9f\x48\xb2\ +\xd6\xd2\xd2\xb2\x7c\xf9\xf2\x1d\x76\xd8\x61\xf7\xdd\x77\x07\x91\ +\x57\xf2\x8d\xe0\x00\x6a\x0c\x13\x77\xd2\x45\x11\xa6\x52\x8c\x18\ +\x1d\xa2\x59\x89\x4e\x15\x44\xdd\xda\x3a\x6d\xda\xb4\x07\x1f\x7c\ +\x10\x00\x49\xe7\x7b\xfd\xfa\x4d\xda\xcb\x65\x0c\x38\x35\x89\xf6\ +\x7e\x9a\x45\xb0\xc1\x54\x1a\x06\x4d\x3a\x94\xd6\x54\xad\xda\x50\ +\x1d\x69\x1b\x1e\xaa\xd6\xaa\x18\x97\x23\x5e\xcf\x9a\x19\xb3\x19\ +\x1d\x44\xb5\x5f\xb5\x8a\x90\xb2\x56\x34\xb1\xcd\xef\x47\x80\x99\ +\x00\xa3\x75\xeb\xd6\xc1\x1a\xda\xb2\x65\x4b\xf6\x4a\xd1\x30\x74\ +\x42\x07\xf7\xe0\x02\x9f\xb8\xe6\xe9\xd1\x05\xfa\xf9\x93\x60\xd2\ +\xa2\xe5\xd4\x8d\x98\x39\x1e\x45\x9f\xa9\x95\xa9\x9b\x36\x6d\xc2\ +\x00\x70\x8d\x91\x4c\x9c\x38\x11\xeb\x84\xce\x31\x9d\x63\xa6\x4e\ +\x9d\x5a\x1b\xa9\x42\x91\xb8\x91\xb3\xae\x76\x71\x3e\xf2\x0f\x54\ +\xf8\x5f\x28\x07\xcf\x4c\x4e\x82\x5b\xce\x31\x41\xf7\xb3\xb3\x1a\ +\x7c\x31\x0b\xa4\x16\xd6\x9d\x14\x43\x11\xa7\x10\xbd\x74\x76\x76\ +\xe2\x82\x98\x8e\x0c\x02\xd0\x7f\x3d\x22\x92\x14\x44\x44\x54\x64\ +\x31\x23\x16\x86\x00\x75\x8e\x8e\x52\x4d\x4d\x4d\x6d\x6d\x6d\x03\ +\x03\x03\xf4\x15\xfd\xe8\x69\x6f\x6f\xcf\x6e\xd3\x0d\xc1\x1e\xb6\ +\x3e\x8d\x0c\x01\xe8\x62\x23\x61\x2c\x8d\x1e\xcd\x9a\x50\xba\x77\ +\x3a\xa8\x79\xa3\x0c\x87\x4a\xc8\x7e\x95\xc1\x6d\x9a\x8f\x94\x23\ +\x98\x39\xc6\xfa\xe2\x8b\x2f\x76\x75\x75\x0d\x0e\x0e\xe2\x2b\x3a\ +\x27\x4d\x9a\xb4\xcf\x3e\xfb\xf4\xf7\xf7\x37\xf8\x26\xa1\xa1\x4f\ +\xdc\x46\x44\x44\xd7\x11\x05\x31\xdd\x45\x24\x46\x90\xb9\xd9\x89\ +\xe8\x44\xea\xc2\x28\xc6\x4f\x3a\x21\x1b\xc7\xd2\x0d\xf9\x98\x8e\ +\x33\xfc\x34\xbd\x31\xe3\xfd\x54\xcb\x99\x19\x19\x38\x93\x91\xac\ +\x4d\x56\x94\xc1\x96\x09\x4e\xbe\xe4\xb0\xcc\x14\xda\xbc\x79\xf3\ +\xa7\x9f\x7e\x3a\x65\xca\x14\x52\x28\x44\x3b\x18\x19\x44\xde\xd7\ +\x5f\x7f\xbd\x7e\xfd\xfa\xa3\x8f\x3e\xba\xbb\xbb\x1b\xd4\xf4\xc4\ +\x13\x4f\xf4\xf6\xf6\x1e\x71\xc4\x11\xf8\x5a\xc4\x88\xa0\x91\x48\ +\x45\x10\x48\x80\x88\xb3\xc2\x92\x5b\x81\xc2\xe8\xf8\x96\x2a\x0f\ +\x8f\x0b\x69\x78\x14\x9c\x03\xee\xfc\xf5\x60\x08\xf8\x88\x82\x9f\ +\xa0\x4a\x8c\x61\x53\xc8\x06\xae\x0c\x05\x34\xdc\x82\x89\xb4\x0f\ +\x85\x49\x82\x67\x6f\x58\x9b\x00\x0e\x50\x32\xaf\x21\x3e\x47\x46\ +\x46\x20\x35\x31\x81\x93\x4e\x3a\x09\x7a\xed\xb3\xcf\x3e\x5b\xb8\ +\x70\xe1\xec\xd9\xb3\x2f\xbe\xf8\x62\x58\x03\x4f\x3d\xf5\x14\xb0\ +\x23\x34\x25\x67\x45\xba\xaf\xb4\x81\x4f\x99\x3d\x23\x8e\x66\x43\ +\x31\x8c\xcd\xfd\xab\x69\xbc\x2c\x83\x48\x5e\x58\xb5\xe3\x04\x8d\ +\x5c\x73\x1f\x58\x33\xec\xf9\x53\xb4\x46\xa8\x26\x17\xe5\xcd\xa6\ +\x1c\xb4\x18\x45\x2c\xb4\x0f\xce\xf9\x06\x31\x0c\xce\x07\xef\x00\ +\x0e\x1a\x1f\xc0\x42\x84\xff\xd9\x67\x9f\x05\x34\x40\xea\x90\x43\ +\x0e\x79\xe0\x81\x07\xd6\xac\x59\x83\x6b\xc8\xce\x4b\x2e\xb9\xe4\ +\xdd\x77\xdf\xfd\xfc\xf3\xcf\x81\xa0\x9c\x58\x51\x30\x8d\x02\x8d\ +\xbc\x81\x51\x26\x0a\x2a\xc6\xf6\xb3\xa9\xfa\xd4\x4b\x10\x44\xec\ +\x7c\x19\x1d\x22\x79\x3e\x6e\xe1\x6f\xd0\xc6\x8b\x5d\x6f\x23\xc4\ +\xee\x6e\x22\x0c\x45\xe3\xfd\x65\x0a\xfa\x06\x19\x44\xaa\x84\x99\ +\x02\xd7\xe3\xc6\x8d\x03\x73\x3d\xff\xfc\xf3\x98\xd5\x3d\xf7\xdc\ +\x73\xca\x29\xa7\x40\xc5\xd0\x9f\x90\x30\x99\x3b\x77\x2e\x3b\x71\ +\x91\x9a\xaf\x87\x4e\xd1\x74\x28\xa5\x23\xe6\x41\x11\xc6\xb2\x91\ +\x54\x1f\x7d\x64\x1b\xd6\x73\x42\x3e\xa0\xe2\x22\x3d\xca\xb9\x68\ +\x1e\x47\xcf\x9d\x84\xb2\xf3\xc5\x02\x8b\x71\x00\x53\xb9\x28\x58\ +\x79\x96\x92\x55\x0f\x85\x44\x4e\x3f\xfd\x74\xd0\xcb\xd5\x57\x5f\ +\xbd\x64\xc9\x92\xfd\xf6\xdb\x8f\xe4\x34\x2d\x38\x88\x4e\x5a\x89\ +\xf4\xab\x06\xd1\x46\xc7\x48\xa2\x53\x34\x32\xa3\x0c\xb0\x63\x09\ +\xa3\x83\x23\xee\x94\xb4\x71\x26\x5d\x08\x49\x73\x1c\x4e\x09\xc1\ +\xcb\x94\xe1\x48\x82\xa2\x7f\xec\xd3\x05\x2d\xc6\x21\x49\x23\xc8\ +\x47\x0e\x45\xe6\x3f\xb0\x8c\x60\xa8\xe3\x8f\x3f\x1e\x3a\x6b\x97\ +\x5d\x76\x81\x7d\x44\x9a\x3e\x7b\xa2\xf7\x6f\x79\x4a\x72\x86\x0d\ +\xf9\x26\x6d\x45\x16\x79\xb4\x00\xf4\x5e\x32\xbb\xa4\x6d\x19\x2d\ +\x9e\x76\xb8\x38\x9f\xdd\xbb\xe3\x6e\xf2\x6c\x14\x29\x99\xc3\xf0\ +\x4e\xaa\x8b\x2f\xeb\xe0\x03\xa5\xa9\x51\x79\xb3\xa3\x52\xe2\x4c\ +\x89\xe1\x32\x40\x51\x52\x81\x97\x7a\xce\x9c\x39\x50\xea\x84\x0e\ +\x4f\x06\xe6\x09\x99\x8b\x8c\x69\x3d\x8c\x98\x71\x84\x2f\x59\xe3\ +\xaf\xfc\x40\x69\x3d\x15\xd3\xf0\x71\x44\x21\xcb\x2f\x79\x49\x4b\ +\xf3\x0d\xa9\x04\xef\xaa\xeb\x20\x4d\x98\xf5\x88\x1c\xd9\xb0\x74\ +\x32\x28\xf2\x11\x59\x3c\x8f\xc2\x65\x18\x37\x40\x81\x0c\x82\xb8\ +\xc1\x05\x59\x40\x3c\x79\x40\x83\x3f\x41\xd9\x43\xb4\x93\xe4\xe2\ +\xf5\x2f\x62\x54\xea\xb5\x44\xca\x4b\x1a\x96\xa6\x0c\x1e\x17\x96\ +\x34\x3e\x25\x68\x9c\x9a\xae\x9b\xe7\xd5\x2e\xa8\xc8\xfa\x5e\x07\ +\xcb\x40\x0b\xc1\x6e\xfd\xe4\x5c\xb8\xc3\x46\x21\x4d\x14\x32\xcd\ +\x7b\xe1\x18\x25\x44\xcf\x82\x05\x0b\x1e\x7e\xf8\x61\x68\xab\xc9\ +\x93\x27\x03\x11\x28\x2c\xf8\x6b\xf8\xc4\x35\x2c\xe9\xa5\x4b\x97\ +\x3e\xf2\xc8\x23\x50\x64\x50\x73\xd2\xe4\xfb\x56\x8c\x22\xe2\x8a\ +\x7e\x58\x1e\x1b\xf0\xdc\xc5\x01\x0d\x1f\xfc\x66\xb9\x22\xa6\xe3\ +\x85\x34\xa7\x40\x94\x47\xc7\x27\x36\x28\xbd\xa7\x59\x1f\x26\x26\ +\x97\xd6\xd0\xe4\xdf\x1a\x5d\xba\x54\xae\x41\x06\x23\x18\x72\xe4\ +\x91\x47\xde\x71\xc7\x1d\xaf\xbc\xf2\x0a\xbc\x24\xe8\x78\x50\x0d\ +\x22\x21\xe4\x70\x41\x2a\xc1\xed\xbe\xee\xba\xeb\x36\x6c\xd8\x00\ +\xd4\xa4\x11\x2c\x27\xcc\x58\x34\xda\x16\xe1\x12\xfd\x84\xe9\xb7\ +\x6c\x60\x21\x3a\xa1\x3d\x45\x68\x6f\x45\x07\xe2\xf0\x3e\x5a\x90\ +\xaa\x85\x5a\x1c\xdf\x6b\xd8\x24\xac\xc8\x31\x90\xe4\x27\x57\x25\ +\x92\x41\x32\x76\x83\xa1\x83\xb3\x10\xa0\x39\xfc\xf0\xc3\x9f\x7e\ +\xfa\x69\x90\x09\x05\xee\x30\x49\x20\x72\xd5\x55\x57\xc1\x05\x99\ +\x3f\x7f\xfe\xb9\xe7\x9e\x0b\x1d\x77\xc3\x0d\x37\x20\x96\x04\xd4\ +\x48\xeb\x47\x8d\x61\x8a\x84\x5d\x3d\x6f\xb6\x14\x20\xc9\x62\xf9\ +\xa2\x0e\xe3\xd3\x03\xb1\x1f\xa6\xbd\xed\x1d\xe5\xe6\x49\x87\x6b\ +\x31\x8c\x28\x68\xef\x93\xfb\xc2\x50\x95\xe3\xe6\x21\x62\xb6\x40\ +\x01\x18\xc1\xc9\x40\x0f\xd9\x78\x70\x35\x56\xad\x5a\x75\xc5\x15\ +\x57\xdc\x7c\xf3\xcd\xd0\x6b\x50\x70\x60\xc6\xeb\xaf\xbf\xfe\x9a\ +\x6b\xae\x81\xca\xa3\x52\xb6\x28\x42\xc6\xd4\x54\xf4\xbf\xbe\x33\ +\xf9\x94\x42\xe3\x3b\x95\x09\x39\x0a\x9f\xee\xd2\x21\x6f\x6a\xa2\ +\x08\x6f\x0a\x6f\xc3\x65\x86\x4c\x2c\x83\x1c\xbf\x92\xfc\x2f\xcb\ +\xed\xc8\xd1\x10\xd7\x80\xd7\x20\x8c\x07\x7c\x83\x53\xb6\xd7\x5e\ +\x7b\xcd\x9c\x39\xf3\xac\xb3\xce\x82\x07\x0b\xd6\x83\x91\xbd\xc7\ +\x1e\x7b\xc0\xff\x00\x76\xa5\x15\x3d\x84\x0b\x19\xa2\x91\x4e\x28\ +\xfd\x1a\x8b\x21\xe3\x92\x42\xa6\xbc\xb8\xcd\x33\x0c\x27\x33\x54\ +\xc8\xc9\xc7\xf1\x6f\xbe\x9b\x12\x8b\xfe\xef\x41\x06\x59\x9b\x93\ +\x49\x53\x95\x16\xb5\x45\x30\x49\x63\x87\x3c\x58\xb0\x18\xf8\x6e\ +\xfa\xf4\xe9\x88\xfe\x21\x6a\x83\xaf\x00\x6b\xb7\xdd\x76\xbb\xe8\ +\xa2\x8b\x60\x7c\x47\x28\xb0\x47\x8a\x06\xac\x8b\x30\x45\xc5\x74\ +\x25\x14\xe4\xd6\xd3\xa5\x4f\xf3\xf7\x2b\xc3\x56\x8e\x0e\xae\x93\ +\xb3\x1d\x85\x0c\xd1\x02\x1d\x67\x03\xaa\x30\xc7\xa4\xac\x2c\x8b\ +\x7e\xaf\x22\x4a\x8e\x84\x51\xb1\x6a\x91\x2c\x17\xc4\x46\xc1\x77\ +\xa0\xa0\x33\xcf\x3c\x13\x3a\x0e\xf1\xad\x0b\x2e\xb8\x60\xd6\xac\ +\x59\xa0\xa3\xf1\xe3\xc7\x13\x0a\x4c\x35\x04\x0d\x18\x90\x00\xe2\ +\xbf\x72\xbc\xad\x54\x14\xe6\xbc\x55\x1f\xdd\xf0\x5a\x9b\x61\x72\ +\x6b\x4d\x20\xb2\xaa\x12\xf9\x09\x27\x9f\x72\x91\x90\x5c\x5a\xc4\ +\x32\x4a\x24\x0c\x85\x26\x2b\x5f\xc9\xa8\x0e\xb2\x38\x07\xc2\xe8\ +\x84\x13\x4e\x80\x60\x3a\xfb\xec\xb3\x21\xa7\xc0\x7a\x97\x5e\x7a\ +\x29\x52\x34\x97\x5f\x7e\x39\x30\x62\x62\x61\xc2\xa9\xfa\x16\x61\ +\x14\xd1\x5a\x09\x7d\xb9\x90\xa1\x62\xf3\x99\xd5\xb6\x11\x35\x59\ +\xb2\x50\xc4\x57\x1e\xe5\x74\x5f\xae\x34\x8f\x4d\x05\x52\x23\x11\ +\x3f\x07\xa8\xeb\xb7\x51\x30\xe2\x60\x20\x08\xe7\xd4\x53\x4f\x85\ +\xcb\x0a\x09\x0d\x5e\x43\x78\xe8\xca\x2b\xaf\x84\x61\x09\x99\x8d\ +\xc0\x00\x6c\xa5\x9a\x6f\x44\x3e\xa5\x18\xf1\x45\x69\xed\x2a\x2b\ +\x65\xe7\xb1\x4a\x99\xe2\x53\x13\x0e\xaa\x9c\xc8\xe1\xbc\x60\xb0\ +\x06\x73\x30\xf9\x68\x8f\xa3\xa0\xf0\x67\x56\xf0\x21\x52\x32\x5a\ +\x05\xef\xe8\x28\xe2\x49\xc0\x08\x02\xe8\xa3\x8f\x3e\xba\xf7\xde\ +\x7b\x11\x1e\x82\x65\x70\xed\xb5\xd7\x42\xaf\xdd\x77\xdf\x7d\xc0\ +\x08\xce\x2d\xd3\xce\x88\x6d\x11\x46\x11\xbb\x31\x4c\xb1\x90\x8e\ +\x94\x4c\xd0\xc7\x2e\x40\x48\x7a\x5b\x09\x44\xb9\xc4\xa7\xbc\x66\ +\x58\x2b\x19\xed\x91\x51\x61\xed\x0c\x4a\x65\xd4\xa8\x65\xc7\x1c\ +\xf4\x8b\xee\x29\xae\x36\x84\xf4\x69\xa7\x9d\xf6\xd0\x43\x0f\xc1\ +\xb0\x86\xe7\x01\x50\x60\x19\x21\xb9\xf6\xe8\xa3\x8f\x82\xac\xa0\ +\xf8\x24\x7f\x31\x3a\x74\xc1\xf2\xbb\x9e\x54\x12\x1c\x65\xa4\x2b\ +\x9f\x23\x6e\x57\xff\x20\xe2\xd2\x14\x0b\x0b\x91\xb5\x42\xf1\x34\ +\xfb\x2c\x1c\x0f\x62\x43\x5a\x19\xcf\x82\x05\x35\x36\x0a\x5b\x95\ +\xea\x26\xea\xa4\xa9\x82\xb9\xee\xba\xeb\xae\x27\x9f\x7c\x12\xee\ +\x08\x3a\x11\x3f\x7a\xec\xb1\xc7\x60\x61\x42\x1e\x81\xac\xaa\x85\ +\xc6\x7a\x8d\x31\xa2\x0c\x47\xa9\x8e\xd3\x41\xbe\xd6\x29\x3f\xe7\ +\x60\x4f\x5e\x74\x49\x22\xca\xd9\x3a\xbe\x74\x36\xae\x0f\x22\xfb\ +\xc8\x05\x84\x74\x09\x1c\x3c\x3e\xba\x90\xb1\xab\xb4\x4e\x83\x30\ +\x02\xd5\x80\x76\x80\x11\x22\x8d\x10\xdb\x07\x1e\x78\x20\xfa\xef\ +\xbe\xfb\xee\x63\x8e\x39\x06\x5f\x17\x2d\x5a\x04\x11\x4e\x19\xed\ +\x52\xf5\x2f\x25\x51\x39\x11\xf9\xb5\x8d\xec\x0f\x5f\x6a\xe3\x4a\ +\x3e\x8b\xc6\x39\xa7\x77\x62\xfe\x32\xce\x2f\x8b\xeb\x83\xb8\x12\ +\xcb\x18\x5f\x89\x57\xd0\xaf\x64\xec\xf2\x1c\x38\x33\x53\x4a\x41\ +\x34\x37\x18\x47\x20\x13\x88\x67\x58\xd8\x97\x5d\x76\x19\x81\x82\ +\x7e\xd0\xd4\x71\xc7\x1d\x87\xbf\xce\x9b\x37\x0f\x49\x01\x5c\x14\ +\x9f\x10\x09\x6c\x0e\x12\xe5\x49\xc8\x95\x1d\xc4\x26\x24\xfb\xa5\ +\xaa\xe0\xac\x86\xd0\x7e\x5e\x7f\x39\x6b\x28\x8d\x65\x50\x88\x01\ +\xf8\xe0\xa3\x56\xc6\xd4\x11\xc1\x52\x00\x15\x49\x46\xae\x36\x73\ +\x07\x1e\x0e\x75\x06\x8f\x0c\x00\x41\xa9\xbd\xf3\xce\x3b\x80\x03\ +\x90\xdd\x76\xdb\x6d\xb7\xdc\x72\xcb\x7b\xef\xbd\x07\x87\x16\x84\ +\x56\x14\x43\xb5\x42\x2b\xb1\x2d\x4c\x48\x6a\xe4\x7b\xdd\x74\x95\ +\x74\x35\x42\xfd\x1a\x33\x65\x2e\xdd\xe8\x73\x5e\xba\x04\x20\xc3\ +\x9e\x98\x11\xe2\x2b\xef\x13\x44\xe8\x44\x48\x45\xe8\x44\x2b\x0f\ +\xa7\x04\x6e\xed\x39\xe7\x9c\x73\xfe\xf9\xe7\xc3\xfb\xc7\xfc\x21\ +\xa7\xa1\xf5\x6f\xbd\xf5\x56\xe2\x32\x5b\x85\x31\x42\x91\x7f\x36\ +\x1d\x8b\xa2\x3a\xd2\x62\x9a\x22\x3f\x69\x08\x6c\x84\x30\xaa\x96\ +\xda\x3f\x57\x36\xc8\x79\x10\x0e\x92\xf0\xbe\x95\xbc\x51\xa0\x92\ +\xa8\x3e\x48\x3b\x4b\x51\xd7\xb3\x7d\x8a\xaa\x37\x92\x14\x52\x76\ +\x70\xc3\x6c\xf1\x04\xb0\x12\x92\x6b\x88\x93\x20\x59\xd4\xd3\xd3\ +\x03\xaa\xd9\x6e\xbb\xed\x20\x8c\x2e\xbc\xf0\x42\xb0\x21\x44\x15\ +\xe5\x36\x10\x90\xa4\x00\x40\x91\x88\x4a\xb4\x18\x19\x3c\xd6\x4f\ +\xd2\xdc\xe1\xcd\x19\x76\xbb\xf8\x5e\x4e\x92\x46\xe5\xe4\x4a\x09\ +\xe7\x5e\x44\x0d\x65\x7d\x90\xcf\x81\xf8\xa0\x74\x5a\x06\x8d\x94\ +\x41\xdc\xc3\x9f\x94\xea\xe3\x64\x71\xbc\xf7\x2a\x49\xa0\xf8\x11\ +\x09\x01\xb1\x00\xa3\x3b\xef\xbc\x13\xc4\x02\x91\x04\xd7\x1f\xce\ +\x1a\x8c\x6f\x10\x0e\x8f\x18\x4e\x2f\xae\xa9\x87\x20\x26\x91\x57\ +\x12\x0d\x12\x51\x30\x2d\xa4\x84\x8f\x3c\x2b\x59\xa0\xc8\xa9\x09\ +\xa5\xeb\x6f\xbd\x12\x5f\x2b\xe2\x26\xe3\x64\x8f\x36\xa5\x4e\x50\ +\x11\x0e\xd9\xc3\x49\x74\xfe\x2c\x6a\x5c\xf2\x6c\x11\x5a\x43\x40\ +\x12\xe4\x03\x53\xfb\xf6\xdb\x6f\x07\x59\xed\xbf\xff\xfe\xe8\x7f\ +\xf9\xe5\x97\x41\x41\x04\xc4\xc6\x8d\x1b\x1f\x7f\xfc\x71\xd8\x99\ +\x80\x52\xea\xfb\xa2\x0c\xd2\xb2\xfe\xc0\xa8\x7c\x70\x42\x99\xbc\ +\x59\xac\x44\x69\x43\xe9\x66\x37\xf9\x93\x62\x7d\x90\xab\x96\x35\ +\xba\x64\x07\x8e\x14\xd2\x04\x81\xcc\x0e\x33\xc9\x94\xa2\x13\x01\ +\x04\x67\x0d\x32\x68\xdf\x7d\xf7\x05\x46\xc8\x1d\x21\xa2\x06\x38\ +\x00\xd9\xde\x7b\xef\x4d\x3c\x05\xaa\x01\x97\x41\xcd\x41\x42\x21\ +\x2a\x00\x8c\xd8\x71\x2b\xd9\xfc\xc4\x01\xb3\xfc\xa8\xdd\x8a\x1b\ +\xc3\x2a\x3e\xbf\x55\xc0\x48\x5a\x11\x4e\x78\xd8\x1f\x12\x82\xf6\ +\x62\xab\x88\x77\xe2\xca\xdc\x88\x74\xd4\xc6\x32\x28\x12\x1c\x45\ +\x07\x02\xf3\xc7\x1b\x81\x11\x08\x07\x29\xc6\x9b\x6e\xba\x09\x1a\ +\x0d\x74\x04\xee\x43\x08\x09\x60\xe1\xfa\xab\xaf\xbe\x82\x6c\x42\ +\x32\x12\x6e\x0a\xe4\x11\x7e\xc2\xa2\xad\xc4\x9b\xd7\x4a\x9a\x7f\ +\x52\xa4\xfa\xe0\x57\x08\xf0\x70\xb9\xb6\x8c\x0c\x3a\x2d\xee\x2c\ +\x1d\xa3\x85\x43\x9f\xe4\x73\x26\x1c\xbb\x57\x45\xa3\xb9\xe8\x22\ +\x45\x3d\x91\xde\x91\xce\x7a\xd1\xa5\xc0\x93\xe1\xac\x21\xa3\x8f\ +\x0b\x48\xe8\x28\xad\x84\x06\xd5\x76\xd8\x61\x87\xe1\x4f\x30\x11\ +\xf8\xe7\xf5\xac\x44\x97\xef\xd4\xf9\xf0\x9e\xf1\x8a\x9d\x02\xc9\ +\x21\x30\xc4\x81\x1f\xbe\xc3\xe9\x2f\xad\x83\x4f\x17\x0c\xc5\x42\ +\xd1\xac\xb4\x13\x63\x19\xc4\x17\x5c\x7a\x21\x45\x32\x5f\x73\x78\ +\xa8\x34\xbd\x45\xb9\x30\x48\x1c\x88\x67\x96\xee\xbc\x06\x59\x29\ +\x72\x5b\x1b\x2e\x20\xad\xc0\x6b\x4c\x7d\x24\xa4\x4b\xbd\x79\xde\ +\xee\x14\x2a\x38\x74\x70\xcf\xa5\xa8\x16\x5b\x1f\x72\xfe\x89\x0e\ +\x31\x55\x51\x26\x24\xeb\x83\x9c\x59\xe1\x37\x63\xd5\x53\xf0\x04\ +\x90\x14\x3d\x2c\x74\x18\x26\xde\x3f\x51\x44\x47\x02\x44\x80\x4a\ +\x15\x4e\xf2\x18\xe8\xdc\x78\xe3\x8d\xa8\x87\x3c\xe8\xa0\x83\xa0\ +\xe6\x98\x43\xb9\x94\x2b\xcf\x68\x32\x14\x9d\x33\x91\x95\xe3\x2f\ +\xad\xf2\x51\x31\x57\x7b\xe0\x92\x14\x85\x7d\xc3\x2e\xa5\xa1\xe2\ +\xfa\x20\x1f\xe0\xe5\x00\x66\x2c\x62\xd9\xf0\xd1\x3a\xde\x82\xa3\ +\x0a\xdb\x5c\xe5\x3a\x73\xd5\x1e\x57\x40\x30\x40\x98\x39\xbe\x92\ +\x59\x48\x37\x40\x1e\x01\x1d\x60\xf4\xc1\x07\x1f\x90\x8f\x02\x8c\ +\x88\x7f\xeb\xec\x50\x75\x49\x67\x23\x77\x66\x0a\x3b\x0e\x71\x78\ +\xa0\x5e\xb3\xff\xd3\x82\x60\x79\xbd\x9e\x2a\xd1\xf1\x4a\x40\x1a\ +\xd5\x28\x12\xdd\x58\x4f\x35\xcf\x62\xac\xa1\x98\xce\x8b\xea\x9c\ +\xf2\x65\x04\x07\xbe\x62\xce\x9c\xcf\x91\x14\x14\xa5\x2e\xf0\x13\ +\xe2\x32\x92\x4a\x60\x28\x18\xd6\x60\xbd\x65\xcb\x96\x41\xf4\x20\ +\x3b\x02\x74\x16\x2f\x5e\x0c\x2b\x9c\x1e\x52\x2e\x83\x72\xa6\xaf\ +\x50\xde\xb6\x66\xac\xb3\xb9\x79\x42\x7b\x3b\x8a\x5c\x5b\xc6\x8c\ +\x41\x95\x6b\x63\x57\xd7\x38\xe4\xa9\xbe\x89\xed\x1f\x11\xe7\x0f\ +\x69\x9f\xb8\x46\xd1\x28\x5f\xfd\x21\x62\xd2\x7e\x27\x62\x95\x25\ +\x45\x71\x0b\x64\x29\x67\x49\x16\x93\xb4\x23\x13\x90\x08\xa4\x41\ +\xd9\x3f\xf3\xcc\x33\x87\x1e\x7a\x28\xf4\x1a\x3a\x11\xae\x45\x31\ +\x34\x3a\x41\x3e\xf0\x66\x57\xaf\x5e\x8d\xb0\x91\x34\xb8\x0a\x32\ +\xc8\xe5\x20\x74\x7e\x8f\x33\x8d\x73\x78\x68\xf8\xb9\x0f\x3f\xdc\ +\x54\x49\x06\x92\x86\x4a\x5b\x5b\xd2\xd2\xd2\x31\x61\xfc\x1f\xbe\ +\x5a\x3b\x7d\xa7\x09\x56\xf9\xa5\xc6\xe8\xd8\x60\xc8\xd7\x28\x26\ +\xd2\x50\xd4\x6e\x9f\x47\x88\x9f\xd0\xc4\x10\x30\x45\x1e\x99\x8a\ +\x58\xeb\x39\x13\x91\xe6\x8a\x22\xaa\x45\xad\x4f\x0d\x28\xa0\x5e\ +\xef\xb9\xe7\x9e\x43\x14\x0d\x71\x7e\xbc\x11\x51\x91\xb7\xde\x7a\ +\xeb\x8d\x37\xde\x20\x64\x51\x3c\x4e\x05\xad\x1c\x45\x2b\xb7\xa4\ +\x4d\x8e\x04\x54\xe6\xdc\xeb\xc1\x81\xc1\x5d\xe7\xcc\x7a\xbf\xa5\ +\x92\x2e\xdc\xbb\x71\xfe\x7c\x3d\x7b\x76\x75\xc6\x8c\xc1\x09\x5b\ +\xbd\xf2\xfe\xbb\x7b\xce\x9f\x33\x3c\x30\x24\x76\x12\x6a\x2f\xcb\ +\xec\x85\x50\x4d\x15\x59\x1f\xe4\x6c\xab\x3c\x7f\x61\x4c\xf0\xb6\ +\x91\x6b\xa6\x0a\xe9\xd1\xab\xe8\xa5\x00\x92\x45\x73\x32\x31\x2f\ +\x73\x81\x98\x33\x9c\xaf\xa3\x8e\x3a\x0a\x21\x47\xe0\x82\x57\x80\ +\xcb\xd0\x8f\x20\xe4\xc9\x27\x9f\x8c\x52\x36\xa9\xe6\xea\xa5\x55\ +\x5d\xf9\x9c\xf6\x01\x7b\x5f\x45\xd6\xdf\x3f\x30\x7b\xe7\x9d\x7e\ +\xbc\x70\x6e\xb3\x49\xfe\x72\xff\xc5\xdd\xdd\x5b\x20\xda\xfe\xf3\ +\xbd\xff\x5a\xf0\xc3\x9d\xe6\xcf\xdf\x79\xd3\xc6\xee\x24\x5b\x83\ +\x90\x23\xb4\x3a\x30\xb5\x9b\x0e\x55\x4e\xcd\xe7\x4d\x74\xc5\xa5\ +\xc0\x72\x97\x06\x32\x7f\x94\x1d\xe5\x2c\x6b\x3d\x73\x99\xd5\x56\ +\xa4\xbf\x64\x8d\x9a\x6c\xe0\x26\xc8\x07\x64\x8a\x60\x25\xd2\x63\ +\xc1\x62\x58\x09\xa2\x3e\x26\x19\x0e\x06\x15\x17\x24\x8b\xe0\xd8\ +\x5a\x4c\x4d\x1b\x83\xbd\x2b\x8a\xd7\x0d\xf5\x0e\x2c\x3b\xf2\xc0\ +\x2b\x7f\xb1\x7c\x9f\x45\x7b\x83\x92\x51\x29\xf1\x9b\xdf\xfc\xdb\ +\xdf\x1c\x85\xeb\x54\x89\x4d\x77\x89\x71\x85\xbd\x76\xeb\x4f\x28\ +\xee\x88\xed\x20\xb6\x2c\x64\x56\x8c\x30\xc2\x58\x69\xd0\x45\x8b\ +\xae\x28\x77\x8a\xe8\x70\xed\x53\x94\x4a\x96\x5b\x54\x10\x0c\x91\ +\x81\x4a\x2a\x15\x65\xa5\x4e\xe2\x0f\x77\xc6\x32\xc8\x55\x8a\xa5\ +\xb4\xb0\xe4\xd6\x5b\x01\x9d\x3d\xbf\xaf\xb7\x7f\xd7\xdd\xe6\x4e\ +\x9d\xd2\xb1\x6a\xd5\xea\x03\xf6\xff\x8b\xd5\xaf\xbf\xd5\xd2\x34\ +\xb4\x60\xc1\x3c\x6c\x8b\x07\x71\xfb\x70\xad\xfb\x87\xca\x5c\x49\ +\x02\xe7\xec\x20\xb1\x55\xc3\xc7\x21\xf3\xc4\x0c\xb2\x07\x97\x91\ +\xbd\x5b\x1a\xd6\xa3\x42\x7a\x96\x59\x5c\x54\x5f\xba\x3f\xa3\x58\ +\x98\xc0\x6b\x50\x52\x6b\xe1\x01\xa2\x12\x75\xb0\x24\x55\x8e\x5a\ +\x04\xf5\x96\x9e\x1e\x08\x75\xec\xf9\x19\x1a\xae\x6a\x0e\xfa\x39\ +\x13\x28\x25\x8f\x61\x78\x70\xf0\xe7\xcb\x0e\xba\xf9\x97\x4f\x1e\ +\x7d\xf4\xcf\x7e\xfb\xdb\x15\x4b\x0e\x5e\xe8\xf6\xe6\x1a\x63\x4c\ +\x6e\x53\x28\x3b\xb3\x5a\x95\x45\x14\x4d\xa8\x1c\x51\xc5\xc9\x83\ +\xec\x11\x09\xc4\x02\x16\xab\x58\xa2\x52\xf1\x62\x21\xe2\xb7\x16\ +\x25\x36\xfa\x26\xcb\x5d\x65\x23\x70\x57\xae\x5c\x89\x18\x08\x52\ +\xd8\xec\xb5\xe2\x02\x1c\x1a\x85\xa2\x8d\x0f\x25\x12\x88\xbd\x3d\ +\xbd\x7b\xec\xb9\xeb\xa4\x09\x4d\xf7\xdc\xbb\xbc\x31\xe9\xdf\xe7\ +\x47\xf3\xb7\x6c\xe9\xc9\x24\xa3\x8a\x67\xea\x7f\xad\xa5\x60\xaa\ +\x98\xa8\x74\xc6\x10\x23\x24\xfc\x63\xd2\x62\xd0\x35\x70\x20\xdf\ +\x7e\xfb\x6d\x62\x07\x0a\xee\x48\xba\x28\x25\x90\x62\x85\x46\xc4\ +\x5c\xa5\xa7\x9f\x14\x33\xda\x74\x1b\x12\xd9\xa8\x8a\x84\x4d\xc4\ +\x88\xd4\xaa\xb5\x3f\xd9\x7e\xdb\x4a\x43\x45\xa5\x43\xaa\x41\x07\ +\xab\xc8\x09\x6d\x37\x4f\x28\xfb\x63\x7f\xbe\xe4\xe0\x9f\xfc\xed\ +\xa3\xbf\xbe\x1e\x9b\x16\xd2\xd4\x88\x64\x7d\xd0\xeb\x21\x55\xa4\ +\x83\xeb\x1b\xd7\x07\x79\x62\x1e\x66\x82\xe7\x08\x19\xe2\x7e\x1b\ +\x6d\xe3\xd1\x73\xfc\xcc\x9f\x9e\x90\xe6\xb6\x8a\xe4\xed\xcc\xe2\ +\x3e\xc2\x52\xa1\x5b\x6f\x27\x22\xe2\xb3\xd0\xa4\xb0\x89\xc8\xa4\ +\xe4\x01\xb4\xb4\x34\xdb\xb2\x15\x27\x7e\x78\x0b\xb9\x0f\x13\x19\ +\x5b\xcd\x34\xb4\xe3\x0e\x33\xfe\xe1\xef\xcf\xfd\xc1\x0f\x76\xec\ +\xeb\x1f\x00\xad\x7b\x44\x52\xc1\x43\xc6\x17\x00\x1b\x2d\xaa\x94\ +\x72\x11\x45\xb2\xb6\xb2\x43\x3c\x5a\x2a\x70\xa6\x77\xfa\xb3\x59\ +\x52\x4e\x23\x0a\x01\xe2\xdf\x76\xdb\x6d\xa3\x3d\x98\xd1\x6c\x8b\ +\xdb\x30\xa3\x32\x4d\x56\xfc\xdf\xba\xa1\x2e\x7f\x66\x46\x15\x84\ +\xcc\xc2\xde\xed\xf1\xce\xf6\xd4\xd5\xfc\xb6\x68\x13\x42\xa9\xda\ +\x57\x27\x7a\x47\x15\x76\xdb\xd2\x25\x8b\xfb\xfa\xfb\x53\xca\x7f\ +\x38\xeb\xc9\x09\x2d\xde\xb3\x9d\x3d\x20\xf5\x85\xb1\xd1\xa6\x5e\ +\xa3\x43\xb8\x7a\xec\x98\xf6\xe1\xa1\xa1\x28\xaf\x46\xaa\x1a\x3c\ +\xff\xad\x00\x45\x29\xaa\x88\x82\x46\x3f\xdf\xa7\x14\x20\x57\x89\ +\xe2\x0b\xc9\x5d\x54\x53\xa9\xee\xee\xcd\x80\x8e\xf4\x03\x17\xcd\ +\x5b\x03\x19\x84\xe1\x26\xcb\x16\xce\x96\x9e\xde\x24\xf1\xa7\x2a\ +\x50\xd2\x5d\xe5\x23\x91\x5e\xf6\xc8\xc8\x49\x45\x3a\xc5\x78\x24\ +\x4a\x68\x87\x6b\x66\xca\xe4\xf1\x2f\xbd\xb6\xfa\xa7\x4b\x0f\xdb\ +\xd2\xbd\xc5\xa6\x11\x6c\x46\x4c\xf1\x81\x0d\x8a\x92\x0b\xd6\x58\ +\x0f\x47\xf4\x98\x5c\x5e\x45\xf1\xcd\xc6\x67\x22\xd2\xe0\xe8\x66\ +\x4f\x08\x47\x6b\x14\x8f\xfd\x71\xbb\xdd\xe4\x14\xe8\x28\x00\x7a\ +\x66\xb6\x54\xe3\xbb\xc6\xc3\xa1\xdd\x71\xe6\x34\xa9\x82\x74\x38\ +\x01\x87\x4f\x79\x71\xb1\x6a\xda\x37\x1e\x16\x49\xeb\x28\x4c\x1b\ +\x2a\x18\xc5\x81\x03\x95\xa2\x08\xe8\xe9\xe9\xdd\xf7\x47\xf3\x1f\ +\x7f\xe6\xe6\xbb\x7e\x75\xdf\xc1\x07\x1f\x90\x55\x46\x65\xf5\x87\ +\x15\xeb\x97\xa4\x14\x84\xac\x77\xba\x94\xaf\xca\xd1\xa5\xe7\x1d\ +\xf9\xc3\x0e\xc8\x2d\x4e\xf9\x81\xfc\x58\x25\x8e\xf5\x91\x50\x3b\ +\xbd\x61\x1f\x0e\xd7\x25\x3b\x02\xaa\x96\xfe\xcb\xbf\x3e\xb5\xea\ +\x95\xdf\x1d\x7f\xeb\x85\x5b\xb6\xf4\xea\x24\x09\x79\x51\x2d\xd2\ +\x15\x5c\x3f\xe4\x4f\x10\x32\x26\xde\xe0\x18\x8d\x9f\xcb\x38\x9d\ +\xa1\x18\x6b\x19\xbf\x83\xe1\xef\x2e\x3c\xf1\x57\xff\xf4\xc4\xc3\ +\xbf\xfe\xac\xb7\x6f\x18\x35\x3e\xbd\x7d\x83\x23\x4e\x3a\xfa\x62\ +\xd9\x42\x9d\x9e\x74\xaa\xb5\xdb\xac\xaf\xa3\x1b\xb8\xdf\x88\x03\ +\xa8\x9c\x10\xd1\xf9\x2c\x68\x38\x17\x2c\xec\x63\xc3\xf7\x89\x13\ +\xc6\xae\xfd\xfa\xeb\x71\xe3\x3a\x36\x6e\x58\x73\xd5\xa5\x27\x75\ +\x76\xb4\x0f\x0c\x0c\x3a\x31\x97\xdd\x9f\xe6\xdc\x0e\x4b\xfd\x1c\ +\xe5\x0a\x96\x8e\xdf\x07\x5c\xc8\xc7\xe6\x8f\xc1\x91\x42\x9a\x69\ +\x0b\x7c\x0a\x5d\xde\xd9\xd9\x71\xe9\xf9\x27\xc2\x12\xeb\xe9\xe9\ +\x03\x3d\x6f\xd8\xd8\x2d\x75\x16\xbd\x21\x3a\xbb\x27\x3a\xf1\x48\ +\xe7\xcf\xf7\x50\xf5\x0e\x43\xe2\xa3\x10\x7c\xa5\x93\x32\xf9\x63\ +\x80\xfc\x99\x1e\x14\xea\x9b\x38\xb1\xab\xb1\xa9\xb1\xbd\xad\x6d\ +\x5c\xd7\xb8\xc1\x81\x21\x38\x5c\x09\x93\x8f\x88\xe5\xa8\x3a\xe5\ +\x0c\x85\x32\x58\x1f\x67\x65\x1b\xca\x59\x3a\x62\xdf\x7c\xc8\x2b\ +\x86\xd0\x6c\x02\xf7\x79\xfd\xc6\x6e\x30\x17\x22\x12\x78\xe8\xe4\ +\xc9\x93\xf8\xf8\x17\xe3\x76\x5b\x05\x1f\x91\x8f\x94\xf1\x7f\x55\ +\x7c\xf2\x06\x5f\x28\xd9\x13\x9d\x7c\x26\xa3\xe4\xf9\xfd\x39\xf2\ +\x1e\x9a\xd1\x48\xad\x9a\x05\xc1\xb0\x66\x1b\x36\xc3\x5b\x20\x93\ +\x2f\xf1\xd9\x54\x3e\x57\xc9\x17\x13\xba\xca\x27\x25\x22\x87\x9a\ +\x37\xb6\x98\x20\x9b\x85\xaa\xcf\x95\xd2\x57\xe4\x81\x46\x81\xf0\ +\xec\x0d\x95\xcc\x5e\x30\x1c\xf4\xcb\xef\x76\x08\x87\x63\xc8\xe9\ +\xe6\xfa\xf3\x40\x14\xcf\x44\x08\x50\x16\xb1\xa8\xb7\x17\xdf\x1d\ +\xf8\x65\xbd\xa4\x84\x8e\x50\x32\x3a\x1c\x65\x42\x4a\xcc\xe8\xb0\ +\x89\x25\x7f\x64\x47\x20\x4f\xef\x52\x18\xa1\x51\xb8\xb4\x8a\x83\ +\xdb\xf2\xfc\x20\xa2\x1f\x87\x91\x2a\x64\xfb\x8b\x47\x74\x89\x23\ +\x6b\xc2\x4e\x0e\xfb\xaa\xa4\x8c\xa1\x74\x01\x23\xad\xcb\xce\x22\ +\x48\x74\xb1\xa6\x34\x7c\x0d\xdb\x8f\x4d\x70\xb9\xbc\x9f\xa4\x45\ +\xdc\xde\x1f\xea\xe2\xe1\xf3\x9e\x01\xef\xa2\xe3\x84\xac\x51\x74\ +\x84\x10\x6b\xb8\x50\x50\x94\xab\x0f\xb2\xaa\x37\x1d\xc9\x82\x5b\ +\x90\x35\x55\xbf\xdf\xd5\x1b\xa8\x9e\xb3\xe4\x71\x5d\x8a\xfb\x43\ +\x2c\xd8\xf3\x5c\xa2\x4d\x38\x03\x2a\x20\xc2\x0f\x31\xa6\x70\x2c\ +\x5b\x38\x33\x8f\x8d\xbd\xfc\x5e\x64\x95\x3f\xa0\x88\xce\x8b\x8a\ +\xf6\xac\x98\xc0\xcb\x2a\x6c\xcf\x54\x2a\x36\xdc\x59\xc4\xd9\x7b\ +\xd3\x60\xc7\x62\x57\xbd\xf2\x25\x69\xd1\xf9\x41\xaa\xa3\xbd\x6d\ +\xfc\xe4\x89\xa4\xd7\xb5\x14\x37\x7e\x43\x91\xc4\x28\x09\xa7\x74\ +\xb9\xd3\x65\x58\x54\xeb\x70\x24\x90\x16\x87\x66\xf1\xf1\x7e\xc6\ +\x1d\x1e\x16\x86\x5a\xe6\x9a\x89\x7e\x93\xff\x1a\x12\x80\xca\xa8\ +\x1c\x62\x05\xcd\x67\x4c\x4e\xae\x99\x42\xb1\x47\x48\xfa\x90\x1d\ +\x62\x74\x5b\x2b\x55\xc2\x05\x3b\x88\x73\x26\x2f\xbc\xb4\xea\xe2\ +\x8b\x6f\x84\xda\x62\xe7\x20\x1c\xd0\x66\x0a\x87\x0f\x71\x86\xc8\ +\x27\xdc\x74\xfe\xac\x22\x41\xc7\x12\x02\x3e\xae\x47\x8b\x19\xe9\ +\x78\xe2\x65\xe7\x33\x69\x79\x48\x92\x2a\x48\x81\xf8\xfc\xca\xd8\ +\x68\x50\x75\x76\x31\x45\x65\x0b\xcd\x4d\x8d\xab\x5e\x7d\x93\x36\ +\xfb\xa5\xf6\x70\x3e\x17\xc4\xf9\xe4\x93\x4f\x96\xdf\xff\x40\x7f\ +\xff\xa0\x12\x34\x6b\x72\x95\x43\xf2\xb3\xce\x39\x97\xb2\xc7\x94\ +\x1e\x57\xc5\x47\x3e\x29\x3e\xab\x30\xd6\xc4\x4c\x80\x26\x67\x61\ +\x09\x1b\x2a\xf7\x59\xe7\x20\x4f\x2d\x7f\x58\x34\xd6\xea\x1d\x18\ +\x8a\x1b\xc6\x74\x76\x9c\x76\xda\xa9\xb4\x71\x5b\x97\xef\x81\xf8\ +\xbe\x95\x1e\x76\xcb\x81\xf1\xc2\x61\xb7\xba\xf4\x2c\xa5\xff\xab\ +\x87\xdd\x52\x5a\xdc\xbd\x82\x03\x9a\xf1\x46\xa2\xff\xdf\x00\x85\ +\x4d\x60\xdf\x9f\x48\x3e\x7a\x4b\xbe\x87\x60\xf4\xf6\x3f\x17\x5c\ +\x8a\xe5\x6a\xba\xb8\x51\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\ +\x60\x82\ +\x00\x00\x08\xdd\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x60\x00\x00\x00\x55\x08\x00\x00\x00\x00\x93\x44\xbe\xfa\ +\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd\x7e\xfc\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd5\x03\ +\x03\x0f\x28\x2b\x21\x8f\xe2\xd5\x00\x00\x00\x02\x62\x4b\x47\x44\ +\x00\xff\x87\x8f\xcc\xbf\x00\x00\x08\x6e\x49\x44\x41\x54\x68\xde\ +\xb5\x59\x5b\x88\x24\x57\x19\xfe\xbe\xff\x54\x4f\x4f\xcf\x65\x67\ +\x76\x76\xa2\x4b\x82\x6c\x92\x85\x44\x9f\x64\x4d\x34\x3b\xe3\x85\ +\x40\x1e\x5c\x21\x0f\x01\x03\x89\x20\x08\x21\x5e\x30\xd3\x1b\xf0\ +\xb2\xa2\x71\x46\x10\x82\xf8\x20\x28\x44\x1f\x0c\x98\x18\x42\x0c\ +\x2e\xae\x04\x0c\x84\x3c\x24\x2f\x31\x18\x44\xcc\x4c\x54\x96\xc4\ +\xfb\x0d\x13\x33\xbb\xd3\x3b\x97\xde\x9e\xae\x3a\x9f\x0f\xa7\xaa\ +\xba\xab\xbb\xfa\xb2\x93\xf8\x33\x33\x7d\xea\xfc\xf5\xf5\xd4\xf9\ +\xcf\xff\xfd\x97\x53\xa6\x5c\x92\x44\x49\x36\x90\x92\x70\x9d\x24\ +\xc9\x5b\xd2\xcb\x20\xc8\x7b\xef\xbd\x97\xbc\xb2\x81\xf7\x0a\xd7\ +\x52\xaa\x3d\x90\x1e\x90\x89\xa2\x99\x99\x99\x73\xe6\xb2\x81\x99\ +\x0b\xd7\xce\x85\xb9\x83\xe9\x4d\x34\x8a\x3b\xe7\xd7\x37\x36\x36\ +\x36\xd6\xd7\x37\xd6\x37\xd2\xc1\xc6\xc6\x7a\xb8\x5e\x5f\x0f\x73\ +\x07\xd1\xbf\x7c\x7e\x9b\x32\x24\xf8\xc9\xa9\x2f\xaf\xd4\xeb\xf5\ +\xfa\xe9\x7a\xbd\x5e\x5f\x59\xa9\xd7\x4f\xd7\xeb\x2b\xa7\xc3\xcc\ +\xe9\xd3\xa7\x57\xea\x2b\x2b\xf5\x83\xe8\xcf\x9c\x7a\x12\x89\x41\ +\xd8\xba\xf3\xd9\x73\x4f\xbd\xfd\x72\xee\xd9\x3b\xb7\xc2\x1e\x58\ +\xbc\xbf\x37\x9e\x34\x9b\xcd\x66\xb3\x39\xe6\xcd\x7b\xfb\xb1\x89\ +\x46\x10\xcc\xf7\x29\xec\x10\xd3\x09\xa6\xbf\xd9\xd6\x51\x89\xf7\ +\x5e\x64\xba\xb5\x05\x7d\x19\x1e\x84\x49\x02\x47\x08\x40\xaa\xb5\ +\x7b\xa9\xd1\xb8\xd4\x68\x34\x1a\x8d\x4b\xdb\xcd\x98\xe4\x48\x1c\ +\x21\x19\x49\x8d\x12\x5a\xbc\xb3\xb5\x7d\x39\xf6\x22\x49\xf9\xb8\ +\xb5\x7b\xa9\xd1\xc2\x68\xa0\x48\x03\x80\xe2\xa3\xa0\xf3\x37\x0c\ +\x4d\x3b\x8d\xcb\x32\x23\x99\xde\x6c\x86\xf6\x76\x23\x71\xa5\x6b\ +\xe8\xe0\x01\xc0\x7a\xbf\xbe\x5b\x2c\xdc\xd9\xdc\xba\x0c\xa3\x84\ +\x5c\x24\x99\xc5\x8d\x3d\x03\x2c\xdc\x35\xd0\xb8\x96\xde\x3f\x64\ +\x95\xbb\xdb\x22\xa5\xf0\x40\xc8\x56\x2c\x11\x3b\xbb\x84\x86\xa1\ +\x01\x18\x84\x61\x9b\x05\x22\xee\xfd\xfa\xf4\x7f\x08\x6e\x77\xcf\ +\xa0\xa1\x0b\x90\x09\x12\x01\x08\x00\x18\x3e\x49\x20\x9b\x33\x88\ +\x22\x52\x03\xa9\xeb\x81\x29\xd8\xee\xbe\x41\x18\x84\xa7\x04\x23\ +\x49\x65\xf6\x16\x33\x8b\x1a\x49\x9a\x91\xf0\x1e\x0c\x98\x00\x25\ +\x08\x12\xa4\x28\x62\x17\xe9\xdd\x65\x78\x91\x1c\xcd\x83\xc4\x53\ +\xa2\xf2\x30\x0c\x28\x35\x97\x28\xdb\xbf\xec\xde\x22\x0f\x18\x4b\ +\xa4\xe7\xe4\xcc\xdc\xfc\xe1\xf9\x99\x09\x8a\xcc\xfd\x89\xe0\x65\ +\xc9\x8f\xe4\xc1\xd0\x3d\x6e\x13\x52\x6d\x61\x6e\x66\x72\x62\x62\ +\x72\xe6\xf0\x42\xd5\x83\x12\x25\x52\x12\xdb\x89\x0d\xdb\xe4\x94\ +\x07\xdd\xdc\x42\x11\xe0\x63\x52\xb5\xf9\x28\xdd\x5c\x54\x0e\xcf\ +\x2a\x20\xc2\x83\xf9\x36\x07\xe1\xd1\xe1\xc1\x20\x5f\x86\xd8\x4e\ +\x20\x4e\xc9\xa7\x76\xa7\xd7\xcc\x8c\xef\x70\x4e\xf4\x03\xe1\xc8\ +\x79\x50\x34\x12\x3a\x51\x4c\xe4\xbe\xa0\x89\x8a\xd2\xc7\x53\x92\ +\xc4\xed\x5a\xa4\x9c\xd6\x44\x12\xbc\xa5\x04\x0f\xe4\x3c\x50\xb6\ +\x65\x99\x27\x76\x76\xb1\x4d\xa2\xc6\xe0\xa9\x09\x27\x0f\x1d\xb9\ +\x6a\x7e\x76\x36\x16\x0b\x74\x65\x29\x5e\x39\x0f\xc0\x01\x2b\x20\ +\xdb\x6d\x2a\xaa\x0a\x24\x63\x5b\xac\xfd\xe3\xc5\xc7\x7f\xf4\xd4\ +\x2b\x5a\x9c\x4a\xc9\x31\xc0\x31\xba\xc2\x9e\x49\xc3\xa2\x09\x5b\ +\x09\xfc\xa4\x13\x21\x2d\xb4\xbe\xf7\xd1\x0f\xdc\x76\xcf\x67\xee\ +\x3a\xf9\xa1\x33\x2f\xcf\x77\xd8\x30\x2c\x16\xa5\x3c\xe8\x0d\xb5\ +\x61\x60\xa4\xa9\x32\x65\x6e\x4a\x24\x10\x9d\xfb\xc8\x17\x7e\xb9\ +\x0b\x73\xa6\xbf\x3d\x71\xe7\xb7\xab\x10\x04\x08\x8e\x34\x94\xe1\ +\x53\x66\xa7\xc6\x1b\x20\xaa\x2d\x5c\xb5\x18\x91\xf4\xb5\xd7\xee\ +\x7e\x2d\xaa\x44\x0e\x89\x07\x9d\x1e\xfa\xca\x74\x88\xb1\x72\xc3\ +\x48\x94\xf2\x60\xb0\x91\xe0\xbd\x45\x92\xa4\xe8\xdf\x8c\xe2\x76\ +\x9c\x78\x18\x94\x28\xfa\xd9\xcf\xe7\x12\x11\x62\x65\x88\x81\x32\ +\x1e\x0c\x0f\xd8\x22\x49\x54\x5e\x55\x5c\x5d\xfa\xd4\x27\x4f\xd0\ +\x13\x40\x82\xef\xef\x3a\x01\xaa\x54\x34\x84\xc7\x59\x3e\xc8\x8d\ +\x64\x34\x18\x0d\x85\xa0\x48\x12\xf4\x2f\xe1\xe6\x97\x9f\x7b\xe4\ +\xb1\x17\x5e\x7c\x9f\x08\x08\x7f\x3c\x3f\x29\x51\x35\xd7\x6d\xfc\ +\x02\x1e\x79\x3e\x18\x43\x2a\x9b\xbf\xc2\x03\xef\x6e\x6c\x6e\xee\ +\xdd\xf4\xcc\x8d\x61\xe9\xe7\x27\x44\x5f\x99\xf6\xc3\x73\x9a\x71\ +\x2c\xd1\xd4\x6f\xfe\x79\xc3\xad\x17\x2a\x51\xe4\x2e\x1c\xb9\x17\ +\x04\x88\x2d\x93\x70\xc8\x69\x38\x32\xe4\x03\xa5\xb6\x40\x2f\x4d\ +\x72\x73\x46\x2f\xe1\xde\x79\x6f\x04\xaa\xaf\xdf\x08\x0f\x08\x15\ +\xd1\xcf\x4e\xcb\x82\x65\xfa\xf1\x21\x11\x86\x7c\x30\xaa\xc2\x81\ +\xbb\xf4\xb9\xe7\xef\xda\x89\x24\xb9\x66\x73\x3f\x04\xc8\x6b\x13\ +\x3f\x33\xe7\x87\x60\xa9\x1e\x1e\x80\x25\x8c\xcb\x9e\x66\xfa\x83\ +\xf3\x31\x29\x8b\x37\xab\xbf\x85\x01\x98\x7e\xcf\xde\xec\x61\x05\ +\x6c\x39\x3e\xe7\x41\x27\xb2\x15\xc7\x9d\x6b\x81\x7e\xc7\x13\x30\ +\x5e\xd0\xde\x59\x08\x91\x3e\xfe\xae\x89\xc5\x3c\x55\x97\xe2\x91\ +\x15\x5e\xe3\xac\x80\x74\x04\x60\x8d\xed\xc5\x27\x5e\x35\xb9\xf8\ +\x58\x3d\x5a\x14\xfa\x8b\xc1\xfe\x15\x68\x18\x93\x7b\xc4\xed\x5d\ +\x9c\xfb\xc3\x77\xe8\x5d\x72\xf5\x8f\x8f\x4f\x69\x44\x75\x0a\x31\ +\xcf\x07\x19\xab\x42\x8c\x83\x15\xc9\x93\x2f\xa2\xbd\x19\xb5\xef\ +\xdf\x86\x4b\x8e\x3f\x7e\x33\xb3\x95\x5b\x57\xa5\x59\xc0\xe7\xf9\ +\x60\x74\xfd\x9e\xad\xfb\x42\x3c\xb7\xfa\x7b\xc7\xe4\xe4\xb9\x5b\ +\xda\x63\x30\x08\x0a\x3c\xe0\x98\x06\xb2\xc6\xce\xc2\x63\x67\x9d\ +\xfc\x1d\x4f\x1e\xdf\xb7\x71\xcc\xca\xc0\x03\x14\x36\x08\xbd\xad\ +\x47\x16\x7a\x5d\x6b\x6b\xfa\xaf\x0f\x9a\xfc\xe7\x1f\x3e\x12\x5b\ +\x9f\xbe\x0c\x8f\xde\x7c\x60\xec\xa2\x65\x5f\x70\x6f\x24\xb5\xef\ +\xee\x9a\xff\xe6\xb7\xaa\xde\x86\xd4\xfb\x39\x3e\xe7\x81\xc6\xf2\ +\x22\xdb\xdb\x9d\xfe\xd3\x2f\x18\x9f\xf9\x52\x5a\x73\x8d\x14\x48\ +\x69\xc2\xe9\x2b\x5b\xca\x76\x5d\x3b\xbe\xba\xde\xd2\xf2\x57\xdb\ +\x23\xda\xb3\x1c\x0f\x30\xf0\x40\xc5\xda\x9f\xe8\x6b\x06\x00\x58\ +\xdc\x32\xdb\x02\xeb\xf3\xdd\xc5\x69\x99\x74\xf0\x54\xe0\x01\x8a\ +\x4d\xc4\x80\x15\xb4\x12\x26\xef\xc4\xc4\xfb\xdb\xc6\xe1\x11\x3a\ +\xc7\x0b\xc8\xfb\x03\xa8\xa7\x7c\x09\x13\x5d\x33\x68\xcb\xf6\x6e\ +\x79\x47\xeb\xc5\x8a\x17\x4a\xf4\xfd\x78\xe4\xfd\x41\xe6\xae\xa1\ +\x7d\x30\x4b\x29\x49\x2a\xb4\x96\xc1\xe6\x09\xd9\x5e\xfc\xf4\x0d\ +\x93\xed\x32\x3d\x4b\xf0\x81\x60\x63\x66\x34\x92\x06\xb9\xad\xcf\ +\xbe\x74\x47\xd3\xf1\x4a\x24\xad\xae\xa9\x4e\x64\x05\x40\x18\x40\ +\x58\x57\xd0\x65\x24\x02\x47\xe7\x2b\x87\x7c\x70\x8e\x82\x1e\xa5\ +\xf8\x6c\x52\x69\x0b\x97\x56\xac\x04\xd3\xa2\x4d\x59\x67\x07\x51\ +\x11\xbd\x9b\x78\xf8\x9e\xfb\x9e\x9b\x91\xd0\xab\x47\x29\x1e\x2a\ +\x36\x20\xc1\x39\xf2\xe0\xda\x55\xc3\x93\x52\xd5\x11\xf7\xdf\xf7\ +\xc8\x0f\x6e\x7b\x68\xc6\x17\x78\xa0\xe2\xa0\x83\x4f\x1b\x90\xd0\ +\x27\xe4\x19\x2c\x53\x04\xfe\xe5\x4f\x68\xaa\x56\x67\x7f\xf8\x4c\ +\xc5\x45\xac\xff\xba\x26\xf6\xea\x4b\xf0\xa1\xb3\x31\x21\xf5\xa7\ +\x3c\x2f\x81\xa5\x67\x17\x3a\x72\xf1\xa7\x6c\x27\xb1\xc3\xc3\xce\ +\x97\x26\xbf\x5e\xbc\xd8\xe1\xc1\x18\x91\x37\x99\xe5\x7f\x05\x40\ +\xfc\x8b\x6c\xac\xf0\xde\xcd\x83\xee\xb3\x8f\x9e\x46\x22\xab\xcd\ +\xac\x75\xc3\x71\x3a\xc0\x74\x13\xd3\x28\x5f\xd0\xf7\xe1\x79\x85\ +\x3c\xa0\xaf\x7e\x51\x89\x59\x7b\x61\xa5\xed\xae\x98\x07\xe3\x04\ +\x5f\xdb\xbb\xe7\xc1\x59\xef\xdf\xfb\xf4\x35\xed\xf1\x4c\xd4\xe1\ +\x41\x5f\xf4\x45\x4f\xf5\x11\x4c\x51\x69\x7d\xed\x77\x4f\x3f\xff\ +\xc2\xc9\xa6\xa9\x44\x5f\x76\x26\x55\x9e\x0f\xfa\x12\x54\xf0\x0d\ +\xb7\xff\xc6\xbf\xce\xf3\xc3\xb7\x4e\xee\xb9\x42\xbd\x61\xc3\x8e\ +\xfa\x52\x1e\x8c\x61\x22\xf0\xcd\xbf\x5f\x6c\xc6\x5b\x7f\x7e\xe5\ +\x8d\x08\x63\xd6\x51\x50\x0f\x0f\x38\x70\x29\x04\xff\xf3\x26\x9d\ +\x59\x34\xe1\x36\x5f\x1f\x7e\x3c\xd9\xed\x45\xc8\xfb\xe4\xfc\x18\ +\xab\xa7\x11\xcf\x48\x1a\x5d\x6c\x44\x14\x20\x21\xda\x6a\xb8\x3e\ +\x7d\x29\x3e\xef\x93\x35\x72\x05\xd6\xba\xe0\x20\x42\xa4\x60\x9b\ +\x6d\xd3\x78\x2b\xc8\x78\x30\x92\xc9\xdc\x8e\x99\x66\x6e\xca\xe2\ +\x5d\x62\x7c\x26\x17\xaa\x6b\x4b\x9f\xc2\xc2\xea\x3a\x4e\x77\x39\ +\x14\xc8\x0c\xfe\xd0\x64\x41\xdf\xa9\x83\x8a\xf8\x4e\x5d\x84\x51\ +\xc5\xa9\xe2\xfc\xa0\x16\x04\xe3\xf1\x8a\xd9\x4e\x3e\x18\xe5\x76\ +\x85\x8d\x14\xc0\x71\xdd\xb4\x53\x17\xa5\x2b\x85\xa5\x47\x8d\x9d\ +\xca\x32\x90\x38\x52\xf7\x81\xe9\x04\x8b\xfa\xdc\x52\xbd\xf8\x3e\ +\x1e\x0c\x94\xe9\x8e\x1f\x00\x9c\x1d\xcf\x44\x63\xe7\x03\x28\x39\ +\x34\xe9\x99\x9d\x08\x24\xd3\x53\x1e\x57\x96\x0f\x3a\xe1\x0e\xa5\ +\x5c\x30\xb8\xa3\xf0\x69\x58\x4b\xdc\xd1\x92\x5b\xca\xf0\x42\x5f\ +\x3e\xb0\xbe\x51\xfa\xe9\x67\xae\x61\x2c\x00\x3e\x9e\x38\x36\x89\ +\x3e\xfd\x40\xfc\xb8\xf9\x80\xc9\xdc\xf5\x0b\xe6\xbd\xaf\x2c\x5e\ +\x57\x4b\xc6\x6c\x89\x3a\xc5\x12\x86\x56\xcb\x41\x7c\xf5\xea\xeb\ +\x8e\x5d\x7b\xec\xfa\xa3\x96\x8c\x73\x7b\xfe\xad\xe1\x1f\x64\x27\ +\x26\x3e\x0d\xdd\x69\x2d\xec\x25\xc9\xfb\x74\xa3\xdb\xd1\x54\x6d\ +\x0a\x6d\x0d\xd0\xf7\xe1\xe5\xb3\xf3\x22\x4d\xba\x5a\x14\x45\x95\ +\xf4\xa7\x52\x89\x82\x54\x2a\x51\x14\x55\x2a\x61\x3e\x8a\x26\x9c\ +\x39\x8b\x26\x06\xea\x7b\xf1\x35\x37\x99\xf2\x60\xf6\xd1\xdb\x4f\ +\x7d\xec\xed\x97\x53\xb7\x3f\x3a\x2b\x18\x23\x7e\xe2\xec\xd7\xbf\ +\xb1\xb6\xb6\xb6\xba\xba\xb6\xba\xb6\x16\x06\x6b\x6b\xab\xe1\x7a\ +\x75\x35\xcc\x1d\x40\xbf\xf6\xc0\xd9\xbb\x19\x99\xa8\xb9\x13\x27\ +\x97\x96\x96\x96\x96\x97\x97\x96\x97\xd2\xc1\xd2\xd2\x72\xb8\x5e\ +\x5e\x0e\x73\x07\xd1\x2f\x9d\x98\x0f\x6f\x63\x95\x24\x49\x92\x24\ +\x71\x9c\xc4\xd9\x20\x49\xe2\x70\x1d\xc7\x61\xee\x60\x7a\x4f\x19\ +\x08\x3a\xe7\x9c\x73\xe1\x1d\x70\x18\x84\x77\xc3\xe1\x05\xb1\x73\ +\x07\xd6\x03\xb4\x42\x42\xcd\x5f\xd4\xa4\xbd\x62\xfe\xba\xed\xc0\ +\xfa\xc2\x81\xd4\xff\x45\xfe\x07\x6b\x56\xad\xc0\xb4\x6e\x5e\x96\ +\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x20\x68\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x60\x00\x00\x00\x54\x08\x02\x00\x00\x00\xf2\x11\xa5\xd4\ +\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd\x7e\xfc\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd5\x03\ +\x03\x0f\x29\x0a\x74\xfd\xc3\xca\x00\x00\x00\x06\x62\x4b\x47\x44\ +\x00\xff\x00\xff\x00\xff\xa0\xbd\xa7\x93\x00\x00\x1f\xf5\x49\x44\ +\x41\x54\x78\xda\xed\x5c\x09\xb8\x14\xd5\x95\xae\x5b\xbd\xbc\x7e\ +\xfb\xc6\x5b\x58\x1e\xbb\x6c\x42\x82\x80\x28\x51\x31\xe2\x46\x40\ +\x05\x07\x51\xa2\x66\xe2\x12\x10\x9d\x44\xcc\x0c\x44\x13\x17\x70\ +\x41\x8d\x4b\x12\xe7\xcb\xa2\x49\x8c\xc6\x49\x26\x8e\x1a\xa3\x64\ +\x12\x26\x01\x13\xe5\x53\x42\x08\x71\x62\x36\x0d\x10\x40\xe1\xf1\ +\xf6\xfd\xf5\xeb\xb7\x74\xf7\x9d\xff\xde\x73\xef\xad\x5b\x55\xfd\ +\x88\xe6\xd3\x2f\xc9\x37\x96\xd8\xaf\xba\xba\xea\x56\xd5\xa9\xb3\ +\xfc\xe7\x3f\xe7\x16\xcb\x66\xb3\x8e\xe3\xa4\xd3\x69\xd7\x75\x39\ +\xe7\x58\x67\x8c\x39\x7a\xc1\x16\xfb\xab\xd9\x48\x2b\xe6\x27\xb3\ +\x5b\x78\x7f\x7b\xcb\x3f\xd6\xf8\x58\x8f\x44\x22\x2c\x93\xc9\x40\ +\x34\xce\xfb\x4b\xae\x45\xc8\x0b\x1a\x34\x34\x34\xb4\x7e\xfd\x86\ +\x68\x34\xce\x79\x16\xb2\x65\xf8\xcf\x21\x19\x33\xee\x70\xf9\xd5\ +\x7f\x98\xfc\x55\x6e\x65\x66\x8b\xfe\xca\xad\x4f\x79\x0a\x35\xa0\ +\xde\xd1\xdb\xed\xef\x76\x7c\x07\x1a\x93\xce\x64\x2a\x2b\xcb\x6f\ +\xbd\xe5\x96\x28\x34\xaa\xa7\xa7\xbb\xbb\x27\x75\xed\x75\xd7\xf5\ +\xf7\xa7\x84\x82\x31\x07\x82\x12\xc7\x30\x97\xe1\x6f\x4e\x15\x65\ +\xde\x09\xb8\xdc\x84\xbd\xf4\xbe\xa4\xa4\xcc\x68\xb3\xf8\xce\xcd\ +\xb5\x8b\x9d\xb4\x92\x8b\x0b\xf2\x59\x04\xdd\x93\x93\x6b\x7c\x39\ +\x70\x50\x40\xef\xc1\xf8\x38\x34\x12\x71\x93\xc9\xbe\xa7\x9f\x7a\ +\x1c\xc7\x46\xc9\xea\x4a\x4b\x4b\xcb\xcb\xcb\xfa\xfb\xf3\xe8\xfe\ +\xe2\xb1\x68\x24\x16\xe7\x99\x6c\x26\x93\x66\x96\x01\xc2\x5d\xb9\ +\xf2\x04\xfa\xa4\xea\x04\xd0\x43\x1c\x16\x8b\xc7\xd3\x69\xa8\x23\ +\xa4\x0f\x8f\x16\xf1\x84\xc9\xcc\x75\xa8\x1b\x90\xba\x8b\x6b\x95\ +\xb7\x9a\xeb\x06\x82\xe3\xd3\x0d\xb3\x5c\x1a\xf4\x6e\x8f\x4f\x02\ +\x8a\xc7\xf3\x4a\x8a\x8b\xb1\x2d\x4a\xa3\x43\x12\x99\x74\x06\xae\ +\x3a\x1a\x89\x42\x22\x47\x8e\xd4\x37\xb7\x34\x15\x17\x95\x14\x14\ +\x14\x64\x49\xba\xea\x04\x2c\x74\x02\xa5\xe4\x99\xf4\x50\x5b\x7b\ +\x5b\x45\x45\x65\x55\x55\x75\x7e\x41\x7e\x7f\x7f\xbf\xcb\x5c\xf5\ +\xb4\xe8\x20\x47\x3e\x4e\xf3\x84\xe5\x0d\xf0\x61\x9e\x70\xe0\x06\ +\x86\xd3\xa0\xf7\x62\x7c\x71\x3f\x9c\x43\x1a\x58\x84\x80\x8c\xeb\ +\xc6\x80\xb8\x25\x7c\xfd\xe2\x17\xee\x2e\x2b\x2d\x6a\x6b\x6b\x2d\ +\x2e\x2e\x2e\x2c\x2c\x82\x93\x0a\x07\x02\x1a\x8d\x73\xf3\xc9\x20\ +\xdc\xc6\xc6\x86\xda\xda\x91\x10\xee\xaa\x8f\x5e\x35\x6d\xda\x0c\ +\x61\xb0\x42\xfb\xbc\x4b\xd4\x7a\xcd\xf4\x17\x16\x08\x3a\xcc\x1a\ +\xdc\x7c\xd3\x6a\x40\xba\xc0\x02\x3b\xbe\x07\xe3\x4b\x69\x30\x35\ +\x58\x94\xcc\x95\x4b\xb9\x42\x1c\xbf\xf8\xc5\xcb\xe5\x65\x85\x0f\ +\x3c\x70\xff\x5f\xed\xf9\xb7\x6e\xfd\xd1\x4f\xb7\x6d\x9f\x33\x67\ +\x5e\x2a\x95\x74\x85\x45\x7a\x97\xae\x1e\x37\x7d\xe7\xc6\x6f\xf8\ +\xfd\x9b\x72\x94\xcc\x3c\x72\x63\x3d\xe1\xa7\xe4\x79\xe3\xf7\x60\ +\x7c\x31\x02\xe7\x51\x5b\xa4\x08\xfb\x70\xd8\x33\x67\xce\x84\xd6\ +\x3c\xf6\xd8\x63\xbb\x77\xef\x86\x5e\xd0\x43\x70\xe5\x22\xff\x32\ +\xfd\xa9\x16\x1a\x00\x9b\x8a\x8a\x8a\x36\x6c\xd8\x50\x53\x53\x5b\ +\x58\x58\x08\xf7\x65\x7e\x25\x27\xaa\x6e\x48\x1f\x60\x3d\x4c\xe6\ +\xf8\x6c\x20\xb0\x31\xd7\x8e\xdc\xb1\x43\xd3\xbb\x3e\x3e\x5d\x39\ +\x79\x96\xa8\xde\xc4\x49\xa9\x24\x26\x82\x7c\xb2\x8f\x3f\xfe\xf8\ +\x39\xe7\x9c\x53\x52\x52\x92\x48\x24\xf2\xe5\x42\x2b\x79\x79\x79\ +\xf4\x89\x25\x1e\x8f\x47\xa3\xc2\x8b\x0d\x0e\x0e\xc2\x1e\x37\x6f\ +\xde\xfc\xca\x2b\x3b\xc7\x8c\x19\x25\x61\x67\xc4\x92\x8f\xe7\x35\ +\x48\xf1\x85\x77\x70\xe9\xa1\x73\xfb\x57\x13\x91\xac\x8d\xcc\xe8\ +\x03\xb3\x7d\x10\xf3\x54\xe0\x6d\x8c\x1f\x10\xe6\x5f\x18\xdf\x7e\ +\xf6\x51\xbd\x26\x47\xd5\x36\x0e\xff\x34\x72\xe4\xc8\xaa\xaa\xaa\ +\x58\x2c\x96\xaf\x17\x12\x50\xc2\xbf\x18\x01\xc1\x9d\xcf\x9b\x37\ +\xaf\xb3\xb3\x63\x6c\xdd\x18\x69\xc6\x5c\x9c\x55\xc6\x15\x11\x5a\ +\x18\xb7\x40\xac\x44\x11\x59\x2e\x51\x04\x9e\x93\x2b\x1d\x99\x00\ +\xf4\xd8\xee\x2a\xc7\xe1\x2a\xbc\xa2\xfc\x89\x89\x14\xf2\x78\x66\ +\xbe\xe5\x18\x9f\xf4\x89\xa9\x98\xcf\x6d\x5d\xd3\xa0\x88\x1b\x8b\ +\xcc\x39\xbe\x43\x17\x2f\x85\x2b\x7c\x90\x74\xd2\x9e\xdc\x70\xad\ +\x84\x1e\x21\x26\xdc\x3f\xa7\xef\xd9\x2c\xd7\x8b\xb1\x29\x2c\x50\ +\x22\x1c\x42\x70\x1c\x87\x40\xa0\xc6\xb8\x7c\x26\x26\xd4\x52\x0c\ +\x14\x8d\xc6\xa0\x79\xb1\x58\x1c\x01\x01\x98\x40\x9a\x39\xcf\x66\ +\xb2\xb1\x78\x4c\x98\x6e\x24\x02\xe1\x61\x9c\x81\x81\x7e\xa8\x21\ +\x2e\xd2\x8d\x32\xcb\x9b\x7a\xd6\x63\xc3\x3f\xbf\x55\x31\xc6\xbc\ +\x9d\x82\x26\x16\xd8\xc9\x78\x74\xdf\xf8\x5a\x14\x22\xfa\x73\xd2\ +\x20\x85\x1b\x54\xd8\x53\x22\x0b\x5f\x81\x13\xd8\x42\xe3\x90\x43\ +\xa2\xaf\x4a\x8c\x5a\x15\xf1\xa3\xb8\xfd\x4c\x06\x3b\xc1\x31\xc5\ +\xa3\xb1\x8e\xce\x8e\x83\x07\x0e\x1f\x3a\x74\xa0\xa1\xe1\x68\x47\ +\x57\x27\x76\x84\xd2\xa5\xfa\x52\xc0\x07\x03\xfd\x29\x04\xc1\x9a\ +\xaa\x9a\xd1\x63\xea\x26\x4e\x9a\x52\x5e\x51\x81\x01\x93\xc9\x5e\ +\xc8\x8b\x01\x99\x68\xad\xe0\xf4\xbc\xb5\x50\x08\x2b\x13\xf2\x73\ +\xb3\x58\xc9\xe2\xaf\xd0\x45\x28\xa6\xe3\xb8\xb4\x8f\xb6\x48\x5c\ +\xa0\xd4\x54\x6c\xc1\x15\x79\x9e\x0b\xda\x6c\xc6\xd4\xd0\x9c\x51\ +\x30\x8b\x6a\x3b\x95\xa6\xcb\xd4\x4d\xe2\x96\xb8\x7f\x31\x82\xa3\ +\x05\x0a\x25\x90\x53\x3a\x0d\xe3\xa2\x5c\x57\x1f\x22\xc5\xa1\x55\ +\x32\x2d\x74\x30\x52\x51\x51\x01\xf4\xf8\xda\x6b\xaf\xbe\xf8\xe2\ +\x0b\xcd\x6d\x2d\xed\x1d\x6d\xc5\x65\xe5\x23\xaa\x6b\x26\x4c\x9d\ +\x82\x71\xa6\x94\x95\x97\x57\x8e\x80\x42\x75\x77\x75\xb5\x34\x35\ +\x1e\x68\x3c\xba\x63\xcf\x2e\x9e\x4e\x8f\xae\x1d\x39\x73\xfa\xcc\ +\x13\xe7\x2f\xa8\xae\x1d\x99\xec\xed\x49\xa5\xfa\xa0\x7d\x8e\xca\ +\x09\x5c\x65\x2a\x52\x36\x8e\x14\x89\x30\x37\xd7\x51\x32\x11\x66\ +\xab\xa0\x22\xb3\xb5\x84\xbb\x24\x04\xf2\x36\x9c\x29\x68\xe5\x7a\ +\x6a\xaa\xf5\x53\x23\xa4\xa8\xf2\xd0\x8e\xd6\x2a\x6d\x62\x61\x89\ +\x18\x5b\x23\xd1\xe0\xc1\x42\x77\x84\x38\x18\xc3\x3a\x8c\x11\x1b\ +\x61\x3b\x84\x9b\x68\x04\x78\xb1\x8e\x8e\xf6\xaf\x7e\xe5\x4b\xcf\ +\x3e\xfb\x14\x74\x07\xa2\x58\x74\xe6\xb9\x93\x26\x4c\x82\x58\x71\ +\xc3\x47\xde\x78\x03\xb8\xf4\x28\xe7\x2d\x6d\x2d\xa5\x95\x55\x13\ +\xa6\x4e\x9d\x3e\x7b\xce\x29\x95\xe7\xf4\x25\x93\xcd\x4d\x8d\xcd\ +\x8d\x0d\xaf\xec\xd9\xbd\x65\xeb\x0f\xa7\x4f\x9e\x72\xde\xf9\x17\ +\x1e\x37\x65\x5a\x67\x67\x67\x26\x3d\x18\x11\x62\x0a\x45\x31\xeb\ +\xe6\x2c\x83\x0c\x1a\x63\xf8\x10\x7f\xcc\x0b\x98\x98\xc6\x41\x5c\ +\x7a\x02\x21\x2f\x2e\xdd\x9a\x25\x14\x12\x07\x16\xb3\x62\x44\x23\ +\x45\xc9\x69\x05\x5b\x00\x11\x8c\xde\x61\xa5\xb4\xa4\xb4\x3f\xd5\ +\x0f\xd1\x7c\xfb\xdb\xdf\x00\x2a\x5d\xb1\x62\xd5\xc2\x85\x67\x8c\ +\x1a\x3d\x06\xa6\x94\xc8\x4b\x88\x87\x1d\x75\xe9\x0a\x80\xb9\xeb\ +\x8f\x1c\x3e\xf0\xe7\x7d\x87\xde\x3a\xf4\xc8\x0f\x9f\xaf\x1c\x5d\ +\x37\x67\xc1\xa9\x93\xa7\x4e\x2b\x28\x2c\x9e\x38\x65\x5a\x57\x67\ +\xc7\x6b\x7b\x76\x6f\xda\xbc\x71\xf6\x8c\x99\x9f\x58\x7d\x5d\x79\ +\xc5\x88\x8e\xf6\x76\x89\x38\x88\x9c\xb1\xb0\x8e\x46\xd3\xe4\x9c\ +\xfd\xd9\xa9\x95\x95\x9a\xec\xd4\x24\x08\xdc\x8f\x83\xb8\xf7\xcf\ +\xc6\x41\x64\x5f\x42\xf7\x70\x9b\x59\xbd\x18\xd1\xa4\xf5\x42\xbe\ +\x99\xf4\xcb\x50\x25\x52\x77\x62\x10\x13\xf6\x85\x76\x94\x97\x95\ +\xbf\xf2\xca\x8e\x1b\x3f\xb3\x0e\xc8\xe8\xf6\xdb\xef\x3d\xe5\xd4\ +\xd3\x85\xbc\x06\xfa\x87\x86\x06\xf1\x5f\x5f\x5f\x52\xe7\x05\x52\ +\xc4\x91\xc8\xd8\xf1\x13\xa6\x4c\x9d\x06\x87\xd5\xd2\xdc\xb8\x63\ +\xc7\xcf\x5e\xdc\xf2\xfd\x97\x12\xf9\x1f\x59\xb1\xaa\xbc\xbc\x02\ +\x17\x7f\xca\xa2\xb3\xe7\x7e\xe8\xb4\xed\xff\xfd\xdc\xf5\x37\x5c\ +\xbb\xf2\xc2\x95\xe7\x2f\x5b\xd1\xdd\xdd\x8d\x13\x09\x24\x41\x89\ +\x8e\x36\x37\xd7\xe4\xf3\xc2\xc2\x28\xdb\x08\x26\xfb\xcc\x00\x67\ +\xe5\x54\xb4\xf7\xd5\x08\x52\x8b\xc2\x09\xe0\x20\x66\x45\x31\x65\ +\x50\x24\x1d\x23\x1a\xa3\x38\x66\x1f\x68\x0d\x09\x08\x7b\x42\x40\ +\xd0\x85\xca\xca\xca\xea\xea\x9a\x27\xfe\xe3\x5b\x55\x5b\x7f\xb8\ +\xee\x86\x0d\x4b\x96\x5c\x00\xaf\x98\xec\xed\x6d\x6d\x6d\x41\xe0\ +\x76\x29\xf1\x45\xa8\x62\xda\x73\xca\xcf\xa1\x41\x44\xad\x14\xae\ +\x2f\xbf\xa0\x60\xc5\xca\x4b\x2f\x58\x76\xd1\xb3\xcf\x7c\xef\xf1\ +\x07\xef\x9e\x71\xd2\x29\x67\x2e\x5d\x06\x95\xc1\xe9\x96\x5e\xf4\ +\xd1\x96\xc6\x86\xef\x7f\xf7\xf1\x5d\xbf\xdc\x79\xcb\xad\x77\xba\ +\x91\xbc\xbe\x64\x2f\xec\xda\x67\x2f\x8e\x6d\x5d\xcc\x78\x66\x27\ +\x14\xc6\x4c\xaa\xc1\x1c\xe6\xf8\xfd\x8f\x25\x0d\xc7\xb8\x34\xa5\ +\x66\x7a\x55\x05\xf5\xb4\xb5\x0c\xe9\x65\x50\x2f\x03\x72\x81\x50\ +\x52\xa9\x14\x3e\x7b\x7b\xc5\xe5\x1e\x3c\x78\xf0\x9a\x6b\xae\x19\ +\x3f\x6e\xe2\x7f\x7e\xef\xb9\x25\x4b\xce\x47\x84\xea\xee\xea\x16\ +\xcf\x01\xbe\x1a\x11\x1b\x76\x41\x0e\x8f\x00\x8c\xe1\x28\x18\xc2\ +\x14\x96\x28\xce\xda\xd9\xde\x9e\xec\x4b\x5e\x7a\xf9\x95\x0f\x7f\ +\xf9\x9b\xbc\xbd\xe5\x9b\x5f\xb8\x57\xe8\x58\x2c\x0e\x97\x94\x28\ +\x28\x58\xb3\xfe\x73\xac\xa2\x72\xed\xda\x2b\x1b\x8f\xd6\x97\x57\ +\x54\x22\x36\x48\xc4\x64\x82\x34\xe3\x0a\xec\xf8\xc6\xb7\xa5\xc3\ +\xb8\xe7\x7c\x98\x45\x0c\x71\x29\x02\xce\xfc\x96\x29\x75\x31\xb8\ +\x40\x38\x64\x5f\x01\xe9\x18\xa1\x90\x5c\xe8\x93\x56\x20\x23\xdc\ +\x5f\x5f\x5f\xdf\x93\x4f\x3e\xb9\x60\xc1\xc9\x67\x9e\x75\x36\xbe\ +\xb6\xb5\xb5\x09\xb9\x44\x22\xec\x9d\x2c\x52\x94\x2e\x52\xe5\xc2\ +\xa2\xa2\xfb\x1f\xfc\xca\x05\x67\x9c\xf9\xf0\xdd\x1b\x9b\x9b\x9b\ +\xf3\x0a\x8a\xc0\xd1\x34\x35\x36\x9e\xbb\x7c\xe5\x89\x8b\xcf\xfb\ +\xd4\xa7\xaf\xdb\xf9\xf2\x4b\x95\x23\xaa\x70\x75\xec\xbd\x5c\x74\ +\xb2\x1a\x32\x31\xc2\x8a\x3a\x05\x63\x86\xb2\x95\x90\x2f\x4b\x77\ +\x6e\x5c\x35\xe0\xe2\x4b\x2f\xbd\xf4\xd0\x43\x0f\x3d\xf0\xc0\x83\ +\x33\x67\xce\x78\xea\xe9\x2d\xa4\x35\xf2\x41\x65\xd5\x43\xce\xaa\ +\x38\x2b\xbe\x00\xb0\xb8\x12\xaa\x70\x7f\xb6\x9d\x75\xb2\xae\x70\ +\x9f\xb1\x58\x14\x67\x69\x6a\x38\x7a\xf9\x15\xab\xc7\x8c\x19\x7b\ +\xcf\x17\x3f\x7f\xfe\x95\xd7\x8e\x1c\x3d\xa6\x1f\x01\xae\xb1\x69\ +\xda\xac\x13\x46\x8d\x1d\xb7\xf9\x81\xbb\xff\xad\x2f\x75\xee\xd2\ +\xf3\x5b\x9a\x9b\x61\xe0\xef\x68\x7c\x01\xf4\x61\x3d\x84\x99\x8c\ +\x07\xc7\x85\x66\x19\xfd\x2c\x0f\x75\x14\x50\x14\x7e\x8a\x7b\xbe\ +\xdb\x44\xf4\x9c\x02\x12\xc7\xc8\xc5\x38\x20\x32\x46\xe8\xcb\x92\ +\x25\x4b\xf0\xad\xa3\xa3\x43\x6a\x0d\x9d\x91\x20\x3c\x3d\x03\x0d\ +\x58\xc8\xa1\x1a\x12\xc1\x56\x6a\x91\xfe\x9b\xa0\x02\x31\xc5\x9b\ +\x9b\x1a\x4e\x5f\x74\x56\x65\xd5\x88\x75\xeb\xd7\x5d\xb8\x66\x5d\ +\xed\xa8\x51\x50\xd7\xce\x8e\x8e\xa2\xa2\xe2\x35\x37\x6d\x7c\xf0\ +\xde\x4d\x91\x58\x64\xd1\x59\x8b\xdb\xdb\x5a\x81\x92\xb8\x18\xe0\ +\xed\x8e\x2f\xd1\xa2\x2f\x0f\x71\xd5\xff\x5c\xfe\xe5\x12\xcd\x19\ +\x03\xce\xa5\x41\x83\xfe\xc5\x18\x17\x2d\x29\xbd\x60\xbd\xab\xab\ +\x6b\xc1\x82\x05\x23\x46\x8c\xc0\x0e\x42\xa0\xfe\x01\xff\xea\x05\ +\x97\x0f\xdd\x6c\x6d\x69\x9e\x3e\x63\xd6\xfd\x9b\xef\x7b\xf6\xeb\ +\x0f\x35\x1e\x3d\x0a\x1c\x04\x22\xab\xa7\xb7\x37\x16\xcb\xfb\xc4\ +\x86\xdb\x3e\xff\xa5\x07\xf6\xec\xfe\x05\xe2\x5d\x26\xf3\x2e\xdb\ +\x1a\x79\x72\x97\xe4\xcd\x7d\x4e\x9a\x1b\x0d\xb2\x5d\x4f\xc0\x07\ +\x05\x96\xd6\xd6\x56\xf8\x69\x48\x46\xa0\x21\x5b\xab\x79\x20\x80\ +\x70\x0f\x6d\x84\x10\x9c\xab\xc9\x3e\x6e\xc5\x8d\x78\x5e\xbc\xb3\ +\xb3\xfd\x84\x79\x27\xdd\x7b\xfb\xe6\x2d\x8f\x7d\xad\xaf\xbf\x9f\ +\xec\x35\x99\x4c\x22\xea\x5d\xf1\xe9\x1b\xef\xb9\xff\xee\x86\xa3\ +\x47\xf2\xf3\x0b\xb9\xc0\xa8\xef\x78\x7c\x8b\xea\x77\xec\x8c\x55\ +\x01\x06\x91\x39\x51\x8a\xef\xfa\x92\x55\x22\x09\xc3\x1a\x14\x50\ +\x22\xb3\x8e\x1d\x08\x19\xc8\x01\xb9\xa7\x03\xe6\x89\xb8\x06\xab\ +\xdb\x1b\x7c\x51\x42\x78\x10\xef\x01\xaa\x2f\xb8\xb8\x78\x2c\xde\ +\xde\xd6\x72\xca\xc2\x45\x6b\xaf\xb8\xea\xf9\x27\xbe\x11\x4b\x14\ +\xe0\xc9\x71\x51\x6e\xe8\xa9\x1c\x51\xbd\x60\xc9\xb2\x4d\x9b\x6e\ +\x06\xfd\x42\x3b\xbf\xd3\xf1\xc5\x3e\x8e\xa5\x36\xd6\x35\x0a\x98\ +\x26\xff\xd8\x6a\x05\x15\x10\xb2\x83\x46\xc0\x9b\x40\x04\x7d\xa1\ +\xc5\x6c\x0c\xfc\x8a\x18\x0f\x3a\x84\x92\x0f\xdf\x09\xb5\xc2\xb2\ +\xc0\x85\x0c\xab\xda\xc1\x75\x5c\x0f\xfc\x51\x53\x63\xc3\xc5\xab\ +\x3e\x36\x6b\x6c\xdd\x8b\x5b\xb7\x14\x96\x94\x41\xb7\x1d\x37\xd2\ +\xde\xde\x3e\xf7\xe4\x53\xe3\x55\x35\xf7\xdd\x7b\x47\x55\x75\xb5\ +\x0c\xfc\x8c\x31\xfe\x8e\xc6\xf7\x5f\x9b\x27\x1e\x95\xac\x12\xf5\ +\xce\x88\x46\x92\x79\x28\x78\x9f\x65\xcb\x96\xed\xda\xb5\x0b\xf1\ +\xd5\x30\x8a\x81\xc4\x3d\x40\x44\xc1\x65\x03\x25\x9e\x70\xc2\x09\ +\xfb\xf7\xef\x8b\xc6\xa2\x84\x48\x38\x33\xd8\x9e\x6b\x82\xc6\x67\ +\x68\x61\x0a\x15\x67\x57\xd9\x31\xf3\x88\x1d\x4d\xce\x3b\xad\x6d\ +\x2d\x37\x7e\xf6\xd6\xcb\x3f\x76\xc9\xbe\x09\x93\xc7\x4f\x9c\x84\ +\x18\x1f\x8b\x46\xdb\x5a\x5a\x96\x5f\x76\xc5\x57\xee\xbc\xe5\x47\ +\x5b\x9e\x3d\x67\xf1\x79\x00\xa5\x88\x12\x74\x91\xc3\x55\xad\x2c\ +\x22\x92\xe9\xba\x98\xb8\x3b\x85\x5d\x1d\xae\x2a\x59\x16\x69\x4f\ +\xc3\xf1\x82\xc2\x42\x28\x02\xa2\xe6\xba\x75\xeb\xd6\xae\x5d\x0b\ +\xcf\xa3\x80\x3c\xf7\xee\x0a\x51\x2e\xcc\x0f\xe3\x58\xd4\x8e\x70\ +\xe0\x9e\x3d\x7b\xa0\x4d\x06\xfe\x84\x92\x49\x3b\x51\xb4\x93\x4b\ +\x47\x66\x76\xac\xa4\xb8\x8c\xb9\x11\x65\x2b\x9a\xfe\xd2\xa9\x09\ +\x28\xa4\x74\x71\x49\xc1\x83\xf7\x7d\x71\xc3\xc6\x5b\xea\xd6\x5c\ +\x4f\x88\x16\x7e\x34\xd5\x97\xbc\xec\xba\x1b\x1e\xf9\xda\x97\xe6\ +\x9f\xb4\x60\xd4\xa8\xd1\x82\x4b\x62\x3a\xd3\x08\x61\x3f\x35\x9e\ +\x57\x63\x16\xdf\x01\xfe\x06\x07\x06\xfb\x52\x7d\x9e\x0d\xca\x7b\ +\x96\x75\x31\x3a\xb9\x1b\x81\xdb\x9b\x37\x6f\xfe\x8f\x7f\xb4\x65\ +\xd3\xa6\x4d\x08\x4c\x35\x35\x35\xe5\xe5\xe5\x64\x32\xe1\x92\x86\ +\x25\x1a\x87\x48\xc5\x7d\xfb\xf6\x8d\x1a\x35\x6a\xef\xde\x7d\xab\ +\xd7\x7c\x12\x8e\x4a\xa5\x94\x1a\x0b\x89\xd8\x29\x98\x50\x6e\xd0\ +\xac\x4a\x97\x08\xb8\x64\xb3\x08\x58\x38\x6a\xdb\xf6\x6d\x8d\x0d\ +\xf5\x28\x41\x39\x8e\x55\x36\x91\x24\x2a\x05\x65\xdc\x3c\x54\x95\ +\x27\x7b\x76\x6e\xff\x9f\x45\x4b\x97\xa7\x7a\xbb\x5d\x71\xe0\x40\ +\x65\x55\xf5\xec\xd3\xce\xb8\xf9\x73\x1b\xce\x3e\x77\x49\x7b\x5b\ +\x9b\x82\x20\x41\x4e\x5a\x17\x7e\xa4\xf8\x70\xba\xb8\xf0\x5c\x62\ +\xbd\xa4\xac\x6c\xea\x94\x69\xd3\xa6\x4d\x47\xa8\x31\x56\xa7\x70\ +\x10\x61\x02\x22\x3e\xa1\x02\xb7\xdd\x76\xe7\x5b\x6f\xbd\xd9\xd0\ +\x50\x8f\x54\x6c\x98\x82\xb5\x7a\xba\x46\x52\xa4\x5f\x93\x27\x1f\ +\x5f\x5d\x5d\xfb\xf1\x8f\x8f\x1a\x31\xa2\x0a\x0e\x1c\x48\x89\x00\ +\xbf\xd0\x5e\xad\x0a\x54\x4e\x8c\xa8\x94\xd1\x55\x55\x06\x9c\x37\ +\x1a\xed\xed\xed\xb9\xf9\x73\xeb\x17\x2c\x98\x7f\xfc\x8c\xe3\x23\ +\xd1\x88\xa9\xc0\x70\x53\x0a\x54\x58\x4c\x48\xf3\xce\xbb\x6e\xbf\ +\xe3\x9e\xfb\x60\x4d\x25\x45\x85\x50\x22\x9c\x0b\x39\xca\x69\x67\ +\x9d\x7b\xef\xb6\xad\xa7\xf4\xb6\xce\x9b\xf7\x01\x22\x18\x02\x26\ +\x66\x05\x6b\x31\x98\x34\x05\x55\x0b\x83\xc3\xfd\xc6\xd7\xff\x7d\ +\xe1\xc2\xb3\x57\xac\x58\x09\xdf\xcf\x08\x27\x29\x1f\x64\x71\x83\ +\x78\x3e\x91\x68\x14\x55\xad\x59\x1f\xf8\x00\x71\x8e\x8a\x1e\x0e\ +\x35\x54\x58\x02\x62\xa6\xad\x82\x80\x81\xcc\x3c\xdc\x10\xfd\x18\ +\x2c\x48\x69\xfe\x46\x20\x03\xd0\x20\x4f\x3e\xf9\xdd\xc5\x8b\xcf\ +\x5e\xbd\x7a\xcd\xdb\xac\x2f\x21\x3b\xfb\xfa\x33\x3f\x58\x79\xf5\ +\xda\x54\x4f\x57\x56\xa2\x7a\x30\xb5\xff\xf4\xcf\x9f\xd8\xfb\xbb\ +\x5f\xad\xbb\xe1\x5f\xff\x8a\x82\xd5\xf2\xe5\xcb\xd7\xac\xb9\xf6\ +\xac\xb3\xce\x05\xb0\x80\x6f\xa1\x6b\x35\x75\x31\x26\xd3\x48\x26\ +\x79\x02\x2e\xc2\x53\x2a\x6b\xcc\x27\x6c\xc3\x54\x67\x33\x2c\x38\ +\xb7\xea\x07\xe2\x4a\x65\xbe\x4e\xec\x3a\xd1\x76\xfa\x2b\x93\xd5\ +\x6b\x47\x7d\x3a\xca\xc6\x1c\xc9\x3d\x76\x74\xb4\x2d\x5f\x7e\xb9\ +\xa1\x0d\x0c\x6a\xd7\xcf\x83\x07\xfa\x5a\x56\x5d\x7a\xe9\x53\xcf\ +\x3e\x77\x60\xef\x9f\xc6\x8d\x9f\x80\x4a\x28\x4e\x0a\x7e\x76\xc6\ +\x07\x67\xef\xfa\xf9\xf6\xef\x3f\xf3\xf4\x8a\x8b\x56\x2a\xd4\xea\ +\x3f\x4a\x3b\x6f\x4e\xac\x1e\x39\x10\x22\xd4\x41\x0a\x4f\x9a\x34\ +\xe1\xad\xc3\x6f\x1e\x7f\xfc\xcc\xde\xde\x24\x27\x13\x53\x4f\x98\ +\xc9\x28\xe6\xe8\xfe\x9a\x08\x8c\xc2\xd5\x4e\x80\xf9\xe5\x63\x1c\ +\x3c\xf3\x51\x51\xde\x6d\x38\x06\xa3\x29\xff\xa1\xb9\x6e\xe9\x87\ +\x1c\xf5\xc9\x55\x69\x41\xbb\xe3\x0c\x00\x96\xcc\xe0\x22\x54\xf3\ +\x45\xc9\x04\x9f\xf0\xf7\x01\xeb\xa0\x15\x02\x5c\xd7\x5c\x7d\xe5\ +\x1d\x0f\x3d\x3c\xf9\x53\x1b\x06\x92\x02\x85\x41\x46\x7d\x3d\x3d\ +\x4b\x57\x7e\xf4\x89\xef\x3e\x7a\xd6\xd9\xe7\x0c\xd7\x1c\x44\xec\ +\x15\x65\x8b\xa2\x84\x27\x59\x1d\x7a\x24\x00\x53\xd2\xc1\x4b\xa0\ +\xc0\xb9\xbf\xf4\x1c\x28\x45\x0c\x53\x15\x08\x71\x9b\x2c\xcc\xe4\ +\xfb\x19\x51\x7f\x95\xce\x5f\x9a\xd0\x05\x12\x80\xd2\xcc\xa1\x43\ +\x87\xe4\x55\x0a\x8b\x43\x11\xe9\x85\x17\x5e\x78\xe4\x91\x47\x48\ +\x83\x94\x62\x5a\x35\x02\x5a\x20\xc4\xde\xe6\xfa\xe6\xc6\xa3\xc2\ +\x6d\x4b\x3a\x1e\xb4\xdc\x98\xb1\x63\xf3\x2b\xaa\x2e\xb9\xf8\xe2\ +\xd9\x73\xe6\x00\xa7\x85\x95\x88\xaa\x2f\xd8\x0e\x15\x43\x75\xeb\ +\xfa\xeb\xaf\xc7\x38\x26\x0f\xa7\xdd\x3d\xca\x55\x03\x02\x1e\x2e\ +\xe9\xe6\x2c\xf5\xea\xd0\xe0\xf2\x00\xa6\x61\x9e\x86\x31\xaf\xf9\ +\x22\xa0\x7d\x2a\x16\x05\xc6\x97\xa8\x7d\xa8\xae\xae\x0e\x29\x15\ +\x5d\x7d\x63\x63\xe3\xad\xb7\xde\x3a\x7f\xfe\x7c\xdc\x80\x20\x8a\ +\xd0\xbc\x24\x8b\x94\x58\x62\x7a\xc1\x1d\x0a\x7e\x6e\x44\xe5\xce\ +\x6d\x5b\x57\x5e\x75\x4d\x7f\x6f\x97\x70\xff\x6e\xa4\xaf\xb7\xf7\ +\x8c\x8f\x9c\xf7\xfc\x63\x0f\xff\xcb\x75\xd7\x11\xf1\x10\x96\x11\ +\xd1\x38\x18\xf3\xbe\xfb\xee\x7b\xf4\xd1\x47\x6f\xb8\xe1\x06\x78\ +\x95\xa0\xae\x91\xc7\x30\xb5\xec\x61\xd1\x66\x68\x81\x43\xcc\xea\ +\x4a\x88\x07\x42\x9d\xdc\xf8\x34\x37\x8c\x0d\xfd\x20\x9e\x55\x4c\ +\xdc\x09\xdc\x02\x6e\xfe\xf0\xe1\xc3\xa8\x85\x4c\x9e\x3c\x99\x18\ +\x22\x22\x0f\x48\x52\xb4\x82\x3d\xb1\x1b\x0c\xf0\xd4\xd3\x4e\xeb\ +\x6b\xad\x6f\x6b\x69\x86\x0c\x85\xb5\x4a\xbd\x18\x37\x61\x62\xf9\ +\xc8\xba\x5d\x3b\x77\x96\x96\x95\x11\x71\x6e\x16\xe3\x28\x69\xb9\ +\xf8\xe2\x8b\x8f\x1c\x39\x62\xf5\xee\x71\xfb\x9a\x54\x36\xaf\xe2\ +\x76\xe0\x46\x5c\x53\xdb\xe2\x36\x6e\xc6\x93\xfb\xf3\xc1\x8e\xb6\ +\x36\x14\x61\x5c\x4f\xae\xae\x9d\xf8\x38\x5e\xc2\x23\xaa\xf9\x66\ +\x1f\xc1\xb8\xda\xe3\x07\x13\x25\x45\xd4\x09\xdf\xdc\xd4\xd4\x84\ +\xfb\x24\x67\x94\xa3\xf8\xe7\x71\x7b\xd9\xb2\x8a\xca\x0f\xcd\x9b\ +\xf3\xeb\x97\x5f\x2c\x40\xbc\x47\x0a\x29\x3b\x0c\x06\xfb\xfb\x3f\ +\xb4\xe8\xec\x1f\x6c\xd9\xe2\x0a\xf9\xc6\x6c\xbd\xa3\x85\x84\x4e\ +\x43\x91\xb3\x33\x4d\x1c\x96\x7c\xb8\x4a\x56\x15\x76\xb2\xfe\x71\ +\xe9\xa2\x20\x02\x59\x58\x26\xa4\x20\xb6\x43\x3a\x07\x0f\x76\x36\ +\x37\x77\xca\x94\x47\x57\x00\xa4\x83\xe7\x7a\x5d\xd5\x46\x74\x91\ +\xc4\x30\x4d\x2a\x08\x30\x6f\x7c\xc7\x09\xfc\x23\x22\x41\xb8\x12\ +\x54\x78\x90\xee\xd8\x58\x7c\x38\xfa\x11\x35\xa2\x85\x0b\x17\x36\ +\xec\x7f\x1d\xcc\xb7\x81\xef\x40\x61\xd3\xa6\xcf\xe8\xcb\x38\xff\ +\xfb\xea\xaf\x4b\xcb\x4a\xa1\x29\x46\x46\xb6\x3e\x92\x26\xda\x55\ +\x3f\xc7\x54\x3d\x28\xbd\xa1\x64\x95\xcc\x2d\x70\x6e\x1c\xd9\xd3\ +\x33\xd0\xdb\x8b\x42\x85\x23\xf5\xd9\xcd\x8b\x47\x0f\x1c\xec\x44\ +\x0e\x5b\x5e\xe6\xa6\xfa\x87\x4c\x80\x7b\xf7\x18\x18\x6e\x8a\xba\ +\xb8\x07\xf8\x69\x13\x3d\x02\x8a\x63\xc2\x13\x21\xf8\xb1\x63\xc7\ +\x1f\x37\x6e\xcc\x1b\xbf\xfd\x0d\x58\x5a\x95\x36\xc9\x92\xd2\x89\ +\xa7\x9e\xfe\x93\x9f\xfe\x14\xdd\x04\x64\x8f\x46\x40\x36\x0b\x48\ +\x80\xdb\x8c\xe9\xd3\x20\x29\x13\x8a\x11\x9c\xf9\x54\x4b\xfc\x84\ +\xba\x55\x32\x39\x74\xe0\x20\xda\xa8\x62\xe0\xdb\xf3\x0b\xe2\xa8\ +\xa4\x23\xff\x28\x29\x76\x07\x87\x78\x7a\x28\xc3\x15\xe1\x2d\x93\ +\x07\xd7\xf1\xca\x08\x42\xcd\x85\x50\x55\xde\x26\x8d\x49\x37\xf0\ +\x09\xd2\x53\x04\x2d\xf1\x97\xbb\xfe\xea\xb6\xa4\x49\x7c\x25\x39\ +\x73\xdd\x4c\xb7\x1d\x06\x44\x46\xde\x04\xb5\xa4\x13\xe7\xce\xd9\ +\xfa\xf2\xee\x53\x3e\xbc\x88\x52\x6e\xb8\x6a\x64\x67\x1f\x9c\x33\ +\xf7\x5b\x3b\x5e\x68\x6b\x6d\x29\x2a\x2e\x21\xa1\x98\x41\x28\xae\ +\x9b\xf6\x5e\xaf\x80\x6c\x05\x74\xa2\xc9\x5c\xbb\x17\xc6\x36\x78\ +\x24\xd5\x23\x6b\x8b\x8b\x8b\xf2\x98\x03\x88\x91\xea\xea\xec\x4c\ +\xf6\x75\x17\x15\xb9\x99\x2c\xd0\x86\x33\x38\x24\xbc\x43\x3c\x1e\ +\x31\x05\x25\x53\x2d\x80\xc0\xb8\xcb\x7c\x91\x40\x91\x9f\xd2\xe0\ +\x98\xd5\x5e\xe1\x07\x09\x96\x9e\xfb\x40\x83\x51\x2b\x5b\x52\x36\ +\xfa\x87\xab\x9e\x33\x77\xee\x40\x57\x7b\x6b\x73\x13\x7a\x0b\xc9\ +\xb7\x65\x44\x9b\xea\x88\xea\x31\xe3\x76\xee\xdc\x89\x68\x45\x4d\ +\xcf\x36\x44\xb0\x83\x1a\x79\x3e\x85\x6c\x3d\xaa\x4f\x8e\x1f\x38\ +\xbd\xed\xa2\x90\x54\xd7\xd6\x96\xa6\xfa\x85\x63\x4e\x24\x22\xf9\ +\x09\xd7\x10\xfc\x3c\x9b\x7e\xfd\xf5\x96\xce\xce\x7e\xc8\x48\xfa\ +\xa9\x77\xc1\xd0\xe8\x52\x0d\xe0\x0c\xab\x8c\xb9\x54\x62\xe6\xcc\ +\x02\x77\x5e\x50\x58\x34\x61\xec\xe8\xbd\x7f\xf8\x1d\xd8\x08\xf1\ +\x1c\x04\x98\x77\xd1\x36\x39\xeb\x84\xb9\xdb\x5f\xf8\x39\x8e\x25\ +\xce\x4f\xd0\x6c\xfe\xc5\x33\xec\x90\x89\xd1\x05\xb9\xba\x7f\x4a\ +\xb7\xf3\xa8\x7f\x4c\xa2\xd5\x6c\x55\x55\x61\x41\x41\xfe\xe0\x20\ +\xf4\x05\xd7\xe4\x10\xa1\x09\xb3\x81\x03\x1d\x1a\xea\x7d\xfd\x8d\ +\xa3\xaf\xbf\xd1\xdc\xdb\x3b\x68\xc0\xb2\xb4\x38\xee\x7a\x94\x0a\ +\x97\xec\x39\x55\x05\xc4\x0f\x6a\xbb\xc2\x44\xde\x9e\x9a\x46\xf7\ +\x5d\xba\xad\x41\x36\x58\x87\x22\x94\x95\x95\xa1\x65\x0b\xfd\x5d\ +\x58\x01\x20\xc8\xcf\x2f\x58\x76\xc1\x05\x87\xde\xf8\x83\x23\xdb\ +\x8d\x5c\x59\x68\x03\x4a\xfc\xe0\xec\x39\x2d\x1d\x9d\x92\xe4\x2f\ +\x82\x1e\x01\x28\x9b\x82\x68\xce\xbe\x0c\x3b\x74\x90\x36\x45\x0d\ +\x63\xe1\xfa\x82\xbc\x6a\xad\x8e\xc7\xdd\xca\x8a\xa2\xfa\xfa\x3e\ +\x40\x73\xd5\x3c\xaa\x3b\xf6\xf3\xf3\xa3\xf9\xf9\xbc\xab\xb3\xab\ +\xb9\x39\x39\xf3\xf8\x9a\xca\xca\x02\x9c\xd7\x58\xab\xd7\x38\xa0\ +\x9c\x39\x53\xc1\x52\xb5\xb2\xa9\x35\x63\x6b\xd2\xad\x0e\xdb\x4c\ +\x12\xc8\x93\x01\xea\xb6\x6d\xdb\x26\x3c\x0b\x73\x90\xb9\xa1\xfd\ +\x58\x58\x0f\x73\xf7\xfd\xfe\x37\xed\xcd\xcd\x95\xe8\x9b\x91\x0e\ +\x0e\x3b\xc3\x47\xd4\x4d\x98\x74\xd3\x4d\x37\x9e\x74\xf2\x02\x1c\ +\x05\x01\x2d\x5d\xba\x94\xd2\x0b\xe3\xec\x7c\xe7\xb2\x15\x88\x6b\ +\xd2\xfe\x18\x6a\x9f\x4e\xf3\xd6\xd6\x24\x9a\xa4\x34\xd1\x4c\x19\ +\x95\x90\x43\x2a\x95\xee\xee\xe1\x15\x15\x65\x73\xe7\x8c\xae\x28\ +\xcf\xc7\x23\x71\xdd\x77\x29\x8c\x1d\xb3\xf3\x06\xf7\x06\xae\x1e\ +\x81\xfc\xb1\x27\xbe\xd3\x8e\xc7\x34\x6e\xda\x40\x61\x65\xba\xa4\ +\x26\x53\x5a\x73\xe9\xb5\xeb\xf2\x25\xa8\x11\xd2\x62\x2e\xa0\x77\ +\x6f\x4f\xcf\xf9\x17\xae\x98\xbb\xf0\xcc\xa1\x68\x22\x51\x36\xe2\ +\xc9\xa7\x9e\x86\xa1\xd9\xe6\x19\x3e\x5d\x10\xbe\x6a\xe2\x82\x33\ +\xaf\x63\x4f\x35\xed\xc5\x62\x91\xa6\xa6\x64\x7f\x7f\x5f\x49\x49\ +\x04\x82\x86\x6f\x96\x40\x4c\x3c\x78\x54\x16\x12\xf9\xc5\xc7\xd5\ +\x95\x95\x95\x26\xd4\x73\x10\x86\x2f\xac\xcf\x0d\x67\xcf\x9e\xc7\ +\x36\xf9\x9b\x69\x42\xd5\x78\x8c\xfc\xf8\x30\x5a\x13\x58\xa0\x35\ +\x1f\xbf\xe2\x8a\xb9\xf3\xe6\xfe\xd7\xb3\xcf\xd7\x5d\x74\xd9\xc2\ +\xe5\x2b\x7a\x3a\x3b\x71\xb5\x02\xe2\x0f\x0d\x0a\x6e\xde\x95\x1a\ +\x25\x0b\x50\x79\x89\xc4\xe9\x67\x2c\x2a\x2b\x2d\xfd\xfd\x6f\x5f\ +\x3b\x79\xfe\x89\xb5\xb5\xb5\xa0\xdb\x4d\xba\x1b\x90\x91\x2d\x07\ +\xba\x60\xd5\x44\x12\xf0\xb2\xf4\x10\x70\xec\x91\xfa\x0e\x3c\x12\ +\x74\x6d\xf4\xf7\x67\x52\xa9\x8c\x71\x0a\x40\x5e\xb3\x66\xd4\x94\ +\x97\x25\x80\x18\x29\x1e\xdb\x21\x39\x94\x5a\x38\x26\x6e\x1c\xa3\ +\x10\x1d\x30\xb1\x9c\x56\x66\x14\x0a\x64\x39\xd8\xbf\x75\xd7\xae\ +\x79\xf1\x99\xef\x7c\xfb\xab\x0f\xc5\xe3\xb1\x21\xf4\x3f\x48\x32\ +\x30\x22\xc5\x13\xd1\xa9\x05\x76\xef\xe9\xee\x02\x9d\xfa\xe2\xf6\ +\x6d\xd3\xa6\x4e\x15\x33\x01\x64\xbb\x17\x7d\xfa\x05\x94\xf5\xe7\ +\x14\x26\xcc\x2b\xf2\xcc\x61\x5e\x67\x95\x80\xd1\x47\x1b\xba\x3b\ +\xbb\x52\x28\x2c\x33\x37\xbf\x12\x96\x5d\x51\xd1\xdb\x2b\x48\x12\ +\x78\x6b\x64\x8e\x10\x32\x4e\x01\x24\x41\xf5\x67\xa6\x8a\x47\xa6\ +\x7a\xc1\xcd\x8a\x49\x7e\x11\xef\xda\xda\xb2\x03\x03\x9c\xd8\x71\ +\xff\x6e\x8a\x36\xcc\x69\x62\xa6\x1d\xc7\x84\x64\xdc\x3a\x9a\x60\ +\x8a\x4b\x4a\x6f\xbf\x7d\x53\x62\xa0\xe7\xa1\xbb\x6e\xc3\x0f\x20\ +\x88\xd1\xe1\x16\x91\xc2\x91\x32\x62\xf2\x9f\x8b\xaa\x11\x4c\xb2\ +\xfe\xad\x37\x67\xcf\x9e\x0d\x28\x67\x3a\x30\x21\x23\xdb\x07\x65\ +\xb3\x46\x57\x54\x5f\x8c\x6e\xe2\x54\xb7\x67\xe3\x20\xa1\x3e\xa5\ +\xa5\x89\xf9\xf3\xc6\x25\x12\xc0\x9f\x32\x2e\x44\x19\xc0\xf4\xe1\ +\xfa\x96\x44\x1e\x8a\xf1\x80\xa4\xae\xac\x4d\x79\xec\x85\xeb\x3a\ +\x26\x5c\xd2\x16\x59\x82\x16\x5f\x70\x19\x90\x4e\x7b\x47\xb6\xa9\ +\x25\x33\xb6\xce\x35\xec\xa2\xe9\xeb\x56\xa5\xf3\x2c\x0f\xb4\xb5\ +\xd1\x62\xf8\xb3\xac\xb5\x20\x4e\xa1\x1e\x87\x9b\xc4\x34\x9c\x9f\ +\xbd\xb0\xfd\x0b\x1b\x6f\xba\xec\x9a\x4f\x9e\x38\xff\x64\x70\xaf\ +\x91\x68\xc4\xce\x4e\xe1\x95\xff\xf4\xfa\x1f\x0b\xf3\xf3\xc0\xb2\ +\x23\xa6\x51\x12\x47\x23\xe0\xf0\xd0\xe3\xf0\x91\x47\x54\x9b\xcf\ +\x91\x5b\xc3\x21\x94\x96\x24\x64\xbb\x2e\x2e\xcb\x41\x53\xd5\x60\ +\x9a\x23\x49\x1e\x1c\x4a\x1f\x7a\xb3\xb9\xb2\x32\x66\xaa\x74\x21\ +\x26\x5f\xd1\x27\xb8\xb6\xee\x1e\xa1\x2f\x89\x04\x4b\xe4\x31\x50\ +\x74\xed\xed\xe9\x92\x22\x8e\x0a\x23\xa1\xeb\x50\x9f\xe8\xb0\x8e\ +\xd9\xee\x01\xb4\x5b\xdf\xc8\xae\x91\xd9\x7e\xf8\x8c\x45\x48\xfd\ +\xbf\xfc\xd5\xaf\x1d\xda\xb7\xf7\xb2\x2b\xae\x4a\x0a\x52\x99\x47\ +\xa4\x1b\xc2\x40\x85\x05\x85\xaf\xee\xd9\x3d\x7d\xfa\xf4\x21\xa9\ +\x35\x86\x4b\xcc\xed\x83\xfc\xfe\xc1\x75\x34\xcd\x4f\x94\x2b\xe9\ +\x92\x48\x1f\x00\x46\xd1\xcd\x29\xd5\x4e\x80\x0b\xf9\x48\xe0\x8c\ +\xa6\x4c\xa9\xaa\xa9\xae\x8c\x89\xca\x17\xcd\x22\xd1\x29\xa9\xec\ +\x05\x90\xc7\x8a\x20\x4b\x47\xc1\x6d\xb6\xb6\xa1\xaf\x61\xf0\x48\ +\xfd\x50\x6b\x6b\xba\xb8\x48\x76\xb0\x09\x7f\xaf\x40\x17\x19\xb7\ +\xfa\xc7\x73\x9b\x58\xf6\x2f\x2d\xb8\x0c\xf8\xdd\xaa\xea\xda\xcd\ +\x77\xdd\xd5\xb8\xff\x8f\x77\xdf\xfa\x59\x24\x5c\x08\xf0\xa2\xeb\ +\x18\x59\x58\x34\x8a\xfe\x9c\x03\x7b\xf7\xce\x9a\x39\x13\xf9\x00\ +\x24\x62\xbb\xa1\xb0\x06\x99\xeb\x31\xd1\xc3\xe1\xaa\x70\xa8\x43\ +\x98\x10\x9b\x17\xfe\x5d\xbb\xbc\x25\xa4\xe6\xcc\x9a\x05\x55\x2d\ +\xc2\xc8\x8e\xa9\x26\x3b\xae\xb2\x5c\x32\x06\x11\x47\xc0\xec\x38\ +\xc5\xc5\x6e\x69\x69\x34\x1e\xe3\xa0\x22\x0a\x0b\xb2\xb2\xbe\xe8\ +\xf4\x25\xb3\x5d\x5d\xc2\xc7\x41\x4c\xba\x91\x49\x77\x31\x0d\x23\ +\x1a\xd3\x57\x6b\x30\xb4\xdd\x3f\x49\xaa\x04\x42\x1a\x39\xc7\xfa\ +\x0d\x9f\x39\x7e\xf2\xf8\xcf\x5e\xbf\xf6\xd0\x81\x03\xb8\x4a\xc8\ +\xa0\xa8\xb0\xf0\xcf\xfb\xf6\xa1\x86\x50\x53\x5b\x8b\x1d\xec\x8e\ +\x27\x12\x93\x0f\x28\x32\x4f\x0e\x54\xeb\x8c\x6a\xa9\x05\x4d\x2c\ +\x40\xa1\xfa\x4b\x27\x5c\x14\x2d\x18\x63\xb9\xa8\x55\xbb\x53\x1b\ +\xbb\x96\x97\x47\x1a\x1b\xc0\x36\xa8\x59\x59\x50\xf9\x78\x2c\xd3\ +\xd4\x94\xed\xea\x8e\x54\x94\x03\x9c\xb0\x63\x98\x98\x2d\x08\x29\ +\xf1\xac\x69\xa1\x35\x05\x6e\x53\xb6\xa3\x36\x5b\x50\x91\xcb\x96\ +\x2d\x3f\x6e\xf2\x71\x0f\xde\x79\xdb\x85\xab\x2e\xbb\x64\xd5\xa5\ +\xe0\x36\x7e\xb5\x7b\xd7\xe4\x89\x13\xb3\x92\x6c\xb5\xdd\x19\x1d\ +\x1e\xd0\xa0\x00\x2e\xd3\x51\xcc\x97\x67\xe4\x24\x6b\x94\x31\xb9\ +\x86\x4c\x65\x3a\x51\xf0\x66\x1d\x58\xc4\x10\xa1\x75\xee\xe4\x09\ +\x9e\xcf\x95\x73\x3d\x15\x5b\x0b\x50\x5e\x58\xc0\xbb\xbb\xd3\xed\ +\x1d\x19\xd7\x8a\x9b\x01\xb7\x63\xbb\x1b\xbb\x9d\xd4\x56\x9c\xf0\ +\x82\xbb\x81\x8c\x26\x4c\x9c\x78\xfb\xc6\x8d\x2f\xfd\xe4\xc7\x77\ +\xde\x76\x33\xda\xa4\xf6\xff\xe9\x8d\xe9\x33\x66\xf4\x88\xd6\xcf\ +\xac\x1d\xe3\x73\x99\x98\x47\x66\x11\xe8\x77\xed\xcc\xd5\xea\x82\ +\xb0\x68\x40\x9b\x22\x75\x54\x03\x96\xd8\xce\x75\x7b\x35\x39\x30\ +\xb9\x25\xc0\x1c\x46\x23\xc2\x4f\xa3\x9b\x3a\x12\x35\xc1\x8e\xf7\ +\x26\x59\xff\x60\x74\xc2\xf8\xc4\xd8\xba\x18\x67\x26\x2f\x77\xc3\ +\x26\x66\x34\x28\x20\xa6\x9c\x32\xa2\x7b\x86\x8e\x60\x40\xc4\x72\ +\xec\x77\xf3\xcd\x37\x17\xe6\x45\x2f\xf8\xc8\xe2\x81\x54\x1f\x4a\ +\xbe\x28\x99\x1a\xfb\x32\x9f\x01\x01\xf9\xf2\x0a\xee\xf5\x49\x1f\ +\xd3\xc4\x82\xd3\x86\xfc\xf3\x23\x3c\x6c\xec\x2b\x54\x38\xb2\xd0\ +\x0e\x87\xd5\xd9\x99\x8e\x47\x79\xaa\x5f\xcc\x5c\xc9\x8b\x3b\xa8\ +\xc7\xc5\xf3\xa2\xe3\xc6\xc6\xa5\x76\x38\xa6\x2a\x19\x36\x31\xdb\ +\xb8\x6c\xfb\xd2\x65\x19\x66\xd7\xc4\xcd\x81\x64\x41\x54\xb1\x00\ +\x98\xbc\xe4\x92\x55\x23\x6b\x47\x02\x4c\x13\x81\x6b\xdb\xaf\x99\ +\x0f\x3f\x6c\xaa\xe1\x58\x7d\xd2\x3c\x47\x55\xc3\x6e\xc7\x60\xde\ +\xdc\x1a\x83\x5e\xbc\x0c\xc2\x4c\x98\x91\xda\xc4\x54\x3b\x00\x7c\ +\x70\x5b\x5b\x66\x70\x00\xfe\x38\x06\xb6\x24\xd5\x9f\x05\x0f\x89\ +\xeb\x17\x0c\x1f\x73\x86\x32\x5a\x28\x3e\xce\x2c\xb7\x93\xf6\xb7\ +\xd4\x30\x9a\xc5\x16\x2e\x78\x11\xe9\x63\xb3\xf4\x0d\x0d\x0d\xa0\ +\x8a\x30\x02\xaa\xc9\x34\x2f\x20\x2c\x20\x1f\x61\x66\x4f\xd3\x34\ +\xdd\x1d\x04\x61\x42\x1a\x14\x6a\x3f\xf6\xcd\x7a\xf4\x26\x36\x2b\ +\xd3\xcb\x72\x6b\x9e\x8d\x6c\x58\xc8\x32\x10\x6c\x53\xa6\x24\x20\ +\x29\x04\x2f\x84\x8b\x43\x87\x78\x5f\x2a\x5d\x5a\xe6\x72\x5d\x06\ +\xf1\xc6\x75\x59\xd8\xfb\xd8\x26\x66\x64\x14\x2e\xb7\xd9\xa2\xb1\ +\xa5\x43\x74\x1a\xe8\xed\x9c\xf5\x55\x5b\x83\xfc\x81\xcc\x5c\x9b\ +\x37\x57\x83\xbc\x07\x37\xc0\x5f\x4c\x96\x61\x66\x0e\x2d\xf7\x37\ +\xaa\x83\x55\xe7\xba\x99\x5d\xd8\x11\x80\x5f\x7a\xc8\x29\x28\x60\ +\x59\x3d\xfb\x4b\x36\x8f\x52\xf7\xab\x2a\xe1\xe3\x32\xb0\x67\x5d\ +\x5d\x7c\xef\x3e\x28\x94\xec\x68\x30\x50\x83\xd1\x68\x3e\xee\x8a\ +\x6e\x80\x9c\x8b\xa1\x01\x8d\x4d\x19\x3d\xa2\xca\x44\xc0\xbe\xac\ +\xf9\x91\xcc\xf4\xe1\x06\xca\xbf\xe6\x2c\x7e\x13\xcb\x6a\x61\xc8\ +\x1c\x88\xdb\x1a\xc4\xb9\x9d\xcc\x73\x3d\x55\xc8\x3f\x31\x9f\x26\ +\xdd\xb1\x88\x4e\x0b\xe4\x05\x39\x6f\xbe\x95\xc5\x04\xea\xa2\x62\ +\x37\x9b\x56\x84\x88\x01\x51\x7a\x86\xbd\x6a\x25\xc1\x2c\x31\x28\ +\x94\xa4\xac\x99\x13\x98\xd3\x36\x0c\x08\xb2\x05\x14\x7e\xed\x84\ +\x29\xde\x1b\x01\x19\xb2\xd9\x08\x28\x8c\x54\xcc\x03\xa0\x0a\xa2\ +\x75\x46\xd5\xb9\xa5\xe3\x96\x63\xe8\x8e\xe1\x9c\xb4\x13\x9e\x35\ +\x9c\xce\x38\x03\x82\x84\x05\x19\x22\x6e\xbb\xbe\x3e\x93\x9f\x00\ +\xa6\xcf\xda\x45\x0e\x5f\x07\x91\x57\x6d\x86\xee\xa1\xdb\x90\x29\ +\x2a\x9f\xf9\x1a\x53\x08\x54\x1d\x43\x83\xc2\x4e\xc7\xa8\x8f\x91\ +\x51\xa0\x40\x98\xb3\x1f\xce\x5f\xe4\x71\x42\x51\x2c\x98\x6a\x78\ +\x8d\xe4\x76\x35\xd8\xa5\xea\x94\x23\x11\xb5\xe6\x60\xc9\xa0\xf0\ +\xa7\xfe\x68\x36\x91\x27\x26\x07\x82\xea\x88\x47\xdd\x82\x42\xb7\ +\x37\x69\xa6\x8e\x4b\xfd\x31\x9c\x3c\x22\x7e\x96\x93\xb2\x52\xe3\ +\x14\x3d\x22\xd7\xb1\xc6\xcf\xf2\x9c\xcc\x8f\x8d\x7a\x7c\x55\x7f\ +\x4b\x58\xc6\xef\x50\x91\x2b\xa0\x3e\xe1\x47\x1e\x3e\x4d\x88\xa5\ +\xf6\x5a\x73\xe9\x71\x45\x0d\x66\x94\x54\x2e\x35\xc0\xc8\x36\x74\ +\xa2\x4b\xb9\x87\x97\x69\xaa\x1f\xa8\xfb\x0a\x41\x2a\xb8\xc8\x3f\ +\xd3\x19\x3c\x3d\x61\x9d\x08\x05\xc9\x24\x47\x45\x08\x9e\x58\x4d\ +\xe9\x57\x55\x0a\x87\x48\x62\xb5\xca\x34\x2d\x69\x8d\x4f\x83\xbb\ +\x8a\x7f\xc9\x06\x04\x64\xfb\xe6\x70\x50\xb7\x7d\x33\x49\xc7\x88\ +\x29\x3c\x27\x34\xec\x86\x0c\x6d\x66\x6b\x10\x91\x37\xae\x2e\x28\ +\xdb\x38\x88\xfb\x07\xcd\x3d\x1d\x53\x66\x0f\xee\x51\x28\x51\x42\ +\x14\x32\x89\x69\x2d\x2c\x8c\x34\x36\x66\x30\xcd\xa9\xa2\x32\x82\ +\x8a\x34\x77\x72\x84\x1b\xe6\xef\x0a\x61\xa1\x39\x6c\x76\x5d\xcc\ +\x36\xb1\xb0\x81\x04\xfa\xb9\x49\x7d\x8c\xdb\x0a\xcc\x5c\x0f\xbf\ +\x06\xc7\x58\x59\x2e\x13\x73\x98\xe6\x37\x64\x42\xa1\x35\x48\x3b\ +\x27\x9d\x63\x33\x3e\xcc\xab\x16\x44\xaf\x76\x7e\x42\x4c\x6b\x1a\ +\x18\x04\xf0\x73\xe5\xd4\x05\x91\x4f\xe4\x57\xc5\x9a\x5b\xd2\x6d\ +\x1d\x43\x53\x26\x83\xfb\x74\x74\xa3\x90\x69\xf9\x50\x84\xbf\x96\ +\x0e\x0f\x76\x56\x5a\xa9\x86\x21\xb1\x08\x1c\x0f\x67\x23\x14\xb3\ +\x8c\x68\x8c\xfa\x04\xe7\xf5\xbf\x33\x13\xf3\x1c\x0e\x69\x8c\xdd\ +\x82\xe7\x84\x86\xf3\xa8\x2f\xab\x92\xc9\xfa\x07\x30\x2e\x12\x74\ +\xa6\xb3\x3b\xd4\x11\x79\x32\x89\xa6\x1e\x67\x44\x65\x4c\x1a\x9d\ +\xf4\x56\x54\x4e\x52\x05\xd4\xe0\x8b\x58\x2c\x6c\x68\xfc\xa8\xa3\ +\xe3\x08\x48\xde\x21\x64\x06\x94\x3a\xd9\x45\xb1\x9c\xc6\x65\xfc\ +\x4e\x58\x7d\x72\xe6\xdb\x01\x0d\x0a\x00\x45\xd3\xd7\xc1\xb9\xf5\ +\x6a\x8a\x40\x2c\xe3\x3c\x3c\xdd\x5a\xf9\x57\x98\x55\x77\x37\x1a\ +\xa9\xc1\x0f\x09\x74\x83\x6c\x0b\x08\xb1\x37\x99\xa9\xae\x72\xcb\ +\xcb\x22\xa8\xc7\x66\xb2\x81\x2e\x6a\x66\x63\x51\xaf\x6f\xd5\x09\ +\x12\x66\x06\x22\x42\x3a\x98\xf6\x41\x1d\x8f\x86\x15\xcb\x89\x9b\ +\x4d\x62\x11\x0e\x5e\x81\x18\x6f\xbf\x60\x2a\x90\xee\x05\x78\x15\ +\x4b\x14\x3a\xd5\xb0\x32\x14\xc7\xf7\x5a\x97\x50\x17\x36\xa4\x03\ +\xcb\x02\xaf\x8c\x18\x0f\xd1\x43\x40\x08\x67\x48\x1d\x40\x9f\x95\ +\x95\x46\x28\x01\x70\x5d\x66\xdd\x8e\xd7\xa9\x6a\x95\xa2\x59\xce\ +\xf1\xe5\xcb\x1a\x14\xcb\x81\x8a\x20\x3e\x69\x1e\xac\xe9\x74\x09\ +\x1b\x4b\xd8\x64\xec\x27\x1d\x38\xc4\x08\xda\x2b\xe9\x44\xa3\x34\ +\x89\xc2\x70\x20\x39\xc0\x44\x00\xf2\x84\x4c\x2c\x94\xa6\x72\x67\ +\xd4\x28\x70\x60\x4e\x5e\x9e\x78\x3e\x87\xde\x1c\x4c\x27\xc1\xe1\ +\x93\x56\x66\x73\x92\x48\xc1\x29\xc6\xa1\xd7\x65\x10\x21\x85\x89\ +\x86\x98\x9d\x87\x17\xac\xa0\xc2\x37\x7e\xfc\x78\xc8\xe8\xd5\x57\ +\x5f\x45\x95\x86\xc2\x39\x4a\xa3\x31\x51\xd9\x89\x90\xaf\x31\x2b\ +\x6e\x68\x09\x7b\xe8\x80\x93\x46\xe2\x6a\x74\x73\xc7\x8e\x1d\xab\ +\x57\xaf\xb6\x69\x33\xeb\x28\xc7\xbc\x9a\xc2\xe1\x5e\xdf\x22\xf7\ +\x9a\x59\x91\x2f\x58\x6f\x0f\x62\x02\x0e\x0a\xdd\x29\xcb\x93\xf4\ +\x8f\xec\xe0\x18\x3f\x3e\xf6\xc7\xd7\x07\xe3\x79\x28\x25\x70\xd5\ +\x56\x6d\x19\x84\x00\x3e\xf4\x12\x21\x57\xbf\x46\xc2\x9e\x9e\x2c\ +\xc7\x77\x64\xeb\x14\x74\x13\x49\x13\x68\x8a\xea\xea\x6a\x3c\x52\ +\x94\x40\xd1\x1c\xf7\xf4\xd3\x4f\x63\x2a\x06\x25\x19\x2d\x2d\x2d\ +\x01\x93\x09\x83\xa3\x30\xd5\x17\xee\xe3\xc4\x57\x94\x43\x20\x6b\ +\x74\xfc\x61\xd8\xab\xaf\xbe\x7a\xf1\xe2\xc5\x38\xaf\x17\xfb\x19\ +\x35\x8d\x71\xab\xaa\xc1\xd5\x8f\x16\xed\xe3\x78\x78\xc6\xee\x35\ +\x71\x94\x68\xd4\x6b\x0c\xb2\x82\x39\x9d\x3c\x29\x2e\x43\x81\x71\ +\x6e\x62\x36\x1b\xd3\x2d\xac\xae\x6e\x76\xa7\x17\x1f\x69\x6f\xe4\ +\x1b\x9f\xae\x6c\xea\xd4\xa9\x6a\xb2\x90\x7c\xc8\x98\x73\xbf\x7e\ +\xfd\x7a\xe3\x83\xc2\xed\xae\xe1\xc8\x1d\x7e\xf9\x5d\xb8\x79\x98\ +\x6e\x10\x02\xa2\x97\x6a\x60\x8b\x68\x1b\x97\xf6\xe8\x0d\xa5\xe0\ +\x99\x01\x8a\xef\x88\x72\xf5\xbf\xd7\x08\x66\x5e\x50\xe0\x52\x91\ +\x5a\x58\xb2\xfd\x0e\x96\x1c\x73\xfd\x43\xd5\x0f\x4b\x17\x24\x1d\ +\x91\x26\xdf\x4c\x4d\x2d\x34\x2b\xc0\xf4\x01\x0d\xe7\x80\xc2\x6f\ +\xfb\x1b\xee\xad\x81\x76\xa3\x2b\xe6\x5d\xd0\x0e\x06\x28\x60\x1d\ +\xd6\x5d\x88\xf0\x1c\x98\xb3\x4a\xea\xc4\xad\x7c\x95\x29\xd3\x0a\ +\x90\xce\xf6\x24\x7e\x95\x9b\x08\x97\x2c\xe7\x79\xaa\x79\x86\x34\ +\xed\x31\xab\x5b\x44\x65\xd7\x14\xf3\xbd\x62\x85\x94\xc6\x37\x3e\ +\x5d\xca\xac\x99\xb3\x9e\x7b\xee\xb9\x39\x73\xe6\xda\xdd\x96\x76\ +\x0c\x79\x3b\x02\xf2\xb7\x8b\xf1\xe1\x62\xbc\xdd\xca\x49\x09\x0d\ +\x1c\x36\xa6\xe1\x74\xf7\xf4\x8c\x19\x35\x0a\x29\x94\xac\x17\x19\ +\xa0\xc8\x99\xe6\x5c\x7d\x2c\x84\x7a\x6b\x8e\x93\x4b\x44\xcc\xea\ +\x00\x76\x95\x3a\x1a\x3a\xc8\xf4\x49\x91\x58\xac\xed\xba\x09\xdd\ +\x3f\x3e\x9e\x21\xe8\x4f\xf4\x5d\xfc\xf2\x97\xbb\xee\xb8\xe3\x0e\ +\x54\x23\xf4\xdb\x20\x1c\x34\xfa\xa2\xa1\x30\x9b\xab\x25\x3c\x20\ +\x91\x00\x62\x1e\xce\x07\x99\x5f\x21\x11\x50\x8e\xf0\x3e\x70\xff\ +\x54\x41\xdc\xbf\x7f\xff\x8d\x37\xdd\x24\x44\x96\xf5\x38\xe9\xa8\ +\x89\xee\x36\x0e\x1a\x3e\x86\xe5\xa6\x5c\x99\x93\x03\xd7\x0c\xf7\ +\xf2\x98\xf0\xf8\xea\x05\x03\x2e\xbb\xe7\x9e\x7b\x1a\x9b\x9a\x0e\ +\xbf\xf5\x16\x62\x8c\x2b\x7b\x31\x8f\x36\x34\x38\x16\xd2\x0f\xbf\ +\x80\x8a\x3b\xf6\x0b\xff\x72\xbc\x7c\x8b\xe5\xb2\x00\x3a\x3b\x7a\ +\x8b\x20\x1a\x30\xfc\xb4\x3e\x69\xd2\x24\xc0\x5c\x3c\x2a\xdd\x0c\ +\x6a\x80\x22\x23\x7e\x07\xc9\x4f\x56\xbd\x54\xce\xea\x1b\xb6\xdf\ +\x50\x64\x66\x8d\xa9\x92\x21\x57\x49\x03\xb7\x5e\xd7\xe7\x0c\xbb\ +\x1e\xf4\xa9\x81\xf1\x31\xc8\xd0\x60\xba\xa6\xba\xa6\xb6\xa6\xe6\ +\x6f\xf2\xde\x4d\x24\x36\x68\x42\x93\xcd\x94\x62\x5a\x1f\x19\x49\ +\x54\xbd\xa9\x45\x33\x06\x7f\xdb\x57\x83\xca\x19\x14\x7f\xb3\x25\ +\x2a\xe6\x60\x29\x09\x14\xc9\xae\x6b\xe1\x83\x64\x1b\x56\x31\x66\ +\x19\x6e\xdc\xb8\xd1\x9b\x09\xc9\x7d\x2f\x02\x0c\x64\xf3\xe1\xf7\ +\x61\x84\xe6\x8e\xe5\x58\xb7\x66\xdf\xfd\xbd\x8f\x0f\xf8\x89\x9a\ +\x10\xc2\xa8\x87\xc7\x11\xf3\xe4\xa4\x6e\x5f\x1b\x42\x2e\xe4\xed\ +\x84\xe6\x75\x04\xb7\x07\x2e\x7d\xb8\x9d\xff\xbe\xc7\x17\xff\xd3\ +\x0b\xee\x58\x4e\x3e\xe1\xfd\xc5\xf7\x36\xe0\x63\x20\xab\xff\xcf\ +\xef\x93\x36\xec\x33\x7f\x5f\x53\x8e\xb1\xf8\x34\xe8\xfd\x25\xbc\ +\xb8\x61\x96\x37\xa7\x36\xe6\xe4\x5f\xc2\xbb\xe5\x64\xb6\xfe\xa1\ +\xc7\xff\x3f\x1e\x9f\x29\xce\x54\xe0\x9c\xcf\x00\x00\x00\x00\x49\ +\x45\x4e\x44\xae\x42\x60\x82\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x0a\ +\x0c\xf7\x1b\xc7\ +\x00\x63\ +\x00\x6f\x00\x6e\x00\x66\x00\x69\x00\x67\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x09\ +\x0c\x9c\xa6\x27\ +\x00\x71\ +\x00\x75\x00\x65\x00\x72\x00\x79\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0a\ +\x08\xab\xda\x07\ +\x00\x75\ +\x00\x70\x00\x64\x00\x61\x00\x74\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x03\x00\x00\x00\x02\ +\x00\x00\x00\x44\x00\x00\x00\x00\x00\x01\x00\x00\x24\x78\ +\x00\x00\x00\x2c\x00\x00\x00\x00\x00\x01\x00\x00\x1b\x97\ +\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() diff --git a/examples/dialogs/configdialog/images/config.png b/examples/dialogs/configdialog/images/config.png new file mode 100644 index 0000000000000000000000000000000000000000..38f40ecdff65452b004b4a6b93a9b3d28ccb29fc GIT binary patch literal 7059 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 literal 0 HcmV?d00001 diff --git a/examples/dialogs/configdialog/images/query.png b/examples/dialogs/configdialog/images/query.png new file mode 100644 index 0000000000000000000000000000000000000000..d4b66d120cab2abf48c991eb749f10a75e8b3436 GIT binary patch literal 2269 zcmV<32qO21P)!zW-EDPtRp%c6Opmf^3q7M4x0$G&|#kKptEn4*>&-AP6B|Fw-0GvZ8TD z5Q6w1C`2C&m>5C~F0KR&gghiKF&IS5OjMS{`wbH_yVEHpAV<1x~seTvXl5T zGkxm(_4U;G&;R|GQ>I*!L`gP~l5m|Q$y?IPAjo^~y_dYQf%gj6QmQ?W9*~KmnVFe$ z=CXmA3)jwtxr6CVG>SXt*EcpcHrCfS);H3@#>RTMUSAJ$2hqQLew#8R_{pg+uhi@H z`ssSTUSCC>lI>MJYtgXqtkdJ>62*t+xCb5Fhfa_-qXx56G+yuUY| zG@H$4vpMF?d;778Mi9*RDeMr_38uf<)=`P~USztp1$`MFgh>KN2tcZ}d#Ta5)Mzvs zjZ53jnB+(tAsI=H5?Z{owS77EB1!qUwR@@2!f2pK1AyYApz}8jO*@UtG9#JZY=-uB zBXOl`=->gsdcVF~EZo`Lx(uU)TqK#rjXeV_+%?d+mfk;PmAl&_rSL$=RxA-ayM%_J z0T_f~n*}27{rdEO2yS=JprH$p2@(Ma02n?=Ae%FYB2ojX>wziQ?!G}7gr@`}NoDpH zGm9EYnvw7x4442V2oj_yVi)P%Wq6Ss&4a{KqVg~dC^eTT+rRAIA`ci#r03+!-2CDB znF)%_{fXdZ$&cj0&^>MwQf*;wW^!U;a^~px`8EgP(c!@$UxwIDAWq4rcBj|OjPGzx^aJ6@c~CSGI#EpIzMzSU(#KPh z#O+$7oYq7Vyrl#WYghR5XOgSw6^(WHcBJg`h|h^e^G&m!Es&u@_!^ zp9lzlJU=N>HP>zY0v>rj7(*(Xzrq9WZftJu-So_jVd>{5L|>Wq!*iN(EYZ|&{&~Z# z7b;QYE*!ZR1c)t@aL8#mGUNlLwm>gUa&ty6;of;~1gfv!2oDGq(a%oHf@S*gArXdr zFsj0VyY#u|@7jqZxn^@e1juU>KQrftV5uG+fF+E}o@V-k^D!xlH>8X~O9%TgrA_JHEQ!((+f^BigeZ4>0gR#oC|fYX$&V+%nq& z>+{{kX_<8JRNw)MO~il|v=S!o#KimC#^Dh<#|y~&1E{Bb2@_p2Xv_9)c}MHTiWf@s z{dna4LFTTZeK1QYNh-9K!R86sUi|b8lkGA+OYnhUV`emx2Dz=zzH~>^@k%7EuBlFB z1wa@;SXa2-j()UFxBte!&hx{!PVTuvytEUmq zNE%&iL=+$)+G@ByeJMWglQnV$*1F&zLZo1uZPR!w$apZ4$=r^aW^T&jU1EGD7piMZ zpTffGI!<>v6vzzz&}2d1se_96PF;ji#i`=_pcVw<@rv0_J{aY8g^d)zaox027o{tO zrALjO$}*5RQul%B1dICIQoZ;-9t@P}jvoM=9nVB#=L0A?H0hb02qe=}9#@tRI^hnb zTrjw!@M%~}+|iO-%J4#8KCr$~`srt`VJrYXo;Ws%KK(%axcPv|-1Q6Qy{{}@S4+lh zi8{p+hE~f#eD&(bI|6jdr=K8hxsIg2I+>U;4uH<|Ka_R-rYgVnmv~FIO00000NkvXXu0mjfY4Kvr literal 0 HcmV?d00001 diff --git a/examples/dialogs/configdialog/images/update.png b/examples/dialogs/configdialog/images/update.png new file mode 100644 index 0000000000000000000000000000000000000000..ea3f5979e9bdb5835f5c48e3b78c29e0d7982b11 GIT binary patch literal 8296 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" \ + "

    Click a button to close the message box. Pressing the Esc " \ + "button will activate the detected escape button (if any).

    " + + def __init__(self, parent=None): + super(Dialog, self).__init__(parent) + + self.openFilesPath = '' + + self.errorMessageDialog = QErrorMessage(self) + + frameStyle = QFrame.Sunken | QFrame.Panel + + self.integerLabel = QLabel() + self.integerLabel.setFrameStyle(frameStyle) + self.integerButton = QPushButton("QInputDialog.get&Int()") + + self.doubleLabel = QLabel() + self.doubleLabel.setFrameStyle(frameStyle) + self.doubleButton = QPushButton("QInputDialog.get&Double()") + + self.itemLabel = QLabel() + self.itemLabel.setFrameStyle(frameStyle) + self.itemButton = QPushButton("QInputDialog.getIte&m()") + + self.textLabel = QLabel() + self.textLabel.setFrameStyle(frameStyle) + self.textButton = QPushButton("QInputDialog.get&Text()") + + self.colorLabel = QLabel() + self.colorLabel.setFrameStyle(frameStyle) + self.colorButton = QPushButton("QColorDialog.get&Color()") + + self.fontLabel = QLabel() + self.fontLabel.setFrameStyle(frameStyle) + self.fontButton = QPushButton("QFontDialog.get&Font()") + + self.directoryLabel = QLabel() + self.directoryLabel.setFrameStyle(frameStyle) + self.directoryButton = QPushButton("QFileDialog.getE&xistingDirectory()") + + self.openFileNameLabel = QLabel() + self.openFileNameLabel.setFrameStyle(frameStyle) + self.openFileNameButton = QPushButton("QFileDialog.get&OpenFileName()") + + self.openFileNamesLabel = QLabel() + self.openFileNamesLabel.setFrameStyle(frameStyle) + self.openFileNamesButton = QPushButton("QFileDialog.&getOpenFileNames()") + + self.saveFileNameLabel = QLabel() + self.saveFileNameLabel.setFrameStyle(frameStyle) + self.saveFileNameButton = QPushButton("QFileDialog.get&SaveFileName()") + + self.criticalLabel = QLabel() + self.criticalLabel.setFrameStyle(frameStyle) + self.criticalButton = QPushButton("QMessageBox.critica&l()") + + self.informationLabel = QLabel() + self.informationLabel.setFrameStyle(frameStyle) + self.informationButton = QPushButton("QMessageBox.i&nformation()") + + self.questionLabel = QLabel() + self.questionLabel.setFrameStyle(frameStyle) + self.questionButton = QPushButton("QMessageBox.&question()") + + self.warningLabel = QLabel() + self.warningLabel.setFrameStyle(frameStyle) + self.warningButton = QPushButton("QMessageBox.&warning()") + + self.errorLabel = QLabel() + self.errorLabel.setFrameStyle(frameStyle) + self.errorButton = QPushButton("QErrorMessage.show&M&essage()") + + self.integerButton.clicked.connect(self.setInteger) + self.doubleButton.clicked.connect(self.setDouble) + self.itemButton.clicked.connect(self.setItem) + self.textButton.clicked.connect(self.setText) + self.colorButton.clicked.connect(self.setColor) + self.fontButton.clicked.connect(self.setFont) + self.directoryButton.clicked.connect(self.setExistingDirectory) + self.openFileNameButton.clicked.connect(self.setOpenFileName) + self.openFileNamesButton.clicked.connect(self.setOpenFileNames) + self.saveFileNameButton.clicked.connect(self.setSaveFileName) + self.criticalButton.clicked.connect(self.criticalMessage) + self.informationButton.clicked.connect(self.informationMessage) + self.questionButton.clicked.connect(self.questionMessage) + self.warningButton.clicked.connect(self.warningMessage) + self.errorButton.clicked.connect(self.errorMessage) + + self.native = QCheckBox() + self.native.setText("Use native file dialog.") + self.native.setChecked(True) + if sys.platform not in ("win32", "darwin"): + self.native.hide() + + layout = QGridLayout() + layout.setColumnStretch(1, 1) + layout.setColumnMinimumWidth(1, 250) + layout.addWidget(self.integerButton, 0, 0) + layout.addWidget(self.integerLabel, 0, 1) + layout.addWidget(self.doubleButton, 1, 0) + layout.addWidget(self.doubleLabel, 1, 1) + layout.addWidget(self.itemButton, 2, 0) + layout.addWidget(self.itemLabel, 2, 1) + layout.addWidget(self.textButton, 3, 0) + layout.addWidget(self.textLabel, 3, 1) + layout.addWidget(self.colorButton, 4, 0) + layout.addWidget(self.colorLabel, 4, 1) + layout.addWidget(self.fontButton, 5, 0) + layout.addWidget(self.fontLabel, 5, 1) + layout.addWidget(self.directoryButton, 6, 0) + layout.addWidget(self.directoryLabel, 6, 1) + layout.addWidget(self.openFileNameButton, 7, 0) + layout.addWidget(self.openFileNameLabel, 7, 1) + layout.addWidget(self.openFileNamesButton, 8, 0) + layout.addWidget(self.openFileNamesLabel, 8, 1) + layout.addWidget(self.saveFileNameButton, 9, 0) + layout.addWidget(self.saveFileNameLabel, 9, 1) + layout.addWidget(self.criticalButton, 10, 0) + layout.addWidget(self.criticalLabel, 10, 1) + layout.addWidget(self.informationButton, 11, 0) + layout.addWidget(self.informationLabel, 11, 1) + layout.addWidget(self.questionButton, 12, 0) + layout.addWidget(self.questionLabel, 12, 1) + layout.addWidget(self.warningButton, 13, 0) + layout.addWidget(self.warningLabel, 13, 1) + layout.addWidget(self.errorButton, 14, 0) + layout.addWidget(self.errorLabel, 14, 1) + layout.addWidget(self.native, 15, 0) + self.setLayout(layout) + + self.setWindowTitle("Standard Dialogs") + + def setInteger(self): + i, ok = QInputDialog.getInt(self, "QInputDialog.getInt()", + "Percentage:", 25, 0, 100, 1) + if ok: + self.integerLabel.setText("%d%%" % i) + + def setDouble(self): + d, ok = QInputDialog.getDouble(self, "QInputDialog.getDouble()", + "Amount:", 37.56, -10000, 10000, 2) + if ok: + self.doubleLabel.setText("$%g" % d) + + def setItem(self): + items = ("Spring", "Summer", "Fall", "Winter") + + item, ok = QInputDialog.getItem(self, "QInputDialog.getItem()", + "Season:", items, 0, False) + if ok and item: + self.itemLabel.setText(item) + + def setText(self): + text, ok = QInputDialog.getText(self, "QInputDialog.getText()", + "User name:", QLineEdit.Normal, QDir.home().dirName()) + if ok and text != '': + self.textLabel.setText(text) + + def setColor(self): + color = QColorDialog.getColor(Qt.green, self) + if color.isValid(): + self.colorLabel.setText(color.name()) + self.colorLabel.setPalette(QPalette(color)) + self.colorLabel.setAutoFillBackground(True) + + def setFont(self): + font, ok = QFontDialog.getFont(QFont(self.fontLabel.text()), self) + if ok: + self.fontLabel.setText(font.key()) + self.fontLabel.setFont(font) + + def setExistingDirectory(self): + options = QFileDialog.DontResolveSymlinks | QFileDialog.ShowDirsOnly + directory = QFileDialog.getExistingDirectory(self, + "QFileDialog.getExistingDirectory()", + self.directoryLabel.text(), options=options) + if directory: + self.directoryLabel.setText(directory) + + def setOpenFileName(self): + options = QFileDialog.Options() + if not self.native.isChecked(): + options |= QFileDialog.DontUseNativeDialog + fileName, _ = QFileDialog.getOpenFileName(self, + "QFileDialog.getOpenFileName()", self.openFileNameLabel.text(), + "All Files (*);;Text Files (*.txt)", options=options) + if fileName: + self.openFileNameLabel.setText(fileName) + + def setOpenFileNames(self): + options = QFileDialog.Options() + if not self.native.isChecked(): + options |= QFileDialog.DontUseNativeDialog + files, _ = QFileDialog.getOpenFileNames(self, + "QFileDialog.getOpenFileNames()", self.openFilesPath, + "All Files (*);;Text Files (*.txt)", options=options) + if files: + self.openFilesPath = files[0] + self.openFileNamesLabel.setText("[%s]" % ', '.join(files)) + + def setSaveFileName(self): + options = QFileDialog.Options() + if not self.native.isChecked(): + options |= QFileDialog.DontUseNativeDialog + fileName, _ = QFileDialog.getSaveFileName(self, + "QFileDialog.getSaveFileName()", + self.saveFileNameLabel.text(), + "All Files (*);;Text Files (*.txt)", options=options) + if fileName: + self.saveFileNameLabel.setText(fileName) + + def criticalMessage(self): + reply = QMessageBox.critical(self, "QMessageBox.critical()", + Dialog.MESSAGE, + QMessageBox.Abort | QMessageBox.Retry | QMessageBox.Ignore) + if reply == QMessageBox.Abort: + self.criticalLabel.setText("Abort") + elif reply == QMessageBox.Retry: + self.criticalLabel.setText("Retry") + else: + self.criticalLabel.setText("Ignore") + + def informationMessage(self): + reply = QMessageBox.information(self, + "QMessageBox.information()", Dialog.MESSAGE) + if reply == QMessageBox.Ok: + self.informationLabel.setText("OK") + else: + self.informationLabel.setText("Escape") + + def questionMessage(self): + reply = QMessageBox.question(self, "QMessageBox.question()", + Dialog.MESSAGE, + QMessageBox.Yes | QMessageBox.No | QMessageBox.Cancel) + if reply == QMessageBox.Yes: + self.questionLabel.setText("Yes") + elif reply == QMessageBox.No: + self.questionLabel.setText("No") + else: + self.questionLabel.setText("Cancel") + + def warningMessage(self): + msgBox = QMessageBox(QMessageBox.Warning, "QMessageBox.warning()", + Dialog.MESSAGE, QMessageBox.NoButton, self) + msgBox.addButton("Save &Again", QMessageBox.AcceptRole) + msgBox.addButton("&Continue", QMessageBox.RejectRole) + if msgBox.exec_() == QMessageBox.AcceptRole: + self.warningLabel.setText("Save Again") + else: + self.warningLabel.setText("Continue") + + def errorMessage(self): + self.errorMessageDialog.showMessage("This dialog shows and remembers " + "error messages. If the checkbox is checked (as it is by " + "default), the shown message will be shown again, but if the " + "user unchecks the box the message will not appear again if " + "QErrorMessage.showMessage() is called with the same message.") + self.errorLabel.setText("If the box is unchecked, the message won't " + "appear again.") + + +if __name__ == '__main__': + app = QApplication(sys.argv) + dialog = Dialog() + dialog.show() + sys.exit(app.exec_()) diff --git a/examples/dialogs/tabdialog.py b/examples/dialogs/tabdialog.py new file mode 100755 index 0000000..86c41bb --- /dev/null +++ b/examples/dialogs/tabdialog.py @@ -0,0 +1,205 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QFileInfo +from PyQt5.QtWidgets import (QApplication, QCheckBox, QDialog, + QDialogButtonBox, QFrame, QGroupBox, QLabel, QLineEdit, QListWidget, + QTabWidget, QVBoxLayout, QWidget) + + +class TabDialog(QDialog): + def __init__(self, fileName, parent=None): + super(TabDialog, self).__init__(parent) + + fileInfo = QFileInfo(fileName) + + tabWidget = QTabWidget() + tabWidget.addTab(GeneralTab(fileInfo), "General") + tabWidget.addTab(PermissionsTab(fileInfo), "Permissions") + tabWidget.addTab(ApplicationsTab(fileInfo), "Applications") + + buttonBox = QDialogButtonBox(QDialogButtonBox.Ok | QDialogButtonBox.Cancel) + + buttonBox.accepted.connect(self.accept) + buttonBox.rejected.connect(self.reject) + + mainLayout = QVBoxLayout() + mainLayout.addWidget(tabWidget) + mainLayout.addWidget(buttonBox) + self.setLayout(mainLayout) + + self.setWindowTitle("Tab Dialog") + + +class GeneralTab(QWidget): + def __init__(self, fileInfo, parent=None): + super(GeneralTab, self).__init__(parent) + + fileNameLabel = QLabel("File Name:") + fileNameEdit = QLineEdit(fileInfo.fileName()) + + pathLabel = QLabel("Path:") + pathValueLabel = QLabel(fileInfo.absoluteFilePath()) + pathValueLabel.setFrameStyle(QFrame.Panel | QFrame.Sunken) + + sizeLabel = QLabel("Size:") + size = fileInfo.size() // 1024 + sizeValueLabel = QLabel("%d K" % size) + sizeValueLabel.setFrameStyle(QFrame.Panel | QFrame.Sunken) + + lastReadLabel = QLabel("Last Read:") + lastReadValueLabel = QLabel(fileInfo.lastRead().toString()) + lastReadValueLabel.setFrameStyle(QFrame.Panel | QFrame.Sunken) + + lastModLabel = QLabel("Last Modified:") + lastModValueLabel = QLabel(fileInfo.lastModified().toString()) + lastModValueLabel.setFrameStyle(QFrame.Panel | QFrame.Sunken) + + mainLayout = QVBoxLayout() + mainLayout.addWidget(fileNameLabel) + mainLayout.addWidget(fileNameEdit) + mainLayout.addWidget(pathLabel) + mainLayout.addWidget(pathValueLabel) + mainLayout.addWidget(sizeLabel) + mainLayout.addWidget(sizeValueLabel) + mainLayout.addWidget(lastReadLabel) + mainLayout.addWidget(lastReadValueLabel) + mainLayout.addWidget(lastModLabel) + mainLayout.addWidget(lastModValueLabel) + mainLayout.addStretch(1) + self.setLayout(mainLayout) + + +class PermissionsTab(QWidget): + def __init__(self, fileInfo, parent=None): + super(PermissionsTab, self).__init__(parent) + + permissionsGroup = QGroupBox("Permissions") + + readable = QCheckBox("Readable") + if fileInfo.isReadable(): + readable.setChecked(True) + + writable = QCheckBox("Writable") + if fileInfo.isWritable(): + writable.setChecked(True) + + executable = QCheckBox("Executable") + if fileInfo.isExecutable(): + executable.setChecked(True) + + ownerGroup = QGroupBox("Ownership") + + ownerLabel = QLabel("Owner") + ownerValueLabel = QLabel(fileInfo.owner()) + ownerValueLabel.setFrameStyle(QFrame.Panel | QFrame.Sunken) + + groupLabel = QLabel("Group") + groupValueLabel = QLabel(fileInfo.group()) + groupValueLabel.setFrameStyle(QFrame.Panel | QFrame.Sunken) + + permissionsLayout = QVBoxLayout() + permissionsLayout.addWidget(readable) + permissionsLayout.addWidget(writable) + permissionsLayout.addWidget(executable) + permissionsGroup.setLayout(permissionsLayout) + + ownerLayout = QVBoxLayout() + ownerLayout.addWidget(ownerLabel) + ownerLayout.addWidget(ownerValueLabel) + ownerLayout.addWidget(groupLabel) + ownerLayout.addWidget(groupValueLabel) + ownerGroup.setLayout(ownerLayout) + + mainLayout = QVBoxLayout() + mainLayout.addWidget(permissionsGroup) + mainLayout.addWidget(ownerGroup) + mainLayout.addStretch(1) + self.setLayout(mainLayout) + + +class ApplicationsTab(QWidget): + def __init__(self, fileInfo, parent=None): + super(ApplicationsTab, self).__init__(parent) + + topLabel = QLabel("Open with:") + + applicationsListBox = QListWidget() + applications = [] + + for i in range(1, 31): + applications.append("Application %d" % i) + + applicationsListBox.insertItems(0, applications) + + alwaysCheckBox = QCheckBox() + + if fileInfo.suffix(): + alwaysCheckBox = QCheckBox("Always use this application to open " + "files with the extension '%s'" % fileInfo.suffix()) + else: + alwaysCheckBox = QCheckBox("Always use this application to open " + "this type of file") + + layout = QVBoxLayout() + layout.addWidget(topLabel) + layout.addWidget(applicationsListBox) + layout.addWidget(alwaysCheckBox) + self.setLayout(layout) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + if len(sys.argv) >= 2: + fileName = sys.argv[1] + else: + fileName = "." + + tabdialog = TabDialog(fileName) + tabdialog.show() + sys.exit(app.exec_()) diff --git a/examples/dialogs/trivialwizard.py b/examples/dialogs/trivialwizard.py new file mode 100755 index 0000000..6e4436d --- /dev/null +++ b/examples/dialogs/trivialwizard.py @@ -0,0 +1,114 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtWidgets import (QApplication, QGridLayout, QLabel, QLineEdit, + QVBoxLayout, QWizard, QWizardPage) + + +def createIntroPage(): + page = QWizardPage() + page.setTitle("Introduction") + + label = QLabel( + "This wizard will help you register your copy of Super Product " + "Two.") + label.setWordWrap(True) + + layout = QVBoxLayout() + layout.addWidget(label) + page.setLayout(layout) + + return page + + +def createRegistrationPage(): + page = QWizardPage() + page.setTitle("Registration") + page.setSubTitle("Please fill both fields.") + + nameLabel = QLabel("Name:") + nameLineEdit = QLineEdit() + + emailLabel = QLabel("Email address:") + emailLineEdit = QLineEdit() + + layout = QGridLayout() + layout.addWidget(nameLabel, 0, 0) + layout.addWidget(nameLineEdit, 0, 1) + layout.addWidget(emailLabel, 1, 0) + layout.addWidget(emailLineEdit, 1, 1) + page.setLayout(layout) + + return page + + +def createConclusionPage(): + page = QWizardPage() + page.setTitle("Conclusion") + + label = QLabel("You are now successfully registered. Have a nice day!") + label.setWordWrap(True) + + layout = QVBoxLayout() + layout.addWidget(label) + page.setLayout(layout) + + return page + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + wizard = QWizard() + wizard.addPage(createIntroPage()) + wizard.addPage(createRegistrationPage()) + wizard.addPage(createConclusionPage()) + + wizard.setWindowTitle("Trivial Wizard") + wizard.show() + + sys.exit(app.exec_()) diff --git a/examples/draganddrop/README b/examples/draganddrop/README new file mode 100644 index 0000000..4ea75cd --- /dev/null +++ b/examples/draganddrop/README @@ -0,0 +1,26 @@ +PyQt supports native drag and drop on all platforms via an extensible +MIME-based system that enables applications to send data to each other in the +most appropriate formats. + +Drag and drop can also be implemented for internal use by applications. + + +The example launcher provided with PyQt can be used to explore each of the +examples in this directory. + +Documentation for these examples can be found via the Tutorial and Examples +link in the main Qt documentation. + + +Finding the PyQt Examples and Demos launcher +============================================ + +On Windows: + +The launcher can be accessed via the Windows Start menu. Select the menu +entry entitled "Examples and Demos" entry in the submenu containing PyQt5. + +On all platforms: + +The source code for the launcher can be found in the examples/demos/qtdemo +directory in the PyQt package. diff --git a/examples/draganddrop/delayedencoding/delayedencoding.py b/examples/draganddrop/delayedencoding/delayedencoding.py new file mode 100755 index 0000000..c8ae257 --- /dev/null +++ b/examples/draganddrop/delayedencoding/delayedencoding.py @@ -0,0 +1,136 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited +## Copyright (C) 2010 Hans-Peter Jansen . +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (pyqtSignal, QBuffer, QByteArray, QFile, QIODevice, + QMimeData, Qt) +from PyQt5.QtGui import QDrag, QIcon, QImage, QPainter, QPixmap +from PyQt5.QtWidgets import (QApplication, QGridLayout, QLabel, QPushButton, + QScrollArea, QWidget) +from PyQt5.QtSvg import QSvgWidget + +import delayedencoding_rc + + +class MimeData(QMimeData): + + dataRequested = pyqtSignal(str) + + def formats(self): + formats = QMimeData.formats(self) + formats.append('image/png') + + return formats + + def retrieveData(self, mimeType, qvtype): + self.dataRequested.emit(mimeType) + + return QMimeData.retrieveData(self, mimeType, qvtype) + + +class SourceWidget(QWidget): + def __init__(self, parent=None): + super(SourceWidget, self).__init__(parent) + + self.mimeData = None + + imageFile = QFile(':/images/example.svg') + imageFile.open(QIODevice.ReadOnly) + self.imageData = imageFile.readAll() + imageFile.close() + + imageArea = QScrollArea() + self.imageLabel = QSvgWidget() + self.imageLabel.renderer().load(self.imageData) + imageArea.setWidget(self.imageLabel) + + instructTopLabel = QLabel("This is an SVG drawing:") + instructBottomLabel = QLabel("Drag the icon to copy the drawing as a PNG file:") + dragIcon = QPushButton("Export") + dragIcon.setIcon(QIcon(':/images/drag.png')) + dragIcon.pressed.connect(self.startDrag) + + layout = QGridLayout() + layout.addWidget(instructTopLabel, 0, 0, 1, 2) + layout.addWidget(imageArea, 1, 0, 2, 2) + layout.addWidget(instructBottomLabel, 3, 0) + layout.addWidget(dragIcon, 3, 1) + self.setLayout(layout) + self.setWindowTitle("Delayed Encoding") + + def createData(self, mimeType): + if mimeType != 'image/png': + return + + image = QImage(self.imageLabel.size(), QImage.Format_RGB32) + painter = QPainter() + painter.begin(image) + self.imageLabel.renderer().render(painter) + painter.end() + + data = QByteArray() + buffer = QBuffer(data) + buffer.open(QIODevice.WriteOnly) + image.save(buffer, 'PNG') + buffer.close() + self.mimeData.setData('image/png', data) + + def startDrag(self): + self.mimeData = MimeData() + self.mimeData.dataRequested.connect(self.createData, Qt.DirectConnection) + + drag = QDrag(self) + drag.setMimeData(self.mimeData) + drag.setPixmap(QPixmap(':/images/drag.png')) + drag.exec_(Qt.CopyAction) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + window = SourceWidget() + window.show() + sys.exit(app.exec_()) diff --git a/examples/draganddrop/delayedencoding/delayedencoding.qrc b/examples/draganddrop/delayedencoding/delayedencoding.qrc new file mode 100644 index 0000000..374f211 --- /dev/null +++ b/examples/draganddrop/delayedencoding/delayedencoding.qrc @@ -0,0 +1,6 @@ + + + images/drag.png + images/example.svg + + diff --git a/examples/draganddrop/delayedencoding/delayedencoding_rc.py b/examples/draganddrop/delayedencoding/delayedencoding_rc.py new file mode 100644 index 0000000..6424a9e --- /dev/null +++ b/examples/draganddrop/delayedencoding/delayedencoding_rc.py @@ -0,0 +1,278 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sat May 4 16:44:22 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x03\xd1\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x20\x00\x00\x00\x20\x08\x06\x00\x00\x00\x73\x7a\x7a\xf4\ +\x00\x00\x00\x04\x67\x41\x4d\x41\x00\x00\xd6\xd8\xd4\x4f\x58\x32\ +\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\x74\x77\x61\x72\x65\ +\x00\x41\x64\x6f\x62\x65\x20\x49\x6d\x61\x67\x65\x52\x65\x61\x64\ +\x79\x71\xc9\x65\x3c\x00\x00\x03\x63\x49\x44\x41\x54\x58\xc3\xc5\ +\x97\xcd\x6f\x1b\x55\x14\xc5\x7f\x77\x66\x92\x89\xd3\x7c\xd4\xad\ +\x17\x09\x20\xd2\x4d\x55\x51\x10\x08\x51\x84\xca\x0a\x09\xd8\x20\ +\xc4\xa2\x52\x17\x2c\x2a\x24\x28\x6b\x36\x2c\x90\xfa\x1f\xc0\x82\ +\x0d\xa8\x3b\x04\x2c\xd8\x82\x10\xaa\xda\x45\x05\x64\x07\x08\x04\ +\xa1\x34\x40\x85\x11\x6e\x21\xb5\x13\x9c\xe6\xc3\xb5\xd3\x79\xef\ +\x5d\x16\xf3\xec\x8c\x9d\xc4\xa6\xf5\x54\x1d\xe9\x4a\x1e\x69\x3c\ +\xe7\xdc\x73\xce\xbb\xef\x8d\xa8\x2a\xf7\xf2\x0a\xb8\xc7\x57\xf4\ +\x7f\x1e\x7a\xff\x35\x79\xf2\xe6\x16\x91\x55\xa4\x30\xca\x13\xc6\ +\x12\xaa\x22\x00\x51\xc0\x4c\x18\x30\xeb\x94\xc0\x3a\x1a\xd5\x35\ +\x3e\x7b\xfb\x73\xe6\x81\xa6\xaa\xba\x41\xef\x96\x41\x16\x9c\x7d\ +\x5d\xce\x3c\xf8\xc8\x0b\xaf\x3a\xa7\xa1\xaa\x06\x0f\x1c\x7d\x76\ +\xdc\x39\x15\x54\x05\x60\xaa\x34\x17\x8d\x17\xef\x1f\x09\xc2\x82\ +\x98\xad\x86\x7e\xf1\xde\x89\xea\x77\x8b\xff\xbe\xfb\xe1\x57\x7c\ +\x02\xd4\x55\xd5\xf6\x05\x50\xd5\xbe\x75\xf6\x34\x3f\xaa\xaa\xaa\ +\x3a\x5f\xb6\xab\x9c\x5a\x6d\xb5\x6e\x6a\xb5\xba\xa4\xc6\x18\xbd\ +\xb2\xf0\x75\xf2\xe6\x8b\x7c\xfb\xfc\xa3\xbc\x02\x14\xdb\x4d\xee\ +\x55\x03\x33\xe0\x94\x10\x2c\x60\x7c\x39\xd2\xfb\xb4\x04\x8b\x31\ +\xb7\x58\x5e\xae\x11\x86\x21\x87\x1e\x7a\x3a\x3a\xf9\xc6\x07\x8f\ +\x1d\x9e\xe1\xe5\x97\x8e\xf1\x1c\x30\x21\x22\x72\xc7\x21\x4c\xbd\ +\xd6\x2e\xd0\xb4\x1c\xe0\x50\x2c\xaa\x09\xcd\x66\x23\x0d\x55\x14\ +\xf1\xf0\xf1\x93\xa3\xa7\xdf\xfa\xf8\x99\xb9\x12\xa7\x80\x43\x40\ +\x61\xc8\x55\x90\x02\x81\x45\x31\x9e\x40\x02\x18\xc4\x93\xc9\xe6\ +\x6d\xdf\xbe\x09\x8e\x3c\x75\x22\x2e\x4d\x72\x1c\x38\x0a\x4c\x0e\ +\xb5\x0a\x14\x87\x60\xd2\xd4\x6e\xe7\x97\x54\x19\x08\x02\xc5\x98\ +\x16\x17\x2f\x5e\x60\x6d\x6d\x83\x20\x80\xfd\xfb\x8b\x68\x54\x8c\ +\x61\x75\x0e\x98\x00\xaa\x77\xac\x80\x64\x2c\xd0\x4e\x1e\x12\xda\ +\xd9\x18\x1d\x15\x66\x66\x0f\xd2\x6c\xd6\xd9\xdc\xac\x61\xcc\x26\ +\x85\xc2\x08\xad\xe6\x2a\x5e\xfe\x68\x48\x05\xac\x57\x40\x3b\x7d\ +\x4b\x46\x85\x20\x54\xee\x9b\x2d\x31\x35\xf9\x38\xc6\x18\xa2\x28\ +\x22\x8e\x0f\x70\x7e\x04\xcd\x65\x10\x09\xce\x77\x4c\xc6\x06\x45\ +\x11\x04\x25\x10\x21\x8e\x85\x38\xce\x5a\x3d\x46\x18\x74\xa4\xd3\ +\x1c\x32\x90\xf8\xb7\xa4\xa0\xda\x87\x6e\x4a\xce\xe5\x37\x8a\xdb\ +\x5e\xb7\x3b\x6f\x83\x48\x4f\x2c\xb7\x1b\x15\xff\x9f\x9c\x08\x08\ +\x0e\xcd\x58\xd0\x26\xa1\x3b\xd6\xc3\x36\x1d\xc9\x57\x81\xd4\x82\ +\xfe\x24\x7b\xe9\xe5\x48\x40\xfd\xe0\x91\x2e\x03\xba\x41\xe9\x49\ +\x9a\xe6\x69\x41\x56\x01\xd9\xa5\x63\x7a\x08\xe5\xae\x40\x9a\x01\ +\xd3\xe9\x51\x76\x89\x1c\x3e\x96\xd2\x09\xa7\xcd\xdf\x82\xde\x5e\ +\xa5\x13\xc6\x14\x7a\xfb\x79\xbd\x1b\x0a\x24\x3b\xe4\xee\xf6\x5c\ +\xbb\x16\x67\xce\x0a\xec\x9c\x84\xba\xeb\x73\xd9\xdd\x43\xf3\x1f\ +\x44\x83\x62\xd7\xfd\xfb\x2e\x0c\xa2\xac\xf3\xfd\x94\x68\x0f\xec\ +\x5c\x97\x61\xba\x15\x0f\x3a\xe1\xc7\xc0\x38\x50\x64\x6d\x25\x70\ +\x1b\x4d\x5a\xb9\x6d\x46\x3b\x2d\x80\xf4\x48\x39\x86\x30\x8d\x52\ +\xa4\x56\x59\xb1\x95\xc5\xcb\xf6\xa7\x2f\x3f\x4a\xae\x2c\xfe\xd0\ +\xb8\x74\x95\x3f\x80\x55\x60\x6b\x48\x05\xd4\x1f\x40\x15\x25\x04\ +\x0a\x08\x53\x28\x07\xa8\x55\x56\xed\xc2\xfc\xb9\xe4\xd7\x6f\x3e\ +\x35\xe5\x72\x79\xfd\xef\x3a\xcb\xdf\xff\xc9\x6f\xe5\x2a\x65\xe0\ +\x1a\x70\x19\x58\x1f\x32\x03\xa0\x8c\xa1\x4c\x03\x07\x3d\xe8\x85\ +\x0e\xe8\x2f\xd7\xa8\x5c\xaa\xf0\xfb\xd2\x0d\xfe\x02\x6a\xc0\x12\ +\xf0\x8f\x3f\x86\xd5\x81\xcd\x21\x15\x38\x42\xad\xb2\x6c\x17\xe6\ +\xcf\xef\x05\x7a\x1d\xb8\xea\x41\xeb\xc0\x86\x07\xdd\xd2\x01\x5f\ +\x3e\x03\x09\xac\x37\x39\xf7\xce\xa9\xc2\xf4\xf5\x1b\xd8\x9f\x2b\ +\x2c\xed\x01\xba\xe2\x65\x6e\x00\x89\xde\xc6\x17\xef\xc0\x4f\x33\ +\x11\x29\x01\xc7\x80\xc3\xc0\x2d\x0f\x38\x14\xe8\xed\x12\x18\x01\ +\xa6\xfd\xd1\xda\x7a\x69\x87\x02\xcd\x5e\xff\x01\xf9\x68\x10\x8e\ +\x11\x57\x76\x24\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\ +\x00\x00\x0a\x81\ +\x3c\ +\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\ +\x30\x22\x20\x73\x74\x61\x6e\x64\x61\x6c\x6f\x6e\x65\x3d\x22\x6e\ +\x6f\x22\x3f\x3e\x0a\x3c\x21\x2d\x2d\x20\x2a\x2a\x2a\x2a\x2a\x2a\ +\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\ +\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\ +\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\ +\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\ +\x2a\x0a\x2a\x2a\x0a\x2a\x2a\x20\x43\x6f\x70\x79\x72\x69\x67\x68\ +\x74\x20\x28\x43\x29\x20\x32\x30\x31\x30\x20\x4e\x6f\x6b\x69\x61\ +\x20\x43\x6f\x72\x70\x6f\x72\x61\x74\x69\x6f\x6e\x20\x61\x6e\x64\ +\x2f\x6f\x72\x20\x69\x74\x73\x20\x73\x75\x62\x73\x69\x64\x69\x61\ +\x72\x79\x28\x2d\x69\x65\x73\x29\x2e\x0a\x2a\x2a\x20\x41\x6c\x6c\ +\x20\x72\x69\x67\x68\x74\x73\x20\x72\x65\x73\x65\x72\x76\x65\x64\ +\x2e\x0a\x2a\x2a\x20\x43\x6f\x6e\x74\x61\x63\x74\x3a\x20\x4e\x6f\ +\x6b\x69\x61\x20\x43\x6f\x72\x70\x6f\x72\x61\x74\x69\x6f\x6e\x20\ +\x28\x71\x74\x2d\x69\x6e\x66\x6f\x40\x6e\x6f\x6b\x69\x61\x2e\x63\ +\x6f\x6d\x29\x0a\x2a\x2a\x0a\x2a\x2a\x20\x54\x68\x69\x73\x20\x66\ +\x69\x6c\x65\x20\x69\x73\x20\x70\x61\x72\x74\x20\x6f\x66\x20\x74\ +\x68\x65\x20\x65\x78\x61\x6d\x70\x6c\x65\x73\x20\x6f\x66\x20\x74\ +\x68\x65\x20\x51\x74\x20\x54\x6f\x6f\x6c\x6b\x69\x74\x2e\x0a\x2a\ +\x2a\x0a\x2a\x2a\x20\x24\x51\x54\x5f\x42\x45\x47\x49\x4e\x5f\x4c\ +\x49\x43\x45\x4e\x53\x45\x3a\x4c\x47\x50\x4c\x24\x0a\x2a\x2a\x20\ +\x43\x6f\x6d\x6d\x65\x72\x63\x69\x61\x6c\x20\x55\x73\x61\x67\x65\ +\x0a\x2a\x2a\x20\x4c\x69\x63\x65\x6e\x73\x65\x65\x73\x20\x68\x6f\ +\x6c\x64\x69\x6e\x67\x20\x76\x61\x6c\x69\x64\x20\x51\x74\x20\x43\ +\x6f\x6d\x6d\x65\x72\x63\x69\x61\x6c\x20\x6c\x69\x63\x65\x6e\x73\ +\x65\x73\x20\x6d\x61\x79\x20\x75\x73\x65\x20\x74\x68\x69\x73\x20\ +\x66\x69\x6c\x65\x20\x69\x6e\x0a\x2a\x2a\x20\x61\x63\x63\x6f\x72\ +\x64\x61\x6e\x63\x65\x20\x77\x69\x74\x68\x20\x74\x68\x65\x20\x51\ +\x74\x20\x43\x6f\x6d\x6d\x65\x72\x63\x69\x61\x6c\x20\x4c\x69\x63\ +\x65\x6e\x73\x65\x20\x41\x67\x72\x65\x65\x6d\x65\x6e\x74\x20\x70\ +\x72\x6f\x76\x69\x64\x65\x64\x20\x77\x69\x74\x68\x20\x74\x68\x65\ +\x0a\x2a\x2a\x20\x53\x6f\x66\x74\x77\x61\x72\x65\x20\x6f\x72\x2c\ +\x20\x61\x6c\x74\x65\x72\x6e\x61\x74\x69\x76\x65\x6c\x79\x2c\x20\ +\x69\x6e\x20\x61\x63\x63\x6f\x72\x64\x61\x6e\x63\x65\x20\x77\x69\ +\x74\x68\x20\x74\x68\x65\x20\x74\x65\x72\x6d\x73\x20\x63\x6f\x6e\ +\x74\x61\x69\x6e\x65\x64\x20\x69\x6e\x0a\x2a\x2a\x20\x61\x20\x77\ +\x72\x69\x74\x74\x65\x6e\x20\x61\x67\x72\x65\x65\x6d\x65\x6e\x74\ +\x20\x62\x65\x74\x77\x65\x65\x6e\x20\x79\x6f\x75\x20\x61\x6e\x64\ +\x20\x4e\x6f\x6b\x69\x61\x2e\x0a\x2a\x2a\x0a\x2a\x2a\x20\x47\x4e\ +\x55\x20\x4c\x65\x73\x73\x65\x72\x20\x47\x65\x6e\x65\x72\x61\x6c\ +\x20\x50\x75\x62\x6c\x69\x63\x20\x4c\x69\x63\x65\x6e\x73\x65\x20\ +\x55\x73\x61\x67\x65\x0a\x2a\x2a\x20\x41\x6c\x74\x65\x72\x6e\x61\ +\x74\x69\x76\x65\x6c\x79\x2c\x20\x74\x68\x69\x73\x20\x66\x69\x6c\ +\x65\x20\x6d\x61\x79\x20\x62\x65\x20\x75\x73\x65\x64\x20\x75\x6e\ +\x64\x65\x72\x20\x74\x68\x65\x20\x74\x65\x72\x6d\x73\x20\x6f\x66\ +\x20\x74\x68\x65\x20\x47\x4e\x55\x20\x4c\x65\x73\x73\x65\x72\x0a\ +\x2a\x2a\x20\x47\x65\x6e\x65\x72\x61\x6c\x20\x50\x75\x62\x6c\x69\ +\x63\x20\x4c\x69\x63\x65\x6e\x73\x65\x20\x76\x65\x72\x73\x69\x6f\ +\x6e\x20\x32\x2e\x31\x20\x61\x73\x20\x70\x75\x62\x6c\x69\x73\x68\ +\x65\x64\x20\x62\x79\x20\x74\x68\x65\x20\x46\x72\x65\x65\x20\x53\ +\x6f\x66\x74\x77\x61\x72\x65\x0a\x2a\x2a\x20\x46\x6f\x75\x6e\x64\ +\x61\x74\x69\x6f\x6e\x20\x61\x6e\x64\x20\x61\x70\x70\x65\x61\x72\ +\x69\x6e\x67\x20\x69\x6e\x20\x74\x68\x65\x20\x66\x69\x6c\x65\x20\ +\x4c\x49\x43\x45\x4e\x53\x45\x2e\x4c\x47\x50\x4c\x20\x69\x6e\x63\ +\x6c\x75\x64\x65\x64\x20\x69\x6e\x20\x74\x68\x65\x0a\x2a\x2a\x20\ +\x70\x61\x63\x6b\x61\x67\x69\x6e\x67\x20\x6f\x66\x20\x74\x68\x69\ +\x73\x20\x66\x69\x6c\x65\x2e\x20\x20\x50\x6c\x65\x61\x73\x65\x20\ +\x72\x65\x76\x69\x65\x77\x20\x74\x68\x65\x20\x66\x6f\x6c\x6c\x6f\ +\x77\x69\x6e\x67\x20\x69\x6e\x66\x6f\x72\x6d\x61\x74\x69\x6f\x6e\ +\x20\x74\x6f\x0a\x2a\x2a\x20\x65\x6e\x73\x75\x72\x65\x20\x74\x68\ +\x65\x20\x47\x4e\x55\x20\x4c\x65\x73\x73\x65\x72\x20\x47\x65\x6e\ +\x65\x72\x61\x6c\x20\x50\x75\x62\x6c\x69\x63\x20\x4c\x69\x63\x65\ +\x6e\x73\x65\x20\x76\x65\x72\x73\x69\x6f\x6e\x20\x32\x2e\x31\x20\ +\x72\x65\x71\x75\x69\x72\x65\x6d\x65\x6e\x74\x73\x0a\x2a\x2a\x20\ +\x77\x69\x6c\x6c\x20\x62\x65\x20\x6d\x65\x74\x3a\x20\x68\x74\x74\ +\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x67\x6e\x75\x2e\x6f\x72\x67\x2f\ +\x6c\x69\x63\x65\x6e\x73\x65\x73\x2f\x6f\x6c\x64\x2d\x6c\x69\x63\ +\x65\x6e\x73\x65\x73\x2f\x6c\x67\x70\x6c\x2d\x32\x2e\x31\x2e\x68\ +\x74\x6d\x6c\x2e\x0a\x2a\x2a\x0a\x2a\x2a\x20\x49\x6e\x20\x61\x64\ +\x64\x69\x74\x69\x6f\x6e\x2c\x20\x61\x73\x20\x61\x20\x73\x70\x65\ +\x63\x69\x61\x6c\x20\x65\x78\x63\x65\x70\x74\x69\x6f\x6e\x2c\x20\ +\x4e\x6f\x6b\x69\x61\x20\x67\x69\x76\x65\x73\x20\x79\x6f\x75\x20\ +\x63\x65\x72\x74\x61\x69\x6e\x20\x61\x64\x64\x69\x74\x69\x6f\x6e\ +\x61\x6c\x0a\x2a\x2a\x20\x72\x69\x67\x68\x74\x73\x2e\x20\x20\x54\ +\x68\x65\x73\x65\x20\x72\x69\x67\x68\x74\x73\x20\x61\x72\x65\x20\ +\x64\x65\x73\x63\x72\x69\x62\x65\x64\x20\x69\x6e\x20\x74\x68\x65\ +\x20\x4e\x6f\x6b\x69\x61\x20\x51\x74\x20\x4c\x47\x50\x4c\x20\x45\ +\x78\x63\x65\x70\x74\x69\x6f\x6e\x0a\x2a\x2a\x20\x76\x65\x72\x73\ +\x69\x6f\x6e\x20\x31\x2e\x31\x2c\x20\x69\x6e\x63\x6c\x75\x64\x65\ +\x64\x20\x69\x6e\x20\x74\x68\x65\x20\x66\x69\x6c\x65\x20\x4c\x47\ +\x50\x4c\x5f\x45\x58\x43\x45\x50\x54\x49\x4f\x4e\x2e\x74\x78\x74\ +\x20\x69\x6e\x20\x74\x68\x69\x73\x20\x70\x61\x63\x6b\x61\x67\x65\ +\x2e\x0a\x2a\x2a\x0a\x2a\x2a\x20\x47\x4e\x55\x20\x47\x65\x6e\x65\ +\x72\x61\x6c\x20\x50\x75\x62\x6c\x69\x63\x20\x4c\x69\x63\x65\x6e\ +\x73\x65\x20\x55\x73\x61\x67\x65\x0a\x2a\x2a\x20\x41\x6c\x74\x65\ +\x72\x6e\x61\x74\x69\x76\x65\x6c\x79\x2c\x20\x74\x68\x69\x73\x20\ +\x66\x69\x6c\x65\x20\x6d\x61\x79\x20\x62\x65\x20\x75\x73\x65\x64\ +\x20\x75\x6e\x64\x65\x72\x20\x74\x68\x65\x20\x74\x65\x72\x6d\x73\ +\x20\x6f\x66\x20\x74\x68\x65\x20\x47\x4e\x55\x0a\x2a\x2a\x20\x47\ +\x65\x6e\x65\x72\x61\x6c\x20\x50\x75\x62\x6c\x69\x63\x20\x4c\x69\ +\x63\x65\x6e\x73\x65\x20\x76\x65\x72\x73\x69\x6f\x6e\x20\x33\x2e\ +\x30\x20\x61\x73\x20\x70\x75\x62\x6c\x69\x73\x68\x65\x64\x20\x62\ +\x79\x20\x74\x68\x65\x20\x46\x72\x65\x65\x20\x53\x6f\x66\x74\x77\ +\x61\x72\x65\x0a\x2a\x2a\x20\x46\x6f\x75\x6e\x64\x61\x74\x69\x6f\ +\x6e\x20\x61\x6e\x64\x20\x61\x70\x70\x65\x61\x72\x69\x6e\x67\x20\ +\x69\x6e\x20\x74\x68\x65\x20\x66\x69\x6c\x65\x20\x4c\x49\x43\x45\ +\x4e\x53\x45\x2e\x47\x50\x4c\x20\x69\x6e\x63\x6c\x75\x64\x65\x64\ +\x20\x69\x6e\x20\x74\x68\x65\x0a\x2a\x2a\x20\x70\x61\x63\x6b\x61\ +\x67\x69\x6e\x67\x20\x6f\x66\x20\x74\x68\x69\x73\x20\x66\x69\x6c\ +\x65\x2e\x20\x20\x50\x6c\x65\x61\x73\x65\x20\x72\x65\x76\x69\x65\ +\x77\x20\x74\x68\x65\x20\x66\x6f\x6c\x6c\x6f\x77\x69\x6e\x67\x20\ +\x69\x6e\x66\x6f\x72\x6d\x61\x74\x69\x6f\x6e\x20\x74\x6f\x0a\x2a\ +\x2a\x20\x65\x6e\x73\x75\x72\x65\x20\x74\x68\x65\x20\x47\x4e\x55\ +\x20\x47\x65\x6e\x65\x72\x61\x6c\x20\x50\x75\x62\x6c\x69\x63\x20\ +\x4c\x69\x63\x65\x6e\x73\x65\x20\x76\x65\x72\x73\x69\x6f\x6e\x20\ +\x33\x2e\x30\x20\x72\x65\x71\x75\x69\x72\x65\x6d\x65\x6e\x74\x73\ +\x20\x77\x69\x6c\x6c\x20\x62\x65\x0a\x2a\x2a\x20\x6d\x65\x74\x3a\ +\x20\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x67\x6e\x75\x2e\ +\x6f\x72\x67\x2f\x63\x6f\x70\x79\x6c\x65\x66\x74\x2f\x67\x70\x6c\ +\x2e\x68\x74\x6d\x6c\x2e\x0a\x2a\x2a\x0a\x2a\x2a\x20\x49\x66\x20\ +\x79\x6f\x75\x20\x68\x61\x76\x65\x20\x71\x75\x65\x73\x74\x69\x6f\ +\x6e\x73\x20\x72\x65\x67\x61\x72\x64\x69\x6e\x67\x20\x74\x68\x65\ +\x20\x75\x73\x65\x20\x6f\x66\x20\x74\x68\x69\x73\x20\x66\x69\x6c\ +\x65\x2c\x20\x70\x6c\x65\x61\x73\x65\x20\x63\x6f\x6e\x74\x61\x63\ +\x74\x0a\x2a\x2a\x20\x4e\x6f\x6b\x69\x61\x20\x61\x74\x20\x71\x74\ +\x2d\x69\x6e\x66\x6f\x40\x6e\x6f\x6b\x69\x61\x2e\x63\x6f\x6d\x2e\ +\x0a\x2a\x2a\x20\x24\x51\x54\x5f\x45\x4e\x44\x5f\x4c\x49\x43\x45\ +\x4e\x53\x45\x24\x0a\x2a\x2a\x0a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\ +\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\ +\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\ +\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\ +\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\x2a\ +\x20\x2d\x2d\x3e\x0a\x3c\x73\x76\x67\x20\x77\x69\x64\x74\x68\x3d\ +\x22\x38\x63\x6d\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x38\x63\ +\x6d\x22\x20\x76\x69\x65\x77\x42\x6f\x78\x3d\x22\x30\x20\x30\x20\ +\x34\x30\x30\x20\x34\x30\x30\x22\x0a\x20\x20\x20\x20\x20\x78\x6d\ +\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\ +\x77\x33\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\ +\x20\x62\x61\x73\x65\x50\x72\x6f\x66\x69\x6c\x65\x3d\x22\x74\x69\ +\x6e\x79\x22\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\x31\ +\x22\x3e\x0a\x20\x20\x3c\x74\x69\x74\x6c\x65\x3e\x53\x70\x68\x65\ +\x72\x65\x3c\x2f\x74\x69\x74\x6c\x65\x3e\x0a\x20\x20\x3c\x64\x65\ +\x73\x63\x3e\x41\x20\x67\x72\x61\x64\x69\x65\x6e\x74\x20\x66\x69\ +\x6c\x6c\x65\x64\x20\x73\x70\x68\x65\x72\x65\x2e\x3c\x2f\x64\x65\ +\x73\x63\x3e\x0a\x20\x20\x3c\x67\x3e\x0a\x20\x20\x20\x20\x3c\x64\ +\x65\x66\x73\x3e\x0a\x20\x20\x20\x20\x20\x20\x3c\x72\x61\x64\x69\ +\x61\x6c\x47\x72\x61\x64\x69\x65\x6e\x74\x20\x69\x64\x3d\x22\x62\ +\x6c\x75\x65\x53\x70\x68\x65\x72\x65\x22\x20\x67\x72\x61\x64\x69\ +\x65\x6e\x74\x55\x6e\x69\x74\x73\x3d\x22\x75\x73\x65\x72\x53\x70\ +\x61\x63\x65\x4f\x6e\x55\x73\x65\x22\x0a\x20\x20\x20\x20\x20\x20\ +\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\ +\x63\x78\x3d\x22\x32\x30\x30\x22\x20\x63\x79\x3d\x22\x32\x30\x30\ +\x22\x20\x72\x3d\x22\x31\x30\x30\x22\x20\x66\x78\x3d\x22\x31\x35\ +\x30\x22\x20\x66\x79\x3d\x22\x31\x35\x30\x22\x3e\x0a\x20\x20\x20\ +\x20\x20\x20\x20\x20\x3c\x73\x74\x6f\x70\x20\x6f\x66\x66\x73\x65\ +\x74\x3d\x22\x30\x25\x22\x20\x73\x74\x6f\x70\x2d\x63\x6f\x6c\x6f\ +\x72\x3d\x22\x77\x68\x69\x74\x65\x22\x20\x2f\x3e\x0a\x20\x20\x20\ +\x20\x20\x20\x20\x20\x3c\x73\x74\x6f\x70\x20\x6f\x66\x66\x73\x65\ +\x74\x3d\x22\x37\x35\x25\x22\x20\x73\x74\x6f\x70\x2d\x63\x6f\x6c\ +\x6f\x72\x3d\x22\x62\x6c\x75\x65\x22\x20\x2f\x3e\x0a\x20\x20\x20\ +\x20\x20\x20\x20\x20\x3c\x73\x74\x6f\x70\x20\x6f\x66\x66\x73\x65\ +\x74\x3d\x22\x31\x30\x30\x25\x22\x20\x73\x74\x6f\x70\x2d\x63\x6f\ +\x6c\x6f\x72\x3d\x22\x62\x6c\x61\x63\x6b\x22\x20\x2f\x3e\x0a\x20\ +\x20\x20\x20\x20\x20\x3c\x2f\x72\x61\x64\x69\x61\x6c\x47\x72\x61\ +\x64\x69\x65\x6e\x74\x3e\x0a\x20\x20\x20\x20\x3c\x2f\x64\x65\x66\ +\x73\x3e\x0a\x20\x20\x20\x20\x3c\x72\x65\x63\x74\x20\x66\x69\x6c\ +\x6c\x3d\x22\x6c\x69\x67\x68\x74\x62\x6c\x75\x65\x22\x20\x78\x3d\ +\x22\x30\x22\x20\x79\x3d\x22\x30\x22\x20\x77\x69\x64\x74\x68\x3d\ +\x22\x34\x30\x30\x22\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x34\x30\ +\x30\x22\x20\x2f\x3e\x0a\x20\x20\x20\x20\x3c\x63\x69\x72\x63\x6c\ +\x65\x20\x66\x69\x6c\x6c\x3d\x22\x75\x72\x6c\x28\x23\x62\x6c\x75\ +\x65\x53\x70\x68\x65\x72\x65\x29\x22\x20\x73\x74\x72\x6f\x6b\x65\ +\x3d\x22\x62\x6c\x61\x63\x6b\x22\x20\x73\x74\x72\x6f\x6b\x65\x2d\ +\x77\x69\x64\x74\x68\x3d\x22\x32\x22\x20\x20\x0a\x20\x20\x20\x20\ +\x20\x20\x20\x20\x20\x20\x63\x78\x3d\x22\x32\x30\x30\x22\x20\x63\ +\x79\x3d\x22\x32\x30\x30\x22\x20\x72\x3d\x22\x31\x30\x30\x22\x2f\ +\x3e\x0a\x20\x20\x3c\x2f\x67\x3e\x0a\x3c\x2f\x73\x76\x67\x3e\x0a\ +\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x08\ +\x08\x7a\x5a\x27\ +\x00\x64\ +\x00\x72\x00\x61\x00\x67\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0b\ +\x08\x01\x8a\x47\ +\x00\x65\ +\x00\x78\x00\x61\x00\x6d\x00\x70\x00\x6c\x00\x65\x00\x2e\x00\x73\x00\x76\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x02\x00\x00\x00\x02\ +\x00\x00\x00\x28\x00\x00\x00\x00\x00\x01\x00\x00\x03\xd5\ +\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() diff --git a/examples/draganddrop/delayedencoding/images/drag.png b/examples/draganddrop/delayedencoding/images/drag.png new file mode 100644 index 0000000000000000000000000000000000000000..dd795cfffc5c1ce273b3afedb5ed01da3fc5668c GIT binary patch literal 977 zcmV;?11|iDP)bWCsWYp)^2+5pE&16P)J5wbOa;T^94~jGe@$^;8|{N*-xE=iGD7yYG#t zD);gVxW`xYe;#`OHF@&p7Liq?Fv=6g5~?BqQNT@!pB*cZ>hN`{7r7 z0@PL2_61PYzIFCAKdP##I$yS{oLX(QZfdoPWw^&}T5r!d$9(p=D`Njv29iHLkmyYoqFd-sx$01C;)-KSr9NW?hA@p%q*ht6 zmBq{Ur!PNBt}Oo0xOA02fK^~?NCng%Kounf3J6mu2dGt6?ZW)I`_c{m0&2h#@Q*)+)q%|+6*xkz zvTPUT&+i3#9k}X2>%fKw-O>SHJ_8A?H#zstslxR28`z&KEbRfh;$?0CiQdK+@4!zp z5h(%3fWyEo4>%O)?GhLPrv1^{dTECO&0hZj`DhT15m$C300000NkvXXu0mjfIXk#o literal 0 HcmV?d00001 diff --git a/examples/draganddrop/delayedencoding/images/example.svg b/examples/draganddrop/delayedencoding/images/example.svg new file mode 100644 index 0000000..8bc147d --- /dev/null +++ b/examples/draganddrop/delayedencoding/images/example.svg @@ -0,0 +1,59 @@ + + + + Sphere + A gradient filled sphere. + + + + + + + + + + + + diff --git a/examples/draganddrop/draggableicons/draggableicons.py b/examples/draganddrop/draggableicons/draggableicons.py new file mode 100755 index 0000000..9e9674d --- /dev/null +++ b/examples/draganddrop/draggableicons/draggableicons.py @@ -0,0 +1,163 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (QByteArray, QDataStream, QIODevice, QMimeData, + QPoint, Qt) +from PyQt5.QtGui import QColor, QDrag, QPainter, QPixmap +from PyQt5.QtWidgets import QApplication, QFrame, QHBoxLayout, QLabel, QWidget + +import draggableicons_rc + + +class DragWidget(QFrame): + def __init__(self, parent=None): + super(DragWidget, self).__init__(parent) + + self.setMinimumSize(200, 200) + self.setFrameStyle(QFrame.Sunken | QFrame.StyledPanel) + self.setAcceptDrops(True) + + boatIcon = QLabel(self) + boatIcon.setPixmap(QPixmap(':/images/boat.png')) + boatIcon.move(20, 20) + boatIcon.show() + boatIcon.setAttribute(Qt.WA_DeleteOnClose) + + carIcon = QLabel(self) + carIcon.setPixmap(QPixmap(':/images/car.png')) + carIcon.move(120, 20) + carIcon.show() + carIcon.setAttribute(Qt.WA_DeleteOnClose) + + houseIcon = QLabel(self) + houseIcon.setPixmap(QPixmap(':/images/house.png')) + houseIcon.move(20, 120) + houseIcon.show() + houseIcon.setAttribute(Qt.WA_DeleteOnClose) + + def dragEnterEvent(self, event): + if event.mimeData().hasFormat('application/x-dnditemdata'): + if event.source() == self: + event.setDropAction(Qt.MoveAction) + event.accept() + else: + event.acceptProposedAction() + else: + event.ignore() + + dragMoveEvent = dragEnterEvent + + def dropEvent(self, event): + if event.mimeData().hasFormat('application/x-dnditemdata'): + itemData = event.mimeData().data('application/x-dnditemdata') + dataStream = QDataStream(itemData, QIODevice.ReadOnly) + + pixmap = QPixmap() + offset = QPoint() + dataStream >> pixmap >> offset + + newIcon = QLabel(self) + newIcon.setPixmap(pixmap) + newIcon.move(event.pos() - offset) + newIcon.show() + newIcon.setAttribute(Qt.WA_DeleteOnClose) + + if event.source() == self: + event.setDropAction(Qt.MoveAction) + event.accept() + else: + event.acceptProposedAction() + else: + event.ignore() + + def mousePressEvent(self, event): + child = self.childAt(event.pos()) + if not child: + return + + pixmap = QPixmap(child.pixmap()) + + itemData = QByteArray() + dataStream = QDataStream(itemData, QIODevice.WriteOnly) + dataStream << pixmap << QPoint(event.pos() - child.pos()) + + mimeData = QMimeData() + mimeData.setData('application/x-dnditemdata', itemData) + + drag = QDrag(self) + drag.setMimeData(mimeData) + drag.setPixmap(pixmap) + drag.setHotSpot(event.pos() - child.pos()) + + tempPixmap = QPixmap(pixmap) + painter = QPainter() + painter.begin(tempPixmap) + painter.fillRect(pixmap.rect(), QColor(127, 127, 127, 127)) + painter.end() + + child.setPixmap(tempPixmap) + + if drag.exec_(Qt.CopyAction | Qt.MoveAction, Qt.CopyAction) == Qt.MoveAction: + child.close() + else: + child.show() + child.setPixmap(pixmap) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + mainWidget = QWidget() + horizontalLayout = QHBoxLayout() + horizontalLayout.addWidget(DragWidget()) + horizontalLayout.addWidget(DragWidget()) + + mainWidget.setLayout(horizontalLayout) + mainWidget.setWindowTitle("Draggable Icons") + mainWidget.show() + + sys.exit(app.exec_()) diff --git a/examples/draganddrop/draggableicons/draggableicons.qrc b/examples/draganddrop/draggableicons/draggableicons.qrc new file mode 100644 index 0000000..63f84ac --- /dev/null +++ b/examples/draganddrop/draggableicons/draggableicons.qrc @@ -0,0 +1,7 @@ + + + images/boat.png + images/car.png + images/house.png + + diff --git a/examples/draganddrop/draggableicons/draggableicons_rc.py b/examples/draganddrop/draggableicons/draggableicons_rc.py new file mode 100644 index 0000000..bb930c6 --- /dev/null +++ b/examples/draganddrop/draggableicons/draggableicons_rc.py @@ -0,0 +1,620 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sat May 4 16:53:19 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x0b\x93\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x4b\x00\x00\x00\x36\x08\x02\x00\x00\x00\x00\x90\xf3\xa2\ +\x00\x00\x0b\x5a\x49\x44\x41\x54\x78\x5e\xdc\x93\x41\x0a\x45\x21\ +\x0c\xc4\x5a\x79\xf7\xbf\xb1\xfa\x8b\x42\x36\x01\xff\xbe\x59\x0c\ +\x71\x68\xbb\x33\xd6\x61\xef\x5d\x89\x83\x9f\xe4\x15\x27\xf8\xc2\ +\x02\x95\x9e\x44\x1e\xbd\x77\x81\xb1\xb1\xbb\x13\xf3\x50\x56\x89\ +\x83\x9f\xe4\x15\x27\xf8\xc2\x04\x95\x9e\x44\x1e\xbd\x77\x81\xb1\ +\x2f\x33\xe3\x80\x80\xcb\x7a\x92\x88\xd3\x2b\x76\x95\x88\x4b\xf8\ +\xdf\xfb\xf8\x88\xee\x8c\xe8\x4e\xff\x7f\x18\xab\x3b\x31\x0f\x65\ +\x95\x38\xf8\x49\x5e\x71\x82\x2f\x4c\x50\xe9\x49\xe4\xd1\x7b\x17\ +\x18\x1b\xd1\x9d\x2f\x33\x7f\xbc\x97\x4d\x4c\x54\x57\x14\xc7\xcb\ +\xbc\xc7\x0c\xcc\x0c\x98\xa0\xc5\x05\x51\xab\x26\x2c\x74\xd1\xc6\ +\x9a\x26\x04\x01\x29\x30\x6a\x62\x63\xd2\xc4\xc6\x8f\x85\x8d\x4d\ +\x9b\x18\x6b\x93\x6e\xaa\x4d\x64\xc7\x82\xb4\x4d\xa3\xb1\x5d\xb8\ +\xb1\x8b\xee\x9c\xc6\xfa\x41\x04\x09\x50\x48\x4d\x20\x68\xc4\x26\ +\x8d\x90\xb6\x09\x51\x44\x10\x82\x30\xdf\x9f\x40\x7f\x7d\x27\x9e\ +\x79\xcc\x20\x85\xa0\xde\xdc\xbc\x39\xf7\xdc\x73\xef\xf9\x9f\x8f\ +\x7b\xee\x9d\xdc\x4a\xbd\xfc\x0b\xc3\xde\xd2\xe9\x34\xa9\x9f\x25\ +\x09\x47\x85\x73\x67\x95\xc9\x30\x4b\x32\x3f\x3f\x5f\x25\x97\x80\ +\x67\x87\xf4\x4a\x2a\x4d\xe6\xe9\xf4\x0a\x9a\x3d\x33\x5f\xf7\x8d\ +\x6f\xf7\x3d\x3a\x0c\xc3\x48\x26\x93\x8d\x8d\x8d\x93\x93\x93\x12\ +\x8d\x45\x37\x04\xa8\xd7\xe3\xc9\x73\x3a\x23\xa9\x14\xb3\x2e\xc3\ +\xc8\x9f\x9b\x0b\x86\x42\xd0\xf6\x18\x42\xac\x5b\xb7\xae\xa9\xa9\ +\x89\x30\x02\xd1\xe1\x70\x68\x2e\xac\xf8\xc6\xa7\xa1\x75\x35\x59\ +\xce\x72\x10\x80\xa3\xba\xba\x7a\x62\x62\xe2\xd0\xa1\x43\x91\x48\ +\x04\x8e\x18\x29\x5f\x4d\x16\xaf\xd7\xfb\xcb\xb5\x6b\x89\x07\x0f\ +\x0e\x6c\xdd\x4a\x5c\xee\x3c\x7e\xfc\x57\x71\xf1\x67\xc7\x8f\xb3\ +\x44\x6d\x03\x0f\x62\x7e\xbf\xbf\xac\xac\xac\xbb\xbb\xdb\x34\x4d\ +\x38\x78\x90\xa9\xd7\x77\x1f\x6a\xda\x70\xf0\x20\x52\xa9\x54\x45\ +\x45\xc5\xf6\xed\xdb\x01\xba\x74\xca\x41\x7c\x79\xf6\xec\xa7\x9b\ +\x37\xcf\x9d\x3a\x95\x3c\x79\xf2\xdc\xce\x9d\x7b\x0e\x1c\x80\x99\ +\x48\x24\xd8\x84\x2c\x80\x88\xc7\xe3\x6c\x3b\x36\x36\x56\x5e\x5e\ +\xce\xb6\xf0\x59\x08\x47\x76\x78\x4d\x59\xaa\xc9\xc9\x57\xa2\x17\ +\x0c\x06\xfb\xfa\xfa\xf0\xf4\xb3\x67\xcf\x60\xaa\x02\x11\x16\x1a\ +\xac\xa5\xa5\xa5\xa1\x40\x20\x92\x48\x8c\x85\x42\xf8\x66\x26\x1e\ +\x8f\xe2\x95\x50\x68\x72\x6a\x8a\xb5\xba\x04\x58\x6e\xb7\xbb\xab\ +\xab\xab\xb6\xb6\xb6\xa6\xa6\xa6\xa7\xa7\x47\xd2\x44\x64\x56\x9a\ +\xa5\xe6\x4a\x63\x8e\x0e\x35\x0f\x1a\xf3\x02\x81\x40\x7f\x7f\x3f\ +\xea\x71\x3f\x27\x47\x81\xea\x57\x89\x7c\xd3\x94\xb3\x64\x5a\x47\ +\xcb\xb0\x68\xc3\x34\x0d\xab\xa9\x98\x6c\xe5\x72\xb9\x3a\x3b\x3b\ +\xeb\xea\xea\xec\x46\xf2\x15\x00\xaf\xea\x5d\x8a\x7a\x39\xba\x62\ +\x5e\x55\x55\x95\x9a\x47\x82\xd9\x7d\x6c\x37\x32\x63\x27\x5d\xc1\ +\xc1\xa4\x33\xb4\x49\xaa\x30\x96\x60\x24\xdf\x8e\x8e\x0e\x8e\xf7\ +\xee\xdd\xbb\x45\xa9\xaa\x5e\x81\x85\x4b\x1c\x9b\xd9\x9c\x26\xa7\ +\x4e\x62\x58\x59\x59\x49\x4e\xf6\xf6\xf6\x32\x8c\xc5\x62\x7c\xe5\ +\x58\xaa\x64\xee\x72\x79\x25\x62\xc1\xac\xd5\xc5\x66\x95\xcf\x5a\ +\x02\xb8\x68\x34\xca\xb7\xbd\xbd\x9d\x63\x49\xb2\x48\xe2\x00\xe0\ +\x45\xd8\x16\x35\x24\xfb\xc6\xd7\x28\xe1\xbf\x17\x16\xa7\x74\x7a\ +\xef\x9e\x3d\x88\x0e\x0d\x0d\x31\xa4\x0e\xb8\x0b\x0b\x59\x88\x06\ +\x98\x59\x11\x54\x4d\x20\x33\x48\x62\x97\x2b\xdf\xe1\x58\xe3\x74\ +\xe2\x0c\xb7\x61\x38\x4d\xd3\x53\x54\x44\xfc\xc9\x55\x64\x54\x1a\ +\xfb\x01\x24\xa5\xa2\xc0\xeb\xed\xeb\xed\xf5\xf9\x7c\xfb\xf6\xee\ +\xbd\xd5\xd6\xc6\x1e\x4b\x17\xf6\xac\xbb\xca\xcc\x4a\x2a\xbd\xdf\ +\xc2\xe1\xf0\x1f\x83\x83\x9a\x37\xac\x90\xc8\x42\x9c\x39\x7d\xba\ +\xff\xce\x9d\x96\x96\x96\x9e\xde\xde\x78\x2c\x26\xe0\x68\x2e\x87\ +\x23\x61\x39\x33\xab\xd8\xc8\x0f\x7e\x59\x5b\x52\xf2\x68\x64\x84\ +\x25\x1d\x23\x23\xd8\xf0\xe7\xcc\xcc\x63\xd3\xec\xe8\xe9\x99\x09\ +\x04\x40\xa6\xd2\x7c\x0a\x0c\x83\x92\x8a\xcb\x24\x35\x0a\x0a\x0a\ +\xbe\x6a\x6c\x3c\x7a\xf4\x68\xb5\xcf\xd7\xdc\xdc\x8c\xa0\x03\x03\ +\xe8\x56\x83\x86\xf3\xf6\xb6\x6d\x5c\x33\x02\xde\x5e\xe7\xf4\x3e\ +\xcc\x98\xc7\x15\xf4\xf4\xe9\xd3\xaa\xf7\xdf\x9f\x7b\xf8\x90\x22\ +\x00\x62\xfb\xb9\x96\x68\x94\x94\x94\x44\x63\xb1\x74\x2a\xa5\xa1\ +\x46\xe6\x9f\x70\x78\xa3\xdb\x5d\xe4\x74\x8a\x91\xd9\x67\xd8\x82\ +\xf2\x24\x1a\x05\x59\x19\x50\xb8\xe5\x2c\xb3\x30\x40\xb0\xea\x3e\ +\x18\x3f\x14\x0c\xbe\xe5\xf1\x10\x6d\x41\x85\x30\x55\x0a\x3b\xa7\ +\xa7\xa7\x89\x21\x1c\xe0\xcb\x1a\x08\xf6\x49\x53\x84\x36\x6d\xfa\ +\xbd\xab\x6b\xfd\xfa\xf5\x6c\x88\x09\x6a\xa1\xa9\x08\xd4\xbc\xc9\ +\x89\x89\x9d\x55\x55\x0d\xa9\x54\xd3\xc1\x83\xd1\x64\x52\xde\x11\ +\x12\x46\x01\x0a\x30\x02\x02\x9b\xa6\x5e\x07\x4d\x7d\x4b\xcb\x4f\ +\xb5\xb5\x95\x1b\x36\x70\xaf\x39\x10\xb3\xe4\xe7\x20\x2c\x99\xe4\ +\xfc\x3c\xf9\xf6\x79\x7b\x3b\xa3\x1f\x1a\x1a\xe2\x91\x08\x4b\xa0\ +\xe5\x2d\xa3\xa5\x86\x32\x3b\x9d\x48\xbc\xeb\xf7\xff\x5c\x5f\xbf\ +\xd1\xeb\x4d\x00\x5d\xf4\x5a\x0d\x8f\x13\x58\x81\x01\x57\x13\xc4\ +\xed\x74\x9e\xed\xee\x06\xf6\xbd\xdb\xb7\xdf\x2c\x2d\x55\x23\x33\ +\xb5\x54\xce\x9e\x98\xb7\x63\xd7\x2e\x5f\x2a\xf5\x6d\x7d\x7d\x20\ +\x16\x4b\xcd\xce\x72\xae\x93\xb3\xb3\x49\xeb\x2b\x3d\x9e\x4a\x71\ +\x01\x0b\xdf\xde\xd1\x05\x93\xa0\xc8\x30\x41\x5f\x48\x30\x45\x34\ +\xe8\xf3\xba\x4a\xa6\x72\x3a\xd0\x52\x0b\x39\xa8\x43\x29\xaa\xed\ +\x4c\x01\xc6\x14\x50\x01\x0c\x6c\xc0\x63\x02\x86\x48\x59\xca\xd4\ +\x52\xa9\xc2\xa3\xa3\xa3\xef\x55\x57\x13\xbd\x6f\xea\xea\xc6\x83\ +\x41\x09\x9a\x16\x8f\xe5\xdc\x25\x22\xb6\xfa\xb6\xfc\xfb\x40\x35\ +\x02\x18\xd8\x80\xc7\x04\x0c\x91\x98\x01\xc9\x61\xaf\x42\x9f\x9c\ +\x38\xf1\xce\xd4\xd4\xf7\x3e\xdf\x78\x28\x64\x30\xc6\xc2\x97\xdb\ +\x74\xc3\xe5\xed\xbc\x7c\xf5\xd8\x03\x5e\x60\x03\x1e\x13\x30\x84\ +\xa1\x94\x18\x07\x73\xfa\xb4\x0f\x85\xc3\x0d\x5b\xb6\x70\xf6\x32\ +\x7f\xd8\x20\xa4\x29\x91\xdb\x04\x8a\x90\x8b\x4a\xe6\x4c\x89\xfc\ +\xd2\x62\x10\x74\x15\x7c\x21\x8c\x85\xff\x2d\x01\x8f\x09\x18\x22\ +\x1c\x9a\x69\x7f\x7c\x50\x67\x23\xc9\xa4\xae\x11\xe7\x28\x61\xcf\ +\x40\x28\x6d\x9a\xcc\x3a\x25\x5d\x38\x10\xb9\x99\x27\xb3\xca\x50\ +\xc9\x0c\xad\x1c\x05\xa0\xba\x54\x91\x8d\xa3\x46\x02\x05\x13\x8c\ +\xe2\x62\x2d\x4e\x99\x18\x6a\x09\x56\x17\xdb\x09\xe5\x33\x56\x85\ +\x99\xa1\xae\xa2\x8b\xf0\xa2\xbe\xd7\x45\xf6\x59\x5d\xa2\xda\x95\ +\xaf\x3b\xdb\xdc\xa4\x30\x68\x4a\xab\x98\xb0\xe6\x6d\xda\x6d\x0f\ +\x17\x55\x90\xd3\xec\xfe\xa6\x12\xce\xda\xbc\xc8\xd3\x24\xeb\x85\ +\xbd\xfa\x96\xf5\x5e\x47\x85\xee\x8b\x6a\x00\x2c\x55\xd8\xc4\xb6\ +\x65\xbd\xbc\x17\x3e\xc1\x58\x25\x3a\xd7\xb8\x5c\xa5\x1e\x4f\x21\ +\xcf\x2f\xd3\xf4\x3a\x9d\xd0\xbc\x3f\x00\xa1\x47\xf7\xa5\x98\x27\ +\x20\xd9\xb6\xc0\x34\x51\x81\x22\xd4\xa1\x14\x1a\x00\xe8\x90\xe7\ +\x8e\x28\x53\x9c\xff\xff\xf2\x66\x3c\xa7\xce\x93\x4e\x93\xc7\x80\ +\x95\xd0\x45\x2e\xd7\xad\xe1\xe1\x8f\xaf\x5f\x6f\xf0\xfb\xf7\x5d\ +\xbd\xea\xbb\x7c\xf9\xeb\xce\xce\x47\xe1\xf0\x5a\xde\xa5\x22\x2c\ +\xab\x56\xd1\x44\xb5\x50\x6c\xfb\x28\x18\x3c\xd3\xd9\x89\x22\xd4\ +\xa1\xf4\xd8\x8d\x1b\x6d\xc3\xc3\xc0\x30\x2d\x48\xea\x77\xcd\x1f\ +\x79\x1e\x0b\x91\x7d\x0e\xc5\x62\x7c\x26\x49\x60\x3f\x84\xac\xe1\ +\xfd\x01\xff\x58\x6b\xeb\x17\xf7\xef\x6f\x38\x72\xa4\xd9\xef\xbf\ +\xd8\xde\x7e\xe6\xd2\xa5\xb1\x1d\x3b\xf6\xb7\xb6\x9e\x1f\x18\xf0\ +\xba\x5c\xe4\x03\xf1\x94\xab\x55\xd3\x5e\x93\x7f\x91\xe3\xad\x53\ +\xb6\xb3\x44\x12\xba\x4d\x93\xbf\x8e\x1e\xa7\xf3\xdc\xbd\x7b\x1f\ +\xb4\xb5\xa1\x02\x45\xa8\x43\x29\xaa\x01\x00\x0c\xc0\xe4\x5b\xc0\ +\x14\xba\xec\x00\x1f\x13\x20\x54\x57\x26\x86\x0c\x52\xe9\xf4\xd0\ +\xd4\x54\xb1\xf5\xb0\x14\x8e\xb8\xc4\x61\x95\xd9\x8f\x5a\x5a\x66\ +\xca\xcb\xff\x1e\x1c\xbc\x78\xfe\xfc\x87\xfb\xf7\xd7\x54\x54\x1c\ +\x3b\x7c\xf8\xe6\x95\x2b\xbf\xde\xbc\xf9\xe3\xf8\xf8\x77\x77\xef\ +\x3a\x0c\x63\x68\x66\xc6\xe0\x7f\x83\x18\x29\xa5\x4b\x33\x4f\x2b\ +\x21\x5d\x13\x4c\xa7\x04\x00\x69\x59\x58\xf8\xdb\xe8\x68\x28\x9d\ +\xbe\x30\x30\x70\xe1\xc9\x13\x36\x47\x05\x8a\x50\x87\x52\x54\x03\ +\x00\x18\x80\x01\x52\x9e\x04\x5c\xbc\x63\x1d\x51\xc0\x63\x02\x86\ +\xe8\xeb\xdf\xf1\x6f\xbb\x66\x13\x12\xd7\x15\xc5\xf1\x18\x26\xc9\ +\x8c\x89\xbe\x29\x6f\x1e\x31\x91\x38\x05\x29\x82\xbb\x30\xa6\x10\ +\x78\x69\xc1\xa4\x1f\x09\x42\x90\xe8\xd4\xac\xaa\xce\x60\x18\x64\ +\x32\x01\x75\x93\xac\x8d\x55\x4a\x40\x5c\x64\x13\x82\x18\xad\x2b\ +\x37\xda\x45\xc7\x96\xa4\x13\x42\xc4\x44\x4d\xa8\x50\x17\x92\x21\ +\x42\x16\x89\x88\x69\x0d\xa9\x49\x27\xed\xf4\xc7\x1c\x72\x73\x79\ +\x8f\xea\x50\x5d\x4d\x7a\xb8\x8b\xf3\xee\x3d\xe7\x7f\xfe\xe7\xdd\ +\x7b\xdf\x83\x73\x2f\x9a\x08\xef\xbe\xbf\xaf\xef\xc6\xea\xea\xd5\ +\xb9\xb9\x83\xa5\xa5\x19\x49\x32\xb7\x6e\x0d\xaf\xf7\x9b\xa9\xa9\ +\xb5\x8a\x8a\xbb\x93\x93\x07\xcb\xcb\x29\xa8\x48\x81\x84\xc2\x04\ +\x95\x95\xcf\x4e\x9c\x98\x1c\x1f\xef\x5f\x58\xf8\xa8\xa4\xe4\x5c\ +\x2a\x35\xf9\xe8\x91\x51\x5c\x8c\xbb\x4c\x8a\xfe\xf3\xa0\xb9\x75\ +\xc9\x5c\xd2\x2b\x2d\x2e\xfe\x31\x9d\x3e\x93\x4c\xd6\x04\x02\xdf\ +\x3d\x7e\xfc\xc3\xf8\x38\xe0\x84\xa3\x4e\x23\x11\xd1\x21\x00\x0d\ +\xc8\xf4\x4e\x4d\x7d\xe0\xf3\x41\x8f\x54\xc4\x1d\xda\x90\x27\x05\ +\x12\x91\xa5\x84\xbc\x3b\xe5\x96\x6a\xcf\xfd\xd9\x59\x6f\x49\x49\ +\x5f\x4d\xcd\x4a\x24\xf2\x4b\x63\xe3\x7c\x38\xfc\x6b\x53\xd3\xc3\ +\x70\x78\xef\xce\x9d\xb7\x52\x29\xa9\x1a\x39\x6a\xec\x54\x1c\xe8\ +\xff\x3a\x16\x3b\x69\x9a\x97\x8f\x1e\x85\x70\xb2\xae\x2e\x1b\x8f\ +\xff\xd6\xda\xfa\x22\x1a\x5d\x8b\x46\x5f\xd0\x22\x91\xd5\xd6\xd6\ +\x4c\x3c\x7e\xae\xba\x9a\x86\xc2\x23\xfd\x32\x84\x82\x31\x2e\x38\ +\xe2\x0e\xc8\x29\xd3\x6c\x8e\xc5\x80\x05\x9c\x10\xba\x40\x80\xfe\ +\x9f\x53\xa9\x3d\x45\x45\xf7\x1b\x1a\x16\x9a\x9a\x20\x09\x55\x08\ +\x43\x1b\xf2\xa4\xa0\xd2\xd1\xce\x2d\x72\xc2\xe4\xd0\x3b\xf3\x36\ +\xc9\xb5\xb6\xb6\x27\xcd\xcd\xeb\xb1\xd8\xe0\xb1\x63\xe5\xc1\x20\ +\x3e\xee\x33\x09\xc1\x42\x79\x30\x3f\x6f\x7a\xbd\x2f\xdb\xda\xae\ +\xd8\x36\x73\x7e\xab\xbe\x3e\xdb\xd1\x91\x4d\x24\xb2\x17\x2e\xd0\ +\x50\xb2\xe7\xcf\x67\x2f\x5e\xec\x38\x7c\x98\x86\xc2\xa3\x1a\xa2\ +\x61\x8c\x0b\x8e\xb8\x03\x02\x14\x80\xc0\x0a\xb8\xfb\xe4\x83\x81\ +\x03\xc1\xe0\x75\xdb\x86\x1e\x24\xa1\x2a\xe9\x41\x1e\x4a\x92\x88\ +\xd8\xef\xd0\x9d\x55\x92\xf7\x66\x66\x0c\xc3\xb0\x0d\xe3\x13\xbf\ +\xff\x73\xcb\x0a\x7a\x3c\x8d\x67\xcf\x4a\x09\x43\xd9\x3b\x1c\x9f\ +\x2d\x2f\x9b\x86\xf1\xf1\xbe\x7d\x75\x96\x25\xfb\xeb\x94\x65\x7d\ +\x19\x08\xd0\x4e\xd2\x4c\xf3\x0b\xd3\xac\xdb\xbf\x9f\x31\x1a\x0a\ +\x8f\xf4\xd3\xc4\x06\x63\xf1\xc2\x1d\x10\xa0\x00\x74\x9f\xcc\x20\ +\x8a\x06\x94\x3e\xf4\x78\xa0\x07\x49\xdb\xef\x87\x30\xb4\xf5\xf4\ +\x44\x3c\x7a\x7d\x1a\x9d\x0a\x2c\x73\x72\x24\x14\x9a\x9e\x9e\xfe\ +\xe9\xce\x1d\xf9\x55\xdc\xbe\x79\x73\xf5\xe9\x53\xdd\x4c\x57\x54\ +\x69\xc3\xe3\xf3\x35\x5e\xba\xb4\xdb\xe7\x6b\xd8\xb5\x8b\xde\xdf\ +\x33\x19\xf7\xb9\xc5\xe9\xdc\x87\xee\x0f\xbe\x04\x5a\xa7\xec\xd8\ +\xaf\xa8\xd3\xe5\xbc\xfe\x5c\x5f\xff\xb6\xbb\x1b\xc0\x7f\xfb\x55\ +\x8a\xef\xf3\xe5\xe5\x23\xe1\xf0\xa7\xc7\x8f\x4b\x0a\xd7\x6c\xbb\ +\xaa\xaa\x0a\xf2\x52\xef\x53\xf6\xef\xf6\xa1\x63\xe1\x65\x35\x99\ +\x9b\x9d\xb5\x2c\xcb\xb1\x4a\x55\x1d\x96\x89\x65\x88\x7a\x51\xc5\ +\xa1\x43\xd9\x6d\x12\xa0\x00\x04\x16\x70\x9d\xa1\x22\xc0\x10\x94\ +\x20\xa6\x5c\x14\x6d\x65\xef\xdc\x87\xee\x3d\xa6\xea\xd0\x94\xd2\ +\xca\xca\xca\x06\x07\x07\x65\xeb\x4b\x62\xca\x4c\xbe\x34\x14\x36\ +\x5b\x5a\x5a\x88\x41\x81\x0c\x2f\x04\x77\x44\x14\xa5\x8b\xb8\x3b\ +\x95\x25\xee\x80\x00\x55\x5b\x5b\xbb\x41\x38\xc8\x40\x09\x62\xd0\ +\x13\x04\x61\xee\x90\xbc\xce\x80\x89\x0a\xe2\xd0\xd0\x10\x93\xbe\ +\xb8\xb8\x88\xae\xd8\x80\x2e\xe1\x47\x46\x46\x18\x4d\xa7\xd3\x52\ +\x81\xff\xfb\xbf\x8a\xfa\x6e\x01\xc5\x7e\x19\x1e\x1e\x96\x95\xa2\ +\xbf\x2f\x7a\x96\x96\x96\x08\x07\x25\x21\xb3\x31\xe6\x26\x77\xa2\ +\x40\x57\x49\x76\x76\x76\x52\x6c\x4f\x26\x93\x8e\x85\xd1\xd3\xd3\ +\x43\xbc\xd1\xd1\x51\x79\xdc\xca\x9d\x28\x51\x24\xdc\xd8\xd8\x18\ +\xb0\x80\x3b\xb6\x0c\x04\xfc\x7e\x3f\x64\xc4\x72\xd3\x3b\x51\x79\ +\x9d\xcc\xa8\x24\x7b\x7b\x7b\x39\xf7\x0a\x85\x42\xed\xed\xed\x5d\ +\x5d\x5d\x91\x48\xa4\xb2\xb2\x32\x18\x0c\x72\x48\xa4\xe2\x6d\xf1\ +\xa6\x82\x9e\x24\xb0\x80\x13\x82\x40\x84\x23\x28\xa1\x21\x40\xda\ +\x62\xa3\xb6\xd5\x06\x27\x33\x9b\xcc\xa1\x3e\x2a\xef\x72\x65\x65\ +\x65\x60\x60\x20\x9a\x93\x44\x22\x41\xd5\x54\x15\x7c\x05\x71\x2b\ +\x73\xa8\xdb\xa8\xa9\x9b\x98\x98\x20\x90\x44\x24\x34\x04\x24\x9c\ +\xca\x6d\xa3\x39\xcc\xff\xa6\x82\x58\xcb\x36\x70\x88\xda\x7b\xdb\ +\x7b\x53\x41\xd6\xbc\x9b\xba\x9e\x5e\x3e\x37\x15\xf2\x3d\x3f\xd4\ +\xd9\x90\x27\x22\x9f\x59\x48\xe8\x31\xb6\xeb\x3e\x8d\xfb\x93\xae\ +\x44\x86\xf2\x3f\x3f\x7c\x0f\x6e\x9b\x14\x15\xb4\xfc\x7f\x73\xaf\ +\x20\xa4\xf0\xef\x08\x17\xfe\x3e\x2c\xfc\xdb\x97\xff\x00\xfb\x6b\ +\xc0\x37\xb1\x10\x1f\x8c\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\ +\x60\x82\ +\x00\x00\x0c\xdc\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x4b\x00\x00\x00\x36\x08\x02\x00\x00\x00\x00\x90\xf3\xa2\ +\x00\x00\x0c\xa3\x49\x44\x41\x54\x78\x5e\xdd\x5a\xdb\x93\x55\xc5\ +\xd5\xef\xee\x7d\xce\x99\x1b\x03\xcc\x30\x37\x44\x19\x18\x2e\x2f\ +\xc6\x38\x58\xca\xc5\x19\x14\x98\xa4\x2c\x35\x98\x08\x09\x65\xe5\ +\x42\xb4\xb4\x0c\x65\x12\x1f\xe2\xc3\xf7\x96\xbf\x20\x79\xc8\x05\ +\xa2\x46\x0a\x43\x88\xa6\x4c\x82\x31\x26\xb1\x2c\x22\x20\x8a\x90\ +\xd2\x12\x92\x54\xe5\x01\x74\xb8\x49\xf8\x64\xe0\x38\xc3\xdc\x3c\ +\x67\xef\xdd\x9d\x75\xd6\x3a\xdd\xab\xf7\xd9\xce\xcc\xa9\xf1\x24\ +\x0f\x69\xfa\x6c\x56\xef\xbe\xad\x5f\xaf\x5b\x77\xcf\x16\x31\x26\ +\x8d\x89\x08\xa6\xf9\x0d\x17\xb9\xfd\xd4\xef\x99\x4e\xa5\xd8\x4b\ +\xe9\xaa\x4f\x6c\x9c\x6a\x93\x26\xb8\x98\x66\x2c\x23\xa5\x14\x42\ +\xc0\xd3\x18\x63\x69\x7e\xa6\x8b\xd4\xd2\xaf\x82\x22\xbf\xac\x65\ +\xe2\xb9\x98\xc0\x54\xd1\x86\x39\xe4\xc4\xc5\xcc\xa7\x99\x5e\x63\ +\x22\xc2\xa1\x85\xc4\xeb\x95\x4a\x8e\x51\xa2\xfd\x66\x8e\xf6\x09\ +\x1a\x5c\x61\x9a\xdd\x22\xce\x5e\x4b\xa3\x28\x02\x02\x90\x00\xcd\ +\x4f\x2f\x11\x00\x47\xf8\xb5\xe9\x97\xe9\x96\x3e\x01\x13\xc1\x74\ +\xb3\xd4\xd2\xd9\x49\xaf\xd4\x33\x93\x39\x77\xee\xec\x43\x8f\xec\ +\x18\x1f\x1f\x0f\x82\x00\x85\x23\x05\xca\x40\x18\x09\x4f\x49\x45\ +\x7c\x6d\x25\x88\xff\xa8\x9d\xb4\x72\xf3\xab\xa5\x34\xf4\xc0\x11\ +\x68\xa2\xa6\xa6\xa6\x3d\xcf\x3c\xd9\xdd\xbd\x04\x40\xe2\x44\x28\ +\xe1\xaa\x53\x66\xd6\xf0\xfe\x75\xf1\xe2\xba\xf5\x03\x9f\x69\xbc\ +\xfc\xbd\x81\x95\x63\x93\xa1\x94\x64\x2e\x84\x8f\x71\x38\x68\x8c\ +\x09\xdb\xd1\x60\x54\xb2\x4d\xd8\x1d\x18\x53\x6e\x3a\xa7\x21\xbb\ +\xfb\xb5\x93\x30\xd1\x3b\xc7\x8e\x5c\xb7\x68\x91\x03\x59\x3d\xc2\ +\x92\x96\x7f\xa2\xff\x48\xdb\x06\x55\xc1\x1c\x08\xef\x83\x55\x6b\ +\xd6\xaf\x6b\x1b\xff\xf5\x13\x9f\x27\x45\xb2\x23\x10\x3a\x96\xa1\ +\xc5\x66\x04\x23\x64\xf4\xde\x04\x56\x86\xd0\x1e\x68\xc9\x95\x4a\ +\xa9\x07\x7e\x78\xe0\xd8\x95\xa6\x13\x7f\x7d\xe3\xba\x45\xd7\x13\ +\x03\x3e\xc8\xe9\xcd\x3e\xd1\x94\x19\x4d\xd0\x5c\x15\x86\x61\x36\ +\x9b\xbd\xf8\xc1\x05\x80\xd7\xd7\x3e\xf9\xdc\xe3\x03\xf9\xfc\x78\ +\x64\x8c\x72\xda\x45\x60\x48\x8a\x2c\x43\x42\x60\x81\x90\x14\x79\ +\x58\xaa\xa4\xd7\xb6\xbb\xe5\x59\x03\x8b\x52\x3e\xff\xf8\xc0\x57\ +\x7f\x7c\xb0\x77\x75\x3f\x80\x5c\x74\xfd\x0d\xc0\x06\x82\x64\x0e\ +\x19\x45\x0a\xcb\xcc\x32\x44\x82\xa5\xf7\xc1\x85\xf3\xab\xd6\xae\ +\x5f\xdf\x5e\xd8\xf7\xed\x4d\x1f\x8d\x4e\x42\xb5\x52\x64\x37\xd2\ +\x08\x36\xa1\xe4\x38\x8c\x91\x59\xf1\x6a\x3d\xb4\xd2\xb2\x46\xab\ +\x44\xbe\xb4\x44\xb6\x34\x37\x7c\x7d\xe7\xc1\x37\x86\xea\x4e\x1c\ +\x7f\xe3\xfa\x1b\x16\xb3\x24\x67\x94\xa1\x98\x39\x31\xbc\x0b\xe7\ +\x01\x5e\xff\x9d\xed\xe1\x2f\x77\x0c\xe4\x87\x27\xa0\xa6\x04\x2f\ +\x82\xd1\x15\x73\x5b\xc2\xa0\x08\x10\x49\x34\xe5\x6f\x58\xb4\x56\ +\xe0\x3c\x13\x09\xd0\x56\x2a\x03\x3f\xa9\x00\x64\x7e\x78\x72\xdf\ +\x8e\x81\x6f\xfc\xec\x60\xef\x9a\xfe\x13\xc7\xdf\xbc\x61\x31\x83\ +\x9c\xde\x2c\x4b\x6e\xa3\x22\x76\x57\x48\x99\xe0\x81\x72\x5e\x38\ +\x77\xae\x77\x6d\xff\xc6\x8e\x68\xef\xa3\x9b\xf2\xa3\x13\x25\x1c\ +\xd8\x80\xb4\xd1\xb0\x2d\x91\xa6\x4d\x21\x43\xaa\x22\x30\x0c\x9c\ +\x28\xfc\x59\x88\xcc\x07\xc5\x5e\xd4\x8d\xd6\xe6\xc6\xed\x4f\x1f\ +\x3c\x74\x39\x73\x12\x40\x76\x77\x3b\x75\x25\x08\x69\x2d\x9d\x41\ +\x86\x3e\xbc\xf3\x67\xcf\x02\xbc\x81\x4e\xfd\x8b\x87\x37\x5e\x1d\ +\x46\x78\x34\x2b\x30\xed\x77\xa1\x82\xb3\xa6\xf4\x98\xf8\xb3\xae\ +\xc4\xf6\x65\x3b\x64\xa1\x1a\x3b\x1a\x59\x23\x81\x84\xa9\xf7\x3e\ +\xbc\xf1\x9b\xbb\x0f\xdf\xbc\xa6\x0f\x40\x2e\x5e\xb2\x84\x41\xce\ +\x22\x5a\x38\x78\xe7\xce\x9e\x01\xe5\xfc\x5c\x87\xd9\xf3\x20\xc1\ +\x93\xaa\x2c\x5e\xc5\x50\xac\xc1\xa2\x18\x94\x15\x66\x4a\x4b\x81\ +\x70\xc0\x65\x22\x8e\x10\x6e\x8b\x95\xf5\xd9\x45\x11\x25\x15\x82\ +\x9c\x7c\xf6\xc1\x8d\x0f\xed\x39\xd4\xbb\xb6\x0f\xd4\xb5\x7b\xc9\ +\x52\xdf\xf1\x54\x8b\xd0\x97\xde\xd9\x33\x00\xaf\xef\xae\x4e\xb9\ +\x7b\xfb\x26\x80\x27\x84\x62\x78\x1e\x13\xcc\x34\xfc\x38\xfa\x57\ +\x4c\xc9\x2d\xa9\x01\xa3\x67\x84\x64\xc6\xde\x72\x48\x6a\x9d\x00\ +\xb9\x67\xfb\xa6\x87\xf7\x1e\xea\x5d\x03\x20\x8f\x2e\x59\x9a\x00\ +\x39\x43\x3c\xa4\xe4\x02\xc3\x99\xc1\x41\x80\x77\x77\x67\xf0\xcc\ +\xd7\x36\x5c\x19\x43\xd7\xe2\x3b\xae\xa4\xca\xa5\x8c\x87\x62\x3a\ +\x11\x54\x4d\x55\x1c\x10\xc9\xd3\x03\xe5\x3c\x27\x05\x13\x6b\xab\ +\xd4\x89\x93\xb1\xea\x0a\x64\xdb\x9c\xc6\x47\x7e\x75\xf8\x95\x0f\ +\x63\x00\xb9\xb4\xa7\x87\x18\x66\x9b\x9c\x2a\x1e\xfa\xf0\x06\x07\ +\xdf\xbf\x65\x6d\xdf\x3d\x1d\x99\xa7\x1f\xd8\x30\x34\x32\x01\x9d\ +\x54\x49\x3c\x9a\x16\xd4\x77\x20\x4c\x7a\x50\xa8\x59\x9a\x47\xd6\ +\x57\xc9\x26\x48\xb4\xed\xad\xd9\xeb\xd2\x4b\xde\xf7\xc0\x88\x1a\ +\x5d\x80\x00\x96\x7e\xfe\xc0\x86\x47\x9f\x3f\xbc\x6a\xed\xed\xef\ +\x1e\x3f\xda\xd3\xb3\xcc\x49\x72\xba\x78\xc8\xf0\xde\x7f\x0f\xa4\ +\xf7\x85\xce\xdc\x53\xdb\xee\xbc\x32\x3a\x29\xa4\xf5\x9c\x1c\x32\ +\x19\x17\x1b\x94\xbf\xf9\x4c\x6b\xa9\x15\x21\xcb\xd0\xe0\xc3\x6d\ +\xf7\xa4\x64\xaf\xca\x0a\x92\xd2\x71\x27\x49\x23\xda\x9a\x1b\xbe\ +\xf5\xc2\xeb\x7f\xfc\xb0\x78\x02\x40\x2e\x5b\xee\x4b\x92\x7d\x69\ +\x5a\x7a\xef\xbf\x77\xfa\x96\x75\x7d\x9b\x3b\xea\x9f\xdc\x7a\xe7\ +\xd0\xf0\x04\xbc\x27\x78\x2c\x3b\x86\x58\xc6\x9c\x8c\x6f\xdc\x86\ +\x40\x24\xe4\xcc\x12\x16\x95\x56\xc7\xca\x2f\x13\x12\xe6\xf7\x14\ +\x9c\x94\xb3\xc9\xa1\xe1\xc9\xa7\xb6\x6e\xd8\xf1\xdb\xd7\x4b\x92\ +\x3c\x76\x74\xd9\xf2\x15\x0e\x24\x24\xb6\x43\x1f\xde\xe9\x53\xa7\ +\x6e\xb9\xbd\xff\x8b\x1d\xf5\xbb\xee\xbf\x63\x68\x0c\x94\x53\xf2\ +\xa6\x81\xe3\x93\x48\x25\xe6\xc4\xdf\x09\x79\xec\x55\x56\xd9\x2e\ +\x56\x60\xa9\x83\xe5\xb4\x53\xc0\x83\xda\x03\x69\xda\xe7\x34\x3e\ +\xf6\xe2\x91\x97\x2e\x7f\xfc\xee\x5b\x6f\xae\x58\xb9\x92\x80\x30\ +\x42\x77\x62\x08\x82\xe0\xbd\xd3\xa7\x6e\xeb\xbb\x63\xdb\xc2\xa6\ +\x5d\x5f\xda\x30\x34\x3a\x4e\xd2\xd3\x46\x43\x6b\xa5\x52\x5a\x4a\ +\xb2\x48\xc6\x6d\xc1\x18\x04\x57\x32\x42\x16\x22\xe9\x26\x95\x24\ +\x6f\x57\x19\x09\xe9\x83\x1d\x41\x56\x2c\x90\xd6\x25\x84\x24\x49\ +\x48\xed\xcd\x4d\x8f\xfd\xfe\xf0\x0b\x97\xc6\xdf\x3e\x7a\x64\xf9\ +\x8a\x95\x04\xa7\xec\x69\x1c\xbc\xbf\x9f\x3c\xd9\xb7\x71\xa0\x37\ +\x17\x6f\xbf\xf1\xa6\x3f\xfd\xed\x94\xb4\xaa\x9c\xcd\x66\x82\x20\ +\x57\x28\x6a\x29\xd9\xe2\x18\xa2\xcf\x15\x81\xb0\x41\xcc\xbd\x64\ +\x55\xe6\xb3\x03\xf7\xf1\xfd\xa4\xed\x4f\x0e\x96\x7a\x7a\xef\x25\ +\x6f\x62\xeb\x72\x2a\x8e\x8b\x61\x18\x59\x49\x8a\xed\x37\xf6\xfc\ +\xf3\xff\xdf\x5e\xb5\x7a\xdd\xd1\x43\xaf\x7d\xb6\xb7\x17\x40\x29\ +\xa5\x24\x9d\xd3\x01\x5e\x3e\x9f\xdf\xb2\x65\xcb\xe0\xe0\xe0\xc2\ +\xb6\x05\x23\x13\x1f\x4b\x69\x2d\x35\x13\x0c\x0d\xe5\x47\x47\x2f\ +\x2d\x5e\x54\x1f\xc5\x5a\x54\x1c\xfc\xac\xd1\xb0\xa3\x04\x04\x2e\ +\xae\x3b\x2d\xe5\x98\x87\x95\x54\xc7\x76\x6b\x29\xc9\x32\xf7\xc6\ +\x13\x32\xa5\xe4\x99\x40\x9d\xbf\xf8\x71\x73\xf3\xc2\xf6\xf6\xd6\ +\x28\x8a\x09\x24\x54\xce\x6b\xac\xbf\x74\xe5\x6a\x4f\x4f\xcf\xfe\ +\xfd\xfb\x5b\x5b\x5b\x01\x1d\x6b\x69\xa1\x58\x14\xb0\x30\x75\x75\ +\xda\x18\x8b\x4e\xd0\x61\xf7\x27\x3f\x7d\xf6\x0f\xbf\x7b\xe8\x95\ +\xfd\xab\x3e\xbc\x5c\x08\x82\xca\x6b\x22\xb6\x1c\x2a\x01\x6d\x52\ +\x07\x79\x4c\x86\xe0\xb2\xaa\xfb\x12\x25\x68\xac\x03\xac\xc3\x86\ +\x91\x13\xc2\x38\x16\x9d\x1d\x75\x77\x6f\x39\x71\xdf\xd6\x3d\xdf\ +\xfd\xce\x83\x74\x2c\xc6\x81\x71\x3f\x05\x58\x0a\x05\x40\x50\x97\ +\xcb\x25\xf6\xa5\xb9\x6c\x96\x86\x87\x16\x09\x63\x73\x4b\xaf\x65\ +\x29\xcb\x72\x95\xd6\xd0\x02\x37\x38\x0a\xd1\x12\x5f\xd4\x27\x75\ +\x3c\x05\x45\xd1\x1a\x41\x6a\x04\xe2\xe4\xe7\xed\x5a\x08\xbf\xdd\ +\xbd\x2b\xa3\x11\x14\x9e\x36\x8c\x0b\x87\xf4\xd4\x90\x25\x15\x2a\ +\xae\xd7\x68\x2c\x90\x93\x7b\x5b\xd5\x09\x98\x9a\x00\x73\xa5\x4c\ +\xa6\x66\x6d\x7d\x6c\x34\x06\x25\xa1\xc6\xc8\x01\x4b\x89\x04\x4b\ +\x26\xd0\xd0\x10\x64\x32\x42\x6b\xb7\x19\xf0\xdc\xae\xa5\xed\x4c\ +\x18\xf2\x01\x01\xb6\x34\x1a\x01\x7a\x9a\x6c\x11\x32\x63\x2e\x30\ +\x54\x7f\xb6\x48\x27\xe2\x4a\x42\x76\x01\x0d\xf4\xe2\x6a\x3e\xbe\ +\x67\xdb\x60\x14\x37\xe4\x72\x4a\x6b\x52\x4f\x14\x1a\x2f\xb8\xc8\ +\x64\xd4\xa5\x4b\xa3\xbb\x7e\xd0\xb5\x65\x73\xcb\xf0\x48\xac\x14\ +\x75\x97\x89\x18\x68\x52\x6e\x87\x82\xa4\xe1\xc6\xdc\x9e\x99\xa9\ +\x8a\xf1\x69\x6f\x84\x99\x16\xa6\xbc\x72\x65\xaf\x42\x3b\xb7\x62\ +\x21\x32\x62\xee\xab\x07\x8e\x81\xb9\xa3\x4f\xb3\x97\x4b\xde\x55\ +\x65\x5b\x5b\xeb\x5d\x77\xdd\x3f\x34\xf4\x56\xa0\xda\xb5\x8e\x11\ +\x81\x3b\x13\x31\x28\xe7\x74\xac\xa9\x22\x2c\x57\xb4\x3c\x60\x22\ +\x4e\xb8\xaf\xc4\xf4\x69\x6f\x84\x25\x3a\x35\xcc\x54\x04\x42\x01\ +\x50\xa5\x64\x67\x67\xdb\x82\xd6\xf9\x5a\xeb\xf4\xa5\x2d\x39\xaa\ +\x86\x86\x3a\x80\x52\xee\x6e\xad\xd5\x68\x19\x28\x13\x64\x94\xb7\ +\xe9\x97\xbc\x7b\x43\xbc\x74\xc6\xd6\x1a\xc6\x31\xd0\x1e\xe3\x31\ +\xad\x22\x32\x33\x2d\xc3\xb3\xb1\x43\x5a\x73\x5e\x4f\xcc\xf0\x20\ +\x6f\x4c\xcf\x24\x42\x5b\x85\x87\x59\xce\x58\x52\x52\x14\x0a\x66\ +\xe4\x5a\x14\xdb\xfb\x72\xc1\x57\xa5\x64\x79\x65\xb4\xb9\xac\x9a\ +\x3f\x57\x29\x85\xb6\xe7\x74\xb5\xc6\x76\x08\x88\xd8\x97\x92\xaf\ +\x40\xda\x54\xea\x33\x30\xe2\x70\x72\x95\xc0\xbe\x94\xb1\x14\x6b\ +\xd1\x32\x2f\xf8\xf3\xcb\x1f\xed\x78\xe2\x42\x77\x57\x7d\x18\xf1\ +\x0d\xa3\xa1\x13\x17\xc2\x53\x4a\x16\x43\x6d\x02\x7d\xe0\x37\xcb\ +\xdb\x5a\x33\xc5\x58\x48\xd6\x52\x6a\x55\xd3\x1b\x61\xc0\x83\x19\ +\xed\xdc\x16\xab\xf6\x53\xd2\x75\x17\xb8\x6f\x0e\x94\x1a\x1e\x8b\ +\x6e\xed\x6e\x7f\xf1\xff\xfa\xae\x8e\x16\x54\x59\x8e\xd2\xbf\x73\ +\xcc\x66\xd4\x95\x91\xc2\x57\x76\x1e\x29\x46\xd4\x4b\xd3\xea\x42\ +\x15\x4f\x5d\x1b\x84\xc4\xa3\xcd\xe4\x69\x88\xae\x32\x71\x5f\x1e\ +\x4a\x02\xc3\xd9\x40\x2d\x68\xca\xe9\x18\x00\xb3\x22\xf8\x08\xa3\ +\xd0\x28\xbf\xbb\xe1\xd1\x6a\xea\x4b\x05\xab\x3b\xcb\x10\x93\xdf\ +\x52\x29\xe5\xbf\x61\x42\x0a\xe3\x92\x86\x2a\x8d\x3a\xaf\x31\xdc\ +\x99\x62\x51\x87\x61\xc9\x16\xbd\x7b\x70\x6b\x84\x5a\x44\x21\x5a\ +\xb1\x4d\x2c\x43\x9a\x48\x4c\xeb\x4b\xab\xf7\x34\xf4\xd3\xbe\x1d\ +\x42\x8e\x25\xb2\x2b\x5c\x7b\x5d\xe2\x93\xdf\x30\x81\x4a\xc5\x5b\ +\x22\xa3\x70\xf3\xa0\xca\x66\xac\x31\x97\x48\xfb\x24\xa7\x63\xab\ +\x84\x67\xc6\x2e\x6e\x69\x4d\x1b\x8c\x99\x3d\x4d\x75\x32\x44\x4c\ +\x0a\x26\x20\x08\xb8\xc2\x12\x8b\xa2\xaa\xc4\xed\xb1\x83\xa5\x8d\ +\xe0\xcd\xa0\x85\x88\xac\x29\x94\x60\xb9\x4a\x60\x5f\xca\xc4\x28\ +\xc0\x56\x40\xd7\x36\x1e\xfa\x5a\x4a\x6b\x4c\x05\x0e\x09\x36\x1e\ +\xb2\xf0\xb1\x8a\xb7\x5a\x86\xf5\xda\xd2\x28\xdb\x18\x33\x72\x04\ +\x4f\xea\x8d\xdd\xd0\xdc\x62\xe9\x4d\x8d\x3b\x02\xd6\xd2\x9a\x7a\ +\x1a\x83\x5a\x8a\xca\x66\xed\x50\x4b\xa1\xa5\x92\x22\xc0\xe3\x06\ +\x3c\xa7\xfa\x33\x6d\xa0\xa0\xa3\xa7\xd5\x4e\xeb\xd0\xc3\x8a\xc8\ +\x88\x18\x28\xff\x04\xe9\xfc\x0d\x56\x09\x56\x72\x72\xa6\x96\x99\ +\x5a\x47\x7c\xde\x97\x92\xb9\x6b\x40\x95\x1d\x1e\x1e\xbd\x77\xf3\ +\x97\x1b\xea\x73\x25\x23\x24\x06\x65\x62\xe7\x56\x57\x97\x3d\x72\ +\xe4\xf8\x7d\xb7\x37\xeb\x18\x59\xf7\x37\x96\x84\x24\x96\x90\xd9\ +\x10\x11\x03\xef\x48\x35\x3e\x6d\x7b\xac\xa4\x22\xc9\xb6\xa6\x76\ +\x58\x5a\x4e\x6d\xdc\xbd\x76\x1c\xea\xe6\xc6\xe0\x47\xdf\x5f\x98\ +\xcf\x9f\x84\xde\xc8\x07\xc3\xf7\xcf\x16\x5b\xfb\x1b\x57\xdf\x3c\ +\x6f\x6c\x2c\x0c\xd0\x3d\x96\x92\x76\x3b\x24\x24\x74\x52\x86\x04\ +\x89\xa2\x0a\x35\xd3\xb6\x19\xe1\xd7\xc8\xcc\x7f\xc0\x0e\xcb\x19\ +\x87\x96\xb1\x36\x99\x40\xde\xbb\xa1\x25\x93\x69\xb3\xf7\x16\xc2\ +\x1d\x62\xfd\xa9\x8c\x8e\xc7\x27\xa2\x30\x74\x97\xb9\x76\x1c\x22\ +\x50\x86\x50\x67\x6f\xb8\x9c\x03\xf7\xed\x90\xbb\xb8\x62\xcd\x23\ +\x3e\x64\xe5\xd4\x0c\x20\x91\x43\x18\x19\xc1\x4d\x31\xdf\x79\xb3\ +\x7a\x90\xf4\x09\x86\x0a\xa8\xbd\x37\x9a\x26\x9d\x97\x15\xbe\x94\ +\x9a\x3b\x3d\x33\x15\x5a\x8a\x8d\x2c\x33\xb5\x45\x48\x26\xa1\x6d\ +\x8c\x25\x99\x91\xc2\x2a\x23\x13\xea\xa5\x68\xdf\xcc\xb7\x39\x92\ +\x2c\x90\xf0\x3b\x2d\x25\x8e\x53\x9e\x06\xab\x2d\xf7\x58\x05\xb4\ +\xe6\xd9\xb9\xbb\xa8\x2a\x56\x29\x63\x13\xc7\xee\xe4\xf7\x1e\x5e\ +\xac\xa0\x37\x4c\x10\x8d\xfb\x60\x57\x10\x58\x2b\xa8\xc2\x8d\xcd\ +\xfd\x88\xe4\x0a\x61\x62\x9b\x35\x12\x91\x10\x8e\x46\x02\x27\x4f\ +\x27\xed\x34\x35\x5d\xe7\xf3\x5f\x9d\x0c\x49\x3c\x5a\x39\x19\xba\ +\xe5\xe3\x53\xaa\xb6\xe2\x12\xca\xba\x04\x29\xfc\x4b\x7a\x4a\x3a\ +\x29\x43\x63\x85\xe3\x69\xa9\x30\x8a\x8f\xfc\x34\xa3\x49\xcb\x50\ +\x91\x4d\xd4\xd2\x0e\x79\x0e\x3a\x75\x73\x85\x72\x31\xc0\xa2\x42\ +\x64\xd8\x0c\x11\x26\xff\xfc\xc9\x08\xc9\x45\x63\x66\x2d\x4d\xb2\ +\x1d\x13\xa4\x34\xc2\x1a\xde\x62\x60\xc1\x53\x2f\x91\xba\xc6\xd6\ +\xde\x75\x20\xdd\xa9\xb9\x4d\x32\x89\x90\x6a\x0c\xef\x6f\x20\xe3\ +\x8f\xb9\x97\x1c\xeb\x88\xa0\x79\x11\x09\x9b\x48\xe2\xec\x8d\x6b\ +\x57\x9b\x9d\x37\x9e\xc6\x92\xe7\x97\x84\xfe\xd2\x4b\xbe\x42\x32\ +\x9a\x45\x22\xd3\xba\x40\x43\x71\xb4\xc0\xec\x3a\xf0\xb5\x29\xed\ +\xef\xfd\xc3\x57\xfa\x20\x66\x6a\x76\xc6\xd7\x46\x44\xa1\x8c\x22\ +\x69\x94\x95\x2c\x0f\xa4\x3c\xb4\x08\xd6\x5e\xe9\x12\x1e\xbe\xf4\ +\xb6\x37\xc0\xb1\x16\x61\x28\xf1\x7c\x60\xe2\x50\xc7\x91\x36\x56\ +\x1a\x24\x73\x12\xb9\x32\x02\xaa\x80\x80\x79\x29\xd3\x48\xd0\x1d\ +\x98\xd1\x35\x3d\xe3\xcb\xfa\xba\x4c\xcb\xbc\x5c\x18\xe9\x40\x09\ +\x66\xc5\x9d\xac\xf8\xa2\x45\xb8\xc3\x1d\xdf\x4a\x24\x97\x56\x20\ +\xc2\xd6\x79\xd9\xa6\xc6\x6c\x2e\x23\x5a\x1b\x1a\x63\x5d\x8a\x97\ +\x76\xe5\xf8\x72\x3b\x1b\xa8\x30\x52\xd9\x6c\x30\x7f\x6e\x0e\x66\ +\x2f\x84\x68\x88\xd8\x1d\x8a\xc0\x12\xb4\xac\x0d\xc2\x4c\x46\x9e\ +\x39\x1f\x3e\xf7\xd2\xe0\xf0\x68\x51\x91\x1f\xf5\xa5\xe8\x0a\xce\ +\x7b\x3b\x4b\x9a\xe2\xaf\x6b\xda\x88\xb9\x8d\xc1\xdb\x27\x47\x2f\ +\x8d\xc8\x7d\xc7\xff\x71\xad\x18\x29\xcf\x76\xdc\xe5\x7f\xa0\xe4\ +\xb5\x42\x74\x6d\xbc\xf0\xf2\x5f\x2e\xb4\xcc\x09\x22\xdc\x85\x53\ +\xf7\xf9\xcd\x39\x60\x09\x18\x9b\xbd\xa7\xf1\x6f\x96\x56\x2c\x5d\ +\xd4\xd4\x75\xdb\xae\x57\xe7\xba\x0b\x35\xd6\x53\xfe\x4a\xcb\x46\ +\x6d\xff\x9b\xa8\xd4\xc7\x18\x89\xbf\xce\x06\xb2\xeb\x56\xb1\xb3\ +\x10\x5b\x64\x2e\xb0\x98\xf2\x61\x37\x36\x32\x2b\x6f\x5a\xbd\xfe\ +\xc5\x77\x8c\xf7\xa9\x54\x99\xb1\xa6\xae\x2e\x60\x8c\xe8\x29\x3c\ +\xcd\xcc\xdf\x97\x32\x91\xfe\x10\x94\x88\xff\xc2\xf7\xa5\xa9\xf7\ +\x4c\x54\xf3\x7d\x69\x55\xdf\x26\x52\x1f\xff\x86\x82\xe8\x74\x71\ +\xc6\x3f\xe5\xa6\xbb\xa7\x68\x26\x2a\xe8\x74\x95\xff\xed\xf0\x54\ +\xd3\xfd\xef\x7f\xc9\xfe\x6f\xe7\xf8\x01\xc3\x58\x74\x3a\x3f\x00\ +\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x0a\xd4\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x4b\x00\x00\x00\x36\x08\x02\x00\x00\x00\x00\x90\xf3\xa2\ +\x00\x00\x0a\x9b\x49\x44\x41\x54\x68\xde\xdd\x9a\x0b\x50\x54\xd7\ +\x19\xc7\x2f\x46\xf0\x81\x28\xf1\xad\xe5\xd1\x56\x66\xd2\xc4\x4e\ +\x1b\x33\x11\x47\x10\x15\x48\x10\x34\x3e\x20\x4b\x80\x05\x44\x01\ +\x83\x84\x19\x47\x1e\x19\xeb\xb4\x55\x5b\xd1\xb1\x06\xd4\xa9\x11\ +\x14\xc4\x68\x66\x92\xce\xf4\x15\x9f\x4d\xad\x02\xc2\xb2\xbc\x41\ +\x44\x44\x79\x28\xa2\x8e\xaf\xc6\x94\x71\x04\x15\x48\xed\x6f\xef\ +\x89\x77\xb6\x0b\xc2\xee\x72\x61\x92\x7c\xf3\xcd\xce\x77\xce\xf9\ +\xce\xf7\xfd\xff\xf7\x9c\x7b\xce\xbd\xe7\xae\xf4\x8d\x2c\xff\xfd\ +\xe1\x8a\x34\x34\x69\x9e\x3d\x7b\xc6\xaf\x72\x29\x85\x21\x2a\x7f\ +\x38\x0c\x61\xd5\xd5\xd5\xd5\xdd\xdd\xad\xfc\x76\x76\x76\x62\x18\ +\x5f\x82\x41\x61\x38\x34\xb3\xf4\x45\x83\x26\x98\x77\xca\x22\xd8\ +\xaa\x8e\x67\x28\x18\x82\x1e\x26\x47\x8e\x1c\x7e\x7d\xd6\x1b\xf3\ +\xbc\x16\x78\x78\x7a\x79\x7a\xce\x0b\xd6\x6a\x0f\x7e\xf6\x59\x43\ +\x73\x33\xa3\x29\x98\x2b\x6c\x19\x5e\x01\x49\x15\x60\x43\xc1\xf0\ +\xe9\xd3\xa7\xa0\x4f\xf9\x70\xc3\x9b\x33\x9d\xb3\x76\xc4\x67\xa6\ +\xae\xf1\x99\xff\xfa\x24\x49\xfa\x99\x8d\x8d\x83\xad\xed\x4f\x5e\ +\x7b\x55\x13\x1d\x9d\xf5\xe9\xa7\xcd\xb0\xed\xee\x56\xc6\x59\x2d\ +\x54\x43\x71\x1f\x8a\x31\x5c\xb7\x3e\x79\x65\x90\x57\x5b\xfd\x5f\ +\xda\x6a\xff\x14\x1d\xb3\x4c\x23\xd9\xd5\x3b\xbb\x1d\x9d\x30\x7d\ +\xcf\xa8\x71\xe1\xd2\x30\x27\x49\x92\x6c\x6c\xa6\x4e\x9d\xba\x7c\ +\xf9\xf2\x9c\x9c\x9c\xf6\xf6\x76\xb5\xee\xcc\xc1\x1d\x43\x11\x59\ +\x8c\xe1\xfa\xc4\x14\x8d\xff\xec\x6b\xfa\x9c\xe6\x82\x03\xa1\x61\ +\x7e\xcb\xa4\x97\xf2\x26\xfe\x68\xe7\x08\x87\x18\x69\x98\xa7\x24\ +\x39\x0d\x1f\xee\xe2\xec\xbc\x78\xf1\xe2\x2d\x5b\xb6\xe4\xe6\xe6\ +\x3e\x79\xf2\x44\xb5\x59\x3a\x04\x9b\x84\x60\x18\xa4\x09\x09\x7d\ +\x67\x6e\x4b\xc9\x27\xcd\xba\xec\xd8\x88\x80\x11\x92\xf4\x8a\xa3\ +\xe3\x34\x17\x97\x45\x1a\xcd\xf6\xbd\x7b\x4b\xab\xab\x3b\x1e\x77\ +\x0c\xc6\x8a\x2a\x0d\x2a\x3d\xb1\x72\x60\x6c\xda\xf4\x5b\xa6\x61\ +\xfc\xca\x25\x4d\xba\xac\x46\x5d\xd6\x07\x51\x4b\x28\x86\x85\x6b\ +\x0d\x94\x8c\x96\x59\xe3\x2d\xe4\x3b\x3d\x4b\x95\x95\x50\xd0\x4b\ +\x4c\x4c\x9c\x3a\x75\x8a\xb7\xaf\x5f\x64\xe0\xfc\xab\x45\xd9\x68\ +\x44\xa0\x97\xaf\xaf\x9f\xab\x8b\x73\x52\x52\x12\x0e\x1d\x1d\x1d\ +\xea\xae\x9f\x83\xcb\xd0\x84\x5e\x72\x72\x32\xc3\x75\xa3\xb5\x75\ +\xc3\xc6\x5f\x07\xf9\xbd\x79\x4d\x7f\x08\xc5\xa0\x78\xbd\xa5\x85\ +\x26\x1c\x70\xc3\xf9\xfb\xc1\xd0\x84\xde\xfa\xf5\xeb\x87\x0f\x1f\ +\x5e\x56\x56\x86\x1d\xb3\x26\x2e\x78\xf1\x9c\x66\xfd\x21\x14\x83\ +\x22\x95\x34\xe1\x80\xdb\xe0\x91\x54\x93\xa1\x09\xbd\x75\xeb\xd6\ +\xd9\xda\xda\x56\x55\x55\x31\x09\xd9\xd6\xe3\xd6\x26\x68\x02\xdc\ +\x9b\x8a\x72\x50\x0c\x8a\x54\xd2\x84\x03\x6e\x38\x0f\x12\x49\x69\ +\x90\x96\x96\x84\x84\x04\x3b\x3b\x3b\xd0\x3f\x7e\xfc\xb8\xb5\xb5\ +\x95\x45\x63\x4d\xdc\x07\x32\xc3\x83\x28\x06\x45\x2a\x69\xc2\x01\ +\x37\x9c\xe9\xa2\x90\x54\x71\x51\x55\x67\x0c\x4d\x46\x2f\x3e\x3e\ +\x7e\xe4\xc8\x91\xe0\x7e\xf4\xe8\xd1\xcd\x9b\x37\x6f\xdd\xba\xc5\ +\x93\x76\xec\xfb\xf1\x9a\x80\x39\x8d\xba\x1c\x14\x83\x22\x95\x34\ +\xe1\x80\x1b\xce\x74\xa1\xa3\xea\x23\x29\xa9\x3e\x7a\x71\x71\x71\ +\xa3\x46\x8d\x02\xf1\xc3\x87\x0f\xaf\x5f\xbf\x7e\xfb\xf6\xed\x1b\ +\x37\x6e\x74\x76\x3e\x8d\x59\xb3\xf6\xdd\x00\xf7\x86\xa2\x83\x28\ +\x06\x45\x2a\x69\xc2\x01\x37\x9c\xe9\x42\x47\xba\xab\x3b\x92\x92\ +\x5a\xf4\xba\xe4\x07\xe8\xd8\xd8\xd8\xd1\xa3\x47\x83\xb5\xad\xad\ +\xad\xa5\xa5\x45\x0c\x11\x04\x9e\x3c\x79\x1c\x13\x1b\x07\xb1\x2b\ +\xba\x6c\xd4\xc0\x30\x36\x8e\x4a\x9a\xc4\x20\xe3\x4c\x17\x3a\xd2\ +\x9d\x20\x84\x12\xfb\xc7\xc0\x49\x4a\x2a\xd2\x8b\x8e\x8e\xb6\xb7\ +\xb7\x07\xe5\x83\x07\x0f\xae\x5e\xbd\xca\xf8\xb4\xca\x72\xed\xda\ +\xb5\x8e\xf6\xf6\xe8\x98\xf7\x0d\x0c\x0b\xb3\x51\x0c\x8a\x54\xd2\ +\x24\x7c\x70\xa6\x0b\x1d\xe9\x4e\x10\x42\xa9\x45\x52\x52\x8b\x5e\ +\x54\x54\xd4\x98\x31\x63\x2a\x2b\x2b\xef\xdf\xbf\xdf\xd4\xd4\xc4\ +\x98\x80\xbe\x45\x16\x8a\x4c\xc2\x55\xd1\xb1\x10\xbb\x5c\x98\x85\ +\x62\x50\xa4\x52\x78\x2a\xce\x14\xe9\x4e\x10\x42\x11\x50\x15\x92\ +\x56\xae\x34\xca\x4a\x20\xe8\x45\x44\x44\x38\x38\x38\x80\xec\xce\ +\x9d\x3b\x57\xae\x5c\x61\x34\x9a\x65\xb9\x2a\x4b\x43\x43\x43\x5b\ +\xdb\x7f\xa2\x56\xc7\x40\xac\xbe\xf0\x00\x8a\x41\x91\x4a\x9a\x84\ +\x8f\xe2\x4f\x77\x82\x10\x8a\x80\x84\x55\x48\x5a\xbd\xf0\x58\xc3\ +\xd0\x84\x9e\x56\xab\x1d\x3b\x76\x6c\x45\x45\x05\xb7\x53\x7d\x7d\ +\x3d\xe3\xd0\x28\x4b\xd3\x73\xb9\x7c\xf9\xf2\xd7\x5f\x3f\x58\xb9\ +\x2a\x3a\x28\x60\xce\xa5\x82\x2c\x14\x83\x22\x95\x34\x29\x6e\x4a\ +\x2f\x82\x10\x8a\x80\x84\x25\xf8\x00\x49\x4a\x03\x9c\x9c\x21\x21\ +\x21\x8e\x8e\x8e\xa0\xe1\x46\xaa\xab\xab\x63\x4c\xae\xc8\xd2\x60\ +\x24\x97\x2e\x5d\xfa\xea\xab\x7f\x47\x46\xad\x0e\xf2\x77\xaf\xcb\ +\x3f\x80\x62\x50\xa4\x92\x26\x63\x4f\xa5\x2f\xa1\x08\x48\x58\x82\ +\x93\x62\x20\xd3\x55\x1a\x08\xbd\xe0\xe0\x60\x10\x94\x97\x97\x73\ +\x0b\xd5\xd6\xd6\x72\xed\x41\x5c\xdf\x43\x68\xba\x77\xf7\x6e\x44\ +\xe4\xaa\xa0\x00\xf7\x8b\xf9\xfb\x51\x0c\x8a\x54\x8a\x5e\x26\x22\ +\x82\xd0\x44\x58\x82\x93\x82\x44\x56\x93\xb4\x60\x96\x0a\xb7\x6e\ +\x59\x0c\xef\x7b\x41\x41\xe3\xc7\x8f\x07\x01\xf7\x4f\x4d\x4d\x0d\ +\x57\xfd\xe2\xc5\x8b\x75\xbd\x09\xad\x77\x6e\xdf\x0e\x8f\x88\x62\ +\x72\xd6\xe6\x1f\x40\x31\x28\x52\x29\x3a\xf6\x14\x11\x8a\x56\x82\ +\x93\x82\x44\xa4\x23\xa9\xc8\x6e\xd1\x74\x35\x97\xa1\x09\x3d\xce\ +\x1a\x26\x4c\x98\xc0\x73\x33\x77\x4e\x75\x75\x35\xd7\xfb\x82\x2c\ +\xb5\xbd\x09\x0e\xdc\x57\xda\xf0\x95\x81\xfe\xee\x17\xf2\xf6\xa3\ +\x18\x14\xa9\x14\x7d\x7b\x8a\x12\x0d\x07\x52\x90\x88\x74\x24\xb5\ +\x82\xa4\x64\xfe\xe4\x54\xe8\x2d\x5d\xba\x74\xe2\xc4\x89\xa5\xa5\ +\xa5\xac\x13\x2c\x7a\x5c\xe9\xf3\xb2\xd4\xbc\x40\xf0\x61\x6b\x0c\ +\xd3\x46\x42\xac\x26\x37\x13\xc5\xa0\x48\xa5\xe8\xde\xab\x28\x31\ +\xf1\x21\x11\xe9\x48\x4a\x6a\x63\x24\xaa\x31\x34\x0e\xba\x64\xc9\ +\x92\x49\x93\x26\x95\x94\x94\x30\x8b\xb8\xb4\x6c\xd0\x95\xfd\x09\ +\x6e\x6c\x78\xa1\x61\x11\xc6\x0c\x29\x52\x49\x53\xbf\xdd\x49\x81\ +\x1b\xe9\x48\x4a\x6a\x00\x58\x44\xb2\x9f\x59\xaa\x4c\x4e\x71\x8b\ +\xfb\xfb\xfb\x4f\x9e\x3c\xb9\xb8\xb8\x98\xf9\x43\x3e\xd6\x3a\x6e\ +\x92\x8a\xfe\x04\x4f\x36\xbc\x90\xd0\x70\x88\x9d\xcf\xcd\x3c\x2f\ +\x33\xa4\x48\xa5\x08\xd2\xb7\x88\x14\x78\x92\x94\xd4\x00\x00\x86\ +\x58\xf0\xcc\x99\xae\x7d\x31\x34\xa6\x87\xe1\xe7\xe7\x37\x65\xca\ +\x14\x72\x30\x79\xf4\x7a\x3d\xd7\x95\x99\x53\x66\x86\xe0\xcc\x66\ +\xf7\x5e\x88\x36\x30\xc0\xbd\x3a\x37\x03\xc5\xa0\x48\xa5\x88\xd3\ +\xaf\x88\x44\x38\x93\x1a\x00\xc0\x00\x8c\x40\xd8\x2f\xc9\x17\x32\ +\x34\xa6\x87\xf8\xfa\xfa\x72\x98\x59\x54\x54\xc4\xb4\xd1\xe9\x74\ +\xa4\x21\x5f\xb1\x79\x52\x58\x58\xc8\x8d\xa4\x09\x0e\x5d\xe1\x3f\ +\xa7\xea\x6c\x26\x8a\x41\x91\x4a\x9a\xcc\x0c\x22\xd2\x91\x1a\x00\ +\xc0\x00\x0c\x90\x04\xb6\xbe\x49\xf6\xce\x50\xa1\x27\x7e\xbd\xbd\ +\xbd\xa7\x4f\x9f\x4e\x5c\x66\x0b\x98\x48\x86\xad\x37\x5b\x0a\x0a\ +\x0a\xd8\xdf\x64\x86\xee\x95\x67\x32\x50\x0c\x8a\x54\xd2\x64\x7e\ +\x1c\x91\x14\x00\xc0\xc0\x06\x12\xc0\x14\x90\x2f\x22\x29\xf5\xbd\ +\xc0\xf0\x9e\xc6\xa5\x72\x72\x72\xe2\xe2\x31\x55\xce\x9d\x3b\x87\ +\x41\x0e\x9d\x25\x92\x9f\x9f\xcf\x0e\xf7\xae\x26\x44\x66\xb8\x0f\ +\xc5\xa0\x48\x25\x4d\x16\x85\x12\xa9\x81\x01\x18\x0c\x80\x01\x4f\ +\xbc\x97\x5a\x36\x4b\x95\x31\xe4\x10\x9a\xe3\x30\x57\x57\xd7\x19\ +\x33\x66\x10\x0e\xc3\xc5\xc5\xc5\xd5\x42\xa1\x8b\x9b\xdb\x0c\x9b\ +\x61\xb6\x11\x1a\xdf\xd2\x2f\xf7\xa2\x18\x14\xa9\xb4\x2e\x1a\xbf\ +\x80\x01\x12\x06\xf0\x00\x69\xd6\x18\x1a\x7f\x12\x11\x2b\x27\x1f\ +\x0f\xc4\x86\xcb\xa6\x84\x21\xf6\xa8\x1a\xcb\x45\xec\x87\xda\xf0\ +\xc8\x65\x8b\x66\x97\xff\x6b\x1f\x8a\x41\xb1\xef\xfd\xb0\x0f\x11\ +\x30\x04\x24\xf1\xc8\x21\xbe\x73\x18\x8f\x96\x42\x47\xea\x79\x08\ +\x6f\xfc\x1d\x53\x95\xb3\xe7\x6f\xcf\x85\x93\x3e\x0c\xf0\x99\x55\ +\xf2\xcf\x8f\x51\x0c\x8a\xe2\x2e\x50\xe5\xc3\x81\xf1\x87\x57\x13\ +\xcc\x52\x4f\x57\xd5\x3f\x1e\x28\x0c\x03\x17\xbb\xd7\x17\x1f\x42\ +\x31\xd4\x62\xd8\xeb\xc3\xc9\xff\x8d\xe1\x37\xcf\x45\x70\x3b\x7c\ +\xf8\xb0\x87\x87\x87\xb7\x8f\x4f\x60\xe0\x0a\xe6\xf7\xbc\xf9\x0b\ +\xe7\x2f\xf4\x59\xe8\xed\xbb\x60\xa1\xcf\x02\x6f\x0c\x6b\x74\xfe\ +\x02\xef\xb7\xfd\xfc\x9d\x9c\x5d\x5f\x1e\x67\xff\xcb\x9f\xff\x14\ +\xc5\xa0\x48\x25\x4d\xd6\xc5\x04\xcc\x02\x19\x18\xf0\x00\x09\x54\ +\x00\x03\x1b\xf0\x50\x10\x3c\xc5\x8c\x35\x9d\xa5\x8c\xf2\x91\x23\ +\x47\xa6\x4d\x9b\xce\x1d\xcc\xc7\xb0\xfd\xdb\xd7\xee\xd8\x10\xfe\ +\xbb\xc4\xf7\x52\x53\x42\xb7\xa5\x84\xa5\x26\x87\xa6\x26\x87\x6d\ +\xb3\x54\x53\xc2\xb6\x26\x85\xa4\xff\x66\xf5\xee\xcd\x6b\x76\xfc\ +\x2a\x0a\xc5\xa0\x48\x25\x4d\x96\x46\x4b\x35\xa8\x0c\x26\x25\x14\ +\x60\xc0\x03\x24\x50\x01\x0c\x6c\xc0\x77\x3d\xff\xa8\xfc\xc2\x95\ +\x06\x83\xcf\x77\xa9\xdb\xb6\x39\x8e\x73\x08\x5a\xe4\x7e\xe1\x4c\ +\xc6\x83\xba\x3f\x37\xe9\x0e\x36\x14\x66\x37\xeb\x73\x9a\xf4\x86\ +\x23\x5d\x0c\xf3\x55\xf8\x37\xea\xb2\x1b\x0b\xb3\x9a\xb1\x8b\x0e\ +\x62\x50\x54\x9a\x2c\x0a\x05\x00\x0c\xc0\x00\x09\x60\xc0\x03\x24\ +\x50\x01\x0c\x6c\x63\x16\xfd\xac\x34\xd8\x9c\x9a\xf8\xbe\xb5\x68\ +\x98\x24\x25\x44\x05\xd4\x9e\xcd\xa8\xcb\xcb\xd4\x1f\x4d\x2b\x39\ +\x9e\x5e\x76\x72\x77\xe9\x89\x5d\x68\xd9\x89\xdd\x43\xa6\xdf\x66\ +\x3c\xb9\x1b\x00\xc0\x00\x0c\x90\x00\x06\x3c\x40\x02\x55\xcc\xcc\ +\xbe\x56\x1a\x85\xa4\x72\xbc\x2b\x8a\xa7\x4e\xfd\xc3\xc9\xe5\xc7\ +\x53\x26\x8c\xd9\xbf\x23\xa1\xb9\xf8\xd0\xf9\xd3\x7b\x8b\x8f\xa7\ +\x97\x9f\xda\x83\x92\x4f\x18\x83\xad\x4a\x22\x52\x03\x00\x18\x80\ +\x01\x12\xc0\x80\x27\xf8\x28\x87\xc8\x26\x2b\x65\x2f\x3b\xbe\x52\ +\xc3\x25\x11\xcb\x20\x87\xd3\xbf\xdf\xba\x6d\xd8\x4b\xb6\x73\xdf\ +\x70\x3b\xfd\x79\x6a\x63\x51\x4e\xe9\xc9\x5d\xc5\xf2\x60\x96\x0d\ +\xf2\x60\xca\xc1\x0d\x43\x47\x3a\x92\x92\x1a\x00\xc0\x00\x0c\x90\ +\x00\x26\x16\xe4\x3e\xfe\xa9\xd2\xcf\x93\xb7\x98\xb4\xe2\xde\xe5\ +\xfc\x7a\xd9\xf2\x20\x1b\x49\x8a\x0d\x7b\xab\xea\xf4\xc7\x17\xf3\ +\x32\x75\x47\xd3\xf4\xc7\xd3\x4b\x4e\x90\x7e\x77\xf1\x89\x5d\x18\ +\x2a\x2a\x01\x09\x8b\x41\x0a\x12\x91\x8e\xa4\xa4\x06\x00\x30\x00\ +\x23\xd6\x45\x31\x2d\x2d\x7e\xf2\xee\xf5\xe0\x50\xcc\x81\xdc\xdc\ +\xbc\x19\x6e\xaf\x8c\x1f\x37\x2a\x7d\x73\x6c\x7d\x61\x76\xc5\x97\ +\x7f\x2c\xf8\xe2\x23\x40\x00\x88\x5f\xfd\xf1\x5d\x06\x64\x03\x53\ +\x82\x28\x01\x09\x4e\x0a\x12\x91\x8e\xa4\xa4\x06\x80\x72\x1a\x66\ +\xce\x11\xa3\x64\xe9\x73\x83\xe1\x86\xee\xea\x4a\x4b\xdf\x65\x37\ +\x62\xe4\xac\x99\xae\x47\x3f\xd9\x4c\xfa\xa2\x63\x06\x28\xfc\x16\ +\x1d\x4f\xd3\x1d\x4b\xd3\x71\xd5\xad\xd6\x63\x69\x04\x51\x02\x12\ +\x9c\x14\x24\x22\x1d\x49\xc5\xdf\x8b\x2c\x7a\xde\xb2\xec\x24\xca\ +\x78\xd2\xde\xbb\x77\x97\xf7\x74\x76\x21\xed\x0a\xaf\xe2\x93\x7b\ +\xce\x9f\xcd\xc8\xff\xfb\xce\x73\x5f\x7c\xa4\x3b\x96\x5e\x78\x34\ +\x0d\xc5\xb0\x48\x95\x5e\x04\x21\x14\x01\x09\x4b\x70\x52\x90\x88\ +\x74\x66\x4e\xcb\x01\x9d\x79\x1b\x7f\x27\x14\x93\x96\xf7\xd2\xd7\ +\x66\xfe\xc2\xc1\xde\x6e\xeb\x86\x48\x0e\xd1\x4a\x4f\xed\xc9\xfd\ +\xeb\x1f\xc0\x87\xe6\xfd\x6d\xa7\x30\xcc\x51\xc5\x99\xee\x04\x21\ +\x14\x01\x09\x4b\x70\x52\x28\xcb\xbb\x15\x27\xdf\x16\x9f\xea\xf7\ +\x5c\x69\x29\xee\xcb\xc8\x1c\x6d\xef\xf0\xaa\xdb\xb4\xcf\x33\x37\ +\x5e\x38\x77\xa0\x42\x7e\x09\xac\x3a\x9b\x51\x69\xb6\x1a\x9c\xcf\ +\xec\xa3\x23\xdd\x09\x42\x28\x02\x12\x56\x5c\xc7\x81\xfc\xaf\xcf\ +\xfa\x2f\x33\xa2\x97\x32\x69\xf9\x30\xb6\x6a\x75\x0c\x33\x6a\xf9\ +\xa2\xd9\xdb\x37\x46\x6e\x4a\x0a\xd9\x9c\x1c\xba\x25\x39\xcc\x4c\ +\xc5\x99\x2e\x74\xa4\x3b\x41\x08\x45\x40\xe3\x69\x69\xf5\xb7\x6a\ +\x49\x95\x97\x17\xfe\xe8\x23\x1e\x83\x38\x2f\xf2\xf1\x79\x7b\xee\ +\x5c\x4f\x4f\x4f\x2f\x0f\x8f\x79\x1e\x1e\x5e\x66\xeb\x3c\xba\xd0\ +\x91\xee\xe2\xbf\x1b\xf2\xc2\xd6\x39\xf0\xd7\x37\x15\xbe\xe3\x9b\ +\x7c\x8a\x1a\x20\x20\x11\x41\xc5\x3f\x10\x49\x2a\xbe\x98\x99\xbc\ +\x89\x76\x5b\x28\xaa\xbf\x79\x0f\xc5\x7f\x13\xbf\x0b\xf2\x3f\x84\ +\xe7\xbe\xe1\x71\xc1\x1b\xd4\x00\x00\x00\x00\x49\x45\x4e\x44\xae\ +\x42\x60\x82\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x07\ +\x09\x85\x57\x87\ +\x00\x63\ +\x00\x61\x00\x72\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x09\ +\x0c\x98\x89\x87\ +\x00\x68\ +\x00\x6f\x00\x75\x00\x73\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x08\ +\x05\x87\x5a\x67\ +\x00\x62\ +\x00\x6f\x00\x61\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x03\x00\x00\x00\x02\ +\x00\x00\x00\x3e\x00\x00\x00\x00\x00\x01\x00\x00\x18\x77\ +\x00\x00\x00\x12\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x00\x26\x00\x00\x00\x00\x00\x01\x00\x00\x0b\x97\ +" + +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() diff --git a/examples/draganddrop/draggableicons/images/boat.png b/examples/draganddrop/draggableicons/images/boat.png new file mode 100644 index 0000000000000000000000000000000000000000..46c894f06bce2aabfb7968c9fdfbec0098bf77c5 GIT binary patch literal 2772 zcmYk6c{~&TAIInTV$3nEh+JU}6{04JuwjPDnR2EUC1vj9$Tdx_$vw%PgvwRR5QZFc zHb==>xf{t`<43>m@A3G39*@uG^Uvq`K3|{rV{0|0olPzYTsw{K&aeCAd|N86MQ7>{5pW#9X3u>CD&;%Z<+p~FT(>e|xiuzwJ2 z5s^m?C66vtSzqgW!!=j}hP1e0iL|xDIi_XoO>gUT5r{xoUVKICQ!mcLMoag8J@&8R zYg)#+5Fh^Truox0X-w80lN3aw{48IKJGsZ2B&e&qKf4&zT7grDl2HuR0J(hLUt?os zJAQtC*F~MebzL;nE7y<_&~*QfM3F8=K zeMlnv&s=f$>!oFzR=ZPH`d(55Rr^})z?+G-*H})YxA!0tl_s(ypS3Ws@Inu98Tk^>x4M<*tts`e3^!lUps2xV^U)g%>4MF9k`09w$tRyigXq&00M(=d7?j^=q4`?$Ap22 zYlQr1b&)irSob<52whsLCFu`pB`ESMUVMXd_848eR^+nNA#X~4W#B;PzKn)NN8RCn z`XtqE`qYfpMRZDvc`w?;grw<9sI73iF|kvM9C1TDPphcNDUJ2Eun-oIkdT-!&xz>l zjdaA}&NTbxSNk@%I&p7O0!>4CsLul^g;CIB_nSAjKlVm`+xoMB7nE|ev5A(bgq{vq zAz@iEkci_c>XTt#CX%d@bAc4!1^US7sExI?DsY58O^3R%f6XG`%s~XJ{zwi_4MAa) zdtz#8WF)7SmR7G$$j-a!>J+4_=~wPE%@Hszq@sHh8=N$kmuTg6+4>g9)IeEVJ7lIk zX(D88wy!%2es7FSP4-*dUdaqQA4fj+uXAylPj3FatU`(Q11~SHe1kalm1ewPg;PVw z_WF`I+|$QTJI=0heGI^i&ig+vdWPguEh6#i8hM6$c6fNWFW)etx~#0Mun-9Xb3VHe zctFj4nrG8?=~X=gK+sJx&Wuc$!uW>^5yB#^jjmD{SDJexpV^d3X!&^{k^j_M z1_xi9?uDTTyx;E&cgRWS%6mmkm@};~{N&$aDtHj9|}jQ1*MaI-Nnrl$P1tSM@&F9lfU?>R1z5OWir6=tEJxefsnY!1)@*^+k8KA*E` zxxkAwF{nv;qqmyBnXm8Jq3!UK)fAw>SKCoW%A?(7k=6BlQAi0SIEWz3&ux(y<0Drc zUT|Y~#%lJI1KDS)<#AzQ;j2R@AK1_RemhuqiQ#ewG+?0j3JO0&eQs1Z`>hnFx*`Lf zGcvyID)&-VU4VS!6A_gRO?moMCH7sFM{f!X=;;xV>jG{CDOjK^8^%zN#1CErt{~p# z*u69{^NQWx-o`w;@c!Mq^i6$jx~3|YbmO~NPcY^y-%9|dE5-xef zCJG8;!_=i+J%>(Foe|2MRf#$_FuKEooteWljN|y^bci-{bQRMw=G1UNl z_5}zk4{>hfkTYikc{KW8+2mUje+Hj* zzv%27lrmL1|IE=3=Rfz@!ENO6n10bX_QHGdznTGXUAV+<-PKiZBNkPFt5YHro3WZd zeQ&dbJ{f6{&3(VoyEzaPn^2sVGa5m}h(?qdAGhEDi0-$uG3>+!4Brk_x~Z&HZ_z9d z?v%z4G>nt)4x?+l$M0*g0&lxsHkRItb3a%LJ?GfzaM@`;IWAyk<`1P4r8RdpLBPLsUu3WI4BNCVa3G{&1=Q6sh zJLhF~VG=~{xCDwi9((e^x3`OO9RdB{KKQ3Gef(sWcq^uogJ?P3?R(oaZ>NU^TB(i! z>ipE#Mk$V*G7vT(`u@Sl!kTrmWe19fo`58$GW&ZHwY;=5?wcw#w|zlsw>R@fzQ7GUjd@2%$H?;MyG*DV zr+o^vba{}Mrrq8D)ZRv=q>1d#%1TCPD6g&r1})oTFc@XQgg{A2N9@7{a&OY|RD<|x z6a7462!6PJI_n`pOj;VOOVtrVDb}ZF)IIjQ27B2MC`b)G)WEl@6Zx}#((9x6{v-qd NP)IXGxt??Qe*naBHSYib literal 0 HcmV?d00001 diff --git a/examples/draganddrop/draggableicons/images/car.png b/examples/draganddrop/draggableicons/images/car.png new file mode 100644 index 0000000000000000000000000000000000000000..3cb35e56cb9b18e4a43eb0a44b728207dd9baf4a GIT binary patch literal 2963 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 JPDHLkV1ij+#9aUY literal 0 HcmV?d00001 diff --git a/examples/draganddrop/draggableicons/images/house.png b/examples/draganddrop/draggableicons/images/house.png new file mode 100644 index 0000000000000000000000000000000000000000..ee9d5b11598b8021af04ecad1651541b97e7239c GIT binary patch literal 3292 zcmV<23?uW2P)001@!0ssI20Fd*d000c5Nklr zR`0&8U$0wt&lWKzjfn`R`3)Dj{nYQ7PNmpO>8ej`oNALMxR_=vBc&8Vz|$CGX?~`Q z)Y7klBEPI<;<=c>RMCbx_d<27#|-Gf&hgh1|47>g zRlytx?}Jrq)~{|;MkR>6Muc< zx<%I$13t*<%|6kT8BNe!6^3Cpo4xqK1%TJrKKb0^1Nr=TWQ=m!MPNvZEJH$Ifshn= zSgNGgw!7t71B+5V|M|pPj{u9UFykRkeoZc);ZlfZ0S4f%QfpT6rcdmDB|Hh7J@1vXYqZ1_@ z*nqUruq~0MO(8?7A}|b`DEwK7%m>9@)Q#5W#_dlZJajp85WhCaOW zXU_t>flmF4hc{jwMtC$UFzt7tg0rUdnE11<#P(%7WT6^68d)QOgsJyFyz!g658u3| z4?r$nvV=j-B3d|j=gyu1<@{WS+4CU5ld3FU#Zaulq8OAFW=czeaKL3Eju38(mG#+0 z5hWFZoP74djSuZP)VsD1)U|ubQs41Zi_n+e*)ssI@2*a{d;2DUCxl{n9uv$o{5bko zOvx>&0i$PxWX9fdNNSw`xo7*PhxZ=pT>~JGE?JrYIYT_8I!7roW@6fb@-JJV*t6dr-vA3 zo17{h`tSw^-@j#T-#s0frytlbG%^95R7pIV7SwkjOnOkLS(-=ISIH(wwC%0g>(Wc! z_rQo6U4Q_Ve*VCQN1s2uYVGas9zWXCv&>0yx_HR&-hU6I_l3^fQ`_#mGCC=w^_(0s z85bLrzxhmSsTCp1(BQ*u_oQU6$_kRwaVJS5+L{}_^}_3a{IGZeKrUPEOOkzQT6*ul zclwrfeVaS#pWJ%q(C`GjCwMG7hFHd&jBnhAKqTbM5*C$K$I34g66W_5oRqW4q2bA= zwr<$*+t*8yJa%;1@)ZswB(_5z-sw}PZn?exiyig5?!RMb43tyyrh(&=NG0aP-wAo_ zRaV(9R$!@v<+M}4gW3aW+UGPr_TrJ3E`R*)TW_vdxsre|LU&>ag5bT=r*7-JW81=} zU0>QTG&)Yw(?&yUrBYf-vPi~l!59QrGC~$2=_ZvVZ&w)!>4P0XRxFU#C4?kNNbSu{ zkNy7e3zx>}edlzn?tWw{f617jM7ura%4dl(edx&1QliS14*J+2R-A4_R1H4_XC`mfjbj1DCcynsUj>_v^-!UPPnhc^l5K|B|0_CR0Ki+ zP^DyNXWN3-`C9Arr7bzChK4$TQtoc8)o2+g6J(UP>6g5FL%ejx)*8k!&>rJ4ts*ir zEyJ_1Lt1lQPt5QjZ%of5LR*E0S^#KrLv>=@_QYq!XVL}Syl7=dcIfF_%dDB&TDmglEPsZfQ*$jF~-6 zbuvUu3ML>3xWW>PqN>F0v4f?J;LV_gh^#4;V7W?QU&_QNz*a!lHXiy~N^4974hc3M zvhcBrw_1kv+R`Z77&CGNPwI``(A;9_O^rJO*3z1K8iQJj%4Y3QOQEHbBEaJYJg53I zZJ?l|r`1mD(8G$zh!`mU1nK+@RtZ*ea;BD6<gLAa zN8ewV&!2?e$Opss&lX$z8&}^vZ)_|K&^?xtb~_{_bW(-{iJ}TM)3zDm*T~F&zz)k9 zhnBH6nLysVp(T@Pv-cLl9b)~djE=`AqA+xqxpo{PP=-)vZ@8QT_wA6oxMIyCK4j(8 z3?Pw17#YD$G2eN!dXV%9h6<>?H<~7$mleL0nmau+6ZNGk%(pp`ERgU!EhUaqo(8Ke_gDqA=GnQss47+|V-v^jOPTw&D`Xx&$fwOL|H= zDMMq0<7ufdijVv>qe;t9kxkUn4tWkbb#sMsF~FiiWY`Q5Cjb1&2+2ibW-U#!9TTK9 z!W!OUV8K%_k-Em#-gO||sku!uiI8dx?{6UEkGYo|>xiIv5eb_};_QuUSDT$Tp2m{r zmxTV(OTI!fnnfbhxL52QS_2-aTd z5+1(vwl~1B7GWsyd|={G$B{Nx8YFWPxiSK(fPi@^(@4-An9(&o zX2qSX_@YI)!yVsBB$rko!q$1&rp9b8BU&38V_k}ucIEhTI~%AlQrT=Ue{K$DFNA1_ z*d2<%611!h!c0b-;;(Dkh`Eiy+b2gajmUk+|8cDt zDbIG?<$s{$wL)}lyzug0F0{-EBHV>j_xa5^UsGO|5L;v}u$b~;H#RaWZ(6= 195: + x = 5 + y += wordLabel.height() + 2 + + newPalette = self.palette() + newPalette.setColor(QPalette.Window, Qt.white) + self.setPalette(newPalette) + + self.setAcceptDrops(True) + self.setMinimumSize(400, max(200, y)) + self.setWindowTitle("Draggable Text") + + def dragEnterEvent(self, event): + if event.mimeData().hasText(): + if event.source() in self.children(): + event.setDropAction(Qt.MoveAction) + event.accept() + else: + event.acceptProposedAction() + else: + event.ignore() + + def dropEvent(self, event): + if event.mimeData().hasText(): + mime = event.mimeData() + pieces = mime.text().split() + position = event.pos() + hotSpot = QPoint() + + hotSpotPos = mime.data('application/x-hotspot').split(' ') + if len(hotSpotPos) == 2: + hotSpot.setX(hotSpotPos[0].toInt()[0]) + hotSpot.setY(hotSpotPos[1].toInt()[0]) + + for piece in pieces: + newLabel = DragLabel(piece, self) + newLabel.move(position - hotSpot) + newLabel.show() + + position += QPoint(newLabel.width(), 0) + + if event.source() in self.children(): + event.setDropAction(Qt.MoveAction) + event.accept() + else: + event.acceptProposedAction() + else: + event.ignore() + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + window = DragWidget() + window.show() + sys.exit(app.exec_()) diff --git a/examples/draganddrop/draggabletext/draggabletext.qrc b/examples/draganddrop/draggabletext/draggabletext.qrc new file mode 100644 index 0000000..b72217d --- /dev/null +++ b/examples/draganddrop/draggabletext/draggabletext.qrc @@ -0,0 +1,5 @@ + + + words.txt + + diff --git a/examples/draganddrop/draggabletext/draggabletext_rc.py b/examples/draganddrop/draggabletext/draggabletext_rc.py new file mode 100644 index 0000000..dd35bdb --- /dev/null +++ b/examples/draganddrop/draggabletext/draggabletext_rc.py @@ -0,0 +1,56 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sat May 4 16:59:59 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x00\xf7\ +\x51\ +\x74\x0a\x51\x75\x61\x72\x74\x65\x72\x6c\x79\x0a\x69\x73\x0a\x61\ +\x0a\x70\x61\x70\x65\x72\x0a\x62\x61\x73\x65\x64\x0a\x6e\x65\x77\ +\x73\x6c\x65\x74\x74\x65\x72\x0a\x65\x78\x63\x6c\x75\x73\x69\x76\ +\x65\x6c\x79\x0a\x61\x76\x61\x69\x6c\x61\x62\x6c\x65\x0a\x74\x6f\ +\x0a\x51\x74\x0a\x63\x75\x73\x74\x6f\x6d\x65\x72\x73\x0a\x45\x76\ +\x65\x72\x79\x0a\x71\x75\x61\x72\x74\x65\x72\x0a\x77\x65\x0a\x6d\ +\x61\x69\x6c\x0a\x6f\x75\x74\x0a\x61\x6e\x0a\x69\x73\x73\x75\x65\ +\x0a\x74\x68\x61\x74\x0a\x77\x65\x0a\x68\x6f\x70\x65\x0a\x77\x69\ +\x6c\x6c\x0a\x62\x72\x69\x6e\x67\x0a\x61\x64\x64\x65\x64\x0a\x69\ +\x6e\x73\x69\x67\x68\x74\x0a\x61\x6e\x64\x0a\x70\x6c\x65\x61\x73\ +\x75\x72\x65\x0a\x74\x6f\x0a\x79\x6f\x75\x72\x0a\x51\x74\x0a\x70\ +\x72\x6f\x67\x72\x61\x6d\x6d\x69\x6e\x67\x0a\x77\x69\x74\x68\x0a\ +\x68\x69\x67\x68\x0a\x71\x75\x61\x6c\x69\x74\x79\x0a\x74\x65\x63\ +\x68\x6e\x69\x63\x61\x6c\x0a\x61\x72\x74\x69\x63\x6c\x65\x73\x0a\ +\x77\x72\x69\x74\x74\x65\x6e\x0a\x62\x79\x0a\x51\x74\x0a\x65\x78\ +\x70\x65\x72\x74\x73\x0a\ +" + +qt_resource_name = b"\ +\x00\x0a\ +\x0b\x0b\x17\xd9\ +\x00\x64\ +\x00\x69\x00\x63\x00\x74\x00\x69\x00\x6f\x00\x6e\x00\x61\x00\x72\x00\x79\ +\x00\x09\ +\x08\xb6\xa7\x34\ +\x00\x77\ +\x00\x6f\x00\x72\x00\x64\x00\x73\x00\x2e\x00\x74\x00\x78\x00\x74\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\ +\x00\x00\x00\x1a\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() diff --git a/examples/draganddrop/draggabletext/words.txt b/examples/draganddrop/draggabletext/words.txt new file mode 100644 index 0000000..19b8b03 --- /dev/null +++ b/examples/draganddrop/draggabletext/words.txt @@ -0,0 +1,41 @@ +Qt +Quarterly +is +a +paper +based +newsletter +exclusively +available +to +Qt +customers +Every +quarter +we +mail +out +an +issue +that +we +hope +will +bring +added +insight +and +pleasure +to +your +Qt +programming +with +high +quality +technical +articles +written +by +Qt +experts diff --git a/examples/draganddrop/dropsite.py b/examples/draganddrop/dropsite.py new file mode 100755 index 0000000..e81403d --- /dev/null +++ b/examples/draganddrop/dropsite.py @@ -0,0 +1,180 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited +## Copyright (C) 2010 Hans-Peter Jansen . +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import pyqtSignal, QMimeData, Qt +from PyQt5.QtGui import QPalette, QPixmap +from PyQt5.QtWidgets import (QAbstractItemView, QApplication, QDialogButtonBox, + QFrame, QLabel, QPushButton, QTableWidget, QTableWidgetItem, + QVBoxLayout, QWidget) + + +class DropArea(QLabel): + + changed = pyqtSignal(QMimeData) + + def __init__(self, parent = None): + super(DropArea, self).__init__(parent) + + self.setMinimumSize(200, 200) + self.setFrameStyle(QFrame.Sunken | QFrame.StyledPanel) + self.setAlignment(Qt.AlignCenter) + self.setAcceptDrops(True) + self.setAutoFillBackground(True) + self.clear() + + def dragEnterEvent(self, event): + self.setText("") + self.setBackgroundRole(QPalette.Highlight) + event.acceptProposedAction() + self.changed.emit(event.mimeData()) + + def dragMoveEvent(self, event): + event.acceptProposedAction() + + def dropEvent(self, event): + mimeData = event.mimeData() + if mimeData.hasImage(): + self.setPixmap(QPixmap(mimeData.imageData())) + elif mimeData.hasHtml(): + self.setText(mimeData.html()) + self.setTextFormat(Qt.RichText) + elif mimeData.hasText(): + self.setText(mimeData.text()) + self.setTextFormat(Qt.PlainText) + elif mimeData.hasUrls(): + self.setText("\n".join([url.path() for url in mimeData.urls()])) + else: + self.setText("Cannot display data") + + self.setBackgroundRole(QPalette.Dark) + event.acceptProposedAction() + + def dragLeaveEvent(self, event): + self.clear() + event.accept() + + def clear(self): + self.setText("") + self.setBackgroundRole(QPalette.Dark) + self.changed.emit(None) + + +class DropSiteWindow(QWidget): + + def __init__(self): + super(DropSiteWindow, self).__init__() + + self.abstractLabel = QLabel( + "This example accepts drags from other applications and " + "displays the MIME types provided by the drag object.") + self.abstractLabel.setWordWrap(True) + self.abstractLabel.adjustSize() + + self.dropArea = DropArea() + self.dropArea.changed.connect(self.updateFormatsTable) + + self.formatsTable = QTableWidget() + self.formatsTable.setColumnCount(2) + self.formatsTable.setEditTriggers(QAbstractItemView.NoEditTriggers) + self.formatsTable.setHorizontalHeaderLabels(["Format", "Content"]) + self.formatsTable.horizontalHeader().setStretchLastSection(True) + + self.clearButton = QPushButton("Clear") + self.quitButton = QPushButton("Quit") + + self.buttonBox = QDialogButtonBox() + self.buttonBox.addButton(self.clearButton, QDialogButtonBox.ActionRole) + self.buttonBox.addButton(self.quitButton, QDialogButtonBox.RejectRole) + + self.quitButton.pressed.connect(self.close) + self.clearButton.pressed.connect(self.dropArea.clear) + + mainLayout = QVBoxLayout() + mainLayout.addWidget(self.abstractLabel) + mainLayout.addWidget(self.dropArea) + mainLayout.addWidget(self.formatsTable) + mainLayout.addWidget(self.buttonBox) + self.setLayout(mainLayout) + + self.setWindowTitle("Drop Site") + self.setMinimumSize(350, 500) + + def updateFormatsTable(self, mimeData=None): + self.formatsTable.setRowCount(0) + + if mimeData is None: + return + + for format in mimeData.formats(): + formatItem = QTableWidgetItem(format) + formatItem.setFlags(Qt.ItemIsEnabled) + formatItem.setTextAlignment(Qt.AlignTop | Qt.AlignLeft) + + if format == 'text/plain': + text = mimeData.text().strip() + elif format == 'text/html': + text = mimeData.html().strip() + elif format == 'text/uri-list': + text = " ".join([url.toString() for url in mimeData.urls()]) + else: + text = " ".join(["%02X" % ord(datum) for datum in mimeData.data(format)]) + + row = self.formatsTable.rowCount() + self.formatsTable.insertRow(row) + self.formatsTable.setItem(row, 0, QTableWidgetItem(format)) + self.formatsTable.setItem(row, 1, QTableWidgetItem(text)) + + self.formatsTable.resizeColumnToContents(0) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + window = DropSiteWindow() + window.show() + sys.exit(app.exec_()) + diff --git a/examples/draganddrop/fridgemagnets/fridgemagnets.py b/examples/draganddrop/fridgemagnets/fridgemagnets.py new file mode 100755 index 0000000..fa49dd8 --- /dev/null +++ b/examples/draganddrop/fridgemagnets/fridgemagnets.py @@ -0,0 +1,196 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (QByteArray, QDataStream, QFile, QIODevice, QMimeData, + QPoint, QRect, QRectF, Qt, QTextStream) +from PyQt5.QtGui import (QDrag, QFont, QFontMetrics, QImage, QPainter, + QPalette, QPixmap, qRgba) +from PyQt5.QtWidgets import QApplication, QLabel, QWidget + +import fridgemagnets_rc + + +class DragLabel(QLabel): + def __init__(self, text, parent): + super(DragLabel, self).__init__(parent) + + metric = QFontMetrics(self.font()) + size = metric.size(Qt.TextSingleLine, text) + + image = QImage(size.width() + 12, size.height() + 12, + QImage.Format_ARGB32_Premultiplied) + image.fill(qRgba(0, 0, 0, 0)) + + font = QFont() + font.setStyleStrategy(QFont.ForceOutline) + + painter = QPainter() + painter.begin(image) + painter.setRenderHint(QPainter.Antialiasing) + painter.setBrush(Qt.white) + painter.drawRoundedRect( + QRectF(0.5, 0.5, image.width()-1, image.height()-1), + 25, 25, Qt.RelativeSize) + + painter.setFont(font) + painter.setBrush(Qt.black) + painter.drawText(QRect(QPoint(6, 6), size), Qt.AlignCenter, text) + painter.end() + + self.setPixmap(QPixmap.fromImage(image)) + self.labelText = text + + def mousePressEvent(self, event): + itemData = QByteArray() + dataStream = QDataStream(itemData, QIODevice.WriteOnly) + dataStream << QByteArray(self.labelText) << QPoint(event.pos() - self.rect().topLeft()) + + mimeData = QMimeData() + mimeData.setData('application/x-fridgemagnet', itemData) + mimeData.setText(self.labelText) + + drag = QDrag(self) + drag.setMimeData(mimeData) + drag.setHotSpot(event.pos() - self.rect().topLeft()) + drag.setPixmap(self.pixmap()) + + self.hide() + + if drag.exec_(Qt.MoveAction | Qt.CopyAction, Qt.CopyAction) == Qt.MoveAction: + self.close() + else: + self.show() + + +class DragWidget(QWidget): + def __init__(self, parent=None): + super(DragWidget, self).__init__(parent) + + dictionaryFile = QFile(':/dictionary/words.txt') + dictionaryFile.open(QFile.ReadOnly) + + x = 5 + y = 5 + + for word in QTextStream(dictionaryFile).readAll().split(): + wordLabel = DragLabel(word, self) + wordLabel.move(x, y) + wordLabel.show() + x += wordLabel.width() + 2 + if x >= 245: + x = 5 + y += wordLabel.height() + 2 + + newPalette = self.palette() + newPalette.setColor(QPalette.Window, Qt.white) + self.setPalette(newPalette) + + self.setMinimumSize(400, max(200, y)) + self.setWindowTitle("Fridge Magnets") + self.setAcceptDrops(True) + + def dragEnterEvent(self, event): + if event.mimeData().hasFormat('application/x-fridgemagnet'): + if event.source() in self.children(): + event.setDropAction(Qt.MoveAction) + event.accept() + else: + event.acceptProposedAction() + elif event.mimeData().hasText(): + event.acceptProposedAction() + else: + event.ignore() + + dragMoveEvent = dragEnterEvent + + def dropEvent(self, event): + if event.mimeData().hasFormat('application/x-fridgemagnet'): + mime = event.mimeData() + itemData = mime.data('application/x-fridgemagnet') + dataStream = QDataStream(itemData, QIODevice.ReadOnly) + + text = QByteArray() + offset = QPoint() + dataStream >> text >> offset + + try: + # Python v3. + text = str(text, encoding='latin1') + except TypeError: + # Python v2. + text = str(text) + + newLabel = DragLabel(text, self) + newLabel.move(event.pos() - offset) + newLabel.show() + + if event.source() in self.children(): + event.setDropAction(Qt.MoveAction) + event.accept() + else: + event.acceptProposedAction() + elif event.mimeData().hasText(): + pieces = event.mimeData().text().split() + position = event.pos() + + for piece in pieces: + newLabel = DragLabel(piece, self) + newLabel.move(position) + newLabel.show() + + position += QPoint(newLabel.width(), 0) + + event.acceptProposedAction() + else: + event.ignore() + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + window = DragWidget() + window.show() + sys.exit(app.exec_()) diff --git a/examples/draganddrop/fridgemagnets/fridgemagnets.qrc b/examples/draganddrop/fridgemagnets/fridgemagnets.qrc new file mode 100644 index 0000000..b72217d --- /dev/null +++ b/examples/draganddrop/fridgemagnets/fridgemagnets.qrc @@ -0,0 +1,5 @@ + + + words.txt + + diff --git a/examples/draganddrop/fridgemagnets/fridgemagnets_rc.py b/examples/draganddrop/fridgemagnets/fridgemagnets_rc.py new file mode 100644 index 0000000..13889e5 --- /dev/null +++ b/examples/draganddrop/fridgemagnets/fridgemagnets_rc.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sat May 4 17:11:25 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x01\x16\ +\x43\ +\x6f\x6c\x6f\x72\x6c\x65\x73\x73\x0a\x67\x72\x65\x65\x6e\x0a\x69\ +\x64\x65\x61\x73\x0a\x73\x6c\x65\x65\x70\x0a\x66\x75\x72\x69\x6f\ +\x75\x73\x6c\x79\x0a\x41\x0a\x63\x6f\x6c\x6f\x72\x6c\x65\x73\x73\ +\x0a\x67\x72\x65\x65\x6e\x0a\x69\x64\x65\x61\x0a\x69\x73\x0a\x61\ +\x0a\x6e\x65\x77\x0a\x75\x6e\x74\x72\x69\x65\x64\x0a\x69\x64\x65\ +\x61\x0a\x74\x68\x61\x74\x0a\x69\x73\x0a\x77\x69\x74\x68\x6f\x75\ +\x74\x0a\x76\x69\x76\x69\x64\x6e\x65\x73\x73\x0a\x64\x75\x6c\x6c\ +\x0a\x61\x6e\x64\x0a\x75\x6e\x65\x78\x63\x69\x74\x69\x6e\x67\x0a\ +\x54\x6f\x0a\x73\x6c\x65\x65\x70\x0a\x66\x75\x72\x69\x6f\x75\x73\ +\x6c\x79\x0a\x6d\x61\x79\x0a\x73\x65\x65\x6d\x0a\x61\x0a\x70\x75\ +\x7a\x7a\x6c\x69\x6e\x67\x0a\x74\x75\x72\x6e\x0a\x6f\x66\x0a\x70\ +\x68\x72\x61\x73\x65\x0a\x62\x75\x74\x0a\x74\x68\x65\x0a\x6d\x69\ +\x6e\x64\x0a\x69\x6e\x0a\x73\x6c\x65\x65\x70\x0a\x6f\x66\x74\x65\ +\x6e\x0a\x69\x6e\x64\x65\x65\x64\x0a\x6d\x6f\x76\x65\x73\x0a\x66\ +\x75\x72\x69\x6f\x75\x73\x6c\x79\x0a\x77\x69\x74\x68\x0a\x69\x64\ +\x65\x61\x73\x0a\x61\x6e\x64\x0a\x69\x6d\x61\x67\x65\x73\x0a\x66\ +\x6c\x69\x63\x6b\x65\x72\x69\x6e\x67\x0a\x69\x6e\x0a\x61\x6e\x64\ +\x0a\x6f\x75\x74\x0a\ +" + +qt_resource_name = b"\ +\x00\x0a\ +\x0b\x0b\x17\xd9\ +\x00\x64\ +\x00\x69\x00\x63\x00\x74\x00\x69\x00\x6f\x00\x6e\x00\x61\x00\x72\x00\x79\ +\x00\x09\ +\x08\xb6\xa7\x34\ +\x00\x77\ +\x00\x6f\x00\x72\x00\x64\x00\x73\x00\x2e\x00\x74\x00\x78\x00\x74\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\ +\x00\x00\x00\x1a\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() diff --git a/examples/draganddrop/fridgemagnets/words.txt b/examples/draganddrop/fridgemagnets/words.txt new file mode 100644 index 0000000..a7e1632 --- /dev/null +++ b/examples/draganddrop/fridgemagnets/words.txt @@ -0,0 +1,48 @@ +Colorless +green +ideas +sleep +furiously +A +colorless +green +idea +is +a +new +untried +idea +that +is +without +vividness +dull +and +unexciting +To +sleep +furiously +may +seem +a +puzzling +turn +of +phrase +but +the +mind +in +sleep +often +indeed +moves +furiously +with +ideas +and +images +flickering +in +and +out diff --git a/examples/draganddrop/puzzle/example.jpg b/examples/draganddrop/puzzle/example.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e09fb7075700b457d90e845fef814158bc2641d1 GIT binary patch literal 42654 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 yahI3uL*Ebwe7#c}81|KIb!<{yy%oBuDuZzQ|` literal 0 HcmV?d00001 diff --git a/examples/draganddrop/puzzle/puzzle.py b/examples/draganddrop/puzzle/puzzle.py new file mode 100755 index 0000000..1a50cb8 --- /dev/null +++ b/examples/draganddrop/puzzle/puzzle.py @@ -0,0 +1,367 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import random + +from PyQt5.QtCore import (pyqtSignal, QByteArray, QDataStream, QIODevice, + QMimeData, QPoint, QRect, QSize, Qt) +from PyQt5.QtGui import QDrag, QColor, QCursor, QIcon, QPainter, QPixmap +from PyQt5.QtWidgets import (QApplication, QFileDialog, QFrame, QHBoxLayout, + QListView, QListWidget, QListWidgetItem, QMainWindow, QMessageBox, + QSizePolicy, QWidget) + +import puzzle_rc + + +class PuzzleWidget(QWidget): + + puzzleCompleted = pyqtSignal() + + def __init__(self, parent=None): + super(PuzzleWidget, self).__init__(parent) + + self.piecePixmaps = [] + self.pieceRects = [] + self.pieceLocations = [] + self.highlightedRect = QRect() + self.inPlace = 0 + + self.setAcceptDrops(True) + self.setMinimumSize(400, 400) + self.setMaximumSize(400, 400) + + def clear(self): + self.pieceLocations = [] + self.piecePixmaps = [] + self.pieceRects = [] + self.highlightedRect = QRect() + self.inPlace = 0 + self.update() + + def dragEnterEvent(self, event): + if event.mimeData().hasFormat('image/x-puzzle-piece'): + event.accept() + else: + event.ignore() + + def dragLeaveEvent(self, event): + updateRect = self.highlightedRect + self.highlightedRect = QRect() + self.update(updateRect) + event.accept() + + def dragMoveEvent(self, event): + updateRect = self.highlightedRect.united(self.targetSquare(event.pos())) + + if event.mimeData().hasFormat('image/x-puzzle-piece') and self.findPiece(self.targetSquare(event.pos())) == -1: + self.highlightedRect = self.targetSquare(event.pos()) + event.setDropAction(Qt.MoveAction) + event.accept() + else: + self.highlightedRect = QRect() + event.ignore() + + self.update(updateRect) + + def dropEvent(self, event): + if event.mimeData().hasFormat('image/x-puzzle-piece') and self.findPiece(self.targetSquare(event.pos())) == -1: + pieceData = event.mimeData().data('image/x-puzzle-piece') + dataStream = QDataStream(pieceData, QIODevice.ReadOnly) + square = self.targetSquare(event.pos()) + pixmap = QPixmap() + location = QPoint() + dataStream >> pixmap >> location + + self.pieceLocations.append(location) + self.piecePixmaps.append(pixmap) + self.pieceRects.append(square) + + self.hightlightedRect = QRect() + self.update(square) + + event.setDropAction(Qt.MoveAction) + event.accept() + + if location == QPoint(square.x() / 80, square.y() / 80): + self.inPlace += 1 + if self.inPlace == 25: + self.puzzleCompleted.emit() + else: + self.highlightedRect = QRect() + event.ignore() + + def findPiece(self, pieceRect): + try: + return self.pieceRects.index(pieceRect) + except ValueError: + return -1 + + def mousePressEvent(self, event): + square = self.targetSquare(event.pos()) + found = self.findPiece(square) + + if found == -1: + return + + location = self.pieceLocations[found] + pixmap = self.piecePixmaps[found] + del self.pieceLocations[found] + del self.piecePixmaps[found] + del self.pieceRects[found] + + if location == QPoint(square.x() / 80, square.y() / 80): + self.inPlace -= 1 + + self.update(square) + + itemData = QByteArray() + dataStream = QDataStream(itemData, QIODevice.WriteOnly) + + dataStream << pixmap << location + + mimeData = QMimeData() + mimeData.setData('image/x-puzzle-piece', itemData) + + drag = QDrag(self) + drag.setMimeData(mimeData) + drag.setHotSpot(event.pos() - square.topLeft()) + drag.setPixmap(pixmap) + + if drag.exec_(Qt.MoveAction) != Qt.MoveAction: + self.pieceLocations.insert(found, location) + self.piecePixmaps.insert(found, pixmap) + self.pieceRects.insert(found, square) + self.update(self.targetSquare(event.pos())) + + if location == QPoint(square.x() / 80, square.y() / 80): + self.inPlace += 1 + + def paintEvent(self, event): + painter = QPainter() + painter.begin(self) + painter.fillRect(event.rect(), Qt.white) + + if self.highlightedRect.isValid(): + painter.setBrush(QColor("#ffcccc")) + painter.setPen(Qt.NoPen) + painter.drawRect(self.highlightedRect.adjusted(0, 0, -1, -1)) + + for rect, pixmap in zip(self.pieceRects, self.piecePixmaps): + painter.drawPixmap(rect, pixmap) + + painter.end() + + def targetSquare(self, position): + return QRect(position.x() // 80 * 80, position.y() // 80 * 80, 80, 80) + + +class PiecesList(QListWidget): + def __init__(self, parent=None): + super(PiecesList, self).__init__(parent) + + self.setDragEnabled(True) + self.setViewMode(QListView.IconMode) + self.setIconSize(QSize(60, 60)) + self.setSpacing(10) + self.setAcceptDrops(True) + self.setDropIndicatorShown(True) + + def dragEnterEvent(self, event): + if event.mimeData().hasFormat('image/x-puzzle-piece'): + event.accept() + else: + event.ignore() + + def dragMoveEvent(self, event): + if event.mimeData().hasFormat('image/x-puzzle-piece'): + event.setDropAction(Qt.MoveAction) + event.accept() + else: + event.ignore() + + def dropEvent(self, event): + if event.mimeData().hasFormat('image/x-puzzle-piece'): + pieceData = event.mimeData().data('image/x-puzzle-piece') + dataStream = QDataStream(pieceData, QIODevice.ReadOnly) + pixmap = QPixmap() + location = QPoint() + dataStream >> pixmap >> location + + self.addPiece(pixmap, location) + + event.setDropAction(Qt.MoveAction) + event.accept() + else: + event.ignore() + + def addPiece(self, pixmap, location): + pieceItem = QListWidgetItem(self) + pieceItem.setIcon(QIcon(pixmap)) + pieceItem.setData(Qt.UserRole, pixmap) + pieceItem.setData(Qt.UserRole+1, location) + pieceItem.setFlags(Qt.ItemIsEnabled | Qt.ItemIsSelectable | Qt.ItemIsDragEnabled) + + def startDrag(self, supportedActions): + item = self.currentItem() + + itemData = QByteArray() + dataStream = QDataStream(itemData, QIODevice.WriteOnly) + pixmap = QPixmap(item.data(Qt.UserRole)) + location = item.data(Qt.UserRole+1) + + dataStream << pixmap << location + + mimeData = QMimeData() + mimeData.setData('image/x-puzzle-piece', itemData) + + drag = QDrag(self) + drag.setMimeData(mimeData) + drag.setHotSpot(QPoint(pixmap.width()/2, pixmap.height()/2)) + drag.setPixmap(pixmap) + + if drag.exec_(Qt.MoveAction) == Qt.MoveAction: + if self.currentItem() is not None: + self.takeItem(self.row(item)) + + +class MainWindow(QMainWindow): + def __init__(self, parent=None): + super(MainWindow, self).__init__(parent) + + self.puzzleImage = QPixmap() + + self.setupMenus() + self.setupWidgets() + + self.setSizePolicy(QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)) + self.setWindowTitle("Puzzle") + + def openImage(self, path=None): + if not path: + path, _ = QFileDialog.getOpenFileName(self, "Open Image", '', + "Image Files (*.png *.jpg *.bmp)") + + if path: + newImage = QPixmap() + if not newImage.load(path): + QMessageBox.warning(self, "Open Image", + "The image file could not be loaded.", + QMessageBox.Cancel) + return + + self.puzzleImage = newImage + self.setupPuzzle() + + def setCompleted(self): + QMessageBox.information(self, "Puzzle Completed", + "Congratulations! You have completed the puzzle!\nClick OK " + "to start again.", + QMessageBox.Ok) + + self.setupPuzzle() + + def setupPuzzle(self): + size = min(self.puzzleImage.width(), self.puzzleImage.height()) + self.puzzleImage = self.puzzleImage.copy( + (self.puzzleImage.width() - size)/2, + (self.puzzleImage.height() - size)/2, size, size).scaled(400, 400, Qt.IgnoreAspectRatio, Qt.SmoothTransformation) + + self.piecesList.clear() + + for y in range(5): + for x in range(5): + pieceImage = self.puzzleImage.copy(x*80, y*80, 80, 80) + self.piecesList.addPiece(pieceImage, QPoint(x,y)) + + random.seed(QCursor.pos().x() ^ QCursor.pos().y()) + + for i in range(self.piecesList.count()): + if random.random() < 0.5: + item = self.piecesList.takeItem(i) + self.piecesList.insertItem(0, item) + + self.puzzleWidget.clear() + + def setupMenus(self): + fileMenu = self.menuBar().addMenu("&File") + + openAction = fileMenu.addAction("&Open...") + openAction.setShortcut("Ctrl+O") + + exitAction = fileMenu.addAction("E&xit") + exitAction.setShortcut("Ctrl+Q") + + gameMenu = self.menuBar().addMenu("&Game") + + restartAction = gameMenu.addAction("&Restart") + + openAction.triggered.connect(self.openImage) + exitAction.triggered.connect(QApplication.instance().quit) + restartAction.triggered.connect(self.setupPuzzle) + + def setupWidgets(self): + frame = QFrame() + frameLayout = QHBoxLayout(frame) + + self.piecesList = PiecesList() + + self.puzzleWidget = PuzzleWidget() + + self.puzzleWidget.puzzleCompleted.connect(self.setCompleted, + Qt.QueuedConnection) + + frameLayout.addWidget(self.piecesList) + frameLayout.addWidget(self.puzzleWidget) + self.setCentralWidget(frame) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + window = MainWindow() + window.openImage(':/images/example.jpg') + window.show() + sys.exit(app.exec_()) diff --git a/examples/draganddrop/puzzle/puzzle.qrc b/examples/draganddrop/puzzle/puzzle.qrc new file mode 100644 index 0000000..4076cec --- /dev/null +++ b/examples/draganddrop/puzzle/puzzle.qrc @@ -0,0 +1,5 @@ + + + example.jpg + + diff --git a/examples/draganddrop/puzzle/puzzle_rc.py b/examples/draganddrop/puzzle/puzzle_rc.py new file mode 100644 index 0000000..a9a96c7 --- /dev/null +++ b/examples/draganddrop/puzzle/puzzle_rc.py @@ -0,0 +1,2706 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sat May 4 17:21:42 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\xa6\x9e\ +\xff\ +\xd8\xff\xe0\x00\x10\x4a\x46\x49\x46\x00\x01\x01\x01\x00\x48\x00\ +\x48\x00\x00\xff\xe1\x00\x16\x45\x78\x69\x66\x00\x00\x4d\x4d\x00\ +\x2a\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\xff\xdb\x00\x43\x00\ +\x05\x03\x04\x04\x04\x03\x05\x04\x04\x04\x05\x05\x05\x06\x07\x0c\ +\x08\x07\x07\x07\x07\x0f\x0b\x0b\x09\x0c\x11\x0f\x12\x12\x11\x0f\ +\x11\x11\x13\x16\x1c\x17\x13\x14\x1a\x15\x11\x11\x18\x21\x18\x1a\ +\x1d\x1d\x1f\x1f\x1f\x13\x17\x22\x24\x22\x1e\x24\x1c\x1e\x1f\x1e\ +\xff\xdb\x00\x43\x01\x05\x05\x05\x07\x06\x07\x0e\x08\x08\x0e\x1e\ +\x14\x11\x14\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\ +\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\ +\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\ +\x1e\x1e\x1e\x1e\x1e\xff\xc0\x00\x11\x08\x01\xa8\x01\xa8\x03\x01\ +\x22\x00\x02\x11\x01\x03\x11\x01\xff\xc4\x00\x1d\x00\x00\x01\x04\ +\x03\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x05\ +\x06\x07\x02\x03\x08\x01\x09\xff\xc4\x00\x54\x10\x00\x01\x03\x03\ +\x03\x02\x05\x01\x04\x06\x07\x01\x0d\x07\x02\x07\x01\x02\x03\x04\ +\x00\x05\x11\x06\x12\x21\x07\x31\x13\x22\x41\x51\x61\x71\x14\x32\ +\x81\x91\x08\x15\x23\x42\xa1\xb1\x16\x33\x52\x62\xc1\xd1\xf0\x24\ +\x34\x37\x43\x63\x72\x74\x75\x82\x92\xb3\xb4\xe1\xf1\x17\x36\x53\ +\x73\x94\xa2\xb2\x25\x93\x09\x44\x83\xa3\xc2\xd2\xe2\xff\xc4\x00\ +\x1b\x01\x00\x02\x03\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x03\x01\x02\x04\x05\x06\x07\xff\xc4\x00\x35\x11\x00\ +\x02\x01\x02\x04\x02\x07\x07\x04\x03\x01\x01\x00\x00\x00\x00\x00\ +\x01\x02\x03\x11\x04\x12\x21\x31\x13\x41\x05\x22\x51\x61\x71\xa1\ +\xf0\x14\x32\x81\x91\xc1\xd1\xe1\x15\x23\xb1\xf1\x42\x52\x62\x63\ +\x24\xff\xda\x00\x0c\x03\x01\x00\x02\x11\x03\x11\x00\x3f\x00\xec\ +\xba\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x2b\x15\x2d\ +\x29\xee\x69\x33\xf3\xd9\x68\x72\xb1\x50\xda\x5b\x80\xae\x8a\x62\ +\x9d\xa8\xe2\x45\x4e\xe7\x1d\x42\x13\xee\xa5\x00\x3f\x8d\x32\xcb\ +\xea\x36\x9f\x8f\xfd\x65\xea\xdc\x93\x9c\x63\xed\x08\x38\xfe\x34\ +\xa7\x88\xa6\xb9\x90\x9d\xf6\x26\xf4\x55\x7c\x7a\xa7\xa5\x87\x7d\ +\x41\x6c\x07\xfe\x70\x9a\xdf\x13\xa9\x5a\x6e\x49\x09\x6a\xfb\x6c\ +\x52\x89\xc6\xd1\x25\x19\xfe\x74\x7b\x44\x09\x27\x54\x53\x34\x5b\ +\xec\x67\xd2\x14\x1c\x49\x07\x90\x41\xc8\x3f\x8d\x2f\x66\x6b\x2e\ +\x76\x58\xab\xc6\xa4\x67\xb3\x22\xe2\xaa\x2b\x14\xad\x2a\xec\x6b\ +\x2a\xb9\x21\x45\x14\x50\x01\x45\x14\x50\x01\x45\x14\x50\x01\x45\ +\x14\x50\x01\x45\x14\x50\x01\x45\x14\x50\x01\x45\x14\x50\x01\x45\ +\x14\x50\x01\x45\x73\x86\xb2\xeb\x1e\xa8\xb8\xf5\x36\xef\xa7\x34\ +\xc4\xb6\xed\x36\xbb\x1b\xaa\x8f\x21\xef\x01\x0e\xbd\x21\xe4\xa8\ +\xa5\x43\xce\x0a\x52\x9c\x85\x0e\x06\x70\x33\x9e\x46\x15\xc5\xea\ +\x7e\xb2\x65\x7b\x9c\xb8\x35\x20\x7f\x65\xc8\xc8\x03\xff\x00\xb4\ +\x03\x5c\xbc\x4f\x4b\xe1\xf0\xf5\x38\x72\xbd\xfb\x8c\x32\xe9\x0a\ +\x4a\x4d\x6a\x74\x25\x15\x4b\x41\xeb\x1d\xd9\x18\xfb\x6d\xa2\x13\ +\xff\x00\xfc\xa5\xa9\xbf\xe7\xba\x9f\xa0\xf5\x8a\xca\xe0\x02\x65\ +\xb2\x7b\x07\xfe\x2c\xa5\xc0\x3f\x88\xfe\x55\x34\xfa\x63\x07\x3f\ +\xf3\xb7\x8d\xcb\xc7\x1b\x46\x5c\xcb\x2e\x8a\x89\x41\xea\x3e\x8f\ +\x97\x80\x2e\xc1\x85\x1f\xdd\x79\xa5\xa3\xf8\xe3\x1f\xc6\xa5\x31\ +\xde\x6a\x44\x76\xe4\x30\xe2\x5d\x65\xd4\x05\xa1\x69\x39\x0a\x49\ +\x19\x04\x1f\x6c\x56\xea\x55\xe9\x55\xf7\x24\x9f\x83\x34\x46\xa4\ +\x27\xee\xbb\x9b\x28\xa2\x8a\x69\x70\xa2\x8a\x28\x00\xa2\x8a\x28\ +\x00\xa2\x8a\x28\x00\xa2\x8a\x28\x00\xa2\x8a\x28\x00\xa2\x8a\x28\ +\x00\xa2\x8a\x28\x00\xa2\x8a\x28\x00\xa2\x82\x40\xa4\xb2\xa5\x21\ +\xa4\x92\x54\x05\x00\x6f\x5b\x89\x48\xe4\xd3\x65\xc6\xef\x1e\x2b\ +\x6a\x52\xdc\x4a\x42\x46\x49\x27\x00\x54\x1b\xa8\xbd\x4a\xb4\x69\ +\x98\xab\x54\x99\x29\x2e\x81\x90\xd8\x57\x3f\x8f\xb5\x72\xfe\xbc\ +\xea\x86\xa1\xd6\x4b\x5a\x23\xc8\xfb\x25\xb4\x28\x82\xbd\xdb\x1a\ +\x1f\xff\x00\xb1\xac\xb5\x71\x0a\x2b\x41\xb4\xa8\x4e\xab\xd3\x62\ +\xfc\xd7\xfd\x73\xd3\x3a\x7d\xb7\x52\x25\x89\x8f\x27\x23\xc3\x61\ +\x5c\x67\xfe\x57\xf9\x57\x3d\x6b\x3f\xd2\x3b\x56\x5d\x5e\x72\x3d\ +\x85\xb1\x11\xa3\x90\x3c\x24\xee\x5f\xe7\xc9\xfe\x55\x08\xfd\x59\ +\x09\x4e\xf8\xd3\x9c\x2f\xa9\x47\x71\x79\xc2\x4a\x4a\x7d\xd0\x81\ +\x82\xaf\xc7\x02\x9d\xed\xce\x6c\x7d\x30\xed\x16\xf8\xe9\x51\x48\ +\x52\x8a\x9b\x09\x18\xc7\x0a\x3e\xde\xfc\xd6\x47\x5a\xfa\xda\xfe\ +\x27\x42\x38\x18\x47\x72\x1d\x72\xbd\x75\x02\xf8\xe3\x92\x25\x49\ +\x9c\x42\xb9\x25\xc5\x12\x79\xfa\xf3\x4c\x32\xe0\xea\x1f\x15\x49\ +\x72\x44\x85\xb8\x39\x50\xdd\x8c\x55\xa1\x73\x2d\xcc\x94\xe1\x97\ +\x36\x44\xc5\x92\x30\x96\x13\xb5\x94\x28\x0c\x60\xa8\x77\xfc\x68\ +\x95\x0d\x05\xb5\xa1\x96\x5b\x0e\x60\x78\x8e\x78\x7e\x32\xd2\x3b\ +\x0d\xbb\xbc\xb9\xf8\xc2\xaa\x63\x8a\x90\xd7\x84\x8b\x5c\xfd\x79\ +\x15\x22\xa2\x5f\xd2\xb2\x82\xb7\xf7\x0e\xe0\x2b\x38\xad\x4e\x8b\ +\xcb\x07\x2e\x4b\x71\xb2\x39\xf3\x13\x56\x14\xcb\x5c\xb1\x19\xc5\ +\x38\xdb\xa5\xa6\x88\x23\xed\x6b\x28\x2a\xfa\x25\x38\x1f\xc2\xa1\ +\xf7\x24\xca\x48\x52\xa3\xda\x9b\x71\x09\xc9\xf1\x1a\x6b\x79\xfc\ +\x49\xcd\x69\x85\x77\x3e\x66\x5a\x98\x65\x05\x71\x5e\x98\xea\x3e\ +\xb1\xd3\x52\x03\xb6\xeb\xcc\xa6\xb6\x8e\x52\x97\x0e\x0f\xd4\x76\ +\x35\x73\x68\x5f\xd2\x96\xeb\x15\x48\x67\x51\xc3\x44\x94\x81\x8f\ +\x15\xaf\x22\xfe\xa7\xd0\xfe\x55\xce\xab\x44\xa7\x3f\x75\xc5\x83\ +\xe8\x40\xe0\xfc\x81\x5a\x3c\x05\x28\x12\x94\x20\x94\x9c\x29\x25\ +\x38\x50\x3e\xc6\x99\x28\x42\x7b\x99\x1c\x7b\x8f\xa4\x7d\x29\xea\ +\xee\x9e\xd6\x91\x3c\x5b\x5d\xc5\x2b\x71\x23\xcf\x1d\xd3\xb5\xd4\ +\x7e\x1e\xa3\xe4\x55\xa3\x06\xe6\xc4\x84\x8d\xab\x15\xf2\x62\xd3\ +\x32\xe9\x6a\x7d\x33\x6d\x8f\x3b\x15\xd6\xd5\x9d\xc8\x59\x49\x49\ +\x1f\x35\x7b\xf4\xb7\xf4\x95\xbe\x59\x5c\x6a\xdf\xaa\x5b\x54\xf8\ +\xe3\x00\x3f\x9c\x3a\x91\xf5\xec\x7f\x1f\xce\xa1\x67\x86\xda\xaf\ +\x32\x8e\x0d\x6c\x77\xfa\x56\x14\x38\x35\x95\x55\xfd\x38\xea\x75\ +\x83\x56\xc4\x43\xd6\x9b\x8b\x52\x38\xca\x9b\x27\x0e\x23\xea\x9e\ +\xf5\x62\xc5\x98\xdb\xa9\x04\x28\x1c\xd3\x61\x51\x4f\x62\x82\xba\ +\x2b\xc4\xa8\x1e\xd5\xed\x5c\x90\xa2\x8a\x28\x00\xa2\x8a\x28\x00\ +\xa2\x8a\x28\x00\xa2\x8a\x28\x00\xa2\x8a\x28\x00\xa2\x8a\x28\x03\ +\x88\xa1\x7f\xbf\x27\x51\x3f\xe9\xa9\x3f\xf8\x87\x6a\x67\xa2\xac\ +\x97\x2d\x65\xab\x5c\xb0\xda\x56\xd4\x76\xa1\xb4\x97\xae\x33\x5d\ +\x41\x5a\x58\x4a\xb3\xb1\x09\x48\x23\x72\xd5\x82\x46\x48\x00\x02\ +\x79\xed\x50\xc8\x5f\xef\xc9\xd4\x5f\xfa\x6a\x4f\xfe\x21\xda\xbe\ +\xbf\x45\x38\x81\x1a\x5b\x51\x5c\xd6\x8f\xdb\xcc\xbf\x3e\x82\xb2\ +\x39\x2d\xb4\x94\x21\x23\xe8\x30\xaf\xcc\xd7\x98\x8e\x12\x18\x9e\ +\x91\x9a\xa8\xae\x97\xe0\xf3\x98\x6a\x4a\xad\x6c\xaf\x6d\x4f\x17\ +\xa0\xf4\x3b\xb7\x77\x34\xb4\x3d\x51\x27\xfa\x42\xdb\x25\xdf\x09\ +\xe2\x93\xb8\x71\x9f\x28\x48\x07\x1e\xa0\x1c\x8c\xf3\x55\xc5\xce\ +\xd5\x3a\xdd\xac\xe0\x69\x59\x0d\x62\x74\xcb\x82\x21\xa4\x83\x94\ +\xa4\x28\x15\x78\x9f\x29\x09\x1b\xa8\x44\xc9\x09\xea\xfe\x96\xbb\ +\x20\xab\xed\x0e\x6a\x20\xd2\xd5\x9f\xdc\x78\x2d\x2b\x1f\x88\x35\ +\x6e\x5f\x7f\x57\xc1\xfd\x22\xb4\xf8\x91\x6c\x6e\x63\xf7\x6b\x5b\ +\xa2\x33\xeb\x5f\xfb\x89\xc8\xe1\xc2\xa7\x12\x92\x0e\x54\xb4\x38\ +\x10\x48\x23\x84\x8e\xf5\x34\xb0\x58\x6c\x6c\x23\x52\x31\xcb\xad\ +\x9a\x5c\xd1\xa1\x53\xa7\x5d\x5d\x2b\x59\xdb\xe0\x54\xfa\x96\xd2\ +\xed\x8e\xf9\x2a\xd4\xf3\xa8\x75\x71\xd4\x12\x56\x80\x40\x39\x00\ +\xff\x00\x8d\x74\x86\x8a\xff\x00\xdc\xdb\x27\xfd\x1f\x1f\xfe\xed\ +\x35\x4e\xf5\x96\xe7\x6f\x91\xa8\x25\x5b\x9a\xb3\x35\x1e\x64\x77\ +\x92\x5c\x9a\x97\x32\xa7\xc6\xce\xc5\x38\x18\xee\x3d\x4f\x6a\xb8\ +\xb4\x57\xfe\xe6\xd9\x3f\xe8\xf8\xff\x00\xf7\x69\xab\xf4\x4d\x28\ +\xd2\xc5\xd5\x84\x1d\xd2\xfb\xec\x3f\x05\x05\x0a\xd3\x8a\x1d\xe8\ +\xa2\x8a\xf4\x67\x50\x28\xa2\x8a\x00\x28\xa2\x8a\x00\x28\xa2\x8a\ +\x00\x28\xa2\x8a\x00\x28\xa2\x8a\x00\x28\xa2\x8a\x00\x28\xa2\x8a\ +\x00\x2b\x15\xa8\x24\x50\xb5\x84\x8c\xd3\x0e\xa0\xbd\x47\xb7\xc4\ +\x75\xf7\xde\x4b\x6d\xb6\x92\xa5\xa9\x47\x01\x20\x7a\x9a\x1b\x49\ +\x5d\x80\xa2\xef\x75\x66\x1b\x2a\x5b\x8e\x25\x21\x23\x24\x93\x80\ +\x05\x73\xef\x58\x7a\xe7\x06\xd4\xd3\x90\xac\xce\x99\x32\xd4\x76\ +\x25\x48\xe4\x0f\xa7\xf9\xd5\x67\xd7\x9e\xb6\xbd\x7a\x7d\xfb\x3d\ +\x85\xe5\x26\x30\x25\x25\x40\xe0\xb8\x7d\xcf\xc7\xc7\xe7\x5c\xff\ +\x00\x26\xe2\xec\xa5\xf8\x4d\x2d\x4b\x5a\xc1\x0e\xba\x4f\x27\xf1\ +\xf4\x1f\x1e\xbf\x4a\xc7\x52\x72\x93\xb1\xb2\x8e\x19\x7b\xd5\x3e\ +\x44\x9a\xf3\xa8\xaf\xda\x9a\xf6\xa5\xbc\xa3\x31\xe2\xb2\x50\xd2\ +\x95\x96\xd2\x3d\x49\xf4\xc0\xf5\x39\xa5\xb6\xb6\xdc\x72\x4b\x5e\ +\x1a\x05\xce\x43\x6a\xf0\xfc\x57\x13\xfb\x16\x95\xfd\x86\x9b\x1c\ +\x13\xf8\x7c\x9c\x0e\x6a\x2b\x6b\x79\x0b\x3f\x66\x8e\x4e\xc1\xca\ +\xd4\x14\x40\x5e\x3d\xc8\xf9\xf6\xfc\x39\xe6\x9f\x58\x9a\xb5\x25\ +\x21\x95\x06\xe3\xb2\x48\x71\xf4\x80\x0a\x8f\xab\x4d\x8e\xc0\x7a\ +\x9f\x4f\x55\x12\x6b\x1d\x48\xeb\xa9\xd5\xa4\xf4\xb4\x47\xf9\x0c\ +\xb6\xc3\x98\x91\x21\x72\x5c\x3b\x9c\x77\x68\xf2\xa4\x0f\x75\x0f\ +\xbd\xf4\x1c\x1f\x73\xda\x9a\xa7\xdc\xd2\x85\x15\xdc\xe6\xc5\xb7\ +\x30\xac\xa9\x4d\xaf\x97\x1e\xe3\x8d\xc8\x4f\x20\x7b\x02\x31\xf1\ +\x4f\x9a\x5b\xa7\xda\xe3\x5f\xa5\x0f\xdb\x63\x1b\x75\xa0\xf3\xf6\ +\xf9\x0b\x2d\xa5\xcc\x71\x94\x03\xe6\x57\xd7\x18\xe3\x8c\x0a\xb7\ +\xb4\x6f\x40\x74\x95\xad\x9c\xde\x19\x45\xe2\x6a\x80\x52\xe4\x3c\ +\x54\xbe\x7e\x01\x38\x03\xd7\x9a\x5a\x69\x6e\x5e\x7d\x5d\x9f\xaf\ +\x5e\x07\x3c\xc6\xd4\x53\x2e\x0e\x2a\x3d\x92\xdb\x74\xbb\xac\x79\ +\x50\x0e\xe6\xa3\xa4\x7b\xe1\x18\x51\xfc\x54\x3b\xd4\x92\xdf\xa2\ +\xfa\x9f\x7b\x86\xa7\x54\xf7\xea\xa6\x00\x4e\xe6\x63\xfe\xc7\x8e\ +\xc3\x71\xee\x4f\x3e\xa4\x9f\x7a\xea\xdb\x5e\x9a\xb6\x5b\xe3\x08\ +\xb0\x62\xb0\xcb\x09\x18\x21\x2d\xa5\x39\xf8\x24\x0a\x5e\xcd\x9e\ +\x32\x54\x14\x94\x0c\x01\xe5\x18\xe1\x3f\x41\xda\xac\xa4\xff\x00\ +\xc5\x5b\xcc\x53\xa9\x0f\xf2\xd7\xc9\x7a\xf8\x9c\x8f\xff\x00\xb1\ +\xdd\x4a\x94\x87\x5c\x98\xea\xc9\x5e\x00\x49\x59\xc7\xb2\x92\x73\ +\xc1\x1e\xc7\xbf\x15\xa9\xde\x96\xea\xa3\x35\x08\x4b\xc8\x44\x84\ +\x8c\x07\x50\x3c\x30\xbc\x7a\xab\xe4\xe4\x8e\x7b\xe2\xbb\x18\x45\ +\x6d\x2e\x15\x14\xa7\x80\x07\x22\xbc\x5c\x28\x0e\x0d\xaa\x6d\xa3\ +\x9e\xd9\x19\x1f\x91\xa2\xf5\x3f\xd8\x15\x5a\x7f\xe9\xfc\x9c\x87\ +\x0f\xa3\x77\xe9\x4a\x53\x6d\x86\xfc\x50\x77\x17\x0e\xed\xa3\x27\ +\x03\x91\xdf\xde\x9b\xb5\x1f\x4c\x2f\xd1\xe6\xbb\x1e\x54\x34\xf8\ +\x8d\x21\x4a\x0f\x25\x5c\x28\x63\x19\x3f\xc0\xd7\x65\x7d\x91\xb6\ +\x50\x52\xde\xdc\x7c\x0e\xd4\x96\x65\xbe\xdf\x29\x59\x93\x1d\x0e\ +\x12\x36\x92\x47\x04\x7c\xd5\x33\xd4\x5f\xe4\x4b\xa9\x4e\x5a\x38\ +\xe8\x70\x94\xbd\x33\x32\x24\x77\xb7\x36\xb5\x2d\x04\x04\x92\x9f\ +\x4e\x32\x3e\x79\xed\x4c\x13\x2d\x8e\x24\xa9\x21\xa2\x36\xf2\xb0\ +\x7f\x70\x73\xeb\x5d\xe9\x73\xd1\xf6\x29\xb9\x58\x8e\x86\xdc\xc1\ +\xf3\x84\x8c\x82\x7d\x73\x51\x7b\xd7\x49\x74\xfd\xc2\x21\x6f\xc3\ +\x0d\x9f\xed\x36\x90\x0e\x7e\xbf\xeb\xbd\x32\x38\xca\x91\xdd\x5c\ +\x54\xb0\xf4\x27\xb3\x68\xe3\x5d\x31\x7d\xbd\xe9\xa9\xad\xdc\xed\ +\x53\x1f\x8c\xeb\x6a\xe0\xa1\x44\x11\x5d\x41\xd1\xff\x00\xd2\x59\ +\xc9\x4f\xc7\xb4\xea\x86\x9b\x69\xd5\x00\x94\xca\x4f\x94\x28\xff\ +\x00\x78\x76\xfc\xb1\x50\x0d\x7f\xd1\x5b\x8d\xad\x97\x8d\xb5\x84\ +\xbd\x1c\x82\xaf\x10\xe4\xaf\xe3\x38\xaa\x66\xe3\x02\x6d\xb5\x4a\ +\x6a\x53\x2a\x65\x7b\xb0\x9e\x31\xdb\xe6\xb5\xc6\xb4\x2b\xad\x37\ +\xf3\x31\x55\xc2\x38\x6a\xf5\x5d\xa7\xd4\xfd\x2d\xa8\x63\xdc\xe3\ +\x21\x68\x71\x2a\xdc\x32\x30\x73\x9a\x92\xb6\xad\xc2\xb9\x17\xf4\ +\x56\xd6\x2e\x4b\xb0\x43\x87\x29\xf5\x19\x2c\x0f\x0d\x40\x9e\xe0\ +\x76\x3f\x95\x75\x6d\xaa\x40\x75\x94\x9c\xe7\x22\x9f\x86\xa8\xe7\ +\x16\xa5\xba\x30\xb4\xe2\xdc\x58\xbe\x8a\x28\xa7\x80\x51\x45\x14\ +\x00\x51\x45\x14\x00\x51\x45\x14\x00\x51\x45\x14\x00\x51\x45\x14\ +\x01\xc4\x50\xbf\xdf\x93\xa8\xbf\xf4\xd4\x9f\xfc\x43\xb5\x7d\xfe\ +\x8a\x72\xb7\xe9\x1d\x41\x01\x6a\xfd\xac\x4d\x41\x24\xed\x3e\x88\ +\x71\x28\x71\x27\xf1\xdc\x7f\x23\x54\x24\x2f\xf7\xe4\xea\x2f\xfd\ +\x35\x27\xff\x00\x10\xed\x4d\xf4\x06\xa3\x97\xa1\x75\x74\x9b\xdb\ +\x11\x9c\x9b\x6d\xb8\x32\x96\xee\x71\x1b\x50\x0e\x12\x8c\xec\x75\ +\xbc\xe0\x15\x00\x48\x29\x24\x64\x1e\xf9\x15\xe6\x69\xe2\xa1\x43\ +\xa4\xa7\x9d\xd9\x3f\xc1\xe7\x70\xb5\x55\x2a\xf9\x9e\xda\x89\xcc\ +\x77\x93\xd5\x8d\x2b\x01\x39\xf1\x91\xa9\x5b\x2a\x4f\xf7\x5b\xde\ +\x55\xf9\x62\xad\x5d\x66\xfa\x15\xfa\x4c\xe8\x18\xe3\x1b\x9b\xb6\ +\xdc\x14\xae\x7f\xb4\xdf\xff\x00\xf3\x4e\x70\xa1\x68\x79\x85\x8e\ +\xb0\xdb\xa1\x4b\x9c\xe2\xa2\xa9\xd8\xde\x18\x3e\x5d\xfe\x55\xa8\ +\x37\xc0\x0b\x3c\x85\x13\xd8\x66\xaa\x6b\x9e\xa2\xb8\xbf\xd4\xd8\ +\x3a\xe5\x09\x42\x66\x41\x75\x61\x31\x9c\xc9\x42\x99\x5a\x3c\x35\ +\x37\x9e\xe0\xed\xc6\x15\xee\x33\x83\xda\x9f\x1a\x94\xfa\x36\x30\ +\xa5\x51\xee\xef\xf0\x34\xe9\x86\x8a\x4d\xde\xed\x3f\x80\xbf\xaa\ +\xff\x00\xef\x85\x76\xff\x00\xe6\x27\xff\x00\xc1\x35\x7c\xe8\xaf\ +\xfd\xcd\xb2\x7f\xd1\xf1\xff\x00\xee\xd3\x54\x46\xba\xd5\x16\xed\ +\x4a\xb4\xc9\x63\x4e\xc6\xb7\xcd\x5a\x92\xb9\x12\x42\xc2\xdc\x73\ +\x09\xc0\x4e\xed\xa0\xed\x1f\xe1\xda\xaf\x7d\x15\xff\x00\xb9\xb6\ +\x4f\xfa\x3e\x3f\xfd\xda\x69\x7d\x14\xe1\x2c\x5d\x59\x42\x57\x4f\ +\x5f\x9b\x1b\x83\x71\x75\xa6\xe2\xee\x98\xef\x45\x14\x57\xa3\x3a\ +\x81\x45\x14\x50\x01\x45\x14\x50\x01\x45\x14\x50\x01\x45\x14\x50\ +\x01\x45\x14\x50\x01\x45\x14\x50\x01\x58\xb8\xa0\x91\x9a\xc8\x9c\ +\x0c\xd3\x5d\xde\x62\x58\x69\x44\x9a\x00\x43\xa9\x6f\x71\xad\x90\ +\x5e\x93\x25\xf4\x32\xd3\x48\x2a\x5a\xd4\x70\x12\x07\xad\x70\xef\ +\x5f\xfa\xd5\x37\x53\x5c\xdd\xb4\xd9\xde\x5b\x76\xd6\xd7\x81\xb4\ +\xff\x00\x5a\x7d\xcf\xbf\xf8\x54\x8b\xf4\xbb\xea\x7b\xcf\xcb\xfe\ +\x89\x5a\x65\x1d\x88\x39\x98\xa4\x1f\xde\xfe\xc9\xf8\x1f\xcc\xfc\ +\x57\x2d\x38\xe1\x5e\x48\x59\x28\x07\xef\x9e\xea\x3f\xe5\x4a\x6d\ +\xcb\x51\x94\xd2\x5d\x66\x2e\x9d\x25\x4e\xba\xb4\xa9\xce\xff\x00\ +\xd6\x63\x93\xf4\xa4\x65\xe2\xf1\x11\xd8\x18\x1c\xef\x56\x71\x91\ +\xf2\x7d\xbf\x9d\x27\x2a\x5b\x9e\x44\x79\x53\xeb\x4a\xed\xd1\x5f\ +\x98\xfb\x50\xe1\xb2\xe3\xae\xba\xb0\x94\xa1\x09\xdc\xa5\xab\xe9\ +\x51\x95\x41\x5d\x8d\x52\x95\x59\x59\x7a\xee\x1d\x60\xb8\x86\x98\ +\x53\x49\x71\x61\xa3\x80\xa0\x84\xf9\xdd\x3e\x80\x7b\x7b\x01\x5d\ +\x1d\xd1\x7e\x8c\x49\x75\x11\xb5\x0e\xb5\x8e\x94\x24\x25\x2a\x85\ +\x68\x71\x3e\x54\x27\xba\x4b\xa3\xf8\xec\xfc\x4d\x3b\xf4\x1f\xa3\ +\x90\xb4\xc4\x78\xb7\xdd\x47\x19\x32\xef\x65\x21\xc6\x18\x58\x05\ +\x11\x09\xf5\xc7\xef\x2f\xe4\xf6\xf4\xab\xb1\x5b\xce\xe5\xac\xa8\ +\x1c\xe4\x93\xeb\x5c\xba\xb5\x54\xde\x9b\x1d\x88\x5e\x94\x72\xad\ +\xff\x00\x83\xd8\xed\x04\x27\x03\x69\x38\xc7\x09\x09\x48\x00\x60\ +\x00\x3d\x00\xa5\x71\xd8\x0b\xe3\x97\x08\xe0\xe0\x7f\x0c\xd6\x29\ +\x42\x36\x6f\x70\x1c\x1c\x61\x03\xbf\xe3\x4b\x59\x5c\x82\x9d\xad\ +\xa0\x32\x9f\xe3\x55\x8a\x11\x26\x2a\x62\x02\x8a\x7c\xe9\x43\x69\ +\xfe\x35\xea\x9b\x82\x8e\x14\xe0\x51\xad\x68\x61\xc7\x55\xe6\x5a\ +\x96\x47\xb9\xed\x5b\x5b\x80\x08\xc9\xc1\x1d\xfb\xd3\x92\xec\x42\ +\x76\xdd\x98\x20\x42\xc7\x2b\x03\xf0\xcd\x6a\x75\x8b\x7a\xff\x00\ +\xe1\x07\xce\x07\xf1\xa7\x06\xe3\x36\x8c\x27\x18\xc7\x7c\xf7\xac\ +\x84\x66\x72\x41\x03\x8f\x8c\x54\xb8\xb6\x82\xe3\x42\x99\x86\x01\ +\x01\xdc\xfb\xf3\x5a\x5d\x6d\xa2\x0e\xd1\xba\x9e\xdc\x8b\x1b\x61\ +\x3e\x51\x8e\x7b\xd2\x65\x47\x61\x00\xed\x52\x47\xe3\x4b\x94\x4b\ +\x29\x0c\xcb\x65\xac\x02\xa6\x17\x9f\x42\x38\xa4\xab\x8e\x82\xbd\ +\xac\xad\x48\x57\x38\x0b\xe2\x9f\xd6\xc3\x7d\x82\xc2\x49\xe7\x93\ +\x9a\x45\x2e\x39\xd8\x72\x90\xa0\x79\xc6\x29\x72\x80\xc5\x21\x96\ +\x43\x44\x20\xb6\xea\x76\xa8\x8c\x13\x8e\x08\xaa\xbb\xab\x3d\x35\ +\xb5\x6a\x48\x0f\xb8\xd3\x49\x8b\x3d\x00\x29\x0a\x1c\x03\x8f\xa5\ +\x5b\x2a\x52\x9a\x05\xb2\x0a\xdb\xfe\xca\x8f\x3f\x81\xa4\x17\x08\ +\xe8\x75\x1e\x4e\x47\x3b\x4f\xaa\x7e\x0d\x21\xe8\xf4\x1a\x9b\x5b\ +\x1c\xc1\xd1\xb7\x17\xa5\xf5\x93\xb6\x7b\x92\x8c\x79\x28\x21\x0d\ +\xa9\x47\x09\x74\x64\x91\xf8\xd7\x6c\xe8\x8b\x88\x93\x05\xa3\xbb\ +\x9c\x73\x5c\xa7\xd7\x8d\x28\xb9\x50\x13\x77\x84\x16\x89\x71\x32\ +\x49\x47\x7c\x03\xc6\x7d\xf1\xcd\x4d\xbf\x45\xce\xa0\xbf\x7d\xb4\ +\x88\x97\x27\xf3\x3a\x2e\x10\xe1\x3d\xd6\x3d\x15\x5d\x2c\x35\x48\ +\xc3\xaf\xdb\xb9\xc9\xc5\xd3\xb4\xb3\x9d\x4c\x85\x65\x35\x95\x22\ +\xb7\xc8\x0e\xb4\x08\x39\xc8\xa5\xb5\xd2\x33\x05\x14\x51\x40\x05\ +\x14\x51\x40\x05\x14\x51\x40\x05\x14\x51\x40\x05\x14\x51\x40\x1c\ +\x4b\x19\xb5\xb7\xd6\x6e\xa2\x25\xc4\x29\x04\xde\x64\x28\x05\x0c\ +\x70\x5f\x74\x83\xf8\x82\x0f\xe3\x52\x2a\xe9\x7b\xbe\x88\xd2\xb7\ +\x6b\xda\xaf\x57\x0b\x2b\x0f\x5c\x16\xda\x5a\x5b\xdb\x94\x92\xb4\ +\xa7\x3b\x42\x80\x20\x2b\x19\xee\x73\xc7\x14\xba\x06\x9e\xb1\x41\ +\xc7\xd8\xec\xf0\x19\x23\xf7\x92\xc2\x77\x7e\x78\xcd\x79\xcc\x5f\ +\x42\xd4\xc4\x57\x95\x4c\xc9\x26\x71\xff\x00\x4c\x9b\x93\xeb\x68\ +\x50\x9d\x2d\xbc\xea\xbd\x2d\x09\x76\xcd\x3f\x09\xeb\x8d\xad\x6e\ +\xad\xd6\xe2\x2e\x32\xdc\x0c\x29\x44\x95\x06\xd4\x9c\x10\x92\xa3\ +\x9c\x1c\x8c\x93\x8c\x66\xb7\x9d\x0b\xac\xef\x13\xdf\x9a\xab\x2a\ +\x98\x32\x1d\x53\x8b\xf1\x16\x96\xc2\x4a\x89\x27\x85\x1c\xe3\x9a\ +\xe8\x7c\x51\x5a\x5f\x43\xf1\x22\xa3\x5a\xab\x92\x5e\x0b\xee\x68\ +\x58\x04\xe2\xa3\x39\x36\x91\x4a\x59\xfa\x41\x77\x72\x43\x6a\xba\ +\xcf\x88\xc3\x19\x05\xc4\xb2\xa2\xb7\x31\xea\x06\x40\x00\xfc\xf3\ +\x57\x3c\x56\x1a\x8b\x19\xa8\xcc\x20\x21\xa6\x90\x10\x84\x8f\x44\ +\x81\x80\x2b\x65\x15\xbb\x09\x81\xa3\x84\x4f\x86\xb7\x34\xd1\xc3\ +\xc2\x8f\xba\x14\x51\x45\x6c\x1e\x14\x51\x45\x00\x14\x51\x45\x00\ +\x14\x51\x45\x00\x14\x51\x45\x00\x14\x51\x45\x00\x14\x51\x41\xed\ +\x40\x1a\x64\xb8\x10\x82\x73\x54\xe7\x5e\xb5\xba\x74\xbe\x91\x9d\ +\x3d\x0b\x1f\x68\xdb\xe1\xc7\x4f\xbb\x87\xb7\xe5\xdf\xf0\xab\x3e\ +\xff\x00\x28\x33\x1d\x64\x9e\xc2\xb8\x63\xf4\xc3\xd6\x4b\x99\x7e\ +\x6a\xc6\xc2\xce\xd8\x83\x2b\x19\xe0\xad\x5c\xff\x00\x01\x8a\x5d\ +\x57\xb4\x49\x8c\x73\x4a\xcc\xa1\xaf\xf7\x17\xee\x57\x07\xdf\x7d\ +\xd5\x2d\x6e\x28\xad\xe5\xa9\x59\x2a\x24\xe7\x14\xd5\xcb\x87\xbe\ +\xd4\x0f\x5a\xcf\x03\x1e\x62\x08\x1c\xa8\xfb\x9a\x5f\x68\xb4\x4d\ +\xba\x5d\x22\xdb\xd8\x6c\x87\x1f\x52\x52\x06\x39\x4a\x54\x47\x9b\ +\x1f\x43\x9a\x9b\xa8\xab\xb2\xee\xf3\x7a\x1a\xad\x30\x24\xdc\xe7\ +\x35\x02\x0b\x0b\x79\xe7\x94\x12\x86\xd0\x39\x51\xae\xbb\xe8\x2f\ +\x4c\x2d\xda\x46\x0b\x77\x6b\x93\x2d\xc9\xbe\x38\x8c\xee\x23\x72\ +\x63\x02\x3b\x27\xe7\xe6\xab\x7e\x94\x69\x64\xdb\x2e\x69\xf0\xda\ +\x58\x25\xe2\xca\x1f\x18\x25\x48\xc9\x19\xcf\xf7\xb1\xc9\x1e\x99\ +\xc5\x74\xbd\x81\x29\x6d\x01\xa0\x41\x09\x01\x28\x00\x76\x03\xd3\ +\xe6\xb8\xf8\xac\x43\xa9\x53\x22\xd9\x1d\xbc\x3d\x0e\x05\x2c\xdf\ +\xe4\xfc\x90\xe9\x17\x7b\x7e\x6f\xde\x23\x72\xb3\xef\x4a\xdb\xdc\ +\xa3\xb8\x8e\x7d\x0f\xb5\x68\x27\x19\xdd\xd8\x9e\x00\xf5\xa5\x31\ +\xb0\x52\x37\x77\xec\x71\x54\x48\xab\x62\x96\x93\x80\x0a\xb3\xf8\ +\x73\x4a\xd9\x51\x24\x81\x80\x33\xdc\xd6\x90\xe2\x11\x8c\x10\x93\ +\x8c\x01\x58\x3f\x71\x83\x17\xc8\xe3\xa9\x2b\x03\x24\x67\xb7\xd6\ +\x98\xa2\x29\xdf\xb0\x71\x68\xa9\x59\x05\xc5\x76\xe7\x06\xb7\x15\ +\x38\x94\xf0\xb7\x30\x3d\xd5\x4c\xc9\xbd\xc6\x43\x49\x77\x7a\x58\ +\x4a\xf2\x12\x56\xa4\xa7\x77\xd3\x3e\x9f\x35\x9b\x77\x48\x4f\x63\ +\xc2\xb8\x47\x77\x71\xc1\x28\x90\x0f\x3e\xdc\x1e\x7e\x95\x74\x43\ +\x84\xbb\x07\x15\x2d\x47\x95\x1c\x8f\x92\x6b\x15\x2c\x2b\x92\x47\ +\xe3\x5a\x54\xb5\x1e\x12\xb5\x29\x20\x8f\x29\xf4\xf9\xad\x98\xe3\ +\xb8\x3e\xf8\xa9\xd4\x8b\x02\x9b\x4a\xb9\x3c\x67\x8c\x56\xa2\x10\ +\x14\x46\x33\x8a\xcc\xa4\x02\x40\x04\x7f\x8d\x01\x04\x05\x64\x10\ +\x31\xeb\xcd\x55\xa2\xcb\x43\x4a\x92\x7b\x14\x12\x0f\x6e\x2b\x5b\ +\x9e\x22\x06\x52\x4a\x7e\x94\x92\xf7\x72\x8b\x05\x4d\xb2\xe3\xe8\ +\xf1\x94\x37\x10\x55\xf7\x52\x06\x49\x3e\xc3\xe6\xab\xfb\xc7\x5a\ +\x34\x55\xba\x77\xd8\x8d\xee\x33\xae\x83\x8d\xcd\xab\x2d\x9c\x77\ +\xe7\xb1\x3f\x4c\xd2\x65\x24\x98\xd8\xd3\x94\xb6\x44\xf9\xf5\x13\ +\xe5\x71\x00\xfc\x8a\x6f\x79\x18\x3b\x90\xa3\xf2\x3d\xe9\xb6\x26\ +\xb5\xb2\x4e\x4b\x65\xb9\x0d\xa9\x2e\x63\x0b\x6d\xc0\xe2\x4e\x7b\ +\x64\xa7\xb1\xfa\xd3\xa9\x53\x4b\x48\x52\x16\x30\xa1\xc0\x1e\xbe\ +\xd4\xa7\x69\x6c\x5d\xc6\x51\xdd\x0c\x77\xc8\x2d\xca\x8a\xe2\x1c\ +\x40\x29\x5a\x70\x7d\xf9\xae\x6c\x4c\xf9\x3d\x2e\xea\x4b\xae\xad\ +\x0b\x30\x5e\x7b\x7a\xb6\x76\x29\x27\x9f\xc7\x06\xba\x8d\xf0\x52\ +\xe8\x41\xfb\xa7\x3c\xd5\x1f\xd7\xdb\x2b\x52\x65\xc6\x75\x4d\x05\ +\x78\x8a\x28\x73\x9f\xbb\xc7\x7f\xaf\x22\x99\x4e\xa6\x4d\xf6\x17\ +\x2a\x0a\xad\xe2\xce\xa4\xd0\x37\xe8\xf7\x2b\x73\x0f\x32\xf2\x5c\ +\x6d\xc4\x05\xa1\x60\xf0\xa4\x91\x90\x6a\x72\xca\xb7\x24\x57\x24\ +\x7e\x8b\x5a\xad\xdf\xd4\xe2\xc3\x35\x64\x49\xb6\xaf\xc1\x04\xf1\ +\xbd\xb2\x72\x93\x8f\xe1\x5d\x51\x68\x90\x1e\x61\x24\x1f\x4a\xec\ +\xe1\xe6\xe5\x1b\x3d\xd1\xc2\xb3\x8b\x71\x63\x95\x14\x51\x4e\x24\ +\x28\xa2\x8a\x00\x28\xa2\x8a\x00\x28\xad\x52\xe4\xb1\x12\x33\x92\ +\x64\xba\x96\x99\x6c\x65\x6b\x51\xe0\x0a\xac\x75\x96\xbb\xbe\x39\ +\x6f\x79\xeb\x23\x48\xb6\x43\x1c\x22\x64\x84\x6e\x5b\x9f\x29\x49\ +\xe0\x7e\x39\xab\xd3\xa7\x2a\x8e\xc8\x55\x5a\xd1\xa4\xaf\x22\xd3\ +\xa2\xb9\xd7\x4f\x1d\x59\x76\x2e\x4a\x9b\xac\x2f\xc1\xb0\x09\xcb\ +\x52\xd4\xd0\x3f\x20\x0e\x31\x4d\x37\x39\xda\xa1\x89\x6b\x42\x35\ +\x56\xa4\xf0\xd2\x78\x3f\xac\x9c\xc9\x1f\x9d\x69\xf6\x29\xf6\x99\ +\x3d\xbd\x7f\xa9\xd4\x14\x57\x34\xe9\xd9\xf7\xa9\x97\x86\x58\x91\ +\xac\x35\x12\x59\x2a\xc1\x3f\xac\x5c\xe7\xdf\xd6\xae\xd8\x9a\x79\ +\x2a\x88\x87\x06\xa3\xd4\x0a\x04\x72\x4c\xdc\xff\x00\x85\x2e\xae\ +\x1e\x54\xd2\x6c\x75\x2c\x57\x11\xb4\x91\x29\xa2\xaa\x8b\x83\x53\ +\x44\xf7\x3c\x2d\x49\x7d\x4b\x69\x38\xc0\x98\xaa\x7e\xd2\xf6\x49\ +\x92\x62\x97\xe4\xea\x1b\xea\x82\xbe\xee\x66\x1f\xf1\x15\x33\xc3\ +\x4a\x11\xcc\xd9\x58\x62\xf3\xcb\x2a\x44\xe6\x8a\x80\x6a\x06\x1c\ +\x88\x97\x16\xdd\xf6\xf4\x94\xa0\x77\xfb\x59\xff\x00\x2a\xae\x9e\ +\xbb\x5e\xfe\xd2\x42\x75\x25\xe4\x05\x13\x8f\xf6\xd5\xe3\xf9\xd5\ +\xa1\x83\x9c\x95\xc8\x96\x36\x31\x76\xb1\xd0\x94\x55\x61\xa5\xde\ +\x97\x2e\x33\x6b\x7e\xf7\x76\x52\x87\x0a\xff\x00\x6a\x3c\xfe\x75\ +\x2c\x9b\x68\x71\x50\x8b\xac\xde\x2e\xc1\x5b\x72\x31\x2b\xff\x00\ +\x2a\x5c\xf0\xf2\x83\x49\xf3\x2f\x0c\x4a\x9a\x6d\x2d\x89\x1d\x15\ +\x59\xe6\xe2\x87\x0a\x55\x79\xba\x1d\xa7\x9f\xf6\xa5\x76\xa9\x6d\ +\xb6\x1f\xda\x21\x87\x8d\xd2\xe3\x9c\x73\xfe\xd1\xff\x00\x95\x4d\ +\x5c\x34\xa9\xab\xb0\xa5\x8a\x55\x1d\x92\x1f\xe8\xaa\xa3\x53\xdd\ +\x27\x31\x70\x5a\x62\x5d\x2e\x49\x43\x67\x07\x32\x54\x3f\x95\x37\ +\x45\xbb\x5d\x5e\x20\xae\xf5\x71\x47\xc7\xda\x57\xcf\xf1\xa6\x2c\ +\x14\xda\x16\xf1\xd1\x4f\x62\xe8\xa2\xab\x58\xf3\xe4\x48\x8b\xe1\ +\xa6\xef\x3c\x3a\x07\x72\xfa\xbb\xfe\x74\xa7\x4a\x1b\xdc\x9b\x83\ +\x8c\xc9\x9f\x2c\xb4\x93\xc1\x2f\xa8\xff\x00\x3a\x89\x60\xe5\x15\ +\x76\xc9\x8e\x32\x32\x76\x48\xb0\x68\xa4\x29\x85\xb5\x24\xaa\x64\ +\xb3\xf3\xe2\x9a\x4d\x38\x21\xa8\xee\x2d\x13\xa4\x05\x01\xdb\xc5\ +\xac\xf1\x83\x93\xb2\x34\xca\x79\x55\xd8\xef\x45\x42\xdd\xb9\xbc\ +\xc3\x1e\x22\xe5\xc8\x23\x1f\xfc\x43\x4d\x92\x6f\xb7\x42\x3f\x64\ +\xf3\xa0\x13\x80\x4b\x87\xfc\xeb\x4f\xb1\x4c\xcd\xed\xb0\xec\x2c\ +\x7a\xc5\xc3\x84\x13\x50\x2b\x55\xfa\x73\x8b\xf0\xdf\x79\xcd\xde\ +\x87\x79\xff\x00\x3a\x58\xfd\xe5\xf6\x9a\x59\x71\xd7\x31\x8e\x3c\ +\xc6\x8f\x62\x99\x2b\x1b\x06\x27\xd7\x92\xd4\xdc\x45\x84\x9e\x4f\ +\x15\xf3\x6b\xab\xd7\x73\x7a\xd7\xd7\x69\x7b\xf7\x03\x21\x49\x4a\ +\xbb\x8d\xa0\xe3\x3f\xca\xba\xf7\xaf\x9a\xe5\xdb\x56\x91\xb9\x4b\ +\x4c\x85\x25\xdf\x0c\xb2\xc8\xdc\x72\x5c\x5f\x03\xd7\xd0\x64\xfe\ +\x15\xc3\xaf\x87\x97\x20\x4b\xdb\xbd\x0f\xa8\x80\x49\xc8\xcf\xa8\ +\x3f\x35\x8e\xad\x2c\x95\x1b\x6c\xd3\x42\xa7\x11\x36\x8c\x18\x52\ +\x1b\x21\xc5\x24\x2b\x61\xc2\x10\x7b\x13\xee\x6a\x61\xa1\xae\x2c\ +\x5a\x1c\x17\x45\xbb\x99\x8f\x3d\xb5\x2b\x03\x2a\x4b\x7f\xbe\xad\ +\xa7\x83\x9c\xf0\x3d\x93\xf3\x51\x34\xb6\xcb\xee\x14\xa1\xf4\x32\ +\x94\x8e\x03\xb9\x1f\x91\xff\x00\x3a\xc9\x69\x58\x90\x19\x6d\x7e\ +\x65\x00\x84\xed\x3b\x89\xf4\xc0\xc7\x72\x69\x53\x8e\x65\x63\x4d\ +\x39\xe4\x95\xce\x83\xe9\xee\xa8\xb6\xb8\xd4\xdb\xf5\xc2\x5a\x21\ +\x5a\xad\x8a\x6e\x34\x72\xf2\x82\x40\x51\xc8\x03\x8f\xbc\x48\xce\ +\x71\xee\x6a\xc4\xb1\xf5\x8b\xa6\x71\x62\xa9\x52\xf5\x8c\x64\x3a\ +\x15\xb4\x6c\x8c\xf2\xbc\xb8\xf8\x4f\xd6\xb9\xf3\xa9\x5a\x7d\xfb\ +\x1f\x49\xed\x4c\xc8\x88\x62\xbe\x2e\x29\x53\xac\xf7\x53\x41\x4d\ +\x28\xa4\x2c\xff\x00\x68\xe1\x5c\x7a\x57\x48\x69\x1d\x29\xa6\x62\ +\x74\x6b\x4e\x6a\x18\xbd\x28\xd1\xd3\xdf\x7e\xd5\x1d\xc5\xbd\x36\ +\x0f\x8c\x5c\x5a\xb0\x92\xb5\x12\x73\xc9\xe4\xfd\x6b\x9b\x43\x0b\ +\x4e\xbd\xea\xa7\xa5\xdf\x91\xd5\xaf\x8a\x94\x1a\xa7\x65\xcb\xcc\ +\xcd\x5d\x79\xe9\x0a\x48\x49\xd5\xce\x10\x3d\x45\xb6\x41\xff\x00\ +\xfc\x2b\x79\xeb\xff\x00\x48\x1b\x69\x45\xad\x58\xb5\xab\x19\x03\ +\xf5\x74\x80\x4e\x3e\xa8\xa5\x6b\xd3\x37\x35\x46\x2f\xda\xf4\x27\ +\x4d\x59\x69\x20\x95\x3c\x34\xe3\x4d\x47\x4e\x3f\xe3\x5c\xe0\xfe\ +\x15\x86\x97\xd0\xda\x9f\x53\x3b\x23\x68\xe8\xaa\x9b\x8a\x52\x99\ +\x28\x89\x61\x6a\x62\x9a\x2a\xe4\x05\x10\x84\xa7\x3c\x1e\xc4\xd3\ +\x61\x4a\x93\xf7\x5b\x7e\xbc\x05\xca\x53\x4a\xf2\xb2\x21\xd3\xfa\ +\xf5\xa6\xee\x61\x5f\x65\xbc\x46\x8c\x8e\x4b\x2d\xa9\x45\x0a\x20\ +\x76\xdc\x48\xc0\xcf\xe3\x50\xcd\x4d\xd6\x18\xec\xc4\x6a\x05\xaf\ +\xec\xf2\x64\x2d\xb2\xe2\x9d\x66\x56\x52\xda\x8f\x60\x55\xce\x4f\ +\xae\x33\xf9\x57\x4c\xb5\xd0\x2d\x2c\xfc\x4f\xff\x00\x54\xb5\x69\ +\x29\x2f\x9e\xea\x8d\xa6\x58\x61\x39\xfa\x24\xe7\xf8\xd4\x23\x58\ +\xfe\x8d\xbd\x3d\x5b\x6e\x97\x63\xdb\xad\xce\xf0\x12\xe2\x61\x48\ +\x61\xbc\xfc\x14\xbc\xa4\xe7\xf0\xa1\x61\x23\x7b\xca\xfe\x45\xbd\ +\xbe\xcb\x2c\x2d\xf0\xbf\xd4\xe5\xe8\x53\xb5\x05\xea\x43\x92\x25\ +\xdd\xe6\xbc\xf3\xca\x09\x05\x2a\x5b\x99\x04\xf3\x84\x0e\x00\xfe\ +\x35\x25\xd2\x36\x1b\xba\x56\xb5\xe9\xe7\xe7\xb5\x21\x0a\x53\xae\ +\x34\x14\x42\xde\x4a\x78\x56\x10\x7b\xfd\x47\x20\xf7\x15\x36\x97\ +\xfa\x39\x39\x6e\x7c\x48\xd2\xba\xb9\xb4\x38\x9f\x30\x4c\x5b\xb8\ +\x6d\x60\xfc\x25\xc4\xa7\x3f\xf6\xab\x28\xed\xf5\x8f\x42\x38\x5d\ +\x9a\x21\xdf\xdb\x53\x9b\xdb\x17\x38\x25\x2e\x03\xee\xdb\xec\x92\ +\x77\x1e\x7b\x92\x3e\x2a\xb3\x84\x6f\xd5\x92\xfe\x0d\x74\x71\x6d\ +\x25\x78\xb6\xfe\x7f\x92\xe6\xe8\xfb\xd7\x35\xd8\x76\xc8\x9a\xf4\ +\xa6\xd2\x94\xad\x92\xf8\xc2\xdb\x1f\xbc\x09\x3d\xfb\x76\xf7\xc1\ +\xf5\xa9\xf4\x37\x1a\x70\x16\xf2\x0a\x81\xc0\xf9\xaa\x3f\x44\xf5\ +\xb7\x4a\x39\x31\xb6\x75\x3c\x59\xfa\x3e\x72\xbf\x64\xf3\xd2\x71\ +\x22\x13\x85\x59\x00\x17\x50\x3c\x8a\xcf\x3e\x64\x8e\xc3\x35\x7a\ +\xe9\x8f\xb2\xcc\xb6\x36\xfc\x07\xa3\x4d\x88\xb4\xe5\xa7\xe2\xba\ +\x97\x5a\x23\xe1\x49\x24\x1a\xbc\x69\xb8\xa4\x99\x92\xb5\x45\x29\ +\x39\x02\xdb\x59\xce\xd1\xc8\x1c\x83\xed\x5e\x38\x48\x8e\xa2\x91\ +\xc2\x47\x62\x29\x7c\xb8\xae\x82\x0b\x0d\x93\xc7\x24\x72\x0f\xc0\ +\xa6\x1b\xbc\xb6\xed\x30\x5f\x99\x73\x95\x1a\x04\x56\xbc\xcf\x3f\ +\x2d\xd4\xb4\xda\x47\xae\x54\xa3\x81\x55\x9a\x48\x5c\x7a\xc5\x2b\ +\xd6\x48\xb3\xee\x57\x93\x01\x85\xb8\xd4\x79\x6e\x62\x5b\xc9\x57\ +\x99\x2d\x80\x30\x81\xf3\xef\xf5\xaa\xa6\xf3\xa6\xa2\xdb\x52\xe3\ +\x51\xa0\x82\x86\xc3\x69\xf1\xc8\x1b\x54\x95\x03\xfb\x20\x7b\x93\ +\x8e\x0e\x31\xeb\x93\x56\x4e\xb2\xeb\x66\x96\xfd\x64\xe4\x0d\x11\ +\xa6\xae\x1a\xe6\xe4\xae\x10\xa6\x5b\x53\x51\x73\x93\x92\x9e\x0a\ +\xdc\xfa\x80\x07\xcd\x56\xda\x9a\x47\x5c\x75\x5a\xcb\xb2\x20\xc4\ +\xd3\xb1\x54\x42\x44\x3b\x7b\x68\x43\x89\xc7\x6c\xf2\xa7\x01\xe7\ +\xd4\x8f\xa5\x27\x84\xe3\xab\x69\x78\x9d\x18\xe2\x22\xe2\xa2\xe0\ +\xdf\xaf\x91\x00\x4d\xd6\x7e\x95\xbb\xae\x65\x86\x6a\xad\xab\x25\ +\x47\xec\xce\x85\x2d\x97\x92\x48\xf2\xa9\x38\xc0\x3e\xb9\xf8\xe2\ +\xac\xad\x17\xd6\x70\x63\xa8\xca\x97\x1a\x0a\x59\x29\x21\x97\xdf\ +\xc2\x82\xbd\x52\x09\xfb\xc8\xf9\xef\xfe\x30\xe1\xd1\x4d\x5b\x31\ +\xc3\x22\xe5\x32\x03\x2a\x51\xca\x97\x36\x7e\xe5\xe7\xe4\x24\x13\ +\x4d\xd7\x6e\x99\xc2\xb4\x83\xf6\xfd\x5b\xa7\x99\x50\x24\x63\xc1\ +\x90\xb1\xc7\xb1\x08\xe6\xaf\x25\x86\xa8\xac\xe5\xaf\x70\x88\xfb\ +\x4c\x64\xf2\xc2\xf1\xec\x7a\x9d\x33\x03\xab\x5d\x3d\x9f\x01\x0e\ +\x3f\xab\xad\x31\x5f\x48\x01\xc6\xde\x7b\x18\x38\xf4\x20\x1c\xd4\ +\x27\xaa\x3a\xdb\x44\x4c\x99\x05\xcb\x76\xa7\xb4\xcf\x57\x8f\xe7\ +\x4b\x6e\xe7\xcb\x82\x08\x39\x1d\x8f\x6c\xfc\xd5\x02\xde\x9a\x88\ +\xe6\x1b\x85\x7f\xd2\xb3\xca\xd5\x81\xb5\xe5\x34\xbf\xa6\x1c\x48\ +\xa5\x12\xf4\x5b\xb1\x54\x10\xf2\xa2\x30\xe9\x4e\x76\x3c\xd2\xdb\ +\x03\xe8\xbc\x14\xfe\x39\xab\xc7\x07\x4e\x6f\xde\x66\x7f\x68\x9c\ +\x75\xd1\x5f\xc7\x99\x2f\xe9\xee\xa9\x66\xc1\xd4\x86\x1c\x72\x73\ +\x02\x33\xf9\x61\xe7\x3c\x51\x82\x41\xf2\xab\xfc\x3f\x1a\xee\x1d\ +\x01\xa8\x63\xce\x82\xd2\x9a\x90\xd3\xc9\x20\x79\x9b\x58\x50\xfc\ +\xc5\x7c\xd5\x99\x62\x79\xb5\x3e\x9f\x0c\x78\x91\xd0\x97\x57\xb5\ +\x5b\xb0\x82\x42\x42\x81\x1e\x9b\x88\x1f\x88\xab\x07\xf4\x69\x9d\ +\x76\x67\x5f\xc8\x86\x8b\xbc\xf8\xd1\xd5\x05\xc5\xac\x32\xfa\x93\ +\x9c\x14\xe3\xf8\xd6\xa7\x18\xc1\xe7\x83\xd0\xe6\xe2\x61\x38\xa7\ +\x37\xc8\xfa\x4e\xc3\x81\x69\x04\x73\x5b\x6a\x9c\xd3\x91\xe5\x49\ +\x8c\x8c\xea\x5b\xf8\x3f\x13\x8f\xf9\x54\xda\x0e\x9e\x5b\xd1\xd2\ +\xe2\xb5\x0e\xa2\xce\x39\xc4\xdf\x5f\xca\xb7\xca\x8b\x8c\x54\xbb\ +\x4c\x14\xf1\x3c\x47\x64\x89\x6d\x15\x54\xdd\xed\x57\x25\x5c\xd6\ +\xc4\x2d\x4d\xa9\x0e\x0f\x00\x4f\x56\x0f\xe5\x4a\x22\xe9\x1b\xf3\ +\xa8\x0a\x5e\xaa\xd4\x88\x2a\xec\x3f\x58\xab\xfc\xa9\x8f\x0a\xd2\ +\xbb\x65\x16\x32\xee\xca\x2d\x96\x75\x15\x59\x4b\xd2\x17\xe6\xdb\ +\xcb\x5a\xbb\x51\x9e\x7d\x6e\x0a\xed\x45\x0b\x0a\xde\xd2\x40\xf1\ +\x8d\x6f\x06\x38\x5c\xae\x0c\x6a\x6d\x6e\xbb\x0a\x9c\x3f\xab\xed\ +\x8a\x49\x90\x9c\xe0\x3c\xf7\x70\x9f\xa0\xff\x00\x3a\x70\xea\x0d\ +\xae\x1c\xcb\x0a\xc3\xcd\xa5\x28\x64\x0c\x01\xc6\x38\xff\x00\xca\ +\xa0\x7d\x38\x75\x4e\xbb\xfa\xc7\x0a\x2f\x4d\x92\xe3\xab\x23\xb9\ +\xca\x8f\xf9\x54\xff\x00\xa8\x72\x54\xce\x9b\x75\x29\x04\xad\xc1\ +\x80\x07\xae\x69\xd1\xa5\xc3\x9c\x2d\xcc\x44\x6a\xf1\x69\xcd\xcb\ +\xd7\x61\x4d\x4a\xb9\x94\xb1\xf6\x68\x00\x25\xb1\x91\x90\x3b\xff\ +\x00\xae\x29\xad\xc4\xb8\xf8\x52\x54\xf2\x89\x58\xed\x9e\xd5\x25\ +\xb0\xe8\xc9\xd3\x50\x1d\x92\x4b\x49\x56\x49\x1d\x8d\x49\x5a\xd0\ +\x30\x83\x61\x2a\x52\xc3\x87\x80\x73\xeb\xdf\xfc\x6b\x7b\x92\x5b\ +\x98\xd4\x5b\xd8\xae\x2d\xd1\x56\xca\xd0\x5a\xc1\x5e\xf1\x91\xeb\ +\xf3\x57\x93\x13\x1c\x85\xa5\x5a\x0f\x0f\xda\x94\x0e\xff\x00\xe3\ +\x51\x3b\x46\x95\x8b\x6c\xbb\x89\x13\x1c\x2b\x6c\x72\x02\xbb\x8a\ +\x76\xba\xca\x55\xc2\x50\x66\x33\x79\x69\x3c\x24\x01\xc7\xa1\xaa\ +\x4e\x39\xda\x5c\x8b\xc2\x4e\x09\xbe\x7b\x09\x6d\xb1\x5c\x9d\x39\ +\x29\x09\x27\x72\xc1\x51\x1d\xbf\xd7\x61\x53\x67\x9c\x6e\x14\x14\ +\x30\xd8\x19\x09\xc7\xe5\xcd\x23\xb3\x47\x6a\xd9\x10\x3a\xf7\x2e\ +\xa8\x6e\x38\xa6\xdd\x43\x73\x11\xd9\x5b\xce\x2b\xce\x7e\xe8\x3f\ +\xeb\xe9\x48\x95\xea\xce\xdc\x90\xf8\x7e\xcc\x2f\xcd\x91\xcd\x67\ +\x3b\x9f\xb3\x36\xac\x2b\x39\x5e\x2a\x22\x8b\x72\x9e\x06\x4e\x00\ +\x09\x38\xa5\xcf\xac\xbc\xa5\xbe\xbc\x92\xbe\xc0\x0e\xde\xd4\xe7\ +\x69\x0d\xa2\xd8\xa6\xca\x48\x52\xff\x00\xb5\x5a\xd1\x91\xea\x6b\ +\xd3\xb3\x4c\x39\x6d\xef\x50\xf0\xd5\x81\x92\x7b\xfc\xd5\x9b\x68\ +\x98\x14\x03\x2a\xe5\x04\x00\x2a\xa3\x42\x36\xad\x6d\xf2\x36\x92\ +\x47\xc5\x4a\xf4\xa5\xd4\x2b\x11\x9c\xfb\xc3\xee\x92\x3b\x0a\x55\ +\x6a\x6a\x71\xb0\xda\x35\x1c\x25\x71\xfb\x51\xdb\x8b\x2f\x2a\x53\ +\x5f\x71\x5f\x7b\x15\xb3\x4d\x4c\xd8\x55\x15\x67\x85\x0c\x27\x26\ +\x9c\x58\x7d\x32\x1a\x2c\x48\x39\x49\x1c\x1a\x61\xb9\x40\x72\x04\ +\x8f\x19\xbc\xa9\xb1\xca\x7e\x94\x98\x3c\xf1\xe1\xcf\x71\xd3\x59\ +\x25\xc4\x86\xc4\x7f\x54\x41\x72\x2d\xc1\xd5\x3a\x83\xb1\x67\x8c\ +\xfe\x54\xdf\x15\x95\xa8\x61\xb6\x54\x46\x78\xe2\xa6\xaa\x90\xcd\ +\xdf\xc3\x62\x42\x02\xd4\x93\xdc\x8a\x76\x8f\x06\x2b\x0d\x84\x86\ +\x86\x3b\x76\xa6\xba\xb9\x12\xcc\xb5\x14\xa9\x67\x6d\xc5\xe8\x57\ +\x2e\x27\x0a\x2a\xd8\xa6\xd5\xee\x46\x31\x53\x2e\x9d\xba\x56\xcb\ +\x9b\xc8\x52\x87\xaf\xad\x3a\x49\xb7\x45\x90\x8c\x29\xa4\x80\x07\ +\xa0\xa4\x76\x9b\x69\xb5\x4f\x53\x8c\x92\x50\xaf\x4c\xd2\xea\x55\ +\x8d\x48\x35\xcc\x6d\x3a\x52\xa7\x35\x2e\x43\x9d\xfe\x42\xdb\x65\ +\x2d\x20\x94\x95\x1f\x6a\x65\x53\x45\x63\x0a\x51\x27\xd4\x9f\x6a\ +\x77\xbe\xa3\xc7\x61\x0e\xa3\x38\x4f\x71\x8a\x68\x79\xd0\xd4\x72\ +\xe6\x4f\x94\x55\x70\xfa\x41\x58\x9c\x46\xb3\x77\x19\xef\x69\xd8\ +\x50\xd0\x18\x4e\x79\xad\x0b\x18\x40\x4f\x6a\xf2\x53\xee\x4a\x90\ +\x83\xb3\xcb\xef\x5b\x1e\x42\x8a\x02\xb9\xad\x88\xc6\xcd\x24\x61\ +\xf6\xdc\xc1\x27\x38\xa5\x57\xa7\x52\x88\xa4\x9e\x4e\x31\x9a\xd0\ +\xa6\x96\xe2\x40\x1c\x1e\x79\xf6\xa6\x9b\xcc\x97\x50\xd3\x8d\xad\ +\x5b\x86\x3f\x2a\x3b\xc1\x1c\xc9\xfa\x59\x5c\x40\xb7\xc0\x88\x92\ +\x37\x39\x21\xc7\x0f\xd1\x29\x03\xfc\x4d\x73\xf5\xa6\x73\xd6\xc7\ +\x94\xbf\x05\xb9\x0c\xba\x8d\xae\x32\xe8\x3b\x56\x3d\xc1\x07\x29\ +\x50\xee\x14\x39\x1f\x98\x36\xb7\xe9\x44\xfa\xdf\xd4\x90\x93\xce\ +\x13\x18\xe3\x27\x8e\x56\xac\xff\x00\x85\x56\xf6\x6b\x63\x73\x90\ +\xe9\x5b\xa1\x88\x8c\x00\x5e\x90\xae\x71\xf0\x91\xea\x49\xc0\x03\ +\xdc\xd7\x9f\xad\x34\xdb\x6c\xee\xe0\xe2\xd5\x35\x61\xa9\x48\x53\ +\xee\x2d\x6d\x78\xcb\x27\x24\xf8\x87\x25\x23\xdc\xab\xfc\x6b\xa0\ +\xbf\x47\x6e\x9b\x08\x52\x60\x5f\xaf\xe9\x30\xe6\x4d\x4f\x8f\x6a\ +\x74\x29\x0e\x61\xb0\x33\xb9\x23\x90\x95\xe7\xbe\x79\x03\x18\x1d\ +\xea\x98\xb2\xfd\x9e\xe7\xa9\x20\xdb\x62\xb1\xe0\x41\x5c\x96\xfc\ +\x64\xf7\x51\x40\x50\xce\x4f\xa9\xc6\x4e\x3d\xea\xea\x8f\xac\xda\ +\xd1\x70\x0e\x54\x1e\x66\x14\x99\x0a\xb3\xb6\x71\x95\x87\x37\x24\ +\x10\x3b\x8c\xa4\x83\xed\xd8\xf1\x58\x31\x75\x5a\xb4\x17\x33\xa3\ +\x87\xa4\x9a\x73\xec\x1b\x3a\xfb\x0d\x85\xd8\xde\x8e\x2e\x6f\xcd\ +\xb9\xc8\x9e\x97\x59\x65\xc0\x54\xea\x90\xda\x56\x16\xa3\x8c\x01\ +\x9d\xd9\xc6\x2b\xa6\x3a\x57\x32\x72\x3f\x46\x3d\x11\x2e\xdb\x2b\ +\x6d\xc9\xf8\x0d\xc2\x88\xe1\x20\x21\x95\x6e\x50\x53\x87\x3c\x1d\ +\x88\x42\x95\x8f\x52\x90\x3d\x6b\x8a\x65\x5d\xa6\x4e\xb9\xbb\x73\ +\x9c\xf1\x7a\x5b\xe7\xce\xbc\xf0\x91\xe8\x84\x7c\x0f\x7f\x53\xcd\ +\x5e\x5f\xa2\x9e\xb9\xd4\x72\xaf\xb6\xde\x96\x48\x98\xda\xac\x66\ +\x3d\xc1\xdb\x7b\x65\xa1\xe2\xb6\xe2\x99\x70\x86\xf7\x7a\xa4\x6e\ +\x71\x40\x77\xe7\xd8\x0a\xa6\x0d\x3a\x34\xf8\x6f\x7f\xa9\xb3\x15\ +\x85\x75\x12\xaa\xbe\x3e\x08\x8d\xeb\x4b\xf5\xe7\x51\xea\x65\x68\ +\xab\x5c\xe9\x6b\xb4\xdb\x1d\x52\x56\x95\xbe\xa5\x97\x17\xb8\x95\ +\x12\xa3\xfd\xe5\x12\x71\x8e\x49\xf8\xae\xa0\xfd\x16\xf4\x6c\x3d\ +\x2d\xa6\xee\xa2\x3c\xc7\x25\x7d\xbd\xd6\x9c\x74\xab\x18\xdc\x94\ +\x91\xc1\xc7\xb1\x19\x19\x3d\xbe\x6a\xa7\xe8\xc6\x86\x5c\x7b\xc5\ +\xd2\xe7\x75\x28\x56\xfb\x83\xaa\x69\x18\xc1\x27\x71\xe4\xfb\xd7\ +\x46\x58\xa5\xb7\x6c\x6d\xdd\x8c\xa5\x48\x59\x05\x5b\x4e\xdc\x60\ +\x55\xa8\x54\xd5\xf6\x15\xc6\xc5\x65\xca\xb7\x26\x21\x09\x00\x24\ +\x0c\x01\xd8\x0a\x61\xd7\x36\xbf\xd6\x76\x25\xc7\x0f\x25\x94\xa5\ +\x5b\xca\x89\xf5\xec\x3f\x9d\x2d\xb5\xde\xed\xd7\x01\xfe\xcf\x21\ +\x25\x49\x4e\x54\x92\x7e\xef\xbf\x34\xcb\xad\xf5\x7e\x9b\xb4\x5a\ +\xc8\x9f\x72\x88\x43\x8e\x04\x14\x07\x02\x94\x38\x27\x38\x1f\x4a\ +\xd9\x2b\x38\x9c\xc8\x29\x46\x6a\xcb\x52\xab\xba\xe8\x70\xb0\xb5\ +\x26\x7b\x4e\x10\x09\x03\x38\x22\xa3\xb2\xad\xf7\xdb\x36\xf4\xb5\ +\x39\xd4\xb2\xa1\x85\xb4\xe8\xf1\x59\x58\xf6\x29\x3c\x54\x86\x67\ +\x51\x34\xa4\x97\x1e\x16\xf9\xc9\x71\x0d\xed\x4a\xd6\xb6\x54\x13\ +\xb8\x8e\xd9\xc5\x37\xa2\xe8\xc4\xf5\xb6\x94\x2f\xf6\x4e\x61\x4d\ +\xba\x9f\x32\x01\xf6\xcf\x6a\xe0\xe2\x28\xc2\x2f\xaa\xf5\x3d\x3e\ +\x1a\xad\x67\x1e\xba\xba\xef\x43\x0c\x0b\x2d\xa9\x3a\x8a\x35\xfa\ +\xee\xd3\x4e\xda\x0b\x6e\xc3\x9f\x1f\x68\x71\xb6\xdb\x75\xb5\x23\ +\xc4\x52\x8f\x2a\x61\x0a\xd8\xa2\x95\x65\x48\xfb\xc0\xe1\x26\x90\ +\xf5\x0b\xa3\x5a\x83\x4f\x6b\xbd\x29\x2f\x4a\x5b\x2d\x57\x18\xc6\ +\xdb\x1a\x1b\xac\x6d\x42\x19\x93\x21\xa5\x2c\x6e\x52\x0e\x12\x41\ +\x6f\xc3\xca\x8f\x72\x3d\xcd\x3b\x5f\x18\x91\x15\xf4\xcc\x8c\xd9\ +\x4a\xe3\xbc\x8f\xb5\x33\xb7\xc8\xfb\x64\xf9\x92\xa1\xd8\x82\x32\ +\x3f\x1a\x84\xcc\xb5\x6a\x4b\xe7\x56\x1b\xd1\xb6\xdd\x47\x31\xb8\ +\x3a\x6e\x28\x85\x05\xd7\xdd\x50\x54\x44\x8c\x2d\x4d\x82\x0f\xed\ +\x0a\x72\x90\x14\x79\xda\x84\x03\xda\x9f\x43\x13\xc1\xa4\xe3\x6d\ +\x79\x11\x53\x09\x2a\xf5\xd4\xd4\xec\xac\xef\x7e\x49\x78\x6b\xcc\ +\xd7\xfa\x58\x68\x7b\xdc\x58\x2c\x6a\x99\x76\x0b\x0e\x98\x43\x6d\ +\xa5\xb5\xb5\x6c\x94\xa4\x07\x15\x9e\x49\x09\x01\x24\xd5\x27\x63\ +\x96\x2d\xa1\x6b\xbe\x59\xbf\x58\x21\x6c\xe5\xa5\x4b\x74\xb8\xda\ +\x37\x00\x42\xf0\x49\x1d\xb2\x41\xae\xc0\x99\xd3\x5b\xc5\xe6\xd4\ +\x22\xea\x0e\xa8\x6a\x8b\x8b\x4a\x00\xa9\x95\x29\x2a\x68\xe3\xdc\ +\x2b\x39\xfa\xd4\x1f\x48\xf4\xbe\xd5\x77\xd6\x97\x3e\x9e\xdd\xe7\ +\x06\x95\x11\xd6\x2e\x4c\xc8\x6e\x30\x59\xb8\x42\x42\x90\x57\x1d\ +\x63\x38\x41\x0a\xd8\x42\x87\x23\x72\xc7\x20\xe0\x68\x86\x2a\x4e\ +\x69\x49\x68\xfc\x0c\xfe\xcf\x08\x53\x94\xa3\x52\xed\x6f\x64\xf6\ +\xbe\xfa\x92\x3f\xd1\xe3\x47\xdc\xa5\xf4\x65\x77\x99\xb0\x15\x6f\ +\xfb\x52\xde\x75\x95\x38\x80\x93\x21\x92\xac\xb6\xbc\x0c\x28\x8c\ +\x64\x61\x5c\x60\x0c\x0e\x73\x49\x05\x92\xfb\x36\x49\x65\x0f\xab\ +\xc3\xf4\x4b\x63\x6a\x53\xf8\x0e\xd5\xd2\x5a\xa9\x0d\x33\xa5\xa5\ +\xc5\x8e\x03\x09\x43\x29\x69\x09\x6d\x20\x04\x0e\x00\x00\x76\x03\ +\x15\x54\xbd\x74\xb2\x59\xa3\x78\x77\x3b\xa4\x58\x61\x47\xfe\x19\ +\xc0\xd0\x24\x9f\xae\x7b\xd5\x71\x58\x58\x3b\x5f\xe2\x27\x05\x8d\ +\xa9\x79\x49\x2b\xf6\x11\x46\xfa\x71\x31\xe4\x95\xc9\x96\x1a\x3e\ +\x98\x19\x22\x91\x5d\x3a\x57\x1a\x4c\x55\xb0\xb7\x83\x83\x9c\xee\ +\x4f\x04\xff\x00\x85\x4a\x5c\xd4\x76\x69\x33\x95\x12\xdd\x77\x80\ +\xf3\xa1\x39\x29\x6a\x58\x0b\x4e\x31\xdc\x13\xf3\x5b\x58\xbd\x2e\ +\x3a\x83\x72\x81\x2d\x93\x8f\x10\x8e\x47\xf9\x8a\xe7\xba\x34\xe0\ +\xce\x97\xb5\xe2\x9a\xbd\xfc\x8e\x4b\xea\x97\x4a\x2e\x3a\x6a\x73\ +\x92\x23\xa3\xed\x76\xe2\x3c\x4c\x8e\x16\x9c\xf7\xc8\x3e\xdc\x57\ +\xba\x6e\xf0\xd4\xbd\x37\x0d\x32\x5e\x54\x79\x70\x52\xa6\x16\xe8\ +\x51\x04\x24\x0f\x22\xbe\xa3\x20\x11\xf1\x5d\x77\x7c\x81\x0e\xed\ +\x05\x71\xdd\x69\x0e\xb6\xb6\x94\x9d\x8b\x19\x05\x24\x60\xe3\xda\ +\xb8\xb3\x5f\xe9\xa7\xb4\xd5\xce\xe5\x6e\x6d\x2e\x06\xdb\x7c\xa9\ +\x0a\x27\x3b\x90\xac\x81\xf9\x1c\x8a\xd9\x4e\xac\xa7\x68\x37\xe0\ +\xcc\x55\x14\x35\xaa\xa3\xe2\xbe\xa6\xfb\xab\xea\xbf\xd9\xa5\xdd\ +\x1b\x43\x3f\x6c\x84\xe8\x66\x61\x61\x21\x28\x77\x23\x87\x00\x1d\ +\xb3\x8c\x11\xee\x33\xeb\x4a\xba\x04\x89\x1f\xd3\x49\xd7\x16\xdb\ +\x26\x3b\x50\xcb\x4a\x5f\xa6\xf5\xa8\x6d\x4f\xd4\xe0\x9f\xc2\x99\ +\xfa\x7a\x5e\x8b\xd3\xfd\x71\x74\x4a\x72\x98\xa9\x83\x82\x7f\xb4\ +\xb7\x4a\x71\xf9\x13\x56\x1f\x46\x6d\x42\x1c\x38\xf6\xc4\xba\x16\ +\xea\xdc\xfb\x44\x8c\x0e\x02\x88\x18\x4f\xe0\x38\xfc\xeb\xaa\xe3\ +\x9d\x46\x9c\x77\xd8\xe0\x62\x6b\x7e\xcb\x4f\x99\xd4\xba\x11\x25\ +\x70\x9a\x4e\x15\x92\x3f\x21\x56\xac\x73\xe0\xb0\x1a\x47\x27\x18\ +\xc8\x1d\x8d\x57\xfa\x0e\x29\x65\x86\xdc\x20\xef\x03\x81\x8a\x9f\ +\xb4\x76\x37\xe6\xc2\x94\x7f\x2f\xf5\xcd\x75\x6b\xac\xa9\x43\xb0\ +\xe6\x61\xa3\x65\x70\x62\x23\x4d\x2c\xac\x20\x15\x9e\xe7\xde\xb7\ +\x6e\x09\xe0\xa8\x8f\x72\x38\x34\x21\xb5\x93\xca\x8a\x53\xc0\x3c\ +\xf7\xac\x43\x49\xff\x00\xe3\x27\x20\x7d\x78\xfa\x56\x56\xef\xbb\ +\x34\xa5\x6d\x90\x3a\xe0\x4a\x15\xb8\xe0\x7a\xfb\x7f\xae\x68\xa4\ +\xf2\xad\xcb\x7f\x1f\xed\x07\x60\x3e\x64\x83\x9c\xd1\x4d\x87\x0e\ +\xda\xb1\x72\xe2\x5f\x44\x56\xfd\x21\x60\x0d\x3f\x12\x6b\x87\x09\ +\x41\x70\x72\x7f\xbe\xaa\x98\xbb\xba\x6a\xca\xdc\xc9\x40\xe5\x29\ +\xcf\x06\xa3\x5d\x3b\x4a\x53\xa2\xe0\x60\x60\x23\x7f\xfd\xe2\xb9\ +\xa9\x4b\x4c\xbc\xf2\xb3\xbb\xc3\x6c\x1c\x12\x7b\x62\xb6\x3b\x25\ +\x73\x9f\x4a\xf9\x54\x4c\x00\x6d\xa1\xb4\x14\xe4\x7b\x56\xc4\xb8\ +\xca\x52\xb5\x78\x89\x48\xf9\xf4\xef\x58\xba\xab\x5b\x3e\x47\x56\ +\x16\x73\xcf\x9b\x9a\xcc\x2e\xcd\x27\x0d\x85\x6d\xdc\x31\x9f\x8f\ +\x6f\xa5\x55\xbe\xe6\x35\x2b\x73\x47\x3f\xdf\x2f\xba\x9a\xe5\xa5\ +\xee\x1a\x3e\xdb\x74\x94\xe5\xfc\x6a\x39\x10\x23\x48\xf1\x0a\x9e\ +\x0d\x23\x32\x12\xac\xe7\x3f\xd5\x8d\xbf\xc2\x9f\xed\x17\xa9\xf7\ +\x58\xd6\xb9\xb6\xe7\xca\x83\x7a\x45\xcb\x94\xa6\x84\x85\x32\x1d\ +\x79\xdd\xa8\x40\x52\x92\x09\x49\x4e\xc7\xc8\x20\x1e\x45\x49\x2d\ +\xfd\x38\x99\x69\xea\xdc\xdd\x67\x1a\x43\x0e\x5a\x5d\x8f\x96\x58\ +\x49\x3e\x22\x64\x94\x21\xb5\x38\x46\x31\x8d\x88\xc7\x04\x9c\xa8\ +\xf6\xa4\x3a\x33\x47\x3f\xa4\x2d\x3a\xb1\x13\x27\xc5\x7c\xdc\x96\ +\xeb\x76\xed\xaa\x51\xf0\x62\xe5\xc5\x36\x85\xe4\x0c\x10\xa7\x57\ +\xc0\xce\x3d\x0f\xa0\xa5\xdc\x95\xa3\xb1\x9b\x87\x38\xbe\xb7\xae\ +\xc1\x95\xbd\x69\xa8\xdb\x47\x4d\xdb\xb6\x18\xff\x00\x64\xba\x5a\ +\x9d\x79\x6d\xce\x98\xb7\x1c\x5a\x9a\x69\x38\x0e\x39\xb0\x93\x8d\ +\xe0\x82\x39\x27\x39\x00\x0e\x61\xb2\xf5\x5d\xe6\x05\xd7\x5b\xdd\ +\x84\x34\xce\xb7\x42\xba\xf8\x8e\x07\x25\xa9\x2b\x4a\x0a\x11\x94\ +\xb6\x9d\xa4\x70\x39\xe4\xa7\xbd\x3a\x3f\x61\xbf\x22\x3e\x8a\xfb\ +\x33\x96\xf7\x9f\xd3\x90\x9d\x8a\xe2\x16\xf2\x90\x87\x7c\x46\xd0\ +\x82\x52\xa0\x82\x78\x28\xcf\x23\x9c\xfa\x56\x8b\x86\x90\xb8\xbd\ +\x61\xd6\x70\x92\xf4\x30\xed\xee\x41\x72\x31\x52\xd4\x12\x94\xec\ +\x4a\x70\xbf\x2f\x07\x29\x3d\xb3\x4c\x8c\x24\x97\xae\xc2\x8d\xc9\ +\xef\xeb\x41\xcb\xa8\xd7\xd7\xec\x3a\x1a\xe1\x7a\x84\x41\x75\xa6\ +\x92\x59\x2a\x19\x00\xad\x49\x4a\x4e\x3d\x70\x54\x0d\x44\xe3\x5d\ +\x35\x0e\x97\xb9\x68\x89\x52\x35\x04\xeb\x9b\x3a\x87\x6b\x33\x58\ +\x94\xa0\xa4\x05\xac\x23\x6a\x9b\xc0\x1b\x70\x57\x8f\xc3\xe4\xd4\ +\xfe\x7e\x98\x46\xa4\xd2\x52\xec\x73\x0e\xc4\x48\x60\x34\x1d\x48\ +\xce\xc5\x8c\x14\xab\x07\x19\xc1\x00\xd4\x2f\x4e\x58\xaf\xb7\x3e\ +\xa0\x59\x74\xf6\xac\x09\x61\x3a\x45\xa0\xb8\x65\xa8\xee\x6d\xb8\ +\x60\x24\x25\xcf\x10\x8d\xa3\x6e\xd4\x64\x67\x39\x07\xe7\x17\xa9\ +\x7c\xc8\xac\xaf\x71\x4f\x4f\xef\xba\xa6\xef\xaf\x75\x2b\x37\x18\ +\xf1\xcc\x28\xb2\x92\xc3\x89\x4b\xe4\xfd\x98\x84\xa8\x00\x81\xb4\ +\x6e\x0a\x29\xc9\x27\x1f\x8d\x59\x8c\x82\x95\xa5\xc4\x2b\x6a\x87\ +\x62\x3b\xe6\xa0\xee\x69\xcd\x51\xa3\x2e\x9a\xc2\xff\x00\x09\x16\ +\xdb\x84\x1b\x8a\x97\x35\xa6\x80\x71\x52\x7c\x40\x95\xec\x40\x40\ +\x4e\x08\x2b\x50\x04\xee\xed\x9a\x99\x5a\x8c\xb3\x6e\x8e\x67\xa5\ +\x91\x37\xc3\x4f\x8f\xe1\x83\xb7\xc4\xc7\x9b\x6f\x27\x8c\xe7\x1c\ +\xf6\xab\x53\xbd\xac\xcb\x47\xbc\x99\xd8\x6e\xc8\x79\x09\x61\xe5\ +\x10\xbf\x42\x4e\x29\xfd\x2b\x56\xd2\xd3\xa9\xde\x83\xc6\x48\xcd\ +\x56\xf8\x50\x21\xc4\x1c\x28\x76\x23\xde\xa4\x96\x3b\xe8\x4a\x43\ +\x32\xf0\x3e\x73\x55\xa9\x4e\xfa\xa3\x4d\x2a\xb6\xd1\x8e\x32\xed\ +\xea\x61\xe1\x32\x22\xfc\xa0\xf2\x8a\x72\x83\x29\xc7\xdb\x1f\xb1\ +\x50\x3d\x8d\x7b\x09\xb4\x3c\xbf\xb4\x13\x86\x87\xf1\xac\xdf\x9e\ +\x84\x1d\xb1\xda\xcf\xb9\x22\xb3\xca\x4e\x5d\x5b\x5d\x8f\x8c\x54\ +\x7a\xd7\xb2\x36\x82\xfe\x3f\xab\x20\x63\x27\x9a\xf5\x2e\x0c\xf9\ +\xd2\x47\x38\xe4\x77\xa4\xc9\x9f\x28\x63\x81\x8e\xe2\x94\x37\x35\ +\x0b\x3b\x1f\x40\x4e\x7d\xa9\x6e\x12\x5c\x86\xc6\x71\x7c\xcc\xbe\ +\xe8\x28\xee\xd9\x14\xc9\x77\x88\xa4\x36\xb4\xe3\xca\xae\x45\x3f\ +\xa9\xb1\x8d\xc8\x39\x42\xbb\xd6\x97\x9a\x0e\xb6\x52\x7b\x7a\x1a\ +\x9a\x55\x32\xbb\x91\x56\x9e\x65\x62\x17\x1c\x60\xec\x38\xe0\xf2\ +\x2b\x39\x19\x28\x1c\x1c\x7a\xfd\x6b\x74\xe8\xeb\x8d\x28\xfb\x13\ +\xcd\x60\xf1\xc2\x32\x3f\x1f\x5a\xe8\xa7\x73\x9a\xd5\xb7\x35\xa0\ +\xed\x6f\x3f\x1c\xd4\x77\x50\x24\xad\x97\x5c\x23\x93\xc0\xa7\xf1\ +\x92\x03\x60\xf7\xf5\xa6\xad\x54\x90\xcd\xb9\x7e\xe5\x3c\x50\xf6\ +\x64\xa3\x8d\x3f\x49\x30\x1c\xd4\xb0\x18\x42\x16\xe3\x82\x39\xc2\ +\x10\x92\x4a\xcf\x88\xac\x0f\xe1\x55\x94\xa7\xd4\xd4\x44\x32\xe2\ +\x42\x4a\xb9\x5a\x7b\x04\x01\xd8\x11\xfd\xae\xff\x00\x9d\x74\x2d\ +\xfa\xe4\xc4\x3d\x64\xe5\xc5\xc6\xf2\xeb\x08\x2c\x32\x52\x8d\xca\ +\x5e\x4e\x54\x33\xe8\x32\xa2\x3f\x0a\xa0\xb5\x5d\xbd\xe6\xb5\x7d\ +\xc5\x97\x12\xa4\x07\x5f\x53\xa0\x3c\xad\xa7\x0a\x39\xef\xeb\x5e\ +\x62\x75\x22\xeb\x64\x7c\xb5\x3d\x56\x1f\x09\x51\x60\xa3\x59\x2d\ +\x1b\xb0\x97\x4b\xcb\x89\x12\xea\x87\xa4\x3e\xeb\x21\x2b\xc8\x53\ +\x68\xdc\x48\xef\x8f\xe1\x8f\xc6\x94\x6a\x0b\x85\xc2\xfd\x7d\x12\ +\x9e\x6c\xa1\x2b\x59\x6a\x33\x09\x1c\x34\x80\x78\x48\xfc\xf9\xa4\ +\xac\x3a\x98\x58\x79\xa6\xd0\xa5\xe7\x8f\x2e\x46\x01\xed\xfc\xb9\ +\xa7\xbd\x06\xf2\x1e\xd5\x11\x64\xc8\x61\x0f\x20\x2d\x3e\x22\x4e\ +\x01\x27\x3e\x80\xf7\x27\x8e\x6a\x2a\x5a\x37\xa9\x6d\x91\x34\x13\ +\x9c\xa3\x45\xbd\xd9\x67\x68\x3e\x90\x5e\x6e\x2d\x25\xe9\xcb\x6e\ +\x22\x31\xc8\x57\x2a\xc9\xf8\xa9\x2e\x9e\xd1\xd7\x3d\x0b\xd4\xcb\ +\x05\xe2\x2a\x54\xe1\x83\x29\x32\x32\x84\x90\x56\x8c\xe1\x69\xe3\ +\xdd\x24\x8f\xc6\xae\xbd\x32\x23\xc8\x8e\xdb\xf1\xdb\x09\x65\x4d\ +\x20\x84\xed\xc7\xd3\x3f\x38\xc5\x48\x92\xc3\x2e\x29\x0b\x2d\x24\ +\xa8\xfa\x91\xda\xb8\xb2\x73\x9e\xaa\x5a\x9e\x87\xda\xb2\x75\x32\ +\xac\xa6\xf9\x16\xf8\xf6\xeb\x9b\xab\xb7\x80\x63\xcb\xfd\xb3\x2a\ +\x07\x82\x95\x0c\x8c\x7e\x1f\xc8\xd6\x77\x99\x0e\x46\xb7\x9f\x0d\ +\x0a\x5a\x82\x09\x01\x3f\xda\xc7\x15\xe4\x09\xad\xf8\x5f\xab\xdd\ +\x5a\x43\x8d\xa8\xfd\x9d\x4a\xfd\xd5\x13\xf7\x0f\xb0\x3d\xc7\xb1\ +\xfa\xd6\x6d\x07\x1d\x0b\x0a\x18\x20\xe0\x83\x91\x83\x5a\x93\x4e\ +\xed\x73\x39\x96\x69\xd9\xf2\x2b\x0d\x27\x76\xd5\xa6\xfb\x2d\x57\ +\x48\xce\x08\x01\xb2\xd9\x65\x95\xe0\x0c\x9e\x54\x7d\xc5\x45\xe7\ +\xd9\xf5\x4b\x17\xdb\x4c\xd8\xa7\xec\x51\x04\xe7\x4c\x87\xde\x88\ +\xdc\x96\xdc\x6d\x69\x52\x53\xfb\x25\xf0\x48\xc8\xc0\xf7\xed\xcd\ +\x5e\x82\xce\x7e\xfb\x6f\x23\xcd\x83\x85\x0c\xd2\xf4\xb0\xea\xdb\ +\x6d\x0f\x36\xcb\xa9\x69\x61\xc4\x05\x73\xc8\xec\x69\xb4\xaa\x4e\ +\x2a\xcc\x2b\xf0\xaa\x3b\xda\xd7\x2a\x1e\x8d\x88\xda\x56\xe5\x71\ +\x55\xde\x35\xcd\xf5\xa6\x30\x8c\xf2\xcc\x72\x95\x48\x58\x39\x49\ +\x2d\xe7\x09\xf2\x9c\xfe\x34\xa9\x56\x07\x5f\xb8\x22\x56\x93\xb3\ +\xbf\x6a\x52\xe4\x91\x21\x0e\xa4\x04\x16\xfb\xe5\x48\xce\xd3\x93\ +\xed\x83\x56\x94\xf8\xab\x7a\x42\x9e\x52\x1a\x4a\x94\x30\xac\x27\ +\x71\x38\xed\xf1\x49\xd7\x19\x49\x00\x90\xbc\x11\xc9\xc7\x35\x59\ +\x43\x32\xb4\x86\x50\xae\xa8\xbc\xd4\xd6\xaf\xb7\x61\x8f\xec\x52\ +\xe5\xc6\x4c\x29\xae\x32\xfc\xc9\x4a\x43\x6e\x18\xe8\xc2\x01\xf4\ +\x48\xcf\x7a\x8f\xc7\xb0\xb3\x0f\x5f\xfe\xbf\x62\x7c\x49\x6b\xbb\ +\x4c\x94\xee\xd8\xea\xdf\xb1\x08\xc0\x49\x52\xfb\x67\x6e\xc0\x52\ +\x3b\x1a\x96\xea\xeb\x8b\xda\x72\xd0\xd2\xe2\x25\xb3\x7b\xb8\x6e\ +\x8d\x69\x64\x9c\x16\xf2\x3c\xf2\x55\xec\x94\x27\x24\x13\xeb\x50\ +\xfe\x9d\xe9\xb6\x2c\x82\x52\x63\x2d\x4e\x30\xdb\xa5\x0d\x28\xaf\ +\x20\x13\x82\xb5\x01\xe8\x54\x42\x73\xf4\xae\x7e\x26\xce\xa4\x21\ +\x1e\xdb\xfa\xf5\xd8\x6f\xc3\xa9\x2a\x53\xaa\xdd\xae\x9a\xb7\x6f\ +\x6f\xc1\x3b\x78\xd9\xf6\x16\x1b\x1b\x8b\x0b\x29\xc0\x29\xc0\xca\ +\xbb\x1a\x8d\x4f\xb5\x44\x63\x5a\xc6\xd4\x4e\xba\xb8\xee\x2e\x22\ +\xed\x8f\xbc\x85\x11\xb5\xa7\xfc\x89\x59\xc7\xaa\x5d\x2d\xfe\x07\ +\xe2\xa4\xb6\xb2\x3c\x32\x97\x00\x27\x04\x63\x39\xa8\xb7\x54\xad\ +\xee\x49\xd3\x32\x58\x6d\x6f\x25\x05\x3b\x87\x84\xa2\x95\x12\x08\ +\x56\x32\x3d\xf0\x38\xfa\x53\xaa\x36\xa2\xa4\xb9\x6a\x64\xa4\xaf\ +\x3c\x97\xb2\x7a\x7c\x19\xe3\xb2\xaf\x4f\xcb\x95\x06\x55\xf6\x4c\ +\xc8\x29\x29\xd8\xdb\x1c\xa9\xf2\x09\x0a\x25\x44\xe4\x64\x72\x30\ +\x33\x9e\xf5\x5c\xf5\x47\x4d\x3f\x70\xbc\x46\x99\xa6\xf4\xb2\xd0\ +\x98\x88\x6f\xc3\xfb\x6b\x21\xd6\x54\xe9\x74\x15\xf8\xbc\x95\x94\ +\x90\x00\x38\x3c\x8f\x6a\x97\x74\xfa\xf1\x17\x50\xdb\x00\x5a\x9a\ +\x4d\xc5\x18\x54\xa4\xa4\xf2\xa5\x1c\xe1\x78\xfe\xf6\x09\xfa\x85\ +\x0f\x4a\x98\xc7\x6a\x7b\x44\xa5\x25\x4a\x47\x04\x07\x46\x41\x1f\ +\xce\xb4\xc2\xb7\x12\x2a\x48\x5d\x4a\x4e\x8c\x9c\x25\xa5\xbe\x1e\ +\xbb\x8e\x5c\x56\x88\x72\x3f\x51\xdd\x93\x7d\xb5\x2d\xdb\x7b\xf7\ +\x94\x3e\xa3\x0e\x23\x8c\x30\x96\x14\xa0\x5c\x65\x09\x56\x54\x94\ +\x8c\x90\x92\x73\x4f\x7a\xd9\xeb\xd6\x93\xd5\x2e\x39\xa4\x2d\x9a\ +\x85\x7a\x51\x21\x29\x31\x27\x28\xbe\x42\x40\x19\x20\x9c\xa8\x0f\ +\x5c\x13\xeb\x5d\x19\x2d\xf9\x6b\x65\x49\x93\x14\x28\xab\xb6\x17\ +\xbd\x39\x1e\xbc\xf6\xa4\x52\xd0\xf4\xa4\x00\xb6\xf6\x11\x80\x72\ +\x8f\x4a\x5d\x66\xe5\xba\x1d\x87\xa9\x1a\x4a\xca\xef\xe3\xf8\x18\ +\xf4\x0d\xed\x8d\x43\x62\x8b\x22\x12\xca\xd0\xb4\x0c\xa8\xa4\xa7\ +\x8f\x6e\x40\xaa\xcb\xf4\x80\xb0\x07\x6d\xd7\x8b\x82\xda\x0b\x58\ +\x65\x0e\x05\x01\xfd\x95\x8e\x3e\xb8\x35\x6b\xdb\x6d\x49\xb2\x3e\ +\x57\x10\x84\xb0\xb5\xef\x2d\x60\x00\x14\x7b\xe3\xdb\xe9\x4d\x7d\ +\x46\x81\x12\xeb\x66\x97\x0a\x62\x9c\x43\x13\x11\xe1\x1f\x0f\x97\ +\x14\xa2\x41\x01\x03\xdc\xe3\xf0\xef\xe9\x59\x5a\xcb\x67\xd8\xc3\ +\x32\xce\xf2\xec\xce\x4e\xb7\x28\x5b\xba\x42\xdd\x9d\xe4\x11\x37\ +\x54\xdd\xd8\x7c\xa4\xf0\x53\x19\xa2\xa0\x15\x8f\x6d\xc7\x8c\xfa\ +\x66\xac\x8e\x85\xc6\x7a\x5c\xb6\x2e\xa9\x21\x4c\xbc\xe2\xf7\x10\ +\x73\x80\x14\x40\xcd\x44\xba\x8d\x65\x9b\x7c\xea\x79\xb7\x48\x91\ +\x1e\x01\x65\xff\x00\xb2\xc5\x4a\x7e\xe3\x6d\xa5\xbe\x10\x9e\xdd\ +\xbd\xcf\x04\xe7\x35\x26\xd1\xa5\x8d\x29\xa8\x60\xda\xad\xf2\x5a\ +\x52\x87\xec\x5e\x09\xc9\x0e\x0c\xf3\xcf\x62\x41\xf5\xfc\xab\xb3\ +\x43\x19\x08\xce\x32\xed\xd4\xe3\x63\x3a\x3a\xa3\xa0\xe4\xb9\x7f\ +\x09\x1d\x81\xa5\xf0\x18\x46\x3b\xfe\xee\x3d\xea\x5c\x85\xa1\x94\ +\x03\xc9\x57\xa7\xc7\x15\x5e\xe8\x69\x61\x50\x50\x54\xb0\x5c\xfa\ +\x7a\xd4\xe2\x37\x20\x2d\x47\x27\xbe\x2b\xb9\x55\xaa\x8b\x37\x23\ +\x87\x46\x5a\x19\xba\xeb\xce\x67\x7a\xb6\x80\x7b\x56\x29\x6f\x1c\ +\xee\x51\x56\x3b\xfa\xd6\xd2\x48\x39\xe7\xd8\x57\x80\xf9\xcf\x27\ +\x8e\x00\x27\xe6\x97\x7b\x2d\x06\x5a\xef\x53\x04\xb8\xeb\x0a\xde\ +\xda\x8a\x87\x6e\x7b\x9a\x2b\x35\xe1\x38\x21\x47\xf0\x1c\x7d\x28\ +\xa2\xc9\xee\x89\x4d\xad\x99\x0a\xe9\xb0\x43\x7a\x36\x0b\xef\xe7\ +\x62\x7c\x4c\x0f\xff\x00\xa8\xaa\x70\x9b\x35\xe9\x89\x29\x6d\x45\ +\xb6\xc0\xe3\x07\xe6\xa3\xda\x15\xd5\xc8\xd2\x90\x5b\xf3\x25\xb6\ +\xfc\x4c\x10\x3d\x7c\x45\x7f\x9d\x3f\x21\x29\xc7\x39\x18\xc9\xfa\ +\x71\x5b\xa1\x15\x64\xd9\xcd\x53\xea\xa4\x8d\x02\x3a\x41\x05\x47\ +\x71\x3d\xf9\xed\x5b\xd4\x84\x1f\x2a\x06\x3e\x7d\xab\x15\x00\x0e\ +\xd4\xee\x23\xb8\xad\xa8\x52\x4a\x7b\x67\xd4\x0f\x7e\x3d\xe9\xa5\ +\x45\x36\x79\xea\x6a\x40\x8a\xf3\x89\x28\x73\xee\x27\xfd\x77\xa8\ +\x86\xb2\x2b\x4d\xd9\x49\x4c\x90\xa6\x96\x90\xb4\xa4\x28\x1e\x0f\ +\x62\x3d\xc1\xa8\xf7\x4b\xe3\xc0\x9d\x77\xbf\x5d\x2e\x4c\x46\x91\ +\xa8\x18\xbe\xc8\x69\x4e\x3c\x80\xa7\x98\x42\x55\x86\x92\x82\x79\ +\x4a\x36\x60\x8c\x70\x72\x7d\xea\xb3\x54\x08\x31\xfa\x2b\xa5\x2e\ +\x05\xbd\x86\xe3\x2a\x2b\x37\x89\x4a\x52\xb7\xae\x2a\x64\x14\x6d\ +\x52\xbb\x84\x04\x84\xa7\x03\x00\x0e\x29\x17\xb4\xb3\x25\xb8\x71\ +\x5b\x8a\x4c\xb5\x9a\x01\x6d\x82\xda\x81\x49\x3e\x5c\x7a\xfe\x54\ +\x27\xf6\xc1\x28\x42\xb7\x0c\xed\x51\x07\x23\x8e\x0d\x56\xb3\xad\ +\x31\xe4\x6a\x6d\x4f\xa7\x6c\x52\x5b\xb5\x41\x95\x67\x63\xc6\xfb\ +\x38\x09\x6d\x99\x4a\x71\x41\x3e\x51\x80\x37\x20\x00\x71\x8c\x83\ +\x4a\x2c\xf6\x57\x75\x15\xa6\x75\x8e\x3d\xbe\xc7\x69\xbc\x59\xae\ +\x4c\x2e\x43\x2d\x23\x30\x2e\x05\x08\xdc\x94\x2f\x00\x12\x92\x0f\ +\x29\x39\x20\xa4\x67\xda\xaf\x9d\xf6\x15\xcc\x5d\x56\x08\x88\xc2\ +\x36\x14\x96\xf1\x9c\x82\x0e\xee\xd5\xb2\x52\x9b\xfb\x53\x9b\x96\ +\x8c\x95\x6d\xc6\x7f\x7b\x19\xc7\xd7\x1c\xe2\xa2\x7a\x06\xed\x78\ +\xba\xe9\xbb\x7c\x8d\x23\x65\xd3\xf6\x88\xe1\xf7\x9a\x9f\x19\xe0\ +\xbd\xa1\xc4\xb9\xb5\x45\x92\xd0\x09\x50\x24\x28\xe4\x8e\x49\xa8\ +\x3e\xa3\x81\x68\x90\x7a\xb7\x70\xb8\xb4\xd2\xe4\xc5\x58\xfb\x13\ +\x8e\x72\xa6\x5e\xfb\x3a\x4b\x65\xb3\xdd\x2a\x2b\x08\xe4\x60\x9c\ +\x0f\x6a\x8e\x27\x30\x72\xd1\x34\x5b\x0c\xde\xe3\xcb\xd5\x12\x74\ +\xd2\x22\xac\x3f\x12\x0b\x52\xd4\xee\x46\xd5\x05\xa9\x49\x09\x03\ +\xbe\x46\xd3\xf9\xd2\x29\xeb\x8d\x0d\x2e\xcb\x79\xf4\x22\x33\x20\ +\x97\x16\x55\xc2\x31\xdf\x3e\xdd\xaa\x0a\x6f\x42\xc9\x7c\xd4\x57\ +\x6b\xfd\xbd\x53\xcb\x3a\x36\x1f\xdb\x22\x91\xfd\x6a\x8a\x96\x95\ +\x21\x59\xcf\x04\x92\x0e\x41\xc0\xcd\x35\xc8\x86\xda\x75\x3e\xab\ +\xb7\xfd\x86\xc9\x16\x33\xda\x3f\xed\x0e\xc3\xb5\x8c\xc7\x0e\x85\ +\x2f\x62\x88\xc0\x05\x60\x14\xf3\x81\xc6\xd3\x50\xaa\x3d\x88\xce\ +\x4c\x6e\xba\xc6\xd5\x12\xc5\x6c\xba\xc5\xff\x00\x6c\x17\x47\x59\ +\x66\x13\x4d\xad\x28\x2b\x53\x83\x72\x72\x54\x46\xd0\x07\x27\x3d\ +\xbd\xa9\xfe\x19\x5c\x94\xc6\x2f\x35\xf6\x77\xdd\x03\x73\x4a\x58\ +\x51\x49\xf5\x19\x1c\x1e\xfd\xc5\x54\xd3\x2c\xf6\x94\x68\x5e\x97\ +\x1f\xd5\xb0\x4f\xda\x2e\x36\xe2\xe9\x0c\xa0\xef\xdf\x19\x5b\xc2\ +\xb8\xe7\x25\x23\x39\xef\x81\x9e\xd5\xae\xf4\xd5\xbd\x7a\x6f\x5f\ +\x5d\x2e\x29\x69\x37\xd8\x57\x47\x51\x0d\xf2\x70\xfc\x70\x9d\x9f\ +\x65\x4b\x47\xba\x41\x04\x63\x6f\x7c\x9a\x38\x8d\x6e\x46\x66\x74\ +\xd3\xef\x22\x34\x06\x22\xa5\xd4\xa5\x44\x24\x11\x9e\x79\xed\x5a\ +\xd8\x53\x67\x09\x4a\xd0\xa2\x46\x78\x56\x72\x33\xcf\xfe\xb5\x58\ +\x58\xed\xec\x5e\x7a\xd3\x71\x95\x7a\x8c\x99\x12\x60\xda\x6d\xd2\ +\x1a\x4a\x8e\x50\xcc\x82\x17\xb9\x61\x3d\xb7\x79\x71\x9e\xe0\x67\ +\x1d\xcd\x41\xe3\x59\xed\xd2\x34\x3e\x9c\xb8\x3d\x15\x2a\x9b\x2b\ +\x5c\x08\x6f\x48\xe7\xc5\x54\x75\x49\x71\xb5\x33\xbf\xbf\x86\x50\ +\x48\xdb\x9c\x73\xdb\x9a\xce\xa5\x64\x69\x95\x57\x7b\xdb\xd2\x3a\ +\x31\x0b\x42\xd2\x14\xda\x92\xa4\x9e\xc5\x27\x22\xb6\x14\x82\x80\ +\x48\xed\x55\xc7\x4c\xe2\x31\x6f\xea\x37\x50\xad\x10\x19\x6e\x2c\ +\x08\xf2\xe1\x38\xcc\x66\x52\x10\xd3\x6a\x72\x2a\x4a\xca\x52\x38\ +\x19\x3c\x9c\x55\x8e\x06\x72\x3e\x6a\x6f\x71\xd0\x79\x91\x9c\x77\ +\x54\xc9\xc7\x74\x1e\xe0\xd2\xb3\x83\x85\x8c\x10\x79\xf6\xa4\xa1\ +\x2a\x50\xc1\xe6\xbd\xdc\xa6\xfe\xf7\x23\xf9\x52\xe4\xae\xc7\x45\ +\xd9\x6a\x68\xbd\xc4\x0f\x33\xe2\x24\x1c\x8e\xf5\x1f\x03\xca\x52\ +\x47\x63\x52\xe6\x76\xbc\xca\x93\xc6\x08\xa8\xc5\xcd\xaf\xb3\x48\ +\x52\x48\xe0\x9e\x6b\x46\x1e\x7f\xe2\xf9\x19\xf1\x30\xff\x00\x25\ +\xcc\xc2\xde\xc9\x75\xc3\xc7\x03\xb5\x45\xfa\x8a\xe9\x4c\x67\x10\ +\x0e\x00\x18\xe2\xa7\x96\xa6\x36\xc3\x53\xa7\xdb\xd6\xab\x5e\xa6\ +\xbc\xa4\xb0\xe0\x4f\xb1\xab\x4e\x57\x52\xb7\x22\x99\x6d\x04\xfb\ +\x4a\xab\x48\x5b\x99\x7e\x45\xc2\xe4\xfb\x49\x71\x6d\x04\xec\xdc\ +\x32\x01\x51\x2a\x26\x90\x75\x77\xa4\xcd\xdd\xe1\xc5\xbb\x24\xbc\ +\xc4\xa0\x82\xa2\xe3\x4a\xde\xad\xbe\xc0\x1e\xff\x00\x4f\xa9\xa9\ +\x3f\x4d\xff\x00\x6f\x69\xbc\xb2\x17\xb5\xcf\xb3\x25\x63\x1c\xe0\ +\xa4\xed\x35\x68\xd9\x59\x55\xc2\xc7\x15\xc5\x36\x0a\xf6\x8d\xc4\ +\xa7\x3e\x55\x27\x07\xf8\x1a\xf2\x58\xba\x6d\xd6\xcd\x17\x67\xc8\ +\xf7\xb8\x4a\xbc\x3c\x24\x53\xd6\x3c\xd7\xc3\xee\x70\x55\xc7\x48\ +\x16\x1b\x75\xb6\x9d\x52\xd6\x96\x37\x95\xe3\x85\x1c\xf2\x9c\x7a\ +\x63\xb7\xd6\x99\x2c\xf0\x64\xb1\x71\x69\xef\x33\x61\xb2\x16\x16\ +\x7b\x12\x30\x71\xf5\xed\x5d\x29\xd4\xdb\x45\x90\x75\x21\x76\xd8\ +\x31\x3e\xc9\x19\xc8\x67\x73\xab\x04\x25\xd7\x82\xb2\x38\xf9\xc2\ +\xbf\x21\x54\xf4\xd8\xad\x89\x0a\x86\xc4\x73\xb3\xc5\xfd\xa9\xda\ +\x46\x13\xb8\x82\x9f\xa7\xb1\x1e\xdf\x14\xba\x18\xa9\xca\xf1\x96\ +\xa3\xb1\x78\x0a\x2b\x25\x4a\x6a\xd7\xd6\xdf\xc1\xd5\xdd\x2f\x6d\ +\xe6\xf4\x15\xb9\xf9\x61\x5e\x33\xc8\x0a\xf3\xfd\xe0\x9f\x4c\xfd\ +\x7b\xd4\xd2\x3b\x99\x39\x23\xbf\x02\x99\x2d\xed\x26\x2d\xae\x2c\ +\x74\xf0\xdb\x2c\x36\x84\x73\xc0\x4a\x52\x00\xfc\xb1\x4e\xb6\xce\ +\x52\x92\x52\x40\x3e\x6e\x7b\x0f\xad\x67\x8b\xd7\x41\x15\x5e\x66\ +\xd9\xe5\xc6\x02\xf2\xa9\xcc\xa3\x7b\x89\x18\x5b\x27\xfe\x14\x7b\ +\x56\xbb\x6e\xa2\x86\xe3\xe2\x2c\xa7\x44\x77\xf3\xfd\x53\xc7\x6a\ +\xd3\xf1\xcf\xde\x14\xf2\x0e\xe2\xa0\x92\x4e\x7b\x1f\x4c\x7d\x68\ +\x91\x6a\xb7\xcd\x63\xc2\x9b\x0d\x99\x20\x9c\x00\xe2\x01\xc5\x31\ +\x41\xa7\x78\xb2\x8a\x70\x92\xb4\xd7\xc8\x7b\xb6\x2a\x33\xad\xa5\ +\x4b\x42\x92\x30\x3c\xdb\x72\x83\xff\x00\x58\x7f\x8d\x3e\x43\x8f\ +\x13\x68\x29\x71\x93\xf4\x22\xab\xe6\x74\x15\x9c\x2c\xaa\x23\xf7\ +\x6b\x6a\xbb\x83\x0e\xe0\xe2\x06\x7e\x99\xc5\x2e\x6b\x46\x49\x48\ +\xca\x75\x96\xad\xd8\x3d\x3e\xde\x0f\xf1\x29\xad\x11\x9d\x45\xbc\ +\x7c\xc4\x4e\x8d\x17\xb5\x4b\x78\xaf\xb3\x64\xca\x4c\x64\x10\x4a\ +\x31\x84\xf2\x48\x1c\x0f\xa9\xed\x50\x8b\xbe\xab\x80\x89\x46\x06\ +\x9e\x8c\x35\x15\xdd\x27\x68\x6a\x39\xcc\x66\x0f\xf6\x9f\x74\x79\ +\x40\x07\xf7\x41\x26\x94\x3d\xa2\xec\x60\x03\x78\x93\x76\xbd\x60\ +\xfd\xdb\x85\xc1\xc7\x50\x4f\xca\x01\x09\xfe\x14\xe9\x19\xe8\xd6\ +\xd8\x3e\x04\x48\xb1\xe2\x46\x69\x39\x08\x65\xb0\x84\x0f\x6c\x01\ +\x51\x27\x37\xbd\x97\x9b\xfb\x2f\x32\x69\xc2\x94\x35\xd6\x5e\x4b\ +\xf9\x6d\xf9\x78\x91\x48\x1a\x6a\x4a\x25\x4a\xbd\x5f\x65\x7e\xb2\ +\xbc\xcd\x47\x87\x21\xf2\x30\x86\x9b\xff\x00\xe1\x34\x3f\x71\x3f\ +\xc4\xd2\x6f\xb2\x44\xb6\xc3\x10\x61\xa0\x36\xca\x09\xda\x90\x49\ +\x39\xfa\x9e\x49\xa7\x69\xf3\xa6\x5c\xde\xda\xd2\x8a\x00\x3d\xc7\ +\x14\x95\x36\xf0\xde\x56\xbc\xaf\x06\x93\x92\x37\xea\xa3\x53\xab\ +\x39\x7b\xcf\xe1\xcb\xbb\xe5\xc8\xdd\x08\x2d\x05\xb4\x04\xf9\x30\ +\x09\x39\xe7\x9a\x57\x75\x82\xa7\xa2\x2d\x3c\x1c\x8e\xc4\x52\xab\ +\x23\x71\xd6\xa6\xd0\xb5\x15\x73\x82\xae\xf4\xf3\x72\x8f\x1c\xa1\ +\x68\x6d\x3b\xa9\xaa\x92\x94\x6e\x67\x95\x4c\xb2\x48\xa6\xed\xfa\ +\x72\x12\xe4\xab\xf5\x60\x66\xd9\x76\x8c\xe2\x94\xdb\xc8\x4f\x95\ +\xe0\x7b\xa1\xc1\xea\x93\x81\xf2\x0e\x08\xe6\xa4\xf0\x35\x01\x43\ +\x88\xb7\xdf\x99\x55\xbe\x71\x00\x6d\x59\xce\xff\x00\x94\x9e\xce\ +\x0f\x91\xe6\xf7\x4f\xad\x21\xbf\xe1\x9d\x40\x51\x18\x6f\x3b\x72\ +\xe6\x0f\x20\xfa\x54\xa2\xc6\xe4\x3b\xed\xa9\x70\x6e\x71\x99\x94\ +\x13\xf7\xd0\xeb\x61\x49\x3f\x50\x7d\x6b\x2d\x34\xd3\xb4\x5e\xbe\ +\x46\xaa\xd2\x52\x8a\x75\x15\xd7\x9a\xfb\xae\xef\x95\xb5\x1b\xee\ +\x62\x33\xe5\x1f\x63\x9c\xd2\xf1\x9c\xed\x58\x18\xfa\x83\xda\x90\ +\xc9\x93\x1a\x23\x79\x9d\x3a\x2b\x00\x0e\x54\xe3\xe9\x48\xfe\x74\ +\xba\xe3\xd3\xcb\x14\x92\xa4\x34\xe4\xf8\xcd\xab\x80\x84\x3d\xb9\ +\x09\xfa\x05\xe7\x14\xdd\x1f\xa7\x71\x6d\xe0\x18\xb7\x4c\x14\xf6\ +\x5b\x90\x18\x5a\xff\x00\x32\x9a\xbc\x95\x5b\xeb\x1f\x93\xfb\xd8\ +\xac\x55\x1b\x7b\xff\x00\x34\xfe\x97\x19\x5c\xd4\x28\x90\x54\x8b\ +\x2c\x67\x6f\x2a\xce\x03\x88\xca\x23\x20\xff\x00\x79\xd2\x31\x81\ +\xec\x9c\x9a\xf1\x9b\x7b\xac\xb8\xa9\xd7\x19\x49\x99\x70\x29\xc2\ +\x56\x84\xe1\xa6\x12\x7f\x75\xa4\xfa\x0f\x75\x1e\x4d\x3d\xce\xd3\ +\xd3\x49\x0b\x76\xff\x00\x31\xc2\x83\x90\x14\xda\x00\xfc\x00\xed\ +\x49\x5a\x8b\x25\x08\x5a\x1d\x79\x2e\x8c\x79\x4e\xdc\x67\xe9\x8a\ +\xcf\x25\x2d\x9a\x25\xca\x0b\xdd\x67\x3e\x6b\xbb\x71\x3d\x7b\x8a\ +\x5b\x73\xc0\xdf\xb2\x5b\x25\x47\xca\x56\x13\xce\x3d\xc9\xc0\xf2\ +\x9e\x0f\x6f\x5a\x6b\xb6\xc7\x59\xbf\xdb\xdf\x71\xb6\x9b\xc9\x53\ +\xdb\x1b\x18\x03\xcd\x8f\xc3\xf1\xf4\xa7\x7e\xb4\x19\x11\xba\x95\ +\x6f\x9e\xc1\xca\xe1\x04\x1d\xbb\x41\x29\x0a\x47\x2a\xf9\x00\x81\ +\xf4\xc1\xa6\x7d\x2c\xbf\xb4\xdc\xd5\x29\x4a\x2b\x6c\x10\xcb\x27\ +\xb0\x20\x77\x35\x7a\x69\xce\x50\x5e\xb7\x37\xe6\x8d\x2e\x8d\xc4\ +\x54\x7d\x96\xf9\xa4\x8e\x9b\xe9\xab\xe5\xc8\xcd\xac\x81\xc7\x6c\ +\x55\xad\x15\x40\x34\x95\x2c\x8c\x63\xb6\x6a\xa4\xe9\xb8\x52\x61\ +\xb4\x84\x03\xda\xad\x9b\x74\x40\x5b\xdc\xe1\x2a\x24\x1e\xd5\xed\ +\x1c\x54\x29\x45\x33\xe7\x14\x6f\xb2\x37\x78\xc8\xc8\x39\x04\xfc\ +\x0f\x8a\xc9\x38\x3c\x83\x80\x79\xe0\x66\x94\x08\x8c\xad\x3f\x73\ +\xe0\x0a\x4a\xfc\x63\x1c\xee\x6c\xe1\x39\xe4\x7b\x52\x54\xa2\xdd\ +\x91\xa5\xc6\x4b\x56\x66\xbe\x53\x81\xdf\x04\x7d\x28\xa4\x57\x0b\ +\x83\x31\xe2\x93\xb8\x6e\xf4\x1e\x94\x53\xa1\x4a\x4d\x08\x9d\x58\ +\x27\xa9\x05\xd0\x2a\x6d\xad\x1d\x07\x23\x27\x2b\xec\x7d\x37\xab\ +\x9a\x79\x32\x54\xa2\x36\x34\x4f\x18\xed\x9a\x6d\xe9\x95\xbd\x4f\ +\xe9\x48\x4f\x3e\xaf\x29\xf1\x38\xcf\xfc\x62\xaa\x68\x98\xc8\x4f\ +\x01\xb4\x82\x3f\x9d\x68\xe2\xc6\x29\x23\x2d\x3a\x52\x94\x53\x23\ +\x09\x92\xa0\xbf\xda\x24\xa0\x64\x60\x91\xc7\xfa\xef\x4a\x52\xea\ +\x55\xca\x33\x82\x30\x38\xfe\x54\xf3\x26\x23\x0f\x34\x42\x92\x02\ +\x8f\xae\x3d\x2a\x29\x70\x9c\x8b\x3b\xea\x61\xc1\x9c\x9f\x2f\x35\ +\x78\x4d\x4f\x62\x27\x07\x03\x64\xbb\x7d\x8c\x5d\x99\xbb\xc8\xb6\ +\xc0\x55\xc1\xa0\x42\x25\x29\x94\x17\x53\xc6\x30\x17\x8c\x8e\x3e\ +\x6a\x37\x75\x6a\xdc\x1b\x4c\x28\x70\x62\xb1\x01\xb4\x96\xd1\x15\ +\xa6\x52\x96\x82\x79\x24\x04\x81\xb4\x02\x49\xe3\x15\x59\xf5\x3f\ +\x55\x5f\xb5\x0e\x95\xbc\xca\xb6\xc0\x2d\xda\xe2\x4f\x6a\x1a\xa6\ +\x09\x05\x0e\x15\x25\xf6\xc2\x88\x48\x4e\x36\xee\xf2\xfd\xec\xf2\ +\x4e\x31\x52\x4b\xb6\xa4\x9b\x67\x91\x7c\x71\x16\x96\x25\x31\x61\ +\x43\x6a\xb8\x17\x25\x86\x9c\x3b\xd3\xbb\x6b\x49\xda\x77\x14\xa4\ +\x85\x1c\x91\xdc\x01\xf1\x19\xe2\x98\xac\xc8\x92\x5a\x34\xb5\xa4\ +\x42\x54\x75\x5a\x20\x22\x1b\x87\x72\xe2\xa6\x3a\x03\x6a\x3f\x29\ +\xc6\x0f\x20\x7a\x7a\x0a\x75\x3a\x6b\x4f\x9b\x62\x2d\xa3\x4f\xda\ +\x97\x11\x0a\xdc\x98\xe6\x22\x0b\x49\x38\xee\x13\x8c\x67\x1e\xb5\ +\x16\x91\xaf\xcc\x08\x9a\x9d\x72\x60\x00\xbb\x3b\x4c\xbb\x15\x09\ +\x5e\x3e\xd6\x97\x9b\xcb\x47\xb7\x19\x5e\x53\xeb\xda\x90\xea\x0e\ +\xa5\x4e\x80\xe5\xd3\xec\xd6\xd6\x1e\x6e\xce\xd3\x4b\xb8\x93\x33\ +\x62\xb7\x29\x3b\x94\x86\x86\xd3\xbb\x6a\x4e\x4e\x48\xf6\xef\x53\ +\x9a\x21\x74\x59\xf6\x65\xc6\x81\x01\x31\x23\xc7\x69\x94\x20\x6d\ +\x42\x1b\x48\x09\x03\xd8\x01\xc0\xfc\x29\xa6\xc9\xa1\xac\xd1\xb5\ +\x15\xd7\x50\xca\x89\x1a\x6c\xfb\x84\x84\xc8\x4a\xdf\x8c\x85\x2e\ +\x31\x4a\x52\x9c\x21\x58\x24\x03\xb4\x1f\xad\x56\x6e\xea\x57\x2c\ +\x9a\xd7\x55\xdf\x24\xba\xf3\xb0\xa2\xda\x22\x48\x08\x4a\xb2\x0e\ +\x77\xe3\x68\xec\x0a\xb8\x1f\x95\x4b\x22\x75\x0e\xe9\x6f\x9a\x8b\ +\x75\xfe\xca\xcc\x49\x32\x60\x3d\x32\x19\x6a\x51\x75\x2a\x2d\x00\ +\x56\xd2\xc9\x42\x70\xa0\x14\x0e\x46\x47\x7e\x6a\xad\xc5\x92\xa4\ +\x9e\xe4\xd8\xc1\x80\xcc\x99\x0f\xbb\x6d\x88\xe3\xb2\x19\xf0\x5e\ +\x75\x4c\xa4\xa9\xc6\xc6\x70\x85\x12\x32\x53\xc9\xe0\xf1\xc9\xad\ +\x16\x8b\x25\xa2\x08\x2a\xb7\x5a\x60\x43\x6c\x25\x48\x08\x62\x3a\ +\x10\x02\x55\x82\xa1\xc0\xe0\x12\x06\x47\xc5\x57\xf6\x9e\xa0\xdd\ +\x6e\xcf\xe9\xf7\x66\x5a\x1b\x8b\x02\xfe\x4a\x62\x2d\x32\x8a\xdc\ +\x43\x9b\x0a\x80\x5a\x76\x80\x02\x80\x38\xc1\x3f\x3d\xf8\x46\xd7\ +\x51\x6f\x89\xb7\x43\xba\x37\xa7\xd2\xe4\x39\x57\x43\x6a\x6c\x09\ +\xb8\x70\xc8\xdc\xa4\xa4\xed\x29\xc6\xc2\xa4\xe3\x39\xc8\xce\x71\ +\xc7\x33\x9a\x3b\x91\x99\x16\x23\x7a\x77\x4f\xb4\xc3\x71\x98\xb2\ +\x5b\x58\x69\xb7\xfe\xd2\xd2\x5a\x88\x84\x84\x3a\x32\x03\x80\x01\ +\xc2\xf9\x3e\x6e\xfc\x9a\x4f\x36\xc7\x6d\x55\xc5\xb9\xb2\x6d\x70\ +\x9e\x94\xde\x3c\x39\x0e\x47\x4a\x9c\x47\xd1\x44\x64\x7a\x54\x65\ +\x1d\x45\x72\x24\x2d\x44\x9b\xcd\xb1\x0d\xcf\xb2\x3c\xcb\x2a\x66\ +\x3c\x8d\xe8\x7d\x4f\x04\x96\xb6\xa9\x49\x4e\x32\x54\x01\xc8\xe3\ +\xbd\x2e\x3a\xbe\x74\x68\x1a\xa1\x37\x4b\x6c\x31\x3a\xc3\x6f\x4d\ +\xc7\xc3\x8f\x33\xc6\x69\xf6\x94\x15\x8c\x28\xa1\x24\x10\x52\x41\ +\xc8\xf6\x3e\xb4\x39\xc1\x6e\x0a\xc4\xc6\xdc\xe4\x06\x64\xae\x58\ +\x89\x1d\x13\x1e\x4a\x50\xe4\x94\xb6\x90\xe3\x89\x4e\x76\x82\xac\ +\x64\x81\x93\x80\x7b\x64\xd3\xa4\x7b\x35\x89\x51\x19\x61\xbb\x4d\ +\xb8\x47\x66\x40\x94\xd3\x42\x32\x36\xb6\xfe\xe2\xaf\x11\x23\x18\ +\x0b\xdc\x49\xdc\x39\xc9\xce\x6a\xbf\x85\x74\xbc\x39\x7f\x83\x67\ +\x93\x69\x8b\x15\xdb\xb5\xb1\xcb\x85\xb0\xfd\xb4\xb8\x06\xcd\xa7\ +\x63\xde\x41\xb0\xf9\xd2\x7c\xbb\x87\x71\xcf\x72\x74\x5a\xfb\xa9\ +\xee\xda\x1e\x0d\xde\xf2\x23\xba\x89\x69\x52\xda\x71\xa5\x12\xb2\ +\x3c\x45\x82\x14\x36\x80\x9c\x60\x01\x82\x73\x4b\x79\x2a\x7b\xa3\ +\x61\x53\x2b\xb3\x45\x8d\x1a\xdf\x19\x13\xa4\xca\x89\x0e\x3b\x52\ +\x25\x14\x2a\x43\xed\xb4\x94\xad\xe2\x91\xb5\x3b\xd4\x06\x55\x81\ +\xc0\xce\x70\x38\xa7\x04\xc2\x51\x39\x2b\x39\xf5\x15\x53\x5a\xf5\ +\xac\xbd\x3c\x8d\x63\x39\xfb\x7a\x9f\x93\x1a\xff\x00\x12\x22\x9b\ +\x5d\xc1\x6e\xb5\x87\xbc\x34\x85\x20\x29\x23\x60\x09\x50\x25\x20\ +\x11\x9c\xf3\x8c\x54\xbb\x51\xf5\x07\xf5\x15\xfb\x51\xc1\x7e\xd8\ +\xe4\x86\x2c\x96\x44\x5d\x0a\x99\x5e\x5c\x74\xa9\x4b\x05\x18\xc6\ +\x00\x1b\x73\x9c\xfb\xd6\x59\xd5\x69\xd9\x1a\xa9\xca\x9b\x57\x97\ +\xad\xfe\xc4\xa5\x71\xdf\x68\x64\x28\xa8\x0e\xfc\x57\xa7\x0e\x23\ +\x6a\xb8\x35\x5d\xeb\xdd\x67\xaa\xe3\xf4\x86\x5e\xa9\xb6\xb3\x62\ +\x61\x4e\x18\xa6\x3b\xd1\x2e\x2a\x94\x03\x6e\xb8\x94\x12\x09\x69\ +\x23\x70\x2a\x48\xf5\x18\x2a\x3c\x10\x01\xb0\x62\xb5\x70\x5c\x06\ +\x9e\xb8\xa2\x33\x53\x79\xf1\x53\x15\xc5\x2d\xb1\xc9\xc6\x0a\x92\ +\x09\xe3\x19\xe0\x72\x6a\x23\x52\xef\x52\xfa\x37\x68\x9b\x2d\xca\ +\x2d\xaf\x61\x3d\x8f\x1f\x15\xaa\xff\x00\x04\x3a\xf2\x54\x79\xcd\ +\x64\xca\xb0\xf8\x51\xfa\x1a\x72\x9a\xcf\x8c\xd2\x76\xf7\x06\xac\ +\xe7\x92\xa2\x91\x68\xc3\x3d\x37\x11\x0b\x8d\x86\xad\xa1\x3d\x8e\ +\x3d\x6a\xad\xea\x04\x70\xb8\xaf\x15\x0e\x4d\x5b\x17\x4c\xa6\x38\ +\x18\xc6\x07\x35\x5c\x6b\x36\xc3\x91\x95\x81\xc0\xef\x5a\x30\xdd\ +\x64\xef\xcc\x4e\x21\x59\xa4\x51\x3a\x5e\xe6\xfd\x9b\x51\xcb\x8e\ +\xd9\xc7\x8a\xd2\xc0\x1e\xe0\x8e\x7f\x8e\x0d\x74\x96\x91\x2c\xb5\ +\xa4\x21\x3b\xb4\x1d\xcc\x25\x5f\xc2\xb9\x86\x79\x0a\xea\x84\x28\ +\x28\x20\x78\xb1\x1c\x52\x47\xf7\xb7\x63\xf9\x57\x42\x69\xb9\x92\ +\x1c\xd2\xf0\xd2\xd3\x4a\x79\x0d\xb2\x1b\x73\xc3\xee\x85\x27\x83\ +\x9f\xca\xb8\x18\xac\xaa\xa6\x87\xa4\xc0\x66\x9e\x12\x29\xf6\x90\ +\x6e\xa2\xdb\x2d\x31\x51\x3b\x50\xdc\x22\x46\x54\x85\x61\x4c\x25\ +\x4a\xe4\xed\xc9\xed\xec\x9c\x02\x4f\xcf\x35\x46\xda\x5b\x6a\xe0\ +\xf2\xda\x91\x19\x4c\xb7\x3d\x2a\x5b\x4a\x4a\xf2\x16\xde\xe5\x2b\ +\x23\x3d\xc8\xdc\xa1\xcf\x1d\xea\xe0\xfd\x24\xee\xae\x42\xd3\xb6\ +\x4b\x78\x8c\x8d\xb3\x56\xf2\x14\xeb\xec\x12\x84\xa3\xca\x92\x9d\ +\xde\xe4\x2b\x38\x1c\x9c\x7c\x55\x25\x6d\x75\x2f\xcc\x8d\x0d\xe0\ +\xd0\x54\x64\xa5\x2e\xb9\xbf\x07\x6e\xe2\x02\x07\xf6\x46\x55\x8e\ +\x7e\x6b\x8b\x51\x24\xda\x3d\x05\x2c\xd2\xa5\x19\xcb\xd7\x23\xa0\ +\xf4\xfc\xd7\x5f\xd3\x16\xc7\xdf\x42\x10\x4c\x74\x21\x41\x27\x39\ +\x21\x23\xf8\x1c\xd4\xb2\xd0\xbd\x91\xc0\x5a\x81\x07\x8e\xd5\x5d\ +\xd8\x5e\x77\xf5\x5c\x78\xc5\xb7\x37\x8e\x77\xa9\x7c\x0f\x4e\xde\ +\xfc\x7e\x15\x3d\xb4\x2f\xc4\x84\x56\x94\x85\x0d\xa7\x8f\x5c\x1a\ +\xad\x39\x5d\x98\xab\x44\x7e\x88\x77\x1d\xd8\x4e\xe3\xc1\x03\xb6\ +\x29\xca\x37\x86\x4e\xdd\xc4\x28\x77\x09\xef\xf9\xd3\x3c\x65\x2d\ +\x6c\xa5\x68\x4f\x95\x49\x03\x69\xe0\xfe\x3e\xd4\xec\xdb\xa8\x4a\ +\x37\x92\x00\x00\x7e\x15\xae\x0c\xca\xd0\xed\x1b\x68\x56\xe2\x53\ +\x8c\x71\x4a\x5f\x7c\x36\xd1\x50\x19\xe2\x9b\x22\x38\x92\x92\x07\ +\xaf\xc5\x23\xbd\x4c\x2d\x84\xb6\xd0\xdc\xe9\xe1\x29\x1e\xb4\xfe\ +\x22\x8a\x17\xc3\xcd\x2b\x19\x4b\x96\x15\x20\x23\x24\xac\xf6\x48\ +\xac\x2e\x4c\x2d\xfb\x6b\xd1\xe3\xe3\xc5\x29\xca\x72\x7b\x9a\xd3\ +\x19\xb4\xc3\x41\x79\xf5\x05\xc8\x5f\x2a\x23\xd3\xe0\x7b\x52\x29\ +\x93\xd0\xb2\x5a\x52\x94\x90\x53\xf7\xb3\xc8\x1f\x15\x55\xd6\xd5\ +\x8f\x4b\x55\x97\x90\xcb\x03\x51\x42\x8e\xb5\x44\x92\x92\xdc\x96\ +\xf8\x71\xb5\x70\xa0\x7d\xb1\x55\x6f\x5a\x75\x67\x5d\xa1\xcf\x42\ +\x74\x96\x9a\x44\x2b\x52\x87\xec\x9e\x44\x74\xc8\x75\xdf\xf9\x44\ +\xe4\x27\xe9\x8f\xc6\xad\x15\x96\x27\x36\x82\xfc\x44\x2c\xa0\x80\ +\x92\xa1\x95\x0c\x76\xe7\xbe\x69\xce\x04\x95\xf8\xff\x00\x64\xdb\ +\x2c\x6f\x19\x1c\x6e\x18\xa5\xaa\x52\x4f\x7d\x0d\xd7\xa6\xaf\xd5\ +\xf5\xdd\xfd\x32\xa6\xe8\x9f\x52\xb5\xa7\xeb\x98\xb6\x5e\xa2\xd8\ +\xd3\x6e\x99\x34\x91\x0a\x63\x69\xd8\x87\xd6\x06\x7c\x35\xa4\x12\ +\x12\xa2\x01\xc1\x18\xcf\x6c\x55\xcd\xab\x75\x1c\x4b\x4e\x9c\x9f\ +\x78\x96\xef\x87\x1a\x1b\x0a\x79\xe2\x0e\x4e\xd4\x8c\x90\x3e\x4f\ +\x61\xf3\x4c\xba\x8f\x4d\xb5\x31\xb4\xca\x8c\x86\x1e\x71\x0a\x0b\ +\x09\x5b\x78\x21\x40\xf0\x52\x7d\xea\x17\xaa\xa0\xde\xae\x50\x95\ +\x63\x93\x0a\x43\xcd\xc8\x50\x2e\x64\x8d\x84\x03\x9e\x7e\x38\xed\ +\x54\xa9\x39\xc2\xfa\x12\xa8\xd1\xaf\x28\xb8\xbb\x5b\x7b\xfa\x44\ +\x1f\xa7\x7a\xd6\xf9\x7e\x95\x37\x52\x5c\xe5\x45\x85\x69\x79\xd3\ +\x96\x1d\x21\x02\x33\x7e\x87\x79\xef\xf3\xee\x7b\x55\xc5\xd3\x1d\ +\x4d\x0e\xeb\x16\x74\xfb\x79\x2e\x43\x4b\xfe\x1a\x1d\x29\x20\x39\ +\x81\xc9\x4e\x7b\x8a\x88\x41\xb0\x5b\xa2\x43\x4c\x79\x16\xd6\xa6\ +\x25\x27\x62\x10\xe3\x23\xc3\x07\x19\xec\x46\x3f\x3a\x94\xd8\xee\ +\x31\x23\xb2\xcc\x56\xd8\x69\xa1\xfd\x5a\x5b\x42\x40\x49\x23\xdb\ +\x1d\xbf\xf2\xa4\x52\xa4\xe3\x2c\xcd\xdb\xb8\xd7\x8d\x95\x1a\x91\ +\xb4\x23\xd9\xeb\xc4\xb2\xa1\xca\x6a\x42\x4f\xad\x6a\x95\x93\xca\ +\x12\x0f\xb6\x7d\x69\x96\x14\x9f\x30\x52\x14\x38\x1c\xe3\xd4\x53\ +\xba\x1d\x4a\x9b\xee\x49\x27\xb7\xb5\x6d\x52\xba\xb3\x38\x4e\x19\ +\x5d\xc4\x92\x9b\xdc\x9c\x90\x01\x3e\x86\xa2\x77\x84\xa1\x93\xbd\ +\x43\x6a\x42\x87\x73\x53\x07\x16\x08\x50\x52\x8a\x89\x3c\xfc\x54\ +\x47\x54\xa9\x28\x8c\xe9\xc2\x31\x8f\x26\xef\x7f\x63\x59\xeb\x69\ +\x1b\x97\x85\xef\x63\x9d\xfa\xca\xcf\xeb\x0e\xa3\xbb\x1b\xc4\x6c\ +\x17\x22\x78\x1e\x13\x99\x0a\x2b\x09\xde\x95\x20\x8f\x5c\xff\x00\ +\xe8\x45\x45\x2d\x37\x2f\x07\x5e\xda\xf4\xd8\xf0\x8b\x6c\x47\x57\ +\x8a\x50\x80\x32\xf2\x93\x93\x9c\x13\x9c\x11\x8c\xf1\xce\x6a\x6f\ +\x75\xfb\x15\xef\x5d\xc8\xfd\xa7\x88\x44\xa7\x1b\x43\x78\xf3\x95\ +\xa1\x20\x00\x32\x3b\x8c\x8c\x11\xdf\x07\x8a\xa4\x2d\x17\x69\x0e\ +\x75\x34\x4d\x52\x9b\x42\xd3\x39\x59\xc1\xe3\xef\x10\x7f\xf4\xaa\ +\xe0\x9d\xe4\xdf\x61\xab\x1c\xbf\xf8\xf8\x5f\xed\xf4\x47\x71\x74\ +\xb8\xa7\xec\x8d\x93\xc9\xe3\xbd\x5b\xb0\x16\x36\x00\x0f\xe7\x54\ +\x4f\x4e\xe7\xa5\x2d\x60\x1f\xbb\xc8\xe6\xac\x2b\x66\xa3\xf0\xe7\ +\xb6\x16\xad\xad\xab\x8e\xfc\x57\xb2\x51\x75\xa9\x29\x1e\x0e\x9d\ +\x65\x07\x66\x4f\xb3\x8c\x67\xf9\x56\x32\x46\xe6\x17\x93\xdc\x11\ +\xcd\x69\x6a\x63\x0b\x48\x58\x70\x24\x7d\x6b\x5c\xb9\x49\x52\x7c\ +\x36\xb0\xaa\xca\xa1\x2c\xdb\x1b\x9c\xe3\x97\x71\x89\x9b\x58\x5b\ +\xa5\xc9\x4e\x65\x21\x5e\x50\x73\x45\x3c\xb6\xd0\x43\x78\xee\x73\ +\x45\x6a\x75\x5b\x7b\x99\x15\x18\xa5\xb1\x18\xe9\xf3\xad\x31\xa2\ +\x20\xad\xc2\x9d\xbf\xb4\xe3\x1f\xf1\xaa\xa9\x1b\x0b\x43\xcd\x85\ +\x21\x47\x18\xcf\x06\xab\x58\x93\x1c\x6f\x43\x5b\xa3\x34\xac\x29\ +\x5b\xfd\x7b\x7e\xd1\x54\xe3\xa7\xf5\x22\xe2\x36\x23\xbe\x14\x52\ +\x39\x0a\x35\x78\xd1\xbc\x2e\xb7\x15\x1a\xd6\xb2\x7b\x13\xb2\x0e\ +\xd3\x9c\x1f\xad\x43\xb5\x0c\x58\xf2\xaf\x00\xad\xad\xdb\x79\xc7\ +\xcd\x2e\x1a\x8d\xb9\x67\xc2\x8a\x09\x50\xe0\xd1\x1d\xa5\x29\x65\ +\xc5\x11\xe2\x2b\xb9\xc5\x32\x94\x1c\x75\x65\x6a\xcd\x4b\x44\x55\ +\xb7\x5d\x07\xa9\x57\xa7\x2f\x7a\x62\xd8\xfd\xa1\x16\xab\x85\xcf\ +\xf5\x83\x4e\xbe\x56\x97\x9a\xcb\xa9\x78\xb5\xb4\x24\x82\x37\xa7\ +\x85\x6e\xc8\x07\xb1\xa7\xf9\x3a\x5e\x6c\x5d\x67\x78\xbd\xb1\x64\ +\xd3\x57\xa6\x6e\xfe\x13\x8e\x22\xea\x8c\x2e\x3b\x88\x46\xc2\x52\ +\xaf\x0d\x7b\x92\x40\x49\xdb\xe5\xe7\x3c\xfa\x54\xd5\x6a\x6d\xbc\ +\x85\x3a\xda\x48\x04\xe0\xab\x1c\x7b\xfd\x2b\xd2\xa4\x85\xa1\x2a\ +\x52\x7c\xfc\x0f\x92\x39\xc0\xfc\x2a\x5d\x28\xbd\xc4\x25\x62\x35\ +\xad\xba\x72\xad\x5d\xac\x6c\xd7\x8b\x73\xb0\x22\xda\x9b\x65\xb6\ +\x6e\x91\xd5\xb9\x2b\x75\x2c\xb9\xe2\xb1\xb0\x24\x60\xe1\x79\x07\ +\x24\x71\xef\xda\xa1\x37\xcd\x19\x2e\xcf\xac\x2e\xf3\x22\xd9\xec\ +\x57\x56\xae\x05\xb5\xa9\x37\x24\x10\xb6\x16\x94\xed\x25\x27\x62\ +\xf7\x24\x80\x38\xe3\x9c\xf3\x56\xe5\xa7\x50\xdb\x2d\xfa\xa2\x2d\ +\x8a\x44\xd4\xb7\x2e\x5b\x4b\x75\xa6\x94\x71\x94\x20\xa4\x12\x4f\ +\x61\xca\xd3\x8c\xf7\xe7\x1d\xa9\x46\xb0\x44\x34\xcc\x57\x8e\xa4\ +\x23\x29\xca\x94\xae\x31\xf3\x9a\x4c\x16\x5a\x8e\x1c\xb7\x1f\x38\ +\x46\x70\xe2\x2d\xef\xa9\x50\xdc\xf4\x8a\xaf\x2f\xea\x94\x49\x76\ +\x3b\x30\xef\x36\xb8\xd0\xe3\xf8\x69\x25\x6c\xad\xa2\xa2\x14\x53\ +\x80\x36\x82\x53\xc0\x3e\x87\xb5\x21\xbb\x58\x6f\x93\x26\xb7\x7a\ +\xd4\x0e\x40\xdd\x6e\xb6\x48\x66\x33\x51\x14\xa5\x78\x8e\x38\x90\ +\x16\xe1\x25\x23\x6f\x09\x18\x48\xcf\x7e\xf5\x65\x26\xda\xf1\x07\ +\xec\xcb\x42\x9b\x3c\x82\x0f\x1f\x5a\xc5\x30\x43\xa8\xf1\xd6\xf3\ +\x65\x19\xc0\x5e\xf1\x8c\xe7\xd0\xfd\x6b\x46\x48\x99\xf2\x95\xc7\ +\x4c\x6c\xb7\x59\x76\x7d\x17\x2a\xee\xcc\x58\xb0\xac\xcc\x07\xd9\ +\x65\xb5\xad\x4f\x3c\xef\x85\xb1\x25\xc0\x52\x9f\x0f\x68\x52\x8e\ +\xd1\xbb\x24\x0e\x6b\xd6\x34\x6d\xf5\x3a\x7e\xd3\x6b\x0f\x43\x53\ +\x90\xb5\x22\x6e\xce\x10\xb5\x6d\x2d\x07\xd4\xe6\x07\x97\xef\x61\ +\x5d\x8e\x06\x7d\x6a\x6f\xac\xee\x28\xd2\xba\x6a\x4d\xe6\x42\x54\ +\xf8\x8e\x5a\x0a\x61\x0a\x01\x67\xc4\x75\x2d\x03\xcf\xa6\x55\xfc\ +\x2a\x45\x0d\x31\x23\x6e\x3e\x2a\x56\xb0\x76\xf0\x73\x83\xed\x50\ +\xa1\x1d\x81\x45\x6c\x44\x9b\xe9\x44\xbb\xe3\x5a\xd6\x4c\xd9\x10\ +\xd9\x4d\xed\xc8\x2f\xdb\xd4\xa0\x5c\xf0\x9c\x8e\x84\xff\x00\x5a\ +\x92\x00\xda\x54\x9c\x10\x09\xca\x49\xec\x69\xca\xf3\xa6\x6e\x57\ +\x3d\x1d\xa8\xac\x8c\xd8\x74\xa5\x8e\x5c\xf8\x2a\x8a\xd3\x96\xe2\ +\xad\x8b\x24\x28\x12\xe1\xf0\x92\x42\x73\xb4\x81\x85\x63\x9e\x4f\ +\x73\x65\x30\xeb\x66\xd0\x4b\x4a\x07\x1c\x1c\x73\x83\xfe\x8d\x44\ +\xb4\x1e\xa3\x8d\xaa\x74\x6c\x0d\x48\xcc\x75\x45\x66\x62\x54\xb4\ +\xa1\xd5\x02\x53\x85\x94\xe0\x9f\xc2\xb1\x2b\x4a\x4d\xb3\x6c\xa9\ +\xc2\x09\x45\x73\x5e\xbf\x91\xa9\x1a\x4a\xe2\x35\x8e\x96\xbc\xaa\ +\x44\x6f\x02\xd3\x6b\x7a\x1b\xe9\xde\xad\xea\x5a\xc3\x60\x14\x0d\ +\xb8\x29\xf2\x1e\xe4\x7a\x71\x58\xf4\xc7\x4f\xdd\xf4\x8e\x89\x66\ +\xc3\x76\x30\x5d\x66\xda\x85\x06\x24\x45\x71\x6b\x53\xa8\x2b\x52\ +\x89\x52\x0a\x06\xd3\x82\x38\x05\x59\xe6\xa6\xe9\x04\x27\x3d\xa9\ +\x93\x42\xea\x38\xda\xaf\x49\xc7\xd4\x0c\x30\xe4\x56\x5e\x53\xc9\ +\xd8\xea\x81\x29\xf0\xdc\x5b\x64\x93\xdb\x19\x41\x3f\x8d\x32\xf6\ +\x77\x2b\xc3\x8d\xfb\xff\x00\xa2\xbc\xb5\xe9\xb9\xba\xc6\x1e\xbd\ +\x10\x56\x62\x7d\xb6\xf7\x0e\x5d\xb6\x44\xa6\x56\x86\x9e\x54\x74\ +\x34\x79\x04\x05\x14\x12\x92\x9c\x81\xf2\x33\x8a\x9a\xdb\x34\xe6\ +\xab\x6b\x58\xdd\xb5\x74\xc1\x63\x32\xa7\x5b\x19\x86\xdc\x24\xbe\ +\xea\x9a\x6c\xb6\xb2\x4e\xe7\x0b\x60\xa8\x10\xa5\x1c\xed\x18\xe0\ +\x63\xd6\x9d\xf5\x1d\xda\xdb\x60\xb6\x2a\xe7\x71\x96\x98\xd1\xc2\ +\x90\xd8\x51\xe7\x2a\x5a\x82\x52\x00\xf5\xc9\x50\xfe\x75\xb5\x99\ +\xaf\x3a\x93\xb1\xe4\xad\x27\x21\x25\x2a\xc8\x35\x4e\x0e\x77\x74\ +\xc9\x8b\x8d\x3d\x1e\xff\x00\xdf\xdd\x95\xb5\xcb\xa7\x57\x27\x74\ +\xee\xaf\xb6\x47\x55\xa2\xd0\xe5\xfe\x4c\x49\x11\xed\xf1\x16\xb5\ +\xc3\x88\xb6\x16\x85\x93\xbb\x62\x4e\x5c\x28\xf3\x10\x81\xd8\x71\ +\x57\x1d\xa5\x73\x5d\xb7\x34\xbb\x9b\x11\x98\x96\xa0\x7c\x46\xe3\ +\xbc\x5d\x6d\x3c\x9c\x00\xa5\x25\x24\xf1\x8f\xdd\x14\xc4\x41\x27\ +\x27\x93\xeb\x4f\xd6\xc5\x97\x23\x8f\x5c\x54\x56\xa4\xa1\x14\xd1\ +\x7c\x33\x59\x9f\xaf\x5b\x89\xa5\x24\xb5\x21\x24\x7a\xf6\xa7\x78\ +\xe7\x2c\xa7\xd6\x91\xcd\x6b\xc4\x6f\x3d\x88\xf5\xa5\x51\x01\x0c\ +\xa7\xe9\x49\xa9\x2c\xd1\x46\xba\x6b\x2c\xd8\xd3\xa9\xe4\xa2\x34\ +\x52\xb7\x15\x84\x81\xde\xab\x1d\x4f\x7b\x86\xa8\x25\x40\xad\xb0\ +\xe0\xf2\xf8\xa8\x28\xdd\xff\x00\x6b\x15\x64\x6a\x14\x78\xaf\xa1\ +\x2b\xfb\x83\x9a\xab\xba\xb3\xe1\xae\xd8\xea\x40\x68\xa8\x24\xed\ +\x0b\x4e\xe0\x48\xf4\xc5\x6c\xa5\x25\x4e\x95\xd9\x86\xbe\xb5\x19\ +\xcd\xda\xb6\xfb\x1a\xdd\xd5\xcb\x15\xd6\x42\x81\x87\x1e\x42\x1a\ +\x90\x73\x82\xde\xf2\x41\x27\xe0\x12\x93\xf4\xae\xae\xb1\xdb\x90\ +\x9b\x8a\x9c\x86\xe3\x8c\xa1\xd6\xf3\x2d\xb4\xab\xca\xb2\x7b\x1c\ +\x7b\x90\x2b\xe7\xf6\xb6\xb9\x3f\x32\xec\xfc\x2b\x82\xd4\x70\xa2\ +\x83\xea\xa4\x1c\xf0\x01\xf5\x1f\x35\xd4\x5f\xa2\x97\x58\x2d\xb7\ +\xc8\x0d\xe9\x1d\x45\x31\x98\xb7\xe8\xa9\x4b\x71\xd4\xf3\x9b\x44\ +\xd6\xd2\x36\x8c\x13\xdd\x60\x0e\xdd\xcf\xcf\x35\xe7\xab\x6b\x3c\ +\xdc\x8f\x57\x83\x83\x86\x1d\x53\x4f\x5f\x5e\xbf\xa2\xde\xeb\x2e\ +\x97\x7b\x57\x68\xa7\xed\x4c\x1c\x2d\x01\x4a\x6d\x0d\xaf\x6a\x95\ +\x84\xe4\x00\x4f\x03\x90\x9e\x6b\x92\x93\x19\xbb\x73\xef\x5b\xe4\ +\xb4\x4b\x81\x28\x54\x84\x2f\xca\x5a\x52\x07\x27\x38\xe7\x68\xc9\ +\xf9\x27\xd6\xbb\x88\xa3\xc5\x5e\xe2\x46\x48\xda\x77\x77\xae\x48\ +\xeb\x35\x85\x7a\x63\x5f\xcf\x43\xa9\x57\x85\x31\x2a\x53\x4a\x24\ +\xa8\x39\x9c\x73\xcf\xb9\xdc\x08\xf4\xe7\xe2\xb9\xd8\x98\x38\xbc\ +\xcb\x99\xd3\xe8\xea\x97\x83\xa2\xde\xda\xaf\xa9\x24\xd0\xf2\x57\ +\xf6\x19\x31\x5d\x59\x40\x12\xfc\x45\x21\x44\xe4\x6e\x27\xca\xaf\ +\x9c\x72\x40\xc7\x35\x65\xe9\xd2\x0b\x45\x09\x75\xc5\xa3\x76\x7d\ +\x89\x1f\xe5\x55\x26\x88\x9c\xa9\x53\xdc\x5e\xc6\xc2\x6e\x4d\x26\ +\x42\x80\x56\xe5\xf8\xa0\x04\x3b\xdf\xfb\xd9\xe2\xad\x9b\x11\x2d\ +\x24\x2d\x40\x05\x27\x29\x20\x7f\x64\xfb\xfb\xd6\x5a\x6b\xac\x18\ +\x84\x49\xe3\x24\x36\x85\x25\x38\xca\x8e\x4e\x07\x39\xcd\x28\x8c\ +\x0a\xdb\x4a\x82\x46\x3b\x8f\xce\x91\xc5\xe4\x11\xb9\x58\x4e\x55\ +\xbb\x07\x38\x22\x9c\x60\x92\x12\x12\xb4\x8e\x3d\xfb\x1c\xd6\xb4\ +\x60\xbd\x85\xab\x05\xa6\x14\xb3\xf7\x12\x33\x4c\xec\xba\x23\x95\ +\xcd\x77\xcf\x25\xc2\x43\x69\xfe\xc0\xc7\x6f\x83\xf3\x4f\xb2\xd1\ +\xba\x1a\x53\xc9\x0a\x50\xdc\x3d\xc5\x31\xbe\x94\xf8\x86\x43\xdb\ +\x90\x9c\x04\xa9\x27\xdf\xd0\x7d\x39\xef\x53\x2d\xef\xd8\x10\x77\ +\x42\x37\x5c\x7e\x79\x4b\x89\x3b\x02\xd3\xc7\xb9\x1e\xf5\x93\x36\ +\xf4\x85\x79\x80\xd8\x57\xc9\x2a\xf5\x1d\xbe\xbc\xd4\x57\x5d\xf5\ +\x33\x4f\x69\x47\x4b\x32\x64\xa5\x52\xd6\x8f\x2a\x00\xe7\x1c\xfa\ +\x0f\x4a\x68\xd2\x57\x4d\x5f\xad\xae\xf3\x6d\x50\xa3\xaa\xd0\x98\ +\xad\x36\xf2\x95\x35\xa5\x00\x42\xf3\xb4\xa1\x39\x1e\xd4\x3a\xb0\ +\x86\xb2\x7a\xf9\x9d\x28\x60\x2b\x3a\x5c\x59\x75\x61\xda\xcb\x2d\ +\x86\xa0\x21\xc2\xd1\x90\xd2\x55\x8c\x95\x77\xcf\x34\xa9\x95\xc1\ +\x53\xa1\x96\xe5\x0e\x33\xc6\x7b\xfe\x35\x03\xb2\x74\xc3\x5c\xc9\ +\xba\xca\x1a\x83\x5a\x2e\x2a\x07\xf5\x62\x13\x0d\xe1\xc4\x9f\x5e\ +\x47\x1f\x4e\x69\xce\xd1\xd2\xbd\x47\xfa\xee\x6b\x12\x75\xb3\x8b\ +\x86\xd8\x49\x8e\x44\x54\x95\x9c\xe7\x3b\xfb\x0e\x38\xed\x5a\x21\ +\x59\x3d\x14\x5f\xaf\x88\xba\x94\xb0\x91\xbd\xeb\xa7\x65\xd8\xfe\ +\xc4\x95\xa6\x7c\x55\x9f\x09\xe6\xd6\x1b\x00\x10\x97\x33\xc6\x73\ +\x9a\x45\x71\x88\xda\x9d\x54\x97\xd7\x1d\x21\x03\x81\xb8\xa4\x1f\ +\xfc\xe9\x9e\x67\x4c\x75\x5f\xeb\x76\x58\x8d\xa8\x60\x3b\x15\x6d\ +\xab\xc5\x71\xd8\xca\x4b\x89\xc7\x60\x36\xab\x9c\xd6\xa9\x9d\x20\ +\xbf\xa6\x4c\x7f\xb3\x6a\xb4\x96\x94\xb2\x97\x52\x5a\x51\x50\x49\ +\x07\xee\xe4\x91\xdf\xde\x87\x34\xd7\xba\xfe\x5f\x92\xb1\xf6\x44\ +\xee\xeb\x2f\x93\x17\x07\x6d\xe1\x94\x25\xb7\x9b\x2d\x9e\x30\x55\ +\xc2\xb8\xf7\xf7\xf9\xa6\xf7\xed\x8c\x78\x61\xe8\xea\x0a\x03\x27\ +\x28\x19\x1c\xf7\xff\x00\x3c\xd3\x64\xfe\x9a\xeb\xe7\x6f\x2f\xc7\ +\x81\xa9\x5a\x54\x36\x9a\x07\xc6\x75\x94\xf2\xb2\x78\x4e\xd0\x3b\ +\x62\xaa\x88\x7d\x40\xbc\x58\xef\x8e\x5a\xaf\xa9\x11\xa5\xb6\xe1\ +\x48\x09\x27\x6a\xfb\xe3\x8f\x91\x59\xe5\x56\x12\x79\x6c\xd3\xef\ +\x47\x46\x86\x06\x38\x84\xde\x1e\xa2\x93\xec\xf1\xf1\xb1\x77\xd8\ +\xe5\xba\xdb\xe9\x43\x99\xc0\x59\x0a\xf6\xed\x53\x0b\x73\x9e\x2b\ +\x67\x1d\xfd\x88\xee\x2a\x07\xa4\x5d\x5d\xee\x3a\x1e\x4a\x02\x14\ +\x51\xe2\x2d\x03\xb6\x3d\xbf\x1a\x96\xe9\x54\x38\xea\xc9\x42\x89\ +\xf0\xcf\x23\x18\xdc\x08\xff\x00\x0a\xa4\x1b\x5a\x33\x97\x88\x86\ +\x59\x34\xf7\x42\xa9\x6a\x48\x56\xd5\x70\x73\x9c\x0a\x85\xea\xb9\ +\xa0\x45\x74\xab\x01\x09\x49\x25\x47\xd3\x15\x2f\xbc\x2d\xa4\x29\ +\xd2\xb4\xe0\xa4\x77\x57\x63\x9a\xac\x7a\x93\x34\x43\xd3\x13\x9d\ +\x5a\xc2\x56\x52\x4b\x64\x9f\x55\x70\x08\xf4\x3c\x9a\x4e\x22\x4e\ +\xd6\x2b\x45\x5e\x48\xab\xba\x6c\xfc\x4b\x9d\xfd\x53\xfc\x35\x96\ +\xa2\x25\xdb\xa3\x8f\xa9\x39\x49\x58\xdd\x8f\x4e\x78\xc8\xfc\x2b\ +\x9b\x2d\xab\x4b\x97\xf5\xaf\x79\xfd\xa3\x8a\x70\x1e\xdd\xce\x45\ +\x5c\x1a\xab\x57\xc2\xb6\x69\x39\xda\x77\x4a\x2f\xed\x17\xcb\x8c\ +\x77\xff\x00\x59\xba\xda\xbc\x36\x58\x64\x27\x7b\xbb\x72\x7e\xf9\ +\x48\xc6\xd1\xdb\xd3\x92\x2a\x97\x69\x6f\xb7\xe1\xc9\x79\x95\xe1\ +\x01\x28\x0a\x50\xc2\x7b\x70\x3f\x2e\x6b\x6e\x06\x8b\x50\x93\xed\ +\x27\xa4\x2b\xc5\xd5\x82\xff\x00\x5d\xce\xab\xd1\x3a\xa3\xec\xf6\ +\x98\x2f\x3a\xb0\x15\x25\xa4\xed\xc1\xfb\xd8\x1c\x91\x52\xc9\xfa\ +\xb5\x94\x4e\xb2\x41\x65\x64\xc8\x9d\x28\x20\x25\x3d\xc3\x69\xe5\ +\x4b\x23\xdb\xd2\xb9\x3e\xcd\xad\x1e\xb7\x5b\x7c\x36\xd2\x65\xcd\ +\x07\x6a\x1c\x5e\x4a\x50\x8c\xf0\x94\x8f\x41\x9c\xf1\xc7\x3e\xf5\ +\x62\xf4\x9e\xe1\x24\xdc\x57\x74\x92\x97\x6e\x37\xd9\x3e\x44\x04\ +\x72\x23\xb6\x0f\x61\xe8\x9f\xc6\xb7\x55\xc5\x55\xa5\x45\x41\x7a\ +\xfc\x1e\x62\x78\x05\x79\x54\xde\x28\xeb\xeb\x54\xe5\x3e\x86\xd8\ +\x4a\xce\x4e\x33\xcf\x02\xa6\x76\xf4\x06\x9a\x4e\x72\x4e\x39\x26\ +\xaa\xbe\x9d\x6f\x0e\x0f\x1d\xd4\xad\xce\xe7\x6f\x61\xf4\xab\x3e\ +\x2b\xa9\xc6\x49\xf4\x1d\xf9\xae\xec\x33\x4a\x8c\x6e\x72\xe9\x68\ +\xf5\x16\x49\x92\x96\x5a\x0a\x3c\x9a\x29\x39\x47\xda\x9c\x39\x00\ +\xa5\x23\x91\xef\x45\x11\x8d\x34\xba\xc3\xdc\xaa\x37\x78\x95\x3d\ +\xa1\xc5\x39\x68\x82\x33\x84\xa0\x2f\x1f\xfe\xe2\xa9\x44\x8d\xbe\ +\x63\xb7\x1c\x7d\x4f\xfa\xef\x49\x74\xf0\x26\xcf\x18\x0e\xf8\x73\ +\xd3\xfe\x31\x54\xaa\x50\xdc\x84\x8c\xe4\x9f\xe3\x5a\xa1\xee\xa3\ +\x0a\xd8\x90\x69\x48\xa1\xb8\xc5\xcd\x99\x2a\xef\x4e\xef\xb9\xe1\ +\x34\xa5\x9c\x80\x3b\x7c\xd6\xab\x33\x61\x10\x90\x12\x79\x29\xac\ +\x24\x61\xc9\x29\x63\x90\x3b\x9e\x3b\x55\x89\x39\xeb\x52\x3d\x6f\ +\x93\xa3\x75\x5d\xc6\xed\xe0\x0d\x46\x35\x1f\x84\x87\x16\x47\x8e\ +\x94\xf8\xe8\x4a\x5b\x49\xfb\xde\x1f\x81\x9c\x0e\xc4\x66\xa6\xb7\ +\x88\xf6\x59\xfa\x8b\xa8\xee\x6a\x94\xc7\x5b\xd0\x22\x34\x61\x2a\ +\x47\x78\xd1\xfc\x00\xa0\xb6\x89\xfb\xa4\xb9\x92\x54\x9e\x77\x00\ +\x3d\x05\x48\xf5\x2f\x4d\xdb\xd4\x17\x55\x29\xf9\xea\x79\xa5\x3c\ +\x97\x1c\x69\x31\x59\x42\xd6\x10\xa0\xa4\xb6\x5d\x08\xdc\x50\x14\ +\x91\xc6\x73\xc7\x7a\x95\x4b\xd2\xd1\x66\xb8\xd4\x9b\xdd\xaa\x0c\ +\xa7\x18\xe5\xa7\x1e\x8e\x95\xa9\xbf\xf9\x24\x8e\x3b\xfa\x56\x7c\ +\xba\xea\x51\x52\x93\xd6\xc5\x6f\xa1\x61\xb3\x73\xea\x56\x86\x95\ +\xa9\x61\x44\x7e\x63\xba\x4d\x4e\xc9\x54\x96\x92\x54\xb7\x53\xe1\ +\x61\x4a\xc8\xe5\x63\x93\xf1\xcd\x48\xfa\xcf\x74\x87\x2a\xf5\x66\ +\xb3\xb9\x68\xb7\xdc\x9f\xb8\x4a\x52\x23\xfd\xbf\x1f\x67\x65\x48\ +\x6d\x4a\x2b\x3c\x1f\x36\x32\x12\x07\x24\x9e\xe2\xa4\x37\xb4\xda\ +\x27\xa1\x86\xe4\x5a\x60\x4c\x72\x32\x8a\xd9\x72\x44\x74\x38\x5a\ +\x51\xee\x50\x54\x0e\xd3\xf2\x29\x04\xfb\x6c\x0b\xa4\x6f\x06\xe9\ +\x06\x2c\xd6\x77\x6e\xf0\xe4\x34\x97\x13\xb8\x76\x38\x50\x23\x35\ +\x31\xa4\xd4\x9c\x86\x37\x68\x64\x44\x2f\xa1\xd2\x25\x33\xa7\x2e\ +\xec\xb4\xeb\x4a\x8f\x1a\xf9\x31\x96\x10\xca\x8f\x82\x86\xc2\xf2\ +\x12\xdf\xf7\x39\xe3\xe0\xd4\x66\xe7\x19\xcb\x8c\x2b\xb7\x4e\xa2\ +\xa9\xc4\x3d\x6d\xb8\xcf\xbc\x32\x1b\x27\x29\x6f\xc1\x0e\xc7\xfc\ +\x3c\x69\x23\x8f\x5f\x0f\xeb\x57\x0c\x68\x71\x62\x21\x48\x8b\x19\ +\x98\xe9\x70\x82\xb4\xb6\xd8\x48\x2a\xc0\x19\x38\xf8\x00\x67\xe0\ +\x52\xad\x3b\x6a\xb7\xa6\x74\x8b\x92\x61\xc7\x13\x1d\x40\x6d\xc9\ +\x01\xa4\xf8\x8a\x48\xec\x92\xae\xe4\x0f\x6a\xb4\xa9\xf5\x52\x65\ +\x14\x2f\x64\x51\xfa\xda\xe4\x8d\x5b\xa0\x75\x76\xae\x6c\xe6\x3c\ +\xe3\x6b\x84\xc1\x07\x90\x84\x38\xca\xd6\x07\xb7\xed\x5e\x70\x7d\ +\x51\x4b\xb5\x94\x25\x69\xed\x51\xaa\xa2\xe9\x88\xe8\x80\x4e\x8c\ +\x12\x7c\x28\xa8\xd8\x0b\x89\x79\x68\xf1\x00\x1f\xbc\x10\x3b\xf7\ +\xe2\xad\x56\x74\xed\x8d\x98\x8e\x5a\x51\x68\x80\x9b\x76\xed\xc6\ +\x20\x8c\x8f\x07\x21\x41\x40\xec\xc6\xdc\xee\x00\xf6\xef\xcd\x2f\ +\x4c\x18\x5f\xac\x0d\xc0\xc4\x8f\xf6\xc2\xc8\x64\xbf\xe1\x8f\x10\ +\xb6\x0e\x42\x37\x63\x3b\x72\x49\xc6\x71\x93\x51\xc2\x2a\xe1\x72\ +\x17\xa4\x9a\xb2\xc2\xd7\x7a\x05\x8d\x26\x88\xcc\xa6\x6d\xb2\x51\ +\xb8\x88\xa7\x1f\x68\x8e\x1a\x4a\x9b\x71\xdc\x7d\xe5\x78\xa4\x61\ +\x4a\xe4\x95\x2a\xa1\x1a\x11\xb9\x73\x6c\x9d\x32\xb4\xbb\x0e\xd9\ +\x36\x03\xb6\xd9\xeb\x6a\x3d\xcd\x65\x31\xde\x90\x1d\xc7\x20\x25\ +\x5b\x96\x94\x12\x52\x08\xf5\x26\xae\xcb\x45\xaa\xd9\x68\x92\xec\ +\xab\x55\xb2\x14\x27\x9e\x20\xba\xa8\xec\x25\xb2\xe1\xfe\xf1\x03\ +\x9f\xc6\x97\xc7\xb3\x69\xfb\x85\xa9\xbb\x13\xd6\x0b\x59\xb7\xb5\ +\xfd\x54\x43\x11\x05\x94\x77\xec\x8c\x6d\x1d\xcf\x61\xea\x69\x33\ +\xa2\xe2\xdc\xb9\x0e\x8c\x73\x59\x7a\xe5\xf6\x1b\xfa\x63\x6a\x9d\ +\x60\xd0\xf1\x2d\x17\x29\x91\xa5\xb9\x1c\xba\x96\xdc\x8e\xe2\x96\ +\x80\xd1\x71\x45\x08\x0a\x57\x27\x68\x21\x3f\xf5\x6a\xa0\xd0\x4d\ +\xb5\x22\xc3\xd3\x28\x17\x64\xa1\xdb\x1c\xbb\x8d\xdb\xc7\x65\xee\ +\x59\x75\xf4\xba\xe9\x61\x2b\x1d\x8f\x3b\xc8\x07\x82\x40\xae\x88\ +\x8b\xa7\xa3\x43\x88\x86\x22\x34\xd4\x76\x1b\xe1\xb6\x9a\x40\x4a\ +\x12\x3e\x00\xe0\x73\x49\x17\xa7\xec\x66\xc6\x6c\xa6\xcd\x6e\xfd\ +\x5c\x92\x4f\xd9\x3e\xcc\x8f\x07\x24\x95\x13\xb3\x1b\x79\x24\x93\ +\xc7\x72\x4d\x2f\x34\x5f\xba\xc7\xcb\x0f\x2d\x2f\xa5\xbf\x05\x0b\ +\xa9\x63\x43\x3a\x37\x56\xc4\x61\x98\xee\xd8\x60\xeb\x08\x88\xb7\ +\x82\x90\xa6\xd8\xca\xd9\xf1\x90\xde\x78\x4a\x02\x94\xa1\x81\xc0\ +\xc9\x15\x7a\xa6\x14\x48\x28\x6d\x88\x2c\x31\x1a\x3a\x01\x4a\x1a\ +\x65\x01\x28\x4f\x3c\x80\x07\x03\x9a\xdb\x1e\xd1\x69\x55\x98\xd9\ +\xd5\x6c\x82\x6d\xc5\x3b\x0c\x42\xc2\x3c\x12\x33\x9c\x6c\xc6\xdc\ +\x67\xe2\xb2\x72\x0c\x48\x10\x99\x89\x06\x2b\x11\x23\x34\x36\xb6\ +\xd3\x2d\x84\x21\x03\xd8\x24\x70\x2a\xd4\xfa\xb3\x21\x52\xb2\xb9\ +\x8e\xd4\x91\x4e\x56\x73\x84\x28\x7a\x53\x7a\x53\xe5\x19\xa7\x1b\ +\x42\x78\x55\x4d\x67\xd4\x63\xa8\xae\xba\x15\xca\x21\x2d\x13\xfc\ +\x6b\x7c\x70\x7c\x04\xe7\xeb\x9a\x4d\x30\xf9\x42\x7d\xcd\x2b\x4a\ +\x7f\x60\x12\x38\xe2\xb1\x4b\xdd\x46\xd8\xfb\xcc\x88\xeb\x46\xae\ +\xd3\x11\xe1\x5a\xe4\x47\x87\xce\x16\xfb\xa8\x2b\xda\x3f\xba\x3d\ +\xfe\xb5\x51\xf5\x36\xd8\xf7\xea\x77\x23\xae\x4c\xa9\xea\xda\x77\ +\x2b\x21\x0a\x5f\xc0\x20\x60\x55\xed\x75\x64\xae\x31\x6d\x23\x19\ +\xe4\x9a\x84\x6a\x6b\x62\x1c\x86\xa1\xb3\x3c\x56\xc8\xae\x25\x2c\ +\xa8\xc3\x56\x0f\x3d\xcf\x9f\x7d\x44\xb4\x48\x62\xe0\xf3\xe6\xd9\ +\x2e\x3a\x4a\xb1\x87\xdd\x4b\x8a\x19\xf9\x00\x1f\x4a\x85\x38\x95\ +\x15\x01\xe7\x42\xc7\x21\x47\x23\x9f\xf5\xeb\x5d\x45\xd6\x2b\x3b\ +\xa9\x87\x39\x29\x04\xe5\x95\x29\x3c\x76\x29\x1b\x87\xf2\xae\x5f\ +\x59\x90\xb7\x08\x5b\x8b\x21\x4a\xc0\xca\xb8\x15\xcc\x95\x19\x52\ +\x76\x91\xd6\xa7\x5d\x56\x85\xd2\xd5\x16\x2e\x87\xeb\xc7\x54\xb4\ +\x7a\x5a\x8f\x13\x50\xb9\x70\x88\xd8\xc2\x63\x5c\xd0\x24\x20\x0f\ +\x60\xa5\x79\xc0\xf8\x0a\x15\x2d\xbf\x75\xe9\x7d\x44\x81\x1e\xd1\ +\xa9\xf4\xfb\x11\x2e\x09\x75\x02\x34\xd8\x6e\xa8\x21\x27\x70\xdd\ +\xb9\x0a\xc9\xec\x38\xc1\xaa\x42\x42\x1a\xd8\x95\x36\xa4\x9e\x3b\ +\x81\xdc\xe3\xd6\x93\xef\x53\x4b\x0a\x6d\x5e\x1a\xb7\x02\x0f\xaa\ +\x48\xe4\x7f\x1a\x44\xf0\xf4\xea\x2d\xac\x69\x86\x2a\xa5\x29\xa7\ +\x7b\xfa\xed\x3a\x67\xa6\x45\x2f\x6a\x47\xd8\x43\xe8\x41\x8d\xbc\ +\x84\xf0\x0b\x4e\x28\x85\x67\x8e\x30\xa3\x93\xb7\xd3\x15\x7f\x59\ +\x10\x50\xd8\x04\x27\x05\x1b\xbb\xf2\xa5\x1a\xe5\x2e\x83\xc8\x4c\ +\xfb\xf1\xb8\xc8\x79\x6d\x36\xb4\x12\xf3\x69\xe4\x15\x8e\x0a\x86\ +\x7d\x87\x38\xf8\xae\xa5\xd3\x24\x22\x33\x7e\x33\xbb\xbc\x4f\x38\ +\xcf\xb6\x3f\xca\xb8\xb2\x86\x4a\xb9\x4e\xd5\x49\xf1\x20\xa4\xb6\ +\x25\x50\x0a\xca\x96\x16\x52\xb5\x63\x00\x03\xda\x97\x46\x52\x10\ +\xb1\xfb\x5d\xe1\x7c\xe0\xfc\x7b\x53\x5c\x22\xd2\xdd\x29\x28\x29\ +\x46\xd0\x06\x13\x80\x41\xe7\x03\xf9\xd2\x97\x4a\x9b\x53\x7e\x1b\ +\x5b\x92\xa3\xb4\x2f\x3c\x53\x91\x85\xad\x49\x2b\x23\xc4\x8c\x53\ +\xc8\x23\x04\x53\x25\xf9\x97\x14\xd1\x4b\x27\x6a\xd2\xad\xe8\x1e\ +\x83\xde\x97\xdb\x24\x00\xda\x71\xb4\x92\x39\xc1\xfb\xd5\xb6\x72\ +\x42\xd4\xac\xa7\xb6\x3e\xa6\x99\x6b\xab\x95\x83\x71\x91\x46\x4e\ +\xe9\xb5\x82\xdd\xaf\xef\x9a\xbb\x53\xb5\x3a\xe9\x0e\xe7\x19\x5e\ +\x24\x65\xb4\x1c\x4b\x3c\x64\x84\x6d\xe5\x3f\x74\x04\xe3\xb6\x69\ +\xce\x77\xe9\x2d\xd3\xb8\x71\xac\x1f\xab\x2d\xb7\x6b\x95\xd5\x6c\ +\x84\xcd\x86\xcc\x52\x87\xa0\x36\x13\x85\x21\xd2\xb0\x01\x21\x40\ +\x70\x32\x3b\x9c\xf2\x33\x69\x49\x6d\x0e\xb4\xa6\xdc\x47\x88\x95\ +\x27\x18\x20\x62\xab\xed\x53\xd3\xf6\x1d\x92\x6e\x16\xc0\x84\xaf\ +\xb1\x49\x47\x21\x3e\xa9\x04\x73\x8f\x8a\x74\x54\x5d\xf9\x5c\xdf\ +\x4e\x34\x71\x35\x23\xc7\x93\x49\x7c\xbf\x17\x2b\xab\x87\x5e\x3a\ +\xd4\xbb\xbc\xfb\xed\x93\x42\xda\xcd\x8e\x42\x52\xd4\x18\x92\x9b\ +\x5b\x8e\xb5\x8c\xe1\x64\xa0\xa4\x92\xac\xf2\x31\x8e\x06\x3b\x12\ +\x61\x8c\x7e\x92\xdd\x75\xd2\xb2\xa7\x4e\xbf\xd9\x2d\xf3\x1a\x98\ +\x50\x19\x44\xcb\x72\xda\x6e\x36\xdc\xf9\x5b\xd8\x52\x48\x39\xe7\ +\x71\x51\xe0\x73\xef\x74\x5b\x6c\x17\x96\x96\xd2\x90\xeb\xe8\x2a\ +\x07\x87\x8e\x43\x7c\xe0\x10\x78\xc5\x2e\x9f\x66\xbb\x86\xca\x27\ +\xc0\xb7\xdd\x5b\x20\x28\x87\xd9\x2a\x42\xbb\xfa\x03\xc6\x31\x4f\ +\x8d\x24\xb5\x5e\xbc\xcd\x18\x8c\x0e\x0d\xbc\xb0\xd1\xf8\xaf\xaa\ +\xfa\x94\x13\x1f\xa5\x47\x5a\x2e\x17\xf6\x6f\x31\x2d\x16\x43\x16\ +\x33\x2b\x4a\xa1\x22\x0b\x85\x85\xa5\x58\xf3\xac\xef\xdf\x91\x8e\ +\x08\x50\x1c\x9e\x0e\x6b\x46\xbd\xfd\x21\xfa\xb9\xaf\xf4\xd3\xba\ +\x61\x16\x9b\x55\xac\xc9\x79\xa5\xfd\xa2\xd8\x97\xdb\x92\x14\x85\ +\x85\xa4\x21\x45\xc3\xb7\xcc\x91\xc8\x19\xab\xd9\x36\x7b\x92\x98\ +\x71\xa8\xac\xc1\xb4\x43\x3c\x2d\xa8\x51\x40\x04\x1f\x7d\xd9\xa6\ +\xf7\xf4\xc4\x25\x02\x5b\x33\x14\xe2\x70\x12\x1b\x09\x4e\x4f\xb8\ +\x20\x70\x6a\x5c\x5d\xbd\x7d\xcb\x51\xe8\xbc\x25\xba\xed\xdf\xb9\ +\xaf\xb6\x9f\x32\xb4\xd1\x9f\xa5\x06\xba\xd3\xd3\x05\x83\x5a\xdb\ +\x5f\xb9\xcc\x5b\x69\x6d\xd5\xb4\xca\x03\xe1\x40\x79\x54\x02\x78\ +\x59\x23\x04\xf6\xe6\xa5\xd3\xe0\x5a\xfa\x99\x7a\x87\x76\x4d\x96\ +\x7c\x6c\x38\x95\x7e\xdd\x92\xca\xca\x10\x90\x84\xa5\x5e\xc5\x58\ +\x2a\xf8\xc8\xa9\x1e\x95\xd1\xad\xb7\x72\x33\x1f\x84\xd2\x16\x95\ +\x79\x5f\x71\x01\x4f\x2d\x3f\xd9\x2a\x3e\x61\xef\xed\x53\xf8\xad\ +\xa1\x0d\x25\x96\x5b\x28\x1d\xb7\x7a\x8c\x7a\xd6\x4c\xb0\x84\xae\ +\xbe\xeb\xe1\xd9\xfc\x04\xb8\x78\x4a\xad\xd3\x77\x7c\x9a\xd3\xe7\ +\x6d\xdf\xcb\x53\x56\x9c\xb4\xa6\xd0\x5c\x43\x28\xfb\x36\xe6\xc3\ +\x6d\xa0\x2b\x77\x03\xb7\x3e\xf5\x2a\xb3\x30\xdc\x56\xde\x53\x79\ +\x4a\x49\xce\x7e\x69\x14\x64\xee\x71\x03\x68\x0e\x01\x8e\x7b\x1f\ +\x6a\x5f\x3d\xd4\xb5\x04\x10\xa1\x85\x63\x27\x3e\x94\xb7\x6b\xdc\ +\xe5\xd6\xa9\x29\xbd\x77\x64\x67\x54\x3e\xa7\x0e\x12\x40\x2e\x2c\ +\x20\x7d\x3b\xf0\x6a\xa3\xeb\xec\xc8\xc8\xd2\xef\xc4\x53\x85\x0d\ +\x17\x1a\x42\x54\x9e\x4f\x0a\xdc\x4f\xc0\xc0\x3f\x95\x59\x12\x65\ +\xa5\xc9\x6e\x28\x20\x29\xb6\x12\xa2\x94\xf7\xc9\xf7\x1f\x87\xa5\ +\x50\x5f\xa4\xad\xd7\xc2\x8d\x11\x90\xea\x52\x14\xf9\x52\xd4\x39\ +\x07\x00\x0e\xdf\x88\x35\x86\x5d\x79\xa4\xb9\xb3\x4d\x15\x95\xdd\ +\xf2\x29\x3d\x51\x01\xb5\x6a\x2b\xbb\x61\x84\x15\xc9\x96\x0a\x48\ +\x40\x3e\x12\x42\xf2\xad\xbe\xd9\x38\xc7\xba\x6a\x51\x1a\xde\xe4\ +\xad\x04\x34\x9c\x87\x12\xa7\xe7\x4a\x52\xe1\xf8\x80\x00\xb9\x03\ +\x09\x46\xd5\xfa\x03\x94\xa7\x9e\xc4\x1c\xf0\x6a\x2e\xdc\xa6\xe4\ +\x33\x35\xf4\xa5\x68\x2e\xb9\x90\x47\x00\x1d\xaa\xc2\x7f\x3d\xbf\ +\x95\x48\x27\xdc\x1c\x77\xf5\x54\x64\x04\xb9\x1d\x69\x42\xdb\xf7\ +\x4a\x82\x48\x2a\x1f\x50\x8e\x7e\x41\xae\x83\x8d\x49\xa4\xbf\xd6\ +\xc2\xe6\xe9\x53\x4d\xda\xf7\x4f\xee\x57\x96\xc9\x42\xd5\x39\xf8\ +\xd7\x1b\x72\x64\x01\x96\x9d\x6d\x44\xa1\xc4\x28\x1f\xdd\x50\xec\ +\x41\xfa\x8f\x71\x56\x7d\x87\xa8\x71\xd9\x65\x98\xd1\x6e\x0b\x43\ +\x28\x40\x4e\xc7\xe1\xa5\x05\x27\xea\xd9\x19\xfa\xe2\xa3\xd7\x1d\ +\x2e\xbb\xea\x95\x24\x2c\xb5\x39\x5d\xd4\xae\xce\x9f\x93\xef\xf3\ +\xeb\xeb\x5a\x6c\x5a\x1a\xe6\x66\x04\xce\x2b\x8a\xd8\xfd\xe5\x23\ +\x3f\x85\x6d\xc5\xd2\xa7\x17\x9e\x5b\x9c\x9c\x3c\x95\x78\x70\xe5\ +\x6b\x17\xde\x84\xea\x4d\xbe\x1b\x6a\x91\x26\x78\x53\x68\x1c\x9d\ +\x87\xf8\x0e\x6a\xcc\xb3\xf5\x6a\xcb\x37\xc3\x69\x13\x52\xb7\x1c\ +\xc0\x65\x86\x92\x5c\x75\x7e\xde\x54\xe7\x68\xf9\x56\x2a\x91\xd1\ +\xdd\x3f\xd3\x72\x5c\x4c\x6b\x83\xd2\x66\x36\x4f\xdc\x6b\xf6\x40\ +\x9f\x92\x39\x35\xd0\x5a\x1f\x4e\x59\x2c\x50\x50\xcd\x92\xcf\x12\ +\x0a\x55\x8c\xa9\xb4\x0d\xea\xfa\xa8\xf2\x7f\x3a\xac\x31\x78\xa7\ +\x68\xd3\x8b\x39\x18\xaa\x58\x58\x36\xa1\x26\xc9\xf6\x97\x93\x2a\ +\x4c\x60\xf3\xad\x96\xc2\xb9\x09\x3d\xe8\xa7\x1b\x5b\x78\x8e\xca\ +\x07\x07\xf9\xd1\x5d\xbc\xce\xcb\x3e\xe2\xe9\xc1\xa8\x95\x8d\x91\ +\xb0\xd5\x92\x13\x84\x67\x21\xc3\xff\x00\xf7\x15\x5b\xa4\xa0\xee\ +\x40\xe0\x80\x72\x69\x7c\x08\xa5\x5a\x1e\xdb\x29\x00\x12\x9f\x13\ +\x38\x1f\xf1\x8a\xa6\xf7\x54\x56\x94\xac\x80\x30\x73\xc0\xad\xd4\ +\xdd\xe0\x8c\x0d\x58\x99\xdb\x49\x4c\x26\xc9\x27\x84\xf1\xc7\x15\ +\xaa\x18\xdd\x31\xc7\xb3\x9c\x71\xc8\xe4\x57\x96\x97\x02\xed\xc9\ +\x3b\x8e\x40\xe4\x66\x8b\x77\x09\x77\x18\x3e\x6c\x7c\xd5\x80\x8a\ +\x33\xd4\x9b\x85\xb2\xdf\xa8\x35\x08\xd3\x08\x95\x6b\xb1\x5d\xff\ +\x00\x56\xcb\x58\x9b\xb5\xe5\xa8\xb8\x94\x05\x34\x8d\x98\x57\xf5\ +\x8d\x93\xb9\x49\xee\x7d\xb3\x4f\x57\xde\xa2\x49\x82\xbd\x4b\x6d\ +\xd4\x76\x96\x20\x3f\x67\xb6\xa2\xe4\x55\x12\x59\x7d\x0e\xb4\xbd\ +\xc3\x6e\x4a\x11\x85\x85\x27\x6f\x6c\x1c\x83\xc5\x37\xbd\xd3\x8b\ +\xdc\xae\x9b\xeb\x2b\x23\x72\xad\xc9\x95\x7e\xd4\x29\xba\x45\x52\ +\x9c\x58\x42\x1a\x0e\xc7\x56\xd5\x9d\xb9\x0a\xc3\x2a\xe0\x02\x39\ +\x1c\xf7\xc2\x8d\x5d\xa1\xdf\xbe\x6a\x2d\x53\x3e\x64\xa6\x5b\xb7\ +\x5e\x6c\x4d\xdb\x1b\xd8\x49\x75\xb7\x12\xb5\xab\x79\x49\x18\xc0\ +\xdc\x08\xe7\x9c\x7a\x57\x36\xf2\x95\x4c\xdd\x86\x9f\xdd\x85\x3b\ +\x76\xaf\xbf\xe0\x8d\x5a\xb5\x35\xc0\xdf\xad\x96\x9b\xe5\x99\xb8\ +\x2b\xbb\x30\xb7\xa1\xa9\x99\x5e\x36\x0a\x00\x52\x9b\x73\x28\x4e\ +\x15\xb4\xe7\x23\x20\xf3\xcf\x19\xa6\xfb\x37\x51\x26\x49\xd1\xcc\ +\x6a\x69\x36\x16\xe3\xc7\x9a\xa6\x23\xc0\x6c\xcc\x1b\xe4\x48\x71\ +\x7b\x08\x27\x6e\x10\x80\xac\xf9\x8e\x4e\x01\x38\xf4\xa7\x96\x34\ +\x5e\xa5\x93\x7f\xb3\x5e\xaf\x92\x2d\x89\x4d\x9a\x3b\x88\x60\x44\ +\x52\xd4\x5f\x71\xc4\x04\x17\x14\x14\x91\xb0\x6d\x07\xca\x37\x7d\ +\xe3\xcd\x31\x40\xe9\xc5\xd9\x7d\x2b\xb4\x69\x79\x2e\xc1\x54\xfb\ +\x5b\xe8\x92\xda\xd4\x92\xe4\x75\xad\x0e\x15\x84\xa8\x10\x0a\x90\ +\x41\x20\xf1\xeb\xeb\xeb\xba\xf2\x7b\x18\xda\x91\x27\xd2\xba\x99\ +\x77\x69\xd7\x6b\x5c\xb8\xf1\xe3\xcf\xb6\x38\xda\x5d\x4c\x79\x1e\ +\x33\x4e\x21\xc4\xee\x42\xd2\xad\xa9\x3c\xf2\x30\x47\x04\x1e\xf4\ +\xcd\x17\x57\x3d\xa5\xee\x1d\x43\xb9\x4d\x82\xf3\xdf\xaa\x53\x6f\ +\x77\xc3\x4c\xd5\x2d\x0b\x69\xcd\xc9\x1b\x10\xa4\x80\xda\xb6\xf2\ +\x40\xc8\x27\xd7\xd6\xa5\xda\x27\x4d\xbd\x00\x48\x76\x65\x96\xc9\ +\x6c\x52\xca\x70\x8b\x6a\xb7\x05\x81\x9e\x54\x7c\x34\x76\xc9\xc7\ +\x1c\x64\xd4\x7f\x59\xe8\x0b\xcd\xe7\xfa\x7e\x88\x4f\xc0\x48\xd4\ +\x31\xa0\x35\x13\xc5\x5a\xc7\x86\x58\xce\xf2\xe6\x12\x70\x0e\x78\ +\xc6\x7e\x71\x54\xa8\xdb\x8e\x85\xad\x24\x93\x5e\xb4\x62\xa7\xf5\ +\x45\xe9\x8d\x51\x36\xc7\x70\xb2\x43\x89\x70\xfd\x54\x6e\x71\x76\ +\x4c\x53\xad\x94\x85\x6c\x28\x70\xf8\x69\x29\x50\x51\x1d\x81\x18\ +\x3c\x76\xa6\x1d\x25\xad\xef\x4d\xe8\x3d\x39\x36\xee\xcc\x19\x97\ +\x1b\xd3\x88\x66\x17\xfb\x41\x6c\x2c\x90\xa5\x2d\x6e\x9d\x98\x42\ +\x52\x13\xfb\xa1\x5e\x82\xa7\x57\x0d\x2b\x2e\xe1\xd4\x8f\xe9\x1a\ +\xde\x8e\x88\x46\xc0\xe5\xb0\xa3\x71\xf1\x43\xaa\x79\x2b\xdd\x8c\ +\x63\x6e\x01\xf5\xce\x7d\x3d\x6a\x14\xd7\x4b\xef\xc9\xd2\x5a\x7e\ +\xd5\x2c\xd9\x1f\x93\xa7\xa4\x05\xc6\x0b\x5a\xdd\x62\x5b\x78\x52\ +\x54\x97\x12\x50\x36\x12\x95\x0c\x63\x7e\x08\xa8\x53\x90\x4e\x13\ +\x4e\xe8\x5b\x23\xa9\x2e\x33\x64\x2f\xfe\xa6\x4b\xd7\x16\xef\x89\ +\xb2\xbb\x11\x99\x61\x49\x53\xaa\x4e\x50\xa4\x2c\x81\x94\xa8\x94\ +\x72\x40\xc6\x4f\xb5\x38\x7f\x4d\xae\xb0\xae\x2e\xc1\x6a\xcf\x6e\ +\x7a\xe9\x02\xd9\xfa\xc6\xe0\xd2\xee\x45\xb6\xd0\x32\xad\xad\x36\ +\xaf\x0c\xef\x59\xda\x4f\x21\x23\xdc\xf3\x49\xee\x5a\x1a\xeb\x72\ +\x85\x65\x8e\xd5\xba\xc3\x67\x5c\x4b\xec\x5b\x8b\xcd\x44\x52\xbc\ +\x35\x36\xd2\xb2\xac\x10\xda\x77\x2f\xd0\x65\x20\x76\xe4\x53\xad\ +\xe7\x42\x3a\xde\xb9\x5e\xa5\x85\x6b\xb0\xdd\xd1\x2e\x1a\x22\xc8\ +\x89\x76\x04\x04\x29\x0a\x25\x2e\x36\xa0\xda\xfd\x14\x41\x4e\x06\ +\x70\x39\x15\x15\x27\x24\xad\x72\xd0\x84\xef\x71\xda\x27\x53\x1c\ +\xbc\x5e\xad\x76\x7d\x39\x6e\x80\xeb\xf3\xec\xed\x5d\x9a\x55\xca\ +\xe0\x62\xa5\xd4\x38\x78\x69\xbd\xad\xac\xa9\x63\x07\x77\x18\x4f\ +\xcd\x37\x45\xbd\xeb\x29\x9d\x53\xd6\x76\x38\xed\xda\xdc\x85\x6d\ +\x8d\x10\x47\x6d\xd9\x2b\x6f\x69\x71\xb7\x94\x95\x6e\x4b\x64\xe5\ +\x44\x24\x2b\xfb\x21\x3c\x66\xb7\x75\x07\x45\x5d\x75\x55\x89\x8b\ +\x03\x16\xad\x37\x09\x94\x36\xd1\x8b\x3d\x2e\xb8\x97\xad\xce\x0d\ +\xa5\x4a\x61\x09\x6c\x76\xc7\x1e\x74\x7a\x67\xda\x9d\x23\xe9\x9b\ +\xd5\xa7\xa9\xb7\xad\x42\xc3\x90\x65\x5b\x6f\x4c\x44\x43\xc5\xd7\ +\x94\x89\x0c\xae\x3a\x16\x9e\x12\x10\x52\xb0\xad\xd9\xfb\xc9\xc7\ +\xb1\xac\x11\xd2\x46\xf9\x71\x25\xbf\x27\xf4\x7f\x82\x13\xa0\xf5\ +\xcc\xb6\xf4\x9e\x84\x89\x6f\xb4\xbb\x36\x4e\xa1\x6e\x4a\x19\x13\ +\x6e\x2a\x51\x6c\xb4\x4a\x89\x71\xd2\x92\x54\x36\x85\x1c\xed\xcf\ +\x00\x01\x4e\x8b\xea\x43\xcf\x59\x4a\x5c\xb2\xb6\x2f\x89\xd4\x0a\ +\xb0\x08\x68\x94\x4b\x2a\x90\x90\x14\x56\x1c\xd9\x90\xde\xcf\x36\ +\x76\x64\x76\xc6\x69\x26\x8a\xe9\xd5\xea\xcc\x9e\x9d\xb7\x2a\x55\ +\xb9\x6a\xd3\x3f\x6d\xfb\x6f\x86\xe2\xc8\x73\xc6\x6d\x69\x4f\x87\ +\x94\x8c\xe0\xa8\x67\x3b\x7f\x1a\x43\xa8\x74\x7c\xcb\x3c\x69\xf7\ +\x59\x17\x08\xac\xcb\xfe\x98\x2e\xfb\x6f\x52\x59\x79\xe6\xca\x16\ +\xda\x51\xe1\xbc\x10\x82\x51\x94\x85\xe5\x40\x10\x0e\xde\x69\xea\ +\xf7\x46\x5b\xd4\x50\xd7\xd6\x88\x96\x68\xad\x51\x3a\xf5\x7c\xbf\ +\xd9\x6e\x36\xb6\xa0\xcb\xb2\x2d\x86\x9e\x2d\xbe\x5d\x43\x85\xc4\ +\x15\x85\x24\x94\xa4\xe3\x6e\xd3\xc8\x07\x92\x3d\x39\x9f\xdb\x9b\ +\x21\x9d\xde\xf5\x4a\x74\xfa\x36\xb1\x9d\x71\xd7\x77\xeb\x6a\x20\ +\x35\x3a\xe9\x2a\x28\xb7\x3f\x32\x3b\xc8\x8a\xe0\x69\xb0\x85\x10\ +\x08\x0b\x52\x40\xca\x42\xb0\x37\x11\x9c\x7a\x55\xe2\xdf\xec\xa3\ +\x80\xac\x6e\x03\x9c\x0a\xad\x59\x5d\x58\xd3\x84\xbb\xd5\x9a\x5e\ +\xf3\xc8\x48\xc7\x00\xd2\xe5\x28\x21\x19\x24\x62\x92\x46\x49\x53\ +\xbb\x8d\x63\x73\x77\xcb\xe1\x8e\x29\x4e\x39\xa4\xa2\x6b\x52\xca\ +\x9c\x8c\xe5\x79\x9b\xde\x80\x08\x3e\x95\x1c\xba\xb6\x92\xda\x93\ +\x8a\x7a\x84\xf0\xf0\xca\x14\x7b\x53\x7d\xdb\x6a\x42\x88\x23\xb5\ +\x68\xa2\xb2\xca\xc2\x2a\x4a\xeb\x32\x28\x7e\xac\x5b\xd9\xf0\x5c\ +\x75\xcd\xa1\x23\x39\xc9\xc0\x23\xd4\x57\x1e\x5d\xed\x4c\xc5\x9d\ +\x3a\x1b\x8b\x49\x4a\x17\x84\x2c\x11\x82\x3b\xa4\xff\x00\x01\xda\ +\xbb\x8f\xa8\xed\x32\xfc\x57\x12\x52\x15\x90\x46\x31\x9c\xd7\x21\ +\xf5\x4d\x8b\x7b\x77\x22\xdb\x6a\x40\x90\xc2\x8e\x50\xca\x07\x95\ +\x27\x9c\x28\x8f\x5c\xfa\x52\x7a\x46\xea\x49\x8d\xe8\xd9\xae\x23\ +\x8f\x69\x5b\xcb\x01\xb4\x16\xc1\x2e\x36\xda\xb3\xbb\x1b\x77\x66\ +\x90\xab\x24\x03\xfc\x3d\xa9\x44\xc2\x92\xac\x93\x93\xea\x7e\x7d\ +\xa9\x32\x73\x9c\xfe\x35\x96\x3b\x1b\x2a\x7b\xd6\x2c\x3e\x86\x5e\ +\x55\x07\x50\x2e\xde\x9d\xa9\x75\xf4\x9f\x05\x6a\xec\x92\x01\xcf\ +\xe6\x3f\x3e\x2b\xb1\xf4\xdc\xc5\x4a\x89\x1d\x78\x4a\x96\xcb\x61\ +\x0e\x82\x78\x2a\xc6\x4f\x6f\xf5\xc5\x70\x15\xb5\xd7\xe3\x5d\xa3\ +\xc9\x86\xa5\x25\xd0\xa0\xa6\xcf\x63\xbb\xbe\x2b\xae\xfa\x67\xa9\ +\xc4\xcb\x4c\x0b\x8c\x64\xbc\xff\x00\x8a\x0b\x8e\x82\x07\x99\x69\ +\x49\xcf\xd0\x9e\xd8\xf8\xae\x46\x3a\x9e\x4a\xaa\x6b\x66\x75\xf0\ +\x53\xe2\x50\xc9\xce\x25\xcd\x16\x52\x52\x50\xe8\x20\x21\xd0\x0a\ +\x49\xf5\xee\x08\xc7\xa7\x22\x9c\x96\xe2\x50\xc6\x14\xe6\xc5\x28\ +\x85\x79\xbd\x0e\x2a\x31\x6d\x7d\x1f\x64\x3b\x5b\x07\x01\x2b\x4a\ +\x09\xc7\x98\xf7\x03\xe0\x71\x4f\x4a\x79\x29\x4b\x99\x41\x53\x89\ +\x4f\x09\xce\x48\x57\xf6\xbe\x9e\xff\x00\x14\xa8\xcb\x40\x9a\xd4\ +\x75\x83\x28\x21\xe4\xa9\x4b\x40\x07\x18\x27\xb6\x7d\x85\x3b\xaf\ +\x2e\x34\x57\x90\x49\xc1\x2a\x1f\xcb\xe0\xd4\x2e\x44\xc2\xc3\xa1\ +\x01\x40\x37\x80\xb5\x85\x71\xdf\xdb\xe7\xe9\x4f\x91\x64\xed\x61\ +\x05\x04\xbb\x9f\xbe\x53\xc7\x70\x3b\x81\x53\x09\xf2\x29\x28\xb5\ +\xa8\xe0\xa4\x2b\x07\x91\xbb\x18\x15\xa0\x85\x24\xf2\x33\x8e\x4e\ +\x3b\x66\x94\xa0\x95\x25\x21\x5e\x53\x8e\xc1\x40\xee\xac\x78\xf3\ +\x63\x18\xf5\xc5\x35\x3b\x30\x4e\xe6\xa6\x9c\x6b\x2a\x52\xc6\xd0\ +\x91\xe6\xdc\x3d\x3e\x2b\x15\xc8\x86\xd9\x48\x52\x41\xe3\x00\x9e\ +\x72\x3e\x4d\x6c\x75\x2d\xa5\x25\x6e\x1d\xde\x98\x1d\xe9\xbe\x41\ +\x65\x2a\xcb\x4d\x95\x82\x9c\x7d\x0f\xe3\x5a\x23\x27\xc8\xba\xd4\ +\xd8\xe3\xd1\x0a\x77\xb8\xc0\xce\xfd\xaa\x1e\xde\xf5\x8a\x26\x47\ +\x52\x40\x65\x9f\x2e\x4e\x71\xed\xee\x6b\x4a\x76\xe7\x7f\x86\x9d\ +\xc4\xf3\xba\xb0\x2b\x47\x2a\xd8\x9c\xe7\x83\xc0\xcd\x44\x99\x74\ +\x66\x42\x4b\xea\x4a\x52\x13\xc7\x7a\xf5\xb4\xa1\x2d\x03\xd8\x93\ +\xe9\xe9\x5e\x87\x02\xd4\x70\x3c\xc7\x9c\xfa\x56\xc4\xe1\x03\x9f\ +\x4c\x9a\xcd\x32\x1b\x33\x8e\xb2\xdb\x81\x69\x4e\x48\x1c\xe3\xda\ +\x91\x6a\x7b\x88\xf0\x91\x19\x05\x3b\x94\x00\x48\x07\xd7\xbf\xe7\ +\xde\x92\xbb\x74\x47\x88\xa0\x97\x30\xda\x81\x4a\x47\x62\x78\xe4\ +\xf3\xed\x51\xb8\x73\x45\xc1\xf3\x26\x46\xe5\x36\xc2\x89\x6c\x64\ +\x83\x9e\x47\x22\xb3\x54\xa9\xa6\x54\x4c\x61\x77\x77\xc8\xdb\x73\ +\x92\x88\x50\x9c\x38\xd8\xe1\xdc\xb5\x0f\x82\x3f\xf4\xae\x45\xfd\ +\x23\xee\xce\x4d\xea\x0b\x50\x50\xea\x14\xcc\x78\xe8\x52\x90\x83\ +\x90\x95\xab\x24\x83\xf8\x60\xfe\x22\xba\x2b\x59\xea\x08\xd0\x62\ +\xbf\x26\x44\xa5\x33\x19\xb4\x17\x5c\x58\x20\x8e\x07\x63\xf1\xdb\ +\x1f\x53\x5c\x63\x74\xb8\xae\xe9\x7e\x99\x76\x78\xef\x5c\xa9\x0b\ +\x70\x83\xc7\x04\xf0\x3f\x01\xc7\xe1\x4c\xc0\x43\x3d\x57\x3e\x4b\ +\xf9\x23\x15\x2c\x94\xd4\x79\xcb\xf8\x26\x3a\x45\x98\x32\xad\xaf\ +\xc7\x7d\x61\xb5\x12\x92\x8c\xf6\x57\x03\x82\x7d\x06\x78\xcf\xcd\ +\x2a\xb1\xb9\x19\x6e\x8b\x53\x8d\xf8\x32\x63\xa8\x96\x52\xb1\xc9\ +\x0a\xdb\xce\x7d\x71\x83\xf9\x9a\x61\xb0\x2d\xc5\x35\x15\x4d\x2c\ +\xee\x5b\x9f\x67\x29\x00\x1d\xc7\xba\x4f\xe3\x8c\x54\xef\x4a\x5a\ +\xad\xf7\x99\xa9\x44\xe6\x54\x95\xc7\xe5\x0f\x32\xad\xab\x49\x3c\ +\x00\x0f\xc7\x7c\x56\xa8\xda\x32\x95\xfb\x6e\x65\xc7\x55\x6a\x9c\ +\x6f\xee\xd8\xb0\xf4\x96\x9b\x6a\x64\x54\x82\x90\x54\x45\x3f\xa7\ +\x46\xbe\xc4\x8c\x82\xa0\x83\x4b\xb4\x16\x9d\x9d\x0c\x20\xb3\x73\ +\x72\x52\x06\x30\x97\x1b\x09\x50\x19\xe0\x64\x77\xab\x76\x25\x97\ +\xed\x70\xc0\x59\x4e\xe0\x3b\xd7\xa6\xc3\xca\x96\x2e\x9a\x94\xe3\ +\xb1\xe5\x25\x26\xa5\x64\xee\x40\x34\xc6\x9e\x66\x2b\xe8\x50\x40\ +\xef\xcd\x5a\x70\xa1\x25\x31\x52\x52\x00\x18\xa4\x30\x2d\x6d\xb4\ +\x54\xd9\x00\x28\x76\x38\xa9\x0d\xa4\xa4\xb4\xa6\x57\xf7\xbd\x05\ +\x6b\x9a\x8c\x17\x55\x15\x83\xbb\xb3\x1c\xed\xa9\x4e\x5a\x38\x3f\ +\x18\xa2\xbd\x86\x76\x6d\x49\xfd\xd3\xcd\x15\xcc\xaa\x9b\x91\xd1\ +\xa5\x2b\x22\x23\xd3\xf4\xa2\x7f\x4f\xa2\x30\xa0\x0a\xb0\xe6\x7d\ +\xff\x00\xac\x55\x47\xe4\x47\x5c\x69\x0b\x8c\xb3\x8c\x1e\x29\xc3\ +\xa7\x4e\xaa\x2e\x95\x84\xe8\xe5\x2a\xdf\x91\x9f\xf8\xc5\x53\xc6\ +\xa1\x84\xd4\xc8\xe2\x54\x70\x0a\xc1\xce\x12\x39\xf9\xae\x8d\x35\ +\x97\xc0\xe5\xdf\x34\x13\xe6\x86\xdd\x36\xf6\x50\xb6\x16\x7b\x1e\ +\x29\xc2\x18\x29\x7d\xc4\x92\x78\xf8\xa8\xfb\x0e\xa9\xa7\xbc\x40\ +\x08\x29\xe0\x8c\xf7\xa7\xa6\xde\x0e\x29\x0f\x24\xe4\x91\x83\xcd\ +\x34\xa1\x36\x61\x59\xb5\xa4\xf7\xf2\xfa\x53\x55\xc4\xe4\x21\x19\ +\xf2\x9a\x53\x6a\x7d\x0b\x82\xb6\xf3\xd8\x52\x39\x4f\x21\xc2\x87\ +\x10\x77\xa4\x28\x8c\x83\x9e\x41\xc7\xf0\x39\xac\x54\xe2\xe3\x36\ +\x6e\xab\x25\x28\x23\x09\x6b\x42\x23\xec\xf8\xf4\xa4\xf1\x51\xe2\ +\xad\x0d\xa9\x5b\x73\xdf\x8a\xc1\xc5\x87\x65\x7e\xd3\xee\x27\xde\ +\x86\xe4\x36\xbb\x80\x65\x97\x10\xa7\x50\x37\x29\xb0\xa1\xb8\x24\ +\x9e\x0e\x3d\xbe\x6b\x52\x56\x46\x56\xee\xc5\x8f\x34\xe4\x7f\x32\ +\x14\x14\x07\x7a\xdf\x15\xc0\xc3\x41\x6b\x18\x2a\x3d\xab\x25\xb6\ +\xb4\xac\x2c\x1c\xa4\x8e\x45\x78\x52\x1d\x58\xe3\x18\xa4\x39\x66\ +\x5a\x8e\x4b\x2b\xd0\x1f\x2b\x0b\x49\x6c\x67\x75\x6c\xfb\x32\x0a\ +\x14\xa5\x2c\xee\xaf\x51\xb8\x37\xb0\x0e\x47\x6c\xd6\x4b\x6d\x69\ +\x8d\x84\x9d\xca\x35\x46\xf9\x0c\x4b\x98\x91\x59\x1b\x14\x01\xe0\ +\xd2\xbc\xa5\x6d\x05\x03\x8c\x52\x28\x72\xe2\xc9\x6d\x69\x61\xf6\ +\xa4\x6d\x25\x0a\x2d\xac\x28\x02\x3b\x8c\x8f\x5a\x51\x19\x0f\x79\ +\x80\x42\xb6\xfa\x66\xa6\x5a\xa2\xb1\x1c\xa3\x9d\xc1\x1f\x5a\xd9\ +\x3d\x43\xca\x3b\xd6\xa8\xe1\x48\xda\x14\x9c\x7a\xd6\xa9\x6f\x85\ +\x38\x40\x3f\x15\x95\x46\xf2\x35\xb9\x5a\x06\xb4\x11\x95\x2b\xd2\ +\xb4\xe7\x72\xca\x88\xaf\x1d\x5e\x06\xc4\xe3\xe6\xb7\xc4\x60\xac\ +\xf3\xf7\x45\x3f\x48\xab\xb3\x3e\xb2\x76\x46\xfb\x7b\x3d\xdc\x57\ +\xe1\x5b\xdd\x56\xe5\x63\xd0\x77\xaf\x14\xb0\x06\xc4\x70\x2b\xc4\ +\x83\x90\x9e\xe6\xb3\xbb\xb7\x76\x69\x4a\xca\xc8\xd8\x95\x06\x9a\ +\x2a\x3d\xe9\x08\x4f\x8e\xb2\xb5\x76\xad\xb3\x49\x2b\x0d\x03\xc5\ +\x68\x79\x41\x86\x4f\x22\xad\x05\x65\x7e\x6c\xac\x9d\xdd\xb9\x21\ +\xae\xf1\x31\xbb\x78\x2e\x29\x61\x29\x1e\xa4\xd5\x6d\xaa\xba\xb3\ +\xa6\xa1\xb4\xe2\x5c\xb9\xb3\xe2\x20\xe0\xb6\x16\x9d\xd9\xfa\x66\ +\x9b\x3a\xf7\x7f\xbc\x1b\x78\xb6\x59\x1f\x87\x1a\x43\xc7\x2b\x91\ +\x25\xcd\xa1\xa4\xfb\x81\xea\x4f\x35\xcc\xea\xd3\x2f\xb4\xa9\x92\ +\xef\x1a\xa6\x3c\xd0\x7c\xc6\x34\x62\xa2\x1d\x50\x3c\x0c\x80\x06\ +\x73\x58\xf1\x58\xfe\x1c\x94\x56\xe4\x50\xc3\x2a\xd7\x72\x95\x91\ +\x33\xea\x8f\x56\x15\x70\x6d\xd8\xd6\x44\x4b\xda\x78\x5c\x8d\xc1\ +\x00\x7c\x05\x67\x8a\xa1\x2e\xd3\x9f\x78\xe5\xf7\xc3\x3b\x95\x93\ +\x80\x4e\x13\x8e\xfc\xf7\x27\xde\xac\x8b\x9c\x3b\x2b\x70\xb6\x5c\ +\x25\x22\x12\x10\x90\x7c\x24\xba\x92\xa2\x48\x04\x1c\x9f\xf0\x15\ +\x06\xbc\x4f\xd3\x0c\x33\x25\x11\xd8\x54\xd7\xd6\x02\x5b\x75\x6a\ +\x52\xd4\x9e\x73\x9c\x9c\x01\xf9\x1a\xcd\x1a\xb3\xae\xf3\x49\x1d\ +\x5a\x31\xa1\x41\x64\xa7\x7b\xbd\xd9\x11\x52\x14\xb6\x8b\xab\x25\ +\x3f\xd9\xcf\x75\x13\xed\x58\x0c\x11\x9c\x7e\xed\x6d\x93\x25\xc9\ +\x0e\xf8\x8b\x3b\x71\x9d\xa9\x4f\x61\x5a\x52\xa2\x84\x28\xfb\x8a\ +\xd2\xaf\x6d\x4c\xf3\xb5\xf4\x14\xb0\x7c\x29\x4c\x3e\x47\xef\x05\ +\xe3\xf1\xab\xbf\xa6\x12\x57\x67\xbc\xa2\xce\x40\xf0\x5d\x74\x3f\ +\x1d\x59\xf2\xe7\x82\xa4\xfd\x78\xcf\xfe\x95\x56\xea\xeb\x6c\x2b\ +\x65\xc5\x9b\x5a\x56\xa0\xf2\x2d\xec\x97\x54\xa5\x64\x87\x8a\x02\ +\x94\x9e\x4f\x03\x9e\xde\x98\xab\x45\x88\x6a\xb8\xe8\x7b\x55\xd5\ +\xb5\x94\x3b\xe1\xb4\x54\xe2\x40\xdc\x95\xa7\x8c\xe3\xe7\x18\xfc\ +\x6b\x99\x8f\x95\xe1\x17\xc9\xfa\x47\x6f\xa2\x62\x9c\xa7\x0e\x7e\ +\xae\x5f\x76\x7b\xcb\x29\x75\xe5\xad\xd0\xb6\xf8\x4a\x41\xe3\x9d\ +\xde\xde\xd9\xf5\xa9\x23\x52\xdb\x56\x77\x27\x6a\x0a\x55\xb4\x13\ +\xdf\x68\xc1\xdc\x7e\x3d\x2b\x9e\xb4\x96\xa3\x75\x49\x5c\x49\x0a\ +\xf0\x25\x05\xed\x78\x2b\xb6\x33\x9c\x83\xed\x90\x4d\x5b\xba\x72\ +\xfa\xc4\x88\xcf\xc4\x5a\xd2\xe2\x8e\x49\x4e\x41\x51\x48\x27\x27\ +\xf1\xe0\xf1\x5c\xd8\xcf\x2b\xca\xcd\xb5\xb0\xed\x2b\xa2\x62\xb7\ +\x1a\xfb\x39\x5b\xdb\x7c\x40\x37\x00\xa3\x95\x03\xeb\xf4\xe3\xf9\ +\xd6\x36\x1b\x92\x52\x1d\x42\x1d\x59\x64\xac\xe7\x27\x71\x38\x38\ +\x18\x3e\x99\xf4\xa6\xb6\x6e\x2d\x29\x85\x48\x3e\x11\x64\xa0\xab\ +\x07\x2a\xe3\xe3\xdf\xe9\xf1\x4d\x0f\xce\x62\x25\xe2\x38\x6a\x3e\ +\x5e\x71\x7b\x7c\x24\xaf\x0a\x2b\xc6\x46\xef\x7c\x0c\x7e\x75\x6c\ +\xf6\x69\xa3\x26\x4b\xe8\xcb\x36\x43\xcb\x4b\xc8\x70\xe1\xa6\x90\ +\x00\x69\xa0\xac\x92\x9f\x53\xc7\xcf\x14\xe0\xdc\x9d\xea\x05\x21\ +\x38\x3d\xf1\xe9\xf5\xa8\x8d\x9e\xef\xe2\xba\x8d\xd2\x9a\x4e\x5b\ +\xcb\x98\xe5\x48\x03\xd7\xf0\x3c\xd3\xdb\x6f\x17\x23\x78\xc8\x2a\ +\x79\x0e\x04\x84\x24\x0e\xe0\x1c\x67\x3f\x3e\xd5\xae\x3a\xea\x8c\ +\xed\x5b\x46\x2c\x75\xc7\x14\x14\x12\xa4\xab\x1c\x2b\x3d\xc5\x68\ +\x62\x30\x74\x82\xa7\x95\x8e\x48\xcf\x35\xb5\x97\xd1\xb1\x0e\xba\ +\xb4\xaf\x6a\xca\x4a\x47\x74\x91\xc7\x3e\xf5\xbe\x2a\xda\x01\x68\ +\x20\xb9\x85\x67\xcc\x30\x47\xb5\x3e\x04\xa9\xe9\xa1\x8a\x62\x6f\ +\xf3\xa5\x3b\x8a\xb3\xf8\xe3\xf9\x1a\x4d\x22\x2a\x9d\x5a\x90\x52\ +\x84\xa7\x1b\xb9\x39\x27\x07\x9a\x5b\x1d\xc0\x42\x96\x96\xd4\x0e\ +\x77\x04\x13\xc9\x07\xbd\x27\x7d\x63\x6b\x6a\x0a\x04\x94\xfa\x1e\ +\x70\x7b\x8f\xaf\xc5\x59\xd8\x9c\xcd\x31\xb3\x86\xde\x70\x24\xfe\ +\xcd\x05\x27\x70\x3c\x12\x78\xff\x00\x43\xe6\xb4\xc8\xb9\x25\xa6\ +\x1c\x7d\x4b\x46\x5b\xc9\x20\x1f\x51\xee\x2b\x75\xd9\xf4\xc6\x61\ +\xd9\x2d\xc8\x4a\x08\xe4\x93\xdf\xd3\xd3\xe9\x51\x6b\xbc\xef\x05\ +\x6d\xa9\x4d\x2d\x95\x2b\x97\xc1\x19\x1c\xa7\x21\x43\xdf\xb7\xf1\ +\xac\x75\x5e\x51\xab\xac\x37\x6a\xeb\xab\xbf\xa9\xd4\xb6\xd5\x97\ +\x54\xe6\xd6\x4f\x8b\x9c\x05\x0e\xff\x00\xcf\xf9\xd6\xb6\x66\xa5\ +\xb8\x3e\x47\x47\x8a\x94\x02\xe0\x20\x60\x64\x11\xe9\xe8\x78\xc5\ +\x43\x2f\x77\x17\x2e\x37\x56\x19\x8e\x84\xa9\xb6\x4e\xf5\xad\x18\ +\xfb\xf9\x00\xfe\x1c\x9f\xc6\x91\xeb\x9d\x4c\xbb\x44\x05\x33\x0f\ +\x2e\x4f\x53\x48\x43\x0c\xb6\x39\x56\x0e\xe2\x15\xec\x30\x39\x3e\ +\x95\xcf\x93\x6e\x5a\x1b\x23\x4b\x44\x8a\xd3\xf4\x8b\xd5\x81\x71\ +\xe3\xe9\xb8\xc9\x42\x5c\x7d\x09\x76\x56\xd5\x79\x91\x85\x1c\x24\ +\xfe\x40\xd5\x2e\xc7\xdc\xf2\x9e\x41\xc9\xac\xae\xd3\xe4\xdd\x2e\ +\x92\x2e\x53\x56\x1c\x7e\x43\x85\x6b\x50\xed\x9f\x61\xf0\x2b\xd4\ +\x36\xb4\x46\x53\xdb\x78\x48\x1f\xc7\xff\x00\x4a\xf4\x58\x7a\x0a\ +\x85\x25\x1e\x7f\x53\x83\x88\xaf\xc7\xaa\xe5\xc9\x6d\xe0\x3d\xda\ +\x56\xa1\x66\x79\xa6\xc9\x3b\xdc\x6d\x48\x29\xee\x9d\xa4\xf2\x3e\ +\x40\x3f\xc6\xa7\x5a\x1f\x54\x45\xfb\x53\x28\x9c\xff\x00\xd9\xa4\ +\x17\x3f\x79\x3f\x7f\xb6\x09\x3e\x87\x15\x5b\x45\x56\xd8\xd9\x6f\ +\x25\x25\x59\x71\x3f\xd9\x48\xe7\x23\xf9\x56\x6b\x2a\xb8\x45\x61\ +\x29\x70\x05\x85\x1f\xeb\x09\xdc\x9e\xdf\xbd\xed\xf5\xaa\xba\x69\ +\x4f\x30\xca\x96\xad\x47\x86\xfd\x7a\xb9\xdb\xfa\x4a\xec\xd3\x71\ +\x98\x74\x10\xa4\x2d\x20\x85\x24\xe4\x1a\x91\x47\xd6\xf1\x5c\xbf\ +\xb1\x60\xb6\xbc\x99\x37\x07\x12\x1c\x5b\x2d\x9d\xde\x0b\x7e\xab\ +\x59\x1f\x77\xe0\x1e\x49\x22\xb8\xbf\x4e\xe9\xad\x63\x2c\x22\x09\ +\xbf\xa2\x04\x65\x01\x95\xae\x5f\x00\x0f\x4c\x24\x93\x9f\x8a\xe9\ +\xae\x84\x58\x2c\xfa\x56\xd8\x61\xdb\xdd\x12\x25\xbe\x77\x4b\x98\ +\xaf\xbc\xf2\xbd\x07\xc2\x47\xb5\x3d\x63\xea\x4d\xa8\x52\x77\xf0\ +\x38\x18\x9c\x1a\xc3\xdf\x3b\xd7\xb0\xbf\x5a\x69\xa9\x51\x52\xb6\ +\xd4\x03\x80\x73\x9e\xe6\x92\x9f\x15\x87\x72\xa0\x52\x53\xdf\xe6\ +\xb7\x5a\xc2\x56\xd8\x52\x09\xc8\x02\x97\xb8\x12\xa4\x6d\x79\x00\ +\xf1\xc1\xae\xec\x65\x28\xab\x48\xcb\x93\x32\xb9\xa9\x89\x88\x51\ +\x05\x20\xe4\xf1\xc5\x14\xb2\xc9\x6a\x6d\xb7\x0c\x85\x64\x83\xd8\ +\x1a\x2b\x35\x5a\xd0\x8c\xac\x91\xaa\x95\x19\xca\x37\x6c\x83\x68\ +\x26\xf6\x69\x78\x6d\x39\xf7\x72\xe1\xe7\xd4\x78\x8a\xa7\x92\x55\ +\x1d\x59\x46\x14\x8f\x50\x07\x06\xb5\x68\xd8\x45\xee\x9f\x5b\x24\ +\x23\xcc\xb4\x87\x09\x03\xd7\xf6\x8a\xa5\x29\x56\xe4\xf9\xbb\x8e\ +\xfc\xd6\xca\x53\x53\x89\x86\x50\x70\x48\x41\x32\x14\x79\x61\x4e\ +\x30\x42\x17\x83\x94\xd3\x4c\x66\xe7\x37\x2c\x44\x43\x6a\x3b\xbd\ +\xbb\x54\x89\x4c\x24\x80\xb4\xf9\x71\xeb\x4e\x9a\x5e\x08\x5b\x85\ +\xf7\x46\xec\x1c\x73\x56\xa9\x35\x08\xb9\x30\x84\x1c\xe4\xa2\x8a\ +\xab\xa3\x76\x3b\x64\xed\x57\xaa\x97\x72\xb2\xbf\x2e\xe0\xc6\xa5\ +\x92\x23\xdc\x17\x1f\xc4\x6a\x39\x43\x6d\xad\x20\xab\x23\x18\x56\ +\x48\x1e\xea\x1e\xf5\x96\x96\xd4\x57\x4b\x26\x89\xb4\xb5\x6b\x83\ +\x65\x44\xcb\x86\xb5\x91\x65\x79\x42\x3a\xd2\xc9\xdc\x5e\xcb\xdb\ +\x37\x95\x67\x7a\x52\xa2\x9d\xdc\x80\x52\x08\xce\x45\xad\xa1\xf4\ +\xbf\xf4\x65\x7a\x81\x62\x77\xda\xbf\x5c\x5e\x5e\xba\x01\xe0\xec\ +\xf0\x7c\x44\xa1\x3e\x1f\x73\xbb\x1b\x3e\xf7\x19\xcf\x6a\x8e\xc6\ +\xe9\x87\x83\x6e\xb5\xc4\x37\xcc\xfd\x83\x55\x2f\x50\xee\xfb\x27\ +\xf5\x9b\x8b\x87\xc1\xfb\xfc\x7f\x59\xf7\xf9\xed\xf7\x79\xae\x44\ +\xaa\x39\x3b\x9b\x23\x86\x94\x22\xac\xb5\xd7\xf9\x43\x05\xd7\x5b\ +\xdd\xad\x2c\xea\xcb\x54\xe8\xb6\xc9\xd7\x8b\x4d\xca\x0c\x08\x2f\ +\x34\xca\xd9\x65\xf3\x31\x28\x2d\x95\xa7\x72\x88\xd8\x14\x73\x85\ +\x73\x8f\x4c\xe6\xbc\xd1\xd6\xcb\xa4\x2e\xbb\xea\x16\x2e\x72\x61\ +\xcc\x79\x36\x28\xaa\x4b\xb1\xd8\x53\x29\x52\x0b\xae\x77\x49\x5a\ +\xb0\x73\x91\xf7\x8f\xa7\xd2\xa4\xb7\xbe\x99\x31\x76\x9f\xab\x65\ +\x3d\x78\x75\xa5\xdf\xa4\x41\x95\x1d\x4d\x32\x02\xa0\xbd\x15\x09\ +\x4a\x14\x09\x24\x2f\x25\x20\xe0\x81\xc1\x23\xe6\x9c\x74\xbe\x8f\ +\x9f\x6f\xd6\x73\xf5\x5d\xda\xfa\x8b\x94\xe9\xb0\x9b\x86\xb4\x35\ +\x0f\xec\xed\x21\x2d\xa8\xa9\x25\x23\x7a\x8f\xa9\xce\x49\xe4\xfa\ +\x0e\x28\x55\x64\xb9\x93\xec\xf2\x73\x4d\xae\x7e\x5a\xfe\x08\xdd\ +\xda\xf5\xa8\xe7\xeb\xf9\x9a\x5f\x4e\x3d\x6f\x88\x6d\xd0\x1b\x97\ +\x21\xf9\xac\x2d\xd0\xb7\x1c\x52\x82\x1b\x09\x4a\xd3\x84\xe1\x19\ +\x2a\xc9\x3c\xe0\x0f\x5a\x43\xa7\xb5\xf4\xeb\xdc\xfe\x9f\x29\xa8\ +\x8c\x47\x63\x50\xc7\xb8\x99\xcd\x9c\xa9\x4d\xbb\x1b\x6a\x70\x85\ +\x7b\x6f\xdd\xe8\x72\x31\x52\xdd\x4f\xa2\xe6\x3f\xa9\xdf\xd4\xfa\ +\x7a\xf6\x2d\x57\x09\x10\x93\x0e\x50\x76\x20\x7d\xa7\x10\x95\x15\ +\x21\x61\x3b\x92\x43\x89\xdc\x70\x72\x46\x0f\x20\xd3\x2b\x1d\x38\ +\x6e\x2c\x2d\x2a\xd5\x82\xee\xa8\x73\x34\xc8\x79\x0c\x3d\x26\x3f\ +\xda\x12\xfa\x5f\x00\x3d\xe2\x24\x29\x1c\xa8\x8d\xd9\x04\x60\xfb\ +\xf6\xa6\xf1\x1c\x95\xc5\xca\x95\x48\xc9\xaf\x5b\xaf\xa5\xc8\x6e\ +\xa8\xd4\xfa\xa2\xed\x66\x65\x51\xae\x4c\x5b\x94\xcf\x50\xc5\x94\ +\x16\x98\x3e\x66\x51\x20\x06\xf7\x79\x86\x7b\x79\x87\x65\x03\x8e\ +\x2a\x7b\xd4\x46\xee\xd1\xba\x45\xa8\xd6\x8b\x8a\x3f\x58\x31\x66\ +\x90\xe2\xe5\x21\x9d\xa0\x94\xb4\xa2\xa2\x94\xee\xf2\x92\x01\x00\ +\xe4\xe0\x90\x79\xc6\x29\xad\x7d\x30\x5f\xea\x15\x5a\xe3\xea\x07\ +\x0c\xc1\xa8\x93\xa8\x5b\x96\xf4\x40\xa0\x24\x85\x25\x44\x29\x01\ +\x43\x72\x4a\x82\x8f\x05\x3c\x10\x3d\x32\x67\x97\xeb\x13\xf7\x9d\ +\x0d\x73\xd3\xb2\x66\xb6\x89\x17\x1b\x7b\xd0\xdc\x94\x86\x30\x94\ +\xa9\xc6\xca\x0a\xc3\x65\x59\xc0\xce\x76\xee\xfc\x6a\xae\x6e\x2b\ +\x5e\x65\xa9\xd1\x9c\xaf\x7e\xc2\xb3\xe9\xfb\x97\x58\x88\xd3\x7a\ +\x32\xc1\xfa\x8a\x24\xb7\x74\xe3\x57\x89\x93\x5c\xb7\x1d\xbe\x1a\ +\xb6\xb6\xd2\x03\x48\x5a\x77\x2b\x20\xee\x59\x57\x61\xdb\x26\x94\ +\xb7\xd4\x7d\x49\x70\xb5\xe9\x96\x6d\x70\x6d\x71\xaf\x17\x4b\xa4\ +\xcb\x44\xb0\xf8\x5a\xd8\x65\xe6\x37\x65\xc4\xe0\x85\x29\x38\x46\ +\xe0\x9c\x8c\xe7\x19\x1d\xea\x4f\xfd\x03\x95\x0e\x55\x92\xe7\x64\ +\xbe\x88\x57\x5b\x6d\x9d\x36\x87\x1e\x7a\x1f\x8c\xcc\x96\x06\xd2\ +\x0a\x9b\xde\x92\x14\x14\x9d\xc0\x85\x71\x92\x0e\x45\x68\xb7\xf4\ +\xce\x2c\x01\xa5\x04\x7b\xbb\xaa\x36\x29\xf2\x27\xbe\xe3\xcc\x85\ +\x2e\x6b\xaf\x25\x7b\xc9\x20\x80\x9e\x56\x4f\x63\xc0\x03\xe6\x92\ +\xe4\xde\xe3\x23\x4a\xa4\x74\x5e\xb6\xfc\x93\x98\x48\x7d\x30\x98\ +\x44\xc5\xb6\xec\x84\xb6\x90\xf2\xdb\x46\xd4\xa9\x78\xf3\x10\x32\ +\x70\x09\xcf\x19\x35\xa6\x74\x20\xe2\x0a\x9b\xe1\x58\xef\x4b\x7e\ +\x86\x81\x44\x66\xe2\xee\x8d\x92\x82\x92\xb3\x18\x63\x47\xda\x49\ +\x79\x5c\x8f\x4a\x58\x09\x23\x68\x18\x4d\x6c\x94\xd8\x4b\xc1\x5e\ +\xf5\xe0\xad\x2e\x79\xb5\x33\x46\x19\x74\x3d\x4a\x76\x8a\xda\xc8\ +\xc6\x56\xae\xd5\xad\x09\x2b\x50\x03\xd2\x95\x3a\x90\x19\x29\x14\ +\x99\x3e\x43\xa2\xb9\x8d\xb3\xb0\xb7\x0a\x93\xcf\x15\x1c\xd4\x72\ +\xdd\x8d\x01\xe2\x81\xb9\x7b\x4e\xd1\xee\x6a\x40\xa5\x14\x93\x8f\ +\x4a\x8f\xea\x16\x17\x25\xa5\x0f\x53\x5a\x32\xc9\xc6\xd1\x32\xd4\ +\x77\xd5\x1f\x3d\xb5\xfd\xcf\x5d\xeb\xad\x61\x24\x39\x0e\x5c\x87\ +\x91\x93\xf6\x76\x92\xa0\x86\x12\x0e\x30\x40\xf6\x3c\x12\x7d\x69\ +\xb2\x2e\x9d\xd5\x16\x89\x6c\xbb\x71\xb6\x3e\xd3\x41\x61\x38\xdd\ +\xc1\x27\xf1\xae\x90\xeb\x0c\x46\xb4\xe2\x5f\xbc\xc7\x6d\xb6\x64\ +\x15\x7e\xd1\x40\x04\x97\x72\x47\x94\x9f\x73\x54\xcd\xf2\xfa\x8b\ +\xf6\x9d\x79\xf8\x4a\x52\x64\x32\xe2\x56\xa6\xd6\xac\x2d\x24\x1f\ +\x6f\x51\xf4\xae\x35\x49\xce\xed\x4d\x58\xe8\x61\x6a\xb7\x97\x24\ +\x74\xd8\x6f\xd5\xf6\x69\x6e\x86\xa3\xb7\x66\x7c\xc9\x77\x21\x00\ +\x27\x2b\x51\x03\x24\x77\xf4\x19\xa8\x33\xda\x6a\xf3\xe2\x61\x16\ +\xa7\xce\x4e\xd0\x0f\x07\x3c\x9f\x7f\x83\x57\x25\xd5\x71\xcb\x08\ +\x96\xec\xc6\x5a\x69\x61\x2f\x36\xe2\xdd\x09\xda\x48\xce\x46\x4f\ +\xb1\xaa\xcf\x50\x6a\x75\x15\xed\xb6\x05\x25\x49\xdd\xbd\xee\xe3\ +\x24\x11\x91\xf8\x13\x8f\xad\x36\x8c\x1a\xa7\x9a\xfb\xaf\x32\xcb\ +\x13\x2a\xcd\x45\xc7\x62\x2b\x1d\x82\xe4\xb6\x62\xaf\x09\x53\x8e\ +\x25\x18\xcf\x6c\x9c\x72\x6b\xc9\x51\x9c\x6a\x43\x8c\xe3\x1b\x16\ +\x5b\x51\xfa\x1c\x1a\x5d\xa7\x19\x13\x2f\x91\xc3\x88\x52\x9b\x6c\ +\x97\x5d\x24\x9c\xe0\x73\xc9\xf9\x38\x1f\x8d\x6f\xbd\x36\x7c\x57\ +\x24\x38\x70\x5c\x3c\x24\x7a\xe3\xd6\x9b\x14\xdb\x7d\xc1\x27\x1b\ +\xd8\xd1\x79\x94\xe5\xde\xee\xf4\xa7\x37\x3b\x35\xd7\x50\x80\xd3\ +\x0d\x65\x2a\x21\x20\x71\xf9\x70\x3d\x6b\xa1\x7a\x0f\x0d\x33\xfa\ +\x7c\xea\x5b\x6b\xc5\xd8\xa2\x36\x77\x25\xbc\xe4\x1e\x3f\x78\x12\ +\x7f\x0c\x7b\x57\x3e\xdb\x2e\x26\xdd\x35\xb9\x6d\x36\x91\x22\x30\ +\x43\xad\xa8\x7e\xea\x92\xa0\xa1\xfc\x06\x0f\xd6\xba\x17\xf4\x6a\ +\x92\xe3\xa8\xbb\xac\xb5\xe0\x66\x7f\x8c\x1b\x40\xc6\xc4\xb8\x37\ +\x0e\x3d\xbe\x7b\x57\x3f\x1f\xd6\xa7\x67\xca\xdf\x63\xa7\xd1\xed\ +\xc6\x6e\x48\x64\xd7\xda\x6a\x4c\x29\x49\x7a\x3a\xd1\x94\x28\x2d\ +\xa7\x14\x33\x90\x32\x70\x7d\xe9\xab\x4f\xea\x29\x2c\xf8\x5e\x02\ +\x56\x42\x4a\x81\x69\x4b\xda\x52\xac\x85\x10\x93\xdf\x07\x9f\xc3\ +\x8a\xe8\xad\x51\x64\x8b\x26\x23\x8f\xa5\x96\xdf\x52\x0a\x94\xe3\ +\x09\x1e\x60\x0f\xef\xa7\xfc\x40\xf6\xe2\xa8\x6d\x71\xa2\x57\x68\ +\x96\x65\xb0\xe8\x2a\x4f\x29\x52\x46\x4a\xd2\x71\xc0\xe7\xdf\xf8\ +\xd7\x26\x2a\xdd\x59\x7c\x0f\x41\x0a\xdc\x4e\xb2\xdf\x99\x37\xb4\ +\x6b\x95\x18\xf1\xbc\x44\xab\x85\x79\x51\x8c\xf6\x3d\xf3\xe9\xd8\ +\x60\x1e\x6a\x4d\xf6\xe6\xe4\x23\x28\x5b\x7b\xd9\xcb\x89\xda\xb3\ +\x95\x1e\x0a\x88\x3d\xf3\xe9\xcf\x07\x35\x45\xdb\x11\x20\x90\x84\ +\x2c\xa1\xe2\x00\x2a\x74\x14\xe0\x1e\x09\xc7\xe1\x52\x07\x5d\x99\ +\x0d\xf8\xbb\x9b\x12\x1b\x64\xec\x58\x2b\xf3\x2c\x77\xf4\xcf\xcd\ +\x2e\x49\xa7\x64\xc9\x96\x1e\x13\xd5\x68\x58\xcc\x5d\x1a\x64\xb8\ +\x43\x8b\x69\xc9\x18\x29\x52\x80\x1e\x1a\x14\x48\xc7\xc9\x24\x91\ +\xf9\x54\xa6\xd5\xac\x5a\x8c\xda\x1d\x79\xd3\x15\xc4\xe5\x05\xa7\ +\x10\x40\x47\xa7\x97\x9f\x31\xc2\x48\x38\xf5\xcd\x52\xd3\xae\x4a\ +\x5a\x54\x63\x89\x0c\xa9\x68\x40\x6e\x3a\x8e\xd5\x67\x83\x92\xa3\ +\xfb\xbd\xb1\xeb\x5b\x67\x5c\x51\x28\xc5\x6a\x6a\x32\xe4\x70\x54\ +\xd2\x37\xa9\x60\x7a\x11\x8c\xf3\xdf\x9f\xad\x5a\x15\x25\x11\x33\ +\xc2\x46\x45\xff\x00\x6d\xd5\x70\xd2\x43\x89\x7e\x13\x8d\xb8\x42\ +\x96\x19\x70\x2b\x7a\x49\xc0\x27\xd8\xf7\xe7\xe2\xa4\x08\xba\x25\ +\x4e\x36\x63\xbe\xd3\xad\x28\x00\xbc\xab\x9e\xd9\x07\x3e\xbc\x1e\ +\x47\xc5\x72\xe3\xd6\xc8\xd2\xda\x53\xb1\x24\x4f\x4b\xc5\x64\x2d\ +\xb2\x36\xec\x09\xe0\xa9\x40\x1c\x00\x33\x81\x8f\x8a\x77\xb6\xc1\ +\xbe\x90\xd3\xd1\xb5\x1c\xd2\xca\x52\xa0\x8c\x34\x55\xb4\xa5\x38\ +\x4e\x01\xf9\xfe\x74\xe8\xe2\xb2\xab\x31\x32\xe8\xf4\xf5\x4c\xe9\ +\x28\xf7\x58\xaa\x52\x92\x14\xe2\xd0\xda\x4a\x4a\x89\x00\x13\x9e\ +\xff\x00\xe1\x5a\xdf\xbd\x41\x8a\xa4\x93\x21\xa0\x51\xf7\xdd\x1c\ +\x63\x23\x03\xe0\xf2\x45\x73\xab\x82\xf8\xd3\x0b\x73\xfa\x45\x21\ +\x87\x56\x43\xcd\xb4\xf6\x08\x07\xb7\x38\xf8\x26\x9a\x2e\x97\x3d\ +\x45\x21\xf6\x61\xa2\x42\x12\x8c\x8f\x0d\xe5\x76\x51\xc1\x21\x58\ +\xec\x14\x71\x9c\x55\x96\x31\xb2\x1f\x47\x77\x96\xd6\xaf\xd6\xb1\ +\xe6\xbf\x25\xa8\xcf\x0f\xf6\x56\x9b\x59\xdc\x78\xde\x4a\xbb\x9f\ +\x73\xb4\xfe\x75\x5e\xea\x7d\x69\x2e\xe5\x30\xc1\xb7\x28\xbe\x96\ +\xf2\x90\xa3\x9c\x01\xc9\x00\xfb\x60\x54\x30\x45\xbb\xcb\xb9\xa6\ +\x2a\xa5\x89\x13\x23\xb1\x92\xb6\xd5\x93\xb9\x47\xd4\x01\x8e\x32\ +\xaf\xce\x9c\x2d\xf6\x77\x23\x3c\xa9\x2e\xc9\x58\x65\xbc\x92\x90\ +\x08\x71\x47\x27\x72\x56\x47\xd4\xd2\x67\x55\x6e\xd9\xa6\x9e\x15\ +\x2e\x42\xb8\x32\x4c\x56\x1a\x4b\x1b\x5d\x90\x37\x07\x49\x18\xc7\ +\x97\x95\x13\xd8\x73\xc6\x7d\x78\xe2\xbc\x76\xd6\x59\xb5\xc9\xbb\ +\x5c\x14\xb7\x27\x86\x1c\x0e\x29\x49\xc2\x41\x50\xc6\x11\xfd\xd0\ +\x14\x7e\xb9\xcf\x14\xe9\x6d\xb6\x26\x42\xb6\x32\xd8\x6e\x18\xfb\ +\xe9\x56\x78\x57\x73\xeb\x82\x72\x7b\x7c\xd2\xfd\x7c\xc3\xcd\xe9\ +\x39\xeb\x48\x51\x1f\x65\x51\x09\x3d\xd2\x00\x27\x15\x85\xd4\xbc\ +\x92\x5c\xcd\x71\xb4\x59\xca\x57\x28\xc2\x3d\xc1\x6c\xa9\x25\x08\ +\x49\xdd\x8f\x5c\x11\x9f\xe5\x4e\x5a\x85\x22\x38\x53\x0d\xa9\x1e\ +\x19\x0d\x29\x01\xb3\x91\x80\xda\x7d\x7e\x09\x57\xe3\x9a\x75\xd7\ +\x76\x97\x94\xd4\x0b\xd3\x0d\x3c\xa8\xd7\x16\xff\x00\xd9\xd6\xa3\ +\x92\xa2\x00\xc8\x23\xd8\x64\x01\xf4\xa6\x3f\x1c\xc9\xb9\xb4\xa5\ +\x90\x12\x97\x39\x18\xfb\xa9\xe1\x3f\xc8\x7f\x1a\xf5\x94\xaa\xaa\ +\x90\x52\x3c\x7d\x5a\x5c\x3a\x92\x87\x6b\xd3\xc1\x9e\xb4\x96\x9a\ +\x69\x98\x9b\x86\xf7\x88\x52\xc8\x3f\x77\x9e\x07\xe3\xdf\xf2\xa7\ +\x54\x58\xe4\x7d\x91\x99\x68\x43\xfb\x06\xe2\xe0\x49\x07\x19\xc1\ +\x03\xe0\xf6\xf8\xac\x64\x5a\x24\x38\x13\x28\x20\x06\x5d\xfd\xb3\ +\x8b\x04\x05\x47\x4e\x70\x33\xed\xc0\xfe\x55\x63\x40\xb7\xc9\x94\ +\xc4\x59\x6c\xbe\xe3\x3b\x19\x52\x92\x3b\xa5\x44\x0c\x10\xaf\x62\ +\x40\x07\x3d\xb9\xac\xb8\x8c\x46\x44\x9c\x4d\xf8\x4c\x2a\x93\x6a\ +\xa2\xdb\x62\x2f\xa3\x58\x9a\x99\xc0\xfe\xaf\x6a\x68\x50\xe1\x52\ +\xde\xe1\x1c\xf7\x1b\x54\x39\xfc\xeb\xa8\x7a\x52\xcb\xcf\x36\x95\ +\x3a\xda\x42\xc6\x32\x12\x30\x07\xd3\xe2\xa9\x58\xaf\x3a\x99\x68\ +\x4c\x68\xca\x8c\x87\x0e\xe5\xa5\xb7\x02\xd2\xa3\xea\x7d\x2b\xa1\ +\x3a\x3e\x85\x38\xdb\x41\x28\xca\x4f\x73\x8a\xdf\xd1\x0b\x8b\x2e\ +\x26\xc7\x9f\xe9\x97\xfb\xd9\x2d\xb1\x6b\xd8\x42\xb6\x24\x67\x18\ +\xa7\x83\x83\x84\xd2\x66\xa0\xa9\xa4\x78\x8c\x8f\x4e\xd5\xb0\x3b\ +\x95\x03\x8e\x41\x19\xae\xd4\xda\x9b\xba\x39\xb1\x4e\x0a\xcc\x90\ +\xb0\x90\x96\x52\x07\xb5\x14\x32\xa0\xa6\x52\xae\xdc\x51\x5c\xb7\ +\xb9\xd4\x5b\x10\x8e\x95\x5d\xa0\xb9\xa2\xad\xd1\x0b\x98\x5a\x43\ +\x80\x82\x7f\xe3\x15\x4e\x17\xa8\x06\x3b\xa5\xf6\x47\x90\xf7\xc5\ +\x57\x9d\x2a\xb7\x3f\x2a\xcf\x6f\x59\x2a\x42\x32\xbc\x1c\xff\x00\ +\x7d\x55\x72\xa6\x3a\x4c\x50\xd2\xc8\x56\x05\x6f\x93\x54\x1a\x6b\ +\x99\xcd\xa2\x9e\x22\x9d\x9f\x22\x18\x95\x6e\x41\x23\x3f\x41\xe9\ +\x52\x6d\x3a\x13\xf6\x00\x78\xfa\xe2\x9a\x2e\xf6\xb7\x23\xac\xba\ +\xc8\xca\x09\xe4\x0f\x4a\x51\xa6\x66\x24\x66\x3a\xd4\x02\xb3\xc0\ +\x34\xca\xed\x54\xa5\x78\x95\xa0\x9d\x3a\xb6\x91\x9c\xad\x5b\xa7\ +\xda\xb3\x37\x75\x6e\xeb\x0d\xc8\x4e\x3b\xe0\x21\xe4\xb8\x36\x29\ +\xcd\xfe\x1e\xc0\x7d\xf7\x8d\xb8\xf7\xa6\x87\xb5\xa5\xb3\xf5\xc2\ +\x6d\x2a\xbd\x5b\x9b\xb8\xa8\x80\x98\x8a\x92\x80\xe9\x27\xb0\xdb\ +\x9c\xe4\xf7\xc5\x54\xe2\x2b\xad\xf5\x81\xfd\x04\x50\xa1\x06\x25\ +\xf5\xcd\x48\x36\x8e\x03\x2a\x6c\x29\x09\x1e\x98\x12\x1c\x27\xfe\ +\xaf\xd2\x99\xe7\x04\x27\xa6\xd7\xdd\x26\xe2\x48\xd5\xf2\x35\x03\ +\x8e\x30\xc1\x6c\xf8\xee\xba\xa9\x49\x52\x24\x24\x77\x28\x08\xc1\ +\xde\x38\x00\x11\xf1\x4a\xa7\x08\xc6\x37\xb5\xc5\xd5\xc5\x54\x6d\ +\xad\xac\x5f\x08\xd5\xf0\x18\x76\xe2\x87\xa7\xc7\x1f\xaa\xd0\x17\ +\x3c\x6f\x19\x8e\x92\x8d\xe0\xaf\xdb\xcb\xcf\xd2\x9c\x7f\xa6\x1a\ +\x65\x28\x63\xc7\xbe\x5b\xd9\x2f\xa5\x85\xb2\x97\x1f\x4a\x4b\x81\ +\xe2\x52\xd6\xd0\x4f\x3b\x8a\x55\x8c\x77\xda\x7d\xaa\x89\xd4\xf3\ +\x23\xc1\xbe\x75\x6e\xdf\x2d\x65\xa9\x97\x8b\x6b\x22\xda\xc6\xd2\ +\x57\x2f\xfd\x88\xb5\xfb\x30\x3e\xf6\x17\xc1\xc7\x6e\xe7\x8a\x71\ +\xe9\xcb\x51\xff\x00\xf6\xb3\x61\x75\xf8\xec\xbc\x5b\xd0\x50\x94\ +\xd9\x5a\x02\x8a\x09\x79\x5c\x8f\x63\xf3\xf3\x51\x56\x9c\x65\xb2\ +\xb3\x2d\x4b\x17\x35\x2b\x32\xed\x8b\xa9\x34\xf4\xbb\xc3\x96\x68\ +\x97\xcb\x6c\x8b\x8b\x7b\x82\xe2\xb7\x25\x0a\x75\x25\x3f\x78\x14\ +\x83\x9c\x8f\x51\xe9\xc6\x7b\xd3\x42\xb5\x35\x8e\x43\xd3\xbf\x52\ +\xde\x6d\xb7\x09\x11\x1b\x52\xdd\x66\x3c\x94\x38\xa4\x63\x23\x90\ +\x93\x9c\x64\x11\xf5\x04\x77\x15\x58\xd9\xa4\xcd\xb7\x0b\xae\x87\ +\xd0\x97\xb8\xda\x92\xcf\x71\xb5\x5c\xa4\xc3\x5b\x29\x05\xfb\x3c\ +\x95\x02\xa4\x21\xc7\x13\xc2\x82\xd6\xe1\xdb\xbb\x0b\x1f\x4e\xf8\ +\xe8\x98\x50\x27\xc0\xd3\xb3\xc6\xac\xb7\xb9\x3e\xcf\x60\x76\x22\ +\xad\x0c\x41\x0c\x48\x65\x0a\x69\x01\x4d\xbf\x95\x95\x02\x85\x24\ +\x77\x03\x27\x27\xd6\xb3\x53\x76\x95\x87\x4e\xbc\xa4\xb4\x5e\xbe\ +\xa3\xcc\x2e\xab\x2d\x76\x4d\x18\xe0\x66\xd7\x1e\xed\xaa\x12\xa7\ +\x31\x29\xf5\x25\x88\xc8\x4a\x54\x72\x70\x0a\x8e\x48\x09\x48\xe3\ +\x93\x56\xba\xee\x51\x63\xca\x83\x6f\x9d\x2a\x3b\x17\x09\xa9\x51\ +\x65\x8d\xfc\xba\xa4\x24\x15\xec\xcf\x24\x00\x73\xf4\xaa\x27\xa7\ +\x83\x0d\x74\x1f\x1f\xfc\x0b\x8f\xfe\x11\x75\x3d\xeb\xc3\xe8\xb2\ +\xda\x6c\x5a\xcd\x41\x41\x3a\x7e\xee\xcb\xef\xa9\x23\x24\x47\x74\ +\x16\x1d\x18\xfa\x38\x0f\xe1\x55\x93\xcc\xcb\x50\xa9\x28\xd3\x72\ +\x6f\x6b\x7f\x09\xbf\xe4\x94\x48\xd5\xba\x7d\x11\xae\x52\x1b\xbc\ +\x43\x53\x56\xb7\x14\xd4\xf5\x87\x46\x23\x2d\x23\xcc\x95\x9f\xdd\ +\x23\xe6\xa1\xf2\xfa\x99\x6d\x85\x17\x55\x5c\xa7\x48\x84\x60\x58\ +\x56\x1b\x49\x8b\x31\x2e\xba\xf2\xf6\x12\x5b\x52\x38\xd8\xbd\xe9\ +\x52\x40\x27\x9c\x55\x55\x1e\xdb\x26\x15\xca\xd7\xa5\xe4\x21\x41\ +\xcd\x76\xcc\x29\xd3\x40\x49\x23\xc5\x43\xeb\x7e\x60\xcf\xcb\x6a\ +\x48\x24\xfb\x53\xb6\xb3\x6d\xc9\x07\xae\x2c\xc7\x69\xc7\x5c\x54\ +\x78\x1b\x50\x84\x95\x13\x88\x89\xf4\x1f\x14\xe5\x1c\xab\x41\x13\ +\xc4\xce\x4a\xfb\x7f\x4d\xfd\x89\xed\xc7\xa9\xf6\xb8\x97\xed\x2e\ +\xd3\x33\xe0\x1b\x4d\xe5\xb9\x6a\x7a\x63\xaf\x84\x86\x54\xca\x1b\ +\x21\x20\xf6\xc9\x2b\xc6\x3e\x98\xef\x56\x1d\x8a\xed\x6f\xbd\x5b\ +\x5a\xb8\x5a\xe6\xc7\x9b\x15\xd1\x94\x3c\xc3\x81\x68\x57\xd0\x8e\ +\x2a\x9f\x9b\x3a\xd5\x79\xea\x67\x4a\xe6\x5b\xe5\x45\x9e\xc2\x62\ +\x5c\xca\x5d\x69\x61\x69\x0a\x11\xd9\xec\x47\xa8\xcf\xe1\x4f\xfd\ +\x01\x21\xb8\x3a\xc5\x23\xca\xdb\x7a\xba\xe6\x94\xa4\x76\x48\xf1\ +\x07\x03\xd8\x55\x26\xae\x87\x50\xab\x2e\x26\x56\xee\xbf\x08\x97\ +\x3f\xaa\x74\xd3\xd7\xb1\x64\x66\xff\x00\x6b\x72\xe6\x14\xa4\x18\ +\x89\x94\x82\xe8\x5a\x7e\xf2\x76\xe7\x3b\x87\x72\x3b\x81\x4e\x49\ +\xc9\x38\x03\x9a\xa0\x35\x56\xa6\xba\x6a\x8b\xc5\x8f\xed\x72\xd8\ +\x8c\xf4\x2d\x71\x15\xa3\x67\x66\x29\xf1\x62\x32\x99\x3e\x1a\x5e\ +\x79\x79\x24\x6f\xdc\x39\xc2\x52\x77\x80\x33\xcd\x74\x53\x0d\x06\ +\xc7\xcd\x17\xca\x86\x52\x9f\x16\x4f\xb0\xf1\x09\x0c\xb5\x9c\x64\ +\xfa\xd2\x67\x25\x2d\x60\x80\x31\x4b\x8e\x08\xe6\x91\x3c\xc0\x56\ +\x54\x38\xaa\xc1\xa6\xf5\x34\x4d\x34\xb4\x13\x00\x09\xc9\xf5\xa4\ +\xb3\x63\x64\x9e\x29\x72\x12\x94\xf9\x48\xed\x5b\x5f\x40\x2d\x53\ +\xf3\xe5\x62\x63\x0b\x94\x8f\x56\x2d\xb6\x93\x6c\x92\xfd\xed\x31\ +\xbe\xc0\xda\x0a\x9e\x2f\xfd\xc0\x9f\x9a\xe2\xad\x53\x72\xd3\x8d\ +\xea\xa7\x13\xa6\x5c\x71\xa8\x2a\x59\xdc\x1d\x3f\xb3\x3c\xfe\xee\ +\x41\x56\x09\xf7\xae\xfa\xea\xbe\x93\x87\xaa\xb4\xec\xab\x3c\xf2\ +\xf8\x8c\xf8\x1b\xfc\x25\xed\x51\xda\x42\x87\x3e\xd9\x1d\xaa\x86\ +\x73\xa4\x9a\x62\xc6\xb5\x18\x36\x64\x2d\x7d\xbc\x49\x07\xc4\x3f\ +\xc7\x8a\xc5\x89\x4e\x73\xd2\x2d\xdf\xe4\x5a\x85\x55\x87\x93\x95\ +\xce\x74\xbb\x5a\xda\x96\xe2\x1d\xb7\x87\xdf\x2b\x38\x4b\x69\x41\ +\x3b\xd5\xec\x90\x29\xb6\x6e\x92\xd4\xc2\x40\x6d\xeb\x1d\xc1\xa5\ +\x67\x01\x0e\x30\xa4\x63\xfe\xd7\x6a\xbf\xf5\x45\x9e\x2c\x7b\x6a\ +\xe3\xcb\x65\xb6\xa3\x23\x2a\x05\x23\x69\x6c\x8f\xde\x49\x1d\x8d\ +\x55\x77\xcd\x7a\xa6\x9e\x31\xe1\xc8\x5d\xdd\x49\x4e\x13\x22\x40\ +\x52\x55\xff\x00\x58\x67\xcd\xf5\xe2\x95\x1a\x55\x29\x3c\xb2\x36\ +\x54\xc5\xac\x46\xb4\xe2\x37\x47\xb5\x45\xd3\xd6\xd2\x97\xe5\x37\ +\xf6\xd7\x9b\x0b\x96\x73\xc3\x69\xdc\x30\x81\xef\xdb\x27\xdf\x03\ +\x1e\xf4\xc7\x72\x90\xdc\xe9\xec\xbe\xb6\x9c\x6a\xda\x95\x12\x95\ +\xa8\x60\xad\x23\xef\x63\xdc\xfc\x57\xaf\xb4\xe5\xd1\xe7\xee\x17\ +\x0b\x82\x5d\x79\x78\x27\x68\x2b\xe7\xb0\x1c\x71\xf0\x00\xa7\xa4\ +\x68\x89\x8d\x36\xdc\x8b\xf3\xff\x00\x65\x8c\x96\xc2\x92\xd1\x58\ +\xde\x12\x7b\x25\x5e\x89\x27\x9e\x3d\x2a\x54\xd4\x6f\x14\xf5\x7e\ +\xb4\x23\x87\xc3\xb4\xe6\x44\x6e\x46\x19\x95\x21\x70\xbc\x64\xc5\ +\x71\xc5\x16\x43\xbc\xa8\x23\x77\x1b\x8f\xa9\xc6\x33\xf3\x5d\x09\ +\xd0\x2b\xdc\x49\xf2\x61\x3b\x1e\x57\x8b\x30\xc2\x6e\x3d\xc1\x95\ +\x0c\x29\x0a\x6b\xca\x83\xf2\x0a\x7d\x7d\xc5\x52\x9a\xe2\x74\x59\ +\x0a\x8c\x21\xb6\xcb\x48\x65\x3e\x1b\x69\x6d\x20\x00\x90\x06\x3e\ +\xbf\x5a\x9b\xfe\x8a\x8f\x1f\xe9\xd5\xc1\xa5\x94\x80\xe4\x1d\xd9\ +\x50\xec\x43\x89\xc7\xf3\xc7\xe3\x48\xc6\xd3\x5c\x2c\xcf\x91\xab\ +\x03\x51\xba\xa9\x2e\x67\x5b\x82\xd2\x23\x07\x83\x45\x6b\xc0\x1e\ +\x51\xdb\x9e\xe7\xd7\x1c\x53\x16\xa4\xb6\x34\x82\x64\xc6\x65\xa0\ +\xc1\x4f\x88\xb4\x21\xb0\xa0\xbc\x9e\x4a\x49\xec\x3d\xc0\xf7\xf8\ +\xa9\x1c\x21\xb1\xa0\xa0\x82\x49\x47\xe3\x5a\xe5\xc6\x5b\xc9\x75\ +\xb4\x3a\x5b\x5f\x2a\x6f\x27\x09\xc9\xee\x0f\xc1\x1f\x85\x72\x2d\ +\x74\x75\xe3\x2c\xac\xae\x11\x65\x87\x71\x43\x49\x7d\xb7\x5d\x70\ +\xb7\xb9\x58\x4e\x32\x9c\x9f\x5c\x76\xc1\x3f\x95\x7b\x74\xd0\x59\ +\x82\x96\xd8\x91\xfb\x2d\xa0\x05\x31\xc9\x4e\x47\xa8\x1d\xf3\xeb\ +\x8a\x9a\x16\x03\x72\xd6\x10\xde\xf6\x52\x72\xf2\x14\x13\x96\xbd\ +\xf0\x3d\x52\x4e\x2a\x47\x62\x4c\x2f\xba\xd2\x52\xb6\xf0\x49\xcf\ +\x73\xee\x3e\x71\x55\x85\x24\xf4\x63\x9e\x2a\x70\xd5\x14\x5c\xed\ +\x0b\x70\x8c\x94\xc9\x6d\xbf\x15\x0c\x84\xa0\x06\x89\x19\x23\xe3\ +\x9c\x11\xf9\xd2\x17\x2d\x2e\x43\x49\x5c\xb6\x65\x3e\xea\x94\x3c\ +\x13\x90\x48\x1e\xb9\x1e\x9d\xbd\x79\xae\x9e\x30\xa3\xc8\x28\x25\ +\x2d\x00\x46\x42\x47\xef\x1f\x9f\xf5\x9a\xd1\x3f\x48\xd9\x26\xc7\ +\x5b\x1f\x62\x43\x24\x1c\xe1\xb2\x40\xe7\xbe\x47\xaf\xad\x12\xc2\ +\x4b\x78\xb2\xd0\xe9\x34\xbd\xf4\x73\x73\xca\x92\x72\x11\x18\x04\ +\x25\xc1\xb5\x41\x24\xee\x18\x39\xc8\xf5\x39\xe3\x3d\xab\x6c\x49\ +\x57\x24\x20\xa8\xdb\x1f\x4b\x9e\x38\xf0\xc0\x5f\x07\x00\x8e\x31\ +\xce\x06\x7b\x9f\x8c\x55\xd9\x75\xd1\x01\xb6\xc7\xd8\x5c\xf0\xb0\ +\x0e\x06\x3f\x21\xff\x00\x95\x47\x67\x69\xc5\x31\xbd\x4b\x8e\x94\ +\x85\x61\x1b\x92\x0e\x4f\x3d\xbe\x9d\xeb\x34\xe9\xd4\x86\xe8\xd3\ +\x0c\x55\x29\xad\x0a\xc5\xc8\xf7\xa7\x5a\xf0\x5e\x0c\x23\x78\x2b\ +\x74\x00\x4a\x46\x14\x32\x33\xc6\x38\xf6\x35\x82\xf4\xf3\x4e\xc9\ +\xcc\x89\x2e\xba\xa2\xb5\x06\xb7\xab\x6a\x06\x4e\x71\xc7\x07\x80\ +\x07\xf2\xa9\xd4\xbb\x6a\xd8\x65\x69\x4c\x72\xfa\x57\x94\xa8\x2d\ +\x38\x00\xe7\x24\xa8\xfb\x7d\x3e\x29\x13\xd1\xdb\x53\x4b\x4c\x72\ +\x92\x55\x80\xa2\x3d\xbf\xf2\xf7\xa4\x39\x49\x6c\x68\x55\x13\xd8\ +\x8e\x38\xcb\x71\x5f\xfb\x34\x76\x5a\x68\x38\x47\x88\xa6\xbc\xa5\ +\x2a\xce\x70\x7f\xb5\x93\xeb\x59\xb1\x6e\x2a\x7c\x3b\x32\x3b\xeb\ +\xdd\x92\x86\x5b\x40\x52\xb2\x3f\x78\x9c\xf1\x9c\x7a\xd4\x91\x98\ +\x28\x2c\x78\x88\xda\xf3\xe5\x01\x28\x0d\xa7\xcb\x91\xea\x4f\x6a\ +\x72\xb5\xdb\x84\x73\x94\x21\xb4\x12\x09\xc2\x07\xaf\xa7\x34\xbd\ +\x59\x57\x51\x24\x37\x59\xed\xaa\x43\x0a\x43\x81\xad\xff\x00\xf0\ +\x4d\x04\x7d\xc2\x7d\x33\xea\x7e\x6b\xcd\x73\x6b\x2d\x68\x8b\xb3\ +\xce\x20\x94\xb7\x11\xce\x0f\xb6\xde\xd5\x34\xb4\x5b\x5f\x59\x0e\ +\xed\x04\x81\xe5\xdc\x30\x09\xa4\xdd\x4e\x65\x0a\xd2\x53\xa1\xa9\ +\x29\x52\x5e\x65\x48\x71\x25\x45\x20\xa4\xf0\x46\x47\x23\x8f\x6a\ +\x74\x68\xda\x39\x99\x92\x55\xfa\xe9\x23\x92\x74\x8d\x95\xfd\x4b\ +\xa3\x66\xc0\x45\xdd\xc6\xee\x16\xc4\x87\xe0\x42\x75\x25\x41\xe4\ +\x14\xf9\x83\x67\xba\x54\x9c\x13\xec\x47\xd2\xa1\x53\x63\x48\x83\ +\x7c\x75\x2f\xb4\xb6\x9e\x52\xb2\xe6\xe4\xf6\xcf\xde\x18\xf9\x39\ +\xa9\x5c\xd3\x2f\x4a\x6b\x3b\xad\xbe\x13\xeb\x71\xfb\x5c\xa5\x16\ +\x55\x9f\x32\xd2\x85\x03\xb4\xe3\xdd\x2a\x20\xfd\x4d\x49\xe6\xdb\ +\xed\x57\xab\x95\xc6\x59\x77\x88\xef\x86\xe3\x15\x73\xfb\x32\xe6\ +\x52\x09\xf5\x21\x27\xf9\x57\x5e\x15\xa5\x4e\xa5\xd2\xbc\x65\xaa\ +\xf8\xd8\xc8\xe8\xd3\xab\x04\xdb\xb3\x8f\x6f\xc8\xd1\xa4\x5b\x6c\ +\x37\x21\x6d\x24\xa1\x68\x1b\x5d\x4a\x53\x95\x14\x9f\x6c\xf0\xa0\ +\x06\x46\x3d\xbd\xea\x40\xe3\x0b\x7e\x32\x98\x88\xfa\x6d\xef\x6c\ +\xc3\x5b\x1b\xdc\xd8\xe3\x70\xcf\xf7\x08\x27\x9f\x4f\x6a\x6b\x5b\ +\x4c\xda\xe2\x96\x5a\x01\x32\x49\x21\x2b\xcf\x74\xf7\x19\x1e\xa3\ +\xe6\xb1\x8b\x76\x99\x16\x64\x55\xb8\xe7\xf5\x45\x45\x0b\xf4\x71\ +\x0a\x18\x29\x27\xd8\x91\xd8\xfa\xd2\x2b\x46\x51\x86\x6b\x6a\xc7\ +\xd3\x9a\xab\x5a\xd0\x92\xb2\xfb\x09\x51\x2a\x54\x2d\x42\x88\x57\ +\x86\x19\x86\xe9\x50\x27\x24\xa5\x2b\x57\xb2\x55\xdb\x24\x72\x0f\ +\x63\x5d\x5d\xd1\x75\xb1\xf6\x26\xc2\x46\xde\xdd\xfb\x8a\xe6\x6d\ +\x40\xeb\x1a\x96\x04\x78\x56\xe4\xb6\x5c\x69\xc0\xec\x17\x15\xc9\ +\x69\x59\xf3\x32\xaf\x74\xe3\x91\x9f\x6c\x57\x4b\x74\xcd\xa6\xe2\ +\xb4\xca\x77\x02\x43\x69\x07\x1e\xbc\x72\x6b\xb3\xd1\x52\x94\x5a\ +\x8c\x79\x9e\x53\xa6\x24\x9d\x65\x3b\x59\xf3\x2e\xf8\x2b\x42\x90\ +\x12\x71\x58\x4b\x80\x87\x3c\xed\x1c\x2a\x91\xdb\xc0\x2c\x83\x9e\ +\x3b\xd3\x8c\x10\xb2\x4a\xca\x8e\xdf\x40\x6b\xab\x2b\xc1\xb6\x99\ +\x95\x35\x35\x66\x8d\x50\x9d\x71\x9f\xd8\x3c\x9c\x7b\x1a\x29\xc1\ +\x48\x42\x8f\x99\x20\xd1\x49\x94\xd4\x9d\xc6\xc6\x0e\x2a\xd7\x2b\ +\xce\x9d\xa4\x33\xa2\xed\xea\x6d\x1f\x77\xc4\xc7\xff\x00\xb8\xaa\ +\x96\x89\xef\x1e\x12\x85\x7e\x55\x5c\xe8\x3b\x93\xcb\xd2\x70\x62\ +\x45\x47\x3f\xb4\xca\x87\x3d\xdc\x55\x4d\xe0\x25\xc6\x98\xcb\xcb\ +\x0a\x56\x3b\x57\x42\x54\xd6\x54\xe4\x73\x28\xd4\x76\x4a\x23\x92\ +\x67\x29\x6a\x0d\x38\x80\x73\xf8\xd6\xa9\x56\x64\x38\xe0\x90\xc1\ +\xf0\x96\x39\xc0\xf5\xa2\x13\x8c\xa5\x45\xe7\x56\x94\x81\xc7\x7a\ +\x71\x8f\x2e\x3c\x80\x7c\x27\x01\xf6\xc1\xac\xd2\x72\xa6\xef\x04\ +\x6b\x8a\x8d\x45\x69\xb2\x0a\xab\x24\x0b\x7e\xa1\x7e\x60\x92\xe4\ +\x9b\xcc\xa4\x04\x9f\xb4\xcb\x2e\x3a\x96\x81\x52\x82\x10\x92\x7c\ +\xa8\xc9\x27\x81\xe9\xcf\x6a\x79\x8d\x12\x63\xb8\x0a\x46\xc1\xea\ +\x4d\x73\xfe\x9c\x76\xf5\x65\xd4\xbd\x5b\xd7\x0f\xfe\xa4\x9d\x76\ +\xb1\x3e\xa0\xdb\xef\x40\xdc\xe2\x5d\xf3\x20\x16\xd4\x55\x96\xd1\ +\xb3\x72\x4a\x47\x70\x47\x3c\x54\xf6\xfb\xd5\x1d\x4d\x61\xd0\x16\ +\x4d\x43\x74\x6e\xc0\xc4\x8d\x51\x2a\x38\xb5\xa4\xf8\x9e\x04\x08\ +\xee\xa0\x2b\xc4\x90\xa2\x41\x59\x4a\x4a\x49\xc6\xd1\xc9\xf6\xa9\ +\x58\x96\xa3\x64\x8c\x71\xe1\xbb\xca\x57\x5f\xdd\x8b\x46\x5d\xb8\ +\x33\x18\x2d\x3c\xac\x77\x34\x8b\xef\x24\x28\x0a\xaa\xe1\xf5\xc5\ +\xd6\x34\x86\xb6\x7e\xe6\xab\x5d\xe6\x5e\x9d\x5b\x29\x8b\x2a\xdb\ +\xb9\x11\xe7\xa5\xe3\xb5\x07\x04\xab\x6e\xd3\xf7\xb9\xfa\x76\xad\ +\x7d\x32\xea\x5c\xfb\xce\xb8\xfe\x8b\x5c\xa7\xd8\xae\xa2\x45\xb8\ +\x4e\x66\x55\xa4\x29\x28\x65\x7b\xb0\xb6\x16\x14\xa5\x64\x81\x93\ +\x9c\xfb\x67\xbf\x17\xa3\x55\xc9\x75\xb7\x26\xa5\x5a\x59\x96\x5e\ +\x7f\xd1\x7b\x5b\x17\xbe\x2a\x6b\xdb\x8f\x2c\x7b\x73\xde\xa8\xeb\ +\xd2\x46\xb2\xfd\x21\x62\xe8\x9b\xd3\xd2\x5c\xb0\x41\xb2\xaa\x61\ +\x84\xd4\x85\xb4\x87\xde\x2a\xfb\xcb\x28\x20\x9c\x05\x0c\x73\xc6\ +\xdf\x93\x9a\xfa\xe9\xa9\xf5\x54\x7e\x84\xeb\x3b\x53\x37\xb7\x96\ +\xdd\x8f\x50\x1b\x7a\x24\x3e\x54\xb7\xcc\x62\xe0\x09\x42\x57\x9c\ +\x82\x14\x33\x93\x9e\x09\x1e\xd8\xcc\xf4\xa8\x39\xe2\xd2\x83\x4d\ +\x76\xf9\x1d\x71\x1f\xfa\x84\xfd\x29\x35\xcc\xf9\x00\xf4\xa6\x3d\ +\x2d\x2e\xe1\x68\xe9\xfa\x67\xea\x49\x8c\x4c\x7a\x24\x45\x48\x79\ +\xd8\xcc\x96\xd2\x5b\x4a\x4a\x80\x09\x2a\x3c\xed\x1e\xfc\x9a\xa6\ +\x6c\x1d\x70\xba\xdd\xaf\x3a\x69\xc9\xb2\xb4\xda\xe2\x6a\x09\x8a\ +\x87\xfa\xb2\x21\x59\x99\x6e\x25\x7b\x1a\x53\x8a\x2a\x21\x5b\x8e\ +\x33\xe5\x1c\x11\xda\xa2\x3a\x4f\x51\xd5\x71\x11\x84\x12\x7b\xb2\ +\xf6\xc7\x00\x7b\xf1\x4b\xc4\x54\x96\x86\x06\x0e\x2b\x9f\xec\xdd\ +\x55\xd5\x53\x34\xec\x6b\x7a\xd9\xb7\xa7\x56\x2b\x55\x8b\x13\x8d\ +\x86\x54\x1b\x42\x07\x2a\x77\x69\x56\x78\x00\x8e\xfe\x9d\xa9\xd7\ +\xaa\x7d\x58\xbd\xe8\x9b\xa4\x89\x2c\x6a\x1d\x23\x75\x8f\x16\x6a\ +\x59\x7e\xcc\xc3\x2e\x19\x4d\xb2\x54\x79\x53\x81\xc2\x90\xe8\x03\ +\x90\x40\x1f\x1e\xf7\xa9\x37\xa5\x84\xc3\x11\x4d\x45\xc9\xec\x5b\ +\xe9\x0d\x2e\x53\x91\x1a\x96\xca\xe4\x34\x01\x71\xa0\xb0\x56\x90\ +\x7b\x12\x3b\x8f\x4a\x5a\xd4\x62\x1b\xda\xa3\xc5\x50\x73\x6f\x33\ +\x34\xef\x59\x7a\xcd\x7d\x80\x1a\x32\xe0\x59\x22\x3e\xc8\x75\x3b\ +\x93\xb9\x31\x9b\x23\x23\x23\x22\xa4\x48\xea\x56\xa2\x53\xdd\x25\ +\x41\x4c\x1c\x6a\xd6\x9c\x5d\xcb\xf6\x47\x82\x94\x34\xa1\xe1\xf9\ +\xbc\xbc\xac\xf7\xcf\xa5\x2d\xd4\x93\x2f\x0a\xd4\xd3\x77\xed\xfa\ +\xd8\xb8\x50\x84\xa1\x24\x24\x56\xb0\x54\x49\x04\xd5\x1d\xac\x7a\ +\xbb\x7a\xd3\x1a\xb2\x13\x49\xd4\x3a\x4a\xfb\x11\xfb\xb2\x20\xc9\ +\xb7\x41\x61\xc0\xfc\x56\xd4\xa3\x85\x78\xbe\x21\x49\x58\x03\x04\ +\x10\x39\x3d\x87\xa6\xb8\x53\xb5\xb5\xcb\xf4\x95\xd4\x56\xf8\x37\ +\xf8\x0c\xb7\x12\xd4\xdf\x86\x87\xa2\xad\x6d\x86\x54\xa4\xa9\x29\ +\x09\x0b\x18\x58\x2b\xe5\x7e\xb8\xec\x2a\x12\x7b\xb2\xd2\xc5\xc2\ +\xf6\x8a\xd6\xf6\x2f\x26\xdf\x61\xd4\x95\x34\xf2\x1c\x48\x51\x49\ +\x28\x50\x20\x10\x70\x47\x1e\xa0\xfa\x56\x69\x50\xdb\xc1\xcd\x73\ +\x76\x85\xea\x1c\x8d\x3b\xd1\xdf\xb5\x5b\x6c\x96\x86\xaf\x37\x6d\ +\x52\xe5\xb6\x33\x6d\x36\xb4\x47\xf1\x96\x13\x97\x96\x37\x13\xe9\ +\xd8\x28\x7a\x63\x81\x52\x19\x9d\x48\xd5\x9a\x7e\x4e\xb2\xd3\x97\ +\xa1\x69\x93\x79\xb2\xd9\x4d\xda\x0c\xb8\xac\xad\x0d\x3c\x8e\x01\ +\x0b\x6d\x4a\x38\x21\x4a\x03\x83\xc8\xa9\x4a\xe8\xaa\xc6\x42\xc9\ +\xb2\xe9\x74\x05\xe4\xa7\xbd\x64\xd9\x2a\x6f\x6f\xad\x52\x56\x0e\ +\xa6\x6b\x13\xa8\xf4\x2a\xee\xf1\xec\xea\xb5\x6b\x26\xdd\x2c\xb1\ +\x1d\xb7\x03\xd1\x76\xa5\x24\x12\xb2\xac\x2b\x3b\xc1\x23\x68\xf5\ +\x1e\x99\x2e\x9f\xa3\xb1\x79\x5a\xa3\xa9\xde\x3a\xdc\x3e\x1e\xa9\ +\x90\x12\x16\x49\xc2\x77\xaf\x00\x67\xd2\xac\xdd\x90\x43\x11\x19\ +\xcd\x25\xcf\xed\x72\xc7\xb8\xc5\xde\x92\x95\x0e\xf5\x11\xbe\x59\ +\x50\x5a\x51\xd9\x92\x7b\x55\x88\xe2\x12\xea\x4f\xbd\x34\xdc\x63\ +\x05\x24\x82\x29\xd4\xaa\x58\x6d\x48\x5c\xe2\x0f\xd2\x59\x9d\x71\ +\xf6\x81\x6c\x81\x65\x92\x9b\x52\x8e\x54\xf4\x70\x57\xe3\x9f\x65\ +\x63\xb0\x1e\xc7\xd7\x9f\x6a\xa9\x74\xc7\x4d\x35\x35\xd4\x29\xf9\ +\x6c\x8b\x73\x29\xed\xf6\xa4\xa9\x25\x7f\x41\x8a\xfa\x07\xa8\x2c\ +\xc9\x75\x45\x41\x27\x35\x0d\x9f\xa6\x0b\xab\xf3\x24\x91\xf3\x59\ +\x65\x47\x11\x52\x76\xd3\xc4\x21\x5b\x87\x1b\x24\x72\x2d\xd7\x41\ +\x6a\x02\xb4\x46\x8c\x84\x48\x6c\x01\xc8\x1b\x02\x4f\xbe\x69\xbd\ +\x1a\x32\xea\x64\x98\xf3\x58\x97\x35\xd0\x32\x96\x9a\x51\xf0\xd0\ +\x33\xdd\x4b\x35\xd6\x92\xb4\x93\x63\x3e\x5c\x53\x4c\xdb\x03\x2c\ +\x20\x82\xad\xa3\xd4\x66\x99\x53\xa3\xea\x25\xb9\x68\xf4\x84\xa1\ +\xba\x4c\xe5\x6b\xae\x81\xbb\x21\x45\x61\x70\xd3\x9e\xc8\x42\xc9\ +\xc0\xfa\xe2\xa4\x1d\x1b\x65\x5a\x67\xa8\x71\xd6\xb9\x49\x79\x32\ +\x19\x53\x0b\x00\x14\xf7\x20\xe4\x67\xd0\x10\x2a\xde\xbe\xdb\xa2\ +\x21\xb2\xae\x30\x7b\x1c\xf7\xa8\x02\xa1\x32\x9d\x47\x0d\xc8\xec\ +\x27\xc7\x32\x02\x77\x84\xe1\x5b\x7d\x46\x7f\x2a\x45\x7a\x31\x54\ +\x65\x79\x2d\x87\x60\xf1\x73\x9e\x22\x2e\xdc\xce\xa1\xb1\x3a\x5d\ +\x8c\x84\xac\x80\xb4\xe0\x0c\x9c\xe4\x7f\xac\xd2\xd7\x99\x56\xf3\ +\xcf\xec\xf1\xfe\xb9\xa6\xed\x1c\x80\xf5\xb1\x90\xf8\xc3\x88\x18\ +\x3c\x7f\xaf\xc2\xa4\x25\x05\x0a\x2d\xbb\x8d\xa7\x80\xbf\x43\xf1\ +\x5e\x7e\x31\xba\x3d\x14\xa5\x69\x08\x43\x01\xe4\x6c\x70\xf9\xd2\ +\x0a\x4a\x88\xe7\x1f\x51\xdf\x8f\x4a\xf1\x88\xea\x8a\xc6\xd7\x4b\ +\xc8\x59\x23\x12\x5a\x1b\x93\xc7\xa9\x1e\x87\xf9\xf3\x4b\x7e\xcc\ +\xa4\xb8\x36\x1f\x32\xbe\x3b\x7d\x29\x54\x55\xad\xa1\xe6\x3c\x91\ +\x8e\x78\xff\x00\x42\xaf\x15\xae\xa5\x5c\xb4\x3c\xb7\xc9\x74\x2b\ +\x6e\x03\xc9\xc8\xf3\x27\x9c\xfc\x91\xdc\x53\xfb\x0f\xb6\x5a\xf2\ +\xe3\x70\xc7\xaf\x7a\x65\x92\xcc\x77\x16\x14\xa6\x46\xff\x00\x45\ +\xa7\xca\xa1\xf8\x8e\xf5\x93\x29\x2b\x40\x6c\xad\xd5\x03\xc6\x4a\ +\xb3\xc5\x35\x4a\xc2\x25\x14\xf5\x16\xc9\x79\x4a\x56\xd4\x05\x67\ +\x39\xc9\x38\x14\x95\xe8\xee\x48\x3e\x7f\x0d\x1c\xfd\xe4\x8d\xc4\ +\x7b\x71\x4a\xa1\x42\x61\xa4\xf0\xd2\x4a\x7d\x77\x1c\xe7\xe4\xd2\ +\xf0\x50\x1b\xda\x9c\x04\xf6\xc2\x7b\x51\x6b\xee\x56\xf6\xd8\x8b\ +\xb9\xa7\x58\x71\x68\x5b\xac\xa9\x64\x02\x32\xea\xb8\xcf\xc2\x7d\ +\xa9\x24\xad\x25\x09\xc5\x38\x95\x21\xbd\xaa\x56\x4a\x52\x00\xcf\ +\x1e\xc2\xa5\x6b\x0a\x3c\xed\x01\x5d\xb2\x6b\xc0\xd0\x1f\x7c\x67\ +\xdf\x03\x19\xa5\xba\x30\x7c\x87\x46\xb4\xe3\xcc\x89\xb3\xa5\xdb\ +\x68\x6c\x42\x01\x40\xe0\x01\xfb\xa3\xd2\x96\x46\xb0\xb2\xc1\xce\ +\x01\xe7\x22\xa4\x29\x28\xdd\x8f\xe0\x2b\x05\xa1\x64\xe7\x01\xb4\ +\xfb\x9e\x4f\xe1\x54\x54\x60\xb9\x03\xaf\x37\xbb\x1a\x94\xc8\x40\ +\x4a\x10\x82\x54\x79\x00\x76\x03\xe6\xa2\x7a\xed\x9f\x16\x1a\xa3\ +\x24\x95\xa9\xd5\x24\x15\x27\xbe\x77\x0e\xdf\x02\xa6\xb2\xbf\x64\ +\x85\x25\x03\x69\x3f\x78\xab\xb9\xfa\xd4\x79\xd8\x89\x7a\x4a\x9d\ +\x74\x12\x12\x9e\xdd\xf9\xa4\xd7\x8d\xe3\x64\x32\x8c\xac\xf3\x33\ +\x8f\xfa\x99\xa5\xae\xfa\x73\xa8\x92\x1e\x94\xd3\xf3\x62\x5c\xde\ +\x72\x44\x69\x0c\xb0\x7f\xda\x16\xa3\x90\xc1\x09\xec\x42\xb3\xc7\ +\x63\x48\xa4\x4b\x95\x09\x6f\xef\x07\xc4\x52\xc3\xb2\x22\xf0\x76\ +\x38\x78\xf2\x91\xf1\x80\x47\xe5\x5d\x73\x73\xb3\x19\xd0\xde\x88\ +\x48\x4a\x8a\x4e\x17\xec\x7d\xc7\xcf\x7a\xa0\x3a\xab\xa3\xdb\xd3\ +\x32\x17\x7d\xb9\x38\xd4\x7b\x73\x48\x25\xb8\xed\x24\x85\x49\x7b\ +\x38\x08\xcf\xf1\xfc\x0d\x3f\x0d\x55\xb9\x24\xd6\xb6\xb2\x17\x89\ +\x6f\x27\x57\x6b\xdd\xae\xd2\x1e\xd4\x37\xe6\xb2\xc0\x53\x72\x52\ +\xeb\x83\x72\x92\xe3\x64\x14\x63\xd8\xfb\x1a\x7b\xb7\xd8\xe5\xa1\ +\x68\x2b\x69\x67\x1c\x6e\x03\x9c\x1f\x4a\xd9\xa0\xf5\x0d\xb2\xea\ +\xe7\xda\x11\x21\xa6\x54\x80\x0b\x8c\xbc\xe0\x4a\x90\x7d\x7b\xf7\ +\x1f\x35\x76\xe9\xb8\xf6\xeb\x8c\x64\x00\x1b\x24\xf2\x0a\x48\x20\ +\xfe\x35\xe8\xf0\xf4\x28\x4e\x9e\x49\xbd\x4f\x31\x5f\x13\x56\x35\ +\x1c\xb6\x65\x6b\xa5\xb4\x7c\x74\xdc\xcc\xc0\x87\xd2\xea\x95\xb9\ +\x45\x47\x85\x1f\x7f\xaf\xf9\xd7\x42\xe8\x68\x31\xe2\x30\xd9\x70\ +\xe5\x40\x53\x65\xb2\xc8\xdb\x6f\xa5\xb0\x81\xdf\x82\x2a\x7f\x67\ +\xb5\xc5\x8e\xd2\x4a\xc0\x27\x1e\xb5\xbf\x0f\x84\xa7\x85\x8b\xb7\ +\x33\x25\x4a\xd5\x2b\xcf\x34\x9d\xd8\xfb\x18\xef\x65\x2a\x6f\xee\ +\x8a\xc5\xfb\xd1\x64\xf8\x6d\xb7\xdb\xbd\x64\xdc\x86\xda\x6f\x09\ +\x1c\x0a\x8f\x5c\x64\x9f\x19\x6b\x09\x18\x1e\x95\x34\xe9\x29\xb7\ +\x99\x68\x5a\xa5\x57\x05\xd5\x7a\x92\xdb\x5d\xcd\x12\xf0\x14\x36\ +\xab\xd8\xd1\x51\x38\x8f\xac\x20\x38\x95\x6d\x57\xd6\x8a\xa4\xf0\ +\x69\xbb\xc5\xd8\xb5\x3c\x6b\x4a\xd2\x57\x21\x9d\x33\x8b\x39\xcd\ +\x3d\x13\xec\xe0\x84\x9d\xfe\x6f\xfa\xea\xab\x16\xd8\xcc\x86\x41\ +\x12\x5c\xdc\x7d\x78\xed\x4c\x7d\x33\x4a\x63\xe8\xa8\x29\x40\x4e\ +\x47\x88\x09\x3f\xfc\xc5\x53\xcb\xcf\x24\xa8\xec\x39\x34\xf4\xdc\ +\x95\x91\x9a\x9a\x51\x8a\x6c\x41\xa8\x4a\x50\xe2\x42\x57\x84\x9f\ +\x4c\xd2\x0b\x64\xe5\x46\x92\x97\x1a\x59\x29\x07\xcc\x33\x58\x5d\ +\x1d\xf1\x64\x60\x9c\xed\x14\x89\xa6\x5c\x65\x4a\xc0\x38\x3c\xe4\ +\xd3\x92\xd2\xcc\x5b\x96\xb7\x43\x03\xfa\x31\x4b\x87\xaf\x22\xb7\ +\x79\x38\xd5\xef\x97\x54\xaf\xb2\xff\x00\xb9\x79\x51\xc6\x37\xf9\ +\xfe\xf7\x7f\x2d\x39\x5c\x34\x82\x6f\xda\x2f\x4d\x69\x65\xdc\x5f\ +\x8b\x3b\x4f\x26\x32\xad\xf7\x36\x1b\x1b\xda\x75\x84\x25\x21\x7b\ +\x09\x23\x07\x19\xdb\x9e\xf8\xe7\x8a\x70\x65\xc7\x8b\x9c\x8f\x2d\ +\x4a\xb4\x74\x55\x2d\xd5\x48\x5a\x30\x3e\x69\x15\x29\x53\x84\x5b\ +\xb1\x6a\x71\x73\x96\x5e\xdf\xec\x6f\xbb\xe8\x9b\x96\xa2\xd0\x97\ +\x6d\x39\xae\x35\x22\x6f\x2d\x4e\x42\x3c\x37\x63\x5b\xd3\x10\xb0\ +\x52\x77\x05\x01\xb9\x59\x3b\x82\x4f\x27\x1c\x63\x1c\xd3\x7e\x8b\ +\xb1\xea\x7b\x36\x1a\xbc\xea\xd6\xef\x31\x1a\x63\xc1\x69\xbf\xd5\ +\xa9\x61\x79\xc8\xc2\x94\xb0\xb3\xb8\x80\x08\xec\x33\x9c\x9a\xb0\ +\xee\x8e\x06\xe1\xa8\x77\xf4\xa6\x46\x90\x56\xa4\x23\x3d\xeb\x36\ +\x1d\x75\x5b\x35\xd7\x84\x54\xd5\xb7\x21\x9d\x4e\xd1\x37\xc7\x64\ +\xb1\xd4\x0d\x08\xff\x00\x85\xab\xad\xb1\x15\x1d\xb6\x14\x84\xa9\ +\xb9\x8d\x28\xf2\x85\x6e\xe3\x70\x0a\x51\x07\xd4\x80\x3d\xb0\xd3\ +\x6c\xe9\x64\x1b\x97\x43\xdf\xd2\xf2\x1e\xb9\xda\xe6\xdd\xde\xfb\ +\x74\xe9\x13\x59\x41\x7c\x4a\xde\x09\x2a\x42\x55\xb4\xa7\xca\x00\ +\x01\x5d\x8e\x73\x92\x6a\xeb\x68\x78\x51\xc0\xed\x81\x4c\x77\xb7\ +\x49\x4e\x32\x72\x4e\x69\x54\xe3\xc4\x99\x35\x68\xc2\x0b\x37\x76\ +\xc6\xbd\x2d\x6b\x96\x8d\x30\x6c\xd7\xfb\x9b\x57\x92\xe3\x4a\x65\ +\xc7\x51\x18\x30\x95\xb6\x53\xb7\x6e\xd0\xa3\x8e\x33\xce\x7d\x6a\ +\x31\xa4\x7a\x7f\xa8\x74\x64\x78\xd6\xbb\x76\xb6\x54\x8d\x37\x11\ +\xe5\x2d\x98\x12\x2d\x88\x53\xc9\x6d\x4a\x2a\xf0\xfc\x7d\xfd\xb2\ +\x4f\x3b\x73\xed\x8e\xd5\x31\xb3\x3d\x96\x53\xee\x9a\x77\x7d\x21\ +\xc6\x0d\x44\xe3\x92\x63\xa1\x08\xd4\x82\x7c\xd1\x52\x5b\x3a\x4f\ +\x1a\x1f\x59\x5d\xea\x0a\x6e\xea\x53\x4e\x38\xb7\x91\x6d\xfb\x3f\ +\x95\x0f\x2d\xa0\xda\x9c\xdf\xbf\x92\x7c\xc7\xee\xfa\xfc\x52\x1b\ +\xb7\x41\x9d\x99\x63\xbf\x58\x63\xeb\x37\xa3\xd9\xae\xd7\x15\x5c\ +\xd3\x18\xdb\x90\xb5\xb7\x20\xff\x00\x69\xcd\xd9\x5a\x06\x07\x94\ +\x6d\xe4\x0e\x7b\xe6\xd6\x00\xa7\xf0\xa7\x48\xca\xde\xd0\x35\x15\ +\x55\xb5\x45\x29\xe1\xe9\x4a\xe9\xaf\x4f\x72\xa8\xb8\x74\xe9\xb9\ +\x9a\xc7\x5b\x5d\xa6\xdd\x1c\x5b\x1a\xa2\x03\x70\x9d\x8e\x86\x76\ +\xa9\x84\xa5\xa4\xb7\xb8\x2f\x71\xdc\x7c\xb9\xfb\xa3\xf1\xa6\xbb\ +\x1f\x4a\xee\x30\xa6\x69\x39\x17\x1d\x5e\xe5\xc0\x69\x67\x31\x6f\ +\x68\x40\x4b\x49\x0c\x94\x90\xa4\x1c\x2c\x92\xa3\x84\x79\xf3\xd9\ +\x18\xdb\xce\x6a\xdb\xba\x30\x52\xbf\x15\x23\x8a\x6d\x29\x5e\xed\ +\xd9\x38\xad\x10\x8c\x26\xae\x22\xa5\x25\x19\x6a\xbd\x5e\xff\x00\ +\xc9\x50\xb3\xd1\x45\xb1\x67\x66\xc2\x9d\x5e\xf1\xb4\xc5\xbb\x26\ +\xe9\x09\x83\x01\x1b\x90\xe8\x50\xcf\x88\xbd\xd9\x73\xcb\xb9\x23\ +\xee\xe3\x76\x4e\x70\x05\x4e\x23\x68\x39\xac\xf5\x59\xed\x77\x6a\ +\xd4\x62\x18\x99\x1d\xa8\xf3\xa1\x39\x04\x3b\xe2\xb6\x82\x93\x84\ +\xaf\x70\xd9\x90\x90\x33\x83\x8e\x6a\x5c\xcb\x41\x79\x56\x73\x8a\ +\xdd\x19\x44\x3b\xb4\x77\xcd\x56\x71\x56\xb2\x26\x9d\x18\x45\xa7\ +\x62\xb6\x83\xd1\x28\x4d\xf4\xed\xcd\x29\x23\x50\x3c\xb9\x28\xbc\ +\x2a\xef\x0a\xe0\xd4\x50\x85\x47\x7b\x8d\xbe\x42\xa5\x05\x01\xce\ +\x79\x19\xcf\xa6\x2b\x7b\x9d\x24\x7e\x54\x6d\x51\x32\xf5\xa9\xd5\ +\x72\xbe\xea\x0b\x7f\xea\xf5\x4e\x10\x43\x4d\xc6\x67\x18\x09\x43\ +\x21\x67\xd4\x02\x7c\xdc\x91\xe9\xcd\x59\xc5\x45\x1d\xeb\x2d\xfc\ +\x0f\x9a\x46\xa8\xd1\xec\xf4\xb6\xb1\x5b\x45\xe9\x49\x0e\xf4\xf1\ +\xd3\x7d\xe3\x46\xa1\x68\xc7\xd9\x3f\xdd\x9b\x92\xda\x7f\xb7\xfb\ +\x3f\xb9\xfd\xee\xf5\x29\xd1\xfa\x7e\xe3\x62\x9b\x7b\x7e\x76\xa7\ +\xb8\xde\x9b\xb8\xcd\x32\x63\xb5\x28\xf9\x61\xa0\xe7\xf6\x48\xe4\ +\xf1\xcf\xa6\x07\x03\x81\xce\x5f\x9d\x7b\x03\x68\x35\xa5\x4f\x00\ +\x39\x34\x28\xb7\xa9\x2a\x14\xe0\xf4\xf5\xa5\x85\x01\x7b\x79\xad\ +\x32\x4a\x56\x93\xcf\x34\x8d\xe9\xcd\xa0\x1c\xac\x71\x4c\xd7\x1b\ +\xf3\x4c\xf6\x58\xcf\xc5\x33\x25\xb5\x61\x2a\xc9\x0b\x26\x21\xac\ +\x12\xbc\x53\x05\xc9\xf8\xad\xe7\x25\x35\x57\xf5\x77\xae\x5a\x7f\ +\x47\x2d\x51\x1c\x5a\xae\x17\x2c\x67\xec\x71\xd6\x3f\x67\xff\x00\ +\xcc\x5f\x64\x7d\x39\x3f\x15\xcd\xfa\xb3\xaf\x7a\xfa\xfc\xea\xd1\ +\x6f\x7d\x9b\x44\x75\x1e\x13\x11\x1e\x70\x3e\x56\xac\x9f\xc4\x62\ +\xa8\xf1\x79\x7d\xd4\x14\xe8\x55\xad\xee\xa3\xa8\x7a\x81\xac\x6c\ +\x9a\x66\xdc\xa9\x77\x59\xcc\xc4\x41\xc8\x40\x59\xf3\xac\xff\x00\ +\x75\x23\x93\x5c\xcf\xd4\x1e\xb8\xcf\x9b\x70\x2c\x69\x76\x0b\x6d\ +\x63\x68\x7a\x42\x02\x94\xaf\x90\x9e\xc9\xfc\x73\xf8\x55\x59\x70\ +\x95\x3e\xe2\xeb\x93\xae\x92\xe4\x4c\x79\xc3\xf7\x9d\x59\x52\x96\ +\x7e\xa6\xa7\xbd\x0b\xe9\xe2\x35\xa6\xa9\x11\xa5\x05\x22\xdb\x0d\ +\x29\x7e\xe0\xf2\x0f\xde\x4e\x70\x96\x81\xf4\xdc\x78\xfa\x03\x59\ +\x6b\xe2\xa4\xd5\xe6\xce\x9e\x1b\xa1\xf5\xbc\xd9\x96\x84\xe9\xee\ +\xb2\xea\x0a\xd5\x7f\xbb\x5c\x65\x31\x6c\xdc\x4f\xda\x16\x49\x53\ +\xa7\xd4\x36\x0f\x18\xf9\xed\xf5\xab\x5f\x4e\xe8\x78\xd6\x9b\x9c\ +\x54\xa3\xc6\x73\xc3\x39\x53\x8f\xb8\x56\xb5\x7a\x66\xae\x49\xec\ +\xc7\x89\x09\x98\x71\x18\x43\x2c\xa1\x3b\x1b\x6d\x00\x04\xa1\x20\ +\x60\x00\x3d\x05\x47\x5e\x67\x32\xdb\x74\x02\x73\xc6\xe1\xee\x2b\ +\xcf\xe2\x71\x35\x2a\x3b\x72\x3b\x14\x28\x53\x86\xb1\x44\xb6\xc8\ +\xd2\x51\x1d\x21\x23\x09\xc0\xcd\x3f\xb4\x90\x50\x37\x84\xad\x23\ +\xb8\x3f\x5e\x0d\x31\xd8\x14\x0b\x3c\x9f\x32\x7d\x71\xde\xa4\x6d\ +\xa4\x2d\xa0\x15\xe5\xc7\xc7\x7a\x65\x3d\x50\xba\x9b\x88\xcc\x65\ +\xa0\x92\xc8\xde\x9f\xec\x77\x1f\x87\xa8\xad\xad\xa5\xbe\x13\x92\ +\x39\xc8\x0a\x38\x22\x94\x16\x9c\x6f\xcc\xde\xec\x7a\xe4\xff\x00\ +\x8d\x6d\x61\xd1\xc8\x71\x04\xfe\x19\xa6\x24\x2d\xc9\x98\x35\x15\ +\x63\x24\x21\x59\xc6\x38\x02\xb7\xb0\xd6\x50\xa1\x92\x9e\xe1\x4a\ +\x00\xf2\x7d\x78\xa5\x6d\xa5\xb2\x06\xd5\x2b\x07\xdc\xf0\x3e\x94\ +\xa5\x0c\xb3\xea\xea\xff\x00\x0a\xbe\x51\x6e\x62\x26\x94\x94\xa7\ +\x1b\x14\x4f\xb9\x4d\x78\xae\x78\x50\xc8\x3e\x83\xd2\x9c\x76\x46\ +\xef\x82\xe7\xc6\x6b\x62\x40\x49\xc2\x10\x84\x0f\xa5\x5b\x29\x19\ +\xc6\xe6\x9a\x75\x5f\x71\x93\x81\xea\xae\x05\x6d\x11\x70\x09\x79\ +\x40\xfc\x26\x97\x10\xa5\x8c\x14\xab\xe7\x9a\xd6\xe3\x58\xf3\x29\ +\x58\x1e\x98\xa1\xa2\x33\x08\xd4\xd8\xc6\xd4\x24\x24\x63\xb6\x38\ +\xad\x0b\x4a\xb3\xb8\xd2\xc7\x16\x0e\x52\x94\x94\xfc\x9a\x44\xf2\ +\x8a\x95\xb5\x24\xe4\xfe\x42\x97\x26\x59\x08\x26\x6e\x52\xfc\x26\ +\xc0\x27\x1e\x63\xed\xf3\x49\x14\xce\x3c\xa8\x19\x09\xe3\x3e\xe7\ +\xde\x9d\x94\xc1\x59\x0d\xb3\xe6\x3d\xc9\xff\x00\x5f\xce\xa9\x3e\ +\xb1\xf5\xc6\xd7\xa6\x14\xfe\x9f\xd1\xae\x47\xbb\x5f\x00\x29\x7e\ +\x60\x21\x71\xa1\x1f\x60\x7b\x38\xe7\xc0\xe0\x7a\xe7\xb5\x2d\xc1\ +\xc9\x9a\x68\x53\x9d\x59\x28\xc1\x6a\x49\xfa\x85\xae\x74\xc6\x82\ +\x69\xb5\x5f\x24\xa9\x53\x9f\x41\x54\x78\x2c\x0c\xba\xee\x3d\xfd\ +\x12\x93\xfd\xa5\x71\xf5\xae\x4b\xea\x36\xb4\xba\x6b\xdb\xe2\xae\ +\xf7\x72\x50\xd3\x6a\x29\x8b\x09\x3f\xd4\xc6\x6f\x3d\x81\xfd\xe3\ +\x8e\xea\xf5\x3f\x95\x31\x6a\x0b\xc5\xca\xe7\x3e\x4d\xd2\xeb\x25\ +\xf9\xd3\x9e\x58\x53\xd2\x5c\x3b\x89\x3f\x3f\x81\xe0\x76\x14\xcd\ +\x31\xe7\x64\xa8\x70\x42\x41\xf2\xf3\xc7\xe5\x5a\xe8\x61\xd4\x35\ +\x67\x51\x46\x9e\x1d\x7f\xb4\x84\x97\x16\x13\xe2\x27\xc0\x58\x52\ +\x89\xf3\x60\xfc\xd3\xff\x00\x4f\xb5\xde\xa0\xd0\xf7\x0f\x1a\x1b\ +\xbe\x3c\x35\x28\x78\xd1\x9c\x39\x6d\x5f\x4f\x63\xf2\x29\x95\x2a\ +\x08\xe3\x21\x38\x3c\x91\xfe\x5f\x35\x8b\x8d\xe5\x2a\x21\x29\x48\ +\x03\x8c\x03\x85\x56\xde\x56\x67\x2b\x11\x86\x85\x5b\xbe\xde\x47\ +\x63\xf4\xe7\xac\x1a\x67\x52\xb2\xd2\x63\x4d\x44\x69\xd8\x19\x89\ +\x21\x41\x0b\xcf\xb2\x49\xe1\x7f\x87\x3f\x15\x6d\xc0\xd4\x0d\xb8\ +\x91\xdc\x2f\xd4\x1e\xe2\xbe\x69\x29\x87\x10\xe7\x88\xd2\x94\x8d\ +\x9e\x60\x52\x6a\xc6\xd0\x5d\x6c\xd6\x5a\x63\xc2\x62\x5b\xe9\xbb\ +\xdb\xdb\xc0\x0c\xca\xc9\x5a\x47\xf7\x56\x3c\xc3\x8f\x7c\x8f\x8a\ +\xd3\x4b\x13\x52\x9e\x9b\xa3\xce\xe2\x3a\x2e\x50\x77\x81\xdf\xad\ +\xcb\x2e\xc7\xf1\x77\x01\xc5\x21\x61\x45\xe7\x8a\x73\x9d\xc7\x9a\ +\xa1\x74\xc7\x5e\xb4\xb5\xfa\x22\x18\xfb\x7a\xed\x33\x14\x39\x66\ +\x5f\x08\x27\xd8\x2c\x71\xf9\xe2\xac\x5b\x26\xb1\x8a\x96\x92\xb4\ +\x3e\xcc\x82\xa1\x9d\xcc\xb8\x97\x07\xff\x00\x69\x35\xb6\x18\xfa\ +\x4f\x49\x68\xce\x5d\x4a\x33\x83\xeb\x22\x74\xe0\x6d\xb5\x14\x13\ +\x92\x7d\xa8\xa6\x48\x97\xd6\x26\x28\x28\x11\x93\xcd\x15\xb6\x33\ +\x8c\x95\xd3\x13\x62\x51\xd3\x5b\x6a\x1c\xd1\x90\x96\xb5\x7d\xef\ +\x13\xb7\xa7\xed\x15\x4f\x4f\x5a\xda\x84\xd2\xde\x6d\x1b\xf0\x9e\ +\xd8\xa8\xa7\x4d\x2e\x32\x99\xd2\x70\x12\xa3\x94\x65\x7f\x87\xed\ +\x15\x56\x0a\x16\x97\xa2\x85\x77\x4a\x85\x73\xa4\xea\x53\xb3\x6f\ +\x43\xa1\x41\x52\xab\x0d\x16\xa8\xae\x19\x68\xca\x9c\xb7\x14\x36\ +\x24\x2a\xb2\xba\x24\x15\x80\xd2\xc6\x00\xf4\xad\xf7\x75\x84\x4e\ +\x71\x94\x61\x08\xdd\x93\x48\x46\xc1\x90\x09\x51\x3e\xa7\x9a\xe9\ +\xad\x51\xcf\x7a\x3b\x1a\x9a\x59\x0a\x28\x3f\x96\x2a\x7d\xa5\x9e\ +\x69\x50\x82\x52\x30\x40\xc1\xa8\x3e\x1b\x2a\xcf\xad\x4b\x34\xc2\ +\x17\x1a\x12\xde\x70\x7d\xee\x40\x35\x9f\x12\xaf\x4c\xd1\x85\x95\ +\xaa\x0a\xef\x4f\x05\x3c\x1a\x1e\x9d\xeb\xcb\x4b\x45\xd7\xf7\x94\ +\xf9\x40\xe0\xd2\x17\x14\xa9\x12\x49\xee\x54\x71\x4f\xb1\x50\x98\ +\xb1\x80\xcf\x38\xa4\x54\xfd\xba\x6a\x2b\x73\x45\x3f\xdc\xa8\xe4\ +\xf6\x32\x9a\xee\x13\xb4\x1f\x4e\x6a\x35\x70\x90\x95\x3a\x54\xae\ +\xc9\x3c\x52\xfb\xa4\x9d\xa8\x23\xf7\x95\x4d\x29\x6f\xc5\x77\x67\ +\x24\xd3\x30\xd4\xf2\xab\xb1\x78\x9a\x99\x9d\x90\xb6\xd4\xf0\x4b\ +\x83\x04\x61\x55\x23\x8a\xb0\xa4\x6d\x35\x13\x09\xf0\x97\xb7\xb1\ +\x1f\x14\xf7\x6f\x91\xbd\xb1\xcf\x98\x55\x31\x34\xef\xaa\x2f\x85\ +\xa9\x6e\xab\x37\x4a\x6f\xc3\x70\x9f\x43\x5b\xa0\x2f\x04\xa0\x9f\ +\xa5\x6d\x71\x29\x7d\x9e\x3b\xd2\x24\x95\x36\xbe\xf8\x22\xb3\x2e\ +\xbc\x6c\xcd\x2f\xa9\x2b\xa1\x45\xd1\xd0\x96\xb6\x7a\x9e\x29\x97\ +\x3c\xed\x39\xc7\xc5\x3a\x5c\x47\x8c\xce\xf4\xe3\x8a\x68\x53\x9e\ +\xc9\xe6\x9f\x87\x8f\x54\x46\x21\xf5\x85\xac\xb8\xdb\x43\xb7\x06\ +\xbc\x5a\xb7\x3a\x14\xda\xbb\xd3\x4c\xb9\xbe\x12\x72\xae\x00\xa6\ +\x19\xba\x9e\x3c\x57\x0a\x94\xea\x52\x90\x7c\xca\x52\xb0\x07\xd4\ +\x9e\x2a\xd3\xcb\x4d\x66\x93\x13\xc5\xe4\x58\x3e\x3a\x52\x91\x93\ +\xce\x29\x1c\x9b\x9c\x76\xf8\x2b\x48\xaa\x67\x58\x75\xb3\x48\x58\ +\xdb\x50\x9b\xa8\x62\x97\x40\xc8\x66\x32\xbc\x65\x9f\x8c\x27\x20\ +\x7e\x24\x55\x21\xab\x7f\x49\xe7\x1c\x52\xdb\xb0\xd8\xca\x8e\x4e\ +\xd7\x66\xb8\x4f\xff\x00\x62\x7f\xce\xb0\xf1\xa3\xbc\x55\xcd\x51\ +\x55\x6a\x7b\xa8\xeb\xb9\xda\x8a\x3a\x16\x40\x58\xed\xef\x51\xcb\ +\xc6\xb5\x8f\x19\xb5\xad\x6f\x21\xa6\xd3\xf7\x96\xe2\xc2\x52\x3e\ +\xa4\xd7\x0c\x5f\xba\xd3\xd4\x4b\xab\x8a\x5a\x6f\x0b\x84\xda\x87\ +\xdc\x8a\x80\xd8\x03\xea\x39\xfe\x35\x0d\x9f\x74\xbd\x5c\xd5\xbe\ +\x7d\xca\x54\x8d\xca\xca\xbc\x57\x8a\xb9\xfc\x4d\x51\xe2\x2a\x72\ +\xb2\x1d\x1e\x8e\xab\x3f\x7a\x47\x5d\x6b\x9e\xbf\xe9\xbb\x41\x5b\ +\x71\xe7\x9b\x93\xe9\xff\x00\x82\x8b\xca\x7f\xed\x9e\x3f\x2c\xd5\ +\x1b\xae\xfa\xe3\xab\xf5\x31\x5c\x5b\x6b\x9f\xaa\x21\x2c\x10\x50\ +\xc1\x3b\xd4\x3f\xbc\xe7\x7f\xcb\x15\x5a\x37\x17\xb1\x50\x2a\x23\ +\xda\x94\x36\xdb\x4d\xe0\xaf\x03\xca\x41\x03\xd3\xf1\xa4\xca\x4e\ +\x4e\xed\xdc\xeb\x61\xfa\x22\x9c\x35\x97\x98\x9d\xb6\x16\xfb\xc5\ +\xc7\x9c\xf1\x49\xf3\x12\xa3\x9c\x9a\x56\x5b\x4a\x06\xd4\x24\x91\ +\x91\xe9\x5b\x76\xe1\xad\xca\x04\x21\x27\xcb\x84\xf7\xaf\x76\x84\ +\xa4\x93\x8c\x28\xe3\x83\xcf\xd3\xe9\x55\x6e\xec\xec\xd3\xa0\xa1\ +\x1b\x24\x26\x98\xb5\x97\x58\x40\x48\x29\x49\x52\xb0\x3b\xf1\xdb\ +\x3f\x9d\x74\x7f\xe8\x6f\x2e\x2a\xed\xda\x96\xdc\xa0\x91\x38\x2d\ +\x89\x19\xf5\x53\x58\x50\xc6\x3e\x09\xfe\x35\xce\xae\x25\x26\x5b\ +\x38\x6c\x94\xac\x28\x10\x3b\x9e\x33\xfe\x15\x3c\xfd\x1f\xb5\x22\ +\x34\xaf\x55\xad\x32\x65\x3a\x96\xa0\xce\xcc\x19\x65\x47\x00\x25\ +\xce\x12\xa2\x7e\x14\x13\xcd\x2a\xb4\x6f\x02\x1a\x93\x53\xd7\x7f\ +\xc1\xd6\xf7\x26\xb2\xf9\xf3\x60\x63\x03\xe0\xe2\x90\x88\x89\x71\ +\xb2\xde\x36\xee\xc1\x1f\x0a\xf7\xa7\x99\x6c\xa9\x52\x14\x36\x8c\ +\xa5\x5b\x54\x01\xed\x8e\xc6\xb2\x62\x29\x28\x03\x8c\x0e\xc7\x15\ +\xc9\x74\xee\xcc\xaa\x76\x42\x5b\x46\x5b\x56\xd7\x52\x37\x24\xed\ +\x20\x8e\x47\xcf\xe7\x9a\x92\xb4\xb4\xa1\x09\x24\x9c\x11\xdf\xb8\ +\xa6\x65\x36\x1b\x21\xc2\x95\x15\x27\x1e\x70\x79\x4f\x3d\x8f\xbd\ +\x39\xb6\x85\x29\x85\x05\x36\x01\x28\x38\x58\x20\xf1\xe8\x47\xd0\ +\xd3\x20\xb2\xe8\x52\x6d\x3d\x45\xc1\xcd\xaa\x47\x88\x4e\x36\x92\ +\x94\x83\x9e\xdd\xf8\xa5\xac\xa5\x24\x02\x10\x82\x15\xc8\x20\xf7\ +\x14\xc7\xa7\xd2\xea\xd8\x0b\x92\xa0\xfc\x94\x1f\x0c\xad\x49\x29\ +\xe3\x3c\x63\xda\x9e\xe3\x29\x28\x07\x6a\xb2\xd9\x3c\xa7\xfb\x3f\ +\x4a\x6c\x1d\xd5\xc4\xd4\x56\x76\x37\x00\xd2\x55\x84\x95\x6d\x23\ +\xf7\x78\xe4\x7d\x7e\xb4\xa1\x94\xb6\x13\x93\x95\x28\x93\xca\x8e\ +\x3f\x2f\x8a\x43\x25\x5b\x43\x6b\x24\x25\x5d\x81\x48\xc8\xcf\xcf\ +\xe1\x43\x6a\x71\x45\x59\x75\xb2\xa5\xe4\x20\x81\x85\x24\x0f\x5c\ +\x76\x3e\x9c\x55\xef\x62\x96\x1c\x52\x40\x58\xc1\x1c\x67\xca\x3f\ +\xd7\x34\xa1\x2a\x42\x94\x50\x09\xe0\x02\x46\x29\x33\x39\x71\x96\ +\xbc\x2d\x85\x04\xe7\x77\xef\x27\x1d\xeb\x5a\x7c\x54\xbc\xb7\x12\ +\xb1\x94\x8c\x76\xce\x73\xcd\x5a\xe5\x77\x15\x3a\xff\x00\x87\xca\ +\x10\xb7\x14\x3b\x25\x3d\xcd\x63\x20\xac\x8c\x9c\x63\xeb\xda\xb0\ +\x82\x14\xb1\xe2\x29\x2a\x1d\xc1\xdd\xdc\x9e\xdf\x95\x6b\xbe\x5c\ +\x2d\x96\x4b\x6a\xee\x57\xbb\x94\x4b\x64\x24\x0c\x97\xa5\x3c\x96\ +\xd3\xf8\x67\xb9\xfa\x54\x6f\xa8\x5b\x5b\x20\xc6\xe4\xf2\x42\x47\ +\x6a\x65\xd5\xb7\xfb\x16\x93\xb3\x2e\xef\xa8\xee\x6c\xdb\x60\xa7\ +\x3b\x54\xe1\xcb\x8f\x2b\xfb\x2d\xa0\x72\xb5\x7c\x0f\xc6\xa9\x7e\ +\xa5\x7e\x93\xf6\x88\x65\xcb\x77\x4f\x2d\xaa\xbb\x4a\xda\x40\xb9\ +\x4d\x41\x6d\x84\x1f\x74\x36\x70\xa5\xe3\xdd\x58\x1f\x06\xb9\xab\ +\x56\x5f\xf5\x16\xad\xbb\xbb\x77\xd4\x57\x49\x37\x49\xc4\x60\xba\ +\xf2\xf0\x86\xff\x00\xba\x80\x38\x48\xf8\x48\xc5\x4a\xa6\xd9\xd2\ +\xc3\x74\x75\x4a\x9d\x69\xe8\xbc\xfd\x7a\xb1\x65\xf5\x9b\xaf\xb7\ +\x8d\x5d\xe2\xd8\x74\xca\x17\x61\xb0\xa8\x94\xb8\xb5\x2b\xfd\xa6\ +\x58\xf6\x5a\x87\xdd\x49\xfe\xca\x7f\x12\x6a\x9e\x71\x29\x60\xb6\ +\xda\xdc\x50\x1b\x54\x50\x80\x36\x9d\xc6\xb5\xbc\xe0\x49\x48\x69\ +\xb0\x70\x7e\xf1\x1f\xce\xb5\x24\x29\x6a\xf1\x94\x4b\x8a\x3d\xf1\ +\xdf\xe4\xf3\x5a\x21\x05\x15\xa1\xd3\x8e\x4a\x49\xc2\x2b\xd7\xd4\ +\xd0\xb3\x29\xf5\x99\x0a\xca\x46\x30\x02\x46\x78\xf7\x35\x82\xd2\ +\xb7\x1b\x48\xc0\xee\x33\x83\xc6\x7d\x29\x62\x88\x43\x4b\xda\xa0\ +\x92\x0e\x70\x0f\x27\xde\x93\xc8\x79\x0a\x74\x00\x14\x40\xf4\x4f\ +\x00\xf1\x4c\x42\x2a\x46\x29\x6a\xdd\xd9\xad\x0c\xb2\x12\x52\xf3\ +\xa9\x4e\xd3\x92\x0a\x7f\x2f\xad\x60\xe6\x12\x93\xb9\x63\x1d\x81\ +\x4a\xbb\xfe\x15\xb5\x42\x53\xa1\x3b\xd2\x52\x39\x03\x70\xc9\x48\ +\xc7\x02\xb2\x66\x13\x2d\xa4\x29\xd5\x78\xa4\x8c\xee\x24\x64\x7e\ +\x1f\x5a\x9b\xf6\x8a\x74\xdc\x9e\x58\x2b\x7a\xe6\x22\x59\x51\x58\ +\x28\x0b\x50\xcf\xb6\x31\xe9\x59\x39\x15\x4a\x39\x70\xa7\x80\x4e\ +\x7b\x52\xe5\x2d\xa4\x12\x10\xea\x90\x01\xe4\x28\x7a\xfc\x52\x27\ +\xe4\x28\xf2\x82\x41\xf5\x28\x18\xfa\xd4\xa6\xde\xc2\xe7\x4e\x10\ +\x4d\xc9\xdc\x46\xec\x66\xc2\xc6\xd3\x92\x79\x1c\xd6\x70\xa4\x5c\ +\x6d\xef\x22\x4c\x29\x6f\xc5\x75\x07\x29\x52\x16\x52\xa0\x7f\x0a\ +\x50\x92\x8c\xa9\x2a\x51\xec\x3d\xb3\x9a\x0a\x77\xa4\x29\x40\xe0\ +\x63\x38\x3c\x0a\xb5\xcc\x72\xc3\xc6\x45\x9d\xa3\x3a\xe7\x7c\xb5\ +\x2d\xa6\x35\x24\x41\x70\x65\x3c\x7d\xa1\xb3\xb1\xec\x7b\x9f\x45\ +\x7e\x3f\x9d\x15\x51\xce\x6d\x29\x19\xc1\xc1\xed\xed\x45\x42\x8a\ +\xe5\xa1\xca\xaf\x82\xa5\x9f\xdd\xf5\xf0\x3a\xc3\x4d\x6a\x0b\xf3\ +\x76\x28\xc8\x6e\xf5\x72\x4a\x41\x56\x02\x65\xac\x01\xe6\x3e\x99\ +\xa9\x33\x5a\xa3\x52\x35\x0c\x0f\xe9\x0d\xd8\x71\xdb\xed\x8e\x7f\ +\x9d\x42\x74\xaa\x77\x5a\x63\x92\x78\x1b\xbf\xfc\x8d\x3d\x15\x78\ +\x87\x27\xee\x8a\xf1\x55\xeb\x55\x72\xb6\x67\xf3\x3c\x6a\x9c\x93\ +\x76\x66\x62\xeb\xa8\x5f\x90\xa7\x5d\xbe\x5c\xce\x4f\x73\x29\x7f\ +\xe7\x4a\xdb\xba\xde\x12\x9c\x7e\xb9\xb9\x7f\xf5\x4b\xff\x00\x3a\ +\x40\x54\x01\xe2\xbd\x6d\x4a\x52\x82\x52\x82\x49\x3c\x01\xeb\x55\ +\x78\xaa\xef\x69\x3f\x9b\x21\x36\x2c\x76\xe9\x78\x24\x2c\x5e\x6e\ +\x5c\x73\xfe\xea\x5f\xf9\xd6\x6b\xd5\x7a\x89\x6d\x86\x91\x7e\xba\ +\xed\x1e\x9f\x6c\x73\xfc\xeb\x0b\xd5\x9a\xfb\x6d\x88\xdb\xf3\xec\ +\xf3\xa2\x30\xf2\xb6\x21\xc7\xd8\x52\x12\x49\x19\x03\x24\x77\xc0\ +\x27\x1f\x06\x90\x47\x65\x2c\xa7\x72\xf9\x51\xab\x4a\xb5\x78\xfb\ +\xf2\x77\xf1\x64\xbc\xd1\x76\xd8\x7a\x89\x7f\xd4\x2d\x8f\x11\x57\ +\xeb\xa8\x57\xfc\xf1\xcf\xf3\xac\x9f\xd5\x7a\x90\x82\xa5\x6a\x1b\ +\xb6\x3f\xe7\x8e\x7f\x9d\x35\x0d\xce\x38\x84\x24\x65\x4b\x50\x4a\ +\x52\x4e\x32\x49\xc0\xaf\x35\x3d\xaa\xe7\x64\xba\xae\xd9\x76\x8c\ +\x23\x49\x42\x52\xa5\x37\xe2\x25\x78\x04\x64\x1c\xa4\x91\x54\x8c\ +\xeb\xcf\xac\xe4\xed\xf1\x2d\x9a\x6a\x37\x57\xb1\xb5\x7a\x97\x50\ +\xba\xb2\xa5\xdf\xae\x87\xeb\x2d\xcf\xf3\xaf\x58\xd4\x9a\x85\x2b\ +\xdc\x2f\xb7\x4f\xfe\xad\xcf\xf3\xa6\x62\x78\xed\x4e\xd0\x6c\x17\ +\x69\x76\x19\x77\xc8\xf1\x82\xed\xf0\xd4\x11\x21\xef\x15\x03\x62\ +\x8e\x30\x36\x93\x93\xf7\x87\x61\xeb\x4f\x55\x6b\x4b\x48\xc9\xfc\ +\xd8\xb8\xe7\x93\xd0\xda\xe6\xa4\xd4\x3b\xf7\x7e\xbe\xba\x7f\xf5\ +\x8e\x7f\x9d\x66\xd6\xa7\xd4\x6d\xab\x72\x6f\xf7\x51\xf4\x98\xe7\ +\xf9\xd3\x3e\xd2\x72\x2b\xd1\xda\x97\xc7\xab\x6f\x79\xfc\xc3\x34\ +\xbb\x49\x33\x3a\xab\x52\x10\x14\x9d\x43\x76\xf9\xff\x00\x6c\x73\ +\xfc\xe8\x7b\x53\x6a\x25\x8c\xff\x00\x48\x2e\xb9\xff\x00\x9e\x39\ +\xfe\x75\x1b\x43\xa5\xa3\x9f\x4a\x1e\x96\x90\x9c\x85\x52\xb3\xd6\ +\xbd\xd4\x9f\xcc\xba\xa9\x27\xa5\xc7\x97\x35\x76\xa4\x6c\x14\x9d\ +\x41\x76\x03\xfe\x78\xe7\xf9\xd3\x74\xcd\x69\x7c\x65\xa5\x2d\x7a\ +\x86\xe4\x84\x81\x95\x29\x53\x56\x00\xfa\x9c\xd4\x3f\x52\xea\x16\ +\x22\x94\x47\x09\x76\x4c\xd7\x8e\xd8\xf0\xe3\xa4\xad\xe7\x94\x7b\ +\x04\xa4\x73\xc9\xaa\x9f\xaa\xb1\x7a\x8b\x05\x51\xbf\xa5\xd6\x0b\ +\xbd\x8e\x24\x82\x7e\xca\xdc\x98\xab\x65\xb5\xe3\xbe\x32\x06\xe5\ +\x0c\x8c\xfa\x8c\xfa\x57\x4f\x07\x86\xc4\x57\xd7\x33\x4b\xb6\xec\ +\xdb\x85\xc2\x55\xae\xef\x7b\x22\x79\xab\xba\xdf\x3a\x31\x53\x16\ +\xdb\xd5\xca\xe0\xf0\xe3\x7a\xa5\x38\x1a\x1f\xc7\x2a\xff\x00\x5c\ +\xd5\x4d\xa9\x75\x9e\xa9\xd4\xae\x95\xdd\x6f\x53\xa4\x23\xd1\xb5\ +\x3c\xad\x89\x1e\xc0\x67\x14\xc2\x1b\xf7\xe4\x9f\x5a\xcd\x20\x76\ +\x07\xf3\xaf\x41\x47\x0f\x0a\x4b\x4b\xb7\xda\xce\xfe\x1f\x07\x0a\ +\x1b\x6e\x63\x87\x14\x7c\xce\x2f\xf1\x35\xea\x41\x4f\x39\x56\x6b\ +\x23\xbb\x8f\xa5\x2e\x76\xd5\x73\x66\xd2\xc5\xe1\xfb\x5c\xc6\xad\ +\xb2\x5c\x53\x4c\x4c\x5b\x0a\x0c\xba\xb4\xfd\xe4\xa5\x78\xda\x48\ +\xf5\x00\xf1\x4f\x6d\x9b\x16\xe2\x30\x5c\xec\x16\xbf\xce\xbd\x42\ +\xd6\x14\x0e\xf5\x03\xe8\x6b\xc0\x32\x7d\xbd\xab\xdf\x4c\x11\x8a\ +\xad\xcb\xab\xf6\x99\x17\x9e\x24\x6e\x79\xc3\xf8\x9a\xc9\x2f\x3b\ +\xbb\x97\x5c\x3f\xf5\xab\x04\xfa\x91\xe9\xc6\x2b\x24\x83\x9d\xc5\ +\x35\x0c\xba\x72\xed\x33\x53\xef\x29\x44\x17\x5c\x3f\x55\x9a\x03\ +\xab\xc1\x05\xd7\x3e\x79\x35\xa5\x44\x15\x63\x18\xf4\xac\x81\xc0\ +\x04\x7e\x00\x50\x4f\x12\x4d\xee\x66\xe3\xef\x04\x85\x87\x57\x94\ +\x60\xa7\xcc\x7f\x87\xf1\xaf\x56\xf3\x8e\xa4\x65\xd5\x94\x91\xdf\ +\x71\xe6\xb0\x1c\x73\xf3\x5e\x70\xd9\x20\xf2\x85\x73\xff\x00\x24\ +\xd0\x4a\x9c\x97\x32\xfa\xe9\xa7\x50\xef\x17\xcb\x7a\x60\xca\xbe\ +\xdc\x05\xce\x2a\x02\x56\x93\x29\x79\x75\x09\xc0\x0b\x1c\xf3\xe8\ +\x0f\xe7\x53\x34\x5f\x2f\x81\x1e\x5b\xcd\xcb\x00\x76\xfb\x52\xff\ +\x00\xce\xb9\xc7\x45\x58\xb5\x46\xa0\xbe\x06\xb4\x7d\xba\xe1\x3e\ +\xe7\x19\x06\x4a\x53\x05\xa2\xb7\x1b\x40\x21\x25\x58\x1d\x86\x54\ +\x91\xf8\x8a\xb4\xde\xd4\x1a\xa3\x4a\xa6\x3b\x1d\x47\xd2\x37\x8b\ +\x32\xde\xf2\xb5\x31\x50\xd4\xda\x1d\x3e\xb9\x04\x00\x48\xf5\xda\ +\x7f\x0a\xe0\x63\x70\x15\x54\x9c\xe9\x6a\xbb\x3b\x0e\x4e\x2f\x0d\ +\x57\x36\x6a\x6e\xfd\xd7\x26\xd2\x2f\xb7\xbd\xa4\x9b\xdd\xc9\x27\ +\xdf\xed\x4b\xed\xf9\xd6\xa8\xd7\xab\xbb\x69\x29\x7a\xf1\x74\x24\ +\x65\x5c\x4a\x5f\x23\xdf\xbd\x46\x06\xb0\xd2\xf2\x40\x0c\xdf\x22\ +\x79\x86\x7f\x6b\xb9\xbc\x7d\x72\x29\x53\x57\xad\x3b\x22\x2e\xe5\ +\xde\x6d\x64\x0f\x43\x25\x03\x18\x3c\x7a\xd7\x2d\xc6\xb2\x5a\xa7\ +\xe6\x62\xfd\xf8\xab\x3b\xf9\x92\x78\xda\x8a\xfc\xeb\xcb\x75\x9d\ +\x47\x74\x2d\x29\x20\x28\x7d\xa9\xc1\x83\xf9\xf7\xf4\xa5\x82\xfd\ +\x7e\x40\x0d\x1b\xcd\xd1\x1e\x5e\xe9\x94\xb1\x81\xe9\xeb\xfc\x2a\ +\x39\xa4\x52\xce\xad\xd4\x0c\x58\xb4\xfd\xca\x1c\xeb\xab\xe1\x61\ +\x31\xd9\x90\x90\x56\x94\x24\xa8\x9e\x48\x48\xc6\x0f\xad\x31\x5e\ +\xba\x83\x67\xb1\x5e\x65\x5b\xa5\x17\xdc\x9b\x11\xc5\xc6\x90\xdb\ +\x2d\x6e\xc2\xd0\xa2\x15\xc9\x38\x3c\xe4\x67\x9e\xd5\x2a\x86\x26\ +\x7e\xea\x7e\x64\x70\xf1\x13\x7d\x54\xfc\xcb\x11\x5a\x87\x51\x16\ +\x83\xa2\xf7\x73\x78\x00\x7f\xfe\x6d\x79\x3e\x9e\xf8\xa5\x11\xb5\ +\x16\xa1\x6d\x28\x29\xbe\xdd\x38\xe0\x1f\xb5\xb9\x9e\xdf\x5a\xa4\ +\xa4\x75\x75\x4d\xa9\x5f\x63\xb2\x87\x90\xa2\x79\x7d\xcd\x9f\xc1\ +\x39\xa6\x2b\x9f\x54\x35\x6c\xdd\xe9\x8a\xf4\x6b\x72\x08\xe3\xec\ +\xec\x8d\xc0\x7f\xca\x56\x4f\xe5\x8a\x7c\x3a\x37\x19\x3d\xf4\xf1\ +\x63\x63\x80\xc5\xc9\xd9\xe9\xf1\xfb\x1d\x19\x23\x52\x5f\x1b\x6f\ +\xc5\x91\xa8\xae\x6c\x36\x15\xc9\x72\x7a\xd0\x93\xf9\xab\x15\x15\ +\xbc\xf5\xaa\x35\xa5\x4e\xa4\xea\xeb\xac\xe7\xc2\xb1\xe1\x43\x94\ +\xe2\xc6\x7f\xe5\x12\x07\xf1\xae\x70\xb8\x4d\x99\x71\x7f\xc5\xb8\ +\x4c\x93\x31\x64\xe5\x45\xe7\x14\xae\x7f\x1a\x4e\x02\x12\xa2\x13\ +\xb4\x01\xdf\xd7\xf2\xad\xf4\xba\x26\xda\xd4\xa8\xdf\x86\x86\xda\ +\x7d\x17\x67\xd7\x9b\x7e\x1a\x16\xed\xfb\xf4\x85\xd7\x12\x02\x9b\ +\xb2\xce\xb8\x40\x41\x3c\x3c\xf4\xc7\x1d\x70\x7d\x06\x76\x83\xf8\ +\x1a\xad\xf5\x0e\xa3\xd4\x3a\x9a\x68\x99\xa8\xaf\xb7\x2b\xac\x81\ +\xf7\x17\x2e\x4a\xdc\x29\xf8\x4e\x4f\x03\xe9\x4d\x65\x4b\xc7\x95\ +\x38\x03\xd5\x55\xe1\x19\x39\x5a\x81\xe3\x00\x67\xb7\xe1\x5d\x4a\ +\x54\x29\xd2\x56\x8a\xfa\x9d\x2a\x34\xa3\x47\xdc\x5e\xbc\x4f\x4b\ +\xce\xfd\xd0\xe2\xc9\xed\x80\xa3\x83\xf5\xac\xbc\x69\x2a\x46\xd2\ +\xf3\xa5\x07\xb8\xde\x71\xc7\xbd\x60\x08\x00\x00\xae\xde\x80\xd0\ +\xb2\x10\x08\x1c\x9f\x5c\x9e\xf4\xe1\xaa\x52\xde\xe6\xc5\x4b\x91\ +\xbb\x1e\x3b\x98\x1d\xb2\xa3\x5a\x9c\x90\xe8\xec\xea\xc2\x87\x6f\ +\x31\xe2\xb5\xf9\xd6\xa2\x12\x14\x00\xef\xf1\x59\x25\x09\x41\xfb\ +\xc0\x9f\x91\x53\x6b\x15\x75\x27\x2d\xd9\x8f\x89\x25\xd5\x65\x4f\ +\x38\x31\xee\xa3\x59\xa4\x94\x1d\xc9\x5a\xc1\x1c\x67\x35\x22\x85\ +\xa2\xb5\x54\xfe\x9f\x5c\x75\xe4\x3b\x4e\xfd\x39\x6c\x92\x22\xcc\ +\x99\xf6\x86\x87\x86\xe9\x2d\x80\x9f\x0c\xab\x79\xe5\xe6\xf9\x09\ +\x23\xcd\xdf\x83\x88\xa9\x25\x5c\xe4\x9a\x9b\x31\x6e\x76\xd9\xdc\ +\x50\xa9\x6f\x81\xe4\x75\xc1\xcf\xf6\xcd\x6a\x76\x4b\xea\x52\xb2\ +\xf2\xc9\x57\x07\xcd\xde\xb5\x24\xe4\x8c\x63\xf2\xed\x41\xf5\xf5\ +\x35\x29\x58\xa4\xaa\xca\x4b\x73\xd2\xe3\xab\x50\x2b\x71\x64\x8f\ +\x9a\x37\x2b\x24\xee\x56\x4f\xae\x4d\x78\x40\xe0\x95\x60\x7e\x75\ +\xea\xf6\xe7\x39\x1c\xfb\x54\x95\xbb\xdd\xb0\xf1\x1c\x1c\x07\x17\ +\xef\xf7\xab\xcf\x11\xc3\xff\x00\x08\xe1\x1e\x9c\xd7\x83\x39\xc7\ +\xf1\xaf\x42\x3b\xee\x56\x3e\x48\xa9\xb9\x56\xd9\xa5\xf5\xa8\x8e\ +\x56\xa2\x3e\x4d\x15\x9b\xe9\x40\x1c\x2b\xf0\xa2\xac\x99\x49\x45\ +\xb7\xb9\xd5\xba\x67\x8b\x24\x70\x38\x1e\x6c\xff\x00\xda\x34\xea\ +\x94\x15\x72\xa3\x84\xd3\x66\x98\x03\xf5\x33\x0a\x57\x00\x6e\xff\ +\x00\xf2\x34\xb9\x4e\x17\x32\x3b\x27\xd8\x57\x82\xa9\x77\x36\x78\ +\x76\x6c\x2f\x32\xdf\x09\x4e\xe3\x53\x6e\x86\x06\x26\xf5\x1e\x12\ +\x24\x36\x8f\xd9\x32\xeb\xcd\x85\x7a\xac\x0c\x0f\xc4\x64\x9f\xc2\ +\xa0\x3c\x0e\xdf\xc6\x96\xd9\x6e\xd7\x1b\x15\xe2\x25\xe6\xd0\xe3\ +\x68\x9b\x11\x65\x4d\x87\x06\x50\xb0\x41\x4a\x92\xa0\x0f\x20\x82\ +\x47\xf1\x1c\x8a\x76\x15\xc2\x9d\x68\xce\x5b\x26\x32\x85\x45\x0a\ +\x91\x94\xb6\x4c\x7b\xb5\x45\x77\x55\x75\x10\x46\xb9\xcf\x9a\xe3\ +\xb3\xee\x4b\xf1\xb7\xbc\xa2\x94\x80\x55\x90\x94\x93\x84\xe1\x20\ +\xa4\x71\xc0\xa9\x74\x3b\x65\x8e\xfd\xa8\xf5\x5e\x96\x67\x4e\x46\ +\xb7\x7e\xa9\x61\xc5\xdb\xe6\x34\xfa\xd4\xea\x94\xd1\xd8\xaf\x13\ +\x71\xc1\x0a\x24\x1f\x81\x9f\x5e\x6a\x0b\x7a\xd5\x66\x75\xd1\xab\ +\xc5\xb3\x4b\x46\xb0\x5d\xda\x98\x26\x2a\x5b\x77\x05\xc8\x43\x8e\ +\x0c\x92\x3c\x22\x94\x84\x82\xa3\x93\xc9\xf6\xf5\x34\xba\xef\xd4\ +\x1b\x83\xd1\x2e\xcf\x5b\xf4\xbc\x0b\x4d\xc6\xf0\xd1\x62\x7d\xc5\ +\x13\x96\xee\xe4\x2b\xef\xf8\x6d\x94\x80\xd9\x3e\xf9\x35\xd3\xa7\ +\x3a\x09\xcb\x89\x25\x2b\xbf\x1b\xab\x6c\xb4\xed\x36\x42\xa5\x25\ +\x7c\xcd\x3d\x7e\x68\x76\x7d\x16\x7d\x3b\xa3\x34\x75\xc1\xcd\x3d\ +\x16\xef\x26\xfd\x20\x3a\xfb\xb2\x1e\x5a\x3c\x26\x42\x93\x80\xde\ +\xd2\x30\xac\x29\x38\x3e\xe0\xe7\xd3\x12\xad\x45\xa7\x22\x5f\xba\ +\xc7\xa8\xe4\xcd\x8e\x25\xb5\x6c\xb5\x35\x21\x31\x94\xef\x84\x97\ +\x9c\xd9\xe4\x4a\x95\x91\x84\xf0\x72\x72\x07\xbf\x15\x56\x5b\xb5\ +\xc4\x88\xfa\x5a\x06\x9f\xb8\x69\x78\x17\xa6\xed\x6e\x97\x6d\x92\ +\x1d\x98\xb6\x4b\x07\x39\xda\xe2\x12\x0f\x88\x9c\xfa\x65\x3c\x00\ +\x3e\x69\x53\xbd\x48\xbe\x2f\x58\xc9\xd5\x1f\xaa\x20\xa9\x53\x61\ +\x26\x14\xeb\x7b\xaf\x15\xb5\x25\xb0\x90\x15\x85\x6d\x05\x24\x91\ +\x91\xc1\xc6\x71\xcd\x68\x85\x6c\x32\x82\x8b\xb5\xb4\xd2\xdd\xdc\ +\xfe\x23\x23\x5a\x86\x54\x9e\xda\x69\x6e\xee\x7f\x11\xc7\x5e\xda\ +\xed\xa8\xd2\x56\x4b\xc2\x63\x5a\x6d\x97\xa7\x5d\x5b\x17\x1b\x7c\ +\x09\xc9\x7d\xb4\xfd\xf2\x85\x8c\x2d\x58\x05\x28\xcf\x7f\xde\x00\ +\xf2\x29\x7e\x95\x21\x1d\x0a\xd6\x8b\x57\x61\x2d\x92\x7f\x36\xaa\ +\x07\x25\xeb\x2c\x95\x37\xfa\xa3\x46\x31\xa7\xb6\xe4\xad\x49\xb8\ +\xae\x52\x9c\x1e\x83\xcc\x94\x80\x07\xd0\x9f\x9a\x78\x89\xa9\x64\ +\xc0\xd1\xb7\x7d\x26\x8b\x52\x1f\x62\xec\xe2\x1c\x5c\xb3\x2b\x61\ +\x67\x69\x4f\x1e\x1e\xc3\xbb\x3b\x7b\xee\x1d\xeb\x27\x1e\x94\x71\ +\x12\x7a\x25\x95\xad\x3b\x6d\xe0\x84\x2a\x90\x55\x5c\xb9\x59\xaf\ +\x2f\x04\x59\x8b\xd1\xf6\x5b\x3d\xea\xdd\xa7\xee\x96\x9b\x4f\xea\ +\xd7\xad\xbe\x24\xeb\xac\x8b\x92\x5a\x90\xdc\x93\xbb\x1b\x10\x56\ +\x0e\xdc\xa4\x0e\x12\x47\x9b\xbf\x07\x31\xed\x19\x67\xb6\x4e\xd2\ +\xb7\x26\xac\x56\xfb\x3d\xf7\x55\xc4\x9a\xa4\x39\x12\xe1\x21\x49\ +\x05\x84\x9c\x05\x36\x94\xa8\x64\x1e\xf9\xce\x33\x91\x9e\x05\x46\ +\x27\x6a\xa6\xaf\x4c\x42\x46\xa8\xd1\x16\xeb\xf4\xd8\x51\xd3\x19\ +\x99\xff\x00\xac\x57\x1d\x4a\x69\x27\xca\x16\x80\x95\x6e\x39\x24\ +\xe4\x11\xdc\xf6\xad\x1a\x73\x53\x44\xd3\x53\x21\x4f\x67\x43\x43\ +\x99\x75\x82\x56\x63\xce\x37\x57\x1a\x09\x2a\xdc\x39\x6b\x61\x07\ +\x09\x56\xde\xe3\x20\x7b\xd6\x8e\x36\x15\xd4\x56\xb5\xbc\xf9\x77\ +\x6f\xf3\x1c\xea\xd0\xce\xad\x6b\x7a\xee\xdf\xe6\x4a\x34\x45\xb2\ +\x05\xcf\x4d\xde\x9b\xb7\xd9\x6d\x13\xf5\x9b\x13\x14\x3f\x54\x5c\ +\x5f\x5b\x69\x6d\x90\x46\x42\x13\x90\x4e\x39\x19\x27\xb8\xe4\xfa\ +\x1e\x77\xea\xee\xad\x9b\xa7\xa7\x4a\x86\xdc\x44\x40\xb9\x38\xf3\ +\xa1\x51\xb0\x48\x88\x02\x88\x29\x01\x59\x27\x07\xca\x33\xed\x56\ +\x8c\x4d\x7f\x1e\xd7\x7e\x46\xa2\xb8\xe8\xa8\x97\x6b\xfa\x25\xb9\ +\x29\xb9\xe2\xe8\xe4\x74\xa5\xc5\x95\x1f\xea\x82\x54\x08\x1b\xb1\ +\x8c\x8c\x81\xce\x6a\x97\xd6\xfd\x64\xfe\x91\xe9\xdd\x5f\x63\xba\ +\x69\x0b\x2c\xbb\x8d\xf6\xec\x26\xa2\xf3\xb7\x0e\xc5\x4a\x4a\x7f\ +\x66\x80\x41\x38\xc2\x30\x0e\xe1\x80\xb5\xe4\x1d\xd9\xa7\xd0\xa1\ +\x46\xba\x8e\xda\x79\xf8\x9a\x30\xb4\x29\xd7\x71\xee\xf5\xa9\x3b\ +\xfd\x02\xd9\x45\xc3\xa9\x9a\x93\x51\x4e\x02\x65\xca\xdf\x65\x71\ +\xd8\x9e\x37\x9c\x85\xa9\x60\x15\x8f\x5c\xe3\xcb\xf4\x59\x1e\xb5\ +\x15\xfd\x1a\xd9\x57\x53\x7a\xeb\x02\xd9\xaf\x64\x4a\xd4\x11\x26\ +\x22\x63\xef\x37\x31\xe5\x2d\x25\xc2\xd2\x95\xbc\x0c\xe0\x1c\xe0\ +\xf1\xec\x2a\x15\xd1\xbe\xa2\x5e\xfa\x5d\xad\x59\xd4\xf6\x46\xd8\ +\x79\x61\xa5\x47\x93\x19\xf2\x76\x48\x65\x58\x25\x04\x8e\x41\xca\ +\x52\x41\xf4\x20\x70\x46\x41\x9a\xe9\xae\xb1\xe8\xfd\x2d\xd4\xdb\ +\x6e\xb8\xd2\xdd\x29\x4d\xa9\xe8\xff\x00\x69\x32\x63\x26\xfc\xe3\ +\x89\x90\x5d\x41\x4f\x94\xa9\xbc\x34\x94\x92\x48\x01\x27\xdb\x81\ +\x5d\x75\x6b\x58\xee\x64\xcb\xb2\x27\x3d\x33\xd0\x7a\x23\x5c\xf5\ +\x33\x53\xc2\x63\x45\xc6\x8d\x67\xd0\x91\x24\x34\x88\x9f\x6f\x50\ +\x55\xd6\x42\x5c\x52\x5b\x5c\x87\x54\x46\xdc\xf8\x6a\x27\x04\x24\ +\x64\x0e\xc3\x96\xce\xb0\xf4\xfe\xc6\x34\xa6\x85\xd4\x96\x9d\x23\ +\x68\x87\xaa\x66\xdc\xc4\x1b\xb6\x97\xb3\xdc\xc4\xa6\xdf\x25\x4b\ +\x2d\xed\xf0\xdc\x59\x4e\xe4\xb7\xc9\x49\xe3\xc4\x19\x39\x15\x5e\ +\xe8\x2e\xae\xdc\xf4\x77\x51\xaf\xfa\xaa\x2d\xa2\x24\xc8\x3a\x81\ +\x72\x13\x71\xb5\x49\x70\x94\x3a\xcb\xcb\x2b\x28\xde\x06\x41\x19\ +\xc6\xec\x7b\xf1\xcd\x7b\x1b\xa8\xda\x56\xc1\xac\x6c\x3a\xa3\x40\ +\x74\xe9\xad\x3b\x2e\xd5\x2c\xc8\x58\x91\x79\x7a\x70\x90\x92\x0a\ +\x4b\x7e\x64\xa4\x20\x60\x9e\x40\x27\x9e\xf4\x5d\x58\x32\xca\xe5\ +\xdc\xe7\x4b\x6d\x97\xbe\x92\x6b\xe9\x3a\xab\xa6\xfa\x73\x46\xde\ +\xf4\xed\xb4\xcf\x80\x6c\xf7\x4f\x1d\xf4\xec\x69\xd7\x36\x3e\x80\ +\xea\xf1\x90\xd8\x1e\x6e\xfb\x89\x00\x14\xd6\x1d\x5c\xba\xdb\x9e\ +\xfd\x18\xfa\x6d\x0e\x1e\x8c\xd3\xe8\x55\xf8\xba\xc4\x66\xf6\xb8\ +\x11\x01\xd7\x32\x0b\xad\x61\x5f\x78\xa9\x44\x92\xac\xf2\x6a\x03\ +\x70\xfd\x21\xa0\x93\xad\xd1\x66\xe9\xcc\x6b\x60\xd6\x96\xd9\x11\ +\xee\xae\x7e\xb6\x71\xe7\x57\x21\xc4\x29\x08\x78\x15\x23\x01\x08\ +\x0e\x38\x7c\x30\x91\x92\xbf\xbc\x30\x05\x30\x49\xeb\x04\x0b\xa7\ +\x47\x6d\x1a\x06\xfb\xa2\x9b\x9f\x2a\xc6\xdb\xa9\xb4\xdd\x1a\xba\ +\x38\xc1\x8e\xb5\x03\xb5\xc5\x34\x12\x42\xca\x72\x0e\x0a\x80\x3b\ +\x47\x1d\xea\x6e\x88\xcb\x2e\x67\x40\xcb\xe8\x9f\x4f\xad\xb7\xe9\ +\x1a\x02\xe5\xa6\x6c\xb0\xec\xc2\xca\x14\xde\xa9\x93\x79\x42\x27\ +\x19\xe7\x1e\x6f\x04\xbb\x90\x8f\x5c\x6d\xdb\xc6\x39\x06\xb9\x87\ +\xa0\xd6\x58\x17\x8e\xb5\xe9\x9b\x25\xea\x1b\x53\x20\xc8\xb8\xa5\ +\x89\x0c\x2c\xe5\x0e\x27\x9c\x83\x83\xc8\xe2\xa5\x3a\xc3\xac\x7a\ +\x63\x5c\x88\xf7\x2d\x75\xd2\xc8\x97\x8d\x4a\xd4\x44\xc5\x55\xce\ +\x3d\xe5\xe8\x8d\xbc\x13\x9d\xaa\x5b\x28\x49\xc9\xc9\x3c\x85\x0e\ +\xf8\xe0\x00\x2a\xbe\xe9\x8e\xa7\xfe\x85\xeb\xeb\x36\xab\xfb\x07\ +\xdb\x8d\xb2\x4a\x64\x7d\x9b\xc5\xf0\xbc\x5c\x03\xe5\xdd\xb5\x58\ +\xfa\xe0\xd5\x5b\x45\xe3\x19\x59\xdc\xea\x0b\x16\x86\xe9\x55\xc2\ +\xf3\xd5\x1d\x29\x23\xa7\xf1\xc4\x6d\x18\xd0\x96\xc4\xc4\x4e\x78\ +\x4a\x92\x52\x95\xad\x69\x5a\x81\xc0\x49\x28\xda\x02\x40\xc2\x4f\ +\xbf\x35\x19\xbe\xf4\xf3\x49\xeb\xae\x93\x74\xbb\x56\xd9\xf4\xfc\ +\x3d\x2d\x71\xd4\x9a\x89\x36\x69\x8d\x40\x5a\xcb\x5e\x1a\x9d\x7d\ +\x1b\xc0\x5a\x8f\x98\x06\x32\x33\xdf\x71\x04\x9c\x0a\x86\xda\x7a\ +\xf4\x6d\xda\x93\xa8\xf7\xaf\xe8\xa0\x77\xfa\x6f\x1d\x4c\x96\xbf\ +\x58\xe3\xec\x39\x4a\xd3\x9c\xf8\x5f\xb4\xfb\xf9\xc6\x13\xda\x9a\ +\x1f\xeb\x0c\xd1\xd1\x9d\x23\xd3\xfb\x75\xa1\x50\x65\xe9\x8b\xc0\ +\xbb\xc6\xbb\x09\x7b\x8a\xdc\x0e\x3e\xb4\x8f\x0b\x67\x97\x05\xe1\ +\xce\xe3\xf7\x3b\x73\xc0\xda\x05\x19\xa7\xa1\x75\xc2\xd0\x9d\x30\ +\xd4\xbd\x63\xd4\xdd\x10\x8f\xa1\xa3\xdb\x1b\xb5\xdb\x37\xc1\xbe\ +\x35\x25\xd5\x4c\xfb\x42\x52\xd1\x2b\x5e\x55\xb5\x49\xcb\xa7\x8c\ +\x11\xe5\xed\xc8\xdb\x10\xb4\x69\xed\x0f\xa5\xbf\x46\x5b\x27\x51\ +\x2f\x5a\x26\x0d\xfa\xf4\xcd\xd6\x4d\xbd\x4d\xbe\xfa\xdb\x69\xd2\ +\xa7\x56\x02\x9c\xdb\xca\xf6\x25\xb2\x12\x3f\xbd\x9f\x41\x4d\x93\ +\x3f\x48\xc2\x9b\x8d\xdb\x55\xda\x74\x05\xb6\xd7\xae\x2e\xf0\x04\ +\x29\x77\xc6\xee\x2e\x2d\x01\x3b\x52\x9d\xed\xc7\x23\x08\x56\x10\ +\x8c\x1d\xc7\xee\x8c\xe7\x9c\xc2\xa7\x75\x47\xed\x1d\x01\xb7\xf4\ +\xa3\xf5\x10\x42\x61\xdc\x95\x3b\xf5\x97\xdb\x33\xbf\x2a\x70\xec\ +\xf0\xb6\x71\xfd\x67\x7d\xde\x9d\xa8\xba\x0c\xb3\xe6\x5f\x9a\x2f\ +\xa4\x5a\x4b\x4f\xe9\xae\x9f\xb3\x79\xd1\xd6\x5b\xdb\x1a\x8a\x21\ +\x97\xa8\x2e\xd7\x1b\xc2\x63\x39\x09\x2b\x6d\x2a\x6d\x2c\x20\xba\ +\x92\x42\x77\xe0\x94\x82\x4e\x3b\xf2\x31\xcb\xfd\x4b\xb2\x42\xd3\ +\x7d\x41\xbf\x58\xad\xd2\xd3\x32\x0c\x39\xce\x35\x19\xf4\xac\x2b\ +\xc4\x68\x1f\x21\xc8\xe0\xf9\x48\xed\x53\x96\xba\xbd\x66\xbc\x68\ +\x4b\x16\x96\xea\x1f\x4f\x58\xd5\x23\x4f\xb4\x63\x5a\xe6\xb5\x75\ +\x72\x0b\xad\x33\x80\x03\x6b\xda\x95\x05\x80\x12\x81\xe9\xc2\x47\ +\xae\x49\x64\xb7\xf5\x0a\xd1\x07\x40\x6a\xbd\x25\x1b\x40\xd9\xc0\ +\xbe\x4e\xfb\x4c\x49\x8b\x71\x4e\x3d\x6d\x6c\x10\x52\xca\x14\xa0\ +\x54\xb0\x90\x30\x95\x15\x03\xe6\x51\x3b\xb3\x43\xb3\x2d\x0c\xe9\ +\xea\x59\xff\x00\xff\x00\x0f\x24\xa9\x3d\x6a\xbb\x8c\x9d\x87\x4e\ +\x3e\x42\x4f\xa7\xfb\x4c\x6a\xd9\xd3\x7b\x94\xcd\x51\xfa\x1d\xf5\ +\x16\x2e\xa5\x95\x22\x6b\x56\x79\x6c\xc9\x80\xe4\xb7\x0b\x8a\x65\ +\x64\xa0\xe1\x0a\x3c\x81\x90\x78\x1f\xdb\x57\xbd\x56\x9f\xa3\xe7\ +\x54\x4f\x48\xf5\xa4\xad\x48\x9b\x18\xbe\x7d\xaa\xdc\xb8\x3e\x01\ +\x99\xf6\x7d\xbb\x9c\x69\x7b\xf7\x6c\x5e\x71\xe1\xe3\x18\xfd\xee\ +\xfc\x52\x9d\x5f\xd5\x98\xd3\x3a\x70\xbe\x9e\xe8\xbd\x1f\x1f\x49\ +\xe9\xd9\x32\x84\xb9\xc9\x17\x05\xcc\x91\x2d\x69\xc1\x01\x4e\x28\ +\x27\xca\x0a\x52\x71\x8f\xdc\x4f\x3d\xf3\x09\xe8\x0e\x2f\x3e\x9d\ +\xc7\x43\xb7\xd1\x5d\x0b\xa7\xaf\x36\x6d\x13\x7f\xd2\x56\x37\xad\ +\x52\xac\x85\xeb\xae\xa3\x97\x79\x43\x33\x1a\x9a\x77\x01\xe1\xb6\ +\x5d\x0a\xd8\x0a\x06\x30\x82\x9f\x30\xc9\x38\x56\x6b\x8d\x3d\xa4\ +\x34\x56\x9d\xfd\x1c\xef\x7a\xd2\xeb\xa5\xe0\x6a\x1b\xbd\x87\x53\ +\x3b\x09\x82\xf3\xaa\x43\x32\x52\x16\xdb\x40\x39\xb1\x59\x52\x06\ +\xe5\x28\x00\x79\x38\xc9\x23\x35\x11\xbc\xf5\x8b\x4f\x6a\xeb\x55\ +\xa4\x75\x13\xa6\x51\xb5\x2d\xe2\xd7\x11\x30\x99\xb9\x35\x78\x7a\ +\x11\x71\xa4\xf2\x90\xe2\x10\x93\xb8\xe4\x93\x90\xa1\xc9\x38\xc6\ +\x6a\x69\xd3\xad\x61\xa0\xad\x5f\xa2\x3d\xe2\xd5\xa9\x22\x5b\xef\ +\x2f\x2e\xff\x00\xe3\x0d\x3a\x2f\x3f\x64\x92\xea\x0a\x99\xda\xa1\ +\x8c\xb9\xb5\x38\x27\x21\x3c\x84\x9e\x6a\x74\x7b\x15\xfd\xc5\xab\ +\x2c\x2d\x21\xa2\xf4\xce\x9c\xfd\x26\x3a\x6f\x7f\xd2\xb6\xb4\x5a\ +\x61\x6a\x4d\x3d\x22\x6a\xe0\xa1\x65\x49\x65\xcf\xb3\x92\x76\xe7\ +\x90\x08\x5a\x46\x3b\x64\x1a\x80\x49\xd3\x3a\x5b\x4d\xe8\x4d\x7b\ +\xd5\x9b\xe6\x9b\x8b\xa9\xae\x6e\x6a\xd9\x56\xf8\x10\xe5\xba\xb4\ +\xc7\x65\x3e\x39\x0a\x5a\x92\x82\x0a\x89\xca\xbd\x7d\x13\x8c\x73\ +\x51\x48\xff\x00\xa4\x25\xcc\x75\x9e\xd3\xd4\x19\x5a\x72\x33\x91\ +\x2c\xf0\x17\x6f\xb7\xd9\xa3\xca\x2d\x36\xcb\x25\x0a\x48\x1e\x21\ +\x42\xb2\x7c\xd9\x27\x6f\x38\x03\x8c\x53\x6d\x83\xac\xc9\x66\xd7\ +\xa9\xf4\xee\xa5\xd1\xec\xea\x0d\x2f\xa8\x2e\xae\x5d\x55\x6f\x54\ +\xf5\xc7\x76\x2b\xca\x5e\xef\x23\xe9\x49\xe3\x84\xe7\xcb\xce\x3d\ +\x32\x72\x5d\x13\x92\x77\x2e\x28\x3d\x3c\xe9\xac\x4e\xae\x74\xd6\ +\xea\xbd\x33\x1d\x3a\x77\xa8\x56\x37\x1d\xfd\x59\x21\xc5\x38\x88\ +\x92\xbc\x26\x9e\x49\x49\xce\x46\x77\xa1\x00\x67\x00\x93\xd8\x76\ +\xaf\x35\xb6\x80\xb2\x68\x1e\x88\x6a\x59\x17\x6b\x5b\x2e\x5f\xa6\ +\xea\xc7\x6d\x56\xb7\xdc\xc9\x5b\x31\x58\x57\x99\x69\xf4\xf3\x6c\ +\x52\x73\x8f\xde\x1f\x83\x3c\xde\xa3\x5f\x3a\x91\xd5\x5d\x2d\x32\ +\x2b\xda\x7f\x48\x46\xd3\xa9\x69\x36\x68\xf3\x67\x96\x62\x45\x43\ +\x24\x2c\x25\x6f\x2c\x72\xa5\x6c\x4a\x73\x81\x9c\x24\x62\x9e\xbf\ +\x4c\x4e\xa3\xc1\xd6\xba\x86\xc5\x68\xb3\xcf\x83\x32\x3d\x9e\x19\ +\x33\x1e\xb7\xaf\x74\x47\x26\xbc\x41\x7b\xc2\x57\xef\xa4\x6d\x18\ +\x57\xc9\xf9\xa8\x76\xb3\x2d\x1c\xd9\x92\x66\xbf\xd1\x9f\xa7\x16\ +\xad\x4b\xa5\xf5\x7e\xb0\xb8\xda\x63\x5f\xdf\xb1\xb2\x86\xed\xd6\ +\xd9\x53\x04\x78\xcf\x48\x58\x27\x73\xab\x2a\x40\x09\x48\x09\xe0\ +\xa8\x03\x93\xec\x2a\x7e\xee\x87\xe9\xad\xbb\xab\x3d\x36\x7e\x56\ +\x9e\xb0\xb7\x1b\x54\x46\x72\x15\xea\xc8\xc4\xe4\xca\x66\x14\xdd\ +\x89\x2d\xa9\x0a\x4a\xd5\xf7\x96\xa0\x9e\x0e\x38\xf5\x26\xa8\xde\ +\x92\x75\x2a\x4e\x84\x8b\x7b\xb4\x4b\xb2\x44\xd4\x3a\x7e\xfd\x1c\ +\x47\xb9\xdb\x24\x3a\xa6\x7c\x44\xa7\x20\x14\x38\x90\x4a\x14\x02\ +\x94\x33\x83\xdc\x1e\xe0\x10\xd3\xa8\xf5\x3e\x9d\x37\xdb\x55\xd7\ +\x44\x68\xe3\xa5\x1c\xb7\x3a\x1f\x1b\xae\x8e\xcc\x53\x8e\xa5\x49\ +\x52\x09\x52\x82\x76\xed\x29\xec\x90\x3b\xf2\x7b\x54\x26\xac\x5a\ +\x70\x9e\x76\xcb\x63\x50\xf4\xde\xcb\xa4\xba\x77\xad\xc4\xfb\x54\ +\x37\x6f\x33\xb5\x88\xd3\xfa\x7d\xd7\x89\x25\x96\x92\xad\xe5\xd4\ +\x8c\xf6\x28\x51\x4e\x7d\x08\x1f\x15\x68\xca\xe8\xb7\x4f\xed\xb7\ +\xf9\x1a\x0a\xe3\xa6\x6c\xb0\xec\xc2\xca\x14\xde\xa8\x93\x79\x42\ +\x27\x19\xe7\x1e\x6f\x04\xbb\xb8\x23\xd7\x1b\x76\xf9\x71\x92\x0d\ +\x50\x5f\xa4\x27\x5c\x24\xf5\x61\xdb\x3f\xd9\xf4\xf2\x34\xeb\x16\ +\xc5\xba\xf7\x86\xdc\xcf\x1c\xbc\xf2\xf6\x8f\x10\x90\xda\x30\x40\ +\x40\x03\x83\xdc\xf3\x5b\xb5\x7f\x58\xb4\xce\xba\x44\x7b\x96\xbb\ +\xe9\x6c\x4b\xc6\xa4\x66\x22\x63\x2a\xe7\x1e\xf2\xf4\x46\xde\x09\ +\xfb\xaa\x5b\x28\x49\xc9\xc9\x3c\x85\x0e\xf8\xe0\x00\x2a\xdd\x51\ +\x6d\x54\x69\x32\x5a\xe5\x8f\x43\xe9\x3f\xd1\x77\x47\xf5\x12\xe3\ +\xa2\x60\xdf\x2f\x92\x67\xcc\xb6\x2c\x3d\x21\x48\x69\x6a\x53\xf2\ +\x30\xea\xc2\x7e\xf9\x42\x23\xed\x48\xed\xe7\xcf\x38\x15\x28\x83\ +\xd2\xad\x1f\xac\x2f\x9d\x19\xd4\x56\x9b\x04\x28\x96\x4b\xc4\x17\ +\x5d\xbf\x32\xde\x43\x45\xd8\xed\x85\xa8\x2b\x9e\xc5\x61\x68\xe3\ +\x1d\xaa\x8f\xbe\xf5\x44\xdd\x3a\x03\xa7\x7a\x52\x6c\x49\x65\x36\ +\x6b\x8a\xe7\x7e\xb2\x13\x37\x78\xdb\x95\x21\x5b\x3c\x2d\x83\x6f\ +\xfb\xa3\xbe\xe3\xf7\x7b\x73\xc5\xb3\xa2\xba\x88\xd6\x81\xfd\x16\ +\xae\x96\x3b\x86\xa6\xd3\x13\xa6\xcf\x88\xb4\x58\x22\xdb\xa7\x7d\ +\xa6\x74\x63\x29\x27\xc5\x0f\x20\x7f\x51\xe1\x85\x93\xcf\xef\x6e\ +\x1c\xf1\x91\x58\x89\x66\x5a\xf3\x6c\x40\xe6\x95\xd2\x3d\x47\xe8\ +\x85\xea\xf1\xa3\xb4\xe4\x1b\x7d\xea\x06\xb1\x4c\x46\x56\xc2\x15\ +\xbc\xc3\x90\xf0\x43\x09\x23\x3c\x81\xe3\xa0\x76\xcf\xec\xc9\xa9\ +\xee\xb7\xe8\xde\x80\xbb\x75\x0f\xa7\x3f\xd1\x0b\x2c\x66\xad\x08\ +\xbd\xcd\xb5\xdf\x5a\x19\xda\xea\xe2\x82\xb5\x25\xce\x4e\x32\x18\ +\x74\x77\xe7\x70\xed\x54\x3f\xe8\xef\xd6\x77\xba\x49\x22\xf2\x55\ +\xa7\x13\xa8\x22\x5c\xc3\x05\x51\xd5\x33\xc0\xf0\xdc\x65\x4a\x52\ +\x16\x0f\x86\xbc\x9f\x31\xf4\x1e\x87\x3c\x53\x9f\x4f\x7f\x48\x3b\ +\xce\x93\xd0\x9a\x9f\x4e\xbf\x63\x45\xc6\x6d\xea\x54\xa9\xac\x5c\ +\x15\x2c\xb6\x60\xbf\x21\xa2\x85\xad\x28\x28\x56\xee\x49\x56\x37\ +\x0e\xe7\xde\x84\xe3\xcc\x24\xa7\xc8\xb4\xf4\x9d\xef\x4d\x46\xfd\ +\x15\xba\xad\x7b\x89\xa6\x60\xce\xd3\xe8\xd6\x2a\x54\x2b\x5a\x9c\ +\x5a\x18\x53\x5e\x24\x14\xb0\x14\x50\x42\xb0\x3c\x8a\x20\x1e\x70\ +\x47\xad\x25\xbf\xf4\x43\x44\xea\x3e\xae\xf4\xd1\x16\xeb\x67\xea\ +\x5b\x56\xa5\xb2\xaa\xe7\x74\x83\x19\xd5\x14\x0f\x0d\xb4\x2c\xa5\ +\xb2\x4e\x46\xe2\xb4\xa4\xe3\x1c\x02\x47\x35\x49\xd8\x7a\x9e\x6d\ +\x1d\x01\xd4\x3d\x28\x36\x10\xf0\xbd\x5c\x51\x3b\xf5\x8f\xdb\x36\ +\x96\x76\xaa\x39\xd9\xe1\x6c\x3b\xbf\xdc\xfd\xf7\x0f\xbd\xdb\x8e\ +\x64\x37\xaf\xd2\x12\xf0\xf5\xf3\x40\x5e\xec\x96\x26\x6d\xb3\x34\ +\x74\x03\x08\x78\xd2\xbc\x74\x4d\x42\x9b\x43\x6a\xdc\x90\x84\x14\ +\x02\x12\x78\x04\xe3\x3d\xf8\xa9\xcc\x88\x70\x92\x64\xcf\xac\x3d\ +\x3e\xd2\x4a\xe9\x0e\xa3\xbc\x8d\x2d\xa7\xf4\x86\xa0\xb1\xdd\x36\ +\xdb\x58\xb7\xde\x5b\x92\xb9\xd0\xb7\xa1\x19\x71\x21\xd5\xf9\xc0\ +\x51\x51\xcf\x9b\xc9\xd8\x64\xd2\xae\xb6\xe8\x2d\x0d\x6c\xd6\xba\ +\x63\xa7\xba\x77\x47\x43\x89\x3f\x59\xa2\x0a\xdc\xba\x97\xd7\x9b\ +\x7a\x4b\xa8\x42\xbc\x16\xf3\xb4\x64\x21\x65\x44\xe4\x9d\xff\x00\ +\x02\xa9\xae\xa3\x6b\x4d\x0b\xaa\xa3\xce\x93\x68\xe9\x7b\x76\x0b\ +\xd4\xe7\xfc\x77\xa7\xb7\x7b\x75\xf4\x25\x65\x5b\x97\xb1\x92\x84\ +\xa5\x21\x47\x3c\x12\x40\x07\x8e\xc2\x9c\x7a\xc1\xd6\x39\xda\xef\ +\x58\xe9\xad\x51\x6f\xb3\x7e\xa1\x9b\xa7\xa3\x32\xd4\x62\x25\xfd\ +\xa3\x2e\x34\xe1\x71\x2e\x7d\xc4\xe3\x9c\x71\x83\xdb\xbd\x0d\xa0\ +\x50\x95\x91\x7b\x6b\x4e\x92\x68\x36\xa1\xeb\x5d\x2c\xe6\x93\xb1\ +\x69\xf8\xd6\x7b\x6a\x5d\xd3\xf7\xaf\xd7\x68\x5c\xd9\x72\x12\xd6\ +\xe5\x07\x5a\x2e\x95\x79\x95\xc6\x14\x90\x31\xdb\xd3\x1c\x69\xb4\ +\x0c\x1c\x0e\x7f\x8d\x5b\xbd\x44\xea\xa6\x91\xd7\x6b\x9d\x79\xbc\ +\xf4\xa2\x30\xd5\x93\x62\xf8\x4e\xdd\x63\xde\x9f\x6d\x90\xe8\x6f\ +\x62\x5e\xfb\x38\x4e\x37\x27\xca\x70\x56\x41\xda\x33\x9e\x73\x1c\ +\xd7\x5a\xee\x0e\xa5\xd0\xda\x57\x4d\xb1\xa3\xed\x56\x77\xac\x2c\ +\x29\x97\x6e\x11\x87\xed\x66\x92\x00\xdc\xae\x06\x32\x46\xe3\x92\ +\xac\xa8\x92\x31\x9c\x54\x49\xae\x45\xa1\x19\x25\xaa\x20\xb9\x52\ +\x7e\xe6\x73\x8f\x53\x58\xad\x41\x5c\xe3\x3f\x5a\xd8\x1b\xe3\xd3\ +\x93\x41\x4a\x02\xbd\xaa\xb7\x43\x1c\x59\xe5\xae\x03\xb7\x3b\xc4\ +\x2b\x6b\x40\x97\x65\x48\x6d\x84\x00\x39\x2a\x5a\x82\x47\xf1\x34\ +\x55\xf5\xfa\x14\x74\xda\x46\xae\xea\x9c\x7d\x4d\x29\x8f\xff\x00\ +\x45\xd3\xcb\x12\x16\xb2\x38\x72\x40\x1f\xb2\x40\xe3\x9c\x1f\x39\ +\xfa\x0f\x7a\x29\xb1\xd8\xcb\x53\x47\x62\x4f\xa7\x54\x55\x66\x8e\ +\x91\xd8\x6e\xff\x00\xf2\x34\xe4\x3b\x0a\xed\x1a\x2b\x87\x2e\x83\ +\xbb\xbe\x7f\x2f\xc9\xc3\xfd\x27\xfe\xfc\xbf\x27\x17\x2b\x9a\xf1\ +\x27\x1c\x57\x69\x51\x55\xfd\x0b\xff\x00\x4f\x2f\xc9\x1f\xa4\x7f\ +\xdf\x97\xe4\xe2\xd3\xea\x3d\x28\x90\x71\x08\x8f\x73\x5d\xa5\x45\ +\x1f\xa1\x7f\xe9\xe5\xf9\x0f\xd2\x7f\xef\xcb\xf2\x70\xfa\x4e\x07\ +\x35\xb1\xa0\x54\xad\xc7\xb0\xae\xdc\xa2\xaf\xfa\x2f\xfd\xf9\x7e\ +\x43\xf4\x8f\xfb\xf2\xfc\x9c\x5c\xca\xb6\xf0\x06\x4d\x6d\x71\x59\ +\x50\x1e\xb5\xd9\x94\x55\x1f\x40\xdd\xdf\x89\xe5\xf9\x27\xf4\x9f\ +\xfb\xf2\xfc\x9c\x64\xd9\xda\xb3\x5a\x26\x2f\x83\x9e\x31\x5d\xa9\ +\x45\x0b\xa0\xac\xef\xc4\xf2\xfc\x87\xe9\x3f\xf7\xe5\xf9\x3e\x77\ +\x6b\xa9\xdf\x63\xb6\xca\x92\x14\x01\x6d\xb3\x8f\xa9\xe0\x7f\x3a\ +\xa1\x11\x95\x3a\xa5\x7a\xe7\xd6\xbe\xc6\x51\x5d\x4c\x2e\x11\x61\ +\xe2\xd5\xef\x73\xa1\x84\xa0\xb0\xea\xd7\xb9\xf1\xec\x82\x71\x80\ +\x73\xf4\xaf\x12\x15\xef\xc5\x7d\x85\xa2\xb4\x64\x37\xf1\xb5\xbd\ +\x8f\x8f\x67\x8c\x1c\x63\x3c\xf3\x5e\x82\x08\xef\xe6\xaf\xb0\x74\ +\x51\x90\x38\xfd\xc7\xc7\xac\x71\x40\x49\xc5\x7d\x85\xa2\xa7\x20\ +\x71\xbb\x8f\x8f\x84\x64\x70\x70\x6b\xd0\x09\x1c\x02\x7d\x39\x3e\ +\x95\xf6\x0a\x8a\x8e\x19\x3c\x7e\xe3\xe3\xee\x14\x08\x0a\x38\x03\ +\xd7\x15\xe8\x27\x80\x08\xaf\xb0\x34\x51\xc3\x27\xda\x3b\x8f\x90\ +\x18\x24\x7d\xd0\x4d\x79\xb4\xfb\x1f\x73\xe9\x5f\x60\x28\xa8\xe1\ +\xf7\x83\xc4\x27\xc8\xf8\xff\x00\xb4\x15\x77\xfc\xeb\xcc\x6d\x00\ +\x03\x8c\x73\x8a\xfb\x03\x45\x4f\x0f\xbc\x3d\xa3\xb8\xf8\xfc\x8c\ +\x9c\x11\xc1\xf9\x15\xe8\xc2\x95\xc2\x52\x33\x5f\x60\x28\xa3\x86\ +\x0b\x11\x6e\x47\xc8\x15\x0c\x63\x90\x4f\xf6\xab\xc2\x93\xff\x00\ +\x2b\x8e\xfe\xb5\xf5\xfe\x8a\x8e\x1f\x79\x2f\x13\x7e\x47\xc8\x21\ +\xbb\x1b\x4f\x6f\x7c\xf6\xa3\x82\x0a\x47\xf0\x3d\xeb\xeb\xed\x14\ +\x70\xbb\xc3\xda\x7b\x8f\x90\x24\x01\x94\x9c\xfb\xf3\xef\x5e\xe5\ +\x58\x20\x13\x8a\xfa\xfb\x45\x1c\x3e\xf0\xf6\x9e\xe3\xe4\x0a\x54\ +\x40\xe1\x47\xbf\x3c\x56\x1b\x95\x93\xc7\x7f\x5e\x6b\xec\x0d\x14\ +\x70\xc3\xda\x7b\x8f\x8f\xe0\x10\xac\xf6\x3d\xfb\x77\xaf\x54\xae\ +\x30\x09\xcf\xc8\xaf\xaf\xf4\x51\xc3\xef\x0f\x69\xee\x3e\x3f\x61\ +\x4a\xf5\xc7\xcd\x03\x68\xce\x72\x4e\x6b\xec\x0d\x15\x3c\x3e\xf2\ +\x3d\xa3\xb8\xf9\x00\x79\x1d\xf1\x9e\xc6\xb1\x52\x94\x7d\x41\x15\ +\xf6\x06\x8a\x38\x60\xf1\x17\xe4\x7c\x7d\xff\x00\xaa\x6b\xd0\x94\ +\x93\x9f\x7e\x3d\xeb\xec\x0d\x14\x70\xfb\xc8\xf6\x8e\xe3\xe4\x07\ +\x38\xe0\x8f\xf2\xac\x52\x3c\xb9\x38\xc5\x7d\x81\xa2\x8e\x19\x2f\ +\x11\xdc\x7c\x7f\x1c\x64\x0c\x8c\x77\x19\xc5\x62\xa7\x01\xc2\x73\ +\xc7\xd2\xbe\xc1\x51\x47\x0c\x87\x88\x7d\x87\xc8\x5b\x7c\x1b\x95\ +\xcd\xf0\xc5\xb2\x0c\xb9\xce\x13\xe5\x4c\x76\x14\xe1\x27\xe8\x33\ +\x57\x8f\x48\x7f\x45\xcd\x7b\xab\xe6\x33\x2f\x53\x46\x77\x4b\xd9\ +\xb2\x0a\xd7\x24\x62\x4b\x89\xe3\x84\x35\xdc\x64\x1e\xea\xc7\xd0\ +\xd7\xd0\x9a\x2a\x54\x12\x2b\x2a\xcd\xa1\x8b\x41\xe9\x2b\x0e\x88\ +\xd2\xf1\x34\xe6\x9b\x82\x98\x76\xf8\xc3\xca\x91\xca\x96\xa3\xdd\ +\x6b\x3f\xbc\xa3\xea\x68\xa7\xda\x2a\xe2\x42\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x0f\xff\xd9\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x0b\ +\x08\x01\x81\xe7\ +\x00\x65\ +\x00\x78\x00\x61\x00\x6d\x00\x70\x00\x6c\x00\x65\x00\x2e\x00\x6a\x00\x70\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\ +\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() diff --git a/examples/effects/README b/examples/effects/README new file mode 100644 index 0000000..d187394 --- /dev/null +++ b/examples/effects/README @@ -0,0 +1,25 @@ +PyQt supports a number of graphics effects including blurring, drop shadows, +opacity and colorizing. + +These examples demonstrate these different effects. + + +The example launcher provided with PyQt can be used to explore each of the +examples in this directory. + +Documentation for these examples can be found via the Tutorial and Examples +link in the main Qt documentation. + + +Finding the PyQt Examples and Demos launcher +============================================ + +On Windows: + +The launcher can be accessed via the Windows Start menu. Select the menu +entry entitled "Examples and Demos" entry in the submenu containing PyQt5. + +On all platforms: + +The source code for the launcher can be found in the examples/demos/qtdemo +directory in the PyQt package. diff --git a/examples/effects/lighting.py b/examples/effects/lighting.py new file mode 100644 index 0000000..8a7debd --- /dev/null +++ b/examples/effects/lighting.py @@ -0,0 +1,149 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import math + +from PyQt5.QtCore import QPointF, Qt, QTimer +from PyQt5.QtGui import (QBrush, QColor, QLinearGradient, QPen, QPainter, + QPixmap, QRadialGradient) +from PyQt5.QtWidgets import (QApplication, QFrame, QGraphicsDropShadowEffect, + QGraphicsEllipseItem, QGraphicsRectItem, QGraphicsScene, QGraphicsView) + + +class Lighting(QGraphicsView): + def __init__(self, parent=None): + super(Lighting, self).__init__(parent) + + self.angle = 0.0 + self.m_scene = QGraphicsScene() + self.m_lightSource = None + self.m_items = [] + + self.setScene(self.m_scene) + + self.setupScene() + + timer = QTimer(self) + timer.timeout.connect(self.animate) + timer.setInterval(30) + timer.start() + + self.setRenderHint(QPainter.Antialiasing) + self.setFrameStyle(QFrame.NoFrame) + + def setupScene(self): + self.m_scene.setSceneRect(-300, -200, 600, 460) + + linearGrad = QLinearGradient(QPointF(-100, -100), QPointF(100, 100)) + linearGrad.setColorAt(0, QColor(255, 255, 255)) + linearGrad.setColorAt(1, QColor(192, 192, 255)) + self.setBackgroundBrush(linearGrad) + + radialGrad = QRadialGradient(30, 30, 30) + radialGrad.setColorAt(0, Qt.yellow) + radialGrad.setColorAt(0.2, Qt.yellow) + radialGrad.setColorAt(1, Qt.transparent) + + pixmap = QPixmap(60, 60) + pixmap.fill(Qt.transparent) + + painter = QPainter(pixmap) + painter.setPen(Qt.NoPen) + painter.setBrush(radialGrad) + painter.drawEllipse(0, 0, 60, 60) + painter.end() + + self.m_lightSource = self.m_scene.addPixmap(pixmap) + self.m_lightSource.setZValue(2) + + for i in range(-2, 3): + for j in range(-2, 3): + if (i + j) & 1: + item = QGraphicsEllipseItem(0, 0, 50, 50) + else: + item = QGraphicsRectItem(0, 0, 50, 50) + + item.setPen(QPen(Qt.black, 1)) + item.setBrush(QBrush(Qt.white)) + + effect = QGraphicsDropShadowEffect(self) + effect.setBlurRadius(8) + item.setGraphicsEffect(effect) + item.setZValue(1) + item.setPos(i * 80, j * 80) + self.m_scene.addItem(item) + self.m_items.append(item) + + def animate(self): + self.angle += (math.pi / 30) + xs = 200 * math.sin(self.angle) - 40 + 25 + ys = 200 * math.cos(self.angle) - 40 + 25 + self.m_lightSource.setPos(xs, ys) + + for item in self.m_items: + effect = item.graphicsEffect() + + delta = QPointF(item.x() - xs, item.y() - ys) + effect.setOffset(QPointF(delta.toPoint() / 30)) + + dd = math.hypot(delta.x(), delta.y()) + color = effect.color() + color.setAlphaF(max(0.4, min(1 - dd / 200.0, 0.7))) + effect.setColor(color) + + self.m_scene.update() + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + lighting = Lighting() + lighting.setWindowTitle("Lighting and Shadows") + lighting.resize(640, 480) + lighting.show() + + sys.exit(app.exec_()) diff --git a/examples/graphicsview/README b/examples/graphicsview/README new file mode 100644 index 0000000..d8baccd --- /dev/null +++ b/examples/graphicsview/README @@ -0,0 +1,26 @@ +PyQt is provided with a comprehensive canvas through the GraphicsView +classes. + +These examples demonstrate the fundamental aspects of canvas programming +with PyQt. + + +The example launcher provided with PyQt can be used to explore each of the +examples in this directory. + +Documentation for these examples can be found via the Tutorial and Examples +link in the main Qt documentation. + + +Finding the PyQt Examples and Demos launcher +============================================ + +On Windows: + +The launcher can be accessed via the Windows Start menu. Select the menu +entry entitled "Examples and Demos" entry in the submenu containing PyQt5. + +On all platforms: + +The source code for the launcher can be found in the examples/demos/qtdemo +directory in the PyQt package. diff --git a/examples/graphicsview/anchorlayout.py b/examples/graphicsview/anchorlayout.py new file mode 100755 index 0000000..b7b6ae3 --- /dev/null +++ b/examples/graphicsview/anchorlayout.py @@ -0,0 +1,130 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QSizeF, Qt +from PyQt5.QtWidgets import (QApplication, QGraphicsAnchorLayout, + QGraphicsProxyWidget, QGraphicsScene, QGraphicsView, QGraphicsWidget, + QPushButton, QSizePolicy) + + +def createItem(minimum, preferred, maximum, name): + w = QGraphicsProxyWidget() + + w.setWidget(QPushButton(name)) + w.setMinimumSize(minimum) + w.setPreferredSize(preferred) + w.setMaximumSize(maximum) + w.setSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred) + + return w + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + scene = QGraphicsScene() + scene.setSceneRect(0, 0, 800, 480) + + minSize = QSizeF(30, 100) + prefSize = QSizeF(210, 100) + maxSize = QSizeF(300, 100) + + a = createItem(minSize, prefSize, maxSize, "A") + b = createItem(minSize, prefSize, maxSize, "B") + c = createItem(minSize, prefSize, maxSize, "C") + d = createItem(minSize, prefSize, maxSize, "D") + e = createItem(minSize, prefSize, maxSize, "E") + f = createItem(QSizeF(30, 50), QSizeF(150, 50), maxSize, "F") + g = createItem(QSizeF(30, 50), QSizeF(30, 100), maxSize, "G") + + l = QGraphicsAnchorLayout() + l.setSpacing(0) + + w = QGraphicsWidget(None, Qt.Window) + w.setPos(20, 20) + w.setLayout(l) + + # Vertical. + l.addAnchor(a, Qt.AnchorTop, l, Qt.AnchorTop) + l.addAnchor(b, Qt.AnchorTop, l, Qt.AnchorTop) + + l.addAnchor(c, Qt.AnchorTop, a, Qt.AnchorBottom) + l.addAnchor(c, Qt.AnchorTop, b, Qt.AnchorBottom) + l.addAnchor(c, Qt.AnchorBottom, d, Qt.AnchorTop) + l.addAnchor(c, Qt.AnchorBottom, e, Qt.AnchorTop) + + l.addAnchor(d, Qt.AnchorBottom, l, Qt.AnchorBottom) + l.addAnchor(e, Qt.AnchorBottom, l, Qt.AnchorBottom) + + l.addAnchor(c, Qt.AnchorTop, f, Qt.AnchorTop) + l.addAnchor(c, Qt.AnchorVerticalCenter, f, Qt.AnchorBottom) + l.addAnchor(f, Qt.AnchorBottom, g, Qt.AnchorTop) + l.addAnchor(c, Qt.AnchorBottom, g, Qt.AnchorBottom) + + # Horizontal. + l.addAnchor(l, Qt.AnchorLeft, a, Qt.AnchorLeft) + l.addAnchor(l, Qt.AnchorLeft, d, Qt.AnchorLeft) + l.addAnchor(a, Qt.AnchorRight, b, Qt.AnchorLeft) + + l.addAnchor(a, Qt.AnchorRight, c, Qt.AnchorLeft) + l.addAnchor(c, Qt.AnchorRight, e, Qt.AnchorLeft) + + l.addAnchor(b, Qt.AnchorRight, l, Qt.AnchorRight) + l.addAnchor(e, Qt.AnchorRight, l, Qt.AnchorRight) + l.addAnchor(d, Qt.AnchorRight, e, Qt.AnchorLeft) + + l.addAnchor(l, Qt.AnchorLeft, f, Qt.AnchorLeft) + l.addAnchor(l, Qt.AnchorLeft, g, Qt.AnchorLeft) + l.addAnchor(f, Qt.AnchorRight, g, Qt.AnchorRight) + + scene.addItem(w) + scene.setBackgroundBrush(Qt.darkGreen) + + view = QGraphicsView(scene) + view.show() + + sys.exit(app.exec_()) diff --git a/examples/graphicsview/collidingmice/collidingmice.py b/examples/graphicsview/collidingmice/collidingmice.py new file mode 100755 index 0000000..bc783c7 --- /dev/null +++ b/examples/graphicsview/collidingmice/collidingmice.py @@ -0,0 +1,221 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import math + +from PyQt5.QtCore import (qAbs, QLineF, QPointF, QRectF, qrand, qsrand, Qt, + QTime, QTimer) +from PyQt5.QtGui import (QBrush, QColor, QPainter, QPainterPath, QPixmap, + QPolygonF) +from PyQt5.QtWidgets import (QApplication, QGraphicsItem, QGraphicsScene, + QGraphicsView, QGraphicsWidget) + +import mice_rc + + +class Mouse(QGraphicsItem): + Pi = math.pi + TwoPi = 2.0 * Pi + + # Create the bounding rectangle once. + adjust = 0.5 + BoundingRect = QRectF(-20 - adjust, -22 - adjust, 40 + adjust, 83 + adjust) + + def __init__(self): + super(Mouse, self).__init__() + + self.angle = 0.0 + self.speed = 0.0 + self.mouseEyeDirection = 0.0 + self.color = QColor(qrand() % 256, qrand() % 256, qrand() % 256) + + self.setRotation(qrand() % (360 * 16)) + + # In the C++ version of this example, this class is also derived from + # QObject in order to receive timer events. PyQt does not support + # deriving from more than one wrapped class so we just create an + # explicit timer instead. + self.timer = QTimer() + self.timer.timeout.connect(self.timerEvent) + self.timer.start(1000 / 33) + + @staticmethod + def normalizeAngle(angle): + while angle < 0: + angle += Mouse.TwoPi + while angle > Mouse.TwoPi: + angle -= Mouse.TwoPi + return angle + + def boundingRect(self): + return Mouse.BoundingRect + + def shape(self): + path = QPainterPath() + path.addRect(-10, -20, 20, 40) + return path; + + def paint(self, painter, option, widget): + # Body. + painter.setBrush(self.color) + painter.drawEllipse(-10, -20, 20, 40) + + # Eyes. + painter.setBrush(Qt.white) + painter.drawEllipse(-10, -17, 8, 8) + painter.drawEllipse(2, -17, 8, 8) + + # Nose. + painter.setBrush(Qt.black) + painter.drawEllipse(QRectF(-2, -22, 4, 4)) + + # Pupils. + painter.drawEllipse(QRectF(-8.0 + self.mouseEyeDirection, -17, 4, 4)) + painter.drawEllipse(QRectF(4.0 + self.mouseEyeDirection, -17, 4, 4)) + + # Ears. + if self.scene().collidingItems(self): + painter.setBrush(Qt.red) + else: + painter.setBrush(Qt.darkYellow) + + painter.drawEllipse(-17, -12, 16, 16) + painter.drawEllipse(1, -12, 16, 16) + + # Tail. + path = QPainterPath(QPointF(0, 20)) + path.cubicTo(-5, 22, -5, 22, 0, 25) + path.cubicTo(5, 27, 5, 32, 0, 30) + path.cubicTo(-5, 32, -5, 42, 0, 35) + painter.setBrush(Qt.NoBrush) + painter.drawPath(path) + + def timerEvent(self): + # Don't move too far away. + lineToCenter = QLineF(QPointF(0, 0), self.mapFromScene(0, 0)) + if lineToCenter.length() > 150: + angleToCenter = math.acos(lineToCenter.dx() / lineToCenter.length()) + if lineToCenter.dy() < 0: + angleToCenter = Mouse.TwoPi - angleToCenter; + angleToCenter = Mouse.normalizeAngle((Mouse.Pi - angleToCenter) + Mouse.Pi / 2) + + if angleToCenter < Mouse.Pi and angleToCenter > Mouse.Pi / 4: + # Rotate left. + self.angle += [-0.25, 0.25][self.angle < -Mouse.Pi / 2] + elif angleToCenter >= Mouse.Pi and angleToCenter < (Mouse.Pi + Mouse.Pi / 2 + Mouse.Pi / 4): + # Rotate right. + self.angle += [-0.25, 0.25][self.angle < Mouse.Pi / 2] + elif math.sin(self.angle) < 0: + self.angle += 0.25 + elif math.sin(self.angle) > 0: + self.angle -= 0.25 + + # Try not to crash with any other mice. + dangerMice = self.scene().items(QPolygonF([self.mapToScene(0, 0), + self.mapToScene(-30, -50), + self.mapToScene(30, -50)])) + + for item in dangerMice: + if item is self: + continue + + lineToMouse = QLineF(QPointF(0, 0), self.mapFromItem(item, 0, 0)) + angleToMouse = math.acos(lineToMouse.dx() / lineToMouse.length()) + if lineToMouse.dy() < 0: + angleToMouse = Mouse.TwoPi - angleToMouse + angleToMouse = Mouse.normalizeAngle((Mouse.Pi - angleToMouse) + Mouse.Pi / 2) + + if angleToMouse >= 0 and angleToMouse < Mouse.Pi / 2: + # Rotate right. + self.angle += 0.5 + elif angleToMouse <= Mouse.TwoPi and angleToMouse > (Mouse.TwoPi - Mouse.Pi / 2): + # Rotate left. + self.angle -= 0.5 + + # Add some random movement. + if len(dangerMice) > 1 and (qrand() % 10) == 0: + if qrand() % 1: + self.angle += (qrand() % 100) / 500.0 + else: + self.angle -= (qrand() % 100) / 500.0 + + self.speed += (-50 + qrand() % 100) / 100.0 + + dx = math.sin(self.angle) * 10 + self.mouseEyeDirection = 0.0 if qAbs(dx / 5) < 1 else dx / 5 + + self.setRotation(self.rotation() + dx) + self.setPos(self.mapToParent(0, -(3 + math.sin(self.speed) * 3))) + + +if __name__ == '__main__': + + import sys + + MouseCount = 7 + + app = QApplication(sys.argv) + qsrand(QTime(0,0,0).secsTo(QTime.currentTime())) + + scene = QGraphicsScene() + scene.setSceneRect(-300, -300, 600, 600) + scene.setItemIndexMethod(QGraphicsScene.NoIndex) + + for i in range(MouseCount): + mouse = Mouse() + mouse.setPos(math.sin((i * 6.28) / MouseCount) * 200, + math.cos((i * 6.28) / MouseCount) * 200) + scene.addItem(mouse) + + view = QGraphicsView(scene) + view.setRenderHint(QPainter.Antialiasing) + view.setBackgroundBrush(QBrush(QPixmap(':/images/cheese.jpg'))) + view.setCacheMode(QGraphicsView.CacheBackground) + view.setViewportUpdateMode(QGraphicsView.BoundingRectViewportUpdate) + view.setDragMode(QGraphicsView.ScrollHandDrag) + view.setWindowTitle("Colliding Mice") + view.resize(400, 300) + view.show() + + sys.exit(app.exec_()) diff --git a/examples/graphicsview/collidingmice/images/cheese.jpg b/examples/graphicsview/collidingmice/images/cheese.jpg new file mode 100644 index 0000000000000000000000000000000000000000..dea5795fd0b7a4dfa46bf7274d068885d700914e GIT binary patch literal 3029 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 Vi6{N-mmDs<0OvLl=N>_s`3L5NTuJ}{ literal 0 HcmV?d00001 diff --git a/examples/graphicsview/collidingmice/mice.qrc b/examples/graphicsview/collidingmice/mice.qrc new file mode 100644 index 0000000..accdb4d --- /dev/null +++ b/examples/graphicsview/collidingmice/mice.qrc @@ -0,0 +1,5 @@ + + + images/cheese.jpg + + diff --git a/examples/graphicsview/collidingmice/mice_rc.py b/examples/graphicsview/collidingmice/mice_rc.py new file mode 100644 index 0000000..5c128cf --- /dev/null +++ b/examples/graphicsview/collidingmice/mice_rc.py @@ -0,0 +1,230 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sun May 5 04:43:58 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x0b\xd5\ +\xff\ +\xd8\xff\xe0\x00\x10\x4a\x46\x49\x46\x00\x01\x02\x01\x00\x48\x00\ +\x48\x00\x00\xff\xee\x00\x0e\x41\x64\x6f\x62\x65\x00\x64\x40\x00\ +\x00\x00\x01\xff\xdb\x00\x84\x00\x02\x02\x02\x02\x02\x02\x02\x02\ +\x02\x02\x03\x02\x02\x02\x03\x04\x03\x02\x02\x03\x04\x05\x04\x04\ +\x04\x04\x04\x05\x06\x05\x05\x05\x05\x05\x05\x06\x06\x07\x07\x08\ +\x07\x07\x06\x09\x09\x0a\x0a\x09\x09\x0c\x0c\x0c\x0c\x0c\x0c\x0c\ +\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x01\x03\x03\x03\x05\x04\x05\x09\ +\x06\x06\x09\x0d\x0a\x09\x0a\x0d\x0f\x0e\x0e\x0e\x0e\x0f\x0f\x0c\ +\x0c\x0c\x0c\x0c\x0f\x0f\x0c\x0c\x0c\x0c\x0c\x0c\x0f\x0c\x0c\x0c\ +\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\ +\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\x0c\xff\xc0\x00\x11\x08\x00\x5e\ +\x00\x5e\x03\x01\x11\x00\x02\x11\x01\x03\x11\x01\xff\xdd\x00\x04\ +\x00\x0c\xff\xc4\x01\xa2\x00\x00\x00\x07\x01\x01\x01\x01\x01\x00\ +\x00\x00\x00\x00\x00\x00\x00\x04\x05\x03\x02\x06\x01\x00\x07\x08\ +\x09\x0a\x0b\x01\x00\x02\x02\x03\x01\x01\x01\x01\x01\x00\x00\x00\ +\x00\x00\x00\x00\x01\x00\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\ +\x10\x00\x02\x01\x03\x03\x02\x04\x02\x06\x07\x03\x04\x02\x06\x02\ +\x73\x01\x02\x03\x11\x04\x00\x05\x21\x12\x31\x41\x51\x06\x13\x61\ +\x22\x71\x81\x14\x32\x91\xa1\x07\x15\xb1\x42\x23\xc1\x52\xd1\xe1\ +\x33\x16\x62\xf0\x24\x72\x82\xf1\x25\x43\x34\x53\x92\xa2\xb2\x63\ +\x73\xc2\x35\x44\x27\x93\xa3\xb3\x36\x17\x54\x64\x74\xc3\xd2\xe2\ +\x08\x26\x83\x09\x0a\x18\x19\x84\x94\x45\x46\xa4\xb4\x56\xd3\x55\ +\x28\x1a\xf2\xe3\xf3\xc4\xd4\xe4\xf4\x65\x75\x85\x95\xa5\xb5\xc5\ +\xd5\xe5\xf5\x66\x76\x86\x96\xa6\xb6\xc6\xd6\xe6\xf6\x37\x47\x57\ +\x67\x77\x87\x97\xa7\xb7\xc7\xd7\xe7\xf7\x38\x48\x58\x68\x78\x88\ +\x98\xa8\xb8\xc8\xd8\xe8\xf8\x29\x39\x49\x59\x69\x79\x89\x99\xa9\ +\xb9\xc9\xd9\xe9\xf9\x2a\x3a\x4a\x5a\x6a\x7a\x8a\x9a\xaa\xba\xca\ +\xda\xea\xfa\x11\x00\x02\x02\x01\x02\x03\x05\x05\x04\x05\x06\x04\ +\x08\x03\x03\x6d\x01\x00\x02\x11\x03\x04\x21\x12\x31\x41\x05\x51\ +\x13\x61\x22\x06\x71\x81\x91\x32\xa1\xb1\xf0\x14\xc1\xd1\xe1\x23\ +\x42\x15\x52\x62\x72\xf1\x33\x24\x34\x43\x82\x16\x92\x53\x25\xa2\ +\x63\xb2\xc2\x07\x73\xd2\x35\xe2\x44\x83\x17\x54\x93\x08\x09\x0a\ +\x18\x19\x26\x36\x45\x1a\x27\x64\x74\x55\x37\xf2\xa3\xb3\xc3\x28\ +\x29\xd3\xe3\xf3\x84\x94\xa4\xb4\xc4\xd4\xe4\xf4\x65\x75\x85\x95\ +\xa5\xb5\xc5\xd5\xe5\xf5\x46\x56\x66\x76\x86\x96\xa6\xb6\xc6\xd6\ +\xe6\xf6\x47\x57\x67\x77\x87\x97\xa7\xb7\xc7\xd7\xe7\xf7\x38\x48\ +\x58\x68\x78\x88\x98\xa8\xb8\xc8\xd8\xe8\xf8\x39\x49\x59\x69\x79\ +\x89\x99\xa9\xb9\xc9\xd9\xe9\xf9\x2a\x3a\x4a\x5a\x6a\x7a\x8a\x9a\ +\xaa\xba\xca\xda\xea\xfa\xff\xda\x00\x0c\x03\x01\x00\x02\x11\x03\ +\x11\x00\x3f\x00\xfb\x41\xd3\x6f\xa2\x87\xc7\x3c\x37\x89\xe9\xd4\ +\xe9\xe2\x6b\x90\x29\x6e\xa3\x72\x4d\x0d\x0f\x8f\xf0\xc8\x82\xa5\ +\xb2\x41\x5a\x86\xfa\x46\xf9\x22\x37\x50\xa6\x63\xe5\xe2\x76\xf9\ +\x60\xe4\x95\xc1\x48\xd8\x74\x3d\x46\x0b\x56\xa4\x9a\x18\x14\x31\ +\x60\xa4\xec\x6b\xe3\x92\x1b\xa0\xac\x49\x92\x51\x1b\x02\xad\xc8\ +\x91\xb7\xea\xc2\x84\x34\xaf\xc5\x8e\xfb\x77\xc9\x81\x6c\x49\x62\ +\x3a\xaf\x9e\x3c\xbf\xa3\xcc\x6d\xee\xef\x2b\x38\x34\x68\x61\x1e\ +\xa3\x03\xfe\x55\x36\x1f\x7e\x3c\x51\x09\x11\x94\x91\xfa\x47\x9a\ +\xb4\x9d\x6e\xa9\x61\x75\xce\x50\x2a\x60\x70\x51\xe9\xec\x0f\x5f\ +\xa3\x11\x38\xc8\xd2\x0c\x65\x16\x48\x25\x3c\x5b\x7f\x0c\x4c\x37\ +\x5e\x2d\x9f\xff\xd0\xfb\x3a\xfb\x0a\xee\x4d\x6b\x4c\xf0\xb0\x1e\ +\xa1\x6f\x2d\xfa\x6e\x71\x21\x34\xb8\x11\x5e\x9b\xe4\x50\xd3\x53\ +\xa7\x8e\xe7\x25\x6a\xda\xd0\xee\x48\x03\xc7\x04\x95\x4e\x59\x12\ +\x15\x2e\xce\x02\x81\x52\x7e\x59\x00\x2d\x2f\x9c\xbf\x36\xbc\xc7\ +\xa8\x98\xa5\x5d\x1f\xce\x9a\x7e\x8f\x67\x14\x6c\xb7\x36\xf1\xd5\ +\xef\x5d\xc8\x20\x08\xe8\x0f\x1a\xd7\xae\xc4\x65\xb8\xf2\x00\x6a\ +\x89\xfb\x99\xc6\x16\x37\x67\x9f\x93\xcf\xa8\xdc\xf9\x2a\xda\xe2\ +\xfe\x49\xa6\x9d\xee\x65\x58\xee\x2e\x09\x77\x68\xd4\x2d\x0d\x4e\ +\xf5\xa9\x3d\x72\x73\x02\xb8\xbb\xda\xe5\xb4\xa9\x96\xf9\xa2\x6b\ +\x8b\x2d\x12\xfa\xea\xdc\x11\x3d\x38\x44\x47\x50\x5b\x6a\xfd\x19\ +\x5c\xe5\x51\xd9\x61\x1e\x29\x51\x7c\xdf\x17\x97\xda\xf2\x43\x35\ +\xc2\x16\x66\x35\x24\xd4\xd0\x93\x95\x44\x97\x22\x42\x99\x5e\x9b\ +\xa3\x5c\xe9\x77\x56\xd7\x56\xfc\x97\x83\x06\x53\x4e\x84\x65\x73\ +\xca\x8e\x0b\x7b\xbf\xac\x46\x9e\x2f\x3d\x3d\xcc\x3e\xa7\xa7\xef\ +\x4e\x9f\x7e\x65\xf8\x9e\x9e\x2f\x27\x13\x87\x7a\x7f\xff\xd1\xfb\ +\x3f\x4a\xed\xd4\xf6\xcf\x0b\xa7\xa8\x51\x79\x15\x3f\xd6\x3d\xb0\ +\x88\x71\x2d\xd2\x81\x9a\x84\x16\x6a\x7b\x64\xbc\x26\x06\x61\xc6\ +\x70\x4a\x91\x4a\x74\x22\x98\xf8\x74\x8e\x30\x55\xd4\x87\x07\x6e\ +\xdb\x8c\x8f\x0b\x3b\x40\xde\xda\x0b\x88\x9a\x16\x62\x12\x4a\x83\ +\xc4\xd1\xa8\x7c\x0e\xf9\x20\x05\xee\xac\x15\xbf\x2b\x7c\xb5\x3d\ +\xe0\xbb\x9e\x59\x1b\xe2\xe4\xc8\x62\x42\xff\x00\x21\x25\x4f\xdf\ +\xc7\x2c\x88\xc5\xd6\xfd\xcc\xbc\x49\x8e\x54\xf4\x6b\x2b\x5b\x2d\ +\x3a\xd6\x1b\x2b\x0b\x65\xb6\xb4\x80\x11\x1c\x29\xfe\x51\xab\x13\ +\xee\x4e\xe7\x21\x96\x7c\x67\x95\x00\xc0\x0e\xa7\x9a\xdd\x4e\xca\ +\x3d\x4e\xc2\xe6\xcd\xb6\x12\x80\x50\x9e\xcc\x37\x15\xca\xc4\x44\ +\xbd\x27\xab\x21\x23\x13\x61\x85\x69\xbe\x5c\x92\xdd\xbd\x3b\x8b\ +\x76\x4a\x1d\xd5\xc6\xff\x00\xdb\x98\xd9\x23\x2c\x47\x84\xb9\x3c\ +\x42\x7b\xb2\xdf\xd0\x29\x38\x58\x91\x15\x55\x57\x76\x3f\x65\x47\ +\x72\x4f\xb6\x47\x06\x9a\x59\x32\xd0\x3b\x75\x3d\xc1\xae\x79\xc4\ +\x42\x61\xe9\xdb\x95\x16\xf4\xff\x00\x47\x54\xf4\xf9\x53\xf6\x69\ +\xc7\x95\x3f\x1c\xd8\xdc\x38\xab\xf8\x7f\x43\x8b\x52\xab\xea\xff\ +\x00\xff\xd2\xfb\x3e\x0f\x2d\x80\xa9\xcf\x0a\xb7\xa8\x4a\x2f\xe7\ +\x8e\xda\x39\xee\x66\x71\x1c\x50\x21\x79\x1c\xf4\x01\x45\x49\x39\ +\x7c\x48\x02\xcb\x59\xb2\x68\x3e\x52\xf3\x27\xe6\x7f\x9a\xf5\x4b\ +\xe9\x62\xd0\x49\xd3\x6c\x51\x88\x8d\xd2\x9e\xab\x81\xdd\x9c\x83\ +\xd7\xc0\x65\x3e\x29\x9f\x5a\x72\x23\x86\x31\xe7\xba\x71\xe5\x5f\ +\x3e\x79\xa2\xd6\xee\x08\xf5\x8b\x87\xbe\xb5\x94\x81\x22\x4c\x01\ +\x60\x0f\x52\xac\x05\x76\xf7\xc8\x1c\x86\x06\xed\x12\xc4\x25\xc8\ +\x53\xe9\x9b\x49\x96\x45\x8a\x68\xdb\x9c\x52\x85\x64\x61\xd0\xa9\ +\x1b\x66\x41\x20\x8b\x0e\x3c\x6c\x1a\x4c\x4d\x08\x3b\x74\x39\x53\ +\x6a\xd0\xb4\xad\x0d\x3d\xb0\x5a\xb7\xb8\x20\x56\x83\x1b\x55\xe2\ +\x4e\x3d\x45\x6a\x30\x91\x6a\xa1\x15\xed\xd4\x44\x8a\x2c\xb1\x8f\ +\xb0\x8e\xa1\xa9\xf2\xae\xf9\x31\x9a\x63\x6d\x8f\xbc\x02\xd6\x60\ +\x3d\xcb\xa4\xbc\xbc\xb9\xf8\x5d\xb8\x45\xfc\x8a\x02\x83\xf3\x00\ +\x63\x3c\xb2\x90\xa3\xb0\xee\x00\x01\xf6\x2c\x71\x81\xc9\xc6\x36\ +\xe2\x14\x1d\x89\xf8\xbe\xef\xeb\x95\x58\x6c\xa7\xff\xd3\xfb\x3c\ +\xa4\x0e\x9b\x30\xf0\xcf\x07\xb7\xa9\x48\xfc\xc9\x66\xf7\xbe\x5f\ +\xd6\xe0\x88\x16\x96\x58\x1b\x8a\x8e\xa4\x0a\x13\xf8\x64\xc8\x33\ +\x89\x01\x61\xb4\xc1\x2f\x9e\x34\x6f\x29\x2b\x86\x01\x0a\x90\x76\ +\x04\x6f\x53\x98\xd0\x90\xe4\x79\xb9\x99\x3c\x99\xef\xf8\x20\x08\ +\x22\x67\x00\x48\xa7\x96\xc3\x31\x67\x9a\xe7\xc3\xd1\x63\x10\x05\ +\xbd\x3f\x46\xb2\x7b\x4d\x26\xc6\x19\x3e\xd8\x5a\xa8\x3d\x81\x35\ +\x19\xb5\x84\x0c\x31\x80\x7b\x9d\x7c\x88\x33\x34\x9b\x00\x6a\x7a\ +\xef\x4e\x4d\xef\xed\x90\x3c\x99\x86\xb8\x35\x09\x00\x91\x5a\x57\ +\xb7\xcb\x10\x0f\x35\xb5\x8c\xac\x0d\x6b\x81\x2d\xa9\xad\x01\xf0\ +\x39\x24\x2e\xe3\x4e\x84\x0f\x0e\xf8\x15\x7d\x48\x1e\x07\x25\x41\ +\x5d\xc8\xd4\xf8\xf8\xd7\x23\x4a\xff\x00\xff\xd4\xfb\x43\xc9\x29\ +\xd8\x1c\xf0\x7a\x7a\x85\x1e\x7f\x1f\x7a\x74\x20\xf4\xc9\xc4\xf0\ +\x9b\x1c\xd4\x8b\x4b\xad\xb4\x7d\x14\x4e\xed\x0c\xbf\x55\x94\xb1\ +\x66\x8e\x5a\x94\xff\x00\x60\xc0\x7e\x07\x27\x9b\x06\x3c\xfb\xc6\ +\x5c\x27\xb8\xdd\x7c\x08\xfd\x2b\x1c\xd2\x86\xc4\x5a\x7f\x27\xe8\ +\xab\x60\xbe\xa4\xab\x78\xca\x28\x21\x8c\x1a\x13\xdb\x93\x35\x36\ +\xc4\x69\xf1\x42\x62\x52\x90\xc9\x5d\x22\x0e\xfe\xf2\x40\x6a\xf1\ +\x72\x4f\x90\xaf\x34\x2a\xb3\xdc\xb9\x9d\xf8\xaa\xb1\x3c\x40\xd8\ +\x7c\x80\xf0\x18\x72\xe4\x96\x42\x65\x2e\x65\x94\x00\x88\xa0\xaa\ +\x40\x3f\x3e\x94\xca\x3a\x33\x73\x31\x20\x06\xdc\x2e\xca\xb5\xfd\ +\x58\x6c\xf5\x45\x21\xdc\x6f\xb0\x26\xa7\x14\xac\x0a\x7a\xd7\xe5\ +\x8a\x55\x14\x13\xd0\xf6\xeb\x8d\xa1\x7d\x09\x34\x1d\xf0\xda\xb8\ +\xc4\x79\xaa\x72\x52\x4f\x5d\xf6\x1f\x4f\x4c\x3c\x3b\xd5\xa3\x89\ +\xff\xd5\xfb\x38\xc0\xd6\xa3\xae\x78\x5d\xbd\x42\x93\x47\x5e\x84\ +\xd7\xb9\xc4\x2a\x80\xb7\x5d\xd9\xb6\x35\xdb\xc4\xe2\x00\x28\x56\ +\x48\xa0\x5f\x89\xba\xf8\x9d\xf2\x44\x1e\x8c\x78\x82\x36\xaa\x63\ +\xa2\x80\x05\x36\x23\x23\xcd\x92\x9f\xa8\x54\x7c\x40\x9d\xfa\xe2\ +\x60\x96\xea\x5c\xf1\x14\x1f\x3d\xce\x42\x92\xba\xaa\x2a\xa4\xd7\ +\xdf\x0f\x0a\x16\x54\x03\x4a\x54\x7b\x63\x4a\xbb\x9d\x77\x51\xb7\ +\x6c\x95\x2a\xe0\x6b\xfe\x4b\x78\x64\x24\x15\xdb\xd4\x6f\xf4\x60\ +\x57\xff\xd6\xfb\x3d\x51\xd7\x7f\x96\x78\x53\xd4\x2f\x24\x71\x24\ +\x6c\x69\xd3\x01\xd9\x52\x8d\x6e\x4b\x8b\x7d\x1b\x51\xbb\xb3\xa1\ +\xba\x86\x12\x6d\xc1\x1b\x06\x62\x00\x34\xf6\xad\x72\x32\x91\x11\ +\x24\x26\x31\x12\x90\x05\xe2\xba\x66\x87\xe6\x68\xee\x06\xaa\x35\ +\x3b\xc9\xae\x39\x09\x24\x32\x48\xc5\x18\x1e\xa2\x84\xd2\x9e\xd8\ +\x80\x40\x07\xab\x74\xa2\x39\x3d\xe2\xd4\xb9\x86\x27\x91\x78\x34\ +\x88\xae\xc9\xe0\x58\x54\x8c\xc8\xc9\xb5\x17\x16\x2a\xc6\x87\xae\ +\xf4\x34\xca\xec\xb3\x52\x63\xc7\x7a\x6e\x7b\xe2\x16\xd4\x4c\xbd\ +\x87\x5c\xb0\x06\x04\xb4\x26\x00\xd0\xb6\xfe\x03\x1e\x04\x71\xaf\ +\xf5\x96\x94\xaf\xd1\x80\xc1\x22\x6a\xab\x29\x24\x50\x8e\xbb\xe4\ +\x08\xa6\x56\xa6\x25\x23\x9a\x92\x79\x12\x29\x91\xa5\x7f\xff\xd7\ +\xfb\x3b\xd0\x50\x1a\x0f\xc7\x3c\x2a\xde\xa1\x50\x50\xfb\xf5\xc4\ +\xab\xa4\x55\x28\x41\x5e\x4a\xc0\x86\x53\xd0\x82\x28\x41\xc6\x04\ +\x83\x61\x05\x0f\x6e\xf6\xd1\x47\xe9\xc3\x61\x46\xaf\xd9\x67\xe4\ +\x83\xe8\xa5\x4f\xdf\x99\x7e\x2e\x21\xbf\x0e\xfe\xfd\xbf\x1f\x16\ +\x24\x4c\xf5\x54\x53\x23\x33\x99\x00\x24\xb6\xd4\x1e\xd9\x8b\x93\ +\x27\x19\xbe\xac\x80\xa6\x85\x6a\x46\xd5\x34\x60\xbd\xc7\xcf\x01\ +\xe4\x94\x35\xc1\x22\x83\xb9\xe9\x92\xc7\xbb\x19\x30\x2f\x38\xf9\ +\xc2\xc7\xca\x76\x42\x7b\xa0\xd3\x5c\x4b\x51\x6d\x6a\x86\x8d\x21\ +\x1d\x6a\x7f\x65\x45\x7a\xe5\xb2\x98\x80\xf3\x63\x08\x19\x97\xcf\ +\xf2\xfe\x73\xf9\xa6\xe6\xea\x96\x91\x43\x6b\x6b\x5f\x86\x31\x0f\ +\x30\x07\xbb\x31\xa9\xca\x8c\xe6\x7a\xb7\x8c\x31\x0f\x52\xf2\x6f\ +\xe6\x3c\xfa\xc4\xf1\x58\xea\xf0\xa4\x72\xcc\x42\xc5\x73\x10\x2a\ +\x39\x1e\x81\x94\x93\x4a\xf8\x8c\x11\xcc\x41\xa9\x35\xcf\x10\xab\ +\x0f\x64\x8d\x8a\xb0\x27\xa5\x77\x19\x74\xe3\xb3\x54\x64\x8d\xf4\ +\x96\xb5\xed\x4e\x99\x8e\xdc\xff\x00\xff\xd0\xfb\x34\xca\xdb\x1e\ +\xfd\xc6\x78\x43\xd4\xb6\x8c\x41\x5a\x91\xd6\xa7\x24\x82\xa8\x4f\ +\x26\x00\x12\x40\xaf\xb0\xdb\x02\xaf\xf8\x54\x6f\x40\x72\x2a\xb4\ +\x02\xcd\x55\x0d\x41\xd4\xf8\x7b\xe2\x02\x57\x15\xa7\x41\xd7\xae\ +\x1e\x88\x43\xbc\x6d\x2b\x2d\x0d\x46\xe3\x6c\xb3\x19\x63\x37\xcb\ +\xbf\x99\xb6\x37\x3a\x8f\x9a\x65\x88\x82\xd6\xd6\xa1\x62\x44\xeb\ +\x40\x00\x3f\x89\x39\x8b\x92\x77\x37\x37\x0c\x00\xc6\x12\x4b\x1f\ +\x2c\x8a\x46\x1a\x1d\x9b\x75\xf0\xcb\x2c\xc4\x30\x20\x5b\x21\x87\ +\xcb\x32\x59\xdc\x45\x3c\x51\xb2\x0d\x89\xa7\x6a\x66\x2c\xf3\x71\ +\x36\x08\x3e\x85\xd2\x7d\x5b\x8d\x2e\xd2\x69\x7f\xbd\x31\x81\x21\ +\xf1\x23\xbe\x6c\x71\x4a\xf1\x82\x5d\x7c\xc5\x4a\x93\x7e\x27\xd3\ +\xfa\x32\xbe\xad\x8f\xff\xd1\xfb\x39\x2d\x06\xfc\x4e\x78\x43\xd4\ +\x30\x2f\x32\x6b\x5e\x65\xb0\xd4\xf4\xfb\x2d\x0b\x46\x8b\x51\x8a\ +\x78\xda\x7b\xb9\xa6\x76\x50\x15\x5b\x8f\x08\xf8\xfe\xd6\xd5\xa9\ +\xf6\xc6\x79\x04\x06\xec\xa3\x8c\xcb\xab\x3f\xb5\x76\x78\x91\x9d\ +\x0a\x3d\x01\x74\x3d\x41\x22\xb4\x3e\xe3\x24\x46\xec\x02\xb9\x41\ +\xb9\x1d\x70\x14\xb6\xa0\x70\x55\x0c\x76\xdf\x7f\xd7\x86\x90\xef\ +\x87\xa7\x8f\x51\x80\xec\x97\x72\xe2\x00\x34\xc3\x19\x20\x87\x99\ +\x79\xc3\xcb\x6b\x75\xa8\x26\xab\x14\x6c\xde\xb5\x04\xe5\x77\x2a\ +\xe0\x01\x53\xec\x72\x59\xf4\xfc\x51\xe3\x8f\xc7\xcb\xf6\x16\xec\ +\x19\xab\xd2\x51\x5a\x46\x86\x84\xa7\xab\x0e\xe2\x82\x94\xa8\xda\ +\x9e\x1f\x2c\xc0\xe3\x32\x3c\x37\xbb\x71\xa1\xbb\x27\x6d\x01\xae\ +\x5c\x45\x14\x7c\x98\xec\x06\xd4\x1f\x4f\x86\x43\x49\xa3\x9e\x4c\ +\xfc\x11\xde\xcf\xf6\xb0\xc9\xa9\x88\x8d\x94\xcf\xd2\x8a\x08\xe2\ +\xb4\x82\x8f\x1d\xba\x88\xc3\xff\x00\x37\x11\xc4\x9f\xa6\x99\xb8\ +\xcd\xc1\x13\xc3\x0e\x43\x6f\x96\xdf\x6f\x37\x06\x16\x77\x3d\x55\ +\x39\x1a\xd3\x8f\x4d\xa9\x98\xf6\xdd\x4f\xff\xd2\xfb\x3c\x69\xc8\ +\xf5\x23\xbe\x78\x4e\xcf\x50\xd0\xe4\x5c\x7a\x5e\xa2\xb5\x0e\xc9\ +\xe1\xf4\x54\xe4\xa3\x7d\x11\x2a\xea\xbd\x00\xe3\x50\x41\xf6\xc8\ +\xa5\x78\xe7\xe1\x51\xf4\x62\x50\xb8\xd6\x83\xae\x05\x51\x25\xb9\ +\x8a\x83\xf3\xed\x85\x2b\x8f\x2a\x0c\x21\x0e\x53\x74\x18\x9b\x55\ +\xe4\xc3\xed\x03\x4e\x05\x7b\xf2\xe5\xb5\x3e\x79\x93\xa7\x39\x2f\ +\xd1\xf1\xee\xf8\xf4\x61\x3e\x1a\xdd\x5e\xda\xea\xdc\x90\x65\xd3\ +\x14\x4c\x2b\xc8\x24\xd4\x42\x7c\x77\xe4\x47\xdf\x95\x9c\xda\x7e\ +\x2b\x9e\x3b\x3b\xdd\x48\x81\xfa\x7e\xc2\x89\x47\x2d\x7d\x5b\x7b\ +\x95\x27\x9f\x50\x96\x29\xbe\xa9\x64\x96\xd6\xe1\x7f\x7d\xe9\xba\ +\xbb\xf1\xef\x53\xca\xb4\xf1\xa0\xc9\xe3\x99\x9c\x25\xe1\x44\x46\ +\x35\xbd\x6f\x2a\xeb\x77\xbf\xbe\x80\x0d\x62\x20\x11\xc4\x49\x3e\ +\x69\x64\x03\xe2\x1c\x8f\xc5\xe1\x94\x1a\xa7\x21\x19\xf0\xd4\x65\ +\x69\x7f\xff\xd9\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x0a\ +\x0c\x9d\x6c\x07\ +\x00\x63\ +\x00\x68\x00\x65\x00\x65\x00\x73\x00\x65\x00\x2e\x00\x6a\x00\x70\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\ +\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() diff --git a/examples/graphicsview/diagramscene/diagramscene.py b/examples/graphicsview/diagramscene/diagramscene.py new file mode 100755 index 0000000..32c0c73 --- /dev/null +++ b/examples/graphicsview/diagramscene/diagramscene.py @@ -0,0 +1,832 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import math + +from PyQt5.QtCore import (pyqtSignal, QLineF, QPointF, QRect, QRectF, QSize, + QSizeF, Qt) +from PyQt5.QtGui import (QBrush, QColor, QFont, QIcon, QIntValidator, QPainter, + QPainterPath, QPen, QPixmap, QPolygonF) +from PyQt5.QtWidgets import (QAction, QApplication, QButtonGroup, QComboBox, + QFontComboBox, QGraphicsItem, QGraphicsLineItem, QGraphicsPolygonItem, + QGraphicsScene, QGraphicsTextItem, QGraphicsView, QGridLayout, + QHBoxLayout, QLabel, QMainWindow, QMenu, QMessageBox, QSizePolicy, + QToolBox, QToolButton, QWidget) + +import diagramscene_rc + + +class Arrow(QGraphicsLineItem): + def __init__(self, startItem, endItem, parent=None, scene=None): + super(Arrow, self).__init__(parent, scene) + + self.arrowHead = QPolygonF() + + self.myStartItem = startItem + self.myEndItem = endItem + self.setFlag(QGraphicsItem.ItemIsSelectable, True) + self.myColor = Qt.black + self.setPen(QPen(self.myColor, 2, Qt.SolidLine, Qt.RoundCap, + Qt.RoundJoin)) + + def setColor(self, color): + self.myColor = color + + def startItem(self): + return self.myStartItem + + def endItem(self): + return self.myEndItem + + def boundingRect(self): + extra = (self.pen().width() + 20) / 2.0 + p1 = self.line().p1() + p2 = self.line().p2() + return QRectF(p1, QSizeF(p2.x() - p1.x(), p2.y() - p1.y())).normalized().adjusted(-extra, -extra, extra, extra) + + def shape(self): + path = super(Arrow, self).shape() + path.addPolygon(self.arrowHead) + return path + + def updatePosition(self): + line = QLineF(self.mapFromItem(self.myStartItem, 0, 0), self.mapFromItem(self.myEndItem, 0, 0)) + self.setLine(line) + + def paint(self, painter, option, widget=None): + if (self.myStartItem.collidesWithItem(self.myEndItem)): + return + + myStartItem = self.myStartItem + myEndItem = self.myEndItem + myColor = self.myColor + myPen = self.pen() + myPen.setColor(self.myColor) + arrowSize = 20.0 + painter.setPen(myPen) + painter.setBrush(self.myColor) + + centerLine = QLineF(myStartItem.pos(), myEndItem.pos()) + endPolygon = myEndItem.polygon() + p1 = endPolygon.first() + myEndItem.pos() + + intersectPoint = QPointF() + for i in endPolygon: + p2 = i + myEndItem.pos() + polyLine = QLineF(p1, p2) + intersectType = polyLine.intersect(centerLine, intersectPoint) + if intersectType == QLineF.BoundedIntersection: + break + p1 = p2 + + self.setLine(QLineF(intersectPoint, myStartItem.pos())) + line = self.line() + + angle = math.acos(line.dx() / line.length()) + if line.dy() >= 0: + angle = (math.pi * 2.0) - angle + + arrowP1 = line.p1() + QPointF(math.sin(angle + math.pi / 3.0) * arrowSize, + math.cos(angle + math.pi / 3) * arrowSize) + arrowP2 = line.p1() + QPointF(math.sin(angle + math.pi - math.pi / 3.0) * arrowSize, + math.cos(angle + math.pi - math.pi / 3.0) * arrowSize) + + self.arrowHead.clear() + for point in [line.p1(), arrowP1, arrowP2]: + self.arrowHead.append(point) + + painter.drawLine(line) + painter.drawPolygon(self.arrowHead) + if self.isSelected(): + painter.setPen(QPen(myColor, 1, Qt.DashLine)) + myLine = QLineF(line) + myLine.translate(0, 4.0) + painter.drawLine(myLine) + myLine.translate(0,-8.0) + painter.drawLine(myLine) + + +class DiagramTextItem(QGraphicsTextItem): + lostFocus = pyqtSignal(QGraphicsTextItem) + + selectedChange = pyqtSignal(QGraphicsItem) + + def __init__(self, parent=None, scene=None): + super(DiagramTextItem, self).__init__(parent, scene) + + self.setFlag(QGraphicsItem.ItemIsMovable) + self.setFlag(QGraphicsItem.ItemIsSelectable) + + def itemChange(self, change, value): + if change == QGraphicsItem.ItemSelectedChange: + self.selectedChange.emit(self) + return value + + def focusOutEvent(self, event): + self.setTextInteractionFlags(Qt.NoTextInteraction) + self.lostFocus.emit(self) + super(DiagramTextItem, self).focusOutEvent(event) + + def mouseDoubleClickEvent(self, event): + if self.textInteractionFlags() == Qt.NoTextInteraction: + self.setTextInteractionFlags(Qt.TextEditorInteraction) + super(DiagramTextItem, self).mouseDoubleClickEvent(event) + + +class DiagramItem(QGraphicsPolygonItem): + Step, Conditional, StartEnd, Io = range(4) + + def __init__(self, diagramType, contextMenu, parent=None): + super(DiagramItem, self).__init__(parent) + + self.arrows = [] + + self.diagramType = diagramType + self.contextMenu = contextMenu + + path = QPainterPath() + if self.diagramType == self.StartEnd: + path.moveTo(200, 50) + path.arcTo(150, 0, 50, 50, 0, 90) + path.arcTo(50, 0, 50, 50, 90, 90) + path.arcTo(50, 50, 50, 50, 180, 90) + path.arcTo(150, 50, 50, 50, 270, 90) + path.lineTo(200, 25) + self.myPolygon = path.toFillPolygon() + elif self.diagramType == self.Conditional: + self.myPolygon = QPolygonF([ + QPointF(-100, 0), QPointF(0, 100), + QPointF(100, 0), QPointF(0, -100), + QPointF(-100, 0)]) + elif self.diagramType == self.Step: + self.myPolygon = QPolygonF([ + QPointF(-100, -100), QPointF(100, -100), + QPointF(100, 100), QPointF(-100, 100), + QPointF(-100, -100)]) + else: + self.myPolygon = QPolygonF([ + QPointF(-120, -80), QPointF(-70, 80), + QPointF(120, 80), QPointF(70, -80), + QPointF(-120, -80)]) + + self.setPolygon(self.myPolygon) + self.setFlag(QGraphicsItem.ItemIsMovable, True) + self.setFlag(QGraphicsItem.ItemIsSelectable, True) + + def removeArrow(self, arrow): + try: + self.arrows.remove(arrow) + except ValueError: + pass + + def removeArrows(self): + for arrow in self.arrows[:]: + arrow.startItem().removeArrow(arrow) + arrow.endItem().removeArrow(arrow) + self.scene().removeItem(arrow) + + def addArrow(self, arrow): + self.arrows.append(arrow) + + def image(self): + pixmap = QPixmap(250, 250) + pixmap.fill(Qt.transparent) + painter = QPainter(pixmap) + painter.setPen(QPen(Qt.black, 8)) + painter.translate(125, 125) + painter.drawPolyline(self.myPolygon) + return pixmap + + def contextMenuEvent(self, event): + self.scene().clearSelection() + self.setSelected(True) + self.myContextMenu.exec_(event.screenPos()) + + def itemChange(self, change, value): + if change == QGraphicsItem.ItemPositionChange: + for arrow in self.arrows: + arrow.updatePosition() + + return value + + +class DiagramScene(QGraphicsScene): + InsertItem, InsertLine, InsertText, MoveItem = range(4) + + itemInserted = pyqtSignal(DiagramItem) + + textInserted = pyqtSignal(QGraphicsTextItem) + + itemSelected = pyqtSignal(QGraphicsItem) + + def __init__(self, itemMenu, parent=None): + super(DiagramScene, self).__init__(parent) + + self.myItemMenu = itemMenu + self.myMode = self.MoveItem + self.myItemType = DiagramItem.Step + self.line = None + self.textItem = None + self.myItemColor = Qt.white + self.myTextColor = Qt.black + self.myLineColor = Qt.black + self.myFont = QFont() + + def setLineColor(self, color): + self.myLineColor = color + if self.isItemChange(Arrow): + item = self.selectedItems()[0] + item.setColor(self.myLineColor) + self.update() + + def setTextColor(self, color): + self.myTextColor = color + if self.isItemChange(DiagramTextItem): + item = self.selectedItems()[0] + item.setDefaultTextColor(self.myTextColor) + + def setItemColor(self, color): + self.myItemColor = color + if self.isItemChange(DiagramItem): + item = self.selectedItems()[0] + item.setBrush(self.myItemColor) + + def setFont(self, font): + self.myFont = font + if self.isItemChange(DiagramTextItem): + item = self.selectedItems()[0] + item.setFont(self.myFont) + + def setMode(self, mode): + self.myMode = mode + + def setItemType(self, type): + self.myItemType = type + + def editorLostFocus(self, item): + cursor = item.textCursor() + cursor.clearSelection() + item.setTextCursor(cursor) + + if item.toPlainText(): + self.removeItem(item) + item.deleteLater() + + def mousePressEvent(self, mouseEvent): + if (mouseEvent.button() != Qt.LeftButton): + return + + if self.myMode == self.InsertItem: + item = DiagramItem(self.myItemType, self.myItemMenu) + item.setBrush(self.myItemColor) + self.addItem(item) + item.setPos(mouseEvent.scenePos()) + self.itemInserted.emit(item) + elif self.myMode == self.InsertLine: + self.line = QGraphicsLineItem(QLineF(mouseEvent.scenePos(), + mouseEvent.scenePos())) + self.line.setPen(QPen(self.myLineColor, 2)) + self.addItem(self.line) + elif self.myMode == self.InsertText: + textItem = DiagramTextItem() + textItem.setFont(self.myFont) + textItem.setTextInteractionFlags(Qt.TextEditorInteraction) + textItem.setZValue(1000.0) + textItem.lostFocus.connect(self.editorLostFocus) + textItem.selectedChange.connect(self.itemSelected) + self.addItem(textItem) + textItem.setDefaultTextColor(self.myTextColor) + textItem.setPos(mouseEvent.scenePos()) + self.textInserted.emit(textItem) + + super(DiagramScene, self).mousePressEvent(mouseEvent) + + def mouseMoveEvent(self, mouseEvent): + if self.myMode == self.InsertLine and self.line: + newLine = QLineF(self.line.line().p1(), mouseEvent.scenePos()) + self.line.setLine(newLine) + elif self.myMode == self.MoveItem: + super(DiagramScene, self).mouseMoveEvent(mouseEvent) + + def mouseReleaseEvent(self, mouseEvent): + if self.line and self.myMode == self.InsertLine: + startItems = self.items(self.line.line().p1()) + if len(startItems) and startItems[0] == self.line: + startItems.pop(0) + endItems = self.items(self.line.line().p2()) + if len(endItems) and endItems[0] == self.line: + endItems.pop(0) + + self.removeItem(self.line) + self.line = None + + if len(startItems) and len(endItems) and \ + isinstance(startItems[0], DiagramItem) and \ + isinstance(endItems[0], DiagramItem) and \ + startItems[0] != endItems[0]: + startItem = startItems[0] + endItem = endItems[0] + arrow = Arrow(startItem, endItem) + arrow.setColor(self.myLineColor) + startItem.addArrow(arrow) + endItem.addArrow(arrow) + arrow.setZValue(-1000.0) + self.addItem(arrow) + arrow.updatePosition() + + self.line = None + super(DiagramScene, self).mouseReleaseEvent(mouseEvent) + + def isItemChange(self, type): + for item in self.selectedItems(): + if isinstance(item, type): + return True + return False + + +class MainWindow(QMainWindow): + InsertTextButton = 10 + + def __init__(self): + super(MainWindow, self).__init__() + + self.createActions() + self.createMenus() + self.createToolBox() + + self.scene = DiagramScene(self.itemMenu) + self.scene.setSceneRect(QRectF(0, 0, 5000, 5000)) + self.scene.itemInserted.connect(self.itemInserted) + self.scene.textInserted.connect(self.textInserted) + self.scene.itemSelected.connect(self.itemSelected) + + self.createToolbars() + + layout = QHBoxLayout() + layout.addWidget(self.toolBox) + self.view = QGraphicsView(self.scene) + layout.addWidget(self.view) + + self.widget = QWidget() + self.widget.setLayout(layout) + + self.setCentralWidget(self.widget) + self.setWindowTitle("Diagramscene") + + def backgroundButtonGroupClicked(self, button): + buttons = self.backgroundButtonGroup.buttons() + for myButton in buttons: + if myButton != button: + button.setChecked(False) + + text = button.text() + if text == "Blue Grid": + self.scene.setBackgroundBrush(QBrush(QPixmap(':/images/background1.png'))) + elif text == "White Grid": + self.scene.setBackgroundBrush(QBrush(QPixmap(':/images/background2.png'))) + elif text == "Gray Grid": + self.scene.setBackgroundBrush(QBrush(QPixmap(':/images/background3.png'))) + else: + self.scene.setBackgroundBrush(QBrush(QPixmap(':/images/background4.png'))) + + self.scene.update() + self.view.update() + + def buttonGroupClicked(self, id): + buttons = self.buttonGroup.buttons() + for button in buttons: + if self.buttonGroup.button(id) != button: + button.setChecked(False) + + if id == self.InsertTextButton: + self.scene.setMode(DiagramScene.InsertText) + else: + self.scene.setItemType(id) + self.scene.setMode(DiagramScene.InsertItem) + + def deleteItem(self): + for item in self.scene.selectedItems(): + if isinstance(item, DiagramItem): + item.removeArrows() + self.scene.removeItem(item) + + def pointerGroupClicked(self, i): + self.scene.setMode(self.pointerTypeGroup.checkedId()) + + def bringToFront(self): + if not self.scene.selectedItems(): + return + + selectedItem = self.scene.selectedItems()[0] + overlapItems = selectedItem.collidingItems() + + zValue = 0 + for item in overlapItems: + if (item.zValue() >= zValue and isinstance(item, DiagramItem)): + zValue = item.zValue() + 0.1 + selectedItem.setZValue(zValue) + + def sendToBack(self): + if not self.scene.selectedItems(): + return + + selectedItem = self.scene.selectedItems()[0] + overlapItems = selectedItem.collidingItems() + + zValue = 0 + for item in overlapItems: + if (item.zValue() <= zValue and isinstance(item, DiagramItem)): + zValue = item.zValue() - 0.1 + selectedItem.setZValue(zValue) + + def itemInserted(self, item): + self.pointerTypeGroup.button(DiagramScene.MoveItem).setChecked(True) + self.scene.setMode(self.pointerTypeGroup.checkedId()) + self.buttonGroup.button(item.diagramType).setChecked(False) + + def textInserted(self, item): + self.buttonGroup.button(self.InsertTextButton).setChecked(False) + self.scene.setMode(self.pointerTypeGroup.checkedId()) + + def currentFontChanged(self, font): + self.handleFontChange() + + def fontSizeChanged(self, font): + self.handleFontChange() + + def sceneScaleChanged(self, scale): + newScale = scale.left(scale.indexOf("%")).toDouble()[0] / 100.0 + oldMatrix = self.view.matrix() + self.view.resetMatrix() + self.view.translate(oldMatrix.dx(), oldMatrix.dy()) + self.view.scale(newScale, newScale) + + def textColorChanged(self): + self.textAction = self.sender() + self.fontColorToolButton.setIcon( + self.createColorToolButtonIcon(':/images/textpointer.png', + QColor(self.textAction.data()))) + self.textButtonTriggered() + + def itemColorChanged(self): + self.fillAction = self.sender() + self.fillColorToolButton.setIcon( + self.createColorToolButtonIcon( ':/images/floodfill.png', + QColor(self.fillAction.data()))) + self.fillButtonTriggered() + + def lineColorChanged(self): + self.lineAction = self.sender() + self.lineColorToolButton.setIcon( + self.createColorToolButtonIcon(':/images/linecolor.png', + QColor(self.lineAction.data()))) + self.lineButtonTriggered() + + def textButtonTriggered(self): + self.scene.setTextColor(QColor(self.textAction.data())) + + def fillButtonTriggered(self): + self.scene.setItemColor(QColor(self.fillAction.data())) + + def lineButtonTriggered(self): + self.scene.setLineColor(QColor(self.lineAction.data())) + + def handleFontChange(self): + font = self.fontCombo.currentFont() + font.setPointSize(self.fontSizeCombo.currentText().toInt()[0]) + if self.boldAction.isChecked(): + font.setWeight(QFont.Bold) + else: + font.setWeight(QFont.Normal) + font.setItalic(self.italicAction.isChecked()) + font.setUnderline(self.underlineAction.isChecked()) + + self.scene.setFont(font) + + def itemSelected(self, item): + font = item.font() + color = item.defaultTextColor() + self.fontCombo.setCurrentFont(font) + self.fontSizeCombo.setEditText(str(font.pointSize())) + self.boldAction.setChecked(font.weight() == QFont.Bold) + self.italicAction.setChecked(font.italic()) + self.underlineAction.setChecked(font.underline()) + + def about(self): + QMessageBox.about(self, "About Diagram Scene", + "The Diagram Scene example shows use of the graphics framework.") + + def createToolBox(self): + self.buttonGroup = QButtonGroup() + self.buttonGroup.setExclusive(False) + self.buttonGroup.buttonClicked[int].connect(self.buttonGroupClicked) + + layout = QGridLayout() + layout.addWidget(self.createCellWidget("Conditional", DiagramItem.Conditional), + 0, 0) + layout.addWidget(self.createCellWidget("Process", DiagramItem.Step), 0, + 1) + layout.addWidget(self.createCellWidget("Input/Output", DiagramItem.Io), + 1, 0) + + textButton = QToolButton() + textButton.setCheckable(True) + self.buttonGroup.addButton(textButton, self.InsertTextButton) + textButton.setIcon(QIcon(QPixmap(':/images/textpointer.png').scaled(30, 30))) + textButton.setIconSize(QSize(50, 50)) + + textLayout = QGridLayout() + textLayout.addWidget(textButton, 0, 0, Qt.AlignHCenter) + textLayout.addWidget(QLabel("Text"), 1, 0, Qt.AlignCenter) + textWidget = QWidget() + textWidget.setLayout(textLayout) + layout.addWidget(textWidget, 1, 1) + + layout.setRowStretch(3, 10) + layout.setColumnStretch(2, 10) + + itemWidget = QWidget() + itemWidget.setLayout(layout) + + self.backgroundButtonGroup = QButtonGroup() + self.backgroundButtonGroup.buttonClicked.connect(self.backgroundButtonGroupClicked) + + backgroundLayout = QGridLayout() + backgroundLayout.addWidget(self.createBackgroundCellWidget("Blue Grid", + ':/images/background1.png'), 0, 0) + backgroundLayout.addWidget(self.createBackgroundCellWidget("White Grid", + ':/images/background2.png'), 0, 1) + backgroundLayout.addWidget(self.createBackgroundCellWidget("Gray Grid", + ':/images/background3.png'), 1, 0) + backgroundLayout.addWidget(self.createBackgroundCellWidget("No Grid", + ':/images/background4.png'), 1, 1) + + backgroundLayout.setRowStretch(2, 10) + backgroundLayout.setColumnStretch(2, 10) + + backgroundWidget = QWidget() + backgroundWidget.setLayout(backgroundLayout) + + self.toolBox = QToolBox() + self.toolBox.setSizePolicy(QSizePolicy(QSizePolicy.Maximum, QSizePolicy.Ignored)) + self.toolBox.setMinimumWidth(itemWidget.sizeHint().width()) + self.toolBox.addItem(itemWidget, "Basic Flowchart Shapes") + self.toolBox.addItem(backgroundWidget, "Backgrounds") + + def createActions(self): + self.toFrontAction = QAction( + QIcon(':/images/bringtofront.png'), "Bring to &Front", + self, shortcut="Ctrl+F", statusTip="Bring item to front", + triggered=self.bringToFront) + + self.sendBackAction = QAction( + QIcon(':/images/sendtoback.png'), "Send to &Back", self, + shortcut="Ctrl+B", statusTip="Send item to back", + triggered=self.sendToBack) + + self.deleteAction = QAction(QIcon(':/images/delete.png'), + "&Delete", self, shortcut="Delete", + statusTip="Delete item from diagram", + triggered=self.deleteItem) + + self.exitAction = QAction("E&xit", self, shortcut="Ctrl+X", + statusTip="Quit Scenediagram example", triggered=self.close) + + self.boldAction = QAction(QIcon(':/images/bold.png'), + "Bold", self, checkable=True, shortcut="Ctrl+B", + triggered=self.handleFontChange) + + self.italicAction = QAction(QIcon(':/images/italic.png'), + "Italic", self, checkable=True, shortcut="Ctrl+I", + triggered=self.handleFontChange) + + self.underlineAction = QAction( + QIcon(':/images/underline.png'), "Underline", self, + checkable=True, shortcut="Ctrl+U", + triggered=self.handleFontChange) + + self.aboutAction = QAction("A&bout", self, shortcut="Ctrl+B", + triggered=self.about) + + def createMenus(self): + self.fileMenu = self.menuBar().addMenu("&File") + self.fileMenu.addAction(self.exitAction) + + self.itemMenu = self.menuBar().addMenu("&Item") + self.itemMenu.addAction(self.deleteAction) + self.itemMenu.addSeparator() + self.itemMenu.addAction(self.toFrontAction) + self.itemMenu.addAction(self.sendBackAction) + + self.aboutMenu = self.menuBar().addMenu("&Help") + self.aboutMenu.addAction(self.aboutAction) + + def createToolbars(self): + self.editToolBar = self.addToolBar("Edit") + self.editToolBar.addAction(self.deleteAction) + self.editToolBar.addAction(self.toFrontAction) + self.editToolBar.addAction(self.sendBackAction) + + self.fontCombo = QFontComboBox() + self.fontCombo.currentFontChanged.connect(self.currentFontChanged) + + self.fontSizeCombo = QComboBox() + self.fontSizeCombo.setEditable(True) + for i in range(8, 30, 2): + self.fontSizeCombo.addItem(str(i)) + validator = QIntValidator(2, 64, self) + self.fontSizeCombo.setValidator(validator) + self.fontSizeCombo.currentIndexChanged.connect(self.fontSizeChanged) + + self.fontColorToolButton = QToolButton() + self.fontColorToolButton.setPopupMode(QToolButton.MenuButtonPopup) + self.fontColorToolButton.setMenu( + self.createColorMenu(self.textColorChanged, Qt.black)) + self.textAction = self.fontColorToolButton.menu().defaultAction() + self.fontColorToolButton.setIcon( + self.createColorToolButtonIcon(':/images/textpointer.png', + Qt.black)) + self.fontColorToolButton.setAutoFillBackground(True) + self.fontColorToolButton.clicked.connect(self.textButtonTriggered) + + self.fillColorToolButton = QToolButton() + self.fillColorToolButton.setPopupMode(QToolButton.MenuButtonPopup) + self.fillColorToolButton.setMenu( + self.createColorMenu(self.itemColorChanged, Qt.white)) + self.fillAction = self.fillColorToolButton.menu().defaultAction() + self.fillColorToolButton.setIcon( + self.createColorToolButtonIcon(':/images/floodfill.png', + Qt.white)) + self.fillColorToolButton.clicked.connect(self.fillButtonTriggered) + + self.lineColorToolButton = QToolButton() + self.lineColorToolButton.setPopupMode(QToolButton.MenuButtonPopup) + self.lineColorToolButton.setMenu( + self.createColorMenu(self.lineColorChanged, Qt.black)) + self.lineAction = self.lineColorToolButton.menu().defaultAction() + self.lineColorToolButton.setIcon( + self.createColorToolButtonIcon(':/images/linecolor.png', + Qt.black)) + self.lineColorToolButton.clicked.connect(self.lineButtonTriggered) + + self.textToolBar = self.addToolBar("Font") + self.textToolBar.addWidget(self.fontCombo) + self.textToolBar.addWidget(self.fontSizeCombo) + self.textToolBar.addAction(self.boldAction) + self.textToolBar.addAction(self.italicAction) + self.textToolBar.addAction(self.underlineAction) + + self.colorToolBar = self.addToolBar("Color") + self.colorToolBar.addWidget(self.fontColorToolButton) + self.colorToolBar.addWidget(self.fillColorToolButton) + self.colorToolBar.addWidget(self.lineColorToolButton) + + pointerButton = QToolButton() + pointerButton.setCheckable(True) + pointerButton.setChecked(True) + pointerButton.setIcon(QIcon(':/images/pointer.png')) + linePointerButton = QToolButton() + linePointerButton.setCheckable(True) + linePointerButton.setIcon(QIcon(':/images/linepointer.png')) + + self.pointerTypeGroup = QButtonGroup() + self.pointerTypeGroup.addButton(pointerButton, DiagramScene.MoveItem) + self.pointerTypeGroup.addButton(linePointerButton, + DiagramScene.InsertLine) + self.pointerTypeGroup.buttonClicked[int].connect(self.pointerGroupClicked) + + self.sceneScaleCombo = QComboBox() + self.sceneScaleCombo.addItems(["50%", "75%", "100%", "125%", "150%"]) + self.sceneScaleCombo.setCurrentIndex(2) + self.sceneScaleCombo.currentIndexChanged[str].connect(self.sceneScaleChanged) + + self.pointerToolbar = self.addToolBar("Pointer type") + self.pointerToolbar.addWidget(pointerButton) + self.pointerToolbar.addWidget(linePointerButton) + self.pointerToolbar.addWidget(self.sceneScaleCombo) + + def createBackgroundCellWidget(self, text, image): + button = QToolButton() + button.setText(text) + button.setIcon(QIcon(image)) + button.setIconSize(QSize(50, 50)) + button.setCheckable(True) + self.backgroundButtonGroup.addButton(button) + + layout = QGridLayout() + layout.addWidget(button, 0, 0, Qt.AlignHCenter) + layout.addWidget(QLabel(text), 1, 0, Qt.AlignCenter) + + widget = QWidget() + widget.setLayout(layout) + + return widget + + def createCellWidget(self, text, diagramType): + item = DiagramItem(diagramType, self.itemMenu) + icon = QIcon(item.image()) + + button = QToolButton() + button.setIcon(icon) + button.setIconSize(QSize(50, 50)) + button.setCheckable(True) + self.buttonGroup.addButton(button, diagramType) + + layout = QGridLayout() + layout.addWidget(button, 0, 0, Qt.AlignHCenter) + layout.addWidget(QLabel(text), 1, 0, Qt.AlignCenter) + + widget = QWidget() + widget.setLayout(layout) + + return widget + + def createColorMenu(self, slot, defaultColor): + colors = [Qt.black, Qt.white, Qt.red, Qt.blue, Qt.yellow] + names = ["black", "white", "red", "blue", "yellow"] + + colorMenu = QMenu(self) + for color, name in zip(colors, names): + action = QAction(self.createColorIcon(color), name, self, + triggered=slot) + action.setData(QColor(color)) + colorMenu.addAction(action) + if color == defaultColor: + colorMenu.setDefaultAction(action) + return colorMenu + + def createColorToolButtonIcon(self, imageFile, color): + pixmap = QPixmap(50, 80) + pixmap.fill(Qt.transparent) + painter = QPainter(pixmap) + image = QPixmap(imageFile) + target = QRect(0, 0, 50, 60) + source = QRect(0, 0, 42, 42) + painter.fillRect(QRect(0, 60, 50, 80), color) + painter.drawPixmap(target, image, source) + painter.end() + + return QIcon(pixmap) + + def createColorIcon(self, color): + pixmap = QPixmap(20, 20) + painter = QPainter(pixmap) + painter.setPen(Qt.NoPen) + painter.fillRect(QRect(0, 0, 20, 20), color) + painter.end() + + return QIcon(pixmap) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + mainWindow = MainWindow() + mainWindow.setGeometry(100, 100, 800, 500) + mainWindow.show() + + sys.exit(app.exec_()) diff --git a/examples/graphicsview/diagramscene/diagramscene.qrc b/examples/graphicsview/diagramscene/diagramscene.qrc new file mode 100644 index 0000000..a111584 --- /dev/null +++ b/examples/graphicsview/diagramscene/diagramscene.qrc @@ -0,0 +1,20 @@ + + + images/pointer.png + images/linepointer.png + images/textpointer.png + images/bold.png + images/italic.png + images/underline.png + images/floodfill.png + images/bringtofront.png + images/delete.png + images/sendtoback.png + images/linecolor.png + images/background1.png + images/background2.png + images/background3.png + images/background4.png + + + diff --git a/examples/graphicsview/diagramscene/diagramscene_rc.py b/examples/graphicsview/diagramscene/diagramscene_rc.py new file mode 100644 index 0000000..d3a89f6 --- /dev/null +++ b/examples/graphicsview/diagramscene/diagramscene_rc.py @@ -0,0 +1,404 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sun May 5 04:57:31 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x01\x12\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x0b\x00\x00\x00\x0d\x08\x06\x00\x00\x00\x7f\xf5\x94\x3b\ +\x00\x00\x00\xd9\x49\x44\x41\x54\x28\x53\x7d\x90\x31\x0e\x45\x40\ +\x10\x86\x47\x24\x24\x1a\x0d\x0d\xd1\x22\x51\x70\x80\x6d\x5c\x40\ +\xe7\x3c\x0e\x21\x0a\x47\x71\x19\xb5\x4e\xa9\xc1\x78\x33\xb2\x8b\ +\xf7\xec\xdb\xe4\xcb\x66\x76\xfe\xf9\x67\x76\xc0\x30\x0c\x04\x80\ +\x07\xf4\x66\x59\x16\x26\x49\x82\x9f\x03\xc4\xbe\xef\x94\x3b\x05\ +\x69\x9a\x32\x24\x08\xc3\xf0\x51\x58\xd7\x35\x17\x01\x05\x04\x55\ +\xde\x5d\xe8\x76\x1c\x87\x73\xb6\x6d\xe3\xc3\x59\x0a\xef\x44\x51\ +\xc4\xe2\x20\x08\xf4\xce\xeb\xba\x62\xdb\xb6\x6a\x94\xbe\xef\x4f\ +\xb1\x7c\x28\x8a\x82\xc9\xf3\x1c\x7d\xdf\x67\x03\x21\x04\x0e\xc3\ +\xa0\x4c\x40\xb7\x0d\xd3\x34\x59\xdc\x75\xdd\x25\xfe\x9e\x79\xdb\ +\x36\x9c\xa6\x89\x63\xd9\x21\x8e\x63\x1c\xc7\x11\xd5\xcc\x6f\x1f\ +\x24\x64\xbe\xaa\xaa\xff\xdb\x58\x96\x45\x8d\x46\x5d\x5e\xb7\x41\ +\xcc\xf3\x8c\x4d\xd3\xa0\xcc\x67\x59\x76\x39\x7b\x9e\xa7\x70\x5d\ +\xf7\xe7\xd3\xda\x6d\x48\xa8\xa8\x2c\x4b\xd5\xf1\x00\xd0\xc0\x13\ +\xc8\x06\xaf\x16\x28\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\ +\x82\ +\x00\x00\x00\xf7\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x0b\x00\x00\x00\x0c\x08\x06\x00\x00\x00\xb4\xa9\x47\x9e\ +\x00\x00\x00\xbe\x49\x44\x41\x54\x28\x53\x85\x91\x31\x0e\x40\x40\ +\x10\x45\x57\x4d\x24\x4a\x37\xa1\xa4\x91\x38\x85\x5e\x74\xaa\x3d\ +\x8a\x4e\x54\x7b\x80\xad\x75\x6e\xa0\xd1\x6c\xe7\x12\xc4\x97\x19\ +\xb1\x21\x59\x51\xfc\x62\xfe\xbc\xfc\x99\xcc\x08\x00\x82\x74\x1c\ +\x07\xa6\x69\x82\x10\xc2\x29\xcf\xf3\x2e\xf0\xd6\x38\x8e\xa8\xaa\ +\x8a\x55\x14\x05\x03\x49\x92\x58\xef\x05\x3f\xd5\x75\x1d\xc3\x5a\ +\x6b\xd0\x54\xf2\x9c\x20\x35\xeb\xba\x66\x78\x5d\x57\xdc\xfe\x67\ +\x72\x9a\xa6\x88\xe3\x18\x4f\xcf\x09\x6e\xdb\x06\xdf\xf7\x51\x96\ +\xa5\x5d\xc1\x09\x53\x73\x9e\x67\x5e\x41\x4a\xf9\x9f\x3c\x0c\x03\ +\xc3\x4a\xa9\xff\xe4\xb6\x6d\x19\x5e\x96\xe5\x3f\x39\xcf\x73\x84\ +\x61\x88\x7d\xdf\xdf\xc9\x54\x18\x63\xec\xe1\x49\x41\x10\x20\x8a\ +\x22\x5b\x37\x4d\x03\x9b\xdc\xf7\xfd\xf5\xce\x8f\x57\x67\x59\xc6\ +\x13\x4e\xfa\x57\x56\x58\xe8\x40\xda\xc6\x00\x00\x00\x00\x49\x45\ +\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x01\x3e\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\ +\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\ +\xa7\x93\x00\x00\x00\xf3\x49\x44\x41\x54\x38\xcb\xed\x94\x41\x6e\ +\x83\x30\x10\x45\x9f\x25\xe0\x0c\xbd\x43\x2f\xd0\x13\xe5\xfa\x55\ +\x62\x9b\xd8\x33\x01\x77\x81\x0d\x24\x85\xaa\x31\xca\xaa\x1d\x89\ +\x8d\x0d\x4f\xef\x7b\x06\x37\x6d\xdb\x26\x0e\x94\xaa\x9a\xad\xf5\ +\x06\x40\x44\xaa\xa0\x5d\xd7\xed\xee\x35\xbc\xa8\xfe\xc1\x7f\x01\ +\x6c\x8c\xd9\xdb\x4a\x87\x8d\x53\xda\x60\x8c\x03\x0c\x01\xf4\x0a\ +\xd2\x43\x74\x98\xb7\xf7\x83\x47\x31\x2a\x68\x81\x7a\x10\x07\xd1\ +\x1d\x3c\xe3\x41\x26\xa0\xf6\x0b\x34\x38\x88\x97\x4a\x70\x1a\x61\ +\x88\x4b\x74\xf5\x93\x65\xb4\xd3\x23\x35\xc6\x69\x80\x5b\x00\x29\ +\xd1\x3d\xa8\x83\x60\x57\x60\x5f\x01\x96\x1c\x7d\xb6\x7c\x30\x95\ +\x6a\x70\xfe\x70\x06\xba\x15\xd4\xe5\x14\x76\x01\xff\x74\xfd\xdd\ +\x55\xb8\xe4\xce\xdb\x05\x5c\x26\x41\xfd\xb2\x06\x34\x7b\x17\xf5\ +\xe6\x8f\x10\xce\xdf\xa1\xc5\x34\xe6\x89\xa8\x6a\x5e\xf8\x9c\x46\ +\x6a\xb6\x74\x10\xb3\xa9\xac\x1a\xf8\x34\xf8\x7a\xce\xa6\x16\x62\ +\x0f\x6a\xef\x1b\x58\x52\x54\x81\xa5\x98\x6e\x4c\x45\xf4\x70\xeb\ +\x9f\x07\x9b\x8f\xd3\xaf\xdf\xfd\x02\xd6\xbd\xde\xdf\x70\xdb\x04\ +\x83\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x00\x72\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x7f\x00\x00\x00\x7f\x01\x03\x00\x00\x00\xfc\x73\x8f\x50\ +\x00\x00\x00\x06\x50\x4c\x54\x45\xff\xff\xff\x00\x00\x00\x55\xc2\ +\xd3\x7e\x00\x00\x00\x27\x49\x44\x41\x54\x48\xc7\x63\x60\x80\x82\ +\x06\x06\x34\x30\x2a\x30\x2a\x30\x2a\x30\x2a\x80\x2a\xf0\x1f\x15\ +\xfc\x1b\x0d\xa0\x51\x81\x51\x81\x51\x01\x22\x05\x00\xd5\x3b\x4e\ +\xf0\x73\xe3\x6f\xe9\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\ +\x82\ +\x00\x00\x02\xf1\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x2a\x00\x00\x00\x2c\x08\x03\x00\x00\x00\x24\x44\xda\x74\ +\x00\x00\x01\x32\x50\x4c\x54\x45\xff\xff\xff\xfe\xfe\xfe\x01\x01\ +\x01\xbe\xbe\xbe\xfd\xfd\xfd\x00\x00\x00\x64\x64\x64\xd2\xd2\xd2\ +\x7c\x7c\x7c\xfb\xfb\xfb\xe7\xe7\xe7\x84\x84\x84\xd7\xd7\xd7\xe0\ +\xe0\xe0\xe1\xe1\xe1\x0c\x0c\x0c\x28\x28\x28\xf5\xf5\xf5\xb3\xb3\ +\xb3\x02\x02\x02\x95\x95\x95\x2e\x2e\x2e\x11\x11\x11\x6b\x6b\x6b\ +\x03\x03\x03\x72\x72\x72\x49\x49\x49\xfc\xfc\xfc\x13\x13\x13\x04\ +\x04\x04\x9f\x9f\x9f\xc4\xc4\xc4\xa9\xa9\xa9\x05\x05\x05\x57\x57\ +\x57\x17\x17\x17\xf6\xf6\xf6\x16\x16\x16\xa6\xa6\xa6\xa0\xa0\xa0\ +\x60\x60\x60\x24\x24\x24\x3e\x3e\x3e\x23\x23\x23\xb7\xb7\xb7\x4d\ +\x4d\x4d\xf8\xf8\xf8\xc0\xc0\xc0\x30\x30\x30\x09\x09\x09\xec\xec\ +\xec\x20\x20\x20\x8a\x8a\x8a\xda\xda\xda\xf1\xf1\xf1\x0d\x0d\x0d\ +\x99\x99\x99\x19\x19\x19\xf9\xf9\xf9\xcd\xcd\xcd\xf4\xf4\xf4\x39\ +\x39\x39\x2d\x2d\x2d\x3b\x3b\x3b\x12\x12\x12\x43\x43\x43\xc2\xc2\ +\xc2\xa4\xa4\xa4\xdc\xdc\xdc\x55\x55\x55\x68\x68\x68\x5a\x5a\x5a\ +\x50\x50\x50\xf0\xf0\xf0\x06\x06\x06\x1f\x1f\x1f\x74\x74\x74\xb1\ +\xb1\xb1\x5d\x5d\x5d\x21\x21\x21\x36\x36\x36\x08\x08\x08\xea\xea\ +\xea\xdb\xdb\xdb\x81\x81\x81\x9c\x9c\x9c\x8b\x8b\x8b\x75\x75\x75\ +\xf2\xf2\xf2\x25\x25\x25\xce\xce\xce\x48\x48\x48\x63\x63\x63\xba\ +\xba\xba\x53\x53\x53\x38\x38\x38\xf7\xf7\xf7\xe4\xe4\xe4\xa2\xa2\ +\xa2\x4a\x4a\x4a\xf3\xf3\xf3\x5f\x5f\x5f\xf1\x69\x00\xec\x00\x00\ +\x00\x01\x74\x52\x4e\x53\x00\x40\xe6\xd8\x66\x00\x00\x01\x6d\x49\ +\x44\x41\x54\x78\x5e\xd5\x92\xc5\x76\xc3\x30\x10\x45\x3d\x92\x1d\ +\x66\xe6\x94\x99\x99\x99\x99\x99\xe1\xff\x7f\xa1\x9e\x89\x93\x53\ +\xa9\xb2\x4e\x76\x6d\xdf\xf2\xea\xfa\xbd\x59\xd8\xf8\x2b\xf1\x30\ +\xeb\x5b\x58\xcc\x04\x37\x13\x3c\x96\x10\xc6\xb5\xad\x42\xda\x9a\ +\x6f\x6d\x0d\x40\xb3\xad\x2c\xe8\xda\x1a\xe2\xb5\xf4\xd4\xdd\x71\ +\xbf\xa1\x0d\x14\x7b\x1b\xed\x09\xd0\xbb\x03\x0d\x93\x0d\xea\x4d\ +\xd8\x41\x2b\x33\x82\x6e\x2e\xac\x35\xc3\x39\xbb\x95\xe5\xbb\xa9\ +\xdb\xa7\xbd\xc0\x47\xce\x64\x47\x27\x7e\x31\x3b\xa7\x71\x87\xda\ +\xd1\x2c\x00\xf8\xe8\xda\x16\xcd\x7e\x17\x19\x09\xc3\x88\x94\xd1\ +\x5d\xd5\xb4\xf6\xe1\x6e\xbf\xdf\x36\x36\xe9\x92\x90\xab\xeb\xa5\ +\xf7\x09\xdb\x84\x61\xea\xcf\xbb\xee\x67\xd1\x1c\x1d\x43\x60\xa6\ +\xd1\x5d\x89\xbb\x98\x53\xd3\xb8\xef\xa9\x81\x19\x5a\xa8\x80\xda\ +\x4d\xd1\xeb\x3c\xbd\xc2\x42\x06\xbf\x5b\x54\x9b\xe6\x12\x9a\xcb\ +\x4e\x0f\x1c\xd0\xb5\x77\xca\xfd\x35\x7a\x5b\xaf\x83\x8d\x24\xba\ +\x5b\xca\x0b\xb6\x71\x5f\x0a\x8b\xee\x2a\xdc\xc0\x9e\xa5\x08\x4b\ +\x29\xf6\x83\x96\x32\x69\xf3\x87\xe9\xdf\x67\x6a\xb7\x0a\xb2\x7b\ +\xe8\x62\xb2\x23\xd9\x84\x02\xf2\x63\x2e\xe4\x04\xd9\xe9\x99\x64\ +\x9e\x53\xc3\x85\x48\x2f\x69\xe9\x0a\x44\x7a\x6d\x53\x96\x8c\x08\ +\x14\x6e\xa2\x48\x6f\x8b\x02\x8d\x97\xb0\xf5\x1e\xa4\xad\x07\xda\ +\x7a\x14\x58\x45\xfd\xd7\x57\xe9\x82\x27\xa1\xe1\x19\x97\x4a\x2f\ +\x72\xab\x19\x43\x5e\x7e\xad\x73\xce\xf9\x1b\x7d\xfd\xce\x31\x1f\ +\xe0\x60\xcc\x27\xad\x65\x6d\x4c\xcc\x12\xc2\xbc\x4e\x23\x13\x39\ +\x41\x89\x79\xc1\x50\x35\xfc\x7e\xeb\xff\xca\x17\x55\x71\x20\xbb\ +\xd7\xbb\x2e\xca\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\ +\x00\x00\x01\x25\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\ +\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\ +\xa7\x93\x00\x00\x00\xda\x49\x44\x41\x54\x48\xc7\xed\x94\x41\x0e\ +\x82\x30\x10\x45\x1f\x46\x38\x83\x77\xf0\xfe\x87\xf0\x1a\x5e\x40\ +\xb1\xa5\x74\xa6\x1a\x5c\xb4\x04\x8c\xa2\x11\xca\xc2\xc4\x49\xd8\ +\xd0\xe4\xe5\xf5\xf7\x67\x8a\xb2\x2c\x3b\x16\x4c\x08\xa1\x78\xf5\ +\x7f\x0b\xa0\xaa\xb3\xa0\x55\x55\x4d\x9e\x6d\x58\x69\xfe\xe0\x1f\ +\x06\x6f\x33\x30\xba\x55\xc0\xdd\xed\x0a\x37\x0f\xa1\x05\x75\x20\ +\x96\x62\xb7\xcf\x60\x1c\x5c\x82\x36\xa0\x16\xc4\x66\x8a\x42\xed\ +\x00\xf5\x16\xe4\x92\x09\x2c\x97\x68\x29\x26\x7e\x9a\xcb\xd8\xd7\ +\xe0\xcd\x08\xdc\x64\x02\xbb\xf3\x60\xaa\x39\xc1\xed\x39\x41\xfb\ +\xac\xcd\x00\x7e\xb7\xfe\x3e\x67\x5c\xc7\x8c\x43\x93\xe2\x48\x19\ +\x4f\x2d\xea\x57\x95\xed\x8e\x87\x21\x4b\x49\x96\xbe\x8e\xa6\x92\ +\x1a\x31\xeb\xf1\xfc\x29\x56\xaa\xef\x6b\xb0\x20\xc9\x54\x47\x0f\ +\xf8\x35\xb8\x4d\xd7\x56\x03\xe2\x20\x98\xc7\xaa\xf5\xb7\x98\x05\ +\xd6\xde\xd4\x3e\xf7\x57\x1a\xb8\x3a\x00\x8a\xa5\xcb\x66\x6a\xee\ +\x91\x61\xa9\x66\xc0\x0f\xb5\x5d\x00\x00\x00\x00\x49\x45\x4e\x44\ +\xae\x42\x60\x82\ +\x00\x00\x00\x91\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x2a\x00\x00\x00\x2b\x01\x03\x00\x00\x00\x34\x51\x88\xbd\ +\x00\x00\x00\x06\x50\x4c\x54\x45\xff\xff\xff\x00\x00\x00\x55\xc2\ +\xd3\x7e\x00\x00\x00\x01\x74\x52\x4e\x53\x00\x40\xe6\xd8\x66\x00\ +\x00\x00\x39\x49\x44\x41\x54\x18\x57\x63\x60\xc0\x05\x14\x20\x54\ +\x01\x84\xfa\x01\x26\x19\xff\x80\x29\x66\x08\x8f\xfd\x03\x98\xe2\ +\x7f\x00\xa6\xe4\x0f\x80\x29\xfb\x06\x30\x55\x0f\xd1\xf6\x6f\x50\ +\x6b\xe3\x87\x68\x63\x83\x50\x2c\x0c\x84\x00\x00\x91\xca\x1c\x09\ +\xf6\x23\x2a\xfe\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\ +\x00\x00\x00\xad\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x0f\x00\x00\x00\x18\x02\x03\x00\x00\x00\x58\x6b\x4f\xfa\ +\x00\x00\x00\x09\x50\x4c\x54\x45\xff\xff\xff\xff\xff\xff\x00\x00\ +\x00\x8e\xf4\xc3\xec\x00\x00\x00\x01\x74\x52\x4e\x53\x00\x40\xe6\ +\xd8\x66\x00\x00\x00\x52\x49\x44\x41\x54\x08\x1d\x05\xc1\xb1\x0d\ +\xc2\x30\x14\x05\xc0\x8b\x04\x1b\xd0\x3c\x4f\xe3\x8a\x9a\xe6\x47\ +\x72\x1f\x17\x61\x1a\x57\x9e\x80\x41\xb9\xf3\x82\x40\xeb\xc8\x42\ +\x2e\x64\x20\x67\x27\xb5\x48\x5d\xa4\x06\xa9\xb3\x4b\xd5\x92\xfa\ +\xfe\x64\xcc\x8f\xdc\x17\xd9\x83\xf6\x1e\xe4\xd8\xdd\xe3\xd8\x1d\ +\x73\x61\x2e\xb4\x8e\x27\xf0\x07\xd5\x18\x11\x1b\xed\x4d\x23\xf4\ +\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x00\x70\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x7f\x00\x00\x00\x7f\x01\x03\x00\x00\x00\xfc\x73\x8f\x50\ +\x00\x00\x00\x06\x50\x4c\x54\x45\x00\xff\xff\xff\xff\xff\xb1\xb8\ +\x5e\xa0\x00\x00\x00\x25\x49\x44\x41\x54\x78\x5e\xed\xcc\x21\x12\ +\x00\x00\x04\x00\x41\xff\x7f\x34\x82\x11\x64\x75\x2f\x6e\xb8\xd8\ +\x6a\xca\x0b\x00\x00\xf0\x9d\x01\x00\x40\x03\x94\x98\xeb\xc0\x19\ +\x38\xa1\x84\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x00\x60\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x7f\x00\x00\x00\x7f\x01\x03\x00\x00\x00\xfc\x73\x8f\x50\ +\x00\x00\x00\x03\x50\x4c\x54\x45\xff\xff\xff\xa7\xc4\x1b\xc8\x00\ +\x00\x00\x18\x49\x44\x41\x54\x78\x5e\xed\xc0\x31\x01\x00\x00\x00\ +\xc2\x20\xfb\xa7\x36\xc5\x3e\x58\x0b\x00\xe0\x08\x6f\x00\x01\x01\ +\x3e\xc3\x31\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x01\x1a\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x2a\x00\x00\x00\x2b\x02\x03\x00\x00\x00\x73\xf1\xf2\x6d\ +\x00\x00\x00\x0c\x50\x4c\x54\x45\xff\xff\xff\x80\x80\x80\x00\x00\ +\x00\xff\xff\xff\x45\x4a\x4b\x38\x00\x00\x00\x01\x74\x52\x4e\x53\ +\x00\x40\xe6\xd8\x66\x00\x00\x00\xbc\x49\x44\x41\x54\x78\x5e\x4d\ +\xcb\xbd\x89\x04\x31\x0c\x86\x61\xa1\xd0\x55\x38\x1c\xdc\x8f\x26\ +\xd8\x12\xa6\x0a\xb3\xe1\xe6\x4e\x2e\x32\x07\x02\xdb\x07\x5b\xc0\ +\x96\xb4\x55\x9c\x47\x3f\x33\x56\xf4\x21\xde\x07\x42\xcd\xe0\x17\ +\x46\xbd\xf6\xb6\xec\x1a\xef\xa6\x41\x02\x34\xb2\x41\x80\x60\x24\ +\xcf\x9d\x9a\xee\x38\x8b\x7e\x78\x83\x4f\x7e\x64\xb3\x30\x68\x57\ +\x10\x32\x74\x22\x05\x98\x91\x89\x0c\xe4\x50\x88\x0c\xd4\x44\xe4\ +\x20\xce\xdc\xc1\x98\x89\x83\x33\x71\x20\x89\x02\xe4\x9d\x1d\x60\ +\xa1\x2e\x40\xff\xe9\x02\xfd\xf1\x2a\x0e\xd2\xfe\x7b\x81\x50\xda\ +\x02\x8e\xef\x02\x3e\x0b\x78\xb3\x6c\x01\x7f\x5d\x1a\x03\x66\x1d\ +\x34\x00\x03\x42\x15\xb0\xe4\x0a\x24\x37\x50\x24\x57\xc0\x92\x2b\ +\xe8\x92\x1b\x90\xdc\x80\xe4\x0a\x24\x37\xf0\x73\x6f\x1c\x70\x5f\ +\x5b\x76\x3c\xc7\x3f\xd6\x51\x68\x20\x52\x85\xdb\x5f\x00\x00\x00\ +\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x00\x8d\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x1b\x00\x00\x00\x1b\x01\x03\x00\x00\x00\xb7\x1a\x66\x16\ +\x00\x00\x00\x06\x50\x4c\x54\x45\xff\xff\xff\x00\x00\x00\x55\xc2\ +\xd3\x7e\x00\x00\x00\x01\x74\x52\x4e\x53\x00\x40\xe6\xd8\x66\x00\ +\x00\x00\x35\x49\x44\x41\x54\x08\x99\x63\x60\xc0\x02\xd8\x1b\x80\ +\x04\xff\x01\x4c\x82\xfd\x01\x48\xba\x00\x44\x58\x80\x08\x19\x10\ +\xc1\x07\xd6\x02\x22\x98\x41\xfa\x18\x41\x0a\x19\xc0\x0a\xeb\x40\ +\x84\x3d\x16\x42\x0e\xdd\x46\x00\xb5\x00\x09\x40\xa3\x31\xbf\x5e\ +\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x03\x3f\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\ +\x00\x00\x00\x04\x67\x41\x4d\x41\x00\x00\xd6\xd8\xd4\x4f\x58\x32\ +\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\x74\x77\x61\x72\x65\ +\x00\x41\x64\x6f\x62\x65\x20\x49\x6d\x61\x67\x65\x52\x65\x61\x64\ +\x79\x71\xc9\x65\x3c\x00\x00\x02\xd1\x49\x44\x41\x54\x38\xcb\x7d\ +\x95\x4b\x68\x53\x41\x14\x86\x93\xe6\xd1\x08\x49\x28\x04\x5b\x17\ +\x05\x35\xee\x5a\xbb\x50\xb2\xb1\xda\x85\x8f\x5d\xb5\xbe\x16\x76\ +\x29\x2d\x42\x49\x57\xed\xce\x8d\x0a\xa2\xe0\xba\xab\x14\x84\x8a\ +\x2b\x51\x44\x45\x17\x0a\x8a\x55\xf1\x01\x1a\xb0\x56\x23\xad\xa2\ +\xc5\xb6\x92\x6a\x95\xbe\x34\xcd\xc3\xe3\x7f\x6e\xce\x64\xe6\x4e\ +\xd2\x16\x3e\xe6\xde\xce\x3f\x7f\x66\xce\x63\xae\x87\x88\x3c\x26\ +\xf8\xf3\x01\x7e\xa8\x07\x01\x50\x67\x6b\x0c\x6d\x9d\xa1\x0d\xf2\ +\xda\xca\x9c\x21\xf2\x8a\x11\x51\x7f\x7f\x5e\x16\x6c\x04\x61\xe0\ +\xaf\x61\xea\x77\xb4\x03\x03\x4a\xdb\x08\x22\xe2\xe1\x35\x85\x8e\ +\xe9\xbf\xa1\x21\x2a\x75\x77\x53\xa1\x2c\x66\x36\x83\x28\xcf\x57\ +\x69\x53\x29\x2a\xf5\xf4\x50\x29\x18\x54\xda\x38\x68\x70\xe6\xcd\ +\xe3\x97\x60\x5a\xec\xed\xa5\x42\x4b\x0b\xe5\xf0\xfe\x5d\x9b\x6f\ +\x55\xe6\xca\xb4\x34\x3c\x4c\xc5\x64\x92\x0a\x6d\x6d\xb4\x8c\xf7\ +\x71\xad\x8d\x3b\x5a\x31\xa6\xd5\x64\x32\xbf\x8a\x9d\xe6\x5a\x5b\ +\xe9\x2f\xde\xff\x80\x05\x30\xed\x5e\x10\xe3\xe7\x02\x4c\xa1\xaf\ +\x68\x27\xc1\x65\x70\xd6\xe3\x29\x8a\xb6\x49\x19\x87\xf8\x1f\x4b\ +\x60\x51\x46\xc5\x2f\xb7\x39\xe5\x61\x9a\x83\xe9\x0a\x4c\x97\xc4\ +\x74\x04\x1c\xd7\x9a\x76\xd0\xac\x8c\x83\x12\x7c\xfa\x0c\xe6\xc4\ +\xf0\xb7\x8c\xcc\x62\x22\x41\x2b\x83\x83\xb4\xdc\xd7\x47\x0b\x30\ +\xe5\xb9\x8c\xec\xf4\x98\x36\xed\x02\x3b\x1c\x2f\x23\xc6\x61\x49\ +\x14\x7d\x04\x33\x20\x2b\x3f\xc2\xfc\x88\xc5\x68\x1e\xf1\xfc\x19\ +\x8f\x3b\xef\xef\x40\x0a\x1c\xd1\xa6\xd8\xb4\x67\x97\x78\x84\xed\ +\xf2\x89\x4a\xa2\x1c\x73\x0e\xc1\x6c\x0d\xde\x8b\xe9\x61\xb7\x69\ +\xbb\x91\x64\xbf\x5d\x9b\x01\x99\xe0\x44\xd1\x0c\x8e\xff\x0d\x3b\ +\x9d\xc2\xb3\xc9\x4b\x70\x41\x9b\x9e\x00\x1d\x95\x6a\x90\xb2\xac\ +\xd5\x4d\x01\x95\xfd\x2c\x62\xfa\x15\xc7\xff\x84\x67\x13\x0e\xc3\ +\x4d\x6d\xdc\x09\xb6\xcb\x9a\x40\x55\xe7\xd9\xc5\x3f\x8f\xec\x4f\ +\x23\x51\x13\x88\x69\x46\x12\xa5\xf8\x00\xd2\xe0\x89\x36\x5f\xdf\ +\x58\x99\xce\xc1\x74\x0a\x25\x95\x41\xf6\xc7\xc4\xe0\x01\x78\x05\ +\xde\x82\x31\x19\xdf\x80\x51\xbb\x31\xec\x50\xa8\xde\xcf\xc2\xf4\ +\x0b\x4c\xc7\x61\xca\xbb\xba\x0f\x2e\x81\xd3\xe0\x2a\x78\x2e\x86\ +\x69\x19\xf9\xc7\x1e\x55\x77\xa8\xdf\xd5\xd2\xb3\xe8\xfd\x49\x98\ +\xa6\x61\xca\x09\xba\x0b\xce\x83\x03\x46\x83\xdc\x03\xcf\xc0\x0b\ +\x49\x22\x8f\x8f\xc1\x35\xf7\xdd\x12\xae\xb4\xf4\x04\x6e\xa9\x0c\ +\x2e\x94\xd7\x48\x16\x2f\xbc\x0d\xce\x81\xfd\xee\xec\x77\x2a\x73\ +\x36\x7b\x2a\x3f\x72\x4b\x36\x90\xd4\x2d\xdd\xe8\x6a\xe9\xd1\x50\ +\x88\x1e\x62\xbc\x0e\xce\x80\x7d\xee\x3a\xed\x90\x24\x31\x74\x47\ +\xc2\x74\x03\x5c\x04\x87\xb4\x76\xb7\xdd\xd2\x4d\x3c\x71\x45\xe2\ +\xb9\xb7\xba\xf8\xd5\x25\x14\x53\x75\x3e\x52\xbe\x78\xe8\xa0\xd6\ +\x1e\x05\x09\xf3\x12\xf2\x49\xd0\xb7\xb1\xe0\xa4\x3e\x52\x97\xb4\ +\xa9\x7d\x6d\x56\x3a\xf4\x94\xd6\xb2\xe9\x1e\xf1\x88\xda\xa5\xd6\ +\xa0\xcc\xe5\x48\x3b\xc1\x96\x35\x2e\xfa\xa8\xcc\x29\x6d\x42\xd6\ +\xea\x8b\xde\xfa\x34\xf1\x82\x4d\x4e\x9c\xca\xe1\x89\xac\xf3\x69\ +\x8a\x88\xa6\x59\xd6\xa8\x53\x79\x6b\x75\x9e\x4f\x3e\x8e\x1b\xec\ +\x0f\xe4\x1a\xda\xa0\x68\xeb\x4d\xed\x7f\x3d\xa9\x97\x96\x02\xf1\ +\x2b\x1c\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x00\xfa\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x0b\x00\x00\x00\x0c\x08\x06\x00\x00\x00\xb4\xa9\x47\x9e\ +\x00\x00\x00\xc1\x49\x44\x41\x54\x28\x53\xcd\x90\x31\x0a\x84\x30\ +\x10\x45\xc7\xce\x56\xb0\xd3\x46\x10\x6f\x60\xe5\x01\xbc\x42\x40\ +\x0b\x9b\x74\x22\x11\xbc\x94\x9d\x27\xd2\x03\x78\x03\x03\x19\xf7\ +\x0f\xb8\xd9\x2c\x6c\xbf\x81\x4f\x66\xde\xfc\x7c\xc8\x50\x1c\xc7\ +\x4c\x44\xa2\x28\x8a\x38\xcf\x73\x7e\x1d\xc2\xfd\xc9\xd3\x34\x65\ +\xd2\x5a\x73\x51\x14\x02\x86\x61\xe0\x79\x9e\xc5\x8c\x1b\x3d\x38\ +\xe6\xe3\x38\x32\x61\xa0\x94\x12\x88\xfa\x5b\xe0\x98\x3b\xe7\x42\ +\x33\xc0\x2f\x33\xea\x7f\x4a\xee\xba\x4e\xcc\xd7\x75\x05\x0f\xd0\ +\x83\xf7\x7d\xef\x93\xb1\x26\xc0\x7d\xdf\x03\xf3\x71\x1c\xc2\x97\ +\x65\xf1\xc9\xeb\xba\x0a\x9c\xa6\x29\x30\x3f\x21\xdb\xb6\xf9\x64\ +\xa8\xae\x6b\x19\x94\x65\xc9\x6d\xdb\x72\x55\x55\xd2\x37\x4d\xc3\ +\xd6\x5a\x9f\xfc\xc8\x18\xc3\x59\x96\x89\x29\x49\x12\xc6\x5f\xce\ +\xf3\x7c\x6f\xe9\x06\x33\x20\x38\xcd\x08\x1e\x78\x76\x00\x00\x00\ +\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x00\x74\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x7f\x00\x00\x00\x7f\x01\x03\x00\x00\x00\xfc\x73\x8f\x50\ +\x00\x00\x00\x06\x50\x4c\x54\x45\xc0\xc0\xc0\xff\xff\xff\x2b\x69\ +\x87\xb4\x00\x00\x00\x29\x49\x44\x41\x54\x48\x4b\x63\xf8\x0f\x05\ +\x0d\x0c\x50\x30\x2a\x30\x2a\x30\x2a\x30\x2a\x40\xa4\x00\x0c\xd8\ +\x43\xc4\xff\x8d\x0a\x8c\x0a\x8c\x0a\x8c\x0a\x60\x17\x00\x00\x3f\ +\x78\xe4\xb7\xe3\x90\x30\x5f\x00\x00\x00\x00\x49\x45\x4e\x44\xae\ +\x42\x60\x82\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x08\ +\x06\x27\x5a\x67\ +\x00\x62\ +\x00\x6f\x00\x6c\x00\x64\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0a\ +\x02\xfc\x42\x47\ +\x00\x69\ +\x00\x74\x00\x61\x00\x6c\x00\x69\x00\x63\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0e\ +\x0f\x0d\x22\x27\ +\x00\x73\ +\x00\x65\x00\x6e\x00\x64\x00\x74\x00\x6f\x00\x62\x00\x61\x00\x63\x00\x6b\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0f\ +\x00\x49\xdb\xa7\ +\x00\x62\ +\x00\x61\x00\x63\x00\x6b\x00\x67\x00\x72\x00\x6f\x00\x75\x00\x6e\x00\x64\x00\x32\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0f\ +\x05\xaa\x0c\xc7\ +\x00\x74\ +\x00\x65\x00\x78\x00\x74\x00\x70\x00\x6f\x00\x69\x00\x6e\x00\x74\x00\x65\x00\x72\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x10\ +\x0f\x9b\x88\x67\ +\x00\x62\ +\x00\x72\x00\x69\x00\x6e\x00\x67\x00\x74\x00\x6f\x00\x66\x00\x72\x00\x6f\x00\x6e\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0d\ +\x05\x6c\x22\xc7\ +\x00\x6c\ +\x00\x69\x00\x6e\x00\x65\x00\x63\x00\x6f\x00\x6c\x00\x6f\x00\x72\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0b\ +\x0a\x2b\x97\xe7\ +\x00\x70\ +\x00\x6f\x00\x69\x00\x6e\x00\x74\x00\x65\x00\x72\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0f\ +\x00\x50\xdb\xa7\ +\x00\x62\ +\x00\x61\x00\x63\x00\x6b\x00\x67\x00\x72\x00\x6f\x00\x75\x00\x6e\x00\x64\x00\x31\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0f\ +\x00\x4b\xdb\xa7\ +\x00\x62\ +\x00\x61\x00\x63\x00\x6b\x00\x67\x00\x72\x00\x6f\x00\x75\x00\x6e\x00\x64\x00\x34\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0d\ +\x06\x43\xe3\x67\ +\x00\x66\ +\x00\x6c\x00\x6f\x00\x6f\x00\x64\x00\x66\x00\x69\x00\x6c\x00\x6c\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0f\ +\x03\x4a\x23\xe7\ +\x00\x6c\ +\x00\x69\x00\x6e\x00\x65\x00\x70\x00\x6f\x00\x69\x00\x6e\x00\x74\x00\x65\x00\x72\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0a\ +\x0c\xad\x0f\x07\ +\x00\x64\ +\x00\x65\x00\x6c\x00\x65\x00\x74\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0d\ +\x08\xd5\xc4\xe7\ +\x00\x75\ +\x00\x6e\x00\x64\x00\x65\x00\x72\x00\x6c\x00\x69\x00\x6e\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0f\ +\x00\x4a\xdb\xa7\ +\x00\x62\ +\x00\x61\x00\x63\x00\x6b\x00\x67\x00\x72\x00\x6f\x00\x75\x00\x6e\x00\x64\x00\x33\x00\x2e\x00\x70\x00\x6e\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x0f\x00\x00\x00\x02\ +\x00\x00\x00\x64\x00\x00\x00\x00\x00\x01\x00\x00\x03\x53\ +\x00\x00\x01\xd4\x00\x00\x00\x00\x00\x01\x00\x00\x0f\xf5\ +\x00\x00\x01\x32\x00\x00\x00\x00\x00\x01\x00\x00\x09\xa1\ +\x00\x00\x01\x0e\x00\x00\x00\x00\x00\x01\x00\x00\x09\x2d\ +\x00\x00\x00\x28\x00\x00\x00\x00\x00\x01\x00\x00\x01\x16\ +\x00\x00\x01\x76\x00\x00\x00\x00\x00\x01\x00\x00\x0b\x23\ +\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x01\x00\x00\x07\xe7\ +\x00\x00\x00\x88\x00\x00\x00\x00\x00\x01\x00\x00\x03\xc9\ +\x00\x00\x00\x12\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x01\x56\x00\x00\x00\x00\x00\x01\x00\x00\x0a\x05\ +\x00\x00\x01\xb4\x00\x00\x00\x00\x00\x01\x00\x00\x0e\xf7\ +\x00\x00\x00\xf2\x00\x00\x00\x00\x00\x01\x00\x00\x08\x7c\ +\x00\x00\x01\x9a\x00\x00\x00\x00\x00\x01\x00\x00\x0b\xb4\ +\x00\x00\x00\x42\x00\x00\x00\x00\x00\x01\x00\x00\x02\x11\ +\x00\x00\x00\xac\x00\x00\x00\x00\x00\x01\x00\x00\x06\xbe\ +" + +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() diff --git a/examples/graphicsview/diagramscene/images/background1.png b/examples/graphicsview/diagramscene/images/background1.png new file mode 100644 index 0000000000000000000000000000000000000000..0f93c6bf420da2d6488601c5fa165c57206b322d GIT binary patch literal 112 zcmeAS@N?(olHy`uVBq!ia0vp^^&rg13?%;)_Xhwewg8_HSBC!}uyIG+0-%Vhr;B4q zMcmsnib4zwEDVnS>rI*jQ%d#ocHGE1#m&I*VJ;(s1M`#_uMbFCENlU4VDNPHb6Mw< G&;$V2W+Jly literal 0 HcmV?d00001 diff --git a/examples/graphicsview/diagramscene/images/background2.png b/examples/graphicsview/diagramscene/images/background2.png new file mode 100644 index 0000000000000000000000000000000000000000..1e293db67a5dfedacaee2b7448148dcf6bc53b92 GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^^&rg13?%;)_Xhwewg8_H*Z=?j1DTL*{Qv)7JF|TYP(;(y z#WBRgJNXAcD=$xgfffWhEMefe;e6zOFINv3CWtdI*jGH+{&<2xJWvyZr>mdKI;Vst E0PAKUcK`qY literal 0 HcmV?d00001 diff --git a/examples/graphicsview/diagramscene/images/background4.png b/examples/graphicsview/diagramscene/images/background4.png new file mode 100644 index 0000000000000000000000000000000000000000..9c1f3bfd77764732b9a0138ffbd134e696e9c6d1 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^^&rg13?%;)_Xhwe<^Z1%*Z=?jFFzuE0?3u{ba4!+ qhYP)(Fbo8M z2lQrH7A8r8p993c@02?QX__)52*dDESl2Zd0R;qA-d*T+9EWqZZR5jP3hzWw#Nr?b z^v>(LV%xTAl)mpzv3w|sg30q7ecxvTAp{P?piDrw4bwDP+;!b0{+@Z;Hk_u3W7#2& zV;sj3)y!`nBxJs-s{h+qmPL(5U0%0A%=3&*)1b^}S#~*lo~LkK_vh2vZAhr7EKAk# Y0MNh_$Of+#C;$Ke07*qoM6N<$f{V6t!Tdm4?Fu&!p#^mymSVTh zU>sb6HlP;7W{N`X0QDB+k_jxAXelOsn#*51@U_g5OYIsl5L%VuiskzuK3zz?-u00000NkvXXu0mjfg_VD% literal 0 HcmV?d00001 diff --git a/examples/graphicsview/diagramscene/images/delete.png b/examples/graphicsview/diagramscene/images/delete.png new file mode 100644 index 0000000000000000000000000000000000000000..df2a147d246ef62d628d73db36b0b24af98a2ab9 GIT binary patch literal 831 zcmV-F1Hk-=P)R5;6h zl}l(-K@^6Q=FtdACA#^NDs^{Lp)6)L zgDB5eX;UdG_4H6F7*yIgXmIAu0!5NyOCtSU7G=!;6%|3j{gliox-!pOK?G(o&X({YLK$5)lC7F{VZbo703UCXA=&? zO>Nu>w#%A8Rp;5oKacEBBT*BGX+{#I_yE%2i8f!~SeeejbP6SvLH5VQ-~o6A-hwe1 z-+)oOG3-#N-p|7H3rxph%DcJ`E`ihFDtIo2X&L#)9#wa!-__Ey=>18UreVqnx(m*O z14e_~1JA$~|`2HhU^Ra!WRl)GgiU zYU$BXh#q3R4$gpm?mF#|Br$YH!gK>%1c$VCx82fBJaI+hxwpFb)g=^Dbv{zQc<7+k z9t8>W67osVx3S=)K2n#oseNr$I`ov*vgsc2h}xyrpv>h+JHeJUF8ZjWkj` zH1UE>PMpf&iLCQ!iioCJ)~Hi?YjvJaK8_pg59Au!plIt&?SDO~mzDzYD;xj-002ov JPDHLkV1h`%ho%4k literal 0 HcmV?d00001 diff --git a/examples/graphicsview/diagramscene/images/floodfill.png b/examples/graphicsview/diagramscene/images/floodfill.png new file mode 100644 index 0000000000000000000000000000000000000000..54c0dae237849b1ac4c8f74edd2a9f868df636e0 GIT binary patch literal 282 zcmeAS@N?(olHy`uVBq!ia0vp^T0pGL#0(^hKYq#uQak}ZA+G=b|8Hn$0P=tgS1)f1 zAd9gi$S;_|;n|HeAZL%Ki(^PdobTzqoh*htZHWsngj&el=~ufUw2W)>!)JbaM(j+t z*`p6k+Y&m*-QGCti{d?Yr?U^l-S&Rl_D1UcGDjwpO^yu-D(C0UdS}sHSJCWWm$KO) zBV53!M2U6A#7>?k0UbP7T%IVLyK`_xXR~pkLMPLcxv~ih^&I}cWcvG2i|^9E>c)Uu zOnvW}?6@m7=P=gCN-?L&nlLasiEenprD7hS5`JKk_KQi<6YeyC_#cY%WeVb>%WRI@ YUkl7o2x`3@5A+9vr>mdKI;Vst01-}XF8}}l literal 0 HcmV?d00001 diff --git a/examples/graphicsview/diagramscene/images/italic.png b/examples/graphicsview/diagramscene/images/italic.png new file mode 100644 index 0000000000000000000000000000000000000000..9a438b57ad4369dfd110d2f2bdc126890e1aec8e GIT binary patch literal 247 zcmV(sy*Prg8NDWuEbzopr0L)V>;{X5v literal 0 HcmV?d00001 diff --git a/examples/graphicsview/diagramscene/images/linepointer.png b/examples/graphicsview/diagramscene/images/linepointer.png new file mode 100644 index 0000000000000000000000000000000000000000..66933d43b30e4352c763cadb4f0ca3bd80325037 GIT binary patch literal 141 zcmeAS@N?(olHy`uVBq!ia0vp^(jd&p3?#QprHKJ4wg8_H*Z=?j1DTH@0 zC%qJfboH$su}j!iZuY)9>DRxMGyQkOZ#I9EdvfFM;~TQYiF#Z5)IYFal@OGE>#O_) PXgY(ZtDnm{r-UW|*?2%h literal 0 HcmV?d00001 diff --git a/examples/graphicsview/diagramscene/images/sendtoback.png b/examples/graphicsview/diagramscene/images/sendtoback.png new file mode 100644 index 0000000000000000000000000000000000000000..5aa3b0a24382610f1dc25d6708a02a90e3d6c340 GIT binary patch literal 318 zcmV-E0m1%>P)1A0e687B!#Lm%BmfS zjSWxldj>ac+a?Z_s+z6!20%orpk3GP?lruq{=t6%Y>e64N{5Y8+F*&ZZV(4{GllSW;AhrI>C^Mf7m%p9hk07*qoM6N<$f)Wjg@&Et; literal 0 HcmV?d00001 diff --git a/examples/graphicsview/diagramscene/images/textpointer.png b/examples/graphicsview/diagramscene/images/textpointer.png new file mode 100644 index 0000000000000000000000000000000000000000..b25832cada22845efb19650500edf1ceb522a8b4 GIT binary patch literal 753 zcmVE}0|Ntca&k#YN&Ni$6B82z1O%U-pTxw(si~<21qD}ER~Hu- z_V)G`78a(arl6ppU|?V*BqTmQJ|iO|x3{-VO-=at_`txxFfcF)2?^}%>>wZ@ii(Qb z+S>8)@eK_PnVFdx85#Nc`OVGE^z`&OIXNvYEjv3q5)u+aLqo#C!lb06+}zw%RaIzc zXj)oYP*70t@bCr(1|J_EbaZsFv9VoUT_GVMHa0d02ng!x>f77ffq{XXoSch`i*swgN1UC~rmJr6ZtwP$GZ*2`gv#l)X+8W}u^wiyPzo88jdmHTu(7OW- zlMU)k*g-2Zf^IIXHN!c(mF2ss+o!$2N6utNCw?(Ir*Vhc(JTP?=-L*|eis=D!-$m8 zUDdSq;cma*Ha6*!kgMyZ_X*pCVd~Gj?q|^)9YbKI(OrqVm{ZfZ@2PHF{gGgN-D*TgnTzabF6H?ke2Co}~y&DfWYwGHLUN z>ECB+w+ga*=wh-X*@Ob}V=m+b+3A^No>RkxNH1yW3PgHsQ;K9ZRdFD@*Sjvt00000NkvXXu0mjfuiIx( literal 0 HcmV?d00001 diff --git a/examples/graphicsview/diagramscene/images/underline.png b/examples/graphicsview/diagramscene/images/underline.png new file mode 100644 index 0000000000000000000000000000000000000000..9b8209f5252f74c3af386430d17b60f7eeda7ce3 GIT binary patch literal 250 zcmVVHb^x=zg3bp;R5gZF*!ld&eiecuD~aU8;zW%0@Dx(b}8DKI}F+qU^+sIF@nlx4|n z+j3P^(l<@R)>@zZ$QZ*}mWe4z62@Q7^L%gV1~VWy%?KWNb^rhX07*qoM6N<$f?^zL A8~^|S literal 0 HcmV?d00001 diff --git a/examples/graphicsview/dragdroprobot/dragdroprobot.py b/examples/graphicsview/dragdroprobot/dragdroprobot.py new file mode 100755 index 0000000..d11e25e --- /dev/null +++ b/examples/graphicsview/dragdroprobot/dragdroprobot.py @@ -0,0 +1,314 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2015 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (QEasingCurve, QFileInfo, QLineF, QMimeData, + QParallelAnimationGroup, QPoint, QPointF, QPropertyAnimation, qrand, + QRectF, qsrand, Qt, QTime) +from PyQt5.QtGui import (QBrush, QColor, QDrag, QImage, QPainter, QPen, + QPixmap, QTransform) +from PyQt5.QtWidgets import (QApplication, QGraphicsItem, QGraphicsObject, + QGraphicsScene, QGraphicsView) + + +class ColorItem(QGraphicsItem): + n = 0 + + def __init__(self): + super(ColorItem, self).__init__() + + self.color = QColor(qrand() % 256, qrand() % 256, qrand() % 256) + + self.setToolTip( + "QColor(%d, %d, %d)\nClick and drag this color onto the robot!" % + (self.color.red(), self.color.green(), self.color.blue()) + ) + self.setCursor(Qt.OpenHandCursor) + self.setAcceptedMouseButtons(Qt.LeftButton) + + def boundingRect(self): + return QRectF(-15.5, -15.5, 34, 34) + + def paint(self, painter, option, widget): + painter.setPen(Qt.NoPen) + painter.setBrush(Qt.darkGray) + painter.drawEllipse(-12, -12, 30, 30) + painter.setPen(QPen(Qt.black, 1)) + painter.setBrush(QBrush(self.color)) + painter.drawEllipse(-15, -15, 30, 30) + + def mousePressEvent(self, event): + self.setCursor(Qt.ClosedHandCursor) + + def mouseMoveEvent(self, event): + if QLineF(QPointF(event.screenPos()), QPointF(event.buttonDownScreenPos(Qt.LeftButton))).length() < QApplication.startDragDistance(): + return + + drag = QDrag(event.widget()) + mime = QMimeData() + drag.setMimeData(mime) + + ColorItem.n += 1 + if ColorItem.n > 2 and qrand() % 3 == 0: + root = QFileInfo(__file__).absolutePath() + + image = QImage(root + '/images/head.png') + mime.setImageData(image) + drag.setPixmap(QPixmap.fromImage(image).scaled(30,40)) + drag.setHotSpot(QPoint(15, 30)) + else: + mime.setColorData(self.color) + mime.setText("#%02x%02x%02x" % (self.color.red(), self.color.green(), self.color.blue())) + + pixmap = QPixmap(34, 34) + pixmap.fill(Qt.white) + + painter = QPainter(pixmap) + painter.translate(15, 15) + painter.setRenderHint(QPainter.Antialiasing) + self.paint(painter, None, None) + painter.end() + + pixmap.setMask(pixmap.createHeuristicMask()) + + drag.setPixmap(pixmap) + drag.setHotSpot(QPoint(15, 20)) + + drag.exec_() + self.setCursor(Qt.OpenHandCursor) + + def mouseReleaseEvent(self, event): + self.setCursor(Qt.OpenHandCursor) + + +class RobotPart(QGraphicsObject): + def __init__(self, parent=None): + super(RobotPart, self).__init__(parent) + + self.color = QColor(Qt.lightGray) + self.dragOver = False + + self.setAcceptDrops(True) + + def dragEnterEvent(self, event): + if event.mimeData().hasColor(): + event.setAccepted(True) + self.dragOver = True + self.update() + else: + event.setAccepted(False) + + def dragLeaveEvent(self, event): + self.dragOver = False + self.update() + + def dropEvent(self, event): + self.dragOver = False + if event.mimeData().hasColor(): + self.color = QColor(event.mimeData().colorData()) + + self.update() + + +class RobotHead(RobotPart): + def __init__(self, parent=None): + super(RobotHead, self).__init__(parent) + + self.pixmap = QPixmap() + + def boundingRect(self): + return QRectF(-15, -50, 30, 50) + + def paint(self, painter, option, widget=None): + if self.pixmap.isNull(): + painter.setBrush(self.color.lighter(130) if self.dragOver else self.color) + painter.drawRoundedRect(-10, -30, 20, 30, 25, 25, Qt.RelativeSize) + painter.setBrush(Qt.white) + painter.drawEllipse(-7, -3 - 20, 7, 7) + painter.drawEllipse(0, -3 - 20, 7, 7) + painter.setBrush(Qt.black) + painter.drawEllipse(-5, -1 - 20, 2, 2) + painter.drawEllipse(2, -1 - 20, 2, 2) + painter.setPen(QPen(Qt.black, 2)) + painter.setBrush(Qt.NoBrush) + painter.drawArc(-6, -2 - 20, 12, 15, 190 * 16, 160 * 16) + else: + painter.scale(.2272, .2824) + painter.drawPixmap(QPointF(-15*4.4, -50*3.54), self.pixmap) + + def dragEnterEvent(self, event): + if event.mimeData().hasImage(): + event.setAccepted(True) + self.dragOver = True + self.update() + else: + super(RobotHead, self).dragEnterEvent(event) + + def dropEvent(self, event): + if event.mimeData().hasImage(): + self.dragOver = False + self.pixmap = QPixmap(event.mimeData().imageData()) + self.update() + else: + super(RobotHead, self).dropEvent(event) + + +class RobotTorso(RobotPart): + def boundingRect(self): + return QRectF(-30, -20, 60, 60) + + def paint(self, painter, option, widget=None): + painter.setBrush(self.color.lighter(130) if self.dragOver else self.color) + painter.drawRoundedRect(-20, -20, 40, 60, 25, 25, Qt.RelativeSize) + painter.drawEllipse(-25, -20, 20, 20) + painter.drawEllipse(5, -20, 20, 20) + painter.drawEllipse(-20, 22, 20, 20) + painter.drawEllipse(0, 22, 20, 20) + + +class RobotLimb(RobotPart): + def boundingRect(self): + return QRectF(-5, -5, 40, 10) + + def paint(self, painter, option, widget=None): + painter.setBrush(self.color.lighter(130) if self.dragOver else self.color) + painter.drawRoundedRect(self.boundingRect(), 50, 50, Qt.RelativeSize) + painter.drawEllipse(-5, -5, 10, 10) + + +class Robot(RobotPart): + def __init__(self): + super(Robot, self).__init__() + + self.setFlag(self.ItemHasNoContents) + + self.torsoItem = RobotTorso(self) + self.headItem = RobotHead(self.torsoItem) + self.upperLeftArmItem = RobotLimb(self.torsoItem) + self.lowerLeftArmItem = RobotLimb(self.upperLeftArmItem) + self.upperRightArmItem = RobotLimb(self.torsoItem) + self.lowerRightArmItem = RobotLimb(self.upperRightArmItem) + self.upperRightLegItem = RobotLimb(self.torsoItem) + self.lowerRightLegItem = RobotLimb(self.upperRightLegItem) + self.upperLeftLegItem = RobotLimb(self.torsoItem) + self.lowerLeftLegItem = RobotLimb(self.upperLeftLegItem) + + settings = ( + # Item Position Rotation Scale + # x y start end + (self.headItem, 0, -18, 20, -20, 1.1), + (self.upperLeftArmItem, -15, -10, 190, 180, 0), + (self.lowerLeftArmItem, 30, 0, 50, 10, 0), + (self.upperRightArmItem, 15, -10, 300, 310, 0), + (self.lowerRightArmItem, 30, 0, 0, -70, 0), + (self.upperRightLegItem, 10, 32, 40, 120, 0), + (self.lowerRightLegItem, 30, 0, 10, 50, 0), + (self.upperLeftLegItem, -10, 32, 150, 80, 0), + (self.lowerLeftLegItem, 30, 0, 70, 10, 0), + (self.torsoItem, 0, 0, 5, -20, 0), + ) + + animation = QParallelAnimationGroup(self) + for item, pos_x, pos_y, start_rot, end_rot, scale in settings: + item.setPos(pos_x, pos_y) + + rot_animation = QPropertyAnimation(item, b'rotation') + rot_animation.setStartValue(start_rot) + rot_animation.setEndValue(end_rot) + rot_animation.setEasingCurve(QEasingCurve.SineCurve) + rot_animation.setDuration(2000) + animation.addAnimation(rot_animation) + + if scale > 0: + scale_animation = QPropertyAnimation(item, b'scale') + scale_animation.setEndValue(scale) + scale_animation.setEasingCurve(QEasingCurve.SineCurve) + scale_animation.setDuration(2000) + animation.addAnimation(scale_animation) + + animation.setLoopCount(-1) + animation.start() + + def boundingRect(self): + return QRectF() + + def paint(self, painter, option, widget=None): + pass + + +class GraphicsView(QGraphicsView): + + def resizeEvent(self, e): + pass + + +if __name__== '__main__': + + import sys + import math + + app = QApplication(sys.argv) + + qsrand(QTime(0, 0, 0).secsTo(QTime.currentTime())) + + scene = QGraphicsScene(-200, -200, 400, 400) + + for i in range(10): + item = ColorItem() + angle = i*6.28 / 10.0 + item.setPos(math.sin(angle)*150, math.cos(angle)*150) + scene.addItem(item) + + robot = Robot() + robot.setTransform(QTransform.fromScale(1.2, 1.2), True) + robot.setPos(0, -20) + scene.addItem(robot) + + view = GraphicsView(scene) + view.setRenderHint(QPainter.Antialiasing) + view.setViewportUpdateMode(QGraphicsView.BoundingRectViewportUpdate) + view.setBackgroundBrush(QColor(230, 200, 167)) + view.setWindowTitle("Drag and Drop Robot") + view.show() + + sys.exit(app.exec_()) diff --git a/examples/graphicsview/dragdroprobot/images/head.png b/examples/graphicsview/dragdroprobot/images/head.png new file mode 100644 index 0000000000000000000000000000000000000000..1e520e09b8d0bde4af5947c1430a83feae03a822 GIT binary patch literal 14972 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 20.0: + edgeOffset = QPointF((line.dx() * 10) / length, + (line.dy() * 10) / length) + + self.sourcePoint = line.p1() + edgeOffset + self.destPoint = line.p2() - edgeOffset + else: + self.sourcePoint = line.p1() + self.destPoint = line.p1() + + def boundingRect(self): + if not self.source or not self.dest: + return QRectF() + + penWidth = 1.0 + extra = (penWidth + self.arrowSize) / 2.0 + + return QRectF(self.sourcePoint, + QSizeF(self.destPoint.x() - self.sourcePoint.x(), + self.destPoint.y() - self.sourcePoint.y())).normalized().adjusted(-extra, -extra, extra, extra) + + def paint(self, painter, option, widget): + if not self.source or not self.dest: + return + + # Draw the line itself. + line = QLineF(self.sourcePoint, self.destPoint) + + if line.length() == 0.0: + return + + painter.setPen(QPen(Qt.black, 1, Qt.SolidLine, Qt.RoundCap, + Qt.RoundJoin)) + painter.drawLine(line) + + # Draw the arrows if there's enough room. + angle = math.acos(line.dx() / line.length()) + if line.dy() >= 0: + angle = Edge.TwoPi - angle + + sourceArrowP1 = self.sourcePoint + QPointF(math.sin(angle + Edge.Pi / 3) * self.arrowSize, + math.cos(angle + Edge.Pi / 3) * self.arrowSize) + sourceArrowP2 = self.sourcePoint + QPointF(math.sin(angle + Edge.Pi - Edge.Pi / 3) * self.arrowSize, + math.cos(angle + Edge.Pi - Edge.Pi / 3) * self.arrowSize); + destArrowP1 = self.destPoint + QPointF(math.sin(angle - Edge.Pi / 3) * self.arrowSize, + math.cos(angle - Edge.Pi / 3) * self.arrowSize) + destArrowP2 = self.destPoint + QPointF(math.sin(angle - Edge.Pi + Edge.Pi / 3) * self.arrowSize, + math.cos(angle - Edge.Pi + Edge.Pi / 3) * self.arrowSize) + + painter.setBrush(Qt.black) + painter.drawPolygon(QPolygonF([line.p1(), sourceArrowP1, sourceArrowP2])) + painter.drawPolygon(QPolygonF([line.p2(), destArrowP1, destArrowP2])) + + +class Node(QGraphicsItem): + Type = QGraphicsItem.UserType + 1 + + def __init__(self, graphWidget): + super(Node, self).__init__() + + self.graph = graphWidget + self.edgeList = [] + self.newPos = QPointF() + + self.setFlag(QGraphicsItem.ItemIsMovable) + self.setFlag(QGraphicsItem.ItemSendsGeometryChanges) + self.setCacheMode(QGraphicsItem.DeviceCoordinateCache) + self.setZValue(1) + + def type(self): + return Node.Type + + def addEdge(self, edge): + self.edgeList.append(edge) + edge.adjust() + + def edges(self): + return self.edgeList + + def calculateForces(self): + if not self.scene() or self.scene().mouseGrabberItem() is self: + self.newPos = self.pos() + return + + # Sum up all forces pushing this item away. + xvel = 0.0 + yvel = 0.0 + for item in self.scene().items(): + if not isinstance(item, Node): + continue + + line = QLineF(self.mapFromItem(item, 0, 0), QPointF(0, 0)) + dx = line.dx() + dy = line.dy() + l = 2.0 * (dx * dx + dy * dy) + if l > 0: + xvel += (dx * 150.0) / l + yvel += (dy * 150.0) / l + + # Now subtract all forces pulling items together. + weight = (len(self.edgeList) + 1) * 10.0 + for edge in self.edgeList: + if edge.sourceNode() is self: + pos = self.mapFromItem(edge.destNode(), 0, 0) + else: + pos = self.mapFromItem(edge.sourceNode(), 0, 0) + xvel += pos.x() / weight + yvel += pos.y() / weight + + if qAbs(xvel) < 0.1 and qAbs(yvel) < 0.1: + xvel = yvel = 0.0 + + sceneRect = self.scene().sceneRect() + self.newPos = self.pos() + QPointF(xvel, yvel) + self.newPos.setX(min(max(self.newPos.x(), sceneRect.left() + 10), sceneRect.right() - 10)) + self.newPos.setY(min(max(self.newPos.y(), sceneRect.top() + 10), sceneRect.bottom() - 10)) + + def advance(self): + if self.newPos == self.pos(): + return False + + self.setPos(self.newPos) + return True + + def boundingRect(self): + adjust = 2.0 + return QRectF(-10 - adjust, -10 - adjust, 23 + adjust, 23 + adjust) + + def shape(self): + path = QPainterPath() + path.addEllipse(-10, -10, 20, 20) + return path + + def paint(self, painter, option, widget): + painter.setPen(Qt.NoPen) + painter.setBrush(Qt.darkGray) + painter.drawEllipse(-7, -7, 20, 20) + + gradient = QRadialGradient(-3, -3, 10) + if option.state & QStyle.State_Sunken: + gradient.setCenter(3, 3) + gradient.setFocalPoint(3, 3) + gradient.setColorAt(1, QColor(Qt.yellow).lighter(120)) + gradient.setColorAt(0, QColor(Qt.darkYellow).lighter(120)) + else: + gradient.setColorAt(0, Qt.yellow) + gradient.setColorAt(1, Qt.darkYellow) + + painter.setBrush(QBrush(gradient)) + painter.setPen(QPen(Qt.black, 0)) + painter.drawEllipse(-10, -10, 20, 20) + + def itemChange(self, change, value): + if change == QGraphicsItem.ItemPositionHasChanged: + for edge in self.edgeList: + edge.adjust() + self.graph.itemMoved() + + return super(Node, self).itemChange(change, value) + + def mousePressEvent(self, event): + self.update() + super(Node, self).mousePressEvent(event) + + def mouseReleaseEvent(self, event): + self.update() + super(Node, self).mouseReleaseEvent(event) + + +class GraphWidget(QGraphicsView): + def __init__(self): + super(GraphWidget, self).__init__() + + self.timerId = 0 + + scene = QGraphicsScene(self) + scene.setItemIndexMethod(QGraphicsScene.NoIndex) + scene.setSceneRect(-200, -200, 400, 400) + self.setScene(scene) + self.setCacheMode(QGraphicsView.CacheBackground) + self.setViewportUpdateMode(QGraphicsView.BoundingRectViewportUpdate) + self.setRenderHint(QPainter.Antialiasing) + self.setTransformationAnchor(QGraphicsView.AnchorUnderMouse) + self.setResizeAnchor(QGraphicsView.AnchorViewCenter) + + node1 = Node(self) + node2 = Node(self) + node3 = Node(self) + node4 = Node(self) + self.centerNode = Node(self) + node6 = Node(self) + node7 = Node(self) + node8 = Node(self) + node9 = Node(self) + scene.addItem(node1) + scene.addItem(node2) + scene.addItem(node3) + scene.addItem(node4) + scene.addItem(self.centerNode) + scene.addItem(node6) + scene.addItem(node7) + scene.addItem(node8) + scene.addItem(node9) + scene.addItem(Edge(node1, node2)) + scene.addItem(Edge(node2, node3)) + scene.addItem(Edge(node2, self.centerNode)) + scene.addItem(Edge(node3, node6)) + scene.addItem(Edge(node4, node1)) + scene.addItem(Edge(node4, self.centerNode)) + scene.addItem(Edge(self.centerNode, node6)) + scene.addItem(Edge(self.centerNode, node8)) + scene.addItem(Edge(node6, node9)) + scene.addItem(Edge(node7, node4)) + scene.addItem(Edge(node8, node7)) + scene.addItem(Edge(node9, node8)) + + node1.setPos(-50, -50) + node2.setPos(0, -50) + node3.setPos(50, -50) + node4.setPos(-50, 0) + self.centerNode.setPos(0, 0) + node6.setPos(50, 0) + node7.setPos(-50, 50) + node8.setPos(0, 50) + node9.setPos(50, 50) + + self.scale(0.8, 0.8) + self.setMinimumSize(400, 400) + self.setWindowTitle("Elastic Nodes") + + def itemMoved(self): + if not self.timerId: + self.timerId = self.startTimer(1000 / 25) + + def keyPressEvent(self, event): + key = event.key() + + if key == Qt.Key_Up: + self.centerNode.moveBy(0, -20) + elif key == Qt.Key_Down: + self.centerNode.moveBy(0, 20) + elif key == Qt.Key_Left: + self.centerNode.moveBy(-20, 0) + elif key == Qt.Key_Right: + self.centerNode.moveBy(20, 0) + elif key == Qt.Key_Plus: + self.scaleView(1.2) + elif key == Qt.Key_Minus: + self.scaleView(1 / 1.2) + elif key == Qt.Key_Space or key == Qt.Key_Enter: + for item in self.scene().items(): + if isinstance(item, Node): + item.setPos(-150 + qrand() % 300, -150 + qrand() % 300) + else: + super(GraphWidget, self).keyPressEvent(event) + + def timerEvent(self, event): + nodes = [item for item in self.scene().items() if isinstance(item, Node)] + + for node in nodes: + node.calculateForces() + + itemsMoved = False + for node in nodes: + if node.advance(): + itemsMoved = True + + if not itemsMoved: + self.killTimer(self.timerId) + self.timerId = 0 + + def wheelEvent(self, event): + self.scaleView(math.pow(2.0, -event.angleDelta().y() / 240.0)) + + def drawBackground(self, painter, rect): + # Shadow. + sceneRect = self.sceneRect() + rightShadow = QRectF(sceneRect.right(), sceneRect.top() + 5, 5, + sceneRect.height()) + bottomShadow = QRectF(sceneRect.left() + 5, sceneRect.bottom(), + sceneRect.width(), 5) + if rightShadow.intersects(rect) or rightShadow.contains(rect): + painter.fillRect(rightShadow, Qt.darkGray) + if bottomShadow.intersects(rect) or bottomShadow.contains(rect): + painter.fillRect(bottomShadow, Qt.darkGray) + + # Fill. + gradient = QLinearGradient(sceneRect.topLeft(), sceneRect.bottomRight()) + gradient.setColorAt(0, Qt.white) + gradient.setColorAt(1, Qt.lightGray) + painter.fillRect(rect.intersected(sceneRect), QBrush(gradient)) + painter.setBrush(Qt.NoBrush) + painter.drawRect(sceneRect) + + # Text. + textRect = QRectF(sceneRect.left() + 4, sceneRect.top() + 4, + sceneRect.width() - 4, sceneRect.height() - 4) + message = "Click and drag the nodes around, and zoom with the " \ + "mouse wheel or the '+' and '-' keys" + + font = painter.font() + font.setBold(True) + font.setPointSize(14) + painter.setFont(font) + painter.setPen(Qt.lightGray) + painter.drawText(textRect.translated(2, 2), message) + painter.setPen(Qt.black) + painter.drawText(textRect, message) + + def scaleView(self, scaleFactor): + factor = self.transform().scale(scaleFactor, scaleFactor).mapRect(QRectF(0, 0, 1, 1)).width() + + if factor < 0.07 or factor > 100: + return + + self.scale(scaleFactor, scaleFactor) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + qsrand(QTime(0,0,0).secsTo(QTime.currentTime())) + + widget = GraphWidget() + widget.show() + + sys.exit(app.exec_()) diff --git a/examples/graphicsview/embeddeddialogs/No-Ones-Laughing-3.jpg b/examples/graphicsview/embeddeddialogs/No-Ones-Laughing-3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..445567fbdac41a743bfb322e22f5812f7d2a4b95 GIT binary patch literal 30730 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 F{6E+mJP!Z> literal 0 HcmV?d00001 diff --git a/examples/graphicsview/embeddeddialogs/embeddeddialog.py b/examples/graphicsview/embeddeddialogs/embeddeddialog.py new file mode 100644 index 0000000..11b81df --- /dev/null +++ b/examples/graphicsview/embeddeddialogs/embeddeddialog.py @@ -0,0 +1,62 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'embeddeddialog.ui' +# +# Created: Wed May 15 16:13:29 2013 +# by: PyQt5 UI code generator 5.0-snapshot-8d430da208a7 +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_embeddedDialog(object): + def setupUi(self, embeddedDialog): + embeddedDialog.setObjectName("embeddedDialog") + embeddedDialog.resize(407, 134) + self.formLayout = QtWidgets.QFormLayout(embeddedDialog) + self.formLayout.setObjectName("formLayout") + self.label = QtWidgets.QLabel(embeddedDialog) + self.label.setObjectName("label") + self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.label) + self.layoutDirection = QtWidgets.QComboBox(embeddedDialog) + self.layoutDirection.setObjectName("layoutDirection") + self.layoutDirection.addItem("") + self.layoutDirection.addItem("") + self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.layoutDirection) + self.label_2 = QtWidgets.QLabel(embeddedDialog) + self.label_2.setObjectName("label_2") + self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.label_2) + self.fontComboBox = QtWidgets.QFontComboBox(embeddedDialog) + self.fontComboBox.setObjectName("fontComboBox") + self.formLayout.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.fontComboBox) + self.label_3 = QtWidgets.QLabel(embeddedDialog) + self.label_3.setObjectName("label_3") + self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.label_3) + self.style = QtWidgets.QComboBox(embeddedDialog) + self.style.setObjectName("style") + self.formLayout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.style) + self.label_4 = QtWidgets.QLabel(embeddedDialog) + self.label_4.setObjectName("label_4") + self.formLayout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.label_4) + self.spacing = QtWidgets.QSlider(embeddedDialog) + self.spacing.setOrientation(QtCore.Qt.Horizontal) + self.spacing.setObjectName("spacing") + self.formLayout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.spacing) + self.label.setBuddy(self.layoutDirection) + self.label_2.setBuddy(self.fontComboBox) + self.label_3.setBuddy(self.style) + self.label_4.setBuddy(self.spacing) + + self.retranslateUi(embeddedDialog) + QtCore.QMetaObject.connectSlotsByName(embeddedDialog) + + def retranslateUi(self, embeddedDialog): + _translate = QtCore.QCoreApplication.translate + embeddedDialog.setWindowTitle(_translate("embeddedDialog", "Embedded Dialog")) + self.label.setText(_translate("embeddedDialog", "Layout Direction:")) + self.layoutDirection.setItemText(0, _translate("embeddedDialog", "Left to Right")) + self.layoutDirection.setItemText(1, _translate("embeddedDialog", "Right to Left")) + self.label_2.setText(_translate("embeddedDialog", "Select Font:")) + self.label_3.setText(_translate("embeddedDialog", "Style:")) + self.label_4.setText(_translate("embeddedDialog", "Layout spacing:")) + diff --git a/examples/graphicsview/embeddeddialogs/embeddeddialog.ui b/examples/graphicsview/embeddeddialogs/embeddeddialog.ui new file mode 100644 index 0000000..f967b10 --- /dev/null +++ b/examples/graphicsview/embeddeddialogs/embeddeddialog.ui @@ -0,0 +1,87 @@ + + embeddedDialog + + + + 0 + 0 + 407 + 134 + + + + Embedded Dialog + + + + + + Layout Direction: + + + layoutDirection + + + + + + + + Left to Right + + + + + Right to Left + + + + + + + + Select Font: + + + fontComboBox + + + + + + + + + + Style: + + + style + + + + + + + + + + Layout spacing: + + + spacing + + + + + + + Qt::Horizontal + + + + + + + + diff --git a/examples/graphicsview/embeddeddialogs/embeddeddialogs.py b/examples/graphicsview/embeddeddialogs/embeddeddialogs.py new file mode 100644 index 0000000..ac8a5be --- /dev/null +++ b/examples/graphicsview/embeddeddialogs/embeddeddialogs.py @@ -0,0 +1,237 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial Usage +## Licensees holding valid Qt Commercial licenses may use this file in +## accordance with the Qt Commercial License Agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and Nokia. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 2.1 requirements +## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## In addition, as a special exception, Nokia gives you certain additional +## rights. These rights are described in the Nokia Qt LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3.0 as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL included in the +## packaging of this file. Please review the following information to +## ensure the GNU General Public License version 3.0 requirements will be +## met: http://www.gnu.org/copyleft/gpl.html. +## +## If you have questions regarding the use of this file, please contact +## Nokia at qt-info@nokia.com. +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QEvent, QRectF, Qt, QTimeLine +from PyQt5.QtGui import (QBrush, QColor, QPainter, QPainterPath, QPixmap, + QTransform) +from PyQt5.QtWidgets import (QApplication, QDialog, QGraphicsItem, + QGraphicsProxyWidget, QGraphicsScene, QGraphicsView, QStyleFactory, + QWidget) + +import embeddeddialogs_rc +from embeddeddialog import Ui_embeddedDialog + + +class CustomProxy(QGraphicsProxyWidget): + def __init__(self, parent=None, wFlags=0): + super(CustomProxy, self).__init__(parent, wFlags) + + self.popupShown = False + self.currentPopup = None + + self.timeLine = QTimeLine(250, self) + self.timeLine.valueChanged.connect(self.updateStep) + self.timeLine.stateChanged.connect(self.stateChanged) + + def boundingRect(self): + return QGraphicsProxyWidget.boundingRect(self).adjusted(0, 0, 10, 10) + + def paintWindowFrame(self, painter, option, widget): + color = QColor(0, 0, 0, 64) + + r = self.windowFrameRect() + right = QRectF(r.right(), r.top()+10, 10, r.height()-10) + bottom = QRectF(r.left()+10, r.bottom(), r.width(), 10) + intersectsRight = right.intersects(option.exposedRect) + intersectsBottom = bottom.intersects(option.exposedRect) + if intersectsRight and intersectsBottom: + path = QPainterPath() + path.addRect(right) + path.addRect(bottom) + painter.setPen(Qt.NoPen) + painter.setBrush(color) + painter.drawPath(path) + elif intersectsBottom: + painter.fillRect(bottom, color) + elif intersectsRight: + painter.fillRect(right, color) + + super(CustomProxy, self).paintWindowFrame(painter, option, widget) + + def hoverEnterEvent(self, event): + super(CustomProxy, self).hoverEnterEvent(event) + + self.scene().setActiveWindow(self) + if self.timeLine.currentValue != 1: + self.zoomIn() + + def hoverLeaveEvent(self, event): + super(CustomProxy, self).hoverLeaveEvent(event) + + if not self.popupShown and (self.timeLine.direction() != QTimeLine.Backward or self.timeLine.currentValue() != 0): + self.zoomOut() + + def sceneEventFilter(self, watched, event): + if watched.isWindow() and (event.type() == QEvent.UngrabMouse or event.type() == QEvent.GrabMouse): + self.popupShown = watched.isVisible() + if not self.popupShown and not self.isUnderMouse(): + self.zoomOut() + + return super(CustomProxy, self).sceneEventFilter(watched, event) + + def itemChange(self, change, value): + if change == self.ItemChildAddedChange or change == self.ItemChildRemovedChange : + if change == self.ItemChildAddedChange: + self.currentPopup = value + self.currentPopup.setCacheMode(self.ItemCoordinateCache) + if self.scene() is not None: + self.currentPopup.installSceneEventFilter(self) + elif self.scene() is not None: + self.currentPopup.removeSceneEventFilter(self) + self.currentPopup = None + elif self.currentPopup is not None and change == self.ItemSceneHasChanged: + self.currentPopup.installSceneEventFilter(self) + + return super(CustomProxy, self).itemChange(change, value) + + def updateStep(self, step): + r = self.boundingRect() + self.setTransform(QTransform() \ + .translate(r.width() / 2, r.height() / 2)\ + .rotate(step * 30, Qt.XAxis)\ + .rotate(step * 10, Qt.YAxis)\ + .rotate(step * 5, Qt.ZAxis)\ + .scale(1 + 1.5 * step, 1 + 1.5 * step)\ + .translate(-r.width() / 2, -r.height() / 2)) + + def stateChanged(self, state): + if state == QTimeLine.Running: + if self.timeLine.direction() == QTimeLine.Forward: + self.setCacheMode(self.NoCache) + elif state == QTimeLine.NotRunning: + if self.timeLine.direction() == QTimeLine.Backward: + self.setCacheMode(self.DeviceCoordinateCache) + + def zoomIn(self): + if self.timeLine.direction() != QTimeLine.Forward: + self.timeLine.setDirection(QTimeLine.Forward) + if self.timeLine.state() == QTimeLine.NotRunning: + self.timeLine.start() + + def zoomOut(self): + if self.timeLine.direction() != QTimeLine.Backward: + self.timeLine.setDirection(QTimeLine.Backward) + if self.timeLine.state() == QTimeLine.NotRunning: + self.timeLine.start() + + +class EmbeddedDialog(QDialog): + def __init__(self, parent=None): + super(EmbeddedDialog, self).__init__(parent) + + self.ui = Ui_embeddedDialog() + self.ui.setupUi(self) + self.ui.layoutDirection.setCurrentIndex(self.layoutDirection() != Qt.LeftToRight) + + for styleName in QStyleFactory.keys(): + self.ui.style.addItem(styleName) + if self.style().objectName().lower() == styleName.lower(): + self.ui.style.setCurrentIndex(self.ui.style.count() -1) + + self.ui.layoutDirection.activated.connect(self.layoutDirectionChanged) + self.ui.spacing.valueChanged.connect(self.spacingChanged) + self.ui.fontComboBox.currentFontChanged.connect(self.fontChanged) + self.ui.style.activated[str].connect(self.styleChanged) + + def layoutDirectionChanged(self, index): + if index == 0: + self.setLayoutDirection(Qt.LeftToRight) + else: + self.setLayoutDirection(Qt.RightToLeft) + + def spacingChanged(self, spacing): + self.layout().setSpacing(spacing) + self.adjustSize() + + def fontChanged(self, font): + self.setFont(font) + + def setStyleHelper(self, widget, style): + widget.setStyle(style) + widget.setPalette(style.standardPalette()) + for child in widget.children(): + if isinstance(child, QWidget): + self.setStyleHelper(child, style) + + def styleChanged(self, styleName): + style = QStyleFactory.create(styleName) + if style: + self.setStyleHelper(self, style) + + # Keep a reference to the style. + self._style = style + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + scene = QGraphicsScene() + scene.setStickyFocus(True) + + for y in range(10): + for x in range(10): + proxy = CustomProxy(None, Qt.Window) + proxy.setWidget(EmbeddedDialog()) + + rect = proxy.boundingRect() + + proxy.setPos( x * rect.width()*1.05, y*rect.height()*1.05 ) + proxy.setCacheMode(QGraphicsItem.DeviceCoordinateCache) + scene.addItem(proxy) + + scene.setSceneRect(scene.itemsBoundingRect()) + + view = QGraphicsView(scene) + view.scale(0.5, 0.5) + view.setRenderHints(view.renderHints() | QPainter.Antialiasing | QPainter.SmoothPixmapTransform) + view.setBackgroundBrush(QBrush(QPixmap(':/No-Ones-Laughing-3.jpg'))) + view.setViewportUpdateMode(QGraphicsView.BoundingRectViewportUpdate) + view.show() + view.setWindowTitle("Embedded Dialogs Demo") + + sys.exit(app.exec_()) diff --git a/examples/graphicsview/embeddeddialogs/embeddeddialogs.qrc b/examples/graphicsview/embeddeddialogs/embeddeddialogs.qrc new file mode 100644 index 0000000..33be503 --- /dev/null +++ b/examples/graphicsview/embeddeddialogs/embeddeddialogs.qrc @@ -0,0 +1,5 @@ + + + No-Ones-Laughing-3.jpg + + diff --git a/examples/graphicsview/embeddeddialogs/embeddeddialogs_rc.py b/examples/graphicsview/embeddeddialogs/embeddeddialogs_rc.py new file mode 100644 index 0000000..3e0908c --- /dev/null +++ b/examples/graphicsview/embeddeddialogs/embeddeddialogs_rc.py @@ -0,0 +1,1957 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Wed May 15 16:12:39 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x78\x0a\ +\xff\ +\xd8\xff\xe0\x00\x10\x4a\x46\x49\x46\x00\x01\x01\x00\x00\x01\x00\ +\x01\x00\x00\xff\xdb\x00\x43\x00\x05\x03\x04\x04\x04\x03\x05\x04\ +\x04\x04\x05\x05\x05\x06\x07\x0c\x08\x07\x07\x07\x07\x0f\x0b\x0b\ +\x09\x0c\x11\x0f\x12\x12\x11\x0f\x11\x11\x13\x16\x1c\x17\x13\x14\ +\x1a\x15\x11\x11\x18\x21\x18\x1a\x1d\x1d\x1f\x1f\x1f\x13\x17\x22\ +\x24\x22\x1e\x24\x1c\x1e\x1f\x1e\xff\xdb\x00\x43\x01\x05\x05\x05\ +\x07\x06\x07\x0e\x08\x08\x0e\x1e\x14\x11\x14\x1e\x1e\x1e\x1e\x1e\ +\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\ +\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\ +\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\xff\xfe\x00\ +\x13\x4e\x6f\x20\x4f\x6e\x65\x27\x73\x20\x4c\x61\x75\x67\x68\x69\ +\x6e\x67\xff\xc0\x00\x11\x08\x02\x00\x02\x00\x03\x01\x22\x00\x02\ +\x11\x01\x03\x11\x01\xff\xc4\x00\x1a\x00\x00\x03\x01\x01\x01\x01\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x03\x04\x01\x05\x00\ +\x06\xff\xc4\x00\x3e\x10\x00\x02\x01\x03\x03\x02\x04\x03\x07\x02\ +\x05\x04\x03\x00\x03\x01\x01\x02\x00\x03\x11\x21\x04\x12\x31\x41\ +\x51\x13\x22\x61\x71\x05\x32\x81\x14\x23\x42\x52\x91\xa1\xb1\xc1\ +\xd1\x06\x24\x33\x62\xf0\x15\x43\x72\xe1\x25\x82\xf1\x34\x53\x63\ +\x92\xff\xc4\x00\x19\x01\x01\x01\x01\x01\x01\x01\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x01\x00\x02\x03\x05\x06\xff\xc4\x00\x20\ +\x11\x01\x01\x01\x00\x03\x01\x01\x01\x01\x00\x03\x00\x00\x00\x00\ +\x00\x00\x01\x11\x02\x21\x31\x41\x12\x51\x61\x13\x32\x42\xff\xda\ +\x00\x0c\x03\x01\x00\x02\x11\x03\x11\x00\x3f\x00\xb0\x55\x5d\xa2\ +\xbd\x7a\x8c\xf7\xf9\x43\x1c\xb7\xfe\xa0\x3e\xb3\x51\xb8\x9a\x75\ +\xdd\x7d\x15\xac\x27\x3b\x53\x55\xab\x55\x2d\xc0\x18\x50\x0e\x00\ +\x80\x2a\xe6\xdc\xcf\xa4\xfc\xbc\x7d\x75\x06\xbb\x52\x00\x1f\x68\ +\xab\x8e\x2e\xc6\x2c\xeb\xb5\x04\xff\x00\xfc\x87\xbf\x5b\x99\x1a\ +\xd4\xb8\xc1\xb5\xbb\xcc\x35\x0f\x18\x96\x45\xae\x82\x6b\x75\x24\ +\xe5\xc3\x5b\xba\x83\x3d\x57\x58\xc0\x10\x52\x91\xf7\x41\x20\xb9\ +\xd9\x8f\xd0\x4c\x2d\x71\xce\x65\x91\x6a\xaf\xb4\xa1\x37\x6d\x35\ +\x3b\xf5\xb1\x22\xf3\xa1\xf0\x7d\x55\x0a\x75\xc0\x08\xe9\x7f\xf7\ +\x5c\x4e\x0d\xcd\xfb\xc6\xd2\xaa\x55\x83\x29\x00\xca\xf1\xd8\xa5\ +\x75\x7e\x23\x41\x69\xea\x59\x4b\x85\x24\xdf\x22\xd2\x66\xa3\x51\ +\x46\xe2\x2e\x3b\xae\x65\x9a\xa6\x1a\xdf\x87\x25\x71\xfe\xad\x2c\ +\x3f\xb4\xe7\x0a\xcc\xb6\x28\xc4\x11\xce\x61\xc7\x70\xd7\xa2\xd9\ +\xf6\x37\x38\x38\x30\xcd\x64\x6f\x9b\xca\x4f\x51\x27\xae\x08\xc9\ +\xc8\x3d\x44\xd3\x2c\x5a\x86\x9d\x43\x6c\x83\xfb\x88\x65\x55\xbe\ +\xf2\x9f\x1d\x47\x69\x38\x3b\x96\xdd\x47\x10\xe8\x54\x2a\x6e\x0f\ +\x31\x4a\x2b\xe4\xa8\xfc\xaa\x3a\xc2\x57\xc8\xb0\xb1\xe6\xd3\x35\ +\x2b\x77\x0e\x9d\x40\xb8\xed\x06\x91\xcd\xb8\x82\x5f\xa9\x01\xe8\ +\x6e\x27\x80\x64\x74\xcb\x5b\x9b\x5e\x55\x4f\x3a\x6a\x88\x79\x59\ +\x2a\x60\xc2\x15\x14\x89\x22\xe7\x31\xc9\x6b\x5c\x88\x14\x96\xcb\ +\x68\xdb\x7e\x93\x34\xc6\xd9\x67\x98\x29\x1c\x40\xbd\x8c\xdd\xc2\ +\xd7\x81\x22\xa1\x0a\xc0\x82\x62\x2a\x6d\x2c\x19\x70\x7a\x88\x75\ +\x9b\x24\xde\xf2\x75\x27\x75\xf8\x1d\x66\xe3\x2e\xca\xb0\x1f\xe1\ +\x6a\xb7\x3c\xd4\x13\x82\x48\xb9\xf5\x9d\x6d\x43\xff\x00\xf0\x01\ +\x6d\x60\xd5\x70\x3d\x27\x11\xb9\xdc\x3b\xcb\x8c\xf5\x72\x1f\x0a\ +\x2d\xde\x30\x5c\xd2\x6b\xf7\x8a\xcc\x65\xfe\xec\xdb\xbc\xd3\x21\ +\xb6\x26\x15\x33\xd0\x94\xf4\x92\x60\xbc\x60\x24\x75\x9e\x84\x82\ +\x09\xa1\xd8\x0b\x03\x09\x4a\xb1\xb3\x2e\x7b\x83\x30\x00\x27\xb6\ +\x5c\xc8\x9b\x4d\x14\xe3\x71\x1e\xe2\x3d\x29\x2d\xef\xe2\x0b\x4c\ +\xd3\xd0\x7d\xa7\x95\xbf\x53\x88\xf5\x45\x16\xdc\xfb\xbd\x04\xcd\ +\xad\x48\xf5\x35\xa7\xbb\x24\x9f\xda\x74\x6b\xdc\xba\xd8\x58\x05\ +\x03\x8f\x49\x25\x30\xb7\xc0\xfd\x65\xe0\x78\xb4\xd4\xf2\xc0\x5a\ +\xd3\x9d\x6a\x14\x94\xcb\x35\xee\x4f\x6b\xce\xa6\x9a\x92\xe9\xa9\ +\x0a\xd5\x16\xee\x7e\x45\xfe\xa6\x2b\x49\x48\x51\x5f\x1e\xaf\x17\ +\xf2\xaf\x78\x75\x6a\x35\x66\x2c\x79\xeb\x31\x6e\xb5\x3a\x26\xb6\ +\xfa\x8e\x5d\xdb\x26\x79\x54\xe2\xec\x2d\x35\xb2\x05\xe1\x26\x40\ +\x02\x48\x0c\xb7\x3c\x88\x02\x8d\x42\x40\x51\x72\x78\xb4\xa8\x53\ +\xbb\x5c\xe7\xd2\x31\x17\x6b\x82\x71\x6c\xd8\x4b\x56\x25\x34\x08\ +\x5b\x31\x04\xfa\x18\xdd\x3e\xa0\xa9\x14\x8d\x22\x47\x17\xea\x22\ +\x4a\x8f\x99\x14\x93\x7e\x4c\x65\x7a\xc3\x4f\x48\xd4\xa8\x6e\xe3\ +\x85\x92\x67\xc5\xd6\xa3\x52\xf0\x29\x10\x0d\xfc\xcd\x7b\x5c\x4e\ +\x30\xd1\xb2\xdc\x3d\x4a\x40\x11\xf9\xa6\xd7\xaa\xf5\x77\xb3\x31\ +\xbb\x5f\xaf\x79\x25\x67\x0a\xa8\x73\x7b\x4e\x9c\x65\xf1\x9b\x75\ +\x76\x87\x4b\x4e\x85\x52\xff\x00\x6c\x40\xa4\x00\x76\xe7\xae\x27\ +\x67\x4a\x74\xa0\x55\xaf\xa7\x0a\xd5\x4e\x49\x61\x80\xd6\xe7\xf5\ +\x9f\x28\xb5\x0d\x36\x65\xb6\x09\xc4\xae\xbd\x71\x42\x92\x57\xbd\ +\xae\x6e\x00\x3d\x47\x3f\x49\x72\xe3\x6a\x97\x09\xd7\x5e\xaa\x3b\ +\xb1\xbb\x30\x0f\xf5\xeb\x12\x08\x2b\x44\x8f\xc4\x85\x7d\xc8\x38\ +\xfe\x6d\x1f\x57\x69\xfb\xc5\xf9\x41\xb7\xba\xb7\x07\xfe\x77\x91\ +\x3d\xc5\x0a\x89\xc3\x52\x7d\xe3\xdb\x83\xfd\x26\xe3\x35\x8c\xde\ +\x0d\x71\xb3\x28\x7c\xc0\x5f\x99\x7f\xc6\x9c\xfd\xb8\xb8\xe1\xe9\ +\xa9\xb7\xd3\xb4\xe6\xd7\x7f\x2f\x88\x54\x1a\x6c\x72\x2f\xf2\xb7\ +\x5b\x7b\xcb\x3e\x25\x53\xc6\xf8\x7e\x8f\x58\xab\x85\x5f\x09\xbd\ +\x08\xe2\x5f\x60\x9e\x25\x14\x52\xa9\x3e\x1b\x6d\x6e\xc6\x26\xa6\ +\x89\xd5\x88\x74\x36\xee\x05\xe5\x6c\x12\xaa\xd3\xaa\xa3\xcc\x70\ +\x56\xf6\xfd\x26\x2d\x57\x56\x22\x9d\x52\x2d\xc8\x6e\x91\xda\x92\ +\xe9\x74\xcd\x53\x55\x49\x14\xdf\x73\x01\xce\x67\x53\xfc\x4c\xf5\ +\x3f\xea\x95\x9d\x37\x2e\xc7\x0a\x2d\xe8\x00\x89\xd3\xea\xda\x86\ +\xa6\x9d\x4a\xa9\x4d\xac\xc0\xdc\xa8\x3c\x1e\xf3\xb5\xf1\x47\xa6\ +\x3e\x21\x51\x2c\x08\xa8\x9e\x20\x3c\x83\x33\x6d\xd3\x27\x4f\x98\ +\xaf\x59\x6b\x5b\xed\x1a\x60\xd8\xbe\xe4\xc1\x8a\xa5\x4a\x82\xd4\ +\x0f\x47\x50\x52\xc7\x8a\x8a\x47\xf1\x3b\xaa\xda\x7a\x94\x95\xdb\ +\x45\x48\x82\x6d\x63\x71\x7f\xd0\xc9\x3f\xc4\x54\x74\x54\x3c\x25\ +\xd3\xa7\x87\x58\x8b\xd4\x40\xc4\x85\xed\xf5\x8c\xbd\xe0\xb3\xe9\ +\x02\x8e\xb8\x1d\xb4\x6b\x25\x45\x3f\x2d\xaa\x8c\xfe\xa6\x0a\x8d\ +\x42\x56\xa9\xa6\xd4\xab\x23\x6d\xbe\xd3\x16\x8d\xe1\x20\x0f\x66\ +\xab\x6b\xa0\x39\x0b\x27\x4a\xae\xda\x9f\x12\xa3\x12\xdd\x49\x9a\ +\xc0\xac\x1a\x29\x54\x35\x70\xc6\xca\x2d\x6e\xb2\xca\x5a\xe4\x5a\ +\x61\x69\x22\xd3\x37\xbe\xe0\x2e\xdf\xa9\x91\x6a\xd1\x7c\x95\x71\ +\x91\x6f\xd2\x6e\x8e\x9a\xbd\x4f\x31\x01\x00\xdc\xc7\xd2\x16\x1d\ +\x46\x49\x51\x83\x06\xf7\xf3\x1c\x43\x24\x00\x73\x33\x01\x07\xaf\ +\x33\x4c\xbc\x1a\xdc\xf1\x35\x58\x1e\xb1\x64\x83\x32\xf9\xe2\x49\ +\x4a\xb0\xb6\x0c\xf0\x60\x4f\x17\x89\x56\xe9\xfa\x4f\x33\x10\x71\ +\x24\x61\x60\x0e\x26\xa3\x67\x20\x44\x96\xbf\x59\xb4\xce\x09\xbf\ +\xa0\x92\x75\xfe\x0b\xaa\x4a\x7a\x91\x4a\xa1\xfb\xaa\x9e\x56\xcc\ +\x57\xc4\x68\x36\x97\x56\xf4\x4f\x03\x2b\xea\x24\x09\x70\xdd\xbd\ +\x67\x66\xa1\x3a\xff\x00\x85\x0a\xbc\xd7\xd3\x61\xbb\x95\x99\xb3\ +\x2e\xb5\xec\x72\x5c\xe3\xbc\x15\xa8\x54\x77\x07\xa1\x9a\x6f\x6c\ +\xfd\x22\xdb\xe5\xf6\x9a\x64\x45\x41\x37\x4e\x7b\x4c\xfc\x5b\x80\ +\xf7\x8b\x18\xcf\x58\xd4\x60\x5a\xcd\x83\x24\xab\x7d\x8a\xbf\x75\ +\xcd\xe7\x98\x00\x55\x94\x8d\xa7\xf6\x82\xcb\xfe\x5c\x13\xf8\x5b\ +\x3e\xc6\x2e\x91\xf3\x77\x53\xcc\x0a\xed\x3b\x79\x85\xff\x00\x10\ +\xb4\x48\xb8\x36\x3d\xe1\xa8\x28\xca\x2e\x2c\x00\x20\xcf\x56\xf2\ +\xd6\x71\xeb\x02\xa6\x8b\x8d\xa2\xf1\x9b\x87\x79\x0a\xbe\xde\xb0\ +\xd6\xaf\x78\x61\xd5\x24\xde\x2e\xab\x81\x71\xd6\x07\x89\xe9\x14\ +\x49\x66\xc7\x26\x52\x0d\x7b\x6e\xf6\xcf\x03\x26\x4f\x59\xae\xd6\ +\x5c\x28\xe2\x51\x58\x10\x3c\x31\xf5\x3d\xe4\xae\xa4\x1e\x26\xa0\ +\xae\x8e\xac\xff\x00\xf0\xda\x65\x07\xf1\x1f\xe4\xce\x49\xb9\xb8\ +\x9d\x3a\xa8\x5f\xe1\x54\x6e\x78\x6f\xef\x21\x2a\x00\x25\x4d\xc4\ +\xb8\xaa\x11\x90\x00\x8d\x44\x25\x2d\x15\x4c\x82\xd6\x94\x21\x00\ +\x5b\x16\x8d\x40\xf0\x49\x3c\x8f\xd6\x18\xd3\x38\x22\xe4\x47\x0b\ +\x0f\x36\xd0\x7d\xf8\x8e\xa5\x52\xa5\x43\xb3\x70\x0b\xd8\x0c\x42\ +\xd3\x89\xd7\x4e\xe7\x93\x6f\x78\xfa\x3a\x36\xa8\x76\xab\x0b\xc7\ +\x84\xa6\x2f\xb4\x5b\xd4\xc2\x5a\xce\x84\xec\x3b\x07\x70\x26\x34\ +\xe1\xc7\xe1\x06\x95\x2f\x12\xab\x80\x3b\x0e\x64\xf6\x54\xc5\x30\ +\xaa\x3b\xf2\x65\x14\x9a\xb5\x70\x40\x27\x6f\x73\xc4\x55\x52\xaa\ +\xc4\x2d\x98\x8e\xa7\xfb\x43\x6f\xd2\x04\x52\x4d\xd9\xaf\x1a\xb4\ +\xcd\xf8\x82\x8e\xc7\xbf\xe9\x1b\x4d\x98\xb5\xb2\x64\x8c\xa7\x4c\ +\x92\x2c\x27\x4b\x47\x40\x8f\x3b\x82\x15\x7f\x79\xed\x0e\x99\xaa\ +\x58\x8c\x7a\x4b\xaa\x02\xb6\x43\xc0\xe9\x39\xde\x5f\x1b\x91\x33\ +\xb7\x8a\x7c\xc2\xc0\x70\x27\x96\x8b\x03\x71\x28\x08\xc7\x37\xb0\ +\xef\x0c\x10\xa3\x17\xf7\x99\xd3\x89\x8d\x22\x79\x84\x86\x8a\x1c\ +\x00\xc7\xde\x6b\x30\x6f\x29\xe0\xc0\xf0\xc0\x37\x19\x92\x3b\xc4\ +\x24\xe1\x40\xf6\x98\xe0\x6d\x26\xf6\xe9\x02\xcd\xde\xd0\x1d\xf6\ +\xf3\x99\x22\xcd\x42\xa6\xca\x2c\x7a\x4e\x6e\xb8\x9a\xb5\x0d\xdb\ +\x8e\x65\xac\xe4\xab\x37\x6e\x27\x37\x50\xce\x01\x05\x7d\xe6\xf8\ +\xb3\x53\xb1\xb5\x85\xfd\x24\xf5\xbc\xd4\xc7\xa1\x36\xfa\xc6\x39\ +\x2c\x6c\x17\x37\xc4\x6b\x68\xeb\x14\xc0\x00\x9e\x93\xa4\xe9\x84\ +\x56\xfb\xb5\x39\xc7\x58\x55\xaa\x0a\x84\x53\x7c\x28\xe3\x1f\xbc\ +\x16\xa6\xd4\xcd\xaa\x2d\xbd\x26\x3b\x52\x57\x20\xdc\xb7\x49\xa0\ +\xbb\x47\x4c\xd4\xa0\x29\x8f\x30\x2a\x50\x9f\x4e\x87\xe9\x21\x23\ +\xef\x83\x31\xe7\xca\xff\x00\xc1\x8e\xd2\x6a\x9b\x4f\x55\x5a\x9a\ +\x80\x3b\x77\x89\xd5\x37\xde\x39\x55\xb0\x63\x71\xe9\x09\x3b\x4c\ +\x54\xa3\x49\x5a\x8d\x47\x39\xf2\xb8\xb5\xef\xd8\x89\x57\xc3\xe9\ +\xa7\x85\x5b\xe1\xcd\x77\x0e\x37\xd2\x27\x82\x47\x69\x15\x45\x35\ +\xa9\x06\x19\x75\xc1\xb7\x5e\xc6\x16\x92\xbf\xd9\xea\x27\x88\x72\ +\x8d\x75\xb7\x20\xc6\xc5\x08\x63\x52\xa3\x6d\x38\x0b\x8e\xc1\x61\ +\xb0\xb8\xda\x8c\x19\x80\xb5\xfb\xca\xfe\x35\x42\xf5\x16\xbd\x2b\ +\x78\x35\xfc\xe2\xdd\xfa\xc8\x86\xda\x62\xc3\x2f\xd2\xd1\x97\x45\ +\xe9\xe0\xb6\xa6\x03\x5c\x00\x6f\xee\x67\x5f\xe2\x6f\xbf\x49\xa0\ +\xd4\x5e\xf7\x4d\xac\x3d\xa7\x1a\xa3\x6e\x21\x98\xdc\x9c\xda\x75\ +\xf4\x8e\x95\x7f\xc3\xb5\x1a\xa0\x2f\xe0\x54\x0e\x2f\xd6\xf8\xb7\ +\xb4\xcf\x2f\x94\xc2\x35\x1a\xa3\xa7\x0b\x5c\x0f\xbc\x71\xe4\x1f\ +\x97\xd6\x73\xaf\x62\xd5\xea\xf9\xbf\x2d\xfa\x98\xa7\xac\xd5\x9d\ +\xbc\x43\x76\x63\x7b\x9e\xf0\xd8\x82\x05\x2e\x0a\x8f\xde\x6a\x4c\ +\x1a\x43\x12\xcc\x58\x93\xba\xf7\xbc\x36\x1e\x22\xef\x1f\x30\xf9\ +\x84\xc0\x2c\x70\x23\x13\xc8\x77\x08\x85\x79\xad\xa0\x04\x5f\xca\ +\x6f\xfc\x40\x27\x66\x88\x81\x86\xa8\x6d\x8e\xc2\x3f\x47\xb0\x6e\ +\x51\x73\x4e\xa8\xb0\xb7\xe1\x6e\xc6\x23\x5f\xf7\x6b\x46\x9d\x8d\ +\xd5\x2f\xfa\x98\x7f\x8d\x25\xa8\x00\x18\x31\x6f\x84\x07\xd6\x16\ +\xa6\xea\x08\xe4\xc4\x8b\x9a\x66\xdd\x3d\x62\xc8\x49\xce\x21\x83\ +\x71\x6e\xb1\x4b\xba\xf0\xd4\x8b\x08\x44\x31\xc4\xf5\xee\x3d\x60\ +\xf3\x88\x40\x11\xd3\x11\x4d\x50\x4f\x31\xeb\x4d\x40\x17\x88\xf1\ +\x2c\x71\x8f\x58\x75\x49\xdc\x2e\x7a\x49\x1e\x19\x2d\x8e\x44\xbb\ +\xe1\x5a\xe4\xd3\x6a\x43\x3a\xdd\x0f\x95\xc7\xa1\x9c\x94\x2b\x7c\ +\xb1\x87\xb9\x09\xc1\x30\xb3\x4c\xb8\xbf\xe2\x94\xa9\x69\xf5\x6c\ +\x8a\x3c\x87\x2a\x47\x50\x64\x8e\x88\x5b\x07\x06\x57\x75\xd5\xfc\ +\x33\x39\x7d\x3f\xee\xa6\x44\xa0\x60\x06\x94\x55\x8d\x48\x83\x83\ +\x71\xd2\x0e\xc3\xbb\xd2\x69\x7d\xac\x6c\x6f\x09\x6b\x92\xb6\x20\ +\x5a\x20\xda\x2e\x18\x35\x12\x70\xf8\x1e\xfd\x20\xad\x36\x0f\x66\ +\x04\x01\x30\x14\x60\x6f\x82\x0c\x73\xef\x74\x1f\x78\x59\x60\x46\ +\x95\x37\xdd\x4f\xff\x00\x59\xed\x41\xb9\x46\xee\xbf\xfa\x93\xb0\ +\x64\x20\x11\x68\xf7\x3b\xe8\x2b\x7e\x56\x20\xc9\x04\x03\x6e\xc2\ +\x12\x91\x07\x24\x5a\x78\x5e\xf2\x46\x5f\xac\xca\x75\x00\xa8\x09\ +\x03\x99\x80\x6e\x10\x48\xb6\x4f\x32\x26\x6a\xc1\xf1\x48\x8b\x03\ +\x78\xb7\x5e\x91\xda\xa0\x59\x52\xaf\x71\x12\xac\x05\xbb\x88\x40\ +\xa1\xc9\xff\x00\xa4\x81\xd9\xed\x20\x43\xb5\x89\x3c\x75\x13\xa9\ +\x8a\xbf\x0c\xa9\xd0\xab\x5c\xff\x00\x79\xcb\x36\xb9\x8c\x54\x25\ +\x7c\x3a\xb7\xb5\xc7\x78\xc4\x62\x48\xe9\x08\x59\xe8\x9b\x8f\x32\ +\xf1\x16\x14\xdc\x45\x28\x04\x95\x00\x9f\x49\x7e\x91\x07\x85\xcf\ +\x3c\xce\x6d\x2b\xf0\x71\x3a\x3a\x57\x1e\x5e\xd6\xcc\xcf\x23\x07\ +\x54\xa9\x63\xd1\x47\x03\xd6\x65\x20\x19\xf6\x1f\x94\x65\xa7\x89\ +\xbd\x43\xe9\x98\x0e\xdb\x34\xe2\xe6\xcd\x50\xdc\xfb\x4c\x95\x9a\ +\x5a\xa6\xa3\xbf\x86\x46\xd5\x43\xb4\x76\x93\x2e\xe2\x73\xfc\x45\ +\x69\x2a\x78\x75\x81\x5b\x8e\xf9\x96\x55\x1e\x27\x00\x21\xf4\xeb\ +\x0b\x32\x90\x0b\xf6\x95\x69\xc7\x0c\x4d\xa2\x69\x96\x07\x6b\x08\ +\xec\x91\xc8\xb0\xe9\x05\x1d\x2d\x36\xa4\x0c\x2d\xc0\xe2\x5a\xac\ +\x0a\xee\x6b\xda\x72\xb4\xe2\xc4\x16\xe4\xf4\x95\x2d\x70\x5a\xd7\ +\xf2\xce\x76\x37\x2a\xc2\xe0\xf1\xc7\x68\xb6\x6b\xc4\x35\x4d\xa6\ +\xc3\x33\xc1\xcd\xa1\x87\x44\xc0\xdc\x66\x36\xe1\x46\x06\x7b\xc5\ +\x03\x9b\xf5\x99\xbb\xc8\x49\x92\x30\xb8\xeb\xcf\x79\x3d\x7b\x35\ +\xb3\xe9\x13\x52\xa3\x13\x32\x8b\x10\xe0\x93\x8b\xe6\xf1\xc1\xa0\ +\xd5\xd5\xd8\x82\x9d\x3c\x66\xe7\xd6\x73\x35\x0e\x58\xdc\x93\x79\ +\x6e\xb1\xd5\x99\x95\x70\x41\xb7\xbc\xe7\xd4\x06\xe7\xa4\xe9\xc5\ +\x8a\xdd\x13\x05\x77\xaa\x72\x29\xa1\x61\xef\xd2\x25\x2b\x3b\x12\ +\xcc\xcd\x7e\xf1\xd4\x17\x6d\x3a\xe4\x70\x53\xfa\x89\x15\x5a\x97\ +\x20\x70\x07\x00\x4d\xc0\x65\x6a\xcf\x55\x7c\xcd\xb8\xae\x01\x32\ +\x46\x3b\x8e\xee\xbd\x63\x1c\x92\xe1\xfe\x86\x61\xb2\x9f\x59\xa1\ +\x4e\x74\x52\xab\xe1\xdf\x76\xd0\x48\xef\xed\x05\x54\x35\xd1\xcd\ +\xd8\x9c\x4c\x2c\xc6\x88\x61\xf8\x4d\x8f\xb7\x48\x92\x08\x20\xde\ +\xc6\x08\xda\x6c\xd4\xea\x10\x17\xc8\x45\x98\x09\x95\xb4\xf6\x6c\ +\xb0\x27\xa1\x1d\x60\x1a\xad\xb8\x93\xd7\x98\xda\x6f\xe2\x8f\x0b\ +\x1b\xc7\xca\x7f\xa4\x42\xbf\x87\xd4\x6a\xd4\x5b\x41\x59\x30\xdf\ +\xe9\x13\xf9\xbf\xf7\x22\xab\x41\xa9\xb1\xec\x0f\xcb\xd4\x18\x5e\ +\x21\x5b\x03\x80\xbf\xb4\xab\x59\xfe\x62\x88\xd5\x53\x37\x6c\x0a\ +\x83\xd7\xbc\x3c\xa5\xc7\xa8\x19\xaa\x05\x1c\x93\x69\xdb\xf8\x75\ +\x41\xe3\x9f\x85\x9f\x92\xa5\x16\x42\x4f\x56\xe6\xf3\x9f\x45\x00\ +\x7f\x11\x96\xc5\x05\xf8\xeb\x05\x0d\x5a\x5a\x9a\x75\xc6\x4a\x9d\ +\xc0\xfd\x65\x7b\x13\xa4\x9b\x36\xd6\x28\xe0\x82\x0e\x7e\x90\xef\ +\xbf\xef\x3f\x10\xf9\xbf\xbc\xe9\x7c\x6f\x4c\xab\xad\x3a\x8a\x6b\ +\xe4\xac\xbe\x20\xfa\xf3\x39\x8a\x76\x36\x17\x3f\xcc\xd4\xbb\x15\ +\x98\x32\xa1\x97\x70\xe7\xac\xf2\xf1\x62\x38\x8c\x5b\x0b\x1b\xf9\ +\x4f\x1e\x90\x99\x70\x4a\x0c\x75\xf4\x86\xa3\x3e\x1d\x50\xd3\xae\ +\x05\x83\x23\x7c\xca\x66\xfc\x58\xd3\xaf\x59\x2b\x53\x04\x53\x2b\ +\x61\xdc\x5a\x05\x3f\xb9\xa2\xd5\x1b\xe7\x61\x65\x1f\xd6\x6e\x9f\ +\x6d\x5a\x6c\x97\x00\xf2\x3d\xe1\xf7\x57\xf8\x46\xa2\x91\x77\x2c\ +\x49\x3e\xc2\x4e\x69\x94\x3f\x23\x89\x66\x9a\x95\x1f\x05\xcd\x4f\ +\x35\xec\x01\xbd\x8a\xcc\xa9\x4e\xe0\xd3\x73\x67\xb7\x91\xba\x34\ +\x75\x22\x6b\x7f\xfd\x5f\x58\x00\x8d\xd6\xd9\x6f\xa4\xda\x8c\xe8\ +\xdb\x4f\x4e\x62\xcb\x9b\xfc\xc4\x44\x1b\x71\xf9\xbf\x68\xb6\x3b\ +\xbf\x14\xf3\x54\x21\x41\x9a\x2b\x5c\x65\x10\xfd\x20\x40\xbc\xf4\ +\x8d\xaa\x18\xb9\x1e\x93\x29\x9a\x6e\x72\x96\xf6\x31\xb5\x7c\x3f\ +\x16\xca\xc4\x7b\x89\x22\x91\x48\x39\x8c\x5b\x9c\xda\x68\x05\x6e\ +\x46\x47\xa4\x30\x40\xe5\x79\x88\x37\x41\xa8\xf0\x6b\x86\x20\x15\ +\xe1\x87\x70\x66\x6a\xd3\xec\xda\x82\x9d\x2f\x70\x7d\x3a\x44\x82\ +\xa4\xe2\x53\xa8\xb5\x5d\x0d\x2a\x9d\x51\x8a\x1f\xe4\x48\xa3\xa8\ +\x0e\xec\x5e\x78\x13\xc5\xa1\x58\x15\xe7\x89\xa8\x80\xf0\x64\x1a\ +\x2c\x54\x9e\x0d\xa3\x28\x39\x02\xc4\xc5\x22\x9b\x8f\x78\xe5\xa2\ +\xd9\xf7\x91\x3a\x93\x0a\xb6\x57\xfa\x4b\x68\x69\xd5\xb4\xec\x3f\ +\xdc\x2f\x20\x08\x6f\x71\xd6\x74\x34\xdb\x97\x4d\x91\xc9\xe6\x66\ +\x98\x4b\xe9\xdd\x4e\x44\x4b\xa9\x18\x9d\x21\x53\x72\x2b\x1f\x63\ +\x31\x92\x9b\xf4\x10\xfd\x1c\x40\x38\x99\x69\x4b\xe9\xae\x70\x62\ +\xde\x99\x51\x91\xfa\x47\x40\xe9\xa8\xab\xa7\x65\xea\x38\x12\x2a\ +\x8a\x41\xed\x2b\xd3\x36\xda\x96\xe8\x60\xeb\x69\xda\xa1\x23\x83\ +\x2f\xaa\xb7\x46\xdf\x71\x50\x7a\x62\x43\x54\x67\x7a\xfc\xa7\x91\ +\xda\x5b\xa4\x5f\x23\x8f\x49\x35\xba\xda\xe3\x83\x28\x03\x4f\x91\ +\x68\xd3\x4e\xd5\x08\xe4\x74\x8b\x6a\x79\x0c\xbc\x4a\x12\xcd\x4c\ +\x13\xc8\xc5\xe2\x8b\x34\xc8\x96\x68\xac\x45\x35\x6e\xb8\xbc\x9c\ +\x83\x6b\xf6\x11\xf4\x73\x44\x1f\xca\xd6\x85\x30\x75\xee\x86\xa8\ +\x1c\x8b\x0c\x44\xeb\xae\x1d\x50\x7e\x05\x02\x50\x53\x73\xd8\x93\ +\x96\x58\x9d\x48\xdd\x54\x93\xd4\xc2\x12\x29\x83\x7e\xbf\x49\x6d\ +\x27\x2e\x6c\x44\x4d\x15\x40\x3e\x61\x73\x28\xa6\x96\xc8\x06\x55\ +\x45\x14\xc9\xc2\x91\xbb\xfa\x46\x12\x14\xe3\x2d\xdf\xa0\x8a\x5d\ +\xd6\xb0\x16\x1d\xe3\xa9\x8a\x40\x8d\xcf\x71\xd4\x4c\x34\xa2\xfb\ +\x06\xd3\x86\x22\x2b\xc5\x20\xd8\x0b\x46\xd6\xa9\x40\xa0\x74\xbb\ +\x5b\x99\x3f\xda\x54\x9b\x2a\x00\x7b\x99\x98\x94\x25\x46\x6e\xb1\ +\xe9\x50\x28\xc8\xcf\x41\x21\xa5\xbd\x89\x62\x0e\x3b\x75\x8f\x00\ +\x91\xb9\xda\xc7\xb4\xac\x27\x9a\x97\x37\x27\xe9\x03\x79\xbe\x0d\ +\xaf\x17\xbb\x04\x05\xfa\x93\x16\xc4\x83\xd2\xd0\xc5\xad\x7a\xaa\ +\x1a\xd6\xfa\xc4\xb5\x40\x4f\xcd\x02\xbf\xcc\x6c\xc2\x24\x15\xb6\ +\x5a\xf3\x72\x0d\x16\xa0\xee\x3b\xc0\xe7\xb4\x4b\x39\xe1\xf8\xe9\ +\x18\x1d\x32\x09\xc1\x8b\x62\x41\xb3\x73\xed\x18\x05\xa6\x50\x5e\ +\xdc\x86\x05\x7f\x69\xcf\xad\x4f\x69\xdc\xc6\xc2\x58\xf5\x05\x32\ +\x19\x79\xe6\x06\xb7\x63\x3d\x98\x58\x37\x99\x48\xcc\xd4\x15\x2a\ +\xd4\x46\x52\x9c\x1e\xf1\x77\x61\xe4\x03\x3d\xfb\x46\xad\x1d\xae\ +\x1b\x8f\x59\x9a\x8d\xa4\x02\xa4\x81\xd7\x13\x4c\x82\x8d\x45\xa6\ +\x4a\xb6\x55\x85\x8c\x1a\x98\x25\x48\xc8\x38\xb4\x1b\x28\x17\x27\ +\x3d\xa1\x2d\xde\xc2\xe0\xb0\xfd\xc4\x91\x64\xb1\x3c\xc3\x4e\x45\ +\x8d\x8c\x5d\x45\xda\xe7\xcc\x09\x13\x51\xbc\xd7\xbc\x52\x8a\xb6\ +\xa9\x76\x1f\xea\x0f\x98\x7e\x69\x9a\x3d\x46\xc6\x20\x8c\x30\xb3\ +\x03\xd6\x28\x36\x6e\x18\x02\x38\x37\x9a\xd4\xfc\x51\xbd\x6c\x08\ +\xe4\x5e\x18\x97\xd4\x5d\xa8\x56\xc1\x95\x8d\xc1\x3c\x5a\x4d\xab\ +\xd9\xbd\x3c\x20\xc5\x6d\x6b\xfa\xc7\xa5\x8e\x92\x9d\x1a\x9f\x88\ +\x9b\x1b\xf0\x62\x4d\x26\x50\xca\x41\x57\x53\x62\x0c\x21\x74\x11\ +\x57\x53\xf0\x80\x0b\x5d\xe8\x1c\x9f\x43\x39\x4d\x44\x13\xf3\x28\ +\x3e\xb2\xff\x00\x83\xb8\x4d\x57\x83\x50\x59\x2a\x8d\xad\xdb\x30\ +\x75\x3a\x72\x8e\xf4\x9f\x95\x36\x10\x9d\x5c\x57\xb8\x92\x95\x36\ +\x0d\xb4\xb2\x15\x38\x22\xf2\xa3\xa6\xf0\x18\x5c\xab\x93\x81\x7c\ +\x08\x84\x52\x8a\xe4\x8f\x30\x16\x17\x9b\x41\xd9\x41\x56\x63\xb4\ +\xfa\xf1\x1a\x85\x5b\x4f\xbc\xee\xf1\x01\xef\x9e\x22\x45\x11\x4d\ +\xc3\x2d\x65\xba\x9b\xe0\x47\x33\x14\x22\xe1\x58\x1e\x08\x1c\xc4\ +\xd7\xa7\x4c\xa9\x65\xdd\xea\x39\xb4\xa2\x1d\x6a\x43\xc3\x08\x82\ +\xcc\x4d\xd8\x46\xea\xf4\x9e\x05\x2f\x2d\x5f\x15\x40\x1b\xc5\xac\ +\x50\xfa\x41\xa2\x84\xea\x55\x97\x76\xd2\xd7\xbd\xff\x00\x98\xe6\ +\xac\x8e\xe5\x94\x80\x59\xb3\x71\xd2\x5d\xa7\x22\xba\x87\xb0\xa8\ +\x45\xff\x00\x0b\xf7\xf7\x91\xd5\x4d\xa4\x83\x70\x47\x79\xd4\xd6\ +\x52\xd8\xc5\x91\x43\x52\x6e\x45\xe4\xcc\x88\xc9\xb6\xa0\x6d\xb6\ +\xf2\xbf\x63\xd8\xc4\x22\xb1\xb4\xcc\xc6\x55\xa2\xc8\xfb\x4f\x31\ +\x7b\x5a\xfc\x1f\xa4\x90\x93\x19\x1d\xe5\x15\x40\x2c\x0f\x5b\x45\ +\x52\xc1\xbd\xaf\x29\x7d\x8c\x88\xd6\xda\x78\x8a\x29\x4d\x80\x3c\ +\x46\x87\x0c\x2c\xd8\x3d\xe0\x32\x5d\x01\x53\x00\x92\x05\x88\x90\ +\x1b\x0b\x19\x46\x9d\xb7\xe9\x6b\xa1\xe8\x03\x0f\xa1\x92\xee\x24\ +\x58\x9f\x68\xef\x87\xb5\xf5\x1e\x19\x36\xde\x0a\x9f\xa8\x95\x20\ +\x00\x5b\x06\x66\x46\x44\xcc\xab\x11\xd6\x12\xbd\xb9\x12\x0d\x42\ +\x71\x2a\x0c\x40\xdc\x3f\x48\x84\xd8\x7f\x37\xb4\x72\x9b\x93\x7e\ +\x25\x4a\xad\x3b\x53\x71\x67\x6d\xb6\x37\xe2\x5a\x1d\x41\x54\x5c\ +\x80\x3f\x79\xcc\xa4\x0a\x38\x63\xc0\x95\xd0\xf3\x54\xbd\xfc\xdc\ +\x91\x31\x61\x8a\xa9\x94\x6b\x8b\x0c\xcf\x59\x6d\xda\x46\x1c\x06\ +\x39\x20\x83\x1a\xee\x6c\x1c\x64\x1e\xd0\xc3\xaa\x00\x07\x83\x31\ +\xe9\xf1\x71\x26\x5a\xc2\xfd\xa3\xa9\xd7\xfa\xc3\x2a\x05\x4a\x16\ +\xc8\x16\x33\x6a\x53\x35\x28\x90\x79\x1c\x19\x7d\x11\x4d\xd6\xdf\ +\xb1\x87\xf6\x70\x0d\xd7\x20\xf4\x87\xe8\xe3\x8b\xa3\x25\x58\x83\ +\xf5\x89\x75\x04\x92\xbd\x0c\xe9\xea\x34\xfe\x1d\x52\xc3\xe5\x6e\ +\x27\x32\xa5\xc3\xb1\x1d\xe6\xe5\xd6\x6b\xc8\x76\x13\x7c\xa9\xe4\ +\x46\x22\xed\x38\xca\x30\xb5\xe2\xd1\x95\xc5\x8e\x0c\x2a\x4c\xd4\ +\xdc\xab\x0b\xaf\x51\x14\xd3\x75\x6c\x12\x08\x9d\x0f\x86\xf8\x75\ +\x29\x9a\x26\x9f\xde\x38\xbd\xfa\x62\x49\xab\x40\x05\x3a\x94\xc8\ +\x75\x6f\xf9\x63\x02\x86\xa7\xc0\x56\xaa\xa2\xcf\xc2\x7a\x42\xf7\ +\x0f\x8b\xf5\x35\x68\xe9\x19\xd0\xbe\xfa\xbc\x01\x6e\x27\x29\xaa\ +\x33\x64\x92\x60\x82\xce\x4b\x35\xcb\x1e\x49\x99\x7b\x46\x4c\x16\ +\xaa\xd3\x6d\x06\xec\x6c\x25\xc6\xa0\x0a\x36\x81\x60\x27\x29\x1a\ +\x56\xd5\x00\x06\xf0\xb0\xca\x67\x88\xcc\x72\x61\xa3\x91\xcf\x12\ +\x6a\x6f\x73\x19\xbb\x37\x10\xb1\x28\x05\xae\x19\x4e\xd3\xde\x1f\ +\x88\x47\x9a\xc1\x98\x77\x12\x65\x2c\x48\x37\x8d\xbe\xe3\xcc\xc9\ +\x52\x9a\xe7\x64\xd8\xd8\xff\x00\xc4\x5a\x68\xa8\xbc\x80\x49\xf5\ +\x32\x42\x2f\x91\x82\x3f\x79\xaa\xfb\x85\xba\xcb\x16\xa8\xab\x55\ +\xc1\xf2\x9b\x03\xd2\x29\x9f\x77\x26\xc6\x79\x4d\xfc\xad\x31\x87\ +\x6e\x7b\x49\x32\xb1\xb0\x0c\x7a\x89\x36\xe2\x7a\xc6\x55\xb8\x5b\ +\xb1\xe3\xa4\x58\x75\xe8\x36\x99\xa8\x1a\x2c\xa6\xed\xfa\x46\x16\ +\xf1\x16\xcb\x86\x1f\xb8\x93\x30\x3b\xaf\xfc\xc3\xa6\xdd\x78\x22\ +\x38\x98\x40\x36\xb8\xe2\x15\x50\x1f\x4e\x2c\x3c\xd4\xff\x00\x83\ +\x0d\xbc\xe3\x72\xe3\xb8\x98\x83\x6d\x8d\xaf\xdf\xda\x1a\x93\x23\ +\xba\x23\x92\x6e\x31\x83\x36\x99\xa7\x53\x27\xca\x09\xe3\xa4\xf6\ +\xa1\x3c\x26\x20\x65\x0f\x1e\xa2\x28\x94\x08\x76\xe3\x13\x40\x1a\ +\xaa\x25\x58\x91\x02\x8b\x0a\x37\x72\x01\x20\x43\x46\x64\xc0\x26\ +\xc7\xa1\x99\x53\x6b\x72\xbf\x51\x10\x92\xad\xef\xb8\x09\xe5\x7b\ +\x60\x75\x8d\x54\x1b\xee\xaf\xf4\x33\x2a\x50\x7b\xee\x0b\xb8\x7a\ +\x45\x12\x49\xbe\x6e\x23\x29\xb9\x07\x9c\xf4\x33\x2a\x2d\x85\xc8\ +\x20\xcf\x28\xf4\x90\x5f\xbc\x35\x1a\x65\x87\x17\xbd\xa5\x14\x3f\ +\xcc\xd1\x65\xbf\xde\x28\xf2\xfa\x89\x0a\xb1\xf0\x85\xf1\x9e\x63\ +\x74\xaf\xe7\x5d\xb8\x37\x99\xb1\xad\x36\x9d\x5a\x89\x50\x0c\xdc\ +\x1e\xb3\xa7\xf1\x10\xb5\x52\x96\xa8\x2d\xb7\x8b\x31\x1f\x98\x49\ +\x18\x0a\xa0\xb8\x1e\x61\xf3\xaf\xf5\x96\xe8\x08\xaf\xa7\xab\xa6\ +\x3d\x46\xe5\xf7\x1f\xfa\x99\xbf\xd6\xa7\xf1\x0a\x27\x88\x4a\x82\ +\x2f\x6c\x5e\x4e\x69\x9e\x0a\x5f\xd5\x65\x9b\x0a\x03\xb7\x93\x88\ +\x15\x29\xdf\x80\x55\xbf\x63\x29\x46\x27\x5d\xaa\x36\xb0\x3b\x5b\ +\x90\x47\x10\x1e\x9b\x21\x0c\xa7\x72\x1e\x0c\x70\xf1\x03\x6d\x37\ +\x37\xfa\xcf\x17\x34\x81\xde\xaa\xd7\x3c\x4d\x05\x6d\xf1\x1f\x03\ +\x4e\x1b\xec\x7a\x65\x66\xe0\x04\xe9\xeb\x26\xad\xf1\x2a\xb7\x0d\ +\x4a\x96\x9f\x69\x3f\xff\x00\x50\xc4\x9b\x54\x8e\xd5\x09\x72\x6f\ +\x27\x25\x92\xad\x87\x03\x90\x61\x38\xc5\x6d\x57\xff\x00\x56\xd4\ +\x36\xe5\x22\x88\xbf\x6a\x62\x4b\x57\xe2\x7a\xda\x4f\x9f\x0c\x8e\ +\xc2\x98\x1f\xd2\x29\x91\x73\x51\x70\x0e\x3d\xa1\x32\x2d\x4a\x7b\ +\x4f\xcc\x38\x33\x59\x06\xd5\x34\xfe\x31\x49\xcd\x35\xad\xa5\x4d\ +\xbf\x9b\xb7\xed\x3d\x5f\x5d\xa7\xa7\x57\x65\x4d\x1a\x8e\xbc\x03\ +\x79\xc9\x65\x28\xd6\x23\x1d\x44\xae\x8a\xf8\xf4\x3c\x06\xcb\xa8\ +\xdd\x49\xbb\xf7\x58\x61\xd5\x94\xf5\x1f\x0d\xaa\x2c\xd4\x02\xfb\ +\x62\x39\x34\x5a\x0d\x42\x94\xa7\x59\xa9\xb7\x23\x77\x13\x80\xc0\ +\x83\x6c\x83\x19\x46\xb5\x4a\x6c\x08\x63\x89\x60\xd5\xd5\xfe\x1d\ +\x5e\x90\x25\x6c\xe3\xba\xc8\x89\xb8\xda\xdc\xf7\x97\x26\xa6\xa2\ +\x9f\x12\x9b\x10\x18\xf1\xd2\x7a\xbd\x3a\x5a\xc0\x5a\x9d\x92\xb0\ +\xc9\x1d\xe3\xdf\xd4\xe7\x30\x22\x33\x46\xf6\xd4\x52\x63\xc8\x61\ +\x01\xf1\xe4\x6b\x82\x20\xad\xd5\xc1\xec\x64\x0f\xac\x2d\x59\x87\ +\x66\x22\x09\x19\xf5\x87\xab\x16\xd5\x54\x3e\xb3\x00\xc0\x3d\xe2\ +\x86\xa3\x68\xbf\x58\xea\x22\xe2\xe7\x03\xbc\x48\x0c\x3f\xbc\xa8\ +\x28\x52\xa0\x74\x12\xa4\xca\xb6\x70\x36\xe2\xdc\x0e\xf3\xd4\x5c\ +\xa9\xbf\xd2\x01\x22\xf9\x39\x86\x2d\xc8\xe0\xf1\x02\x61\x7d\xcc\ +\x77\x5a\xf7\xc1\x9a\x97\x17\x5c\x83\xcc\x49\xe4\xc3\xa6\xe3\x70\ +\x0d\x91\xde\x08\x45\x77\x64\x09\x80\x95\x61\x70\x44\x6b\x2e\xdc\ +\xde\xea\x78\x98\xb7\xef\x71\xd8\xcb\x51\xf4\x2a\x90\x01\xe4\x4e\ +\x8e\x9f\x50\x08\x07\x91\xd6\x72\x17\x68\xc8\x36\x87\x4a\xb1\x4a\ +\x99\xc5\xff\x00\x79\x9b\xc7\x4c\xaf\xa2\x4a\x14\xf5\x94\xb6\x02\ +\x03\x11\xe5\x3e\xb3\xe5\xb5\xd4\x5e\x8e\xa5\xd1\x81\x0c\x0e\x67\ +\x67\xe1\x9a\xbd\xb5\xc6\xd3\x9e\xd2\x8f\x8d\x69\xa9\xea\xa9\xf8\ +\xca\x33\xdf\xb1\x98\xe3\x7f\x35\xab\x36\x3e\x4d\xb9\xdc\x31\x68\ +\xea\x6e\xae\x00\x6b\xdc\x75\xed\x02\xb5\x36\xa5\x50\xa3\x8b\x11\ +\x05\x30\x44\xec\xe6\x6d\x7d\xca\x36\x72\x1b\x8b\x75\x8a\x6b\xee\ +\xb1\xbd\x87\x4f\x58\xf4\x2c\xaa\x5a\xc1\x80\xc8\x07\xac\x96\xa5\ +\x42\xf5\x59\xc8\x00\x93\xc4\xa2\xa6\x6e\xc5\x80\xb7\xb4\xc3\x63\ +\xd7\xf5\x99\xc8\xb8\xe9\x16\x49\x38\xbe\x24\x8d\x04\x0e\xb1\xce\ +\xd8\xe4\xf3\x23\x0f\x90\x2d\xf5\x8f\xaa\xd8\xe6\x49\xbb\x8d\xf0\ +\x63\x91\x89\xeb\x25\xf5\x94\x69\xc7\x9a\xc4\xe6\x49\x65\x0e\x2e\ +\x7a\x4d\xb9\xe9\x88\x74\xc7\xdd\xf1\x30\x8b\x4e\x6d\x08\x10\xc3\ +\x9c\xcc\x3c\xdc\x7c\xd3\x0e\x33\xfb\x42\x5c\x8b\xda\x44\x4a\x47\ +\x2d\x93\xda\x7a\xa1\x2d\xe6\xb5\xba\x62\x78\x29\x6c\xf5\x84\xad\ +\x7b\xa3\x75\x82\x29\xbf\xd3\x23\x99\x1d\x5b\x6e\xc7\x32\xdd\xbe\ +\x56\x1d\x64\x95\x52\xe6\xf3\x5c\x45\x2f\x79\x03\x98\x74\x8d\xc7\ +\xd7\x88\xa6\x04\x1b\x46\x23\x0b\x64\x4d\x03\xa9\x92\x0d\xe1\xb0\ +\xba\x96\x5e\x0f\x22\x00\x61\xb7\xbc\xcb\x9b\x82\xa6\xe4\x0e\x26\ +\x4b\x0f\xde\x27\x84\x70\x47\xc9\xfd\xa4\xa5\x48\x72\x08\xe3\x99\ +\x48\x1b\xae\x46\x08\x8b\xac\xde\x21\xdc\xbf\x32\xf2\x3b\xfa\xcd\ +\x40\x9f\x27\x26\x09\x61\xf2\xf0\x04\xf5\x4a\x8c\x79\x1e\xd6\x81\ +\x4f\xcc\xd9\xb5\xa2\x0c\x5a\x6a\x16\xe4\x66\x26\xec\xa7\x92\x23\ +\x77\x5c\xfa\x4d\x21\x4e\x1b\xe8\x64\x80\xd5\x2a\x1a\x78\x6d\xde\ +\xf9\x80\x2a\xe3\xcd\x4d\x4f\xd2\x35\x52\xc7\x10\x4d\x3b\xb7\x63\ +\x14\x65\x17\xa6\xd4\xc8\x2b\xc7\x40\x63\xf4\xe3\x4a\xc4\x7f\xa8\ +\xad\xf4\x32\x7a\x09\x67\x2a\x7a\x88\x68\x36\xb9\x04\x42\xa7\x5d\ +\x56\x89\x60\xe9\x55\xae\x46\x7c\xb2\x8a\x1e\x05\x27\x15\x96\xa3\ +\x2d\x9a\xf6\xdb\xc4\xe3\xa8\x65\x53\xb4\x9c\x1b\x83\xe9\x28\xd3\ +\xd7\x6b\x80\xf9\x07\xbc\xe7\x78\xb5\x2b\xaf\x5a\x86\x95\x6a\x6e\ +\x2e\xfb\x5c\x6e\x16\x1d\x0c\x9a\xa3\x68\x94\xd8\x53\xac\xe4\x73\ +\xe6\xb4\xb3\x62\xd5\xd0\xab\x15\x27\xc3\xc5\xc1\xe9\x39\x8e\x29\ +\x6e\x3f\x78\xcb\xee\x26\x63\x54\xd1\xa9\xd2\xd8\xff\x00\x95\x1f\ +\x57\x31\x5a\x8d\x55\x1a\x62\xe3\x43\x40\x8f\xf7\x5c\xc0\x34\x99\ +\x9a\xca\xe8\x6f\xd2\xf6\x8c\xad\x48\xd8\x17\x41\x70\x00\x00\x0f\ +\xe6\x6b\xa8\x12\x36\xae\xb5\xb6\xd4\x0a\xe0\x74\x75\xbd\xa7\x85\ +\x4d\x1d\x61\xb6\xbd\x02\x9d\x9e\x99\xfe\x86\x21\xeb\x31\xf9\x80\ +\x75\x03\x83\x00\x6c\x60\x40\x3b\x7d\x0c\xde\x33\xa6\xb6\x82\x8e\ +\xdd\xda\x7d\x52\x30\x63\xc5\x41\xb4\xfb\x44\x6a\x68\x55\xa2\x4a\ +\xbd\x2f\x27\xe1\x71\x0c\xab\x23\x05\x2b\x75\x38\x23\xa1\x84\x8f\ +\xa8\xa1\x59\x82\x31\x6a\x6d\x7b\x29\xcd\x8f\x69\x76\x90\xd7\xa7\ +\xb9\x43\x5b\x31\x54\xee\x0d\xd4\x90\x41\xb8\xf7\x9d\x74\x1a\x7d\ +\x55\x32\x36\x8a\x35\x48\xff\x00\xea\x4f\xf4\x9c\xed\x5d\x27\xd3\ +\xd6\xf3\x29\x06\x32\x8c\x06\xb4\x6f\x22\xb8\x16\x0f\xc8\xec\xdd\ +\x64\xa4\x09\x5a\x95\x6a\x55\x29\xff\x00\xf6\x5f\xeb\x25\x38\x3c\ +\xc9\x1b\x45\xf6\xae\xc6\x38\x27\xf4\x84\x4b\x23\xab\x0c\x30\xeb\ +\x27\xe2\xd9\x94\x82\xae\x81\x2f\x90\x30\x4c\x41\xd5\x55\x75\x94\ +\x8d\x45\x00\x56\x5f\x98\x77\x12\x35\xb1\x3b\x5b\x91\x28\xa4\x5d\ +\x18\x3a\xfc\xc3\xf7\xf4\x8d\xd5\x50\x15\xd7\xed\x34\x41\xff\x00\ +\x78\xec\x61\xe1\x06\xb0\x01\x58\xe3\x95\x07\xf6\x82\x9b\x76\x80\ +\x41\x8d\xd4\xd3\x25\xa9\x87\x16\xf2\x2c\x51\x42\x1a\xe4\x45\x0e\ +\x9e\xd3\x58\x0b\x5d\x41\xcc\x7d\x72\x8d\x66\x5b\x8b\xf4\x89\xf0\ +\xf6\xb6\x0d\xe6\xd8\xf5\xfd\xe0\x98\x49\xe8\x23\x74\xec\x49\xb1\ +\xe2\xf0\x00\xef\x68\xda\x29\x9b\xfe\xb2\x50\x55\x17\xcc\x6d\xc4\ +\xc4\x07\xac\xa8\x2f\x94\x62\xf7\x98\x50\x76\xb4\x34\xb6\x9b\x5e\ +\x9d\x8e\x47\x04\x4d\x65\x01\x6e\xa7\x10\x54\x00\x6d\x79\xa4\xec\ +\x39\x82\x27\x75\x9a\xf3\xdb\xed\xc0\xb8\xed\x3d\x55\x41\xbb\x2d\ +\xfd\x47\x68\xa5\x22\xe4\x1b\xc5\x28\xa0\xd7\x60\xf4\xc9\xba\x9c\ +\x89\xd6\xd3\xea\xcd\x54\x64\xdd\xb5\x8e\x6c\x78\x6b\x4e\x0d\x02\ +\x52\xb5\xd6\xf2\xda\x4c\x0d\x42\x2e\x37\x0c\xfb\xcc\xf2\x86\x55\ +\x1a\xea\x0b\xa9\x42\x57\x0e\x38\xbf\xf0\x67\x1d\x91\x81\xb1\x04\ +\x10\x67\x55\xea\xb2\x5a\xa8\xc8\x5c\x30\xee\x26\x7c\x42\x82\xd4\ +\xa3\xf6\x8a\x36\x38\xcf\xb4\xa5\xc5\x66\xb9\x88\xd7\x7d\xac\x40\ +\xec\x6f\x00\xd3\xdd\x72\x2d\x79\xe6\x5e\x6f\x3c\x0e\xdc\x8e\x66\ +\xd9\x08\x52\x3f\xb4\xf3\x27\xd6\x13\x0c\x6f\x51\x83\xd3\xb1\x9a\ +\x0d\xc5\x8f\x22\x48\x86\x43\xcd\x8f\x31\x95\x01\xf0\xd4\xc2\x00\ +\x93\xc4\x7b\xa8\x34\x97\x89\x24\xb4\xc9\xbd\xa5\x74\x30\x41\x8b\ +\x5a\x37\x37\x06\x53\x46\x91\xbd\xce\x25\x6a\x91\x5a\xff\x00\xa6\ +\x27\x87\xa4\x62\x29\x20\x01\xcd\xa1\x9a\x61\x46\x39\x9c\x9b\x25\ +\x80\x51\x73\xcc\x05\xbd\xee\x4c\x27\xe6\x01\x3d\xa2\x94\x29\x04\ +\x5c\x4f\x38\x07\x23\x06\x22\x9b\x35\xe3\x41\xbc\x10\x99\x7c\xa5\ +\xfa\x11\x27\x74\xea\x25\xea\xb7\xa1\x63\x6b\x9c\xc9\x9d\x48\x38\ +\xcc\xa5\x48\x2a\xa1\x63\xc4\xc3\x49\x80\xc6\x65\xa6\x98\x61\x91\ +\x63\x31\x69\x84\xcb\x5c\xf6\x9a\xfd\x0c\x48\xc0\xab\x5a\xf6\x8a\ +\xb3\x83\xbb\x23\xd6\x52\xee\xaa\x49\x16\xb9\x93\xd5\x76\x7b\x5c\ +\xe3\xb4\xd4\x0f\x1a\xac\xca\x01\x63\xcc\x1d\xe0\xb0\xb1\xb3\x77\ +\x81\x6f\x38\x8b\xdd\xe6\xb4\x40\xaa\x80\xcd\xb9\x47\xb8\x80\xa0\ +\x28\xb4\x6a\xb9\x07\x73\x00\xc0\x41\xa8\xa1\xc6\xea\x63\xd4\x8e\ +\xd2\x40\x51\x78\x77\xef\xc4\x04\x06\xf7\x38\x86\x2d\x7b\x48\x3c\ +\x01\x06\xe2\x53\x4d\x09\x17\xda\x18\x45\xd3\x5b\x64\x4a\x28\x60\ +\xe3\x83\xc8\x85\x6a\x05\x55\x4b\x02\x30\x6f\xd6\x65\x6a\x4c\x2a\ +\x5c\x0e\x63\xde\x98\x24\x5c\x63\xd2\x1b\x21\x34\xc1\x10\xd3\x89\ +\xa9\xab\x6e\xda\x41\x00\x8f\xd2\x1d\x35\x65\xc1\xb9\xf7\x9e\xf3\ +\x8a\x83\x69\xf7\x8f\x46\x26\xe0\x8b\x5f\x83\x2b\x53\xa9\xf0\x66\ +\xdc\x4d\x16\xe2\xa2\x10\x7d\x08\x91\xd6\xa7\xb4\xb0\x7b\x0b\x18\ +\xcd\x2b\xd4\xa2\x45\x40\x7e\x52\x0c\x1d\x6e\x6b\xba\xe2\xfc\x8f\ +\x59\xcf\xeb\x5f\x08\x6a\x94\xc6\x15\x73\xf9\xa4\xec\xb5\x41\x2d\ +\x4e\xa1\x27\x9b\x03\x63\x0a\xa2\xe0\x1e\x22\x4b\x35\xb0\x31\xde\ +\x6e\x46\x49\x76\x5d\xdf\x28\x06\x79\x45\x36\xba\x70\x70\x71\xc1\ +\x8d\x14\x0d\x4c\xab\x02\x4f\x43\x89\x82\x81\x01\xc9\x16\x23\x81\ +\x69\xad\x05\x06\x60\xe7\xb1\xfc\x27\x89\x8a\xcc\xa4\xb2\x12\x47\ +\x51\xda\x59\xa4\xf0\xaa\x50\x74\x6a\x57\x7b\xdd\x4d\xf3\x23\xac\ +\xa6\x9b\x92\x87\xcc\x38\x3d\xe4\x9e\x15\x88\x62\xc2\xd9\x3d\xa3\ +\x13\x56\x8e\x86\x8e\xa2\x98\xa8\x9f\xb8\xf6\x88\xb0\xad\x48\xed\ +\x16\xa8\x39\x12\x67\x36\x7e\x6d\xd6\x38\x14\x54\x44\xa3\x56\x9b\ +\x6c\x0d\x4d\x8d\x83\x03\xc8\x91\xd6\x14\x83\x95\xda\xc2\xd2\x9d\ +\x3d\x45\xf3\x50\xaa\x6e\x8d\xc7\xa1\xef\x27\xd6\x53\x64\xd5\x32\ +\x9b\x1e\xb2\x41\x0b\x46\xd7\x25\x87\xbc\xf0\x5a\x7c\xf8\xb9\xbf\ +\x51\x04\xbd\x94\x0b\x64\x40\x2d\x7e\x91\x0b\xa9\xaa\xba\xe6\xaa\ +\xdc\x62\xf2\x9d\x2d\x36\xa3\x53\x7a\x82\xc8\xd8\x61\x79\xcb\xa6\ +\xf9\xb5\x85\x8c\xb7\x49\x55\x5a\xa0\x57\xc5\xb8\x3d\xe1\x4c\x5d\ +\xf1\x2d\x30\x4f\x0c\xab\x38\x1b\x6c\x09\x18\x92\xa3\xb6\xdd\x8e\ +\x78\xe0\x91\x2a\x4d\x49\xa7\xb6\x85\x56\x6d\xa4\x75\xe8\x6f\x06\ +\xad\x40\xb6\xa7\x59\x03\x8e\x8d\x68\x4d\x34\x01\x59\x48\x7f\x0d\ +\x5c\x75\x22\x61\xd9\xd8\x80\x7d\x63\xa8\x8a\x37\xea\x01\xec\x6e\ +\x23\x7e\xca\x7f\xed\xb0\x75\x3d\x25\xab\x11\x95\xa6\x4f\x24\x7d\ +\x23\xe8\xd1\x3c\xab\x83\x06\xa5\x27\xa6\xd6\x28\x40\x8d\xa4\x01\ +\x1c\xca\xa3\x91\x5c\x0c\xac\xd6\x50\x46\x46\x66\xae\xe5\x59\xa5\ +\xd8\xf0\x73\xd8\xcc\x34\x99\xf9\x8b\xa8\xc4\xae\xef\xd6\x54\xd9\ +\x1e\x74\x10\x48\xa2\x54\xa9\xb8\xbc\x65\x08\x89\x23\xe5\x98\x50\ +\x7c\xd7\xfa\x4a\x1e\x92\x1f\xfb\x96\x1e\xd3\x69\x69\x85\xfc\xb5\ +\x50\x83\xcc\xd6\x8c\x4c\x0f\xd2\x37\x76\xda\x88\xdf\x49\x57\xd8\ +\x10\x30\x6f\x1d\x6d\xed\x1e\xda\x5d\x22\xa0\x35\x2b\xdf\xad\x84\ +\x3f\x50\xe1\x2a\xe0\x9c\xe6\xf8\x3e\xb0\xfe\x1e\xfe\x15\x66\xd2\ +\xbe\x51\xb2\xb7\x86\x6a\xe8\x51\x46\xda\x6c\xd6\xfc\x44\xc6\xd7\ +\xd5\x69\xbc\x24\xad\x4e\x82\xf1\xd7\xa1\x99\x2e\x47\xc4\xb4\xad\ +\x42\xb9\x03\xe5\x39\x07\xd2\x48\xea\xc0\x8e\x67\xd3\x9a\xc2\xaf\ +\xc3\xfe\xd3\x45\x90\xb8\x19\x04\x7e\xb3\x92\xdf\x12\xd4\x03\x7f\ +\x0e\x91\xee\x02\xf3\x35\xc6\xda\x2c\x88\x69\xe4\xed\xb9\xb1\x84\ +\x89\xc8\x38\x3c\x4b\xa9\xfc\x62\xa0\x20\x3e\x9e\x8b\x0e\xc5\x65\ +\x94\xfe\x27\xa4\x70\xa6\xae\x8a\x99\xbf\x69\x5b\x7f\x82\x48\xe2\ +\x84\x65\x6c\x66\xd2\x92\x80\x69\xc3\x05\xeb\x91\x3a\xe9\x4f\xe0\ +\xda\xa1\x60\x5a\x83\xc3\xa9\xf0\x8a\x9e\x17\xf9\x7a\xab\x59\x79\ +\x99\xbc\xe3\x5f\x97\x0e\x98\x05\xac\x44\xb2\x98\xe0\x1c\xc3\xa9\ +\xa5\x7a\x2d\x6a\x94\xd9\x2d\xdc\x4d\xa4\x96\x3d\xe5\x6e\x8c\x38\ +\xa9\x5c\x0e\x7a\xcd\x10\x69\xb1\xdc\x4c\x72\x59\xef\x71\x98\x34\ +\x96\xb0\xb9\xe2\x2b\x69\x12\xe3\x4a\xed\x7c\x4c\x6d\x39\x61\x81\ +\x89\x68\xc4\x04\x1b\xe2\x15\x30\x77\x0c\xca\x5a\x95\x34\xbd\x89\ +\x63\x12\xc1\x47\x04\xc7\x51\xe2\xa2\x86\x05\x4d\xed\xd2\x6d\x41\ +\x63\x8e\x24\xa2\xea\x6e\x0c\xa3\x7d\xe9\x83\xd4\x60\xc0\x82\xdb\ +\x8d\xb8\x89\xac\xc4\x5e\xfd\x63\x2a\x9d\xa0\x58\x5c\x99\x25\x46\ +\x3c\x9c\xc6\x46\x69\x75\x47\x51\x27\x62\xd2\xac\x11\xda\x26\xaa\ +\x8b\x9c\x83\x37\x01\x57\xf3\x1f\x68\x25\x40\x37\x31\xaa\x86\xc4\ +\xdb\x88\x23\x1c\x8b\x98\x86\x05\xc5\xc8\xc4\x15\x05\x5b\x72\x18\ +\xc1\x73\xeb\x0d\x13\x3f\xd2\x4b\x00\xca\xac\x37\x2d\x87\xa0\xe9\ +\x04\x21\xea\x23\x80\xda\x77\x01\x60\x79\x13\x76\xd8\x6e\x5c\xac\ +\x8e\x31\x56\xe0\x47\xd3\xa6\x47\x06\x0a\x10\x70\x2e\x3d\x23\x81\ +\xb0\xc8\x99\xb4\xc3\x54\x87\x4d\xbd\x44\xc4\xbd\x88\x31\x6b\x50\ +\x5f\xb4\x72\x90\xf7\x33\x24\x97\x41\xbb\x70\xe9\x0d\x00\x28\x08\ +\x1c\x4f\x30\x21\x8d\xf8\x8c\xa4\x2f\x70\x64\x8d\x46\x5f\x08\xa9\ +\x36\x36\xb4\xdd\x55\xbc\x44\x63\xc9\x51\x98\xaa\x96\x0c\xa9\x19\ +\xab\xf3\x54\x55\xec\xa0\x41\x27\xae\xa4\xae\xf5\x02\xc7\xd2\x21\ +\x89\x23\x6e\x31\xc8\xb4\xaf\xf0\x94\x5f\xa1\xf5\x93\xb8\x0a\x85\ +\x9c\x5d\xaf\xe5\xb4\x60\xa5\x32\xd8\xee\x06\xc4\xe0\x4d\xa9\x5e\ +\xaa\xd3\x0b\xbb\x24\x66\xf1\x95\x54\x30\xf1\x12\xc4\x70\x04\x95\ +\x77\x12\x5e\xd8\x1f\xcc\xd4\xed\x3c\x03\x97\xdb\x4e\xe4\xda\xe2\ +\xdd\x0c\xbc\x69\x68\xbe\x98\x6a\xab\x33\x0b\xe0\xaa\x8e\xb2\x13\ +\x55\xe9\x9e\x99\xc4\xb2\xaf\x9b\x44\x85\x5a\xc6\x93\x5d\x81\xe2\ +\xc7\xfe\x09\x55\x1c\xcd\x55\x33\xa6\xd5\x59\x4e\x39\x56\xee\x24\ +\xfa\x94\xde\x7c\x45\x1c\xf2\x3d\x67\x4a\xbd\x23\x5a\x88\xb1\x05\ +\xa9\xe4\x0b\xf4\x91\x30\x6a\x76\x2c\xa6\xdc\x1c\x4d\x4a\xcd\x46\ +\xd7\xb8\x3d\x6d\x69\x4d\x6b\x57\xd2\x2b\xff\x00\xdc\xa6\x33\xea\ +\x22\x6a\x26\x4e\x49\x1c\x89\xb4\x2a\x78\x76\x27\x20\x1b\x11\xe9\ +\x14\x9d\xc6\x38\x8b\xe8\x6d\x2a\xaf\x4f\xc3\xaa\x45\xee\xa7\x2a\ +\x7b\x88\x97\x50\x01\x90\x62\x9c\x43\xa6\x79\xcd\x8d\xa2\x01\xce\ +\x73\x1d\x48\x16\x61\x6c\xdc\xf1\x08\x9d\x66\x54\xac\x94\xd2\xa3\ +\x80\xdb\x05\x8d\xbf\x68\xf4\xa3\xbe\x90\xa4\xee\xa5\xc7\x07\xac\ +\xe7\xd6\xba\xd6\x01\xae\x2c\xa2\x57\x4a\xa1\x6b\x6e\xcf\x66\x85\ +\x8d\x40\xb5\x3a\x94\x5b\x65\x44\x36\xef\x1d\x49\x99\x16\xfb\x8f\ +\xa4\xa0\x13\x51\x2d\x7b\x30\xe2\x24\xdb\x76\xd7\x4b\x1e\xb6\x86\ +\xe9\x36\x86\xb0\x37\x92\xaa\xee\x1d\x8c\xa0\x52\xa6\xfe\x6a\x43\ +\x1e\xf2\x41\x40\x36\x69\xb0\x62\x3f\x0f\x58\xca\x0c\xf4\xde\xf9\ +\x52\x3a\x18\x5f\xf1\x2a\xa6\xb4\x80\xb3\x16\x07\xb1\x13\x7c\x3a\ +\x27\x87\xb1\x86\x8f\x4e\xb2\x58\x8b\x37\x79\x35\x54\x64\x36\x3c\ +\x74\x33\x24\x4d\x4d\x46\x2e\x59\x62\x2a\xf8\x34\xde\xd9\x33\x1d\ +\x8d\xae\x0c\x45\x56\xbf\xcc\x2f\xeb\xd6\x6a\x41\x47\x52\xad\x3e\ +\x56\x98\xcc\x57\x8e\xe0\x1b\x59\x7d\x84\xc0\xa5\xb0\x0e\x20\xb5\ +\xb2\x09\x9a\xc0\xf2\xd7\x76\x24\x16\x36\xf7\x8c\x37\xf0\x8d\xcd\ +\xcc\x98\x9b\x1c\x0c\x4a\x37\x1f\x00\x1e\xa0\xe6\x49\x94\x05\xe9\ +\xba\x93\xed\x19\xa6\x60\xda\x66\x4b\xf5\x93\xa1\x3e\x21\x17\x85\ +\xa4\xb8\x77\x5e\x31\x2a\x96\x7c\x08\x96\x5d\x46\x98\x9c\x7f\xc1\ +\x39\x6e\x36\xb9\x17\xb1\x06\xd3\xa7\xf0\x70\x57\xe2\xce\xa3\xf1\ +\xa9\xfe\xf2\x3f\x88\x21\x5d\x75\x65\xb5\xbc\xc6\x13\xd5\x7c\x4e\ +\x72\x01\x3c\xc7\x51\x1f\x70\xc4\x5e\xea\xdf\xcc\x50\x16\x00\xda\ +\x51\xa6\x5c\x54\x5c\xe5\x6f\x11\x1b\x7b\x05\xf5\xea\x25\xfa\x2d\ +\x45\x5a\x54\xd4\xa5\x46\x06\xfd\xe4\x58\x08\x84\xdb\xd6\x39\x40\ +\xf0\xd6\xc7\x36\x87\x2e\xda\x8e\xdd\x1f\x89\x78\x80\x26\xa6\x9a\ +\x54\x5f\x6c\xc6\x7d\x8b\x4f\x5c\x97\xd2\xb8\xbf\xe5\x33\x8f\x4f\ +\x71\xb5\xc8\xbc\xb2\x8d\x41\x49\x77\xa9\xcd\xfb\xce\x56\x7f\x1a\ +\x97\xfa\x61\xd3\x3d\x3a\x85\x5d\x0d\xf8\xbc\x34\xa2\x05\xfc\xc3\ +\xda\x55\xa7\xf8\x82\x55\xb5\x3a\xea\x08\xef\x0a\xae\x90\x3d\xde\ +\x8b\x82\xbd\x8c\x36\xfd\x6b\x08\x4f\x0d\x45\xf6\x92\x7d\x62\x35\ +\x15\x49\x16\x5e\x23\x1e\x9d\x54\xf9\x95\x80\x88\xa8\x09\xe0\x8b\ +\x46\x02\x00\x62\x73\xc0\x8b\x71\x73\x7e\x23\x18\xb0\x16\xe0\x99\ +\x81\x71\x73\x34\x13\xbd\xc6\x21\x51\xc8\x6f\x6b\xc3\x5a\x26\xa3\ +\xd8\x5c\x08\xc7\xa2\x88\x40\x0f\x7b\x7c\xde\xf2\x18\x99\xaa\xf7\ +\xcc\x5b\xa8\x22\xe3\x37\x9b\x59\x02\x92\x2f\x31\x03\x0e\x38\x9a\ +\x05\x5e\xd8\xb4\x5b\xe7\x9c\x19\x66\xc5\x6c\x8c\x19\x3d\x4a\x47\ +\xa5\xe3\x28\xc2\x43\x95\x04\x4f\x00\xb6\xbf\x78\x2c\x0e\xe2\x38\ +\xb4\xd5\xb9\x04\xf1\x69\xa4\xd0\x07\x48\x6a\x97\x16\x26\xd3\x13\ +\x04\x82\x6d\x18\x8a\x06\x79\x82\x09\x56\xb1\xbd\x8f\xac\x2a\x20\ +\x01\x9b\x90\x79\x9a\xd6\x3c\xcc\x00\x80\x6d\x99\x26\xba\x59\xb1\ +\x8e\xd6\x84\x1b\xf0\x9e\xd0\x51\xb7\x8d\xad\xcf\x49\xaa\xb6\x1f\ +\x30\x3f\xcc\x0b\xd1\xda\x53\xe6\x2b\xde\x2d\x6d\x90\x61\x52\xb2\ +\xbe\x0f\x48\x55\x14\x31\x16\xf3\x7d\x0f\x68\xdd\x3a\x1d\xe0\xf4\ +\xef\x27\xa9\x72\x80\x93\x89\x46\x9a\xaf\x86\x2e\x4f\x22\xc0\x19\ +\x92\x02\xa6\xa5\x7b\xe3\x06\xd0\xb5\x8d\x7a\xec\xab\xc0\xc4\x2d\ +\x31\x56\xd5\x03\xc6\xdc\xdb\xa4\x4d\x40\x7c\x42\xcd\x70\x09\xbc\ +\x93\x50\x8e\xb0\x35\x34\xbc\xfb\x87\xca\x73\x79\xa3\x20\x8b\xc3\ +\x27\xee\x41\x6c\x28\x92\x73\x77\x13\x54\x22\xe1\x57\xfe\x5e\x54\ +\x02\x1d\x03\xb7\x02\xa3\x05\x1f\x4e\xb0\xaa\xea\x74\x57\x25\xb4\ +\x59\x23\x3b\x5e\xc2\x4d\xa9\xd4\x9a\xcc\x3c\xab\x4d\x14\x59\x51\ +\x78\x13\x7d\xd0\x48\x42\x5c\x52\x61\x92\x79\x33\x74\xd5\x88\xd6\ +\x38\x70\x4d\x37\xf2\x91\xd8\x1e\x26\x0f\x11\x95\x82\xdc\x93\xe5\ +\x51\xfc\xca\x74\x74\x95\x36\xbd\xc1\x28\xb7\x21\xb8\x27\xa4\x68\ +\x2b\x5b\xa7\xab\xa7\xa8\x8d\xb8\x30\x61\x63\x69\x3d\x76\x75\x56\ +\x04\x9b\x5e\xf2\x8d\x75\x64\xae\x81\xd6\xf6\x56\xdb\xff\x00\xb8\ +\x87\xa8\x2a\xa8\x2c\x45\xc0\xb3\x5f\xac\xa2\xa9\xfc\x42\xcb\x6d\ +\xaa\xc5\x7b\x8e\x91\x0e\xd4\xee\xc0\xa5\xae\x31\x63\x09\xd3\x6b\ +\x06\x17\xb1\xe2\x26\xa8\x37\x04\x8b\xcd\x32\x7a\xf8\x75\xb4\xd6\ +\x0e\x43\xd3\xe2\xe3\x91\x10\xc8\xc5\x71\x9f\x6c\xc0\xa4\xc6\x9d\ +\x40\x7b\x18\x55\x86\xca\x9e\x4e\x0e\x44\x10\x36\xf3\x19\x44\x94\ +\x21\x86\x60\x78\x84\xfc\xe0\x34\xa3\x4e\x8a\x48\xda\x79\xe8\x64\ +\x95\xb3\x0a\xbb\x56\xa7\x25\x45\x9b\xb4\x62\xab\xd3\x21\x4d\xad\ +\xfb\x18\xad\x86\xc8\x6d\x6b\x60\x8e\xd2\xf4\x0a\x50\x06\xf9\x6d\ +\x71\xe9\x0b\xd3\x51\xea\x35\x03\x1b\x5e\xcd\xd2\x52\xd4\xc3\xa5\ +\xd4\x5d\xba\xc9\xd6\x8f\x86\x77\xf4\x3c\x18\xf5\xa8\x6d\xfc\xcc\ +\x5f\xf0\xc2\x1a\xcb\xde\xe2\x36\x95\x70\x46\xda\x83\x78\xf5\x19\ +\x9b\x56\x9e\xf1\xbc\x0c\xc9\x76\xd9\xf3\x1f\x52\xf5\x5a\x6d\x73\ +\xa7\x27\x77\x63\xcc\xc5\xa9\xb9\x4d\x3a\x83\xeb\x26\x56\xb6\x6f\ +\x62\x3b\x46\xf8\xa9\x57\x15\x70\xdd\x1c\x43\x0e\x95\xa8\x46\x42\ +\x41\xfa\x49\x77\x7e\x16\xbc\xe9\x30\x62\x9b\x1f\x24\x65\x4f\x79\ +\x16\xa1\x81\x7d\xae\x3d\x8f\x69\xa9\x45\x26\xe5\x4f\x69\x95\x1c\ +\x13\x76\xe4\xf5\x10\x2a\xde\xf8\xfd\x22\xc9\x6e\xb3\x4c\xe8\xcd\ +\xd4\xdc\xe4\x7a\x46\x51\x7b\x82\x3a\x34\x9f\x71\x5c\x03\xef\x19\ +\x41\x81\x18\x36\x37\xe2\x4a\x3c\x0f\xde\xc7\xd0\x1f\x7c\xc7\x9c\ +\x73\x10\xe8\x56\xb5\xb3\x83\x2a\xa6\x36\xb1\xf5\x02\x14\xc3\xfe\ +\x13\xe5\xf8\xbd\x12\x4d\xae\xa4\x67\xd8\xc5\xfc\x61\x7f\xf9\x1a\ +\xc4\x62\xc6\x1f\xc3\x3c\xdf\x13\xd3\x77\xcf\xf5\x83\xf1\x73\x7f\ +\x88\x56\xcf\x58\x7f\xe8\xfc\x46\x82\xc6\xd1\xfa\x4f\x35\x50\x3b\ +\x82\x3f\x69\x39\x61\x8b\x73\x19\xa2\x6f\xf3\x48\x2f\xcb\x46\x81\ +\x54\x07\x62\xfa\x08\x5b\xf6\xa2\x01\xf9\x60\xd5\x36\x19\xee\x66\ +\x54\x60\x18\x03\xd0\x5a\x49\x4d\x37\x2a\x73\x29\x0d\xe5\x5b\x48\ +\x68\xb0\x6b\x2f\x53\x29\x0f\x76\x6b\x1c\x74\x99\xb0\xc5\x08\xff\ +\x00\x48\xf4\xd4\x54\xa6\xc0\xab\x11\xf5\x91\x03\x63\x37\x71\xb4\ +\xc9\xd7\x5d\x3e\x23\x8b\x3a\x83\x3d\xe3\xe9\xaa\x1b\x35\x30\x3d\ +\x44\xe4\x0a\x96\x1c\xe6\x6a\xb9\xb1\x20\xc3\xf2\x7f\x4e\xa3\xae\ +\x91\x8f\x94\x9f\x4c\xc0\x03\x4e\x9c\x82\x7d\xe7\x34\x55\x37\xb0\ +\x30\x8b\xdb\xcc\x72\x7a\x09\x62\xd5\x7a\x8a\xe8\x8b\x65\xc1\x3d\ +\xa4\x2d\x56\xe6\xc3\x00\x98\x35\x09\xe7\x33\x29\x0b\xb6\x4c\xd4\ +\x83\x47\x54\x13\x54\xf6\x83\x9b\xe2\x51\x58\x02\xe3\xd8\x41\x14\ +\xee\x2f\x0d\x45\xa8\xb6\x67\x98\x10\x6e\xb9\x11\x81\x00\x19\x82\ +\x4e\xd0\x6d\x24\x89\x95\x4b\xb5\xcd\x8c\x02\xac\x8d\x71\xc4\x7e\ +\xa1\x30\x59\x6d\x6f\x48\x84\x72\x39\xc8\x9d\x23\x2d\x23\xcf\x8c\ +\xa9\x9a\x5c\x0c\x42\x01\x5d\x6c\xa6\xd1\x4e\x8c\xa7\x32\x43\xde\ +\x0f\x04\xfe\x93\xc7\x70\x1f\x34\x41\xc1\x86\x1b\x77\x26\x48\x7e\ +\x6e\x41\x1f\xac\x68\xf3\x2d\xef\x9e\xb6\x89\x06\xc7\x10\xf7\x11\ +\xf4\xe6\x55\x3c\x6a\x6d\x1c\xde\x36\x85\x4b\xb0\x36\xe6\x4a\xe2\ +\xc6\xe3\x88\xea\x2c\x2c\x0d\xb8\x85\x89\x7e\xd3\xb2\xc3\xbc\x5d\ +\x76\xb3\x2a\xa9\xf7\x94\xe9\xc0\x34\xf7\x74\x61\x10\x02\xee\x24\ +\xe5\x9b\x3e\xd3\x0d\x0f\x4e\x2d\xa7\xa9\x50\xf2\x70\x26\x52\xac\ +\xc3\xca\xc3\x7a\xf6\x31\x8c\x00\xa6\x88\x7a\x8b\x98\xad\x9c\xda\ +\x48\xdd\x94\xaa\xb5\xe9\xb1\xa6\xe7\xa3\x71\xfa\xc5\xea\x28\xd4\ +\x45\x65\x70\x7d\xcf\x11\x6d\xe4\x52\x3a\xc6\x69\xeb\xd5\xa2\x0a\ +\x92\x1c\x11\xf2\xb6\x44\x92\x0a\xa9\xe7\x6b\xda\x03\x50\x6a\x96\ +\x41\x8b\x9e\x4f\x49\x75\x6f\x05\x49\xf2\x96\x24\xe2\xf1\x6c\x5a\ +\xc4\x0b\x64\x5a\x6a\x51\x82\x51\x4d\x34\x55\x16\x98\xb3\x26\x0b\ +\x75\x69\x2e\xa5\x82\xe8\x55\x49\xf3\x3b\xff\x00\x10\xf4\xe5\x9d\ +\xea\xad\xbe\x65\xbf\xed\x11\xf1\x03\x6a\x34\x03\x8b\xfc\xdc\x7b\ +\xc6\x4e\xd5\x03\x32\x53\x45\x42\x30\xd9\x36\x9e\xd8\x00\xb9\x52\ +\x6f\xd4\x75\x8a\xd4\x79\x19\x73\xca\xfe\x92\x9d\x35\x4d\xc9\xe1\ +\xa9\x04\xa8\xb8\xf5\x13\x4c\xb9\xf5\xae\x8e\x54\xa9\xda\x7f\x68\ +\x04\xdd\x76\x93\xc7\x13\xa7\xa9\x44\xaa\xa0\x81\x9b\x66\x73\xc8\ +\x09\x50\xee\x20\xdb\xd2\x32\xaa\x9c\x95\x38\x30\xd0\xab\xd3\xda\ +\x45\xca\xe4\x7b\x42\xa8\x29\x1c\x81\x83\x3d\x45\xa9\xab\x82\x14\ +\xf3\xde\x40\xb6\x50\x6c\x56\x3a\x92\x92\x06\x2d\x68\xd7\x44\x22\ +\xea\xa7\x69\xe2\x32\x82\x8d\xbc\x1e\x64\x4e\xa0\xdb\xa9\x95\x6f\ +\x35\xbf\x51\x3a\x5a\x6d\x39\x6a\x1b\x87\x98\x0c\x4e\x7d\x02\x05\ +\x5b\x70\x27\x5b\xe1\xce\xa9\x50\xa8\x38\x22\x73\xe4\xd4\x26\xe5\ +\x0e\xc2\x2e\x07\x20\xcf\x05\x57\x25\xa9\x90\x0f\x55\x26\x3f\x5d\ +\x4d\x0d\x42\xe8\x7c\xa7\xf9\x91\xd8\xee\xe0\x4c\xc2\x6b\x3b\xd3\ +\xb1\x37\xf6\x30\x2b\x20\xa8\xbb\xd0\xd9\xba\x89\x4d\x16\x43\x65\ +\xaa\x37\x21\xfd\x44\x5d\x6a\x1e\x1b\x17\xa5\xe6\x4f\x5e\x44\xa5\ +\x48\x19\x58\x9b\x93\x63\xd8\xcf\x17\x20\x0e\xfd\x44\x66\xa2\xc4\ +\x64\x0f\x43\xda\x4e\x41\x18\x63\xec\x44\xe9\x3b\x65\x76\x86\xa8\ +\x36\xa5\x57\x2a\x4f\x94\xf6\x88\xf8\xa5\x26\xa3\x57\x63\x7e\xb1\ +\x34\xdb\x61\x9d\x0d\x70\x3a\x8f\x86\xd3\xad\xf8\xd3\xe6\xf6\x99\ +\xf2\x9f\x63\x8e\xd9\x5b\xf5\x13\x47\x38\xe4\xcf\x6e\x1b\xb0\x2e\ +\x4e\x26\x02\x17\x9c\x99\xb6\x4b\x65\xb9\xcf\xed\x09\x05\x86\x26\ +\xef\x01\xee\x56\xfe\x91\x88\xa0\xdb\xa4\x90\xda\xce\x48\x27\x22\ +\xd6\x31\xac\x0a\x05\xbf\x27\x10\x2b\x53\x51\x50\xec\xa8\x0f\xa4\ +\x76\xa0\x1b\x53\x06\xd7\x51\x7f\x78\x13\xfe\x0a\x9b\xbe\x25\x44\ +\x9e\x56\x9b\x37\xfc\xfd\x64\x7f\x11\xab\xe2\x6b\x2b\x30\xfc\xe6\ +\xd3\xa5\xf0\x40\x29\xf8\xf5\xd8\x8f\xbb\xa4\x17\x3d\x0f\x33\x87\ +\x55\xc9\xa8\x4f\x7c\xc2\x77\x4d\xf1\xe6\x6b\x7a\x74\x9b\xa5\x3f\ +\xe6\xa9\xff\x00\xe4\x22\x58\xdc\xf3\x1b\xa2\x3f\xe6\x94\x9e\x86\ +\xf3\x4c\x8f\x50\xcc\x5f\xeb\x88\x35\x0d\xdc\xdf\x1d\x27\x94\xde\ +\xaa\x83\xee\x60\x3b\x1d\xe4\xde\x48\xfa\x06\xd5\x37\x76\x17\x8f\ +\xa5\x52\xc4\x5e\xd9\xe6\x44\xaf\xb5\x01\xbf\xcc\x63\xe9\x1b\xda\ +\xfd\x25\x8a\x2d\xa4\xdd\x0c\x36\x26\x4a\x58\x8c\xaf\x10\xe9\xd4\ +\xb8\xb1\x98\xc6\xb4\x57\x37\x84\x5f\x6a\x00\x20\x37\xfb\x72\x66\ +\x54\xb8\xf9\x72\x65\x88\x45\x82\xf9\xba\xcf\x6f\x36\xf5\x83\x4d\ +\x0d\xbc\xc6\x10\x51\x7f\x41\x2e\x93\x09\x36\x19\x8c\xa5\x72\xc2\ +\xc3\x98\xa2\x73\xc4\x6e\x9c\x93\x50\x2f\x4b\xca\xa8\xad\x88\xdf\ +\xec\x21\x1e\x2d\x11\x7b\xd4\x27\xa1\x31\xbb\xac\xb9\x19\x99\x69\ +\x8e\x39\x88\x7f\x58\xf2\xd8\x8a\x71\x71\x70\x38\xe6\x41\x33\x9d\ +\xa0\xa9\xc8\x26\x4f\x51\x76\x9c\x64\x19\x46\xab\xe5\x07\x19\x93\ +\xd3\x7c\xed\x61\xe5\x9b\x8c\xb1\x49\x07\xb4\x67\x88\x0a\xed\x6e\ +\x3b\xcc\x74\x00\x5c\x18\xbe\x9d\xe2\x9b\x56\x99\xb5\xc1\xb8\xef\ +\x12\x2e\x0c\xa6\x9b\x6d\x1c\x62\x6b\xd3\x52\x37\xa7\x12\x58\x4a\ +\x5f\x93\x0d\x49\xef\x68\x04\xc2\x19\xfa\xc5\x0d\x2d\x7c\x9f\x2f\ +\x58\x7b\x43\x10\x17\x83\x16\xc0\x91\xb5\x38\xea\x65\x1a\x04\xfb\ +\xe1\x9b\xe7\xe9\x0a\x97\xd5\x3e\x16\x85\x14\x7c\xc7\x31\x34\x54\ +\x3b\x80\x6e\x49\xc9\x3e\x90\xeb\x95\xa9\x5f\xcb\x90\x05\xa3\x34\ +\xd4\xc2\xd3\xa8\xc4\x67\x81\x39\xb4\x07\x6d\xcf\x93\x6c\xc6\x30\ +\x01\x01\x19\xef\x15\xb4\xef\xb9\x8d\x4c\xa9\x0d\xc7\x32\x24\x38\ +\xce\xee\xbd\x20\xa1\x1e\x28\x1d\x4c\x3a\x9d\xcc\x50\x5b\xb8\x20\ +\xfd\x64\x1e\x71\x7a\x6a\xcd\xd0\x49\x5b\x50\xf4\xee\x53\x6f\x97\ +\xb8\x8f\x15\x11\xa8\xb2\xb1\x21\xc9\xc4\xe7\xd4\x2a\x29\x9d\xd7\ +\x02\xf6\x9b\x90\x53\x13\x54\x4e\xa4\xd5\x73\x6d\xc6\xc4\xaf\x63\ +\x1d\xf1\x1a\x25\xce\x9c\x2b\x06\x52\x0d\xfb\x8c\xc8\x54\x0b\x9d\ +\xa4\x30\x33\xa6\xcd\x7f\x86\xad\x75\x61\xbe\x9a\xec\xfd\x65\x7a\ +\x11\xc6\xad\xbd\x86\xf3\xf9\xac\x4c\xa3\xe1\xc9\xe6\x0d\x7b\x74\ +\x26\x53\x4c\x52\x7a\x55\x12\xb1\xda\xd7\x04\x10\x31\x3d\xa7\xa0\ +\xb4\xaa\x60\xb3\x23\xe2\xe3\x88\xea\xc1\xb2\x23\x29\xb9\xb7\x4b\ +\xc9\xab\x69\xb7\x53\xb9\xb1\xec\x65\x45\xe8\x86\x24\xa3\x15\x3f\ +\x30\x26\x08\x75\x46\x3b\x10\x11\xd4\x5f\xf7\x84\x4e\x69\xa5\xb6\ +\xf8\xdc\x3a\xcc\x34\xed\x66\x5e\x27\x63\x6d\x3a\x99\x34\x02\xfa\ +\x82\x67\x97\x4e\x9c\xb5\x25\x1e\xa1\xb1\x1f\xd2\xc7\x32\x8f\xe5\ +\x63\x8e\xfd\xa5\xba\x7a\x40\x6e\x0c\x7d\x63\xce\x9f\x4e\x3f\x0b\ +\x0f\x63\x19\xa6\xa5\xa6\xde\x14\xd6\x65\x1d\x09\x58\x5e\x4a\x44\ +\xbe\x1e\xdb\xda\xfc\xdb\x12\x8d\x09\x61\xa8\x50\x4e\x65\x1a\x9d\ +\x18\x5b\x6c\xaa\x8c\x0f\x68\xaa\x68\xd4\xab\x23\x3e\xe1\x63\xcd\ +\xa1\xbb\x0e\x1e\xca\x03\x6d\x04\x90\x7a\x49\x6a\x07\xa7\x50\xa9\ +\xbf\xa5\xe5\xfb\x55\xdc\xa7\x52\x70\x60\xd6\x45\x2a\x15\x80\x2c\ +\x26\x75\xac\x46\x1c\x85\xb1\x8f\x15\x08\x01\x87\x07\x98\xad\xac\ +\x0e\x14\x11\x09\xce\xd4\x18\xbd\xc5\xa4\x1e\xae\x8b\x51\x70\x3c\ +\xdf\xcc\xe7\x80\x03\x14\x75\xb0\x3c\x13\xd2\x51\x4e\xb9\x00\xdc\ +\x58\x21\xcf\xb4\x0a\xca\x2b\x2e\xe0\x45\xf9\x13\x53\xa1\x53\xb2\ +\xd9\xb6\xb7\x22\x74\x34\x6f\xba\x89\xa6\xdc\x38\x22\x42\x06\xfa\ +\x44\x1c\x3d\x3f\xdc\x4a\x74\x27\xef\x69\x0c\x08\xdf\x14\x73\x2c\ +\x77\x32\x9e\x86\x15\x41\x66\xf7\x8c\xaa\xa3\xed\x55\x40\xfc\xc6\ +\x2a\xaf\x97\x6e\x41\x24\x4d\x32\x00\x7c\xdd\xfb\xc6\xa9\xb5\x4b\ +\x2e\x73\x05\x53\x6a\xf9\x86\x4c\xd0\xde\x18\x62\xbf\x37\x17\xed\ +\x24\x7a\x94\x0a\xd5\x5c\x6e\x37\xb0\x1d\x2f\x1c\xf5\x99\xc8\x05\ +\x17\x8b\x48\xa8\xb5\xd2\xc4\x71\x91\x28\xa2\x8c\xd4\x83\x1c\x67\ +\x1f\xf3\xde\x16\x17\x52\xcb\x4f\xe0\x95\x9c\x59\x4d\x67\xb0\x3d\ +\xfa\x7f\x43\x38\x15\x01\x46\xb1\x13\xb3\xf1\xb6\x14\x34\xba\x6d\ +\x2b\x65\x91\x43\x30\xff\x00\x9f\x59\xca\x4a\xc0\x9d\x98\x00\xf0\ +\x61\xc7\xcd\x5c\x88\xd8\xe1\x6e\x54\x80\x78\x27\xac\x3d\x28\xb3\ +\xbb\x16\x02\xc8\x7f\x7c\x41\xac\xae\x18\x96\x72\x7b\x4c\xa1\xe5\ +\xd3\xd5\x6b\xf3\x65\xfe\xbf\xd2\x6c\x09\x1c\x0d\xc6\xf7\xb0\x82\ +\x1c\x33\x6d\xb6\x62\xd3\x09\xd8\x93\x30\x5c\x02\xd8\xed\x20\x7b\ +\x35\xdf\x00\x58\x60\x46\xd1\x63\x7b\x5a\xd2\x64\x1c\x9e\xb2\x8a\ +\x42\xe4\x9e\xd0\xa5\x4e\xfb\x01\x62\x26\x5c\xdf\x24\x01\x04\xb0\ +\xb5\xb8\x33\xd9\x27\xb9\xeb\x22\x6a\xd4\x24\xd8\x03\x68\x43\x3e\ +\xb1\x74\xb0\xf0\x95\xc0\x3b\x6d\x04\x75\x3f\x6e\x21\xe0\xac\x1a\ +\x79\x1e\x90\x99\x71\xc4\xc5\x20\x70\x2f\x88\x74\x30\xcc\xfd\x00\ +\x98\x45\xf0\x63\x2a\x2e\xca\x2a\x9d\x4f\x98\xff\x00\x49\x16\x29\ +\xeb\x0c\xde\xf6\xbc\x4a\xde\xd9\x86\xae\x2d\x7e\xd2\x43\xff\x00\ +\x68\xe4\xcc\x73\xb4\xda\xf3\xc0\xe0\xb1\xe7\xa4\x4b\x9b\x98\x20\ +\xea\x19\x40\xe0\x1b\x48\xc9\xbf\x06\x3a\xb6\xe6\x04\x60\x09\x33\ +\x6d\x07\x07\x89\xd2\x33\x4c\x47\xb5\x95\xb8\x9a\xcb\x61\x70\x6e\ +\x22\x77\x8b\xf2\x4f\xd2\x36\x8b\x0b\x90\x6e\x41\x19\x8a\x79\x4f\ +\xb4\x6d\x36\xda\xd6\xe4\x18\x25\x69\xa8\xb8\x24\x8e\xc2\x1d\x37\ +\x53\x85\x5b\x18\x27\xaa\x50\x60\x6e\x05\x81\x9e\x0a\x94\xc5\x89\ +\x2c\xc7\xa7\x69\x45\x36\x01\x4a\x9b\x1b\xf5\xed\x12\xf4\xce\xfe\ +\x4d\xe1\x29\x2d\x83\xbb\x75\x03\xd6\x59\xa4\x5f\x0d\x41\xea\x60\ +\xe9\xa9\x06\x6b\x76\x8f\x23\xcc\xc4\x70\xa2\xd0\xb5\x48\x55\x37\ +\x21\x99\x87\x53\x3a\x2a\x3e\xe5\x08\xeb\x92\x27\x34\xfc\xe1\x40\ +\xc5\xe5\xe1\xf6\xb6\xdf\xa0\x99\xa6\x34\x26\xdb\xdb\x9e\xfe\x91\ +\x65\xc0\x60\x7a\x74\x94\x90\x1d\x42\x9c\x11\xfb\xc9\x2b\x53\x6a\ +\x66\xed\xc4\x21\x65\x51\x92\x22\x4f\x94\x11\xd4\xca\x74\xca\x2b\ +\x82\x49\xb2\xd3\x17\x63\xe9\x23\xa9\x53\x6b\xee\xb6\x4f\x17\x8c\ +\x15\x15\x73\x60\x08\xe6\xf1\x3a\xa0\xdb\x43\x0e\xf9\x12\xbd\x4a\ +\xa6\xfc\xb0\x2a\x3b\x41\x44\x2c\x06\xdb\xb2\x8f\x98\x5b\x89\xd2\ +\x56\x51\xd3\x5f\xcd\x89\xd7\xa2\xad\x4b\x4c\x34\xf6\x0d\xb9\x77\ +\x1b\xf7\xe9\xfb\x41\xa3\xa0\x43\x6d\x43\x2b\x0a\x4a\x2e\x7a\xdf\ +\xd2\x20\x35\x43\x5c\xd6\x46\xda\xc0\xe0\x18\x5b\xaa\x4c\x39\x68\ +\x53\x73\x75\xba\xb1\x5b\x15\xe6\x2e\x99\x6a\x07\x28\x59\x09\xc8\ +\x27\x17\x95\x6a\x16\xa0\xad\x4e\xa2\x20\x00\xa8\x37\x1d\x0f\x69\ +\x42\x53\x35\x46\xeb\x85\x2d\xf3\x2d\xb0\x66\x75\xac\x24\x2a\x54\ +\x5d\xd4\xa9\xaf\x9b\x90\x44\x59\xa1\x5b\x05\x49\xa6\xcb\xd0\x8e\ +\x44\xb4\x50\x4a\x0c\x37\xdd\x01\xcd\xc6\x63\x98\x21\xb3\x00\xa4\ +\x75\x37\x86\x9c\x41\x4a\x8d\x52\x33\x7b\x7b\xc3\x1a\x7d\xb9\x2e\ +\x57\xbe\x65\x22\x91\x61\x74\x2f\xed\xd3\xde\xf0\x7c\x31\x4c\xdd\ +\xb6\xfb\x93\x7f\xe2\x1a\xb0\xb4\x55\x19\x15\x01\xf4\x3d\x63\x17\ +\x4a\xb5\x32\xa0\x03\xd8\x89\x85\x69\x33\x0b\xd6\x0b\x6e\x02\xad\ +\xa5\x00\xd2\xb6\xd6\x35\x18\x74\x22\xc2\x5a\x85\xf6\x40\xfa\x72\ +\xaf\x4e\xc4\x75\xf5\x90\x78\x55\x28\x12\x54\x3a\x8f\x5c\x89\xd7\ +\xd3\xfd\xda\x91\x4f\x7d\x65\xb5\xfe\x6c\xfe\x90\x1a\xba\x35\xc8\ +\xb2\xb7\x66\x13\x32\xd3\x89\xa8\xd9\xb6\xbb\x2e\x79\xb8\x3d\xb9\ +\x8d\x7a\x54\xea\xa9\x64\x62\x4f\x63\x3c\x7c\xe8\x5b\xc3\x50\x57\ +\x37\x43\xfd\x26\x53\x02\xf7\x00\x91\xce\x39\x92\x41\xaa\x46\x42\ +\x1a\xfd\x6c\x60\xd6\x0b\xe0\x52\x36\xb1\x37\xb9\x9d\x1d\x5a\x0a\ +\xaa\xd4\xc8\xf3\x72\xa4\x75\x9c\xcd\x52\x95\x4a\x54\xd8\x81\xcc\ +\xd4\xba\x2a\x7b\x7d\xeb\xad\xee\x19\x4c\x52\xb2\xa9\xd9\x6c\x9e\ +\xb1\x94\x94\x8d\x52\x1f\xf7\x5a\x22\xa5\xd5\xc9\x71\x70\x0d\xa7\ +\x48\xc8\xec\x4d\x50\xea\x7c\xc3\x0c\x3b\x88\xf4\xa3\xb3\xe2\x14\ +\xd4\x0b\xad\xc1\x11\x28\x8a\xd5\x3c\x45\x6b\xed\xc9\x12\xdd\x10\ +\x35\x2a\xa3\x7e\x56\xbf\xd2\x16\xa8\xe5\x6a\x2c\x35\x75\x3b\x6e\ +\x31\x2e\x55\x6a\x79\xb8\x1d\xa1\xd7\xa8\x4d\x67\x23\xab\x1b\x44\ +\xef\x6b\x4d\xc6\x4d\xad\x54\x3d\xca\xd3\xda\x7b\x93\x16\x36\x85\ +\xb3\x1b\x93\x9c\x41\x50\x5b\x04\xe4\xcd\x16\x2c\x6d\xc4\x90\xcb\ +\x6d\x50\x15\x6d\x79\xd9\xf8\x2d\x0d\xe5\x0b\x8c\x27\x9c\x93\xff\ +\x00\x3d\xbf\x49\xc3\xa7\x7a\x95\x54\x0e\xa6\x7d\x21\xff\x00\x2b\ +\xf0\x3a\xd5\x2f\xb1\xab\x59\x54\xf6\x1f\xf2\xf3\x1c\xff\x00\x8d\ +\x71\x70\xbe\x29\xaa\xfb\x4e\xbe\xad\x4e\x84\xd9\x7d\x84\x87\x75\ +\x8c\x67\x86\x77\x5c\x10\x73\xcc\x4b\x02\x1c\x83\x8c\xce\x93\xa6\ +\x54\x8f\xbc\xa6\x47\x24\x40\xaa\x36\x69\x50\x5b\xe6\x62\xdf\x4e\ +\x3f\xbc\x5a\x3b\x2b\x0d\x87\x27\x12\x8d\x5d\xbe\xd0\x29\xde\xfe\ +\x18\x00\xdb\xd3\x99\x24\xaf\x86\x0b\xd8\x4f\x54\x20\x59\x07\x4c\ +\x9f\x78\x60\x86\x6d\xc7\x27\xbc\x5b\x03\x92\x41\x90\x30\x11\x61\ +\x1a\xac\x64\xe4\xd8\x88\xea\x44\x11\x91\xcc\x91\xe9\x72\x45\xf8\ +\x9a\x1e\xc4\x88\x3b\xae\x2d\x60\x23\x02\x12\x2f\x61\x02\x2a\x27\ +\xcd\x1c\xa9\x72\x18\x7e\xd3\x28\x2d\x8e\x6d\x1d\x40\xe4\x8f\xd0\ +\xcc\xda\x47\x4e\xe0\x0c\x46\xba\x8b\x5e\x24\xb0\x07\x98\x74\x37\ +\x3b\x63\x8e\xa4\xcc\xd6\x8e\xa1\x4d\x6f\xbc\xfc\xab\x93\x15\x55\ +\xb7\x54\x2c\x7a\xc6\xd5\xa8\x19\x42\x53\x1e\x41\xfb\xc4\xec\xb9\ +\xc9\x1f\xac\x10\x18\x80\x6d\x35\x32\x71\xc4\xc7\x52\xa2\xdc\x98\ +\x35\x5b\x62\x58\x9c\x98\x83\x19\x85\xf1\x90\x22\x5e\xa6\xd1\x73\ +\x00\xb1\x02\xf9\x20\xc5\x56\x6d\xd6\xb0\x9a\x91\x68\x2a\xb8\x20\ +\xf7\x93\x66\xe2\xf7\x87\xe6\x20\x9b\x71\x16\xd7\xb5\xa6\xa3\x22\ +\x0c\x06\x2f\x0d\x58\x58\xd8\xe6\x4f\x62\x0c\x65\x21\x7f\x31\xb8\ +\x11\x06\x52\x2d\xbb\xd3\xac\xa9\x0a\xb0\xfb\xb3\x6b\x73\xde\x4b\ +\xb8\x9f\x28\x18\x8d\xa6\x6d\x60\x2e\x3d\x60\x62\x92\xc4\x30\x16\ +\xe9\x1e\x14\x54\x5b\xdf\xcc\x20\x00\x2a\x05\xe8\xd6\x8c\xa6\xa5\ +\x58\x1e\xa2\x62\xd6\x8e\xd2\x80\x88\xcc\x79\xe9\x36\xa7\x96\x88\ +\xb7\xe2\x39\x87\xaa\x40\x94\x95\x97\x86\xe9\x03\x50\xc9\xe4\x52\ +\xc7\x8b\xda\x64\x87\x4d\x4d\x4d\x60\x4f\x9a\xd9\x9a\xed\x66\xee\ +\x49\xcf\xa4\x2a\x0e\xaa\xaf\x61\x63\x6e\x62\xaa\x1c\xf1\xc4\x92\ +\xa4\xab\x74\xb5\xec\xc2\x13\xb8\xa9\x4e\xed\xf5\x9c\xdf\x18\x29\ +\xbd\xe5\x34\x6a\x07\x61\xb4\x5e\xf8\xb4\xb1\x6a\xaa\x4b\xe0\x68\ +\x5d\xb9\xf1\x18\x0f\xa4\xe7\x6a\x52\xef\x83\xed\x3a\x3a\xea\x82\ +\x96\xd5\x02\xe8\x8b\x63\xef\xd6\x46\x5b\x4b\x56\x9e\x2a\x04\x6e\ +\xc6\x53\xfa\xab\x88\xd5\x2c\x00\x37\xcf\x51\x28\xd3\x6a\x5e\x89\ +\x25\x08\x31\x55\x74\x8e\x41\xa9\x47\xcc\xa3\xa0\x39\x12\x7f\x32\ +\x1b\xd8\xce\xbd\x56\x1d\x5f\xb4\xbe\xa0\x5f\x7e\x46\x40\xbc\x7d\ +\x05\x56\x60\x2a\x22\x93\xdc\xe2\x71\xe8\xb6\x77\x0c\x58\xcb\xd7\ +\x59\x54\xa5\xb0\xc3\xa8\x99\xb3\xf8\x65\x74\xbc\x7a\x26\xa1\x1e\ +\x15\x46\x42\x73\x63\xc4\x60\xac\x94\xee\x78\x52\x3d\xc9\x9c\x90\ +\xf4\xd8\x82\x55\x90\xf7\x8f\xa5\x5a\xba\x8f\x22\xf8\x8a\x7b\xe7\ +\xf6\x99\xfc\xb5\xae\x82\x6a\xd1\x41\x08\x3c\x44\xec\xfc\xcd\xdf\ +\x4d\xf2\x87\x63\x76\x53\x23\xa5\x5d\xc1\x0c\x11\x14\xf6\x38\x8e\ +\x4d\x69\xbe\xd2\x89\xff\x00\xfc\xe2\x67\x0e\x8d\x51\xc3\x5c\x54\ +\x27\xde\xf1\xc1\xec\x3c\xce\x97\xbf\x68\x03\x56\x84\x64\x20\x27\ +\xa0\x9e\x0d\x4c\xfe\x1b\xfb\x2d\xe4\x82\xd5\x28\xee\x24\xd3\xcf\ +\x75\xc4\x16\xac\x08\xf2\x38\x1e\x96\xcc\x7d\x3a\x0b\x53\x3e\x1d\ +\x40\x3d\xa7\x9b\xe1\xe8\xc7\x15\xd1\x4d\xb8\x7e\x65\xb1\x65\x4d\ +\xe2\x55\x0d\xb9\x5d\x87\x62\x23\x3e\xd0\xee\x6d\x58\xef\xbf\xe2\ +\xe0\xfe\xb0\x46\x92\xb0\x62\x10\x5e\xdd\x8c\x5d\x4d\xc8\xdb\x6a\ +\x21\x06\xd7\xb5\xac\x65\xd2\x53\x4b\x50\xb4\xaa\xad\x9d\x88\x3d\ +\x0c\x6f\x8c\xea\xc5\x6c\x01\x52\x41\x90\xb8\x42\x40\xdd\x9b\x75\ +\x95\x54\xff\x00\x52\x9b\x5f\x15\x17\x6d\xfd\x44\xac\x46\x78\x9e\ +\x2d\x20\xe7\xeb\x26\xd6\xd2\x25\x52\xe2\xe5\x7a\xf7\x8f\xf8\x79\ +\x1b\xab\xd1\xa8\x40\xb8\xeb\xd0\xc5\xea\x59\x86\xd5\x38\x84\xf5\ +\x20\x50\xcb\x5d\x0e\x2d\xb8\x5e\x2e\xba\x5e\xa3\x82\x06\x09\x8e\ +\x6f\x2e\xa5\x58\x7c\xa5\x86\x3b\x44\x6a\xdc\xd3\xd5\xd4\x16\xfc\ +\x47\xf9\x9d\x23\x20\x16\xa7\x4c\x03\xc9\xc1\x9d\x1f\x83\x0f\x0e\ +\xa3\x17\xca\x2a\x13\x39\x4d\xe6\x18\xbd\xef\x3a\x9a\x5f\x27\xc3\ +\x75\x0e\x0e\x42\x84\x17\xf5\x97\x2f\x14\x73\xbe\x29\x41\x68\xea\ +\x88\x03\xc8\xc3\x72\x91\xd4\x48\x0a\x5f\xe5\x6f\xd6\x76\x95\x46\ +\xb3\x42\x69\x37\xfa\xd4\xb2\xb6\xea\x3b\x4e\x4f\x86\xc4\x95\x18\ +\xb7\x79\xae\x34\x58\x59\x53\x4e\x9d\xdb\x93\xc4\x10\x40\x4b\x11\ +\x93\x18\x77\x6e\x1d\x84\x16\xda\xcd\x6e\x0c\xd0\x55\xf0\x7a\x5e\ +\x2e\xa4\x63\xa8\x00\x8e\xe6\x74\x3e\x3d\x58\x16\x5d\x35\x3f\x92\ +\x90\xb1\xf7\x31\xbf\x06\xd3\xfd\x8f\x42\xfa\xd7\x17\x0a\xa5\x97\ +\xdc\xff\x00\xeb\xf9\x9c\x77\xac\xd5\x05\x4a\x87\x24\xb5\xcc\xe7\ +\xef\x2d\x6b\xc8\x8d\x89\x0f\x6b\xe0\x4c\x77\xf3\x90\xc2\xf3\xd5\ +\x0f\x58\x15\xbe\x7f\x79\xd1\x83\x74\x8a\x06\xa0\x55\x1c\x53\xf3\ +\x5b\xf8\xfd\xe2\x89\x62\x19\xcf\x2c\x61\x61\x68\xfa\xb1\x85\x6b\ +\x7c\xc2\xe1\x45\xcf\xbc\x88\x0e\x2c\xa3\xdc\xcd\xdd\x61\xb4\xe4\ +\x40\x0a\x77\xdc\x1e\xb9\xef\x08\xa7\xd2\xd2\x0d\xd8\x08\xb8\x87\ +\x4d\x18\x37\x04\x08\x29\xfc\x4a\xa8\x01\x9b\xe3\xb4\xa9\x7a\x90\ +\xbb\x4a\x69\x8f\x29\x98\xaa\x81\x80\x22\xc7\xd2\x50\xb4\xba\x8c\ +\xcc\xda\x64\x62\xae\x31\x83\x07\x20\xc7\x81\x91\x79\xe1\x46\xc3\ +\xc4\xac\x4a\xa1\xe0\x75\x6f\x69\x9d\x38\x52\xa3\x3d\xc8\x20\x28\ +\xf9\x98\xf0\x21\x0a\xb7\x1e\x15\x2c\x27\x7e\xa4\xcc\xa9\x53\x78\ +\xda\x00\x54\x1c\x28\x8a\x40\x01\x20\x03\x8e\xb2\x4a\x69\xb0\x5c\ +\x1e\x7d\x21\x92\x8a\x2e\x79\x93\xf8\x8b\xd3\x9e\xf3\x55\x81\x05\ +\x9b\xe4\x1c\x98\x62\x1a\xb5\x8f\x88\x57\x00\xe2\xf2\x6a\x95\x17\ +\x79\xdc\x09\xcf\x79\x95\xb5\x05\xbd\x07\x12\x7a\xad\xe5\xbd\xe6\ +\xa4\x16\x9f\xe2\x2e\x76\x8e\x3b\xc4\xbd\x4d\xc2\xe2\xd1\x6b\xd7\ +\xda\x60\x05\x81\x0a\x09\x9a\x1a\xc2\xc5\x6f\xeb\x12\xdb\x8d\xad\ +\x7b\xc6\xed\x03\x2c\x6e\x7b\x08\x24\xee\x04\x2e\x3f\xac\x50\x48\ +\xda\x3c\xc7\x3d\x84\xf0\x72\x46\x7a\x71\x0d\x10\x11\x9c\x4d\x14\ +\xe4\x18\x85\x86\x6f\x1b\x4c\x92\x79\x98\x94\x58\x8d\xd6\xc4\x75\ +\x2b\x53\xe9\x73\x0a\x4f\xa0\x1a\xd7\x26\xc2\x58\xb5\x05\x80\x22\ +\xfe\xbd\x64\x1b\x89\x60\x4c\x72\x30\x23\x06\x66\xc6\xa3\xa2\x54\ +\x96\xa7\xf8\xd1\xbf\x68\x9f\x88\xd2\xdb\xa8\x6b\x65\x7a\x11\x2a\ +\xd1\x23\x3e\xd7\x53\x95\x93\xb5\x50\xd5\x1b\xc4\x5c\x13\x31\x3d\ +\x68\x14\x7f\xd2\x3d\xe2\xaa\x3d\x81\x94\x14\x29\x4c\x95\xc8\x27\ +\x91\x24\xaa\xa7\x71\xb8\xc4\x60\xa9\x98\x96\x37\x96\xfc\x33\x75\ +\x30\xd5\x88\xc2\xe1\x7d\x4c\x5e\x97\x49\x56\xb1\x00\x79\x54\x72\ +\x4f\x48\xcd\x76\xa2\x95\x35\x1a\x7d\x3e\x55\x7f\x17\x73\xde\x6a\ +\xdd\xea\x09\xfd\x1d\x6a\xb6\xb8\x63\xb9\x4f\x33\x9f\xac\x05\x08\ +\x29\x6d\xa7\x82\x3a\xcc\x4a\xac\x1b\xcd\x90\x79\x86\x72\xb7\x56\ +\x0d\x4c\xf2\xa4\x4a\x4c\x54\x81\x54\xe1\xa9\x9d\x8d\xe9\x35\xea\ +\xb5\x45\x17\x55\x2d\xd7\x1c\xc8\xce\xe0\xd1\xa1\xee\xd7\x18\x61\ +\x35\x8c\xeb\x49\x4b\xd8\xa9\x43\xea\x2f\x09\x37\x5e\xea\x15\xbd\ +\x8c\x6a\x56\x5a\x96\x15\xe9\x82\x47\xe2\x10\x8a\xa0\x37\x5a\x65\ +\x87\x42\x0c\xb5\x3c\xae\xc1\x7e\x42\xbf\xf9\x42\x5a\xb7\x3e\x5b\ +\x93\xd3\x66\x20\x8a\xef\x7b\x0a\x63\xff\x00\xb6\x61\x7d\xa1\xed\ +\x6d\xa0\x7f\xe1\x88\x15\x14\xd7\x51\x53\xfd\x4a\x42\xdd\xd8\xda\ +\x37\xc0\xa4\x16\xcd\xa8\x07\xb8\x02\xf2\x55\xb1\x01\x9a\xa3\x2b\ +\x1f\xcd\x99\x84\x9d\x9e\x56\x53\xea\x4d\xa6\x70\xaa\x46\xd2\xd2\ +\xfc\x0c\x7f\xf2\x38\x8d\xfb\x66\xd2\x05\x1d\x8a\x3f\xda\xb3\x9f\ +\x71\xcb\x92\xd8\xe9\xc4\xd5\x37\x3e\x45\x22\xc3\xb4\xbf\x2b\x56\ +\xd4\xd5\x6a\x1b\x9a\xcc\x07\x5b\xb5\xa1\x51\xa8\xb5\x1c\x0b\xb3\ +\x37\xa0\x83\xa2\xf8\x7d\x5a\xc0\xd7\xae\x4d\x3a\x3d\x5a\xd9\x3e\ +\xd1\x8f\x5d\xa9\x93\x4f\x49\x41\xa9\xa5\xb2\xe6\xfb\x8c\x2e\x7c\ +\x2b\x53\x6d\x1f\x35\x67\x00\x76\xbf\x9b\xf4\x10\xb5\x1a\xbd\x3d\ +\x65\x0b\xe1\xef\x03\x8d\xd3\x8e\x43\x8b\x96\x46\x76\x84\xa6\xab\ +\x53\xb1\x16\xe4\x7b\x4c\xfe\x4e\xba\x95\x16\x88\x5d\xcb\xa7\xa6\ +\x40\x19\x04\xe6\x68\x34\x75\x5a\x77\xa7\x4c\x1a\x4f\x4c\xee\x17\ +\x33\x93\x77\x24\x29\x04\xf7\x9d\x9d\x0e\x96\x9d\x26\x55\xa8\xec\ +\x6a\xba\x65\x40\xc0\x06\x16\x62\x9d\xa4\xa8\xe6\x9d\x40\x5d\x6c\ +\xc4\x5b\xeb\xda\x1e\xac\x1a\x88\xac\x45\x8a\x83\xfc\x4a\x3e\x3b\ +\x4a\xf4\xa9\x37\x2e\xbd\x3b\xf1\x14\xed\xe2\xfc\x27\x72\x9b\x54\ +\xa4\xc0\x93\xd7\x22\x52\xfd\x2e\x7a\x59\xdc\x23\x77\x11\x1a\x95\ +\xdf\x5e\xaa\x1f\x99\x5d\xad\xea\x2f\x1c\x87\x73\xa5\x65\xb0\xc8\ +\xdc\x3b\x5e\x16\xac\x03\xa8\xa8\xe3\x0e\xac\x47\xef\x37\x3a\xac\ +\xa1\x29\xd5\x4c\xe9\x12\x29\x7c\x25\x49\xe2\xa5\x5f\xd8\x09\xce\ +\x41\x9b\xa1\xc9\x37\xb1\x97\xfc\x51\xd5\x34\x7a\x4a\x64\x64\xa9\ +\x63\x6f\x53\x1b\xdd\x82\x25\x42\xd4\x35\x17\x42\x78\xba\x91\x29\ +\xd5\x69\x69\xea\x68\x1d\x46\x96\xdb\xff\x00\xee\x27\x51\x25\xd3\ +\xd4\x0e\xbe\x11\xf2\x91\xc3\x7f\x48\xaa\x3a\x8a\xba\x3d\x4e\xe5\ +\xb8\x20\xda\xc7\xac\xb2\xa4\xcd\x74\x27\x71\xcf\x68\x5a\x4d\x39\ +\xd4\x6a\x29\xd1\x51\x96\x39\xf6\x9d\x4d\x55\x0a\x5f\x12\xa2\x75\ +\x3a\x4b\x0a\xc3\xe7\xa6\x39\xf7\x8c\xff\x00\x0a\xe9\xed\x5e\xae\ +\xaa\xa0\xb7\x87\xe5\x17\xef\x2b\xcb\xa5\x9d\x9d\xf1\xfa\xdf\x64\ +\xd1\x26\x89\x05\xb1\x76\x02\x7c\xfd\x83\x50\x26\xdd\x65\xbf\x16\ +\xd4\x8d\x46\xa1\xea\x13\x82\x4d\xbd\xba\x48\xc9\x02\x81\x17\x37\ +\x26\x3c\x66\x45\xca\xed\x48\xc2\xf7\x16\x99\x51\x49\x7e\x3a\x46\ +\x1c\xc7\x84\xbb\xa3\x74\xb5\xcf\xd2\x6d\x94\xac\xa3\xc5\x5a\x63\ +\xa6\x0c\xda\xc2\xed\xb6\xfc\x1b\x9f\x78\xdd\x2d\x3d\xfa\x8d\xc7\ +\xdc\xc0\x2a\xcc\xf6\xb1\x26\xfc\x49\x12\xaa\x2e\x33\x98\x48\x77\ +\x1e\x23\x42\x2a\xb5\xaa\x13\xea\x04\xcb\x81\xe5\x45\xb0\xef\x20\ +\x25\xa7\xf9\x88\x00\x7e\xb1\xa9\x82\x02\xad\x87\x73\x14\x39\xb6\ +\x48\x8e\x54\x2c\x6c\x0f\xb0\x81\x36\x90\x3b\xb0\x6f\x2f\xd3\x25\ +\x4a\x8c\x15\x14\x98\xba\x1a\x5a\x74\xc0\x3a\x82\x41\xe7\x60\xf9\ +\xbf\xf5\x28\xf1\x8b\x0d\x8a\x02\x20\xfc\x2b\xfd\x7b\xcc\x5a\xd4\ +\x38\x0a\x34\x2e\x6e\x2a\xd4\xe9\xf9\x47\xf7\x92\xd7\x66\xa8\x4b\ +\xb1\xbb\x77\x30\xb2\xc4\x28\x5c\x99\xbe\x15\x40\x2f\xb0\xfb\x9c\ +\x09\x92\x99\x94\x05\xbb\x60\x7e\xe6\x21\xdb\x7f\x95\x54\xda\x51\ +\x50\x28\x6b\xd5\xaa\xb7\xec\xb9\x89\x2f\x4d\x72\x94\xaf\xff\x00\ +\x91\xfe\x82\x6e\x02\x59\x80\x16\x5b\xde\x54\xb4\xcd\x7d\x3a\x2d\ +\x21\xe6\x5e\x41\x89\x7a\xb5\x00\xdc\x81\x55\x7d\x14\x45\x33\xbb\ +\x1f\x33\x13\xee\x63\xe8\x35\xa8\x54\x1f\x3a\xaa\xdb\xa9\x31\x2d\ +\x4a\x91\x27\x75\x6f\xa0\x52\x60\xad\x42\xbf\x2b\x1b\xcd\x1a\x9a\ +\xa3\xf1\x5f\xdc\x4b\xb4\x35\x5a\x42\xe4\x0b\x80\x3f\x14\x10\xa5\ +\x89\xbb\x00\x2d\xc0\x9e\x5a\xee\x41\x27\x69\xff\x00\xeb\x09\x2a\ +\xb5\xc5\x95\x7f\x49\x20\x9a\x20\x8c\x11\x7b\x4f\x53\xd2\x35\xb2\ +\x40\xf7\x9e\x7a\x8f\x9c\xfe\x91\x7b\x98\xf2\xc7\xf5\x88\x53\xf6\ +\x74\x18\x7a\xaa\x4f\x4b\x41\xa8\x15\x0d\x82\x12\x7b\x98\x80\x18\ +\xf5\x85\xb8\xde\xc4\xc0\xb1\x99\xcf\x37\xb4\x3a\x67\x37\x81\x76\ +\x53\x63\x98\xda\x6e\x30\x0a\x83\xf4\x88\x12\xf9\x88\x18\x10\xd0\ +\x30\x36\xe8\x63\x29\x53\x46\x00\x85\x6b\xc7\x2d\x13\x83\xb5\x87\ +\x6b\x89\x9b\x5a\xc7\x43\xe0\xcc\x5b\xc5\x07\xa2\x99\xcc\xa8\xd9\ +\x6b\xf7\x9d\x4f\x85\x52\x74\x4a\xef\x6f\xc1\x61\x39\xba\x8d\x3d\ +\x6d\xe6\xcb\xd6\x62\x7a\xd5\xf1\xea\x35\x5e\x9a\x9d\xac\x67\x9f\ +\x58\xc1\x2e\x51\x6f\xde\xd2\x77\x15\x51\x72\xa7\x98\x8a\xb5\x2e\ +\xa2\xf3\x78\xce\x9b\x57\x5d\x54\xdd\x2f\x65\xf4\x93\x3d\x53\xe8\ +\x60\x54\x6c\xde\x2f\x71\x26\x6a\x46\x74\xd0\xec\xdc\x09\xe5\xac\ +\xca\x79\x87\x44\x2f\x86\xc1\x8d\x98\xf1\x13\x50\x10\xd6\x92\x7a\ +\x9d\x46\xe0\x90\x7d\xe3\x91\x50\xfc\xd4\xca\x9e\xe2\x0d\x3a\x24\ +\xad\xe5\x14\x9f\xc2\xc0\x20\x8f\x59\x55\x04\xb4\xe8\xb7\x0f\xe6\ +\xfd\x0c\x2f\x0a\xa2\x35\xd0\x5e\xdd\x44\x2a\x75\x34\x8c\x3e\xf2\ +\x91\x07\xfd\xa6\x55\x4e\xa7\xc3\xd1\x6f\x7a\xd7\xf4\x02\x66\xdb\ +\x1a\x48\x37\xb1\x00\xd8\xde\x7a\x8d\x12\xd5\x2c\x15\xac\x0f\xeb\ +\x2f\xff\x00\xaa\x68\xa9\xdc\x26\x8c\xd5\xed\xe2\x1b\x7f\x13\xda\ +\x9f\x8b\x56\xa7\x4d\x3c\x0a\x74\xe8\x96\x17\xf2\xac\x36\xff\x00\ +\x16\x42\x29\xfc\x2f\x5b\x5c\x97\xf0\xc8\x04\xda\xe7\x11\x9f\xf4\ +\xca\x14\x81\xfb\x66\xb6\x8a\x11\xd0\x35\xcf\xed\x24\xab\x5f\x57\ +\x5e\xe6\xa5\x6a\x87\xaf\x99\xb1\x27\x34\xd4\xb5\x8b\x16\x27\xb4\ +\x72\xff\x00\x57\x4e\xa8\x6f\x83\x51\xda\x01\xa9\x54\xf5\x21\x6d\ +\x2d\x3a\x8d\x26\x97\x4e\x2b\xb6\x97\x61\x23\xee\xe9\xb1\xb9\x3e\ +\xb6\x9c\xda\x5a\x6a\x7a\x0a\x43\x53\xa8\x4d\xf5\x88\xbd\x2a\x47\ +\xa7\xa9\x90\xd7\xad\x5a\xbb\xb5\x4a\xcf\x73\x7e\xf3\x3f\x9d\x3b\ +\x8e\xe8\xf8\xf3\x94\xb1\xd3\xd2\x1d\x01\x6e\x82\x32\x97\xc5\x2a\ +\xd4\xbf\x86\x34\xc6\xc2\xe6\xe2\x7c\xb9\xbe\xe0\x37\x2d\xa3\x03\ +\x3a\x9f\x29\xfa\x89\x7f\xc7\x17\xea\xbe\xb2\x9e\xaa\xab\x26\xf7\ +\xd3\x52\x70\x78\x21\xad\xfd\x26\x0d\x4e\x98\x3e\xda\xba\x54\x5e\ +\xbe\x56\x92\x7c\x3f\x59\x46\xb6\x89\x52\xa8\xd9\x54\x62\xfc\x03\ +\xeb\x0a\xb5\x1a\xea\xd7\xa4\xeb\x50\x0c\xdb\xad\xa7\x3c\xed\xad\ +\x58\x4e\x88\x91\xfe\x58\x37\x62\x07\x1e\xf0\x75\x3f\x12\xda\xcf\ +\x4e\x8d\x0d\xae\x2f\xe6\x23\xb4\x9e\x93\x32\xa7\x88\xab\x62\x30\ +\x7a\x5a\x43\xf1\x5d\x6f\x88\x01\xa1\xe5\x16\xb3\xfa\xc6\x71\xda\ +\xad\xc5\x95\xf5\x25\xc5\x3a\xee\x77\xad\x41\xb1\xbf\xda\xc3\x98\ +\xcd\x00\x35\xde\xb5\x16\x5b\x78\xb4\x88\x1e\xe0\xe2\x73\xfe\x10\ +\x4e\xa7\x4d\xa8\xd2\x90\x06\x43\x21\xff\x00\x74\xaf\xe1\x95\xd9\ +\x6a\x52\xa9\xb4\x87\xa6\xe1\x58\x77\xbf\xff\x00\x91\xb3\x3a\x12\ +\xb9\x65\x8d\x36\x5b\x1c\xf5\x1d\xf3\x28\xd7\x2e\xcd\x5b\xb8\x20\ +\x82\x6f\x03\xe3\xc8\x28\xeb\x6b\x6d\x18\x5a\xac\x00\xfa\xc3\xd5\ +\x55\x0e\x56\xa8\xcd\xd5\x6e\x3d\xc7\xff\x00\xb3\x5f\xe8\x4c\xf4\ +\x80\x75\xa8\x96\xd8\x7f\x69\xbf\xe2\x12\x57\x57\x4e\x9d\xed\xb2\ +\x92\x8f\xda\x33\x4e\x40\x71\x6b\x32\x1e\x91\x9f\xe2\x2a\x05\xb5\ +\x8e\xe0\x8b\x58\x0f\xda\x52\xf6\xbe\x38\xf4\xea\x5b\x70\x3c\xda\ +\x31\x6a\x25\x61\xb6\xb9\xb3\x7e\x16\x89\x28\xcb\xba\xe2\x2a\xa7\ +\x94\x0f\xeb\x3a\x63\x07\xa5\x4d\x46\x87\x50\x1d\x58\xab\x0e\x08\ +\xe0\x89\xf5\xbe\x77\xf8\x46\xe4\x5a\x74\xeb\x56\x4b\x91\xc0\xdc\ +\xc0\x7e\xf6\x9f\x21\xa5\xae\xbb\x92\x85\x61\xbd\x09\x1c\xf4\x9f\ +\x43\xfe\x23\x6a\x87\x4f\xa5\x14\x01\xb2\x8d\xe4\x2f\x2b\x7e\x05\ +\xbd\xad\x39\xf3\x9d\xc6\xb8\xdc\x8e\x16\xb6\x9b\x52\xa9\xb1\xd4\ +\xab\x0c\x10\x60\x85\x1f\x66\x6b\xe7\x22\x5b\x5f\xe2\x2b\x55\x85\ +\x3d\x6d\x10\xe0\x63\x70\xc3\x09\x9f\x65\xa3\x55\x09\xd3\x56\x0c\ +\x18\x7c\xad\x83\x37\xbf\xd1\x9f\xc7\x32\xd7\xe3\xe9\x2b\xa6\x2d\ +\xa7\x2d\xfe\xdb\x1f\xd6\x31\x7e\x1b\xab\xb9\x1e\x1f\xb1\xbc\x23\ +\xa7\xab\x4b\x4b\x55\x6a\x27\x04\x70\x65\xaa\x44\xa4\x1a\x74\x55\ +\x94\xd8\xb3\x5e\xfe\x82\x0b\x56\xaa\xc3\x6e\xec\x1e\x6d\x8b\xc6\ +\x56\x04\x78\x63\xfd\xa3\x06\x31\x28\xd8\x5d\x46\x7d\x7a\x48\x25\ +\x5a\x63\x77\x9a\x0d\x52\x00\x5b\x09\x6f\xd9\x6a\xd4\x1e\x4a\x64\ +\x0f\xcc\xf8\x1f\xbc\xe9\x51\xf8\x32\xe9\xb4\xeb\xaa\xd5\xde\xb1\ +\x71\x75\x14\xd4\x95\x1e\xe6\x57\x94\x87\x2b\x95\xa3\xd2\xb5\x54\ +\xf1\x5c\x8a\x74\xff\x00\x3b\x75\xf6\xef\x2f\xa5\x4d\x95\x7f\xca\ +\xd2\x65\x5e\xb5\x5f\x04\xfb\x76\x8c\x3a\x95\x4a\x85\x97\x46\x5c\ +\x81\x61\xbe\xe2\xdf\xa7\x1f\x48\x93\xa9\xd4\xb3\x5c\x01\x4e\xff\ +\x00\x97\xfb\x99\x9e\xe9\xea\x28\xa1\xa4\x46\x24\xbd\x66\xb7\x5d\ +\x88\x4f\xee\x6c\x25\x28\x9a\x6a\x43\xe4\x07\xd5\xea\x0f\xe0\x4e\ +\x76\xfa\xd5\x33\x55\x99\xcf\xab\x5e\x35\x0e\x00\xb5\xa6\x6c\x31\ +\x6f\xda\x68\x2d\xf6\xb1\x18\xe1\x12\xdf\xda\x0d\x13\x46\xb5\x4f\ +\x2d\x03\xea\x4b\x19\x23\x2f\x9b\xd6\x75\x7e\x09\x4d\x48\x62\x72\ +\x57\x30\xbd\x43\x3b\x73\xb5\xaf\x4e\x86\xa0\xd3\xfb\x35\x30\x47\ +\x52\xc4\x9f\xe6\x23\xed\x34\x8e\x02\xec\xf6\x02\xd0\xbe\x20\xcd\ +\x53\x52\xec\xc2\xd9\xb4\x85\x97\x69\xb8\x17\x9b\x93\x59\xb5\x56\ +\xe2\xc4\x8a\x75\x03\x7a\x5e\xd2\x5a\xb5\xab\xa1\x20\xbb\xaf\xa1\ +\x82\x2f\x7c\x73\x1a\x6a\x06\xa5\xb6\xa0\xdc\xa3\x1e\xa2\x39\x89\ +\x3b\x57\xa8\xc6\xd7\x46\xf7\x51\x37\x78\xb8\x2d\x4a\x9f\xe9\x69\ +\xea\xb4\x36\xae\xe4\x3b\x90\xf5\x10\x6c\x7b\xe2\x21\x42\xb6\x90\ +\x53\x26\xa6\x9d\x8d\xcf\x2b\x52\xdf\xc8\x8d\x46\xf8\x71\xb7\xdc\ +\xea\x41\xe9\xe7\x1f\xda\x4b\x53\xfd\x3a\x61\x86\x0e\x63\x68\x85\ +\x15\x17\x3c\x19\x62\x15\x4f\xb0\x80\x71\x5f\xea\xc3\xfb\x45\x28\ +\xd0\x13\x7f\xbf\xfa\x01\x37\xe2\x08\x16\xab\xed\x18\x26\xe2\x21\ +\x14\x81\x91\x28\x96\x21\xf8\x70\xfc\x1a\x8f\xd4\x4d\x73\xf0\xee\ +\x94\xeb\x1f\xa8\x92\x10\x07\x1c\xcc\xfa\x4b\x16\xa9\x35\x34\x83\ +\x2b\x41\xcf\xfe\x4d\x09\x75\x2a\xb9\xa7\xa7\xa6\x07\x7b\x5e\x4b\ +\x68\x4b\x71\x83\xc4\xb1\x6a\xfa\x7a\xca\xa4\x00\x08\x5f\x61\x3c\ +\x6b\xd5\x26\xc5\xda\xd7\xef\x24\x5b\x10\x19\x2f\x8e\x93\x69\xb8\ +\x2e\x2e\x7e\x90\xfc\xc3\xae\xdf\xc3\xcb\x7f\xd3\x75\x35\x2f\xc5\ +\xa7\x33\x56\xc7\x7e\x18\xe4\x4e\x96\x9a\xcb\xf0\x2d\x4b\xde\xc3\ +\x70\x9c\x8a\xcd\xbc\xd8\x1e\x00\x98\xe3\xe9\xbe\x16\xd5\xaa\x04\ +\xc3\x9f\xd6\x26\xa5\x5a\x8c\xa3\x86\x37\xed\x18\xc1\x48\x00\x70\ +\x73\x0e\x8d\x55\xa1\x40\x8f\x0b\xf1\x58\x90\x73\x3a\x32\x99\xc1\ +\x03\xce\xab\x7e\xd6\x99\xb0\x58\x12\x96\xfa\xc7\x1d\x45\x12\x4e\ +\xf4\x60\x3a\x5b\x33\x05\x5a\x06\xe4\x60\xfa\x89\x02\x8e\xdf\xca\ +\x62\x6a\x5a\xf8\x32\x8f\x2b\x0b\x5c\x40\xa9\x44\xd8\x91\x9b\x45\ +\x1e\xac\x54\x58\x19\xa3\x63\x72\xb9\xee\x0c\x16\xc1\x83\x92\x64\ +\x4d\x4a\x6a\xc7\x0c\x47\xb8\x85\xe1\xa5\xff\x00\xd4\x59\xb4\xa9\ +\x54\xf0\xcf\xe1\x07\xa9\xc4\xf1\xd8\x08\xdd\x53\x75\xba\x08\x22\ +\xfc\x3a\x5b\xf2\x4b\x7e\xd2\xbd\x53\x5d\xd4\x00\x00\x0a\x07\x1e\ +\x92\x62\xe9\x7c\x0f\xd7\x31\xce\xde\x35\x30\xc0\xdd\x94\x5a\xc6\ +\x15\x15\xe1\x96\x24\xdc\x9e\xd3\xa1\xa7\xa6\x9a\x1d\x3f\xda\x6b\ +\x28\x6a\xa7\x34\xe9\xff\x00\x53\x17\xa3\x41\x41\x3e\xd5\xa8\xc8\ +\x07\xc8\x9f\x98\xc5\xea\xab\x3e\xa5\xda\xa3\x9c\x9f\xda\x17\xbe\ +\x8f\x88\xf5\x55\x2a\x57\xac\xd5\x6a\xbd\xd8\x9c\x98\x86\xb7\x56\ +\x16\x85\x58\xde\xc0\xf1\x12\xd9\xc4\xdc\x8c\xd6\xda\xe7\x0c\x23\ +\xb4\xd4\xea\xbb\xaa\xd3\x17\x24\xe2\x2e\x9d\x32\x5b\x22\xfe\x82\ +\x74\x74\x48\x52\xb2\xb9\x21\x76\x82\x6c\x3d\xa1\x6a\x90\xdf\x01\ +\x95\x76\xd4\x2a\x48\xfc\xa6\x5b\xa0\xd5\x94\xb5\x13\x44\x95\xe2\ +\xe3\x91\xeb\x39\xca\xa0\x9d\xc8\xa4\x9b\xf2\x67\x43\xc5\xfb\x35\ +\x1f\x16\xab\x03\x51\x6d\xb5\x07\x33\x9d\x6e\x1f\xf1\x5f\x14\xd3\ +\x1a\x6a\x24\x03\x7f\x3b\x13\x6b\x89\xce\x4d\x13\x28\xb3\xd4\xa4\ +\x14\x8e\x0b\x44\xb3\xbd\x5d\xec\xcc\x6e\xd7\xcd\xfb\xc1\x24\x05\ +\xa7\x7b\xde\xdc\xfb\x46\x4c\x98\xad\x74\x34\x3a\x5a\x74\x2a\x17\ +\xfb\x5a\x05\x20\x03\xb7\x3d\x71\x3b\x7a\x43\xa5\x02\xad\x7d\x38\ +\x0d\x54\xe4\x92\x30\x0d\xb9\xfd\x67\xcc\x53\xba\x12\xa0\x60\x9c\ +\x4b\x2b\x55\x14\x69\xa5\x6b\xd8\x93\x70\x2f\xd4\x73\xf4\x99\xe5\ +\x34\xcb\x89\xb5\xf7\xaa\x8e\xec\x6e\xcc\x03\xfd\x7a\xc5\xa9\x05\ +\x68\x11\xf8\x94\xaf\xd4\x1c\x7f\x36\x94\xd5\x55\xbe\xf5\xf9\x41\ +\xb7\xff\x00\x56\xe2\x47\x51\x48\xd3\xd4\x41\x86\xa4\xfb\x87\xb7\ +\x07\xfa\x4d\x40\xf5\x37\xf0\xb5\x00\x26\x51\xbc\xc0\x77\xf6\x9d\ +\x7f\x89\x9f\xf3\x65\xc7\x0e\x8a\x7f\x6e\xd3\x87\x52\xa6\xd0\x2a\ +\x15\x06\x9b\x1c\x8b\xfc\xad\xd6\xd3\xa7\xae\xd4\x78\x9a\x0d\x2e\ +\xad\x46\x02\xf8\x6d\x63\xc5\xb8\x95\x9d\xa9\x49\x6a\x14\xea\x12\ +\x11\xb6\x9b\x70\x67\x3b\x53\xa2\x75\x72\x1d\x0d\xbb\x81\x79\xd3\ +\x73\x4e\xaa\x25\x45\x19\x38\x22\xf6\xfd\x24\xef\x55\xc3\x91\x4e\ +\xa9\x16\xc9\x53\x19\x68\xb1\xce\xd3\xe9\x9a\xa6\xaa\x92\x29\xbe\ +\xe6\x02\x75\xbf\xc4\x4d\x53\xfe\xa7\x55\xd3\x72\xec\x70\xa2\xdd\ +\xac\x04\x4d\x1d\x53\xd0\xd4\xd3\xa9\x51\x29\xb5\x98\x1b\x95\xbf\ +\x1e\xb3\xb9\xf1\x23\x4c\x6b\xaa\x25\x81\x0e\xbe\x20\x36\xb8\x3f\ +\xf2\xd0\xe5\x7b\x32\x74\xf9\xd6\xaa\x95\xad\xf6\x8d\x30\x6b\x8b\ +\xee\x4c\x19\xb4\x68\xd0\x15\x03\xd1\xd4\x94\xb1\xe2\xa2\x91\xfc\ +\x4e\xba\x36\x9e\xa5\x35\x76\xd1\xd3\x20\x9b\x5b\x22\xf1\x1f\x1d\ +\xa5\xa3\xa0\x29\x0a\x29\xe1\xd6\xb5\xdd\x03\x5c\x2f\x68\xce\x5d\ +\xe0\xcf\xa5\x8a\x1a\xe5\xc5\x1a\xa9\x51\x4f\xca\x05\x41\xfd\x4c\ +\x05\x5d\x42\xd6\xa9\xa7\xd4\xa9\x42\x56\xfb\x67\x91\xfc\x34\xb3\ +\xed\x35\x6d\x74\x07\x20\x7b\xc9\x92\xab\xb6\xa7\xc4\xa8\xe4\xb7\ +\x52\x65\xda\x38\xa5\x14\xac\x1e\xb8\x38\x51\x60\x23\x8e\xae\x9a\ +\xd3\xdb\x49\x52\x99\xbd\xf7\x01\x76\xfd\xe2\xb5\xc8\xa7\x65\x5b\ +\x8c\x8b\x7e\x91\x5a\x6a\x41\xea\x79\xc8\x14\xc0\xdc\x4f\xa4\xb2\ +\x62\x31\xc2\x90\x35\x15\xea\x3b\xdf\xe5\x0c\x72\xdf\xfa\x93\x9d\ +\x46\xa0\xbb\x1a\x75\xdd\x7d\x15\xac\x2d\x17\xab\xa8\x6b\x55\x27\ +\x80\x30\xa0\x70\x04\x5a\x9b\x63\x9f\xac\xd4\x83\x55\xd3\xd5\x6a\ +\x85\x97\xed\x35\x71\xc5\xd8\xc6\x2e\xa7\x52\x72\x35\x0e\x4f\x63\ +\x25\xa4\xc6\xe2\xc4\x0b\x77\x95\x53\xce\x08\x10\xb2\x15\x34\x75\ +\x3a\x93\xcb\x06\xb6\x32\x01\x8f\x15\x9e\xd6\x64\xa6\x7d\xd0\x49\ +\xd1\x06\xdc\x7e\x92\x84\x51\xb6\xf7\x17\x98\xa6\x34\xd4\x53\x96\ +\xd3\xa1\xef\x6b\x89\x57\xc2\xeb\x51\x4a\xa0\x04\x65\xbf\xfb\xae\ +\x24\x7b\x7e\xb3\x57\xca\x43\x2d\xaf\x0b\x34\x8b\xe2\x5a\x75\x4a\ +\xec\x37\x81\x73\x7c\x89\x0b\xd1\x75\x05\xad\x71\xdc\x66\x76\x35\ +\xaa\x35\x5a\x25\xac\x07\xde\x53\xc3\x5b\xb4\xe4\x97\x65\x37\x42\ +\x41\xeb\x1e\x35\x54\x8c\x97\x38\xc4\x1b\x6d\x6f\xf6\x9c\x19\x43\ +\x3a\xb1\xf3\x0d\xa7\xb8\x8a\xac\x85\x73\xc8\x3d\x44\xdc\xac\x05\ +\x77\x52\x7c\x64\x1f\xdc\x4f\x3d\x35\x23\xc4\xa6\x3c\xbd\x47\x69\ +\xaa\x37\xa5\xba\x8e\x20\xd3\x72\x86\xe3\xac\x53\xda\x85\x1b\x94\ +\x7e\x55\x1d\x66\x97\xc8\xb0\xb1\xe6\xd1\x9a\x94\xbb\x07\x51\x82\ +\x05\xc7\x68\xa5\xdc\x09\xcd\xba\x4a\x23\xb5\x20\x54\xa5\xb8\x9e\ +\x01\x91\xa5\xed\x6b\x99\x52\xe7\x4f\x51\x7f\x12\xc9\x10\x62\x51\ +\x18\xac\x7a\xe6\x35\x54\x15\xb9\x58\xa5\x19\xcc\xa1\x6d\x6f\x49\ +\x54\x1f\x0d\x2f\x05\xb6\x64\x01\x98\x4e\xc0\x45\x6e\x17\x26\x49\ +\x82\xca\xc0\xa9\x30\xf0\x4e\xf4\xc6\x72\x22\xef\xeb\x78\x54\x81\ +\xb8\x63\x85\xeb\x24\xed\x23\x01\xfe\x1a\xab\x73\xcd\x41\xfd\x27\ +\x19\x98\x5c\xfa\xf4\x9d\x1a\xe7\xff\x00\x82\x00\x0b\x06\xab\x70\ +\x3d\x27\x26\xc4\x9d\xd6\x99\xe3\x3d\x34\x42\xe1\x07\xbc\x63\x25\ +\xe8\x31\x3d\x48\x30\x0f\x20\x46\x33\x0f\x08\x8b\x75\x9a\x09\x8a\ +\x40\xb7\xa4\x6f\x59\xa5\x62\x30\xa0\x2e\x63\x40\x36\x9e\x0b\x98\ +\xf5\x41\xb7\x3c\xc8\xba\x55\x7e\x15\xe1\x53\xf1\x2a\xb8\x03\xb0\ +\xe6\x44\xdb\x17\xfd\x3d\xaa\x3b\xf2\x63\xc5\x4a\xd5\xc1\x17\x3b\ +\x78\xdc\x78\x92\x57\x75\x46\x2a\xa0\x39\x1d\x4f\xf6\x98\x9b\xf4\ +\xd6\x6e\x3b\xae\xcf\xba\x2d\x91\xaf\x70\x2e\x3d\x26\x78\xce\x70\ +\x6e\x3d\x85\xa6\x87\x7b\xe2\xe6\x68\x16\xc0\x92\x31\x2d\xd1\x52\ +\x37\xf1\x2a\x02\x11\x79\xf5\x85\xa5\xd2\xbd\x66\x04\x10\xa7\xb4\ +\x7e\xa7\x72\x11\x4c\x92\x40\xe9\x33\x6f\xc3\x22\x7a\xd5\x8e\xa1\ +\xfc\xeb\xb4\x0f\x94\x76\x98\xb4\x6a\x03\x70\x09\x11\xa0\x39\x37\ +\xb8\x55\xee\x61\x8a\x81\x07\x94\x93\xea\x65\xab\x11\xbe\x98\xb3\ +\x92\x70\x3a\xfa\x41\xb6\x9a\x91\xf2\xa8\xa8\xdd\x49\xe2\x50\xf5\ +\x55\xfc\x8f\x80\x64\xe6\x88\x53\x75\xf3\x00\x63\x3f\xd0\x3a\x75\ +\x18\x9b\x04\x50\x3b\x2c\xa1\x15\x42\x33\x13\xb7\xa4\x9f\x6b\x5c\ +\x58\xed\xf4\x86\x9e\x53\x66\xb9\xb7\xef\x0a\x4e\xa4\xc5\x48\xda\ +\x36\x91\xc4\x46\xa4\x35\x5a\x9e\x66\xc0\xe6\x55\x46\xfb\x19\xc8\ +\xf6\x88\xa8\x1c\x0b\x6d\xf7\xf5\x84\xf5\x02\x90\x02\xc2\xfe\x90\ +\xd9\x41\x41\xe8\x4d\xa0\x2d\xc9\xb6\xdc\xdf\x12\xdf\xb2\x55\x28\ +\x2c\x00\x24\x71\x1b\x54\x4e\x83\xee\xc7\x5b\x75\x8d\xac\xc2\xa5\ +\x91\xb0\x07\x18\x8a\x0a\xc8\x76\xba\xd8\x8e\x90\x99\xe9\x2b\x10\ +\x72\xdd\x20\x55\x69\x69\x33\xd1\x08\x3c\xc3\x69\x42\x7d\x3a\x1f\ +\xa4\x88\xdb\xc4\x05\xc8\xcf\x95\xff\x00\x83\x1d\xa7\xd5\x35\x0a\ +\xaa\xd4\xc0\x00\xf4\xef\x27\xd5\x3d\xdd\xf6\xad\x83\x1b\x89\x4f\ +\x55\x2f\x65\x0a\x3b\xa8\xd4\x7e\x7c\xae\x2d\x7b\xf6\x22\x57\xf0\ +\xf5\xa7\xe1\x56\xf8\x79\xf3\xef\x1b\xe9\x93\xc1\x23\xb4\xe7\x57\ +\x53\x5a\x96\xe1\x97\x53\x63\x6e\xbd\x8c\xf6\x8b\x51\xf6\x7a\x89\ +\xe2\x1c\xa3\x5d\x6d\xc8\x9a\xb3\xa1\xbd\xb7\xc4\xa9\x51\xb6\xde\ +\xc1\x71\xd8\x2c\x36\xf3\x0d\xa8\xc1\xd8\x2d\xaf\xde\x37\xe3\x54\ +\x7e\xf1\x6b\x52\x3f\x73\x5f\xce\x2d\xc5\xfa\xc8\xd5\xd6\x90\xf2\ +\xe5\xe5\x3b\x83\xc3\x45\x3f\xbb\x1b\xae\x02\x9b\xe7\xa9\x9d\x9d\ +\x7b\x87\xd2\x68\xab\xde\xf7\x4d\xac\x3d\xa7\x09\xaa\xee\xb3\x31\ +\xb9\xe6\xd3\xb3\xa2\x74\xab\xf0\x0a\x8d\x50\x16\xf0\x6a\x6f\x17\ +\xeb\x7e\x9e\xd0\xe5\xf2\x98\x1a\xfa\x93\xa7\x0b\x58\x0f\xbc\x71\ +\xe4\x1f\x97\xd6\x41\x72\x0b\x6a\x2a\xf9\xbf\x2d\xfa\x98\x02\xa3\ +\xd7\x66\x15\x0d\xd9\xcd\xc1\x3d\x0c\x73\x80\x54\x52\xe0\xa8\xc7\ +\xbc\xa4\xc4\x92\xe5\xdf\x79\x27\x75\xf9\x8d\x71\xe2\xa7\x88\xb8\ +\x61\xf3\x01\xfc\xcc\xda\x43\x01\xde\x36\x98\xd8\x77\x0f\xd3\xfa\ +\x4d\x50\xa7\x35\x74\x23\x9f\x2e\x62\x2a\x59\x34\x66\xd6\xdd\x50\ +\xdb\xe8\x25\x7a\x6d\x83\x72\x8b\x94\xa8\x2c\x2d\xf8\x4c\x97\x5e\ +\x36\x8a\x54\xec\x6e\x16\xff\x00\xbc\xcc\xf7\x0b\x9c\x41\x53\x83\ +\x36\xd7\x1b\xad\x6b\x47\x81\x65\x69\xbb\x76\xd3\x18\xb5\xf9\x9b\ +\x18\x4d\x30\x6f\x9e\x25\xb4\x14\x6d\xe6\x22\x90\x52\x7a\xdc\x4a\ +\x11\x80\xe9\x33\x54\x53\x4e\xdd\x31\x1c\x8c\x0e\x36\xde\xdd\x64\ +\xc9\x53\xa7\xe9\x08\x54\xb1\x98\x68\xe2\x73\x8c\x4f\x02\x49\xce\ +\x62\xf7\xdf\xa9\xbc\xf2\xb8\xda\x4d\xfd\x24\x75\x67\xc3\xeb\xaa\ +\x57\xf0\xdc\xfd\xdb\xe0\xde\x47\xf1\x0a\x27\x4d\xa8\x7a\x47\x20\ +\x64\x7a\x88\xa7\x39\xc4\xae\xb9\xfb\x67\xc3\x45\x4e\x6a\xd0\xe7\ +\xd4\x43\x32\xea\xf5\xca\xac\x46\xde\xf1\x4b\x55\x97\xd4\x1e\x41\ +\xeb\x0c\x82\x41\x07\x9e\x91\x6c\x3c\xbe\xa2\x75\x60\xe4\x0a\x4d\ +\xd0\x9b\xf6\x9e\x64\x05\x83\x01\xef\x13\x4c\xdb\x23\x99\x52\x30\ +\x66\xb3\x73\xd6\x17\xa4\x33\xe5\x60\xd6\xc1\x5c\xc0\xac\x80\x58\ +\xad\xb6\x9e\xf1\xf5\x05\xa8\x02\x7f\x09\xfd\xa4\x81\xac\xd9\xca\ +\xb7\x30\x86\x8a\x98\x01\x81\x27\xe6\x16\x92\xf0\x48\x94\xd4\xf2\ +\xb2\x8b\x8b\x0b\x10\x62\x2b\x62\xb3\x8f\x59\xa8\x1e\x5e\x91\x81\ +\xed\x88\x08\x31\x08\xa9\xc9\xb4\x93\x1c\x96\xe9\x68\x07\xa8\x84\ +\x39\x9a\xaa\x59\xad\xd4\xe2\x29\x94\xa9\x97\x6c\xe0\x0e\x61\x39\ +\x0c\xc1\x54\x59\x47\x02\x1d\x45\xda\x05\x35\xfa\x9e\xe6\x0a\x21\ +\xdd\x91\x04\xe8\xea\x80\xff\x00\xa4\x69\xd4\x77\xfe\xa6\x72\x88\ +\x39\x02\x76\x2a\x53\xdf\xf0\xca\x37\x36\x00\xff\x00\x79\x1b\x53\ +\x00\x12\xa6\xe2\x67\x8d\xc3\x62\x36\xb9\x00\x01\x35\x50\x94\xb7\ +\xac\x68\x50\x5a\xd0\xac\x14\x58\x5a\xd3\x5a\x08\x14\x89\x36\xb8\ +\xbf\xbc\x67\x80\xfd\xc4\x6e\x01\xb8\x17\x8c\xa7\x51\xea\x79\x43\ +\x59\x7b\x0e\x21\x6d\x24\x26\x9d\x89\x17\x36\x95\x52\xd2\xb5\x43\ +\xb5\x58\x5f\xda\x12\x84\xfc\x22\xde\xa6\x17\x8e\xe9\x7d\x87\x60\ +\xee\x04\xcd\xb4\x95\x42\xa1\xa8\xf5\x3c\x32\x02\xaa\x1d\xa2\x40\ +\x43\x96\xc8\xcc\xdd\x3d\x4f\x0a\xb0\x22\xe3\xbc\xa6\xb8\xf1\x06\ +\x00\x43\xe9\xd6\x6b\xca\x11\xe4\x1e\x04\x75\x2d\xa0\x5c\xe0\x7b\ +\xc5\x3b\x3a\x9b\x11\x73\xea\x20\x96\x63\x92\x78\xe9\x68\x85\xcb\ +\xaa\xdb\xfe\x9d\xc0\xeb\x18\xae\x18\x07\x7b\xed\xfe\x64\x74\xd6\ +\xd6\x2c\x05\xcf\x4e\xc3\xb9\x9e\x7a\xf7\xab\xb7\xf0\x4c\xe1\xd5\ +\x6f\x50\x3f\x00\x01\xda\x2a\xa3\x13\x27\x7a\xbb\x7c\xa3\x27\xbc\ +\xc5\xaa\xd7\xe7\xe9\x19\x16\x8a\xa2\x9b\x8b\x98\x6f\x50\x25\x82\ +\x8b\x93\xc9\xea\x27\xbc\xb9\x37\xf3\x73\x13\x7b\xab\x13\x9e\xb7\ +\x88\x3b\xc4\x07\x2f\xf3\x77\x9e\x5c\xb8\x04\x9e\x6c\x3d\x64\xd7\ +\x27\xa4\x66\x90\x95\xac\xa6\xf8\xbe\x6f\x2c\x4b\xaa\x56\xd8\x82\ +\x9d\x30\x40\xbd\xcf\xac\x45\x57\xdd\x92\x4f\xeb\x32\xab\xab\x33\ +\x2a\x9b\x10\x6d\xef\x10\x77\x0e\x6e\x3d\xe1\x21\x57\xf0\xf7\x08\ +\xef\x55\xb3\xe1\xa1\x61\xef\xd2\x7a\x9d\x77\x7b\xb3\x16\xb9\xea\ +\x4c\x4e\x98\xed\xa7\x5c\x8e\xa9\xc7\xb1\x12\x77\xae\x58\x80\x4e\ +\x3b\x09\x60\xd5\xb5\x2b\xbd\x45\xb3\x35\xca\x8b\x66\x25\xaa\x6e\ +\xf3\x03\x73\xd6\x25\x9c\x97\x0f\xf4\x22\x10\x6d\xb9\x8e\x25\x6e\ +\xaa\x55\x7c\x3b\xee\xda\x0d\xbb\xcc\x55\x0c\x36\xb9\xb9\x27\x11\ +\x0d\x51\x8d\x15\x65\xe1\x7c\xa7\xdb\xa4\x05\x26\xe0\xee\xb1\x86\ +\x2d\x34\x87\x47\x20\x27\x90\x8b\x30\x12\x7a\xda\x72\x1c\x5d\x85\ +\xfa\x11\xd6\x3d\xea\x92\x4f\xaf\x30\x43\x78\xa3\xc2\xc6\xf1\xf2\ +\x98\xa5\x3a\x0a\xad\x56\x8b\x68\x2b\x2e\x0f\xfa\x44\xfe\x69\x05\ +\x4a\x2d\x4d\x89\xce\x0d\x8a\xf5\xbc\x63\xb9\x50\x01\xc0\x5f\xd4\ +\x18\xfd\x60\xfb\x45\x11\xaa\xa6\x6e\xdc\x54\x1e\xbd\xe5\xe5\x4e\ +\x62\xef\x7a\x81\x47\x24\xda\x7d\x17\xc3\x6a\xa8\xad\xff\x00\x4b\ +\x36\xda\xf4\x4a\xdc\xf5\x6e\xf3\x95\xa4\xa5\x67\xde\xcb\x62\x82\ +\xfc\x46\x53\x15\x68\xea\x29\x57\xe4\xa9\x0d\x71\xef\x0e\x5d\xa9\ +\xd3\x28\xa0\x5a\xbb\x5c\x10\x54\xe7\xe9\x1a\x58\x54\x06\xa0\x17\ +\x61\xcd\xa5\x5f\x16\xa2\xa9\xac\x35\xd0\x79\x2a\xae\xf1\x6f\x59\ +\x15\x26\x14\xce\x14\xdf\xf9\x96\xef\x66\xf4\x37\x50\xc3\x70\xbd\ +\xfa\xcc\x42\x40\xb1\x1c\x42\xbd\x8d\xc1\xf2\x9e\x3d\x27\xb6\x9e\ +\x57\x83\xcf\xa4\x91\xff\x00\x0f\xaa\x52\xb8\x04\x02\xad\xf3\x2c\ +\x2f\x89\x04\xad\x59\x2b\x20\x21\x0a\xd8\x77\x16\x83\x40\x78\x34\ +\x9a\xa3\x7c\xec\x2c\xa3\xfa\xc6\xe9\xc2\xd4\x46\x4c\x03\xc8\xf7\ +\x99\xbe\xe9\xf8\x91\x90\x05\xb8\x31\x55\x45\x90\x1f\x58\xda\xd7\ +\x50\x47\x26\x24\x5c\xd1\x62\x3a\x7a\xcd\x40\x58\xc1\xb8\xfd\xa3\ +\xd0\xdc\x5b\x82\x3b\xc9\xee\x6f\xd6\x36\x8b\x02\x00\x8d\x06\xd8\ +\xda\x1a\x1b\x8c\xf3\x3c\x06\xe1\x09\x54\x8e\x98\x98\x22\x17\xb5\ +\xa6\x90\xa2\xd7\x98\xcf\x6e\xc3\xd6\x2f\x53\x7d\xc0\xdc\x0c\x4a\ +\x42\x63\xba\x6d\xc6\x6d\x19\xf0\xfd\x6a\x69\xf5\x00\xb0\xba\x1c\ +\x30\xf4\x91\xae\xd3\x62\x49\x3f\x48\x15\x0d\x3b\xda\xed\x88\xfe\ +\x46\xab\xf8\x85\x3a\x74\x35\x05\x00\xf2\x9c\xa9\xee\x24\x95\x16\ +\x9b\x36\x0d\xaf\x29\x2c\xba\x9f\x86\x90\x48\x2f\xa7\xfd\x4a\x99\ +\xcf\x50\x2e\x00\x78\xc5\x4e\x14\xc8\x36\x0d\x71\xd2\x30\x21\x27\ +\x83\x26\x4a\xbb\x58\xd8\xde\x55\x4f\x55\x75\xb3\x01\x2b\xa0\xc4\ +\x6d\xc1\xa8\xb1\xc3\xe0\x7b\xc9\x19\x18\x55\xda\xc0\x80\x25\x0e\ +\xc8\xc8\x7a\x58\xc0\xac\x1e\xa0\x1e\x7b\xac\x21\x25\xaa\x6f\x62\ +\xbf\xa4\x0a\xe7\xcc\x8d\xdd\x7f\xf5\x32\xa2\x3a\x11\x71\x68\x75\ +\xfc\xfa\x75\x7f\xca\xc4\x19\xa0\x2a\x37\xb5\xfa\x75\x8e\x04\x5a\ +\x46\xaf\xd2\x39\x1f\xa1\x32\xb1\x1b\x81\x99\xb4\xc8\x15\x06\x22\ +\x09\xb9\xbd\xed\x1a\x97\x16\xdd\xcc\x2a\x33\x53\x4c\xef\x36\xf7\ +\xe2\x65\x31\x70\x01\xe6\x55\x59\x77\x22\x54\xee\x22\x45\xaf\xea\ +\x21\xa5\x50\x27\xfe\x98\x01\xe8\xf1\x09\x60\x4d\xf8\xea\x25\x08\ +\x37\xfc\x3e\xa5\xb0\x55\xaf\x69\x20\x36\x27\x33\x30\xb2\xaa\x78\ +\x75\x6f\x6b\x88\xa6\xb9\xe3\x12\xa2\x43\xd2\x3f\x99\x78\x93\x95\ +\x3d\x66\xa5\x14\x19\x2a\x01\xed\x2b\xd3\x22\xec\xfe\x64\xaa\x3a\ +\x71\x2b\xd3\x9b\x15\xed\xd6\x55\x46\xd5\x0b\xb8\xdb\x0a\x38\x11\ +\x42\xc5\xf6\x37\xc8\x32\xd1\xc5\x81\x73\x7e\x82\xf1\x1a\x8b\x26\ +\x98\x5c\xd9\x9c\xe7\xda\x10\xb9\xe5\x7c\xd7\x8c\xde\xcf\x83\xfc\ +\x73\x18\x11\x40\xc9\x04\x99\xa2\x9d\x81\x20\x19\xbd\x64\x92\xed\ +\x7d\x8c\x37\x5b\xf6\x82\x6c\xa7\x19\x63\xd7\xa0\x8c\x74\x6b\x10\ +\x05\x80\xeb\x3c\x82\x8a\x9f\x3d\x4c\x75\x02\x48\x6f\xe5\x05\x0e\ +\x1c\x80\x3d\xe4\x75\x18\x82\x40\xc4\xb7\x51\x57\x4c\x54\x3a\x5d\ +\x88\x16\x6f\x49\x13\xea\x94\xe1\x10\x03\xeb\x28\xa8\x4b\x31\xeb\ +\x09\x5f\x60\xb9\xe7\xa0\x8b\x50\xef\x76\x20\xd8\x76\xeb\x0f\x66\ +\xe5\xdc\xee\x03\x75\x1d\x62\x06\x6a\x96\x39\x98\x84\xee\xc1\xb5\ +\xe2\xc8\x23\x0a\xb6\xf5\x33\xc0\x30\x39\x92\x30\x55\x50\x6d\x6f\ +\xac\xf6\xe0\x5a\xf7\x8a\x70\x37\x11\xb8\x4f\x12\x8a\x2e\x5a\xf2\ +\x47\xd6\x37\x22\xa0\xb6\x7b\x77\x9e\xf1\x89\x16\x7e\x3a\x45\xd2\ +\xa8\x86\xea\x4e\x0f\xed\x3c\xce\x41\xb1\x37\x3e\xd2\x4a\x34\x96\ +\x35\x36\xde\xe1\x94\xaf\xed\x23\x75\x20\xee\x63\x61\x18\x2a\x0a\ +\x65\x59\x72\x46\x63\x35\x66\x99\x7c\x8b\x06\x1b\x94\xc9\x02\x9d\ +\x65\x65\x29\xd6\x12\x31\xb6\xc0\x33\xd4\xc4\x25\x3d\xae\x1b\x22\ +\x31\xd8\x11\x75\x36\x1d\x64\x86\x95\x16\x99\x2a\xd9\x0c\x2c\x6d\ +\x05\xc9\x07\x69\xb5\xc1\xc5\xa2\xce\xdb\x5c\x9b\x1e\xd3\x54\x17\ +\xb0\x04\x16\x1f\xc4\x90\x8b\xb3\x75\x9e\x56\xc8\xb3\x58\xf2\x20\ +\x32\x15\x26\xec\x09\x1c\xe6\x62\x13\xba\xf7\x92\x53\x54\xf8\x97\ +\x7f\xfb\x83\xe6\x1f\x9a\x7b\x45\x5f\x63\x91\x6c\x36\x18\x1e\xb1\ +\x54\xf2\x70\xc0\x11\xc1\xbc\x71\xa5\xe2\x8d\xc9\x60\xc3\x91\x78\ +\x27\x40\x2e\xd4\x23\x0c\xac\x70\x4f\x16\x83\xab\xd9\xb9\x3c\x35\ +\x62\x08\xb5\xfb\x41\xa7\xff\x00\xf1\x69\xd1\xa9\xf8\x89\xb1\xbf\ +\x06\x12\xab\x05\x2a\x41\x56\x06\xd6\x33\x2d\x2e\x54\x5a\xff\x00\ +\x0a\x19\xbb\xd1\x36\x27\xd0\xce\x79\xa4\x2f\xf3\x28\x32\xff\x00\ +\x85\xb0\x5a\xfe\x1b\x8b\x25\x41\xb5\xbb\x45\x6a\x28\x14\xa8\xf4\ +\x9f\x95\x36\x13\x32\xe5\xc3\x53\x22\x30\x7d\xa5\x90\xa9\xe4\x5e\ +\x52\x28\x78\x0c\x09\x2a\xd7\xe2\xfc\x45\xd3\xa7\xb5\x18\x9e\x40\ +\xc4\x1a\x75\x0a\x5d\x58\x9d\xa7\xf6\x8a\x87\xbd\x2d\xcd\xbb\xc4\ +\x53\xf5\xe2\x62\xd2\x08\xc1\x96\xa8\xba\x9b\xe2\x2c\x3e\xc7\x17\ +\x01\x81\xe0\xf7\x99\x59\x69\xec\x2c\xb7\xf5\xb7\x49\x26\xd6\xa5\ +\xbd\x8b\x12\x4f\xb4\x9c\xd3\x2a\x7f\xd3\x71\x1b\xa4\x5a\x42\x8b\ +\x97\xf3\x5c\x80\xa6\xf6\x2b\x18\xcb\x75\x34\xdb\x0f\x6f\x2b\x5f\ +\x0d\x1d\xc0\x86\xa9\x17\x3f\x73\xf5\x85\x41\x86\xeb\x6c\xb0\xf6\ +\x81\x51\x9d\x6a\x6d\x6e\x9c\xcd\x5a\x96\xb7\x98\x83\xfa\xcd\x7c\ +\x0a\xd5\x87\xe6\xfd\xa0\x33\x16\x3f\x34\x16\xaa\x42\x86\xef\x31\ +\x6b\x86\xf9\x91\x09\xf6\x99\x90\xbd\x9e\xe2\x6d\x60\xc5\xc8\xf4\ +\x86\x86\x9b\x5a\xe9\x63\xe8\x67\xb5\x06\x98\xa9\x65\x62\x3d\xc4\ +\x91\x2a\xa0\x72\x32\x22\xdb\xcd\x90\x38\x8d\xb9\x5b\x9b\xdc\x74\ +\xb4\xc2\xe0\x7c\xcb\xcf\x68\x80\xe8\xeb\xf8\x35\xc3\x10\x0a\x9c\ +\x30\xee\x20\x6b\x69\x7d\x9f\x52\x57\xf0\xde\xe0\x8e\xdd\x26\x39\ +\x42\x7c\xb1\xba\xa2\x2a\xe8\x29\x3f\x54\x25\x0f\xf2\x23\xf5\x21\ +\x75\x21\xb0\x4c\x20\xec\x00\x99\x60\x57\x9e\x21\x2a\x02\x30\x62\ +\x0d\x0e\x19\x4f\x43\x69\xea\x15\x08\x16\x24\xc5\x52\x43\xb8\x7b\ +\xc6\x35\x17\x17\xb7\x78\x13\xe9\xd4\x15\x00\x5a\x99\xec\x63\x85\ +\x14\x6d\x3b\x80\x7f\x10\xbc\x85\x81\xbd\xf3\x1d\x4d\x9c\x69\xc8\ +\x20\xe4\xf3\xed\x0b\x09\x2f\x45\x91\xac\x67\xb6\x98\xf5\xaa\x4a\ +\xab\x9f\x63\x28\x55\x46\xe9\x2d\xc1\x88\xb6\x91\x1d\x4c\x11\xc9\ +\xbc\x79\xd3\x83\x37\xc2\xb7\x22\x5f\xa3\x8a\x68\x5a\xa6\x9c\xaf\ +\x51\x90\x24\xed\x8f\x48\xed\x27\x95\xc0\xe9\x33\x5a\x9b\x6a\x1b\ +\x0c\x19\x8f\xa4\x5a\x67\xfb\xa7\x1e\x98\x92\x54\xfc\xeb\xf2\xff\ +\x00\x11\xfa\x75\x3b\x18\x7a\x49\xd4\xd8\xf7\x1c\x18\xc4\x6d\x26\ +\x18\x23\xf4\x84\xeb\x67\x23\xa4\xcf\x0f\x17\x5e\x21\x5b\x75\x3b\ +\x9e\x46\x2f\x04\x9d\xd6\xc7\x12\x8d\x2d\x8f\x86\xa7\x17\xc5\xe2\ +\x58\x31\x3e\xd1\xd4\xd6\xf4\xaf\xf9\x4c\x68\x65\x7b\xa3\x54\x03\ +\x91\x61\x13\xae\xbe\xe0\x83\xf0\xa8\x12\x93\x4f\x73\x58\xdf\x2c\ +\x3a\x49\xb5\x5e\x6a\xcc\x7b\x9b\xde\x31\x56\x25\x20\x32\xdc\x47\ +\x54\x60\xaa\x02\x81\x60\x26\x30\xb8\x81\x5d\xb6\x83\x78\x7a\x91\ +\xd5\x66\x63\x93\x26\x62\x54\xfa\x4a\x5b\x24\xc9\xb5\x16\xe5\x67\ +\x48\xcd\x2d\x98\xdc\x32\x9d\xa7\xbc\x16\xac\xc3\x20\x06\x61\xdc\ +\x44\x3b\x36\xe1\x99\xb7\xdc\x79\xc8\x88\x52\x35\xf5\x1e\x9f\x86\ +\xc6\xc2\xff\x00\x84\x5a\x08\xaa\xb7\xb8\x04\x9f\x53\x25\x6c\x9c\ +\x60\x8f\xde\x6a\x3e\xe1\x6e\xb2\x2a\x5e\xab\x83\xe5\x36\x10\x77\ +\xee\xe4\xd8\xc5\xa3\x1f\x94\xcd\xb7\x6e\x7b\x48\x19\x50\xd8\x06\ +\x3d\x44\x5e\xf2\x67\x9c\x90\xa0\x93\xc7\x49\x82\xc4\x60\x6d\x32\ +\x42\x52\x14\xdc\xfe\x91\xdb\x8d\x45\xf2\xe1\x87\xee\x24\xd6\x21\ +\xa3\x50\xdb\x3c\x11\xd6\x48\x48\x70\x01\xbe\x23\xd8\x87\xd3\x00\ +\x2c\x5a\x9f\xf0\x7f\xe7\xef\x11\x50\xee\x1b\x97\x1d\xc4\xf5\x16\ +\x2b\x63\xcf\x7f\x69\x11\xd3\xaa\xe8\xaf\x9b\x8e\xc6\x32\x8b\x23\ +\xf3\xe5\x1d\xa4\xd5\x7e\xed\xc8\x06\xe8\x78\x3d\xc4\x30\xca\x13\ +\x18\xc4\x93\x75\x34\xd9\x5a\xe2\x7b\x4e\xde\x15\xd8\x80\x4c\x04\ +\x76\x5c\x02\x6c\x7a\x18\x61\x95\x8f\x99\x7e\xa2\x49\x84\xdb\xcc\ +\x07\xfe\xa6\x83\x9b\x08\x74\xd5\x77\x5d\x5c\x63\xbc\x27\xd3\xbf\ +\xcc\x17\x70\xf4\xcc\xb5\x11\x72\x0e\x6e\x23\x69\x39\x0d\xce\x7a\ +\x19\x8e\xb6\x1e\x60\x41\x9e\x40\x0e\x00\xfa\x48\x2f\x67\x0d\x45\ +\x19\x86\x7a\xda\x57\xa5\xff\x00\x31\x48\x8b\xf9\xc0\xf2\xfa\x89\ +\x00\xbf\x80\xa0\x8b\x67\x99\x46\x91\x8d\xd4\x8c\x10\x66\x2c\xe9\ +\xb8\xa2\x95\x57\x46\x03\xa8\x3d\x44\xe9\x6b\x82\x55\x4a\x7a\x90\ +\xa4\x6e\x16\x62\x3b\x89\x26\xd1\x50\x17\x03\xcc\x3e\x65\xfe\xb2\ +\xfd\x0d\xab\x69\xea\x50\x38\xb8\xba\xfb\x89\xce\xff\x00\x5a\x89\ +\x29\xa8\xa9\x75\x04\x5e\xdd\x64\x8f\x48\xde\xc5\x7e\xa2\x5d\xe1\ +\x94\x56\xdb\x92\x71\x13\x59\x6f\x7c\x15\x6f\xd8\xc5\x54\xaa\x15\ +\x45\x8d\xf6\x9e\x41\xe9\x31\x91\x94\xdd\x4d\xd7\xa1\x9e\x67\x75\ +\x6d\xbc\xde\x6a\x55\x34\xc1\xde\x15\xaf\xd2\x21\x95\x29\xf9\x02\ +\xa0\x17\x26\xe4\x4a\x35\x3a\x63\x42\x97\x96\xa9\xa8\x00\x1b\x85\ +\xac\x54\xc5\xe9\xd6\xfa\x85\x65\xdd\xb4\x9e\x6f\xfc\xca\x4d\x45\ +\x76\x2c\xb6\xbb\x1c\xdc\x74\x85\xa9\xcb\xa9\x66\xb2\xd5\xb5\xff\ +\x00\x0b\xf4\x3e\xf1\x0e\xa1\x09\x06\xe0\x8e\x86\x5d\xab\xa1\xb5\ +\xcb\x22\x86\xa4\xdc\x8b\xc4\x78\x68\xc9\xb6\xa0\x6d\xb6\xf2\x3f\ +\x6f\x43\x37\x28\xa4\x29\xc0\xe9\xeb\x34\x6e\xbd\xff\x00\x71\x3d\ +\x52\x8b\xd2\x70\xbd\x7a\x40\xf3\x29\xe0\x8f\x69\xa0\x70\x36\xbb\ +\x02\x0e\x63\x35\x25\x58\xdf\xa9\x17\x93\x2d\x52\xad\x7b\x5f\xe9\ +\x1d\x51\x91\xd1\x1b\xe5\xe9\x04\x58\x62\x00\x22\xe2\x6e\xf0\xc2\ +\xcc\x2c\x7b\xc2\x74\xdf\x4c\x14\x20\xc9\xda\xf6\x20\xde\xf2\x4d\ +\x71\x63\x6e\xb1\x94\x5b\x76\x96\xba\x1e\x80\x30\xfa\x18\x8b\x92\ +\x2c\x4f\xb1\x8d\xd0\xe7\x51\xe1\x9c\x6f\x05\x4f\xd4\x4a\x84\xe0\ +\x0e\x86\x12\x92\x01\xb4\x5b\x02\x8c\x57\xac\x34\x7b\x5a\xe0\x18\ +\xa3\x10\x98\xe7\xa8\xc3\xcc\x2f\x6e\xd1\x68\x29\x9b\x7c\xd7\xed\ +\x0d\xbc\xcc\x6f\xc5\xe4\x47\x4e\xa5\x3a\x8a\x43\xb6\xdb\x1b\xf1\ +\x1c\x19\x43\x2a\x2e\x55\x47\x3e\xa6\x44\x8a\xcb\x53\x71\xe0\x4a\ +\x28\x8d\xd5\x6f\xc3\x64\x98\x58\xa1\xd4\xb6\x3d\xc0\x03\x3c\xfb\ +\xc6\x53\x51\xed\x22\x46\xb3\xde\xf6\x22\x5c\xb7\xb0\x61\xc1\x99\ +\xbd\x18\xa6\x92\x03\x80\x63\x85\x21\xd7\x32\x5a\x6e\x01\xed\x29\ +\xa5\x5a\xdc\xd8\xcc\x56\xa3\xc6\x88\x19\xb1\xbf\x49\xea\xc9\xe2\ +\x51\x3d\x48\xe2\x56\xad\x4d\x96\xdf\xb1\x85\xe1\x0e\x57\x20\xf4\ +\x86\x9c\x72\x74\xd7\x17\x04\x62\x21\xa9\xf9\x89\x1d\x0c\xe9\xd4\ +\xa1\xb6\xa6\xee\x55\xb8\x90\x54\x04\x3b\x5b\xbc\xd4\xac\xd8\x2a\ +\x4d\xb6\xf7\xe0\xf2\x23\x15\x00\x3d\xd1\x85\xaf\x14\x96\x61\x6e\ +\x0c\x65\x32\xc8\xdb\x58\x5d\x7a\x89\x22\xd9\x4a\xb5\xc6\x0c\xbf\ +\x40\xb4\xdd\x0d\x22\x9e\x77\x17\xbf\xb4\x46\xa2\x98\x1b\x2a\x53\ +\x21\x94\xff\x00\xcc\xcc\xa3\xa8\x14\x54\xd4\x03\xcd\xc2\xc2\xf6\ +\x67\x47\x6a\x9a\x8e\x98\xba\xee\xdd\x54\xe0\x0b\x71\x39\x0e\xac\ +\xc6\xe4\x98\xf2\x4b\x92\xcd\x72\x4f\x24\xcc\x16\x1d\xa6\xa7\x42\ +\xf6\x1b\xe6\xd7\x81\xaa\xe0\xcd\x2d\x6e\x83\xd0\xc5\xea\x9b\x1c\ +\xc6\x7a\x12\xd5\xee\x0c\x9e\xa6\x41\x8f\xab\x91\x24\xa8\x48\xb8\ +\xbe\x66\xe3\x35\x39\xb6\xe2\x7b\x40\x04\xf4\x8c\x6c\xa9\x8b\x22\ +\x54\x0a\xe1\xba\xd8\xcf\x5a\xe6\xe3\x0d\xda\x2c\xe3\x31\x8a\xd7\ +\x17\x22\x44\x6b\x61\x62\xdc\xf4\x9a\xec\x4f\x9a\xd6\xe9\x88\x07\ +\xcd\x9e\xb0\x95\xc1\x1b\x1a\xd7\x31\x0f\x5f\xcb\xcd\xe7\xb1\x00\ +\x60\x30\x3c\xc1\x04\xcb\x51\xc3\x10\x81\xb8\xc4\x5a\x99\xa1\x81\ +\xe9\x24\x30\x4a\xb5\xe1\x58\x6d\x2c\xb8\x07\x91\x30\x58\xae\x73\ +\x3d\xb4\xdc\x15\x39\xed\x24\xf2\x93\x51\x45\x33\xc8\x3e\x5f\xed\ +\x3c\x39\x20\xf4\x9e\x54\x24\x92\x30\x46\x61\x35\xdd\xae\x3e\x61\ +\xc8\xef\xeb\x24\x01\x73\x93\x0a\x99\x04\xed\x82\x58\x9e\x7e\x82\ +\x33\x4e\x2e\x7a\x5a\x48\xfa\x74\xc0\x5c\x8c\xcc\xbb\xa1\xc1\x22\ +\x68\x6b\xb6\x78\x8d\x20\x1c\x37\xd0\xc0\xbd\xbe\xa3\x52\xb8\x6d\ +\xde\xe2\xf0\x15\xfa\xb5\x35\x3f\x48\xda\x48\x41\xf2\xff\x00\x33\ +\xc6\x91\x2d\xd8\xc8\x9b\x46\xa5\x36\xa6\x41\x4c\x76\xbc\xa6\x81\ +\xd3\x30\x04\x78\x8a\x7b\x58\x48\xa8\x28\x5a\x8c\xa7\xa8\x8f\xa5\ +\xe5\x36\x60\x3b\x4c\xd8\x63\xad\x4c\x51\x2e\x2a\x25\x56\xb9\x19\ +\xf2\xca\xf4\xfe\x0a\x30\xaa\xae\xcb\x63\x7b\x6d\xe2\x71\x90\x95\ +\x1e\x5e\x99\x12\x9a\x1a\xa2\xa6\xcf\x90\x67\x3b\x1a\x95\xd7\xad\ +\x4b\x4e\xaf\x72\xed\x66\x17\x16\x12\x1d\x43\xe8\xc1\xb6\xca\xae\ +\x47\xfb\xad\x2c\x3b\x6a\x68\x95\xc8\x24\x53\xc5\xc1\xe9\x39\x15\ +\x4d\x2d\xe7\xef\x19\x7d\xc4\xcf\x13\x44\xda\x9d\x2e\x7f\xca\x0f\ +\x72\xe6\x0b\x6a\xa9\x20\xf2\xe8\xa8\xfd\x6e\x62\x4d\x32\xcf\x65\ +\x74\x37\xe9\x7b\x5e\x54\x68\xe0\x17\x4c\x80\x00\x00\x7f\x33\x7d\ +\x33\xdb\x46\xbf\xc1\xa2\x09\xd2\xe9\xd5\x9b\x80\x17\xa7\xac\x36\ +\xd6\xd4\x21\x4d\x3a\x74\x76\x9f\xff\x00\xcc\x62\x73\xeb\x53\x67\ +\xab\x76\x63\xba\xf0\x83\x9a\x75\x42\xf4\x1c\x89\x64\x3a\xac\x6b\ +\xab\xb0\x60\x7c\x3c\xf6\x41\x22\xaf\xf1\x1d\x65\x1a\x99\x14\xc8\ +\xff\x00\xc0\x08\x6c\x14\x03\x51\x70\x0e\x3d\xa2\xeb\xa0\xab\x4f\ +\x69\xf9\x87\x06\x52\x41\x6d\x51\x4b\xe3\x14\x98\xa0\xab\xa7\x50\ +\xa7\xf1\x76\x3e\xd0\x75\x5f\x12\xd3\xd2\xa9\xb2\xae\x94\x0e\xbc\ +\x03\x79\xc7\xa8\xad\x4c\x90\xc3\xde\x39\x14\xea\x28\x78\x04\xdd\ +\xd4\x5e\x91\xee\x3f\x2c\xd7\xe6\x0f\xd5\x58\x35\x5f\x0e\xad\x86\ +\xa2\x07\xb4\x72\x69\x34\x5a\x84\x29\x4e\xab\x21\xe4\x5e\x7c\xe9\ +\x04\x1b\x64\x11\x1f\xa6\xaf\x52\x9b\x02\x18\xe2\x37\x8f\xf0\x7e\ +\xbf\xae\xa3\xe8\x2b\x52\x53\xb4\x87\x1d\xc4\x90\xf9\x94\xab\xe1\ +\xbb\xca\xe9\xea\x1c\x5a\xa5\x36\x36\x6e\x90\xeb\x53\xa7\xac\x52\ +\x52\xc9\x58\x0b\x91\xde\x12\xdf\xa5\xc9\x74\x65\x39\x87\xa5\x6d\ +\xba\x8a\x4c\x79\x0c\x3f\x48\xc6\x52\x3c\x8f\x70\x47\x78\x96\x5d\ +\x95\x14\xf6\x33\x6c\x87\x54\x08\xae\xc0\x74\x63\x05\x54\x92\x3b\ +\x88\xfd\x70\xb6\xa9\xcf\xac\xca\x78\x01\xba\xc9\x35\x57\x68\x17\ +\xe6\x35\x00\x2b\x9c\x0e\xa6\x25\xb7\x0c\x8f\xd6\x52\x17\x0a\x3b\ +\x08\x10\xea\x2c\xc0\x11\x8b\x70\x3b\xc0\xa6\xc5\x0e\xeb\xe7\x88\ +\x4e\x06\xe3\xb9\xb3\xd2\x0b\xdb\xa0\xc1\xe2\x49\xbb\xf7\x1f\x35\ +\xaf\x79\x5e\x9d\xac\xbb\x72\x0f\x32\x03\xf3\x47\xd0\x7b\x10\x0f\ +\x1d\xe5\x62\x59\xc9\xc4\xdd\xcc\x3d\x22\xac\x54\xde\xf7\x07\x88\ +\xc5\x7c\x5a\xf8\xec\x67\x36\x8c\xa7\x59\x94\xf7\x12\xfd\x36\xa4\ +\x11\xdc\x75\x13\x90\xc4\x03\x70\x6d\x36\x95\x66\x4a\x97\x95\xe3\ +\xab\x5f\x53\x42\x9d\x3d\x55\x2d\x97\xb1\x23\xca\x67\x0b\x57\x49\ +\xa9\x57\x65\x61\x62\x0c\xb7\xe1\x3a\xbb\x54\x00\x1c\xf6\x97\x7c\ +\x4b\x4e\x9a\x84\x15\x40\xcf\x7e\xc6\x73\x97\xf3\x5b\xbd\xc7\xce\ +\x11\x63\x71\xd2\x3d\x19\x5c\x59\xba\x45\xd7\xa6\xd4\xdc\xab\x0b\ +\x11\x05\x0e\x47\x79\xd1\x83\x2b\x6e\x51\xb2\xc4\x86\xe2\xd2\x7a\ +\x86\xc6\xc7\x89\x52\x6e\x00\x9c\x30\x19\xb1\xeb\x23\xae\xc5\xaa\ +\x33\x90\x01\x27\x89\x45\x58\x5c\xf1\x6b\x4d\x19\x17\xbc\x58\x17\ +\xcd\xf2\x21\xaf\x16\xbe\x26\x80\x08\x3d\x44\x0d\x57\xc8\xa6\x35\ +\x89\x81\xa8\xcd\x25\x8a\x42\xe4\x89\x25\x53\x99\x4d\x51\x7b\xd8\ +\xc9\x6a\x0f\x35\xe6\xe3\x21\x71\xe4\x11\x67\x8b\x08\xe7\x06\xc0\ +\x0e\x6d\x04\xa8\x1e\xf2\x05\x6d\x00\x5c\xfe\x91\x57\x3b\xaf\x1a\ +\x62\x9c\x67\x10\x30\xc0\xf8\xc4\xc6\xce\x7a\xc0\x4b\xde\xf1\x81\ +\x6e\x31\x24\xd3\x91\xbb\xa1\x13\xd4\xd6\xf1\xc9\x4e\xf4\x88\x3c\ +\xf3\x31\x10\x83\x8c\xc4\x32\xdd\x21\x78\x66\x51\x4a\x9d\xc6\x45\ +\x8c\x6a\x52\x09\x96\x04\xf6\x96\x94\xdb\x08\x36\xe2\x79\x69\xb0\ +\x3b\x8d\xc7\xac\xa2\xe0\x12\x47\x24\xc1\x72\x5b\x93\x81\xd2\x5a\ +\x80\x49\x65\xb1\x3d\x66\x00\x0b\x0b\x1b\x1e\xf3\x4a\xf9\xbb\x62\ +\x0a\x7c\xd2\x0d\x7a\x77\xf3\x28\xf7\x13\x69\xa8\x45\xb4\x7d\x36\ +\x20\xee\x60\x08\x1d\xa7\xaa\x20\x70\x5a\x9f\xb9\x1d\xa0\x43\x49\ +\x6f\x1d\x8b\x64\x5c\x44\xd3\x06\xe0\xca\x14\x82\x6c\x64\xa0\xe9\ +\x02\x0d\xc7\x12\x9d\xbb\x85\xed\x7c\x44\x53\x50\x0e\x0c\xaa\x8e\ +\x06\x38\xeb\x31\x5a\x84\x78\x6a\x58\x1e\x0c\xd7\x46\x0d\x8e\xb1\ +\xb5\x94\x1e\x9f\x51\x04\x83\xb0\x10\x65\xa8\x28\x18\x1b\x1b\xd8\ +\xfe\xd0\x43\xb2\xb6\xd3\x73\xef\x08\xb3\x86\x1b\x4d\xfb\xcf\x06\ +\x24\xd9\xb1\x7e\x24\x9d\x9f\x84\x55\xde\x4d\x06\xe2\xa2\x11\xec\ +\x7a\x4e\x75\x75\xb3\x30\x72\x05\x8f\x26\x1e\x96\xad\x4a\x44\x54\ +\x07\xe5\x20\xfe\x91\x5a\xfc\xd7\x75\xc5\xf9\x1e\xb3\x32\x76\x6f\ +\x80\x35\xa9\x8b\x04\x19\xfc\xd3\x29\x9a\xa0\x92\x95\x09\xeb\x83\ +\x99\x33\xa1\xc1\x18\xb4\x3a\x4c\x4f\xb7\x79\xbc\x1a\xe8\x53\xd5\ +\x55\xb5\xaa\x59\xc0\xe8\xe2\xf6\x8d\x5a\x9a\x5a\xbe\x5a\xd4\x4a\ +\x76\x74\x32\x54\xab\x71\x90\x1d\x7d\x66\xd9\x18\x1b\x1d\xbe\x86\ +\x63\x0a\x9f\xb1\xd3\xd9\xba\x86\xa1\x58\x13\xc3\xe0\xc9\xf5\x74\ +\xaa\x52\x62\xad\x4e\xc9\x6f\x2b\x08\x4b\xb9\x48\x52\x2e\xbc\x11\ +\xd0\xcc\x67\xaf\x42\xb3\x05\x62\xc8\xd7\xc1\xcd\x8c\xa2\x41\xac\ +\x40\xd4\xf7\x5b\x32\x45\x24\x1b\xa9\xb1\x06\xe3\xb8\x33\xae\x4d\ +\x0d\x4d\x32\x2c\x29\x54\x23\xb6\x09\xfe\x93\x97\xaa\xa6\xf4\x2b\ +\x79\xd7\x69\xfd\xa6\xf8\xd6\x68\x75\xa3\x79\x1a\x85\x16\x0f\xc8\ +\xec\x7a\xc9\x81\xcd\xa5\x88\x55\xe8\xd4\xa5\xe9\xb9\x7f\xac\x90\ +\x0b\x37\x33\x50\x2c\xd2\x38\x51\xb1\x8f\x94\x9f\xd0\xca\x09\x64\ +\x65\x23\x0c\x3a\xc8\x13\x1b\x73\xd6\x5d\xe5\x7a\x61\x37\x79\x80\ +\xf2\x9b\xc2\x98\x7d\x60\xba\xca\x25\xd4\x05\xac\xbc\x8e\xf3\x9e\ +\xcc\x0f\x91\xb9\x11\xa2\xa3\xd3\x70\xeb\xf3\x2f\x23\xbf\xa4\x2d\ +\x5d\x21\x5d\x7e\xd1\x44\x73\xf3\x0e\xd0\x9d\x20\x6b\xc0\xf1\x89\ +\x3f\x88\x03\xfb\x40\xa6\x53\x60\x04\x1b\xf5\xcc\x76\xa9\x09\x34\ +\xc3\xdc\x79\x06\x64\xe5\x19\x5a\xe4\x18\xcf\x11\x89\xb0\xd7\x02\ +\xd7\x5b\xe6\x51\xa8\x64\xb0\x2b\x71\x79\x3f\x87\xb1\xb0\x6e\x66\ +\x92\x6d\x66\x19\xf5\x92\x2c\x93\x7c\x09\xb4\xee\x58\x03\xde\x61\ +\xb5\xf3\x68\x68\xb9\xbf\x48\xa0\xd4\x16\x6c\x71\x0e\x97\x33\x6a\ +\x0b\x0e\x2f\x79\x94\xc8\xe0\x88\x25\x54\xde\xf4\xfb\x89\x8e\x42\ +\x8b\x83\x89\x94\xc0\xe2\x63\x8d\xa6\x67\xe9\x27\xc4\x3b\x89\xb0\ +\x84\x1c\xdc\x10\x30\x7a\x4f\x54\x41\xf3\x28\x3e\xd3\xd4\x40\xb9\ +\x0d\xc4\xd0\x5f\xa0\x37\xb3\xa1\x37\x53\x91\xd6\x77\x34\xfa\x8f\ +\x11\x0a\xee\xb3\x1c\xdb\xa1\x9f\x3d\xa5\xbd\x37\xba\xde\x74\x74\ +\xf5\x47\x89\x6b\x8d\xc3\x36\xef\x39\x72\x8d\xf1\xaa\xb5\x94\x06\ +\xa1\x09\x18\x71\xc7\xf6\x9c\xa2\x85\x4d\x88\x20\x83\x99\xd5\x35\ +\x0a\x81\x53\x9d\xb8\x23\xd2\x2f\x5d\x44\x3a\x78\xf4\xec\x71\x9f\ +\x58\x4a\x6c\x40\x86\xed\x66\x3e\xc6\x26\xa2\x6e\x26\xd6\xbc\x33\ +\xd6\xf0\x78\xc8\x9a\x64\x9f\x0c\x83\x79\x85\x0e\x6c\x6f\x19\x57\ +\x0b\xb8\x0c\x1f\xda\x0a\x3d\xc5\x8f\x22\x21\x29\x67\x43\x82\x31\ +\xeb\x0a\xb3\x0f\xb3\x6e\x03\xae\x44\xea\xb2\xfc\x17\x54\x2c\x19\ +\xa8\x39\x8b\xd4\x7c\x1e\xaf\x80\x7e\xcd\x55\x2b\x2f\x36\x8f\xea\ +\x7d\x58\xf9\xda\xac\x2f\x13\x7b\x9b\x13\x79\x46\xbb\x4f\x56\x8d\ +\x4d\xb5\x69\x3d\x32\x3b\x8b\x44\x22\xe7\xbc\xe9\x18\x15\x51\x6e\ +\x39\xeb\x13\x78\xc5\x6b\xb1\xcc\xf6\x1a\xf8\xcc\x91\x0d\xed\x30\ +\x21\xe6\x3c\xa1\xbd\xed\x0a\x9d\x07\x71\x85\xc4\x92\x65\x52\x7a\ +\x46\xd3\x5f\x30\x12\x95\xa3\x4d\x30\x2e\x4c\xf1\xa6\xa1\x6e\x2f\ +\x79\x20\xe3\x78\x2b\x9b\x62\xd1\xde\x19\x43\x8c\x0e\x62\xe9\x25\ +\x8d\xc4\xb4\x28\x6a\x4a\xc3\xe6\x18\x30\xa6\x13\x49\x37\x1b\x5e\ +\xdd\xef\x09\xee\x30\x47\x30\xdd\x76\x5a\xc0\x92\x60\xfb\xc8\x96\ +\x54\x01\x88\x36\x8e\x36\xf6\x82\x45\xfa\xc8\x61\x6c\xbe\x63\x8e\ +\x90\x76\x6d\x39\x95\x52\xa6\x58\x13\x6e\x20\x94\xb1\x37\x17\x32\ +\x58\x52\x8b\x8b\x91\x88\x48\x19\x5b\x72\xe2\x18\x56\x3c\x8b\xc6\ +\xd1\xa7\x6c\xdb\xe9\x25\x8d\x54\x56\x5d\xc3\x07\xd2\x67\x84\x7b\ +\x46\xaa\xec\x37\x02\xc0\xf4\x30\xc0\xb0\xdc\x32\x3b\x4c\xeb\x45\ +\xaa\x1e\xf1\xca\x08\x1c\xcf\x29\xbe\x01\x23\xd2\x1e\x7a\x89\x9b\ +\x53\x77\x07\x4d\xbd\x44\x0a\x60\xd8\x83\x04\xb0\x0d\x1d\x4e\xce\ +\x09\x3c\xc8\x92\xea\x2f\xb8\x74\x98\x08\x64\x04\x0e\x0c\xda\xb7\ +\x0c\x7b\x40\xa7\x92\x41\xeb\xc4\x42\x84\x65\x34\x8a\x92\x41\xb5\ +\xa7\xb5\x76\xf1\x11\x8f\x3b\x46\x62\x2a\xb0\x57\x54\xfa\xc7\x6a\ +\xce\xf7\x55\xec\xa0\x7b\x40\x91\x5c\x12\xbb\xd0\x0b\x1f\x48\x28\ +\xc5\x86\xdc\x02\x39\x10\xee\x02\xb5\x34\xfa\x1f\x58\x28\x55\x10\ +\xbd\x41\x76\xbf\x96\xdc\xcd\x03\x11\xc7\x16\x00\xc7\x21\xa6\x7c\ +\x87\x9c\x44\x52\x43\x53\x2a\xc0\x9e\xc7\x11\x8b\x4d\xac\xc4\x8b\ +\x11\xd2\xd3\x34\x89\x5c\x87\x3f\xc4\x5b\x3b\x03\xb9\x49\x23\xa8\ +\xea\x23\xf4\xcd\x4d\xe8\x32\xb5\x3b\xb5\xee\xa6\xf9\x90\xd7\xba\ +\x31\x28\x4e\xe1\xc7\xac\xa0\x13\x56\xb1\xdc\x2d\x98\x49\xab\x47\ +\x43\x46\xbd\x35\x74\xcd\xbb\x8f\x68\x85\x02\xbd\x22\x40\xb5\x41\ +\xc8\xef\x11\x50\x6d\x7e\x6d\xd6\x6b\x20\xd3\xde\x9a\x51\xab\x49\ +\xb6\x06\xa6\x4d\x83\x03\xc8\x31\x0e\xb4\x83\x15\xda\xc2\xc6\xd1\ +\xba\x5a\x8b\x76\xa1\x54\xdd\x1b\x8f\x43\xde\x06\xad\x19\x35\x4c\ +\x30\x7a\xfb\xc5\x35\x13\x4f\x6d\xc5\x98\x7b\x88\x5b\x69\x73\xe3\ +\x66\xfd\x44\x41\xab\x64\x0b\x6c\x83\x00\xd5\x24\x47\x16\xad\xd8\ +\x8e\x33\x55\x49\x18\xbc\x76\x9a\x93\x51\xa9\xbd\x41\x64\x6c\x11\ +\x79\xce\x57\xcd\x88\x16\x32\xdd\x1d\x40\xf5\x36\xbe\x0a\xf1\x9e\ +\x66\x6a\x8a\xbe\x23\xa6\xdb\xb0\xab\x38\x16\xb0\x36\xc4\x91\x5d\ +\xb6\xec\x73\x6b\x70\x48\x9d\x04\xad\xb2\xd4\x6a\x96\x00\x8c\x5f\ +\xbc\x4e\xa0\x85\x01\x2b\x20\x61\xd1\xad\x33\x2b\x55\x38\x66\x5b\ +\x36\xc5\x7e\xe4\x41\x66\x4e\x40\x36\x27\x88\xd5\x4a\x40\xf5\x00\ +\xf4\x07\x13\xc7\x4a\xdf\xf6\xd8\x3a\x9e\x86\x6b\x60\x4a\xcb\x4c\ +\xb6\x09\x5f\xa4\x72\x50\x36\xf2\xb8\x27\xf4\x9e\xf0\x9d\x1b\xcd\ +\x4e\xc3\xbc\x62\x2a\x91\xcc\xad\x41\x28\xfd\x56\x1a\x53\x07\xa1\ +\x06\x11\xba\x88\xc4\x67\x23\x06\xc7\xb1\x99\xd4\x0b\x64\x5a\x05\ +\x41\x71\x79\x4d\xee\x3c\xe8\x2f\xfa\x4c\xfb\x93\x75\x3b\x85\xe5\ +\xa5\x1b\x06\xfc\x33\xca\xaa\x3c\xdd\xf9\x12\x96\xa6\x87\x87\xfd\ +\xa7\xa9\xe9\x86\xef\x2d\x54\xcf\x31\xd1\x81\x47\xb8\xc6\x23\x03\ +\x6d\xaa\x8f\x1c\xba\x05\x04\x37\x8c\xb6\xf6\x94\x7d\x9b\x4a\xaa\ +\x0d\x4a\xc4\xf5\xb4\xce\xc3\x82\xa7\x58\x35\xaf\xec\x7d\x63\x34\ +\x55\x3c\x3a\xad\xa7\x7c\xab\x65\x62\x7c\x6d\x15\x3b\x6d\x42\xd6\ +\xfc\x44\xca\x2a\x6a\x74\xfe\x12\x56\xa7\x49\x78\xfd\x26\x5a\x43\ +\xae\xd3\xb5\x2a\xc7\x6f\xca\x72\x0c\x9a\xa2\xb0\x23\x9c\x4e\xf2\ +\xd6\x15\x34\x7e\x3d\x22\xa5\x80\xe0\x89\x0b\xeb\xeb\x0c\xec\xa6\ +\x7d\x00\xe6\x52\xd5\x64\x73\x1a\xf9\x5c\xe6\x4e\x03\x64\x13\x63\ +\xc4\xea\xb7\xc5\x5c\x61\xa8\x52\x6f\x42\x26\x0f\x89\x69\x5e\xc6\ +\xae\x8e\x9b\x5f\xa8\x13\x72\xdf\xe3\x39\x1c\x2a\xb7\xb0\xbf\x5e\ +\xb1\xb4\x35\x55\x68\x52\x1e\x1d\x46\x53\x7e\x86\x2e\xa5\xb6\x29\ +\x36\xf5\x8a\xaa\x01\xa4\xb6\x39\x9d\x19\x74\x0f\xc6\x05\x40\x29\ +\xeb\x68\x53\xac\x83\xa9\x19\x8b\x3f\x0f\xd2\xea\x89\xa9\xf0\xfa\ +\xc2\xf9\x26\x9b\xf4\x9c\xb6\x46\x3c\x91\x78\x74\x9f\xc1\x3b\xd1\ +\x88\x6b\xf7\x87\xe7\x3c\x5b\xfd\x7a\xa6\x92\xb5\x2a\xc5\x2a\x53\ +\x60\x46\x26\xae\x9c\x0b\xf9\xad\xe9\x3a\xfa\x5f\x8a\xa5\x75\x14\ +\x75\xb4\xd5\xc1\xe1\xbb\x4d\xad\xf0\xc1\x54\x1a\xba\x5a\x81\x93\ +\xf2\x93\x99\x7e\xb3\xd5\x9f\xc7\x3a\x98\xa6\x83\x2a\x49\xea\x4c\ +\x5d\x4a\x97\xc2\xf1\x1d\x53\x4f\x5e\x99\x21\xe9\xba\x88\xbd\x84\ +\x9c\x5a\xd1\x01\xa6\x8c\xcd\x7e\x44\x22\x37\x1b\xf1\x1a\xaa\x42\ +\x5b\x82\xdd\x7d\x21\x0a\x5c\x93\xc4\x96\x10\xaa\x44\xa3\x4e\x2e\ +\xae\x2d\xc0\xbc\x3a\x1a\x56\xa8\xe0\x66\xde\x92\xa7\xd2\xa5\x32\ +\x02\xb9\x3b\x47\x9b\xde\x66\xd8\x64\x44\x2a\x1e\x5b\x33\x1d\x7c\ +\xb7\x5c\xc2\xab\x4c\x29\x22\xf9\xed\x3d\x48\x32\x9c\x1c\x70\x62\ +\x93\x5c\x93\x68\x40\x77\x95\x9a\x48\xf9\x5c\x18\xa6\xa0\x47\x73\ +\x2d\x58\x2a\x0d\x65\x37\xe2\x30\xaa\x11\x7c\x1b\xc5\x28\x20\x95\ +\xe2\xc2\x32\x98\x62\x38\xb5\xa1\x53\x02\x80\x6c\xb7\x8d\x4a\x78\ +\xcc\x24\x5b\x1c\xc6\x20\xfa\xcc\xda\x70\xbd\xa6\x6d\x35\xb7\x39\ +\xbf\x31\xc5\x6f\xd2\x60\x4e\x6d\x0d\x25\xb2\x6d\x6e\xc2\x10\x6b\ +\x8b\x18\xd4\x5d\xc3\x69\xfa\x41\x34\xec\x30\x47\xf5\x92\x4f\x50\ +\x67\x88\x5a\x72\x43\x15\xef\x18\x13\xbc\xc5\x5d\xaf\x83\x1d\x40\ +\xaa\x45\x88\x7e\xbc\x19\xea\x14\xce\xfb\xdb\x1d\xe1\x55\x42\x54\ +\x12\x63\xa8\x1f\x09\x77\x1c\x5c\x58\x02\x25\xf1\x24\x28\x6a\x6a\ +\x01\xc6\x0d\xa7\xbe\x20\xe7\xc6\x64\x41\x60\x05\xaf\x1f\xa6\x01\ +\xb5\x60\x91\x6d\xa6\xe4\x1e\x24\xf5\xd7\xef\x0b\x35\xc0\x26\xf7\ +\x8c\xf4\x12\x87\xcc\x0b\x62\x15\x64\x3e\x20\x60\x49\x53\x05\x94\ +\x10\x40\x3c\x0e\x23\x68\xdf\xc2\x05\xfc\xaa\x39\xbc\x68\x7a\x97\ +\x01\x81\xb1\x3c\x4a\x1e\xbd\x45\xa6\x00\x6e\x45\x8d\xe0\x04\x0c\ +\xbe\x22\x5a\xdd\x04\xc5\x56\xcb\xf4\x13\x24\x24\x39\x36\xa7\x7b\ +\xda\xe0\x8e\xf2\xc1\xa6\xa2\xfa\x61\xa9\xac\xcc\x2e\x6c\x42\x8e\ +\xb2\x52\xee\x9f\x59\x55\x4c\xe8\xd6\xc6\xc6\x93\x5d\x87\xa1\xff\ +\x00\x82\x54\xb9\xd5\xa9\x7d\x9f\x57\xe5\x38\xe4\x1e\xe2\x2f\x57\ +\x4f\xc4\xb3\xa8\x19\xe4\x4b\x9e\x99\xab\x4b\x16\xdd\x4f\x23\x3d\ +\x24\xed\xba\x9d\x99\x94\xdb\x83\x89\xa9\x46\x21\x2a\x41\x0d\xe9\ +\x69\x5d\x6b\x57\xd1\xad\x4f\xfb\x88\x33\xea\x22\x9d\x45\xc8\xb9\ +\x23\x91\x37\x4f\x50\x53\xb1\xe8\x0d\x8f\xb1\x8d\x09\x2a\x5b\x18\ +\x98\xa0\x11\x8c\xc7\x6a\x69\x78\x75\x88\xe5\x4e\x57\xda\x62\xa0\ +\x02\x3a\x03\x63\x6b\xc6\xd0\x04\x5c\xf5\xb4\xd0\xb7\xf5\xcc\x6d\ +\x2a\x64\xb0\xdb\x9b\x98\x1c\x74\x59\x52\xad\x34\x57\x60\x1b\x68\ +\xb1\xb4\x31\x47\xc4\xa4\x29\xbb\x29\x61\xc1\xeb\x26\xae\x0a\xd5\ +\x01\xae\x2c\x04\x62\x54\x26\xc1\xb3\xd8\xce\x6d\x27\xaf\x45\xe9\ +\x36\xc7\x42\x07\x79\x89\xb9\x45\xc1\x27\xb6\x65\xee\xde\x22\x58\ +\x9b\x38\x92\xf9\x77\x6d\x74\xb1\xf4\x8e\xac\x32\x86\xab\x70\xdb\ +\x55\x77\x2f\x63\x18\xd4\x69\xbf\x9a\x9a\xdc\x7b\xc0\x5a\x2a\xc3\ +\xee\xd8\x37\xfb\x78\x30\x7c\xe8\xf8\x25\x48\xe9\x04\x30\xb4\x86\ +\x0b\x30\x3d\x88\x8d\xa6\x94\x48\xf9\xf3\x31\x4a\x56\x4b\x11\x62\ +\x3a\xc4\xbd\x36\x43\x9e\x3a\x19\x25\x26\x9a\xdb\x92\xcb\xe9\x25\ +\xad\xe1\x53\xa8\x79\x36\x86\x97\x23\x98\x15\x85\xf9\x1f\x59\x44\ +\x16\xac\x9c\xad\x30\x26\x78\xce\x06\x2c\xbf\x48\xa3\x4c\xf4\x83\ +\xb8\x64\x13\xc4\xd6\x0d\x3d\x2b\xb1\x3b\x4b\x1f\xd6\x1b\x5f\xc3\ +\xc9\x91\xb3\x5b\x20\x62\x52\xb5\x2f\x44\x1e\xa2\x56\x26\x51\x52\ +\xc8\xc0\x99\x56\x88\x86\xa0\xd4\xc9\xeb\x26\xa4\xc3\xc4\x22\xf1\ +\x9a\x5b\xad\x47\x1c\x62\x14\xc7\x47\xe0\xf9\x4a\xd4\x09\xc0\xff\ +\x00\xf2\x73\xab\x1d\xa4\x8b\xd8\x83\x2d\xf8\x61\x23\xe2\x2c\x07\ +\xe3\x53\xfd\xe4\x5f\x11\xf2\xea\xaa\xaf\x19\x33\x33\xd3\x7c\x49\ +\x55\xef\x6b\x8e\x62\xc8\x06\x83\x10\x4f\x95\xa6\x38\xc0\x6b\x75\ +\x9b\x48\xe2\xa2\x5f\xf0\xde\x75\x60\x8a\xa4\xf8\x6a\x3b\x08\xaa\ +\x98\x44\xb7\xe5\x87\x52\xe3\x9e\xe6\x05\x67\x00\x80\x7a\x0b\x44\ +\x10\xe4\xa9\xb1\x98\x46\x16\xd3\x4f\x98\x81\xde\x63\x35\xd9\xad\ +\xc7\x48\x81\xa1\xc4\xa6\x86\xa6\xad\x16\x1b\x18\x8f\xac\x9e\x98\ +\x8d\x45\xc4\x29\x75\x29\xfc\x4d\xb6\xed\xaa\x8a\xd1\x8b\x53\x49\ +\x54\x8d\xf4\x54\x13\xd4\x62\x73\x55\x45\xbd\x63\x29\xa9\x00\x9f\ +\xd2\x67\xf3\x1a\xd7\x4b\x6e\x89\xbe\x5d\xde\x99\x84\x94\xf4\xca\ +\x46\x09\xf7\x9c\xca\x65\x83\x00\x25\x4a\x48\xb3\x1b\x93\xd0\x4c\ +\xd9\x87\x56\xd4\xa8\x94\xd2\xc9\x60\x4f\x6e\x64\xa5\xae\x6d\x6b\ +\x09\xe1\xcd\xcc\x24\x5c\xc1\x15\x5d\x3e\xf8\xf6\x8b\x75\x24\x8b\ +\x0c\x4a\xf5\x20\x1a\x9f\x41\x14\x56\xe2\x32\xa2\xa9\xad\xb3\x1a\ +\x01\xbd\xc6\x67\x90\x0e\xb1\xa9\x81\x89\x5a\x93\x0a\x60\xbb\x1e\ +\x09\x8c\x44\x2a\x6e\x04\x71\xa3\x82\xc2\xc4\x43\xa4\xa7\x1d\x61\ +\xab\x0a\xdb\xe7\x20\x64\x46\x2a\x81\xd2\x57\x4e\x80\x75\xc0\x13\ +\xcd\x40\x8e\x44\x34\xe2\x62\x16\xd8\x3f\xb4\xc0\xa4\x62\xf1\xde\ +\x1d\x8c\xdd\x97\x32\xd4\x4e\xd6\xbe\x08\xfd\x63\x0d\x2d\xea\x5b\ +\xaf\x58\xd4\xa7\x9b\x81\x0f\xe5\x86\x94\x4d\xe5\x16\xbd\xe0\x06\ +\x1b\xc6\x39\x8f\xae\x9f\x88\x71\x12\x40\xc3\x5b\x89\xa0\x6b\x53\ +\x25\x2c\x39\xbf\x31\x35\xed\x75\x50\x7d\xe5\xda\x70\x0d\x30\x4f\ +\x04\x49\x6a\x04\x04\x9f\xc4\xd9\xf6\x84\xaa\x94\x8a\x17\x4f\x51\ +\xfa\x9c\x09\x2d\x3a\xce\x0e\xd6\x1b\xd2\xfc\x1e\x92\xaa\xe2\xd4\ +\xd5\x3b\xe4\xc8\xf6\xe4\x80\x26\xa3\x34\xc3\x4e\x95\x67\xbd\x37\ +\xf0\xdf\x8b\x37\x1f\xac\x23\xa6\xa8\x8a\xca\xe0\xff\x00\xe4\x78\ +\x8a\x08\x15\x6d\xd6\x59\xa4\xad\x56\x8a\x94\x24\x38\x23\xe5\x6c\ +\x89\x53\x13\xd3\xbe\xf0\x83\x0a\x25\xa1\x54\xe8\x5d\xba\x3b\x00\ +\x3d\x6d\x01\xf5\x3a\x4c\xee\xd2\x1b\x9e\x76\xb9\x02\x05\x5d\x4f\ +\x8a\x40\xb2\xa2\x01\xe5\x51\xc0\x87\xa8\x8d\x87\x70\xa4\x46\x7b\ +\x98\x34\x2a\x1f\xb6\x3a\xb0\x26\x9b\xf9\x48\xec\x0c\x68\x57\x70\ +\x76\xdd\x89\xf2\x81\x2a\xd2\x50\x55\xda\xf8\x25\x56\xe7\x77\x53\ +\xd2\x3a\xb1\x2e\xa3\x4d\x56\x85\x54\x6b\x82\x08\xb1\x83\x54\xb2\ +\xab\x73\x6b\xdf\xda\x55\xa9\x74\xac\xbb\xd6\xf6\x56\xdb\xff\x00\ +\xb8\xb6\xfb\xd1\x76\xb7\x16\x3e\xb0\xd5\x88\x55\xcb\x8b\x6d\x57\ +\x2b\xdc\x74\x8b\x61\x48\x97\x56\xa7\x62\x47\x43\x28\x6a\x1b\x5c\ +\x38\xbd\xbf\xa4\x0a\xb4\xc8\x20\x91\x71\x37\xa0\x22\x9d\x3a\xfa\ +\x7b\x2b\x90\xf4\xf8\xdc\x39\x10\x3c\x07\xdb\x8b\x37\xb6\x61\xd2\ +\x5f\x0a\xa8\x37\x3e\xd1\xb5\x29\xec\x7f\x2f\x07\x22\x5b\x80\xaa\ +\x48\x6c\x63\xa9\x7d\xd9\x04\x76\x9e\x0c\x7f\x18\x0d\x0d\x50\x5c\ +\x6d\x3c\xf4\x30\xb4\x8e\xbd\x41\x50\xaa\xbf\x55\x16\x3d\xa2\x76\ +\xbd\x36\x00\xda\xd3\xd5\xd5\xc6\xd6\xb1\xc7\x48\xd5\x60\x52\xcd\ +\xf2\xdb\x1e\x90\x4d\x4a\x81\x8d\xaf\x66\xe9\x18\xc8\x19\x6e\xa2\ +\xec\x39\x88\x09\xb7\xcd\xd3\xa1\x8c\x15\x0f\x3f\xac\x08\x30\xa6\ +\xf9\xbc\x6a\x57\x0c\x36\xd5\x1b\xc7\xaf\x22\x0d\x45\xde\x37\x01\ +\x99\x23\xb5\x8e\x71\x19\x35\x78\xbf\x65\x36\xce\x9d\x8e\xef\xca\ +\x79\x85\x41\xf7\x83\x4a\xa8\xcf\x79\x1d\x17\xe0\xde\xc7\xbc\xa8\ +\x55\x4a\x98\xa9\x86\xe8\xe2\x16\x26\xd4\xa6\x69\xb5\x8f\xd2\x2c\ +\x8b\xe0\xca\xac\xe5\x36\xb6\x48\xca\x9e\xf1\x55\x2a\x02\xdb\x58\ +\x7b\x19\x2c\x4b\x50\x15\x89\xa9\x63\x93\x8f\x59\x46\xa1\x6f\xc4\ +\x99\xc1\xb7\x13\x50\x52\x88\xdb\xcf\x98\x77\x11\x9a\x62\x48\x23\ +\xa1\x80\x97\x56\xdb\x7c\x4a\x29\x2a\xf4\xc1\xbf\x11\xa2\x05\x2e\ +\x2b\x03\x28\xa2\x0f\x8a\x4f\xa4\x53\x21\x5a\x9d\x70\x65\x09\xe5\ +\x63\xeb\x33\x5a\x87\x7c\x35\xad\xf1\x2a\x57\x3c\xa9\x1f\xb1\x89\ +\xf8\xb5\x8e\xba\xaf\x4b\x18\xcd\x08\xbf\xc4\x34\xe6\xfd\xff\x00\ +\xac\x9f\xe2\xee\x06\xba\xae\x7a\xc2\x7f\xd9\x7c\x42\xf8\xf2\xcc\ +\xd3\x79\xaa\xdb\xb8\x23\xf6\x9e\x66\x04\x83\xf5\x99\xa7\xc6\xa1\ +\x07\xfb\xa7\x4f\x8c\x91\xa9\x37\x7c\x77\x93\xea\x0f\xde\x1e\x9d\ +\x23\xb2\xd5\x14\x1f\x79\x35\x5b\x9a\x84\xde\x6a\x07\x94\x80\xd7\ +\xed\x99\x88\x73\x9f\xac\xf5\xac\xa2\xe7\xe6\x33\x40\xe3\x1c\x48\ +\x1d\x44\xd8\xe6\x53\x4c\x5c\xfa\x49\x14\xdb\x89\x45\x16\xb4\x29\ +\x8a\x54\x0e\x82\xe6\x39\x69\x91\x4c\x0f\xac\x4d\x23\x91\x6c\x93\ +\x2c\xbd\x86\x32\x66\x6d\x6a\x16\x10\x27\x98\x8c\xcd\x59\xa0\x77\ +\x9a\x9f\x35\x8f\x02\x65\x0c\x0b\x01\x98\x62\xf7\x00\x0e\x66\x2d\ +\x8d\xf1\x18\x8b\x77\x03\xd6\x05\xb5\x6c\x1f\x3d\x05\xa0\x1c\x8b\ +\x5b\x13\x5f\x35\x18\xf7\x33\x6d\xe5\xe3\x32\x25\x05\xef\x1d\x49\ +\x05\xc5\xc4\xc5\x1e\x91\xf4\x56\xe0\xd8\x71\xcc\x96\x36\x9a\x59\ +\x4a\x9c\x82\x63\x52\x8d\x88\x00\x62\x10\x51\x61\xc6\x63\xe8\xf6\ +\x23\x13\x16\x9c\x7a\x9a\x01\x1b\xb6\xe2\xc7\x89\xb6\xb0\x9a\x38\ +\x99\x69\x3b\xd0\xea\x38\x82\xb4\xec\x73\x6b\x4a\xef\x61\xe9\x17\ +\x52\xd6\xb8\x88\x24\x80\xa3\x11\x0f\x72\x63\x2a\x3d\xb9\x8b\x73\ +\x78\xc0\x59\x03\xaf\x1d\x62\xd9\x43\x10\x17\x83\x0e\xa5\xca\xd9\ +\x78\xea\x66\x69\x47\xdf\x0e\xbf\xc4\xd0\x3f\x50\x45\x2d\x1a\xaa\ +\xfc\xc7\x32\x15\x1b\xdc\x0e\x49\xc9\x3e\x92\xad\x5b\x2b\xd7\xb2\ +\xe4\x5a\xc6\x22\x90\xdb\x4e\xa3\x11\x9e\x04\xa2\xa9\x75\x55\x37\ +\x39\xb9\xb0\x82\x78\x04\x64\xf5\x99\x50\x7d\xe1\x26\x62\x9f\x29\ +\x06\x68\x34\x73\xbb\xf4\x10\xe9\x30\x15\x40\xea\x62\xbd\x4f\x3c\ +\x42\x44\xbb\x82\x0f\xac\x90\x5f\xe6\x37\xb4\x34\xa2\xd5\x08\x41\ +\x8b\x9e\x4f\x48\xd6\x14\x41\x6f\x29\x66\x27\x17\x8e\xa6\x1a\xc4\ +\x00\x32\x2d\x89\x6a\xc5\x34\x91\x17\x46\xe1\x01\x0c\x9c\xb7\x78\ +\x9d\x45\x86\x8c\x29\x39\x67\xfe\x23\x34\xc4\x96\x75\xb7\xcc\xb7\ +\x81\xab\xb0\xa5\x44\x30\xbf\x3c\x7b\xcc\x10\x20\x54\x55\x43\x90\ +\xd9\x36\x8d\x5a\x20\x0e\x2f\x7e\xb1\x55\x86\xc7\x5c\xf2\xb2\xbd\ +\x3b\x86\x5d\x80\x82\x40\xb8\xf6\x8d\x51\x05\x6a\x65\x18\xae\xdf\ +\x29\x89\x23\x1b\x4f\x4e\x27\x66\xb2\x2d\x45\x06\xdd\x33\x21\x65\ +\x55\xa8\x77\x10\x6d\xd2\xd2\x95\x58\x80\x95\x26\xc4\x47\x53\xda\ +\xf4\xb6\x91\x72\xb9\x1e\xd0\xaa\xa5\x2d\xd7\x03\x06\x7a\x89\xa6\ +\xac\x08\x53\x7f\x78\xe8\x01\x40\xc4\x6d\x10\xfc\x12\x56\xf6\xe2\ +\x3d\xe9\xa9\x17\x55\x36\x39\x10\xa9\xff\x00\xa7\x6b\x1e\x6d\x2d\ +\x38\x9d\xcd\xe9\x15\x61\x7f\x78\x29\x4a\xf4\xb7\x0c\xd8\xda\x32\ +\xab\x2e\xf2\x00\xc4\xdd\x21\x09\x58\xa8\x38\x22\x41\x29\xa8\xc8\ +\x76\x5a\xe0\x72\x0c\xf0\x2b\x50\xee\xa6\x40\x3d\x54\x98\xcd\x6d\ +\x34\x35\x4b\xa1\xf2\x9f\xd8\xc8\x88\x21\xf0\xa2\x6a\x76\x2a\x97\ +\xa8\xf4\xec\x73\x6e\xc6\x05\x65\x5a\xab\xbd\x0d\x9b\xb4\x6d\x17\ +\x46\x01\x2a\x8d\xc8\x71\xea\x22\xea\x51\xf0\xaa\x6f\xa5\xe6\x43\ +\xdf\x91\x08\x89\x45\x37\xb9\x36\x3d\xa3\x43\x11\x99\x8e\x01\x03\ +\x03\xd0\xf6\x98\x6e\x05\x9b\xe8\x44\x7d\x4e\x86\x82\xb2\xdc\x52\ +\xaa\x7c\xa7\x83\xda\x7b\x5c\x9e\x15\x5d\x87\xe8\x67\x3d\x2a\x6d\ +\x39\xfa\x4e\x9e\xa1\x8e\xa3\x41\x4e\xaf\xe2\x4c\x1f\x69\x9b\x32\ +\x9d\xd8\x91\xbc\xc9\x7e\xa2\x01\x00\x1e\x32\x61\x2d\x50\x78\xcd\ +\xf1\x78\x37\x0b\x93\xcc\x51\x46\x9e\x73\x34\x82\xab\x88\x7b\xc0\ +\x6f\x96\xfe\x90\x82\x86\xe7\x12\xd0\xf1\x6d\xf7\x07\x91\x6b\x18\ +\x6c\x08\x22\xfd\x66\x56\xa4\xa1\xce\xd7\x06\x36\xa8\x36\xa6\x0d\ +\xae\xa2\xfe\xf0\x26\xfc\x2d\x77\x6b\xa9\x9e\x36\xa3\x37\xbf\xfc\ +\xbc\xe5\xfc\x4d\xfc\x4d\x6d\x66\x1f\x98\xda\x77\x3e\x14\xa1\x3c\ +\x6a\xa4\x8f\xbb\xa6\x17\x3d\x3a\xcf\x9f\xd4\x5d\xaa\xde\x3c\x7d\ +\x57\xc2\x1d\xad\x8c\xdc\x4f\x69\x89\x3a\x9a\x79\xfc\x42\x63\x8b\ +\xe6\xfd\x66\xe9\xb1\xa9\x5b\xf4\x37\x9d\x18\x0a\x90\x37\x9e\x6c\ +\x24\xe4\x02\xf6\x0b\x2a\xf0\xc0\x4c\x75\x30\x3c\x32\x03\x36\x31\ +\x89\x24\xcd\xfe\xa6\x00\xb0\xc4\xf0\x37\x36\xb5\xa1\x14\xc9\x3d\ +\x66\x2a\x92\x4f\x61\x10\xf0\x36\x8e\xa6\x48\x39\xc0\x8a\x20\x0e\ +\x05\x8c\x35\xb9\xb7\xef\x24\xaa\x95\x43\x71\x6e\x2f\x28\x4a\x97\ +\xeb\x99\x2d\x02\x03\x0b\xc2\xa6\x40\x60\x2d\x33\x63\x4b\x43\x5f\ +\x30\x86\x56\xf0\x53\x2b\x34\xe0\x58\x4c\x13\x54\x8e\x23\xe8\x9c\ +\xb3\xdf\x0a\x24\x61\x8d\xed\x28\x7b\xad\x15\x4e\xa7\xcc\x60\x5e\ +\x02\xe6\xf1\xaa\xb7\x36\x27\xd6\x29\x32\xb9\x8e\xa4\x56\xdb\xbb\ +\x19\x13\x42\x00\x36\x8e\x4c\xf0\xb2\xb6\xdb\xc2\x07\xca\x4f\x5e\ +\x91\x5b\x6e\xd7\x22\x65\x29\x56\x51\xdb\x11\xf4\xcf\x97\x9b\xc8\ +\x46\xec\xca\x68\x30\xbe\x4c\x2c\x2a\xd3\xd7\x89\xa6\xc2\x0a\xb0\ +\xe2\xf0\x96\xd7\x3d\xa6\x5a\x65\xc5\xba\x40\xb8\x06\x6d\x42\xaa\ +\x31\x98\x91\x58\x74\x12\x01\xd4\x53\xb6\x46\x04\x49\xda\x83\x9b\ +\xb1\xfd\xa3\x5e\xa8\xc8\x36\x37\xef\x24\xab\x7d\xdc\xe6\x6a\x0a\ +\xc7\x2c\xcd\xe9\x19\x49\x76\x2d\xfa\x99\x9a\x74\x0e\x7d\xa1\xb8\ +\x24\xb1\x1f\x84\x58\x4d\x54\x8c\xd4\x21\x99\x87\x04\xc7\xd4\x1f\ +\x70\x85\x47\x39\x22\x4b\x54\x5e\xa0\x51\xc5\xe3\xdd\xf6\xb5\xbe\ +\x82\x41\x2d\x54\x22\xf6\xfd\x7d\x24\xfb\xf6\xb8\xed\xd0\x4e\x93\ +\x85\xa8\xbb\x4e\x18\x7e\xf2\x2d\x46\x9f\x63\xee\x69\xa9\x45\x8c\ +\xb5\xcd\x8d\xed\x1c\x8b\xb5\x48\xeb\x69\xba\x0a\x62\xbd\xc9\x36\ +\x5a\x62\xec\x7d\x21\x6e\xd8\x77\x5b\x27\x8b\xc2\xa6\x85\xf2\x2b\ +\x37\x41\x0e\x8d\x66\xa7\x95\xb6\x3d\x20\xa3\x23\x52\x65\x62\x43\ +\x13\x81\xd2\x02\x15\x14\xce\xeb\xf3\x69\x15\x09\x5c\x9a\xfe\x23\ +\x63\x71\xb1\x23\xb4\x76\xae\x89\x66\xa2\x14\xee\x5b\x1b\xfe\xb2\ +\x64\xdb\x73\xb7\x6b\x02\x2f\x2d\x2f\x7d\x10\xaa\xa4\x6f\x41\xb6\ +\x66\x98\xe7\xd5\xdc\xc3\x79\xe2\xf6\xbc\xa3\x42\x05\xc1\xbd\xba\ +\x13\x0e\x9b\x52\x75\x74\xaa\x40\x37\x06\xe0\x4c\xa7\x4d\x69\x3e\ +\x0b\x14\x6c\x5c\x71\x1d\x0a\x43\x21\x52\x09\xb7\x4b\xc4\xd6\xa4\ +\x19\x33\x9e\xc6\x61\xa9\x4d\x5b\x76\xc2\x41\xf9\xae\x61\x23\x80\ +\xde\x54\xb8\xea\x2f\x32\x52\xf8\x24\x5f\x1b\x84\xc3\x4a\xc4\x15\ +\xe2\x74\x94\x23\xe4\xd1\xb7\xad\xe1\x78\x49\x7b\x9a\x63\xdc\x18\ +\xfe\x96\x21\xa5\xe5\x5d\xad\xc7\xf1\x0c\x2d\xaf\x73\xeb\x28\xa9\ +\x4e\x88\x1c\x11\xed\x06\x9a\x50\x2c\x01\xa8\x57\xd4\x88\x6a\xc7\ +\x3a\xaa\x1c\xf3\xcd\xa6\x69\x14\xfd\xa0\x03\x3a\x3a\x9d\x20\x03\ +\xcb\x55\x4c\x90\x52\x6a\x55\xd5\x9b\x76\x0f\x36\x9a\x97\x46\x02\ +\xb5\x15\x0c\x40\x27\x3d\x27\x3b\x50\x1e\x95\x42\xa6\xfe\x97\x13\ +\xb6\xf4\xc3\xb6\xce\x09\xe2\x4f\xa9\xa2\x19\x76\xba\x82\xc2\x3c\ +\x6a\xb1\xc9\x0e\xd6\x17\x1c\xe7\x12\xa4\x62\x2c\xdd\x0f\x22\x67\ +\x82\x43\x61\x41\x11\xbb\x36\xa0\xb8\xe4\x76\x8d\xac\xc3\x1a\x90\ +\x7a\x78\x1e\x6b\x5f\xde\x46\xa0\x5c\xab\x8b\x03\xc1\xed\x28\xa7\ +\x54\xa2\xe4\x58\x29\xfd\xa2\xab\x8f\x19\x77\x29\xcf\x22\x50\xd4\ +\xf5\x6c\xad\xb5\xad\xb8\x71\x2e\xd0\x31\x6a\x5e\x1b\x7e\x30\x44\ +\x89\x57\xc4\xa6\x77\x5c\x3d\x3f\xe2\x57\xa2\x3f\x79\x48\x62\x3c\ +\xbc\x13\xd4\x68\xc7\x73\x29\xe8\x63\x2a\xb5\x8d\xbb\xc5\x31\x03\ +\x57\x50\x0f\xcc\x67\x9c\x8b\x2d\xcd\xc9\x18\xb4\x50\xd1\xb3\xdf\ +\xbc\x68\xf9\xf1\x9c\xc4\x28\xd8\xa3\x70\xb1\x30\xc5\x4f\x0d\x09\ +\x1f\x35\xbf\x48\x54\xa0\x05\x0a\x6a\x30\xbe\x6c\x07\x4b\xc7\xf8\ +\x85\xc8\xf2\x2f\x16\xe2\x45\xa7\x7d\xd4\xec\x47\x19\x12\xba\x08\ +\xc6\x90\x63\xde\x66\x98\xe8\x15\x55\xf8\x55\x56\x16\x06\xab\x58\ +\x5f\xf4\xfe\xf3\x85\x5a\x99\x46\x20\x89\xdc\xf8\x99\x14\xa8\x50\ +\xd3\x9c\x95\x50\x48\xff\x00\x9f\x59\x00\x60\x7c\xb8\x03\xa1\x87\ +\x1a\x6b\x98\xd4\x1c\x2d\xca\x10\x3a\x13\xd6\x2e\x8d\x32\x2a\x3b\ +\x12\x06\xd4\x32\xdd\x4a\x30\x24\xb3\x7b\x66\x4f\x45\x2d\xa7\xaa\ +\xe7\xad\x97\xfa\xff\x00\x49\xd3\x58\xc7\xab\x28\x0e\xa9\x6c\x01\ +\x68\x35\xd5\x45\x90\x74\xc9\xf7\x95\xb2\x87\x6d\xd6\xb9\x1d\x62\ +\x58\x77\x07\x37\x37\x94\xa5\x1b\xd3\x00\x5e\xdc\xc0\x64\xed\x89\ +\x55\x54\x02\xd8\xc7\x78\x01\x05\xb2\x39\x3c\x4d\x0c\x4f\xe1\xde\ +\xdd\xa0\x65\x49\x95\xb5\x88\xb5\x80\x8b\x65\xbf\x00\x48\x61\x74\ +\x49\xdd\xd6\x3d\x01\xb8\x69\xea\x48\x37\x74\x85\x4a\xf7\xb7\xe8\ +\x64\x56\x53\x3e\x51\x88\xc6\x50\x73\x25\x57\xe9\x7c\xc7\x50\x0c\ +\xc7\x1c\x0e\x4f\x49\x8b\x09\xd4\x55\x77\x6f\x3f\x2a\xe4\xcc\x66\ +\x2e\xe5\x8f\x53\x31\xdc\x30\x08\x83\xc8\x3f\x73\x0a\x9a\xdc\xe4\ +\x8f\xd6\x64\xb5\x49\xbd\xa5\x14\x06\x7d\x04\x56\xdd\xbd\x89\x8d\ +\x63\xb1\x6d\x7c\x99\x13\x71\x71\xd4\x09\xe2\xc1\x41\x26\x29\x0b\ +\x0c\xf2\x0c\x26\xcd\x85\xbe\xb0\x4d\x0c\x08\x36\x19\xed\x19\x4f\ +\x76\x39\x81\x45\x0e\x4d\xa3\x40\x3b\x6d\x0a\x61\xb4\xde\xc6\xd2\ +\x80\xd8\xc1\x90\x8f\x2b\x47\x23\x5c\x5f\x2a\x04\xcd\x85\xad\x7d\ +\xc6\xdf\x58\x97\x20\xfc\x98\xb7\x30\xea\x54\x26\xea\x06\x22\x2a\ +\x60\x58\x5c\x7b\x46\x02\xab\xbd\x98\x08\x58\xa8\xb7\x07\xcc\x20\ +\xd6\x5d\xf6\x37\xb3\x5a\x0d\x22\x43\x8e\xe0\xcd\x05\x5a\x62\x12\ +\x99\x27\x98\x35\x8e\xda\x03\xb9\x30\xb5\x3b\x52\x92\xb2\xf0\x7a\ +\x49\xf5\xd5\x10\x05\x5d\xc4\x62\xf6\x84\xec\x82\x90\x53\x5e\xf7\ +\xdc\x62\xea\xb7\x9a\xfc\x92\x7f\x48\x34\xeb\x28\x0f\x61\x6f\x58\ +\x96\xa9\x99\xac\x65\x47\x89\x75\xc1\xf3\x09\xea\x8f\xe2\x27\x9b\ +\xeb\x21\x15\xc2\xb5\xc5\xe3\xe8\xb8\x76\x05\x45\xef\x8b\x47\x16\ +\xae\xd2\xaf\x81\xa0\x76\xe7\xc4\x60\x3e\x91\x15\x07\x98\xe6\xe3\ +\xa4\xa3\x55\x55\x69\x6d\x41\x94\x45\xb1\xf7\xeb\x14\x1f\x4b\x56\ +\x9e\x2a\x05\x61\xd0\xcc\x94\xce\xd6\xb5\xb9\xbc\x63\xfc\xa0\xfa\ +\xe6\x0d\x65\x5d\xff\x00\x30\x2b\xe9\x1b\xa7\x56\x61\x8b\xb2\x8e\ +\x45\xb8\x88\x0a\x9e\xf8\x32\xfa\x7b\xa9\xd0\x14\x70\xc4\xae\xe3\ +\x7e\xfd\x20\x53\xd1\xa1\xfb\xf6\x0c\x29\xa8\xbf\xbf\xa4\x9c\xbb\ +\xf8\xc6\xaa\xb1\x56\xbe\x31\x0f\x4f\x87\xd3\x54\x76\xba\x92\xac\ +\x56\xdb\x4e\x66\xa3\xb5\x1e\x50\xb2\x13\x90\x78\x99\xa8\x15\x05\ +\x64\xa8\x88\x2c\x40\x37\x1d\x0f\x69\x55\x25\x6a\x83\x75\xec\x4f\ +\xcc\xb6\xc1\x81\x12\x84\x75\xbd\x34\x43\x7e\x41\x13\x45\x2a\x96\ +\x05\x4e\xc6\x1d\x08\xe6\x15\x3a\x4b\x45\xbc\xd7\x5b\xf5\xe6\x53\ +\x75\xe4\x58\x89\x9d\x24\xd3\xa7\x52\xd9\xbd\xbd\xe6\x9a\x60\x1b\ +\x96\x23\xeb\x1a\x45\xc7\x97\x77\xf4\x8b\x20\x29\xbb\x6d\xb7\xa9\ +\x81\x60\x03\x90\xe0\xfa\x77\x9a\x28\xab\xe4\x28\xbf\x62\x26\xaf\ +\x86\xdc\xd4\xb7\xa2\x88\x64\xd3\xe0\xef\x23\xbc\x93\xcf\xa7\x0d\ +\x44\x86\x4e\x27\x39\xe9\xbd\x26\xba\xef\x51\xd8\xf1\x3a\xd4\x8e\ +\xc5\x21\x03\xd4\x5f\xfc\xb3\xfa\x44\xbd\x64\x6b\x91\x65\x6e\xc4\ +\x71\x29\x6a\xb1\x3d\x20\x1b\x6b\x32\xe7\x9b\x88\x55\x28\x53\xaa\ +\xbb\x90\x92\x61\x91\xbd\x0b\x6c\x17\x5c\xdd\x4c\xf2\xdb\x91\x90\ +\x73\x24\xe4\xea\x69\x32\x30\x6b\x9e\x6d\x78\x55\x55\x7e\xcf\x49\ +\xad\x62\x6f\x73\x3a\x1a\xb4\x15\x54\xa1\xf9\xb9\x53\x39\xf5\xc5\ +\x92\x92\x31\xb7\x3c\xcd\xcb\xac\xd8\x90\xa7\xde\xba\xde\xe0\x83\ +\x68\xa4\x2a\x0e\xcb\x67\xbc\x7a\x63\x52\x86\xff\x00\x8a\xd2\x6a\ +\xa7\x6b\x92\xc3\x83\x37\x19\x32\xde\x70\xea\x72\x30\x47\x78\x62\ +\x9e\xcd\x75\x35\x19\x5b\x8b\x45\x80\x19\xb7\xa9\xbe\xde\x44\x7e\ +\x8e\xf5\x6a\xa1\xfc\xad\x7f\xa4\x14\x72\xb5\x04\x7d\xb2\xa7\x6d\ +\xe7\xf9\x9e\x04\x25\x4f\x35\xc8\x1d\xa7\xaa\x12\xd5\x9c\x8e\x4b\ +\x18\x3e\x23\xed\x20\x73\xed\x3a\x32\x6d\x7d\x46\xfb\x95\xa7\xb7\ +\xb1\x26\x62\x32\x04\x0a\xc4\xb1\x39\x32\x6c\xb3\x58\x9c\x9e\xf1\ +\xa8\x03\x31\x20\xe3\xfa\x4b\x16\xa8\xdf\xb0\x28\x50\x01\x27\xb4\ +\xee\x7c\x1e\x89\x70\xac\xc3\x0b\xe7\x37\xff\x00\x9e\xd3\xe7\xe8\ +\x5e\xa5\x65\x1c\xdc\xcf\xa8\x5b\x69\xfe\x0f\x51\xef\xb4\xd5\xf2\ +\xa9\xf4\xff\x00\x97\x9c\xf9\xf4\xd7\x17\x2b\x5b\xa8\xf1\xf5\xb5\ +\x1a\xf8\x38\x1e\xd1\x25\x8d\xa0\xaa\x90\xe0\x82\x1b\x33\xc6\xf7\ +\x20\xe2\x58\x87\x6f\x11\x08\xe4\x88\xba\xb4\xc2\x69\x55\x40\xf9\ +\x98\xb7\xf4\xfe\xf0\x91\x88\x71\xb3\x93\x89\x46\xa5\x01\xaf\xb3\ +\xf2\x00\x0f\xd3\x98\xea\x4f\x54\x5a\xc0\x7b\x98\x92\x6c\x6c\x72\ +\x23\x0d\xcb\x12\x0e\x6f\x9e\xf0\x19\x6e\xdd\xad\x18\x18\xc8\x19\ +\x6f\x14\x52\xcf\x62\x2c\x3a\x5c\xc6\x93\xdb\xa4\xf2\xf0\x7f\x68\ +\xea\x25\x85\xf8\x16\x8a\x23\xb4\xac\x85\x07\x8b\x7b\x45\x9a\x40\ +\x92\x41\xbc\x65\x00\xa5\x6e\x3a\xcd\x01\xb7\x63\xa4\x6a\x2d\x88\ +\x8d\xa5\xa7\x00\x0a\xb5\xc9\x54\x3c\x0e\xad\xed\x0d\x25\xd3\xa0\ +\x5c\x12\x08\x55\x1f\x31\x3c\x08\xcd\xe0\xaf\x83\x4f\x09\xfb\x93\ +\x3d\x52\xa6\xf5\xd8\xaa\x15\x07\x0a\x22\xe9\x8c\xf7\xf5\x82\x1a\ +\xd9\x30\x79\x8e\x52\xa8\x2f\xd6\x24\xb2\xdf\x1c\xf7\x8c\x41\xb9\ +\x4b\x1f\x94\x75\x81\x3a\x83\x59\xbc\x42\x30\x38\xbc\xd0\xca\x5a\ +\xec\x3a\xf7\x92\x55\xd4\x1e\x38\x1c\x09\xa1\xfc\xb7\xbc\xb1\x6b\ +\xa0\x8e\x99\xb0\xb0\x13\xcd\x52\xff\x00\x2c\x92\x9b\x60\xfb\x42\ +\x46\x2c\x0a\xa8\x30\xc3\xaa\xe9\x39\x00\xc2\x04\x9b\x01\x13\x48\ +\xaa\x8f\x33\x7d\x04\x33\x53\x70\xb2\x63\xfa\xc1\x0d\x88\x42\x77\ +\x1c\xf6\x98\xd5\x6e\x39\xbd\xb8\x89\x2c\x0d\x81\x9e\x51\x71\x7b\ +\x89\x62\x35\x59\x8e\x60\x54\x6e\x93\x69\xa9\xf9\x8c\xf3\x90\x99\ +\xe4\xc9\x13\x53\x75\xb2\x6c\x22\xce\xa4\x2e\x08\xbf\xaf\x59\xea\ +\xed\x7c\x99\x0d\x46\x06\xe4\x1c\x89\xa9\x34\x5a\xe9\xf8\x8c\xcf\ +\x4f\x3b\x91\xb0\x6d\xd2\x4d\xf1\x4f\x2e\xa5\xb3\x75\xb6\x08\x87\ +\xa2\xdc\xcc\xac\xbc\xac\x96\xad\x70\xd5\x1f\xc4\x5c\x13\xf4\x94\ +\x9d\xaa\xf2\x3d\xe9\x1e\xf2\x57\xa9\x93\x98\xf6\x52\xb4\x89\x5f\ +\x32\x93\x83\xda\x4a\xea\x77\x1b\xde\x6e\x33\x40\x58\x99\xd0\xf8\ +\x53\x14\x0d\x54\x8c\x2e\x14\x77\x32\x5d\x36\x92\xad\x62\x00\xf2\ +\xaf\x56\x3d\x23\xb5\x7a\x8a\x48\xa3\x4f\xa6\x17\x55\xfc\x5d\xcf\ +\x79\x5e\xfa\x53\xfa\xa9\xaa\x58\x90\xc7\x72\x9e\x62\x35\x14\xd9\ +\x18\x14\x03\x69\xe0\x89\x35\x0a\xac\xa7\x39\x07\x99\x6a\x30\x2b\ +\xe5\x20\xa1\xe5\x48\x87\x87\xd2\xd1\x80\x00\x1b\xfb\x89\x76\x96\ +\xb3\x51\x24\xa1\x06\x4a\x74\xac\x7e\xf2\x8f\x99\x47\x40\x72\x26\ +\x0d\xe8\x6f\x63\x0b\x95\x3a\x0f\x5d\xeb\x67\x7e\x47\x48\x48\x03\ +\xb0\xf1\x10\x7a\x93\x89\x02\x30\x3e\x6e\xc6\x52\xda\x9a\x85\x2d\ +\xc8\x99\xc6\xb5\x6a\xd6\xa4\x6a\x11\xe1\xbb\x29\x39\xb7\x48\xf5\ +\xaa\x89\x73\xc2\x91\xee\x67\x25\x59\x1a\xc4\xab\x21\xee\x25\x34\ +\x6a\x56\x51\xe4\x1b\xd4\xf2\x39\x99\xb0\xca\xbd\x75\x0a\xbf\x28\ +\xde\xbf\xee\xe6\x10\xa8\x8d\x72\xa7\x69\xf4\x91\xa6\xa1\xc1\xb8\ +\x44\x53\xd8\xe2\x36\x96\xb0\x93\x62\x8a\x3e\x98\x86\x1d\x13\x6f\ +\x0d\x8a\x84\xfb\xc3\x15\x48\x16\x67\x5b\xcc\x6d\x42\x5b\x21\x01\ +\x3d\xa0\x87\xa6\x7f\x0d\xef\xd9\x6f\x04\x35\xad\x4f\x71\xba\x67\ +\xb8\x9e\x7a\xd7\xf9\x18\x0f\xa4\x2a\x74\x95\xf2\x11\xc7\xd2\x17\ +\xd8\x95\x8e\x2a\xaa\xfa\x34\xba\x5d\x93\xba\xa0\x20\xab\x91\xd8\ +\x81\x31\xab\x33\x1b\x55\xf3\xdf\xf1\x70\x61\x7d\x9e\xaa\x92\x13\ +\xf6\x31\x55\x43\x2b\x59\xd6\xdd\x7b\x45\x1b\x4a\xb0\xa4\xe2\xcc\ +\xc4\x1e\xf3\x5a\xb3\x07\x22\xd6\x2a\x48\x32\x4a\xac\x97\x00\xb6\ +\x6d\xd6\x1d\x56\xfb\xca\x6d\x7c\x54\x5b\x5f\xd4\x4b\x16\x9d\xbf\ +\xc5\xa5\xb8\xf0\x39\xf7\x93\xea\xe9\xf9\x56\xf9\x2b\xd7\xbc\x66\ +\x80\x8b\xd6\xa4\xe4\x0b\x8e\xbd\x0c\x0d\x43\xb0\x2a\xa7\x1e\xf2\ +\x9e\x84\x06\xeb\x59\x0e\x0f\x9a\x22\xb0\x26\xa3\x82\x06\x09\x94\ +\x3d\x97\x50\xa4\x7c\xa5\x86\x3b\x48\xf5\xc5\xa9\xea\xea\x0b\x5f\ +\xcc\x7f\x99\xd2\x33\x5a\x18\x25\x30\x09\xc9\xc1\x97\xfc\x1c\x6c\ +\xaa\x4b\x7c\x8a\x84\xce\x2b\x31\x37\xe7\x99\xd7\xd1\x1d\xbf\x0e\ +\xd4\x3d\xf2\x14\x28\xfa\xcb\x94\xe9\x44\xba\xed\x3a\xd2\xd4\x91\ +\x6f\x23\x0d\xca\xc3\xa8\x92\x35\x3b\x8b\xa3\x63\xd7\x13\xa8\x96\ +\xd5\x68\x8d\x32\x7e\xf6\x95\xca\xdb\xa8\xed\x39\x60\x33\x12\x2f\ +\xc7\x37\x9a\xe3\x45\x2d\x90\xd3\x4b\xb7\xcc\x4e\x27\x94\x85\x4b\ +\x75\x33\xcc\xec\x5c\x76\x13\x0b\x2b\x3f\x63\x34\x1d\x0f\x83\x51\ +\xf1\x2b\x83\x63\xc8\x00\x8e\xe6\x74\xfe\x33\x58\x16\x5d\x3a\x7c\ +\x94\xc5\x8f\xbc\xdf\x82\xd1\x1a\x5d\x03\x6a\x9f\x2a\xab\x71\xee\ +\x7f\xf5\xfc\xce\x63\x56\xf1\x3c\x4a\x84\xf2\x67\x2f\x6b\x5e\x44\ +\xfb\xc8\xa9\xce\x04\xa4\x54\xf3\x10\xc2\xf2\x2a\x8e\x08\xbe\x3d\ +\x63\x0b\xfd\xe5\xbb\xda\x6e\xc6\x57\xe8\x95\x7e\xd0\x2a\x0e\x29\ +\x8d\xd6\x9e\x62\x76\xb3\x9e\x58\xda\x26\x9b\x05\xa5\x8b\xdd\x8e\ +\x23\xc7\x17\x6c\x85\x17\x3e\xf3\x0d\x25\xc5\xf9\xcc\x05\x62\x4e\ +\x2f\x78\xf5\x55\x07\xef\x0e\x7a\x81\x06\xe3\x84\x5b\x09\xa0\x02\ +\x87\x96\x36\x1f\xbc\x2f\x40\x00\x1d\xcc\xf1\xc9\xb7\x22\x78\x82\ +\xc6\xd7\xf6\x16\x92\x0d\xb3\x70\x6f\x36\x85\x2a\x95\x1f\x6a\x29\ +\x31\xcb\xa7\x44\xcd\x76\x2a\x79\xd8\x39\x3f\xda\x61\xac\xcc\x36\ +\x28\x08\x9f\x95\x7f\xaf\x78\x6a\x35\x05\x1d\x39\x26\xe2\xb5\x4e\ +\x07\xe5\x1f\xde\x2e\xa6\xea\xb7\x76\x37\x6e\xe6\x02\x79\x9c\x28\ +\x19\x32\xa4\xa2\xe1\x6e\x14\xfb\x9c\x40\xa4\x34\xf6\x8b\xb6\x07\ +\xf3\x16\xf7\x61\x60\x2c\x04\xa9\xd5\x6f\x7a\x95\x05\xfb\x28\xbc\ +\x06\x6a\x6b\x94\xa5\xbb\xff\x00\x23\xfd\xa3\x2a\x46\xcd\xd1\x6f\ +\x79\x7d\x35\xf1\xb4\xea\xb4\xfe\x65\xe4\x19\x2d\x5a\x95\x00\xba\ +\x00\xaa\x7b\x28\xc4\x43\x55\x72\x4e\xe6\x27\x1d\x4c\xd6\x68\xf1\ +\x53\xd1\x71\xf3\x2a\x8b\x75\x26\x08\x14\xc7\x35\x8f\xb0\x52\x64\ +\xab\x54\xa9\xc3\x18\x6b\xa9\xab\xf9\xaf\xf4\x96\x54\xb1\x1a\x98\ +\xe3\x36\xfc\xd0\xd4\x96\x26\xec\x00\xb7\x02\x42\x9a\x87\x37\x27\ +\x6f\xe9\x1b\x4b\x50\xc5\x80\xb0\xfd\x21\xf9\x5a\xb8\x28\xdb\x86\ +\x17\xb4\x24\xa4\xd6\xc9\xb4\x90\xd7\x62\x08\x0d\xfa\x45\x1a\x8c\ +\x79\x63\xfa\xc3\x0e\xba\x4d\x4d\x45\xb7\x55\x5b\x8e\xd0\x5a\xa2\ +\xa1\xb0\x52\x4f\x73\x21\x42\xc7\xac\x30\xc6\xf6\x26\x18\xb5\x47\ +\x8c\xcc\x73\x7f\x69\xa5\xc4\x95\x9d\x94\xcd\x15\xfa\x30\x8e\x2d\ +\x6d\x46\xbf\x69\x0d\x43\xe6\x39\xc1\x95\xb6\xd7\xe1\x5a\xf1\x15\ +\x29\x1e\x42\xb0\xed\x71\x1e\x22\xad\xf8\x21\x2c\xd5\xc1\x3c\x21\ +\x33\x91\x55\xf2\xd7\xee\x67\x5b\xe0\xd4\xdd\x17\x52\xe4\x5b\xc8\ +\x40\xfd\xe7\x2a\xbe\x9e\xb7\x88\x6c\xb8\xbc\x67\xb5\x5f\x1b\xa6\ +\xab\x52\x9a\x9d\xac\x6c\x4c\x67\xda\xdf\x6d\xca\x2d\xfb\xda\x4f\ +\xb2\xa2\x26\x54\x8c\xc1\x67\xf2\x88\xe3\x3a\x2a\xfa\xca\xcc\x0a\ +\x13\x65\xec\x22\x03\x91\xd2\x6d\x41\x73\x78\x2a\x0d\xed\x35\x22\ +\x35\x19\x8f\x02\x3a\x95\x57\x43\x78\x5a\x6a\x6a\x50\x86\x36\x63\ +\xc4\xd7\x42\xa6\xd0\x4a\xe8\x55\x2c\x03\x53\x3b\x18\x76\x94\xf8\ +\xa6\xa2\x8b\x85\xdd\xfc\xce\x62\x2b\xa9\xb8\x06\x54\x95\x6e\xd8\ +\xc3\x09\x8b\x1a\x94\xd6\x28\x4d\x88\x2a\x7d\x44\xc0\xad\xc8\x0a\ +\xde\xc6\x3e\x9d\x51\x52\xc2\xb2\x0b\x8e\xa2\x6b\x04\x19\x54\x2c\ +\x3b\x83\x33\xa4\xb4\x2c\x17\xe5\x23\xde\x12\xd6\xcf\x96\xe4\xf4\ +\xdb\x89\x9e\x3b\xf0\x10\x7f\xf6\xcc\xd1\x59\xcf\x40\x3f\xf1\xc4\ +\x91\xe8\x95\xea\x7f\xa9\x48\x5b\xbb\x1b\x18\xf5\xa3\x48\x0d\xad\ +\x5c\x1f\x41\x99\x3a\xa8\x2a\x19\x9c\x86\x3d\xe6\x58\xdb\xca\xc0\ +\xfa\x93\x68\x15\x37\xd2\xd3\xfc\x0c\x7f\xf2\x38\x8b\x7d\x5e\xd2\ +\x05\x1d\x8a\x3d\x16\x28\xf1\xe6\xbb\x7b\x41\x29\x7c\xa2\x91\x89\ +\x62\x3c\x6a\x6b\xb1\xcd\x52\x07\x5c\xda\x53\x46\xa2\xb9\x02\xec\ +\xcd\xe8\x24\xfa\x3f\x87\x55\xaa\x0d\x5a\xc5\xa9\xd2\x1c\x92\x32\ +\x7d\xa5\x3e\x2b\x53\xfb\xbd\x35\x16\x45\xb6\x58\x83\xb8\xc2\xe7\ +\xc3\x15\x29\x5a\x59\xaa\xe0\x0e\xd7\xcf\xe9\x3d\xa9\xd5\xd1\xa8\ +\xa0\x6c\xdc\x07\x1b\xa7\x2a\xae\xf5\xb9\x28\xce\xd0\x55\xaa\xbd\ +\x3b\x10\x41\xc8\xf6\xed\x0f\xca\xd5\xb5\xd6\x96\xdd\xc2\x82\x30\ +\x02\xe4\x13\x98\x03\xc1\xd5\x50\x7a\x68\x0d\x27\xa6\x77\x0b\x99\ +\x1f\x9d\xac\x08\x27\xa4\xe9\x69\x74\x94\xe9\x3a\xab\xbb\x1a\x8e\ +\xb9\x50\x3a\x19\x5e\x97\xa9\x99\xcd\x37\x06\xa2\xed\x62\x2d\x7f\ +\x5e\xd0\xb5\x83\xc4\x40\xd6\xb1\x00\xff\x00\x10\xfe\x3a\x87\xc2\ +\xa4\x79\x75\xe9\xdf\x88\xa7\xa9\xe2\xfc\x23\x72\x9b\x54\xa4\xc0\ +\x93\xd7\x22\x53\xfa\x9c\xff\x00\x9e\xa0\x56\xbf\x22\x23\x52\xbb\ +\xeb\x55\x46\xf9\x95\xcd\xbd\xaf\x1a\x1b\x75\x44\xac\xb6\x19\x1b\ +\x87\x6b\xc2\xd5\x59\xab\xd4\x70\x6c\xea\xc4\x7e\xf3\xa4\xe9\x97\ +\x36\xa2\x58\x86\x53\x3a\x65\xc5\x2f\x84\xa9\x6e\x2a\x56\xfd\x40\ +\x13\x9e\xa3\x3b\x90\xe4\x9b\xdb\xbc\xaf\xe3\x15\x15\x34\x7a\x4a\ +\x56\xce\xd2\xc6\xde\xa6\x37\xbc\x82\x15\x4d\x9e\x85\x7b\xab\x1e\ +\x2e\xa4\x4a\x75\x94\x13\x55\x40\xea\x34\xb6\xdf\xff\x00\x75\x3a\ +\x89\x16\x96\xb0\x74\xf0\x5b\xca\x47\x0d\xfd\x22\xe9\x6a\x2a\xe8\ +\xf5\x3b\xd6\xe0\x83\x6c\xf5\x96\x2d\x4f\xb8\xa1\x21\xa3\x74\x74\ +\x1b\x51\xa8\xa7\x45\x2f\x76\x39\xf4\x13\xa1\xaa\xd3\xd1\xf8\x95\ +\x1f\xb4\xe9\x00\x15\x97\xfd\x4a\x60\xfe\xf1\xbf\xe1\x4d\x39\x5a\ +\xd5\x75\x55\x05\x85\x3f\x28\xbf\x78\xde\x5d\x68\x93\xb5\x7f\x1d\ +\xd4\x7d\x8f\x46\x9a\x34\xc1\xb5\xd8\x4e\x10\xaa\x1a\x83\x11\x83\ +\x78\x5f\x19\xd6\x0d\x4e\xa6\xa5\x42\x79\x26\xde\xdd\x27\x3c\x54\ +\x02\x91\x17\x39\x32\xe3\xc7\x22\xb7\xb3\x4b\xdf\x04\x73\x19\xb8\ +\x9a\x9f\x41\x23\x0e\x4d\xaf\x2c\xa6\x6f\x51\x1b\xa5\xae\x7e\x93\ +\x41\x72\x11\xe2\x2d\x30\x7e\x5c\x18\xfa\xcd\x73\xb6\xfc\x64\xc8\ +\x74\x17\x7a\xfb\x89\x3d\xcf\xac\x70\x25\x9e\xd9\x26\xfc\x4c\x58\ +\xd0\xa9\x00\x4e\x6d\x09\xc8\x01\x61\x52\xa1\x55\xc7\x95\x08\x1f\ +\x99\xb0\x3f\x79\xd5\xa3\xf0\xc5\xd3\xd0\x5d\x4e\xa6\xf5\x8b\x0b\ +\xa8\xa6\xa4\xa8\xf7\x99\xb6\x43\x23\x9f\xa6\xd3\x9a\x8b\xe2\x31\ +\x09\x4f\xf3\xb7\xf4\xef\x1e\x11\x95\x7f\xcb\x53\x2a\x3a\xd5\x7c\ +\x13\xed\xda\x36\xa6\xad\x51\xcb\x2e\x94\xb9\x02\xc3\x79\x22\xdf\ +\xa7\x12\x2a\xba\xdd\x43\x35\xc5\x93\xdb\xfb\x98\x77\x4f\x50\xd5\ +\xd2\xa3\x12\xd5\x2b\x35\xba\xec\x42\x7f\x7c\x09\xe2\xba\x6a\x43\ +\xe4\x07\xd5\xea\x0c\xfd\x04\x8d\xeb\x55\xa9\x7f\x15\xd9\xcf\xab\ +\x45\xb3\xf0\xa0\x5a\xf3\x59\x46\xaf\x1a\xba\x0a\x7c\xae\x46\x38\ +\x44\xb7\xef\x71\x0f\x4b\x52\x8d\x77\x1b\x68\x1f\x52\x58\xce\x36\ +\x4d\x4b\xdc\x03\x3b\x9f\xe1\xf5\x53\xba\xf7\x25\x73\x2e\x53\x22\ +\x97\x68\x75\x55\xa9\x50\xae\x69\x9d\x32\x5c\x77\x63\xfd\xe2\x8e\ +\xaa\x91\xe1\x76\x9f\x40\x2d\x24\xd6\xd6\x6a\x9a\x97\x66\xc6\x6d\ +\x26\x2d\x66\xc5\xcf\xbc\xa7\x15\x6a\xd6\x72\xcc\x45\x3a\xa1\xbd\ +\x2f\x63\x22\xab\x5e\xba\x12\x0b\xba\xfb\xc0\x24\xde\xf1\x86\xb0\ +\x6a\x5b\x6a\x0b\xa8\xfd\x44\xd6\x60\xd2\x8e\xa5\xce\x2e\x8d\xee\ +\xa2\x18\xaa\x30\x5a\x92\x5f\xd3\x12\x6a\xb4\xb6\x8d\xc8\x77\x27\ +\x71\xd3\xde\x78\x31\x16\xce\x26\xb1\x9d\x5a\xaf\xa5\x14\xc9\xa9\ +\x41\xcd\xcf\x2a\xf6\xfe\x44\x75\x27\xf8\x73\x11\x6a\x5a\x90\x7a\ +\x79\xc7\xf6\x91\x54\x61\xe1\x53\x0d\xd7\x31\x9a\x62\xa2\xaa\xe7\ +\x83\x33\x87\x55\xb9\xd1\x00\x71\x5f\xd6\xec\x20\xa3\x68\x2f\x73\ +\xe3\x8f\xa0\x8b\xd7\x28\x0e\xf6\xe2\xf7\x12\x75\x04\x0e\x3e\xb2\ +\x90\xba\x74\xdf\xe1\xf7\xc2\xd7\x3e\xb8\x86\x5b\x41\xd1\x2b\x1f\ +\x72\x27\x3d\x2c\x05\x81\xcc\x3f\xa4\x2c\x5a\xac\xd5\xd2\x81\x8a\ +\x2c\x47\xfb\x9a\x63\x6a\x15\x45\xd2\x85\x30\x3b\xda\xf2\x75\x5b\ +\xf2\x61\x5f\x6e\x2f\x88\x61\x1b\x6b\x2a\x91\x60\x42\xfb\x09\x15\ +\x7d\x45\x52\x6c\x6a\x35\x89\xe8\x63\x2a\x2d\xc6\xe4\xc5\xba\x49\ +\x18\xdd\xc7\xf1\x35\x24\x67\x5d\x4f\x87\x16\xff\x00\xa5\x6a\xea\ +\xdf\x22\xd3\x93\xa9\x2d\xe2\x61\x8e\x47\x79\xd9\xd2\x8d\x9f\xe1\ +\xdd\x5b\x9c\x02\xcb\x38\x95\x0e\xe3\x60\x78\xb4\xb8\xfb\x55\xf1\ +\xa9\x56\xa2\xd3\xb0\x73\xfa\xcd\xf1\x6a\x32\x8b\x00\x4d\xfb\x45\ +\xe3\x81\xc1\x94\x69\x6b\xad\x1a\x04\x1a\x5d\x72\x41\xcc\xd0\x8c\ +\x60\x42\xf9\x94\x5f\xb4\xcd\xab\xc9\x4b\x46\x0d\x55\x16\x27\x7a\ +\x30\x1d\x2d\x98\x26\xb5\x0c\xdb\x07\xa5\xc4\x88\xd4\xa6\x3c\xa6\ +\x69\xda\xd9\x07\x3d\xa2\x91\x94\x8f\x98\x42\x60\x6c\x4f\x36\x92\ +\x53\x4a\xa9\x02\xcc\x41\xb7\x78\xc5\x29\x7b\xb2\x15\xf5\x12\x25\ +\xb9\x5b\xde\x3a\x9d\x7f\x0c\x58\x10\xdf\xc4\xcd\x85\xd0\x53\x49\ +\x80\x0a\xf9\xfd\xe6\x6d\x74\x6b\xa8\xbd\xba\x88\x9a\x5a\x8d\x2b\ +\x8f\xbc\xa4\x41\xf4\x32\xaa\x35\xb4\x0a\x2f\x7a\xc4\xfa\x01\x31\ +\x48\x54\xbb\xb0\x18\x37\x8e\xa1\x40\xb5\x4f\x94\xd8\x1f\xd6\x50\ +\x9f\x11\xd1\xd3\x1e\x5d\x29\xa9\xdb\x79\xb4\x65\x6f\x89\xd4\xa6\ +\x89\xe0\xd3\x4a\x45\x85\xfc\xab\x33\xb4\xf4\x14\xf8\x7e\xaa\xad\ +\xdb\x65\x81\x38\x26\x17\xfd\x3a\x95\x3b\xfd\xa7\x57\x4d\x48\xe9\ +\xba\xf1\x26\xbe\xa6\xb0\x3e\x25\x57\xfa\x98\xb6\xa4\x0b\x65\x8b\ +\x13\xda\x5d\x9e\x97\x53\x1f\x0c\xa6\x54\x29\x7a\x87\xa9\x02\xd3\ +\xa0\x1a\x85\x1a\x22\xa1\xd3\x85\x27\xe5\x42\x6e\x64\x3a\x6d\x32\ +\x69\x69\x8a\xf5\x57\x75\x43\xf2\x21\xe9\xea\x67\xb7\x3d\x56\x2f\ +\x51\xae\x7d\xe6\x2f\x6d\x78\xa5\xbe\x22\xf6\xb1\xa3\x4c\x0e\x33\ +\xd2\x78\x6b\x2a\x35\xfc\x31\x40\x90\x2f\x91\x23\xaa\x97\x22\xc4\ +\x5a\x4d\x54\x3a\xfc\xbf\xa8\x8c\xe3\x06\xd7\x57\xc7\xaa\xc3\x73\ +\xd0\xa6\xe3\xa1\xbd\xa2\xbe\xd1\x41\x5f\x6d\x5d\x32\xaf\x5b\x86\ +\x99\xa4\xd4\x53\xad\xa5\x09\x50\x6d\xa8\x0d\xaf\xde\x0e\xa6\x85\ +\x65\x37\xa6\xc1\xc0\xe8\x44\x33\xe1\x38\xb6\x93\x07\xec\xe1\x87\ +\x70\x3f\x98\x9d\x5f\xc4\xf6\xb3\xa5\x1a\x1b\x5c\x03\xe6\x23\xb4\ +\x5d\xd9\x53\xc4\x55\xb1\x18\x3d\x27\x2f\xe2\xda\xe3\x56\xc6\x8f\ +\x94\x5a\xcf\xeb\x35\xc7\x8e\xd1\x6e\x28\xd5\x6a\x4b\x04\xd4\x31\ +\xde\xb5\x06\xc6\xff\x00\x6b\x0e\x61\x7c\x34\x9a\xf5\x2b\x50\x65\ +\xb7\x8b\x48\x80\x07\x71\xc4\x87\xe1\x60\xea\xb4\xda\x8d\x29\xb0\ +\xc8\x64\x3f\xee\xe9\x1b\xf0\xca\xec\xb5\x69\x54\xda\x43\xd3\xa8\ +\x15\x87\x7b\xff\x00\xf9\x35\x66\x33\xa8\x1e\xa1\xa6\xca\x43\x64\ +\x72\x3b\xe6\x51\xae\xf2\x6b\x1d\xc1\x04\x13\x73\x11\xf1\xe4\xf0\ +\xb5\xf5\xc2\x8c\x2d\x67\x03\xf5\x85\xaa\xac\x1d\x96\xaa\xe6\xea\ +\xbb\x87\xb8\xff\x00\xf6\x6d\x92\xdd\x00\x75\xa8\x87\xc8\x7b\x74\ +\x83\xfe\x24\x62\x35\x94\xd2\xf6\xd9\x45\x57\xf6\x9e\xa2\xfb\x5c\ +\x5a\xcd\x4d\xba\x5e\x1f\xf8\x9a\x91\x3a\xe7\x70\x40\x00\x28\xfd\ +\x84\x67\xab\xe3\x97\x4a\xa1\x05\xaf\xcc\x72\xd6\x4a\xc3\x6d\x63\ +\x66\xfc\x2d\xfd\xe4\x82\xeb\xba\x03\x9b\x01\xeb\xde\x6f\x19\x54\ +\x95\x75\x3a\x2d\x48\xa8\x8c\x55\x87\x04\x70\x44\xfa\xe6\x2e\xff\ +\x00\x06\x2c\x8b\x4e\x9d\x7a\xc9\x91\xc0\x2c\xc0\x5f\xeb\x69\xf2\ +\x1a\x4a\xc0\x94\xa3\x58\x6f\xa6\x48\xe7\xa4\xfa\x0f\xf1\x43\x54\ +\x3a\x7d\x28\xa2\x08\x0a\xbe\x21\x0b\xca\xdf\x8c\x7b\x5a\x73\xe7\ +\x36\xc8\xd7\x1f\x2b\xe7\x3e\x20\xad\x49\xcd\x3a\x8a\x55\x86\x2c\ +\x62\x54\xfd\xc3\x5f\x39\xbc\xbb\x57\xf1\x11\x58\x8a\x7a\xda\x42\ +\xa0\x18\x0c\x30\xc2\x2c\x69\x69\x54\x53\xf6\x5a\xe1\x83\x0f\x95\ +\xb0\x66\xf7\xfa\xca\x44\x24\xcb\xe8\x1d\xb4\x4b\x74\xdb\x63\x17\ +\x4f\xe1\xfa\xbc\x8f\x0b\xeb\x78\xd1\x4a\xad\x2d\x35\x55\xa8\xb9\ +\x04\x70\x65\xa8\xc4\x63\x4a\x8a\x95\x36\x2c\xd7\xbf\xa0\x8c\x1a\ +\x9a\xae\x36\xee\xc1\xe6\xd8\xbc\x92\xa3\x10\x29\x8f\xf6\xca\x74\ +\xaa\x3a\x0c\xff\x00\x10\x31\xff\xd9\ +" + +qt_resource_name = b"\ +\x00\x16\ +\x02\x65\x98\x67\ +\x00\x4e\ +\x00\x6f\x00\x2d\x00\x4f\x00\x6e\x00\x65\x00\x73\x00\x2d\x00\x4c\x00\x61\x00\x75\x00\x67\x00\x68\x00\x69\x00\x6e\x00\x67\x00\x2d\ +\x00\x33\x00\x2e\x00\x6a\x00\x70\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\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() diff --git a/examples/graphicsview/padnavigator/form.ui b/examples/graphicsview/padnavigator/form.ui new file mode 100644 index 0000000..fc7d123 --- /dev/null +++ b/examples/graphicsview/padnavigator/form.ui @@ -0,0 +1,208 @@ + + Form + + + + 0 + 0 + 378 + 385 + + + + BackSide + + + + + + Settings + + + true + + + true + + + + + + Title: + + + + + + + Pad Navigator Example + + + + + + + Modified: + + + + + + + Extent + + + + + + + + + 42 + + + Qt::Horizontal + + + + + + + 42 + + + + + + + + + + + + + + + Other input + + + true + + + true + + + + + + + Widgets On Graphics View + + + + + QGraphicsProxyWidget + + + + QGraphicsWidget + + + + QObject + + + + + QGraphicsItem + + + + + QGraphicsLayoutItem + + + + + + + QGraphicsGridLayout + + + + QGraphicsLayout + + + + QGraphicsLayoutItem + + + + + + + QGraphicsLinearLayout + + + + QGraphicsLayout + + + + QGraphicsLayoutItem + + + + + + + + + + + + + groupBox + hostName + dateTimeEdit + horizontalSlider + spinBox + groupBox_2 + treeWidget + + + + + horizontalSlider + valueChanged(int) + spinBox + setValue(int) + + + 184 + 125 + + + 275 + 127 + + + + + spinBox + valueChanged(int) + horizontalSlider + setValue(int) + + + 272 + 114 + + + 190 + 126 + + + + + diff --git a/examples/graphicsview/padnavigator/images/artsfftscope.png b/examples/graphicsview/padnavigator/images/artsfftscope.png new file mode 100644 index 0000000000000000000000000000000000000000..b4b87755fa40cf38cc15f17acdff7276692b8ceb GIT binary patch literal 1294 zcmV+p1@ZccP)zBl zZA55kQy9QL>BNOeHyUjhjej7NsA=38-53`nrn+#`T+eON!h80ft8oG74EZI5@8i68 za=v@-n+L=`tKgFeWYht34Zy65Y~VDfOWeSy&SPlmR0H!lz$wo20`N86cHG?twg5&i zAo>_QK!npJdjV7DDFUWAJxCM-lbpu~+>AA_sv3CWK{)p~Fu{@TKv?G~+<>0y1Wa(a z*7J4p9EhZ^Lx}Sj>ky&azHey)4j4Tih+YQIRzx^m5;S0nZU_$VHcW9f0tQXMiAm1W z?7BUH2VxDZa05$gAl`v(FQ;O3e;P(qY=0alI9*cpG`gZy7~wFI5aMchQ*dr)B04xv zp%drnw(q~&KtepSYD+LzUy4~3Sx;e@(sjOpQPQVrU4H zT#bbVTZCc_taJl%4VWg*&dlJ=YUt)7oGuxB7pBfrN)Zb7QQQ<93sN155Le^cf^8dJqYW%u1JA(y z-475qep2HP;sZ{Xbiak@jUVZEhN4njY&j00LdGaed;MSPFRKx~jNdE`B=3Z?Z5ZSJ z_i;f*$q@uOT~c`zojT8sTm+si!vz&t#fa={LV&B$@CGIaZ`k-mQZnkBJ>(Xh^sMXk5H_Em1$sU7jn`;c48cnFhf~0f}AdS@ff;vp7dOV zaw`x~kyD20a?Q1T?_koh2DZ=y+JA=V_(jd`Fs3+Nl0S&3&QtIvE^_+o-$U#ffXR6d ze|mctinBD(OA+c5YCIGnPM7SZ2XagB=;d9L4D!uhp;lq2ZF7e~6*3*VzR{t2+ zaa41yQQO;T;M1& literal 0 HcmV?d00001 diff --git a/examples/graphicsview/padnavigator/images/blue_angle_swirl.jpg b/examples/graphicsview/padnavigator/images/blue_angle_swirl.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5bf0debdbddf380cce9ceb91ea62902c1cb924f8 GIT binary patch literal 11826 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 z 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 literal 0 HcmV?d00001 diff --git a/examples/graphicsview/padnavigator/images/kontact_mail.png b/examples/graphicsview/padnavigator/images/kontact_mail.png new file mode 100644 index 0000000000000000000000000000000000000000..672f8fa3ab186cf678bd4c9a0e991e0cd0dd7137 GIT binary patch literal 3202 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 literal 0 HcmV?d00001 diff --git a/examples/graphicsview/padnavigator/images/kontact_notes.png b/examples/graphicsview/padnavigator/images/kontact_notes.png new file mode 100644 index 0000000000000000000000000000000000000000..229bf73ac696fc525fac48c7a750aca6d6be2d8d GIT binary patch literal 3893 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 D|7l0W literal 0 HcmV?d00001 diff --git a/examples/graphicsview/padnavigator/images/kopeteavailable.png b/examples/graphicsview/padnavigator/images/kopeteavailable.png new file mode 100644 index 0000000000000000000000000000000000000000..2eaf41afec04ab7c1a13f7adacfd65b70e08ca03 GIT binary patch literal 2380 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 Hu0mjfNwUI} literal 0 HcmV?d00001 diff --git a/examples/graphicsview/padnavigator/images/minitools.png b/examples/graphicsview/padnavigator/images/minitools.png new file mode 100644 index 0000000000000000000000000000000000000000..0248c9d50aecfe318c292853ae387b7bd296a2cd GIT binary patch literal 2087 zcmV+?2-x?DP)Nkl5*6ZE%;`PQh#$d|TCXQ|DV%)kAq6E^41i~e*OT#TVDIt`SR-{fG zQHYbMh&Gi-Lkn1-5{U+5Zb^^}v?*1D8z(ee47M?Ae8HFX-tF1hnK?6WBW3@nEDI}U zEUmxNPv_s~tLJ_6yhrDR7^CBv#PQAXFCfO~SRJFdLX3Ba$7KiNBhJ!-4%S}fPf<9o z1oV0)j$)Y0&-RaKMsi#T#0N0!bSDyLB4hHEXZi@5jtcS{vP>p zFAyKbu*=lZv6_yDs8MJ(e^$F0Xd2f7hOCMQaqTQ@!?5_dlNsivE8LCz_!g*IVE_v@ z;9fkyc|T`AGbXzn1?0x1KwNF99{e#(CO$`e7G2_HIKazSxntZ4=<$s>fXmlnHOknG ze`o3A^s%VRHE2dMt_0%!&N1k0bK!F0_c0Nz#7A)@^HBGpf4;y~Xc|`n2HhD4antSi zPwYYtdHe+Lh+n=Q4+mUf67u&FAHhTfBxu8GTK|C)_)v?5SI;sJ zP2)nqush-quKxqkmzKw(U3Q09w^#XkP}!)`*^2PEqV#HTIro{F4{RZW)akodT& zvczmf^rM0^*5aFJM*@Hh5ZIWn8NBu_#21YA37OP(G%4-Ub zTkm}cF-G8@!q;`VQQe5tY;}|{fD$TWsS~THVG5?BgloUZq*cUuXhjA9P(_`vQP}q- z>EHc}SfKO{2e*?X)FWviMv^RcVJF&$Eh#KmMh)59;QA3Rosbz(7-N4O*dS4~qrgX_K-TYS3 zcD##S|6c%n;!Km)-Kxj1T%3qocH5gorGCd7)6X`!m~A2gpuPKIJ8Ul19CF z7kg1XQ~+E#SKH&uy<_LRX3IN3Kcv;0F!^C^;!|l{skZ2eINu-#ir&*Ygu(!w78;V+5*je@JdFy=zC3IsS z;*s|N!dIOiziqvC=Y`vD5x;u_$zzmr#L$@Il0^12Q_c!)kv;o#FCWp~#;&S2#)=@|-E|3OB75Z#|JS1{e+0qoXE4CBwcJa)frQ+hNl^Oqd))t( zH?6@Sx-sAoj(CIsp!-W!%<8ntF5>l=SD+Y)M=MZgdmBxJ)`Xw#x8**jckRt(Dw$Pn&P9s7I+qpoj~-5YUn@- zwZjx&LyBh9-$$a38af%Na#G%G6p%yp*u0UYmZTMQVg#dODWi%awqPr^p@bA=j2#8ud-voM`lL4n#sq*uc)G*!CoTOxT1XYR0;O60#VgYdZa9{%o4x zL-yDR1k36vp#>GxQN?Bq5^{t+>|e*=9wxWb)j`j0wyh!j7h&fiSN{qTnKnkMT+r@9 zfjRJCw7pPm3Z6+457jF}4gtzH`i%d#L^q%t**DZYBop>*0)BG2F`g6au zsF2r}mU-(Xia#Q}Md(KsIVR*eG3#_=gWS-MeDSM7eYqHK73+74@eVOA7l%G8mX?a; zW#X!N?!iSkA19+302ve>nd`6ie@yH?U)*@E7?+CiZZZC?xbq^hd%n21)n#aJYzIbM zG?Jo1*vH5&4j!Pb!1_MVP5L*V`P#2Mjoo+?J5T~Z4Wrk-=DSl~)VepdrlpzJwy^OD z^f05712sP0ZUM55U1Y&$Lyfdd@gVI5dJgDb@{GHGHJ}?q*o*!nETI$!7jLlaiYe~7 z^Ata5$vSPrPnq0KEwXT;CHOuvs5RyY-D*qmIx*fTR + + images/blue_angle_swirl.jpg + images/artsfftscope.png + images/kontact_contacts.png + images/kontact_journal.png + images/kontact_mail.png + images/kontact_notes.png + images/kopeteavailable.png + images/metacontact_online.png + images/minitools.png + images/blue_angle_swirl.jpg + + diff --git a/examples/graphicsview/padnavigator/padnavigator_rc.py b/examples/graphicsview/padnavigator/padnavigator_rc.py new file mode 100644 index 0000000..880b12c --- /dev/null +++ b/examples/graphicsview/padnavigator/padnavigator_rc.py @@ -0,0 +1,3029 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sun May 5 07:34:29 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x09\xf1\ +\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\x09\xb8\x49\x44\x41\x54\x78\x5e\xbd\x99\x6b\x6c\x53\xe7\ +\x19\xc7\x7f\xc7\x10\xc7\x4e\x0c\xd8\x21\xc4\x21\x24\x21\x71\x80\ +\x84\x4b\xd2\x34\xac\x12\x81\x16\xd2\x82\x2a\xb4\x2b\xeb\x85\xee\ +\x43\xdb\xb1\x09\xb6\x6a\xfb\xc2\x97\x49\xd3\xf6\x05\x3e\xed\xc3\ +\xa4\x29\xda\xa6\x4d\xad\xb4\x36\x53\x5b\xa9\x55\xab\x36\xdd\xd6\ +\xad\x1d\x61\x4d\xbb\x95\x02\x25\x60\x2e\x05\x3b\x6d\x52\x27\x36\ +\x71\x02\xc1\x76\x82\x73\x33\xcc\x67\xef\xfc\x2a\x7d\x75\xce\x89\ +\x1d\x7b\x83\x3e\xd2\xa3\xd7\xef\x93\xe3\x93\xff\xff\xb9\xbd\x17\ +\x6b\xdc\x69\x69\x7b\xe9\x1e\xc0\x0d\x74\x60\x95\x50\x46\xcf\x3e\ +\xf9\x3e\x77\x48\xb4\x3b\x00\x78\x2d\xb0\x4f\xaa\x04\xbd\xcc\x5d\ +\x9a\x51\x83\xe8\xa0\x03\xd1\xa1\x6b\x48\xa1\x7b\x5e\x05\xa1\x89\ +\x2f\x8f\x80\x02\xbe\x0b\x38\x0c\xec\x2b\x5f\xed\x61\x53\x9b\x8f\ +\xf2\x4a\x0f\x6b\xea\xbd\xa0\x43\xd5\x32\x70\x2e\x05\x5d\x81\xa7\ +\x7f\x1c\x74\x1d\xc6\x47\x63\x04\xfd\x83\x84\x82\x11\x92\x13\x53\ +\x09\xa0\x0b\xe8\x14\x44\x86\xee\x1e\x01\x05\x7c\x05\x70\x04\x38\ +\xbc\x69\xab\x8f\xf6\xdd\xcd\x6c\xdf\xe0\xa2\xa1\x0c\xd6\x2c\x83\ +\x75\x65\xe4\x94\x1b\xd3\x92\x88\x3f\x0a\xe7\x46\x60\x24\x34\x46\ +\xdf\x07\x17\x18\x1d\xbe\x96\x40\x92\x38\x7a\x77\x08\xa8\xfc\xee\ +\xaa\xf6\x55\xb4\xee\xdd\xdf\xce\xee\x4d\x2e\x1e\xf6\x41\x99\x13\ +\x00\x62\x33\x70\xf5\xa6\x54\x74\x00\x15\x81\x32\xa7\xd4\xf5\x2b\ +\x15\x80\xf1\x69\xf8\x68\x08\x8e\x0d\xc0\x95\x8b\x61\x4e\x1e\xeb\ +\x43\x44\xc4\x0f\x1c\x10\x44\xce\xdf\x39\x02\x0a\x7c\xef\xd6\xfb\ +\x1b\xdd\x8f\x3e\xf1\x15\xf6\x6f\x84\x06\x0f\xcc\xdc\x82\x7f\x86\ +\xe1\x4c\x54\x12\xd0\xe7\x81\xeb\x48\x45\x8e\xc8\x39\x69\x5d\x46\ +\x4a\x10\xe1\xc1\x7a\x58\x59\x02\xd3\x29\x78\xf5\x22\xfc\x23\x98\ +\xe2\xe4\xdf\xfb\xf8\xec\xe2\x60\x02\xd8\x97\x4f\xb1\x6b\x05\x14\ +\xaa\xff\xab\x4f\x6c\x73\x3f\xfc\x60\x03\x3f\x68\x05\x67\x11\x7c\ +\x32\x0e\xaf\x5d\x91\x24\x74\x14\x70\x45\x22\x9b\x2a\x32\x2d\x5e\ +\x78\x7c\x8b\x24\x22\x52\x8a\xe7\xcf\xc0\xc7\x1f\x06\x38\xd5\xd3\ +\x07\x92\xc4\x5b\x77\x82\xc0\x7b\xcd\xf7\xf9\x3a\x0e\x1e\x6c\xe7\ +\x50\xab\x2c\xce\xbe\x51\x78\x3d\x68\x48\x95\x05\x81\x83\x05\xb4\ +\x9a\xa7\xd5\xfc\x6b\x1b\xe0\xeb\x4d\x30\x9c\x80\x5f\x7e\x00\xa7\ +\x05\x89\xd3\x3d\x7d\x09\xa0\x23\x57\x3a\x2d\xc9\xa7\xdb\x14\x3b\ +\x8b\x8e\x7c\xe7\x87\x0f\xf1\x64\xcb\x12\x2a\x4a\xe0\xec\x18\xbc\ +\xd1\x0f\x9a\x26\x15\xa1\x99\x61\x7e\x44\xfd\xcd\x2c\x5a\x16\xaf\ +\xf5\xdf\x80\xe0\x75\xd8\x55\x0f\xf7\x56\x41\x28\x5d\x4e\x3c\x36\ +\xe5\x88\x5d\x8b\x6f\x63\xf5\x23\xaf\x10\x7d\x63\xee\x7f\x22\x20\ +\xbe\xdc\xb5\x7d\xcf\xe6\xba\xfd\x1d\x55\x6c\x5f\x03\xd1\x24\xbc\ +\x78\x59\x01\xd4\x4c\xe0\x51\x36\x8b\x2a\x41\x3d\x6b\xea\x50\x9f\ +\x8c\xc1\xee\x75\x50\xeb\x86\x61\xcd\xcb\xd5\xc1\x68\xe5\xcc\xd4\ +\xac\x43\x10\x78\xb7\x30\x02\x2a\xf7\x3b\x9f\x38\xb4\x8b\xa7\x9a\ +\x97\x64\x52\xe7\xf5\x7e\x98\x98\x53\x9e\x57\x9e\x56\xc0\xc1\x8c\ +\x5e\x11\x5b\x4c\x26\xe7\x60\x30\x06\x8f\x6c\x86\x39\x7d\x09\x93\ +\x8e\x95\x04\xcf\x7d\xf6\xdf\x28\xf4\x0a\x12\x43\xf9\x11\x50\xde\ +\x3f\xd0\xd8\x52\xbd\x77\xef\xee\x06\x1e\xa8\x86\xd1\x29\x38\x1e\ +\xb6\x7a\x1f\x33\x09\x2d\x9b\xf7\xf3\x23\x31\x3e\x25\xc7\x47\xb7\ +\xc0\xb9\x71\x27\xd3\xb7\x40\xac\x13\x75\x82\xc0\x1f\x31\xc9\x52\ +\x72\x4b\x47\xdd\x7a\x2f\xf5\x2b\x00\x20\x34\x09\x36\x05\x00\x7d\ +\x1e\xbc\x6c\x97\x68\xd2\xb6\xa0\xd8\x80\xb4\x22\xa1\x6c\x92\x2c\ +\xe8\x46\x27\xfc\x39\x00\xed\x35\xf0\xfd\xfb\xe0\x6a\xac\x89\xcb\ +\x1f\x07\x3a\x52\xa2\x1e\xcd\xad\xd5\x46\x6e\x69\x5d\x5d\xe3\xc1\ +\x29\x69\x52\x59\x8a\xf4\xae\x4d\x8e\xb6\x8c\xca\xb9\xcd\x6a\xc7\ +\x66\x93\xaa\x69\xca\xae\x46\xb3\x5a\xa3\xf8\x97\x00\x34\xad\x82\ +\xf5\x5e\x3b\xb5\x1b\x6a\x00\x0e\x17\x9a\x42\x9d\xf7\xb6\xfb\xa8\ +\xaf\x72\x31\xfb\x6f\xa8\x2c\x91\x00\xa2\x53\xd6\xee\x83\xb9\x28\ +\xb5\xc5\xd3\x46\x27\x87\xe8\x30\x3c\x21\xa3\x50\xb4\x04\x82\x09\ +\x3b\x62\x81\x6b\x12\x69\x74\xb4\x90\x08\xf8\x35\x0d\x2e\xde\x80\ +\xb7\x43\xf0\xfc\x65\x49\xa2\xd1\xa3\x3c\x29\x3d\x2c\xc7\x6c\x9e\ +\x7d\xa8\x16\x0e\xb6\xc0\x63\x8d\x50\xe6\xc8\xd1\xbd\xb0\x36\x84\ +\xe3\x03\xb2\xad\xae\x5e\xeb\x55\x9b\xc8\x02\x08\xb8\x05\x28\xe6\ +\x66\x53\xbc\xf4\xfb\xf7\x39\x77\x36\xcc\x5f\x87\xc1\xed\x50\xe9\ +\xb4\x58\x4a\xb4\x97\xa7\x78\xf7\xdd\x00\x47\x9f\xbb\x40\xff\xa5\ +\xb0\x5c\x08\x8b\xb2\x3d\x6f\x25\xe1\x8f\x42\x79\x29\x94\x14\x41\ +\x65\x6d\x05\x40\xeb\x22\x04\x54\x0b\x75\x38\x8b\xea\xaa\x6a\x3c\ +\x9c\xfb\x68\x90\x2b\xfe\x08\x2f\xfd\xee\x03\xce\x9e\x18\xa0\xef\ +\x3a\xb8\x8b\x25\x09\x95\xfb\x56\x20\x9e\x62\x08\xc4\xc1\xb1\xb9\ +\x89\xda\x1d\x2d\xf4\xe9\x5e\x02\xe1\x24\x3b\xaa\x17\xf6\x36\x56\ +\x12\xdc\x98\x91\x5d\xa9\xd6\x0d\xae\x15\x2e\x00\x77\xbe\x11\xe8\ +\xde\xb1\xa7\x09\x67\xa9\x9d\xd9\x99\x14\xf3\xf2\xda\x0b\x27\x19\ +\x8d\xc4\x18\x98\x84\x54\x5a\x82\xc8\xa6\x13\x29\x98\xd4\xed\x20\ +\xe7\x38\x9c\x76\x3e\x4c\xb8\xd8\xbc\x22\x25\xe6\xd9\x49\x60\xb2\ +\x85\x27\x00\x10\x04\x4a\x17\x89\x80\xf2\xfe\x0b\xa2\xfb\xb4\xde\ +\x2f\x08\xd8\x34\x70\x96\xd8\x51\x02\x97\xcf\x45\x32\x5e\xbf\x79\ +\x4b\x75\x20\xa9\x66\x12\x66\xaf\xca\x45\x90\x22\x3b\xb6\x99\x64\ +\x96\x26\x60\xb5\x45\x26\x15\x29\x73\x04\x96\x62\x05\xff\x5d\x91\ +\x3a\x07\x9e\xfa\xf1\x4e\x4a\x4a\xed\x19\x10\x3b\x1f\x6e\xa2\x7a\ +\xad\x07\x34\x58\x53\xeb\x99\x27\x84\xae\xd6\x00\xac\xcd\x47\xda\ +\x35\x1d\xf5\x2c\xa0\xeb\x64\x3a\x9a\x6d\x7a\x0a\xcd\xe1\x12\x76\ +\xb5\x06\xc8\x77\x19\x17\x14\x4d\x6e\x31\x14\x29\x93\xd8\xb0\x82\ +\xef\x3a\xf4\x93\x3d\x94\x95\xbb\x40\x79\x92\x75\x1b\xbd\x6c\x6d\ +\xf1\xb2\xa3\xd6\xce\x16\xcf\x22\xc5\x6b\xf6\xa4\x9c\x5b\x5b\xaa\ +\x66\xb5\x59\xa3\x20\x09\x28\xa1\xd7\x4a\x40\xed\x7b\xba\x9e\xfc\ +\xd1\x2e\xaa\x6a\xca\x0c\x3b\xca\x0a\x27\x3c\xee\x83\x76\x2f\x7c\ +\x9e\x84\x2b\x93\x39\xd2\x05\xc0\xbc\xbd\xc0\x48\xc2\x5d\xac\xec\ +\x16\xf0\x39\x36\xfa\xd1\xa1\xb1\x9c\x11\xd8\x57\xbf\xa1\x02\x5f\ +\xa3\xd7\xf0\x0f\x37\x7b\x60\xbf\x0f\x4e\x5d\x83\x63\x23\x70\xf3\ +\xb6\xa9\xf3\x64\x01\x6a\x15\x05\xde\xe3\x80\x50\x34\x99\xdf\xe1\ +\x44\x83\xe9\x5b\xf2\x1c\x9d\x9a\xbb\x05\xe0\xcf\x46\x20\x34\x2b\ +\x9e\x44\x81\x60\xbb\x17\xf6\xd6\xc0\x9f\x86\xe1\xea\x74\xf6\x54\ +\x81\x6c\x24\xac\x1e\x6e\xaf\x82\xd0\x48\x12\xbd\xc4\x95\x6d\xb5\ +\x36\xda\x81\xc8\x04\xa4\x66\x53\xc4\xc6\xe2\x39\x08\x88\xa3\x5b\ +\x34\x12\xf7\xbf\xfd\xea\x19\xe6\x65\x95\x53\x8e\x91\x29\x03\x06\ +\x05\x3c\x0f\xf1\x96\x28\x20\x95\x25\x92\xc0\x2b\x3d\x11\xd6\xae\ +\xf3\x16\x74\x2c\xec\xbf\x30\x28\xc1\x8b\xab\x97\x5c\x6d\xb4\xe3\ +\xc3\xe3\x41\xe2\xe3\x49\x74\xe0\x9d\xb0\xec\x18\x0d\xcb\x51\xf7\ +\x3b\x4a\x41\x5f\x1c\xfc\xc1\xcd\x70\x68\x0b\x3c\xbd\x09\x9e\xb9\ +\x47\x7a\xff\xc4\x48\x01\x7b\x22\xe4\x4e\xe0\xd2\xe9\x00\x40\x67\ +\xee\x2e\x24\x6f\xc8\x70\xc8\x36\xc9\x9c\x00\xdf\x3b\x02\x0d\xcb\ +\x80\x85\xce\xb5\x18\x89\x01\x6a\x0e\x8c\x4d\xc3\x5b\x67\x62\x99\ +\x15\xbb\x6e\x39\xf8\x83\x31\x9e\xf9\xd5\x45\x1a\xdb\x7c\x26\xe4\ +\xea\xfb\x0b\xd9\xc5\xbd\x51\xe6\xba\x45\xe0\xb3\x9e\x07\xcc\xe7\ +\x5f\xd1\x46\x33\x2b\xe6\x3c\x88\x4b\x31\x68\x2b\x37\x02\x53\xbd\ +\xdf\x40\x44\x82\x30\xfd\xed\xe3\x69\x17\xcf\xfe\x22\xc0\xcc\x74\ +\x8a\x62\x87\x9d\x96\xbd\x5b\xb1\x17\xdb\x89\xdf\x48\xb2\xdc\xed\ +\x32\x82\xc5\x2a\xc1\xf3\x03\x5c\x3a\x15\x4c\x00\x07\x00\x72\x13\ +\x80\x8e\xb6\xed\x3e\x05\x42\x03\x80\x70\x12\xec\x1a\xcc\xa5\xa5\ +\x49\x01\x54\x23\x59\x22\x52\xec\xb4\xb3\xed\xc1\x26\x15\xb9\xb4\ +\x1c\x43\x9f\x8e\xd1\x7c\x9f\x4b\x81\xc6\xfc\x0e\x79\x05\x79\xe2\ +\x9d\x3e\xcc\x17\x5d\xb9\x6a\xa0\xfb\xc4\xf1\x60\xe2\x5f\x3d\x01\ +\x74\x54\xca\x7c\x3a\x01\x6b\x4a\x91\x20\xd2\xa6\x51\xa9\xaa\x0f\ +\x72\x10\x03\xce\x9f\x1e\xc0\xa9\xbc\x6f\xf8\xce\xbc\xed\xba\x00\ +\xff\x56\x57\x0f\xa2\x75\x1e\x50\x77\x43\x8b\x47\x00\xf7\xca\x52\ +\xf7\xc6\xd6\x6a\x43\x4e\x0e\x27\x61\x47\xa5\x24\xa2\x99\xf2\x55\ +\xdd\xbe\x59\x55\x01\x57\xf3\xd9\xe9\x14\xc7\xde\xec\xe3\xe9\x9f\ +\xee\xe3\xb6\x2e\xd3\x11\xd3\x33\xd7\xa3\x31\xba\x5f\x10\xe0\x67\ +\x05\x78\x95\xf7\x79\x11\xa8\x13\xf9\x8f\xbb\xcc\x65\x29\xaa\xd9\ +\xdb\x32\xfc\xba\x66\xb0\xe7\x24\x81\x29\x22\xa2\x0e\x78\xf1\xb7\ +\x3d\xb8\xdc\x2e\x8a\x1c\xf6\x0c\x81\x22\x53\x04\xe6\x66\x52\xbc\ +\xf9\x7c\x06\x7c\x97\x02\x9f\x3f\x81\xde\xd1\x48\x3c\x34\x12\x8e\ +\x89\x73\x40\x99\x01\x67\x62\x4e\x81\xc2\xcc\x41\x11\xc8\xa6\x12\ +\xfc\x6f\x7a\x18\xbb\x1a\xa7\xe3\xb1\x6d\x19\xdb\x6d\x09\xc0\x10\ +\xa5\x37\xfe\xf0\x05\xf8\xef\x91\x55\x72\xb7\xd1\x50\x7c\x7c\x2a\ +\x03\x40\xe5\xba\x8c\x40\x5a\xb7\xa8\xaa\x83\x74\x76\xf0\x81\x0b\ +\x61\x7e\x7d\xa4\x3b\x03\xbe\xed\xa1\x66\x36\xdc\xdb\x40\x5a\x16\ +\x33\xb7\x55\xa4\x38\xf5\xde\x05\x51\xb8\x71\xbf\xe1\xf0\x5e\x60\ +\x04\x00\xdc\xa2\x73\x08\x50\xc6\x3b\x9d\xd0\xa4\x69\x9f\x63\xe9\ +\x44\xd6\xc5\xee\x73\xd1\x69\x7a\xdf\xbe\xc0\xd0\x67\xd7\xf0\xd6\ +\x55\xf0\xc0\xb7\xdb\x59\x5e\xe6\xca\x00\xb7\x81\x8c\x82\x06\x45\ +\x3a\x4c\xc4\x93\x9c\x3a\x7e\x71\xbe\xe3\x4c\xfc\x3f\x04\x12\xa2\ +\xd0\x54\xba\x68\x12\x8c\xa6\xa9\x54\x31\x8a\xb5\x50\x03\xe7\xc3\ +\x7c\xf4\x5e\x80\xa1\x4f\xaf\x51\xdf\xe2\x63\xcf\xd3\x2d\xac\xae\ +\xf7\x62\xb3\x19\x8b\x3b\xad\xab\xab\x11\xff\x89\x00\x40\x97\xb5\ +\x5d\x16\x4e\xa0\xeb\x6f\xaf\xf7\x75\x88\x28\x50\xbf\xde\x6b\xb9\ +\xb0\x32\xd6\xb0\xfa\x10\x8d\xc4\xf0\x9f\x1c\x14\xe0\x23\x2c\x75\ +\x95\x52\xdf\xec\xa3\xed\x9b\xbb\x10\xef\xc1\xa6\xa1\x52\x12\x25\ +\xb6\x0c\x19\x19\x85\x81\xcb\x11\x80\x6e\x0a\x14\x2d\xcb\x91\xf2\ +\x5b\x40\xe7\x8a\xb2\xd2\x3a\x41\x02\xd1\x5a\xa9\x13\x63\x65\xb5\ +\x07\x20\x73\x46\x4e\xc4\xa6\x10\x05\x4f\xa8\x7f\x2c\xb3\x28\x95\ +\xae\xf4\x50\xb3\xc5\xc7\x9a\x0d\x35\xd8\x25\x68\x6c\xea\xb8\x89\ +\xa6\xe6\x4a\xd5\x45\x18\xcf\xfe\xec\x65\x80\xba\x42\x7f\x27\xd3\ +\xf2\xf8\x55\xa6\x03\x68\x55\x6a\x14\x4f\x75\x05\xeb\xb7\x35\xb3\ +\xaa\xd6\x8b\x04\xa9\x2d\x04\xd0\x4a\xc8\x44\xe6\xb9\x9f\xbf\x8c\ +\x00\xaf\x51\xa0\x2c\x25\x97\xc8\x7c\x3c\x6f\xfa\x81\xef\x30\x70\ +\x04\x60\x95\xaf\x9a\xd6\x6f\xec\xcc\x00\x50\x85\xa9\xa3\xa3\x91\ +\x06\x90\x36\x4b\xce\x03\xd8\xd2\xa0\xdb\x90\x76\xd4\xfb\x65\x01\ +\x17\x42\xa0\x10\x91\x2f\x3f\x2a\x88\x74\x03\xbd\x35\xf7\x34\xba\ +\x0d\x45\xa9\x2a\x1a\x1b\x1a\xba\xae\xec\x2a\xe7\x91\x2a\x49\x9b\ +\x7b\x79\x2b\xf0\x3e\x05\x88\x8d\x42\x45\x45\xa6\x73\xd8\x1f\x44\ +\x37\xad\x09\x4a\xf5\x2c\x76\x16\xb4\x57\xd6\xa9\x5b\xb7\xbb\x4b\ +\x40\x49\xe7\xf8\xe7\x11\xc4\x51\x2f\x2f\x80\xe9\x45\xec\x6b\x37\ +\xd6\x00\x1c\xf8\x72\x08\xa8\x74\xea\x8d\x47\xc6\xac\x00\x0b\x8f\ +\x02\x35\x4d\xd5\x32\x02\xe2\x76\xe4\xee\x13\x50\xe2\xbf\x39\x9e\ +\x58\x04\xa0\x9e\x57\x14\x4a\xdd\x2e\xca\x2a\x3d\x00\xfb\xbe\x4c\ +\x02\x89\xdb\x73\xa9\x3c\xd2\x47\xcf\x2b\x0a\x5e\x59\x07\x1d\x77\ +\xaf\x0b\x59\xa5\x77\x34\x30\x48\x72\x3c\x6e\xb9\x4e\xb1\x5e\xad\ +\x64\x99\xab\xcf\x88\x73\x2f\x40\x82\x02\xe4\x3f\x98\x19\x4d\xb7\ +\xfe\x5c\xef\x7b\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\ +\x00\x00\x08\x27\ +\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\x07\xee\x49\x44\x41\x54\x78\x5e\xd5\xda\x7b\x8c\x5c\xe5\ +\x79\xc7\xf1\xcf\x7b\x66\x66\x67\xd6\xeb\xdd\xf5\xe2\xf5\xc6\x36\ +\xc6\x60\xca\xd5\x26\x8e\x6d\xea\x62\xdc\xba\x10\xa2\x04\xd2\x8a\ +\x04\xc2\x25\xae\x4b\xc3\x2d\x38\x29\x21\x94\x92\x56\xa4\x4e\x1c\ +\x51\x88\x93\xa8\x88\x36\x95\x48\x43\x0b\x58\xa0\x12\x89\x06\x63\ +\x6e\x49\x90\x0b\xb4\x29\x55\x84\x1b\x27\x34\x5c\x0c\xb6\x31\x6b\ +\x7c\xc1\x97\xf5\xde\xed\xd9\xd9\x99\x39\x33\x6f\x23\x65\xff\xa8\ +\x2c\x0b\x2b\x66\x2c\xad\xbf\xd2\x4f\xe7\xdf\xe7\xab\xe7\x7d\xf4\ +\xbc\x47\xe7\x84\x18\xa3\xe3\x99\xc4\xf1\xcd\xf1\x2f\x20\xc6\xe8\ +\x58\x1d\xa3\xb8\x42\x8c\x77\x88\xc7\x65\x07\xe2\x23\xce\xd2\x82\ +\x0e\xd6\x5e\xe5\x4f\x51\x38\xae\x04\xf4\x7a\x26\x8e\x62\x98\xcb\ +\xcf\xf6\x8f\x68\x46\x72\x5c\x08\xc4\x07\x30\xec\x74\x27\x12\x67\ +\x22\x63\xf2\x95\x67\xfa\x08\x9a\x8e\x0b\x01\x07\x3c\x19\x87\x70\ +\xf5\xf5\xbf\x49\x2f\xff\xfa\x47\xfe\x1e\xf9\x71\x2f\x10\x1f\xc6\ +\xb0\xcb\xd4\xd1\xb1\x9a\x8e\x87\xa8\x51\x68\x36\x7f\x56\xbb\x19\ +\x68\x1a\xd7\x02\x86\xac\x8a\x07\x71\xed\x2c\x6c\xc3\xb0\xf8\xb9\ +\x93\x19\xe6\xa5\x2b\xdc\x8d\xfc\xf8\x16\xa8\x5a\x61\x00\x0b\x36\ +\xe0\x5e\x3c\xc0\x79\x3f\x67\x3f\x33\x26\xbb\x1c\x05\xe4\xc6\xa5\ +\x40\x5c\x6d\xa9\x1e\xfc\x31\x4c\x26\x3e\x47\x7c\x16\x5d\xe2\x65\ +\x38\xc0\xcb\x57\xb9\x63\xdc\x0a\xe8\xf1\x8d\x38\x80\xcb\xd7\x62\ +\x35\xca\xd8\x8c\x7f\x67\xe9\xe3\xf4\xb1\xa8\xcb\x35\x68\x46\x32\ +\xae\x04\xe2\xfd\xce\x31\xe8\x6c\x73\xe1\x72\xe2\xf7\x31\x11\xad\ +\xc4\x47\x71\x25\xf3\x50\xf7\xa1\x7f\xbe\xc0\x55\x68\x1a\x57\x02\ +\x06\xdd\x19\x07\x71\xd3\xed\xf8\x4f\xec\x42\x0e\x79\xfc\x04\xef\ +\x88\x5f\xbe\x4d\xad\x87\x4f\xcf\x74\x03\x0a\x08\xe3\x42\x20\x7e\ +\x0f\x07\x5c\x61\x12\xf2\xf7\x12\x1f\xc1\x44\x04\x24\x68\xc3\x6a\ +\x5a\xff\x81\x13\xf8\x50\x8b\x85\x57\xcf\x32\x0f\x4d\xe3\x42\xc0\ +\xb0\x3b\xe2\x10\xae\xff\x03\xec\xc0\x8f\x90\x07\x40\x61\x4c\x6a\ +\x50\xe6\x8b\x8b\xc5\x3e\xfe\xfa\xc3\x6e\x42\xd9\x07\x24\xeb\x08\ +\xc4\xa7\x2d\xf0\x9e\x8a\x9c\x8b\x55\x4d\x96\xea\x90\xf8\xb8\xaa\ +\xb2\xc4\x6c\x45\xf4\xa3\x82\x33\xd6\xe2\x9b\x68\x47\x02\x80\x0c\ +\x12\x3c\xce\x82\x35\x46\x4b\xd3\xcd\x6f\xb1\x2c\xde\x60\x19\x48\ +\x6d\x92\x68\x4a\x47\xfd\x47\x08\x06\x46\x2b\x36\x16\xab\x5e\xef\ +\xca\x6b\x0a\x8f\x5b\xef\x7d\x08\x31\x46\xe0\x9f\xc2\xd7\x75\xb9\ +\x51\xdd\x88\xd4\x6c\x75\x94\x30\x80\x12\x2a\x63\xa9\x13\xab\xa8\ +\x61\x0a\xa6\xa3\x84\x6b\xbf\xc8\xa4\x55\xc4\x79\x68\x45\x06\x00\ +\x50\x45\x9d\xb0\x51\xd8\xf7\x25\xe9\xdf\xfd\x8b\x58\xa0\xf4\x0e\ +\x07\xb7\x93\x24\xd4\x23\x69\x20\x46\x92\x2c\x99\x84\x13\x0a\xe4\ +\x32\xd4\xeb\x94\xd9\x1c\x6b\x9a\x9b\x12\x8f\x16\xd6\xf9\x1a\xc2\ +\x98\x00\xbe\x1d\xa2\x0e\x62\x8a\x80\xe9\x18\xc1\x99\x93\xc9\xb7\ +\x33\x6d\x3e\x9d\x8b\x31\x8a\x15\x88\x08\x00\x63\x66\x0f\xe3\x2e\ +\xb4\x39\x3c\xfd\x84\x87\x71\x21\xb2\x20\x00\x40\xf1\x5e\xb2\x79\ +\xde\x7e\x99\x2d\xff\xab\x36\x34\x60\xe0\x67\x7b\x25\x19\xfa\xb7\ +\x12\x2b\x64\x12\x66\x36\x91\x7b\xc1\x14\x14\xc7\x04\x78\xe5\xcf\ +\xc3\xef\x2c\x58\x64\xab\x21\xe2\x92\x76\xe6\x0f\xa2\x8a\x3a\xf2\ +\x80\xcd\x78\x87\x18\xf1\x3c\xf2\x78\x0d\x23\x28\x61\x27\xda\x90\ +\x71\x78\x52\x0c\x61\x26\x5a\x10\x31\x01\x73\x81\x90\xc5\x42\x9c\ +\x80\x44\x70\x3a\xaa\xe8\x56\xfd\xd6\x05\xb6\xff\x98\xce\x02\x9f\ +\x7f\xc3\x2d\x4f\xf4\x58\x8f\x2d\x63\x02\x84\x10\xdc\x75\xa9\x33\ +\x56\x7e\xd2\xeb\x86\x34\xc5\xd9\xf8\xd4\x2e\x3c\x4c\xfc\x3a\x0a\ +\xc8\x22\x83\x04\xd9\x43\x9e\x09\x32\x08\xde\x9f\x88\x1a\xea\x88\ +\x88\x48\x11\x11\x51\x43\x8d\x10\xa9\x65\x85\x72\xdd\xc0\xcd\x83\ +\x7a\x5f\x25\xdf\xa6\x74\xc9\x2f\xdd\xfc\x56\xd1\x76\xbc\x8b\x5d\ +\xff\x5f\x00\x7c\xe2\x4c\x93\xd6\xdd\xaa\xc7\xb0\x5c\x9c\x88\x5b\ +\x76\xe3\x13\xc4\xbd\x28\x38\xe6\x84\x88\x2c\x7d\x79\xa1\x50\xb5\ +\xfb\x33\xdb\x54\x07\xc8\x4e\x50\x3e\xe5\x25\x7f\x92\x46\xbd\x78\ +\x17\x7b\x51\x3d\x54\x00\x5c\x39\x57\xdb\xe3\xcb\xbd\x63\x48\xa7\ +\x56\xe2\x97\x5f\xc3\x85\xc4\x0c\xb2\xc7\xb0\xf0\xf8\x9b\xc2\xd3\ +\x3c\xd5\x21\x7b\x96\xf7\xa8\x0f\x50\xce\xeb\x9d\xf3\xdf\xbe\x30\ +\x5a\xd7\x83\x6e\xec\x41\x84\xc3\x0a\x00\xc4\xef\x78\x59\xc5\x22\ +\xc3\xc4\x7b\xee\xc3\xed\xd4\x5a\x90\x68\x18\x01\x49\xa4\x98\xa5\ +\xa7\x59\x98\x90\xb0\xb7\xc7\xd6\x1b\x8a\x5a\x5a\xd8\x59\xf5\xea\ +\x79\xeb\x7d\x05\x25\x74\x63\x1f\xe2\x91\xf7\x00\xc2\x57\x9d\x1f\ +\xbf\x6d\xbd\x76\xe7\x85\xdb\x6e\x11\xbf\x7b\x03\xc9\x63\x94\x73\ +\xc4\xd0\x98\xe3\x92\x44\xf6\x34\x53\xce\x0a\x6d\x91\x3d\xfb\x74\ +\x2f\x1f\xd1\xde\xc6\xae\xaa\x37\xc6\x8a\x1f\x46\x37\xfa\x7e\xeb\ +\x45\x16\xfe\xc6\xa2\xd7\x6f\xb6\xf2\x9c\x29\xee\x0a\x37\xad\x16\ +\x6f\x3d\x91\x33\x06\x18\x0d\xd4\xa3\xa3\x26\x41\x25\xc3\xbe\x16\ +\x72\x84\x76\xac\xdb\x61\xd3\x3d\x4c\x9b\xca\x43\x7b\xdc\xff\x95\ +\x37\xad\xc1\x20\xba\x31\xe0\x10\x8e\x78\x84\x00\xa0\xfb\x4b\x56\ +\xcc\xea\xb4\xca\x2e\xe2\xf5\x98\x57\xa0\x18\x89\x47\x2b\x50\x67\ +\x7b\x1b\x4d\x84\xd6\x84\x9f\xee\xb7\xe5\x3e\xa6\x77\xf2\xd0\x7b\ +\x1e\xb8\x6d\xa3\x1f\x62\x1f\xb6\x63\xf8\xa8\xaf\x12\x00\xa7\x7e\ +\xcf\xb7\x9e\xbb\xda\xe6\x4b\x4e\xb3\x26\x3c\x48\xbc\x74\x94\x25\ +\x09\x65\x47\x47\x26\xa2\x24\xc8\xb0\xf6\x80\xee\xc7\x98\xda\xc9\ +\x5f\x6e\xb2\xf2\xc1\x1d\xd6\xe3\x3d\xec\x40\x11\x3e\xb0\x00\x7c\ +\xf2\x87\x9e\x78\xf0\x62\xe7\xdd\x38\xdb\xff\xd4\x1e\x23\xb3\x24\ +\x52\x89\x8e\x8a\x04\xb9\x32\xa1\xc9\x9b\xab\xe9\x98\xca\x15\xaf\ +\xb8\xf9\x85\x5e\x9b\xb0\x6b\x2c\x25\x68\x98\x00\x7c\x7e\x9d\x9f\ +\xdf\x38\x8f\xcc\xc9\x28\x47\x2a\x8e\x8e\x80\xb4\x46\x35\xd5\x31\ +\x8b\x49\x29\x2f\xf4\x7a\x05\xfd\xd8\x86\x14\x1a\x2e\x10\xbf\xa9\ +\xcb\x6e\x9c\x8c\x92\xa3\x17\x80\x0c\xfa\xab\x5a\xa7\x71\x70\x2b\ +\xd7\x4c\x37\xe7\xd1\xdd\x9e\x42\x0a\xc7\x44\x40\xd1\xb2\x74\x94\ +\xcc\x0c\x14\x1d\x7e\x06\x02\x80\xf7\x1f\xf2\x1c\x71\x94\x89\xa7\ +\xd0\xf7\x06\x9f\x9a\xe2\xa3\xbf\x16\x78\x16\x8e\x9d\x40\xf4\x87\ +\x6a\xe8\x40\x09\xb5\xc3\x14\x5f\x43\x8a\x66\xd4\xdf\x47\xa2\x8e\ +\x1a\x3a\x19\xa9\x72\x52\xde\x6c\x14\x90\x43\xf5\xd8\xbc\x91\xa5\ +\x96\xa4\x15\x74\x62\x04\xa3\x63\x29\xa3\x8a\x22\xb6\x60\x2b\xb6\ +\xa1\x84\x14\x65\x8c\x1e\x26\x11\x9d\x54\x2a\x4c\x6d\x72\x16\x9a\ +\xc6\xd2\xf8\x0e\xc4\x55\xd8\xa9\xb3\x30\x9d\x58\x44\x05\x00\x59\ +\xf4\x63\x1f\x72\x68\x22\xf4\xa3\x17\x27\x12\x3b\x90\xa2\x0e\x80\ +\x14\x09\x86\xe9\x9a\x41\xe1\x80\x09\x53\xb2\xa6\xee\x4f\xed\x87\ +\xc6\x77\x60\xd0\x9c\x72\x99\x38\x15\x45\x8c\xa2\x8c\x1a\xde\xc5\ +\x0e\x44\x42\x4a\xd8\xc0\xce\xa7\xd8\xf6\x24\x7e\x4c\xd8\x84\x22\ +\x6a\xc6\xba\x81\x12\xb2\x18\xa2\x6b\x3a\xfd\x65\xfe\x6c\x9a\xdf\ +\x43\xf6\xd8\x08\x04\xcb\xea\x29\xa1\x05\x15\xd4\x51\xc5\x66\x0c\ +\x12\x72\x84\x3d\xec\x5f\xc7\xe0\x1e\x26\xb7\xd3\xd5\x41\xcf\x6e\ +\xb6\xad\x21\xfc\x17\x61\xe7\x21\x57\xff\x0a\x11\x99\x36\x46\xaa\ +\x5c\xd0\xee\x42\xe4\x90\x34\x5e\xa0\x6a\x49\xbd\x86\x56\x54\x30\ +\x8c\x37\x51\x25\x0c\x52\xde\x40\xff\x26\xa6\x4c\x64\x6b\xd1\x4b\ +\x2d\x6b\x5d\x3a\xe9\x49\x1f\xdd\x5d\xf3\x62\x57\x0b\xef\xbe\x4a\ +\xdf\xb3\x84\x9f\x11\xfa\x90\xa2\x8a\x80\x36\xaa\x55\xa6\xe5\x9c\ +\x8d\x02\x72\x8d\x17\xa8\x5b\x92\x6d\x26\x16\xb0\x17\x6f\x13\x6a\ +\x84\xb7\xe9\x7f\x8b\x4c\x4a\x48\xf4\x9e\xf3\x13\xd7\x2d\x7c\xde\ +\x9d\x78\x2f\x65\xd3\xfc\x17\x7c\xfa\x73\xbf\xb4\xa8\x90\xd7\x97\ +\x96\x79\xeb\x25\x8a\x3f\x22\xbc\x45\xe8\x47\x16\x39\x26\xe4\x39\ +\x31\xeb\x74\x63\x83\xdc\xd0\x8f\x7c\xf1\xab\x42\x7d\xb9\x18\x6f\ +\x15\xeb\x77\x8b\xf1\x0e\x31\x2e\x17\x87\x3e\x2b\x96\x96\x8a\xe5\ +\x65\xe2\xaa\x79\xee\xc1\x45\x38\x1f\x27\xa3\x19\x00\x19\x14\x1e\ +\x99\xeb\xaf\xf6\x7f\x4c\xec\x3e\x5f\xdc\x78\xae\x18\x97\x8a\xf1\ +\x6e\x31\xfe\xad\xb8\xf3\x22\xb1\x7b\xbe\xb8\xb8\xd5\x65\x68\x6f\ +\x6c\x07\x46\x5c\x34\x92\xa2\x42\xd8\xc7\xc8\x2e\x0e\x1e\xa0\xad\ +\xc0\xfa\x3e\xcf\x4d\xfa\x37\x9f\xf9\xda\xaf\x3c\x8d\xdd\x78\x13\ +\x3b\x50\x02\x40\x0d\xa3\xd7\xbe\xe6\xbb\x53\x5e\xd4\xba\x37\xb5\ +\xa6\xa5\x99\xd7\xb6\xb0\xf1\x09\xf4\x30\xa3\x93\x03\x35\x3e\xde\ +\x6e\x01\xb2\x8d\x5d\x64\xc1\x67\x43\x8d\xb4\x4c\xf1\x20\xed\x05\ +\x7a\x0e\xe8\x5e\xf2\x8c\xbb\x7f\x35\xa0\x1b\x43\xd8\x8b\xfe\x23\ +\x2c\xa1\x14\x07\x17\x6f\xb0\xec\x8a\x29\xee\xb9\xf3\x14\x3f\x68\ +\xc9\x3a\x6d\xc3\x4f\x99\xdc\x4e\x2d\xb2\x70\xa2\x25\xf8\x3e\x32\ +\xa8\x35\xe6\x08\xdd\x6a\x4b\xf1\x3a\x31\xde\x28\x56\xaf\x53\xfa\ +\x8b\xd9\x56\xe2\x22\x2c\xc4\x49\x68\xf6\xdb\x93\x20\xff\x9d\x53\ +\x5d\xbb\xf9\x5c\x95\x8d\x1f\x11\x5f\x99\x2b\xfe\x62\x8e\x1e\x9c\ +\x8a\x09\x8d\x9b\x81\x15\x62\xbc\x45\x5c\x77\xb1\x1f\xe0\x63\xf8\ +\x7d\x9c\x86\x36\x04\x1f\x8c\x1c\x26\x3c\x73\xa6\xfb\xf7\xcc\x17\ +\x8b\xbf\x0e\x16\xa0\xbd\x61\x02\x80\x93\xb0\x18\x1f\x46\x27\x32\ +\x1a\x4b\x1e\xd3\xf0\xbb\x38\x17\x6d\x8d\x9b\x01\x12\x0c\x63\x13\ +\x8a\x28\x6b\x3c\x65\xf4\xa3\x8c\x1a\x0e\x3a\x02\xc7\xfd\xef\x36\ +\xff\x07\xe2\x88\x5c\xa0\xce\x9a\xc4\x5c\x00\x00\x00\x00\x49\x45\ +\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x2e\x32\ +\xff\ +\xd8\xff\xe0\x00\x10\x4a\x46\x49\x46\x00\x01\x01\x01\x00\x48\x00\ +\x48\x00\x00\xff\xdb\x00\x43\x00\x04\x02\x03\x03\x03\x02\x04\x03\ +\x03\x03\x04\x04\x04\x04\x05\x09\x06\x05\x05\x05\x05\x0b\x08\x08\ +\x06\x09\x0d\x0b\x0d\x0d\x0d\x0b\x0c\x0c\x0e\x10\x14\x11\x0e\x0f\ +\x13\x0f\x0c\x0c\x12\x18\x12\x13\x15\x16\x17\x17\x17\x0e\x11\x19\ +\x1b\x19\x16\x1a\x14\x16\x17\x16\xff\xdb\x00\x43\x01\x04\x04\x04\ +\x05\x05\x05\x0a\x06\x06\x0a\x16\x0f\x0c\x0f\x16\x16\x16\x16\x16\ +\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\ +\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\ +\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\xff\xfe\x00\ +\x12\x42\x6c\x75\x65\x20\x41\x6e\x67\x6c\x65\x20\x53\x77\x69\x72\ +\x6c\xff\xc0\x00\x11\x08\x01\x20\x01\x20\x03\x01\x22\x00\x02\x11\ +\x01\x03\x11\x01\xff\xc4\x00\x1b\x00\x00\x02\x03\x01\x01\x01\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x04\x01\x02\x05\x00\x06\ +\x07\xff\xc4\x00\x3d\x10\x00\x02\x01\x03\x03\x03\x03\x02\x04\x04\ +\x05\x02\x06\x03\x01\x00\x01\x02\x03\x00\x04\x11\x12\x21\x31\x05\ +\x41\x51\x13\x22\x61\x32\x71\x14\x42\x81\xa1\x06\x23\x52\x91\x33\ +\x62\xb1\xc1\xd1\x72\xe1\x15\x24\x34\x43\x53\xf1\x82\x92\xa2\xf0\ +\xff\xc4\x00\x19\x01\x01\x01\x01\x01\x01\x01\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x01\x02\x03\x04\x06\xff\xc4\x00\x24\x11\ +\x01\x01\x00\x02\x02\x02\x02\x02\x02\x03\x00\x00\x00\x00\x00\x00\ +\x00\x01\x02\x11\x21\x31\x12\x41\x03\x22\x51\x61\x04\x71\x13\x32\ +\x42\xff\xda\x00\x0c\x03\x01\x00\x02\x11\x03\x11\x00\x3f\x00\xf6\ +\x3a\x14\xae\xdf\xa5\x74\x5a\x84\x80\x67\xf5\xa2\x45\x83\x10\x14\ +\x39\x50\x83\xa8\x57\xde\x6f\x7c\x3c\xad\x7b\x16\x08\xe1\x98\xe4\ +\x0d\xea\xd7\x0f\x7b\x79\x27\xb1\x4e\x91\xc1\x63\x81\x4a\x58\xcb\ +\xae\x2e\x46\x46\xd4\xcb\x4a\x74\x80\x18\x81\x8e\xd5\xce\xce\x44\ +\xc3\x33\xdb\x5c\x8b\x6b\xd8\x90\x29\xdb\x56\x38\xad\x8f\xe1\xeb\ +\x48\xa4\x96\xe0\xb3\x65\xed\x70\xf1\x6f\xe7\xbd\x65\xcb\xa2\xfa\ +\xdc\x43\x31\xc4\x80\x7b\x1c\xf7\xf8\xaa\x74\x2e\xa1\x2d\x87\x59\ +\x81\x67\x38\x5c\xfa\x52\x13\xe0\xd6\x72\x96\xce\x15\xba\x49\x62\ +\x4e\x73\x9a\x82\x1b\x1b\x0c\xd7\x5d\x0f\x4a\xe5\xd4\x70\x1b\x6a\ +\xbc\x32\x03\x5c\x94\x5b\x1b\xd7\xb7\x71\x9c\x80\x3c\x56\xf5\xbc\ +\xd6\x9d\x4a\xdc\xc7\x21\x5d\x64\x63\x71\xcd\x60\xe1\x49\xc1\x00\ +\xd0\x3d\x66\xb7\xba\x0d\x1b\x15\xc5\x63\x2c\x3c\xba\x5d\x8b\xd7\ +\x7f\x86\xe6\x79\x49\x86\x5c\xaf\xf4\xb1\x27\xfb\x57\x9c\xbf\xe8\ +\x1d\x46\x26\xff\x00\xd2\x93\xbf\x2a\x32\x0d\x7b\x15\xeb\x8c\xb1\ +\x61\x86\xb3\xe2\x83\x71\xd5\x2f\x25\x1b\x15\xb7\x4f\x20\x02\x6b\ +\x78\x7c\x9f\x24\xed\x35\x1e\x41\x3a\x3f\x5a\xcf\xb2\xde\x6c\x0a\ +\x66\x2e\x83\x71\xf5\x5e\x5e\x2a\x79\x54\x3a\x9b\xfe\xd5\xb5\x2d\ +\xd1\x6c\xeb\x9a\x79\x49\xe7\x2e\x40\x3f\xa0\xa5\x2e\xe6\xd3\x11\ +\x27\x00\x78\x1b\x0a\xe9\xfe\x4c\xaa\x68\xb4\x36\xd6\x56\x79\x68\ +\x53\x53\x0f\xfd\xc9\xb0\x48\xfb\x0e\x28\x37\x37\x99\x24\x47\xb9\ +\x3f\x98\xd2\xd7\x13\x3c\x8d\x96\x3b\x0e\x07\x6a\x0e\xa2\xc4\x84\ +\xed\xcb\x1e\x05\x6a\x63\xbe\xcd\xa6\x57\x24\xff\x00\x53\x1a\x5d\ +\x08\xfc\x48\x55\xdc\x28\x20\x91\xc6\x6b\x9a\x53\x21\x30\xdb\x9f\ +\xfa\xe4\x3f\xed\x47\xb3\x80\x2a\x0f\x03\xf7\xae\xd8\xe2\x8b\x5e\ +\x82\xcb\xa8\x72\x30\xc2\xb4\x7a\x04\xe0\xb9\x8c\xf1\x32\xed\xf7\ +\xa4\x9b\x06\x45\x5d\xb7\x04\x1a\x1f\x4c\x90\xc6\xec\x3b\xa1\x0c\ +\x3f\xde\xb1\xf2\x62\xb0\xff\x00\x4f\x96\x5b\x6b\xd6\x64\x24\x34\ +\x6d\xb8\xad\x5e\xbb\x61\x0f\x57\xe9\xdf\x8b\x81\x46\xac\x7b\xc0\ +\xec\x7c\xd2\x11\x28\xff\x00\xc7\xb3\x8f\x6c\x8a\x18\x56\x9d\xa4\ +\xad\xd3\xaf\xb3\x8c\xc1\x26\xcc\x0f\x02\xb8\x67\x3d\xce\xd6\x3c\ +\x05\xf5\xb3\xdb\xce\x54\x82\x08\x3c\xd5\xed\xa7\x0d\xec\x93\x9e\ +\xc6\xbd\x97\xf1\x8f\x45\x49\xa1\xfc\x65\xa8\xd4\x8c\x33\xb7\x6a\ +\xf0\xf7\x11\x34\x72\x10\x46\x08\xae\x98\x67\x32\x89\x61\xc3\x1b\ +\x21\xd4\x99\xda\x8d\x6d\x78\xea\x70\x4d\x29\x65\x75\x8c\x47\x21\ +\x38\x1c\x1e\xe2\x98\x96\x2d\x5e\xe0\x46\x4f\x04\x70\xd5\xaf\xed\ +\x1a\x50\x5c\xa3\xe3\x7c\x1a\xd0\x70\x9d\x42\xcf\xd1\x94\x81\x22\ +\x8f\x6b\x1e\xf5\xe6\x15\x9a\x37\xc3\x0a\xd1\xe9\xf7\x63\x20\x33\ +\x7d\x8d\x63\x2c\x3d\xac\x21\x7d\x6f\x25\xad\xc3\x47\x22\x91\x40\ +\x35\xb9\xd5\xa0\xf5\xe1\x32\xa9\x2f\x8e\x57\x39\x23\xe4\x56\x23\ +\x0c\x1f\x22\xba\xe3\x97\x94\xfd\xa0\x53\x2e\xda\x87\xeb\x53\x0b\ +\x67\x63\x57\x3e\x28\x32\x2e\x96\xa7\x40\xd5\x59\x50\x32\x13\xc3\ +\x0e\x0d\x42\x3e\x76\x3c\xd5\xea\xca\x15\x46\xd2\x41\xee\x0f\xbb\ +\xe6\x9a\xce\x54\x50\x6e\x23\xdf\x58\x1f\x71\x53\x6c\xd9\x5d\x3e\ +\x38\xa7\xb0\xca\x39\x0a\x28\xd1\xb0\x75\xc1\xa5\x90\xfb\x6a\x55\ +\x88\x39\x15\x34\x0b\x1b\xb4\x12\x1c\x6e\x0d\x32\xf2\xfa\x91\x6a\ +\x43\xc7\x34\x90\x93\xce\xf5\x31\xbe\x96\xd4\xa7\x4f\xc7\x9a\xa1\ +\xc8\x2e\x08\x20\x37\xf7\xa6\x6f\x42\x5d\x42\x1f\xff\x00\x71\x79\ +\xc7\x7f\x9a\xcf\x24\x37\xb9\x76\xf2\x28\x96\xf3\x18\xcf\x91\x52\ +\xcd\xf3\x07\xa4\xb0\xb9\x17\x76\x28\x5b\xfc\x68\x94\x24\xbf\x24\ +\x70\x6a\xcc\xfa\x06\xdc\xd6\x6f\x4a\x60\x6e\x7d\x54\xc8\x05\x30\ +\xfe\x0f\x8a\x7e\x1c\xcd\x37\xf9\x45\x70\xb3\x55\xa3\x56\x84\xe8\ +\x2c\xdd\xe9\x79\xcb\x4b\x71\x85\xa3\xce\xd8\x51\x1a\xf3\x50\xa0\ +\x42\xbb\x6e\xe7\xf6\xac\x4a\x25\x55\x20\x5c\x9f\x73\x9e\xd4\x36\ +\x2c\xe7\x2c\x6a\x0e\xe7\x2c\x72\x4d\x02\xee\xe5\x62\x5e\x77\xad\ +\x48\x09\x71\x2a\x42\xb9\x63\x59\x17\xb7\x26\x46\xcb\x1c\x01\xda\ +\xab\x34\xf2\x4d\x36\x95\x05\xd8\xf0\xa2\xa6\x54\x86\xcd\x3d\x6b\ +\xc6\x0c\xff\x00\x96\x31\x5d\x31\xc7\x49\x43\x54\x66\x8c\xc9\x2b\ +\x7a\x51\x0e\xe7\x93\xf6\xa5\x59\xde\xed\xbd\x1b\x71\xa2\x15\xfa\ +\x9b\xcf\xc9\xae\x06\xe7\xab\x5c\x12\xcd\xa2\x14\xe4\xf6\x02\x9d\ +\x51\x1f\xa6\x21\x81\x71\x12\xf7\xc6\xec\x7c\xd7\x59\x35\x7f\x68\ +\x1d\xbc\x4a\xab\xa2\x31\xfc\xb1\xdc\xf2\xd4\x73\x80\x2b\x80\x00\ +\x60\x54\x10\x59\xc2\x2f\x26\xba\x5b\x31\x82\xf0\x8d\x11\x3d\xc1\ +\x3b\xfd\x29\xf7\x34\xa5\x87\xfe\xa0\xb7\x81\x4c\x75\x77\x58\xd1\ +\x2d\x97\x88\xc6\xff\x00\x24\xf3\xfb\x50\xec\x10\x8b\x76\x7e\x35\ +\x9d\x22\xb8\xce\xb7\x46\x82\x39\x8e\x4b\x77\x27\xe8\x90\xc5\xfa\ +\x56\xfd\xdc\x42\x48\x06\xaf\x15\xe7\x2f\x09\xf4\xe5\x45\x18\x30\ +\xb8\x70\x3c\xed\x8a\xde\xb1\xb9\x17\x1d\x3d\x5d\x4f\x22\xb8\xd6\ +\x97\xe8\x77\x4b\x04\xa6\xca\xe7\xdd\x0c\x9b\x0c\xf6\xac\x2f\xe3\ +\xbe\x86\x6d\xa4\x37\x10\x8c\xc6\xdb\xe4\x76\xa7\xa7\x74\x92\x4d\ +\x07\x66\x1c\x56\xb7\x4a\xb9\x8e\xfe\xcd\xba\x7d\xe0\x05\x80\xc0\ +\x27\xbd\x63\x29\x70\xbe\x50\xed\xf2\xe9\x10\xe7\xc1\x14\x6b\x2b\ +\xa3\x19\xd0\xfb\xa9\xe4\x56\xb7\xf1\x77\x46\x93\xa7\x5e\x91\x8f\ +\x63\x6e\xa6\xb0\xd9\x73\xf7\xaf\x46\x36\x65\x36\xcb\x60\xc5\x1c\ +\xb0\xea\x56\xf5\x13\xcf\xe6\x4f\xbd\x26\xea\xf0\xc9\xff\x00\xfb\ +\x06\x81\x65\x75\x25\xbc\x81\x94\xef\xdc\x79\xad\x7b\x75\x82\xf6\ +\x2c\xa6\xcd\xdd\x3f\xe2\xaf\x42\xbd\x3a\xf7\x4b\x69\x62\x74\x9e\ +\xc6\x96\xea\x90\xfa\x73\x97\x4d\xd1\xf7\x15\xd7\x76\xb2\x40\xdb\ +\xe7\x03\x83\xe2\xba\x39\xf5\x27\xa5\x2e\xea\x7b\xf8\xa9\x27\x3b\ +\x8a\x56\xa1\x94\x30\xc1\xa2\x4f\x19\x8d\xbc\x83\xc1\xaa\x56\xfb\ +\x40\x1d\x4a\x9a\x24\x4d\x91\x83\xcd\x59\xc6\xa1\x8a\x0b\x02\xad\ +\x8a\xcf\x40\xf4\x00\x34\x4e\x07\x63\xc5\x12\x26\xc8\xdf\x91\x51\ +\x38\xf6\x83\xdc\x1d\xab\x42\xd1\x1c\xc6\x0f\xc5\x5a\xad\x14\x79\ +\x5f\x00\x51\x6d\x6d\xa4\x9e\x5d\x11\x2e\x71\xcb\x76\x15\x37\xa0\ +\x1c\x57\x11\x5a\xb0\xda\x5a\x45\x81\x23\xeb\x3d\xc8\xe0\x50\xfa\ +\xa5\xad\x9b\xd9\xbc\xd0\x36\x1e\x3d\xf6\x35\x9f\x2e\x46\x7a\xb1\ +\x06\x8c\xbe\xec\x63\xbd\x2e\x37\x35\xa5\xd3\xe2\xc6\x24\x61\x9e\ +\xca\x3c\xd6\xf7\xa9\xb1\xa1\x64\x86\x2b\x75\x84\x0f\x7b\x6e\x6b\ +\x52\x15\x10\xc2\x14\x7d\x5d\xe9\x7b\x08\x3d\x21\xea\x3e\xee\xdf\ +\xb5\x1a\x69\x12\x24\x2e\xec\x00\x15\xe5\xca\xee\xb4\xb6\x74\xfb\ +\x8e\x33\xf3\xda\x95\x9a\xed\x03\x15\x07\x26\xb3\x7a\x8f\x54\xf5\ +\x9c\xa4\x1c\x77\x34\xbc\x0d\x34\xaf\xe9\xc2\xa5\xdc\xf7\xf1\x5b\ +\xc7\x0f\xca\x6d\xa5\x71\x7a\xb1\xa7\xb8\xee\x78\x14\xb2\x43\x73\ +\x7c\xda\xc8\xf4\xe3\x1c\xb3\x6d\x9f\xb5\x31\x6f\xd3\xe1\xb6\x4f\ +\xc4\x5f\x48\x19\x80\xce\x93\xc0\xac\xee\xb3\xd6\x1a\x5c\xc7\x6f\ +\xed\x4e\x36\xef\x5b\xc6\x6e\xf0\x0d\x79\x7f\x69\xd3\xa2\x31\x5a\ +\x80\xd2\x70\x5e\x91\xb2\xb4\xb8\xea\x52\x9b\x8b\x97\x2b\x10\x39\ +\x66\x6f\xf6\xa2\x74\xae\x94\x65\x5f\xc6\x5e\x9d\x10\x8d\xc0\x3c\ +\x9a\x62\xf2\xef\xd6\x22\x18\x57\x44\x2b\xc2\x8e\xf5\xbe\x27\x18\ +\xa2\xd3\x34\x6c\xa2\xde\xd9\x74\x42\xbf\xff\x00\x5f\x26\xae\x83\ +\x02\xa9\x6e\xbe\xc2\x48\xde\x99\xb4\x4d\x72\x80\x78\x15\xac\x35\ +\x26\xc0\xd9\x4a\xe3\x3b\x66\x8d\xd1\xd4\x35\xc9\x73\x8c\x2e\xf9\ +\x3c\x55\x6f\x94\x89\x08\x1b\xed\xb0\xab\x74\xdf\x74\x72\xc4\x83\ +\x2e\xea\x42\xfc\xd6\x7e\x4b\xb8\xb1\x99\x7a\xfa\xe6\x24\xf2\x77\ +\x3f\xae\xf4\xef\x4f\x02\x6b\x06\x88\x11\xad\x0e\xa0\x3b\x91\x49\ +\xde\xc4\xc9\x21\x6c\x1c\x1f\xda\xa9\x04\xcf\x14\x81\x91\x88\x23\ +\xb8\xa5\x9b\x9c\x23\x5d\xd9\x65\x55\x98\xf3\xa4\xa4\xa3\xc7\x83\ +\x51\xd1\x6f\x0d\xab\x35\x9c\xa7\x83\x95\x3e\x68\x76\xb3\xfa\xe7\ +\x5c\x60\x2c\xc0\x7b\x93\xb3\x8a\xa5\xf4\x62\x78\x43\xc4\x08\x64\ +\xfa\x47\x71\xf1\x5c\xf5\xea\xa8\xf7\x53\x7f\xe7\x0e\x0e\x0f\x22\ +\x9d\xb7\x94\x9d\x2e\xa7\x12\x2e\xe3\x1d\xeb\x06\x2b\x86\x79\x57\ +\x5f\x22\xb6\xd2\x26\x0a\x1d\x6a\xd9\xc2\x35\xae\x84\x3d\x73\xa5\ +\x35\xbc\x98\x13\x28\xf6\xe7\xcd\x7c\xff\x00\xa9\xda\x49\x6d\x74\ +\xf1\x3a\x90\xca\x71\x5e\xb5\x24\x78\xe4\x13\x44\x70\xc3\x91\x55\ +\xfe\x26\xb5\x8b\xa9\xf4\xf1\x7b\x12\x8f\x59\x3f\xc4\x03\xfd\x6b\ +\x9e\x3f\x4b\xaf\x4b\xdb\xc4\x91\x93\xe0\x8a\x2d\xbc\x8f\x1b\xeb\ +\x8c\xe0\xaf\x22\xa6\xe6\x32\x18\xb6\x31\xbe\xff\x00\x06\x85\x93\ +\xc8\xd9\x85\x77\x47\xa1\xe9\xd7\xb0\x5e\xc5\xe9\x5c\xe3\x51\x18\ +\xcd\x07\xa9\x74\xb7\x84\x17\x8f\xdc\xb5\x8f\x0b\x1c\xfa\x91\xec\ +\x47\x22\xb7\x3a\x47\x55\xca\xfa\x53\x6e\xbc\x1c\xf6\xac\x59\x67\ +\x31\x59\x8a\xe5\x46\x87\x19\x5f\x07\xb5\x52\x54\xc7\xb9\x4e\x54\ +\xfe\xd5\xb7\xd4\x6c\x22\x99\x3d\x58\x4f\x23\x3b\x76\xac\x89\x63\ +\x92\x16\xdf\x8f\xd8\xd5\x99\x4a\x00\x71\x50\xca\x18\x55\xe4\x50\ +\xe0\xe3\x62\x7b\x52\xec\x25\x8c\xf3\x91\x5b\x44\x10\x55\xaa\xe4\ +\x87\x88\x82\x77\xc5\x41\x91\x58\x7b\x81\x1f\x35\x41\xb9\xd2\xa7\ +\x24\xf3\x8e\xd5\x06\x85\xad\xbc\xf7\x0e\x12\x30\x4f\x93\xd8\x56\ +\x86\x16\xda\x1f\xc3\xc4\x76\x1b\xbb\x7f\x51\xa2\x4d\x74\x74\x68\ +\x8d\x44\x6b\xe1\x6b\x3e\xea\x75\x8d\x79\xdf\xb0\xac\xf3\x45\x2f\ +\x67\x23\xd8\x9c\x9f\xda\x84\x87\x45\xb3\x26\x7f\xc4\x60\x4f\xe9\ +\xff\x00\x7a\xa2\xe5\xdb\x53\x72\x7f\x61\x57\x0a\x65\x93\x0a\x36\ +\x1b\x7e\x95\xad\x02\x59\x45\xad\xb5\x1e\x05\x7a\x0e\x97\x6b\xa0\ +\x09\x24\x1b\xf6\x1e\x28\x3d\x16\xc8\x2a\x89\x64\x18\x03\xe9\x15\ +\x6e\xb3\xd5\x62\xb3\x8c\xa2\x1d\x52\x9e\x14\x57\x2c\xb2\xf2\xba\ +\x8a\x6b\xa8\x5e\xc1\x69\x09\x79\x1c\x7c\x0a\xf3\x5d\x43\xa8\x4f\ +\x7d\x26\x01\x2b\x1f\x81\x41\x93\xd7\xbc\x98\xcd\x70\x4e\xfd\x8f\ +\x02\x8a\x88\x89\xc6\xf5\xac\x30\x90\xb5\x58\xd4\x28\xda\xb6\x6c\ +\x67\x4b\x2e\x91\xeb\xae\x4b\x37\x35\x94\xda\x48\xd8\x60\x8e\xd4\ +\x79\x98\xc9\xd1\x1a\x34\xdd\xa3\x6c\x91\xf1\x56\xcd\xa1\x4b\xfb\ +\xfb\x9b\xd9\xb1\xb9\xcf\x0a\x2b\x47\xa1\xf4\x75\x8d\x3f\x17\x7d\ +\xed\x0b\xb8\x53\xda\xa9\xfc\x2d\xe8\xc3\x69\x35\xcc\x8a\x09\x43\ +\xb5\x57\xa8\x5f\xcf\x74\x70\xcd\xa5\x3b\x28\xe2\xb5\x95\xbf\xeb\ +\x8a\x89\xd5\xaf\x8d\xcb\xfa\x68\x34\xc2\x9f\x48\xf3\x4b\xda\xa8\ +\x2d\x93\xbd\x06\x8b\x6a\x48\x93\x03\xbd\x35\xa8\x8d\x28\xc0\x10\ +\x1c\x73\x46\xb5\x1a\x63\x04\x77\xe6\x87\x18\xfe\x41\xc6\xe4\xd5\ +\xa1\x60\x23\xd2\xd9\x07\x3d\xc5\x49\xce\x22\xf3\xa3\x3b\x7a\x88\ +\x77\x5e\xd4\x04\x56\x57\xf5\x21\xdb\x07\x3a\x7b\x8f\xfb\x53\x0a\ +\x7b\x83\x50\xe8\xaf\xee\xc6\x0f\x91\x49\x65\x9a\xa2\x4d\xcc\x17\ +\x63\x4d\xca\x80\xc7\x6d\x63\x9f\xd7\xcd\x23\x7f\xd3\x9e\x2f\x7c\ +\x64\x32\x1e\x08\xe2\x98\x91\x3f\xf9\x54\x91\xfd\x4b\xfe\xf5\x30\ +\xc9\x24\x1b\xaf\xba\x33\xb1\x07\x8f\xfb\x54\xf1\xb8\xf4\x32\x51\ +\x9e\x37\x04\x12\xac\x0d\x69\x5b\x5c\x89\xfd\xf8\xc4\xa0\x7b\xc0\ +\xfc\xc3\xcf\xdc\x53\x12\x5a\x5a\x5e\xc7\xa9\x1b\xd2\x93\xc1\xe0\ +\x56\x6d\xd5\x9d\xd5\x9c\x81\x8a\xb6\x01\xc8\x71\xc5\x5d\xcc\xb8\ +\x14\xbb\x88\x47\x78\xa5\x7e\x97\x20\x8a\xf5\x16\xc8\x7f\x0a\xa0\ +\xef\xb5\x79\xf9\xff\x00\x9b\x6d\x1c\x9a\x70\x43\x83\x8f\xd6\xbd\ +\x1c\x8e\xb0\xdb\x2e\xa3\x8d\xaa\x77\xc2\x95\x99\x74\xb6\xa5\xe3\ +\xbd\x56\x29\x0c\x32\x6b\x4d\xd5\xb6\x65\xf3\x4b\x7e\x2c\x89\xcf\ +\x74\x26\x99\x5c\x32\xec\x72\x0f\x15\x73\xc3\x49\x19\x3d\x72\xc1\ +\x41\x37\x10\x8c\xc6\xdf\x50\xac\x29\xe2\x29\x21\x1f\xd8\xf9\xaf\ +\x5e\xe0\xa8\x2a\x46\x54\xf2\x2b\x17\xaa\xd9\x7b\x48\x51\xf4\xee\ +\xb5\x31\xba\xe2\xab\x20\x67\x3a\xd3\x66\x1f\xbd\x11\x18\x91\xea\ +\x47\xed\x23\xea\x1e\x28\x64\x10\x72\x39\x15\x28\x48\x3e\xac\x78\ +\xd4\x39\x1e\x6b\x5d\x23\x4f\xa6\x75\x16\x88\x81\xfd\xd4\xf7\xad\ +\x5d\x16\xf7\xb1\xe6\x2d\x21\x8f\x28\x78\x35\xe7\x30\xb3\x21\x92\ +\x2d\x98\x7d\x49\xe3\xed\x44\xb4\xba\x78\xdc\x64\x90\x47\x7a\xc6\ +\x58\xef\xa5\xd9\xcb\xbb\x07\x47\x3a\x46\x0f\xf4\x9f\xf6\x34\x9b\ +\xa1\x53\x86\x04\x1f\x06\xb6\xed\xaf\xe3\x99\x04\x77\x2a\x08\xfe\ +\xaa\xbc\xb6\xaa\xf1\xe6\x16\x59\x13\xfa\x58\x03\x52\x65\x67\x14\ +\xd3\xce\xb4\x28\x4e\xe9\x9a\x95\x8c\x28\xd9\x40\xad\x76\x86\x04\ +\x38\x7b\x55\xcf\xfd\x47\xfe\x6a\xd1\x0b\x35\x1b\xda\x29\x3f\x3b\ +\xff\x00\xad\x6b\xcb\xf4\x8c\xeb\xcb\xa0\x9e\xd5\xdc\xd2\x63\x53\ +\x36\xa6\xdc\x9e\x05\x46\x34\xee\x72\x58\xd1\x10\x15\x1f\xe7\x6d\ +\xbe\xc2\xb4\x2c\xa0\x9f\x62\xee\x4f\x26\xb6\xba\x3f\x4f\x0a\xa2\ +\x59\x46\x07\x20\x1a\x17\x44\xb1\x1a\x7d\x69\x86\x00\xdf\x7a\xa7\ +\x58\xea\x85\xc9\xb7\xb5\x60\x14\x6c\xcf\x5c\xf2\xb7\x2b\xe3\x14\ +\x6e\xb5\xd5\xc4\x47\xf0\xf6\x9e\xe7\xe0\x91\xc0\xac\x84\x4c\x31\ +\x92\x66\xd6\xe7\x92\x6a\x8b\xa5\x3e\x9d\xc9\xe5\x8d\x76\xe4\xf9\ +\xad\xe3\x8c\xc6\x20\xad\x22\x8f\x9f\xb5\x74\x77\x01\x5b\x3e\x98\ +\xa1\x84\x63\x53\xe9\x9a\xd0\x60\xb4\x32\x6e\x87\x4b\x78\x35\xd1\ +\x3b\x45\x20\x61\xfa\x8e\xc4\x52\xc5\x18\x76\xa9\x49\x19\x76\x3b\ +\x8f\x06\xa5\x0d\x5a\xca\x96\xd3\xba\xe3\xf9\x17\x1b\x7f\xd0\x6a\ +\x92\x21\x47\x28\xdc\x83\x55\x52\x8e\x84\x1d\xd4\xec\x47\x71\x50\ +\x5e\x50\x00\x75\x12\x60\x60\x30\x38\x3f\xad\x20\x9a\xea\xa9\x73\ +\x9f\xa4\x2f\xdc\xe6\xaa\xf2\xf6\x5d\xf3\xe3\x6a\xa0\xe9\x2c\x88\ +\x76\x72\x28\xa9\xd4\x25\x5d\xb5\xa9\xfb\xd0\x2d\x2c\xae\x6e\x9b\ +\xd8\xa4\x0f\x34\xf1\xe9\x30\x42\x99\xb8\x98\x06\xac\x5b\x8a\xba\ +\xde\xf9\x59\x80\x75\xd0\x4f\xe6\x1c\x7e\xa2\xb5\xba\x5c\xd1\x33\ +\x7a\x52\x28\x3a\xb8\x3e\x6b\x15\x6d\xed\xd9\x75\x42\xe2\x48\xf5\ +\x69\x24\x0c\x15\x34\x78\x01\x82\x71\x10\x3e\xd2\x35\x21\xf1\xe4\ +\x52\xea\xc1\xad\x75\x6d\xa3\x2d\x1e\xe9\xdc\x1e\xd4\x9b\x46\x41\ +\xd5\x16\xc7\xba\xf9\xad\x4b\x59\x3d\x58\x15\xfb\x91\xbd\x0e\xea\ +\xd8\x37\xba\x31\x83\xdc\x79\xa9\x8e\x76\x71\x4d\x33\x15\x03\x36\ +\x13\xf9\x6f\xe3\x38\xfe\xd5\x75\x92\xee\x0c\x86\x52\x57\xbe\xa1\ +\x90\x6a\xd2\xc6\xad\x90\xc3\x07\xcd\x42\x2c\xf1\x9c\x47\x2e\xdf\ +\x7a\xde\xb1\xa8\xe8\x90\x4f\x22\x96\x41\x1c\x4a\x43\x39\x19\xc0\ +\xc1\xff\x00\xb5\x5b\xaa\xde\x7e\x26\x5c\x26\x42\x0e\x07\x9a\x1c\ +\xe2\x77\x04\xc8\xd9\x03\xb5\x2f\x82\x4d\x6f\x0c\x64\xe4\x76\x68\ +\xb6\xd3\xb4\x67\x19\xdb\xc5\x0c\x21\xc5\x54\xec\x6b\x5b\xd8\xd3\ +\x47\x59\x13\x3b\x1a\xa4\xb1\x87\x5c\x1f\xd2\x92\x8a\x46\x43\xb1\ +\xa6\xa1\x9c\x30\xc1\xae\x79\x61\xee\x11\x87\xd6\xad\x3d\x19\x7d\ +\x45\x1e\xd3\xcd\x67\xee\xac\x19\x7f\x51\xe6\xbd\x5d\xf4\x0b\x34\ +\x2c\xa7\x7c\x8d\xab\xcd\x5d\x44\x62\x98\xa1\x18\x19\xa9\x39\x80\ +\x7e\xe0\x44\xd0\x9c\x30\xe6\x8c\x81\x2e\xd0\xbc\x60\x2c\xa3\xea\ +\x4f\x3f\x22\x80\x32\x8c\x58\x7e\xa2\xac\xca\x75\x09\xa0\x38\x61\ +\xbe\xd5\x9e\x95\x68\xa5\x78\xce\x37\x23\xb8\xf1\x5a\x16\xb7\x5e\ +\xd0\x51\xc8\xfb\x52\xf1\x7a\x5d\x41\x3d\xb8\x8e\xe4\x72\x0f\x0f\ +\xff\x00\x7a\x59\x95\x92\x42\xa4\x14\x71\xcd\x5e\xd1\xb2\x6e\x19\ +\xc6\x19\xb3\x54\x67\xf9\xac\xe8\xee\x99\x76\x90\x03\x8a\xe9\xae\ +\x98\x8d\x09\xde\x9a\x02\x4d\x8f\xa8\xe3\x7f\xca\x2b\x4b\xa3\x59\ +\x7a\x8d\xeb\x4b\xb2\x2e\xfb\xf7\xa1\x74\xbb\x36\xb9\x93\xd4\x7d\ +\xa3\x5a\x27\x56\xbf\x04\x7e\x16\xd8\xe1\x06\xc4\x8a\xcd\xb6\xdd\ +\x45\x4f\x59\xea\x1e\xa1\xfc\x35\xb1\xd2\x83\x66\x61\xde\xb3\x94\ +\x60\x60\x0a\xe4\x5e\xc2\x89\x1e\x95\x18\xc1\x63\x5a\x92\x63\x11\ +\x09\x19\x3d\xa8\xa9\x1a\x2a\x92\xf2\x2a\xe2\xb8\x25\xc3\x0c\x05\ +\x20\x1f\x1b\x55\xe2\xb1\x62\x32\xd5\x2e\x4a\x13\xcb\x18\xda\x35\ +\x67\x3e\x78\x15\x46\x9a\x61\xc4\x48\x3f\xbd\x30\x62\x0b\xb2\xf0\ +\x2a\x0a\x8a\x9b\xd8\x42\xe2\xea\xe2\x35\xd5\xe9\xa9\x03\xe2\xaf\ +\x65\x77\x1d\xda\xee\xba\x1b\xef\xb5\x1a\x78\xc3\x29\x04\x67\x35\ +\x94\x0b\xf4\xee\xa0\x1c\x2e\xa8\x89\xf7\x29\xaa\x8d\x57\x89\xd1\ +\xb6\x06\xaa\x59\xf8\x24\xd6\xad\xb4\x31\x5c\x40\xb2\xc6\x75\x44\ +\xe3\x2b\xe4\x51\xbf\xf0\xd4\x2c\x08\x62\x45\x4f\x39\xed\x74\xc5\ +\x48\xde\x43\x80\x39\xad\x6e\x99\xd2\x81\x02\x49\xb6\x14\xed\xbd\ +\xac\x36\xe9\xa9\x80\xda\x94\xea\x9d\x4c\x05\x29\x19\xc0\x1d\xeb\ +\x37\x2b\x97\x10\x1e\xfa\xfa\x1b\x48\xbd\x38\x30\x08\x1d\xab\x0a\ +\x7b\x89\xef\x27\x08\xb9\x25\x8e\x00\xf3\x41\x96\x47\x9a\x4c\x0c\ +\x9c\x9d\x85\x6f\x74\x4e\x9e\x2d\x13\xd5\x94\x03\x2b\x0f\xff\x00\ +\x51\x5a\xd4\xc6\x1d\xa6\xde\xd1\x6d\x6d\x62\xb6\x1b\xbc\x8e\x0b\ +\x7e\x95\x5e\xa6\xbe\x93\x46\x41\xfa\x1c\x53\x76\x2d\xeb\x5d\x1b\ +\x83\xc0\xf6\xc7\xf2\x3b\x9a\x57\xae\x36\x5b\x1d\xcb\x8a\x98\xf6\ +\x56\xaf\x40\x60\x49\x43\xc0\x6a\xd6\x9e\xde\x32\xd8\x56\xd2\xde\ +\x0d\x63\x74\x13\x8b\x96\x1f\xe6\x14\xff\x00\x5e\x94\xc7\x26\x54\ +\xef\x59\xca\x6f\x20\x2b\xdb\x4d\x4d\xc6\x97\xfd\x8d\x21\x2c\x6d\ +\x1b\x69\x61\x83\x4d\xda\xf5\x13\xb2\xcc\xba\xbc\x1a\xee\xb6\xca\ +\x66\x4c\x0c\x7b\x73\x57\x1b\x65\x29\x33\xf4\x63\xcd\x04\xa6\xf4\ +\x62\x73\x55\x66\x55\x5d\x4d\xc0\xfd\xeb\xa4\xa8\xa1\x42\x3e\xd4\ +\x19\xd7\x1b\xd5\x65\xbc\x19\xc6\xa0\x3e\x06\xf5\x45\x9d\x5f\x87\ +\x06\xb7\x05\x80\xc9\xc5\x48\xca\x9f\x91\x55\x15\x7d\x61\x97\xdc\ +\x37\x15\xbd\xe8\x33\x6f\x28\x6f\x6b\x56\x77\x5f\x80\x16\xcf\x91\ +\x45\x49\x01\x3e\xd3\xc5\x57\xa8\xbb\x49\x6e\x7b\x90\x2b\x3a\x97\ +\x98\x31\x88\x38\xdf\xea\x5d\x8d\x44\x6d\xe9\x36\x47\xd2\xdf\xb5\ +\x16\x61\xa5\xd5\xff\x00\x2b\x8d\xfe\x0d\x0a\x40\x06\x57\xb1\xac\ +\x71\x44\xce\x85\x48\x9e\x23\x82\x37\xda\x99\xbe\x90\xcd\x65\x6f\ +\x72\xc0\x07\x6c\xa9\x3e\x71\x49\x96\x22\xd0\x8c\x9d\xce\x05\x31\ +\x76\x34\xac\x36\xe3\xf2\x26\x4f\xdc\xd6\x62\x82\xea\x59\xc7\xda\ +\xb8\xe1\x06\x2a\xcc\xc0\x0a\xa2\xee\x75\x37\x02\xb6\x8d\x1e\xa7\ +\x76\x12\x3f\xc2\x5a\xec\xa3\x66\x23\xbd\x25\x1a\x66\xaa\x4a\xa0\ +\xcb\x1a\x19\x92\x47\x38\x5f\x68\xa9\x8e\x1c\x70\x1c\x55\x88\x0f\ +\xe6\x48\x17\xe2\x89\x14\xf6\xa8\xfa\x63\x5d\x44\xf7\xac\xe2\xb8\ +\x1b\x9a\x7f\xa3\x59\xfa\x8f\xea\xb0\xf6\x8e\x2a\xe5\x84\x93\x75\ +\x5a\x70\x7b\xd3\x56\x30\x29\x7b\xc9\x80\x3e\x9a\x77\xa3\x5f\x4e\ +\x21\x8b\x0b\xfa\x0f\x35\x94\xcc\xcc\xc4\x93\x96\x3c\x9f\x15\xc1\ +\x45\x9a\x5d\xb4\x21\xff\x00\xa9\xa9\x37\x9b\x0d\xb1\x62\x3c\xd4\ +\xdc\x3e\x7f\x96\x9c\x77\x35\xd6\xf1\x99\x1c\x46\xbf\xad\x75\xc7\ +\x1d\x4d\xd4\x5e\x39\xc3\x6c\x4d\x52\xfa\x11\x2c\x7f\x15\x79\xed\ +\xd1\x49\xf4\xd8\x92\x3c\xd5\x23\x90\xee\x8f\x4e\xfa\x43\x5f\xc2\ +\x73\x98\xcb\x59\xc8\x76\x3b\xa5\x6f\xc9\x30\x86\x02\xc7\xb5\x79\ +\x3f\x74\x53\xac\x89\xb1\x53\x90\x6b\x7d\xa6\x17\x9d\x33\xd4\x53\ +\xbe\x37\x1e\x0d\x73\xca\x72\xb0\xaf\x52\xea\x0c\xeb\x8c\xe0\x78\ +\xac\xb9\x1d\xa4\x7e\xff\x00\x02\xba\x7c\x99\x48\x27\x35\xb5\xd0\ +\xfa\x68\x8a\x31\x75\x70\x32\x4f\xd0\xb5\xbe\x31\x88\xb7\x44\xe9\ +\xe2\xdd\x44\xf3\xae\x64\x3b\xaa\x9e\xd4\xdd\xf4\x85\xcf\xe1\x90\ +\xfb\xdf\x77\x3f\xd2\x2a\xd7\x53\x7a\x30\x99\x5b\x77\x3b\x20\xa3\ +\x74\x0b\x12\x75\x5c\x4f\xbf\xe6\x62\x7b\x9f\x15\x8b\x7d\xd5\x5a\ +\x08\xc4\x2a\x18\x8c\x05\x4d\x87\x8a\xc8\xea\x04\xc9\x77\x12\x9e\ +\x4b\x67\xf7\xad\x7e\xa3\x27\xb4\x81\xf9\x8e\x6b\x12\x59\x14\xf5\ +\x20\x49\xd9\x76\xad\x61\xf9\x2b\x6b\xa2\x3a\xac\xe4\x9d\xf7\xcd\ +\x37\xfc\x40\xa4\x95\x90\x6e\xad\xde\xb1\xe3\x79\x23\x6d\x69\xc7\ +\xc5\x3b\x1f\x53\x62\x9e\x9c\xf1\x07\x5f\x9a\x96\x73\xb8\x01\x57\ +\x77\x2e\x72\x4e\xe0\x62\x8c\x12\xda\xe7\xff\x00\x4e\xc6\x37\xfe\ +\x86\xe0\xfd\x8d\x01\x83\x23\x15\x60\x41\x1c\x83\x52\x71\x4a\x87\ +\x65\x45\xd4\xdc\x0a\xcf\x9a\x76\xba\x93\x0a\x48\x40\x71\xff\x00\ +\xd5\x4f\x57\x9c\xed\x0a\x1d\xcf\x34\x95\xc4\xde\x92\x7a\x51\xf3\ +\xdc\xd7\x44\x30\xf3\xc5\x11\xd2\x8b\xab\x1c\x81\x54\x33\x5b\xbf\ +\xf8\x88\x50\x9e\x0d\x67\xe4\xe6\x88\x92\x63\xda\xfe\xe5\x34\xd0\ +\x7d\x43\xae\xf1\xbe\xb5\xf1\x57\x8e\x65\x62\x41\xf6\x91\xd8\xd2\ +\x2a\x5e\x1f\x7c\x4c\x4a\x78\xf1\x4c\x45\x2c\x77\x03\x0d\xed\x6f\ +\x35\xad\xd8\x2d\x78\x8d\xfe\x2c\x5c\x8e\x7e\x6b\xad\xae\x16\x54\ +\xd2\xdb\x37\x71\x52\x1d\xe2\x3a\x64\x19\x07\x83\x4a\xde\xa0\x8d\ +\xc4\x91\x9f\xaa\xac\xfd\x0a\xdf\xa0\x54\x75\xf0\x72\x29\x69\xdb\ +\x6c\xf7\xa2\xdd\x39\x7c\x67\xb9\x19\xa0\xbf\xba\x4c\x76\x1b\x9a\ +\x82\x60\x4d\x52\x47\x19\xe1\x7d\xed\xf6\xab\x4d\x2f\xa9\x2b\xca\ +\x76\xd4\x76\x15\xc8\x74\xdb\x96\xe1\xa6\x3f\xd9\x68\x5f\x51\xf8\ +\xa9\x04\x8f\x73\x64\xf0\x29\xab\x0b\x57\xb9\x90\x6d\x84\x1d\xea\ +\x96\x56\xed\x71\x28\x55\x04\x28\xe4\xd3\xbd\x42\xe5\x2d\xe1\x16\ +\xd6\xfc\xfe\x63\x53\x2b\x7a\x9d\x8c\xc6\x80\x86\xfe\x63\x64\xd4\ +\xec\xa3\x15\x53\x29\x66\x21\x01\x63\xf1\x52\x90\x3b\x90\x65\x27\ +\x1f\xd2\x0f\x3f\xad\x76\xf2\x98\xf6\x22\x22\x25\x98\x20\xdf\x7d\ +\xf1\x5b\x22\x68\xed\xe1\x09\x8d\xf1\xf4\x8a\x42\x2d\x31\x02\xb1\ +\x28\x51\xe1\x7f\xe6\xa5\x62\x67\x7d\xff\x00\xb0\xae\x19\xe5\x72\ +\xab\x13\x23\xb4\xf2\x6a\x24\xf8\xa1\x5d\x48\x10\x7a\x69\xc9\xe6\ +\x8d\x78\xc2\xdd\x74\x29\x05\xcf\x6f\xe9\xa4\xcf\xb4\x12\x77\x26\ +\x98\x63\xb2\xa0\x0c\x6c\x37\x26\x9e\x44\x16\xd6\xf8\xff\x00\xdc\ +\x7e\x7e\x2a\x3a\x64\x01\x54\xdc\xcb\xc0\xfa\x73\x55\x91\xfd\x49\ +\x4b\x53\x2c\xbc\xae\xa0\x90\x36\xde\x83\x71\x16\xa1\x90\x37\x14\ +\x65\xae\x62\x01\xc1\xa2\x14\x53\xa9\x74\xb1\xc1\x1c\x53\x3d\x2a\ +\xe4\xdb\xcc\x63\x73\x88\xdf\x63\xf1\x43\xb8\x8b\x57\xb9\x79\x14\ +\x0c\xe7\x63\xc8\xa6\xb6\x18\xea\x11\xfa\x57\x59\x1b\x82\x72\x0f\ +\x9a\xf4\x76\x72\xa4\xb1\x44\xe3\xe8\xf4\xc6\x3e\x3c\xd7\x9d\x8d\ +\xfd\x7b\x7f\x49\xcf\xbd\x07\xb4\x9e\xe3\xc5\x3d\xfc\x3b\x71\x84\ +\x30\x31\x39\x53\x95\xfb\x77\xa9\x79\x8a\xd0\xb0\x88\xf5\x0e\xa7\ +\xea\x6f\xa1\x5b\x08\x3c\x0f\x35\xe8\x2f\x15\x61\xb4\x58\xa3\x18\ +\x07\x6a\xc9\xfe\x17\x2b\x14\x97\x08\x4e\x19\x4e\x40\xf2\x0d\x6c\ +\x48\x16\xe6\x15\xd2\xf8\x22\xb9\xe5\xda\xb0\xaf\x89\x69\x88\xe0\ +\x0d\x85\x65\xbd\x9b\xb3\x93\xa8\x57\xa6\xba\xb7\x82\x35\xd7\x70\ +\xe8\xa0\x56\x55\xef\x57\xb3\x84\x14\xb5\x84\x48\xc3\xf3\x37\x15\ +\xd3\x1b\x7d\x25\x20\xb6\x57\x24\x7b\x5c\xfe\x99\xa1\xcf\x15\xd4\ +\x1f\x51\x6a\xb4\x97\xb7\xf7\x5c\x48\x51\x3e\x3d\xa2\xac\xa9\x70\ +\xd0\xe2\x59\x88\x4f\xea\x6d\x87\xef\xcd\x6b\xae\xc0\x6d\x6e\x24\ +\x49\x41\xd6\x70\x4d\x6a\x5d\xdc\x0d\x3e\xa3\x9d\xca\x8c\x9a\xc9\ +\x2b\x00\x7c\x25\xca\x16\xed\x9c\xe0\xfe\xb8\xa1\xde\xdc\x4a\xcf\ +\xa1\x86\x9c\x72\x29\x64\xb5\x13\x2c\xd9\x99\xa6\x3c\x9d\x80\xa5\ +\xc0\x69\x1f\x61\x92\x6b\x91\x4b\xb6\x33\xfa\xd3\xd6\x6b\x1a\x0c\ +\x0c\x13\xe6\xb4\x16\xfc\x14\xf8\xc8\x23\x8a\x0a\xfb\xbd\xa7\xea\ +\x1f\xbd\x6d\x0d\xd6\xb3\xfa\x9c\x1a\x64\xf5\x54\x60\x37\x38\xec\ +\x6a\xd9\xa0\xbc\x52\x14\x3e\x47\x71\x52\xe5\x35\x6a\x4c\xa9\xa1\ +\x33\x31\x23\xda\x09\xff\x00\x5a\xbc\x70\xcd\x21\xf6\xae\x91\xe4\ +\xd4\xd6\x83\x96\xd3\x89\x07\xa7\x20\xcd\x06\xe8\xe2\x3d\x3f\xe6\ +\xa0\xdb\x6b\x8e\xf0\x23\xf3\x44\xbd\x61\xab\x63\xc6\x4d\x27\x14\ +\x2f\x21\xf7\x6f\xd8\x55\x61\x5d\x6e\x01\xfc\xdb\xb1\xf0\x2a\x1c\ +\x82\xd8\xf2\x72\x6a\xed\xec\x88\x8f\xcd\x26\xe7\xe0\x76\x15\x28\ +\x89\x9b\x5c\x9b\x6c\xa3\x65\x1e\x05\x5e\xda\x17\x9a\x41\x1a\x0f\ +\xbd\x52\x18\xd9\xdc\x2a\x8c\x93\x5a\x2e\xc9\x61\x6f\xa5\x77\x95\ +\xbf\x6a\x96\xe8\x4d\xd4\xc9\x65\x07\xe1\xe1\x23\xd4\x23\xdc\x7c\ +\x56\x69\x6c\x1c\xb1\xc9\x27\xfb\xd4\x3b\x9c\xeb\x73\x96\x35\x54\ +\x0c\x5b\xd4\x6d\xb0\x72\x2b\x58\x60\x1b\x8a\x10\x83\x03\x6a\xb8\ +\x45\xce\xfb\xfd\xe8\x2b\x70\x73\x82\x06\x0d\x31\x19\x57\x5d\x42\ +\xb9\xd9\xa5\x12\xde\x03\x23\xe9\x50\x07\xfb\x54\xde\xdd\x43\x6d\ +\x98\x20\x21\xe6\xc6\xed\xd9\x6a\xf3\x49\xe8\x74\xa9\x25\x41\xee\ +\xc7\x35\x93\x6e\xa0\x46\x0f\x2c\x77\x27\xcd\x31\xc7\xca\x8b\xe3\ +\x72\xcc\x72\xc7\x92\x68\xb6\x56\xe6\xe6\x7f\xf2\xaf\x35\x48\x91\ +\xa6\x94\x46\x9c\x9a\xd5\x40\x96\xb6\xba\x57\xb0\xdc\xf9\xad\x7c\ +\x99\x6a\x6a\x12\x16\xea\x72\x84\x41\x12\xed\x8a\x52\x32\x58\xe9\ +\x15\x4b\xa9\x0c\xb3\x12\x3c\xd3\x08\x12\xd6\x0d\x6f\x82\xed\xc0\ +\xac\x4e\x20\xb4\x8c\xb0\x45\x96\xdd\x8f\x02\x92\x77\x67\x6d\x44\ +\x9d\xeb\xa5\x76\x96\x42\xef\xdf\x81\x4e\x74\x9b\x07\xb9\x94\x0c\ +\x1c\x7f\xa5\x6e\x4d\x4d\xd4\x29\x1c\xac\xbf\x22\xaf\x22\xac\x8b\ +\xad\x4e\xe2\xbd\x15\xe7\x40\xb6\xf4\xc0\x0f\xa1\xf1\xde\xb1\xfa\ +\x87\x4b\xba\xb3\x3a\xd4\x6b\x4f\xea\x5d\xf1\x52\x65\x2a\xe8\x82\ +\xb1\x0d\x91\xb3\x0a\x3c\x73\x14\x99\x6e\x13\xea\x07\xdc\x3c\xd0\ +\x8e\x97\x19\xe1\xaa\xa0\x90\x6a\xa3\xd3\x59\xce\x89\x71\x15\xd2\ +\x9f\x63\xae\x97\x3f\x07\x8a\x8e\xa1\x7d\x3d\xaa\x95\x46\x20\xe7\ +\x15\x8f\xd2\xae\x82\x66\x09\x0f\xf2\xdf\x8f\x8a\xd0\xbd\x43\x35\ +\xb1\x07\x77\x41\xcf\xf5\x0f\x35\x27\x7c\xa9\x66\xfc\x6d\xd8\xd6\ +\xe5\xb4\x77\x63\xb0\xa2\xda\xda\x2b\x1f\xe5\xae\xb2\x39\x76\xd9\ +\x45\x75\x90\xf5\xbf\x0f\x1b\x13\xa7\x24\x11\x9f\x14\x3e\xab\x7a\ +\xe5\x8c\x11\x00\x91\xae\xd8\x1b\x52\xdb\xbd\x44\x16\xe2\xe6\xde\ +\xdb\x64\xc4\xd2\xff\x00\x51\x1e\xd1\xf6\x15\x97\x7b\x77\x2c\xf2\ +\xfb\x9c\xbb\xf8\xec\x28\x32\x39\x76\x2b\x19\xfb\xb5\x58\x28\x88\ +\x61\x46\x5c\xd5\x93\x43\x95\x7d\xc0\x13\x96\xe4\xfc\x53\xb7\x31\ +\x34\x97\x0a\x80\x7b\xb4\x0c\xe7\xed\x43\xb0\x84\x34\xc1\x58\xed\ +\xf5\x39\xf8\xa7\x6c\x07\xab\x77\x2c\xc7\x81\xb0\xa6\xf4\x12\x36\ +\xd3\x01\xc6\x2b\xad\xd9\x96\x60\x3e\x77\xad\x2b\xc9\x16\x38\xce\ +\x69\x0b\x24\x32\x4a\x5f\x1b\x03\x5b\xef\x1d\x8d\x18\xcf\xb2\xb9\ +\xb7\x1b\xd4\x20\xda\xa6\xad\xe6\x0a\x2c\x51\xaf\x0a\x07\xe9\x5c\ +\xc3\x02\xaf\x43\x9d\xc2\xa1\xfb\x57\x3a\x33\xc6\xfd\x41\xdb\xfa\ +\x45\x2f\x70\xf9\x63\xe2\xaf\xac\xe8\x79\x4f\x32\x1f\xda\x97\x39\ +\x63\x5a\x82\xd1\x0c\x9d\x4d\xc0\xdc\xff\x00\xb0\xa9\xf7\x3c\x99\ +\xc6\x49\x3c\x57\x1e\x02\x0f\xd7\xef\x4f\xda\xc4\x96\xd0\xfe\x22\ +\x5e\x71\xed\x15\x9b\x74\x2d\x10\x8e\xc6\x0d\x6f\xbc\xac\x36\x1e\ +\x2b\x3e\x79\x4b\x39\x77\x39\x24\xd5\xae\x25\x79\xa5\xce\x0b\x33\ +\x6c\x00\xa3\x7a\x31\xda\x47\xea\x5c\x10\xd3\x1e\x13\xfa\x69\x8c\ +\xd7\x37\xb5\x02\x38\xf4\xff\x00\x36\x5e\x7b\x29\xaa\x3b\x7a\x8d\ +\xe9\xaf\x27\x93\x56\x29\x24\xc4\xbc\x87\x48\xf1\x44\x8b\xd2\x8d\ +\x72\xa7\x71\x5b\xb9\x6b\xa4\x04\x0c\xed\xc1\xa2\xdb\x4a\x63\x7c\ +\x37\x07\x9a\xe9\xe3\x1f\x52\xd0\xb3\x9e\x6a\x0d\x58\xf4\xcd\x6a\ +\xf0\xe4\x15\x71\xb1\xac\xb8\x83\x21\x68\x5f\x66\x43\x83\x46\xb2\ +\x9c\xc3\x20\x0c\x7d\x87\x9f\x8a\xbf\x59\x8c\x65\x2f\x23\xdf\xb3\ +\xe3\xb8\xac\x4e\x2a\x8b\xd2\x18\x28\x7d\x86\xa1\x51\xd4\xee\x4f\ +\xd1\xe6\x81\x69\x22\xa4\xc1\xb3\xed\x61\x83\x42\xea\x39\x17\x43\ +\x3c\x1e\x2a\x59\xf6\x3d\x09\x0b\x24\x09\xea\x38\xcb\xfe\x51\x42\ +\x95\xde\x46\xf5\x1f\xbf\x02\xab\x18\xd6\xc5\xdb\x7c\x53\x16\x50\ +\x34\xd2\x06\x23\xdb\xd8\x79\xad\xc9\x27\x35\x16\xe9\xf6\xaf\x3c\ +\xca\x31\x9c\x9d\x85\x7b\x1e\x93\x69\x1d\x9d\xa9\x91\x80\xc8\xfd\ +\xe8\x3f\xc3\xfd\x35\x63\x8c\x48\xe3\x0d\x8c\x9f\x81\x51\xd6\xaf\ +\x32\xde\x8c\x7b\x01\x5c\xb2\xb7\x3b\xa8\xa5\x3a\x8d\xc3\x4f\x70\ +\x4e\x76\x15\xd1\x25\xcc\x6b\x94\x39\x07\x90\x7b\xd0\x6d\xd7\x54\ +\xc0\x7c\xd6\x90\xc6\x77\xe2\xb5\x95\xd4\xd1\x18\xfd\x46\xc6\x2b\ +\x8c\x90\x82\x09\x7c\x8f\xa5\xbf\xe2\xb1\xae\x23\x78\xa4\x29\x28\ +\xc3\x0f\xde\xbd\xa4\x90\x47\x2c\x64\x66\xb3\x7a\x8f\x4f\x0e\x9a\ +\x5d\x75\x01\xc1\x1c\x8a\x98\xe7\x3a\x34\xf3\x35\xa9\xd2\xee\xcb\ +\xc6\x23\x63\xfc\xc4\xce\x9c\xfe\x61\xe2\x93\xbe\xb5\x7b\x77\xfe\ +\xa5\xec\xd4\x05\x25\x58\x30\x38\x20\xe4\x1a\xd2\x36\x58\x34\x32\ +\x89\x23\x3b\x67\x50\xf8\x3d\xc5\x21\xd6\x50\xac\x8e\xc9\xc3\x8c\ +\x83\x4d\xd8\x5c\xac\xe9\xa1\xfe\xbe\xff\x00\xf3\x53\x73\x09\x78\ +\x4c\x7d\xc6\xe9\xff\x00\x14\xdf\x2a\xc9\x85\xd5\x2d\xf5\x01\xbf\ +\x14\x58\x13\x4a\x7a\xae\x72\x5b\x7a\x01\x4d\x2c\xf1\xf6\xe4\x53\ +\x76\x84\x39\x84\x73\xbd\x69\x0c\x7f\x81\x66\x7f\xf9\x24\xdc\xfd\ +\xbb\x0a\x3d\xb3\x08\x2d\x37\x3c\x72\x7e\x69\x77\x26\x5b\xa2\x49\ +\xce\x9d\xfe\xf5\x17\xcc\x70\xb0\xae\xe4\x6e\x69\x20\xa4\xf2\xb5\ +\xc4\x81\x57\x38\xa7\xad\xa3\x11\xc6\x16\x85\x65\x6f\xa0\x6a\x3c\ +\xd3\x20\x56\xad\x13\x5d\xda\xa2\x56\x08\x3d\xc7\x7f\x14\x9d\xcd\ +\xc1\xf3\x8f\x8a\xce\xed\x06\x9e\xe5\x23\x07\x1b\x9a\x46\x59\x9d\ +\xd1\xf3\xcb\x6c\x28\x6c\xc5\x8d\x70\xd8\x67\xfa\x77\xa6\x80\xee\ +\x9b\xdf\xa5\x78\x1b\x0a\xa2\x8d\x2b\xf2\x6a\x57\x76\x2c\x69\xbb\ +\x28\x06\x9f\x5e\x73\x85\x1b\x80\x7b\xd2\xdd\x09\xb2\x81\x63\x8f\ +\xd7\x9b\x60\x38\x06\x85\x3c\xb2\xdd\x4e\x15\x14\xb1\xe1\x54\x51\ +\x24\x69\x2f\x26\xd2\x83\x08\xbf\xd8\x0f\x26\xba\x59\x23\xb7\x43\ +\x14\x07\x73\xf5\x3f\x73\xf6\xf8\xac\xce\xf7\x7b\x55\xa2\xf4\xed\ +\x01\xd3\x87\xb8\xee\xdf\x95\x3e\xd4\xb4\x92\x7b\xcb\x6e\xce\x79\ +\x63\x54\xcb\x3e\xc0\x6d\xe0\x55\x91\x54\x1d\xfd\xc7\xe3\xb5\x6b\ +\x48\xab\x33\x31\xdc\xe6\xbb\x43\x63\xe9\x34\x50\xf8\xd8\x05\x1f\ +\x6a\xba\x48\x78\x6c\x11\xf6\xaa\x07\x1b\x8e\xdf\xda\xa6\x48\xc3\ +\x2e\xa4\xa3\xf5\x1b\x07\x85\x8d\xc5\xb0\xd7\x0b\x6e\x31\xda\x94\ +\x8e\x42\x0e\x57\x63\xdc\x56\x65\x97\xa1\x53\x90\x70\x68\xd6\xb3\ +\x85\x1e\x9c\x9b\xa1\xdb\x7e\xd5\x0c\x16\x45\xca\xec\xd4\x22\x08\ +\x38\x35\x7b\x13\x24\x46\x09\x8c\x64\xe5\x1b\x74\x35\x37\xd9\x96\ +\xcb\x5f\xe7\x8f\x9a\xba\xb0\x96\x1f\x45\xf9\x07\x28\x7c\x1a\x1a\ +\x92\xac\xc1\xc6\xc7\xda\xe2\x94\x0a\xd5\xb5\x44\xd5\xe9\x7f\x84\ +\xa1\x49\x88\x2e\x33\xa4\x0c\x57\x97\x40\x61\xba\x68\xb9\x07\x71\ +\xf6\xaf\x5d\xfc\x24\x9f\x85\xe9\xad\x77\x21\xe7\x65\x1e\x6b\x39\ +\xdf\xaf\x0b\x1b\x1d\x56\xe9\x6d\x6d\xfd\x24\x3e\xe2\x37\xc5\x60\ +\x3b\x16\x62\xc4\xe4\x9a\x25\xdc\xcd\x3c\xc6\x46\x3c\xd0\xa9\x86\ +\x3e\x31\x0c\x59\x15\x46\xd4\xc7\x6a\x65\x67\x47\xe0\x71\x59\xd4\ +\x6b\x45\x25\xb2\x78\x14\xca\x7b\x58\x6e\x49\x04\x60\xb9\x6c\x0a\ +\x98\xee\xa2\x71\x82\xe0\xfc\x83\x59\x97\xf3\x09\x64\xd2\xbf\x4a\ +\xfe\xf4\xac\xb9\x8c\x65\x99\x57\xee\x71\x58\xf0\xd9\xb6\xb5\xec\ +\x11\xc9\x19\xd4\xa3\x07\xbf\x63\xf7\xac\x0e\xa3\x62\xf0\x31\x65\ +\x04\xa7\xfa\x53\x76\xb7\xce\x98\xc3\x87\x5e\xe3\x39\x06\x9d\x47\ +\x8a\xe1\x3f\x97\x8c\x9e\x63\x27\xfd\x29\x37\x89\xdb\xce\x23\x32\ +\x30\x65\x38\x22\xb5\x6c\xae\x44\xe3\x49\x38\x61\xbf\xeb\x42\xea\ +\x36\x38\x26\x48\x41\xdb\xea\x52\x37\x14\x84\x6c\xd1\xb8\x65\x38\ +\x22\xb7\xdc\x43\x3d\x5e\xd8\x86\xf5\x90\x6e\x39\x14\x0b\x46\xc1\ +\xc0\xdb\xf3\x2f\xdf\xc5\x69\xdb\x4c\x97\x56\xe5\x4e\x35\x63\x04\ +\x56\x55\xcc\x6f\x6f\x30\xc7\x19\xca\xd2\x5f\x41\xe8\xce\x2e\x01\ +\x1f\x9c\x66\x89\x68\xba\xa6\x91\x98\x64\xea\xa5\xa0\x7d\x51\x82\ +\xbc\xae\xe3\xfd\xc5\x33\x03\xe9\x9b\x23\x89\x06\x7f\x5a\xd4\x0d\ +\x8d\x85\x0e\x59\x82\xec\xa7\xf5\xa1\xdc\x4c\x73\xa7\xf6\x14\xa4\ +\xd2\x1c\xe0\xff\x00\x6a\x02\x4d\x2f\x3b\xef\x4b\x92\xcc\x7c\xe6\ +\xa4\x29\x66\xdf\x7a\xd3\xe9\xf6\x62\x35\xf5\xa6\x1f\x20\x1a\x99\ +\x65\x20\x5e\xd6\xd4\x24\x66\x69\x86\x30\x32\x05\x27\x78\xc0\xb3\ +\xb2\xf0\xdb\xd3\x7d\x56\xe8\xcb\x21\x44\xfa\x45\x24\x41\x2b\xc6\ +\x45\x4c\x65\xee\xaa\xf6\x56\xfa\x86\xb9\x3f\xc3\x5d\xcf\xcd\x5a\ +\xe6\x5f\x59\xf1\x9d\x31\xaf\x00\x50\xb5\xcb\xe9\x08\xf2\x0a\x8e\ +\x2a\x84\x7f\x51\xfe\xd4\xf1\xbb\x41\x1e\x7c\x27\xa7\x16\x42\xff\ +\x00\xad\x0f\x4e\x0e\x5c\xd5\x24\x95\x23\x5c\xf1\xfe\xb4\xbf\xe2\ +\x4c\x87\xda\x8e\x40\xec\xa2\xb5\x31\xd0\x68\x39\x63\xa5\x14\xb7\ +\xc0\xa2\xc5\x6b\x33\x9c\xbe\x54\x78\x1c\xd2\xa8\xfd\x43\x4e\x22\ +\x68\xe0\x1e\x02\xea\x3f\xde\xb8\x5b\x5c\x3b\x89\x1e\xf2\x76\x90\ +\x70\x43\x60\x7f\x6e\x29\xaa\x34\xe2\xe9\x4b\x32\x1f\x4e\x72\x1c\ +\x76\x6a\x5a\x7b\x7b\x9b\x56\xc4\xd1\x9d\x3f\xd4\x38\xa8\x49\x7a\ +\x94\x64\x1d\x69\x26\x3b\xb2\xe1\x8f\xea\x2b\x42\xcf\xad\x44\xea\ +\x20\xbd\x89\x97\x56\xd9\x61\xb5\x63\xef\x14\xad\x8d\xfc\xf6\x5f\ +\xcb\xd3\xea\x41\xfd\x3c\x91\x45\xbe\xb6\x8e\xe9\x3f\x15\x62\x41\ +\xfe\xa4\x1c\x8a\x50\xe2\xa2\x32\xf1\x4b\xea\xc0\xfa\x1c\x7f\x63\ +\xfa\x56\xee\x1c\xee\x22\x88\xc4\x36\x0e\x43\x0e\x68\x8e\x04\x83\ +\xc1\xa3\xbc\x90\x5e\x26\x2e\x53\xd1\x9c\x70\xeb\xc3\x52\xae\x1a\ +\x29\x74\x39\x07\xc1\x1d\xe8\x2a\x41\x07\x07\x63\x56\x95\xb5\x44\ +\x18\x8f\x76\x71\x9f\x22\xa2\x53\x9c\x79\xa0\xfb\xe7\x99\x61\x87\ +\x76\x63\x8a\xa0\xfd\x1a\xcd\xef\xfa\x88\x03\xe8\x5d\x8b\x1e\x00\ +\x15\xe9\x2e\xe6\x56\x45\x82\x21\xa6\x28\xc6\x00\xf3\xf3\x4b\x58\ +\xc2\x96\x56\x42\xde\x3f\xa8\x8f\xe6\x37\x9f\x8a\xba\x2b\x33\x00\ +\xa0\x93\x59\xd7\xb1\x00\x12\x70\x06\x4d\x39\x6d\x66\xe5\x75\x11\ +\xfd\xe8\xd6\x96\xe9\x02\x7a\x92\xee\xde\x2a\xb7\x17\x6c\x4e\x10\ +\xaa\x81\x58\xb9\xdb\xc4\x5d\x14\xba\x8f\xd3\x9b\x4e\x6a\x92\xb1\ +\x29\xe9\x26\x40\xee\x68\xf2\x24\xb3\x39\x25\x46\xc3\x76\xec\x2b\ +\x2b\xac\xf5\x48\x6d\x50\xc3\x6a\xe2\x49\x8f\xd5\x20\xe1\x7e\xd5\ +\x7b\x9a\x13\xd4\xae\x61\xb2\x8f\x4e\x43\x4c\x46\xc8\x3b\x7c\x9a\ +\xc8\x09\x25\xd3\x99\xa7\x62\x4b\x1a\x8b\x68\x9a\x56\xf5\xa5\x24\ +\xe4\xe7\x7e\x5a\x9f\x86\x3c\x8c\x9d\x80\xad\xc9\xa4\x29\xf8\x52\ +\x87\x54\x65\x90\xf9\x14\x48\xee\x6e\x21\x20\xba\xea\xff\x00\x32\ +\x9c\x1a\xbd\xe4\xe1\x13\x3f\xd8\x79\xa0\xb4\x97\x18\x19\x80\xe0\ +\xf9\x34\x1a\x96\xb7\xb1\xce\x06\xa6\xf7\x70\x1b\xfe\x68\x77\xf6\ +\xa2\x4f\x7a\x00\xaf\xf1\xc3\x7d\xab\x37\x28\x5b\x20\xb4\x4f\x4c\ +\x5b\xde\x3c\x5e\xd9\xb0\xcb\xe4\x56\x75\xf8\x02\x46\x78\x64\xc8\ +\xc8\x61\xcd\x3c\x4c\x77\xb6\xc4\x70\xe2\xa2\x78\x92\xe6\x3d\x68\ +\xc0\x9f\x23\x9f\xd6\x92\x05\xe1\x97\x6d\x98\x53\xb1\xd0\x3b\x43\ +\x31\x46\xe7\x34\xe4\x47\xdb\xa0\x7d\xd4\xd0\xae\x51\x6e\xe1\xf5\ +\x13\x69\x17\x91\xe6\x87\x6b\x21\x65\xd3\x9c\x32\x9d\xaa\xc0\x66\ +\x90\x97\x62\x76\x20\x55\x23\x1a\x8f\xcf\xee\x68\xd2\x28\x65\xf5\ +\x17\xb8\xc3\x0a\xa5\x89\x1f\x89\x4c\xf1\xa8\x66\xb4\x35\x3a\x65\ +\x90\x8d\x04\xf3\x8f\xfa\x54\xd0\xba\xc5\xe6\x47\xa6\xa6\x99\xeb\ +\x17\x26\x35\x2a\x2b\x09\xd8\xb3\x12\x7b\xd7\x2c\x66\xfe\xd5\x5c\ +\x37\x34\x54\x5c\x2e\x0d\x44\x4b\xdc\xd4\xc8\x74\xae\x6b\xb4\x88\ +\x0c\x8b\xb9\x00\xe2\xba\x34\x57\x3a\x58\xe1\xbb\x67\xbd\x4b\x12\ +\x4e\x4d\x4c\x41\x58\xe1\x94\x1a\xd5\x82\x45\x8b\x31\xe1\x4f\xdc\ +\xd1\x97\xa7\xc8\x17\xf2\x8f\xd4\x54\xc3\x10\x27\x09\x23\x29\xf0\ +\x77\xa3\x24\x13\x9e\x4e\xc3\xbd\x62\xec\x0d\x6d\x11\x37\x92\x40\ +\x7e\x05\x4b\x98\xd1\x72\xab\xa4\x79\xef\x5d\x70\x56\x2f\xa9\xb5\ +\x1f\x8a\x52\x47\x67\x39\x35\x66\x3f\x91\x69\x25\x66\x3b\x6c\x2a\ +\x8c\x75\x2e\x96\x01\x87\x83\x57\xb6\x89\xa5\x7c\x0e\x3b\x9a\xb5\ +\xcb\xa8\x6d\x11\x81\x85\xf8\xe6\xad\xb3\xa1\x47\x65\x27\x65\x15\ +\x42\x01\xf8\xae\xae\xa0\xa4\x84\xae\xd9\xd8\xd5\x5d\xb5\x15\x07\ +\xb5\x75\xc3\x70\x3b\xd5\x19\x82\x82\x7b\xd4\xa2\x27\x62\x4e\x95\ +\x19\x2c\x70\x00\xef\x5b\x1d\x22\xcc\x5a\xc5\xad\xc0\x32\xb7\x27\ +\xc7\xc5\x03\xa2\xd9\x85\x02\xe6\x61\xef\x3f\x40\x3f\x96\xb5\x11\ +\x0b\x1f\x8e\xe6\xb3\x47\x46\x85\xdb\x03\xfb\xd3\x70\x98\xe0\x5c\ +\x82\xab\xe5\xdc\xe0\x56\x67\x52\xea\x90\x59\xa9\x8e\x3c\x49\x20\ +\xfc\xa0\xff\x00\xa9\xac\x5b\xbb\x9b\xcb\xd7\xd5\x34\x87\x1d\x87\ +\x61\x59\xd5\xc9\x5e\x9e\x4e\xab\xd3\x52\x5c\x48\xe6\x66\x1d\xfb\ +\x0a\x15\xe7\xf1\x0d\x8c\x03\xf9\x10\x29\x3c\xf1\x5e\x55\xe1\x90\ +\x6e\x0e\xf5\x06\x30\x83\x54\xad\x92\x78\x1e\x6a\x78\x43\x67\xfa\ +\xaf\x5b\xbe\xbf\x52\x9a\xbd\x38\x87\x61\xb5\x2b\x67\x6d\xac\x7a\ +\x92\x6c\x9d\x87\x76\xa2\xda\xdb\xe5\x44\x93\x8c\x2f\xe5\x4f\x3f\ +\x7a\x6e\x24\x2c\x78\xda\xb7\x24\x9d\x22\x21\x8f\x51\xce\x36\x15\ +\x6b\x87\x00\x15\x1b\x79\x34\x49\x59\x63\x4c\x01\xbd\x67\xdd\x33\ +\xcb\x2f\xe1\xa3\xdd\xdf\x9f\x8a\x09\xb5\x1e\xbc\xcd\x3b\x0f\xe5\ +\xc7\xb2\x8f\x26\x9c\xd0\xa0\x8d\x7e\xe7\x6e\x73\xda\xa2\x14\x48\ +\xd4\x22\x8f\xe5\xc5\xff\x00\xf4\x6a\xb9\x26\x4c\x9e\x49\xab\x20\ +\x39\xb4\x47\x18\xc7\x3d\xa8\x17\x1d\x36\x45\x24\xc4\x4f\xfd\x27\ +\x8a\xdb\xe9\x89\x11\xb8\x60\xec\x03\x01\xed\x07\x6c\xed\x5d\x73\ +\xac\x48\xc0\x8c\x6f\xc5\x67\x7c\x8f\x36\xa6\x7b\x57\xc8\x0d\x1f\ +\xc7\x63\x4d\x2c\x90\xdd\xa6\x92\x34\xc8\x29\xfb\xa1\x1b\xae\x99\ +\x50\x10\x7e\x2b\x3a\xe2\xc1\x87\xf3\x2d\xdf\x20\x6f\x8c\xee\x2a\ +\x76\x02\x0c\x96\xf3\x7c\x8f\xde\xa6\xe5\x41\x1f\x89\x8b\x91\xf5\ +\x28\xae\x49\x84\xa3\xd3\x9b\xda\xe3\x60\x4d\x40\xd7\x0c\x9b\xf0\ +\x7f\xb1\x14\x07\xb5\x94\x11\xa8\x6e\xad\xb1\x15\x07\xd9\x36\xde\ +\x76\xa5\xc9\x11\x49\xa9\x77\x8d\xb9\xf8\xa3\x1f\x72\xe7\x92\x3f\ +\x7a\xd4\x1a\x3d\x64\xeb\xb6\x8a\x50\x7e\xa0\x2b\x3e\x25\x2e\xe1\ +\x40\xf8\xa7\x6c\x5b\xf1\x16\x12\x5b\xb6\xe5\x3d\xcb\x4a\x5b\x9d\ +\x17\x0b\x9d\xb0\x77\xa9\x8f\x1c\x02\xb2\xe1\xf4\x8e\xd4\x09\xf3\ +\xea\x63\xb0\xad\x19\x21\x02\x53\xdb\xe6\x95\xba\x8f\x9c\x60\x91\ +\xde\xb7\x8e\x41\x77\x18\x18\xfd\xe8\x91\x00\x13\x23\xbd\x0c\x1d\ +\xb0\xd5\x2a\x4a\x6f\xc8\x35\xa0\xcd\xbc\x82\x32\x49\x07\x35\x17\ +\x17\x4c\x46\x01\xc0\xa5\xda\x42\x78\xda\xa8\x77\xa9\xe3\xee\x89\ +\x62\x49\xc9\xa9\x89\x0b\xb6\x05\x54\x0c\x9c\x0a\x7e\xda\x2f\x4e\ +\x20\x74\xee\x79\xa6\x57\x42\xcc\x9e\x8c\x1a\x17\x96\x1b\xfd\xa9\ +\x67\x8d\x47\xb9\xce\x05\x1a\xf2\xe1\x73\xb9\x05\xbc\x0a\x4e\x47\ +\x67\x39\x63\x58\xc6\x5f\x62\xb5\x0c\x40\x52\x4f\x6a\x93\x4b\xdc\ +\x3e\x5b\x48\x3b\x0e\x6b\x62\xac\xd9\x62\xed\x4e\x74\x8b\x43\x33\ +\x89\xe6\x5f\x60\xfa\x41\xef\x42\xe9\xd6\xad\x73\x28\x67\x18\x8d\ +\x7f\x7a\xd8\x9a\x48\xad\xa0\xd4\xc4\x05\x5e\x05\x62\xd0\x52\x55\ +\x14\xb3\x90\xaa\x39\x26\xb2\xba\x8f\x53\x79\xb3\x0d\xa6\x55\x38\ +\x2f\xdc\xd2\xbd\x42\xed\xee\x5b\xde\x4a\xc6\x3e\x94\x1d\xea\x90\ +\xc5\x3c\xab\xed\x5d\x0b\xe4\xf3\x4d\x6c\x42\xac\x71\xee\xcc\x33\ +\xe4\x9a\xba\x49\x1b\x26\xa5\x60\x40\xa2\x27\x4f\x8f\x19\x63\x96\ +\xf9\x19\xa8\xff\x00\xc2\xd6\x49\x32\x06\x4f\x7d\x35\x78\x00\x33\ +\x6b\x6d\x10\xa9\x76\xf8\xe0\x53\x16\xd6\x82\x3c\x4d\x39\xd5\x21\ +\xdc\x2f\x8a\x69\x23\x86\xd1\x02\x46\xa0\xbe\x3c\x6c\x2a\x8a\x0b\ +\x3e\x49\x24\x9a\x41\x31\x82\xef\x93\xbd\x1f\x64\x04\xd4\xa2\x04\ +\x5f\x9a\x0c\xec\x59\x82\x2f\x7a\x80\x37\x72\x84\x8d\xa6\x3e\x70\ +\x83\xc9\xaa\xf4\x94\x31\xdb\xbd\xe3\xee\xf2\xe5\x63\x3f\xea\x69\ +\x6b\xd7\x37\x17\x6b\x04\x5b\x84\x3a\x57\xe4\xf7\x35\xab\x22\x2a\ +\xcd\x1d\xba\xfd\x10\x2e\xf5\x28\x1b\x82\xaa\xb0\x8e\x79\x3f\x7a\ +\xa3\x02\xa7\x06\x9d\xe9\x90\x8b\x8b\xb6\x91\xfe\x91\x4e\xc9\x05\ +\x99\x04\x12\x7f\x4a\xd6\xf5\xc0\xcd\x8a\xed\xc2\xe9\x93\xdc\xbf\ +\xb8\xfb\x53\x6b\x79\x11\x40\x19\xf2\x7b\x1a\x8f\xc0\xc2\xcc\x4a\ +\x07\x23\xe4\x80\x29\x9b\x7e\x90\x64\x19\x58\x76\x1d\xc8\xdb\xfb\ +\x9a\xcd\xb8\x85\x9a\x48\xa5\xdb\x2a\x7e\xc6\x94\xb8\x89\xe3\xf7\ +\x21\x38\xad\x79\x3a\x44\x41\x4e\xb7\x85\x1b\xc0\x6d\xff\x00\x61\ +\x4b\x4f\x61\x71\x1a\xe5\x1c\x48\xa3\xb6\x73\x59\x99\x63\xea\xae\ +\x99\x13\x08\xe7\xff\x00\x10\x69\x61\xc3\x0a\x0b\x96\x8f\x11\xcb\ +\xee\x4e\xcc\x29\xe9\xe1\x52\x7d\xc3\x41\xf9\xe0\xd2\xce\xac\xa3\ +\x4b\xae\x54\xf6\x3d\xeb\x7a\x40\x7e\x83\x83\x86\x56\xfd\xea\x62\ +\x6f\x4c\x84\x27\x2a\x7e\x93\x5c\xca\x50\x7b\x77\x5e\xea\x7b\x55\ +\x36\x23\xe0\xd4\x0e\x5a\xca\x60\xb8\x59\x07\x1d\xc7\xc5\x5f\xa8\ +\xc6\x23\x9f\x5a\x7d\x0f\xee\x53\x4a\x42\xe4\xfb\x1b\x91\xc7\xcd\ +\x39\x19\xf5\xec\x8c\x47\xeb\x8b\x75\xfb\x53\xde\xc1\xa7\x94\xc9\ +\x02\x49\x9e\x46\xff\x00\x7a\x5d\x66\xc6\xcd\x53\x6a\x75\xc0\xf1\ +\x77\x1e\xe5\xff\x00\x7a\x0b\x56\xb1\x90\x11\x8c\x6f\xf0\x68\x44\ +\x11\xb0\xdc\x57\x63\x35\xda\x1b\xb5\x6a\x5d\x0a\xd7\x54\x95\x61\ +\xc8\x35\x15\x76\x2c\x84\x06\xc9\xa2\x49\x73\x23\x2e\x9c\xe0\x7c\ +\x50\x70\x7c\x54\x81\x52\x88\xae\xae\x3c\xd7\x50\x06\xe2\x4c\x0c\ +\x0e\x6a\x7a\x7d\xab\x5c\x4b\xbe\x74\x0e\x4f\x9a\xeb\x1b\x67\xb9\ +\x9b\x27\xe9\xee\x6b\x46\xea\xe2\x2b\x28\x74\x20\x05\xb1\xb0\xac\ +\x5a\x09\x71\x34\x36\x70\x0e\x32\x07\xb5\x45\x64\x4b\x2c\xd7\x73\ +\xf1\xa8\xf6\x1d\x96\xad\x14\x53\x5e\x4d\xad\x89\xc1\x3c\xff\x00\ +\xc5\x6d\xd8\x74\xe8\xe0\x88\x3c\xa9\x81\xd9\x7c\xfd\xeb\x3b\x93\ +\xb1\x9d\xd3\xba\x6b\x31\xd6\xd8\x63\xdd\x9b\x81\x5a\x31\xdb\xdb\ +\xa0\xf7\x96\x73\xf1\xb0\xa3\xbe\x58\x0c\xfb\x50\x70\x05\x25\x7d\ +\x72\x23\x53\x1c\x67\xdc\x79\xf8\xab\xbd\x83\xcd\x25\x94\x7b\x88\ +\x00\xf1\x96\x34\xac\xf7\x8f\x20\xd1\x10\x08\xbe\x40\xc5\x2b\xee\ +\x90\xea\x62\x71\xe4\xd5\xd4\x16\xf6\xa8\xc0\xab\x31\x10\x06\x5b\ +\x03\x24\x9e\xe7\xbd\x35\x0c\x61\x13\x27\x9a\xeb\x78\x70\x32\x7b\ +\x55\x98\x83\x96\x3f\x4a\xd2\xd0\x39\x8e\x07\xc9\xdc\xd2\xd2\xbf\ +\xa3\x67\x2d\xc1\xe4\x8d\x2b\xf7\xab\xdc\x31\xd3\xf2\xdb\x9a\x0f\ +\x5d\xfe\x5f\x4d\x86\x2f\xea\x39\x34\xa2\xbf\xc2\xf0\x97\xea\x3a\ +\x88\x07\xd1\x88\xb9\x07\xc9\xa7\xad\xff\x00\xc4\xb8\x27\x9c\x1a\ +\x5f\xf8\x55\xd5\x7a\xb3\xc4\xc7\x1e\xb4\x65\x57\xe4\xd1\xe4\x06\ +\x3b\x99\xc7\xf9\x6a\x7b\x0e\xf4\xc3\xa3\xa6\x92\x36\x67\x62\x28\ +\xb1\xa0\x2f\x8f\x1b\xb1\xf1\x43\xb6\x5f\x4e\xd6\x35\x3d\x97\x3f\ +\xa9\xa7\xfa\x7c\x46\x31\xae\x45\xce\x91\xea\x30\x3f\x1c\x0f\xef\ +\x8a\x99\x5d\x4d\x91\x63\x2c\x76\x80\x6a\x0b\xac\x0e\x48\xd4\x54\ +\xf8\x03\x8d\xbc\xd2\xb3\x5f\xca\xec\x49\x19\xcf\x77\x62\x7f\xed\ +\x40\xea\xac\xff\x00\x8c\x31\x17\x00\xa0\xf7\x31\x38\x03\xcd\x2e\ +\x90\x7a\x8b\xaa\x39\x63\x93\xec\x6b\x13\x19\xdd\x53\x7f\x8a\x9b\ +\x23\x05\x07\xff\x00\x88\xab\xad\xcc\xf9\xd4\x4a\x31\xfb\x0a\xce\ +\x6f\x52\x33\xef\x0c\xbf\x3d\xaa\x56\x56\x18\x39\x07\xed\x5a\xf1\ +\x88\xd2\x6b\x88\xa5\x04\x5c\x45\x9c\xf7\xc6\x7f\x7a\x5e\x6e\x9e\ +\x92\x29\x6b\x79\x01\x1f\xd0\xc6\x80\xb3\xe7\x92\x41\xa8\x37\x0d\ +\x13\x64\xe4\x7c\x8a\x4c\x6c\xe9\x4a\x5c\xdb\xc9\x0c\x85\x5d\x08\ +\xf8\xa5\xa5\x8f\x03\x5a\x0c\x8e\xe2\xb6\x92\xee\x19\xe3\xf4\xe7\ +\x01\x87\xcf\x22\x97\xbb\xb3\x08\xbe\xa5\xbb\x6b\x4e\xe3\xb8\xab\ +\xbf\x55\x19\x07\xb1\x1d\xa9\x8b\x69\x4a\xb0\x75\xe4\x73\x55\xb8\ +\x87\x48\xd7\x1e\xe3\xb8\xf1\x41\x56\xd2\x75\x0f\xd4\x55\x81\xf9\ +\xbf\x95\x70\xb3\x47\xf4\xb6\xe3\xfe\x2b\xae\x95\x75\xeb\x4c\x69\ +\x71\x91\xf1\x54\xb7\x71\x24\x7e\x93\x1e\x77\x53\xe0\xd4\x21\x20\ +\x18\xdb\xf4\xf8\x35\x67\x63\x93\x9a\x91\xbf\xc5\x45\x41\x24\x1c\ +\xd6\xf4\x2e\x37\xd8\xb0\x1f\x7a\xe2\x0e\x3e\xa5\xfe\xf5\x45\xd6\ +\xdb\xad\x10\x47\x26\x3f\x2d\x2c\x15\x60\xbe\x73\x55\x24\x62\xba\ +\x65\x65\xe4\xe7\x3e\x2a\x94\xd7\x03\xab\x8f\x15\xc4\xe2\x81\x3c\ +\x9d\x85\x03\xd7\x37\x11\xda\x43\xe9\x44\x32\xf8\xc5\x2d\x6f\x6e\ +\xf2\xbf\xab\x70\x49\xce\xfa\x7c\xd4\xda\xc5\xee\xf5\xa5\xdd\x8f\ +\x00\xf6\xa6\xa1\x0d\x24\x81\x40\xe4\xd7\x3d\x87\xba\x64\x68\x08\ +\x3a\x46\xdf\xb5\x35\x3b\xeb\x6c\x93\xed\x14\x34\x55\x86\x2d\x3f\ +\xdc\xd2\x77\xd7\x78\xf6\xa9\xdf\xc7\x8a\xce\xb7\x55\xdd\x42\xef\ +\x03\x42\x73\xfe\x94\x80\x52\x7d\xcd\xff\x00\xdd\x58\x29\xfa\x9f\ +\x93\xda\x8b\x14\x4c\xed\xbd\x6e\x4d\x22\xb1\xa1\x73\x8e\x00\xe2\ +\x9c\xb6\x83\x7c\x01\xbd\x4c\x10\x92\xc1\x54\x6e\x68\xf7\x85\x6d\ +\xe3\x11\x27\xd6\x7e\xa3\xe2\xa5\xcb\x9d\x40\x09\x88\x2c\x22\x8f\ +\x7f\x27\xc9\xaa\x5d\x29\x0e\x20\x5d\xf0\x77\xf9\xa6\x7a\x5c\x25\ +\xb5\x4d\x8f\xa0\x6d\xf7\xa5\x54\x86\xbd\x1a\xce\x37\xe4\xd3\x7c\ +\xe8\x29\x21\xcb\x6a\xed\xaa\x9d\xbd\xb6\xb6\xea\x16\xe9\x99\x82\ +\xb2\x8c\x50\x64\xb6\x9a\x27\x3a\xe3\x38\xf2\x57\x20\xd0\xc4\x68\ +\x4e\xfe\x9a\xfe\xa4\x55\xbc\x8b\x59\xd8\x47\x65\x74\x97\x53\xdd\ +\x07\xf4\xb7\x55\x5e\x49\xa2\x42\xa6\x7b\x86\x66\x18\x0e\x72\xc3\ +\xc0\xec\x2a\x88\x90\x29\xcb\x4a\xbf\xfe\x00\x93\xfd\xcd\x3b\x00\ +\x52\x8a\x23\x18\x0d\xc5\x40\xdd\x94\x61\xdf\xd5\x93\x1a\x57\x80\ +\x78\xa6\xe4\x94\x45\x6a\x92\x9e\x25\x97\x50\xf9\x55\xff\x00\xbe\ +\x69\x48\x12\x5b\xbb\x94\xb6\x80\x1d\x24\x85\xdb\xfd\x69\x8f\xe2\ +\xcd\x31\x4e\x2d\xe3\xfa\x20\x88\x22\xd7\x2c\xae\xec\x8a\xc4\xba\ +\x8e\x4b\xbb\x7b\x97\x19\x2d\x8d\x64\x79\xde\xb2\x21\x91\xe2\x7c\ +\xa9\x23\x15\xe8\x7a\x3c\x82\x2b\xec\x30\xca\xb0\x2a\x47\x9a\x5b\ +\xf8\x97\xa4\xb4\x0f\xeb\xc2\x09\x8d\xb7\x15\xbf\x29\x2e\xa8\xad\ +\x9d\xf8\x75\x0b\x36\x19\x7c\xe2\x8d\x2d\xaa\xba\xeb\xb7\x6f\xd3\ +\xb5\x61\xc4\xe5\x1b\xe3\xb8\xa7\xec\x6e\x9e\x22\x19\x0e\x57\xb8\ +\xab\x66\xba\x04\x93\x2a\xc5\x5d\x74\xb0\xf3\xde\xa3\x51\xdc\x72\ +\x3c\x1a\xd4\x83\xf0\xd7\xf1\x60\x90\x1b\xe7\x8a\x5a\xfb\xa7\x4d\ +\x01\xca\x82\x47\x83\x49\x9c\xea\x9a\x20\xeb\x8d\xd7\xff\x00\xaa\ +\xbd\xbc\xd2\x44\x75\x23\x64\x0e\x45\x50\x92\xa7\x0c\x0a\x91\xe6\ +\xa7\x93\x90\x77\xae\x9d\xf6\x86\x18\xc5\x3f\xbe\x30\x12\x5e\xea\ +\x78\x6a\xcf\xbc\xb7\x2a\xc5\x90\x11\x8f\xa9\x7c\x51\x9b\x63\x91\ +\xb1\xa2\xac\xa2\x41\xa6\x53\x82\x38\x71\xfe\xf5\x8b\x8e\xba\x19\ +\xd0\xbe\x96\xe7\x6a\x69\x8e\xb4\xf5\x07\xd4\x3e\xaf\x9a\x15\xec\ +\x05\x5b\x52\x80\x3e\xdc\x1a\xad\xb4\x9a\x5b\x07\x71\x48\x0c\xa7\ +\x22\xa1\xfc\xd4\x91\xa5\xbe\x0f\x15\xcd\xba\xd6\xe5\x17\xb7\x38\ +\x53\xe6\xaf\xa8\xd0\x22\x38\x7f\x8a\x35\x5b\xd8\xac\xe7\x2b\x41\ +\x34\x49\x8f\x6a\x5e\x79\x02\x8c\x0e\x68\x29\x71\x20\xce\x07\x35\ +\x5b\x58\x5a\x79\x42\x8e\x3b\x9a\xac\x68\xd2\xc9\xa4\x6e\x6b\x42\ +\x42\x96\x56\xda\x46\x35\xb5\x62\xd1\x45\x25\x9a\xb4\xec\x23\x58\ +\xa3\xd6\xc3\x73\x4a\x58\x43\x9c\xc8\xdc\x0f\xde\x8b\x3c\xc4\xfb\ +\x57\x73\x59\xa2\x6f\xee\x4e\x74\xae\xe4\xf6\xa5\x54\x15\x6c\xb7\ +\xb9\xcf\xed\x56\x45\xf7\x61\x3d\xce\x79\x3d\x85\x35\x6d\x6c\x34\ +\xeb\x6f\xa7\xbb\x79\xfb\x55\xe2\x01\x41\x0b\x31\xd6\xdf\xae\x69\ +\xa8\x63\x2c\x42\x20\xde\xa5\x14\xbb\x84\x45\xdb\xb0\xad\x6b\x1b\ +\x64\xb5\x40\xf2\x60\xb9\xac\x67\x9e\xbb\x50\x96\x05\xb4\xb5\x2e\ +\xc3\xdc\x45\x63\xce\xcc\xd2\x96\x63\x92\x4d\x7a\x47\x41\x72\x37\ +\xe1\x46\x6b\xcf\xdc\xc4\x4b\x1d\xb1\xbd\x4f\x8a\xee\xee\x95\xa5\ +\xd1\x62\x2f\x6b\x22\x26\x35\x15\xc0\xcd\x64\xde\xc2\xc8\xe4\x15\ +\x21\x97\x62\x29\x8e\x9f\x78\xf6\xd2\x85\x6d\x8f\x7d\xf9\xad\x5b\ +\x8b\x78\xba\x8c\x3e\xa4\x45\x44\xc0\x7f\xfb\x56\xb9\xc6\xec\x79\ +\xf8\x2e\x67\x8c\xfb\x65\x60\x3e\xf5\xb7\xd3\x7d\x1b\x98\x3f\x98\ +\x8a\xcd\x8e\x48\xac\x7b\xcb\x67\x8d\xd8\x15\x2a\x47\x20\xd1\x3a\ +\x35\xd8\xb7\xb8\x1a\x8f\xb4\xd6\xb2\x9b\x9b\x80\x7d\x62\x3f\x4e\ +\x50\x02\x80\x01\xec\x29\x9b\x60\x5c\xa8\x1c\x91\x81\x4c\x75\xdb\ +\x61\x71\x17\xaf\x0f\xb8\x73\xfa\xd2\x16\x53\x10\x06\x4e\x1d\x0d\ +\x25\xde\x28\xf6\x7f\xc3\xd6\x0b\x6a\x86\x72\x31\x85\xd8\x9e\xf5\ +\xe7\x3f\x89\x24\x0d\x73\x3b\x1e\xe7\x15\xa9\x69\xd6\xa5\x9e\xdf\ +\xd1\x70\xa3\x6d\xcd\x60\xf5\x97\x0d\x23\x1c\xe7\x26\xb8\x7c\x78\ +\xe5\xe7\xcb\x57\xa0\x33\xa6\x6c\x83\xce\xe2\xb7\x7a\x7c\xf1\x5c\ +\xda\xfa\x17\x18\x28\xfb\x03\xfd\x26\xb0\x07\xba\x05\x61\xca\xec\ +\x69\xae\x97\x30\x12\x98\x9c\xe1\x5c\x73\xe0\xd7\x4c\xf1\xdc\x48\ +\x4f\xf8\x93\xa4\x49\x67\x39\x65\x5c\xa9\xf1\xc5\x65\x44\xe6\x36\ +\xcf\x23\xb8\xaf\x77\x6a\x52\xed\x1b\xa7\xdd\xe3\x58\xfa\x18\xd7\ +\x95\xfe\x23\xe9\x72\x59\x5c\xb7\xb4\xe3\x35\x30\xcf\xfe\x72\x2c\ +\x0e\x09\x5a\x3c\x49\x11\xd8\xf2\x2b\x7b\xa3\xf5\x34\x96\x3f\x4a\ +\x71\xa9\x7b\x83\xb9\x15\xe5\xad\xa5\x31\xb6\x0f\x06\x9b\x46\x68\ +\xdc\x49\x19\xad\xe5\x8e\xcd\xbd\x5d\xc7\x45\x8a\xe9\x3d\x48\x0a\ +\xb2\x9e\x01\xff\x00\x9a\xc9\xbd\xe9\x12\x40\xf8\xd0\xc9\xf7\xe0\ +\xd1\x3a\x2f\x58\x78\x58\x61\xb0\x7b\xa9\xe0\xd7\xac\xe9\xb7\x96\ +\xb7\xf1\x60\xe9\x0d\xc1\x56\xae\x37\x2c\xf0\x5e\xde\x16\x6e\x9f\ +\x36\x9d\x4a\xa5\xbe\xd4\x9b\xab\x2b\x61\x81\x07\xe4\x57\xd2\xa5\ +\xe9\x90\xf2\xa8\x07\xc8\xa4\x3a\xb7\x47\xb6\x9e\xdf\x12\x47\x83\ +\xd9\xd4\x6e\x29\x8f\xf2\x3f\x27\x8b\xc2\xa4\x83\x4f\xa7\x20\xca\ +\xf6\x3e\x29\x7b\x98\x8a\x36\x47\x07\xc5\x69\x75\x7e\x9b\x2d\x9b\ +\x1d\xc4\x91\xf6\x71\xfe\xfe\x29\x15\x23\x74\x7f\xa4\xfe\xd5\xdf\ +\x8b\x37\x19\x52\x17\xd4\xba\x0f\x3d\xaa\xea\x7b\x1a\x0c\xc8\x62\ +\x93\x6d\xc7\x62\x2a\xe8\xda\x97\x23\xf5\xab\x05\x98\x60\xd1\xa3\ +\x39\x5c\xd0\x79\x15\x68\x4e\x1b\x1e\x6b\x7d\x81\xdc\x3e\x9c\x93\ +\x4a\x1d\x4e\xfb\x6e\x4d\x35\xd4\x47\xb7\x35\xdd\x2d\x54\x6b\x95\ +\x86\xca\x2a\x50\x68\x95\x2c\xed\xf5\xb6\x35\x1a\x5a\x30\xd7\x12\ +\x99\xa4\xe3\xb5\x44\x8c\xd7\x53\xe4\xe4\x20\xa3\x70\x30\x36\x02\ +\xb2\x1f\x9a\x50\xa8\x11\x76\x51\x42\x89\x4b\x8c\xb1\xd2\xbd\xfc\ +\x9a\x11\x90\x38\xdc\x60\xd3\x16\xb8\x76\x50\x78\x03\x8a\x9d\x40\ +\xcd\xbc\x29\xa7\x51\x5d\x31\xfe\xed\x44\x6c\xc8\x42\xa8\xc0\x1c\ +\x28\xed\x56\x45\x2f\x82\x4f\xc6\x29\xeb\x44\x86\xd5\x7d\x69\x86\ +\xe3\xe9\x5a\xc5\xba\xfe\xd4\x6e\x9b\x6a\xb6\xf1\x7a\xb2\x8f\x71\ +\xe0\x52\xd7\x52\x4b\x35\xf2\xc6\x99\x39\xe0\x0a\x1d\xdd\xf4\xb3\ +\x3e\xa1\xed\x51\xc0\xad\x3f\xe1\x53\x11\xfe\x27\x85\xa4\x00\x83\ +\x0e\xa5\x04\x73\x5c\xf2\x96\x4d\xd1\xaf\xd2\x7a\x15\xd7\xe0\xc4\ +\xc3\x00\xf8\x6e\xf4\x2e\xa1\xd1\x12\x43\xfc\xdb\x53\x03\xe3\x1a\ +\xe3\x19\x53\xf7\x14\xf7\x52\xeb\x52\x17\x29\x19\x0a\x01\xc0\x02\ +\xa2\xd7\xae\x38\xf6\xc8\x01\xfb\xd7\x09\x7e\x4e\xda\xe1\xe3\x7a\ +\xbf\x4a\x9a\xd9\xb1\x22\x6a\x43\xf4\xb8\xef\x49\x5b\xdc\xcd\x67\ +\x20\xcb\x1d\x3e\x6b\xe9\x7e\x9d\x97\x50\x8c\xaa\xe9\x52\xc3\x75\ +\x3c\x1a\xf3\xbd\x7f\xf8\x56\x45\xd4\xf6\xcb\x90\x7f\x21\xef\xf6\ +\x35\xdf\x0f\x9e\x5e\x32\x66\xc6\x54\x8d\x07\x52\x83\x21\x82\xcc\ +\x06\xc7\xcd\x63\x5e\xda\xbc\x32\x10\x57\x04\x76\xa2\x4b\x0d\xc5\ +\x95\xc1\x00\x30\x2b\xca\xf8\xa7\xa1\xbb\xb7\xbc\x84\x45\x73\x85\ +\x60\x36\x6f\x15\xda\x6f\x1e\x67\x48\x57\xa3\xde\xfa\x4d\xe8\xcd\ +\xbc\x6d\xb6\xf5\x1d\x5a\xd3\xd0\x90\x5c\x42\x35\x21\xe7\x15\x5b\ +\xab\x09\x55\xb3\x18\xd6\x0f\x75\x35\x68\xde\xfd\x22\xd1\xb2\xa8\ +\x3f\x9b\x15\x78\xde\xe0\x5c\x5d\xb0\x18\x40\x72\x79\x14\x19\xcc\ +\xae\x72\xfb\x7c\x66\x99\x9d\x8e\x49\x9e\x70\x3e\x13\x1b\xd1\xad\ +\x6c\xa5\x91\x43\xa4\x02\x34\x3c\x49\x29\xe7\xec\x3b\xd6\xb7\x20\ +\xa4\x09\xff\x00\x92\x73\xfe\x60\x3f\x6a\x5d\x1f\x43\xe7\xb0\x35\ +\xa1\x78\x12\x18\x16\x04\x3c\x6e\x4f\x72\x7c\xd2\x16\xe0\x3b\xba\ +\x76\x35\x9c\x79\x1a\xf2\x3b\x49\x6f\x15\xd2\x1f\x7c\x67\x4b\x62\ +\xb4\x66\x48\xba\xc7\x4d\x2a\xd8\xf5\xd0\x71\xe6\xbc\xff\x00\x4f\ +\x9d\xe1\x9b\x41\x39\xd3\xbf\xdc\x56\x8d\xf3\x35\xbc\xd1\xdd\x5b\ +\xb1\x50\xe3\x3b\x57\x1c\xb1\x57\x97\xea\x96\x6f\x69\x70\xc8\xca\ +\x40\xce\xd5\x16\x73\x01\xec\x73\xb1\xe0\xd7\xb3\x96\xca\xd7\xad\ +\xd8\xb1\xc6\x9b\x85\x19\xdb\xbd\x78\xde\xa7\x63\x2d\x9c\xe5\x1c\ +\x1c\x03\xcd\x6f\x0c\xe6\x5c\x5e\xcb\x05\x61\xa4\xea\x4a\x7f\xa7\ +\xde\xb2\x91\xb9\x04\x70\x73\xb8\xac\xab\x59\xb3\xec\x63\xbf\x62\ +\x68\xac\x0a\xb6\x45\x6e\xcd\xf1\x51\xed\x3a\x3f\x5f\x92\x35\x09\ +\x3e\x64\x4e\x33\xdc\x56\xea\xcf\x05\xd4\x3a\xa1\x75\x6c\x8e\x2b\ +\xe6\xf6\x77\x45\x4e\x1b\xfb\xd6\xad\xa5\xcb\x29\x0f\x0c\x84\x11\ +\xe0\xd7\x9f\x3f\x8a\x5e\x9a\x94\xef\xf1\x1c\x46\x37\x2d\x18\x3f\ +\xe6\x43\xc1\xaf\x31\x75\x1a\x1f\x7c\x5c\x77\x53\xf9\x6b\xd7\x8b\ +\xc8\xba\x84\x5e\x85\xd0\x09\x21\xd8\x3f\x63\xf7\xaf\x35\xd6\xec\ +\xe5\xb3\xb9\x39\x1b\x67\x63\xe6\xb7\xf1\x5d\x71\x4a\xce\xd9\x97\ +\x43\x71\xdb\xe2\x82\x33\x14\x98\x23\x6a\x3b\xe1\x86\x47\xea\x2a\ +\x92\x2e\xb5\xf9\x1c\x57\x6b\x19\x48\x23\x90\x76\xa9\xe0\xe4\x50\ +\xa2\x62\x0e\x93\x44\xab\x28\x9b\xa5\xf5\x21\xc8\xed\x40\xb7\x72\ +\x2d\x65\x51\xb1\xe6\x98\x8c\xec\x54\xf0\x69\x68\xc6\x99\xa4\x43\ +\xdd\x4d\x5b\xd0\x25\xb7\xf8\x23\x14\x68\x23\x32\x3e\x3b\x0e\x68\ +\x16\xc7\xf9\x42\x9d\x0e\xb1\xc4\x14\x63\x38\xc9\xac\xfa\x1f\xff\ +\xd9\ +\x00\x00\x2e\x32\ +\xff\ +\xd8\xff\xe0\x00\x10\x4a\x46\x49\x46\x00\x01\x01\x01\x00\x48\x00\ +\x48\x00\x00\xff\xdb\x00\x43\x00\x04\x02\x03\x03\x03\x02\x04\x03\ +\x03\x03\x04\x04\x04\x04\x05\x09\x06\x05\x05\x05\x05\x0b\x08\x08\ +\x06\x09\x0d\x0b\x0d\x0d\x0d\x0b\x0c\x0c\x0e\x10\x14\x11\x0e\x0f\ +\x13\x0f\x0c\x0c\x12\x18\x12\x13\x15\x16\x17\x17\x17\x0e\x11\x19\ +\x1b\x19\x16\x1a\x14\x16\x17\x16\xff\xdb\x00\x43\x01\x04\x04\x04\ +\x05\x05\x05\x0a\x06\x06\x0a\x16\x0f\x0c\x0f\x16\x16\x16\x16\x16\ +\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\ +\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\ +\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\x16\xff\xfe\x00\ +\x12\x42\x6c\x75\x65\x20\x41\x6e\x67\x6c\x65\x20\x53\x77\x69\x72\ +\x6c\xff\xc0\x00\x11\x08\x01\x20\x01\x20\x03\x01\x22\x00\x02\x11\ +\x01\x03\x11\x01\xff\xc4\x00\x1b\x00\x00\x02\x03\x01\x01\x01\x00\ +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x04\x01\x02\x05\x00\x06\ +\x07\xff\xc4\x00\x3d\x10\x00\x02\x01\x03\x03\x03\x03\x02\x04\x04\ +\x05\x02\x06\x03\x01\x00\x01\x02\x03\x00\x04\x11\x12\x21\x31\x05\ +\x41\x51\x13\x22\x61\x32\x71\x14\x42\x81\xa1\x06\x23\x52\x91\x33\ +\x62\xb1\xc1\xd1\x72\xe1\x15\x24\x34\x43\x53\xf1\x82\x92\xa2\xf0\ +\xff\xc4\x00\x19\x01\x01\x01\x01\x01\x01\x01\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x00\x01\x02\x03\x04\x06\xff\xc4\x00\x24\x11\ +\x01\x01\x00\x02\x02\x02\x02\x02\x02\x03\x00\x00\x00\x00\x00\x00\ +\x00\x01\x02\x11\x21\x31\x12\x41\x03\x22\x51\x61\x04\x71\x13\x32\ +\x42\xff\xda\x00\x0c\x03\x01\x00\x02\x11\x03\x11\x00\x3f\x00\xf6\ +\x3a\x14\xae\xdf\xa5\x74\x5a\x84\x80\x67\xf5\xa2\x45\x83\x10\x14\ +\x39\x50\x83\xa8\x57\xde\x6f\x7c\x3c\xad\x7b\x16\x08\xe1\x98\xe4\ +\x0d\xea\xd7\x0f\x7b\x79\x27\xb1\x4e\x91\xc1\x63\x81\x4a\x58\xcb\ +\xae\x2e\x46\x46\xd4\xcb\x4a\x74\x80\x18\x81\x8e\xd5\xce\xce\x44\ +\xc3\x33\xdb\x5c\x8b\x6b\xd8\x90\x29\xdb\x56\x38\xad\x8f\xe1\xeb\ +\x48\xa4\x96\xe0\xb3\x65\xed\x70\xf1\x6f\xe7\xbd\x65\xcb\xa2\xfa\ +\xdc\x43\x31\xc4\x80\x7b\x1c\xf7\xf8\xaa\x74\x2e\xa1\x2d\x87\x59\ +\x81\x67\x38\x5c\xfa\x52\x13\xe0\xd6\x72\x96\xce\x15\xba\x49\x62\ +\x4e\x73\x9a\x82\x1b\x1b\x0c\xd7\x5d\x0f\x4a\xe5\xd4\x70\x1b\x6a\ +\xbc\x32\x03\x5c\x94\x5b\x1b\xd7\xb7\x71\x9c\x80\x3c\x56\xf5\xbc\ +\xd6\x9d\x4a\xdc\xc7\x21\x5d\x64\x63\x71\xcd\x60\xe1\x49\xc1\x00\ +\xd0\x3d\x66\xb7\xba\x0d\x1b\x15\xc5\x63\x2c\x3c\xba\x5d\x8b\xd7\ +\x7f\x86\xe6\x79\x49\x86\x5c\xaf\xf4\xb1\x27\xfb\x57\x9c\xbf\xe8\ +\x1d\x46\x26\xff\x00\xd2\x93\xbf\x2a\x32\x0d\x7b\x15\xeb\x8c\xb1\ +\x61\x86\xb3\xe2\x83\x71\xd5\x2f\x25\x1b\x15\xb7\x4f\x20\x02\x6b\ +\x78\x7c\x9f\x24\xed\x35\x1e\x41\x3a\x3f\x5a\xcf\xb2\xde\x6c\x0a\ +\x66\x2e\x83\x71\xf5\x5e\x5e\x2a\x79\x54\x3a\x9b\xfe\xd5\xb5\x2d\ +\xd1\x6c\xeb\x9a\x79\x49\xe7\x2e\x40\x3f\xa0\xa5\x2e\xe6\xd3\x11\ +\x27\x00\x78\x1b\x0a\xe9\xfe\x4c\xaa\x68\xb4\x36\xd6\x56\x79\x68\ +\x53\x53\x0f\xfd\xc9\xb0\x48\xfb\x0e\x28\x37\x37\x99\x24\x47\xb9\ +\x3f\x98\xd2\xd7\x13\x3c\x8d\x96\x3b\x0e\x07\x6a\x0e\xa2\xc4\x84\ +\xed\xcb\x1e\x05\x6a\x63\xbe\xcd\xa6\x57\x24\xff\x00\x53\x1a\x5d\ +\x08\xfc\x48\x55\xdc\x28\x20\x91\xc6\x6b\x9a\x53\x21\x30\xdb\x9f\ +\xfa\xe4\x3f\xed\x47\xb3\x80\x2a\x0f\x03\xf7\xae\xd8\xe2\x8b\x5e\ +\x82\xcb\xa8\x72\x30\xc2\xb4\x7a\x04\xe0\xb9\x8c\xf1\x32\xed\xf7\ +\xa4\x9b\x06\x45\x5d\xb7\x04\x1a\x1f\x4c\x90\xc6\xec\x3b\xa1\x0c\ +\x3f\xde\xb1\xf2\x62\xb0\xff\x00\x4f\x96\x5b\x6b\xd6\x64\x24\x34\ +\x6d\xb8\xad\x5e\xbb\x61\x0f\x57\xe9\xdf\x8b\x81\x46\xac\x7b\xc0\ +\xec\x7c\xd2\x11\x28\xff\x00\xc7\xb3\x8f\x6c\x8a\x18\x56\x9d\xa4\ +\xad\xd3\xaf\xb3\x8c\xc1\x26\xcc\x0f\x02\xb8\x67\x3d\xce\xd6\x3c\ +\x05\xf5\xb3\xdb\xce\x54\x82\x08\x3c\xd5\xed\xa7\x0d\xec\x93\x9e\ +\xc6\xbd\x97\xf1\x8f\x45\x49\xa1\xfc\x65\xa8\xd4\x8c\x33\xb7\x6a\ +\xf0\xf7\x11\x34\x72\x10\x46\x08\xae\x98\x67\x32\x89\x61\xc3\x1b\ +\x21\xd4\x99\xda\x8d\x6d\x78\xea\x70\x4d\x29\x65\x75\x8c\x47\x21\ +\x38\x1c\x1e\xe2\x98\x96\x2d\x5e\xe0\x46\x4f\x04\x70\xd5\xaf\xed\ +\x1a\x50\x5c\xa3\xe3\x7c\x1a\xd0\x70\x9d\x42\xcf\xd1\x94\x81\x22\ +\x8f\x6b\x1e\xf5\xe6\x15\x9a\x37\xc3\x0a\xd1\xe9\xf7\x63\x20\x33\ +\x7d\x8d\x63\x2c\x3d\xac\x21\x7d\x6f\x25\xad\xc3\x47\x22\x91\x40\ +\x35\xb9\xd5\xa0\xf5\xe1\x32\xa9\x2f\x8e\x57\x39\x23\xe4\x56\x23\ +\x0c\x1f\x22\xba\xe3\x97\x94\xfd\xa0\x53\x2e\xda\x87\xeb\x53\x0b\ +\x67\x63\x57\x3e\x28\x32\x2e\x96\xa7\x40\xd5\x59\x50\x32\x13\xc3\ +\x0e\x0d\x42\x3e\x76\x3c\xd5\xea\xca\x15\x46\xd2\x41\xee\x0f\xbb\ +\xe6\x9a\xce\x54\x50\x6e\x23\xdf\x58\x1f\x71\x53\x6c\xd9\x5d\x3e\ +\x38\xa7\xb0\xca\x39\x0a\x28\xd1\xb0\x75\xc1\xa5\x90\xfb\x6a\x55\ +\x88\x39\x15\x34\x0b\x1b\xb4\x12\x1c\x6e\x0d\x32\xf2\xfa\x91\x6a\ +\x43\xc7\x34\x90\x93\xce\xf5\x31\xbe\x96\xd4\xa7\x4f\xc7\x9a\xa1\ +\xc8\x2e\x08\x20\x37\xf7\xa6\x6f\x42\x5d\x42\x1f\xff\x00\x71\x79\ +\xc7\x7f\x9a\xcf\x24\x37\xb9\x76\xf2\x28\x96\xf3\x18\xcf\x91\x52\ +\xcd\xf3\x07\xa4\xb0\xb9\x17\x76\x28\x5b\xfc\x68\x94\x24\xbf\x24\ +\x70\x6a\xcc\xfa\x06\xdc\xd6\x6f\x4a\x60\x6e\x7d\x54\xc8\x05\x30\ +\xfe\x0f\x8a\x7e\x1c\xcd\x37\xf9\x45\x70\xb3\x55\xa3\x56\x84\xe8\ +\x2c\xdd\xe9\x79\xcb\x4b\x71\x85\xa3\xce\xd8\x51\x1a\xf3\x50\xa0\ +\x42\xbb\x6e\xe7\xf6\xac\x4a\x25\x55\x20\x5c\x9f\x73\x9e\xd4\x36\ +\x2c\xe7\x2c\x6a\x0e\xe7\x2c\x72\x4d\x02\xee\xe5\x62\x5e\x77\xad\ +\x48\x09\x71\x2a\x42\xb9\x63\x59\x17\xb7\x26\x46\xcb\x1c\x01\xda\ +\xab\x34\xf2\x4d\x36\x95\x05\xd8\xf0\xa2\xa6\x54\x86\xcd\x3d\x6b\ +\xc6\x0c\xff\x00\x96\x31\x5d\x31\xc7\x49\x43\x54\x66\x8c\xc9\x2b\ +\x7a\x51\x0e\xe7\x93\xf6\xa5\x59\xde\xed\xbd\x1b\x71\xa2\x15\xfa\ +\x9b\xcf\xc9\xae\x06\xe7\xab\x5c\x12\xcd\xa2\x14\xe4\xf6\x02\x9d\ +\x51\x1f\xa6\x21\x81\x71\x12\xf7\xc6\xec\x7c\xd7\x59\x35\x7f\x68\ +\x1d\xbc\x4a\xab\xa2\x31\xfc\xb1\xdc\xf2\xd4\x73\x80\x2b\x80\x00\ +\x60\x54\x10\x59\xc2\x2f\x26\xba\x5b\x31\x82\xf0\x8d\x11\x3d\xc1\ +\x3b\xfd\x29\xf7\x34\xa5\x87\xfe\xa0\xb7\x81\x4c\x75\x77\x58\xd1\ +\x2d\x97\x88\xc6\xff\x00\x24\xf3\xfb\x50\xec\x10\x8b\x76\x7e\x35\ +\x9d\x22\xb8\xce\xb7\x46\x82\x39\x8e\x4b\x77\x27\xe8\x90\xc5\xfa\ +\x56\xfd\xdc\x42\x48\x06\xaf\x15\xe7\x2f\x09\xf4\xe5\x45\x18\x30\ +\xb8\x70\x3c\xed\x8a\xde\xb1\xb9\x17\x1d\x3d\x5d\x4f\x22\xb8\xd6\ +\x97\xe8\x77\x4b\x04\xa6\xca\xe7\xdd\x0c\x9b\x0c\xf6\xac\x2f\xe3\ +\xbe\x86\x6d\xa4\x37\x10\x8c\xc6\xdb\xe4\x76\xa7\xa7\x74\x92\x4d\ +\x07\x66\x1c\x56\xb7\x4a\xb9\x8e\xfe\xcd\xba\x7d\xe0\x05\x80\xc0\ +\x27\xbd\x63\x29\x70\xbe\x50\xed\xf2\xe9\x10\xe7\xc1\x14\x6b\x2b\ +\xa3\x19\xd0\xfb\xa9\xe4\x56\xb7\xf1\x77\x46\x93\xa7\x5e\x91\x8f\ +\x63\x6e\xa6\xb0\xd9\x73\xf7\xaf\x46\x36\x65\x36\xcb\x60\xc5\x1c\ +\xb0\xea\x56\xf5\x13\xcf\xe6\x4f\xbd\x26\xea\xf0\xc9\xff\x00\xfb\ +\x06\x81\x65\x75\x25\xbc\x81\x94\xef\xdc\x79\xad\x7b\x75\x82\xf6\ +\x2c\xa6\xcd\xdd\x3f\xe2\xaf\x42\xbd\x3a\xf7\x4b\x69\x62\x74\x9e\ +\xc6\x96\xea\x90\xfa\x73\x97\x4d\xd1\xf7\x15\xd7\x76\xb2\x40\xdb\ +\xe7\x03\x83\xe2\xba\x39\xf5\x27\xa5\x2e\xea\x7b\xf8\xa9\x27\x3b\ +\x8a\x56\xa1\x94\x30\xc1\xa2\x4f\x19\x8d\xbc\x83\xc1\xaa\x56\xfb\ +\x40\x1d\x4a\x9a\x24\x4d\x91\x83\xcd\x59\xc6\xa1\x8a\x0b\x02\xad\ +\x8a\xcf\x40\xf4\x00\x34\x4e\x07\x63\xc5\x12\x26\xc8\xdf\x91\x51\ +\x38\xf6\x83\xdc\x1d\xab\x42\xd1\x1c\xc6\x0f\xc5\x5a\xad\x14\x79\ +\x5f\x00\x51\x6d\x6d\xa4\x9e\x5d\x11\x2e\x71\xcb\x76\x15\x37\xa0\ +\x1c\x57\x11\x5a\xb0\xda\x5a\x45\x81\x23\xeb\x3d\xc8\xe0\x50\xfa\ +\xa5\xad\x9b\xd9\xbc\xd0\x36\x1e\x3d\xf6\x35\x9f\x2e\x46\x7a\xb1\ +\x06\x8c\xbe\xec\x63\xbd\x2e\x37\x35\xa5\xd3\xe2\xc6\x24\x61\x9e\ +\xca\x3c\xd6\xf7\xa9\xb1\xa1\x64\x86\x2b\x75\x84\x0f\x7b\x6e\x6b\ +\x52\x15\x10\xc2\x14\x7d\x5d\xe9\x7b\x08\x3d\x21\xea\x3e\xee\xdf\ +\xb5\x1a\x69\x12\x24\x2e\xec\x00\x15\xe5\xca\xee\xb4\xb6\x74\xfb\ +\x8e\x33\xf3\xda\x95\x9a\xed\x03\x15\x07\x26\xb3\x7a\x8f\x54\xf5\ +\x9c\xa4\x1c\x77\x34\xbc\x0d\x34\xaf\xe9\xc2\xa5\xdc\xf7\xf1\x5b\ +\xc7\x0f\xca\x6d\xa5\x71\x7a\xb1\xa7\xb8\xee\x78\x14\xb2\x43\x73\ +\x7c\xda\xc8\xf4\xe3\x1c\xb3\x6d\x9f\xb5\x31\x6f\xd3\xe1\xb6\x4f\ +\xc4\x5f\x48\x19\x80\xce\x93\xc0\xac\xee\xb3\xd6\x1a\x5c\xc7\x6f\ +\xed\x4e\x36\xef\x5b\xc6\x6e\xf0\x0d\x79\x7f\x69\xd3\xa2\x31\x5a\ +\x80\xd2\x70\x5e\x91\xb2\xb4\xb8\xea\x52\x9b\x8b\x97\x2b\x10\x39\ +\x66\x6f\xf6\xa2\x74\xae\x94\x65\x5f\xc6\x5e\x9d\x10\x8d\xc0\x3c\ +\x9a\x62\xf2\xef\xd6\x22\x18\x57\x44\x2b\xc2\x8e\xf5\xbe\x27\x18\ +\xa2\xd3\x34\x6c\xa2\xde\xd9\x74\x42\xbf\xff\x00\x5f\x26\xae\x83\ +\x02\xa9\x6e\xbe\xc2\x48\xde\x99\xb4\x4d\x72\x80\x78\x15\xac\x35\ +\x26\xc0\xd9\x4a\xe3\x3b\x66\x8d\xd1\xd4\x35\xc9\x73\x8c\x2e\xf9\ +\x3c\x55\x6f\x94\x89\x08\x1b\xed\xb0\xab\x74\xdf\x74\x72\xc4\x83\ +\x2e\xea\x42\xfc\xd6\x7e\x4b\xb8\xb1\x99\x7a\xfa\xe6\x24\xf2\x77\ +\x3f\xae\xf4\xef\x4f\x02\x6b\x06\x88\x11\xad\x0e\xa0\x3b\x91\x49\ +\xde\xc4\xc9\x21\x6c\x1c\x1f\xda\xa9\x04\xcf\x14\x81\x91\x88\x23\ +\xb8\xa5\x9b\x9c\x23\x5d\xd9\x65\x55\x98\xf3\xa4\xa4\xa3\xc7\x83\ +\x51\xd1\x6f\x0d\xab\x35\x9c\xa7\x83\x95\x3e\x68\x76\xb3\xfa\xe7\ +\x5c\x60\x2c\xc0\x7b\x93\xb3\x8a\xa5\xf4\x62\x78\x43\xc4\x08\x64\ +\xfa\x47\x71\xf1\x5c\xf5\xea\xa8\xf7\x53\x7f\xe7\x0e\x0e\x0f\x22\ +\x9d\xb7\x94\x9d\x2e\xa7\x12\x2e\xe3\x1d\xeb\x06\x2b\x86\x79\x57\ +\x5f\x22\xb6\xd2\x26\x0a\x1d\x6a\xd9\xc2\x35\xae\x84\x3d\x73\xa5\ +\x35\xbc\x98\x13\x28\xf6\xe7\xcd\x7c\xff\x00\xa9\xda\x49\x6d\x74\ +\xf1\x3a\x90\xca\x71\x5e\xb5\x24\x78\xe4\x13\x44\x70\xc3\x91\x55\ +\xfe\x26\xb5\x8b\xa9\xf4\xf1\x7b\x12\x8f\x59\x3f\xc4\x03\xfd\x6b\ +\x9e\x3f\x4b\xaf\x4b\xdb\xc4\x91\x93\xe0\x8a\x2d\xbc\x8f\x1b\xeb\ +\x8c\xe0\xaf\x22\xa6\xe6\x32\x18\xb6\x31\xbe\xff\x00\x06\x85\x93\ +\xc8\xd9\x85\x77\x47\xa1\xe9\xd7\xb0\x5e\xc5\xe9\x5c\xe3\x51\x18\ +\xcd\x07\xa9\x74\xb7\x84\x17\x8f\xdc\xb5\x8f\x0b\x1c\xfa\x91\xec\ +\x47\x22\xb7\x3a\x47\x55\xca\xfa\x53\x6e\xbc\x1c\xf6\xac\x59\x67\ +\x31\x59\x8a\xe5\x46\x87\x19\x5f\x07\xb5\x52\x54\xc7\xb9\x4e\x54\ +\xfe\xd5\xb7\xd4\x6c\x22\x99\x3d\x58\x4f\x23\x3b\x76\xac\x89\x63\ +\x92\x16\xdf\x8f\xd8\xd5\x99\x4a\x00\x71\x50\xca\x18\x55\xe4\x50\ +\xe0\xe3\x62\x7b\x52\xec\x25\x8c\xf3\x91\x5b\x44\x10\x55\xaa\xe4\ +\x87\x88\x82\x77\xc5\x41\x91\x58\x7b\x81\x1f\x35\x41\xb9\xd2\xa7\ +\x24\xf3\x8e\xd5\x06\x85\xad\xbc\xf7\x0e\x12\x30\x4f\x93\xd8\x56\ +\x86\x16\xda\x1f\xc3\xc4\x76\x1b\xbb\x7f\x51\xa2\x4d\x74\x74\x68\ +\x8d\x44\x6b\xe1\x6b\x3e\xea\x75\x8d\x79\xdf\xb0\xac\xf3\x45\x2f\ +\x67\x23\xd8\x9c\x9f\xda\x84\x87\x45\xb3\x26\x7f\xc4\x60\x4f\xe9\ +\xff\x00\x7a\xa2\xe5\xdb\x53\x72\x7f\x61\x57\x0a\x65\x93\x0a\x36\ +\x1b\x7e\x95\xad\x02\x59\x45\xad\xb5\x1e\x05\x7a\x0e\x97\x6b\xa0\ +\x09\x24\x1b\xf6\x1e\x28\x3d\x16\xc8\x2a\x89\x64\x18\x03\xe9\x15\ +\x6e\xb3\xd5\x62\xb3\x8c\xa2\x1d\x52\x9e\x14\x57\x2c\xb2\xf2\xba\ +\x8a\x6b\xa8\x5e\xc1\x69\x09\x79\x1c\x7c\x0a\xf3\x5d\x43\xa8\x4f\ +\x7d\x26\x01\x2b\x1f\x81\x41\x93\xd7\xbc\x98\xcd\x70\x4e\xfd\x8f\ +\x02\x8a\x88\x89\xc6\xf5\xac\x30\x90\xb5\x58\xd4\x28\xda\xb6\x6c\ +\x67\x4b\x2e\x91\xeb\xae\x4b\x37\x35\x94\xda\x48\xd8\x60\x8e\xd4\ +\x79\x98\xc9\xd1\x1a\x34\xdd\xa3\x6c\x91\xf1\x56\xcd\xa1\x4b\xfb\ +\xfb\x9b\xd9\xb1\xb9\xcf\x0a\x2b\x47\xa1\xf4\x75\x8d\x3f\x17\x7d\ +\xed\x0b\xb8\x53\xda\xa9\xfc\x2d\xe8\xc3\x69\x35\xcc\x8a\x09\x43\ +\xb5\x57\xa8\x5f\xcf\x74\x70\xcd\xa5\x3b\x28\xe2\xb5\x95\xbf\xeb\ +\x8a\x89\xd5\xaf\x8d\xcb\xfa\x68\x34\xc2\x9f\x48\xf3\x4b\xda\xa8\ +\x2d\x93\xbd\x06\x8b\x6a\x48\x93\x03\xbd\x35\xa8\x8d\x28\xc0\x10\ +\x1c\x73\x46\xb5\x1a\x63\x04\x77\xe6\x87\x18\xfe\x41\xc6\xe4\xd5\ +\xa1\x60\x23\xd2\xd9\x07\x3d\xc5\x49\xce\x22\xf3\xa3\x3b\x7a\x88\ +\x77\x5e\xd4\x04\x56\x57\xf5\x21\xdb\x07\x3a\x7b\x8f\xfb\x53\x0a\ +\x7b\x83\x50\xe8\xaf\xee\xc6\x0f\x91\x49\x65\x9a\xa2\x4d\xcc\x17\ +\x63\x4d\xca\x80\xc7\x6d\x63\x9f\xd7\xcd\x23\x7f\xd3\x9e\x2f\x7c\ +\x64\x32\x1e\x08\xe2\x98\x91\x3f\xf9\x54\x91\xfd\x4b\xfe\xf5\x30\ +\xc9\x24\x1b\xaf\xba\x33\xb1\x07\x8f\xfb\x54\xf1\xb8\xf4\x32\x51\ +\x9e\x37\x04\x12\xac\x0d\x69\x5b\x5c\x89\xfd\xf8\xc4\xa0\x7b\xc0\ +\xfc\xc3\xcf\xdc\x53\x12\x5a\x5a\x5e\xc7\xa9\x1b\xd2\x93\xc1\xe0\ +\x56\x6d\xd5\x9d\xd5\x9c\x81\x8a\xb6\x01\xc8\x71\xc5\x5d\xcc\xb8\ +\x14\xbb\x88\x47\x78\xa5\x7e\x97\x20\x8a\xf5\x16\xc8\x7f\x0a\xa0\ +\xef\xb5\x79\xf9\xff\x00\x9b\x6d\x1c\x9a\x70\x43\x83\x8f\xd6\xbd\ +\x1c\x8e\xb0\xdb\x2e\xa3\x8d\xaa\x77\xc2\x95\x99\x74\xb6\xa5\xe3\ +\xbd\x56\x29\x0c\x32\x6b\x4d\xd5\xb6\x65\xf3\x4b\x7e\x2c\x89\xcf\ +\x74\x26\x99\x5c\x32\xec\x72\x0f\x15\x73\xc3\x49\x19\x3d\x72\xc1\ +\x41\x37\x10\x8c\xc6\xdf\x50\xac\x29\xe2\x29\x21\x1f\xd8\xf9\xaf\ +\x5e\xe0\xa8\x2a\x46\x54\xf2\x2b\x17\xaa\xd9\x7b\x48\x51\xf4\xee\ +\xb5\x31\xba\xe2\xab\x20\x67\x3a\xd3\x66\x1f\xbd\x11\x18\x91\xea\ +\x47\xed\x23\xea\x1e\x28\x64\x10\x72\x39\x15\x28\x48\x3e\xac\x78\ +\xd4\x39\x1e\x6b\x5d\x23\x4f\xa6\x75\x16\x88\x81\xfd\xd4\xf7\xad\ +\x5d\x16\xf7\xb1\xe6\x2d\x21\x8f\x28\x78\x35\xe7\x30\xb3\x21\x92\ +\x2d\x98\x7d\x49\xe3\xed\x44\xb4\xba\x78\xdc\x64\x90\x47\x7a\xc6\ +\x58\xef\xa5\xd9\xcb\xbb\x07\x47\x3a\x46\x0f\xf4\x9f\xf6\x34\x9b\ +\xa1\x53\x86\x04\x1f\x06\xb6\xed\xaf\xe3\x99\x04\x77\x2a\x08\xfe\ +\xaa\xbc\xb6\xaa\xf1\xe6\x16\x59\x13\xfa\x58\x03\x52\x65\x67\x14\ +\xd3\xce\xb4\x28\x4e\xe9\x9a\x95\x8c\x28\xd9\x40\xad\x76\x86\x04\ +\x38\x7b\x55\xcf\xfd\x47\xfe\x6a\xd1\x0b\x35\x1b\xda\x29\x3f\x3b\ +\xff\x00\xad\x6b\xcb\xf4\x8c\xeb\xcb\xa0\x9e\xd5\xdc\xd2\x63\x53\ +\x36\xa6\xdc\x9e\x05\x46\x34\xee\x72\x58\xd1\x10\x15\x1f\xe7\x6d\ +\xbe\xc2\xb4\x2c\xa0\x9f\x62\xee\x4f\x26\xb6\xba\x3f\x4f\x0a\xa2\ +\x59\x46\x07\x20\x1a\x17\x44\xb1\x1a\x7d\x69\x86\x00\xdf\x7a\xa7\ +\x58\xea\x85\xc9\xb7\xb5\x60\x14\x6c\xcf\x5c\xf2\xb7\x2b\xe3\x14\ +\x6e\xb5\xd5\xc4\x47\xf0\xf6\x9e\xe7\xe0\x91\xc0\xac\x84\x4c\x31\ +\x92\x66\xd6\xe7\x92\x6a\x8b\xa5\x3e\x9d\xc9\xe5\x8d\x76\xe4\xf9\ +\xad\xe3\x8c\xc6\x20\xad\x22\x8f\x9f\xb5\x74\x77\x01\x5b\x3e\x98\ +\xa1\x84\x63\x53\xe9\x9a\xd0\x60\xb4\x32\x6e\x87\x4b\x78\x35\xd1\ +\x3b\x45\x20\x61\xfa\x8e\xc4\x52\xc5\x18\x76\xa9\x49\x19\x76\x3b\ +\x8f\x06\xa5\x0d\x5a\xca\x96\xd3\xba\xe3\xf9\x17\x1b\x7f\xd0\x6a\ +\x92\x21\x47\x28\xdc\x83\x55\x52\x8e\x84\x1d\xd4\xec\x47\x71\x50\ +\x5e\x50\x00\x75\x12\x60\x60\x30\x38\x3f\xad\x20\x9a\xea\xa9\x73\ +\x9f\xa4\x2f\xdc\xe6\xaa\xf2\xf6\x5d\xf3\xe3\x6a\xa0\xe9\x2c\x88\ +\x76\x72\x28\xa9\xd4\x25\x5d\xb5\xa9\xfb\xd0\x2d\x2c\xae\x6e\x9b\ +\xd8\xa4\x0f\x34\xf1\xe9\x30\x42\x99\xb8\x98\x06\xac\x5b\x8a\xba\ +\xde\xf9\x59\x80\x75\xd0\x4f\xe6\x1c\x7e\xa2\xb5\xba\x5c\xd1\x33\ +\x7a\x52\x28\x3a\xb8\x3e\x6b\x15\x6d\xed\xd9\x75\x42\xe2\x48\xf5\ +\x69\x24\x0c\x15\x34\x78\x01\x82\x71\x10\x3e\xd2\x35\x21\xf1\xe4\ +\x52\xea\xc1\xad\x75\x6d\xa3\x2d\x1e\xe9\xdc\x1e\xd4\x9b\x46\x41\ +\xd5\x16\xc7\xba\xf9\xad\x4b\x59\x3d\x58\x15\xfb\x91\xbd\x0e\xea\ +\xd8\x37\xba\x31\x83\xdc\x79\xa9\x8e\x76\x71\x4d\x33\x15\x03\x36\ +\x13\xf9\x6f\xe3\x38\xfe\xd5\x75\x92\xee\x0c\x86\x52\x57\xbe\xa1\ +\x90\x6a\xd2\xc6\xad\x90\xc3\x07\xcd\x42\x2c\xf1\x9c\x47\x2e\xdf\ +\x7a\xde\xb1\xa8\xe8\x90\x4f\x22\x96\x41\x1c\x4a\x43\x39\x19\xc0\ +\xc1\xff\x00\xb5\x5b\xaa\xde\x7e\x26\x5c\x26\x42\x0e\x07\x9a\x1c\ +\xe2\x77\x04\xc8\xd9\x03\xb5\x2f\x82\x4d\x6f\x0c\x64\xe4\x76\x68\ +\xb6\xd3\xb4\x67\x19\xdb\xc5\x0c\x21\xc5\x54\xec\x6b\x5b\xd8\xd3\ +\x47\x59\x13\x3b\x1a\xa4\xb1\x87\x5c\x1f\xd2\x92\x8a\x46\x43\xb1\ +\xa6\xa1\x9c\x30\xc1\xae\x79\x61\xee\x11\x87\xd6\xad\x3d\x19\x7d\ +\x45\x1e\xd3\xcd\x67\xee\xac\x19\x7f\x51\xe6\xbd\x5d\xf4\x0b\x34\ +\x2c\xa7\x7c\x8d\xab\xcd\x5d\x44\x62\x98\xa1\x18\x19\xa9\x39\x80\ +\x7e\xe0\x44\xd0\x9c\x30\xe6\x8c\x81\x2e\xd0\xbc\x60\x2c\xa3\xea\ +\x4f\x3f\x22\x80\x32\x8c\x58\x7e\xa2\xac\xca\x75\x09\xa0\x38\x61\ +\xbe\xd5\x9e\x95\x68\xa5\x78\xce\x37\x23\xb8\xf1\x5a\x16\xb7\x5e\ +\xd0\x51\xc8\xfb\x52\xf1\x7a\x5d\x41\x3d\xb8\x8e\xe4\x72\x0f\x0f\ +\xff\x00\x7a\x59\x95\x92\x42\xa4\x14\x71\xcd\x5e\xd1\xb2\x6e\x19\ +\xc6\x19\xb3\x54\x67\xf9\xac\xe8\xee\x99\x76\x90\x03\x8a\xe9\xae\ +\x98\x8d\x09\xde\x9a\x02\x4d\x8f\xa8\xe3\x7f\xca\x2b\x4b\xa3\x59\ +\x7a\x8d\xeb\x4b\xb2\x2e\xfb\xf7\xa1\x74\xbb\x36\xb9\x93\xd4\x7d\ +\xa3\x5a\x27\x56\xbf\x04\x7e\x16\xd8\xe1\x06\xc4\x8a\xcd\xb6\xdd\ +\x45\x4f\x59\xea\x1e\xa1\xfc\x35\xb1\xd2\x83\x66\x61\xde\xb3\x94\ +\x60\x60\x0a\xe4\x5e\xc2\x89\x1e\x95\x18\xc1\x63\x5a\x92\x63\x11\ +\x09\x19\x3d\xa8\xa9\x1a\x2a\x92\xf2\x2a\xe2\xb8\x25\xc3\x0c\x05\ +\x20\x1f\x1b\x55\xe2\xb1\x62\x32\xd5\x2e\x4a\x13\xcb\x18\xda\x35\ +\x67\x3e\x78\x15\x46\x9a\x61\xc4\x48\x3f\xbd\x30\x62\x0b\xb2\xf0\ +\x2a\x0a\x8a\x9b\xd8\x42\xe2\xea\xe2\x35\xd5\xe9\xa9\x03\xe2\xaf\ +\x65\x77\x1d\xda\xee\xba\x1b\xef\xb5\x1a\x78\xc3\x29\x04\x67\x35\ +\x94\x0b\xf4\xee\xa0\x1c\x2e\xa8\x89\xf7\x29\xaa\x8d\x57\x89\xd1\ +\xb6\x06\xaa\x59\xf8\x24\xd6\xad\xb4\x31\x5c\x40\xb2\xc6\x75\x44\ +\xe3\x2b\xe4\x51\xbf\xf0\xd4\x2c\x08\x62\x45\x4f\x39\xed\x74\xc5\ +\x48\xde\x43\x80\x39\xad\x6e\x99\xd2\x81\x02\x49\xb6\x14\xed\xbd\ +\xac\x36\xe9\xa9\x80\xda\x94\xea\x9d\x4c\x05\x29\x19\xc0\x1d\xeb\ +\x37\x2b\x97\x10\x1e\xfa\xfa\x1b\x48\xbd\x38\x30\x08\x1d\xab\x0a\ +\x7b\x89\xef\x27\x08\xb9\x25\x8e\x00\xf3\x41\x96\x47\x9a\x4c\x0c\ +\x9c\x9d\x85\x6f\x74\x4e\x9e\x2d\x13\xd5\x94\x03\x2b\x0f\xff\x00\ +\x51\x5a\xd4\xc6\x1d\xa6\xde\xd1\x6d\x6d\x62\xb6\x1b\xbc\x8e\x0b\ +\x7e\x95\x5e\xa6\xbe\x93\x46\x41\xfa\x1c\x53\x76\x2d\xeb\x5d\x1b\ +\x83\xc0\xf6\xc7\xf2\x3b\x9a\x57\xae\x36\x5b\x1d\xcb\x8a\x98\xf6\ +\x56\xaf\x40\x60\x49\x43\xc0\x6a\xd6\x9e\xde\x32\xd8\x56\xd2\xde\ +\x0d\x63\x74\x13\x8b\x96\x1f\xe6\x14\xff\x00\x5e\x94\xc7\x26\x54\ +\xef\x59\xca\x6f\x20\x2b\xdb\x4d\x4d\xc6\x97\xfd\x8d\x21\x2c\x6d\ +\x1b\x69\x61\x83\x4d\xda\xf5\x13\xb2\xcc\xba\xbc\x1a\xee\xb6\xca\ +\x66\x4c\x0c\x7b\x73\x57\x1b\x65\x29\x33\xf4\x63\xcd\x04\xa6\xf4\ +\x62\x73\x55\x66\x55\x5d\x4d\xc0\xfd\xeb\xa4\xa8\xa1\x42\x3e\xd4\ +\x19\xd7\x1b\xd5\x65\xbc\x19\xc6\xa0\x3e\x06\xf5\x45\x9d\x5f\x87\ +\x06\xb7\x05\x80\xc9\xc5\x48\xca\x9f\x91\x55\x15\x7d\x61\x97\xdc\ +\x37\x15\xbd\xe8\x33\x6f\x28\x6f\x6b\x56\x77\x5f\x80\x16\xcf\x91\ +\x45\x49\x01\x3e\xd3\xc5\x57\xa8\xbb\x49\x6e\x7b\x90\x2b\x3a\x97\ +\x98\x31\x88\x38\xdf\xea\x5d\x8d\x44\x6d\xe9\x36\x47\xd2\xdf\xb5\ +\x16\x61\xa5\xd5\xff\x00\x2b\x8d\xfe\x0d\x0a\x40\x06\x57\xb1\xac\ +\x71\x44\xce\x85\x48\x9e\x23\x82\x37\xda\x99\xbe\x90\xcd\x65\x6f\ +\x72\xc0\x07\x6c\xa9\x3e\x71\x49\x96\x22\xd0\x8c\x9d\xce\x05\x31\ +\x76\x34\xac\x36\xe3\xf2\x26\x4f\xdc\xd6\x62\x82\xea\x59\xc7\xda\ +\xb8\xe1\x06\x2a\xcc\xc0\x0a\xa2\xee\x75\x37\x02\xb6\x8d\x1e\xa7\ +\x76\x12\x3f\xc2\x5a\xec\xa3\x66\x23\xbd\x25\x1a\x66\xaa\x4a\xa0\ +\xcb\x1a\x19\x92\x47\x38\x5f\x68\xa9\x8e\x1c\x70\x1c\x55\x88\x0f\ +\xe6\x48\x17\xe2\x89\x14\xf6\xa8\xfa\x63\x5d\x44\xf7\xac\xe2\xb8\ +\x1b\x9a\x7f\xa3\x59\xfa\x8f\xea\xb0\xf6\x8e\x2a\xe5\x84\x93\x75\ +\x5a\x70\x7b\xd3\x56\x30\x29\x7b\xc9\x80\x3e\x9a\x77\xa3\x5f\x4e\ +\x21\x8b\x0b\xfa\x0f\x35\x94\xcc\xcc\xc4\x93\x96\x3c\x9f\x15\xc1\ +\x45\x9a\x5d\xb4\x21\xff\x00\xa9\xa9\x37\x9b\x0d\xb1\x62\x3c\xd4\ +\xdc\x3e\x7f\x96\x9c\x77\x35\xd6\xf1\x99\x1c\x46\xbf\xad\x75\xc7\ +\x1d\x4d\xd4\x5e\x39\xc3\x6c\x4d\x52\xfa\x11\x2c\x7f\x15\x79\xed\ +\xd1\x49\xf4\xd8\x92\x3c\xd5\x23\x90\xee\x8f\x4e\xfa\x43\x5f\xc2\ +\x73\x98\xcb\x59\xc8\x76\x3b\xa5\x6f\xc9\x30\x86\x02\xc7\xb5\x79\ +\x3f\x74\x53\xac\x89\xb1\x53\x90\x6b\x7d\xa6\x17\x9d\x33\xd4\x53\ +\xbe\x37\x1e\x0d\x73\xca\x72\xb0\xaf\x52\xea\x0c\xeb\x8c\xe0\x78\ +\xac\xb9\x1d\xa4\x7e\xff\x00\x02\xba\x7c\x99\x48\x27\x35\xb5\xd0\ +\xfa\x68\x8a\x31\x75\x70\x32\x4f\xd0\xb5\xbe\x31\x88\xb7\x44\xe9\ +\xe2\xdd\x44\xf3\xae\x64\x3b\xaa\x9e\xd4\xdd\xf4\x85\xcf\xe1\x90\ +\xfb\xdf\x77\x3f\xd2\x2a\xd7\x53\x7a\x30\x99\x5b\x77\x3b\x20\xa3\ +\x74\x0b\x12\x75\x5c\x4f\xbf\xe6\x62\x7b\x9f\x15\x8b\x7d\xd5\x5a\ +\x08\xc4\x2a\x18\x8c\x05\x4d\x87\x8a\xc8\xea\x04\xc9\x77\x12\x9e\ +\x4b\x67\xf7\xad\x7e\xa3\x27\xb4\x81\xf9\x8e\x6b\x12\x59\x14\xf5\ +\x20\x49\xd9\x76\xad\x61\xf9\x2b\x6b\xa2\x3a\xac\xe4\x9d\xf7\xcd\ +\x37\xfc\x40\xa4\x95\x90\x6e\xad\xde\xb1\xe3\x79\x23\x6d\x69\xc7\ +\xc5\x3b\x1f\x53\x62\x9e\x9c\xf1\x07\x5f\x9a\x96\x73\xb8\x01\x57\ +\x77\x2e\x72\x4e\xe0\x62\x8c\x12\xda\xe7\xff\x00\x4e\xc6\x37\xfe\ +\x86\xe0\xfd\x8d\x01\x83\x23\x15\x60\x41\x1c\x83\x52\x71\x4a\x87\ +\x65\x45\xd4\xdc\x0a\xcf\x9a\x76\xba\x93\x0a\x48\x40\x71\xff\x00\ +\xd5\x4f\x57\x9c\xed\x0a\x1d\xcf\x34\x95\xc4\xde\x92\x7a\x51\xf3\ +\xdc\xd7\x44\x30\xf3\xc5\x11\xd2\x8b\xab\x1c\x81\x54\x33\x5b\xbf\ +\xf8\x88\x50\x9e\x0d\x67\xe4\xe6\x88\x92\x63\xda\xfe\xe5\x34\xd0\ +\x7d\x43\xae\xf1\xbe\xb5\xf1\x57\x8e\x65\x62\x41\xf6\x91\xd8\xd2\ +\x2a\x5e\x1f\x7c\x4c\x4a\x78\xf1\x4c\x45\x2c\x77\x03\x0d\xed\x6f\ +\x35\xad\xd8\x2d\x78\x8d\xfe\x2c\x5c\x8e\x7e\x6b\xad\xae\x16\x54\ +\xd2\xdb\x37\x71\x52\x1d\xe2\x3a\x64\x19\x07\x83\x4a\xde\xa0\x8d\ +\xc4\x91\x9f\xaa\xac\xfd\x0a\xdf\xa0\x54\x75\xf0\x72\x29\x69\xdb\ +\x6c\xf7\xa2\xdd\x39\x7c\x67\xb9\x19\xa0\xbf\xba\x4c\x76\x1b\x9a\ +\x82\x60\x4d\x52\x47\x19\xe1\x7d\xed\xf6\xab\x4d\x2f\xa9\x2b\xca\ +\x76\xd4\x76\x15\xc8\x74\xdb\x96\xe1\xa6\x3f\xd9\x68\x5f\x51\xf8\ +\xa9\x04\x8f\x73\x64\xf0\x29\xab\x0b\x57\xb9\x90\x6d\x84\x1d\xea\ +\x96\x56\xed\x71\x28\x55\x04\x28\xe4\xd3\xbd\x42\xe5\x2d\xe1\x16\ +\xd6\xfc\xfe\x63\x53\x2b\x7a\x9d\x8c\xc6\x80\x86\xfe\x63\x64\xd4\ +\xec\xa3\x15\x53\x29\x66\x21\x01\x63\xf1\x52\x90\x3b\x90\x65\x27\ +\x1f\xd2\x0f\x3f\xad\x76\xf2\x98\xf6\x22\x22\x25\x98\x20\xdf\x7d\ +\xf1\x5b\x22\x68\xed\xe1\x09\x8d\xf1\xf4\x8a\x42\x2d\x31\x02\xb1\ +\x28\x51\xe1\x7f\xe6\xa5\x62\x67\x7d\xff\x00\xb0\xae\x19\xe5\x72\ +\xab\x13\x23\xb4\xf2\x6a\x24\xf8\xa1\x5d\x48\x10\x7a\x69\xc9\xe6\ +\x8d\x78\xc2\xdd\x74\x29\x05\xcf\x6f\xe9\xa4\xcf\xb4\x12\x77\x26\ +\x98\x63\xb2\xa0\x0c\x6c\x37\x26\x9e\x44\x16\xd6\xf8\xff\x00\xdc\ +\x7e\x7e\x2a\x3a\x64\x01\x54\xdc\xcb\xc0\xfa\x73\x55\x91\xfd\x49\ +\x4b\x53\x2c\xbc\xae\xa0\x90\x36\xde\x83\x71\x16\xa1\x90\x37\x14\ +\x65\xae\x62\x01\xc1\xa2\x14\x53\xa9\x74\xb1\xc1\x1c\x53\x3d\x2a\ +\xe4\xdb\xcc\x63\x73\x88\xdf\x63\xf1\x43\xb8\x8b\x57\xb9\x79\x14\ +\x0c\xe7\x63\xc8\xa6\xb6\x18\xea\x11\xfa\x57\x59\x1b\x82\x72\x0f\ +\x9a\xf4\x76\x72\xa4\xb1\x44\xe3\xe8\xf4\xc6\x3e\x3c\xd7\x9d\x8d\ +\xfd\x7b\x7f\x49\xcf\xbd\x07\xb4\x9e\xe3\xc5\x3d\xfc\x3b\x71\x84\ +\x30\x31\x39\x53\x95\xfb\x77\xa9\x79\x8a\xd0\xb0\x88\xf5\x0e\xa7\ +\xea\x6f\xa1\x5b\x08\x3c\x0f\x35\xe8\x2f\x15\x61\xb4\x58\xa3\x18\ +\x07\x6a\xc9\xfe\x17\x2b\x14\x97\x08\x4e\x19\x4e\x40\xf2\x0d\x6c\ +\x48\x16\xe6\x15\xd2\xf8\x22\xb9\xe5\xda\xb0\xaf\x89\x69\x88\xe0\ +\x0d\x85\x65\xbd\x9b\xb3\x93\xa8\x57\xa6\xba\xb7\x82\x35\xd7\x70\ +\xe8\xa0\x56\x55\xef\x57\xb3\x84\x14\xb5\x84\x48\xc3\xf3\x37\x15\ +\xd3\x1b\x7d\x25\x20\xb6\x57\x24\x7b\x5c\xfe\x99\xa1\xcf\x15\xd4\ +\x1f\x51\x6a\xb4\x97\xb7\xf7\x5c\x48\x51\x3e\x3d\xa2\xac\xa9\x70\ +\xd0\xe2\x59\x88\x4f\xea\x6d\x87\xef\xcd\x6b\xae\xc0\x6d\x6e\x24\ +\x49\x41\xd6\x70\x4d\x6a\x5d\xdc\x0d\x3e\xa3\x9d\xca\x8c\x9a\xc9\ +\x2b\x00\x7c\x25\xca\x16\xed\x9c\xe0\xfe\xb8\xa1\xde\xdc\x4a\xcf\ +\xa1\x86\x9c\x72\x29\x64\xb5\x13\x2c\xd9\x99\xa6\x3c\x9d\x80\xa5\ +\xc0\x69\x1f\x61\x92\x6b\x91\x4b\xb6\x33\xfa\xd3\xd6\x6b\x1a\x0c\ +\x0c\x13\xe6\xb4\x16\xfc\x14\xf8\xc8\x23\x8a\x0a\xfb\xbd\xa7\xea\ +\x1f\xbd\x6d\x0d\xd6\xb3\xfa\x9c\x1a\x64\xf5\x54\x60\x37\x38\xec\ +\x6a\xd9\xa0\xbc\x52\x14\x3e\x47\x71\x52\xe5\x35\x6a\x4c\xa9\xa1\ +\x33\x31\x23\xda\x09\xff\x00\x5a\xbc\x70\xcd\x21\xf6\xae\x91\xe4\ +\xd4\xd6\x83\x96\xd3\x89\x07\xa7\x20\xcd\x06\xe8\xe2\x3d\x3f\xe6\ +\xa0\xdb\x6b\x8e\xf0\x23\xf3\x44\xbd\x61\xab\x63\xc6\x4d\x27\x14\ +\x2f\x21\xf7\x6f\xd8\x55\x61\x5d\x6e\x01\xfc\xdb\xb1\xf0\x2a\x1c\ +\x82\xd8\xf2\x72\x6a\xed\xec\x88\x8f\xcd\x26\xe7\xe0\x76\x15\x28\ +\x89\x9b\x5c\x9b\x6c\xa3\x65\x1e\x05\x5e\xda\x17\x9a\x41\x1a\x0f\ +\xbd\x52\x18\xd9\xdc\x2a\x8c\x93\x5a\x2e\xc9\x61\x6f\xa5\x77\x95\ +\xbf\x6a\x96\xe8\x4d\xd4\xc9\x65\x07\xe1\xe1\x23\xd4\x23\xdc\x7c\ +\x56\x69\x6c\x1c\xb1\xc9\x27\xfb\xd4\x3b\x9c\xeb\x73\x96\x35\x54\ +\x0c\x5b\xd4\x6d\xb0\x72\x2b\x58\x60\x1b\x8a\x10\x83\x03\x6a\xb8\ +\x45\xce\xfb\xfd\xe8\x2b\x70\x73\x82\x06\x0d\x31\x19\x57\x5d\x42\ +\xb9\xd9\xa5\x12\xde\x03\x23\xe9\x50\x07\xfb\x54\xde\xdd\x43\x6d\ +\x98\x20\x21\xe6\xc6\xed\xd9\x6a\xf3\x49\xe8\x74\xa9\x25\x41\xee\ +\xc7\x35\x93\x6e\xa0\x46\x0f\x2c\x77\x27\xcd\x31\xc7\xca\x8b\xe3\ +\x72\xcc\x72\xc7\x92\x68\xb6\x56\xe6\xe6\x7f\xf2\xaf\x35\x48\x91\ +\xa6\x94\x46\x9c\x9a\xd5\x40\x96\xb6\xba\x57\xb0\xdc\xf9\xad\x7c\ +\x99\x6a\x6a\x12\x16\xea\x72\x84\x41\x12\xed\x8a\x52\x32\x58\xe9\ +\x15\x4b\xa9\x0c\xb3\x12\x3c\xd3\x08\x12\xd6\x0d\x6f\x82\xed\xc0\ +\xac\x4e\x20\xb4\x8c\xb0\x45\x96\xdd\x8f\x02\x92\x77\x67\x6d\x44\ +\x9d\xeb\xa5\x76\x96\x42\xef\xdf\x81\x4e\x74\x9b\x07\xb9\x94\x0c\ +\x1c\x7f\xa5\x6e\x4d\x4d\xd4\x29\x1c\xac\xbf\x22\xaf\x22\xac\x8b\ +\xad\x4e\xe2\xbd\x15\xe7\x40\xb6\xf4\xc0\x0f\xa1\xf1\xde\xb1\xfa\ +\x87\x4b\xba\xb3\x3a\xd4\x6b\x4f\xea\x5d\xf1\x52\x65\x2a\xe8\x82\ +\xb1\x0d\x91\xb3\x0a\x3c\x73\x14\x99\x6e\x13\xea\x07\xdc\x3c\xd0\ +\x8e\x97\x19\xe1\xaa\xa0\x90\x6a\xa3\xd3\x59\xce\x89\x71\x15\xd2\ +\x9f\x63\xae\x97\x3f\x07\x8a\x8e\xa1\x7d\x3d\xaa\x95\x46\x20\xe7\ +\x15\x8f\xd2\xae\x82\x66\x09\x0f\xf2\xdf\x8f\x8a\xd0\xbd\x43\x35\ +\xb1\x07\x77\x41\xcf\xf5\x0f\x35\x27\x7c\xa9\x66\xfc\x6d\xd8\xd6\ +\xe5\xb4\x77\x63\xb0\xa2\xda\xda\x2b\x1f\xe5\xae\xb2\x39\x76\xd9\ +\x45\x75\x90\xf5\xbf\x0f\x1b\x13\xa7\x24\x11\x9f\x14\x3e\xab\x7a\ +\xe5\x8c\x11\x00\x91\xae\xd8\x1b\x52\xdb\xbd\x44\x16\xe2\xe6\xde\ +\xdb\x64\xc4\xd2\xff\x00\x51\x1e\xd1\xf6\x15\x97\x7b\x77\x2c\xf2\ +\xfb\x9c\xbb\xf8\xec\x28\x32\x39\x76\x2b\x19\xfb\xb5\x58\x28\x88\ +\x61\x46\x5c\xd5\x93\x43\x95\x7d\xc0\x13\x96\xe4\xfc\x53\xb7\x31\ +\x34\x97\x0a\x80\x7b\xb4\x0c\xe7\xed\x43\xb0\x84\x34\xc1\x58\xed\ +\xf5\x39\xf8\xa7\x6c\x07\xab\x77\x2c\xc7\x81\xb0\xa6\xf4\x12\x36\ +\xd3\x01\xc6\x2b\xad\xd9\x96\x60\x3e\x77\xad\x2b\xc9\x16\x38\xce\ +\x69\x0b\x24\x32\x4a\x5f\x1b\x03\x5b\xef\x1d\x8d\x18\xcf\xb2\xb9\ +\xb7\x1b\xd4\x20\xda\xa6\xad\xe6\x0a\x2c\x51\xaf\x0a\x07\xe9\x5c\ +\xc3\x02\xaf\x43\x9d\xc2\xa1\xfb\x57\x3a\x33\xc6\xfd\x41\xdb\xfa\ +\x45\x2f\x70\xf9\x63\xe2\xaf\xac\xe8\x79\x4f\x32\x1f\xda\x97\x39\ +\x63\x5a\x82\xd1\x0c\x9d\x4d\xc0\xdc\xff\x00\xb0\xa9\xf7\x3c\x99\ +\xc6\x49\x3c\x57\x1e\x02\x0f\xd7\xef\x4f\xda\xc4\x96\xd0\xfe\x22\ +\x5e\x71\xed\x15\x9b\x74\x2d\x10\x8e\xc6\x0d\x6f\xbc\xac\x36\x1e\ +\x2b\x3e\x79\x4b\x39\x77\x39\x24\xd5\xae\x25\x79\xa5\xce\x0b\x33\ +\x6c\x00\xa3\x7a\x31\xda\x47\xea\x5c\x10\xd3\x1e\x13\xfa\x69\x8c\ +\xd7\x37\xb5\x02\x38\xf4\xff\x00\x36\x5e\x7b\x29\xaa\x3b\x7a\x8d\ +\xe9\xaf\x27\x93\x56\x29\x24\xc4\xbc\x87\x48\xf1\x44\x8b\xd2\x8d\ +\x72\xa7\x71\x5b\xb9\x6b\xa4\x04\x0c\xed\xc1\xa2\xdb\x4a\x63\x7c\ +\x37\x07\x9a\xe9\xe3\x1f\x52\xd0\xb3\x9e\x6a\x0d\x58\xf4\xcd\x6a\ +\xf0\xe4\x15\x71\xb1\xac\xb8\x83\x21\x68\x5f\x66\x43\x83\x46\xb2\ +\x9c\xc3\x20\x0c\x7d\x87\x9f\x8a\xbf\x59\x8c\x65\x2f\x23\xdf\xb3\ +\xe3\xb8\xac\x4e\x2a\x8b\xd2\x18\x28\x7d\x86\xa1\x51\xd4\xee\x4f\ +\xd1\xe6\x81\x69\x22\xa4\xc1\xb3\xed\x61\x83\x42\xea\x39\x17\x43\ +\x3c\x1e\x2a\x59\xf6\x3d\x09\x0b\x24\x09\xea\x38\xcb\xfe\x51\x42\ +\x95\xde\x46\xf5\x1f\xbf\x02\xab\x18\xd6\xc5\xdb\x7c\x53\x16\x50\ +\x34\xd2\x06\x23\xdb\xd8\x79\xad\xc9\x27\x35\x16\xe9\xf6\xaf\x3c\ +\xca\x31\x9c\x9d\x85\x7b\x1e\x93\x69\x1d\x9d\xa9\x91\x80\xc8\xfd\ +\xe8\x3f\xc3\xfd\x35\x63\x8c\x48\xe3\x0d\x8c\x9f\x81\x51\xd6\xaf\ +\x32\xde\x8c\x7b\x01\x5c\xb2\xb7\x3b\xa8\xa5\x3a\x8d\xc3\x4f\x70\ +\x4e\x76\x15\xd1\x25\xcc\x6b\x94\x39\x07\x90\x7b\xd0\x6d\xd7\x54\ +\xc0\x7c\xd6\x90\xc6\x77\xe2\xb5\x95\xd4\xd1\x18\xfd\x46\xc6\x2b\ +\x8c\x90\x82\x09\x7c\x8f\xa5\xbf\xe2\xb1\xae\x23\x78\xa4\x29\x28\ +\xc3\x0f\xde\xbd\xa4\x90\x47\x2c\x64\x66\xb3\x7a\x8f\x4f\x0e\x9a\ +\x5d\x75\x01\xc1\x1c\x8a\x98\xe7\x3a\x34\xf3\x35\xa9\xd2\xee\xcb\ +\xc6\x23\x63\xfc\xc4\xce\x9c\xfe\x61\xe2\x93\xbe\xb5\x7b\x77\xfe\ +\xa5\xec\xd4\x05\x25\x58\x30\x38\x20\xe4\x1a\xd2\x36\x58\x34\x32\ +\x89\x23\x3b\x67\x50\xf8\x3d\xc5\x21\xd6\x50\xac\x8e\xc9\xc3\x8c\ +\x83\x4d\xd8\x5c\xac\xe9\xa1\xfe\xbe\xff\x00\xf3\x53\x73\x09\x78\ +\x4c\x7d\xc6\xe9\xff\x00\x14\xdf\x2a\xc9\x85\xd5\x2d\xf5\x01\xbf\ +\x14\x58\x13\x4a\x7a\xae\x72\x5b\x7a\x01\x4d\x2c\xf1\xf6\xe4\x53\ +\x76\x84\x39\x84\x73\xbd\x69\x0c\x7f\x81\x66\x7f\xf9\x24\xdc\xfd\ +\xbb\x0a\x3d\xb3\x08\x2d\x37\x3c\x72\x7e\x69\x77\x26\x5b\xa2\x49\ +\xce\x9d\xfe\xf5\x17\xcc\x70\xb0\xae\xe4\x6e\x69\x20\xa4\xf2\xb5\ +\xc4\x81\x57\x38\xa7\xad\xa3\x11\xc6\x16\x85\x65\x6f\xa0\x6a\x3c\ +\xd3\x20\x56\xad\x13\x5d\xda\xa2\x56\x08\x3d\xc7\x7f\x14\x9d\xcd\ +\xc1\xf3\x8f\x8a\xce\xed\x06\x9e\xe5\x23\x07\x1b\x9a\x46\x59\x9d\ +\xd1\xf3\xcb\x6c\x28\x6c\xc5\x8d\x70\xd8\x67\xfa\x77\xa6\x80\xee\ +\x9b\xdf\xa5\x78\x1b\x0a\xa2\x8d\x2b\xf2\x6a\x57\x76\x2c\x69\xbb\ +\x28\x06\x9f\x5e\x73\x85\x1b\x80\x7b\xd2\xdd\x09\xb2\x81\x63\x8f\ +\xd7\x9b\x60\x38\x06\x85\x3c\xb2\xdd\x4e\x15\x14\xb1\xe1\x54\x51\ +\x24\x69\x2f\x26\xd2\x83\x08\xbf\xd8\x0f\x26\xba\x59\x23\xb7\x43\ +\x14\x07\x73\xf5\x3f\x73\xf6\xf8\xac\xce\xf7\x7b\x55\xa2\xf4\xed\ +\x01\xd3\x87\xb8\xee\xdf\x95\x3e\xd4\xb4\x92\x7b\xcb\x6e\xce\x79\ +\x63\x54\xcb\x3e\xc0\x6d\xe0\x55\x91\x54\x1d\xfd\xc7\xe3\xb5\x6b\ +\x48\xab\x33\x31\xdc\xe6\xbb\x43\x63\xe9\x34\x50\xf8\xd8\x05\x1f\ +\x6a\xba\x48\x78\x6c\x11\xf6\xaa\x07\x1b\x8e\xdf\xda\xa6\x48\xc3\ +\x2e\xa4\xa3\xf5\x1b\x07\x85\x8d\xc5\xb0\xd7\x0b\x6e\x31\xda\x94\ +\x8e\x42\x0e\x57\x63\xdc\x56\x65\x97\xa1\x53\x90\x70\x68\xd6\xb3\ +\x85\x1e\x9c\x9b\xa1\xdb\x7e\xd5\x0c\x16\x45\xca\xec\xd4\x22\x08\ +\x38\x35\x7b\x13\x24\x46\x09\x8c\x64\xe5\x1b\x74\x35\x37\xd9\x96\ +\xcb\x5f\xe7\x8f\x9a\xba\xb0\x96\x1f\x45\xf9\x07\x28\x7c\x1a\x1a\ +\x92\xac\xc1\xc6\xc7\xda\xe2\x94\x0a\xd5\xb5\x44\xd5\xe9\x7f\x84\ +\xa1\x49\x88\x2e\x33\xa4\x0c\x57\x97\x40\x61\xba\x68\xb9\x07\x71\ +\xf6\xaf\x5d\xfc\x24\x9f\x85\xe9\xad\x77\x21\xe7\x65\x1e\x6b\x39\ +\xdf\xaf\x0b\x1b\x1d\x56\xe9\x6d\x6d\xfd\x24\x3e\xe2\x37\xc5\x60\ +\x3b\x16\x62\xc4\xe4\x9a\x25\xdc\xcd\x3c\xc6\x46\x3c\xd0\xa9\x86\ +\x3e\x31\x0c\x59\x15\x46\xd4\xc7\x6a\x65\x67\x47\xe0\x71\x59\xd4\ +\x6b\x45\x25\xb2\x78\x14\xca\x7b\x58\x6e\x49\x04\x60\xb9\x6c\x0a\ +\x98\xee\xa2\x71\x82\xe0\xfc\x83\x59\x97\xf3\x09\x64\xd2\xbf\x4a\ +\xfe\xf4\xac\xb9\x8c\x65\x99\x57\xee\x71\x58\xf0\xd9\xb6\xb5\xec\ +\x11\xc9\x19\xd4\xa3\x07\xbf\x63\xf7\xac\x0e\xa3\x62\xf0\x31\x65\ +\x04\xa7\xfa\x53\x76\xb7\xce\x98\xc3\x87\x5e\xe3\x39\x06\x9d\x47\ +\x8a\xe1\x3f\x97\x8c\x9e\x63\x27\xfd\x29\x37\x89\xdb\xce\x23\x32\ +\x30\x65\x38\x22\xb5\x6c\xae\x44\xe3\x49\x38\x61\xbf\xeb\x42\xea\ +\x36\x38\x26\x48\x41\xdb\xea\x52\x37\x14\x84\x6c\xd1\xb8\x65\x38\ +\x22\xb7\xdc\x43\x3d\x5e\xd8\x86\xf5\x90\x6e\x39\x14\x0b\x46\xc1\ +\xc0\xdb\xf3\x2f\xdf\xc5\x69\xdb\x4c\x97\x56\xe5\x4e\x35\x63\x04\ +\x56\x55\xcc\x6f\x6f\x30\xc7\x19\xca\xd2\x5f\x41\xe8\xce\x2e\x01\ +\x1f\x9c\x66\x89\x68\xba\xa6\x91\x98\x64\xea\xa5\xa0\x7d\x51\x82\ +\xbc\xae\xe3\xfd\xc5\x33\x03\xe9\x9b\x23\x89\x06\x7f\x5a\xd4\x0d\ +\x8d\x85\x0e\x59\x82\xec\xa7\xf5\xa1\xdc\x4c\x73\xa7\xf6\x14\xa4\ +\xd2\x1c\xe0\xff\x00\x6a\x02\x4d\x2f\x3b\xef\x4b\x92\xcc\x7c\xe6\ +\xa4\x29\x66\xdf\x7a\xd3\xe9\xf6\x62\x35\xf5\xa6\x1f\x20\x1a\x99\ +\x65\x20\x5e\xd6\xd4\x24\x66\x69\x86\x30\x32\x05\x27\x78\xc0\xb3\ +\xb2\xf0\xdb\xd3\x7d\x56\xe8\xcb\x21\x44\xfa\x45\x24\x41\x2b\xc6\ +\x45\x4c\x65\xee\xaa\xf6\x56\xfa\x86\xb9\x3f\xc3\x5d\xcf\xcd\x5a\ +\xe6\x5f\x59\xf1\x9d\x31\xaf\x00\x50\xb5\xcb\xe9\x08\xf2\x0a\x8e\ +\x2a\x84\x7f\x51\xfe\xd4\xf1\xbb\x41\x1e\x7c\x27\xa7\x16\x42\xff\ +\x00\xad\x0f\x4e\x0e\x5c\xd5\x24\x95\x23\x5c\xf1\xfe\xb4\xbf\xe2\ +\x4c\x87\xda\x8e\x40\xec\xa2\xb5\x31\xd0\x68\x39\x63\xa5\x14\xb7\ +\xc0\xa2\xc5\x6b\x33\x9c\xbe\x54\x78\x1c\xd2\xa8\xfd\x43\x4e\x22\ +\x68\xe0\x1e\x02\xea\x3f\xde\xb8\x5b\x5c\x3b\x89\x1e\xf2\x76\x90\ +\x70\x43\x60\x7f\x6e\x29\xaa\x34\xe2\xe9\x4b\x32\x1f\x4e\x72\x1c\ +\x76\x6a\x5a\x7b\x7b\x9b\x56\xc4\xd1\x9d\x3f\xd4\x38\xa8\x49\x7a\ +\x94\x64\x1d\x69\x26\x3b\xb2\xe1\x8f\xea\x2b\x42\xcf\xad\x44\xea\ +\x20\xbd\x89\x97\x56\xd9\x61\xb5\x63\xef\x14\xad\x8d\xfc\xf6\x5f\ +\xcb\xd3\xea\x41\xfd\x3c\x91\x45\xbe\xb6\x8e\xe9\x3f\x15\x62\x41\ +\xfe\xa4\x1c\x8a\x50\xe2\xa2\x32\xf1\x4b\xea\xc0\xfa\x1c\x7f\x63\ +\xfa\x56\xee\x1c\xee\x22\x88\xc4\x36\x0e\x43\x0e\x68\x8e\x04\x83\ +\xc1\xa3\xbc\x90\x5e\x26\x2e\x53\xd1\x9c\x70\xeb\xc3\x52\xae\x1a\ +\x29\x74\x39\x07\xc1\x1d\xe8\x2a\x41\x07\x07\x63\x56\x95\xb5\x44\ +\x18\x8f\x76\x71\x9f\x22\xa2\x53\x9c\x79\xa0\xfb\xe7\x99\x61\x87\ +\x76\x63\x8a\xa0\xfd\x1a\xcd\xef\xfa\x88\x03\xe8\x5d\x8b\x1e\x00\ +\x15\xe9\x2e\xe6\x56\x45\x82\x21\xa6\x28\xc6\x00\xf3\xf3\x4b\x58\ +\xc2\x96\x56\x42\xde\x3f\xa8\x8f\xe6\x37\x9f\x8a\xba\x2b\x33\x00\ +\xa0\x93\x59\xd7\xb1\x00\x12\x70\x06\x4d\x39\x6d\x66\xe5\x75\x11\ +\xfd\xe8\xd6\x96\xe9\x02\x7a\x92\xee\xde\x2a\xb7\x17\x6c\x4e\x10\ +\xaa\x81\x58\xb9\xdb\xc4\x5d\x14\xba\x8f\xd3\x9b\x4e\x6a\x92\xb1\ +\x29\xe9\x26\x40\xee\x68\xf2\x24\xb3\x39\x25\x46\xc3\x76\xec\x2b\ +\x2b\xac\xf5\x48\x6d\x50\xc3\x6a\xe2\x49\x8f\xd5\x20\xe1\x7e\xd5\ +\x7b\x9a\x13\xd4\xae\x61\xb2\x8f\x4e\x43\x4c\x46\xc8\x3b\x7c\x9a\ +\xc8\x09\x25\xd3\x99\xa7\x62\x4b\x1a\x8b\x68\x9a\x56\xf5\xa5\x24\ +\xe4\xe7\x7e\x5a\x9f\x86\x3c\x8c\x9d\x80\xad\xc9\xa4\x29\xf8\x52\ +\x87\x54\x65\x90\xf9\x14\x48\xee\x6e\x21\x20\xba\xea\xff\x00\x32\ +\x9c\x1a\xbd\xe4\xe1\x13\x3f\xd8\x79\xa0\xb4\x97\x18\x19\x80\xe0\ +\xf9\x34\x1a\x96\xb7\xb1\xce\x06\xa6\xf7\x70\x1b\xfe\x68\x77\xf6\ +\xa2\x4f\x7a\x00\xaf\xf1\xc3\x7d\xab\x37\x28\x5b\x20\xb4\x4f\x4c\ +\x5b\xde\x3c\x5e\xd9\xb0\xcb\xe4\x56\x75\xf8\x02\x46\x78\x64\xc8\ +\xc8\x61\xcd\x3c\x4c\x77\xb6\xc4\x70\xe2\xa2\x78\x92\xe6\x3d\x68\ +\xc0\x9f\x23\x9f\xd6\x92\x05\xe1\x97\x6d\x98\x53\xb1\xd0\x3b\x43\ +\x31\x46\xe7\x34\xe4\x47\xdb\xa0\x7d\xd4\xd0\xae\x51\x6e\xe1\xf5\ +\x13\x69\x17\x91\xe6\x87\x6b\x21\x65\xd3\x9c\x32\x9d\xaa\xc0\x66\ +\x90\x97\x62\x76\x20\x55\x23\x1a\x8f\xcf\xee\x68\xd2\x28\x65\xf5\ +\x17\xb8\xc3\x0a\xa5\x89\x1f\x89\x4c\xf1\xa8\x66\xb4\x35\x3a\x65\ +\x90\x8d\x04\xf3\x8f\xfa\x54\xd0\xba\xc5\xe6\x47\xa6\xa6\x99\xeb\ +\x17\x26\x35\x2a\x2b\x09\xd8\xb3\x12\x7b\xd7\x2c\x66\xfe\xd5\x5c\ +\x37\x34\x54\x5c\x2e\x0d\x44\x4b\xdc\xd4\xc8\x74\xae\x6b\xb4\x88\ +\x0c\x8b\xb9\x00\xe2\xba\x34\x57\x3a\x58\xe1\xbb\x67\xbd\x4b\x12\ +\x4e\x4d\x4c\x41\x58\xe1\x94\x1a\xd5\x82\x45\x8b\x31\xe1\x4f\xdc\ +\xd1\x97\xa7\xc8\x17\xf2\x8f\xd4\x54\xc3\x10\x27\x09\x23\x29\xf0\ +\x77\xa3\x24\x13\x9e\x4e\xc3\xbd\x62\xec\x0d\x6d\x11\x37\x92\x40\ +\x7e\x05\x4b\x98\xd1\x72\xab\xa4\x79\xef\x5d\x70\x56\x2f\xa9\xb5\ +\x1f\x8a\x52\x47\x67\x39\x35\x66\x3f\x91\x69\x25\x66\x3b\x6c\x2a\ +\x8c\x75\x2e\x96\x01\x87\x83\x57\xb6\x89\xa5\x7c\x0e\x3b\x9a\xb5\ +\xcb\xa8\x6d\x11\x81\x85\xf8\xe6\xad\xb3\xa1\x47\x65\x27\x65\x15\ +\x42\x01\xf8\xae\xae\xa0\xa4\x84\xae\xd9\xd8\xd5\x5d\xb5\x15\x07\ +\xb5\x75\xc3\x70\x3b\xd5\x19\x82\x82\x7b\xd4\xa2\x27\x62\x4e\x95\ +\x19\x2c\x70\x00\xef\x5b\x1d\x22\xcc\x5a\xc5\xad\xc0\x32\xb7\x27\ +\xc7\xc5\x03\xa2\xd9\x85\x02\xe6\x61\xef\x3f\x40\x3f\x96\xb5\x11\ +\x0b\x1f\x8e\xe6\xb3\x47\x46\x85\xdb\x03\xfb\xd3\x70\x98\xe0\x5c\ +\x82\xab\xe5\xdc\xe0\x56\x67\x52\xea\x90\x59\xa9\x8e\x3c\x49\x20\ +\xfc\xa0\xff\x00\xa9\xac\x5b\xbb\x9b\xcb\xd7\xd5\x34\x87\x1d\x87\ +\x61\x59\xd5\xc9\x5e\x9e\x4e\xab\xd3\x52\x5c\x48\xe6\x66\x1d\xfb\ +\x0a\x15\xe7\xf1\x0d\x8c\x03\xf9\x10\x29\x3c\xf1\x5e\x55\xe1\x90\ +\x6e\x0e\xf5\x06\x30\x83\x54\xad\x92\x78\x1e\x6a\x78\x43\x67\xfa\ +\xaf\x5b\xbe\xbf\x52\x9a\xbd\x38\x87\x61\xb5\x2b\x67\x6d\xac\x7a\ +\x92\x6c\x9d\x87\x76\xa2\xda\xdb\xe5\x44\x93\x8c\x2f\xe5\x4f\x3f\ +\x7a\x6e\x24\x2c\x78\xda\xb7\x24\x9d\x22\x21\x8f\x51\xce\x36\x15\ +\x6b\x87\x00\x15\x1b\x79\x34\x49\x59\x63\x4c\x01\xbd\x67\xdd\x33\ +\xcb\x2f\xe1\xa3\xdd\xdf\x9f\x8a\x09\xb5\x1e\xbc\xcd\x3b\x0f\xe5\ +\xc7\xb2\x8f\x26\x9c\xd0\xa0\x8d\x7e\xe7\x6e\x73\xda\xa2\x14\x48\ +\xd4\x22\x8f\xe5\xc5\xff\x00\xf4\x6a\xb9\x26\x4c\x9e\x49\xab\x20\ +\x39\xb4\x47\x18\xc7\x3d\xa8\x17\x1d\x36\x45\x24\xc4\x4f\xfd\x27\ +\x8a\xdb\xe9\x89\x11\xb8\x60\xec\x03\x01\xed\x07\x6c\xed\x5d\x73\ +\xac\x48\xc0\x8c\x6f\xc5\x67\x7c\x8f\x36\xa6\x7b\x57\xc8\x0d\x1f\ +\xc7\x63\x4d\x2c\x90\xdd\xa6\x92\x34\xc8\x29\xfb\xa1\x1b\xae\x99\ +\x50\x10\x7e\x2b\x3a\xe2\xc1\x87\xf3\x2d\xdf\x20\x6f\x8c\xee\x2a\ +\x76\x02\x0c\x96\xf3\x7c\x8f\xde\xa6\xe5\x41\x1f\x89\x8b\x91\xf5\ +\x28\xae\x49\x84\xa3\xd3\x9b\xda\xe3\x60\x4d\x40\xd7\x0c\x9b\xf0\ +\x7f\xb1\x14\x07\xb5\x94\x11\xa8\x6e\xad\xb1\x15\x07\xd9\x36\xde\ +\x76\xa5\xc9\x11\x49\xa9\x77\x8d\xb9\xf8\xa3\x1f\x72\xe7\x92\x3f\ +\x7a\xd4\x1a\x3d\x64\xeb\xb6\x8a\x50\x7e\xa0\x2b\x3e\x25\x2e\xe1\ +\x40\xf8\xa7\x6c\x5b\xf1\x16\x12\x5b\xb6\xe5\x3d\xcb\x4a\x5b\x9d\ +\x17\x0b\x9d\xb0\x77\xa9\x8f\x1c\x02\xb2\xe1\xf4\x8e\xd4\x09\xf3\ +\xea\x63\xb0\xad\x19\x21\x02\x53\xdb\xe6\x95\xba\x8f\x9c\x60\x91\ +\xde\xb7\x8e\x41\x77\x18\x18\xfd\xe8\x91\x00\x13\x23\xbd\x0c\x1d\ +\xb0\xd5\x2a\x4a\x6f\xc8\x35\xa0\xcd\xbc\x82\x32\x49\x07\x35\x17\ +\x17\x4c\x46\x01\xc0\xa5\xda\x42\x78\xda\xa8\x77\xa9\xe3\xee\x89\ +\x62\x49\xc9\xa9\x89\x0b\xb6\x05\x54\x0c\x9c\x0a\x7e\xda\x2f\x4e\ +\x20\x74\xee\x79\xa6\x57\x42\xcc\x9e\x8c\x1a\x17\x96\x1b\xfd\xa9\ +\x67\x8d\x47\xb9\xce\x05\x1a\xf2\xe1\x73\xb9\x05\xbc\x0a\x4e\x47\ +\x67\x39\x63\x58\xc6\x5f\x62\xb5\x0c\x40\x52\x4f\x6a\x93\x4b\xdc\ +\x3e\x5b\x48\x3b\x0e\x6b\x62\xac\xd9\x62\xed\x4e\x74\x8b\x43\x33\ +\x89\xe6\x5f\x60\xfa\x41\xef\x42\xe9\xd6\xad\x73\x28\x67\x18\x8d\ +\x7f\x7a\xd8\x9a\x48\xad\xa0\xd4\xc4\x05\x5e\x05\x62\xd0\x52\x55\ +\x14\xb3\x90\xaa\x39\x26\xb2\xba\x8f\x53\x79\xb3\x0d\xa6\x55\x38\ +\x2f\xdc\xd2\xbd\x42\xed\xee\x5b\xde\x4a\xc6\x3e\x94\x1d\xea\x90\ +\xc5\x3c\xab\xed\x5d\x0b\xe4\xf3\x4d\x6c\x42\xac\x71\xee\xcc\x33\ +\xe4\x9a\xba\x49\x1b\x26\xa5\x60\x40\xa2\x27\x4f\x8f\x19\x63\x96\ +\xf9\x19\xa8\xff\x00\xc2\xd6\x49\x32\x06\x4f\x7d\x35\x78\x00\x33\ +\x6b\x6d\x10\xa9\x76\xf8\xe0\x53\x16\xd6\x82\x3c\x4d\x39\xd5\x21\ +\xdc\x2f\x8a\x69\x23\x86\xd1\x02\x46\xa0\xbe\x3c\x6c\x2a\x8a\x0b\ +\x3e\x49\x24\x9a\x41\x31\x82\xef\x93\xbd\x1f\x64\x04\xd4\xa2\x04\ +\x5f\x9a\x0c\xec\x59\x82\x2f\x7a\x80\x37\x72\x84\x8d\xa6\x3e\x70\ +\x83\xc9\xaa\xf4\x94\x31\xdb\xbd\xe3\xee\xf2\xe5\x63\x3f\xea\x69\ +\x6b\xd7\x37\x17\x6b\x04\x5b\x84\x3a\x57\xe4\xf7\x35\xab\x22\x2a\ +\xcd\x1d\xba\xfd\x10\x2e\xf5\x28\x1b\x82\xaa\xb0\x8e\x79\x3f\x7a\ +\xa3\x02\xa7\x06\x9d\xe9\x90\x8b\x8b\xb6\x91\xfe\x91\x4e\xc9\x05\ +\x99\x04\x12\x7f\x4a\xd6\xf5\xc0\xcd\x8a\xed\xc2\xe9\x93\xdc\xbf\ +\xb8\xfb\x53\x6b\x79\x11\x40\x19\xf2\x7b\x1a\x8f\xc0\xc2\xcc\x4a\ +\x07\x23\xe4\x80\x29\x9b\x7e\x90\x64\x19\x58\x76\x1d\xc8\xdb\xfb\ +\x9a\xcd\xb8\x85\x9a\x48\xa5\xdb\x2a\x7e\xc6\x94\xb8\x89\xe3\xf7\ +\x21\x38\xad\x79\x3a\x44\x41\x4e\xb7\x85\x1b\xc0\x6d\xff\x00\x61\ +\x4b\x4f\x61\x71\x1a\xe5\x1c\x48\xa3\xb6\x73\x59\x99\x63\xea\xae\ +\x99\x13\x08\xe7\xff\x00\x10\x69\x61\xc3\x0a\x0b\x96\x8f\x11\xcb\ +\xee\x4e\xcc\x29\xe9\xe1\x52\x7d\xc3\x41\xf9\xe0\xd2\xce\xac\xa3\ +\x4b\xae\x54\xf6\x3d\xeb\x7a\x40\x7e\x83\x83\x86\x56\xfd\xea\x62\ +\x6f\x4c\x84\x27\x2a\x7e\x93\x5c\xca\x50\x7b\x77\x5e\xea\x7b\x55\ +\x36\x23\xe0\xd4\x0e\x5a\xca\x60\xb8\x59\x07\x1d\xc7\xc5\x5f\xa8\ +\xc6\x23\x9f\x5a\x7d\x0f\xee\x53\x4a\x42\xe4\xfb\x1b\x91\xc7\xcd\ +\x39\x19\xf5\xec\x8c\x47\xeb\x8b\x75\xfb\x53\xde\xc1\xa7\x94\xc9\ +\x02\x49\x9e\x46\xff\x00\x7a\x5d\x66\xc6\xcd\x53\x6a\x75\xc0\xf1\ +\x77\x1e\xe5\xff\x00\x7a\x0b\x56\xb1\x90\x11\x8c\x6f\xf0\x68\x44\ +\x11\xb0\xdc\x57\x63\x35\xda\x1b\xb5\x6a\x5d\x0a\xd7\x54\x95\x61\ +\xc8\x35\x15\x76\x2c\x84\x06\xc9\xa2\x49\x73\x23\x2e\x9c\xe0\x7c\ +\x50\x70\x7c\x54\x81\x52\x88\xae\xae\x3c\xd7\x50\x06\xe2\x4c\x0c\ +\x0e\x6a\x7a\x7d\xab\x5c\x4b\xbe\x74\x0e\x4f\x9a\xeb\x1b\x67\xb9\ +\x9b\x27\xe9\xee\x6b\x46\xea\xe2\x2b\x28\x74\x20\x05\xb1\xb0\xac\ +\x5a\x09\x71\x34\x36\x70\x0e\x32\x07\xb5\x45\x64\x4b\x2c\xd7\x73\ +\xf1\xa8\xf6\x1d\x96\xad\x14\x53\x5e\x4d\xad\x89\xc1\x3c\xff\x00\ +\xc5\x6d\xd8\x74\xe8\xe0\x88\x3c\xa9\x81\xd9\x7c\xfd\xeb\x3b\x93\ +\xb1\x9d\xd3\xba\x6b\x31\xd6\xd8\x63\xdd\x9b\x81\x5a\x31\xdb\xdb\ +\xa0\xf7\x96\x73\xf1\xb0\xa3\xbe\x58\x0c\xfb\x50\x70\x05\x25\x7d\ +\x72\x23\x53\x1c\x67\xdc\x79\xf8\xab\xbd\x83\xcd\x25\x94\x7b\x88\ +\x00\xf1\x96\x34\xac\xf7\x8f\x20\xd1\x10\x08\xbe\x40\xc5\x2b\xee\ +\x90\xea\x62\x71\xe4\xd5\xd4\x16\xf6\xa8\xc0\xab\x31\x10\x06\x5b\ +\x03\x24\x9e\xe7\xbd\x35\x0c\x61\x13\x27\x9a\xeb\x78\x70\x32\x7b\ +\x55\x98\x83\x96\x3f\x4a\xd2\xd0\x39\x8e\x07\xc9\xdc\xd2\xd2\xbf\ +\xa3\x67\x2d\xc1\xe4\x8d\x2b\xf7\xab\xdc\x31\xd3\xf2\xdb\x9a\x0f\ +\x5d\xfe\x5f\x4d\x86\x2f\xea\x39\x34\xa2\xbf\xc2\xf0\x97\xea\x3a\ +\x88\x07\xd1\x88\xb9\x07\xc9\xa7\xad\xff\x00\xc4\xb8\x27\x9c\x1a\ +\x5f\xf8\x55\xd5\x7a\xb3\xc4\xc7\x1e\xb4\x65\x57\xe4\xd1\xe4\x06\ +\x3b\x99\xc7\xf9\x6a\x7b\x0e\xf4\xc3\xa3\xa6\x92\x36\x67\x62\x28\ +\xb1\xa0\x2f\x8f\x1b\xb1\xf1\x43\xb6\x5f\x4e\xd6\x35\x3d\x97\x3f\ +\xa9\xa7\xfa\x7c\x46\x31\xae\x45\xce\x91\xea\x30\x3f\x1c\x0f\xef\ +\x8a\x99\x5d\x4d\x91\x63\x2c\x76\x80\x6a\x0b\xac\x0e\x48\xd4\x54\ +\xf8\x03\x8d\xbc\xd2\xb3\x5f\xca\xec\x49\x19\xcf\x77\x62\x7f\xed\ +\x40\xea\xac\xff\x00\x8c\x31\x17\x00\xa0\xf7\x31\x38\x03\xcd\x2e\ +\x90\x7a\x8b\xaa\x39\x63\x93\xec\x6b\x13\x19\xdd\x53\x7f\x8a\x9b\ +\x23\x05\x07\xff\x00\x88\xab\xad\xcc\xf9\xd4\x4a\x31\xfb\x0a\xce\ +\x6f\x52\x33\xef\x0c\xbf\x3d\xaa\x56\x56\x18\x39\x07\xed\x5a\xf1\ +\x88\xd2\x6b\x88\xa5\x04\x5c\x45\x9c\xf7\xc6\x7f\x7a\x5e\x6e\x9e\ +\x92\x29\x6b\x79\x01\x1f\xd0\xc6\x80\xb3\xe7\x92\x41\xa8\x37\x0d\ +\x13\x64\xe4\x7c\x8a\x4c\x6c\xe9\x4a\x5c\xdb\xc9\x0c\x85\x5d\x08\ +\xf8\xa5\xa5\x8f\x03\x5a\x0c\x8e\xe2\xb6\x92\xee\x19\xe3\xf4\xe7\ +\x01\x87\xcf\x22\x97\xbb\xb3\x08\xbe\xa5\xbb\x6b\x4e\xe3\xb8\xab\ +\xbf\x55\x19\x07\xb1\x1d\xa9\x8b\x69\x4a\xb0\x75\xe4\x73\x55\xb8\ +\x87\x48\xd7\x1e\xe3\xb8\xf1\x41\x56\xd2\x75\x0f\xd4\x55\x81\xf9\ +\xbf\x95\x70\xb3\x47\xf4\xb6\xe3\xfe\x2b\xae\x95\x75\xeb\x4c\x69\ +\x71\x91\xf1\x54\xb7\x71\x24\x7e\x93\x1e\x77\x53\xe0\xd4\x21\x20\ +\x18\xdb\xf4\xf8\x35\x67\x63\x93\x9a\x91\xbf\xc5\x45\x41\x24\x1c\ +\xd6\xf4\x2e\x37\xd8\xb0\x1f\x7a\xe2\x0e\x3e\xa5\xfe\xf5\x45\xd6\ +\xdb\xad\x10\x47\x26\x3f\x2d\x2c\x15\x60\xbe\x73\x55\x24\x62\xba\ +\x65\x65\xe4\xe7\x3e\x2a\x94\xd7\x03\xab\x8f\x15\xc4\xe2\x81\x3c\ +\x9d\x85\x03\xd7\x37\x11\xda\x43\xe9\x44\x32\xf8\xc5\x2d\x6f\x6e\ +\xf2\xbf\xab\x70\x49\xce\xfa\x7c\xd4\xda\xc5\xee\xf5\xa5\xdd\x8f\ +\x00\xf6\xa6\xa1\x0d\x24\x81\x40\xe4\xd7\x3d\x87\xba\x64\x68\x08\ +\x3a\x46\xdf\xb5\x35\x3b\xeb\x6c\x93\xed\x14\x34\x55\x86\x2d\x3f\ +\xdc\xd2\x77\xd7\x78\xf6\xa9\xdf\xc7\x8a\xce\xb7\x55\xdd\x42\xef\ +\x03\x42\x73\xfe\x94\x80\x52\x7d\xcd\xff\x00\xdd\x58\x29\xfa\x9f\ +\x93\xda\x8b\x14\x4c\xed\xbd\x6e\x4d\x22\xb1\xa1\x73\x8e\x00\xe2\ +\x9c\xb6\x83\x7c\x01\xbd\x4c\x10\x92\xc1\x54\x6e\x68\xf7\x85\x6d\ +\xe3\x11\x27\xd6\x7e\xa3\xe2\xa5\xcb\x9d\x40\x09\x88\x2c\x22\x8f\ +\x7f\x27\xc9\xaa\x5d\x29\x0e\x20\x5d\xf0\x77\xf9\xa6\x7a\x5c\x25\ +\xb5\x4d\x8f\xa0\x6d\xf7\xa5\x54\x86\xbd\x1a\xce\x37\xe4\xd3\x7c\ +\xe8\x29\x21\xcb\x6a\xed\xaa\x9d\xbd\xb6\xb6\xea\x16\xe9\x99\x82\ +\xb2\x8c\x50\x64\xb6\x9a\x27\x3a\xe3\x38\xf2\x57\x20\xd0\xc4\x68\ +\x4e\xfe\x9a\xfe\xa4\x55\xbc\x8b\x59\xd8\x47\x65\x74\x97\x53\xdd\ +\x07\xf4\xb7\x55\x5e\x49\xa2\x42\xa6\x7b\x86\x66\x18\x0e\x72\xc3\ +\xc0\xec\x2a\x88\x90\x29\xcb\x4a\xbf\xfe\x00\x93\xfd\xcd\x3b\x00\ +\x52\x8a\x23\x18\x0d\xc5\x40\xdd\x94\x61\xdf\xd5\x93\x1a\x57\x80\ +\x78\xa6\xe4\x94\x45\x6a\x92\x9e\x25\x97\x50\xf9\x55\xff\x00\xbe\ +\x69\x48\x12\x5b\xbb\x94\xb6\x80\x1d\x24\x85\xdb\xfd\x69\x8f\xe2\ +\xcd\x31\x4e\x2d\xe3\xfa\x20\x88\x22\xd7\x2c\xae\xec\x8a\xc4\xba\ +\x8e\x4b\xbb\x7b\x97\x19\x2d\x8d\x64\x79\xde\xb2\x21\x91\xe2\x7c\ +\xa9\x23\x15\xe8\x7a\x3c\x82\x2b\xec\x30\xca\xb0\x2a\x47\x9a\x5b\ +\xf8\x97\xa4\xb4\x0f\xeb\xc2\x09\x8d\xb7\x15\xbf\x29\x2e\xa8\xad\ +\x9d\xf8\x75\x0b\x36\x19\x7c\xe2\x8d\x2d\xaa\xba\xeb\xb7\x6f\xd3\ +\xb5\x61\xc4\xe5\x1b\xe3\xb8\xa7\xec\x6e\x9e\x22\x19\x0e\x57\xb8\ +\xab\x66\xba\x04\x93\x2a\xc5\x5d\x74\xb0\xf3\xde\xa3\x51\xdc\x72\ +\x3c\x1a\xd4\x83\xf0\xd7\xf1\x60\x90\x1b\xe7\x8a\x5a\xfb\xa7\x4d\ +\x01\xca\x82\x47\x83\x49\x9c\xea\x9a\x20\xeb\x8d\xd7\xff\x00\xaa\ +\xbd\xbc\xd2\x44\x75\x23\x64\x0e\x45\x50\x92\xa7\x0c\x0a\x91\xe6\ +\xa7\x93\x90\x77\xae\x9d\xf6\x86\x18\xc5\x3f\xbe\x30\x12\x5e\xea\ +\x78\x6a\xcf\xbc\xb7\x2a\xc5\x90\x11\x8f\xa9\x7c\x51\x9b\x63\x91\ +\xb1\xa2\xac\xa2\x41\xa6\x53\x82\x38\x71\xfe\xf5\x8b\x8e\xba\x19\ +\xd0\xbe\x96\xe7\x6a\x69\x8e\xb4\xf5\x07\xd4\x3e\xaf\x9a\x15\xec\ +\x05\x5b\x52\x80\x3e\xdc\x1a\xad\xb4\x9a\x5b\x07\x71\x48\x0c\xa7\ +\x22\xa1\xfc\xd4\x91\xa5\xbe\x0f\x15\xcd\xba\xd6\xe5\x17\xb7\x38\ +\x53\xe6\xaf\xa8\xd0\x22\x38\x7f\x8a\x35\x5b\xd8\xac\xe7\x2b\x41\ +\x34\x49\x8f\x6a\x5e\x79\x02\x8c\x0e\x68\x29\x71\x20\xce\x07\x35\ +\x5b\x58\x5a\x79\x42\x8e\x3b\x9a\xac\x68\xd2\xc9\xa4\x6e\x6b\x42\ +\x42\x96\x56\xda\x46\x35\xb5\x62\xd1\x45\x25\x9a\xb4\xec\x23\x58\ +\xa3\xd6\xc3\x73\x4a\x58\x43\x9c\xc8\xdc\x0f\xde\x8b\x3c\xc4\xfb\ +\x57\x73\x59\xa2\x6f\xee\x4e\x74\xae\xe4\xf6\xa5\x54\x15\x6c\xb7\ +\xb9\xcf\xed\x56\x45\xf7\x61\x3d\xce\x79\x3d\x85\x35\x6d\x6c\x34\ +\xeb\x6f\xa7\xbb\x79\xfb\x55\xe2\x01\x41\x0b\x31\xd6\xdf\xae\x69\ +\xa8\x63\x2c\x42\x20\xde\xa5\x14\xbb\x84\x45\xdb\xb0\xad\x6b\x1b\ +\x64\xb5\x40\xf2\x60\xb9\xac\x67\x9e\xbb\x50\x96\x05\xb4\xb5\x2e\ +\xc3\xdc\x45\x63\xce\xcc\xd2\x96\x63\x92\x4d\x7a\x47\x41\x72\x37\ +\xe1\x46\x6b\xcf\xdc\xc4\x4b\x1d\xb1\xbd\x4f\x8a\xee\xee\x95\xa5\ +\xd1\x62\x2f\x6b\x22\x26\x35\x15\xc0\xcd\x64\xde\xc2\xc8\xe4\x15\ +\x21\x97\x62\x29\x8e\x9f\x78\xf6\xd2\x85\x6d\x8f\x7d\xf9\xad\x5b\ +\x8b\x78\xba\x8c\x3e\xa4\x45\x44\xc0\x7f\xfb\x56\xb9\xc6\xec\x79\ +\xf8\x2e\x67\x8c\xfb\x65\x60\x3e\xf5\xb7\xd3\x7d\x1b\x98\x3f\x98\ +\x8a\xcd\x8e\x48\xac\x7b\xcb\x67\x8d\xd8\x15\x2a\x47\x20\xd1\x3a\ +\x35\xd8\xb7\xb8\x1a\x8f\xb4\xd6\xb2\x9b\x9b\x80\x7d\x62\x3f\x4e\ +\x50\x02\x80\x01\xec\x29\x9b\x60\x5c\xa8\x1c\x91\x81\x4c\x75\xdb\ +\x61\x71\x17\xaf\x0f\xb8\x73\xfa\xd2\x16\x53\x10\x06\x4e\x1d\x0d\ +\x25\xde\x28\xf6\x7f\xc3\xd6\x0b\x6a\x86\x72\x31\x85\xd8\x9e\xf5\ +\xe7\x3f\x89\x24\x0d\x73\x3b\x1e\xe7\x15\xa9\x69\xd6\xa5\x9e\xdf\ +\xd1\x70\xa3\x6d\xcd\x60\xf5\x97\x0d\x23\x1c\xe7\x26\xb8\x7c\x78\ +\xe5\xe7\xcb\x57\xa0\x33\xa6\x6c\x83\xce\xe2\xb7\x7a\x7c\xf1\x5c\ +\xda\xfa\x17\x18\x28\xfb\x03\xfd\x26\xb0\x07\xba\x05\x61\xca\xec\ +\x69\xae\x97\x30\x12\x98\x9c\xe1\x5c\x73\xe0\xd7\x4c\xf1\xdc\x48\ +\x4f\xf8\x93\xa4\x49\x67\x39\x65\x5c\xa9\xf1\xc5\x65\x44\xe6\x36\ +\xcf\x23\xb8\xaf\x77\x6a\x52\xed\x1b\xa7\xdd\xe3\x58\xfa\x18\xd7\ +\x95\xfe\x23\xe9\x72\x59\x5c\xb7\xb4\xe3\x35\x30\xcf\xfe\x72\x2c\ +\x0e\x09\x5a\x3c\x49\x11\xd8\xf2\x2b\x7b\xa3\xf5\x34\x96\x3f\x4a\ +\x71\xa9\x7b\x83\xb9\x15\xe5\xad\xa5\x31\xb6\x0f\x06\x9b\x46\x68\ +\xdc\x49\x19\xad\xe5\x8e\xcd\xbd\x5d\xc7\x45\x8a\xe9\x3d\x48\x0a\ +\xb2\x9e\x01\xff\x00\x9a\xc9\xbd\xe9\x12\x40\xf8\xd0\xc9\xf7\xe0\ +\xd1\x3a\x2f\x58\x78\x58\x61\xb0\x7b\xa9\xe0\xd7\xac\xe9\xb7\x96\ +\xb7\xf1\x60\xe9\x0d\xc1\x56\xae\x37\x2c\xf0\x5e\xde\x16\x6e\x9f\ +\x36\x9d\x4a\xa5\xbe\xd4\x9b\xab\x2b\x61\x81\x07\xe4\x57\xd2\xa5\ +\xe9\x90\xf2\xa8\x07\xc8\xa4\x3a\xb7\x47\xb6\x9e\xdf\x12\x47\x83\ +\xd9\xd4\x6e\x29\x8f\xf2\x3f\x27\x8b\xc2\xa4\x83\x4f\xa7\x20\xca\ +\xf6\x3e\x29\x7b\x98\x8a\x36\x47\x07\xc5\x69\x75\x7e\x9b\x2d\x9b\ +\x1d\xc4\x91\xf6\x71\xfe\xfe\x29\x15\x23\x74\x7f\xa4\xfe\xd5\xdf\ +\x8b\x37\x19\x52\x17\xd4\xba\x0f\x3d\xaa\xea\x7b\x1a\x0c\xc8\x62\ +\x93\x6d\xc7\x62\x2a\xe8\xda\x97\x23\xf5\xab\x05\x98\x60\xd1\xa3\ +\x39\x5c\xd0\x79\x15\x68\x4e\x1b\x1e\x6b\x7d\x81\xdc\x3e\x9c\x93\ +\x4a\x1d\x4e\xfb\x6e\x4d\x35\xd4\x47\xb7\x35\xdd\x2d\x54\x6b\x95\ +\x86\xca\x2a\x50\x68\x95\x2c\xed\xf5\xb6\x35\x1a\x5a\x30\xd7\x12\ +\x99\xa4\xe3\xb5\x44\x8c\xd7\x53\xe4\xe4\x20\xa3\x70\x30\x36\x02\ +\xb2\x1f\x9a\x50\xa8\x11\x76\x51\x42\x89\x4b\x8c\xb1\xd2\xbd\xfc\ +\x9a\x11\x90\x38\xdc\x60\xd3\x16\xb8\x76\x50\x78\x03\x8a\x9d\x40\ +\xcd\xbc\x29\xa7\x51\x5d\x31\xfe\xed\x44\x6c\xc8\x42\xa8\xc0\x1c\ +\x28\xed\x56\x45\x2f\x82\x4f\xc6\x29\xeb\x44\x86\xd5\x7d\x69\x86\ +\xe3\xe9\x5a\xc5\xba\xfe\xd4\x6e\x9b\x6a\xb6\xf1\x7a\xb2\x8f\x71\ +\xe0\x52\xd7\x52\x4b\x35\xf2\xc6\x99\x39\xe0\x0a\x1d\xdd\xf4\xb3\ +\x3e\xa1\xed\x51\xc0\xad\x3f\xe1\x53\x11\xfe\x27\x85\xa4\x00\x83\ +\x0e\xa5\x04\x73\x5c\xf2\x96\x4d\xd1\xaf\xd2\x7a\x15\xd7\xe0\xc4\ +\xc3\x00\xf8\x6e\xf4\x2e\xa1\xd1\x12\x43\xfc\xdb\x53\x03\xe3\x1a\ +\xe3\x19\x53\xf7\x14\xf7\x52\xeb\x52\x17\x29\x19\x0a\x01\xc0\x02\ +\xa2\xd7\xae\x38\xf6\xc8\x01\xfb\xd7\x09\x7e\x4e\xda\xe1\xe3\x7a\ +\xbf\x4a\x9a\xd9\xb1\x22\x6a\x43\xf4\xb8\xef\x49\x5b\xdc\xcd\x67\ +\x20\xcb\x1d\x3e\x6b\xe9\x7e\x9d\x97\x50\x8c\xaa\xe9\x52\xc3\x75\ +\x3c\x1a\xf3\xbd\x7f\xf8\x56\x45\xd4\xf6\xcb\x90\x7f\x21\xef\xf6\ +\x35\xdf\x0f\x9e\x5e\x32\x66\xc6\x54\x8d\x07\x52\x83\x21\x82\xcc\ +\x06\xc7\xcd\x63\x5e\xda\xbc\x32\x10\x57\x04\x76\xa2\x4b\x0d\xc5\ +\x95\xc1\x00\x30\x2b\xca\xf8\xa7\xa1\xbb\xb7\xbc\x84\x45\x73\x85\ +\x60\x36\x6f\x15\xda\x6f\x1e\x67\x48\x57\xa3\xde\xfa\x4d\xe8\xcd\ +\xbc\x6d\xb6\xf5\x1d\x5a\xd3\xd0\x90\x5c\x42\x35\x21\xe7\x15\x5b\ +\xab\x09\x55\xb3\x18\xd6\x0f\x75\x35\x68\xde\xfd\x22\xd1\xb2\xa8\ +\x3f\x9b\x15\x78\xde\xe0\x5c\x5d\xb0\x18\x40\x72\x79\x14\x19\xcc\ +\xae\x72\xfb\x7c\x66\x99\x9d\x8e\x49\x9e\x70\x3e\x13\x1b\xd1\xad\ +\x6c\xa5\x91\x43\xa4\x02\x34\x3c\x49\x29\xe7\xec\x3b\xd6\xb7\x20\ +\xa4\x09\xff\x00\x92\x73\xfe\x60\x3f\x6a\x5d\x1f\x43\xe7\xb0\x35\ +\xa1\x78\x12\x18\x16\x04\x3c\x6e\x4f\x72\x7c\xd2\x16\xe0\x3b\xba\ +\x76\x35\x9c\x79\x1a\xf2\x3b\x49\x6f\x15\xd2\x1f\x7c\x67\x4b\x62\ +\xb4\x66\x48\xba\xc7\x4d\x2a\xd8\xf5\xd0\x71\xe6\xbc\xff\x00\x4f\ +\x9d\xe1\x9b\x41\x39\xd3\xbf\xdc\x56\x8d\xf3\x35\xbc\xd1\xdd\x5b\ +\xb1\x50\xe3\x3b\x57\x1c\xb1\x57\x97\xea\x96\x6f\x69\x70\xc8\xca\ +\x40\xce\xd5\x16\x73\x01\xec\x73\xb1\xe0\xd7\xb3\x96\xca\xd7\xad\ +\xd8\xb1\xc6\x9b\x85\x19\xdb\xbd\x78\xde\xa7\x63\x2d\x9c\xe5\x1c\ +\x1c\x03\xcd\x6f\x0c\xe6\x5c\x5e\xcb\x05\x61\xa4\xea\x4a\x7f\xa7\ +\xde\xb2\x91\xb9\x04\x70\x73\xb8\xac\xab\x59\xb3\xec\x63\xbf\x62\ +\x68\xac\x0a\xb6\x45\x6e\xcd\xf1\x51\xed\x3a\x3f\x5f\x92\x35\x09\ +\x3e\x64\x4e\x33\xdc\x56\xea\xcf\x05\xd4\x3a\xa1\x75\x6c\x8e\x2b\ +\xe6\xf6\x77\x45\x4e\x1b\xfb\xd6\xad\xa5\xcb\x29\x0f\x0c\x84\x11\ +\xe0\xd7\x9f\x3f\x8a\x5e\x9a\x94\xef\xf1\x1c\x46\x37\x2d\x18\x3f\ +\xe6\x43\xc1\xaf\x31\x75\x1a\x1f\x7c\x5c\x77\x53\xf9\x6b\xd7\x8b\ +\xc8\xba\x84\x5e\x85\xd0\x09\x21\xd8\x3f\x63\xf7\xaf\x35\xd6\xec\ +\xe5\xb3\xb9\x39\x1b\x67\x63\xe6\xb7\xf1\x5d\x71\x4a\xce\xd9\x97\ +\x43\x71\xdb\xe2\x82\x33\x14\x98\x23\x6a\x3b\xe1\x86\x47\xea\x2a\ +\x92\x2e\xb5\xf9\x1c\x57\x6b\x19\x48\x23\x90\x76\xa9\xe0\xe4\x50\ +\xa2\x62\x0e\x93\x44\xab\x28\x9b\xa5\xf5\x21\xc8\xed\x40\xb7\x72\ +\x2d\x65\x51\xb1\xe6\x98\x8c\xec\x54\xf0\x69\x68\xc6\x99\xa4\x43\ +\xdd\x4d\x5b\xd0\x25\xb7\xf8\x23\x14\x68\x23\x32\x3e\x3b\x0e\x68\ +\x16\xc7\xf9\x42\x9d\x0e\xb1\xc4\x14\x63\x38\xc9\xac\xfa\x1f\xff\ +\xd9\ +\x00\x00\x09\x4c\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x30\x00\x00\x00\x2f\x08\x06\x00\x00\x00\xa5\x82\x49\xc9\ +\x00\x00\x09\x13\x49\x44\x41\x54\x78\x5e\xd5\x9a\x5b\x6c\x1c\xe5\ +\x19\x86\x9f\x7f\x66\x67\xcf\xde\x4c\x36\x5e\x27\x3e\x80\x9d\xf3\ +\x81\x84\x2c\xa0\x0a\xaa\x4a\x64\xab\xaa\x52\x0b\x2a\xb8\x42\x42\ +\xaa\x7a\x93\x10\x5a\x62\x6e\x12\xae\x7a\x99\x46\x2a\xf4\xa6\x52\ +\xb9\x6b\x25\xa0\x44\xea\x55\x11\x28\xa1\x2a\x55\x91\x2a\x12\x50\ +\x4b\x4f\x10\x6c\x48\xdd\x92\xc4\xe0\xc4\x89\x63\x3b\x4e\xf6\x64\ +\xaf\x77\x67\x67\xfe\xaf\x23\xef\x4a\xd3\xd5\xe2\x20\xf0\x41\xe2\ +\x93\x5e\x7d\xb3\xb2\x56\xfa\x1e\xbf\xdf\xec\xfe\xaf\x66\x95\x88\ +\xf0\x55\xae\x10\xb7\x29\xa5\x14\x5f\xa4\xde\x7d\x8a\x01\x81\x41\ +\x2d\xf4\x0b\x64\x35\x20\x80\x86\x61\x11\x46\x04\xce\x7e\xfb\x05\ +\xc6\xf9\x02\x25\x22\x9f\x0f\xb0\x5c\xfd\xe3\x29\x72\x02\xc7\xad\ +\x64\x34\x97\xda\x94\x22\x9e\x4e\x90\x48\x27\x11\x1a\x95\x9f\x2a\ +\xe6\x16\xca\x55\x66\x2e\xdf\xe2\xcd\x1f\xb9\x67\x05\x4e\x7c\xe7\ +\x05\xce\xb2\xbc\x5a\x3e\xc0\x7b\x47\xb0\x05\x4e\x59\x89\x68\xae\ +\x67\xff\x9d\x64\xb6\x75\x21\xe9\x3d\x90\xe8\x87\x98\x05\x66\x05\ +\xdc\x22\x76\x65\x0c\x4a\x93\xec\x29\xef\x60\xf2\xe2\x4c\xee\xe2\ +\xf0\x95\xdc\x1f\x9f\xac\x3e\x2f\x70\xe2\xe1\x17\x29\xb0\x8c\x52\ +\x22\xf2\xa5\x56\xe8\xfd\x23\x64\x05\xce\x74\xef\xeb\xb7\x7b\xee\ +\xdd\x89\xf4\x3e\x04\xdd\x8f\xa3\x42\x9d\x80\xdb\x90\x5c\x04\xa9\ +\x00\x49\xa0\x02\x0b\xaf\xc3\xc4\x5b\xb8\x93\x61\x46\xff\xf9\x09\ +\x13\x63\x53\xc3\x02\xdf\xfc\xde\x6d\x20\x44\x64\xe5\x01\x3e\x38\ +\xc2\x80\xf8\xed\x8e\xfb\x77\xd8\x1b\xee\xde\x01\x7b\x7e\x82\x8a\ +\xde\x07\xb8\x88\x5c\xf2\xf5\x31\xc8\x28\xc8\x35\x94\x4c\x82\x5c\ +\x47\xc9\x34\xa8\x7d\xc0\x37\xa0\xf8\x36\x5c\x70\x98\xb8\x70\x83\ +\x91\x77\x2f\x2c\x42\x3c\xe2\x43\x7c\x19\x00\x83\x2f\x57\xa7\xfa\ +\xbe\xb6\xd5\x4e\xdf\xb5\x15\xb5\xef\x59\x54\x74\x0f\x22\xa3\x78\ +\xfa\x35\xb4\xfe\x2b\xf8\x10\x48\x01\x64\xae\xe1\x80\x54\x01\x07\ +\xf4\x5b\xe0\xfc\x0c\x22\x73\xb0\x79\x94\x9e\xad\xeb\xe9\xdf\xd9\ +\x9d\x15\x78\x99\xa5\x6b\x65\x01\x46\x86\xf8\x69\xaa\xc7\xce\xda\ +\x5b\xd2\xa8\xbb\x7e\x08\x21\x1b\xd1\x7f\x46\xbc\xd7\x50\x32\xe6\ +\xeb\x2a\xc8\x14\xc8\x4d\x14\x05\xa0\x8c\xa2\x09\xa1\x35\x68\x05\ +\xee\x47\x60\xd6\x31\xfa\x3e\x65\x57\xb6\x97\x94\x1d\x1b\x3c\x7d\ +\x98\xc1\x55\x07\xf8\x70\x08\x1b\x38\x9a\xd9\xdb\x83\xb1\xf5\x2e\ +\x54\x6c\x1f\xe8\xb7\x10\xef\x55\x58\x1c\x7c\x62\xb1\x2b\x99\xf4\ +\x35\xb3\x08\x81\x14\x81\x32\x50\x03\x31\x1a\x00\xda\x00\x51\xa8\ +\xb0\x83\x5a\x7f\x8b\x1d\xfb\x7b\x01\x7e\xb9\x16\x9f\x42\x83\x89\ +\x4d\x1d\x76\x68\x9d\x87\xd9\xf3\x30\xc8\x75\xc4\x7b\x11\x05\x40\ +\x18\x30\x40\x3c\xa0\x0a\xcc\x83\x94\x51\x94\x40\xe6\x41\x0b\x78\ +\x26\xe8\x26\x44\x53\xe6\xba\x39\xec\x74\x86\x68\xdc\x1a\x38\x75\ +\xb8\x9e\xfd\xfe\x4b\x0c\xaf\x26\xc0\x81\x78\x26\x81\xd1\x69\x03\ +\x16\x78\xaf\xa0\x64\x1c\x21\x0a\x58\x80\x02\xd1\x80\x83\x62\x01\ +\xa8\x80\xf8\xd2\x1a\x3c\x23\x90\x0e\xa4\x14\x18\xb1\x05\xba\xef\ +\x48\xf1\xc9\xc7\x37\x07\x61\x75\x01\xb2\x56\x32\x84\x69\xdf\x01\ +\x52\x06\xef\x0d\xa0\x88\xc2\x02\x15\x02\x51\x80\x06\x71\x01\xa7\ +\xd1\x35\xcd\xc1\xcd\xc0\x81\x16\x08\x85\xb2\x5c\xd6\xa5\x23\x08\ +\x1c\x58\xd5\x15\x52\x90\x35\xe3\x06\x18\xbe\xf4\x2c\xb8\xbe\x0c\ +\x01\x55\x03\x51\x04\x25\xa0\x15\x88\x01\x9e\x02\x6d\x12\x38\x10\ +\x5c\x37\xef\x07\x94\xa9\x11\xed\xad\xcd\x37\xb1\xf6\x5c\xc4\xab\ +\x43\x7d\x0c\xdc\x10\x28\x0d\x0a\x50\x12\x00\x88\x6a\xa8\x39\xa0\ +\x2f\x82\xa1\xdb\xa5\x4c\xd0\xda\x5d\x23\x00\xed\x82\x0f\x80\xe7\ +\x40\xdd\x04\xc3\x08\x86\x57\x80\xd0\x04\x00\xc4\x58\x1a\x22\x70\ +\x01\xb7\xa2\xd1\x6b\xe1\x80\xc0\xd9\xda\xad\x6a\xae\x5e\x98\xc3\ +\x4a\x87\x9b\x0e\x48\x53\x04\x25\xed\x2e\x34\x7b\x2b\x40\x13\xcc\ +\xad\xd6\xa9\x3b\x1e\x40\x61\xb5\x1d\x18\x76\xe6\x9c\x5c\x6d\xfa\ +\x12\xf1\x81\x2c\x78\x51\xc0\x69\x77\x80\xa6\x03\x5a\x81\xb4\x02\ +\xd0\x7e\xcd\x42\xa1\x46\x31\x5f\x43\xc1\xdb\xab\x0d\xf0\x7a\x75\ +\xc6\x39\x56\x99\xbe\x45\xaa\x78\x05\x33\xd4\x07\xde\x65\x50\x04\ +\x45\x00\x81\xa6\xe9\x44\x03\xa0\xcd\x0d\x51\xd4\xe6\xea\xd4\xab\ +\x0e\xf9\xd9\x3a\xc0\xe9\x55\x05\xb8\xfb\x57\x9c\x1d\x19\xd2\xe3\ +\x4e\xd1\x1d\xc8\x9f\x7f\x8f\xce\xec\x5e\x70\xaf\xb5\xde\xc0\xb4\ +\xb9\xd0\x0a\x21\x2a\xe8\x40\xe1\x4a\x91\xd9\xe9\x3a\x4e\x55\x4e\ +\xfa\x5f\x62\xe3\xab\xed\x00\x02\x87\xe6\xaf\xd4\xcf\x98\x89\x49\ +\xe6\x26\xd6\x91\xec\xea\x01\x77\x8a\xb6\x12\x45\x70\x2f\xb4\x0f\ +\x0e\x90\xbf\x52\xa0\x52\xac\x71\x75\xdc\x05\x38\xb1\x26\x81\x26\ +\xeb\xbb\xf0\xc1\x11\x39\x39\x37\xee\x1d\x14\x7d\x1e\x76\xef\x26\ +\xb9\x21\x0e\x52\x03\x05\x48\x9b\x0b\x01\x40\x50\x94\xa6\xca\x94\ +\xae\x97\x98\xf8\x04\xb4\xcb\x33\x83\x2f\x31\xbe\x66\x89\xec\x9e\ +\x5f\x73\xe8\xdc\x11\xc9\x19\x56\x68\x60\x56\x46\x71\x7a\x33\xd8\ +\xbd\x11\x0c\xd3\x20\x28\x05\x42\x5b\x69\x4f\x33\x3b\x76\x93\xf9\ +\xe9\x0a\x37\x66\x42\x94\xf2\xee\x59\x3f\x0b\x3c\xbf\x36\xc7\xe9\ +\x20\xd0\x64\xcd\x70\x68\xa0\xff\x9e\xfd\x64\x76\x3d\xc8\xdc\x8d\ +\x79\xae\x9e\x9b\xa4\x30\x51\xc2\x99\xaf\x83\xb4\x0f\xef\x54\x1c\ +\x6e\x5d\xce\x33\xf1\xde\x35\xe6\x26\x2a\xd8\xa1\x1e\xb6\x6d\xd9\ +\x8e\x15\x0e\x65\x7f\xff\x24\xd9\x35\xcb\xc4\xc3\x43\xd8\x22\x9c\ +\xd9\xfe\xad\xfd\xc4\xfa\xba\x91\x7d\xcf\x11\x7d\x60\x81\xfc\xdf\ +\x8e\x93\xff\xf0\x1d\xf2\x97\x0b\x98\x11\x83\x70\x3c\x4c\xb3\xa8\ +\x96\xaa\x88\x0b\x86\x01\xf1\xb4\x22\xb1\xcb\x44\xb9\x37\x61\x3c\ +\xce\x3d\x7e\x24\xfd\xfb\xfb\x63\x67\xfc\x3c\xb0\xd9\x5f\xa3\xc2\ +\xaa\x3b\xa0\xe0\x54\xef\x7d\x5b\xed\x58\x26\x85\x6c\x3f\x84\xb2\ +\x76\x63\x46\xee\xa6\x33\xf7\x12\x3d\x8f\x1c\x24\xd5\x73\x3f\xd1\ +\xd4\x36\xd0\xeb\x41\x92\x40\x84\x44\x26\x49\xe7\xee\x28\x5d\xf7\ +\x1a\x24\x07\xc0\x08\x2b\x54\x4c\x50\x03\x33\xd8\x49\x8b\xbd\x7b\ +\x7b\x6d\xe0\xd4\xea\x39\x10\x04\x9a\x63\x89\x2e\x3b\x97\xd9\xd9\ +\x07\x9b\x1f\x44\x75\x7c\x17\x58\x00\x99\x41\x7b\xbf\xc5\xea\xab\ +\x61\x77\xf6\x53\x9f\x08\xe3\x95\x22\x28\xb5\x00\x46\x05\xc3\x98\ +\x07\xe5\x80\x12\x14\xcd\x13\xa8\xa9\x08\x6d\xf4\x30\x32\x25\xb6\ +\x5c\x4a\x33\x79\x2d\x9f\x3b\x75\xb8\x72\xcc\xcf\x03\xcf\xaf\x0a\ +\xc0\x47\x43\xd8\x02\xc7\xfb\x1e\xd8\x09\xe9\x18\x6c\xfc\x31\xc8\ +\x3c\x30\x8d\xb8\x3f\x6f\x9e\xff\x5d\x54\xa4\x4a\x64\x2b\x88\x63\ +\xa2\x2b\x1e\xd4\x1c\xc4\x71\x40\xd5\x17\x87\x56\x86\xc2\x08\x1b\ +\x7e\x6f\x9e\x4a\x23\xf3\x90\x8a\x70\xef\x9e\x8d\xbc\xf9\x97\x4f\ +\x8f\xbf\x76\x98\x93\x8f\xf9\xab\xb4\xe2\x00\x0a\x8e\x77\xed\x1b\ +\xb0\xc3\xa9\x30\x6c\xfe\x01\xa0\x9b\xc3\x3f\xdb\x88\x93\x00\x34\ +\x73\x00\x55\x94\x55\x21\xb4\xee\xff\x03\xbd\x6a\x3f\x4e\x37\xcf\ +\x4a\xf4\xcd\x11\x9f\xed\x60\x77\xbf\x6d\x8f\x5e\x2e\x1c\x03\x7e\ +\xba\xa2\x99\xf8\xdf\x43\xd8\x66\x38\x74\x6c\xc3\x8e\x5e\xe8\xb6\ +\x21\xf6\x75\xa0\x84\xb8\xcf\x81\x3e\x07\xcc\x36\x24\x37\x41\x6e\ +\xa1\x24\x8f\xa2\x08\x52\x06\x16\x9a\x71\x32\x08\x30\xcd\x1e\x64\ +\x86\xb0\x40\x57\x95\xad\x9b\x12\x58\x21\xe3\xf8\xab\x87\xb1\x57\ +\xda\x81\x63\xf6\xe6\x4d\x98\x31\xa0\xf7\x31\x90\x22\xe8\x77\x50\ +\xfa\x4f\x80\x19\x84\x19\x34\xe0\x82\xd4\x83\x44\x26\xea\xb3\x8e\ +\xd0\xed\x20\x9b\x34\xd6\xb8\xe2\xce\xce\x28\x97\xa6\x2a\x81\x0b\ +\x2b\x04\x70\x74\xc3\xce\x5e\xb0\xc3\x10\xda\x06\x14\xc1\xfd\x05\ +\x50\x6a\x9a\x18\x00\x2c\x4a\x74\x70\x0a\x0d\x00\x02\x05\x6e\x04\ +\xc7\x0b\x43\x41\x46\xd8\x5e\x8c\x72\x71\xaa\x72\x34\x00\x58\xe6\ +\x0a\x8d\x3e\xcd\xc1\x54\x5f\xa7\x6d\x25\xa2\xd0\x77\x00\x74\x19\ +\xea\x7f\x00\x6f\x06\xb4\x06\xed\x82\x38\x0d\x69\x0f\x3c\x69\x8d\ +\x8f\xae\xd9\xe8\x4b\x25\x32\x31\x02\xd0\x6e\x83\xb8\x29\xf4\xa4\ +\x2c\xfb\x95\x27\x38\xb8\x22\x0e\x28\x78\xb4\xa3\x6f\x03\x44\x2b\ +\x10\xd9\x05\x7a\x0e\x6a\x6f\x80\x98\x41\x90\x41\x5a\x0f\x70\xa8\ +\xb6\x2c\xd0\xda\x83\x55\x6a\x51\xc4\x80\x18\xf4\x26\x4d\xae\x15\ +\xeb\x8f\x02\x27\x57\x62\x85\x06\x93\x7d\x9d\x90\xee\x06\x11\xf0\ +\xae\x80\x73\x15\x94\xd1\x9e\x85\x59\xe2\x04\xaa\x83\x4c\xd0\xb2\ +\x3e\x81\x0b\xc1\x7b\x36\x5a\xf4\xcc\x56\x01\x06\x97\xed\xc0\x7f\ +\x9f\x66\x30\xd6\x65\x63\x5a\x21\x48\xf6\x83\x37\x07\xf5\xf7\xc1\ +\x6b\xfd\xef\xb7\x9e\x42\x55\x6b\x98\x09\xee\x85\x25\x52\x99\x6a\ +\x55\x26\x8c\x85\x26\x13\x33\xf8\xdd\x13\x7a\x10\x38\xbd\x1c\x07\ +\x0e\xc4\x7d\x00\x42\x75\x88\xa6\x1b\xeb\x53\xbf\xd1\x00\x60\x89\ +\x2c\xbc\x84\x0b\xc1\x3a\xb5\x01\x05\x0e\x01\xc4\x4c\x88\x40\x26\ +\x0a\xd3\x0b\x1c\x58\x2e\x40\x36\xde\xb5\x0e\x22\x11\x10\x5f\x5e\ +\x05\x9c\x29\xf0\xda\xd7\xa7\x1d\x22\x00\x69\x59\xa1\x60\xf0\xd6\ +\xbf\x09\x41\x25\x43\x74\x45\x1c\x80\xec\xb2\x56\x48\x41\x6e\xd1\ +\x01\x2b\x0c\xde\x3c\x48\x15\x3c\x09\x56\x08\x5a\x6f\x62\x54\xcb\ +\x2a\xb5\x48\xb7\xf7\x60\xf7\x69\xad\x94\x85\x1d\x12\x80\xdc\xca\ +\x04\x1a\xf1\xc0\x9d\x07\x6a\xe0\x85\x02\x07\x68\x5b\xa1\x16\x90\ +\x76\x88\xf6\xeb\xa5\xca\x32\x56\x32\x0f\x54\x4a\xe0\x4c\x82\x11\ +\x05\x49\xb6\x38\x10\xb8\xb0\x74\x9c\x6c\x17\xb7\x1d\x9e\xd9\xea\ +\xca\x04\x1a\x81\xd3\xf9\x0b\x57\x07\xd7\xef\xe8\x83\x6b\xe7\x21\ +\xdd\x01\x66\xb8\xe9\x80\x00\x7c\x8e\x03\x00\x5f\x60\xf0\xba\x86\ +\x8f\xf2\x8b\x00\x17\xca\x00\x9c\x5e\xae\x03\xcf\x4c\x9f\x1b\xcb\ +\x89\x27\x76\x7a\xcb\x46\x98\xaf\x40\xac\x0c\x49\x13\x0c\xb9\xfd\ +\x4d\x0c\x2d\x03\x7f\xee\xe0\x63\x65\x5f\xa5\xc5\xeb\x8b\x65\x18\ +\xc9\x53\x50\xf0\xcc\xb2\x9f\x52\xfe\xe7\x69\x06\xb4\xf0\x72\xbc\ +\xb3\x23\x97\x1e\xe8\x22\xd5\x99\x04\xcf\x83\x88\x03\x51\x17\x62\ +\x9e\x2f\x01\x73\x09\x17\x96\x1a\xb8\x58\x87\xd9\x6a\x20\xfc\x56\ +\x83\xd1\x22\xcc\xd4\x18\x16\xe1\xd0\xe3\xbf\x61\x78\xc5\x9e\x52\ +\x9e\x1f\xe2\xa0\x86\xa3\x56\x2c\x9c\xed\xf0\x21\x92\xa9\x18\xc9\ +\x8e\x30\xa6\xa2\x01\xe4\x8b\x84\x80\xd6\xb4\x4b\x1a\x5d\x04\x66\ +\x9b\xc7\x6b\x69\xe8\x66\x0d\xae\x2f\xc0\xa4\xaf\x79\x97\x71\x81\ +\x13\x7e\xa0\x39\xb9\x6a\x8f\x59\x47\x86\xc8\x8a\x30\xa8\xe1\x80\ +\x40\x2e\x9a\x08\x63\x18\x8a\x64\x32\x0c\x5a\x13\xb6\x0c\x22\x26\ +\xa0\x35\xe2\x0b\x69\x40\xd5\x5d\x4d\xb9\xa6\x11\x11\x6e\x56\x05\ +\xc7\x6b\x98\x20\x70\x56\xc3\xdb\x22\x9c\x1e\x0c\x1e\x2f\xb1\x4a\ +\x00\xed\xfa\xd7\x11\xb2\x5a\x18\x08\x7e\x1b\xc1\x7e\x01\x5b\x0b\ +\x34\x5e\x37\xbb\x50\xd0\x30\x12\xfc\x76\x82\xf1\x87\x5e\x6c\x1f\ +\x78\x19\x00\x5f\xcd\xfa\x1f\x35\x30\x04\x37\x1b\x34\xa6\xbe\x00\ +\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x0f\x35\ +\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\x0e\xfc\x49\x44\x41\x54\x78\x5e\xed\x98\x79\x70\x55\x65\ +\x9a\xc6\x7f\xe7\x9c\xbb\x24\x37\xb9\xd9\x37\x92\x90\x18\x93\x10\ +\x96\x48\xd8\x09\x22\x8b\x08\x11\xd3\x80\x8a\x2c\x3a\xed\x82\xda\ +\xd3\x6a\xab\xd3\x33\xea\xf4\xd0\x5d\x6d\x4f\x4f\x4f\xd9\x5d\x6d\ +\x77\x57\x97\x4d\x4d\x6b\x4f\xd9\xa3\xa3\x08\xa3\xd0\x2c\x12\x44\ +\x90\x45\x16\x43\x00\x21\xec\x4b\x02\x04\xc8\x9e\x7b\x73\xf7\xfd\ +\xdc\x73\xbe\xb9\x4d\x4e\x0d\x50\x4c\xb5\x50\x53\x16\x76\xd5\x3c\ +\x55\x4f\x9d\xf3\xd7\xbd\xef\xef\x3c\xef\x7b\xdf\xef\x5c\x49\x08\ +\xc1\x5f\xb3\x64\x6e\xad\xfe\x1f\x00\x21\x04\x86\xb9\x11\xfd\x0d\ +\x54\x3f\xae\x28\xbf\x79\x31\x2b\xbb\xf9\xbb\x66\xf3\x67\xf3\xe1\ +\x1e\xc0\x0a\x48\xb7\xa0\xf6\x9b\x4b\xe0\xdb\xf0\x5c\x69\x61\xd1\ +\x9e\xc5\x23\x47\xbe\xf4\xb3\xa5\x4b\x47\xbd\xba\x71\xe3\xcc\x91\ +\xd9\x19\xab\x07\xdb\x27\x3c\x42\xd5\x3f\xd6\x00\x26\x40\xfa\x46\ +\xb6\xd0\x63\x92\x54\x37\xaa\x72\xc8\xef\x9f\x28\x2b\x49\x1f\x23\ +\xfa\x49\x3e\xb3\x8b\xe2\x21\xe5\xd4\xbf\xf2\x52\xc6\xa0\xaa\xd1\ +\xef\x24\x55\x4d\x6c\x34\x8d\xfc\xf9\x07\x96\x92\x05\x15\x80\xf9\ +\x1b\x07\x90\x6c\x32\x3d\x39\xdd\x22\x93\x67\x76\x91\x77\x67\x29\ +\xe6\x54\x0f\x2d\x9f\x6d\xe4\xc2\xdc\x17\xf9\x43\xc3\x1b\x6c\x7f\ +\x6b\x5e\xf2\xd8\x05\x73\x16\x91\x76\xc7\x3b\xc8\xe6\x5c\xc0\xf2\ +\x8d\x02\x90\x55\x35\x68\x8b\xbb\xc8\xac\x4a\x27\x54\x54\xca\xd1\ +\xfa\x1f\x71\x62\xda\xd3\x64\xa7\x58\x28\xce\xb0\x32\x69\x90\x99\ +\x67\xe7\x55\x93\x3f\x62\xdc\x64\xd3\xa0\x39\x0f\x00\x76\x40\xfe\ +\xc6\x00\x1c\xb5\x8f\xd8\xb3\x3f\x35\x97\x8f\x87\x3e\xc6\xaf\x86\ +\xbf\xce\x7b\xd2\x4c\xf6\x6c\x5c\xc3\xb9\x9d\x6b\x59\xf3\x5f\x2b\ +\x69\xf8\xbc\x99\x9a\x0c\x95\x9f\x3d\x3a\x8e\xbc\x92\x09\xdf\x97\ +\x53\x6e\x2b\x05\xac\xdf\x0c\x80\x71\x7f\x94\x1a\x87\xbd\x30\xf3\ +\x9f\x47\xff\x8e\xc7\x7a\x9f\x67\x45\xdb\x20\x0e\x7c\xf6\x19\xc3\ +\x93\x83\x2c\xbe\xff\x7e\xe6\xd5\x4d\xe3\xdc\xb1\xbd\x44\xbb\x0e\ +\xb0\x64\x4e\x1e\x8b\xea\xa7\x0d\x91\x73\xee\x7e\x0a\x48\x07\x94\ +\x5b\x0f\xa0\xab\xc9\x58\x93\xa6\x5d\x6a\x8e\xe3\x3b\x7c\x89\x1e\ +\x17\x04\xfc\x1e\x0a\xf2\x8b\xe8\xe8\x74\x93\x9d\x53\xc0\xb3\x7f\ +\xfb\x34\x87\x0e\x1d\xe1\x8b\x3d\x8d\x3c\xff\xe8\x24\x86\x0d\x9f\ +\xf0\x98\x29\x7b\xe2\x68\xc0\x76\xcb\x01\x64\x49\xa8\x72\x24\xd2\ +\xcf\x85\x0b\x70\xb1\x95\xf4\x90\x8b\x7c\x2d\x48\x47\x57\x0f\xfd\ +\x2e\x1f\x9d\x9d\x7d\x09\x3e\x2b\x4b\x9e\x5c\x42\xf3\xe1\x66\x22\ +\xfe\xf3\xbc\xfc\x9d\x39\x69\x49\x39\x13\x9e\x03\xb2\x00\xf3\x2d\ +\x05\xd0\x0f\x3e\xa7\x4a\x51\xd7\x3b\x92\x25\x42\x65\x5e\x94\x07\ +\x94\x3e\x06\xc5\xad\x9c\x3c\x73\x86\x68\x34\x8a\xd3\xe9\xc3\xe3\ +\x09\x60\xb3\xd9\x98\x3b\x67\x2e\x1b\x36\xac\xe2\xae\xd1\x39\xcc\ +\x98\x3a\x6d\x96\x39\x77\xda\x9d\x40\x0a\x20\xdd\xd2\x21\x16\x7d\ +\x3b\x97\x9b\x0a\xf4\x96\xe2\x64\x8d\xb8\x2b\x80\x39\xa9\x94\xf6\ +\x0e\x27\xbd\xbd\x9d\x78\xbd\x41\xfa\xfa\xbc\xc4\xe3\x1a\xa5\xb7\ +\x95\x30\x7c\x44\x35\x3b\xb6\xae\x62\xc9\x43\x93\x93\x32\x06\xd5\ +\xbe\x2c\x49\xa6\x5c\xc0\x72\x4b\x01\xf4\x9e\x2d\x1e\x3d\xd2\xf3\ +\xda\x59\x4f\xaf\xe8\x77\xfb\x49\x32\xe7\xa1\xc6\x0b\xb9\x74\xe9\ +\x2c\x1e\x8f\x0f\x97\xeb\xcf\xf6\x03\x70\xef\xbd\xb3\xe8\x73\x74\ +\x61\x57\x7a\x78\xe4\xc1\xfa\xb1\xd6\xe2\xf9\x8f\x03\x69\x80\x7c\ +\xcb\x00\x00\x4d\x3b\xf5\xcb\x55\x7d\x21\xc7\xb6\x76\xaf\x93\x70\ +\x20\x4c\x8a\x6d\x04\xe7\xce\x9d\xc5\xeb\x75\x25\x1c\xc4\xe1\xf0\ +\x12\x89\xc4\x48\x4a\xb2\x24\x20\x66\x73\xe4\xc8\x1e\x1e\x9e\x33\ +\x86\x82\xb2\x71\x4f\xa5\xd9\xf2\xcb\x80\x24\xbd\x12\x93\x5a\x4e\ +\xa6\x77\x28\x63\xbc\xa3\x52\x1f\x70\x54\x5b\xe6\xee\x2e\xa1\x08\ +\x50\xbe\x6e\x00\x80\x68\xd4\x7f\x76\xe9\x05\x5f\x9f\xc7\xd9\xdf\ +\x4f\xaa\xad\x82\x96\xd6\xfe\x44\x0a\x2d\x78\x3c\x6e\xdc\xee\xc0\ +\x65\x08\x21\x60\xf4\xe8\x91\x98\xcd\x32\x5e\xe7\x31\x9e\x7d\xf2\ +\xa1\xc2\xfa\xc1\x35\x6f\xb9\x66\x94\xae\x88\xcd\xbc\x6f\x1f\xdf\ +\x7f\xa9\x35\xe5\xe7\xaf\x35\xd9\x97\xbd\xb4\x36\xfb\x0f\xbf\xfa\ +\x78\xc2\xec\xba\xfd\x33\x2c\xcc\x07\x6c\x80\xfc\xb5\x9e\x46\x01\ +\x0b\x23\xfe\xe5\xb7\x23\xa6\xac\x10\x4f\x3e\x7e\x50\xdc\x57\xff\ +\x5b\xb1\x60\xe1\xc3\xe2\xcd\x37\x3f\x14\x9f\x7c\xd2\x24\x0e\x1d\ +\x6a\x15\x81\x40\x58\xfc\x59\xfb\x9a\x0e\x89\x1f\xff\xf8\xa7\xa2\ +\xe5\xbc\x10\x8b\x9f\x7c\x57\xb4\x7c\xf1\x92\x10\xde\xef\x0a\xe1\ +\x79\x58\x88\xde\xe9\x42\xb4\x8f\x14\xc2\x31\x5b\x88\x4b\x9b\xc4\ +\x6f\x6e\xcf\xdc\x0b\xdc\x0e\x24\x7d\x6d\xa7\x51\x31\x1c\xb9\xaf\ +\x82\x8c\x5f\x85\x57\x34\xeb\xbe\x73\xb1\x0b\x0e\x07\x45\x85\x53\ +\xe9\xe8\x80\xd6\xd6\xc3\xb8\xdd\x6e\xa3\x95\x3c\xe8\xba\xa0\x66\ +\x54\x35\x56\x6b\x12\x8e\xae\x23\x3c\xf8\x60\x3d\x6f\xad\x6b\x43\ +\xf8\x1a\xc0\xb5\x0f\x7c\xdd\x10\x8e\x43\x7f\x2b\x64\xb7\x33\xaf\ +\x7e\x76\xcd\x44\x99\x45\x2b\x0b\x18\xdf\x57\xce\x28\x77\x39\x35\ +\xff\xe3\x0a\x6a\x7a\xcb\x29\x37\xd2\x91\xb8\x4a\xa6\xbf\x50\xac\ +\x35\xa2\x52\x88\x42\x85\x96\x92\x51\xa9\x64\x0d\xaa\x52\x07\x97\ +\x8c\xcf\x29\xce\x1c\xf6\x72\x85\x3d\xb9\xc0\x1d\x35\xff\xe0\xfd\ +\x0e\x0a\x33\x32\x28\x2a\x9e\xcf\xe1\x23\xcb\x29\x29\x19\x42\x4a\ +\x4a\x0a\x4e\x67\x32\x69\x69\x29\x64\x65\xd9\x19\x37\x6e\x1c\xbb\ +\x76\x6f\xe6\xd9\xef\xfd\x80\xd5\xeb\x17\xb3\x75\x77\x07\xb3\xa6\ +\x7b\x20\x68\x02\x64\x10\x16\xf0\x6f\xa1\x6c\x5a\x6d\xf2\xea\x93\ +\x3b\x5e\x2b\x7c\xa8\x26\x2e\xe9\x3a\x48\x02\x84\x00\x74\x00\x88\ +\xc9\x9a\x7f\xc7\xd1\x3d\x4f\xec\x74\xbc\xb2\xc6\xcf\x69\x20\x06\ +\x70\xcd\x3b\xb1\x36\x5a\xb2\xe9\x92\xb2\x98\xc1\xd5\xd3\xa5\x92\ +\x41\x13\x95\xa2\x82\xc1\x52\x45\x9a\x8d\x11\x69\x50\x6c\x01\xeb\ +\x25\xb0\x9c\x02\x7a\x88\x85\x82\xcc\x7f\xfe\x21\xfa\xdb\xea\x19\ +\x39\xa4\x84\xd3\x2d\xef\x52\x32\xb8\x9f\x59\xb3\x1e\xa2\xa8\xa8\ +\x90\xe2\xe2\x5c\x2a\x2a\x8a\xe8\xef\xf7\xf0\xeb\x5f\xff\x9a\x57\ +\x5f\xfd\x09\x3b\x9b\x22\xac\x58\xfe\x13\xfe\xfd\x07\x5b\x49\x4d\ +\x96\x41\x55\x40\x48\x20\x03\xf2\x0b\x74\xff\xeb\x32\x4c\x3f\x14\ +\xe4\x16\xa7\x80\x0a\x08\x19\x74\x09\x74\x1d\x92\xf3\xe1\x74\x31\ +\xff\x34\xf7\xcd\x95\xaf\xf7\x6a\x2f\x03\x4e\x21\x84\x2a\x73\x95\ +\xce\xc6\x6d\x6f\x98\x7f\xb9\xec\x3f\xcc\x1f\xde\xf9\xb8\x69\x59\ +\xb0\x4a\x5a\xda\x68\x13\x0b\xb6\x11\xab\xfc\x9c\x10\xdb\xf0\xf9\ +\x5b\xf0\x39\x74\xe2\x9e\x10\x16\x93\x8f\x9f\x3e\xb3\x1d\x67\xec\ +\x1c\x0e\x87\x8b\xca\xca\x05\x9c\x38\xe9\xe6\xf0\xe1\x2f\x08\x06\ +\x43\x89\xc2\x7d\x38\x9d\x5e\xf2\xf2\xb2\xc8\xce\xce\xa5\xb5\xf5\ +\x04\x75\xd3\x33\xc8\x1d\xbc\x90\x15\x9b\x0a\xc1\xaa\x03\xd2\x00\ +\x40\x2c\x06\x39\x1d\xa4\xd5\xdc\x8f\xef\xc3\x56\x84\xcf\x05\x2e\ +\xf7\x80\xdd\x9e\x84\xbd\xe0\xec\x84\xac\x24\xcc\x16\xa5\x08\xc8\ +\x03\xac\xd7\xed\x81\x1e\xcd\x54\xc6\x88\x4a\x48\x7a\x17\x44\x23\ +\x9a\x3a\x8c\x48\xa0\x8e\x88\x6f\x1a\xe1\xd0\x64\xc2\xe1\x5a\x7c\ +\x81\xc9\xf4\xf6\xcf\xa6\xab\xe3\x3e\x4a\xf2\x2b\xa8\xa9\xbe\xc8\ +\xd9\xee\x1e\xd0\xac\xd4\x8c\xfa\x1e\xdb\x77\xec\xe3\xec\xd9\xe3\ +\x44\xa3\xda\xe5\x0d\x2d\x04\x14\x14\xe4\x71\xfe\x7c\x1b\x16\x33\ +\x3c\xb1\x78\x12\x8d\x67\xa6\xe2\xee\x56\x40\x11\x20\x64\xc0\x0a\ +\xae\xfd\xd8\xa6\xd5\xa0\x1c\xb6\x11\xf6\x09\x90\x4d\x20\x94\x2b\ +\xc6\x04\x71\x9d\xb8\x86\x04\xd8\x00\xd3\x75\x00\xbf\x6b\xf5\xad\ +\x64\xe5\x36\xe0\x69\xd0\xed\xe8\xda\x1d\x40\x1a\x12\x1a\x12\x31\ +\x24\x29\x86\x9c\x70\x5c\x4f\x49\x00\xe5\x13\x0c\x15\xf0\xd4\x3c\ +\x2f\x9a\xb5\x8d\x8e\x9e\x5e\x52\x6d\xc5\x8c\x1c\xf5\x22\xab\x56\ +\xaf\x67\xff\xbe\x44\x6a\x21\x95\x48\x04\x34\x2d\x4e\x44\x95\x00\ +\xa8\xae\x32\x31\xb4\x7a\x1e\xcb\x56\x95\x81\xa2\x5f\x19\x45\x7f\ +\x27\x52\x69\x1f\xa9\x65\x75\x78\x8f\x78\x41\x91\x07\xe0\x84\x64\ +\x5c\x65\xb8\x32\x11\x12\xc0\x75\x00\x5b\xe2\x34\xb4\x7c\xbc\xb6\ +\x8b\xe0\x4c\x90\x47\x00\x80\xd0\x00\x8c\xb8\x07\x2c\x21\x90\x64\ +\x0d\x55\x15\x0c\xbf\x2d\xc6\xb7\xa6\x77\x70\xd1\xd9\x83\xab\xdf\ +\x4d\x6e\x4e\x35\xd5\xa3\x5f\xe0\xa3\x35\x9f\xf2\xf6\xdb\xbf\xe3\ +\x0f\x6f\xfd\x1b\x3b\x77\x35\x52\x55\x3d\x89\xb8\x0e\x16\x0b\x2c\ +\x7a\xa0\x86\xe3\x5d\x75\x89\xc1\x4f\x01\x8b\x91\x82\x50\x20\x7c\ +\x00\xfb\xcc\xfb\xf0\xed\x8d\xa3\x6a\xc6\xf7\xe9\x97\x6d\x40\x30\ +\x60\x10\xff\x2b\x40\x00\x9c\x6f\x1f\x3a\xb3\x92\xcd\xe7\x41\xaa\ +\x37\xf8\xc4\xf5\xe7\x30\x01\x88\xcb\x18\x44\x63\x32\x0b\x67\x78\ +\xc9\xcd\xbf\x40\xb7\xc3\x8b\xc7\xe5\x49\x40\x0c\xa3\xfe\xc1\xd7\ +\xe9\x0f\xe6\xd1\xb0\xf5\x00\x77\xdc\x39\x9f\xf4\x9c\x42\xbc\x01\ +\x00\x28\x29\x96\xf8\xd6\x9c\xfb\x79\x73\x7d\x25\x42\x05\x24\x40\ +\xb2\x80\xfb\x14\xd6\x61\x32\x96\x4b\x85\x78\x2f\x86\x41\xb9\xaa\ +\x85\xf4\x01\x20\x21\xfe\xf2\x26\xd6\xd6\x06\xf8\x53\x70\xfd\x27\ +\x2a\xfa\x50\x90\x54\xc0\x20\x37\x9e\xfe\xb5\x69\x40\x3c\x2e\x91\ +\x69\x17\xdc\x7b\x57\x37\xed\xee\x76\xfc\xfe\x30\x3e\xb7\x1f\x59\ +\xb7\x31\xf5\x9e\x67\x79\xf4\x99\x37\x18\x31\xf6\x5e\x3c\x7e\xf0\ +\x87\x21\x1c\x03\x93\x02\xb3\x67\x0c\xc6\x94\x31\x87\xbd\x07\x6d\ +\x60\xd1\x07\x8a\x54\x55\xb0\x9e\x24\xbd\xbc\x16\xef\x6e\x97\xd1\ +\x46\xd2\x55\x06\xfd\x2b\x00\x38\x0b\x5f\xae\xdc\xbe\x67\x0b\xe7\ +\xf3\xc0\x5c\x00\x42\xbf\xaa\x70\x0c\x10\xae\x80\x20\x11\x8e\x2a\ +\xd4\x4d\x08\x52\x71\xfb\x59\x2e\xf5\xf4\x12\xf2\x47\xf0\x7b\x42\ +\xf8\x5c\x41\xa2\x41\x1d\xbf\x37\x46\x82\xeb\xb2\x3d\x01\xd0\x04\ +\xe4\xe5\xc0\x82\x87\xea\xf9\xe3\xe6\x1a\x02\x1e\x19\x64\x01\x58\ +\xc0\x73\x9c\xf4\x85\x33\x89\x1d\xb2\xe2\x77\x19\x0f\xd0\x68\x21\ +\x00\xbe\x0a\x00\x88\x2f\xef\x8a\x2c\xd7\xb7\xee\xc2\x24\x57\x22\ +\x84\x0e\xd2\xd5\x09\x5c\x65\x03\x44\xd7\x25\x6c\x49\x82\x45\xb3\ +\xfa\x70\x87\x2f\xe0\xf6\x04\x09\x07\x55\x42\xbe\x28\x7e\x6f\x98\ +\xa0\x2f\x42\x30\xac\x13\x8c\x42\x20\x02\xa1\x84\x25\x09\x26\x8e\ +\xb5\x93\x7d\xdb\x1c\xd6\xef\xc8\x00\xb3\x00\x4c\x10\x70\xa0\x94\ +\x6b\xa4\xa5\x8e\xc1\x73\xd0\x05\x66\x05\x84\x6c\x18\xc4\x0d\x00\ +\x88\xfd\x3a\xdb\x8e\xbd\xf7\x6e\xbb\xe4\x06\xd9\x14\x42\xe8\xe6\ +\x6b\xfb\x1f\xae\x6b\xa5\x48\x54\xa1\xa6\x32\xca\x94\x71\x6d\x74\ +\x3a\x7a\x2e\x17\x1d\x0a\x44\x09\x25\xae\x41\x6f\x84\x80\x37\x01\ +\x13\x1e\x00\xf0\x27\x0c\x60\x92\x60\x42\xcd\x18\xd6\x37\x8d\xc0\ +\xe3\x30\x81\x0c\xe8\x32\x78\xf7\x90\x71\xdf\x4c\x42\xfb\x22\xe8\ +\x9a\x74\xd3\x00\x84\xa1\x7f\x6d\x73\xeb\xa7\x34\x76\x63\x49\xf1\ +\xa3\xd0\x81\x10\x56\x23\xc6\x2b\x69\x5c\x0b\x02\xe8\x32\xf3\xa6\ +\xba\x89\xcb\x2d\x38\x5c\x5e\x42\xfe\x68\x02\x24\x46\xa2\xf8\x84\ +\x13\x10\x41\x8d\x70\x1c\xbc\x1e\xc1\xd6\x6d\x2e\x7e\xf1\xc6\x49\ +\x96\x35\x5c\xe4\x54\x4f\x06\xf1\x28\x80\x34\x30\xcc\xce\x53\xa4\ +\x4c\x2b\x45\x8a\x56\xe0\x6a\x0f\x82\x6c\x0c\x31\xd2\x8d\x01\x00\ +\xfa\xf2\x08\xef\x38\x56\x6e\x88\xc8\x6a\x39\xc9\x96\x35\x58\x94\ +\x36\x84\x30\x27\xac\x60\xe8\xba\xc1\x56\xe3\x12\x85\x39\x1a\x93\ +\x47\xb5\xd3\xd9\xdf\x4e\x20\x01\x10\x0e\xc4\x2e\xb7\x52\xc8\x1f\ +\x43\x4d\xdc\x77\xb5\xfa\xf8\x68\xf5\x69\xd6\xed\x6e\x21\xb5\x58\ +\x67\x74\x5d\x15\x4a\x65\x2d\xd1\xb0\x74\xa5\x24\x35\x0e\x9c\x22\ +\xad\x7c\x02\xce\x5d\xce\xab\x86\x99\x1b\x06\xe0\x1c\x1c\x6c\xd8\ +\xb4\x69\x0f\x87\x73\x90\x93\xd3\x48\x35\x37\x60\xb7\x36\x21\x4b\ +\x2a\xba\x6e\x06\xfd\xba\x5f\x24\x03\x42\x66\xde\x14\x1f\xd9\x59\ +\xa7\xe8\xea\x73\x10\x4c\x40\x44\x82\x2a\x22\x18\xe5\xe8\xfe\xf3\ +\x2c\xdf\x7a\x92\x6e\x1b\xcc\x9e\x57\xce\x92\xb9\x95\xfc\xc3\xec\ +\x74\x46\xcd\xb8\x87\xd5\x27\x6a\x40\x52\x41\x18\x29\x38\x0e\x90\ +\x39\x79\x08\xea\xde\x38\x21\x9f\x06\xd2\x8d\x0f\xb1\x21\xd4\x95\ +\xae\xe8\x07\xb1\xed\x97\xc0\x32\x0f\x89\x08\x36\xcb\x61\x72\x52\ +\x36\x93\x6a\xbd\x88\x40\x42\xd7\x2d\x09\x2b\x08\x71\x65\xa8\xb5\ +\xb8\x84\xdd\x26\xa8\xbf\xb3\x07\x77\xa0\x8d\x60\x30\x86\x1e\x53\ +\x69\x3c\x76\x89\x0d\xed\x21\xcc\x95\x25\x0c\xb9\xe3\x36\x32\x73\ +\xb3\xb1\x24\x59\x29\xcd\x82\x05\xb5\x0a\x7b\x7d\xf7\x10\xee\x17\ +\x20\x63\x6c\x66\x37\xd6\xe1\x66\x6c\x79\x63\xe9\x69\x76\x82\xa2\ +\xdc\x5c\x02\x80\xd8\x0e\x6b\xf7\xac\xdb\xd8\x42\x60\x3a\xc8\x29\ +\xa0\x9b\x31\x2b\x6e\x72\x52\x1b\x29\xcc\xd8\x43\xb6\xbd\x95\x14\ +\xab\x1b\xb3\xa2\xa2\xeb\x32\x30\x00\x12\x55\x65\xc6\x0f\x0f\x33\ +\xb4\xac\x95\xf6\xee\x4b\x34\x1d\x3f\xce\x41\x0f\xa4\x96\x54\x91\ +\x9a\x99\x4b\x94\x24\x9c\x11\x99\xbe\x10\xe8\x02\xa6\x94\x41\x56\ +\xe5\x34\xfe\xb3\xb1\x1c\x94\xb8\xb1\x81\x65\x88\xb4\x92\x33\x67\ +\x36\xfe\x2d\xfd\x68\x9a\x31\x03\x88\x1b\x06\x40\x03\xff\xba\x83\ +\x87\x37\xb2\xc5\x01\xa9\xb5\x20\xd4\xcb\x10\x08\x85\x64\x8b\x83\ +\xbc\xb4\xe3\x94\xe5\x7d\x49\x55\xd1\x7e\x72\xec\x7d\x68\x9a\xe9\ +\x72\x1a\x42\x97\x90\x25\x99\xb9\x53\xfa\x48\x49\xda\x41\x4f\xf7\ +\x51\xec\xb2\x8c\xac\xd9\xf0\x85\xcd\xb8\x82\x12\x7d\x7e\xe8\x09\ +\x80\x2f\x06\xe9\x56\x58\x34\x23\x93\x4d\xbe\x85\xb8\x7b\x74\x90\ +\x8d\xcd\xdc\x7d\x0a\xfb\x84\x5c\x4c\xbe\x02\x7c\xed\x01\x50\x64\ +\x74\x9d\x1b\x07\x00\xf4\xad\x2a\xeb\x1d\x1f\x6d\xd1\x91\x1e\x00\ +\xc4\x55\x5b\xd9\x04\xba\x09\x49\x80\x49\x56\xb9\x2d\xbf\x95\xa2\ +\xac\x2e\x40\xba\x9c\x46\x4c\x95\xc9\xcf\x8a\xf3\xf7\xdf\xee\xe2\ +\xe9\xfb\xce\x20\x3b\x0e\x13\x71\xfa\xf0\x79\xc1\x1d\x80\xfe\x20\ +\xf4\x25\xec\x0c\x83\xaa\x43\xed\x60\x28\xbf\x63\x0a\x1f\x34\x66\ +\x83\xa2\x0d\xa4\x10\x0d\x21\x9b\xdb\xc8\x9e\x3d\x17\xc7\x3e\xa7\ +\xb1\x8f\x6e\x0e\x80\x53\xd0\xb4\x76\xcb\xe6\xcf\x39\x6a\x87\xe4\ +\x52\x10\xda\xb5\xa7\x44\x24\xd0\x15\x24\x21\x51\x9a\x7f\x89\xe1\ +\xc5\x6d\x58\x4d\x71\x84\x2e\xa3\xaa\x0a\xe8\x32\xa3\x87\x85\xb8\ +\xbb\x62\x17\xd1\x8b\x47\x08\xb9\xe2\x97\x01\x5c\x41\x70\x18\x10\ +\x9e\x28\x24\x29\xb0\x60\x7a\x16\xcd\xb1\x69\xa8\xde\x08\x24\xdb\ +\x20\x73\x10\x98\x6d\x98\x52\x53\x71\x74\xc5\x20\x2e\x00\xe9\xe6\ +\x00\x80\xd8\x07\xee\xe0\xfb\xc1\x95\x9f\x43\xd2\x44\x10\xea\xb5\ +\xe7\x13\xdd\x58\x32\xba\x02\x9a\x4c\x76\x9a\x97\xb1\xe5\x6d\x8c\ +\x2c\xeb\x22\x33\x35\x42\x54\x55\x12\x36\x33\x71\xb8\x83\xfc\xd8\ +\xa7\x84\x3a\x7b\xf0\x7b\xc1\x13\x34\x20\x42\xe0\x8e\x80\x06\x4c\ +\x28\x01\x7b\xc9\x04\xce\x47\x66\xe1\xef\x1e\x43\xe7\xd6\x4c\xce\ +\xfc\xa2\x89\x63\x9b\xdf\x25\x7f\x46\xb1\x71\x98\x13\x37\x0d\x20\ +\xf6\xc3\xa6\xa6\x8f\xb7\xb6\xe1\xa9\x05\x93\x0d\x84\x00\xfd\xda\ +\x1d\x00\x92\x01\x22\x93\x64\x89\x91\x9f\xe9\x65\x5c\x45\x27\x43\ +\x8b\x9d\xc8\x44\xb1\xd8\x14\xea\xc6\x9c\x40\xe9\xdb\x4d\xa0\x37\ +\x86\xcb\x3f\x00\xe0\x4c\xb8\x3f\x0a\xe7\x9d\x3a\x0d\x9f\x1d\xe3\ +\x74\xf3\x21\x36\xfc\x7e\x03\x9d\x8d\x1f\xe1\x09\x6c\x47\xa9\x3a\ +\xcd\xc8\x67\x06\x53\x51\x99\x05\x9a\xb8\xee\x30\x67\xe2\x06\x14\ +\x01\xc7\x1f\x5b\x5b\xdf\xbf\x7b\x9f\xf2\x13\x79\xe6\x04\xe8\x6b\ +\x04\x6c\xc6\xf6\x15\x46\x5b\xe9\x20\x19\x11\x9b\x52\x13\xce\xc0\ +\x9c\x91\xcb\xb0\xac\x0c\xf2\xd2\xd2\x69\xfa\xc2\x47\x2e\x21\x86\ +\xf8\xd7\x71\xf4\x4c\x19\xb6\xbc\x5a\xfa\xed\xe0\x08\xc0\xa6\x9d\ +\xad\x9c\xdc\xde\x40\x41\x72\x88\x39\x63\xcb\xb9\x9d\x22\x86\xde\ +\x15\x80\x98\x15\x34\x19\x62\x3a\xa8\x3a\x24\x2b\xc8\xc6\x88\xdf\ +\x14\x00\xa0\x7f\xae\xb3\xae\xfd\x83\x86\xa5\xa5\xf5\x77\x5b\x50\ +\x76\x80\x26\x81\xd9\x0e\xd6\x0c\x90\xed\x10\x4d\x87\x58\x36\x44\ +\xd2\x88\xf4\x26\x13\x71\xda\x89\xb8\x34\x02\xdd\x1d\x44\x7b\x4e\ +\x90\x2f\x5c\x68\x85\xe9\x4c\x9d\x1e\xc1\x7f\xf2\x23\x3a\xcf\x55\ +\x62\x32\x65\xd2\xba\x7d\x1d\x7a\xcb\x26\xbe\xf3\x48\x1d\x4b\x9e\ +\x5a\xc8\x97\x07\x4e\x93\xd2\xb9\x01\xcc\x49\x20\x19\x2f\xfd\x16\ +\x01\xe9\x99\x70\xd2\x83\x27\xa6\xc5\x00\x71\xb3\x00\x74\xc3\xb1\ +\x95\x6b\xd6\x6d\x59\xba\x6a\xd2\x1c\xea\x7e\x08\xd1\x30\x38\xad\ +\x78\x9b\xfb\xf0\x9c\xe8\xa7\xbb\xad\x4f\xef\x3d\x7f\x40\x04\x3b\ +\x1c\x42\x8e\xc7\x31\xa7\x98\xb1\xa6\xd9\xb0\xe7\xa6\x91\x94\x93\ +\x9a\xb8\x4f\xa3\xfc\x02\x14\x07\x25\x52\x2f\x6e\x62\xf9\x09\x97\ +\x7c\xe0\xd0\x10\x79\x52\xf6\x69\x1e\x7b\x6a\x01\x93\x26\x4f\x02\ +\xe0\x68\xe3\x41\xca\x76\xb7\xc5\xf5\x54\x13\x42\x12\x80\x40\x42\ +\x10\x0c\xb5\xaa\xef\x6d\x3d\xd9\xba\x56\xd5\x3f\x05\x22\x80\x76\ +\x53\x00\x80\xf6\xd3\x58\xec\xef\x76\x3e\xfa\xca\xd9\xf1\x55\x23\ +\xa7\xfa\x62\x31\xf9\x44\x67\x47\xcf\x85\x90\xaf\xab\x17\xe1\x08\ +\x81\x5f\x87\x88\x34\x10\xba\x90\x9d\x00\x20\xb8\xf6\x2a\x19\x27\ +\x7c\xc1\xe9\xe4\xec\x82\xb1\x0b\x0b\x86\xd5\x8f\x89\x69\x92\x0c\ +\x02\x80\xed\x4d\xcd\xdd\x1f\xfe\x69\xef\xef\x81\x90\x51\xa4\x00\ +\x24\x01\xaa\x06\x3d\x40\x37\xe0\x00\xa2\xd7\xfd\x2f\x24\x49\x12\ +\x5f\x21\x33\x90\x09\xe4\x01\x69\x46\x3d\x2a\x10\x31\xae\x71\x40\ +\x07\x04\x37\x20\x49\x92\x93\x8b\x8a\x6a\xa7\xe4\xe4\x14\xd4\x8e\ +\x1f\x3f\x66\x54\x51\x51\x41\xf6\xfb\xef\xaf\x68\x38\x77\x6e\xfb\ +\x7a\xa0\x13\x08\x72\x45\x02\x88\x1b\x60\x01\x20\x26\x12\xba\x59\ +\x00\x23\x35\x2c\x86\x25\x40\xc3\x28\xdc\xb0\x30\x7c\xa3\x9f\x95\ +\x02\x64\x00\x69\xc6\xbd\x00\x1c\xc6\x93\x0e\x73\xad\xc4\xd5\x0f\ +\x48\x08\x81\x89\x9b\x57\xdc\x70\x88\xff\xbb\xe2\x46\x2b\xf8\x01\ +\x8b\x91\x30\x40\xd4\x48\x55\xe7\x2b\x64\x24\xf0\xd7\xab\xff\x06\ +\x50\x1c\x59\xce\xc5\x04\x3a\xad\x00\x00\x00\x00\x49\x45\x4e\x44\ +\xae\x42\x60\x82\ +\x00\x00\x0c\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\x0c\x49\x49\x44\x41\x54\x78\x5e\xed\x9a\x09\x6c\x5c\xd7\ +\x79\x46\xcf\x7d\x6f\x36\x0e\x57\x0d\x49\x71\xa7\x48\x8a\xa2\xa8\ +\x8d\xda\x29\x53\x92\x15\xdb\x32\x92\xc8\x52\x6b\x3b\x4e\x60\x3b\ +\xf1\x16\xbb\x71\xd3\x24\x6d\xaa\xd6\x89\xe3\xb4\xae\x61\x23\xb5\ +\x93\x36\xa8\x8d\xb8\x69\xd3\xd6\x6d\xed\xa2\x0b\xd2\x16\x69\x6b\ +\x18\xa9\x9b\x5a\x4b\x97\xd8\xb2\x4d\x59\x5c\xc4\x4d\xa4\xb8\x2e\ +\x22\x87\x1c\x0e\x67\xc8\x59\xdf\x72\xab\xc1\x7b\xc6\x33\x08\xa6\ +\xf0\x08\x8c\xd2\x00\x1d\xe0\xc3\xff\xee\x70\x66\xee\x77\xfe\xe5\ +\x0e\xe6\x81\x42\x4a\xc9\xcf\xf3\x43\xf9\x19\x1b\xf8\x7f\x00\xd7\ +\x4a\x80\x33\x67\xce\x70\xf2\xe4\xc9\x0f\x05\x20\x04\xdc\x77\x84\ +\xc7\x86\x66\x68\x7f\x7b\x90\xb3\xa6\xf9\xd3\x05\x78\xfe\xf9\xe7\ +\xb9\xf9\xe6\x9b\xff\x77\x80\x48\x24\x42\x67\x67\xe7\x87\x02\xd8\ +\x55\xc7\xbe\x0d\x45\xb5\xcf\xb6\x34\x04\xd4\x86\xbc\x8e\x1f\xbc\ +\x7c\x8a\x27\x7a\xc7\x18\x5a\x73\x00\xc7\xdb\xda\xb5\x90\x5b\x45\ +\xdc\x7b\x23\xdf\x69\xbd\xeb\x05\xf7\xd1\x2f\xbd\xa3\xdc\xf3\xc5\ +\x3f\xfe\xe4\x4b\x5f\x2b\xed\x7c\xf2\x7e\x9e\x2d\x2d\xc9\x29\x64\ +\xeb\x7d\x8f\xb2\xf9\xee\x87\x59\xbf\x7b\x0b\xc2\x25\xfe\xcf\xcd\ +\xc0\xb1\xdd\x3c\xbc\xf7\xd0\xf1\xb6\x9a\x1d\x77\xa0\xa8\x6e\x6a\ +\xf6\x7c\x9e\xfd\x9f\x1d\xf0\xdf\x7e\xdf\xaf\x3f\xd1\xf8\xe9\xe7\ +\x66\x1e\x7f\xf2\x99\x3f\xf9\xe4\xc3\x5f\xff\xf3\x63\x27\x5f\xee\ +\x2d\x7f\xe4\xec\xbc\x72\xcb\x77\x7f\xc8\x8e\x2f\xfc\x16\x95\x47\ +\x8e\xe2\xaf\x58\x07\xca\xcf\x0e\x60\x7d\x01\xc5\x27\x0e\xf8\x7e\ +\x77\xff\x27\x5e\x40\x08\x27\xb9\x3f\x1e\x55\xf8\xc2\x5b\x0f\xf2\ +\x3b\x8f\x3c\xe0\xfb\xe5\xa3\x95\xdc\xb4\xa3\x9c\x27\xef\xdb\xce\ +\x6b\x4f\x1f\x08\xfc\xf0\xc5\x07\x8e\x3d\xff\xcd\x27\xbe\xf1\xd0\ +\xe3\x7f\xf8\x46\xcb\x67\xff\x6e\xda\x7b\xeb\x4b\x17\xd8\xf1\x95\ +\x3f\xa2\xea\x63\xf7\x93\xbf\x69\x13\x8a\x47\xbd\x6e\x00\x77\x1f\ +\xe2\x99\xfd\xb7\x3d\x56\x56\x50\xda\x08\x80\x29\x25\xdf\xfa\xd7\ +\x29\x9e\x7d\x6d\x92\xef\x7f\x71\x0b\x07\x9b\xd6\xd1\x3b\x11\xa7\ +\xac\xc4\x4f\xca\x54\x88\x6a\x2e\xdc\xb9\x79\xb4\x6c\xab\xe2\xe1\ +\x3b\xb7\xf3\xd2\xd7\x0f\xfb\x4e\xff\xd9\xbd\xbb\xfe\xfa\xbb\xbf\ +\xf1\x2b\x5f\x7d\xfa\xf7\xff\xea\xd6\xcf\x7d\xaf\x3f\x70\xf4\x4f\ +\x27\xd8\xfa\xdb\xff\x42\x5e\xd3\x0d\x59\x9f\x42\xd9\x68\x67\x1d\ +\xfb\x3e\x72\xa0\xe1\x73\xdb\x8f\x7e\x0d\xa4\x64\x21\xae\xf3\xc8\ +\x2b\xc3\x6c\x29\xf7\xf1\x8f\x57\xcd\x67\x0c\x07\x63\x30\x35\x9f\ +\xa6\xa1\x2e\x17\xb7\x02\x52\x82\x24\x13\x05\xa6\x84\x98\xa6\x22\ +\x85\x4a\x45\x4d\x39\x55\xb5\x65\xdc\xf1\x31\xa9\xf8\x54\x59\x71\ +\xe6\xc7\x43\xbf\xf8\x9b\x5f\xee\x5c\x64\xf9\x52\x27\x90\x58\x73\ +\x00\x55\x41\x7c\xe6\x88\x78\x61\xff\x9d\xdf\x76\xab\x6e\x1f\x52\ +\xea\x7c\xf3\xf5\x29\x76\xd6\xe4\xf0\x91\x2d\x01\x82\x31\x13\x13\ +\x85\x50\x02\x22\x31\x9d\x3c\xbf\x0b\xa1\x60\x9b\xff\x49\x51\x90\ +\x32\x05\x69\x53\x32\x9d\x21\x8f\x8d\xf6\x01\xe6\x4f\xa5\x02\xc7\ +\xf7\xf0\xe0\xee\xb6\x63\x87\x6a\xb6\x1d\x47\x1a\x29\xc0\xa4\x7b\ +\x3a\xce\x73\x27\x6a\x18\xbe\x92\xe2\x42\xcf\x22\x89\xb4\x89\xdb\ +\xe3\xc2\x23\x24\x6e\x97\x00\xa4\x65\x56\x38\x86\x59\x05\xc4\xab\ +\x4a\x2e\x5c\x0a\x19\x2c\x0f\x5f\x00\x52\x6b\x0e\x50\x5a\x40\xe0\ +\xf6\x36\xdf\x73\xad\x77\x3d\x8f\xd4\x13\x48\x69\x10\x4b\x19\x20\ +\x04\x85\x85\x3e\x36\xe7\xfa\x69\x6a\x2c\x42\xd7\x25\xb1\x58\x1a\ +\x21\x04\x2e\x21\x2d\x93\x16\x07\x12\x81\x14\x0e\x10\x38\x50\x3e\ +\x61\xd0\xd1\xdd\x37\x81\x11\x9b\x5a\xf3\x19\x10\xc0\x3d\x87\x78\ +\x7a\xf7\xc7\xbf\x52\x9e\x57\x58\x86\xd4\x93\x48\x99\xc9\x7e\x92\ +\xed\x95\x39\xe8\x52\xa0\xda\xbd\xae\xba\x05\x9e\x22\xaf\x6d\x4c\ +\x02\xd8\xc6\xad\xb5\x04\x10\x58\x10\x08\x7b\x2d\x99\x09\x46\x09\ +\x4f\xf7\x0d\x02\xf3\x6b\x0e\xd0\xb2\x81\x3d\x47\x5a\x1b\x1e\xdd\ +\x76\xd3\x97\x31\xd3\x51\x90\x66\x06\x80\x73\xa3\x09\xf6\xd4\x94\ +\x22\xc0\xca\xf6\xfb\xc6\x6c\x6c\x67\x6d\x1b\x07\xa4\x03\x04\xd2\ +\x79\xbe\x67\x78\x81\x23\xd5\x97\x77\x2f\x24\xdc\x4d\xdd\x63\xda\ +\xcc\x9a\x01\x78\x5d\x28\x77\x1f\x16\x2f\xb6\x7e\xe2\xdb\x1e\xc5\ +\x88\x23\x8d\x24\x90\x01\x90\xbc\x3b\xa5\xf1\xd4\x2e\xbf\xd3\x2a\ +\x60\x1b\x13\x48\x56\xb6\x0f\x48\x21\x90\x12\xb0\x81\x6c\x40\x5c\ +\x8a\x24\x6f\xa1\x9f\x4f\xef\x0c\x96\x44\xaa\xf2\x5e\xfe\xea\x2b\ +\xe1\x03\xc0\xdc\x9a\x00\x7c\x74\x17\x0f\xec\x3f\x7c\xdb\xc1\xaa\ +\x4d\x37\x62\x24\x82\x20\x4d\xc0\xcc\x44\x66\xe2\x2e\x4a\xf2\x5c\ +\x24\x0d\xe9\x0c\x27\xd8\x7d\xbe\x22\xe3\xb6\x6d\x56\xa9\x52\x5e\ +\x74\x9a\x87\xf2\xdf\x20\x74\xa4\x86\xd7\x4f\x4d\xd5\x96\x17\xa9\ +\x6d\x33\x8b\xc6\xab\x59\x02\xac\x3e\xb8\x27\x5a\xbd\xcf\xb6\xde\ +\xf9\x7b\x18\xf1\x2b\x48\x53\x03\x69\x99\x1f\x8f\x4a\x6a\x02\x05\ +\x56\x06\x85\x63\x5a\xb2\x8a\x71\x61\x39\x76\xaa\x24\xec\xb5\x04\ +\x2d\x45\x49\xfb\x5f\xa0\x36\xb9\x28\x09\x16\xe2\x76\xbb\xd5\xcd\ +\x55\xee\x43\x57\x01\x5e\x07\xd2\xd7\x0e\x60\x0d\xee\x33\xfb\x8e\ +\x3d\x56\x91\xe3\xf3\x62\x26\xe7\x91\xd2\x04\x5b\xe7\x26\x55\x0e\ +\xd4\xfa\x11\x80\x2a\x56\x19\x4e\xa7\xc7\x71\xda\xc5\xce\x3a\xf6\ +\xbc\x98\x92\xe2\xb7\x5e\xc1\x57\x17\x86\x0d\xf7\xa2\xc4\x4e\x51\ +\x16\x38\xcf\xd6\xea\xf8\xfe\xff\xe8\x49\xe6\x03\xa1\x6b\x06\xd8\ +\xb9\x81\x3d\x37\xee\xaf\x7f\x74\xdb\x91\xcf\x63\x2c\x8f\x58\x83\ +\xcb\x07\x00\xa6\x72\x79\xf0\xb0\x1f\x55\x91\x20\x57\x69\x15\x40\ +\x3a\x40\xce\xda\x82\xb2\x2a\x77\xfe\x75\xf2\xd7\xf5\x43\xd5\x4d\ +\x50\xd0\x0c\xeb\xa6\x28\x2f\x29\xa4\xb1\x3c\xb4\x5d\x55\x58\x6f\ +\x98\xd7\x08\xe0\x56\x11\xf7\x1c\xe6\xc5\xab\xad\xe3\x26\x31\x65\ +\x7d\x69\x49\xc3\xaa\x80\xa9\x91\x5e\x1a\xa0\x77\xfe\x06\xb6\xae\ +\xf7\x60\x4a\x69\x0f\xe7\xca\x1e\xb7\x8d\x3b\xa6\xed\x2a\x81\x29\ +\x21\xd9\xdf\x43\x95\x7e\x16\x51\xdf\x08\xe5\xb7\x00\x26\x94\x36\ +\x51\x51\x54\x40\xa1\x5f\x2d\x29\x2f\x72\xb5\x4c\x2d\xe8\x7d\xd7\ +\x04\xf0\xf1\x5d\x3c\xb4\xf7\xd0\xb1\x83\x95\x0d\x7b\xd0\x42\x17\ +\xd1\x62\xa3\xa4\x17\x3b\x2d\x45\x7a\x58\xd2\x54\x72\xf3\xce\xa1\ +\x2a\x20\xcc\x95\xc6\x57\x3f\x89\xa4\x04\xb0\xcc\x47\xa7\xe6\xd9\ +\x30\xf3\x4f\x28\x3b\xca\xa0\xf6\x1e\x0b\x4d\x1a\x50\x14\xa0\x30\ +\xb7\x12\xbf\x6f\x40\x6c\xa9\xf6\x1e\xba\x0a\xf0\xcf\x40\x2a\x2b\ +\x80\xfc\x1c\x72\x8f\xed\xe1\x1b\x75\xf5\x35\x84\xcf\x7e\x89\x78\ +\xfc\x2d\xa4\xb6\x08\x08\x10\x0a\x08\x95\x7e\x6d\x0f\xbb\x6b\x03\ +\x08\x40\x11\x0e\xb8\xb4\x05\xab\x0c\xb5\x5d\xa5\xf0\x7c\x8a\x8a\ +\x9e\xbf\xc5\xd3\x16\x80\x92\x3b\x40\xf1\x80\xd4\x01\x4b\x4a\x60\ +\x13\x65\xc5\xe7\xd9\x5c\xb1\xbc\xff\x8d\xae\x58\x01\x30\x97\x15\ +\x40\x75\x31\xd5\x53\x39\x54\x96\x19\x53\xe4\xfb\xcb\x49\x46\xf6\ +\xb2\x14\x1f\x22\x51\x10\x01\xc5\x85\xb8\xaa\x8e\xc5\x56\x0e\x66\ +\x06\x58\x88\x15\xbf\x91\x9d\x6f\x5f\x56\x7e\x07\x20\x99\x0b\x4b\ +\x8a\xde\xfb\x01\x79\x07\x8b\x21\xb0\x1f\xdc\xeb\x00\xc3\x92\xd4\ +\x2d\x15\x36\x50\x59\xbe\x3e\x33\x07\xdb\x14\xc1\x7a\x53\x66\x09\ +\x30\x3e\xcf\x98\xa2\x12\x8e\xa4\xe4\xba\x82\xcd\x2d\xe4\x6c\x6e\ +\x23\x27\x32\x8e\x3e\x3e\x4d\x6c\xe1\x32\x71\x5f\x98\x2e\x6d\x17\ +\xbf\x56\xe9\x73\x00\x56\x17\xc2\x36\x2e\x20\x63\x1e\x77\xf7\x59\ +\x8a\x5b\x02\x50\x5c\x0f\xee\x5a\xab\x6d\xd0\x41\x6a\xb6\xd2\x50\ +\x5a\x49\x45\x79\x03\x3e\xf7\xa5\xfc\x0d\xa5\x9e\xd6\x91\x60\xba\ +\x17\x90\x1f\x1a\x20\x96\x24\x39\x1b\xe5\xcd\xf0\xf2\xdc\xf1\x1a\ +\xa9\x40\x60\x33\x94\xec\xc4\x55\xbb\x48\xa1\x1e\xa4\x60\x3c\xc4\ +\xc9\x94\x46\xde\x95\x41\xa8\xdf\xbc\x4a\x15\x84\x5d\x05\x07\x63\ +\x3e\x62\x92\x1c\x1e\xa4\xb1\x38\x8e\xd8\xb0\x07\xd4\x22\xa7\x6d\ +\x64\x46\x69\x5b\x29\xc8\xf5\x50\x50\xd2\x48\x5e\x7e\x11\x4d\xe5\ +\x91\xb6\xab\x00\xdf\x07\xe2\x59\x0d\x71\xcf\x38\xa7\x6f\x88\x8e\ +\x1c\x97\x8a\x1f\xa1\x2d\x82\xa7\xd8\x92\xb7\x0a\xb1\x05\x8e\x6e\ +\x51\x90\x0b\x31\xcc\xce\x1f\x81\x27\x1f\xb3\x69\x2f\xb8\xbd\xac\ +\xf6\x08\x45\x4c\xc2\xd3\x8b\x6c\x8a\xbe\x87\xf2\xd1\x13\x00\x20\ +\x75\x9c\xb6\xd1\xb0\xcd\xdb\x4a\x22\xfc\x85\x54\xd6\x35\xd2\x54\ +\x31\xbb\xef\xdf\xba\x96\x0a\xae\x05\xe0\x94\xa9\x87\x48\x26\x16\ +\xc9\xd1\xbc\xe0\xca\x01\x24\x08\x40\x78\x41\x28\x88\xe2\x62\xd4\ +\xd2\x6a\xd0\x5c\x28\x83\xed\xc8\xb4\x86\x59\xd3\x0c\xc5\xe5\x80\ +\x00\x60\x21\x22\x99\x9d\xd3\xd9\x30\xf8\x1a\xbe\xdb\x3f\x05\xa4\ +\x6d\xe3\xb6\x79\x3e\x98\xfd\x24\x98\x09\x30\xe3\xe0\x81\xea\xba\ +\x4d\xd4\x04\xda\x9b\xbc\x2e\x51\x93\xd2\xe5\x4c\x56\xbf\x89\xdf\ +\x1b\xa2\x0b\x21\xe7\x96\x17\x07\x41\xd3\x41\xc6\xac\x0f\x96\x19\ +\x25\x40\x26\x2d\x99\x4b\xa0\x2e\x21\xb6\x36\xa3\xec\x6e\x43\x4d\ +\x44\x50\x3b\xce\xa0\x8c\x74\x13\x8e\x18\x4c\xcf\x43\xa0\xeb\x55\ +\x02\xb7\xde\x06\xaa\x6e\x65\xd8\xb4\x32\xed\x18\xce\xc4\xb8\xad\ +\x18\xc8\x65\xc8\x37\xa9\x2e\xab\xc6\xe3\x52\xfd\xb5\x25\xde\x56\ +\x40\x64\x05\xa0\x1b\xc8\x8b\xa3\x9c\x89\x86\x7a\xc1\x50\xc1\x58\ +\x02\x73\x19\xcc\x98\xad\xb8\xad\x84\x05\x64\x44\xc1\x98\x41\x54\ +\x15\x20\x76\xb7\xa2\x94\x56\x52\x38\xfc\x26\xa5\x1d\x7f\x4f\x6d\ +\x6b\x33\x14\xe6\x82\x19\x71\xc0\x65\x02\x47\x31\x4b\xe6\x72\x46\ +\xd6\x5e\x1e\x1d\xbf\x47\x25\xb0\xbe\x42\x34\x95\xfb\x6e\x00\x72\ +\xb3\x02\x00\xe8\x18\xe2\x54\x34\xd4\x87\x49\x2e\x68\x61\x30\xa3\ +\xb6\x96\x41\x2e\xdb\x1b\x5b\x20\x56\x4c\x58\x15\xd1\xaf\x20\xfc\ +\x11\xbc\xbb\x9b\xa9\xfe\xd4\x9d\x88\xfa\xa6\xcc\x73\x19\x50\x9c\ +\xd7\x66\xb4\xc2\xb4\x99\x51\x04\x8c\x38\x18\x1a\x88\x04\x35\x1b\ +\xb7\xb0\xb1\x34\x67\x2f\x50\x94\x35\x40\xfb\x00\x67\x52\x89\xb0\ +\x4c\x2c\x87\xc0\x10\xd6\x26\x46\xc4\xde\x64\xc9\xd9\xd4\x32\x61\ +\x67\xd1\x56\xe6\xda\x98\x01\x6d\x00\xd2\x97\x56\x54\x6f\xd9\x02\ +\xb5\xa2\x93\x18\x23\x02\x7a\x12\xf4\x34\xe8\x1a\xc8\x28\x35\x8d\ +\x5b\xa9\x28\xf2\x36\xf8\x3d\x4a\x5d\xd6\x00\xdd\x23\x5c\x8e\xc4\ +\x18\x89\xcc\x77\x83\x99\x67\x7d\xb0\x11\xb7\x21\x16\x6d\x90\xf7\ +\xab\x62\x03\x39\x19\x75\x0c\x1a\x51\xec\x6b\x9c\x75\xd4\x7e\xff\ +\xa2\xad\x25\xd0\x53\x8e\xf9\x8c\x72\x25\x95\xeb\x4a\xf0\x78\x3c\ +\xde\xba\x12\x5f\x1b\xa0\x64\x05\xa0\xe9\x98\x17\x87\x39\xbb\x38\ +\xdb\x09\x62\x9d\x05\xa0\xa5\xed\x2c\x2d\xd9\x1b\x87\x1d\x13\xa6\ +\x15\x1d\x38\x5b\x66\x64\xc5\xdf\xac\xf7\x59\x8a\x82\x9e\x00\xcd\ +\x36\xef\x00\x00\x3a\x3e\x57\x9a\xd2\xaa\xba\x4c\x1b\x1d\x00\xf2\ +\xb2\xfe\x3d\xf0\x4e\xbf\x3c\xdd\xb6\xa3\xeb\x61\x53\x0d\xa0\xa4\ +\x75\x50\x4c\x30\x55\x50\x55\x10\x06\x28\x69\x50\x54\x10\xef\xcb\ +\x05\x28\x2b\xf2\x22\x01\xd3\x39\x3a\xa5\x61\xc9\x34\xc1\xfc\x60\ +\xd4\xc1\x30\xc0\xd0\x2d\x99\x3a\x22\x15\xa4\x76\x73\x0b\x0d\x17\ +\xfa\xf6\x40\x68\x1d\x10\xcd\xea\xd6\x62\xd7\xb0\xfc\x4f\x3d\x1d\ +\xd7\x97\xc3\xe3\x20\xfd\x4e\x96\xb4\x34\xce\x75\x0a\xb4\x24\x68\ +\x71\xd0\x96\x40\xb7\xfa\xd9\x96\xb5\xd6\x33\xcf\xc7\xac\x6c\xeb\ +\x29\x70\xde\xbf\xca\x67\x6a\x60\xd8\x55\x50\x22\x6c\x68\xde\x49\ +\x69\x9e\x77\x43\x9e\x57\xdd\x08\x90\x15\xc0\xd0\x34\x13\xf3\x11\ +\x2e\x2d\x5c\x79\x0f\x5c\xeb\x33\xc6\x71\x94\x72\xa2\xd5\xbf\xce\ +\x3a\xed\x08\xcd\xd6\xca\xd7\x3b\x6b\x1b\x48\x73\x00\xa4\x17\x72\ +\x36\x42\xc5\x21\xf2\x03\xe5\x80\xa2\xe4\xfb\x5c\x8d\x80\x2b\xab\ +\x16\xd2\x0d\xe8\x18\x92\xa7\xea\x9b\xda\xb7\xd6\x6d\x3d\x01\xd1\ +\x0e\x50\x54\x5b\x0a\x08\xc5\x89\x42\x58\x22\x13\xb1\x22\x12\x24\ +\x76\xfc\xa0\x4c\x30\x4d\x3b\x1a\x80\x17\x3c\x95\xe0\xad\x42\x7a\ +\x2b\x09\x87\xe3\x8c\xf7\x77\x33\xda\xfb\x2a\x23\x3d\xdd\x04\xa3\ +\xa9\xf1\xe0\x52\x7a\x14\x10\xd9\x00\xd8\xa7\x91\x79\xe6\x96\xd9\ +\x8b\xbf\xaa\xab\x01\x5c\x86\x04\x23\xbd\x0a\x80\x70\x84\x1d\x01\ +\xc0\x81\x70\xcc\x03\x2a\x78\x2a\xc0\x5b\x0d\xbe\x6a\x62\x09\x98\ +\xe8\xef\x60\xac\xef\xdf\xaf\xaa\x83\xc5\xf9\x20\xf1\xa4\xb1\x74\ +\x39\x98\xe8\x1d\x9a\x4d\x74\x74\x4d\x2e\xfd\xc8\x30\x65\x1f\xa0\ +\x65\x0d\xf0\xce\x80\x3c\xab\xa7\x13\x46\x64\x7e\x48\x2d\x76\x95\ +\x40\x72\x72\xb5\xec\x3b\x11\x9c\x2a\x48\xec\x65\xc6\x70\x19\xf8\ +\x6a\x91\xbe\x1a\x52\x7a\x0e\xd3\x97\xbb\x99\xec\xff\x2f\xc6\xfb\ +\xcf\x33\x3f\x35\x22\x13\x69\x19\x1f\x9b\x4b\x0f\x5e\x9a\x49\x74\ +\x5e\x9e\x4d\xb6\x4f\x84\x53\xdd\x52\x32\x03\x84\xec\xe1\x4d\x03\ +\x64\x0d\x30\x1d\x92\xe1\x50\x94\x0b\xa1\x89\xb7\xf7\x15\x37\xed\ +\x83\xf8\x18\x98\x06\x8e\xe9\x55\x2a\xa0\xa8\xe0\x2d\x83\x9c\x3a\ +\xf0\xd7\x93\xa6\x88\xe0\xc4\x00\x53\xed\x6f\x33\x39\xf0\x3d\xe6\ +\x27\x06\x49\x24\xd2\xc9\xf1\x79\x6d\xe4\xd2\x4c\xaa\x6b\x60\x3a\ +\xd9\x3e\x1e\x4a\x77\xa5\x75\x39\x05\xcc\x03\xd1\x35\xbd\xbd\xfe\ +\x56\xaf\x71\xaa\x76\xe3\xb9\x7d\x72\xef\x67\x10\x73\xa7\x71\x6e\ +\x2f\x1b\x40\x46\x80\xaf\x0c\xf2\x36\x41\x5e\x23\xa6\xaf\x9a\xf9\ +\xe9\xcb\x5c\xe9\x3c\xc7\xd4\xc0\xdf\x10\x1c\xbb\x48\x3a\x91\x30\ +\x27\x43\xfa\x68\xdf\x64\xfa\xe2\xc0\x74\xaa\xfd\x72\x30\xdd\x11\ +\x4f\x99\xe3\x40\xd0\x36\x1c\x77\x6a\xb6\xc6\xf7\x46\xbb\x46\xcc\ +\x53\xc7\x66\x7b\x1e\xd7\x5c\xc5\x78\x14\x0f\x98\x1a\xb8\x8b\x20\ +\x3f\x63\xb8\x09\xd3\x5f\x4f\x24\x3c\xc7\xec\xd0\x7f\x73\x65\xf0\ +\x3b\xcc\x0c\xbd\x4d\x32\x1e\x33\x82\x8b\xc6\x4c\xdf\xa4\x76\xb1\ +\x77\x32\xfd\x5e\xff\x64\xfa\xdd\xa5\xa4\x39\x66\x1b\x8e\x00\xcb\ +\x59\x1a\xbe\x76\x80\x9e\x51\xf3\x6d\x43\x4f\xc7\x16\xa6\x3a\x72\ +\xcb\xeb\x1f\x41\x7a\x4a\x58\x8e\xc5\x98\x1b\x7e\x93\xd9\x37\xff\ +\x92\xe0\xf0\x39\xe2\x91\xa0\x0c\x45\xcd\xb9\xbe\x09\xbd\xef\xe2\ +\x84\x76\xa1\x7f\x52\x3b\x1f\x8c\x18\x97\x6c\xc3\x61\xdb\xb0\xb1\ +\xd2\xc0\x75\x01\x08\x46\x64\xf4\xf2\xb4\x79\x3a\xe7\x8d\xa7\x7f\ +\x61\xba\x72\x1f\x73\x23\x6f\x12\x5b\x98\x64\x29\x6e\x46\x7b\xc6\ +\x8c\xde\xee\x31\xad\xb3\x7b\x54\x7f\x77\x66\xd1\x18\x30\x4c\xae\ +\xd8\x86\x97\x56\x3b\x35\xae\x33\x80\xa3\x6f\xfd\x43\xf2\x97\xee\ +\x9a\xee\xf9\x83\xfc\x9c\xbe\xc6\xde\x71\xa3\xff\xe2\x98\xfe\xee\ +\xd0\x15\xc3\x3e\x29\x58\xf8\x49\x27\xc5\x75\x07\x68\x6e\x6e\xe6\ +\xa9\xa7\x9e\x5a\xb5\x10\xc0\xfd\x40\x49\x4b\x33\xb4\xc0\x32\x90\ +\xb8\x3e\x36\x1d\x6f\x2b\x1f\x3f\xf7\xff\x6e\xf3\x3f\x6b\x76\x5b\ +\x62\x8d\x5d\xc3\xae\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\ +\x82\ +\x00\x00\x11\x1e\ +\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\x10\xe5\x49\x44\x41\x54\x78\x5e\xed\x9a\x69\x70\x1c\xe5\ +\x99\xc7\x7f\x6f\x77\xcf\x8c\x46\xd2\xe8\xb0\x64\xc9\xb2\x24\x5b\ +\x36\x92\x0f\x6c\x83\x8d\xb1\xb1\x31\x10\x07\x63\xc0\xe6\x08\xc7\ +\x02\xae\x04\x42\x20\x81\x9c\x40\xb2\x49\xc8\x86\xec\x92\x90\x64\ +\xa9\x4d\xd8\x1c\x64\x37\x07\x9b\x84\xa3\xc8\x26\x81\x70\x65\xb3\ +\x86\x25\x10\xc2\xe1\x14\xa7\x6d\x9c\xd8\x18\x5f\x18\xdb\xb2\xe4\ +\x4b\x23\x8d\xe6\xe8\xeb\x3d\x56\x9a\x6e\x76\x56\xe5\x52\x12\x36\ +\x7b\x54\xaa\xf6\xa9\xfa\xd5\xf3\xf6\x5b\xaa\xae\xe7\xff\x5c\xd3\ +\x1f\x24\x8c\x31\xfc\x39\x9b\xc5\x9f\xb9\x39\x00\x42\x08\xc6\x1a\ +\xd4\x26\x05\x5f\xbf\xa0\x15\x5f\x3b\x04\x23\x48\x63\x11\x4a\x53\ +\xeb\x7b\xde\x85\x08\x71\x61\xaa\xba\xe6\xf8\x44\x2a\xd5\xac\x95\ +\xf6\x7d\xb7\xb4\x5b\x86\xe1\xd3\x96\x6d\x3f\x70\xd7\x0b\x87\x5e\ +\xde\x37\xe8\x91\x72\x2c\x7c\xa9\xf9\x9f\x34\x63\x0c\x0e\x47\x59\ +\x24\xe8\x6f\xcf\xaa\xa3\x62\x20\xbd\xe2\x7b\xd3\x99\xfa\x4f\xcd\ +\x5d\xb6\x7c\xde\x31\xc7\x2f\xa2\x79\x52\x1b\xa9\xa4\x8d\x0a\x8b\ +\xe4\xb3\x07\x27\xf6\xed\xda\xbe\x78\xc7\xab\x1b\x3f\xba\xe2\x48\ +\x61\xed\xda\x2d\xc1\x17\x07\x5c\xb3\xe5\x7f\xad\x02\x15\xa0\x3a\ +\x69\xf1\xfe\x25\xcd\xb4\xd4\x84\xe4\x35\x18\xa3\x53\xda\xcf\xff\ +\xe0\xb8\x65\x67\x5e\xbe\xec\xdd\xd7\xd3\xd8\x35\x13\x8c\x82\xa0\ +\x08\xe1\x08\xca\xa5\xb9\xb3\x9d\x69\xc7\x1d\xcb\xc9\x67\x9c\x52\ +\x73\xea\x86\x97\x2e\x5d\xf4\xd0\xda\x55\xff\xf4\xe4\xee\xeb\x37\ +\x1d\x94\x77\x33\xd6\xa8\xb1\x60\x34\x37\xc7\x57\x57\xee\x36\x95\ +\x60\xab\x0b\x7b\x03\x28\x9a\x3f\x61\x06\x92\x8e\xe0\xfa\x53\x27\ +\x70\xd6\x54\x17\xa9\x01\x63\x1c\x2b\x74\x7f\xba\x7c\xcd\xb5\x97\ +\x9f\xfb\x99\xdb\x69\xec\x9a\x0b\xa1\x05\xa1\x00\x65\x83\xb1\x40\ +\x01\xa1\x06\x37\x40\x58\x0e\xc7\x9c\xb4\x98\x2b\xae\xbf\x3a\x73\ +\xd3\x45\x33\xef\x3a\xbe\xc5\xbe\x86\xd8\x3a\x80\x9f\x34\xc0\xa6\ +\x0e\x78\x70\x06\xdc\xdc\x11\x13\x3f\x6f\xe8\x86\x17\x3b\x60\xa2\ +\x00\xe7\xbf\x2a\x60\xcd\xfc\x1a\x16\xb6\xdb\xa0\x7c\x40\x80\x5f\ +\xb8\x79\xd1\xea\x4b\x2f\x38\x71\xcd\x75\xa0\x0c\x48\x03\x4e\x0d\ +\xd8\x29\xb0\x1c\xc0\x06\x61\x01\x56\xe4\xb5\x01\xd7\x23\x33\xb1\ +\x85\xb3\xaf\x5c\xc3\x27\xce\x6e\xff\xd6\xc4\x6a\x96\x02\x5c\x0d\ +\x2c\x4f\xc2\xd4\x04\xa0\x8e\xc6\x06\xa6\x3a\xd0\x28\x60\xba\x80\ +\xe4\xdb\x15\xd0\x51\x6f\xb3\xaa\x27\x81\x96\x01\x06\x01\xca\x9f\ +\xd1\xd1\xdd\x7d\xe3\x89\x17\x7f\x00\xfc\x12\xa8\x10\x8c\x02\x1d\ +\x80\x56\x60\x34\x60\xc6\x12\x9b\xf4\x7d\x6a\x9a\x5a\x58\xf1\xae\ +\x95\x55\x6b\xe6\x25\xff\x0e\x48\x6a\xa0\x64\x20\x18\xa7\x45\x34\ +\x10\x98\xc8\xdb\x40\x95\x78\x9b\x02\x56\xcd\x48\x30\xa1\x4a\xe3\ +\x08\x09\x40\x4a\x04\x1f\x9e\x77\xc6\x45\x29\x2b\x9d\x86\xd0\x8d\ +\xaa\x22\x4b\x20\xf3\xa0\x4a\xa0\x7d\xd0\x21\x68\x09\x46\x45\xa0\ +\x30\x46\x63\x80\xd0\xf7\x98\xd0\x33\x9b\xf3\x96\x75\x9d\xd6\x56\ +\xcd\x3b\x0c\x80\x88\x33\x16\xd0\x66\x8a\x9c\xa2\x0b\x9c\x3f\xc2\ +\x39\xa6\xc4\x89\x42\x51\x8f\x00\x9f\x38\x1d\x6f\x67\x88\xd3\x09\ +\x58\xdc\x0e\x42\x07\x54\x59\x60\x94\x4e\x36\x36\x37\xad\x9e\x34\ +\x73\x1e\xb8\x39\x10\x29\x40\x44\x41\x0a\x0b\x8c\x8e\x2a\xa1\xfc\ +\xc8\x47\x42\xca\x18\xa3\xcb\x68\xad\xc0\x72\xe8\x99\xd3\xc3\xb1\ +\x93\xb7\xaf\xd4\x3b\x79\x82\x23\x5c\x7a\xc4\xe7\xea\xd4\xc4\xe9\ +\x4b\x52\x33\x7b\xea\xed\xa6\x26\x4c\x18\x22\xfb\xfa\x08\xb6\x6e\ +\xeb\x1b\xe8\x3f\xf2\xab\xd9\x9a\x3b\xb6\xc1\x6f\x94\x78\x1b\x02\ +\xda\x33\x82\x8e\x8c\xc2\x11\x60\x59\xa0\x64\xd8\xd1\x34\x79\x72\ +\x97\x53\x9d\x86\xb0\x04\x96\x8e\x82\xb7\x82\xb8\x68\x3a\x0e\xd8\ +\x07\xe5\x95\x7d\x44\x18\x09\xd0\x23\x18\x53\x6e\x47\xab\xb5\x89\ +\xf3\xea\x59\xd9\x0d\x4f\x56\x5d\x74\xf1\x8a\xda\x6b\x3e\x40\xf5\ +\x09\xf3\xb1\x33\x35\x08\xad\x41\x86\x18\xaf\x44\xd8\xdf\x37\x39\ +\xf9\xec\xb3\x57\xdc\x71\xe7\xbd\x57\xfc\x64\xe3\xe6\xbb\xbe\x66\ +\xf8\x54\x09\xb2\x7f\x94\x80\x84\x65\xa8\xb2\x24\xa9\x78\x0e\x95\ +\xa0\xa9\xb6\x2e\x93\xc4\x04\x20\x03\xb0\x15\x98\x30\x1e\x5c\x01\ +\x98\x58\x40\x10\x21\xa3\x16\xd3\x5a\xc5\x44\xad\xe4\x6a\x9f\xde\ +\x75\x7b\x59\x9d\x6f\x9d\xdf\xf1\xc0\x37\x49\x5f\x7c\x19\x00\xf8\ +\x25\x4c\x18\x60\x64\xfc\x7e\x15\x92\x98\x38\x81\x86\xcb\x2e\xa2\ +\xe1\xec\x77\xf2\x89\x3b\xee\xbc\xaa\xfb\x7b\x3f\x9c\xff\xc1\x42\ +\x78\xe1\x20\xec\xf9\x23\x7e\x89\xc1\x12\xa6\xec\x45\xf4\x6c\x04\ +\x2a\x0e\xcc\x80\x91\x51\xf6\x85\x5d\x11\x60\x14\x95\x2a\xf8\x18\ +\x15\xa0\x94\x44\x69\x89\x36\x1a\x6d\x19\xde\x7c\x6e\x0b\x0d\x8f\ +\xef\xa5\xeb\xce\x9f\x92\x58\xb6\x1c\x42\x2f\x7a\x87\x65\x23\x46\ +\x30\x23\x20\xac\x08\x19\xa2\x3d\xb7\x7c\x9f\xfc\xc4\xc7\xb8\xa8\ +\xa5\x69\x41\x70\xdb\x37\x7e\xf6\xbe\xc3\xa5\x33\x25\x0c\xfd\xde\ +\x21\x2e\xc9\x11\x34\x84\x02\x82\x51\x2c\x0e\x16\x0b\xd9\x12\xa1\ +\x1b\x0f\x6e\x11\xc2\x42\x84\x8c\xa8\x9c\x4b\x68\x15\x20\x75\x14\ +\xbc\x52\x0a\xd0\xf4\xf5\x1f\xc2\x79\x64\x3d\xdd\x9f\xfd\x3c\x89\ +\x65\x27\x63\x4a\x39\x00\xf8\x8f\xa0\x05\x47\x1b\x18\xa9\xd0\x85\ +\x02\x66\xcd\xa5\xac\x79\xff\x7b\x16\x5d\x53\x9f\xb8\xf9\x0f\x6e\ +\xa1\xbe\x61\xe8\x2f\x81\xb6\x40\x02\xca\xa6\x2f\x77\x78\xff\x4e\ +\x37\x3f\x18\x65\x54\xba\x18\x59\x8a\x03\x8f\x18\x79\x2e\xdf\x4b\ +\x19\x20\xcb\xd9\x0f\xd1\x4a\xa2\xb5\xa4\x14\x96\x18\x78\xfa\x55\ +\xa6\xcd\x59\x42\x72\xf5\x6a\xcc\xd0\x10\x68\x0d\x4a\x81\xf4\x41\ +\x49\x8c\xd6\x95\x55\x6c\x2a\x80\x01\x6d\xd0\x9e\x0f\x7f\x71\x09\ +\x1f\x5f\x3a\xef\xda\x09\x16\xc7\xfe\x5e\x01\x81\x82\x75\x7b\xc0\ +\x76\x20\x69\xc0\x02\x35\x3c\x94\x7b\xe8\xc8\xee\xcd\x18\x21\x90\ +\x32\x8c\x02\x95\x3e\x15\x82\xe8\x5e\x85\x28\x39\x82\x92\xe5\xb3\ +\x0c\x4a\x1c\x38\x70\x80\x9a\xbd\x59\x1a\xce\xbb\x00\xa4\x02\x15\ +\x46\x41\xcb\x00\x13\xfa\x65\xa2\x3b\x15\x11\xcf\x0c\xc6\x50\xa9\ +\x44\x48\xd8\xd8\xc4\x8c\xb3\x57\xd4\xac\x6a\xae\xbe\xe4\x0f\x7e\ +\x0b\x3d\xbe\x1d\xde\x35\x0b\x7e\xd6\xea\x70\xd9\x80\xc4\xd6\x7c\ +\xff\x8d\x97\x9f\xb8\xa1\xe9\x98\xb9\x8d\x42\x58\x00\x08\x2a\x65\ +\x37\x98\x78\x65\x1a\xb4\x51\x28\x29\x09\xfc\x22\x81\x3b\x4c\x76\ +\xef\x7e\xba\x1b\x5a\x10\xd3\xa6\x63\xbc\x62\x3c\x3b\x80\x56\x20\ +\x44\xe5\xac\x64\x3c\x47\x2a\xc2\xa8\xf2\xfb\x0c\x26\x2a\x4c\x18\ +\xc2\x8c\x59\x9c\x3e\xbd\xf5\xd4\x7f\x3e\xb4\xdb\x06\xd4\xb8\x02\ +\xf6\xe7\xe0\x76\xdf\xe1\xa9\x09\x09\x1e\xaf\xb7\xf8\xf4\x81\xb0\ +\xaf\xab\x77\xdf\xc7\x76\xae\xfb\x97\x7b\xba\x4f\xbb\xc0\xd1\x32\ +\x1c\xdb\xab\x26\x12\xa0\x95\x22\x0c\x3d\x02\xaf\x88\xef\x16\xf0\ +\xfc\x3c\xde\x91\x01\x32\x6d\xb3\x20\x99\x82\x30\x88\xfa\xde\xe8\ +\x68\x47\xf3\x96\x80\x78\x15\x2b\x89\x51\x91\x47\xeb\xf8\xbd\x71\ +\x82\xc2\x00\x6a\x33\xf4\x74\xb5\x76\xf2\xc2\xee\x7a\x20\x3b\xae\ +\x00\x6c\x78\x6a\x6e\x0a\xb4\xe2\x70\x52\x70\xe3\x74\x8b\xb6\x92\ +\xaa\xbe\xb4\x77\xbd\xba\xea\x69\xed\xb4\x2f\x7c\x07\x42\xd8\x71\ +\xa9\x41\x6b\x55\xee\x7b\x19\xfa\x84\xbe\x4b\x30\x8a\x57\xc0\x0b\ +\x8a\xf8\xb9\x2c\xa9\x29\xb5\x71\x6b\x18\xb0\x34\xc2\x68\x88\x2b\ +\x09\x44\x82\xb4\xae\x04\xaf\xa2\x36\x8a\x2a\x1b\x41\x18\x82\xd1\ +\xa4\x33\x35\xd5\x40\x7a\xfc\x16\xaa\x13\x70\x71\x15\xa8\x68\x00\ +\x50\x32\x85\xd1\xdf\x5b\xb2\xf8\xf2\xf7\xe5\xa8\x62\xdd\xd6\x1d\ +\xcc\x7b\xfa\x11\x9a\xa7\xce\xa0\x66\x42\x0b\xda\x18\xd4\x5b\xbd\ +\x1f\x06\x91\x88\xc0\xc3\x2f\xe4\x18\xea\xdf\xc3\xc1\x52\x09\xa9\ +\x03\x52\x32\x8c\x33\x6f\x63\x74\xbc\x2e\x11\x54\x06\xf7\x3f\xcf\ +\x80\x41\x47\x44\x22\x94\x82\xc0\x83\x72\x72\x82\x12\x10\x8c\x2f\ +\xe0\x43\x29\x48\x38\x40\xf9\x65\x29\x5b\x24\xee\xff\xc6\xca\xaf\ +\x9f\x7f\x5c\xcb\x2c\xfe\xfe\xa9\xaf\xd2\x73\xd9\x97\xa8\x1f\xee\ +\xe5\xb5\x5f\xde\x4e\x7a\xe7\x26\x32\x0d\x8d\x88\xfa\x0c\x28\x13\ +\x0d\xb3\x57\xc0\x3d\x70\x90\x92\x63\xf0\x4f\x9a\x4e\xbe\xa7\x83\ +\xa1\x47\xb2\xd4\xb8\x25\x4c\x32\x89\xd0\xaa\xb2\x3a\xe3\xf8\xe3\ +\x6d\x33\x26\xeb\xda\xc4\x5e\x2b\xf0\xdd\x48\x40\x21\xc7\xf6\x03\ +\xd9\xbd\xc0\xd0\xf8\x02\xac\x2a\x90\x32\x7a\x0a\xf5\x77\xbe\xb5\ +\xfa\x1f\xce\xff\xc8\x09\x1f\xe4\x6b\xcf\xde\xca\xc7\x4e\xb9\x81\ +\x62\x61\x80\x96\x19\x2b\xe8\x9b\x56\xcb\x83\xf7\xff\x94\xe3\x1e\ +\x7f\x85\xb9\xbb\x5e\x46\x77\x26\xb0\x0a\x9a\xd2\x21\xcd\xe3\xe7\ +\x9e\x43\xd5\x85\x2d\x9c\x34\xaf\x83\x52\xb6\x9f\x6d\xb9\x5e\xda\ +\x0f\xf7\xa1\xa7\x4c\x47\xc8\x10\x61\x0c\x63\x8d\x38\x70\x46\x30\ +\x11\x18\xb4\xd6\xe0\x7b\xe0\x95\x30\x81\x07\x07\x7b\x79\x72\xd7\ +\xc1\xe7\x81\x70\x7c\x01\x45\x0b\xaa\x01\xd7\xbd\xf2\x3d\x27\x5d\ +\x79\xf5\x47\x16\x5e\xcb\x63\x3b\x1e\x66\x51\xe7\x49\x9c\x36\x6d\ +\x05\x1b\xfa\x37\xb2\x6f\xe0\x0d\xbc\x50\xb2\xec\xe4\x4b\x49\xb7\ +\x9d\x46\xcf\x59\x37\xd0\xb9\xcd\x87\x01\x58\x7b\xc6\x19\x2c\xbe\ +\xea\x7a\x0e\x95\x5e\xe3\xa0\xbf\x99\xb6\xc2\x02\xaa\x4f\x58\x88\ +\xdc\xf4\x7c\x24\x40\xeb\xca\x0e\x13\x44\x66\x88\x05\x50\xf1\x5a\ +\x46\xc1\xbb\x45\x8c\x57\x22\xe5\xe6\xd9\xff\xdb\xcd\xc3\x6b\xf7\ +\x66\x1f\xf9\xfd\x6b\x54\x00\xda\x34\xb5\xd4\x4f\xfb\xca\x5f\x2d\ +\xff\x30\x6f\xe4\xb7\xb0\x3f\xbf\x87\x77\xcf\xbf\x1a\x5f\x97\x58\ +\xd0\x76\x3c\xbb\xb3\x6f\x52\x0a\x3c\x16\x34\x4d\xc5\xef\x3a\x89\ +\x81\x1b\xb7\xd2\x71\xeb\xed\x1c\xac\x6b\xa4\xe6\x2b\x7f\xc3\xb1\ +\x2d\xd3\xd8\x33\x6c\x31\x74\xa4\x89\x15\xad\x17\x12\xac\xd2\x1c\ +\xbe\xfd\x46\x26\x6d\x7f\x15\xaf\x67\x3e\x22\xf0\x00\x10\x46\x10\ +\x67\x3f\xf2\x51\x09\x30\x32\x04\xdf\x1d\xa5\x1c\xbc\x90\x01\xce\ +\xce\x4d\x7c\xf9\xc9\x97\xee\x1a\x0a\xf5\xc6\xb6\x45\xd7\xa1\xa5\ +\xe2\xe0\xc6\xef\x8c\xb3\x85\x3c\x7d\xcd\xbb\x4f\x3f\xbf\xb5\xa5\ +\xa1\x9e\x27\x5f\xff\x15\x73\xda\xe6\xe0\xaa\x3c\x68\x41\xc2\x4e\ +\xd1\xde\x30\x89\xf6\xfa\x49\x38\x56\x12\x84\x4d\xe9\xb3\x5f\xe4\ +\xb5\x7b\x1f\x46\x5f\x71\x2d\x4b\x4e\x38\x0d\xc7\x84\x74\x36\xb5\ +\x22\x8c\x8d\xb2\x02\xd2\x29\x58\xbf\xfc\x02\x82\x07\x7e\x4c\x67\ +\xa6\x0e\xaf\xb9\x13\x64\x80\x40\xc4\x23\x60\xe2\x5f\x67\x59\xbe\ +\x27\xf0\x21\xf0\x30\xbe\x07\x2a\xa4\x7a\xdf\xeb\x3c\xf4\xec\xde\ +\xed\x3f\xd8\x67\x6e\x99\xfa\xce\x5b\xcc\xe4\x25\x37\x11\x7a\xc1\ +\x88\x80\xef\x02\x66\xac\x00\x8c\x49\xd7\xa4\x9b\xae\x58\x31\x7b\ +\x21\x6f\x0c\xee\xc2\xd5\x05\x26\xd6\x35\x31\xe4\x1f\x21\x61\xa5\ +\x48\x98\x24\x9e\x70\x49\x08\x07\x4b\x3b\xd8\xc2\x26\x59\x9b\xc6\ +\xb9\xef\x47\xd4\x76\x8d\xb6\x48\x01\x4f\x4b\xb4\x51\x68\xa1\x71\ +\x84\xcb\xba\x0d\x47\xb8\x73\xfd\x09\x2c\xec\xe9\xe2\xca\x87\x6f\ +\xa3\x69\xd9\x71\x84\xd3\x66\x63\x54\x1c\xb4\x31\xa3\x3e\x22\x0c\ +\xa3\x9d\xaf\x43\x2c\xb7\x48\x7a\xdb\xab\x6c\x1c\x68\xe3\xd1\x95\ +\xf7\x4e\x99\xdd\x99\xff\x42\x6d\x63\xd7\x67\x54\x71\xc0\x53\x7e\ +\x00\x08\x52\x75\xed\xf8\xc3\xbd\x15\x01\xb8\xfa\x94\x59\xd3\xa6\ +\xcd\x6a\x6e\xa8\x61\xe7\xa1\xad\x34\x65\x26\x50\x94\x79\x2c\x6c\ +\x12\xc6\xc7\xd1\x09\x6c\x91\x1c\x21\x0a\xde\x1a\x45\xe6\x68\x5a\ +\x3a\x03\x23\x25\x43\xc1\x00\xf1\x08\xe2\x38\x3e\x0f\xfe\xf2\x08\ +\x8f\xbd\x72\x0c\x57\x9e\x33\x91\xb5\x4f\x48\x7e\xb5\xf0\x33\xac\ +\xc9\xfe\x18\x67\xdb\x23\x24\x66\x76\x13\x36\x34\xa3\x84\x83\xd1\ +\x0a\xa4\x2c\xb7\x4b\xd2\x1d\xc6\xee\xef\xc5\xdf\x7f\x98\x8d\xc7\ +\x9c\xc1\x2d\x85\x33\x58\xd2\x6c\x57\x2d\xbe\xb8\xeb\xfa\xbb\x1e\ +\xcd\xce\x0d\x95\xb9\x44\x58\x4e\x16\xc0\x72\x6a\x48\x66\x26\x57\ +\x04\xe0\x5b\x2b\x7b\x26\xb5\x59\x45\x95\x23\x17\x0c\x30\xa9\xae\ +\x8d\x7c\x98\xc5\x11\x29\x12\x56\x12\x47\x24\xb0\x47\xb1\x1c\x6c\ +\x46\x05\x58\x08\x46\x28\x0e\xc7\xc3\x38\x8a\x21\x99\x0c\x59\xfb\ +\xd4\x61\x1e\x7b\x7e\x0e\xb7\x5f\x37\x99\x2d\x5b\x0e\x53\x4f\x81\ +\x96\xf9\x3d\x0c\xce\xfa\x3c\x43\xeb\x9e\x27\xfb\x8b\x27\x69\x56\ +\xaf\x33\xb1\xce\x50\x95\x72\x40\x2b\x8a\xc5\x80\x1d\x83\x09\x0a\ +\x9d\xc7\x71\xf0\xec\x1b\xd8\xd3\x38\x8d\xa5\x2d\x21\x7d\xbf\xdd\ +\xc6\xb9\x27\xa5\xe9\xbe\xbc\xf6\xf4\x9b\xee\x1c\x7a\x70\x78\x68\ +\xef\x6a\x30\xae\x9b\xdd\x46\xf7\x39\x77\x55\x04\xa0\x13\xc7\x37\ +\xd5\x57\x73\xd8\xed\xc7\xb2\x21\x34\x1e\x52\x86\xe5\xe0\x13\x3a\ +\x85\x63\x25\x70\xe2\xf6\xb1\x88\x2b\x20\x44\x65\xa5\x18\x83\x93\ +\x84\xdf\x6d\x3e\xc4\x7d\xbf\x9c\xc9\xd7\xae\x9b\x42\x8d\x13\xb0\ +\x63\xd7\x10\x37\x7d\xa4\x9b\x0d\x3b\x34\xf9\x41\x8b\xfe\xee\xa5\ +\x3c\xbb\x6c\x29\x0d\x89\xc3\x6c\xd8\xf4\x3a\x49\xaf\x80\xc1\x22\ +\x9f\xa9\x67\xf6\xe2\xd9\x50\x53\x4f\xeb\x44\x90\x7d\x9a\xe5\xc7\ +\x26\xa8\x9a\x33\x9d\xe7\xd6\xf5\xf2\xe1\xcb\x8f\xe1\x93\x97\x34\ +\x2e\xff\xcb\x5b\x9e\xfc\x36\x70\x35\xd8\xf4\xbd\xfc\x4d\xe0\x7d\ +\xc4\x02\x9c\xb6\x64\xd2\x90\xf5\x0e\xe1\x38\xd5\x14\xe4\x50\x39\ +\xe3\x09\x9d\x2c\x0f\x6d\xd4\x42\xce\x28\x51\xf0\x58\x08\x31\x02\ +\x91\x09\x4b\x10\x0e\xe7\xb8\xfb\x81\x06\xce\x7f\xc7\x0c\x66\x4f\ +\x85\x1f\xfd\xfc\x10\x67\xbc\xb3\x9d\xfa\x6a\xc1\xe2\x99\x82\xad\ +\x7b\x15\xa1\x0f\xab\xe6\xdb\x54\x57\x4f\x64\x42\xd7\x44\x7e\xbd\ +\xcb\x43\x1b\xc3\xaa\xe9\x69\x16\xb5\xc2\x9b\x87\xe0\x77\x07\x34\ +\x4b\x3b\x0c\x0b\xa6\x41\xd2\xa9\xa6\xaf\x3f\xc3\x33\x1b\x06\xb9\ +\x70\x59\x23\xcf\x5d\xf8\xae\xab\xee\xd8\xbc\xfa\xd1\xa0\xff\xd1\ +\x07\x4a\x87\x36\x55\x3e\xa7\x91\xb6\xe3\x4a\x97\xa2\x1a\x46\x8b\ +\x90\x82\xcc\x51\x92\xc3\xe5\xe7\xa2\x1c\x25\x47\x4c\x59\x5c\x61\ +\xf4\x1c\xf9\x32\x1e\x59\x7e\xbd\x6e\x08\x25\x67\xb3\xea\xb4\x14\ +\x2f\x6e\x73\xb1\x53\x09\xda\x3b\xaa\x19\xf2\xc0\x49\xc0\x9c\x2e\ +\x9b\x69\xcd\x82\x99\x6d\x30\xa5\x01\xce\x3d\x06\xae\x5c\x50\xc5\ +\x7b\x17\xa4\x39\xaf\x1b\x3a\xea\x61\xfe\x14\xb8\x68\x0e\x9c\x3c\ +\xdb\x06\x01\x85\x00\x4e\x3c\x61\x22\xdb\xf6\xba\x1c\x18\x36\x5c\ +\x7a\x66\x0d\xdd\x4b\x3f\x7e\x2b\x56\x55\xcd\xd8\x2d\xe4\x59\x85\ +\x23\xb9\x41\xa6\x08\x07\x4f\x17\x51\x26\x8c\x33\x1f\xf5\xbf\x53\ +\xee\x7d\x07\x4b\x8c\x62\x11\x57\x00\x00\xcb\xb2\x08\x73\xc3\x3c\ +\xfb\x5c\x17\x67\xbe\x63\x32\xca\x82\xcd\xbb\x8a\x2c\x9c\xd3\xc4\ +\x60\x09\x6c\x20\x50\x90\xb4\x61\x52\x8b\x85\x30\x60\x09\x48\x3a\ +\xb0\xb0\x0d\x0c\x90\xb4\x40\x19\x68\x4c\x40\x43\x8d\xc5\xb0\x0f\ +\xa1\x8a\xb0\x1c\x41\x7b\x47\x86\x97\xb6\x16\x98\x3f\x37\xc3\xa9\ +\xa7\x2d\xea\xd9\xb1\x6e\xf9\x25\xe1\xa1\xc7\xee\xae\x54\x20\xb0\ +\xb7\xee\xeb\x1d\x42\x0a\x97\x4a\xe6\x73\x11\x2a\xca\x72\x41\x8d\ +\x9e\x87\xa2\x2a\x94\xef\xa2\xb3\x6b\x06\xd9\xbe\x63\x88\x42\x6e\ +\x2a\xb3\x66\x55\xb1\xab\x57\x96\xb3\x9f\xae\x71\x18\x76\xa1\x10\ +\x44\xe4\x7d\xca\x82\x72\x3e\x0c\xfb\x91\x77\x25\x78\xb2\x72\x37\ +\xe4\x42\xd6\x85\xbc\x1f\x65\xbf\x18\x42\xb6\x08\x6d\xed\xb5\x1c\ +\x18\x0c\x19\x28\xc2\xfc\x79\x19\x1a\x3b\xcf\x7a\x0f\x20\x2a\x15\ +\x30\xf6\xa3\x3b\xb6\x14\xdf\x3b\xbc\xb2\x40\xca\x56\xd8\x3a\x11\ +\x55\x40\x8c\xa0\x9d\xa3\xfa\x3f\xde\x42\x20\x20\x61\x49\xb6\xbe\ +\x56\xc5\x84\xc6\x56\x52\x19\xd8\xb5\xd3\xa7\xb5\xb9\x9a\x9c\x07\ +\x8e\x80\x84\x02\xc7\x06\xc7\x8a\x9e\x6d\x2b\xaa\x80\x00\xc4\x98\ +\xcf\x0a\xd0\x06\xd4\x28\x1a\xa4\x01\xa9\x20\xd4\x60\x84\x20\x5d\ +\x9b\xe2\x8d\xbe\x90\x96\x49\x09\x5a\x3b\x8f\x3b\xf1\xd0\xc6\xba\ +\x2e\x60\x77\x24\xc0\x72\x7e\x91\x7d\x53\xff\x6e\xfd\xf3\x83\xf3\ +\x16\x9f\x1e\xe2\xb9\x09\x1c\x9d\x88\x04\x88\x31\x02\x2a\x2b\x14\ +\x81\xb0\x2c\x2c\x5d\xa2\x77\x77\x0f\x1d\x2d\x19\x86\xbd\x28\x6b\ +\x89\x74\xa2\x7c\x4e\xda\x90\xb0\xc0\x89\xb1\xad\x8a\x00\x8b\xca\ +\x97\x35\x54\x04\xe8\xb7\x04\xc4\x84\x3a\x12\x55\x5b\x57\x45\xdf\ +\x40\xc0\x94\xce\x04\x13\x26\xb6\x34\x88\x54\xc7\xbc\x8a\x00\x43\ +\x09\xec\x4f\x3e\xf7\x90\xfb\x78\xba\x4e\x8b\x99\x27\x24\xf0\x82\ +\x04\x42\x46\xdb\xc7\xb1\x1c\x2c\xa2\x1f\x31\x51\x9e\x01\x01\x8c\ +\x78\x4b\xa0\xc2\x22\xb9\x81\x24\x3d\xd3\x13\x1c\x1e\x06\x2b\x99\ +\xc0\x53\x10\x8c\xa2\x19\x2b\x40\x94\x89\x2a\x20\xa0\x52\x80\xa3\ +\x05\x28\x53\x11\x10\x2a\x30\x8e\x8d\xaf\x45\xb9\xd5\xd2\xb5\x69\ +\x2c\xa7\x69\xfa\xd8\x6f\x21\x21\x9e\x90\x45\x71\xd5\xbf\xdd\x21\ +\xbf\xdd\xbf\x92\x9a\x79\xa7\x4a\xea\x9a\x3c\x8c\x65\x23\xb5\x8d\ +\x18\xc5\xd8\x58\xfa\xad\xf6\x11\x58\x58\xc8\xb0\x80\x57\x02\x69\ +\x04\x43\xae\xa1\x2a\xe1\x30\xec\xc7\xed\x63\x8d\x60\xc7\xc1\x8f\ +\x27\x20\xc6\x18\xd0\x8c\x11\x70\x54\x15\x8c\xed\x30\xe8\x46\x6b\ +\x1b\xe3\xd4\x55\x04\x38\x16\x84\x80\x25\xee\xd1\x6f\x1c\x7a\x75\ +\xe3\x0f\xd3\xb7\xbc\xf6\x54\xdd\x39\x1d\x73\x13\xce\xe4\x19\x8a\ +\x09\x6d\x8a\x9a\x7a\x48\xa5\xc1\x49\x08\x6c\x5b\x20\x46\x05\xd8\ +\x20\x75\x09\x29\x5d\x8a\x25\x49\x49\x0a\xec\x84\xa0\xe0\xc7\x99\ +\xb7\x21\xa1\xc6\x0a\xb0\xc4\x98\x19\x38\x5a\x80\x8e\x44\xc8\x4a\ +\x2b\x11\xc6\x5e\xdb\x36\x39\x17\x4a\x05\x1f\xa3\x24\x95\x2d\xd4\ +\x97\xab\xbc\xcd\xf7\x37\xb1\x7b\xf7\x05\xfe\xba\x6d\x8b\x77\xdd\ +\xb3\xe7\x73\xcf\xdd\x7a\x78\xed\xcf\x3f\x97\x7f\xfd\xfe\xcf\x7a\ +\xd9\xfb\xfe\x3a\xf4\xee\xbb\x39\x34\xf7\x7d\x21\xe4\xbe\x2f\x05\ +\xdc\xff\xe5\x80\x07\xbf\x2a\xd9\xbf\x7b\x90\xec\x91\x22\xa1\x80\ +\x92\x84\x42\x18\x51\x0c\xa0\x30\x3e\xe4\xdf\xc2\x8f\x7c\xc1\x8f\ +\xef\xc7\xf9\x5b\x5f\x47\xc9\xc9\xf6\x0f\x83\x2e\x0e\x55\x2a\xb0\ +\xb1\x17\x4e\xcd\x80\x95\xac\x08\x09\xbc\x8d\x65\x72\x40\x1f\x19\ +\x89\xd5\x2c\x85\xdd\x08\x22\x83\x65\x57\x23\x44\x02\x63\x40\x68\ +\xdf\xc9\x0c\x9d\xde\xbb\xad\xff\xc6\xd9\xe1\x14\x14\x95\xac\xc7\ +\xfd\x8f\x3d\x4e\x05\xc6\xce\x40\x5c\x85\x98\xb8\x85\x50\x95\x0a\ +\xa0\x04\x64\x07\x02\x0e\xec\xda\x2b\x8d\xec\xdd\x3e\x76\x06\x9e\ +\xdf\x0e\x0b\x7a\x2a\x02\xc6\x92\x07\x9d\xc7\xe8\xdd\x00\x28\xc6\ +\x58\x75\xed\xd9\xaf\xf4\x6d\x7e\xe3\x43\xfb\x77\xce\xac\x6b\xeb\ +\x69\xc0\x0f\x38\x7a\xfb\x1c\xb5\x42\xc7\x0a\x20\xee\x7f\x13\x05\ +\x5f\x59\xa7\x15\x10\x69\xd8\xf9\x62\x1f\xb9\xde\xf5\xaf\x1b\x75\ +\x78\x53\xa5\x85\x00\xa4\x82\xf5\xdb\xc0\xf5\x79\xfb\x26\x06\x82\ +\xbc\xfb\x8f\x2f\xdf\xfb\x02\x43\x79\x8d\x2b\xa2\x92\xc7\x8c\x6d\ +\x97\xa3\x5a\x28\x3e\x8f\xdb\x3e\x51\x3b\xfa\x09\xd8\xf3\xda\x30\ +\x9b\x1e\xde\x80\x2c\xfe\xeb\xdd\x60\xfa\xc7\x56\x20\x4e\x01\xb9\ +\x02\x6f\xdf\x0c\x96\xc5\x97\xfb\x5f\x7d\x73\xd1\x33\xb7\x3d\xbe\ +\x72\xe1\xfb\x4f\xa5\xa1\xb3\x96\x50\x82\x90\x60\x13\xb7\xcf\x38\ +\x43\x1c\xb7\x4f\xbc\x4a\x2b\x28\x00\x27\xf2\xfb\x5f\x3c\xc8\x2b\ +\xdf\x7f\x81\x7c\xef\x3d\xf7\x6b\xb9\xf9\x2e\x62\x73\xf8\x53\x4d\ +\x64\x40\x38\x00\xae\x9d\xb0\x2e\xe8\x7b\x69\xe7\x6d\xd9\x1d\xfd\ +\x1f\x9c\x76\xfa\xf1\x76\xe7\x92\xe9\xd4\x75\x34\x90\xac\x16\xd8\ +\x0e\x58\x95\xd6\x89\x01\x43\xc5\x0c\xa0\x63\x31\x32\x04\x37\x17\ +\x92\xdd\x35\xc0\x9b\x4f\xef\x64\xdf\xf3\xaf\xb8\xd2\x7b\xe4\x4e\ +\xcc\x33\x5f\x02\xb2\xff\x7d\x02\x8c\x87\x91\x03\x40\x0a\xa0\x64\ +\x27\xed\x8f\x7a\x43\xc5\x3b\xb7\xdc\xf7\xdd\xab\xb7\x3e\xd4\x79\ +\x56\xa6\xad\xab\x2b\xd3\xde\x66\xd7\xb6\x36\x50\xd5\x58\x43\xb2\ +\x26\x85\x9d\xb2\xb1\x13\x4e\xa5\x02\x1a\x54\x10\x22\x7d\x89\x9f\ +\xf7\x70\x07\x0a\xe4\x0f\x0c\x90\xef\xdd\x1f\x16\x0f\xed\x7a\x13\ +\x36\x3d\x03\x2f\xff\x04\x86\x46\x3c\x0a\xe0\xbf\x4f\x00\x21\x85\ +\x03\x9f\x26\x3d\xe1\x5b\xc4\x86\x65\x5b\xeb\x8d\xfc\xcd\x7a\x1d\ +\xee\xab\xc9\xed\xcd\x1c\x9b\xdb\xdb\x34\x17\x9a\xa6\x43\x7a\x32\ +\x64\x1a\xa1\xaa\x1a\x2c\x07\xec\x2a\x00\x90\x1e\x68\x09\xa5\x12\ +\x14\x73\x30\x7c\x00\x06\x77\xc3\xe1\xed\x90\xdd\x0a\x1c\x64\x1c\ +\xfb\xff\xff\x56\xf9\xbf\xb6\x7f\x07\x3d\x3b\xcc\xf1\xa3\xb2\xb6\ +\x47\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x05\x0e\ +\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\x04\xd5\x49\x44\x41\x54\x68\x81\xed\x98\x4f\x4c\x5c\x55\ +\x14\xc6\x3f\xc5\x44\x93\x66\x6c\x94\x56\x29\x35\x2d\x09\x63\x2c\ +\x01\x69\x29\x43\x45\xde\xd0\xa1\x20\x14\xb0\xc8\x20\x4a\x5b\xb0\ +\xe5\x4f\x05\x06\x34\x2d\xcd\xc0\x4c\x67\xf8\x2b\x28\x1b\xc5\x26\ +\x6d\x44\x68\x69\x53\x18\xc0\x3e\xe9\xc4\x85\x49\x37\x1a\x6d\x17\ +\x8d\x7f\x20\x94\xa8\x69\xdc\x19\xdd\x18\x17\x24\xa6\xba\x70\xd3\ +\x5c\xcf\x6d\xd2\xc2\x7b\xf6\x9e\xab\x71\x01\xe8\x0c\xf9\x25\x84\ +\xef\xe3\xbc\x77\x72\xbe\x7b\xef\x9b\x07\xc4\x3e\xab\xe0\x93\x08\ +\x64\xd4\x01\x73\x0d\xc0\xac\x8a\x6c\xe0\x34\xa7\x4b\xdc\xc0\xa8\ +\xce\x63\x68\xea\x54\x03\xf3\x39\xc0\x29\xce\xf3\x02\xf0\x35\xdd\ +\x76\xdc\xdd\x06\xb6\x00\x46\x2f\x20\xfa\x18\x3c\x40\x84\xd3\x25\ +\x7b\x01\x53\xe7\x29\x02\xa6\x38\x3d\x48\x14\x03\x93\x9c\xc7\x07\ +\xdc\x8c\x35\xb0\xaa\x1a\x78\xe2\x41\x38\xf7\x38\x30\xc1\x91\xee\ +\x40\x58\xe7\x29\xdc\x80\x9e\xea\x04\x4c\x70\xb8\xd6\xf3\x75\xf2\ +\x1c\x88\xa4\xaf\x43\x88\xf3\x18\xeb\x10\xa1\xdb\xbe\x6f\x69\x02\ +\x0e\x18\x3d\x1e\x88\x5e\x06\xcf\x56\x44\x38\x5d\x12\x34\x60\x8a\ +\x6e\x08\x0e\xef\x36\x4c\x71\x35\x02\x06\x4d\xc0\x89\x49\xce\xd3\ +\xec\xba\x3d\x81\x07\x62\x0d\xac\x70\x03\x4b\x6b\x20\xde\x81\x6d\ +\x2f\xa7\x62\x74\x7f\x1a\x46\x54\x6c\x7f\x1c\x27\x38\x5d\x52\xf5\ +\x34\xba\xa2\x55\x18\xe1\x30\x92\x10\xe2\x6a\x78\x53\x70\x6e\x67\ +\x22\x3a\x38\x4f\xa1\x13\xe7\xe9\xb6\xef\xbf\xdb\x40\x42\x3c\xb2\ +\x6a\x4b\x30\x57\x5f\x8a\x59\x15\x59\x4f\x61\x98\xd3\x25\x75\xc5\ +\x18\xbb\x7a\x0a\xb3\x1c\x79\x19\x18\xe1\x6a\x1c\x7c\x0e\xd7\x77\ +\xa5\xf0\xd7\x7a\x3e\x07\xb3\xd6\x6d\xf4\x31\x8a\x50\x1d\x8d\xa7\ +\x5e\x8d\x67\x3b\x45\x88\xd1\x25\xc1\x83\x14\xa1\x2b\x14\x15\x06\ +\xef\x6e\x8a\x10\x53\x23\x50\x4d\x11\xda\x45\x11\x62\x3c\xcd\xe5\ +\xf6\x35\xb0\xe6\x1b\xd8\x08\x77\xe7\x61\x88\x2e\x06\xd9\x00\xa7\ +\x4b\xa8\x81\x0f\xff\xf8\x04\x82\xa3\xdc\x8d\x29\xae\x86\x7f\x3f\ +\x44\xa1\x0b\xd3\x9c\xe7\xd5\x32\xdb\x22\xce\xcc\x44\x72\x7f\x3f\ +\x4c\x8e\x92\x12\x74\xe6\xe7\xc3\xe4\xa8\xac\x44\x8f\xae\x8e\x61\ +\x20\xc4\xd5\xf0\x78\x30\x53\x53\x83\x4e\xae\x86\xdf\x0f\xd3\x72\ +\x90\x65\x67\xc3\xb8\x75\x8b\x46\x2c\xd4\xd4\xd7\x53\x84\x7a\x69\ +\x84\x0c\xc1\x20\x45\x88\xa9\x21\xf1\x7a\x29\x42\x4c\x8d\x40\x00\ +\x62\x68\x08\x93\x5c\x8d\x85\x05\x5b\x84\x62\x0d\xac\x74\x03\x72\ +\x0d\x98\x26\xce\xce\xcc\xe0\xcc\xbd\xb8\x74\x09\xa3\xe5\xe5\x68\ +\xaf\xaa\xc2\x19\x8e\x43\x87\x10\x52\xd5\xb8\x03\x65\xbc\x83\xab\ +\x51\x51\x81\xf3\xad\xad\x38\x2e\xaf\xa9\xaa\x71\xf2\x24\xce\x59\ +\x0e\x32\x17\x4d\xe0\xda\x02\xc4\x17\xdf\xa8\x69\x0b\xc0\xfc\xf2\ +\x5b\x88\x3b\xdc\xcb\x13\xee\xc3\x47\x5c\x0d\x49\x41\x31\x66\x1a\ +\x5a\x20\x54\xd4\x34\x40\xb4\x87\x11\xe5\x6a\x8c\x9b\xf8\xdd\xb2\ +\x0b\xc9\x06\x7e\xa5\x08\xdd\x14\x6a\xe8\xe6\x22\x9c\x2e\x19\x7c\ +\x17\xa6\xce\x53\x4a\x11\x0a\xf6\x51\xdc\x14\x1c\x0b\x52\x1d\x8a\ +\x10\x57\xe3\xda\x82\x6d\x1b\x5d\xa3\x0d\x2c\x5b\x03\xcf\xc0\xfd\ +\xdd\x0f\x10\x37\x7e\x52\xe3\x0f\xe2\x03\x4e\x97\x74\xbf\x85\xe8\ +\x8d\x1f\xe9\x77\x86\xa2\x52\x5c\x6c\x39\x0e\xa1\x42\xc6\x28\x4c\ +\x7b\xfd\x5f\xea\x2f\xab\x11\xbd\x8c\xdf\x2c\x0d\x24\xef\x84\xb3\ +\x6d\x18\xe3\xfe\xf7\x71\x41\x45\xc9\x11\x04\x39\x5d\x52\x79\x14\ +\x9d\x3a\xcf\x8e\x5c\x04\x9e\x2d\xc3\x05\x15\x59\xc5\x88\xec\x6b\ +\x42\x80\xab\xd1\xf0\x06\x26\x2c\x8b\x38\x95\x22\xf4\x19\x45\xe8\ +\x8a\x50\x53\x4b\x11\xe2\x74\x49\x2b\x45\x48\xe7\x71\x53\x84\xa8\ +\x96\x50\x71\x80\x22\xf4\x1a\x45\x88\xab\x31\x66\x8f\x50\xac\x81\ +\x95\x69\x60\x69\x17\x72\xd2\x41\x76\x62\x1c\x91\x30\x43\x59\x33\ +\x82\x9c\x2e\x79\xf1\x18\xba\x74\x9e\xf4\x5c\x84\x72\x2b\x10\x51\ +\x91\x53\x86\xe9\x72\xcd\xb5\x7c\xef\x60\xd2\xb2\x06\xb6\xd0\x04\ +\xda\x7f\x86\xe8\xf8\x45\xcd\xee\x30\xa6\x38\x5d\x92\x3f\x88\xa8\ +\xce\x53\xf0\x26\x2e\x72\xfa\xeb\xdf\x43\xec\x19\x80\xc9\x79\x0e\ +\x7f\x7a\x7b\x17\x8a\xb3\x34\xd0\x4b\x11\xea\x13\x6a\x3c\x14\x21\ +\x4e\x97\xec\xa5\x08\xe9\x3c\x45\x6f\xd3\x8b\x2d\x46\x0f\x2e\x52\ +\x1d\x8d\xc7\x67\x8f\xd0\x7f\xa2\x81\xa6\x39\xfa\xaa\x36\xaf\xc6\ +\xa0\x67\x21\x4e\x97\xe4\xd1\xb3\x90\xce\xe3\xe9\xc6\x0c\xa7\xd7\ +\xd1\xd7\x4e\x77\x08\x51\xce\xf3\xd2\xb4\xed\x59\xe8\xe1\x1d\x78\ +\x32\x95\x9e\xfe\xd2\xa2\x18\x51\x91\xd0\x88\x76\x4e\x97\x6c\x6e\ +\x43\x48\xe7\x49\x68\x41\x07\xa7\xa7\x4c\x60\x6c\xb3\x0f\x7e\xce\ +\xe3\xb4\x3f\x8d\x3a\x68\x02\x1e\x8a\x90\x47\xa8\xd9\x4a\x11\xe2\ +\x74\x49\x32\x45\x48\xe7\x71\x52\x3c\x38\xdd\x58\xd4\x7b\x5c\xf6\ +\x73\x60\xd5\x35\x40\xe7\xc0\xff\xab\x81\x87\x92\x90\xb4\xe9\x08\ +\x06\x36\x35\xaa\x59\xef\x46\x13\xa7\x4b\xe2\x0b\xd0\x9a\xd8\x84\ +\x7e\x8e\x47\x72\xe1\xb3\xff\xcd\x52\xa7\x16\x83\x8f\x7a\xd0\xa8\ +\xfa\x7f\xe9\xd9\x78\x00\x83\x58\xfe\x56\x02\xf4\x38\x0d\x9a\x00\ +\xfb\x43\x13\xd0\x38\x04\x68\x02\x5a\x0f\x4d\x80\xd5\x17\xff\x86\ +\xc7\x3e\x01\x50\x84\x62\x0d\xac\x68\x03\x19\x70\xe1\x73\xcc\xe1\ +\x2a\xbd\xf5\x55\xe1\xc3\x7b\xac\x2e\xf1\xe3\xac\xd6\xd3\x86\x61\ +\x56\xff\x18\xd7\x71\x54\x73\xad\x51\xdb\xdb\x69\xe4\x20\x8d\x04\ +\xbe\x81\x00\x86\xb4\x37\xd7\x8f\xd3\x5a\x4f\x0f\xcd\x89\xd3\x2f\ +\x63\x1e\x5d\x1a\xcf\x04\xbe\xb2\x1c\x64\x6b\x34\x42\x71\x6b\xbd\ +\x81\x55\xbc\x88\xe9\x20\xfb\x67\x0d\x64\x62\x03\x06\xd0\xc8\x52\ +\x8d\x52\xad\xa7\x11\xfb\xfe\x75\x9d\x1e\x34\xe3\x15\x14\xb3\x9e\ +\x76\xf2\x58\x0e\xb2\x35\xfc\xf9\x13\xd5\x98\xa6\x54\x48\x88\x3c\ +\x6f\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +\x00\x00\x0c\xbd\ +\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\x0c\x84\x49\x44\x41\x54\x78\x5e\xed\x99\x6b\x8c\x5c\xe5\ +\x79\xc7\x7f\xcf\x7b\x2e\x33\x3b\x33\x7b\xb3\xd7\x5e\xbc\xb6\xd7\ +\xc1\x2e\x97\x84\xba\x60\x4c\x20\x41\xad\x43\x44\x40\x54\x90\x96\ +\x4a\x69\xaa\x5e\x48\x3f\xd0\x36\x11\x48\xfd\xe2\xa8\x4a\x2b\xd4\ +\xa4\x5f\x9a\x56\x8d\x69\xa5\x82\x54\x55\xa9\xc4\xa5\x06\xda\x28\ +\x21\x26\x16\x81\x26\x01\x1a\x30\x57\x63\x0a\x76\x6c\xbc\xbb\xe0\ +\xcb\x7a\xbd\x37\xef\x75\xee\xe7\x9c\xf7\x7d\x0a\x47\x87\x1d\x8d\ +\xd8\xc1\x1f\xa8\x54\x45\xf2\x5f\x7a\x75\x34\x1f\x1e\xcd\xf3\x9b\ +\xff\xff\x79\xe7\xd1\x8c\xa8\x2a\xbf\xcc\x32\xfc\x52\xeb\x02\xc0\ +\x05\x80\x0b\x00\x3e\x99\x66\x66\x66\x98\x9b\x9b\x03\x11\x50\x45\ +\x69\x49\x00\x50\x50\x47\x2a\xf1\x00\x41\xbd\x9c\x87\xf1\x7d\x40\ +\x50\x1b\x8b\x6d\x58\x9c\xcd\x8a\x04\xf5\x8b\x21\xb9\x35\xfd\xea\ +\x85\xdd\x80\x07\x80\x6a\xa2\xea\xea\x44\xcb\x55\xb1\xcd\xba\xd8\ +\x46\x24\x6a\x11\x1c\x88\xe0\x54\x50\x04\x14\x10\x30\x02\x22\x42\ +\x26\x54\x95\x52\xa9\xc4\xa6\x4d\x9b\x10\x91\x16\xc0\x7d\xf7\xdd\ +\xc7\xfd\xf7\xdf\x4f\x6f\x57\xa1\xbf\x2b\x08\x86\x4a\x41\xd0\xe3\ +\x89\x8a\x45\x24\x32\x85\xb0\x1e\xac\x31\xb5\xe2\xe6\x7c\xb0\x66\ +\xeb\x70\x61\xcd\x96\xcd\xc5\xee\xfe\x8b\xba\x7a\xd6\xf5\x05\x5d\ +\xdd\x05\x40\x9a\x8d\x5a\x75\x71\xf6\xcc\xd9\xa5\x53\xaf\x1d\xee\ +\x9a\x7b\x63\x2e\xd9\xf4\xb9\x2d\x1b\xb7\x7f\xe1\x86\xe1\x2d\xa5\ +\x6d\x03\xbd\x7e\x6f\x21\x27\x9e\xef\x41\x14\xbb\xa4\xda\x88\xab\ +\xcb\x8b\xb5\xe5\x85\x85\x85\xd9\xf9\xd9\x89\xb3\xef\xd5\x4d\x44\ +\xf3\xe3\xe5\x5c\x65\x42\x2e\x36\x27\x74\x5d\xa1\x69\xf2\x21\xf9\ +\xc5\xb2\xb3\x23\x13\xe5\xe7\x4f\x2f\x2d\x3d\xef\x54\x15\x20\x49\ +\x12\x6e\xbe\xf9\x66\x1e\x7a\xe8\x21\x82\x20\x68\x01\xd4\xab\x55\ +\x6f\x03\x7c\x65\xc7\xba\xdc\xd7\x2e\xea\x77\x17\x7b\x01\xf9\xe3\ +\xc1\x4d\xc8\xc6\xcf\x48\xef\xe6\x4b\xcc\xba\x8d\x1b\x65\x68\xc3\ +\x1a\x6f\xd3\x40\x57\x30\xd8\x67\xa4\xaf\x00\xa5\x1c\xf8\x86\x54\ +\x91\x85\xd9\xca\xb5\xbc\x79\xf2\x56\xad\xcf\x9f\xd5\xe1\xe1\x0d\ +\x72\xf5\xd6\xbc\x0c\x14\x21\xe7\x83\x67\x58\x91\x55\x48\x6c\x2f\ +\xcd\x04\x2a\xd1\x4e\x16\xaa\xca\xd4\x92\xe5\xf1\x83\x15\x4e\x9e\ +\x78\x97\x92\x79\x9d\xbf\xfc\xe4\x7e\xca\xb3\xcb\xdc\xff\xef\xb5\ +\xb1\x77\xc6\xcb\xb7\xce\xd5\x6b\x23\x64\x5a\x5c\x5c\x24\xe3\x41\ +\x32\x30\xee\xfd\xe6\xb7\x3e\x3b\xf1\xdf\x7b\x9f\xf8\xf2\xad\xa5\ +\x81\xc1\xc1\x12\xff\x39\xb1\x8b\xc6\xe5\xbb\xf9\xe3\x1b\xd6\xb0\ +\xb6\x08\x5d\x01\x78\x42\x26\xa5\x93\x54\x85\xe9\xf9\x3a\x7d\xdd\ +\x21\xf9\x40\xb0\x4e\x51\x4d\x0f\x99\x10\x01\x11\x69\x3b\x00\xa3\ +\xf3\xc2\x91\x59\x78\xe0\x47\xc7\xf8\x87\xe1\xbf\x61\x4b\x38\xc5\ +\x03\x7b\x27\xe3\x3d\xcf\xcc\x7d\x69\x74\x7e\xee\x09\x32\xdd\x72\ +\xcb\x2d\xec\xdb\xb7\x8f\x30\x0c\x5b\x0e\x5c\x54\x2a\x5d\xd7\xb3\ +\x4d\x07\xae\xd9\xbe\x9e\xb7\x16\x36\xf1\x7a\xd7\x9f\xf2\xf5\x4f\ +\xaf\x61\x4b\xbf\xe2\x9c\xc3\x59\x25\x72\xae\xbd\x99\x56\x2e\x57\ +\x1a\xf1\x3c\x8f\x24\xb1\xd4\xeb\x0d\xd4\x1a\xd4\xb9\xce\xb8\xb4\ +\xf2\x6d\x8c\xc1\x97\x80\xf5\x25\x8f\x30\xcc\x51\x8d\x3c\x24\x27\ +\x74\xe7\xd5\xcf\x79\xde\xc0\x79\x87\xd8\xf7\x58\x93\x0b\x15\x54\ +\xa9\xc7\x42\x3e\x17\xd2\x9d\x27\x6d\xc6\x5a\xbb\xd2\x68\x27\x39\ +\x4d\x6b\x01\xc1\x3a\x87\xb5\x06\x00\xcd\x2e\x85\xf3\x4a\x15\x23\ +\x8a\x11\xf0\x82\x90\x4a\x1c\x20\x02\x5d\x39\x95\x9c\x67\xfa\xcf\ +\x0b\xa0\x9a\xda\x8d\x73\x0e\x8f\x04\xd4\xe2\x00\x55\xd0\xd6\x13\ +\x14\x74\xa5\xa6\x55\x0b\x8a\x22\x38\xc0\x3a\x68\x5a\x25\xe7\xc0\ +\x29\xa0\xed\x4e\x01\x08\x80\x80\x28\x64\x26\xe0\x09\x18\x21\x8d\ +\x46\x39\x0e\x00\xa5\x2b\x2f\xac\x0d\xfc\x4b\xb6\xf4\xaf\xfd\xfc\ +\xf0\xf6\x2b\x87\xc7\x46\xdf\x7e\x53\x44\xde\x04\xb4\x0d\x00\x68\ +\x38\xab\x58\x67\x31\x58\x04\x47\xe2\x20\x3d\xb6\x05\x41\xeb\xd9\ +\x06\xa4\x19\x91\x41\x49\x9c\x42\x0c\x91\x03\x75\x2d\xf0\x56\x6c\ +\x68\x87\x00\x8c\x90\xd6\x7a\x19\x40\x65\x29\x04\x51\x02\x2f\xe1\ +\x4a\xc3\x1f\xde\x34\x38\xf8\x47\x17\x7d\xe1\x96\x42\xed\x0f\xbe\ +\x72\xfa\xcd\xb7\x0e\xfe\x89\xaa\xfe\xb4\x1d\x00\x9c\x53\x4d\x33\ +\x6b\x48\x52\x90\xa6\x85\xd8\x69\x0a\xd1\xee\xc0\x6a\x2e\x80\x02\ +\x06\xb0\x29\xb8\xa3\x60\xc9\x1c\x10\x14\x45\x54\x40\xda\x41\x32\ +\x08\x8c\xb4\xe0\x72\xa1\xcf\x72\x92\x27\x49\x1c\x4b\x93\x96\xdb\ +\x7f\x7d\x57\xc9\x9b\x5f\xe0\xa7\xff\xf8\x77\xc8\x8d\x5f\xdc\x72\ +\xd9\x67\x76\xde\x2e\x22\x1f\x02\x88\x12\x0b\xd6\x3a\x3c\x2c\xce\ +\xb9\x14\x20\x71\x10\xa7\x00\x9d\x63\xa4\xe8\x0a\x84\x51\xb0\x4e\ +\x53\xf0\xcc\x01\xb2\x12\x24\x2b\x62\x15\x07\x44\xd2\x62\x62\x07\ +\x41\xe0\x53\xb5\x79\x8e\xbc\x36\x47\xd1\x6d\x67\xb0\xbb\x97\x57\ +\x9f\x7a\x9a\xcb\x8a\x05\xc6\x7e\xf4\x18\x73\x52\x9f\xe0\xcf\xbf\ +\x46\x3b\x00\x12\xa3\x8a\xaa\xc3\x68\x82\x5b\x71\x00\x22\x0b\xf0\ +\x51\x00\x82\x66\x54\x06\x48\x14\xa2\x24\x8d\x20\xce\xad\x72\xed\ +\xba\x95\xc6\x5b\x10\x59\x84\x22\x0b\x7e\xce\xe7\xe8\x48\xc2\x27\ +\x26\x7b\xd9\x71\xc9\xe5\x1c\xfa\xc1\xf7\xf1\x82\x00\xd3\x68\x30\ +\xd2\x6c\x1e\x68\x96\x97\xf7\xaa\x6a\x3b\x40\xe2\x9c\x4d\xac\x92\ +\x3a\x20\x49\xea\x40\x23\x81\x44\x21\x76\xd9\x90\xaa\xac\x64\xbd\ +\x05\xd2\x3e\x1f\xa2\xd9\x10\xc7\x8e\xb8\xd3\x0c\xb4\xb9\xa0\x20\ +\x82\x00\x81\x40\x53\xa1\xd8\x98\x22\x3a\x3a\xce\x55\xd7\x5d\xcf\ +\xe8\x73\xcf\xd1\x58\x5e\xa6\xd4\xd5\xc5\x81\xa9\xa9\x93\x4f\xc1\ +\x5f\x5c\x09\xa7\x05\xda\x01\x2a\x51\xd4\xb4\x96\xb4\x71\x51\x97\ +\x3a\x10\xb9\x2c\x42\x56\x51\xd5\xb6\x46\x5b\x0e\xb4\xe2\x93\x11\ +\xa4\x35\x51\xac\x24\x4e\x70\x4e\x41\x59\x55\x22\xed\x4f\xa3\x50\ +\xad\xd4\xe8\xf9\xd9\xbf\xf0\xa5\x2b\xd7\x30\x7b\xec\x18\x33\x23\ +\x23\xf4\xae\x5d\xcb\x2f\xc6\xc7\xcb\xfb\xe1\xaf\x27\xe1\xc5\x2b\ +\x57\xbd\x46\x51\x75\xea\x70\xd9\x10\xe3\x12\x6a\x31\xc4\x59\x8c\ +\x54\x05\xa0\x03\x44\x2b\x5a\x62\x04\x8b\xac\x44\xa8\xdd\x81\x0e\ +\x2e\x64\x2f\x7c\xa7\xcc\xee\x7b\x98\x6b\xea\x67\xc9\xa9\xe5\xd8\ +\x0b\x07\xe8\x1d\x18\x60\x62\x72\xd2\x3d\x69\xed\x7d\xc7\xe0\xd1\ +\x8e\xdb\x28\x2a\x4d\x6b\xc5\xbd\x27\xc3\x07\x0e\x58\xb0\x0a\x91\ +\x13\xd0\xcc\x05\x3a\x5d\xa5\x2d\xaa\xd4\xb5\x38\x03\x50\x40\x05\ +\xd0\xd6\x30\x93\x49\x5b\x20\xc6\x33\x8c\x3d\xf3\x13\x86\x0e\x3f\ +\xcf\xd6\x81\xb5\x1c\x7a\xec\x31\x0a\x7d\x7d\x2c\xcd\xcf\xf3\x56\ +\x18\xd4\x46\x44\xf6\xdb\x7a\x3d\xe9\x0c\x00\x4e\x95\x15\x07\x44\ +\x13\xea\x09\x59\x84\x00\xed\xfc\xe9\x43\x0b\x4c\x04\x2c\x42\x9c\ +\x38\xac\x6b\xcd\x4a\x5b\x91\xb4\x3b\x21\xc6\x70\xee\xed\xa3\x2c\ +\xed\xfb\x0f\x3e\x37\xbc\x91\xa3\x8f\x3f\x8e\x88\x90\x34\x9a\x4c\ +\x15\x2a\xac\xdf\x36\xe4\x77\x1d\xad\x16\xa9\xd7\xe9\x0c\x20\xc4\ +\xd6\xa9\xb3\x99\x03\xea\xdc\x0a\x40\xe2\xda\x72\xde\xae\xd5\xe2\ +\x21\x69\x84\xb0\x0a\xe8\x2a\x11\xd2\x16\xac\x88\xa1\x7e\xee\x1c\ +\x67\xf7\xfe\x2b\x37\x6c\xde\xc0\xf8\x0b\x2f\x50\x7d\xef\x75\xae\ +\xd4\xcd\xf1\xca\x14\xd7\xfc\xfe\x10\x63\x13\x12\x78\x47\xb3\x75\ +\xa2\x73\x84\x88\x9d\x13\xd5\x6c\x95\x10\x8d\x88\x2c\x88\xb4\xe7\ +\xb6\xf3\x34\x2a\xad\xa6\xc8\x1c\x00\xa1\x1d\xa0\x5d\x82\x8b\x22\ +\x4e\x3e\xf2\x5d\x76\x16\x03\x6a\x63\x63\x4c\x1f\x39\x42\x71\x60\ +\x80\x91\xc9\x09\xb6\x7d\x79\x90\x4b\xb6\x77\x33\x3e\xb3\xec\xe5\ +\x7c\xd3\xf7\xd1\x00\x82\x53\x55\xb5\xd6\x81\x71\xa8\x6a\xea\x80\ +\x53\x30\x02\x4a\x9b\x3a\x03\x09\xa4\xf6\x5b\x87\x53\x6d\xb1\x01\ +\xba\x8a\x03\xa7\xf7\x7f\x8f\xad\xf3\x13\xf4\x7a\x86\xc3\xcf\x3e\ +\x9b\x36\x7f\x7a\x7a\x96\x03\x97\xdf\xc8\x67\x3f\xbd\x84\x30\x4f\ +\x3e\x54\x4a\x61\xb0\xe6\x7c\x0e\x34\x9d\x4b\x87\x18\x63\x12\x8c\ +\x8b\x68\x26\x80\x08\x46\x04\x45\x61\x95\xcd\xb2\xb5\xc6\xb5\x9a\ +\x72\x9e\xe0\xac\x43\x55\x49\x6b\x05\xd0\x16\xb0\x0a\x18\xe3\x31\ +\xf5\xca\xcf\x29\x1d\x7a\x9e\x4b\x87\x06\x39\xb2\x77\x2f\x61\x4f\ +\x0f\x8b\xf3\xf3\xbc\xf1\xa9\x5d\xbc\xfd\x1b\x7f\x45\xc5\x7e\x13\ +\xd0\x14\x20\x30\x72\x1e\x00\xd2\xd8\x93\x02\xa8\x03\x4d\x57\x89\ +\x6c\xd1\xd2\x95\x65\x0d\x01\x59\xed\x3e\xd4\x56\x84\x7c\x03\xd6\ +\x29\xa4\x00\x06\xa5\x05\xad\xd9\xee\xbf\x7c\x72\x8c\xc6\xfe\xc7\ +\xb8\xf1\x13\x9b\x79\x77\xdf\x3e\x9c\xb5\x58\xe7\xf8\x9f\xbe\x21\ +\x96\xbf\xfa\xf7\xd8\xe9\x5e\xaa\xb1\x0f\x28\xb9\xc0\xd1\x93\xcb\ +\xf7\x0b\x82\xa2\xab\x03\x54\xe2\xa8\x99\xb8\x54\x18\xb5\xf8\x44\ +\x69\x84\x14\xf0\x4c\xd6\x9f\x74\x8a\x91\xb6\xef\x37\x46\x70\x1f\ +\x00\x18\x50\x97\x31\x42\xea\x48\x73\x69\x91\xe9\x47\xbf\xcb\xae\ +\xcd\x83\xcc\xbc\xf4\x12\xe5\x33\x67\xf0\xfb\xfa\x18\xa9\x56\x59\ +\xff\x8d\x6f\x73\x62\xeb\x15\x24\x33\xd3\x54\x93\x10\x55\x47\x2e\ +\x84\xc0\x68\x3f\xe0\x01\x76\x55\x00\xeb\xd4\x25\xd9\x37\x31\xa9\ +\x03\x96\x38\x1b\x62\x4f\xc8\x62\xf0\xd1\xf9\x17\x01\xb2\x38\xe9\ +\x07\x00\x59\x6d\xc6\x8f\xda\x84\xf1\xef\x3d\xc0\x55\x79\x81\x53\ +\xa7\x99\x3e\x78\x90\xfc\xba\x75\x1c\x9f\x9a\xa6\x77\xf7\x3d\xac\ +\xbf\xf9\x37\x79\x61\x0c\xac\x17\x52\x89\xf3\xa8\x2a\x81\xaf\x94\ +\x42\xd3\xe7\x1b\x13\xc4\xce\xae\x0e\x00\x24\xaa\xd8\x14\x20\x75\ +\x20\xa6\x91\x64\x94\x66\x95\x9b\x44\x40\xda\x71\x20\x1b\x5a\x15\ +\x41\x35\xdd\xab\xda\x00\x10\xc3\xa9\x27\x1f\x67\xd3\xf4\x49\x06\ +\xbb\xf2\x1c\x7b\xfa\x69\xf2\x03\x03\x8c\x4f\x4f\x93\xfc\xd6\xef\ +\x72\xd9\x1d\x7f\x46\xc5\x40\xec\xc0\x9a\x80\xb2\xed\x4a\x73\xed\ +\x07\x4a\x21\xa0\xc7\x33\x26\x17\x3b\xdb\xe8\x04\x60\x55\x71\xa9\ +\xf5\x6a\x11\x4d\x68\xae\x44\x28\x6d\xa8\xd5\x27\xed\x42\xb5\x8d\ +\x43\xb2\xa1\x77\x19\x80\xcb\x86\x76\xfa\xf5\x57\x08\x5e\x79\x96\ +\x5f\xdd\x3c\xc4\xe8\xc3\x0f\xe3\x17\x0a\xcc\x2f\x2e\x32\xbb\xfd\ +\x6a\x76\xec\xbe\x87\xa0\xd0\x85\x9f\x28\x56\x21\x31\x3e\xe5\xa4\ +\x0b\x55\x87\xef\x43\xce\xd7\x6e\x23\x92\x07\x96\x3a\xfd\x32\x67\ +\x9d\x13\x67\xb3\x08\x79\xc4\x44\x16\x14\x41\xa4\x3d\x33\x6d\x2f\ +\xf5\xc3\x81\xca\x2e\xab\x15\x07\x3c\xcf\x50\x99\x38\xcd\xd2\xbe\ +\x47\xb8\xee\xe2\x61\xce\xfc\xf8\xc7\xc4\xb5\x1a\x0d\xe7\x38\xd9\ +\xd3\xcf\xe5\xf7\xfc\x2d\xdd\x1b\x36\x22\xce\x11\x18\xc5\xa5\x00\ +\x1e\x15\x5b\x4c\x23\xed\x79\xd0\x9d\xa3\x90\xf7\xfd\x22\x40\x27\ +\x80\x58\x21\x49\x23\xe4\x2c\x46\x13\xea\x16\x12\xe5\xa3\x25\x00\ +\xba\xda\xa2\x96\x02\x78\xc6\x90\x54\xcb\x4c\x3c\xfa\x6f\x5c\xbb\ +\x61\x1d\x95\x57\x5f\x65\xf9\x9d\x77\x90\xee\x6e\x46\x6b\x75\x36\ +\x7f\xe3\x5b\x5c\xb4\x63\x27\xa2\x16\x11\x08\x04\x10\x4d\x01\x96\ +\x53\x00\xc5\x78\x90\xf7\x5d\x51\x90\xe2\x79\xae\x51\xc1\x39\x9b\ +\x39\x90\x10\x5b\x58\xed\xf2\x51\x80\x8e\x60\xad\xef\x8e\x38\xb6\ +\xe0\x2c\xa7\xbe\xbf\x97\xcb\x25\x21\x3f\x79\x8e\x13\x07\x0e\x10\ +\xac\x5b\xc7\xe8\xd4\x24\xfd\x77\xef\xe6\xd2\xdb\x6e\x07\x5c\x2b\ +\x7e\x06\x04\x88\xc5\x50\x71\x45\xac\x53\xc4\x28\xc5\x50\x73\xa5\ +\x30\xec\x99\xab\x57\x3b\x02\xc4\xaa\x92\x58\xab\xa0\x16\x93\xad\ +\x12\x89\x03\x3c\x30\x80\x18\xc1\x08\x69\x73\x88\x64\x30\x82\xb6\ +\xa0\x10\x14\xdf\x13\x02\xdf\xa0\x62\x98\x38\xf4\x32\x3d\xef\x1e\ +\x63\xb8\xb7\x87\xb1\xfd\xfb\xf1\xd7\xae\xe5\xf4\xf4\x0c\xa3\xbb\ +\x7e\x87\xab\xee\xf8\x3a\x67\x6c\x89\xc0\x29\xa1\x40\xce\x28\x7e\ +\x1a\x3d\x68\x58\x58\xb6\xdd\x24\x56\x11\x81\x7c\xe0\x42\x23\xf4\ +\x7e\xe4\x36\x0a\xa8\xaa\x23\xdb\x87\x68\x3a\x68\xaa\xc1\x7a\x86\ +\x72\x0c\x4b\x4d\x61\xae\x01\xe7\xde\x3f\x75\x58\x68\x40\x39\x82\ +\x5a\x4c\xfa\x46\x46\xa1\x60\x60\x6d\x0e\x66\x26\x0b\x2c\x8d\xc7\ +\x6c\x9a\x3b\xce\xee\xdb\x6e\x63\x7c\xcf\xbd\x88\xef\xb3\x50\x29\ +\xf3\x4c\x71\x1b\x3f\xb9\x6c\x37\x0f\xfd\xb0\x89\x49\x96\x08\x34\ +\x21\x47\x44\x41\x62\x8a\x12\x31\x5d\x89\xe8\xaf\x59\x0a\xde\x74\ +\xea\x40\x50\x1c\x20\x97\xab\xfb\x40\xe7\x08\x35\x93\x24\x6e\xc4\ +\x9a\x58\xa7\xa8\x3a\xc4\x36\x29\x4f\x47\xec\x79\x2a\x21\x8e\x13\ +\x16\xaa\x09\xd5\x66\x4c\x14\xc5\x38\x1b\xa7\x33\x12\x18\x4b\x28\ +\x09\x39\x9a\xe4\x68\x90\xd3\x1a\x35\x57\x61\xa9\x79\x0e\x77\xee\ +\x24\x8d\x6a\x95\x0d\x57\x6f\x65\x71\xe3\xa5\x9c\xfa\xed\x3b\x08\ +\x7e\xf8\x08\xa7\x8e\xbe\xc8\xb5\x5f\xbd\x9e\xeb\x7e\xe5\x20\x79\ +\x79\x91\x9c\x49\x08\x4d\x44\x20\x09\x81\xc4\xe9\x09\xdf\x3f\x46\ +\xe9\xf2\x63\xfa\xf2\xbf\x47\x34\x37\x47\x1c\x3f\x97\x28\x34\x3a\ +\x02\x44\xd6\x2e\x55\x1b\x66\x36\x36\xf9\x61\x13\x7a\xfc\x5a\xe1\ +\x0d\xc2\xca\xb7\x29\x36\x1a\x14\xc3\x98\x52\x18\x53\x2c\x59\xf2\ +\xbe\x25\xe7\xc5\xf8\x1a\x61\x92\x26\x34\xab\x24\xb5\x0a\x71\xb5\ +\x4e\xb3\x52\xa7\x5e\x69\xba\xca\x72\xb3\x79\x76\xd6\x9e\x99\xcf\ +\x6f\xec\xda\xb2\xe1\xfa\x4d\xe3\xe3\x33\x9c\xf2\x72\x1c\x1f\xdc\ +\xbc\x68\x16\x07\x2b\x1b\x0f\x3d\x1d\x74\x1d\xf9\x99\x97\x0b\x3c\ +\xe3\xf9\x9e\xe7\xa7\xc7\xf7\xfc\xc0\xf7\x82\x20\x90\x30\x0c\xc4\ +\x33\x62\xac\x55\xb5\x71\xac\x0b\x53\x93\xc9\x4b\xa7\xcc\xcf\xe7\ +\x6a\xb5\xd7\x3b\x02\xd4\x93\x78\x61\x6c\xa6\xb9\xff\xe8\x89\xde\ +\x1d\x61\x4f\xce\xec\x1c\x78\x9b\x1d\xee\x28\x71\xa4\xd4\xeb\x96\ +\xea\xbc\xa3\x5a\xb6\x5a\xa9\x38\x7b\xb6\xec\x1a\xcb\x15\x2d\x2f\ +\x57\x75\x71\xb1\xa6\xb3\x95\x06\x53\x4b\x75\x7b\x76\xb9\xe9\x26\ +\xca\x4d\x7b\xb6\x12\xc5\x93\x4d\x64\xf6\xa6\x2f\x5e\xf1\xcf\xdd\ +\xdd\x03\x9b\x0e\x1f\x7e\x2b\x7e\xf9\xe5\xe7\xfe\xeb\x8d\x43\x2f\ +\x7d\xa7\xba\x38\x77\x8a\xe3\x84\xf9\xf7\x7b\xf5\xbc\x00\x25\x04\ +\x0d\x20\x7d\x86\xc5\x20\x08\x43\xcf\x84\x40\x1e\xb0\x0a\xcd\x72\ +\x94\x2c\xce\x37\xea\x87\x2b\x51\x34\xdb\x11\xc0\xa1\x1c\x9c\x98\ +\xfe\xa7\xf8\x49\xad\x6e\x3b\x18\xde\x58\x08\xa5\xc7\x39\xb5\x8d\ +\x48\xab\xe5\x86\x9b\x5d\xaa\xdb\x89\x5a\xe4\x26\xca\x51\x72\xb6\ +\x1a\xc5\x53\xf5\xc4\x9e\x6b\x24\xf1\x62\xe4\x5c\xd9\xa1\x4d\xc0\ +\xd2\x12\x43\x43\x5b\x3e\xff\xc9\x4f\x6d\xbf\xe6\xb5\xd7\x5e\x3e\ +\xf3\xc4\x13\x3f\xf8\xce\xe8\xe8\x91\x07\xa2\xa8\xb9\x44\xa6\xe5\ +\x88\x8f\xab\xf6\x9f\xd7\xf7\xec\xd9\xc3\x83\x0f\x3e\x88\xef\xfb\ +\x04\xc6\xcf\x79\x46\x42\x40\x9d\x6a\x9c\x38\x1b\x59\x55\x45\xdb\ +\x57\x67\x44\x10\x3e\x2c\x55\x65\xfd\xfa\xa1\x2b\xb6\x6f\xbf\xe6\ +\xee\x91\x91\x23\x7b\xcf\x9c\x39\x71\x00\x14\x10\x3e\xae\xac\xb5\ +\xec\xda\xb5\x8b\x7b\xef\xbd\xb7\xfd\x0f\x8e\xbb\xee\xba\x8b\x3b\ +\xef\xbc\x93\x4c\x4d\x85\x26\x1f\xef\x2d\x7f\x21\x62\xee\x76\xce\ +\xaa\x88\xf0\x7f\x29\xdf\xf7\xd3\x03\x70\xe1\x9f\xfa\xff\x5f\x5d\ +\x00\xb8\x00\x70\x01\xe0\x7f\x01\x6e\xa9\x93\x7a\xf5\x39\xfe\x18\ +\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x16\ +\x07\xbc\x11\xc7\ +\x00\x6d\ +\x00\x65\x00\x74\x00\x61\x00\x63\x00\x6f\x00\x6e\x00\x74\x00\x61\x00\x63\x00\x74\x00\x5f\x00\x6f\x00\x6e\x00\x6c\x00\x69\x00\x6e\ +\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x0d\ +\x0e\x40\x40\xc7\ +\x00\x6d\ +\x00\x69\x00\x6e\x00\x69\x00\x74\x00\x6f\x00\x6f\x00\x6c\x00\x73\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x14\ +\x0a\x34\xf1\x07\ +\x00\x62\ +\x00\x6c\x00\x75\x00\x65\x00\x5f\x00\x61\x00\x6e\x00\x67\x00\x6c\x00\x65\x00\x5f\x00\x73\x00\x77\x00\x69\x00\x72\x00\x6c\x00\x2e\ +\x00\x6a\x00\x70\x00\x67\ +\x00\x13\ +\x01\x35\x7a\xc7\ +\x00\x6b\ +\x00\x6f\x00\x70\x00\x65\x00\x74\x00\x65\x00\x61\x00\x76\x00\x61\x00\x69\x00\x6c\x00\x61\x00\x62\x00\x6c\x00\x65\x00\x2e\x00\x70\ +\x00\x6e\x00\x67\ +\x00\x11\ +\x04\x5b\x0b\x07\ +\x00\x6b\ +\x00\x6f\x00\x6e\x00\x74\x00\x61\x00\x63\x00\x74\x00\x5f\x00\x6e\x00\x6f\x00\x74\x00\x65\x00\x73\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\ +\x00\x10\ +\x03\x16\x82\x47\ +\x00\x6b\ +\x00\x6f\x00\x6e\x00\x74\x00\x61\x00\x63\x00\x74\x00\x5f\x00\x6d\x00\x61\x00\x69\x00\x6c\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x14\ +\x08\x13\x30\x07\ +\x00\x6b\ +\x00\x6f\x00\x6e\x00\x74\x00\x61\x00\x63\x00\x74\x00\x5f\x00\x63\x00\x6f\x00\x6e\x00\x74\x00\x61\x00\x63\x00\x74\x00\x73\x00\x2e\ +\x00\x70\x00\x6e\x00\x67\ +\x00\x10\ +\x05\xe9\x01\x67\ +\x00\x61\ +\x00\x72\x00\x74\x00\x73\x00\x66\x00\x66\x00\x74\x00\x73\x00\x63\x00\x6f\x00\x70\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\ +\x00\x13\ +\x09\x2b\x13\x47\ +\x00\x6b\ +\x00\x6f\x00\x6e\x00\x74\x00\x61\x00\x63\x00\x74\x00\x5f\x00\x6a\x00\x6f\x00\x75\x00\x72\x00\x6e\x00\x61\x00\x6c\x00\x2e\x00\x70\ +\x00\x6e\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x02\ +\x00\x00\x00\x92\x00\x00\x00\x00\x00\x01\x00\x00\x6e\x8c\ +\x00\x00\x00\xe6\x00\x00\x00\x00\x00\x01\x00\x00\x87\x15\ +\x00\x00\x00\xbe\x00\x00\x00\x00\x00\x01\x00\x00\x77\xdc\ +\x00\x00\x01\x3a\x00\x00\x00\x00\x00\x01\x00\x00\xa4\xbd\ +\x00\x00\x00\x12\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x01\x0c\x00\x00\x00\x00\x00\x01\x00\x00\x93\x9b\ +\x00\x00\x01\x60\x00\x00\x00\x00\x00\x01\x00\x00\xa9\xcf\ +\x00\x00\x00\x64\x00\x00\x00\x00\x00\x01\x00\x00\x40\x56\ +\x00\x00\x00\x64\x00\x00\x00\x00\x00\x01\x00\x00\x12\x20\ +\x00\x00\x00\x44\x00\x00\x00\x00\x00\x01\x00\x00\x09\xf5\ +" + +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() diff --git a/examples/graphicsview/padnavigator/ui_form.py b/examples/graphicsview/padnavigator/ui_form.py new file mode 100644 index 0000000..0a0091d --- /dev/null +++ b/examples/graphicsview/padnavigator/ui_form.py @@ -0,0 +1,109 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'form.ui' +# +# Created: Sun May 5 07:55:08 2013 +# by: PyQt5 UI code generator 5.0-snapshot-74eb89bd4fb2 +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_Form(object): + def setupUi(self, Form): + Form.setObjectName("Form") + Form.resize(378, 385) + self.verticalLayout_2 = QtWidgets.QVBoxLayout(Form) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.groupBox = QtWidgets.QGroupBox(Form) + self.groupBox.setFlat(True) + self.groupBox.setCheckable(True) + self.groupBox.setObjectName("groupBox") + self.gridLayout = QtWidgets.QGridLayout(self.groupBox) + self.gridLayout.setObjectName("gridLayout") + self.label = QtWidgets.QLabel(self.groupBox) + self.label.setObjectName("label") + self.gridLayout.addWidget(self.label, 0, 0, 1, 1) + self.hostName = QtWidgets.QLineEdit(self.groupBox) + self.hostName.setObjectName("hostName") + self.gridLayout.addWidget(self.hostName, 0, 1, 1, 1) + self.label_2 = QtWidgets.QLabel(self.groupBox) + self.label_2.setObjectName("label_2") + self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1) + self.label_3 = QtWidgets.QLabel(self.groupBox) + self.label_3.setObjectName("label_3") + self.gridLayout.addWidget(self.label_3, 2, 0, 1, 1) + self.horizontalLayout = QtWidgets.QHBoxLayout() + self.horizontalLayout.setObjectName("horizontalLayout") + self.horizontalSlider = QtWidgets.QSlider(self.groupBox) + self.horizontalSlider.setProperty("value", 42) + self.horizontalSlider.setOrientation(QtCore.Qt.Horizontal) + self.horizontalSlider.setObjectName("horizontalSlider") + self.horizontalLayout.addWidget(self.horizontalSlider) + self.spinBox = QtWidgets.QSpinBox(self.groupBox) + self.spinBox.setProperty("value", 42) + self.spinBox.setObjectName("spinBox") + self.horizontalLayout.addWidget(self.spinBox) + self.gridLayout.addLayout(self.horizontalLayout, 2, 1, 1, 1) + self.dateTimeEdit = QtWidgets.QDateTimeEdit(self.groupBox) + self.dateTimeEdit.setObjectName("dateTimeEdit") + self.gridLayout.addWidget(self.dateTimeEdit, 1, 1, 1, 1) + self.verticalLayout_2.addWidget(self.groupBox) + self.groupBox_2 = QtWidgets.QGroupBox(Form) + self.groupBox_2.setFlat(True) + self.groupBox_2.setCheckable(True) + self.groupBox_2.setObjectName("groupBox_2") + self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.groupBox_2) + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + self.treeWidget = QtWidgets.QTreeWidget(self.groupBox_2) + self.treeWidget.setObjectName("treeWidget") + item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget) + item_1 = QtWidgets.QTreeWidgetItem(item_0) + item_2 = QtWidgets.QTreeWidgetItem(item_1) + item_2 = QtWidgets.QTreeWidgetItem(item_1) + item_2 = QtWidgets.QTreeWidgetItem(item_1) + item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget) + item_1 = QtWidgets.QTreeWidgetItem(item_0) + item_2 = QtWidgets.QTreeWidgetItem(item_1) + item_0 = QtWidgets.QTreeWidgetItem(self.treeWidget) + item_1 = QtWidgets.QTreeWidgetItem(item_0) + item_2 = QtWidgets.QTreeWidgetItem(item_1) + self.horizontalLayout_2.addWidget(self.treeWidget) + self.verticalLayout_2.addWidget(self.groupBox_2) + + self.retranslateUi(Form) + self.horizontalSlider.valueChanged['int'].connect(self.spinBox.setValue) + self.spinBox.valueChanged['int'].connect(self.horizontalSlider.setValue) + QtCore.QMetaObject.connectSlotsByName(Form) + Form.setTabOrder(self.groupBox, self.hostName) + Form.setTabOrder(self.hostName, self.dateTimeEdit) + Form.setTabOrder(self.dateTimeEdit, self.horizontalSlider) + Form.setTabOrder(self.horizontalSlider, self.spinBox) + Form.setTabOrder(self.spinBox, self.groupBox_2) + Form.setTabOrder(self.groupBox_2, self.treeWidget) + + def retranslateUi(self, Form): + _translate = QtCore.QCoreApplication.translate + Form.setWindowTitle(_translate("Form", "BackSide")) + self.groupBox.setTitle(_translate("Form", "Settings")) + self.label.setText(_translate("Form", "Title:")) + self.hostName.setText(_translate("Form", "Pad Navigator Example")) + self.label_2.setText(_translate("Form", "Modified:")) + self.label_3.setText(_translate("Form", "Extent")) + self.groupBox_2.setTitle(_translate("Form", "Other input")) + self.treeWidget.headerItem().setText(0, _translate("Form", "Widgets On Graphics View")) + __sortingEnabled = self.treeWidget.isSortingEnabled() + self.treeWidget.setSortingEnabled(False) + self.treeWidget.topLevelItem(0).setText(0, _translate("Form", "QGraphicsProxyWidget")) + self.treeWidget.topLevelItem(0).child(0).setText(0, _translate("Form", "QGraphicsWidget")) + self.treeWidget.topLevelItem(0).child(0).child(0).setText(0, _translate("Form", "QObject")) + self.treeWidget.topLevelItem(0).child(0).child(1).setText(0, _translate("Form", "QGraphicsItem")) + self.treeWidget.topLevelItem(0).child(0).child(2).setText(0, _translate("Form", "QGraphicsLayoutItem")) + self.treeWidget.topLevelItem(1).setText(0, _translate("Form", "QGraphicsGridLayout")) + self.treeWidget.topLevelItem(1).child(0).setText(0, _translate("Form", "QGraphicsLayout")) + self.treeWidget.topLevelItem(1).child(0).child(0).setText(0, _translate("Form", "QGraphicsLayoutItem")) + self.treeWidget.topLevelItem(2).setText(0, _translate("Form", "QGraphicsLinearLayout")) + self.treeWidget.topLevelItem(2).child(0).setText(0, _translate("Form", "QGraphicsLayout")) + self.treeWidget.topLevelItem(2).child(0).child(0).setText(0, _translate("Form", "QGraphicsLayoutItem")) + self.treeWidget.setSortingEnabled(__sortingEnabled) + diff --git a/examples/ipc/README b/examples/ipc/README new file mode 100644 index 0000000..d39fee7 --- /dev/null +++ b/examples/ipc/README @@ -0,0 +1,21 @@ +These examples demonstrate IPC support in PyQt. + +The example launcher provided with PyQt can be used to explore each of the +examples in this directory. + +Documentation for these examples can be found via the Tutorial and Examples +link in the main Qt documentation. + + +Finding the PyQt Examples and Demos launcher +============================================ + +On Windows: + +The launcher can be accessed via the Windows Start menu. Select the menu +entry entitled "Examples and Demos" entry in the submenu containing PyQt5. + +On all platforms: + +The source code for the launcher can be found in the examples/demos/qtdemo +directory in the PyQt package. diff --git a/examples/ipc/localfortuneclient.py b/examples/ipc/localfortuneclient.py new file mode 100755 index 0000000..eebb3ef --- /dev/null +++ b/examples/ipc/localfortuneclient.py @@ -0,0 +1,155 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited +## Copyright (C) 2010 Hans-Peter Jansen . +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial Usage +## Licensees holding valid Qt Commercial licenses may use this file in +## accordance with the Qt Commercial License Agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and Nokia. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 2.1 requirements +## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## In addition, as a special exception, Nokia gives you certain additional +## rights. These rights are described in the Nokia Qt LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3.0 as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL included in the +## packaging of this file. Please review the following information to +## ensure the GNU General Public License version 3.0 requirements will be +## met: http://www.gnu.org/copyleft/gpl.html. +## +## If you have questions regarding the use of this file, please contact +## Nokia at qt-info@nokia.com. +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QDataStream, QTimer +from PyQt5.QtWidgets import (QApplication, QDialog, QDialogButtonBox, + QGridLayout, QLabel, QLineEdit, QMessageBox, QPushButton) +from PyQt5.QtNetwork import QLocalSocket + + +class Client(QDialog): + def __init__(self, parent=None): + super(Client, self).__init__(parent) + + self.blockSize = 0 + self.currentFortune = None + + hostLabel = QLabel("&Server name:") + self.hostLineEdit = QLineEdit("fortune") + hostLabel.setBuddy(self.hostLineEdit) + + self.statusLabel = QLabel( + "This examples requires that you run the Fortune Server " + "example as well.") + self.statusLabel.setWordWrap(True) + + self.getFortuneButton = QPushButton("Get Fortune") + self.getFortuneButton.setDefault(True) + + quitButton = QPushButton("Quit") + buttonBox = QDialogButtonBox() + buttonBox.addButton(self.getFortuneButton, QDialogButtonBox.ActionRole) + buttonBox.addButton(quitButton, QDialogButtonBox.RejectRole) + + self.socket = QLocalSocket() + + self.hostLineEdit.textChanged.connect(self.enableGetFortuneButton) + self.getFortuneButton.clicked.connect(self.requestNewFortune) + quitButton.clicked.connect(self.close) + self.socket.readyRead.connect(self.readFortune) + self.socket.error.connect(self.displayError) + + mainLayout = QGridLayout() + mainLayout.addWidget(hostLabel, 0, 0) + mainLayout.addWidget(self.hostLineEdit, 0, 1) + mainLayout.addWidget(self.statusLabel, 2, 0, 1, 2) + mainLayout.addWidget(buttonBox, 3, 0, 1, 2) + self.setLayout(mainLayout) + + self.setWindowTitle("Fortune Client") + self.hostLineEdit.setFocus() + + def requestNewFortune(self): + self.getFortuneButton.setEnabled(False) + self.blockSize = 0 + self.socket.abort() + self.socket.connectToServer(self.hostLineEdit.text()) + + def readFortune(self): + ins = QDataStream(self.socket) + ins.setVersion(QDataStream.Qt_4_0) + + if self.blockSize == 0: + if self.socket.bytesAvailable() < 2: + return + self.blockSize = ins.readUInt16() + + if ins.atEnd(): + return + + nextFortune = ins.readQString() + if nextFortune == self.currentFortune: + QTimer.singleShot(0, self.requestNewFortune) + return + + self.currentFortune = nextFortune + self.statusLabel.setText(self.currentFortune) + self.getFortuneButton.setEnabled(True) + + def displayError(self, socketError): + errors = { + QLocalSocket.ServerNotFoundError: + "The host was not found. Please check the host name and port " + "settings.", + + QLocalSocket.ConnectionRefusedError: + "The connection was refused by the peer. Make sure the " + "fortune server is running, and check that the host name and " + "port settings are correct.", + + QLocalSocket.PeerClosedError: + None, + } + + msg = errors.get(socketError, + "The following error occurred: %s." % self.socket.errorString()) + if msg is not None: + QMessageBox.information(self, "Fortune Client", msg) + + self.getFortuneButton.setEnabled(True) + + def enableGetFortuneButton(self): + self.getFortuneButton.setEnabled(self.hostLineEdit.text() != "") + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + client = Client() + client.show() + sys.exit(app.exec_()) diff --git a/examples/ipc/localfortuneserver.py b/examples/ipc/localfortuneserver.py new file mode 100755 index 0000000..0769dce --- /dev/null +++ b/examples/ipc/localfortuneserver.py @@ -0,0 +1,122 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited +## Copyright (C) 2010 Hans-Peter Jansen . +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial Usage +## Licensees holding valid Qt Commercial licenses may use this file in +## accordance with the Qt Commercial License Agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and Nokia. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 2.1 requirements +## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## In addition, as a special exception, Nokia gives you certain additional +## rights. These rights are described in the Nokia Qt LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3.0 as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL included in the +## packaging of this file. Please review the following information to +## ensure the GNU General Public License version 3.0 requirements will be +## met: http://www.gnu.org/copyleft/gpl.html. +## +## If you have questions regarding the use of this file, please contact +## Nokia at qt-info@nokia.com. +## $QT_END_LICENSE$ +## +############################################################################# + + +import random + +from PyQt5.QtCore import QByteArray, QDataStream, QIODevice +from PyQt5.QtWidgets import (QApplication, QDialog, QLabel, QHBoxLayout, + QMessageBox, QPushButton, QVBoxLayout) +from PyQt5.QtNetwork import QLocalServer + + +class Server(QDialog): + def __init__(self, parent=None): + super(Server, self).__init__(parent) + + statusLabel = QLabel() + statusLabel.setWordWrap(True) + quitButton = QPushButton("Quit") + quitButton.setAutoDefault(False) + + self.fortunes = ( + "You've been leading a dog's life. Stay off the furniture.", + "You've got to think about tomorrow.", + "You will be surprised by a loud noise.", + "You will feel hungry again in another hour.", + "You might have mail.", + "You cannot kill time without injuring eternity.", + "Computers are not intelligent. They only think they are.", + ) + + self.server = QLocalServer() + if not self.server.listen('fortune'): + QMessageBox.critical(self, "Fortune Server", + "Unable to start the server: %s." % self.server.errorString()) + self.close() + return + + statusLabel.setText("The server is running.\nRun the Fortune Client " + "example now.") + + quitButton.clicked.connect(self.close) + self.server.newConnection.connect(self.sendFortune) + + buttonLayout = QHBoxLayout() + buttonLayout.addStretch(1) + buttonLayout.addWidget(quitButton) + buttonLayout.addStretch(1) + + mainLayout = QVBoxLayout() + mainLayout.addWidget(statusLabel) + mainLayout.addLayout(buttonLayout) + self.setLayout(mainLayout) + + self.setWindowTitle("Fortune Server") + + def sendFortune(self): + block = QByteArray() + out = QDataStream(block, QIODevice.WriteOnly) + out.setVersion(QDataStream.Qt_4_0) + out.writeUInt16(0) + out.writeQString(random.choice(self.fortunes)) + out.device().seek(0) + out.writeUInt16(block.size() - 2) + + clientConnection = self.server.nextPendingConnection() + clientConnection.disconnected.connect(clientConnection.deleteLater) + clientConnection.write(block) + clientConnection.flush() + clientConnection.disconnectFromServer() + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + server = Server() + server.show() + sys.exit(app.exec_()) diff --git a/examples/ipc/sharedmemory/dialog.py b/examples/ipc/sharedmemory/dialog.py new file mode 100644 index 0000000..74bf573 --- /dev/null +++ b/examples/ipc/sharedmemory/dialog.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'dialog.ui' +# +# Created: Sun May 12 11:56:49 2013 +# by: PyQt5 UI code generator 5.0-snapshot-b0831183bf83 +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_Dialog(object): + def setupUi(self, Dialog): + Dialog.setObjectName("Dialog") + Dialog.resize(451, 322) + self.gridlayout = QtWidgets.QGridLayout(Dialog) + self.gridlayout.setObjectName("gridlayout") + self.loadFromFileButton = QtWidgets.QPushButton(Dialog) + self.loadFromFileButton.setObjectName("loadFromFileButton") + self.gridlayout.addWidget(self.loadFromFileButton, 0, 0, 1, 1) + self.label = QtWidgets.QLabel(Dialog) + self.label.setAlignment(QtCore.Qt.AlignCenter) + self.label.setWordWrap(True) + self.label.setObjectName("label") + self.gridlayout.addWidget(self.label, 1, 0, 1, 1) + self.loadFromSharedMemoryButton = QtWidgets.QPushButton(Dialog) + self.loadFromSharedMemoryButton.setObjectName("loadFromSharedMemoryButton") + self.gridlayout.addWidget(self.loadFromSharedMemoryButton, 2, 0, 1, 1) + + self.retranslateUi(Dialog) + QtCore.QMetaObject.connectSlotsByName(Dialog) + + def retranslateUi(self, Dialog): + _translate = QtCore.QCoreApplication.translate + Dialog.setWindowTitle(_translate("Dialog", "Dialog")) + self.loadFromFileButton.setText(_translate("Dialog", "Load Image From File...")) + self.label.setText(_translate("Dialog", "Launch two of these dialogs. In the first, press the top button and load an image from a file. In the second, press the bottom button and display the loaded image from shared memory.")) + self.loadFromSharedMemoryButton.setText(_translate("Dialog", "Display Image From Shared Memory")) + diff --git a/examples/ipc/sharedmemory/dialog.ui b/examples/ipc/sharedmemory/dialog.ui new file mode 100644 index 0000000..e99d6fb --- /dev/null +++ b/examples/ipc/sharedmemory/dialog.ui @@ -0,0 +1,47 @@ + + Dialog + + + + 0 + 0 + 451 + 322 + + + + Dialog + + + + + + Load Image From File... + + + + + + + Launch two of these dialogs. In the first, press the top button and load an image from a file. In the second, press the bottom button and display the loaded image from shared memory. + + + Qt::AlignCenter + + + true + + + + + + + Display Image From Shared Memory + + + + + + + + diff --git a/examples/ipc/sharedmemory/image.png b/examples/ipc/sharedmemory/image.png new file mode 100644 index 0000000000000000000000000000000000000000..dd934530636b24eabf42b5d7fc6e0e022ecb3830 GIT binary patch literal 10199 zcmWk!Wmp_L6kRBVMY}i@U7X_XwzzwN;suJkySux)ySuiy6pA|(m*VcceLrS0`EuvR zCg+}q(mlY5edPlHW8-pe=jw+H6K+PoK5j2BnC#B^G z03c)jf58AUvhe;lbdr`AM_59{L#0JIr#H6)07wDSVj^m8E2p}iUTTBg@4qLO*H3<6 zk_H8Z^1~(n>c$a6X9f{VhXKiwBQz`itQ0tOH#3+uSI^(A;9RO}M@BUJeM+jNVG{X{ zf%r)}4>xIstYE8{Y*!>fo^x5ibl>$o&GCn+YhoRYm|o~>(7NOP1dnOYwdec3EAW62 z00aa4!mc8pYVOK%ugtvIynA2DR}M2R@Hd5fJ2o^o@g0RO@9}3b&}ob96l_Dh9K5k^ zdVjw~A;@jIBXP}Fzfr<}X{PoO$|A|MXWgL-0zpQYkS0?`$a3n`b{1&mfFiWTNj^l4 zyE=YKB)Hi*-_2xS)$r^l5y2sbhiQY?qj+)KBrhrgFOJ#}jaQebbB~c1`Np$`9U;gSZ-~<8O+a)2oh*mA34N@kP6UvJWPO$9`0+ zFaXe_?9WQ&#`U>#=WflL(Hesxp%$ydmFi3giylU9>oE#CguSweeY_S3PBFm`x!l9e z)n_ptsJjVSG(A8Bvols4PL@Cr_(Snd$GI;g82>7PNksst#4<;7)ElcR>0O0ZMvFGM zqXc1Fqt#&>jycAw62U1Z?K(9~f(Y6UWJ65E+X>DC7h7Duk?*#K7K~`Q=#poxLo>Ph2Oj}ggEalZlm1m z=~=eR9@l|_;fF@MasJ-yW)y5Hc{CK+asS7>{+2q5MRrmEh?#(i)GLbc35}4IpHJXr zESqPZBYFf;JOT$KA_4-zaeqYXqqT#@34fvk+LcD<^eZ4R470e*nh4=6%GX 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 z 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. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial Usage +## Licensees holding valid Qt Commercial licenses may use this file in +## accordance with the Qt Commercial License Agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and Nokia. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 2.1 requirements +## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## In addition, as a special exception, Nokia gives you certain additional +## rights. These rights are described in the Nokia Qt LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3.0 as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL included in the +## packaging of this file. Please review the following information to +## ensure the GNU General Public License version 3.0 requirements will be +## met: http://www.gnu.org/copyleft/gpl.html. +## +## If you have questions regarding the use of this file, please contact +## Nokia at qt-info@nokia.com. +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QBuffer, QDataStream, QSharedMemory +from PyQt5.QtGui import QImage, QPixmap +from PyQt5.QtWidgets import QApplication, QDialog, QFileDialog + +from dialog import Ui_Dialog + + +class Dialog(QDialog): + """ This class is a simple example of how to use QSharedMemory. It is a + simple dialog that presents a few buttons. Run the executable twice to + create two processes running the dialog. In one of the processes, press + the button to load an image into a shared memory segment, and then select + an image file to load. Once the first process has loaded and displayed the + image, in the second process, press the button to read the same image from + shared memory. The second process displays the same image loaded from its + new location in shared memory. + + The class contains a data member sharedMemory, which is initialized with + the key "QSharedMemoryExample" to force all instances of Dialog to access + the same shared memory segment. The constructor also connects the + clicked() signal from each of the three dialog buttons to the slot function + appropriate for handling each button. + """ + + def __init__(self, parent = None): + super(Dialog, self).__init__(parent) + + self.sharedMemory = QSharedMemory('QSharedMemoryExample') + + self.ui = Ui_Dialog() + self.ui.setupUi(self) + + self.ui.loadFromFileButton.clicked.connect(self.loadFromFile) + self.ui.loadFromSharedMemoryButton.clicked.connect(self.loadFromMemory) + + self.setWindowTitle("SharedMemory Example") + + def loadFromFile(self): + """ This slot function is called when the "Load Image From File..." + button is pressed on the firs Dialog process. First, it tests whether + the process is already connected to a shared memory segment and, if so, + detaches from that segment. This ensures that we always start the + example from the beginning if we run it multiple times with the same + two Dialog processes. After detaching from an existing shared memory + segment, the user is prompted to select an image file. The selected + file is loaded into a QImage. The QImage is displayed in the Dialog + and streamed into a QBuffer with a QDataStream. Next, it gets a new + shared memory segment from the system big enough to hold the image data + in the QBuffer, and it locks the segment to prevent the second Dialog + process from accessing it. Then it copies the image from the QBuffer + into the shared memory segment. Finally, it unlocks the shared memory + segment so the second Dialog process can access it. After self + function runs, the user is expected to press the "Load Image from + Shared Memory" button on the second Dialog process. + """ + + if self.sharedMemory.isAttached(): + self.detach() + + self.ui.label.setText("Select an image file") + fileName, _ = QFileDialog.getOpenFileName(self, None, None, + "Images (*.png *.xpm *.jpg)") + image = QImage() + if not image.load(fileName): + self.ui.label.setText( + "Selected file is not an image, please select another.") + return + + self.ui.label.setPixmap(QPixmap.fromImage(image)) + + # Load into shared memory. + buf = QBuffer() + buf.open(QBuffer.ReadWrite) + out = QDataStream(buf) + out << image + size = buf.size() + + if not self.sharedMemory.create(size): + self.ui.label.setText("Unable to create shared memory segment.") + return + + size = min(self.sharedMemory.size(), size) + self.sharedMemory.lock() + + # Copy image data from buf into shared memory area. + self.sharedMemory.data()[:size] = buf.data()[:size] + self.sharedMemory.unlock() + + def loadFromMemory(self): + """ This slot function is called in the second Dialog process, when the + user presses the "Load Image from Shared Memory" button. First, it + attaches the process to the shared memory segment created by the first + Dialog process. Then it locks the segment for exclusive access, copies + the image data from the segment into a QBuffer, and streams the QBuffer + into a QImage. Then it unlocks the shared memory segment, detaches + from it, and finally displays the QImage in the Dialog. + """ + + if not self.sharedMemory.attach(): + self.ui.label.setText( + "Unable to attach to shared memory segment.\nLoad an " + "image first.") + return + + buf = QBuffer() + ins = QDataStream(buf) + image = QImage() + + self.sharedMemory.lock() + buf.setData(self.sharedMemory.constData()) + buf.open(QBuffer.ReadOnly) + ins >> image + self.sharedMemory.unlock() + self.sharedMemory.detach() + + self.ui.label.setPixmap(QPixmap.fromImage(image)) + + def detach(self): + """ This private function is called by the destructor to detach the + process from its shared memory segment. When the last process detaches + from a shared memory segment, the system releases the shared memory. + """ + + if not self.sharedMemory.detach(): + self.ui.label.setText("Unable to detach from shared memory.") + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + dialog = Dialog() + dialog.show() + sys.exit(app.exec_()) diff --git a/examples/itemviews/README b/examples/itemviews/README new file mode 100644 index 0000000..9880ddc --- /dev/null +++ b/examples/itemviews/README @@ -0,0 +1,25 @@ +Item views are widgets that typically display data sets. PyQt's model/view +framework lets you handle large data sets by separating the underlying data +from the way it is represented to the user, and provides support for +customized rendering through the use of delegates. + + +The example launcher provided with PyQt can be used to explore each of the +examples in this directory. + +Documentation for these examples can be found via the Tutorial and Examples +link in the main Qt documentation. + + +Finding the PyQt Examples and Demos launcher +============================================ + +On Windows: + +The launcher can be accessed via the Windows Start menu. Select the menu +entry entitled "Examples and Demos" entry in the submenu containing PyQt5. + +On all platforms: + +The source code for the launcher can be found in the examples/demos/qtdemo +directory in the PyQt package. diff --git a/examples/itemviews/basicsortfiltermodel.py b/examples/itemviews/basicsortfiltermodel.py new file mode 100755 index 0000000..9dd2977 --- /dev/null +++ b/examples/itemviews/basicsortfiltermodel.py @@ -0,0 +1,226 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (QDate, QDateTime, QRegExp, QSortFilterProxyModel, Qt, + QTime) +from PyQt5.QtGui import QStandardItemModel +from PyQt5.QtWidgets import (QApplication, QCheckBox, QComboBox, QGridLayout, + QGroupBox, QHBoxLayout, QLabel, QLineEdit, QTreeView, QVBoxLayout, + QWidget) + + +SUBJECT, SENDER, DATE = range(3) + +# Work around the fact that QSortFilterProxyModel always filters datetime +# values in QtCore.Qt.ISODate format, but the tree views display using +# QtCore.Qt.DefaultLocaleShortDate format. +class SortFilterProxyModel(QSortFilterProxyModel): + def filterAcceptsRow(self, sourceRow, sourceParent): + # Do we filter for the date column? + if self.filterKeyColumn() == DATE: + # Fetch datetime value. + index = self.sourceModel().index(sourceRow, DATE, sourceParent) + data = self.sourceModel().data(index) + + # Return, if regExp match in displayed format. + return (self.filterRegExp().indexIn(data.toString(Qt.DefaultLocaleShortDate)) >= 0) + + # Not our business. + return super(SortFilterProxyModel, self).filterAcceptsRow(sourceRow, sourceParent) + + +class Window(QWidget): + def __init__(self): + super(Window, self).__init__() + + self.proxyModel = SortFilterProxyModel() + self.proxyModel.setDynamicSortFilter(True) + + self.sourceGroupBox = QGroupBox("Original Model") + self.proxyGroupBox = QGroupBox("Sorted/Filtered Model") + + self.sourceView = QTreeView() + self.sourceView.setRootIsDecorated(False) + self.sourceView.setAlternatingRowColors(True) + + self.proxyView = QTreeView() + self.proxyView.setRootIsDecorated(False) + self.proxyView.setAlternatingRowColors(True) + self.proxyView.setModel(self.proxyModel) + self.proxyView.setSortingEnabled(True) + + self.sortCaseSensitivityCheckBox = QCheckBox("Case sensitive sorting") + self.filterCaseSensitivityCheckBox = QCheckBox("Case sensitive filter") + + self.filterPatternLineEdit = QLineEdit() + self.filterPatternLabel = QLabel("&Filter pattern:") + self.filterPatternLabel.setBuddy(self.filterPatternLineEdit) + + self.filterSyntaxComboBox = QComboBox() + self.filterSyntaxComboBox.addItem("Regular expression", QRegExp.RegExp) + self.filterSyntaxComboBox.addItem("Wildcard", QRegExp.Wildcard) + self.filterSyntaxComboBox.addItem("Fixed string", QRegExp.FixedString) + self.filterSyntaxLabel = QLabel("Filter &syntax:") + self.filterSyntaxLabel.setBuddy(self.filterSyntaxComboBox) + + self.filterColumnComboBox = QComboBox() + self.filterColumnComboBox.addItem("Subject") + self.filterColumnComboBox.addItem("Sender") + self.filterColumnComboBox.addItem("Date") + self.filterColumnLabel = QLabel("Filter &column:") + self.filterColumnLabel.setBuddy(self.filterColumnComboBox) + + self.filterPatternLineEdit.textChanged.connect(self.filterRegExpChanged) + self.filterSyntaxComboBox.currentIndexChanged.connect(self.filterRegExpChanged) + self.filterColumnComboBox.currentIndexChanged.connect(self.filterColumnChanged) + self.filterCaseSensitivityCheckBox.toggled.connect(self.filterRegExpChanged) + self.sortCaseSensitivityCheckBox.toggled.connect(self.sortChanged) + + sourceLayout = QHBoxLayout() + sourceLayout.addWidget(self.sourceView) + self.sourceGroupBox.setLayout(sourceLayout) + + proxyLayout = QGridLayout() + proxyLayout.addWidget(self.proxyView, 0, 0, 1, 3) + proxyLayout.addWidget(self.filterPatternLabel, 1, 0) + proxyLayout.addWidget(self.filterPatternLineEdit, 1, 1, 1, 2) + proxyLayout.addWidget(self.filterSyntaxLabel, 2, 0) + proxyLayout.addWidget(self.filterSyntaxComboBox, 2, 1, 1, 2) + proxyLayout.addWidget(self.filterColumnLabel, 3, 0) + proxyLayout.addWidget(self.filterColumnComboBox, 3, 1, 1, 2) + proxyLayout.addWidget(self.filterCaseSensitivityCheckBox, 4, 0, 1, 2) + proxyLayout.addWidget(self.sortCaseSensitivityCheckBox, 4, 2) + self.proxyGroupBox.setLayout(proxyLayout) + + mainLayout = QVBoxLayout() + mainLayout.addWidget(self.sourceGroupBox) + mainLayout.addWidget(self.proxyGroupBox) + self.setLayout(mainLayout) + + self.setWindowTitle("Basic Sort/Filter Model") + self.resize(500, 450) + + self.proxyView.sortByColumn(SENDER, Qt.AscendingOrder) + self.filterColumnComboBox.setCurrentIndex(SENDER) + + self.filterPatternLineEdit.setText("Andy|Grace") + self.filterCaseSensitivityCheckBox.setChecked(True) + self.sortCaseSensitivityCheckBox.setChecked(True) + + def setSourceModel(self, model): + self.proxyModel.setSourceModel(model) + self.sourceView.setModel(model) + + def filterRegExpChanged(self): + syntax_nr = self.filterSyntaxComboBox.itemData(self.filterSyntaxComboBox.currentIndex()) + syntax = QRegExp.PatternSyntax(syntax_nr) + + if self.filterCaseSensitivityCheckBox.isChecked(): + caseSensitivity = Qt.CaseSensitive + else: + caseSensitivity = Qt.CaseInsensitive + + regExp = QRegExp(self.filterPatternLineEdit.text(), + caseSensitivity, syntax) + self.proxyModel.setFilterRegExp(regExp) + + def filterColumnChanged(self): + self.proxyModel.setFilterKeyColumn(self.filterColumnComboBox.currentIndex()) + + def sortChanged(self): + if self.sortCaseSensitivityCheckBox.isChecked(): + caseSensitivity = Qt.CaseSensitive + else: + caseSensitivity = Qt.CaseInsensitive + + self.proxyModel.setSortCaseSensitivity(caseSensitivity) + + +def addMail(model, subject, sender, date): + model.insertRow(0) + model.setData(model.index(0, SUBJECT), subject) + model.setData(model.index(0, SENDER), sender) + model.setData(model.index(0, DATE), date) + + +def createMailModel(parent): + model = QStandardItemModel(0, 3, parent) + + model.setHeaderData(SUBJECT, Qt.Horizontal, "Subject") + model.setHeaderData(SENDER, Qt.Horizontal, "Sender") + model.setHeaderData(DATE, Qt.Horizontal, "Date") + + addMail(model, "Happy New Year!", "Grace K. ", + QDateTime(QDate(2006, 12, 31), QTime(17, 3))) + addMail(model, "Radically new concept", "Grace K. ", + QDateTime(QDate(2006, 12, 22), QTime(9, 44))) + addMail(model, "Accounts", "pascale@nospam.com", + QDateTime(QDate(2006, 12, 31), QTime(12, 50))) + addMail(model, "Expenses", "Joe Bloggs ", + QDateTime(QDate(2006, 12, 25), QTime(11, 39))) + addMail(model, "Re: Expenses", "Andy ", + QDateTime(QDate(2007, 1, 2), QTime(16, 5))) + addMail(model, "Re: Accounts", "Joe Bloggs ", + QDateTime(QDate(2007, 1, 3), QTime(14, 18))) + addMail(model, "Re: Accounts", "Andy ", + QDateTime(QDate(2007, 1, 3), QTime(14, 26))) + addMail(model, "Sports", "Linda Smith ", + QDateTime(QDate(2007, 1, 5), QTime(11, 33))) + addMail(model, "AW: Sports", "Rolf Newschweinstein ", + QDateTime(QDate(2007, 1, 5), QTime(12, 0))) + addMail(model, "RE: Sports", "Petra Schmidt ", + QDateTime(QDate(2007, 1, 5), QTime(12, 1))) + + return model + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + window = Window() + window.setSourceModel(createMailModel(window)) + window.show() + sys.exit(app.exec_()) diff --git a/examples/itemviews/chart/chart.py b/examples/itemviews/chart/chart.py new file mode 100755 index 0000000..bb2c623 --- /dev/null +++ b/examples/itemviews/chart/chart.py @@ -0,0 +1,589 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2017 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import math + +from PyQt5.QtCore import (QByteArray, QFile, QItemSelection, + QItemSelectionModel, QModelIndex, QPoint, QRect, QSize, Qt, + QTextStream) +from PyQt5.QtGui import (QBrush, QColor, QFontMetrics, QPainter, QPainterPath, + QPalette, QPen, QRegion, QStandardItemModel) +from PyQt5.QtWidgets import (QAbstractItemView, QApplication, QFileDialog, + QMainWindow, QMenu, QRubberBand, QSplitter, QStyle, QTableView) + +import chart_rc + + +class PieView(QAbstractItemView): + def __init__(self, parent=None): + super(PieView, self).__init__(parent) + + self.horizontalScrollBar().setRange(0, 0) + self.verticalScrollBar().setRange(0, 0) + + self.margin = 8 + self.totalSize = 300 + self.pieSize = self.totalSize - 2*self.margin + self.validItems = 0 + self.totalValue = 0.0 + self.origin = QPoint() + self.rubberBand = None + + def dataChanged(self, topLeft, bottomRight, roles): + super(PieView, self).dataChanged(topLeft, bottomRight, roles) + + self.validItems = 0 + self.totalValue = 0.0 + + for row in range(self.model().rowCount(self.rootIndex())): + + index = self.model().index(row, 1, self.rootIndex()) + value = self.model().data(index) + + if value is not None and value > 0.0: + self.totalValue += value + self.validItems += 1 + + self.viewport().update() + + def edit(self, index, trigger, event): + if index.column() == 0: + return super(PieView, self).edit(index, trigger, event) + else: + return False + + def indexAt(self, point): + if self.validItems == 0: + return QModelIndex() + + # Transform the view coordinates into contents widget coordinates. + wx = point.x() + self.horizontalScrollBar().value() + wy = point.y() + self.verticalScrollBar().value() + + if wx < self.totalSize: + cx = wx - self.totalSize/2 + cy = self.totalSize/2 - wy; # positive cy for items above the center + + # Determine the distance from the center point of the pie chart. + d = (cx**2 + cy**2)**0.5 + + if d == 0 or d > self.pieSize/2: + return QModelIndex() + + # Determine the angle of the point. + angle = (180 / math.pi) * math.acos(cx/d) + if cy < 0: + angle = 360 - angle + + # Find the relevant slice of the pie. + startAngle = 0.0 + + for row in range(self.model().rowCount(self.rootIndex())): + + index = self.model().index(row, 1, self.rootIndex()) + value = self.model().data(index) + + if value > 0.0: + sliceAngle = 360*value/self.totalValue + + if angle >= startAngle and angle < (startAngle + sliceAngle): + return self.model().index(row, 1, self.rootIndex()) + + startAngle += sliceAngle + + else: + itemHeight = QFontMetrics(self.viewOptions().font).height() + listItem = int((wy - self.margin) / itemHeight) + validRow = 0 + + for row in range(self.model().rowCount(self.rootIndex())): + + index = self.model().index(row, 1, self.rootIndex()) + if self.model().data(index) > 0.0: + + if listItem == validRow: + return self.model().index(row, 0, self.rootIndex()) + + # Update the list index that corresponds to the next valid + # row. + validRow += 1 + + return QModelIndex() + + def isIndexHidden(self, index): + return False + + def itemRect(self, index): + if not index.isValid(): + return QRect() + + # Check whether the index's row is in the list of rows represented + # by slices. + + if index.column() != 1: + valueIndex = self.model().index(index.row(), 1, self.rootIndex()) + else: + valueIndex = index + + value = self.model().data(valueIndex) + if value is not None and value > 0.0: + + listItem = 0 + for row in range(index.row()-1, -1, -1): + if self.model().data(self.model().index(row, 1, self.rootIndex())) > 0.0: + listItem += 1 + + if index.column() == 0: + + itemHeight = QFontMetrics(self.viewOptions().font).height() + return QRect(self.totalSize, + int(self.margin + listItem*itemHeight), + self.totalSize - self.margin, int(itemHeight)) + elif index.column() == 1: + return self.viewport().rect() + + return QRect() + + def itemRegion(self, index): + if not index.isValid(): + return QRegion() + + if index.column() != 1: + return QRegion(self.itemRect(index)) + + if self.model().data(index) <= 0.0: + return QRegion() + + startAngle = 0.0 + for row in range(self.model().rowCount(self.rootIndex())): + + sliceIndex = self.model().index(row, 1, self.rootIndex()) + value = self.model().data(sliceIndex) + + if value > 0.0: + angle = 360*value/self.totalValue + + if sliceIndex == index: + slicePath = QPainterPath() + slicePath.moveTo(self.totalSize/2, self.totalSize/2) + slicePath.arcTo(self.margin, self.margin, + self.margin+self.pieSize, self.margin+self.pieSize, + startAngle, angle) + slicePath.closeSubpath() + + return QRegion(slicePath.toFillPolygon().toPolygon()) + + startAngle += angle + + return QRegion() + + def horizontalOffset(self): + return self.horizontalScrollBar().value() + + def mousePressEvent(self, event): + super(PieView, self).mousePressEvent(event) + + self.origin = event.pos() + if not self.rubberBand: + self.rubberBand = QRubberBand(QRubberBand.Rectangle, self) + self.rubberBand.setGeometry(QRect(self.origin, QSize())) + self.rubberBand.show() + + def mouseMoveEvent(self, event): + if self.rubberBand: + self.rubberBand.setGeometry(QRect(self.origin, event.pos()).normalized()) + + super(PieView, self).mouseMoveEvent(event) + + def mouseReleaseEvent(self, event): + super(PieView, self).mouseReleaseEvent(event) + + if self.rubberBand: + self.rubberBand.hide() + + self.viewport().update() + + def moveCursor(self, cursorAction, modifiers): + current = self.currentIndex() + + if cursorAction in (QAbstractItemView.MoveLeft, QAbstractItemView.MoveUp): + + if current.row() > 0: + current = self.model().index(current.row() - 1, + current.column(), self.rootIndex()) + else: + current = self.model().index(0, current.column(), + self.rootIndex()) + + elif cursorAction in (QAbstractItemView.MoveRight, QAbstractItemView.MoveDown): + + if current.row() < self.rows(current) - 1: + current = self.model().index(current.row() + 1, + current.column(), self.rootIndex()) + else: + current = self.model().index(self.rows(current) - 1, + current.column(), self.rootIndex()) + + self.viewport().update() + return current + + def paintEvent(self, event): + selections = self.selectionModel() + option = self.viewOptions() + state = option.state + + background = option.palette.base() + foreground = QPen(option.palette.color(QPalette.WindowText)) + textPen = QPen(option.palette.color(QPalette.Text)) + highlightedPen = QPen(option.palette.color(QPalette.HighlightedText)) + + painter = QPainter(self.viewport()) + painter.setRenderHint(QPainter.Antialiasing) + + painter.fillRect(event.rect(), background) + painter.setPen(foreground) + + # Viewport rectangles + pieRect = QRect(self.margin, self.margin, self.pieSize, + self.pieSize) + keyPoint = QPoint(self.totalSize - self.horizontalScrollBar().value(), + self.margin - self.verticalScrollBar().value()) + + if self.validItems > 0: + painter.save() + painter.translate(pieRect.x() - self.horizontalScrollBar().value(), + pieRect.y() - self.verticalScrollBar().value()) + painter.drawEllipse(0, 0, self.pieSize, self.pieSize) + startAngle = 0.0 + + for row in range(self.model().rowCount(self.rootIndex())): + + index = self.model().index(row, 1, self.rootIndex()) + value = self.model().data(index) + + if value > 0.0: + angle = 360*value/self.totalValue + + colorIndex = self.model().index(row, 0, self.rootIndex()) + color = self.model().data(colorIndex, Qt.DecorationRole) + + if self.currentIndex() == index: + painter.setBrush(QBrush(color, Qt.Dense4Pattern)) + elif selections.isSelected(index): + painter.setBrush(QBrush(color, Qt.Dense3Pattern)) + else: + painter.setBrush(QBrush(color)) + + painter.drawPie(0, 0, self.pieSize, self.pieSize, + int(startAngle*16), int(angle*16)) + + startAngle += angle + + painter.restore() + + keyNumber = 0 + + for row in range(self.model().rowCount(self.rootIndex())): + index = self.model().index(row, 1, self.rootIndex()) + value = self.model().data(index) + + if value > 0.0: + labelIndex = self.model().index(row, 0, self.rootIndex()) + + option = self.viewOptions() + option.rect = self.visualRect(labelIndex) + if selections.isSelected(labelIndex): + option.state |= QStyle.State_Selected + if self.currentIndex() == labelIndex: + option.state |= QStyle.State_HasFocus + self.itemDelegate().paint(painter, option, labelIndex) + + keyNumber += 1 + + def resizeEvent(self, event): + self.updateGeometries() + + def rows(self, index): + return self.model().rowCount(self.model().parent(index)) + + def rowsInserted(self, parent, start, end): + for row in range(start, end + 1): + index = self.model().index(row, 1, self.rootIndex()) + value = self.model().data(index) + + if value is not None and value > 0.0: + self.totalValue += value + self.validItems += 1 + + super(PieView, self).rowsInserted(parent, start, end) + + def rowsAboutToBeRemoved(self, parent, start, end): + for row in range(start, end + 1): + index = self.model().index(row, 1, self.rootIndex()) + value = self.model().data(index) + + if value is not None and value > 0.0: + self.totalValue -= value + self.validItems -= 1 + + super(PieView, self).rowsAboutToBeRemoved(parent, start, end) + + def scrollContentsBy(self, dx, dy): + self.viewport().scroll(dx, dy) + + def scrollTo(self, index, ScrollHint): + area = self.viewport().rect() + rect = self.visualRect(index) + + if rect.left() < area.left(): + self.horizontalScrollBar().setValue( + self.horizontalScrollBar().value() + rect.left() - area.left()) + elif rect.right() > area.right(): + self.horizontalScrollBar().setValue( + self.horizontalScrollBar().value() + min( + rect.right() - area.right(), rect.left() - area.left())) + + if rect.top() < area.top(): + self.verticalScrollBar().setValue( + self.verticalScrollBar().value() + rect.top() - area.top()) + elif rect.bottom() > area.bottom(): + self.verticalScrollBar().setValue( + self.verticalScrollBar().value() + min( + rect.bottom() - area.bottom(), rect.top() - area.top())) + + def setSelection(self, rect, command): + # Use content widget coordinates because we will use the itemRegion() + # function to check for intersections. + + contentsRect = rect.translated(self.horizontalScrollBar().value(), + self.verticalScrollBar().value()).normalized() + + rows = self.model().rowCount(self.rootIndex()) + columns = self.model().columnCount(self.rootIndex()) + indexes = [] + + for row in range(rows): + for column in range(columns): + index = self.model().index(row, column, self.rootIndex()) + region = self.itemRegion(index) + if region.intersects(QRegion(contentsRect)): + indexes.append(index) + + if len(indexes) > 0: + firstRow = indexes[0].row() + lastRow = indexes[0].row() + firstColumn = indexes[0].column() + lastColumn = indexes[0].column() + + for i in range(1, len(indexes)): + firstRow = min(firstRow, indexes[i].row()) + lastRow = max(lastRow, indexes[i].row()) + firstColumn = min(firstColumn, indexes[i].column()) + lastColumn = max(lastColumn, indexes[i].column()) + + selection = QItemSelection( + self.model().index(firstRow, firstColumn, self.rootIndex()), + self.model().index(lastRow, lastColumn, self.rootIndex())) + self.selectionModel().select(selection, command) + else: + noIndex = QModelIndex() + selection = QItemSelection(noIndex, noIndex) + self.selectionModel().select(selection, command) + + self.update() + + def updateGeometries(self): + self.horizontalScrollBar().setPageStep(self.viewport().width()) + self.horizontalScrollBar().setRange(0, max(0, 2*self.totalSize - self.viewport().width())) + self.verticalScrollBar().setPageStep(self.viewport().height()) + self.verticalScrollBar().setRange(0, max(0, self.totalSize - self.viewport().height())) + + def verticalOffset(self): + return self.verticalScrollBar().value() + + def visualRect(self, index): + rect = self.itemRect(index) + if rect.isValid(): + return QRect(rect.left() - self.horizontalScrollBar().value(), + rect.top() - self.verticalScrollBar().value(), + rect.width(), rect.height()) + else: + return rect + + def visualRegionForSelection(self, selection): + region = QRegion() + + for span in selection: + for row in range(span.top(), span.bottom() + 1): + for col in range(span.left(), span.right() + 1): + index = self.model().index(row, col, self.rootIndex()) + region += self.visualRect(index) + + return region + + +class MainWindow(QMainWindow): + def __init__(self): + super(MainWindow, self).__init__() + + fileMenu = QMenu("&File", self) + openAction = fileMenu.addAction("&Open...") + openAction.setShortcut("Ctrl+O") + saveAction = fileMenu.addAction("&Save As...") + saveAction.setShortcut("Ctrl+S") + quitAction = fileMenu.addAction("E&xit") + quitAction.setShortcut("Ctrl+Q") + + self.setupModel() + self.setupViews() + + openAction.triggered.connect(self.openFile) + saveAction.triggered.connect(self.saveFile) + quitAction.triggered.connect(QApplication.instance().quit) + + self.menuBar().addMenu(fileMenu) + self.statusBar() + + self.openFile(':/Charts/qtdata.cht') + + self.setWindowTitle("Chart") + self.resize(870, 550) + + def setupModel(self): + self.model = QStandardItemModel(8, 2, self) + self.model.setHeaderData(0, Qt.Horizontal, "Label") + self.model.setHeaderData(1, Qt.Horizontal, "Quantity") + + def setupViews(self): + splitter = QSplitter() + table = QTableView() + self.pieChart = PieView() + splitter.addWidget(table) + splitter.addWidget(self.pieChart) + splitter.setStretchFactor(0, 0) + splitter.setStretchFactor(1, 1) + + table.setModel(self.model) + self.pieChart.setModel(self.model) + + self.selectionModel = QItemSelectionModel(self.model) + table.setSelectionModel(self.selectionModel) + self.pieChart.setSelectionModel(self.selectionModel) + + table.horizontalHeader().setStretchLastSection(True) + + self.setCentralWidget(splitter) + + def openFile(self, path=None): + if not path: + path, _ = QFileDialog.getOpenFileName(self, "Choose a data file", + '', '*.cht') + + if path: + f = QFile(path) + + if f.open(QFile.ReadOnly | QFile.Text): + stream = QTextStream(f) + + self.model.removeRows(0, self.model.rowCount(QModelIndex()), + QModelIndex()) + + row = 0 + line = stream.readLine() + while line: + self.model.insertRows(row, 1, QModelIndex()) + + pieces = line.split(',') + self.model.setData(self.model.index(row, 0, QModelIndex()), + pieces[0]) + self.model.setData(self.model.index(row, 1, QModelIndex()), + float(pieces[1])) + self.model.setData(self.model.index(row, 0, QModelIndex()), + QColor(pieces[2]), Qt.DecorationRole) + + row += 1 + line = stream.readLine() + + f.close() + self.statusBar().showMessage("Loaded %s" % path, 2000) + + def saveFile(self): + fileName, _ = QFileDialog.getSaveFileName(self, "Save file as", '', + '*.cht') + + if fileName: + f = QFile(fileName) + + if f.open(QFile.WriteOnly | QFile.Text): + for row in range(self.model.rowCount(QModelIndex())): + pieces = [] + + pieces.append( + self.model.data( + self.model.index(row, 0, QModelIndex()), + Qt.DisplayRole)) + pieces.append( + '%g' % self.model.data( + self.model.index(row, 1, QModelIndex()), + Qt.DisplayRole)) + pieces.append( + self.model.data( + self.model.index(row, 0, QModelIndex()), + Qt.DecorationRole).name()) + + f.write(b','.join([p.encode('utf-8') for p in pieces])) + f.write(b'\n') + + f.close() + self.statusBar().showMessage("Saved %s" % fileName, 2000) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + window = MainWindow() + window.show() + sys.exit(app.exec_()) diff --git a/examples/itemviews/chart/chart.qrc b/examples/itemviews/chart/chart.qrc new file mode 100644 index 0000000..7401d4d --- /dev/null +++ b/examples/itemviews/chart/chart.qrc @@ -0,0 +1,5 @@ + + + qtdata.cht + + diff --git a/examples/itemviews/chart/chart_rc.py b/examples/itemviews/chart/chart_rc.py new file mode 100644 index 0000000..51506c9 --- /dev/null +++ b/examples/itemviews/chart/chart_rc.py @@ -0,0 +1,65 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sun May 12 12:14:11 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x01\x90\ +\x53\ +\x63\x69\x65\x6e\x74\x69\x66\x69\x63\x20\x52\x65\x73\x65\x61\x72\ +\x63\x68\x2c\x32\x31\x2c\x23\x39\x39\x65\x36\x30\x30\x0a\x45\x6e\ +\x67\x69\x6e\x65\x65\x72\x69\x6e\x67\x20\x26\x20\x44\x65\x73\x69\ +\x67\x6e\x2c\x31\x38\x2c\x23\x39\x39\x63\x63\x30\x30\x0a\x41\x75\ +\x74\x6f\x6d\x6f\x74\x69\x76\x65\x2c\x31\x34\x2c\x23\x39\x39\x62\ +\x33\x30\x30\x0a\x41\x65\x72\x6f\x73\x70\x61\x63\x65\x2c\x31\x33\ +\x2c\x23\x39\x66\x39\x39\x31\x61\x0a\x41\x75\x74\x6f\x6d\x61\x74\ +\x69\x6f\x6e\x20\x26\x20\x4d\x61\x63\x68\x69\x6e\x65\x20\x54\x6f\ +\x6f\x6c\x73\x2c\x31\x33\x2c\x23\x61\x34\x38\x30\x33\x33\x0a\x4d\ +\x65\x64\x69\x63\x61\x6c\x20\x26\x20\x42\x69\x6f\x69\x6e\x66\x6f\ +\x72\x6d\x61\x74\x69\x63\x73\x2c\x31\x33\x2c\x23\x61\x39\x36\x36\ +\x34\x64\x0a\x49\x6d\x61\x67\x69\x6e\x67\x20\x26\x20\x53\x70\x65\ +\x63\x69\x61\x6c\x20\x45\x66\x66\x65\x63\x74\x73\x2c\x31\x32\x2c\ +\x23\x61\x65\x34\x64\x36\x36\x0a\x44\x65\x66\x65\x6e\x73\x65\x2c\ +\x31\x31\x2c\x23\x62\x33\x33\x33\x38\x30\x0a\x54\x65\x73\x74\x20\ +\x26\x20\x4d\x65\x61\x73\x75\x72\x65\x6d\x65\x6e\x74\x20\x53\x79\ +\x73\x74\x65\x6d\x73\x2c\x39\x2c\x23\x61\x36\x34\x30\x38\x36\x0a\ +\x4f\x69\x6c\x20\x26\x20\x47\x61\x73\x2c\x39\x2c\x23\x39\x39\x34\ +\x64\x38\x64\x0a\x45\x6e\x74\x65\x72\x74\x61\x69\x6e\x6d\x65\x6e\ +\x74\x20\x26\x20\x42\x72\x6f\x61\x64\x63\x61\x73\x74\x69\x6e\x67\ +\x2c\x37\x2c\x23\x38\x64\x35\x61\x39\x33\x0a\x46\x69\x6e\x61\x6e\ +\x63\x69\x61\x6c\x2c\x36\x2c\x23\x38\x30\x36\x36\x39\x39\x0a\x43\ +\x6f\x6e\x73\x75\x6d\x65\x72\x20\x45\x6c\x65\x63\x74\x72\x6f\x6e\ +\x69\x63\x73\x2c\x34\x2c\x23\x38\x30\x37\x33\x61\x36\x0a\x4f\x74\ +\x68\x65\x72\x2c\x33\x38\x2c\x23\x38\x30\x38\x30\x62\x33\x0a\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x04\x9e\x89\xb3\ +\x00\x43\ +\x00\x68\x00\x61\x00\x72\x00\x74\x00\x73\ +\x00\x0a\ +\x08\xaf\x5c\xb4\ +\x00\x71\ +\x00\x74\x00\x64\x00\x61\x00\x74\x00\x61\x00\x2e\x00\x63\x00\x68\x00\x74\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\ +\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() diff --git a/examples/itemviews/chart/mydata.cht b/examples/itemviews/chart/mydata.cht new file mode 100644 index 0000000..029fd81 --- /dev/null +++ b/examples/itemviews/chart/mydata.cht @@ -0,0 +1,8 @@ +London,4,red +Stockholm,5,pink +Paris,2,lightgreen +Rome,11,green +Lisbon,9,blue +Madrid,8,lightblue +Berlin,6,magenta +Vienna,7,purple diff --git a/examples/itemviews/chart/qtdata.cht b/examples/itemviews/chart/qtdata.cht new file mode 100644 index 0000000..6386246 --- /dev/null +++ b/examples/itemviews/chart/qtdata.cht @@ -0,0 +1,14 @@ +Scientific Research,21,#99e600 +Engineering & Design,18,#99cc00 +Automotive,14,#99b300 +Aerospace,13,#9f991a +Automation & Machine Tools,13,#a48033 +Medical & Bioinformatics,13,#a9664d +Imaging & Special Effects,12,#ae4d66 +Defense,11,#b33380 +Test & Measurement Systems,9,#a64086 +Oil & Gas,9,#994d8d +Entertainment & Broadcasting,7,#8d5a93 +Financial,6,#806699 +Consumer Electronics,4,#8073a6 +Other,38,#8080b3 diff --git a/examples/itemviews/coloreditorfactory.py b/examples/itemviews/coloreditorfactory.py new file mode 100755 index 0000000..e6fdd1f --- /dev/null +++ b/examples/itemviews/coloreditorfactory.py @@ -0,0 +1,128 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited +## Copyright (C) 2010 Hans-Peter Jansen . +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import pyqtProperty, Qt, QVariant +from PyQt5.QtGui import QColor +from PyQt5.QtWidgets import (QApplication, QComboBox, QGridLayout, + QItemEditorCreatorBase, QItemEditorFactory, QTableWidget, + QTableWidgetItem, QWidget) + + +class ColorListEditor(QComboBox): + def __init__(self, widget=None): + super(ColorListEditor, self).__init__(widget) + + self.populateList() + + def getColor(self): + color = self.itemData(self.currentIndex(), Qt.DecorationRole) + return color + + def setColor(self, color): + self.setCurrentIndex(self.findData(color, Qt.DecorationRole)) + + color = pyqtProperty(QColor, getColor, setColor, user=True) + + def populateList(self): + for i, colorName in enumerate(QColor.colorNames()): + color = QColor(colorName) + self.insertItem(i, colorName) + self.setItemData(i, color, Qt.DecorationRole) + + +class ColorListItemEditorCreator(QItemEditorCreatorBase): + def createWidget(self, parent): + return ColorListEditor(parent) + + +class Window(QWidget): + def __init__(self, parent=None): + super(Window, self).__init__(parent) + + factory = QItemEditorFactory() + factory.registerEditor(QVariant.Color, ColorListItemEditorCreator()) + QItemEditorFactory.setDefaultFactory(factory) + + self.createGUI() + + def createGUI(self): + tableData = [ + ("Alice", QColor('aliceblue')), + ("Neptun", QColor('aquamarine')), + ("Ferdinand", QColor('springgreen')) + ] + + table = QTableWidget(3, 2) + table.setHorizontalHeaderLabels(["Name", "Hair Color"]) + table.verticalHeader().setVisible(False) + table.resize(150, 50) + + for i, (name, color) in enumerate(tableData): + nameItem = QTableWidgetItem(name) + colorItem = QTableWidgetItem() + colorItem.setData(Qt.DisplayRole, color) + table.setItem(i, 0, nameItem) + table.setItem(i, 1, colorItem) + + table.resizeColumnToContents(0) + table.horizontalHeader().setStretchLastSection(True) + + layout = QGridLayout() + layout.addWidget(table, 0, 0) + self.setLayout(layout) + + self.setWindowTitle("Color Editor Factory") + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + window = Window() + window.show() + + sys.exit(app.exec_()) diff --git a/examples/itemviews/combowidgetmapper.py b/examples/itemviews/combowidgetmapper.py new file mode 100755 index 0000000..1dc768a --- /dev/null +++ b/examples/itemviews/combowidgetmapper.py @@ -0,0 +1,135 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2017 Riverbank Computing Limited +## Copyright (C) 2017 Hans-Peter Jansen . +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QStringListModel +from PyQt5.QtGui import QStandardItem, QStandardItemModel +from PyQt5.QtWidgets import (QApplication, QComboBox, QDataWidgetMapper, + QGridLayout, QLabel, QLineEdit, QPushButton, QTextEdit, QWidget) + + +class Window(QWidget): + def __init__(self, parent=None): + super(Window, self).__init__(parent) + + # Set up the model. + self.setupModel() + + # Set up the widgets. + nameLabel = QLabel("Na&me:") + nameEdit = QLineEdit() + addressLabel = QLabel("&Address:") + addressEdit = QTextEdit() + typeLabel = QLabel("&Type:") + typeComboBox = QComboBox() + self.nextButton = QPushButton("&Next") + self.previousButton = QPushButton("&Previous") + + nameLabel.setBuddy(nameEdit) + addressLabel.setBuddy(addressEdit) + typeLabel.setBuddy(typeComboBox) + + typeComboBox.setModel(self.typeModel) + + # Set up the mapper. + self.mapper = QDataWidgetMapper(self) + self.mapper.setModel(self.model) + self.mapper.addMapping(nameEdit, 0) + self.mapper.addMapping(addressEdit, 1) + self.mapper.addMapping(typeComboBox, 2, b'currentIndex') + + # Set up connections and layouts. + self.previousButton.clicked.connect(self.mapper.toPrevious) + self.nextButton.clicked.connect(self.mapper.toNext) + self.mapper.currentIndexChanged.connect(self.updateButtons) + + layout = QGridLayout() + layout.addWidget(nameLabel, 0, 0, 1, 1) + layout.addWidget(nameEdit, 0, 1, 1, 1) + layout.addWidget(self.previousButton, 0, 2, 1, 1) + layout.addWidget(addressLabel, 1, 0, 1, 1) + layout.addWidget(addressEdit, 1, 1, 2, 1) + layout.addWidget(self.nextButton, 1, 2, 1, 1) + layout.addWidget(typeLabel, 3, 0, 1, 1) + layout.addWidget(typeComboBox, 3, 1, 1, 1) + self.setLayout(layout) + + self.setWindowTitle("Delegate Widget Mapper") + self.mapper.toFirst() + + def setupModel(self): + items = ("Home", "Work", "Other") + self.typeModel = QStringListModel(items, self) + + self.model = QStandardItemModel(5, 3, self) + + names = ("Alice", "Bob", "Carol", "Donald", "Emma") + addresses = ("123 Main Street
    Market Town
    ", + "PO Box 32
    Mail Handling Service" + "
    Service City
    ", + "The Lighthouse
    Remote Island
    ", + "47338 Park Avenue
    Big City
    ", + "Research Station
    Base Camp
    Big Mountain
    ") + types = ("0", "1", "2", "0", "2") + + for row, name in enumerate(names): + self.model.setItem(row, 0, QStandardItem(name)) + self.model.setItem(row, 1, QStandardItem(addresses[row])) + self.model.setItem(row, 2, QStandardItem(types[row])) + + def updateButtons(self, row): + self.previousButton.setEnabled(row > 0) + self.nextButton.setEnabled(row < self.model.rowCount() - 1) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + window = Window() + window.show() + + sys.exit(app.exec_()) diff --git a/examples/itemviews/customsortfiltermodel.py b/examples/itemviews/customsortfiltermodel.py new file mode 100755 index 0000000..8ec1e81 --- /dev/null +++ b/examples/itemviews/customsortfiltermodel.py @@ -0,0 +1,248 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited +## Copyright (C) 2010 Hans-Peter Jansen . +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (QDate, QDateTime, QRegExp, QSortFilterProxyModel, Qt, + QTime) +from PyQt5.QtGui import QStandardItemModel +from PyQt5.QtWidgets import (QApplication, QCheckBox, QComboBox, QDateEdit, + QGridLayout, QGroupBox, QHBoxLayout, QLabel, QLineEdit, QTreeView, + QVBoxLayout, QWidget) + + +class MySortFilterProxyModel(QSortFilterProxyModel): + def __init__(self, parent=None): + super(MySortFilterProxyModel, self).__init__(parent) + + self.minDate = QDate() + self.maxDate = QDate() + + def setFilterMinimumDate(self, date): + self.minDate = date + self.invalidateFilter() + + def filterMinimumDate(self): + return self.minDate + + def setFilterMaximumDate(self, date): + self.maxDate = date + self.invalidateFilter() + + def filterMaximumDate(self): + return self.maxDate + + def filterAcceptsRow(self, sourceRow, sourceParent): + index0 = self.sourceModel().index(sourceRow, 0, sourceParent) + index1 = self.sourceModel().index(sourceRow, 1, sourceParent) + index2 = self.sourceModel().index(sourceRow, 2, sourceParent) + + return ( (self.filterRegExp().indexIn(self.sourceModel().data(index0)) >= 0 + or self.filterRegExp().indexIn(self.sourceModel().data(index1)) >= 0) + and self.dateInRange(self.sourceModel().data(index2))) + + def lessThan(self, left, right): + leftData = self.sourceModel().data(left) + rightData = self.sourceModel().data(right) + + if not isinstance(leftData, QDate): + emailPattern = QRegExp("([\\w\\.]*@[\\w\\.]*)") + + if left.column() == 1 and emailPattern.indexIn(leftData) != -1: + leftData = emailPattern.cap(1) + + if right.column() == 1 and emailPattern.indexIn(rightData) != -1: + rightData = emailPattern.cap(1) + + return leftData < rightData + + def dateInRange(self, date): + if isinstance(date, QDateTime): + date = date.date() + + return ( (not self.minDate.isValid() or date >= self.minDate) + and (not self.maxDate.isValid() or date <= self.maxDate)) + + +class Window(QWidget): + def __init__(self): + super(Window, self).__init__() + + self.proxyModel = MySortFilterProxyModel(self) + self.proxyModel.setDynamicSortFilter(True) + + self.sourceView = QTreeView() + self.sourceView.setRootIsDecorated(False) + self.sourceView.setAlternatingRowColors(True) + + sourceLayout = QHBoxLayout() + sourceLayout.addWidget(self.sourceView) + sourceGroupBox = QGroupBox("Original Model") + sourceGroupBox.setLayout(sourceLayout) + + self.filterCaseSensitivityCheckBox = QCheckBox("Case sensitive filter") + self.filterCaseSensitivityCheckBox.setChecked(True) + self.filterPatternLineEdit = QLineEdit() + self.filterPatternLineEdit.setText("Grace|Sports") + filterPatternLabel = QLabel("&Filter pattern:") + filterPatternLabel.setBuddy(self.filterPatternLineEdit) + self.filterSyntaxComboBox = QComboBox() + self.filterSyntaxComboBox.addItem("Regular expression", QRegExp.RegExp) + self.filterSyntaxComboBox.addItem("Wildcard", QRegExp.Wildcard) + self.filterSyntaxComboBox.addItem("Fixed string", QRegExp.FixedString) + self.fromDateEdit = QDateEdit() + self.fromDateEdit.setDate(QDate(2006, 12, 22)) + self.fromDateEdit.setCalendarPopup(True) + fromLabel = QLabel("F&rom:") + fromLabel.setBuddy(self.fromDateEdit) + self.toDateEdit = QDateEdit() + self.toDateEdit.setDate(QDate(2007, 1, 5)) + self.toDateEdit.setCalendarPopup(True) + toLabel = QLabel("&To:") + toLabel.setBuddy(self.toDateEdit) + + self.filterPatternLineEdit.textChanged.connect(self.textFilterChanged) + self.filterSyntaxComboBox.currentIndexChanged.connect(self.textFilterChanged) + self.filterCaseSensitivityCheckBox.toggled.connect(self.textFilterChanged) + self.fromDateEdit.dateChanged.connect(self.dateFilterChanged) + self.toDateEdit.dateChanged.connect(self.dateFilterChanged) + + self.proxyView = QTreeView() + self.proxyView.setRootIsDecorated(False) + self.proxyView.setAlternatingRowColors(True) + self.proxyView.setModel(self.proxyModel) + self.proxyView.setSortingEnabled(True) + self.proxyView.sortByColumn(1, Qt.AscendingOrder) + + self.textFilterChanged() + self.dateFilterChanged() + + proxyLayout = QGridLayout() + proxyLayout.addWidget(self.proxyView, 0, 0, 1, 3) + proxyLayout.addWidget(filterPatternLabel, 1, 0) + proxyLayout.addWidget(self.filterPatternLineEdit, 1, 1) + proxyLayout.addWidget(self.filterSyntaxComboBox, 1, 2) + proxyLayout.addWidget(self.filterCaseSensitivityCheckBox, 2, 0, 1, 3) + proxyLayout.addWidget(fromLabel, 3, 0) + proxyLayout.addWidget(self.fromDateEdit, 3, 1, 1, 2) + proxyLayout.addWidget(toLabel, 4, 0) + proxyLayout.addWidget(self.toDateEdit, 4, 1, 1, 2) + proxyGroupBox = QGroupBox("Sorted/Filtered Model") + proxyGroupBox.setLayout(proxyLayout) + + mainLayout = QVBoxLayout() + mainLayout.addWidget(sourceGroupBox) + mainLayout.addWidget(proxyGroupBox) + self.setLayout(mainLayout) + + self.setWindowTitle("Custom Sort/Filter Model") + self.resize(500, 450) + + def setSourceModel(self, model): + self.proxyModel.setSourceModel(model) + self.sourceView.setModel(model) + + def textFilterChanged(self): + syntax = QRegExp.PatternSyntax( + self.filterSyntaxComboBox.itemData( + self.filterSyntaxComboBox.currentIndex())) + caseSensitivity = ( + self.filterCaseSensitivityCheckBox.isChecked() + and Qt.CaseSensitive or Qt.CaseInsensitive) + regExp = QRegExp(self.filterPatternLineEdit.text(), caseSensitivity, syntax) + self.proxyModel.setFilterRegExp(regExp) + + def dateFilterChanged(self): + self.proxyModel.setFilterMinimumDate(self.fromDateEdit.date()) + self.proxyModel.setFilterMaximumDate(self.toDateEdit.date()) + + +def addMail(model, subject, sender, date): + model.insertRow(0) + model.setData(model.index(0, 0), subject) + model.setData(model.index(0, 1), sender) + model.setData(model.index(0, 2), date) + + +def createMailModel(parent): + model = QStandardItemModel(0, 3, parent) + + model.setHeaderData(0, Qt.Horizontal, "Subject") + model.setHeaderData(1, Qt.Horizontal, "Sender") + model.setHeaderData(2, Qt.Horizontal, "Date") + + addMail(model, "Happy New Year!", "Grace K. ", + QDateTime(QDate(2006, 12, 31), QTime(17, 3))) + addMail(model, "Radically new concept", "Grace K. ", + QDateTime(QDate(2006, 12, 22), QTime(9, 44))) + addMail(model, "Accounts", "pascale@nospam.com", + QDateTime(QDate(2006, 12, 31), QTime(12, 50))) + addMail(model, "Expenses", "Joe Bloggs ", + QDateTime(QDate(2006, 12, 25), QTime(11, 39))) + addMail(model, "Re: Expenses", "Andy ", + QDateTime(QDate(2007, 1, 2), QTime(16, 5))) + addMail(model, "Re: Accounts", "Joe Bloggs ", + QDateTime(QDate(2007, 1, 3), QTime(14, 18))) + addMail(model, "Re: Accounts", "Andy ", + QDateTime(QDate(2007, 1, 3), QTime(14, 26))) + addMail(model, "Sports", "Linda Smith ", + QDateTime(QDate(2007, 1, 5), QTime(11, 33))) + addMail(model, "AW: Sports", "Rolf Newschweinstein ", + QDateTime(QDate(2007, 1, 5), QTime(12, 0))) + addMail(model, "RE: Sports", "Petra Schmidt ", + QDateTime(QDate(2007, 1, 5), QTime(12, 1))) + + return model + + +if __name__ == "__main__": + + import sys + + app = QApplication(sys.argv) + + window = Window() + window.setSourceModel(createMailModel(window)) + window.show() + + sys.exit(app.exec_()) diff --git a/examples/itemviews/dirview.py b/examples/itemviews/dirview.py new file mode 100755 index 0000000..8cfde42 --- /dev/null +++ b/examples/itemviews/dirview.py @@ -0,0 +1,96 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2017 Riverbank Computing Limited. +## Copyright (C) 2017 Hans-Peter Jansen +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import sys + +from PyQt5.QtCore import (QCommandLineOption, QCommandLineParser, + QCoreApplication, QDir, QT_VERSION_STR) +from PyQt5.QtWidgets import (QApplication, QFileIconProvider, QFileSystemModel, + QTreeView) + + +app = QApplication(sys.argv) + +QCoreApplication.setApplicationVersion(QT_VERSION_STR) +parser = QCommandLineParser() +parser.setApplicationDescription("Qt Dir View Example") +parser.addHelpOption() +parser.addVersionOption() + +dontUseCustomDirectoryIconsOption = QCommandLineOption('c', + "Set QFileIconProvider.DontUseCustomDirectoryIcons") +parser.addOption(dontUseCustomDirectoryIconsOption) +parser.addPositionalArgument('directory', "The directory to start in.") +parser.process(app) +try: + rootPath = parser.positionalArguments().pop(0) +except IndexError: + rootPath = None + +model = QFileSystemModel() +model.setRootPath('') +if parser.isSet(dontUseCustomDirectoryIconsOption): + model.iconProvider().setOptions( + QFileIconProvider.DontUseCustomDirectoryIcons) +tree = QTreeView() +tree.setModel(model) +if rootPath is not None: + rootIndex = model.index(QDir.cleanPath(rootPath)) + if rootIndex.isValid(): + tree.setRootIndex(rootIndex) + +# Demonstrating look and feel features. +tree.setAnimated(False) +tree.setIndentation(20) +tree.setSortingEnabled(True) + +availableSize = QApplication.desktop().availableGeometry(tree).size() +tree.resize(availableSize / 2) +tree.setColumnWidth(0, tree.width() / 3) + +tree.setWindowTitle("Dir View") +tree.show() + +sys.exit(app.exec_()) diff --git a/examples/itemviews/editabletreemodel/default.txt b/examples/itemviews/editabletreemodel/default.txt new file mode 100644 index 0000000..2b2fb57 --- /dev/null +++ b/examples/itemviews/editabletreemodel/default.txt @@ -0,0 +1,40 @@ +Getting Started How to familiarize yourself with Qt Designer + Launching Designer Running the Qt Designer application + The User Interface How to interact with Qt Designer + +Designing a Component Creating a GUI for your application + Creating a Dialog How to create a dialog + Composing the Dialog Putting widgets into the dialog example + Creating a Layout Arranging widgets on a form + Signal and Slot Connections Making widget communicate with each other + +Using a Component in Your Application Generating code from forms + The Direct Approach Using a form without any adjustments + The Single Inheritance Approach Subclassing a form's base class + The Multiple Inheritance Approach Subclassing the form itself + Automatic Connections Connecting widgets using a naming scheme + A Dialog Without Auto-Connect How to connect widgets without a naming scheme + A Dialog With Auto-Connect Using automatic connections + +Form Editing Mode How to edit a form in Qt Designer + Managing Forms Loading and saving forms + Editing a Form Basic editing techniques + The Property Editor Changing widget properties + The Object Inspector Examining the hierarchy of objects on a form + Layouts Objects that arrange widgets on a form + Applying and Breaking Layouts Managing widgets in layouts + Horizontal and Vertical Layouts Standard row and column layouts + The Grid Layout Arranging widgets in a matrix + Previewing Forms Checking that the design works + +Using Containers How to group widgets together + General Features Common container features + Frames QFrame + Group Boxes QGroupBox + Stacked Widgets QStackedWidget + Tab Widgets QTabWidget + Toolbox Widgets QToolBox + +Connection Editing Mode Connecting widgets together with signals and slots + Connecting Objects Making connections in Qt Designer + Editing Connections Changing existing connections diff --git a/examples/itemviews/editabletreemodel/editabletreemodel.py b/examples/itemviews/editabletreemodel/editabletreemodel.py new file mode 100755 index 0000000..bee33e5 --- /dev/null +++ b/examples/itemviews/editabletreemodel/editabletreemodel.py @@ -0,0 +1,422 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2017 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (QAbstractItemModel, QFile, QIODevice, + QItemSelectionModel, QModelIndex, Qt) +from PyQt5.QtWidgets import QApplication, QMainWindow + +import editabletreemodel_rc +from ui_mainwindow import Ui_MainWindow + + +class TreeItem(object): + def __init__(self, data, parent=None): + self.parentItem = parent + self.itemData = data + self.childItems = [] + + def child(self, row): + return self.childItems[row] + + def childCount(self): + return len(self.childItems) + + def childNumber(self): + if self.parentItem != None: + return self.parentItem.childItems.index(self) + return 0 + + def columnCount(self): + return len(self.itemData) + + def data(self, column): + return self.itemData[column] + + def insertChildren(self, position, count, columns): + if position < 0 or position > len(self.childItems): + return False + + for row in range(count): + data = [None for v in range(columns)] + item = TreeItem(data, self) + self.childItems.insert(position, item) + + return True + + def insertColumns(self, position, columns): + if position < 0 or position > len(self.itemData): + return False + + for column in range(columns): + self.itemData.insert(position, None) + + for child in self.childItems: + child.insertColumns(position, columns) + + return True + + def parent(self): + return self.parentItem + + def removeChildren(self, position, count): + if position < 0 or position + count > len(self.childItems): + return False + + for row in range(count): + self.childItems.pop(position) + + return True + + def removeColumns(self, position, columns): + if position < 0 or position + columns > len(self.itemData): + return False + + for column in range(columns): + self.itemData.pop(position) + + for child in self.childItems: + child.removeColumns(position, columns) + + return True + + def setData(self, column, value): + if column < 0 or column >= len(self.itemData): + return False + + self.itemData[column] = value + + return True + + +class TreeModel(QAbstractItemModel): + def __init__(self, headers, data, parent=None): + super(TreeModel, self).__init__(parent) + + rootData = [header for header in headers] + self.rootItem = TreeItem(rootData) + self.setupModelData(data.split("\n"), self.rootItem) + + def columnCount(self, parent=QModelIndex()): + return self.rootItem.columnCount() + + def data(self, index, role): + if not index.isValid(): + return None + + if role != Qt.DisplayRole and role != Qt.EditRole: + return None + + item = self.getItem(index) + return item.data(index.column()) + + def flags(self, index): + if not index.isValid(): + return 0 + + return Qt.ItemIsEditable | super(TreeModel, self).flags(index) + + def getItem(self, index): + if index.isValid(): + item = index.internalPointer() + if item: + return item + + return self.rootItem + + def headerData(self, section, orientation, role=Qt.DisplayRole): + if orientation == Qt.Horizontal and role == Qt.DisplayRole: + return self.rootItem.data(section) + + return None + + def index(self, row, column, parent=QModelIndex()): + if parent.isValid() and parent.column() != 0: + return QModelIndex() + + parentItem = self.getItem(parent) + childItem = parentItem.child(row) + if childItem: + return self.createIndex(row, column, childItem) + else: + return QModelIndex() + + def insertColumns(self, position, columns, parent=QModelIndex()): + self.beginInsertColumns(parent, position, position + columns - 1) + success = self.rootItem.insertColumns(position, columns) + self.endInsertColumns() + + return success + + def insertRows(self, position, rows, parent=QModelIndex()): + parentItem = self.getItem(parent) + self.beginInsertRows(parent, position, position + rows - 1) + success = parentItem.insertChildren(position, rows, + self.rootItem.columnCount()) + self.endInsertRows() + + return success + + def parent(self, index): + if not index.isValid(): + return QModelIndex() + + childItem = self.getItem(index) + parentItem = childItem.parent() + + if parentItem == self.rootItem: + return QModelIndex() + + return self.createIndex(parentItem.childNumber(), 0, parentItem) + + def removeColumns(self, position, columns, parent=QModelIndex()): + self.beginRemoveColumns(parent, position, position + columns - 1) + success = self.rootItem.removeColumns(position, columns) + self.endRemoveColumns() + + if self.rootItem.columnCount() == 0: + self.removeRows(0, self.rowCount()) + + return success + + def removeRows(self, position, rows, parent=QModelIndex()): + parentItem = self.getItem(parent) + + self.beginRemoveRows(parent, position, position + rows - 1) + success = parentItem.removeChildren(position, rows) + self.endRemoveRows() + + return success + + def rowCount(self, parent=QModelIndex()): + parentItem = self.getItem(parent) + + return parentItem.childCount() + + def setData(self, index, value, role=Qt.EditRole): + if role != Qt.EditRole: + return False + + item = self.getItem(index) + result = item.setData(index.column(), value) + + if result: + self.dataChanged.emit(index, index) + + return result + + def setHeaderData(self, section, orientation, value, role=Qt.EditRole): + if role != Qt.EditRole or orientation != Qt.Horizontal: + return False + + result = self.rootItem.setData(section, value) + if result: + self.headerDataChanged.emit(orientation, section, section) + + return result + + def setupModelData(self, lines, parent): + parents = [parent] + indentations = [0] + + number = 0 + + while number < len(lines): + position = 0 + while position < len(lines[number]): + if lines[number][position] != " ": + break + position += 1 + + lineData = lines[number][position:].trimmed() + + if lineData: + # Read the column data from the rest of the line. + columnData = [s for s in lineData.split('\t') if s] + + if position > indentations[-1]: + # The last child of the current parent is now the new + # parent unless the current parent has no children. + + if parents[-1].childCount() > 0: + parents.append(parents[-1].child(parents[-1].childCount() - 1)) + indentations.append(position) + + else: + while position < indentations[-1] and len(parents) > 0: + parents.pop() + indentations.pop() + + # Append a new item to the current parent's list of children. + parent = parents[-1] + parent.insertChildren(parent.childCount(), 1, + self.rootItem.columnCount()) + for column in range(len(columnData)): + parent.child(parent.childCount() -1).setData(column, columnData[column]) + + number += 1 + + +class MainWindow(QMainWindow, Ui_MainWindow): + def __init__(self, parent=None): + super(MainWindow, self).__init__(parent) + + self.setupUi(self) + + headers = ("Title", "Description") + + file = QFile(':/default.txt') + file.open(QIODevice.ReadOnly) + model = TreeModel(headers, file.readAll()) + file.close() + + self.view.setModel(model) + for column in range(model.columnCount()): + self.view.resizeColumnToContents(column) + + self.exitAction.triggered.connect(QApplication.instance().quit) + + self.view.selectionModel().selectionChanged.connect(self.updateActions) + + self.actionsMenu.aboutToShow.connect(self.updateActions) + self.insertRowAction.triggered.connect(self.insertRow) + self.insertColumnAction.triggered.connect(self.insertColumn) + self.removeRowAction.triggered.connect(self.removeRow) + self.removeColumnAction.triggered.connect(self.removeColumn) + self.insertChildAction.triggered.connect(self.insertChild) + + self.updateActions() + + def insertChild(self): + index = self.view.selectionModel().currentIndex() + model = self.view.model() + + if model.columnCount(index) == 0: + if not model.insertColumn(0, index): + return + + if not model.insertRow(0, index): + return + + for column in range(model.columnCount(index)): + child = model.index(0, column, index) + model.setData(child, "[No data]", Qt.EditRole) + if model.headerData(column, Qt.Horizontal) is None: + model.setHeaderData(column, Qt.Horizontal, "[No header]", + Qt.EditRole) + + self.view.selectionModel().setCurrentIndex(model.index(0, 0, index), + QItemSelectionModel.ClearAndSelect) + self.updateActions() + + def insertColumn(self): + model = self.view.model() + column = self.view.selectionModel().currentIndex().column() + + changed = model.insertColumn(column + 1) + if changed: + model.setHeaderData(column + 1, Qt.Horizontal, "[No header]", + Qt.EditRole) + + self.updateActions() + + return changed + + def insertRow(self): + index = self.view.selectionModel().currentIndex() + model = self.view.model() + + if not model.insertRow(index.row()+1, index.parent()): + return + + self.updateActions() + + for column in range(model.columnCount(index.parent())): + child = model.index(index.row()+1, column, index.parent()) + model.setData(child, "[No data]", Qt.EditRole) + + def removeColumn(self): + model = self.view.model() + column = self.view.selectionModel().currentIndex().column() + + changed = model.removeColumn(column) + if changed: + self.updateActions() + + return changed + + def removeRow(self): + index = self.view.selectionModel().currentIndex() + model = self.view.model() + + if (model.removeRow(index.row(), index.parent())): + self.updateActions() + + def updateActions(self): + hasSelection = not self.view.selectionModel().selection().isEmpty() + self.removeRowAction.setEnabled(hasSelection) + self.removeColumnAction.setEnabled(hasSelection) + + hasCurrent = self.view.selectionModel().currentIndex().isValid() + self.insertRowAction.setEnabled(hasCurrent) + self.insertColumnAction.setEnabled(hasCurrent) + + if hasCurrent: + self.view.closePersistentEditor(self.view.selectionModel().currentIndex()) + + row = self.view.selectionModel().currentIndex().row() + column = self.view.selectionModel().currentIndex().column() + if self.view.selectionModel().currentIndex().parent().isValid(): + self.statusBar().showMessage("Position: (%d,%d)" % (row, column)) + else: + self.statusBar().showMessage("Position: (%d,%d) in top level" % (row, column)) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + window = MainWindow() + window.show() + sys.exit(app.exec_()) diff --git a/examples/itemviews/editabletreemodel/editabletreemodel.qrc b/examples/itemviews/editabletreemodel/editabletreemodel.qrc new file mode 100644 index 0000000..2fb48f2 --- /dev/null +++ b/examples/itemviews/editabletreemodel/editabletreemodel.qrc @@ -0,0 +1,5 @@ + + + default.txt + + diff --git a/examples/itemviews/editabletreemodel/editabletreemodel_rc.py b/examples/itemviews/editabletreemodel/editabletreemodel_rc.py new file mode 100644 index 0000000..8f2e22e --- /dev/null +++ b/examples/itemviews/editabletreemodel/editabletreemodel_rc.py @@ -0,0 +1,159 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sun May 12 13:00:44 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x07\xb9\ +\x47\ +\x65\x74\x74\x69\x6e\x67\x20\x53\x74\x61\x72\x74\x65\x64\x09\x09\ +\x09\x09\x48\x6f\x77\x20\x74\x6f\x20\x66\x61\x6d\x69\x6c\x69\x61\ +\x72\x69\x7a\x65\x20\x79\x6f\x75\x72\x73\x65\x6c\x66\x20\x77\x69\ +\x74\x68\x20\x51\x74\x20\x44\x65\x73\x69\x67\x6e\x65\x72\x0a\x20\ +\x20\x20\x20\x4c\x61\x75\x6e\x63\x68\x69\x6e\x67\x20\x44\x65\x73\ +\x69\x67\x6e\x65\x72\x09\x09\x09\x52\x75\x6e\x6e\x69\x6e\x67\x20\ +\x74\x68\x65\x20\x51\x74\x20\x44\x65\x73\x69\x67\x6e\x65\x72\x20\ +\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x0a\x20\x20\x20\x20\ +\x54\x68\x65\x20\x55\x73\x65\x72\x20\x49\x6e\x74\x65\x72\x66\x61\ +\x63\x65\x09\x09\x09\x48\x6f\x77\x20\x74\x6f\x20\x69\x6e\x74\x65\ +\x72\x61\x63\x74\x20\x77\x69\x74\x68\x20\x51\x74\x20\x44\x65\x73\ +\x69\x67\x6e\x65\x72\x0a\x0a\x44\x65\x73\x69\x67\x6e\x69\x6e\x67\ +\x20\x61\x20\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x09\x09\x09\x43\ +\x72\x65\x61\x74\x69\x6e\x67\x20\x61\x20\x47\x55\x49\x20\x66\x6f\ +\x72\x20\x79\x6f\x75\x72\x20\x61\x70\x70\x6c\x69\x63\x61\x74\x69\ +\x6f\x6e\x0a\x20\x20\x20\x20\x43\x72\x65\x61\x74\x69\x6e\x67\x20\ +\x61\x20\x44\x69\x61\x6c\x6f\x67\x09\x09\x09\x48\x6f\x77\x20\x74\ +\x6f\x20\x63\x72\x65\x61\x74\x65\x20\x61\x20\x64\x69\x61\x6c\x6f\ +\x67\x0a\x20\x20\x20\x20\x43\x6f\x6d\x70\x6f\x73\x69\x6e\x67\x20\ +\x74\x68\x65\x20\x44\x69\x61\x6c\x6f\x67\x09\x09\x50\x75\x74\x74\ +\x69\x6e\x67\x20\x77\x69\x64\x67\x65\x74\x73\x20\x69\x6e\x74\x6f\ +\x20\x74\x68\x65\x20\x64\x69\x61\x6c\x6f\x67\x20\x65\x78\x61\x6d\ +\x70\x6c\x65\x0a\x20\x20\x20\x20\x43\x72\x65\x61\x74\x69\x6e\x67\ +\x20\x61\x20\x4c\x61\x79\x6f\x75\x74\x09\x09\x09\x41\x72\x72\x61\ +\x6e\x67\x69\x6e\x67\x20\x77\x69\x64\x67\x65\x74\x73\x20\x6f\x6e\ +\x20\x61\x20\x66\x6f\x72\x6d\x0a\x20\x20\x20\x20\x53\x69\x67\x6e\ +\x61\x6c\x20\x61\x6e\x64\x20\x53\x6c\x6f\x74\x20\x43\x6f\x6e\x6e\ +\x65\x63\x74\x69\x6f\x6e\x73\x09\x09\x4d\x61\x6b\x69\x6e\x67\x20\ +\x77\x69\x64\x67\x65\x74\x20\x63\x6f\x6d\x6d\x75\x6e\x69\x63\x61\ +\x74\x65\x20\x77\x69\x74\x68\x20\x65\x61\x63\x68\x20\x6f\x74\x68\ +\x65\x72\x0a\x0a\x55\x73\x69\x6e\x67\x20\x61\x20\x43\x6f\x6d\x70\ +\x6f\x6e\x65\x6e\x74\x20\x69\x6e\x20\x59\x6f\x75\x72\x20\x41\x70\ +\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x09\x47\x65\x6e\x65\x72\x61\ +\x74\x69\x6e\x67\x20\x63\x6f\x64\x65\x20\x66\x72\x6f\x6d\x20\x66\ +\x6f\x72\x6d\x73\x0a\x20\x20\x20\x20\x54\x68\x65\x20\x44\x69\x72\ +\x65\x63\x74\x20\x41\x70\x70\x72\x6f\x61\x63\x68\x09\x09\x09\x55\ +\x73\x69\x6e\x67\x20\x61\x20\x66\x6f\x72\x6d\x20\x77\x69\x74\x68\ +\x6f\x75\x74\x20\x61\x6e\x79\x20\x61\x64\x6a\x75\x73\x74\x6d\x65\ +\x6e\x74\x73\x0a\x20\x20\x20\x20\x54\x68\x65\x20\x53\x69\x6e\x67\ +\x6c\x65\x20\x49\x6e\x68\x65\x72\x69\x74\x61\x6e\x63\x65\x20\x41\ +\x70\x70\x72\x6f\x61\x63\x68\x09\x53\x75\x62\x63\x6c\x61\x73\x73\ +\x69\x6e\x67\x20\x61\x20\x66\x6f\x72\x6d\x27\x73\x20\x62\x61\x73\ +\x65\x20\x63\x6c\x61\x73\x73\x0a\x20\x20\x20\x20\x54\x68\x65\x20\ +\x4d\x75\x6c\x74\x69\x70\x6c\x65\x20\x49\x6e\x68\x65\x72\x69\x74\ +\x61\x6e\x63\x65\x20\x41\x70\x70\x72\x6f\x61\x63\x68\x09\x53\x75\ +\x62\x63\x6c\x61\x73\x73\x69\x6e\x67\x20\x74\x68\x65\x20\x66\x6f\ +\x72\x6d\x20\x69\x74\x73\x65\x6c\x66\x0a\x20\x20\x20\x20\x41\x75\ +\x74\x6f\x6d\x61\x74\x69\x63\x20\x43\x6f\x6e\x6e\x65\x63\x74\x69\ +\x6f\x6e\x73\x09\x09\x43\x6f\x6e\x6e\x65\x63\x74\x69\x6e\x67\x20\ +\x77\x69\x64\x67\x65\x74\x73\x20\x75\x73\x69\x6e\x67\x20\x61\x20\ +\x6e\x61\x6d\x69\x6e\x67\x20\x73\x63\x68\x65\x6d\x65\x0a\x20\x20\ +\x20\x20\x20\x20\x20\x20\x41\x20\x44\x69\x61\x6c\x6f\x67\x20\x57\ +\x69\x74\x68\x6f\x75\x74\x20\x41\x75\x74\x6f\x2d\x43\x6f\x6e\x6e\ +\x65\x63\x74\x09\x48\x6f\x77\x20\x74\x6f\x20\x63\x6f\x6e\x6e\x65\ +\x63\x74\x20\x77\x69\x64\x67\x65\x74\x73\x20\x77\x69\x74\x68\x6f\ +\x75\x74\x20\x61\x20\x6e\x61\x6d\x69\x6e\x67\x20\x73\x63\x68\x65\ +\x6d\x65\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x41\x20\x44\x69\x61\ +\x6c\x6f\x67\x20\x57\x69\x74\x68\x20\x41\x75\x74\x6f\x2d\x43\x6f\ +\x6e\x6e\x65\x63\x74\x09\x55\x73\x69\x6e\x67\x20\x61\x75\x74\x6f\ +\x6d\x61\x74\x69\x63\x20\x63\x6f\x6e\x6e\x65\x63\x74\x69\x6f\x6e\ +\x73\x0a\x0a\x46\x6f\x72\x6d\x20\x45\x64\x69\x74\x69\x6e\x67\x20\ +\x4d\x6f\x64\x65\x09\x09\x09\x48\x6f\x77\x20\x74\x6f\x20\x65\x64\ +\x69\x74\x20\x61\x20\x66\x6f\x72\x6d\x20\x69\x6e\x20\x51\x74\x20\ +\x44\x65\x73\x69\x67\x6e\x65\x72\x0a\x20\x20\x20\x20\x4d\x61\x6e\ +\x61\x67\x69\x6e\x67\x20\x46\x6f\x72\x6d\x73\x09\x09\x09\x4c\x6f\ +\x61\x64\x69\x6e\x67\x20\x61\x6e\x64\x20\x73\x61\x76\x69\x6e\x67\ +\x20\x66\x6f\x72\x6d\x73\x0a\x20\x20\x20\x20\x45\x64\x69\x74\x69\ +\x6e\x67\x20\x61\x20\x46\x6f\x72\x6d\x09\x09\x09\x42\x61\x73\x69\ +\x63\x20\x65\x64\x69\x74\x69\x6e\x67\x20\x74\x65\x63\x68\x6e\x69\ +\x71\x75\x65\x73\x0a\x20\x20\x20\x20\x54\x68\x65\x20\x50\x72\x6f\ +\x70\x65\x72\x74\x79\x20\x45\x64\x69\x74\x6f\x72\x09\x09\x09\x43\ +\x68\x61\x6e\x67\x69\x6e\x67\x20\x77\x69\x64\x67\x65\x74\x20\x70\ +\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x0a\x20\x20\x20\x20\x54\x68\ +\x65\x20\x4f\x62\x6a\x65\x63\x74\x20\x49\x6e\x73\x70\x65\x63\x74\ +\x6f\x72\x09\x09\x45\x78\x61\x6d\x69\x6e\x69\x6e\x67\x20\x74\x68\ +\x65\x20\x68\x69\x65\x72\x61\x72\x63\x68\x79\x20\x6f\x66\x20\x6f\ +\x62\x6a\x65\x63\x74\x73\x20\x6f\x6e\x20\x61\x20\x66\x6f\x72\x6d\ +\x0a\x20\x20\x20\x20\x4c\x61\x79\x6f\x75\x74\x73\x09\x09\x09\x09\ +\x4f\x62\x6a\x65\x63\x74\x73\x20\x74\x68\x61\x74\x20\x61\x72\x72\ +\x61\x6e\x67\x65\x20\x77\x69\x64\x67\x65\x74\x73\x20\x6f\x6e\x20\ +\x61\x20\x66\x6f\x72\x6d\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x41\ +\x70\x70\x6c\x79\x69\x6e\x67\x20\x61\x6e\x64\x20\x42\x72\x65\x61\ +\x6b\x69\x6e\x67\x20\x4c\x61\x79\x6f\x75\x74\x73\x09\x4d\x61\x6e\ +\x61\x67\x69\x6e\x67\x20\x77\x69\x64\x67\x65\x74\x73\x20\x69\x6e\ +\x20\x6c\x61\x79\x6f\x75\x74\x73\x20\x0a\x20\x20\x20\x20\x20\x20\ +\x20\x20\x48\x6f\x72\x69\x7a\x6f\x6e\x74\x61\x6c\x20\x61\x6e\x64\ +\x20\x56\x65\x72\x74\x69\x63\x61\x6c\x20\x4c\x61\x79\x6f\x75\x74\ +\x73\x09\x53\x74\x61\x6e\x64\x61\x72\x64\x20\x72\x6f\x77\x20\x61\ +\x6e\x64\x20\x63\x6f\x6c\x75\x6d\x6e\x20\x6c\x61\x79\x6f\x75\x74\ +\x73\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x54\x68\x65\x20\x47\x72\ +\x69\x64\x20\x4c\x61\x79\x6f\x75\x74\x09\x09\x09\x41\x72\x72\x61\ +\x6e\x67\x69\x6e\x67\x20\x77\x69\x64\x67\x65\x74\x73\x20\x69\x6e\ +\x20\x61\x20\x6d\x61\x74\x72\x69\x78\x0a\x20\x20\x20\x20\x50\x72\ +\x65\x76\x69\x65\x77\x69\x6e\x67\x20\x46\x6f\x72\x6d\x73\x09\x09\ +\x09\x43\x68\x65\x63\x6b\x69\x6e\x67\x20\x74\x68\x61\x74\x20\x74\ +\x68\x65\x20\x64\x65\x73\x69\x67\x6e\x20\x77\x6f\x72\x6b\x73\x0a\ +\x0a\x55\x73\x69\x6e\x67\x20\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\ +\x73\x09\x09\x09\x48\x6f\x77\x20\x74\x6f\x20\x67\x72\x6f\x75\x70\ +\x20\x77\x69\x64\x67\x65\x74\x73\x20\x74\x6f\x67\x65\x74\x68\x65\ +\x72\x0a\x20\x20\x20\x20\x47\x65\x6e\x65\x72\x61\x6c\x20\x46\x65\ +\x61\x74\x75\x72\x65\x73\x09\x09\x09\x43\x6f\x6d\x6d\x6f\x6e\x20\ +\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x20\x66\x65\x61\x74\x75\x72\ +\x65\x73\x0a\x20\x20\x20\x20\x46\x72\x61\x6d\x65\x73\x09\x09\x09\ +\x09\x51\x46\x72\x61\x6d\x65\x0a\x20\x20\x20\x20\x47\x72\x6f\x75\ +\x70\x20\x42\x6f\x78\x65\x73\x09\x09\x09\x09\x51\x47\x72\x6f\x75\ +\x70\x42\x6f\x78\x0a\x20\x20\x20\x20\x53\x74\x61\x63\x6b\x65\x64\ +\x20\x57\x69\x64\x67\x65\x74\x73\x09\x09\x09\x51\x53\x74\x61\x63\ +\x6b\x65\x64\x57\x69\x64\x67\x65\x74\x0a\x20\x20\x20\x20\x54\x61\ +\x62\x20\x57\x69\x64\x67\x65\x74\x73\x09\x09\x09\x09\x51\x54\x61\ +\x62\x57\x69\x64\x67\x65\x74\x0a\x20\x20\x20\x20\x54\x6f\x6f\x6c\ +\x62\x6f\x78\x20\x57\x69\x64\x67\x65\x74\x73\x09\x09\x09\x51\x54\ +\x6f\x6f\x6c\x42\x6f\x78\x0a\x0a\x43\x6f\x6e\x6e\x65\x63\x74\x69\ +\x6f\x6e\x20\x45\x64\x69\x74\x69\x6e\x67\x20\x4d\x6f\x64\x65\x09\ +\x09\x09\x43\x6f\x6e\x6e\x65\x63\x74\x69\x6e\x67\x20\x77\x69\x64\ +\x67\x65\x74\x73\x20\x74\x6f\x67\x65\x74\x68\x65\x72\x20\x77\x69\ +\x74\x68\x20\x73\x69\x67\x6e\x61\x6c\x73\x20\x61\x6e\x64\x20\x73\ +\x6c\x6f\x74\x73\x0a\x20\x20\x20\x20\x43\x6f\x6e\x6e\x65\x63\x74\ +\x69\x6e\x67\x20\x4f\x62\x6a\x65\x63\x74\x73\x09\x09\x09\x4d\x61\ +\x6b\x69\x6e\x67\x20\x63\x6f\x6e\x6e\x65\x63\x74\x69\x6f\x6e\x73\ +\x20\x69\x6e\x20\x51\x74\x20\x44\x65\x73\x69\x67\x6e\x65\x72\x0a\ +\x20\x20\x20\x20\x45\x64\x69\x74\x69\x6e\x67\x20\x43\x6f\x6e\x6e\ +\x65\x63\x74\x69\x6f\x6e\x73\x09\x09\x09\x43\x68\x61\x6e\x67\x69\ +\x6e\x67\x20\x65\x78\x69\x73\x74\x69\x6e\x67\x20\x63\x6f\x6e\x6e\ +\x65\x63\x74\x69\x6f\x6e\x73\x0a\ +" + +qt_resource_name = b"\ +\x00\x0b\ +\x0c\xe2\x22\xf4\ +\x00\x64\ +\x00\x65\x00\x66\x00\x61\x00\x75\x00\x6c\x00\x74\x00\x2e\x00\x74\x00\x78\x00\x74\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\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() diff --git a/examples/itemviews/editabletreemodel/mainwindow.ui b/examples/itemviews/editabletreemodel/mainwindow.ui new file mode 100644 index 0000000..4335004 --- /dev/null +++ b/examples/itemviews/editabletreemodel/mainwindow.ui @@ -0,0 +1,125 @@ + + MainWindow + + + + 0 + 0 + 573 + 468 + + + + Editable Tree Model + + + + + 0 + + + 0 + + + + + true + + + QAbstractItemView::SelectItems + + + QAbstractItemView::ScrollPerPixel + + + false + + + true + + + + + + + + + 0 + 0 + 573 + 31 + + + + + &File + + + + + + &Actions + + + + + + + + + + + + + + + + E&xit + + + Ctrl+Q + + + + + Insert Row + + + Ctrl+I, R + + + + + Remove Row + + + Ctrl+R, R + + + + + Insert Column + + + Ctrl+I, C + + + + + Remove Column + + + Ctrl+R, C + + + + + Insert Child + + + Ctrl+N + + + + + diff --git a/examples/itemviews/editabletreemodel/ui_mainwindow.py b/examples/itemviews/editabletreemodel/ui_mainwindow.py new file mode 100644 index 0000000..10d46da --- /dev/null +++ b/examples/itemviews/editabletreemodel/ui_mainwindow.py @@ -0,0 +1,85 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'mainwindow.ui' +# +# Created: Fri Jul 26 06:51:23 2013 +# by: PyQt5 UI code generator 5.0.1-snapshot-2a99e59669ee +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + MainWindow.setObjectName("MainWindow") + MainWindow.resize(573, 468) + self.centralwidget = QtWidgets.QWidget(MainWindow) + self.centralwidget.setObjectName("centralwidget") + self.vboxlayout = QtWidgets.QVBoxLayout(self.centralwidget) + self.vboxlayout.setContentsMargins(0, 0, 0, 0) + self.vboxlayout.setSpacing(0) + self.vboxlayout.setObjectName("vboxlayout") + self.view = QtWidgets.QTreeView(self.centralwidget) + self.view.setAlternatingRowColors(True) + self.view.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectItems) + self.view.setHorizontalScrollMode(QtWidgets.QAbstractItemView.ScrollPerPixel) + self.view.setAnimated(False) + self.view.setAllColumnsShowFocus(True) + self.view.setObjectName("view") + self.vboxlayout.addWidget(self.view) + MainWindow.setCentralWidget(self.centralwidget) + self.menubar = QtWidgets.QMenuBar(MainWindow) + self.menubar.setGeometry(QtCore.QRect(0, 0, 573, 31)) + self.menubar.setObjectName("menubar") + self.fileMenu = QtWidgets.QMenu(self.menubar) + self.fileMenu.setObjectName("fileMenu") + self.actionsMenu = QtWidgets.QMenu(self.menubar) + self.actionsMenu.setObjectName("actionsMenu") + MainWindow.setMenuBar(self.menubar) + self.statusbar = QtWidgets.QStatusBar(MainWindow) + self.statusbar.setObjectName("statusbar") + MainWindow.setStatusBar(self.statusbar) + self.exitAction = QtWidgets.QAction(MainWindow) + self.exitAction.setObjectName("exitAction") + self.insertRowAction = QtWidgets.QAction(MainWindow) + self.insertRowAction.setObjectName("insertRowAction") + self.removeRowAction = QtWidgets.QAction(MainWindow) + self.removeRowAction.setObjectName("removeRowAction") + self.insertColumnAction = QtWidgets.QAction(MainWindow) + self.insertColumnAction.setObjectName("insertColumnAction") + self.removeColumnAction = QtWidgets.QAction(MainWindow) + self.removeColumnAction.setObjectName("removeColumnAction") + self.insertChildAction = QtWidgets.QAction(MainWindow) + self.insertChildAction.setObjectName("insertChildAction") + self.fileMenu.addAction(self.exitAction) + self.actionsMenu.addAction(self.insertRowAction) + self.actionsMenu.addAction(self.insertColumnAction) + self.actionsMenu.addSeparator() + self.actionsMenu.addAction(self.removeRowAction) + self.actionsMenu.addAction(self.removeColumnAction) + self.actionsMenu.addSeparator() + self.actionsMenu.addAction(self.insertChildAction) + self.menubar.addAction(self.fileMenu.menuAction()) + self.menubar.addAction(self.actionsMenu.menuAction()) + + self.retranslateUi(MainWindow) + QtCore.QMetaObject.connectSlotsByName(MainWindow) + + def retranslateUi(self, MainWindow): + _translate = QtCore.QCoreApplication.translate + MainWindow.setWindowTitle(_translate("MainWindow", "Editable Tree Model")) + self.fileMenu.setTitle(_translate("MainWindow", "&File")) + self.actionsMenu.setTitle(_translate("MainWindow", "&Actions")) + self.exitAction.setText(_translate("MainWindow", "E&xit")) + self.exitAction.setShortcut(_translate("MainWindow", "Ctrl+Q")) + self.insertRowAction.setText(_translate("MainWindow", "Insert Row")) + self.insertRowAction.setShortcut(_translate("MainWindow", "Ctrl+I, R")) + self.removeRowAction.setText(_translate("MainWindow", "Remove Row")) + self.removeRowAction.setShortcut(_translate("MainWindow", "Ctrl+R, R")) + self.insertColumnAction.setText(_translate("MainWindow", "Insert Column")) + self.insertColumnAction.setShortcut(_translate("MainWindow", "Ctrl+I, C")) + self.removeColumnAction.setText(_translate("MainWindow", "Remove Column")) + self.removeColumnAction.setShortcut(_translate("MainWindow", "Ctrl+R, C")) + self.insertChildAction.setText(_translate("MainWindow", "Insert Child")) + self.insertChildAction.setShortcut(_translate("MainWindow", "Ctrl+N")) + diff --git a/examples/itemviews/fetchmore.py b/examples/itemviews/fetchmore.py new file mode 100755 index 0000000..37577e5 --- /dev/null +++ b/examples/itemviews/fetchmore.py @@ -0,0 +1,151 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited +## Copyright (C) 2010 Darryl Wallace . +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (pyqtSignal, QAbstractListModel, QDir, QLibraryInfo, + QModelIndex, Qt) +from PyQt5.QtWidgets import (QApplication, QGridLayout, QLabel, QLineEdit, + QListView, QSizePolicy, QTextBrowser, QWidget) + + +class FileListModel(QAbstractListModel): + numberPopulated = pyqtSignal(int) + + def __init__(self, parent=None): + super(FileListModel, self).__init__(parent) + + self.fileCount = 0 + self.fileList = [] + + def rowCount(self, parent=QModelIndex()): + return self.fileCount + + def data(self, index, role=Qt.DisplayRole): + if not index.isValid(): + return None + + if index.row() >= len(self.fileList) or index.row() < 0: + return None + + if role == Qt.DisplayRole: + return self.fileList[index.row()] + + if role == Qt.BackgroundRole: + batch = (index.row() // 100) % 2 + if batch == 0: + return QApplication.palette().base() + + return QApplication.palette().alternateBase() + + return None + + def canFetchMore(self, index): + return self.fileCount < len(self.fileList) + + def fetchMore(self, index): + remainder = len(self.fileList) - self.fileCount + itemsToFetch = min(100, remainder) + + self.beginInsertRows(QModelIndex(), self.fileCount, + self.fileCount + itemsToFetch) + + self.fileCount += itemsToFetch + + self.endInsertRows() + + self.numberPopulated.emit(itemsToFetch) + + def setDirPath(self, path): + dir = QDir(path) + + self.beginResetModel() + self.fileList = dir.entryList() + self.fileCount = 0 + self.endResetModel() + + +class Window(QWidget): + def __init__(self, parent=None): + super(Window, self).__init__(parent) + + model = FileListModel(self) + model.setDirPath(QLibraryInfo.location(QLibraryInfo.PrefixPath)) + + label = QLabel("Directory") + lineEdit = QLineEdit() + label.setBuddy(lineEdit) + + view = QListView() + view.setModel(model) + + self.logViewer = QTextBrowser() + self.logViewer.setSizePolicy(QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred)) + + lineEdit.textChanged.connect(model.setDirPath) + lineEdit.textChanged.connect(self.logViewer.clear) + model.numberPopulated.connect(self.updateLog) + + layout = QGridLayout() + layout.addWidget(label, 0, 0) + layout.addWidget(lineEdit, 0, 1) + layout.addWidget(view, 1, 0, 1, 2) + layout.addWidget(self.logViewer, 2, 0, 1, 2) + + self.setLayout(layout) + self.setWindowTitle("Fetch More Example") + + def updateLog(self, number): + self.logViewer.append("%d items added." % number) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + window = Window() + window.show() + + sys.exit(app.exec_()) diff --git a/examples/itemviews/frozencolumn/frozencolumn.py b/examples/itemviews/frozencolumn/frozencolumn.py new file mode 100644 index 0000000..f0e2ea5 --- /dev/null +++ b/examples/itemviews/frozencolumn/frozencolumn.py @@ -0,0 +1,163 @@ +#!/usr/bin/env python + +############################################################################# +## +## Copyright (C) 2017 Hans-Peter Jansen +## Copyright (C) 2016 The Qt Company Ltd. +## +## This file is part of the examples of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:BSD$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https:#www.qt.io/terms-conditions. For further +## information use the contact form at https:#www.qt.io/contact-us. +## +## BSD License Usage +## Alternatively, you may use self file under the terms of the BSD license +## as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, self list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, self list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of The Qt Company Ltd nor the names of its +## contributors may be used to endorse or promote products derived +## from self software without specific prior written permission. +## +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QFile, QFileInfo, Qt +from PyQt5.QtGui import QStandardItem, QStandardItemModel +from PyQt5.QtWidgets import QApplication, QHeaderView, QTableView + + +class FreezeTableWidget(QTableView): + def __init__(self, model): + super(FreezeTableWidget, self).__init__() + self.setModel(model) + self.frozenTableView = QTableView(self) + self.init() + self.horizontalHeader().sectionResized.connect(self.updateSectionWidth) + self.verticalHeader().sectionResized.connect(self.updateSectionHeight) + self.frozenTableView.verticalScrollBar().valueChanged.connect( + self.verticalScrollBar().setValue) + self.verticalScrollBar().valueChanged.connect( + self.frozenTableView.verticalScrollBar().setValue) + + def init(self): + self.frozenTableView.setModel(self.model()) + self.frozenTableView.setFocusPolicy(Qt.NoFocus) + self.frozenTableView.verticalHeader().hide() + self.frozenTableView.horizontalHeader().setSectionResizeMode( + QHeaderView.Fixed) + self.viewport().stackUnder(self.frozenTableView) + + self.frozenTableView.setStyleSheet(''' + QTableView { border: none; + background-color: #8EDE21; + selection-background-color: #999; + }''') # for demo purposes + + self.frozenTableView.setSelectionModel(self.selectionModel()) + for col in range(1, self.model().columnCount()): + self.frozenTableView.setColumnHidden(col, True) + self.frozenTableView.setColumnWidth(0, self.columnWidth(0)) + self.frozenTableView.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) + self.frozenTableView.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff) + self.frozenTableView.show() + self.updateFrozenTableGeometry() + self.setHorizontalScrollMode(self.ScrollPerPixel) + self.setVerticalScrollMode(self.ScrollPerPixel) + self.frozenTableView.setVerticalScrollMode(self.ScrollPerPixel) + + def updateSectionWidth(self, logicalIndex, oldSize, newSize): + if self.logicalIndex == 0: + self.frozenTableView.setColumnWidth(0, newSize) + self.updateFrozenTableGeometry() + + def updateSectionHeight(self, logicalIndex, oldSize, newSize): + self.frozenTableView.setRowHeight(logicalIndex, newSize) + + def resizeEvent(self, event): + super(FreezeTableWidget, self).resizeEvent(event) + self.updateFrozenTableGeometry() + + def moveCursor(self, cursorAction, modifiers): + current = super(FreezeTableWidget, self).moveCursor(cursorAction, modifiers) + if (cursorAction == self.MoveLeft and + self.current.column() > 0 and + self.visualRect(current).topLeft().x() < + self.frozenTableView.columnWidth(0)): + newValue = (self.horizontalScrollBar().value() + + self.visualRect(current).topLeft().x() - + self.frozenTableView.columnWidth(0)) + self.horizontalScrollBar().setValue(newValue) + return current + + def scrollTo(self, index, hint): + if index.column() > 0: + super(FreezeTableWidget, self).scrollTo(index, hint) + + def updateFrozenTableGeometry(self): + self.frozenTableView.setGeometry( + self.verticalHeader().width() + self.frameWidth(), + self.frameWidth(), self.columnWidth(0), + self.viewport().height() + self.horizontalHeader().height()) + + +def main(args): + def split_and_strip(s, splitter): + return [s.strip() for s in line.split(splitter)] + + app = QApplication(args) + model = QStandardItemModel() + file = QFile(QFileInfo(__file__).absolutePath() + '/grades.txt') + if file.open(QFile.ReadOnly): + line = file.readLine(200).decode('utf-8') + header = split_and_strip(line, ',') + model.setHorizontalHeaderLabels(header) + row = 0 + while file.canReadLine(): + line = file.readLine(200).decode('utf-8') + if not line.startswith('#') and ',' in line: + fields = split_and_strip(line, ',') + for col, field in enumerate(fields): + newItem = QStandardItem(field) + model.setItem(row, col, newItem) + row += 1 + file.close() + tableView = FreezeTableWidget(model) + tableView.setWindowTitle("Frozen Column Example") + tableView.resize(560, 680) + tableView.show() + return app.exec_() + + +if __name__ == '__main__': + import sys + main(sys.argv) diff --git a/examples/itemviews/frozencolumn/grades.txt b/examples/itemviews/frozencolumn/grades.txt new file mode 100644 index 0000000..e1c6fcc --- /dev/null +++ b/examples/itemviews/frozencolumn/grades.txt @@ -0,0 +1,36 @@ + France , Norway , YDS , UK(tech.), UK(adj.) , UIAA , Ger , Australia , Finland , Brazil + +1, , 5.2, , , I , I , , , Isup +2, , 5.3, , , II , II , 11, , II +3, 3, 5.4, , , III , III , 12, , IIsup +4, 4, 5.5, 4a , VD , IV , IV , 12, , III +5a , 5-, 5.6, , S , V- , V , 13, 5-, IIIsup +5b , 5, 5.7, 4b , HS , V , VI , 14, 5, IV + , , , 4c , , V+ , , 15, , +5c , 5+, 5.8, , VS , VI- , VIIa , 16, 5, IVsup +6a , 6-, 5.9, 5a , HVS , VI , VIIb , 17, , V +6a+ , 6-/6 , 5.10a , , E1 , VI+ , VIIc , 18, 6-, VI +6b , , 5.10b , 5b , , , , 19, , VI/VI+ +6b+ , 6, 5.10c , , E2 , VII- , VIIIa , 20, 6, VIsup/VI+ +6c , 6+, 5.10d , 5c , , VII , VIIIb , 21, , VIsup +6c+ , 7-, 5.11a , , E3 , VII+ , VIIIc , 22, 6, 7a +6c+ , 7, 5.11b , , , , , 23, , 7b +7a , 7+, 5.11c , 6a , E4 , VIII- , IXa , 24, 7-, 7c +7a , 7+/8- , 5.11d , , , VIII , IXb , , , 7c +7a+ , 8-, 5.12a , , E5 , VIII+ , IXc , 25, 7, 8a +7b , 8, 5.12b , 6b , , , , 26, 8-, 8b +7b+ , 8/8+ , 5.12c , , E6 , IX- , Xa , 27, 8, 8c +7c , 8+, 5.12d , 6c , , IX , Xb , 28, 8, 9a +7c+ , 9-, 5.13a , , E7 , IX+ , Xc , 29, 9-, 9b +8a , , 5.13b , , , , , , 9, 9c +8a+ , 9-/9 , 5.13c , 7a , , X- , , 30, 9, 10a +8b , 9, 5.13d , , E8 , X , , 31, 10-, 10b +8b+ , 9/9+ , 5.14a , , , X+ , , 32, 10, 10c +8c , 9+, 5.14b , 7b , , , , 33, 10, 11a +8c+ , 10-, 5.14c , , E9 , XI- , , 34, 11-, 11b +9a , 10, 5.14d , 7c , , XI , , 35, 11, 11c +9a+ , , 5.15a , , , XI+ , , , , 12a +9b , , 5.15b , , , , , , , 12b + +# Wikipedia contributors. Grade (climbing). Wikipedia, The Free Encyclopedia. May 15, 2009, 20:42 UTC. +# Available at: http://en.wikipedia.org/w/index.php?title=Grade_(climbing)&oldid=290165724. Accessed May 28, 2009. diff --git a/examples/itemviews/interview/images/interview.png b/examples/itemviews/interview/images/interview.png new file mode 100644 index 0000000000000000000000000000000000000000..0c3d690258f42417c26d727ac6de9f10066790d1 GIT binary patch literal 174 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPHV5AX?bJpcp$|NjSyC7X0704e5@ zAirP+Mke0mDVu>@Z%-G;kcv3lu7kV>40xDiI~jL%+d717{_n%OoQuEYnT+G7&WOe{ zHN3hj0@$V<$V#5S@|Mt>ODmQ-FvogTe~DWM4fbkaP) literal 0 HcmV?d00001 diff --git a/examples/itemviews/interview/images/services.png b/examples/itemviews/interview/images/services.png new file mode 100644 index 0000000000000000000000000000000000000000..6b2ad969d4df7217dc622fde8d69b600329629e8 GIT binary patch literal 3749 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 P00000NkvXXu0mjfVbJO? literal 0 HcmV?d00001 diff --git a/examples/itemviews/interview/interview.py b/examples/itemviews/interview/interview.py new file mode 100644 index 0000000..01bb54c --- /dev/null +++ b/examples/itemviews/interview/interview.py @@ -0,0 +1,191 @@ +#!/usr/bin/env python + +############################################################################# +## +## Copyright (C) 2017 Hans-Peter Jansen +## Copyright (C) 2016 The Qt Company Ltd. +## +## This file is part of the examples of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:BSD$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https:#www.qt.io/terms-conditions. For further +## information use the contact form at https:#www.qt.io/contact-us. +## +## BSD License Usage +## Alternatively, you may use self file under the terms of the BSD license +## as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, self list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, self list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of The Qt Company Ltd nor the names of its +## contributors may be used to endorse or promote products derived +## from self software without specific prior written permission. +## +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import (QAbstractItemModel, QFileInfo, QItemSelectionModel, + QModelIndex, Qt) +from PyQt5.QtGui import QIcon +from PyQt5.QtWidgets import (QAbstractItemView, QApplication, + QFileIconProvider, QListView, QSplitter, QTableView, QTreeView) + + +images_dir = QFileInfo(__file__).absolutePath() + '/images' + + +class Node(object): + def __init__(self, parent = None): + self.parent = parent + self.children = [] + + +class Model(QAbstractItemModel): + def __init__(self, rows, columns, parent = None): + super(Model, self).__init__(parent) + self.services = QIcon(images_dir + '/services.png') + self.rc = rows + self.cc = columns + self.tree = [Node() for node in range(rows)] + self.iconProvider = QFileIconProvider() + + def index(self, row, column, parent): + if row < self.rc and row >= 0 and column < self.cc and column >= 0: + parentNode = parent.internalPointer() + childNode = self.node(row, parentNode) + if childNode is not None: + return self.createIndex(row, column, childNode) + return QModelIndex() + + def parent(self, child): + if isinstance(child, QModelIndex): + # parent of QModelIndex child + if child.isValid(): + childNode = child.internalPointer() + parentNode = self.parent(childNode) + if parentNode: + return self.createIndex(self.row(parentNode), 0, parentNode) + return QModelIndex() + else: + # parent of Node + if child: + return child.parent + + def rowCount(self, parent): + if parent.isValid() and parent.column() != 0: + return 0 + return self.rc + + def columnCount(self, parent): + return self.cc + + def data(self, index, role): + if not index.isValid(): + return None + elif role == Qt.DisplayRole: + return "Item %d:%s" % (index.row(), index.column()) + elif role == Qt.DecorationRole: + if index.column() == 0: + return self.iconProvider.icon(QFileIconProvider.Folder) + return self.iconProvider.icon(QFileIconProvider.File) + return None + + def headerData(self, section, orientation, role): + if role == Qt.DisplayRole: + return str(section) + if role == Qt.DecorationRole: + return self.services + return super(Model, self).headerData(section, orientation, role) + + def hasChildren(self, parent): + if parent.isValid() and parent.column() != 0: + return False + return self.rc > 0 and self.cc > 0 + + def flags(self, index): + if not index.isValid(): + return 0 + return Qt.ItemIsDragEnabled | super(Model, self).flags(index) + + def node(self, row, parent): + if parent and not parent.children: + parent.children = [Node(parent) for node in range(self.rc)] + if parent: + return parent.children[row] + else: + return self.tree[row] + + def row(self, node): + if node.parent: + return node.parent.children.index(node) + else: + return self.tree.index(node) + + +def main(args): + app = QApplication(args) + page = QSplitter() + data = Model(1000, 10, page) + selections = QItemSelectionModel(data) + table = QTableView() + table.setModel(data) + table.setSelectionModel(selections) + table.horizontalHeader().setSectionsMovable(True) + table.verticalHeader().setSectionsMovable(True) + # Set StaticContents to enable minimal repaints on resizes. + table.viewport().setAttribute(Qt.WA_StaticContents) + page.addWidget(table) + tree = QTreeView() + tree.setModel(data) + tree.setSelectionModel(selections) + tree.setUniformRowHeights(True) + tree.header().setStretchLastSection(False) + tree.viewport().setAttribute(Qt.WA_StaticContents) + # Disable the focus rect to get minimal repaints when scrolling on Mac. + tree.setAttribute(Qt.WA_MacShowFocusRect, False) + page.addWidget(tree) + list = QListView() + list.setModel(data) + list.setSelectionModel(selections) + list.setViewMode(QListView.IconMode) + list.setSelectionMode(QAbstractItemView.ExtendedSelection) + list.setAlternatingRowColors(False) + list.viewport().setAttribute(Qt.WA_StaticContents) + list.setAttribute(Qt.WA_MacShowFocusRect, False) + page.addWidget(list) + page.setWindowIcon(QIcon(images_dir + '/interview.png')) + page.setWindowTitle("Interview") + page.show() + return app.exec_() + + +if __name__ == '__main__': + import sys + main(sys.argv) diff --git a/examples/itemviews/pixelator/images/qt.png b/examples/itemviews/pixelator/images/qt.png new file mode 100644 index 0000000000000000000000000000000000000000..a2c9c77c16c32bd057392bb15b1a51119f5fcfa9 GIT binary patch literal 656 zcmV;B0&o3^P)xqQ`z}gP6jyO&%A|I+4Cqy1{A=O{Q*mqk9jS!vaL|Fm_xULefVjO2h^dQXAsI> zK;30=8R5AjS`aanuW)725Rr`E$YJ#*03uomQ+AOFq6(qpZ9dTM-@XuQpFx$yLu~wo zP-Vp622}S^87xr)QTCY&?D|W{su;lPwu6<){sSvp59S1;s)DF91+&hAl@){8ThLT7 zFiigce;SxE0j$gw#AN-7t}5f-|NpnatYokd4q%P9jYpbx=UbI7Fbyo zn7#b}|9sTM22|G$X3PL9+X-en|NsBZ4a`dSgQ@$h2BvR-mHiY1bM`~kW&HaIQ>OwZ zwV+X-3+AbP0;>as7hD|}^gxx}V+C`)fywRLWN>&Ps}uSFOO^!?0gw0a=tol52T#49 z6d@uC8~?%7eN%_3;`@xqGN)kK-C)x7zrawv(4vMCey|L 90000: + answer = QMessageBox.question(self, "Large Image Size", + "The printed image may be very large. Are you sure that " + "you want to print it?", + QMessageBox.Yes | QMessageBox.No) + if answer == QMessageBox.No: + return + + printer = QPrinter(QPrinter.HighResolution) + + dlg = QPrintDialog(printer, self) + dlg.setWindowTitle("Print Image") + + if dlg.exec_() != QDialog.Accepted: + return + + painter = QPainter() + painter.begin(printer) + + rows = self.model.rowCount(QModelIndex()) + columns = self.model.columnCount(QModelIndex()) + sourceWidth = (columns+1) * ItemSize + sourceHeight = (rows+1) * ItemSize + + painter.save() + + xscale = printer.pageRect().width() / float(sourceWidth) + yscale = printer.pageRect().height() / float(sourceHeight) + scale = min(xscale, yscale) + + painter.translate(printer.paperRect().x()+printer.pageRect().width()/2, + printer.paperRect().y()+printer.pageRect().height()/2) + painter.scale(scale, scale) + painter.translate(-sourceWidth/2, -sourceHeight/2) + + option = QStyleOptionViewItem() + parent = QModelIndex() + + progress = QProgressDialog("Printing...", "Cancel", 0, rows, self) + progress.setWindowModality(Qt.ApplicationModal) + y = ItemSize / 2.0 + + for row in range(rows): + progress.setValue(row) + QApplication.processEvents() + if progress.wasCanceled(): + break + + x = ItemSize / 2.0 + + for column in range(columns): + option.rect = QRect(x, y, ItemSize, ItemSize) + self.view.itemDelegate().paint(painter, option, + self.model.index(row, column, parent)) + x += ItemSize + + y += ItemSize + + progress.setValue(rows) + + painter.restore() + painter.end() + + if progress.wasCanceled(): + QMessageBox.information(self, "Printing canceled", + "The printing process was canceled.", QMessageBox.Cancel) + + def showAboutBox(self): + QMessageBox.about(self, "About the Pixelator example", + "This example demonstrates how a standard view and a custom\n" + "delegate can be used to produce a specialized " + "representation\nof data in a simple custom model.") + + def updateView(self): + self.view.resizeColumnsToContents() + self.view.resizeRowsToContents() + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + window = MainWindow() + window.show() + window.openImage(':/images/qt.png') + sys.exit(app.exec_()) diff --git a/examples/itemviews/pixelator/pixelator.qrc b/examples/itemviews/pixelator/pixelator.qrc new file mode 100644 index 0000000..c105e13 --- /dev/null +++ b/examples/itemviews/pixelator/pixelator.qrc @@ -0,0 +1,5 @@ + + + images/qt.png + + diff --git a/examples/itemviews/pixelator/pixelator_rc.py b/examples/itemviews/pixelator/pixelator_rc.py new file mode 100644 index 0000000..862ee4f --- /dev/null +++ b/examples/itemviews/pixelator/pixelator_rc.py @@ -0,0 +1,81 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sun May 12 15:31:20 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x02\x90\ +\x89\ +\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\ +\x00\x00\x26\x00\x00\x00\x26\x08\x00\x00\x00\x00\x8d\x56\xb6\x72\ +\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd\x7e\xfc\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd4\x08\ +\x06\x0a\x1f\x38\xb8\xaf\xd3\x52\x00\x00\x00\x02\x62\x4b\x47\x44\ +\x00\xff\x87\x8f\xcc\xbf\x00\x00\x02\x21\x49\x44\x41\x54\x38\xcb\ +\x63\xf8\x70\x96\x08\xf0\x81\xe1\xec\x7f\x22\xc0\x59\x54\x65\x9f\ +\xd7\x16\x38\xab\x4a\x4a\x6a\xb8\x97\x6d\xfd\x86\x53\xd9\xf9\x58\ +\x4e\x06\x38\xe0\xcf\xbc\x85\x55\xd9\xf3\x28\x46\x06\x14\xc0\x92\ +\xfd\x01\x53\xd9\x16\x11\x06\x0c\x20\x77\x0c\x5d\xd9\x64\x66\x06\ +\x2c\x80\x7d\x15\xaa\xb2\xc9\x70\x19\x36\x2d\x07\x7b\x35\x16\x18\ +\x8f\x79\x2d\xb2\xb2\xad\x50\xb3\x98\x43\xb7\x81\x7d\xf8\x69\x8d\ +\x07\xd4\xa1\x9c\x67\x10\xca\x5e\x40\xdd\x65\x71\x19\xe1\xb9\x23\ +\x5a\x10\x31\x95\xaf\x70\x65\xd1\x10\x91\x8c\xdf\xc8\x61\xf5\x25\ +\x00\x22\x5a\x09\x53\x76\x91\x09\xa2\x0a\xa1\xe4\x6d\x3e\xd0\xee\ +\xdf\xbe\x10\x6b\x9f\x41\x95\xc5\x43\x6c\xfc\x85\x50\x65\xc4\xe0\ +\x06\x54\xf7\x51\x19\x2c\x51\x03\x51\xf6\x99\x0b\xec\xfa\x4b\xc8\ +\xaa\x18\xc0\xea\xb6\x83\x95\xc9\xfe\x03\x2b\x5b\x0f\xe6\x04\xa3\ +\xaa\x82\xa8\x33\x05\xb3\xce\x82\x95\x15\x83\xd9\x5b\xd0\x54\x31\ +\x30\x4c\xfe\xff\x7f\x1a\x98\x31\x01\xac\xcc\x15\xc4\x64\xfd\x8a\ +\xae\x2a\xe3\xdf\xff\xff\xb7\xc1\xac\x64\xb0\x32\x4d\x10\x53\x1d\ +\x9b\xaa\xff\xff\xc0\xce\x76\x07\x2b\x93\x04\x31\x6d\xd0\x54\xa5\ +\xfd\x03\xf3\xe5\x40\x6c\x73\xb0\x32\x69\x10\xd3\x0a\x55\x15\x83\ +\xfb\x77\xb0\x80\x14\x88\x6d\x0d\x56\xa6\x03\x62\x2a\xa3\xaa\x82\ +\xaa\xfb\xcd\x0e\x62\x7a\x83\x95\x79\x83\x83\xed\x1d\xaa\x2a\x88\ +\xba\x4b\x60\x56\x16\x58\x59\x15\x98\xbd\xfc\xff\xff\x7c\xd4\xc4\ +\x06\x54\xd7\x0e\x66\xcc\x00\x2b\xdb\x09\x66\x3b\xff\xff\xff\xcd\ +\x0d\xcc\x4a\xf7\x83\xa9\xfb\xac\x06\xa6\x6f\x80\x95\xfd\x14\x04\ +\x73\xf6\x43\xd5\x65\xfc\xfb\x09\x53\xa7\x02\x26\xb5\xa0\x51\x9f\ +\x0b\xe6\xa9\x7d\x02\xab\x03\x85\x17\x5c\x1d\x18\xf4\x40\x95\xdd\ +\x63\x05\x73\xbd\x81\xc9\xed\xdb\x64\x70\x78\x21\xab\x13\xfa\x00\ +\x4b\x96\x05\x10\x01\x8f\xf7\xf0\xe8\x47\x52\xd7\x07\x4f\xbd\x9f\ +\x14\x21\x22\x0a\x1b\xff\xc1\xd4\x7d\x53\x87\xaa\xe2\xfb\x8c\xc8\ +\x32\xa7\x60\xd9\xdd\x60\xd2\xf5\xbf\xc0\x50\xbd\xd0\xa2\x86\x12\ +\x7e\xb0\x0c\xb8\x8e\x15\x2e\xcc\x21\x2d\xc1\x8a\x1e\x7e\xf0\xec\ +\xbc\x81\x8b\x01\x27\x88\x40\x2a\x1c\xce\xab\x63\xca\x43\x02\x54\ +\xe8\x2c\x72\x51\xf3\xad\x06\xcd\x40\xa1\x09\xdf\xfc\x20\xaa\x50\ +\x0b\xae\x17\xf5\xf2\x08\x45\xda\xbd\x1f\xc1\xe1\x02\x52\x85\x5e\ +\x0c\xfe\x3b\x37\x31\xc5\xc3\xc2\xc6\x3b\x6b\xd6\x4d\x68\xf8\xc5\ +\x9f\xc5\x52\x5a\xe2\x2e\x54\x89\x2b\xa2\x01\x68\x6d\xe8\xa9\x09\ +\x2e\xca\xc3\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x06\ +\x07\x87\x57\x47\ +\x00\x71\ +\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\ +\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() diff --git a/examples/itemviews/puzzle/example.jpg b/examples/itemviews/puzzle/example.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e09fb7075700b457d90e845fef814158bc2641d1 GIT binary patch literal 42654 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 yahI3uL*Ebwe7#c}81|KIb!<{yy%oBuDuZzQ|` literal 0 HcmV?d00001 diff --git a/examples/itemviews/puzzle/puzzle.py b/examples/itemviews/puzzle/puzzle.py new file mode 100755 index 0000000..5930475 --- /dev/null +++ b/examples/itemviews/puzzle/puzzle.py @@ -0,0 +1,431 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +import random + +from PyQt5.QtCore import (pyqtSignal, QAbstractListModel, QByteArray, + QDataStream, QIODevice, QMimeData, QModelIndex, QPoint, QRect, QSize, + Qt) +from PyQt5.QtGui import QColor, QCursor, QDrag, QIcon, QPainter, QPixmap +from PyQt5.QtWidgets import (QApplication, QFileDialog, QFrame, QHBoxLayout, + QListView, QMainWindow, QMessageBox, QSizePolicy, QWidget) + +import puzzle_rc + + +class PuzzleWidget(QWidget): + + puzzleCompleted = pyqtSignal() + + def __init__(self, parent=None): + super(PuzzleWidget, self).__init__(parent) + + self.piecePixmaps = [] + self.pieceRects = [] + self.pieceLocations = [] + self.highlightedRect = QRect() + self.inPlace = 0 + + self.setAcceptDrops(True) + self.setMinimumSize(400, 400) + self.setMaximumSize(400, 400) + + def clear(self): + self.pieceLocations = [] + self.piecePixmaps = [] + self.pieceRects = [] + self.highlightedRect = QRect() + self.inPlace = 0 + self.update() + + def dragEnterEvent(self, event): + if event.mimeData().hasFormat('image/x-puzzle-piece'): + event.accept() + else: + event.ignore() + + def dragLeaveEvent(self, event): + updateRect = self.highlightedRect + self.highlightedRect = QRect() + self.update(updateRect) + event.accept() + + def dragMoveEvent(self, event): + updateRect = self.highlightedRect.united(self.targetSquare(event.pos())) + + if event.mimeData().hasFormat('image/x-puzzle-piece') and self.findPiece(self.targetSquare(event.pos())) == -1: + self.highlightedRect = self.targetSquare(event.pos()) + event.setDropAction(Qt.MoveAction) + event.accept() + else: + self.highlightedRect = QRect() + event.ignore() + + self.update(updateRect) + + def dropEvent(self, event): + if event.mimeData().hasFormat('image/x-puzzle-piece') and self.findPiece(self.targetSquare(event.pos())) == -1: + pieceData = event.mimeData().data('image/x-puzzle-piece') + stream = QDataStream(pieceData, QIODevice.ReadOnly) + square = self.targetSquare(event.pos()) + pixmap = QPixmap() + location = QPoint() + stream >> pixmap >> location + + self.pieceLocations.append(location) + self.piecePixmaps.append(pixmap) + self.pieceRects.append(square) + + self.hightlightedRect = QRect() + self.update(square) + + event.setDropAction(Qt.MoveAction) + event.accept() + + if location == QPoint(square.x() / 80, square.y() / 80): + self.inPlace += 1 + if self.inPlace == 25: + self.puzzleCompleted.emit() + else: + self.highlightedRect = QRect() + event.ignore() + + def findPiece(self, pieceRect): + try: + return self.pieceRects.index(pieceRect) + except ValueError: + return -1 + + def mousePressEvent(self, event): + square = self.targetSquare(event.pos()) + found = self.findPiece(square) + + if found == -1: + return + + location = self.pieceLocations[found] + pixmap = self.piecePixmaps[found] + del self.pieceLocations[found] + del self.piecePixmaps[found] + del self.pieceRects[found] + + if location == QPoint(square.x() + 80, square.y() + 80): + self.inPlace -= 1 + + self.update(square) + + itemData = QByteArray() + dataStream = QDataStream(itemData, QIODevice.WriteOnly) + + dataStream << pixmap << location + + mimeData = QMimeData() + mimeData.setData('image/x-puzzle-piece', itemData) + + drag = QDrag(self) + drag.setMimeData(mimeData) + drag.setHotSpot(event.pos() - square.topLeft()) + drag.setPixmap(pixmap) + + if drag.exec_(Qt.MoveAction) != Qt.MoveAction: + self.pieceLocations.insert(found, location) + self.piecePixmaps.insert(found, pixmap) + self.pieceRects.insert(found, square) + self.update(self.targetSquare(event.pos())) + + if location == QPoint(square.x() / 80, square.y() / 80): + self.inPlace += 1 + + def paintEvent(self, event): + painter = QPainter() + painter.begin(self) + painter.fillRect(event.rect(), Qt.white) + + if self.highlightedRect.isValid(): + painter.setBrush(QColor("#ffcccc")) + painter.setPen(Qt.NoPen) + painter.drawRect(self.highlightedRect.adjusted(0, 0, -1, -1)) + + for rect, pixmap in zip(self.pieceRects, self.piecePixmaps): + painter.drawPixmap(rect, pixmap) + + painter.end() + + def targetSquare(self, position): + return QRect(position.x() // 80 * 80, position.y() // 80 * 80, 80, 80) + + +class PiecesModel(QAbstractListModel): + def __init__(self, parent=None): + super(PiecesModel, self).__init__(parent) + + self.locations = [] + self.pixmaps = [] + + def data(self, index, role=Qt.DisplayRole): + if not index.isValid(): + return None + + if role == Qt.DecorationRole: + return QIcon(self.pixmaps[index.row()].scaled( + 60, 60, Qt.KeepAspectRatio, Qt.SmoothTransformation)) + + if role == Qt.UserRole: + return self.pixmaps[index.row()] + + if role == Qt.UserRole + 1: + return self.locations[index.row()] + + return None + + def addPiece(self, pixmap, location): + if random.random() < 0.5: + row = 0 + else: + row = len(self.pixmaps) + + self.beginInsertRows(QModelIndex(), row, row) + self.pixmaps.insert(row, pixmap) + self.locations.insert(row, location) + self.endInsertRows() + + def flags(self,index): + if index.isValid(): + return (Qt.ItemIsEnabled | Qt.ItemIsSelectable | + Qt.ItemIsDragEnabled) + + return Qt.ItemIsDropEnabled + + def removeRows(self,row, count, parent): + if parent.isValid(): + return False + + if row >= len(self.pixmaps) or row + count <= 0: + return False + + beginRow = max(0, row) + endRow = min(row + count - 1, len(self.pixmaps) - 1) + + self.beginRemoveRows(parent, beginRow, endRow) + + del self.pixmaps[beginRow:endRow + 1] + del self.locations[beginRow:endRow + 1] + + self.endRemoveRows() + return True + + def mimeTypes(self): + return ['image/x-puzzle-piece'] + + def mimeData(self, indexes): + mimeData = QMimeData() + encodedData = QByteArray() + + stream = QDataStream(encodedData, QIODevice.WriteOnly) + + for index in indexes: + if index.isValid(): + pixmap = QPixmap(self.data(index, Qt.UserRole)) + location = self.data(index, Qt.UserRole + 1) + stream << pixmap << location + + mimeData.setData('image/x-puzzle-piece', encodedData) + return mimeData + + def dropMimeData(self, data, action, row, column, parent): + if not data.hasFormat('image/x-puzzle-piece'): + return False + + if action == Qt.IgnoreAction: + return True + + if column > 0: + return False + + if not parent.isValid(): + if row < 0: + endRow = len(self.pixmaps) + else: + endRow = min(row, len(self.pixmaps)) + else: + endRow = parent.row() + + encodedData = data.data('image/x-puzzle-piece') + stream = QDataStream(encodedData, QIODevice.ReadOnly) + + while not stream.atEnd(): + pixmap = QPixmap() + location = QPoint() + stream >> pixmap >> location + + self.beginInsertRows(QModelIndex(), endRow, endRow) + self.pixmaps.insert(endRow, pixmap) + self.locations.insert(endRow, location) + self.endInsertRows() + + endRow += 1 + + return True + + def rowCount(self, parent): + if parent.isValid(): + return 0 + else: + return len(self.pixmaps) + + def supportedDropActions(self): + return Qt.CopyAction | Qt.MoveAction + + def addPieces(self, pixmap): + self.beginRemoveRows(QModelIndex(), 0, 24) + self.pixmaps = [] + self.locations = [] + self.endRemoveRows() + + for y in range(5): + for x in range(5): + pieceImage = pixmap.copy(x*80, y*80, 80, 80) + self.addPiece(pieceImage, QPoint(x, y)) + + +class MainWindow(QMainWindow): + def __init__(self, parent=None): + super(MainWindow, self).__init__(parent) + + self.puzzleImage = QPixmap() + + self.setupMenus() + self.setupWidgets() + + self.setSizePolicy(QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)) + self.setWindowTitle("Puzzle") + + def openImage(self, path=None): + if not path: + path, _ = QFileDialog.getOpenFileName(self, "Open Image", '', + "Image Files (*.png *.jpg *.bmp)") + + if path: + newImage = QPixmap() + if not newImage.load(path): + QMessageBox.warning(self, "Open Image", + "The image file could not be loaded.", + QMessageBox.Cancel) + return + + self.puzzleImage = newImage + self.setupPuzzle() + + def setCompleted(self): + QMessageBox.information(self, "Puzzle Completed", + "Congratulations! You have completed the puzzle!\nClick OK " + "to start again.", + QMessageBox.Ok) + + self.setupPuzzle() + + def setupPuzzle(self): + size = min(self.puzzleImage.width(), self.puzzleImage.height()) + self.puzzleImage = self.puzzleImage.copy((self.puzzleImage.width()-size)/2, + (self.puzzleImage.height() - size)/2, size, size).scaled(400, + 400, Qt.IgnoreAspectRatio, Qt.SmoothTransformation) + + random.seed(QCursor.pos().x() ^ QCursor.pos().y()) + + self.model.addPieces(self.puzzleImage) + self.puzzleWidget.clear() + + def setupMenus(self): + fileMenu = self.menuBar().addMenu("&File") + + openAction = fileMenu.addAction("&Open...") + openAction.setShortcut("Ctrl+O") + + exitAction = fileMenu.addAction("E&xit") + exitAction.setShortcut("Ctrl+Q") + + gameMenu = self.menuBar().addMenu("&Game") + + restartAction = gameMenu.addAction("&Restart") + + openAction.triggered.connect(self.openImage) + exitAction.triggered.connect(QApplication.instance().quit) + restartAction.triggered.connect(self.setupPuzzle) + + def setupWidgets(self): + frame = QFrame() + frameLayout = QHBoxLayout(frame) + + self.piecesList = QListView() + self.piecesList.setDragEnabled(True) + self.piecesList.setViewMode(QListView.IconMode) + self.piecesList.setIconSize(QSize(60,60)) + self.piecesList.setGridSize(QSize(80,80)) + self.piecesList.setSpacing(10) + self.piecesList.setMovement(QListView.Snap) + self.piecesList.setAcceptDrops(True) + self.piecesList.setDropIndicatorShown(True) + + self.model = PiecesModel(self) + self.piecesList.setModel(self.model) + + self.puzzleWidget = PuzzleWidget() + + self.puzzleWidget.puzzleCompleted.connect(self.setCompleted, + Qt.QueuedConnection) + + frameLayout.addWidget(self.piecesList) + frameLayout.addWidget(self.puzzleWidget) + self.setCentralWidget(frame) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + window = MainWindow() + window.openImage(':/images/example.jpg') + window.show() + sys.exit(app.exec_()) diff --git a/examples/itemviews/puzzle/puzzle.qrc b/examples/itemviews/puzzle/puzzle.qrc new file mode 100644 index 0000000..4076cec --- /dev/null +++ b/examples/itemviews/puzzle/puzzle.qrc @@ -0,0 +1,5 @@ + + + example.jpg + + diff --git a/examples/itemviews/puzzle/puzzle_rc.py b/examples/itemviews/puzzle/puzzle_rc.py new file mode 100644 index 0000000..625f47a --- /dev/null +++ b/examples/itemviews/puzzle/puzzle_rc.py @@ -0,0 +1,2706 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sun May 12 15:49:57 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\xa6\x9e\ +\xff\ +\xd8\xff\xe0\x00\x10\x4a\x46\x49\x46\x00\x01\x01\x01\x00\x48\x00\ +\x48\x00\x00\xff\xe1\x00\x16\x45\x78\x69\x66\x00\x00\x4d\x4d\x00\ +\x2a\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\xff\xdb\x00\x43\x00\ +\x05\x03\x04\x04\x04\x03\x05\x04\x04\x04\x05\x05\x05\x06\x07\x0c\ +\x08\x07\x07\x07\x07\x0f\x0b\x0b\x09\x0c\x11\x0f\x12\x12\x11\x0f\ +\x11\x11\x13\x16\x1c\x17\x13\x14\x1a\x15\x11\x11\x18\x21\x18\x1a\ +\x1d\x1d\x1f\x1f\x1f\x13\x17\x22\x24\x22\x1e\x24\x1c\x1e\x1f\x1e\ +\xff\xdb\x00\x43\x01\x05\x05\x05\x07\x06\x07\x0e\x08\x08\x0e\x1e\ +\x14\x11\x14\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\ +\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\ +\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\x1e\ +\x1e\x1e\x1e\x1e\x1e\xff\xc0\x00\x11\x08\x01\xa8\x01\xa8\x03\x01\ +\x22\x00\x02\x11\x01\x03\x11\x01\xff\xc4\x00\x1d\x00\x00\x01\x04\ +\x03\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x05\ +\x06\x07\x02\x03\x08\x01\x09\xff\xc4\x00\x54\x10\x00\x01\x03\x03\ +\x03\x02\x05\x01\x04\x06\x07\x01\x0d\x07\x02\x07\x01\x02\x03\x04\ +\x00\x05\x11\x06\x12\x21\x07\x31\x13\x22\x41\x51\x61\x71\x14\x32\ +\x81\x91\x08\x15\x23\x42\xa1\xb1\x16\x33\x52\x62\xc1\xd1\xf0\x24\ +\x34\x37\x43\x63\x72\x74\x75\x82\x92\xb3\xb4\xe1\xf1\x17\x36\x53\ +\x73\x94\xa2\xb2\x25\x93\x09\x44\x83\xa3\xc2\xd2\xe2\xff\xc4\x00\ +\x1b\x01\x00\x02\x03\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x03\x01\x02\x04\x05\x06\x07\xff\xc4\x00\x35\x11\x00\ +\x02\x01\x02\x04\x02\x07\x07\x04\x03\x01\x01\x00\x00\x00\x00\x00\ +\x01\x02\x03\x11\x04\x12\x21\x31\x13\x41\x05\x22\x51\x61\x71\xa1\ +\xf0\x14\x32\x81\x91\xc1\xd1\xe1\x15\x23\xb1\xf1\x42\x52\x62\x63\ +\x24\xff\xda\x00\x0c\x03\x01\x00\x02\x11\x03\x11\x00\x3f\x00\xec\ +\xba\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\ +\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x28\xa2\x80\x0a\x2b\x15\x2d\ +\x29\xee\x69\x33\xf3\xd9\x68\x72\xb1\x50\xda\x5b\x80\xae\x8a\x62\ +\x9d\xa8\xe2\x45\x4e\xe7\x1d\x42\x13\xee\xa5\x00\x3f\x8d\x32\xcb\ +\xea\x36\x9f\x8f\xfd\x65\xea\xdc\x93\x9c\x63\xed\x08\x38\xfe\x34\ +\xa7\x88\xa6\xb9\x90\x9d\xf6\x26\xf4\x55\x7c\x7a\xa7\xa5\x87\x7d\ +\x41\x6c\x07\xfe\x70\x9a\xdf\x13\xa9\x5a\x6e\x49\x09\x6a\xfb\x6c\ +\x52\x89\xc6\xd1\x25\x19\xfe\x74\x7b\x44\x09\x27\x54\x53\x34\x5b\ +\xec\x67\xd2\x14\x1c\x49\x07\x90\x41\xc8\x3f\x8d\x2f\x66\x6b\x2e\ +\x76\x58\xab\xc6\xa4\x67\xb3\x22\xe2\xaa\x2b\x14\xad\x2a\xec\x6b\ +\x2a\xb9\x21\x45\x14\x50\x01\x45\x14\x50\x01\x45\x14\x50\x01\x45\ +\x14\x50\x01\x45\x14\x50\x01\x45\x14\x50\x01\x45\x14\x50\x01\x45\ +\x14\x50\x01\x45\x73\x86\xb2\xeb\x1e\xa8\xb8\xf5\x36\xef\xa7\x34\ +\xc4\xb6\xed\x36\xbb\x1b\xaa\x8f\x21\xef\x01\x0e\xbd\x21\xe4\xa8\ +\xa5\x43\xce\x0a\x52\x9c\x85\x0e\x06\x70\x33\x9e\x46\x15\xc5\xea\ +\x7e\xb2\x65\x7b\x9c\xb8\x35\x20\x7f\x65\xc8\xc8\x03\xff\x00\xb4\ +\x03\x5c\xbc\x4f\x4b\xe1\xf0\xf5\x38\x72\xbd\xfb\x8c\x32\xe9\x0a\ +\x4a\x4d\x6a\x74\x25\x15\x4b\x41\xeb\x1d\xd9\x18\xfb\x6d\xa2\x13\ +\xff\x00\xfc\xa5\xa9\xbf\xe7\xba\x9f\xa0\xf5\x8a\xca\xe0\x02\x65\ +\xb2\x7b\x07\xfe\x2c\xa5\xc0\x3f\x88\xfe\x55\x34\xfa\x63\x07\x3f\ +\xf3\xb7\x8d\xcb\xc7\x1b\x46\x5c\xcb\x2e\x8a\x89\x41\xea\x3e\x8f\ +\x97\x80\x2e\xc1\x85\x1f\xdd\x79\xa5\xa3\xf8\xe3\x1f\xc6\xa5\x31\ +\xde\x6a\x44\x76\xe4\x30\xe2\x5d\x65\xd4\x05\xa1\x69\x39\x0a\x49\ +\x19\x04\x1f\x6c\x56\xea\x55\xe9\x55\xf7\x24\x9f\x83\x34\x46\xa4\ +\x27\xee\xbb\x9b\x28\xa2\x8a\x69\x70\xa2\x8a\x28\x00\xa2\x8a\x28\ +\x00\xa2\x8a\x28\x00\xa2\x8a\x28\x00\xa2\x8a\x28\x00\xa2\x8a\x28\ +\x00\xa2\x8a\x28\x00\xa2\x8a\x28\x00\xa2\x82\x40\xa4\xb2\xa5\x21\ +\xa4\x92\x54\x05\x00\x6f\x5b\x89\x48\xe4\xd3\x65\xc6\xef\x1e\x2b\ +\x6a\x52\xdc\x4a\x42\x46\x49\x27\x00\x54\x1b\xa8\xbd\x4a\xb4\x69\ +\x98\xab\x54\x99\x29\x2e\x81\x90\xd8\x57\x3f\x8f\xb5\x72\xfe\xbc\ +\xea\x86\xa1\xd6\x4b\x5a\x23\xc8\xfb\x25\xb4\x28\x82\xbd\xdb\x1a\ +\x1f\xff\x00\xb1\xac\xb5\x71\x0a\x2b\x41\xb4\xa8\x4e\xab\xd3\x62\ +\xfc\xd7\xfd\x73\xd3\x3a\x7d\xb7\x52\x25\x89\x8f\x27\x23\xc3\x61\ +\x5c\x67\xfe\x57\xf9\x57\x3d\x6b\x3f\xd2\x3b\x56\x5d\x5e\x72\x3d\ +\x85\xb1\x11\xa3\x90\x3c\x24\xee\x5f\xe7\xc9\xfe\x55\x08\xfd\x59\ +\x09\x4e\xf8\xd3\x9c\x2f\xa9\x47\x71\x79\xc2\x4a\x4a\x7d\xd0\x81\ +\x82\xaf\xc7\x02\x9d\xed\xce\x6c\x7d\x30\xed\x16\xf8\xe9\x51\x48\ +\x52\x8a\x9b\x09\x18\xc7\x0a\x3e\xde\xfc\xd6\x47\x5a\xfa\xda\xfe\ +\x27\x42\x38\x18\x47\x72\x1d\x72\xbd\x75\x02\xf8\xe3\x92\x25\x49\ +\x9c\x42\xb9\x25\xc5\x12\x79\xfa\xf3\x4c\x32\xe0\xea\x1f\x15\x49\ +\x72\x44\x85\xb8\x39\x50\xdd\x8c\x55\xa1\x73\x2d\xcc\x94\xe1\x97\ +\x36\x44\xc5\x92\x30\x96\x13\xb5\x94\x28\x0c\x60\xa8\x77\xfc\x68\ +\x95\x0d\x05\xb5\xa1\x96\x5b\x0e\x60\x78\x8e\x78\x7e\x32\xd2\x3b\ +\x0d\xbb\xbc\xb9\xf8\xc2\xaa\x63\x8a\x90\xd7\x84\x8b\x5c\xfd\x79\ +\x15\x22\xa2\x5f\xd2\xb2\x82\xb7\xf7\x0e\xe0\x2b\x38\xad\x4e\x8b\ +\xcb\x07\x2e\x4b\x71\xb2\x39\xf3\x13\x56\x14\xcb\x5c\xb1\x19\xc5\ +\x38\xdb\xa5\xa6\x88\x23\xed\x6b\x28\x2a\xfa\x25\x38\x1f\xc2\xa1\ +\xf7\x24\xca\x48\x52\xa3\xda\x9b\x71\x09\xc9\xf1\x1a\x6b\x79\xfc\ +\x49\xcd\x69\x85\x77\x3e\x66\x5a\x98\x65\x05\x71\x5e\x98\xea\x3e\ +\xb1\xd3\x52\x03\xb6\xeb\xcc\xa6\xb6\x8e\x52\x97\x0e\x0f\xd4\x76\ +\x35\x73\x68\x5f\xd2\x96\xeb\x15\x48\x67\x51\xc3\x44\x94\x81\x8f\ +\x15\xaf\x22\xfe\xa7\xd0\xfe\x55\xce\xab\x44\xa7\x3f\x75\xc5\x83\ +\xe8\x40\xe0\xfc\x81\x5a\x3c\x05\x28\x12\x94\x20\x94\x9c\x29\x25\ +\x38\x50\x3e\xc6\x99\x28\x42\x7b\x99\x1c\x7b\x8f\xa4\x7d\x29\xea\ +\xee\x9e\xd6\x91\x3c\x5b\x5d\xc5\x2b\x71\x23\xcf\x1d\xd3\xb5\xd4\ +\x7e\x1e\xa3\xe4\x55\xa3\x06\xe6\xc4\x84\x8d\xab\x15\xf2\x62\xd3\ +\x32\xe9\x6a\x7d\x33\x6d\x8f\x3b\x15\xd6\xd5\x9d\xc8\x59\x49\x49\ +\x1f\x35\x7b\xf4\xb7\xf4\x95\xbe\x59\x5c\x6a\xdf\xaa\x5b\x54\xf8\ +\xe3\x00\x3f\x9c\x3a\x91\xf5\xec\x7f\x1f\xce\xa1\x67\x86\xda\xaf\ +\x32\x8e\x0d\x6c\x77\xfa\x56\x14\x38\x35\x95\x55\xfd\x38\xea\x75\ +\x83\x56\xc4\x43\xd6\x9b\x8b\x52\x38\xca\x9b\x27\x0e\x23\xea\x9e\ +\xf5\x62\xc5\x98\xdb\xa9\x04\x28\x1c\xd3\x61\x51\x4f\x62\x82\xba\ +\x2b\xc4\xa8\x1e\xd5\xed\x5c\x90\xa2\x8a\x28\x00\xa2\x8a\x28\x00\ +\xa2\x8a\x28\x00\xa2\x8a\x28\x00\xa2\x8a\x28\x00\xa2\x8a\x28\x03\ +\x88\xa1\x7f\xbf\x27\x51\x3f\xe9\xa9\x3f\xf8\x87\x6a\x67\xa2\xac\ +\x97\x2d\x65\xab\x5c\xb0\xda\x56\xd4\x76\xa1\xb4\x97\xae\x33\x5d\ +\x41\x5a\x58\x4a\xb3\xb1\x09\x48\x23\x72\xd5\x82\x46\x48\x00\x02\ +\x79\xed\x50\xc8\x5f\xef\xc9\xd4\x5f\xfa\x6a\x4f\xfe\x21\xda\xbe\ +\xbf\x45\x38\x81\x1a\x5b\x51\x5c\xd6\x8f\xdb\xcc\xbf\x3e\x82\xb2\ +\x39\x2d\xb4\x94\x21\x23\xe8\x30\xaf\xcc\xd7\x98\x8e\x12\x18\x9e\ +\x91\x9a\xa8\xae\x97\xe0\xf3\x98\x6a\x4a\xad\x6c\xaf\x6d\x4f\x17\ +\xa0\xf4\x3b\xb7\x77\x34\xb4\x3d\x51\x27\xfa\x42\xdb\x25\xdf\x09\ +\xe2\x93\xb8\x71\x9f\x28\x48\x07\x1e\xa0\x1c\x8c\xf3\x55\xc5\xce\ +\xd5\x3a\xdd\xac\xe0\x69\x59\x0d\x62\x74\xcb\x82\x21\xa4\x83\x94\ +\xa4\x28\x15\x78\x9f\x29\x09\x1b\xa8\x44\xc9\x09\xea\xfe\x96\xbb\ +\x20\xab\xed\x0e\x6a\x20\xd2\xd5\x9f\xdc\x78\x2d\x2b\x1f\x88\x35\ +\x6e\x5f\x7f\x57\xc1\xfd\x22\xb4\xf8\x91\x6c\x6e\x63\xf7\x6b\x5b\ +\xa2\x33\xeb\x5f\xfb\x89\xc8\xe1\xc2\xa7\x12\x92\x0e\x54\xb4\x38\ +\x10\x48\x23\x84\x8e\xf5\x34\xb0\x58\x6c\x6c\x23\x52\x31\xcb\xad\ +\x9a\x5c\xd1\xa1\x53\xa7\x5d\x5d\x2b\x59\xdb\xe0\x54\xfa\x96\xd2\ +\xed\x8e\xf9\x2a\xd4\xf3\xa8\x75\x71\xd4\x12\x56\x80\x40\x39\x00\ +\xff\x00\x8d\x74\x86\x8a\xff\x00\xdc\xdb\x27\xfd\x1f\x1f\xfe\xed\ +\x35\x4e\xf5\x96\xe7\x6f\x91\xa8\x25\x5b\x9a\xb3\x35\x1e\x64\x77\ +\x92\x5c\x9a\x97\x32\xa7\xc6\xce\xc5\x38\x18\xee\x3d\x4f\x6a\xb8\ +\xb4\x57\xfe\xe6\xd9\x3f\xe8\xf8\xff\x00\xf7\x69\xab\xf4\x4d\x28\ +\xd2\xc5\xd5\x84\x1d\xd2\xfb\xec\x3f\x05\x05\x0a\xd3\x8a\x1d\xe8\ +\xa2\x8a\xf4\x67\x50\x28\xa2\x8a\x00\x28\xa2\x8a\x00\x28\xa2\x8a\ +\x00\x28\xa2\x8a\x00\x28\xa2\x8a\x00\x28\xa2\x8a\x00\x28\xa2\x8a\ +\x00\x2b\x15\xa8\x24\x50\xb5\x84\x8c\xd3\x0e\xa0\xbd\x47\xb7\xc4\ +\x75\xf7\xde\x4b\x6d\xb6\x92\xa5\xa9\x47\x01\x20\x7a\x9a\x1b\x49\ +\x5d\x80\xa2\xef\x75\x66\x1b\x2a\x5b\x8e\x25\x21\x23\x24\x93\x80\ +\x05\x73\xef\x58\x7a\xe7\x06\xd4\xd3\x90\xac\xce\x99\x32\xd4\x76\ +\x25\x48\xe4\x0f\xa7\xf9\xd5\x67\xd7\x9e\xb6\xbd\x7a\x7d\xfb\x3d\ +\x85\xe5\x26\x30\x25\x25\x40\xe0\xb8\x7d\xcf\xc7\xc7\xe7\x5c\xff\ +\x00\x26\xe2\xec\xa5\xf8\x4d\x2d\x4b\x5a\xc1\x0e\xba\x4f\x27\xf1\ +\xf4\x1f\x1e\xbf\x4a\xc7\x52\x72\x93\xb1\xb2\x8e\x19\x7b\xd5\x3e\ +\x44\x9a\xf3\xa8\xaf\xda\x9a\xf6\xa5\xbc\xa3\x31\xe2\xb2\x50\xd2\ +\x95\x96\xd2\x3d\x49\xf4\xc0\xf5\x39\xa5\xb6\xb6\xdc\x72\x4b\x5e\ +\x1a\x05\xce\x43\x6a\xf0\xfc\x57\x13\xfb\x16\x95\xfd\x86\x9b\x1c\ +\x13\xf8\x7c\x9c\x0e\x6a\x2b\x6b\x79\x0b\x3f\x66\x8e\x4e\xc1\xca\ +\xd4\x14\x40\x5e\x3d\xc8\xf9\xf6\xfc\x39\xe6\x9f\x58\x9a\xb5\x25\ +\x21\x95\x06\xe3\xb2\x48\x71\xf4\x80\x0a\x8f\xab\x4d\x8e\xc0\x7a\ +\x9f\x4f\x55\x12\x6b\x1d\x48\xeb\xa9\xd5\xa4\xf4\xb4\x47\xf9\x0c\ +\xb6\xc3\x98\x91\x21\x72\x5c\x3b\x9c\x77\x68\xf2\xa4\x0f\x75\x0f\ +\xbd\xf4\x1c\x1f\x73\xda\x9a\xa7\xdc\xd2\x85\x15\xdc\xe6\xc5\xb7\ +\x30\xac\xa9\x4d\xaf\x97\x1e\xe3\x8d\xc8\x4f\x20\x7b\x02\x31\xf1\ +\x4f\x9a\x5b\xa7\xda\xe3\x5f\xa5\x0f\xdb\x63\x1b\x75\xa0\xf3\xf6\ +\xf9\x0b\x2d\xa5\xcc\x71\x94\x03\xe6\x57\xd7\x18\xe3\x8c\x0a\xb7\ +\xb4\x6f\x40\x74\x95\xad\x9c\xde\x19\x45\xe2\x6a\x80\x52\xe4\x3c\ +\x54\xbe\x7e\x01\x38\x03\xd7\x9a\x5a\x69\x6e\x5e\x7d\x5d\x9f\xaf\ +\x5e\x07\x3c\xc6\xd4\x53\x2e\x0e\x2a\x3d\x92\xdb\x74\xbb\xac\x79\ +\x50\x0e\xe6\xa3\xa4\x7b\xe1\x18\x51\xfc\x54\x3b\xd4\x92\xdf\xa2\ +\xfa\x9f\x7b\x86\xa7\x54\xf7\xea\xa6\x00\x4e\xe6\x63\xfe\xc7\x8e\ +\xc3\x71\xee\x4f\x3e\xa4\x9f\x7a\xea\xdb\x5e\x9a\xb6\x5b\xe3\x08\ +\xb0\x62\xb0\xcb\x09\x18\x21\x2d\xa5\x39\xf8\x24\x0a\x5e\xcd\x9e\ +\x32\x54\x14\x94\x0c\x01\xe5\x18\xe1\x3f\x41\xda\xac\xa4\xff\x00\ +\xc5\x5b\xcc\x53\xa9\x0f\xf2\xd7\xc9\x7a\xf8\x9c\x8f\xff\x00\xb1\ +\xdd\x4a\x94\x87\x5c\x98\xea\xc9\x5e\x00\x49\x59\xc7\xb2\x92\x73\ +\xc1\x1e\xc7\xbf\x15\xa9\xde\x96\xea\xa3\x35\x08\x4b\xc8\x44\x84\ +\x8c\x07\x50\x3c\x30\xbc\x7a\xab\xe4\xe4\x8e\x7b\xe2\xbb\x18\x45\ +\x6d\x2e\x15\x14\xa7\x80\x07\x22\xbc\x5c\x28\x0e\x0d\xaa\x6d\xa3\ +\x9e\xd9\x19\x1f\x91\xa2\xf5\x3f\xd8\x15\x5a\x7f\xe9\xfc\x9c\x87\ +\x0f\xa3\x77\xe9\x4a\x53\x6d\x86\xfc\x50\x77\x17\x0e\xed\xa3\x27\ +\x03\x91\xdf\xde\x9b\xb5\x1f\x4c\x2f\xd1\xe6\xbb\x1e\x54\x34\xf8\ +\x8d\x21\x4a\x0f\x25\x5c\x28\x63\x19\x3f\xc0\xd7\x65\x7d\x91\xb6\ +\x50\x52\xde\xdc\x7c\x0e\xd4\x96\x65\xbe\xdf\x29\x59\x93\x1d\x0e\ +\x12\x36\x92\x47\x04\x7c\xd5\x33\xd4\x5f\xe4\x4b\xa9\x4e\x5a\x38\ +\xe8\x70\x94\xbd\x33\x32\x24\x77\xb7\x36\xb5\x2d\x04\x04\x92\x9f\ +\x4e\x32\x3e\x79\xed\x4c\x13\x2d\x8e\x24\xa9\x21\xa2\x36\xf2\xb0\ +\x7f\x70\x73\xeb\x5d\xe9\x73\xd1\xf6\x29\xb9\x58\x8e\x86\xdc\xc1\ +\xf3\x84\x8c\x82\x7d\x73\x51\x7b\xd7\x49\x74\xfd\xc2\x21\x6f\xc3\ +\x0d\x9f\xed\x36\x90\x0e\x7e\xbf\xeb\xbd\x32\x38\xca\x91\xdd\x5c\ +\x54\xb0\xf4\x27\xb3\x68\xe3\x5d\x31\x7d\xbd\xe9\xa9\xad\xdc\xed\ +\x53\x1f\x8c\xeb\x6a\xe0\xa1\x44\x11\x5d\x41\xd1\xff\x00\xd2\x59\ +\xc9\x4f\xc7\xb4\xea\x86\x9b\x69\xd5\x00\x94\xca\x4f\x94\x28\xff\ +\x00\x78\x76\xfc\xb1\x50\x0d\x7f\xd1\x5b\x8d\xad\x97\x8d\xb5\x84\ +\xbd\x1c\x82\xaf\x10\xe4\xaf\xe3\x38\xaa\x66\xe3\x02\x6d\xb5\x4a\ +\x6a\x53\x2a\x65\x7b\xb0\x9e\x31\xdb\xe6\xb5\xc6\xb4\x2b\xad\x37\ +\xf3\x31\x55\xc2\x38\x6a\xf5\x5d\xa7\xd4\xfd\x2d\xa8\x63\xdc\xe3\ +\x21\x68\x71\x2a\xdc\x32\x30\x73\x9a\x92\xb6\xad\xc2\xb9\x17\xf4\ +\x56\xd6\x2e\x4b\xb0\x43\x87\x29\xf5\x19\x2c\x0f\x0d\x40\x9e\xe0\ +\x76\x3f\x95\x75\x6d\xaa\x40\x75\x94\x9c\xe7\x22\x9f\x86\xa8\xe7\ +\x16\xa5\xba\x30\xb4\xe2\xdc\x58\xbe\x8a\x28\xa7\x80\x51\x45\x14\ +\x00\x51\x45\x14\x00\x51\x45\x14\x00\x51\x45\x14\x00\x51\x45\x14\ +\x01\xc4\x50\xbf\xdf\x93\xa8\xbf\xf4\xd4\x9f\xfc\x43\xb5\x7d\xfe\ +\x8a\x72\xb7\xe9\x1d\x41\x01\x6a\xfd\xac\x4d\x41\x24\xed\x3e\x88\ +\x71\x28\x71\x27\xf1\xdc\x7f\x23\x54\x24\x2f\xf7\xe4\xea\x2f\xfd\ +\x35\x27\xff\x00\x10\xed\x4d\xf4\x06\xa3\x97\xa1\x75\x74\x9b\xdb\ +\x11\x9c\x9b\x6d\xb8\x32\x96\xee\x71\x1b\x50\x0e\x12\x8c\xec\x75\ +\xbc\xe0\x15\x00\x48\x29\x24\x64\x1e\xf9\x15\xe6\x69\xe2\xa1\x43\ +\xa4\xa7\x9d\xd9\x3f\xc1\xe7\x70\xb5\x55\x2a\xf9\x9e\xda\x89\xcc\ +\x77\x93\xd5\x8d\x2b\x01\x39\xf1\x91\xa9\x5b\x2a\x4f\xf7\x5b\xde\ +\x55\xf9\x62\xad\x5d\x66\xfa\x15\xfa\x4c\xe8\x18\xe3\x1b\x9b\xb6\ +\xdc\x14\xae\x7f\xb4\xdf\xff\x00\xf3\x4e\x70\xa1\x68\x79\x85\x8e\ +\xb0\xdb\xa1\x4b\x9c\xe2\xa2\xa9\xd8\xde\x18\x3e\x5d\xfe\x55\xa8\ +\x37\xc0\x0b\x3c\x85\x13\xd8\x66\xaa\x6b\x9e\xa2\xb8\xbf\xd4\xd8\ +\x3a\xe5\x09\x42\x66\x41\x75\x61\x31\x9c\xc9\x42\x99\x5a\x3c\x35\ +\x37\x9e\xe0\xed\xc6\x15\xee\x33\x83\xda\x9f\x1a\x94\xfa\x36\x30\ +\xa5\x51\xee\xef\xf0\x34\xe9\x86\x8a\x4d\xde\xed\x3f\x80\xbf\xaa\ +\xff\x00\xef\x85\x76\xff\x00\xe6\x27\xff\x00\xc1\x35\x7c\xe8\xaf\ +\xfd\xcd\xb2\x7f\xd1\xf1\xff\x00\xee\xd3\x54\x46\xba\xd5\x16\xed\ +\x4a\xb4\xc9\x63\x4e\xc6\xb7\xcd\x5a\x92\xb9\x12\x42\xc2\xdc\x73\ +\x09\xc0\x4e\xed\xa0\xed\x1f\xe1\xda\xaf\x7d\x15\xff\x00\xb9\xb6\ +\x4f\xfa\x3e\x3f\xfd\xda\x69\x7d\x14\xe1\x2c\x5d\x59\x42\x57\x4f\ +\x5f\x9b\x1b\x83\x71\x75\xa6\xe2\xee\x98\xef\x45\x14\x57\xa3\x3a\ +\x81\x45\x14\x50\x01\x45\x14\x50\x01\x45\x14\x50\x01\x45\x14\x50\ +\x01\x45\x14\x50\x01\x45\x14\x50\x01\x58\xb8\xa0\x91\x9a\xc8\x9c\ +\x0c\xd3\x5d\xde\x62\x58\x69\x44\x9a\x00\x43\xa9\x6f\x71\xad\x90\ +\x5e\x93\x25\xf4\x32\xd3\x48\x2a\x5a\xd4\x70\x12\x07\xad\x70\xef\ +\x5f\xfa\xd5\x37\x53\x5c\xdd\xb4\xd9\xde\x5b\x76\xd6\xd7\x81\xb4\ +\xff\x00\x5a\x7d\xcf\xbf\xf8\x54\x8b\xf4\xbb\xea\x7b\xcf\xcb\xfe\ +\x89\x5a\x65\x1d\x88\x39\x98\xa4\x1f\xde\xfe\xc9\xf8\x1f\xcc\xfc\ +\x57\x2d\x38\xe1\x5e\x48\x59\x28\x07\xef\x9e\xea\x3f\xe5\x4a\x6d\ +\xcb\x51\x94\xd2\x5d\x66\x2e\x9d\x25\x4e\xba\xb4\xa9\xce\xff\x00\ +\xd6\x63\x93\xf4\xa4\x65\xe2\xf1\x11\xd8\x18\x1c\xef\x56\x71\x91\ +\xf2\x7d\xbf\x9d\x27\x2a\x5b\x9e\x44\x79\x53\xeb\x4a\xed\xd1\x5f\ +\x98\xfb\x50\xe1\xb2\xe3\xae\xba\xb0\x94\xa1\x09\xdc\xa5\xab\xe9\ +\x51\x95\x41\x5d\x8d\x52\x95\x59\x59\x7a\xee\x1d\x60\xb8\x86\x98\ +\x53\x49\x71\x61\xa3\x80\xa0\x84\xf9\xdd\x3e\x80\x7b\x7b\x01\x5d\ +\x1d\xd1\x7e\x8c\x49\x75\x11\xb5\x0e\xb5\x8e\x94\x24\x25\x2a\x85\ +\x68\x71\x3e\x54\x27\xba\x4b\xa3\xf8\xec\xfc\x4d\x3b\xf4\x1f\xa3\ +\x90\xb4\xc4\x78\xb7\xdd\x47\x19\x32\xef\x65\x21\xc6\x18\x58\x05\ +\x11\x09\xf5\xc7\xef\x2f\xe4\xf6\xf4\xab\xb1\x5b\xce\xe5\xac\xa8\ +\x1c\xe4\x93\xeb\x5c\xba\xb5\x54\xde\x9b\x1d\x88\x5e\x94\x72\xad\ +\xff\x00\x83\xd8\xed\x04\x27\x03\x69\x38\xc7\x09\x09\x48\x00\x60\ +\x00\x3d\x00\xa5\x71\xd8\x0b\xe3\x97\x08\xe0\xe0\x7f\x0c\xd6\x29\ +\x42\x36\x6f\x70\x1c\x1c\x61\x03\xbf\xe3\x4b\x59\x5c\x82\x9d\xad\ +\xa0\x32\x9f\xe3\x55\x8a\x11\x26\x2a\x62\x02\x8a\x7c\xe9\x43\x69\ +\xfe\x35\xea\x9b\x82\x8e\x14\xe0\x51\xad\x68\x61\xc7\x55\xe6\x5a\ +\x96\x47\xb9\xed\x5b\x5b\x80\x08\xc9\xc1\x1d\xfb\xd3\x92\xec\x42\ +\x76\xdd\x98\x20\x42\xc7\x2b\x03\xf0\xcd\x6a\x75\x8b\x7a\xff\x00\ +\xe1\x07\xce\x07\xf1\xa7\x06\xe3\x36\x8c\x27\x18\xc7\x7c\xf7\xac\ +\x84\x66\x72\x41\x03\x8f\x8c\x54\xb8\xb6\x82\xe3\x42\x99\x86\x01\ +\x01\xdc\xfb\xf3\x5a\x5d\x6d\xa2\x0e\xd1\xba\x9e\xdc\x8b\x1b\x61\ +\x3e\x51\x8e\x7b\xd2\x65\x47\x61\x00\xed\x52\x47\xe3\x4b\x94\x4b\ +\x29\x0c\xcb\x65\xac\x02\xa6\x17\x9f\x42\x38\xa4\xab\x8e\x82\xbd\ +\xac\xad\x48\x57\x38\x0b\xe2\x9f\xd6\xc3\x7d\x82\xc2\x49\xe7\x93\ +\x9a\x45\x2e\x39\xd8\x72\x90\xa0\x79\xc6\x29\x72\x80\xc5\x21\x96\ +\x43\x44\x20\xb6\xea\x76\xa8\x8c\x13\x8e\x08\xaa\xbb\xab\x3d\x35\ +\xb5\x6a\x48\x0f\xb8\xd3\x49\x8b\x3d\x00\x29\x0a\x1c\x03\x8f\xa5\ +\x5b\x2a\x52\x9a\x05\xb2\x0a\xdb\xfe\xca\x8f\x3f\x81\xa4\x17\x08\ +\xe8\x75\x1e\x4e\x47\x3b\x4f\xaa\x7e\x0d\x21\xe8\xf4\x1a\x9b\x5b\ +\x1c\xc1\xd1\xb7\x17\xa5\xf5\x93\xb6\x7b\x92\x8c\x79\x28\x21\x0d\ +\xa9\x47\x09\x74\x64\x91\xf8\xd7\x6c\xe8\x8b\x88\x93\x05\xa3\xbb\ +\x9c\x73\x5c\xa7\xd7\x8d\x28\xb9\x50\x13\x77\x84\x16\x89\x71\x32\ +\x49\x47\x7c\x03\xc6\x7d\xf1\xcd\x4d\xbf\x45\xce\xa0\xbf\x7d\xb4\ +\x88\x97\x27\xf3\x3a\x2e\x10\xe1\x3d\xd6\x3d\x15\x5d\x2c\x35\x48\ +\xc3\xaf\xdb\xb9\xc9\xc5\xd3\xb4\xb3\x9d\x4c\x85\x65\x35\x95\x22\ +\xb7\xc8\x0e\xb4\x08\x39\xc8\xa5\xb5\xd2\x33\x05\x14\x51\x40\x05\ +\x14\x51\x40\x05\x14\x51\x40\x05\x14\x51\x40\x05\x14\x51\x40\x1c\ +\x4b\x19\xb5\xb7\xd6\x6e\xa2\x25\xc4\x29\x04\xde\x64\x28\x05\x0c\ +\x70\x5f\x74\x83\xf8\x82\x0f\xe3\x52\x2a\xe9\x7b\xbe\x88\xd2\xb7\ +\x6b\xda\xaf\x57\x0b\x2b\x0f\x5c\x16\xda\x5a\x5b\xdb\x94\x92\xb4\ +\xa7\x3b\x42\x80\x20\x2b\x19\xee\x73\xc7\x14\xba\x06\x9e\xb1\x41\ +\xc7\xd8\xec\xf0\x19\x23\xf7\x92\xc2\x77\x7e\x78\xcd\x79\xcc\x5f\ +\x42\xd4\xc4\x57\x95\x4c\xc9\x26\x71\xff\x00\x4c\x9b\x93\xeb\x68\ +\x50\x9d\x2d\xbc\xea\xbd\x2d\x09\x76\xcd\x3f\x09\xeb\x8d\xad\x6e\ +\xad\xd6\xe2\x2e\x32\xdc\x0c\x29\x44\x95\x06\xd4\x9c\x10\x92\xa3\ +\x9c\x1c\x8c\x93\x8c\x66\xb7\x9d\x0b\xac\xef\x13\xdf\x9a\xab\x2a\ +\x98\x32\x1d\x53\x8b\xf1\x16\x96\xc2\x4a\x89\x27\x85\x1c\xe3\x9a\ +\xe8\x7c\x51\x5a\x5f\x43\xf1\x22\xa3\x5a\xab\x92\x5e\x0b\xee\x68\ +\x58\x04\xe2\xa3\x39\x36\x91\x4a\x59\xfa\x41\x77\x72\x43\x6a\xba\ +\xcf\x88\xc3\x19\x05\xc4\xb2\xa2\xb7\x31\xea\x06\x40\x00\xfc\xf3\ +\x57\x3c\x56\x1a\x8b\x19\xa8\xcc\x20\x21\xa6\x90\x10\x84\x8f\x44\ +\x81\x80\x2b\x65\x15\xbb\x09\x81\xa3\x84\x4f\x86\xb7\x34\xd1\xc3\ +\xc2\x8f\xba\x14\x51\x45\x6c\x1e\x14\x51\x45\x00\x14\x51\x45\x00\ +\x14\x51\x45\x00\x14\x51\x45\x00\x14\x51\x45\x00\x14\x51\x41\xed\ +\x40\x1a\x64\xb8\x10\x82\x73\x54\xe7\x5e\xb5\xba\x74\xbe\x91\x9d\ +\x3d\x0b\x1f\x68\xdb\xe1\xc7\x4f\xbb\x87\xb7\xe5\xdf\xf0\xab\x3e\ +\xff\x00\x28\x33\x1d\x64\x9e\xc2\xb8\x63\xf4\xc3\xd6\x4b\x99\x7e\ +\x6a\xc6\xc2\xce\xd8\x83\x2b\x19\xe0\xad\x5c\xff\x00\x01\x8a\x5d\ +\x57\xb4\x49\x8c\x73\x4a\xcc\xa1\xaf\xf7\x17\xee\x57\x07\xdf\x7d\ +\xd5\x2d\x6e\x28\xad\xe5\xa9\x59\x2a\x24\xe7\x14\xd5\xcb\x87\xbe\ +\xd4\x0f\x5a\xcf\x03\x1e\x62\x08\x1c\xa8\xfb\x9a\x5f\x68\xb4\x4d\ +\xba\x5d\x22\xdb\xd8\x6c\x87\x1f\x52\x52\x06\x39\x4a\x54\x47\x9b\ +\x1f\x43\x9a\x9b\xa8\xab\xb2\xee\xf3\x7a\x1a\xad\x30\x24\xdc\xe7\ +\x35\x02\x0b\x0b\x79\xe7\x94\x12\x86\xd0\x39\x51\xae\xbb\xe8\x2f\ +\x4c\x2d\xda\x46\x0b\x77\x6b\x93\x2d\xc9\xbe\x38\x8c\xee\x23\x72\ +\x63\x02\x3b\x27\xe7\xe6\xab\x7e\x94\x69\x64\xdb\x2e\x69\xf0\xda\ +\x58\x25\xe2\xca\x1f\x18\x25\x48\xc9\x19\xcf\xf7\xb1\xc9\x1e\x99\ +\xc5\x74\xbd\x81\x29\x6d\x01\xa0\x41\x09\x01\x28\x00\x76\x03\xd3\ +\xe6\xb8\xf8\xac\x43\xa9\x53\x22\xd9\x1d\xbc\x3d\x0e\x05\x2c\xdf\ +\xe4\xfc\x90\xe9\x17\x7b\x7e\x6f\xde\x23\x72\xb3\xef\x4a\xdb\xdc\ +\xa3\xb8\x8e\x7d\x0f\xb5\x68\x27\x19\xdd\xd8\x9e\x00\xf5\xa5\x31\ +\xb0\x52\x37\x77\xec\x71\x54\x48\xab\x62\x96\x93\x80\x0a\xb3\xf8\ +\x73\x4a\xd9\x51\x24\x81\x80\x33\xdc\xd6\x90\xe2\x11\x8c\x10\x93\ +\x8c\x01\x58\x3f\x71\x83\x17\xc8\xe3\xa9\x2b\x03\x24\x67\xb7\xd6\ +\x98\xa2\x29\xdf\xb0\x71\x68\xa9\x59\x05\xc5\x76\xe7\x06\xb7\x15\ +\x38\x94\xf0\xb7\x30\x3d\xd5\x4c\xc9\xbd\xc6\x43\x49\x77\x7a\x58\ +\x4a\xf2\x12\x56\xa4\xa7\x77\xd3\x3e\x9f\x35\x9b\x77\x48\x4f\x63\ +\xc2\xb8\x47\x77\x71\xc1\x28\x90\x0f\x3e\xdc\x1e\x7e\x95\x74\x43\ +\x84\xbb\x07\x15\x2d\x47\x95\x1c\x8f\x92\x6b\x15\x2c\x2b\x92\x47\ +\xe3\x5a\x54\xb5\x1e\x12\xb5\x29\x20\x8f\x29\xf4\xf9\xad\x98\xe3\ +\xb8\x3e\xf8\xa9\xd4\x8b\x02\x9b\x4a\xb9\x3c\x67\x8c\x56\xa2\x10\ +\x14\x46\x33\x8a\xcc\xa4\x02\x40\x04\x7f\x8d\x01\x04\x05\x64\x10\ +\x31\xeb\xcd\x55\xa2\xcb\x43\x4a\x92\x7b\x14\x12\x0f\x6e\x2b\x5b\ +\x9e\x22\x06\x52\x4a\x7e\x94\x92\xf7\x72\x8b\x05\x4d\xb2\xe3\xe8\ +\xf1\x94\x37\x10\x55\xf7\x52\x06\x49\x3e\xc3\xe6\xab\xfb\xc7\x5a\ +\x34\x55\xba\x77\xd8\x8d\xee\x33\xae\x83\x8d\xcd\xab\x2d\x9c\x77\ +\xe7\xb1\x3f\x4c\xd2\x65\x24\x98\xd8\xd3\x94\xb6\x44\xf9\xf5\x13\ +\xe5\x71\x00\xfc\x8a\x6f\x79\x18\x3b\x90\xa3\xf2\x3d\xe9\xb6\x26\ +\xb5\xb2\x4e\x4b\x65\xb9\x0d\xa9\x2e\x63\x0b\x6d\xc0\xe2\x4e\x7b\ +\x64\xa7\xb1\xfa\xd3\xa9\x53\x4b\x48\x52\x16\x30\xa1\xc0\x1e\xbe\ +\xd4\xa7\x69\x6c\x5d\xc6\x51\xdd\x0c\x77\xc8\x2d\xca\x8a\xe2\x1c\ +\x40\x29\x5a\x70\x7d\xf9\xae\x6c\x4c\xf9\x3d\x2e\xea\x4b\xae\xad\ +\x0b\x30\x5e\x7b\x7a\xb6\x76\x29\x27\x9f\xc7\x06\xba\x8d\xf0\x52\ +\xe8\x41\xfb\xa7\x3c\xd5\x1f\xd7\xdb\x2b\x52\x65\xc6\x75\x4d\x05\ +\x78\x8a\x28\x73\x9f\xbb\xc7\x7f\xaf\x22\x99\x4e\xa6\x4d\xf6\x17\ +\x2a\x0a\xad\xe2\xce\xa4\xd0\x37\xe8\xf7\x2b\x73\x0f\x32\xf2\x5c\ +\x6d\xc4\x05\xa1\x60\xf0\xa4\x91\x90\x6a\x72\xca\xb7\x24\x57\x24\ +\x7e\x8b\x5a\xad\xdf\xd4\xe2\xc3\x35\x64\x49\xb6\xaf\xc1\x04\xf1\ +\xbd\xb2\x72\x93\x8f\xe1\x5d\x51\x68\x90\x1e\x61\x24\x1f\x4a\xec\ +\xe1\xe6\xe5\x1b\x3d\xd1\xc2\xb3\x8b\x71\x63\x95\x14\x51\x4e\x24\ +\x28\xa2\x8a\x00\x28\xa2\x8a\x00\x28\xad\x52\xe4\xb1\x12\x33\x92\ +\x64\xba\x96\x99\x6c\x65\x6b\x51\xe0\x0a\xac\x75\x96\xbb\xbe\x39\ +\x6f\x79\xeb\x23\x48\xb6\x43\x1c\x22\x64\x84\x6e\x5b\x9f\x29\x49\ +\xe0\x7e\x39\xab\xd3\xa7\x2a\x8e\xc8\x55\x5a\xd1\xa4\xaf\x22\xd3\ +\xa2\xb9\xd7\x4f\x1d\x59\x76\x2e\x4a\x9b\xac\x2f\xc1\xb0\x09\xcb\ +\x52\xd4\xd0\x3f\x20\x0e\x31\x4d\x37\x39\xda\xa1\x89\x6b\x42\x35\ +\x56\xa4\xf0\xd2\x78\x3f\xac\x9c\xc9\x1f\x9d\x69\xf6\x29\xf6\x99\ +\x3d\xbd\x7f\xa9\xd4\x14\x57\x34\xe9\xd9\xf7\xa9\x97\x86\x58\x91\ +\xac\x35\x12\x59\x2a\xc1\x3f\xac\x5c\xe7\xdf\xd6\xae\xd8\x9a\x79\ +\x2a\x88\x87\x06\xa3\xd4\x0a\x04\x72\x4c\xdc\xff\x00\x85\x2e\xae\ +\x1e\x54\xd2\x6c\x75\x2c\x57\x11\xb4\x91\x29\xa2\xaa\x8b\x83\x53\ +\x44\xf7\x3c\x2d\x49\x7d\x4b\x69\x38\xc0\x98\xaa\x7e\xd2\xf6\x49\ +\x92\x62\x97\xe4\xea\x1b\xea\x82\xbe\xee\x66\x1f\xf1\x15\x33\xc3\ +\x4a\x11\xcc\xd9\x58\x62\xf3\xcb\x2a\x44\xe6\x8a\x80\x6a\x06\x1c\ +\x88\x97\x16\xdd\xf6\xf4\x94\xa0\x77\xfb\x59\xff\x00\x2a\xae\x9e\ +\xbb\x5e\xfe\xd2\x42\x75\x25\xe4\x05\x13\x8f\xf6\xd5\xe3\xf9\xd5\ +\xa1\x83\x9c\x95\xc8\x96\x36\x31\x76\xb1\xd0\x94\x55\x61\xa5\xde\ +\x97\x2e\x33\x6b\x7e\xf7\x76\x52\x87\x0a\xff\x00\x6a\x3c\xfe\x75\ +\x2c\x9b\x68\x71\x50\x8b\xac\xde\x2e\xc1\x5b\x72\x31\x2b\xff\x00\ +\x2a\x5c\xf0\xf2\x83\x49\xf3\x2f\x0c\x4a\x9a\x6d\x2d\x89\x1d\x15\ +\x59\xe6\xe2\x87\x0a\x55\x79\xba\x1d\xa7\x9f\xf6\xa5\x76\xa9\x6d\ +\xb6\x1f\xda\x21\x87\x8d\xd2\xe3\x9c\x73\xfe\xd1\xff\x00\x95\x4d\ +\x5c\x34\xa9\xab\xb0\xa5\x8a\x55\x1d\x92\x1f\xe8\xaa\xa3\x53\xdd\ +\x27\x31\x70\x5a\x62\x5d\x2e\x49\x43\x67\x07\x32\x54\x3f\x95\x37\ +\x45\xbb\x5d\x5e\x20\xae\xf5\x71\x47\xc7\xda\x57\xcf\xf1\xa6\x2c\ +\x14\xda\x16\xf1\xd1\x4f\x62\xe8\xa2\xab\x58\xf3\xe4\x48\x8b\xe1\ +\xa6\xef\x3c\x3a\x07\x72\xfa\xbb\xfe\x74\xa7\x4a\x1b\xdc\x9b\x83\ +\x8c\xc9\x9f\x2c\xb4\x93\xc1\x2f\xa8\xff\x00\x3a\x89\x60\xe5\x15\ +\x76\xc9\x8e\x32\x32\x76\x48\xb0\x68\xa4\x29\x85\xb5\x24\xaa\x64\ +\xb3\xf3\xe2\x9a\x4d\x38\x21\xa8\xee\x2d\x13\xa4\x05\x01\xdb\xc5\ +\xac\xf1\x83\x93\xb2\x34\xca\x79\x55\xd8\xef\x45\x42\xdd\xb9\xbc\ +\xc3\x1e\x22\xe5\xc8\x23\x1f\xfc\x43\x4d\x92\x6f\xb7\x42\x3f\x64\ +\xf3\xa0\x13\x80\x4b\x87\xfc\xeb\x4f\xb1\x4c\xcd\xed\xb0\xec\x2c\ +\x7a\xc5\xc3\x84\x13\x50\x2b\x55\xfa\x73\x8b\xf0\xdf\x79\xcd\xde\ +\x87\x79\xff\x00\x3a\x58\xfd\xe5\xf6\x9a\x59\x71\xd7\x31\x8e\x3c\ +\xc6\x8f\x62\x99\x2b\x1b\x06\x27\xd7\x92\xd4\xdc\x45\x84\x9e\x4f\ +\x15\xf3\x6b\xab\xd7\x73\x7a\xd7\xd7\x69\x7b\xf7\x03\x21\x49\x4a\ +\xbb\x8d\xa0\xe3\x3f\xca\xba\xf7\xaf\x9a\xe5\xdb\x56\x91\xb9\x4b\ +\x4c\x85\x25\xdf\x0c\xb2\xc8\xdc\x72\x5c\x5f\x03\xd7\xd0\x64\xfe\ +\x15\xc3\xaf\x87\x97\x20\x4b\xdb\xbd\x0f\xa8\x80\x49\xc8\xcf\xa8\ +\x3f\x35\x8e\xad\x2c\x95\x1b\x6c\xd3\x42\xa7\x11\x36\x8c\x18\x52\ +\x1b\x21\xc5\x24\x2b\x61\xc2\x10\x7b\x13\xee\x6a\x61\xa1\xae\x2c\ +\x5a\x1c\x17\x45\xbb\x99\x8f\x3d\xb5\x2b\x03\x2a\x4b\x7f\xbe\xad\ +\xa7\x83\x9c\xf0\x3d\x93\xf3\x51\x34\xb6\xcb\xee\x14\xa1\xf4\x32\ +\x94\x8e\x03\xb9\x1f\x91\xff\x00\x3a\xc9\x69\x58\x90\x19\x6d\x7e\ +\x65\x00\x84\xed\x3b\x89\xf4\xc0\xc7\x72\x69\x53\x8e\x65\x63\x4d\ +\x39\xe4\x95\xce\x83\xe9\xee\xa8\xb6\xb8\xd4\xdb\xf5\xc2\x5a\x21\ +\x5a\xad\x8a\x6e\x34\x72\xf2\x82\x40\x51\xc8\x03\x8f\xbc\x48\xce\ +\x71\xee\x6a\xc4\xb1\xf5\x8b\xa6\x71\x62\xa9\x52\xf5\x8c\x64\x3a\ +\x15\xb4\x6c\x8c\xf2\xbc\xb8\xf8\x4f\xd6\xb9\xf3\xa9\x5a\x7d\xfb\ +\x1f\x49\xed\x4c\xc8\x88\x62\xbe\x2e\x29\x53\xac\xf7\x53\x41\x4d\ +\x28\xa4\x2c\xff\x00\x68\xe1\x5c\x7a\x57\x48\x69\x1d\x29\xa6\x62\ +\x74\x6b\x4e\x6a\x18\xbd\x28\xd1\xd3\xdf\x7e\xd5\x1d\xc5\xbd\x36\ +\x0f\x8c\x5c\x5a\xb0\x92\xb5\x12\x73\xc9\xe4\xfd\x6b\x9b\x43\x0b\ +\x4e\xbd\xea\xa7\xa5\xdf\x91\xd5\xaf\x8a\x94\x1a\xa7\x65\xcb\xcc\ +\xcd\x5d\x79\xe9\x0a\x48\x49\xd5\xce\x10\x3d\x45\xb6\x41\xff\x00\ +\xfc\x2b\x79\xeb\xff\x00\x48\x1b\x69\x45\xad\x58\xb5\xab\x19\x03\ +\xf5\x74\x80\x4e\x3e\xa8\xa5\x6b\xd3\x37\x35\x46\x2f\xda\xf4\x27\ +\x4d\x59\x69\x20\x95\x3c\x34\xe3\x4d\x47\x4e\x3f\xe3\x5c\xe0\xfe\ +\x15\x86\x97\xd0\xda\x9f\x53\x3b\x23\x68\xe8\xaa\x9b\x8a\x52\x99\ +\x28\x89\x61\x6a\x62\x9a\x2a\xe4\x05\x10\x84\xa7\x3c\x1e\xc4\xd3\ +\x61\x4a\x93\xf7\x5b\x7e\xbc\x05\xca\x53\x4a\xf2\xb2\x21\xd3\xfa\ +\xf5\xa6\xee\x61\x5f\x65\xbc\x46\x8c\x8e\x4b\x2d\xa9\x45\x0a\x20\ +\x76\xdc\x48\xc0\xcf\xe3\x50\xcd\x4d\xd6\x18\xec\xc4\x6a\x05\xaf\ +\xec\xf2\x64\x2d\xb2\xe2\x9d\x66\x56\x52\xda\x8f\x60\x55\xce\x4f\ +\xae\x33\xf9\x57\x4c\xb5\xd0\x2d\x2c\xfc\x4f\xff\x00\x54\xb5\x69\ +\x29\x2f\x9e\xea\x8d\xa6\x58\x61\x39\xfa\x24\xe7\xf8\xd4\x23\x58\ +\xfe\x8d\xbd\x3d\x5b\x6e\x97\x63\xdb\xad\xce\xf0\x12\xe2\x61\x48\ +\x61\xbc\xfc\x14\xbc\xa4\xe7\xf0\xa1\x61\x23\x7b\xca\xfe\x45\xbd\ +\xbe\xcb\x2c\x2d\xf0\xbf\xd4\xe5\xe8\x53\xb5\x05\xea\x43\x92\x25\ +\xdd\xe6\xbc\xf3\xca\x09\x05\x2a\x5b\x99\x04\xf3\x84\x0e\x00\xfe\ +\x35\x25\xd2\x36\x1b\xba\x56\xb5\xe9\xe7\xe7\xb5\x21\x0a\x53\xae\ +\x34\x14\x42\xde\x4a\x78\x56\x10\x7b\xfd\x47\x20\xf7\x15\x36\x97\ +\xfa\x39\x39\x6e\x7c\x48\xd2\xba\xb9\xb4\x38\x9f\x30\x4c\x5b\xb8\ +\x6d\x60\xfc\x25\xc4\xa7\x3f\xf6\xab\x28\xed\xf5\x8f\x42\x38\x5d\ +\x9a\x21\xdf\xdb\x53\x9b\xdb\x17\x38\x25\x2e\x03\xee\xdb\xec\x92\ +\x77\x1e\x7b\x92\x3e\x2a\xb3\x84\x6f\xd5\x92\xfe\x0d\x74\x71\x6d\ +\x25\x78\xb6\xfe\x7f\x92\xe6\xe8\xfb\xd7\x35\xd8\x76\xc8\x9a\xf4\ +\xa6\xd2\x94\xad\x92\xf8\xc2\xdb\x1f\xbc\x09\x3d\xfb\x76\xf7\xc1\ +\xf5\xa9\xf4\x37\x1a\x70\x16\xf2\x0a\x81\xc0\xf9\xaa\x3f\x44\xf5\ +\xb7\x4a\x39\x31\xb6\x75\x3c\x59\xfa\x3e\x72\xbf\x64\xf3\xd2\x71\ +\x22\x13\x85\x59\x00\x17\x50\x3c\x8a\xcf\x3e\x64\x8e\xc3\x35\x7a\ +\xe9\x8f\xb2\xcc\xb6\x36\xfc\x07\xa3\x4d\x88\xb4\xe5\xa7\xe2\xba\ +\x97\x5a\x23\xe1\x49\x24\x1a\xbc\x69\xb8\xa4\x99\x92\xb5\x45\x29\ +\x39\x02\xdb\x59\xce\xd1\xc8\x1c\x83\xed\x5e\x38\x48\x8e\xa2\x91\ +\xc2\x47\x62\x29\x7c\xb8\xae\x82\x0b\x0d\x93\xc7\x24\x72\x0f\xc0\ +\xa6\x1b\xbc\xb6\xed\x30\x5f\x99\x73\x95\x1a\x04\x56\xbc\xcf\x3f\ +\x2d\xd4\xb4\xda\x47\xae\x54\xa3\x81\x55\x9a\x48\x5c\x7a\xc5\x2b\ +\xd6\x48\xb3\xee\x57\x93\x01\x85\xb8\xd4\x79\x6e\x62\x5b\xc9\x57\ +\x99\x2d\x80\x30\x81\xf3\xef\xf5\xaa\xa6\xf3\xa6\xa2\xdb\x52\xe3\ +\x51\xa0\x82\x86\xc3\x69\xf1\xc8\x1b\x54\x95\x03\xfb\x20\x7b\x93\ +\x8e\x0e\x31\xeb\x93\x56\x4e\xb2\xeb\x66\x96\xfd\x64\xe4\x0d\x11\ +\xa6\xae\x1a\xe6\xe4\xae\x10\xa6\x5b\x53\x51\x73\x93\x92\x9e\x0a\ +\xdc\xfa\x80\x07\xcd\x56\xda\x9a\x47\x5c\x75\x5a\xcb\xb2\x20\xc4\ +\xd3\xb1\x54\x42\x44\x3b\x7b\x68\x43\x89\xc7\x6c\xf2\xa7\x01\xe7\ +\xd4\x8f\xa5\x27\x84\xe3\xab\x69\x78\x9d\x18\xe2\x22\xe2\xa2\xe0\ +\xdf\xaf\x91\x00\x4d\xd6\x7e\x95\xbb\xae\x65\x86\x6a\xad\xab\x25\ +\x47\xec\xce\x85\x2d\x97\x92\x48\xf2\xa9\x38\xc0\x3e\xb9\xf8\xe2\ +\xac\xad\x17\xd6\x70\x63\xa8\xca\x97\x1a\x0a\x59\x29\x21\x97\xdf\ +\xc2\x82\xbd\x52\x09\xfb\xc8\xf9\xef\xfe\x30\xe1\xd1\x4d\x5b\x31\ +\xc3\x22\xe5\x32\x03\x2a\x51\xca\x97\x36\x7e\xe5\xe7\xe4\x24\x13\ +\x4d\xd7\x6e\x99\xc2\xb4\x83\xf6\xfd\x5b\xa7\x99\x50\x24\x63\xc1\ +\x90\xb1\xc7\xb1\x08\xe6\xaf\x25\x86\xa8\xac\xe5\xaf\x70\x88\xfb\ +\x4c\x64\xf2\xc2\xf1\xec\x7a\x9d\x33\x03\xab\x5d\x3d\x9f\x01\x0e\ +\x3f\xab\xad\x31\x5f\x48\x01\xc6\xde\x7b\x18\x38\xf4\x20\x1c\xd4\ +\x27\xaa\x3a\xdb\x44\x4c\x99\x05\xcb\x76\xa7\xb4\xcf\x57\x8f\xe7\ +\x4b\x6e\xe7\xcb\x82\x08\x39\x1d\x8f\x6c\xfc\xd5\x02\xde\x9a\x88\ +\xe6\x1b\x85\x7f\xd2\xb3\xca\xd5\x81\xb5\xe5\x34\xbf\xa6\x1c\x48\ +\xa5\x12\xf4\x5b\xb1\x54\x10\xf2\xa2\x30\xe9\x4e\x76\x3c\xd2\xdb\ +\x03\xe8\xbc\x14\xfe\x39\xab\xc7\x07\x4e\x6f\xde\x66\x7f\x68\x9c\ +\x75\xd1\x5f\xc7\x99\x2f\xe9\xee\xa9\x66\xc1\xd4\x86\x1c\x72\x73\ +\x02\x33\xf9\x61\xe7\x3c\x51\x82\x41\xf2\xab\xfc\x3f\x1a\xee\x1d\ +\x01\xa8\x63\xce\x82\xd2\x9a\x90\xd3\xc9\x20\x79\x9b\x58\x50\xfc\ +\xc5\x7c\xd5\x99\x62\x79\xb5\x3e\x9f\x0c\x78\x91\xd0\x97\x57\xb5\ +\x5b\xb0\x82\x42\x42\x81\x1e\x9b\x88\x1f\x88\xab\x07\xf4\x69\x9d\ +\x76\x67\x5f\xc8\x86\x8b\xbc\xf8\xd1\xd5\x05\xc5\xac\x32\xfa\x93\ +\x9c\x14\xe3\xf8\xd6\xa7\x18\xc1\xe7\x83\xd0\xe6\xe2\x61\x38\xa7\ +\x37\xc8\xfa\x4e\xc3\x81\x69\x04\x73\x5b\x6a\x9c\xd3\x91\xe5\x49\ +\x8c\x8c\xea\x5b\xf8\x3f\x13\x8f\xf9\x54\xda\x0e\x9e\x5b\xd1\xd2\ +\xe2\xb5\x0e\xa2\xce\x39\xc4\xdf\x5f\xca\xb7\xca\x8b\x8c\x54\xbb\ +\x4c\x14\xf1\x3c\x47\x64\x89\x6d\x15\x54\xdd\xed\x57\x25\x5c\xd6\ +\xc4\x2d\x4d\xa9\x0e\x0f\x00\x4f\x56\x0f\xe5\x4a\x22\xe9\x1b\xf3\ +\xa8\x0a\x5e\xaa\xd4\x88\x2a\xec\x3f\x58\xab\xfc\xa9\x8f\x0a\xd2\ +\xbb\x65\x16\x32\xee\xca\x2d\x96\x75\x15\x59\x4b\xd2\x17\xe6\xdb\ +\xcb\x5a\xbb\x51\x9e\x7d\x6e\x0a\xed\x45\x0b\x0a\xde\xd2\x40\xf1\ +\x8d\x6f\x06\x38\x5c\xae\x0c\x6a\x6d\x6e\xbb\x0a\x9c\x3f\xab\xed\ +\x8a\x49\x90\x9c\xe0\x3c\xf7\x70\x9f\xa0\xff\x00\x3a\x70\xea\x0d\ +\xae\x1c\xcb\x0a\xc3\xcd\xa5\x28\x64\x0c\x01\xc6\x38\xff\x00\xca\ +\xa0\x7d\x38\x75\x4e\xbb\xfa\xc7\x0a\x2f\x4d\x92\xe3\xab\x23\xb9\ +\xca\x8f\xf9\x54\xff\x00\xa8\x72\x54\xce\x9b\x75\x29\x04\xad\xc1\ +\x80\x07\xae\x69\xd1\xa5\xc3\x9c\x2d\xcc\x44\x6a\xf1\x69\xcd\xcb\ +\xd7\x61\x4d\x4a\xb9\x94\xb1\xf6\x68\x00\x25\xb1\x91\x90\x3b\xff\ +\x00\xae\x29\xad\xc4\xb8\xf8\x52\x54\xf2\x89\x58\xed\x9e\xd5\x25\ +\xb0\xe8\xc9\xd3\x50\x1d\x92\x4b\x49\x56\x49\x1d\x8d\x49\x5a\xd0\ +\x30\x83\x61\x2a\x52\xc3\x87\x80\x73\xeb\xdf\xfc\x6b\x7b\x92\x5b\ +\x98\xd4\x5b\xd8\xae\x2d\xd1\x56\xca\xd0\x5a\xc1\x5e\xf1\x91\xeb\ +\xf3\x57\x93\x13\x1c\x85\xa5\x5a\x0f\x0f\xda\x94\x0e\xff\x00\xe3\ +\x51\x3b\x46\x95\x8b\x6c\xbb\x89\x13\x1c\x2b\x6c\x72\x02\xbb\x8a\ +\x76\xba\xca\x55\xc2\x50\x66\x33\x79\x69\x3c\x24\x01\xc7\xa1\xaa\ +\x4e\x39\xda\x5c\x8b\xc2\x4e\x09\xbe\x7b\x09\x6d\xb1\x5c\x9d\x39\ +\x29\x09\x27\x72\xc1\x51\x1d\xbf\xd7\x61\x53\x67\x9c\x6e\x14\x14\ +\x30\xd8\x19\x09\xc7\xe5\xcd\x23\xb3\x47\x6a\xd9\x10\x3a\xf7\x2e\ +\xa8\x6e\x38\xa6\xdd\x43\x73\x11\xd9\x5b\xce\x2b\xce\x7e\xe8\x3f\ +\xeb\xe9\x48\x95\xea\xce\xdc\x90\xf8\x7e\xcc\x2f\xcd\x91\xcd\x67\ +\x3b\x9f\xb3\x36\xac\x2b\x39\x5e\x2a\x22\x8b\x72\x9e\x06\x4e\x00\ +\x09\x38\xa5\xcf\xac\xbc\xa5\xbe\xbc\x92\xbe\xc0\x0e\xde\xd4\xe7\ +\x69\x0d\xa2\xd8\xa6\xca\x48\x52\xff\x00\xb5\x5a\xd1\x91\xea\x6b\ +\xd3\xb3\x4c\x39\x6d\xef\x50\xf0\xd5\x81\x92\x7b\xfc\xd5\x9b\x68\ +\x98\x14\x03\x2a\xe5\x04\x00\x2a\xa3\x42\x36\xad\x6d\xf2\x36\x92\ +\x47\xc5\x4a\xf4\xa5\xd4\x2b\x11\x9c\xfb\xc3\xee\x92\x3b\x0a\x55\ +\x6a\x6a\x71\xb0\xda\x35\x1c\x25\x71\xfb\x51\xdb\x8b\x2f\x2a\x53\ +\x5f\x71\x5f\x7b\x15\xb3\x4d\x4c\xd8\x55\x15\x67\x85\x0c\x27\x26\ +\x9c\x58\x7d\x32\x1a\x2c\x48\x39\x49\x1c\x1a\x61\xb9\x40\x72\x04\ +\x8f\x19\xbc\xa9\xb1\xca\x7e\x94\x98\x3c\xf1\xe1\xcf\x71\xd3\x59\ +\x25\xc4\x86\xc4\x7f\x54\x41\x72\x2d\xc1\xd5\x3a\x83\xb1\x67\x8c\ +\xfe\x54\xdf\x15\x95\xa8\x61\xb6\x54\x46\x78\xe2\xa6\xaa\x90\xcd\ +\xdf\xc3\x62\x42\x02\xd4\x93\xdc\x8a\x76\x8f\x06\x2b\x0d\x84\x86\ +\x86\x3b\x76\xa6\xba\xb9\x12\xcc\xb5\x14\xa9\x67\x6d\xc5\xe8\x57\ +\x2e\x27\x0a\x2a\xd8\xa6\xd5\xee\x46\x31\x53\x2e\x9d\xba\x56\xcb\ +\x9b\xc8\x52\x87\xaf\xad\x3a\x49\xb7\x45\x90\x8c\x29\xa4\x80\x07\ +\xa0\xa4\x76\x9b\x69\xb5\x4f\x53\x8c\x92\x50\xaf\x4c\xd2\xea\x55\ +\x8d\x48\x35\xcc\x6d\x3a\x52\xa7\x35\x2e\x43\x9d\xfe\x42\xdb\x65\ +\x2d\x20\x94\x95\x1f\x6a\x65\x53\x45\x63\x0a\x51\x27\xd4\x9f\x6a\ +\x77\xbe\xa3\xc7\x61\x0e\xa3\x38\x4f\x71\x8a\x68\x79\xd0\xd4\x72\ +\xe6\x4f\x94\x55\x70\xfa\x41\x58\x9c\x46\xb3\x77\x19\xef\x69\xd8\ +\x50\xd0\x18\x4e\x79\xad\x0b\x18\x40\x4f\x6a\xf2\x53\xee\x4a\x90\ +\x83\xb3\xcb\xef\x5b\x1e\x42\x8a\x02\xb9\xad\x88\xc6\xcd\x24\x61\ +\xf6\xdc\xc1\x27\x38\xa5\x57\xa7\x52\x88\xa4\x9e\x4e\x31\x9a\xd0\ +\xa6\x96\xe2\x40\x1c\x1e\x79\xf6\xa6\x9b\xcc\x97\x50\xd3\x8d\xad\ +\x5b\x86\x3f\x2a\x3b\xc1\x1c\xc9\xfa\x59\x5c\x40\xb7\xc0\x88\x92\ +\x37\x39\x21\xc7\x0f\xd1\x29\x03\xfc\x4d\x73\xf5\xa6\x73\xd6\xc7\ +\x94\xbf\x05\xb9\x0c\xba\x8d\xae\x32\xe8\x3b\x56\x3d\xc1\x07\x29\ +\x50\xee\x14\x39\x1f\x98\x36\xb7\xe9\x44\xfa\xdf\xd4\x90\x93\xce\ +\x13\x18\xe3\x27\x8e\x56\xac\xff\x00\x85\x56\xf6\x6b\x63\x73\x90\ +\xe9\x5b\xa1\x88\x8c\x00\x5e\x90\xae\x71\xf0\x91\xea\x49\xc0\x03\ +\xdc\xd7\x9f\xad\x34\xdb\x6c\xee\xe0\xe2\xd5\x35\x61\xa9\x48\x53\ +\xee\x2d\x6d\x78\xcb\x27\x24\xf8\x87\x25\x23\xdc\xab\xfc\x6b\xa0\ +\xbf\x47\x6e\x9b\x08\x52\x60\x5f\xaf\xe9\x30\xe6\x4d\x4f\x8f\x6a\ +\x74\x29\x0e\x61\xb0\x33\xb9\x23\x90\x95\xe7\xbe\x79\x03\x18\x1d\ +\xea\x98\xb2\xfd\x9e\xe7\xa9\x20\xdb\x62\xb1\xe0\x41\x5c\x96\xfc\ +\x64\xf7\x51\x40\x50\xce\x4f\xa9\xc6\x4e\x3d\xea\xea\x8f\xac\xda\ +\xd1\x70\x0e\x54\x1e\x66\x14\x99\x0a\xb3\xb6\x71\x95\x87\x37\x24\ +\x10\x3b\x8c\xa4\x83\xed\xd8\xf1\x58\x31\x75\x5a\xb4\x17\x33\xa3\ +\x87\xa4\x9a\x73\xec\x1b\x3a\xfb\x0d\x85\xd8\xde\x8e\x2e\x6f\xcd\ +\xb9\xc8\x9e\x97\x59\x65\xc0\x54\xea\x90\xda\x56\x16\xa3\x8c\x01\ +\x9d\xd9\xc6\x2b\xa6\x3a\x57\x32\x72\x3f\x46\x3d\x11\x2e\xdb\x2b\ +\x6d\xc9\xf8\x0d\xc2\x88\xe1\x20\x21\x95\x6e\x50\x53\x87\x3c\x1d\ +\x88\x42\x95\x8f\x52\x90\x3d\x6b\x8a\x65\x5d\xa6\x4e\xb9\xbb\x73\ +\x9c\xf1\x7a\x5b\xe7\xce\xbc\xf0\x91\xe8\x84\x7c\x0f\x7f\x53\xcd\ +\x5e\x5f\xa2\x9e\xb9\xd4\x72\xaf\xb6\xde\x96\x48\x98\xda\xac\x66\ +\x3d\xc1\xdb\x7b\x65\xa1\xe2\xb6\xe2\x99\x70\x86\xf7\x7a\xa4\x6e\ +\x71\x40\x77\xe7\xd8\x0a\xa6\x0d\x3a\x34\xf8\x6f\x7f\xa9\xb3\x15\ +\x85\x75\x12\xaa\xbe\x3e\x08\x8d\xeb\x4b\xf5\xe7\x51\xea\x65\x68\ +\xab\x5c\xe9\x6b\xb4\xdb\x1d\x52\x56\x95\xbe\xa5\x97\x17\xb8\x95\ +\x12\xa3\xfd\xe5\x12\x71\x8e\x49\xf8\xae\xa0\xfd\x16\xf4\x6c\x3d\ +\x2d\xa6\xee\xa2\x3c\xc7\x25\x7d\xbd\xd6\x9c\x74\xab\x18\xdc\x94\ +\x91\xc1\xc7\xb1\x19\x19\x3d\xbe\x6a\xa7\xe8\xc6\x86\x5c\x7b\xc5\ +\xd2\xe7\x75\x28\x56\xfb\x83\xaa\x69\x18\xc1\x27\x71\xe4\xfb\xd7\ +\x46\x58\xa5\xb7\x6c\x6d\xdd\x8c\xa5\x48\x59\x05\x5b\x4e\xdc\x60\ +\x55\xa8\x54\xd5\xf6\x15\xc6\xc5\x65\xca\xb7\x26\x21\x09\x00\x24\ +\x0c\x01\xd8\x0a\x61\xd7\x36\xbf\xd6\x76\x25\xc7\x0f\x25\x94\xa5\ +\x5b\xca\x89\xf5\xec\x3f\x9d\x2d\xb5\xde\xed\xd7\x01\xfe\xcf\x21\ +\x25\x49\x4e\x54\x92\x7e\xef\xbf\x34\xcb\xad\xf5\x7e\x9b\xb4\x5a\ +\xc8\x9f\x72\x88\x43\x8e\x04\x14\x07\x02\x94\x38\x27\x38\x1f\x4a\ +\xd9\x2b\x38\x9c\xc8\x29\x46\x6a\xcb\x52\xab\xba\xe8\x70\xb0\xb5\ +\x26\x7b\x4e\x10\x09\x03\x38\x22\xa3\xb2\xad\xf7\xdb\x36\xf4\xb5\ +\x39\xd4\xb2\xa1\x85\xb4\xe8\xf1\x59\x58\xf6\x29\x3c\x54\x86\x67\ +\x51\x34\xa4\x97\x1e\x16\xf9\xc9\x71\x0d\xed\x4a\xd6\xb6\x54\x13\ +\xb8\x8e\xd9\xc5\x37\xa2\xe8\xc4\xf5\xb6\x94\x2f\xf6\x4e\x61\x4d\ +\xba\x9f\x32\x01\xf6\xcf\x6a\xe0\xe2\x28\xc2\x2f\xaa\xf5\x3d\x3e\ +\x1a\xad\x67\x1e\xba\xba\xef\x43\x0c\x0b\x2d\xa9\x3a\x8a\x35\xfa\ +\xee\xd3\x4e\xda\x0b\x6e\xc3\x9f\x1f\x68\x71\xb6\xdb\x75\xb5\x23\ +\xc4\x52\x8f\x2a\x61\x0a\xd8\xa2\x95\x65\x48\xfb\xc0\xe1\x26\x90\ +\xf5\x0b\xa3\x5a\x83\x4f\x6b\xbd\x29\x2f\x4a\x5b\x2d\x57\x18\xc6\ +\xdb\x1a\x1b\xac\x6d\x42\x19\x93\x21\xa5\x2c\x6e\x52\x0e\x12\x41\ +\x6f\xc3\xca\x8f\x72\x3d\xcd\x3b\x5f\x18\x91\x15\xf4\xcc\x8c\xd9\ +\x4a\xe3\xbc\x8f\xb5\x33\xb7\xc8\xfb\x64\xf9\x92\xa1\xd8\x82\x32\ +\x3f\x1a\x84\xcc\xb5\x6a\x4b\xe7\x56\x1b\xd1\xb6\xdd\x47\x31\xb8\ +\x3a\x6e\x28\x85\x05\xd7\xdd\x50\x54\x44\x8c\x2d\x4d\x82\x0f\xed\ +\x0a\x72\x90\x14\x79\xda\x84\x03\xda\x9f\x43\x13\xc1\xa4\xe3\x6d\ +\x79\x11\x53\x09\x2a\xf5\xd4\xd4\xec\xac\xef\x7e\x49\x78\x6b\xcc\ +\xd7\xfa\x58\x68\x7b\xdc\x58\x2c\x6a\x99\x76\x0b\x0e\x98\x43\x6d\ +\xa5\xb5\xb5\x6c\x94\xa4\x07\x15\x9e\x49\x09\x01\x24\xd5\x27\x63\ +\x96\x2d\xa1\x6b\xbe\x59\xbf\x58\x21\x6c\xe5\xa5\x4b\x74\xb8\xda\ +\x37\x00\x42\xf0\x49\x1d\xb2\x41\xae\xc0\x99\xd3\x5b\xc5\xe6\xd4\ +\x22\xea\x0e\xa8\x6a\x8b\x8b\x4a\x00\xa9\x95\x29\x2a\x68\xe3\xdc\ +\x2b\x39\xfa\xd4\x1f\x48\xf4\xbe\xd5\x77\xd6\x97\x3e\x9e\xdd\xe7\ +\x06\x95\x11\xd6\x2e\x4c\xc8\x6e\x30\x59\xb8\x42\x42\x90\x57\x1d\ +\x63\x38\x41\x0a\xd8\x42\x87\x23\x72\xc7\x20\xe0\x68\x86\x2a\x4e\ +\x69\x49\x68\xfc\x0c\xfe\xcf\x08\x53\x94\xa3\x52\xed\x6f\x64\xf6\ +\xbe\xfa\x92\x3f\xd1\xe3\x47\xdc\xa5\xf4\x65\x77\x99\xb0\x15\x6f\ +\xfb\x52\xde\x75\x95\x38\x80\x93\x21\x92\xac\xb6\xbc\x0c\x28\x8c\ +\x64\x61\x5c\x60\x0c\x0e\x73\x49\x05\x92\xfb\x36\x49\x65\x0f\xab\ +\xc3\xf4\x4b\x63\x6a\x53\xf8\x0e\xd5\xd2\x5a\xa9\x0d\x33\xa5\xa5\ +\xc5\x8e\x03\x09\x43\x29\x69\x09\x6d\x20\x04\x0e\x00\x00\x76\x03\ +\x15\x54\xbd\x74\xb2\x59\xa3\x78\x77\x3b\xa4\x58\x61\x47\xfe\x19\ +\xc0\xd0\x24\x9f\xae\x7b\xd5\x71\x58\x58\x3b\x5f\xe2\x27\x05\x8d\ +\xa9\x79\x49\x2b\xf6\x11\x46\xfa\x71\x31\xe4\x95\xc9\x96\x1a\x3e\ +\x98\x19\x22\x91\x5d\x3a\x57\x1a\x4c\x55\xb0\xb7\x83\x83\x9c\xee\ +\x4f\x04\xff\x00\x85\x4a\x5c\xd4\x76\x69\x33\x95\x12\xdd\x77\x80\ +\xf3\xa1\x39\x29\x6a\x58\x0b\x4e\x31\xdc\x13\xf3\x5b\x58\xbd\x2e\ +\x3a\x83\x72\x81\x2d\x93\x8f\x10\x8e\x47\xf9\x8a\xe7\xba\x34\xe0\ +\xce\x97\xb5\xe2\x9a\xbd\xfc\x8e\x4b\xea\x97\x4a\x2e\x3a\x6a\x73\ +\x92\x23\xa3\xed\x76\xe2\x3c\x4c\x8e\x16\x9c\xf7\xc8\x3e\xdc\x57\ +\xba\x6e\xf0\xd4\xbd\x37\x0d\x32\x5e\x54\x79\x70\x52\xa6\x16\xe8\ +\x51\x04\x24\x0f\x22\xbe\xa3\x20\x11\xf1\x5d\x77\x7c\x81\x0e\xed\ +\x05\x71\xdd\x69\x0e\xb6\xb6\x94\x9d\x8b\x19\x05\x24\x60\xe3\xda\ +\xb8\xb3\x5f\xe9\xa7\xb4\xd5\xce\xe5\x6e\x6d\x2e\x06\xdb\x7c\xa9\ +\x0a\x27\x3b\x90\xac\x81\xf9\x1c\x8a\xd9\x4e\xac\xa7\x68\x37\xe0\ +\xcc\x55\x14\x35\xaa\xa3\xe2\xbe\xa6\xfb\xab\xea\xbf\xd9\xa5\xdd\ +\x1b\x43\x3f\x6c\x84\xe8\x66\x61\x61\x21\x28\x77\x23\x87\x00\x1d\ +\xb3\x8c\x11\xee\x33\xeb\x4a\xba\x04\x89\x1f\xd3\x49\xd7\x16\xdb\ +\x26\x3b\x50\xcb\x4a\x5f\xa6\xf5\xa8\x6d\x4f\xd4\xe0\x9f\xc2\x99\ +\xfa\x7a\x5e\x8b\xd3\xfd\x71\x74\x4a\x72\x98\xa9\x83\x82\x7f\xb4\ +\xb7\x4a\x71\xf9\x13\x56\x1f\x46\x6d\x42\x1c\x38\xf6\xc4\xba\x16\ +\xea\xdc\xfb\x44\x8c\x0e\x02\x88\x18\x4f\xe0\x38\xfc\xeb\xaa\xe3\ +\x9d\x46\x9c\x77\xd8\xe0\x62\x6b\x7e\xcb\x4f\x99\xd4\xba\x11\x25\ +\x70\x9a\x4e\x15\x92\x3f\x21\x56\xac\x73\xe0\xb0\x1a\x47\x27\x18\ +\xc8\x1d\x8d\x57\xfa\x0e\x29\x65\x86\xdc\x20\xef\x03\x81\x8a\x9f\ +\xb4\x76\x37\xe6\xc2\x94\x7f\x2f\xf5\xcd\x75\x6b\xac\xa9\x43\xb0\ +\xe6\x61\xa3\x65\x70\x62\x23\x4d\x2c\xac\x20\x15\x9e\xe7\xde\xb7\ +\x6e\x09\xe0\xa8\x8f\x72\x38\x34\x21\xb5\x93\xca\x8a\x53\xc0\x3c\ +\xf7\xac\x43\x49\xff\x00\xe3\x27\x20\x7d\x78\xfa\x56\x56\xef\xbb\ +\x34\xa5\x6d\x90\x3a\xe0\x4a\x15\xb8\xe0\x7a\xfb\x7f\xae\x68\xa4\ +\xf2\xad\xcb\x7f\x1f\xed\x07\x60\x3e\x64\x83\x9c\xd1\x4d\x87\x0e\ +\xda\xb1\x72\xe2\x5f\x44\x56\xfd\x21\x60\x0d\x3f\x12\x6b\x87\x09\ +\x41\x70\x72\x7f\xbe\xaa\x98\xbb\xba\x6a\xca\xdc\xc9\x40\xe5\x29\ +\xcf\x06\xa3\x5d\x3b\x4a\x53\xa2\xe0\x60\x60\x23\x7f\xfd\xe2\xb9\ +\xa9\x4b\x4c\xbc\xf2\xb3\xbb\xc3\x6c\x1c\x12\x7b\x62\xb6\x3b\x25\ +\x73\x9f\x4a\xf9\x54\x4c\x00\x6d\xa1\xb4\x14\xe4\x7b\x56\xc4\xb8\ +\xca\x52\xb5\x78\x89\x48\xf9\xf4\xef\x58\xba\xab\x5b\x3e\x47\x56\ +\x16\x73\xcf\x9b\x9a\xcc\x2e\xcd\x27\x0d\x85\x6d\xdc\x31\x9f\x8f\ +\x6f\xa5\x55\xbe\xe6\x35\x2b\x73\x47\x3f\xdf\x2f\xba\x9a\xe5\xa5\ +\xee\x1a\x3e\xdb\x74\x94\xe5\xfc\x6a\x39\x10\x23\x48\xf1\x0a\x9e\ +\x0d\x23\x32\x12\xac\xe7\x3f\xd5\x8d\xbf\xc2\x9f\xed\x17\xa9\xf7\ +\x58\xd6\xb9\xb6\xe7\xca\x83\x7a\x45\xcb\x94\xa6\x84\x85\x32\x1d\ +\x79\xdd\xa8\x40\x52\x92\x09\x49\x4e\xc7\xc8\x20\x1e\x45\x49\x2d\ +\xfd\x38\x99\x69\xea\xdc\xdd\x67\x1a\x43\x0e\x5a\x5d\x8f\x96\x58\ +\x49\x3e\x22\x64\x94\x21\xb5\x38\x46\x31\x8d\x88\xc7\x04\x9c\xa8\ +\xf6\xa4\x3a\x33\x47\x3f\xa4\x2d\x3a\xb1\x13\x27\xc5\x7c\xdc\x96\ +\xeb\x76\xed\xaa\x51\xf0\x62\xe5\xc5\x36\x85\xe4\x0c\x10\xa7\x57\ +\xc0\xce\x3d\x0f\xa0\xa5\xdc\x95\xa3\xb1\x9b\x87\x38\xbe\xb7\xae\ +\xc1\x95\xbd\x69\xa8\xdb\x47\x4d\xdb\xb6\x18\xff\x00\x64\xba\x5a\ +\x9d\x79\x6d\xce\x98\xb7\x1c\x5a\x9a\x69\x38\x0e\x39\xb0\x93\x8d\ +\xe0\x82\x39\x27\x39\x00\x0e\x61\xb2\xf5\x5d\xe6\x05\xd7\x5b\xdd\ +\x84\x34\xce\xb7\x42\xba\xf8\x8e\x07\x25\xa9\x2b\x4a\x0a\x11\x94\ +\xb6\x9d\xa4\x70\x39\xe4\xa7\xbd\x3a\x3f\x61\xbf\x22\x3e\x8a\xfb\ +\x33\x96\xf7\x9f\xd3\x90\x9d\x8a\xe2\x16\xf2\x90\x87\x7c\x46\xd0\ +\x82\x52\xa0\x82\x78\x28\xcf\x23\x9c\xfa\x56\x8b\x86\x90\xb8\xbd\ +\x61\xd6\x70\x92\xf4\x30\xed\xee\x41\x72\x31\x52\xd4\x12\x94\xec\ +\x4a\x70\xbf\x2f\x07\x29\x3d\xb3\x4c\x8c\x24\x97\xae\xc2\x8d\xc9\ +\xef\xeb\x41\xcb\xa8\xd7\xd7\xec\x3a\x1a\xe1\x7a\x84\x41\x75\xa6\ +\x92\x59\x2a\x19\x00\xad\x49\x4a\x4e\x3d\x70\x54\x0d\x44\xe3\x5d\ +\x35\x0e\x97\xb9\x68\x89\x52\x35\x04\xeb\x9b\x3a\x87\x6b\x33\x58\ +\x94\xa0\xa4\x05\xac\x23\x6a\x9b\xc0\x1b\x70\x57\x8f\xc3\xe4\xd4\ +\xfe\x7e\x98\x46\xa4\xd2\x52\xec\x73\x0e\xc4\x48\x60\x34\x1d\x48\ +\xce\xc5\x8c\x14\xab\x07\x19\xc1\x00\xd4\x2f\x4e\x58\xaf\xb7\x3e\ +\xa0\x59\x74\xf6\xac\x09\x61\x3a\x45\xa0\xb8\x65\xa8\xee\x6d\xb8\ +\x60\x24\x25\xcf\x10\x8d\xa3\x6e\xd4\x64\x67\x39\x07\xe7\x17\xa9\ +\x7c\xc8\xac\xaf\x71\x4f\x4f\xef\xba\xa6\xef\xaf\x75\x2b\x37\x18\ +\xf1\xcc\x28\xb2\x92\xc3\x89\x4b\xe4\xfd\x98\x84\xa8\x00\x81\xb4\ +\x6e\x0a\x29\xc9\x27\x1f\x8d\x59\x8c\x82\x95\xa5\xc4\x2b\x6a\x87\ +\x62\x3b\xe6\xa0\xee\x69\xcd\x51\xa3\x2e\x9a\xc2\xff\x00\x09\x16\ +\xdb\x84\x1b\x8a\x97\x35\xa6\x80\x71\x52\x7c\x40\x95\xec\x40\x40\ +\x4e\x08\x2b\x50\x04\xee\xed\x9a\x99\x5a\x8c\xb3\x6e\x8e\x67\xa5\ +\x91\x37\xc3\x4f\x8f\xe1\x83\xb7\xc4\xc7\x9b\x6f\x27\x8c\xe7\x1c\ +\xf6\xab\x53\xbd\xac\xcb\x47\xbc\x99\xd8\x6e\xc8\x79\x09\x61\xe5\ +\x10\xbf\x42\x4e\x29\xfd\x2b\x56\xd2\xd3\xa9\xde\x83\xc6\x48\xcd\ +\x56\xf8\x50\x21\xc4\x1c\x28\x76\x23\xde\xa4\x96\x3b\xe8\x4a\x43\ +\x32\xf0\x3e\x73\x55\xa9\x4e\xfa\xa3\x4d\x2a\xb6\xd1\x8e\x32\xed\ +\xea\x61\xe1\x32\x22\xfc\xa0\xf2\x8a\x72\x83\x29\xc7\xdb\x1f\xb1\ +\x50\x3d\x8d\x7b\x09\xb4\x3c\xbf\xb4\x13\x86\x87\xf1\xac\xdf\x9e\ +\x84\x1d\xb1\xda\xcf\xb9\x22\xb3\xca\x4e\x5d\x5b\x5d\x8f\x8c\x54\ +\x7a\xd7\xb2\x36\x82\xfe\x3f\xab\x20\x63\x27\x9a\xf5\x2e\x0c\xf9\ +\xd2\x47\x38\xe4\x77\xa4\xc9\x9f\x28\x63\x81\x8e\xe2\x94\x37\x35\ +\x0b\x3b\x1f\x40\x4e\x7d\xa9\x6e\x12\x5c\x86\xc6\x71\x7c\xcc\xbe\ +\xe8\x28\xee\xd9\x14\xc9\x77\x88\xa4\x36\xb4\xe3\xca\xae\x45\x3f\ +\xa9\xb1\x8d\xc8\x39\x42\xbb\xd6\x97\x9a\x0e\xb6\x52\x7b\x7a\x1a\ +\x9a\x55\x32\xbb\x91\x56\x9e\x65\x62\x17\x1c\x60\xec\x38\xe0\xf2\ +\x2b\x39\x19\x28\x1c\x1c\x7a\xfd\x6b\x74\xe8\xeb\x8d\x28\xfb\x13\ +\xcd\x60\xf1\xc2\x32\x3f\x1f\x5a\xe8\xa7\x73\x9a\xd5\xb7\x35\xa0\ +\xed\x6f\x3f\x1c\xd4\x77\x50\x24\xad\x97\x5c\x23\x93\xc0\xa7\xf1\ +\x92\x03\x60\xf7\xf5\xa6\xad\x54\x90\xcd\xb9\x7e\xe5\x3c\x50\xf6\ +\x64\xa3\x8d\x3f\x49\x30\x1c\xd4\xb0\x18\x42\x16\xe3\x82\x39\xc2\ +\x10\x92\x4a\xcf\x88\xac\x0f\xe1\x55\x94\xa7\xd4\xd4\x44\x32\xe2\ +\x42\x4a\xb9\x5a\x7b\x04\x01\xd8\x11\xfd\xae\xff\x00\x9d\x74\x2d\ +\xfa\xe4\xc4\x3d\x64\xe5\xc5\xc6\xf2\xeb\x08\x2c\x32\x52\x8d\xca\ +\x5e\x4e\x54\x33\xe8\x32\xa2\x3f\x0a\xa0\xb5\x5d\xbd\xe6\xb5\x7d\ +\xc5\x97\x12\xa4\x07\x5f\x53\xa0\x3c\xad\xa7\x0a\x39\xef\xeb\x5e\ +\x62\x75\x22\xeb\x64\x7c\xb5\x3d\x56\x1f\x09\x51\x60\xa3\x59\x2d\ +\x1b\xb0\x97\x4b\xcb\x89\x12\xea\x87\xa4\x3e\xeb\x21\x2b\xc8\x53\ +\x68\xdc\x48\xef\x8f\xe1\x8f\xc6\x94\x6a\x0b\x85\xc2\xfd\x7d\x12\ +\x9e\x6c\xa1\x2b\x59\x6a\x33\x09\x1c\x34\x80\x78\x48\xfc\xf9\xa4\ +\xac\x3a\x98\x58\x79\xa6\xd0\xa5\xe7\x8f\x2e\x46\x01\xed\xfc\xb9\ +\xa7\xbd\x06\xf2\x1e\xd5\x11\x64\xc8\x61\x0f\x20\x2d\x3e\x22\x4e\ +\x01\x27\x3e\x80\xf7\x27\x8e\x6a\x2a\x5a\x37\xa9\x6d\x91\x34\x13\ +\x9c\xa3\x45\xbd\xd9\x67\x68\x3e\x90\x5e\x6e\x2d\x25\xe9\xcb\x6e\ +\x22\x31\xc8\x57\x2a\xc9\xf8\xa9\x2e\x9e\xd1\xd7\x3d\x0b\xd4\xcb\ +\x05\xe2\x2a\x54\xe1\x83\x29\x32\x32\x84\x90\x56\x8c\xe1\x69\xe3\ +\xdd\x24\x8f\xc6\xae\xbd\x32\x23\xc8\x8e\xdb\xf1\xdb\x09\x65\x4d\ +\x20\x84\xed\xc7\xd3\x3f\x38\xc5\x48\x92\xc3\x2e\x29\x0b\x2d\x24\ +\xa8\xfa\x91\xda\xb8\xb2\x73\x9e\xaa\x5a\x9e\x87\xda\xb2\x75\x32\ +\xac\xa6\xf9\x16\xf8\xf6\xeb\x9b\xab\xb7\x80\x63\xcb\xfd\xb3\x2a\ +\x07\x82\x95\x0c\x8c\x7e\x1f\xc8\xd6\x77\x99\x0e\x46\xb7\x9f\x0d\ +\x0a\x5a\x82\x09\x01\x3f\xda\xc7\x15\xe4\x09\xad\xf8\x5f\xab\xdd\ +\x5a\x43\x8d\xa8\xfd\x9d\x4a\xfd\xd5\x13\xf7\x0f\xb0\x3d\xc7\xb1\ +\xfa\xd6\x6d\x07\x1d\x0b\x0a\x18\x20\xe0\x83\x91\x83\x5a\x93\x4e\ +\xed\x73\x39\x96\x69\xd9\xf2\x2b\x0d\x27\x76\xd5\xa6\xfb\x2d\x57\ +\x48\xce\x08\x01\xb2\xd9\x65\x95\xe0\x0c\x9e\x54\x7d\xc5\x45\xe7\ +\xd9\xf5\x4b\x17\xdb\x4c\xd8\xa7\xec\x51\x04\xe7\x4c\x87\xde\x88\ +\xdc\x96\xdc\x6d\x69\x52\x53\xfb\x25\xf0\x48\xc8\xc0\xf7\xed\xcd\ +\x5e\x82\xce\x7e\xfb\x6f\x23\xcd\x83\x85\x0c\xd2\xf4\xb0\xea\xdb\ +\x6d\x0f\x36\xcb\xa9\x69\x61\xc4\x05\x73\xc8\xec\x69\xb4\xaa\x4e\ +\x2a\xcc\x2b\xf0\xaa\x3b\xda\xd7\x2a\x1e\x8d\x88\xda\x56\xe5\x71\ +\x55\xde\x35\xcd\xf5\xa6\x30\x8c\xf2\xcc\x72\x95\x48\x58\x39\x49\ +\x2d\xe7\x09\xf2\x9c\xfe\x34\xa9\x56\x07\x5f\xb8\x22\x56\x93\xb3\ +\xbf\x6a\x52\xe4\x91\x21\x0e\xa4\x04\x16\xfb\xe5\x48\xce\xd3\x93\ +\xed\x83\x56\x94\xf8\xab\x7a\x42\x9e\x52\x1a\x4a\x94\x30\xac\x27\ +\x71\x38\xed\xf1\x49\xd7\x19\x49\x00\x90\xbc\x11\xc9\xc7\x35\x59\ +\x43\x32\xb4\x86\x50\xae\xa8\xbc\xd4\xd6\xaf\xb7\x61\x8f\xec\x52\ +\xe5\xc6\x4c\x29\xae\x32\xfc\xc9\x4a\x43\x6e\x18\xe8\xc2\x01\xf4\ +\x48\xcf\x7a\x8f\xc7\xb0\xb3\x0f\x5f\xfe\xbf\x62\x7c\x49\x6b\xbb\ +\x4c\x94\xee\xd8\xea\xdf\xb1\x08\xc0\x49\x52\xfb\x67\x6e\xc0\x52\ +\x3b\x1a\x96\xea\xeb\x8b\xda\x72\xd0\xd2\xe2\x25\xb3\x7b\xb8\x6e\ +\x8d\x69\x64\x9c\x16\xf2\x3c\xf2\x55\xec\x94\x27\x24\x13\xeb\x50\ +\xfe\x9d\xe9\xb6\x2c\x82\x52\x63\x2d\x4e\x30\xdb\xa5\x0d\x28\xaf\ +\x20\x13\x82\xb5\x01\xe8\x54\x42\x73\xf4\xae\x7e\x26\xce\xa4\x21\ +\x1e\xdb\xfa\xf5\xd8\x6f\xc3\xa9\x2a\x53\xaa\xdd\xae\x9a\xb7\x6f\ +\x6f\xc1\x3b\x78\xd9\xf6\x16\x1b\x1b\x8b\x0b\x29\xc0\x29\xc0\xca\ +\xbb\x1a\x8d\x4f\xb5\x44\x63\x5a\xc6\xd4\x4e\xba\xb8\xee\x2e\x22\ +\xed\x8f\xbc\x85\x11\xb5\xa7\xfc\x89\x59\xc7\xaa\x5d\x2d\xfe\x07\ +\xe2\xa4\xb6\xb2\x3c\x32\x97\x00\x27\x04\x63\x39\xa8\xb7\x54\xad\ +\xee\x49\xd3\x32\x58\x6d\x6f\x25\x05\x3b\x87\x84\xa2\x95\x12\x08\ +\x56\x32\x3d\xf0\x38\xfa\x53\xaa\x36\xa2\xa4\xb9\x6a\x64\xa4\xaf\ +\x3c\x97\xb2\x7a\x7c\x19\xe3\xb2\xaf\x4f\xcb\x95\x06\x55\xf6\x4c\ +\xc8\x29\x29\xd8\xdb\x1c\xa9\xf2\x09\x0a\x25\x44\xe4\x64\x72\x30\ +\x33\x9e\xf5\x5c\xf5\x47\x4d\x3f\x70\xbc\x46\x99\xa6\xf4\xb2\xd0\ +\x98\x88\x6f\xc3\xfb\x6b\x21\xd6\x54\xe9\x74\x15\xf8\xbc\x95\x94\ +\x90\x00\x38\x3c\x8f\x6a\x97\x74\xfa\xf1\x17\x50\xdb\x00\x5a\x9a\ +\x4d\xc5\x18\x54\xa4\xa4\xf2\xa5\x1c\xe1\x78\xfe\xf6\x09\xfa\x85\ +\x0f\x4a\x98\xc7\x6a\x7b\x44\xa5\x25\x4a\x47\x04\x07\x46\x41\x1f\ +\xce\xb4\xc2\xb7\x12\x2a\x48\x5d\x4a\x4e\x8c\x9c\x25\xa5\xbe\x1e\ +\xbb\x8e\x5c\x56\x88\x72\x3f\x51\xdd\x93\x7d\xb5\x2d\xdb\x7b\xf7\ +\x94\x3e\xa3\x0e\x23\x8c\x30\x96\x14\xa0\x5c\x65\x09\x56\x54\x94\ +\x8c\x90\x92\x73\x4f\x7a\xd9\xeb\xd6\x93\xd5\x2e\x39\xa4\x2d\x9a\ +\x85\x7a\x51\x21\x29\x31\x27\x28\xbe\x42\x40\x19\x20\x9c\xa8\x0f\ +\x5c\x13\xeb\x5d\x19\x2d\xf9\x6b\x65\x49\x93\x14\x28\xab\xb6\x17\ +\xbd\x39\x1e\xbc\xf6\xa4\x52\xd0\xf4\xa4\x00\xb6\xf6\x11\x80\x72\ +\x8f\x4a\x5d\x66\xe5\xba\x1d\x87\xa9\x1a\x4a\xca\xef\xe3\xf8\x18\ +\xf4\x0d\xed\x8d\x43\x62\x8b\x22\x12\xca\xd0\xb4\x0c\xa8\xa4\xa7\ +\x8f\x6e\x40\xaa\xcb\xf4\x80\xb0\x07\x6d\xd7\x8b\x82\xda\x0b\x58\ +\x65\x0e\x05\x01\xfd\x95\x8e\x3e\xb8\x35\x6b\xdb\x6d\x49\xb2\x3e\ +\x57\x10\x84\xb0\xb5\xef\x2d\x60\x00\x14\x7b\xe3\xdb\xe9\x4d\x7d\ +\x46\x81\x12\xeb\x66\x97\x0a\x62\x9c\x43\x13\x11\xe1\x1f\x0f\x97\ +\x14\xa2\x41\x01\x03\xdc\xe3\xf0\xef\xe9\x59\x5a\xcb\x67\xd8\xc3\ +\x32\xce\xf2\xec\xce\x4e\xb7\x28\x5b\xba\x42\xdd\x9d\xe4\x11\x37\ +\x54\xdd\xd8\x7c\xa4\xf0\x53\x19\xa2\xa0\x15\x8f\x6d\xc7\x8c\xfa\ +\x66\xac\x8e\x85\xc6\x7a\x5c\xb6\x2e\xa9\x21\x4c\xbc\xe2\xf7\x10\ +\x73\x80\x14\x40\xcd\x44\xba\x8d\x65\x9b\x7c\xea\x79\xb7\x48\x91\ +\x1e\x01\x65\xff\x00\xb2\xc5\x4a\x7e\xe3\x6d\xa5\xbe\x10\x9e\xdd\ +\xbd\xcf\x04\xe7\x35\x26\xd1\xa5\x8d\x29\xa8\x60\xda\xad\xf2\x5a\ +\x52\x87\xec\x5e\x09\xc9\x0e\x0c\xf3\xcf\x62\x41\xf5\xfc\xab\xb3\ +\x43\x19\x08\xce\x32\xed\xd4\xe3\x63\x3a\x3a\xa3\xa0\xe4\xb9\x7f\ +\x09\x1d\x81\xa5\xf0\x18\x46\x3b\xfe\xee\x3d\xea\x5c\x85\xa1\x94\ +\x03\xc9\x57\xa7\xc7\x15\x5e\xe8\x69\x61\x50\x50\x54\xb0\x5c\xfa\ +\x7a\xd4\xe2\x37\x20\x2d\x47\x27\xbe\x2b\xb9\x55\xaa\x8b\x37\x23\ +\x87\x46\x5a\x19\xba\xeb\xce\x67\x7a\xb6\x80\x7b\x56\x29\x6f\x1c\ +\xee\x51\x56\x3b\xfa\xd6\xd2\x48\x39\xe7\xd8\x57\x80\xf9\xcf\x27\ +\x8e\x00\x27\xe6\x97\x7b\x2d\x06\x5a\xef\x53\x04\xb8\xeb\x0a\xde\ +\xda\x8a\x87\x6e\x7b\x9a\x2b\x35\xe1\x38\x21\x47\xf0\x1c\x7d\x28\ +\xa2\xc9\xee\x89\x4d\xad\x99\x0a\xe9\xb0\x43\x7a\x36\x0b\xef\xe7\ +\x62\x7c\x4c\x0f\xff\x00\xa8\xaa\x70\x9b\x35\xe9\x89\x29\x6d\x45\ +\xb6\xc0\xe3\x07\xe6\xa3\xda\x15\xd5\xc8\xd2\x90\x5b\xf3\x25\xb6\ +\xfc\x4c\x10\x3d\x7c\x45\x7f\x9d\x3f\x21\x29\xc7\x39\x18\xc9\xfa\ +\x71\x5b\xa1\x15\x64\xd9\xcd\x53\xea\xa4\x8d\x02\x3a\x41\x05\x47\ +\x71\x3d\xf9\xed\x5b\xd4\x84\x1f\x2a\x06\x3e\x7d\xab\x15\x00\x0e\ +\xd4\xee\x23\xb8\xad\xa8\x52\x4a\x7b\x67\xd4\x0f\x7e\x3d\xe9\xa5\ +\x45\x36\x79\xea\x6a\x40\x8a\xf3\x89\x28\x73\xee\x27\xfd\x77\xa8\ +\x86\xb2\x2b\x4d\xd9\x49\x4c\x90\xa6\x96\x90\xb4\xa4\x28\x1e\x0f\ +\x62\x3d\xc1\xa8\xf7\x4b\xe3\xc0\x9d\x77\xbf\x5d\x2e\x4c\x46\x91\ +\xa8\x18\xbe\xc8\x69\x4e\x3c\x80\xa7\x98\x42\x55\x86\x92\x82\x79\ +\x4a\x36\x60\x8c\x70\x72\x7d\xea\xb3\x54\x08\x31\xfa\x2b\xa5\x2e\ +\x05\xbd\x86\xe3\x2a\x2b\x37\x89\x4a\x52\xb7\xae\x2a\x64\x14\x6d\ +\x52\xbb\x84\x04\x84\xa7\x03\x00\x0e\x29\x17\xb4\xb3\x25\xb8\x71\ +\x5b\x8a\x4c\xb5\x9a\x01\x6d\x82\xda\x81\x49\x3e\x5c\x7a\xfe\x54\ +\x27\xf6\xc1\x28\x42\xb7\x0c\xed\x51\x07\x23\x8e\x0d\x56\xb3\xad\ +\x31\xe4\x6a\x6d\x4f\xa7\x6c\x52\x5b\xb5\x41\x95\x67\x63\xc6\xfb\ +\x38\x09\x6d\x99\x4a\x71\x41\x3e\x51\x80\x37\x20\x00\x71\x8c\x83\ +\x4a\x2c\xf6\x57\x75\x15\xa6\x75\x8e\x3d\xbe\xc7\x69\xbc\x59\xae\ +\x4c\x2e\x43\x2d\x23\x30\x2e\x05\x08\xdc\x94\x2f\x00\x12\x92\x0f\ +\x29\x39\x20\xa4\x67\xda\xaf\x9d\xf6\x15\xcc\x5d\x56\x08\x88\xc2\ +\x36\x14\x96\xf1\x9c\x82\x0e\xee\xd5\xb2\x52\x9b\xfb\x53\x9b\x96\ +\x8c\x95\x6d\xc6\x7f\x7b\x19\xc7\xd7\x1c\xe2\xa2\x7a\x06\xed\x78\ +\xba\xe9\xbb\x7c\x8d\x23\x65\xd3\xf6\x88\xe1\xf7\x9a\x9f\x19\xe0\ +\xbd\xa1\xc4\xb9\xb5\x45\x92\xd0\x09\x50\x24\x28\xe4\x8e\x49\xa8\ +\x3e\xa3\x81\x68\x90\x7a\xb7\x70\xb8\xb4\xd2\xe4\xc5\x58\xfb\x13\ +\x8e\x72\xa6\x5e\xfb\x3a\x4b\x65\xb3\xdd\x2a\x2b\x08\xe4\x60\x9c\ +\x0f\x6a\x8e\x27\x30\x72\xd1\x34\x5b\x0c\xde\xe3\xcb\xd5\x12\x74\ +\xd2\x22\xac\x3f\x12\x0b\x52\xd4\xee\x46\xd5\x05\xa9\x49\x09\x03\ +\xbe\x46\xd3\xf9\xd2\x29\xeb\x8d\x0d\x2e\xcb\x79\xf4\x22\x33\x20\ +\x97\x16\x55\xc2\x31\xdf\x3e\xdd\xaa\x0a\x6f\x42\xc9\x7c\xd4\x57\ +\x6b\xfd\xbd\x53\xcb\x3a\x36\x1f\xdb\x22\x91\xfd\x6a\x8a\x96\x95\ +\x21\x59\xcf\x04\x92\x0e\x41\xc0\xcd\x35\xc8\x86\xda\x75\x3e\xab\ +\xb7\xfd\x86\xc9\x16\x33\xda\x3f\xed\x0e\xc3\xb5\x8c\xc7\x0e\x85\ +\x2f\x62\x88\xc0\x05\x60\x14\xf3\x81\xc6\xd3\x50\xaa\x3d\x88\xce\ +\x4c\x6e\xba\xc6\xd5\x12\xc5\x6c\xba\xc5\xff\x00\x6c\x17\x47\x59\ +\x66\x13\x4d\xad\x28\x2b\x53\x83\x72\x72\x54\x46\xd0\x07\x27\x3d\ +\xbd\xa9\xfe\x19\x5c\x94\xc6\x2f\x35\xf6\x77\xdd\x03\x73\x4a\x58\ +\x51\x49\xf5\x19\x1c\x1e\xfd\xc5\x54\xd3\x2c\xf6\x94\x68\x5e\x97\ +\x1f\xd5\xb0\x4f\xda\x2e\x36\xe2\xe9\x0c\xa0\xef\xdf\x19\x5b\xc2\ +\xb8\xe7\x25\x23\x39\xef\x81\x9e\xd5\xae\xf4\xd5\xbd\x7a\x6f\x5f\ +\x5d\x2e\x29\x69\x37\xd8\x57\x47\x51\x0d\xf2\x70\xfc\x70\x9d\x9f\ +\x65\x4b\x47\xba\x41\x04\x63\x6f\x7c\x9a\x38\x8d\x6e\x46\x66\x74\ +\xd3\xef\x22\x34\x06\x22\xa5\xd4\xa5\x44\x24\x11\x9e\x79\xed\x5a\ +\xd8\x53\x67\x09\x4a\xd0\xa2\x46\x78\x56\x72\x33\xcf\xfe\xb5\x58\ +\x58\xed\xec\x5e\x7a\xd3\x71\x95\x7a\x8c\x99\x12\x60\xda\x6d\xd2\ +\x1a\x4a\x8e\x50\xcc\x82\x17\xb9\x61\x3d\xb7\x79\x71\x9e\xe0\x67\ +\x1d\xcd\x41\xe3\x59\xed\xd2\x34\x3e\x9c\xb8\x3d\x15\x2a\x9b\x2b\ +\x5c\x08\x6f\x48\xe7\xc5\x54\x75\x49\x71\xb5\x33\xbf\xbf\x86\x50\ +\x48\xdb\x9c\x73\xdb\x9a\xce\xa5\x64\x69\x95\x57\x7b\xdb\xd2\x3a\ +\x31\x0b\x42\xd2\x14\xda\x92\xa4\x9e\xc5\x27\x22\xb6\x14\x82\x80\ +\x48\xed\x55\xc7\x4c\xe2\x31\x6f\xea\x37\x50\xad\x10\x19\x6e\x2c\ +\x08\xf2\xe1\x38\xcc\x66\x52\x10\xd3\x6a\x72\x2a\x4a\xca\x52\x38\ +\x19\x3c\x9c\x55\x8e\x06\x72\x3e\x6a\x6f\x71\xd0\x79\x91\x9c\x77\ +\x54\xc9\xc7\x74\x1e\xe0\xd2\xb3\x83\x85\x8c\x10\x79\xf6\xa4\xa1\ +\x2a\x50\xc1\xe6\xbd\xdc\xa6\xfe\xf7\x23\xf9\x52\xe4\xae\xc7\x45\ +\xd9\x6a\x68\xbd\xc4\x0f\x33\xe2\x24\x1c\x8e\xf5\x1f\x03\xca\x52\ +\x47\x63\x52\xe6\x76\xbc\xca\x93\xc6\x08\xa8\xc5\xcd\xaf\xb3\x48\ +\x52\x48\xe0\x9e\x6b\x46\x1e\x7f\xe2\xf9\x19\xf1\x30\xff\x00\x25\ +\xcc\xc2\xde\xc9\x75\xc3\xc7\x03\xb5\x45\xfa\x8a\xe9\x4c\x67\x10\ +\x0e\x00\x18\xe2\xa7\x96\xa6\x36\xc3\x53\xa7\xdb\xd6\xab\x5e\xa6\ +\xbc\xa4\xb0\xe0\x4f\xb1\xab\x4e\x57\x52\xb7\x22\x99\x6d\x04\xfb\ +\x4a\xab\x48\x5b\x99\x7e\x45\xc2\xe4\xfb\x49\x71\x6d\x04\xec\xdc\ +\x32\x01\x51\x2a\x26\x90\x75\x77\xa4\xcd\xdd\xe1\xc5\xbb\x24\xbc\ +\xc4\xa0\x82\xa2\xe3\x4a\xde\xad\xbe\xc0\x1e\xff\x00\x4f\xa9\xa9\ +\x3f\x4d\xff\x00\x6f\x69\xbc\xb2\x17\xb5\xcf\xb3\x25\x63\x1c\xe0\ +\xa4\xed\x35\x68\xd9\x59\x55\xc2\xc7\x15\xc5\x36\x0a\xf6\x8d\xc4\ +\xa7\x3e\x55\x27\x07\xf8\x1a\xf2\x58\xba\x6d\xd6\xcd\x17\x67\xc8\ +\xf7\xb8\x4a\xbc\x3c\x24\x53\xd6\x3c\xd7\xc3\xee\x70\x55\xc7\x48\ +\x16\x1b\x75\xb6\x9d\x52\xd6\x96\x37\x95\xe3\x85\x1c\xf2\x9c\x7a\ +\x63\xb7\xd6\x99\x2c\xf0\x64\xb1\x71\x69\xef\x33\x61\xb2\x16\x16\ +\x7b\x12\x30\x71\xf5\xed\x5d\x29\xd4\xdb\x45\x90\x75\x21\x76\xd8\ +\x31\x3e\xc9\x19\xc8\x67\x73\xab\x04\x25\xd7\x82\xb2\x38\xf9\xc2\ +\xbf\x21\x54\xf4\xd8\xad\x89\x0a\x86\xc4\x73\xb3\xc5\xfd\xa9\xda\ +\x46\x13\xb8\x82\x9f\xa7\xb1\x1e\xdf\x14\xba\x18\xa9\xca\xf1\x96\ +\xa3\xb1\x78\x0a\x2b\x25\x4a\x6a\xd7\xd6\xdf\xc1\xd5\xdd\x2f\x6d\ +\xe6\xf4\x15\xb9\xf9\x61\x5e\x33\xc8\x0a\xf3\xfd\xe0\x9f\x4c\xfd\ +\x7b\xd4\xd2\x3b\x99\x39\x23\xbf\x02\x99\x2d\xed\x26\x2d\xae\x2c\ +\x74\xf0\xdb\x2c\x36\x84\x73\xc0\x4a\x52\x00\xfc\xb1\x4e\xb6\xce\ +\x52\x92\x52\x40\x3e\x6e\x7b\x0f\xad\x67\x8b\xd7\x41\x15\x5e\x66\ +\xd9\xe5\xc6\x02\xf2\xa9\xcc\xa3\x7b\x89\x18\x5b\x27\xfe\x14\x7b\ +\x56\xbb\x6e\xa2\x86\xe3\xe2\x2c\xa7\x44\x77\xf3\xfd\x53\xc7\x6a\ +\xd3\xf1\xcf\xde\x14\xf2\x0e\xe2\xa0\x92\x4e\x7b\x1f\x4c\x7d\x68\ +\x91\x6a\xb7\xcd\x63\xc2\x9b\x0d\x99\x20\x9c\x00\xe2\x01\xc5\x31\ +\x41\xa7\x78\xb2\x8a\x70\x92\xb4\xd7\xc8\x7b\xb6\x2a\x33\xad\xa5\ +\x4b\x42\x92\x30\x3c\xdb\x72\x83\xff\x00\x58\x7f\x8d\x3e\x43\x8f\ +\x13\x68\x29\x71\x93\xf4\x22\xab\xe6\x74\x15\x9c\x2c\xaa\x23\xf7\ +\x6b\x6a\xbb\x83\x0e\xe0\xe2\x06\x7e\x99\xc5\x2e\x6b\x46\x49\x48\ +\xca\x75\x96\xad\xd8\x3d\x3e\xde\x0f\xf1\x29\xad\x11\x9d\x45\xbc\ +\x7c\xc4\x4e\x8d\x17\xb5\x4b\x78\xaf\xb3\x64\xca\x4c\x64\x10\x4a\ +\x31\x84\xf2\x48\x1c\x0f\xa9\xed\x50\x8b\xbe\xab\x80\x89\x46\x06\ +\x9e\x8c\x35\x15\xdd\x27\x68\x6a\x39\xcc\x66\x0f\xf6\x9f\x74\x79\ +\x40\x07\xf7\x41\x26\x94\x3d\xa2\xec\x60\x03\x78\x93\x76\xbd\x60\ +\xfd\xdb\x85\xc1\xc7\x50\x4f\xca\x01\x09\xfe\x14\xe9\x19\xe8\xd6\ +\xd8\x3e\x04\x48\xb1\xe2\x46\x69\x39\x08\x65\xb0\x84\x0f\x6c\x01\ +\x51\x27\x37\xbd\x97\x9b\xfb\x2f\x32\x69\xc2\x94\x35\xd6\x5e\x4b\ +\xf9\x6d\xf9\x78\x91\x48\x1a\x6a\x4a\x25\x4a\xbd\x5f\x65\x7e\xb2\ +\xbc\xcd\x47\x87\x21\xf2\x30\x86\x9b\xff\x00\xe1\x34\x3f\x71\x3f\ +\xc4\xd2\x6f\xb2\x44\xb6\xc3\x10\x61\xa0\x36\xca\x09\xda\x90\x49\ +\x39\xfa\x9e\x49\xa7\x69\xf3\xa6\x5c\xde\xda\xd2\x8a\x00\x3d\xc7\ +\x14\x95\x36\xf0\xde\x56\xbc\xaf\x06\x93\x92\x37\xea\xa3\x53\xab\ +\x39\x7b\xcf\xe1\xcb\xbb\xe5\xc8\xdd\x08\x2d\x05\xb4\x04\xf9\x30\ +\x09\x39\xe7\x9a\x57\x75\x82\xa7\xa2\x2d\x3c\x1c\x8e\xc4\x52\xab\ +\x23\x71\xd6\xa6\xd0\xb5\x15\x73\x82\xae\xf4\xf3\x72\x8f\x1c\xa1\ +\x68\x6d\x3b\xa9\xaa\x92\x94\x6e\x67\x95\x4c\xb2\x48\xa6\xed\xfa\ +\x72\x12\xe4\xab\xf5\x60\x66\xd9\x76\x8c\xe2\x94\xdb\xc8\x4f\x95\ +\xe0\x7b\xa1\xc1\xea\x93\x81\xf2\x0e\x08\xe6\xa4\xf0\x35\x01\x43\ +\x88\xb7\xdf\x99\x55\xbe\x71\x00\x6d\x59\xce\xff\x00\x94\x9e\xce\ +\x0f\x91\xe6\xf7\x4f\xad\x21\xbf\xe1\x9d\x40\x51\x18\x6f\x3b\x72\ +\xe6\x0f\x20\xfa\x54\xa2\xc6\xe4\x3b\xed\xa9\x70\x6e\x71\x99\x94\ +\x13\xf7\xd0\xeb\x61\x49\x3f\x50\x7d\x6b\x2d\x34\xd3\xb4\x5e\xbe\ +\x46\xaa\xd2\x52\x8a\x75\x15\xd7\x9a\xfb\xae\xef\x95\xb5\x1b\xee\ +\x62\x33\xe5\x1f\x63\x9c\xd2\xf1\x9c\xed\x58\x18\xfa\x83\xda\x90\ +\xc9\x93\x1a\x23\x79\x9d\x3a\x2b\x00\x0e\x54\xe3\xe9\x48\xfe\x74\ +\xba\xe3\xd3\xcb\x14\x92\xa4\x34\xe4\xf8\xcd\xab\x80\x84\x3d\xb9\ +\x09\xfa\x05\xe7\x14\xdd\x1f\xa7\x71\x6d\xe0\x18\xb7\x4c\x14\xf6\ +\x5b\x90\x18\x5a\xff\x00\x32\x9a\xbc\x95\x5b\xeb\x1f\x93\xfb\xd8\ +\xac\x55\x1b\x7b\xff\x00\x34\xfe\x97\x19\x5c\xd4\x28\x90\x54\x8b\ +\x2c\x67\x6f\x2a\xce\x03\x88\xca\x23\x20\xff\x00\x79\xd2\x31\x81\ +\xec\x9c\x9a\xf1\x9b\x7b\xac\xb8\xa9\xd7\x19\x49\x99\x70\x29\xc2\ +\x56\x84\xe1\xa6\x12\x7f\x75\xa4\xfa\x0f\x75\x1e\x4d\x3d\xce\xd3\ +\xd3\x49\x0b\x76\xff\x00\x31\xc2\x83\x90\x14\xda\x00\xfc\x00\xed\ +\x49\x5a\x8b\x25\x08\x5a\x1d\x79\x2e\x8c\x79\x4e\xdc\x67\xe9\x8a\ +\xcf\x25\x2d\x9a\x25\xca\x0b\xdd\x67\x3e\x6b\xbb\x71\x3d\x7b\x8a\ +\x5b\x73\xc0\xdf\xb2\x5b\x25\x47\xca\x56\x13\xce\x3d\xc9\xc0\xf2\ +\x9e\x0f\x6f\x5a\x6b\xb6\xc7\x59\xbf\xdb\xdf\x71\xb6\x9b\xc9\x53\ +\xdb\x1b\x18\x03\xcd\x8f\xc3\xf1\xf4\xa7\x7e\xb4\x19\x11\xba\x95\ +\x6f\x9e\xc1\xca\xe1\x04\x1d\xbb\x41\x29\x0a\x47\x2a\xf9\x00\x81\ +\xf4\xc1\xa6\x7d\x2c\xbf\xb4\xdc\xd5\x29\x4a\x2b\x6c\x10\xcb\x27\ +\xb0\x20\x77\x35\x7a\x69\xce\x50\x5e\xb7\x37\xe6\x8d\x2e\x8d\xc4\ +\x54\x7d\x96\xf9\xa4\x8e\x9b\xe9\xab\xe5\xc8\xcd\xac\x81\xc7\x6c\ +\x55\xad\x15\x40\x34\x95\x2c\x8c\x63\xb6\x6a\xa4\xe9\xb8\x52\x61\ +\xb4\x84\x03\xda\xad\x9b\x74\x40\x5b\xdc\xe1\x2a\x24\x1e\xd5\xed\ +\x1c\x54\x29\x45\x33\xe7\x14\x6f\xb2\x37\x78\xc8\xc8\x39\x04\xfc\ +\x0f\x8a\xc9\x38\x3c\x83\x80\x79\xe0\x66\x94\x08\x8c\xad\x3f\x73\ +\xe0\x0a\x4a\xfc\x63\x1c\xee\x6c\xe1\x39\xe4\x7b\x52\x54\xa2\xdd\ +\x91\xa5\xc6\x4b\x56\x66\xbe\x53\x81\xdf\x04\x7d\x28\xa4\x57\x0b\ +\x83\x31\xe2\x93\xb8\x6e\xf4\x1e\x94\x53\xa1\x4a\x4d\x08\x9d\x58\ +\x27\xa9\x05\xd0\x2a\x6d\xad\x1d\x07\x23\x27\x2b\xec\x7d\x37\xab\ +\x9a\x79\x32\x54\xa2\x36\x34\x4f\x18\xed\x9a\x6d\xe9\x95\xbd\x4f\ +\xe9\x48\x4f\x3e\xaf\x29\xf1\x38\xcf\xfc\x62\xaa\x68\x98\xc8\x4f\ +\x01\xb4\x82\x3f\x9d\x68\xe2\xc6\x29\x23\x2d\x3a\x52\x94\x53\x23\ +\x09\x92\xa0\xbf\xda\x24\xa0\x64\x60\x91\xc7\xfa\xef\x4a\x52\xea\ +\x55\xca\x33\x82\x30\x38\xfe\x54\xf3\x26\x23\x0f\x34\x42\x92\x02\ +\x8f\xae\x3d\x2a\x29\x70\x9c\x8b\x3b\xea\x61\xc1\x9c\x9f\x2f\x35\ +\x78\x4d\x4f\x62\x27\x07\x03\x64\xbb\x7d\x8c\x5d\x99\xbb\xc8\xb6\ +\xc0\x55\xc1\xa0\x42\x25\x29\x94\x17\x53\xc6\x30\x17\x8c\x8e\x3e\ +\x6a\x37\x75\x6a\xdc\x1b\x4c\x28\x70\x62\xb1\x01\xb4\x96\xd1\x15\ +\xa6\x52\x96\x82\x79\x24\x04\x81\xb4\x02\x49\xe3\x15\x59\xf5\x3f\ +\x55\x5f\xb5\x0e\x95\xbc\xca\xb6\xc0\x2d\xda\xe2\x4f\x6a\x1a\xa6\ +\x09\x05\x0e\x15\x25\xf6\xc2\x88\x48\x4e\x36\xee\xf2\xfd\xec\xf2\ +\x4e\x31\x52\x4b\xb6\xa4\x9b\x67\x91\x7c\x71\x16\x96\x25\x31\x61\ +\x43\x6a\xb8\x17\x25\x86\x9c\x3b\xd3\xbb\x6b\x49\xda\x77\x14\xa4\ +\x85\x1c\x91\xdc\x01\xf1\x19\xe2\x98\xac\xc8\x92\x5a\x34\xb5\xa4\ +\x42\x54\x75\x5a\x20\x22\x1b\x87\x72\xe2\xa6\x3a\x03\x6a\x3f\x29\ +\xc6\x0f\x20\x7a\x7a\x0a\x75\x3a\x6b\x4f\x9b\x62\x2d\xa3\x4f\xda\ +\x97\x11\x0a\xdc\x98\xe6\x22\x0b\x49\x38\xee\x13\x8c\x67\x1e\xb5\ +\x16\x91\xaf\xcc\x08\x9a\x9d\x72\x60\x00\xbb\x3b\x4c\xbb\x15\x09\ +\x5e\x3e\xd6\x97\x9b\xcb\x47\xb7\x19\x5e\x53\xeb\xda\x90\xea\x0e\ +\xa5\x4e\x80\xe5\xd3\xec\xd6\xd6\x1e\x6e\xce\xd3\x4b\xb8\x93\x33\ +\x62\xb7\x29\x3b\x94\x86\x86\xd3\xbb\x6a\x4e\x4e\x48\xf6\xef\x53\ +\x9a\x21\x74\x59\xf6\x65\xc6\x81\x01\x31\x23\xc7\x69\x94\x20\x6d\ +\x42\x1b\x48\x09\x03\xd8\x01\xc0\xfc\x29\xa6\xc9\xa1\xac\xd1\xb5\ +\x15\xd7\x50\xca\x89\x1a\x6c\xfb\x84\x84\xc8\x4a\xdf\x8c\x85\x2e\ +\x31\x4a\x52\x9c\x21\x58\x24\x03\xb4\x1f\xad\x56\x6e\xea\x57\x2c\ +\x9a\xd7\x55\xdf\x24\xba\xf3\xb0\xa2\xda\x22\x48\x08\x4a\xb2\x0e\ +\x77\xe3\x68\xec\x0a\xb8\x1f\x95\x4b\x22\x75\x0e\xe9\x6f\x9a\x8b\ +\x75\xfe\xca\xcc\x49\x32\x60\x3d\x32\x19\x6a\x51\x75\x2a\x2d\x00\ +\x56\xd2\xc9\x42\x70\xa0\x14\x0e\x46\x47\x7e\x6a\xad\xc5\x92\xa4\ +\x9e\xe4\xd8\xc1\x80\xcc\x99\x0f\xbb\x6d\x88\xe3\xb2\x19\xf0\x5e\ +\x75\x4c\xa4\xa9\xc6\xc6\x70\x85\x12\x32\x53\xc9\xe0\xf1\xc9\xad\ +\x16\x8b\x25\xa2\x08\x2a\xb7\x5a\x60\x43\x6c\x25\x48\x08\x62\x3a\ +\x10\x02\x55\x82\xa1\xc0\xe0\x12\x06\x47\xc5\x57\xf6\x9e\xa0\xdd\ +\x6e\xcf\xe9\xf7\x66\x5a\x1b\x8b\x02\xfe\x4a\x62\x2d\x32\x8a\xdc\ +\x43\x9b\x0a\x80\x5a\x76\x80\x02\x80\x38\xc1\x3f\x3d\xf8\x46\xd7\ +\x51\x6f\x89\xb7\x43\xba\x37\xa7\xd2\xe4\x39\x57\x43\x6a\x6c\x09\ +\xb8\x70\xc8\xdc\xa4\xa4\xed\x29\xc6\xc2\xa4\xe3\x39\xc8\xce\x71\ +\xc7\x33\x9a\x3b\x91\x99\x16\x23\x7a\x77\x4f\xb4\xc3\x71\x98\xb2\ +\x5b\x58\x69\xb7\xfe\xd2\xd2\x5a\x88\x84\x84\x3a\x32\x03\x80\x01\ +\xc2\xf9\x3e\x6e\xfc\x9a\x4f\x36\xc7\x6d\x55\xc5\xb9\xb2\x6d\x70\ +\x9e\x94\xde\x3c\x39\x0e\x47\x4a\x9c\x47\xd1\x44\x64\x7a\x54\x65\ +\x1d\x45\x72\x24\x2d\x44\x9b\xcd\xb1\x0d\xcf\xb2\x3c\xcb\x2a\x66\ +\x3c\x8d\xe8\x7d\x4f\x04\x96\xb6\xa9\x49\x4e\x32\x54\x01\xc8\xe3\ +\xbd\x2e\x3a\xbe\x74\x68\x1a\xa1\x37\x4b\x6c\x31\x3a\xc3\x6f\x4d\ +\xc7\xc3\x8f\x33\xc6\x69\xf6\x94\x15\x8c\x28\xa1\x24\x10\x52\x41\ +\xc8\xf6\x3e\xb4\x39\xc1\x6e\x0a\xc4\xc6\xdc\xe4\x06\x64\xae\x58\ +\x89\x1d\x13\x1e\x4a\x50\xe4\x94\xb6\x90\xe3\x89\x4e\x76\x82\xac\ +\x64\x81\x93\x80\x7b\x64\xd3\xa4\x7b\x35\x89\x51\x19\x61\xbb\x4d\ +\xb8\x47\x66\x40\x94\xd3\x42\x32\x36\xb6\xfe\xe2\xaf\x11\x23\x18\ +\x0b\xdc\x49\xdc\x39\xc9\xce\x6a\xbf\x85\x74\xbc\x39\x7f\x83\x67\ +\x93\x69\x8b\x15\xdb\xb5\xb1\xcb\x85\xb0\xfd\xb4\xb8\x06\xcd\xa7\ +\x63\xde\x41\xb0\xf9\xd2\x7c\xbb\x87\x71\xcf\x72\x74\x5a\xfb\xa9\ +\xee\xda\x1e\x0d\xde\xf2\x23\xba\x89\x69\x52\xda\x71\xa5\x12\xb2\ +\x3c\x45\x82\x14\x36\x80\x9c\x60\x01\x82\x73\x4b\x79\x2a\x7b\xa3\ +\x61\x53\x2b\xb3\x45\x8d\x1a\xdf\x19\x13\xa4\xca\x89\x0e\x3b\x52\ +\x25\x14\x2a\x43\xed\xb4\x94\xad\xe2\x91\xb5\x3b\xd4\x06\x55\x81\ +\xc0\xce\x70\x38\xa7\x04\xc2\x51\x39\x2b\x39\xf5\x15\x53\x5a\xf5\ +\xac\xbd\x3c\x8d\x63\x39\xfb\x7a\x9f\x93\x1a\xff\x00\x12\x22\x9b\ +\x5d\xc1\x6e\xb5\x87\xbc\x34\x85\x20\x29\x23\x60\x09\x50\x25\x20\ +\x11\x9c\xf3\x8c\x54\xbb\x51\xf5\x07\xf5\x15\xfb\x51\xc1\x7e\xd8\ +\xe4\x86\x2c\x96\x44\x5d\x0a\x99\x5e\x5c\x74\xa9\x4b\x05\x18\xc6\ +\x00\x1b\x73\x9c\xfb\xd6\x59\xd5\x69\xd9\x1a\xa9\xca\x9b\x57\x97\ +\xad\xfe\xc4\xa5\x71\xdf\x68\x64\x28\xa8\x0e\xfc\x57\xa7\x0e\x23\ +\x6a\xb8\x35\x5d\xeb\xdd\x67\xaa\xe3\xf4\x86\x5e\xa9\xb6\xb3\x62\ +\x61\x4e\x18\xa6\x3b\xd1\x2e\x2a\x94\x03\x6e\xb8\x94\x12\x09\x69\ +\x23\x70\x2a\x48\xf5\x18\x2a\x3c\x10\x01\xb0\x62\xb5\x70\x5c\x06\ +\x9e\xb8\xa2\x33\x53\x79\xf1\x53\x15\xc5\x2d\xb1\xc9\xc6\x0a\x92\ +\x09\xe3\x19\xe0\x72\x6a\x23\x52\xef\x52\xfa\x37\x68\x9b\x2d\xca\ +\x2d\xaf\x61\x3d\x8f\x1f\x15\xaa\xff\x00\x04\x3a\xf2\x54\x79\xcd\ +\x64\xca\xb0\xf8\x51\xfa\x1a\x72\x9a\xcf\x8c\xd2\x76\xf7\x06\xac\ +\xe7\x92\xa2\x91\x68\xc3\x3d\x37\x11\x0b\x8d\x86\xad\xa1\x3d\x8e\ +\x3d\x6a\xad\xea\x04\x70\xb8\xaf\x15\x0e\x4d\x5b\x17\x4c\xa6\x38\ +\x18\xc6\x07\x35\x5c\x6b\x36\xc3\x91\x95\x81\xc0\xef\x5a\x30\xdd\ +\x64\xef\xcc\x4e\x21\x59\xa4\x51\x3a\x5e\xe6\xfd\x9b\x51\xcb\x8e\ +\xd9\xc7\x8a\xd2\xc0\x1e\xe0\x8e\x7f\x8e\x0d\x74\x96\x91\x2c\xb5\ +\xa4\x21\x3b\xb4\x1d\xcc\x25\x5f\xc2\xb9\x86\x79\x0a\xea\x84\x28\ +\x28\x20\x78\xb1\x1c\x52\x47\xf7\xb7\x63\xf9\x57\x42\x69\xb9\x92\ +\x1c\xd2\xf0\xd2\xd3\x4a\x79\x0d\xb2\x1b\x73\xc3\xee\x85\x27\x83\ +\x9f\xca\xb8\x18\xac\xaa\xa6\x87\xa4\xc0\x66\x9e\x12\x29\xf6\x90\ +\x6e\xa2\xdb\x2d\x31\x51\x3b\x50\xdc\x22\x46\x54\x85\x61\x4c\x25\ +\x4a\xe4\xed\xc9\xed\xec\x9c\x02\x4f\xcf\x35\x46\xda\x5b\x6a\xe0\ +\xf2\xda\x91\x19\x4c\xb7\x3d\x2a\x5b\x4a\x4a\xf2\x16\xde\xe5\x2b\ +\x23\x3d\xc8\xdc\xa1\xcf\x1d\xea\xe0\xfd\x24\xee\xae\x42\xd3\xb6\ +\x4b\x78\x8c\x8d\xb3\x56\xf2\x14\xeb\xec\x12\x84\xa3\xca\x92\x9d\ +\xde\xe4\x2b\x38\x1c\x9c\x7c\x55\x25\x6d\x75\x2f\xcc\x8d\x0d\xe0\ +\xd0\x54\x64\xa5\x2e\xb9\xbf\x07\x6e\xe2\x02\x07\xf6\x46\x55\x8e\ +\x7e\x6b\x8b\x51\x24\xda\x3d\x05\x2c\xd2\xa5\x19\xcb\xd7\x23\xa0\ +\xf4\xfc\xd7\x5f\xd3\x16\xc7\xdf\x42\x10\x4c\x74\x21\x41\x27\x39\ +\x21\x23\xf8\x1c\xd4\xb2\xd0\xbd\x91\xc0\x5a\x81\x07\x8e\xd5\x5d\ +\xd8\x5e\x77\xf5\x5c\x78\xc5\xb7\x37\x8e\x77\xa9\x7c\x0f\x4e\xde\ +\xfc\x7e\x15\x3d\xb4\x2f\xc4\x84\x56\x94\x85\x0d\xa7\x8f\x5c\x1a\ +\xad\x39\x5d\x98\xab\x44\x7e\x88\x77\x1d\xd8\x4e\xe3\xc1\x03\xb6\ +\x29\xca\x37\x86\x4e\xdd\xc4\x28\x77\x09\xef\xf9\xd3\x3c\x65\x2d\ +\x6c\xa5\x68\x4f\x95\x49\x03\x69\xe0\xfe\x3e\xd4\xec\xdb\xa8\x4a\ +\x37\x92\x00\x00\x7e\x15\xae\x0c\xca\xd0\xed\x1b\x68\x56\xe2\x53\ +\x8c\x71\x4a\x5f\x7c\x36\xd1\x50\x19\xe2\x9b\x22\x38\x92\x92\x07\ +\xaf\xc5\x23\xbd\x4c\x2d\x84\xb6\xd0\xdc\xe9\xe1\x29\x1e\xb4\xfe\ +\x22\x8a\x17\xc3\xcd\x2b\x19\x4b\x96\x15\x20\x23\x24\xac\xf6\x48\ +\xac\x2e\x4c\x2d\xfb\x6b\xd1\xe3\xe3\xc5\x29\xca\x72\x7b\x9a\xd3\ +\x19\xb4\xc3\x41\x79\xf5\x05\xc8\x5f\x2a\x23\xd3\xe0\x7b\x52\x29\ +\x93\xd0\xb2\x5a\x52\x94\x90\x53\xf7\xb3\xc8\x1f\x15\x55\xd6\xd5\ +\x8f\x4b\x55\x97\x90\xcb\x03\x51\x42\x8e\xb5\x44\x92\x92\xdc\x96\ +\xf8\x71\xb5\x70\xa0\x7d\xb1\x55\x6f\x5a\x75\x67\x5d\xa1\xcf\x42\ +\x74\x96\x9a\x44\x2b\x52\x87\xec\x9e\x44\x74\xc8\x75\xdf\xf9\x44\ +\xe4\x27\xe9\x8f\xc6\xad\x15\x96\x27\x36\x82\xfc\x44\x2c\xa0\x80\ +\x92\xa1\x95\x0c\x76\xe7\xbe\x69\xce\x04\x95\xf8\xff\x00\x64\xdb\ +\x2c\x6f\x19\x1c\x6e\x18\xa5\xaa\x52\x4f\x7d\x0d\xd7\xa6\xaf\xd5\ +\xf5\xdd\xfd\x32\xa6\xe8\x9f\x52\xb5\xa7\xeb\x98\xb6\x5e\xa2\xd8\ +\xd3\x6e\x99\x34\x91\x0a\x63\x69\xd8\x87\xd6\x06\x7c\x35\xa4\x12\ +\x12\xa2\x01\xc1\x18\xcf\x6c\x55\xcd\xab\x75\x1c\x4b\x4e\x9c\x9f\ +\x78\x96\xef\x87\x1a\x1b\x0a\x79\xe2\x0e\x4e\xd4\x8c\x90\x3e\x4f\ +\x61\xf3\x4c\xba\x8f\x4d\xb5\x31\xb4\xca\x8c\x86\x1e\x71\x0a\x0b\ +\x09\x5b\x78\x21\x40\xf0\x52\x7d\xea\x17\xaa\xa0\xde\xae\x50\x95\ +\x63\x93\x0a\x43\xcd\xc8\x50\x2e\x64\x8d\x84\x03\x9e\x7e\x38\xed\ +\x54\xa9\x39\xc2\xfa\x12\xa8\xd1\xaf\x28\xb8\xbb\x5b\x7b\xfa\x44\ +\x1f\xa7\x7a\xd6\xf9\x7e\x95\x37\x52\x5c\xe5\x45\x85\x69\x79\xd3\ +\x96\x1d\x21\x02\x33\x7e\x87\x79\xef\xf3\xee\x7b\x55\xc5\xd3\x1d\ +\x4d\x0e\xeb\x16\x74\xfb\x79\x2e\x43\x4b\xfe\x1a\x1d\x29\x20\x39\ +\x81\xc9\x4e\x7b\x8a\x88\x41\xb0\x5b\xa2\x43\x4c\x79\x16\xd6\xa6\ +\x25\x27\x62\x10\xe3\x23\xc3\x07\x19\xec\x46\x3f\x3a\x94\xd8\xee\ +\x31\x23\xb2\xcc\x56\xd8\x69\xa1\xfd\x5a\x5b\x42\x40\x49\x23\xdb\ +\x1d\xbf\xf2\xa4\x52\xa4\xe3\x2c\xcd\xdb\xb8\xd7\x8d\x95\x1a\x91\ +\xb4\x23\xd9\xeb\xc4\xb2\xa1\xca\x6a\x42\x4f\xad\x6a\x95\x93\xca\ +\x12\x0f\xb6\x7d\x69\x96\x14\x9f\x30\x52\x14\x38\x1c\xe3\xd4\x53\ +\xba\x1d\x4a\x9b\xee\x49\x27\xb7\xb5\x6d\x52\xba\xb3\x38\x4e\x19\ +\x5d\xc4\x92\x9b\xdc\x9c\x90\x01\x3e\x86\xa2\x77\x84\xa1\x93\xbd\ +\x43\x6a\x42\x87\x73\x53\x07\x16\x08\x50\x52\x8a\x89\x3c\xfc\x54\ +\x47\x54\xa9\x28\x8c\xe9\xc2\x31\x8f\x26\xef\x7f\x63\x59\xeb\x69\ +\x1b\x97\x85\xef\x63\x9d\xfa\xca\xcf\xeb\x0e\xa3\xbb\x1b\xc4\x6c\ +\x17\x22\x78\x1e\x13\x99\x0a\x2b\x09\xde\x95\x20\x8f\x5c\xff\x00\ +\xe8\x45\x45\x2d\x37\x2f\x07\x5e\xda\xf4\xd8\xf0\x8b\x6c\x47\x57\ +\x8a\x50\x80\x32\xf2\x93\x93\x9c\x13\x9c\x11\x8c\xf1\xce\x6a\x6f\ +\x75\xfb\x15\xef\x5d\xc8\xfd\xa7\x88\x44\xa7\x1b\x43\x78\xf3\x95\ +\xa1\x20\x00\x32\x3b\x8c\x8c\x11\xdf\x07\x8a\xa4\x2d\x17\x69\x0e\ +\x75\x34\x4d\x52\x9b\x42\xd3\x39\x59\xc1\xe3\xef\x10\x7f\xf4\xaa\ +\xe0\x9d\xe4\xdf\x61\xab\x1c\xbf\xf8\xf8\x5f\xed\xf4\x47\x71\x74\ +\xb8\xa7\xec\x8d\x93\xc9\xe3\xbd\x5b\xb0\x16\x36\x00\x0f\xe7\x54\ +\x4f\x4e\xe7\xa5\x2d\x60\x1f\xbb\xc8\xe6\xac\x2b\x66\xa3\xf0\xe7\ +\xb6\x16\xad\xad\xab\x8e\xfc\x57\xb2\x51\x75\xa9\x29\x1e\x0e\x9d\ +\x65\x07\x66\x4f\xb3\x8c\x67\xf9\x56\x32\x46\xe6\x17\x93\xdc\x11\ +\xcd\x69\x6a\x63\x0b\x48\x58\x70\x24\x7d\x6b\x5c\xb9\x49\x52\x7c\ +\x36\xb0\xaa\xca\xa1\x2c\xdb\x1b\x9c\xe3\x97\x71\x89\x9b\x58\x5b\ +\xa5\xc9\x4e\x65\x21\x5e\x50\x73\x45\x3c\xb6\xd0\x43\x78\xee\x73\ +\x45\x6a\x75\x5b\x7b\x99\x15\x18\xa5\xb1\x18\xe9\xf3\xad\x31\xa2\ +\x20\xad\xc2\x9d\xbf\xb4\xe3\x1f\xf1\xaa\xa9\x1b\x0b\x43\xcd\x85\ +\x21\x47\x18\xcf\x06\xab\x58\x93\x1c\x6f\x43\x5b\xa3\x34\xac\x29\ +\x5b\xfd\x7b\x7e\xd1\x54\xe3\xa7\xf5\x22\xe2\x36\x23\xbe\x14\x52\ +\x39\x0a\x35\x78\xd1\xbc\x2e\xb7\x15\x1a\xd6\xb2\x7b\x13\xb2\x0e\ +\xd3\x9c\x1f\xad\x43\xb5\x0c\x58\xf2\xaf\x00\xad\xad\xdb\x79\xc7\ +\xcd\x2e\x1a\x8d\xb9\x67\xc2\x8a\x09\x50\xe0\xd1\x1d\xa5\x29\x65\ +\xc5\x11\xe2\x2b\xb9\xc5\x32\x94\x1c\x75\x65\x6a\xcd\x4b\x44\x55\ +\xb7\x5d\x07\xa9\x57\xa7\x2f\x7a\x62\xd8\xfd\xa1\x16\xab\x85\xcf\ +\xf5\x83\x4e\xbe\x56\x97\x9a\xcb\xa9\x78\xb5\xb4\x24\x82\x37\xa7\ +\x85\x6e\xc8\x07\xb1\xa7\xf9\x3a\x5e\x6c\x5d\x67\x78\xbd\xb1\x64\ +\xd3\x57\xa6\x6e\xfe\x13\x8e\x22\xea\x8c\x2e\x3b\x88\x46\xc2\x52\ +\xaf\x0d\x7b\x92\x40\x49\xdb\xe5\xe7\x3c\xfa\x54\xd5\x6a\x6d\xbc\ +\x85\x3a\xda\x48\x04\xe0\xab\x1c\x7b\xfd\x2b\xd2\xa4\x85\xa1\x2a\ +\x52\x7c\xfc\x0f\x92\x39\xc0\xfc\x2a\x5d\x28\xbd\xc4\x25\x62\x35\ +\xad\xba\x72\xad\x5d\xac\x6c\xd7\x8b\x73\xb0\x22\xda\x9b\x65\xb6\ +\x6e\x91\xd5\xb9\x2b\x75\x2c\xb9\xe2\xb1\xb0\x24\x60\xe1\x79\x07\ +\x24\x71\xef\xda\xa1\x37\xcd\x19\x2e\xcf\xac\x2e\xf3\x22\xd9\xec\ +\x57\x56\xae\x05\xb5\xa9\x37\x24\x10\xb6\x16\x94\xed\x25\x27\x62\ +\xf7\x24\x80\x38\xe3\x9c\xf3\x56\xe5\xa7\x50\xdb\x2d\xfa\xa2\x2d\ +\x8a\x44\xd4\xb7\x2e\x5b\x4b\x75\xa6\x94\x71\x94\x20\xa4\x12\x4f\ +\x61\xca\xd3\x8c\xf7\xe7\x1d\xa9\x46\xb0\x44\x34\xcc\x57\x8e\xa4\ +\x23\x29\xca\x94\xae\x31\xf3\x9a\x4c\x16\x5a\x8e\x1c\xb7\x1f\x38\ +\x46\x70\xe2\x2d\xef\xa9\x50\xdc\xf4\x8a\xaf\x2f\xea\x94\x49\x76\ +\x3b\x30\xef\x36\xb8\xd0\xe3\xf8\x69\x25\x6c\xad\xa2\xa2\x14\x53\ +\x80\x36\x82\x53\xc0\x3e\x87\xb5\x21\xbb\x58\x6f\x93\x26\xb7\x7a\ +\xd4\x0e\x40\xdd\x6e\xb6\x48\x66\x33\x51\x14\xa5\x78\x8e\x38\x90\ +\x16\xe1\x25\x23\x6f\x09\x18\x48\xcf\x7e\xf5\x65\x26\xda\xf1\x07\ +\xec\xcb\x42\x9b\x3c\x82\x0f\x1f\x5a\xc5\x30\x43\xa8\xf1\xd6\xf3\ +\x65\x19\xc0\x5e\xf1\x8c\xe7\xd0\xfd\x6b\x46\x48\x99\xf2\x95\xc7\ +\x4c\x6c\xb7\x59\x76\x7d\x17\x2a\xee\xcc\x58\xb0\xac\xcc\x07\xd9\ +\x65\xb5\xad\x4f\x3c\xef\x85\xb1\x25\xc0\x52\x9f\x0f\x68\x52\x8e\ +\xd1\xbb\x24\x0e\x6b\xd6\x34\x6d\xf5\x3a\x7e\xd3\x6b\x0f\x43\x53\ +\x90\xb5\x22\x6e\xce\x10\xb5\x6d\x2d\x07\xd4\xe6\x07\x97\xef\x61\ +\x5d\x8e\x06\x7d\x6a\x6f\xac\xee\x28\xd2\xba\x6a\x4d\xe6\x42\x54\ +\xf8\x8e\x5a\x0a\x61\x0a\x01\x67\xc4\x75\x2d\x03\xcf\xa6\x55\xfc\ +\x2a\x45\x0d\x31\x23\x6e\x3e\x2a\x56\xb0\x76\xf0\x73\x83\xed\x50\ +\xa1\x1d\x81\x45\x6c\x44\x9b\xe9\x44\xbb\xe3\x5a\xd6\x4c\xd9\x10\ +\xd9\x4d\xed\xc8\x2f\xdb\xd4\xa0\x5c\xf0\x9c\x8e\x84\xff\x00\x5a\ +\x92\x00\xda\x54\x9c\x10\x09\xca\x49\xec\x69\xca\xf3\xa6\x6e\x57\ +\x3d\x1d\xa8\xac\x8c\xd8\x74\xa5\x8e\x5c\xf8\x2a\x8a\xd3\x96\xe2\ +\xad\x8b\x24\x28\x12\xe1\xf0\x92\x42\x73\xb4\x81\x85\x63\x9e\x4f\ +\x73\x65\x30\xeb\x66\xd0\x4b\x4a\x07\x1c\x1c\x73\x83\xfe\x8d\x44\ +\xb4\x1e\xa3\x8d\xaa\x74\x6c\x0d\x48\xcc\x75\x45\x66\x62\x54\xb4\ +\xa1\xd5\x02\x53\x85\x94\xe0\x9f\xc2\xb1\x2b\x4a\x4d\xb3\x6c\xa9\ +\xc2\x09\x45\x73\x5e\xbf\x91\xa9\x1a\x4a\xe2\x35\x8e\x96\xbc\xaa\ +\x44\x6f\x02\xd3\x6b\x7a\x1b\xe9\xde\xad\xea\x5a\xc3\x60\x14\x0d\ +\xb8\x29\xf2\x1e\xe4\x7a\x71\x58\xf4\xc7\x4f\xdd\xf4\x8e\x89\x66\ +\xc3\x76\x30\x5d\x66\xda\x85\x06\x24\x45\x71\x6b\x53\xa8\x2b\x52\ +\x89\x52\x0a\x06\xd3\x82\x38\x05\x59\xe6\xa6\xe9\x04\x27\x3d\xa9\ +\x93\x42\xea\x38\xda\xaf\x49\xc7\xd4\x0c\x30\xe4\x56\x5e\x53\xc9\ +\xd8\xea\x81\x29\xf0\xdc\x5b\x64\x93\xdb\x19\x41\x3f\x8d\x32\xf6\ +\x77\x2b\xc3\x8d\xfb\xff\x00\xa2\xbc\xb5\xe9\xb9\xba\xc6\x1e\xbd\ +\x10\x56\x62\x7d\xb6\xf7\x0e\x5d\xb6\x44\xa6\x56\x86\x9e\x54\x74\ +\x34\x79\x04\x05\x14\x12\x92\x9c\x81\xf2\x33\x8a\x9a\xdb\x34\xe6\ +\xab\x6b\x58\xdd\xb5\x74\xc1\x63\x32\xa7\x5b\x19\x86\xdc\x24\xbe\ +\xea\x9a\x6c\xb6\xb2\x4e\xe7\x0b\x60\xa8\x10\xa5\x1c\xed\x18\xe0\ +\x63\xd6\x9d\xf5\x1d\xda\xdb\x60\xb6\x2a\xe7\x71\x96\x98\xd1\xc2\ +\x90\xd8\x51\xe7\x2a\x5a\x82\x52\x00\xf5\xc9\x50\xfe\x75\xb5\x99\ +\xaf\x3a\x93\xb1\xe4\xad\x27\x21\x25\x2a\xc8\x35\x4e\x0e\x77\x74\ +\xc9\x8b\x8d\x3d\x1e\xff\x00\xdf\xdd\x95\xb5\xcb\xa7\x57\x27\x74\ +\xee\xaf\xb6\x47\x55\xa2\xd0\xe5\xfe\x4c\x49\x11\xed\xf1\x16\xb5\ +\xc3\x88\xb6\x16\x85\x93\xbb\x62\x4e\x5c\x28\xf3\x10\x81\xd8\x71\ +\x57\x1d\xa5\x73\x5d\xb7\x34\xbb\x9b\x11\x98\x96\xa0\x7c\x46\xe3\ +\xbc\x5d\x6d\x3c\x9c\x00\xa5\x25\x24\xf1\x8f\xdd\x14\xc4\x41\x27\ +\x27\x93\xeb\x4f\xd6\xc5\x97\x23\x8f\x5c\x54\x56\xa4\xa1\x14\xd1\ +\x7c\x33\x59\x9f\xaf\x5b\x89\xa5\x24\xb5\x21\x24\x7a\xf6\xa7\x78\ +\xe7\x2c\xa7\xd6\x91\xcd\x6b\xc4\x6f\x3d\x88\xf5\xa5\x51\x01\x0c\ +\xa7\xe9\x49\xa9\x2c\xd1\x46\xba\x6b\x2c\xd8\xd3\xa9\xe4\xa2\x34\ +\x52\xb7\x15\x84\x81\xde\xab\x1d\x4f\x7b\x86\xa8\x25\x40\xad\xb0\ +\xe0\xf2\xf8\xa8\x28\xdd\xff\x00\x6b\x15\x64\x6a\x14\x78\xaf\xa1\ +\x2b\xfb\x83\x9a\xab\xba\xb3\xe1\xae\xd8\xea\x40\x68\xa8\x24\xed\ +\x0b\x4e\xe0\x48\xf4\xc5\x6c\xa5\x25\x4e\x95\xd9\x86\xbe\xb5\x19\ +\xcd\xda\xb6\xfb\x1a\xdd\xd5\xcb\x15\xd6\x42\x81\x87\x1e\x42\x1a\ +\x90\x73\x82\xde\xf2\x41\x27\xe0\x12\x93\xf4\xae\xae\xb1\xdb\x90\ +\x9b\x8a\x9c\x86\xe3\x8c\xa1\xd6\xf3\x2d\xb4\xab\xca\xb2\x7b\x1c\ +\x7b\x90\x2b\xe7\xf6\xb6\xb9\x3f\x32\xec\xfc\x2b\x82\xd4\x70\xa2\ +\x83\xea\xa4\x1c\xf0\x01\xf5\x1f\x35\xd4\x5f\xa2\x97\x58\x2d\xb7\ +\xc8\x0d\xe9\x1d\x45\x31\x98\xb7\xe8\xa9\x4b\x71\xd4\xf3\x9b\x44\ +\xd6\xd2\x36\x8c\x13\xdd\x60\x0e\xdd\xcf\xcf\x35\xe7\xab\x6b\x3c\ +\xdc\x8f\x57\x83\x83\x86\x1d\x53\x4f\x5f\x5e\xbf\xa2\xde\xeb\x2e\ +\x97\x7b\x57\x68\xa7\xed\x4c\x1c\x2d\x01\x4a\x6d\x0d\xaf\x6a\x95\ +\x84\xe4\x00\x4f\x03\x90\x9e\x6b\x92\x93\x19\xbb\x73\xef\x5b\xe4\ +\xb4\x4b\x81\x28\x54\x84\x2f\xca\x5a\x52\x07\x27\x38\xe7\x68\xc9\ +\xf9\x27\xd6\xbb\x88\xa3\xc5\x5e\xe2\x46\x48\xda\x77\x77\xae\x48\ +\xeb\x35\x85\x7a\x63\x5f\xcf\x43\xa9\x57\x85\x31\x2a\x53\x4a\x24\ +\xa8\x39\x9c\x73\xcf\xb9\xdc\x08\xf4\xe7\xe2\xb9\xd8\x98\x38\xbc\ +\xcb\x99\xd3\xe8\xea\x97\x83\xa2\xde\xda\xaf\xa9\x24\xd0\xf2\x57\ +\xf6\x19\x31\x5d\x59\x40\x12\xfc\x45\x21\x44\xe4\x6e\x27\xca\xaf\ +\x9c\x72\x40\xc7\x35\x65\xe9\xd2\x0b\x45\x09\x75\xc5\xa3\x76\x7d\ +\x89\x1f\xe5\x55\x26\x88\x9c\xa9\x53\xdc\x5e\xc6\xc2\x6e\x4d\x26\ +\x42\x80\x56\xe5\xf8\xa0\x04\x3b\xdf\xfb\xd9\xe2\xad\x9b\x11\x2d\ +\x24\x2d\x40\x05\x27\x29\x20\x7f\x64\xfb\xfb\xd6\x5a\x6b\xac\x18\ +\x84\x49\xe3\x24\x36\x85\x25\x38\xca\x8e\x4e\x07\x39\xcd\x28\x8c\ +\x0a\xdb\x4a\x82\x46\x3b\x8f\xce\x91\xc5\xe4\x11\xb9\x58\x4e\x55\ +\xbb\x07\x38\x22\x9c\x60\x92\x12\x12\xb4\x8e\x3d\xfb\x1c\xd6\xb4\ +\x60\xbd\x85\xab\x05\xa6\x14\xb3\xf7\x12\x33\x4c\xec\xba\x23\x95\ +\xcd\x77\xcf\x25\xc2\x43\x69\xfe\xc0\xc7\x6f\x83\xf3\x4f\xb2\xd1\ +\xba\x1a\x53\xc9\x0a\x50\xdc\x3d\xc5\x31\xbe\x94\xf8\x86\x43\xdb\ +\x90\x9c\x04\xa9\x27\xdf\xd0\x7d\x39\xef\x53\x2d\xef\xd8\x10\x77\ +\x42\x37\x5c\x7e\x79\x4b\x89\x3b\x02\xd3\xc7\xb9\x1e\xf5\x93\x36\ +\xf4\x85\x79\x80\xd8\x57\xc9\x2a\xf5\x1d\xbe\xbc\xd4\x57\x5d\xf5\ +\x33\x4f\x69\x47\x4b\x32\x64\xa5\x52\xd6\x8f\x2a\x00\xe7\x1c\xfa\ +\x0f\x4a\x68\xd2\x57\x4d\x5f\xad\xae\xf3\x6d\x50\xa3\xaa\xd0\x98\ +\xad\x36\xf2\x95\x35\xa5\x00\x42\xf3\xb4\xa1\x39\x1e\xd4\x3a\xb0\ +\x86\xb2\x7a\xf9\x9d\x28\x60\x2b\x3a\x5c\x59\x75\x61\xda\xcb\x2d\ +\x86\xa0\x21\xc2\xd1\x90\xd2\x55\x8c\x95\x77\xcf\x34\xa9\x95\xc1\ +\x53\xa1\x96\xe5\x0e\x33\xc6\x7b\xfe\x35\x03\xb2\x74\xc3\x5c\xc9\ +\xba\xca\x1a\x83\x5a\x2e\x2a\x07\xf5\x62\x13\x0d\xe1\xc4\x9f\x5e\ +\x47\x1f\x4e\x69\xce\xd1\xd2\xbd\x47\xfa\xee\x6b\x12\x75\xb3\x8b\ +\x86\xd8\x49\x8e\x44\x54\x95\x9c\xe7\x3b\xfb\x0e\x38\xed\x5a\x21\ +\x59\x3d\x14\x5f\xaf\x88\xba\x94\xb0\x91\xbd\xeb\xa7\x65\xd8\xfe\ +\xc4\x95\xa6\x7c\x55\x9f\x09\xe6\xd6\x1b\x00\x10\x97\x33\xc6\x73\ +\x9a\x45\x71\x88\xda\x9d\x54\x97\xd7\x1d\x21\x03\x81\xb8\xa4\x1f\ +\xfc\xe9\x9e\x67\x4c\x75\x5f\xeb\x76\x58\x8d\xa8\x60\x3b\x15\x6d\ +\xab\xc5\x71\xd8\xca\x4b\x89\xc7\x60\x36\xab\x9c\xd6\xa9\x9d\x20\ +\xbf\xa6\x4c\x7f\xb3\x6a\xb4\x96\x94\xb2\x97\x52\x5a\x51\x50\x49\ +\x07\xee\xe4\x91\xdf\xde\x87\x34\xd7\xba\xfe\x5f\x92\xb1\xf6\x44\ +\xee\xeb\x2f\x93\x17\x07\x6d\xe1\x94\x25\xb7\x9b\x2d\x9e\x30\x55\ +\xc2\xb8\xf7\xf7\xf9\xa6\xf7\xed\x8c\x78\x61\xe8\xea\x0a\x03\x27\ +\x28\x19\x1c\xf7\xff\x00\x3c\xd3\x64\xfe\x9a\xeb\xe7\x6f\x2f\xc7\ +\x81\xa9\x5a\x54\x36\x9a\x07\xc6\x75\x94\xf2\xb2\x78\x4e\xd0\x3b\ +\x62\xaa\x88\x7d\x40\xbc\x58\xef\x8e\x5a\xaf\xa9\x11\xa5\xb6\xe1\ +\x48\x09\x27\x6a\xfb\xe3\x8f\x91\x59\xe5\x56\x12\x79\x6c\xd3\xef\ +\x47\x46\x86\x06\x38\x84\xde\x1e\xa2\x93\xec\xf1\xf1\xb1\x77\xd8\ +\xe5\xba\xdb\xe9\x43\x99\xc0\x59\x0a\xf6\xed\x53\x0b\x73\x9e\x2b\ +\x67\x1d\xfd\x88\xee\x2a\x07\xa4\x5d\x5d\xee\x3a\x1e\x4a\x02\x14\ +\x51\xe2\x2d\x03\xb6\x3d\xbf\x1a\x96\xe9\x54\x38\xea\xc9\x42\x89\ +\xf0\xcf\x23\x18\xdc\x08\xff\x00\x0a\xa4\x1b\x5a\x33\x97\x88\x86\ +\x59\x34\xf7\x42\xa9\x6a\x48\x56\xd5\x70\x73\x9c\x0a\x85\xea\xb9\ +\xa0\x45\x74\xab\x01\x09\x49\x25\x47\xd3\x15\x2f\xbc\x2d\xa4\x29\ +\xd2\xb4\xe0\xa4\x77\x57\x63\x9a\xac\x7a\x93\x34\x43\xd3\x13\x9d\ +\x5a\xc2\x56\x52\x4b\x64\x9f\x55\x70\x08\xf4\x3c\x9a\x4e\x22\x4e\ +\xd6\x2b\x45\x5e\x48\xab\xba\x6c\xfc\x4b\x9d\xfd\x53\xfc\x35\x96\ +\xa2\x25\xdb\xa3\x8f\xa9\x39\x49\x58\xdd\x8f\x4e\x78\xc8\xfc\x2b\ +\x9b\x2d\xab\x4b\x97\xf5\xaf\x79\xfd\xa3\x8a\x70\x1e\xdd\xce\x45\ +\x5c\x1a\xab\x57\xc2\xb6\x69\x39\xda\x77\x4a\x2f\xed\x17\xcb\x8c\ +\x77\xff\x00\x59\xba\xda\xbc\x36\x58\x64\x27\x7b\xbb\x72\x7e\xf9\ +\x48\xc6\xd1\xdb\xd3\x92\x2a\x97\x69\x6f\xb7\xe1\xc9\x79\x95\xe1\ +\x01\x28\x0a\x50\xc2\x7b\x70\x3f\x2e\x6b\x6e\x06\x8b\x50\x93\xed\ +\x27\xa4\x2b\xc5\xd5\x82\xff\x00\x5d\xce\xab\xd1\x3a\xa3\xec\xf6\ +\x98\x2f\x3a\xb0\x15\x25\xa4\xed\xc1\xfb\xd8\x1c\x91\x52\xc9\xfa\ +\xb5\x94\x4e\xb2\x41\x65\x64\xc8\x9d\x28\x20\x25\x3d\xc3\x69\xe5\ +\x4b\x23\xdb\xd2\xb9\x3e\xcd\xad\x1e\xb7\x5b\x7c\x36\xd2\x65\xcd\ +\x07\x6a\x1c\x5e\x4a\x50\x8c\xf0\x94\x8f\x41\x9c\xf1\xc7\x3e\xf5\ +\x62\xf4\x9e\xe1\x24\xdc\x57\x74\x92\x97\x6e\x37\xd9\x3e\x44\x04\ +\x72\x23\xb6\x0f\x61\xe8\x9f\xc6\xb7\x55\xc5\x55\xa5\x45\x41\x7a\ +\xfc\x1e\x62\x78\x05\x79\x54\xde\x28\xeb\xeb\x54\xe5\x3e\x86\xd8\ +\x4a\xce\x4e\x33\xcf\x02\xa6\x76\xf4\x06\x9a\x4e\x72\x4e\x39\x26\ +\xaa\xbe\x9d\x6f\x0e\x0f\x1d\xd4\xad\xce\xe7\x6f\x61\xf4\xab\x3e\ +\x2b\xa9\xc6\x49\xf4\x1d\xf9\xae\xec\x33\x4a\x8c\x6e\x72\xe9\x68\ +\xf5\x16\x49\x92\x96\x5a\x0a\x3c\x9a\x29\x39\x47\xda\x9c\x39\x00\ +\xa5\x23\x91\xef\x45\x11\x8d\x34\xba\xc3\xdc\xaa\x37\x78\x95\x3d\ +\xa1\xc5\x39\x68\x82\x33\x84\xa0\x2f\x1f\xfe\xe2\xa9\x44\x8d\xbe\ +\x63\xb7\x1c\x7d\x4f\xfa\xef\x49\x74\xf0\x26\xcf\x18\x0e\xf8\x73\ +\xd3\xfe\x31\x54\xaa\x50\xdc\x84\x8c\xe4\x9f\xe3\x5a\xa1\xee\xa3\ +\x0a\xd8\x90\x69\x48\xa1\xb8\xc5\xcd\x99\x2a\xef\x4e\xef\xb9\xe1\ +\x34\xa5\x9c\x80\x3b\x7c\xd6\xab\x33\x61\x10\x90\x12\x79\x29\xac\ +\x24\x61\xc9\x29\x63\x90\x3b\x9e\x3b\x55\x89\x39\xeb\x52\x3d\x6f\ +\x93\xa3\x75\x5d\xc6\xed\xe0\x0d\x46\x35\x1f\x84\x87\x16\x47\x8e\ +\x94\xf8\xe8\x4a\x5b\x49\xfb\xde\x1f\x81\x9c\x0e\xc4\x66\xa6\xb7\ +\x88\xf6\x59\xfa\x8b\xa8\xee\x6a\x94\xc7\x5b\xd0\x22\x34\x61\x2a\ +\x47\x78\xd1\xfc\x00\xa0\xb6\x89\xfb\xa4\xb9\x92\x54\x9e\x77\x00\ +\x3d\x05\x48\xf5\x2f\x4d\xdb\xd4\x17\x55\x29\xf9\xea\x79\xa5\x3c\ +\x97\x1c\x69\x31\x59\x42\xd6\x10\xa0\xa4\xb6\x5d\x08\xdc\x50\x14\ +\x91\xc6\x73\xc7\x7a\x95\x4b\xd2\xd1\x66\xb8\xd4\x9b\xdd\xaa\x0c\ +\xa7\x18\xe5\xa7\x1e\x8e\x95\xa9\xbf\xf9\x24\x8e\x3b\xfa\x56\x7c\ +\xba\xea\x51\x52\x93\xd6\xc5\x6f\xa1\x61\xb3\x73\xea\x56\x86\x95\ +\xa9\x61\x44\x7e\x63\xba\x4d\x4e\xc9\x54\x96\x92\x54\xb7\x53\xe1\ +\x61\x4a\xc8\xe5\x63\x93\xf1\xcd\x48\xfa\xcf\x74\x87\x2a\xf5\x66\ +\xb3\xb9\x68\xb7\xdc\x9f\xb8\x4a\x52\x23\xfd\xbf\x1f\x67\x65\x48\ +\x6d\x4a\x2b\x3c\x1f\x36\x32\x12\x07\x24\x9e\xe2\xa4\x37\xb4\xda\ +\x27\xa1\x86\xe4\x5a\x60\x4c\x72\x32\x8a\xd9\x72\x44\x74\x38\x5a\ +\x51\xee\x50\x54\x0e\xd3\xf2\x29\x04\xfb\x6c\x0b\xa4\x6f\x06\xe9\ +\x06\x2c\xd6\x77\x6e\xf0\xe4\x34\x97\x13\xb8\x76\x38\x50\x23\x35\ +\x31\xa4\xd4\x9c\x86\x37\x68\x64\x44\x2f\xa1\xd2\x25\x33\xa7\x2e\ +\xec\xb4\xeb\x4a\x8f\x1a\xf9\x31\x96\x10\xca\x8f\x82\x86\xc2\xf2\ +\x12\xdf\xf7\x39\xe3\xe0\xd4\x66\xe7\x19\xcb\x8c\x2b\xb7\x4e\xa2\ +\xa9\xc4\x3d\x6d\xb8\xcf\xbc\x32\x1b\x27\x29\x6f\xc1\x0e\xc7\xfc\ +\x3c\x69\x23\x8f\x5f\x0f\xeb\x57\x0c\x68\x71\x62\x21\x48\x8b\x19\ +\x98\xe9\x70\x82\xb4\xb6\xd8\x48\x2a\xc0\x19\x38\xf8\x00\x67\xe0\ +\x52\xad\x3b\x6a\xb7\xa6\x74\x8b\x92\x61\xc7\x13\x1d\x40\x6d\xc9\ +\x01\xa4\xf8\x8a\x48\xec\x92\xae\xe4\x0f\x6a\xb4\xa9\xf5\x52\x65\ +\x14\x2f\x64\x51\xfa\xda\xe4\x8d\x5b\xa0\x75\x76\xae\x6c\xe6\x3c\ +\xe3\x6b\x84\xc1\x07\x90\x84\x38\xca\xd6\x07\xb7\xed\x5e\x70\x7d\ +\x51\x4b\xb5\x94\x25\x69\xed\x51\xaa\xa2\xe9\x88\xe8\x80\x4e\x8c\ +\x12\x7c\x28\xa8\xd8\x0b\x89\x79\x68\xf1\x00\x1f\xbc\x10\x3b\xf7\ +\xe2\xad\x56\x74\xed\x8d\x98\x8e\x5a\x51\x68\x80\x9b\x76\xed\xc6\ +\x20\x8c\x8f\x07\x21\x41\x40\xec\xc6\xdc\xee\x00\xf6\xef\xcd\x2f\ +\x4c\x18\x5f\xac\x0d\xc0\xc4\x8f\xf6\xc2\xc8\x64\xbf\xe1\x8f\x10\ +\xb6\x0e\x42\x37\x63\x3b\x72\x49\xc6\x71\x93\x51\xc2\x2a\xe1\x72\ +\x17\xa4\x9a\xb2\xc2\xd7\x7a\x05\x8d\x26\x88\xcc\xa6\x6d\xb2\x51\ +\xb8\x88\xa7\x1f\x68\x8e\x1a\x4a\x9b\x71\xdc\x7d\xe5\x78\xa4\x61\ +\x4a\xe4\x95\x2a\xa1\x1a\x11\xb9\x73\x6c\x9d\x32\xb4\xbb\x0e\xd9\ +\x36\x03\xb6\xd9\xeb\x6a\x3d\xcd\x65\x31\xde\x90\x1d\xc7\x20\x25\ +\x5b\x96\x94\x12\x52\x08\xf5\x26\xae\xcb\x45\xaa\xd9\x68\x92\xec\ +\xab\x55\xb2\x14\x27\x9e\x20\xba\xa8\xec\x25\xb2\xe1\xfe\xf1\x03\ +\x9f\xc6\x97\xc7\xb3\x69\xfb\x85\xa9\xbb\x13\xd6\x0b\x59\xb7\xb5\ +\xfd\x54\x43\x11\x05\x94\x77\xec\x8c\x6d\x1d\xcf\x61\xea\x69\x33\ +\xa2\xe2\xdc\xb9\x0e\x8c\x73\x59\x7a\xe5\xf6\x1b\xfa\x63\x6a\x9d\ +\x60\xd0\xf1\x2d\x17\x29\x91\xa5\xb9\x1c\xba\x96\xdc\x8e\xe2\x96\ +\x80\xd1\x71\x45\x08\x0a\x57\x27\x68\x21\x3f\xf5\x6a\xa0\xd0\x4d\ +\xb5\x22\xc3\xd3\x28\x17\x64\xa1\xdb\x1c\xbb\x8d\xdb\xc7\x65\xee\ +\x59\x75\xf4\xba\xe9\x61\x2b\x1d\x8f\x3b\xc8\x07\x82\x40\xae\x88\ +\x8b\xa7\xa3\x43\x88\x86\x22\x34\xd4\x76\x1b\xe1\xb6\x9a\x40\x4a\ +\x12\x3e\x00\xe0\x73\x49\x17\xa7\xec\x66\xc6\x6c\xa6\xcd\x6e\xfd\ +\x5c\x92\x4f\xd9\x3e\xcc\x8f\x07\x24\x95\x13\xb3\x1b\x79\x24\x93\ +\xc7\x72\x4d\x2f\x34\x5f\xba\xc7\xcb\x0f\x2d\x2f\xa5\xbf\x05\x0b\ +\xa9\x63\x43\x3a\x37\x56\xc4\x61\x98\xee\xd8\x60\xeb\x08\x88\xb7\ +\x82\x90\xa6\xd8\xca\xd9\xf1\x90\xde\x78\x4a\x02\x94\xa1\x81\xc0\ +\xc9\x15\x7a\xa6\x14\x48\x28\x6d\x88\x2c\x31\x1a\x3a\x01\x4a\x1a\ +\x65\x01\x28\x4f\x3c\x80\x07\x03\x9a\xdb\x1e\xd1\x69\x55\x98\xd9\ +\xd5\x6c\x82\x6d\xc5\x3b\x0c\x42\xc2\x3c\x12\x33\x9c\x6c\xc6\xdc\ +\x67\xe2\xb2\x72\x0c\x48\x10\x99\x89\x06\x2b\x11\x23\x34\x36\xb6\ +\xd3\x2d\x84\x21\x03\xd8\x24\x70\x2a\xd4\xfa\xb3\x21\x52\xb2\xb9\ +\x8e\xd4\x91\x4e\x56\x73\x84\x28\x7a\x53\x7a\x53\xe5\x19\xa7\x1b\ +\x42\x78\x55\x4d\x67\xd4\x63\xa8\xae\xba\x15\xca\x21\x2d\x13\xfc\ +\x6b\x7c\x70\x7c\x04\xe7\xeb\x9a\x4d\x30\xf9\x42\x7d\xcd\x2b\x4a\ +\x7f\x60\x12\x38\xe2\xb1\x4b\xdd\x46\xd8\xfb\xcc\x88\xeb\x46\xae\ +\xd3\x11\xe1\x5a\xe4\x47\x87\xce\x16\xfb\xa8\x2b\xda\x3f\xba\x3d\ +\xfe\xb5\x51\xf5\x36\xd8\xf7\xea\x77\x23\xae\x4c\xa9\xea\xda\x77\ +\x2b\x21\x0a\x5f\xc0\x20\x60\x55\xed\x75\x64\xae\x31\x6d\x23\x19\ +\xe4\x9a\x84\x6a\x6b\x62\x1c\x86\xa1\xb3\x3c\x56\xc8\xae\x25\x2c\ +\xa8\xc3\x56\x0f\x3d\xcf\x9f\x7d\x44\xb4\x48\x62\xe0\xf3\xe6\xd9\ +\x2e\x3a\x4a\xb1\x87\xdd\x4b\x8a\x19\xf9\x00\x1f\x4a\x85\x38\x95\ +\x15\x01\xe7\x42\xc7\x21\x47\x23\x9f\xf5\xeb\x5d\x45\xd6\x2b\x3b\ +\xa9\x87\x39\x29\x04\xe5\x95\x29\x3c\x76\x29\x1b\x87\xf2\xae\x5f\ +\x59\x90\xb7\x08\x5b\x8b\x21\x4a\xc0\xca\xb8\x15\xcc\x95\x19\x52\ +\x76\x91\xd6\xa7\x5d\x56\x85\xd2\xd5\x16\x2e\x87\xeb\xc7\x54\xb4\ +\x7a\x5a\x8f\x13\x50\xb9\x70\x88\xd8\xc2\x63\x5c\xd0\x24\x20\x0f\ +\x60\xa5\x79\xc0\xf8\x0a\x15\x2d\xbf\x75\xe9\x7d\x44\x81\x1e\xd1\ +\xa9\xf4\xfb\x11\x2e\x09\x75\x02\x34\xd8\x6e\xa8\x21\x27\x70\xdd\ +\xb9\x0a\xc9\xec\x38\xc1\xaa\x42\x42\x1a\xd8\x95\x36\xa4\x9e\x3b\ +\x81\xdc\xe3\xd6\x93\xef\x53\x4b\x0a\x6d\x5e\x1a\xb7\x02\x0f\xaa\ +\x48\xe4\x7f\x1a\x44\xf0\xf4\xea\x2d\xac\x69\x86\x2a\xa5\x29\xa7\ +\x7b\xfa\xed\x3a\x67\xa6\x45\x2f\x6a\x47\xd8\x43\xe8\x41\x8d\xbc\ +\x84\xf0\x0b\x4e\x28\x85\x67\x8e\x30\xa3\x93\xb7\xd3\x15\x7f\x59\ +\x10\x50\xd8\x04\x27\x05\x1b\xbb\xf2\xa5\x1a\xe5\x2e\x83\xc8\x4c\ +\xfb\xf1\xb8\xc8\x79\x6d\x36\xb4\x12\xf3\x69\xe4\x15\x8e\x0a\x86\ +\x7d\x87\x38\xf8\xae\xa5\xd3\x24\x22\x33\x7e\x33\xbb\xbc\x4f\x38\ +\xcf\xb6\x3f\xca\xb8\xb2\x86\x4a\xb9\x4e\xd5\x49\xf1\x20\xa4\xb6\ +\x25\x50\x0a\xca\x96\x16\x52\xb5\x63\x00\x03\xda\x97\x46\x52\x10\ +\xb1\xfb\x5d\xe1\x7c\xe0\xfc\x7b\x53\x5c\x22\xd2\xdd\x29\x28\x29\ +\x46\xd0\x06\x13\x80\x41\xe7\x03\xf9\xd2\x97\x4a\x9b\x53\x7e\x1b\ +\x5b\x92\xa3\xb4\x2f\x3c\x53\x91\x85\xad\x49\x2b\x23\xc4\x8c\x53\ +\xc8\x23\x04\x53\x25\xf9\x97\x14\xd1\x4b\x27\x6a\xd2\xad\xe8\x1e\ +\x83\xde\x97\xdb\x24\x00\xda\x71\xb4\x92\x39\xc1\xfb\xd5\xb6\x72\ +\x42\xd4\xac\xa7\xb6\x3e\xa6\x99\x6b\xab\x95\x83\x71\x91\x46\x4e\ +\xe9\xb5\x82\xdd\xaf\xef\x9a\xbb\x53\xb5\x3a\xe9\x0e\xe7\x19\x5e\ +\x24\x65\xb4\x1c\x4b\x3c\x64\x84\x6d\xe5\x3f\x74\x04\xe3\xb6\x69\ +\xce\x77\xe9\x2d\xd3\xb8\x71\xac\x1f\xab\x2d\xb7\x6b\x95\xd5\x6c\ +\x84\xcd\x86\xcc\x52\x87\xa0\x36\x13\x85\x21\xd2\xb0\x01\x21\x40\ +\x70\x32\x3b\x9c\xf2\x33\x69\x49\x6d\x0e\xb4\xa6\xdc\x47\x88\x95\ +\x27\x18\x20\x62\xab\xed\x53\xd3\xf6\x1d\x92\x6e\x16\xc0\x84\xaf\ +\xb1\x49\x47\x21\x3e\xa9\x04\x73\x8f\x8a\x74\x54\x5d\xf9\x5c\xdf\ +\x4e\x34\x71\x35\x23\xc7\x93\x49\x7c\xbf\x17\x2b\xab\x87\x5e\x3a\ +\xd4\xbb\xbc\xfb\xed\x93\x42\xda\xcd\x8e\x42\x52\xd4\x18\x92\x9b\ +\x5b\x8e\xb5\x8c\xe1\x64\xa0\xa4\x92\xac\xf2\x31\x8e\x06\x3b\x12\ +\x61\x8c\x7e\x92\xdd\x75\xd2\xb2\xa7\x4e\xbf\xd9\x2d\xf3\x1a\x98\ +\x50\x19\x44\xcb\x72\xda\x6e\x36\xdc\xf9\x5b\xd8\x52\x48\x39\xe7\ +\x71\x51\xe0\x73\xef\x74\x5b\x6c\x17\x96\x96\xd2\x90\xeb\xe8\x2a\ +\x07\x87\x8e\x43\x7c\xe0\x10\x78\xc5\x2e\x9f\x66\xbb\x86\xca\x27\ +\xc0\xb7\xdd\x5b\x20\x28\x87\xd9\x2a\x42\xbb\xfa\x03\xc6\x31\x4f\ +\x8d\x24\xb5\x5e\xbc\xcd\x18\x8c\x0e\x0d\xbc\xb0\xd1\xf8\xaf\xaa\ +\xfa\x94\x13\x1f\xa5\x47\x5a\x2e\x17\xf6\x6f\x31\x2d\x16\x43\x16\ +\x33\x2b\x4a\xa1\x22\x0b\x85\x85\xa5\x58\xf3\xac\xef\xdf\x91\x8e\ +\x08\x50\x1c\x9e\x0e\x6b\x46\xbd\xfd\x21\xfa\xb9\xaf\xf4\xd3\xba\ +\x61\x16\x9b\x55\xac\xc9\x79\xa5\xfd\xa2\xd8\x97\xdb\x92\x14\x85\ +\x85\xa4\x21\x45\xc3\xb7\xcc\x91\xc8\x19\xab\xd9\x36\x7b\x92\x98\ +\x71\xa8\xac\xc1\xb4\x43\x3c\x2d\xa8\x51\x40\x04\x1f\x7d\xd9\xa6\ +\xf7\xf4\xc4\x25\x02\x5b\x33\x14\xe2\x70\x12\x1b\x09\x4e\x4f\xb8\ +\x20\x70\x6a\x5c\x5d\xbd\x7d\xcb\x51\xe8\xbc\x25\xba\xed\xdf\xb9\ +\xaf\xb6\x9f\x32\xb4\xd1\x9f\xa5\x06\xba\xd3\xd3\x05\x83\x5a\xdb\ +\x5f\xb9\xcc\x5b\x69\x6d\xd5\xb4\xca\x03\xe1\x40\x79\x54\x02\x78\ +\x59\x23\x04\xf6\xe6\xa5\xd3\xe0\x5a\xfa\x99\x7a\x87\x76\x4d\x96\ +\x7c\x6c\x38\x95\x7e\xdd\x92\xca\xca\x10\x90\x84\xa5\x5e\xc5\x58\ +\x2a\xf8\xc8\xa9\x1e\x95\xd1\xad\xb7\x72\x33\x1f\x84\xd2\x16\x95\ +\x79\x5f\x71\x01\x4f\x2d\x3f\xd9\x2a\x3e\x61\xef\xed\x53\xf8\xad\ +\xa1\x0d\x25\x96\x5b\x28\x1d\xb7\x7a\x8c\x7a\xd6\x4c\xb0\x84\xae\ +\xbe\xeb\xe1\xd9\xfc\x04\xb8\x78\x4a\xad\xd3\x77\x7c\x9a\xd3\xe7\ +\x6d\xdf\xcb\x53\x56\x9c\xb4\xa6\xd0\x5c\x43\x28\xfb\x36\xe6\xc3\ +\x6d\xa0\x2b\x77\x03\xb7\x3e\xf5\x2a\xb3\x30\xdc\x56\xde\x53\x79\ +\x4a\x49\xce\x7e\x69\x14\x64\xee\x71\x03\x68\x0e\x01\x8e\x7b\x1f\ +\x6a\x5f\x3d\xd4\xb5\x04\x10\xa1\x85\x63\x27\x3e\x94\xb7\x6b\xdc\ +\xe5\xd6\xa9\x29\xbd\x77\x64\x67\x54\x3e\xa7\x0e\x12\x40\x2e\x2c\ +\x20\x7d\x3b\xf0\x6a\xa3\xeb\xec\xc8\xc8\xd2\xef\xc4\x53\x85\x0d\ +\x17\x1a\x42\x54\x9e\x4f\x0a\xdc\x4f\xc0\xc0\x3f\x95\x59\x12\x65\ +\xa5\xc9\x6e\x28\x20\x29\xb6\x12\xa2\x94\xf7\xc9\xf7\x1f\x87\xa5\ +\x50\x5f\xa4\xad\xd7\xc2\x8d\x11\x90\xea\x52\x14\xf9\x52\xd4\x39\ +\x07\x00\x0e\xdf\x88\x35\x86\x5d\x79\xa4\xb9\xb3\x4d\x15\x95\xdd\ +\xf2\x29\x3d\x51\x01\xb5\x6a\x2b\xbb\x61\x84\x15\xc9\x96\x0a\x48\ +\x40\x3e\x12\x42\xf2\xad\xbe\xd9\x38\xc7\xba\x6a\x51\x1a\xde\xe4\ +\xad\x04\x34\x9c\x87\x12\xa7\xe7\x4a\x52\xe1\xf8\x80\x00\xb9\x03\ +\x09\x46\xd5\xfa\x03\x94\xa7\x9e\xc4\x1c\xf0\x6a\x2e\xdc\xa6\xe4\ +\x33\x35\xf4\xa5\x68\x2e\xb9\x90\x47\x00\x1d\xaa\xc2\x7f\x3d\xbf\ +\x95\x48\x27\xdc\x1c\x77\xf5\x54\x64\x04\xb9\x1d\x69\x42\xdb\xf7\ +\x4a\x82\x48\x2a\x1f\x50\x8e\x7e\x41\xae\x83\x8d\x49\xa4\xbf\xd6\ +\xc2\xe6\xe9\x53\x4d\xda\xf7\x4f\xee\x57\x96\xc9\x42\xd5\x39\xf8\ +\xd7\x1b\x72\x64\x01\x96\x9d\x6d\x44\xa1\xc4\x28\x1f\xdd\x50\xec\ +\x41\xfa\x8f\x71\x56\x7d\x87\xa8\x71\xd9\x65\x98\xd1\x6e\x0b\x43\ +\x28\x40\x4e\xc7\xe1\xa5\x05\x27\xea\xd9\x19\xfa\xe2\xa3\xd7\x1d\ +\x2e\xbb\xea\x95\x24\x2c\xb5\x39\x5d\xd4\xae\xce\x9f\x93\xef\xf3\ +\xeb\xeb\x5a\x6c\x5a\x1a\xe6\x66\x04\xce\x2b\x8a\xd8\xfd\xe5\x23\ +\x3f\x85\x6d\xc5\xd2\xa7\x17\x9e\x5b\x9c\x9c\x3c\x95\x78\x70\xe5\ +\x6b\x17\xde\x84\xea\x4d\xbe\x1b\x6a\x91\x26\x78\x53\x68\x1c\x9d\ +\x87\xf8\x0e\x6a\xcc\xb3\xf5\x6a\xcb\x37\xc3\x69\x13\x52\xb7\x1c\ +\xc0\x65\x86\x92\x5c\x75\x7e\xde\x54\xe7\x68\xf9\x56\x2a\x91\xd1\ +\xdd\x3f\xd3\x72\x5c\x4c\x6b\x83\xd2\x66\x36\x4f\xdc\x6b\xf6\x40\ +\x9f\x92\x39\x35\xd0\x5a\x1f\x4e\x59\x2c\x50\x50\xcd\x92\xcf\x12\ +\x0a\x55\x8c\xa9\xb4\x0d\xea\xfa\xa8\xf2\x7f\x3a\xac\x31\x78\xa7\ +\x68\xd3\x8b\x39\x18\xaa\x58\x58\x36\xa1\x26\xc9\xf6\x97\x93\x2a\ +\x4c\x60\xf3\xad\x96\xc2\xb9\x09\x3d\xe8\xa7\x1b\x5b\x78\x8e\xca\ +\x07\x07\xf9\xd1\x5d\xbc\xce\xcb\x3e\xe2\xe9\xc1\xa8\x95\x8d\x91\ +\xb0\xd5\x92\x13\x84\x67\x21\xc3\xff\x00\xf7\x15\x5b\xa4\xa0\xee\ +\x40\xe0\x80\x72\x69\x7c\x08\xa5\x5a\x1e\xdb\x29\x00\x12\x9f\x13\ +\x38\x1f\xf1\x8a\xa6\xf7\x54\x56\x94\xac\x80\x30\x73\xc0\xad\xd4\ +\xdd\xe0\x8c\x0d\x58\x99\xdb\x49\x4c\x26\xc9\x27\x84\xf1\xc7\x15\ +\xaa\x18\xdd\x31\xc7\xb3\x9c\x71\xc8\xe4\x57\x96\x97\x02\xed\xc9\ +\x3b\x8e\x40\xe4\x66\x8b\x77\x09\x77\x18\x3e\x6c\x7c\xd5\x80\x8a\ +\x33\xd4\x9b\x85\xb2\xdf\xa8\x35\x08\xd3\x08\x95\x6b\xb1\x5d\xff\ +\x00\x56\xcb\x58\x9b\xb5\xe5\xa8\xb8\x94\x05\x34\x8d\x98\x57\xf5\ +\x8d\x93\xb9\x49\xee\x7d\xb3\x4f\x57\xde\xa2\x49\x82\xbd\x4b\x6d\ +\xd4\x76\x96\x20\x3f\x67\xb6\xa2\xe4\x55\x12\x59\x7d\x0e\xb4\xbd\ +\xc3\x6e\x4a\x11\x85\x85\x27\x6f\x6c\x1c\x83\xc5\x37\xbd\xd3\x8b\ +\xdc\xae\x9b\xeb\x2b\x23\x72\xad\xc9\x95\x7e\xd4\x29\xba\x45\x52\ +\x9c\x58\x42\x1a\x0e\xc7\x56\xd5\x9d\xb9\x0a\xc3\x2a\xe0\x02\x39\ +\x1c\xf7\xc2\x8d\x5d\xa1\xdf\xbe\x6a\x2d\x53\x3e\x64\xa6\x5b\xb7\ +\x5e\x6c\x4d\xdb\x1b\xd8\x49\x75\xb7\x12\xb5\xab\x79\x49\x18\xc0\ +\xdc\x08\xe7\x9c\x7a\x57\x36\xf2\x95\x4c\xdd\x86\x9f\xdd\x85\x3b\ +\x76\xaf\xbf\xe0\x8d\x5a\xb5\x35\xc0\xdf\xad\x96\x9b\xe5\x99\xb8\ +\x2b\xbb\x30\xb7\xa1\xa9\x99\x5e\x36\x0a\x00\x52\x9b\x73\x28\x4e\ +\x15\xb4\xe7\x23\x20\xf3\xcf\x19\xa6\xfb\x37\x51\x26\x49\xd1\xcc\ +\x6a\x69\x36\x16\xe3\xc7\x9a\xa6\x23\xc0\x6c\xcc\x1b\xe4\x48\x71\ +\x7b\x08\x27\x6e\x10\x80\xac\xf9\x8e\x4e\x01\x38\xf4\xa7\x96\x34\ +\x5e\xa5\x93\x7f\xb3\x5e\xaf\x92\x2d\x89\x4d\x9a\x3b\x88\x60\x44\ +\x52\xd4\x5f\x71\xc4\x04\x17\x14\x14\x91\xb0\x6d\x07\xca\x37\x7d\ +\xe3\xcd\x31\x40\xe9\xc5\xd9\x7d\x2b\xb4\x69\x79\x2e\xc1\x54\xfb\ +\x5b\xe8\x92\xda\xd4\x92\xe4\x75\xad\x0e\x15\x84\xa8\x10\x0a\x90\ +\x41\x20\xf1\xeb\xeb\xeb\xba\xf2\x7b\x18\xda\x91\x27\xd2\xba\x99\ +\x77\x69\xd7\x6b\x5c\xb8\xf1\xe3\xcf\xb6\x38\xda\x5d\x4c\x79\x1e\ +\x33\x4e\x21\xc4\xee\x42\xd2\xad\xa9\x3c\xf2\x30\x47\x04\x1e\xf4\ +\xcd\x17\x57\x3d\xa5\xee\x1d\x43\xb9\x4d\x82\xf3\xdf\xaa\x53\x6f\ +\x77\xc3\x4c\xd5\x2d\x0b\x69\xcd\xc9\x1b\x10\xa4\x80\xda\xb6\xf2\ +\x40\xc8\x27\xd7\xd6\xa5\xda\x27\x4d\xbd\x00\x48\x76\x65\x96\xc9\ +\x6c\x52\xca\x70\x8b\x6a\xb7\x05\x81\x9e\x54\x7c\x34\x76\xc9\xc7\ +\x1c\x64\xd4\x7f\x59\xe8\x0b\xcd\xe7\xfa\x7e\x88\x4f\xc0\x48\xd4\ +\x31\xa0\x35\x13\xc5\x5a\xc7\x86\x58\xce\xf2\xe6\x12\x70\x0e\x78\ +\xc6\x7e\x71\x54\xa8\xdb\x8e\x85\xad\x24\x93\x5e\xb4\x62\xa7\xf5\ +\x45\xe9\x8d\x51\x36\xc7\x70\xb2\x43\x89\x70\xfd\x54\x6e\x71\x76\ +\x4c\x53\xad\x94\x85\x6c\x28\x70\xf8\x69\x29\x50\x51\x1d\x81\x18\ +\x3c\x76\xa6\x1d\x25\xad\xef\x4d\xe8\x3d\x39\x36\xee\xcc\x19\x97\ +\x1b\xd3\x88\x66\x17\xfb\x41\x6c\x2c\x90\xa5\x2d\x6e\x9d\x98\x42\ +\x52\x13\xfb\xa1\x5e\x82\xa7\x57\x0d\x2b\x2e\xe1\xd4\x8f\xe9\x1a\ +\xde\x8e\x88\x46\xc0\xe5\xb0\xa3\x71\xf1\x43\xaa\x79\x2b\xdd\x8c\ +\x63\x6e\x01\xf5\xce\x7d\x3d\x6a\x14\xd7\x4b\xef\xc9\xd2\x5a\x7e\ +\xd5\x2c\xd9\x1f\x93\xa7\xa4\x05\xc6\x0b\x5a\xdd\x62\x5b\x78\x52\ +\x54\x97\x12\x50\x36\x12\x95\x0c\x63\x7e\x08\xa8\x53\x90\x4e\x13\ +\x4e\xe8\x5b\x23\xa9\x2e\x33\x64\x2f\xfe\xa6\x4b\xd7\x16\xef\x89\ +\xb2\xbb\x11\x99\x61\x49\x53\xaa\x4e\x50\xa4\x2c\x81\x94\xa8\x94\ +\x72\x40\xc6\x4f\xb5\x38\x7f\x4d\xae\xb0\xae\x2e\xc1\x6a\xcf\x6e\ +\x7a\xe9\x02\xd9\xfa\xc6\xe0\xd2\xee\x45\xb6\xd0\x32\xad\xad\x36\ +\xaf\x0c\xef\x59\xda\x4f\x21\x23\xdc\xf3\x49\xee\x5a\x1a\xeb\x72\ +\x85\x65\x8e\xd5\xba\xc3\x67\x5c\x4b\xec\x5b\x8b\xcd\x44\x52\xbc\ +\x35\x36\xd2\xb2\xac\x10\xda\x77\x2f\xd0\x65\x20\x76\xe4\x53\xad\ +\xe7\x42\x3a\xde\xb9\x5e\xa5\x85\x6b\xb0\xdd\xd1\x2e\x1a\x22\xc8\ +\x89\x76\x04\x04\x29\x0a\x25\x2e\x36\xa0\xda\xfd\x14\x41\x4e\x06\ +\x70\x39\x15\x15\x27\x24\xad\x72\xd0\x84\xef\x71\xda\x27\x53\x1c\ +\xbc\x5e\xad\x76\x7d\x39\x6e\x80\xeb\xf3\xec\xed\x5d\x9a\x55\xca\ +\xe0\x62\xa5\xd4\x38\x78\x69\xbd\xad\xac\xa9\x63\x07\x77\x18\x4f\ +\xcd\x37\x45\xbd\xeb\x29\x9d\x53\xd6\x76\x38\xed\xda\xdc\x85\x6d\ +\x8d\x10\x47\x6d\xd9\x2b\x6f\x69\x71\xb7\x94\x95\x6e\x4b\x64\xe5\ +\x44\x24\x2b\xfb\x21\x3c\x66\xb7\x75\x07\x45\x5d\x75\x55\x89\x8b\ +\x03\x16\xad\x37\x09\x94\x36\xd1\x8b\x3d\x2e\xb8\x97\xad\xce\x0d\ +\xa5\x4a\x61\x09\x6c\x76\xc7\x1e\x74\x7a\x67\xda\x9d\x23\xe9\x9b\ +\xd5\xa7\xa9\xb7\xad\x42\xc3\x90\x65\x5b\x6f\x4c\x44\x43\xc5\xd7\ +\x94\x89\x0c\xae\x3a\x16\x9e\x12\x10\x52\xb0\xad\xd9\xfb\xc9\xc7\ +\xb1\xac\x11\xd2\x46\xf9\x71\x25\xbf\x27\xf4\x7f\x82\x13\xa0\xf5\ +\xcc\xb6\xf4\x9e\x84\x89\x6f\xb4\xbb\x36\x4e\xa1\x6e\x4a\x19\x13\ +\x6e\x2a\x51\x6c\xb4\x4a\x89\x71\xd2\x92\x54\x36\x85\x1c\xed\xcf\ +\x00\x01\x4e\x8b\xea\x43\xcf\x59\x4a\x5c\xb2\xb6\x2f\x89\xd4\x0a\ +\xb0\x08\x68\x94\x4b\x2a\x90\x90\x14\x56\x1c\xd9\x90\xde\xcf\x36\ +\x76\x64\x76\xc6\x69\x26\x8a\xe9\xd5\xea\xcc\x9e\x9d\xb7\x2a\x55\ +\xb9\x6a\xd3\x3f\x6d\xfb\x6f\x86\xe2\xc8\x73\xc6\x6d\x69\x4f\x87\ +\x94\x8c\xe0\xa8\x67\x3b\x7f\x1a\x43\xa8\x74\x7c\xcb\x3c\x69\xf7\ +\x59\x17\x08\xac\xcb\xfe\x98\x2e\xfb\x6f\x52\x59\x79\xe6\xca\x16\ +\xda\x51\xe1\xbc\x10\x82\x51\x94\x85\xe5\x40\x10\x0e\xde\x69\xea\ +\xf7\x46\x5b\xd4\x50\xd7\xd6\x88\x96\x68\xad\x51\x3a\xf5\x7c\xbf\ +\xd9\x6e\x36\xb6\xa0\xcb\xb2\x2d\x86\x9e\x2d\xbe\x5d\x43\x85\xc4\ +\x15\x85\x24\x94\xa4\xe3\x6e\xd3\xc8\x07\x92\x3d\x39\x9f\xdb\x9b\ +\x21\x9d\xde\xf5\x4a\x74\xfa\x36\xb1\x9d\x71\xd7\x77\xeb\x6a\x20\ +\x35\x3a\xe9\x2a\x28\xb7\x3f\x32\x3b\xc8\x8a\xe0\x69\xb0\x85\x10\ +\x08\x0b\x52\x40\xca\x42\xb0\x37\x11\x9c\x7a\x55\xe2\xdf\xec\xa3\ +\x80\xac\x6e\x03\x9c\x0a\xad\x59\x5d\x58\xd3\x84\xbb\xd5\x9a\x5e\ +\xf3\xc8\x48\xc7\x00\xd2\xe5\x28\x21\x19\x24\x62\x92\x46\x49\x53\ +\xbb\x8d\x63\x73\x77\xcb\xe1\x8e\x29\x4e\x39\xa4\xa2\x6b\x52\xca\ +\x9c\x8c\xe5\x79\x9b\xde\x80\x08\x3e\x95\x1c\xba\xb6\x92\xda\x93\ +\x8a\x7a\x84\xf0\xf0\xca\x14\x7b\x53\x7d\xdb\x6a\x42\x88\x23\xb5\ +\x68\xa2\xb2\xca\xc2\x2a\x4a\xeb\x32\x28\x7e\xac\x5b\xd9\xf0\x5c\ +\x75\xcd\xa1\x23\x39\xc9\xc0\x23\xd4\x57\x1e\x5d\xed\x4c\xc5\x9d\ +\x3a\x1b\x8b\x49\x4a\x17\x84\x2c\x11\x82\x3b\xa4\xff\x00\x01\xda\ +\xbb\x8f\xa8\xed\x32\xfc\x57\x12\x52\x15\x90\x46\x31\x9c\xd7\x21\ +\xf5\x4d\x8b\x7b\x77\x22\xdb\x6a\x40\x90\xc2\x8e\x50\xca\x07\x95\ +\x27\x9c\x28\x8f\x5c\xfa\x52\x7a\x46\xea\x49\x8d\xe8\xd9\xae\x23\ +\x8f\x69\x5b\xcb\x01\xb4\x16\xc1\x2e\x36\xda\xb3\xbb\x1b\x77\x66\ +\x90\xab\x24\x03\xfc\x3d\xa9\x44\xc2\x92\xac\x93\x93\xea\x7e\x7d\ +\xa9\x32\x73\x9c\xfe\x35\x96\x3b\x1b\x2a\x7b\xd6\x2c\x3e\x86\x5e\ +\x55\x07\x50\x2e\xde\x9d\xa9\x75\xf4\x9f\x05\x6a\xec\x92\x01\xcf\ +\xe6\x3f\x3e\x2b\xb1\xf4\xdc\xc5\x4a\x89\x1d\x78\x4a\x96\xcb\x61\ +\x0e\x82\x78\x2a\xc6\x4f\x6f\xf5\xc5\x70\x15\xb5\xd7\xe3\x5d\xa3\ +\xc9\x86\xa5\x25\xd0\xa0\xa6\xcf\x63\xbb\xbe\x2b\xae\xfa\x67\xa9\ +\xc4\xcb\x4c\x0b\x8c\x64\xbc\xff\x00\x8a\x0b\x8e\x82\x07\x99\x69\ +\x49\xcf\xd0\x9e\xd8\xf8\xae\x46\x3a\x9e\x4a\xaa\x6b\x66\x75\xf0\ +\x53\xe2\x50\xc9\xce\x25\xcd\x16\x52\x52\x50\xe8\x20\x21\xd0\x0a\ +\x49\xf5\xee\x08\xc7\xa7\x22\x9c\x96\xe2\x50\xc6\x14\xe6\xc5\x28\ +\x85\x79\xbd\x0e\x2a\x31\x6d\x7d\x1f\x64\x3b\x5b\x07\x01\x2b\x4a\ +\x09\xc7\x98\xf7\x03\xe0\x71\x4f\x4a\x79\x29\x4b\x99\x41\x53\x89\ +\x4f\x09\xce\x48\x57\xf6\xbe\x9e\xff\x00\x14\xa8\xcb\x40\x9a\xd4\ +\x75\x83\x28\x21\xe4\xa9\x4b\x40\x07\x18\x27\xb6\x7d\x85\x3b\xaf\ +\x2e\x34\x57\x90\x49\xc1\x2a\x1f\xcb\xe0\xd4\x2e\x44\xc2\xc3\xa1\ +\x01\x40\x37\x80\xb5\x85\x71\xdf\xdb\xe7\xe9\x4f\x91\x64\xed\x61\ +\x05\x04\xbb\x9f\xbe\x53\xc7\x70\x3b\x81\x53\x09\xf2\x29\x28\xb5\ +\xa8\xe0\xa4\x2b\x07\x91\xbb\x18\x15\xa0\x85\x24\xf2\x33\x8e\x4e\ +\x3b\x66\x94\xa0\x95\x25\x21\x5e\x53\x8e\xc1\x40\xee\xac\x78\xf3\ +\x63\x18\xf5\xc5\x35\x3b\x30\x4e\xe6\xa6\x9c\x6b\x2a\x52\xc6\xd0\ +\x91\xe6\xdc\x3d\x3e\x2b\x15\xc8\x86\xd9\x48\x52\x41\xe3\x00\x9e\ +\x72\x3e\x4d\x6c\x75\x2d\xa5\x25\x6e\x1d\xde\x98\x1d\xe9\xbe\x41\ +\x65\x2a\xcb\x4d\x95\x82\x9c\x7d\x0f\xe3\x5a\x23\x27\xc8\xba\xd4\ +\xd8\xe3\xd1\x0a\x77\xb8\xc0\xce\xfd\xaa\x1e\xde\xf5\x8a\x26\x47\ +\x52\x40\x65\x9f\x2e\x4e\x71\xed\xee\x6b\x4a\x76\xe7\x7f\x86\x9d\ +\xc4\xf3\xba\xb0\x2b\x47\x2a\xd8\x9c\xe7\x83\xc0\xcd\x44\x99\x74\ +\x66\x42\x4b\xea\x4a\x52\x13\xc7\x7a\xf5\xb4\xa1\x2d\x03\xd8\x93\ +\xe9\xe9\x5e\x87\x02\xd4\x70\x3c\xc7\x9c\xfa\x56\xc4\xe1\x03\x9f\ +\x4c\x9a\xcd\x32\x1b\x33\x8e\xb2\xdb\x81\x69\x4e\x48\x1c\xe3\xda\ +\x91\x6a\x7b\x88\xf0\x91\x19\x05\x3b\x94\x00\x48\x07\xd7\xbf\xe7\ +\xde\x92\xbb\x74\x47\x88\xa0\x97\x30\xda\x81\x4a\x47\x62\x78\xe4\ +\xf3\xed\x51\xb8\x73\x45\xc1\xf3\x26\x46\xe5\x36\xc2\x89\x6c\x64\ +\x83\x9e\x47\x22\xb3\x54\xa9\xa6\x54\x4c\x61\x77\x77\xc8\xdb\x73\ +\x92\x88\x50\x9c\x38\xd8\xe1\xdc\xb5\x0f\x82\x3f\xf4\xae\x45\xfd\ +\x23\xee\xce\x4d\xea\x0b\x50\x50\xea\x14\xcc\x78\xe8\x52\x90\x83\ +\x90\x95\xab\x24\x83\xf8\x60\xfe\x22\xba\x2b\x59\xea\x08\xd0\x62\ +\xbf\x26\x44\xa5\x33\x19\xb4\x17\x5c\x58\x20\x8e\x07\x63\xf1\xdb\ +\x1f\x53\x5c\x63\x74\xb8\xae\xe9\x7e\x99\x76\x78\xef\x5c\xa9\x0b\ +\x70\x83\xc7\x04\xf0\x3f\x01\xc7\xe1\x4c\xc0\x43\x3d\x57\x3e\x4b\ +\xf9\x23\x15\x2c\x94\xd4\x79\xcb\xf8\x26\x3a\x45\x98\x32\xad\xaf\ +\xc7\x7d\x61\xb5\x12\x92\x8c\xf6\x57\x03\x82\x7d\x06\x78\xcf\xcd\ +\x2a\xb1\xb9\x19\x6e\x8b\x53\x8d\xf8\x32\x63\xa8\x96\x52\xb1\xc9\ +\x0a\xdb\xce\x7d\x71\x83\xf9\x9a\x61\xb0\x2d\xc5\x35\x15\x4d\x2c\ +\xee\x5b\x9f\x67\x29\x00\x1d\xc7\xba\x4f\xe3\x8c\x54\xef\x4a\x5a\ +\xad\xf7\x99\xa9\x44\xe6\x54\x95\xc7\xe5\x0f\x32\xad\xab\x49\x3c\ +\x00\x0f\xc7\x7c\x56\xa8\xda\x32\x95\xfb\x6e\x65\xc7\x55\x6a\x9c\ +\x6f\xee\xd8\xb0\xf4\x96\x9b\x6a\x64\x54\x82\x90\x54\x45\x3f\xa7\ +\x46\xbe\xc4\x8c\x82\xa0\x83\x4b\xb4\x16\x9d\x9d\x0c\x20\xb3\x73\ +\x72\x52\x06\x30\x97\x1b\x09\x50\x19\xe0\x64\x77\xab\x76\x25\x97\ +\xed\x70\xc0\x59\x4e\xe0\x3b\xd7\xa6\xc3\xca\x96\x2e\x9a\x94\xe3\ +\xb1\xe5\x25\x26\xa5\x64\xee\x40\x34\xc6\x9e\x66\x2b\xe8\x50\x40\ +\xef\xcd\x5a\x70\xa1\x25\x31\x52\x52\x00\x18\xa4\x30\x2d\x6d\xb4\ +\x54\xd9\x00\x28\x76\x38\xa9\x0d\xa4\xa4\xb4\xa6\x57\xf7\xbd\x05\ +\x6b\x9a\x8c\x17\x55\x15\x83\xbb\xb3\x1c\xed\xa9\x4e\x5a\x38\x3f\ +\x18\xa2\xbd\x86\x76\x6d\x49\xfd\xd3\xcd\x15\xcc\xaa\x9b\x91\xd1\ +\xa5\x2b\x22\x23\xd3\xf4\xa2\x7f\x4f\xa2\x30\xa0\x0a\xb0\xe6\x7d\ +\xff\x00\xac\x55\x47\xe4\x47\x5c\x69\x0b\x8c\xb3\x8c\x1e\x29\xc3\ +\xa7\x4e\xaa\x2e\x95\x84\xe8\xe5\x2a\xdf\x91\x9f\xf8\xc5\x53\xc6\ +\xa1\x84\xd4\xc8\xe2\x54\x70\x0a\xc1\xce\x12\x39\xf9\xae\x8d\x35\ +\x97\xc0\xe5\xdf\x34\x13\xe6\x86\xdd\x36\xf6\x50\xb6\x16\x7b\x1e\ +\x29\xc2\x18\x29\x7d\xc4\x92\x78\xf8\xa8\xfb\x0e\xa9\xa7\xbc\x40\ +\x08\x29\xe0\x8c\xf7\xa7\xa6\xde\x0e\x29\x0f\x24\xe4\x91\x83\xcd\ +\x34\xa1\x36\x61\x59\xb5\xa4\xf7\xf2\xfa\x53\x55\xc4\xe4\x21\x19\ +\xf2\x9a\x53\x6a\x7d\x0b\x82\xb6\xf3\xd8\x52\x39\x4f\x21\xc2\x87\ +\x10\x77\xa4\x28\x8c\x83\x9e\x41\xc7\xf0\x39\xac\x54\xe2\xe3\x36\ +\x6e\xab\x25\x28\x23\x09\x6b\x42\x23\xec\xf8\xf4\xa4\xf1\x51\xe2\ +\xad\x0d\xa9\x5b\x73\xdf\x8a\xc1\xc5\x87\x65\x7e\xd3\xee\x27\xde\ +\x86\xe4\x36\xbb\x80\x65\x97\x10\xa7\x50\x37\x29\xb0\xa1\xb8\x24\ +\x9e\x0e\x3d\xbe\x6b\x52\x56\x46\x56\xee\xc5\x8f\x34\xe4\x7f\x32\ +\x14\x14\x07\x7a\xdf\x15\xc0\xc3\x41\x6b\x18\x2a\x3d\xab\x25\xb6\ +\xb4\xac\x2c\x1c\xa4\x8e\x45\x78\x52\x1d\x58\xe3\x18\xa4\x39\x66\ +\x5a\x8e\x4b\x2b\xd0\x1f\x2b\x0b\x49\x6c\x67\x75\x6c\xfb\x32\x0a\ +\x14\xa5\x2c\xee\xaf\x51\xb8\x37\xb0\x0e\x47\x6c\xd6\x4b\x6d\x69\ +\x8d\x84\x9d\xca\x35\x46\xf9\x0c\x4b\x98\x91\x59\x1b\x14\x01\xe0\ +\xd2\xbc\xa5\x6d\x05\x03\x8c\x52\x28\x72\xe2\xc9\x6d\x69\x61\xf6\ +\xa4\x6d\x25\x0a\x2d\xac\x28\x02\x3b\x8c\x8f\x5a\x51\x19\x0f\x79\ +\x80\x42\xb6\xfa\x66\xa6\x5a\xa2\xb1\x1c\xa3\x9d\xc1\x1f\x5a\xd9\ +\x3d\x43\xca\x3b\xd6\xa8\xe1\x48\xda\x14\x9c\x7a\xd6\xa9\x6f\x85\ +\x38\x40\x3f\x15\x95\x46\xf2\x35\xb9\x5a\x06\xb4\x11\x95\x2b\xd2\ +\xb4\xe7\x72\xca\x88\xaf\x1d\x5e\x06\xc4\xe3\xe6\xb7\xc4\x60\xac\ +\xf3\xf7\x45\x3f\x48\xab\xb3\x3e\xb2\x76\x46\xfb\x7b\x3d\xdc\x57\ +\xe1\x5b\xdd\x56\xe5\x63\xd0\x77\xaf\x14\xb0\x06\xc4\x70\x2b\xc4\ +\x83\x90\x9e\xe6\xb3\xbb\xb7\x76\x69\x4a\xca\xc8\xd8\x95\x06\x9a\ +\x2a\x3d\xe9\x08\x4f\x8e\xb2\xb5\x76\xad\xb3\x49\x2b\x0d\x03\xc5\ +\x68\x79\x41\x86\x4f\x22\xad\x05\x65\x7e\x6c\xac\x9d\xdd\xb9\x21\ +\xae\xf1\x31\xbb\x78\x2e\x29\x61\x29\x1e\xa4\xd5\x6d\xaa\xba\xb3\ +\xa6\xa1\xb4\xe2\x5c\xb9\xb3\xe2\x20\xe0\xb6\x16\x9d\xd9\xfa\x66\ +\x9b\x3a\xf7\x7f\xbc\x1b\x78\xb6\x59\x1f\x87\x1a\x43\xc7\x2b\x91\ +\x25\xcd\xa1\xa4\xfb\x81\xea\x4f\x35\xcc\xea\xd3\x2f\xb4\xa9\x92\ +\xef\x1a\xa6\x3c\xd0\x7c\xc6\x34\x62\xa2\x1d\x50\x3c\x0c\x80\x06\ +\x73\x58\xf1\x58\xfe\x1c\x94\x56\xe4\x50\xc3\x2a\xd7\x72\x95\x91\ +\x33\xea\x8f\x56\x15\x70\x6d\xd8\xd6\x44\x4b\xda\x78\x5c\x8d\xc1\ +\x00\x7c\x05\x67\x8a\xa1\x2e\xd3\x9f\x78\xe5\xf7\xc3\x3b\x95\x93\ +\x80\x4e\x13\x8e\xfc\xf7\x27\xde\xac\x8b\x9c\x3b\x2b\x70\xb6\x5c\ +\x25\x22\x12\x10\x90\x7c\x24\xba\x92\xa2\x48\x04\x1c\x9f\xf0\x15\ +\x06\xbc\x4f\xd3\x0c\x33\x25\x11\xd8\x54\xd7\xd6\x02\x5b\x75\x6a\ +\x52\xd4\x9e\x73\x9c\x9c\x01\xf9\x1a\xcd\x1a\xb3\xae\xf3\x49\x1d\ +\x5a\x31\xa1\x41\x64\xa7\x7b\xbd\xd9\x11\x52\x14\xb6\x8b\xab\x25\ +\x3f\xd9\xcf\x75\x13\xed\x58\x0c\x11\x9c\x7e\xed\x6d\x93\x25\xc9\ +\x0e\xf8\x8b\x3b\x71\x9d\xa9\x4f\x61\x5a\x52\xa2\x84\x28\xfb\x8a\ +\xd2\xaf\x6d\x4c\xf3\xb5\xf4\x14\xb0\x7c\x29\x4c\x3e\x47\xef\x05\ +\xe3\xf1\xab\xbf\xa6\x12\x57\x67\xbc\xa2\xce\x40\xf0\x5d\x74\x3f\ +\x1d\x59\xf2\xe7\x82\xa4\xfd\x78\xcf\xfe\x95\x56\xea\xeb\x6c\x2b\ +\x65\xc5\x9b\x5a\x56\xa0\xf2\x2d\xec\x97\x54\xa5\x64\x87\x8a\x02\ +\x94\x9e\x4f\x03\x9e\xde\x98\xab\x45\x88\x6a\xb8\xe8\x7b\x55\xd5\ +\xb5\x94\x3b\xe1\xb4\x54\xe2\x40\xdc\x95\xa7\x8c\xe3\xe7\x18\xfc\ +\x6b\x99\x8f\x95\xe1\x17\xc9\xfa\x47\x6f\xa2\x62\x9c\xa7\x0e\x7e\ +\xae\x5f\x76\x7b\xcb\x29\x75\xe5\xad\xd0\xb6\xf8\x4a\x41\xe3\x9d\ +\xde\xde\xd9\xf5\xa9\x23\x52\xdb\x56\x77\x27\x6a\x0a\x55\xb4\x13\ +\xdf\x68\xc1\xdc\x7e\x3d\x2b\x9e\xb4\x96\xa3\x75\x49\x5c\x49\x0a\ +\xf0\x25\x05\xed\x78\x2b\xb6\x33\x9c\x83\xed\x90\x4d\x5b\xba\x72\ +\xfa\xc4\x88\xcf\xc4\x5a\xd2\xe2\x8e\x49\x4e\x41\x51\x48\x27\x27\ +\xf1\xe0\xf1\x5c\xd8\xcf\x2b\xca\xcd\xb5\xb0\xed\x2b\xa2\x62\xb7\ +\x1a\xfb\x39\x5b\xdb\x7c\x40\x37\x00\xa3\x95\x03\xeb\xf4\xe3\xf9\ +\xd6\x36\x1b\x92\x52\x1d\x42\x1d\x59\x64\xac\xe7\x27\x71\x38\x38\ +\x18\x3e\x99\xf4\xa6\xb6\x6e\x2d\x29\x85\x48\x3e\x11\x64\xa0\xab\ +\x07\x2a\xe3\xe3\xdf\xe9\xf1\x4d\x0f\xce\x62\x25\xe2\x38\x6a\x3e\ +\x5e\x71\x7b\x7c\x24\xaf\x0a\x2b\xc6\x46\xef\x7c\x0c\x7e\x75\x6c\ +\xf6\x69\xa3\x26\x4b\xe8\xcb\x36\x43\xcb\x4b\xc8\x70\xe1\xa6\x90\ +\x00\x69\xa0\xac\x92\x9f\x53\xc7\xcf\x14\xe0\xdc\x9d\xea\x05\x21\ +\x38\x3d\xf1\xe9\xf5\xa8\x8d\x9e\xef\xe2\xba\x8d\xd2\x9a\x4e\x5b\ +\xcb\x98\xe5\x48\x03\xd7\xf0\x3c\xd3\xdb\x6f\x17\x23\x78\xc8\x2a\ +\x79\x0e\x04\x84\x24\x0e\xe0\x1c\x67\x3f\x3e\xd5\xae\x3a\xea\x8c\ +\xed\x5b\x46\x2c\x75\xc7\x14\x14\x12\xa4\xab\x1c\x2b\x3d\xc5\x68\ +\x62\x30\x74\x82\xa7\x95\x8e\x48\xcf\x35\xb5\x97\xd1\xb1\x0e\xba\ +\xb4\xaf\x6a\xca\x4a\x47\x74\x91\xc7\x3e\xf5\xbe\x2a\xda\x01\x68\ +\x20\xb9\x85\x67\xcc\x30\x47\xb5\x3e\x04\xa9\xe9\xa1\x8a\x62\x6f\ +\xf3\xa5\x3b\x8a\xb3\xf8\xe3\xf9\x1a\x4d\x22\x2a\x9d\x5a\x90\x52\ +\x84\xa7\x1b\xb9\x39\x27\x07\x9a\x5b\x1d\xc0\x42\x96\x96\xd4\x0e\ +\x77\x04\x13\xc9\x07\xbd\x27\x7d\x63\x6b\x6a\x0a\x04\x94\xfa\x1e\ +\x70\x7b\x8f\xaf\xc5\x59\xd8\x9c\xcd\x31\xb3\x86\xde\x70\x24\xfe\ +\xcd\x05\x27\x70\x3c\x12\x78\xff\x00\x43\xe6\xb4\xc8\xb9\x25\xa6\ +\x1c\x7d\x4b\x46\x5b\xc9\x20\x1f\x51\xee\x2b\x75\xd9\xf4\xc6\x61\ +\xd9\x2d\xc8\x4a\x08\xe4\x93\xdf\xd3\xd3\xe9\x51\x6b\xbc\xef\x05\ +\x6d\xa9\x4d\x2d\x95\x2b\x97\xc1\x19\x1c\xa7\x21\x43\xdf\xb7\xf1\ +\xac\x75\x5e\x51\xab\xac\x37\x6a\xeb\xab\xbf\xa9\xd4\xb6\xd5\x97\ +\x54\xe6\xd6\x4f\x8b\x9c\x05\x0e\xff\x00\xcf\xf9\xd6\xb6\x66\xa5\ +\xb8\x3e\x47\x47\x8a\x94\x02\xe0\x20\x60\x64\x11\xe9\xe8\x78\xc5\ +\x43\x2f\x77\x17\x2e\x37\x56\x19\x8e\x84\xa9\xb6\x4e\xf5\xad\x18\ +\xfb\xf9\x00\xfe\x1c\x9f\xc6\x91\xeb\x9d\x4c\xbb\x44\x05\x33\x0f\ +\x2e\x4f\x53\x48\x43\x0c\xb6\x39\x56\x0e\xe2\x15\xec\x30\x39\x3e\ +\x95\xcf\x93\x6e\x5a\x1b\x23\x4b\x44\x8a\xd3\xf4\x8b\xd5\x81\x71\ +\xe3\xe9\xb8\xc9\x42\x5c\x7d\x09\x76\x56\xd5\x79\x91\x85\x1c\x24\ +\xfe\x40\xd5\x2e\xc7\xdc\xf2\x9e\x41\xc9\xac\xae\xd3\xe4\xdd\x2e\ +\x92\x2e\x53\x56\x1c\x7e\x43\x85\x6b\x50\xed\x9f\x61\xf0\x2b\xd4\ +\x36\xb4\x46\x53\xdb\x78\x48\x1f\xc7\xff\x00\x4a\xf4\x58\x7a\x0a\ +\x85\x25\x1e\x7f\x53\x83\x88\xaf\xc7\xaa\xe5\xc9\x6d\xe0\x3d\xda\ +\x56\xa1\x66\x79\xa6\xc9\x3b\xdc\x6d\x48\x29\xee\x9d\xa4\xf2\x3e\ +\x40\x3f\xc6\xa7\x5a\x1f\x54\x45\xfb\x53\x28\x9c\xff\x00\xd9\xa4\ +\x17\x3f\x79\x3f\x7f\xb6\x09\x3e\x87\x15\x5b\x45\x56\xd8\xd9\x6f\ +\x25\x25\x59\x71\x3f\xd9\x48\xe7\x23\xf9\x56\x6b\x2a\xb8\x45\x61\ +\x29\x70\x05\x85\x1f\xeb\x09\xdc\x9e\xdf\xbd\xed\xf5\xaa\xba\x69\ +\x4f\x30\xca\x96\xad\x47\x86\xfd\x7a\xb9\xdb\xfa\x4a\xec\xd3\x71\ +\x98\x74\x10\xa4\x2d\x20\x85\x24\xe4\x1a\x91\x47\xd6\xf1\x5c\xbf\ +\xb1\x60\xb6\xbc\x99\x37\x07\x12\x1c\x5b\x2d\x9d\xde\x0b\x7e\xab\ +\x59\x1f\x77\xe0\x1e\x49\x22\xb8\xbf\x4e\xe9\xad\x63\x2c\x22\x09\ +\xbf\xa2\x04\x65\x01\x95\xae\x5f\x00\x0f\x4c\x24\x93\x9f\x8a\xe9\ +\xae\x84\x58\x2c\xfa\x56\xd8\x61\xdb\xdd\x12\x25\xbe\x77\x4b\x98\ +\xaf\xbc\xf2\xbd\x07\xc2\x47\xb5\x3d\x63\xea\x4d\xa8\x52\x77\xf0\ +\x38\x18\x9c\x1a\xc3\xdf\x3b\xd7\xb0\xbf\x5a\x69\xa9\x51\x52\xb6\ +\xd4\x03\x80\x73\x9e\xe6\x92\x9f\x15\x87\x72\xa0\x52\x53\xdf\xe6\ +\xb7\x5a\xc2\x56\xd8\x52\x09\xc8\x02\x97\xb8\x12\xa4\x6d\x79\x00\ +\xf1\xc1\xae\xec\x65\x28\xab\x48\xcb\x93\x32\xb9\xa9\x89\x88\x51\ +\x05\x20\xe4\xf1\xc5\x14\xb2\xc9\x6a\x6d\xb7\x0c\x85\x64\x83\xd8\ +\x1a\x2b\x35\x5a\xd0\x8c\xac\x91\xaa\x95\x19\xca\x37\x6c\x83\x68\ +\x26\xf6\x69\x78\x6d\x39\xf7\x72\xe1\xe7\xd4\x78\x8a\xa7\x92\x55\ +\x1d\x59\x46\x14\x8f\x50\x07\x06\xb5\x68\xd8\x45\xee\x9f\x5b\x24\ +\x23\xcc\xb4\x87\x09\x03\xd7\xf6\x8a\xa5\x29\x56\xe4\xf9\xbb\x8e\ +\xfc\xd6\xca\x53\x53\x89\x86\x50\x70\x48\x41\x32\x14\x79\x61\x4e\ +\x30\x42\x17\x83\x94\xd3\x4c\x66\xe7\x37\x2c\x44\x43\x6a\x3b\xbd\ +\xbb\x54\x89\x4c\x24\x80\xb4\xf9\x71\xeb\x4e\x9a\x5e\x08\x5b\x85\ +\xf7\x46\xec\x1c\x73\x56\xa9\x35\x08\xb9\x30\x84\x1c\xe4\xa2\x8a\ +\xab\xa3\x76\x3b\x64\xed\x57\xaa\x97\x72\xb2\xbf\x2e\xe0\xc6\xa5\ +\x92\x23\xdc\x17\x1f\xc4\x6a\x39\x43\x6d\xad\x20\xab\x23\x18\x56\ +\x48\x1e\xea\x1e\xf5\x96\x96\xd4\x57\x4b\x26\x89\xb4\xb5\x6b\x83\ +\x65\x44\xcb\x86\xb5\x91\x65\x79\x42\x3a\xd2\xc9\xdc\x5e\xcb\xdb\ +\x37\x95\x67\x7a\x52\xa2\x9d\xdc\x80\x52\x08\xce\x45\xad\xa1\xf4\ +\xbf\xf4\x65\x7a\x81\x62\x77\xda\xbf\x5c\x5e\x5e\xba\x01\xe0\xec\ +\xf0\x7c\x44\xa1\x3e\x1f\x73\xbb\x1b\x3e\xf7\x19\xcf\x6a\x8e\xc6\ +\xe9\x87\x83\x6e\xb5\xc4\x37\xcc\xfd\x83\x55\x2f\x50\xee\xfb\x27\ +\xf5\x9b\x8b\x87\xc1\xfb\xfc\x7f\x59\xf7\xf9\xed\xf7\x79\xae\x44\ +\xaa\x39\x3b\x9b\x23\x86\x94\x22\xac\xb5\xd7\xf9\x43\x05\xd7\x5b\ +\xdd\xad\x2c\xea\xcb\x54\xe8\xb6\xc9\xd7\x8b\x4d\xca\x0c\x08\x2f\ +\x34\xca\xd9\x65\xf3\x31\x28\x2d\x95\xa7\x72\x88\xd8\x14\x73\x85\ +\x73\x8f\x4c\xe6\xbc\xd1\xd6\xcb\xa4\x2e\xbb\xea\x16\x2e\x72\x61\ +\xcc\x79\x36\x28\xaa\x4b\xb1\xd8\x53\x29\x52\x0b\xae\x77\x49\x5a\ +\xb0\x73\x91\xf7\x8f\xa7\xd2\xa4\xb7\xbe\x99\x31\x76\x9f\xab\x65\ +\x3d\x78\x75\xa5\xdf\xa4\x41\x95\x1d\x4d\x32\x02\xa0\xbd\x15\x09\ +\x4a\x14\x09\x24\x2f\x25\x20\xe0\x81\xc1\x23\xe6\x9c\x74\xbe\x8f\ +\x9f\x6f\xd6\x73\xf5\x5d\xda\xfa\x8b\x94\xe9\xb0\x9b\x86\xb4\x35\ +\x0f\xec\xed\x21\x2d\xa8\xa9\x25\x23\x7a\x8f\xa9\xce\x49\xe4\xfa\ +\x0e\x28\x55\x64\xb9\x93\xec\xf2\x73\x4d\xae\x7e\x5a\xfe\x08\xdd\ +\xda\xf5\xa8\xe7\xeb\xf9\x9a\x5f\x4e\x3d\x6f\x88\x6d\xd0\x1b\x97\ +\x21\xf9\xac\x2d\xd0\xb7\x1c\x52\x82\x1b\x09\x4a\xd3\x84\xe1\x19\ +\x2a\xc9\x3c\xe0\x0f\x5a\x43\xa7\xb5\xf4\xeb\xdc\xfe\x9f\x29\xa8\ +\x8c\x47\x63\x50\xc7\xb8\x99\xcd\x9c\xa9\x4d\xbb\x1b\x6a\x70\x85\ +\x7b\x6f\xdd\xe8\x72\x31\x52\xdd\x4f\xa2\xe6\x3f\xa9\xdf\xd4\xfa\ +\x7a\xf6\x2d\x57\x09\x10\x93\x0e\x50\x76\x20\x7d\xa7\x10\x95\x15\ +\x21\x61\x3b\x92\x43\x89\xdc\x70\x72\x46\x0f\x20\xd3\x2b\x1d\x38\ +\x6e\x2c\x2d\x2a\xd5\x82\xee\xa8\x73\x34\xc8\x79\x0c\x3d\x26\x3f\ +\xda\x12\xfa\x5f\x00\x3d\xe2\x24\x29\x1c\xa8\x8d\xd9\x04\x60\xfb\ +\xf6\xa6\xf1\x1c\x95\xc5\xca\x95\x48\xc9\xaf\x5b\xaf\xa5\xc8\x6e\ +\xa8\xd4\xfa\xa2\xed\x66\x65\x51\xae\x4c\x5b\x94\xcf\x50\xc5\x94\ +\x16\x98\x3e\x66\x51\x20\x06\xf7\x79\x86\x7b\x79\x87\x65\x03\x8e\ +\x2a\x7b\xd4\x46\xee\xd1\xba\x45\xa8\xd6\x8b\x8a\x3f\x58\x31\x66\ +\x90\xe2\xe5\x21\x9d\xa0\x94\xb4\xa2\xa2\x94\xee\xf2\x92\x01\x00\ +\xe4\xe0\x90\x79\xc6\x29\xad\x7d\x30\x5f\xea\x15\x5a\xe3\xea\x07\ +\x0c\xc1\xa8\x93\xa8\x5b\x96\xf4\x40\xa0\x24\x85\x25\x44\x29\x01\ +\x43\x72\x4a\x82\x8f\x05\x3c\x10\x3d\x32\x67\x97\xeb\x13\xf7\x9d\ +\x0d\x73\xd3\xb2\x66\xb6\x89\x17\x1b\x7b\xd0\xdc\x94\x86\x30\x94\ +\xa9\xc6\xca\x0a\xc3\x65\x59\xc0\xce\x76\xee\xfc\x6a\xae\x6e\x2b\ +\x5e\x65\xa9\xd1\x9c\xaf\x7e\xc2\xb3\xe9\xfb\x97\x58\x88\xd3\x7a\ +\x32\xc1\xfa\x8a\x24\xb7\x74\xe3\x57\x89\x93\x5c\xb7\x1d\xbe\x1a\ +\xb6\xb6\xd2\x03\x48\x5a\x77\x2b\x20\xee\x59\x57\x61\xdb\x26\x94\ +\xb7\xd4\x7d\x49\x70\xb5\xe9\x96\x6d\x70\x6d\x71\xaf\x17\x4b\xa4\ +\xcb\x44\xb0\xf8\x5a\xd8\x65\xe6\x37\x65\xc4\xe0\x85\x29\x38\x46\ +\xe0\x9c\x8c\xe7\x19\x1d\xea\x4f\xfd\x03\x95\x0e\x55\x92\xe7\x64\ +\xbe\x88\x57\x5b\x6d\x9d\x36\x87\x1e\x7a\x1f\x8c\xcc\x96\x06\xd2\ +\x0a\x9b\xde\x92\x14\x14\x9d\xc0\x85\x71\x92\x0e\x45\x68\xb7\xf4\ +\xce\x2c\x01\xa5\x04\x7b\xbb\xaa\x36\x29\xf2\x27\xbe\xe3\xcc\x85\ +\x2e\x6b\xaf\x25\x7b\xc9\x20\x80\x9e\x56\x4f\x63\xc0\x03\xe6\x92\ +\xe4\xde\xe3\x23\x4a\xa4\x74\x5e\xb6\xfc\x93\x98\x48\x7d\x30\x98\ +\x44\xc5\xb6\xec\x84\xb6\x90\xf2\xdb\x46\xd4\xa9\x78\xf3\x10\x32\ +\x70\x09\xcf\x19\x35\xa6\x74\x20\xe2\x0a\x9b\xe1\x58\xef\x4b\x7e\ +\x86\x81\x44\x66\xe2\xee\x8d\x92\x82\x92\xb3\x18\x63\x47\xda\x49\ +\x79\x5c\x8f\x4a\x58\x09\x23\x68\x18\x4d\x6c\x94\xd8\x4b\xc1\x5e\ +\xf5\xe0\xad\x2e\x79\xb5\x33\x46\x19\x74\x3d\x4a\x76\x8a\xda\xc8\ +\xc6\x56\xae\xd5\xad\x09\x2b\x50\x03\xd2\x95\x3a\x90\x19\x29\x14\ +\x99\x3e\x43\xa2\xb9\x8d\xb3\xb0\xb7\x0a\x93\xcf\x15\x1c\xd4\x72\ +\xdd\x8d\x01\xe2\x81\xb9\x7b\x4e\xd1\xee\x6a\x40\xa5\x14\x93\x8f\ +\x4a\x8f\xea\x16\x17\x25\xa5\x0f\x53\x5a\x32\xc9\xc6\xd1\x32\xd4\ +\x77\xd5\x1f\x3d\xb5\xfd\xcf\x5d\xeb\xad\x61\x24\x39\x0e\x5c\x87\ +\x91\x93\xf6\x76\x92\xa0\x86\x12\x0e\x30\x40\xf6\x3c\x12\x7d\x69\ +\xb2\x2e\x9d\xd5\x16\x89\x6c\xbb\x71\xb6\x3e\xd3\x41\x61\x38\xdd\ +\xc1\x27\xf1\xae\x90\xeb\x0c\x46\xb4\xe2\x5f\xbc\xc7\x6d\xb6\x64\ +\x15\x7e\xd1\x40\x04\x97\x72\x47\x94\x9f\x73\x54\xcd\xf2\xfa\x8b\ +\xf6\x9d\x79\xf8\x4a\x52\x64\x32\xe2\x56\xa6\xd6\xac\x2d\x24\x1f\ +\x6f\x51\xf4\xae\x35\x49\xce\xed\x4d\x58\xe8\x61\x6a\xb7\x97\x24\ +\x74\xd8\x6f\xd5\xf6\x69\x6e\x86\xa3\xb7\x66\x7c\xc9\x77\x21\x00\ +\x27\x2b\x51\x03\x24\x77\xf4\x19\xa8\x33\xda\x6a\xf3\xe2\x61\x16\ +\xa7\xce\x4e\xd0\x0f\x07\x3c\x9f\x7f\x83\x57\x25\xd5\x71\xcb\x08\ +\x96\xec\xc6\x5a\x69\x61\x2f\x36\xe2\xdd\x09\xda\x48\xce\x46\x4f\ +\xb1\xaa\xcf\x50\x6a\x75\x15\xed\xb6\x05\x25\x49\xdd\xbd\xee\xe3\ +\x24\x11\x91\xf8\x13\x8f\xad\x36\x8c\x1a\xa7\x9a\xfb\xaf\x32\xcb\ +\x13\x2a\xcd\x45\xc7\x62\x2b\x1d\x82\xe4\xb6\x62\xaf\x09\x53\x8e\ +\x25\x18\xcf\x6c\x9c\x72\x6b\xc9\x51\x9c\x6a\x43\x8c\xe3\x1b\x16\ +\x5b\x51\xfa\x1c\x1a\x5d\xa7\x19\x13\x2f\x91\xc3\x88\x52\x9b\x6c\ +\x97\x5d\x24\x9c\xe0\x73\xc9\xf9\x38\x1f\x8d\x6f\xbd\x36\x7c\x57\ +\x24\x38\x70\x5c\x3c\x24\x7a\xe3\xd6\x9b\x14\xdb\x7d\xc1\x27\x1b\ +\xd8\xd1\x79\x94\xe5\xde\xee\xf4\xa7\x37\x3b\x35\xd7\x50\x80\xd3\ +\x0d\x65\x2a\x21\x20\x71\xf9\x70\x3d\x6b\xa1\x7a\x0f\x0d\x33\xfa\ +\x7c\xea\x5b\x6b\xc5\xd8\xa2\x36\x77\x25\xbc\xe4\x1e\x3f\x78\x12\ +\x7f\x0c\x7b\x57\x3e\xdb\x2e\x26\xdd\x35\xb9\x6d\x36\x91\x22\x30\ +\x43\xad\xa8\x7e\xea\x92\xa0\xa1\xfc\x06\x0f\xd6\xba\x17\xf4\x6a\ +\x92\xe3\xa8\xbb\xac\xb5\xe0\x66\x7f\x8c\x1b\x40\xc6\xc4\xb8\x37\ +\x0e\x3d\xbe\x7b\x57\x3f\x1f\xd6\xa7\x67\xca\xdf\x63\xa7\xd1\xed\ +\xc6\x6e\x48\x64\xd7\xda\x6a\x4c\x29\x49\x7a\x3a\xd1\x94\x28\x2d\ +\xa7\x14\x33\x90\x32\x70\x7d\xe9\xab\x4f\xea\x29\x2c\xf8\x5e\x02\ +\x56\x42\x4a\x81\x69\x4b\xda\x52\xac\x85\x10\x93\xdf\x07\x9f\xc3\ +\x8a\xe8\xad\x51\x64\x8b\x26\x23\x8f\xa5\x96\xdf\x52\x0a\x94\xe3\ +\x09\x1e\x60\x0f\xef\xa7\xfc\x40\xf6\xe2\xa8\x6d\x71\xa2\x57\x68\ +\x96\x65\xb0\xe8\x2a\x4f\x29\x52\x46\x4a\xd2\x71\xc0\xe7\xdf\xf8\ +\xd7\x26\x2a\xdd\x59\x7c\x0f\x41\x0a\xdc\x4e\xb2\xdf\x99\x37\xb4\ +\x6b\x95\x18\xf1\xbc\x44\xab\x85\x79\x51\x8c\xf6\x3d\xf3\xe9\xd8\ +\x60\x1e\x6a\x4d\xf6\xe6\xe4\x23\x28\x5b\x7b\xd9\xcb\x89\xda\xb3\ +\x95\x1e\x0a\x88\x3d\xf3\xe9\xcf\x07\x35\x45\xdb\x11\x20\x90\x84\ +\x2c\xa1\xe2\x00\x2a\x74\x14\xe0\x1e\x09\xc7\xe1\x52\x07\x5d\x99\ +\x0d\xf8\xbb\x9b\x12\x1b\x64\xec\x58\x2b\xf3\x2c\x77\xf4\xcf\xcd\ +\x2e\x49\xa7\x64\xc9\x96\x1e\x13\xd5\x68\x58\xcc\x5d\x1a\x64\xb8\ +\x43\x8b\x69\xc9\x18\x29\x52\x80\x1e\x1a\x14\x48\xc7\xc9\x24\x91\ +\xf9\x54\xa6\xd5\xac\x5a\x8c\xda\x1d\x79\xd3\x15\xc4\xe5\x05\xa7\ +\x10\x40\x47\xa7\x97\x9f\x31\xc2\x48\x38\xf5\xcd\x52\xd3\xae\x4a\ +\x5a\x54\x63\x89\x0c\xa9\x68\x40\x6e\x3a\x8e\xd5\x67\x83\x92\xa3\ +\xfb\xbd\xb1\xeb\x5b\x67\x5c\x51\x28\xc5\x6a\x6a\x32\xe4\x70\x54\ +\xd2\x37\xa9\x60\x7a\x11\x8c\xf3\xdf\x9f\xad\x5a\x15\x25\x11\x33\ +\xc2\x46\x45\xff\x00\x6d\xd5\x70\xd2\x43\x89\x7e\x13\x8d\xb8\x42\ +\x96\x19\x70\x2b\x7a\x49\xc0\x27\xd8\xf7\xe7\xe2\xa4\x08\xba\x25\ +\x4e\x36\x63\xbe\xd3\xad\x28\x00\xbc\xab\x9e\xd9\x07\x3e\xbc\x1e\ +\x47\xc5\x72\xe3\xd6\xc8\xd2\xda\x53\xb1\x24\x4f\x4b\xc5\x64\x2d\ +\xb2\x36\xec\x09\xe0\xa9\x40\x1c\x00\x33\x81\x8f\x8a\x77\xb6\xc1\ +\xbe\x90\xd3\xd1\xb5\x1c\xd2\xca\x52\xa0\x8c\x34\x55\xb4\xa5\x38\ +\x4e\x01\xf9\xfe\x74\xe8\xe2\xb2\xab\x31\x32\xe8\xf4\xf5\x4c\xe9\ +\x28\xf7\x58\xaa\x52\x92\x14\xe2\xd0\xda\x4a\x4a\x89\x00\x13\x9e\ +\xff\x00\xe1\x5a\xdf\xbd\x41\x8a\xa4\x93\x21\xa0\x51\xf7\xdd\x1c\ +\x63\x23\x03\xe0\xf2\x45\x73\xab\x82\xf8\xd3\x0b\x73\xfa\x45\x21\ +\x87\x56\x43\xcd\xb4\xf6\x08\x07\xb7\x38\xf8\x26\x9a\x2e\x97\x3d\ +\x45\x21\xf6\x61\xa2\x42\x12\x8c\x8f\x0d\xe5\x76\x51\xc1\x21\x58\ +\xec\x14\x71\x9c\x55\x96\x31\xb2\x1f\x47\x77\x96\xd6\xaf\xd6\xb1\ +\xe6\xbf\x25\xa8\xcf\x0f\xf6\x56\x9b\x59\xdc\x78\xde\x4a\xbb\x9f\ +\x73\xb4\xfe\x75\x5e\xea\x7d\x69\x2e\xe5\x30\xc1\xb7\x28\xbe\x96\ +\xf2\x90\xa3\x9c\x01\xc9\x00\xfb\x60\x54\x30\x45\xbb\xcb\xb9\xa6\ +\x2a\xa5\x89\x13\x23\xb1\x92\xb6\xd5\x93\xb9\x47\xd4\x01\x8e\x32\ +\xaf\xce\x9c\x2d\xf6\x77\x23\x3c\xa9\x2e\xc9\x58\x65\xbc\x92\x90\ +\x08\x71\x47\x27\x72\x56\x47\xd4\xd2\x67\x55\x6e\xd9\xa6\x9e\x15\ +\x2e\x42\xb8\x32\x4c\x56\x1a\x4b\x1b\x5d\x90\x37\x07\x49\x18\xc7\ +\x97\x95\x13\xd8\x73\xc6\x7d\x78\xe2\xbc\x76\xd6\x59\xb5\xc9\xbb\ +\x5c\x14\xb7\x27\x86\x1c\x0e\x29\x49\xc2\x41\x50\xc6\x11\xfd\xd0\ +\x14\x7e\xb9\xcf\x14\xe9\x6d\xb6\x26\x42\xb6\x32\xd8\x6e\x18\xfb\ +\xe9\x56\x78\x57\x73\xeb\x82\x72\x7b\x7c\xd2\xfd\x7c\xc3\xcd\xe9\ +\x39\xeb\x48\x51\x1f\x65\x51\x09\x3d\xd2\x00\x27\x15\x85\xd4\xbc\ +\x92\x5c\xcd\x71\xb4\x59\xca\x57\x28\xc2\x3d\xc1\x6c\xa9\x25\x08\ +\x49\xdd\x8f\x5c\x11\x9f\xe5\x4e\x5a\x85\x22\x38\x53\x0d\xa9\x1e\ +\x19\x0d\x29\x01\xb3\x91\x80\xda\x7d\x7e\x09\x57\xe3\x9a\x75\xd7\ +\x76\x97\x94\xd4\x0b\xd3\x0d\x3c\xa8\xd7\x16\xff\x00\xd9\xd6\xa3\ +\x92\xa2\x00\xc8\x23\xd8\x64\x01\xf4\xa6\x3f\x1c\xc9\xb9\xb4\xa5\ +\x90\x12\x97\x39\x18\xfb\xa9\xe1\x3f\xc8\x7f\x1a\xf5\x94\xaa\xaa\ +\x90\x52\x3c\x7d\x5a\x5c\x3a\x92\x87\x6b\xd3\xc1\x9e\xb4\x96\x9a\ +\x69\x98\x9b\x86\xf7\x88\x52\xc8\x3f\x77\x9e\x07\xe3\xdf\xf2\xa7\ +\x54\x58\xe4\x7d\x91\x99\x68\x43\xfb\x06\xe2\xe0\x49\x07\x19\xc1\ +\x03\xe0\xf6\xf8\xac\x64\x5a\x24\x38\x13\x28\x20\x06\x5d\xfd\xb3\ +\x8b\x04\x05\x47\x4e\x70\x33\xed\xc0\xfe\x55\x63\x40\xb7\xc9\x94\ +\xc4\x59\x6c\xbe\xe3\x3b\x19\x52\x92\x3b\xa5\x44\x0c\x10\xaf\x62\ +\x40\x07\x3d\xb9\xac\xb8\x8c\x46\x44\x9c\x4d\xf8\x4c\x2a\x93\x6a\ +\xa2\xdb\x62\x2f\xa3\x58\x9a\x99\xc0\xfe\xaf\x6a\x68\x50\xe1\x52\ +\xde\xe1\x1c\xf7\x1b\x54\x39\xfc\xeb\xa8\x7a\x52\xcb\xcf\x36\x95\ +\x3a\xda\x42\xc6\x32\x12\x30\x07\xd3\xe2\xa9\x58\xaf\x3a\x99\x68\ +\x4c\x68\xca\x8c\x87\x0e\xe5\xa5\xb7\x02\xd2\xa3\xea\x7d\x2b\xa1\ +\x3a\x3e\x85\x38\xdb\x41\x28\xca\x4f\x73\x8a\xdf\xd1\x0b\x8b\x2e\ +\x26\xc7\x9f\xe9\x97\xfb\xd9\x2d\xb1\x6b\xd8\x42\xb6\x24\x67\x18\ +\xa7\x83\x83\x84\xd2\x66\xa0\xa9\xa4\x78\x8c\x8f\x4e\xd5\xb0\x3b\ +\x95\x03\x8e\x41\x19\xae\xd4\xda\x9b\xba\x39\xb1\x4e\x0a\xcc\x90\ +\xb0\x90\x96\x52\x07\xb5\x14\x32\xa0\xa6\x52\xae\xdc\x51\x5c\xb7\ +\xb9\xd4\x5b\x10\x8e\x95\x5d\xa0\xb9\xa2\xad\xd1\x0b\x98\x5a\x43\ +\x80\x82\x7f\xe3\x15\x4e\x17\xa8\x06\x3b\xa5\xf6\x47\x90\xf7\xc5\ +\x57\x9d\x2a\xb7\x3f\x2a\xcf\x6f\x59\x2a\x42\x32\xbc\x1c\xff\x00\ +\x7d\x55\x72\xa6\x3a\x4c\x50\xd2\xc8\x56\x05\x6f\x93\x54\x1a\x6b\ +\x99\xcd\xa2\x9e\x22\x9d\x9f\x22\x18\x95\x6e\x41\x23\x3f\x41\xe9\ +\x52\x6d\x3a\x13\xf6\x00\x78\xfa\xe2\x9a\x2e\xf6\xb7\x23\xac\xba\ +\xc8\xca\x09\xe4\x0f\x4a\x51\xa6\x66\x24\x66\x3a\xd4\x02\xb3\xc0\ +\x34\xca\xed\x54\xa5\x78\x95\xa0\x9d\x3a\xb6\x91\x9c\xad\x5b\xa7\ +\xda\xb3\x37\x75\x6e\xeb\x0d\xc8\x4e\x3b\xe0\x21\xe4\xb8\x36\x29\ +\xcd\xfe\x1e\xc0\x7d\xf7\x8d\xb8\xf7\xa6\x87\xb5\xa5\xb3\xf5\xc2\ +\x6d\x2a\xbd\x5b\x9b\xb8\xa8\x80\x98\x8a\x92\x80\xe9\x27\xb0\xdb\ +\x9c\xe4\xf7\xc5\x54\xe2\x2b\xad\xf5\x81\xfd\x04\x50\xa1\x06\x25\ +\xf5\xcd\x48\x36\x8e\x03\x2a\x6c\x29\x09\x1e\x98\x12\x1c\x27\xfe\ +\xaf\xd2\x99\xe7\x04\x27\xa6\xd7\xdd\x26\xe2\x48\xd5\xf2\x35\x03\ +\x8e\x30\xc1\x6c\xf8\xee\xba\xa9\x49\x52\x24\x24\x77\x28\x08\xc1\ +\xde\x38\x00\x11\xf1\x4a\xa7\x08\xc6\x37\xb5\xc5\xd5\xc5\x54\x6d\ +\xad\xac\x5f\x08\xd5\xf0\x18\x76\xe2\x87\xa7\xc7\x1f\xaa\xd0\x17\ +\x3c\x6f\x19\x8e\x92\x8d\xe0\xaf\xdb\xcb\xcf\xd2\x9c\x7f\xa6\x1a\ +\x65\x28\x63\xc7\xbe\x5b\xd9\x2f\xa5\x85\xb2\x97\x1f\x4a\x4b\x81\ +\xe2\x52\xd6\xd0\x4f\x3b\x8a\x55\x8c\x77\xda\x7d\xaa\x89\xd4\xf3\ +\x23\xc1\xbe\x75\x6e\xdf\x2d\x65\xa9\x97\x8b\x6b\x22\xda\xc6\xd2\ +\x57\x2f\xfd\x88\xb5\xfb\x30\x3e\xf6\x17\xc1\xc7\x6e\xe7\x8a\x71\ +\xe9\xcb\x51\xff\x00\xf6\xb3\x61\x75\xf8\xec\xbc\x5b\xd0\x50\x94\ +\xd9\x5a\x02\x8a\x09\x79\x5c\x8f\x63\xf3\xf3\x51\x56\x9c\x65\xb2\ +\xb3\x2d\x4b\x17\x35\x2b\x32\xed\x8b\xa9\x34\xf4\xbb\xc3\x96\x68\ +\x97\xcb\x6c\x8b\x8b\x7b\x82\xe2\xb7\x25\x0a\x75\x25\x3f\x78\x14\ +\x83\x9c\x8f\x51\xe9\xc6\x7b\xd3\x42\xb5\x35\x8e\x43\xd3\xbf\x52\ +\xde\x6d\xb7\x09\x11\x1b\x52\xdd\x66\x3c\x94\x38\xa4\x63\x23\x90\ +\x93\x9c\x64\x11\xf5\x04\x77\x15\x58\xd9\xa4\xcd\xb7\x0b\xae\x87\ +\xd0\x97\xb8\xda\x92\xcf\x71\xb5\x5c\xa4\xc3\x5b\x29\x05\xfb\x3c\ +\x95\x02\xa4\x21\xc7\x13\xc2\x82\xd6\xe1\xdb\xbb\x0b\x1f\x4e\xf8\ +\xe8\x98\x50\x27\xc0\xd3\xb3\xc6\xac\xb7\xb9\x3e\xcf\x60\x76\x22\ +\xad\x0c\x41\x0c\x48\x65\x0a\x69\x01\x4d\xbf\x95\x95\x02\x85\x24\ +\x77\x03\x27\x27\xd6\xb3\x53\x76\x95\x87\x4e\xbc\xa4\xb4\x5e\xbe\ +\xa3\xcc\x2e\xab\x2d\x76\x4d\x18\xe0\x66\xd7\x1e\xed\xaa\x12\xa7\ +\x31\x29\xf5\x25\x88\xc8\x4a\x54\x72\x70\x0a\x8e\x48\x09\x48\xe3\ +\x93\x56\xba\xee\x51\x63\xca\x83\x6f\x9d\x2a\x3b\x17\x09\xa9\x51\ +\x65\x8d\xfc\xba\xa4\x24\x15\xec\xcf\x24\x00\x73\xf4\xaa\x27\xa7\ +\x83\x0d\x74\x1f\x1f\xfc\x0b\x8f\xfe\x11\x75\x3d\xeb\xc3\xe8\xb2\ +\xda\x6c\x5a\xcd\x41\x41\x3a\x7e\xee\xcb\xef\xa9\x23\x24\x47\x74\ +\x16\x1d\x18\xfa\x38\x0f\xe1\x55\x93\xcc\xcb\x50\xa9\x28\xd3\x72\ +\x6f\x6b\x7f\x09\xbf\xe4\x94\x48\xd5\xba\x7d\x11\xae\x52\x1b\xbc\ +\x43\x53\x56\xb7\x14\xd4\xf5\x87\x46\x23\x2d\x23\xcc\x95\x9f\xdd\ +\x23\xe6\xa1\xf2\xfa\x99\x6d\x85\x17\x55\x5c\xa7\x48\x84\x60\x58\ +\x56\x1b\x49\x8b\x31\x2e\xba\xf2\xf6\x12\x5b\x52\x38\xd8\xbd\xe9\ +\x52\x40\x27\x9c\x55\x55\x1e\xdb\x26\x15\xca\xd7\xa5\xe4\x21\x41\ +\xcd\x76\xcc\x29\xd3\x40\x49\x23\xc5\x43\xeb\x7e\x60\xcf\xcb\x6a\ +\x48\x24\xfb\x53\xb6\xb3\x6d\xc9\x07\xae\x2c\xc7\x69\xc7\x5c\x54\ +\x78\x1b\x50\x84\x95\x13\x88\x89\xf4\x1f\x14\xe5\x1c\xab\x41\x13\ +\xc4\xce\x4a\xfb\x7f\x4d\xfd\x89\xed\xc7\xa9\xf6\xb8\x97\xed\x2e\ +\xd3\x33\xe0\x1b\x4d\xe5\xb9\x6a\x7a\x63\xaf\x84\x86\x54\xca\x1b\ +\x21\x20\xf6\xc9\x2b\xc6\x3e\x98\xef\x56\x1d\x8a\xed\x6f\xbd\x5b\ +\x5a\xb8\x5a\xe6\xc7\x9b\x15\xd1\x94\x3c\xc3\x81\x68\x57\xd0\x8e\ +\x2a\x9f\x9b\x3a\xd5\x79\xea\x67\x4a\xe6\x5b\xe5\x45\x9e\xc2\x62\ +\x5c\xca\x5d\x69\x61\x69\x0a\x11\xd9\xec\x47\xa8\xcf\xe1\x4f\xfd\ +\x01\x21\xb8\x3a\xc5\x23\xca\xdb\x7a\xba\xe6\x94\xa4\x76\x48\xf1\ +\x07\x03\xd8\x55\x26\xae\x87\x50\xab\x2e\x26\x56\xee\xbf\x08\x97\ +\x3f\xaa\x74\xd3\xd7\xb1\x64\x66\xff\x00\x6b\x72\xe6\x14\xa4\x18\ +\x89\x94\x82\xe8\x5a\x7e\xf2\x76\xe7\x3b\x87\x72\x3b\x81\x4e\x49\ +\xc9\x38\x03\x9a\xa0\x35\x56\xa6\xba\x6a\x8b\xc5\x8f\xed\x72\xd8\ +\x8c\xf4\x2d\x71\x15\xa3\x67\x66\x29\xf1\x62\x32\x99\x3e\x1a\x5e\ +\x79\x79\x24\x6f\xdc\x39\xc2\x52\x77\x80\x33\xcd\x74\x53\x0d\x06\ +\xc7\xcd\x17\xca\x86\x52\x9f\x16\x4f\xb0\xf1\x09\x0c\xb5\x9c\x64\ +\xfa\xd2\x67\x25\x2d\x60\x80\x31\x4b\x8e\x08\xe6\x91\x3c\xc0\x56\ +\x54\x38\xaa\xc1\xa6\xf5\x34\x4d\x34\xb4\x13\x00\x09\xc9\xf5\xa4\ +\xb3\x63\x64\x9e\x29\x72\x12\x94\xf9\x48\xed\x5b\x5f\x40\x2d\x53\ +\xf3\xe5\x62\x63\x0b\x94\x8f\x56\x2d\xb6\x93\x6c\x92\xfd\xed\x31\ +\xbe\xc0\xda\x0a\x9e\x2f\xfd\xc0\x9f\x9a\xe2\xad\x53\x72\xd3\x8d\ +\xea\xa7\x13\xa6\x5c\x71\xa8\x2a\x59\xdc\x1d\x3f\xb3\x3c\xfe\xee\ +\x41\x56\x09\xf7\xae\xfa\xea\xbe\x93\x87\xaa\xb4\xec\xab\x3c\xf2\ +\xf8\x8c\xf8\x1b\xfc\x25\xed\x51\xda\x42\x87\x3e\xd9\x1d\xaa\x86\ +\x73\xa4\x9a\x62\xc6\xb5\x18\x36\x64\x2d\x7d\xbc\x49\x07\xc4\x3f\ +\xc7\x8a\xc5\x89\x4e\x73\xd2\x2d\xdf\xe4\x5a\x85\x55\x87\x93\x95\ +\xce\x74\xbb\x5a\xda\x96\xe2\x1d\xb7\x87\xdf\x2b\x38\x4b\x69\x41\ +\x3b\xd5\xec\x90\x29\xb6\x6e\x92\xd4\xc2\x40\x6d\xeb\x1d\xc1\xa5\ +\x67\x01\x0e\x30\xa4\x63\xfe\xd7\x6a\xbf\xf5\x45\x9e\x2c\x7b\x6a\ +\xe3\xcb\x65\xb6\xa3\x23\x2a\x05\x23\x69\x6c\x8f\xde\x49\x1d\x8d\ +\x55\x77\xcd\x7a\xa6\x9e\x31\xe1\xc8\x5d\xdd\x49\x4e\x13\x22\x40\ +\x52\x55\xff\x00\x58\x67\xcd\xf5\xe2\x95\x1a\x55\x29\x3c\xb2\x36\ +\x54\xc5\xac\x46\xb4\xe2\x37\x47\xb5\x45\xd3\xd6\xd2\x97\xe5\x37\ +\xf6\xd7\x9b\x0b\x96\x73\xc3\x69\xdc\x30\x81\xef\xdb\x27\xdf\x03\ +\x1e\xf4\xc7\x72\x90\xdc\xe9\xec\xbe\xb6\x9c\x6a\xda\x95\x12\x95\ +\xa8\x60\xad\x23\xef\x63\xdc\xfc\x57\xaf\xb4\xe5\xd1\xe7\xee\x17\ +\x0b\x82\x5d\x79\x78\x27\x68\x2b\xe7\xb0\x1c\x71\xf0\x00\xa7\xa4\ +\x68\x89\x8d\x36\xdc\x8b\xf3\xff\x00\x65\x8c\x96\xc2\x92\xd1\x58\ +\xde\x12\x7b\x25\x5e\x89\x27\x9e\x3d\x2a\x54\xd4\x6f\x14\xf5\x7e\ +\xb4\x23\x87\xc3\xb4\xe6\x44\x6e\x46\x19\x95\x21\x70\xbc\x64\xc5\ +\x71\xc5\x16\x43\xbc\xa8\x23\x77\x1b\x8f\xa9\xc6\x33\xf3\x5d\x09\ +\xd0\x2b\xdc\x49\xf2\x61\x3b\x1e\x57\x8b\x30\xc2\x6e\x3d\xc1\x95\ +\x0c\x29\x0a\x6b\xca\x83\xf2\x0a\x7d\x7d\xc5\x52\x9a\xe2\x74\x59\ +\x0a\x8c\x21\xb6\xcb\x48\x65\x3e\x1b\x69\x6d\x20\x00\x90\x06\x3e\ +\xbf\x5a\x9b\xfe\x8a\x8f\x1f\xe9\xd5\xc1\xa5\x94\x80\xe4\x1d\xd9\ +\x50\xec\x43\x89\xc7\xf3\xc7\xe3\x48\xc6\xd3\x5c\x2c\xcf\x91\xab\ +\x03\x51\xba\xa9\x2e\x67\x5b\x82\xd2\x23\x07\x83\x45\x6b\xc0\x1e\ +\x51\xdb\x9e\xe7\xd7\x1c\x53\x16\xa4\xb6\x34\x82\x64\xc6\x65\xa0\ +\xc1\x4f\x88\xb4\x21\xb0\xa0\xbc\x9e\x4a\x49\xec\x3d\xc0\xf7\xf8\ +\xa9\x1c\x21\xb1\xa0\xa0\x82\x49\x47\xe3\x5a\xe5\xc6\x5b\xc9\x75\ +\xb4\x3a\x5b\x5f\x2a\x6f\x27\x09\xc9\xee\x0f\xc1\x1f\x85\x72\x2d\ +\x74\x75\xe3\x2c\xac\xae\x11\x65\x87\x71\x43\x49\x7d\xb7\x5d\x70\ +\xb7\xb9\x58\x4e\x32\x9c\x9f\x5c\x76\xc1\x3f\x95\x7b\x74\xd0\x59\ +\x82\x96\xd8\x91\xfb\x2d\xa0\x05\x31\xc9\x4e\x47\xa8\x1d\xf3\xeb\ +\x8a\x9a\x16\x03\x72\xd6\x10\xde\xf6\x52\x72\xf2\x14\x13\x96\xbd\ +\xf0\x3d\x52\x4e\x2a\x47\x62\x4c\x2f\xba\xd2\x52\xb6\xf0\x49\xcf\ +\x73\xee\x3e\x71\x55\x85\x24\xf4\x63\x9e\x2a\x70\xd5\x14\x5c\xed\ +\x0b\x70\x8c\x94\xc9\x6d\xbf\x15\x0c\x84\xa0\x06\x89\x19\x23\xe3\ +\x9c\x11\xf9\xd2\x17\x2d\x2e\x43\x49\x5c\xb6\x65\x3e\xea\x94\x3c\ +\x13\x90\x48\x1e\xb9\x1e\x9d\xbd\x79\xae\x9e\x30\xa3\xc8\x28\x25\ +\x2d\x00\x46\x42\x47\xef\x1f\x9f\xf5\x9a\xd1\x3f\x48\xd9\x26\xc7\ +\x5b\x1f\x62\x43\x24\x1c\xe1\xb2\x40\xe7\xbe\x47\xaf\xad\x12\xc2\ +\x4b\x78\xb2\xd0\xe9\x34\xbd\xf4\x73\x73\xca\x92\x72\x11\x18\x04\ +\x25\xc1\xb5\x41\x24\xee\x18\x39\xc8\xf5\x39\xe3\x3d\xab\x6c\x49\ +\x57\x24\x20\xa8\xdb\x1f\x4b\x9e\x38\xf0\xc0\x5f\x07\x00\x8e\x31\ +\xce\x06\x7b\x9f\x8c\x55\xd9\x75\xd1\x01\xb6\xc7\xd8\x5c\xf0\xb0\ +\x0e\x06\x3f\x21\xff\x00\x95\x47\x67\x69\xc5\x31\xbd\x4b\x8e\x94\ +\x85\x61\x1b\x92\x0e\x4f\x3d\xbe\x9d\xeb\x34\xe9\xd4\x86\xe8\xd3\ +\x0c\x55\x29\xad\x0a\xc5\xc8\xf7\xa7\x5a\xf0\x5e\x0c\x23\x78\x2b\ +\x74\x00\x4a\x46\x14\x32\x33\xc6\x38\xf6\x35\x82\xf4\xf3\x4e\xc9\ +\xcc\x89\x2e\xba\xa2\xb5\x06\xb7\xab\x6a\x06\x4e\x71\xc7\x07\x80\ +\x07\xf2\xa9\xd4\xbb\x6a\xd8\x65\x69\x4c\x72\xfa\x57\x94\xa8\x2d\ +\x38\x00\xe7\x24\xa8\xfb\x7d\x3e\x29\x13\xd1\xdb\x53\x4b\x4c\x72\ +\x92\x55\x80\xa2\x3d\xbf\xf2\xf7\xa4\x39\x49\x6c\x68\x55\x13\xd8\ +\x8e\x38\xcb\x71\x5f\xfb\x34\x76\x5a\x68\x38\x47\x88\xa6\xbc\xa5\ +\x2a\xce\x70\x7f\xb5\x93\xeb\x59\xb1\x6e\x2a\x7c\x3b\x32\x3b\xeb\ +\xdd\x92\x86\x5b\x40\x52\xb2\x3f\x78\x9c\xf1\x9c\x7a\xd4\x91\x98\ +\x28\x2c\x78\x88\xda\xf3\xe5\x01\x28\x0d\xa7\xcb\x91\xea\x4f\x6a\ +\x72\xb5\xdb\x84\x73\x94\x21\xb4\x12\x09\xc2\x07\xaf\xa7\x34\xbd\ +\x59\x57\x51\x24\x37\x59\xed\xaa\x43\x0a\x43\x81\xad\xff\x00\xf0\ +\x4d\x04\x7d\xc2\x7d\x33\xea\x7e\x6b\xcd\x73\x6b\x2d\x68\x8b\xb3\ +\xce\x20\x94\xb7\x11\xce\x0f\xb6\xde\xd5\x34\xb4\x5b\x5f\x59\x0e\ +\xed\x04\x81\xe5\xdc\x30\x09\xa4\xdd\x4e\x65\x0a\xd2\x53\xa1\xa9\ +\x29\x52\x5e\x65\x48\x71\x25\x45\x20\xa4\xf0\x46\x47\x23\x8f\x6a\ +\x74\x68\xda\x39\x99\x92\x55\xfa\xe9\x23\x92\x74\x8d\x95\xfd\x4b\ +\xa3\x66\xc0\x45\xdd\xc6\xee\x16\xc4\x87\xe0\x42\x75\x25\x41\xe4\ +\x14\xf9\x83\x67\xba\x54\x9c\x13\xec\x47\xd2\xa1\x53\x63\x48\x83\ +\x7c\x75\x2f\xb4\xb6\x9e\x52\xb2\xe6\xe4\xf6\xcf\xde\x18\xf9\x39\ +\xa9\x5c\xd3\x2f\x4a\x6b\x3b\xad\xbe\x13\xeb\x71\xfb\x5c\xa5\x16\ +\x55\x9f\x32\xd2\x85\x03\xb4\xe3\xdd\x2a\x20\xfd\x4d\x49\xe6\xdb\ +\xed\x57\xab\x95\xc6\x59\x77\x88\xef\x86\xe3\x15\x73\xfb\x32\xe6\ +\x52\x09\xf5\x21\x27\xf9\x57\x5e\x15\xa5\x4e\xa5\xd2\xbc\x65\xaa\ +\xf8\xd8\xc8\xe8\xd3\xab\x04\xdb\xb3\x8f\x6f\xc8\xd1\xa4\x5b\x6c\ +\x37\x21\x6d\x24\xa1\x68\x1b\x5d\x4a\x53\x95\x14\x9f\x6c\xf0\xa0\ +\x06\x46\x3d\xbd\xea\x40\xe3\x0b\x7e\x32\x98\x88\xfa\x6d\xef\x6c\ +\xc3\x5b\x1b\xdc\xd8\xe3\x70\xcf\xf7\x08\x27\x9f\x4f\x6a\x6b\x5b\ +\x4c\xda\xe2\x96\x5a\x01\x32\x49\x21\x2b\xcf\x74\xf7\x19\x1e\xa3\ +\xe6\xb1\x8b\x76\x99\x16\x64\x55\xb8\xe7\xf5\x45\x45\x0b\xf4\x71\ +\x0a\x18\x29\x27\xd8\x91\xd8\xfa\xd2\x2b\x46\x51\x86\x6b\x6a\xc7\ +\xd3\x9a\xab\x5a\xd0\x92\xb2\xfb\x09\x51\x2a\x54\x2d\x42\x88\x57\ +\x86\x19\x86\xe9\x50\x27\x24\xa5\x2b\x57\xb2\x55\xdb\x24\x72\x0f\ +\x63\x5d\x5d\xd1\x75\xb1\xf6\x26\xc2\x46\xde\xdd\xfb\x8a\xe6\x6d\ +\x40\xeb\x1a\x96\x04\x78\x56\xe4\xb6\x5c\x69\xc0\xec\x17\x15\xc9\ +\x69\x59\xf3\x32\xaf\x74\xe3\x91\x9f\x6c\x57\x4b\x74\xcd\xa6\xe2\ +\xb4\xca\x77\x02\x43\x69\x07\x1e\xbc\x72\x6b\xb3\xd1\x52\x94\x5a\ +\x8c\x79\x9e\x53\xa6\x24\x9d\x65\x3b\x59\xf3\x2e\xf8\x2b\x42\x90\ +\x12\x71\x58\x4b\x80\x87\x3c\xed\x1c\x2a\x91\xdb\xc0\x2c\x83\x9e\ +\x3b\xd3\x8c\x10\xb2\x4a\xca\x8e\xdf\x40\x6b\xab\x2b\xc1\xb6\x99\ +\x95\x35\x35\x66\x8d\x50\x9d\x71\x9f\xd8\x3c\x9c\x7b\x1a\x29\xc1\ +\x48\x42\x8f\x99\x20\xd1\x49\x94\xd4\x9d\xc6\xc6\x0e\x2a\xd7\x2b\ +\xce\x9d\xa4\x33\xa2\xed\xea\x6d\x1f\x77\xc4\xc7\xff\x00\xb8\xaa\ +\x96\x89\xef\x1e\x12\x85\x7e\x55\x5c\xe8\x3b\x93\xcb\xd2\x70\x62\ +\x45\x47\x3f\xb4\xca\x87\x3d\xdc\x55\x4d\xe0\x25\xc6\x98\xcb\xcb\ +\x0a\x56\x3b\x57\x42\x54\xd6\x54\xe4\x73\x28\xd4\x76\x4a\x23\x92\ +\x67\x29\x6a\x0d\x38\x80\x73\xf8\xd6\xa9\x56\x64\x38\xe0\x90\xc1\ +\xf0\x96\x39\xc0\xf5\xa2\x13\x8c\xa5\x45\xe7\x56\x94\x81\xc7\x7a\ +\x71\x8f\x2e\x3c\x80\x7c\x27\x01\xf6\xc1\xac\xd2\x72\xa6\xef\x04\ +\x6b\x8a\x8d\x45\x69\xb2\x0a\xab\x24\x0b\x7e\xa1\x7e\x60\x92\xe4\ +\x9b\xcc\xa4\x04\x9f\xb4\xcb\x2e\x3a\x96\x81\x52\x82\x10\x92\x7c\ +\xa8\xc9\x27\x81\xe9\xcf\x6a\x79\x8d\x12\x63\xb8\x0a\x46\xc1\xea\ +\x4d\x73\xfe\x9c\x76\xf5\x65\xd4\xbd\x5b\xd7\x0f\xfe\xa4\x9d\x76\ +\xb1\x3e\xa0\xdb\xef\x40\xdc\xe2\x5d\xf3\x20\x16\xd4\x55\x96\xd1\ +\xb3\x72\x4a\x47\x70\x47\x3c\x54\xf6\xfb\xd5\x1d\x4d\x61\xd0\x16\ +\x4d\x43\x74\x6e\xc0\xc4\x8d\x51\x2a\x38\xb5\xa4\xf8\x9e\x04\x08\ +\xee\xa0\x2b\xc4\x90\xa2\x41\x59\x4a\x4a\x49\xc6\xd1\xc9\xf6\xa9\ +\x58\x96\xa3\x64\x8c\x71\xe1\xbb\xca\x57\x5f\xdd\x8b\x46\x5d\xb8\ +\x33\x18\x2d\x3c\xac\x77\x34\x8b\xef\x24\x28\x0a\xaa\xe1\xf5\xc5\ +\xd6\x34\x86\xb6\x7e\xe6\xab\x5d\xe6\x5e\x9d\x5b\x29\x8b\x2a\xdb\ +\xb9\x11\xe7\xa5\xe3\xb5\x07\x04\xab\x6e\xd3\xf7\xb9\xfa\x76\xad\ +\x7d\x32\xea\x5c\xfb\xce\xb8\xfe\x8b\x5c\xa7\xd8\xae\xa2\x45\xb8\ +\x4e\x66\x55\xa4\x29\x28\x65\x7b\xb0\xb6\x16\x14\xa5\x64\x81\x93\ +\x9c\xfb\x67\xbf\x17\xa3\x55\xc9\x75\xb7\x26\xa5\x5a\x59\x96\x5e\ +\x7f\xd1\x7b\x5b\x17\xbe\x2a\x6b\xdb\x8f\x2c\x7b\x73\xde\xa8\xeb\ +\xd2\x46\xb2\xfd\x21\x62\xe8\x9b\xd3\xd2\x5c\xb0\x41\xb2\xaa\x61\ +\x84\xd4\x85\xb4\x87\xde\x2a\xfb\xcb\x28\x20\x9c\x05\x0c\x73\xc6\ +\xdf\x93\x9a\xfa\xe9\xa9\xf5\x54\x7e\x84\xeb\x3b\x53\x37\xb7\x96\ +\xdd\x8f\x50\x1b\x7a\x24\x3e\x54\xb7\xcc\x62\xe0\x09\x42\x57\x9c\ +\x82\x14\x33\x93\x9e\x09\x1e\xd8\xcc\xf4\xa8\x39\xe2\xd2\x83\x4d\ +\x76\xf9\x1d\x71\x1f\xfa\x84\xfd\x29\x35\xcc\xf9\x00\xf4\xa6\x3d\ +\x2d\x2e\xe1\x68\xe9\xfa\x67\xea\x49\x8c\x4c\x7a\x24\x45\x48\x79\ +\xd8\xcc\x96\xd2\x5b\x4a\x4a\x80\x09\x2a\x3c\xed\x1e\xfc\x9a\xa6\ +\x6c\x1d\x70\xba\xdd\xaf\x3a\x69\xc9\xb2\xb4\xda\xe2\x6a\x09\x8a\ +\x87\xfa\xb2\x21\x59\x99\x6e\x25\x7b\x1a\x53\x8a\x2a\x21\x5b\x8e\ +\x33\xe5\x1c\x11\xda\xa2\x3a\x4f\x51\xd5\x71\x11\x84\x12\x7b\xb2\ +\xf6\xc7\x00\x7b\xf1\x4b\xc4\x54\x96\x86\x06\x0e\x2b\x9f\xec\xdd\ +\x55\xd5\x53\x34\xec\x6b\x7a\xd9\xb7\xa7\x56\x2b\x55\x8b\x13\x8d\ +\x86\x54\x1b\x42\x07\x2a\x77\x69\x56\x78\x00\x8e\xfe\x9d\xa9\xd7\ +\xaa\x7d\x58\xbd\xe8\x9b\xa4\x89\x2c\x6a\x1d\x23\x75\x8f\x16\x6a\ +\x59\x7e\xcc\xc3\x2e\x19\x4d\xb2\x54\x79\x53\x81\xc2\x90\xe8\x03\ +\x90\x40\x1f\x1e\xf7\xa9\x37\xa5\x84\xc3\x11\x4d\x45\xc9\xec\x5b\ +\xe9\x0d\x2e\x53\x91\x1a\x96\xca\xe4\x34\x01\x71\xa0\xb0\x56\x90\ +\x7b\x12\x3b\x8f\x4a\x5a\xd4\x62\x1b\xda\xa3\xc5\x50\x73\x6f\x33\ +\x34\xef\x59\x7a\xcd\x7d\x80\x1a\x32\xe0\x59\x22\x3e\xc8\x75\x3b\ +\x93\xb9\x31\x9b\x23\x23\x23\x22\xa4\x48\xea\x56\xa2\x53\xdd\x25\ +\x41\x4c\x1c\x6a\xd6\x9c\x5d\xcb\xf6\x47\x82\x94\x34\xa1\xe1\xf9\ +\xbc\xbc\xac\xf7\xcf\xa5\x2d\xd4\x93\x2f\x0a\xd4\xd3\x77\xed\xfa\ +\xd8\xb8\x50\x84\xa1\x24\x24\x56\xb0\x54\x49\x04\xd5\x1d\xac\x7a\ +\xbb\x7a\xd3\x1a\xb2\x13\x49\xd4\x3a\x4a\xfb\x11\xfb\xb2\x20\xc9\ +\xb7\x41\x61\xc0\xfc\x56\xd4\xa3\x85\x78\xbe\x21\x49\x58\x03\x04\ +\x10\x39\x3d\x87\xa6\xb8\x53\xb5\xb5\xcb\xf4\x95\xd4\x56\xf8\x37\ +\xf8\x0c\xb7\x12\xd4\xdf\x86\x87\xa2\xad\x6d\x86\x54\xa4\xa9\x29\ +\x09\x0b\x18\x58\x2b\xe5\x7e\xb8\xec\x2a\x12\x7b\xb2\xd2\xc5\xc2\ +\xf6\x8a\xd6\xf6\x2f\x26\xdf\x61\xd4\x95\x34\xf2\x1c\x48\x51\x49\ +\x28\x50\x20\x10\x70\x47\x1e\xa0\xfa\x56\x69\x50\xdb\xc1\xcd\x73\ +\x76\x85\xea\x1c\x8d\x3b\xd1\xdf\xb5\x5b\x6c\x96\x86\xaf\x37\x6d\ +\x52\xe5\xb6\x33\x6d\x36\xb4\x47\xf1\x96\x13\x97\x96\x37\x13\xe9\ +\xd8\x28\x7a\x63\x81\x52\x19\x9d\x48\xd5\x9a\x7e\x4e\xb2\xd3\x97\ +\xa1\x69\x93\x79\xb2\xd9\x4d\xda\x0c\xb8\xac\xad\x0d\x3c\x8e\x01\ +\x0b\x6d\x4a\x38\x21\x4a\x03\x83\xc8\xa9\x4a\xe8\xaa\xc6\x42\xc9\ +\xb2\xe9\x74\x05\xe4\xa7\xbd\x64\xd9\x2a\x6f\x6f\xad\x52\x56\x0e\ +\xa6\x6b\x13\xa8\xf4\x2a\xee\xf1\xec\xea\xb5\x6b\x26\xdd\x2c\xb1\ +\x1d\xb7\x03\xd1\x76\xa5\x24\x12\xb2\xac\x2b\x3b\xc1\x23\x68\xf5\ +\x1e\x99\x2e\x9f\xa3\xb1\x79\x5a\xa3\xa9\xde\x3a\xdc\x3e\x1e\xa9\ +\x90\x12\x16\x49\xc2\x77\xaf\x00\x67\xd2\xac\xdd\x90\x43\x11\x19\ +\xcd\x25\xcf\xed\x72\xc7\xb8\xc5\xde\x92\x95\x0e\xf5\x11\xbe\x59\ +\x50\x5a\x51\xd9\x92\x7b\x55\x88\xe2\x12\xea\x4f\xbd\x34\xdc\x63\ +\x05\x24\x82\x29\xd4\xaa\x58\x6d\x48\x5c\xe2\x0f\xd2\x59\x9d\x71\ +\xf6\x81\x6c\x81\x65\x92\x9b\x52\x8e\x54\xf4\x70\x57\xe3\x9f\x65\ +\x63\xb0\x1e\xc7\xd7\x9f\x6a\xa9\x74\xc7\x4d\x35\x35\xd4\x29\xf9\ +\x6c\x8b\x73\x29\xed\xf6\xa4\xa9\x25\x7f\x41\x8a\xfa\x07\xa8\x2c\ +\xc9\x75\x45\x41\x27\x35\x0d\x9f\xa6\x0b\xab\xf3\x24\x91\xf3\x59\ +\x65\x47\x11\x52\x76\xd3\xc4\x21\x5b\x87\x1b\x24\x72\x2d\xd7\x41\ +\x6a\x02\xb4\x46\x8c\x84\x48\x6c\x01\xc8\x1b\x02\x4f\xbe\x69\xbd\ +\x1a\x32\xea\x64\x98\xf3\x58\x97\x35\xd0\x32\x96\x9a\x51\xf0\xd0\ +\x33\xdd\x4b\x35\xd6\x92\xb4\x93\x63\x3e\x5c\x53\x4c\xdb\x03\x2c\ +\x20\x82\xad\xa3\xd4\x66\x99\x53\xa3\xea\x25\xb9\x68\xf4\x84\xa1\ +\xba\x4c\xe5\x6b\xae\x81\xbb\x21\x45\x61\x70\xd3\x9e\xc8\x42\xc9\ +\xc0\xfa\xe2\xa4\x1d\x1b\x65\x5a\x67\xa8\x71\xd6\xb9\x49\x79\x32\ +\x19\x53\x0b\x00\x14\xf7\x20\xe4\x67\xd0\x10\x2a\xde\xbe\xdb\xa2\ +\x21\xb2\xae\x30\x7b\x1c\xf7\xa8\x02\xa1\x32\x9d\x47\x0d\xc8\xec\ +\x27\xc7\x32\x02\x77\x84\xe1\x5b\x7d\x46\x7f\x2a\x45\x7a\x31\x54\ +\x65\x79\x2d\x87\x60\xf1\x73\x9e\x22\x2e\xdc\xce\xa1\xb1\x3a\x5d\ +\x8c\x84\xac\x80\xb4\xe0\x0c\x9c\xe4\x7f\xac\xd2\xd7\x99\x56\xf3\ +\xcf\xec\xf1\xfe\xb9\xa6\xed\x1c\x80\xf5\xb1\x90\xf8\xc3\x88\x18\ +\x3c\x7f\xaf\xc2\xa4\x25\x05\x0a\x2d\xbb\x8d\xa7\x80\xbf\x43\xf1\ +\x5e\x7e\x31\xba\x3d\x14\xa5\x69\x08\x43\x01\xe4\x6c\x70\xf9\xd2\ +\x0a\x4a\x88\xe7\x1f\x51\xdf\x8f\x4a\xf1\x88\xea\x8a\xc6\xd7\x4b\ +\xc8\x59\x23\x12\x5a\x1b\x93\xc7\xa9\x1e\x87\xf9\xf3\x4b\x7e\xcc\ +\xa4\xb8\x36\x1f\x32\xbe\x3b\x7d\x29\x54\x55\xad\xa1\xe6\x3c\x91\ +\x8e\x78\xff\x00\x42\xaf\x15\xae\xa5\x5c\xb4\x3c\xb7\xc9\x74\x2b\ +\x6e\x03\xc9\xc8\xf3\x27\x9c\xfc\x91\xdc\x53\xfb\x0f\xb6\x5a\xf2\ +\xe3\x70\xc7\xaf\x7a\x65\x92\xcc\x77\x16\x14\xa6\x46\xff\x00\x45\ +\xa7\xca\xa1\xf8\x8e\xf5\x93\x29\x2b\x40\x6c\xad\xd5\x03\xc6\x4a\ +\xb3\xc5\x35\x4a\xc2\x25\x14\xf5\x16\xc9\x79\x4a\x56\xd4\x05\x67\ +\x39\xc9\x38\x14\x95\xe8\xee\x48\x3e\x7f\x0d\x1c\xfd\xe4\x8d\xc4\ +\x7b\x71\x4a\xa1\x42\x61\xa4\xf0\xd2\x4a\x7d\x77\x1c\xe7\xe4\xd2\ +\xf0\x50\x1b\xda\x9c\x04\xf6\xc2\x7b\x51\x6b\xee\x56\xf6\xd8\x8b\ +\xb9\xa7\x58\x71\x68\x5b\xac\xa9\x64\x02\x32\xea\xb8\xcf\xc2\x7d\ +\xa9\x24\xad\x25\x09\xc5\x38\x95\x21\xbd\xaa\x56\x4a\x52\x00\xcf\ +\x1e\xc2\xa5\x6b\x0a\x3c\xed\x01\x5d\xb2\x6b\xc0\xd0\x1f\x7c\x67\ +\xdf\x03\x19\xa5\xba\x30\x7c\x87\x46\xb4\xe3\xcc\x89\xb3\xa5\xdb\ +\x68\x6c\x42\x01\x40\xe0\x01\xfb\xa3\xd2\x96\x46\xb0\xb2\xc1\xce\ +\x01\xe7\x22\xa4\x29\x28\xdd\x8f\xe0\x2b\x05\xa1\x64\xe7\x01\xb4\ +\xfb\x9e\x4f\xe1\x54\x54\x60\xb9\x03\xaf\x37\xbb\x1a\x94\xc8\x40\ +\x4a\x10\x82\x54\x79\x00\x76\x03\xe6\xa2\x7a\xed\x9f\x16\x1a\xa3\ +\x24\x95\xa9\xd5\x24\x15\x27\xbe\x77\x0e\xdf\x02\xa6\xb2\xbf\x64\ +\x85\x25\x03\x69\x3f\x78\xab\xb9\xfa\xd4\x79\xd8\x89\x7a\x4a\x9d\ +\x74\x12\x12\x9e\xdd\xf9\xa4\xd7\x8d\xe3\x64\x32\x8c\xac\xf3\x33\ +\x8f\xfa\x99\xa5\xae\xfa\x73\xa8\x92\x1e\x94\xd3\xf3\x62\x5c\xde\ +\x72\x44\x69\x0c\xb0\x7f\xda\x16\xa3\x90\xc1\x09\xec\x42\xb3\xc7\ +\x63\x48\xa4\x4b\x95\x09\x6f\xef\x07\xc4\x52\xc3\xb2\x22\xf0\x76\ +\x38\x78\xf2\x91\xf1\x80\x47\xe5\x5d\x73\x73\xb3\x19\xd0\xde\x88\ +\x48\x4a\x8a\x4e\x17\xec\x7d\xc7\xcf\x7a\xa0\x3a\xab\xa3\xdb\xd3\ +\x32\x17\x7d\xb9\x38\xd4\x7b\x73\x48\x25\xb8\xed\x24\x85\x49\x7b\ +\x38\x08\xcf\xf1\xfc\x0d\x3f\x0d\x55\xb9\x24\xd6\xb6\xb2\x17\x89\ +\x6f\x27\x57\x6b\xdd\xae\xd2\x1e\xd4\x37\xe6\xb2\xc0\x53\x72\x52\ +\xeb\x83\x72\x92\xe3\x64\x14\x63\xd8\xfb\x1a\x7b\xb7\xd8\xe5\xa1\ +\x68\x2b\x69\x67\x1c\x6e\x03\x9c\x1f\x4a\xd9\xa0\xf5\x0d\xb2\xea\ +\xe7\xda\x11\x21\xa6\x54\x80\x0b\x8c\xbc\xe0\x4a\x90\x7d\x7b\xf7\ +\x1f\x35\x76\xe9\xb8\xf6\xeb\x8c\x64\x00\x1b\x24\xf2\x0a\x48\x20\ +\xfe\x35\xe8\xf0\xf4\x28\x4e\x9e\x49\xbd\x4f\x31\x5f\x13\x56\x35\ +\x1c\xb6\x65\x6b\xa5\xb4\x7c\x74\xdc\xcc\xc0\x87\xd2\xea\x95\xb9\ +\x45\x47\x85\x1f\x7f\xaf\xf9\xd7\x42\xe8\x68\x31\xe2\x30\xd9\x70\ +\xe5\x40\x53\x65\xb2\xc8\xdb\x6f\xa5\xb0\x81\xdf\x82\x2a\x7f\x67\ +\xb5\xc5\x8e\xd2\x4a\xc0\x27\x1e\xb5\xbf\x0f\x84\xa7\x85\x8b\xb7\ +\x33\x25\x4a\xd5\x2b\xcf\x34\x9d\xd8\xfb\x18\xef\x65\x2a\x6f\xee\ +\x8a\xc5\xfb\xd1\x64\xf8\x6d\xb7\xdb\xbd\x64\xdc\x86\xda\x6f\x09\ +\x1c\x0a\x8f\x5c\x64\x9f\x19\x6b\x09\x18\x1e\x95\x34\xe9\x29\xb7\ +\x99\x68\x5a\xa5\x57\x05\xd5\x7a\x92\xdb\x5d\xcd\x12\xf0\x14\x36\ +\xab\xd8\xd1\x51\x38\x8f\xac\x20\x38\x95\x6d\x57\xd6\x8a\xa4\xf0\ +\x69\xbb\xc5\xd8\xb5\x3c\x6b\x4a\xd2\x57\x21\x9d\x33\x8b\x39\xcd\ +\x3d\x13\xec\xe0\x84\x9d\xfe\x6f\xfa\xea\xab\x16\xd8\xcc\x86\x41\ +\x12\x5c\xdc\x7d\x78\xed\x4c\x7d\x33\x4a\x63\xe8\xa8\x29\x40\x4e\ +\x47\x88\x09\x3f\xfc\xc5\x53\xcb\xcf\x24\xa8\xec\x39\x34\xf4\xdc\ +\x95\x91\x9a\x9a\x51\x8a\x6c\x41\xa8\x4a\x50\xe2\x42\x57\x84\x9f\ +\x4c\xd2\x0b\x64\xe5\x46\x92\x97\x1a\x59\x29\x07\xcc\x33\x58\x5d\ +\x1d\xf1\x64\x60\x9c\xed\x14\x89\xa6\x5c\x65\x4a\xc0\x38\x3c\xe4\ +\xd3\x92\xd2\xcc\x5b\x96\xb7\x43\x03\xfa\x31\x4b\x87\xaf\x22\xb7\ +\x79\x38\xd5\xef\x97\x54\xaf\xb2\xff\x00\xb9\x79\x51\xc6\x37\xf9\ +\xfe\xf7\x7f\x2d\x39\x5c\x34\x82\x6f\xda\x2f\x4d\x69\x65\xdc\x5f\ +\x8b\x3b\x4f\x26\x32\xad\xf7\x36\x1b\x1b\xda\x75\x84\x25\x21\x7b\ +\x09\x23\x07\x19\xdb\x9e\xf8\xe7\x8a\x70\x65\xc7\x8b\x9c\x8f\x2d\ +\x4a\xb4\x74\x55\x2d\xd5\x48\x5a\x30\x3e\x69\x15\x29\x53\x84\x5b\ +\xb1\x6a\x71\x73\x96\x5e\xdf\xec\x6f\xbb\xe8\x9b\x96\xa2\xd0\x97\ +\x6d\x39\xae\x35\x22\x6f\x2d\x4e\x42\x3c\x37\x63\x5b\xd3\x10\xb0\ +\x52\x77\x05\x01\xb9\x59\x3b\x82\x4f\x27\x1c\x63\x1c\xd3\x7e\x8b\ +\xb1\xea\x7b\x36\x1a\xbc\xea\xd6\xef\x31\x1a\x63\xc1\x69\xbf\xd5\ +\xa9\x61\x79\xc8\xc2\x94\xb0\xb3\xb8\x80\x08\xec\x33\x9c\x9a\xb0\ +\xee\x8e\x06\xe1\xa8\x77\xf4\xa6\x46\x90\x56\xa4\x23\x3d\xeb\x36\ +\x1d\x75\x5b\x35\xd7\x84\x54\xd5\xb7\x21\x9d\x4e\xd1\x37\xc7\x64\ +\xb1\xd4\x0d\x08\xff\x00\x85\xab\xad\xb1\x15\x1d\xb6\x14\x84\xa9\ +\xb9\x8d\x28\xf2\x85\x6e\xe3\x70\x0a\x51\x07\xd4\x80\x3d\xb0\xd3\ +\x6c\xe9\x64\x1b\x97\x43\xdf\xd2\xf2\x1e\xb9\xda\xe6\xdd\xde\xfb\ +\x74\xe9\x13\x59\x41\x7c\x4a\xde\x09\x2a\x42\x55\xb4\xa7\xca\x00\ +\x01\x5d\x8e\x73\x92\x6a\xeb\x68\x78\x51\xc0\xed\x81\x4c\x77\xb7\ +\x49\x4e\x32\x72\x4e\x69\x54\xe3\xc4\x99\x35\x68\xc2\x0b\x37\x76\ +\xc6\xbd\x2d\x6b\x96\x8d\x30\x6c\xd7\xfb\x9b\x57\x92\xe3\x4a\x65\ +\xc7\x51\x18\x30\x95\xb6\x53\xb7\x6e\xd0\xa3\x8e\x33\xce\x7d\x6a\ +\x31\xa4\x7a\x7f\xa8\x74\x64\x78\xd6\xbb\x76\xb6\x54\x8d\x37\x11\ +\xe5\x2d\x98\x12\x2d\x88\x53\xc9\x6d\x4a\x2a\xf0\xfc\x7d\xfd\xb2\ +\x4f\x3b\x73\xed\x8e\xd5\x31\xb3\x3d\x96\x53\xee\x9a\x77\x7d\x21\ +\xc6\x0d\x44\xe3\x92\x63\xa1\x08\xd4\x82\x7c\xd1\x52\x5b\x3a\x4f\ +\x1a\x1f\x59\x5d\xea\x0a\x6e\xea\x53\x4e\x38\xb7\x91\x6d\xfb\x3f\ +\x95\x0f\x2d\xa0\xda\x9c\xdf\xbf\x92\x7c\xc7\xee\xfa\xfc\x52\x1b\ +\xb7\x41\x9d\x99\x63\xbf\x58\x63\xeb\x37\xa3\xd9\xae\xd7\x15\x5c\ +\xd3\x18\xdb\x90\xb5\xb7\x20\xff\x00\x69\xcd\xd9\x5a\x06\x07\x94\ +\x6d\xe4\x0e\x7b\xe6\xd6\x00\xa7\xf0\xa7\x48\xca\xde\xd0\x35\x15\ +\x55\xb5\x45\x29\xe1\xe9\x4a\xe9\xaf\x4f\x72\xa8\xb8\x74\xe9\xb9\ +\x9a\xc7\x5b\x5d\xa6\xdd\x1c\x5b\x1a\xa2\x03\x70\x9d\x8e\x86\x76\ +\xa9\x84\xa5\xa4\xb7\xb8\x2f\x71\xdc\x7c\xb9\xfb\xa3\xf1\xa6\xbb\ +\x1f\x4a\xee\x30\xa6\x69\x39\x17\x1d\x5e\xe5\xc0\x69\x67\x31\x6f\ +\x68\x40\x4b\x49\x0c\x94\x90\xa4\x1c\x2c\x92\xa3\x84\x79\xf3\xd9\ +\x18\xdb\xce\x6a\xdb\xba\x30\x52\xbf\x15\x23\x8a\x6d\x29\x5e\xed\ +\xd9\x38\xad\x10\x8c\x26\xae\x22\xa5\x25\x19\x6a\xbd\x5e\xff\x00\ +\xc9\x50\xb3\xd1\x45\xb1\x67\x66\xc2\x9d\x5e\xf1\xb4\xc5\xbb\x26\ +\xe9\x09\x83\x01\x1b\x90\xe8\x50\xcf\x88\xbd\xd9\x73\xcb\xb9\x23\ +\xee\xe3\x76\x4e\x70\x05\x4e\x23\x68\x39\xac\xf5\x59\xed\x77\x6a\ +\xd4\x62\x18\x99\x1d\xa8\xf3\xa1\x39\x04\x3b\xe2\xb6\x82\x93\x84\ +\xaf\x70\xd9\x90\x90\x33\x83\x8e\x6a\x5c\xcb\x41\x79\x56\x73\x8a\ +\xdd\x19\x44\x3b\xb4\x77\xcd\x56\x71\x56\xb2\x26\x9d\x18\x45\xa7\ +\x62\xb6\x83\xd1\x28\x4d\xf4\xed\xcd\x29\x23\x50\x3c\xb9\x28\xbc\ +\x2a\xef\x0a\xe0\xd4\x50\x85\x47\x7b\x8d\xbe\x42\xa5\x05\x01\xce\ +\x79\x19\xcf\xa6\x2b\x7b\x9d\x24\x7e\x54\x6d\x51\x32\xf5\xa9\xd5\ +\x72\xbe\xea\x0b\x7f\xea\xf5\x4e\x10\x43\x4d\xc6\x67\x18\x09\x43\ +\x21\x67\xd4\x02\x7c\xdc\x91\xe9\xcd\x59\xc5\x45\x1d\xeb\x2d\xfc\ +\x0f\x9a\x46\xa8\xd1\xec\xf4\xb6\xb1\x5b\x45\xe9\x49\x0e\xf4\xf1\ +\xd3\x7d\xe3\x46\xa1\x68\xc7\xd9\x3f\xdd\x9b\x92\xda\x7f\xb7\xfb\ +\x3f\xb9\xfd\xee\xf5\x29\xd1\xfa\x7e\xe3\x62\x9b\x7b\x7e\x76\xa7\ +\xb8\xde\x9b\xb8\xcd\x32\x63\xb5\x28\xf9\x61\xa0\xe7\xf6\x48\xe4\ +\xf1\xcf\xa6\x07\x03\x81\xce\x5f\x9d\x7b\x03\x68\x35\xa5\x4f\x00\ +\x39\x34\x28\xb7\xa9\x2a\x14\xe0\xf4\xf5\xa5\x85\x01\x7b\x79\xad\ +\x32\x4a\x56\x93\xcf\x34\x8d\xe9\xcd\xa0\x1c\xac\x71\x4c\xd7\x1b\ +\xf3\x4c\xf6\x58\xcf\xc5\x33\x25\xb5\x61\x2a\xc9\x0b\x26\x21\xac\ +\x12\xbc\x53\x05\xc9\xf8\xad\xe7\x25\x35\x57\xf5\x77\xae\x5a\x7f\ +\x47\x2d\x51\x1c\x5a\xae\x17\x2c\x67\xec\x71\xd6\x3f\x67\xff\x00\ +\xcc\x5f\x64\x7d\x39\x3f\x15\xcd\xfa\xb3\xaf\x7a\xfa\xfc\xea\xd1\ +\x6f\x7d\x9b\x44\x75\x1e\x13\x11\x1e\x70\x3e\x56\xac\x9f\xc4\x62\ +\xa8\xf1\x79\x7d\xd4\x14\xe8\x55\xad\xee\xa3\xa8\x7a\x81\xac\x6c\ +\x9a\x66\xdc\xa9\x77\x59\xcc\xc4\x41\xc8\x40\x59\xf3\xac\xff\x00\ +\x75\x23\x93\x5c\xcf\xd4\x1e\xb8\xcf\x9b\x70\x2c\x69\x76\x0b\x6d\ +\x63\x68\x7a\x42\x02\x94\xaf\x90\x9e\xc9\xfc\x73\xf8\x55\x59\x70\ +\x95\x3e\xe2\xeb\x93\xae\x92\xe4\x4c\x79\xc3\xf7\x9d\x59\x52\x96\ +\x7e\xa6\xa7\xbd\x0b\xe9\xe2\x35\xa6\xa9\x11\xa5\x05\x22\xdb\x0d\ +\x29\x7e\xe0\xf2\x0f\xde\x4e\x70\x96\x81\xf4\xdc\x78\xfa\x03\x59\ +\x6b\xe2\xa4\xd5\xe6\xce\x9e\x1b\xa1\xf5\xbc\xd9\x96\x84\xe9\xee\ +\xb2\xea\x0a\xd5\x7f\xbb\x5c\x65\x31\x6c\xdc\x4f\xda\x16\x49\x53\ +\xa7\xd4\x36\x0f\x18\xf9\xed\xf5\xab\x5f\x4e\xe8\x78\xd6\x9b\x9c\ +\x54\xa3\xc6\x73\xc3\x39\x53\x8f\xb8\x56\xb5\x7a\x66\xae\x49\xec\ +\xc7\x89\x09\x98\x71\x18\x43\x2c\xa1\x3b\x1b\x6d\x00\x04\xa1\x20\ +\x60\x00\x3d\x05\x47\x5e\x67\x32\xdb\x74\x02\x73\xc6\xe1\xee\x2b\ +\xcf\xe2\x71\x35\x2a\x3b\x72\x3b\x14\x28\x53\x86\xb1\x44\xb6\xc8\ +\xd2\x51\x1d\x21\x23\x09\xc0\xcd\x3f\xb4\x90\x50\x37\x84\xad\x23\ +\xb8\x3f\x5e\x0d\x31\xd8\x14\x0b\x3c\x9f\x32\x7d\x71\xde\xa4\x6d\ +\xa4\x2d\xa0\x15\xe5\xc7\xc7\x7a\x65\x3d\x50\xba\x9b\x88\xcc\x65\ +\xa0\x92\xc8\xde\x9f\xec\x77\x1f\x87\xa8\xad\xad\xa5\xbe\x13\x92\ +\x39\xc8\x0a\x38\x22\x94\x16\x9c\x6f\xcc\xde\xec\x7a\xe4\xff\x00\ +\x8d\x6d\x61\xd1\xc8\x71\x04\xfe\x19\xa6\x24\x2d\xc9\x98\x35\x15\ +\x63\x24\x21\x59\xc6\x38\x02\xb7\xb0\xd6\x50\xa1\x92\x9e\xe1\x4a\ +\x00\xf2\x7d\x78\xa5\x6d\xa5\xb2\x06\xd5\x2b\x07\xdc\xf0\x3e\x94\ +\xa5\x0c\xb3\xea\xea\xff\x00\x0a\xbe\x51\x6e\x62\x26\x94\x94\xa7\ +\x1b\x14\x4f\xb9\x4d\x78\xae\x78\x50\xc8\x3e\x83\xd2\x9c\x76\x46\ +\xef\x82\xe7\xc6\x6b\x62\x40\x49\xc2\x10\x84\x0f\xa5\x5b\x29\x19\ +\xc6\xe6\x9a\x75\x5f\x71\x93\x81\xea\xae\x05\x6d\x11\x70\x09\x79\ +\x40\xfc\x26\x97\x10\xa5\x8c\x14\xab\xe7\x9a\xd6\xe3\x58\xf3\x29\ +\x58\x1e\x98\xa1\xa2\x33\x08\xd4\xd8\xc6\xd4\x24\x24\x63\xb6\x38\ +\xad\x0b\x4a\xb3\xb8\xd2\xc7\x16\x0e\x52\x94\x94\xfc\x9a\x44\xf2\ +\x8a\x95\xb5\x24\xe4\xfe\x42\x97\x26\x59\x08\x26\x6e\x52\xfc\x26\ +\xc0\x27\x1e\x63\xed\xf3\x49\x14\xce\x3c\xa8\x19\x09\xe3\x3e\xe7\ +\xde\x9d\x94\xc1\x59\x0d\xb3\xe6\x3d\xc9\xff\x00\x5f\xce\xa9\x3e\ +\xb1\xf5\xc6\xd7\xa6\x14\xfe\x9f\xd1\xae\x47\xbb\x5f\x00\x29\x7e\ +\x60\x21\x71\xa1\x1f\x60\x7b\x38\xe7\xc0\xe0\x7a\xe7\xb5\x2d\xc1\ +\xc9\x9a\x68\x53\x9d\x59\x28\xc1\x6a\x49\xfa\x85\xae\x74\xc6\x82\ +\x69\xb5\x5f\x24\xa9\x53\x9f\x41\x54\x78\x2c\x0c\xba\xee\x3d\xfd\ +\x12\x93\xfd\xa5\x71\xf5\xae\x4b\xea\x36\xb4\xba\x6b\xdb\xe2\xae\ +\xf7\x72\x50\xd3\x6a\x29\x8b\x09\x3f\xd4\xc6\x6f\x3d\x81\xfd\xe3\ +\x8e\xea\xf5\x3f\x95\x31\x6a\x0b\xc5\xca\xe7\x3e\x4d\xd2\xeb\x25\ +\xf9\xd3\x9e\x58\x53\xd2\x5c\x3b\x89\x3f\x3f\x81\xe0\x76\x14\xcd\ +\x31\xe7\x64\xa8\x70\x42\x41\xf2\xf3\xc7\xe5\x5a\xe8\x61\xd4\x35\ +\x67\x51\x46\x9e\x1d\x7f\xb4\x84\x97\x16\x13\xe2\x27\xc0\x58\x52\ +\x89\xf3\x60\xfc\xd3\xff\x00\x4f\xb5\xde\xa0\xd0\xf7\x0f\x1a\x1b\ +\xbe\x3c\x35\x28\x78\xd1\x9c\x39\x6d\x5f\x4f\x63\xf2\x29\x95\x2a\ +\x08\xe3\x21\x38\x3c\x91\xfe\x5f\x35\x8b\x8d\xe5\x2a\x21\x29\x48\ +\x03\x8c\x03\x85\x56\xde\x56\x67\x2b\x11\x86\x85\x5b\xbe\xde\x47\ +\x63\xf4\xe7\xac\x1a\x67\x52\xb2\xd2\x63\x4d\x44\x69\xd8\x19\x89\ +\x21\x41\x0b\xcf\xb2\x49\xe1\x7f\x87\x3f\x15\x6d\xc0\xd4\x0d\xb8\ +\x91\xdc\x2f\xd4\x1e\xe2\xbe\x69\x29\x87\x10\xe7\x88\xd2\x94\x8d\ +\x9e\x60\x52\x6a\xc6\xd0\x5d\x6c\xd6\x5a\x63\xc2\x62\x5b\xe9\xbb\ +\xdb\xdb\xc0\x0c\xca\xc9\x5a\x47\xf7\x56\x3c\xc3\x8f\x7c\x8f\x8a\ +\xd3\x4b\x13\x52\x9e\x9b\xa3\xce\xe2\x3a\x2e\x50\x77\x81\xdf\xad\ +\xcb\x2e\xc7\xf1\x77\x01\xc5\x21\x61\x45\xe7\x8a\x73\x9d\xc7\x9a\ +\xa1\x74\xc7\x5e\xb4\xb5\xfa\x22\x18\xfb\x7a\xed\x33\x14\x39\x66\ +\x5f\x08\x27\xd8\x2c\x71\xf9\xe2\xac\x5b\x26\xb1\x8a\x96\x92\xb4\ +\x3e\xcc\x82\xa1\x9d\xcc\xb8\x97\x07\xff\x00\x69\x35\xb6\x18\xfa\ +\x4f\x49\x68\xce\x5d\x4a\x33\x83\xeb\x22\x74\xe0\x6d\xb5\x14\x13\ +\x92\x7d\xa8\xa6\x48\x97\xd6\x26\x28\x28\x11\x93\xcd\x15\xb6\x33\ +\x8c\x95\xd3\x13\x62\x51\xd3\x5b\x6a\x1c\xd1\x90\x96\xb5\x7d\xef\ +\x13\xb7\xa7\xed\x15\x4f\x4f\x5a\xda\x84\xd2\xde\x6d\x1b\xf0\x9e\ +\xd8\xa8\xa7\x4d\x2e\x32\x99\xd2\x70\x12\xa3\x94\x65\x7f\x87\xed\ +\x15\x56\x0a\x16\x97\xa2\x85\x77\x4a\x85\x73\xa4\xea\x53\xb3\x6f\ +\x43\xa1\x41\x52\xab\x0d\x16\xa8\xae\x19\x68\xca\x9c\xb7\x14\x36\ +\x24\x2a\xb2\xba\x24\x15\x80\xd2\xc6\x00\xf4\xad\xf7\x75\x84\x4e\ +\x71\x94\x61\x08\xdd\x93\x48\x46\xc1\x90\x09\x51\x3e\xa7\x9a\xe9\ +\xad\x51\xcf\x7a\x3b\x1a\x9a\x59\x0a\x28\x3f\x96\x2a\x7d\xa5\x9e\ +\x69\x50\x82\x52\x30\x40\xc1\xa8\x3e\x1b\x2a\xcf\xad\x4b\x34\xc2\ +\x17\x1a\x12\xde\x70\x7d\xee\x40\x35\x9f\x12\xaf\x4c\xd1\x85\x95\ +\xaa\x0a\xef\x4f\x05\x3c\x1a\x1e\x9d\xeb\xcb\x4b\x45\xd7\xf7\x94\ +\xf9\x40\xe0\xd2\x17\x14\xa9\x12\x49\xee\x54\x71\x4f\xb1\x50\x98\ +\xb1\x80\xcf\x38\xa4\x54\xfd\xba\x6a\x2b\x73\x45\x3f\xdc\xa8\xe4\ +\xf6\x32\x9a\xee\x13\xb4\x1f\x4e\x6a\x35\x70\x90\x95\x3a\x54\xae\ +\xc9\x3c\x52\xfb\xa4\x9d\xa8\x23\xf7\x95\x4d\x29\x6f\xc5\x77\x67\ +\x24\xd3\x30\xd4\xf2\xab\xb1\x78\x9a\x99\x9d\x90\xb6\xd4\xf0\x4b\ +\x83\x04\x61\x55\x23\x8a\xb0\xa4\x6d\x35\x13\x09\xf0\x97\xb7\xb1\ +\x1f\x14\xf7\x6f\x91\xbd\xb1\xcf\x98\x55\x31\x34\xef\xaa\x2f\x85\ +\xa9\x6e\xab\x37\x4a\x6f\xc3\x70\x9f\x43\x5b\xa0\x2f\x04\xa0\x9f\ +\xa5\x6d\x71\x29\x7d\x9e\x3b\xd2\x24\x95\x36\xbe\xf8\x22\xb3\x2e\ +\xbc\x6c\xcd\x2f\xa9\x2b\xa1\x45\xd1\xd0\x96\xb6\x7a\x9e\x29\x97\ +\x3c\xed\x39\xc7\xc5\x3a\x5c\x47\x8c\xce\xf4\xe3\x8a\x68\x53\x9e\ +\xc9\xe6\x9f\x87\x8f\x54\x46\x21\xf5\x85\xac\xb8\xdb\x43\xb7\x06\ +\xbc\x5a\xb7\x3a\x14\xda\xbb\xd3\x4c\xb9\xbe\x12\x72\xae\x00\xa6\ +\x19\xba\x9e\x3c\x57\x0a\x94\xea\x52\x90\x7c\xca\x52\xb0\x07\xd4\ +\x9e\x2a\xd3\xcb\x4d\x66\x93\x13\xc5\xe4\x58\x3e\x3a\x52\x91\x93\ +\xce\x29\x1c\x9b\x9c\x76\xf8\x2b\x48\xaa\x67\x58\x75\xb3\x48\x58\ +\xdb\x50\x9b\xa8\x62\x97\x40\xc8\x66\x32\xbc\x65\x9f\x8c\x27\x20\ +\x7e\x24\x55\x21\xab\x7f\x49\xe7\x1c\x52\xdb\xb0\xd8\xca\x8e\x4e\ +\xd7\x66\xb8\x4f\xff\x00\x62\x7f\xce\xb0\xf1\xa3\xbc\x55\xcd\x51\ +\x55\x6a\x7b\xa8\xeb\xb9\xda\x8a\x3a\x16\x40\x58\xed\xef\x51\xcb\ +\xc6\xb5\x8f\x19\xb5\xad\x6f\x21\xa6\xd3\xf7\x96\xe2\xc2\x52\x3e\ +\xa4\xd7\x0c\x5f\xba\xd3\xd4\x4b\xab\x8a\x5a\x6f\x0b\x84\xda\x87\ +\xdc\x8a\x80\xd8\x03\xea\x39\xfe\x35\x0d\x9f\x74\xbd\x5c\xd5\xbe\ +\x7d\xca\x54\x8d\xca\xca\xbc\x57\x8a\xb9\xfc\x4d\x51\xe2\x2a\x72\ +\xb2\x1d\x1e\x8e\xab\x3f\x7a\x47\x5d\x6b\x9e\xbf\xe9\xbb\x41\x5b\ +\x71\xe7\x9b\x93\xe9\xff\x00\x82\x8b\xca\x7f\xed\x9e\x3f\x2c\xd5\ +\x1b\xae\xfa\xe3\xab\xf5\x31\x5c\x5b\x6b\x9f\xaa\x21\x2c\x10\x50\ +\xc1\x3b\xd4\x3f\xbc\xe7\x7f\xcb\x15\x5a\x37\x17\xb1\x50\x2a\x23\ +\xda\x94\x36\xdb\x4d\xe0\xaf\x03\xca\x41\x03\xd3\xf1\xa4\xca\x4e\ +\x4e\xed\xdc\xeb\x61\xfa\x22\x9c\x35\x97\x98\x9d\xb6\x16\xfb\xc5\ +\xc7\x9c\xf1\x49\xf3\x12\xa3\x9c\x9a\x56\x5b\x4a\x06\xd4\x24\x91\ +\x91\xe9\x5b\x76\xe1\xad\xca\x04\x21\x27\xcb\x84\xf7\xaf\x76\x84\ +\xa4\x93\x8c\x28\xe3\x83\xcf\xd3\xe9\x55\x6e\xec\xec\xd3\xa0\xa1\ +\x1b\x24\x26\x98\xb5\x97\x58\x40\x48\x29\x49\x52\xb0\x3b\xf1\xdb\ +\x3f\x9d\x74\x7f\xe8\x6f\x2e\x2a\xed\xda\x96\xdc\xa0\x91\x38\x2d\ +\x89\x19\xf5\x53\x58\x50\xc6\x3e\x09\xfe\x35\xce\xae\x25\x26\x5b\ +\x38\x6c\x94\xac\x28\x10\x3b\x9e\x33\xfe\x15\x3c\xfd\x1f\xb5\x22\ +\x34\xaf\x55\xad\x32\x65\x3a\x96\xa0\xce\xcc\x19\x65\x47\x00\x25\ +\xce\x12\xa2\x7e\x14\x13\xcd\x2a\xb4\x6f\x02\x1a\x93\x53\xd7\x7f\ +\xc1\xd6\xf7\x26\xb2\xf9\xf3\x60\x63\x03\xe0\xe2\x90\x88\x89\x71\ +\xb2\xde\x36\xee\xc1\x1f\x0a\xf7\xa7\x99\x6c\xa9\x52\x14\x36\x8c\ +\xa5\x5b\x54\x01\xed\x8e\xc6\xb2\x62\x29\x28\x03\x8c\x0e\xc7\x15\ +\xc9\x74\xee\xcc\xaa\x76\x42\x5b\x46\x5b\x56\xd7\x52\x37\x24\xed\ +\x20\x8e\x47\xcf\xe7\x9a\x92\xb4\xb4\xa1\x09\x24\x9c\x11\xdf\xb8\ +\xa6\x65\x36\x1b\x21\xc2\x95\x15\x27\x1e\x70\x79\x4f\x3d\x8f\xbd\ +\x39\xb6\x85\x29\x85\x05\x36\x01\x28\x38\x58\x20\xf1\xe8\x47\xd0\ +\xd3\x20\xb2\xe8\x52\x6d\x3d\x45\xc1\xcd\xaa\x47\x88\x4e\x36\x92\ +\x94\x83\x9e\xdd\xf8\xa5\xac\xa5\x24\x02\x10\x82\x15\xc8\x20\xf7\ +\x14\xc7\xa7\xd2\xea\xd8\x0b\x92\xa0\xfc\x94\x1f\x0c\xad\x49\x29\ +\xe3\x3c\x63\xda\x9e\xe3\x29\x28\x07\x6a\xb2\xd9\x3c\xa7\xfb\x3f\ +\x4a\x6c\x1d\xd5\xc4\xd4\x56\x76\x37\x00\xd2\x55\x84\x95\x6d\x23\ +\xf7\x78\xe4\x7d\x7e\xb4\xa1\x94\xb6\x13\x93\x95\x28\x93\xca\x8e\ +\x3f\x2f\x8a\x43\x25\x5b\x43\x6b\x24\x25\x5d\x81\x48\xc8\xcf\xcf\ +\xe1\x43\x6a\x71\x45\x59\x75\xb2\xa5\xe4\x20\x81\x85\x24\x0f\x5c\ +\x76\x3e\x9c\x55\xef\x62\x96\x1c\x52\x40\x58\xc1\x1c\x67\xca\x3f\ +\xd7\x34\xa1\x2a\x42\x94\x50\x09\xe0\x02\x46\x29\x33\x39\x71\x96\ +\xbc\x2d\x85\x04\xe7\x77\xef\x27\x1d\xeb\x5a\x7c\x54\xbc\xb7\x12\ +\xb1\x94\x8c\x76\xce\x73\xcd\x5a\xe5\x77\x15\x3a\xff\x00\x87\xca\ +\x10\xb7\x14\x3b\x25\x3d\xcd\x63\x20\xac\x8c\x9c\x63\xeb\xda\xb0\ +\x82\x14\xb1\xe2\x29\x2a\x1d\xc1\xdd\xdc\x9e\xdf\x95\x6b\xbe\x5c\ +\x2d\x96\x4b\x6a\xee\x57\xbb\x94\x4b\x64\x24\x0c\x97\xa5\x3c\x96\ +\xd3\xf8\x67\xb9\xfa\x54\x6f\xa8\x5b\x5b\x20\xc6\xe4\xf2\x42\x47\ +\x6a\x65\xd5\xb7\xfb\x16\x93\xb3\x2e\xef\xa8\xee\x6c\xdb\x60\xa7\ +\x3b\x54\xe1\xcb\x8f\x2b\xfb\x2d\xa0\x72\xb5\x7c\x0f\xc6\xa9\x7e\ +\xa5\x7e\x93\xf6\x88\x65\xcb\x77\x4f\x2d\xaa\xbb\x4a\xda\x40\xb9\ +\x4d\x41\x6d\x84\x1f\x74\x36\x70\xa5\xe3\xdd\x58\x1f\x06\xb9\xab\ +\x56\x5f\xf5\x16\xad\xbb\xbb\x77\xd4\x57\x49\x37\x49\xc4\x60\xba\ +\xf2\xf0\x86\xff\x00\xba\x80\x38\x48\xf8\x48\xc5\x4a\xa6\xd9\xd2\ +\xc3\x74\x75\x4a\x9d\x69\xe8\xbc\xfd\x7a\xb1\x65\xf5\x9b\xaf\xb7\ +\x8d\x5d\xe2\xd8\x74\xca\x17\x61\xb0\xa8\x94\xb8\xb5\x2b\xfd\xa6\ +\x58\xf6\x5a\x87\xdd\x49\xfe\xca\x7f\x12\x6a\x9e\x71\x29\x60\xb6\ +\xda\xdc\x50\x1b\x54\x50\x80\x36\x9d\xc6\xb5\xbc\xe0\x49\x48\x69\ +\xb0\x70\x7e\xf1\x1f\xce\xb5\x24\x29\x6a\xf1\x94\x4b\x8a\x3d\xf1\ +\xdf\xe4\xf3\x5a\x21\x05\x15\xa1\xd3\x8e\x4a\x49\xc2\x2b\xd7\xd4\ +\xd0\xb3\x29\xf5\x99\x0a\xca\x46\x30\x02\x46\x78\xf7\x35\x82\xd2\ +\xb7\x1b\x48\xc0\xee\x33\x83\xc6\x7d\x29\x62\x88\x43\x4b\xda\xa0\ +\x92\x0e\x70\x0f\x27\xde\x93\xc8\x79\x0a\x74\x00\x14\x40\xf4\x4f\ +\x00\xf1\x4c\x42\x2a\x46\x29\x6a\xdd\xd9\xad\x0c\xb2\x12\x52\xf3\ +\xa9\x4e\xd3\x92\x0a\x7f\x2f\xad\x60\xe6\x12\x93\xb9\x63\x1d\x81\ +\x4a\xbb\xfe\x15\xb5\x42\x53\xa1\x3b\xd2\x52\x39\x03\x70\xc9\x48\ +\xc7\x02\xb2\x66\x13\x2d\xa4\x29\xd5\x78\xa4\x8c\xee\x24\x64\x7e\ +\x1f\x5a\x9b\xf6\x8a\x74\xdc\x9e\x58\x2b\x7a\xe6\x22\x59\x51\x58\ +\x28\x0b\x50\xcf\xb6\x31\xe9\x59\x39\x15\x4a\x39\x70\xa7\x80\x4e\ +\x7b\x52\xe5\x2d\xa4\x12\x10\xea\x90\x01\xe4\x28\x7a\xfc\x52\x27\ +\xe4\x28\xf2\x82\x41\xf5\x28\x18\xfa\xd4\xa6\xde\xc2\xe7\x4e\x10\ +\x4d\xc9\xdc\x46\xec\x66\xc2\xc6\xd3\x92\x79\x1c\xd6\x70\xa4\x5c\ +\x6d\xef\x22\x4c\x29\x6f\xc5\x75\x07\x29\x52\x16\x52\xa0\x7f\x0a\ +\x50\x92\x8c\xa9\x2a\x51\xec\x3d\xb3\x9a\x0a\x77\xa4\x29\x40\xe0\ +\x63\x38\x3c\x0a\xb5\xcc\x72\xc3\xc6\x45\x9d\xa3\x3a\xe7\x7c\xb5\ +\x2d\xa6\x35\x24\x41\x70\x65\x3c\x7d\xa1\xb3\xb1\xec\x7b\x9f\x45\ +\x7e\x3f\x9d\x15\x51\xce\x6d\x29\x19\xc1\xc1\xed\xed\x45\x42\x8a\ +\xe5\xa1\xca\xaf\x82\xa5\x9f\xdd\xf5\xf0\x3a\xc3\x4d\x6a\x0b\xf3\ +\x76\x28\xc8\x6e\xf5\x72\x4a\x41\x56\x02\x65\xac\x01\xe6\x3e\x99\ +\xa9\x33\x5a\xa3\x52\x35\x0c\x0f\xe9\x0d\xd8\x71\xdb\xed\x8e\x7f\ +\x9d\x42\x74\xaa\x77\x5a\x63\x92\x78\x1b\xbf\xfc\x8d\x3d\x15\x78\ +\x87\x27\xee\x8a\xf1\x55\xeb\x55\x72\xb6\x67\xf3\x3c\x6a\x9c\x93\ +\x76\x66\x62\xeb\xa8\x5f\x90\xa7\x5d\xbe\x5c\xce\x4f\x73\x29\x7f\ +\xe7\x4a\xdb\xba\xde\x12\x9c\x7e\xb9\xb9\x7f\xf5\x4b\xff\x00\x3a\ +\x40\x54\x01\xe2\xbd\x6d\x4a\x52\x82\x52\x82\x49\x3c\x01\xeb\x55\ +\x78\xaa\xef\x69\x3f\x9b\x21\x36\x2c\x76\xe9\x78\x24\x2c\x5e\x6e\ +\x5c\x73\xfe\xea\x5f\xf9\xd6\x6b\xd5\x7a\x89\x6d\x86\x91\x7e\xba\ +\xed\x1e\x9f\x6c\x73\xfc\xeb\x0b\xd5\x9a\xfb\x6d\x88\xdb\xf3\xec\ +\xf3\xa2\x30\xf2\xb6\x21\xc7\xd8\x52\x12\x49\x19\x03\x24\x77\xc0\ +\x27\x1f\x06\x90\x47\x65\x2c\xa7\x72\xf9\x51\xab\x4a\xb5\x78\xfb\ +\xf2\x77\xf1\x64\xbc\xd1\x76\xd8\x7a\x89\x7f\xd4\x2d\x8f\x11\x57\ +\xeb\xa8\x57\xfc\xf1\xcf\xf3\xac\x9f\xd5\x7a\x90\x82\xa5\x6a\x1b\ +\xb6\x3f\xe7\x8e\x7f\x9d\x35\x0d\xce\x38\x84\x24\x65\x4b\x50\x4a\ +\x52\x4e\x32\x49\xc0\xaf\x35\x3d\xaa\xe7\x64\xba\xae\xd9\x76\x8c\ +\x23\x49\x42\x52\xa5\x37\xe2\x25\x78\x04\x64\x1c\xa4\x91\x54\x8c\ +\xeb\xcf\xac\xe4\xed\xf1\x2d\x9a\x6a\x37\x57\xb1\xb5\x7a\x97\x50\ +\xba\xb2\xa5\xdf\xae\x87\xeb\x2d\xcf\xf3\xaf\x58\xd4\x9a\x85\x2b\ +\xdc\x2f\xb7\x4f\xfe\xad\xcf\xf3\xa6\x62\x78\xed\x4e\xd0\x6c\x17\ +\x69\x76\x19\x77\xc8\xf1\x82\xed\xf0\xd4\x11\x21\xef\x15\x03\x62\ +\x8e\x30\x36\x93\x93\xf7\x87\x61\xeb\x4f\x55\x6b\x4b\x48\xc9\xfc\ +\xd8\xb8\xe7\x93\xd0\xda\xe6\xa4\xd4\x3b\xf7\x7e\xbe\xba\x7f\xf5\ +\x8e\x7f\x9d\x66\xd6\xa7\xd4\x6d\xab\x72\x6f\xf7\x51\xf4\x98\xe7\ +\xf9\xd3\x3e\xd2\x72\x2b\xd1\xda\x97\xc7\xab\x6f\x79\xfc\xc3\x34\ +\xbb\x49\x33\x3a\xab\x52\x10\x14\x9d\x43\x76\xf9\xff\x00\x6c\x73\ +\xfc\xe8\x7b\x53\x6a\x25\x8c\xff\x00\x48\x2e\xb9\xff\x00\x9e\x39\ +\xfe\x75\x1b\x43\xa5\xa3\x9f\x4a\x1e\x96\x90\x9c\x85\x52\xb3\xd6\ +\xbd\xd4\x9f\xcc\xba\xa9\x27\xa5\xc7\x97\x35\x76\xa4\x6c\x14\x9d\ +\x41\x76\x03\xfe\x78\xe7\xf9\xd3\x74\xcd\x69\x7c\x65\xa5\x2d\x7a\ +\x86\xe4\x84\x81\x95\x29\x53\x56\x00\xfa\x9c\xd4\x3f\x52\xea\x16\ +\x22\x94\x47\x09\x76\x4c\xd7\x8e\xd8\xf0\xe3\xa4\xad\xe7\x94\x7b\ +\x04\xa4\x73\xc9\xaa\x9f\xaa\xb1\x7a\x8b\x05\x51\xbf\xa5\xd6\x0b\ +\xbd\x8e\x24\x82\x7e\xca\xdc\x98\xab\x65\xb5\xe3\xbe\x32\x06\xe5\ +\x0c\x8c\xfa\x8c\xfa\x57\x4f\x07\x86\xc4\x57\xd7\x33\x4b\xb6\xec\ +\xdb\x85\xc2\x55\xae\xef\x7b\x22\x79\xab\xba\xdf\x3a\x31\x53\x16\ +\xdb\xd5\xca\xe0\xf0\xe3\x7a\xa5\x38\x1a\x1f\xc7\x2a\xff\x00\x5c\ +\xd5\x4d\xa9\x75\x9e\xa9\xd4\xae\x95\xdd\x6f\x53\xa4\x23\xd1\xb5\ +\x3c\xad\x89\x1e\xc0\x67\x14\xc2\x1b\xf7\xe4\x9f\x5a\xcd\x20\x76\ +\x07\xf3\xaf\x41\x47\x0f\x0a\x4b\x4b\xb7\xda\xce\xfe\x1f\x07\x0a\ +\x1b\x6e\x63\x87\x14\x7c\xce\x2f\xf1\x35\xea\x41\x4f\x39\x56\x6b\ +\x23\xbb\x8f\xa5\x2e\x76\xd5\x73\x66\xd2\xc5\xe1\xfb\x5c\xc6\xad\ +\xb2\x5c\x53\x4c\x4c\x5b\x0a\x0c\xba\xb4\xfd\xe4\xa5\x78\xda\x48\ +\xf5\x00\xf1\x4f\x6d\x9b\x16\xe2\x30\x5c\xec\x16\xbf\xce\xbd\x42\ +\xd6\x14\x0e\xf5\x03\xe8\x6b\xc0\x32\x7d\xbd\xab\xdf\x4c\x11\x8a\ +\xad\xcb\xab\xf6\x99\x17\x9e\x24\x6e\x79\xc3\xf8\x9a\xc9\x2f\x3b\ +\xbb\x97\x5c\x3f\xf5\xab\x04\xfa\x91\xe9\xc6\x2b\x24\x83\x9d\xc5\ +\x35\x0c\xba\x72\xed\x33\x53\xef\x29\x44\x17\x5c\x3f\x55\x9a\x03\ +\xab\xc1\x05\xd7\x3e\x79\x35\xa5\x44\x15\x63\x18\xf4\xac\x81\xc0\ +\x04\x7e\x00\x50\x4f\x12\x4d\xee\x66\xe3\xef\x04\x85\x87\x57\x94\ +\x60\xa7\xcc\x7f\x87\xf1\xaf\x56\xf3\x8e\xa4\x65\xd5\x94\x91\xdf\ +\x71\xe6\xb0\x1c\x73\xf3\x5e\x70\xd9\x20\xf2\x85\x73\xff\x00\x24\ +\xd0\x4a\x9c\x97\x32\xfa\xe9\xa7\x50\xef\x17\xcb\x7a\x60\xca\xbe\ +\xdc\x05\xce\x2a\x02\x56\x93\x29\x79\x75\x09\xc0\x0b\x1c\xf3\xe8\ +\x0f\xe7\x53\x34\x5f\x2f\x81\x1e\x5b\xcd\xcb\x00\x76\xfb\x52\xff\ +\x00\xce\xb9\xc7\x45\x58\xb5\x46\xa0\xbe\x06\xb4\x7d\xba\xe1\x3e\ +\xe7\x19\x06\x4a\x53\x05\xa2\xb7\x1b\x40\x21\x25\x58\x1d\x86\x54\ +\x91\xf8\x8a\xb4\xde\xd4\x1a\xa3\x4a\xa6\x3b\x1d\x47\xd2\x37\x8b\ +\x32\xde\xf2\xb5\x31\x50\xd4\xda\x1d\x3e\xb9\x04\x00\x48\xf5\xda\ +\x7f\x0a\xe0\x63\x70\x15\x54\x9c\xe9\x6a\xbb\x3b\x0e\x4e\x2f\x0d\ +\x57\x36\x6a\x6e\xfd\xd7\x26\xd2\x2f\xb7\xbd\xa4\x9b\xdd\xc9\x27\ +\xdf\xed\x4b\xed\xf9\xd6\xa8\xd7\xab\xbb\x69\x29\x7a\xf1\x74\x24\ +\x65\x5c\x4a\x5f\x23\xdf\xbd\x46\x06\xb0\xd2\xf2\x40\x0c\xdf\x22\ +\x79\x86\x7f\x6b\xb9\xbc\x7d\x72\x29\x53\x57\xad\x3b\x22\x2e\xe5\ +\xde\x6d\x64\x0f\x43\x25\x03\x18\x3c\x7a\xd7\x2d\xc6\xb2\x5a\xa7\ +\xe6\x62\xfd\xf8\xab\x3b\xf9\x92\x78\xda\x8a\xfc\xeb\xcb\x75\x9d\ +\x47\x74\x2d\x29\x20\x28\x7d\xa9\xc1\x83\xf9\xf7\xf4\xa5\x82\xfd\ +\x7e\x40\x0d\x1b\xcd\xd1\x1e\x5e\xe9\x94\xb1\x81\xe9\xeb\xfc\x2a\ +\x39\xa4\x52\xce\xad\xd4\x0c\x58\xb4\xfd\xca\x1c\xeb\xab\xe1\x61\ +\x31\xd9\x90\x90\x56\x94\x24\xa8\x9e\x48\x48\xc6\x0f\xad\x31\x5e\ +\xba\x83\x67\xb1\x5e\x65\x5b\xa5\x17\xdc\x9b\x11\xc5\xc6\x90\xdb\ +\x2d\x6e\xc2\xd0\xa2\x15\xc9\x38\x3c\xe4\x67\x9e\xd5\x2a\x86\x26\ +\x7e\xea\x7e\x64\x70\xf1\x13\x7d\x54\xfc\xcb\x11\x5a\x87\x51\x16\ +\x83\xa2\xf7\x73\x78\x00\x7f\xfe\x6d\x79\x3e\x9e\xf8\xa5\x11\xb5\ +\x16\xa1\x6d\x28\x29\xbe\xdd\x38\xe0\x1f\xb5\xb9\x9e\xdf\x5a\xa4\ +\xa4\x75\x75\x4d\xa9\x5f\x63\xb2\x87\x90\xa2\x79\x7d\xcd\x9f\xc1\ +\x39\xa6\x2b\x9f\x54\x35\x6c\xdd\xe9\x8a\xf4\x6b\x72\x08\xe3\xec\ +\xec\x8d\xc0\x7f\xca\x56\x4f\xe5\x8a\x7c\x3a\x37\x19\x3d\xf4\xf1\ +\x63\x63\x80\xc5\xc9\xd9\xe9\xf1\xfb\x1d\x19\x23\x52\x5f\x1b\x6f\ +\xc5\x91\xa8\xae\x6c\x36\x15\xc9\x72\x7a\xd0\x93\xf9\xab\x15\x15\ +\xbc\xf5\xaa\x35\xa5\x4e\xa4\xea\xeb\xac\xe7\xc2\xb1\xe1\x43\x94\ +\xe2\xc6\x7f\xe5\x12\x07\xf1\xae\x70\xb8\x4d\x99\x71\x7f\xc5\xb8\ +\x4c\x93\x31\x64\xe5\x45\xe7\x14\xae\x7f\x1a\x4e\x02\x12\xa2\x13\ +\xb4\x01\xdf\xd7\xf2\xad\xf4\xba\x26\xda\xd4\xa8\xdf\x86\x86\xda\ +\x7d\x17\x67\xd7\x9b\x7e\x1a\x16\xed\xfb\xf4\x85\xd7\x12\x02\x9b\ +\xb2\xce\xb8\x40\x41\x3c\x3c\xf4\xc7\x1d\x70\x7d\x06\x76\x83\xf8\ +\x1a\xad\xf5\x0e\xa3\xd4\x3a\x9a\x68\x99\xa8\xaf\xb7\x2b\xac\x81\ +\xf7\x17\x2e\x4a\xdc\x29\xf8\x4e\x4f\x03\xe9\x4d\x65\x4b\xc7\x95\ +\x38\x03\xd5\x55\xe1\x19\x39\x5a\x81\xe3\x00\x67\xb7\xe1\x5d\x4a\ +\x54\x29\xd2\x56\x8a\xfa\x9d\x2a\x34\xa3\x47\xdc\x5e\xbc\x4f\x4b\ +\xce\xfd\xd0\xe2\xc9\xed\x80\xa3\x83\xf5\xac\xbc\x69\x2a\x46\xd2\ +\xf3\xa5\x07\xb8\xde\x71\xc7\xbd\x60\x08\x00\x00\xae\xde\x80\xd0\ +\xb2\x10\x08\x1c\x9f\x5c\x9e\xf4\xe1\xaa\x52\xde\xe6\xc5\x4b\x91\ +\xbb\x1e\x3b\x98\x1d\xb2\xa3\x5a\x9c\x90\xe8\xec\xea\xc2\x87\x6f\ +\x31\xe2\xb5\xf9\xd6\xa2\x12\x14\x00\xef\xf1\x59\x25\x09\x41\xfb\ +\xc0\x9f\x91\x53\x6b\x15\x75\x27\x2d\xd9\x8f\x89\x25\xd5\x65\x4f\ +\x38\x31\xee\xa3\x59\xa4\x94\x1d\xc9\x5a\xc1\x1c\x67\x35\x22\x85\ +\xa2\xb5\x54\xfe\x9f\x5c\x75\xe4\x3b\x4e\xfd\x39\x6c\x92\x22\xcc\ +\x99\xf6\x86\x87\x86\xe9\x2d\x80\x9f\x0c\xab\x79\xe5\xe6\xf9\x09\ +\x23\xcd\xdf\x83\x88\xa9\x25\x5c\xe4\x9a\x9b\x31\x6e\x76\xd9\xdc\ +\x50\xa9\x6f\x81\xe4\x75\xc1\xcf\xf6\xcd\x6a\x76\x4b\xea\x52\xb2\ +\xf2\xc9\x57\x07\xcd\xde\xb5\x24\xe4\x8c\x63\xf2\xed\x41\xf5\xf5\ +\x35\x29\x58\xa4\xaa\xca\x4b\x73\xd2\xe3\xab\x50\x2b\x71\x64\x8f\ +\x9a\x37\x2b\x24\xee\x56\x4f\xae\x4d\x78\x40\xe0\x95\x60\x7e\x75\ +\xea\xf6\xe7\x39\x1c\xfb\x54\x95\xbb\xdd\xb0\xf1\x1c\x1c\x07\x17\ +\xef\xf7\xab\xcf\x11\xc3\xff\x00\x08\xe1\x1e\x9c\xd7\x83\x39\xc7\ +\xf1\xaf\x42\x3b\xee\x56\x3e\x48\xa9\xb9\x56\xd9\xa5\xf5\xa8\x8e\ +\x56\xa2\x3e\x4d\x15\x9b\xe9\x40\x1c\x2b\xf0\xa2\xac\x99\x49\x45\ +\xb7\xb9\xd5\xba\x67\x8b\x24\x70\x38\x1e\x6c\xff\x00\xda\x34\xea\ +\x94\x15\x72\xa3\x84\xd3\x66\x98\x03\xf5\x33\x0a\x57\x00\x6e\xff\ +\x00\xf2\x34\xb9\x4e\x17\x32\x3b\x27\xd8\x57\x82\xa9\x77\x36\x78\ +\x76\x6c\x2f\x32\xdf\x09\x4e\xe3\x53\x6e\x86\x06\x26\xf5\x1e\x12\ +\x24\x36\x8f\xd9\x32\xeb\xcd\x85\x7a\xac\x0c\x0f\xc4\x64\x9f\xc2\ +\xa0\x3c\x0e\xdf\xc6\x96\xd9\x6e\xd7\x1b\x15\xe2\x25\xe6\xd0\xe3\ +\x68\x9b\x11\x65\x4d\x87\x06\x50\xb0\x41\x4a\x92\xa0\x0f\x20\x82\ +\x47\xf1\x1c\x8a\x76\x15\xc2\x9d\x68\xce\x5b\x26\x32\x85\x45\x0a\ +\x91\x94\xb6\x4c\x7b\xb5\x45\x77\x55\x75\x10\x46\xb9\xcf\x9a\xe3\ +\xb3\xee\x4b\xf1\xb7\xbc\xa2\x94\x80\x55\x90\x94\x93\x84\xe1\x20\ +\xa4\x71\xc0\xa9\x74\x3b\x65\x8e\xfd\xa8\xf5\x5e\x96\x67\x4e\x46\ +\xb7\x7e\xa9\x61\xc5\xdb\xe6\x34\xfa\xd4\xea\x94\xd1\xd8\xaf\x13\ +\x71\xc1\x0a\x24\x1f\x81\x9f\x5e\x6a\x0b\x7a\xd5\x66\x75\xd1\xab\ +\xc5\xb3\x4b\x46\xb0\x5d\xda\x98\x26\x2a\x5b\x77\x05\xc8\x43\x8e\ +\x0c\x92\x3c\x22\x94\x84\x82\xa3\x93\xc9\xf6\xf5\x34\xba\xef\xd4\ +\x1b\x83\xd1\x2e\xcf\x5b\xf4\xbc\x0b\x4d\xc6\xf0\xd1\x62\x7d\xc5\ +\x13\x96\xee\xe4\x2b\xef\xf8\x6d\x94\x80\xd9\x3e\xf9\x35\xd3\xa7\ +\x3a\x09\xcb\x89\x25\x2b\xbf\x1b\xab\x6c\xb4\xed\x36\x42\xa5\x25\ +\x7c\xcd\x3d\x7e\x68\x76\x7d\x16\x7d\x3b\xa3\x34\x75\xc1\xcd\x3d\ +\x16\xef\x26\xfd\x20\x3a\xfb\xb2\x1e\x5a\x3c\x26\x42\x93\x80\xde\ +\xd2\x30\xac\x29\x38\x3e\xe0\xe7\xd3\x12\xad\x45\xa7\x22\x5f\xba\ +\xc7\xa8\xe4\xcd\x8e\x25\xb5\x6c\xb5\x35\x21\x31\x94\xef\x84\x97\ +\x9c\xd9\xe4\x4a\x95\x91\x84\xf0\x72\x72\x07\xbf\x15\x56\x5b\xb5\ +\xc4\x88\xfa\x5a\x06\x9f\xb8\x69\x78\x17\xa6\xed\x6e\x97\x6d\x92\ +\x1d\x98\xb6\x4b\x07\x39\xda\xe2\x12\x0f\x88\x9c\xfa\x65\x3c\x00\ +\x3e\x69\x53\xbd\x48\xbe\x2f\x58\xc9\xd5\x1f\xaa\x20\xa9\x53\x61\ +\x26\x14\xeb\x7b\xaf\x15\xb5\x25\xb0\x90\x15\x85\x6d\x05\x24\x91\ +\x91\xc1\xc6\x71\xcd\x68\x85\x6c\x32\x82\x8b\xb5\xb4\xd2\xdd\xdc\ +\xfe\x23\x23\x5a\x86\x54\x9e\xda\x69\x6e\xee\x7f\x11\xc7\x5e\xda\ +\xed\xa8\xd2\x56\x4b\xc2\x63\x5a\x6d\x97\xa7\x5d\x5b\x17\x1b\x7c\ +\x09\xc9\x7d\xb4\xfd\xf2\x85\x8c\x2d\x58\x05\x28\xcf\x7f\xde\x00\ +\xf2\x29\x7e\x95\x21\x1d\x0a\xd6\x8b\x57\x61\x2d\x92\x7f\x36\xaa\ +\x07\x25\xeb\x2c\x95\x37\xfa\xa3\x46\x31\xa7\xb6\xe4\xad\x49\xb8\ +\xae\x52\x9c\x1e\x83\xcc\x94\x80\x07\xd0\x9f\x9a\x78\x89\xa9\x64\ +\xc0\xd1\xb7\x7d\x26\x8b\x52\x1f\x62\xec\xe2\x1c\x5c\xb3\x2b\x61\ +\x67\x69\x4f\x1e\x1e\xc3\xbb\x3b\x7b\xee\x1d\xeb\x27\x1e\x94\x71\ +\x12\x7a\x25\x95\xad\x3b\x6d\xe0\x84\x2a\x90\x55\x5c\xb9\x59\xaf\ +\x2f\x04\x59\x8b\xd1\xf6\x5b\x3d\xea\xdd\xa7\xee\x96\x9b\x4f\xea\ +\xd7\xad\xbe\x24\xeb\xac\x8b\x92\x5a\x90\xdc\x93\xbb\x1b\x10\x56\ +\x0e\xdc\xa4\x0e\x12\x47\x9b\xbf\x07\x31\xed\x19\x67\xb6\x4e\xd2\ +\xb7\x26\xac\x56\xfb\x3d\xf7\x55\xc4\x9a\xa4\x39\x12\xe1\x21\x49\ +\x05\x84\x9c\x05\x36\x94\xa8\x64\x1e\xf9\xce\x33\x91\x9e\x05\x46\ +\x27\x6a\xa6\xaf\x4c\x42\x46\xa8\xd1\x16\xeb\xf4\xd8\x51\xd3\x19\ +\x99\xff\x00\xac\x57\x1d\x4a\x69\x27\xca\x16\x80\x95\x6e\x39\x24\ +\xe4\x11\xdc\xf6\xad\x1a\x73\x53\x44\xd3\x53\x21\x4f\x67\x43\x43\ +\x99\x75\x82\x56\x63\xce\x37\x57\x1a\x09\x2a\xdc\x39\x6b\x61\x07\ +\x09\x56\xde\xe3\x20\x7b\xd6\x8e\x36\x15\xd4\x56\xb5\xbc\xf9\x77\ +\x6f\xf3\x1c\xea\xd0\xce\xad\x6b\x7a\xee\xdf\xe6\x4a\x34\x45\xb2\ +\x05\xcf\x4d\xde\x9b\xb7\xd9\x6d\x13\xf5\x9b\x13\x14\x3f\x54\x5c\ +\x5f\x5b\x69\x6d\x90\x46\x42\x13\x90\x4e\x39\x19\x27\xb8\xe4\xfa\ +\x1e\x77\xea\xee\xad\x9b\xa7\xa7\x4a\x86\xdc\x44\x40\xb9\x38\xf3\ +\xa1\x51\xb0\x48\x88\x02\x88\x29\x01\x59\x27\x07\xca\x33\xed\x56\ +\x8c\x4d\x7f\x1e\xd7\x7e\x46\xa2\xb8\xe8\xa8\x97\x6b\xfa\x25\xb9\ +\x29\xb9\xe2\xe8\xe4\x74\xa5\xc5\x95\x1f\xea\x82\x54\x08\x1b\xb1\ +\x8c\x8c\x81\xce\x6a\x97\xd6\xfd\x64\xfe\x91\xe9\xdd\x5f\x63\xba\ +\x69\x0b\x2c\xbb\x8d\xf6\xec\x26\xa2\xf3\xb7\x0e\xc5\x4a\x4a\x7f\ +\x66\x80\x41\x38\xc2\x30\x0e\xe1\x80\xb5\xe4\x1d\xd9\xa7\xd0\xa1\ +\x46\xba\x8e\xda\x79\xf8\x9a\x30\xb4\x29\xd7\x71\xee\xf5\xa9\x3b\ +\xfd\x02\xd9\x45\xc3\xa9\x9a\x93\x51\x4e\x02\x65\xca\xdf\x65\x71\ +\xd8\x9e\x37\x9c\x85\xa9\x60\x15\x8f\x5c\xe3\xcb\xf4\x59\x1e\xb5\ +\x15\xfd\x1a\xd9\x57\x53\x7a\xeb\x02\xd9\xaf\x64\x4a\xd4\x11\x26\ +\x22\x63\xef\x37\x31\xe5\x2d\x25\xc2\xd2\x95\xbc\x0c\xe0\x1c\xe0\ +\xf1\xec\x2a\x15\xd1\xbe\xa2\x5e\xfa\x5d\xad\x59\xd4\xf6\x46\xd8\ +\x79\x61\xa5\x47\x93\x19\xf2\x76\x48\x65\x58\x25\x04\x8e\x41\xca\ +\x52\x41\xf4\x20\x70\x46\x41\x9a\xe9\xae\xb1\xe8\xfd\x2d\xd4\xdb\ +\x6e\xb8\xd2\xdd\x29\x4d\xa9\xe8\xff\x00\x69\x32\x63\x26\xfc\xe3\ +\x89\x90\x5d\x41\x4f\x94\xa9\xbc\x34\x94\x92\x48\x01\x27\xdb\x81\ +\x5d\x75\x6b\x58\xee\x64\xcb\xb2\x27\x3d\x33\xd0\x7a\x23\x5c\xf5\ +\x33\x53\xc2\x63\x45\xc6\x8d\x67\xd0\x91\x24\x34\x88\x9f\x6f\x50\ +\x55\xd6\x42\x5c\x52\x5b\x5c\x87\x54\x46\xdc\xf8\x6a\x27\x04\x24\ +\x64\x0e\xc3\x96\xce\xb0\xf4\xfe\xc6\x34\xa6\x85\xd4\x96\x9d\x23\ +\x68\x87\xaa\x66\xdc\xc4\x1b\xb6\x97\xb3\xdc\xc4\xa6\xdf\x25\x4b\ +\x2d\xed\xf0\xdc\x59\x4e\xe4\xb7\xc9\x49\xe3\xc4\x19\x39\x15\x5e\ +\xe8\x2e\xae\xdc\xf4\x77\x51\xaf\xfa\xaa\x2d\xa2\x24\xc8\x3a\x81\ +\x72\x13\x71\xb5\x49\x70\x94\x3a\xcb\xcb\x2b\x28\xde\x06\x41\x19\ +\xc6\xec\x7b\xf1\xcd\x7b\x1b\xa8\xda\x56\xc1\xac\x6c\x3a\xa3\x40\ +\x74\xe9\xad\x3b\x2e\xd5\x2c\xc8\x58\x91\x79\x7a\x70\x90\x92\x0a\ +\x4b\x7e\x64\xa4\x20\x60\x9e\x40\x27\x9e\xf4\x5d\x58\x32\xca\xe5\ +\xdc\xe7\x4b\x6d\x97\xbe\x92\x6b\xe9\x3a\xab\xa6\xfa\x73\x46\xde\ +\xf4\xed\xb4\xcf\x80\x6c\xf7\x4f\x1d\xf4\xec\x69\xd7\x36\x3e\x80\ +\xea\xf1\x90\xd8\x1e\x6e\xfb\x89\x00\x14\xd6\x1d\x5c\xba\xdb\x9e\ +\xfd\x18\xfa\x6d\x0e\x1e\x8c\xd3\xe8\x55\xf8\xba\xc4\x66\xf6\xb8\ +\x11\x01\xd7\x32\x0b\xad\x61\x5f\x78\xa9\x44\x92\xac\xf2\x6a\x03\ +\x70\xfd\x21\xa0\x93\xad\xd1\x66\xe9\xcc\x6b\x60\xd6\x96\xd9\x11\ +\xee\xae\x7e\xb6\x71\xe7\x57\x21\xc4\x29\x08\x78\x15\x23\x01\x08\ +\x0e\x38\x7c\x30\x91\x92\xbf\xbc\x30\x05\x30\x49\xeb\x04\x0b\xa7\ +\x47\x6d\x1a\x06\xfb\xa2\x9b\x9f\x2a\xc6\xdb\xa9\xb4\xdd\x1a\xba\ +\x38\xc1\x8e\xb5\x03\xb5\xc5\x34\x12\x42\xca\x72\x0e\x0a\x80\x3b\ +\x47\x1d\xea\x6e\x88\xcb\x2e\x67\x40\xcb\xe8\x9f\x4f\xad\xb7\xe9\ +\x1a\x02\xe5\xa6\x6c\xb0\xec\xc2\xca\x14\xde\xa9\x93\x79\x42\x27\ +\x19\xe7\x1e\x6f\x04\xbb\x90\x8f\x5c\x6d\xdb\xc6\x39\x06\xb9\x87\ +\xa0\xd6\x58\x17\x8e\xb5\xe9\x9b\x25\xea\x1b\x53\x20\xc8\xb8\xa5\ +\x89\x0c\x2c\xe5\x0e\x27\x9c\x83\x83\xc8\xe2\xa5\x3a\xc3\xac\x7a\ +\x63\x5c\x88\xf7\x2d\x75\xd2\xc8\x97\x8d\x4a\xd4\x44\xc5\x55\xce\ +\x3d\xe5\xe8\x8d\xbc\x13\x9d\xaa\x5b\x28\x49\xc9\xc9\x3c\x85\x0e\ +\xf8\xe0\x00\x2a\xbe\xe9\x8e\xa7\xfe\x85\xeb\xeb\x36\xab\xfb\x07\ +\xdb\x8d\xb2\x4a\x64\x7d\x9b\xc5\xf0\xbc\x5c\x03\xe5\xdd\xb5\x58\ +\xfa\xe0\xd5\x5b\x45\xe3\x19\x59\xdc\xea\x0b\x16\x86\xe9\x55\xc2\ +\xf3\xd5\x1d\x29\x23\xa7\xf1\xc4\x6d\x18\xd0\x96\xc4\xc4\x4e\x78\ +\x4a\x92\x52\x95\xad\x69\x5a\x81\xc0\x49\x28\xda\x02\x40\xc2\x4f\ +\xbf\x35\x19\xbe\xf4\xf3\x49\xeb\xae\x93\x74\xbb\x56\xd9\xf4\xfc\ +\x3d\x2d\x71\xd4\x9a\x89\x36\x69\x8d\x40\x5a\xcb\x5e\x1a\x9d\x7d\ +\x1b\xc0\x5a\x8f\x98\x06\x32\x33\xdf\x71\x04\x9c\x0a\x86\xda\x7a\ +\xf4\x6d\xda\x93\xa8\xf7\xaf\xe8\xa0\x77\xfa\x6f\x1d\x4c\x96\xbf\ +\x58\xe3\xec\x39\x4a\xd3\x9c\xf8\x5f\xb4\xfb\xf9\xc6\x13\xda\x9a\ +\x1f\xeb\x0c\xd1\xd1\x9d\x23\xd3\xfb\x75\xa1\x50\x65\xe9\x8b\xc0\ +\xbb\xc6\xbb\x09\x7b\x8a\xdc\x0e\x3e\xb4\x8f\x0b\x67\x97\x05\xe1\ +\xce\xe3\xf7\x3b\x73\xc0\xda\x05\x19\xa7\xa1\x75\xc2\xd0\x9d\x30\ +\xd4\xbd\x63\xd4\xdd\x10\x8f\xa1\xa3\xdb\x1b\xb5\xdb\x37\xc1\xbe\ +\x35\x25\xd5\x4c\xfb\x42\x52\xd1\x2b\x5e\x55\xb5\x49\xcb\xa7\x8c\ +\x11\xe5\xed\xc8\xdb\x10\xb4\x69\xed\x0f\xa5\xbf\x46\x5b\x27\x51\ +\x2f\x5a\x26\x0d\xfa\xf4\xcd\xd6\x4d\xbd\x4d\xbe\xfa\xdb\x69\xd2\ +\xa7\x56\x02\x9c\xdb\xca\xf6\x25\xb2\x12\x3f\xbd\x9f\x41\x4d\x93\ +\x3f\x48\xc2\x9b\x8d\xdb\x55\xda\x74\x05\xb6\xd7\xae\x2e\xf0\x04\ +\x29\x77\xc6\xee\x2e\x2d\x01\x3b\x52\x9d\xed\xc7\x23\x08\x56\x10\ +\x8c\x1d\xc7\xee\x8c\xe7\x9c\xc2\xa7\x75\x47\xed\x1d\x01\xb7\xf4\ +\xa3\xf5\x10\x42\x61\xdc\x95\x3b\xf5\x97\xdb\x33\xbf\x2a\x70\xec\ +\xf0\xb6\x71\xfd\x67\x7d\xde\x9d\xa8\xba\x0c\xb3\xe6\x5f\x9a\x2f\ +\xa4\x5a\x4b\x4f\xe9\xae\x9f\xb3\x79\xd1\xd6\x5b\xdb\x1a\x8a\x21\ +\x97\xa8\x2e\xd7\x1b\xc2\x63\x39\x09\x2b\x6d\x2a\x6d\x2c\x20\xba\ +\x92\x42\x77\xe0\x94\x82\x4e\x3b\xf2\x31\xcb\xfd\x4b\xb2\x42\xd3\ +\x7d\x41\xbf\x58\xad\xd2\xd3\x32\x0c\x39\xce\x35\x19\xf4\xac\x2b\ +\xc4\x68\x1f\x21\xc8\xe0\xf9\x48\xed\x53\x96\xba\xbd\x66\xbc\x68\ +\x4b\x16\x96\xea\x1f\x4f\x58\xd5\x23\x4f\xb4\x63\x5a\xe6\xb5\x75\ +\x72\x0b\xad\x33\x80\x03\x6b\xda\x95\x05\x80\x12\x81\xe9\xc2\x47\ +\xae\x49\x64\xb7\xf5\x0a\xd1\x07\x40\x6a\xbd\x25\x1b\x40\xd9\xc0\ +\xbe\x4e\xfb\x4c\x49\x8b\x71\x4e\x3d\x6d\x6c\x10\x52\xca\x14\xa0\ +\x54\xb0\x90\x30\x95\x15\x03\xe6\x51\x3b\xb3\x43\xb3\x2d\x0c\xe9\ +\xea\x59\xff\x00\xff\x00\x0f\x24\xa9\x3d\x6a\xbb\x8c\x9d\x87\x4e\ +\x3e\x42\x4f\xa7\xfb\x4c\x6a\xd9\xd3\x7b\x94\xcd\x51\xfa\x1d\xf5\ +\x16\x2e\xa5\x95\x22\x6b\x56\x79\x6c\xc9\x80\xe4\xb7\x0b\x8a\x65\ +\x64\xa0\xe1\x0a\x3c\x81\x90\x78\x1f\xdb\x57\xbd\x56\x9f\xa3\xe7\ +\x54\x4f\x48\xf5\xa4\xad\x48\x9b\x18\xbe\x7d\xaa\xdc\xb8\x3e\x01\ +\x99\xf6\x7d\xbb\x9c\x69\x7b\xf7\x6c\x5e\x71\xe1\xe3\x18\xfd\xee\ +\xfc\x52\x9d\x5f\xd5\x98\xd3\x3a\x70\xbe\x9e\xe8\xbd\x1f\x1f\x49\ +\xe9\xd9\x32\x84\xb9\xc9\x17\x05\xcc\x91\x2d\x69\xc1\x01\x4e\x28\ +\x27\xca\x0a\x52\x71\x8f\xdc\x4f\x3d\xf3\x09\xe8\x0e\x2f\x3e\x9d\ +\xc7\x43\xb7\xd1\x5d\x0b\xa7\xaf\x36\x6d\x13\x7f\xd2\x56\x37\xad\ +\x52\xac\x85\xeb\xae\xa3\x97\x79\x43\x33\x1a\x9a\x77\x01\xe1\xb6\ +\x5d\x0a\xd8\x0a\x06\x30\x82\x9f\x30\xc9\x38\x56\x6b\x8d\x3d\xa4\ +\x34\x56\x9d\xfd\x1c\xef\x7a\xd2\xeb\xa5\xe0\x6a\x1b\xbd\x87\x53\ +\x3b\x09\x82\xf3\xaa\x43\x32\x52\x16\xdb\x40\x39\xb1\x59\x52\x06\ +\xe5\x28\x00\x79\x38\xc9\x23\x35\x11\xbc\xf5\x8b\x4f\x6a\xeb\x55\ +\xa4\x75\x13\xa6\x51\xb5\x2d\xe2\xd7\x11\x30\x99\xb9\x35\x78\x7a\ +\x11\x71\xa4\xf2\x90\xe2\x10\x93\xb8\xe4\x93\x90\xa1\xc9\x38\xc6\ +\x6a\x69\xd3\xad\x61\xa0\xad\x5f\xa2\x3d\xe2\xd5\xa9\x22\x5b\xef\ +\x2f\x2e\xff\x00\xe3\x0d\x3a\x2f\x3f\x64\x92\xea\x0a\x99\xda\xa1\ +\x8c\xb9\xb5\x38\x27\x21\x3c\x84\x9e\x6a\x74\x7b\x15\xfd\xc5\xab\ +\x2c\x2d\x21\xa2\xf4\xce\x9c\xfd\x26\x3a\x6f\x7f\xd2\xb6\xb4\x5a\ +\x61\x6a\x4d\x3d\x22\x6a\xe0\xa1\x65\x49\x65\xcf\xb3\x92\x76\xe7\ +\x90\x08\x5a\x46\x3b\x64\x1a\x80\x49\xd3\x3a\x5b\x4d\xe8\x4d\x7b\ +\xd5\x9b\xe6\x9b\x8b\xa9\xae\x6e\x6a\xd9\x56\xf8\x10\xe5\xba\xb4\ +\xc7\x65\x3e\x39\x0a\x5a\x92\x82\x0a\x89\xca\xbd\x7d\x13\x8c\x73\ +\x51\x48\xff\x00\xa4\x25\xcc\x75\x9e\xd3\xd4\x19\x5a\x72\x33\x91\ +\x2c\xf0\x17\x6f\xb7\xd9\xa3\xca\x2d\x36\xcb\x25\x0a\x48\x1e\x21\ +\x42\xb2\x7c\xd9\x27\x6f\x38\x03\x8c\x53\x6d\x83\xac\xc9\x66\xd7\ +\xa9\xf4\xee\xa5\xd1\xec\xea\x0d\x2f\xa8\x2e\xae\x5d\x55\x6f\x54\ +\xf5\xc7\x76\x2b\xca\x5e\xef\x23\xe9\x49\xe3\x84\xe7\xcb\xce\x3d\ +\x32\x72\x5d\x13\x92\x77\x2e\x28\x3d\x3c\xe9\xac\x4e\xae\x74\xd6\ +\xea\xbd\x33\x1d\x3a\x77\xa8\x56\x37\x1d\xfd\x59\x21\xc5\x38\x88\ +\x92\xbc\x26\x9e\x49\x49\xce\x46\x77\xa1\x00\x67\x00\x93\xd8\x76\ +\xaf\x35\xb6\x80\xb2\x68\x1e\x88\x6a\x59\x17\x6b\x5b\x2e\x5f\xa6\ +\xea\xc7\x6d\x56\xb7\xdc\xc9\x5b\x31\x58\x57\x99\x69\xf4\xf3\x6c\ +\x52\x73\x8f\xde\x1f\x83\x3c\xde\xa3\x5f\x3a\x91\xd5\x5d\x2d\x32\ +\x2b\xda\x7f\x48\x46\xd3\xa9\x69\x36\x68\xf3\x67\x96\x62\x45\x43\ +\x24\x2c\x25\x6f\x2c\x72\xa5\x6c\x4a\x73\x81\x9c\x24\x62\x9e\xbf\ +\x4c\x4e\xa3\xc1\xd6\xba\x86\xc5\x68\xb3\xcf\x83\x32\x3d\x9e\x19\ +\x33\x1e\xb7\xaf\x74\x47\x26\xbc\x41\x7b\xc2\x57\xef\xa4\x6d\x18\ +\x57\xc9\xf9\xa8\x76\xb3\x2d\x1c\xd9\x92\x66\xbf\xd1\x9f\xa7\x16\ +\xad\x4b\xa5\xf5\x7e\xb0\xb8\xda\x63\x5f\xdf\xb1\xb2\x86\xed\xd6\ +\xd9\x53\x04\x78\xcf\x48\x58\x27\x73\xab\x2a\x40\x09\x48\x09\xe0\ +\xa8\x03\x93\xec\x2a\x7e\xee\x87\xe9\xad\xbb\xab\x3d\x36\x7e\x56\ +\x9e\xb0\xb7\x1b\x54\x46\x72\x15\xea\xc8\xc4\xe4\xca\x66\x14\xdd\ +\x89\x2d\xa9\x0a\x4a\xd5\xf7\x96\xa0\x9e\x0e\x38\xf5\x26\xa8\xde\ +\x92\x75\x2a\x4e\x84\x8b\x7b\xb4\x4b\xb2\x44\xd4\x3a\x7e\xfd\x1c\ +\x47\xb9\xdb\x24\x3a\xa6\x7c\x44\xa7\x20\x14\x38\x90\x4a\x14\x02\ +\x94\x33\x83\xdc\x1e\xe0\x10\xd3\xa8\xf5\x3e\x9d\x37\xdb\x55\xd7\ +\x44\x68\xe3\xa5\x1c\xb7\x3a\x1f\x1b\xae\x8e\xcc\x53\x8e\xa5\x49\ +\x52\x09\x52\x82\x76\xed\x29\xec\x90\x3b\xf2\x7b\x54\x26\xac\x5a\ +\x70\x9e\x76\xcb\x63\x50\xf4\xde\xcb\xa4\xba\x77\xad\xc4\xfb\x54\ +\x37\x6f\x33\xb5\x88\xd3\xfa\x7d\xd7\x89\x25\x96\x92\xad\xe5\xd4\ +\x8c\xf6\x28\x51\x4e\x7d\x08\x1f\x15\x68\xca\xe8\xb7\x4f\xed\xb7\ +\xf9\x1a\x0a\xe3\xa6\x6c\xb0\xec\xc2\xca\x14\xde\xa8\x93\x79\x42\ +\x27\x19\xe7\x1e\x6f\x04\xbb\xb8\x23\xd7\x1b\x76\xf9\x71\x92\x0d\ +\x50\x5f\xa4\x27\x5c\x24\xf5\x61\xdb\x3f\xd9\xf4\xf2\x34\xeb\x16\ +\xc5\xba\xf7\x86\xdc\xcf\x1c\xbc\xf2\xf6\x8f\x10\x90\xda\x30\x40\ +\x40\x03\x83\xdc\xf3\x5b\xb5\x7f\x58\xb4\xce\xba\x44\x7b\x96\xbb\ +\xe9\x6c\x4b\xc6\xa4\x66\x22\x63\x2a\xe7\x1e\xf2\xf4\x46\xde\x09\ +\xfb\xaa\x5b\x28\x49\xc9\xc9\x3c\x85\x0e\xf8\xe0\x00\x2a\xdd\x51\ +\x6d\x54\x69\x32\x5a\xe5\x8f\x43\xe9\x3f\xd1\x77\x47\xf5\x12\xe3\ +\xa2\x60\xdf\x2f\x92\x67\xcc\xb6\x2c\x3d\x21\x48\x69\x6a\x53\xf2\ +\x30\xea\xc2\x7e\xf9\x42\x23\xed\x48\xed\xe7\xcf\x38\x15\x28\x83\ +\xd2\xad\x1f\xac\x2f\x9d\x19\xd4\x56\x9b\x04\x28\x96\x4b\xc4\x17\ +\x5d\xbf\x32\xde\x43\x45\xd8\xed\x85\xa8\x2b\x9e\xc5\x61\x68\xe3\ +\x1d\xaa\x8f\xbe\xf5\x44\xdd\x3a\x03\xa7\x7a\x52\x6c\x49\x65\x36\ +\x6b\x8a\xe7\x7e\xb2\x13\x37\x78\xdb\x95\x21\x5b\x3c\x2d\x83\x6f\ +\xfb\xa3\xbe\xe3\xf7\x7b\x73\xc5\xb3\xa2\xba\x88\xd6\x81\xfd\x16\ +\xae\x96\x3b\x86\xa6\xd3\x13\xa6\xcf\x88\xb4\x58\x22\xdb\xa7\x7d\ +\xa6\x74\x63\x29\x27\xc5\x0f\x20\x7f\x51\xe1\x85\x93\xcf\xef\x6e\ +\x1c\xf1\x91\x58\x89\x66\x5a\xf3\x6c\x40\xe6\x95\xd2\x3d\x47\xe8\ +\x85\xea\xf1\xa3\xb4\xe4\x1b\x7d\xea\x06\xb1\x4c\x46\x56\xc2\x15\ +\xbc\xc3\x90\xf0\x43\x09\x23\x3c\x81\xe3\xa0\x76\xcf\xec\xc9\xa9\ +\xee\xb7\xe8\xde\x80\xbb\x75\x0f\xa7\x3f\xd1\x0b\x2c\x66\xad\x08\ +\xbd\xcd\xb5\xdf\x5a\x19\xda\xea\xe2\x82\xb5\x25\xce\x4e\x32\x18\ +\x74\x77\xe7\x70\xed\x54\x3f\xe8\xef\xd6\x77\xba\x49\x22\xf2\x55\ +\xa7\x13\xa8\x22\x5c\xc3\x05\x51\xd5\x33\xc0\xf0\xdc\x65\x4a\x52\ +\x16\x0f\x86\xbc\x9f\x31\xf4\x1e\x87\x3c\x53\x9f\x4f\x7f\x48\x3b\ +\xce\x93\xd0\x9a\x9f\x4e\xbf\x63\x45\xc6\x6d\xea\x54\xa9\xac\x5c\ +\x15\x2c\xb6\x60\xbf\x21\xa2\x85\xad\x28\x28\x56\xee\x49\x56\x37\ +\x0e\xe7\xde\x84\xe3\xcc\x24\xa7\xc8\xb4\xf4\x9d\xef\x4d\x46\xfd\ +\x15\xba\xad\x7b\x89\xa6\x60\xce\xd3\xe8\xd6\x2a\x54\x2b\x5a\x9c\ +\x5a\x18\x53\x5e\x24\x14\xb0\x14\x50\x42\xb0\x3c\x8a\x20\x1e\x70\ +\x47\xad\x25\xbf\xf4\x43\x44\xea\x3e\xae\xf4\xd1\x16\xeb\x67\xea\ +\x5b\x56\xa5\xb2\xaa\xe7\x74\x83\x19\xd5\x14\x0f\x0d\xb4\x2c\xa5\ +\xb2\x4e\x46\xe2\xb4\xa4\xe3\x1c\x02\x47\x35\x49\xd8\x7a\x9e\x6d\ +\x1d\x01\xd4\x3d\x28\x36\x10\xf0\xbd\x5c\x51\x3b\xf5\x8f\xdb\x36\ +\x96\x76\xaa\x39\xd9\xe1\x6c\x3b\xbf\xdc\xfd\xf7\x0f\xbd\xdb\x8e\ +\x64\x37\xaf\xd2\x12\xf0\xf5\xf3\x40\x5e\xec\x96\x26\x6d\xb3\x34\ +\x74\x03\x08\x78\xd2\xbc\x74\x4d\x42\x9b\x43\x6a\xdc\x90\x84\x14\ +\x02\x12\x78\x04\xe3\x3d\xf8\xa9\xcc\x88\x70\x92\x64\xcf\xac\x3d\ +\x3e\xd2\x4a\xe9\x0e\xa3\xbc\x8d\x2d\xa7\xf4\x86\xa0\xb1\xdd\x36\ +\xdb\x58\xb7\xde\x5b\x92\xb9\xd0\xb7\xa1\x19\x71\x21\xd5\xf9\xc0\ +\x51\x51\xcf\x9b\xc9\xd8\x64\xd2\xae\xb6\xe8\x2d\x0d\x6c\xd6\xba\ +\x63\xa7\xba\x77\x47\x43\x89\x3f\x59\xa2\x0a\xdc\xba\x97\xd7\x9b\ +\x7a\x4b\xa8\x42\xbc\x16\xf3\xb4\x64\x21\x65\x44\xe4\x9d\xff\x00\ +\x02\xa9\xae\xa3\x6b\x4d\x0b\xaa\xa3\xce\x93\x68\xe9\x7b\x76\x0b\ +\xd4\xe7\xfc\x77\xa7\xb7\x7b\x75\xf4\x25\x65\x5b\x97\xb1\x92\x84\ +\xa5\x21\x47\x3c\x12\x40\x07\x8e\xc2\x9c\x7a\xc1\xd6\x39\xda\xef\ +\x58\xe9\xad\x51\x6f\xb3\x7e\xa1\x9b\xa7\xa3\x32\xd4\x62\x25\xfd\ +\xa3\x2e\x34\xe1\x71\x2e\x7d\xc4\xe3\x9c\x71\x83\xdb\xbd\x0d\xa0\ +\x50\x95\x91\x7b\x6b\x4e\x92\x68\x36\xa1\xeb\x5d\x2c\xe6\x93\xb1\ +\x69\xf8\xd6\x7b\x6a\x5d\xd3\xf7\xaf\xd7\x68\x5c\xd9\x72\x12\xd6\ +\xe5\x07\x5a\x2e\x95\x79\x95\xc6\x14\x90\x31\xdb\xd3\x1c\x69\xb4\ +\x0c\x1c\x0e\x7f\x8d\x5b\xbd\x44\xea\xa6\x91\xd7\x6b\x9d\x79\xbc\ +\xf4\xa2\x30\xd5\x93\x62\xf8\x4e\xdd\x63\xde\x9f\x6d\x90\xe8\x6f\ +\x62\x5e\xfb\x38\x4e\x37\x27\xca\x70\x56\x41\xda\x33\x9e\x73\x1c\ +\xd7\x5a\xee\x0e\xa5\xd0\xda\x57\x4d\xb1\xa3\xed\x56\x77\xac\x2c\ +\x29\x97\x6e\x11\x87\xed\x66\x92\x00\xdc\xae\x06\x32\x46\xe3\x92\ +\xac\xa8\x92\x31\x9c\x54\x49\xae\x45\xa1\x19\x25\xaa\x20\xb9\x52\ +\x7e\xe6\x73\x8f\x53\x58\xad\x41\x5c\xe3\x3f\x5a\xd8\x1b\xe3\xd3\ +\x93\x41\x4a\x02\xbd\xaa\xb7\x43\x1c\x59\xe5\xae\x03\xb7\x3b\xc4\ +\x2b\x6b\x40\x97\x65\x48\x6d\x84\x00\x39\x2a\x5a\x82\x47\xf1\x34\ +\x55\xf5\xfa\x14\x74\xda\x46\xae\xea\x9c\x7d\x4d\x29\x8f\xff\x00\ +\x45\xd3\xcb\x12\x16\xb2\x38\x72\x40\x1f\xb2\x40\xe3\x9c\x1f\x39\ +\xfa\x0f\x7a\x29\xb1\xd8\xcb\x53\x47\x62\x4f\xa7\x54\x55\x66\x8e\ +\x91\xd8\x6e\xff\x00\xf2\x34\xe4\x3b\x0a\xed\x1a\x2b\x87\x2e\x83\ +\xbb\xbe\x7f\x2f\xc9\xc3\xfd\x27\xfe\xfc\xbf\x27\x17\x2b\x9a\xf1\ +\x27\x1c\x57\x69\x51\x55\xfd\x0b\xff\x00\x4f\x2f\xc9\x1f\xa4\x7f\ +\xdf\x97\xe4\xe2\xd3\xea\x3d\x28\x90\x71\x08\x8f\x73\x5d\xa5\x45\ +\x1f\xa1\x7f\xe9\xe5\xf9\x0f\xd2\x7f\xef\xcb\xf2\x70\xfa\x4e\x07\ +\x35\xb1\xa0\x54\xad\xc7\xb0\xae\xdc\xa2\xaf\xfa\x2f\xfd\xf9\x7e\ +\x43\xf4\x8f\xfb\xf2\xfc\x9c\x5c\xca\xb6\xf0\x06\x4d\x6d\x71\x59\ +\x50\x1e\xb5\xd9\x94\x55\x1f\x40\xdd\xdf\x89\xe5\xf9\x27\xf4\x9f\ +\xfb\xf2\xfc\x9c\x64\xd9\xda\xb3\x5a\x26\x2f\x83\x9e\x31\x5d\xa9\ +\x45\x0b\xa0\xac\xef\xc4\xf2\xfc\x87\xe9\x3f\xf7\xe5\xf9\x3e\x77\ +\x6b\xa9\xdf\x63\xb6\xca\x92\x14\x01\x6d\xb3\x8f\xa9\xe0\x7f\x3a\ +\xa1\x11\x95\x3a\xa5\x7a\xe7\xd6\xbe\xc6\x51\x5d\x4c\x2e\x11\x61\ +\xe2\xd5\xef\x73\xa1\x84\xa0\xb0\xea\xd7\xb9\xf1\xec\x82\x71\x80\ +\x73\xf4\xaf\x12\x15\xef\xc5\x7d\x85\xa2\xb4\x64\x37\xf1\xb5\xbd\ +\x8f\x8f\x67\x8c\x1c\x63\x3c\xf3\x5e\x82\x08\xef\xe6\xaf\xb0\x74\ +\x51\x90\x38\xfd\xc7\xc7\xac\x71\x40\x49\xc5\x7d\x85\xa2\xa7\x20\ +\x71\xbb\x8f\x8f\x84\x64\x70\x70\x6b\xd0\x09\x1c\x02\x7d\x39\x3e\ +\x95\xf6\x0a\x8a\x8e\x19\x3c\x7e\xe3\xe3\xee\x14\x08\x0a\x38\x03\ +\xd7\x15\xe8\x27\x80\x08\xaf\xb0\x34\x51\xc3\x27\xda\x3b\x8f\x90\ +\x18\x24\x7d\xd0\x4d\x79\xb4\xfb\x1f\x73\xe9\x5f\x60\x28\xa8\xe1\ +\xf7\x83\xc4\x27\xc8\xf8\xff\x00\xb4\x15\x77\xfc\xeb\xcc\x6d\x00\ +\x03\x8c\x73\x8a\xfb\x03\x45\x4f\x0f\xbc\x3d\xa3\xb8\xf8\xfc\x8c\ +\x9c\x11\xc1\xf9\x15\xe8\xc2\x95\xc2\x52\x33\x5f\x60\x28\xa3\x86\ +\x0b\x11\x6e\x47\xc8\x15\x0c\x63\x90\x4f\xf6\xab\xc2\x93\xff\x00\ +\x2b\x8e\xfe\xb5\xf5\xfe\x8a\x8e\x1f\x79\x2f\x13\x7e\x47\xc8\x21\ +\xbb\x1b\x4f\x6f\x7c\xf6\xa3\x82\x0a\x47\xf0\x3d\xeb\xeb\xed\x14\ +\x70\xbb\xc3\xda\x7b\x8f\x90\x24\x01\x94\x9c\xfb\xf3\xef\x5e\xe5\ +\x58\x20\x13\x8a\xfa\xfb\x45\x1c\x3e\xf0\xf6\x9e\xe3\xe4\x0a\x54\ +\x40\xe1\x47\xbf\x3c\x56\x1b\x95\x93\xc7\x7f\x5e\x6b\xec\x0d\x14\ +\x70\xc3\xda\x7b\x8f\x8f\xe0\x10\xac\xf6\x3d\xfb\x77\xaf\x54\xae\ +\x30\x09\xcf\xc8\xaf\xaf\xf4\x51\xc3\xef\x0f\x69\xee\x3e\x3f\x61\ +\x4a\xf5\xc7\xcd\x03\x68\xce\x72\x4e\x6b\xec\x0d\x15\x3c\x3e\xf2\ +\x3d\xa3\xb8\xf9\x00\x79\x1d\xf1\x9e\xc6\xb1\x52\x94\x7d\x41\x15\ +\xf6\x06\x8a\x38\x60\xf1\x17\xe4\x7c\x7d\xff\x00\xaa\x6b\xd0\x94\ +\x93\x9f\x7e\x3d\xeb\xec\x0d\x14\x70\xfb\xc8\xf6\x8e\xe3\xe4\x07\ +\x38\xe0\x8f\xf2\xac\x52\x3c\xb9\x38\xc5\x7d\x81\xa2\x8e\x19\x2f\ +\x11\xdc\x7c\x7f\x1c\x64\x0c\x8c\x77\x19\xc5\x62\xa7\x01\xc2\x73\ +\xc7\xd2\xbe\xc1\x51\x47\x0c\x87\x88\x7d\x87\xc8\x5b\x7c\x1b\x95\ +\xcd\xf0\xc5\xb2\x0c\xb9\xce\x13\xe5\x4c\x76\x14\xe1\x27\xe8\x33\ +\x57\x8f\x48\x7f\x45\xcd\x7b\xab\xe6\x33\x2f\x53\x46\x77\x4b\xd9\ +\xb2\x0a\xd7\x24\x62\x4b\x89\xe3\x84\x35\xdc\x64\x1e\xea\xc7\xd0\ +\xd7\xd0\x9a\x2a\x54\x12\x2b\x2a\xcd\xa1\x8b\x41\xe9\x2b\x0e\x88\ +\xd2\xf1\x34\xe6\x9b\x82\x98\x76\xf8\xc3\xca\x91\xca\x96\xa3\xdd\ +\x6b\x3f\xbc\xa3\xea\x68\xa7\xda\x2a\xe2\x42\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x02\x8a\ +\x28\xa0\x02\x8a\x28\xa0\x02\x8a\x28\xa0\x0f\xff\xd9\ +" + +qt_resource_name = b"\ +\x00\x06\ +\x07\x03\x7d\xc3\ +\x00\x69\ +\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\ +\x00\x0b\ +\x08\x01\x81\xe7\ +\x00\x65\ +\x00\x78\x00\x61\x00\x6d\x00\x70\x00\x6c\x00\x65\x00\x2e\x00\x6a\x00\x70\x00\x67\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\ +\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() diff --git a/examples/itemviews/simpledommodel.py b/examples/itemviews/simpledommodel.py new file mode 100755 index 0000000..0a597c0 --- /dev/null +++ b/examples/itemviews/simpledommodel.py @@ -0,0 +1,224 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QAbstractItemModel, QFile, QIODevice, QModelIndex, Qt +from PyQt5.QtWidgets import QApplication, QFileDialog, QMainWindow, QTreeView +from PyQt5.QtXml import QDomDocument + + +class DomItem(object): + def __init__(self, node, row, parent=None): + self.domNode = node + # Record the item's location within its parent. + self.rowNumber = row + self.parentItem = parent + self.childItems = {} + + def node(self): + return self.domNode + + def parent(self): + return self.parentItem + + def child(self, i): + if i in self.childItems: + return self.childItems[i] + + if i >= 0 and i < self.domNode.childNodes().count(): + childNode = self.domNode.childNodes().item(i) + childItem = DomItem(childNode, i, self) + self.childItems[i] = childItem + return childItem + + return None + + def row(self): + return self.rowNumber + + +class DomModel(QAbstractItemModel): + def __init__(self, document, parent=None): + super(DomModel, self).__init__(parent) + + self.domDocument = document + + self.rootItem = DomItem(self.domDocument, 0) + + def columnCount(self, parent): + return 3 + + def data(self, index, role): + if not index.isValid(): + return None + + if role != Qt.DisplayRole: + return None + + item = index.internalPointer() + + node = item.node() + attributes = [] + attributeMap = node.attributes() + + if index.column() == 0: + return node.nodeName() + + elif index.column() == 1: + for i in range(0, attributeMap.count()): + attribute = attributeMap.item(i) + attributes.append(attribute.nodeName() + '="' + + attribute.nodeValue() + '"') + + return " ".join(attributes) + + if index.column() == 2: + value = node.nodeValue() + if value is None: + return '' + + return ' '.join(node.nodeValue().split('\n')) + + return None + + def flags(self, index): + if not index.isValid(): + return Qt.NoItemFlags + + return Qt.ItemIsEnabled | Qt.ItemIsSelectable + + def headerData(self, section, orientation, role): + if orientation == Qt.Horizontal and role == Qt.DisplayRole: + if section == 0: + return "Name" + + if section == 1: + return "Attributes" + + if section == 2: + return "Value" + + return None + + def index(self, row, column, parent): + if not self.hasIndex(row, column, parent): + return QModelIndex() + + if not parent.isValid(): + parentItem = self.rootItem + else: + parentItem = parent.internalPointer() + + childItem = parentItem.child(row) + if childItem: + return self.createIndex(row, column, childItem) + else: + return QModelIndex() + + def parent(self, child): + if not child.isValid(): + return QModelIndex() + + childItem = child.internalPointer() + parentItem = childItem.parent() + + if not parentItem or parentItem == self.rootItem: + return QModelIndex() + + return self.createIndex(parentItem.row(), 0, parentItem) + + def rowCount(self, parent): + if parent.column() > 0: + return 0 + + if not parent.isValid(): + parentItem = self.rootItem + else: + parentItem = parent.internalPointer() + + return parentItem.node().childNodes().count() + + +class MainWindow(QMainWindow): + def __init__(self): + super(MainWindow, self).__init__() + + self.fileMenu = self.menuBar().addMenu("&File") + self.fileMenu.addAction("&Open...", self.openFile, "Ctrl+O") + self.fileMenu.addAction("E&xit", self.close, "Ctrl+Q") + + self.xmlPath = "" + self.model = DomModel(QDomDocument(), self) + self.view = QTreeView(self) + self.view.setModel(self.model) + + self.setCentralWidget(self.view) + self.setWindowTitle("Simple DOM Model") + + def openFile(self): + filePath, _ = QFileDialog.getOpenFileName(self, "Open File", + self.xmlPath, "XML files (*.xml);;HTML files (*.html);;" + "SVG files (*.svg);;User Interface files (*.ui)") + + if filePath: + f = QFile(filePath) + if f.open(QIODevice.ReadOnly): + document = QDomDocument() + if document.setContent(f): + newModel = DomModel(document, self) + self.view.setModel(newModel) + self.model = newModel + self.xmlPath = filePath + + f.close() + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + window = MainWindow() + window.resize(640, 480) + window.show() + sys.exit(app.exec_()) diff --git a/examples/itemviews/simpletreemodel/default.txt b/examples/itemviews/simpletreemodel/default.txt new file mode 100644 index 0000000..2b2fb57 --- /dev/null +++ b/examples/itemviews/simpletreemodel/default.txt @@ -0,0 +1,40 @@ +Getting Started How to familiarize yourself with Qt Designer + Launching Designer Running the Qt Designer application + The User Interface How to interact with Qt Designer + +Designing a Component Creating a GUI for your application + Creating a Dialog How to create a dialog + Composing the Dialog Putting widgets into the dialog example + Creating a Layout Arranging widgets on a form + Signal and Slot Connections Making widget communicate with each other + +Using a Component in Your Application Generating code from forms + The Direct Approach Using a form without any adjustments + The Single Inheritance Approach Subclassing a form's base class + The Multiple Inheritance Approach Subclassing the form itself + Automatic Connections Connecting widgets using a naming scheme + A Dialog Without Auto-Connect How to connect widgets without a naming scheme + A Dialog With Auto-Connect Using automatic connections + +Form Editing Mode How to edit a form in Qt Designer + Managing Forms Loading and saving forms + Editing a Form Basic editing techniques + The Property Editor Changing widget properties + The Object Inspector Examining the hierarchy of objects on a form + Layouts Objects that arrange widgets on a form + Applying and Breaking Layouts Managing widgets in layouts + Horizontal and Vertical Layouts Standard row and column layouts + The Grid Layout Arranging widgets in a matrix + Previewing Forms Checking that the design works + +Using Containers How to group widgets together + General Features Common container features + Frames QFrame + Group Boxes QGroupBox + Stacked Widgets QStackedWidget + Tab Widgets QTabWidget + Toolbox Widgets QToolBox + +Connection Editing Mode Connecting widgets together with signals and slots + Connecting Objects Making connections in Qt Designer + Editing Connections Changing existing connections diff --git a/examples/itemviews/simpletreemodel/simpletreemodel.py b/examples/itemviews/simpletreemodel/simpletreemodel.py new file mode 100755 index 0000000..5a1c9cf --- /dev/null +++ b/examples/itemviews/simpletreemodel/simpletreemodel.py @@ -0,0 +1,212 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QAbstractItemModel, QFile, QIODevice, QModelIndex, Qt +from PyQt5.QtWidgets import QApplication, QTreeView + +import simpletreemodel_rc + + +class TreeItem(object): + def __init__(self, data, parent=None): + self.parentItem = parent + self.itemData = data + self.childItems = [] + + def appendChild(self, item): + self.childItems.append(item) + + def child(self, row): + return self.childItems[row] + + def childCount(self): + return len(self.childItems) + + def columnCount(self): + return len(self.itemData) + + def data(self, column): + try: + return self.itemData[column] + except IndexError: + return None + + def parent(self): + return self.parentItem + + def row(self): + if self.parentItem: + return self.parentItem.childItems.index(self) + + return 0 + + +class TreeModel(QAbstractItemModel): + def __init__(self, data, parent=None): + super(TreeModel, self).__init__(parent) + + self.rootItem = TreeItem(("Title", "Summary")) + self.setupModelData(data.split('\n'), self.rootItem) + + def columnCount(self, parent): + if parent.isValid(): + return parent.internalPointer().columnCount() + else: + return self.rootItem.columnCount() + + def data(self, index, role): + if not index.isValid(): + return None + + if role != Qt.DisplayRole: + return None + + item = index.internalPointer() + + return item.data(index.column()) + + def flags(self, index): + if not index.isValid(): + return Qt.NoItemFlags + + return Qt.ItemIsEnabled | Qt.ItemIsSelectable + + def headerData(self, section, orientation, role): + if orientation == Qt.Horizontal and role == Qt.DisplayRole: + return self.rootItem.data(section) + + return None + + def index(self, row, column, parent): + if not self.hasIndex(row, column, parent): + return QModelIndex() + + if not parent.isValid(): + parentItem = self.rootItem + else: + parentItem = parent.internalPointer() + + childItem = parentItem.child(row) + if childItem: + return self.createIndex(row, column, childItem) + else: + return QModelIndex() + + def parent(self, index): + if not index.isValid(): + return QModelIndex() + + childItem = index.internalPointer() + parentItem = childItem.parent() + + if parentItem == self.rootItem: + return QModelIndex() + + return self.createIndex(parentItem.row(), 0, parentItem) + + def rowCount(self, parent): + if parent.column() > 0: + return 0 + + if not parent.isValid(): + parentItem = self.rootItem + else: + parentItem = parent.internalPointer() + + return parentItem.childCount() + + def setupModelData(self, lines, parent): + parents = [parent] + indentations = [0] + + number = 0 + + while number < len(lines): + position = 0 + while position < len(lines[number]): + if lines[number][position] != ' ': + break + position += 1 + + lineData = lines[number][position:].trimmed() + + if lineData: + # Read the column data from the rest of the line. + columnData = [s for s in lineData.split('\t') if s] + + if position > indentations[-1]: + # The last child of the current parent is now the new + # parent unless the current parent has no children. + + if parents[-1].childCount() > 0: + parents.append(parents[-1].child(parents[-1].childCount() - 1)) + indentations.append(position) + + else: + while position < indentations[-1] and len(parents) > 0: + parents.pop() + indentations.pop() + + # Append a new item to the current parent's list of children. + parents[-1].appendChild(TreeItem(columnData, parents[-1])) + + number += 1 + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + f = QFile(':/default.txt') + f.open(QIODevice.ReadOnly) + model = TreeModel(f.readAll()) + f.close() + + view = QTreeView() + view.setModel(model) + view.setWindowTitle("Simple Tree Model") + view.show() + sys.exit(app.exec_()) diff --git a/examples/itemviews/simpletreemodel/simpletreemodel.qrc b/examples/itemviews/simpletreemodel/simpletreemodel.qrc new file mode 100644 index 0000000..a8ecc98 --- /dev/null +++ b/examples/itemviews/simpletreemodel/simpletreemodel.qrc @@ -0,0 +1,5 @@ + + + default.txt + + diff --git a/examples/itemviews/simpletreemodel/simpletreemodel_rc.py b/examples/itemviews/simpletreemodel/simpletreemodel_rc.py new file mode 100644 index 0000000..c4bec56 --- /dev/null +++ b/examples/itemviews/simpletreemodel/simpletreemodel_rc.py @@ -0,0 +1,159 @@ +# -*- coding: utf-8 -*- + +# Resource object code +# +# Created: Sun May 12 16:25:25 2013 +# by: The Resource Compiler for PyQt (Qt v5.0.2) +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore + +qt_resource_data = b"\ +\x00\x00\x07\xb9\ +\x47\ +\x65\x74\x74\x69\x6e\x67\x20\x53\x74\x61\x72\x74\x65\x64\x09\x09\ +\x09\x09\x48\x6f\x77\x20\x74\x6f\x20\x66\x61\x6d\x69\x6c\x69\x61\ +\x72\x69\x7a\x65\x20\x79\x6f\x75\x72\x73\x65\x6c\x66\x20\x77\x69\ +\x74\x68\x20\x51\x74\x20\x44\x65\x73\x69\x67\x6e\x65\x72\x0a\x20\ +\x20\x20\x20\x4c\x61\x75\x6e\x63\x68\x69\x6e\x67\x20\x44\x65\x73\ +\x69\x67\x6e\x65\x72\x09\x09\x09\x52\x75\x6e\x6e\x69\x6e\x67\x20\ +\x74\x68\x65\x20\x51\x74\x20\x44\x65\x73\x69\x67\x6e\x65\x72\x20\ +\x61\x70\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x0a\x20\x20\x20\x20\ +\x54\x68\x65\x20\x55\x73\x65\x72\x20\x49\x6e\x74\x65\x72\x66\x61\ +\x63\x65\x09\x09\x09\x48\x6f\x77\x20\x74\x6f\x20\x69\x6e\x74\x65\ +\x72\x61\x63\x74\x20\x77\x69\x74\x68\x20\x51\x74\x20\x44\x65\x73\ +\x69\x67\x6e\x65\x72\x0a\x0a\x44\x65\x73\x69\x67\x6e\x69\x6e\x67\ +\x20\x61\x20\x43\x6f\x6d\x70\x6f\x6e\x65\x6e\x74\x09\x09\x09\x43\ +\x72\x65\x61\x74\x69\x6e\x67\x20\x61\x20\x47\x55\x49\x20\x66\x6f\ +\x72\x20\x79\x6f\x75\x72\x20\x61\x70\x70\x6c\x69\x63\x61\x74\x69\ +\x6f\x6e\x0a\x20\x20\x20\x20\x43\x72\x65\x61\x74\x69\x6e\x67\x20\ +\x61\x20\x44\x69\x61\x6c\x6f\x67\x09\x09\x09\x48\x6f\x77\x20\x74\ +\x6f\x20\x63\x72\x65\x61\x74\x65\x20\x61\x20\x64\x69\x61\x6c\x6f\ +\x67\x0a\x20\x20\x20\x20\x43\x6f\x6d\x70\x6f\x73\x69\x6e\x67\x20\ +\x74\x68\x65\x20\x44\x69\x61\x6c\x6f\x67\x09\x09\x50\x75\x74\x74\ +\x69\x6e\x67\x20\x77\x69\x64\x67\x65\x74\x73\x20\x69\x6e\x74\x6f\ +\x20\x74\x68\x65\x20\x64\x69\x61\x6c\x6f\x67\x20\x65\x78\x61\x6d\ +\x70\x6c\x65\x0a\x20\x20\x20\x20\x43\x72\x65\x61\x74\x69\x6e\x67\ +\x20\x61\x20\x4c\x61\x79\x6f\x75\x74\x09\x09\x09\x41\x72\x72\x61\ +\x6e\x67\x69\x6e\x67\x20\x77\x69\x64\x67\x65\x74\x73\x20\x6f\x6e\ +\x20\x61\x20\x66\x6f\x72\x6d\x0a\x20\x20\x20\x20\x53\x69\x67\x6e\ +\x61\x6c\x20\x61\x6e\x64\x20\x53\x6c\x6f\x74\x20\x43\x6f\x6e\x6e\ +\x65\x63\x74\x69\x6f\x6e\x73\x09\x09\x4d\x61\x6b\x69\x6e\x67\x20\ +\x77\x69\x64\x67\x65\x74\x20\x63\x6f\x6d\x6d\x75\x6e\x69\x63\x61\ +\x74\x65\x20\x77\x69\x74\x68\x20\x65\x61\x63\x68\x20\x6f\x74\x68\ +\x65\x72\x0a\x0a\x55\x73\x69\x6e\x67\x20\x61\x20\x43\x6f\x6d\x70\ +\x6f\x6e\x65\x6e\x74\x20\x69\x6e\x20\x59\x6f\x75\x72\x20\x41\x70\ +\x70\x6c\x69\x63\x61\x74\x69\x6f\x6e\x09\x47\x65\x6e\x65\x72\x61\ +\x74\x69\x6e\x67\x20\x63\x6f\x64\x65\x20\x66\x72\x6f\x6d\x20\x66\ +\x6f\x72\x6d\x73\x0a\x20\x20\x20\x20\x54\x68\x65\x20\x44\x69\x72\ +\x65\x63\x74\x20\x41\x70\x70\x72\x6f\x61\x63\x68\x09\x09\x09\x55\ +\x73\x69\x6e\x67\x20\x61\x20\x66\x6f\x72\x6d\x20\x77\x69\x74\x68\ +\x6f\x75\x74\x20\x61\x6e\x79\x20\x61\x64\x6a\x75\x73\x74\x6d\x65\ +\x6e\x74\x73\x0a\x20\x20\x20\x20\x54\x68\x65\x20\x53\x69\x6e\x67\ +\x6c\x65\x20\x49\x6e\x68\x65\x72\x69\x74\x61\x6e\x63\x65\x20\x41\ +\x70\x70\x72\x6f\x61\x63\x68\x09\x53\x75\x62\x63\x6c\x61\x73\x73\ +\x69\x6e\x67\x20\x61\x20\x66\x6f\x72\x6d\x27\x73\x20\x62\x61\x73\ +\x65\x20\x63\x6c\x61\x73\x73\x0a\x20\x20\x20\x20\x54\x68\x65\x20\ +\x4d\x75\x6c\x74\x69\x70\x6c\x65\x20\x49\x6e\x68\x65\x72\x69\x74\ +\x61\x6e\x63\x65\x20\x41\x70\x70\x72\x6f\x61\x63\x68\x09\x53\x75\ +\x62\x63\x6c\x61\x73\x73\x69\x6e\x67\x20\x74\x68\x65\x20\x66\x6f\ +\x72\x6d\x20\x69\x74\x73\x65\x6c\x66\x0a\x20\x20\x20\x20\x41\x75\ +\x74\x6f\x6d\x61\x74\x69\x63\x20\x43\x6f\x6e\x6e\x65\x63\x74\x69\ +\x6f\x6e\x73\x09\x09\x43\x6f\x6e\x6e\x65\x63\x74\x69\x6e\x67\x20\ +\x77\x69\x64\x67\x65\x74\x73\x20\x75\x73\x69\x6e\x67\x20\x61\x20\ +\x6e\x61\x6d\x69\x6e\x67\x20\x73\x63\x68\x65\x6d\x65\x0a\x20\x20\ +\x20\x20\x20\x20\x20\x20\x41\x20\x44\x69\x61\x6c\x6f\x67\x20\x57\ +\x69\x74\x68\x6f\x75\x74\x20\x41\x75\x74\x6f\x2d\x43\x6f\x6e\x6e\ +\x65\x63\x74\x09\x48\x6f\x77\x20\x74\x6f\x20\x63\x6f\x6e\x6e\x65\ +\x63\x74\x20\x77\x69\x64\x67\x65\x74\x73\x20\x77\x69\x74\x68\x6f\ +\x75\x74\x20\x61\x20\x6e\x61\x6d\x69\x6e\x67\x20\x73\x63\x68\x65\ +\x6d\x65\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x41\x20\x44\x69\x61\ +\x6c\x6f\x67\x20\x57\x69\x74\x68\x20\x41\x75\x74\x6f\x2d\x43\x6f\ +\x6e\x6e\x65\x63\x74\x09\x55\x73\x69\x6e\x67\x20\x61\x75\x74\x6f\ +\x6d\x61\x74\x69\x63\x20\x63\x6f\x6e\x6e\x65\x63\x74\x69\x6f\x6e\ +\x73\x0a\x0a\x46\x6f\x72\x6d\x20\x45\x64\x69\x74\x69\x6e\x67\x20\ +\x4d\x6f\x64\x65\x09\x09\x09\x48\x6f\x77\x20\x74\x6f\x20\x65\x64\ +\x69\x74\x20\x61\x20\x66\x6f\x72\x6d\x20\x69\x6e\x20\x51\x74\x20\ +\x44\x65\x73\x69\x67\x6e\x65\x72\x0a\x20\x20\x20\x20\x4d\x61\x6e\ +\x61\x67\x69\x6e\x67\x20\x46\x6f\x72\x6d\x73\x09\x09\x09\x4c\x6f\ +\x61\x64\x69\x6e\x67\x20\x61\x6e\x64\x20\x73\x61\x76\x69\x6e\x67\ +\x20\x66\x6f\x72\x6d\x73\x0a\x20\x20\x20\x20\x45\x64\x69\x74\x69\ +\x6e\x67\x20\x61\x20\x46\x6f\x72\x6d\x09\x09\x09\x42\x61\x73\x69\ +\x63\x20\x65\x64\x69\x74\x69\x6e\x67\x20\x74\x65\x63\x68\x6e\x69\ +\x71\x75\x65\x73\x0a\x20\x20\x20\x20\x54\x68\x65\x20\x50\x72\x6f\ +\x70\x65\x72\x74\x79\x20\x45\x64\x69\x74\x6f\x72\x09\x09\x09\x43\ +\x68\x61\x6e\x67\x69\x6e\x67\x20\x77\x69\x64\x67\x65\x74\x20\x70\ +\x72\x6f\x70\x65\x72\x74\x69\x65\x73\x0a\x20\x20\x20\x20\x54\x68\ +\x65\x20\x4f\x62\x6a\x65\x63\x74\x20\x49\x6e\x73\x70\x65\x63\x74\ +\x6f\x72\x09\x09\x45\x78\x61\x6d\x69\x6e\x69\x6e\x67\x20\x74\x68\ +\x65\x20\x68\x69\x65\x72\x61\x72\x63\x68\x79\x20\x6f\x66\x20\x6f\ +\x62\x6a\x65\x63\x74\x73\x20\x6f\x6e\x20\x61\x20\x66\x6f\x72\x6d\ +\x0a\x20\x20\x20\x20\x4c\x61\x79\x6f\x75\x74\x73\x09\x09\x09\x09\ +\x4f\x62\x6a\x65\x63\x74\x73\x20\x74\x68\x61\x74\x20\x61\x72\x72\ +\x61\x6e\x67\x65\x20\x77\x69\x64\x67\x65\x74\x73\x20\x6f\x6e\x20\ +\x61\x20\x66\x6f\x72\x6d\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x41\ +\x70\x70\x6c\x79\x69\x6e\x67\x20\x61\x6e\x64\x20\x42\x72\x65\x61\ +\x6b\x69\x6e\x67\x20\x4c\x61\x79\x6f\x75\x74\x73\x09\x4d\x61\x6e\ +\x61\x67\x69\x6e\x67\x20\x77\x69\x64\x67\x65\x74\x73\x20\x69\x6e\ +\x20\x6c\x61\x79\x6f\x75\x74\x73\x20\x0a\x20\x20\x20\x20\x20\x20\ +\x20\x20\x48\x6f\x72\x69\x7a\x6f\x6e\x74\x61\x6c\x20\x61\x6e\x64\ +\x20\x56\x65\x72\x74\x69\x63\x61\x6c\x20\x4c\x61\x79\x6f\x75\x74\ +\x73\x09\x53\x74\x61\x6e\x64\x61\x72\x64\x20\x72\x6f\x77\x20\x61\ +\x6e\x64\x20\x63\x6f\x6c\x75\x6d\x6e\x20\x6c\x61\x79\x6f\x75\x74\ +\x73\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x54\x68\x65\x20\x47\x72\ +\x69\x64\x20\x4c\x61\x79\x6f\x75\x74\x09\x09\x09\x41\x72\x72\x61\ +\x6e\x67\x69\x6e\x67\x20\x77\x69\x64\x67\x65\x74\x73\x20\x69\x6e\ +\x20\x61\x20\x6d\x61\x74\x72\x69\x78\x0a\x20\x20\x20\x20\x50\x72\ +\x65\x76\x69\x65\x77\x69\x6e\x67\x20\x46\x6f\x72\x6d\x73\x09\x09\ +\x09\x43\x68\x65\x63\x6b\x69\x6e\x67\x20\x74\x68\x61\x74\x20\x74\ +\x68\x65\x20\x64\x65\x73\x69\x67\x6e\x20\x77\x6f\x72\x6b\x73\x0a\ +\x0a\x55\x73\x69\x6e\x67\x20\x43\x6f\x6e\x74\x61\x69\x6e\x65\x72\ +\x73\x09\x09\x09\x48\x6f\x77\x20\x74\x6f\x20\x67\x72\x6f\x75\x70\ +\x20\x77\x69\x64\x67\x65\x74\x73\x20\x74\x6f\x67\x65\x74\x68\x65\ +\x72\x0a\x20\x20\x20\x20\x47\x65\x6e\x65\x72\x61\x6c\x20\x46\x65\ +\x61\x74\x75\x72\x65\x73\x09\x09\x09\x43\x6f\x6d\x6d\x6f\x6e\x20\ +\x63\x6f\x6e\x74\x61\x69\x6e\x65\x72\x20\x66\x65\x61\x74\x75\x72\ +\x65\x73\x0a\x20\x20\x20\x20\x46\x72\x61\x6d\x65\x73\x09\x09\x09\ +\x09\x51\x46\x72\x61\x6d\x65\x0a\x20\x20\x20\x20\x47\x72\x6f\x75\ +\x70\x20\x42\x6f\x78\x65\x73\x09\x09\x09\x09\x51\x47\x72\x6f\x75\ +\x70\x42\x6f\x78\x0a\x20\x20\x20\x20\x53\x74\x61\x63\x6b\x65\x64\ +\x20\x57\x69\x64\x67\x65\x74\x73\x09\x09\x09\x51\x53\x74\x61\x63\ +\x6b\x65\x64\x57\x69\x64\x67\x65\x74\x0a\x20\x20\x20\x20\x54\x61\ +\x62\x20\x57\x69\x64\x67\x65\x74\x73\x09\x09\x09\x09\x51\x54\x61\ +\x62\x57\x69\x64\x67\x65\x74\x0a\x20\x20\x20\x20\x54\x6f\x6f\x6c\ +\x62\x6f\x78\x20\x57\x69\x64\x67\x65\x74\x73\x09\x09\x09\x51\x54\ +\x6f\x6f\x6c\x42\x6f\x78\x0a\x0a\x43\x6f\x6e\x6e\x65\x63\x74\x69\ +\x6f\x6e\x20\x45\x64\x69\x74\x69\x6e\x67\x20\x4d\x6f\x64\x65\x09\ +\x09\x09\x43\x6f\x6e\x6e\x65\x63\x74\x69\x6e\x67\x20\x77\x69\x64\ +\x67\x65\x74\x73\x20\x74\x6f\x67\x65\x74\x68\x65\x72\x20\x77\x69\ +\x74\x68\x20\x73\x69\x67\x6e\x61\x6c\x73\x20\x61\x6e\x64\x20\x73\ +\x6c\x6f\x74\x73\x0a\x20\x20\x20\x20\x43\x6f\x6e\x6e\x65\x63\x74\ +\x69\x6e\x67\x20\x4f\x62\x6a\x65\x63\x74\x73\x09\x09\x09\x4d\x61\ +\x6b\x69\x6e\x67\x20\x63\x6f\x6e\x6e\x65\x63\x74\x69\x6f\x6e\x73\ +\x20\x69\x6e\x20\x51\x74\x20\x44\x65\x73\x69\x67\x6e\x65\x72\x0a\ +\x20\x20\x20\x20\x45\x64\x69\x74\x69\x6e\x67\x20\x43\x6f\x6e\x6e\ +\x65\x63\x74\x69\x6f\x6e\x73\x09\x09\x09\x43\x68\x61\x6e\x67\x69\ +\x6e\x67\x20\x65\x78\x69\x73\x74\x69\x6e\x67\x20\x63\x6f\x6e\x6e\ +\x65\x63\x74\x69\x6f\x6e\x73\x0a\ +" + +qt_resource_name = b"\ +\x00\x0b\ +\x0c\xe2\x22\xf4\ +\x00\x64\ +\x00\x65\x00\x66\x00\x61\x00\x75\x00\x6c\x00\x74\x00\x2e\x00\x74\x00\x78\x00\x74\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ +\x00\x00\x00\x00\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() diff --git a/examples/itemviews/simplewidgetmapper.py b/examples/itemviews/simplewidgetmapper.py new file mode 100755 index 0000000..1aed6cd --- /dev/null +++ b/examples/itemviews/simplewidgetmapper.py @@ -0,0 +1,130 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited +## Copyright (C) 2010 Hans-Peter Jansen . +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtGui import QStandardItem, QStandardItemModel +from PyQt5.QtWidgets import (QApplication, QDataWidgetMapper, QGridLayout, + QLabel, QLineEdit, QPushButton, QSpinBox, QTextEdit, QWidget) + + +class Window(QWidget): + def __init__(self, parent=None): + super(Window, self).__init__(parent) + + # Set up the model. + self.setupModel() + + # Set up the widgets. + nameLabel = QLabel("Na&me:") + nameEdit = QLineEdit() + addressLabel = QLabel("&Address:") + addressEdit = QTextEdit() + ageLabel = QLabel("A&ge (in years):") + ageSpinBox = QSpinBox() + self.nextButton = QPushButton("&Next") + self.previousButton = QPushButton("&Previous") + nameLabel.setBuddy(nameEdit) + addressLabel.setBuddy(addressEdit) + ageLabel.setBuddy(ageSpinBox) + + # Set up the mapper. + self.mapper = QDataWidgetMapper(self) + self.mapper.setModel(self.model) + self.mapper.addMapping(nameEdit, 0) + self.mapper.addMapping(addressEdit, 1) + self.mapper.addMapping(ageSpinBox, 2) + + # Set up connections and layouts. + self.previousButton.clicked.connect(self.mapper.toPrevious) + self.nextButton.clicked.connect(self.mapper.toNext) + self.mapper.currentIndexChanged.connect(self.updateButtons) + + layout = QGridLayout() + layout.addWidget(nameLabel, 0, 0, 1, 1) + layout.addWidget(nameEdit, 0, 1, 1, 1) + layout.addWidget(self.previousButton, 0, 2, 1, 1) + layout.addWidget(addressLabel, 1, 0, 1, 1) + layout.addWidget(addressEdit, 1, 1, 2, 1) + layout.addWidget(self.nextButton, 1, 2, 1, 1) + layout.addWidget(ageLabel, 3, 0, 1, 1) + layout.addWidget(ageSpinBox, 3, 1, 1, 1) + self.setLayout(layout) + + self.setWindowTitle("Simple Widget Mapper") + self.mapper.toFirst() + + def setupModel(self): + self.model = QStandardItemModel(5, 3, self) + names = ("Alice", "Bob", "Carol", "Donald", "Emma") + addresses = ("123 Main Street
    Market Town
    ", + "PO Box 32
    Mail Handling Service" + "
    Service City
    ", + "The Lighthouse
    Remote Island
    ", + "47338 Park Avenue
    Big City
    ", + "Research Station
    Base Camp
    Big Mountain
    ") + ages = ("20", "31", "32", "19", "26") + + for row, name in enumerate(names): + item = QStandardItem(name) + self.model.setItem(row, 0, item) + item = QStandardItem(addresses[row]) + self.model.setItem(row, 1, item) + item = QStandardItem(ages[row]) + self.model.setItem(row, 2, item) + + def updateButtons(self, row): + self.previousButton.setEnabled(row > 0) + self.nextButton.setEnabled(row < self.model.rowCount() - 1) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + window = Window() + window.show() + + sys.exit(app.exec_()) diff --git a/examples/itemviews/spinboxdelegate.py b/examples/itemviews/spinboxdelegate.py new file mode 100755 index 0000000..b107f58 --- /dev/null +++ b/examples/itemviews/spinboxdelegate.py @@ -0,0 +1,95 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2017 Riverbank Computing Limited. +## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:BSD$ +## You may use this file under the terms of the BSD license as follows: +## +## "Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions are +## met: +## * Redistributions of source code must retain the above copyright +## notice, this list of conditions and the following disclaimer. +## * Redistributions in binary form must reproduce the above copyright +## notice, this list of conditions and the following disclaimer in +## the documentation and/or other materials provided with the +## distribution. +## * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +## the names of its contributors may be used to endorse or promote +## products derived from this software without specific prior written +## permission. +## +## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +## "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +## LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +## A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +## OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +## DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +## THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QModelIndex, Qt +from PyQt5.QtGui import QStandardItemModel +from PyQt5.QtWidgets import (QApplication, QSpinBox, QStyledItemDelegate, + QTableView) + + +class SpinBoxDelegate(QStyledItemDelegate): + def createEditor(self, parent, option, index): + editor = QSpinBox(parent) + editor.setFrame(False) + editor.setMinimum(0) + editor.setMaximum(100) + + return editor + + def setEditorData(self, spinBox, index): + value = index.model().data(index, Qt.EditRole) + + spinBox.setValue(value) + + def setModelData(self, spinBox, model, index): + spinBox.interpretText() + value = spinBox.value() + + model.setData(index, value, Qt.EditRole) + + def updateEditorGeometry(self, editor, option, index): + editor.setGeometry(option.rect) + + +if __name__ == '__main__': + + import sys + + app = QApplication(sys.argv) + + model = QStandardItemModel(4, 2) + tableView = QTableView() + tableView.setModel(model) + + delegate = SpinBoxDelegate() + tableView.setItemDelegate(delegate) + + for row in range(4): + for column in range(2): + index = model.index(row, column, QModelIndex()) + model.setData(index, (row + 1) * (column + 1)) + + tableView.setWindowTitle("Spin Box Delegate") + tableView.show() + sys.exit(app.exec_()) diff --git a/examples/itemviews/spreadsheet/images/interview.png b/examples/itemviews/spreadsheet/images/interview.png new file mode 100644 index 0000000000000000000000000000000000000000..0c3d690258f42417c26d727ac6de9f10066790d1 GIT binary patch literal 174 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPHV5AX?bJpcp$|NjSyC7X0704e5@ zAirP+Mke0mDVu>@Z%-G;kcv3lu7kV>40xDiI~jL%+d717{_n%OoQuEYnT+G7&WOe{ zHN3hj0@$V<$V#5S@|Mt>ODmQ-FvogTe~DWM4fbkaP) literal 0 HcmV?d00001 diff --git a/examples/itemviews/spreadsheet/printview.py b/examples/itemviews/spreadsheet/printview.py new file mode 100644 index 0000000..6bedf27 --- /dev/null +++ b/examples/itemviews/spreadsheet/printview.py @@ -0,0 +1,53 @@ +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited +## Copyright (C) 2012 Hans-Peter Jansen . +## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## Contact: Nokia Corporation (qt-info@nokia.com) +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:LGPL$ +## GNU Lesser General Public License Usage +## This file may be used under the terms of the GNU Lesser General Public +## License version 2.1 as published by the Free Software Foundation and +## appearing in the file LICENSE.LGPL included in the packaging of this +## file. Please review the following information to ensure the GNU Lesser +## General Public License version 2.1 requirements will be met: +## http:#www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## In addition, as a special exception, Nokia gives you certain additional +## rights. These rights are described in the Nokia Qt LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU General +## Public License version 3.0 as published by the Free Software Foundation +## and appearing in the file LICENSE.GPL included in the packaging of this +## file. Please review the following information to ensure the GNU General +## Public License version 3.0 requirements will be met: +## http:#www.gnu.org/copyleft/gpl.html. +## +## Other Usage +## Alternatively, this file may be used in accordance with the terms and +## conditions contained in a signed written agreement between you and Nokia. +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import Qt +from PyQt5.QtWidgets import QTableView + + +class PrintView(QTableView): + def __init__(self): + super(PrintView, self).__init__() + + self.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff) + self.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) + + def print_(self, printer): + self.resize(printer.width(), printer.height()) + self.render(printer) diff --git a/examples/itemviews/spreadsheet/spreadsheet.py b/examples/itemviews/spreadsheet/spreadsheet.py new file mode 100644 index 0000000..c1119c3 --- /dev/null +++ b/examples/itemviews/spreadsheet/spreadsheet.py @@ -0,0 +1,543 @@ +#!/usr/bin/env python + + +############################################################################# +## +## Copyright (C) 2013 Riverbank Computing Limited +## Copyright (C) 2012 Hans-Peter Jansen . +## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +## All rights reserved. +## Contact: Nokia Corporation (qt-info@nokia.com) +## +## This file is part of the examples of PyQt. +## +## $QT_BEGIN_LICENSE:LGPL$ +## GNU Lesser General Public License Usage +## This file may be used under the terms of the GNU Lesser General Public +## License version 2.1 as published by the Free Software Foundation and +## appearing in the file LICENSE.LGPL included in the packaging of this +## file. Please review the following information to ensure the GNU Lesser +## General Public License version 2.1 requirements will be met: +## http:#www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## In addition, as a special exception, Nokia gives you certain additional +## rights. These rights are described in the Nokia Qt LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU General +## Public License version 3.0 as published by the Free Software Foundation +## and appearing in the file LICENSE.GPL included in the packaging of this +## file. Please review the following information to ensure the GNU General +## Public License version 3.0 requirements will be met: +## http:#www.gnu.org/copyleft/gpl.html. +## +## Other Usage +## Alternatively, this file may be used in accordance with the terms and +## conditions contained in a signed written agreement between you and Nokia. +## $QT_END_LICENSE$ +## +############################################################################# + + +from PyQt5.QtCore import QDate, QPoint, Qt +from PyQt5.QtGui import QColor, QIcon, QKeySequence, QPainter, QPixmap +from PyQt5.QtWidgets import (QAction, QActionGroup, QApplication, QColorDialog, + QComboBox, QDialog, QFontDialog, QGroupBox, QHBoxLayout, QLabel, + QLineEdit, QMainWindow, QMessageBox, QPushButton, QTableWidget, + QTableWidgetItem, QToolBar, QVBoxLayout) +from PyQt5.QtPrintSupport import QPrinter, QPrintPreviewDialog + +import spreadsheet_rc + +from spreadsheetdelegate import SpreadSheetDelegate +from spreadsheetitem import SpreadSheetItem +from printview import PrintView +from util import decode_pos, encode_pos + + +class SpreadSheet(QMainWindow): + + dateFormats = ["dd/M/yyyy", "yyyy/M/dd", "dd.MM.yyyy"] + + currentDateFormat = dateFormats[0] + + def __init__(self, rows, cols, parent = None): + super(SpreadSheet, self).__init__(parent) + + self.toolBar = QToolBar() + self.addToolBar(self.toolBar) + self.formulaInput = QLineEdit() + self.cellLabel = QLabel(self.toolBar) + self.cellLabel.setMinimumSize(80, 0) + self.toolBar.addWidget(self.cellLabel) + self.toolBar.addWidget(self.formulaInput) + self.table = QTableWidget(rows, cols, self) + for c in range(cols): + character = chr(ord('A') + c) + self.table.setHorizontalHeaderItem(c, QTableWidgetItem(character)) + + self.table.setItemPrototype(self.table.item(rows - 1, cols - 1)) + self.table.setItemDelegate(SpreadSheetDelegate(self)) + self.createActions() + self.updateColor(0) + self.setupMenuBar() + self.setupContents() + self.setupContextMenu() + self.setCentralWidget(self.table) + self.statusBar() + self.table.currentItemChanged.connect(self.updateStatus) + self.table.currentItemChanged.connect(self.updateColor) + self.table.currentItemChanged.connect(self.updateLineEdit) + self.table.itemChanged.connect(self.updateStatus) + self.formulaInput.returnPressed.connect(self.returnPressed) + self.table.itemChanged.connect(self.updateLineEdit) + self.setWindowTitle("Spreadsheet") + + def createActions(self): + self.cell_sumAction = QAction("Sum", self) + self.cell_sumAction.triggered.connect(self.actionSum) + + self.cell_addAction = QAction("&Add", self) + self.cell_addAction.setShortcut(Qt.CTRL | Qt.Key_Plus) + self.cell_addAction.triggered.connect(self.actionAdd) + + self.cell_subAction = QAction("&Subtract", self) + self.cell_subAction.setShortcut(Qt.CTRL | Qt.Key_Minus) + self.cell_subAction.triggered.connect(self.actionSubtract) + + self.cell_mulAction = QAction("&Multiply", self) + self.cell_mulAction.setShortcut(Qt.CTRL | Qt.Key_multiply) + self.cell_mulAction.triggered.connect(self.actionMultiply) + + self.cell_divAction = QAction("&Divide", self) + self.cell_divAction.setShortcut(Qt.CTRL | Qt.Key_division) + self.cell_divAction.triggered.connect(self.actionDivide) + + self.fontAction = QAction("Font...", self) + self.fontAction.setShortcut(Qt.CTRL | Qt.Key_F) + self.fontAction.triggered.connect(self.selectFont) + + self.colorAction = QAction(QIcon(QPixmap(16, 16)), "Background &Color...", self) + self.colorAction.triggered.connect(self.selectColor) + + self.clearAction = QAction("Clear", self) + self.clearAction.setShortcut(Qt.Key_Delete) + self.clearAction.triggered.connect(self.clear) + + self.aboutSpreadSheet = QAction("About Spreadsheet", self) + self.aboutSpreadSheet.triggered.connect(self.showAbout) + + self.exitAction = QAction("E&xit", self) + self.exitAction.setShortcut(QKeySequence.Quit) + self.exitAction.triggered.connect(QApplication.instance().quit) + + self.printAction = QAction("&Print", self) + self.printAction.setShortcut(QKeySequence.Print) + self.printAction.triggered.connect(self.print_) + + self.firstSeparator = QAction(self) + self.firstSeparator.setSeparator(True) + + self.secondSeparator = QAction(self) + self.secondSeparator.setSeparator(True) + + def setupMenuBar(self): + self.fileMenu = self.menuBar().addMenu("&File") + self.dateFormatMenu = self.fileMenu.addMenu("&Date format") + self.dateFormatGroup = QActionGroup(self) + for f in self.dateFormats: + action = QAction(f, self, checkable=True, + triggered=self.changeDateFormat) + self.dateFormatGroup.addAction(action) + self.dateFormatMenu.addAction(action) + if f == self.currentDateFormat: + action.setChecked(True) + + self.fileMenu.addAction(self.printAction) + self.fileMenu.addAction(self.exitAction) + self.cellMenu = self.menuBar().addMenu("&Cell") + self.cellMenu.addAction(self.cell_addAction) + self.cellMenu.addAction(self.cell_subAction) + self.cellMenu.addAction(self.cell_mulAction) + self.cellMenu.addAction(self.cell_divAction) + self.cellMenu.addAction(self.cell_sumAction) + self.cellMenu.addSeparator() + self.cellMenu.addAction(self.colorAction) + self.cellMenu.addAction(self.fontAction) + self.menuBar().addSeparator() + self.aboutMenu = self.menuBar().addMenu("&Help") + self.aboutMenu.addAction(self.aboutSpreadSheet) + + def changeDateFormat(self): + action = self.sender() + oldFormat = self.currentDateFormat + newFormat = self.currentDateFormat = action.text() + for row in range(self.table.rowCount()): + item = self.table.item(row, 1) + date = QDate.fromString(item.text(), oldFormat) + item.setText(date.toString(newFormat)) + + def updateStatus(self, item): + if item and item == self.table.currentItem(): + self.statusBar().showMessage(item.data(Qt.StatusTipRole), 1000) + self.cellLabel.setText("Cell: (%s)" % encode_pos(self.table.row(item), + self.table.column(item))) + + def updateColor(self, item): + pixmap = QPixmap(16, 16) + color = QColor() + if item: + color = item.backgroundColor() + if not color.isValid(): + color = self.palette().base().color() + painter = QPainter(pixmap) + painter.fillRect(0, 0, 16, 16, color) + lighter = color.lighter() + painter.setPen(lighter) + # light frame + painter.drawPolyline(QPoint(0, 15), QPoint(0, 0), QPoint(15, 0)) + painter.setPen(color.darker()) + # dark frame + painter.drawPolyline(QPoint(1, 15), QPoint(15, 15), QPoint(15, 1)) + painter.end() + self.colorAction.setIcon(QIcon(pixmap)) + + def updateLineEdit(self, item): + if item != self.table.currentItem(): + return + if item: + self.formulaInput.setText(item.data(Qt.EditRole)) + else: + self.formulaInput.clear() + + def returnPressed(self): + text = self.formulaInput.text() + row = self.table.currentRow() + col = self.table.currentColumn() + item = self.table.item(row, col) + if not item: + self.table.setItem(row, col, SpreadSheetItem(text)) + else: + item.setData(Qt.EditRole, text) + self.table.viewport().update() + + def selectColor(self): + item = self.table.currentItem() + color = item and QColor(item.background()) or self.table.palette().base().color() + color = QColorDialog.getColor(color, self) + if not color.isValid(): + return + selected = self.table.selectedItems() + if not selected: + return + for i in selected: + i and i.setBackground(color) + self.updateColor(self.table.currentItem()) + + def selectFont(self): + selected = self.table.selectedItems() + if not selected: + return + font, ok = QFontDialog.getFont(self.font(), self) + if not ok: + return + for i in selected: + i and i.setFont(font) + + def runInputDialog(self, title, c1Text, c2Text, opText, + outText, cell1, cell2, outCell): + rows = [] + cols = [] + for r in range(self.table.rowCount()): + rows.append(str(r + 1)) + for c in range(self.table.columnCount()): + cols.append(chr(ord('A') + c)) + addDialog = QDialog(self) + addDialog.setWindowTitle(title) + group = QGroupBox(title, addDialog) + group.setMinimumSize(250, 100) + cell1Label = QLabel(c1Text, group) + cell1RowInput = QComboBox(group) + c1Row, c1Col = decode_pos(cell1) + cell1RowInput.addItems(rows) + cell1RowInput.setCurrentIndex(c1Row) + cell1ColInput = QComboBox(group) + cell1ColInput.addItems(cols) + cell1ColInput.setCurrentIndex(c1Col) + operatorLabel = QLabel(opText, group) + operatorLabel.setAlignment(Qt.AlignHCenter) + cell2Label = QLabel(c2Text, group) + cell2RowInput = QComboBox(group) + c2Row, c2Col = decode_pos(cell2) + cell2RowInput.addItems(rows) + cell2RowInput.setCurrentIndex(c2Row) + cell2ColInput = QComboBox(group) + cell2ColInput.addItems(cols) + cell2ColInput.setCurrentIndex(c2Col) + equalsLabel = QLabel("=", group) + equalsLabel.setAlignment(Qt.AlignHCenter) + outLabel = QLabel(outText, group) + outRowInput = QComboBox(group) + outRow, outCol = decode_pos(outCell) + outRowInput.addItems(rows) + outRowInput.setCurrentIndex(outRow) + outColInput = QComboBox(group) + outColInput.addItems(cols) + outColInput.setCurrentIndex(outCol) + + cancelButton = QPushButton("Cancel", addDialog) + cancelButton.clicked.connect(addDialog.reject) + okButton = QPushButton("OK", addDialog) + okButton.setDefault(True) + okButton.clicked.connect(addDialog.accept) + buttonsLayout = QHBoxLayout() + buttonsLayout.addStretch(1) + buttonsLayout.addWidget(okButton) + buttonsLayout.addSpacing(10) + buttonsLayout.addWidget(cancelButton) + + dialogLayout = QVBoxLayout(addDialog) + dialogLayout.addWidget(group) + dialogLayout.addStretch(1) + dialogLayout.addItem(buttonsLayout) + + cell1Layout = QHBoxLayout() + cell1Layout.addWidget(cell1Label) + cell1Layout.addSpacing(10) + cell1Layout.addWidget(cell1ColInput) + cell1Layout.addSpacing(10) + cell1Layout.addWidget(cell1RowInput) + + cell2Layout = QHBoxLayout() + cell2Layout.addWidget(cell2Label) + cell2Layout.addSpacing(10) + cell2Layout.addWidget(cell2ColInput) + cell2Layout.addSpacing(10) + cell2Layout.addWidget(cell2RowInput) + outLayout = QHBoxLayout() + outLayout.addWidget(outLabel) + outLayout.addSpacing(10) + outLayout.addWidget(outColInput) + outLayout.addSpacing(10) + outLayout.addWidget(outRowInput) + vLayout = QVBoxLayout(group) + vLayout.addItem(cell1Layout) + vLayout.addWidget(operatorLabel) + vLayout.addItem(cell2Layout) + vLayout.addWidget(equalsLabel) + vLayout.addStretch(1) + vLayout.addItem(outLayout) + if addDialog.exec_(): + cell1 = cell1ColInput.currentText() + cell1RowInput.currentText() + cell2 = cell2ColInput.currentText() + cell2RowInput.currentText() + outCell = outColInput.currentText() + outRowInput.currentText() + return True, cell1, cell2, outCell + + return False, None, None, None + + def actionSum(self): + row_first = 0 + row_last = 0 + row_cur = 0 + col_first = 0 + col_last = 0 + col_cur = 0 + selected = self.table.selectedItems() + if selected: + first = selected[0] + last = selected[-1] + row_first = self.table.row(first) + row_last = self.table.row(last) + col_first = self.table.column(first) + col_last = self.table.column(last) + + current = self.table.currentItem() + if current: + row_cur = self.table.row(current) + col_cur = self.table.column(current) + + cell1 = encode_pos(row_first, col_first) + cell2 = encode_pos(row_last, col_last) + out = encode_pos(row_cur, col_cur) + ok, cell1, cell2, out = self.runInputDialog("Sum cells", "First cell:", + "Last cell:", u"\N{GREEK CAPITAL LETTER SIGMA}", "Output to:", + cell1, cell2, out) + if ok: + row, col = decode_pos(out) + self.table.item(row, col).setText("sum %s %s" % (cell1, cell2)) + + def actionMath_helper(self, title, op): + cell1 = "C1" + cell2 = "C2" + out = "C3" + current = self.table.currentItem() + if current: + out = encode_pos(self.table.currentRow(), self.table.currentColumn()) + ok, cell1, cell2, out = self.runInputDialog(title, "Cell 1", "Cell 2", + op, "Output to:", cell1, cell2, out) + if ok: + row, col = decode_pos(out) + self.table.item(row, col).setText("%s %s %s" % (op, cell1, cell2)) + + def actionAdd(self): + self.actionMath_helper("Addition", "+") + + def actionSubtract(self): + self.actionMath_helper("Subtraction", "-") + + def actionMultiply(self): + self.actionMath_helper("Multiplication", "*") + + def actionDivide(self): + self.actionMath_helper("Division", "/") + + def clear(self): + for i in self.table.selectedItems(): + i.setText("") + + def setupContextMenu(self): + self.addAction(self.cell_addAction) + self.addAction(self.cell_subAction) + self.addAction(self.cell_mulAction) + self.addAction(self.cell_divAction) + self.addAction(self.cell_sumAction) + self.addAction(self.firstSeparator) + self.addAction(self.colorAction) + self.addAction(self.fontAction) + self.addAction(self.secondSeparator) + self.addAction(self.clearAction) + self.setContextMenuPolicy(Qt.ActionsContextMenu) + + def setupContents(self): + titleBackground = QColor(Qt.lightGray) + titleFont = self.table.font() + titleFont.setBold(True) + # column 0 + self.table.setItem(0, 0, SpreadSheetItem("Item")) + self.table.item(0, 0).setBackground(titleBackground) + self.table.item(0, 0).setToolTip("This column shows the purchased item/service") + self.table.item(0, 0).setFont(titleFont) + self.table.setItem(1, 0, SpreadSheetItem("AirportBus")) + self.table.setItem(2, 0, SpreadSheetItem("Flight (Munich)")) + self.table.setItem(3, 0, SpreadSheetItem("Lunch")) + self.table.setItem(4, 0, SpreadSheetItem("Flight (LA)")) + self.table.setItem(5, 0, SpreadSheetItem("Taxi")) + self.table.setItem(6, 0, SpreadSheetItem("Dinner")) + self.table.setItem(7, 0, SpreadSheetItem("Hotel")) + self.table.setItem(8, 0, SpreadSheetItem("Flight (Oslo)")) + self.table.setItem(9, 0, SpreadSheetItem("Total:")) + self.table.item(9, 0).setFont(titleFont) + self.table.item(9, 0).setBackground(Qt.lightGray) + # column 1 + self.table.setItem(0, 1, SpreadSheetItem("Date")) + self.table.item(0, 1).setBackground(titleBackground) + self.table.item(0, 1).setToolTip("This column shows the purchase date, double click to change") + self.table.item(0, 1).setFont(titleFont) + self.table.setItem(1, 1, SpreadSheetItem("15/6/2006")) + self.table.setItem(2, 1, SpreadSheetItem("15/6/2006")) + self.table.setItem(3, 1, SpreadSheetItem("15/6/2006")) + self.table.setItem(4, 1, SpreadSheetItem("21/5/2006")) + self.table.setItem(5, 1, SpreadSheetItem("16/6/2006")) + self.table.setItem(6, 1, SpreadSheetItem("16/6/2006")) + self.table.setItem(7, 1, SpreadSheetItem("16/6/2006")) + self.table.setItem(8, 1, SpreadSheetItem("18/6/2006")) + self.table.setItem(9, 1, SpreadSheetItem()) + self.table.item(9, 1).setBackground(Qt.lightGray) + # column 2 + self.table.setItem(0, 2, SpreadSheetItem("Price")) + self.table.item(0, 2).setBackground(titleBackground) + self.table.item(0, 2).setToolTip("This column shows the price of the purchase") + self.table.item(0, 2).setFont(titleFont) + self.table.setItem(1, 2, SpreadSheetItem("150")) + self.table.setItem(2, 2, SpreadSheetItem("2350")) + self.table.setItem(3, 2, SpreadSheetItem("-14")) + self.table.setItem(4, 2, SpreadSheetItem("980")) + self.table.setItem(5, 2, SpreadSheetItem("5")) + self.table.setItem(6, 2, SpreadSheetItem("120")) + self.table.setItem(7, 2, SpreadSheetItem("300")) + self.table.setItem(8, 2, SpreadSheetItem("1240")) + self.table.setItem(9, 2, SpreadSheetItem()) + self.table.item(9, 2).setBackground(Qt.lightGray) + # column 3 + self.table.setItem(0, 3, SpreadSheetItem("Currency")) + self.table.item(0, 3).setBackgroundColor(titleBackground) + self.table.item(0, 3).setToolTip("This column shows the currency") + self.table.item(0, 3).setFont(titleFont) + self.table.setItem(1, 3, SpreadSheetItem("NOK")) + self.table.setItem(2, 3, SpreadSheetItem("NOK")) + self.table.setItem(3, 3, SpreadSheetItem("EUR")) + self.table.setItem(4, 3, SpreadSheetItem("EUR")) + self.table.setItem(5, 3, SpreadSheetItem("USD")) + self.table.setItem(6, 3, SpreadSheetItem("USD")) + self.table.setItem(7, 3, SpreadSheetItem("USD")) + self.table.setItem(8, 3, SpreadSheetItem("USD")) + self.table.setItem(9, 3, SpreadSheetItem()) + self.table.item(9,3).setBackground(Qt.lightGray) + # column 4 + self.table.setItem(0, 4, SpreadSheetItem("Ex. Rate")) + self.table.item(0, 4).setBackground(titleBackground) + self.table.item(0, 4).setToolTip("This column shows the exchange rate to NOK") + self.table.item(0, 4).setFont(titleFont) + self.table.setItem(1, 4, SpreadSheetItem("1")) + self.table.setItem(2, 4, SpreadSheetItem("1")) + self.table.setItem(3, 4, SpreadSheetItem("8")) + self.table.setItem(4, 4, SpreadSheetItem("8")) + self.table.setItem(5, 4, SpreadSheetItem("7")) + self.table.setItem(6, 4, SpreadSheetItem("7")) + self.table.setItem(7, 4, SpreadSheetItem("7")) + self.table.setItem(8, 4, SpreadSheetItem("7")) + self.table.setItem(9, 4, SpreadSheetItem()) + self.table.item(9,4).setBackground(Qt.lightGray) + # column 5 + self.table.setItem(0, 5, SpreadSheetItem("NOK")) + self.table.item(0, 5).setBackground(titleBackground) + self.table.item(0, 5).setToolTip("This column shows the expenses in NOK") + self.table.item(0, 5).setFont(titleFont) + self.table.setItem(1, 5, SpreadSheetItem("* C2 E2")) + self.table.setItem(2, 5, SpreadSheetItem("* C3 E3")) + self.table.setItem(3, 5, SpreadSheetItem("* C4 E4")) + self.table.setItem(4, 5, SpreadSheetItem("* C5 E5")) + self.table.setItem(5, 5, SpreadSheetItem("* C6 E6")) + self.table.setItem(6, 5, SpreadSheetItem("* C7 E7")) + self.table.setItem(7, 5, SpreadSheetItem("* C8 E8")) + self.table.setItem(8, 5, SpreadSheetItem("* C9 E9")) + self.table.setItem(9, 5, SpreadSheetItem("sum F2 F9")) + self.table.item(9,5).setBackground(Qt.lightGray) + + def showAbout(self): + QMessageBox.about(self, "About Spreadsheet", """ + +

    This demo shows use of QTableWidget with custom handling for + individual cells.

    +

    Using a customized table item we make it possible to have dynamic + output in different cells. The content that is implemented for this + particular demo is: +