trellis-hgl 0.6.0-beta.26 → 0.6.0-beta.27

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.
package/README.md CHANGED
@@ -150,7 +150,7 @@
150
150
  如果选择 `subagent + worktree`,本分支约定所有代码开发子代理固定使用同一个路径:
151
151
 
152
152
  ```text
153
- ./.claude/worktree
153
+ ./.claude/trellis-worktrees/<task-dir-name>
154
154
  ```
155
155
 
156
156
  这样可以避免多个 worktree 上重复实现同一个任务,浪费上下文和 token。
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EAKd,MAAM,uBAAuB,CAAC;AAmC/B,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAkSD;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CA6DzD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,GACrB,MAAM,GAAG,IAAI,CA2Bf;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,kBAAkB,EAAE,EAC7B,GAAG,EAAE,MAAM,EACX,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CA0CtB;AAibD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAerE;AA4cD;;;GAGG;AACH,0CAA0C;AAC1C,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAgCnE;AAED;;;;GAIG;AACH,0CAA0C;AAC1C,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,aAAa,EAAE,GAC1B,aAAa,EAAE,CAajB;AAuMD;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAszBlE"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EAKd,MAAM,uBAAuB,CAAC;AAmC/B,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAkSD;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CA6DzD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,GACrB,MAAM,GAAG,IAAI,CA2Bf;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,kBAAkB,EAAE,EAC7B,GAAG,EAAE,MAAM,EACX,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CA0CtB;AAmbD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAerE;AA4cD;;;GAGG;AACH,0CAA0C;AAC1C,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAgCnE;AAED;;;;GAIG;AACH,0CAA0C;AAC1C,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,aAAa,EAAE,GAC1B,aAAa,EAAE,CAajB;AAuMD;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAszBlE"}
@@ -718,10 +718,12 @@ const BACKUP_EXCLUDE_PATTERNS = [
718
718
  // Platform-native worktree dirs — these are full sub-repos the CLI
719
719
  // spawns for parallel sessions. Backing them up on every update would
720
720
  // snapshot the entire nested working tree. Confirmed conventions:
721
- // Claude Code: .claude/worktrees/
721
+ // Claude Code: .claude/trellis-worktrees/
722
722
  // Cursor CLI: .cursor/worktrees/
723
723
  // Gemini CLI: .gemini/worktrees/
724
- // Matches any platform using the same convention (future-proof).
724
+ // Matches Claude Code's Trellis-managed path plus any platform using the
725
+ // generic worktrees/worktree convention.
726
+ "/trellis-worktrees/",
725
727
  "/worktrees/",
726
728
  "/worktree/",
727
729
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAErE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,oBAAoB,EACpB,6BAA6B,GAC9B,MAAM,wBAAwB,CAAC;AAShC,OAAO,EACL,UAAU,EACV,UAAU,EACV,YAAY,EACZ,kBAAkB,EAClB,UAAU,EACV,UAAU,EACV,WAAW,GACZ,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,kCAAkC;AAClC,OAAO,EACL,aAAa;AACb,gBAAgB;AAChB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,wBAAwB,EACxB,aAAa,EACb,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AA6BrE,MAAM,oBAAoB,GAAG,uBAAuB,CAAC;AACrD,MAAM,mBAAmB,GAAG,wBAAwB,CAAC;AACrD,MAAM,iBAAiB,GAAG,sBAAsB,CAAC;AACjD,MAAM,uCAAuC,GAAG,IAAI,GAAG,CAAS;IAC9D,wEAAwE;IACxE,uEAAuE;IACvE,wEAAwE;IACxE,oCAAoC;IACpC,kEAAkE;CACnE,CAAC,CAAC;AAEH,sDAAsD;AACtD,sFAAsF;AACtF,MAAM,eAAe,GAAG;IACtB,GAAG,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,EAAE,aAAa;IAC7D,GAAG,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS;IACrD,GAAG,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE,QAAQ;IACnD,GAAG,SAAS,CAAC,QAAQ,aAAa;IAClC,GAAG,SAAS,CAAC,QAAQ,gBAAgB;CACtC,CAAC;AAEF,SAAS,sBAAsB,CAAC,OAAe;IAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACnD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;IACtD,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,0BAA0B,CACjC,eAAuB,EACvB,eAAuB;IAEvB,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACnE,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;IAC9E,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,aAAa,GAAG,sBAAsB,CAAC,eAAe,CAAC,CAAC;IAC9D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC;QACvC,aAAa;QACb,eAAe,CAAC,KAAK,CAAC,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAC9D,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAW;IACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACnD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,MAAM,eAAe,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAE3D,yEAAyE;IACzE,mDAAmD;IACnD,MAAM,QAAQ,GAAG,0BAA0B,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;IAC9E,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,uEAAuE;IACvE,wBAAwB;IACxB,MAAM,aAAa,GAAG,sBAAsB,CAAC,eAAe,CAAC,CAAC;IAC9D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACpD,OAAO,GAAG,OAAO,OAAO,aAAa,IAAI,CAAC;AAC5C,CAAC;AAED,SAAS,wBAAwB,CAC/B,YAAoB,EACpB,eAAuB;IAEvB,IAAI,YAAY,KAAK,UAAU,CAAC,MAAM,EAAE,CAAC;QACvC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,YAAY,GAAG,sBAAsB,CAAC,eAAe,CAAC,CAAC;IAC7D,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,uCAAuC,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;AAChF,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,QAAgB;IACvC,OAAO,eAAe,CAAC,IAAI,CACzB,CAAC,EAAE,EAAE,EAAE,CACL,QAAQ,KAAK,EAAE,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAC3E,CAAC;AACJ,CAAC;AAaD;;;;;;;GAOG;AACH,SAAS,sBAAsB,CAC7B,UAA2B,EAC3B,GAAW,EACX,SAAmB;AACnB;;;;;;GAMG;AACH,gBAAgB,GAAG,KAAK;IAExB,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAC;IAC5E,MAAM,OAAO,GAA+B,EAAE,CAAC;IAE/C,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAE3C,sBAAsB;QACtB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;YAC/C,SAAS;QACX,CAAC;QAED,6EAA6E;QAC7E,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACjD,SAAS;QACX,CAAC;QAED,8DAA8D;QAC9D,IACE,CAAC,gBAAgB;YACjB,SAAS,CAAC,IAAI,CACZ,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,IAAI;gBAClB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAC/D,EACD,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACnD,SAAS;QACX,CAAC;QAED,sCAAsC;QACtC,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7D,8CAA8C;YAC9C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;YAChD,SAAS;QACX,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnD,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAS,0BAA0B,CACjC,UAAsC;IAEtC,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,eAAe,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,kBAAkB,CAAC,CAAC;IAE7E,IACE,QAAQ,CAAC,MAAM,KAAK,CAAC;QACrB,QAAQ,CAAC,MAAM,KAAK,CAAC;QACrB,UAAU,CAAC,MAAM,KAAK,CAAC,EACvB,CAAC;QACD,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAE1D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9E,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,sBAAsB,CAAC,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,yBAAyB,CAAC,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAC7B,UAAsC,EACtC,GAAW;IAEX,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;IACjE,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACxB,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACjD,OAAO,EAAE,CAAC;QACZ,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;QAC5D,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACrE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,EAAE,CAAC;IAE1C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,MAAM,GAAG,KAAK,CAAC;QAEnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAE/B,gEAAgE;YAChE,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjC,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM,GAAG,KAAK,CAAC;gBACf,SAAS;YACX,CAAC;YAED,4CAA4C;YAC5C,IAAI,QAAQ,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9C,MAAM,GAAG,IAAI,CAAC;gBACd,SAAS;YACX,CAAC;YAED,gCAAgC;YAChC,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBAC7C,IAAI,KAAK,EAAE,CAAC;oBACV,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC;oBACxD,SAAS;gBACX,CAAC;gBACD,wEAAwE;gBACxE,IAAI,OAAO,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC/C,MAAM,GAAG,KAAK,CAAC;oBACf,QAAQ,GAAG,KAAK,CAAC;gBACnB,CAAC;YACH,CAAC;YAED,gFAAgF;YAChF,IACE,QAAQ;gBACR,OAAO,KAAK,EAAE;gBACd,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;gBACxB,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EACxB,CAAC;gBACD,QAAQ,GAAG,KAAK,CAAC;gBACjB,MAAM,GAAG,KAAK,CAAC;YACjB,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,4EAA4E;QAC5E,OAAO,CAAC,IAAI,CACV,4BAA4B,UAAU,yCAAyC,CAChF,CAAC;QACF,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,oBAAoB,CAClC,QAAgB,EAChB,cAAsB;IAEtB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,WAAW,GAAG,CAAC,IAAY,EAAW,EAAE,CAC5C,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAErC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAAE,SAAS;QACrC,sEAAsE;QACtE,iBAAiB;QACjB,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACjC,MAAM,gBAAgB,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACtC,IAAI,WAAW,KAAK,SAAS,IAAI,gBAAgB,KAAK,SAAS;YAAE,SAAS;QAC1E,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QAC5C,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC;YAAE,SAAS;QAC7C,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,cAAc;YAAE,SAAS;QAE7D,kEAAkE;QAClE,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;QACvB,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1B,GAAG,GAAG,CAAC,CAAC;gBACR,MAAM;YACR,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAA6B,EAC7B,GAAW,EACX,gBAAqC;IAErC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrD,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,SAAS;QAClC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAEpB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;YAAE,SAAS;QAEzC,IAAI,WAAmB,CAAC;QACxB,IAAI,CAAC;YACH,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;YAAE,SAAS;QAEnD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ;YAAE,SAAS;QAExB,MAAM,OAAO,GAAG,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;QACrE,IAAI,CAAC,OAAO;YAAE,SAAS;QAEvB,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;QAC7D,MAAM,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,IAAI,CAAC;QAC5D,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,6BAA6B,KAAK,CAAC,cAAc,QAAQ,KAAK,CAAC,IAAI,EAAE,CACtE,CACF,CAAC;QACF,QAAQ,EAAE,CAAC;IACb,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,CAAC;AACtB,CAAC;AAED;;;GAGG;AACH;;;;;;;;;;;;;GAaG;AACH,SAAS,iBAAiB,CAAC,GAAW;IACpC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8DAA8D;IAC9D,yDAAyD;IACzD,0EAA0E;IAC1E,wEAAwE;IACxE,oEAAoE;IACpE,kEAAkE;IAClE,yEAAyE;IACzE,yEAAyE;IACzE,oCAAoC;IACpC,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,OAAO,CACL,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,0CAA0C,CAAC;QACtE,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,6CAA6C,CAAC,CAC1E,CAAC;AACJ,CAAC;AAED,SAAS,gCAAgC,CACvC,GAAW,EACX,SAA8B;IAE9B,MAAM,kBAAkB,GAAG,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAC/D,IAAI,CAAC,kBAAkB;QAAE,OAAO;IAEhC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;IAC1D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;QAAE,OAAO;IAEzC,IAAI,CAAC;QACH,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CACjC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CACZ,CAAC;QAE7B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,EAAE,CAAC;YAC1E,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAGhD,CAAC;QAEF,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,CAAC;YACpE,OAAO;QACT,CAAC;QAED,WAAW,CAAC,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC;QACrD,SAAS,CAAC,GAAG,CACX,oBAAoB,EACpB,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAC5C,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,6DAA6D;IAC/D,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAC3B,GAAW,EACX,cAA4B;AAC5B;;;;;;;GAOG;AACH,gBAAgB,GAAG,KAAK;IAExB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,MAAM,SAAS,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,cAAc,EAAE,CAAC;QACnB,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;YAC/B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,KAAK,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,aAAa,EAAE,EAAE,CAAC;QACpD,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,UAAU,EAAE,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,gBAAgB;IAChB,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,QAAQ,cAAc,EAAE,kBAAkB,CAAC,CAAC;IACnE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,QAAQ,aAAa,EAAE,iBAAiB,CAAC,CAAC;IACjE,+DAA+D;IAC/D,yEAAyE;IACzE,yEAAyE;IACzE,yEAAyE;IACzE,wEAAwE;IACxE,sEAAsE;IACtE,mBAAmB;IACnB,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,QAAQ,cAAc,EAAE,kBAAkB,CAAC,CAAC;IACnE,8EAA8E;IAC9E,sDAAsD;IACtD,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;IAEzD,8DAA8D;IAC9D,KAAK,MAAM,UAAU,IAAI,SAAS,EAAE,CAAC;QACnC,MAAM,aAAa,GAAG,wBAAwB,CAAC,UAAU,CAAC,CAAC;QAC3D,IAAI,aAAa,EAAE,CAAC;YAClB,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,aAAa,EAAE,CAAC;gBAChD,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC;IAED,gCAAgC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAE7C,4EAA4E;IAC5E,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,KAAK,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;gBACpC,IACE,SAAS,CAAC,IAAI,CACZ,CAAC,IAAI,EAAE,EAAE,CACP,QAAQ,KAAK,IAAI;oBACjB,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAC9D,EACD,CAAC;oBACD,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,iFAAiF;IACjF,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC;QACxC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,4BAA4B,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,cAAc,CACrB,GAAW,EACX,MAAsB,EACtB,SAA8B;IAE9B,MAAM,MAAM,GAAmB;QAC7B,QAAQ,EAAE,EAAE;QACZ,cAAc,EAAE,EAAE;QAClB,eAAe,EAAE,EAAE;QACnB,YAAY,EAAE,EAAE;QAChB,gBAAgB,EAAE,EAAE;QACpB,cAAc,EAAE,eAAe;KAChC,CAAC;IAEF,KAAK,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,IAAI,SAAS,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAEvC,MAAM,MAAM,GAAe;YACzB,IAAI,EAAE,QAAQ;YACd,YAAY;YACZ,UAAU;YACV,MAAM,EAAE,KAAK;SACd,CAAC;QAEF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;YACxC,IAAI,UAAU,EAAE,CAAC;gBACf,2DAA2D;gBAC3D,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;gBACtB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,eAAe,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC3D,IAAI,eAAe,KAAK,UAAU,EAAE,CAAC;gBACnC,gDAAgD;gBAChD,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC;gBAC5B,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,+DAA+D;gBAC/D,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBACxC,MAAM,WAAW,GAAG,WAAW,CAAC,eAAe,CAAC,CAAC;gBAEjD,IACE,CAAC,UAAU,IAAI,UAAU,KAAK,WAAW,CAAC;oBAC1C,CAAC,CAAC,UAAU;wBACV,wBAAwB,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,EAC1D,CAAC;oBACD,wEAAwE;oBACxE,8DAA8D;oBAC9D,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;oBAC1B,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACtC,CAAC;qBAAM,CAAC;oBACN,4DAA4D;oBAC5D,qBAAqB;oBACrB,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;oBAC1B,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,0BAA0B,CACjC,OAAuB,EACvB,MAAsB;IAEtB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IAExC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,YAAY,KAAK,UAAU,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1E,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,OAAuB;IACjD,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAE3C,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACpD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAClE,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC1D,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,eAAe,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CACpE,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,yCAAyC,CAAC,CAAC,CAAC;QACrE,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAC;QACzD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,gDAAgD;IAChD,MAAM,sBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QAC7C,OAAO,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,IAAI,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACpD,KAAK,MAAM,aAAa,IAAI,sBAAsB,EAAE,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,aAAa,GAAG,CAAC,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,wBAAwB,CACrC,IAAgB,EAChB,OAAsB,EACtB,UAA6C;IAE7C,oCAAoC;IACpC,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QACtB,OAAO,UAAU,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,6BAA6B;IAC7B,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,qBAAqB;IACrB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAqB;QAC3D;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,GAAG,IAAI,CAAC,YAAY,eAAe;YAC5C,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,0CAA0C;oBAChD,KAAK,EAAE,WAAW;iBACnB;gBACD,EAAE,IAAI,EAAE,sCAAsC,EAAE,KAAK,EAAE,MAAM,EAAE;gBAC/D;oBACE,IAAI,EAAE,4CAA4C;oBAClD,KAAK,EAAE,YAAY;iBACpB;gBACD,EAAE,IAAI,EAAE,4BAA4B,EAAE,KAAK,EAAE,eAAe,EAAE;gBAC9D,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,UAAU,EAAE;gBACpD,EAAE,IAAI,EAAE,8BAA8B,EAAE,KAAK,EAAE,gBAAgB,EAAE;aAClE;YACD,OAAO,EAAE,MAAM;SAChB;KACF,CAAC,CAAC;IAEH,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;QAC/B,UAAU,CAAC,MAAM,GAAG,WAAW,CAAC;QAChC,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC1B,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC;QAC3B,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,MAAM,KAAK,gBAAgB,EAAE,CAAC;QAChC,UAAU,CAAC,MAAM,GAAG,YAAY,CAAC;QACjC,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,OAAO,MAAwB,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,GAAW;IACtC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9E,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE,WAAW,SAAS,EAAE,CAAC,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CACjB,GAAW,EACX,SAAiB,EACjB,YAAoB;IAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAC7C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO;IAEpC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IACtD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,WAAW,GAAG,gBAAgB,CAAC;AAErC,6DAA6D;AAC7D,MAAM,YAAY,GAAG,CAAC,UAAU,CAAC,MAAM,CAAU,CAAC;AAElD;;GAEG;AACH,MAAM,uBAAuB,GAAG;IAC9B,UAAU,EAAE,mBAAmB;IAC/B,eAAe,EAAE,sDAAsD;IACvE,aAAa,EAAE,kCAAkC;IACjD,SAAS,EAAE,wBAAwB;IACnC,QAAQ,EAAE,uCAAuC;IACjD,WAAW,EAAE,2BAA2B;IACxC,gBAAgB,EAAE,wCAAwC;IAC1D,mEAAmE;IACnE,sEAAsE;IACtE,kEAAkE;IAClE,oCAAoC;IACpC,oCAAoC;IACpC,oCAAoC;IACpC,iEAAiE;IACjE,aAAa;IACb,YAAY;CACb,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,YAAoB;IAC1D,oEAAoE;IACpE,uEAAuE;IACvE,sEAAsE;IACtE,6DAA6D;IAC7D,oEAAoE;IACpE,mEAAmE;IACnE,qDAAqD;IACrD,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACpD,KAAK,MAAM,OAAO,IAAI,uBAAuB,EAAE,CAAC;QAC9C,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,GAAW;IACnC,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,SAAS;QAEtC,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC5C,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;YAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAElD,sBAAsB;YACtB,IAAI,uBAAuB,CAAC,YAAY,CAAC;gBAAE,SAAS;YAEpD,gBAAgB;YAChB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC7C,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;YACD,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,KAAK,MAAM,YAAY,IAAI,YAAY,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAC9C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,SAAS;QACvC,IAAI,uBAAuB,CAAC,YAAY,CAAC;YAAE,SAAS;QAEpD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,QAAQ,GAAG,IAAI,CAAC;QAClB,CAAC;QACD,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACnE,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,mCAAmC,CAAC,GAAW;IACtD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,OAAO;IACT,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,EAAE,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE;YAAE,SAAS;QAEjD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;QAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,SAAS;QACX,CAAC;QAED,EAAE,CAAC,aAAa,CACd,UAAU,EACV,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EACjD,OAAO,CACR,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,GAAW;IACtC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACnE,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IACtD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,mBAAmB;IAChC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,8BAA8B,YAAY,SAAS,CACpD,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAyB,CAAC;QAC7D,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,OAAe,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IAC3D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IAEvC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC;IAExB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,UAAU;YAAE,SAAS;QAE1B,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACnD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAElD,mEAAmE;YACnE,8DAA8D;YAC9D,gEAAgE;YAChE,IAAI,KAAK,CAAC,cAAc,EAAE;gBAAE,SAAS;YAErC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC3C,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC1B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,SAAS,wBAAwB,CAC/B,GAAW,EACX,eAAuB,EACvB,MAAsB,EACtB,SAA8B;IAE9B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IACpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7C,MAAM,KAAK,GAAG,eAAe,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAChD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,0BAA0B;IAE/D,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC7B,qEAAqE;QACrE,uEAAuE;QACvE,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC3D,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;QACxC,MAAM,eAAe,GAAG,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAEpD,mEAAmE;QACnE,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,cAAc,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC1D,IAAI,cAAc,KAAK,eAAe,EAAE,CAAC;gBACvC,+BAA+B;gBAC/B,SAAS;YACX,CAAC;QACH,CAAC;QAED,0CAA0C;QAC1C,IAAI,UAAU,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC;YACjE,gCAAgC;YAChC,SAAS;QACX,CAAC;QAED,0DAA0D;QAC1D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,wBAAwB,CAAC,OAAe;IAC/C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO;IACpC,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAC1B,GAAW,EACX,YAAoB,EACpB,SAA8B;IAE9B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAC9C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1C,MAAM,eAAe,GAAG,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACpD,IAAI,CAAC,eAAe;QAAE,OAAO,KAAK,CAAC,CAAC,sBAAsB;IAE1D,MAAM,cAAc,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1D,OAAO,cAAc,KAAK,eAAe,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CACzB,UAA2B,EAC3B,GAAW,EACX,MAAsB,EACtB,SAA8B;IAE9B,MAAM,MAAM,GAAyB;QACnC,IAAI,EAAE,EAAE;QACR,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,EAAE;KACT,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,0DAA0D;QAC1D,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB;YAAE,SAAS;QAE/C,oGAAoG;QACpG,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,SAAS;QACX,CAAC;QACD,8DAA8D;QAC9D,wGAAwG;QACxG,IACE,IAAI,CAAC,EAAE;YACP,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,IAAI,KAAK,QAAQ;YACtB,IAAI,CAAC,IAAI,KAAK,YAAY,EAC1B,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAEzC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,6CAA6C;YAC7C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,SAAS;QACX,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YACxC,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAEzC,IAAI,SAAS,EAAE,CAAC;gBACd,sEAAsE;gBACtE,IAAI,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC;oBACjD,gEAAgE;oBAChE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACN,uCAAuC;oBACvC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;iBAAM,IAAI,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;gBACtD,kDAAkD;gBAClD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACN,6CAA6C;gBAC7C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACjD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YACxC,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAEzC,IAAI,SAAS,EAAE,CAAC;gBACd,sEAAsE;gBACtE,IAAI,wBAAwB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;oBAC9D,0CAA0C;oBAC1C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACN,2CAA2C;oBAC3C,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,uDAAuD;gBACvD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC/C,uDAAuD;gBACvD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACN,mCAAmC;gBACnC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,UAAgC;IAC7D,MAAM,KAAK,GACT,UAAU,CAAC,IAAI,CAAC,MAAM;QACtB,UAAU,CAAC,OAAO,CAAC,MAAM;QACzB,UAAU,CAAC,QAAQ,CAAC,MAAM;QAC1B,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;IAEzB,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACvD,OAAO;IACT,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC3D,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAC5D,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YACpE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,+CAA+C,CAAC,CAAC,CAAC;QAC3E,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAC7D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC,CAAC;QACjE,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YAClE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,iEAAiE,CAClE,CACF,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAC9D,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,qBAAqB,CAClC,IAAmB;IAEnB,MAAM,QAAQ,GACZ,IAAI,CAAC,IAAI,KAAK,QAAQ;QACpB,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;QACtD,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAExD,MAAM,WAAW,GACf,IAAI,CAAC,WAAW,IAAI,sCAAsC,CAAC;IAE7D,sEAAsE;IACtE,MAAM,WAAW,GACf,IAAI,CAAC,IAAI,KAAK,QAAQ;QACpB,CAAC,CAAC,uFAAuF;QACzF,CAAC,CAAC,uFAAuF,CAAC;IAC9F,MAAM,WAAW,GACf,IAAI,CAAC,IAAI,KAAK,QAAQ;QACpB,CAAC,CAAC,8GAA8G;QAChH,CAAC,CAAC,0GAA0G,CAAC;IACjH,MAAM,SAAS,GACb,IAAI,CAAC,IAAI,KAAK,QAAQ;QACpB,CAAC,CAAC,6GAA6G;QAC/G,CAAC,CAAC,0GAA0G,CAAC;IAEjH,8EAA8E;IAC9E,4EAA4E;IAC5E,0DAA0D;IAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM;QAC5B,CAAC,CAAC,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,MAAM;aACR,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;aAC1B,IAAI,CAAC,IAAI,CAAC,CACd;QACH,CAAC,CAAC,KAAK,CAAC,IAAI,CACR,wEAAwE;YACtE,qEAAqE,CACxE,CAAC;IAEN,MAAM,OAAO,GAAG;QACd,QAAQ;QACR,EAAE;QACF,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,GAAG,GAAG,WAAW;QACzC,UAAU;QACV,EAAE;QACF,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;KACxB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAA8B;QACpE;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,QAAQ;YACd,OAAO;YACP,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,eAAkC,EAAE;gBAChE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAA2B,EAAE;gBACzD,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAyB,EAAE;aACtD;YACD,OAAO,EAAE,eAAe;SACzB;KACF,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,0CAA0C;AAC1C,MAAM,UAAU,gBAAgB,CAAC,GAAW,EAAE,OAAe;IAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAEzC,sDAAsD;IACtD,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,qFAAqF;IACrF,IAAI,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,yCAAyC;IACzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO;IAErC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,OAAO;QAEhC,MAAM,QAAQ,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACvB,0DAA0D;YAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACrC,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtE,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0CAA0C;IAC5C,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,0CAA0C;AAC1C,MAAM,UAAU,0BAA0B,CACxC,UAA2B;IAE3B,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACnC,2DAA2D;QAC3D,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACvD,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACxC,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACxC,OAAO,MAAM,GAAG,MAAM,CAAC,CAAC,qBAAqB;QAC/C,CAAC;QACD,sDAAsD;QACtD,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY;YAAE,OAAO,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY;YAAE,OAAO,CAAC,CAAC;QACjE,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,iBAAiB,CAC9B,UAAgC,EAChC,GAAW,EACX,OAA+C;IAE/C,MAAM,MAAM,GAAoB;QAC9B,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM;KACtC,CAAC;IAEF,2CAA2C;IAC3C,MAAM,UAAU,GAAG,0BAA0B,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAE/D,gEAAgE;IAChE,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAExC,iCAAiC;YACjC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACzD,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAEhC,uBAAuB;YACvB,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAEpC,mCAAmC;YACnC,IAAI,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvD,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC/B,CAAC;YAED,kCAAkC;YAClC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAE/C,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACjD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAExC,wEAAwE;YACxE,kCAAkC;YAClC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,wBAAwB,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;YAED,iCAAiC;YACjC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAEzD,wDAAwD;YACxD,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAEhC,4DAA4D;YAC5D,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;YACxE,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC;YAElE,MAAM,aAAa,GAAmB,EAAE,CAAC;YACzC,KAAK,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3D,IAAI,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBACnC,wCAAwC;oBACxC,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBACjE,aAAa,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;gBACzC,CAAC;qBAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC1C,gDAAgD;oBAChD,kDAAkD;oBAClD,SAAS;gBACX,CAAC;qBAAM,CAAC;oBACN,iBAAiB;oBACjB,aAAa,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;gBACtC,CAAC;YACH,CAAC;YACD,UAAU,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;YAE/B,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3C,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAExB,4BAA4B;YAC5B,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAE3B,2BAA2B;YAC3B,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAE/C,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAED,2CAA2C;IAC3C,kFAAkF;IAClF,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACtC,IAAI,MAAuB,CAAC;QAE5B,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,0CAA0C;YAC1C,MAAM,GAAG,QAAQ,CAAC;QACpB,CAAC;aAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,qCAAqC;YACrC,MAAM,GAAG,MAAM,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,8BAA8B;YAC9B,MAAM,GAAG,MAAM,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,SAAS;QACX,CAAC;QAED,2EAA2E;QAC3E,2EAA2E;QAC3E,2EAA2E;QAC3E,4EAA4E;QAC5E,iDAAiD;QACjD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAExC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAEzD,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;gBAC/B,4EAA4E;gBAC5E,0EAA0E;gBAC1E,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;YAChD,CAAC;YAED,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAChC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAEpC,IAAI,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvD,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC/B,CAAC;YAED,kCAAkC;YAClC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAE/C,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAE3C,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;gBAC/B,uEAAuE;gBACvE,sDAAsD;gBACtD,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAC;YAClD,CAAC;YAED,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACxB,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAE3B,2BAA2B;YAC3B,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAE/C,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAED,sDAAsD;IACtD,MAAM,CAAC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;IAEzC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAAC,MAAuB;IACnD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,UAAU,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,UAAU,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,UAAU,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,MAAM,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CACR,GAAG,MAAM,CAAC,SAAS,YAAY,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACjE,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAsB;IACjD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,kCAAkC;IAClC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAE5C,4DAA4D;IAC5D,UAAU,EAAE,CAAC;IAEb,eAAe;IACf,MAAM,cAAc,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,OAAO,CAAC;IAC3B,MAAM,gBAAgB,GAAG,MAAM,mBAAmB,EAAE,CAAC;IAErD,qBAAqB;IACrB,MAAM,YAAY,GAAG,eAAe,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,gBAAgB;QAC/B,CAAC,CAAC,eAAe,CAAC,UAAU,EAAE,gBAAgB,CAAC;QAC/C,CAAC,CAAC,CAAC,CAAC;IAEN,gCAAgC;IAChC,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC3D,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;IACnE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,2CAA2C;IAC3C,IAAI,QAAQ,GAAG,CAAC,IAAI,gBAAgB,EAAE,CAAC;QACrC,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,iBAAiB,UAAU,oBAAoB,gBAAgB,IAAI,CACpE,CACF,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,gCAAgC;IAChC,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,iCAAiC,UAAU,wBAAwB,cAAc,GAAG,CACrF,CACF,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC,CAAC;QAElE,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,CAAC;YACjE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,0DAA0D,CAAC,CACvE,CAAC;YACF,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,gEAAgE,CACjE,CACF,CAAC;IACJ,CAAC;IAED,6EAA6E;IAE7E,kDAAkD;IAClD,IAAI,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IAE7D,mFAAmF;IACnF,MAAM,gBAAgB,GAAG,cAAc,KAAK,SAAS,CAAC;IACtD,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,2EAA2E,CAC5E,CACF,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,wDAAwD,CAAC,CACrE,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,yEAAyE;IACzE,2EAA2E;IAC3E,2EAA2E;IAC3E,6CAA6C;IAC7C,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAClD,IAAI,kBAAkB,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,kGAAkG,CACnG,CACF,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,uEAAuE;IACvE,yEAAyE;IACzE,2EAA2E;IAC3E,+DAA+D;IAC/D,CAAC;QACC,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAS,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC;QACzE,IAAI,kBAAkB;YAAE,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,uBAAuB,CACnC,GAAG,EACH,CAAC,GAAG,mBAAmB,CAAC,EACxB,MAAM,CACP,CAAC;QACF,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,aAAa,KAAK,CAAC,MAAM,CAAC,MAAM,qDAAqD,CACtF,CACF,CAAC;YACF,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QACxB,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,0EAA0E;IAC1E,8EAA8E;IAC9E,4EAA4E;IAC5E,qEAAqE;IACrE,wEAAwE;IACxE,0EAA0E;IAC1E,8DAA8D;IAC9D,MAAM,cAAc,GAClB,OAAO,CAAC,OAAO,KAAK,IAAI;QACxB,YAAY,GAAG,CAAC;QAChB,cAAc,KAAK,SAAS;QAC5B,CAAC,GAAG,EAAE;YACJ,MAAM,EAAE,GAAG,oBAAoB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YAC5D,OAAO,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,gBAAgB,CAAC;QAC5C,CAAC,CAAC,EAAE,CAAC;IAEP,iFAAiF;IACjF,MAAM,SAAS,GAAG,oBAAoB,CACpC,GAAG,EACH,kBAAkB,CAAC,CAAC,CAAC,IAAI,GAAG,CAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAC3D,cAAc,CACf,CAAC;IAEF,kFAAkF;IAClF,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAE3C,mFAAmF;IACnF,4EAA4E;IAC5E,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,MAAM,eAAe,GAAG,sBAAsB,CAC5C,aAAa,EACb,GAAG,EACH,SAAS,EACT,cAAc,CACf,CAAC;IACF,MAAM,cAAc,GAClB,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAElE,iEAAiE;IACjE,IAAI,iBAAiB,GAAG,gBAAgB;QACtC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,uBAAuB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAExD,yGAAyG;IACzG,8EAA8E;IAC9E,MAAM,kBAAkB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACvD,8CAA8C;QAC9C,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY;YAAE,OAAO,KAAK,CAAC;QACvE,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,KAAK,CAAC;QAEzC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAExC,sDAAsD;QACtD,wDAAwD;QACxD,MAAM,YAAY,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAChD,CAAC;QAEF,OAAO,YAAY,IAAI,CAAC,YAAY,IAAI,CAAC,cAAc,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,+DAA+D;IAC/D,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,2DAA2D,CAAC,CAC1E,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,kBAAkB,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,iBAAiB,GAAG,CAAC,GAAG,iBAAiB,EAAE,GAAG,kBAAkB,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;IAEnD,yDAAyD;IACzD,IAAI,oBAAoB,GAAgC,IAAI,CAAC;IAE7D,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;QAErD,oBAAoB,GAAG,kBAAkB,CACvC,iBAAiB,EACjB,GAAG,EACH,MAAM,EACN,SAAS,CACV,CAAC;QAEF,qBAAqB,CAAC,oBAAoB,CAAC,CAAC;QAE5C,oFAAoF;QACpF,uFAAuF;QACvF,mFAAmF;QACnF,8DAA8D;QAC9D,MAAM,qBAAqB,GACzB,oBAAoB,CAAC,IAAI,CAAC,MAAM;YAChC,oBAAoB,CAAC,OAAO,CAAC,MAAM;YACnC,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC;QAEvC,IACE,qBAAqB,GAAG,CAAC;YACzB,CAAC,OAAO,CAAC,OAAO;YAChB,CAAC,OAAO,CAAC,MAAM;YACf,YAAY,GAAG,CAAC;YAChB,cAAc,KAAK,SAAS,EAC5B,CAAC;YACD,MAAM,YAAY,GAAG,oBAAoB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YACtE,IAAI,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,gBAAgB,EAAE,CAAC;gBAC3D,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC;oBAC9C,KAAK,CAAC,GAAG,CACP,6BAA6B,cAAc,MAAM,UAAU,qBAAqB,CACjF,CACJ,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,qFAAqF;oBACnF,oEAAoE;oBACpE,oDAAoD,CACvD,CACF,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,wFAAwF;QACxF,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC;YACnD,MAAM,YAAY,GAAG,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC;YAEzD,IAAI,SAAS,GAAG,CAAC,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;gBACtC,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,sEAAsE,CACvE,CACF,CAAC;gBACF,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;oBACrB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,yEAAyE,CAC1E,CACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAClB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,0BAA0B,CAAC,eAAe,CAAC,CAAC;IAC9C,CAAC;IAED,2DAA2D;IAC3D,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IACvD,MAAM,mBAAmB,GAAG,0BAA0B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAExE,gBAAgB;IAChB,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAE5B,gCAAgC;IAChC,IAAI,mBAAmB,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CACF,CAAC;QACF,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,uEAAuE,CACxE,CACF,CAAC;IACJ,CAAC;IAED,kCAAkC;IAClC,MAAM,SAAS,GAAG,YAAY,GAAG,CAAC,CAAC;IACnC,MAAM,WAAW,GAAG,YAAY,GAAG,CAAC,CAAC;IACrC,MAAM,aAAa,GAAG,YAAY,KAAK,CAAC,CAAC;IAEzC,8DAA8D;IAC9D,MAAM,oBAAoB,GACxB,OAAO,CAAC,OAAO;QACf,oBAAoB;QACpB,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YACnC,oBAAoB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE7C,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,sBAAsB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QACtE,IAAI,CAAC;YACH,mCAAmC,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB;QACnB,CAAC;IACH,CAAC;IAED,IACE,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QAC7B,OAAO,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC;QACpC,OAAO,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;QACjC,CAAC,oBAAoB;QACrB,CAAC,cAAc,EACf,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,mBAAmB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACpD,YAAY,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,8EAA8E;YAC9E,iBAAiB,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,gCAAgC,cAAc,MAAM,UAAU,EAAE,CACjE,CACF,CAAC;YACJ,CAAC;iBAAM,IAAI,WAAW,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,gCAAgC,cAAc,MAAM,UAAU,cAAc,CAC7E,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO;IACT,CAAC;IAED,mCAAmC;IACnC,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CAAC,sBAAsB,cAAc,MAAM,UAAU,IAAI,CAAC,CACtE,CAAC;IACJ,CAAC;SAAM,IAAI,WAAW,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,4BAA4B,cAAc,MAAM,UAAU,IAAI,CAAC,CAC1E,CAAC;IACJ,CAAC;IAED,8CAA8C;IAC9C,IAAI,YAAY,GAAG,CAAC,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACrD,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAC5E,IAAI,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC;gBAC9C,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,sCAAsC,CAAC,CACzD,CAAC;YACF,IAAI,kBAAkB,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,CAAC;YACD,IAAI,kBAAkB,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAC5D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC;oBAC1C,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CACpE,CAAC;YACJ,CAAC;YACD,mEAAmE;YACnE,yEAAyE;YACzE,IAAI,cAAc,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3C,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CACvC,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,MAAM,KAAK,QAAQ;oBACrB,SAAS,CAAC,IAAI,CACZ,CAAC,IAAI,EAAE,EAAE,CACP,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI;wBACpB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CACjE,CACJ,CAAC;gBACF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAChB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC;wBACnD,KAAK,CAAC,MAAM,CAAC,IAAI,CACf,uBAAuB,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,2DAA2D,CAC/G,CACJ,CAAC;oBACF,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,0IAA0I,CAC3I,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,eAAe;IACf,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC;QACtD,OAAO;IACT,CAAC;IAED,wEAAwE;IACxE,gFAAgF;IAChF,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAC7D,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAuB;YAC9D;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,UAAU;gBACnB,OAAO,EAAE,IAAI;aACd;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAExC,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,qBAAqB,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,CAClE,CAAC;IACJ,CAAC;IAED,8CAA8C;IAC9C,IAAI,OAAO,CAAC,OAAO,IAAI,oBAAoB,EAAE,CAAC;QAC5C,MAAM,eAAe,GAAG,MAAM,iBAAiB,CAAC,oBAAoB,EAAE,GAAG,EAAE;YACzE,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,oBAAoB,CAAC,eAAe,CAAC,CAAC;QAEtC,yEAAyE;QACzE,2FAA2F;QAC3F,yFAAyF;QACzF,yFAAyF;QACzF,yFAAyF;QACzF,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACrD,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAChC,IAAI,cAAc,GAAG,CAAC,CAAC;YACvB,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAC7C,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;gBAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;gBAC7C,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE;oBAAE,SAAS;gBAElD,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACtC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;wBACvD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;wBACzC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;wBACpD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;wBAC5C,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;wBAChC,cAAc,EAAE,CAAC;oBACnB,CAAC;gBACH,CAAC;YACH,CAAC;YACD,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,WAAW,cAAc,4BAA4B,CAAC,CAClE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,cAAc,EAAE,CAAC;QACnB,WAAW,GAAG,sBAAsB,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QAC3D,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,gBAAgB,WAAW,6BAA6B,CAAC,CACrE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,gBAAgB;IAChB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,gBAAgB;IAChB,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACjD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACvC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAE7C,0BAA0B;YAC1B,IACE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACjC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,EACjC,CAAC;gBACD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACjC,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YACrD,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAC7D,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAC3C,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAE7C,0BAA0B;YAC1B,IACE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACjC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,EACjC,CAAC;gBACD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACjC,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YACpD,WAAW,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;IAED,uBAAuB;IACvB,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAE3D,MAAM,UAAU,GAAsC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAEvE,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;YAEzE,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;gBAC3B,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC7C,IACE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;oBACjC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,EACjC,CAAC;oBACD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBACjC,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,oBAAoB,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBACnE,OAAO,EAAE,CAAC;YACZ,CAAC;iBAAM,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;gBACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;gBACnC,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC3C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,YAAY,MAAM,CAAC,CAAC,CAAC;gBACjE,UAAU,EAAE,CAAC;YACf,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBAC7D,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;IACH,CAAC;IAED,oEAAoE;IACpE,2EAA2E;IAC3E,wEAAwE;IACxE,IAAI,sBAAsB,GAAG,CAAC,CAAC;IAC/B,IAAI,YAAY,GAAG,CAAC,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACrD,MAAM,cAAc,GAAG,6BAA6B,CAClD,cAAc,EACd,UAAU,CACX,CAAC;QACF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,EAAE,QAAQ,EAAE,GAAG,wBAAwB,CAC3C,cAAc,EACd,GAAG,EACH,SAAS,CACV,CAAC;YACF,sBAAsB,GAAG,QAAQ,CAAC;QACpC,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAEvB,sEAAsE;IACtE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAiB,mBAAmB,CAAC,CAAC;IACjE,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACpC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,CAAC;IACD,yCAAyC;IACzC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QAC3C,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,CAAC;IACD,2DAA2D;IAC3D,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACnD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnD,IAAI,OAAO,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACzB,YAAY,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACjC,CAAC;IAED,gBAAgB;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,UAAU,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,mBAAmB,WAAW,UAAU,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,UAAU,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,UAAU,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,0BAA0B,UAAU,UAAU,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,iBAAiB,WAAW,qBAAqB,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,sBAAsB,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,4BAA4B,sBAAsB,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;IACxD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,OAAO,UAAU,eAAe,cAAc,MAAM,UAAU,GAAG,CAClE,CACF,CAAC;IAEF,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,gEAAgE,CACjE,CACF,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,IAAI,YAAY,GAAG,CAAC,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACrD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAElE,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7D,wBAAwB;YACxB,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;YAChH,MAAM,QAAQ,GAAG,cAAc,UAAU,EAAE,CAAC;YAC5C,MAAM,WAAW,GAAG,GAAG,QAAQ,IAAI,QAAQ,EAAE,CAAC;YAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;YACrE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAEjD,+BAA+B;YAC/B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAE3C,sCAAsC;gBACtC,mEAAmE;gBACnE,0BAA0B;gBAC1B,6BAA6B;gBAC7B,iEAAiE;gBACjE,oEAAoE;gBACpE,qDAAqD;gBACrD,gEAAgE;gBAChE,4CAA4C;gBAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;gBACvE,IAAI,gBAAgB,GAAG,SAAS,CAAC;gBACjC,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;oBACjC,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;oBACpD,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;oBACzD,IAAI,SAAS,EAAE,CAAC;wBACd,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;oBAClC,CAAC;gBACH,CAAC;gBAED,iEAAiE;gBACjE,MAAM,SAAS,GAAG,eAAe,UAAU,EAAE,CAAC;gBAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnD,MAAM,QAAQ,GAAG,aAAa,CAAC;oBAC7B,EAAE,EAAE,QAAQ;oBACZ,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,SAAS;oBAChB,WAAW,EAAE,mCAAmC,cAAc,QAAQ,UAAU,EAAE;oBAClF,MAAM,EAAE,UAAU;oBAClB,KAAK,EAAE,WAAW;oBAClB,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,gBAAgB;oBACzB,QAAQ,EAAE,gBAAgB;oBAC1B,SAAS,EAAE,QAAQ;iBACpB,CAAC,CAAC;gBAEH,kBAAkB;gBAClB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;gBACrD,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAElE,oBAAoB;gBACpB,IAAI,UAAU,GAAG,iCAAiC,UAAU,MAAM,CAAC;gBACnE,UAAU,IAAI,gBAAgB,QAAQ,IAAI,CAAC;gBAC3C,UAAU,IAAI,qBAAqB,cAAc,IAAI,CAAC;gBACtD,UAAU,IAAI,mBAAmB,UAAU,IAAI,CAAC;gBAChD,UAAU,IAAI,iBAAiB,gBAAgB,MAAM,CAAC;gBACtD,UAAU,IAAI,wIAAwI,CAAC;gBAEvJ,KAAK,MAAM,EACT,OAAO,EACP,KAAK,EACL,cAAc,GACf,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;oBAC9B,UAAU,IAAI,cAAc,OAAO,sBAAsB,CAAC;oBAC1D,UAAU,IAAI,KAAK,CAAC;oBACpB,UAAU,IAAI,MAAM,CAAC;oBAErB,IAAI,cAAc,EAAE,CAAC;wBACnB,UAAU,IAAI,mCAAmC,CAAC;wBAClD,UAAU,IAAI,uCAAuC,CAAC;wBACtD,UAAU,IAAI,cAAc,CAAC;wBAC7B,UAAU,IAAI,MAAM,CAAC;oBACvB,CAAC;gBACH,CAAC;gBAED,YAAY;gBACZ,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC7C,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;gBAEtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;gBACpE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,6DAA6D,CAC9D,CACF,CAAC;gBACF,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,MAAM,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,IAAI,WAAW,GAAG,CAC9D,CACF,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,+EAA+E,CAChF,CACF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,qFAAqF;IACrF,IAAI,YAAY,GAAG,CAAC,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACrD,MAAM,aAAa,GAAG,oBAAoB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEvE,IAAI,aAAa,CAAC,QAAQ,IAAI,aAAa,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAExC,IAAI,aAAa,CAAC,QAAQ,EAAE,CAAC;gBAC3B,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC;oBAC9C,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAC5D,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC;YAED,IAAI,aAAa,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBACnD,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;oBAC5C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC1C,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC;YAED,IAAI,aAAa,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACvD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC;oBAC1C,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CACpE,CAAC;gBACF,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,yDAAyD,CAAC,CACtE,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ {
2
+ "version": "0.6.0-beta.24",
3
+ "description": "Beta patch: unify the npm latest dist-tag policy so release preflight checks, upgrade defaults, and published metadata all follow the same latest-only contract.",
4
+ "breaking": false,
5
+ "recommendMigrate": false,
6
+ "changelog": "**Enhancements:**\n- fix(release): publish preflight now enforces a latest-only npm dist-tag policy so release checks and registry verification agree on the same contract.\n- fix(upgrade): CLI upgrade behavior now aligns with the published latest-only strategy instead of relying on divergent beta/rc defaults.\n\n**Notes:**\n- release-related tests and fork specs were updated together so the release pipeline and user-facing upgrade path stay in sync.",
7
+ "migrations": [],
8
+ "notes": "Run `npm install -g trellis-hgl@latest` (or install this exact version) and `trellis update` to pick up the release-policy and upgrade-path fixes. No file migration is required."
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "version": "0.6.0-beta.26",
3
+ "description": "Beta patch: add the Claude-side trellis-switch execution gate so disabled Trellis commands and skills stop early, hide Claude surfaces consistently, and recover cleanly when re-enabled.",
4
+ "breaking": false,
5
+ "recommendMigrate": false,
6
+ "changelog": "**Enhancements:**\n- feat(claude): generated Claude commands, skills, and bundled skills now include a trellis-switch guard that stops immediately when Trellis has been disabled for the current developer.\n- feat(claude): `trellis_switch.py` now hides or restores Claude command and skill surfaces together, and the generated script set now includes `assert_trellis_enabled.py` for the guard path.\n- test(claude): configurator coverage now verifies guard injection and command heading placement so the disabled-state behavior stays stable across updates.\n\n**Notes:**\n- This is a template/content refresh for existing Trellis projects; update sync handles the new guard script and prompt content.",
7
+ "migrations": [],
8
+ "notes": "Run `trellis update` to receive the new Claude trellis-switch guard script and synchronized command/skill gating. No manual file migration is required."
9
+ }
@@ -28,7 +28,7 @@ Look for the `<!-- trellis-hook-injected -->` marker in your input above.
28
28
 
29
29
  Before checking, check whether the task artifacts recorded a development strategy.
30
30
 
31
- - If the strategy is `subagent + worktree`, stay on the shared `./.claude/worktree` path and do NOT create or switch to another worktree.
31
+ - If the strategy is `subagent + worktree`, stay on the shared `./.claude/trellis-worktrees/<task-dir-name>` path and do NOT create or switch to another worktree.
32
32
  - If the strategy is TDD, align your review expectations to `trellis-tdd`.
33
33
  - If the task artifacts carry `Review-gate contract: explicit-selection-v1`, preserve the configured selection for the main session. Require `Optional review gates status: configured` plus explicit `Enabled optional review gates:` / `Disabled optional review gates:` lists, keep any enabled Claude review gates in this order: `trellis-spec-review` → `trellis-code-review` → `trellis-code-architecture-review`, treat `trellis-improve-codebase-architecture` and `trellis-merge-review` as opt-in gates controlled by the task strategy, and remember that `trellis-check` stays fixed outside this optional set. `trellis-improve-codebase-architecture` deep-review requires `trellis-code-architecture-review`; if deep-review is enabled without that prerequisite, stop and report the invalid strategy record to the main session.
34
34
  - If the contract marker is absent, treat the task as a legacy task and preserve the old review-gate behavior instead of silently applying the new-task default.
@@ -29,7 +29,7 @@ Look for the `<!-- trellis-hook-injected -->` marker in your input above.
29
29
 
30
30
  Before reviewing, check whether the task artifacts recorded a development strategy.
31
31
 
32
- - If the strategy is `subagent + worktree`, stay on the shared `./.claude/worktree` path and do NOT create or switch to another worktree.
32
+ - If the strategy is `subagent + worktree`, stay on the shared `./.claude/trellis-worktrees/<task-dir-name>` path and do NOT create or switch to another worktree.
33
33
  - If the strategy is TDD, align review expectations to `trellis-tdd`.
34
34
  - Do NOT approve the architecture-review gate if the task artifacts are missing the required strategy record. If the task artifacts carry `Review-gate contract: explicit-selection-v1`, verify that `trellis-code-architecture-review` is enabled there, verify `Optional review gates status: configured`, and verify explicit `Enabled optional review gates:` / `Disabled optional review gates:` lists exist. `trellis-improve-codebase-architecture` deep-review requires `trellis-code-architecture-review`; if the strategy record enables deep-review without that prerequisite gate, fail the review for an invalid task-level gate contract. If the contract marker is absent, treat the task as a legacy task and preserve the old review-gate behavior instead of failing solely for the missing selection record.
35
35
 
@@ -29,7 +29,7 @@ Look for the `<!-- trellis-hook-injected -->` marker in your input above.
29
29
 
30
30
  Before reviewing, check whether the task artifacts recorded a development strategy.
31
31
 
32
- - If the strategy is `subagent + worktree`, stay on the shared `./.claude/worktree` path and do NOT create or switch to another worktree.
32
+ - If the strategy is `subagent + worktree`, stay on the shared `./.claude/trellis-worktrees/<task-dir-name>` path and do NOT create or switch to another worktree.
33
33
  - If the strategy is TDD, align review expectations to `trellis-tdd`.
34
34
  - Do NOT approve the code-review gate if the task artifacts are missing the required strategy record. If the task artifacts carry `Review-gate contract: explicit-selection-v1`, verify that `trellis-code-review` is enabled there, verify `Optional review gates status: configured`, and verify explicit `Enabled optional review gates:` / `Disabled optional review gates:` lists exist. `trellis-improve-codebase-architecture` deep-review still requires `trellis-code-architecture-review`; if the strategy record enables deep-review without that prerequisite gate, fail the review for an invalid task-level gate contract. If the contract marker is absent, treat the task as a legacy task and preserve the old review-gate behavior instead of failing solely for the missing selection record.
35
35
 
@@ -3,6 +3,7 @@ name: trellis-implement
3
3
  description: |
4
4
  Code implementation expert. Understands specs and requirements, then implements features. No git commit allowed.
5
5
  tools: Read, Write, Edit, Bash, Glob, Grep, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa
6
+ permissionMode: acceptEdits
6
7
  ---
7
8
  # Implement Agent
8
9
 
@@ -27,7 +28,7 @@ Look for the `<!-- trellis-hook-injected -->` marker in your input above.
27
28
 
28
29
  Before implementing, check whether the task artifacts recorded a development strategy.
29
30
 
30
- - If the strategy is `subagent + worktree`, stay on the shared `./.claude/worktree` path and do NOT create or switch to another worktree.
31
+ - If the strategy is `subagent + worktree`, stay on the shared `./.claude/trellis-worktrees/<task-dir-name>` path and do NOT create or switch to another worktree.
31
32
  - If the strategy is TDD, align your implementation flow to `trellis-tdd`.
32
33
  - If the task artifacts carry `Review-gate contract: explicit-selection-v1`, preserve the configured selection for the main session. Require `Optional review gates status: configured` plus explicit `Enabled optional review gates:` / `Disabled optional review gates:` lists, keep any enabled Claude review gates in this order: `trellis-spec-review` → `trellis-code-review` → `trellis-code-architecture-review`, treat `trellis-improve-codebase-architecture` and `trellis-merge-review` as opt-in gates controlled by the task strategy, and remember that `trellis-check` stays fixed outside this optional set. `trellis-improve-codebase-architecture` deep-review requires `trellis-code-architecture-review`; if deep-review is enabled without that prerequisite, stop and report the invalid strategy record to the main session.
33
34
  - If the contract marker is absent, treat the task as a legacy task and preserve the old review-gate behavior instead of silently applying the new-task default.
@@ -29,7 +29,7 @@ Look for the `<!-- trellis-hook-injected -->` marker in your input above.
29
29
 
30
30
  Before reviewing, check whether the task artifacts recorded a development strategy.
31
31
 
32
- - If the strategy is `subagent + worktree`, stay on the shared `./.claude/worktree` path and do NOT create or switch to another worktree.
32
+ - If the strategy is `subagent + worktree`, stay on the shared `./.claude/trellis-worktrees/<task-dir-name>` path and do NOT create or switch to another worktree.
33
33
  - If the strategy is TDD, align review expectations to `trellis-tdd`.
34
34
  - Do NOT approve the merge-review gate if the task artifacts are missing the required strategy record. If the task artifacts carry `Review-gate contract: explicit-selection-v1`, verify that `trellis-merge-review` is enabled there, verify `Optional review gates status: configured`, and verify explicit `Enabled optional review gates:` / `Disabled optional review gates:` lists exist. `trellis-improve-codebase-architecture` deep-review still requires `trellis-code-architecture-review`; if the strategy record enables deep-review without that prerequisite gate, fail the review for an invalid task-level gate contract. If the contract marker is absent, treat the task as a legacy task and preserve the old review-gate behavior instead of failing solely for the missing selection record.
35
35
 
@@ -29,7 +29,7 @@ Look for the `<!-- trellis-hook-injected -->` marker in your input above.
29
29
 
30
30
  Before reviewing, check whether the task artifacts recorded a development strategy.
31
31
 
32
- - If the strategy is `subagent + worktree`, stay on the shared `./.claude/worktree` path and do NOT create or switch to another worktree.
32
+ - If the strategy is `subagent + worktree`, stay on the shared `./.claude/trellis-worktrees/<task-dir-name>` path and do NOT create or switch to another worktree.
33
33
  - If the strategy is TDD, align review expectations to `trellis-tdd`.
34
34
  - Do NOT approve the spec-review gate if the task artifacts are missing the required strategy record. If the task artifacts carry `Review-gate contract: explicit-selection-v1`, verify that `trellis-spec-review` is enabled there, verify `Optional review gates status: configured`, and verify explicit `Enabled optional review gates:` / `Disabled optional review gates:` lists exist. `trellis-improve-codebase-architecture` deep-review still requires `trellis-code-architecture-review`; if the strategy record enables deep-review without that prerequisite gate, fail the review for an invalid task-level gate contract. If the contract marker is absent, treat the task as a legacy task and preserve the old review-gate behavior instead of failing solely for the missing selection record.
35
35
 
@@ -37,7 +37,7 @@ Index files list the specific guideline docs to read when you actually start cod
37
37
  From Step 1 you know the current task and status. Check the task directory:
38
38
 
39
39
  - **Active task status `planning` + no `prd.md`** → Phase 1.1. Load the `trellis-brainstorm` skill.
40
- - **Active task status `planning` + `prd.md` exists** → stay in Phase 1. Lightweight tasks can be PRD-only; complex tasks need `design.md` + `implement.md`. For the Claude Code path, keep requirement clarification in `prd.md`, continue repository-first follow-up questioning by entering `trellis-grill-me`, and treat it as a required planning gate. Before `trellis-grill-me` is complete, do not enter development strategy decisions, do not create or complete `design.md` / `implement.md`, and do not run `task.py start`. Before `task.py start`, record the decisions in the task documents: development mode, branch vs worktree, default flow vs TDD, plus the task-level review-gate selection. Ask these in one `A.` / `B.` / `C.` style strategy block. New tasks must stamp that block with `Review-gate contract: explicit-selection-v1`. Complex tasks should keep that record in `implement.md` together with the enabled/disabled review gates and the preserved order for any enabled Claude review gates: `trellis-spec-review` → `trellis-code-review` → `trellis-code-architecture-review`. While the choice is still open, `Optional review gates status: pending` is allowed; before `task.py start`, replace it with `Optional review gates status: configured` plus explicit `Enabled optional review gates:` and `Disabled optional review gates:` lists for the selectable review gates (`trellis-spec-review`, `trellis-code-review`, `trellis-code-architecture-review`, `trellis-improve-codebase-architecture`, `trellis-merge-review`). If the user leaves all optional gates off, still record all five in the disabled list while keeping `trellis-check` fixed outside that set. Only tasks that entirely lack `Review-gate contract: explicit-selection-v1` count as legacy tasks and preserve the old behavior; if the marker exists but the configured enabled/disabled lists are missing, planning is incomplete and the task must not start. `trellis-improve-codebase-architecture` deep-review requires `trellis-code-architecture-review`; do not record or accept deep-review without that prerequisite gate. If the strategy is `subagent + worktree`, pin `./.claude/worktree`; if the strategy is TDD, record `trellis-tdd` as the reference flow. Also record whether to run pre-development architecture guidance in that same strategy block. If guidance is enabled, record `架构审查:enabled`, dispatch `trellis-improve-codebase-architecture` with `架构审查模式: guidance` before `task.py start`, and append its output to `design.md`, but do NOT implicitly enable `trellis-improve-codebase-architecture` deep-review; that gate still requires explicit selection in the task-level review-gate set.
40
+ - **Active task status `planning` + `prd.md` exists** → stay in Phase 1. Lightweight tasks can be PRD-only; complex tasks need `design.md` + `implement.md`. For the Claude Code path, keep requirement clarification in `prd.md`, continue repository-first follow-up questioning by entering `trellis-grill-me`, and treat it as a required planning gate. Before `trellis-grill-me` is complete, do not enter development strategy decisions, do not create or complete `design.md` / `implement.md`, and do not run `task.py start`. Before `task.py start`, record the decisions in the task documents: development mode, branch vs worktree, default flow vs TDD, plus the task-level review-gate selection. Ask these in one `A.` / `B.` / `C.` style strategy block. New tasks must stamp that block with `Review-gate contract: explicit-selection-v1`. Complex tasks should keep that record in `implement.md` together with the enabled/disabled review gates and the preserved order for any enabled Claude review gates: `trellis-spec-review` → `trellis-code-review` → `trellis-code-architecture-review`. While the choice is still open, `Optional review gates status: pending` is allowed; before `task.py start`, replace it with `Optional review gates status: configured` plus explicit `Enabled optional review gates:` and `Disabled optional review gates:` lists for the selectable review gates (`trellis-spec-review`, `trellis-code-review`, `trellis-code-architecture-review`, `trellis-improve-codebase-architecture`, `trellis-merge-review`). If the user leaves all optional gates off, still record all five in the disabled list while keeping `trellis-check` fixed outside that set. Only tasks that entirely lack `Review-gate contract: explicit-selection-v1` count as legacy tasks and preserve the old behavior; if the marker exists but the configured enabled/disabled lists are missing, planning is incomplete and the task must not start. `trellis-improve-codebase-architecture` deep-review requires `trellis-code-architecture-review`; do not record or accept deep-review without that prerequisite gate. If the strategy is `subagent + worktree`, pin `./.claude/trellis-worktrees/<task-dir-name>`; if the strategy is TDD, record `trellis-tdd` as the reference flow. Also record whether to run pre-development architecture guidance in that same strategy block. If guidance is enabled, record `架构审查:enabled`, dispatch `trellis-improve-codebase-architecture` with `架构审查模式: guidance` before `task.py start`, and append its output to `design.md`, but do NOT implicitly enable `trellis-improve-codebase-architecture` deep-review; that gate still requires explicit selection in the task-level review-gate set.
41
41
  - **Active task status `in_progress`** → Phase 2 step 2.1. Load the step detail:
42
42
  ```bash
43
43
  {{PYTHON_CMD}} ./.trellis/scripts/get_context.py --mode phase --step 2.1 --platform {{CLI_FLAG}}
@@ -30,7 +30,7 @@ Execute these steps:
30
30
  cat .trellis/spec/guides/index.md
31
31
  ```
32
32
 
33
- 7. If the task artifacts record a development strategy, follow it before writing code: keep `subagent + worktree` work on the shared `./.claude/worktree` path, and if the task selected TDD, align your development flow to `trellis-tdd`.
33
+ 7. If the task artifacts record a development strategy, follow it before writing code: keep `subagent + worktree` work on the shared `./.claude/trellis-worktrees/<task-dir-name>` path, and if the task selected TDD, align your development flow to `trellis-tdd`.
34
34
 
35
35
  8. If the task artifacts explicitly enable pre-development architecture guidance, run the task through `trellis-improve-codebase-architecture` guidance before widening the refactor. Architecture sensitivity or structural cleanup can justify recommending guidance during planning, but they do not implicitly enable it during execution.
36
36
 
@@ -49,7 +49,7 @@ Use a concise title from the user's request. Use a slug without a date prefix. `
49
49
  6. After each user answer, update `prd.md` before continuing.
50
50
  7. Once repository-answerable questions are exhausted, enter `trellis-grill-me` and tighten the remaining requirement gaps one question at a time, each with a recommendation, while still updating `prd.md` after each answer.
51
51
  8. On the Claude Code path, `trellis-grill-me` is a required planning gate. Before it is complete, do not switch into development strategy decisions, do not create or complete `design.md` / `implement.md`, and do not run `task.py start`.
52
- 9. Before implementation starts on the Claude Code path, record the development strategy decisions in the task documents: development mode, branch vs worktree, default flow vs TDD, and the task-level review-gate selection. Ask these in a single `A.` / `B.` / `C.` style option block. New tasks must stamp that strategy block with `Review-gate contract: explicit-selection-v1`. Lightweight tasks may keep that record in `prd.md`; complex tasks should keep it in `implement.md` together with the enabled/disabled review gates and the preserved execution order for any enabled Claude review gates: `trellis-spec-review` → `trellis-code-review` → `trellis-code-architecture-review`. The selectable review gates are `trellis-spec-review`, `trellis-code-review`, `trellis-code-architecture-review`, `trellis-improve-codebase-architecture`, and `trellis-merge-review`. While the choice is still open, `Optional review gates status: pending` is allowed; before `task.py start`, replace it with `Optional review gates status: configured` plus explicit `Enabled optional review gates:` and `Disabled optional review gates:` lists. If the user leaves all optional gates off, still record all five in the disabled list; `trellis-check` stays fixed outside this set. Only tasks that entirely lack `Review-gate contract: explicit-selection-v1` count as legacy tasks and preserve the old behavior; if the marker exists but the configured enabled/disabled lists are missing, planning is incomplete and the task must not start. `trellis-improve-codebase-architecture` deep-review requires `trellis-code-architecture-review`, so do not record or accept the deep-review gate without that prerequisite. If the strategy is `subagent + worktree`, pin `./.claude/worktree`. If the strategy is TDD, record `trellis-tdd` as the reference flow. Also record whether to run pre-development architecture guidance in that same strategy block. If guidance is enabled, record `架构审查:enabled`, dispatch `trellis-improve-codebase-architecture` with `架构审查模式: guidance` before `task.py start`, and append its output to `design.md`, but do NOT implicitly enable `trellis-improve-codebase-architecture` deep-review; that gate still requires explicit selection in the task-level review-gate set.
52
+ 9. Before implementation starts on the Claude Code path, record the development strategy decisions in the task documents: development mode, branch vs worktree, default flow vs TDD, and the task-level review-gate selection. Ask these in a single `A.` / `B.` / `C.` style option block. New tasks must stamp that strategy block with `Review-gate contract: explicit-selection-v1`. Lightweight tasks may keep that record in `prd.md`; complex tasks should keep it in `implement.md` together with the enabled/disabled review gates and the preserved execution order for any enabled Claude review gates: `trellis-spec-review` → `trellis-code-review` → `trellis-code-architecture-review`. The selectable review gates are `trellis-spec-review`, `trellis-code-review`, `trellis-code-architecture-review`, `trellis-improve-codebase-architecture`, and `trellis-merge-review`. While the choice is still open, `Optional review gates status: pending` is allowed; before `task.py start`, replace it with `Optional review gates status: configured` plus explicit `Enabled optional review gates:` and `Disabled optional review gates:` lists. If the user leaves all optional gates off, still record all five in the disabled list; `trellis-check` stays fixed outside this set. Only tasks that entirely lack `Review-gate contract: explicit-selection-v1` count as legacy tasks and preserve the old behavior; if the marker exists but the configured enabled/disabled lists are missing, planning is incomplete and the task must not start. `trellis-improve-codebase-architecture` deep-review requires `trellis-code-architecture-review`, so do not record or accept the deep-review gate without that prerequisite. If the strategy is `subagent + worktree`, pin `./.claude/trellis-worktrees/<task-dir-name>`. If the strategy is TDD, record `trellis-tdd` as the reference flow. Also record whether to run pre-development architecture guidance in that same strategy block. If guidance is enabled, record `架构审查:enabled`, dispatch `trellis-improve-codebase-architecture` with `架构审查模式: guidance` before `task.py start`, and append its output to `design.md`, but do NOT implicitly enable `trellis-improve-codebase-architecture` deep-review; that gate still requires explicit selection in the task-level review-gate set.
53
53
  10. For complex tasks, create or update `design.md` and `implement.md` only after `trellis-grill-me` is complete and implementation is about to start.
54
54
 
55
55
  Do not invent a project-specific product/spec hierarchy. If the repository already has product, domain, or spec docs, use them. If it does not, proceed with the evidence that exists.
@@ -49,6 +49,8 @@ if sys.platform.startswith("win"):
49
49
  DIR_WORKFLOW = ".trellis"
50
50
  DIR_SPEC = "spec"
51
51
  FILE_TASK_JSON = "task.json"
52
+ WORKTREE_PARENT_DIR = ".claude"
53
+ WORKTREE_ROOT_DIR = "trellis-worktrees"
52
54
 
53
55
  # =============================================================================
54
56
  # Subagent Constants (change here to rename subagent types)
@@ -79,6 +81,23 @@ def find_repo_root(start_path: str) -> str | None:
79
81
  return None
80
82
 
81
83
 
84
+ def _infer_worktree_task(repo_root: str) -> str | None:
85
+ root = Path(repo_root).resolve()
86
+ try:
87
+ if root.parent.name != WORKTREE_ROOT_DIR:
88
+ return None
89
+ if root.parent.parent.name != WORKTREE_PARENT_DIR:
90
+ return None
91
+ except Exception:
92
+ return None
93
+
94
+ task_dir_name = root.name
95
+ task_dir = root / DIR_WORKFLOW / "tasks" / task_dir_name
96
+ if not task_dir.is_dir():
97
+ return None
98
+ return f".trellis/tasks/{task_dir_name}"
99
+
100
+
82
101
  def _detect_platform(input_data: dict) -> str | None:
83
102
  if isinstance(input_data.get("cursor_version"), str):
84
103
  return "cursor"
@@ -121,14 +140,14 @@ def get_current_task(repo_root: str, input_data: dict) -> str | None:
121
140
  try:
122
141
  from common.active_task import resolve_active_task # type: ignore[import-not-found]
123
142
  except Exception:
124
- return None
143
+ return _infer_worktree_task(repo_root)
125
144
 
126
145
  active = resolve_active_task(
127
146
  Path(repo_root),
128
147
  input_data,
129
148
  platform=_detect_platform(input_data),
130
149
  )
131
- return active.task_path
150
+ return active.task_path or _infer_worktree_task(repo_root)
132
151
 
133
152
 
134
153
  def read_file_content(base_path: str, file_path: str) -> str | None:
@@ -9,10 +9,12 @@ from __future__ import annotations
9
9
  import warnings
10
10
  warnings.filterwarnings("ignore")
11
11
 
12
+ import hashlib
12
13
  import json
13
14
  import os
14
15
  import re
15
16
  import shlex
17
+ import shutil
16
18
  import subprocess
17
19
  import sys
18
20
  from io import StringIO
@@ -95,6 +97,281 @@ if sys.platform.startswith("win"):
95
97
  pass
96
98
 
97
99
 
100
+ WORKTREE_PARENT_DIR = ".claude"
101
+ WORKTREE_ROOT_DIR = "trellis-worktrees"
102
+ RUNTIME_BUNDLE_FILES = (
103
+ ".trellis/workflow.md",
104
+ ".trellis/config.yaml",
105
+ ".trellis/.gitignore",
106
+ )
107
+ RUNTIME_BUNDLE_DIRS = (
108
+ ".trellis/scripts",
109
+ )
110
+ PLANNING_FILE_NAMES = (
111
+ "task.json",
112
+ "prd.md",
113
+ "design.md",
114
+ "implement.md",
115
+ "implement.jsonl",
116
+ "check.jsonl",
117
+ )
118
+ PLANNING_DIR_NAMES = ("research",)
119
+
120
+
121
+ def _remove_path(path: Path) -> None:
122
+ if path.is_symlink() or path.is_file():
123
+ path.unlink()
124
+ return
125
+ if path.is_dir():
126
+ shutil.rmtree(path)
127
+
128
+
129
+ def _hash_file(path: Path) -> str:
130
+ digest = hashlib.sha256()
131
+ with path.open("rb") as handle:
132
+ for chunk in iter(lambda: handle.read(65536), b""):
133
+ digest.update(chunk)
134
+ return digest.hexdigest()
135
+
136
+
137
+ def _snapshot_dir(path: Path) -> dict[str, str]:
138
+ if not path.is_dir():
139
+ return {}
140
+ snapshot: dict[str, str] = {}
141
+ for child in sorted(path.rglob("*")):
142
+ if child.is_file():
143
+ snapshot[child.relative_to(path).as_posix()] = _hash_file(child)
144
+ return snapshot
145
+
146
+
147
+ def _same_file(src: Path, dst: Path) -> bool:
148
+ return src.is_file() and dst.is_file() and _hash_file(src) == _hash_file(dst)
149
+
150
+
151
+ def _same_tree(src: Path, dst: Path) -> bool:
152
+ return src.is_dir() and dst.is_dir() and _snapshot_dir(src) == _snapshot_dir(dst)
153
+
154
+
155
+ def _copy_file(src: Path, dst: Path) -> None:
156
+ dst.parent.mkdir(parents=True, exist_ok=True)
157
+ shutil.copy2(src, dst)
158
+
159
+
160
+ def _copy_tree(src: Path, dst: Path) -> None:
161
+ if dst.exists():
162
+ _remove_path(dst)
163
+ dst.parent.mkdir(parents=True, exist_ok=True)
164
+ shutil.copytree(src, dst)
165
+
166
+
167
+ def _detect_trellis_managed_worktree(repo_root: Path) -> tuple[Path, str] | None:
168
+ try:
169
+ if repo_root.parent.name != WORKTREE_ROOT_DIR:
170
+ return None
171
+ if repo_root.parent.parent.name != WORKTREE_PARENT_DIR:
172
+ return None
173
+ main_root = repo_root.parent.parent.parent
174
+ if not (main_root / ".git").exists():
175
+ return None
176
+ return main_root, repo_root.name
177
+ except Exception:
178
+ return None
179
+
180
+
181
+ def _task_dir(repo_root: Path, task_dir_name: str) -> Path:
182
+ return repo_root / ".trellis" / "tasks" / task_dir_name
183
+
184
+
185
+ def _task_snapshot(task_dir: Path) -> dict[str, str]:
186
+ snapshot: dict[str, str] = {}
187
+ for name in PLANNING_FILE_NAMES:
188
+ file_path = task_dir / name
189
+ if file_path.is_file():
190
+ snapshot[name] = _hash_file(file_path)
191
+ for name in PLANNING_DIR_NAMES:
192
+ dir_path = task_dir / name
193
+ if not dir_path.is_dir():
194
+ continue
195
+ for child in sorted(dir_path.rglob("*")):
196
+ if child.is_file():
197
+ snapshot[child.relative_to(task_dir).as_posix()] = _hash_file(child)
198
+ return snapshot
199
+
200
+
201
+ def _has_any_task_artifact(task_dir: Path) -> bool:
202
+ for name in PLANNING_FILE_NAMES:
203
+ if (task_dir / name).is_file():
204
+ return True
205
+ for name in PLANNING_DIR_NAMES:
206
+ if (task_dir / name).exists():
207
+ return True
208
+ return False
209
+
210
+
211
+ def _sync_runtime_bundle(main_root: Path, worktree_root: Path) -> list[str]:
212
+ synced: list[str] = []
213
+ for relative_path in RUNTIME_BUNDLE_FILES:
214
+ src = main_root / relative_path
215
+ dst = worktree_root / relative_path
216
+ if not src.is_file() or _same_file(src, dst):
217
+ continue
218
+ _copy_file(src, dst)
219
+ synced.append(relative_path)
220
+ for relative_path in RUNTIME_BUNDLE_DIRS:
221
+ src = main_root / relative_path
222
+ dst = worktree_root / relative_path
223
+ if not src.is_dir() or _same_tree(src, dst):
224
+ continue
225
+ _copy_tree(src, dst)
226
+ synced.append(relative_path)
227
+ return synced
228
+
229
+
230
+ def _sync_task_snapshot(main_root: Path, worktree_root: Path, task_dir_name: str) -> list[str]:
231
+ source_task_dir = _task_dir(main_root, task_dir_name)
232
+ target_task_dir = _task_dir(worktree_root, task_dir_name)
233
+ if not source_task_dir.is_dir():
234
+ return []
235
+
236
+ synced: list[str] = []
237
+ for name in PLANNING_FILE_NAMES:
238
+ src = source_task_dir / name
239
+ if not src.is_file():
240
+ continue
241
+ dst = target_task_dir / name
242
+ if _same_file(src, dst):
243
+ continue
244
+ _copy_file(src, dst)
245
+ synced.append(name)
246
+
247
+ for name in PLANNING_DIR_NAMES:
248
+ src = source_task_dir / name
249
+ if not src.is_dir():
250
+ continue
251
+ dst = target_task_dir / name
252
+ if _same_tree(src, dst):
253
+ continue
254
+ _copy_tree(src, dst)
255
+ synced.append(name)
256
+
257
+ return synced
258
+
259
+
260
+ def _collect_task_drift(main_root: Path, worktree_root: Path, task_dir_name: str) -> list[str]:
261
+ source_snapshot = _task_snapshot(_task_dir(main_root, task_dir_name))
262
+ target_snapshot = _task_snapshot(_task_dir(worktree_root, task_dir_name))
263
+ keys = sorted(set(source_snapshot) | set(target_snapshot))
264
+ return [key for key in keys if source_snapshot.get(key) != target_snapshot.get(key)]
265
+
266
+
267
+ def _is_managed_worktree_path(path_str: str, task_dir_name: str) -> bool:
268
+ normalized = path_str.replace("\\", "/").strip().strip("/")
269
+
270
+ for relative_path in RUNTIME_BUNDLE_FILES:
271
+ runtime_path = relative_path.strip("/")
272
+ if normalized == runtime_path:
273
+ return True
274
+ for relative_path in RUNTIME_BUNDLE_DIRS:
275
+ runtime_dir = relative_path.strip("/")
276
+ if normalized == runtime_dir or normalized.startswith(runtime_dir + "/"):
277
+ return True
278
+
279
+ task_root = f".trellis/tasks/{task_dir_name}"
280
+ if normalized in (".trellis/tasks", task_root):
281
+ return True
282
+ task_prefix = task_root + "/"
283
+ if not normalized.startswith(task_prefix):
284
+ return False
285
+ task_relative = normalized[len(task_prefix):]
286
+ if not task_relative:
287
+ return True
288
+ if task_relative in PLANNING_FILE_NAMES:
289
+ return True
290
+ for dir_name in PLANNING_DIR_NAMES:
291
+ if task_relative == dir_name or task_relative.startswith(dir_name + "/"):
292
+ return True
293
+ return False
294
+
295
+
296
+ def _worktree_has_local_code_changes(worktree_root: Path, task_dir_name: str) -> bool:
297
+ if not worktree_root.exists():
298
+ return False
299
+ for child in sorted(worktree_root.rglob("*")):
300
+ if child.is_dir():
301
+ continue
302
+ relative_path = child.relative_to(worktree_root).as_posix()
303
+ if not _is_managed_worktree_path(relative_path, task_dir_name):
304
+ return True
305
+ return False
306
+
307
+
308
+ def _format_changed_paths(paths: list[str], limit: int = 6) -> str:
309
+ preview = paths[:limit]
310
+ suffix = "" if len(paths) <= limit else ", ..."
311
+ return ", ".join(preview) + suffix
312
+
313
+
314
+ def _maybe_sync_trellis_worktree(project_dir: Path) -> str:
315
+ try:
316
+ detected = _detect_trellis_managed_worktree(project_dir)
317
+ if not detected:
318
+ return ""
319
+
320
+ main_root, task_dir_name = detected
321
+ notes: list[str] = [
322
+ f"Detected Trellis-managed worktree: ./.claude/trellis-worktrees/{task_dir_name}/",
323
+ ]
324
+
325
+ runtime_synced = _sync_runtime_bundle(main_root, project_dir)
326
+ if runtime_synced:
327
+ notes.append(
328
+ "Bootstrapped runtime bundle from main workspace: "
329
+ + ", ".join(runtime_synced)
330
+ )
331
+
332
+ target_task_dir = _task_dir(project_dir, task_dir_name)
333
+ if not _has_any_task_artifact(target_task_dir):
334
+ planning_synced = _sync_task_snapshot(main_root, project_dir, task_dir_name)
335
+ if planning_synced:
336
+ notes.append(
337
+ "Bootstrapped current task planning snapshot from main workspace: "
338
+ + ", ".join(planning_synced)
339
+ )
340
+
341
+ drift = _collect_task_drift(main_root, project_dir, task_dir_name)
342
+ if drift:
343
+ notes.append(
344
+ "Planning drift detected between main workspace and worktree: "
345
+ + _format_changed_paths(drift)
346
+ )
347
+ if _worktree_has_local_code_changes(project_dir, task_dir_name):
348
+ notes.append(
349
+ "Do NOT auto-overwrite: this worktree has local code changes. "
350
+ "Explain the conflict first, recommend creating a new Trellis task "
351
+ "to handle the version conflict, and ask whether the user still wants "
352
+ "direct overwrite or a new conflict task."
353
+ )
354
+ else:
355
+ notes.append(
356
+ "Ask the user exactly: 已检测到主工作区的某个任务的prd.md/planning与worktree不一致,是否执行 主工作区覆盖worktree 的操作?"
357
+ )
358
+ notes.append(
359
+ "If the user still chooses direct overwrite, first create a `.backup-` "
360
+ "snapshot beside the current task directory, back up the entire current "
361
+ "task directory, then overwrite only the current task's planning artifacts."
362
+ )
363
+ notes.append(
364
+ "If the user chooses a conflict task, inherit the original task's planning "
365
+ "context and continue by asking only which version should win and which "
366
+ "version better satisfies the user's request."
367
+ )
368
+
369
+ if len(notes) == 1:
370
+ return ""
371
+ return "\n".join(notes)
372
+ except Exception as exc:
373
+ return f"Trellis worktree bootstrap warning: {exc}"
374
+
98
375
 
99
376
  def _has_curated_jsonl_entry(jsonl_path: Path) -> bool:
100
377
  """Return True iff jsonl has at least one row with a ``file`` field.
@@ -316,6 +593,17 @@ def run_script(script_path: Path, context_key: str | None = None) -> str:
316
593
  return "No context available"
317
594
 
318
595
 
596
+ def _infer_worktree_task_ref(repo_root: Path) -> str | None:
597
+ detected = _detect_trellis_managed_worktree(repo_root)
598
+ if not detected:
599
+ return None
600
+ _, task_dir_name = detected
601
+ task_dir = _task_dir(repo_root, task_dir_name)
602
+ if not task_dir.is_dir():
603
+ return None
604
+ return f".trellis/tasks/{task_dir_name}"
605
+
606
+
319
607
  def _normalize_task_ref(task_ref: str) -> str:
320
608
  normalized = task_ref.strip()
321
609
  if not normalized:
@@ -348,8 +636,9 @@ def _resolve_task_dir(trellis_dir: Path, task_ref: str) -> Path:
348
636
  def _get_task_status(trellis_dir: Path, input_data: dict) -> str:
349
637
  """Return compact active-task status, artifact presence, and next action."""
350
638
  active = _resolve_active_task(trellis_dir, input_data)
639
+ task_ref = active.task_path or _infer_worktree_task_ref(trellis_dir.parent)
351
640
 
352
- if not active.task_path:
641
+ if not task_ref:
353
642
  return (
354
643
  "Status: NO ACTIVE TASK\n"
355
644
  "Next-Action: Classify the current turn before creating any Trellis task. "
@@ -358,9 +647,8 @@ def _get_task_status(trellis_dir: Path, input_data: dict) -> str:
358
647
  "For Claude Code workflow requests in natural language, guide the user to `task.py create` first."
359
648
  )
360
649
 
361
- task_ref = active.task_path
362
650
  task_dir = _resolve_task_dir(trellis_dir, task_ref)
363
- if active.stale or not task_dir.is_dir():
651
+ if active.task_path and (active.stale or not task_dir.is_dir()):
364
652
  return (
365
653
  f"Status: STALE POINTER\nTask: {task_ref}\n"
366
654
  f"Next-Action: Run `python3 ./.trellis/scripts/task.py finish` to clear the stale pointer, "
@@ -642,8 +930,9 @@ def _build_compact_current_state(
642
930
  lines.append(_format_git_state(repo_root))
643
931
 
644
932
  active = _resolve_active_task(trellis_dir, input_data)
645
- if active.task_path:
646
- task_dir = _resolve_task_dir(trellis_dir, active.task_path)
933
+ task_ref = active.task_path or _infer_worktree_task_ref(repo_root)
934
+ if task_ref:
935
+ task_dir = _resolve_task_dir(trellis_dir, task_ref)
647
936
  status = "unknown"
648
937
  task_json = task_dir / "task.json"
649
938
  if task_json.is_file():
@@ -775,6 +1064,7 @@ def main():
775
1064
  if project_dir is None:
776
1065
  project_dir = Path(_normalize_windows_shell_path(hook_input.get("cwd", "."))).resolve()
777
1066
 
1067
+ worktree_sync_notice = _maybe_sync_trellis_worktree(project_dir)
778
1068
  trellis_dir = project_dir / ".trellis"
779
1069
  context_key = _resolve_context_key(trellis_dir, hook_input)
780
1070
  _persist_context_key_for_bash(context_key)
@@ -807,6 +1097,9 @@ Trellis compact SessionStart context. Use it to orient the session; load details
807
1097
  output.write(_build_compact_current_state(trellis_dir, hook_input, spec_index_paths))
808
1098
  output.write("\n</current-state>\n\n")
809
1099
 
1100
+ if worktree_sync_notice:
1101
+ output.write(f"<worktree-sync>\n{worktree_sync_notice}\n</worktree-sync>\n\n")
1102
+
810
1103
  output.write("<trellis-workflow>\n")
811
1104
  output.write(_build_workflow_overview(trellis_dir / "workflow.md"))
812
1105
  output.write("\n</trellis-workflow>\n\n")
@@ -189,7 +189,7 @@ Planning order for this Claude Code path: `task.py create` → `trellis-brainsto
189
189
  `trellis-grill-me` is a required planning gate on this Claude Code path, not an optional suggestion.
190
190
  Before `trellis-grill-me` is complete, do not enter development strategy decisions, do not create or complete `design.md` / `implement.md`, and do not run `task.py start`.
191
191
  Do not enter development strategy decisions until `prd.md` has been tightened through repository-first clarification and one-question-at-a-time follow-up.
192
- Before `task.py start`, record the development strategy decisions in the task documents. Complex tasks should store them in `implement.md`: development mode (current session / subagent), branch vs worktree, default flow vs TDD, plus a single `A.` / `B.` / `C.` style strategy block that records the task-level selection for `trellis-spec-review`, `trellis-code-review`, `trellis-code-architecture-review`, `trellis-improve-codebase-architecture`, and `trellis-merge-review`. New tasks must stamp that block with `Review-gate contract: explicit-selection-v1`. Use `Optional review gates status: pending` only while the choice is still open; before `task.py start`, replace it with `Optional review gates status: configured` plus explicit `Enabled optional review gates:` and `Disabled optional review gates:` lists. If the user does not select any optional gate, still record all five in the disabled list and keep `trellis-check` fixed outside the optional set. Only tasks that entirely lack `Review-gate contract: explicit-selection-v1` count as legacy tasks and preserve the old behavior; if the marker exists but the configured enabled/disabled lists are missing, planning is incomplete and the task must not start. `trellis-improve-codebase-architecture` deep-review requires `trellis-code-architecture-review`; do not record or accept deep-review without that prerequisite gate. If the strategy is `subagent + worktree`, pin the shared path to `./.claude/worktree` and require every code-development subagent to use it. If the strategy is TDD, record `trellis-tdd` as the reference flow. Record whether to run pre-development architecture guidance in that same strategy block. If guidance is enabled, record `架构审查:enabled` in `implement.md`, dispatch `trellis-improve-codebase-architecture` with `架构审查模式: guidance` before `task.py start`, and append its output to `design.md`, but do NOT implicitly enable `trellis-improve-codebase-architecture` deep-review; that gate still requires explicit selection in the same task-level review-gate set.
192
+ Before `task.py start`, record the development strategy decisions in the task documents. Complex tasks should store them in `implement.md`: development mode (current session / subagent), branch vs worktree, default flow vs TDD, plus a single `A.` / `B.` / `C.` style strategy block that records the task-level selection for `trellis-spec-review`, `trellis-code-review`, `trellis-code-architecture-review`, `trellis-improve-codebase-architecture`, and `trellis-merge-review`. New tasks must stamp that block with `Review-gate contract: explicit-selection-v1`. Use `Optional review gates status: pending` only while the choice is still open; before `task.py start`, replace it with `Optional review gates status: configured` plus explicit `Enabled optional review gates:` and `Disabled optional review gates:` lists. If the user does not select any optional gate, still record all five in the disabled list and keep `trellis-check` fixed outside the optional set. Only tasks that entirely lack `Review-gate contract: explicit-selection-v1` count as legacy tasks and preserve the old behavior; if the marker exists but the configured enabled/disabled lists are missing, planning is incomplete and the task must not start. `trellis-improve-codebase-architecture` deep-review requires `trellis-code-architecture-review`; do not record or accept deep-review without that prerequisite gate. If the strategy is `subagent + worktree`, pin the shared path to `./.claude/trellis-worktrees/<task-dir-name>` and require every code-development subagent to use it. If the strategy is TDD, record `trellis-tdd` as the reference flow. Record whether to run pre-development architecture guidance in that same strategy block. If guidance is enabled, record `架构审查:enabled` in `implement.md`, dispatch `trellis-improve-codebase-architecture` with `架构审查模式: guidance` before `task.py start`, and append its output to `design.md`, but do NOT implicitly enable `trellis-improve-codebase-architecture` deep-review; that gate still requires explicit selection in the same task-level review-gate set.
193
193
  [/workflow-state:planning]
194
194
 
195
195
  <!-- Per-turn breadcrumb: shown throughout Phase 1 when codex.dispatch_mode=inline.
@@ -229,7 +229,7 @@ Dispatch prompt starts with `Active task: <task path from task.py current>`. Rea
229
229
  Claude review gates are read-only gates. They report PASS / FAIL, blocking issues, and suggested next actions; they do not modify code directly.
230
230
  If a Claude review gate fails, the main agent repairs the code, then re-runs the same gate before advancing.
231
231
  For any enabled `trellis-spec-review`, `trellis-code-review`, `trellis-code-architecture-review`, and `trellis-merge-review`, count repeated failures per gate and per task. If the same gate blocks the same task more than 3 times in a row, the main agent must briefly report that status to the user, re-check whether the requirements have drifted, and ask whether to skip the current review gate.
232
- If the chosen strategy is `subagent + worktree`, all code-development subagents must use the same `./.claude/worktree` path.
232
+ If the chosen strategy is `subagent + worktree`, all code-development subagents must use the same `./.claude/trellis-worktrees/<task-dir-name>` path.
233
233
  If the chosen strategy is TDD, align implementation and review expectations to `trellis-tdd`.
234
234
  If the task strategy enables `trellis-improve-codebase-architecture` and the work is architecture-sensitive or enters structural refactoring, route the architecture pass through `trellis-improve-codebase-architecture` before widening the change.
235
235
  If the task strategy enables `trellis-improve-codebase-architecture`, after `trellis-code-architecture-review` passes dispatch `trellis-improve-codebase-architecture` with `架构审查模式: deep-review` plus the changed file list from `git diff --name-only <base_branch>...HEAD`. On failure, report blocking issues and return to `trellis-implement`; re-run the full review loop until deep-review passes. `trellis-improve-codebase-architecture` deep-review requires `trellis-code-architecture-review`; if the task artifacts enable deep-review without that prerequisite gate, treat the strategy record as invalid and repair the task artifacts before continuing. Guidance recorded in `implement.md` is independent and does not by itself enable or block deep-review.
@@ -365,7 +365,7 @@ brainstorm skill 会指导你:
365
365
  - 如果用户没有选中任何可选 gate,也要把这 5 个 gate 全部写进 disabled 列表;`trellis-check` 固定保留在这组之外。
366
366
  - 只有完全缺少 `Review-gate contract: explicit-selection-v1` 标记的任务才视为 legacy task,并沿用旧行为;如果标记已存在但缺少 configured 的 enabled/disabled 列表,说明 planning 未完成,不能启动任务。
367
367
  - `trellis-improve-codebase-architecture` deep-review 依赖 `trellis-code-architecture-review`;不要记录或接受只开 deep-review、不开号 architecture-review 的组合。
368
- - 如果选择 `subagent + worktree`,将 `./.claude/worktree` 固定为所有代码开发子代理共享的路径。
368
+ - 如果选择 `subagent + worktree`,将 `./.claude/trellis-worktrees/<task-dir-name>` 固定为所有代码开发子代理共享的路径。
369
369
  - 如果选择 TDD,记录 `trellis-tdd` 作为参考流程,并让后续实现与评审都对齐到它。
370
370
  - 如果启用了 pre-development architecture guidance,在 `task.py start` 之前运行 `trellis-improve-codebase-architecture` guidance 并把结果追加到 `design.md`;但这不会隐式开启 `trellis-improve-codebase-architecture` deep-review,后者仍需在 review-gate 选择里显式启用。
371
371
 
@@ -500,6 +500,7 @@ python3 ./.trellis/scripts/task.py start <task-dir>
500
500
  - **Agent type**: `trellis-implement`
501
501
  - **Task description**: Implement the reviewed task artifacts, consulting materials under `{TASK_DIR}/research/`; finish by running project lint and type-check
502
502
  - **Dispatch prompt guard**: Tell the spawned agent it is already the `trellis-implement` sub-agent and must implement directly, not spawn another `trellis-implement` / `trellis-check`.
503
+ - **Claude Code permission note**: `trellis-implement` carries `permissionMode: acceptEdits` so the normal foreground implement path can edit without per-write confirmation. If the parent Claude session runs under a host-constrained mode such as `auto`, actual permission behavior still follows the host.
503
504
 
504
505
  平台 hook / plugin 会自动处理:The platform hook/plugin auto-handles:
505
506
  - 读取 `implement.jsonl`,把引用的 spec / research 文件注入子代理 prompt。Reads `implement.jsonl`, injecting referenced spec / research files into the sub-agent prompt.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "trellis-hgl",
3
- "version": "0.6.0-beta.26",
3
+ "version": "0.6.0-beta.27",
4
4
  "description": "AI capabilities grow like ivy — Trellis provides the structure to guide them along a disciplined path",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -34,7 +34,7 @@
34
34
  "inquirer": "^9.3.7",
35
35
  "undici": "^6.21.0",
36
36
  "zod": "^4.4.2",
37
- "trellis-hgl-core": "0.6.0-beta.26"
37
+ "trellis-hgl-core": "0.6.0-beta.27"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@eslint/js": "^9.18.0",