pushwork 1.0.0

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 (184) hide show
  1. package/README.md +460 -0
  2. package/dist/browser/browser-sync-engine.d.ts +64 -0
  3. package/dist/browser/browser-sync-engine.d.ts.map +1 -0
  4. package/dist/browser/browser-sync-engine.js +303 -0
  5. package/dist/browser/browser-sync-engine.js.map +1 -0
  6. package/dist/browser/filesystem-adapter.d.ts +84 -0
  7. package/dist/browser/filesystem-adapter.d.ts.map +1 -0
  8. package/dist/browser/filesystem-adapter.js +413 -0
  9. package/dist/browser/filesystem-adapter.js.map +1 -0
  10. package/dist/browser/index.d.ts +36 -0
  11. package/dist/browser/index.d.ts.map +1 -0
  12. package/dist/browser/index.js +90 -0
  13. package/dist/browser/index.js.map +1 -0
  14. package/dist/browser/types.d.ts +70 -0
  15. package/dist/browser/types.d.ts.map +1 -0
  16. package/dist/browser/types.js +6 -0
  17. package/dist/browser/types.js.map +1 -0
  18. package/dist/cli/commands.d.ts +71 -0
  19. package/dist/cli/commands.d.ts.map +1 -0
  20. package/dist/cli/commands.js +794 -0
  21. package/dist/cli/commands.js.map +1 -0
  22. package/dist/cli/index.d.ts +2 -0
  23. package/dist/cli/index.d.ts.map +1 -0
  24. package/dist/cli/index.js +19 -0
  25. package/dist/cli/index.js.map +1 -0
  26. package/dist/cli.d.ts +3 -0
  27. package/dist/cli.d.ts.map +1 -0
  28. package/dist/cli.js +199 -0
  29. package/dist/cli.js.map +1 -0
  30. package/dist/config/index.d.ts +71 -0
  31. package/dist/config/index.d.ts.map +1 -0
  32. package/dist/config/index.js +314 -0
  33. package/dist/config/index.js.map +1 -0
  34. package/dist/core/change-detection.d.ts +78 -0
  35. package/dist/core/change-detection.d.ts.map +1 -0
  36. package/dist/core/change-detection.js +370 -0
  37. package/dist/core/change-detection.js.map +1 -0
  38. package/dist/core/index.d.ts +5 -0
  39. package/dist/core/index.d.ts.map +1 -0
  40. package/dist/core/index.js +22 -0
  41. package/dist/core/index.js.map +1 -0
  42. package/dist/core/isomorphic-snapshot.d.ts +58 -0
  43. package/dist/core/isomorphic-snapshot.d.ts.map +1 -0
  44. package/dist/core/isomorphic-snapshot.js +204 -0
  45. package/dist/core/isomorphic-snapshot.js.map +1 -0
  46. package/dist/core/move-detection.d.ts +72 -0
  47. package/dist/core/move-detection.d.ts.map +1 -0
  48. package/dist/core/move-detection.js +200 -0
  49. package/dist/core/move-detection.js.map +1 -0
  50. package/dist/core/snapshot.d.ts +109 -0
  51. package/dist/core/snapshot.d.ts.map +1 -0
  52. package/dist/core/snapshot.js +263 -0
  53. package/dist/core/snapshot.js.map +1 -0
  54. package/dist/core/sync-engine.d.ts +110 -0
  55. package/dist/core/sync-engine.d.ts.map +1 -0
  56. package/dist/core/sync-engine.js +817 -0
  57. package/dist/core/sync-engine.js.map +1 -0
  58. package/dist/index.d.ts +6 -0
  59. package/dist/index.d.ts.map +1 -0
  60. package/dist/index.js +27 -0
  61. package/dist/index.js.map +1 -0
  62. package/dist/platform/browser-filesystem.d.ts +26 -0
  63. package/dist/platform/browser-filesystem.d.ts.map +1 -0
  64. package/dist/platform/browser-filesystem.js +91 -0
  65. package/dist/platform/browser-filesystem.js.map +1 -0
  66. package/dist/platform/filesystem.d.ts +29 -0
  67. package/dist/platform/filesystem.d.ts.map +1 -0
  68. package/dist/platform/filesystem.js +65 -0
  69. package/dist/platform/filesystem.js.map +1 -0
  70. package/dist/platform/node-filesystem.d.ts +21 -0
  71. package/dist/platform/node-filesystem.d.ts.map +1 -0
  72. package/dist/platform/node-filesystem.js +93 -0
  73. package/dist/platform/node-filesystem.js.map +1 -0
  74. package/dist/types/config.d.ts +119 -0
  75. package/dist/types/config.d.ts.map +1 -0
  76. package/dist/types/config.js +3 -0
  77. package/dist/types/config.js.map +1 -0
  78. package/dist/types/documents.d.ts +70 -0
  79. package/dist/types/documents.d.ts.map +1 -0
  80. package/dist/types/documents.js +23 -0
  81. package/dist/types/documents.js.map +1 -0
  82. package/dist/types/index.d.ts +4 -0
  83. package/dist/types/index.d.ts.map +1 -0
  84. package/dist/types/index.js +23 -0
  85. package/dist/types/index.js.map +1 -0
  86. package/dist/types/snapshot.d.ts +81 -0
  87. package/dist/types/snapshot.d.ts.map +1 -0
  88. package/dist/types/snapshot.js +17 -0
  89. package/dist/types/snapshot.js.map +1 -0
  90. package/dist/utils/content-similarity.d.ts +53 -0
  91. package/dist/utils/content-similarity.d.ts.map +1 -0
  92. package/dist/utils/content-similarity.js +155 -0
  93. package/dist/utils/content-similarity.js.map +1 -0
  94. package/dist/utils/content.d.ts +5 -0
  95. package/dist/utils/content.d.ts.map +1 -0
  96. package/dist/utils/content.js +30 -0
  97. package/dist/utils/content.js.map +1 -0
  98. package/dist/utils/fs-browser.d.ts +57 -0
  99. package/dist/utils/fs-browser.d.ts.map +1 -0
  100. package/dist/utils/fs-browser.js +311 -0
  101. package/dist/utils/fs-browser.js.map +1 -0
  102. package/dist/utils/fs-node.d.ts +53 -0
  103. package/dist/utils/fs-node.d.ts.map +1 -0
  104. package/dist/utils/fs-node.js +220 -0
  105. package/dist/utils/fs-node.js.map +1 -0
  106. package/dist/utils/fs.d.ts +62 -0
  107. package/dist/utils/fs.d.ts.map +1 -0
  108. package/dist/utils/fs.js +293 -0
  109. package/dist/utils/fs.js.map +1 -0
  110. package/dist/utils/index.d.ts +4 -0
  111. package/dist/utils/index.d.ts.map +1 -0
  112. package/dist/utils/index.js +23 -0
  113. package/dist/utils/index.js.map +1 -0
  114. package/dist/utils/isomorphic.d.ts +29 -0
  115. package/dist/utils/isomorphic.d.ts.map +1 -0
  116. package/dist/utils/isomorphic.js +139 -0
  117. package/dist/utils/isomorphic.js.map +1 -0
  118. package/dist/utils/mime-types.d.ts +13 -0
  119. package/dist/utils/mime-types.d.ts.map +1 -0
  120. package/dist/utils/mime-types.js +240 -0
  121. package/dist/utils/mime-types.js.map +1 -0
  122. package/dist/utils/network-sync.d.ts +12 -0
  123. package/dist/utils/network-sync.d.ts.map +1 -0
  124. package/dist/utils/network-sync.js +149 -0
  125. package/dist/utils/network-sync.js.map +1 -0
  126. package/dist/utils/pure.d.ts +25 -0
  127. package/dist/utils/pure.d.ts.map +1 -0
  128. package/dist/utils/pure.js +112 -0
  129. package/dist/utils/pure.js.map +1 -0
  130. package/dist/utils/repo-factory.d.ts +11 -0
  131. package/dist/utils/repo-factory.d.ts.map +1 -0
  132. package/dist/utils/repo-factory.js +77 -0
  133. package/dist/utils/repo-factory.js.map +1 -0
  134. package/package.json +83 -0
  135. package/src/cli/commands.ts +1053 -0
  136. package/src/cli/index.ts +2 -0
  137. package/src/cli.ts +287 -0
  138. package/src/config/index.ts +334 -0
  139. package/src/core/change-detection.ts +484 -0
  140. package/src/core/index.ts +5 -0
  141. package/src/core/move-detection.ts +269 -0
  142. package/src/core/snapshot.ts +285 -0
  143. package/src/core/sync-engine.ts +1167 -0
  144. package/src/index.ts +14 -0
  145. package/src/types/config.ts +130 -0
  146. package/src/types/documents.ts +72 -0
  147. package/src/types/index.ts +8 -0
  148. package/src/types/snapshot.ts +88 -0
  149. package/src/utils/content-similarity.ts +194 -0
  150. package/src/utils/content.ts +28 -0
  151. package/src/utils/fs.ts +289 -0
  152. package/src/utils/index.ts +8 -0
  153. package/src/utils/mime-types.ts +236 -0
  154. package/src/utils/network-sync.ts +153 -0
  155. package/src/utils/repo-factory.ts +58 -0
  156. package/test/README-TESTING-GAPS.md +174 -0
  157. package/test/integration/README.md +328 -0
  158. package/test/integration/clone-test.sh +310 -0
  159. package/test/integration/conflict-resolution-test.sh +309 -0
  160. package/test/integration/deletion-behavior-test.sh +487 -0
  161. package/test/integration/deletion-sync-test-simple.sh +193 -0
  162. package/test/integration/deletion-sync-test.sh +297 -0
  163. package/test/integration/exclude-patterns.test.ts +152 -0
  164. package/test/integration/full-integration-test.sh +363 -0
  165. package/test/integration/sync-deletion.test.ts +339 -0
  166. package/test/integration/sync-flow.test.ts +309 -0
  167. package/test/run-tests.sh +225 -0
  168. package/test/unit/content-similarity.test.ts +236 -0
  169. package/test/unit/deletion-behavior.test.ts +260 -0
  170. package/test/unit/enhanced-mime-detection.test.ts +266 -0
  171. package/test/unit/snapshot.test.ts +431 -0
  172. package/test/unit/sync-timing.test.ts +178 -0
  173. package/test/unit/utils.test.ts +368 -0
  174. package/tools/browser-sync/README.md +116 -0
  175. package/tools/browser-sync/package.json +44 -0
  176. package/tools/browser-sync/patchwork.json +1 -0
  177. package/tools/browser-sync/pnpm-lock.yaml +4202 -0
  178. package/tools/browser-sync/src/components/BrowserSyncTool.tsx +599 -0
  179. package/tools/browser-sync/src/index.ts +20 -0
  180. package/tools/browser-sync/src/polyfills.ts +31 -0
  181. package/tools/browser-sync/src/styles.css +290 -0
  182. package/tools/browser-sync/src/types.ts +27 -0
  183. package/tools/browser-sync/vite.config.ts +25 -0
  184. package/tsconfig.json +22 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,kDA0CC;AAKD,4CAwBC;AA6FD,oBAiIC;AAKD,oBAgMC;AAKD,oBAgEC;AAKD,wBA6HC;AAKD,kBA8CC;AAKD,4BAsBC;AAKD,sBAiIC;AAKD,kBAuCC;AAED,wBAmEC;AA1hCD,2CAA6B;AAC7B,gDAAkC;AAElC,kDAA0B;AAC1B,8CAAsB;AACtB,8CAAgC;AAWhC,kCAAqC;AAErC,oCAA6D;AAC7D,sCAA0C;AAC1C,wDAAmD;AAYnD;;;GAGG;AACI,KAAK,UAAU,mBAAmB,CACvC,aAAqB,OAAO,CAAC,GAAG,EAAE,EAClC,gBAAyB,EACzB,eAAwB,EACxB,gBAAyB,IAAI;IAE7B,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAE9C,uBAAuB;IACvB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IACzD,IAAI,CAAC,CAAC,MAAM,IAAA,kBAAU,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAC;IACJ,CAAC;IAED,qBAAqB;IACrB,MAAM,aAAa,GAAG,IAAI,sBAAa,CAAC,YAAY,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,CAAC;IAE/C,gDAAgD;IAChD,MAAM,IAAI,GAAG,MAAM,IAAA,yBAAU,EAAC,YAAY,EAAE;QAC1C,aAAa;QACb,UAAU,EAAE,gBAAgB;QAC5B,mBAAmB,EAAE,eAAe;KACrC,CAAC,CAAC;IAEH,oDAAoD;IACpD,MAAM,UAAU,GAAG,IAAI,iBAAU,CAC/B,IAAI,EACJ,YAAY,EACZ,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAChC,aAAa,EACb,MAAM,CAAC,sBAAsB,CAC9B,CAAC;IAEF,OAAO;QACL,IAAI;QACJ,UAAU;QACV,MAAM;QACN,UAAU,EAAE,YAAY;KACzB,CAAC;AACJ,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,gBAAgB,CACpC,IAAU,EACV,OAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAAC,OAAO,aAAa,EAAE,CAAC;QACvB,+DAA+D;QAC/D,6CAA6C;QAC7C,MAAM,YAAY,GAChB,aAAa,YAAY,KAAK;YAC5B,CAAC,CAAC,aAAa,CAAC,OAAO;YACvB,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC5B,IACE,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC;YACnC,CAAC,YAAY,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EACpD,CAAC;YACD,OAAO,CAAC,IAAI,CACV,sCACE,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,EAC9B,KAAK,aAAa,EAAE,CACrB,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACU,QAAA,gBAAgB,GAAG;IAC9B,iBAAiB;IACjB,cAAc,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACzE,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACvE,aAAa,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAE3E,wBAAwB;IACxB,UAAU,EAAE,CAAC,MAAc,EAAE,EAAE,CAC7B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,oBAAoB,MAAM,EAAE,CAAC,CAAC;IACvD,SAAS,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;IAC3E,OAAO,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC;IAEzE,uBAAuB;IACvB,cAAc,EAAE,GAAG,EAAE,CACnB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAC5D,aAAa,EAAE,CAAC,QAAgB,EAAE,EAAE,CAClC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iCAAiC,QAAQ,IAAI,CAAC,CAAC;IACxE,yBAAyB,EAAE,GAAG,EAAE,CAC9B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IACjE,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACrE,WAAW,EAAE,GAAG,EAAE,CAChB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;CAC9D,CAAC;AAEF;;GAEG;AACH,KAAK,UAAU,eAAe,CAAC,MAAsB;IACnD,IAAI,CAAC;QACH,yCAAyC;QACzC,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC;QAE9C,kCAAkC;QAClC,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;QAE7C,4DAA4D;QAC5D,MAAM,OAAO,GACX,OAAO,UAAU,KAAK,QAAQ;YAC5B,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,oBAAoB,UAAU,CAAC,MAAM,SAAS,CAAC;QACrD,MAAM,OAAO,GACX,OAAO,UAAU,KAAK,QAAQ;YAC5B,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,oBAAoB,UAAU,CAAC,MAAM,SAAS,CAAC;QAErD,wBAAwB;QACxB,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CACpC,MAAM,CAAC,IAAI,EACX,OAAO,EACP,OAAO,EACP,UAAU,EACV,SAAS,CACV,CAAC;QAEF,6CAA6C;QAC7C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,kCAAkC;QAEjF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;YAClE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;YACjD,OAAO;QACT,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,cAAc;gBACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAChC,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChC,aAAa;gBACb,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACjC,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChC,eAAe;gBACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/B,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChC,eAAe;gBACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAChC,CAAC;iBAAM,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;gBACvB,aAAa;gBACb,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kBAAkB,KAAK,GAAG,CAAC,CAAC,CAAC;IACtD,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,IAAI,CACxB,UAAkB,EAClB,UAAmB,EACnB,mBAA4B;IAE5B,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,4BAA4B,CAAC,CAAC,KAAK,EAAE,CAAC;IAE1D,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAE9C,0BAA0B;QAC1B,OAAO,CAAC,IAAI,GAAG,mCAAmC,CAAC;QACnD,MAAM,IAAA,6BAAqB,EAAC,YAAY,CAAC,CAAC;QAE1C,+BAA+B;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QACzD,IAAI,MAAM,IAAA,kBAAU,EAAC,WAAW,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;YACvD,OAAO;QACT,CAAC;QAED,kCAAkC;QAClC,OAAO,CAAC,IAAI,GAAG,iCAAiC,CAAC;QACjD,MAAM,IAAA,6BAAqB,EAAC,WAAW,CAAC,CAAC;QACzC,MAAM,IAAA,6BAAqB,EAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;QAEjE,wBAAgB,CAAC,yBAAyB,EAAE,CAAC;QAE7C,8BAA8B;QAC9B,OAAO,CAAC,IAAI,GAAG,6BAA6B,CAAC;QAC7C,MAAM,aAAa,GAAG,IAAI,sBAAa,CAAC,YAAY,CAAC,CAAC;QACtD,MAAM,iBAAiB,GAAG,UAAU,IAAI,2BAA2B,CAAC;QACpE,MAAM,gBAAgB,GACpB,mBAAmB,IAAI,sCAAsC,CAAC;QAChE,MAAM,MAAM,GAAoB;YAC9B,WAAW,EAAE,iBAAiB;YAC9B,sBAAsB,EAAE,gBAAgB;YACxC,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE;gBACR,gBAAgB,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,CAAC;gBAChE,oBAAoB,EAAE,OAAO;aAC9B;YACD,IAAI,EAAE;gBACJ,WAAW,EAAE,KAAK;aACnB;YACD,IAAI,EAAE;gBACJ,wBAAwB,EAAE,GAAG;gBAC7B,gBAAgB,EAAE,GAAG;gBACrB,SAAS,EAAE,KAAK;gBAChB,mBAAmB,EAAE,CAAC;aACvB;SACF,CAAC;QACF,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEjC,wBAAgB,CAAC,WAAW,EAAE,CAAC;QAC/B,wBAAgB,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAC/C,wBAAgB,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAE7C,uEAAuE;QACvE,OAAO,CAAC,IAAI,GAAG,qCAAqC,CAAC;QACrD,MAAM,IAAI,GAAG,MAAM,IAAA,yBAAU,EAAC,YAAY,EAAE;YAC1C,aAAa,EAAE,IAAI;YACnB,UAAU,EAAE,UAAU;YACtB,mBAAmB,EAAE,mBAAmB;SACzC,CAAC,CAAC;QAEH,qCAAqC;QACrC,MAAM,OAAO,GAAsB;YACjC,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,IAAI,EAAE,EAAE;SACT,CAAC;QACF,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAExC,wBAAgB,CAAC,WAAW,EAAE,CAAC;QAC/B,wBAAgB,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAEzC,8BAA8B;QAC9B,OAAO,CAAC,IAAI,GAAG,4BAA4B,CAAC;QAC5C,MAAM,UAAU,GAAG,IAAI,iBAAU,CAC/B,IAAI,EACJ,YAAY,EACZ,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAChC,IAAI,EAAE,gCAAgC;QACtC,MAAM,CAAC,sBAAsB,CAC9B,CAAC;QAEF,8BAA8B;QAC9B,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3E,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,MAAW,EAAE,EAAE,CAClD,MAAM,CAAC,MAAM,EAAE,CAChB,CAAC,MAAM,CAAC;QAET,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,SAAS,iBAAiB,CAAC,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,GAAG,kCAAkC,SAAS,WAAW,CAAC;QACxE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,GAAG,oCAAoC,CAAC;QACtD,CAAC;QAED,sEAAsE;QACtE,MAAM,UAAU,CAAC,mBAAmB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAErD,kCAAkC;QAClC,OAAO,CAAC,IAAI,GAAG,8BAA8B,CAAC;QAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAExC,wBAAgB,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAEzC,8DAA8D;QAC9D,OAAO,CAAC,IAAI,GAAG,6BAA6B,CAAC;QAC7C,MAAM,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACrC,wBAAgB,CAAC,cAAc,EAAE,CAAC;QAElC,OAAO,CAAC,OAAO,CAAC,uBAAuB,eAAK,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAEpE,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,EAAE,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,mBAAmB,eAAK,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,qBAAqB,eAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,KAAK,CAAC,0BAA0B,CAAC,QAAQ,eAAK,CAAC,IAAI,CAC5D,eAAe,CAChB,oBAAoB,CACtB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;QAC/C,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,IAAI,CAAC,OAAoB;IAC7C,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,4BAA4B,CAAC,CAAC,KAAK,EAAE,CAAC;IAE1D,IAAI,CAAC;QACH,+BAA+B;QAC/B,OAAO,CAAC,IAAI,GAAG,4BAA4B,CAAC;QAC5C,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,GAC5C,MAAM,mBAAmB,EAAE,CAAC;QAE9B,wBAAgB,CAAC,cAAc,EAAE,CAAC;QAClC,wBAAgB,CAAC,YAAY,EAAE,CAAC;QAChC,wBAAgB,CAAC,UAAU,CACzB,MAAM,EAAE,WAAW,IAAI,2BAA2B,CACnD,CAAC;QACF,wBAAgB,CAAC,aAAa,EAAE,CAAC;QAEjC,sCAAsC;QACtC,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC;QAChD,IAAI,UAAU,CAAC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;YAC1C,wBAAgB,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,kCAAkC;YAClC,OAAO,CAAC,IAAI,GAAG,gCAAgC,CAAC;YAChD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,cAAc,EAAE,CAAC;YAClD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAE5C,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;YAE7C,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,YAAY,MAAM,CAAC,CAAC;YAC1E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gBAAgB,UAAU,EAAE,CAAC,CAAC,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,oBAAoB,YAAY,IAAI,CAAC,CAAC,CAAC;YAE9D,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/D,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC,2BAA2B,CACrE,CAAC;gBACF,OAAO;YACT,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YAEpC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CACzC,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,UAAU,KAAK,YAAY,IAAI,CAAC,CAAC,UAAU,KAAK,cAAc,CACnE,CAAC,MAAM,CAAC;gBACT,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAC1C,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,UAAU,KAAK,aAAa,IAAI,CAAC,CAAC,UAAU,KAAK,cAAc,CACpE,CAAC,MAAM,CAAC;gBACT,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,cAAc,CACvC,CAAC,MAAM,CAAC;gBAET,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,KACjC,OAAO,CAAC,OAAO,CAAC,MAClB,SAAS,CACV,CAAC;gBACF,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;oBACrB,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,YAAY,EAAE,CAAC,CAAC;gBACvE,CAAC;gBACD,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;oBACtB,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,aAAa,EAAE,CAAC,CAAC;gBACxE,CAAC;gBACD,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;oBAClB,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,SAAS,EAAE,CAAC,CAAC;gBACjE,CAAC;gBAED,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;gBACpD,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;oBAClD,gBAAgB;oBAChB,MAAM,QAAQ,GACZ,MAAM,CAAC,UAAU,KAAK,YAAY;wBAChC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC;wBACnB,CAAC,CAAC,MAAM,CAAC,UAAU,KAAK,aAAa;4BACrC,CAAC,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC;4BAClB,CAAC,CAAC,MAAM,CAAC,UAAU,KAAK,cAAc;gCACtC,CAAC,CAAC,eAAK,CAAC,MAAM,CAAC,IAAI,CAAC;gCACpB,CAAC,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACtB,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC9C,CAAC;gBACD,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;oBAChC,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CACb,WAAW,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,aAAa,CACpD,EAAE,CACJ,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CACnE,CAAC;gBACF,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;oBAC7C,eAAe;oBACf,MAAM,UAAU,GACd,IAAI,CAAC,UAAU,KAAK,MAAM;wBACxB,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC;wBACrB,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,QAAQ;4BAC9B,CAAC,CAAC,eAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;4BACxB,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBACvB,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,MAAM,IAAI,CAAC,MAAM,KAAK,UAAU,GAAG,CAAC,CAAC;gBACxE,CAAC;gBACD,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7B,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,aAAa,CAAC,EAAE,CACpE,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,EAAE,CACtE,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,wBAAwB;YACxB,OAAO,CAAC,IAAI,GAAG,sBAAsB,CAAC;YACtC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAE7B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAEzC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO,CAAC,OAAO,CAAC,qBAAqB,SAAS,IAAI,CAAC,CAAC;gBAEpD,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,uBAAuB,eAAK,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;gBACxE,OAAO,CAAC,GAAG,CACT,6BAA6B,eAAK,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,CACvE,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,qBAAqB,eAAK,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;gBAEjE,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CACjE,CAAC;oBACF,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;wBAClD,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;oBACpD,CAAC;oBACD,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC/B,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CACb,WAAW,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,gBAAgB,CACtD,EAAE,CACJ,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,IAAI,MAAM,CAAC,YAAY,KAAK,CAAC,IAAI,MAAM,CAAC,kBAAkB,KAAK,CAAC,EAAE,CAAC;oBACjE,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,EAAE,CAAC,CAAC;gBACnE,CAAC;gBAED,yCAAyC;gBACzC,OAAO,CAAC,IAAI,GAAG,6BAA6B,CAAC;gBAC7C,MAAM,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACrC,wBAAgB,CAAC,cAAc,EAAE,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBAE3C,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAC7D,CAAC;gBACF,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;oBAC9C,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAC5D,CAAC;gBACJ,CAAC;gBACD,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7B,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,cAAc,CAAC,EAAE,CACrE,CAAC;gBACJ,CAAC;gBAED,IAAI,MAAM,CAAC,YAAY,GAAG,CAAC,IAAI,MAAM,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;oBAC7D,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,MAAM,CAAC,6BAA6B,CAAC,EAAE,CAAC,CAAC;oBAChE,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;oBAC1D,OAAO,CAAC,GAAG,CAAC,6BAA6B,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC;gBACxE,CAAC;gBAED,yCAAyC;gBACzC,MAAM,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,gBAAgB,KAAK,EAAE,CAAC,CAAC;QACtC,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,IAAI,CACxB,UAAU,GAAG,GAAG,EAChB,OAAoB;IAEpB,IAAI,CAAC;QACH,4DAA4D;QAC5D,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,mBAAmB,CACpD,UAAU,EACV,SAAS,EACT,SAAS,EACT,KAAK,CACN,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,cAAc,EAAE,CAAC;QAElD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,uBAAuB;YACvB,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;YACD,OAAO;QACT,CAAC;QAED,sCAAsC;QACtC,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC;QAChD,IAAI,UAAU,CAAC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;YAC1C,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,aAAa,UAAU,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAChE,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;QAExC,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrC,MAAM,SAAS,GACb,MAAM,CAAC,UAAU,KAAK,YAAY;gBAChC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,SAAS,CAAC;gBACxB,CAAC,CAAC,MAAM,CAAC,UAAU,KAAK,aAAa;oBACrC,CAAC,CAAC,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC;oBACxB,CAAC,CAAC,MAAM,CAAC,UAAU,KAAK,cAAc;wBACtC,CAAC,CAAC,eAAK,CAAC,MAAM,CAAC,YAAY,CAAC;wBAC5B,CAAC,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAEhC,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAE7C,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,CAAC,IAAI,yBAAyB,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,2BAA2B;gBAC3B,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,MAAM,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,gBAAgB,KAAK,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,MAAM;IAC1B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAC;QAEtD,8DAA8D;QAC9D,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,MAAM,mBAAmB,CAChE,OAAO,CAAC,GAAG,EAAE,EACb,SAAS,EACT,SAAS,EACT,KAAK,CACN,CAAC;QACF,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC;QAEhD,OAAO,CAAC,IAAI,EAAE,CAAC;QAEf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAEjC,wBAAwB;QACxB,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,cAAc,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;QAElE,uCAAuC;QACvC,IAAI,UAAU,CAAC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;YAC1C,OAAO,CAAC,GAAG,CACT,kBAAkB,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CACrE,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,cAAc;QACd,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACxB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC7D,MAAM,OAAO,GACX,SAAS,GAAG,KAAK;gBACf,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO;gBACxC,CAAC,CAAC,SAAS,GAAG,OAAO;oBACrB,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO;oBACzC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;YAEhD,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CACT,mBAAmB,eAAK,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,EAAE,CACvE,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,mBAAmB,eAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,mBAAmB,eAAK,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CACT,YAAY,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,0BAA0B,CAClE,CAAC;QACJ,CAAC;QAED,gBAAgB;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QACpD,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CACT,yBAAyB,eAAK,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAChE,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAK,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,YAAY,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;QACxE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,yBAAyB,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5D,OAAO,CAAC,GAAG,CAAC,eAAe,eAAK,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,gBAAgB;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;QAErD,MAAM,oBAAoB,GAAG,IAAI,sBAAa,CAAC,UAAU,CAAC,CAAC;QAC3D,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,IAAI,EAAE,CAAC;QAExD,IAAI,aAAa,EAAE,WAAW,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,qBAAqB,eAAK,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC5E,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CACT,qBAAqB,eAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,YAAY,CACzE,CAAC;QACJ,CAAC;QAED,OAAO,CAAC,GAAG,CACT,kBACE,aAAa,EAAE,IAAI,EAAE,SAAS;YAC5B,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,SAAS,CAAC;YACxB,CAAC,CAAC,eAAK,CAAC,IAAI,CAAC,UAAU,CAC3B,EAAE,CACH,CAAC;QAEF,uBAAuB;QACvB,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACxB,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;YACjD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;YAEtD,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;YAC5D,OAAO,CAAC,GAAG,CAAC,uBAAuB,eAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CAAC,6BAA6B,eAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACnE,OAAO,CAAC,GAAG,CACT,8BAA8B,eAAK,CAAC,IAAI,CACtC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,cAAc,EAAE,CACzD,EAAE,CACJ,CAAC;QACJ,CAAC;QAED,gBAAgB;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QACpD,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,6BAA6B,CAC9D,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,iCAAiC,CAClE,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,CAAC;QAExE,yBAAyB;QACzB,MAAM,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,0BAA0B,KAAK,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,GAAG,CACvB,UAAU,GAAG,GAAG,EAChB,OAAmB;IAEnB,IAAI,CAAC;QACH,2DAA2D;QAC3D,MAAM,EACJ,IAAI,EAAE,OAAO,EACb,UAAU,EAAE,aAAa,EACzB,UAAU,GACX,GAAG,MAAM,mBAAmB,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACvE,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,CAAC;QAElD,IAAI,SAAS,CAAC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;YACzC,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,aAAa,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAC/D,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;QAED,+CAA+C;QAC/C,kCAAkC;QAElC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QAEzC,2BAA2B;QAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;QACzE,IAAI,MAAM,IAAA,kBAAU,EAAC,YAAY,CAAC,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAE1C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,cAAc,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC;gBACpE,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACrD,CAAC;QAED,yBAAyB;QACzB,MAAM,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,eAAe,KAAK,EAAE,CAAC,CAAC,CAAC;QACjD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,QAAQ,CAC5B,MAAc,EACd,UAAU,GAAG,GAAG,EAChB,OAAwB;IAExB,IAAI,CAAC;QACH,uBAAuB;QACvB,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAE7D,yCAAyC;QACzC,sBAAsB;QACtB,wCAAwC;QACxC,0CAA0C;QAC1C,2BAA2B;QAE3B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,4CAA4C,CAAC,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,gBAAgB,UAAU,EAAE,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAC,CAAC;QACtD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,KAAK,CACzB,OAAe,EACf,UAAkB,EAClB,OAAqB;IAErB,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,6BAA6B,CAAC,CAAC,KAAK,EAAE,CAAC;IAE3D,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAE9C,0BAA0B;QAC1B,OAAO,CAAC,IAAI,GAAG,gCAAgC,CAAC;QAEhD,+CAA+C;QAC/C,IAAI,MAAM,IAAA,kBAAU,EAAC,YAAY,CAAC,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAC7C,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACvC,OAAO,CAAC,IAAI,CACV,0DAA0D,CAC3D,CAAC;gBACF,OAAO;YACT,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAA,6BAAqB,EAAC,YAAY,CAAC,CAAC;QAC5C,CAAC;QAED,+BAA+B;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QACzD,IAAI,MAAM,IAAA,kBAAU,EAAC,WAAW,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,OAAO,CAAC,IAAI,CACV,mEAAmE,CACpE,CAAC;gBACF,OAAO;YACT,CAAC;YACD,mCAAmC;YACnC,MAAM,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAEzD,kCAAkC;QAClC,OAAO,CAAC,IAAI,GAAG,iCAAiC,CAAC;QACjD,MAAM,IAAA,6BAAqB,EAAC,WAAW,CAAC,CAAC;QACzC,MAAM,IAAA,6BAAqB,EAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;QAEjE,wBAAgB,CAAC,yBAAyB,EAAE,CAAC;QAE7C,8BAA8B;QAC9B,OAAO,CAAC,IAAI,GAAG,6BAA6B,CAAC;QAC7C,MAAM,aAAa,GAAG,IAAI,sBAAa,CAAC,YAAY,CAAC,CAAC;QACtD,MAAM,iBAAiB,GAAG,OAAO,CAAC,UAAU,IAAI,2BAA2B,CAAC;QAC5E,MAAM,gBAAgB,GACpB,OAAO,CAAC,mBAAmB,IAAI,sCAAsC,CAAC;QACxE,MAAM,MAAM,GAAoB;YAC9B,WAAW,EAAE,iBAAiB;YAC9B,sBAAsB,EAAE,gBAAgB;YACxC,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE;gBACR,gBAAgB,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,CAAC;gBAChE,oBAAoB,EAAE,OAAO;aAC9B;YACD,IAAI,EAAE;gBACJ,WAAW,EAAE,KAAK;aACnB;YACD,IAAI,EAAE;gBACJ,wBAAwB,EAAE,GAAG;gBAC7B,gBAAgB,EAAE,GAAG;gBACrB,SAAS,EAAE,KAAK;gBAChB,mBAAmB,EAAE,CAAC;aACvB;SACF,CAAC;QACF,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEjC,wBAAgB,CAAC,WAAW,EAAE,CAAC;QAC/B,wBAAgB,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAC/C,wBAAgB,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAE7C,kEAAkE;QAClE,OAAO,CAAC,IAAI,GAAG,0CAA0C,CAAC;QAC1D,MAAM,IAAI,GAAG,MAAM,IAAA,yBAAU,EAAC,YAAY,EAAE;YAC1C,aAAa,EAAE,IAAI;YACnB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;SACjD,CAAC,CAAC;QAEH,wBAAgB,CAAC,WAAW,EAAE,CAAC;QAC/B,wBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAElC,6DAA6D;QAC7D,OAAO,CAAC,IAAI,GAAG,oCAAoC,CAAC;QACpD,MAAM,UAAU,GAAG,IAAI,iBAAU,CAC/B,IAAI,EACJ,YAAY,EACZ,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAChC,IAAI,EAAE,iCAAiC;QACvC,gBAAgB,CACjB,CAAC;QAEF,iEAAiE;QACjE,MAAM,UAAU,CAAC,mBAAmB,CAAC,OAAuB,CAAC,CAAC;QAE9D,0DAA0D;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAExC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mCAAmC,QAAQ,IAAI,CAAC,CAAC,CAAC;QAEzE,yCAAyC;QACzC,OAAO,CAAC,IAAI,GAAG,6BAA6B,CAAC;QAC7C,MAAM,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtC,wBAAgB,CAAC,cAAc,EAAE,CAAC;QAElC,OAAO,CAAC,OAAO,CAAC,4BAA4B,eAAK,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAEzE,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,mBAAmB,eAAK,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,qBAAqB,eAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,eAAK,CAAC,IAAI,CACnD,eAAe,CAChB,mBAAmB,CACrB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAC;QAC1C,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,GAAG,CAAC,UAAU,GAAG,GAAG;IACxC,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAE9C,uBAAuB;QACvB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QACzD,IAAI,CAAC,CAAC,MAAM,IAAA,kBAAU,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC,CAAC;YAC/D,OAAO,CAAC,KAAK,CAAC,OAAO,eAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;YACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,2EAA2E;QAC3E,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAC7D,IAAI,CAAC,CAAC,MAAM,IAAA,kBAAU,EAAC,YAAY,CAAC,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,KAAK,CACX,eAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAC7D,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAE1C,IAAI,QAAQ,CAAC,gBAAgB,EAAE,CAAC;YAC9B,8CAA8C;YAC9C,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;YAC1D,OAAO,CAAC,KAAK,CACX,eAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAC7D,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAC,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,MAAM,CAC1B,UAAkB,EAClB,SAAkB,KAAK;IAEvB,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,8BAA8B,CAAC,CAAC,KAAK,EAAE,CAAC;IAC5D,IAAI,IAAsB,CAAC;IAE3B,IAAI,CAAC;QACH,mEAAmE;QACnE,OAAO,CAAC,IAAI,GAAG,8BAA8B,CAAC;QAC9C,MAAM,OAAO,GAAG,MAAM,mBAAmB,CACvC,UAAU,EACV,SAAS,EACT,SAAS,EACT,KAAK,CACN,CAAC;QACF,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACpB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAE3C,wBAAwB;QACxB,OAAO,CAAC,IAAI,GAAG,6BAA6B,CAAC;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAExC,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,uBAAuB,QAAQ,IAAI,CAAC,CAAC;QAErD,kBAAkB;QAClB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,yBAAyB,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,+BAA+B,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,CAAC,qBAAqB,QAAQ,IAAI,CAAC,CAAC;QAE/C,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC7C,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAe,EAAE,EAAE,CAC1C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC,CAC5C,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAC9B,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,GAAG,CACP,OAAO,KAAK,CAAC,SAAS,OAAO,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAClE,CACF,CACF,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAChE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,gBAAgB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,kBAAkB,KAAK,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,yCAAyC"}
@@ -0,0 +1,2 @@
1
+ export * from "./commands";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ // CLI commands
18
+ __exportStar(require("./commands"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,eAAe;AACf,6CAA2B"}
package/dist/cli.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
package/dist/cli.js ADDED
@@ -0,0 +1,199 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ const commander_1 = require("commander");
8
+ const chalk_1 = __importDefault(require("chalk"));
9
+ const commands_1 = require("./cli/commands");
10
+ /**
11
+ * Wrapper for command actions with consistent error handling
12
+ */
13
+ function withErrorHandling(fn) {
14
+ return async (...args) => {
15
+ try {
16
+ await fn(...args);
17
+ }
18
+ catch (error) {
19
+ console.error(chalk_1.default.red(`Error: ${error}`));
20
+ process.exit(1);
21
+ }
22
+ };
23
+ }
24
+ const program = new commander_1.Command();
25
+ program
26
+ .name("pushwork")
27
+ .description("Bidirectional directory synchronization using Automerge CRDTs")
28
+ .version("1.0.0");
29
+ // Init command
30
+ program
31
+ .command("init")
32
+ .description("Initialize sync in directory")
33
+ .argument("<path>", "Directory path to initialize")
34
+ .option("--sync-server <url>", "Custom sync server URL (must be used with --sync-server-storage-id)")
35
+ .option("--sync-server-storage-id <id>", "Custom sync server storage ID (must be used with --sync-server)")
36
+ .addHelpText("after", `
37
+ Examples:
38
+ pushwork init ./my-folder
39
+ pushwork init ./my-folder --sync-server ws://localhost:3030 --sync-server-storage-id 1d89eba7-f7a4-4e8e-80f2-5f4e2406f507
40
+
41
+ Note: Custom sync server options must always be used together.`)
42
+ .action(withErrorHandling(async (path, options) => {
43
+ // Validate that both sync server options are provided together
44
+ const hasSyncServer = !!options.syncServer;
45
+ const hasSyncServerStorageId = !!options.syncServerStorageId;
46
+ if (hasSyncServer && !hasSyncServerStorageId) {
47
+ console.error(chalk_1.default.red("Error: --sync-server requires --sync-server-storage-id"));
48
+ console.error(chalk_1.default.yellow("Both arguments must be provided together."));
49
+ process.exit(1);
50
+ }
51
+ if (hasSyncServerStorageId && !hasSyncServer) {
52
+ console.error(chalk_1.default.red("Error: --sync-server-storage-id requires --sync-server"));
53
+ console.error(chalk_1.default.yellow("Both arguments must be provided together."));
54
+ process.exit(1);
55
+ }
56
+ await (0, commands_1.init)(path, options.syncServer, options.syncServerStorageId);
57
+ }));
58
+ // Clone command
59
+ program
60
+ .command("clone")
61
+ .description("Clone an existing synced directory")
62
+ .argument("<url>", "AutomergeUrl of root directory to clone")
63
+ .argument("<path>", "Target directory path")
64
+ .option("--force", "Overwrite existing directory")
65
+ .option("--sync-server <url>", "Custom sync server URL (must be used with --sync-server-storage-id)")
66
+ .option("--sync-server-storage-id <id>", "Custom sync server storage ID (must be used with --sync-server)")
67
+ .addHelpText("after", `
68
+ Examples:
69
+ pushwork clone automerge:abc123 ./my-clone
70
+ pushwork clone automerge:abc123 ./my-clone --force
71
+ pushwork clone automerge:abc123 ./my-clone --sync-server ws://localhost:3030 --sync-server-storage-id 1d89eba7-f7a4-4e8e-80f2-5f4e2406f507
72
+
73
+ Note: Custom sync server options must always be used together.`)
74
+ .action(withErrorHandling(async (url, path, options) => {
75
+ // Validate that both sync server options are provided together
76
+ const hasSyncServer = !!options.syncServer;
77
+ const hasSyncServerStorageId = !!options.syncServerStorageId;
78
+ if (hasSyncServer && !hasSyncServerStorageId) {
79
+ console.error(chalk_1.default.red("Error: --sync-server requires --sync-server-storage-id"));
80
+ console.error(chalk_1.default.yellow("Both arguments must be provided together."));
81
+ process.exit(1);
82
+ }
83
+ if (hasSyncServerStorageId && !hasSyncServer) {
84
+ console.error(chalk_1.default.red("Error: --sync-server-storage-id requires --sync-server"));
85
+ console.error(chalk_1.default.yellow("Both arguments must be provided together."));
86
+ process.exit(1);
87
+ }
88
+ await (0, commands_1.clone)(url, path, {
89
+ force: options.force || false,
90
+ dryRun: false,
91
+ verbose: false,
92
+ syncServer: options.syncServer,
93
+ syncServerStorageId: options.syncServerStorageId,
94
+ });
95
+ }));
96
+ // Commit command
97
+ program
98
+ .command("commit")
99
+ .description("Commit local changes (no network sync)")
100
+ .argument("[path]", "Directory path to commit", ".")
101
+ .option("--dry-run", "Show what would be committed without applying changes")
102
+ .action(withErrorHandling(async (path, options) => {
103
+ await (0, commands_1.commit)(path, options.dryRun || false);
104
+ }));
105
+ // Sync command
106
+ program
107
+ .command("sync")
108
+ .description("Run full bidirectional synchronization")
109
+ .option("--dry-run", "Show what would be done without applying changes")
110
+ .option("-v, --verbose", "Verbose output")
111
+ .action(withErrorHandling(async (options) => {
112
+ await (0, commands_1.sync)({
113
+ dryRun: options.dryRun || false,
114
+ verbose: options.verbose || false,
115
+ });
116
+ }));
117
+ // Diff command
118
+ program
119
+ .command("diff")
120
+ .description("Show changes in working directory since last sync")
121
+ .argument("[path]", "Limit diff to specific path", ".")
122
+ .option("--tool <tool>", "Use external diff tool (meld, vimdiff, etc.)")
123
+ .option("--name-only", "Show only changed file names")
124
+ .action(withErrorHandling(async (path, options) => {
125
+ await (0, commands_1.diff)(path, {
126
+ tool: options.tool,
127
+ nameOnly: options.nameOnly || false,
128
+ dryRun: false,
129
+ verbose: false,
130
+ });
131
+ }));
132
+ // Status command
133
+ program
134
+ .command("status")
135
+ .description("Show sync status summary")
136
+ .action(withErrorHandling(async (options) => {
137
+ await (0, commands_1.status)();
138
+ }));
139
+ // Log command
140
+ program
141
+ .command("log")
142
+ .description("Show sync history")
143
+ .argument("[path]", "Show history for specific file or directory", ".")
144
+ .option("--oneline", "Compact one-line per sync format")
145
+ .option("--since <date>", "Show syncs since date")
146
+ .option("--limit <n>", "Limit number of syncs shown", "10")
147
+ .action(withErrorHandling(async (path, options) => {
148
+ await (0, commands_1.log)(path, {
149
+ oneline: options.oneline || false,
150
+ since: options.since,
151
+ limit: parseInt(options.limit),
152
+ dryRun: false,
153
+ verbose: false,
154
+ });
155
+ }));
156
+ // Checkout command
157
+ program
158
+ .command("checkout")
159
+ .description("Restore directory to state from previous sync")
160
+ .argument("<sync-id>", "Sync ID to restore to")
161
+ .argument("[path]", "Specific path to restore", ".")
162
+ .option("-f, --force", "Force checkout even if there are uncommitted changes")
163
+ .action(withErrorHandling(async (syncId, path, options) => {
164
+ await (0, commands_1.checkout)(syncId, path, {
165
+ force: options.force || false,
166
+ dryRun: false,
167
+ verbose: false,
168
+ });
169
+ }));
170
+ // URL command
171
+ program
172
+ .command("url")
173
+ .description("Show the Automerge root URL for this repository")
174
+ .argument("[path]", "Directory path", ".")
175
+ .addHelpText("after", `
176
+ Examples:
177
+ pushwork url # Show URL for current directory
178
+ pushwork url ./repo # Show URL for specific directory
179
+
180
+ Note: This command outputs only the URL, making it useful for scripts.`)
181
+ .action(withErrorHandling(async (path) => {
182
+ await (0, commands_1.url)(path);
183
+ }));
184
+ // Global error handler
185
+ process.on("unhandledRejection", (reason, promise) => {
186
+ console.error(chalk_1.default.red("Unhandled Rejection at:"), promise, chalk_1.default.red("reason:"), reason);
187
+ process.exit(1);
188
+ });
189
+ process.on("uncaughtException", (error) => {
190
+ console.error(chalk_1.default.red("Uncaught Exception:"), error);
191
+ process.exit(1);
192
+ });
193
+ // Parse arguments
194
+ program.parse();
195
+ // Show help if no arguments provided
196
+ if (!process.argv.slice(2).length) {
197
+ program.outputHelp();
198
+ }
199
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import { GlobalConfig, DirectoryConfig } from "../types";
2
+ /**
3
+ * Configuration manager for pushwork
4
+ */
5
+ export declare class ConfigManager {
6
+ private workingDir?;
7
+ private static readonly GLOBAL_CONFIG_DIR;
8
+ private static readonly CONFIG_FILENAME;
9
+ private static readonly LOCAL_CONFIG_DIR;
10
+ constructor(workingDir?: string | undefined);
11
+ /**
12
+ * Get global configuration path
13
+ */
14
+ private getGlobalConfigPath;
15
+ /**
16
+ * Get local configuration path
17
+ */
18
+ private getLocalConfigPath;
19
+ /**
20
+ * Load global configuration
21
+ */
22
+ loadGlobal(): Promise<GlobalConfig | null>;
23
+ /**
24
+ * Save global configuration
25
+ */
26
+ saveGlobal(config: GlobalConfig): Promise<void>;
27
+ /**
28
+ * Load local/directory configuration
29
+ */
30
+ load(): Promise<DirectoryConfig | null>;
31
+ /**
32
+ * Save local/directory configuration
33
+ */
34
+ save(config: DirectoryConfig): Promise<void>;
35
+ /**
36
+ * Get merged configuration (global + local)
37
+ */
38
+ getMerged(): Promise<DirectoryConfig>;
39
+ /**
40
+ * Merge two configuration objects
41
+ */
42
+ private mergeConfigs;
43
+ /**
44
+ * Create default global configuration
45
+ */
46
+ createDefaultGlobal(): Promise<void>;
47
+ /**
48
+ * Check if global configuration exists
49
+ */
50
+ globalConfigExists(): Promise<boolean>;
51
+ /**
52
+ * Check if local configuration exists
53
+ */
54
+ localConfigExists(): Promise<boolean>;
55
+ /**
56
+ * Get configuration value by path (e.g., 'sync.auto_sync')
57
+ */
58
+ getValue(keyPath: string): Promise<any>;
59
+ /**
60
+ * Set configuration value by path
61
+ */
62
+ setValue(keyPath: string, value: any): Promise<void>;
63
+ /**
64
+ * Validate configuration
65
+ */
66
+ validate(config: DirectoryConfig): {
67
+ valid: boolean;
68
+ errors: string[];
69
+ };
70
+ }
71
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGzD;;GAEG;AACH,qBAAa,aAAa;IAKZ,OAAO,CAAC,UAAU,CAAC;IAJ/B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAe;IACxD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAiB;IACxD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAe;gBAEnC,UAAU,CAAC,EAAE,MAAM,YAAA;IAEvC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAW1B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAehD;;OAEG;IACG,UAAU,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAYrD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAmB7C;;OAEG;IACG,IAAI,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBlD;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;IAqC3C;;OAEG;IACH,OAAO,CAAC,YAAY;IAmDpB;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B1C;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI5C;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAK3C;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAiB7C;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB1D;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE;CAgCxE"}