quarchpy 2.2.9.dev5__py2.py3-none-any.whl → 2.2.10__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1432) hide show
  1. quarchpy/__pycache__/__init__.cpython-310.pyc +0 -0
  2. quarchpy/__pycache__/_version.cpython-310.pyc +0 -0
  3. quarchpy/__pycache__/connection.cpython-310.pyc +0 -0
  4. quarchpy/_version.py +1 -1
  5. quarchpy/config_files/__pycache__/__init__.cpython-310.pyc +0 -0
  6. quarchpy/config_files/__pycache__/quarch_config_parser.cpython-310.pyc +0 -0
  7. quarchpy/connection_specific/QPS/win-amd64/3rdPartyLicenses/Material-Icons-license.txt +51 -0
  8. quarchpy/connection_specific/QPS/win-amd64/3rdPartyLicenses/argparse4j-LICENSE.txt +23 -0
  9. quarchpy/connection_specific/QPS/win-amd64/3rdPartyLicenses/com.sun.istack-license.html +59 -0
  10. quarchpy/connection_specific/QPS/win-amd64/3rdPartyLicenses/commons-io-LICENSE-2.0.txt +202 -0
  11. quarchpy/connection_specific/QPS/win-amd64/3rdPartyLicenses/controlsfx-license.txt +29 -0
  12. quarchpy/connection_specific/QPS/win-amd64/3rdPartyLicenses/jakarta.activation-license.html +59 -0
  13. quarchpy/connection_specific/QPS/win-amd64/3rdPartyLicenses/jakarta.xml.bind-api-license.html +59 -0
  14. quarchpy/connection_specific/QPS/win-amd64/3rdPartyLicenses/netty-LICENSE.txt +202 -0
  15. quarchpy/connection_specific/QPS/win-amd64/3rdPartyLicenses/netty-NOTICE.txt +239 -0
  16. quarchpy/connection_specific/QPS/win-amd64/InstallType.dat +1 -0
  17. quarchpy/connection_specific/QPS/win-amd64/app.jar +0 -0
  18. quarchpy/connection_specific/QPS/win-amd64/app.properties +6 -0
  19. quarchpy/connection_specific/QPS/win-amd64/license.txt +1 -0
  20. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/com.sun.istack-license.html +59 -0
  21. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/dorkbox-LICENSE.Apachev2 +218 -0
  22. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/jSerialComm-LICENSE-APACHE-2.0 +202 -0
  23. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/jSerialComm-LICENSE-LGPL-3.0 +165 -0
  24. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/jakarta.activation-license.html +59 -0
  25. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/jakarta.xml.bind-api-license.html +59 -0
  26. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/javassist-License.html +381 -0
  27. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/jmdns-LICENSE.txt +202 -0
  28. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/jna-AL2.0 +177 -0
  29. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/kotlin-stdlib-LICENSE-2.0.txt +202 -0
  30. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/netty-LICENSE.txt +202 -0
  31. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/netty-NOTICE.txt +239 -0
  32. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/slf4j-LICENSE.txt +24 -0
  33. quarchpy/connection_specific/QPS/win-amd64/qis/3rdPartyLicenses/usb4java-LICENSE.md +20 -0
  34. quarchpy/connection_specific/QPS/win-amd64/qis/help.txt +55 -18
  35. quarchpy/connection_specific/QPS/win-amd64/qis/license.txt +1 -0
  36. quarchpy/connection_specific/QPS/win-amd64/qis/qis.jar +0 -0
  37. quarchpy/connection_specific/QPS/win-amd64/qis/qis_lib/CInterface-2.5.jar +0 -0
  38. quarchpy/connection_specific/QPS/win-amd64/qis/qis_lib/QuarchCommon-2.1.jar +0 -0
  39. quarchpy/connection_specific/QPS/win-amd64/qis/qis_lib/TorridonCommon-1.2.2.jar +0 -0
  40. quarchpy/connection_specific/QPS/win-amd64/qis/qis_lib/usb4java-1.3.1.jar +0 -0
  41. quarchpy/connection_specific/QPS/win-amd64/qps-command-reference.html +112 -104
  42. quarchpy/connection_specific/QPS/win-amd64/qps.jar +0 -0
  43. quarchpy/connection_specific/QPS/win-amd64/qps_lib/JFXUtilities-1.0.jar +0 -0
  44. quarchpy/connection_specific/QPS/win-amd64/qps_lib/QuarchCommon-2.1.jar +0 -0
  45. quarchpy/connection_specific/QPS/win-amd64/qps_lib/commons-io-2.19.0.jar +0 -0
  46. quarchpy/connection_specific/QPS/win-amd64/qps_lib/controlsfx-11.2.2.jar +0 -0
  47. quarchpy/connection_specific/QPS/win-amd64/qps_lib/gson-2.13.1.jar +0 -0
  48. quarchpy/connection_specific/QPS/win-amd64/qps_lib/guava-33.4.8-jre.jar +0 -0
  49. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-arm64/javafx-base-24.0.1-linux-aarch64.jar +0 -0
  50. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-arm64/javafx-controls-24.0.1-linux-aarch64.jar +0 -0
  51. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-arm64/javafx-fxml-24.0.1-linux-aarch64.jar +0 -0
  52. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-arm64/javafx-graphics-24.0.1-linux-aarch64.jar +0 -0
  53. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-arm64/javafx-swing-24.0.1-linux-aarch64.jar +0 -0
  54. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-x64/javafx-base-24.0.1-linux.jar +0 -0
  55. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-x64/javafx-controls-24.0.1-linux.jar +0 -0
  56. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-x64/javafx-fxml-24.0.1-linux.jar +0 -0
  57. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-x64/javafx-graphics-24.0.1-linux.jar +0 -0
  58. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-x64/javafx-swing-24.0.1-linux.jar +0 -0
  59. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-arm64/javafx-base-24.0.1-mac-aarch64.jar +0 -0
  60. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-arm64/javafx-controls-24.0.1-mac-aarch64.jar +0 -0
  61. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-arm64/javafx-fxml-24.0.1-mac-aarch64.jar +0 -0
  62. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-arm64/javafx-graphics-24.0.1-mac-aarch64.jar +0 -0
  63. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-arm64/javafx-swing-24.0.1-mac-aarch64.jar +0 -0
  64. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-x64/javafx-base-24.0.1-mac.jar +0 -0
  65. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-x64/javafx-controls-24.0.1-mac.jar +0 -0
  66. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-x64/javafx-fxml-24.0.1-mac.jar +0 -0
  67. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-x64/javafx-graphics-24.0.1-mac.jar +0 -0
  68. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-x64/javafx-swing-24.0.1-mac.jar +0 -0
  69. quarchpy/connection_specific/QPS/win-amd64/qps_lib/qutils-1.0.jar +0 -0
  70. quarchpy/connection_specific/QPS/win-amd64/qps_lib/win-x64/javafx-base-24.0.1-win.jar +0 -0
  71. quarchpy/connection_specific/QPS/win-amd64/qps_lib/win-x64/javafx-controls-24.0.1-win.jar +0 -0
  72. quarchpy/connection_specific/QPS/win-amd64/qps_lib/win-x64/javafx-fxml-24.0.1-win.jar +0 -0
  73. quarchpy/connection_specific/QPS/win-amd64/qps_lib/win-x64/javafx-graphics-24.0.1-win.jar +0 -0
  74. quarchpy/connection_specific/QPS/win-amd64/qps_lib/win-x64/javafx-swing-24.0.1-win.jar +0 -0
  75. quarchpy/connection_specific/QPS/win-amd64/scriptCommands.txt +31 -4
  76. quarchpy/connection_specific/QPS/win-amd64/whats-new.txt +24 -13
  77. quarchpy/connection_specific/__pycache__/StreamChannels.cpython-310.pyc +0 -0
  78. quarchpy/connection_specific/__pycache__/__init__.cpython-310.pyc +0 -0
  79. quarchpy/connection_specific/__pycache__/connection_QIS.cpython-310.pyc +0 -0
  80. quarchpy/connection_specific/__pycache__/connection_QPS.cpython-310.pyc +0 -0
  81. quarchpy/connection_specific/__pycache__/connection_ReST.cpython-310.pyc +0 -0
  82. quarchpy/connection_specific/__pycache__/connection_Serial.cpython-310.pyc +0 -0
  83. quarchpy/connection_specific/__pycache__/connection_TCP.cpython-310.pyc +0 -0
  84. quarchpy/connection_specific/__pycache__/connection_USB.cpython-310.pyc +0 -0
  85. quarchpy/connection_specific/__pycache__/mDNS.cpython-310.pyc +0 -0
  86. quarchpy/connection_specific/connection_QPS.py +4 -2
  87. quarchpy/connection_specific/jdk_jres/__pycache__/__init__.cpython-310.pyc +0 -0
  88. quarchpy/connection_specific/jdk_jres/__pycache__/fix_permissions.cpython-310.pyc +0 -0
  89. quarchpy/connection_specific/jdk_jres/fix_permissions.py +70 -0
  90. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/bin/java +0 -0
  91. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/bin/jfr +0 -0
  92. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/bin/jrunscript +0 -0
  93. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/bin/jwebserver +0 -0
  94. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/bin/keytool +0 -0
  95. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/bin/rmiregistry +0 -0
  96. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/conf/jaxp-strict.properties.template +123 -0
  97. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/conf/jaxp.properties +200 -0
  98. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/conf/logging.properties +63 -0
  99. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/conf/management/management.properties +326 -0
  100. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/conf/net.properties +162 -0
  101. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/conf/security/java.security +1517 -0
  102. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.base/asm.md +36 -0
  103. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.base/cldr.md +100 -0
  104. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.base/icu.md +93 -0
  105. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.base/public_suffix.md +399 -0
  106. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.base/unicode.md +269 -0
  107. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.desktop/freetype.md +649 -0
  108. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.desktop/giflib.md +46 -0
  109. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.smartcardio/pcsclite.md +57 -0
  110. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.xml/schema10part1.md +51 -0
  111. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.xml/schema10part2.md +50 -0
  112. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.xml/xalan.md +255 -0
  113. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.xml/xhtml10.md +57 -0
  114. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.xml/xhtml10schema.md +150 -0
  115. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.xml/xhtml11.md +68 -0
  116. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.xml/xhtml11schema.md +60 -0
  117. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.xml/xmlspec.md +63 -0
  118. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/java.xml/xmlxsd.md +43 -0
  119. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/jdk.crypto.cryptoki/pkcs11cryptotoken.md +76 -0
  120. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/jdk.incubator.vector/sleef.md +439 -0
  121. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/legal/jdk.localedata/cldr.md +100 -0
  122. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/classlist +1587 -0
  123. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/jexec +0 -0
  124. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/jfr/default.jfc +1152 -0
  125. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/jfr/profile.jfc +1151 -0
  126. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/jrt-fs.jar +0 -0
  127. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/jspawnhelper +0 -0
  128. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libawt.so +0 -0
  129. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libawt_headless.so +0 -0
  130. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libawt_xawt.so +0 -0
  131. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libdt_socket.so +0 -0
  132. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libextnet.so +0 -0
  133. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libfontmanager.so +0 -0
  134. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libfreetype.so +0 -0
  135. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libinstrument.so +0 -0
  136. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libj2gss.so +0 -0
  137. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libj2pcsc.so +0 -0
  138. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libj2pkcs11.so +0 -0
  139. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libjaas.so +0 -0
  140. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libjava.so +0 -0
  141. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libjavajpeg.so +0 -0
  142. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libjawt.so +0 -0
  143. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libjdwp.so +0 -0
  144. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libjimage.so +0 -0
  145. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libjli.so +0 -0
  146. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libjsig.so +0 -0
  147. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libjsound.so +0 -0
  148. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libjsvml.so +0 -0
  149. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/liblcms.so +0 -0
  150. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libmanagement.so +0 -0
  151. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libmanagement_agent.so +0 -0
  152. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libmanagement_ext.so +0 -0
  153. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libmlib_image.so +0 -0
  154. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libnet.so +0 -0
  155. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libnio.so +0 -0
  156. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libprefs.so +0 -0
  157. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/librmi.so +0 -0
  158. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libsctp.so +0 -0
  159. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libsimdsort.so +0 -0
  160. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libsplashscreen.so +0 -0
  161. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libsyslookup.so +0 -0
  162. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libverify.so +0 -0
  163. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/libzip.so +0 -0
  164. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/modules +0 -0
  165. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/psfontj2d.properties +323 -0
  166. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/security/public_suffix_list.dat +0 -0
  167. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/server/libjsig.so +0 -0
  168. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/server/libjvm.so +0 -0
  169. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/lib/tzdb.dat +0 -0
  170. quarchpy/connection_specific/jdk_jres/lin_amd64_jdk_jre/release +2 -0
  171. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/bin/java +0 -0
  172. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/bin/jfr +0 -0
  173. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/bin/jrunscript +0 -0
  174. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/bin/jwebserver +0 -0
  175. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/bin/keytool +0 -0
  176. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/bin/rmiregistry +0 -0
  177. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/conf/jaxp-strict.properties.template +123 -0
  178. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/conf/jaxp.properties +200 -0
  179. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/conf/logging.properties +63 -0
  180. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/conf/management/management.properties +326 -0
  181. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/conf/net.properties +162 -0
  182. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/conf/security/java.security +1518 -0
  183. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.base/asm.md +36 -0
  184. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.base/cldr.md +100 -0
  185. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.base/icu.md +93 -0
  186. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.base/public_suffix.md +399 -0
  187. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.base/unicode.md +269 -0
  188. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.desktop/freetype.md +649 -0
  189. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.desktop/giflib.md +46 -0
  190. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.smartcardio/pcsclite.md +57 -0
  191. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.xml/schema10part1.md +51 -0
  192. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.xml/schema10part2.md +50 -0
  193. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.xml/xalan.md +255 -0
  194. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.xml/xhtml10.md +57 -0
  195. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.xml/xhtml10schema.md +150 -0
  196. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.xml/xhtml11.md +68 -0
  197. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.xml/xhtml11schema.md +60 -0
  198. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.xml/xmlspec.md +63 -0
  199. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/java.xml/xmlxsd.md +43 -0
  200. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/jdk.crypto.cryptoki/pkcs11cryptotoken.md +76 -0
  201. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/legal/jdk.localedata/cldr.md +100 -0
  202. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/classlist +1589 -0
  203. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/jfr/default.jfc +1152 -0
  204. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/jfr/profile.jfc +1151 -0
  205. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/jrt-fs.jar +0 -0
  206. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/jspawnhelper +0 -0
  207. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libawt.dylib +0 -0
  208. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libawt_lwawt.dylib +0 -0
  209. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libdt_socket.dylib +0 -0
  210. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libextnet.dylib +0 -0
  211. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libfontmanager.dylib +0 -0
  212. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libfreetype.dylib +0 -0
  213. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libinstrument.dylib +0 -0
  214. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libj2gss.dylib +0 -0
  215. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libj2pcsc.dylib +0 -0
  216. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libj2pkcs11.dylib +0 -0
  217. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libjaas.dylib +0 -0
  218. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libjava.dylib +0 -0
  219. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libjavajpeg.dylib +0 -0
  220. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libjawt.dylib +0 -0
  221. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libjdwp.dylib +0 -0
  222. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libjimage.dylib +0 -0
  223. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libjli.dylib +0 -0
  224. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libjsig.dylib +0 -0
  225. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libjsound.dylib +0 -0
  226. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/liblcms.dylib +0 -0
  227. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libmanagement.dylib +0 -0
  228. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libmanagement_agent.dylib +0 -0
  229. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libmanagement_ext.dylib +0 -0
  230. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libmlib_image.dylib +0 -0
  231. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libnet.dylib +0 -0
  232. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libnio.dylib +0 -0
  233. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libosx.dylib +0 -0
  234. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libosxapp.dylib +0 -0
  235. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libosxkrb5.dylib +0 -0
  236. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libosxsecurity.dylib +0 -0
  237. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libosxui.dylib +0 -0
  238. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libprefs.dylib +0 -0
  239. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/librmi.dylib +0 -0
  240. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libsplashscreen.dylib +0 -0
  241. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libsyslookup.dylib +0 -0
  242. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libverify.dylib +0 -0
  243. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/libzip.dylib +0 -0
  244. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/modules +0 -0
  245. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/psfontj2d.properties +323 -0
  246. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/security/public_suffix_list.dat +0 -0
  247. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/server/libjsig.dylib +0 -0
  248. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/server/libjvm.dylib +0 -0
  249. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/shaders.metallib +0 -0
  250. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/lib/tzdb.dat +0 -0
  251. quarchpy/connection_specific/jdk_jres/mac_amd64_jdk_jre/release +2 -0
  252. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-console-l1-1-0.dll +0 -0
  253. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-datetime-l1-1-0.dll +0 -0
  254. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-debug-l1-1-0.dll +0 -0
  255. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-errorhandling-l1-1-0.dll +0 -0
  256. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-file-l1-1-0.dll +0 -0
  257. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-file-l1-2-0.dll +0 -0
  258. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-file-l2-1-0.dll +0 -0
  259. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-handle-l1-1-0.dll +0 -0
  260. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-heap-l1-1-0.dll +0 -0
  261. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-interlocked-l1-1-0.dll +0 -0
  262. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-libraryloader-l1-1-0.dll +0 -0
  263. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-localization-l1-2-0.dll +0 -0
  264. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-memory-l1-1-0.dll +0 -0
  265. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-namedpipe-l1-1-0.dll +0 -0
  266. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-processenvironment-l1-1-0.dll +0 -0
  267. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-processthreads-l1-1-0.dll +0 -0
  268. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-processthreads-l1-1-1.dll +0 -0
  269. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-profile-l1-1-0.dll +0 -0
  270. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-rtlsupport-l1-1-0.dll +0 -0
  271. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-string-l1-1-0.dll +0 -0
  272. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-synch-l1-1-0.dll +0 -0
  273. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-synch-l1-2-0.dll +0 -0
  274. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-sysinfo-l1-1-0.dll +0 -0
  275. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-timezone-l1-1-0.dll +0 -0
  276. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-core-util-l1-1-0.dll +0 -0
  277. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-conio-l1-1-0.dll +0 -0
  278. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-convert-l1-1-0.dll +0 -0
  279. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-environment-l1-1-0.dll +0 -0
  280. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-filesystem-l1-1-0.dll +0 -0
  281. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-heap-l1-1-0.dll +0 -0
  282. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-locale-l1-1-0.dll +0 -0
  283. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-math-l1-1-0.dll +0 -0
  284. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-multibyte-l1-1-0.dll +0 -0
  285. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-private-l1-1-0.dll +0 -0
  286. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-process-l1-1-0.dll +0 -0
  287. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-runtime-l1-1-0.dll +0 -0
  288. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-stdio-l1-1-0.dll +0 -0
  289. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-string-l1-1-0.dll +0 -0
  290. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-time-l1-1-0.dll +0 -0
  291. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/api-ms-win-crt-utility-l1-1-0.dll +0 -0
  292. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/awt.dll +0 -0
  293. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/dt_socket.dll +0 -0
  294. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/extnet.dll +0 -0
  295. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/fontmanager.dll +0 -0
  296. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/freetype.dll +0 -0
  297. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/instrument.dll +0 -0
  298. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/j2gss.dll +0 -0
  299. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/j2pcsc.dll +0 -0
  300. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/j2pkcs11.dll +0 -0
  301. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jaas.dll +0 -0
  302. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jabswitch.exe +0 -0
  303. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jaccessinspector.exe +0 -0
  304. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jaccesswalker.exe +0 -0
  305. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/java.dll +0 -0
  306. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/java.exe +0 -0
  307. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/javaaccessbridge.dll +0 -0
  308. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/javajpeg.dll +0 -0
  309. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/javaw.exe +0 -0
  310. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jawt.dll +0 -0
  311. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jdwp.dll +0 -0
  312. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jfr.exe +0 -0
  313. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jimage.dll +0 -0
  314. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jli.dll +0 -0
  315. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jrunscript.exe +0 -0
  316. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jsound.dll +0 -0
  317. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jsvml.dll +0 -0
  318. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/jwebserver.exe +0 -0
  319. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/keytool.exe +0 -0
  320. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/kinit.exe +0 -0
  321. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/klist.exe +0 -0
  322. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/ktab.exe +0 -0
  323. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/lcms.dll +0 -0
  324. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/management.dll +0 -0
  325. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/management_agent.dll +0 -0
  326. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/management_ext.dll +0 -0
  327. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/mlib_image.dll +0 -0
  328. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/msvcp140.dll +0 -0
  329. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/net.dll +0 -0
  330. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/nio.dll +0 -0
  331. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/prefs.dll +0 -0
  332. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/rmi.dll +0 -0
  333. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/rmiregistry.exe +0 -0
  334. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/server/jvm.dll +0 -0
  335. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/splashscreen.dll +0 -0
  336. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/sspi_bridge.dll +0 -0
  337. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/syslookup.dll +0 -0
  338. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/ucrtbase.dll +0 -0
  339. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/vcruntime140.dll +0 -0
  340. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/vcruntime140_1.dll +0 -0
  341. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/verify.dll +0 -0
  342. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/w2k_lsa_auth.dll +0 -0
  343. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/windowsaccessbridge-64.dll +0 -0
  344. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/bin/zip.dll +0 -0
  345. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/conf/jaxp-strict.properties.template +123 -0
  346. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/conf/jaxp.properties +200 -0
  347. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/conf/logging.properties +63 -0
  348. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/conf/management/management.properties +326 -0
  349. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/conf/net.properties +166 -0
  350. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/conf/security/java.security +1518 -0
  351. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.base/asm.md +36 -0
  352. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.base/cldr.md +100 -0
  353. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.base/icu.md +93 -0
  354. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.base/public_suffix.md +399 -0
  355. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.base/unicode.md +269 -0
  356. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.compiler/ADDITIONAL_LICENSE_INFO +1 -0
  357. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.compiler/ASSEMBLY_EXCEPTION +1 -0
  358. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.compiler/LICENSE +1 -0
  359. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.datatransfer/ADDITIONAL_LICENSE_INFO +1 -0
  360. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.datatransfer/ASSEMBLY_EXCEPTION +1 -0
  361. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.datatransfer/LICENSE +1 -0
  362. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.desktop/ADDITIONAL_LICENSE_INFO +1 -0
  363. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.desktop/ASSEMBLY_EXCEPTION +1 -0
  364. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.desktop/LICENSE +1 -0
  365. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.desktop/freetype.md +649 -0
  366. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.desktop/giflib.md +46 -0
  367. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.instrument/ADDITIONAL_LICENSE_INFO +1 -0
  368. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.instrument/ASSEMBLY_EXCEPTION +1 -0
  369. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.instrument/LICENSE +1 -0
  370. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.logging/ADDITIONAL_LICENSE_INFO +1 -0
  371. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.logging/ASSEMBLY_EXCEPTION +1 -0
  372. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.logging/LICENSE +1 -0
  373. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.management/ADDITIONAL_LICENSE_INFO +1 -0
  374. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.management/ASSEMBLY_EXCEPTION +1 -0
  375. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.management/LICENSE +1 -0
  376. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.management.rmi/ADDITIONAL_LICENSE_INFO +1 -0
  377. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.management.rmi/ASSEMBLY_EXCEPTION +1 -0
  378. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.management.rmi/LICENSE +1 -0
  379. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.naming/ADDITIONAL_LICENSE_INFO +1 -0
  380. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.naming/ASSEMBLY_EXCEPTION +1 -0
  381. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.naming/LICENSE +1 -0
  382. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.net.http/ADDITIONAL_LICENSE_INFO +1 -0
  383. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.net.http/ASSEMBLY_EXCEPTION +1 -0
  384. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.net.http/LICENSE +1 -0
  385. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.prefs/ADDITIONAL_LICENSE_INFO +1 -0
  386. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.prefs/ASSEMBLY_EXCEPTION +1 -0
  387. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.prefs/LICENSE +1 -0
  388. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.rmi/ADDITIONAL_LICENSE_INFO +1 -0
  389. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.rmi/ASSEMBLY_EXCEPTION +1 -0
  390. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.rmi/LICENSE +1 -0
  391. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.scripting/ADDITIONAL_LICENSE_INFO +1 -0
  392. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.scripting/ASSEMBLY_EXCEPTION +1 -0
  393. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.scripting/LICENSE +1 -0
  394. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.se/ADDITIONAL_LICENSE_INFO +1 -0
  395. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.se/ASSEMBLY_EXCEPTION +1 -0
  396. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.se/LICENSE +1 -0
  397. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.security.jgss/ADDITIONAL_LICENSE_INFO +1 -0
  398. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.security.jgss/ASSEMBLY_EXCEPTION +1 -0
  399. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.security.jgss/LICENSE +1 -0
  400. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.security.sasl/ADDITIONAL_LICENSE_INFO +1 -0
  401. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.security.sasl/ASSEMBLY_EXCEPTION +1 -0
  402. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.security.sasl/LICENSE +1 -0
  403. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.smartcardio/ADDITIONAL_LICENSE_INFO +1 -0
  404. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.smartcardio/ASSEMBLY_EXCEPTION +1 -0
  405. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.smartcardio/LICENSE +1 -0
  406. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.sql/ADDITIONAL_LICENSE_INFO +1 -0
  407. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.sql/ASSEMBLY_EXCEPTION +1 -0
  408. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.sql/LICENSE +1 -0
  409. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.sql.rowset/ADDITIONAL_LICENSE_INFO +1 -0
  410. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.sql.rowset/ASSEMBLY_EXCEPTION +1 -0
  411. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.sql.rowset/LICENSE +1 -0
  412. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.transaction.xa/ADDITIONAL_LICENSE_INFO +1 -0
  413. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.transaction.xa/ASSEMBLY_EXCEPTION +1 -0
  414. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.transaction.xa/LICENSE +1 -0
  415. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/ADDITIONAL_LICENSE_INFO +1 -0
  416. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/ASSEMBLY_EXCEPTION +1 -0
  417. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/LICENSE +1 -0
  418. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/schema10part1.md +51 -0
  419. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/schema10part2.md +50 -0
  420. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/xalan.md +255 -0
  421. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/xhtml10.md +57 -0
  422. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/xhtml10schema.md +150 -0
  423. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/xhtml11.md +68 -0
  424. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/xhtml11schema.md +60 -0
  425. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/xmlspec.md +63 -0
  426. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml/xmlxsd.md +43 -0
  427. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml.crypto/ADDITIONAL_LICENSE_INFO +1 -0
  428. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml.crypto/ASSEMBLY_EXCEPTION +1 -0
  429. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/java.xml.crypto/LICENSE +1 -0
  430. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.accessibility/ADDITIONAL_LICENSE_INFO +1 -0
  431. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.accessibility/ASSEMBLY_EXCEPTION +1 -0
  432. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.accessibility/LICENSE +1 -0
  433. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.charsets/ADDITIONAL_LICENSE_INFO +1 -0
  434. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.charsets/ASSEMBLY_EXCEPTION +1 -0
  435. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.charsets/LICENSE +1 -0
  436. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.crypto.cryptoki/ADDITIONAL_LICENSE_INFO +1 -0
  437. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.crypto.cryptoki/ASSEMBLY_EXCEPTION +1 -0
  438. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.crypto.cryptoki/LICENSE +1 -0
  439. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.crypto.cryptoki/pkcs11cryptotoken.md +76 -0
  440. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.crypto.ec/ADDITIONAL_LICENSE_INFO +1 -0
  441. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.crypto.ec/ASSEMBLY_EXCEPTION +1 -0
  442. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.crypto.ec/LICENSE +1 -0
  443. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.dynalink/ADDITIONAL_LICENSE_INFO +1 -0
  444. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.dynalink/ASSEMBLY_EXCEPTION +1 -0
  445. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.dynalink/LICENSE +1 -0
  446. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.httpserver/ADDITIONAL_LICENSE_INFO +1 -0
  447. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.httpserver/ASSEMBLY_EXCEPTION +1 -0
  448. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.httpserver/LICENSE +1 -0
  449. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.incubator.vector/ADDITIONAL_LICENSE_INFO +1 -0
  450. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.incubator.vector/ASSEMBLY_EXCEPTION +1 -0
  451. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.incubator.vector/LICENSE +1 -0
  452. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.internal.vm.ci/ADDITIONAL_LICENSE_INFO +1 -0
  453. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.internal.vm.ci/ASSEMBLY_EXCEPTION +1 -0
  454. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.internal.vm.ci/LICENSE +1 -0
  455. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.jdwp.agent/ADDITIONAL_LICENSE_INFO +1 -0
  456. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.jdwp.agent/ASSEMBLY_EXCEPTION +1 -0
  457. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.jdwp.agent/LICENSE +1 -0
  458. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.jfr/ADDITIONAL_LICENSE_INFO +1 -0
  459. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.jfr/ASSEMBLY_EXCEPTION +1 -0
  460. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.jfr/LICENSE +1 -0
  461. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.jsobject/ADDITIONAL_LICENSE_INFO +1 -0
  462. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.jsobject/ASSEMBLY_EXCEPTION +1 -0
  463. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.jsobject/LICENSE +1 -0
  464. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.localedata/ADDITIONAL_LICENSE_INFO +1 -0
  465. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.localedata/ASSEMBLY_EXCEPTION +1 -0
  466. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.localedata/LICENSE +1 -0
  467. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.localedata/cldr.md +1 -0
  468. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.management/ADDITIONAL_LICENSE_INFO +1 -0
  469. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.management/ASSEMBLY_EXCEPTION +1 -0
  470. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.management/LICENSE +1 -0
  471. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.management.agent/ADDITIONAL_LICENSE_INFO +1 -0
  472. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.management.agent/ASSEMBLY_EXCEPTION +1 -0
  473. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.management.agent/LICENSE +1 -0
  474. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.management.jfr/ADDITIONAL_LICENSE_INFO +1 -0
  475. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.management.jfr/ASSEMBLY_EXCEPTION +1 -0
  476. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.management.jfr/LICENSE +1 -0
  477. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.naming.dns/ADDITIONAL_LICENSE_INFO +1 -0
  478. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.naming.dns/ASSEMBLY_EXCEPTION +1 -0
  479. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.naming.dns/LICENSE +1 -0
  480. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.naming.rmi/ADDITIONAL_LICENSE_INFO +1 -0
  481. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.naming.rmi/ASSEMBLY_EXCEPTION +1 -0
  482. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.naming.rmi/LICENSE +1 -0
  483. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.net/ADDITIONAL_LICENSE_INFO +1 -0
  484. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.net/ASSEMBLY_EXCEPTION +1 -0
  485. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.net/LICENSE +1 -0
  486. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.nio.mapmode/ADDITIONAL_LICENSE_INFO +1 -0
  487. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.nio.mapmode/ASSEMBLY_EXCEPTION +1 -0
  488. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.nio.mapmode/LICENSE +1 -0
  489. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.sctp/ADDITIONAL_LICENSE_INFO +1 -0
  490. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.sctp/ASSEMBLY_EXCEPTION +1 -0
  491. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.sctp/LICENSE +1 -0
  492. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.security.auth/ADDITIONAL_LICENSE_INFO +1 -0
  493. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.security.auth/ASSEMBLY_EXCEPTION +1 -0
  494. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.security.auth/LICENSE +1 -0
  495. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.security.jgss/ADDITIONAL_LICENSE_INFO +1 -0
  496. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.security.jgss/ASSEMBLY_EXCEPTION +1 -0
  497. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.security.jgss/LICENSE +1 -0
  498. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.unsupported/ADDITIONAL_LICENSE_INFO +1 -0
  499. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.unsupported/ASSEMBLY_EXCEPTION +1 -0
  500. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.unsupported/LICENSE +1 -0
  501. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.unsupported.desktop/ADDITIONAL_LICENSE_INFO +1 -0
  502. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.unsupported.desktop/ASSEMBLY_EXCEPTION +1 -0
  503. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.unsupported.desktop/LICENSE +1 -0
  504. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.xml.dom/ADDITIONAL_LICENSE_INFO +1 -0
  505. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.xml.dom/ASSEMBLY_EXCEPTION +1 -0
  506. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.xml.dom/LICENSE +1 -0
  507. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.zipfs/ADDITIONAL_LICENSE_INFO +1 -0
  508. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.zipfs/ASSEMBLY_EXCEPTION +1 -0
  509. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/legal/jdk.zipfs/LICENSE +1 -0
  510. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/classlist +1601 -0
  511. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/jawt.lib +0 -0
  512. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/jfr/default.jfc +1152 -0
  513. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/jfr/profile.jfc +1151 -0
  514. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/jrt-fs.jar +0 -0
  515. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/jvm.lib +0 -0
  516. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/modules +0 -0
  517. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/psfontj2d.properties +323 -0
  518. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/security/blocked.certs +39 -0
  519. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/security/public_suffix_list.dat +0 -0
  520. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/tzdb.dat +0 -0
  521. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/lib/tzmappings +361 -0
  522. quarchpy/connection_specific/jdk_jres/win_amd64_jdk_jre/release +2 -0
  523. quarchpy/connection_specific/serial/__pycache__/__init__.cpython-310.pyc +0 -0
  524. quarchpy/connection_specific/serial/__pycache__/serialposix.cpython-310.pyc +0 -0
  525. quarchpy/connection_specific/serial/__pycache__/serialutil.cpython-310.pyc +0 -0
  526. quarchpy/connection_specific/serial/tools/__pycache__/__init__.cpython-310.pyc +0 -0
  527. quarchpy/connection_specific/serial/tools/__pycache__/list_ports.cpython-310.pyc +0 -0
  528. quarchpy/connection_specific/serial/tools/__pycache__/list_ports_common.cpython-310.pyc +0 -0
  529. quarchpy/connection_specific/serial/tools/__pycache__/list_ports_linux.cpython-310.pyc +0 -0
  530. quarchpy/connection_specific/serial/tools/__pycache__/list_ports_posix.cpython-310.pyc +0 -0
  531. quarchpy/debug/SystemTest.py +40 -33
  532. quarchpy/debug/__pycache__/SystemTest.cpython-310.pyc +0 -0
  533. quarchpy/debug/__pycache__/__init__.cpython-310.pyc +0 -0
  534. quarchpy/debug/__pycache__/versionCompare.cpython-310.pyc +0 -0
  535. quarchpy/device/__pycache__/__init__.cpython-310.pyc +0 -0
  536. quarchpy/device/__pycache__/device.cpython-310.pyc +0 -0
  537. quarchpy/device/__pycache__/quarchArray.cpython-310.pyc +0 -0
  538. quarchpy/device/__pycache__/quarchPPM.cpython-310.pyc +0 -0
  539. quarchpy/device/__pycache__/quarchQPS.cpython-310.pyc +0 -0
  540. quarchpy/device/__pycache__/scanDevices.cpython-310.pyc +0 -0
  541. quarchpy/device/device.py +9 -1
  542. quarchpy/device/quarchPPM.py +367 -109
  543. quarchpy/device/quarchQPS.py +762 -328
  544. quarchpy/device/scanDevices.py +112 -101
  545. quarchpy/disk_test/__pycache__/AbsDiskFinder.cpython-310.pyc +0 -0
  546. quarchpy/disk_test/__pycache__/DiskTargetSelection.cpython-310.pyc +0 -0
  547. quarchpy/disk_test/__pycache__/__init__.cpython-310.pyc +0 -0
  548. quarchpy/disk_test/__pycache__/iometerDiskFinder.cpython-310.pyc +0 -0
  549. quarchpy/docs/CHANGES.rst +9 -0
  550. quarchpy/fio/__pycache__/FIO_interface.cpython-310.pyc +0 -0
  551. quarchpy/fio/__pycache__/__init__.cpython-310.pyc +0 -0
  552. quarchpy/iometer/__pycache__/__init__.cpython-310.pyc +0 -0
  553. quarchpy/iometer/__pycache__/gen_iometer_template.cpython-310.pyc +0 -0
  554. quarchpy/iometer/__pycache__/iometerFuncs.cpython-310.pyc +0 -0
  555. quarchpy/qis/__pycache__/StreamHeaderInfo.cpython-310.pyc +0 -0
  556. quarchpy/qis/__pycache__/__init__.cpython-310.pyc +0 -0
  557. quarchpy/qis/__pycache__/qisFuncs.cpython-310.pyc +0 -0
  558. quarchpy/qis/qisFuncs.py +13 -9
  559. quarchpy/qps/__pycache__/__init__.cpython-310.pyc +0 -0
  560. quarchpy/qps/__pycache__/qpsFuncs.cpython-310.pyc +0 -0
  561. quarchpy/qps/qpsFuncs.py +10 -10
  562. quarchpy/user_interface/__pycache__/__init__.cpython-310.pyc +0 -0
  563. quarchpy/user_interface/__pycache__/user_interface.cpython-310.pyc +0 -0
  564. quarchpy/utilities/TestCenter.py +58 -34
  565. quarchpy/utilities/__pycache__/TestCenter.cpython-310.pyc +0 -0
  566. quarchpy/utilities/__pycache__/TimeValue.cpython-310.pyc +0 -0
  567. quarchpy/utilities/__pycache__/__init__.cpython-310.pyc +0 -0
  568. quarchpy-2.2.10.dist-info/METADATA +475 -0
  569. quarchpy-2.2.10.dist-info/RECORD +1618 -0
  570. quarchpy/connection_specific/QPS/win-amd64/License/Material-Icons-license.txt +0 -51
  571. quarchpy/connection_specific/QPS/win-amd64/License/Netty-license.txt +0 -143
  572. quarchpy/connection_specific/QPS/win-amd64/License/argparse4j-license.txt +0 -25
  573. quarchpy/connection_specific/QPS/win-amd64/License/controlsfx-license.txt +0 -26
  574. quarchpy/connection_specific/QPS/win-amd64/License/usb4java-license.txt +0 -167
  575. quarchpy/connection_specific/QPS/win-amd64/launchQPSJ21.bat +0 -4
  576. quarchpy/connection_specific/QPS/win-amd64/launchQPSJ21.sh +0 -4
  577. quarchpy/connection_specific/QPS/win-amd64/qis/License/LGPL.txt +0 -167
  578. quarchpy/connection_specific/QPS/win-amd64/qis/License/LICENSE.txt +0 -202
  579. quarchpy/connection_specific/QPS/win-amd64/qis/License/NOTICE.txt +0 -143
  580. quarchpy/connection_specific/QPS/win-amd64/qis/qis_lib/CInterface-2.3.jar +0 -0
  581. quarchpy/connection_specific/QPS/win-amd64/qis/qis_lib/QuarchCommon-2.0.jar +0 -0
  582. quarchpy/connection_specific/QPS/win-amd64/qis/qis_lib/TorridonCommon-1.0.jar +0 -0
  583. quarchpy/connection_specific/QPS/win-amd64/qps_lib/QuarchCommon-2.0.jar +0 -0
  584. quarchpy/connection_specific/QPS/win-amd64/qps_lib/controlsfx-11.2.1.jar +0 -0
  585. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-x64/javafx-base-21.0.5-linux.jar +0 -0
  586. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-x64/javafx-controls-21.0.5-linux.jar +0 -0
  587. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-x64/javafx-fxml-21.0.5-linux.jar +0 -0
  588. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-x64/javafx-graphics-21.0.5-linux.jar +0 -0
  589. quarchpy/connection_specific/QPS/win-amd64/qps_lib/lin-x64/javafx-swing-21.0.5-linux.jar +0 -0
  590. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-arm64/javafx-base-21.0.5-mac-aarch64.jar +0 -0
  591. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-arm64/javafx-controls-21.0.5-mac-aarch64.jar +0 -0
  592. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-arm64/javafx-fxml-21.0.5-mac-aarch64.jar +0 -0
  593. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-arm64/javafx-graphics-21.0.5-mac-aarch64.jar +0 -0
  594. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-arm64/javafx-swing-21.0.5-mac-aarch64.jar +0 -0
  595. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-x64/javafx-base-21.0.5-mac.jar +0 -0
  596. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-x64/javafx-controls-21.0.5-mac.jar +0 -0
  597. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-x64/javafx-fxml-21.0.5-mac.jar +0 -0
  598. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-x64/javafx-graphics-21.0.5-mac.jar +0 -0
  599. quarchpy/connection_specific/QPS/win-amd64/qps_lib/mac-x64/javafx-swing-21.0.5-mac.jar +0 -0
  600. quarchpy/connection_specific/QPS/win-amd64/qps_lib/win-x64/javafx-base-21.0.5-win.jar +0 -0
  601. quarchpy/connection_specific/QPS/win-amd64/qps_lib/win-x64/javafx-controls-21.0.5-win.jar +0 -0
  602. quarchpy/connection_specific/QPS/win-amd64/qps_lib/win-x64/javafx-fxml-21.0.5-win.jar +0 -0
  603. quarchpy/connection_specific/QPS/win-amd64/qps_lib/win-x64/javafx-graphics-21.0.5-win.jar +0 -0
  604. quarchpy/connection_specific/QPS/win-amd64/qps_lib/win-x64/javafx-swing-21.0.5-win.jar +0 -0
  605. quarchpy/connection_specific/jdk_j21_jres/__pycache__/__init__.cpython-310.pyc +0 -0
  606. quarchpy/connection_specific/jdk_j21_jres/__pycache__/fix_permissions.cpython-310.pyc +0 -0
  607. quarchpy/connection_specific/jdk_j21_jres/fix_permissions.py +0 -70
  608. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/bin/java +0 -0
  609. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/bin/jfr +0 -0
  610. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/bin/jrunscript +0 -0
  611. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/bin/jwebserver +0 -0
  612. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/bin/keytool +0 -0
  613. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/bin/rmiregistry +0 -0
  614. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/conf/jaxp.properties +0 -180
  615. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/conf/logging.properties +0 -63
  616. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/conf/management/management.properties +0 -327
  617. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/conf/net.properties +0 -164
  618. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/conf/security/java.policy +0 -46
  619. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/conf/security/java.security +0 -1509
  620. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/legal/java.base/asm.md +0 -36
  621. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/legal/java.base/cldr.md +0 -109
  622. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/legal/java.base/icu.md +0 -518
  623. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/legal/java.base/public_suffix.md +0 -399
  624. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/legal/java.base/unicode.md +0 -103
  625. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/legal/java.desktop/freetype.md +0 -649
  626. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/legal/java.desktop/giflib.md +0 -50
  627. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/legal/java.smartcardio/pcsclite.md +0 -57
  628. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/legal/java.xml/xalan.md +0 -255
  629. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.crypto.cryptoki/pkcs11cryptotoken.md +0 -72
  630. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.localedata/cldr.md +0 -109
  631. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/classlist +0 -1502
  632. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/jexec +0 -0
  633. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/jfr/default.jfc +0 -1126
  634. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/jfr/profile.jfc +0 -1126
  635. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/jrt-fs.jar +0 -0
  636. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/jspawnhelper +0 -0
  637. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libawt.so +0 -0
  638. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libawt_headless.so +0 -0
  639. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libawt_xawt.so +0 -0
  640. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libdt_socket.so +0 -0
  641. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libextnet.so +0 -0
  642. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libfontmanager.so +0 -0
  643. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libfreetype.so +0 -0
  644. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libinstrument.so +0 -0
  645. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libj2gss.so +0 -0
  646. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libj2pcsc.so +0 -0
  647. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libj2pkcs11.so +0 -0
  648. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libjaas.so +0 -0
  649. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libjava.so +0 -0
  650. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libjavajpeg.so +0 -0
  651. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libjawt.so +0 -0
  652. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libjdwp.so +0 -0
  653. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libjimage.so +0 -0
  654. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libjli.so +0 -0
  655. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libjsig.so +0 -0
  656. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libjsound.so +0 -0
  657. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libjsvml.so +0 -0
  658. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/liblcms.so +0 -0
  659. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libmanagement.so +0 -0
  660. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libmanagement_agent.so +0 -0
  661. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libmanagement_ext.so +0 -0
  662. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libmlib_image.so +0 -0
  663. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libnet.so +0 -0
  664. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libnio.so +0 -0
  665. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libprefs.so +0 -0
  666. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/librmi.so +0 -0
  667. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libsctp.so +0 -0
  668. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libsplashscreen.so +0 -0
  669. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libsyslookup.so +0 -0
  670. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libverify.so +0 -0
  671. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/libzip.so +0 -0
  672. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/modules +0 -0
  673. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/psfontj2d.properties +0 -323
  674. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/security/default.policy +0 -235
  675. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/security/public_suffix_list.dat +0 -0
  676. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/server/libjsig.so +0 -0
  677. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/server/libjvm.so +0 -0
  678. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/lib/tzdb.dat +0 -0
  679. quarchpy/connection_specific/jdk_j21_jres/lin_amd64_jdk_21_jre/release +0 -2
  680. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/bin/java +0 -0
  681. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/bin/jfr +0 -0
  682. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/bin/jrunscript +0 -0
  683. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/bin/jwebserver +0 -0
  684. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/bin/keytool +0 -0
  685. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/bin/rmiregistry +0 -0
  686. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/conf/jaxp.properties +0 -180
  687. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/conf/logging.properties +0 -63
  688. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/conf/management/management.properties +0 -327
  689. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/conf/net.properties +0 -164
  690. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/conf/security/java.policy +0 -46
  691. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/conf/security/java.security +0 -1510
  692. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.base/asm.md +0 -36
  693. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.base/cldr.md +0 -109
  694. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.base/icu.md +0 -518
  695. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.base/public_suffix.md +0 -399
  696. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.base/unicode.md +0 -103
  697. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.desktop/freetype.md +0 -649
  698. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.desktop/giflib.md +0 -50
  699. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.smartcardio/pcsclite.md +0 -57
  700. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.xml/xalan.md +0 -255
  701. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.crypto.cryptoki/pkcs11cryptotoken.md +0 -72
  702. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.localedata/cldr.md +0 -109
  703. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.unsupported/ADDITIONAL_LICENSE_INFO +0 -37
  704. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.unsupported/ASSEMBLY_EXCEPTION +0 -27
  705. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.unsupported/LICENSE +0 -347
  706. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.xml.dom/ADDITIONAL_LICENSE_INFO +0 -37
  707. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.xml.dom/ASSEMBLY_EXCEPTION +0 -27
  708. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.xml.dom/LICENSE +0 -347
  709. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.zipfs/ADDITIONAL_LICENSE_INFO +0 -37
  710. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.zipfs/ASSEMBLY_EXCEPTION +0 -27
  711. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.zipfs/LICENSE +0 -347
  712. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/classlist +0 -1497
  713. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/jfr/default.jfc +0 -1126
  714. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/jfr/profile.jfc +0 -1126
  715. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/jrt-fs.jar +0 -0
  716. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/jspawnhelper +0 -0
  717. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libawt.dylib +0 -0
  718. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libawt_lwawt.dylib +0 -0
  719. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libdt_socket.dylib +0 -0
  720. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libextnet.dylib +0 -0
  721. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libfontmanager.dylib +0 -0
  722. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libfreetype.dylib +0 -0
  723. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libinstrument.dylib +0 -0
  724. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libj2gss.dylib +0 -0
  725. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libj2pcsc.dylib +0 -0
  726. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libj2pkcs11.dylib +0 -0
  727. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libjaas.dylib +0 -0
  728. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libjava.dylib +0 -0
  729. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libjavajpeg.dylib +0 -0
  730. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libjawt.dylib +0 -0
  731. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libjdwp.dylib +0 -0
  732. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libjimage.dylib +0 -0
  733. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libjli.dylib +0 -0
  734. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libjsig.dylib +0 -0
  735. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libjsound.dylib +0 -0
  736. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/liblcms.dylib +0 -0
  737. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libmanagement.dylib +0 -0
  738. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libmanagement_agent.dylib +0 -0
  739. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libmanagement_ext.dylib +0 -0
  740. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libmlib_image.dylib +0 -0
  741. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libnet.dylib +0 -0
  742. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libnio.dylib +0 -0
  743. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libosx.dylib +0 -0
  744. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libosxapp.dylib +0 -0
  745. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libosxkrb5.dylib +0 -0
  746. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libosxsecurity.dylib +0 -0
  747. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libosxui.dylib +0 -0
  748. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libprefs.dylib +0 -0
  749. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/librmi.dylib +0 -0
  750. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libsplashscreen.dylib +0 -0
  751. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libsyslookup.dylib +0 -0
  752. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libverify.dylib +0 -0
  753. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/libzip.dylib +0 -0
  754. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/modules +0 -0
  755. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/psfontj2d.properties +0 -323
  756. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/security/default.policy +0 -235
  757. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/security/public_suffix_list.dat +0 -0
  758. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/server/libjsig.dylib +0 -0
  759. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/server/libjvm.dylib +0 -0
  760. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/shaders.metallib +0 -0
  761. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/lib/tzdb.dat +0 -0
  762. quarchpy/connection_specific/jdk_j21_jres/mac_amd64_jdk_21_jre/release +0 -2
  763. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-console-l1-1-0.dll +0 -0
  764. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-datetime-l1-1-0.dll +0 -0
  765. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-debug-l1-1-0.dll +0 -0
  766. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-errorhandling-l1-1-0.dll +0 -0
  767. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-file-l1-1-0.dll +0 -0
  768. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-file-l1-2-0.dll +0 -0
  769. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-file-l2-1-0.dll +0 -0
  770. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-handle-l1-1-0.dll +0 -0
  771. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-heap-l1-1-0.dll +0 -0
  772. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-interlocked-l1-1-0.dll +0 -0
  773. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-libraryloader-l1-1-0.dll +0 -0
  774. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-localization-l1-2-0.dll +0 -0
  775. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-memory-l1-1-0.dll +0 -0
  776. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-namedpipe-l1-1-0.dll +0 -0
  777. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-processenvironment-l1-1-0.dll +0 -0
  778. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-processthreads-l1-1-0.dll +0 -0
  779. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-processthreads-l1-1-1.dll +0 -0
  780. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-profile-l1-1-0.dll +0 -0
  781. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-rtlsupport-l1-1-0.dll +0 -0
  782. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-string-l1-1-0.dll +0 -0
  783. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-synch-l1-1-0.dll +0 -0
  784. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-synch-l1-2-0.dll +0 -0
  785. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-sysinfo-l1-1-0.dll +0 -0
  786. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-timezone-l1-1-0.dll +0 -0
  787. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-core-util-l1-1-0.dll +0 -0
  788. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-conio-l1-1-0.dll +0 -0
  789. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-convert-l1-1-0.dll +0 -0
  790. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-environment-l1-1-0.dll +0 -0
  791. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-filesystem-l1-1-0.dll +0 -0
  792. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-heap-l1-1-0.dll +0 -0
  793. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-locale-l1-1-0.dll +0 -0
  794. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-math-l1-1-0.dll +0 -0
  795. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-multibyte-l1-1-0.dll +0 -0
  796. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-private-l1-1-0.dll +0 -0
  797. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-process-l1-1-0.dll +0 -0
  798. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-runtime-l1-1-0.dll +0 -0
  799. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-stdio-l1-1-0.dll +0 -0
  800. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-string-l1-1-0.dll +0 -0
  801. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-time-l1-1-0.dll +0 -0
  802. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/api-ms-win-crt-utility-l1-1-0.dll +0 -0
  803. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/awt.dll +0 -0
  804. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/dt_socket.dll +0 -0
  805. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/extnet.dll +0 -0
  806. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/fontmanager.dll +0 -0
  807. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/freetype.dll +0 -0
  808. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/instrument.dll +0 -0
  809. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/j2gss.dll +0 -0
  810. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/j2pcsc.dll +0 -0
  811. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/j2pkcs11.dll +0 -0
  812. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jaas.dll +0 -0
  813. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jabswitch.exe +0 -0
  814. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jaccessinspector.exe +0 -0
  815. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jaccesswalker.exe +0 -0
  816. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/java.dll +0 -0
  817. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/java.exe +0 -0
  818. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/javaaccessbridge.dll +0 -0
  819. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/javajpeg.dll +0 -0
  820. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/javaw.exe +0 -0
  821. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jawt.dll +0 -0
  822. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jdwp.dll +0 -0
  823. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jfr.exe +0 -0
  824. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jimage.dll +0 -0
  825. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jli.dll +0 -0
  826. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jrunscript.exe +0 -0
  827. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jsound.dll +0 -0
  828. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jsvml.dll +0 -0
  829. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/jwebserver.exe +0 -0
  830. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/keytool.exe +0 -0
  831. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/kinit.exe +0 -0
  832. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/klist.exe +0 -0
  833. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/ktab.exe +0 -0
  834. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/lcms.dll +0 -0
  835. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/management.dll +0 -0
  836. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/management_agent.dll +0 -0
  837. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/management_ext.dll +0 -0
  838. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/mlib_image.dll +0 -0
  839. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/msvcp140.dll +0 -0
  840. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/net.dll +0 -0
  841. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/nio.dll +0 -0
  842. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/prefs.dll +0 -0
  843. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/rmi.dll +0 -0
  844. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/rmiregistry.exe +0 -0
  845. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/server/jvm.dll +0 -0
  846. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/splashscreen.dll +0 -0
  847. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/sspi_bridge.dll +0 -0
  848. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/syslookup.dll +0 -0
  849. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/ucrtbase.dll +0 -0
  850. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/vcruntime140.dll +0 -0
  851. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/vcruntime140_1.dll +0 -0
  852. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/verify.dll +0 -0
  853. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/w2k_lsa_auth.dll +0 -0
  854. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/windowsaccessbridge-64.dll +0 -0
  855. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/bin/zip.dll +0 -0
  856. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/conf/jaxp.properties +0 -180
  857. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/conf/logging.properties +0 -63
  858. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/conf/management/management.properties +0 -327
  859. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/conf/net.properties +0 -168
  860. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/conf/security/java.policy +0 -46
  861. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/conf/security/java.security +0 -1510
  862. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.base/ADDITIONAL_LICENSE_INFO +0 -37
  863. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.base/ASSEMBLY_EXCEPTION +0 -27
  864. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.base/LICENSE +0 -347
  865. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.base/asm.md +0 -36
  866. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.base/cldr.md +0 -109
  867. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.base/icu.md +0 -518
  868. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.base/public_suffix.md +0 -399
  869. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.base/unicode.md +0 -103
  870. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.compiler/ADDITIONAL_LICENSE_INFO +0 -1
  871. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.compiler/ASSEMBLY_EXCEPTION +0 -1
  872. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.compiler/LICENSE +0 -1
  873. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.datatransfer/ADDITIONAL_LICENSE_INFO +0 -1
  874. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.datatransfer/ASSEMBLY_EXCEPTION +0 -1
  875. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.datatransfer/LICENSE +0 -1
  876. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.desktop/ADDITIONAL_LICENSE_INFO +0 -1
  877. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.desktop/ASSEMBLY_EXCEPTION +0 -1
  878. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.desktop/LICENSE +0 -1
  879. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.desktop/freetype.md +0 -649
  880. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.desktop/giflib.md +0 -50
  881. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.instrument/ADDITIONAL_LICENSE_INFO +0 -1
  882. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.instrument/ASSEMBLY_EXCEPTION +0 -1
  883. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.instrument/LICENSE +0 -1
  884. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.logging/ADDITIONAL_LICENSE_INFO +0 -1
  885. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.logging/ASSEMBLY_EXCEPTION +0 -1
  886. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.logging/LICENSE +0 -1
  887. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.management/ADDITIONAL_LICENSE_INFO +0 -1
  888. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.management/ASSEMBLY_EXCEPTION +0 -1
  889. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.management/LICENSE +0 -1
  890. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.management.rmi/ADDITIONAL_LICENSE_INFO +0 -1
  891. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.management.rmi/ASSEMBLY_EXCEPTION +0 -1
  892. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.management.rmi/LICENSE +0 -1
  893. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.naming/ADDITIONAL_LICENSE_INFO +0 -1
  894. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.naming/ASSEMBLY_EXCEPTION +0 -1
  895. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.naming/LICENSE +0 -1
  896. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.net.http/ADDITIONAL_LICENSE_INFO +0 -1
  897. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.net.http/ASSEMBLY_EXCEPTION +0 -1
  898. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.net.http/LICENSE +0 -1
  899. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.prefs/ADDITIONAL_LICENSE_INFO +0 -1
  900. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.prefs/ASSEMBLY_EXCEPTION +0 -1
  901. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.prefs/LICENSE +0 -1
  902. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.rmi/ADDITIONAL_LICENSE_INFO +0 -1
  903. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.rmi/ASSEMBLY_EXCEPTION +0 -1
  904. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.rmi/LICENSE +0 -1
  905. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.scripting/ADDITIONAL_LICENSE_INFO +0 -1
  906. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.scripting/ASSEMBLY_EXCEPTION +0 -1
  907. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.scripting/LICENSE +0 -1
  908. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.se/ADDITIONAL_LICENSE_INFO +0 -1
  909. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.se/ASSEMBLY_EXCEPTION +0 -1
  910. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.se/LICENSE +0 -1
  911. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.security.jgss/ADDITIONAL_LICENSE_INFO +0 -1
  912. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.security.jgss/ASSEMBLY_EXCEPTION +0 -1
  913. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.security.jgss/LICENSE +0 -1
  914. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.security.sasl/ADDITIONAL_LICENSE_INFO +0 -1
  915. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.security.sasl/ASSEMBLY_EXCEPTION +0 -1
  916. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.security.sasl/LICENSE +0 -1
  917. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.smartcardio/ADDITIONAL_LICENSE_INFO +0 -1
  918. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.smartcardio/ASSEMBLY_EXCEPTION +0 -1
  919. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.smartcardio/LICENSE +0 -1
  920. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.sql/ADDITIONAL_LICENSE_INFO +0 -1
  921. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.sql/ASSEMBLY_EXCEPTION +0 -1
  922. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.sql/LICENSE +0 -1
  923. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.sql.rowset/ADDITIONAL_LICENSE_INFO +0 -1
  924. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.sql.rowset/ASSEMBLY_EXCEPTION +0 -1
  925. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.sql.rowset/LICENSE +0 -1
  926. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.transaction.xa/ADDITIONAL_LICENSE_INFO +0 -1
  927. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.transaction.xa/ASSEMBLY_EXCEPTION +0 -1
  928. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.transaction.xa/LICENSE +0 -1
  929. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.xml/ADDITIONAL_LICENSE_INFO +0 -1
  930. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.xml/ASSEMBLY_EXCEPTION +0 -1
  931. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.xml/LICENSE +0 -1
  932. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.xml/xalan.md +0 -255
  933. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.xml.crypto/ADDITIONAL_LICENSE_INFO +0 -1
  934. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.xml.crypto/ASSEMBLY_EXCEPTION +0 -1
  935. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/java.xml.crypto/LICENSE +0 -1
  936. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.accessibility/ADDITIONAL_LICENSE_INFO +0 -1
  937. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.accessibility/ASSEMBLY_EXCEPTION +0 -1
  938. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.accessibility/LICENSE +0 -1
  939. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.charsets/ADDITIONAL_LICENSE_INFO +0 -1
  940. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.charsets/ASSEMBLY_EXCEPTION +0 -1
  941. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.charsets/LICENSE +0 -1
  942. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.crypto.cryptoki/ADDITIONAL_LICENSE_INFO +0 -1
  943. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.crypto.cryptoki/ASSEMBLY_EXCEPTION +0 -1
  944. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.crypto.cryptoki/LICENSE +0 -1
  945. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.crypto.cryptoki/pkcs11cryptotoken.md +0 -72
  946. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.crypto.ec/ADDITIONAL_LICENSE_INFO +0 -1
  947. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.crypto.ec/ASSEMBLY_EXCEPTION +0 -1
  948. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.crypto.ec/LICENSE +0 -1
  949. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.dynalink/ADDITIONAL_LICENSE_INFO +0 -1
  950. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.dynalink/ASSEMBLY_EXCEPTION +0 -1
  951. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.dynalink/LICENSE +0 -1
  952. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.httpserver/ADDITIONAL_LICENSE_INFO +0 -1
  953. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.httpserver/ASSEMBLY_EXCEPTION +0 -1
  954. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.httpserver/LICENSE +0 -1
  955. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.incubator.vector/ADDITIONAL_LICENSE_INFO +0 -1
  956. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.incubator.vector/ASSEMBLY_EXCEPTION +0 -1
  957. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.incubator.vector/LICENSE +0 -1
  958. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.internal.vm.ci/ADDITIONAL_LICENSE_INFO +0 -1
  959. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.internal.vm.ci/ASSEMBLY_EXCEPTION +0 -1
  960. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.internal.vm.ci/LICENSE +0 -1
  961. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler/ADDITIONAL_LICENSE_INFO +0 -1
  962. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler/ASSEMBLY_EXCEPTION +0 -1
  963. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler/LICENSE +0 -1
  964. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler.management/ADDITIONAL_LICENSE_INFO +0 -1
  965. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler.management/ASSEMBLY_EXCEPTION +0 -1
  966. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler.management/LICENSE +0 -1
  967. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.jdwp.agent/ADDITIONAL_LICENSE_INFO +0 -1
  968. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.jdwp.agent/ASSEMBLY_EXCEPTION +0 -1
  969. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.jdwp.agent/LICENSE +0 -1
  970. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.jfr/ADDITIONAL_LICENSE_INFO +0 -1
  971. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.jfr/ASSEMBLY_EXCEPTION +0 -1
  972. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.jfr/LICENSE +0 -1
  973. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.jsobject/ADDITIONAL_LICENSE_INFO +0 -1
  974. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.jsobject/ASSEMBLY_EXCEPTION +0 -1
  975. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.jsobject/LICENSE +0 -1
  976. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.localedata/ADDITIONAL_LICENSE_INFO +0 -1
  977. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.localedata/ASSEMBLY_EXCEPTION +0 -1
  978. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.localedata/LICENSE +0 -1
  979. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.localedata/cldr.md +0 -1
  980. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.management/ADDITIONAL_LICENSE_INFO +0 -1
  981. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.management/ASSEMBLY_EXCEPTION +0 -1
  982. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.management/LICENSE +0 -1
  983. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.management.agent/ADDITIONAL_LICENSE_INFO +0 -1
  984. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.management.agent/ASSEMBLY_EXCEPTION +0 -1
  985. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.management.agent/LICENSE +0 -1
  986. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.management.jfr/ADDITIONAL_LICENSE_INFO +0 -1
  987. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.management.jfr/ASSEMBLY_EXCEPTION +0 -1
  988. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.management.jfr/LICENSE +0 -1
  989. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.naming.dns/ADDITIONAL_LICENSE_INFO +0 -1
  990. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.naming.dns/ASSEMBLY_EXCEPTION +0 -1
  991. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.naming.dns/LICENSE +0 -1
  992. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.naming.rmi/ADDITIONAL_LICENSE_INFO +0 -1
  993. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.naming.rmi/ASSEMBLY_EXCEPTION +0 -1
  994. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.naming.rmi/LICENSE +0 -1
  995. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.net/ADDITIONAL_LICENSE_INFO +0 -1
  996. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.net/ASSEMBLY_EXCEPTION +0 -1
  997. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.net/LICENSE +0 -1
  998. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.nio.mapmode/ADDITIONAL_LICENSE_INFO +0 -1
  999. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.nio.mapmode/ASSEMBLY_EXCEPTION +0 -1
  1000. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.nio.mapmode/LICENSE +0 -1
  1001. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.sctp/ADDITIONAL_LICENSE_INFO +0 -1
  1002. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.sctp/ASSEMBLY_EXCEPTION +0 -1
  1003. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.sctp/LICENSE +0 -1
  1004. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.security.auth/ADDITIONAL_LICENSE_INFO +0 -1
  1005. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.security.auth/ASSEMBLY_EXCEPTION +0 -1
  1006. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.security.auth/LICENSE +0 -1
  1007. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.security.jgss/ADDITIONAL_LICENSE_INFO +0 -1
  1008. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.security.jgss/ASSEMBLY_EXCEPTION +0 -1
  1009. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.security.jgss/LICENSE +0 -1
  1010. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.unsupported/ADDITIONAL_LICENSE_INFO +0 -1
  1011. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.unsupported/ASSEMBLY_EXCEPTION +0 -1
  1012. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.unsupported/LICENSE +0 -1
  1013. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.unsupported.desktop/ADDITIONAL_LICENSE_INFO +0 -1
  1014. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.unsupported.desktop/ASSEMBLY_EXCEPTION +0 -1
  1015. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.unsupported.desktop/LICENSE +0 -1
  1016. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.xml.dom/ADDITIONAL_LICENSE_INFO +0 -1
  1017. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.xml.dom/ASSEMBLY_EXCEPTION +0 -1
  1018. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.xml.dom/LICENSE +0 -1
  1019. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.zipfs/ADDITIONAL_LICENSE_INFO +0 -1
  1020. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.zipfs/ASSEMBLY_EXCEPTION +0 -1
  1021. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/legal/jdk.zipfs/LICENSE +0 -1
  1022. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/classlist +0 -1510
  1023. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/jawt.lib +0 -0
  1024. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/jfr/default.jfc +0 -1126
  1025. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/jfr/profile.jfc +0 -1126
  1026. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/jrt-fs.jar +0 -0
  1027. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/jvm.lib +0 -0
  1028. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/modules +0 -0
  1029. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/psfontj2d.properties +0 -323
  1030. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/security/blocked.certs +0 -39
  1031. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/security/default.policy +0 -251
  1032. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/security/public_suffix_list.dat +0 -0
  1033. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/tzdb.dat +0 -0
  1034. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/lib/tzmappings +0 -506
  1035. quarchpy/connection_specific/jdk_j21_jres/win_amd64_jdk_21_jre/release +0 -2
  1036. quarchpy/utilities/__pycache__/Version.cpython-310.pyc +0 -0
  1037. quarchpy-2.2.9.dev5.dist-info/METADATA +0 -466
  1038. quarchpy-2.2.9.dev5.dist-info/RECORD +0 -1588
  1039. /quarchpy/connection_specific/{jdk_j21_jres → jdk_jres}/__init__.py +0 -0
  1040. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/conf/management/jmxremote.access +0 -0
  1041. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/conf/management/jmxremote.password.template +0 -0
  1042. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/conf/sdp/sdp.conf.template +0 -0
  1043. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/conf/security/policy/README.txt +0 -0
  1044. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/conf/security/policy/limited/default_US_export.policy +0 -0
  1045. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/conf/security/policy/limited/default_local.policy +0 -0
  1046. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/conf/security/policy/limited/exempt_local.policy +0 -0
  1047. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/conf/security/policy/unlimited/default_US_export.policy +0 -0
  1048. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/conf/security/policy/unlimited/default_local.policy +0 -0
  1049. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/conf/sound.properties +0 -0
  1050. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.base/ADDITIONAL_LICENSE_INFO +0 -0
  1051. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.base/ASSEMBLY_EXCEPTION +0 -0
  1052. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.base/LICENSE +0 -0
  1053. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.base/aes.md +0 -0
  1054. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.base/c-libutl.md +0 -0
  1055. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.base/siphash.md +0 -0
  1056. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.compiler/ADDITIONAL_LICENSE_INFO +0 -0
  1057. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.compiler/ASSEMBLY_EXCEPTION +0 -0
  1058. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.compiler/LICENSE +0 -0
  1059. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.datatransfer/ADDITIONAL_LICENSE_INFO +0 -0
  1060. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.datatransfer/ASSEMBLY_EXCEPTION +0 -0
  1061. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.datatransfer/LICENSE +0 -0
  1062. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.desktop/ADDITIONAL_LICENSE_INFO +0 -0
  1063. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.desktop/ASSEMBLY_EXCEPTION +0 -0
  1064. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.desktop/LICENSE +0 -0
  1065. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.desktop/colorimaging.md +0 -0
  1066. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.desktop/harfbuzz.md +0 -0
  1067. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.desktop/jpeg.md +0 -0
  1068. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.desktop/lcms.md +0 -0
  1069. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.desktop/libpng.md +0 -0
  1070. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.desktop/mesa3d.md +0 -0
  1071. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.desktop/pipewire.md +0 -0
  1072. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.desktop/xwd.md +0 -0
  1073. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.instrument/ADDITIONAL_LICENSE_INFO +0 -0
  1074. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.instrument/ASSEMBLY_EXCEPTION +0 -0
  1075. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.instrument/LICENSE +0 -0
  1076. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.logging/ADDITIONAL_LICENSE_INFO +0 -0
  1077. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.logging/ASSEMBLY_EXCEPTION +0 -0
  1078. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.logging/LICENSE +0 -0
  1079. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.management/ADDITIONAL_LICENSE_INFO +0 -0
  1080. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.management/ASSEMBLY_EXCEPTION +0 -0
  1081. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.management/LICENSE +0 -0
  1082. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.management.rmi/ADDITIONAL_LICENSE_INFO +0 -0
  1083. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.management.rmi/ASSEMBLY_EXCEPTION +0 -0
  1084. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.management.rmi/LICENSE +0 -0
  1085. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.naming/ADDITIONAL_LICENSE_INFO +0 -0
  1086. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.naming/ASSEMBLY_EXCEPTION +0 -0
  1087. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.naming/LICENSE +0 -0
  1088. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.net.http/ADDITIONAL_LICENSE_INFO +0 -0
  1089. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.net.http/ASSEMBLY_EXCEPTION +0 -0
  1090. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.net.http/LICENSE +0 -0
  1091. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.prefs/ADDITIONAL_LICENSE_INFO +0 -0
  1092. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.prefs/ASSEMBLY_EXCEPTION +0 -0
  1093. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.prefs/LICENSE +0 -0
  1094. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.rmi/ADDITIONAL_LICENSE_INFO +0 -0
  1095. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.rmi/ASSEMBLY_EXCEPTION +0 -0
  1096. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.rmi/LICENSE +0 -0
  1097. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.scripting/ADDITIONAL_LICENSE_INFO +0 -0
  1098. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.scripting/ASSEMBLY_EXCEPTION +0 -0
  1099. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.scripting/LICENSE +0 -0
  1100. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.se/ADDITIONAL_LICENSE_INFO +0 -0
  1101. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.se/ASSEMBLY_EXCEPTION +0 -0
  1102. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.se/LICENSE +0 -0
  1103. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.security.jgss/ADDITIONAL_LICENSE_INFO +0 -0
  1104. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.security.jgss/ASSEMBLY_EXCEPTION +0 -0
  1105. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.security.jgss/LICENSE +0 -0
  1106. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.security.sasl/ADDITIONAL_LICENSE_INFO +0 -0
  1107. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.security.sasl/ASSEMBLY_EXCEPTION +0 -0
  1108. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.security.sasl/LICENSE +0 -0
  1109. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.smartcardio/ADDITIONAL_LICENSE_INFO +0 -0
  1110. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.smartcardio/ASSEMBLY_EXCEPTION +0 -0
  1111. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.smartcardio/LICENSE +0 -0
  1112. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.sql/ADDITIONAL_LICENSE_INFO +0 -0
  1113. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.sql/ASSEMBLY_EXCEPTION +0 -0
  1114. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.sql/LICENSE +0 -0
  1115. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.sql.rowset/ADDITIONAL_LICENSE_INFO +0 -0
  1116. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.sql.rowset/ASSEMBLY_EXCEPTION +0 -0
  1117. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.sql.rowset/LICENSE +0 -0
  1118. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.transaction.xa/ADDITIONAL_LICENSE_INFO +0 -0
  1119. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.transaction.xa/ASSEMBLY_EXCEPTION +0 -0
  1120. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.transaction.xa/LICENSE +0 -0
  1121. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.xml/ADDITIONAL_LICENSE_INFO +0 -0
  1122. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.xml/ASSEMBLY_EXCEPTION +0 -0
  1123. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.xml/LICENSE +0 -0
  1124. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.xml/bcel.md +0 -0
  1125. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.xml/dom.md +0 -0
  1126. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.xml/jcup.md +0 -0
  1127. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.xml/xerces.md +0 -0
  1128. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.xml.crypto/ADDITIONAL_LICENSE_INFO +0 -0
  1129. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.xml.crypto/ASSEMBLY_EXCEPTION +0 -0
  1130. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.xml.crypto/LICENSE +0 -0
  1131. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/java.xml.crypto/santuario.md +0 -0
  1132. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.accessibility/ADDITIONAL_LICENSE_INFO +0 -0
  1133. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.accessibility/ASSEMBLY_EXCEPTION +0 -0
  1134. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.accessibility/LICENSE +0 -0
  1135. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.charsets/ADDITIONAL_LICENSE_INFO +0 -0
  1136. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.charsets/ASSEMBLY_EXCEPTION +0 -0
  1137. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.charsets/LICENSE +0 -0
  1138. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.crypto.cryptoki/ADDITIONAL_LICENSE_INFO +0 -0
  1139. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.crypto.cryptoki/ASSEMBLY_EXCEPTION +0 -0
  1140. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.crypto.cryptoki/LICENSE +0 -0
  1141. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.crypto.cryptoki/pkcs11wrapper.md +0 -0
  1142. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.crypto.ec/ADDITIONAL_LICENSE_INFO +0 -0
  1143. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.crypto.ec/ASSEMBLY_EXCEPTION +0 -0
  1144. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.crypto.ec/LICENSE +0 -0
  1145. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.dynalink/ADDITIONAL_LICENSE_INFO +0 -0
  1146. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.dynalink/ASSEMBLY_EXCEPTION +0 -0
  1147. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.dynalink/LICENSE +0 -0
  1148. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.dynalink/dynalink.md +0 -0
  1149. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.httpserver/ADDITIONAL_LICENSE_INFO +0 -0
  1150. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.httpserver/ASSEMBLY_EXCEPTION +0 -0
  1151. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.httpserver/LICENSE +0 -0
  1152. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.incubator.vector/ADDITIONAL_LICENSE_INFO +0 -0
  1153. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.incubator.vector/ASSEMBLY_EXCEPTION +0 -0
  1154. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.incubator.vector/LICENSE +0 -0
  1155. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.internal.vm.ci/ADDITIONAL_LICENSE_INFO +0 -0
  1156. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.internal.vm.ci/ASSEMBLY_EXCEPTION +0 -0
  1157. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.internal.vm.ci/LICENSE +0 -0
  1158. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler.management → jdk_jres/lin_amd64_jdk_jre/legal/jdk.jdwp.agent}/ADDITIONAL_LICENSE_INFO +0 -0
  1159. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler.management → jdk_jres/lin_amd64_jdk_jre/legal/jdk.jdwp.agent}/ASSEMBLY_EXCEPTION +0 -0
  1160. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler.management → jdk_jres/lin_amd64_jdk_jre/legal/jdk.jdwp.agent}/LICENSE +0 -0
  1161. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler → jdk_jres/lin_amd64_jdk_jre/legal/jdk.jfr}/ADDITIONAL_LICENSE_INFO +0 -0
  1162. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler → jdk_jres/lin_amd64_jdk_jre/legal/jdk.jfr}/ASSEMBLY_EXCEPTION +0 -0
  1163. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler → jdk_jres/lin_amd64_jdk_jre/legal/jdk.jfr}/LICENSE +0 -0
  1164. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.jdwp.agent → jdk_jres/lin_amd64_jdk_jre/legal/jdk.jsobject}/ADDITIONAL_LICENSE_INFO +0 -0
  1165. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.jdwp.agent → jdk_jres/lin_amd64_jdk_jre/legal/jdk.jsobject}/ASSEMBLY_EXCEPTION +0 -0
  1166. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.jdwp.agent → jdk_jres/lin_amd64_jdk_jre/legal/jdk.jsobject}/LICENSE +0 -0
  1167. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.jfr → jdk_jres/lin_amd64_jdk_jre/legal/jdk.localedata}/ADDITIONAL_LICENSE_INFO +0 -0
  1168. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.jfr → jdk_jres/lin_amd64_jdk_jre/legal/jdk.localedata}/ASSEMBLY_EXCEPTION +0 -0
  1169. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.jfr → jdk_jres/lin_amd64_jdk_jre/legal/jdk.localedata}/LICENSE +0 -0
  1170. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/legal/jdk.localedata/thaidict.md +0 -0
  1171. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.management.agent → jdk_jres/lin_amd64_jdk_jre/legal/jdk.management}/ADDITIONAL_LICENSE_INFO +0 -0
  1172. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.management.agent → jdk_jres/lin_amd64_jdk_jre/legal/jdk.management}/ASSEMBLY_EXCEPTION +0 -0
  1173. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.management.agent → jdk_jres/lin_amd64_jdk_jre/legal/jdk.management}/LICENSE +0 -0
  1174. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.jsobject → jdk_jres/lin_amd64_jdk_jre/legal/jdk.management.agent}/ADDITIONAL_LICENSE_INFO +0 -0
  1175. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.jsobject → jdk_jres/lin_amd64_jdk_jre/legal/jdk.management.agent}/ASSEMBLY_EXCEPTION +0 -0
  1176. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.jsobject → jdk_jres/lin_amd64_jdk_jre/legal/jdk.management.agent}/LICENSE +0 -0
  1177. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.localedata → jdk_jres/lin_amd64_jdk_jre/legal/jdk.management.jfr}/ADDITIONAL_LICENSE_INFO +0 -0
  1178. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.localedata → jdk_jres/lin_amd64_jdk_jre/legal/jdk.management.jfr}/ASSEMBLY_EXCEPTION +0 -0
  1179. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.localedata → jdk_jres/lin_amd64_jdk_jre/legal/jdk.management.jfr}/LICENSE +0 -0
  1180. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.management.jfr → jdk_jres/lin_amd64_jdk_jre/legal/jdk.naming.dns}/ADDITIONAL_LICENSE_INFO +0 -0
  1181. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.management.jfr → jdk_jres/lin_amd64_jdk_jre/legal/jdk.naming.dns}/ASSEMBLY_EXCEPTION +0 -0
  1182. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.management.jfr → jdk_jres/lin_amd64_jdk_jre/legal/jdk.naming.dns}/LICENSE +0 -0
  1183. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.management → jdk_jres/lin_amd64_jdk_jre/legal/jdk.naming.rmi}/ADDITIONAL_LICENSE_INFO +0 -0
  1184. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.management → jdk_jres/lin_amd64_jdk_jre/legal/jdk.naming.rmi}/ASSEMBLY_EXCEPTION +0 -0
  1185. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.management → jdk_jres/lin_amd64_jdk_jre/legal/jdk.naming.rmi}/LICENSE +0 -0
  1186. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.naming.dns → jdk_jres/lin_amd64_jdk_jre/legal/jdk.net}/ADDITIONAL_LICENSE_INFO +0 -0
  1187. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.naming.dns → jdk_jres/lin_amd64_jdk_jre/legal/jdk.net}/ASSEMBLY_EXCEPTION +0 -0
  1188. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.naming.dns → jdk_jres/lin_amd64_jdk_jre/legal/jdk.net}/LICENSE +0 -0
  1189. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.naming.rmi → jdk_jres/lin_amd64_jdk_jre/legal/jdk.nio.mapmode}/ADDITIONAL_LICENSE_INFO +0 -0
  1190. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.naming.rmi → jdk_jres/lin_amd64_jdk_jre/legal/jdk.nio.mapmode}/ASSEMBLY_EXCEPTION +0 -0
  1191. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.naming.rmi → jdk_jres/lin_amd64_jdk_jre/legal/jdk.nio.mapmode}/LICENSE +0 -0
  1192. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.net → jdk_jres/lin_amd64_jdk_jre/legal/jdk.sctp}/ADDITIONAL_LICENSE_INFO +0 -0
  1193. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.net → jdk_jres/lin_amd64_jdk_jre/legal/jdk.sctp}/ASSEMBLY_EXCEPTION +0 -0
  1194. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.net → jdk_jres/lin_amd64_jdk_jre/legal/jdk.sctp}/LICENSE +0 -0
  1195. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.nio.mapmode → jdk_jres/lin_amd64_jdk_jre/legal/jdk.security.auth}/ADDITIONAL_LICENSE_INFO +0 -0
  1196. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.nio.mapmode → jdk_jres/lin_amd64_jdk_jre/legal/jdk.security.auth}/ASSEMBLY_EXCEPTION +0 -0
  1197. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.nio.mapmode → jdk_jres/lin_amd64_jdk_jre/legal/jdk.security.auth}/LICENSE +0 -0
  1198. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.sctp → jdk_jres/lin_amd64_jdk_jre/legal/jdk.security.jgss}/ADDITIONAL_LICENSE_INFO +0 -0
  1199. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.sctp → jdk_jres/lin_amd64_jdk_jre/legal/jdk.security.jgss}/ASSEMBLY_EXCEPTION +0 -0
  1200. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.sctp → jdk_jres/lin_amd64_jdk_jre/legal/jdk.security.jgss}/LICENSE +0 -0
  1201. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.security.jgss → jdk_jres/lin_amd64_jdk_jre/legal/jdk.unsupported}/ADDITIONAL_LICENSE_INFO +0 -0
  1202. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.security.jgss → jdk_jres/lin_amd64_jdk_jre/legal/jdk.unsupported}/ASSEMBLY_EXCEPTION +0 -0
  1203. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.security.jgss → jdk_jres/lin_amd64_jdk_jre/legal/jdk.unsupported}/LICENSE +0 -0
  1204. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.security.auth → jdk_jres/lin_amd64_jdk_jre/legal/jdk.unsupported.desktop}/ADDITIONAL_LICENSE_INFO +0 -0
  1205. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.security.auth → jdk_jres/lin_amd64_jdk_jre/legal/jdk.unsupported.desktop}/ASSEMBLY_EXCEPTION +0 -0
  1206. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.security.auth → jdk_jres/lin_amd64_jdk_jre/legal/jdk.unsupported.desktop}/LICENSE +0 -0
  1207. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.unsupported.desktop → jdk_jres/lin_amd64_jdk_jre/legal/jdk.xml.dom}/ADDITIONAL_LICENSE_INFO +0 -0
  1208. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.unsupported.desktop → jdk_jres/lin_amd64_jdk_jre/legal/jdk.xml.dom}/ASSEMBLY_EXCEPTION +0 -0
  1209. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.unsupported.desktop → jdk_jres/lin_amd64_jdk_jre/legal/jdk.xml.dom}/LICENSE +0 -0
  1210. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.unsupported → jdk_jres/lin_amd64_jdk_jre/legal/jdk.zipfs}/ADDITIONAL_LICENSE_INFO +0 -0
  1211. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.unsupported → jdk_jres/lin_amd64_jdk_jre/legal/jdk.zipfs}/ASSEMBLY_EXCEPTION +0 -0
  1212. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.unsupported → jdk_jres/lin_amd64_jdk_jre/legal/jdk.zipfs}/LICENSE +0 -0
  1213. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/lib/jvm.cfg +0 -0
  1214. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/lib/psfont.properties.ja +0 -0
  1215. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/lib/security/blocked.certs +0 -0
  1216. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre → jdk_jres/lin_amd64_jdk_jre}/lib/security/cacerts +0 -0
  1217. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/conf/management/jmxremote.access +0 -0
  1218. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/conf/management/jmxremote.password.template +0 -0
  1219. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/conf/security/policy/README.txt +0 -0
  1220. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/conf/security/policy/limited/default_US_export.policy +0 -0
  1221. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/conf/security/policy/limited/default_local.policy +0 -0
  1222. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/conf/security/policy/limited/exempt_local.policy +0 -0
  1223. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/conf/security/policy/unlimited/default_US_export.policy +0 -0
  1224. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/conf/security/policy/unlimited/default_local.policy +0 -0
  1225. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/conf/sound.properties +0 -0
  1226. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.xml.dom → jdk_jres/mac_amd64_jdk_jre/legal/java.base}/ADDITIONAL_LICENSE_INFO +0 -0
  1227. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.xml.dom → jdk_jres/mac_amd64_jdk_jre/legal/java.base}/ASSEMBLY_EXCEPTION +0 -0
  1228. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.xml.dom → jdk_jres/mac_amd64_jdk_jre/legal/java.base}/LICENSE +0 -0
  1229. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.base/aes.md +0 -0
  1230. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.base/c-libutl.md +0 -0
  1231. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.base/siphash.md +0 -0
  1232. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.zipfs → jdk_jres/mac_amd64_jdk_jre/legal/java.compiler}/ADDITIONAL_LICENSE_INFO +0 -0
  1233. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.zipfs → jdk_jres/mac_amd64_jdk_jre/legal/java.compiler}/ASSEMBLY_EXCEPTION +0 -0
  1234. /quarchpy/connection_specific/{jdk_j21_jres/lin_amd64_jdk_21_jre/legal/jdk.zipfs → jdk_jres/mac_amd64_jdk_jre/legal/java.compiler}/LICENSE +0 -0
  1235. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.base → jdk_jres/mac_amd64_jdk_jre/legal/java.datatransfer}/ADDITIONAL_LICENSE_INFO +0 -0
  1236. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.base → jdk_jres/mac_amd64_jdk_jre/legal/java.datatransfer}/ASSEMBLY_EXCEPTION +0 -0
  1237. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.base → jdk_jres/mac_amd64_jdk_jre/legal/java.datatransfer}/LICENSE +0 -0
  1238. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.compiler → jdk_jres/mac_amd64_jdk_jre/legal/java.desktop}/ADDITIONAL_LICENSE_INFO +0 -0
  1239. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.compiler → jdk_jres/mac_amd64_jdk_jre/legal/java.desktop}/ASSEMBLY_EXCEPTION +0 -0
  1240. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.compiler → jdk_jres/mac_amd64_jdk_jre/legal/java.desktop}/LICENSE +0 -0
  1241. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.desktop/colorimaging.md +0 -0
  1242. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.desktop/harfbuzz.md +0 -0
  1243. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.desktop/jpeg.md +0 -0
  1244. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.desktop/lcms.md +0 -0
  1245. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.desktop/libpng.md +0 -0
  1246. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.desktop/mesa3d.md +0 -0
  1247. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.desktop/pipewire.md +0 -0
  1248. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.desktop/xwd.md +0 -0
  1249. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.datatransfer → jdk_jres/mac_amd64_jdk_jre/legal/java.instrument}/ADDITIONAL_LICENSE_INFO +0 -0
  1250. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.datatransfer → jdk_jres/mac_amd64_jdk_jre/legal/java.instrument}/ASSEMBLY_EXCEPTION +0 -0
  1251. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.datatransfer → jdk_jres/mac_amd64_jdk_jre/legal/java.instrument}/LICENSE +0 -0
  1252. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.desktop → jdk_jres/mac_amd64_jdk_jre/legal/java.logging}/ADDITIONAL_LICENSE_INFO +0 -0
  1253. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.desktop → jdk_jres/mac_amd64_jdk_jre/legal/java.logging}/ASSEMBLY_EXCEPTION +0 -0
  1254. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.desktop → jdk_jres/mac_amd64_jdk_jre/legal/java.logging}/LICENSE +0 -0
  1255. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.logging → jdk_jres/mac_amd64_jdk_jre/legal/java.management}/ADDITIONAL_LICENSE_INFO +0 -0
  1256. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.logging → jdk_jres/mac_amd64_jdk_jre/legal/java.management}/ASSEMBLY_EXCEPTION +0 -0
  1257. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.logging → jdk_jres/mac_amd64_jdk_jre/legal/java.management}/LICENSE +0 -0
  1258. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.instrument → jdk_jres/mac_amd64_jdk_jre/legal/java.management.rmi}/ADDITIONAL_LICENSE_INFO +0 -0
  1259. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.instrument → jdk_jres/mac_amd64_jdk_jre/legal/java.management.rmi}/ASSEMBLY_EXCEPTION +0 -0
  1260. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.instrument → jdk_jres/mac_amd64_jdk_jre/legal/java.management.rmi}/LICENSE +0 -0
  1261. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.management.rmi → jdk_jres/mac_amd64_jdk_jre/legal/java.naming}/ADDITIONAL_LICENSE_INFO +0 -0
  1262. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.management.rmi → jdk_jres/mac_amd64_jdk_jre/legal/java.naming}/ASSEMBLY_EXCEPTION +0 -0
  1263. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.management.rmi → jdk_jres/mac_amd64_jdk_jre/legal/java.naming}/LICENSE +0 -0
  1264. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.management → jdk_jres/mac_amd64_jdk_jre/legal/java.net.http}/ADDITIONAL_LICENSE_INFO +0 -0
  1265. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.management → jdk_jres/mac_amd64_jdk_jre/legal/java.net.http}/ASSEMBLY_EXCEPTION +0 -0
  1266. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.management → jdk_jres/mac_amd64_jdk_jre/legal/java.net.http}/LICENSE +0 -0
  1267. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.naming → jdk_jres/mac_amd64_jdk_jre/legal/java.prefs}/ADDITIONAL_LICENSE_INFO +0 -0
  1268. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.naming → jdk_jres/mac_amd64_jdk_jre/legal/java.prefs}/ASSEMBLY_EXCEPTION +0 -0
  1269. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.naming → jdk_jres/mac_amd64_jdk_jre/legal/java.prefs}/LICENSE +0 -0
  1270. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.net.http → jdk_jres/mac_amd64_jdk_jre/legal/java.rmi}/ADDITIONAL_LICENSE_INFO +0 -0
  1271. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.net.http → jdk_jres/mac_amd64_jdk_jre/legal/java.rmi}/ASSEMBLY_EXCEPTION +0 -0
  1272. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.net.http → jdk_jres/mac_amd64_jdk_jre/legal/java.rmi}/LICENSE +0 -0
  1273. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.prefs → jdk_jres/mac_amd64_jdk_jre/legal/java.scripting}/ADDITIONAL_LICENSE_INFO +0 -0
  1274. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.prefs → jdk_jres/mac_amd64_jdk_jre/legal/java.scripting}/ASSEMBLY_EXCEPTION +0 -0
  1275. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.prefs → jdk_jres/mac_amd64_jdk_jre/legal/java.scripting}/LICENSE +0 -0
  1276. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.rmi → jdk_jres/mac_amd64_jdk_jre/legal/java.se}/ADDITIONAL_LICENSE_INFO +0 -0
  1277. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.rmi → jdk_jres/mac_amd64_jdk_jre/legal/java.se}/ASSEMBLY_EXCEPTION +0 -0
  1278. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.rmi → jdk_jres/mac_amd64_jdk_jre/legal/java.se}/LICENSE +0 -0
  1279. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.scripting → jdk_jres/mac_amd64_jdk_jre/legal/java.security.jgss}/ADDITIONAL_LICENSE_INFO +0 -0
  1280. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.scripting → jdk_jres/mac_amd64_jdk_jre/legal/java.security.jgss}/ASSEMBLY_EXCEPTION +0 -0
  1281. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.scripting → jdk_jres/mac_amd64_jdk_jre/legal/java.security.jgss}/LICENSE +0 -0
  1282. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.se → jdk_jres/mac_amd64_jdk_jre/legal/java.security.sasl}/ADDITIONAL_LICENSE_INFO +0 -0
  1283. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.se → jdk_jres/mac_amd64_jdk_jre/legal/java.security.sasl}/ASSEMBLY_EXCEPTION +0 -0
  1284. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.se → jdk_jres/mac_amd64_jdk_jre/legal/java.security.sasl}/LICENSE +0 -0
  1285. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.security.jgss → jdk_jres/mac_amd64_jdk_jre/legal/java.smartcardio}/ADDITIONAL_LICENSE_INFO +0 -0
  1286. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.security.jgss → jdk_jres/mac_amd64_jdk_jre/legal/java.smartcardio}/ASSEMBLY_EXCEPTION +0 -0
  1287. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.security.jgss → jdk_jres/mac_amd64_jdk_jre/legal/java.smartcardio}/LICENSE +0 -0
  1288. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.smartcardio → jdk_jres/mac_amd64_jdk_jre/legal/java.sql}/ADDITIONAL_LICENSE_INFO +0 -0
  1289. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.smartcardio → jdk_jres/mac_amd64_jdk_jre/legal/java.sql}/ASSEMBLY_EXCEPTION +0 -0
  1290. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.smartcardio → jdk_jres/mac_amd64_jdk_jre/legal/java.sql}/LICENSE +0 -0
  1291. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.security.sasl → jdk_jres/mac_amd64_jdk_jre/legal/java.sql.rowset}/ADDITIONAL_LICENSE_INFO +0 -0
  1292. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.security.sasl → jdk_jres/mac_amd64_jdk_jre/legal/java.sql.rowset}/ASSEMBLY_EXCEPTION +0 -0
  1293. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.security.sasl → jdk_jres/mac_amd64_jdk_jre/legal/java.sql.rowset}/LICENSE +0 -0
  1294. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.sql.rowset → jdk_jres/mac_amd64_jdk_jre/legal/java.transaction.xa}/ADDITIONAL_LICENSE_INFO +0 -0
  1295. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.sql.rowset → jdk_jres/mac_amd64_jdk_jre/legal/java.transaction.xa}/ASSEMBLY_EXCEPTION +0 -0
  1296. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.sql.rowset → jdk_jres/mac_amd64_jdk_jre/legal/java.transaction.xa}/LICENSE +0 -0
  1297. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.transaction.xa → jdk_jres/mac_amd64_jdk_jre/legal/java.xml}/ADDITIONAL_LICENSE_INFO +0 -0
  1298. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.transaction.xa → jdk_jres/mac_amd64_jdk_jre/legal/java.xml}/ASSEMBLY_EXCEPTION +0 -0
  1299. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.transaction.xa → jdk_jres/mac_amd64_jdk_jre/legal/java.xml}/LICENSE +0 -0
  1300. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.xml/bcel.md +0 -0
  1301. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.xml/dom.md +0 -0
  1302. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.xml/jcup.md +0 -0
  1303. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.xml/xerces.md +0 -0
  1304. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.sql → jdk_jres/mac_amd64_jdk_jre/legal/java.xml.crypto}/ADDITIONAL_LICENSE_INFO +0 -0
  1305. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.sql → jdk_jres/mac_amd64_jdk_jre/legal/java.xml.crypto}/ASSEMBLY_EXCEPTION +0 -0
  1306. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.sql → jdk_jres/mac_amd64_jdk_jre/legal/java.xml.crypto}/LICENSE +0 -0
  1307. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/java.xml.crypto/santuario.md +0 -0
  1308. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.xml.crypto → jdk_jres/mac_amd64_jdk_jre/legal/jdk.accessibility}/ADDITIONAL_LICENSE_INFO +0 -0
  1309. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.xml.crypto → jdk_jres/mac_amd64_jdk_jre/legal/jdk.accessibility}/ASSEMBLY_EXCEPTION +0 -0
  1310. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.xml.crypto → jdk_jres/mac_amd64_jdk_jre/legal/jdk.accessibility}/LICENSE +0 -0
  1311. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.xml → jdk_jres/mac_amd64_jdk_jre/legal/jdk.charsets}/ADDITIONAL_LICENSE_INFO +0 -0
  1312. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.xml → jdk_jres/mac_amd64_jdk_jre/legal/jdk.charsets}/ASSEMBLY_EXCEPTION +0 -0
  1313. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/java.xml → jdk_jres/mac_amd64_jdk_jre/legal/jdk.charsets}/LICENSE +0 -0
  1314. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.accessibility → jdk_jres/mac_amd64_jdk_jre/legal/jdk.crypto.cryptoki}/ADDITIONAL_LICENSE_INFO +0 -0
  1315. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.accessibility → jdk_jres/mac_amd64_jdk_jre/legal/jdk.crypto.cryptoki}/ASSEMBLY_EXCEPTION +0 -0
  1316. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.accessibility → jdk_jres/mac_amd64_jdk_jre/legal/jdk.crypto.cryptoki}/LICENSE +0 -0
  1317. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/jdk.crypto.cryptoki/pkcs11wrapper.md +0 -0
  1318. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.charsets → jdk_jres/mac_amd64_jdk_jre/legal/jdk.crypto.ec}/ADDITIONAL_LICENSE_INFO +0 -0
  1319. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.charsets → jdk_jres/mac_amd64_jdk_jre/legal/jdk.crypto.ec}/ASSEMBLY_EXCEPTION +0 -0
  1320. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.charsets → jdk_jres/mac_amd64_jdk_jre/legal/jdk.crypto.ec}/LICENSE +0 -0
  1321. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.crypto.cryptoki → jdk_jres/mac_amd64_jdk_jre/legal/jdk.dynalink}/ADDITIONAL_LICENSE_INFO +0 -0
  1322. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.crypto.cryptoki → jdk_jres/mac_amd64_jdk_jre/legal/jdk.dynalink}/ASSEMBLY_EXCEPTION +0 -0
  1323. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.crypto.cryptoki → jdk_jres/mac_amd64_jdk_jre/legal/jdk.dynalink}/LICENSE +0 -0
  1324. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/jdk.dynalink/dynalink.md +0 -0
  1325. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.crypto.ec → jdk_jres/mac_amd64_jdk_jre/legal/jdk.httpserver}/ADDITIONAL_LICENSE_INFO +0 -0
  1326. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.crypto.ec → jdk_jres/mac_amd64_jdk_jre/legal/jdk.httpserver}/ASSEMBLY_EXCEPTION +0 -0
  1327. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.crypto.ec → jdk_jres/mac_amd64_jdk_jre/legal/jdk.httpserver}/LICENSE +0 -0
  1328. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.dynalink → jdk_jres/mac_amd64_jdk_jre/legal/jdk.incubator.vector}/ADDITIONAL_LICENSE_INFO +0 -0
  1329. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.dynalink → jdk_jres/mac_amd64_jdk_jre/legal/jdk.incubator.vector}/ASSEMBLY_EXCEPTION +0 -0
  1330. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.dynalink → jdk_jres/mac_amd64_jdk_jre/legal/jdk.incubator.vector}/LICENSE +0 -0
  1331. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.httpserver → jdk_jres/mac_amd64_jdk_jre/legal/jdk.internal.vm.ci}/ADDITIONAL_LICENSE_INFO +0 -0
  1332. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.httpserver → jdk_jres/mac_amd64_jdk_jre/legal/jdk.internal.vm.ci}/ASSEMBLY_EXCEPTION +0 -0
  1333. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.httpserver → jdk_jres/mac_amd64_jdk_jre/legal/jdk.internal.vm.ci}/LICENSE +0 -0
  1334. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.incubator.vector → jdk_jres/mac_amd64_jdk_jre/legal/jdk.jdwp.agent}/ADDITIONAL_LICENSE_INFO +0 -0
  1335. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.incubator.vector → jdk_jres/mac_amd64_jdk_jre/legal/jdk.jdwp.agent}/ASSEMBLY_EXCEPTION +0 -0
  1336. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.incubator.vector → jdk_jres/mac_amd64_jdk_jre/legal/jdk.jdwp.agent}/LICENSE +0 -0
  1337. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.internal.vm.ci → jdk_jres/mac_amd64_jdk_jre/legal/jdk.jfr}/ADDITIONAL_LICENSE_INFO +0 -0
  1338. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.internal.vm.ci → jdk_jres/mac_amd64_jdk_jre/legal/jdk.jfr}/ASSEMBLY_EXCEPTION +0 -0
  1339. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.internal.vm.ci → jdk_jres/mac_amd64_jdk_jre/legal/jdk.jfr}/LICENSE +0 -0
  1340. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler.management → jdk_jres/mac_amd64_jdk_jre/legal/jdk.jsobject}/ADDITIONAL_LICENSE_INFO +0 -0
  1341. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler.management → jdk_jres/mac_amd64_jdk_jre/legal/jdk.jsobject}/ASSEMBLY_EXCEPTION +0 -0
  1342. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler.management → jdk_jres/mac_amd64_jdk_jre/legal/jdk.jsobject}/LICENSE +0 -0
  1343. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler → jdk_jres/mac_amd64_jdk_jre/legal/jdk.localedata}/ADDITIONAL_LICENSE_INFO +0 -0
  1344. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler → jdk_jres/mac_amd64_jdk_jre/legal/jdk.localedata}/ASSEMBLY_EXCEPTION +0 -0
  1345. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.internal.vm.compiler → jdk_jres/mac_amd64_jdk_jre/legal/jdk.localedata}/LICENSE +0 -0
  1346. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/legal/jdk.localedata/thaidict.md +0 -0
  1347. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.jsobject → jdk_jres/mac_amd64_jdk_jre/legal/jdk.management}/ADDITIONAL_LICENSE_INFO +0 -0
  1348. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.jsobject → jdk_jres/mac_amd64_jdk_jre/legal/jdk.management}/ASSEMBLY_EXCEPTION +0 -0
  1349. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.jsobject → jdk_jres/mac_amd64_jdk_jre/legal/jdk.management}/LICENSE +0 -0
  1350. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.jdwp.agent → jdk_jres/mac_amd64_jdk_jre/legal/jdk.management.agent}/ADDITIONAL_LICENSE_INFO +0 -0
  1351. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.jdwp.agent → jdk_jres/mac_amd64_jdk_jre/legal/jdk.management.agent}/ASSEMBLY_EXCEPTION +0 -0
  1352. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.jdwp.agent → jdk_jres/mac_amd64_jdk_jre/legal/jdk.management.agent}/LICENSE +0 -0
  1353. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.jfr → jdk_jres/mac_amd64_jdk_jre/legal/jdk.management.jfr}/ADDITIONAL_LICENSE_INFO +0 -0
  1354. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.jfr → jdk_jres/mac_amd64_jdk_jre/legal/jdk.management.jfr}/ASSEMBLY_EXCEPTION +0 -0
  1355. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.jfr → jdk_jres/mac_amd64_jdk_jre/legal/jdk.management.jfr}/LICENSE +0 -0
  1356. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.localedata → jdk_jres/mac_amd64_jdk_jre/legal/jdk.naming.dns}/ADDITIONAL_LICENSE_INFO +0 -0
  1357. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.localedata → jdk_jres/mac_amd64_jdk_jre/legal/jdk.naming.dns}/ASSEMBLY_EXCEPTION +0 -0
  1358. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.localedata → jdk_jres/mac_amd64_jdk_jre/legal/jdk.naming.dns}/LICENSE +0 -0
  1359. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.management.agent → jdk_jres/mac_amd64_jdk_jre/legal/jdk.naming.rmi}/ADDITIONAL_LICENSE_INFO +0 -0
  1360. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.management.agent → jdk_jres/mac_amd64_jdk_jre/legal/jdk.naming.rmi}/ASSEMBLY_EXCEPTION +0 -0
  1361. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.management.agent → jdk_jres/mac_amd64_jdk_jre/legal/jdk.naming.rmi}/LICENSE +0 -0
  1362. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.management.jfr → jdk_jres/mac_amd64_jdk_jre/legal/jdk.net}/ADDITIONAL_LICENSE_INFO +0 -0
  1363. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.management.jfr → jdk_jres/mac_amd64_jdk_jre/legal/jdk.net}/ASSEMBLY_EXCEPTION +0 -0
  1364. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.management.jfr → jdk_jres/mac_amd64_jdk_jre/legal/jdk.net}/LICENSE +0 -0
  1365. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.management → jdk_jres/mac_amd64_jdk_jre/legal/jdk.nio.mapmode}/ADDITIONAL_LICENSE_INFO +0 -0
  1366. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.management → jdk_jres/mac_amd64_jdk_jre/legal/jdk.nio.mapmode}/ASSEMBLY_EXCEPTION +0 -0
  1367. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.management → jdk_jres/mac_amd64_jdk_jre/legal/jdk.nio.mapmode}/LICENSE +0 -0
  1368. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.naming.dns → jdk_jres/mac_amd64_jdk_jre/legal/jdk.sctp}/ADDITIONAL_LICENSE_INFO +0 -0
  1369. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.naming.dns → jdk_jres/mac_amd64_jdk_jre/legal/jdk.sctp}/ASSEMBLY_EXCEPTION +0 -0
  1370. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.naming.dns → jdk_jres/mac_amd64_jdk_jre/legal/jdk.sctp}/LICENSE +0 -0
  1371. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.naming.rmi → jdk_jres/mac_amd64_jdk_jre/legal/jdk.security.auth}/ADDITIONAL_LICENSE_INFO +0 -0
  1372. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.naming.rmi → jdk_jres/mac_amd64_jdk_jre/legal/jdk.security.auth}/ASSEMBLY_EXCEPTION +0 -0
  1373. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.naming.rmi → jdk_jres/mac_amd64_jdk_jre/legal/jdk.security.auth}/LICENSE +0 -0
  1374. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.net → jdk_jres/mac_amd64_jdk_jre/legal/jdk.security.jgss}/ADDITIONAL_LICENSE_INFO +0 -0
  1375. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.net → jdk_jres/mac_amd64_jdk_jre/legal/jdk.security.jgss}/ASSEMBLY_EXCEPTION +0 -0
  1376. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.net → jdk_jres/mac_amd64_jdk_jre/legal/jdk.security.jgss}/LICENSE +0 -0
  1377. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.sctp → jdk_jres/mac_amd64_jdk_jre/legal/jdk.unsupported}/ADDITIONAL_LICENSE_INFO +0 -0
  1378. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.sctp → jdk_jres/mac_amd64_jdk_jre/legal/jdk.unsupported}/ASSEMBLY_EXCEPTION +0 -0
  1379. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.sctp → jdk_jres/mac_amd64_jdk_jre/legal/jdk.unsupported}/LICENSE +0 -0
  1380. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.nio.mapmode → jdk_jres/mac_amd64_jdk_jre/legal/jdk.unsupported.desktop}/ADDITIONAL_LICENSE_INFO +0 -0
  1381. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.nio.mapmode → jdk_jres/mac_amd64_jdk_jre/legal/jdk.unsupported.desktop}/ASSEMBLY_EXCEPTION +0 -0
  1382. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.nio.mapmode → jdk_jres/mac_amd64_jdk_jre/legal/jdk.unsupported.desktop}/LICENSE +0 -0
  1383. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.security.auth → jdk_jres/mac_amd64_jdk_jre/legal/jdk.xml.dom}/ADDITIONAL_LICENSE_INFO +0 -0
  1384. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.security.auth → jdk_jres/mac_amd64_jdk_jre/legal/jdk.xml.dom}/ASSEMBLY_EXCEPTION +0 -0
  1385. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.security.auth → jdk_jres/mac_amd64_jdk_jre/legal/jdk.xml.dom}/LICENSE +0 -0
  1386. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.security.jgss → jdk_jres/mac_amd64_jdk_jre/legal/jdk.zipfs}/ADDITIONAL_LICENSE_INFO +0 -0
  1387. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.security.jgss → jdk_jres/mac_amd64_jdk_jre/legal/jdk.zipfs}/ASSEMBLY_EXCEPTION +0 -0
  1388. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.security.jgss → jdk_jres/mac_amd64_jdk_jre/legal/jdk.zipfs}/LICENSE +0 -0
  1389. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/lib/fontconfig.bfc +0 -0
  1390. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/lib/fontconfig.properties.src +0 -0
  1391. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/lib/jvm.cfg +0 -0
  1392. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/lib/psfont.properties.ja +0 -0
  1393. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/lib/security/blocked.certs +0 -0
  1394. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre → jdk_jres/mac_amd64_jdk_jre}/lib/security/cacerts +0 -0
  1395. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/conf/management/jmxremote.access +0 -0
  1396. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/conf/management/jmxremote.password.template +0 -0
  1397. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/conf/security/policy/README.txt +0 -0
  1398. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/conf/security/policy/limited/default_US_export.policy +0 -0
  1399. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/conf/security/policy/limited/default_local.policy +0 -0
  1400. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/conf/security/policy/limited/exempt_local.policy +0 -0
  1401. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/conf/security/policy/unlimited/default_US_export.policy +0 -0
  1402. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/conf/security/policy/unlimited/default_local.policy +0 -0
  1403. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/conf/sound.properties +0 -0
  1404. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.unsupported.desktop → jdk_jres/win_amd64_jdk_jre/legal/java.base}/ADDITIONAL_LICENSE_INFO +0 -0
  1405. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.unsupported.desktop → jdk_jres/win_amd64_jdk_jre/legal/java.base}/ASSEMBLY_EXCEPTION +0 -0
  1406. /quarchpy/connection_specific/{jdk_j21_jres/mac_amd64_jdk_21_jre/legal/jdk.unsupported.desktop → jdk_jres/win_amd64_jdk_jre/legal/java.base}/LICENSE +0 -0
  1407. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.base/aes.md +0 -0
  1408. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.base/c-libutl.md +0 -0
  1409. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.base/siphash.md +0 -0
  1410. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.base/wepoll.md +0 -0
  1411. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.base/zlib.md +0 -0
  1412. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.desktop/colorimaging.md +0 -0
  1413. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.desktop/harfbuzz.md +0 -0
  1414. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.desktop/jpeg.md +0 -0
  1415. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.desktop/lcms.md +0 -0
  1416. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.desktop/libpng.md +0 -0
  1417. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.desktop/mesa3d.md +0 -0
  1418. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.xml/bcel.md +0 -0
  1419. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.xml/dom.md +0 -0
  1420. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.xml/jcup.md +0 -0
  1421. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.xml/xerces.md +0 -0
  1422. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/java.xml.crypto/santuario.md +0 -0
  1423. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/jdk.crypto.cryptoki/pkcs11wrapper.md +0 -0
  1424. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/jdk.dynalink/dynalink.md +0 -0
  1425. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/legal/jdk.localedata/thaidict.md +0 -0
  1426. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/lib/fontconfig.bfc +0 -0
  1427. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/lib/fontconfig.properties.src +0 -0
  1428. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/lib/jvm.cfg +0 -0
  1429. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/lib/psfont.properties.ja +0 -0
  1430. /quarchpy/connection_specific/{jdk_j21_jres/win_amd64_jdk_21_jre → jdk_jres/win_amd64_jdk_jre}/lib/security/cacerts +0 -0
  1431. {quarchpy-2.2.9.dev5.dist-info → quarchpy-2.2.10.dist-info}/WHEEL +0 -0
  1432. {quarchpy-2.2.9.dev5.dist-info → quarchpy-2.2.10.dist-info}/top_level.txt +0 -0
@@ -1,421 +1,855 @@
1
+ from __future__ import annotations
2
+ import logging
3
+ import time
4
+ from io import StringIO
5
+ from typing import Optional, Union, List, Any, Literal
6
+ import enum
7
+
8
+ # Third-party imports
9
+ try:
10
+ import pandas as pd
11
+ except ImportError:
12
+ pd = None # type: ignore
13
+
14
+ # Local application imports
1
15
  from quarchpy.device import quarchDevice
2
- from quarchpy.utilities.Version import Version
3
16
  from quarchpy.user_interface.user_interface import requestDialog
4
- #from quarchpy.utilities.utils import check_stream_stopped_status, check_export_status
5
17
 
6
- import os, time, datetime, sys, logging
18
+ def qpsNowStr() -> str:
19
+ """
20
+ Gets the current time as milliseconds since the Unix epoch.
7
21
 
8
- if sys.version_info[0] < 3:
9
- from StringIO import StringIO
10
- else:
11
- from io import StringIO
22
+ Returns:
23
+ str: The current time as a string representing milliseconds
24
+ since the epoch.
25
+ """
26
+ return str(current_milli_time())
12
27
 
13
- current_milli_time = lambda: int(round(time.time() * 1000))
14
- current_second_time = lambda: int(round(time.time()))
15
28
 
29
+ # --- Main Classes ---
16
30
 
17
- # Using standard Unix time, milliseconds since the epoch (midnight 1 January 1970 UTC)
18
- # Should avoid issues with time zones and summer time correction but the local and host
19
- # clocks should still be synchronised
20
- def qpsNowStr():
21
- return current_milli_time() # datetime supports microseconds
31
+ class quarchQPS(quarchDevice):
32
+ """
33
+ Represents a Quarch Power Supply (QPS) device, extending quarchDevice.
22
34
 
35
+ Handles interaction specific to QPS modules, including stream management.
36
+ """
23
37
 
24
- class quarchQPS(quarchDevice):
25
- def __init__(self, quarchDevice):
26
- self.quarchDevice = quarchDevice
27
- self.ConType = quarchDevice.ConType
28
- self.ConString = quarchDevice.ConString
38
+ def __init__(self, quarchDevice: quarchDevice):
39
+ """
40
+ Initializes the quarchQPS wrapper using an existing quarchDevice object.
29
41
 
42
+ Args:
43
+ quarchDevice (quarchDevice): An initialized instance of
44
+ the base quarchDevice class containing connection details.
45
+
46
+ Raises:
47
+ AttributeError: If the provided quarchDevice is not a valid QPS connection.
48
+ """
49
+ super().__init__(quarchDevice.ConString, ConType=quarchDevice.ConType)
50
+ self.quarchDevice = quarchDevice
30
51
  self.connectionObj = quarchDevice.connectionObj
31
- self.IP_address = quarchDevice.connectionObj.qps.host
32
- self.port_number = quarchDevice.connectionObj.qps.port
33
52
 
34
- def startStream(self, directory, unserInput=True, streamDuration=""):
53
+ if not hasattr(self.connectionObj, 'qps'):
54
+ raise AttributeError("The provided quarchDevice is not a valid QPS connection.")
55
+ self.IP_address = self.connectionObj.qps.host
56
+ self.port_number = self.connectionObj.qps.port
57
+
58
+ # --- Public API Methods ---
59
+
60
+ def start_stream(self, directory: str, user_input: bool = True, stream_duration: str = "") -> 'quarchStream':
61
+ """
62
+ Initializes and starts a Quarch data stream.
63
+
64
+ This method creates a quarchStream object, which handles the setup
65
+ and management of the data stream for the QPS application.
66
+
67
+ Args:
68
+ directory (str): The target directory where stream data will be saved.
69
+ user_input (bool, optional): Controls user interaction on failure.
70
+ If True (default), prompts the user. If False, raises an
71
+ Exception on failure.
72
+ stream_duration (str, optional): Defines the requested duration for the
73
+ stream. An empty string (default) signifies an indefinite stream.
74
+
75
+ Returns:
76
+ quarchStream: An instance of the quarchStream class representing and
77
+ managing the active stream.
35
78
  """
36
- directory - str - desired stream dir
37
- unserInput=True - if a failure occurs userInput=True allows user to rectify problem with user input. set to False if user interaction is not available (automating).
79
+ return quarchStream(self, directory, user_input, stream_duration)
80
+
81
+ def startStream(self, directory: str, unserInput: bool = True, streamDuration: str = "") -> 'quarchStream':
38
82
  """
39
- #time.sleep(1) # TODO remove this sleep once script->QPS timeing issue resolved. This works fine in the meantime
40
- return quarchStream(self.quarchDevice, directory, unserInput, streamDuration)
83
+ DEPRECATED: Use start_stream instead.
84
+
85
+ Args:
86
+ directory (str): The target directory where stream data will be saved.
87
+ unserInput (bool, optional): Controls user interaction on failure.
88
+ streamDuration (str, optional): Defines the requested duration.
89
+
90
+ Returns:
91
+ quarchStream: An instance of the quarchStream class.
92
+ """
93
+ return self.start_stream(directory, unserInput, streamDuration)
41
94
 
42
95
 
43
96
  class quarchStream:
44
- def __init__(self, quarchQPS, directory, unserInput=True, streamDuration=""):
97
+ """
98
+ Manages an active data stream from a Quarch QPS device.
99
+
100
+ Instantiation automatically attempts to start the stream. Provides methods to
101
+ control and monitor the stream.
102
+ """
103
+
104
+ def __init__(self, quarchQPS: quarchQPS, directory: str, unserInput: bool = True, streamDuration: str = ""):
105
+ """
106
+ Initializes and attempts to start a data stream from the connected device.
107
+
108
+ Args:
109
+ quarchQPS (quarchQPS): The quarchQPS object to stream from.
110
+ directory (str): The target directory for the stream data.
111
+ unserInput (bool, optional): Controls user interaction if the initial
112
+ stream start command fails. Defaults to True.
113
+ streamDuration (str, optional): Requested stream duration. Defaults to "".
114
+
115
+ Raises:
116
+ Exception: If starting the stream fails and `unserInput` is False.
117
+ """
45
118
  self.connectionObj = quarchQPS.connectionObj
46
- self.IP_address = quarchQPS.connectionObj.qps.host
47
- self.port_number = quarchQPS.connectionObj.qps.port
119
+ self.IP_address = quarchQPS.IP_address
120
+ self.port_number = quarchQPS.port_number
48
121
  self.ConString = quarchQPS.ConString
49
122
  self.ConType = quarchQPS.ConType
50
- # time.sleep(1) # TODO Nabil - Is this required?
123
+
51
124
  response = self.startQPSStream(directory, streamDuration)
52
- if not "fail:" in response.lower():
53
- return
54
- else:
125
+ if "fail:" in response.lower():
55
126
  if unserInput is False:
56
127
  raise Exception(response)
57
128
  else:
58
- self.failCheck(response)
129
+ self.failCheck(response, streamDuration)
130
+
131
+ # --- Public API Methods ---
132
+
133
+ def start_qps_stream(self, new_directory: str, stream_duration: str = "") -> str:
134
+ """
135
+ Sends the command to start the QPS stream.
59
136
 
60
- def startQPSStream(self, newDirectory, streamDuration=""):
61
- '''STARTS the QPS stream '''
62
- # Set the stream duration if required.
63
- response = self.connectionObj.qps.sendCmdVerbose("$start stream \"" + str(newDirectory) + "\" " + str(streamDuration))
137
+ Args:
138
+ new_directory (str): The path for the stream data.
139
+ stream_duration (str, optional): The duration for the stream. Defaults to "".
140
+
141
+ Returns:
142
+ str: The response from the QPS system.
143
+ """
144
+ command = f'$start stream "{new_directory}" {stream_duration}'.strip()
145
+ response = self.connectionObj.qps.sendCmdVerbose(command)
64
146
  if "Error" in response:
65
- response = self.connectionObj.qps.sendCmdVerbose("$start stream " + str(newDirectory) + " " + streamDuration)
147
+ logging.debug("Initial start stream command failed with 'Error', retrying once.")
148
+ response = self.connectionObj.qps.sendCmdVerbose(command)
66
149
  return response
67
150
 
68
- def failCheck(self, response):
69
- ''' handles failed starting of stream that requires input from user to fix.'''
151
+ def startQPSStream(self, newDirectory: str, streamDuration: str = "") -> str:
152
+ """
153
+ DEPRECATED: Use start_qps_stream instead.
154
+
155
+ Args:
156
+ newDirectory (str): The path to the directory where the stream data should be saved.
157
+ streamDuration (str, optional): The duration for which the stream should run.
158
+
159
+ Returns:
160
+ str: The response message from the QPS system.
161
+ """
162
+ return self.start_qps_stream(newDirectory, streamDuration)
163
+
164
+ def fail_check(self, response: str, stream_duration: str) -> str:
165
+ """
166
+ Handles recoverable failures during stream startup.
167
+
168
+ Currently handles "Directory already exists" by prompting for a new name.
169
+
170
+ Args:
171
+ response (str): The failure response message from the server.
172
+ stream_duration (str): The stream duration, for retrying.
173
+
174
+ Returns:
175
+ str: The successful response after a retry.
176
+
177
+ Raises:
178
+ Exception: If the failure is not a known, handled type.
179
+ """
70
180
  while "fail:" in response.lower():
71
181
  if "Fail: Directory already exists" in response:
72
- newDir = requestDialog(message=response + " Please enter a new file name:")
73
- response = self.startQPSStream(newDir)
74
- else: # If its a failure we don't know how to handle.
75
- raise Exception(response)
182
+ new_dir = requestDialog(message=f"{response}\nPlease enter a new file name:")
183
+ response = self.start_qps_stream(new_dir, stream_duration)
184
+ else:
185
+ raise Exception(f"Unhandled QPS stream start failure: {response}")
76
186
  return response
77
187
 
78
- def get_stats(self, format="df"):
188
+ def failCheck(self, response: str, streamDuration: str) -> str:
189
+ """
190
+ DEPRECATED: Use fail_check instead.
191
+
192
+ Args:
193
+ response (str): The response message from a stream start attempt.
194
+ streamDuration (str): The duration for the stream, needed for retry attempts.
195
+
196
+ Returns:
197
+ str: The successful response message after a retry.
198
+
199
+ Raises:
200
+ Exception: If the response contains an unhandled failure.
79
201
  """
80
- Returns the QPS annotation statistics grid information as a pandas dataframe object
202
+ return self.fail_check(response, streamDuration)
81
203
 
82
- Returns
83
- -------
84
- df = : dataframe
85
- The response text from QPS. If successful "ok. Saving stats to : file_name" otherwise returns the exception thrown
204
+ def get_stats(self, format: str = "df") -> Union[pd.DataFrame, List[List[str]], None]:
205
+ """
206
+ Retrieves statistics from the QPS device.
207
+
208
+ Args:
209
+ format (str, optional): The desired output format ("df" for pandas
210
+ DataFrame, "list" for list of lists). Defaults to "df".
211
+
212
+ Returns:
213
+ Union[pd.DataFrame, List[List[str]], None]: Statistics data in the
214
+ specified format, or None if pandas is required but not found.
215
+
216
+ Raises:
217
+ Exception: If the QPS command fails.
86
218
  """
87
219
  command_response = self.connectionObj.qps.sendCmdVerbose("$get stats", timeout=60).strip()
88
220
  if command_response.startswith("Fail"):
89
221
  raise Exception(command_response)
90
222
 
91
223
  if format == "df":
92
- try:
93
- import warnings
94
- import pandas as pd
95
- warnings.simplefilter(action='ignore', category=FutureWarning)
96
- except Exception as e:
97
- logging.error(e)
98
- logging.warning("pandas not imported correctly. Continuing")
99
- pd.set_option('display.max_columns', None)
100
- pd.set_option('display.width', 1024)
224
+ if pd is None:
225
+ logging.error("Pandas is not installed, cannot return DataFrame.")
226
+ return None
227
+
101
228
  test_data = StringIO(command_response)
102
229
 
103
- # pandas.read_csv() replaced error_bad_lines with on_bad_lines from v1.3.0
104
- if Version.is_v1_ge_v2(pd.__version__, "1.3.0"):
105
- retVal = pd.read_csv(test_data, sep=",", header=[0, 1], on_bad_lines="skip")
106
- else:
107
- retVal = pd.read_csv(test_data, sep=",", header=[0, 1], error_bad_lines=False)
230
+ df = pd.read_csv(test_data, sep=",", header=[0, 1], on_bad_lines="skip")
231
+
232
+ return df
233
+
108
234
  elif format == "list":
109
- retVal = []
235
+ ret_val = []
110
236
  for line in command_response.replace("\r\n", "\n").split("\n"):
111
- row = []
112
- for element in line.split(","):
113
- row.append(element)
114
- retVal.append(row)
237
+ row = [element for element in line.split(",")]
238
+ ret_val.append(row)
239
+ return ret_val
115
240
 
116
- return retVal
241
+ return None
117
242
 
118
- def stats_to_CSV(self, file_name="", poll_till_complete=False, check_interval=0.5):
243
+ def stats_to_csv(self, file_name: str = "", poll_till_complete: bool = False,
244
+ check_interval: float = 0.5, timeout: int = 60) -> str:
119
245
  """
120
- Saves the statistics grid to a csv file
121
-
122
- Parameters
123
- ----------
124
- file-name= : str, optional
125
- The absolute path of the file you would like to save the csv to. If left empty then a filename will be give.
126
- Default location is the path of the executable.
127
- Returns
128
- -------
129
- command_response : str or None
130
-
131
- The response text from QPS. If successful "ok. Saving stats to : file_name" otherwise returns the exception thrown
246
+ Commands the QPS device to save its current statistics to a CSV file.
247
+
248
+ Args:
249
+ file_name (str, optional): Absolute path for the CSV file on the QPS
250
+ device's filesystem. Defaults to "".
251
+ poll_till_complete (bool, optional): If True, waits for the export
252
+ to finish. Defaults to False.
253
+ check_interval (float, optional): Seconds between status checks when
254
+ polling. Defaults to 0.5.
255
+ timeout (int, optional): Max seconds to wait for polling to complete.
256
+ Defaults to 60.
257
+
258
+ Returns:
259
+ str: The initial response from the QPS device.
260
+
261
+ Raises:
262
+ Exception: If the initial QPS command fails.
263
+ TimeoutError: If polling is enabled and times out.
132
264
  """
133
- command_response = self.connectionObj.qps.sendCmdVerbose("$stats to csv \"" + file_name + "\"", timeout=60)
265
+ cmd = f'$stats to csv "{file_name}"'
266
+ command_response = self.connectionObj.qps.sendCmdVerbose(cmd, timeout=60)
267
+
134
268
  if command_response.startswith("Fail"):
135
269
  raise Exception(command_response)
136
270
 
137
- #UNCOMMENT
138
- # if poll_till_complete:
139
- # is_exporting = check_export_status(self.get_stats_export_status())
140
- # while is_exporting:
141
- # is_exporting = check_export_status(self.get_stats_export_status())
142
- # time.sleep(check_interval)
271
+ if poll_till_complete:
272
+ start_time = time.monotonic()
273
+ while check_export_status(self.get_stats_export_status()):
274
+ if (time.monotonic() - start_time) > timeout:
275
+ raise TimeoutError(f"QPS CSV Export of stats timed out after {timeout} seconds")
276
+ time.sleep(check_interval)
277
+
143
278
  return command_response
144
279
 
145
- def get_custom_stats_range(self, start_time, end_time):
146
- """
147
- Returns the QPS statistics information over a specific time ignoring any set annotations.
148
-
149
- Parameters
150
- ----------
151
- start_time = : str
152
- The time in seconds you would like the stats to start this can be in integer or string format.
153
- or using the following format to specify daysDhours:minutes:seconds.milliseconds
154
- xxxDxx:xx:xx.xxxx
155
- end_time = : str
156
- The time in seconds you would like the stats to stop this can be in integer or string format
157
- or using the following format to specify daysDhours:minutes:seconds.milliseconds
158
- xxxDxx:xx:xx.xxxx
159
- Returns
160
- -------
161
- df = : dataframe
162
- The response text from QPS. If successful "ok. Saving stats to : file_name" otherwise returns the exception thrown
280
+ def stats_to_CSV(self, file_name: str = "", poll_till_complete: bool = False,
281
+ check_interval: float = 0.5, timeout: int = 60) -> str:
163
282
  """
164
- try:
165
- import warnings
166
- import pandas as pd
167
- warnings.simplefilter(action='ignore', category=FutureWarning)
168
- except ImportError:
169
- logging.warning("pandas not imported correctly")
283
+ DEPRECATED: Use stats_to_csv instead.
284
+
285
+ Args:
286
+ file_name (str, optional): The absolute path for the CSV file. Defaults to "".
287
+ poll_till_complete (bool, optional): If True, polls until the export is
288
+ finished. Defaults to False.
289
+ check_interval (float, optional): Time in seconds between status checks
290
+ when polling. Defaults to 0.5.
291
+ timeout (int, optional): Max time in seconds to wait for polling. Defaults to 60.
292
+
293
+ Returns:
294
+ str: The initial response message from the QPS device.
295
+ """
296
+ return self.stats_to_csv(file_name, poll_till_complete, check_interval, timeout)
297
+
298
+ def get_custom_stats_range(self, start_time: Union[int, str], end_time: Union[int, str]) -> Optional[pd.DataFrame]:
299
+ """
300
+ Retrieves statistics from the QPS device for a specified time range.
301
+
302
+ Args:
303
+ start_time (Union[int, str]): The start time for stats calculation.
304
+ end_time (Union[int, str]): The end time for stats calculation.
305
+
306
+ Returns:
307
+ Optional[pd.DataFrame]: A DataFrame containing the stats.
308
+
309
+ Raises:
310
+ ImportError: If the pandas library is not installed.
311
+ Exception: If the QPS command fails or data parsing fails.
312
+ """
313
+ if pd is None:
314
+ logging.warning("pandas not imported correctly. Required for get_custom_stats_range.")
315
+ raise ImportError("pandas library is required for get_custom_stats_range")
170
316
 
171
317
  command_response = self.connectionObj.qps.sendCmdVerbose(
172
- "$get custom stats range " + str(start_time) + " " + str(end_time), timeout=60)
318
+ f"$get custom stats range {start_time} {end_time}", timeout=60)
173
319
 
174
320
  if command_response.startswith("Fail"):
175
321
  raise Exception(command_response)
176
- test_data = StringIO(command_response)
177
322
 
323
+ test_data = StringIO(command_response)
178
324
  try:
179
- pd.set_option('display.max_columns', None)
180
- pd.set_option('display.width', 1024)
181
- if Version.is_v1_ge_v2(pd.__version__, "1.3.0"):
182
- df = pd.read_csv(test_data, sep=",", header=[0, 1], on_bad_lines="skip")
183
- else:
184
- df = pd.read_csv(test_data, sep=",", header=[0, 1], error_bad_lines=False)
325
+ df = pd.read_csv(test_data, sep=",", header=[0, 1], on_bad_lines="skip")
185
326
  except Exception as e:
186
- logging.error("Unable to create pandas data frame from command response :" + str(command_response))
327
+ logging.error(f"Unable to create pandas data frame from command response: {command_response}")
187
328
  raise e
188
329
  return df
189
330
 
190
- def takeSnapshot(self):
331
+ def take_snapshot(self) -> str:
191
332
  """
192
- Triggers QPS take snapshot function and saves it in the streams directory.
333
+ Triggers the QPS device to capture an immediate snapshot.
334
+
335
+ Returns:
336
+ str: The response from the QPS device.
337
+
338
+ Raises:
339
+ Exception: If the command fails.
193
340
  """
194
341
  command_response = self.connectionObj.qps.sendCmdVerbose("$take snapshot")
195
342
  if command_response.startswith("Fail"):
196
343
  raise Exception(command_response)
197
- return (command_response)
344
+ return command_response
198
345
 
199
- def getStreamState(self):
346
+ def takeSnapshot(self) -> str:
200
347
  """
201
- Asks QPS for the stream status.
202
- QPS stream state != Module stream state.
203
- This is different from "rec stream?" cmd to the module as it will return "streaming" when the module is no longer streaming but QPS is still receiveing stream data from the module.
204
- ei the module has stopped streaming but is emptying the stream buffer.
348
+ DEPRECATED: Use take_snapshot instead.
349
+
350
+ Returns:
351
+ str: The response message from the QPS device.
352
+ """
353
+ return self.take_snapshot()
354
+
355
+ def get_stream_state(self) -> str:
356
+ """
357
+ Queries the QPS application for its current stream processing state.
358
+
359
+ Returns:
360
+ str: The stream state as reported by the QPS application.
361
+
362
+ Raises:
363
+ Exception: If the command fails.
205
364
  """
206
365
  command_response = self.connectionObj.qps.sendCmdVerbose("$stream state")
207
366
  if command_response.startswith("Fail"):
208
367
  raise Exception(command_response)
209
- return (command_response)
210
-
211
- def addAnnotation(self, title, annotationTime=0, extraText="", yPos="", titleColor="", annotationColor="",
212
- annotationType="", annotationGroup="", timeFormat="unix"):
213
- """
214
- Adds a custom annotation to stream with given parameters.
215
-
216
- Parameters
217
- ----------
218
- title= : str
219
- The title appears next to the annotation in the stream
220
- extraText= : str, optional
221
- The additional text that can be viewed when selecting the annotation
222
- yPos : str, optional
223
- The percetange of how high up the screen the annotation should appear 0 is the bottom and 100 the top
224
- titleColor : str, optional
225
- The color of the text next to the annotation in hex format 000000 to FFFFFF
226
- annotationColor : str, optional
227
- The color of the annotation marker in hex format 000000 to FFFFFF
228
- annotationType : str, optional
229
- The group the annotation belongs to, annotation comment or any custom group the user has made.
230
- timeFormat : str, optional
231
- The time in milliseconds after the start of the stream at which the annotation should be placed. 0 will plot the annotation live at the most recent sample
232
-
233
- Returns
234
- -------
235
- command_response : str or None
236
-
237
- The response text from QPS. "ok" if annotation successfully added
238
- """
239
-
240
- annotationType = annotationType.lower()
241
- annotationTime = str(annotationTime)
242
-
243
- if annotationTime[0].isalpha() or annotationTime[-1].isalpha():
244
- timeFormat = "elapsed"
245
- if annotationTime.startswith(
246
- "e"): #Old format allowed e to be used to pass elapsed time in seconds "e2" -> 2s + elapsed
247
- annotationTime = annotationTime[1:] + "s"
248
-
249
- elif annotationTime == "0":
250
- annotationTime = current_milli_time()
251
- timeFormat = "unix"
252
-
253
- if annotationType == "" or annotationType == "annotation":
254
- annotationType = "annotate"
255
- elif annotationType == "comment":
256
- pass # already in the correct format for command
257
- # else: # QPS now supports custom types passed as annotationType rather than annotation group.
258
- # retString = "Fail annotationType must be 'annotation' or 'comment'"
259
- # logging.warning(retString)
260
- # return retString
368
+ return command_response
369
+
370
+ def getStreamState(self) -> str:
371
+ """
372
+ DEPRECATED: Use get_stream_state instead.
373
+
374
+ Returns:
375
+ str: The stream state reported by the QPS application.
376
+ """
377
+ return self.get_stream_state()
378
+
379
+ def add_annotation(self, title: str, annotation_time: Union[int, str] = 0, extra_text: str = "",
380
+ y_pos: Union[int, str] = "",
381
+ title_color: str = "", annotation_color: str = "", annotation_type: str = "annotate",
382
+ time_format: str = "unix") -> str:
383
+ """
384
+ Adds a custom annotation marker to the active QPS stream.
385
+
386
+ Args:
387
+ title (str): The primary text label for the annotation.
388
+ annotation_time (Union[int, str], optional): When the annotation appears. Defaults to 0 ("now").
389
+ extra_text (str, optional): Additional text for the annotation. Defaults to "".
390
+ y_pos (Union[int, str], optional): Vertical position (0-100). Defaults to "".
391
+ title_color (str, optional): Hex color for the title. Defaults to "".
392
+ annotation_color (str, optional): Hex color for the marker. Defaults to "".
393
+ annotation_type (str, optional): "annotate" or "comment". Defaults to "annotate".
394
+ time_format (str, optional): "unix" or "elapsed". Defaults to "unix".
395
+
396
+ Returns:
397
+ str: The response message from the QPS device.
398
+ """
399
+ time_val = str(annotation_time)
400
+ if any(c.isalpha() for c in time_val):
401
+ time_format = "elapsed"
402
+ if time_val.startswith("e"):
403
+ time_val = time_val[1:] + "s"
404
+ elif time_val == "0":
405
+ time_val = qpsNowStr()
406
+ time_format = "unix"
261
407
 
262
408
  title = title.replace("\n", "\\n")
263
- cmd = "$stream annotation add " + " time=" + str(annotationTime) + " text=\"" + title + "\""
264
- if extraText != "":
265
- extraText = extraText.replace("\n", "\\n")
266
- cmd += " extraText=\"" + str(extraText) + "\""
267
- if yPos != "":
268
- cmd += " yPos=" + str(yPos)
269
- if type != "":
270
- cmd += " type=" + str(annotationType)
271
- if annotationColor != "":
272
- cmd += " colour=" + str(annotationColor)
273
- if titleColor != "":
274
- cmd += " textColour=" + str(titleColor)
275
- if timeFormat != "":
276
- cmd += " timeFormat=" + str(timeFormat)
409
+ extra_text = extra_text.replace("\n", "\\n")
410
+
411
+ cmd = f'$stream annotation add time={time_val} text="{title}"'
412
+ if extra_text:
413
+ cmd += f' extraText="{extra_text}"'
414
+ if y_pos != "":
415
+ cmd += f' yPos={y_pos}'
416
+ if annotation_type:
417
+ cmd += f' type={annotation_type}'
418
+ if annotation_color:
419
+ cmd += f' colour={annotation_color}'
420
+ if title_color:
421
+ cmd += f' textColour={title_color}'
422
+ if time_format:
423
+ cmd += f' timeFormat={time_format}'
277
424
 
278
425
  return self.connectionObj.qps.sendCmdVerbose(cmd)
279
426
 
280
- def addComment(self, title, commentTime=0, extraText="", yPos="", titleColor="", commentColor="", annotationType="",
281
- annotationGroup="", timeFormat="unix"):
282
- # Comments are just annotations that do not affect the statistics grid.
283
- # This function was kept to be backwards compatible and is a simple pass through to add annotation.
284
- if annotationType == "":
285
- annotationType = "comment"
286
- return self.addAnnotation(title=title, annotationTime=commentTime, extraText=extraText, yPos=yPos,
287
- titleColor=titleColor, annotationColor=commentColor, annotationType=annotationType,
288
- annotationGroup=annotationGroup, timeFormat=timeFormat)
289
-
290
- def saveCSV(self, filePath, linesPerFile=None, cr=None, delimiter=None, timeout=60, pollTillComplete=False,
291
- checkInterval=0.5):
292
- """
293
- Saves the stream to csv file at specified location
294
-
295
- Parameters
296
- ----------
297
- filePath= : str
298
- The file path that ou would like the CSV file saved to.
299
- linesPerFile= : str, optional
300
- The number of lines per CSV file. Can be any int number or "all"
301
- cr : bool, optional
302
- Whether the end of line terminator should include a carriage return.
303
- delimiter : str, optional
304
- The delimiter to be used by the csv file.
305
- timeout : str, otptional
306
- The timeout to wait for a response from QPS
307
-
308
- Returns
309
- -------
310
- command_response : str or None
311
- The response text from QPS. "ok" if command is successful or the stack trace if exception thrown
427
+ def addAnnotation(self, title: str, annotationTime: Union[int, str] = 0, extraText: str = "",
428
+ yPos: Union[int, str] = "",
429
+ titleColor: str = "", annotationColor: str = "", annotationType: str = "",
430
+ annotationGroup: str = "", timeFormat: str = "unix") -> str:
431
+ """
432
+ DEPRECATED: Use add_annotation instead.
433
+
434
+ Args:
435
+ title (str): The primary text label for the annotation.
436
+ annotationTime (Union[int, str], optional): Timestamp. Defaults to 0 ("now").
437
+ extraText (str, optional): Additional text. Defaults to "".
438
+ yPos (Union[int, str], optional): Vertical position (0-100). Defaults to "".
439
+ titleColor (str, optional): Hex color for the title. Defaults to "".
440
+ annotationColor (str, optional): Hex color for the marker. Defaults to "".
441
+ annotationType (str, optional): "annotate" or "comment". Defaults to "".
442
+ annotationGroup (str, optional): Not used. Defaults to "".
443
+ timeFormat (str, optional): "unix" or "elapsed". Defaults to "unix".
444
+
445
+ Returns:
446
+ str: The response message from the QPS device.
447
+ """
448
+ current_type = annotationType.lower()
449
+ if current_type == "" or current_type == "annotation":
450
+ current_type = "annotate"
451
+
452
+ return self.add_annotation(title, annotation_time=annotationTime, extra_text=extraText, y_pos=yPos,
453
+ title_color=titleColor, annotation_color=annotationColor,
454
+ annotation_type=current_type, time_format=timeFormat)
455
+
456
+ def add_comment(self, title: str, comment_time: Union[int, str] = 0, **kwargs: Any) -> str:
457
+ """
458
+ Adds a 'comment' type annotation to the QPS stream.
459
+
460
+ This is a convenience wrapper for `add_annotation` that sets the type to 'comment'.
461
+
462
+ Args:
463
+ title (str): The text label for the comment.
464
+ comment_time (Union[int, str], optional): The timestamp. Defaults to 0.
465
+ **kwargs: Other arguments accepted by `add_annotation`.
466
+
467
+ Returns:
468
+ str: The response message from the QPS device.
469
+ """
470
+ kwargs['annotation_type'] = 'comment'
471
+ return self.add_annotation(title, annotation_time=comment_time, **kwargs)
472
+
473
+ def addComment(self, title: str, commentTime: Union[int, str] = 0, extraText: str = "", yPos: Union[int, str] = "",
474
+ titleColor: str = "", commentColor: str = "", annotationType: str = "",
475
+ annotationGroup: str = "", timeFormat: str = "unix") -> str:
476
+ """
477
+ DEPRECATED: Use add_comment instead.
478
+
479
+ Args:
480
+ title (str): The text label for the comment.
481
+ commentTime (Union[int, str], optional): The timestamp. Defaults to 0.
482
+ extraText (str, optional): Additional text. Defaults to "".
483
+ yPos (Union[int, str], optional): Vertical position (0-100). Defaults to "".
484
+ titleColor (str, optional): Hex color for the title. Defaults to "".
485
+ commentColor (str, optional): Hex color for the comment marker. Defaults to "".
486
+ annotationType (str, optional): Overridden to 'comment'. Defaults to "".
487
+ annotationGroup (str, optional): Not used. Defaults to "".
488
+ timeFormat (str, optional): "unix" or "elapsed". Defaults to "unix".
489
+
490
+ Returns:
491
+ str: The response message from the QPS device.
492
+ """
493
+ return self.add_comment(title, comment_time=commentTime, extraText=extraText, yPos=yPos,
494
+ titleColor=titleColor, commentColor=commentColor,
495
+ timeFormat=timeFormat)
496
+
497
+ def save_csv(self, file_path: str, lines_per_file: Optional[Union[int, str]] = None, use_cr: Optional[bool] = None,
498
+ delimiter: Optional[str] = None, timeout: int = 180, poll_till_complete: bool = False,
499
+ check_interval: float = 0.5) -> str:
500
+ """
501
+ Commands the QPS device to save the stream data to a CSV file.
502
+
503
+ Args:
504
+ file_path (str): Target file path on the QPS device's filesystem.
505
+ lines_per_file (Optional[Union[int, str]], optional): Max lines per file. Defaults to None.
506
+ use_cr (Optional[bool], optional): True for CRLF, False for LF. Defaults to None.
507
+ delimiter (Optional[str], optional): Field delimiter for the CSV. Defaults to None.
508
+ timeout (int, optional): Timeout in seconds. Defaults to 180.
509
+ poll_till_complete (bool, optional): If True, waits for export to finish. Defaults to False.
510
+ check_interval (float, optional): Seconds between status checks when polling. Defaults to 0.5.
511
+
512
+ Returns:
513
+ str: The initial response from the QPS device.
514
+
515
+ Raises:
516
+ TimeoutError: If polling is enabled and the export does not complete in time.
312
517
  """
313
518
  args = ""
519
+ if lines_per_file is not None:
520
+ args += f" -l{lines_per_file}"
521
+ if use_cr is not None:
522
+ args += " -cyes" if use_cr else " -cno"
523
+ if delimiter is not None:
524
+ args += f" -s{delimiter}"
525
+
526
+ command = f'$save csv "{file_path}" {args}'.strip()
527
+ command_response = self.connectionObj.qps.sendCmdVerbose(command, timeout=timeout)
528
+
529
+ if poll_till_complete:
530
+ start_time = time.monotonic()
531
+ while check_export_status(self.get_stream_export_status()):
532
+ if (time.monotonic() - start_time) > timeout:
533
+ raise TimeoutError(f"Stream export to CSV timed out after {timeout} seconds")
534
+ logging.debug("Waiting for stream export to complete...")
535
+ time.sleep(check_interval)
314
536
 
315
- if linesPerFile != None:
316
- args += " -l" + str(linesPerFile)
317
- if cr != None:
318
- if cr is True:
319
- args += " -cyes"
320
- elif cr is False:
321
- args += " -cno"
322
- if delimiter != None:
323
- args += " -s" + delimiter
324
-
325
- # if pollTillComplete:
326
- # is_exporting = check_export_status(self.get_stream_export_status())
327
- # while is_exporting:
328
- # is_exporting = check_export_status(self.get_stream_export_status())
329
- # time.sleep(checkInterval)
330
-
331
- # , filePath, linesPerFile, cr, delimiter
332
- return self.connectionObj.qps.sendCmdVerbose("$save csv \"" + filePath + "\" " + args, timeout=timeout)
333
-
334
- def createChannel(self, channelName, channelGroup, baseUnits, usePrefix):
335
- # Conditions to convert false / true inputs to specification input
336
- if usePrefix == False:
337
- usePrefix = "no"
338
- if usePrefix == True:
339
- usePrefix = "yes"
340
-
341
- return self.connectionObj.qps.sendCmdVerbose(
342
- "$create channel " + channelName + " " + channelGroup + " " + baseUnits + " " + usePrefix)
343
-
344
- def hideChannel(self, channelSpecifier):
345
- return self.connectionObj.qps.sendCmdVerbose("$hide channel " + channelSpecifier)
346
-
347
- def showChannel(self, channelSpecifier):
348
- return self.connectionObj.qps.sendCmdVerbose("$show channel " + channelSpecifier)
349
-
350
- def myChannels(self):
351
- return self.connectionObj.qps.sendCmdVerbose("$channels")
537
+ return command_response
538
+
539
+ def saveCSV(self, filePath: str, linesPerFile: Optional[Union[int, str]] = None, cr: Optional[bool] = None,
540
+ delimiter: Optional[str] = None, timeout: int = 180, pollTillComplete: bool = False,
541
+ checkInterval: float = 0.5) -> str:
542
+ """
543
+ DEPRECATED: Use save_csv instead.
544
+
545
+ Args:
546
+ filePath (str): The target file path on the QPS device's filesystem.
547
+ linesPerFile (Optional[Union[int, str]], optional): Max lines per file. Defaults to None.
548
+ cr (Optional[bool], optional): True for CRLF, False for LF line endings. Defaults to None.
549
+ delimiter (Optional[str], optional): Field delimiter for the CSV. Defaults to None.
550
+ timeout (int, optional): Timeout in seconds. Defaults to 180.
551
+ pollTillComplete (bool, optional): If True, waits for export to finish. Defaults to False.
552
+ checkInterval (float, optional): Seconds between status checks when polling. Defaults to 0.5.
553
+
554
+ Returns:
555
+ str: The initial response from the QPS device.
556
+ """
557
+ return self.save_csv(filePath, linesPerFile, cr, delimiter, timeout, pollTillComplete, checkInterval)
558
+
559
+ def create_channel(self, channel_name: str, channel_group: str, base_units: str, use_prefix: bool) -> str:
560
+ """
561
+ Creates a new custom data channel on the QPS device.
562
+
563
+ Args:
564
+ channel_name (str): The name for the new channel.
565
+ channel_group (str): The group to associate the channel with (e.g., "Voltage").
566
+ base_units (str): The fundamental unit for the channel (e.g., "V", "A").
567
+ use_prefix (bool): If True, allows channel prefixes (e.g., 'm' for milli).
568
+
569
+ Returns:
570
+ str: The response from the QPS device.
571
+ """
572
+ prefix_str = "yes" if use_prefix else "no"
573
+ command = f"$create channel {channel_name} {channel_group} {base_units} {prefix_str}"
574
+ return self.connectionObj.qps.sendCmdVerbose(command)
575
+
576
+ def createChannel(self, channelName: str, channelGroup: str, baseUnits: str, usePrefix: bool) -> str:
577
+ """
578
+ DEPRECATED: Use create_channel instead.
352
579
 
353
- def channels(self):
580
+ Args:
581
+ channelName (str): The name for the new channel.
582
+ channelGroup (str): The group to associate the channel with.
583
+ baseUnits (str): The fundamental unit for the channel.
584
+ usePrefix (bool): If True, allows channel prefixes.
585
+
586
+ Returns:
587
+ str: The response message from the QPS device.
588
+ """
589
+ return self.create_channel(channelName, channelGroup, baseUnits, usePrefix)
590
+
591
+ def hide_channel(self, channel_specifier: str) -> str:
592
+ """
593
+ Hides a specified channel from the QPS stream view.
594
+
595
+ Args:
596
+ channel_specifier (str): The identifier of the channel to hide (e.g., "5v:voltage").
597
+
598
+ Returns:
599
+ str: The response from the QPS device.
600
+ """
601
+ return self.connectionObj.qps.sendCmdVerbose(f"$hide channel {channel_specifier}")
602
+
603
+ def hideChannel(self, channelSpecifier: str) -> str:
604
+ """
605
+ DEPRECATED: Use hide_channel instead.
606
+
607
+ Args:
608
+ channelSpecifier (str): The identifier of the channel to hide.
609
+
610
+ Returns:
611
+ str: The response message from the QPS device.
612
+ """
613
+ return self.hide_channel(channelSpecifier)
614
+
615
+ def show_channel(self, channel_specifier: str) -> str:
616
+ """
617
+ Shows (un-hides) a specified channel in the QPS stream view.
618
+
619
+ Args:
620
+ channel_specifier (str): The identifier of the channel to show.
621
+
622
+ Returns:
623
+ str: The response from the QPS device.
624
+ """
625
+ return self.connectionObj.qps.sendCmdVerbose(f"$show channel {channel_specifier}")
626
+
627
+ def showChannel(self, channelSpecifier: str) -> str:
628
+ """
629
+ DEPRECATED: Use show_channel instead.
630
+
631
+ Args:
632
+ channelSpecifier (str): The identifier of the channel to show.
633
+
634
+ Returns:
635
+ str: The response message from the QPS device.
636
+ """
637
+ return self.show_channel(channelSpecifier)
638
+
639
+ def channels(self) -> List[str]:
640
+ """
641
+ Retrieves the list of available channels from QPS, split into a list of strings.
642
+
643
+ Returns:
644
+ list[str]: A list where each element is a channel identifier string.
645
+ """
354
646
  return self.connectionObj.qps.sendCmdVerbose("$channels").splitlines()
355
647
 
356
- def stopStream(self, pollTillComplete=False, checkInterval=0.5):
357
- # Stop the stream
358
- response = self.connectionObj.qps.sendCmdVerbose("$stop stream")
359
- # Poll till stream has completed if required
360
- if pollTillComplete:
361
- # Get the current stream status
362
- streamState = self.getStreamState().lower()
363
- # Verify the stream stopped correctly
364
- # response = check_stream_stopped_status(streamState)
365
- # while "running" in streamState:
366
- # logging.debug("Stream buffer still emptying: " + streamState)
367
- # streamState = self.getStreamState().lower()
368
- # response = check_stream_stopped_status(streamState)
369
- # time.sleep(checkInterval)
648
+ def myChannels(self) -> str:
649
+ """
650
+ DEPRECATED: Use channels instead.
370
651
 
371
- return response
652
+ Retrieves the list of available channels from QPS as a single raw string.
653
+
654
+ Returns:
655
+ str: The raw response string from the QPS '$channels' command.
656
+ """
657
+ return self.connectionObj.qps.sendCmdVerbose("$channels")
658
+
659
+ def hide_all_default_channels(self) -> None:
660
+ """
661
+ Hides a predefined list of common default QPS/PAM channels.
662
+
663
+ Note:
664
+ This list is hardcoded and might not be exhaustive for all hardware.
665
+ """
666
+ default_channels = [
667
+ "3.3v:voltage", "3v3:voltage", "5v:voltage", "12v:voltage",
668
+ "3.3v:current", "3v3:current", "5v:current", "12v:current",
669
+ "3.3v:power", "3v3:power", "5v:power", "12v:power", "tot:power",
670
+ "perst#:digital", "wake#:digital", "clkreq#:digital",
671
+ "smclk:digital", "smdat:digital"
672
+ ]
673
+ for channel in default_channels:
674
+ try:
675
+ self.hide_channel(channel)
676
+ except Exception as e:
677
+ logging.warning(f"Failed to hide default channel '{channel}': {e}")
678
+
679
+ def hideAllDefaultChannels(self) -> None:
680
+ """
681
+ DEPRECATED: Use hide_all_default_channels instead.
372
682
 
373
- def hideAllDefaultChannels(self):
374
-
375
- # TODO query QPS / Device for all channel names and hide all of them
376
- # All Default Channels
377
- self.hideChannel("3.3v:voltage")
378
- self.hideChannel("3v3:voltage")
379
- self.hideChannel("5v:voltage")
380
- self.hideChannel("12v:voltage")
381
- self.hideChannel("3v3:current")
382
- self.hideChannel("3.3v:current")
383
- self.hideChannel("5v:current")
384
- self.hideChannel("12v:current")
385
- self.hideChannel("3v3:power")
386
- self.hideChannel("3.3v:power")
387
- self.hideChannel("5v:power")
388
- self.hideChannel("12v:power")
389
- self.hideChannel("tot:power")
390
- # Default PAM channels
391
- self.hideChannel("perst#:digital")
392
- self.hideChannel("wake#:digital")
393
- self.hideChannel("lkreq#:digital")
394
- self.hideChannel("smclk:digital")
395
- self.hideChannel("smdat:digital")
396
-
397
- # function to add a data point to the stream
398
- # time value will default to current time if none passed
399
- def addDataPoint(self, channelName, groupName, dataValue, dataPointTime=0, timeFormat="unix"):
400
- '''
401
- channelName - str
402
- groupName - str
403
- dataValue - int/float value of the data point
404
- dataPointTime=0 - time of the data point
405
- timeFormat="unix" - the format of the given time ["elapsed"|"unix"]
406
- '''
407
- if dataPointTime == None or dataPointTime == 0:
408
- dataPointTime = qpsNowStr()
683
+ Hides a predefined list of common default QPS/PAM channels.
684
+ """
685
+ self.hide_all_default_channels()
686
+
687
+ def add_data_point(self, channel_name: str, group_name: str, data_value: Union[int, float],
688
+ data_point_time: Union[int, str] = 0, time_format: str = "unix") -> None:
689
+ """
690
+ Adds a single data point to a specified custom channel.
691
+
692
+ Args:
693
+ channel_name (str): The name of the custom channel.
694
+ group_name (str): The group associated with the channel.
695
+ data_value (Union[int, float]): The numeric value of the data point.
696
+ data_point_time (Union[int, str], optional): Timestamp for the data point.
697
+ Defaults to 0 (current time).
698
+ time_format (str, optional): "unix" or "elapsed". Defaults to "unix".
699
+ """
700
+ if data_point_time == 0:
701
+ timestamp = qpsNowStr()
702
+ time_format = "unix"
409
703
  else:
410
- dataPointTime = int(dataPointTime)
411
- logging.warning("$stream data add " + channelName + " " + groupName + " " + str(dataPointTime) + " " + str(
412
- dataValue) + " " + timeFormat)
413
- self.connectionObj.qps.sendCmdVerbose(
414
- "$stream data add " + channelName + " " + groupName + " " + str(dataPointTime) + " " + str(
415
- dataValue) + " " + timeFormat)
416
-
417
- def get_stream_export_status(self):
704
+ timestamp = str(data_point_time)
705
+
706
+ command = (f"$stream data add {channel_name} {group_name} "
707
+ f"{timestamp} {data_value} {time_format}")
708
+
709
+ self.connectionObj.qps.sendCmdVerbose(command)
710
+
711
+ def addDataPoint(self, channelName: str, groupName: str, dataValue: Union[int, float],
712
+ dataPointTime: Union[int, str] = 0, timeFormat: str = "unix") -> None:
713
+ """
714
+ DEPRECATED: Use add_data_point instead.
715
+
716
+ Adds a single data point to a specified custom channel in the QPS stream.
717
+
718
+ Args:
719
+ channelName (str): The name of the custom channel to add data to.
720
+ groupName (str): The group associated with the channel (must match creation).
721
+ dataValue (int or float): The numeric value of the data point.
722
+ dataPointTime (int or str, optional): The timestamp for the data point.
723
+ timeFormat (str, optional): The format of the given time ["elapsed"|"unix"].
724
+ """
725
+ self.add_data_point(channelName, groupName, dataValue, dataPointTime, timeFormat)
726
+
727
+ def get_stream_export_status(self) -> str:
728
+ """
729
+ Queries the QPS device for the status of the main stream data export process.
730
+
731
+ Returns:
732
+ str: The response string from QPS indicating the stream export status
733
+ """
418
734
  return self.connectionObj.qps.sendCmdVerbose("$stream export status")
419
735
 
420
- def get_stats_export_status(self):
736
+ def get_stats_export_status(self) -> str:
737
+ """
738
+ Queries the QPS device for the status of the statistics data export process.
739
+
740
+ Returns:
741
+ str: The response string from QPS indicating the stats export status
742
+ """
421
743
  return self.connectionObj.qps.sendCmdVerbose("$stream stats export status")
744
+
745
+ def stop_stream(self, poll_till_complete: bool = False, check_interval: float = 0.1, timeout: int = 60) -> Literal[Status.OVERRUN, Status.STOPPED] | Any:
746
+ """
747
+ Sends the command to stop the QPS data stream.
748
+
749
+ Args:
750
+ poll_till_complete (bool, optional): If True, waits for the stream to fully stop. Defaults to False.
751
+ check_interval (float, optional): Seconds between status checks when polling. Defaults to 0.1.
752
+ timeout (int, optional): Max seconds to wait for polling to complete. Defaults to 60.
753
+
754
+ Returns:
755
+ str: The final stream status if polling, otherwise the initial command response.
756
+
757
+ Raises:
758
+ Exception: If the stop command itself fails.
759
+ TimeoutError: If polling is enabled and times out.
760
+ """
761
+ response = self.connectionObj.qps.sendCmdVerbose("$stop stream")
762
+ if response.startswith("Fail"):
763
+ raise Exception(response)
764
+
765
+ if poll_till_complete:
766
+ start_time = time.monotonic()
767
+ while True:
768
+ stream_state = self.get_stream_state().lower()
769
+ is_stopped = check_stream_stopped_status(stream_state)
770
+ if is_stopped:
771
+ return is_stopped
772
+
773
+ if (time.monotonic() - start_time) > timeout:
774
+ raise TimeoutError(f"Timeout ({timeout}s) waiting for stream to stop. Last state: {stream_state}")
775
+
776
+ logging.debug(f"Stream buffer still emptying: {stream_state}")
777
+ time.sleep(check_interval)
778
+
779
+ return response
780
+
781
+ def stopStream(self, pollTillComplete: bool = False, checkInterval: float = 0.1, timeout: int = 60) -> str:
782
+ """
783
+ DEPRECATED: Use stop_stream instead.
784
+
785
+ Args:
786
+ pollTillComplete (bool, optional): If True, waits until the QPS stream
787
+ state is no longer "running". Defaults to False.
788
+ checkInterval (float, optional): Time in seconds between status checks
789
+ when polling. Defaults to 0.1.
790
+ timeout (int, optional): Maximum time in seconds to wait. Defaults to 60.
791
+
792
+ Returns:
793
+ str: The final checked stream status string ("STOPPED", "OVERRUN") if polling,
794
+ otherwise the initial response from the '$stop stream' command.
795
+ """
796
+ return self.stop_stream(pollTillComplete, checkInterval, timeout)
797
+
798
+
799
+ # -------------------------------------
800
+ # Constants/Enums
801
+ # -------------------------------------
802
+ class Status(enum.Enum):
803
+ IN_PROGRESS = "IN PROGRESS"
804
+ COMPLETE = "COMPLETE"
805
+ STOPPED = "STOPPED"
806
+ OVERRUN = "OVERRUN"
807
+ OK = "OK"
808
+
809
+
810
+ # -------------------------------------
811
+ # API Utility Functions
812
+ # -------------------------------------
813
+ def current_milli_time():
814
+ return int(round(time.time() * 1000))
815
+
816
+
817
+ def current_second_time():
818
+ return int(round(time.time()))
819
+
820
+
821
+ # -------------------------------------
822
+ # Stream API Utility Functions
823
+ # -------------------------------------
824
+ def check_stream_status(stream_status):
825
+ # Check the stream status, so we know if anything went wrong during the capture period
826
+ if "stopped" in stream_status:
827
+ if "overrun" in stream_status:
828
+ return '\tStream interrupted due to internal device buffer has filled up'
829
+ elif "user" in stream_status:
830
+ return '\tStream interrupted due to max file size has being exceeded'
831
+ else:
832
+ return "\tStopped for unknown reason"
833
+ return "\t Stream running"
834
+
835
+
836
+ def check_stream_stopped_status(stream_status):
837
+ # Check the stream status, so we know if anything went wrong during the capture period
838
+ if "stopped" in stream_status:
839
+ if "overrun" in stream_status:
840
+ logging.warning('Stream interrupted due to internal device buffer has filled up')
841
+ return Status.OVERRUN
842
+ else:
843
+ return Status.STOPPED
844
+ return Status.IN_PROGRESS
845
+
846
+
847
+ # -------------------------------------
848
+ # QPS API Utility Functions
849
+ # -------------------------------------
850
+ def check_export_status(export_status):
851
+ if export_status == Status.COMPLETE:
852
+ return True
853
+ elif export_status == Status.IN_PROGRESS:
854
+ return False
855
+ return False