root 3 years ago
parent
commit
e6d1744f8c
100 changed files with 1 additions and 6781 deletions
  1. 1 1
      src/renderer/cocoblockly-x
  2. 0 57
      src/static/win/python/kflash_gui1.3/.travis.yml
  3. 0 29
      src/static/win/python/kflash_gui1.3/Combobox.py
  4. 0 165
      src/static/win/python/kflash_gui1.3/LICENSE
  5. 0 149
      src/static/win/python/kflash_gui1.3/README.md
  6. BIN
      src/static/win/python/kflash_gui1.3/__pycache__/Combobox.cpython-37.pyc
  7. BIN
      src/static/win/python/kflash_gui1.3/__pycache__/autoUpdate.cpython-37.pyc
  8. BIN
      src/static/win/python/kflash_gui1.3/__pycache__/helpAbout.cpython-37.pyc
  9. BIN
      src/static/win/python/kflash_gui1.3/__pycache__/parameters.cpython-37.pyc
  10. BIN
      src/static/win/python/kflash_gui1.3/__pycache__/paremeters_save.cpython-37.pyc
  11. BIN
      src/static/win/python/kflash_gui1.3/__pycache__/translation.cpython-37.pyc
  12. 0 32
      src/static/win/python/kflash_gui1.3/autoUpdate.py
  13. 0 8
      src/static/win/python/kflash_gui1.3/dist_tool/appimage/app/AppRun
  14. 0 10
      src/static/win/python/kflash_gui1.3/dist_tool/appimage/app/kflash_gui.desktop
  15. BIN
      src/static/win/python/kflash_gui1.3/dist_tool/appimage/app/logo.png
  16. BIN
      src/static/win/python/kflash_gui1.3/dist_tool/appimage/app/usr/share/icons/hicolor/128x128/apps/logo.png
  17. 0 20
      src/static/win/python/kflash_gui1.3/dist_tool/appimage/gen_appimage.sh
  18. 0 40
      src/static/win/python/kflash_gui1.3/helpAbout.py
  19. 0 21
      src/static/win/python/kflash_gui1.3/kflash.py/LICENSE
  20. 0 330
      src/static/win/python/kflash_gui1.3/kflash.py/README.rst
  21. 0 109
      src/static/win/python/kflash_gui1.3/kflash.py/kflash.py
  22. 0 7
      src/static/win/python/kflash_gui1.3/kflash.py/package.json
  23. 0 52
      src/static/win/python/kflash_gui1.3/kflash.py/setup.py
  24. 0 8
      src/static/win/python/kflash_gui1.3/kflash_gui.conf
  25. 0 11
      src/static/win/python/kflash_gui1.3/kflash_gui.desktop
  26. 0 1396
      src/static/win/python/kflash_gui1.3/kflash_gui.py
  27. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/arrow-down.png
  28. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/chinese.png
  29. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/close.png
  30. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/close2.png
  31. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/erase.png
  32. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/erase_zh.png
  33. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/help-white.png
  34. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/help.png
  35. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/installer_background_mac.png
  36. 0 234
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/installer_background_mac.svg
  37. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/lang-white.png
  38. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/lang.png
  39. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/logo.icns
  40. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/logo.ico
  41. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/logo.png
  42. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/logo2.png
  43. 0 371
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/qss/style-dark.qss
  44. 0 384
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/qss/style.qss
  45. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_1.2.1.png
  46. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_1.png
  47. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_2.png
  48. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_download.png
  49. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_download_en.png
  50. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_en.png
  51. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_file.png
  52. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_kflash_gui_v1.5.png
  53. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/skin-white.png
  54. BIN
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/skin.png
  55. 0 98
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/translation/translation_en.json
  56. 0 133
      src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/translation/translation_zh.json
  57. 0 93
      src/static/win/python/kflash_gui1.3/kflash_gui_data/boards_info.json
  58. 0 23
      src/static/win/python/kflash_gui1.3/kflash_gui_data/erase_config.json
  59. 0 21
      src/static/win/python/kflash_gui1.3/kflash_py/LICENSE
  60. 0 330
      src/static/win/python/kflash_gui1.3/kflash_py/README.rst
  61. BIN
      src/static/win/python/kflash_gui1.3/kflash_py/__pycache__/kflash.cpython-37.pyc
  62. 0 109
      src/static/win/python/kflash_gui1.3/kflash_py/kflash.py
  63. 0 7
      src/static/win/python/kflash_gui1.3/kflash_py/package.json
  64. 0 52
      src/static/win/python/kflash_gui1.3/kflash_py/setup.py
  65. 0 65
      src/static/win/python/kflash_gui1.3/pack.py
  66. 0 40
      src/static/win/python/kflash_gui1.3/parameters.py
  67. 0 73
      src/static/win/python/kflash_gui1.3/paremeters_save.py
  68. 0 6
      src/static/win/python/kflash_gui1.3/requirements.txt
  69. 0 59
      src/static/win/python/kflash_gui1.3/translation.py
  70. 0 1
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5-5.14.2.dist-info/INSTALLER
  71. 0 66
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5-5.14.2.dist-info/METADATA
  72. 0 2163
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5-5.14.2.dist-info/RECORD
  73. 0 4
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5-5.14.2.dist-info/WHEEL
  74. 0 4
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5-5.14.2.dist-info/entry_points.txt
  75. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/QAxContainer.pyd
  76. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt.pyd
  77. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Bluetooth.dll
  78. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Core.dll
  79. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5DBus.dll
  80. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Designer.dll
  81. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Gui.dll
  82. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Help.dll
  83. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Location.dll
  84. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Multimedia.dll
  85. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5MultimediaWidgets.dll
  86. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Network.dll
  87. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5NetworkAuth.dll
  88. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Nfc.dll
  89. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5OpenGL.dll
  90. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Positioning.dll
  91. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5PositioningQuick.dll
  92. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5PrintSupport.dll
  93. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Qml.dll
  94. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QmlModels.dll
  95. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QmlWorkerScript.dll
  96. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Quick.dll
  97. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QuickControls2.dll
  98. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QuickParticles.dll
  99. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QuickShapes.dll
  100. BIN
      src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QuickTemplates2.dll

+ 1 - 1
src/renderer/cocoblockly-x

@@ -1 +1 @@
-Subproject commit 924cc54d1d7f1196a6a429ac33091c15e6a9d21d
+Subproject commit 5fe55761cac0ec833cae2dc3095d31a0b1b5534c

+ 0 - 57
src/static/win/python/kflash_gui1.3/.travis.yml

@@ -1,57 +0,0 @@
-language: python
-os: linux
-notifications:
-  email: false
-jobs:
-  include:
-    - name: "Python 3.7.0 on Xenial Linux"
-      os: linux
-      python: 3.7           # this works for Linux but is ignored on macOS or Windows
-      addons:
-        apt:
-          packages:
-          - x11-utils
-          - libxkbcommon-x11-0
-    - name: "Python 3.7.4 on macOS"
-      os: osx
-      osx_image: xcode11.2  # Python 3.7.4 running on macOS 10.14.4
-      language: shell       # 'language: python' is an error on Travis CI macOS
-      addons:
-        homebrew:
-          packages:
-          - create-dmg
-    - name: "Python 3.7.0 on Windows"
-      os: windows           # Windows 10.0.17134 N/A Build 17134
-      language: shell       # 'language: python' is an error on Travis CI Windows
-      before_install:
-        - choco install python --version 3.7.0
-        - python -m pip install --upgrade pip
-      env: PATH=/c/Python37:/c/Python37/Scripts:$PATH
-install:
-  - pip3 install --upgrade pip
-  - pip3 install -r requirements.txt
-  - pip3 freeze
-script:
-  - python3 pack.py || python pack.py
-
-before_deploy:
-  - if [ "$TRAVIS_OS_NAME" = "linux" ]; then mv "dist/kflash_gui.tar.xz" "dist/kflash_gui_${TRAVIS_TAG}_linux.tar.xz" ; fi
-  - if [ "$TRAVIS_OS_NAME" = "osx" ]; then mv "dist/kflash_gui.dmg" "dist/kflash_gui_${TRAVIS_TAG}_macOS.dmg" ; fi
-  - if [ "$TRAVIS_OS_NAME" = "windows" ]; then mv "dist/kflash_gui.7z" "dist/kflash_gui_${TRAVIS_TAG}_windows.7z" ; fi
-  - find dist
-
-deploy:
-  provider: releases
-  overwrite: true
-  token:
-    secure: "f/cXevhUkauQ4Q0QlbvwLWrmh+fxxrkwsCRdaJw3zKmlsOoj4TAcajJNy3Y5tJ3wFLOoL8ZS2XcZKY165cLUSP17v2iuGFuDgWUoJR9bRHi3mTEiU21VtoHLIUmWRJJLbY8sO2OtIKvUbWeniT29b4/UDQrfC7Ng4+2pXI/eZ2SPOm+kqvjLtLVrGINBpnVo45e4pCQO/BCfxH3vbRMQAjFkXpOxO10pCD4+E0HSifE1LSMymoDYDQozg8TomEoZq3bSLww5Mod8q0Q+Z0LnpfLqepHpTwpW4SqKnQi2RKDzVrTI8zbPyA62zO4f5s1/z+cshOGusLHpI1isNJQnyDR6HmzjaukCHc/cv5M0VYd5GbBddR9dzF6DrAs1LjOVuCR9ZgXmJ5jQaV2xpaYVyLcIJsNelpIgUu3Ob6RRKR5T2WZgKZEu8kgWpAdKqvUVS+WDabKJWjxmWxar0GlkuIOKRW7mkMowE/P0Dtzw07UpfIFI6dFlv7cp3tQad9LN+tMs4ie+JflWbovz6a7RV5JOK8v8HRqawL3UmwLx7WNFTZiQnaXcFOCvtsZ3jmZUb00Q16vzUevyPxoBziG50BddMM41K6zSdIX8V+oUeYQwwRblS0GBgDbwKVK20kKWETWWzaqmG5LJndfYppPbuZOflRGh3GJE7KblRHefSAc="
-  file_glob: true
-  file:
-    - "dist/kflash_gui_${TRAVIS_TAG}_linux.tar.xz"
-    - "dist/kflash_gui_${TRAVIS_TAG}_macOS.dmg"
-    - "dist/kflash_gui_${TRAVIS_TAG}_windows.7z"
-  cleanup: false
-  prerelease: true
-  on:
-    tags: true
-  edge: true

+ 0 - 29
src/static/win/python/kflash_gui1.3/Combobox.py

@@ -1,29 +0,0 @@
-from PyQt5.QtWidgets import QComboBox,QListView
-from PyQt5.QtCore import pyqtSignal
-
-
-class ComboBox(QComboBox):
-    clicked = pyqtSignal()
-    # popupAboutToBeShown = pyqtSignal()
-
-    def __init__(self):
-        QComboBox.__init__(self)
-        listView = QListView()
-        self.setView(listView)
-        return
-
-    def mouseReleaseEvent(self, QMouseEvent):
-        self.showItems()
-
-    def showPopup(self):
-        # self.popupAboutToBeShown.emit()
-        # prevent show popup, manually call it in mouse release event
-        pass
-    
-    def showItems(self):
-        super(ComboBox, self).showPopup()
-
-    def mousePressEvent(self, QMouseEvent):
-        self.clicked.emit()
-
-

+ 0 - 165
src/static/win/python/kflash_gui1.3/LICENSE

@@ -1,165 +0,0 @@
-                   GNU LESSER GENERAL PUBLIC LICENSE
-                       Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-
-  This version of the GNU Lesser General Public License incorporates
-the terms and conditions of version 3 of the GNU General Public
-License, supplemented by the additional permissions listed below.
-
-  0. Additional Definitions.
-
-  As used herein, "this License" refers to version 3 of the GNU Lesser
-General Public License, and the "GNU GPL" refers to version 3 of the GNU
-General Public License.
-
-  "The Library" refers to a covered work governed by this License,
-other than an Application or a Combined Work as defined below.
-
-  An "Application" is any work that makes use of an interface provided
-by the Library, but which is not otherwise based on the Library.
-Defining a subclass of a class defined by the Library is deemed a mode
-of using an interface provided by the Library.
-
-  A "Combined Work" is a work produced by combining or linking an
-Application with the Library.  The particular version of the Library
-with which the Combined Work was made is also called the "Linked
-Version".
-
-  The "Minimal Corresponding Source" for a Combined Work means the
-Corresponding Source for the Combined Work, excluding any source code
-for portions of the Combined Work that, considered in isolation, are
-based on the Application, and not on the Linked Version.
-
-  The "Corresponding Application Code" for a Combined Work means the
-object code and/or source code for the Application, including any data
-and utility programs needed for reproducing the Combined Work from the
-Application, but excluding the System Libraries of the Combined Work.
-
-  1. Exception to Section 3 of the GNU GPL.
-
-  You may convey a covered work under sections 3 and 4 of this License
-without being bound by section 3 of the GNU GPL.
-
-  2. Conveying Modified Versions.
-
-  If you modify a copy of the Library, and, in your modifications, a
-facility refers to a function or data to be supplied by an Application
-that uses the facility (other than as an argument passed when the
-facility is invoked), then you may convey a copy of the modified
-version:
-
-   a) under this License, provided that you make a good faith effort to
-   ensure that, in the event an Application does not supply the
-   function or data, the facility still operates, and performs
-   whatever part of its purpose remains meaningful, or
-
-   b) under the GNU GPL, with none of the additional permissions of
-   this License applicable to that copy.
-
-  3. Object Code Incorporating Material from Library Header Files.
-
-  The object code form of an Application may incorporate material from
-a header file that is part of the Library.  You may convey such object
-code under terms of your choice, provided that, if the incorporated
-material is not limited to numerical parameters, data structure
-layouts and accessors, or small macros, inline functions and templates
-(ten or fewer lines in length), you do both of the following:
-
-   a) Give prominent notice with each copy of the object code that the
-   Library is used in it and that the Library and its use are
-   covered by this License.
-
-   b) Accompany the object code with a copy of the GNU GPL and this license
-   document.
-
-  4. Combined Works.
-
-  You may convey a Combined Work under terms of your choice that,
-taken together, effectively do not restrict modification of the
-portions of the Library contained in the Combined Work and reverse
-engineering for debugging such modifications, if you also do each of
-the following:
-
-   a) Give prominent notice with each copy of the Combined Work that
-   the Library is used in it and that the Library and its use are
-   covered by this License.
-
-   b) Accompany the Combined Work with a copy of the GNU GPL and this license
-   document.
-
-   c) For a Combined Work that displays copyright notices during
-   execution, include the copyright notice for the Library among
-   these notices, as well as a reference directing the user to the
-   copies of the GNU GPL and this license document.
-
-   d) Do one of the following:
-
-       0) Convey the Minimal Corresponding Source under the terms of this
-       License, and the Corresponding Application Code in a form
-       suitable for, and under terms that permit, the user to
-       recombine or relink the Application with a modified version of
-       the Linked Version to produce a modified Combined Work, in the
-       manner specified by section 6 of the GNU GPL for conveying
-       Corresponding Source.
-
-       1) Use a suitable shared library mechanism for linking with the
-       Library.  A suitable mechanism is one that (a) uses at run time
-       a copy of the Library already present on the user's computer
-       system, and (b) will operate properly with a modified version
-       of the Library that is interface-compatible with the Linked
-       Version.
-
-   e) Provide Installation Information, but only if you would otherwise
-   be required to provide such information under section 6 of the
-   GNU GPL, and only to the extent that such information is
-   necessary to install and execute a modified version of the
-   Combined Work produced by recombining or relinking the
-   Application with a modified version of the Linked Version. (If
-   you use option 4d0, the Installation Information must accompany
-   the Minimal Corresponding Source and Corresponding Application
-   Code. If you use option 4d1, you must provide the Installation
-   Information in the manner specified by section 6 of the GNU GPL
-   for conveying Corresponding Source.)
-
-  5. Combined Libraries.
-
-  You may place library facilities that are a work based on the
-Library side by side in a single library together with other library
-facilities that are not Applications and are not covered by this
-License, and convey such a combined library under terms of your
-choice, if you do both of the following:
-
-   a) Accompany the combined library with a copy of the same work based
-   on the Library, uncombined with any other library facilities,
-   conveyed under the terms of this License.
-
-   b) Give prominent notice with the combined library that part of it
-   is a work based on the Library, and explaining where to find the
-   accompanying uncombined form of the same work.
-
-  6. Revised Versions of the GNU Lesser General Public License.
-
-  The Free Software Foundation may publish revised and/or new versions
-of the GNU Lesser 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
-Library as you received it specifies that a certain numbered version
-of the GNU Lesser General Public License "or any later version"
-applies to it, you have the option of following the terms and
-conditions either of that published version or of any later version
-published by the Free Software Foundation. If the Library as you
-received it does not specify a version number of the GNU Lesser
-General Public License, you may choose any version of the GNU Lesser
-General Public License ever published by the Free Software Foundation.
-
-  If the Library as you received it specifies that a proxy can decide
-whether future versions of the GNU Lesser General Public License shall
-apply, that proxy's public statement of acceptance of any version is
-permanent authorization for you to choose that version for the
-Library.

+ 0 - 149
src/static/win/python/kflash_gui1.3/README.md

@@ -1,149 +0,0 @@
-kflash_gui
-=============
-
-Cross platform GUI wrapper for [kflash.py](https://github.com/sipeed/kflash.py.git) (download(/burn) tool for k210)
-
-
-![screenshot](kflash_gui_data/assets/screenshot_kflash_gui_v1.5.png)
-
-## Features
-
-* Support `*.bin` and `*.kfpgk` file with file picker
-* Support development board select(And auto detect, you should select board manually if you want to use high speed mode)
-* Support select where the firmware burned to
-* Auto scan serial port support
-* Baudrate editable
-* White skin and night skin support
-* Support Chinese and English Language 
-* Download(/burn) progress and speed display
-* Cancel download support
-* Support merge bins to one bin file(Especially for factory flash burn usage)
-* Support convert kfpkg to one bin file
-* Support enbale bin file or not
-* Auto identify firmware file
-* Erase flash support(Full chip or partial erase)
-
-
-## Screenshots
-
-| ![](kflash_gui_data/assets/screenshot_1.png) | ![](kflash_gui_data/assets/screenshot_2.png) |
-| -| -|
-| ![](kflash_gui_data/assets/screenshot_download.png) | ![](kflash_gui_data/assets/screenshot_download_en.png) |
-| ![](kflash_gui_data/assets/screenshot_en.png) | ![](kflash_gui_data/assets/screenshot_file.png) |
-| ![](kflash_gui_data/assets/erase.png) | ![](kflash_gui_data/assets/erase_zh.png)
-
-
-
-## Usage
-
-* Download bin file (`kflash_gui_v*.*`)  [here](https://github.com/sipeed/kflash_gui/releases)
-
-* Compress and double click `kflash_gui.exe` or `kflash_gui`
-
-* you can create your own shortcut by yourself; If `Linux`, edit the path in `kflash_gui.desktop`, then copy this file to `/usr/share/application` folder with administrator, and finally you can find `kflash_gui` app in the system menu
-
-* Select `bin` file or `kfpkg` file, set address to `0x0000` if file is firmware
-* Select board
-* Select where firmware flash to, `Flash` or `SRAM`
-* Select serial port
-* Select baudrate, `1.5M` recommend
-* Click Download to burn firmware or model to board
-
-## Running from source
-
-This repository uses submodules. The ``--recursive`` should be used so the required submodule(s) are downloaded.
-
-```
-git clone  --recursive https://github.com/sipeed/kflash_gui.git
-cd kflash_gui
-```
-
-Assuming a Debian based distro is being used, dependencies can be installed with the following commands.
-
-```
-sudo apt install python3 python3-pip
-sudo pip3 install -r requirements.txt
-```
-
-kflash_gui can be run from the source file as follows:
-
-```
-python3 kflash_gui.py
-```
-
-An execution package can be made with these commands:
-
-```shell
-sudo pip3 install pyinstaller
-python3 pack.py
-```
-
-
-## If downloading fails
-
-* Check hardware connection
-* Check board selection
-* Check serial port selection
-* Check baudrate, do not too high
-* Check if serial occupied by other software
-* Replug in USB cable and try again
-
-## How `kfpkg` coms from
-
-Refer here: [blog.sipeed.com/p/390.html](http://blog.sipeed.com/p/390.html)
-
----------------------------
-
-## 特性
-
-* 支持 `*.bin` 和 `*.kfpgk` 文件, 支持文件选择器选择
-* 支持开发板选择(也支持自动选择, 要使用高速模式尽量手动选择)
-* 可选择程序烧录到 `Flash` 或者 `SRAM`
-* 自动检测电脑上的串口
-* 波特率可编辑
-* 黑白两种皮肤可供选择
-* 界面支持中英文切换
-* 支持烧录进度显示和烧录速度显示
-* 支持取消下载进程
-* 支持合并多个 bin 文件为一个 bin 文件 (工厂批量烧录 Flash 可使用此功能打包成 bin )
-* 支持把 kfpkg 文件转换为一个 bin 文件 (工厂批量烧录 Flash 可使用此功能打包成 bin )
-* 支持使能 bin 文件
-* 自动识别文件是不是固件
-* Flash 擦除 (支持 部分擦除 和 整片 擦除)
-
-## 使用方法
-
-* 下载文件(`kflash_gui_v*.*`)  下载地址:[release页面](https://github.com/sipeed/kflash_gui/releases)
-
-* 解压, 并双击 `kflash_gui.exe` 或 `kflash_gui`
-* 
-* 可以自行建快捷方式或者固定到开始页面或者固定要任务栏方便使用; 如果是 `Linux`, 可以修改 `kflash_gui.desktop` 里面的路径, 然后用管理员身份复制到`/usr/share/application` 目录, 然后就可以在系统菜单里面找到`kflash_gui`的图标了,点击即可打开
-
-* 选择 `bin` 文件或者 `kfpkg` 文件, 如果是`bin`文件需要指定地址,如果是固件需要指定`0x0000`地址
-* 选择开发板
-* 选择烧录到开发板的哪个位置 `Flash`(速度慢但是重新上电还可运行) 或者 `SRAM`(`RAM`中运行,下载快断电丢失程序)
-* 选择串口
-* 选择波特率,推荐`1.5M`
-* 点击 `下载` 按钮来开始下载
-* 如果需要取消,点击 `取消` 按钮
-
-## 无法下载时检查
-
-* 板子连接是否正确
-* 开发板是否选择正确
-* 串口是否选择正确
-* 串口速度是否选择过高,可以适当降低速度试试
-* 串口是否被其它软件占用
-* 串口是否出了奇怪的问题,拔掉电脑连接到板子的线重新插一下试试
-
-## 如何手动打包 `kfpkg`
-
-参考这里: [blog.sipeed.com/p/390.html](http://blog.sipeed.com/p/390.html)
-
-
-
-
-
-
-
-

BIN
src/static/win/python/kflash_gui1.3/__pycache__/Combobox.cpython-37.pyc


BIN
src/static/win/python/kflash_gui1.3/__pycache__/autoUpdate.cpython-37.pyc


BIN
src/static/win/python/kflash_gui1.3/__pycache__/helpAbout.cpython-37.pyc


BIN
src/static/win/python/kflash_gui1.3/__pycache__/parameters.cpython-37.pyc


BIN
src/static/win/python/kflash_gui1.3/__pycache__/paremeters_save.cpython-37.pyc


BIN
src/static/win/python/kflash_gui1.3/__pycache__/translation.cpython-37.pyc


+ 0 - 32
src/static/win/python/kflash_gui1.3/autoUpdate.py

@@ -1,32 +0,0 @@
-import webbrowser
-import urllib.request
-from bs4 import BeautifulSoup
-try:
-    import helpAbout,parameters
-except ImportError:
-    from COMTool import helpAbout,parameters
-
-
-class AutoUpdate:
-    updateUrl = "https://github.com/Sipeed/kflash_gui/releases"
-    def detectNewVersion(self):
-        try:
-            page = urllib.request.urlopen(self.updateUrl)
-            html_doc = page.read().decode()
-            soup = BeautifulSoup(html_doc,"html.parser")
-            for v in soup.select('.label-latest .css-truncate-target'):
-                versionStr = v.get_text()
-                version = list(map(int, versionStr[1:].split(".")))
-                print("The latest is %s, now:V%d.%d.%d" %(versionStr,helpAbout.versionMajor,helpAbout.versionMinor, helpAbout.versionDev))
-                if version[0]*10+version[1] > helpAbout.versionMajor*10+helpAbout.versionMinor:
-                    return True
-                return False
-        except Exception as e:
-            print("error:",e)
-            return False
-        print("Already latest version!")
-        return False
-
-    def OpenBrowser(self):
-        webbrowser.open(self.updateUrl, new=0, autoraise=True)
-        return

+ 0 - 8
src/static/win/python/kflash_gui1.3/dist_tool/appimage/app/AppRun

@@ -1,8 +0,0 @@
-#!/bin/bash
-
-export APPDIR="$(dirname "$(readlink -f "$0")")"
-export PATH="$APPDIR/usr/bin/:$PATH"
-export LD_LIBRARY_PATH="$APPDIR/usr/lib:$PATH"
-export XDG_DATA_DIRS="$APPDIR/usr/share/:/usr/share/:$XDG_DATA_DIRS"
-
-"$APPDIR"/usr/bin/kflash_gui $@

+ 0 - 10
src/static/win/python/kflash_gui1.3/dist_tool/appimage/app/kflash_gui.desktop

@@ -1,10 +0,0 @@
-[Desktop Entry]
-Type=Application
-Name=kflash_gui
-Comment=burn tool with GUI for k210
-Exec=kflash_gui
-Icon=logo
-Categories=Development;
-Terminal=false
-StartupNotify=true
-MimeType=application/x-executable;

BIN
src/static/win/python/kflash_gui1.3/dist_tool/appimage/app/logo.png


BIN
src/static/win/python/kflash_gui1.3/dist_tool/appimage/app/usr/share/icons/hicolor/128x128/apps/logo.png


+ 0 - 20
src/static/win/python/kflash_gui1.3/dist_tool/appimage/gen_appimage.sh

@@ -1,20 +0,0 @@
-#!/bin/bash
-
-cp -rf app ../../dist/
-cd ../../dist
-mkdir -p app/usr/bin
-cp -rf kflash_gui/* app/usr/bin/
-if [[ -f /lib/libc.so.6 ]]; then
-    echo "copy /lib/libc.so.6 to app/usr/lib"
-    cp -f /lib/libc.so.6 app/usr/lib
-fi
-
-if [[ -f appimagetool-x86_64.AppImage ]]; then
-    rm appimagetool-x86_64.AppImage -f
-fi
-wget https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage -O appimagetool-x86_64.AppImage
-echo "===== download tool end ====="
-chmod +x appimagetool-x86_64.AppImage
-ls -al
-ARCH=x86_64 ./appimagetool-x86_64.AppImage -v app
-

+ 0 - 40
src/static/win/python/kflash_gui1.3/helpAbout.py

@@ -1,40 +0,0 @@
-import sys
-import parameters
-import os
-from translation import tr, tr_en
-import time
-
-versionMajor = 1
-versionMinor = 6
-versionDev   = 5
-
-date = "2020.07.29"
-
-def strAbout():
-    pathDirList = sys.argv[0].replace("\\", "/").split("/")
-    pathDirList.pop()
-    strPath = os.path.abspath("/".join(str(i) for i in pathDirList))
-    if not os.path.exists(strPath + "/" + parameters.strDataDirName):
-        pathDirList.pop()
-        strPath = os.path.abspath("/".join(str(i) for i in pathDirList))
-    strPath = (strPath + "/" + parameters.strDataDirName).replace("\\", "/")
-    print(strPath)
-    a =strPath+"/"+parameters.appLogo2
-    print(a)
-    py_version = sys.version_info
-    return '''-----------------------------------------
-<br>
-<b>'''+tr("About")+''':</b>
-<br><br>
-'''+tr("Release with")+" Python" +str(py_version[0]+py_version[1]/10)+ ''' + PyQt5<br><br>
-<div><div>'''+parameters.appName+" "+tr("is a Open source project created by")+''' </div><a style="vertical-align: middle;" href="http://www.sipeed.com"><img src="'''+strPath+"/"+parameters.appLogo2+'''" width=109 height=32></img></a><br></div>
-''' +tr("Author")+":"+parameters.author+'''<br><br>
-
-'''+tr("See more on")+''' <b><a href="https://github.com/Sipeed/kflash_gui.git">Github</a></b>,  '''+tr("Licensed with")+''' <a href="https://github.com/sipeed/kflash_gui/blob/master/LICENSE">LGPL3.0</a><br><br>
-
-
-'''+tr("GUI dirived from")+''' <b><a href="https://github.com/Neutree/ComTool.git">ComTool</a></b>,  '''+tr("Licensed with")+''' <a href="https://github.com/Neutree/COMTool/blob/master/LICENSE">LGPL3.0</a>
-<br>
------------------------------------------
-'''
-

+ 0 - 21
src/static/win/python/kflash_gui1.3/kflash.py/LICENSE

@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2019 Kendryte
-
-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.

+ 0 - 330
src/static/win/python/kflash_gui1.3/kflash.py/README.rst

@@ -1,330 +0,0 @@
-kflash, A Python-based Kendryte K210 UART ISP Utility
-=====================================================
-
-Usage
------
-
-.. code:: bash
-
-    # kflash --help
-    usage: kflash [-h] [-p PORT] [-f FLASH] [-b BAUDRATE] [-l BOOTLOADER]
-                    [-k KEY] [-v] [-t] [-n] [-s] [-B BOARD] [-S SLOW]
-                    firmware
-
-    positional arguments:
-    firmware              firmware bin path
-
-    optional arguments:
-    -h, --help            show this help message and exit
-    -p PORT, --port PORT  COM Port
-    -f FLASH, --flash FLASH
-                            SPI Flash type, 0 for SPI3, 1 for SPI0
-    -b BAUDRATE, --baudrate BAUDRATE
-                            UART baudrate for uploading firmware
-    -l BOOTLOADER, --bootloader BOOTLOADER
-                            bootloader bin path
-    -k KEY, --key KEY     AES key in hex, if you need encrypt your firmware.
-    -v, --verbose         increase output verbosity
-    -t, --terminal        Start a terminal after finish (Python miniterm)
-    -n, --noansi          Do not use ANSI colors, recommended in Windows CMD
-    -s, --sram            Download firmware to SRAM and boot
-    -B BOARD, --Board BOARD
-                            Select dev board, e.g. kd233, dan, bit, goD, goE or
-                            trainer
-    -S SLOW, --Slow SLOW  Slow download mode
-
-Attention
----------
-
-Maixgo with openec firmware, BOARD must choose ``-B goE``, and should choose
-sencond com port.
-
-With cmsis-dap firmware(before 2019.02.21), BOARD must use ``-B goD``.
-
-You can update `new cmsis-dap firmware <http://blog.sipeed.com/p/352.html>`__, it is same as openec.
-
-For K210 Trainer V0.01b, BOARD must choose ``-B trainer``.
-
-For KD233, BOARD must choose ``-B kd233``, and the jumper for kd233 automatic
-download circuit must be set.
-
-Installation
-------------
-
-.. code:: bash
-
-    sudo pip3 install kflash
-
-If you receive an error, please try
-
-.. code:: bash
-
-    sudo python -m pip install kflash
-    sudo python3 -m pip install kflash
-    sudo pip install kflash
-    sudo pip2 install kflash
-
-For linux users, first of all, you must add yourself to dialout group.
-Or you have to use root permission every time.
-
-.. code:: bash
-
-    sudo usermod -a -G dialout $(whoami)
-
-Sample Usage
-------------
-
-.. code:: bash
-
-    # Linux or macOS
-    # Using pip
-    kflash -B dan firmware.bin
-    kflash -B dan -t firmware.bin # Open a Serial Terminal After Finish
-    # Using source code
-    python3 kflash.py -B dan firmware.bin
-    python3 kflash.py -B dan -t firmware.bin # Open a Serial Terminal After Finish
-
-    # Windows CMD or PowerShell
-    # Using pip
-    kflash -B dan firmware.bin
-    kflash -B dan -t firmware.bin # Open a Serial Terminal After Finish
-    kflash -B dan -n -t firmware.bin # Open a Serial Terminal After Finish, do not use ANSI colors
-    # Using source code
-    python kflash.py -B dan firmware.bin
-    python kflash.py -B dan -t firmware.bin # Open a Serial Terminal After Finish
-    python kflash.py -B dan -n -t firmware.bin # Open a Serial Terminal After Finish, do not use ANSI colors
-
-    # Windows Subsystem for Linux
-    # Using pip
-    sudo kflash -B dan -p /dev/ttyS13 firmware.bin # ttyS13 Stands for the COM13 in Device Manager
-    sudo kflash -B dan -p /dev/ttyS13 -t firmware.bin # Open a Serial Terminal After Finish
-    # Using source code
-    sudo python3 kflash.py -B dan -p /dev/ttyS13 firmware.bin # ttyS13 Stands for the COM13 in Device Manager
-    sudo python3 kflash.py -B dan -p /dev/ttyS13 -t firmware.bin # Open a Serial Terminal After Finish
-
-For fast programming,
-
-.. code:: bash
-
-    # Using pip
-    # This will enable opoenec super-baudrate!
-    kflash -b 4500000 -B goE firmware.bin
-    # Trainer could use 8000000 baudrate!
-    kflash -b 8000000 -B trainer firmware.bin
-    # Dan could use 3000000 baudrate!
-    kflash -b 3000000 -B dan firmware.bin
-
-    # Using source code
-    # This will enable opoenec super-baudrate!
-    python3 kflash.py -b 4500000 -B goE firmware.bin
-    # Trainer could use 8000000 baudrate!
-    python3 kflash.py -b 8000000 -B trainer firmware.bin
-    # Dan could use 3000000 baudrate!
-    python3 kflash.py -b 3000000 -B dan firmware.bin
-
-Execute user code directly in SRAM and view in serial terminal,
-
-.. code:: bash
-
-    # Using pip
-    # For `.elf` file
-    kflash -b 115200 -B goE -s -t hello_world
-    # For `.bin` file
-    kflash -b 115200 -B goE -s -t hello_world.bin
-
-    # Using source code
-    # For `.elf` file
-    python3 kflash.py -b 115200 -B goE -s -t hello_world
-    # For `.bin` file
-    python3 kflash.py -b 115200 -B goE -s -t hello_world.bin
-
-Requirements
-------------
-
--  python>=3 or python=2.7
--  pyserial>=3.4
--  pyelftools>=0.25
-
-    Python3 is recommended.
-
-If your python version below python3.4, you need:
-
--  enum34>=1.1.6
-
-Windows Requirements
-~~~~~~~~~~~~~~~~~~~~
-
--  Download and Install `Python3 at python.org <https://www.python.org/downloads/release/python-367/>`__
--  Download the `get-pip.py at https://bootstrap.pypa.io/get-pip.py <https://bootstrap.pypa.io/get-pip.py>`__
--  Start CMD or PowerShell Terminal and run the following command
-
-.. code:: bash
-
-    python get-pip.py
-    python -m pip install pyserial
-    python -m pip install pyelftools
-    # When you python version below python3.4
-    python -m pip install enum34
-
---------------
-
-macOS Requirements
-~~~~~~~~~~~~~~~~~~
-
-.. code:: bash
-
-    # Install Homebrew, an awesome package manager for macOS
-    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
-    brew install python
-    python3 -m pip3 install pyserial
-    python3 -m pip3 install pyelftools
-
---------------
-
-Ubuntu, Debian Requirements
-~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-.. code:: bash
-
-    sudo apt update
-    sudo apt install python3 python3-pip
-    sudo pip3 install pyserial
-    sudo pip3 install pyelftools
-
---------------
-
-Fedora
-~~~~~~
-
-.. code:: bash
-
-    sudo dnf install python3
-    sudo python3 -m pip install pyserial
-    sudo python3 -m pip install pyelftools
-
---------------
-
-CentOS
-~~~~~~
-
-.. code:: bash
-
-    sudo yum -y install epel-release
-    sudo yum -y install python36u python36u-pip
-    sudo ln -s /bin/python3.6 /usr/bin/python3
-    sudo ln -s /bin/pip3.6 /usr/bin/pip3
-    sudo pip3 install pyserial
-    sudo pip3 install pyelftools
-
-Trouble Shooting
-----------------
-
-Could not open port /dev/tty*: [Errno 13] Permission denied: '/dev/tty*'
-------------------------------------------------------------------------
-
-    For Windows Subsystem for Linux, you may have to use sudo due to its docker
-    like feature
-
--  Add your self to a dialout group to use usb-to-uart devices by
-
-.. code:: bash
-
-    sudo usermod -a -G dialout $(whoami)
-
--  Logout, and log in.
-
---------------
-
-UART Auto Detecting is Not Working, or Select the Wrong UART Port
------------------------------------------------------------------
-
-Windows
-~~~~~~~
-
--  Check the COM Number for your device at the Device Manager, such as
-   **USB-SERIAL CH340(COM13)**.
-
-.. code:: bash
-
-    # Using pip, only need once when you install
-    pip install kflash
-    kflash -p COM13 firmware.bin
-    # Or
-    kflash.exe -p COM13 firmware.bin
-    # Using source code
-    python kflash.py -p COM13 firmware.bin
-
-Windows Subsystem For Linux(WSL)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
--  Check the COM Number for your device at the Device Manager, such as
-   **USB-SERIAL CH340(COM13)**.
-
-.. code:: bash
-
-    # Using pip, only need once when you install
-    sudo pip3 install kflash
-    sudo kflash -p /dev/ttyS13 firmware.bin # You have to use *sudo* here
-    # Using source code
-    sudo python3 kflash.py -p /dev/ttyS13 firmware.bin # You have to use *sudo* here
-
-Linux
-~~~~~
-
--  Check the USB Device Name, Usually presented as ttyUSB\*
-
-.. code:: bash
-
-    ls /dev/ttyUSB*
-
--  It will print :
-
-.. code:: bash
-
-    $ ls /dev/ttyUSB*
-    /dev/ttyUSB0
-    /dev/ttyUSB2
-    /dev/ttyUSB13
-
--  Choose the one you think belongs to your device, or you may try multimule
-   names.
-
-.. code:: bash
-
-    # Using pip
-    python3 kflash.py -p /dev/ttyUSB13 firmware.bin
-    # Using source code
-    kflash -p /dev/ttyUSB13 firmware.bin
-
-macOS
-~~~~~
-
--  Check the USB Device Name, Usually presented as cu.\*
-
-.. code:: bash
-
-    ls /dev/cu.*
-
--  It will print :
-
-.. code:: bash
-
-    $ ls /dev/ttyUSB*
-    /dev/cu.wchusbserial1410
-    /dev/cu.wchusbserial1437
-    /dev/cu.SLAB_USBtoUART2333
-
--  Choose the one you think belongs to your device, or you may try multimule
-   names.
-
-.. code:: bash
-
-    # Using pip
-    kflash -p /dev/cu.wchusbserial1410 firmware.bin
-    # Using source code
-    python3 kflash.py -p /dev/cu.wchusbserial1410 firmware.bin
-
-You may unable to find the device even in the /dev, check the link below for
-drivers
-
--  For K210 and Sipeed Dan -> `WCH CH34x USB2UART Chip <https://github.com/adrianmihalko/ch340g-ch34g-ch34x-mac-os-x-driver>`__

File diff suppressed because it is too large
+ 0 - 109
src/static/win/python/kflash_gui1.3/kflash.py/kflash.py


+ 0 - 7
src/static/win/python/kflash_gui1.3/kflash.py/package.json

@@ -1,7 +0,0 @@
-{
-    "description": "kflash, A Python-based Kendryte K210 UART ISP Utility",
-    "name": "tool-kflash-kendryte210",
-    "system": "*",
-    "url": "https://github.com/kendryte/kflash.py",
-    "version": "1.0.0"
-}

+ 0 - 52
src/static/win/python/kflash_gui1.3/kflash.py/setup.py

@@ -1,52 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-
-from __future__ import (division, print_function)
-
-from setuptools import setup, find_packages
-
-setup(
-    name='kflash',
-    py_modules=['kflash'],
-    version='0.8.3',
-    description=(
-        'Kendryte UART ISP Utility - programming code to k210'
-    ),
-    long_description=open('README.rst').read(),
-    long_description_content_type='text/x-rst',
-    author='https://github.com/kendryte/kflash.py/graphs/contributors',
-    author_email='auto@canaan-creative.com',
-    maintainer='Huang Rui',
-    maintainer_email='vowstar@gmail.com',
-    license='MIT License',
-    packages=find_packages(),
-    platforms=["all"],
-    url='https://github.com/kendryte/kflash.py',
-    classifiers=[
-        'Development Status :: 4 - Beta',
-        'Operating System :: OS Independent',
-        'Intended Audience :: Developers',
-        'License :: OSI Approved :: MIT License',
-        'Environment :: Console',
-        'Natural Language :: English',
-        'Programming Language :: Python',
-        'Programming Language :: Python :: Implementation',
-        'Programming Language :: Python :: 2.7',
-        'Programming Language :: Python :: 3',
-        'Programming Language :: Python :: 3.4',
-        'Programming Language :: Python :: 3.5',
-        'Programming Language :: Python :: 3.6',
-        'Programming Language :: Python :: 3.7',
-        'Topic :: Software Development :: Embedded Systems'
-    ],
-    install_requires=[
-        'pyserial>=3.4',
-        'pyelftools>=0.25',
-        'enum34>=1.1.6',
-    ],
-    entry_points={
-        'console_scripts': [
-            'kflash = kflash:main',
-        ]
-    },
-)

+ 0 - 8
src/static/win/python/kflash_gui1.3/kflash_gui.conf

@@ -1,8 +0,0 @@
-{
-    "files": [],
-    "board": 0,
-    "burn_pos": "Flash",
-    "skin": 2,
-    "language": "en",
-    "slow_mode": false
-}

+ 0 - 11
src/static/win/python/kflash_gui1.3/kflash_gui.desktop

@@ -1,11 +0,0 @@
-[Desktop Entry]
-Version=1.0.0
-Type=Application
-Name=kflash_gui
-Comment=download tool with GUI for k210
-Exec=/home/neucrack/software/kflash_gui/kflash_gui %U
-Icon=/home/neucrack/software/kflash_gui/kflash_gui_data/assets/logo.ico
-Categories=Development;
-Terminal=false
-StartupNotify=true
-MimeType=application/x-executable;

+ 0 - 1396
src/static/win/python/kflash_gui1.3/kflash_gui.py

@@ -1,1396 +0,0 @@
-
-
-import sys, os
-sys.path.append(os.getcwd())
-import math
-import tempfile
-import parameters, helpAbout, autoUpdate, paremeters_save
-import translation
-from translation import tr, tr_en, tr2, getCurrentLanguage
-from Combobox import ComboBox
-import json, zipfile, struct, hashlib
-
-dirname = os.path.dirname(sys.executable)
-plugin_path = os.path.join(dirname, 'plugins', 'platforms')
-os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = plugin_path
-
-# from COMTool.wave import Wave
-from PyQt5.QtCore import pyqtSignal,Qt
-from PyQt5.QtWidgets import (QApplication, QWidget,QToolTip,QPushButton,QMessageBox,QDesktopWidget,QMainWindow,
-                             QVBoxLayout,QHBoxLayout,QGridLayout,QLabel,
-                             QLineEdit,QGroupBox,QSplitter,QFileDialog,QCheckBox,
-                             QProgressBar)
-from PyQt5.QtGui import QIcon,QFont,QTextCursor,QPixmap
-import serial
-import serial.tools.list_ports
-import threading
-import time
-import binascii,re
-if sys.platform == "win32":
-    import ctypes
-from  kflash_py.kflash import KFlash
-
-class MyClass(object):
-    def __init__(self, arg):
-        super(MyClass, self).__init__()
-        self.arg = arg
-
-class MainWindow(QMainWindow):
-    errorSignal = pyqtSignal(str, str)
-    hintSignal = pyqtSignal(str, str)
-    updateProgressSignal = pyqtSignal(str, int, int, str)
-    updateProgressPrintSignal = pyqtSignal(str)
-    showSerialComboboxSignal = pyqtSignal()
-    downloadResultSignal = pyqtSignal(bool, str)
-    eraseResultSignal = pyqtSignal(bool, str)
-    eraseStatusSignal = pyqtSignal(str)
-    DataPath = "./"
-    app = None
-    firmware_start_bytes = [b'\x21\xa8', b'\xef\xbe', b'\xad\xde']
-
-    def __init__(self,app):
-        super().__init__()
-        self.app = app
-        self.programStartGetSavedParameters()
-        self.initVar()
-        self.initWindow()
-        self.initEvent()
-        self.updateFrameParams()
-
-    def __del__(self):
-        pass
-
-    def initVar(self):
-        self.burning = False
-        self.erasing = False
-        self.erasingCanCancel = True
-        self.packing = False
-        self.isDetectSerialPort = False
-        self.DataPath = parameters.dataPath
-        self.kflash = KFlash(print_callback=self.kflash_py_printCallback)
-        self.saveKfpkDir = ""
-        self.zipTempFiles = []
-        self.fileSelectWidgets = []
-        self.units = ["KiB", "B", "MiB"]
-        # load erase template
-        self.eraseTemplateConfigs = {}
-        eraseConfigPath = os.path.join(self.DataPath, "erase_config.json")
-        if os.path.exists(eraseConfigPath):
-            with open(eraseConfigPath, encoding='utf-8') as f:
-                self.eraseTemplateConfigs = json.load(f)
-        # convert language to local
-        config = {}
-        current_lang = getCurrentLanguage()
-        for key in self.eraseTemplateConfigs:
-            config[self.eraseTemplateConfigs[key]["lang"][current_lang]] = self.eraseTemplateConfigs[key]["config"]
-        self.eraseTemplateConfigs = config
-        # load boards info
-        self.boardsInfo = {}
-        boardsInfoPath = os.path.join(self.DataPath, "boards_info.json")
-        if os.path.exists(boardsInfoPath):
-            with open(boardsInfoPath, encoding='utf-8') as f:
-                self.boardsInfo = json.load(f)
-        # convert language to local
-        boards = {}
-        for key in self.boardsInfo:
-            boards[self.boardsInfo[key]['lang'][current_lang]] = self.boardsInfo[key]['type']
-        self.boardsInfo = boards
-
-    def setWindowSize(self, w=520, h=250):
-        self.resize(w, h)
-
-    def setFileSelectItemLayout(self, item, isKfpkg):
-        if isKfpkg:
-            item[4].hide()
-            item[2].setStretch(0, 1)
-            item[2].setStretch(1, 12)
-            item[2].setStretch(3, 4)
-            item[2].setStretch(4, 1)
-        else:
-            item[4].hide()
-            item[2].setStretch(0, 1)
-            item[2].setStretch(1, 8)
-            item[2].setStretch(2, 4)
-            item[2].setStretch(3, 4)
-            item[2].setStretch(4, 1)
-
-    def addFileSelectionItem(self):
-        enableCheckbox = QCheckBox()
-        enableCheckbox.hide()
-        filePathWidget = QLineEdit()
-        fileBurnAddrWidget = QLineEdit("0x00000")
-        fileBurnAddrWidget.hide()
-        openFileButton = QPushButton(tr("OpenFile"))
-        removeButton = QPushButton()
-        removeButton.hide()
-        removeButton.setProperty("class", "remove_file_selection")
-        oneFilePathWidget = QWidget()
-        oneFilePathWidgetLayout = QHBoxLayout()
-        oneFilePathWidget.setLayout(oneFilePathWidgetLayout)
-        oneFilePathWidgetLayout.addWidget(enableCheckbox)
-        oneFilePathWidgetLayout.addWidget(filePathWidget)
-        oneFilePathWidgetLayout.addWidget(fileBurnAddrWidget)
-        oneFilePathWidgetLayout.addWidget(openFileButton)
-        oneFilePathWidgetLayout.addWidget(removeButton)        
-        
-        filesItemLen = len(self.fileSelectWidgets)
-        hideAddrWidget = True
-        if filesItemLen != 0 and not self.fileSelectWidgets[filesItemLen-1][4].isHidden():
-            hideAddrWidget = False
-        if filesItemLen == 0:
-            removeButton.hide()
-        elif filesItemLen == 1:
-            self.fileSelectWidgets[0][7].show()
-        #                0        1                   2                       3               4                   5               6           7             8             
-        item =          ["kfpkg", oneFilePathWidget, oneFilePathWidgetLayout, filePathWidget, fileBurnAddrWidget, openFileButton, False,      removeButton, enableCheckbox]
-        # for "bin":    ["bin", oneFilePathWidget,   oneFilePathWidgetLayout, filePathWidget, fileBurnAddrWidget, openFileButton, isFirmware, removeButton, enableCheckbox]
-        self.fileSelectWidgets.append(item)
-
-        self.setFileSelectItemLayout(item, hideAddrWidget)
-
-        openFileButton.clicked.connect(lambda:self.selectFile(item))
-        removeButton.clicked.connect(lambda:self.removeFileSelectionItem(item))
-        self.fileSelectLayout.addWidget(oneFilePathWidget)
-        return item
-
-    def removeFileSelectionItem(self, item):
-        if self.packing:
-            self.hintSignal.emit(tr("Busy"), tr("Please wait, packing ..."))
-            return
-        if len(self.fileSelectWidgets) <= 1:
-            return
-        item[5].clicked.disconnect()
-        item[7].clicked.disconnect()
-        item[1].setParent(None)
-        self.fileSelectWidgets.remove(item)
-        if len(self.fileSelectWidgets) == 1:
-            self.fileSelectWidgets[0][7].hide()
-        self.downloadWidget.resize(self.downloadWidget.width(), 58)
-        self.setWindowSize(self.width())
-
-    def initWindow(self):
-        QToolTip.setFont(QFont('SansSerif', 10))
-        # main layout
-        self.frameWidget = QWidget()
-        mainWidget = QWidget()
-        self.frameLayout = QVBoxLayout()
-        self.settingWidget = QWidget()
-        settingLayout = QVBoxLayout()
-        self.settingWidget.setProperty("class","settingWidget")
-        mainLayout = QVBoxLayout()
-        self.settingWidget.setLayout(settingLayout)
-        mainLayout.addWidget(self.settingWidget)
-        # mainLayout.setStretch(0,2)
-        menuLayout = QHBoxLayout()
-        
-        self.progressHint = QLabel()
-        self.progressHint.hide()
-
-        self.progressbarRootWidget = QWidget()
-        progressbarLayout = QVBoxLayout()
-        self.progressbarRootWidget.setProperty("class","progressbarWidget")
-        self.progressbarRootWidget.setLayout(progressbarLayout)
-        
-        self.downloadWidget = QWidget()
-        downloadLayout = QVBoxLayout()
-        self.downloadWidget.setProperty("class","downloadWidget")
-        self.downloadWidget.setLayout(downloadLayout)
-
-        mainWidget.setLayout(mainLayout)
-        # menu
-        # -----
-        # settings and others
-        # -----
-        # progress bar
-        # -----
-        # download button
-        # -----
-        # status bar
-        self.frameLayout.addLayout(menuLayout)
-        self.frameLayout.addWidget(mainWidget)
-        self.frameLayout.addWidget(self.progressHint)
-        self.frameLayout.addWidget(self.progressbarRootWidget)
-        self.frameLayout.addWidget(self.downloadWidget)
-        self.frameWidget.setLayout(self.frameLayout)
-        self.setCentralWidget(self.frameWidget)
-        self.setFrameStrentch(1)
-
-        # option layout
-        self.langButton = QPushButton()
-        self.skinButton = QPushButton()
-        self.aboutButton = QPushButton()
-        self.FuncCombobox = ComboBox()
-        self.FuncCombobox.addItem(tr("Firmware"))
-        self.FuncCombobox.addItem(tr("Erase"))
-        self.langButton.setProperty("class", "menuItemLang")
-        self.skinButton.setProperty("class", "menuItem2")
-        self.aboutButton.setProperty("class", "menuItem3")
-        self.langButton.setObjectName("menuItem")
-        self.skinButton.setObjectName("menuItem")
-        self.aboutButton.setObjectName("menuItem")
-        self.FuncCombobox.setObjectName("funcSelect")
-        menuLayout.addWidget(self.langButton)
-        menuLayout.addWidget(self.skinButton)
-        menuLayout.addWidget(self.aboutButton)
-        menuLayout.addStretch(0)
-        menuLayout.addWidget(self.FuncCombobox)
-
-        # widgets erase configuration
-        self.eraseGroupBox = QGroupBox(tr("Erase settings"))
-        self.eraseGroupBox.hide()
-        settingLayout.addWidget(self.eraseGroupBox)
-        eraseLayout = QGridLayout()
-        self.eraseGroupBox.setLayout(eraseLayout)
-        self.eraseModeCombobox = ComboBox()
-        self.eraseModeCombobox.addItem(tr("Partial erase"))
-        self.eraseModeCombobox.addItem(tr("Chip erase"))
-        self.eraseAddr = QLineEdit("0x00000")
-        self.eraseAddr.hide()
-        self.eraseLen = QLineEdit("1")
-        self.eraseLenUnit = ComboBox()
-        self.eraseLenUnit.addItem("MiB")
-        self.eraseLenUnit.addItem("KiB")
-        self.eraseLenUnit.addItem("B")
-        self.eraseLoadConfigCombobox = ComboBox()
-        for key in self.eraseTemplateConfigs:
-            self.eraseLoadConfigCombobox.addItem(key)
-        self.eraseLoadButton = QPushButton(tr("Load"))
-        eraseLayout.addWidget(QLabel(tr("Mode")), 0, 0, 1, 1)
-        eraseLayout.addWidget(QLabel(tr("Address")), 1, 0, 1, 1)
-        eraseLayout.addWidget(QLabel(tr("Length")), 2, 0, 1, 1)
-        eraseLayout.addWidget(QLabel(tr("Load Template")), 3, 0, 1, 1)
-        eraseLayout.addWidget(self.eraseModeCombobox, 0, 1, 1, 2)
-        eraseLayout.addWidget(self.eraseAddr, 1, 1, 1, 2)
-        eraseLayout.addWidget(self.eraseLen, 2, 1, 1, 1)
-        eraseLayout.addWidget(self.eraseLenUnit, 2, 2, 1, 1)
-        eraseLayout.addWidget(self.eraseLoadConfigCombobox, 3, 1, 1, 1)
-        eraseLayout.addWidget(self.eraseLoadButton, 3, 2, 1, 1)
-        
-        # widgets file select
-        self.fileSelectGroupBox = QGroupBox(tr("SelectFile"))
-        # container
-        settingLayout.addWidget(self.fileSelectGroupBox)
-        self.fileSelectContainerLayout = QVBoxLayout()
-        self.fileSelectGroupBox.setLayout(self.fileSelectContainerLayout)
-        # file selection
-        self.fileSelecWidget = QWidget()
-        self.fileSelectLayout = QVBoxLayout()
-        self.fileSelecWidget.setLayout(self.fileSelectLayout)
-        self.fileSelectContainerLayout.addWidget(self.fileSelecWidget)
-        
-        # add file selection item
-        self.addFileSelectionItem()
-        
-        # add fileselection functions
-        mergeBinWidget = QWidget()
-        mergeBinWidgetLayout = QHBoxLayout()
-        # mergeBinWidget.setLayout(mergeBinWidgetLayout)
-        self.addFileButton = QPushButton(tr("Add File"))
-        self.packFilesButton = QPushButton(tr("Pack to kfpkg"))
-        self.mergeBinButton = QPushButton(tr("Merge to .bin"))
-        mergeBinWidgetLayout.addWidget(self.addFileButton)
-        mergeBinWidgetLayout.addWidget(self.packFilesButton)
-        mergeBinWidgetLayout.addWidget(self.mergeBinButton)
-        self.fileSelectContainerLayout.addWidget(mergeBinWidget)
-
-        # widgets board select
-        boardSettingsGroupBox = QHBoxLayout() # tr("BoardSettings")
-        self.settingWidget.setLayout(boardSettingsGroupBox)
-        # boardSettingsLayout = QGridLayout()
-        # boardSettingsGroupBox.setLayout(boardSettingsLayout)
-        self.boardLabel = QLabel() # tr("Board")
-        self.boardCombobox = ComboBox()
-        self.boardCombobox.hide()
-        for key in self.boardsInfo:
-            self.boardCombobox.addItem(key)
-        self.burnPositionLabel = QLabel()# tr("BurnTo")
-        self.burnPositionCombobox = ComboBox()
-        self.burnPositionCombobox.hide()
-        self.burnPositionCombobox.addItem(tr("Flash"))
-        self.burnPositionCombobox.addItem(tr("SRAM"))
-        #boardSettingsLayout.addWidget(self.boardLabel, 0, 0)
-        boardSettingsGroupBox.addWidget(self.boardCombobox)
-        #boardSettingsLayout.addWidget(self.burnPositionLabel, 1, 0)
-        boardSettingsGroupBox.addWidget(self.burnPositionCombobox)
-
-        # widgets serial settings
-        serialSettingsGroupBox = QGroupBox(tr("SerialSettings"))
-        serialSettingsLayout = QGridLayout()
-        serialPortLabek = QLabel(tr("SerialPort"))
-        serailBaudrateLabel = QLabel(tr("SerialBaudrate"))
-        slowModeLabel = QLabel(tr("Speed mode"))
-        self.serialPortCombobox = ComboBox()
- 
-        self.serailBaudrateCombobox = ComboBox()
-        self.serailBaudrateCombobox.hide();
-        self.serailBaudrateCombobox.addItem("921600")
-        self.serailBaudrateCombobox.addItem("921600")
-        self.serailBaudrateCombobox.addItem("921600")
-        self.serailBaudrateCombobox.addItem("921600")
-        self.serailBaudrateCombobox.addItem("921600")
-        self.serailBaudrateCombobox.addItem("921600")
-        self.serailBaudrateCombobox.addItem("921600")
-        self.serailBaudrateCombobox.setCurrentIndex(1)
-        self.serailBaudrateCombobox.setEditable(True)
-        self.slowModeCombobox = ComboBox()
-        self.slowModeCombobox.hide();
-        self.slowModeCombobox.addItem(tr("Slow mode"))
-        self.slowModeCombobox.addItem(tr("Fast mode"))
-        slowModeLabel.setToolTip(tr("slow mode tips"))
-        self.slowModeCombobox.setToolTip(tr("slow mode tips"))
-        
-        serialSettingsLayout.addWidget(serialPortLabek,0,0)
-        #serialSettingsLayout.addWidget(serailBaudrateLabel, 1, 0)
-        #serialSettingsLayout.addWidget(slowModeLabel, 2, 0)
-        serialSettingsLayout.addWidget(self.serialPortCombobox, 0, 1)
-        #serialSettingsLayout.addWidget(self.serailBaudrateCombobox, 1, 1)
-        #serialSettingsLayout.addWidget(self.slowModeCombobox, 2, 1)
-        serialSettingsGroupBox.setLayout(serialSettingsLayout)
-        settingLayout.addWidget(serialSettingsGroupBox)
-
-        # set stretch
-        settingLayout.setStretch(0,1)
-        settingLayout.setStretch(1,1)
-        settingLayout.setStretch(2,2)
-
-        # widgets progress bar
-        
-        self.progressbar = QProgressBar(self.progressbarRootWidget)
-        self.progressbar.setValue(0)
-        self.progressbarRootWidget.hide()
-
-        # widgets download area
-        self.downloadButton = QPushButton(tr("Download"))
-        downloadLayout.addWidget(self.downloadButton)
-        # widgets erase area
-        self.eraseButton = QPushButton(tr("Erase"))
-        downloadLayout.addWidget(self.eraseButton)
-        self.eraseButton.hide()
-        self.eraseStatus = QLabel()
-        self.eraseStatus.hide()
-        downloadLayout.addWidget(self.eraseStatus)
-
-        # main window
-        self.statusBarStauts = QLabel()
-        self.statusBarStauts.setMinimumWidth(80)
-        self.statusBarStauts.setText("<font color=%s>%s</font>" %("#1aac2d", tr("DownloadHint")))
-        self.statusBar().addWidget(self.statusBarStauts)
-
-        self.setWindowSize()
-        self.MoveToCenter()
-        self.setWindowTitle(parameters.appName+" V"+str(helpAbout.versionMajor)+"."+str(helpAbout.versionMinor))
-        icon = QIcon()
-        print("icon path:"+self.DataPath+"/"+parameters.appIcon)
-        icon.addPixmap(QPixmap(self.DataPath+"/"+parameters.appIcon), QIcon.Normal, QIcon.Off)
-        self.setWindowIcon(icon)
-        if sys.platform == "win32":
-            ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID(parameters.appName)
-        
-        self.show()
-        self.progressbar.setGeometry(10, 0, self.downloadWidget.width()-25, 40)
-        print("config file path:", parameters.configFilePath)
-
-    def initEvent(self):
-        self.serialPortCombobox.clicked.connect(self.portComboboxClicked)
-        self.errorSignal.connect(self.errorHint)
-        self.hintSignal.connect(self.hint)
-        self.downloadResultSignal.connect(self.downloadResult)
-        self.eraseResultSignal.connect(self.eraseResult)
-        self.eraseStatusSignal.connect(self.setEraseStatus)
-        self.showSerialComboboxSignal.connect(self.showCombobox)
-        self.updateProgressSignal.connect(self.updateProgress)
-        self.updateProgressPrintSignal.connect(self.updateProgressPrint)
-        self.langButton.clicked.connect(self.langChange)
-        self.skinButton.clicked.connect(self.skinChange)
-        self.aboutButton.clicked.connect(self.showAbout)
-        self.FuncCombobox.currentIndexChanged.connect(self.changeFunc)
-        self.downloadButton.clicked.connect(self.download)
-        self.eraseButton.clicked.connect(self.erase)
-        self.eraseLoadButton.clicked.connect(self.eraseLoadConfig)
-
-        self.eraseModeCombobox.currentIndexChanged.connect(self.eraseModechange)
-
-        self.addFileButton.clicked.connect(lambda: self.fileSelectLayout.addWidget(self.addFileSelectionItem()[1]))
-        self.packFilesButton.clicked.connect(self.packFiles)
-        self.mergeBinButton.clicked.connect(self.mergeBin)
-
-        self.myObject=MyClass(self)
-        slotLambda = lambda: self.indexChanged_lambda(self.myObject)
-        self.serialPortCombobox.currentIndexChanged.connect(slotLambda)
-
-    def setFrameStrentch(self, mode):
-        if mode == 0:
-            self.frameLayout.setStretch(0,1)
-            self.frameLayout.setStretch(1,3)
-            self.frameLayout.setStretch(2,3)
-            self.frameLayout.setStretch(3,1)
-            self.frameLayout.setStretch(4,1)
-            self.frameLayout.setStretch(5,1)
-        else:
-            self.frameLayout.setStretch(0,0)
-            self.frameLayout.setStretch(1,0)
-            self.frameLayout.setStretch(2,1)
-            self.frameLayout.setStretch(3,1)
-            self.frameLayout.setStretch(4,1)
-            self.frameLayout.setStretch(5,1)
-    
-    # @QtCore.pyqtSlot(str)
-    def indexChanged_lambda(self, obj):
-        mainObj = obj.arg
-        self.serialPortCombobox.setToolTip(mainObj.serialPortCombobox.currentText())
-
-    def portComboboxClicked(self):
-        self.detectSerialPort()
-
-    def MoveToCenter(self):
-        qr = self.frameGeometry()
-        cp = QDesktopWidget().availableGeometry().center()
-        qr.moveCenter(cp)
-        self.move(qr.topLeft())
-    
-    def changeFunc(self):
-        if self.burning or self.packing or self.erasing:
-            self.hintSignal.emit(tr("Busy"), tr("Busy"))
-            return
-        func = self.FuncCombobox.currentText()
-        if func == tr("Erase"):
-            self.funcSwitch("Erase")
-        elif func == tr("Firmware"):
-            self.funcSwitch("Firmware")
-        self.setWindowSize()
-    
-    def funcSwitch(self, func):
-        # erase mode
-        if func == "Erase":
-            self.fileSelectGroupBox.hide()
-            self.downloadButton.hide()
-            #self.burnPositionCombobox.hide()
-            #self.burnPositionLabel.hide()
-            self.eraseButton.show()
-            self.eraseGroupBox.show()
-            self.eraseStatus.show()
-            self.statusBarStauts.setText("<font color=%s>%s</font>" %("#1aac2d", tr("EraseHint")))
-        # firmware download mode
-        elif func == "Firmware":
-            self.eraseButton.hide()
-            self.eraseGroupBox.hide()
-            self.eraseStatus.hide()
-            #self.burnPositionLabel.show()
-            #self.burnPositionCombobox.show()
-            self.fileSelectGroupBox.show()
-            self.downloadButton.show()
-            self.statusBarStauts.setText("<font color=%s>%s</font>" %("#1aac2d", tr("DownloadHint")))
-
-    def highlightFirmwarePath(self, item, firmware):
-        if firmware:
-            item[3].setProperty("class", "qLineEditHighlight")
-            # item[4].setText("0x00000")
-        else:
-            item[3].setProperty("class", "qLineEditNormal")
-        self.frameWidget.style().unpolish(item[3])
-        self.frameWidget.style().polish(item[3])
-        self.frameWidget.update()
-
-    def eraseModechange(self):
-        if self.eraseModeCombobox.currentText() == tr("Chip erase"):
-            self.eraseAddr.setText("0x00000")
-            self.eraseLen.setText(tr("Full chip"))
-            self.eraseAddr.setDisabled(True)
-            self.eraseLen.setDisabled(True)
-            self.eraseLenUnit.setDisabled(True)
-        else:
-            self.eraseAddr.setText("0x00000")
-            self.eraseLen.setText("0")
-            self.eraseAddr.setDisabled(False)
-            self.eraseLen.setDisabled(False)
-            self.eraseLenUnit.setDisabled(False)
-
-    def erase(self):
-        if self.erasing:
-            if self.erasingCanCancel:
-                hint = "<font color=%s>%s</font>" %("#ff0d0d", tr("Erase Canceling"))
-                self.eraseStatus.setText(hint)
-                self.kflash.kill()
-                return
-            self.errorSignal.emit(tr("Busy"), tr("Busy"))
-            return
-        self.erasing = True
-        self.erasingCanCancel = True
-        self.setEraseButton(True) # show cancel button
-
-        isChipeErase = False
-        if self.eraseModeCombobox.currentText() == tr("Chip erase"):
-            isChipeErase = True
-        if not isChipeErase:
-            try:
-                addr = self.eraseAddr.text()
-                if addr.startswith("0x"):
-                    addr = int(addr, 16)
-                else:
-                    addr = int(addr, 10)
-            except Exception:
-                self.errorSignal.emit(tr("Address error"), tr("Address error"))
-                self.erasing = False
-                return
-            try:
-                length_text = self.eraseLen.text()
-                if length_text.startswith("0x"):
-                    length = int(length_text, 16)
-                else:
-                    length = int(length_text)
-                unit = self.eraseLenUnit.currentText()
-                if unit == "MiB":
-                    length *= 1024 * 1024
-                elif unit == "KiB":
-                    length *= 1024
-            except Exception:
-                self.errorSignal.emit(tr("Length error"), tr("Length error"))
-                self.erasing = False
-                return
-            if addr + length > 16 * 1024 * 1024: # limit 16MiB
-                self.errorSignal.emit(tr("Length error"), tr("Length error") + " (max 16MiB)")
-                self.erasing = False
-                return
-            eraseTimeEstimate = math.ceil(length/65536*0.2) # 0.16s~0.3s every block(64K), full chip ~50s, 0.07s every sector(4K)
-        else: # full chip erase
-            addr = 0
-            length = "all"
-            eraseTimeEstimate = math.ceil(50) # 16MiB Flash full chip erase time
-            length_text = "16"
-            unit = "MiB"
-
-        config, err, msg = self.getSerialSettings()
-        if not config:
-            self.errorSignal.emit(err, msg)
-            self.erasing = False
-            return
-        
-        self.eraseStatus.setText("<font color=%s>%s</font>" %("#0eb40e", tr("Preparing Erase") ))
-        eraseThread = threading.Thread(target=self.eraseProcess, args=(addr, length, config['dev'], config['baud'], config['board'], config['color'], config['slow']))
-        eraseThread.setDaemon(True)
-        eraseThread.start()
-        eraseStatusThread = threading.Thread(target=self.updateEraseStatus, args=(length_text, unit, eraseTimeEstimate))
-        eraseStatusThread.setDaemon(True)
-        eraseStatusThread.start()
-    
-    def setEraseButton(self, cancel):
-        self.eraseButton.setEnabled(True)
-        if cancel:
-            self.eraseButton.setText(tr("Cancel"))
-            self.eraseButton.setProperty("class", "redbutton")
-            self.eraseButton.style().unpolish(self.eraseButton)
-            self.eraseButton.style().polish(self.eraseButton)
-            self.eraseButton.update()
-        else:
-            self.eraseButton.setText(tr("Erase"))
-            self.eraseButton.setProperty("class", "normalbutton")
-            self.eraseButton.style().unpolish(self.eraseButton)
-            self.eraseButton.style().polish(self.eraseButton)
-            self.eraseButton.update()
-    
-    def setEraseStatus(self, msg):
-        self.eraseStatus.setText(msg)
-    
-    def eraseLoadConfig(self):
-        configName = self.eraseLoadConfigCombobox.currentText()
-        config = self.eraseTemplateConfigs
-        if configName in config and config[configName][2] in self.units:
-            self.eraseModeCombobox.setCurrentText(tr("Partial erase"))
-            self.eraseAddr.setDisabled(False)
-            self.eraseLen.setDisabled(False)
-            self.eraseLenUnit.setDisabled(False)
-            self.eraseAddr.setText(config[configName][0])
-            self.eraseLen.setText(config[configName][1])
-            self.eraseLenUnit.setCurrentText(config[configName][2])
-        else:
-            self.errorSignal.emit(tr("Error"), tr("Load erase config file error"))
-
-    def onEraseProgress(self, fileTypeStr, current, total, speedStr):
-        if current >= total:
-            self.erasingCanCancel = False
-            self.eraseButton.setDisabled(True)
-
-    def updateEraseStatus(self, length_text, unit, timeEstimate):
-        timeElapsed = 0
-        while self.erasing:
-            if self.erasingCanCancel:
-                time.sleep(0.1)
-                continue
-            timeLast = timeEstimate - timeElapsed
-            if timeLast < 0:
-                timeLast = 0
-            msg = "<font color=%s>%s</font>" %("#0eb40e", 
-                    tr("Erase")+" {}{}, wait about {} S".format(length_text, unit, timeLast) )
-            self.eraseStatusSignal.emit(msg)
-            timeElapsed += 1
-            time.sleep(1)
-
-    def eraseProcess(self, addr, length, dev, baud, board, color, slow):
-        errMsg = ""
-        success = True
-        try:
-            self.kflash.process(addr=str(addr), length=str(length), terminal=False, dev=dev, baudrate=baud, board=board, file="erase", noansi=not color, slow_mode=slow, callback=self.onEraseProgress)
-        except Exception as e:
-            errMsg = tr2(str(e))
-            if str(e) != "Burn SRAM OK":
-                success = False
-        if success:
-            self.eraseResultSignal.emit(True, errMsg)
-        else:
-            self.eraseResultSignal.emit(False, errMsg)
-
-    def eraseResult(self, success, msg):
-        if success:
-            self.hintSignal.emit(tr("Success"), tr("Erase success"))
-            self.erasing = False # set here for updateEraseStatus
-            self.statusBarStauts.setText("<font color=%s>%s</font>" %("#1aac2d", tr("Erase success")))
-        else:
-            if msg == tr("Cancel"):
-                self.statusBarStauts.setText("<font color=%s>%s</font>" %("#ff1d1d", tr("Erase Canceled")))
-                self.erasing = False # set here for updateEraseStatus
-            else:
-                msg = tr("ErrorSettingHint") + "\n\n"+msg
-                self.errorSignal.emit(tr("Error"), msg)
-                self.erasing = False # set here for updateEraseStatus
-                self.statusBarStauts.setText("<font color=%s>%s</font>" %("#ff1d1d", tr("Erase fail")))
-        self.eraseStatus.setText('')
-        self.setEraseButton(False)
-
-    def fileSelectShow(self, item, name, addr=None, firmware=None, enable=True, loadFirst = False):
-        isKfpkg = False
-        if self.isKfpkg(name):
-            isKfpkg = True 
-        if not item: # add item from param
-            if loadFirst:
-                item = self.fileSelectWidgets[0]
-            else:
-                item = self.addFileSelectionItem()
-            if isKfpkg:
-                self.highlightFirmwarePath(item, False)
-                self.setFileSelectItemLayout(item, True)
-            else:
-                item[4].setText("0x%06x" %(addr))
-                self.setFileSelectItemLayout(item, False)
-                if self.isFileFirmware(name):
-                    self.highlightFirmwarePath(item, True)
-                    item[6] = True
-                else:
-                    self.highlightFirmwarePath(item, False)
-                    item[6] = False
-            item[3].setText(name)
-            item[8].setChecked(enable)
-            return
-
-        if isKfpkg:
-            self.setFileSelectItemLayout(item, True)
-            self.highlightFirmwarePath(item, False)
-            # disable other items
-            for i in self.fileSelectWidgets:
-                i[8].setChecked(False)
-            # only enable this kfpkg
-            item[8].setChecked(True)
-        else:
-            self.setFileSelectItemLayout(item, False)
-            if self.isFileFirmware(name):
-                self.highlightFirmwarePath(item, True)
-                item[4].setText("0x00000")
-            else:
-                self.highlightFirmwarePath(item, False)
-            # disable kfpkg file
-            for i in self.fileSelectWidgets:
-                if self.isKfpkg(i[3].text()):
-                    i[8].setChecked(False)
-            # enable this bin file
-            item[8].setChecked(True)
-            if self.isFileFirmware(name):
-                item[6] = True
-        item[3].setText(name)
-
-    # return: ("bin", [(file path, burn addr, add prefix, enable),...])
-    #      or ("kfpkg", file path)
-    #      or (None, msg)
-    def getBurnFilesInfo(self):
-        files = []
-        fileType = ""
-        for item in self.fileSelectWidgets:
-            path = item[3].text().strip()
-            enable = item[8].isChecked()
-            if self.isFileFirmware(path):
-                item[6] = True
-                self.highlightFirmwarePath(item, True)
-            else:
-                item[6] = False
-                self.highlightFirmwarePath(item, False)
-            try:
-                addr = int(item[4].text(),16)
-                if enable:
-                    if addr%(0x1000) != 0: # 4KiB align
-                        return (None, tr("Adress must align with 4KiB(0x1000)"))
-            except Exception:
-                addr = 0
-            if not enable:
-                continue
-            if path=="" or not os.path.exists(path):
-                    return (None, tr("Line {}: ").format(self.fileSelectWidgets.index(item)+1)+tr("File path error")+":"+path)
-            if self.isKfpkg(path):
-                if fileType == "bin":
-                    return (None, tr("Can not select kfpkg and bin files at the time"))
-                fileType = "kfpkg"
-                if len(files) != 0:
-                    return (None, tr("Only support one kfpkg file"))
-                files = path
-            else:
-                if fileType == "kfpkg":
-                    return (None, tr("Can not select kfpkg and bin files at the time"))
-                fileType = "bin"
-                prefix = item[6]
-                files.append( (path, addr, prefix, enable) )
-        if len(files) == 0:
-            return (None, tr("Please select file"))
-        return (fileType, files)
-
-    class KFPKG():
-        def __init__(self):
-            self.fileInfo = {"version": "0.1.0", "files": []}
-            self.filePath = {}
-            self.burnAddr = []
-        
-        def addFile(self, addr, path, prefix=False):
-            if not os.path.exists(path):
-                raise ValueError(tr("FilePathError"))
-            if addr in self.burnAddr:
-                raise ValueError(tr("Burn dddr duplicate")+":0x%06x" %(addr))
-            f = {}
-            f_name = os.path.split(path)[1]
-            f["address"] = addr
-            f["bin"] = f_name
-            f["sha256Prefix"] = prefix
-            self.fileInfo["files"].append(f)
-            self.filePath[f_name] = path
-            self.burnAddr.append(addr)
-
-        def listDumps(self):
-            kfpkg_json = json.dumps(self.fileInfo, indent=4)
-            return kfpkg_json
-
-        def listDump(self, path):
-            with open(path, "w") as f:
-                f.write(json.dumps(self.fileInfo, indent=4))
-
-        def listLoads(self, kfpkgJson):
-            self.fileInfo = json.loads(kfpkgJson)
-
-        def listLload(self, path):
-            with open(path) as f:
-                self.fileInfo = json.load(f)
-
-        def save(self, path):
-            listName = os.path.join(tempfile.gettempdir(), "kflash_gui_tmp_list.json")
-            self.listDump(listName)
-            try:
-                with zipfile.ZipFile(path, "w") as zip:
-                    for name,path in self.filePath.items():
-                        zip.write(path, arcname=name, compress_type=zipfile.ZIP_DEFLATED)
-                    zip.write(listName, arcname="flash-list.json", compress_type=zipfile.ZIP_DEFLATED)
-                    zip.close()
-            except Exception as e:
-                os.remove(listName)
-                raise e
-            os.remove(listName)
-
-    def checkFilesAddrValid(self, fileType, files):
-        if fileType == "bin":
-            files.sort(key=lambda file:file[1])
-            startAddr = -1
-            fileSize  = 0
-            fileShortLast = ""
-            count = 0
-            for file, addr, firmware, enable in files:
-                if not enable:
-                    continue
-                fileShort = ".../"+"/".join(file.split("/")[-2:])
-                if startAddr + fileSize > addr:
-                    return (False, tr("File address error")+": {} {} 0x{:X}, {} {} {} [0x{:X},0x{:X}]".format(fileShort, tr("start from"), addr, tr("but file"), fileShortLast, tr("address range is"), startAddr, startAddr+fileSize) )
-                fileSize = os.path.getsize(file)
-                startAddr = addr
-                fileShortLast = fileShort
-                count += 1
-            if count == 0:
-                return (False, tr("No file selected"))
-        return (True, "")
-
-    def packFiles(self):
-        if self.packing:
-            self.hintSignal.emit(tr("Busy"), tr("Please wait, packing ..."))
-            return
-        self.packing = True
-
-        fileType, files = self.getBurnFilesInfo()
-        if not fileType:
-            self.errorSignal.emit(tr("Error"), files)
-            self.packing = False
-            return
-        
-        if fileType=="kfpkg":
-            self.errorSignal.emit(tr("Error"), tr("Can not pack kfpkg"))
-            self.packing = False
-            return
-
-        ok, msg = self.checkFilesAddrValid(fileType, files)
-        if not ok:
-            self.errorSignal.emit(tr("Error"), msg)
-            self.packing = False
-            return
-
-        # select saving path
-        if not os.path.exists(self.saveKfpkDir):
-            self.saveKfpkDir = os.getcwd()
-        fileName_choose, filetype = QFileDialog.getSaveFileName(self,  
-                                    tr("Save File"),  
-                                    self.saveKfpkDir,
-                                    "k210 packages (*.kfpkg)")
-        if fileName_choose == "":
-            # self.errorSignal.emit(tr("Error"), tr("File path error"))
-            self.packing = False
-            return
-        if not self.isKfpkg(fileName_choose):
-            fileName_choose += ".kfpkg"
-        self.saveKfpkDir = os.path.split(fileName_choose)[0]
-
-        # pack and save
-        t = threading.Thread(target=self.packFileProccess, args=(files, fileName_choose,))
-        t.setDaemon(True)
-        t.start()
-    
-    def packFileProccess(self, files, fileSaveName):
-        # generate flash-list.json
-        kfpkg = self.KFPKG()
-        try:
-            for path, addr, prefix, enable in files:
-                if enable:
-                    kfpkg.addFile(addr, path, prefix)
-        except Exception as e:
-            self.errorSignal.emit(tr("Error"), tr("Pack kfpkg fail")+":"+str(e))
-            self.packing = False
-            return
-
-        # write kfpkg file
-        try:
-            kfpkg.save(fileSaveName)
-        except Exception as e:
-            self.errorSignal.emit(tr("Error"), tr("Pack kfpkg fail")+":"+str(e))
-            self.packing = False
-            return
-        self.hintSignal.emit(tr("Success"), tr("Save kfpkg success"))
-        self.packing = False
-
-    def getBurnFilesInfoFromKfpkg(self, kfpkg):
-        tempDir = tempfile.gettempdir()
-        listFileName = "flash-list.json"
-        try:
-            zip = zipfile.ZipFile(kfpkg, mode="r")
-            zip.extract(listFileName, tempDir)
-            with open(os.path.join(tempDir, listFileName)) as f:
-                info = json.load(f)
-            filesInfo = {}
-            for fileInfo in info["files"]:
-                filesInfo[fileInfo["bin"]] = [fileInfo["address"], fileInfo["sha256Prefix"]]
-            print(filesInfo, zip.namelist())
-            binFiles = zip.namelist()
-            binFiles.remove(listFileName)
-            for file in binFiles:
-                zip.extract(file, tempDir)
-                self.zipTempFiles.append( (tempDir + "/" + file, filesInfo[file][0], filesInfo[file][1], True ) )
-            zip.close()
-        except Exception as e:
-            return (None, str(e))
-        return (self.zipTempFiles,"")
-
-    def cleanKfpkgTempFiles(self):
-        tempDir = tempfile.gettempdir()
-        try:
-            for file in self.zipTempFiles:
-                os.remove(file[0])
-        except Exception:
-            pass
-        self.zipTempFiles = []
-
-    def mergeBin(self):
-        if self.packing:
-            self.hintSignal.emit(tr("Busy"), tr("Please wait, packing ..."))
-            return
-        self.packing = True
-        fileType, files = self.getBurnFilesInfo()
-        if not fileType:
-            self.errorSignal.emit(tr("Error"), files)
-            self.cleanKfpkgTempFiles()
-            self.packing = False
-            return
-        if fileType == "kfpkg":
-            files, msg = self.getBurnFilesInfoFromKfpkg(files)
-            fileType = "bin"
-            if not files:
-                self.errorSignal.emit(tr("Error"), msg)
-                self.cleanKfpkgTempFiles()
-                self.packing = False
-                return
-        
-        ok, msg = self.checkFilesAddrValid(fileType, files)
-        if not ok:
-            self.errorSignal.emit(tr("Error"), msg)
-            self.packing = False
-            self.cleanKfpkgTempFiles()
-            return
-
-        # select saving path
-        if not os.path.exists(self.saveKfpkDir):
-            self.saveKfpkDir = os.getcwd()
-        fileName_choose, filetype = QFileDialog.getSaveFileName(self,  
-                                    tr("Save File"),  
-                                    self.saveKfpkDir,
-                                    "Binary file (*.bin)")
-        if fileName_choose == "":
-            # self.errorSignal.emit(tr("Error"), tr("File path error"))
-            self.packing = False
-            self.cleanKfpkgTempFiles()
-            return
-        if not fileName_choose.endswith(".bin"):
-            fileName_choose += ".bin"
-        self.saveKfpkDir = os.path.split(fileName_choose)[0]
-
-        # pack and save
-        t = threading.Thread(target=self.mergeBinProccess, args=(files, fileName_choose,))
-        t.setDaemon(True)
-        t.start()
-    
-    def mergeBinProccess(self, files, fileSaveName):
-        self.updateProgressPrintSignal.emit(tr("Merging, please wait ..."))
-        files.sort(key=lambda file:file[1])
-        bin = b''
-        aesFlag = b'\x00'
-        startAddrLast = files[0][1]
-        fileSizeLast  = 0
-        if files[0][2]: # firmware
-            name = files[0][0]
-            size = os.path.getsize(name)
-            f = open(name, "rb")
-            firmware = f.read()
-            f.close()
-
-            bin += aesFlag                # add aes key flag
-            bin += struct.pack('I', size) # add firmware length
-            bin += firmware               # add firmware content
-            sha256Hash = hashlib.sha256(bin).digest()
-            bin += sha256Hash             # add parity
-
-            startAddrLast = 0
-            fileSizeLast = len(bin)
-            files.remove(files[0])
-
-        for file, addr, firmware, enable in files:
-            if not enable:
-                continue
-            fillLen = addr - (startAddrLast + fileSizeLast)
-            if fillLen > 0:               # fill 0xFF
-                fill = bytearray([0xFF for i in range(fillLen)])
-                bin += fill
-            with open(file, "rb") as f:   # add bin file content
-                bin += f.read()
-            startAddrLast = addr
-            fileSizeLast = os.path.getsize(file)
-        with open(fileSaveName, "wb") as f:
-            f.write(bin)
-        self.updateProgressPrintSignal.emit(tr("Save merged bin file success"))
-        self.hintSignal.emit(tr("Success"), tr("Save merged bin file success"))
-        self.packing = False
-        self.cleanKfpkgTempFiles()
-
-    def selectFile(self, item):
-        if self.packing:
-            self.hintSignal.emit(tr("Busy"), tr("Please wait, packing ..."))
-            return
-        index = self.fileSelectWidgets.index(item)
-        oldPath = item[3].text()
-        if oldPath=="" and index > 0:
-            oldPath = self.fileSelectWidgets[index - 1][3].text()
-        if oldPath=="":
-            oldPath = os.getcwd()
-        fileName_choose, filetype = QFileDialog.getOpenFileName(self,  
-                                    tr("SelectFile"),  
-                                    oldPath,
-                                    "All Files (*);;bin Files (*.bin);;k210 packages (*.kfpkg);;kmodel (*.kmodel);;encrypted kmodle(*.smodel)")   # 设置文件扩展名过滤,用双分号间隔
-
-        if fileName_choose == "":
-            return
-        if not self.isFileValid(fileName_choose):
-            self.errorSignal.emit(tr("Error"), tr("File path error"))
-            return
-        self.fileSelectShow(item, fileName_choose)
-
-    def errorHint(self, title, str):
-        QMessageBox.critical(self, title, str)
-    
-    def hint(self, title, str):
-        QMessageBox.information(self, title, str)
-
-    def findSerialPort(self):
-        self.port_list = list(serial.tools.list_ports.comports())
-        return self.port_list
-
-    def portChanged(self):
-        self.serialPortCombobox.setCurrentIndex(0)
-        self.serialPortCombobox.setToolTip(str(self.portList[0]))
-
-    def detectSerialPort(self):
-        if not self.isDetectSerialPort:
-            self.isDetectSerialPort = True
-            t = threading.Thread(target=self.detectSerialPortProcess)
-            t.setDaemon(True)
-            t.start()
-
-    def showCombobox(self):
-        self.serialPortCombobox.showPopup()
-
-    def isKfpkg(self, name):
-        if name.endswith(".kfpkg"):
-            return True
-        return False
-    
-    def isFileFirmware(self, name):
-        isFirmware = False
-        if not os.path.exists(name):
-            return False
-        if name.endswith(".bin"):
-            f = open(name, "rb")
-            start_bytes = f.read(6)
-            f.close()                
-            for flags in self.firmware_start_bytes:
-                if flags in start_bytes:
-                    isFirmware = True
-                    break
-        return isFirmware     
-
-    def isFileValid(self, name):
-        if not os.path.exists(name):
-            return False
-        return True
-
-    def detectSerialPortProcess(self):
-        while(1):
-            portList = self.findSerialPort()
-            if len(portList)>0:
-                currText = self.serialPortCombobox.currentText()
-                self.serialPortCombobox.clear()
-                for i in portList:
-                    showStr = str(i[0])+" ("+str(i[1])+")"
-                    self.serialPortCombobox.addItem(showStr)
-                index = self.serialPortCombobox.findText(currText)
-                if index>=0:
-                    self.serialPortCombobox.setCurrentIndex(index)
-                else:
-                    self.serialPortCombobox.setCurrentIndex(0)
-                break
-            time.sleep(1)
-        self.showSerialComboboxSignal.emit()
-        self.isDetectSerialPort = False
-
-    def programExitSaveParameters(self):
-        paramObj = paremeters_save.ParametersToSave()
-        paramObj.board    = self.boardCombobox.currentIndex()
-        paramObj.burnPosition = self.burnPositionCombobox.currentText()
-        paramObj.baudRate = self.serailBaudrateCombobox.currentIndex()
-        paramObj.skin = self.param.skin
-        paramObj.language = translation.current_lang
-        for item in self.fileSelectWidgets:
-            path = item[3].text()
-            try:
-                addr = int(item[4].text(),16)
-            except Exception:
-                addr = 0
-            fileInfo = (path, addr, item[6], item[8].isChecked())
-            paramObj.files.append(fileInfo)
-        if self.slowModeCombobox.currentIndex()==0:
-            paramObj.slowMode = True
-        else:
-            paramObj.slowMode = False
-        paramObj.save(parameters.configFilePath)
-
-    def programStartGetSavedParameters(self):
-        paramObj = paremeters_save.ParametersToSave()
-        paramObj.load(parameters.configFilePath)
-        translation.setLanguage(paramObj.language)
-        self.param = paramObj
-
-    def updateFrameParams(self):
-        pathLen = len(self.param.files)
-        if pathLen != 0:
-            if len(self.param.files[0]) != 4: # [ (path, addr, prefix, enable), ...]
-                return
-            count = 0
-            for path, addr, firmware, enable  in self.param.files:
-                firmware = None if (not firmware) else True
-                if count == 0:
-                    self.fileSelectShow(None, path, addr, firmware, enable=enable, loadFirst = True)
-                else:
-                    self.fileSelectShow(None, path, addr, firmware, enable=enable, loadFirst = False)
-                count += 1
-        if type(self.param.board) == str:
-            self.param.board = 0
-        self.boardCombobox.setCurrentIndex(self.param.board)
-        self.burnPositionCombobox.setCurrentText(self.param.burnPosition)
-        self.serailBaudrateCombobox.setCurrentIndex(self.param.baudRate)
-        if self.param.slowMode:
-            self.slowModeCombobox.setCurrentIndex(0)
-        else:
-            self.slowModeCombobox.setCurrentIndex(1)
-
-    def closeEvent(self, event):
-        try:
-            self.programExitSaveParameters()
-            self.kflash.kill()
-            self.kflash.checkKillExit()
-        except Exception:
-            pass
-        finally:
-            event.accept()
-
-    def langChange(self):
-        if self.param.language == translation.language_en:
-            translation.setLanguage(translation.language_zh)
-            lang = tr("Chinese language")
-        else:
-            translation.setLanguage(translation.language_en)
-            lang = tr("English language")
-        
-        self.hint(tr("Hint"), tr("Language Changed to ") + lang + "\n"+ tr("Reboot to take effect"))
-        self.frameWidget.style().unpolish(self.downloadButton)
-        self.frameWidget.style().polish(self.downloadButton)
-        self.frameWidget.update()
-
-    def skinChange(self):
-        if self.param.skin == 1: # light
-            file = open(self.DataPath + '/assets/qss/style-dark.qss', "r")
-            self.param.skin = 2
-        else: # elif self.param.skin == 2: # dark
-            file = open(self.DataPath + '/assets/qss/style.qss', "r")
-            self.param.skin = 1
-        self.app.setStyleSheet(file.read().replace("$DataPath", self.DataPath))
-        file.close()
-
-    def showAbout(self):
-        QMessageBox.information(self, tr("About"),"<h1 style='color:#f75a5a';margin=10px;>"+parameters.appName+
-                                '</h1><br><b style="color:#08c7a1;margin = 5px;">V'+str(helpAbout.versionMajor)+"."+
-                                str(helpAbout.versionMinor)+"."+str(helpAbout.versionDev)+
-                                "</b><br><br>"+helpAbout.date+"<br><br>"+tr("help str")+"<br><br>"+helpAbout.strAbout())
-
-    def autoUpdateDetect(self):
-        auto = autoUpdate.AutoUpdate()
-        if auto.detectNewVersion():
-            self.hintSignal.emit(tr("Upgrade"), tr("Upgrade available, please download new release in release page"))
-            auto.OpenBrowser()
-
-    def openDevManagement(self):
-        os.system('start devmgmt.msc')
-
-    def updateProgress(self, fileTypeStr, current, total, speedStr):
-        currBurnPos = self.burnPositionCombobox.currentText()
-        if currBurnPos == tr("SRAM") or currBurnPos == tr_en("SRAM"):
-            fileTypeStr = tr("ToSRAM")
-        percent = current/float(total)*100
-        hint = "<font color=%s>%s %s:</font>   <font color=%s> %.2f%%</font>   <font color=%s> %s</font>" %("#ff7575", tr("Downloading"), fileTypeStr, "#2985ff", percent, "#1aac2d", speedStr)
-        self.progressHint.setText(hint)
-        self.progressbar.setValue(int(percent))
-    
-    def updateProgressPrint(self, str):
-        self.statusBarStauts.setText(str)
-
-    def kflash_py_printCallback(self, *args, **kwargs):
-        # end = kwargs.pop('end', "\n")
-        msg = ""
-        for i in args:
-            msg += str(i)
-        msg.replace("\n", " ")
-        self.updateProgressPrintSignal.emit(msg)
-
-    def progress(self, fileTypeStr, current, total, speedStr):
-        self.updateProgressSignal.emit(fileTypeStr, current, total, speedStr)
-
-    def getSerialSettings(self):
-        color = False
-        board = "dan"
-        boardText = self.boardCombobox.currentText()
-        board = self.boardsInfo[boardText]
-
-        sram = False
-        if self.burnPositionCombobox.currentText()==tr("SRAM") or \
-            self.burnPositionCombobox.currentText()==tr_en("SRAM"):
-            sram = True
-        try:
-            baud = int(self.serailBaudrateCombobox.currentText())
-        except Exception:
-            return (None, tr("Error"), tr("BaudrateError"))
-            
-        dev = ""
-        try:
-            dev  = self.serialPortCombobox.currentText().split()[0]
-        except Exception:
-            pass
-        if dev=="":
-            return (None, tr("Error"), tr("PleaseSelectSerialPort"))
-        slow = self.slowModeCombobox.currentIndex()==0
-        return ({
-            "color": color,
-            "board": board,
-            "sram": sram,
-            "dev": dev,
-            "slow": slow,
-            "baud": baud
-        },None, None)
-
-    def download(self):
-        if self.packing:
-            self.hintSignal.emit(tr("Busy"), tr("Please wait, packing ..."))
-            return
-        if self.burning:
-            self.terminateBurn()
-            return
-        fileType, filesInfo = self.getBurnFilesInfo()
-        if not fileType or not filesInfo:
-            self.errorSignal.emit(tr("Error"), filesInfo)
-            return
-        ok, msg = self.checkFilesAddrValid(fileType, filesInfo)
-        if not ok:
-            self.errorSignal.emit(tr("Error"), msg)
-            return
-
-        self.burning = True
-        # if not self.checkFileName(filename):
-        #     self.errorSignal.emit(tr("Error"), tr("FilePathError"))
-        #     self.burning = False
-        #     return
-        
-        config, err, msg = self.getSerialSettings()
-        if not config:
-            self.errorSignal.emit(err, msg)
-            self.burning = False
-            return
-
-        # hide setting widgets
-        self.setFrameStrentch(1)
-        self.settingWidget.hide()
-        self.progressbar.setValue(0)
-        self.progressbar.setGeometry(10, 0, self.downloadWidget.width()-25, 40)
-        self.progressbarRootWidget.show()
-        self.progressHint.show()
-        self.downloadButton.setText(tr("Cancel"))
-        self.downloadButton.setProperty("class", "redbutton")
-        self.downloadButton.style().unpolish(self.downloadButton)
-        self.downloadButton.style().polish(self.downloadButton)
-        self.downloadButton.update()
-        self.statusBarStauts.setText("<font color=%s>%s ...</font>" %("#1aac2d", tr("Downloading")))
-        hint = "<font color=%s>%s</font>" %("#ff0d0d", tr("DownloadStart"))
-        self.progressHint.setText(hint)
-        # download
-        burnThread = threading.Thread(target=self.flashBurnProcess, args=(config['dev'], config['baud'], config['board'], config['sram'], fileType, filesInfo, self.progress, config['color'], config['slow']))
-        burnThread.setDaemon(True)
-        burnThread.start()
-
-    def flashBurnProcess(self, dev, baud, board, sram, fileType, files, callback, color, slow):
-        success = True
-        errMsg = ""
-        tmpFile = ""
-
-        if fileType == "kfpkg":
-            if sram:
-                errMsg = tr("only support bin file when Download to SRAM")
-                success = False
-            else:
-                filename = files
-        else:#generate kfpkg
-            if sram:
-                filename = files[0][0]
-            else:
-                tmpFile = os.path.join(tempfile.gettempdir(), "kflash_gui_tmp.kfpkg")
-                kfpkg = self.KFPKG()
-                try:
-                    for path, addr, prefix, enable in files:
-                        if enable:
-                            kfpkg.addFile(addr, path, prefix)
-                    kfpkg.save(tmpFile)
-                    filename = os.path.abspath(tmpFile)
-                except Exception as e:
-                    try:
-                        os.remove(tmpFile)
-                    except Exception:
-                        print("can not delete temp file:", tmpFile)
-                    errMsg = tr("Pack kfpkg fail")+":"+str(e)
-                    success = False
-        if success:
-            try:
-                self.kflash.process(terminal=False, dev=dev, baudrate=baud, board=board, sram = sram, file=filename, callback=callback, noansi=not color, slow_mode=slow)
-            except Exception as e:
-                errMsg = tr2(str(e))
-                if str(e) != "Burn SRAM OK":
-                    success = False
-            if tmpFile != "" and filename:
-                try:
-                    os.remove(filename)
-                except Exception:
-                    print("Can not delete tmp file:", filename)
-        if success:
-            self.downloadResultSignal.emit(True, errMsg)
-        else:
-            self.downloadResultSignal.emit(False, errMsg)
-        self.burning = False
-            
-
-    def downloadResult(self, success, msg):
-        if success:
-            self.hintSignal.emit(tr("Success"), tr("DownloadSuccess"))
-            self.statusBarStauts.setText("<font color=%s>%s</font>" %("#1aac2d", tr("DownloadSuccess")))
-        else:
-            if msg == tr("Cancel"):
-                self.statusBarStauts.setText("<font color=%s>%s</font>" %("#ff1d1d", tr("DownloadCanceled")))
-            else:
-                msg = tr("ErrorSettingHint") + "\n\n"+msg
-                self.errorSignal.emit(tr("Error"), msg)
-                self.statusBarStauts.setText("<font color=%s>%s</font>" %("#ff1d1d", tr("DownloadFail")))
-            self.progressHint.setText("")
-        self.downloadButton.setText(tr("Download"))
-        self.downloadButton.setProperty("class", "normalbutton")
-        self.downloadButton.style().unpolish(self.downloadButton)
-        self.downloadButton.style().polish(self.downloadButton)
-        self.downloadButton.update()
-        self.setFrameStrentch(0)
-        self.progressbarRootWidget.hide()
-        self.progressHint.hide()
-        self.settingWidget.show()
-        self.burning = False
-
-    def terminateBurn(self):
-        hint = "<font color=%s>%s</font>" %("#ff0d0d", tr("DownloadCanceling"))
-        self.progressHint.setText(hint)
-        self.kflash.kill()
-
-
-def main():
-    app = QApplication(sys.argv)
-    mainWindow = MainWindow(app)
-    print("data path:"+mainWindow.DataPath)
-    print(mainWindow.param.skin)
-    if(mainWindow.param.skin == 1) :# light skin
-        file = open(mainWindow.DataPath+'/assets/qss/style.qss',"r")
-    else: #elif mainWindow.param == 2: # dark skin
-        file = open(mainWindow.DataPath + '/assets/qss/style-dark.qss', "r")
-    qss = file.read().replace("$DataPath",mainWindow.DataPath)
-    file.close()
-    app.setStyleSheet(qss)
-    mainWindow.detectSerialPort()
-    t = threading.Thread(target=mainWindow.autoUpdateDetect)
-    t.setDaemon(True)
-    t.start()
-    sys.exit(app.exec_())
-
-if __name__ == '__main__':
-    main()
-

BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/arrow-down.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/chinese.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/close.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/close2.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/erase.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/erase_zh.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/help-white.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/help.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/installer_background_mac.png


+ 0 - 234
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/installer_background_mac.svg

@@ -1,234 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="800"
-   height="400"
-   viewBox="0 0 211.66667 105.83334"
-   version="1.1"
-   id="svg8"
-   inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
-   sodipodi:docname="installer_background_mac.svg">
-  <defs
-     id="defs2" />
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="0.69999999"
-     inkscape:cx="-76.990437"
-     inkscape:cy="35.955042"
-     inkscape:document-units="mm"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     inkscape:window-width="1920"
-     inkscape:window-height="1016"
-     inkscape:window-x="0"
-     inkscape:window-y="27"
-     inkscape:window-maximized="1"
-     units="px"
-     fit-margin-top="0"
-     fit-margin-left="0"
-     fit-margin-right="0"
-     fit-margin-bottom="0" />
-  <metadata
-     id="metadata5">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer"
-     id="layer1"
-     transform="translate(-25.135169,-83.786962)">
-    <text
-       xml:space="preserve"
-       style="font-style:normal;font-weight:normal;font-size:10.58333302px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
-       x="60.93745"
-       y="-33.345135"
-       id="text817"><tspan
-         sodipodi:role="line"
-         id="tspan815"
-         x="60.93745"
-         y="-23.981365"
-         style="stroke-width:0.26458332" /></text>
-    <g
-       id="g939"
-       transform="matrix(0.20286165,0,0,0.20286165,29.78644,86.702849)">
-      <g
-         id="g846">
-        <path
-           id="path832"
-           d="M 59.2,64 H 16.6 c -3.4,0 -6.1,-2.7 -6.1,-6.1 V 15.3 c 0,-3.4 2.7,-6.1 6.1,-6.1 h 42.6 c 3.4,0 6.1,2.7 6.1,6.1 V 57.9 C 65.2,61.2 62.5,64 59.2,64 Z"
-           class="st0"
-           inkscape:connector-curvature="0"
-           style="fill:#9b2129" />
-        <g
-           id="g836">
-          <path
-             id="path834"
-             d="M 58.8,9.2 H 16.9 c -3.5,0 -6.4,2.9 -6.4,6.4 v 41.9 c 0,3.5 2.9,6.4 6.4,6.4 h 41.9 c 3.5,0 6.4,-2.9 6.4,-6.4 V 15.6 c 0,-3.5 -2.9,-6.4 -6.4,-6.4 z m 3.4,48.3 c 0,1.9 -1.5,3.4 -3.4,3.4 H 16.9 c -1.9,0 -3.4,-1.5 -3.4,-3.4 V 15.6 c 0,-1.9 1.5,-3.4 3.4,-3.4 h 41.9 c 1.9,0 3.4,1.5 3.4,3.4 z"
-             class="st0"
-             inkscape:connector-curvature="0"
-             style="fill:#9b2129" />
-        </g>
-        <g
-           id="g840">
-          <polygon
-             id="polygon838"
-             points="42.9,32.4 28.4,32.4 28.4,23.8 51.5,23.8 51.5,15.4 32.7,15.4 20.1,28.1 32.7,40.8 47.3,40.8 47.3,49.4 24.2,49.4 24.2,57.7 43,57.7 55.6,45.1 55.7,45.1 55.7,45 55.6,45.1 "
-             class="st1"
-             style="fill:#ffffff" />
-        </g>
-        <g
-           id="g844">
-          <path
-             id="path842"
-             d="m 23.9,18.3 c 0,-2.1 -1.7,-3.9 -3.9,-3.9 -2.1,0 -3.9,1.7 -3.9,3.9 0,2.1 1.7,3.9 3.9,3.9 2.2,0 3.9,-1.8 3.9,-3.9 z m -5.7,0 c 0,-1 0.8,-1.9 1.9,-1.9 1,0 1.9,0.8 1.9,1.9 0,1.1 -0.8,1.9 -1.9,1.9 -1.1,0 -1.9,-0.9 -1.9,-1.9 z"
-             class="st1"
-             inkscape:connector-curvature="0"
-             style="fill:#ffffff" />
-        </g>
-      </g>
-      <g
-         id="g896">
-        <g
-           id="g850">
-          <polygon
-             id="polygon848"
-             points="97.5,51.2 97.5,60.7 118.9,60.7 133.4,46.3 133.4,46.2 133.3,46.3 118.8,31.8 102.2,31.8 102.2,22 128.6,22 128.6,12.4 107.2,12.4 92.7,26.9 92.7,26.8 92.7,26.9 107.2,41.3 123.9,41.3 123.9,51.2 "
-             class="st0"
-             style="fill:#9b2129" />
-        </g>
-        <g
-           id="g854">
-          <polygon
-             id="polygon852"
-             points="159.1,26.7 159.1,60.7 168.6,60.7 168.6,22 190.3,22 190.3,31.8 171,31.8 171,41.3 185.5,41.3 199.8,27 199.8,26.7 185.5,12.4 173.4,12.4 "
-             class="st0"
-             style="fill:#9b2129" />
-        </g>
-        <g
-           id="g864">
-          <g
-             id="g858">
-            <rect
-               id="rect856"
-               height="9.5"
-               width="24"
-               class="st0"
-               y="31.799999"
-               x="218"
-               style="fill:#9b2129" />
-          </g>
-          <g
-             id="g862">
-            <polygon
-               id="polygon860"
-               points="220.5,12.4 206.1,26.8 206.1,46.3 220.5,60.7 242.1,60.7 242.1,51.2 215.7,51.2 215.7,22 242.1,22 242.1,12.4 "
-               class="st0"
-               style="fill:#9b2129" />
-          </g>
-        </g>
-        <g
-           id="g874">
-          <g
-             id="g868">
-            <rect
-               id="rect866"
-               height="9.5"
-               width="24"
-               class="st0"
-               y="31.799999"
-               x="263.5"
-               style="fill:#9b2129" />
-          </g>
-          <g
-             id="g872">
-            <polygon
-               id="polygon870"
-               points="266,12.4 251.6,26.8 251.6,46.3 266,60.7 287.5,60.7 287.5,51.2 261.1,51.2 261.1,21.9 287.5,21.9 287.5,12.4 "
-               class="st0"
-               style="fill:#9b2129" />
-          </g>
-        </g>
-        <g
-           id="g884">
-          <g
-             id="g878">
-            <rect
-               id="rect876"
-               height="48.299999"
-               width="9.5"
-               class="st0"
-               y="12.4"
-               x="297"
-               style="fill:#9b2129" />
-          </g>
-          <g
-             id="g882">
-            <polygon
-               id="polygon880"
-               points="323.7,12.4 308.9,12.4 308.9,21.9 328.2,21.9 328.2,51.2 308.9,51.2 308.9,60.7 323.7,60.7 337.7,46.7 337.7,26.4 "
-               class="st0"
-               style="fill:#9b2129" />
-          </g>
-        </g>
-        <g
-           id="g894">
-          <g
-             id="g888">
-            <rect
-               id="rect886"
-               height="9.5"
-               width="9.5"
-               class="st0"
-               y="12.4"
-               x="140"
-               style="fill:#9b2129" />
-          </g>
-          <g
-             id="g892">
-            <rect
-               id="rect890"
-               height="28.9"
-               width="9.5"
-               class="st0"
-               y="31.799999"
-               x="140"
-               style="fill:#9b2129" />
-          </g>
-        </g>
-      </g>
-    </g>
-    <path
-       style="fill:none;stroke:#000000;stroke-width:0.3;stroke-miterlimit:4;stroke-dasharray:0.3,0.3;stroke-dashoffset:0;stroke-opacity:1"
-       inkscape:connector-curvature="0"
-       d="m 147.36145,140.67224 q 0,0.2455 -0.22231,0.42084 l -8.53646,6.20742 q -0.35569,0.2455 -0.77806,0.10527 -0.42238,-0.15782 -0.42238,-0.50851 v -3.92786 h -27.74348 q -0.31123,0 -0.5113,-0.15782 -0.20007,-0.15781 -0.20007,-0.4033 v -3.36674 q 0,-0.24549 0.20007,-0.4033 0.20007,-0.15782 0.5113,-0.15782 h 27.74348 v -3.92784 q 0,-0.36825 0.42238,-0.50852 0.42237,-0.14029 0.77806,0.0877 l 8.53646,6.13727 q 0.22231,0.17535 0.22231,0.4033 z"
-       p-id="2299"
-       id="path906" />
-  </g>
-  <style
-     id="style830"
-     type="text/css">
-	.st0{fill:#9B2129;}
-	.st1{fill:#FFFFFF;}
-</style>
-</svg>

BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/lang-white.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/lang.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/logo.icns


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/logo.ico


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/logo.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/logo2.png


+ 0 - 371
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/qss/style-dark.qss

@@ -1,371 +0,0 @@
-
-MainWindow {
-    background-color:#212121;
-    color:#bcbcbd;
-    min-width:100px;
-}
-QWidget {
-    background-color:#212121;
-}
-QMessageBox {
-    background-color:#212121;
-}
-QWidget {
-    color:#bcbcbd;
-}
-.settingWidget {
-
-}
-.progressbarWidget{
-    
-}
-.fileSelectWidget{
-
-}
-.downloadWidget{
-    padding: 10px, 10px, 20px, 10px;
-}
-#funcSelect {
-    margin-right: 15px;
-    width: 60px;
-}
-#funcSelect QAbstractItemView {
-    min-width:60px;
-}
-#menuItem {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    background-color: #212121;
-}
-.menuItem1 {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/arrow-left.png")
-}
-.menuItem1:hover {
-    border-image: url("$DataPath/assets/arrow-left-white.png")
-}
-.menuItem2 {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/skin.png")
-}
-.menuItem2:hover {
-    border-image: url("$DataPath/assets/skin-white.png")
-}
-.menuItemLang {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/lang.png")
-}
-.menuItemLang:hover {
-    border-image: url("$DataPath/assets/lang-white.png")
-}
-.menuItem3 {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/help.png")
-}
-.menuItem3:hover {
-    border-image: url("$DataPath/assets/help-white.png")
-}
-.menuItem4 {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/arrow-right.png")
-}
-.menuItem4:hover {
-    border-image: url("$DataPath/assets/arrow-right-white.png")
-}
-.menuItem5 {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/wave.png")
-}
-.menuItem5:hover {
-    border-image: url("$DataPath/assets/wave-white.png")
-}
-
-.remove_file_selection {
-    min-height:32px;
-    height:32px;
-    min-width:32px;
-    width:32px;
-    background-color: #212121;
-    border-image: url("$DataPath/assets/close.png")
-}
-
-.remove_file_selection:hover {
-    background-color: #212121;
-    border-image: url("$DataPath/assets/close2.png")
-}
-
-
-.settingWidget QComboBox{
-    width:200px;
-}
-QComboBox {
-    border: 1px solid #272727;
-    border-radius: 2px;
-    padding: 1px 18px 1px 10px;
-    min-height:35px;
-}
-
-QComboBox:editable {
-    background: #3a3a3a;
-}
-
-QComboBox:disabled {
-    color:#696969;
-}
-
-QComboBox:!editable, QComboBox::drop-down:editable {
-     background: #3a3a3a;
-}
-
-/* QComboBox gets the "on" state when the popup is open */
-QComboBox:!editable:on, QComboBox::drop-down:editable:on {
-    background: #3a3a3a;
-}
-
-QComboBox:on { /* shift the text when the popup opens */
-    padding-top: 2px;
-    padding-left: 2px;
-}
-
-QComboBox::drop-down {
-    subcontrol-origin: padding;
-    subcontrol-position: top right;
-    width: 18px;
-
-    border-left-width: 1px;
-    border-left-color: #524a4a;
-    border-left-style: solid; /* just a single line */
-    border-top-right-radius: 3px; /* same radius as the QComboBox */
-    border-bottom-right-radius: 3px;
-}
-
-QComboBox::down-arrow {
-    image:url($DataPath/assets/arrow-down.png);
-}
-
-QComboBox::down-arrow:on { /* shift the arrow when popup is open */
-    top: 1px;
-    left: 1px;
-}
-QComboBox::hover{
-    border: 1px solid #26a2ff;
-}
-QComboBox QAbstractItemView {
-    border: 2px solid #3a3a3a;
-    selection-background-color: #26a2ff;
-    selection-color:#bcbcbd;
-    min-width:400px;
-}
-QComboBox QAbstractItemView::item{
-    min-height:3em;
-}
-
-
-
-QGroupBox {
-    border: 1px solid #3a3a3a;
-    border-radius: 3px;
-    padding:0px;
-    margin-top: 2ex; /* leave space at the top for the title */
-}
-
-QGroupBox::title {
-    subcontrol-origin: margin;
-    subcontrol-position: top left; /* position at the top center */
-    padding: 0px 1px;
-}
-
-
-QPushButton {
-    font-family:Tahoma,Optima,"Trebuchet MS";
-    border-radius: 5px;
-    background-color: #0f88eb;
-    min-width: 80px;
-    height:40px;
-    color:white;
-}
-
-QPushButton:hover {
-    background-color: #0074d4;
-    border-radius: 5px;
-    min-height:25px;
-    color:white;
-}
-QPushButton:pressed {
-    background-color: #4946ff;
-    color: white;
-}
-QPushButton:disabled {
-    color: #c7c7c7;
-}
-
-.redbutton {
-    font-family:Tahoma,Optima,"Trebuchet MS";
-    border: 1px solid #ff3232;
-    border-radius: 5px;
-    background-color: #f84747;
-    height:40px;
-    min-width: 80px;
-    color: white;
-}
-
-.redbutton:hover {
-    background-color: #ff1717;
-    border: 1px solid #ff1717;
-    border-radius: 5px;
-    min-height:25px;
-    color:white;
-}
-.redbutton:pressed {
-    background-color: #ff4d07;
-    color: white;
-}
-
-
-.normalbutton {
-    font-family:Tahoma,Optima,"Trebuchet MS";
-    border-radius: 5px;
-    background-color: #0f88eb;
-    min-width: 80px;
-    height:40px;
-    color:white;
-}
-
-.normalbutton:hover {
-    background-color: #0074d4;
-    border-radius: 5px;
-    min-height:25px;
-    color:white;
-}
-.normalbutton:pressed {
-    background-color: #4946ff;
-    color: white;
-}
-
-
-QPushButton:flat {
-    border: none; /* no border for a flat push button */
-}
-
-QPushButton:default {
-    border-color: navy; /* make the default button prominent */
-}
-
-
-QTextEdit, QListView {
-    background-color: #3a3a3a;
-    border: 1px solid #3a3a3a;
-    border-radius: 3px;
-    background-attachment: scroll;
-}
-
-QLineEdit {
-    border: 1px solid #3a3a3a;
-    border-radius: 5px;
-    padding: 0 8px;
-    background: #3a3a3a;
-    selection-background-color: #323f77;
-    height: 40px;
-}
-
-QLineEdit:disabled {
-    color:#696969;
-}
-
-.qLineEditNormal {
-    border: 1px solid #3a3a3a;
-    border-radius: 5px;
-    padding: 0 8px;
-    background: #3a3a3a;
-    selection-background-color: #373277;
-    height: 40px;
-}
-
-.qLineEditHighlight {
-    border: 1px solid #3a3a3a;
-    border-radius: 5px;
-    padding: 0 8px;
-    background: #00143a;
-    selection-background-color: #373277;
-    height: 40px;
-}
-
-QCheckBox {
-}
-
-QCheckBox::indicator {
-    width: 13px;
-    height: 13px;
-}
-
-QCheckBox::indicator:unchecked {
-    background-color: #6b6a6a;
-}
-
-QCheckBox::indicator:checked {
-    background-color: #008000;
-}
-
-QRadioButton::indicator {
-    width: 13px;
-    height: 13px;
-}
-
-QRadioButton::indicator:unchecked {
-    border-radius:6px;
-    background-color: #6b6a6a;
-}
-
-QRadioButton::indicator::checked {
-    border-radius:6px;
-    background-color: #7777cc;
-}
-
- 
-QProgressBar {
-   border: none;
-   border-radius: 5px;
-   background-color: #3f3f3f;
-   text-align: center;
-   width: 20px;
-}
-
-QProgressBar::chunk {
-    border: none;
-    background-color: #008000;
-}
- 

+ 0 - 384
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/qss/style.qss

@@ -1,384 +0,0 @@
-
-MainWindow {
-    background-color:white;
-    color: #464444;
-    min-width:100px;
-}
-QWidget {
-    background-color:white;
-}
-QMessageBox {
-    background-color:white;
-}
-QWidget {
-    color:#464444;
-}
-.settingWidget {
-    
-}
-.progressbarWidget{
-
-}
-.fileSelectWidget{
-    
-}
-.downloadWidget{
-    padding: 10px, 10px, 20px, 10px;
-}
-
-#funcSelect {
-    margin-right: 15px;
-    width: 60px;
-}
-#funcSelect QAbstractItemView {
-    min-width:60px;
-}
-
-#menuItem {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    background-color: white;
-}
-#menuItem:hover {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    background-color: #0f88eb;
-}
-.menuItemLang {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/lang.png")
-}
-.menuItemLang:hover {
-    border-image: url("$DataPath/assets/lang-white.png")
-}
-.menuItem1 {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/arrow-left.png")
-}
-.menuItem1:hover {
-    border-image: url("$DataPath/assets/arrow-left-white.png")
-}
-.menuItem2 {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/skin.png")
-}
-.menuItem2:hover {
-    border-image: url("$DataPath/assets/skin-white.png")
-}
-.menuItem3 {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/help.png")
-}
-.menuItem3:hover {
-    border-image: url("$DataPath/assets/help-white.png")
-}
-.menuItem4 {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/arrow-right.png")
-}
-.menuItem4:hover {
-    border-image: url("$DataPath/assets/arrow-right-white.png")
-}
-.menuItem5 {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    border-radius: 5px;
-    margin-right:10px;
-    border-image: url("$DataPath/assets/wave.png")
-}
-.menuItem5:hover {
-    border-image: url("$DataPath/assets/wave-white.png")
-}
-
-.remove_file_selection {
-    min-height:27px;
-    height:27px;
-    min-width:27px;
-    width:27px;
-    background-color: white;
-    border-image: url("$DataPath/assets/close.png")
-}
-
-.remove_file_selection:hover {
-    border-image: url("$DataPath/assets/close2.png");
-    background-color: white;
-}
-
-.settingWidget QComboBox{
-    width:200px;
-}
-QComboBox {
-    border: 1px solid #ff8585;
-    border-radius: 2px;
-    padding: 1px 18px 1px 3px;
-    min-height:35px;
-}
-
-
-QComboBox:disabled {
-    color:#b4b4b4;
-}
-
-QComboBox:editable {
-    background: white;
-}
-
-QComboBox:!editable, QComboBox::drop-down:editable {
-     background: white;
-}
-
-/* QComboBox gets the "on" state when the popup is open */
-QComboBox:!editable:on, QComboBox::drop-down:editable:on {
-    background: white;
-}
-
-QComboBox:on { /* shift the text when the popup opens */
-    padding-top: 2px;
-    padding-left: 2px;
-}
-
-QComboBox::drop-down {
-    subcontrol-origin: padding;
-    subcontrol-position: top right;
-    width: 18px;
-
-    border-left-width: 1px;
-    border-left-color: #ff8585;
-    border-left-style: solid; /* just a single line */
-    border-top-right-radius: 3px; /* same radius as the QComboBox */
-    border-bottom-right-radius: 3px;
-}
-
-QComboBox::down-arrow {
-    image:url($DataPath/assets/arrow-down.png);
-}
-
-QComboBox::down-arrow:on { /* shift the arrow when popup is open */
-    top: 1px;
-    left: 1px;
-}
-QComboBox::hover{
-    border: 1px solid #26a2ff;
-}
-QComboBox QAbstractItemView {
-    border: 2px solid white;
-    selection-background-color: #26a2ff;
-    selection-color:white;
-    min-width:400px;
-}
-QComboBox QAbstractItemView::item{
-    min-height:3em;
-}
-
-
-
-QGroupBox {
-    border: 1px solid #ffc3c3;
-    border-radius: 3px;
-    padding:0px;
-    margin-top: 2ex; /* leave space at the top for the title */
-}
-
-QGroupBox::title {
-    subcontrol-origin: margin;
-    subcontrol-position: top left; /* position at the top center */
-    padding: 0px 1px;
-}
-
-
-QPushButton {
-    font-family:Tahoma,Optima,"Trebuchet MS";
-    border-radius: 5px;
-    border: 1px solid #1590f5;
-    background-color: #0f88eb;
-    min-width: 80px;
-    height:40px;
-    color:white;
-}
-
-QPushButton:hover {
-    border: 1px solid #ff7575;
-    background-color: #ff6161;
-    border-radius: 5px;
-    min-height:25px;
-    color:white;
-}
-QPushButton:pressed {
-    background-color: #4946ff;
-    color: white;
-}
-QPushButton:disabled {
-    color: #c7c7c7;
-}
-
-.redbutton {
-    font-family:Tahoma,Optima,"Trebuchet MS";
-    border: 1px solid #ff3232;
-    border-radius: 5px;
-    background-color: #f84747;
-    height:40px;
-    min-width: 80px;
-    color: white;
-}
-
-.redbutton:hover {
-    background-color: #ff1717;
-    border: 1px solid #ff1717;
-    border-radius: 5px;
-    min-height:25px;
-    color:white;
-}
-.redbutton:pressed {
-    background-color: #ff4d07;
-    color: white;
-}
-
-
-.normalbutton {
-    font-family:Tahoma,Optima,"Trebuchet MS";
-    border-radius: 5px;
-    background-color: #0f88eb;
-    min-width: 80px;
-    height:40px;
-    color:white;
-}
-
-.normalbutton:hover {
-    background-color: #0074d4;
-    border-radius: 5px;
-    min-height:25px;
-    color:white;
-}
-.normalbutton:pressed {
-    background-color: #4946ff;
-    color: white;
-}
-
-QPushButton:flat {
-    border: none; /* no border for a flat push button */
-}
-
-QPushButton:default {
-    border-color: navy; /* make the default button prominent */
-}
-
-
-QTextEdit, QListView {
-    background-color: white;
-    border: 1px solid #ff8585;
-    border-radius: 3px;
-    background-attachment: scroll;
-}
-
-QLineEdit {
-    border: 1px solid #ff8585;
-    border-radius: 5px;
-    padding: 0 8px;
-    background: white;
-    selection-background-color: #ff8888;
-    height: 40px;
-}
-
-
-QLineEdit:disabled {
-    color:#b4b4b4;
-}
-
-.qLineEditNormal {
-    border: 1px solid #ff8585;
-    border-radius: 5px;
-    padding: 0 8px;
-    background: white;
-    selection-background-color: #ff8888;
-    height: 40px;
-}
-
-.qLineEditHighlight {
-    border: 1px solid #ff8585;
-    border-radius: 5px;
-    padding: 0 8px;
-    background: #fcdfdf;
-    selection-background-color: #ff8888;
-    height: 40px;
-}
-
-QCheckBox {
-}
-
-QCheckBox::indicator {
-    width: 13px;
-    height: 13px;
-}
-
-QCheckBox::indicator:unchecked {
-    background-color: #cecaca;
-}
-
-QCheckBox::indicator:checked {
-    background-color: #008000;
-}
-
-QRadioButton::indicator {
-    width: 13px;
-    height: 13px;
-}
-
-QRadioButton::indicator:unchecked {
-    border-radius:6px;
-    background-color: #cecaca;
-}
-
-QRadioButton::indicator::checked {
-    border-radius:6px;
-    background-color: #7777cc;
-}
-
-QProgressBar {
-    color: white;
-    border: none;
-    border-radius: 5px;
-    background-color: #b689ff;
-    text-align: center;
-    width: 20px;
-}
-
-QProgressBar::chunk {
-    border: none;
-    background-color: #10ac10;
-}
-

BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_1.2.1.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_1.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_2.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_download.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_download_en.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_en.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_file.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/screenshot_kflash_gui_v1.5.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/skin-white.png


BIN
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/skin.png


+ 0 - 98
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/translation/translation_en.json

@@ -1,98 +0,0 @@
-{
-    "Download": "Download",
-    "Downloading": "Downloading",
-    "Author": "Author",
-    "Send": "Send",
-    "Cancel": "Cancel",
-    "About": "About",
-    "Receive": "Receive",
-    "Success": "Success",
-    "File": "File",
-    "SerialPort": "Port",
-    "SerialBaudrate": "Baudrate",
-    "Board": "Board",
-    "SerialBytes": "DataBytes",
-    "SerialParity": "Parity",
-    "SerialStopbits": "Stopbits",
-    "Ascii": "ASCII",
-    "Hex": "HEX",
-    "BoardSettings": "Board Settings",
-    "SendSettings": "Send Settings",
-    "OpenFile": "Open File",
-    "ReceiveSettings": "Receive Settings",
-    "Open": "OPEN",
-    "Close": "CLOSE",
-    "AutoLinefeed": "Auto\nLinefeed\n(ms)",
-    "AutoLinefeedTime": "200",
-    "Scheduled": "Scheduled\nSend(ms)",
-    "ScheduledTime": "300",
-    "SelectFile": "Select File",
-    "SerialSettings": "Serial Settings",
-    "SerialReceiveSettings": "Receive Settings",
-    "SerialSendSettings": "Send Settings",
-    "ClearReceive": "ClearReceive",
-    "Add": "+",
-    "FunctionalSend": "Functional Send",
-    "BaudRateDefault": "115200",
-    "OpenFailed": "Open Failed",
-    "OpenReady": "Open Ready",
-    "Closed": "Closed",
-    "Error": "Error",
-    "FilePathError": "File path error!",
-    "WriteError": "Send Error",
-    "BaudrateError": "baud rate error",
-    "Ready": "Ready",
-    "WriteFormatError": "format error",
-    "CRLF": "<CRLF>",
-    "TimeFormatError": "Time format error",
-    "PleaseSelectSerialPort": "Please select serial port",
-    "Help": "Help",
-    "Settings": "Settings",
-    "NeedUpdate": "Need Update",
-    "UpdateNow": "update now",
-    "UninstallApp": "uninstall app",
-    "SRAM": "SRAM",
-    "Flash": "Flash",
-    "BurnTo": "Burn To",
-    "FileTypeError": "file type error, only support *.bin and *.kfpkg",
-    "DownloadCanceling": "Downloading canceling, wait...",
-    "DownloadHint": "Config and click Download to burn",
-    "ToSRAM": "to SRAM",
-    "DownloadSuccess": "Download success",
-    "DownloadCanceled": "Download canceled",
-    "DownloadFail": "Download fail",
-    "ErrorSettingHint": "Check your settings and try again, or replug in USB cable",
-    "DownloadStart": "Starting download, wait ...",
-    "Hint": "Hint",
-    "Reboot to take effect": "Reboot to take effect",
-    "Language Changed to ": "Language Changed to ",
-    "Chinese language": "Chinese",
-    "English language": "English",
-    "is a Open source project created by": "is a Open source project created by",
-    "See more on": "See more on",
-    "Licensed with": "Licensed with",
-    "GUI dirived from": "GUI dirived from",
-    "File path error": "File path error",
-    "Add File": "Add File",
-    "Pack to kfpkg": "Pack to kfpkg",
-    "Prefix": "Prefix",
-    "Address error": "Address error",
-    "Line {}: ": "Line {}: ",
-    "Save kfpkg success": "Save kfpkg success",
-    "Save File": "Save File",
-    "Pack kfpkg fail": "Pack kfpkg fail",
-    "Burn dddr duplicate": "Burn dddr duplicate",
-    "Slow mode": "Slow mode",
-    "Fast mode": "Fast mode",
-    "Speed mode": "Speed mode",
-    "Please wait, packing ...": "Please wait, packing ...",
-    "Upgrade": "Upgrade",
-    "Upgrade available, please download new release in release page": "Upgrade available, please download new release in release page",
-    "slow mode tips": "Slow Mode: Download bootload slower but more stable<br>Fast Mode: Download bootloader faster but maybe unstable",
-    "bin prefix tips": "MUST check it if firmware, or DO NOT check",
-    "help str":"-----------------------------------------<br><b>Firmware Download</b>:<br><b>-></b> Select firmware(support .kfpkg and .bin format)<br><b>-></b> Select Board and Burn to Flash<br><b>-></b> Select Serial and baudrate, if download fail, try low speed mode and check serial port setting, and try to decrease baudrate, and use another Type-C cable try again<br><br><b>Other files download</b>:<br>Similar to firmware download<br>-----------------------------------------",
-    "Merge hint": "merge bin files to one bin file, padding with 0xFF",
-    "Adress must align with 4KiB(0x1000)": "Adress must align with 4KiB(0x1000)",
-    "Please select file": "Please select file",
-    "EraseHint": "Select erase mode and set addr and length, click erase button"
-}

+ 0 - 133
src/static/win/python/kflash_gui1.3/kflash_gui_data/assets/translation/translation_zh.json

@@ -1,133 +0,0 @@
-{
-    "Download": "下载",
-    "Downloading": "正在下载",
-    "Author": "作者",
-    "Send": "发送",
-    "Cancel": "取消",
-    "About": "关于",
-    "Receive": "接收",
-    "Success": "成功",
-    "File": "文件",
-    "SerialPort": "端口",
-    "SerialBaudrate": "波特率",
-    "Board": "开发板",
-    "SerialBytes": "数据位",
-    "SerialParity": "校验位",
-    "SerialStopbits": "停止位",
-    "Ascii": "ASCII",
-    "Hex": "HEX",
-    "BoardSettings": "开发板设置",
-    "SendSettings": "发送设置",
-    "OpenFile": "打开文件",
-    "ReceiveSettings": "接收设置",
-    "Open": "打开",
-    "Close": "关闭",
-    "AutoLinefeed": "自动换行(ms)",
-    "AutoLinefeedTime": "200",
-    "Scheduled": "定时发送(ms)",
-    "ScheduledTime": "300",
-    "SelectFile": "选择文件",
-    "SerialSettings": "串口设置",
-    "SerialReceiveSettings": "串口接收设置",
-    "SerialSendSettings": "串口发送设置",
-    "ClearReceive": "清空接收区",
-    "Add": "+",
-    "FunctionalSend": "自定义发送",
-    "BaudRateDefault": "115200",
-    "OpenFailed": "打开失败",
-    "OpenReady": "成功打开",
-    "Closed": "已关闭",
-    "Error": "错误",
-    "FilePathError": "文件路径错误",
-    "WriteError": "发送错误",
-    "BaudrateError": "波特率错误",
-    "Ready": "已就绪",
-    "WriteFormatError": "格式错误",
-    "CRLF": "<CRLF>",
-    "TimeFormatError": "时间格式错误",
-    "PleaseSelectSerialPort": "请选择串口",
-    "Help": "帮助",
-    "Settings": "设置",
-    "NeedUpdate": "需要更新",
-    "UpdateNow": "现在就更新",
-    "UninstallApp": "卸载应用",
-    "SRAM": "SRAM",
-    "Flash": "Flash",
-    "BurnTo": "下载到",
-    "FileTypeError": "文件格式错误, 仅支持 *.bin 和 *.kfpkg",
-    "DownloadCanceling": "下载取消,请稍后...",
-    "DownloadHint": "设置并点击下载按钮",
-    "ToSRAM": "到 SRAM",
-    "DownloadSuccess": "下载成功",
-    "DownloadCanceled": "下载取消",
-    "DownloadFail": "下载失败",
-    "ErrorSettingHint": "检查设置并重试,或者重插USB尝试",
-    "DownloadStart": "正在开始下载, 请稍后...",
-    "Hint": "提示",
-    "Reboot to take effect": "重启生效",
-    "Language Changed to ": "语言修改为 ",
-    "Chinese language": "中文",
-    "English language": "英文",
-    "is a Open source project created by": "是一个开源项目,创建者:",
-    "See more on": "更详细地,请看",
-    "Licensed with": "开源协议:",
-    "GUI dirived from": "GUI(界面)修改自:",
-    "File path error": "文件路径错误",
-    "Add File": "增加文件",
-    "Pack to kfpkg": "打包为 kfpkg",
-    "Prefix": "校验头",
-    "Firmware": "固件",
-    "Busy": "忙",
-    "Address error": "地址错误",
-    "Line {}: ": "第 {} 行: ",
-    "Save kfpkg success": "保存 kfpkg 成功",
-    "Save File": "保存文件",
-    "Pack kfpkg fail": "打包 kfpkg 失败",
-    "Burn dddr duplicate": "烧录地址重复",
-    "Slow mode": "低速模式",
-    "Fast mode": "高速模式",
-    "Speed mode": "速度模式",
-    "Please wait, packing ...": "正在打包,请稍后 ...",
-    "Upgrade": "升级",
-    "only support bin file when Download to SRAM": "当选择下载到 SRAM 时,只支持选择 .bin 格式的固件",
-    "Release with": "发布使用了",
-    "Upgrade available, please download new release in release page": "发现新版本,请在 release 页面下载最新的版本",
-    "Greeting fail, check serial port": "握手失败,请检查串口设置",
-    "Failed to Connect to K210's Stub": "未找到开发板,请检查设置重试",
-    "Connection disconnected, try again or maybe need use Slow mode, or decrease baudrate": "连接断开, 请重试 或者 检查串口设置,也许需要使用 低速模式 或者 降低波特率 ",
-    "slow mode tips": "<b>低速模式</b>: 以较慢的速度下载 bootloader,速度慢但是更稳定<br><b>高速模式</b>: 以更高速度下载 bootloader ,速度快但是稳定性更低",
-    "bin prefix tips": "<b>校验头</b>: 如果是 .bin 格式的<b>固件</b> ,必须<b>勾选</b>,其它文件不能勾选",
-    "help str":"-----------------------------------------<br><b>固件下载</b>:<br><b>-></b> 选择固件(支持 .kfpkg 和 .bin)<br><b>-></b> 选择开发板,选择下载到 Flash<br><b>-></b> 设置串口,速度推荐1500000,如果下载失败,请尝试低速模式及确认串口有没有选错或降低波特率, 以及可以更换一根Type-C线尝试<br><br><b>其它下载</b>:<br>和固件下载类似<br>-----------------------------------------",
-    "Merge to .bin": "合并成.bin",
-    "File address error": "文件地址错误",
-    "start from": "开始于",
-    "but file": "但是文件",
-    "address range is": "地址范围为",
-    "Can not pack kfpkg": "不能打包 kfpkg",
-    "Merging, please wait ...": "正在合并,请稍后 ...",
-    "Save merged bin file success": "保存合并的 .bin 文件成功",
-    "Merge hint": "合并多个 bin 文件到一个 bin 文件, 并以 0xFF 填充 bin 之间的空白位置",
-    "No file selected": "没有文件被选中",
-    "Can not select kfpkg and bin files at the time": "不能同时选择 kfpkg 和 bin 文件",
-    "Only support one kfpkg file": "只支持一个 kfpkg 文件",
-    "Adress must align with 4KiB(0x1000)": "地址必须 4KiB(0x1000) 对齐",
-    "Please select file": "请先选择文件",
-    "Erase": "擦除",
-    "Erase settings": "擦除设置",
-    "Address": "地址",
-    "Length": "长度",
-    "Mode": "模式",
-    "Chip erase": "整片擦除",
-    "Partial erase": "部分擦除",
-    "Full chip": "整片(Flash)",
-    "Length error": "长度错误",
-    "Erase success": "擦除成功",
-    "Erase fail": "擦除失败",
-    "EraseHint": "选择擦除模式并设置地址和大小,点击擦除",
-    "Erase Canceled": "擦除被取消",
-    "Erase Canceling": "正在取消擦除",
-    "Preparing Erase": "正在准备擦除",
-    "Load Template": "加载模板",
-    "Load": "加载",
-    "Load erase config file error": "加载擦除配置文件错误"
-}

+ 0 - 93
src/static/win/python/kflash_gui1.3/kflash_gui_data/boards_info.json

@@ -1,93 +0,0 @@
-{
-    "Auto": {
-        "lang": {
-            "en": "Auto",
-            "zh": "自动选择"
-        },
-        "type": null
-    },
-    "Sipeed Maix Dock": {
-        "lang": {
-            "en": "Sipeed Maix Dock",
-            "zh": "Sipeed Maix Dock"
-        },
-        "type": "dan"
-    },
-    "Sipeed Maix Bit ( with Mic )": {
-        "lang": {
-            "en": "Sipeed Maix Bit ( with Mic )",
-            "zh": "Sipeed Maix Bit ( 带麦克风 )"
-        },
-        "type": "bit_mic"
-    },
-    "Sipeed Maix Bit (No Mic)": {
-        "lang": {
-            "en": "Sipeed Maix Bit (No Mic)",
-            "zh": "Sipeed Maix Bit (无麦克风)"
-        },
-        "type": "bit"
-    },
-    "Sipeed Maixduino": {
-        "lang": {
-            "en": "Sipeed Maixduino",
-            "zh": "Sipeed Maixduino"
-        },
-        "type": "goE"
-    },
-    "Sipeed Maix Amigo": {
-        "lang": {
-            "en": "Sipeed Maix Amigo",
-            "zh": "Sipeed Maix Amigo"
-        },
-        "type": "goE"
-    },
-    "Sipeed Maix Cube": {
-        "lang": {
-            "en": "Sipeed Maix Cube",
-            "zh": "Sipeed Maix Cube"
-        },
-        "type": "goE"
-    },
-    "Sipeed Maix Go ( open-ec & new CMSIS-DAP )": {
-        "lang": {
-            "en": "Sipeed Maix Go ( open-ec & new CMSIS-DAP )",
-            "zh": "Sipeed Maix Go ( open-ec 或新 CMSIS-DAP )"
-        },
-        "type": "goE"
-    },
-    "Sipeed Maix Go ( Old CMSIS-DAP )": {
-        "lang": {
-            "en": "Sipeed Maix Go ( Old CMSIS-DAP )",
-            "zh": "Sipeed Maix Go ( 旧版 CMSIS-DAP )"
-        },
-        "type": "goD"
-    },
-    "Sipeed Maix Nano": {
-        "lang": {
-            "en": "Sipeed Maix Nano",
-            "zh": "Sipeed Maix Nano"
-        },
-        "type": "goE"
-    },
-    "M5StickV": {
-        "lang": {
-            "en": "M5StickV",
-            "zh": "M5StickV"
-        },
-        "type": "goE"
-    },
-    "Kendryte KD233": {
-        "lang": {
-            "en": "Kendryte KD233",
-            "zh": "Kendryte KD233"
-        },
-        "type": "kd233"
-    },
-    "kendryte Trainer": {
-        "lang": {
-            "en": "kendryte Trainer",
-            "zh": "kendryte Trainer"
-        },
-        "type": "trainer"
-    }
-}

+ 0 - 23
src/static/win/python/kflash_gui1.3/kflash_gui_data/erase_config.json

@@ -1,23 +0,0 @@
-{
-    "MaixPy FS": {
-        "lang": {
-            "en": "MaixPy FS",
-            "zh": "MaixPy 文件系统"
-        },
-        "config": ["0xD00000", "3", "MiB"]
-    },
-    "MF1 Board Config": {
-        "lang": {
-            "en": "MF1 Board Config",
-            "zh": "MF1 板级配置"
-        },
-        "config": ["0x7FF000", "4", "KiB"]
-    },
-    "MF1 Face Info": {
-        "lang": {
-            "en": "MF1 Face Info",
-            "zh": "MF1 人脸信息"
-        },
-        "config": ["0x800000", "64", "KiB"]
-    }
-}

+ 0 - 21
src/static/win/python/kflash_gui1.3/kflash_py/LICENSE

@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2019 Kendryte
-
-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.

+ 0 - 330
src/static/win/python/kflash_gui1.3/kflash_py/README.rst

@@ -1,330 +0,0 @@
-kflash, A Python-based Kendryte K210 UART ISP Utility
-=====================================================
-
-Usage
------
-
-.. code:: bash
-
-    # kflash --help
-    usage: kflash [-h] [-p PORT] [-f FLASH] [-b BAUDRATE] [-l BOOTLOADER]
-                    [-k KEY] [-v] [-t] [-n] [-s] [-B BOARD] [-S SLOW]
-                    firmware
-
-    positional arguments:
-    firmware              firmware bin path
-
-    optional arguments:
-    -h, --help            show this help message and exit
-    -p PORT, --port PORT  COM Port
-    -f FLASH, --flash FLASH
-                            SPI Flash type, 0 for SPI3, 1 for SPI0
-    -b BAUDRATE, --baudrate BAUDRATE
-                            UART baudrate for uploading firmware
-    -l BOOTLOADER, --bootloader BOOTLOADER
-                            bootloader bin path
-    -k KEY, --key KEY     AES key in hex, if you need encrypt your firmware.
-    -v, --verbose         increase output verbosity
-    -t, --terminal        Start a terminal after finish (Python miniterm)
-    -n, --noansi          Do not use ANSI colors, recommended in Windows CMD
-    -s, --sram            Download firmware to SRAM and boot
-    -B BOARD, --Board BOARD
-                            Select dev board, e.g. kd233, dan, bit, goD, goE or
-                            trainer
-    -S SLOW, --Slow SLOW  Slow download mode
-
-Attention
----------
-
-Maixgo with openec firmware, BOARD must choose ``-B goE``, and should choose
-sencond com port.
-
-With cmsis-dap firmware(before 2019.02.21), BOARD must use ``-B goD``.
-
-You can update `new cmsis-dap firmware <http://blog.sipeed.com/p/352.html>`__, it is same as openec.
-
-For K210 Trainer V0.01b, BOARD must choose ``-B trainer``.
-
-For KD233, BOARD must choose ``-B kd233``, and the jumper for kd233 automatic
-download circuit must be set.
-
-Installation
-------------
-
-.. code:: bash
-
-    sudo pip3 install kflash
-
-If you receive an error, please try
-
-.. code:: bash
-
-    sudo python -m pip install kflash
-    sudo python3 -m pip install kflash
-    sudo pip install kflash
-    sudo pip2 install kflash
-
-For linux users, first of all, you must add yourself to dialout group.
-Or you have to use root permission every time.
-
-.. code:: bash
-
-    sudo usermod -a -G dialout $(whoami)
-
-Sample Usage
-------------
-
-.. code:: bash
-
-    # Linux or macOS
-    # Using pip
-    kflash -B dan firmware.bin
-    kflash -B dan -t firmware.bin # Open a Serial Terminal After Finish
-    # Using source code
-    python3 kflash.py -B dan firmware.bin
-    python3 kflash.py -B dan -t firmware.bin # Open a Serial Terminal After Finish
-
-    # Windows CMD or PowerShell
-    # Using pip
-    kflash -B dan firmware.bin
-    kflash -B dan -t firmware.bin # Open a Serial Terminal After Finish
-    kflash -B dan -n -t firmware.bin # Open a Serial Terminal After Finish, do not use ANSI colors
-    # Using source code
-    python kflash.py -B dan firmware.bin
-    python kflash.py -B dan -t firmware.bin # Open a Serial Terminal After Finish
-    python kflash.py -B dan -n -t firmware.bin # Open a Serial Terminal After Finish, do not use ANSI colors
-
-    # Windows Subsystem for Linux
-    # Using pip
-    sudo kflash -B dan -p /dev/ttyS13 firmware.bin # ttyS13 Stands for the COM13 in Device Manager
-    sudo kflash -B dan -p /dev/ttyS13 -t firmware.bin # Open a Serial Terminal After Finish
-    # Using source code
-    sudo python3 kflash.py -B dan -p /dev/ttyS13 firmware.bin # ttyS13 Stands for the COM13 in Device Manager
-    sudo python3 kflash.py -B dan -p /dev/ttyS13 -t firmware.bin # Open a Serial Terminal After Finish
-
-For fast programming,
-
-.. code:: bash
-
-    # Using pip
-    # This will enable opoenec super-baudrate!
-    kflash -b 4500000 -B goE firmware.bin
-    # Trainer could use 8000000 baudrate!
-    kflash -b 8000000 -B trainer firmware.bin
-    # Dan could use 3000000 baudrate!
-    kflash -b 3000000 -B dan firmware.bin
-
-    # Using source code
-    # This will enable opoenec super-baudrate!
-    python3 kflash.py -b 4500000 -B goE firmware.bin
-    # Trainer could use 8000000 baudrate!
-    python3 kflash.py -b 8000000 -B trainer firmware.bin
-    # Dan could use 3000000 baudrate!
-    python3 kflash.py -b 3000000 -B dan firmware.bin
-
-Execute user code directly in SRAM and view in serial terminal,
-
-.. code:: bash
-
-    # Using pip
-    # For `.elf` file
-    kflash -b 115200 -B goE -s -t hello_world
-    # For `.bin` file
-    kflash -b 115200 -B goE -s -t hello_world.bin
-
-    # Using source code
-    # For `.elf` file
-    python3 kflash.py -b 115200 -B goE -s -t hello_world
-    # For `.bin` file
-    python3 kflash.py -b 115200 -B goE -s -t hello_world.bin
-
-Requirements
-------------
-
--  python>=3 or python=2.7
--  pyserial>=3.4
--  pyelftools>=0.25
-
-    Python3 is recommended.
-
-If your python version below python3.4, you need:
-
--  enum34>=1.1.6
-
-Windows Requirements
-~~~~~~~~~~~~~~~~~~~~
-
--  Download and Install `Python3 at python.org <https://www.python.org/downloads/release/python-367/>`__
--  Download the `get-pip.py at https://bootstrap.pypa.io/get-pip.py <https://bootstrap.pypa.io/get-pip.py>`__
--  Start CMD or PowerShell Terminal and run the following command
-
-.. code:: bash
-
-    python get-pip.py
-    python -m pip install pyserial
-    python -m pip install pyelftools
-    # When you python version below python3.4
-    python -m pip install enum34
-
---------------
-
-macOS Requirements
-~~~~~~~~~~~~~~~~~~
-
-.. code:: bash
-
-    # Install Homebrew, an awesome package manager for macOS
-    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
-    brew install python
-    python3 -m pip3 install pyserial
-    python3 -m pip3 install pyelftools
-
---------------
-
-Ubuntu, Debian Requirements
-~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-.. code:: bash
-
-    sudo apt update
-    sudo apt install python3 python3-pip
-    sudo pip3 install pyserial
-    sudo pip3 install pyelftools
-
---------------
-
-Fedora
-~~~~~~
-
-.. code:: bash
-
-    sudo dnf install python3
-    sudo python3 -m pip install pyserial
-    sudo python3 -m pip install pyelftools
-
---------------
-
-CentOS
-~~~~~~
-
-.. code:: bash
-
-    sudo yum -y install epel-release
-    sudo yum -y install python36u python36u-pip
-    sudo ln -s /bin/python3.6 /usr/bin/python3
-    sudo ln -s /bin/pip3.6 /usr/bin/pip3
-    sudo pip3 install pyserial
-    sudo pip3 install pyelftools
-
-Trouble Shooting
-----------------
-
-Could not open port /dev/tty*: [Errno 13] Permission denied: '/dev/tty*'
-------------------------------------------------------------------------
-
-    For Windows Subsystem for Linux, you may have to use sudo due to its docker
-    like feature
-
--  Add your self to a dialout group to use usb-to-uart devices by
-
-.. code:: bash
-
-    sudo usermod -a -G dialout $(whoami)
-
--  Logout, and log in.
-
---------------
-
-UART Auto Detecting is Not Working, or Select the Wrong UART Port
------------------------------------------------------------------
-
-Windows
-~~~~~~~
-
--  Check the COM Number for your device at the Device Manager, such as
-   **USB-SERIAL CH340(COM13)**.
-
-.. code:: bash
-
-    # Using pip, only need once when you install
-    pip install kflash
-    kflash -p COM13 firmware.bin
-    # Or
-    kflash.exe -p COM13 firmware.bin
-    # Using source code
-    python kflash.py -p COM13 firmware.bin
-
-Windows Subsystem For Linux(WSL)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
--  Check the COM Number for your device at the Device Manager, such as
-   **USB-SERIAL CH340(COM13)**.
-
-.. code:: bash
-
-    # Using pip, only need once when you install
-    sudo pip3 install kflash
-    sudo kflash -p /dev/ttyS13 firmware.bin # You have to use *sudo* here
-    # Using source code
-    sudo python3 kflash.py -p /dev/ttyS13 firmware.bin # You have to use *sudo* here
-
-Linux
-~~~~~
-
--  Check the USB Device Name, Usually presented as ttyUSB\*
-
-.. code:: bash
-
-    ls /dev/ttyUSB*
-
--  It will print :
-
-.. code:: bash
-
-    $ ls /dev/ttyUSB*
-    /dev/ttyUSB0
-    /dev/ttyUSB2
-    /dev/ttyUSB13
-
--  Choose the one you think belongs to your device, or you may try multimule
-   names.
-
-.. code:: bash
-
-    # Using pip
-    python3 kflash.py -p /dev/ttyUSB13 firmware.bin
-    # Using source code
-    kflash -p /dev/ttyUSB13 firmware.bin
-
-macOS
-~~~~~
-
--  Check the USB Device Name, Usually presented as cu.\*
-
-.. code:: bash
-
-    ls /dev/cu.*
-
--  It will print :
-
-.. code:: bash
-
-    $ ls /dev/ttyUSB*
-    /dev/cu.wchusbserial1410
-    /dev/cu.wchusbserial1437
-    /dev/cu.SLAB_USBtoUART2333
-
--  Choose the one you think belongs to your device, or you may try multimule
-   names.
-
-.. code:: bash
-
-    # Using pip
-    kflash -p /dev/cu.wchusbserial1410 firmware.bin
-    # Using source code
-    python3 kflash.py -p /dev/cu.wchusbserial1410 firmware.bin
-
-You may unable to find the device even in the /dev, check the link below for
-drivers
-
--  For K210 and Sipeed Dan -> `WCH CH34x USB2UART Chip <https://github.com/adrianmihalko/ch340g-ch34g-ch34x-mac-os-x-driver>`__

BIN
src/static/win/python/kflash_gui1.3/kflash_py/__pycache__/kflash.cpython-37.pyc


File diff suppressed because it is too large
+ 0 - 109
src/static/win/python/kflash_gui1.3/kflash_py/kflash.py


+ 0 - 7
src/static/win/python/kflash_gui1.3/kflash_py/package.json

@@ -1,7 +0,0 @@
-{
-    "description": "kflash, A Python-based Kendryte K210 UART ISP Utility",
-    "name": "tool-kflash-kendryte210",
-    "system": "*",
-    "url": "https://github.com/kendryte/kflash.py",
-    "version": "1.0.0"
-}

+ 0 - 52
src/static/win/python/kflash_gui1.3/kflash_py/setup.py

@@ -1,52 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-
-from __future__ import (division, print_function)
-
-from setuptools import setup, find_packages
-
-setup(
-    name='kflash',
-    py_modules=['kflash'],
-    version='0.8.3',
-    description=(
-        'Kendryte UART ISP Utility - programming code to k210'
-    ),
-    long_description=open('README.rst').read(),
-    long_description_content_type='text/x-rst',
-    author='https://github.com/kendryte/kflash.py/graphs/contributors',
-    author_email='auto@canaan-creative.com',
-    maintainer='Huang Rui',
-    maintainer_email='vowstar@gmail.com',
-    license='MIT License',
-    packages=find_packages(),
-    platforms=["all"],
-    url='https://github.com/kendryte/kflash.py',
-    classifiers=[
-        'Development Status :: 4 - Beta',
-        'Operating System :: OS Independent',
-        'Intended Audience :: Developers',
-        'License :: OSI Approved :: MIT License',
-        'Environment :: Console',
-        'Natural Language :: English',
-        'Programming Language :: Python',
-        'Programming Language :: Python :: Implementation',
-        'Programming Language :: Python :: 2.7',
-        'Programming Language :: Python :: 3',
-        'Programming Language :: Python :: 3.4',
-        'Programming Language :: Python :: 3.5',
-        'Programming Language :: Python :: 3.6',
-        'Programming Language :: Python :: 3.7',
-        'Topic :: Software Development :: Embedded Systems'
-    ],
-    install_requires=[
-        'pyserial>=3.4',
-        'pyelftools>=0.25',
-        'enum34>=1.1.6',
-    ],
-    entry_points={
-        'console_scripts': [
-            'kflash = kflash:main',
-        ]
-    },
-)

+ 0 - 65
src/static/win/python/kflash_gui1.3/pack.py

@@ -1,65 +0,0 @@
-import os, sys, shutil
-
-if os.path.exists("kflash_py/__pycache__"):
-    shutil.rmtree("kflash_py/__pycache__")
-
-if os.path.exists("build"):
-    shutil.rmtree("build")
-
-if os.path.exists("dist"):
-    shutil.rmtree("dist")
-
-# pyinstaller generate files
-if sys.platform.startswith("win32"):
-    cmd = 'pyinstaller --add-binary="kflash_gui_data;kflash_gui_data" --add-binary="kflash_py;kflash_py" -i="kflash_gui_data/assets/logo.ico" -w kflash_gui.py'
-elif sys.platform.startswith("darwin"):
-    # NOTE: must use --add-data under darwin, or you will get "Unknown Mach-O header" error
-    cmd = 'pyinstaller --add-data="kflash_gui_data:kflash_gui_data" --add-data="kflash_py:kflash_py" -i="kflash_gui_data/assets/logo.icns" -w kflash_gui.py'
-else:
-    cmd = 'pyinstaller --add-binary="kflash_gui_data:kflash_gui_data" --add-binary="kflash_py:kflash_py" -i="kflash_gui_data/assets/logo.png" -w kflash_gui.py'
-
-result = os.system(cmd)
-
-if result != 0:
-    exit(1)
-
-# create packages
-if sys.platform.startswith("win32"):
-    if os.path.exists("./dist/kflash_gui.7z"):
-        os.remove("./dist/kflash_gui.7z")
-    cmd = """bash.exe -c \
-        " \
-        cd ./dist || exit -1 ; \
-        7z a "kflash_gui.7z" "kflash_gui" -bd -mx9 || exit -1 ; \
-        " \
-    """
-elif sys.platform.startswith("darwin"):
-    if os.path.exists("./dist/kflash_gui.dmg"):
-        os.remove("./dist/kflash_gui.dmg")
-    cmd = """create-dmg \
-        --volname "KFlash GUI Installer" \
-        --volicon "kflash_gui_data/assets/logo.icns" \
-        --background "kflash_gui_data/assets/installer_background_mac.png" \
-        --window-pos 200 120 \
-        --window-size 800 400 \
-        --icon-size 100 \
-        --icon "kflash_gui.app" 200 190 \
-        --hide-extension "kflash_gui.app" \
-        --app-drop-link 600 185 \
-        "./dist/kflash_gui.dmg" \
-        "./dist/kflash_gui.app"
-    """
-else:
-    if os.path.exists("./dist/kflash_gui.tar.xz"):
-        os.remove("./dist/kflash_gui.tar.xz")
-    cmd = """sh -c \
-        " \
-        cd ./dist || exit -1 ; \
-        XZ_OPT=-9 tar -Jcf kflash_gui.tar.xz kflash_gui || exit -1 ; \
-        " \
-    """
-
-result = os.system(cmd)
-
-if result != 0:
-    exit(1)

+ 0 - 40
src/static/win/python/kflash_gui1.3/parameters.py

@@ -1,40 +0,0 @@
-import os, sys
-
-appName = "kflash_gui"
-author = "Neucrack"
-strDataDirName = "kflash_gui_data"
-strDataAssetsDirName = "kflash_gui_data/assets"
-appIcon = "assets/logo.png"
-appLogo = "assets/logo.png"
-appLogo2 = "assets/logo2.png"
-translationPath = "assets/translation"
-configFileName  = "kflash_gui.conf"
-configFilePath  = ""
-
-if sys.platform.startswith('linux') or sys.platform.startswith('darwin') or sys.platform.startswith('freebsd'):
-    configFileDir = os.path.join(os.getenv("HOME"), ".config/kflash_gui")
-    try:
-        configFilePath = os.path.join(configFileDir, configFileName)
-        if not os.path.exists(configFileDir):
-            os.makedirs(configFileDir)
-    except:
-        pass
-else:
-    configFilePath  = os.path.join(os.getcwd(), configFileName)
-
-
-
-# get data path
-pathDirList = sys.argv[0].replace("\\", "/").split("/")
-pathDirList.pop()
-dataPath = os.path.abspath("/".join(str(i) for i in pathDirList))
-if not os.path.exists(dataPath + "/" + strDataDirName):
-    pathDirList.pop()
-    dataPath = os.path.abspath("/".join(str(i) for i in pathDirList))
-dataPath = (dataPath + "/" + strDataDirName).replace("\\", "/")
-
-translationPathAbs = dataPath+"/"+translationPath
-
-
-
-

+ 0 - 73
src/static/win/python/kflash_gui1.3/paremeters_save.py

@@ -1,73 +0,0 @@
-import translation, parameters
-from translation import tr_en
-import json, os
-import locale
-
-try:
-    lang = locale.getdefaultlocale()
-except Exception:
-    lang = ["en"]
-if lang[0] and lang[0].startswith("zh"):
-    default_lang = translation.language_zh
-else:
-    default_lang = translation.language_en
-
-class ParametersToSave:
-
-    def __init__(self):
-        self.files = []       # [ (path, addr, firmware, enable), ...]
-        self.board    = 0
-        self.burnPosition = tr_en("Flash")
-        self.baudRate = 2
-        self.skin = 2
-        self.language = default_lang
-        self.slowMode = True
-
-
-    def __del__(self):
-        pass
-    
-    def save(self, path):
-        data = {}
-        rm = []
-        for f in self.files:
-            if f[0]=="" or not os.path.exists(f[0]):
-               rm.append(f) 
-        for f in rm:
-            self.files.remove(f)
-        data["files"] = self.files
-        data["board"] = self.board
-        data["burn_pos"] = self.burnPosition
-        data["skin"] = self.skin
-        data["language"] = self.language
-        data["slow_mode"] = self.slowMode
-
-        dir_path = os.path.dirname(os.path.realpath(path))
-        try:
-            if not os.path.exists(dir_path):
-                os.makedirs(dir_path)
-        except:
-            pass
-
-        try:
-            with open(path, "w+") as f:
-                json.dump(data, f, indent=4)
-        except:
-            pass
-    
-    def load(self, path):
-        try:
-            with open(path, "r") as f:
-                data = json.load(f)
-        except Exception:
-            return
-        try:
-            self.files = data["files"]
-            self.board = data["board"]
-            self.burnPosition = data["burn_pos"]
-            self.skin = data["skin"]
-            self.language = data["language"]
-            self.slowMode = data["slow_mode"]
-        except Exception:
-            pass
-

+ 0 - 6
src/static/win/python/kflash_gui1.3/requirements.txt

@@ -1,6 +0,0 @@
-bs4>=0.0.1
-PyQt5>=5.12.2
-pyinstaller>=3.4
-pyserial>=3.4
-requests>=2.22.0
-urllib3>=1.25.3

+ 0 - 59
src/static/win/python/kflash_gui1.3/translation.py

@@ -1,59 +0,0 @@
-import parameters, os, json
-
-language_en = "en"
-language_zh = "zh"
-current_lang = language_en
-
-lang_json_list = {}
-
-for f in os.listdir(parameters.translationPathAbs):
-    lang = f.split(".")[0][12:]
-    if lang == "":
-        continue
-    f = parameters.translationPathAbs+"/"+f
-    with open(f,"r", encoding='utf-8') as fd:
-        try:
-            jsonObj = json.loads(fd.read())
-        except Exception as e:
-            print("tranlation:",f," format(json) error!")
-            raise e
-        lang_json_list[lang] = jsonObj
-if len(lang_json_list) == 0:
-    raise Exception("No translation file!")
-
-
-def setLanguage(language):
-    global current_lang
-    transFileName = "translation_"+language+".json"
-    for f in os.listdir(parameters.translationPathAbs):
-        if f.endswith(transFileName):
-            current_lang = language
-
-def getCurrentLanguage():
-    global current_lang
-    return current_lang
-
-def tr(str):
-    try:
-        return lang_json_list[current_lang][str]
-    except Exception:
-        try:
-            return lang_json_list[language_en][str]
-        except Exception:
-            return str
-
-def tr_en(str):
-    return lang_json_list[language_en][str]
-
-def tr2(str):
-    ret = str
-    key_find = None
-    max_find_len = 0
-    for key in lang_json_list[current_lang].keys():
-        if key in str:
-            if len(key) > max_find_len:
-                key_find = key
-                max_find_len = len(key)
-    if key_find:
-        ret = ret.replace(key_find, lang_json_list[current_lang][key_find])
-    return ret

+ 0 - 1
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5-5.14.2.dist-info/INSTALLER

@@ -1 +0,0 @@
-pip

+ 0 - 66
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5-5.14.2.dist-info/METADATA

@@ -1,66 +0,0 @@
-Metadata-Version: 2.1
-Name: PyQt5
-Version: 5.14.2
-Requires-Python: >=3.5
-Summary: Python bindings for the Qt cross platform application toolkit
-Home-Page: https://www.riverbankcomputing.com/software/pyqt/
-Author: Riverbank Computing Limited
-Author-Email: info@riverbankcomputing.com
-License: GPL v3
-Requires-Dist: PyQt5-sip (>=12.7, <13)
-
-PyQt5 - Comprehensive Python Bindings for Qt v5
-===============================================
-
-Qt is set of cross-platform C++ libraries that implement high-level APIs for
-accessing many aspects of modern desktop and mobile systems.  These include
-location and positioning services, multimedia, NFC and Bluetooth connectivity,
-a Chromium based web browser, as well as traditional UI development.
-
-PyQt5 is a comprehensive set of Python bindings for Qt v5.  It is implemented
-as more than 35 extension modules and enables Python to be used as an
-alternative application development language to C++ on all supported platforms
-including iOS and Android.
-
-PyQt5 may also be embedded in C++ based applications to allow users of those
-applications to configure or enhance the functionality of those applications.
-
-
-Author
-------
-
-PyQt5 is copyright (c) Riverbank Computing Limited.  Its homepage is
-https://www.riverbankcomputing.com/software/pyqt/.
-
-Support may be obtained from the PyQt mailing list at
-https://www.riverbankcomputing.com/mailman/listinfo/pyqt/.
-
-
-License
--------
-
-PyQt5 is released under the GPL v3 license and under a commercial license that
-allows for the development of proprietary applications.
-
-
-Documentation
--------------
-
-The documentation for the latest release can be found
-`here <https://www.riverbankcomputing.com/static/Docs/PyQt5/>`__.
-
-
-Installation
-------------
-
-The GPL version of PyQt5 can be installed from PyPI::
-
-    pip install PyQt5
-
-The wheels include a copy of the required parts of the LGPL version of Qt.
-
-``pip`` will also build and install the bindings from the sdist package but
-Qt's ``qmake`` tool must be on ``PATH``.
-
-The ``sip-install`` tool will also install the bindings from the sdist package
-but will allow you to configure many aspects of the installation.

+ 0 - 2163
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5-5.14.2.dist-info/RECORD

@@ -1,2163 +0,0 @@
-../../Scripts/pylupdate5.exe,sha256=C9k-dcE0aAcopoFQc1OBoqDqbuB4rkocj2WT49rK7D8,97131
-../../Scripts/pyrcc5.exe,sha256=EwojMJ7D6IU4kP7UTUWQkQNH754rYCwMmg1FbtRZFyA,97127
-../../Scripts/pyuic5.exe,sha256=ORdt5E-At7-Y91hpPl4DEXqduRkK6esKrFD4YGkHx2o,97126
-PyQt5-5.14.2.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
-PyQt5-5.14.2.dist-info/METADATA,sha256=LBVdk2RTUSKGQQu9B1yznexezT0DD2VJ_ISGVE3-r2w,2216
-PyQt5-5.14.2.dist-info/RECORD,,
-PyQt5-5.14.2.dist-info/WHEEL,sha256=mWziGJW-k6QotBp7WYHeJ_QcabZYBBFUF9XrVCUZYnc,109
-PyQt5-5.14.2.dist-info/entry_points.txt,sha256=Qif0K5dtSx55Jy85ruKNbDlFdMdcekmMavb6lQz49g0,116
-PyQt5-5.14.2.dist-info\RECORD,,
-PyQt5/QAxContainer.pyd,sha256=KBkT9pXJeROMD3deD-u9D2BMeRSMQSZdOkpxcHZvr0c,211968
-PyQt5/Qt.pyd,sha256=brK3pZQpGK0cucvZgwMEyBQRaSu-uDCk8GD0qOy1-AU,10752
-PyQt5/Qt/bin/Qt5Bluetooth.dll,sha256=fNyJAMgPlHGRiafXyJpOHKWz7dnExKXyd26GNDkOwIk,463992
-PyQt5/Qt/bin/Qt5Core.dll,sha256=uWet4JqTODIODbTl2hGirDlpUPDu1omyi9MWhre68Bg,5298296
-PyQt5/Qt/bin/Qt5DBus.dll,sha256=R6NrpMakU2PVZxZCrryMWzZ2jN6AxvJvrQjuhhREDtM,363128
-PyQt5/Qt/bin/Qt5Designer.dll,sha256=2Uq6Uqf55qJ-8hOFoNy78YgblfjUpGn-LbrSAICfUfM,4166264
-PyQt5/Qt/bin/Qt5Gui.dll,sha256=qxYJkvMNxpuX_u3S_K91KKVvyYo_MKFmwQdliTQKyL4,5978744
-PyQt5/Qt/bin/Qt5Help.dll,sha256=20Evq4d8pqeIbsfgFSW13orThRg6Vr1kdgdD93CDUFM,295544
-PyQt5/Qt/bin/Qt5Location.dll,sha256=gnmSNKRyOFjF10pe9qPn_41Bee8IfnohDTM4KLKEkdc,1328760
-PyQt5/Qt/bin/Qt5Multimedia.dll,sha256=iwH8NHRnqYCKUujjjWCBdRJoTzYeyOGfN6761w6llM4,595064
-PyQt5/Qt/bin/Qt5MultimediaWidgets.dll,sha256=NttkyvpNzat2kZcNLb05_xvuXC9NqvFGwvJt7TS6N9g,90744
-PyQt5/Qt/bin/Qt5Network.dll,sha256=3cmJTjYjHXSSZRVboC8tcOxeAGzqNAEHULIgzknOORo,1115256
-PyQt5/Qt/bin/Qt5NetworkAuth.dll,sha256=es-r-MbLVWKcDhjWXycNRnA6LO5MWXKpl9RF3yTOCuc,135800
-PyQt5/Qt/bin/Qt5Nfc.dll,sha256=HAwRrboffwopp5T_TGA9_6ZYrcSrCbYS4V0uwe6qwos,111736
-PyQt5/Qt/bin/Qt5OpenGL.dll,sha256=ZBfcRRsKE-N-qH4ZKEB56XF8CiVoQqVcny4hzHFpvGc,275064
-PyQt5/Qt/bin/Qt5Positioning.dll,sha256=bsHO5u8vbYDgO7vd3VXNexMN2z6uR0hOZy973aOd6U4,270456
-PyQt5/Qt/bin/Qt5PositioningQuick.dll,sha256=TrDZWj4bvRyPTLuXLTjkllflTsZhfRv99_99p4OSUwc,94840
-PyQt5/Qt/bin/Qt5PrintSupport.dll,sha256=26XVBgcpboIMqlZviDAtGUls8ck1PNKPfhnxI9V5biM,274040
-PyQt5/Qt/bin/Qt5Qml.dll,sha256=pdBJ9p-lT4L5FsCgJ3J4d8M5_AbMPWtlcQqqRHpyGHc,3109496
-PyQt5/Qt/bin/Qt5QmlModels.dll,sha256=WQWS072-nAFg4N7EGj5C2VLDkfqbXFzosS6QdOZDWVc,420472
-PyQt5/Qt/bin/Qt5QmlWorkerScript.dll,sha256=QKo2mN7x2bB73y2JCd2_TwQRJ65L3atTZgzKdBFbHz4,49784
-PyQt5/Qt/bin/Qt5Quick.dll,sha256=G5YEqy-wF62ZU99gWa5V_h4IE0YioZQr4YRSle-ytVk,3627640
-PyQt5/Qt/bin/Qt5QuickControls2.dll,sha256=ojsnbcT6iKuW6uTMu5ZcZoHi0FEAhp3HlCyWPohbxVo,149624
-PyQt5/Qt/bin/Qt5QuickParticles.dll,sha256=JUnwqWsDgcqMwZmyktJajZcDVQ9bvC8ykMRe8O80B8o,437880
-PyQt5/Qt/bin/Qt5QuickShapes.dll,sha256=jO-wM69QHEPjOWWJ1AmQI2ttbIO1cdOob118HtOvyf8,184952
-PyQt5/Qt/bin/Qt5QuickTemplates2.dll,sha256=VPl6RQsoPopBkEGXp2OTVfAR_53As4sUoFJUFJMGNQc,928376
-PyQt5/Qt/bin/Qt5QuickTest.dll,sha256=wwc6mHpzpXSfnxzssMOnrCeT9NVuzECMlGPTI1CmWVU,125048
-PyQt5/Qt/bin/Qt5QuickWidgets.dll,sha256=Z4tGibW70YN-owwQ6VLUFo_-2Ickg7wRww1N9cD_z8A,66168
-PyQt5/Qt/bin/Qt5RemoteObjects.dll,sha256=1vkTECWDcmWB0ZzYippoqQxI8mhwObgxJ68XB5Bww3s,390264
-PyQt5/Qt/bin/Qt5Sensors.dll,sha256=VgLAKCJeHQYoRHGoHwiX4Z8-zKYVjtoqspe0zqaJ5Ew,167032
-PyQt5/Qt/bin/Qt5SerialPort.dll,sha256=RuNWv2z7IYUHwNPx8QZBfRBLivcMfiwKCIfk6vCm_uE,65656
-PyQt5/Qt/bin/Qt5Sql.dll,sha256=S2sQfH1CZaGvKdJy0XW2qskDy5vpRK41UII1F51AxA8,165496
-PyQt5/Qt/bin/Qt5Svg.dll,sha256=UNBtQqcRAeb7dYlnameg12Pzn-Zt3fPQNrCK6q9dxx4,271992
-PyQt5/Qt/bin/Qt5Test.dll,sha256=qYWAUSSh4H4c6r09ckiqdzRTUkLk8GDWrNHU_7XIylg,224376
-PyQt5/Qt/bin/Qt5WebChannel.dll,sha256=fg4-EIF2JOcLWPdjyPRh7AlJXE19IwoyhHwHBm79G2A,108152
-PyQt5/Qt/bin/Qt5WebSockets.dll,sha256=G6lPlArRdBiq5blXqmDY1yzJUpjUeTyqoexpoDwRYdI,137336
-PyQt5/Qt/bin/Qt5Widgets.dll,sha256=ShKGYmD_Jm7v_gtNjq8n7QZGgvAOiQe9U5VvRG4jxJY,4595832
-PyQt5/Qt/bin/Qt5WinExtras.dll,sha256=RWAAyvj6k0Seh5IxHOLRhMmqEYtOL6S79rUsp4t9P7w,451192
-PyQt5/Qt/bin/Qt5Xml.dll,sha256=OY9nDqXcBl53ljRryhwq1dLAGxMlqT6C75IfXzZ2nQY,154232
-PyQt5/Qt/bin/Qt5XmlPatterns.dll,sha256=bhE2FCXUzO8tm5Gh0DjnmW-NYpNLbcW59ZNEKgLpnBg,2316920
-PyQt5/Qt/bin/concrt140.dll,sha256=fvSbnBG6VUkLME3cjaiyWK9sU7EOJ0Nodsb93E_PqaE,249904
-PyQt5/Qt/bin/d3dcompiler_47.dll,sha256=7727zQ2VT4_cU0Z95dia1SXk5KnP_4oV0Hxv2zUMQH8,3466856
-PyQt5/Qt/bin/libEGL.dll,sha256=d65dDk4xEFYDhIyDGrvp9ZguWfJdn3Si4kmt-NbKNJ0,21624
-PyQt5/Qt/bin/libGLESv2.dll,sha256=0vu0qv3HriaM93vl3YCkAaR42NDggFs3-T2H-89YJPA,2857592
-PyQt5/Qt/bin/libcrypto-1_1.dll,sha256=SOT7WlUZaFSrapZdFivbpwx4XwiQKEUm7k_OmtMB-CY,2499072
-PyQt5/Qt/bin/libeay32.dll,sha256=wo654ACkIy-RiogVn883b9Tr5wYCTeht5ONxQzhZ0yA,1297408
-PyQt5/Qt/bin/libssl-1_1.dll,sha256=9bp-70QK2fg6fVkjZJnEEteEmhhWtaXGicRjXbNfJ6c,530432
-PyQt5/Qt/bin/msvcp140.dll,sha256=RsAPLMVZ47lIMl9aOLCcKhPeD2F1vq8ZdC_CGkbyUWQ,447024
-PyQt5/Qt/bin/opengl32sw.dll,sha256=Ja51d-Bm-oBRmo8cMUsVzdIuSo0-zSo27Mx55AcUqR0,15995904
-PyQt5/Qt/bin/ssleay32.dll,sha256=8V8uBIS_AVhW-q1qxUy0puh1GAbIqWRNoyvVj5xVUhs,281600
-PyQt5/Qt/bin/vcruntime140.dll,sha256=6YXU0toXESibCmei2rQALvLNpex-J_V2sOAm-m7yJKM,79920
-PyQt5/Qt/plugins/audio/qtaudio_wasapi.dll,sha256=de4F_Ow9FK0XrLaoDA_cpt2TOmf5vBF_0cDIYl_4hvk,87672
-PyQt5/Qt/plugins/audio/qtaudio_windows.dll,sha256=I31_9nffNoMp0LDJafnHtpF5OVovL29h9WfjZ7cnoRQ,53368
-PyQt5/Qt/plugins/bearer/qgenericbearer.dll,sha256=QFtkhiXP63wUWeeBAcSLzanxNYTKgh_3DYIHCMO-nws,43640
-PyQt5/Qt/plugins/generic/qtuiotouchplugin.dll,sha256=IO9cJ5XuYd7hNDle_0HOvoycoJnP1X5zUplglDD6xYI,56952
-PyQt5/Qt/plugins/geometryloaders/defaultgeometryloader.dll,sha256=zssAAjHqQvyeFN67FwMZlQGKDkKTD7fJcb3stsWWTZE,67192
-PyQt5/Qt/plugins/geometryloaders/gltfgeometryloader.dll,sha256=JeXiBytQf1xBM_nrkRuQFOfsfPJM5p8qUVP43TH3Kys,48760
-PyQt5/Qt/plugins/geoservices/qtgeoservices_esri.dll,sha256=dh9YB4NhJvQDgs55lle5Ru6nM2aF-PlEiWDIRGexeM8,160376
-PyQt5/Qt/plugins/geoservices/qtgeoservices_itemsoverlay.dll,sha256=r1dIeefnaOnX5kOqQ7_XJTv3cGG2fioMLogtquddYfM,33400
-PyQt5/Qt/plugins/geoservices/qtgeoservices_mapbox.dll,sha256=YFtFWm2FAEEI5cG9-4YH8bslLQy-gHniOFSQMdVvclA,358008
-PyQt5/Qt/plugins/geoservices/qtgeoservices_nokia.dll,sha256=da8cxExseip8JVpDShbaZDIVmMDfRXC8cbr4Jeodh1c,283256
-PyQt5/Qt/plugins/geoservices/qtgeoservices_osm.dll,sha256=VEIhz99sdpA9xBvOMOawimUjXbka7nN4CLqv5jJGOj8,192120
-PyQt5/Qt/plugins/iconengines/qsvgicon.dll,sha256=2eKV12pdc8M9pnoDJsK9Q7kLe04Z4DpGN8Sg6razzgQ,34936
-PyQt5/Qt/plugins/imageformats/qgif.dll,sha256=2-NhAiJH0OIDCuRyA9Rtpzm6LB_o4_pxfVqNGKTtL7Q,31864
-PyQt5/Qt/plugins/imageformats/qicns.dll,sha256=vVxbkgJ9f6WBoc-de9aAGHCB4CEPkMiM64Y2ZLXaIhw,40056
-PyQt5/Qt/plugins/imageformats/qico.dll,sha256=SGLfX265WjXedy1vwznWv2EbX3sZfU7fuj4r1C9OhRA,31864
-PyQt5/Qt/plugins/imageformats/qjpeg.dll,sha256=285j7CutQo9GfIl1o9Kvn7GS2x4I9pcoWuXDL-pt3Es,371832
-PyQt5/Qt/plugins/imageformats/qsvg.dll,sha256=KhsZ4BRWPjs8zaACVgT5TAhCdZjMjFNPGLEqM0Cyf_w,27256
-PyQt5/Qt/plugins/imageformats/qtga.dll,sha256=AxF27dwLyg2_0o1a2X9_uqowDvRu6T1AoLtzRcLLr_4,26232
-PyQt5/Qt/plugins/imageformats/qtiff.dll,sha256=VnPKTcezVpMjLvSDHvZuOoYGO92qU-MDBp_aHZjlDqc,345720
-PyQt5/Qt/plugins/imageformats/qwbmp.dll,sha256=n99slD0TWUFgBCmbIg_2DoHu75EA2L-bRD3STVv91ZY,25208
-PyQt5/Qt/plugins/imageformats/qwebp.dll,sha256=eIM8FFE7lOgqWBS35pxiBNlfiTIoSGm7M4h0H84MFCI,434296
-PyQt5/Qt/plugins/mediaservice/dsengine.dll,sha256=IqPAJ4fSLSpJ0-YIRP9-O6MT-N-3gUNfkSomb3bsXCY,257144
-PyQt5/Qt/plugins/mediaservice/qtmedia_audioengine.dll,sha256=Imm2gdEqhdIBWLR5B5gxtjeRYTQ2gp4d9_HN7bMdDf8,55416
-PyQt5/Qt/plugins/mediaservice/wmfengine.dll,sha256=g_Dg2cBV-VZF2J4OlJoQuD2ZLQ-GprN_CtvFQgt0scI,178296
-PyQt5/Qt/plugins/platforms/qminimal.dll,sha256=ZPEplIU3NHWlU1e6v3xwafSSF_VGUwRPx2YcBUPJBhQ,696952
-PyQt5/Qt/plugins/platforms/qoffscreen.dll,sha256=hFZuLsf36hMdlR4pWonQxg_TyvHNOQVXWifOEgN6peA,619640
-PyQt5/Qt/plugins/platforms/qwebgl.dll,sha256=wNbrrN3TmTVUwPh_3lCn0bvwL1M2uTnncOYfcrMnMLI,559224
-PyQt5/Qt/plugins/platforms/qwindows.dll,sha256=JWX-ERG_C6a5hoMDC42pL3fah30KmB9xIYTkzlAYtyM,1221752
-PyQt5/Qt/plugins/platformthemes/qxdgdesktopportal.dll,sha256=apAueUjPQI3TbKwsWeLieerBWD3DjL4SH1C0sSeh5m4,49784
-PyQt5/Qt/plugins/playlistformats/qtmultimedia_m3u.dll,sha256=Au-flyMjbayMHY8CAPD64hb5vpgh1s7e-wIp_1rKPS0,28280
-PyQt5/Qt/plugins/position/qtposition_positionpoll.dll,sha256=Lu72SRT0OlO3-WamfszjUFFuo_Ki31Fa5rxel-TThgw,39032
-PyQt5/Qt/plugins/position/qtposition_serialnmea.dll,sha256=wvfSKm5EwhkTVPNnX7rjeq-X2OSCewDYOi6zwb9yyjQ,54904
-PyQt5/Qt/plugins/position/qtposition_winrt.dll,sha256=J7AkPGvBQF-PKdDIH3R0dzOTBXQQTNvk5axaQlKuHRs,47224
-PyQt5/Qt/plugins/printsupport/windowsprintersupport.dll,sha256=BTU-cUvzOsMAxsxX5S7DTXnZBwgS3kk8KJNdMQRN5dY,44152
-PyQt5/Qt/plugins/sceneparsers/assimpsceneimport.dll,sha256=BTybu0UmeAG_Qq7qSyI-BBeTA1kP34TVevB1lA5SRNY,3914872
-PyQt5/Qt/plugins/sceneparsers/gltfsceneexport.dll,sha256=drEuGbAwM-8CsGzcJtNX-fwD7gju0elwWUycUFbFmPU,173688
-PyQt5/Qt/plugins/sceneparsers/gltfsceneimport.dll,sha256=-6C7t0B4dD9CU4lK8H33U7ZJcC1cCpCLusuOBs61Iog,168568
-PyQt5/Qt/plugins/sensorgestures/qtsensorgestures_plugin.dll,sha256=ybvX9ng_UzZB1G2aavEeZfLayg49o6QATQCjqujTOLs,68728
-PyQt5/Qt/plugins/sensorgestures/qtsensorgestures_shakeplugin.dll,sha256=zE8PyCoIIyyrZPMC_rmu-YjB5ThSO3e__9qzSSuPKAU,26744
-PyQt5/Qt/plugins/sensors/qtsensors_generic.dll,sha256=ZwpKthA57-tASJFlHoLFZVBsf-AAua_2DcL2-Obml2k,36472
-PyQt5/Qt/plugins/sqldrivers/qsqlite.dll,sha256=HGaUkFYgOuNQrWp61SwWfGsm97ljv6BkhI4USx5k_WE,953976
-PyQt5/Qt/plugins/sqldrivers/qsqlodbc.dll,sha256=_sD89bnrev95-Md79yXn9hxrkvOxA1HqBqmGL1kYyC4,73848
-PyQt5/Qt/plugins/sqldrivers/qsqlpsql.dll,sha256=hwjXZqFmXDQ8Upfh2It4V5CiRFM5tUFrEX2l72lC4Og,72824
-PyQt5/Qt/plugins/styles/qwindowsvistastyle.dll,sha256=QkuiYDMs8de0WBMDLsupFQ9Z-1xflm6uY2deN249DtE,128632
-PyQt5/Qt/plugins/texttospeech/qtexttospeech_sapi.dll,sha256=H_xS2zSpZY6Sllf5zBU17Y7Qy9UsfngbZqK47wyFFyU,35448
-PyQt5/Qt/plugins/webview/qtwebview_webengine.dll,sha256=Ox2Ts-AwukFxiCdxvzMkmjPw37b4KAq31unBnj81_O8,30328
-PyQt5/Qt/qml/Qt/WebSockets/qmldir,sha256=F-CMOo3Sw1-SS8-Ak4ixi_WJaqmPb6ECMFM2XNc59ng,144
-PyQt5/Qt/qml/Qt/labs/animation/labsanimationplugin.dll,sha256=lXSLwEgiAZglb4-yR3-0gUeG7B-JPBxXur9xj1YJ_8s,23672
-PyQt5/Qt/qml/Qt/labs/animation/plugins.qmltypes,sha256=uAKVuA_MB3dRSVV0Sk731tQw7yoSQuf0W54sG8VUMIw,1415
-PyQt5/Qt/qml/Qt/labs/animation/qmldir,sha256=yk-ntU5finbbRnqvnKaykmExEmBaDSUY9jvlmTTY7ew,87
-PyQt5/Qt/qml/Qt/labs/calendar/DayOfWeekRow.qml,sha256=F0UdLIddgT_9Zp7IxZX1DaGyiAIAQLhZeBkpVpuQsYk,2709
-PyQt5/Qt/qml/Qt/labs/calendar/DayOfWeekRow.qmlc,sha256=ohhUJPICLT4OK2UGLqNLJXdkWWxDnY6_oAd-T_CuB4s,4324
-PyQt5/Qt/qml/Qt/labs/calendar/MonthGrid.qml,sha256=DGlvOIDLMm99u09OsO2c6VG8ZDfZyUidZW3defWXvwg,2777
-PyQt5/Qt/qml/Qt/labs/calendar/MonthGrid.qmlc,sha256=D4kR27sMHnojhS3EtV-DbYHmPgKySjMSlj25iauvVWQ,4848
-PyQt5/Qt/qml/Qt/labs/calendar/WeekNumberColumn.qml,sha256=HopTZTzg_x3eGEn-1NzI5w4XHresvhpyBJtgeXUbJZU,2717
-PyQt5/Qt/qml/Qt/labs/calendar/WeekNumberColumn.qmlc,sha256=sSPbmJB6cl6PHji_N9WBseq9__YkH_D98i86uxgC414,4340
-PyQt5/Qt/qml/Qt/labs/calendar/plugins.qmltypes,sha256=S-KsNaDY2FVGGJV_lfWm9sBHUkMflvqEjR6Lhs27H-E,17167
-PyQt5/Qt/qml/Qt/labs/calendar/qmldir,sha256=axS3YKOePFVGuY5XJeYeBtKA2nVmm7WBA95d-B2L7vY,193
-PyQt5/Qt/qml/Qt/labs/calendar/qtlabscalendarplugin.dll,sha256=VS4mjjwiioSljSWZ_bajEgwqm_y7-WLZQTFPo9QtOXE,82040
-PyQt5/Qt/qml/Qt/labs/folderlistmodel/plugins.qmltypes,sha256=9Lzru8IkmvMWb9G8UOu3N1by8B34qc1rAImxUfMfOSg,13329
-PyQt5/Qt/qml/Qt/labs/folderlistmodel/qmldir,sha256=91uzI9_CJdFx2xEuUJ40zHRQeGy3Eg30sfCFpRDftzk,128
-PyQt5/Qt/qml/Qt/labs/folderlistmodel/qmlfolderlistmodelplugin.dll,sha256=0fdBRvnIa2yz7QfQQg61McyVmJKA-ALaZ7hWQwEU4lA,55416
-PyQt5/Qt/qml/Qt/labs/location/locationlabsplugin.dll,sha256=D_UZf6OagxpEwl59jM-D1gjhKmLAmpvgr64JsCp8VnE,44152
-PyQt5/Qt/qml/Qt/labs/location/plugins.qmltypes,sha256=CH1NmFzCwM-b1vcrU9wxO2x8aFWQiE2RMCedMMpfTSc,9913
-PyQt5/Qt/qml/Qt/labs/location/qmldir,sha256=zlLfFqFTshiaWrnS8qCxuTN4HMx6i7PkJyCO7sFKSJE,122
-PyQt5/Qt/qml/Qt/labs/platform/plugins.qmltypes,sha256=eMvm66sjO2KtYDzuvIsPEKplWdQI73v92UdwkPXQZCA,19431
-PyQt5/Qt/qml/Qt/labs/platform/qmldir,sha256=LAX72WmKMpZIe4t02LI1T8CuOaRVnFqDZwK1mB-m5cA,86
-PyQt5/Qt/qml/Qt/labs/platform/qtlabsplatformplugin.dll,sha256=_crgHnVspL93Vbfbcpz6Ut-GzT2IxVTc3yZqpd3g0vc,184440
-PyQt5/Qt/qml/Qt/labs/qmlmodels/labsmodelsplugin.dll,sha256=5-JdC5s5q7VsVZv_Co5ixrpisUeRtlaTwcoKK8gYGwY,20600
-PyQt5/Qt/qml/Qt/labs/qmlmodels/plugins.qmltypes,sha256=bG_yjg_jXv_6AhvM0wJzMw-Vrwp-zdyNDzaZq5sUJUc,16194
-PyQt5/Qt/qml/Qt/labs/qmlmodels/qmldir,sha256=0U7_BqqVNJ8a88cUxW74XFblPQsQ6JMZY_XXjwmKjho,84
-PyQt5/Qt/qml/Qt/labs/settings/plugins.qmltypes,sha256=aSD66uLrGFxNIJLp1udyf6Pn-eNTgdtkv3OapXPG_Dg,1159
-PyQt5/Qt/qml/Qt/labs/settings/qmldir,sha256=SVIq9ASI5S6KHe2otR9ZHfGsyhYFM2eE631CmeWvAuw,107
-PyQt5/Qt/qml/Qt/labs/settings/qmlsettingsplugin.dll,sha256=SVUm1eJuvDcOKyZBMtRN05eSMQYGRA8SER7u9ePkyos,35960
-PyQt5/Qt/qml/Qt/labs/sharedimage/plugins.qmltypes,sha256=Cl0hvq2010R6UumyRM1rhC51EUf98VE-x2_0HHvovwo,303
-PyQt5/Qt/qml/Qt/labs/sharedimage/qmldir,sha256=eSWN3IH7aAkGDU5v-9L4dtRS90kQ4OVVQ4GHBQGKWZQ,90
-PyQt5/Qt/qml/Qt/labs/sharedimage/sharedimageplugin.dll,sha256=bTpmUIUj38OxahLVXk6LN7AmbwZatzC-FIOq9RTnrF0,36472
-PyQt5/Qt/qml/Qt/labs/wavefrontmesh/plugins.qmltypes,sha256=l3uILqd_OR-ZY8Wfqp5O6flhuQHiuD6f0b_QU3EpIvo,1396
-PyQt5/Qt/qml/Qt/labs/wavefrontmesh/qmldir,sha256=0XxQJpJq8oWm9fYyzarbAWlQCZWH19WgxNo2w6qZV5I,122
-PyQt5/Qt/qml/Qt/labs/wavefrontmesh/qmlwavefrontmeshplugin.dll,sha256=ig3vTTmPAGcT1cp3sz8rMlwFIA99WtAG1XgKRAi0s30,40056
-PyQt5/Qt/qml/QtBluetooth/declarative_bluetooth.dll,sha256=-prTEsXZp7S6F7_0IqEY5AYVU0itAxGPHYuA2KWz_xA,71288
-PyQt5/Qt/qml/QtBluetooth/plugins.qmltypes,sha256=M6qhqmu9DCXiYF_X6OI2mBJMHfShT1SfPiSQdoPw_i0,15195
-PyQt5/Qt/qml/QtBluetooth/qmldir,sha256=hFDP76dCDo5vc4upzMdvZ60UARVFMbMUKDh0rMMHLyg,108
-PyQt5/Qt/qml/QtGraphicalEffects/Blend.qml,sha256=rrZ-CeCIeEhPDBNRqI-CPUqdBjxZ7zP1Y5l0ei8FhkE,19778
-PyQt5/Qt/qml/QtGraphicalEffects/BrightnessContrast.qml,sha256=mAYL_RI9LuigD8bp6hx2k5DvRJyuaTQ7hLPTYCdpy7E,6585
-PyQt5/Qt/qml/QtGraphicalEffects/ColorOverlay.qml,sha256=MNlzYO_hPAKXdFE-YXa_aMj6x8h_jgPd5FjIMheEuhI,5095
-PyQt5/Qt/qml/QtGraphicalEffects/Colorize.qml,sha256=yXvOqBHcWdSA6YVxlqxVPUhjulN4MEC9_H9eM51CmGU,7876
-PyQt5/Qt/qml/QtGraphicalEffects/ConicalGradient.qml,sha256=8zHhz6Exw4OGA5SDM6FyaIeBdibm11aelUDghN8NYHU,10264
-PyQt5/Qt/qml/QtGraphicalEffects/Desaturate.qml,sha256=pN_zmVGSZ_rPsvIgM8ZaA_H0cncc7x35HNhxTMdV65g,5079
-PyQt5/Qt/qml/QtGraphicalEffects/DirectionalBlur.qml,sha256=jmC7fJLZdyONUoCFh7oNymZNYRkni1RFO_B2V8gVyHI,11031
-PyQt5/Qt/qml/QtGraphicalEffects/Displace.qml,sha256=1XW8jAQZtC2hiBwRKr12-J_j5NEV0u9muqYMk5Hy4j4,7217
-PyQt5/Qt/qml/QtGraphicalEffects/DropShadow.qml,sha256=8RAfQYFvPFGO93B3y9y-sV9PgRnbO938CVnKPExF_fM,12506
-PyQt5/Qt/qml/QtGraphicalEffects/FastBlur.qml,sha256=APbsoes6FzDAnWZX6KAPu_rElE1tY6wvtkvWTUj2SRo,13881
-PyQt5/Qt/qml/QtGraphicalEffects/GammaAdjust.qml,sha256=9Ep3yAZ9Dg_rRc803PkDzl3iWcSB546FPtp7k0DNl2E,6235
-PyQt5/Qt/qml/QtGraphicalEffects/GaussianBlur.qml,sha256=VEWzWR6J1pbosgd6o10_75dZ9j4aTVTQ60gh3z0linQ,13601
-PyQt5/Qt/qml/QtGraphicalEffects/Glow.qml,sha256=ketmJMSJxQbFTsr9weyXA6JqZkmVyDO6dLadP0jAmxg,10025
-PyQt5/Qt/qml/QtGraphicalEffects/HueSaturation.qml,sha256=R-kFTVMJkO1FZQ8qvY6SEqP_XWOy4grrskmz9BQhZgI,7419
-PyQt5/Qt/qml/QtGraphicalEffects/InnerShadow.qml,sha256=C7ta8uWP82lpN1YNpQLchE15Kibh78c_elFl5BAiQ4Y,12859
-PyQt5/Qt/qml/QtGraphicalEffects/LevelAdjust.qml,sha256=h7Kt4_nmxcew5fLrLx758OVD1Cj8YqytWM2NOp_XsYg,15891
-PyQt5/Qt/qml/QtGraphicalEffects/LinearGradient.qml,sha256=IfPiz0L4pClFgAjvoVXG7phP2dLZb6W1ybAnq5u0XuM,10829
-PyQt5/Qt/qml/QtGraphicalEffects/MaskedBlur.qml,sha256=cLXJQ38JP7wr_USMfAiMCifBFB5fWSxCpDaujxnLAUM,7807
-PyQt5/Qt/qml/QtGraphicalEffects/OpacityMask.qml,sha256=Lj3nxANLH50zdqgnz0qakQ42QxtdXF0ALC_cKrwFBW4,5585
-PyQt5/Qt/qml/QtGraphicalEffects/RadialBlur.qml,sha256=ZdFlEnScm48wcmVDSkwJurMYjknE79x0Bl-x9PD7y3A,12345
-PyQt5/Qt/qml/QtGraphicalEffects/RadialGradient.qml,sha256=kr1m4Ql_IEEaJ3QaNGyI5Htvnsa1YP5aS6L3VrRBiuo,13745
-PyQt5/Qt/qml/QtGraphicalEffects/RectangularGlow.qml,sha256=1CoC2SCQFm7IeEJfKAYQNMl28wEtGrZmNCfiL4R3W0E,9305
-PyQt5/Qt/qml/QtGraphicalEffects/RecursiveBlur.qml,sha256=oV7G0AFoszaQBMQG5ROnHBwQgt8vZuoIapuVbiMYnl0,11649
-PyQt5/Qt/qml/QtGraphicalEffects/ThresholdMask.qml,sha256=LzWT9Pvskhod4DMcRDUFsPcKouQINMWhF14piHRYW0Y,7462
-PyQt5/Qt/qml/QtGraphicalEffects/ZoomBlur.qml,sha256=V9P7n_TU9dPNM_y_Re8VbMdKO9GjmnbLa-r5j4Z2bf4,11760
-PyQt5/Qt/qml/QtGraphicalEffects/plugins.qmltypes,sha256=GJ_1RmzDNrLp79y3UndduSDZ0OWQFu5cCs1KgGZ4Qm0,327
-PyQt5/Qt/qml/QtGraphicalEffects/private/DropShadowBase.qml,sha256=jPAJQfIm-4sVpHb7LKkC5T2LcJIHeomlDc9NOzk7iZY,3802
-PyQt5/Qt/qml/QtGraphicalEffects/private/DropShadowBase.qmlc,sha256=GMNWRM2vEnYxgASSsvMbW4Yk6iS0buwMUIyeY7vwB1Q,7360
-PyQt5/Qt/qml/QtGraphicalEffects/private/FastGlow.qml,sha256=rSIhKVChyNmwn2-gOT-MDnAs-swFJBsNXfDT0rqc76U,9961
-PyQt5/Qt/qml/QtGraphicalEffects/private/FastGlow.qmlc,sha256=9dOKTWF_hjgq4lmyy9KMKO76FDSLYpaQAeqBlqY7CYs,21288
-PyQt5/Qt/qml/QtGraphicalEffects/private/FastInnerShadow.qml,sha256=w-39p8NnfZRoHgAsHOYtG-oHSgSmIyvDmFNEcPCeJXg,10099
-PyQt5/Qt/qml/QtGraphicalEffects/private/FastInnerShadow.qmlc,sha256=tPwxesTshkCMW7oltasc8jj4C8OQm7jThPmrSsz9v8c,21648
-PyQt5/Qt/qml/QtGraphicalEffects/private/FastMaskedBlur.qml,sha256=0hxVIyJ8wkRDxaM9idepV72iN26uFrnStvvlrtfWhDM,7916
-PyQt5/Qt/qml/QtGraphicalEffects/private/FastMaskedBlur.qmlc,sha256=M2rf9XirVp0ubLM7LE2M-Ig91D08leaVaH69zQg7GxY,19676
-PyQt5/Qt/qml/QtGraphicalEffects/private/GaussianDirectionalBlur.qml,sha256=iD0di_YumO59RZDWR9wbXgskITxkb-n2yRyAa1niJ38,12752
-PyQt5/Qt/qml/QtGraphicalEffects/private/GaussianDirectionalBlur.qmlc,sha256=OaTZhbg5Jpow-N8yvDkNYcWSNzAuRney1Fpm3K0dO84,26568
-PyQt5/Qt/qml/QtGraphicalEffects/private/GaussianGlow.qml,sha256=BNmmNDX2yHI6B0QnR1DjBTddY1Mt19IVUmUBxm3QxpA,3823
-PyQt5/Qt/qml/QtGraphicalEffects/private/GaussianGlow.qmlc,sha256=px77jiudrbQrKJbfy-rp8f3RuD300zDz0IH96hlQulQ,7520
-PyQt5/Qt/qml/QtGraphicalEffects/private/GaussianInnerShadow.qml,sha256=5H20BIjDyq6Bgm9KBwviLy_D0nIPaeY1nnzwJxIbtSQ,4345
-PyQt5/Qt/qml/QtGraphicalEffects/private/GaussianInnerShadow.qmlc,sha256=8BLYvRYTbl1Cu7a95WM-il57KbMM6PtZXAs4ZbAUHRA,9216
-PyQt5/Qt/qml/QtGraphicalEffects/private/GaussianMaskedBlur.qml,sha256=mKOfNyvHptyDpOflG1bSqoHkWNsbOqBYULPCLPTC-dw,4041
-PyQt5/Qt/qml/QtGraphicalEffects/private/GaussianMaskedBlur.qmlc,sha256=CBN5Gd8fMVs0uTJoTc0m7xzcEpwPcQNl1ZW_Bsl8xPk,7796
-PyQt5/Qt/qml/QtGraphicalEffects/private/qmldir,sha256=12gcTAySfwfu-GOhVuJUveC_60ig7qiPE1uAMlqnf98,446
-PyQt5/Qt/qml/QtGraphicalEffects/private/qtgraphicaleffectsprivate.dll,sha256=qzcNYkkz0QWKRCmXvcfTlgMN-gq9qGrBOWTP1AUGqx0,52344
-PyQt5/Qt/qml/QtGraphicalEffects/qmldir,sha256=ozrGSk2kGRZup7SY9bVXO4sPPZBox1BsaRHxf665R_A,1016
-PyQt5/Qt/qml/QtGraphicalEffects/qtgraphicaleffectsplugin.dll,sha256=vBUFNxK_hnAee0caOdR5lXxenICqduArx_0_Epv8TBI,62584
-PyQt5/Qt/qml/QtLocation/declarative_location.dll,sha256=8oKLXT-RdM8DeUXP2lpyImADhHlySxVQKuIFdZmCvB8,148088
-PyQt5/Qt/qml/QtLocation/plugins.qmltypes,sha256=sv2GQEKF9Zw8DjThOB7_MMTkUNHjKOsNFJmIYYHScao,70426
-PyQt5/Qt/qml/QtLocation/qmldir,sha256=2EbLEOQJqhaiFrQ11QExP0t6Yur-EVjVLrxtjLos820,114
-PyQt5/Qt/qml/QtMultimedia/Video.qml,sha256=3F-FuNBF-kYfJa7iNJIfsDBSd3uOrfflMAOgfFMeO6c,17256
-PyQt5/Qt/qml/QtMultimedia/declarative_multimedia.dll,sha256=S7f2yzvjDW8ZMQUknLv-8BbyM-BheNuhGe0XuPrC9Po,234616
-PyQt5/Qt/qml/QtMultimedia/plugins.qmltypes,sha256=-BmHldQyzyXoR1d9CSsMmF-LAR3kPYNyaAcAg9KaiyY,78086
-PyQt5/Qt/qml/QtMultimedia/qmldir,sha256=vjgxIJRjQFqWWnxmoXjU__0MLxDeFo6_hRzAll0sINM,140
-PyQt5/Qt/qml/QtNfc/declarative_nfc.dll,sha256=89DoaQBlQjkdiNg8R5H4hMMTtXKAhZwiaNSJZaHBg6s,51320
-PyQt5/Qt/qml/QtNfc/plugins.qmltypes,sha256=dYAsw4yf7DG4skfhNW1Khw7AaLUbOBCMkUSc0mlX8Pg,3433
-PyQt5/Qt/qml/QtNfc/qmldir,sha256=4pk_6SdF6_bKDRVUKT2zRRYcpBmidmMutyuJlG93Jwc,90
-PyQt5/Qt/qml/QtPositioning/declarative_positioning.dll,sha256=v43nLKszju8UQ7NdacH-f5UvUC_BiWDpwtS8xSyqh3M,59000
-PyQt5/Qt/qml/QtPositioning/plugins.qmltypes,sha256=iCf7QHoKDaxYeqWLphoXsoZX4oqe8uIRcgKsslPVew0,12433
-PyQt5/Qt/qml/QtPositioning/qmldir,sha256=0it1dvTnuhmzZmYJsZQxH536RB-NRoumS63NhX8cAIA,123
-PyQt5/Qt/qml/QtQml/Models.2/modelsplugin.dll,sha256=h6nlXaM7Lqf1bNA3WTOf6_oT1k4Eh8Jpu7ORZH-3MJ0,20600
-PyQt5/Qt/qml/QtQml/Models.2/plugins.qmltypes,sha256=CTG3S4IP-zCvMA7RyxCA9-y7tSU8A2jWh_HHsk0xctk,26370
-PyQt5/Qt/qml/QtQml/Models.2/qmldir,sha256=YvUPm5rjueZijdJmCxjTJsQXlFhuDXay5A9vpLGC4Kc,90
-PyQt5/Qt/qml/QtQml/RemoteObjects/plugins.qmltypes,sha256=6q9b8CN2r2u6YXDqHViDk8t5G7ZzwcGKGODvmaqITl0,2504
-PyQt5/Qt/qml/QtQml/RemoteObjects/qmldir,sha256=RreTK2Q8EfxAJouu3FgASnDxE1xQzeXUvCt4QYZPvBI,91
-PyQt5/Qt/qml/QtQml/RemoteObjects/qtqmlremoteobjects.dll,sha256=yrbIHBH8qJrsQnY9YMqA9l8tdgm1_I6wO8ZgDRNZY54,27256
-PyQt5/Qt/qml/QtQml/StateMachine/plugins.qmltypes,sha256=fyC0FZfxesgI_PlSpprwa3dAv01VBH-qHa3J3Gda6jg,6380
-PyQt5/Qt/qml/QtQml/StateMachine/qmldir,sha256=U0RBWxkofBY7MDG7B6L86MwW-NBxVoK_gD1JfQVX-d4,115
-PyQt5/Qt/qml/QtQml/StateMachine/qtqmlstatemachine.dll,sha256=kjEpdbnxs3ShFPwloXkeAP7Dn-i3oF1Xhi0fQfGsifA,57976
-PyQt5/Qt/qml/QtQml/WorkerScript.2/plugins.qmltypes,sha256=tj-goBQ2xOxagTK9pdagTtN0G26S6YT-Du-6JoaXbRM,815
-PyQt5/Qt/qml/QtQml/WorkerScript.2/qmldir,sha256=PEG7mS0ievwcYTpP7cEnEhxLyXA_Y5jKybCHZv0_Y8k,89
-PyQt5/Qt/qml/QtQml/WorkerScript.2/workerscriptplugin.dll,sha256=HAob-GWcsOd57kaoodncBkYDlWFvJYEybOurAMPGCFo,20600
-PyQt5/Qt/qml/QtQml/plugins.qmltypes,sha256=Isuov3RB-7er0fOjlKRBpPBB0tYWQWgNtl4mxIJ7prE,8232
-PyQt5/Qt/qml/QtQml/qmldir,sha256=kxUWmFsMC3f0kBTyZnuAxNa8Dmvr0_Ue7wGk1QSGX-4,82
-PyQt5/Qt/qml/QtQml/qmlplugin.dll,sha256=wqLzlP5sr3oM6h5c3JeNbIhfy2k3B-lrY736Y0bbv6s,20600
-PyQt5/Qt/qml/QtQuick.2/plugins.qmltypes,sha256=iIjLblchIu2T6RyOC4AtynMQCUpohfKWaFAGWeHZdks,218638
-PyQt5/Qt/qml/QtQuick.2/qmldir,sha256=foRAAMH2HbNxc-6VMBKYHVM8lQ5_t3LCZyynTc_bkUs,111
-PyQt5/Qt/qml/QtQuick.2/qtquick2plugin.dll,sha256=nExTCgqaSCFqYgWFCxqe9O2ruVe1Q_Z-kzGc3KrXACA,21112
-PyQt5/Qt/qml/QtQuick/Controls.2/AbstractButton.qml,sha256=c8FlLQMmBJ2dQ-8k0V7d5HTRp2S9ffy487g8KCPZhcE,2196
-PyQt5/Qt/qml/QtQuick/Controls.2/Action.qml,sha256=Uj3g770s2740KrqwHorrGrDMAdhAridxL4cyRkbbHUg,1846
-PyQt5/Qt/qml/QtQuick/Controls.2/ActionGroup.qml,sha256=r3r7T4_W6YyttI5tb973jvSNhhfAfR4OqpJ9P_D1ABw,1851
-PyQt5/Qt/qml/QtQuick/Controls.2/ApplicationWindow.qml,sha256=E673KcCowQtNLHzcLQfECIN7xLAbq48eS38PVlvnhbU,2206
-PyQt5/Qt/qml/QtQuick/Controls.2/BusyIndicator.qml,sha256=nV8ri3MkPG-mti7bsqfhCkYf2L4p2dxPijUtsrib9yw,2598
-PyQt5/Qt/qml/QtQuick/Controls.2/Button.qml,sha256=sosfcm3dXLQIxx9H7GLZ9OVVS698gToUQI7YnhnQw1o,3597
-PyQt5/Qt/qml/QtQuick/Controls.2/ButtonGroup.qml,sha256=E5TQp708ENAzQm5fuVy533X7w_4ili8VL56zNINlKP4,1851
-PyQt5/Qt/qml/QtQuick/Controls.2/CheckBox.qml,sha256=N2w2-LuB69bXygm8ytlfnvMHuiBS2jjdByKLdInFuvk,4022
-PyQt5/Qt/qml/QtQuick/Controls.2/CheckDelegate.qml,sha256=-kZ0kyu5tPNXF0hEC0FBoMI6bduHDegIQIHGuSbMXlc,4478
-PyQt5/Qt/qml/QtQuick/Controls.2/ComboBox.qml,sha256=F5lZe2uRvYRGW4YyQw0F7zpzjA3rz5HbECBclmYkgHc,5877
-PyQt5/Qt/qml/QtQuick/Controls.2/Container.qml,sha256=mjXcfufO10RI1Z_hKh4MKJVphkvMXvDPZDtzqKzr4P8,2175
-PyQt5/Qt/qml/QtQuick/Controls.2/Control.qml,sha256=w2ww_YPM0Io0x4aE6pX6kCd3EIw6MoVYDctRulZQ0-0,2189
-PyQt5/Qt/qml/QtQuick/Controls.2/DelayButton.qml,sha256=1TQJ_pTPq59gSFyEcmE7t4BvEGLCld2d8fvbYeGqf1M,4163
-PyQt5/Qt/qml/QtQuick/Controls.2/Dial.qml,sha256=DwArEfhF7Cuj-o2kDOta3aBQ4N5fdbjwfJiqtEmW4QA,3493
-PyQt5/Qt/qml/QtQuick/Controls.2/Dialog.qml,sha256=WpxfzyUVEQewpNt4YU75TCFSsaXOJT-moVAeRhHPd9I,3310
-PyQt5/Qt/qml/QtQuick/Controls.2/DialogButtonBox.qml,sha256=QJE31l8rccWXKzt-W_Reg3YBWe1eV5iAIERdjIShGAY,2924
-PyQt5/Qt/qml/QtQuick/Controls.2/Drawer.qml,sha256=koJn5WJ6FSF72pi6c5ZZGMus_DW5IDVSNKB9mzA8IzQ,3301
-PyQt5/Qt/qml/QtQuick/Controls.2/Frame.qml,sha256=2yVhJKmUxjAPnWR-Jyil0CkOp75TIqISxQG0d4Gjs90,2366
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/ApplicationWindow.qml,sha256=fAC4GVhqaAqEOUjM3tQtXkxrgggTJLMC0_FPGPeB8u8,2160
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/BusyIndicator.qml,sha256=0LXs1pvUcFmczYYCiBr4_aH4-JvmbijodPAEKWyAKpg,2864
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Button.qml,sha256=2Qu63_RbFGM1juxJQFZ5mrFWCH7G8DeXYUubBzHi6FM,2936
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/ButtonPanel.qml,sha256=JPamcTiTcVGfOM4VHmQkNde8VO5IxmwxCA_Z-NRUW3k,3115
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/CheckBox.qml,sha256=Zhg-UNAcFtP6TWix77Mx9wXW6d2mH6ZxMbJUzSvAO3s,3199
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/CheckDelegate.qml,sha256=J7h34DJlg5qsls7GE5l5e0CaNGcJXjSqcVIkvAJ6zFw,3676
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/CheckIndicator.qml,sha256=q3G2X9zLWqce1BCIhejKEZBvPHciamVRAU4OkfkGznE,3722
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/ComboBox.qml,sha256=x1TKtuaDX8MFf8K4WlR4o_F2WsAa33XCTVhi3YPAwCM,6705
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/DelayButton.qml,sha256=B7Q1DcKkJEPuWKCx9f-46b1_NvIB87-6OpAelJaOScA,4553
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Dial.qml,sha256=oiCpILE2tCsAZL5tEJwMU4APDF3pfXuUC6RBHIsHpHM,3255
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Dialog.qml,sha256=3KjTFYDuYo-EGRKcldFBr3OPU73OYE-muOMQRjf8wyg,3604
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/DialogButtonBox.qml,sha256=0n5U1xH7FeqUeB50-SZ410Dylqve8iY0ON3nshAgo7w,2867
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Drawer.qml,sha256=2UUFYYd0pxJMR8cc_SeJvU5P3uHWfX_e6JTzQtXOzyI,3673
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Frame.qml,sha256=DsYA6VQUprHE6nb56W3dVN7x4taZSj99w-xxSkbPmkI,2474
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/GroupBox.qml,sha256=19dH8FpWcJfnD_zrY1kG9sHxA1TCZ2y7uaWmWQ_ZpUI,3141
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/ItemDelegate.qml,sha256=1dMREp7ixxKNWslEh418HYmDDZam8IZlx3KXbWqkhpU,3257
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Label.qml,sha256=PiLw0j9O4Xy8s6rg6bXpwiHjO4iHQE1L8aCv46epiCs,2085
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Menu.qml,sha256=mHxsdIlJsznwI_MQdx2_g1QWc__EzOBc3k17H64nDBY,3296
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/MenuBar.qml,sha256=eNvXb7e9PkgdbWNLbQjCegzvPNQwDxzNv1muklcJweI,2899
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/MenuBarItem.qml,sha256=8kl6mgwXEujVkgveUBoGmnQiGpc3zMnBtnY8HNn3h2I,3076
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/MenuItem.qml,sha256=g5tLn1037b2fennfBQ2SvWFYe-bYZ97jzlDeUxC70_g,4312
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/MenuSeparator.qml,sha256=_AnvEoszD93r1tJK_nqxwaXkRgZDD959gNQ6TawksuA,2526
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Page.qml,sha256=Ow-XD8M5HJ_PXzPQ_wv2lAgYnK-HaJGA9OjiFQvgIS4,2683
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/PageIndicator.qml,sha256=g6B4Jg0UeMuxFK90SSQLz93J2KT3QTCAA9DyCX25wJc,2845
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Pane.qml,sha256=v0NBftSl4DNQ4NeA99DJnGGCENLmh-dD7vN34KwUO50,2409
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Popup.qml,sha256=ugen8EifbMr-c3DcqDZ2-A6Nhu2QpOCDjMP1cHGBiFg,2627
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/ProgressBar.qml,sha256=nLSS7B477aYbOZ2zIruja3Q-45Gf_fLuHAJUVjjly0k,4445
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/RadioButton.qml,sha256=Ik9_iRTIAJNYjW5UEfTu3orA9MbtoyqX8etKZFuNVPQ,3202
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/RadioDelegate.qml,sha256=gsjmHzpekYRd5VGddKnnssZxMOCoGMzWCQhBgXuuaT8,3676
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/RadioIndicator.qml,sha256=oDoUygWSNrXBKQvCx9wKnOXgUd802Ifya-pXRdy8C6A,3186
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/RangeSlider.qml,sha256=NmQGznQi1vCpwAzaSPtkHkvnv4dmAI7SMmjzw5RA4DU,3855
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/RoundButton.qml,sha256=5Smqn5ZY-ZhFzscQi5GinK9kCg5g87vhqX_G9ePGbvQ,4110
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/ScrollBar.qml,sha256=L-cr6ePDi6dYu0ltXVw_R7AB6uq0cWt8gvAEVxNWZuQ,3290
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/ScrollIndicator.qml,sha256=Xsvek5GKCgSeKHQbXml_XscWr5YjtJ-ZZl6T_B7kZ9s,3060
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Slider.qml,sha256=iEO-pDEFdKCSdpnd9LXQ-HL0kMcKQJXHOm714BHNnzU,3031
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/SliderGroove.qml,sha256=TtOdFUFoqTAjJtFdEde1AWAoDzbGIzEifU7ybdC88FE,3771
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/SliderHandle.qml,sha256=WK2jDiFAzoQYr8t_Q1R9mkAyGgCCDtCaUFeYm2w8a3s,3181
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/SpinBox.qml,sha256=CvvaojV2-VvrEJJQ7euN-kHmZ2cy14CUDbBlO4PFAco,6907
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/SplitView.qml,sha256=jtq1F4KFNkpbpNXYX37XF3zeItjI5e5Yy6xSJEOrmj8,2632
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/SwipeDelegate.qml,sha256=MRQQQjSS1bFFodlHkjr6LIpfgQTXJNnrdJ4yVg_0BmM,3364
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Switch.qml,sha256=xI8Z4tbgUP4U0uWIuidKy--5mC4SgdMD1Djir-KpvjI,3192
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/SwitchDelegate.qml,sha256=fN2nsONgURwQ2UioowvYysbQBCb3cGZBZndlm9Ld2Uc,3754
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/SwitchIndicator.qml,sha256=VH_RxveNy3IyqFGg3_j46FcStrXYZ7M9JqLdzlZQqZM,5133
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/TabBar.qml,sha256=WztuiPqzfyA1Vjo-ZXZJyJCHw6pOiG0pdyvY8MwNjPg,3121
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/TabButton.qml,sha256=STNIxFkGqgGhey2nGPuVHRZ4TyxdSMIn-BZULT-uCgk,3862
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/TextArea.qml,sha256=W72xAythzoLH0BjRLnbxAcEQRe9c3ZkTvgd5N6j1CDs,3392
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/TextField.qml,sha256=0yIDvL8tDKmDfHkCMZOR7fgjwxP5W0g9CgnYP-C6cT4,4120
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/ToolBar.qml,sha256=6nUUvamO5xjw1QHVuF20TNOWNtRVdlHyafSCvC4FrRM,3252
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/ToolButton.qml,sha256=JhgqoMV_7wL2ofny0VYfU19FN6_fTuxP3sqMPHbcn40,2923
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/ToolSeparator.qml,sha256=0umcS8L6t8j_BpAhKUeyL6KZrLJ5gwn-RexNMWO_DGU,2757
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/ToolTip.qml,sha256=lkehurywZjApJMxjTdC1gw7ozI8XDWTPAybK9T9lsFY,3063
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/Tumbler.qml,sha256=DpC-4zKuTH0J16rjo3HuUJyn7zaMeDXr8Dn8gKMarU8,3356
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/plugins.qmltypes,sha256=Zk-bOlmFmEvXRDh2bl0WgWVvyEZn4oouGLAliwTGiV0,16065
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/qmldir,sha256=dLLiJoyiQdnZTOiQwQLduVO-CaTgZngyoZaWmkWn_sc,149
-PyQt5/Qt/qml/QtQuick/Controls.2/Fusion/qtquickcontrols2fusionstyleplugin.dll,sha256=t9ZX3G3nvY3qSCB-EqJ7g1hQ_CKiUikgS6NzDPYzgEc,438904
-PyQt5/Qt/qml/QtQuick/Controls.2/GroupBox.qml,sha256=LGHiRc1X520uk-hUQ7QpiTkUB5wFcuiJFhZh06lGg3Q,2992
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/ApplicationWindow.qml,sha256=tAbgLroozlzOD9wt--z15eM0iTZdVC-TBJF8pGlUkn4,2791
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/BusyIndicator.qml,sha256=wuf1QifnJp6q1ZppSmvaficP_0QNuXHsZWxGPsbAzns,3737
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Button.qml,sha256=bhcauiYk_CNVqB0Qr2KqC1TSpd6p1QRbfsDR7449xxs,4372
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/CheckBox.qml,sha256=5Y39KWvg3zn66RbYxkh8RCc42NWF9nkXKqMfTjhxSdo,4671
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/CheckDelegate.qml,sha256=3hSyhGa-AfYJmmAeMcz2ruK30iVzkEU1WLMSw0EJ1ws,5024
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/ComboBox.qml,sha256=UG-bqiUFiDXFS7qS98EMdahdjmfkgjh9tsJyR1eANpY,7545
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/DelayButton.qml,sha256=EirirzVJIxMC7mk9ct2fx3BgqFOuJuVvZyLwic2tYKY,5557
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Dial.qml,sha256=TSo-YZ8GLl3Jr0tH2bZxpSb1MfDeWJBliRlbRrYbOK8,4233
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Dialog.qml,sha256=mzLMuv1U32mUWsuJSDiOytbCh8QArYHxUw100WCN0W0,4382
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/DialogButtonBox.qml,sha256=BZUP3eruxVkdy1OHnlH71yQJJt9iVUa0_7Yx14ErWl0,3498
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Drawer.qml,sha256=9WLHzYKme4Mxe5nQLfcC44KM5CSNyWupATTB_7yfRSs,3851
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Frame.qml,sha256=oWxKlPvXFIaOAqHz0vB3_LuCoFL23lhtebdcuhRYWFA,3019
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/GroupBox.qml,sha256=lViDVfMrVeQx_bmoCLQ4qu7vpsjGvEMT2kgnYlGpESY,4025
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/ItemDelegate.qml,sha256=_KZhVMYoN5Z0mPYie4Cy8ZjLyc4YAIJrpJRBnS-4T70,3906
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Label.qml,sha256=iWkvurnSV05YaAApuBCEUWk-YOkFulnhK7sgbQj8QSQ,2598
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Menu.qml,sha256=_B5XeeNTC5PggBZZo8jYlHPr9zH21K0R4FCAkQHuQ0U,4079
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/MenuItem.qml,sha256=wI2HHcVHDmETkIP9yRusPxze7FoI8tZbaiNKPQGrofk,5765
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/MenuSeparator.qml,sha256=jFSqMs8E93nZ9lLsEHuBfcFnHCAS26eMVRIiGVrWxXc,3342
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Page.qml,sha256=VybZ_yM89KWCtJ72sEYqa4wrH43TGsHj2lLp7gS9Ruo,3309
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/PageIndicator.qml,sha256=U-XvQ0BehlMToGmYrk_00YyYBLuvqfPuNzM0MUaz4k0,3719
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Pane.qml,sha256=mPlwCF75Fy5Qz0FpFyEUCqjhkY5qvqsxWCF2QEF7IOA,3017
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Popup.qml,sha256=EwWM51BJD-GVc9DlBV_EWubgIBoCosM_3zKlvFMQnws,3481
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/ProgressBar.qml,sha256=drW1Zr3vQvoCpmlerRLadaVUhbpZUOWG6OCTeWFTfgc,5987
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/RadioButton.qml,sha256=18Z87F6jwEdksAbkOrUuzmmtkkT-uugnnym3JisSiso,4484
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/RadioDelegate.qml,sha256=sok8Rv3l0nTYgcUL26Sx7bc578Rhxh7kqoL5evZJCsE,4820
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/RangeSlider.qml,sha256=apFggXaEsHEDXHfJCbXANEuRRGsxtcDbdnlDlbL-bKk,6578
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/RoundButton.qml,sha256=oJsGvzBWre0_zaD-sAaAmBe5v4RJUsrLaNfaxCb2SKg,4387
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/ScrollBar.qml,sha256=47xf_BtvKVO-0MNd4jaX5W6B2rxBMDxEdcNaCNmkLw0,4876
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/ScrollIndicator.qml,sha256=QKACXWhH7qWda-r0Lfx1t7TEqfrC1yQR-oj6Ej7GUGw,4374
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Slider.qml,sha256=ThBrHh_zLM8rRBeYAJmDnGahT6jTXJ9tvm4obrf7Gc4,5371
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/SpinBox.qml,sha256=czcT71IBFXcCLYkD2IEcDWd0hrt0sY3fiopXWMV819E,6103
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/SplitView.qml,sha256=17NVHz577hlKEH1y43l5kLYwitvL9ivldrXmec9eaac,2796
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/StackView.qml,sha256=Tk6PkUdM9tHfKcd-phylXvzC59wPXZ6cNsw5nUfZihk,3793
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/SwipeDelegate.qml,sha256=lo8yu2TUd1SwsstccoSFN4m5-QL1yOU9M191LwRzTpo,4014
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/SwipeView.qml,sha256=r0zm_RnTWqvn6TkpcBzclt3Y1ei-BErBSwIEXhmwqno,3771
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Switch.qml,sha256=2MwP-vBKcrO7KUyBNcL0_QtW67pLRQ366pdGBAlab8k,5835
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/SwitchDelegate.qml,sha256=NQCMUsUTMxgVD8VIWaIKdvgNhI__T4XDe5m2ROIdziE,6334
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/TabBar.qml,sha256=VqubiyreazTwxkOfNuv8IACLwg4u2Jy_qupbMrxnc6I,3663
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/TabButton.qml,sha256=QIDAW3w9EhRnpGBkp5R6I3d3yDu80E0QQDlRawWRH10,3681
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/TextArea.qml,sha256=_j7qg-F7BlPJUgSVTBwTSS0XGCpAKc5vh9TsVO3QxX4,4254
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/TextField.qml,sha256=wLeAKNYocB3Nx0n14j6jRwKzizc5a5NOdGgWb8wXDRs,4191
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/ToolBar.qml,sha256=HA9fuDffI_043t3hqGGqiPLRnP9miIGTZC4RHY7ax_Y,3161
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/ToolButton.qml,sha256=OUvcZypthAYBck-WATEl8c9W126sx8TsnDgM3A1KK7U,3830
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/ToolSeparator.qml,sha256=3iuAGUyIjpNMPGnIH1A6sIgmW3YeBANyU5O-9FM9d5g,3546
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/ToolTip.qml,sha256=BsCLXzjPAUIKXbfHkyT5LjIykXAQkDIRqjw5R_nsJVs,3620
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/Tumbler.qml,sha256=ZSNvDygZo1L-TbT1ujV2AAN2ut6-_FKSoZA-ytmOTIA,3981
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/plugins.qmltypes,sha256=1fj8RKgn9FT4S2FdugHTsXMK8Nl1oYgkIWIsnR7NGoA,13163
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/qmldir,sha256=8eZHqYE3ZK2bvQ8c8cJBYdy2-IKMPQiQf0sCMsdQsdQ,184
-PyQt5/Qt/qml/QtQuick/Controls.2/Imagine/qtquickcontrols2imaginestyleplugin.dll,sha256=TzUVOD9hdprMyOGHGGUVfV-jguNeWhxEPEbGLFoWvck,1472632
-PyQt5/Qt/qml/QtQuick/Controls.2/ItemDelegate.qml,sha256=Tn6e60HqUBE1_yW7nCBwLzmWDK8gYtsRpfFK9LL_Ip4,3287
-PyQt5/Qt/qml/QtQuick/Controls.2/Label.qml,sha256=Ka1YY94AYkMCfaC0kLR09hCX9CR3V3y2-GFnz1BY_zY,2006
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/ApplicationWindow.qml,sha256=OZe33DIY-ju2ataKqy03L8xckyIltO5o6emyUwBj6zI,2301
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/BoxShadow.qml,sha256=iL-uZPJZi0WR46caZOhSDk-UhVtEJ8OG8ms62gSEp3k,2911
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/BusyIndicator.qml,sha256=uIvvcsyy33IscyTHpbnVt6fa0Vfx5CX0NmosuHZK_hQ,2640
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Button.qml,sha256=FW5Z9a2iOPdsDuR-MOWhBRSzXd8UtsrsyQLKbvTJ_pk,4891
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/CheckBox.qml,sha256=8GeM9ec1NeaDozrohDr_Qn40TIoBWO1hwRmWXK0JYTk,3651
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/CheckDelegate.qml,sha256=OFnpBsZ-OPBJwLmaR2p__HbxWa2Gcxb5cyrhm73JG7o,4065
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/CheckIndicator.qml,sha256=igPV_jrQx4P3YR-tntWrerdYlSE7PYuDzqR4UwwqzV4,4154
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/ComboBox.qml,sha256=Yqp5ke2zdyoACRuwiSeTMz_XAMwfAgiHuHLsXCRP2dQ,7594
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/CursorDelegate.qml,sha256=VBgBoPFf3C32yFKK9n315eO9YLyrkYeqsAOsQ1pYD6o,2606
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/DelayButton.qml,sha256=HulRO2B7dg4Me8W-j3lKbFot-papRtL15YdEZ7A9azM,4471
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Dial.qml,sha256=9DAnRu0JF84UVTS5uB_g-qAlUxz17QSoGnKZT6I05Fw,3543
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Dialog.qml,sha256=A2OzEyTJ7yb6K7VAM0d02gplRZUd0GoUnmuDKmv2x-w,4358
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/DialogButtonBox.qml,sha256=igx3G62OoN5gyLVZXDrd9qbneFQmyst9V_MNeSFSQEU,3207
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Drawer.qml,sha256=XzdROnvdDa3P3ENYgttBmaIkEU7EHfjJJQqhSD-UKMQ,3867
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/ElevationEffect.qml,sha256=TiI2Negnlbt6iQnBXR8nOe5-YHNEGH0wuSm12N2wmAg,10030
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Frame.qml,sha256=VLfp0YCSvYrgPpM2VU9Iz1F4wwRFfHD_EH9KL9r4EPA,2710
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/GroupBox.qml,sha256=vfvIamUdtf32Wj-8t8vZG78pXYRWEro2njF_xKXbOrk,3408
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/ItemDelegate.qml,sha256=1P8wgOZMCRyslqek9vf-jy-Uj0aNcN05JxqkjQL2swY,3570
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Label.qml,sha256=uCBTwWKKuXtPwuxLAB5zaLhIOwMFwVzLW6KbL2Hnrg4,2008
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Menu.qml,sha256=OAByVmUqj1huN2kqFAU4j0zMlfr3HajWW9N5t531nM4,4067
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/MenuBar.qml,sha256=xi2we01Cn5vQz4jq75sVrYzbWDIsdlbVW-WTYETrEkA,2604
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/MenuBarItem.qml,sha256=86Ma487v6q5P2poXP9PtsN2BfWkiNhIFcth09_0oOPM,3442
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/MenuItem.qml,sha256=p-GyOYxcv_WR_jQnD8gA4t667IEGiXRNWLqqFJVYphk,4788
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/MenuSeparator.qml,sha256=jP0cQji3IcL_xqu0Ey9WcORaZ2itXLrHQT_cW7-02S8,2400
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Page.qml,sha256=3vqp62giSTlWvKOUKr_9jEHsENQGU-vkgUegDDIaS7c,2588
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/PageIndicator.qml,sha256=96cbWSdE6hqIhDI4tVdrTc2TvJI9eVhdO-DFT3ScGpY,2795
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Pane.qml,sha256=FY0fKnwRbaR0if99AiMUp5GYqcEHhPsEt3exmpkGooQ,2594
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Popup.qml,sha256=slUH5f79IrrRziHAz3kQxEh4nupd27dNexe9tAWc5v8,3464
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/ProgressBar.qml,sha256=mseBFrAsG8tNzekRcLELjde_Uy8LgA6BvTyUj1zalWw,2820
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/RadioButton.qml,sha256=qdrrVi_O6E2o6JZFbF6P7N5OSYQu3b24e7RfngA4y5k,3654
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/RadioDelegate.qml,sha256=Ac7EZ2m34Wo__IQSPLvtAJpdVl89RVNkx57RwKAAbQ8,4065
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/RadioIndicator.qml,sha256=MCF14_ryCTyHmzOIcmiPkZNXnKaBte5Ch4B8xIelbdY,2519
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/RangeSlider.qml,sha256=mYHbfvAHijfFvXED94R4Y7DdnCd5C3KVc7Xm5cMt9VA,4595
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/RectangularGlow.qml,sha256=5K3i5cFgC-_irjEiEDW1vu4zrLuTldtpEcMrEXwQowA,8309
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/RoundButton.qml,sha256=a6kb3hi_LK413hgV8qG4yM-GdlkAwWs1mc2WUPf233Q,4702
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/ScrollBar.qml,sha256=rjJr0E_QeiQX9Vg_Kwa_to7hZpONHGUfMxmPbkZly5E,3771
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/ScrollIndicator.qml,sha256=pmujws60dmypWabJSXHk-z-ysz_GFX7IniL53sa4tc0,2967
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Slider.qml,sha256=oBpUMMoTaWANIWEd56PUzzz4pnSnDMwJMPkOW266PM4,3788
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/SliderHandle.qml,sha256=IeuJ0nyntllFE3vGxd3qZ-Wpt8FDfQcJ060RHgTNOgo,2859
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/SpinBox.qml,sha256=Vjyok-RHeHbtXbban5gdDm1gZiN4x9S3cFOxImMXxAk,6225
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/SplitView.qml,sha256=QkjWcD0F1BSA_68Sq-_GPwILIEIhaE1z1klXrdw6i08,3315
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/StackView.qml,sha256=CcSZ3py233RGT9WmbJpYrxbjT_3j4MZ6wS0ODIGs-tY,3885
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/SwipeDelegate.qml,sha256=sZ6w7FiUWQFj8J97ZqI2yzDqLGPj55hG6rxAKaN5LxM,3887
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/SwipeView.qml,sha256=30imQGUn_VI0LL0A1Q1PdJ0CMIagGBTqj8bFUKL8U-M,2830
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Switch.qml,sha256=5lyJSuZTJCg2vth4m3Loogio10P4QKc-m2vd7e3RGjE,3612
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/SwitchDelegate.qml,sha256=yJfdSA0SZD8ko1exlpt4uR2mt-ipUN8gkoVgEKuKjgc,4104
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/SwitchIndicator.qml,sha256=8BQGZGuzFuea_PJ23cWbxwukbeWFYrEXOmrfM3KNx_Q,3330
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/TabBar.qml,sha256=35GEnaNS6wpvpQrTAYgBS8juiSdnbvIQi33fVaO6l7g,3437
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/TabButton.qml,sha256=bYfgxj0qCAt8Zyij49-_j3kgMgNOp3BxAgJZLxvVMrE,3208
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/TextArea.qml,sha256=zTFRCi2EYPwTHlqU11PQuSP1BibldRMd7JyUy37lQMY,3727
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/TextField.qml,sha256=CamQ2KcwkdpFH-RtUYF1pNeUuelV_0WSDQ6dj0BjRY4,3820
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/ToolBar.qml,sha256=ae8cS_Aynrn-Lm3ex-WEo-OEMCUMo9ntzDgYHW5E5jY,2656
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/ToolButton.qml,sha256=jTr9jRmVlWWfQiEhaKvPVbfRrCEqZhZXO8CD9zzKGyE,3602
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/ToolSeparator.qml,sha256=WV54leUy8p-cotoyUBUiuMg2BmQjjcgsd5PHOuvMPR8,2489
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/ToolTip.qml,sha256=YIXwaCFL-wbEU_G2cVdqxYUHKgJjjYceISt__L_Os-I,3206
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/Tumbler.qml,sha256=HvaU_z12EQQj2UX57VlIuoZYfb0TC7uVPBuI8_fAhyk,3317
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/plugins.qmltypes,sha256=m4btthia9mkWTfqc3fZpLu3syr5KRcP-NxfwJzmNSFs,19647
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/qmldir,sha256=vXipRVY16sM18v0pQyOTm3C1kG3DwmyDRBkgQTFX5TM,155
-PyQt5/Qt/qml/QtQuick/Controls.2/Material/qtquickcontrols2materialstyleplugin.dll,sha256=0JzVvnhZ2GE8676dOg6HDCg11-koDF1OtH4LyWtXZ2Q,544376
-PyQt5/Qt/qml/QtQuick/Controls.2/Menu.qml,sha256=KcIuOsTFA1E4Q4fdW8UIYoVtrRHGP2yWZYRy_iu-MbA,3037
-PyQt5/Qt/qml/QtQuick/Controls.2/MenuBar.qml,sha256=6EWDw5thDbwuibnShOaFDU3ID9fCFRujpV1L6pkmJio,2515
-PyQt5/Qt/qml/QtQuick/Controls.2/MenuBarItem.qml,sha256=JSZ3N89KBDBjG8gLUJZHtgW5A9nCuzmn0PoF3zk59bI,2994
-PyQt5/Qt/qml/QtQuick/Controls.2/MenuItem.qml,sha256=KtFGpEp3PoEFu6GpoaJVLU9kwJkMfsSOOpjVkEQ5i8Q,4379
-PyQt5/Qt/qml/QtQuick/Controls.2/MenuSeparator.qml,sha256=WKhIyUWBSg4jPnddwwj3GfqzeQAmaHeQ1mt5dECMX2w,2442
-PyQt5/Qt/qml/QtQuick/Controls.2/Page.qml,sha256=TUrBEE_VjnDfUUsqtdRrA3ukicuWxkUFo9ZyrabMmIQ,2604
-PyQt5/Qt/qml/QtQuick/Controls.2/PageIndicator.qml,sha256=Q0M69sH1OlcMjPz9zN-kHYgGy_yfG7liyhLqRs9MCm0,2763
-PyQt5/Qt/qml/QtQuick/Controls.2/Pane.qml,sha256=sBglApwhOaTs-bwc48E3nRn0o9f4Y1vbwKnbwosTwto,2331
-PyQt5/Qt/qml/QtQuick/Controls.2/Popup.qml,sha256=dcMjmHYdFuDodeJulYTvZ8_NGh9PKTjzyGpX4XM0zyw,2592
-PyQt5/Qt/qml/QtQuick/Controls.2/ProgressBar.qml,sha256=cAAHJaQSv4hCRPXnoXCiO8L0uWvmNsQvgwBn-j9P9yg,2735
-PyQt5/Qt/qml/QtQuick/Controls.2/RadioButton.qml,sha256=EU_1Ag6TWS7YQ2hXbuwjqz-ZkSnYwru3_K-rNgP8KNk,3713
-PyQt5/Qt/qml/QtQuick/Controls.2/RadioDelegate.qml,sha256=s9u_wUcrXKn1yDasFLyEfoeBVa_YdfgctgCp7HafFIw,4169
-PyQt5/Qt/qml/QtQuick/Controls.2/RangeSlider.qml,sha256=gaKoffTUSlAjFwGJ386Adv6MQguNaRL-wjJJ1WqNbQ4,5005
-PyQt5/Qt/qml/QtQuick/Controls.2/RoundButton.qml,sha256=Pwbg8cwiItWsOZSd1qpQxby4i9m_7LAzDKbtYqRsU_Q,3633
-PyQt5/Qt/qml/QtQuick/Controls.2/ScrollBar.qml,sha256=q-a7r18x5d7aMIZCPsiTW65Cb5RaVTJwGYKz4SBoV_o,3211
-PyQt5/Qt/qml/QtQuick/Controls.2/ScrollIndicator.qml,sha256=TjOifHDtCSuP9duImm8q39_HgFJaxGLiSc5CiATJ8uA,2981
-PyQt5/Qt/qml/QtQuick/Controls.2/ScrollView.qml,sha256=4TOAbRCXFvezVfHWQ6GP7mWaZKzB2OJwiaVo6C6007Q,2725
-PyQt5/Qt/qml/QtQuick/Controls.2/Slider.qml,sha256=K0NdTkSBeliWVMKkHXdYeV3R4Uj939ni4ZLRJ501T9g,3923
-PyQt5/Qt/qml/QtQuick/Controls.2/SpinBox.qml,sha256=eoohmx6F_b3ipJwWhwbLKcQVMHIMtOnQgkkhBKSfGg8,5365
-PyQt5/Qt/qml/QtQuick/Controls.2/SplitView.qml,sha256=-jOOEcHVylbUK8sZUsMH767Yn_nmKHCnaMXKQPO8SHU,2605
-PyQt5/Qt/qml/QtQuick/Controls.2/StackView.qml,sha256=z6-aEyWzYGD550iegKVGLxH5-pnl945N1tbdCxAiLwk,2879
-PyQt5/Qt/qml/QtQuick/Controls.2/SwipeDelegate.qml,sha256=1GgE7iIxgKA8GLRSXZu-oU6MSlWZCM_7aSS_0jQLuD8,3262
-PyQt5/Qt/qml/QtQuick/Controls.2/SwipeView.qml,sha256=eQ8c8_qU_Xx-1HQRIeuNrvYD_N8HqcQ9G5s7FHy6r2o,2821
-PyQt5/Qt/qml/QtQuick/Controls.2/Switch.qml,sha256=0mluELEFTFhqYmTCCk6nCSDZR8LAOhwPuO4SYZePcB0,3947
-PyQt5/Qt/qml/QtQuick/Controls.2/SwitchDelegate.qml,sha256=VYySjzx0R0yClhGqKdVO7ZxZjgITlD_uiKVGkqgae90,4489
-PyQt5/Qt/qml/QtQuick/Controls.2/TabBar.qml,sha256=VPqUbQIfeLLjWzjzdpsDb1lDJZ-GwotDYuGE-vy5rQE,2773
-PyQt5/Qt/qml/QtQuick/Controls.2/TabButton.qml,sha256=d33J73uCeCha-YROD0ZTR9Mh0PW5QlRI4YkfeCV6AIU,2987
-PyQt5/Qt/qml/QtQuick/Controls.2/TextArea.qml,sha256=-RLE31nCK1P4Xwvwxce-F438Zs4sMoyGWY_WyTGtwag,3313
-PyQt5/Qt/qml/QtQuick/Controls.2/TextField.qml,sha256=j3kuvqVscvspHfyg2wxdk6F4KSR4EAjjVVBPXxSrWds,3571
-PyQt5/Qt/qml/QtQuick/Controls.2/ToolBar.qml,sha256=RO8CrS-xaA2cjwfoYPMfZVnTF2iCEdaGakin2fYXefw,2343
-PyQt5/Qt/qml/QtQuick/Controls.2/ToolButton.qml,sha256=z_oHpLdO05bpdIVHgsqK-I6ok4qZ1qTPAICBM_1gnw8,2998
-PyQt5/Qt/qml/QtQuick/Controls.2/ToolSeparator.qml,sha256=fLQg4N3gHAtDuX-wBoz9xLSIAiAVgwmPWr8SnTaf3a4,2492
-PyQt5/Qt/qml/QtQuick/Controls.2/ToolTip.qml,sha256=ns0KJJLX58xBMAaISXp_nvMSFkFzw7-lnWGcUTw2qEM,2763
-PyQt5/Qt/qml/QtQuick/Controls.2/Tumbler.qml,sha256=-pNwJWX0M2Yew8v1uaGaSR9Z_5LGs9Ra6Dw_70T7on4,3289
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/ApplicationWindow.qml,sha256=7oHTLocb_TXmn40W0_u1MrBIsRjNNuhoABmJOdqK7Ck,2442
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/BusyIndicator.qml,sha256=K8SDJv8_lsm0W9ufQNWMQkfwo_rtG2FiBT5ikA2yloE,2614
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Button.qml,sha256=C61COwLCARcHoXWloEGQEtdss0dWTit1XRVWMyz-6l4,3611
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/CheckBox.qml,sha256=XZSYdNYTw58GfmyK7c7YfIkEHYEsgsjJyZqUD7u-bdA,3231
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/CheckDelegate.qml,sha256=zKSK0LIuUXrESHcTVjSY70x0J3PpUjZn-4nqFs4fU4Q,4189
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/CheckIndicator.qml,sha256=0ajFu0No0GMYhhTyVhBNELUdCtGTKzsS5-X1AivnGOE,3964
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/ComboBox.qml,sha256=MuqzddkZ7Xo88JdZUp82uK1D3w5-hg0CUKiZWxbfOgU,7090
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/DelayButton.qml,sha256=BqtHYVp5mG1Vmly3-jm21U0S2-Z8SuwSZTRbMEWa-yc,3597
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Dial.qml,sha256=ynj4MXbGQ8qsaKpJ3f4JMCtay7oJyu0ygEklr7NWwPU,3648
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Dialog.qml,sha256=AHQLxzsnJiufFAA6XIaFRZbyYG_R8OIJQeAH1qZNZ44,3544
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/DialogButtonBox.qml,sha256=5k7pgz4I2eLFCrRIiXSIkLgt-3WaS00CWZp--RX5kdw,3141
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Drawer.qml,sha256=J9uVRz1ycLIQNuf35e6mb2PWBuE0zTx6EI3DmJKWcK0,3272
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Frame.qml,sha256=ek6DXjW5ek7ndAQsRdvRsSUNgBQdNRc0JDwv0l-Tjv8,2362
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/GroupBox.qml,sha256=95WzviptSliF1UzACh7OlevHB6Ed37riBUbPRmc9B7I,3031
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/ItemDelegate.qml,sha256=K76eMupJHKp7vOAwZMs-kynWYKAeEHzWvirWK9R3j-I,3649
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Label.qml,sha256=zDJk3g75QWyGnXc27lCjAxDiZ9bsiQ8950Hlam02COE,2013
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Menu.qml,sha256=5B0Oyjdfy9IXcbCZ2TfkGsFKgnZuFtpWvF76NLiaNsM,3093
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/MenuBar.qml,sha256=x25tJ8LlSZJNYm8wNeUMastcgMHif28uVj3It60H3Ak,2568
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/MenuBarItem.qml,sha256=rHP04N-_sWm90O5gTT2nCpNcgTJi9JEX6dnvfO-cRgw,3579
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/MenuItem.qml,sha256=rQC6Eb74AyA7O2jQjBfSa0hIVGhH0-3XgC2Wim7MNyM,5073
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/MenuSeparator.qml,sha256=vkLRvBlrpuKEnAtTb1uLlTLPmiEriDjojEMeMTXwQMs,2533
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Page.qml,sha256=VOS-deU1W-H-IuCxbFH7gfl0r5_KTEh9eOSsStORshQ,2585
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/PageIndicator.qml,sha256=W0LT6Bff_vIPMyi7tz-J4R5S8yxTWd6ZnYmLCdd0f_Y,2769
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Pane.qml,sha256=CerOAyDOPiCtgNL7Op5-bx1CwOsvhMLuVpr0NF8bKMs,2312
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Popup.qml,sha256=_NDM9ftueyD_sG56pKD0nBi7alyDKl47XQ9y64_IV-g,2618
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/ProgressBar.qml,sha256=yrrY9lWe8KONh6XHv4UEw0SLg2T8u4ykgQGY0050_5Q,2783
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/RadioButton.qml,sha256=0EXKw7s-sY9VXBui4Y240p8LoGGOHAMeQw1OD-syJcQ,3234
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/RadioDelegate.qml,sha256=qKDG4WfKIVusytnjQ9EaLyWZCciOOx3IityLBinVJhs,4189
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/RadioIndicator.qml,sha256=5EMFzFV5A2HjJ-6aTgMjEHCEi51gb4VOakNjgxCrkb8,3462
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/RangeSlider.qml,sha256=xu6AqoVvYYw_63d-uWwymue1fSxT2ZC8NFSLTOq2jJg,5735
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/RoundButton.qml,sha256=SDAWUGPOpGgw_jfd71aVoTcvOtzltAzZehd1OQTj0JE,3650
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/ScrollBar.qml,sha256=06LFKitOMcVF6r6YIjq7BGpCC0b7kz_6xHhQFNO69Y0,3798
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/ScrollIndicator.qml,sha256=MUCdx5GrlpD5rLHFWByeqmAYfBIWmiSQMOwKItB63Wk,3070
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Slider.qml,sha256=TiXpx79SgAZ12TS7JLXyu8e-6R8LE5yub5NNRT41Tqc,4658
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/SpinBox.qml,sha256=RLCWtEFefLGQgvWAhuD14XJmlPIGpDZIcqPDYJU9cFI,6648
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/SplitView.qml,sha256=sF2i-YJDLWvudgTdBODo_11c0WDkFWpxwnq38df8YZ8,2682
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/StackView.qml,sha256=H7LBd58wtDHSv_NZSNt5mrQJUo85dC8jJb9WAeXtt-w,3388
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/SwipeDelegate.qml,sha256=oYRbIfn7UWPgDb4MLrZ2GTDcFcvQTSnGJP0HdISagb4,3841
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Switch.qml,sha256=QdOhVk8N8ESlQcvPlszgQExpCbGYwYtfemsHnnZu28s,3230
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/SwitchDelegate.qml,sha256=YYOVKnjpUT-QNDJE_3-5TtcfwkMpUz-8-YPxOnOAXgs,4191
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/SwitchIndicator.qml,sha256=tD7az7yRVQI2l1znfOHsfwphHkOZxkIoS7vENBniQyI,3749
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/TabBar.qml,sha256=LtEGDI4IhuNu9jufOkAddel-9UwW8qnzst2EY9AToBQ,2859
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/TabButton.qml,sha256=E8aIAFodOKlD5MlxgUBn44j1KI8eryUyRO5ETkRW-Wc,3082
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/TextArea.qml,sha256=VB6I-piefVaWHnlpZF5NpABLq3NC2b5aU0UscWsFOBo,4336
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/TextField.qml,sha256=vJvjIDPsLvXJ_xQNfyHRKyk1V99v0oXPRn562JXSDlM,4319
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/ToolBar.qml,sha256=MVGehulSJifEK5VoUiYhPO2ewxKZegDVUphHAJ4OZ4k,2359
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/ToolButton.qml,sha256=6zU_fvy4x34e0j6mEv7J85TUldXaS-OoUc_5siBywjk,3315
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/ToolSeparator.qml,sha256=QvtRTNksnIeoDt5L1kh1jPVPdMwF0zOKt2Mm-8TQmh8,2564
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/ToolTip.qml,sha256=jD9KGtSAuBk0qRFxxn1hZR85yH_f_vNIBF1JLm6tMrY,2919
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/Tumbler.qml,sha256=OxeVikrdvVc2Ww7kGt1PP4DxzrNcno_xJo5wa3ruatk,3319
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/plugins.qmltypes,sha256=144yo2LPVPAEnqfK3Vr7OG8TaDrUAMOaaMO2ybieAmg,13897
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/qmldir,sha256=EVA0Tt6xV_qgKajZOnm2xtgOl7SS1n8atjbvsVbnsZ0,158
-PyQt5/Qt/qml/QtQuick/Controls.2/Universal/qtquickcontrols2universalstyleplugin.dll,sha256=JF2gQdqr88m2ED30NQTatbeSQM8WkywN9mF28j0GyIo,435832
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/AbstractButtonSection.qml,sha256=gYVSnRQjUGi80EOt9ViA3-UEzqM4cEnr6sxT3GsFCUc,4189
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/BusyIndicatorSpecifics.qml,sha256=pvc2wnE7CPaqpctRAZ-7OTrGxXt1715ABdKe_0ipKpg,2627
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ButtonSection.qml,sha256=HVcbq6uwTOX-VbHQ8d02LqzDBL3nEl3tDSGNnObfA8Q,3105
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ButtonSpecifics.qml,sha256=nNAjeEiOjdyJHLwedxi-GXCIpijQcQDtLWdrlY9XuB4,2192
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/CheckBoxSpecifics.qml,sha256=OdwEZgwvT8ApcQmLniYaL3EjiHxWX1JYInjdubd3H74,2226
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/CheckDelegateSpecifics.qml,sha256=FQ_Hrer0dRzZFEDGng2WcfFB5bTEOe-IbchjJWJBqJg,2296
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/CheckSection.qml,sha256=cKbf-acjtOLzEu1I9bqOPsfGQlL69N1WU1kpTSaolng,2661
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ComboBoxSpecifics.qml,sha256=e0prqPFlzq1yEj-bw-waUsrLq_yHBmvzUs8jMKxU-jc,4090
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ContainerSection.qml,sha256=_RnY7R1h-D1n_DY8LiinY3LN1NiM-akOuy901eX9CaI,2336
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ControlSection.qml,sha256=A1sXUCnaLXJpSy56Cm0T9jxz1q7Jq2FPnJf6wqZs9To,3879
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ControlSpecifics.qml,sha256=NPFOWzbeAXQNyKfFcf-M5lvOt_xMJvkG4QwIdztkSuY,2066
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/DelayButtonSpecifics.qml,sha256=zkUZbksEKCaoD-FT7cftZ5bRmRXdobkcgs3tMxhOEgQ,2736
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/DialSpecifics.qml,sha256=45PwXTQNWj3uOx1y-o0kNv5qIsVfhOcDPv1BsSou-gA,5553
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/FrameSpecifics.qml,sha256=s7qCD_hr9e3nEWVDNCOTqyJ5wt6zfCPOPSQKHxFPFu8,2123
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/GroupBoxSpecifics.qml,sha256=3tvXeosAJ2K1pa62Xjac99qpdn_mg2DV-GVMxgVi_UU,2579
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ItemDelegateSection.qml,sha256=GNoUyRxxD4z6acZ2ED0mIc1-D7ojx1v2QOHtN37oujE,2321
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ItemDelegateSpecifics.qml,sha256=ggfGA8neUdmVQwLdnfVZod9w4KllivYmNyKbWiQ37sM,2198
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/LabelSpecifics.qml,sha256=lq3sjmnB9gRgapRzH1TwWWzTzZ2rpga-99kYjVxr_ew,2765
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/PaddingSection.qml,sha256=vtWOukWF8oDvvVhp3EcwvbxGhj05Lby-buMkGvCGCew,3681
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/PageIndicatorSpecifics.qml,sha256=Cgae6UlV0gYRtbhp9duclumOFEfpbFyXUCFyAYOl1hw,3102
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/PageSpecifics.qml,sha256=Oi0GKQUovZC7_uflMid1QzQLwzdBlwvh8M17dD9i9g0,3512
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/PaneSection.qml,sha256=oQUXOY6NyAClh9lL-GWMBYCpkRWADn641tr4sNnFmIc,2819
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/PaneSpecifics.qml,sha256=s7qCD_hr9e3nEWVDNCOTqyJ5wt6zfCPOPSQKHxFPFu8,2123
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ProgressBarSpecifics.qml,sha256=lNqwalsP1WjlueYiqcy3JgfTcdGEmXDdbbrjNV0dNxI,4195
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/RadioButtonSpecifics.qml,sha256=B5Ed_0sxKN4p-4MiOniHj56XLzWllkKYYcfqeVaSOy0,2133
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/RadioDelegateSpecifics.qml,sha256=ggfGA8neUdmVQwLdnfVZod9w4KllivYmNyKbWiQ37sM,2198
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/RangeSliderSpecifics.qml,sha256=IOLUVl0jyA53YEdrfmV8iuwY1gDbVxpjL-R-D0B9W4E,6246
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/RoundButtonSpecifics.qml,sha256=Q7UAOT3vlUFWsYY2I2-ih3aU8xphmW3fFIENZVe9Yw0,2737
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ScrollViewSpecifics.qml,sha256=z7uD24dUHn7frZS8I56-4pXGDi5AyP5dsI-9Ixwyi_I,3195
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/SliderSpecifics.qml,sha256=veThne0ABehZBY86F1KCrFAq7_f0R9X467_KMnmlQZA,5556
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/SpinBoxSpecifics.qml,sha256=i32rjuqOJl0KImRImJjNDbgvqhq1h5PasxbjnFzE_os,4532
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/StackViewSpecifics.qml,sha256=NPFOWzbeAXQNyKfFcf-M5lvOt_xMJvkG4QwIdztkSuY,2066
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/SwipeDelegateSpecifics.qml,sha256=ggfGA8neUdmVQwLdnfVZod9w4KllivYmNyKbWiQ37sM,2198
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/SwipeViewSpecifics.qml,sha256=8Nh75kEhOw_4kMLkBp4yaBqHRkbzllycaSfTLeeDNdc,3100
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/SwitchDelegateSpecifics.qml,sha256=RbM1BfHdu9vjsg01EXBq3_4Uo6QRzq5svpLM1Lc7CmY,2141
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/SwitchSpecifics.qml,sha256=B5Ed_0sxKN4p-4MiOniHj56XLzWllkKYYcfqeVaSOy0,2133
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/TabBarSpecifics.qml,sha256=7u8nJlC0ifRDGbVJBXVRWpjOUKsEUDQCu5uif19Watc,3675
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/TabButtonSpecifics.qml,sha256=B5Ed_0sxKN4p-4MiOniHj56XLzWllkKYYcfqeVaSOy0,2133
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/TextAreaSpecifics.qml,sha256=CXkSbGlZo_pEPa2_qgEe6R5bFSfUODf9dSIcYXD58JA,2671
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/TextFieldSpecifics.qml,sha256=QM-zj-nzs-vumcsnzGHna7wGyw_nfCC6ZY3ukJCAU1c,2571
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ToolBarSpecifics.qml,sha256=Pw7Fuag4zRVbpEJqfZGpgw0wC7LsCOBGhViYFdeiDBw,2670
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ToolButtonSpecifics.qml,sha256=nNAjeEiOjdyJHLwedxi-GXCIpijQcQDtLWdrlY9XuB4,2192
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/ToolSeparatorSpecifics.qml,sha256=BQpIQEmHHHRRErHMMhvx7u9hdI2Alwe1yx2UZXjWfNc,2578
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/TumblerSpecifics.qml,sha256=WMXSRy49NnUEgahhfSIvimZtrPxcE9guQljY3lqawZA,3510
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/busyindicator-icon.png,sha256=AuD6mCVIltgOZT9iI2cOyvWyiekya1ad7aaPubOpJO0,320
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/busyindicator-icon16.png,sha256=JzM5e2VeXOXuOKic5MR-YIzEOcYUeRkcx2njyyBH_Kw,229
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/busyindicator-icon@2x.png,sha256=4M3VBnQGp69ywzq6i7593LZ7NcOqIyylOPAkPTX528k,643
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/button-icon.png,sha256=i1cK_Pk_n_fSKZ0WidNytX35xDKUbCjsVojUNwcN2MA,162
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/button-icon16.png,sha256=vr3uhIzxtgQdX-HgCwZKoW98_1EXo7pyUR5w5pxSuIg,145
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/button-icon@2x.png,sha256=gsGbMbsK7XVGqnGpvZCcgQVtcsC5HAtoRvQnvcA6c4o,259
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/checkbox-icon.png,sha256=ExHdliPUdvrSbsgsZiL1IYHoxVcwnTsOS5ZEEK5J3SQ,258
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/checkbox-icon16.png,sha256=x5tLnDx8lcipp_OHt1ZQA5BKuSdU2Ai2O2A2lad4K9E,230
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/checkbox-icon@2x.png,sha256=gUl97GEPukCStv6nCImO9TeMVWz1BUfbdF8NK7CxXg4,336
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/combobox-icon.png,sha256=Eznw7mevSBcwJGzebCKU51OJy_vYiufpLpeOJMVHfh8,156
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/combobox-icon16.png,sha256=XIZpu69TE1zZqQjH3pCnZeaqYykdTzgYiy_YzrfULrM,155
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/combobox-icon@2x.png,sha256=KlW3KjvEKrApL74SWeJ_T637CMGdsqYBJSOqj7IhylI,185
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/delaybutton-icon.png,sha256=moes6FiETOMCF-aSJ0-W6wZPw-o6_XzSLnNIG7c_PTw,189
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/delaybutton-icon16.png,sha256=9iq1VzlQFV9Srht5EaftVH6Hd4WIPXcwfNWVPd-qDVs,160
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/delaybutton-icon@2x.png,sha256=U_A4Wx5ayg9sr104iV7F9doa-2H5m-j82ghttENCut0,286
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/dial-icon.png,sha256=uSB5KWW4L15qYFBYTK0jF36uA81TFwOFjJfH-eFWKx0,267
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/dial-icon16.png,sha256=XTTBiXCtuhxuHPS_8dEIaWEPnGNFZuZHZEc9yXjNNYk,243
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/dial-icon@2x.png,sha256=jlhl3qUOJkvEVKR0tfkpAqD3vtqihB9-lnuKl0G_4Wo,505
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/frame-icon.png,sha256=NPosRXTTZA7HGrKjge54GZXkdyoGCvpr2PubE1dyGKE,121
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/frame-icon16.png,sha256=L4qBbUL9X5HGEGyJ3O55NpfpgBQZz5Neze6QJGPicg0,117
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/frame-icon@2x.png,sha256=RXZo_HUEKDvxF3ke3D75AYGK6Fc4f94dDh8XtCB0EmY,125
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/groupbox-icon.png,sha256=_5Iwk56v38A8Mfbb-bQtyOX8bnaQRji9CvBGErtsPYg,133
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/groupbox-icon16.png,sha256=m6pR98Ljbm-2iuJfQXA06cv-Z6cmPVIaOTBKNs6FgaM,125
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/groupbox-icon@2x.png,sha256=i_quhGBqO5glK7kDbxNXMPb-xLSXaoMkWdrhAUAl84U,136
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/itemdelegate-icon.png,sha256=q1-9Jlpp80pKq_BkWUzl3Z20l_ngt4EJu7bK4kjuLm4,127
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/itemdelegate-icon16.png,sha256=LtSeXRDz7_aM1X-fXKGOFknXnWRDDNDCfC83nDHixbo,124
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/itemdelegate-icon@2x.png,sha256=Nc0ZBkdYnQBCfgPzR_uaDmj7qhjzVWOT-KmXjIMoe7g,133
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/label-icon.png,sha256=5mgwIzNx0h4N0WE-TNloyK3d3ThFncozLrEYTTAAWy0,206
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/label-icon16.png,sha256=jOX6LCJ9V62_m2i6pCo3ZdgeNOgzLEE-SY6YkHS-hwE,182
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/label-icon@2x.png,sha256=zLw2vjG6W1dlcHU_qSGBuIfpoEj5FVssxjC63y8imz4,284
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/page-icon.png,sha256=ZxVx5RnVE5P2fH72Flq-3yy89qWt7HYNYvdHdzN5FhA,190
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/page-icon16.png,sha256=oRBLfElzZ7BU6nu3sTBCq89uJwG1tP0tMuTwwojGHIs,148
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/page-icon@2x.png,sha256=RwwHzwfwLtKRdBQzqtiKuA8ex2cdZAPew9dPfuE7uAM,195
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/pageindicator-icon.png,sha256=9GT6W7wg9gRxoXR7RV-1mCw043hgKFjrxUooEo1Tyq8,179
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/pageindicator-icon16.png,sha256=xVGY-qzO71WYKj7OvlTuTaXGAt4_JfHKin4ORzkKQtU,158
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/pageindicator-icon@2x.png,sha256=9209tuifk7ipQid5Hfdnk0HEK6ocgdNikLDD6rbLh90,207
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/pane-icon.png,sha256=9oWkjszjhuE1YxvqUCHZUrdvED2VkcXwoI4-4SgJUQg,93
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/pane-icon16.png,sha256=Uqn9k7k9idUhedWUE9nmbDDk3LdyUX0nebULMz2L8rs,92
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/pane-icon@2x.png,sha256=ty6bXN18ySKBelEeRL0nVzho73hBtFakwi_5_GEJLTo,96
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/progressbar-icon.png,sha256=az8do91MosuEFkBwZH0ozJ-ySQ6KvOwkY56n9PN4n9g,101
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/progressbar-icon16.png,sha256=0ml5aCmalq7NkVwiiR2y4l8wWbudWk4gfs0VYRX80qg,92
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/progressbar-icon@2x.png,sha256=p-Z_IZhG1Pggxk8sa-fFjJpfBI7Hje-btjSg3ENHmEE,127
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/radiobutton-icon.png,sha256=p4EXywIMoV8Cs7zP8mguXdU3QIIIcuSb4PWSlGF52XA,279
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/radiobutton-icon16.png,sha256=VtGquyQDkPOvMyJ89HVy3bYEtVgRRHOd7rQipONZgYI,218
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/radiobutton-icon@2x.png,sha256=M6V7KyEOQADHMgDrYurk4_21PnUvL8jO5QMsKWfSvcU,482
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/rangeslider-icon.png,sha256=bxtfjZQ5mhuzcteLlYEBYh0EwgMDJNzlSNVw3BQKno4,269
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/rangeslider-icon16.png,sha256=aGTrWQ7N6hneql2dhYFk6fD-1ls_kvy6-08fK2eL3Kk,231
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/rangeslider-icon@2x.png,sha256=LNvahzLhU1aMFeCIqGWoIvl0OxtDfH2xNBwpFxmfKK0,282
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/roundbutton-icon.png,sha256=mbm4AxK43q9rnzmuPZvtwgU8E-YK9giksEl6wwCr7Vc,229
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/roundbutton-icon16.png,sha256=2-s5k4HyBcWfoltf7umP-q90TqSjOa5C86SXqaQe8u0,186
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/roundbutton-icon@2x.png,sha256=0p4teKle_KuoOR6jWl8cCXvmZr-Hj8uy2RJi1gAhMSk,381
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/scrollview-icon.png,sha256=lcORIgthbpczqdT7jGdUMAad10yjw35N75IVjDobdeI,110
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/scrollview-icon16.png,sha256=OCgky0lo44SxqF3moiLr8261aR9Kc25yk1gP5iqfqoE,116
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/scrollview-icon@2x.png,sha256=BG6R4ZG02584xjEAT_Jhw6OR7WvRCCH8vXWjZ7mQRcI,145
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/slider-icon.png,sha256=Ymh6YfwI5IhWP3be7xw9-hOk1GsbKYntC46XuOooaoA,190
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/slider-icon16.png,sha256=ofPkxbOVXieuJrlq02EcaOo6DIIfeeJuMDcFD3faMNI,156
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/slider-icon@2x.png,sha256=4lSfPt9_BZxzhngKy3uDcoIiZxPfjjNeog6q5G1VgpI,227
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/spinbox-icon.png,sha256=pLYlz4qVFPsJm_bsELs-PLhe7Bll5VnH0qlFtMzp-gc,144
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/spinbox-icon16.png,sha256=itI_yBz1YYLF2KcL6SVTneMbzqDytrVLuFkqca5jRUU,151
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/spinbox-icon@2x.png,sha256=3g2NI6FHGQ6aWh2XgolT0qr3OTgDO-XGSL1iHM6FM_A,178
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/stackview-icon.png,sha256=jQ7ES6U884HIBiSu8Yzolicwvm-OvhWJDLMqC4w0d7c,162
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/stackview-icon16.png,sha256=C-y2-1aQjW6ZI2k_BoXQ0D6KFKZaA7gjdlkUuusHvys,151
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/stackview-icon@2x.png,sha256=ixlq_6Ehs0I7LlUrbAAPTfQZ3OqThHB95avPXrbSZTQ,167
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/swipeview-icon.png,sha256=5YVq1PqVy7rUn40zcFVQp0pxj9s5jrgucX7Yt8gvFNE,163
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/swipeview-icon16.png,sha256=mN00gGCJQ9vP35w1UITwOYi9ekeVZME-7lK2A9dEyQ0,152
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/swipeview-icon@2x.png,sha256=xsy4laH7UUIyl6AhlOTZoawuWnvWkJA_7KRYWC-Q3s0,184
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/switch-icon.png,sha256=yPbUyxhpdQtRLczppgX-liXt12EXJT3EG64MPU3LDJc,205
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/switch-icon16.png,sha256=hpA5OlGHAM7QDaEyLCQ4um9kmMVK_cMJVg6N6hqVMRk,160
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/switch-icon@2x.png,sha256=d8u48iOoMFuAQV6YJ_luLv58AKGpR-NtMpdx-_kCgqM,314
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/textarea-icon.png,sha256=WiZtcAAUlsLqkRI-pZUig5QlfpN-DfGfPz6V_6AKDEc,149
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/textarea-icon16.png,sha256=QejiUqvspJvW778VH-AqzxIP6reYCHXUbupajmWdlmo,133
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/textarea-icon@2x.png,sha256=9RzhM918su10yNq4XndcRucFv8kdYhKo0EsMVDLIIqE,163
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/textfield-icon.png,sha256=3QRT_QT_qa7fWqyXj9Ty4iEH-0bW8oacusTeWQPhUAo,154
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/textfield-icon16.png,sha256=mo8-sqFOxVF0lfaHQCNR-74uBqBEAdA9KU4lRJE7YvQ,147
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/textfield-icon@2x.png,sha256=hbjdvDcHiknxUfK_8ICzPbVLbgwqj-agRLg9mjFIots,172
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/toolbar-icon.png,sha256=CRxg9rp0iZqwvSr8RUdVZZ-n07QKmh8fLo_1V6vKaX4,131
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/toolbar-icon16.png,sha256=tSZdEkVAoD4fp97DFgshCwukglfScrd_L5jMF6zRx1Q,114
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/toolbar-icon@2x.png,sha256=KGp-X0fB-PZwCP8TQ-zjXNUjauloLmVWOYxNGWgrJAY,140
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/toolbutton-icon.png,sha256=kl1sH5NJGbWeHz4UKy56OLDU9tXKL-Z--38jeyLDAKA,141
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/toolbutton-icon16.png,sha256=FYx1NTHXm5J804QSVoj6gT1Cgsyl0je-fom43Wbn_YU,128
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/toolbutton-icon@2x.png,sha256=q2SOOJ7EKCdHMA4AopOh3X3bVvY-Iy2iQdm2amYAlZA,158
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/toolseparator-icon.png,sha256=sRmP61AlVKJU-cHz2GwZNOeTh2YGzhkjRY0IOM4e8RQ,111
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/toolseparator-icon16.png,sha256=t7ABD0X1hqJCJfB1dq1FaTJ-6UjFHFj3dEXGcJYixfY,123
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/toolseparator-icon@2x.png,sha256=W0Gy9TZ1FrCBOeMRUKxIwWolYTa5bC0z7Lu1AqqCQOw,131
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/tumbler-icon.png,sha256=ZrwYsPFpzzwXwe6Vk4tOal9RdZSneZg56yRGjwXqBRE,132
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/tumbler-icon16.png,sha256=36f9DcpxLHe6tBYebo1cLf7tdtO_11t6GUv9WYjrVeE,127
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/images/tumbler-icon@2x.png,sha256=fS7hXcIpeuTG43begVewDxNh_JP-N0sqFw9LnS-QUQ4,153
-PyQt5/Qt/qml/QtQuick/Controls.2/designer/qtquickcontrols2.metainfo,sha256=PvnetLp_Jfwv3GtiUNqDuNRtvYr7k-k3jYVWg_yRjGk,15567
-PyQt5/Qt/qml/QtQuick/Controls.2/plugins.qmltypes,sha256=Oyn4jVxMerD-BwdSIOY-8yU8wkab1VLBp_o-KePPviE,32731
-PyQt5/Qt/qml/QtQuick/Controls.2/qmldir,sha256=e0BBdbuOKw04IudTIMjW0Jxhu1P0UTwjWn0ErH00_Vc,140
-PyQt5/Qt/qml/QtQuick/Controls.2/qtquickcontrols2plugin.dll,sha256=mTNbCABSVVMCRVBQk-76QCCigDES6nBXYHBlM84JtRc,471160
-PyQt5/Qt/qml/QtQuick/Controls/ApplicationWindow.qml,sha256=idrLiAeY3kBDQ7fHxgGWTqnbjJTG2A6USI8WtMtoehA,10075
-PyQt5/Qt/qml/QtQuick/Controls/ApplicationWindow.qmlc,sha256=cnSXMRGSjcrDCD4KVmpjKjfWzRVNLJB2XjUAeIgWuto,13888
-PyQt5/Qt/qml/QtQuick/Controls/BusyIndicator.qml,sha256=X4-5Xe4SQvqYHAIB2C4AlIgMiPmOu3UW1faSpjy2T48,3172
-PyQt5/Qt/qml/QtQuick/Controls/BusyIndicator.qmlc,sha256=ia9KyXohzm4ZJ7gObUl9XtRZWWt1zFcMTVU0xvEyXvY,1808
-PyQt5/Qt/qml/QtQuick/Controls/Button.qml,sha256=DSg22QYG4qhsiti9tdu4eXFAWiZIilAo82PQwJuczB4,4702
-PyQt5/Qt/qml/QtQuick/Controls/Button.qmlc,sha256=DuBiR5Uf-2vzIRVkqDH5J50QP7Pgmerg3En419RXU6Q,6504
-PyQt5/Qt/qml/QtQuick/Controls/Calendar.qml,sha256=1bw0O3mAPbsfKOKp6IYU8H25LQSruyyH35qD3_R_wCE,14053
-PyQt5/Qt/qml/QtQuick/Controls/Calendar.qmlc,sha256=ykBbHbF4-PfAxAKWlxsPsFt9Y1LC8I1cfSM8o1fLmiA,11296
-PyQt5/Qt/qml/QtQuick/Controls/CheckBox.qml,sha256=wpcvhcpLzx1fETZORsKX1w9hH0P3YY_X53tCE2PjpL8,7217
-PyQt5/Qt/qml/QtQuick/Controls/CheckBox.qmlc,sha256=YGeZ_Q-ixAjAKkDUi8e3rpDVx02nopV7Oz400mhsJJE,5384
-PyQt5/Qt/qml/QtQuick/Controls/ComboBox.qml,sha256=7I1tYgMdFkjaD3zxdOf9cHr3POytOnsdU7tv8Gzubu0,26551
-PyQt5/Qt/qml/QtQuick/Controls/ComboBox.qmlc,sha256=8im64pQDrbtTAbAYQwfs2Ub1AWaWNE57uIKqpvZrAQY,32376
-PyQt5/Qt/qml/QtQuick/Controls/GroupBox.qml,sha256=Ejxkd3PV2IWj2y9eW7-xO1HyyIaXg860jV-Tyw40AeM,9280
-PyQt5/Qt/qml/QtQuick/Controls/GroupBox.qmlc,sha256=SBnwq-av3SeVTmPd5dVx6SXX80sH0bkZlfUEHHjD8J8,11708
-PyQt5/Qt/qml/QtQuick/Controls/Label.qml,sha256=8p1vnTUfcfzZBplsajN5WJMz21PoZyeL0P7cZQSprkw,3212
-PyQt5/Qt/qml/QtQuick/Controls/Label.qmlc,sha256=qqi1sQ0o76R8ewzvU941ebpzJDhCbUsh-xXgLBTAvK0,2424
-PyQt5/Qt/qml/QtQuick/Controls/Menu.qml,sha256=4N9-e9ZCqlNef_1cGz6joeIByAtVR0mwVIOr4yLmI_s,5447
-PyQt5/Qt/qml/QtQuick/Controls/Menu.qmlc,sha256=QMFTZ3Pc-nh6u718B6NWFx7o8EspRaohgpQVh56Th9U,6264
-PyQt5/Qt/qml/QtQuick/Controls/MenuBar.qml,sha256=xXI7tkhGpNoY3tK4gUyeNHdMfBxXzjlAzMkOY3gRu1g,13055
-PyQt5/Qt/qml/QtQuick/Controls/MenuBar.qmlc,sha256=BHWmRkOjUWQ6h8-cHaLKqYz3BweweGRb44f_moyDMzw,25656
-PyQt5/Qt/qml/QtQuick/Controls/Private/AbstractCheckable.qml,sha256=8exrNiC26ws9Q1zpJgf8PmoilxZZWTi1ui5ha4-tW8g,6050
-PyQt5/Qt/qml/QtQuick/Controls/Private/AbstractCheckable.qmlc,sha256=N8uyMXoYtEy6L8m0ULzq__kvvjGWK2q0mU8lBuYERd0,8876
-PyQt5/Qt/qml/QtQuick/Controls/Private/BasicButton.qml,sha256=0ncUjKESJd-34ORjQLIYr3euv44lFVNoR6Ux7kgNvuk,8284
-PyQt5/Qt/qml/QtQuick/Controls/Private/BasicButton.qmlc,sha256=QUlfdR0WTG3eDa2yQ74JEsEj50ywUkAGs-dzDW9ZzwM,14224
-PyQt5/Qt/qml/QtQuick/Controls/Private/BasicTableView.qml,sha256=SPseJPeNNjH3VCOSlTejzOvOkqXlUefAoBJJuZoVrns,33193
-PyQt5/Qt/qml/QtQuick/Controls/Private/BasicTableView.qmlc,sha256=7efshcFUef_k30N31rNIaFXrjP6_G8B2N9p89vtZTB0,48804
-PyQt5/Qt/qml/QtQuick/Controls/Private/CalendarHeaderModel.qml,sha256=9OosNUYvdrFCIx3IO1NrH5PwMDeb4RW6oTGTTKtNgCE,3841
-PyQt5/Qt/qml/QtQuick/Controls/Private/CalendarHeaderModel.qmlc,sha256=-q8cTANRosYBWIzX5EOuhDAME2pPQkQLaEqns3yx3Ks,4524
-PyQt5/Qt/qml/QtQuick/Controls/Private/CalendarUtils.js,sha256=ceeyIK-bYrLryu5bk9Q1xaM7xoSM8p94W84IKFjBAKs,5714
-PyQt5/Qt/qml/QtQuick/Controls/Private/CalendarUtils.jsc,sha256=pKjbMMfJ_sQoHWNvxUzaGU8QENhIsA5Z5QRigvPLlO0,3384
-PyQt5/Qt/qml/QtQuick/Controls/Private/ColumnMenuContent.qml,sha256=l1u8gNovG9BX8P68j08vTLpzCHXyTx3RqxmrnBQkFEw,9417
-PyQt5/Qt/qml/QtQuick/Controls/Private/ColumnMenuContent.qmlc,sha256=ZcJZMaTDLQwYzqVr6yGGqIcIM26obeumWUgLCZd2gc8,20904
-PyQt5/Qt/qml/QtQuick/Controls/Private/ContentItem.qml,sha256=6ryDIr4mNkYhq7BVyPxgVnSW8DKDzLKd9SKC5an8HLI,4611
-PyQt5/Qt/qml/QtQuick/Controls/Private/ContentItem.qmlc,sha256=MSVWF3gMR0pKlg_DVZ7YzZfT5jUZXAH7FyEco1FoPVc,6460
-PyQt5/Qt/qml/QtQuick/Controls/Private/Control.qml,sha256=rmDHYdFt8c_DMI3x1gDVrtQDuVN3tWuHClsIr5_uR2o,3391
-PyQt5/Qt/qml/QtQuick/Controls/Private/Control.qmlc,sha256=-pNuejXp1aB91giYzlrOxQWPJsL9lo5tTijJKVohHhA,4704
-PyQt5/Qt/qml/QtQuick/Controls/Private/EditMenu.qml,sha256=NWeoK_dubwgS1GSaKtZOMWtYdjRyKEND2G_lYrDtn78,3373
-PyQt5/Qt/qml/QtQuick/Controls/Private/EditMenu.qmlc,sha256=Rs3qTW2D40PNcJD_kADE3Bu8s1yYhUnmsDemljwqDOo,4540
-PyQt5/Qt/qml/QtQuick/Controls/Private/EditMenu_base.qml,sha256=vV7_a2a12NucHOboK9EA75e6QTZWdpgv7_4HvrnoQN8,5979
-PyQt5/Qt/qml/QtQuick/Controls/Private/EditMenu_base.qmlc,sha256=TsFy5lxBVDyuyWFTMvMVe31Ef8widXxMaDYFeMTz6Oc,13680
-PyQt5/Qt/qml/QtQuick/Controls/Private/FastGlow.qml,sha256=VF3o8WTKX0nqc_eggwX7EoBrx7JlT92bCxTCdb90PPU,9830
-PyQt5/Qt/qml/QtQuick/Controls/Private/FastGlow.qmlc,sha256=bMJ_NMAFqVDFH6laU1CfwgzF9kBXQdeeJcTJhZa14CM,20952
-PyQt5/Qt/qml/QtQuick/Controls/Private/FocusFrame.qml,sha256=pMbwkE_jpCiYpKa2YkkQda5dEKggFyBYv4jNFWxzOyw,2653
-PyQt5/Qt/qml/QtQuick/Controls/Private/FocusFrame.qmlc,sha256=oDKjwin-DsaRMk4AtARxkT6kKr59azSnNFkw2M0EhH4,3868
-PyQt5/Qt/qml/QtQuick/Controls/Private/HoverButton.qml,sha256=837myBpAIwnMSetpqVAKQeebRmDrjYZV4x0u5lVxQ84,2931
-PyQt5/Qt/qml/QtQuick/Controls/Private/HoverButton.qmlc,sha256=VkcFhWQ5G26z_linPQm3dy1kXa9BydJzgoEt7DzQZGU,5480
-PyQt5/Qt/qml/QtQuick/Controls/Private/MenuContentItem.qml,sha256=zRDiOBLJnrY_w0wiao-nOa5NKtdRu8Ny3jf-HY7lU8s,11186
-PyQt5/Qt/qml/QtQuick/Controls/Private/MenuContentItem.qmlc,sha256=QO4E84UpqGjQDEPr0TWub4uzqL6Jl1QwkvA45lau6YY,25936
-PyQt5/Qt/qml/QtQuick/Controls/Private/MenuContentScroller.qml,sha256=x-xUQEwxaHJr2MhO384DABOcTI0AM97ebHW9vxgzAyE,3156
-PyQt5/Qt/qml/QtQuick/Controls/Private/MenuContentScroller.qmlc,sha256=H-YFfqcp_TeWZ8_nDQf8AQ3Bb3qIslI3NMq86yXKesc,5096
-PyQt5/Qt/qml/QtQuick/Controls/Private/MenuItemSubControls.qml,sha256=dufxcP4VfHjn2ALcB5jK_XSbW1UNKj_esmmfvJwLCas,2220
-PyQt5/Qt/qml/QtQuick/Controls/Private/MenuItemSubControls.qmlc,sha256=0utFi97YihLFtO2-zGcify0wyoh2drE74J7vUEfmcWc,900
-PyQt5/Qt/qml/QtQuick/Controls/Private/ModalPopupBehavior.qml,sha256=rSJr-vRU4_wUcN_fSHBgvMTOh8bB4E-fQdP-4rFjGV4,4605
-PyQt5/Qt/qml/QtQuick/Controls/Private/ModalPopupBehavior.qmlc,sha256=rxXtr0kY1NAFAhDXbsolJTTj-a6UONH9Cfog5t1EPBw,7268
-PyQt5/Qt/qml/QtQuick/Controls/Private/ScrollBar.qml,sha256=D19Rz-6D57q1E_av8jKVilSVLTjWX8arUtCoc7_sgHc,9203
-PyQt5/Qt/qml/QtQuick/Controls/Private/ScrollBar.qmlc,sha256=52yyRqM9QxEr6swmvhJDb5Pj7vABXBGyfuIJicHhZLc,16848
-PyQt5/Qt/qml/QtQuick/Controls/Private/ScrollViewHelper.qml,sha256=_na-BpZ7YAzQcQRRz8LWd_daLQHdd83wI-FW70hPCYA,9181
-PyQt5/Qt/qml/QtQuick/Controls/Private/ScrollViewHelper.qmlc,sha256=tQyLHYgRRFHmi3684wmIoYu79eANyegX5StqqDJwDSM,21612
-PyQt5/Qt/qml/QtQuick/Controls/Private/SourceProxy.qml,sha256=PDNevGCmDrzqOypGijQbKvOTXfCriPEI9Rem3bHk7ig,4873
-PyQt5/Qt/qml/QtQuick/Controls/Private/SourceProxy.qmlc,sha256=j7v0DLXPq3It59m7oE3z1x0POyJSKrLEX2p_awFGl5A,5652
-PyQt5/Qt/qml/QtQuick/Controls/Private/StackView.js,sha256=SBgNNeNn7_RoktmeW7BSEPCTD4fxqy7hLJ9kIojgODY,2361
-PyQt5/Qt/qml/QtQuick/Controls/Private/StackView.jsc,sha256=x56b6_GuiPaa-m0iB3oc2lE6x_LD_0iZjzJIq5vzoeI,1224
-PyQt5/Qt/qml/QtQuick/Controls/Private/StackViewSlideDelegate.qml,sha256=obXJdYJbRTxagPLElplVx8CvWnGry2Oqyfwasn17qgA,4863
-PyQt5/Qt/qml/QtQuick/Controls/Private/StackViewSlideDelegate.qmlc,sha256=BWecqoQqKDe06-Lk1dZdKCR7NxilqkDC9Q7N0NBhHPQ,7652
-PyQt5/Qt/qml/QtQuick/Controls/Private/Style.qml,sha256=sY6d6fvXt8yprAi6rVIWxpUULN_MQbfK832VzUi8U68,2266
-PyQt5/Qt/qml/QtQuick/Controls/Private/Style.qmlc,sha256=jtAyLMAGV1KTyeUlpgcg4hkP-LdrHZxypywStMXiOLo,1036
-PyQt5/Qt/qml/QtQuick/Controls/Private/SystemPaletteSingleton.qml,sha256=5W873P2HnIaT-qmiefBZ2TICyhfKJG1dGoMc8Ar0IIA,3425
-PyQt5/Qt/qml/QtQuick/Controls/Private/SystemPaletteSingleton.qmlc,sha256=RiqUYUffXf7Bp1BzmbU4S5oYVa0waDJCj5Jx7p5B5WI,3620
-PyQt5/Qt/qml/QtQuick/Controls/Private/TabBar.qml,sha256=1_S4hsUN1-pqVO70jDRlDlrK_jA7MyBE0xYrodjpY5k,12756
-PyQt5/Qt/qml/QtQuick/Controls/Private/TabBar.qmlc,sha256=AIEgrXfcDCASKTakI-f96gNRganIxnnBtVDFXIetXdc,33232
-PyQt5/Qt/qml/QtQuick/Controls/Private/TableViewItemDelegateLoader.qml,sha256=-YnMUmYpKK2W8mlcknrnqQMHFtK4syo1WN5Ipx82gFM,4634
-PyQt5/Qt/qml/QtQuick/Controls/Private/TableViewItemDelegateLoader.qmlc,sha256=_mlCPhA8y6J0TypGis-iUcf2acB7Ig3BTMybYrZO3tc,7840
-PyQt5/Qt/qml/QtQuick/Controls/Private/TableViewSelection.qml,sha256=7Rk1WRw_mmOj9hI4Oc46i4hp0DUISVg-3bbwdf_4ko8,7164
-PyQt5/Qt/qml/QtQuick/Controls/Private/TableViewSelection.qmlc,sha256=OKbrJmCwc_xAsQq8qbf5we44JV3Khe813xFsPNdk86Q,5836
-PyQt5/Qt/qml/QtQuick/Controls/Private/TextHandle.qml,sha256=W3qQQ8ks_LyShXnBNBUk8DTqyDdJT6Qg7coEmNUDQvM,5192
-PyQt5/Qt/qml/QtQuick/Controls/Private/TextHandle.qmlc,sha256=7oV6UIUME1EtJ_BRm3EZ0QiGYsPT_-ajYdRJ-zrkBWE,7576
-PyQt5/Qt/qml/QtQuick/Controls/Private/TextInputWithHandles.qml,sha256=KMRah_XM63rJ3v_WkQ-x4VY-Cy-j40kT07a9OwDF-4k,8229
-PyQt5/Qt/qml/QtQuick/Controls/Private/TextInputWithHandles.qmlc,sha256=wYgY6fR5XxgZM-4Lnw65FciEvbfJWEHzq-Zrb0IICeU,16528
-PyQt5/Qt/qml/QtQuick/Controls/Private/TextSingleton.qml,sha256=hknUEdsaa9Aq5jB2ov4rEFC69kq6y6lYkww-UuzxmI8,2020
-PyQt5/Qt/qml/QtQuick/Controls/Private/TextSingleton.qmlc,sha256=P7F-lp7grHtRJT7D4Z9w78ZmJgkB00M2DVtDIHyVcw8,500
-PyQt5/Qt/qml/QtQuick/Controls/Private/ToolMenuButton.qml,sha256=ehNpFbF5zHX5UtHle2IiFqyIQpXgha7MCH05I_W1sLo,4615
-PyQt5/Qt/qml/QtQuick/Controls/Private/ToolMenuButton.qmlc,sha256=OohINtLOGO0TqbcabPw1sw_fobKxkdizS9kwo5iTGTA,10068
-PyQt5/Qt/qml/QtQuick/Controls/Private/TreeViewItemDelegateLoader.qml,sha256=6OCYpiK0HAkVKPYcYR_b_vUsncUMMkw1kbLob7IThPw,5059
-PyQt5/Qt/qml/QtQuick/Controls/Private/TreeViewItemDelegateLoader.qmlc,sha256=vP2GewTNnN6hJ4HlW9B0yeuHT7N0pqHk64WcXHKDC48,10336
-PyQt5/Qt/qml/QtQuick/Controls/Private/qmldir,sha256=-kNGhvarxygT8ShaL-Et3P8PGX7XGe8rFVdoHfc5_-w,1486
-PyQt5/Qt/qml/QtQuick/Controls/Private/style.js,sha256=4zfHMyWuGHYxcqMouBmwNub0LEEqd0VHMbFKxfBaHj0,2540
-PyQt5/Qt/qml/QtQuick/Controls/Private/style.jsc,sha256=oUVv2QG1v_FI26Y3H179G9cHNbZsblUmZ8rNhpAccz8,1976
-PyQt5/Qt/qml/QtQuick/Controls/ProgressBar.qml,sha256=TzW8Yliig7JQrEW--pxtacSer0gF0kqph95vhKTXPpE,5692
-PyQt5/Qt/qml/QtQuick/Controls/ProgressBar.qmlc,sha256=L8LM-5EOpDMKNQhWILWEtdog8DgpvF3Muokwnw-DOdM,6204
-PyQt5/Qt/qml/QtQuick/Controls/RadioButton.qml,sha256=aXUb8UAc0CdfEmmj_xJF6UyatglLUUQuhKB2F0LRJyQ,3653
-PyQt5/Qt/qml/QtQuick/Controls/RadioButton.qmlc,sha256=uJk1A_NMMBpEN0U5Oly1uhJvkc6o4xXChI7-r_HHQtg,2400
-PyQt5/Qt/qml/QtQuick/Controls/ScrollView.qml,sha256=c0cOySXabyLPiFbWQU5MX6pEyPj0uyfxKS-u0kxQO8c,14566
-PyQt5/Qt/qml/QtQuick/Controls/ScrollView.qmlc,sha256=UAmSOWTyi18thUbjsg_k-MAmeCFk5-zztiYDf_2tBjY,21260
-PyQt5/Qt/qml/QtQuick/Controls/Slider.qml,sha256=PYEZiHsDCdgN1JQL2KcNHSFWHsDbHIqgnzwpWInH-CU,12350
-PyQt5/Qt/qml/QtQuick/Controls/Slider.qmlc,sha256=5_P_ouxaeX7tmTopXv6x7acrTNsQqsBLuS0FUFrQoQ0,18796
-PyQt5/Qt/qml/QtQuick/Controls/SpinBox.qml,sha256=YaWRJliO2dCiqwt2nWGNbjRoYdqOlVYkvjgJUk6BEX8,13281
-PyQt5/Qt/qml/QtQuick/Controls/SpinBox.qmlc,sha256=4iAaE-Zc9EOBL6v_ug1WCl1j8-AqDeWRsRi_K6seIFc,26020
-PyQt5/Qt/qml/QtQuick/Controls/SplitView.qml,sha256=tQA3j6Zb53oPCP4mt3F4nZAlkbDkaQi0O3qqyAzpF4g,25742
-PyQt5/Qt/qml/QtQuick/Controls/SplitView.qmlc,sha256=ivSYjRYXJtXDwuAsiuVH8vo_I7yOxLQHFtsKYeBLyKU,29168
-PyQt5/Qt/qml/QtQuick/Controls/StackView.qml,sha256=VxURdarHBGMnSrzLzz5X4IvUzG58S9luNkbQPXxQdm4,43458
-PyQt5/Qt/qml/QtQuick/Controls/StackView.qmlc,sha256=UPk1y7zR9QcINifKpdOTh9R1IshtnRQNKkN-LWLSi14,16708
-PyQt5/Qt/qml/QtQuick/Controls/StackViewDelegate.qml,sha256=aTX0QcwPq-UfEC9HSV9hrc7SoxxYipwcbQNiDJQKCz8,3701
-PyQt5/Qt/qml/QtQuick/Controls/StackViewDelegate.qmlc,sha256=fgCGrZyyn49RmPbiXNi6hpBj3GNO0Alqn5h2LtXziWY,1824
-PyQt5/Qt/qml/QtQuick/Controls/StackViewTransition.qml,sha256=FOZWMjM-2f4V2H4TgSLnbLlC1eTg9Yd266Js23OVPgY,2535
-PyQt5/Qt/qml/QtQuick/Controls/StackViewTransition.qmlc,sha256=VxWaAsftPMviLhZkxTSFULGSk0SNA0wxyf6-FEWIfqc,860
-PyQt5/Qt/qml/QtQuick/Controls/StatusBar.qml,sha256=pCABWa2ih5_znZStpSxk5dkQ3Hs3U0OOj5MEvT3XGis,6358
-PyQt5/Qt/qml/QtQuick/Controls/StatusBar.qmlc,sha256=dM9O0lLfSY4ECLaoGEco81UpgDDPwaEONySCL5079Mo,8284
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ApplicationWindowStyle.qml,sha256=WmZ9oDt31O8B2am_ncoWhkXhArEUdnh0GJK454XqbFQ,5195
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ApplicationWindowStyle.qmlc,sha256=mHRCs4gB9iR5oiMjaYYpiA0OkmIV6qW4UZkIm1gllVw,7132
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/BasicTableViewStyle.qml,sha256=0CRGRwulzVHjkO4bb3gICUKwmXStCJCIl1eVtVzlnc8,6586
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/BasicTableViewStyle.qmlc,sha256=tE-X7hdPK4NP_psuN45IWaVQ50qXm-FcVLHz-OQMSYQ,11620
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/BusyIndicatorStyle.qml,sha256=iMxStQ7JD7jbbdHLqBmS8ynd9OLiQ4dCtvaMfuXu-AM,4455
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/BusyIndicatorStyle.qmlc,sha256=IhoiTBDQwvNLQp7IRZZNEej4M-w1C1I2lhdPZUJ75Sg,6772
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ButtonStyle.qml,sha256=48Bb8yR64EeZHQW9h8n9j9KCv6ZTceijbd896rXJf94,6821
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ButtonStyle.qmlc,sha256=qPx9xd-pHBwGDMRRWgu9qH1fS7kfVN6yuRGBuioE2sQ,15168
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CalendarStyle.qml,sha256=gyEn7SUt_SZyB9QyjG-QVXeH2Bz23JRIpaP_LrYQmXY,29823
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CalendarStyle.qmlc,sha256=ezoh-qWxsTy6MgIy2tLzRH-2ke8NE13YBzBCa_GHM_o,46420
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CheckBoxStyle.qml,sha256=TK_uM5BkDr28m_whu9VdY5BbXCkyN-4LX80llth1pK4,7275
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CheckBoxStyle.qmlc,sha256=eAFR2GV4oytpk2m4x5U44JhcmxCmS8zovnGWd2gPWRc,15996
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CircularButtonStyle.qml,sha256=Bbg6-N4Hq1dS6acvxg0b1ZurfpkbKZMUltEuuiTqHhw,3373
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CircularButtonStyle.qmlc,sha256=ckfvWmCMqBps7NrFsVBmy4jrSIt9ZrnbbsT52nObAmc,7324
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CircularGaugeStyle.qml,sha256=Xd1FnQ5W9CZyyiObXt2WUKtEK1-dYhBb2hl5CyIIggk,18599
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CircularGaugeStyle.qmlc,sha256=RnWAOlAsaSmP9TdH07HJQRVm_JviOlIZvWIbpj-4yPw,18048
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CircularTickmarkLabelStyle.qml,sha256=73YY5qNrb3vXg5bWuYdpQJpTh0mhJwixr3O7SQIcIvI,13645
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CircularTickmarkLabelStyle.qmlc,sha256=XITTqCSH4VyUPzYF8PU_BGvGhh2QUJUm076_d_cOuYc,24400
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ComboBoxStyle.qml,sha256=ft2gD2hIeH20vTigRBjS-Zq6JtQpav1no_Z6vsMMSUk,12375
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ComboBoxStyle.qmlc,sha256=YGJ3kfRvJTGpuJ7boSciCdkfHgmXvf6DRi-ZvPEHYiA,24900
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CommonStyleHelper.qml,sha256=df63lUA4_GBaehEVksFrgyhnFuT9UJYV_dwkGfp62Y4,2688
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/CommonStyleHelper.qmlc,sha256=domjAQpdkqeyn4LXtkij8Aj_sV0Jgtn69GiR2PjwMqM,2548
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/DelayButtonStyle.qml,sha256=lSgjYEXir9dGIOD-zv0lo8PvW1TbIkH2C78x2EYhr7g,7407
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/DelayButtonStyle.qmlc,sha256=nlyVGVP9oQIOFeyhACoHJPMwZM4S-9mYyOsR8izMgSI,16936
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/DialStyle.qml,sha256=aNOMIrduKNmUtYep7drc34doKg8meFUf5ntoxzcQe04,13309
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/DialStyle.qmlc,sha256=ypW0nGLYYJuYGateiK476iZWSvt4cOt5x-JMtxkt8FE,18736
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/FocusFrameStyle.qml,sha256=Sm_fwcgTQda0En3XbPMKRs3x6ggBVjJ8ZB2TZZrRDks,2195
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/FocusFrameStyle.qmlc,sha256=dqa58Veh2qoXJZgfymBDhNMu2O4D4gh3eXxDPD1Cd9M,780
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/GaugeStyle.qml,sha256=R3IPs2AKZOeC0jwxa4jioLjATdtBRcTz_HFciOXErFg,22836
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/GaugeStyle.qmlc,sha256=yglBJHOOWRwhkD9pijLdhRjOjXTAKvHR0b9lSK01Cro,30008
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/GroupBoxStyle.qml,sha256=qHytWwuj_g5n8YPuR_M7D5LnM-0xUIIcDedtitej1mQ,4956
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/GroupBoxStyle.qmlc,sha256=jJBUhqfZQbiQxXMojNcqLgfR-6GNeNci_Vx7BxNDfUA,10680
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/HandleStyle.qml,sha256=DEnu1OATzW2SGnOjYq4LSSiMkTd8sab9HZo8GnnbeNA,2849
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/HandleStyle.qmlc,sha256=fvnaKQu5xQLcEwcDq0RuRmZrLpo2F046UG19G0V1XcI,3528
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/HandleStyleHelper.qml,sha256=CLNDK8oCAUTu5jqOulT82d5qutOTaOMW6l6z9ifowRM,3955
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/HandleStyleHelper.qmlc,sha256=3oW7WDNp1uBBvNv3PsKMw9PXZJJTMpYMYE3O3nHWixs,3388
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/MenuBarStyle.qml,sha256=ELA4C3NY3HrXCl2ikr7oJ4pxcSScjmtk3dvcTWTWiFo,5266
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/MenuBarStyle.qmlc,sha256=rc0-k83SH75BrOEmDjhyq9KvCrWFY_vlIna3TpucSJE,5216
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/MenuStyle.qml,sha256=ifjw_FCQjhnsLs_TmsU2Y-lUiIEuiwWWYYTiWxE53xE,19028
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/MenuStyle.qmlc,sha256=VGqnYf1x7ubf2F6rA6WfvObMatqRXqV-4Te8eaAUFBo,26520
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/PieMenuStyle.qml,sha256=knE15wAgnO-jHG2gd1AwuiIYJCuqbXy-kCistZ3Thas,13577
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/PieMenuStyle.qmlc,sha256=ZYpVzEXJJBRchoP_6dIOZkDC5CuQ_5Jr4TDjBVcPyi0,19608
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ProgressBarStyle.qml,sha256=0_qvpmMLzQPoHd4th0hsvNDEpbIHhcdDQvN-ACtloq8,9671
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ProgressBarStyle.qmlc,sha256=Qksz84iM5f5d4MDh4dipsC5WIhu1xHBCmKn_GgSCq5M,18644
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/RadioButtonStyle.qml,sha256=paAIEFLzrkyNl0csoa1q1n6MSgV1gUPLGMqOmRFN-6o,6421
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/RadioButtonStyle.qmlc,sha256=lPVYn3xV4RF2PCEEV8kY_filnnwWQFeeOHalFd1wr88,13680
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ScrollViewStyle.qml,sha256=jokVTL95RtdlUUm39q7XdSjJWojz92d8LRV535o9vfg,17548
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ScrollViewStyle.qmlc,sha256=p3VJ_V3zhYlrQD_EmUt0sfXbUrMkA48BQ89SCBu1s5k,35012
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/SliderStyle.qml,sha256=Kn0r_INKSpAu5gNhpmk1XNoOQBgj9CE3uDUE-Xvgcj0,9011
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/SliderStyle.qmlc,sha256=AuzSPNaQkQPDHwXB1rpHUnhz4Com4_UqIgX5Rn13jl8,18504
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/SpinBoxStyle.qml,sha256=yS6m1jPktcscK1RwltZ6q2R2qcdJPsqXc4NaL_pOIvc,9683
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/SpinBoxStyle.qmlc,sha256=uqGJMZyKMEX1moy3iFJaM3sbh04s9lfxpo0_7xXk204,16116
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/StatusBarStyle.qml,sha256=6cFE2I2rDRRvOzICMxO-Fmv0_HPlifQUP0QXZBeJ89c,3884
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/StatusBarStyle.qmlc,sha256=Ho3P6cUgv_-xlfHORzKD8j3prVn5lJEU31afdrSPcfc,3620
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/StatusIndicatorStyle.qml,sha256=DVHZxI2Fo_WJXE4RfAUtzFMsKTEq6mTlHU_7PZqCPzc,9004
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/StatusIndicatorStyle.qmlc,sha256=H6gp2eSQVwvG1tpIXcqYgEo_Nm6I7R3V4o7jP19vsAs,13728
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/SwitchStyle.qml,sha256=VvAcQ15b0LbtfP8itoZRqiyrYBiVYoTpciD2ukbEczM,6038
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/SwitchStyle.qmlc,sha256=sM7-QpI4-iZl0O8FRzoN8BCjvNzjv4KUeCb4mKvgTmg,13500
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TabViewStyle.qml,sha256=pTEZNFAbUCnuK-L2t1sA6JIOoF0OlndvriMIpelVsgA,7770
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TabViewStyle.qmlc,sha256=YEzxlAbkS1zIqshS6xRwx9FJcOhGLJyRK6SDfCNvuHI,11596
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TableViewStyle.qml,sha256=jnFyRTUeOy0368L4aiG-cN4fI-QAxNh85_X6X34Vybs,2116
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TableViewStyle.qmlc,sha256=9AEzDu4BDR8dG_a-DEpAUgqXuyEQF9VdBAJw9AZd65I,988
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TextAreaStyle.qml,sha256=-dYnJ2ef-xfUJznVnw9RmMJGUGScAc8NwSTsQTvWutw,6192
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TextAreaStyle.qmlc,sha256=6-BxsQwpAHmsx2l92REp5GtnRj-eF9C8dae5O-j-j1w,3788
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TextFieldStyle.qml,sha256=7W2MFPzv-RfG7vhXcjuAhfREpFa5UESgHbZangICyLw,8423
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TextFieldStyle.qmlc,sha256=aaAZw3aQKfikzvdxmhh_hSLzDZh-OqMYahsTQnsqSGM,11656
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ToggleButtonStyle.qml,sha256=dhzdOc59WnmJKmMvsYSB4natAz_k-lYzsQl8BqfKkdM,10134
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ToggleButtonStyle.qmlc,sha256=_SQ6emA0j5VMFNE7SwJu1wOc54U863XU0cQa2ghDXic,19976
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ToolBarStyle.qml,sha256=gtR2_TZ15fSq9iLvAhGDXYWfutbnGP1fEA6awyjqSg4,4448
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ToolBarStyle.qmlc,sha256=1pk0dPakqIA9M5DXnRIIlDVrxgPtQ67De1N6Q_MOAWs,4140
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ToolButtonStyle.qml,sha256=GVtzRjbztVeJzAe62hNNN6ola-mJ1L3o4QRWxZjeq_A,4334
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/ToolButtonStyle.qmlc,sha256=yW8RVFgCmpAeVqtw6oXsRZGxX9fkB98-O6iBw-SD_lY,9848
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TreeViewStyle.qml,sha256=g4ydaHPUfO1kwwiYHogmXyz4D0JUC5RBGyjDpe-TA0k,2813
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TreeViewStyle.qmlc,sha256=yKFVlcTy46j9b1hYg_3bBzvY-3THbOAUUI1XLzi6QXc,4980
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TumblerStyle.qml,sha256=0jqQ2x2LDdfkn3-Dz5yLpRCyoUElpFLyIvggaIIkV68,12873
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/TumblerStyle.qmlc,sha256=QwB-W7l8CrCzixrrTe4hYQQZysqEAOe4d0p1xJi3rx8,14020
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/arrow-down.png,sha256=DQ8G0Ok8ii8o2mg4uwvcm0bcebvwh2252339hrEzy5s,99
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/arrow-down@2x.png,sha256=t4ujbvld67AtUha8miuS9qnqIK6Q05hetEgpo1iJSto,138
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/arrow-left.png,sha256=4-9GpaSMSI8q9-RkQOKMvykqjmQBRN_K-JZoJAmZTBo,98
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/arrow-left@2x.png,sha256=xcPRXIykF-Zlaf39ae3oP2qfM4Uk5Vwh_9hvEYgOTI0,139
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/arrow-right.png,sha256=raMcq98zkxQGT5BesHKgiV7AcjLoKHqaIrqCo0-t03g,99
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/arrow-right@2x.png,sha256=IAcBjzKbRhNkpOA4rVygMhUqPSWwY5TTLhuh7b8twn4,148
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/arrow-up.png,sha256=0G2oScAIB5UH9JUWlsDASdCAy8wF11cFXYyY7CPIELg,112
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/arrow-up@2x.png,sha256=46c8SvkYZl0v91_jZ-IH_XGtlv-VAtUSBYapLUB27TQ,155
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/button.png,sha256=vhXaG1351NsGu8VWc3MeP94j6Co5g656VgudoSA6Za0,554
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/button_down.png,sha256=KS2hVkzqU_xjID0BhPwPKEnBaaw-yUigNEwxtnSto-w,203
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/check.png,sha256=9HKQ4T2AIQ7brWZ3EGgUbSwrgfxEREjK1N3F1fr3M9A,176
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/check@2x.png,sha256=9kXz1UZBVb6Q-0cL-7zMsNSoIbG716Gc_eRiNTOH_Hg,417
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/editbox.png,sha256=sgbuTYa2onmrqt741nRJUGa8o1NHm_Tqer_cxkX_w-o,416
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/focusframe.png,sha256=2ycqdZPTzWaqK--UXJas9ivAvf5FjhHOIMcrzvXM6s0,271
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/groupbox.png,sha256=RHDoNL8ajC6wJdZR7Vu8cWgaqJg4iuF_iyduitZBoLg,225
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/header.png,sha256=_vUtAKlVs11Q-q_AjJ8MbFXUvDWwEAAgDhPbRLWeyb0,383
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/knob.png,sha256=RV0F3fctdrWjyLRjP7GUk1EdpOBHGdMI3np_FStRa20,1703
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/leftanglearrow.png,sha256=g9lsbPgurudoTcZjswcrEM7lwbPJ-fHEn6e6Ms_6vEA,206
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/needle.png,sha256=3gvUeCirnGkppUUtlrXGrBO5nA4_zBWciF7BWkzT4sc,2036
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/progress-indeterminate.png,sha256=EN1ZFfA1KuOlixJQ5ElmBTerNv8LcN5vVNPiKvTt8NM,1453
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/rightanglearrow.png,sha256=yyZDaMDUgB1NtMVmU_V2cdBCxZGuJIJMYuJNVUWJDec,228
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/scrollbar-handle-horizontal.png,sha256=7owcSxHopKULCNdZdYOg081058ubd95H_oz-5xs-S14,825
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/scrollbar-handle-transient.png,sha256=v-MmMlihRM2dK4W2zkyhVhTmzta7smN1nerO-DxhzpI,153
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/scrollbar-handle-vertical.png,sha256=MpUBeEp3V2FTHA6CsudMycukZMCjjpPbMyMFTF8RfVY,839
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/slider-groove.png,sha256=0ry5TdvLWAO5Jw94LtUse24NH6mq99v-bkGXHAzr9G0,565
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/slider-handle.png,sha256=x4QFsVZJfI6Eq_y5c0D_4c70WZ3SfD7EvI_SgvkLVW8,524
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/spinner_large.png,sha256=wfofAYYat7tUi-3XMKSxIMeXmH3xDPe9KAlUQ4fHrh8,4723
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/spinner_medium.png,sha256=D2IPIYAS7W_zCAkEbO1co3IydFS1nAtNlQFjm7_9POA,1621
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/spinner_small.png,sha256=jDHm837uJ-a-wC2_tkUrnwgx1lhuR9zkOS6fuqB-ztU,998
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/tab.png,sha256=V7GuCYjGFQgnBWmM442CsK7Ea8ERQazGLxZVSvHyeCA,390
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Base/images/tab_selected.png,sha256=sRj4jY1XIB4rvR8doB_jSNMBHvyDs_kJshx6stq7h-8,437
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ApplicationWindowStyle.qml,sha256=Bek_ONfJ_GHeeD252i7LKTJ-79DB2Mmzmtm5AiTHFwo,2037
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ApplicationWindowStyle.qmlc,sha256=e-STVMf6qNFdggDS-JTAhwOtpjFuXnJJqZlNILCBIGQ,564
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/BusyIndicatorStyle.qml,sha256=JpsUpDknnBso4tZgk-QsjOyfnsSmmWYzsmPKymRg-sk,2033
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/BusyIndicatorStyle.qmlc,sha256=v_jvchPmgzyZmClrKeAfgWv90iCSNgII4QVJ3MC3B-U,556
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ButtonStyle.qml,sha256=Vr14ejOtwSnUEJLKouOLrAdPCr65Qwyi7hNFZtEqVbA,2728
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ButtonStyle.qmlc,sha256=G6a6lonzf5UILahh9h-JTty0WsEUMUimxLuf5mTZ9o8,3856
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/CalendarStyle.qml,sha256=FfUNB5FEWBjpM-gGULqhapTTuUA7IW2H_sG140DR8mc,2027
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/CalendarStyle.qmlc,sha256=jPwBSHx1xwk3eZJDjyCj5jUQD6Da0cRTHGywJBb5eY0,548
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/CheckBoxStyle.qml,sha256=5M4-LDVv3BH31a5AKWAs2-X0DhA81IIoGo2fjubrmTY,4043
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/CheckBoxStyle.qmlc,sha256=2JiR4ulWZUXGc1wDfsq9PZqGI0lax5SGEKuX9RrY5PE,10240
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ComboBoxStyle.qml,sha256=uOyIGjXPfpAVTSQTzc1TwrExVWwi6W9UL9k0-jrjTIM,5292
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ComboBoxStyle.qmlc,sha256=2cZmqInCEYaycDJRvdTDxhq2g-TeLfiqAza2bY61raU,12192
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/FocusFrameStyle.qml,sha256=gwfO742G8uMHtnocSgszr3uDzEll9pixWWCEHSCxnyk,2261
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/FocusFrameStyle.qmlc,sha256=cOwyKYFKt_Dl6Wzl5mkeSW93umod7a1X5jy4tVJZAl0,1312
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/GroupBoxStyle.qml,sha256=aFjbAfogrYNVm7XbubtqdxHIxpWexT_r1NCpxTcM9Zs,3230
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/GroupBoxStyle.qmlc,sha256=Wvz5DWQCYgQvC9l8IZILhFvUnFRxG10I4PSG3-fHZMI,6488
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/MenuBarStyle.qml,sha256=F38hHuFWh-IxsqeQFy1crdY4AWgxrz5KVcT57ts34qw,3238
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/MenuBarStyle.qmlc,sha256=zl8FyH85O4w08APaeXSyv87N9pK4pglEIpSRp3Rpa88,5524
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/MenuStyle.qml,sha256=r3W7CQXWRqGhU2HWQquGodOJaV1rz-6Ckc2oV_hODLY,4683
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/MenuStyle.qmlc,sha256=LCfzwJepYAvncXWQYF0H4vtj48w6GzU6qJZ5UYyGTD0,9668
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ProgressBarStyle.qml,sha256=N07KlY7zayMkq77EXheeEVcPbeWpH4rT8lWTk7JA7Sg,2916
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ProgressBarStyle.qmlc,sha256=QG43tC-y7x-BLqsFdLkX4j0n4OS36XPPfw6ZAm4ay2M,4164
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/RadioButtonStyle.qml,sha256=1nPg9_rYQHSjdmAcpWREXpqLQoz1DDfqWdBaerWST2o,4128
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/RadioButtonStyle.qmlc,sha256=6ifyTSdx86p8MWSHfo2nXSaVKWP86DinT655EG0pBS0,10356
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/RowItemSingleton.qml,sha256=XBHtkRLz0obdA1HMUWaus897S8iEfAo1Qi37wU-086Q,2070
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/RowItemSingleton.qmlc,sha256=YAbm5jmxQ_LBPskFmsMLij4W3Z9duU4vJsvyzxCaLfk,668
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ScrollViewStyle.qml,sha256=pvDLpHZ0rzcnCNYAJQagUU_I8cbfkiQWtEVJvbXQiAY,3920
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ScrollViewStyle.qmlc,sha256=ocevsxp32-DlkmuKoFjKe2W8D0BwDPmpxyggSxx1vaE,9200
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/SliderStyle.qml,sha256=Z9OpS3WgGv7ghkTN7Q45PMMYCRb-bcm_S357FHJ-1YI,2912
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/SliderStyle.qmlc,sha256=IL1QgTBhHl17ecwGPKJudKkGvQ896FcujTSFk1ViodQ,5908
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/SpinBoxStyle.qml,sha256=vGqiNFhTZqQtxE2Q8VuvLNxgH0FY6aLpep6M5L2r4V0,5470
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/SpinBoxStyle.qmlc,sha256=oC70JRGMY9fkBynrix2UZG8Y7gOV5zos-EabXHfSp2k,14536
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/StatusBarStyle.qml,sha256=pgXhRr1kbJT131QzCVb881WqmUgio_GdLo_I3Hxv3HI,2491
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/StatusBarStyle.qmlc,sha256=r8L5Qo8YGfNoElge6oLvVzbPn11ml35QWUEetmdP6mY,2380
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/SwitchStyle.qml,sha256=ID8FccMB8yFXNsBkcYHYxAz33GyWxMIv7jJ6DyZDBI0,2113
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/SwitchStyle.qmlc,sha256=EDNMoMJPGGfwMR9WcWjWwg24cMkmYMF0QPI9XEqYEK4,804
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/TabViewStyle.qml,sha256=-o0jNFd09nPsLiVf_Xc7T3nJQCsdlv1rWdr4KWs4gyI,5403
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/TabViewStyle.qmlc,sha256=o5AeJI_0j2oj98sSOc3dLqE3uHPBgSG_vVl8g1EAD8g,14076
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/TableViewStyle.qml,sha256=15GAwLLR_f4dmeGC1e48KCYkAs_6gXggN55mYYyXYRQ,5378
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/TableViewStyle.qmlc,sha256=Z3vkzcpV4z2yr7Mje2gON-r6wJ76qblhQODGQl8Tv10,13520
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/TextAreaStyle.qml,sha256=xrADY0InUJ5l8L9R2nyTPd6e3u3seTmptOxqAy0VznY,2739
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/TextAreaStyle.qmlc,sha256=Bga14Gy6VNHERZfSSBG6SKPuXyFvP-r9m1oOBIVIrBE,3776
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/TextFieldStyle.qml,sha256=RpzHAXo96qV-Wtd_Z9ksSXMBWNTN09TOSgVlkWtL8EY,3377
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/TextFieldStyle.qmlc,sha256=akU9ZlEEdA0dDeSoSeENYLiQaSfNaOdUexM7Q4H84Ds,7512
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ToolBarStyle.qml,sha256=GaH2UxTRMGM_Ey38wGMnZ4cJRu3sHsMJTXfH6_He3qI,2560
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ToolBarStyle.qmlc,sha256=d7qffaXqzRmmBBJdZMhgCvnAjvtu0iM2xwBw0uYe3jE,2688
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ToolButtonStyle.qml,sha256=6riqZmCvxgC7Rjh5De52Eokibzdt7FBI_xMiyumWLqg,2679
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/ToolButtonStyle.qmlc,sha256=kFDiHgPAg2CcjYE39PjMwTqM1dhYbvns_sWUCyUJSnA,4108
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/TreeViewStyle.qml,sha256=8l9NiNfpGmQs8fFIQpA5im--Vsow6NJkFnT8Kvlb4ow,2851
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/TreeViewStyle.qmlc,sha256=Bx-XDzPZ8rjqrsIiwV75VngZ1LTlMHZWF3u7FIA7rRw,3692
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Desktop/qmldir,sha256=VUU-InLE41r2TGl6ke4IKHKjNznoj5vxjoEoxas7xM4,72
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Flat/plugins.qmltypes,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Flat/qmldir,sha256=qEoIu5WnAsgMJJaBt8Dm9CFz_qYZEklhJD9IBO1s2nA,126
-PyQt5/Qt/qml/QtQuick/Controls/Styles/Flat/qtquickextrasflatplugin.dll,sha256=Cv0lDBTQooFSugjwN2skcMJHhghA51fZpE_stvAk-XM,822904
-PyQt5/Qt/qml/QtQuick/Controls/Styles/qmldir,sha256=e7lLzJ-n2EnBDthPR2rXlRph1I_o947VIBlWQZ040Fw,1575
-PyQt5/Qt/qml/QtQuick/Controls/Switch.qml,sha256=sTqzfJ5GOpz45U7EkifQ2b_B4jBaxjPFIQGx68H3ZOo,5331
-PyQt5/Qt/qml/QtQuick/Controls/Switch.qmlc,sha256=7giktxgzr0A9k0N5Ym_2YLKCf_jRtx3N5_3JZJKFnPU,7552
-PyQt5/Qt/qml/QtQuick/Controls/Tab.qml,sha256=SYp1cqzBooWFd5hkjz_uqsdzZFVVc61yJfsqlJoFOfM,3001
-PyQt5/Qt/qml/QtQuick/Controls/Tab.qmlc,sha256=5qHnl8y-ZhtUj8GL_HtSlLnGVj9B395-ssImC80y1nc,2164
-PyQt5/Qt/qml/QtQuick/Controls/TabView.qml,sha256=bQddWSoRjKvQSIC4BoE9RH3Y04thKCpjBdK22MziofE,10775
-PyQt5/Qt/qml/QtQuick/Controls/TabView.qmlc,sha256=g2Ur_-eu8UDISUs2RJkfNiHmnI1SQ6aut0HoPhm8i3M,16012
-PyQt5/Qt/qml/QtQuick/Controls/TableView.qml,sha256=ELRlC2GWSCsiF8VZOhtwLh6F5ntYdp1oUxTHCG6GbM0,11555
-PyQt5/Qt/qml/QtQuick/Controls/TableView.qmlc,sha256=M4GpXKV9kZz6bSNxiggo8tCQiDPXzH9NUri_vnsJFm8,19696
-PyQt5/Qt/qml/QtQuick/Controls/TableViewColumn.qml,sha256=A_h_KiY811ULgFg5qdkQyIyWiidIXkBH7ali-f6kKOE,6792
-PyQt5/Qt/qml/QtQuick/Controls/TableViewColumn.qmlc,sha256=R8pCJMEEuQS-8eQjKNag5hwCxHV7exS5d3B27zPTbt0,3928
-PyQt5/Qt/qml/QtQuick/Controls/TextArea.qml,sha256=TCiFgJog3K74AZcRDTjnyFdhnRu5tWarimR9UxWqNFw,36603
-PyQt5/Qt/qml/QtQuick/Controls/TextArea.qmlc,sha256=9fSugGfjTPzvWncRnVF9BQoZ_uuwrNhFykl17dg3ec4,36008
-PyQt5/Qt/qml/QtQuick/Controls/TextField.qml,sha256=Cl7snmveWjGNaVNR6uoRh5KdCL2WFmcikM77QreEsnw,23187
-PyQt5/Qt/qml/QtQuick/Controls/TextField.qmlc,sha256=YfDFl84kC_QFWJK9HslywUkFphZ4E3wW6SoDXDyenjo,17064
-PyQt5/Qt/qml/QtQuick/Controls/ToolBar.qml,sha256=pv2_AIlrZrkSyEvYQ5RjfcQYx7JVM_3uE83ywMUwgJ4,7444
-PyQt5/Qt/qml/QtQuick/Controls/ToolBar.qmlc,sha256=AECswbjetMOIaeZqIiBIppigloB9CMoGs4dmVSaziL4,10828
-PyQt5/Qt/qml/QtQuick/Controls/ToolButton.qml,sha256=PQ--4AR5odb-vD9HIj-JAtNxpZr4TymMP80NEybirpk,3229
-PyQt5/Qt/qml/QtQuick/Controls/ToolButton.qmlc,sha256=E9vNPj6GDQsydMTMvqcaKqn2F4te9okrJmMjp7oQ7eY,1180
-PyQt5/Qt/qml/QtQuick/Controls/TreeView.qml,sha256=xolNEqDGCnwJnxuuVRU3yMDQTg0buiOq38E8Aw3DQ84,16820
-PyQt5/Qt/qml/QtQuick/Controls/TreeView.qmlc,sha256=T8ISX1Zwv0h77U0UC0CBkiyTGKG66a4OJP1zzXoXzTM,24424
-PyQt5/Qt/qml/QtQuick/Controls/plugins.qmltypes,sha256=Rav7KUd1YddKd_-6fOwJzL49ROReDVfRa2Ar8VGXVfM,157929
-PyQt5/Qt/qml/QtQuick/Controls/qmldir,sha256=371csHvd0aI0K4KkQs1KRQTYfQTfefMIO7o6AxiIvj4,212
-PyQt5/Qt/qml/QtQuick/Controls/qtquickcontrolsplugin.dll,sha256=A3P6eMGcdmJpGtNN8SllRDoAiRHwXFGrC0-d03b9QPE,284792
-PyQt5/Qt/qml/QtQuick/Dialogs/DefaultColorDialog.qml,sha256=KbgWco4bRFDntQ3akofWEFK8wmXReLzRZywn-xQx_tU,16805
-PyQt5/Qt/qml/QtQuick/Dialogs/DefaultColorDialog.qmlc,sha256=Uxtn2FCHT6Gzg_Z4nE3oLpuewPzloPcvqAG84o0S0hE,37888
-PyQt5/Qt/qml/QtQuick/Dialogs/DefaultDialogWrapper.qml,sha256=Cf29wwmLp33SJhuM2P2Dhm2Zjrm_qfaF2lxD_3jOdG0,8343
-PyQt5/Qt/qml/QtQuick/Dialogs/DefaultDialogWrapper.qmlc,sha256=ey1cKdIgfgyF5AI3eZ-IE0-pVFRljLUrmQgMxT-yFNQ,15488
-PyQt5/Qt/qml/QtQuick/Dialogs/DefaultFileDialog.qml,sha256=dWLd-yrGJqJT-jmH_O1d961-Ic5h6q8QLwBcxYb-a70,21837
-PyQt5/Qt/qml/QtQuick/Dialogs/DefaultFileDialog.qmlc,sha256=TXAjXK9dYv2bwRdlP1wUSAoEUSEK_RJNHjo4U6cM2TQ,48024
-PyQt5/Qt/qml/QtQuick/Dialogs/DefaultFontDialog.qml,sha256=R-ToRyxxlZocwS-whXKQ5lWskBxo0gkCSoABJVXwx9g,18789
-PyQt5/Qt/qml/QtQuick/Dialogs/DefaultFontDialog.qmlc,sha256=GOn3fn17yx_5UQoSZGCIyX2YBdZlhIn9KN3hpQZa2gY,37432
-PyQt5/Qt/qml/QtQuick/Dialogs/DefaultMessageDialog.qml,sha256=yqo0wqrfMtDruqzxd0TFeXt51NN3Mh-IE5s_E6FKthw,12934
-PyQt5/Qt/qml/QtQuick/Dialogs/DefaultMessageDialog.qmlc,sha256=C0aALiNfffEx9jW33iPuU27G5SMHv5ehJwmD4B00gdM,30384
-PyQt5/Qt/qml/QtQuick/Dialogs/Private/dialogsprivateplugin.dll,sha256=zPYDwQSiha0ZiSh_LTZBc1bA0hgb3kI7ymSx3LC4E6M,43128
-PyQt5/Qt/qml/QtQuick/Dialogs/Private/plugins.qmltypes,sha256=nydIMStGLJvWGhY4uR0vDjavCI2gbFXeOF0hYpkyWJI,12562
-PyQt5/Qt/qml/QtQuick/Dialogs/Private/qmldir,sha256=MoznKB_xDvDZCnU6cWkSZW0_l0dmJKWEqLUIRxJ_oA0,128
-PyQt5/Qt/qml/QtQuick/Dialogs/WidgetColorDialog.qml,sha256=aaZbZNcLIygliqGjW1Lh_E16T_vCtFi8jKSN1buyjI8,2046
-PyQt5/Qt/qml/QtQuick/Dialogs/WidgetColorDialog.qmlc,sha256=1obVIgFc89ZNY1_BrpU7ZjuGcj2fABB3NKT3Z1Rd2JY,612
-PyQt5/Qt/qml/QtQuick/Dialogs/WidgetFileDialog.qml,sha256=J13XRd59-6LP4gUTxy-R27zzqeeafFxYJt3hFkB_gxw,2045
-PyQt5/Qt/qml/QtQuick/Dialogs/WidgetFileDialog.qmlc,sha256=CBXvvhbokVbCENtzZJ1i98_oRv3cKT1MHYqU2GyrfWM,612
-PyQt5/Qt/qml/QtQuick/Dialogs/WidgetFontDialog.qml,sha256=3DbVpOcTpc7tjod8sW0wJylT5zbJn7-TMHUiAoHjou4,2045
-PyQt5/Qt/qml/QtQuick/Dialogs/WidgetFontDialog.qmlc,sha256=uA1vrihOjemQtl_xJzupDvpX8QpORR0OIinh8fSsYX8,612
-PyQt5/Qt/qml/QtQuick/Dialogs/WidgetMessageDialog.qml,sha256=3JGk5odpbEqoPlodbgW_3o8_roM4aRmC5C8ygq-aHm4,2048
-PyQt5/Qt/qml/QtQuick/Dialogs/WidgetMessageDialog.qmlc,sha256=88VjI0w5p-0GUqja3GOt7kLon0WhGQR9LLMvB3RfzEs,612
-PyQt5/Qt/qml/QtQuick/Dialogs/dialogplugin.dll,sha256=2GxjkFLkg913S-Vh1_eNjwdaFYxlH5kzu2mD2KZoRuw,123512
-PyQt5/Qt/qml/QtQuick/Dialogs/images/checkers.png,sha256=qfqrruEf3OahaVT0taz7jM6CuVa9qONlNuL6KlVlgz4,80
-PyQt5/Qt/qml/QtQuick/Dialogs/images/checkmark.png,sha256=xk9WUkkheNPnfDWMgWkgCoGb5QrlV9xanXHB93qi7Hs,809
-PyQt5/Qt/qml/QtQuick/Dialogs/images/copy.png,sha256=LxEVucHXBlC4RZcUp8QQomKdGZKiXkr57Kr6nPoSVNc,1338
-PyQt5/Qt/qml/QtQuick/Dialogs/images/critical.png,sha256=EfnRtFHly5o8B1OH1WrtEa_fX_OryHSxIiHmldXfnJU,253
-PyQt5/Qt/qml/QtQuick/Dialogs/images/crosshairs.png,sha256=MLSmyVpgatjpZJ9V3JqhAgY3rPhQ0gTjGQS3FEv0lpo,876
-PyQt5/Qt/qml/QtQuick/Dialogs/images/information.png,sha256=hIeOYfdgUBZhH7tJwH8ZY8SCO0EggWIHL7zaMJYzAbc,254
-PyQt5/Qt/qml/QtQuick/Dialogs/images/question.png,sha256=mOjdg_rAR7Qvs95p8nM7h2l8qKM_VK4S5l0tiIZ--Ao,257
-PyQt5/Qt/qml/QtQuick/Dialogs/images/slider_handle.png,sha256=j6XUg9g_5KkyDVJKU5bGxN-A9I5VOw_fNEs2V2I2rN8,1551
-PyQt5/Qt/qml/QtQuick/Dialogs/images/sunken_frame.png,sha256=tOb3WiVqgVOsNigkqLfaopx3AI2BLHjd-kj5FqJsn2A,623
-PyQt5/Qt/qml/QtQuick/Dialogs/images/warning.png,sha256=BUCKEkopPfVcpdPrYvNzyVQHX8fu-QPJbyVZqfPb7tA,224
-PyQt5/Qt/qml/QtQuick/Dialogs/images/window_border.png,sha256=m2sTzzBgkb4SdMYtDdVAA5Nc2-Kv3foj1xvjNg5EITo,371
-PyQt5/Qt/qml/QtQuick/Dialogs/plugins.qmltypes,sha256=lPW6ijWAl9p0SnP_S95bk0LXMvTqPkhvDR1EqW2VKcU,17671
-PyQt5/Qt/qml/QtQuick/Dialogs/qml/ColorSlider.qml,sha256=CcD1lAPIg7492Gairba-X1vkDtmr9zEJyHumYnhD8_8,5169
-PyQt5/Qt/qml/QtQuick/Dialogs/qml/ColorSlider.qmlc,sha256=AeCYI2ym1UYu-_9GDQ0Jgg8eTDu5VHhr7rJXVPkO3J4,10492
-PyQt5/Qt/qml/QtQuick/Dialogs/qml/DefaultWindowDecoration.qml,sha256=J-rT1pZ4E8xccqNXU20DU9amxE1RmdwPe8kYmT86-EY,2923
-PyQt5/Qt/qml/QtQuick/Dialogs/qml/DefaultWindowDecoration.qmlc,sha256=qGWtOE93pcDqheXLT3JdLlyMqLweq-KcWx7AFMnc9oQ,4972
-PyQt5/Qt/qml/QtQuick/Dialogs/qml/IconButtonStyle.qml,sha256=yXsVRAz5DqvxVdbqjb1Y_pgh0NSlt2iO6oRDLN9ektw,2578
-PyQt5/Qt/qml/QtQuick/Dialogs/qml/IconButtonStyle.qmlc,sha256=M3c8RhOnnd_MwqSoqVYeviPSgCqOqvccd-t5C9MVqeE,3912
-PyQt5/Qt/qml/QtQuick/Dialogs/qml/IconGlyph.qml,sha256=nhG39g6f3jx_kjgB8ibCIRAkob7d54zfypQWLlO2zS8,2253
-PyQt5/Qt/qml/QtQuick/Dialogs/qml/IconGlyph.qmlc,sha256=HuR1wZG9stuk5GNLM5YHHYCWG1DIJGzyXQMR0ucg9jM,2428
-PyQt5/Qt/qml/QtQuick/Dialogs/qml/icons.ttf,sha256=vJqUgV-fvarCgPB5O_EO40cmLq-Z-Gm8ECfmHH3NW7g,17372
-PyQt5/Qt/qml/QtQuick/Dialogs/qml/qmldir,sha256=8dzLLDtRRugQvQoJ9mb_dIesAfMOunnymUBeJOA-07I,103
-PyQt5/Qt/qml/QtQuick/Dialogs/qmldir,sha256=37lofafvZBfxSivVly4LgBU1qAAX3I6MDH5lU-U16jA,295
-PyQt5/Qt/qml/QtQuick/Extras/CircularGauge.qml,sha256=JPECI-iSXDZaX8weeSJMblk6Nho4ocK5VZeOTrc0BYo,5676
-PyQt5/Qt/qml/QtQuick/Extras/CircularGauge.qmlc,sha256=ryAXPPxREgeUvFMvCjJ6bHBnAuOfNGnHDfOtdTAlzAA,2272
-PyQt5/Qt/qml/QtQuick/Extras/DelayButton.qml,sha256=62NgHwcjpga-HkIcTkb-BWEFcwyywMQiVU_5nv5RwKo,5726
-PyQt5/Qt/qml/QtQuick/Extras/DelayButton.qmlc,sha256=bTYTSY3PUWQ-FeMBtqq1EGWW17ge5yeeAWlkWR1XE8s,4672
-PyQt5/Qt/qml/QtQuick/Extras/Dial.qml,sha256=yiNT2DAWJD-G2CfyLlzfg7XVX5waxWwMwf-WIV92iOc,7052
-PyQt5/Qt/qml/QtQuick/Extras/Dial.qmlc,sha256=32JkKAMsAb9c2ix-J_gR8LtO5MJw5Q6aqVNzIXSvvuI,7580
-PyQt5/Qt/qml/QtQuick/Extras/Gauge.qml,sha256=ZeQ3Ap1xzkhofSCPajFi93Wpc_UF-ZcrSH1S8eM4JAA,6678
-PyQt5/Qt/qml/QtQuick/Extras/Gauge.qmlc,sha256=8EvobvQ6EgUekrqeZHPapgaX5yKuzheejy0URMlqAbE,4644
-PyQt5/Qt/qml/QtQuick/Extras/PieMenu.qml,sha256=WBIbFzH10z2ZwRiW8jmaBGQdiOIVjJ53fgIA34jZtu8,29354
-PyQt5/Qt/qml/QtQuick/Extras/PieMenu.qmlc,sha256=P9FT4Kv93tJlogakgvTurkriP6Vsw6O64MBkcgqs62Q,23144
-PyQt5/Qt/qml/QtQuick/Extras/Private/CircularButton.qml,sha256=wOUs2kbtfbFS09ZMzR1L9aJA9JrHYQfbKnuxYdlBK7k,2233
-PyQt5/Qt/qml/QtQuick/Extras/Private/CircularButton.qmlc,sha256=dfpNCHHzbl8ekMDQ_Uj_VS8txyo9QiuPN_0kXzlQfCM,1284
-PyQt5/Qt/qml/QtQuick/Extras/Private/CircularButtonStyleHelper.qml,sha256=SV8OkstkEurNg39--c23dWBvD-BGSeGQYozyl_2oFDc,6177
-PyQt5/Qt/qml/QtQuick/Extras/Private/CircularButtonStyleHelper.qmlc,sha256=Vo8QJaz2oclYeD3ikoyvR3XYnNSgpnSgqVCEFIP-_go,10004
-PyQt5/Qt/qml/QtQuick/Extras/Private/CircularTickmarkLabel.qml,sha256=QYP-DmBAd8c7j8H0XH-XEJXADT0eSIpOQeaztcMWiYw,5261
-PyQt5/Qt/qml/QtQuick/Extras/Private/CircularTickmarkLabel.qmlc,sha256=YWv_xVhT8neUImUWCYp-U4QHNqMEAwFTWn4ptHKhe7M,4936
-PyQt5/Qt/qml/QtQuick/Extras/Private/Handle.qml,sha256=HO7khjcjmwfRBmSFheckG5HuEk666wfc9j2BGn5FxEo,4681
-PyQt5/Qt/qml/QtQuick/Extras/Private/Handle.qmlc,sha256=8ea1G_pVfEGdYz5E-iBqIcB4exYfIvypb-PMkclk-Uc,6176
-PyQt5/Qt/qml/QtQuick/Extras/Private/PieMenuIcon.qml,sha256=olKBQa-NaY5NHdBq9zxUHWoW4sDFoJavw6vZUfnXT90,4559
-PyQt5/Qt/qml/QtQuick/Extras/Private/PieMenuIcon.qmlc,sha256=MpsuZ5W1xjVpm-SFv8FTwGJogeCSoVpV7vfYDmDzO_4,4768
-PyQt5/Qt/qml/QtQuick/Extras/Private/TextSingleton.qml,sha256=9Ljs4eFVCunVRuGy-pHFS3bah0ZA7cGaj2Tc8NESXz4,2020
-PyQt5/Qt/qml/QtQuick/Extras/Private/TextSingleton.qmlc,sha256=EQkPDTJ-8BU8wgtgvWfLj5HKfnVStoVKqZEtE1yDxYA,500
-PyQt5/Qt/qml/QtQuick/Extras/Private/qmldir,sha256=6ZxJyMrtETrLJndEcDOFU-Blj_IcbLmyU03iANpGa4c,31
-PyQt5/Qt/qml/QtQuick/Extras/StatusIndicator.qml,sha256=mUznpetgz02iEBkmP7upsYME2HtxH241KOT0BGULxsE,4261
-PyQt5/Qt/qml/QtQuick/Extras/StatusIndicator.qmlc,sha256=4LmFcRCX6UPAQCaLh03o_efbCMOMzsp7u14_0cARIOI,1916
-PyQt5/Qt/qml/QtQuick/Extras/ToggleButton.qml,sha256=5PPVUp4v1R2kjnULnAu_mEWhnNWaM1maFQAh9B3otTo,3008
-PyQt5/Qt/qml/QtQuick/Extras/ToggleButton.qmlc,sha256=p4l4kddaJMzeQev1tCmr2i4hoLPcjBPETcn6uw7A9Qk,1364
-PyQt5/Qt/qml/QtQuick/Extras/Tumbler.qml,sha256=xp1ZbDsj3G_MxoPHFCDLkIZrh-4GEKK4Kt-kaE4sOco,18370
-PyQt5/Qt/qml/QtQuick/Extras/Tumbler.qmlc,sha256=LoV0Q3mvZjiyFWtakaa-CnuFsZFemeqLZvCSonsGpoA,26892
-PyQt5/Qt/qml/QtQuick/Extras/TumblerColumn.qml,sha256=1Abi8NdUf7GDkRneH2qqrj5AW3zqQwk2MiFAMrE6mq4,5435
-PyQt5/Qt/qml/QtQuick/Extras/TumblerColumn.qmlc,sha256=pbPTkyHc7JfLuKIpTFvoHQGxfGMZxrESvia7CoGbghg,2792
-PyQt5/Qt/qml/QtQuick/Extras/designer/CircularGaugeSpecifics.qml,sha256=-hs8AAOEgcjtJfTbf5mWx71NVczrXmdKMQehD2NxodY,4173
-PyQt5/Qt/qml/QtQuick/Extras/designer/CircularGaugeSpecifics.qmlc,sha256=EdXhQ8EISZtHVtUdwSzgSj9YUfaJWrUKer2hxC22pXs,6348
-PyQt5/Qt/qml/QtQuick/Extras/designer/DelayButtonSpecifics.qml,sha256=eDBPMRzFTPOshg8fbQtGklqiraqb-yJ9VFkvOq5nVVg,3500
-PyQt5/Qt/qml/QtQuick/Extras/designer/DelayButtonSpecifics.qmlc,sha256=D084rQUmt4WbhqdEL19EqJ2aLAP6DTen71wh1xLQN38,4292
-PyQt5/Qt/qml/QtQuick/Extras/designer/DialSpecifics.qml,sha256=0eiLDSFXEdxIaTiwjE2et5Nfola5NSAk51b8b3EOBBE,4707
-PyQt5/Qt/qml/QtQuick/Extras/designer/DialSpecifics.qmlc,sha256=VH-uPJpgfIkXMkjGVeToMMSrQIg3ILFoD0RDOoCz9bM,7244
-PyQt5/Qt/qml/QtQuick/Extras/designer/GaugeSpecifics.qml,sha256=i5p3929Ginm6nWDbF-8WAVLfBmH0CO3gSJi5dsAHVZU,4909
-PyQt5/Qt/qml/QtQuick/Extras/designer/GaugeSpecifics.qmlc,sha256=iJkxQOUpzoHgKpod49hG5r96KQXwS_IhQ-CJYoW21gg,5620
-PyQt5/Qt/qml/QtQuick/Extras/designer/PictureSpecifics.qml,sha256=stMzzNWt_ykz4yuTd7uxje1t7fhtQvQ5rVG5uTvvy8w,3061
-PyQt5/Qt/qml/QtQuick/Extras/designer/PictureSpecifics.qmlc,sha256=lB7eMSFK8UCZ-ULid1pJI5aYmBY73AzDtNx08_jncPg,4608
-PyQt5/Qt/qml/QtQuick/Extras/designer/PieMenuSpecifics.qml,sha256=AIvbUkU4b-2nHdeomUftcWtyJJXsXDZcCvgM7WxhgEI,4017
-PyQt5/Qt/qml/QtQuick/Extras/designer/PieMenuSpecifics.qmlc,sha256=M4ay4TSDeWA6Hcn15zIugaXhFHGKCeaZmgblJb_R04o,6848
-PyQt5/Qt/qml/QtQuick/Extras/designer/StatusIndicatorSpecifics.qml,sha256=NySQTTZvK6BiPYfXIcs0slyV3Mg3iwwQtev3YiJYdA4,2940
-PyQt5/Qt/qml/QtQuick/Extras/designer/StatusIndicatorSpecifics.qmlc,sha256=xguJPkCnc7QYUhFJF0WZWU17b_TpHi5YaR-L210r_3s,4280
-PyQt5/Qt/qml/QtQuick/Extras/designer/ToggleButtonSpecifics.qml,sha256=K1NDt73bl3OUWLuboDcXboryWXX4bkKLLxTvjkYDMxo,3470
-PyQt5/Qt/qml/QtQuick/Extras/designer/ToggleButtonSpecifics.qmlc,sha256=uKZxqd-RZkEPiCErgIh-qFiBGMuNylVug5y6ZqFytwE,4148
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/circulargauge-icon.png,sha256=P_VsuaQOGLpa8CKgSMcOg6AqjUIhLzPPfU73k3LA2kE,373
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/circulargauge-icon16.png,sha256=ev6CyhO1D0adjfgQStR2HqROjM9vSH3H26_O1JoMyjI,249
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/delaybutton-icon.png,sha256=fHk8J0H0rYn-uRH6hfpxwqA9UE5IMbgpH9uyG-_9W38,343
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/delaybutton-icon16.png,sha256=10agnBdzQWkJ1T8JfEhdk5__TU24rqfczuaccwXog-g,220
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/dial-icon.png,sha256=S99v4K2ZB8EycwVQ000EVnuIQHB9GJ52xIF9DmpSsVA,326
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/dial-icon16.png,sha256=Mnn70T76iuOgMrtOHDH5Pn8w1_AO7OPIkcTfaj4_oSY,217
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/gauge-icon.png,sha256=Le-p25H-0zRiRiWbEdt6zWkgNFqSOX1HFyBHIorwbEY,189
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/gauge-icon16.png,sha256=GuYfUwrhbBmXGAziDKewHdlAJpqJTHSnGer31c1X53k,163
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/picture-icon.png,sha256=_KrtYG3Z2l5DFjj6aIsnk0jeLfwmW_hh9ioE0V8R90w,220
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/picture-icon16.png,sha256=s8aorBpuGJc0fVzT0BFBjZN7Yoo-Dfck_lwoTZV2ZZQ,177
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/piemenu-icon.png,sha256=RGfBoggpyxjYAH965vqku8dVmZA3C2xnxKtpPF4Hz0U,378
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/piemenu-icon16.png,sha256=VpPa72ekIS0a_jWuwB0wxvz2ygaQL2xFCVxK1_i-jFo,242
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/statusindicator-icon.png,sha256=tN59vI7Lq3VQB4lqNXjdVDXBBfW02JDSkstgSZVaTjk,316
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/statusindicator-icon16.png,sha256=5WJyDgDB7lI9_KLzhgpn3lxl-WTtHdmXsw4o1DHeoV0,212
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/togglebutton-icon.png,sha256=aH_W4DZcP-UskrGDBNkCMG1xc_hL9cU9glhF0a60ev4,340
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/togglebutton-icon16.png,sha256=i9rPOIYQkU_MS1mm3Z8zym7MBTwa4FtyumJSAvRedMg,223
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/tumbler-icon.png,sha256=nM3jjfaqro1nNi78QSg-K8IYN58A2RXXDJs4K4EhUFE,187
-PyQt5/Qt/qml/QtQuick/Extras/designer/images/tumbler-icon16.png,sha256=IFtoxnT3a44My2Mwxaa0onGXJBMAMmvZIKb532LqDnk,1130
-PyQt5/Qt/qml/QtQuick/Extras/designer/qtquickextras.metainfo,sha256=UjoDp80x5zGkQEr2uWTFxJe4ZjUIbdDOtVCTFIfFTKY,3455
-PyQt5/Qt/qml/QtQuick/Extras/plugins.qmltypes,sha256=ky2viZknvbrFG0v35-ZIPwPW-hYuOi7tjakY94EtGhc,30266
-PyQt5/Qt/qml/QtQuick/Extras/qmldir,sha256=qxrIU5KdvLmUlcIJjCrroG57PrCszj29LA8PbHQhFCc,164
-PyQt5/Qt/qml/QtQuick/Extras/qtquickextrasplugin.dll,sha256=N94-cP4BoGTn3dsbTPLL2iFPvGfj395ve6rrC54hjJQ,66168
-PyQt5/Qt/qml/QtQuick/Layouts/plugins.qmltypes,sha256=zApZkMskO2mbyU66sZLaGFriiVd8XWzFLHVPuV_hV50,3791
-PyQt5/Qt/qml/QtQuick/Layouts/qmldir,sha256=y1hcL8Bu3KS5XJ7gQBfNOEyucDVujdRoq9fE_R5kC1k,130
-PyQt5/Qt/qml/QtQuick/Layouts/qquicklayoutsplugin.dll,sha256=I63sVq52TCAaIq7XhhDw0tDWQP5btMdtOFHB8KQhPms,79992
-PyQt5/Qt/qml/QtQuick/LocalStorage/plugins.qmltypes,sha256=Z6gtoIfVJoX8JNybBab44DA5v6XLDGeUSvaiPywmCbE,717
-PyQt5/Qt/qml/QtQuick/LocalStorage/qmldir,sha256=WA3bgdZwoV6M3SJhTuKPOlhedvF3JwvhSvbjFsXBjhU,120
-PyQt5/Qt/qml/QtQuick/LocalStorage/qmllocalstorageplugin.dll,sha256=d5kuoubK69MEvz1xNVQOxr_cuaF7xEIszxcJezpAHXY,50808
-PyQt5/Qt/qml/QtQuick/Particles.2/particlesplugin.dll,sha256=cm0Q2YRFeDAsa8CYEhCs-vKx1GJs-Yx7RjdZdF234-g,20600
-PyQt5/Qt/qml/QtQuick/Particles.2/plugins.qmltypes,sha256=RZs1zvh1AaF1gnVWyt51YCNXf440tKHG6IT5XCYqqcw,43186
-PyQt5/Qt/qml/QtQuick/Particles.2/qmldir,sha256=Mu5LAjoOlux44pzUFHoiO0xIxp4Vx_6Vgqj47yuhC7k,112
-PyQt5/Qt/qml/QtQuick/PrivateWidgets/plugins.qmltypes,sha256=18vNNKWbnrfCsNEgd-q8j_y5CR16_cpFYz9RGjxnDV4,11455
-PyQt5/Qt/qml/QtQuick/PrivateWidgets/qmldir,sha256=17BJNhrIeyhROMIJHUifhMxxzMUXo9aHSfX8v5YzR_M,120
-PyQt5/Qt/qml/QtQuick/PrivateWidgets/widgetsplugin.dll,sha256=hBtSkyFTcRD-FOoYny2nfQf6WdIz85xmmjhmPqUN52I,106104
-PyQt5/Qt/qml/QtQuick/Scene2D/plugins.qmltypes,sha256=73c1LIwglhE_OW8r5Eq-oWj-wgEVzLUYvEw1xL-RJmI,2365
-PyQt5/Qt/qml/QtQuick/Scene2D/qmldir,sha256=0ayrRGXH0gmRyqv16zn9pA2Cx2fgV1kgGMNGq0QpHuw,85
-PyQt5/Qt/qml/QtQuick/Scene2D/qtquickscene2dplugin.dll,sha256=5ej9k5I5ZgK9XWrLjuMauDUzL5D8rFSpR7Mcwf2Bw5M,25720
-PyQt5/Qt/qml/QtQuick/Scene3D/plugins.qmltypes,sha256=yGOS06pNOULj3ZBl6z67JzTiVjSbtKy4fD6GynLvWOg,3129
-PyQt5/Qt/qml/QtQuick/Scene3D/qmldir,sha256=YECgrWzrP91ZM8Qkvpa45nrAGWivMoNFpepEEN8kp4I,85
-PyQt5/Qt/qml/QtQuick/Scene3D/qtquickscene3dplugin.dll,sha256=qBlESD2cD1QdcQGKncA8fiZeDivHLsD2J5z_s4nll9A,79992
-PyQt5/Qt/qml/QtQuick/Shapes/plugins.qmltypes,sha256=NpgforyKG_biydiWGn1OZdsihSjyUhh5JIcuZJKkeHE,5416
-PyQt5/Qt/qml/QtQuick/Shapes/qmldir,sha256=WWSvWPKgNx6cWk_YdRTgBsEqfZfiPluOVqD4a9oA1kw,101
-PyQt5/Qt/qml/QtQuick/Shapes/qmlshapesplugin.dll,sha256=duD1wKTepdSIcErQMC8uu_taPPfwM09jgsnZ5RmExxM,37496
-PyQt5/Qt/qml/QtQuick/Templates.2/plugins.qmltypes,sha256=mJBhgO4QwK7A2axHBUl9-Uo3oFlzd6A4x48MZauhyPI,126993
-PyQt5/Qt/qml/QtQuick/Templates.2/qmldir,sha256=RenSWh-wvuHUSZf4ZigQWBTHKZKYg6wPThO7BkltRGE,121
-PyQt5/Qt/qml/QtQuick/Templates.2/qtquicktemplates2plugin.dll,sha256=4Mla6ZZfdvpGa7nB59JReKQFk3-kp9diAjTlYN81BDQ,274552
-PyQt5/Qt/qml/QtQuick/Window.2/plugins.qmltypes,sha256=7W9sR8VSTaM-ef2lCCgPzkFk-Com5aVdqseaQbsUDpY,13784
-PyQt5/Qt/qml/QtQuick/Window.2/qmldir,sha256=jYi4FUfhVz-Mkd-ZjqgmCOCnl3CwFMgvdgpnOItBlFo,122
-PyQt5/Qt/qml/QtQuick/Window.2/windowplugin.dll,sha256=q-GUazj-nZL9u3oJ-ogxmTS_3PAAnUGycjfI0nw4Xl0,20600
-PyQt5/Qt/qml/QtQuick/XmlListModel/plugins.qmltypes,sha256=fWsiDh_cI0_bTio0qKXN4fnWp0eH975YiMTisLH0V4I,12500
-PyQt5/Qt/qml/QtQuick/XmlListModel/qmldir,sha256=Bu2exf6kvOEpwzgkH94UmeKDnSuu1-ZNDdr3qArtp6U,138
-PyQt5/Qt/qml/QtQuick/XmlListModel/qmlxmllistmodelplugin.dll,sha256=PZifewk3OpuNjHtd0oS1dHxXP0UNSRxDIl9PdzIW0NU,68216
-PyQt5/Qt/qml/QtSensors/declarative_sensors.dll,sha256=YI-oFPj2ARcEdZ3eCRJnQWjA6d-e782FO7_QibfO8X0,166520
-PyQt5/Qt/qml/QtSensors/plugins.qmltypes,sha256=5i2KTC0IA83ztdiiiwX5jzNuW-X8qagFZn-PNxgnC38,21807
-PyQt5/Qt/qml/QtSensors/qmldir,sha256=rQzDpftRJ108-YfVJiktPKTQHvz2nvaDGXe9o7aVRck,111
-PyQt5/Qt/qml/QtTest/SignalSpy.qml,sha256=q2TiIo4JqLgZRSVyNKr2nOWsxJPxdQpd927az4g3AUU,9212
-PyQt5/Qt/qml/QtTest/TestCase.qml,sha256=mQoKXEWJ3bUEQ-d8P8sp9njwJ0RyFmHTTtERnkemnf8,77826
-PyQt5/Qt/qml/QtTest/plugins.qmltypes,sha256=r7u0_uzsZX_X8FTzIyEKndNwdweu-guidketfIivz7A,14151
-PyQt5/Qt/qml/QtTest/qmldir,sha256=GPLL8rv_yNVJ9MvXLHvEYiYHx1Vbjgu9SwJuGFNewCY,201
-PyQt5/Qt/qml/QtTest/qmltestplugin.dll,sha256=ID3iD8f9s47bWDuLhvbsajTdFJPiAVLFzsCfLk5JHhc,34936
-PyQt5/Qt/qml/QtTest/testlogger.js,sha256=ICPqsynA91NPv1V1lWdaKqywG4qNYYuf6Ma_EDQCm6c,3375
-PyQt5/Qt/qml/QtWebChannel/declarative_webchannel.dll,sha256=jDLGAqtUeaDNjLUHOjU23AG4zjy9W_wVb8MLuT3-TCI,23672
-PyQt5/Qt/qml/QtWebChannel/plugins.qmltypes,sha256=Gcpv5qUEu44Mjw-47iX-uw84H_ZYlkcy_WOq8giJubQ,2329
-PyQt5/Qt/qml/QtWebChannel/qmldir,sha256=IZ3Vpg_XktJ4GHoZEq8yBv237I9JIweucTsaWvFy6ug,108
-PyQt5/Qt/qml/QtWebSockets/declarative_qmlwebsockets.dll,sha256=s1mhD-bV43Q1pNeIo2E5NNJwqdLQwUJ5_e-TbuiB1xA,42616
-PyQt5/Qt/qml/QtWebSockets/plugins.qmltypes,sha256=iMloeaGsst6iH9ZAs5R2-eV1POzL6C_dobKdosltvg0,3604
-PyQt5/Qt/qml/QtWebSockets/qmldir,sha256=IxC22BpmjLMs16IOYdeyhCgJJuPr-MZ2zaikPE6GmHc,123
-PyQt5/Qt/translations/qt_ar.qm,sha256=Tc1IMbGn7_ac5tX2qQc1Rn22CNsQPY6BHEt70UM2LsQ,123
-PyQt5/Qt/translations/qt_bg.qm,sha256=le-XsnGqOw4REEtTdRdYTIRxgLVSo5dMJuxykbu7V94,146
-PyQt5/Qt/translations/qt_ca.qm,sha256=H1wHsQqB4tU9_Q6u-8Xl4B8gOAB8BAYA9i8jmM9j_XM,146
-PyQt5/Qt/translations/qt_cs.qm,sha256=AyzokWGfCmaLNJ0GfA3MJR48JRylqoQzo3U9uNp_Rjg,150
-PyQt5/Qt/translations/qt_da.qm,sha256=K4fIm9dzFYLu85Sbda9igDcjY7Qq_MFEFzusRAUWK0s,146
-PyQt5/Qt/translations/qt_de.qm,sha256=fah_Zx34zgR_DhnLjsUzhxvbv5fccyGe0yLgEjrqhyw,146
-PyQt5/Qt/translations/qt_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qt_es.qm,sha256=7qjnhhtCKQC8-A-dfSdrFKmNqhpblAaNK2uay-KiYtE,146
-PyQt5/Qt/translations/qt_fa.qm,sha256=Z0p4iwSjzTZ114yS1Tdt90LjfMQdNzszWzj5UtoI5q4,293114
-PyQt5/Qt/translations/qt_fi.qm,sha256=mboCR5DWrx7dorTyGssr-Wh0rut43h-pmVP_Gn6jfLg,110
-PyQt5/Qt/translations/qt_fr.qm,sha256=7cwgmnkZCW96qifNISX6ma1cCFzu-n4F9pn6r5RUpLQ,146
-PyQt5/Qt/translations/qt_gd.qm,sha256=MiiGzNklmKEHPV-AN6AjrcnAAtWyJW8AMW0K1HPnoI8,63
-PyQt5/Qt/translations/qt_gl.qm,sha256=Sr_AL1IFyvCmQs1ns9TiGHkQv0aWZXwRm-raKRkwRIE,323580
-PyQt5/Qt/translations/qt_he.qm,sha256=myhlkHv6_C3fP-y8BOV9_WFB4W1n_ZjMAr6Jy-vmyww,76
-PyQt5/Qt/translations/qt_help_ar.qm,sha256=IZUMw6y-3FzISUK32GqocXeCLIZPdRfuscVvOWI3zFw,8736
-PyQt5/Qt/translations/qt_help_bg.qm,sha256=fSMXblpTAaP5KVTwX3i7QVzhGBQ7dr5Sd_LpiyUHrMA,10592
-PyQt5/Qt/translations/qt_help_ca.qm,sha256=Qgb8qJYbT1qF5YguUcbcNDWTkv7UMcLTLh6L5-pqeMc,10674
-PyQt5/Qt/translations/qt_help_cs.qm,sha256=kGt6D314vAWvtglvNZO9109SEcTsHzIJCqy6-EIS7pY,15287
-PyQt5/Qt/translations/qt_help_da.qm,sha256=5fxn19zAq2xp_qHMghWc0Tpfa66gx2G9rBboObIb5sc,9159
-PyQt5/Qt/translations/qt_help_de.qm,sha256=aqK275da2-_chz6UKelPqrMeBbZdtRUuxQRwnnPIaWU,5411
-PyQt5/Qt/translations/qt_help_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qt_help_es.qm,sha256=YSEfgJmSVzhDmnHNznRmtNUqoeyK73vtVf5ps4DDkwg,10694
-PyQt5/Qt/translations/qt_help_fr.qm,sha256=EVH_06DPTucxKNILOMQhwjiqH8V9VtH4qzR16VUTbvk,10912
-PyQt5/Qt/translations/qt_help_gl.qm,sha256=6_6yPCTHIS2g0d0m-cLecvl6iW7GQqxjIwt5kCKQes8,10881
-PyQt5/Qt/translations/qt_help_hu.qm,sha256=LK2j4L7zbi5SfGhyXdu-waaX2bm_DA5sRSllr3TrwW8,10274
-PyQt5/Qt/translations/qt_help_it.qm,sha256=p4Qqo-GSYU2hpjgfmRIEW1mMtMl1J6dzexTtCbrvsg4,10602
-PyQt5/Qt/translations/qt_help_ja.qm,sha256=9-cDo5SRD3UJBkUCpCe6ex6cd143EC-HcfK6tm49SMw,7910
-PyQt5/Qt/translations/qt_help_ko.qm,sha256=Js3mXSLs2qAdaS9EZDI6TnG1PQ_XUHAxhaRh9U2DQNg,8146
-PyQt5/Qt/translations/qt_help_pl.qm,sha256=n8vapbZYaJmqttsXL6TRxIgph7sexQh3KGr8fYbJRUM,9666
-PyQt5/Qt/translations/qt_help_ru.qm,sha256=qieeljWpafhwJ5e81raXDRDTmZzfrhEEpEvfmkmwPmQ,5241
-PyQt5/Qt/translations/qt_help_sk.qm,sha256=jepUTt-G3TGwjuTdKv80bQ3a3Ma2mmWUInThe26bOgI,10378
-PyQt5/Qt/translations/qt_help_sl.qm,sha256=BkH0ijvldFv0B64rIpXrxrxdtT6F9A_u2NqNlVQJ-Yk,10356
-PyQt5/Qt/translations/qt_help_uk.qm,sha256=Y6eMhYCAxGYUrljprzC17C8g7RH6xsSLL7xX3_2CH_E,9740
-PyQt5/Qt/translations/qt_help_zh_CN.qm,sha256=sxpudBrypGiSpjyK0mjWcScS09vjw-RrH9TkTBhWsQk,6434
-PyQt5/Qt/translations/qt_help_zh_TW.qm,sha256=bUt5DX_jzRDs4y135LKg15SYdhN-2o3Vt0-YTHDQ0C0,9291
-PyQt5/Qt/translations/qt_hu.qm,sha256=XLYGA_5Bts_LY9Dgc_g7KYRPjlap5rp7JIIR0ayRWcQ,139
-PyQt5/Qt/translations/qt_it.qm,sha256=E36ntb63_0oCSOAkb0TYxcJmBceCaRQzISRHvjCtNiY,146
-PyQt5/Qt/translations/qt_ja.qm,sha256=Z4gx3D8naRzkvqgAJlh8cW6Ep_qimUrSKYSRmRkS7j0,139
-PyQt5/Qt/translations/qt_ko.qm,sha256=Hn0Yk2irwhkdJKADvZ09WecbLMPYSbFA1Yz1P-hFFJk,139
-PyQt5/Qt/translations/qt_lt.qm,sha256=NnnP1cks8yL-bq9v_4qVOMyFaYAQj4Aoft4abSIPg5Y,165376
-PyQt5/Qt/translations/qt_lv.qm,sha256=oAIpzWMScbS362LZkpDK2seEps6Z83skGt5t7tO8Ycc,82
-PyQt5/Qt/translations/qt_pl.qm,sha256=wUbmN-ewPBx2UukYcAogc9hvfrgsSOm85-zIRrpvb4Q,154
-PyQt5/Qt/translations/qt_pt.qm,sha256=yEeUOFWjm7ZTnDTkoj7GpIiMefaH0IAg31tz7sh3mTo,70324
-PyQt5/Qt/translations/qt_ru.qm,sha256=rxwNXm_BeR8lz7EzQtvPnF_n5mYPIaUAjZ5qgB6uv3Q,157
-PyQt5/Qt/translations/qt_sk.qm,sha256=uK0HCvku203mlVsywuulNGyOgC_jYyYxnB4mCWBjqk4,150
-PyQt5/Qt/translations/qt_sl.qm,sha256=6EWm7kf1cWbMVBsxST6UZCi2o9v90fbndQiV59dkdUE,228421
-PyQt5/Qt/translations/qt_sv.qm,sha256=S0tv9_0jfJ2gMBtJRhMuaGU9Fetfrzjkxfv-uxLdl_c,65851
-PyQt5/Qt/translations/qt_uk.qm,sha256=LR19a_ryUUfqK5tG1_mvJPbNsoqBucGs4wme18DyQsw,157
-PyQt5/Qt/translations/qt_zh_CN.qm,sha256=ayNoveo8JjuMmrIaQ2-wXLwglk-27VJJS1NsUejmNTM,117340
-PyQt5/Qt/translations/qt_zh_TW.qm,sha256=JifrFFXNz0AdFsNSAkwokzCw9oVZ3mLQH9p1YdCcA-0,131
-PyQt5/Qt/translations/qtbase_ar.qm,sha256=LoQr5QnWHFKnr8_2KMStHBRxxiH1gjT2r7PVsXXbsis,160010
-PyQt5/Qt/translations/qtbase_bg.qm,sha256=R_V0kDLGVfg5lWNyi45VkbeWqrq7Yx0Lyp8Y109O1vA,165327
-PyQt5/Qt/translations/qtbase_ca.qm,sha256=vFWfwyVCfV1UJFzuwLiqDy-B65HOmKbikTIoXo_vWM8,184057
-PyQt5/Qt/translations/qtbase_cs.qm,sha256=huF07_efCW2BFGhg3Vyp6UbGQ6NGTH2okZyXJ0e43wk,174691
-PyQt5/Qt/translations/qtbase_da.qm,sha256=Qj6IcyQ5mX3rd29F8bgI9Eb4AjqyX6kl6UnsJ3JKt-A,174098
-PyQt5/Qt/translations/qtbase_de.qm,sha256=rjTYdL1abRGi7uYF4Hp8bbL_28mYzrjPt8NG3ZFDMrs,214049
-PyQt5/Qt/translations/qtbase_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qtbase_es.qm,sha256=9qBzSQO7_Nn9RH-8_XrWubvqUNA43JOIA4yez8E3UqQ,165160
-PyQt5/Qt/translations/qtbase_fi.qm,sha256=0EZmplZoC-J1a1jORdsXW4RsWSjravYtuoQURN0Q4Do,179934
-PyQt5/Qt/translations/qtbase_fr.qm,sha256=fUDqqQ2QlM5UikFIK0luxJQ5aoI2HU89AxdWEY7QQtI,166157
-PyQt5/Qt/translations/qtbase_gd.qm,sha256=yj0POJnPf566isMKqjGW2LEqWBzoXNaBEzB7_ACu4q0,189570
-PyQt5/Qt/translations/qtbase_he.qm,sha256=tITC1v1bgw9i8-nysi_5H6lFZ93zCWs9x2UN6rY6bfI,138680
-PyQt5/Qt/translations/qtbase_hu.qm,sha256=2N_CJ3_PcIa9sfIvoi7zM3H3HMLKnDeFQv-cMYGX_L4,160484
-PyQt5/Qt/translations/qtbase_it.qm,sha256=4i6GbVb8bjQA_aQq1w1wKGkGz0MV-KptMItoOxuc_6k,161162
-PyQt5/Qt/translations/qtbase_ja.qm,sha256=8O4DyZNrRZzJvfGE35t--tmNQKt7meiRZqQuAZoOwOo,129904
-PyQt5/Qt/translations/qtbase_ko.qm,sha256=SHdV6whB1HdIzLwquNJVyhInfdD7aH1t3HMJgvjad7o,131255
-PyQt5/Qt/translations/qtbase_lv.qm,sha256=JX0SAdpCwZw06gpfDfu6PUOPwnOn1bW5fNExlulj7Sg,153598
-PyQt5/Qt/translations/qtbase_pl.qm,sha256=maWhItvy5SL5nyv4MgGhROnjQNez3Y4W3XhajMefvWk,162972
-PyQt5/Qt/translations/qtbase_ru.qm,sha256=5KG4i65uh77DGC1P7GIZYtQkZJRtjZ1BKvjbAXSOKNY,199043
-PyQt5/Qt/translations/qtbase_sk.qm,sha256=owmX_DXuADrM0XkOEkEVlkgbHaSRsvPMMpFKihlfPvE,125753
-PyQt5/Qt/translations/qtbase_uk.qm,sha256=_QR8ZMbiSc1-CEftVnJSnnKybZtITVcP9HSp6jRwx58,158264
-PyQt5/Qt/translations/qtbase_zh_TW.qm,sha256=F-nkhxvmCqPSLIb_mQvHYryB6laQpoV56gYtjtfz09Q,127839
-PyQt5/Qt/translations/qtconnectivity_bg.qm,sha256=VUpsD-rerhd4ETiD10myybL1n247P5bVPuGrP61FCAQ,47335
-PyQt5/Qt/translations/qtconnectivity_ca.qm,sha256=M215wqAcXZxSYaIkMPZY6bxu5Oqo76G85ahZRriOm_E,47061
-PyQt5/Qt/translations/qtconnectivity_da.qm,sha256=R50ICJd9qRsCImxYGashBb1CzcYt4VQcqyOCT2_JNCg,30444
-PyQt5/Qt/translations/qtconnectivity_de.qm,sha256=l0Qm6_jcrJ7FheM9uDTHz4O34vqgSynM4wuiEX5tR0s,49151
-PyQt5/Qt/translations/qtconnectivity_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qtconnectivity_es.qm,sha256=JYEw3HM_NzXpLE3h649OG5_xod23TeUHm0Bxg8DoE3Y,46581
-PyQt5/Qt/translations/qtconnectivity_hu.qm,sha256=_WsIEnG7msd0-VzD11ZKxNCEhTUKDhzy24a9jd7fUrQ,43418
-PyQt5/Qt/translations/qtconnectivity_ko.qm,sha256=Z2aKwGPFSSJscSnN0tZooR5gtWE6qCqHVIWyheQ0cQ8,36173
-PyQt5/Qt/translations/qtconnectivity_pl.qm,sha256=6FkRKZlfMknacMMyP23DIrVDbmqcxfi8c6YmRP40uEg,31367
-PyQt5/Qt/translations/qtconnectivity_ru.qm,sha256=_IJVP7ouOZJf5QKZZSwYb-1IqajBFJ_LULc03W96q5g,49674
-PyQt5/Qt/translations/qtconnectivity_uk.qm,sha256=XAcRi_qQ2OpUcUrz4dcux56fLw_LUY4P9UIkQD4SjR0,42213
-PyQt5/Qt/translations/qtdeclarative_bg.qm,sha256=v8iYCbFZfrUPSp2NcJL7r06APdfuwe8aPxMJRNjaYus,70145
-PyQt5/Qt/translations/qtdeclarative_da.qm,sha256=PpozSQgOSM4hzuXf-62M1KyFQK-0IwPjGEzAeKmM4D0,67390
-PyQt5/Qt/translations/qtdeclarative_de.qm,sha256=wHd2HSxDMe4StOJZE-WaB1JCiRUBBlWI0B4Hd5qz-yA,81473
-PyQt5/Qt/translations/qtdeclarative_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qtdeclarative_es.qm,sha256=GK6EmqgJRipAKdtG5dIALG6GnbQjwbRS_tj8KGyml4A,59865
-PyQt5/Qt/translations/qtdeclarative_fi.qm,sha256=WEcc8Rlv-htWOqNDNfOyjDEiShJsVptuhKq81rUFKGk,65808
-PyQt5/Qt/translations/qtdeclarative_fr.qm,sha256=jSTYbvbaCg-pSP3w3VKQgXxL6FuPMkuYaDPHi_gufFk,61410
-PyQt5/Qt/translations/qtdeclarative_hu.qm,sha256=PIIM1aVTcZE_ewxcFx2BOLr2J68KC2bKK334kGAg8xU,60498
-PyQt5/Qt/translations/qtdeclarative_ja.qm,sha256=IcgdvfU1yn4JibDOeMGMXWvpmh-hrBKFaskn8t0RnQ0,45294
-PyQt5/Qt/translations/qtdeclarative_ko.qm,sha256=PRNSdtqK6fUXPKauUy-eInmMj5V6yevxOPbMyv26lSc,50856
-PyQt5/Qt/translations/qtdeclarative_lv.qm,sha256=qebXqG-b123305EGnIm7BzsbTZwqcDdQLS-KIy_gQk8,53930
-PyQt5/Qt/translations/qtdeclarative_pl.qm,sha256=h3Fva1bG4u70mfvIjCON0hvTyIEZYKRZ52ngwerbNg8,64180
-PyQt5/Qt/translations/qtdeclarative_ru.qm,sha256=C80-GolYwAtk_8bGywQPUIgkw0Uhj9Wl5a3d3IAhk0o,74423
-PyQt5/Qt/translations/qtdeclarative_sk.qm,sha256=zLLa-DUTTslzJVbls7D6a-CiTIUvQyw9uyIOkJ4kYvg,48647
-PyQt5/Qt/translations/qtdeclarative_uk.qm,sha256=E3_vXujf4Gq65s2FYXdgtKr3qdIJvVkmvut41ye7VZs,63971
-PyQt5/Qt/translations/qtlocation_bg.qm,sha256=oLf8h6-1pYcw--vkpm-HjRLbY7XdesmFwkA2cf8ynkw,42374
-PyQt5/Qt/translations/qtlocation_ca.qm,sha256=Wajl5p2XO_pTA2WCd5nGje73lpWsXHtNeYOdVbNoO-4,24426
-PyQt5/Qt/translations/qtlocation_da.qm,sha256=4H0WjK0o084mluWZyn5-vhyf06V0qfa5hUAwIWYUSyk,43659
-PyQt5/Qt/translations/qtlocation_de.qm,sha256=cGqN7Sz2vbFi6bXOQFcwuGPBK31Dn3C4hwpq-9y-Hhg,47066
-PyQt5/Qt/translations/qtlocation_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qtlocation_es.qm,sha256=HKdU6ho8uaFEOohnl9nc4UKf4U_S7MfbY-kQp-bQREU,23390
-PyQt5/Qt/translations/qtlocation_fi.qm,sha256=gSCSgyKgGhX42uS1rZkeSBOQ2sGsVRge58fGAWcVaOI,43717
-PyQt5/Qt/translations/qtlocation_fr.qm,sha256=3KgwpbwfL-7a0P6GlqzdB5UwTA-C5fxhC3JNPQWGGgU,22148
-PyQt5/Qt/translations/qtlocation_hu.qm,sha256=itQjSWE-qAiq2J5MEYfcrpVpN5M6ldAgoQcQqSkZYVI,23745
-PyQt5/Qt/translations/qtlocation_ko.qm,sha256=NZCRGEy1VomNXEqQ40oGOqBXHOZefX-w70a66F7qPjM,38265
-PyQt5/Qt/translations/qtlocation_pl.qm,sha256=tUVgxtVlduWZOsRAEcB2qYmowlkhjTLEKUKY1r3w-wY,42315
-PyQt5/Qt/translations/qtlocation_ru.qm,sha256=8sc66pb_qq1NR82NyoHa2DQj5QL6vv2X5xUHwyrW52c,43271
-PyQt5/Qt/translations/qtlocation_uk.qm,sha256=SQqk093qoWlQTGRTU_wGNbfudoUqMG_iRJvpfXlrgwo,24149
-PyQt5/Qt/translations/qtmultimedia_ar.qm,sha256=shElYktzmPLLY2M5Vj99wrALHfEO9rzsHgBbSvZ7TrU,11479
-PyQt5/Qt/translations/qtmultimedia_bg.qm,sha256=d0fEcSTmXAVHSwrGvbjbxKOC4tHNmnNuoT89o8lare8,13676
-PyQt5/Qt/translations/qtmultimedia_ca.qm,sha256=3id4kqO3omrpGfA3m13PcN02B7Dg_bt5TrDDUWVibco,15038
-PyQt5/Qt/translations/qtmultimedia_cs.qm,sha256=VNqTOuvWMH1saNunruYZlY_EmvvQPQ1I6yoq1ghYB50,15896
-PyQt5/Qt/translations/qtmultimedia_da.qm,sha256=GnKtBR-15V9dsUD66pTDRKAZ3q0-TJtC7fVviFVa2Mc,13652
-PyQt5/Qt/translations/qtmultimedia_de.qm,sha256=jW5brl6I3y2hYNWUmaiZ7b9t-JJHPTEjElqi1rkpP-I,14996
-PyQt5/Qt/translations/qtmultimedia_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qtmultimedia_es.qm,sha256=aIrLXbT0IypdNHX1jY1ZXERtgp9Dq0jeGdFz5ekkgYs,17036
-PyQt5/Qt/translations/qtmultimedia_fi.qm,sha256=JFDpq82uVDHfGx1gk15xP8NCBWdGsOkhJC81dFVHcrc,13876
-PyQt5/Qt/translations/qtmultimedia_fr.qm,sha256=rwu0YAYfFbQSsdv9iF_yezOajMKhpgOWo1-7P7S8sgg,16492
-PyQt5/Qt/translations/qtmultimedia_hu.qm,sha256=MWx5uV7Z0CpB39KHA5ZQ9dTziaNTS-wdtRa2rXKNK8Q,16453
-PyQt5/Qt/translations/qtmultimedia_it.qm,sha256=saewx-AX4n7lnBYmvU9BFltm4KYIsfEPIZAV8nA90H8,17184
-PyQt5/Qt/translations/qtmultimedia_ja.qm,sha256=O-t9LVuSMGOe1uKkmSXQlEUnUQvg3MnTndneUOgWwFQ,14330
-PyQt5/Qt/translations/qtmultimedia_ko.qm,sha256=PqdphWPKhMUOEnc6gLV-9Rl7xxk0kQmKYVyIeODY30E,13173
-PyQt5/Qt/translations/qtmultimedia_pl.qm,sha256=BW0OL64EsSKfZN7rB0gh8KTb0Ev5BESKdei1lXOXzis,12227
-PyQt5/Qt/translations/qtmultimedia_ru.qm,sha256=YP-S0nR8zqFBQ7-80Zar-CqrAbbnGtbOIpa-Fn0CUcc,14285
-PyQt5/Qt/translations/qtmultimedia_sk.qm,sha256=c3LVbRmhf2Nfc-3jkX8550NjmVaHdo86O8a2hwgjLBc,9886
-PyQt5/Qt/translations/qtmultimedia_uk.qm,sha256=txrvCZdx2H-6AAGRdC2HVtisHXrX14I57pYMOyQHHtk,15771
-PyQt5/Qt/translations/qtmultimedia_zh_TW.qm,sha256=YPiwxK87XYHZ_vjXlpVWfWoUQUl4IkBA8khC57VXm_U,9941
-PyQt5/Qt/translations/qtquickcontrols2_ar.qm,sha256=0IUqF3ObloTWT85dz7JJ--J6XweT2Jp3XDlqfzrXEc0,633
-PyQt5/Qt/translations/qtquickcontrols2_bg.qm,sha256=LeocA4Hqdzv4nU8ZyU1s707IMb6zruuqkOBA2FjUbLM,700
-PyQt5/Qt/translations/qtquickcontrols2_ca.qm,sha256=I0lju05bbyLk7tOj6A89ISZgJjN959eeNMorD0yHHck,892
-PyQt5/Qt/translations/qtquickcontrols2_da.qm,sha256=uyeKBT315s4-pRHAGYEG5QLihZpiQbuD3QW3sc84cJQ,848
-PyQt5/Qt/translations/qtquickcontrols2_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qtquickcontrols2_hu.qm,sha256=fQTUNyr4ex3cg8hLtpDvTmuVWIbfKLZlmcGRtutoUXE,340
-PyQt5/Qt/translations/qtquickcontrols2_ko.qm,sha256=AtV7gLyYlU26WpKKMYcl0ZYyuhujSQP4VR0ELcVPLYI,557
-PyQt5/Qt/translations/qtquickcontrols2_uk.qm,sha256=6gOg97Yc9tb9Yiey7S7CdaqWpTalUo70B_EG8xlgifQ,9429
-PyQt5/Qt/translations/qtquickcontrols2_zh_TW.qm,sha256=19_WneOtu7Lx-aF1MPnAu4LAIwY9jeb6x91_Rp-1Mng,637
-PyQt5/Qt/translations/qtquickcontrols_bg.qm,sha256=MHzvld1bNv8hUFXUJ-GIW3_DZQySJM921jBWVFmW_2A,23
-PyQt5/Qt/translations/qtquickcontrols_ca.qm,sha256=aAORLVskCP5uGUbFK8oaRwfuLP-vUBNseXXQcQQ4JLQ,5106
-PyQt5/Qt/translations/qtquickcontrols_da.qm,sha256=Tes5GKKERQQQYINfEYbLq4ZCt85jnL4vUaVQ6vL21so,4910
-PyQt5/Qt/translations/qtquickcontrols_de.qm,sha256=ELcRTuWqlvPOZQCLkM1SNLKGcuWMIY0f7xDzClCGNBs,5188
-PyQt5/Qt/translations/qtquickcontrols_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qtquickcontrols_fi.qm,sha256=Ljz4zKGdBoWubsUiYipEeIx4P6c1p5dFAf-P-ahChfA,5070
-PyQt5/Qt/translations/qtquickcontrols_fr.qm,sha256=U8KzgYmgbBaeJKvvw3Lp5yxhTv6CZLbl8lsnAIxf7ow,5522
-PyQt5/Qt/translations/qtquickcontrols_ja.qm,sha256=H0B4TGhR71kZF_3nXeTeuy2IoXX_uNEohX0H8TRxc3Y,4349
-PyQt5/Qt/translations/qtquickcontrols_ru.qm,sha256=p_116yhw9OcDmKM1G1XmOTzlm0b_4uqMTeVhm0DyR7Q,5075
-PyQt5/Qt/translations/qtquickcontrols_uk.qm,sha256=ANsZ8i8qwvICnZV6k105BlWIZ7VE8iylTHbepvygSMo,5081
-PyQt5/Qt/translations/qtquickcontrols_zh_TW.qm,sha256=dJzgw7zoXBuGvqPfxmFCnfQyf1X2ypNXs4FBEhQl1FY,4177
-PyQt5/Qt/translations/qtserialport_de.qm,sha256=etH2nVdgfj5F0fbaz8cOdqm7leGqg5zFs-009pZOaDY,2477
-PyQt5/Qt/translations/qtserialport_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qtserialport_es.qm,sha256=MUaBqPM7ovIpkLeF1N98Fmy-qiDNTxlwXge7IXzNb7Y,2497
-PyQt5/Qt/translations/qtserialport_ja.qm,sha256=z_3IDgvQBosBCKjySKcl20ZEAXI_4OOPHxpDjhOuVO8,1734
-PyQt5/Qt/translations/qtserialport_ko.qm,sha256=4T5xULeW0Kl0H9Fa6mtevVjaeoyWLpA6hgTy0Gualxo,1620
-PyQt5/Qt/translations/qtserialport_pl.qm,sha256=2AcpaUWS6_jAnxfmqOHQjdqUKH8xHqejXOsLWBSXeZM,1992
-PyQt5/Qt/translations/qtserialport_ru.qm,sha256=EIQwyA1rcbrj7XRCE6RT5x81bVYjaVklLd3FKrsQOzw,2360
-PyQt5/Qt/translations/qtserialport_uk.qm,sha256=DL1lgAPzzHO20IH9xdSBAVY6Q67qBl389ZDojqQ2418,2414
-PyQt5/Qt/translations/qtwebsockets_ca.qm,sha256=j6aTpIgC7G0EqD9OKFmpSi108dk3vbu-JW9YBv-cUzs,9657
-PyQt5/Qt/translations/qtwebsockets_de.qm,sha256=HXVaHpMDmop0XGGh99vLwYvKT6zV8g4Bc0Xb9eKj7dM,10081
-PyQt5/Qt/translations/qtwebsockets_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qtwebsockets_es.qm,sha256=SGnDX7qyrySI-CqwicC-WzZJebrWxoszLOqnNBXQnms,9669
-PyQt5/Qt/translations/qtwebsockets_fr.qm,sha256=O_Qi3c9vp_jNW82yoqahtkCq6JtIxLyB-K82YJ-y_yo,9629
-PyQt5/Qt/translations/qtwebsockets_ja.qm,sha256=3pBsn5h7q3OMXWtJkhbiC688yYNweQRlri6UFp9BB-U,7260
-PyQt5/Qt/translations/qtwebsockets_ko.qm,sha256=PjkEiKTJYgDRhTxmZjxG1ZhncsODsGUiKZ5K-wgAzww,7122
-PyQt5/Qt/translations/qtwebsockets_pl.qm,sha256=gxbcHUnlLspdHaQEmbKucTfvzOzZUXD6oopHaI_nha8,7589
-PyQt5/Qt/translations/qtwebsockets_ru.qm,sha256=THNJDjov1YExjx1hplrdUMmVRKo1zQa9wfUwl1O-C4g,9454
-PyQt5/Qt/translations/qtwebsockets_uk.qm,sha256=D76Hcz4HiLYReUXafdDB3VHdrQqPXg6jXRqmqmu0120,9150
-PyQt5/Qt/translations/qtxmlpatterns_bg.qm,sha256=U1GHCivIEptEHJ9zuLgreOISVGtxoEGsCRjYjkL9-Nc,112889
-PyQt5/Qt/translations/qtxmlpatterns_ca.qm,sha256=fvIE2Rxci-FhtG0DkynUflJgsmIw9U6u8g-dWeXGtDE,113297
-PyQt5/Qt/translations/qtxmlpatterns_cs.qm,sha256=esMwQpYbw2aVxfh6vkbUeiXSyrCzCysJ6MazUMEH10c,109596
-PyQt5/Qt/translations/qtxmlpatterns_da.qm,sha256=9dA-Rm5Gbat--M7iC99kFcu1rhij4cPiLNDO_q4TSJs,1027
-PyQt5/Qt/translations/qtxmlpatterns_de.qm,sha256=hylp8C_cQDG0YXl2UCyIwjRQjViJQNRUYEV7jzD-VlI,117913
-PyQt5/Qt/translations/qtxmlpatterns_en.qm,sha256=mVm1ELFdGJN4SK0TAH4wRZ0umTxn5WS62_wY-TVpXIU,16
-PyQt5/Qt/translations/qtxmlpatterns_es.qm,sha256=7xQFAiOwikbmVm_HfmQ9u31J3hIE-A560Pj8kbOE5V0,114779
-PyQt5/Qt/translations/qtxmlpatterns_fr.qm,sha256=HgauYisAoMCaTRr2X8Ukzvdhb9WIPZ1hCVDsJRFdjtw,115899
-PyQt5/Qt/translations/qtxmlpatterns_hu.qm,sha256=XzimWPJpwv9-15pZJIoldZAe3qI7X1D5nPvXyHCeY-A,115154
-PyQt5/Qt/translations/qtxmlpatterns_it.qm,sha256=3NNQqMo1UpsXWBWFZMg6I85AQhlr6Use8AelSWWJikE,5097
-PyQt5/Qt/translations/qtxmlpatterns_ja.qm,sha256=QHqu4nXlutiiqknRMs3yO60CGEe4186e-F10MGVgXg0,81624
-PyQt5/Qt/translations/qtxmlpatterns_ko.qm,sha256=BdV_YcPl6jMimBt89ngCg4q-d0ZElVPI7KQ72KUChV4,82400
-PyQt5/Qt/translations/qtxmlpatterns_pl.qm,sha256=MD849KrT-HDI8v-zt7E1u5a1Fnw_DIzUbsqo22AOp1c,110967
-PyQt5/Qt/translations/qtxmlpatterns_ru.qm,sha256=mzYcSpzij-9TBk2b3q5p9ic8zLvjNI1_6Es0Dsb0bNc,107641
-PyQt5/Qt/translations/qtxmlpatterns_sk.qm,sha256=nDsJ590PZofe3QMkNwrMwBb0sV79XlqgcCZMskecB3s,33318
-PyQt5/Qt/translations/qtxmlpatterns_uk.qm,sha256=nC-djXYVOlDWVOy4YClw8fLNOddGgKNtGOI6SJ8hIJI,7932
-PyQt5/Qt/translations/qtxmlpatterns_zh_TW.qm,sha256=iutov0tQDPya2ase4yg2hXAt8PyomE7Lezxgu9xplWw,30954
-PyQt5/QtBluetooth.pyd,sha256=6i-XiIHiE6_Y412X_ZLigNKuQL9sRZfYDlZc7-Po3uY,262656
-PyQt5/QtCore.pyd,sha256=E8AkzhukI9jKbLwUWjiHAH_8xfvP4NhfC-y4hQeD3sg,1875456
-PyQt5/QtDBus.pyd,sha256=pGJccSR-Awj1DNZf9u4tD4O2ClMI4h-x4KdgI2Fbn-M,136704
-PyQt5/QtDesigner.pyd,sha256=9DJIm1WmzCZ3Sf2rvmKKGVO5HxFp6QvrXortyZjQbyM,235008
-PyQt5/QtGui.pyd,sha256=rUN2NoWNZYyTzCKD302vH7J7lkDYgY6Ww7mRb_Ws-Ho,1944064
-PyQt5/QtHelp.pyd,sha256=olpmZBhK8LtZsljboHS5Vb-9NXDmoVOWzifyPUuhJuw,116224
-PyQt5/QtLocation.pyd,sha256=7BzzMJh0B-K__hju-fvtw0Pa7CgzfbI77mfjZvAOsBo,336896
-PyQt5/QtMultimedia.pyd,sha256=iafwLzSr6eNxSw5kskXo79GjAPcl1igV3XOBLvK7_6Q,418816
-PyQt5/QtMultimediaWidgets.pyd,sha256=WmEUyXwhEgRxiPWokSScyKuxJBCoWKfwjnzMVDqhd0A,91648
-PyQt5/QtNetwork.pyd,sha256=ul8hpBERVKLZz5f3-TfUsw2JOuPqQx2spVknQd8vazA,537600
-PyQt5/QtNetworkAuth.pyd,sha256=QInyc9zzIX90ZAqn8q6KRSvSQbbB3oKH0OnkbhqI_Mw,115200
-PyQt5/QtNfc.pyd,sha256=xsXxcQZ3rFS_rOAvJ7cljaxn1o9NnMMBvcHRQaM17Ro,107008
-PyQt5/QtOpenGL.pyd,sha256=vid8j7aquzH_gX4WCQPtNDVpuZGghRGV6Xn0ObBZC0I,95232
-PyQt5/QtPositioning.pyd,sha256=nC5n4422stSYzSPG_R60Oc1JpSsZbhkGcjvsFHFPjCo,142336
-PyQt5/QtPrintSupport.pyd,sha256=HsNNJRlK1rpaZUeENjnK_6MQmrEyl66z3JEIzIkRmDE,189952
-PyQt5/QtQml.pyd,sha256=CUVinCHQkhxa-nWIvDvYVQ39qzSAFOlhuDZYk-vfy3o,344064
-PyQt5/QtQuick.pyd,sha256=pJ_rL4btEX5-6ykKQnsaWOveZPbvrx6zcJW9OgSA-14,665088
-PyQt5/QtQuickWidgets.pyd,sha256=9AEaDPP9lH1EgZXkMX0bUzcRacyBxUV7x_sovn0kf-4,46080
-PyQt5/QtRemoteObjects.pyd,sha256=6g7BLfufGVzJCImyWBSjXWdEoJM-3dOc-VOLeFurpZw,70144
-PyQt5/QtSensors.pyd,sha256=KwXfzirnatk0BVVIM77IHZ5kgJqc3-A6g1t88xdSsBk,178688
-PyQt5/QtSerialPort.pyd,sha256=0Yu3Q-30hMfmcOFAagHWnRhOepYn97lWpEyqhx-XQc8,56320
-PyQt5/QtSql.pyd,sha256=Zx5ddQ2z4RgXs8WaQTJB4jNUpiH-yFz3bgKjRS_LYwI,235520
-PyQt5/QtSvg.pyd,sha256=IvOv85XgD7Y-sK4_sUbW-wpPm1lHOHkcHs_8uiDVVCk,83968
-PyQt5/QtTest.pyd,sha256=bSNKzcDcVxcNZwca6WpWI2j2a-_JjF9dWgfbNdNTkjE,65024
-PyQt5/QtWebChannel.pyd,sha256=jxqMiliP1PE9pzNvH_SAMfAbhBFeNkDXO50X8JfacEk,28160
-PyQt5/QtWebSockets.pyd,sha256=mMU2_bM7dY3QORVr3up_K1okYUsKtSfrbeB0fhxt6sc,57856
-PyQt5/QtWidgets.pyd,sha256=nCo0_3agiyDCOenQt3PMWS7_FZ30uPolzBEXchO7DWM,3782656
-PyQt5/QtWinExtras.pyd,sha256=Ek58OFqxlKuPIAExCKBk4qnDgytrSY98nUKr8MGztLk,84480
-PyQt5/QtXml.pyd,sha256=4PGNs5FeHqNBjGOnWQxRp_jVE9RYvXXCxTBeSUvtx0o,165376
-PyQt5/QtXmlPatterns.pyd,sha256=lqBhINj_2jE-jdoDMRdKqHQSwDasPiJZxv16kmsCSW4,102912
-PyQt5/_QOpenGLFunctions_2_0.pyd,sha256=1lSJhasuyu3RxfEPxQEYUD3dOP2HMYnCx8au-zAjBxc,206848
-PyQt5/_QOpenGLFunctions_2_1.pyd,sha256=ntk6uo3PXMUzIY0FpBQiRAKVvveS5we3Wpe5HkAJrSQ,207872
-PyQt5/_QOpenGLFunctions_4_1_Core.pyd,sha256=tJ-AxA3OWLmkR-no3idHyregtBsG0kC0dCAo-9eQvlQ,107520
-PyQt5/__init__.py,sha256=GaZtZQQqc6PfA6mRsdDcvCJaR5aGD6E2Pn1M6E1exHc,1552
-PyQt5/__pycache__/__init__.cpython-37.pyc,,
-PyQt5/__pycache__/pylupdate_main.cpython-37.pyc,,
-PyQt5/__pycache__/pyrcc_main.cpython-37.pyc,,
-PyQt5/bindings/QAxContainer/QAxContainer.toml,sha256=0TWNxQxn2j_F9h1lC6Fi1-v-7h2I9rwrblpM6vdLgI8,176
-PyQt5/bindings/QAxContainer/QAxContainermod.sip,sha256=avSvZZJjf5ahjCw4Vz4ya1SKh6bXUw_pzOE89-lIL2c,2010
-PyQt5/bindings/QAxContainer/qaxbase.sip,sha256=KKtqB3aoc1BPDkDqqZIySXQtAZRs2NkL2JTkET1BfmQ,5363
-PyQt5/bindings/QAxContainer/qaxobject.sip,sha256=amNrL-T3sVMRo9Tx5wB18LRHM6zSU3ZnYY2Dk6QllVc,1951
-PyQt5/bindings/QAxContainer/qaxwidget.sip,sha256=o8dJ5p9khOGJ27mwV1KLg90x2-tPjomaywdphNCrv5w,1786
-PyQt5/bindings/QtBluetooth/QtBluetooth.toml,sha256=yUJQuBV5ViAkw8JylPOLFeYnnmAC1Ie6TlhtZRq7jwE,175
-PyQt5/bindings/QtBluetooth/QtBluetoothmod.sip,sha256=Fqv3yp8eZIUnWaXKCQ05RnbjfOlSAfZxD4bmH8-Mi8I,2883
-PyQt5/bindings/QtBluetooth/qbluetooth.sip,sha256=ocFuIXWFGXmdZPTpZErS4jdp2BjEK2lIXA2519NHkYI,1881
-PyQt5/bindings/QtBluetooth/qbluetoothaddress.sip,sha256=X111wVLm8weGcbNGwEKKLfxZX-XzjQypS22nMek9jtU,1611
-PyQt5/bindings/QtBluetooth/qbluetoothdevicediscoveryagent.sip,sha256=XkOI2QM4XlIFPMjitlcs-h4hUiRhCgbnXxHKmjZIRB0,3372
-PyQt5/bindings/QtBluetooth/qbluetoothdeviceinfo.sip,sha256=45rrtZl30BT369rQ7w0Ma3eS_Nt8tr6J2OS6BWY-c8o,7390
-PyQt5/bindings/QtBluetooth/qbluetoothhostinfo.sip,sha256=RJbLG_HFPNbL5MsF-8p2K_iEtV_pt2O7bHxBrEr8uEE,1558
-PyQt5/bindings/QtBluetooth/qbluetoothlocaldevice.sip,sha256=nQzCGb4JoTnnDFKsAwrzNt32ZaOXUA3Baji7CY8cZ1k,2999
-PyQt5/bindings/QtBluetooth/qbluetoothserver.sip,sha256=0WbvaZzxMoCvMo6gVme2uDl2OAPazNZZ2c6nVlbNK4Q,3721
-PyQt5/bindings/QtBluetooth/qbluetoothservicediscoveryagent.sip,sha256=50KGWNMMeTvxSJ_fyKqWXx9revkzY63UX-OaYx0f_jk,2622
-PyQt5/bindings/QtBluetooth/qbluetoothserviceinfo.sip,sha256=Ijyx57yp8uluc6x_F5sTmwlvuosv_hwr9VcXzdQFmSU,3412
-PyQt5/bindings/QtBluetooth/qbluetoothsocket.sip,sha256=7la7G5Iy9EC9L8NvYnG5DhOivwZDL3aY_8jrz-C2ooM,5191
-PyQt5/bindings/QtBluetooth/qbluetoothtransfermanager.sip,sha256=VpKcVwYB2_AYm8k32ETU099AmyvaQv71L5_0-mJeAFg,1432
-PyQt5/bindings/QtBluetooth/qbluetoothtransferreply.sip,sha256=CB3WppNRw1MbI8CcjsNqY-33dCzOI012p3xiDLfApKU,2276
-PyQt5/bindings/QtBluetooth/qbluetoothtransferrequest.sip,sha256=IWDYSrxcGJQ8Za8HgBcep5_9tIXJJpOcTW2YT6bI78o,1886
-PyQt5/bindings/QtBluetooth/qbluetoothuuid.sip,sha256=dnuGSbkM2CCZmlMPjUTycIFyXZvNI3r3H-Dlia3ROqs,11907
-PyQt5/bindings/QtBluetooth/qlowenergyadvertisingdata.sip,sha256=Jcpd-O7QY-xA-65b9gh0C4x0Ck9mvMElWo0sxbVQxOo,2400
-PyQt5/bindings/QtBluetooth/qlowenergyadvertisingparameters.sip,sha256=dHDAncMCpYKmLnmYVGvsxiU_L9qflMOOvADGzzICX7o,2930
-PyQt5/bindings/QtBluetooth/qlowenergycharacteristic.sip,sha256=1Bwz44_oHUk3EKtPbGQQSHBlKijNL14W3BPC7mL6CLs,2224
-PyQt5/bindings/QtBluetooth/qlowenergycharacteristicdata.sip,sha256=F0qAxH1FGL-XM6oz8r2Q_XQ-19AQxJrXic6CJAMBvfk,2533
-PyQt5/bindings/QtBluetooth/qlowenergyconnectionparameters.sip,sha256=Icaf8AR9Jfa4eZ2H8emLSszUgn8WJuunquRs0nLlY4w,1894
-PyQt5/bindings/QtBluetooth/qlowenergycontroller.sip,sha256=l67_F4RRjmRbe2bDIgdfNUOEzPsTb0r_mbBFSeV8yTo,4733
-PyQt5/bindings/QtBluetooth/qlowenergydescriptor.sip,sha256=8kfBPSkytQCkZjhWB21mKZip27MSbroCnHU2wQxATJI,1572
-PyQt5/bindings/QtBluetooth/qlowenergydescriptordata.sip,sha256=Phhfs6wp3MYfrx79ZcMsljuYs4SrPLzwrKPAU5uPpco,2257
-PyQt5/bindings/QtBluetooth/qlowenergyservice.sip,sha256=Y1ZXDsSc2HeiFFfhdT1xLblpVGqLOYXUA8xbiVOP9ls,3855
-PyQt5/bindings/QtBluetooth/qlowenergyservicedata.sip,sha256=NwrPU5kMuO4gfQ43XryDa57Omp8-RytE6DSyUBtlZXM,2263
-PyQt5/bindings/QtBluetooth/qpybluetooth_qlist.sip,sha256=7MwP1fRb06LxFlQsGPsHWlkUhu59d6Cvtabh3qTK_b4,5611
-PyQt5/bindings/QtBluetooth/qpybluetooth_quint128.sip,sha256=7EgoHngR-NQURTDuLU2EFjYwbsM3yW9eVMwhxQSFbY4,3041
-PyQt5/bindings/QtCore/QtCore.toml,sha256=rMWlvCx3ELoc1vfMP7dhng1E6EQKcxujd3KOKMRraGA,180
-PyQt5/bindings/QtCore/QtCoremod.sip,sha256=kHA5M0SqH423LP-DJ64VCOBtItDEER2S_zYRWzxZ72s,7084
-PyQt5/bindings/QtCore/qabstractanimation.sip,sha256=RyOPlgy8G9m6agaaP7G7wNqGpLkHhmLXNYO0QEAftoY,2639
-PyQt5/bindings/QtCore/qabstracteventdispatcher.sip,sha256=CmZZL9bBwXmVoaT66J9C8FYr9cN4kp7lpjzlkn8cx9Y,2911
-PyQt5/bindings/QtCore/qabstractitemmodel.sip,sha256=7n4ur0qCn-FjohHoX9rTOzQsPMW8n4DLETvhfQQ1Bk0,14579
-PyQt5/bindings/QtCore/qabstractnativeeventfilter.sip,sha256=NgLtO_iiLU7OUZSrz2cLreL5CmSN6imK8gg5Sg2RjdM,1362
-PyQt5/bindings/QtCore/qabstractproxymodel.sip,sha256=dmP4JHnXKeNfkJ-kqrEy6CQsOOLNl8lgzTX6UhD2VsM,3733
-PyQt5/bindings/QtCore/qabstractstate.sip,sha256=HEupgmPjOKeiRqPjWX435D2_PQr-sFHrSjkWSm99xCs,1542
-PyQt5/bindings/QtCore/qabstracttransition.sip,sha256=p1OoVgSfMRsWWJF8wTnXAU43Rik_XWiwfA2iBzLetDc,3602
-PyQt5/bindings/QtCore/qanimationgroup.sip,sha256=gAmHzVU9TJE8semXoCd-mERFlVePco0U_-sVUtGJIfY,1692
-PyQt5/bindings/QtCore/qbasictimer.sip,sha256=a4v5zixcatejwhMXun7la5vtpvdaagY3jH6DePcFBYY,1417
-PyQt5/bindings/QtCore/qbitarray.sip,sha256=Ed8udq6rPrXlUaOCPsiGu0v5AR_U1a_201PRKqL6CMg,3107
-PyQt5/bindings/QtCore/qbuffer.sip,sha256=xAXaDo2BpzRJCCMwAQFy-Xk8HGXmT9KuokZtY2-Nj3I,3098
-PyQt5/bindings/QtCore/qbytearray.sip,sha256=-jBcqT0lcQAIXrede9weOsJsU-TiistRTbndB7FrSuQ,16073
-PyQt5/bindings/QtCore/qbytearraymatcher.sip,sha256=MOOIdJmfwFK7AExGPM-tMgUv2DkAYLSxShqyE0DbI78,1387
-PyQt5/bindings/QtCore/qcalendar.sip,sha256=e3eE9idVaE58ssGbHw7btOaB6-vxWIYH8JgIn6BZa1Q,3571
-PyQt5/bindings/QtCore/qcborcommon.sip,sha256=yLU_gGjnoSPdvlRPbqixVVp9uA7QyyS-CqwoGQlYbZY,2490
-PyQt5/bindings/QtCore/qcborstream.sip,sha256=dO4LIkn7pXLL3xU0uPQrcCx-iK6Du5UkiMxa0zvteio,6687
-PyQt5/bindings/QtCore/qchar.sip,sha256=mXP1T1z6XTPuJAVBAp3LL4RqrT_1wfvJr4PDA6N4Vk0,1637
-PyQt5/bindings/QtCore/qcollator.sip,sha256=nF9eVQXRh1xfxG1XCBo5BKGSz0CIme1lUMcne-Ds_MQ,2126
-PyQt5/bindings/QtCore/qcommandlineoption.sip,sha256=4d6cnG_ev6D8j78CRstFQ9iO2jd11iNKtteQVDspOjI,3090
-PyQt5/bindings/QtCore/qcommandlineparser.sip,sha256=Z-J2SlUj62ex-fvtv77mUhq816hYbuJ7fGb5r_QvVdI,3024
-PyQt5/bindings/QtCore/qconcatenatetablesproxymodel.sip,sha256=Z9dWTN8Rgyj_s2JqhJ2N0S5M1Znzdo0byVM_ApXCJqo,4192
-PyQt5/bindings/QtCore/qcoreapplication.sip,sha256=N84c_MOmwEYoDlFQKYkH_91dwfAWdf8ZFJLR0OxT3-k,10705
-PyQt5/bindings/QtCore/qcoreevent.sip,sha256=_90MjnzrK3gg4C_oUSlIunQZKZ3n_HgZYfmcyo6r2Nw,6702
-PyQt5/bindings/QtCore/qcryptographichash.sip,sha256=Xs7deXxL7_A08Ds21KcgoO0kG2ZXH5fv3J7LnBrSrtM,2127
-PyQt5/bindings/QtCore/qdatastream.sip,sha256=Q2OaHuOEuoIXFriHRakvps86S6x5f2ZLdh4RA2T0VlE,10145
-PyQt5/bindings/QtCore/qdatetime.sip,sha256=noUyf3Hoq6CsiF53zzfW0jCMgzqYDIsDtwLZnsLa5DY,20395
-PyQt5/bindings/QtCore/qdeadlinetimer.sip,sha256=UXYreGoasVQg2JumlNMFmTB1seZKwzAdwWN3_yf5TRI,3123
-PyQt5/bindings/QtCore/qdir.sip,sha256=_EN_mFnsDhJ2EI6kud-VumPYMoEgY4sUo_qH9TbJGRo,6420
-PyQt5/bindings/QtCore/qdiriterator.sip,sha256=SPB5BmlBFVLWzQf9gaHVf1i6Osl5kiRpNtQq5wSYl3o,2109
-PyQt5/bindings/QtCore/qeasingcurve.sip,sha256=1yQFPFJnsJTk6Uj3OUND0nnpQusyZfW0EBIOtnutDsU,6957
-PyQt5/bindings/QtCore/qelapsedtimer.sip,sha256=sUOLSj04TL-k4C6QrD90haIsW0mgkwLYXy2wyJ2_Cco,1886
-PyQt5/bindings/QtCore/qeventloop.sip,sha256=nfHBf4uCGoJYoZzROBb3nXIx1xQVyCgnZYSxi4jn0Og,2586
-PyQt5/bindings/QtCore/qeventtransition.sip,sha256=Vp_Usuwf6EJCjRmR6JEjUn5N5y6bliJLSW5M_nUFU4I,1628
-PyQt5/bindings/QtCore/qfile.sip,sha256=-Wp2HJfDtSrkeLWX3ZzG8NczTleX0_-_dPXrC9lBsFU,2871
-PyQt5/bindings/QtCore/qfiledevice.sip,sha256=Lvp3Ryvsc-vbdNWYk5bRBMq5BXOv6oe5cQlMcaAnwWk,5888
-PyQt5/bindings/QtCore/qfileinfo.sip,sha256=h39JCeN0T44SyJbn0gC9g1AGpOKHyGfgiZrXuKVKA94,3466
-PyQt5/bindings/QtCore/qfileselector.sip,sha256=wb-MEgx5mDmke6B5YuhT_ffoCN6dLO2B59eSsC9YRc0,1430
-PyQt5/bindings/QtCore/qfilesystemwatcher.sip,sha256=G18-0pUK__5g-gCLEfUy2G-Cgf2eNojQeL_1KJG7Fig,1640
-PyQt5/bindings/QtCore/qfinalstate.sip,sha256=xkpeH-OURD-e_OjuzrmJjkHTFrh1AWUScHCSyNvCOio,1290
-PyQt5/bindings/QtCore/qglobal.sip,sha256=lxnpudp9-XUzB8cxFwFYKiLbCYo3WkOOetAyIXZr5cQ,7237
-PyQt5/bindings/QtCore/qhistorystate.sip,sha256=qsDOJXa8QV8YR95ERpxaTyv0m8Lpt4nAEePr6dcOPGE,2091
-PyQt5/bindings/QtCore/qidentityproxymodel.sip,sha256=BpuO5apL-_v-EJiKEp3dHrHSunnd-fO2VpbPCsQE1_M,2968
-PyQt5/bindings/QtCore/qiodevice.sip,sha256=dzuxudtrrBlvhDhyLy4L4Neqfcpu-C3hFlyibPBZjmw,10032
-PyQt5/bindings/QtCore/qitemselectionmodel.sip,sha256=exx3XeTf-ebqTWSuQgbwkIz2YFS-bA5wQqJBkNJmqkk,9676
-PyQt5/bindings/QtCore/qjsonarray.sip,sha256=tJH3ex5MDGormkewljlaK5wLiTO4HWaw5oykCr2TXMo,3486
-PyQt5/bindings/QtCore/qjsondocument.sip,sha256=X6k1v7XjusJs0g4UqT60cJ4oGbi4UCDu9G6ius3j-1g,3585
-PyQt5/bindings/QtCore/qjsonobject.sip,sha256=o704iNMS_WXmlw0ykor05ZcFruLdIqYNgqlXveg_LaU,3636
-PyQt5/bindings/QtCore/qjsonvalue.sip,sha256=eK7EsXbxc75e-wNR-TbejfqmxxyQp1aasHLnWTF8PCY,3188
-PyQt5/bindings/QtCore/qlibrary.sip,sha256=sjDKfAP9KXr6_iCuk9lMzBUs0LNrQqDrmlkrPp2g30M,2581
-PyQt5/bindings/QtCore/qlibraryinfo.sip,sha256=KERP4LVEyBwsDSwlnFoJh2WUZ0dR1hxj3LgSMh-jOas,1754
-PyQt5/bindings/QtCore/qline.sip,sha256=ri__2yHxkmUmmWGCj35X97c_EBJrqvtp6xgz33CiUgY,6678
-PyQt5/bindings/QtCore/qlocale.sip,sha256=HVngN5h93-xMz9JN0_4dQCOvE91gCF4bsesUC40BDhI,34464
-PyQt5/bindings/QtCore/qlockfile.sip,sha256=F8icxwpQCmWSHLsRWZNnzOXLr8tgaSNVy7n0yjq2Hkc,1722
-PyQt5/bindings/QtCore/qlogging.sip,sha256=DrAZwyJClRnUWvfSVqsk-z3AeRFj9mvFG_XwE35zVFQ,6174
-PyQt5/bindings/QtCore/qloggingcategory.sip,sha256=LMMfGNCPApbqndvFuw3rbZAh2RkmthmXshZEPopmSz4,1726
-PyQt5/bindings/QtCore/qmargins.sip,sha256=-EZYZMFzTuVoyvp7kh_7Ao6O5p4it3ZgFUm17GVSdqY,5292
-PyQt5/bindings/QtCore/qmessageauthenticationcode.sip,sha256=FiIDacipQw-RTIL9F4kX0xfZNLjGZuvn96-Kx031xr4,1696
-PyQt5/bindings/QtCore/qmetaobject.sip,sha256=lTqS4OzQm1sZ6DQUO7EWiDi5w3EFw6AgZXNAlA06EJU,8117
-PyQt5/bindings/QtCore/qmetatype.sip,sha256=AGvaDrt7wns1wO7P4FgiaNoRGCXAL3oZWw9y80EpcCE,3617
-PyQt5/bindings/QtCore/qmimedata.sip,sha256=MO1zZ4NDzujFDyEq0zKxr4vthSGHgaOi8EFTdI6Z49M,2062
-PyQt5/bindings/QtCore/qmimedatabase.sip,sha256=K4nVvzS98vP45cFRdPlCuocgKS5b1ARukgcMXtetA2c,2136
-PyQt5/bindings/QtCore/qmimetype.sip,sha256=s4WowOi7bJlx8ECYyglk2UBpF1aZDiulWblSKvEIFbs,1887
-PyQt5/bindings/QtCore/qmutex.sip,sha256=vjYyY4Irn9_tJgL2dbp2TlIU8aW9U_IWvDY6KoKzrH4,2368
-PyQt5/bindings/QtCore/qnamespace.sip,sha256=ViqgC6hWNCv-pLNy0vdOrJ3dA4uH1hv8oZkZX8EcGoo,39193
-PyQt5/bindings/QtCore/qnumeric.sip,sha256=hhLKTaPN8UzZpJmTv1lcwi1UK08hwOYY_ZhivDay-rk,1207
-PyQt5/bindings/QtCore/qobject.sip,sha256=yoJbES1KkmvyMd3xvs42d2T3VdJHLpAWMPHacd_zRd8,24894
-PyQt5/bindings/QtCore/qobjectcleanuphandler.sip,sha256=VW8Jga9WyNETs8sg09xGiwuq_ciCRsfN-xgu4Grbc14,1284
-PyQt5/bindings/QtCore/qobjectdefs.sip,sha256=T1uDwawrQ_EZJme-R1ZLRo2I4jM21bECpCLgaZfm7aA,7914
-PyQt5/bindings/QtCore/qoperatingsystemversion.sip,sha256=A9SzVyMqAyMeBbWCCLZI2GyYBxYxDNuAFH6knzSfWW8,3616
-PyQt5/bindings/QtCore/qparallelanimationgroup.sip,sha256=thcGen9ldUMflceuWw1cXgp6TYrWDT6agV-HDtwEIcA,1541
-PyQt5/bindings/QtCore/qpauseanimation.sip,sha256=BoR_2dRfxDDf4pp2K6nYtBZ_32iTUMgFzs_CyODtvko,1412
-PyQt5/bindings/QtCore/qpluginloader.sip,sha256=IvZkJNMuQHXlZaJ9WR6xdOAjAsQtCh8pSUpDGPYs7Z4,1598
-PyQt5/bindings/QtCore/qpoint.sip,sha256=WeElxBOHDDEZiBcPuL1EgNI4bjjGZpQgcQfiE2e5RBc,6649
-PyQt5/bindings/QtCore/qprocess.sip,sha256=Ga-t3zn-nJHe5BgjzCW11Yj3pW5ao04J9bQBaBqw0v8,7926
-PyQt5/bindings/QtCore/qpropertyanimation.sip,sha256=roA7keO6c4HctVQBAyGuKdSj0lHTG71dwRwMakI1qi8,1737
-PyQt5/bindings/QtCore/qpycore_qhash.sip,sha256=HZM2G2FFk3vqXI3-NIj3aNRXYUnWhomfjEjtEPFanEo,11683
-PyQt5/bindings/QtCore/qpycore_qlist.sip,sha256=pyMv-w-Zj836RsC4GZSJZoI2sNR0QrVCaXfXqZ4ruro,21174
-PyQt5/bindings/QtCore/qpycore_qmap.sip,sha256=9_EV9Rd8kAimt4ZXSBpYoec7dCoLPCUK8eE2cvJRmT0,8528
-PyQt5/bindings/QtCore/qpycore_qpair.sip,sha256=3DpebTRcg01yGClYBfBG0-U3z6WHIUF1KOU6tlFa-SI,8489
-PyQt5/bindings/QtCore/qpycore_qset.sip,sha256=V1Iw-N9Rk5T-6B1FFYwZpzL2tEwgBN1QBApneh6ZJC4,5661
-PyQt5/bindings/QtCore/qpycore_qvariantmap.sip,sha256=D3uzKhNb6EHHmJ6INWfAcXlIuvDMS1G6qMDatWKM3Oo,1425
-PyQt5/bindings/QtCore/qpycore_qvector.sip,sha256=9cQ7pMBA81miqjSx0pSYSTOjenaQxiG7a-TKbbT_s_k,11702
-PyQt5/bindings/QtCore/qpycore_virtual_error_handler.sip,sha256=d627KI9WraIaANe_MZGUyZV-NlML1A67C-FSVz801fY,999
-PyQt5/bindings/QtCore/qrandom.sip,sha256=jCVt_CklGfuTQinxq5gatjO_YcHQBG0BhwyUAz-voOU,2000
-PyQt5/bindings/QtCore/qreadwritelock.sip,sha256=GdWm92Wc-1vqWqsZ3FQI9-JZsxbY1-bcRvtUHBa_szU,2810
-PyQt5/bindings/QtCore/qrect.sip,sha256=-NBmBqp985fcRSbrLRihXK5ucO01BySyjR_v_Zd3oCY,11291
-PyQt5/bindings/QtCore/qregexp.sip,sha256=1dLvJd2ScCBVG_UyAHoNG7UxEllqgLuOgHLYXFxVrH0,5016
-PyQt5/bindings/QtCore/qregularexpression.sip,sha256=kMLE2-69zzd1EXrhNHl3anKhgwMBc5vioV9iT33SCNA,7379
-PyQt5/bindings/QtCore/qresource.sip,sha256=JVMYHzipGw9Sf1gxPAYai2KR7kJtd5WRUCsAw5fpaJo,2779
-PyQt5/bindings/QtCore/qrunnable.sip,sha256=fY3QJkEf01t0M0vHmitGZkm-BRQ-4N4PHMgQfEp48Xw,1235
-PyQt5/bindings/QtCore/qsavefile.sip,sha256=BBVLsMi8HEBH8KOSwqLQSgtj0q437T1XjFPqOmb6Jx0,1725
-PyQt5/bindings/QtCore/qsemaphore.sip,sha256=ZBxLH62at-S-PtgbUOy4wy4El6xbzo8a_DXCPlAj9co,1704
-PyQt5/bindings/QtCore/qsequentialanimationgroup.sip,sha256=-3jyie4zHNKwPi-LI2gY_pSzfFPbTzsVXz3Kct2row4,1766
-PyQt5/bindings/QtCore/qsettings.sip,sha256=5DZyBVP1poXAjPTcZeRJGTUgwo4B8NPxEIcjjK_g_MY,4030
-PyQt5/bindings/QtCore/qsharedmemory.sip,sha256=VSrNRB71XNVBIJcbh8lleqdTRlyJnLt5gf-MxKDZ4PU,2383
-PyQt5/bindings/QtCore/qsignalmapper.sip,sha256=f6X0f2vQY3HWTLIN37w6JeHDNSvve922vSBW2FXBiZI,1949
-PyQt5/bindings/QtCore/qsignaltransition.sip,sha256=sXLay7R8tJg6ghrjKce462wU7jj2rAyhOm8S6M6JI6A,2235
-PyQt5/bindings/QtCore/qsize.sip,sha256=KbA6bxVI7Bk42tKjigWX8-cRlAaVqDyqOnsQv0-TsFY,6215
-PyQt5/bindings/QtCore/qsocketnotifier.sip,sha256=hcIjRS955PHBitt7QTTUD4KoC7S1YspBa8gMr2GK54s,1531
-PyQt5/bindings/QtCore/qsortfilterproxymodel.sip,sha256=qFVKvGxNISWMj3EuYd5U2ImyhEJ0jxsTmX8yTjKryls,5715
-PyQt5/bindings/QtCore/qstandardpaths.sip,sha256=lZ-28t6cJ-UNOBg6IBEPbbGhqzkKDBGTtBCSyYxEzCo,2942
-PyQt5/bindings/QtCore/qstate.sip,sha256=Ytjo0fklU25O1GbHTfMZlWWg10LAeIy7pN57zV_CIJE,2943
-PyQt5/bindings/QtCore/qstatemachine.sip,sha256=R4BmDT75aQ2yodQpmDBodFvNkYo6uEYpg0GvhiZlqJs,4749
-PyQt5/bindings/QtCore/qstorageinfo.sip,sha256=h8kfqVpT6dLBUeRdxe5LqzRQutD7SBagWcNVWy2rXa8,2145
-PyQt5/bindings/QtCore/qstring.sip,sha256=9wJibOWz9K76RoxpDqUznLASwEzbQ3Sysco5XI3loXg,2063
-PyQt5/bindings/QtCore/qstringlist.sip,sha256=KB2BHXzFdj8sLuPUO3mxn1fP1qe2iDXIChU_Z6Qhl0g,3714
-PyQt5/bindings/QtCore/qstringlistmodel.sip,sha256=7dqEkkq5h2rFKgRwNyDmcuhQmOYGNCjJpp4LQROGMKg,2448
-PyQt5/bindings/QtCore/qsysinfo.sip,sha256=CzjMALdhXaZaos85-I2IqvmJGFNZoGinw7ewq3fQ29U,4005
-PyQt5/bindings/QtCore/qsystemsemaphore.sip,sha256=IpRYWdIH6vHnrv3mkVPpOwk7ecGe4ObirCSOMtelyVg,1848
-PyQt5/bindings/QtCore/qtemporarydir.sip,sha256=9Qe-ihAPrnaDKg5WkntlqIwhcNZYkpUz6Mxcfc8Wo-g,1495
-PyQt5/bindings/QtCore/qtemporaryfile.sip,sha256=TFLVZ80kz6nlXeJkZTU1rpk-yDqmbAVMkczQoze2zU0,1866
-PyQt5/bindings/QtCore/qtextboundaryfinder.sip,sha256=hK1iSKCxOY0naDiRyvDCqqZbHxO5DXK6pAag6JW10qQ,2169
-PyQt5/bindings/QtCore/qtextcodec.sip,sha256=twwY-1nJr8G03fqI2oxVV2_d4sCaQtsPvzj0sy-PMeU,4228
-PyQt5/bindings/QtCore/qtextstream.sip,sha256=zhAL1wTcygkNKhq5nI_Q0wbjDtPhPtmSwc9GWepFsxQ,6053
-PyQt5/bindings/QtCore/qthread.sip,sha256=Lt2ZUCvFKfiLqjhnnqIy0eQq30wMR3fc4J4Z94LoKU4,2827
-PyQt5/bindings/QtCore/qthreadpool.sip,sha256=UHPGR34FAHXxRWT6B8Wokskq7woQBou1QPyzBnlMzwc,2848
-PyQt5/bindings/QtCore/qtimeline.sip,sha256=--NkdPba55XEeut9MFRt-Mmcww9ohNxS0hd_gFhxGBc,2789
-PyQt5/bindings/QtCore/qtimer.sip,sha256=5blbsDmdcKbUFENyiKYsYjsDVmjVLkCi96ReSJ9ZsYU,2668
-PyQt5/bindings/QtCore/qtimezone.sip,sha256=7EXOxZtOVRc_FoN65WS7rZIq7MO_SyH3PQCUdYWv_l4,4380
-PyQt5/bindings/QtCore/qtranslator.sip,sha256=EBPJKenjNFbou7HzVTnyTUVuxe3JNf9qaGBDoPGk06E,1814
-PyQt5/bindings/QtCore/qtransposeproxymodel.sip,sha256=o7bDM3MMcN_1BjunHI3ufmCWRT_SVavdB0QtkOwSppY,3053
-PyQt5/bindings/QtCore/qurl.sip,sha256=gzgrgxjnjXNXfPlJjiEQiYp0GCyb_E_U235cUKDvpkU,11703
-PyQt5/bindings/QtCore/qurlquery.sip,sha256=fXn7qXyRFWZfDe6d1nT7oumW2FZNqGg2tDeZyV-EwQE,2685
-PyQt5/bindings/QtCore/quuid.sip,sha256=do0AYpdQFLAzkU7UWq5oC8RS8hdH3OnZ6fpThFwKSoU,3632
-PyQt5/bindings/QtCore/qvariant.sip,sha256=jPMdj25F8lTKKdaEaSFOFwvMqEe6ATVKbcqDrMOSc4s,4727
-PyQt5/bindings/QtCore/qvariantanimation.sip,sha256=e0GHEbd6w55HFxA46e-3Kv1VjSH5ENY0VOARrk7KYlE,2252
-PyQt5/bindings/QtCore/qversionnumber.sip,sha256=CgcvkW2CYx4kg4Z0O4jz_LGRgrWJvG1Soaw1nUojzFI,2836
-PyQt5/bindings/QtCore/qwaitcondition.sip,sha256=kZMlca_VhHwr_sazHfTyqwSwRTou-M62AaPFyjbp0UQ,1599
-PyQt5/bindings/QtCore/qwineventnotifier.sip,sha256=WMaSoIUWf6q84lQQV9sJB4CkOnO1T4w8mezssNepOjQ,1630
-PyQt5/bindings/QtCore/qxmlstream.sip,sha256=kFHUTbf_gNrEFAqeg80cu5qpRCLzgkwNE7zqnPZsI-o,14358
-PyQt5/bindings/QtDBus/QtDBus.toml,sha256=4ZYZAVXP55ihGm86xLD70IWZ_IIlmMvaboG2BVTesvs,170
-PyQt5/bindings/QtDBus/QtDBusmod.sip,sha256=wzU1_bHJ0IQ53ef_bFNDjvJAPakkqg1kdgMamfYIzZY,2395
-PyQt5/bindings/QtDBus/qdbusabstractadaptor.sip,sha256=sPkOO1SSMdRoYJz-CMop3_5iunSN1L9iDKDVVsptjF8,1309
-PyQt5/bindings/QtDBus/qdbusabstractinterface.sip,sha256=80vaEGG1RO4RKt0n5mG56lf5lwlzQKnb2TXcY1Hbgmw,6844
-PyQt5/bindings/QtDBus/qdbusargument.sip,sha256=c9mAN9L4df1b6rr7S5_7LwCtUfA5ljqL7wTyOvoNbIg,5238
-PyQt5/bindings/QtDBus/qdbusconnection.sip,sha256=FNrFsO8E4Mbtt1URk0-uLXJvXAOK4ldMGTQ4A0-f1VE,10165
-PyQt5/bindings/QtDBus/qdbusconnectioninterface.sip,sha256=ROMdFMuEhRuXR70AdWNxhrwKq0CifE_-xZN_nSSCLDo,3073
-PyQt5/bindings/QtDBus/qdbuserror.sip,sha256=N1_WlApgHwOIdT11J8LcGBWAi9jgO45ZkwnoPt9bF0U,2026
-PyQt5/bindings/QtDBus/qdbusextratypes.sip,sha256=U0u46PDTU6ocR8-zKYJR81Lz4gDZ38bmi08qMebfDOs,2652
-PyQt5/bindings/QtDBus/qdbusinterface.sip,sha256=x4avYPQ2p_e1FFnb7AhtIpfTW_xPSumjxpdASvvgLo0,1331
-PyQt5/bindings/QtDBus/qdbusmessage.sip,sha256=5_JO0n-7jMcXsVGjSMLrQRdg_c7TVdckN5w3eKnXLKY,3184
-PyQt5/bindings/QtDBus/qdbuspendingcall.sip,sha256=qiKCx03QrvTfKemhQBu8l1gUERq-SeXs4ui3qo5zpWI,1901
-PyQt5/bindings/QtDBus/qdbusservicewatcher.sip,sha256=_2e_Q6ngL0rwXyImKcL24BZxVfzU9eY4TG_5feqCJFw,2539
-PyQt5/bindings/QtDBus/qdbusunixfiledescriptor.sip,sha256=nSXZ5Fr5cCvHVcJYr1lQkLA9Y0LbCqa0Jj_FqlC2fa0,1489
-PyQt5/bindings/QtDBus/qpydbuspendingreply.sip,sha256=6T0H5nrxpyo1txdFMb1U0s4C1o3m-6U26wC9_Vkaw2Q,1783
-PyQt5/bindings/QtDBus/qpydbusreply.sip,sha256=Q9HW58XvqtR3QI1HYCNzaKgM4H9mcyWqri19xOAhLbQ,5529
-PyQt5/bindings/QtDesigner/QtDesigner.toml,sha256=mLBelyCxyE-PJTstKC5yZuvUnhzVZyjrkJk1qKfHiec,174
-PyQt5/bindings/QtDesigner/QtDesignermod.sip,sha256=EZYWLZtos0O5SFtPNglrYtGNl1ID-atiZp_vj8spU1c,2848
-PyQt5/bindings/QtDesigner/abstractactioneditor.sip,sha256=_Jy_6e-bDguN742gWiPWJ1_Jh5tG38xaJVGEZwuOjOA,1530
-PyQt5/bindings/QtDesigner/abstractformbuilder.sip,sha256=5E9kLFcqeU4nnlD5ozz3yMx9SsNua_NVpBhP92Qi9GI,1502
-PyQt5/bindings/QtDesigner/abstractformeditor.sip,sha256=ZWJ4__JI4lnENKugn7sidWqLM6ADgLJYD9s9oyKb-n0,2191
-PyQt5/bindings/QtDesigner/abstractformwindow.sip,sha256=U1HD99abGcN9yYTpqpHDYgySDliHcfs1vMy4R0YwH6Y,4826
-PyQt5/bindings/QtDesigner/abstractformwindowcursor.sip,sha256=caDHZPOkhGkJO3tCFf81V4w0c1gaDsd4MRbx2TWU0m8,2460
-PyQt5/bindings/QtDesigner/abstractformwindowmanager.sip,sha256=ovrmBUhh76LZmTOZLaTXZ_ZIBAl26Jwz6i-L1Rm2yw4,3358
-PyQt5/bindings/QtDesigner/abstractobjectinspector.sip,sha256=ZSvopk2vWnXMvh-0_vYB4ADK_jRhZHysBDkmg-aYE_U,1437
-PyQt5/bindings/QtDesigner/abstractpropertyeditor.sip,sha256=pwNBEbH97_NJ7rLNKWKkCy0itMvZmE2r-nIYyiP9q_w,1779
-PyQt5/bindings/QtDesigner/abstractwidgetbox.sip,sha256=LewfmbjNKt1SHSVoUmaic7iZPYhPrUpW2UQqTQQ2Lg4,1417
-PyQt5/bindings/QtDesigner/container.sip,sha256=fbGnQRVPyo9sMbll0q7-4cGURbwrbY5J6-tk6zPaV24,1550
-PyQt5/bindings/QtDesigner/customwidget.sip,sha256=rK5sssqw-e5CTgkvF_Wtwk85g1AA6_IhC918xmvWW9s,1938
-PyQt5/bindings/QtDesigner/default_extensionfactory.sip,sha256=vOjMmpHQHJB3ERTVZc7rmguUTjgZMB-2pj-vXJr21SE,1594
-PyQt5/bindings/QtDesigner/extension.sip,sha256=yaISgXBcIWKbs-HWSBE1JWOHi6CdrlZzY6cX7bsYVLE,1616
-PyQt5/bindings/QtDesigner/formbuilder.sip,sha256=oZXSObCuSyN6gSrkM9COeSUJ3vkZKdbs7sakA8HrbbU,1382
-PyQt5/bindings/QtDesigner/membersheet.sip,sha256=O-2h52L8B1Ha98LI5-ARIZ9P5VaL8gOIAw87eyYtI1s,1917
-PyQt5/bindings/QtDesigner/propertysheet.sip,sha256=T5tf29szfY2HQAagGJbuQWeFRVfZG-_APoQJmaZPJpM,2000
-PyQt5/bindings/QtDesigner/qextensionmanager.sip,sha256=A13UOpbZ-agvHHWifGiNJWqvq0uvPEWH2CFAcKMDMJY,3582
-PyQt5/bindings/QtDesigner/qpydesignercontainerextension.sip,sha256=_qXazB9XIdj2RnMmLMX4Yqk21tcPczODXaI8dJ3nbHE,1260
-PyQt5/bindings/QtDesigner/qpydesignercustomwidgetcollectionplugin.sip,sha256=e7IopKrj8tft-AbVWdWMdAtSYv_zvLYgZnVqJ2bme_k,1341
-PyQt5/bindings/QtDesigner/qpydesignercustomwidgetplugin.sip,sha256=PuO-17EYIDkYSScUc_vWhvmyZLHuhrK_tOL1_tV4bb4,1267
-PyQt5/bindings/QtDesigner/qpydesignermembersheetextension.sip,sha256=JtGCDMrletVr5GwO6Knf1yql0bnHdtGKWuWjfuML1V0,1274
-PyQt5/bindings/QtDesigner/qpydesignerpropertysheetextension.sip,sha256=nvkifDOmxrSJfpyr_BKgo20FyEQV6aHYQZ3BCTeRatk,1292
-PyQt5/bindings/QtDesigner/qpydesignertaskmenuextension.sip,sha256=O3tLMtaMicHYoYL_8Y-Zot72COO1QBRQdH2x2DQUwiY,1253
-PyQt5/bindings/QtDesigner/taskmenu.sip,sha256=Gex1pDSiL9nhnuJWghW5dsl07RKjLUzN9Fz7UQ2_neA,1221
-PyQt5/bindings/QtGui/QtGui.toml,sha256=v9ErL7kfr85iDg9H8e2jfM1NxHox6yQ1bLKzi7Kf_cQ,169
-PyQt5/bindings/QtGui/QtGuimod.sip,sha256=Ux6XlTL6fAnioveNcRlEVT1XSP8w5nDqllh_k3DKvqg,4639
-PyQt5/bindings/QtGui/opengl_types.sip,sha256=n9s1rsbrFf2F5WyIP5A5cdR1K5xTI1W-eZ8I86DUYRU,1450
-PyQt5/bindings/QtGui/qabstracttextdocumentlayout.sip,sha256=ZLYZmb0aPoRjLQYTqs5Y64OgQ3RaRzoQNoWIhaqiEr0,3924
-PyQt5/bindings/QtGui/qbackingstore.sip,sha256=QG0I-tgXNr0U4tG0JgJYd4wRv7v4VTZiOwp8SoGWguI,1611
-PyQt5/bindings/QtGui/qbitmap.sip,sha256=zpfyX08XljMINxpKETzilpLqdYuI2393IKrPIY-zZ_8,1932
-PyQt5/bindings/QtGui/qbrush.sip,sha256=PauDgQMmqE24Qs3e2vyCkSJA14ecdTZGIPT1PWe2uzg,10939
-PyQt5/bindings/QtGui/qclipboard.sip,sha256=qjyp6OrkiK7QGL8ESGoXLIggOZrmYhplwC7cz10foBg,3633
-PyQt5/bindings/QtGui/qcolor.sip,sha256=OU7VSPOvoDbeJecUtHYpHVZwEFyhy_ZwImzpwDZbvdk,12459
-PyQt5/bindings/QtGui/qcolorspace.sip,sha256=9g5bYQXkz54GAjZm8L9Uo7Yp_k99OL8z6bMpxsJG3kE,3243
-PyQt5/bindings/QtGui/qcolortransform.sip,sha256=EeTSz2_w-rDeL9m6OpJcfl0VAihOa4P-Isf8tb_c_Wo,1378
-PyQt5/bindings/QtGui/qcursor.sip,sha256=ABM2P97nu0dqZlrVqFkV7FvSIcmK6F18yyMLvNCXHKc,3162
-PyQt5/bindings/QtGui/qdesktopservices.sip,sha256=4Yn9gwvErROxaVUcvpbr53fLMaOtxia4zzufObfanuA,2485
-PyQt5/bindings/QtGui/qdrag.sip,sha256=i5trfStxJm9nZx-SkChEzlkTveObzNomARc7_sR6L-4,2266
-PyQt5/bindings/QtGui/qevent.sip,sha256=jRyYC7lPFNGFr8jK-208sx2jGjHjtSz-9y5F9hscj5o,24900
-PyQt5/bindings/QtGui/qfont.sip,sha256=m5SurdjZcA8T5v8m99CcjIi0U1q9Q2x0L2A6OAah-Zs,6343
-PyQt5/bindings/QtGui/qfontdatabase.sip,sha256=6Ag7uzIOS7p6dJgDvo7McHcRpyJRPiQn2SXulH4pdqc,3821
-PyQt5/bindings/QtGui/qfontinfo.sip,sha256=apmR8kbKKxmrXaY9o7QJ8elr7oT1VfgH0g07IgwCu4w,1568
-PyQt5/bindings/QtGui/qfontmetrics.sip,sha256=LfdiosiGPf28hZ3GFqAS2e5KJsYI4g3GAJ74xDiemgQ,6552
-PyQt5/bindings/QtGui/qgenericmatrix.sip,sha256=YcUkuEtXkcuzX5oGg_dE_cIJwEGImAbUDY_pVSqPK0Y,32592
-PyQt5/bindings/QtGui/qglyphrun.sip,sha256=71dqdvSUAIijOxW-r9ywOCcs7kU8EfU0lp4qKUcNEk4,2388
-PyQt5/bindings/QtGui/qguiapplication.sip,sha256=MMB8xlmrH7KDvspSMQl3c_HmPXC3qIt_40pOovM0nAM,11884
-PyQt5/bindings/QtGui/qicon.sip,sha256=31cXQmQ0vhrpNLSgCZwKScF6YyxTio5wea-1mn9aJwo,4828
-PyQt5/bindings/QtGui/qiconengine.sip,sha256=-HX_7811E7K6SPe0VEbbZJI_zVAGKIpAmMsEJRJIlf4,2835
-PyQt5/bindings/QtGui/qimage.sip,sha256=_sFSyb4QOrOJHDTjHk2F_Y2DvE9PW7K-ORIKhTApTHk,10680
-PyQt5/bindings/QtGui/qimageiohandler.sip,sha256=d8gSILpgkQkD2Jgtvmz7xTKpdCVMTpvBKgX95b0lPCo,3022
-PyQt5/bindings/QtGui/qimagereader.sip,sha256=ssaipNvXBfOIxGprj-yn9iWDzwdLg86E2rMKzTHrZC0,3767
-PyQt5/bindings/QtGui/qimagewriter.sip,sha256=5vKFqG15ZHPdMUBfNZ62hHcmRI-X6sQgGM3rTQEQbNE,3088
-PyQt5/bindings/QtGui/qinputmethod.sip,sha256=EJOjbLwYjkfn42dJVRFJwJ27eVyXLxeYkU95cDMFFvY,2541
-PyQt5/bindings/QtGui/qkeysequence.sip,sha256=syX_3CK6q-fWaktGwQgL-GhWjaicD1dLQldaLCOtYho,7097
-PyQt5/bindings/QtGui/qmatrix4x4.sip,sha256=1qHMVpqrloGh3tiHcAjBv2QzCfOOqf8zWAvDx9GXY1Y,10969
-PyQt5/bindings/QtGui/qmovie.sip,sha256=wa_MUOW6gkJpEqD7KUZH3RLteHj7RkjWr7uShGM9Av0,2998
-PyQt5/bindings/QtGui/qoffscreensurface.sip,sha256=n_Nzk04fDvQ46x8gUzTWvqpQYslumALruXACsifrlUI,1862
-PyQt5/bindings/QtGui/qopenglbuffer.sip,sha256=p8T9OKCgFcz0LBygfxwERNbeAHt-XTZLy1GS4HI3we8,2939
-PyQt5/bindings/QtGui/qopenglcontext.sip,sha256=krE2nGn-WBbLvcjqm2u1p4dwPes1gMQKdBEs6ODG6U4,4123
-PyQt5/bindings/QtGui/qopengldebug.sip,sha256=vjQwdYeLhBQs8EiRvxn_5kJpv81_kuXJKSsAyY7w0VI,5517
-PyQt5/bindings/QtGui/qopenglframebufferobject.sip,sha256=Lu_smOWLl68NNGCv5-tllB61alGJCogbCorhZWYPCDs,5540
-PyQt5/bindings/QtGui/qopenglpaintdevice.sip,sha256=RViDZcUSDQhztmQeo0V8HrzB_teYWU8zbA-lvHq91cc,1939
-PyQt5/bindings/QtGui/qopenglpixeltransferoptions.sip,sha256=yDw8djOnoFlZ06d9-ueu1z1iPHOePCc32ncyItBviZ0,1965
-PyQt5/bindings/QtGui/qopenglshaderprogram.sip,sha256=Si4GIUOwSyjmVPLdMz9ng1w4ta1Dl9Bi5PhpqI57WaA,16822
-PyQt5/bindings/QtGui/qopengltexture.sip,sha256=0yFnwCGlcD8SAna6Y4hE_tyCWQ-oDtfqbSbhN4Uxu90,18884
-PyQt5/bindings/QtGui/qopengltextureblitter.sip,sha256=qhk4hc-MmOosdF7d0rb-pquCP6ThAg9Xnfm6umL2TfY,2050
-PyQt5/bindings/QtGui/qopengltimerquery.sip,sha256=EMrUfxG38g4sWcwQYf837DtaT0iBmx8Uth4-bxSRyB4,2217
-PyQt5/bindings/QtGui/qopenglversionfunctions.sip,sha256=VKFZNx8AGXQ4-LXowu9AD6gR-8x74Y7VkcUaKkXOj3w,1242
-PyQt5/bindings/QtGui/qopenglvertexarrayobject.sip,sha256=1BfZZd27E-XT01l01oDXHLQcbXVFz0-BmBxCPrrke2I,2024
-PyQt5/bindings/QtGui/qopenglwindow.sip,sha256=vx4YEHdz91QcwdU-OrHGm50ETsnyNfOoOtifwxASWRQ,2356
-PyQt5/bindings/QtGui/qpagedpaintdevice.sip,sha256=qlW9hsAP0REcjAFx4zJceMbaYt8R3X9EpiJOqWDXpQ0,7036
-PyQt5/bindings/QtGui/qpagelayout.sip,sha256=eQA3SrtoizbH9UejVgEplIttUHajh8fxoyBl2MrycQQ,3268
-PyQt5/bindings/QtGui/qpagesize.sip,sha256=GeJQQfxVeMBdYU8xB3GT4bqTYkpcZ7rbkWlaYPc6JfY,5824
-PyQt5/bindings/QtGui/qpaintdevice.sip,sha256=ovEla71JmUvm_wAl96Bdo0kAtaBaKHD2J-A7VUCD0xs,2183
-PyQt5/bindings/QtGui/qpaintdevicewindow.sip,sha256=DLhOg9BrX7K_XbyNHR9-9Te0i6CrIYhW4ZNQPClqWpg,1484
-PyQt5/bindings/QtGui/qpaintengine.sip,sha256=ycAEyGmJwuO68euzJZ6sA040AP93fi-z4QEG6u38orY,6092
-PyQt5/bindings/QtGui/qpainter.sip,sha256=C_fEbFis-a28tK991xg3BCocZXep5XiBKjehtRzFLgk,21374
-PyQt5/bindings/QtGui/qpainterpath.sip,sha256=XtzoAv-u3m5rSjMnxJZ8mwSnWeNaxnyptjpgo2ZAdNg,7180
-PyQt5/bindings/QtGui/qpalette.sip,sha256=lyQlvA-8DXZ2pSc7apxs8edXCHrX22ALRXzncm--8zQ,4799
-PyQt5/bindings/QtGui/qpdfwriter.sip,sha256=KMDDskps_aMrr9yBMdmJ8Imjo7pfr3xJsOwQ1nuzxfA,2043
-PyQt5/bindings/QtGui/qpen.sip,sha256=LybAmymHgo0I4yQf54MdoMGPKB6xg1gSQlSX5FcJuqo,3518
-PyQt5/bindings/QtGui/qpicture.sip,sha256=PnjDThkuxKRKyQQpuQxvKmNoilkH3lTDLnHvXmBP5eI,5881
-PyQt5/bindings/QtGui/qpixelformat.sip,sha256=-W0Y8hM22JrdsDx03pzEEEVlZfvyAQ9J1Xdw0hU177g,5944
-PyQt5/bindings/QtGui/qpixmap.sip,sha256=ucOmLT-Mpd2JRNT1diowdd37iMucvvvt_Vnngwb9QZk,4987
-PyQt5/bindings/QtGui/qpixmapcache.sip,sha256=hw9BxQkAuV07kjth5MqkwqQFUXqihhmODWdg6lxIXf8,2364
-PyQt5/bindings/QtGui/qpolygon.sip,sha256=u0P-02sZCfa2TkRgmcKpIWp8wOroA1QgbKOvK9YkeUM,13794
-PyQt5/bindings/QtGui/qpygui_qlist.sip,sha256=mzB-j3hAnAe0mmDYGG6WmYtnupxscwUaJT6vTBHtT4E,2890
-PyQt5/bindings/QtGui/qpygui_qpair.sip,sha256=xl1yJxukDNrfGP1J4CP3_kGXjX9v8xAFIueJB0NwfP0,5478
-PyQt5/bindings/QtGui/qpygui_qvector.sip,sha256=-ezXpXd_KaQXgNfm3vmVHbFl54f_muNe44sDMRQ7eM4,9158
-PyQt5/bindings/QtGui/qquaternion.sip,sha256=yxIlw2HKAn198HuT4ebLTxAMZsoGHd__bqNXY_ZI82M,6292
-PyQt5/bindings/QtGui/qrasterwindow.sip,sha256=74bC1equD7W-EWQv7LOu0MkZpoj6nFklghx6XbaoUOE,1317
-PyQt5/bindings/QtGui/qrawfont.sip,sha256=c5EXFoj-niBKgeOO8iQNJWUMCG47xQAmQ3y5YOm2Dp4,3942
-PyQt5/bindings/QtGui/qregion.sip,sha256=tfIRrcTd9Q0e3BY7YxfsG9mhR2_vm3UieCYzTuVjwWc,4641
-PyQt5/bindings/QtGui/qrgb.sip,sha256=WWSG3334QtevfYXGCOwpPtq7UZCa-1L54idHhzrEojE,1381
-PyQt5/bindings/QtGui/qrgba64.sip,sha256=e46MtZV06lIKfJZO225nFufzenFz_3zSwzUyc9eyfGc,2474
-PyQt5/bindings/QtGui/qscreen.sip,sha256=yX0HeRHiFc47cGV67YJr4_Em_-ZJRtn7TtB1_u_E64Y,3411
-PyQt5/bindings/QtGui/qsessionmanager.sip,sha256=ADz-EKJ8i18C_sBz5aRHBrDDEltu57hZXYlggpl8QCk,2052
-PyQt5/bindings/QtGui/qstandarditemmodel.sip,sha256=iaMEK4kuKd6LRnKHYCODiBdkBsjwMyIB_rmqarSSrh8,10166
-PyQt5/bindings/QtGui/qstatictext.sip,sha256=5NNxbwfjBoEPFMo25ulr1STCSHQVIu8Z0QXOJOOiTjs,2097
-PyQt5/bindings/QtGui/qstylehints.sip,sha256=3s2qV2Onna-3J-VC8hY8o13XjEUbwoigrE2KqxZ7vEA,3538
-PyQt5/bindings/QtGui/qsurface.sip,sha256=Uk7xFOIgGm-l1dcm2c44AT0Up-rzR8zPCmbKuFiLke8,1788
-PyQt5/bindings/QtGui/qsurfaceformat.sip,sha256=-_gbCFtliv3dbRdonduRefiqfXBIJaA7oSOxkRriYoY,4382
-PyQt5/bindings/QtGui/qsyntaxhighlighter.sip,sha256=BQkaL2i5MMETNXGp18sXDr73SKLyztXLLojwjjrsslM,3119
-PyQt5/bindings/QtGui/qtextcursor.sip,sha256=_A2TXYIhqvfCJXYRlVBoiTr0TXbOt2sG6IjQ9UAaGRI,5533
-PyQt5/bindings/QtGui/qtextdocument.sip,sha256=Jl8ueSpCyj5iqhCuf-sM2EaAciO3F-1uMg896cCt7yI,7516
-PyQt5/bindings/QtGui/qtextdocumentfragment.sip,sha256=Nelf40XkMHE9J6G06cwsRN32M3EyXKxtf3xWJOqNpeU,1716
-PyQt5/bindings/QtGui/qtextdocumentwriter.sip,sha256=GXcxWdFvUu8LdOdPwyp2aMwByLhfcS7Kig-FMH43VUE,1847
-PyQt5/bindings/QtGui/qtextformat.sip,sha256=-phvtYvRp5xFeeJfkDGZtK78Tb_WCdV1oDf8_FFNzi8,20387
-PyQt5/bindings/QtGui/qtextlayout.sip,sha256=iv1NAVVoIkThCxjpRX2z6WLs7hElvVeYcNb8MsU972U,5847
-PyQt5/bindings/QtGui/qtextlist.sip,sha256=_-tLtAfGhurUI-NRXEuPL7y0mxTww3y-m61ZAIjrdDg,1550
-PyQt5/bindings/QtGui/qtextobject.sip,sha256=2u6sajZalhDNmyRQrRngl8wXlGl1GGLtGbY7yMlNcv0,8097
-PyQt5/bindings/QtGui/qtextoption.sip,sha256=rJwtL0QGH_o5SkUB3F2JzgyzJZnyFScmDPDemc39eJk,3098
-PyQt5/bindings/QtGui/qtexttable.sip,sha256=lg7RmAYKGhV0Zd8846sZ-ahvONCIayZmzjmk65nGzcs,2644
-PyQt5/bindings/QtGui/qtouchdevice.sip,sha256=cu7mHJEodIfGBslImARWFhlL3dLmlrzLtbVU9At2_Sk,2042
-PyQt5/bindings/QtGui/qtransform.sip,sha256=NiNM8d3dJ_xOuNXlb4KAZJsv_t30LSGi6_bXAaQXnLg,5217
-PyQt5/bindings/QtGui/qvalidator.sip,sha256=78qjjWaSPcp2jkHniEsrFXzaXFcZ3QlZwKEGSXdk-dI,3904
-PyQt5/bindings/QtGui/qvector2d.sip,sha256=mISjbds3Kwv8l7cq8Y9CXn0b9Y4Dtu6xYsiOGypNtVY,4173
-PyQt5/bindings/QtGui/qvector3d.sip,sha256=6EbnrySyPE0i0ED7MlBoZ5Ubxv_8ehKGqKRjyoVd_jE,5245
-PyQt5/bindings/QtGui/qvector4d.sip,sha256=MKAP0aAl8nv6N8-Mga_0VWDULOW8muEZlqP7Od2pcdI,4816
-PyQt5/bindings/QtGui/qwindow.sip,sha256=zg0Vh8XZbzl8Ea5KhkCuBjUclp5RbZGJ6bnyU7y1ems,7481
-PyQt5/bindings/QtGui/qwindowdefs.sip,sha256=LLO776J3W95I_zQpw_M3RrL7xxVNTWxns935hySzc3c,1033
-PyQt5/bindings/QtHelp/QtHelp.toml,sha256=nFMIGYByKF8fsWRsxMKKxPMPks4zv9zpm1RjgnU7b0s,170
-PyQt5/bindings/QtHelp/QtHelpmod.sip,sha256=_NPzwMtCXR7I_IfRbnkaxtZgu4jK2WjiLanfltaWTwg,2338
-PyQt5/bindings/QtHelp/qcompressedhelpinfo.sip,sha256=Zfgo8BkOibToIwYkA6m5Lw17JMH1_cY-1JQqVTXQtf0,1471
-PyQt5/bindings/QtHelp/qhelpcontentwidget.sip,sha256=oO9Q7ztb3dg-1pE63Yp8jnBWyqGszq7uyR0VMXMmCOw,2424
-PyQt5/bindings/QtHelp/qhelpengine.sip,sha256=EXQwXRP_lfXwSYdbXWCHNnYr21w2dU94mNHmKObLyCo,1398
-PyQt5/bindings/QtHelp/qhelpenginecore.sip,sha256=LUaSlheCmYyyqUFq_eJVxxfky3ypgsXcQzuqiwLN0Ao,4858
-PyQt5/bindings/QtHelp/qhelpfilterdata.sip,sha256=BUJqU_23HrZVPWT4noN3CQPJB9CFldQGLzeZA4rxgnU,1498
-PyQt5/bindings/QtHelp/qhelpfilterengine.sip,sha256=1-FQOFVJQmxCoKpr5mEZRrF8wvBz093VZkT0Tup86_E,1811
-PyQt5/bindings/QtHelp/qhelpindexwidget.sip,sha256=4WLehZMXqbV3aZLhh95wLI63AG7b00-oWRW2zJK_IUc,1907
-PyQt5/bindings/QtHelp/qhelpsearchengine.sip,sha256=eZJLB_gxWxnKnVAIlk9rmcXOnGtHd8QBnxs9JVrKapU,2814
-PyQt5/bindings/QtHelp/qhelpsearchquerywidget.sip,sha256=jgnhqL_0kRxNmFDs_pNpCiZ5CPP4HqqZVLdxC4k9Ul4,1914
-PyQt5/bindings/QtHelp/qhelpsearchresultwidget.sip,sha256=aHVXMHDl_J48nwwtnbYbcgMvu71-tUYl2sALeFWjF5w,1257
-PyQt5/bindings/QtLocation/QtLocation.toml,sha256=uxZQpEqMWWD14WJNYrT30KuL0XrnR1x6IkSbfdLZLSA,174
-PyQt5/bindings/QtLocation/QtLocationmod.sip,sha256=9jcHLAJ9MGpv6jKudMHleegI9fJoeyacCpElvtHLLyI,3199
-PyQt5/bindings/QtLocation/qgeocodereply.sip,sha256=vttXSBlfxPiHsiUFZZg4ITWbctwgDlPvy5O-kP4G8Bw,2409
-PyQt5/bindings/QtLocation/qgeocodingmanager.sip,sha256=Rd4r6WWZiTo5_9ZcQZKIlp3KxekM0kwbQmGxkEJVokQ,1828
-PyQt5/bindings/QtLocation/qgeocodingmanagerengine.sip,sha256=V5UDEzTTOBvEneiHhzi5eXzka36yTD0YuFMVHZJepC8,1900
-PyQt5/bindings/QtLocation/qgeomaneuver.sip,sha256=19cDSGJjWG2Qo88j066T-dnXfM8QHuxEwmNXmtm71TQ,2469
-PyQt5/bindings/QtLocation/qgeoroute.sip,sha256=TDJ_XvQoa1tDGydIxKLca5H5F6pP0e5Pj6hRYGUoGPA,2655
-PyQt5/bindings/QtLocation/qgeoroutereply.sip,sha256=sdd4h-dV3k9i_rYcIod4pAEUQw-xl1SWyeggyC4b-J4,2140
-PyQt5/bindings/QtLocation/qgeorouterequest.sip,sha256=c7w0Z1AMRCsvpMOUJX1vPDCTrE80Qyg8NY1G8ys1HxQ,5481
-PyQt5/bindings/QtLocation/qgeoroutesegment.sip,sha256=Lqpef22qY5Eaj-3h-RNnR9N3O9MYfDzY8-Vfvlb1BTI,1849
-PyQt5/bindings/QtLocation/qgeoroutingmanager.sip,sha256=2tIvD0Da9ooC3L30FQioyN4IKtyUVUMbHSlyEdAQieE,2208
-PyQt5/bindings/QtLocation/qgeoroutingmanagerengine.sip,sha256=fwighv4H1gBFba5vYU69bkAKXQsHP0WDkEQafe4hH_4,2859
-PyQt5/bindings/QtLocation/qgeoserviceprovider.sip,sha256=WshXHeP4tjIdZ9h8rSwqag8uFtuoMQLDQbtwwb6DgN4,7498
-PyQt5/bindings/QtLocation/qlocation.sip,sha256=y_MxSuWePsIUNktYR8kJt75zPyQsMRv4yNjy-AtQchc,1417
-PyQt5/bindings/QtLocation/qplace.sip,sha256=IQiOYbweOZ2rHZnxhVLzXNW44XGzD27pxjX5uXYc0uY,3368
-PyQt5/bindings/QtLocation/qplaceattribute.sip,sha256=LNJczr1tvFv7jRd6lJ4IqyrRvsA36hw-WvpVvYz7tSM,1602
-PyQt5/bindings/QtLocation/qplacecategory.sip,sha256=thjR9MwMV-S-NNuAZ9vmoUzlro5aa8kUIrQRPMHqzd8,1676
-PyQt5/bindings/QtLocation/qplacecontactdetail.sip,sha256=GjoB5alADxCFyWHX6ut9vCf561GtCRRmz8xXfljkp5k,1654
-PyQt5/bindings/QtLocation/qplacecontent.sip,sha256=Zbk6R336W4voeMF_L4-oZGB7TP89ykH2Xk-8Ii0LnMA,1814
-PyQt5/bindings/QtLocation/qplacecontentreply.sip,sha256=7fH0Vp4q6Lm1EgD7lhkuAyA9uBCrR8eOoZlSa9k_ojk,1811
-PyQt5/bindings/QtLocation/qplacecontentrequest.sip,sha256=UhVFIGRdANmvQRe1wYCkDTWtyTJC7jhhSXy6T64TJw4,1707
-PyQt5/bindings/QtLocation/qplacedetailsreply.sip,sha256=pbaZVQNQ2NssRsniOIleT52yjzLhg4w7oOxQrXUxXrY,1358
-PyQt5/bindings/QtLocation/qplaceeditorial.sip,sha256=HKaHrnAKiNqxguNzi8hiB4NcLvEjenGGgbHNpQNJRzs,1436
-PyQt5/bindings/QtLocation/qplaceicon.sip,sha256=zxl3ZMsm9CoGQMuxX--rHDUubNB5BI2ZgcCtAWCWWYw,1564
-PyQt5/bindings/QtLocation/qplaceidreply.sip,sha256=rHlY84E8IH_gzOjuo1YgnHLVlUtiW70kguLyUqL7G0c,1557
-PyQt5/bindings/QtLocation/qplaceimage.sip,sha256=dfmDFpbt_uPAaygqlhRZR9T28VzWwcTk6oNZQE6dyhs,1413
-PyQt5/bindings/QtLocation/qplacemanager.sip,sha256=6b7UBbi32dpI4AVTx60CcjHfMJB7Lj5J6Gi7zgYLNFc,2979
-PyQt5/bindings/QtLocation/qplacemanagerengine.sip,sha256=yEnNPId4kaqCaNulN7RB2caHPJUAzdzFySi02babenk,3279
-PyQt5/bindings/QtLocation/qplacematchreply.sip,sha256=igWGFot9Wr_z69H1TXERm_9dw-4Z0dK1ypuBFoXphrw,1464
-PyQt5/bindings/QtLocation/qplacematchrequest.sip,sha256=4nmF8RgQufv1sMZLdF395MEKt83RPojD9bvwFg5Hw98,1647
-PyQt5/bindings/QtLocation/qplaceproposedsearchresult.sip,sha256=vrxNqju2WJABTnWMDFTzxbaMss7cb-WIlqrkEb37sHQ,1413
-PyQt5/bindings/QtLocation/qplaceratings.sip,sha256=Z2QhTsTlf9H2JdbLDQ2NWWt8zEu1tmngnh2Nqm2_BS4,1509
-PyQt5/bindings/QtLocation/qplacereply.sip,sha256=TtZV70xeP0gdVbqg_BSbdz8LcLNJPFIe80gowC0LgRo,2208
-PyQt5/bindings/QtLocation/qplaceresult.sip,sha256=Noh2Yb5v9NwVg2JzuxC_BXmhmZxpEV9RT0uln3Sy9-Q,1424
-PyQt5/bindings/QtLocation/qplacereview.sip,sha256=7j6lHSbnh082rtZyJgRJ1PanTlf4h9ak6vwFVzgw364,1636
-PyQt5/bindings/QtLocation/qplacesearchreply.sip,sha256=4mzM0DJQoxsjVfcB5rErO182A2PkMORrw9-U0sDzN7I,1735
-PyQt5/bindings/QtLocation/qplacesearchrequest.sip,sha256=OX7VWTfDXaExuEz-H19eu-59fXY1MoxJbxF0sOt-TAw,2337
-PyQt5/bindings/QtLocation/qplacesearchresult.sip,sha256=MnMW9vY03g2LljsaNLHJj9wAiNTPf45tl0G_HeYPU2Y,1682
-PyQt5/bindings/QtLocation/qplacesearchsuggestionreply.sip,sha256=nMZh1zEPgrbHeYMUWReL-HBzQhbKbX8uDht-S8d9kRQ,1431
-PyQt5/bindings/QtLocation/qplacesupplier.sip,sha256=QqSqts0g0hYWev7z0vlJbgce7l0kwHdr2jbLRl_dOKI,1621
-PyQt5/bindings/QtLocation/qplaceuser.sip,sha256=uRHDhGUiHHu7HMhF_QCADVjjVqUIDJ9_GT_L9B6ooPY,1418
-PyQt5/bindings/QtMultimedia/QtMultimedia.toml,sha256=Wd0t11bk084GnCovJ5FVPpx4rM3rf4qhxZvOHI__G5w,176
-PyQt5/bindings/QtMultimedia/QtMultimediamod.sip,sha256=LxOdaWFUn2m-GxtPTz9RmqNw-jAtPqXTLwgmMslfZ_Q,3200
-PyQt5/bindings/QtMultimedia/qabstractvideobuffer.sip,sha256=a3c9pzatESJonBR5FMrFzbZ1dUkEvCX3LuUhCu5_AGk,2552
-PyQt5/bindings/QtMultimedia/qabstractvideofilter.sip,sha256=O5G8aaT6lXcJTn2fqa3PYrB4vse2_od3jtWNlKKvZ2E,1980
-PyQt5/bindings/QtMultimedia/qabstractvideosurface.sip,sha256=UOmSiUR1yvnBusv0i8FKHTrl4nhVhmCr_NN2aorLaWM,4467
-PyQt5/bindings/QtMultimedia/qaudio.sip,sha256=b9Tpyv1i6fg_bhNgEC89Q_NNZtK-5es4z5OOfubVTCM,2067
-PyQt5/bindings/QtMultimedia/qaudiobuffer.sip,sha256=XcBGwhEuiCXecKFzD0-E2dGga87h_DXULLehXd6vIQ4,1599
-PyQt5/bindings/QtMultimedia/qaudiodecoder.sip,sha256=E-oO8KUIskv0ZSGN6NoNHNMHESwd94TTOpGg0Q0gQXk,2656
-PyQt5/bindings/QtMultimedia/qaudiodeviceinfo.sip,sha256=VWG5IM5li72IKZduhASM5wqKuSjuhZlzXCEs6Xqf2fg,2074
-PyQt5/bindings/QtMultimedia/qaudioformat.sip,sha256=OcfHNWNN9eA73tObiNrcNpUwfuguTbpJJs-ap29_O-I,2337
-PyQt5/bindings/QtMultimedia/qaudioinput.sip,sha256=TovjPFiqAgB-xLJWQsa2ni_EF-zwdUNa8Fr1Yqgh6VU,1996
-PyQt5/bindings/QtMultimedia/qaudiooutput.sip,sha256=uHiB7jWRDqPNkEQbmNgcw4hAfZyToPGmjPDHCpTVr6Y,2073
-PyQt5/bindings/QtMultimedia/qaudioprobe.sip,sha256=OOL1hBQZoOX_m-9N0TzoP_9WSPy3vHQW-c4AQkr3P98,1375
-PyQt5/bindings/QtMultimedia/qaudiorecorder.sip,sha256=Xce0x9j91MvXxok0R1bhiOA_cMyg04EJOsSbMYzRCrU,1633
-PyQt5/bindings/QtMultimedia/qcamera.sip,sha256=TTqNV3MRS7u_3NiX8M3Wa9Y89e7gOQApK9Ed9z_A13g,5860
-PyQt5/bindings/QtMultimedia/qcameraexposure.sip,sha256=43ksQnpAvKO_nWe-2m9uzXijMD8_-fNSDXj90nC9h7s,4523
-PyQt5/bindings/QtMultimedia/qcamerafocus.sip,sha256=MrRJpzAXBBHtbip8WZ5sOz3ocwi1B1etZMWourqNhfQ,3314
-PyQt5/bindings/QtMultimedia/qcameraimagecapture.sip,sha256=YN-LZghbaM3BTj7sKF66j9iAShgcbaLYooxzRIjzwtg,3644
-PyQt5/bindings/QtMultimedia/qcameraimageprocessing.sip,sha256=pqXFYBDuQOueem7FUmLvag_QJ_ILQNqPcLwcwVb5tRw,3154
-PyQt5/bindings/QtMultimedia/qcamerainfo.sip,sha256=0AGg_1PQ_ewVmpvHTdUa-QxC1tA-CGmVMAJ0rLCk67U,1694
-PyQt5/bindings/QtMultimedia/qcameraviewfindersettings.sip,sha256=kJGajWKGCijvinGSBExnMSUBdw32Kjxh_ckU76Bemb8,2139
-PyQt5/bindings/QtMultimedia/qmediabindableinterface.sip,sha256=yTPf-64AkvKurQs7GB-npGoIm7l4r74ZoYWkFWl_tJc,1267
-PyQt5/bindings/QtMultimedia/qmediacontent.sip,sha256=cf3UYKS4Cppoat62C7EK8bJYOGlnbVm_dP0bLY5vcHM,1870
-PyQt5/bindings/QtMultimedia/qmediacontrol.sip,sha256=YggUs3KTSL6wknzmtANug_JQv7_8LW2xumF6-TNBak4,1294
-PyQt5/bindings/QtMultimedia/qmediaencodersettings.sip,sha256=liCjN2Ovrg8m9_UrXOTCsAz4PSnTNH1jQPrPa-7gh-o,4158
-PyQt5/bindings/QtMultimedia/qmediametadata.sip,sha256=r3qhaeXcd4xLqjg2itmNDcvVd2MWTuDuAwZ5K3nhxkw,3993
-PyQt5/bindings/QtMultimedia/qmediaobject.sip,sha256=fCKEGdGVwavV9rBO677hI2C62wfkeOwIpOQyr1BWjXM,2091
-PyQt5/bindings/QtMultimedia/qmediaplayer.sip,sha256=IFkGjfw78NJEAyC7pxKVLdzvqGLjatxAt2BS8C0be4Y,5005
-PyQt5/bindings/QtMultimedia/qmediaplaylist.sip,sha256=4q-RTIw98F8JwN4v4Gx8AS-hFFCEsof1z_vNX9Req6A,3559
-PyQt5/bindings/QtMultimedia/qmediarecorder.sip,sha256=uXZ9LvsVeRGsOmXPb-_Wf7Ygn55Lh7Sd2r9z2xxaJ1A,4562
-PyQt5/bindings/QtMultimedia/qmediaresource.sip,sha256=ZjdTyc6Hds43U18IE-r-IlHjl9IiuPy2KzpqK-wCHBw,2337
-PyQt5/bindings/QtMultimedia/qmediaservice.sip,sha256=jNkPuFrf_MiSlfLLex6M-RpexXg0HzCh4frFJvYOFng,1305
-PyQt5/bindings/QtMultimedia/qmediatimerange.sip,sha256=ywI6tjcH31n2KzS1HFF0e_lu4m1pGOeGsHp_2f8gKJs,2967
-PyQt5/bindings/QtMultimedia/qmultimedia.sip,sha256=FOcI56-lxtqXbgIphnGGSBA0UbdRoNj0MPqI-L9uHos,1661
-PyQt5/bindings/QtMultimedia/qpymultimedia_qlist.sip,sha256=6B0eygYN8lGCHE3lvJlAhOGhJ410GYIIhxviQcliv9I,9462
-PyQt5/bindings/QtMultimedia/qradiodata.sip,sha256=o01Fd4Lh50zl9Z1NIjCS01I2iOnC0hc7uJXJ6Rv1oR0,3284
-PyQt5/bindings/QtMultimedia/qradiotuner.sip,sha256=0TzE6AozuUp37N1tA2AoIqa1us1UIomHWk6MaEHIC3I,3392
-PyQt5/bindings/QtMultimedia/qsound.sip,sha256=uFdGiUQu6V_QD0RA85PSct0IH0uPbEvtRv_HBe79o4Q,1452
-PyQt5/bindings/QtMultimedia/qsoundeffect.sip,sha256=fXfjZmXsejSc9OFDftXuWCnpW7jaTr4psimRJbfbm2U,2268
-PyQt5/bindings/QtMultimedia/qvideoframe.sip,sha256=WY1GtEXdqPXDSU3iwOyTn3WFtpl84SbrRjoFgdffEDk,4436
-PyQt5/bindings/QtMultimedia/qvideoprobe.sip,sha256=od4D3K-8c5E6kE4fdV0NJTh7pyUqdTKW9zvzHbufQ5E,1372
-PyQt5/bindings/QtMultimedia/qvideosurfaceformat.sip,sha256=G7A2JX7c5M438TfUXuuEEcqX-i74ZMr7i1-itSifMPQ,2933
-PyQt5/bindings/QtMultimediaWidgets/QtMultimediaWidgets.toml,sha256=OgEPCCWcYjjiHJ_Qzjkgkm091M0s2rQUYyWJDQSS36I,183
-PyQt5/bindings/QtMultimediaWidgets/QtMultimediaWidgetsmod.sip,sha256=VYMRBCZmIVo1OatfGEZ0UeM3z5kXN_wCCC2DlGb-M6s,2160
-PyQt5/bindings/QtMultimediaWidgets/qcameraviewfinder.sip,sha256=HnFbPGYJixyuntfEgpNwwvERrwrKBEntozr_hrOdcOU,1434
-PyQt5/bindings/QtMultimediaWidgets/qgraphicsvideoitem.sip,sha256=Tk0eFD0yBbXMEiLKjx7D470xbFtq9YkglY01zLboWyI,2215
-PyQt5/bindings/QtMultimediaWidgets/qvideowidget.sip,sha256=S9BUSfjrxlClrYC1Dk9dWx5spKjev4nsNohpvR325ng,3097
-PyQt5/bindings/QtNetwork/QtNetwork.toml,sha256=GFjw2Q2FJ39DNbHLxFRZ3bie4Sozm82xNHpI9M57Jeo,173
-PyQt5/bindings/QtNetwork/QtNetworkmod.sip,sha256=rWe2QXW-VfFzjPxh0Qvx8eWfayIBhYKAUUD4UJ4I9N4,3184
-PyQt5/bindings/QtNetwork/qabstractnetworkcache.sip,sha256=J8Drnx0RqCzyUovWsEcSgWf42HwIgorE3TbVZWLogsY,3069
-PyQt5/bindings/QtNetwork/qabstractsocket.sip,sha256=yMen6wEkDHeCSdi4iiGF12iv5gEl39-xOcg0LxkxOTc,10720
-PyQt5/bindings/QtNetwork/qauthenticator.sip,sha256=cTRK3NEwjPJ3kzcyjrLqwg-ijcAYTmj2UqGqZ6ZbM-E,1628
-PyQt5/bindings/QtNetwork/qdnslookup.sip,sha256=23x8LKu6i2S7Sh7bcJ0A65E_59c2QRmKIp6gTLR-sag,4864
-PyQt5/bindings/QtNetwork/qhostaddress.sip,sha256=LXEjbuEw4qlUaqN_7AJUPNSHSQeMHaeBA6vfHwFcHao,6167
-PyQt5/bindings/QtNetwork/qhostinfo.sip,sha256=wjM2wVuHx4FHFcQzAUoigEGfrZZ0Tuuzy7T-XmfxoVI,3099
-PyQt5/bindings/QtNetwork/qhstspolicy.sip,sha256=VG3wBHeZ26pzVEdT1ucEbSenNvoJaM9MlHiJcRNalno,2174
-PyQt5/bindings/QtNetwork/qhttp2configuration.sip,sha256=dlmcXtcf-aisGoaaMcdg8NVhiAASEtnD7-Op69Xo6BM,1987
-PyQt5/bindings/QtNetwork/qhttpmultipart.sip,sha256=OCA6cQFJNaTui47DinMNyFwjDK9iDhvmYrpdrvlfbIM,2175
-PyQt5/bindings/QtNetwork/qlocalserver.sip,sha256=s8SNKi17s1SOYwwLHjYebLgwAgC4xUVp54Ao692kog0,2436
-PyQt5/bindings/QtNetwork/qlocalsocket.sip,sha256=FYb2F2-nNUWWotxgFEcPqoivaPQ9e1uOY5S8vnZ-16U,4553
-PyQt5/bindings/QtNetwork/qnetworkaccessmanager.sip,sha256=yM6p2MOGyyqMthdVZs5_Pg6W85hjungKzpqLYS10W2I,5850
-PyQt5/bindings/QtNetwork/qnetworkconfigmanager.sip,sha256=hCvJIbW6gsxt2XPz1MerLR51rhbdWGRyuDy3a3NyszI,2584
-PyQt5/bindings/QtNetwork/qnetworkconfiguration.sip,sha256=vk1OCm9vTEN_gCd3OeCmGUP1oXUZpc-59YJuMpSxo_M,2906
-PyQt5/bindings/QtNetwork/qnetworkcookie.sip,sha256=FrXBo_FWS0bAVGWBUmurxmM3pHfwEGAEGk--oGBSaZ8,2305
-PyQt5/bindings/QtNetwork/qnetworkcookiejar.sip,sha256=Z5PxoYvMcc7s4EkIJ9zJHS4l05cyK5qi4RsMEZJJKUk,1761
-PyQt5/bindings/QtNetwork/qnetworkdatagram.sip,sha256=k6zD8swGRvKVBJ8pkMzSwkh4buAlwLMIrOGHvJPdf9c,2020
-PyQt5/bindings/QtNetwork/qnetworkdiskcache.sip,sha256=gmBX5NIjTUYqNlaTj0QH-bVm4EcRbfwpIlC5LB8oLNs,1931
-PyQt5/bindings/QtNetwork/qnetworkinterface.sip,sha256=79FijlhIVsd5UWti7v3WR_WdUUkToAj6yiW672lbJ9M,4334
-PyQt5/bindings/QtNetwork/qnetworkproxy.sip,sha256=QfgygtQWbr67z2QN0CgPiHfuzEfNvU3mhjZ5F9b7wy8,6066
-PyQt5/bindings/QtNetwork/qnetworkreply.sip,sha256=Bn7uwYg34-MkvRxbGNbaQQOHDA-FklxhobxsnVsZHT0,5230
-PyQt5/bindings/QtNetwork/qnetworkrequest.sip,sha256=2S4O8yw46FfmiyKmOAjKFP7egM3T-PNm1sBPQVmWlEY,5114
-PyQt5/bindings/QtNetwork/qnetworksession.sip,sha256=suxTGsw4qDSVNoDOKMe2RRipbQYVYju8noEAOnkmhis,3012
-PyQt5/bindings/QtNetwork/qocspresponse.sip,sha256=DI3EAOzAVMXapiYXkZa88PIcPeIxvc2cdz8pAbMjhOU,2249
-PyQt5/bindings/QtNetwork/qpassworddigestor.sip,sha256=K4Qlo2NCd-PbUXjf94lqdlw-1asQJnq4esq8NVdGNJI,1439
-PyQt5/bindings/QtNetwork/qpynetwork_qhash.sip,sha256=oNyXOFPw9a_QCxAdAsvLJF16S5uDDvBCiKCpxp8HjLE,3590
-PyQt5/bindings/QtNetwork/qpynetwork_qmap.sip,sha256=XBnduFpweGFLjFAZO-72LPwhZAieEbf8_5bT4W-xkaY,4045
-PyQt5/bindings/QtNetwork/qssl.sip,sha256=ZcPolfV_1915CNtt_TnVJfaPjF8x3gphTFGXqv9Z8N8,2771
-PyQt5/bindings/QtNetwork/qsslcertificate.sip,sha256=A8TqEMlIQCU9tREB6gx9Zgwp5aWEueDthmIfAByAk_4,3821
-PyQt5/bindings/QtNetwork/qsslcertificateextension.sip,sha256=JPyyDdHFaFyvb5lOyxtB8HFdLnWQV6QrbITQgzE9GBo,1469
-PyQt5/bindings/QtNetwork/qsslcipher.sip,sha256=qpXtquOAH1Cf8kAp-Yfs0BVwAc7wyptZZr6S3GGQvE0,1769
-PyQt5/bindings/QtNetwork/qsslconfiguration.sip,sha256=K21voZsncsJIQ6DwLVozDsO-TGDZkFQTpRSnqaLR4b0,5062
-PyQt5/bindings/QtNetwork/qssldiffiehellmanparameters.sip,sha256=euP8119mYKvSrZkVCN--HYuuqfx_6gHvDmEMnKXa5dE,2345
-PyQt5/bindings/QtNetwork/qsslellipticcurve.sip,sha256=9sPEeh7XhbZyfW4RjgVsfFWFEi1fblyApRikCNr6fCs,1712
-PyQt5/bindings/QtNetwork/qsslerror.sip,sha256=0dRrVu7ld2VI2Rljw1o__39ZRt5ID4Mtw6VriuvBaRU,3206
-PyQt5/bindings/QtNetwork/qsslkey.sip,sha256=HFlKWdW2RTb2a6EDsksbsxTchWPQ5nOSeSI-KgKfbjw,2072
-PyQt5/bindings/QtNetwork/qsslpresharedkeyauthenticator.sip,sha256=5rGoJhnZ49tk7EW2EAy9OTwtbLxqeqq1gMFUo1M31AI,2006
-PyQt5/bindings/QtNetwork/qsslsocket.sip,sha256=tUtBlF6Kpx30MLRer4HzpyciHNG9JkXcQnaLLeEwxb4,8153
-PyQt5/bindings/QtNetwork/qtcpserver.sip,sha256=MbAtj04vNdIKVw0m2h5zM6ndN6fEHgi7XZyE65F8Jko,2197
-PyQt5/bindings/QtNetwork/qtcpsocket.sip,sha256=D7dca32Eqbz6rFrUiGtp0C_f08Qat7UW-uBJ-4moQu0,1166
-PyQt5/bindings/QtNetwork/qudpsocket.sip,sha256=cEbDaZ_l6sN0MbIUIQbri6DiAwU9LCvBKlKSbq7KtKY,3105
-PyQt5/bindings/QtNetworkAuth/QtNetworkAuth.toml,sha256=47n0uXsROy7DkkVfAumBfsy5d6D8zdBdoOh2arxuE1Y,177
-PyQt5/bindings/QtNetworkAuth/QtNetworkAuthmod.sip,sha256=BjTmPJ1GnJ85oGB06brHUvc6PvTg2lw3VjTADy7UsPk,2283
-PyQt5/bindings/QtNetworkAuth/qabstractoauth.sip,sha256=6n2CbXJbNVoIpTxS7FjyiSsrot6ptPveBgTf_EqvOME,8434
-PyQt5/bindings/QtNetworkAuth/qabstractoauth2.sip,sha256=Iojw3PvVClMHkyY6bcPZi4v5ZSm0w6EyEn3zZItxngk,3537
-PyQt5/bindings/QtNetworkAuth/qabstractoauthreplyhandler.sip,sha256=1llNbmAjwRW-ouEwqv85GnnmncfYsEJPC5goK8S7j3U,1626
-PyQt5/bindings/QtNetworkAuth/qoauth1.sip,sha256=06RQ7PCtBYOIaH1vt_w9jNjhQBz52P2CpQXDhI_Ck24,4150
-PyQt5/bindings/QtNetworkAuth/qoauth1signature.sip,sha256=tKpZd69xOFSpzEaqjKS62LLO6046sb078d3jWYbh3R4,2917
-PyQt5/bindings/QtNetworkAuth/qoauth2authorizationcodeflow.sip,sha256=VyTx8vs0keGYOsOl5iVOQj2Ke763AnV1z-2Laz3Bsd4,2441
-PyQt5/bindings/QtNetworkAuth/qoauthhttpserverreplyhandler.sip,sha256=TNm6xE8tEv6PnAbQaq-iOUNVVdtijTxtUTZrSQOb-0M,1877
-PyQt5/bindings/QtNetworkAuth/qoauthoobreplyhandler.sip,sha256=HjrLF6MF8XIXQexPSAAsUvoI5KS0T-EOqwKaBMI7l5c,1341
-PyQt5/bindings/QtNfc/QtNfc.toml,sha256=rVX7byPZQa7GqPm99WJPuFJujm5fFu2wO3aIYfP6b4o,169
-PyQt5/bindings/QtNfc/QtNfcmod.sip,sha256=gzMQhmMPSEUOk_iykQIwaxyiUHC38pXlTtlvdNFsnfw,2297
-PyQt5/bindings/QtNfc/qndeffilter.sip,sha256=IpNTyMK0i36ROlHSPqpnEsiEXwPLhmkq_Jav9pePzUU,1766
-PyQt5/bindings/QtNfc/qndefmessage.sip,sha256=C889cfafr8NHOD9nDpajeIshx5whjhRbss2Nnkm21nU,2252
-PyQt5/bindings/QtNfc/qndefnfcsmartposterrecord.sip,sha256=aV8eZccezzd1HZqB6YnQlOtPrAgOhfRU9kmswhtOr2U,3441
-PyQt5/bindings/QtNfc/qndefnfctextrecord.sip,sha256=TffhQ1In-czGanB1RIulkZzjbcFFukR-t6dDZII1VHE,1520
-PyQt5/bindings/QtNfc/qndefnfcurirecord.sip,sha256=PT92dCVZ56QvGiS6WvL6bIp3wWPVz5Q2nA8I0TgmVe0,1251
-PyQt5/bindings/QtNfc/qndefrecord.sip,sha256=1_iVTtGC1Qf5_564EjS0ESwdzv8oIyhimKcC4T-NinM,2605
-PyQt5/bindings/QtNfc/qnearfieldmanager.sip,sha256=8t-MTUWPDPIdih4gxFLPBYOtP9oBRZ33RJVw_8zt4BQ,5384
-PyQt5/bindings/QtNfc/qnearfieldsharemanager.sip,sha256=uA7Uf4-s_-ctOMuoXijz5OiPMM5MaOZQbq54xKACFQk,2344
-PyQt5/bindings/QtNfc/qnearfieldsharetarget.sip,sha256=BizEz8XAeFJqpu7f0-fYdNtCTh0VyMW_UxyoFjxmmik,1550
-PyQt5/bindings/QtNfc/qnearfieldtarget.sip,sha256=HfclA2oEhnUYJbP5TpyagynvhU_NVO_9xrCilXS3zLo,4233
-PyQt5/bindings/QtNfc/qqmlndefrecord.sip,sha256=u4qfXN-8YQ-4VlfJlV1pWkvzG45aEWvLTtL7S4vMNmc,1834
-PyQt5/bindings/QtOpenGL/QtOpenGL.toml,sha256=57aTyYjlTBUrCIMONEy2CJoRiQF9QIew5N47j92Wyck,172
-PyQt5/bindings/QtOpenGL/QtOpenGLmod.sip,sha256=6a7I8DwPprOzwiIY4oJBmshKAZJ_wMM-lgM1p4Y3Kmw,2039
-PyQt5/bindings/QtOpenGL/qgl.sip,sha256=rf6NWufoayKzXiq8pKLjjJUgtitPEe7gU62cwFq8vCE,11047
-PyQt5/bindings/QtPositioning/QtPositioning.toml,sha256=YaGMNBRnr-mm_YdnX37_JHr7uYvu4OgE9tE2R882yD4,177
-PyQt5/bindings/QtPositioning/QtPositioningmod.sip,sha256=vV6jazNJMzr6OmTqTuDZdSaobJm4upEM8m-7XPpwERs,2387
-PyQt5/bindings/QtPositioning/qgeoaddress.sip,sha256=uwp2vkRHZexLidjB0LnMX_6T4alKzSoGxTQqiTfim5U,2045
-PyQt5/bindings/QtPositioning/qgeoareamonitorinfo.sip,sha256=lEDPq6Qrl9Mic8ZjlwfsJYm9Il3088fJ06_-lCszULE,2088
-PyQt5/bindings/QtPositioning/qgeoareamonitorsource.sip,sha256=aflTgkQ1HT9TGc4u6VH-A0Xhmj0dgU7i_hc-s_TFFHc,2971
-PyQt5/bindings/QtPositioning/qgeocircle.sip,sha256=n2DA1b07onxjVsVgk4HXa1Zs17Fubu0hVgy3EigeON4,1836
-PyQt5/bindings/QtPositioning/qgeocoordinate.sip,sha256=lWEUD27iKwzi0cjFHB0TC5Ts-kd7SAnoHDur-Ur6sE4,2765
-PyQt5/bindings/QtPositioning/qgeolocation.sip,sha256=jVOuBKGRHvsUvcY4o5XMtmjONsBTlbDpKmmqeJX0_6Q,1748
-PyQt5/bindings/QtPositioning/qgeopath.sip,sha256=qmegpj8FPhWXtwLa0bCWEtaTDtqVXcyTfjqhrX0UBlM,2322
-PyQt5/bindings/QtPositioning/qgeopolygon.sip,sha256=VvCMb3pd_lR2wETJ1eECm4h1pgFHR6gLwvieHOV7FDI,2768
-PyQt5/bindings/QtPositioning/qgeopositioninfo.sip,sha256=J_zEj069wUCTsMchaxRco_57ljPdAI2iV0Fnld7PGP8,2318
-PyQt5/bindings/QtPositioning/qgeopositioninfosource.sip,sha256=iLFO0_WSM2lO43ytRq6mRRkf04EpC81HTvNvEyzMjbo,4504
-PyQt5/bindings/QtPositioning/qgeorectangle.sip,sha256=7fg5wdJKchUrwgiHMnXrsP2jAx5LCZw8hxysh68SsR0,2846
-PyQt5/bindings/QtPositioning/qgeosatelliteinfo.sip,sha256=VfRDUOfIUvt93Zt1Z72EHY97V446bQ2Z9p7XEm0CTHA,2321
-PyQt5/bindings/QtPositioning/qgeosatelliteinfosource.sip,sha256=LxoIFPBmX6_h4S_C-sZVGPxw5me7-DnkOAKeORfH-xQ,2666
-PyQt5/bindings/QtPositioning/qgeoshape.sip,sha256=HMynS2b0nX-aFeWmfZj0FLpCX54IePqYKFXDgkbUJ1Q,2684
-PyQt5/bindings/QtPositioning/qnmeapositioninfosource.sip,sha256=0PFR7fDwI6HgMNs7QuPJrwNqrQ8e66evMf6qFehYkXU,2315
-PyQt5/bindings/QtPrintSupport/QtPrintSupport.toml,sha256=AIDj7IAVbHBW1DWZvCHWJGrecqxfz08NA2zgrX2J6N4,178
-PyQt5/bindings/QtPrintSupport/QtPrintSupportmod.sip,sha256=ai0aahmXqtcMAr61NoKQ58LA0JM_4xtXj2nqNe1xkV4,2313
-PyQt5/bindings/QtPrintSupport/qabstractprintdialog.sip,sha256=65MvvQwcdoQ9LSnZFw5Y3HNPa4Km3xJ5bA0PjlW18rQ,5150
-PyQt5/bindings/QtPrintSupport/qpagesetupdialog.sip,sha256=pj5ZZMZCJ9jaqym2iQoMDMeiBdQiy4Pz9T2PfMNL6k8,3359
-PyQt5/bindings/QtPrintSupport/qprintdialog.sip,sha256=5y7J-uiUwuA82-h9WNWmWFZY8qaj0coHBWhRKDE5Vw4,3748
-PyQt5/bindings/QtPrintSupport/qprintengine.sip,sha256=V8bTsEzJeQ51lCvB__0ElOxfWK6O-GiSEF5PvR1ATns,2501
-PyQt5/bindings/QtPrintSupport/qprinter.sip,sha256=S6uJrnjz3rIP8HAmYOICS4rG1NOIZTZLlJc2HHoetAc,5949
-PyQt5/bindings/QtPrintSupport/qprinterinfo.sip,sha256=4iMv2z3xgpX_I2KipXWNql6SN-F6BwFcWko6_wAHQ6Q,2754
-PyQt5/bindings/QtPrintSupport/qprintpreviewdialog.sip,sha256=-GV-nFNbvhmiFZ34sHmcB2MB7QgyN-L1XocOk2yILVY,2093
-PyQt5/bindings/QtPrintSupport/qprintpreviewwidget.sip,sha256=2Eiclj2MItzzeD2Nz2kfMyv0UBrXj0Q4Y3YMtuKuKVw,2688
-PyQt5/bindings/QtPrintSupport/qpyprintsupport_qlist.sip,sha256=PatagJ50dTBqByd-T2ESIEkUjje6OxECjJkp5YI1Y1Y,7520
-PyQt5/bindings/QtQml/QtQml.toml,sha256=IWVmE5qrzZ3B9TYrul3_L9n2aODmGuwPM0rAkoctyjY,169
-PyQt5/bindings/QtQml/QtQmlmod.sip,sha256=MD8afzzaXUgOXyTWzVZLejNNXVJoq1J5a9v_2t2rl4o,2714
-PyQt5/bindings/QtQml/qjsengine.sip,sha256=RjHltMZKqgFMd0WIcTocKkmcxPhPBPo2pffD0jN99UU,4167
-PyQt5/bindings/QtQml/qjsvalue.sip,sha256=8S5RKOCZ2OWvJRdYfZNuGryMbzHvhW-FTvV7F6rUTnA,3271
-PyQt5/bindings/QtQml/qjsvalueiterator.sip,sha256=XLZE7WETBCDqeuI2nlw1KqNKjKYHk-zg0sLfrKfapxc,1306
-PyQt5/bindings/QtQml/qmlattachedpropertiesobject.sip,sha256=3MlJ_8FnFVEQ_n8PC5jxypiX3z3qz6bJRUEZXufPWH8,1561
-PyQt5/bindings/QtQml/qmlregistertype.sip,sha256=8sCaZD--ur3uIvDA60Twlyv1MRow_kJ8OwhKC6AtSkg,3663
-PyQt5/bindings/QtQml/qpyqmllistproperty.sip,sha256=xfpAQ6n7-08bh1R6-LrgTqZCRYn2KxcOSgKUzUd3_pI,1453
-PyQt5/bindings/QtQml/qqml.sip,sha256=aXJQ8EyCaeT5PY9in5-jdiX85Zyj_SmJmwa4100U36g,1154
-PyQt5/bindings/QtQml/qqmlabstracturlinterceptor.sip,sha256=Un3kjPH6E27NZCX1T9FADkGJiVP7fIkF6gSS9BPecGM,1423
-PyQt5/bindings/QtQml/qqmlapplicationengine.sip,sha256=Irp0LxvPtpneE7gp_Z5dxNhKBz0VVN1ZzZMOA2FowBY,1921
-PyQt5/bindings/QtQml/qqmlcomponent.sip,sha256=EF2CV6Qzo2g5frdbuwTNHfhBj-V21loSMOUU1ghzHKo,3092
-PyQt5/bindings/QtQml/qqmlcontext.sip,sha256=yuBJ-stpAb4cj6OWRrKw7AaUVrRa5wyyD6byOajuVyQ,2030
-PyQt5/bindings/QtQml/qqmlengine.sip,sha256=tz3Tsf8xf3c-jhfysQYaK53JlWlc9eu5JI7yGqqA1b0,6009
-PyQt5/bindings/QtQml/qqmlerror.sip,sha256=DCbCAs_f0yXTloOUTn_trr_V8Uop8iWyrHNvOjP2Kt0,1654
-PyQt5/bindings/QtQml/qqmlexpression.sip,sha256=cWmcYddRigy3DSUA7JSVxGAyQDejexmqIV4TvhZ-goc,1977
-PyQt5/bindings/QtQml/qqmlextensionplugin.sip,sha256=Xrd_y7glIbcTdZfXeISsP_Et71zEkWRgYeZg0xiV6BU,1377
-PyQt5/bindings/QtQml/qqmlfileselector.sip,sha256=aWQYrskUl8Xy9AWoYagiDEnIL5-LraAAt6j67co1F6o,1538
-PyQt5/bindings/QtQml/qqmlincubator.sip,sha256=PfN9zRX9dgVurQ9PafS3aL0llMx_CP_oa-EKgEwwRgk,2347
-PyQt5/bindings/QtQml/qqmllist.sip,sha256=Le4wS7L0MAL39NOVW4WP6mc7Ft9ayQiidAjHlx9TZFA,1634
-PyQt5/bindings/QtQml/qqmlnetworkaccessmanagerfactory.sip,sha256=SRfHFfwv2Q0_Vw8FI3nneGefMw_5v-wHZERIs7RCdZc,1231
-PyQt5/bindings/QtQml/qqmlparserstatus.sip,sha256=Pyvv-bV73MH3-EYDDmG6AT_CcwWq74OkafUK6F6ff_g,1269
-PyQt5/bindings/QtQml/qqmlproperty.sip,sha256=6WDDkyYYUOVKDwX0Ts5Ro-IzVsHkgm2smZlMw2LfC40,4127
-PyQt5/bindings/QtQml/qqmlpropertymap.sip,sha256=mlYZlpw04Hiy-OO4NwefZwsCNdqbSY44xyuXMSregjA,1708
-PyQt5/bindings/QtQml/qqmlpropertyvaluesource.sip,sha256=oQUMor4Ft3SdjrIVkU1jJYWCG75C5BUjSR8XN15QMHk,1287
-PyQt5/bindings/QtQml/qqmlscriptstring.sip,sha256=_Uc2JORRMgufCt4UfdhkohVdngT770sECnqSsoN_b5I,1546
-PyQt5/bindings/QtQuick/QtQuick.toml,sha256=zmGYMFrSqfNy-a0qGZQwYg94iM_wuzymY4rqtWfRTx8,171
-PyQt5/bindings/QtQuick/QtQuickmod.sip,sha256=nC7GBrT2d7Q1jPpni2kFQKKEamsVOHK1VDNPmnD7yzY,2811
-PyQt5/bindings/QtQuick/qquickframebufferobject.sip,sha256=T2nidmAYh2VjEF74rklX39s_lJOkOI2F-KbGwl5LlPQ,2583
-PyQt5/bindings/QtQuick/qquickimageprovider.sip,sha256=SSdj3tVJ3Q5JnhRfUVdzjWz1m_4GlRipacDeiyYuFn0,2982
-PyQt5/bindings/QtQuick/qquickitem.sip,sha256=tJTcBirBW2IwXKMLe4AwDHjTKrEJH05qZ6ywhN8mPEk,10071
-PyQt5/bindings/QtQuick/qquickitemgrabresult.sip,sha256=rS5lErAYJZa7pcF2Hd46N-Cml8FVeF_FwQwLGJAWHDs,1487
-PyQt5/bindings/QtQuick/qquickpainteditem.sip,sha256=exLgqJS1v1aQNSKcMxTi9tBKr0AGMRaX29gCWCMwZlQ,3480
-PyQt5/bindings/QtQuick/qquickrendercontrol.sip,sha256=dRnBNNjtEBemHv3DcLs9EUYUlydYQB7jB5MUgsvf9V4,1756
-PyQt5/bindings/QtQuick/qquicktextdocument.sip,sha256=VucLq87bpydtJtS_ELOM_SfESqksk2awMRFBp0FMHlg,1285
-PyQt5/bindings/QtQuick/qquickview.sip,sha256=lNGZrKzLKf5sDMLUnHwWOFqpMDKzqsbcFXSe48qezEc,2445
-PyQt5/bindings/QtQuick/qquickwindow.sip,sha256=eF9P6faHo8D_Q6JQm_sxIv6oIAT8N0m0IGXdL0b5OYY,9024
-PyQt5/bindings/QtQuick/qsgabstractrenderer.sip,sha256=DSqZBFfpw5ulzWXrSTbkuW3mrNAlgLOazyHZ9HEJzOo,2561
-PyQt5/bindings/QtQuick/qsgengine.sip,sha256=24NwAmGOXNWjczpfD2LXJX1MhIxaxptWzlCJWswUSR8,2198
-PyQt5/bindings/QtQuick/qsgflatcolormaterial.sip,sha256=C-w9yWmOYqFPq-3_zDVk761fMV17yDedACXsoWlXsHc,1370
-PyQt5/bindings/QtQuick/qsggeometry.sip,sha256=vquLa56jxNL0WhacOZurIpIICPxNDNEH74WRCrJ_TWA,12719
-PyQt5/bindings/QtQuick/qsgimagenode.sip,sha256=HJ8LBhmPxKRF0gqt0CBPDdiuy76AIy5l2t-ZLHw7Otg,2891
-PyQt5/bindings/QtQuick/qsgmaterial.sip,sha256=37UD9XW-kXLX5Ctqid-emK0MLWOGML0COxV0J4zDeWc,7649
-PyQt5/bindings/QtQuick/qsgmaterialrhishader.sip,sha256=w-xP0F_ZeVEbuWpC0208h6wp8FvVLab5E08S22InJP8,980
-PyQt5/bindings/QtQuick/qsgnode.sip,sha256=4_s30d_pnQM6ilxe83SC0f3cdBupYj1XHyivFP91GCI,9174
-PyQt5/bindings/QtQuick/qsgrectanglenode.sip,sha256=GbqBgwy8A7FIlVwPVMTgFq-xt6VtGJ3ZWzYEgPQgiF0,1407
-PyQt5/bindings/QtQuick/qsgrendererinterface.sip,sha256=lMmNzsE1tcoMCqPqT8MpUeyDrfKViwOuagD-OlOVDcU,3601
-PyQt5/bindings/QtQuick/qsgrendernode.sip,sha256=AI7uShDrxPYL78RIWDfCdR3h7QTxx_TMhqkQ7PY_5Zk,2801
-PyQt5/bindings/QtQuick/qsgsimplerectnode.sip,sha256=04DX-nCRljICLXgKIQ1RyGF0iydJVkl45IF-4KuXUM8,1391
-PyQt5/bindings/QtQuick/qsgsimpletexturenode.sip,sha256=ezffrKB0wGoJG8Bc_2zSmoEQ8a0lDpun4oQf4iJ-0oE,2600
-PyQt5/bindings/QtQuick/qsgtexture.sip,sha256=iieoJHY4I1dGdfTsmvPR-uJltlrCLWQ6V-QNeiIfypk,2844
-PyQt5/bindings/QtQuick/qsgtexturematerial.sip,sha256=0kERKZCpf1C0XyX2xE8uSdqeM7-aCTmKqyOEOoDo5Qo,2226
-PyQt5/bindings/QtQuick/qsgtextureprovider.sip,sha256=VoE-xyjcJ-TlYvWXJFRuvmT936LVJVsewMv0_OC-P44,1186
-PyQt5/bindings/QtQuick/qsgvertexcolormaterial.sip,sha256=DBYOAI1trH8km0rgSOqFCraASLiHnpw6-yt62rtBmfg,1317
-PyQt5/bindings/QtQuickWidgets/QtQuickWidgets.toml,sha256=ZcGq9LUn8AnnjkZEbWh6TZ0ZT3aYhstiKuWASMm9gPk,178
-PyQt5/bindings/QtQuickWidgets/QtQuickWidgetsmod.sip,sha256=iZTw1Mm9rtZHIPSvPoghSFNPLkchVbWl7VsWyn6BANs,2126
-PyQt5/bindings/QtQuickWidgets/qquickwidget.sip,sha256=WZSTkEU_p94wYR3FFbQPuP2PTU5ikQ5ZZ6MLb2XTatA,3740
-PyQt5/bindings/QtRemoteObjects/QtRemoteObjects.toml,sha256=4WssllahTNTur2XJnHrVZhtChz0jde_WTrRlxe12jbM,179
-PyQt5/bindings/QtRemoteObjects/QtRemoteObjectsmod.sip,sha256=ykdiidQUASwhIW95jUJzRFi4a740dc24xdWLz3Exkk0,2210
-PyQt5/bindings/QtRemoteObjects/qremoteobjectabstractitemmodelreplica.sip,sha256=FKQ_CsaRrsQI0oPtbyd-REaiWPxc1_7BJ97HL6O3Ocw,2383
-PyQt5/bindings/QtRemoteObjects/qremoteobjectdynamicreplica.sip,sha256=_q1bJGTt4p-ZLvV14Hy7q16mMG9R0b1dLuQIAPSo5CA,1260
-PyQt5/bindings/QtRemoteObjects/qremoteobjectnode.sip,sha256=SHomGRb7JXXG6UKwfVzI_h8BHuFVMVagQQESCx0grWw,6642
-PyQt5/bindings/QtRemoteObjects/qremoteobjectregistry.sip,sha256=PxviC-2sq1TZxBczis2bzF8TFfNRiahP_EnGkV80ZJA,1473
-PyQt5/bindings/QtRemoteObjects/qremoteobjectreplica.sip,sha256=40O0qKr-BCjguO5JcsjU6fcOLctFfDFlCUKutBi8Cn0,1723
-PyQt5/bindings/QtRemoteObjects/qtremoteobjectglobal.sip,sha256=WXdQxTAnUdYrn-pwlMF9TkPsQ808gRigwwwMNL9OkFQ,2156
-PyQt5/bindings/QtSensors/QtSensors.toml,sha256=40Ej0m6O_UULwzFCsYyaWvpElbjs0vNi3vuioGr1MO0,173
-PyQt5/bindings/QtSensors/QtSensorsmod.sip,sha256=bzh3Ybc2O7QTphk06Pvtlu2UMPPwrM3jnX96gk-tV2o,2535
-PyQt5/bindings/QtSensors/qaccelerometer.sip,sha256=b1hnnxwl5d_xwXq8yI78DaebZqQdE5tQPOykK84DdXg,2118
-PyQt5/bindings/QtSensors/qaltimeter.sip,sha256=rw9Ep7vax8cX2wzGKSOdHIoincc9D70asgf5rrv3td4,1689
-PyQt5/bindings/QtSensors/qambientlightsensor.sip,sha256=cpBR-MXtXYeB0IYXruFuIAbL6PuyGnyPL8apaaKrLO0,1916
-PyQt5/bindings/QtSensors/qambienttemperaturesensor.sip,sha256=_M7uPxzBqgVRHEh2f4h2gDUoKLZYhrcev6QISI1_y_c,1869
-PyQt5/bindings/QtSensors/qcompass.sip,sha256=Yrj3X0AjOVww9GdnKXbtu-wtbR0xIc9B-pVDchX2J_k,1752
-PyQt5/bindings/QtSensors/qdistancesensor.sip,sha256=FLIz7NejCAnpnirj2SRpbR1TVMWavC7BQInOZ0EyZzU,1730
-PyQt5/bindings/QtSensors/qgyroscope.sip,sha256=wjtgXqfQPeonP_CSMRdBovlEfrp-cJb0kHnExCDzY-o,1762
-PyQt5/bindings/QtSensors/qholstersensor.sip,sha256=Y4QsQGIw0Lf2gK9waKNxyks64kdhBVA2005rhLF9FE4,1718
-PyQt5/bindings/QtSensors/qhumiditysensor.sip,sha256=MohleE5jfUaN8bR8q35oD2rlg_IcIDpazsNj6LZhd-I,1767
-PyQt5/bindings/QtSensors/qirproximitysensor.sip,sha256=Dwi5-R_GPuZMSP53JLBpcybQErls04ZCteOOSO_X9sk,1778
-PyQt5/bindings/QtSensors/qlidsensor.sip,sha256=0k3-vHLYY5PXxfM9699ag4rte_7LUfD3XqPVWCyLL3w,1789
-PyQt5/bindings/QtSensors/qlightsensor.sip,sha256=TTNGifa-m19HcrRanp3iCa0jVsU2Nc1TYHmGLWa-gQw,1814
-PyQt5/bindings/QtSensors/qmagnetometer.sip,sha256=Ei27oCdnqgUT_rqemyT0WbTi4X9RJ3FGhXgwUL3sGnY,2048
-PyQt5/bindings/QtSensors/qorientationsensor.sip,sha256=0AHjjZgJY6bKjBrlPHpTXnJpPc8IUvqUt_Rj5e6PEbI,1996
-PyQt5/bindings/QtSensors/qpressuresensor.sip,sha256=e23wXGq-F8bgEoCPtzJdsSN_DWqu0Y4DdkUGhFwiBzs,1855
-PyQt5/bindings/QtSensors/qproximitysensor.sip,sha256=oIOCTeBcpPVBC78PTExOO42jReoMeK8gy_g576LFOUo,1732
-PyQt5/bindings/QtSensors/qrotationsensor.sip,sha256=3uydQ72u3Jv-Lj1E8xo0THsKqlNBBnToiZRWYV5W_Kg,1879
-PyQt5/bindings/QtSensors/qsensor.sip,sha256=nuaqsqhZaZU8nqH9dtxmuNXuNc349YRXcZavb2SuL84,8664
-PyQt5/bindings/QtSensors/qtapsensor.sip,sha256=Igc47-SXIckKyXQlN26ZJ7hH1LdDSj_lG-6nwhX3PrI,2216
-PyQt5/bindings/QtSensors/qtiltsensor.sip,sha256=mXyq5DlaZxUSANhhTdotW8DpN5SO9ROc4cHMRyz_1n4,1759
-PyQt5/bindings/QtSerialPort/QtSerialPort.toml,sha256=j6mil-xNlnnud22AUfNftj1hKgiiX83ySDZOzBxHEfs,176
-PyQt5/bindings/QtSerialPort/QtSerialPortmod.sip,sha256=3gHv2WoS0DA0DkJ5nVuRm4hFAVhxsO1qXFF3WAaz51A,2025
-PyQt5/bindings/QtSerialPort/qserialport.sip,sha256=PRL_de47djMmrD51mcbYrSuM7XMDdtfawSchn6pee_4,9761
-PyQt5/bindings/QtSerialPort/qserialportinfo.sip,sha256=GXbEM1oz9Tlza84y9PoLkWAHU6Ux0jnLjiisaIyvo08,1897
-PyQt5/bindings/QtSql/QtSql.toml,sha256=2D-77-RcBnwiKExg9sTAhAkUCmjajjm7guo3NPlGxt4,169
-PyQt5/bindings/QtSql/QtSqlmod.sip,sha256=90l9xaphvOeQVWu6QEEOvrwTqcg_-EASkEReaA7Ar48,2361
-PyQt5/bindings/QtSql/qsql.sip,sha256=BwKrwJyV_kBz0_4Qgh2QBOOb69yLBar4MSc7Hq2eKm0,1690
-PyQt5/bindings/QtSql/qsqldatabase.sip,sha256=h7XrqXyuIO7bI7tKW6LtPiiGv1AJwd2tSt3wf6b3DuE,3963
-PyQt5/bindings/QtSql/qsqldriver.sip,sha256=f3z1ZXh_ZwF4ZnJKBsoavU56731_O4q9koanKYwI3KA,5168
-PyQt5/bindings/QtSql/qsqlerror.sip,sha256=doBLzJSEbKntP9c_WVOn2k56zeK2ON-tZvdxm2EtrF0,2405
-PyQt5/bindings/QtSql/qsqlfield.sip,sha256=14tbfm5sVeOQWJw8F_abq2HNYxFVRz0780Dn3RaJhQU,2569
-PyQt5/bindings/QtSql/qsqlindex.sip,sha256=xZbqla68P88h5MCFIIwKO-iHbNWr0V14Fehq5ZOu_8w,1538
-PyQt5/bindings/QtSql/qsqlquery.sip,sha256=4qjiPDqWtVSjEM2Qbcl8PlgwrRy_Adj1pab2Qzpi65g,3258
-PyQt5/bindings/QtSql/qsqlquerymodel.sip,sha256=XkBvn5PH_tXCOlItNnAzeR9fhUpUA-Hc_8nQ9RYmtoc,3033
-PyQt5/bindings/QtSql/qsqlrecord.sip,sha256=_ryA6Zh7zlWmfORPiy-YT9PmLijrBNZ-freCD3XXIkk,2345
-PyQt5/bindings/QtSql/qsqlrelationaldelegate.sip,sha256=wv7s8YyKZ_XOInnd0WWLvGuYdUo_oR_w-wWG883pGEQ,1606
-PyQt5/bindings/QtSql/qsqlrelationaltablemodel.sip,sha256=8YHRTdTmfovCveUkJ2YzJT8nIvTBsWXGw3kEbdhNIww,2716
-PyQt5/bindings/QtSql/qsqlresult.sip,sha256=4dk34CYZaglglPKX2pPgB0gaHFPwbRf8McT_GE-LueM,3329
-PyQt5/bindings/QtSql/qsqltablemodel.sip,sha256=HGW-QY6PhObjrcmK4EYI6JummHRYCnTsAPxYR9oTK-Y,3871
-PyQt5/bindings/QtSql/qtsqlglobal.sip,sha256=FtIE0FjvlJDowYvJTPoYoyDbMf7x98jPWTABc3tJZYM,1704
-PyQt5/bindings/QtSvg/QtSvg.toml,sha256=udbEfPg1PkP9wJJ9Jr5gji5veA9FQIqhi2x_POCPvps,169
-PyQt5/bindings/QtSvg/QtSvgmod.sip,sha256=QxxJ2O85bWeuZns5Zn0tWlRO9yRitS3R5lmyKgyd7_Y,2123
-PyQt5/bindings/QtSvg/qgraphicssvgitem.sip,sha256=jTvpYDwgbjjXpOCt3d8v_JN38h04k05AFgQwQX_BWcQ,2046
-PyQt5/bindings/QtSvg/qsvggenerator.sip,sha256=mc6ETnDsvGI2ZpRlwSCbgz8ncltvHF9y7dtJoXDCG8E,1871
-PyQt5/bindings/QtSvg/qsvgrenderer.sip,sha256=SL46iN6rT-XAvi3cVRAuRqoCzcwN7wdR2NjywE3QpAk,3087
-PyQt5/bindings/QtSvg/qsvgwidget.sip,sha256=5SqIQwxaPQUqFEvr1knN58i7qVWEdgphY5Q2QBoygd4,1455
-PyQt5/bindings/QtTest/QtTest.toml,sha256=INugwUH2Yikmgq9D9tCrYn8ulWhAQDCbsJrwKHFHKE8,170
-PyQt5/bindings/QtTest/QtTestmod.sip,sha256=N448uMGCHDUzlXZSUjWulJhn5tgss23L6RLyyiJtnl8,2179
-PyQt5/bindings/QtTest/qabstractitemmodeltester.sip,sha256=Pi9CoVwqQEvhiC_IkwPxuKdSL4Ntpgou3z2H_rGGniM,1702
-PyQt5/bindings/QtTest/qsignalspy.sip,sha256=YPZvsctXH7frtNirVY9kuRKUDhVGD9Yaa7xZ8tUYejQ,3441
-PyQt5/bindings/QtTest/qtestcase.sip,sha256=G7sL1VrgIX4BHnMVN3Tdw_xydXTBjLTowPq0XGs8IZM,1082
-PyQt5/bindings/QtTest/qtestkeyboard.sip,sha256=Uao6B2RVnqSIB2BY1dS70_wO0X73X_ivO_RjhUTrbcM,3433
-PyQt5/bindings/QtTest/qtestmouse.sip,sha256=bdgrXCzXmo5Y9M_GIlnMhrg-VW8kOcsOwMd44T8BFNo,2485
-PyQt5/bindings/QtTest/qtestsystem.sip,sha256=t7hm34mkY8wOCw5804bNbZxux44DpWkixwsW9wFsYSw,1415
-PyQt5/bindings/QtTest/qtesttouch.sip,sha256=Dl2842q6mPNtqfFiHbLJTowogC7dY4zbPRhO-Vqbj34,2849
-PyQt5/bindings/QtWebChannel/QtWebChannel.toml,sha256=qBPAFzf-SXEFgLYsUB7pdcWl9rxuHoYtDuPT4QDP6NE,176
-PyQt5/bindings/QtWebChannel/QtWebChannelmod.sip,sha256=1r1KohiDOJpycDG-O9kw6iXSoM5flY_cYOiGllGCUsA,2038
-PyQt5/bindings/QtWebChannel/qwebchannel.sip,sha256=zEvXgbADBuJ6wnQSF4EGu2p-dsOeGuvv3SUtyT83VrM,2408
-PyQt5/bindings/QtWebChannel/qwebchannelabstracttransport.sip,sha256=VgD40IUqzvjZkwUhGkdIKIm5F-wEvekT5lbIZI0dn8M,1467
-PyQt5/bindings/QtWebSockets/QtWebSockets.toml,sha256=H3erXntwrllhI-PKEJd_xOhUtuytsGeOtwaODuT81Dw,176
-PyQt5/bindings/QtWebSockets/QtWebSocketsmod.sip,sha256=EW9T1Qm13llbk6gAFzlp6YDiIfOOuCKo8tRmVVsHQfI,2165
-PyQt5/bindings/QtWebSockets/qmaskgenerator.sip,sha256=UrRHuvAdSJbX-7lumeB5o-m0uFrImuY_K2C7xJnwVdk,1276
-PyQt5/bindings/QtWebSockets/qwebsocket.sip,sha256=9gC02kDlAR7oe6zt6sygAcS_P4Ey-N8CT0bK6eSgskY,4880
-PyQt5/bindings/QtWebSockets/qwebsocketcorsauthenticator.sip,sha256=j1mGNax48QVYZ6bJsDlHxaA1A_2h0Wn94xiffDN95-s,1486
-PyQt5/bindings/QtWebSockets/qwebsocketprotocol.sip,sha256=CMWCxmWIijIdKwV3RQh0LjS17DSSMnhBfOauHidr5og,1803
-PyQt5/bindings/QtWebSockets/qwebsocketserver.sip,sha256=k2tzFlPllbTKPh132z4L0TL97MwrjSEuALO9PB5vp6E,3456
-PyQt5/bindings/QtWidgets/QtWidgets.toml,sha256=yjtV109vZF7M9p5548BbsITs8UYmII2aGpNRqW7aqlM,173
-PyQt5/bindings/QtWidgets/QtWidgetsmod.sip,sha256=vleZHqf75GM4kaGrQvpbJHzmRtK4YCOxV5Py4Sv6gt8,5379
-PyQt5/bindings/QtWidgets/qabstractbutton.sip,sha256=tsoog0aHioFeoz8DL6T_uq52rGVpirRzRdLHwu1oIaU,2829
-PyQt5/bindings/QtWidgets/qabstractitemdelegate.sip,sha256=2QyTOnu5xhQyNCdplPCePD7a-O6IJUvlQBsP2pF5zo8,2676
-PyQt5/bindings/QtWidgets/qabstractitemview.sip,sha256=gpU7s-lyjI2OxUdSLjB0V2uA6p-FUtalfuerHPfBu1g,10870
-PyQt5/bindings/QtWidgets/qabstractscrollarea.sip,sha256=HRIchoItXXA1GwrC8rXQCuq0V2AWUaua7tQvfUNAMF8,3664
-PyQt5/bindings/QtWidgets/qabstractslider.sip,sha256=ZAbeJxPLyOfs4V7ZVSlSOkfPUhtwSyub9IPNq_UumSc,3107
-PyQt5/bindings/QtWidgets/qabstractspinbox.sip,sha256=0Qq-BzxwUP1Kca4TbcHGm-P9yLxJ2PLhbMV5gUO8jZM,4336
-PyQt5/bindings/QtWidgets/qaction.sip,sha256=xJEQMGqk2Q5dvVUHWwHKGRulhC-0lf4G-BrlWscdlvs,4454
-PyQt5/bindings/QtWidgets/qactiongroup.sip,sha256=Sk9K2RnkL9g-P-7wxKkBtj_Cep_Ii6nr7aeFrjSyHWU,2167
-PyQt5/bindings/QtWidgets/qapplication.sip,sha256=DK4XOjDT955C56GMAzd9cRcpnL9iseI3wgQfCiR24wU,16292
-PyQt5/bindings/QtWidgets/qboxlayout.sip,sha256=KTib3YXV3xZf4Zr2NBbIJeYKBi8qlFndqb7ex_fpUpo,4928
-PyQt5/bindings/QtWidgets/qbuttongroup.sip,sha256=fUbBwz4C8vA-wA96CG9B9XHRyiCRjiye-RklOa15eBk,1951
-PyQt5/bindings/QtWidgets/qcalendarwidget.sip,sha256=WGoDAO-aZv3Pmb6xRmjt4As3HB3z2XB5Yn9sGhga30c,4288
-PyQt5/bindings/QtWidgets/qcheckbox.sip,sha256=Pmcek3udzN_GjNGMEh5XOHVkV5qbWSVV8psSjA5Y-1M,1842
-PyQt5/bindings/QtWidgets/qcolordialog.sip,sha256=EfzX4zH8jPNzxchk0rtbKqn0_L9FXjXHz-mJmDUnZvo,3179
-PyQt5/bindings/QtWidgets/qcolumnview.sip,sha256=Y1e-rxwQdS8W74t2wxD05uAQ0UyFhllQcsiBgvs-aR8,2937
-PyQt5/bindings/QtWidgets/qcombobox.sip,sha256=YfiBomUTtDxiykDSB7qDL-5A68E-97VLRZEwogCgtb8,6254
-PyQt5/bindings/QtWidgets/qcommandlinkbutton.sip,sha256=dE_4XT90ET0pyGGUHokIMTCM8AQ95maOjas8rvnObDc,1702
-PyQt5/bindings/QtWidgets/qcommonstyle.sip,sha256=jZZoYp95a1QM8prPikJoNpyUtFsr32-RCMi3oeAniAA,3191
-PyQt5/bindings/QtWidgets/qcompleter.sip,sha256=j0ZzVX6_sgcq1ZUvFPRWbjmQQFlc-FPb0juSmc7rPV8,3458
-PyQt5/bindings/QtWidgets/qdatawidgetmapper.sip,sha256=bfvYIfvOUaBWsaSkRapVbo-X2Udz_tEtdnGxLnN7tdc,2506
-PyQt5/bindings/QtWidgets/qdatetimeedit.sip,sha256=EdN5flCltIqQg0GpKhR7zWxwdzyckWWhxMZVFuN_z4A,5438
-PyQt5/bindings/QtWidgets/qdesktopwidget.sip,sha256=spoHtUKr8bA3SrrFAAnhQ4B5jYaWhMj5fJmgeJpytxQ,1961
-PyQt5/bindings/QtWidgets/qdial.sip,sha256=mfJiALTMDU_qpdzAXQUb1rBpE_L38wfnbvbvQt6mkm4,1911
-PyQt5/bindings/QtWidgets/qdialog.sip,sha256=ACuqYeVsq1jUqFdvzE8a5qMw-2FRE4FmWyPTCLQX-IE,3484
-PyQt5/bindings/QtWidgets/qdialogbuttonbox.sip,sha256=F0QHAmfQ0oryRUcZ8CgGNozKH5pyoAJbgj3-nF6YgiE,3876
-PyQt5/bindings/QtWidgets/qdirmodel.sip,sha256=f0ruP7GU26yfzKtZ_uPhkza_KQbIg76u1T6cpQMXCSY,3734
-PyQt5/bindings/QtWidgets/qdockwidget.sip,sha256=2jnkOLmkfX4rKqFcgtkZdGCW0xk0SL1PIkibA4_Xum8,2875
-PyQt5/bindings/QtWidgets/qdrawutil.sip,sha256=k3WODSWlRgW0UML1nfny0UXcmxg9DlTZ99t-BEuf-Bw,2769
-PyQt5/bindings/QtWidgets/qerrormessage.sip,sha256=mAImgUWbCD4VbN16CcGygK4PKc_RctwuMXHXPwnw7-E,1430
-PyQt5/bindings/QtWidgets/qfiledialog.sip,sha256=-LiBqtds5TqeJJBVhcBOodb_65oca8dZSd7TWVu3D8Y,12962
-PyQt5/bindings/QtWidgets/qfileiconprovider.sip,sha256=i4qn-9D2Y8fAbZf9ysJszPOdKn_K5B-crTcAXHpf0Sc,2011
-PyQt5/bindings/QtWidgets/qfilesystemmodel.sip,sha256=2U8VEgZgVpwfzKdsZQ1UoY68sh1XXfJydIxbBltbd6w,5217
-PyQt5/bindings/QtWidgets/qfocusframe.sip,sha256=nAjVqjoduNxADGyMXr_WfJMMR7yQgRHI_-tVjIxn6cw,1424
-PyQt5/bindings/QtWidgets/qfontcombobox.sip,sha256=fXLDrBRxMjQC2dDzal4zXCfgEGwZpuQuHxOB02hvuw4,1979
-PyQt5/bindings/QtWidgets/qfontdialog.sip,sha256=uv2KlrRmmSt4bb7TmP9yQ2dQAfn5AVUBl0J2gvIiRo8,3205
-PyQt5/bindings/QtWidgets/qformlayout.sip,sha256=f-NR2QRIL4i6GnizqfSps9vD1gUt9-jYuY-rfqtnCvE,4846
-PyQt5/bindings/QtWidgets/qframe.sip,sha256=5t4v3atUDMl5I9WB9Ijmxh_SxnlptM_Ppgh-D_XL4es,2219
-PyQt5/bindings/QtWidgets/qgesture.sip,sha256=8N2z-3mFnMHEbyjy_y4uei71CbbQzqa8UrDlNX7fbQo,5514
-PyQt5/bindings/QtWidgets/qgesturerecognizer.sip,sha256=_enD2oCuecu-yeVvM1ucD4f8WEmR7DdFPs7JidI3Dfo,1907
-PyQt5/bindings/QtWidgets/qgraphicsanchorlayout.sip,sha256=xweQJjmAgyAluWKbRNwL7vaXLNAuhiWPOGszq2rumNE,2807
-PyQt5/bindings/QtWidgets/qgraphicseffect.sip,sha256=0JITq47g8eED-tgtJXlUZQQKsQaJUdBCWQUIO5JM-dA,5416
-PyQt5/bindings/QtWidgets/qgraphicsgridlayout.sip,sha256=9b5t2CgOMLI_Jw41sklgbMF-qBjcHdA1BfRAC3AKohs,4307
-PyQt5/bindings/QtWidgets/qgraphicsitem.sip,sha256=bEXgITo_HYgB06IhNubjyYrVGukw6jlUOxIz0TUPdoE,27666
-PyQt5/bindings/QtWidgets/qgraphicslayout.sip,sha256=YKResgFZ-3LMTttvcTBvIk-N3QmUVyhwM5lG484ZcgE,1775
-PyQt5/bindings/QtWidgets/qgraphicslayoutitem.sip,sha256=SMjcQhyl3pnZgf6VOz_n2sOQSlPWS8a61lIi4w4hn58,3163
-PyQt5/bindings/QtWidgets/qgraphicslinearlayout.sip,sha256=mvSTjGNXIEulOlQqp7XT8kp0EumvDnUiu4L4GF1SCnQ,3229
-PyQt5/bindings/QtWidgets/qgraphicsproxywidget.sip,sha256=1JodkQiOn1o1FK5T-cnxK6Bt8UwAhdMYB1AZYZoEDcE,4008
-PyQt5/bindings/QtWidgets/qgraphicsscene.sip,sha256=trx3bRNN9aOZ9HIzwpVtyhiun5QpJVvwii3mK7WmWzI,9311
-PyQt5/bindings/QtWidgets/qgraphicssceneevent.sip,sha256=duXJOHaAC2goCuzuedxT1c7GJjc-pahS0D_FYE8DQlo,6855
-PyQt5/bindings/QtWidgets/qgraphicstransform.sip,sha256=8zQBRYK1j6YbPHtfDb8Cp0D_DmbFjY1qUnrYND_2TzY,2528
-PyQt5/bindings/QtWidgets/qgraphicsview.sip,sha256=5A_PhFQ6vefXTZLs76lo1pjgfnv_kNMO5oHmDToH4kA,8610
-PyQt5/bindings/QtWidgets/qgraphicswidget.sip,sha256=K1i1vK3zxFKuJ2Qyf_sfiVAUxhZamt_xA431bGUF-E8,5617
-PyQt5/bindings/QtWidgets/qgridlayout.sip,sha256=ovNWEQVg7rWlK-KFqTcL2JFCBl4a0SkC59BLlISvaHA,5681
-PyQt5/bindings/QtWidgets/qgroupbox.sip,sha256=V2y2ik1FM7MlfXW-q7epvLbiQnHp-6lxmdOUivnF3oY,2176
-PyQt5/bindings/QtWidgets/qheaderview.sip,sha256=QAVIcTD42DT8rKgKpyPW7v6h5ZQuHvqDUg2FnrbOqPA,7206
-PyQt5/bindings/QtWidgets/qinputdialog.sip,sha256=bIlHRPExikcDjQiFUhEdeeaa-Ggxu8_o3nyc_Xjvv6I,5919
-PyQt5/bindings/QtWidgets/qitemdelegate.sip,sha256=1XoUP3uO7oHQuDB70Ataa5YObNZLQNSIYDhDQqgTwUs,2982
-PyQt5/bindings/QtWidgets/qitemeditorfactory.sip,sha256=b_z9LXZHfbJd8i8Xx4AMdFj5BE2gBP2XF7ulxcxEUJE,1849
-PyQt5/bindings/QtWidgets/qkeyeventtransition.sip,sha256=As8-rDVf3hvVk2fS2xuCSsqKQZy9ej5Rr5tKZbIMBh0,1600
-PyQt5/bindings/QtWidgets/qkeysequenceedit.sip,sha256=enYsPc0cT0JA4jL2Ui196bavz5KtZ9XSD38CWyGZdwQ,1734
-PyQt5/bindings/QtWidgets/qlabel.sip,sha256=RhjHsgiW8JTs5jTF2oVs2-k5XYdcX-qLxt7HfM4UjTE,3275
-PyQt5/bindings/QtWidgets/qlayout.sip,sha256=A3sCQbJU6DKTsFh6mc7u2myfL9i_THQgv3lsDa6id1I,6025
-PyQt5/bindings/QtWidgets/qlayoutitem.sip,sha256=Nt3A2lymPcQ37qTGoZ805FMPtTGQ4b3QaV47sJbc0AQ,3769
-PyQt5/bindings/QtWidgets/qlcdnumber.sip,sha256=7s4ZPKMzFSkvYPWlVCf_XSNbmnKmXlpVAb1B0wAfaqA,2460
-PyQt5/bindings/QtWidgets/qlineedit.sip,sha256=q-9MCnAprp1_5Yvpv_r-bEncmvGQeoXHDRBMdEP0EZI,5603
-PyQt5/bindings/QtWidgets/qlistview.sip,sha256=gRe0oPyfMVhbAMI2UkdZNohrHQgW5TC4Tfcn5KxbQek,5183
-PyQt5/bindings/QtWidgets/qlistwidget.sip,sha256=rezq7n0ehT-5sp-UffoLpt1FLUMW2hFqcZgkEzVCyaY,7456
-PyQt5/bindings/QtWidgets/qmaccocoaviewcontainer.sip,sha256=5QvDAiSBWicNhVSsCVCHJDhIhdTEc65Y4_vCr9YsJUw,1467
-PyQt5/bindings/QtWidgets/qmainwindow.sip,sha256=P7l_0g5Q2GpWdkttTN3mzhlcgWDfixzqHuUL28PeITM,5032
-PyQt5/bindings/QtWidgets/qmdiarea.sip,sha256=srxKXTEj_vicRPvcx3yaHBOUXB_Kcet3PnEYqgeJb6E,4384
-PyQt5/bindings/QtWidgets/qmdisubwindow.sip,sha256=9a85Vaw15IyEtw_zW_FcuYGOTiKnLPdIQ-nYed9Ocjw,4286
-PyQt5/bindings/QtWidgets/qmenu.sip,sha256=I_IP0pOtObtbiTH1tKaneZQF5mU2DO4dZsjKJNAQbR0,6226
-PyQt5/bindings/QtWidgets/qmenubar.sip,sha256=imUOALt6Wm5up5AXJvy59m4NkefnNkQOcYLo2hcRHco,3626
-PyQt5/bindings/QtWidgets/qmessagebox.sip,sha256=qus43VzMNM1DX7Vl2V9BZfGuc45-pjZIXXiXjNleKGs,6668
-PyQt5/bindings/QtWidgets/qmouseeventtransition.sip,sha256=OVgTd3KFb4OyBkTHWOusnfJ-Aszgtf6QT472nFiTHZU,1751
-PyQt5/bindings/QtWidgets/qopenglwidget.sip,sha256=V81dRg7sTzX09_AFiKc5dUKFKRpg_N523DW51wtYY4g,2463
-PyQt5/bindings/QtWidgets/qplaintextedit.sip,sha256=Z3oLSkpUiLFV5_kqoyk2EbtJOKVLwwvB21_Ke0BU8_4,7961
-PyQt5/bindings/QtWidgets/qprogressbar.sip,sha256=kd1kUt2w-q4M4GslJlIJ2RR5tSyHUHli8xLI-11Xi40,2312
-PyQt5/bindings/QtWidgets/qprogressdialog.sip,sha256=5Zz2GJTfGHAhl-FHECsxQLBVBgKsOerwplqCzCFMmaE,2988
-PyQt5/bindings/QtWidgets/qproxystyle.sip,sha256=_ILPOTG_TMgP33BrYHT19fn9TKYgyWOhMGpuZt0ynDY,4008
-PyQt5/bindings/QtWidgets/qpushbutton.sip,sha256=MIxDlPaXdlsraz9v2kqqiyWwhyG-vfxy0_y42N6Slos,2119
-PyQt5/bindings/QtWidgets/qpywidgets_qlist.sip,sha256=wabkEJ4hoCnkQ7OvFh-QWKW8nijUQWR6PjDm_zGPZO8,3094
-PyQt5/bindings/QtWidgets/qradiobutton.sip,sha256=C2oMRAFO0NNlyO7TEkGy_4GBEcX1Ii4P_ZsY7AErWwg,1589
-PyQt5/bindings/QtWidgets/qrubberband.sip,sha256=lyq2fmWKn_gYZ4TuWj6z1WJ00aOtLidHNMuHHotbaVo,1840
-PyQt5/bindings/QtWidgets/qscrollarea.sip,sha256=qk4Es8z91hbVssETdbFj0EWjYWerRwyYVS4DL1_zbbQ,1969
-PyQt5/bindings/QtWidgets/qscrollbar.sip,sha256=vpoVkAf0O4hWfdJIxpl0lSd-hofmpMy1NySnKO5lP2Q,1811
-PyQt5/bindings/QtWidgets/qscroller.sip,sha256=S8okNCj1BQJ8CTZNb_bes2n7Rgoz0P82dPQXRIbya_g,3018
-PyQt5/bindings/QtWidgets/qscrollerproperties.sip,sha256=fHgjdgvJJtseMe72rwkG3wASkYF6Db5n1UPxDNu7fMs,2565
-PyQt5/bindings/QtWidgets/qshortcut.sip,sha256=x9BUV7I4ve9zipSLM4r4Dfk28f9XSl3Dmvzdp_pvYDk,3632
-PyQt5/bindings/QtWidgets/qsizegrip.sip,sha256=-9yjhH7nRDJAhJmTmrvweGNGi0VJ7zBWElslOyrZwv8,1685
-PyQt5/bindings/QtWidgets/qsizepolicy.sip,sha256=G8CFU-T67kq9tLZQJ_fdXeJ7NGwIIMasNjt62A9saUI,3563
-PyQt5/bindings/QtWidgets/qslider.sip,sha256=rG54AaLg3LtJCvRZmpPsR06Ry4ar6jVWzyDavjfdsEk,1970
-PyQt5/bindings/QtWidgets/qspinbox.sip,sha256=3snPoZ_A01ORU-ZsIiHXGcacNpA8ABePx3YVg8zW0T8,3687
-PyQt5/bindings/QtWidgets/qsplashscreen.sip,sha256=te6uwA1pD_NtegdWfzSmAvsnqY0O7P0wzivUQLpbZ5M,1887
-PyQt5/bindings/QtWidgets/qsplitter.sip,sha256=uyVWd0JQT-2KzB7cWiStr8eY5E2jdTPYrjJVFv6k21g,3551
-PyQt5/bindings/QtWidgets/qstackedlayout.sip,sha256=Tf2wYjRm6SOxry74DXv7BPx2PD4gELhduBHUXXmjyqw,3795
-PyQt5/bindings/QtWidgets/qstackedwidget.sip,sha256=kvdyPmBUm5l-4JtKzHA0ZimiS2ASH6Qkia8-5AOQg6U,1707
-PyQt5/bindings/QtWidgets/qstatusbar.sip,sha256=yGrNwKr3AG8IR-NNtRyZsRBStUpTUi2Fi4H0fRgseh4,2011
-PyQt5/bindings/QtWidgets/qstyle.sip,sha256=IdUc86Q7mmMWVMErWQPWmMH4MigvZ6LwZBWIPlwHiDg,24133
-PyQt5/bindings/QtWidgets/qstyleditemdelegate.sip,sha256=Tnh8VTEr0Vdqevfe8YW42vtP8FGNIXmbnVUzMV130oE,2472
-PyQt5/bindings/QtWidgets/qstylefactory.sip,sha256=pb71dEo0FldNPp1MYhZzE4y_0jQMksiTpuOnUpZAkV0,1154
-PyQt5/bindings/QtWidgets/qstyleoption.sip,sha256=cPblVGPBrIbpGTahBUWFic-zkPLqdxzvY08yNCcpGEQ,21606
-PyQt5/bindings/QtWidgets/qstylepainter.sip,sha256=8VfScNE8AFRgIiRpG6-15wxidGzOzohFvQynx5vwsXs,1773
-PyQt5/bindings/QtWidgets/qsystemtrayicon.sip,sha256=oEfDW0AVktiKWD8hBBLmjGs2B02ECgRrC_JqTovhyYE,2419
-PyQt5/bindings/QtWidgets/qtabbar.sip,sha256=j4MWE0_6d7RFZ4Xl1JQtuzNvPEUwHRnvrQTeNWWbOxQ,5475
-PyQt5/bindings/QtWidgets/qtableview.sip,sha256=rLlWQQHH1wzLTWRBFkTzj4BUO5f6MSGfTlLcjhwtt6g,4956
-PyQt5/bindings/QtWidgets/qtablewidget.sip,sha256=hNaRqdROL1Rjk4R5X9WJ29gokgEPvdb81jJN9wafhuI,9296
-PyQt5/bindings/QtWidgets/qtabwidget.sip,sha256=cOjcQwlcxTM-nhBJefji8ozM2sRsGPvxKpauma49AY8,4363
-PyQt5/bindings/QtWidgets/qtextbrowser.sip,sha256=Aer6fMCvRxzisVwytg5FT92AG6A9G9SiU7XcmK0kVew,2960
-PyQt5/bindings/QtWidgets/qtextedit.sip,sha256=I0bjB7BvWMmZGInkovO7Z7kIqVFX_vZzgpqnEDR0EwQ,8203
-PyQt5/bindings/QtWidgets/qtoolbar.sip,sha256=UFs2lRm0v1ugVwWQ-7Jcb-hYHiC_sWqFwB9j-YzV3p4,4342
-PyQt5/bindings/QtWidgets/qtoolbox.sip,sha256=gY54PSk9NzSF7bOU272bruyLjs46XA15jCbYamUuw24,2479
-PyQt5/bindings/QtWidgets/qtoolbutton.sip,sha256=6dT_bjPYxaKXZFz896TiRLr1asU2G5pHBlo6TEkEIG0,2560
-PyQt5/bindings/QtWidgets/qtooltip.sip,sha256=6qo1hQSI9yEf8VmdL3U48Ih-FgnniyeIOcjsmXifaQI,1630
-PyQt5/bindings/QtWidgets/qtreeview.sip,sha256=PURBETgKMnMHnLgqjT692hj43VvuOnjZLrp3EkzEh8M,6708
-PyQt5/bindings/QtWidgets/qtreewidget.sip,sha256=HHKS7H06ju8ntDZRXUsjy3ZgQxARZ69MYgNAhtulGkE,10487
-PyQt5/bindings/QtWidgets/qtreewidgetitemiterator.sip,sha256=30GXiLWlxfhHorh5p1hzbbrennJthoFnPB0x1Q9pfkY,2362
-PyQt5/bindings/QtWidgets/qundogroup.sip,sha256=Lc5ZbZ__vJe890yVA408eNNP9d_XDYCYUxjiLsu5J0s,2103
-PyQt5/bindings/QtWidgets/qundostack.sip,sha256=ETJcgosC8L4R_O5w-eMZIL0Hbc8Ze49hUzrCxeRdLus,3169
-PyQt5/bindings/QtWidgets/qundoview.sip,sha256=WFVB28L_SXq_difS3tlaRMlBrXeOjjaNl1b84s9ZZFw,1641
-PyQt5/bindings/QtWidgets/qwhatsthis.sip,sha256=Xp7LzUZpi7hjmgu4Nt7BACF03hLpvX8P0C8NL_i7mCU,1391
-PyQt5/bindings/QtWidgets/qwidget.sip,sha256=z108crqiSm9vwmN8aoCAdfoxnJSpgnpgvhKCqN3i3eY,15862
-PyQt5/bindings/QtWidgets/qwidgetaction.sip,sha256=QAfV_Nn3RzjF6glN-Ukbo18MNJSyC4Wt60U6u-4Omlw,1670
-PyQt5/bindings/QtWidgets/qwizard.sip,sha256=xE9ooaaOYd-qK7Lz0iX0BuiPtLmPMYZo8bM3-NVDcnc,7912
-PyQt5/bindings/QtWinExtras/QtWinExtras.toml,sha256=De7fPe2mZ-1FkKBq8Giy-y3khl_e0rC5bWMzdLLo0dE,175
-PyQt5/bindings/QtWinExtras/QtWinExtrasmod.sip,sha256=MBIbZwToPxv8AlaBeQvn3hvfiMr8Wb5wVjcPfN-ssUo,2198
-PyQt5/bindings/QtWinExtras/qwinfunctions.sip,sha256=VG8FEw3IHL49dQvO_7DG88hklZ2snXLWps2BG9JIQyM,4424
-PyQt5/bindings/QtWinExtras/qwinjumplist.sip,sha256=5hR_zDZeVwa5nK2yQRaqiBZY1LmlaJTdKVyXZzFvgPw,2492
-PyQt5/bindings/QtWinExtras/qwinjumplistcategory.sip,sha256=2gfKLe1EAD4EOdIbSxLMt9fyn2Si1bCJNHvugaYJhT0,2135
-PyQt5/bindings/QtWinExtras/qwinjumplistitem.sip,sha256=rrS_Z9hizWjfM_PhxETVRe9KHK6zUbS-xtJkmq2rBNU,1844
-PyQt5/bindings/QtWinExtras/qwintaskbarbutton.sip,sha256=3v19hhuHQJUKJpL7-Rtx97BnOCUJ7j3_HU1Jw-xkzGA,1644
-PyQt5/bindings/QtWinExtras/qwintaskbarprogress.sip,sha256=Yg_pXuB57aAp-3Hm7v3SOGrsS32ud9y7kx-Pe4XY198,1923
-PyQt5/bindings/QtWinExtras/qwinthumbnailtoolbar.sip,sha256=tvcEa-IBBFblDhWbOKdIlB12v-XECDX2fP73STSnlxs,2111
-PyQt5/bindings/QtWinExtras/qwinthumbnailtoolbutton.sip,sha256=DEzjZalPqbWD-CpnOebA45jVVv7bhNdPxQJcVZK-stg,1824
-PyQt5/bindings/QtXml/QtXml.toml,sha256=CFFmzel6Vj6R308_UJD-k6DbXaMn0ytI7z4VH9Lzaf4,169
-PyQt5/bindings/QtXml/QtXmlmod.sip,sha256=KUXF5I1xQ4kO8II2MLDKhiqxarKtHixmrDkguDbZO3E,1986
-PyQt5/bindings/QtXml/qdom.sip,sha256=nkUACEnVvcTP-RL0eOR7eV6XHuqMnvG3uRUe5Bd-yNM,14685
-PyQt5/bindings/QtXml/qxml.sip,sha256=shVPeQsa3nx4DO3dWgDtiVAvZd-tqEj_X5tgcAjZf7M,12460
-PyQt5/bindings/QtXmlPatterns/QtXmlPatterns.toml,sha256=FjQJQNS7gOcEwasEBdTmaIyMuts9-In_WmNpMNchy1s,177
-PyQt5/bindings/QtXmlPatterns/QtXmlPatternsmod.sip,sha256=R7eI3ZqEAa41jUWv93Zt9NHhUOGx2WlKZtsbq1BwYxg,2436
-PyQt5/bindings/QtXmlPatterns/qabstractmessagehandler.sip,sha256=MT492wY9_7TSXw4oasrmSoBiV33rMy-SJgQkhewM7_o,2196
-PyQt5/bindings/QtXmlPatterns/qabstracturiresolver.sip,sha256=ufBCk50JHT-2lcKbNsEsEAhEXwkS8NGv-TGZizi1TF0,1283
-PyQt5/bindings/QtXmlPatterns/qabstractxmlnodemodel.sip,sha256=J1AgJCjw1An4XM44PaOyaIyWQ2p_hgu4p-Q7gc6hNSc,4353
-PyQt5/bindings/QtXmlPatterns/qabstractxmlreceiver.sip,sha256=-Nwr_xFKnp-wnPP1MLcVUnCCMHq2Grn0ryfw2fl0MS0,1881
-PyQt5/bindings/QtXmlPatterns/qsimplexmlnodemodel.sip,sha256=NTWva23kMmoGZziTO-YCrONF4S6SHEx4HLpcTe893XQ,1619
-PyQt5/bindings/QtXmlPatterns/qsourcelocation.sip,sha256=C4L2YGVgAh0RLv4gRlKMIrZAnmRjCq7VSDKHei0XyP4,1659
-PyQt5/bindings/QtXmlPatterns/qxmlformatter.sip,sha256=OP9jyQGSLwnZzRuiqkusM6JZ9bKb-fdoHTY9baJciiE,1779
-PyQt5/bindings/QtXmlPatterns/qxmlname.sip,sha256=vlWEFmAs4jCRk4cL7NTcBC_k55pc3apzq9o2szvi51A,1860
-PyQt5/bindings/QtXmlPatterns/qxmlnamepool.sip,sha256=V81svZwam5pkQxOdPBIZZyEdtcCd006aSxPpE8KxNGE,1157
-PyQt5/bindings/QtXmlPatterns/qxmlquery.sip,sha256=KwzJXQQ1kAVDODJhxDdyFnlYeJSTUdnoxZzWTiOBPkM,4503
-PyQt5/bindings/QtXmlPatterns/qxmlresultitems.sip,sha256=8IAUBfro7kcngSZ3OyrEtcTyuAZrjn-jNJs4w6_zGvs,1274
-PyQt5/bindings/QtXmlPatterns/qxmlschema.sip,sha256=wdNWBCzTkdGxETpnNZXeJ3V89xYwUn54qcnGqG-vZiI,1928
-PyQt5/bindings/QtXmlPatterns/qxmlschemavalidator.sip,sha256=QzdAqqV2b9JqblmLtA-a8kgqOROZ6EDcrWpAt97CZJ8,2485
-PyQt5/bindings/QtXmlPatterns/qxmlserializer.sip,sha256=nr_Rk5gtGsIliDjbPaEg_izKNyCY3xlBQ82hjVCMoBk,1905
-PyQt5/pylupdate.pyd,sha256=TaA0HkmUkZ75vF3lsnl8v6BaYj1BSZ-qdk5xqGJKr04,95744
-PyQt5/pylupdate_main.py,sha256=llBBW1FybRVJsRx3RNm2bNO3PHdRSyLEd67NyzC8Auw,7370
-PyQt5/pyrcc.pyd,sha256=ifFPCsEcTp9Y66SKAKKqzatagM7NKjyC7wewOOvABko,37888
-PyQt5/pyrcc_main.py,sha256=rF_uQw3W26trbcvJH0v-IAq_CnGoko4Msk_nhFbSSUE,5558
-PyQt5/uic/Compiler/__init__.py,sha256=NQ1ioPasWDeTmD_jNoPaLxqc_rAR6oxB1DBqDAu1oFA,1024
-PyQt5/uic/Compiler/__pycache__/__init__.cpython-37.pyc,,
-PyQt5/uic/Compiler/__pycache__/compiler.cpython-37.pyc,,
-PyQt5/uic/Compiler/__pycache__/indenter.cpython-37.pyc,,
-PyQt5/uic/Compiler/__pycache__/misc.cpython-37.pyc,,
-PyQt5/uic/Compiler/__pycache__/proxy_metaclass.cpython-37.pyc,,
-PyQt5/uic/Compiler/__pycache__/qobjectcreator.cpython-37.pyc,,
-PyQt5/uic/Compiler/__pycache__/qtproxies.cpython-37.pyc,,
-PyQt5/uic/Compiler/compiler.py,sha256=THKgZNBUh198NkAh1hLHPsDEMeSLRdOiEKFNvVKfv14,4768
-PyQt5/uic/Compiler/indenter.py,sha256=Z2NZ9Koezh5UjmTAsA0tw4IO3rczWYi0okT4pT4M-X8,2819
-PyQt5/uic/Compiler/misc.py,sha256=Wytpj0Y0TUiLdB2JIot3-UdtOJnpo-mnKF9OWQpTCu4,2433
-PyQt5/uic/Compiler/proxy_metaclass.py,sha256=ou_MjXc_yCksa7cFCVUU3ap7FuqJ2XcoWkxXuc4z90c,4424
-PyQt5/uic/Compiler/qobjectcreator.py,sha256=aQjKwR_EXjAhMHR8f9xWcYniDqcgPdMTWwlV8gIBgCs,6083
-PyQt5/uic/Compiler/qtproxies.py,sha256=kvfWba_8UhexFQmMAdbQKJKx01WCa0w3d3gzXJZBwKc,16580
-PyQt5/uic/Loader/__init__.py,sha256=NQ1ioPasWDeTmD_jNoPaLxqc_rAR6oxB1DBqDAu1oFA,1024
-PyQt5/uic/Loader/__pycache__/__init__.cpython-37.pyc,,
-PyQt5/uic/Loader/__pycache__/loader.cpython-37.pyc,,
-PyQt5/uic/Loader/__pycache__/qobjectcreator.cpython-37.pyc,,
-PyQt5/uic/Loader/loader.py,sha256=IafHQG6x-dNDeTlgnk1NRKYo2WolIpp2wiIWVvi2Ngc,2924
-PyQt5/uic/Loader/qobjectcreator.py,sha256=AhFPTityPrbXXvE5qT80RL-1HQm_G5za8k2dIaik0s0,5172
-PyQt5/uic/__init__.py,sha256=TBOMZ15DNcnHaVEY-Yj1uf5MQQSjD6hIHDioIvRXzQQ,9655
-PyQt5/uic/__pycache__/__init__.cpython-37.pyc,,
-PyQt5/uic/__pycache__/driver.cpython-37.pyc,,
-PyQt5/uic/__pycache__/exceptions.cpython-37.pyc,,
-PyQt5/uic/__pycache__/icon_cache.cpython-37.pyc,,
-PyQt5/uic/__pycache__/objcreator.cpython-37.pyc,,
-PyQt5/uic/__pycache__/properties.cpython-37.pyc,,
-PyQt5/uic/__pycache__/pyuic.cpython-37.pyc,,
-PyQt5/uic/__pycache__/uiparser.cpython-37.pyc,,
-PyQt5/uic/driver.py,sha256=LBc1WYaEVVIiHkkAyWGuKQBWNKY3wjrJvKQRAWy0gzE,4797
-PyQt5/uic/exceptions.py,sha256=UNMuvcB7CGpzo5xiscd4XkIBGDdFeVRefMAAEbnDFQI,2332
-PyQt5/uic/icon_cache.py,sha256=Ml68Q8JwFpFnqJKPTUxpoplRsyrH6MC6s6dokcjrlIg,5181
-PyQt5/uic/objcreator.py,sha256=OBi31Sd9nUSz1N_-Zd0MVhizaBxQhVH_6HgXYW2hwKE,6133
-PyQt5/uic/port_v2/__init__.py,sha256=NQ1ioPasWDeTmD_jNoPaLxqc_rAR6oxB1DBqDAu1oFA,1024
-PyQt5/uic/port_v2/__pycache__/__init__.cpython-37.pyc,,
-PyQt5/uic/port_v2/__pycache__/as_string.cpython-37.pyc,,
-PyQt5/uic/port_v2/__pycache__/ascii_upper.cpython-37.pyc,,
-PyQt5/uic/port_v2/__pycache__/proxy_base.cpython-37.pyc,,
-PyQt5/uic/port_v2/__pycache__/string_io.cpython-37.pyc,,
-PyQt5/uic/port_v2/as_string.py,sha256=4mYpjxovPp_Bx-qKsznvMqhj3VgtAZJLPx17STKwmcs,1475
-PyQt5/uic/port_v2/ascii_upper.py,sha256=awMymbiKvLF0I04k3Mt-8GSqR5k9k6YczsCkeFnRGOE,1358
-PyQt5/uic/port_v2/proxy_base.py,sha256=hMmk7hoRvbrn-v4Y0--yoEkyaDW9_NG6uV9QsSkniF8,1250
-PyQt5/uic/port_v2/string_io.py,sha256=wcarNdRZ63RMrLsetKjxnpdKruMe1Km9ZW-IjMwwIxw,1157
-PyQt5/uic/port_v3/__init__.py,sha256=NQ1ioPasWDeTmD_jNoPaLxqc_rAR6oxB1DBqDAu1oFA,1024
-PyQt5/uic/port_v3/__pycache__/__init__.cpython-37.pyc,,
-PyQt5/uic/port_v3/__pycache__/as_string.cpython-37.pyc,,
-PyQt5/uic/port_v3/__pycache__/ascii_upper.cpython-37.pyc,,
-PyQt5/uic/port_v3/__pycache__/proxy_base.cpython-37.pyc,,
-PyQt5/uic/port_v3/__pycache__/string_io.cpython-37.pyc,,
-PyQt5/uic/port_v3/as_string.py,sha256=FeXfhvUQQY-A8QiNdZ2IyQP-vR3PuwhvPGnuI0SVsHM,1452
-PyQt5/uic/port_v3/ascii_upper.py,sha256=oxKgHoREnUkjoLvtg3j2oQHRIVSeUY2w3de9eJcTpgs,1352
-PyQt5/uic/port_v3/proxy_base.py,sha256=XKi5Yuzk7qL2sl0Od4EBmLfOyUwZwXAkaIU3Gs55sKY,1230
-PyQt5/uic/port_v3/string_io.py,sha256=DDoiZfkcciZesIjC6nsaZmyJXpkQghmTRSLm9x1oW_A,1084
-PyQt5/uic/properties.py,sha256=3x91MRS8UAloXsLhXW8-_D98IhCWOe2ukyKp2UDj7T4,18284
-PyQt5/uic/pyuic.py,sha256=mRgWri3qt2x_3Ijy6j_qwZS-3a1c4OJJbw1ZJk4ew98,3646
-PyQt5/uic/uiparser.py,sha256=XJ_JpQr_6UrLMHT82SZ7LhioVcPDw-bEmWgqgJsKSRI,39202
-PyQt5/uic/widget-plugins/__pycache__/qaxcontainer.cpython-37.pyc,,
-PyQt5/uic/widget-plugins/__pycache__/qscintilla.cpython-37.pyc,,
-PyQt5/uic/widget-plugins/__pycache__/qtcharts.cpython-37.pyc,,
-PyQt5/uic/widget-plugins/__pycache__/qtprintsupport.cpython-37.pyc,,
-PyQt5/uic/widget-plugins/__pycache__/qtquickwidgets.cpython-37.pyc,,
-PyQt5/uic/widget-plugins/__pycache__/qtwebenginewidgets.cpython-37.pyc,,
-PyQt5/uic/widget-plugins/__pycache__/qtwebkit.cpython-37.pyc,,
-PyQt5/uic/widget-plugins/qaxcontainer.py,sha256=6esTDqUAnSnTtUOu9PUJ6bj9FfLlD0woCnyI3JDhNF4,1590
-PyQt5/uic/widget-plugins/qscintilla.py,sha256=ELBtAEp6VykaCc-cft3R3UbfCeP6LuhOAMyX0KH-FLw,1586
-PyQt5/uic/widget-plugins/qtcharts.py,sha256=liCIb2ZnSq8TKw_jEYpxs13HERjL915HpJob1_BLHQA,1595
-PyQt5/uic/widget-plugins/qtprintsupport.py,sha256=AI_f2791wuT8_2HgWn3YKCmr_a-pd1xt7etjzt7RYJE,1621
-PyQt5/uic/widget-plugins/qtquickwidgets.py,sha256=U_qE5eR28uVdDZLaNHHSnddimW1PZUP4HgEkOkgcFsg,1595
-PyQt5/uic/widget-plugins/qtwebenginewidgets.py,sha256=ZD3kSTn9EjhKvca1diNoQcA4bDYqinNMDIsOpBxMr3g,1601
-PyQt5/uic/widget-plugins/qtwebkit.py,sha256=nnByrPhnew7v8mfS502IXU5fE3XghYouMzBn0GtGXUo,2558

+ 0 - 4
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5-5.14.2.dist-info/WHEEL

@@ -1,4 +0,0 @@
-Wheel-Version: 1.0
-Generator: sip-wheel 5.1.2
-Root-Is_Purelib: false
-Tag: cp35.cp36.cp37.cp38-none-win32

+ 0 - 4
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5-5.14.2.dist-info/entry_points.txt

@@ -1,4 +0,0 @@
-[console_scripts]
-pylupdate5=PyQt5.pylupdate_main:main
-pyrcc5=PyQt5.pyrcc_main:main
-pyuic5=PyQt5.uic.pyuic:main

BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/QAxContainer.pyd


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt.pyd


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Bluetooth.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Core.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5DBus.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Designer.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Gui.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Help.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Location.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Multimedia.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5MultimediaWidgets.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Network.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5NetworkAuth.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Nfc.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5OpenGL.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Positioning.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5PositioningQuick.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5PrintSupport.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Qml.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QmlModels.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QmlWorkerScript.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5Quick.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QuickControls2.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QuickParticles.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QuickShapes.dll


BIN
src/static/win/python/python-3.7.3-embed-win32/Lib/site-packages/PyQt5/Qt/bin/Qt5QuickTemplates2.dll


Some files were not shown because too many files changed in this diff