{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/shared/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,wBAAwB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACxG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,KAAK,EAAE,iCAAiC,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AACvH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAMtE,MAAM,WAAW,eAAe;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,WAAW,CAAC;AAEhD,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEpD,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEvD,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAEjE,MAAM,MAAM,kBAAkB,GAC3B,SAAS,GACT,SAAS,GACT,WAAW,GACX,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,UAAU,GACV,UAAU,CAAC;AAEd,MAAM,WAAW,iBAAiB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,wBAAwB,GAAG,OAAO,GAAG,YAAY,CAAC;IACpF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,kBAAkB,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE;QACT,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,oBAAoB,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACpD,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,gBAAgB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,KAAK;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;CACtB;AAED,MAAM,MAAM,iBAAiB,GAAG,eAAe,GAAG,cAAc,GAAG,cAAc,CAAC;AAElF,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IAC1D,OAAO,EAAE,iBAAiB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,iBAAiB,GAAG,eAAe,GAAG,mBAAmB,GAAG,sBAAsB,GAAG,UAAU,CAAC;AAE5G,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IAC1D,OAAO,EAAE,iBAAiB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,aAAa,GAAG,qBAAqB,GAAG,iBAAiB,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,qBAAqB,GAAG,iBAAiB,CAAC;AACzE,MAAM,MAAM,0BAA0B,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AAExE,MAAM,WAAW,aAAa;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,iCAAiC,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,0BAA0B,EAAE,CAAC;CAC9C;AAED,MAAM,WAAW,qBAAqB;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,iCAAiC,EAAE,MAAM,CAAC;IAC1C,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,cAAc,EAAE,0BAA0B,EAAE,CAAC;CAC7C;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,6CAA6C;IAC7C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,wEAAwE;IACxE,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,oBAAoB,CAAC;AAE5D,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,gBAAgB,CAAC;IACvB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,EAAE,EAAE,aAAa,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EACJ,MAAM,GACN,kBAAkB,GAClB,qBAAqB,GACrB,eAAe,GACf,oBAAoB,GACpB,gBAAgB,GAChB,gBAAgB,GAChB,iBAAiB,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;AAC9F,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AACnE,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,UAAU,CAAC;AAC3E,MAAM,MAAM,kBAAkB,GAAG,eAAe,CAAC;AAEjD,MAAM,WAAW,oBAAoB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,oBAAoB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,oBAAoB,CAAC;CAC5B;AAED,MAAM,WAAW,0BAA0B;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,OAAO,EAAE;QACR,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC;QAC9B,KAAK,EAAE,0BAA0B,EAAE,CAAC;QACpC,MAAM,EAAE,OAAO,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC;CACF;AAED,MAAM,WAAW,uBAAuB;IACvC,OAAO,EAAE,CAAC,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAC3B,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,oBAAoB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,wBAAwB;IACxC,OAAO,EAAE,CAAC,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,UAAU,GAAG,SAAS,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,CAAC,CAAC;CACX;AAED,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,YAAY,CAAC;AAExD,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;AAEnG,MAAM,WAAW,mBAAmB;IACnC,MAAM,EAAE,yBAAyB,CAAC;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAChC,MAAM,EAAE,eAAe,GAAG,iBAAiB,GAAG,UAAU,GAAG,UAAU,CAAC;IACtE,QAAQ,CAAC,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,eAAe,GAAG,gBAAgB,GAAG,UAAU,GAAG,SAAS,CAAC;IACpE,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IACjC,YAAY,CAAC,EAAE,kBAAkB,CAAC;CAClC;AAED,eAAO,MAAM,mCAAmC,IAAI,CAAC;AACrD,MAAM,MAAM,gCAAgC,GAAG,OAAO,mCAAmC,CAAC;AAE1F,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,aAAa,CAAC;AACtF,MAAM,MAAM,qBAAqB,GAC9B,sBAAsB,GACtB,0BAA0B,GAC1B,0BAA0B,GAC1B,yBAAyB,GACzB,+BAA+B,GAC/B,gCAAgC,GAChC,sCAAsC,GACtC,oBAAoB,GACpB,cAAc,CAAC;AAElB,MAAM,WAAW,2BAA2B;IAC3C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,6BAA6B;IAC7C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,MAAM,qBAAqB,GAAG,2BAA2B,GAAG,6BAA6B,CAAC;AAEhG,MAAM,WAAW,0BAA0B;IAC1C,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,UAAU,GAAG,UAAU,CAAC;IAC1C,iBAAiB,EAAE,IAAI,CAAC;IACxB,6BAA6B,CAAC,EAAE,IAAI,CAAC;CACrC;AAED,UAAU,qBAAqB;IAC9B,OAAO,EAAE,CAAC,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB,EAAE,MAAM,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,iBAAiB,CAAC,EAAE,WAAW,GAAG,eAAe,GAAG,aAAa,CAAC;CAClE;AAED,MAAM,MAAM,iBAAiB,GAC1B,CAAC,qBAAqB,GAAG;IAAE,KAAK,EAAE,SAAS,GAAG,aAAa,CAAA;CAAE,CAAC,GAC9D,CAAC,qBAAqB,GAAG;IACzB,KAAK,EAAE,UAAU,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,qBAAqB,EAAE,CAAC;IACnC,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;CAC7C,CAAC,GACF,CAAC,qBAAqB,GAAG;IACzB,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC,CAAC;AAEN,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;AAC7G,MAAM,MAAM,mBAAmB,GAC5B,WAAW,GACX,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,MAAM,GACN,QAAQ,GACR,WAAW,CAAC;AAEf,MAAM,WAAW,oBAAoB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,mBAAmB,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,oBAAoB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,cAAc;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,qBAAqB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,mBAAmB,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,mBAAmB,CAAC;IAC3B,cAAc,EAAE,WAAW,GAAG,QAAQ,CAAC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,0BAA0B,CAAC;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,0BAA0B;IAC1C,OAAO,EAAE,CAAC,CAAC;IACX,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,QAAQ,GAAG,SAAS,CAAC;IACvC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,QAAQ,GAAG,WAAW,CAAC;IACnC,sBAAsB,CAAC,EAAE,gBAAgB,CAAC;IAC1C,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,kBAAkB,CAAC;IACvC,iBAAiB,CAAC,EAAE,kBAAkB,CAAC;IACvC,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IACtD,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;IAC3D,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,CAAC;CAChC;AAED,MAAM,MAAM,uBAAuB,GAAG,IAAI,CACzC,iBAAiB,EACf,OAAO,GACP,QAAQ,GACR,OAAO,GACP,UAAU,GACV,aAAa,GACb,gBAAgB,GAChB,iBAAiB,GACjB,eAAe,GACf,gBAAgB,GAChB,aAAa,GACb,sBAAsB,GACtB,aAAa,GACb,WAAW,GACX,WAAW,GACX,YAAY,GACZ,mBAAmB,GACnB,WAAW,GACX,SAAS,GACT,OAAO,GACP,UAAU,GACV,SAAS,CACX,GAAG;IACH,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACxC,gBAAgB,EACd,IAAI,GACJ,aAAa,GACb,iBAAiB,GACjB,aAAa,GACb,OAAO,GACP,MAAM,GACN,UAAU,GACV,WAAW,GACX,aAAa,GACb,gBAAgB,GAChB,qBAAqB,GACrB,oBAAoB,GACpB,YAAY,GACZ,MAAM,GACN,OAAO,GACP,OAAO,GACP,QAAQ,GACR,OAAO,GACP,UAAU,GACV,aAAa,GACb,gBAAgB,GAChB,gBAAgB,GAChB,eAAe,GACf,gBAAgB,GAChB,aAAa,GACb,sBAAsB,GACtB,aAAa,GACb,WAAW,GACX,WAAW,GACX,YAAY,GACZ,mBAAmB,GACnB,aAAa,GACb,WAAW,GACX,WAAW,GACX,SAAS,GACT,YAAY,GACZ,OAAO,GACP,WAAW,GACX,YAAY,GACZ,UAAU,GACV,SAAS,GACT,YAAY,GACZ,oBAAoB,GACpB,iBAAiB,CACnB,GAAG;IACH,KAAK,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAClC,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC;CACpC,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,gFAAgF;IAChF,MAAM,EAAE,oBAAoB,CAAC;IAC7B,8EAA8E;IAC9E,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,6BAA6B;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC;IAC/B,QAAQ,EAAE,2BAA2B,EAAE,CAAC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,wBAAwB,CAAC;CAC3C;AAMD,MAAM,WAAW,qBAAqB;IACrC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC7E,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC;IACpE,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClE,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,eAAe;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACnB;AAMD,MAAM,WAAW,YAAY;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,KAAK,CAAC;CACd;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAC;AAEpF,MAAM,MAAM,sBAAsB,GAC/B,eAAe,GACf,aAAa,GACb,cAAc,GACd,mBAAmB,GACnB,gBAAgB,GAChB,iBAAiB,GACjB,cAAc,GACd,iBAAiB,GACjB,cAAc,CAAC;AAElB,MAAM,WAAW,cAAc;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACpC,QAAQ,CAAC,EAAE,UAAU,GAAG,aAAa,CAAC;CACtC;AAED,MAAM,WAAW,uBAAuB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAChC,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,cAAc,CAAC,CAAC;IAC1C,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACpC,MAAM,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACnC,MAAM,CAAC,EAAE,oBAAoB,GAAG,KAAK,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,gHAAgH;AAChH,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,EAAE,MAAM,GAAG,UAAU,CAAC,GAAG,KAAK,GAAG,gBAAgB,CAAC;AAEvG,MAAM,WAAW,sBAAuB,SAAQ,cAAc;IAC7D,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,QAAQ,EAAE,UAAU,GAAG,aAAa,CAAC;CACrC;AAED,MAAM,WAAW,wBAAwB;IACxC,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IACxC,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,MAAM,EAAE,uBAAuB,EAAE,CAAC;IAClC,MAAM,CAAC,EAAE,oBAAoB,GAAG,KAAK,CAAC;IACtC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAChC,iBAAiB,CAAC,EAAE,KAAK,CAAC;QACzB,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,WAAW,GAAG,eAAe,GAAG,gBAAgB,CAAC;QACzD,QAAQ,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,KAAK,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;QACxC,OAAO,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IACH,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,4BAA4B,GAAG,QAAQ,GAAG,QAAQ,GAAG,gBAAgB,CAAC;AAElF,MAAM,WAAW,sBAAsB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,4BAA4B,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,iBAAiB,CAAC;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE;QAChB,IAAI,EAAE,aAAa,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACtC,MAAM,EAAE,iBAAiB,GAAG,UAAU,GAAG,UAAU,CAAC;IACpD,QAAQ,EAAE,KAAK,CAAC;QACf,QAAQ,EAAE,SAAS,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;CACH;AAED,MAAM,MAAM,wBAAwB,GACjC,SAAS,GACT,cAAc,GACd,SAAS,GACT,UAAU,GACV,SAAS,GACT,UAAU,GACV,UAAU,CAAC;AAEd,MAAM,MAAM,sBAAsB,GAAG,wBAAwB,GAAG,iBAAiB,GAAG,UAAU,GAAG,UAAU,CAAC;AAE5G,MAAM,WAAW,gBAAgB;IAChC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,cAAc,EAAE,wBAAwB,CAAC;IACzC,QAAQ,EAAE,OAAO,CAAC;IAClB,mBAAmB,EAAE,wBAAwB,CAAC;IAC9C,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,aAAa,EAAE,sBAAsB,EAAE,CAAC;IACxC,UAAU,EAAE,sBAAsB,EAAE,CAAC;IACrC,YAAY,CAAC,EAAE,sBAAsB,CAAC;IACtC,cAAc,CAAC,EAAE;QAChB,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC;QAChC,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACF;AAED,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,uBAAuB,CAAC;IAC9B,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,+BAA+B;IAC/C,OAAO,EAAE,CAAC,CAAC;IACX,uGAAuG;IACvG,MAAM,EAAE,iBAAiB,CAAC;IAC1B,wBAAwB,EAAE,OAAO,CAAC;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE;QACR,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;KAClB,CAAC;CACF;AAED,MAAM,WAAW,oCAAoC;IACpD,OAAO,EAAE,CAAC,CAAC;IACX,oFAAoF;IACpF,MAAM,EAAE,eAAe,CAAC;IACxB,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,iBAAiB;IACjC,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,OAAO,CAAC,EAAE,sBAAsB,CAAC;CACjC;AAED,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,eAAe,GAAG,eAAe,GAAG,eAAe,CAAC;CAC7D;AAED,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,CAAC,CAAC;IACX,mGAAmG;IACnG,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,OAAO,CAAC,EAAE,sBAAsB,CAAC;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC5B;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,SAAS,CAAC,EAAE,eAAe,EAAE,CAAC;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mGAAmG;IACnG,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4FAA4F;IAC5F,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;IAC3D,6BAA6B,CAAC,EAAE,oCAAoC,CAAC;IACrE,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC9B,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IACjC,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IACtD,eAAe,CAAC,EAAE,uBAAuB,CAAC;CAC1C;AAED,MAAM,WAAW,gBAAgB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,EAAE,gBAAgB,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,OAAO;IACvB,IAAI,EAAE,kBAAkB,GAAG,YAAY,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oFAAoF;IACpF,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IACrC,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,SAAS,CAAC,EAAE;QACX,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,aAAa,EAAE,CAAC;KACvB,CAAC;IACF,UAAU,CAAC,EAAE;QACZ,SAAS,EAAE,OAAO,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,YAAY,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IAEF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,OAAO,CAAC,EAAE,cAAc,CAAC;IAEzB,eAAe,CAAC,EAAE,KAAK,CAAC;IAExB,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IACtD,eAAe,CAAC,EAAE,uBAAuB,CAAC;IAC1C,eAAe,CAAC,EAAE,wBAAwB,CAAC;IAC3C,eAAe,CAAC,EAAE;QACjB,eAAe,CAAC,EAAE,iBAAiB,CAAC;KACpC,CAAC;IACF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;IAC3D,6BAA6B,CAAC,EAAE,oCAAoC,CAAC;IACrE,yEAAyE;IACzE,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,QAAQ,CAAC,EAAE;QACV,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,KAAK,EAAE,KAAK,CAAC;YACZ,SAAS,EAAE,KAAK,GAAG,QAAQ,CAAC;YAC5B,GAAG,EAAE,MAAM,CAAC;YACZ,KAAK,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;YACrD,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,KAAK,CAAC,EAAE,MAAM,CAAC;SACf,CAAC,CAAC;QACH,KAAK,EAAE,OAAO,EAAE,CAAC;QACjB,OAAO,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC3E,CAAC;IACF,YAAY,CAAC,EAAE;QACd,IAAI,EAAE,KAAK,GAAG,WAAW,CAAC;QAC1B,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC;QAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,QAAQ,CAAC,EAAE;QACV,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;QAC1B,aAAa,CAAC,EAAE,wBAAwB,EAAE,CAAC;QAC3C,QAAQ,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;IACF,wFAAwF;IACxF,SAAS,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;QACpB,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;KACjB,CAAC;CACF;AAMD,MAAM,WAAW,aAAa;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;AAEnE,MAAM,WAAW,cAAc;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,qBAAqB,CAAC;IAC5B,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACpB;AAMD,MAAM,WAAW,wBAAwB;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;AAC9G,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnE;AAED,MAAM,WAAW,iBAAiB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IACxG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,eAAe,CAAC,EAAE,iBAAiB,CAAC;IACpC,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;IAC3D,6BAA6B,CAAC,EAAE,oCAAoC,CAAC;IACrE,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IACtD,eAAe,CAAC,EAAE,uBAAuB,CAAC;IAC1C,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,eAAe,CAAC,EAAE,iBAAiB,CAAC;IACpC,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;IAC3D,6BAA6B,CAAC,EAAE,oCAAoC,CAAC;IACrE,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IACtD,eAAe,CAAC,EAAE,uBAAuB,CAAC;IAC1C,KAAK,EAAE,cAAc,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAC5C,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IACjC,wBAAwB,CAAC,EAAE,gCAAgC,CAAC;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oGAAoG;IACpG,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,uEAAuE;IACvE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAC5C,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;IAC3D,6BAA6B,CAAC,EAAE,oCAAoC,CAAC;IACrE,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IACtD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,iBAAiB,GAC1B;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,GACd;IACA,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,iBAAiB,CAAC;CACzB,CAAC;AAEL,MAAM,WAAW,uBAAuB;IACvC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,cAAc,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,YAAY,EAAE;QACb,IAAI,EAAE,IAAI,CAAC;QACX,KAAK,EAAE,KAAK,CAAC;QACb,MAAM,EAAE,KAAK,CAAC;QACd,gBAAgB,EAAE,KAAK,CAAC;QACxB,UAAU,EAAE,KAAK,CAAC;KAClB,CAAC;CACF;AAED,MAAM,WAAW,qBAAqB;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACnB;AAGD,MAAM,WAAW,WAAW;IAC3B,wBAAwB,CAAC,EAAE,gCAAgC,CAAC;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IACxF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAC5C,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,eAAe,CAAC,EAAE,iBAAiB,CAAC;IACpC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;IAC3D,6BAA6B,CAAC,EAAE,oCAAoC,CAAC;IACrE,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IACtD,eAAe,CAAC,EAAE,uBAAuB,CAAC;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,uBAAuB,CAAC;QACjC,eAAe,CAAC,EAAE,qBAAqB,CAAC;QACxC,mDAAmD;QACnD,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;QAC3B,4EAA4E;QAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,UAAU,CAAC,EAAE,oBAAoB,CAAC;QAClC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;QACxG,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC;QAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACnE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,UAAU,CAAC,EAAE,eAAe,CAAC;QAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,UAAU,CAAC,EAAE,eAAe,CAAC;QAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,MAAM,CAAC,EAAE,UAAU,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;QAC/B,SAAS,CAAC,EAAE,WAAW,CAAC;QACxB,QAAQ,CAAC,EAAE,cAAc,CAAC;QAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,0BAA0B,CAAC,EAAE,MAAM,CAAC;QACpC,UAAU,CAAC,EAAE,gBAAgB,CAAC;QAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;QAC3D,6BAA6B,CAAC,EAAE,oCAAoC,CAAC;QACrE,SAAS,CAAC,EAAE,mBAAmB,CAAC;QAChC,MAAM,CAAC,EAAE,gBAAgB,CAAC;QAC1B,OAAO,CAAC,EAAE,iBAAiB,CAAC;QAC5B,QAAQ,CAAC,EAAE,qBAAqB,CAAC;QACjC,eAAe,CAAC,EAAE,iBAAiB,CAAC;QACpC,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;QACtD,eAAe,CAAC,EAAE,uBAAuB,CAAC;KAC1C,CAAC,CAAC;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,eAAe,CAAC,EAAE,wBAAwB,CAAC;CAC3C;AAED,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IACzF,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAC5C,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,cAAc,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACpC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;IAC3D,6BAA6B,CAAC,EAAE,oCAAoC,CAAC;IACrE,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IACtD,eAAe,CAAC,EAAE,uBAAuB,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,eAAe,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,QAAQ,EAAE,qBAAqB,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,sBAAsB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,aAAa,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,eAAe,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,aAAa,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wFAAwF;IACxF,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACrD,2FAA2F;IAC3F,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,cAAc,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACtC,OAAO,EAAE,CAAC,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,GAAG,YAAY,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,mFAAmF;IACnF,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,sEAAsE;IACtE,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,yEAAyE;IACzE,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,iHAAiH;IACjH,eAAe,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE;QAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAChC,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAC;KAClC,CAAC;IACF,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACtC,mFAAmF;IACnF,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACvC,iFAAiF;IACjF,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAClD,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IACtD,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC;IAC1D,aAAa,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;IAC9B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,OAAO,EAAE,SAAS,GAAG,IAAI,CAAC;IAC1B,mBAAmB,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,IAAI,CAAC;IAC1D,mBAAmB,EAAE;QACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAClD,KAAK,IAAI,IAAI,CAAC;KACd,CAAC;IACF,+DAA+D;IAC/D,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACxD,6FAA6F;IAC7F,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CACnD;AAMD,MAAM,MAAM,WAAW,GACpB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC;AAMjE,MAAM,WAAW,SAAS;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAChC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAClE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;CAC3C;AAED,eAAO,MAAM,6BAA6B,+BAA+B,CAAC;AAC1E,eAAO,MAAM,8BAA8B,gCAAgC,CAAC;AAC5E,eAAO,MAAM,4BAA4B,2BAA2B,CAAC;AACrE,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,+BAA+B,8BAA8B,CAAC;AAC3E,eAAO,MAAM,kCAAkC,iCAAiC,CAAC;AACjF,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAC/D,eAAO,MAAM,+BAA+B,8BAA8B,CAAC;AAC3E,eAAO,MAAM,8BAA8B,6BAA6B,CAAC;AACzE,eAAO,MAAM,8BAA8B,6BAA6B,CAAC;AACzE,eAAO,MAAM,uCAAuC,sCAAsC,CAAC;AAM3F,MAAM,WAAW,cAAc;IAC9B,oEAAoE;IACpE,WAAW,CAAC,EAAE,OAAO,+BAA+B,EAAE,gBAAgB,CAAC;IACvE,oFAAoF;IACpF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,eAAe,CAAC,EAAE,WAAW,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,mEAAmE;IACnE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,cAAc,CAAC,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,yBAAyB,EAAE,eAAe,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACnF,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC/C,2EAA2E;IAC3E,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,KAAK,IAAI,CAAC;IAC/D,iGAAiG;IACjG,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC;IACpD,yFAAyF;IACzF,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IAChD,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IACtD,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,gBAAgB,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC3C,oEAAoE;IACpE,eAAe,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1E,6EAA6E;IAC7E,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wEAAwE;IACxE,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,gBAAgB,CAAC,EAAE;QAClB,MAAM,EAAE,gBAAgB,CAAC;QACzB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,iBAAiB,CAAC,EAAE;QACnB,IAAI,CAAC,EAAE,eAAe,CAAC;QACvB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,YAAY,CAAC,EAAE,OAAO,CAAC;KACvB,CAAC;CACF;AAED,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEhE,MAAM,WAAW,oBAAoB;IACpC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8FAA8F;IAC9F,cAAc,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,UAAU,sBAAsB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,oBAAoB;IAC7B,aAAa,CAAC,EAAE;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACF;AAED,MAAM,WAAW,6BAA6B;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;AAChE,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEnD,MAAM,WAAW,mBAAmB;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,aAAa,CAAC;AAE/D,MAAM,WAAW,eAAe;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oEAAoE;IACpE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yFAAyF;IACzF,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,sGAAsG;IACtG,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iGAAiG;IACjG,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mEAAmE;IACnE,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,+FAA+F;IAC/F,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,wEAAwE;IACxE,WAAW,CAAC,EAAE,OAAO,+BAA+B,EAAE,gBAAgB,CAAC;IACvE,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qJAAqJ;IACrJ,WAAW,CAAC,EAAE,qBAAqB,CAAC;IACpC,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,uBAAuB,CAAC,EAAE,6BAA6B,GAAG,KAAK,CAAC;IAChE,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,yJAAyJ;IACzJ,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,0EAA0E;IAC1E,eAAe,CAAC,EAAE,qBAAqB,CAAC;CACxC;AAMD,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,eAAe,CAGxD,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,cASrC,CAAC;AAUF,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE;IAC5C,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,MAAM,CAAC,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,EAAE,CAAC,MAAM;QAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;IAC5D,OAAO,CAAC,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,SAAS,CAAC;CACrC,GAAG,MAAM,CAgCT;AAGD,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,aAAa,QAAiE,CAAC;AAC5F,eAAO,MAAM,WAAW,QAAqD,CAAC;AAC9E,eAAO,MAAM,SAAS,QAAkD,CAAC;AACzE,eAAO,MAAM,cAAc,QAAyC,CAAC;AACrE,eAAO,MAAM,kBAAkB,QAAwC,CAAC;AAExE,eAAO,MAAM,IAAI;;;;;CAKhB,CAAC;AACF,eAAO,MAAM,UAAU,mBAAmB,CAAC;AAC3C,eAAO,MAAM,iBAAiB,0BAA0B,CAAC;AACzD,eAAO,MAAM,sBAAsB,+BAA+B,CAAC;AACnE,eAAO,MAAM,4BAA4B,2BAA2B,CAAC;AACrE,eAAO,MAAM,4BAA4B,2BAA2B,CAAC;AACrE,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AACnE,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AACnE,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAC5C,eAAO,MAAM,gBAAgB,yxBAmDnB,CAAC;AAEX,eAAO,MAAM,qBAAqB,QAIuE,CAAC;AAQ1G,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEtE;AAED,wBAAgB,kCAAkC,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM,CAElG;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,CAM5E;AAYD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE5E;AAED,wBAAgB,8BAA8B,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAM9E;AAED,wBAAgB,4BAA4B,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAInG;AAED,wBAAgB,kBAAkB,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAKjH;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAO7E;AAED,wBAAgB,oCAAoC,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAEvF;AAED,wBAAgB,kCAAkC,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAK/F;AAYD,wBAAgB,cAAc,CAC7B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,QAAQ,CAAC,eAAe,CAAC,EACjC,YAAY,CAAC,EAAE,MAAM,GACnB,gBAAgB,CAsClB","sourcesContent":["/**\n * Type definitions for the subagent extension\n */\n\nimport type { FSWatcher } from \"node:fs\";\nimport * as os from \"node:os\";\nimport * as path from \"node:path\";\nimport type { Message } from \"@lpb-work/pi-ai\";\nimport type { ExtensionContext } from \"@lpb-work/pi-coding-agent\";\nimport type { AgentConfig } from \"../agents/agents.ts\";\nimport type { GlobalMissionIndexRecord, MissionRecord, MissionStoreConfig } from \"../missions/types.ts\";\nimport type { AuthorityPolicyConfig } from \"../policy/authority.ts\";\nimport type { ResolvedSubagentCapabilityCeiling, SubagentCapabilityAudit } from \"../runs/shared/capability-ceiling.ts\";\nimport type { ModelScopeConfig } from \"../runs/shared/model-scope.ts\";\n\n// ============================================================================\n// Basic Types\n// ============================================================================\n\nexport interface MaxOutputConfig {\n\tbytes?: number;\n\tlines?: number;\n}\n\nexport type OutputMode = \"inline\" | \"file-only\";\n\nexport type AcceptanceRole = \"read-only\" | \"writer\";\n\nexport type JsonSchemaObject = Record<string, unknown>;\n\nexport interface ChainOutputMapEntry {\n\ttext: string;\n\tstructured?: unknown;\n\tagent: string;\n\tstepIndex: number;\n}\n\nexport type ChainOutputMap = Record<string, ChainOutputMapEntry>;\n\nexport type WorkflowNodeStatus =\n\t| \"pending\"\n\t| \"running\"\n\t| \"completed\"\n\t| \"failed\"\n\t| \"paused\"\n\t| \"stopped\"\n\t| \"detached\"\n\t| \"rejected\";\n\nexport interface WorkflowGraphNode {\n\tid: string;\n\tkind: \"step\" | \"parallel-group\" | \"dynamic-parallel-group\" | \"agent\" | \"checkpoint\";\n\tagent?: string;\n\tphase?: string;\n\tlabel: string;\n\tstatus: WorkflowNodeStatus;\n\tflatIndex?: number;\n\tstepIndex?: number;\n\tchildren?: WorkflowGraphNode[];\n\tdynamic?: {\n\t\tsourceOutput: string;\n\t\tsourcePath: string;\n\t\titemName: string;\n\t\tmaxItems?: number;\n\t\tcollectAs?: string;\n\t};\n\titemKey?: string;\n\toutputName?: string;\n\tstructured?: boolean;\n\tacceptanceStatus?: AcceptanceLedgerStatus;\n\terror?: string;\n\tcheckpoint?: ChainCheckpointState;\n}\n\nexport interface ChainCheckpointState {\n\tname: string;\n\tmessage?: string;\n\tstatus: \"pending\" | \"approved\" | \"rejected\";\n\tstepIndex: number;\n\tapprovedAt?: number;\n\trejectedAt?: number;\n}\n\nexport interface WorkflowGraphSnapshot {\n\trunId: string;\n\tmode: SubagentRunMode;\n\tphases: Array<{ title: string; nodeIds: string[] }>;\n\tnodes: WorkflowGraphNode[];\n\tcurrentNodeId?: string;\n}\n\nexport interface SavedOutputReference {\n\tpath: string;\n\tbytes: number;\n\tlines: number;\n\tmessage: string;\n}\n\ninterface TruncationResult {\n\ttext: string;\n\ttruncated: boolean;\n\toriginalBytes?: number;\n\toriginalLines?: number;\n\tartifactPath?: string;\n}\n\nexport interface Usage {\n\tinput: number;\n\toutput: number;\n\tcacheRead: number;\n\tcacheWrite: number;\n\tcost: number;\n\tturns: number;\n}\n\nexport interface TurnBudgetConfig {\n\tmaxTurns: number;\n\tgraceTurns?: number;\n}\n\nexport interface ResolvedTurnBudget {\n\tmaxTurns: number;\n\tgraceTurns: number;\n}\n\nexport interface ToolBudgetConfig {\n\tsoft?: number;\n\thard: number;\n\tblock?: string[] | \"*\";\n}\n\nexport interface ResolvedToolBudget {\n\tsoft?: number;\n\thard: number;\n\tblock: string[] | \"*\";\n}\n\nexport type ToolBudgetOutcome = \"within-budget\" | \"soft-reached\" | \"hard-blocked\";\n\nexport interface ToolBudgetState extends ResolvedToolBudget {\n\toutcome: ToolBudgetOutcome;\n\ttoolCount: number;\n\tsoftReachedAt?: number;\n\thardReachedAt?: number;\n\tblockedTool?: string;\n}\n\nexport type TurnBudgetOutcome = \"within-budget\" | \"wrap-up-requested\" | \"termination-deferred\" | \"exceeded\";\n\nexport interface TurnBudgetState extends ResolvedTurnBudget {\n\toutcome: TurnBudgetOutcome;\n\tturnCount: number;\n\twrapUpRequestedAtTurn?: number;\n\tterminationDeferredAtTurn?: number;\n\texceededAtTurn?: number;\n}\n\nexport interface TokenUsage {\n\tinput: number;\n\toutput: number;\n\ttotal: number;\n}\n\nexport type ActivityState = \"active_long_running\" | \"needs_attention\";\nexport type ControlEventType = \"active_long_running\" | \"needs_attention\";\nexport type ControlNotificationChannel = \"event\" | \"async\" | \"intercom\";\n\nexport interface ControlConfig {\n\tenabled?: boolean;\n\tneedsAttentionAfterMs?: number;\n\tactiveNoticeAfterMs?: number;\n\tactiveNoticeAfterTurns?: number;\n\tactiveNoticeAfterTokens?: number;\n\tfailedToolAttemptsBeforeAttention?: number;\n\tnotifyOn?: ControlEventType[];\n\tnotifyChannels?: ControlNotificationChannel[];\n}\n\nexport interface ResolvedControlConfig {\n\tenabled: boolean;\n\tneedsAttentionAfterMs: number;\n\tactiveNoticeAfterMs: number;\n\tactiveNoticeAfterTurns?: number;\n\tactiveNoticeAfterTokens?: number;\n\tfailedToolAttemptsBeforeAttention: number;\n\tnotifyOn: ControlEventType[];\n\tnotifyChannels: ControlNotificationChannel[];\n}\n\n/**\n * Smart completion batching for async-completion notifications. Successful\n * sibling completions are held briefly so they arrive as one grouped message;\n * failure and attention signals bypass grouping and always fire immediately.\n */\nexport interface CompletionBatchConfig {\n\tenabled?: boolean;\n\t/** Idle window after each arrival; resets on every new item. */\n\tdebounceMs?: number;\n\t/** Hard cap measured from the first item in a group. */\n\tmaxWaitMs?: number;\n\t/** Shorter idle window for straggler groups. */\n\tstragglerDebounceMs?: number;\n\t/** Shorter hard cap for straggler groups. */\n\tstragglerMaxWaitMs?: number;\n\t/** Arrivals within this window after an emit join a straggler group. */\n\tstragglerWindowMs?: number;\n}\n\nexport interface WaitToolConfigObject {\n\tenabled?: boolean;\n}\n\nexport type WaitToolConfig = boolean | WaitToolConfigObject;\n\nexport interface ControlEvent {\n\ttype: ControlEventType;\n\tfrom?: ActivityState;\n\tto: ActivityState;\n\tts: number;\n\tagent: string;\n\tindex?: number;\n\trunId: string;\n\tnestedRunId?: string;\n\tnestingPath?: NestedRunAddress[\"path\"];\n\tmessage: string;\n\treason?:\n\t\t| \"idle\"\n\t\t| \"completion_guard\"\n\t\t| \"active_long_running\"\n\t\t| \"tool_failures\"\n\t\t| \"supervisor_request\"\n\t\t| \"time_threshold\"\n\t\t| \"turn_threshold\"\n\t\t| \"token_threshold\";\n\tturns?: number;\n\ttokens?: number;\n\ttoolCount?: number;\n\tcurrentTool?: string;\n\tcurrentToolDurationMs?: number;\n\tcurrentPath?: string;\n\telapsedMs?: number;\n\trecentFailureSummary?: string;\n}\n\nexport type SubagentResultStatus = \"completed\" | \"failed\" | \"paused\" | \"stopped\" | \"detached\";\nexport type SubagentOutputState = \"present\" | \"absent\" | \"unknown\";\nexport type SubagentRunMode = \"single\" | \"parallel\" | \"chain\" | \"workflow\";\nexport type SubagentResultMode = SubagentRunMode;\n\nexport interface ParallelHandoffPatch {\n\tpath: string;\n\tbranch: string;\n\tchanged: boolean;\n\tdiffStat: string;\n\tfilesChanged: number;\n\tinsertions: number;\n\tdeletions: number;\n\terror?: string;\n}\n\nexport interface ParallelHandoffChild {\n\tindex: number;\n\ttaskIndex: number;\n\tagent: string;\n\tstatus: SubagentResultStatus;\n\tsummary: string;\n\toutputPath?: string;\n\tstructuredOutput?: unknown;\n\tstructuredOutputPath?: string;\n\tsessionPath?: string;\n\tpatch: ParallelHandoffPatch;\n}\n\nexport interface ParallelHandoffCleanupTask {\n\tindex: number;\n\tpath: string;\n\tbranch: string;\n\tworktreeRemoved: boolean;\n\tbranchRemoved: boolean;\n\tpreserved?: boolean;\n\treason?: string;\n\terrors?: string[];\n}\n\nexport interface ParallelHandoffGroup {\n\tstepIndex: number;\n\tbaseCommit: string;\n\trepoRoot: string;\n\tchildren: ParallelHandoffChild[];\n\tcleanup: {\n\t\tstate: \"complete\" | \"partial\";\n\t\ttasks: ParallelHandoffCleanupTask[];\n\t\tpruned: boolean;\n\t\terrors?: string[];\n\t};\n}\n\nexport interface ParallelHandoffManifest {\n\tversion: 1;\n\trunId: string;\n\tmode: \"parallel\" | \"chain\";\n\tsource: \"foreground\" | \"async\";\n\tcwd: string;\n\tcreatedAt: number;\n\tupdatedAt: number;\n\tgroups: ParallelHandoffGroup[];\n}\n\nexport interface ParallelHandoffReference {\n\tversion: 1;\n\tpath: string;\n\tgroupCount: number;\n\tchildCount: number;\n\tchangedPatches: number;\n\tcleanupState: \"complete\" | \"partial\";\n}\n\nexport interface AgentContract {\n\tversion: 1;\n}\n\nexport type ChainGateLayer = \"execution\" | \"acceptance\";\n\nexport type ExecutionProjectionStatus = \"completed\" | \"failed\" | \"paused\" | \"stopped\" | \"detached\";\n\nexport interface ExecutionProjection {\n\tstatus: ExecutionProjectionStatus;\n\tsuccess: boolean;\n\texitCode: number;\n\terror?: string;\n\tinterrupted?: boolean;\n\ttimedOut?: boolean;\n\tstopped?: boolean;\n\tdetached?: boolean;\n}\n\nexport interface ReviewProjection {\n\tstatus: \"not-requested\" | \"review-required\" | \"reviewed\" | \"blockers\";\n\tfindings?: AcceptanceReviewResult[\"findings\"];\n}\n\nexport interface FileMutationEffect {\n\tstatus: \"not-requested\" | \"not-applicable\" | \"observed\" | \"missing\";\n\texpected: boolean;\n\tattempted: boolean;\n\tmessage?: string;\n}\n\nexport interface EffectsProjection {\n\tfileMutation?: FileMutationEffect;\n}\n\nexport const SUBAGENT_LIFECYCLE_ARTIFACT_VERSION = 3;\nexport type SubagentLifecycleArtifactVersion = typeof SUBAGENT_LIFECYCLE_ARTIFACT_VERSION;\n\nexport type ProcessTerminalState = \"pending\" | \"observed\" | \"unknown\" | \"not-started\";\nexport type ProcessTerminalReason =\n\t| \"observer-unavailable\"\n\t| \"runner-candidate-missing\"\n\t| \"runner-instance-mismatch\"\n\t| \"writer-close-unverified\"\n\t| \"canonical-session-unavailable\"\n\t| \"canonical-session-lease-active\"\n\t| \"canonical-session-release-unverified\"\n\t| \"proof-write-failed\"\n\t| \"stale-repair\";\n\nexport interface RunnerProcessInstanceExitV1 {\n\tprocessInstanceId: string;\n\tkind: \"runner\";\n\tcloseObservedAt: number;\n\texitCode: number | null;\n\tsignal: string | null;\n}\n\nexport interface PiWriterProcessInstanceExitV1 {\n\tprocessInstanceId: string;\n\tkind: \"pi-writer\";\n\tattempt: number;\n\tcloseObservedAt: number;\n\texitCode: number | null;\n\tsignal: string | null;\n}\n\nexport type ProcessInstanceExitV1 = RunnerProcessInstanceExitV1 | PiWriterProcessInstanceExitV1;\n\nexport interface CanonicalSessionTerminalV1 {\n\tcanonicalSessionId: string;\n\tleaseDisposition: \"released\" | \"not-held\";\n\tfreeAtObservation: true;\n\tcanonicalSessionLeaseReleased?: true;\n}\n\ninterface ProcessTerminalBaseV1 {\n\tversion: 1;\n\trunId: string;\n\tchildIndex?: number;\n\trunnerProcessInstanceId: string;\n\tobservedAt?: number;\n\treason?: ProcessTerminalReason;\n\tresumeDisposition?: \"resumable\" | \"non-resumable\" | \"unavailable\";\n}\n\nexport type ProcessTerminalV1 =\n\t| (ProcessTerminalBaseV1 & { state: \"pending\" | \"not-started\" })\n\t| (ProcessTerminalBaseV1 & {\n\t\t\tstate: \"observed\";\n\t\t\tobservedAt: number;\n\t\t\tinstances: ProcessInstanceExitV1[];\n\t\t\tcanonicalSession?: CanonicalSessionTerminalV1;\n\t  })\n\t| (ProcessTerminalBaseV1 & {\n\t\t\tstate: \"unknown\";\n\t\t\treason: ProcessTerminalReason;\n\t\t\tdiagnostic?: string;\n\t  });\n\nexport type SteeringActionState = \"delivered\" | \"scheduled\" | \"pending\" | \"partial\" | \"recovered\" | \"failed\";\nexport type SteeringTargetState =\n\t| \"scheduled\"\n\t| \"pending\"\n\t| \"routed\"\n\t| \"queued\"\n\t| \"delivered\"\n\t| \"late\"\n\t| \"failed\"\n\t| \"recovered\";\n\nexport interface SteeringTargetStatus {\n\tindex: number;\n\tstate: SteeringTargetState;\n\troutedAt?: number;\n\tdeliveredAt?: number;\n\tlateDeliveredAt?: number;\n\tfailedAt?: number;\n\trecoveredAt?: number;\n\treason?: string;\n\treplacementRunId?: string;\n}\n\nexport interface SteeringRequestStatus {\n\tid: string;\n\trequestedAt: number;\n\tsource?: string;\n\tmessagePreview: string;\n\ttargets: SteeringTargetStatus[];\n}\n\nexport interface SteeringStatus {\n\trequested: number;\n\tscheduled: number;\n\tpending: number;\n\tdelivered: number;\n\tfailed: number;\n\trecovered: number;\n\tlastRequestedAt?: number;\n\tlastDeliveredAt?: number;\n\trecent: SteeringRequestStatus[];\n}\n\nexport interface SteerActionTarget {\n\tindex: number;\n\tstate: SteeringTargetState;\n\tdeliveredAt?: number;\n\tlateDeliveredAt?: number;\n\treason?: string;\n\treplacementRunId?: string;\n}\n\nexport interface SteerActionResult {\n\trequestId: string;\n\tstate: SteeringActionState;\n\tdeliveryStatus: \"delivered\" | \"queued\";\n\tsourceRunId: string;\n\treplacementRunId?: string;\n\ttargets: SteerActionTarget[];\n}\n\nexport interface SteeringNotice {\n\ttype: \"subagent.steering.notice\";\n\tts: number;\n\trunId: string;\n\trequestId: string;\n\tstate: \"failed\" | \"partial\" | \"recovered\";\n\tmessage: string;\n\tcurrentSessionId?: string;\n}\n\nexport interface SteeringRecoveryDescriptor {\n\tversion: 1;\n\tlaunchContractDigest?: string;\n\tsourceRunId: string;\n\tagentContract?: AgentContract;\n\tagent: string;\n\tsessionFile?: string;\n\tcwd: string;\n\tmodel?: string;\n\tfallbackModels?: string[];\n\tthinking?: string;\n\ttools?: string[];\n\textensions?: string[];\n\tsubagentOnlyExtensions?: string[];\n\tmcpDirectTools?: string[];\n\tsystemPrompt?: string;\n\tsystemPromptMode: \"append\" | \"replace\";\n\tinheritProjectContext: boolean;\n\tinheritSkills: boolean;\n\tskills?: string[];\n\tskillPath?: string[];\n\tagentFilePath?: string;\n\tcompletionGuard?: boolean;\n\tmemory?: { scope: \"project\" | \"user\"; path: string };\n\toutputPath?: string;\n\toutputMode: \"inline\" | \"file-only\";\n\tstructuredOutputSchema?: JsonSchemaObject;\n\tacceptance?: AcceptanceInput;\n\tcontrolConfig?: ResolvedControlConfig;\n\tabsoluteDeadlineAt?: number;\n\tinitialTurnBudget?: ResolvedTurnBudget;\n\tinitialToolBudget?: ResolvedToolBudget;\n\tmaxSubagentDepth: number;\n\tmaxOutput?: MaxOutputConfig;\n\tcapabilityCeiling?: ResolvedSubagentCapabilityCeiling;\n\tlaunchResolvedExtensions?: LaunchResolvedChildExtensionsV1;\n\tshare: boolean;\n\tsessionDir?: string;\n\tartifactsDir?: string;\n\tartifactConfig?: ArtifactConfig;\n}\n\nexport type PublicNestedStepSummary = Pick<\n\tNestedStepSummary,\n\t| \"agent\"\n\t| \"status\"\n\t| \"model\"\n\t| \"thinking\"\n\t| \"sessionFile\"\n\t| \"transcriptPath\"\n\t| \"transcriptError\"\n\t| \"activityState\"\n\t| \"lastActivityAt\"\n\t| \"currentTool\"\n\t| \"currentToolStartedAt\"\n\t| \"currentPath\"\n\t| \"turnCount\"\n\t| \"toolCount\"\n\t| \"toolBudget\"\n\t| \"toolBudgetBlocked\"\n\t| \"startedAt\"\n\t| \"endedAt\"\n\t| \"error\"\n\t| \"timedOut\"\n\t| \"stopped\"\n> & {\n\tchildren?: PublicNestedRunSummary[];\n};\n\nexport type CostSummary = {\n\tinputTokens: number;\n\toutputTokens: number;\n\tcostUsd: number;\n};\n\nexport type PublicNestedRunSummary = Pick<\n\tNestedRunSummary,\n\t| \"id\"\n\t| \"parentRunId\"\n\t| \"parentStepIndex\"\n\t| \"parentAgent\"\n\t| \"depth\"\n\t| \"path\"\n\t| \"asyncDir\"\n\t| \"sessionId\"\n\t| \"sessionFile\"\n\t| \"intercomTarget\"\n\t| \"ownerIntercomTarget\"\n\t| \"leafIntercomTarget\"\n\t| \"ownerState\"\n\t| \"mode\"\n\t| \"state\"\n\t| \"agent\"\n\t| \"agents\"\n\t| \"model\"\n\t| \"thinking\"\n\t| \"currentStep\"\n\t| \"chainStepCount\"\n\t| \"parallelGroups\"\n\t| \"activityState\"\n\t| \"lastActivityAt\"\n\t| \"currentTool\"\n\t| \"currentToolStartedAt\"\n\t| \"currentPath\"\n\t| \"turnCount\"\n\t| \"toolCount\"\n\t| \"toolBudget\"\n\t| \"toolBudgetBlocked\"\n\t| \"totalTokens\"\n\t| \"totalCost\"\n\t| \"startedAt\"\n\t| \"endedAt\"\n\t| \"lastUpdate\"\n\t| \"error\"\n\t| \"timeoutMs\"\n\t| \"deadlineAt\"\n\t| \"timedOut\"\n\t| \"stopped\"\n\t| \"turnBudget\"\n\t| \"turnBudgetExceeded\"\n\t| \"wrapUpRequested\"\n> & {\n\tsteps?: PublicNestedStepSummary[];\n\tchildren?: PublicNestedRunSummary[];\n};\n\nexport interface SubagentResultIntercomChild {\n\tagent: string;\n\t/** Process/lifecycle status. It does not establish semantic task completion. */\n\tstatus: SubagentResultStatus;\n\t/** Whether the child produced substantive output before its process ended. */\n\toutputState?: SubagentOutputState;\n\tsummary: string;\n\tindex?: number;\n\tartifactPath?: string;\n\tsessionPath?: string;\n\tintercomTarget?: string;\n\tchildren?: PublicNestedRunSummary[];\n}\n\nexport interface SubagentResultIntercomPayload {\n\tto: string;\n\tmessage: string;\n\trequestId?: string;\n\trunId: string;\n\tmode: SubagentRunMode;\n\tstatus: SubagentResultStatus;\n\tsummary: string;\n\tsource: \"foreground\" | \"async\";\n\tchildren: SubagentResultIntercomChild[];\n\tasyncId?: string;\n\tasyncDir?: string;\n\tchainSteps?: number;\n\tagent?: string;\n\tindex?: number;\n\tartifactPath?: string;\n\tsessionPath?: string;\n\tparallelHandoff?: ParallelHandoffReference;\n}\n\n// ============================================================================\n// Progress Tracking\n// ============================================================================\n\nexport interface ChildWatchdogProgress {\n\tphase: \"idle\" | \"reviewing\" | \"autofollow\" | \"settling\" | \"stale\" | \"failed\";\n\tseq: number;\n\tlastUpdate: number;\n\tfollowUpPending: boolean;\n\treason?: string;\n\ttimedOut?: boolean;\n}\n\nexport interface AgentProgress {\n\tindex: number;\n\tagent: string;\n\tstatus: \"pending\" | \"running\" | \"completed\" | \"failed\" | \"detached\";\n\tactivityState?: ActivityState;\n\ttask: string;\n\tskills?: string[];\n\tlastActivityAt?: number;\n\tcurrentTool?: string;\n\tcurrentToolArgs?: string;\n\tcurrentToolStartedAt?: number;\n\tcurrentPath?: string;\n\trecentTools: Array<{ tool: string; args: string; endMs: number }>;\n\trecentOutput: string[];\n\ttoolCount: number;\n\tturnCount?: number;\n\ttokens: number;\n\t/** Resolved launch model/effort and split usage for public live projections. */\n\tmodel?: string;\n\tthinking?: string;\n\tinputTokens?: number;\n\toutputTokens?: number;\n\tdurationMs: number;\n\terror?: string;\n\tfailedTool?: string;\n\twatchdog?: ChildWatchdogProgress;\n}\n\nexport interface ToolCallSummary {\n\ttext: string;\n\texpandedText: string;\n}\n\ninterface ProgressSummary {\n\tindex?: number;\n\tagent?: string;\n\tstatus?: AgentProgress[\"status\"];\n\tactivityState?: ActivityState;\n\tskills?: string[];\n\tlastActivityAt?: number;\n\tcurrentTool?: string;\n\tcurrentToolArgs?: string;\n\tcurrentToolStartedAt?: number;\n\trecentTools?: Array<{ tool: string; args: string; endMs: number }>;\n\trecentOutput?: string[];\n\ttoolCount: number;\n\ttokens: number;\n\tmodel?: string;\n\tthinking?: string;\n\tdurationMs: number;\n}\n\n// ============================================================================\n// Results\n// ============================================================================\n\nexport interface ModelAttempt {\n\tmodel: string;\n\tsuccess: boolean;\n\texitCode?: number | null;\n\terror?: string;\n\tusage?: Usage;\n}\n\nexport type AcceptanceLevel = \"auto\" | \"none\" | \"attested\" | \"checked\" | \"verified\";\n\nexport type AcceptanceEvidenceKind =\n\t| \"changed-files\"\n\t| \"tests-added\"\n\t| \"commands-run\"\n\t| \"validation-output\"\n\t| \"residual-risks\"\n\t| \"no-staged-files\"\n\t| \"diff-summary\"\n\t| \"review-findings\"\n\t| \"manual-notes\";\n\nexport interface AcceptanceGate {\n\tid: string;\n\tmust: string;\n\tevidence?: AcceptanceEvidenceKind[];\n\tseverity?: \"required\" | \"recommended\";\n}\n\nexport interface AcceptanceVerifyCommand {\n\tid: string;\n\tcommand: string;\n\ttimeoutMs?: number;\n\tcwd?: string;\n\tenv?: Record<string, string>;\n\tallowFailure?: boolean;\n}\n\nexport interface AcceptanceReviewGate {\n\tagent?: string;\n\tfocus?: string;\n\trequired?: boolean;\n}\n\nexport interface AcceptanceConfig {\n\tlevel?: AcceptanceLevel;\n\tcriteria?: Array<string | AcceptanceGate>;\n\tevidence?: AcceptanceEvidenceKind[];\n\tverify?: AcceptanceVerifyCommand[];\n\treview?: AcceptanceReviewGate | false;\n\tstopRules?: string[];\n\treason?: string;\n}\n\n/** Bare \"none\" and \"verified\" are not accepted; verified policies require object form with runtime commands. */\nexport type AcceptanceInput = Exclude<AcceptanceLevel, \"none\" | \"verified\"> | false | AcceptanceConfig;\n\nexport interface ResolvedAcceptanceGate extends AcceptanceGate {\n\tid: string;\n\tmust: string;\n\tevidence: AcceptanceEvidenceKind[];\n\tseverity: \"required\" | \"recommended\";\n}\n\nexport interface ResolvedAcceptanceConfig {\n\tlevel: Exclude<AcceptanceLevel, \"auto\">;\n\texplicit: boolean;\n\tinferredReason: string[];\n\tcriteria: ResolvedAcceptanceGate[];\n\tevidence: AcceptanceEvidenceKind[];\n\tverify: AcceptanceVerifyCommand[];\n\treview?: AcceptanceReviewGate | false;\n\tstopRules: string[];\n\treason?: string;\n}\n\nexport interface AcceptanceReport {\n\tcriteriaSatisfied?: Array<{\n\t\tid?: string;\n\t\tstatus: \"satisfied\" | \"not-satisfied\" | \"not-applicable\";\n\t\tevidence: string;\n\t}>;\n\tchangedFiles?: string[];\n\ttestsAddedOrUpdated?: string[];\n\tcommandsRun?: Array<{\n\t\tcommand: string;\n\t\tresult: \"passed\" | \"failed\" | \"not-run\";\n\t\tsummary: string;\n\t}>;\n\tvalidationOutput?: string[];\n\tresidualRisks?: string[];\n\tnoStagedFiles?: boolean;\n\tdiffSummary?: string;\n\treviewFindings?: string[];\n\tmanualNotes?: string;\n\tnotes?: string;\n}\n\nexport type AcceptanceRuntimeCheckStatus = \"passed\" | \"failed\" | \"not-applicable\";\n\nexport interface AcceptanceRuntimeCheck {\n\tid: string;\n\tstatus: AcceptanceRuntimeCheckStatus;\n\tmessage: string;\n}\n\nexport interface AcceptanceVerifyResult {\n\tid: string;\n\tcommand: string;\n\tcwd?: string;\n\texitCode: number | null;\n\tstatus: \"passed\" | \"failed\" | \"timed-out\" | \"allowed-failure\";\n\tstdout?: string;\n\tstderr?: string;\n\tdurationMs: number;\n\tartifactPath?: string;\n\tcacheKey?: string;\n\tmemoized?: boolean;\n\tenvKeys?: string[];\n\tenvHash?: string;\n\tworkspaceState?: {\n\t\tkind: \"git-tracked\";\n\t\trepoRoot: string;\n\t\tcwdRelative: string;\n\t\thead: string;\n\t\tdiffHash: string;\n\t};\n\tartifactError?: string;\n}\n\nexport interface AcceptanceReviewResult {\n\tstatus: \"review-required\" | \"reviewed\" | \"blockers\";\n\tfindings: Array<{\n\t\tseverity: \"blocker\" | \"non-blocking\";\n\t\tfile?: string;\n\t\tissue: string;\n\t\trationale: string;\n\t}>;\n}\n\nexport type AcceptanceEvidenceStatus =\n\t| \"pending\"\n\t| \"not-required\"\n\t| \"claimed\"\n\t| \"attested\"\n\t| \"checked\"\n\t| \"verified\"\n\t| \"rejected\";\n\nexport type AcceptanceLedgerStatus = AcceptanceEvidenceStatus | \"review-required\" | \"reviewed\" | \"accepted\";\n\nexport interface AcceptanceLedger {\n\tstatus: AcceptanceLedgerStatus;\n\tevidenceStatus: AcceptanceEvidenceStatus;\n\texplicit: boolean;\n\teffectiveAcceptance: ResolvedAcceptanceConfig;\n\tinferredReason: string[];\n\tcriteria: ResolvedAcceptanceGate[];\n\tchildReport?: AcceptanceReport;\n\tchildReportParseError?: string;\n\truntimeChecks: AcceptanceRuntimeCheck[];\n\tverifyRuns: AcceptanceVerifyResult[];\n\treviewResult?: AcceptanceReviewResult;\n\tparentDecision?: {\n\t\tstatus: \"accepted\" | \"rejected\";\n\t\tat: string;\n\t\treason?: string;\n\t};\n}\n\nexport interface ProtocolOutputLimit {\n\tcode: \"protocol_output_limit\";\n\tstream: \"stdout\" | \"stderr\";\n\tlimitBytes: number;\n\tobservedBytes: number;\n\tdiagnosticPrefix: string;\n\tdiagnosticTail: string;\n}\n\nexport interface LaunchResolvedChildExtensionsV1 {\n\tversion: 1;\n\t/** This is parent-resolved launch intent, not child-runtime acknowledgement that extensions loaded. */\n\tsource: \"launch-resolved\";\n\tdisableAmbientExtensions: boolean;\n\truntime: string[];\n\tconfigured: string[];\n\teffective: string[];\n\tomitted: {\n\t\truntime: number;\n\t\tconfigured: number;\n\t\teffective: number;\n\t};\n}\n\nexport interface RuntimeAcknowledgedChildExtensionsV1 {\n\tversion: 1;\n\t/** Best-effort child-runtime registration acknowledgement, not extension health. */\n\tsource: \"child-runtime\";\n\tids: string[];\n\tomitted: number;\n}\n\nexport interface UsageBudgetLimitConfig {\n\tsoft?: number;\n\thard: number;\n}\n\nexport interface UsageBudgetConfig {\n\ttokens?: UsageBudgetLimitConfig;\n\tcostUsd?: UsageBudgetLimitConfig;\n}\n\nexport interface UsageBudgetMetricState extends UsageBudgetLimitConfig {\n\tused: number;\n\toutcome: \"within-budget\" | \"soft-exceeded\" | \"hard-exceeded\";\n}\n\nexport interface UsageBudgetState {\n\tversion: 1;\n\t/** Enforced from usage reported by completed or streaming child runs; no reservation estimates. */\n\tsource: \"reported\";\n\ttokens?: UsageBudgetMetricState;\n\tcostUsd?: UsageBudgetMetricState;\n\texhausted: boolean;\n\treason?: \"tokens\" | \"costUsd\";\n}\n\nexport interface SingleResult {\n\t/**\n\t * Stable child identity within the foreground run. Pair with Details.runId for\n\t * cross-run correlation. This is assigned in launch order, remains stable across\n\t * partial progress snapshots and the final result, and is independent of the\n\t * result row's array position.\n\t */\n\tindex: number;\n\tagent: string;\n\ttask: string;\n\t/** Resolved launch context for this child. */\n\tcontext?: \"fresh\" | \"fork\";\n\texitCode: number;\n\tprocessSignal?: string | null;\n\tdetached?: boolean;\n\tdetachedReason?: string;\n\tinterrupted?: boolean;\n\ttimedOut?: boolean;\n\tstopped?: boolean;\n\tturnBudget?: TurnBudgetState;\n\tturnBudgetExceeded?: boolean;\n\twrapUpRequested?: boolean;\n\ttoolBudget?: ToolBudgetState;\n\ttoolBudgetBlocked?: boolean;\n\tmessages?: Message[];\n\tusage: Usage;\n\tmodel?: string;\n\t/** Effective thinking level used by this foreground child, when known. */\n\tthinking?: string;\n\tattemptedModels?: string[];\n\tmodelAttempts?: ModelAttempt[];\n\tcontrolEvents?: ControlEvent[];\n\terror?: string;\n\tprotocolError?: ProtocolOutputLimit;\n\tsessionFile?: string;\n\tskills?: string[];\n\tskillsWarning?: string;\n\tprogress?: AgentProgress;\n\tprogressSummary?: ProgressSummary;\n\ttoolCalls?: ToolCallSummary[];\n\tartifactPaths?: ArtifactPaths;\n\ttruncation?: TruncationResult;\n\tfinalOutput?: string;\n\t/** Provenance-aware state for substantive child output, excluding synthetic lifecycle messages. */\n\toutputState?: SubagentOutputState;\n\toutputMode?: OutputMode;\n\tsavedOutputPath?: string;\n\toutputReference?: SavedOutputReference;\n\toutputSaveError?: string;\n\t/** Best-effort metadata persistence failure; execution and receipt publication continue. */\n\tmetadataSaveError?: string;\n\tstructuredOutput?: unknown;\n\tstructuredOutputFailed?: boolean;\n\tstructuredOutputPath?: string;\n\tstructuredOutputSchemaPath?: string;\n\tacceptance?: AcceptanceLedger;\n\tagentContract?: AgentContract;\n\tlaunchContractDigest?: string;\n\tlaunchResolvedExtensions?: LaunchResolvedChildExtensionsV1;\n\truntimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensionsV1;\n\texecution?: ExecutionProjection;\n\treview?: ReviewProjection;\n\teffects?: EffectsProjection;\n\ttranscriptPath?: string;\n\ttranscriptError?: string;\n\tchildren?: NestedRunSummary[];\n\twatchdog?: ChildWatchdogProgress;\n\tcapabilityCeiling?: ResolvedSubagentCapabilityCeiling;\n\tcapabilityAudit?: SubagentCapabilityAudit;\n}\n\nexport interface SpawnBudgetGrant {\n\tsessionId: string;\n\tamount: number;\n\tgrantedAt: number;\n\tpreviousLimit: number;\n\tlimit: number;\n}\n\nexport interface SpawnBudgetSnapshot {\n\tused: number;\n\tconfiguredLimit: number | null;\n\tgranted: number;\n\tlimit: number | null;\n\tremaining: number | null;\n\tgrantRemaining: number | null;\n\tgrantHistory: SpawnBudgetGrant[];\n}\n\nexport interface Details {\n\tmode: SubagentResultMode | \"management\";\n\trunId?: string;\n\t/** Run-level context summary. \"mixed\" when children resolved to different modes. */\n\tcontext?: \"fresh\" | \"fork\" | \"mixed\";\n\tresults: SingleResult[];\n\tcontrolEvents?: ControlEvent[];\n\tsteering?: SteerActionResult;\n\tasyncId?: string;\n\tasyncDir?: string;\n\ttimeoutMs?: number;\n\tdeadlineAt?: number;\n\ttimedOut?: boolean;\n\tstopped?: boolean;\n\tturnBudget?: ResolvedTurnBudget;\n\ttoolBudget?: ResolvedToolBudget;\n\tusageBudget?: UsageBudgetState;\n\tprogress?: AgentProgress[];\n\tprogressSummary?: ProgressSummary;\n\tartifacts?: {\n\t\tdir: string;\n\t\tfiles: ArtifactPaths[];\n\t};\n\ttruncation?: {\n\t\ttruncated: boolean;\n\t\toriginalBytes?: number;\n\t\toriginalLines?: number;\n\t\tartifactPath?: string;\n\t};\n\t// Chain metadata for observability\n\tchainAgents?: string[]; // Agent names in order, e.g., [\"scout\", \"planner\"]\n\ttotalSteps?: number; // Total steps in chain\n\tcurrentStepIndex?: number; // 0-indexed current step (for running chains)\n\tworkflowGraph?: WorkflowGraphSnapshot;\n\tcheckpoint?: ChainCheckpointState;\n\toutputs?: ChainOutputMap;\n\t// Aggregated child usage across all agents in the run\n\ttotalChildUsage?: Usage;\n\t// Aggregated cost across all agents in the run\n\ttotalCost?: CostSummary;\n\tspawnBudget?: SpawnBudgetSnapshot;\n\tcapabilityCeiling?: ResolvedSubagentCapabilityCeiling;\n\tcapabilityAudit?: SubagentCapabilityAudit;\n\tparallelHandoff?: ParallelHandoffReference;\n\tlifecycleStatus?: {\n\t\tprocessTerminal?: ProcessTerminalV1;\n\t};\n\tlaunchContractDigest?: string;\n\tlaunchResolvedExtensions?: LaunchResolvedChildExtensionsV1;\n\truntimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensionsV1;\n\t/** Original launch contract whose persisted session is being revived. */\n\tsourceLaunchContractDigest?: string;\n\t/** Durable mission attached to this run, when mission mode was explicitly used. */\n\tmissionId?: string;\n\tmissionPath?: string;\n\t/** Non-fatal automatic mission persistence failure. */\n\tmissionWarning?: string;\n\tmission?: MissionRecord;\n\tworkflow?: {\n\t\tvalue?: unknown;\n\t\ttrace: Array<{\n\t\t\toperation: \"run\" | \"status\";\n\t\t\tkey: string;\n\t\t\tstate: \"started\" | \"completed\" | \"failed\" | \"reused\";\n\t\t\trunId?: string;\n\t\t\tphase?: string;\n\t\t\tlabel?: string;\n\t\t\tdurationMs?: number;\n\t\t\terror?: string;\n\t\t}>;\n\t\temits: unknown[];\n\t\tconsole: Array<{ level: \"log\" | \"info\" | \"warn\" | \"error\"; text: string }>;\n\t};\n\tchatProgress?: {\n\t\tmode: \"off\" | \"live-card\";\n\t\trepoRelation: \"same\" | \"other\";\n\t\trepoLabel?: string;\n\t};\n\tmissions?: {\n\t\trecords?: MissionRecord[];\n\t\tglobalEntries?: GlobalMissionIndexRecord[];\n\t\twarnings: string[];\n\t};\n\t/** Project-scoped recurring schedule records and run history for management actions. */\n\tschedules?: {\n\t\trecords?: unknown[];\n\t\truns?: unknown[];\n\t};\n}\n\n// ============================================================================\n// Artifacts\n// ============================================================================\n\nexport interface ArtifactPaths {\n\tinputPath: string;\n\toutputPath: string;\n\tjsonlPath: string;\n\ttranscriptPath: string;\n\tmetadataPath: string;\n}\n\nexport type ArtifactDirPreference = \"project\" | \"session\" | \"temp\";\n\nexport interface ArtifactConfig {\n\tenabled: boolean;\n\tdir?: ArtifactDirPreference;\n\tincludeInput: boolean;\n\tincludeOutput: boolean;\n\tincludeJsonl: boolean;\n\tincludeTranscript?: boolean;\n\tincludeMetadata: boolean;\n\tcleanupDays: number;\n}\n\n// ============================================================================\n// Async Execution\n// ============================================================================\n\nexport interface AsyncParallelGroupStatus {\n\tstart: number;\n\tcount: number;\n\tstepIndex: number;\n}\n\nexport type NestedRunState = \"queued\" | \"running\" | \"complete\" | \"failed\" | \"paused\" | \"stopped\" | \"rejected\";\nexport type NestedOwnerState = \"live\" | \"gone\" | \"unknown\";\n\nexport interface NestedRunAddress {\n\tid: string;\n\tparentRunId: string;\n\tparentStepIndex?: number;\n\tparentAgent?: string;\n\tdepth: number;\n\tpath: Array<{ runId: string; stepIndex?: number; agent?: string }>;\n}\n\nexport interface NestedStepSummary {\n\tagent: string;\n\tstatus: \"pending\" | \"running\" | \"complete\" | \"completed\" | \"failed\" | \"paused\" | \"stopped\" | \"rejected\";\n\tmodel?: string;\n\tthinking?: string;\n\tsessionFile?: string;\n\ttranscriptPath?: string;\n\ttranscriptError?: string;\n\tactivityState?: ActivityState;\n\tlastActivityAt?: number;\n\tcurrentTool?: string;\n\tcurrentToolStartedAt?: number;\n\tcurrentPath?: string;\n\tturnCount?: number;\n\ttoolCount?: number;\n\tstartedAt?: number;\n\tendedAt?: number;\n\terror?: string;\n\twatchdog?: ChildWatchdogProgress;\n\ttimedOut?: boolean;\n\tstopped?: boolean;\n\tturnBudget?: TurnBudgetState;\n\tturnBudgetExceeded?: boolean;\n\twrapUpRequested?: boolean;\n\ttoolBudget?: ToolBudgetState;\n\ttoolBudgetBlocked?: boolean;\n\tprocessTerminal?: ProcessTerminalV1;\n\tlaunchResolvedExtensions?: LaunchResolvedChildExtensionsV1;\n\truntimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensionsV1;\n\tcapabilityCeiling?: ResolvedSubagentCapabilityCeiling;\n\tcapabilityAudit?: SubagentCapabilityAudit;\n\tchildren?: NestedRunSummary[];\n}\n\nexport interface NestedRunSummary extends NestedRunAddress {\n\tasyncDir?: string;\n\tpid?: number;\n\tsessionId?: string;\n\tsessionFile?: string;\n\tintercomTarget?: string;\n\townerIntercomTarget?: string;\n\tleafIntercomTarget?: string;\n\townerState?: NestedOwnerState;\n\tcontrolInbox?: string;\n\tcapabilityToken?: string;\n\tmode?: SubagentRunMode;\n\tprocessTerminal?: ProcessTerminalV1;\n\tlaunchResolvedExtensions?: LaunchResolvedChildExtensionsV1;\n\truntimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensionsV1;\n\tcapabilityCeiling?: ResolvedSubagentCapabilityCeiling;\n\tcapabilityAudit?: SubagentCapabilityAudit;\n\tstate: NestedRunState;\n\tagent?: string;\n\tagents?: string[];\n\tmodel?: string;\n\tthinking?: string;\n\tcurrentStep?: number;\n\tchainStepCount?: number;\n\tparallelGroups?: AsyncParallelGroupStatus[];\n\tsteps?: NestedStepSummary[];\n\tchildren?: NestedRunSummary[];\n\tactivityState?: ActivityState;\n\tlastActivityAt?: number;\n\tcurrentTool?: string;\n\tcurrentToolStartedAt?: number;\n\tcurrentPath?: string;\n\tturnCount?: number;\n\ttoolCount?: number;\n\ttotalTokens?: TokenUsage;\n\ttotalCost?: CostSummary;\n\tstartedAt?: number;\n\tendedAt?: number;\n\tlastUpdate?: number;\n\ttimeoutMs?: number;\n\tdeadlineAt?: number;\n\ttimedOut?: boolean;\n\tstopped?: boolean;\n\tturnBudget?: TurnBudgetState;\n\tturnBudgetExceeded?: boolean;\n\twrapUpRequested?: boolean;\n\ttoolBudget?: ToolBudgetState;\n\ttoolBudgetBlocked?: boolean;\n\terror?: string;\n}\n\nexport interface NestedRouteInfo {\n\trootRunId: string;\n\teventSink: string;\n\tcontrolInbox: string;\n\tcapabilityToken: string;\n}\n\nexport interface AsyncStartedEvent {\n\tlifecycleArtifactVersion?: SubagentLifecycleArtifactVersion;\n\tid?: string;\n\tasyncDir?: string;\n\t/** Parent-resolved launch directory, used as a trusted artifact root while this session is live. */\n\tcwd?: string;\n\tpid?: number;\n\tsessionId?: string;\n\tmode?: SubagentRunMode;\n\tagent?: string;\n\tagents?: string[];\n\t/** Truncated first child task retained for backwards compatibility. */\n\ttask?: string;\n\t/** Workflow-level caller task, falling back to the first child task. */\n\tgoal?: string;\n\tchain?: string[];\n\tchainStepCount?: number;\n\tparallelGroups?: AsyncParallelGroupStatus[];\n\tworkflowGraph?: WorkflowGraphSnapshot;\n\tcheckpoint?: ChainCheckpointState;\n\tlaunchContractDigest?: string;\n\tlaunchResolvedExtensions?: LaunchResolvedChildExtensionsV1;\n\truntimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensionsV1;\n\tusageBudget?: UsageBudgetState;\n\ttimeoutMs?: number;\n\tdeadlineAt?: number;\n\tturnBudget?: TurnBudgetState;\n\tnestedRoute?: NestedRouteInfo;\n\tcapabilityCeiling?: ResolvedSubagentCapabilityCeiling;\n\tparentWorkflowRunId?: string;\n\tworkflowKey?: string;\n}\n\nexport interface RunnerRetryConfig {\n\tmaxAttempts: number;\n\tbackoffMs?: number;\n}\n\nexport type AgentRunnerConfig =\n\t| { type: \"pi\" }\n\t| {\n\t\t\ttype: \"external-cli\";\n\t\t\tcommand: string;\n\t\t\targs?: string[];\n\t\t\tpromptDelivery?: \"stdin\";\n\t\t\tretry?: RunnerRetryConfig;\n\t  };\n\nexport interface ExternalCliRunnerStatus {\n\ttype: \"external-cli\";\n\tcommand: string;\n\targs: string[];\n\tpromptDelivery: \"stdin\";\n\tretry?: RunnerRetryConfig;\n\tcapabilities: {\n\t\tstop: true;\n\t\tsteer: false;\n\t\tresume: false;\n\t\tstructuredOutput: false;\n\t\ttoolEvents: false;\n\t};\n}\n\nexport interface ExternalProcessStatus {\n\tpid?: number;\n\tattempt?: number;\n\tmaxAttempts?: number;\n\tstartedAt: number;\n\tendedAt?: number;\n\tdurationMs?: number;\n\texitCode?: number | null;\n\tprocessSignal?: string | null;\n\tstdoutPath: string;\n\tstderrPath: string;\n}\n\n\nexport interface AsyncStatus {\n\tlifecycleArtifactVersion?: SubagentLifecycleArtifactVersion;\n\trunId: string;\n\tsessionId?: string;\n\tmode: SubagentRunMode;\n\tcontext?: \"fresh\" | \"fork\" | \"mixed\";\n\tisNested?: boolean;\n\tstate: \"queued\" | \"running\" | \"complete\" | \"failed\" | \"paused\" | \"stopped\" | \"rejected\";\n\terror?: string;\n\tactivityState?: ActivityState;\n\tlastActivityAt?: number;\n\tcurrentTool?: string;\n\tcurrentToolStartedAt?: number;\n\tcurrentPath?: string;\n\tturnCount?: number;\n\ttoolCount?: number;\n\tsteering?: SteeringStatus;\n\tstartedAt: number;\n\tendedAt?: number;\n\tlastUpdate?: number;\n\ttimeoutMs?: number;\n\tdeadlineAt?: number;\n\ttimedOut?: boolean;\n\tstopped?: boolean;\n\tturnBudget?: TurnBudgetState;\n\tturnBudgetExceeded?: boolean;\n\twrapUpRequested?: boolean;\n\ttoolBudget?: ToolBudgetState;\n\ttoolBudgetBlocked?: boolean;\n\tusageBudget?: UsageBudgetState;\n\tpid?: number;\n\tcwd?: string;\n\tcurrentStep?: number;\n\tchainStepCount?: number;\n\tpendingAppends?: number;\n\tparallelGroups?: AsyncParallelGroupStatus[];\n\tworkflowGraph?: WorkflowGraphSnapshot;\n\tcheckpoint?: ChainCheckpointState;\n\tprocessTerminal?: ProcessTerminalV1;\n\tlaunchContractDigest?: string;\n\tlaunchResolvedExtensions?: LaunchResolvedChildExtensionsV1;\n\truntimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensionsV1;\n\tcapabilityCeiling?: ResolvedSubagentCapabilityCeiling;\n\tcapabilityAudit?: SubagentCapabilityAudit;\n\tworkflow?: Details[\"workflow\"];\n\tparentWorkflowRunId?: string;\n\tworkflowKey?: string;\n\tsteps?: Array<{\n\t\tagent: string;\n\t\trunner?: ExternalCliRunnerStatus;\n\t\texternalProcess?: ExternalProcessStatus;\n\t\t/** Resolved launch context for this child step. */\n\t\tcontext?: \"fresh\" | \"fork\";\n\t\t/** Short caller-facing task/goal shown in fleet surfaces when available. */\n\t\tdescription?: string;\n\t\tphase?: string;\n\t\tlabel?: string;\n\t\tworkflowKey?: string;\n\t\tparentWorkflowRunId?: string;\n\t\toutputName?: string;\n\t\tstructured?: boolean;\n\t\tcheckpoint?: ChainCheckpointState;\n\t\tstatus: \"pending\" | \"running\" | \"complete\" | \"completed\" | \"failed\" | \"paused\" | \"stopped\" | \"rejected\";\n\t\tchildren?: NestedRunSummary[];\n\t\tsessionFile?: string;\n\t\ttranscriptPath?: string;\n\t\ttranscriptError?: string;\n\t\tactivityState?: ActivityState;\n\t\tlastActivityAt?: number;\n\t\tcurrentTool?: string;\n\t\tcurrentToolArgs?: string;\n\t\tcurrentToolStartedAt?: number;\n\t\tcurrentPath?: string;\n\t\trecentTools?: Array<{ tool: string; args: string; endMs: number }>;\n\t\trecentOutput?: string[];\n\t\tturnCount?: number;\n\t\ttoolCount?: number;\n\t\tstartedAt?: number;\n\t\tendedAt?: number;\n\t\tdurationMs?: number;\n\t\texitCode?: number | null;\n\t\ttimedOut?: boolean;\n\t\tstopped?: boolean;\n\t\tturnBudget?: TurnBudgetState;\n\t\tturnBudgetExceeded?: boolean;\n\t\twrapUpRequested?: boolean;\n\t\ttoolBudget?: ToolBudgetState;\n\t\ttoolBudgetBlocked?: boolean;\n\t\ttokens?: TokenUsage;\n\t\tskills?: string[];\n\t\tmodel?: string;\n\t\tthinking?: string;\n\t\tattemptedModels?: string[];\n\t\tmodelAttempts?: ModelAttempt[];\n\t\ttotalCost?: CostSummary;\n\t\tsteering?: SteeringStatus;\n\t\terror?: string;\n\t\tstructuredOutput?: unknown;\n\t\tstructuredOutputPath?: string;\n\t\tstructuredOutputSchemaPath?: string;\n\t\tacceptance?: AcceptanceLedger;\n\t\tagentContract?: AgentContract;\n\t\tlaunchContractDigest?: string;\n\t\tlaunchResolvedExtensions?: LaunchResolvedChildExtensionsV1;\n\t\truntimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensionsV1;\n\t\texecution?: ExecutionProjection;\n\t\treview?: ReviewProjection;\n\t\teffects?: EffectsProjection;\n\t\twatchdog?: ChildWatchdogProgress;\n\t\tprocessTerminal?: ProcessTerminalV1;\n\t\tcapabilityCeiling?: ResolvedSubagentCapabilityCeiling;\n\t\tcapabilityAudit?: SubagentCapabilityAudit;\n\t}>;\n\tsessionDir?: string;\n\toutputFile?: string;\n\ttotalTokens?: TokenUsage;\n\ttotalCost?: CostSummary;\n\tsessionFile?: string;\n\toutputs?: ChainOutputMap;\n\tparallelHandoff?: ParallelHandoffReference;\n}\n\nexport type AsyncJobStep = NonNullable<AsyncStatus[\"steps\"]>[number] & {\n\tindex?: number;\n\tdescription?: string;\n};\n\nexport interface AsyncJobState {\n\tasyncId: string;\n\tasyncDir: string;\n\t/** Parent-resolved launch directory retained for trusted live artifact lookup. */\n\tcwd?: string;\n\tstatus: \"queued\" | \"running\" | \"complete\" | \"failed\" | \"paused\" | \"stopped\" | \"rejected\";\n\t/** Short caller-facing task/goal shown in fleet surfaces when available. */\n\tdescription?: string;\n\tpid?: number;\n\tsessionId?: string;\n\tactivityState?: ActivityState;\n\tlastActivityAt?: number;\n\tcurrentTool?: string;\n\tcurrentToolStartedAt?: number;\n\tcurrentPath?: string;\n\tturnCount?: number;\n\ttoolCount?: number;\n\tsteering?: SteeringStatus;\n\tmode?: SubagentRunMode;\n\t/** Run-level context summary derived from step contexts. */\n\tcontext?: \"fresh\" | \"fork\" | \"mixed\";\n\tagents?: string[];\n\tcurrentStep?: number;\n\tchainStepCount?: number;\n\tparallelGroups?: AsyncParallelGroupStatus[];\n\tsteps?: AsyncJobStep[];\n\tcheckpoint?: ChainCheckpointState;\n\tstepsTotal?: number;\n\trunningSteps?: number;\n\tcompletedSteps?: number;\n\thasParallelGroups?: boolean;\n\tactiveParallelGroup?: boolean;\n\tstartedAt?: number;\n\tupdatedAt?: number;\n\ttimeoutMs?: number;\n\tdeadlineAt?: number;\n\ttimedOut?: boolean;\n\tstopped?: boolean;\n\tturnBudget?: TurnBudgetState;\n\tturnBudgetExceeded?: boolean;\n\twrapUpRequested?: boolean;\n\ttoolBudget?: ToolBudgetState;\n\ttoolBudgetBlocked?: boolean;\n\tsessionDir?: string;\n\toutputFile?: string;\n\ttotalTokens?: TokenUsage;\n\ttotalCost?: CostSummary;\n\tusageBudget?: UsageBudgetState;\n\tsessionFile?: string;\n\tcontrolEventCursor?: number;\n\tnestedRoute?: NestedRouteInfo;\n\tnestedChildren?: NestedRunSummary[];\n\tparentWorkflowRunId?: string;\n\tworkflowKey?: string;\n\tworkflow?: Details[\"workflow\"];\n}\n\nexport interface ForegroundResumeChild {\n\tagent: string;\n\tindex: number;\n\tcontext?: \"fresh\" | \"fork\";\n\tsessionFile?: string;\n\tmodel?: string;\n\tthinking?: string;\n\tstatus: SubagentResultStatus;\n\tactivityState?: ActivityState;\n\tlastActivityAt?: number;\n\tcurrentTool?: string;\n\tcurrentToolStartedAt?: number;\n\tcurrentPath?: string;\n\tturnCount?: number;\n\ttokens?: number;\n\ttoolCount?: number;\n\texitCode?: number;\n\terror?: string;\n\tfinalOutput?: string;\n\toutputState?: SubagentOutputState;\n\toutputMode?: OutputMode;\n\tsavedOutputPath?: string;\n\toutputSaveError?: string;\n\tartifactPaths?: ArtifactPaths;\n\ttranscriptPath?: string;\n\ttranscriptError?: string;\n\tdetachedReason?: string;\n\tacceptance?: AcceptanceLedger;\n\tagentContract?: AgentContract;\n\tlaunchContractDigest?: string;\n\tlaunchResolvedExtensions?: LaunchResolvedChildExtensionsV1;\n\truntimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensionsV1;\n\texecution?: ExecutionProjection;\n\treview?: ReviewProjection;\n\teffects?: EffectsProjection;\n\tcapabilityCeiling?: ResolvedSubagentCapabilityCeiling;\n\tcapabilityAudit?: SubagentCapabilityAudit;\n\tupdatedAt?: number;\n}\n\nexport interface ForegroundResumeRun {\n\trunId: string;\n\tmode: SubagentRunMode;\n\tcwd: string;\n\t/** Originating parent session. Detached exits can outlive the active session. */\n\tsessionId?: string;\n\tupdatedAt: number;\n\tcheckpoint?: ChainCheckpointState;\n\tchildren: ForegroundResumeChild[];\n}\n\nexport interface ForegroundChildControl {\n\tindex: number;\n\tagent: string;\n\tdescription?: string;\n\tstartedAt: number;\n\tupdatedAt: number;\n\tcurrentActivityState?: ActivityState;\n\tlastActivityAt?: number;\n\tcurrentTool?: string;\n\tcurrentToolStartedAt?: number;\n\tcurrentPath?: string;\n\tturnCount?: number;\n\ttokens?: number;\n\tinputTokens?: number;\n\toutputTokens?: number;\n\tmodel?: string;\n\tthinking?: string;\n\ttoolCount?: number;\n\tinterrupt?: () => boolean;\n\tdetach?: () => boolean;\n}\n\nexport interface ForegroundRunControl {\n\trunId: string;\n\t/** Originating parent session; required for public fleet projection. */\n\tsessionId?: string;\n\tmode: SubagentRunMode;\n\tstartedAt: number;\n\tupdatedAt: number;\n\t/** Effective working directory used to resolve live transcript artifacts. */\n\tcwd?: string;\n\tcurrentAgent?: string;\n\tcurrentIndex?: number;\n\t/** Short caller-facing task/goal shown in fleet surfaces when available. */\n\tdescription?: string;\n\tcurrentActivityState?: ActivityState;\n\tlastActivityAt?: number;\n\tcurrentTool?: string;\n\tcurrentToolStartedAt?: number;\n\tcurrentPath?: string;\n\tturnCount?: number;\n\ttokens?: number;\n\tinputTokens?: number;\n\toutputTokens?: number;\n\tmodel?: string;\n\tthinking?: string;\n\ttoolCount?: number;\n\t/** Independently tracked children for foreground parallel work and fleet inspection. */\n\tactiveChildren?: Map<number, ForegroundChildControl>;\n\t/** Scheduling owners that may still launch another child. Removal is safe only at zero. */\n\tschedulingOwners?: number;\n\tnestedRoute?: NestedRouteInfo;\n\tnestedChildren?: NestedRunSummary[];\n\tinterrupt?: () => boolean;\n\tdetach?: () => boolean;\n}\n\nexport interface WaitSubscriptionRecord {\n\tversion: 1;\n\ttoken: string;\n\tsessionId: string;\n\ttargetKind: \"async\" | \"foreground\";\n\trunId: string;\n\trequestedId: string;\n\tcreatedAt: number;\n\texpiresAt: number;\n}\n\nexport interface SubagentState {\n\tbaseCwd: string;\n\tcurrentSessionId: string | null;\n\t/** Runtime-owned artifact resolution inputs used by Fleet transcript targeting. */\n\tartifactDirPreference?: ArtifactDirPreference;\n\t/** Runtime authority snapshot used by optional inspector controls. */\n\tauthorityPolicy?: AuthorityPolicyConfig;\n\t/** Runtime mission-store snapshot used by optional inspector context. */\n\tmissionStoreConfig?: MissionStoreConfig;\n\tparentSessionFile?: string | null;\n\t/** Last valid parent session model observed for this session; used when continuation contexts omit ctx.model. */\n\tlastParentModel?: { provider: string; id: string };\n\tsubagentInProgress?: boolean;\n\tsubagentSpawns?: {\n\t\tsessionId: string | null;\n\t\tcount: number;\n\t\tconfiguredLimit?: number | null;\n\t\tgranted?: number;\n\t\tgrantHistory?: SpawnBudgetGrant[];\n\t};\n\tasyncJobs: Map<string, AsyncJobState>;\n\t/** Current-session active and recent async runs for the native fleet inspector. */\n\tfleetJobs?: Map<string, AsyncJobState>;\n\t/** Suppress dynamic status widgets while the fleet overlay owns the viewport. */\n\tfleetInspectorOpen?: boolean;\n\tforegroundRuns?: Map<string, ForegroundResumeRun>;\n\tforegroundControls: Map<string, ForegroundRunControl>;\n\tlastForegroundControlId: string | null;\n\tcleanupTimers: Map<string, ReturnType<typeof setTimeout>>;\n\tlastUiContext: ExtensionContext | null;\n\tpoller: NodeJS.Timeout | null;\n\tcompletionSeen: Map<string, number>;\n\twatcher: FSWatcher | null;\n\twatcherRestartTimer: ReturnType<typeof setTimeout> | null;\n\tresultFileCoalescer: {\n\t\tschedule(file: string, delayMs?: number): boolean;\n\t\tclear(): void;\n\t};\n\t/** Current-session durable non-blocking wait registrations. */\n\twaitSubscriptions?: Map<string, WaitSubscriptionRecord>;\n\t/** Live in-process workflow controllers. Durable status remains on disk after settlement. */\n\tworkflowControllers?: Map<string, AbortController>;\n}\n\n// ============================================================================\n// Display\n// ============================================================================\n\nexport type DisplayItem =\n\t| { type: \"text\"; text: string }\n\t| { type: \"tool\"; name: string; args: Record<string, unknown> };\n\n// ============================================================================\n// Error Handling\n// ============================================================================\n\nexport interface ErrorInfo {\n\thasError: boolean;\n\texitCode?: number;\n\terrorType?: string;\n\tdetails?: string;\n}\n\nexport interface IntercomEventBus {\n\ton(channel: string, handler: (data: unknown) => void): () => void;\n\temit(channel: string, data: unknown): void;\n}\n\nexport const INTERCOM_DETACH_REQUEST_EVENT = \"pi-intercom:detach-request\";\nexport const INTERCOM_DETACH_RESPONSE_EVENT = \"pi-intercom:detach-response\";\nexport const SUBAGENT_ASYNC_STARTED_EVENT = \"subagent:async-started\";\nexport const SUBAGENT_ASYNC_COMPLETE_EVENT = \"subagent:async-complete\";\nexport const SUBAGENT_PROCESS_TERMINAL_EVENT = \"subagent:process-terminal\";\nexport const SUBAGENT_FOREGROUND_COMPLETE_EVENT = \"subagent:foreground-complete\";\nexport const SUBAGENT_CONTROL_EVENT = \"subagent:control-event\";\nexport const SUBAGENT_CONTROL_INTERCOM_EVENT = \"subagent:control-intercom\";\nexport const SUBAGENT_STEERING_NOTICE_EVENT = \"subagent:steering-notice\";\nexport const SUBAGENT_RESULT_INTERCOM_EVENT = \"subagent:result-intercom\";\nexport const SUBAGENT_RESULT_INTERCOM_DELIVERY_EVENT = \"subagent:result-intercom-delivery\";\n\n// ============================================================================\n// Execution Options\n// ============================================================================\n\nexport interface RunSyncOptions {\n\t/** Opt-in global permission rules; missing tools remain allowed. */\n\tpermissions?: import(\"../runs/shared/permissions.ts\").PermissionConfig;\n\t/** Session id of the direct parent session for permission-system ask forwarding. */\n\tparentSessionId?: string;\n\t/** Resolved launch context for this child. */\n\tcontext?: \"fresh\" | \"fork\";\n\tcwd?: string;\n\tsignal?: AbortSignal;\n\tinterruptSignal?: AbortSignal;\n\ttimeoutMs?: number;\n\tdeadlineAt?: number;\n\tturnBudget?: ResolvedTurnBudget;\n\tusageBudget?: UsageBudgetConfig;\n\t/** Enforce maxTurns + graceTurns as a hard model-turn boundary. */\n\tenforceHardTurnLimit?: boolean;\n\ttoolBudget?: ResolvedToolBudget;\n\tallowZeroToolBudget?: boolean;\n\tallowIntercomDetach?: boolean;\n\tintercomEvents?: IntercomEventBus;\n\tonUpdate?: (r: import(\"@lpb-work/pi-agent-core\").AgentToolResult<Details>) => void;\n\tonControlEvent?: (event: ControlEvent) => void;\n\t/** Exposes a non-terminating detach callback while the child is active. */\n\tonDetachReady?: (detach: (reason?: string) => boolean) => void;\n\t/** Internal foreground receipt proposal; returns true only when the outer waiter accepted it. */\n\tonDetachReceipt?: (result: SingleResult) => boolean;\n\t/** Authoritative terminal result, emitted only after the full detached run finalizes. */\n\tonDetachedExit?: (result: SingleResult) => void;\n\tcontrolConfig?: ResolvedControlConfig;\n\tintercomSessionName?: string;\n\torchestratorIntercomTarget?: string;\n\tmaxOutput?: MaxOutputConfig;\n\tartifactsDir?: string;\n\tartifactConfig?: ArtifactConfig;\n\trunId: string;\n\tindex?: number;\n\tsessionDir?: string;\n\tsessionFile?: string;\n\tshare?: boolean;\n\toutputPath?: string;\n\toutputMode?: OutputMode;\n\tmaxSubagentDepth?: number;\n\t/** Effective parent wait-tool setting propagated to the child runtime. */\n\twaitToolEnabled?: boolean;\n\tcapabilityCeiling?: ResolvedSubagentCapabilityCeiling;\n\tnestedRoute?: NestedRouteInfo;\n\t/** Override the agent's default model (format: \"provider/id\" or just \"id\") */\n\tmodelOverride?: string;\n\t/** Override the agent's default thinking level for this run */\n\tthinkingOverride?: AgentConfig[\"thinking\"];\n\t/** Registry models available for heuristic bare-model resolution */\n\tavailableModels?: Array<{ provider: string; id: string; fullId: string }>;\n\t/** Current parent-session provider to prefer for ambiguous bare model ids */\n\tpreferredModelProvider?: string;\n\t/** Optional subagent model-scope enforcement for fallback candidates */\n\tmodelScope?: ModelScopeConfig;\n\t/** Skills to make available (overrides agent default if provided) */\n\tskills?: string[];\n\tstructuredOutput?: {\n\t\tschema: JsonSchemaObject;\n\t\tschemaPath: string;\n\t\toutputPath: string;\n\t};\n\tagentContract?: AgentContract;\n\tacceptance?: AcceptanceInput;\n\tacceptanceContext?: {\n\t\tmode?: SubagentRunMode;\n\t\tasync?: boolean;\n\t\tdynamic?: boolean;\n\t\tdynamicGroup?: boolean;\n\t};\n}\n\nexport type IntercomBridgeMode = \"off\" | \"fork-only\" | \"always\";\n\nexport interface IntercomBridgeConfig {\n\tmode?: IntercomBridgeMode;\n\tinstructionFile?: string;\n\t/** Deliver grouped completion messages through an external acknowledged intercom listener. */\n\tresultDelivery?: boolean;\n}\n\ninterface TopLevelParallelConfig {\n\tmaxTasks?: number;\n\tconcurrency?: number;\n}\n\ninterface ExtensionChainConfig {\n\tdynamicFanout?: {\n\t\tmaxItems?: number;\n\t};\n}\n\nexport interface ProactiveSkillSubagentsConfig {\n\tenabled?: boolean;\n\tminReferences?: number;\n\tmaxRecommendations?: number;\n\tpreferredAgent?: string;\n}\n\nexport type ToolDescriptionMode = \"full\" | \"compact\" | \"custom\";\nexport type InlineToolDisplay = \"rich\" | \"summary\";\n\nexport interface ScheduledRunsConfig {\n\tenabled?: boolean;\n\tmaxPending?: number;\n}\n\nexport type FleetViewPlacement = \"aboveEditor\" | \"belowEditor\";\n\nexport interface ExtensionConfig {\n\tasyncByDefault?: boolean;\n\t/** Show the Claude Code-style navigable fleet. Defaults to true. */\n\tfleetView?: boolean;\n\t/** Place the persistent FleetView above or below the editor. Defaults to belowEditor. */\n\tfleetViewPlacement?: FleetViewPlacement;\n\t/** Show the under-editor async runs widget. Defaults to true, including when FleetView is enabled. */\n\tasyncWidget?: boolean;\n\t/** Tool description variant registered for the parent-facing subagent tool. Defaults to full. */\n\ttoolDescriptionMode?: ToolDescriptionMode;\n\t/** Inline chat rendering for the subagent tool. Defaults to rich. */\n\tinlineToolDisplay?: InlineToolDisplay;\n\tforceTopLevelAsync?: boolean;\n\twaitTool?: WaitToolConfig;\n\tdefaultSessionDir?: string;\n\tsingleRunOutputBaseDir?: string;\n\tmaxSubagentDepth?: number;\n\t/** Optional cumulative session cap. Unset or 0 means unlimited. */\n\tmaxSubagentSpawnsPerSession?: number;\n\t/** Global cap on simultaneously-running subagent tasks within a single run. Defaults to 20. */\n\tglobalConcurrencyLimit?: number;\n\tcontrol?: ControlConfig;\n\tcompletionBatch?: CompletionBatchConfig;\n\tturnBudget?: TurnBudgetConfig;\n\ttoolBudget?: ToolBudgetConfig;\n\t/** Opt-in native tool permissions. Bash remains outside this policy. */\n\tpermissions?: import(\"../runs/shared/permissions.ts\").PermissionConfig;\n\tusageBudget?: UsageBudgetConfig;\n\tparallel?: TopLevelParallelConfig;\n\tchain?: ExtensionChainConfig;\n\tworktreeSetupHook?: string;\n\tworktreeSetupHookTimeoutMs?: number;\n\tworktreeBaseDir?: string;\n\t/** Where to store subagent artifact files. Defaults to \"project\" (cwd/.pi-subagents). Set to \"session\" for pi session dir, or \"temp\" for OS temp. */\n\tartifactDir?: ArtifactDirPreference;\n\tintercomBridge?: IntercomBridgeConfig;\n\tproactiveSkillSubagents?: ProactiveSkillSubagentsConfig | false;\n\tscheduledRuns?: ScheduledRunsConfig;\n\t/** Durable mission behavior. Missions are automatic by default; set enabled:false to disable auto-create. Explicit mission actions/fields still work. */\n\tmissions?: MissionStoreConfig;\n\t/** Small fixed authority policy for the supported operational actions. */\n\tauthorityPolicy?: AuthorityPolicyConfig;\n}\n\n// ============================================================================\n// Constants\n// ============================================================================\n\nexport const DEFAULT_MAX_OUTPUT: Required<MaxOutputConfig> = {\n\tbytes: 200 * 1024,\n\tlines: 5000,\n};\n\nexport const DEFAULT_ARTIFACT_CONFIG: ArtifactConfig = {\n\tenabled: true,\n\tdir: \"project\",\n\tincludeInput: true,\n\tincludeOutput: true,\n\tincludeJsonl: false,\n\tincludeTranscript: true,\n\tincludeMetadata: true,\n\tcleanupDays: 7,\n};\n\nfunction sanitizeTempScopeSegment(value: string): string {\n\tconst sanitized = value\n\t\t.trim()\n\t\t.replace(/[^A-Za-z0-9._-]+/g, \"-\")\n\t\t.replace(/^-+|-+$/g, \"\");\n\treturn sanitized || \"unknown\";\n}\n\nexport function resolveTempScopeId(options?: {\n\tenv?: NodeJS.ProcessEnv;\n\tgetuid?: (() => number) | undefined;\n\tuserInfo?: (() => { username?: string | null }) | undefined;\n\thomedir?: (() => string) | undefined;\n}): string {\n\tconst env = options?.env ?? process.env;\n\tconst getuid = options && Object.hasOwn(options, \"getuid\") ? options.getuid : process.getuid?.bind(process);\n\tif (typeof getuid === \"function\") {\n\t\treturn `uid-${getuid()}`;\n\t}\n\n\tfor (const key of [\"USERNAME\", \"USER\", \"LOGNAME\"] as const) {\n\t\tconst value = env[key];\n\t\tif (value) return `user-${sanitizeTempScopeSegment(value)}`;\n\t}\n\n\tconst userInfo = options && Object.hasOwn(options, \"userInfo\") ? options.userInfo : os.userInfo;\n\ttry {\n\t\tconst username = userInfo?.().username;\n\t\tif (username) return `user-${sanitizeTempScopeSegment(username)}`;\n\t} catch {\n\t\t// Fall through to home-directory-based scoping.\n\t}\n\n\tconst homedir = env.USERPROFILE ?? env.HOME;\n\tif (homedir) return `home-${sanitizeTempScopeSegment(homedir)}`;\n\n\tconst resolveHomedir = options && Object.hasOwn(options, \"homedir\") ? options.homedir : os.homedir;\n\ttry {\n\t\tconst fallbackHomedir = resolveHomedir?.();\n\t\tif (fallbackHomedir) return `home-${sanitizeTempScopeSegment(fallbackHomedir)}`;\n\t} catch {\n\t\t// Fall through to the last-resort shared scope.\n\t}\n\n\treturn \"shared\";\n}\n\nconst MAX_PARALLEL = 8;\nexport const MAX_CONCURRENCY = 4;\nexport const TEMP_ROOT_DIR = path.join(os.tmpdir(), `pi-subagents-${resolveTempScopeId()}`);\nexport const RESULTS_DIR = path.join(TEMP_ROOT_DIR, \"async-subagent-results\");\nexport const ASYNC_DIR = path.join(TEMP_ROOT_DIR, \"async-subagent-runs\");\nexport const CHAIN_RUNS_DIR = path.join(TEMP_ROOT_DIR, \"chain-runs\");\nexport const TEMP_ARTIFACTS_DIR = path.join(TEMP_ROOT_DIR, \"artifacts\");\n\nexport const DIRS = {\n\tresults: RESULTS_DIR,\n\tasync: ASYNC_DIR,\n\tchain: CHAIN_RUNS_DIR,\n\tartifacts: TEMP_ARTIFACTS_DIR,\n};\nexport const WIDGET_KEY = \"subagent-async\";\nexport const SLASH_RESULT_TYPE = \"subagent-slash-result\";\nexport const SLASH_TEXT_RESULT_TYPE = \"subagent-slash-text-result\";\nexport const SLASH_SUBAGENT_REQUEST_EVENT = \"subagent:slash:request\";\nexport const SLASH_SUBAGENT_STARTED_EVENT = \"subagent:slash:started\";\nexport const SLASH_SUBAGENT_RESPONSE_EVENT = \"subagent:slash:response\";\nexport const SLASH_SUBAGENT_UPDATE_EVENT = \"subagent:slash:update\";\nexport const SLASH_SUBAGENT_CANCEL_EVENT = \"subagent:slash:cancel\";\nexport const POLL_INTERVAL_MS = 250;\nexport const MAX_WIDGET_JOBS = 4;\nexport const DEFAULT_SUBAGENT_MAX_DEPTH = 2;\nexport const SUBAGENT_ACTIONS = [\n\t\"list\",\n\t\"get\",\n\t\"models\",\n\t\"children.list\",\n\t\"create\",\n\t\"update\",\n\t\"delete\",\n\t\"eject\",\n\t\"disable\",\n\t\"enable\",\n\t\"reset\",\n\t\"mission.create\",\n\t\"mission.list\",\n\t\"mission.show\",\n\t\"mission.update\",\n\t\"mission.attach-run\",\n\t\"mission.close\",\n\t\"worktree.discard\",\n\t\"refine\",\n\t\"refine.show\",\n\t\"refine.rollback\",\n\t\"inspector.open\",\n\t\"inspector.status\",\n\t\"inspector.close\",\n\t\"project.open\",\n\t\"project.status\",\n\t\"project.close\",\n\t\"status\",\n\t\"grant-spawn-budget\",\n\t\"interrupt\",\n\t\"resume\",\n\t\"steer\",\n\t\"stop\",\n\t\"append-step\",\n\t\"approve-checkpoint\",\n\t\"reject-checkpoint\",\n\t\"doctor\",\n\t\"watchdog.status\",\n\t\"watchdog.check\",\n\t\"watchdog.configure\",\n\t\"watchdog.recommend-model\",\n\t\"schedule.create\",\n\t\"schedule.list\",\n\t\"schedule.show\",\n\t\"schedule.history\",\n\t\"schedule.pause\",\n\t\"schedule.resume\",\n\t\"schedule.run\",\n\t\"schedule.run-due\",\n\t\"schedule.delete\",\n] as const;\n\nexport const DEFAULT_FORK_PREAMBLE =\n\t\"You are a delegated subagent running from a fork of the parent session. \" +\n\t\"Treat the inherited conversation as reference-only context, not a live thread to continue. \" +\n\t\"Do not continue or answer prior messages as if they are waiting for a reply. \" +\n\t\"Your sole job is to execute the task below and return a focused result for that task using your tools.\";\n\nfunction normalizeTopLevelParallelValue(value: unknown): number | undefined {\n\tconst parsed = typeof value === \"number\" ? value : typeof value === \"string\" ? Number(value) : NaN;\n\tif (!Number.isInteger(parsed) || parsed < 1) return undefined;\n\treturn parsed;\n}\n\nexport function resolveTopLevelParallelMaxTasks(value: unknown): number {\n\treturn normalizeTopLevelParallelValue(value) ?? MAX_PARALLEL;\n}\n\nexport function resolveTopLevelParallelConcurrency(override: unknown, configValue: unknown): number {\n\treturn normalizeTopLevelParallelValue(override) ?? normalizeTopLevelParallelValue(configValue) ?? MAX_CONCURRENCY;\n}\n\nexport function getAsyncConfigPath(suffix: string): string {\n\treturn path.join(TEMP_ROOT_DIR, `async-cfg-${suffix}.json`);\n}\n\nexport function wrapForkTask(task: string, preamble?: string | false): string {\n\tif (preamble === false) return task;\n\tconst effectivePreamble = preamble ?? DEFAULT_FORK_PREAMBLE;\n\tconst wrappedPrefix = `${effectivePreamble}\\n\\nTask:\\n`;\n\tif (task.startsWith(wrappedPrefix)) return task;\n\treturn `${wrappedPrefix}${task}`;\n}\n\n// ============================================================================\n// Recursion Depth Guard\n// ============================================================================\n\nfunction normalizeNonNegativeInteger(value: unknown): number | undefined {\n\tconst parsed = typeof value === \"number\" ? value : typeof value === \"string\" ? Number(value) : NaN;\n\tif (!Number.isInteger(parsed) || parsed < 0) return undefined;\n\treturn parsed;\n}\n\nexport function normalizeMaxSubagentDepth(value: unknown): number | undefined {\n\treturn normalizeNonNegativeInteger(value);\n}\n\nexport function resolveCurrentMaxSubagentDepth(configMaxDepth?: number): number {\n\treturn (\n\t\tnormalizeMaxSubagentDepth(process.env.PI_SUBAGENT_MAX_DEPTH) ??\n\t\tnormalizeMaxSubagentDepth(configMaxDepth) ??\n\t\tDEFAULT_SUBAGENT_MAX_DEPTH\n\t);\n}\n\nexport function resolveChildMaxSubagentDepth(parentMaxDepth: number, agentMaxDepth?: number): number {\n\tconst normalizedParent = normalizeMaxSubagentDepth(parentMaxDepth) ?? DEFAULT_SUBAGENT_MAX_DEPTH;\n\tconst normalizedAgent = normalizeMaxSubagentDepth(agentMaxDepth);\n\treturn normalizedAgent === undefined ? normalizedParent : Math.min(normalizedParent, normalizedAgent);\n}\n\nexport function checkSubagentDepth(configMaxDepth?: number): { blocked: boolean; depth: number; maxDepth: number } {\n\tconst depth = Number(process.env.PI_SUBAGENT_DEPTH ?? \"0\");\n\tconst maxDepth = resolveCurrentMaxSubagentDepth(configMaxDepth);\n\tconst blocked = Number.isFinite(depth) && depth >= maxDepth;\n\treturn { blocked, depth, maxDepth };\n}\n\nexport function getSubagentDepthEnv(maxDepth?: number): Record<string, string> {\n\tconst parentDepth = Number(process.env.PI_SUBAGENT_DEPTH ?? \"0\");\n\tconst nextDepth = Number.isFinite(parentDepth) ? parentDepth + 1 : 1;\n\treturn {\n\t\tPI_SUBAGENT_DEPTH: String(nextDepth),\n\t\tPI_SUBAGENT_MAX_DEPTH: String(normalizeMaxSubagentDepth(maxDepth) ?? resolveCurrentMaxSubagentDepth()),\n\t};\n}\n\nexport function normalizeMaxSubagentSpawnsPerSession(value: unknown): number | undefined {\n\treturn normalizeNonNegativeInteger(value);\n}\n\nexport function resolveMaxSubagentSpawnsPerSession(configMaxSpawns?: number): number | undefined {\n\tconst envMaxSpawns = normalizeMaxSubagentSpawnsPerSession(process.env.PI_SUBAGENT_MAX_SPAWNS_PER_SESSION);\n\tif (envMaxSpawns !== undefined) return envMaxSpawns === 0 ? undefined : envMaxSpawns;\n\tconst configuredMaxSpawns = normalizeMaxSubagentSpawnsPerSession(configMaxSpawns);\n\treturn configuredMaxSpawns === 0 ? undefined : configuredMaxSpawns;\n}\n\n// ============================================================================\n// Utility Functions\n// ============================================================================\n\nfunction formatBytes(bytes: number): string {\n\tif (bytes < 1024) return `${bytes}B`;\n\tif (bytes < 1024 * 1024) return `${(bytes / 1024).toFixed(1)}KB`;\n\treturn `${(bytes / (1024 * 1024)).toFixed(1)}MB`;\n}\n\nexport function truncateOutput(\n\toutput: string,\n\tconfig: Required<MaxOutputConfig>,\n\tartifactPath?: string,\n): TruncationResult {\n\tconst lines = output.split(\"\\n\");\n\tconst bytes = Buffer.byteLength(output, \"utf-8\");\n\n\tif (bytes <= config.bytes && lines.length <= config.lines) {\n\t\treturn { text: output, truncated: false };\n\t}\n\n\tlet truncatedLines = lines;\n\tif (lines.length > config.lines) {\n\t\ttruncatedLines = lines.slice(0, config.lines);\n\t}\n\n\tlet result = truncatedLines.join(\"\\n\");\n\tif (Buffer.byteLength(result, \"utf-8\") > config.bytes) {\n\t\tlet low = 0;\n\t\tlet high = result.length;\n\t\twhile (low < high) {\n\t\t\tconst mid = Math.floor((low + high + 1) / 2);\n\t\t\tif (Buffer.byteLength(result.slice(0, mid), \"utf-8\") <= config.bytes) {\n\t\t\t\tlow = mid;\n\t\t\t} else {\n\t\t\t\thigh = mid - 1;\n\t\t\t}\n\t\t}\n\t\tresult = result.slice(0, low);\n\t}\n\n\tconst keptLines = result.split(\"\\n\").length;\n\tconst marker = `[TRUNCATED: showing first ${keptLines} of ${lines.length} lines, ${formatBytes(Buffer.byteLength(result))} of ${formatBytes(bytes)}${artifactPath ? ` - full output at ${artifactPath}` : \"\"}]\\n`;\n\n\treturn {\n\t\ttext: marker + result,\n\t\ttruncated: true,\n\t\toriginalBytes: bytes,\n\t\toriginalLines: lines.length,\n\t\tartifactPath,\n\t};\n}\n"]}