UNPKG

orgo

Version:

Computers for AI agents

1 lines 75.8 kB
{"version":3,"sources":["../node_modules/tsup/assets/esm_shims.js","../src/utils/auth.ts","../src/errors.ts","../src/api/client.ts","../src/project.ts","../src/providers/anthropic.ts","../src/prompt.ts","../src/computer.ts","../src/index.ts"],"names":["response","fetch","uuidv4","Computer","Project"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAA,cAAA,GAAA,KAAA,CAAA;AAAA,EAAA,uCAAA,GAAA;AAAA,EAAA;AAAA,CAAA,CAAA;;;ACIO,SAAS,UAAU,MAAA,EAAyB;AAEjD,EAAA,IAAI,SAAA;AAGJ,EAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,OAAA,CAAQ,GAAA,EAAK;AACjD,IAAA,SAAA,GAAa,QAAgB,GAAA,CAAI,YAAA;AAAA,EACnC,CAAA,MAAA,IAES,OAAO,MAAA,KAAW,WAAA,IAAgB,OAAe,YAAA,EAAc;AACtE,IAAA,SAAA,GAAa,MAAA,CAAe,YAAA;AAAA,EAC9B;AAEA,EAAA,MAAM,MAAM,MAAA,IAAU,SAAA;AAEtB,EAAA,IAAI,CAAC,GAAA,EAAK;AACR,IAAA,MAAM,IAAI,KAAA;AAAA,MACR;AAAA,KAEF;AAAA,EACF;AAEA,EAAA,OAAO,GAAA;AACT;AA3BA,IAAA,SAAA,GAAA,KAAA,CAAA;AAAA,EAAA,mBAAA,GAAA;AAAA,IAAA,cAAA,EAAA;AAAA,EAAA;AAAA,CAAA,CAAA;;;ACAA,IAIa,WAQE,QAAA,CAAA,CAaA;AAzBf,IAAA,WAAA,GAAA,KAAA,CAAA;AAAA,EAAA,eAAA,GAAA;AAAA,IAAA,cAAA,EAAA;AAIO,IAAM,SAAA,GAAN,MAAM,UAAA,SAAkB,KAAA,CAAM;AAAA,MACjC,YAAY,OAAA,EAAiB;AAC3B,QAAA,KAAA,CAAM,OAAO,CAAA;AACb,QAAA,IAAA,CAAK,IAAA,GAAO,WAAA;AACZ,QAAA,MAAA,CAAO,cAAA,CAAe,IAAA,EAAM,UAAA,CAAU,SAAS,CAAA;AAAA,MACjD;AAAA,KACF;AAEO,IAAM,QAAA,GAAN,MAAM,SAAA,SAAiB,SAAA,CAAU;AAAA,MAItC,WAAA,CAAY,OAAA,EAAiB,UAAA,EAAqB,QAAA,EAAoB;AACpE,QAAA,KAAA,CAAM,OAAO,CAAA;AACb,QAAA,IAAA,CAAK,IAAA,GAAO,UAAA;AACZ,QAAA,IAAA,CAAK,UAAA,GAAa,UAAA;AAClB,QAAA,IAAA,CAAK,QAAA,GAAW,QAAA;AAChB,QAAA,MAAA,CAAO,cAAA,CAAe,IAAA,EAAM,SAAA,CAAS,SAAS,CAAA;AAAA,MAChD;AAAA,KACF;AAEO,IAAM,WAAA,GAAN,MAAM,YAAA,SAAoB,SAAA,CAAU;AAAA,MACzC,YAAY,OAAA,EAAiB;AAC3B,QAAA,KAAA,CAAM,OAAO,CAAA;AACb,QAAA,IAAA,CAAK,IAAA,GAAO,aAAA;AACZ,QAAA,MAAA,CAAO,cAAA,CAAe,IAAA,EAAM,YAAA,CAAY,SAAS,CAAA;AAAA,MACnD;AAAA,KACF;AAAA,EAAA;AAAA,CAAA,CAAA;AC/BF,IAmBa,SAAA;AAnBb,IAAA,WAAA,GAAA,KAAA,CAAA;AAAA,EAAA,mBAAA,GAAA;AAAA,IAAA,cAAA,EAAA;AAKA,IAAA,SAAA,EAAA;AACA,IAAA,WAAA,EAAA;AAaO,IAAM,YAAN,MAAgB;AAAA,MAKrB,WAAA,CAAY,QAAiB,OAAA,EAAkB;AAC7C,QAAA,IAAA,CAAK,MAAA,GAAS,UAAU,MAAM,CAAA;AAC9B,QAAA,IAAA,CAAK,UAAU,OAAA,IAAW,yBAAA;AAC1B,QAAA,IAAA,CAAK,OAAA,GAAU;AAAA,UACb,eAAA,EAAiB,CAAA,OAAA,EAAU,IAAA,CAAK,MAAM,CAAA,CAAA;AAAA,UACtC,cAAA,EAAgB,kBAAA;AAAA,UAChB,QAAA,EAAU;AAAA,SACZ;AAAA,MACF;AAAA,MAEA,MAAc,OAAA,CACZ,MAAA,EACA,QAAA,EACA,IAAA,EACY;AACZ,QAAA,MAAM,GAAA,GAAM,CAAA,EAAG,IAAA,CAAK,OAAO,IAAI,QAAQ,CAAA,CAAA;AAEvC,QAAA,IAAI;AACF,UAAA,MAAM,OAAA,GAAuB;AAAA,YAC3B,MAAA;AAAA,YACA,SAAS,IAAA,CAAK;AAAA,WAChB;AAEA,UAAA,IAAI,MAAA,KAAW,SAAS,IAAA,EAAM;AAC5B,YAAA,MAAM,MAAA,GAAS,IAAI,eAAA,CAAgB,IAA8B,CAAA;AACjE,YAAA,MAAM,aAAA,GAAgB,CAAA,EAAG,GAAG,CAAA,CAAA,EAAI,MAAM,CAAA,CAAA;AACtC,YAAA,MAAMA,SAAAA,GAAW,MAAMC,MAAAA,CAAM,aAAA,EAAe,OAAO,CAAA;AACnD,YAAA,OAAO,IAAA,CAAK,eAAkBD,SAAQ,CAAA;AAAA,UACxC,WAAW,IAAA,EAAM;AACf,YAAA,OAAA,CAAQ,IAAA,GAAO,IAAA,CAAK,SAAA,CAAU,IAAI,CAAA;AAAA,UACpC;AAEA,UAAA,MAAM,QAAA,GAAW,MAAMC,MAAAA,CAAM,GAAA,EAAK,OAAO,CAAA;AACzC,UAAA,OAAO,IAAA,CAAK,eAAkB,QAAQ,CAAA;AAAA,QACxC,SAAS,KAAA,EAAO;AACd,UAAA,IAAI,iBAAiB,QAAA,EAAU;AAC7B,YAAA,MAAM,KAAA;AAAA,UACR;AACA,UAAA,MAAM,IAAI,SAAS,CAAA,kBAAA,EAAqB,KAAA,YAAiB,QAAQ,KAAA,CAAM,OAAA,GAAU,eAAe,CAAA,CAAE,CAAA;AAAA,QACpG;AAAA,MACF;AAAA,MAEA,MAAc,eAAkB,QAAA,EAAgC;AAC9D,QAAA,IAAI,CAAC,SAAS,EAAA,EAAI;AAChB,UAAA,IAAI,YAAA,GAAe,CAAA,WAAA,EAAc,QAAA,CAAS,MAAM,CAAA,CAAA;AAChD,UAAA,IAAI;AACF,YAAA,MAAM,SAAA,GAAY,MAAM,QAAA,CAAS,IAAA,EAAK;AACtC,YAAA,IAAI,UAAU,KAAA,EAAO;AACnB,cAAA,YAAA,GAAe,SAAA,CAAU,KAAA;AAAA,YAC3B;AAAA,UACF,CAAA,CAAA,MAAQ;AAAA,UAER;AACA,UAAA,MAAM,IAAI,QAAA,CAAS,YAAA,EAAc,QAAA,CAAS,QAAQ,QAAQ,CAAA;AAAA,QAC5D;AAEA,QAAA,OAAO,SAAS,IAAA,EAAK;AAAA,MACvB;AAAA;AAAA,MAGA,MAAa,cAAc,IAAA,EAAoC;AAC7D,QAAA,OAAO,KAAK,OAAA,CAAqB,MAAA,EAAQ,UAAA,EAAY,EAAE,MAAM,CAAA;AAAA,MAC/D;AAAA,MAEA,MAAa,iBAAiB,IAAA,EAAoC;AAChE,QAAA,MAAM,QAAA,GAAW,MAAM,IAAA,CAAK,YAAA,EAAa;AACzC,QAAA,MAAM,UAAU,QAAA,CAAS,IAAA,CAAK,CAAA,CAAA,KAAK,CAAA,CAAE,SAAS,IAAI,CAAA;AAClD,QAAA,IAAI,CAAC,OAAA,EAAS;AACZ,UAAA,MAAM,IAAI,QAAA,CAAS,CAAA,SAAA,EAAY,IAAI,eAAe,GAAG,CAAA;AAAA,QACvD;AACA,QAAA,OAAO,OAAA;AAAA,MACT;AAAA,MAEA,MAAa,WAAW,SAAA,EAAyC;AAC/D,QAAA,OAAO,IAAA,CAAK,OAAA,CAAqB,KAAA,EAAO,CAAA,SAAA,EAAY,SAAS,CAAA,CAAE,CAAA;AAAA,MACjE;AAAA,MAEA,MAAa,YAAA,GAAuC;AAClD,QAAA,MAAM,QAAA,GAAW,MAAM,IAAA,CAAK,OAAA,CAAqC,OAAO,UAAU,CAAA;AAClF,QAAA,OAAO,QAAA,CAAS,YAAY,EAAC;AAAA,MAC/B;AAAA,MAEA,MAAa,cAAc,SAAA,EAAqC;AAC9D,QAAA,OAAO,IAAA,CAAK,OAAA,CAAQ,QAAA,EAAU,CAAA,SAAA,EAAY,SAAS,CAAA,CAAE,CAAA;AAAA,MACvD;AAAA;AAAA,MAGA,MAAa,cAAA,CACX,SAAA,EACA,YAAA,EACA,EAAA,GAA0B,OAAA,EAC1B,GAAA,GAAc,CAAA,EACd,GAAA,GAAc,CAAA,EACd,GAAA,GAAc,MAAA,EACS;AACvB,QAAA,OAAO,IAAA,CAAK,OAAA,CAAsB,MAAA,EAAQ,WAAA,EAAa;AAAA,UACrD,UAAA,EAAY,SAAA;AAAA,UACZ,IAAA,EAAM,YAAA;AAAA,UACN,EAAA;AAAA,UACA,GAAA;AAAA,UACA,GAAA;AAAA,UACA;AAAA,SACD,CAAA;AAAA,MACH;AAAA,MAEA,MAAa,cAAc,SAAA,EAA4C;AACrE,QAAA,MAAM,OAAA,GAAU,MAAM,IAAA,CAAK,UAAA,CAAW,SAAS,CAAA;AAC/C,QAAA,OAAQ,OAAA,CAAgB,YAAY,EAAC;AAAA,MACvC;AAAA,MAEA,MAAa,YAAY,UAAA,EAA2C;AAClE,QAAA,OAAO,IAAA,CAAK,OAAA,CAAsB,KAAA,EAAO,CAAA,UAAA,EAAa,UAAU,CAAA,CAAE,CAAA;AAAA,MACpE;AAAA,MAEA,MAAa,eAAe,UAAA,EAAsC;AAChE,QAAA,OAAO,IAAA,CAAK,OAAA,CAAQ,QAAA,EAAU,CAAA,UAAA,EAAa,UAAU,CAAA,CAAE,CAAA;AAAA,MACzD;AAAA,MAEA,MAAa,gBAAgB,UAAA,EAAsC;AACjE,QAAA,OAAO,IAAA,CAAK,OAAA,CAAQ,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,QAAA,CAAU,CAAA;AAAA,MAC/D;AAAA;AAAA,MAGA,MAAa,SAAA,CAAU,UAAA,EAAoB,CAAA,EAAW,CAAA,EAA6B;AACjF,QAAA,OAAO,IAAA,CAAK,OAAA,CAAQ,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,MAAA,CAAA,EAAU;AAAA,UAC3D,MAAA,EAAQ,MAAA;AAAA,UACR,CAAA;AAAA,UACA;AAAA,SACD,CAAA;AAAA,MACH;AAAA,MAEA,MAAa,UAAA,CAAW,UAAA,EAAoB,CAAA,EAAW,CAAA,EAA6B;AAClF,QAAA,OAAO,IAAA,CAAK,OAAA,CAAQ,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,MAAA,CAAA,EAAU;AAAA,UAC3D,MAAA,EAAQ,OAAA;AAAA,UACR,CAAA;AAAA,UACA;AAAA,SACD,CAAA;AAAA,MACH;AAAA,MAEA,MAAa,WAAA,CAAY,UAAA,EAAoB,CAAA,EAAW,CAAA,EAA6B;AACnF,QAAA,OAAO,IAAA,CAAK,OAAA,CAAQ,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,MAAA,CAAA,EAAU;AAAA,UAC3D,MAAA,EAAQ,MAAA;AAAA,UACR,CAAA;AAAA,UACA,CAAA;AAAA,UACA,MAAA,EAAQ;AAAA,SACT,CAAA;AAAA,MACH;AAAA,MAEA,MAAa,IAAA,CACX,UAAA,EACA,MAAA,EACA,MAAA,EACA,MACA,IAAA,EACA,MAAA,GAA2B,MAAA,EAC3B,QAAA,GAAmB,GAAA,EACD;AAClB,QAAA,OAAO,IAAA,CAAK,OAAA,CAAQ,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,KAAA,CAAA,EAAS;AAAA,UAC1D,OAAA,EAAS,MAAA;AAAA,UACT,OAAA,EAAS,MAAA;AAAA,UACT,KAAA,EAAO,IAAA;AAAA,UACP,KAAA,EAAO,IAAA;AAAA,UACP,MAAA;AAAA,UACA;AAAA,SACD,CAAA;AAAA,MACH;AAAA,MAEA,MAAa,MAAA,CAAO,UAAA,EAAoB,SAAA,EAAmB,SAAiB,CAAA,EAAqB;AAC/F,QAAA,OAAO,IAAA,CAAK,OAAA,CAAQ,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,OAAA,CAAA,EAAW;AAAA,UAC5D,SAAA;AAAA,UACA;AAAA,SACD,CAAA;AAAA,MACH;AAAA,MAEA,MAAa,QAAA,CAAS,UAAA,EAAoB,IAAA,EAAgC;AACxE,QAAA,OAAO,IAAA,CAAK,OAAA,CAAQ,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,KAAA,CAAA,EAAS;AAAA,UAC1D;AAAA,SACD,CAAA;AAAA,MACH;AAAA,MAEA,MAAa,QAAA,CAAS,UAAA,EAAoB,GAAA,EAA+B;AACvE,QAAA,OAAO,IAAA,CAAK,OAAA,CAAQ,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,IAAA,CAAA,EAAQ;AAAA,UACzD;AAAA,SACD,CAAA;AAAA,MACH;AAAA,MAEA,MAAa,cAAc,UAAA,EAAiD;AAC1E,QAAA,OAAO,IAAA,CAAK,OAAA,CAA4B,KAAA,EAAO,CAAA,UAAA,EAAa,UAAU,CAAA,WAAA,CAAa,CAAA;AAAA,MACrF;AAAA,MAEA,MAAa,WAAA,CAAY,UAAA,EAAoB,OAAA,EAAwC;AACnF,QAAA,OAAO,IAAA,CAAK,OAAA,CAAsB,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,KAAA,CAAA,EAAS;AAAA,UACxE;AAAA,SACD,CAAA;AAAA,MACH;AAAA,MAEA,MAAa,aAAA,CAAc,UAAA,EAAoB,IAAA,EAAc,UAAkB,EAAA,EAA2B;AACxG,QAAA,OAAO,IAAA,CAAK,OAAA,CAAsB,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,KAAA,CAAA,EAAS;AAAA,UACxE,IAAA;AAAA,UACA;AAAA,SACD,CAAA;AAAA,MACH;AAAA,MAEA,MAAa,IAAA,CAAK,UAAA,EAAoB,OAAA,EAAmC;AACvE,QAAA,OAAO,IAAA,CAAK,OAAA,CAAQ,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,KAAA,CAAA,EAAS;AAAA,UAC1D,QAAA,EAAU;AAAA,SACX,CAAA;AAAA,MACH;AAAA;AAAA,MAGA,MAAa,WAAA,CAAY,UAAA,EAAoB,cAAA,EAAsD;AACjG,QAAA,OAAO,IAAA,CAAK,OAAA,CAA6B,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,aAAA,CAAA,EAAiB;AAAA,UACvF,eAAA,EAAiB;AAAA,SAClB,CAAA;AAAA,MACH;AAAA,MAEA,MAAa,WAAW,UAAA,EAAiD;AACvE,QAAA,OAAO,IAAA,CAAK,OAAA,CAA4B,MAAA,EAAQ,CAAA,UAAA,EAAa,UAAU,CAAA,YAAA,CAAc,CAAA;AAAA,MACvF;AAAA,MAEA,MAAa,gBAAgB,UAAA,EAAmD;AAC9E,QAAA,OAAO,IAAA,CAAK,OAAA,CAA8B,KAAA,EAAO,CAAA,UAAA,EAAa,UAAU,CAAA,cAAA,CAAgB,CAAA;AAAA,MAC1F;AAAA,KACF;AAAA,EAAA;AAAA,CAAA,CAAA;;;ACvPA,IAAA,eAAA,GAAA,EAAA;AAAA,QAAA,CAAA,eAAA,EAAA;AAAA,EAAA,OAAA,EAAA,MAAA;AAAA,CAAA,CAAA;AAAA,IASa;AATb,IAAA,YAAA,GAAA,KAAA,CAAA;AAAA,EAAA,gBAAA,GAAA;AAAA,IAAA,cAAA,EAAA;AAIA,IAAA,WAAA,EAAA;AAGA,IAAA,SAAA,EAAA;AAEO,IAAM,OAAA,GAAN,MAAM,QAAA,CAAQ;AAAA,MAQX,WAAA,CACN,IAAA,EACA,MAAA,EACA,UAAA,EACA;AACA,QAAA,IAAA,CAAK,IAAA,GAAO,IAAA;AACZ,QAAA,IAAA,CAAK,MAAA,GAAS,MAAA;AACd,QAAA,IAAA,CAAK,UAAA,GAAa,UAAA;AAClB,QAAA,IAAA,CAAK,MAAM,IAAI,SAAA,CAAU,IAAA,CAAK,MAAA,EAAQ,KAAK,UAAU,CAAA;AAAA,MACvD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAUA,aAAoB,OAAO,OAAA,EAIN;AACnB,QAAA,MAAM,MAAA,GAAS,OAAA,EAAS,MAAA,IAAU,SAAA,EAAU,IAAK,EAAA;AACjD,QAAA,MAAM,IAAA,GAAO,SAAS,IAAA,IAAQ,CAAA,QAAA,EAAWC,IAAO,CAAE,SAAA,CAAU,CAAA,EAAG,CAAC,CAAC,CAAA,CAAA;AAEjE,QAAA,MAAM,UAAU,IAAI,QAAA,CAAQ,IAAA,EAAM,MAAA,EAAQ,SAAS,UAAU,CAAA;AAC7D,QAAA,MAAM,QAAQ,kBAAA,EAAmB;AAEjC,QAAA,OAAO,OAAA;AAAA,MACT;AAAA,MAEA,MAAc,kBAAA,GAAoC;AAChD,QAAA,IAAI;AAEF,UAAA,MAAM,cAAc,MAAM,IAAA,CAAK,GAAA,CAAI,gBAAA,CAAiB,KAAK,IAAI,CAAA;AAC7D,UAAA,IAAA,CAAK,KAAK,WAAA,CAAY,EAAA;AACtB,UAAA,IAAA,CAAK,KAAA,GAAQ,WAAA;AAAA,QACf,SAAS,KAAA,EAAO;AAEd,UAAA,MAAM,cAAc,MAAM,IAAA,CAAK,GAAA,CAAI,aAAA,CAAc,KAAK,IAAI,CAAA;AAC1D,UAAA,IAAA,CAAK,KAAK,WAAA,CAAY,EAAA;AACtB,UAAA,IAAA,CAAK,KAAA,GAAQ,WAAA;AAAA,QACf;AAAA,MACF;AAAA,MAEA,IAAW,IAAA,GAAoB;AAC7B,QAAA,OAAO,IAAA,CAAK,KAAA;AAAA,MACd;AAAA,MAEA,MAAa,MAAA,GAA+B;AAC1C,QAAA,MAAM,cAAc,MAAM,IAAA,CAAK,GAAA,CAAI,UAAA,CAAW,KAAK,EAAE,CAAA;AACrD,QAAA,IAAA,CAAK,KAAA,GAAQ,WAAA;AACb,QAAA,OAAO,WAAA;AAAA,MACT;AAAA,MAEA,MAAa,OAAA,GAA4B;AACvC,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,aAAA,CAAc,IAAA,CAAK,EAAE,CAAA;AAAA,MACvC;AAAA,MAEA,MAAa,aAAA,GAAyC;AACpD,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,aAAA,CAAc,IAAA,CAAK,EAAE,CAAA;AAAA,MACvC;AAAA,MAEA,MAAa,YAAY,YAAA,EAAqD;AAC5E,QAAA,MAAM,SAAA,GAAY,MAAM,IAAA,CAAK,aAAA,EAAc;AAC3C,QAAA,IAAI,CAAC,SAAA,IAAa,SAAA,CAAU,MAAA,KAAW,CAAA,EAAG;AACxC,UAAA,OAAO,IAAA;AAAA,QACT;AAEA,QAAA,IAAI,YAAA,EAAc;AAChB,UAAA,MAAM,WAAW,SAAA,CAAU,IAAA,CAAK,CAAA,CAAA,KAAK,CAAA,CAAE,SAAS,YAAY,CAAA;AAC5D,UAAA,OAAO,QAAA,IAAY,IAAA;AAAA,QACrB;AAEA,QAAA,OAAO,SAAA,CAAU,CAAC,CAAA,IAAK,IAAA;AAAA,MACzB;AAAA,KACF;AAAA,EAAA;AAAA,CAAA,CAAA;AC/FA,IA8Ca,iBAAA;AA9Cb,IAAA,cAAA,GAAA,KAAA,CAAA;AAAA,EAAA,4BAAA,GAAA;AAAA,IAAA,cAAA,EAAA;AAKA,IAAA,WAAA,EAAA;AAyCO,IAAM,oBAAN,MAAkD;AAAA,MAGvD,WAAA,GAAc;AACZ,QAAA,IAAI;AACF,UAAA,IAAA,CAAK,SAAA,GAAY,SAAA;AAAA,QACnB,SAAS,KAAA,EAAO;AACd,UAAA,MAAM,IAAI,KAAA;AAAA,YACR;AAAA,WACF;AAAA,QACF;AAAA,MACF;AAAA,MAEA,MAAa,QAAQ,OAAA,EAAyD;AAC5E,QAAA,MAAM;AAAA,UACJ,UAAA;AAAA,UACA,WAAA;AAAA,UACA,QAAA;AAAA,UACA,MAAA,GAAS,QAAQ,GAAA,CAAI,iBAAA;AAAA,UACrB,KAAA,GAAQ,4BAAA;AAAA,UACR,YAAA,GAAe,IAAA;AAAA,UACf,aAAA,GAAgB,GAAA;AAAA,UAChB,UAAA;AAAA,UACA,WAAA;AAAA,UACA,mBAAA,GAAsB,CAAA;AAAA,UACtB,eAAA,GAAkB,KAAA;AAAA,UAClB,cAAA,GAAiB,IAAA;AAAA,UACjB,SAAA,GAAY,IAAA;AAAA,UACZ,aAAA,GAAgB;AAAA,SAClB,GAAI,OAAA;AAEJ,QAAA,IAAI,CAAC,MAAA,EAAQ;AACX,UAAA,MAAM,IAAI,KAAA;AAAA,YACR;AAAA,WACF;AAAA,QACF;AAGA,QAAA,MAAM,SAAS,IAAI,IAAA,CAAK,SAAA,CAAU,EAAE,QAAQ,CAAA;AAG5C,QAAA,MAAM,QAAA,GAA4B;AAAA,UAChC,EAAE,IAAA,EAAM,MAAA,EAAQ,OAAA,EAAS,WAAA;AAAY,SACvC;AAGA,QAAA,MAAM,YAAA,GAAe,IAAA,CAAK,eAAA,CAAgB,YAAA,EAAc,aAAa,CAAA;AAErE,QAAA,IAAI;AAEF,UAAA,MAAM,KAAA,GAAQ;AAAA,YACZ;AAAA,cACE,IAAA,EAAM,mBAAA;AAAA,cACN,IAAA,EAAM,UAAA;AAAA,cACN,gBAAA,EAAkB,YAAA;AAAA,cAClB,iBAAA,EAAmB,aAAA;AAAA,cACnB,cAAA,EAAgB;AAAA;AAClB,WACF;AAEA,UAAA,IAAI,QAAA,EAAU;AACZ,YAAA,QAAA,CAAS,UAAU,mCAAmC,CAAA;AAAA,UACxD;AAGA,UAAA,MAAM,SAAA,GAAY,IAAI,SAAA,CAAU,UAAA,EAAY,WAAW,CAAA;AAEvD,UAAA,IAAI,SAAA,GAAY,CAAA;AAChB,UAAA,IAAI,eAAA,GAAkB,CAAA;AAGtB,UAAA,OAAO,YAAY,aAAA,EAAe;AAChC,YAAA,SAAA,EAAA;AAGA,YAAA,IAAI,kBAAkB,mBAAA,EAAqB;AACzC,cAAA,IAAA,CAAK,yBAAA,CAA0B,UAAU,mBAAmB,CAAA;AAC5D,cAAA,eAAA,GAAkB,mBAAA;AAAA,YACpB;AAGA,YAAA,MAAM,aAAA,GAAyC;AAAA,cAC7C,KAAA;AAAA,cACA,UAAA,EAAY,SAAA;AAAA,cACZ,MAAA,EAAQ,YAAA;AAAA,cACR,QAAA;AAAA,cACA,KAAA;AAAA,cACA,KAAA,EAAO,CAAC,yBAAyB;AAAA,aACnC;AAGA,YAAA,IAAI,eAAA,EAAiB;AACnB,cAAA,aAAA,CAAc,QAAA,GAAW;AAAA,gBACvB,IAAA,EAAM,SAAA;AAAA,gBACN,aAAA,EAAe;AAAA,eACjB;AAAA,YACF;AAEA,YAAA,IAAI;AACF,cAAA,MAAM,WAAW,MAAM,MAAA,CAAO,IAAA,CAAK,QAAA,CAAS,OAAO,aAAoB,CAAA;AACvE,cAAA,MAAM,kBAAkB,QAAA,CAAS,OAAA;AAGjC,cAAA,MAAM,gBAAA,GAAkC;AAAA,gBACtC,IAAA,EAAM,WAAA;AAAA,gBACN,OAAA,EAAS;AAAA,eACX;AACA,cAAA,QAAA,CAAS,KAAK,gBAAgB,CAAA;AAG9B,cAAA,KAAA,MAAW,SAAS,eAAA,EAAiB;AACnC,gBAAA,IAAI,KAAA,CAAM,IAAA,KAAS,MAAA,IAAU,QAAA,EAAU;AACrC,kBAAA,QAAA,CAAS,MAAA,EAAQ,MAAM,IAAI,CAAA;AAAA,gBAC7B,CAAA,MAAA,IAAW,KAAA,CAAM,IAAA,KAAS,UAAA,IAAc,QAAA,EAAU;AAChD,kBAAA,QAAA,CAAS,UAAA,EAAY,MAAM,QAAQ,CAAA;AAAA,gBACrC,CAAA,MAAA,IAAW,KAAA,CAAM,IAAA,KAAS,UAAA,IAAc,QAAA,EAAU;AAChD,kBAAA,MAAM,UAAA,GAAa;AAAA,oBACjB,QAAQ,KAAA,CAAM,IAAA,CAAK,KAAA,CAAM,GAAG,EAAE,GAAA,EAAI;AAAA,oBAClC,GAAG,KAAA,CAAM;AAAA,mBACX;AACA,kBAAA,QAAA,CAAS,YAAY,UAAU,CAAA;AAAA,gBACjC;AAAA,cACF;AAGA,cAAA,MAAM,cAA4B,EAAC;AACnC,cAAA,KAAA,MAAW,SAAS,eAAA,EAAiB;AACnC,gBAAA,IAAI,KAAA,CAAM,SAAS,UAAA,EAAY;AAC7B,kBAAA,MAAM,MAAA,GAAS,MAAM,IAAA,CAAK,WAAA;AAAA,oBACxB,UAAA;AAAA,oBACA,KAAA,CAAM,KAAA;AAAA,oBACN,QAAA;AAAA,oBACA;AAAA,mBACF;AAEA,kBAAA,MAAM,UAAA,GAAyB;AAAA,oBAC7B,IAAA,EAAM,aAAA;AAAA,oBACN,aAAa,KAAA,CAAM,EAAA;AAAA,oBACnB,SAAS;AAAC,mBACZ;AAGA,kBAAA,IACE,OAAO,WAAW,QAAA,IAClB,MAAA,KAAW,QACX,MAAA,IAAU,MAAA,IACV,MAAA,CAAO,IAAA,KAAS,OAAA,EAChB;AACA,oBAAA,UAAA,CAAW,OAAA,GAAU,CAAC,MAAoB,CAAA;AAC1C,oBAAA,IAAI,KAAA,CAAM,KAAA,CAAM,MAAA,KAAW,YAAA,EAAc;AACvC,sBAAA,eAAA,EAAA;AAAA,oBACF;AAAA,kBACF,CAAA,MAAO;AACL,oBAAA,UAAA,CAAW,UAAU,CAAC;AAAA,sBACpB,IAAA,EAAM,MAAA;AAAA,sBACN,IAAA,EAAM,OAAO,MAAM;AAAA,qBACpB,CAAA;AAAA,kBACH;AAEA,kBAAA,WAAA,CAAY,KAAK,UAAU,CAAA;AAAA,gBAC7B;AAAA,cACF;AAGA,cAAA,IAAI,WAAA,CAAY,WAAW,CAAA,EAAG;AAC5B,gBAAA,IAAI,QAAA,EAAU;AACZ,kBAAA,QAAA,CAAS,UAAU,gBAAgB,CAAA;AAAA,gBACrC;AACA,gBAAA,OAAO,QAAA;AAAA,cACT;AAGA,cAAA,QAAA,CAAS,IAAA,CAAK;AAAA,gBACZ,IAAA,EAAM,MAAA;AAAA,gBACN,OAAA,EAAS;AAAA,eACV,CAAA;AAAA,YAEH,SAAS,KAAA,EAAO;AAEd,cAAA,IAAI,KAAA,YAAiB,SAAS,KAAA,CAAM,OAAA,CAAQ,aAAY,CAAE,QAAA,CAAS,QAAQ,CAAA,EAAG;AAC5E,gBAAA,IAAI,QAAA,EAAU;AACZ,kBAAA,QAAA,CAAS,SAAS,+CAA+C,CAAA;AAAA,gBACnE;AACA,gBAAA,IAAA,CAAK,yBAAA,CAA0B,UAAU,CAAC,CAAA;AAC1C,gBAAA;AAAA,cACF;AACA,cAAA,MAAM,KAAA;AAAA,YACR;AAAA,UACF;AAGA,UAAA,IAAI,QAAA,EAAU;AACZ,YAAA,QAAA,CAAS,QAAA,EAAU,CAAA,4BAAA,EAA+B,aAAa,CAAA,CAAA,CAAG,CAAA;AAAA,UACpE;AAEA,UAAA,OAAO,QAAA;AAAA,QAET,SAAS,KAAA,EAAO;AACd,UAAA,IAAI,QAAA,EAAU;AACZ,YAAA,QAAA,CAAS,SAAS,KAAA,YAAiB,KAAA,GAAQ,MAAM,OAAA,GAAU,MAAA,CAAO,KAAK,CAAC,CAAA;AAAA,UAC1E;AACA,UAAA,MAAM,KAAA;AAAA,QACR;AAAA,MACF;AAAA,MAEQ,eAAA,CAAgB,cAAsB,aAAA,EAA+B;AAC3E,QAAA,OAAO,CAAA;;AAAA;AAAA,2EAAA,EAGkE,YAAY,IAAI,aAAa,CAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAA,CAAA;AAAA,MAyBxG;AAAA,MAEQ,yBAAA,CAA0B,UAA2B,SAAA,EAAyB;AACpF,QAAA,MAAM,cAKD,EAAC;AAEN,QAAA,QAAA,CAAS,OAAA,CAAQ,CAAC,GAAA,EAAK,MAAA,KAAW;AAChC,UAAA,IAAI,GAAA,CAAI,SAAS,MAAA,EAAQ;AAEzB,UAAA,MAAM,UAAU,GAAA,CAAI,OAAA;AACpB,UAAA,IAAI,CAAC,KAAA,CAAM,OAAA,CAAQ,OAAO,CAAA,EAAG;AAE7B,UAAA,OAAA,CAAQ,OAAA,CAAQ,CAAC,KAAA,EAAY,UAAA,KAAe;AAC1C,YAAA,IAAI,KAAA,EAAO,SAAS,aAAA,EAAe;AAEnC,YAAA,MAAM,YAAA,GAAe,KAAA,CAAM,OAAA,IAAW,EAAC;AACvC,YAAA,YAAA,CAAa,OAAA,CAAQ,CAAC,IAAA,EAAW,OAAA,KAAoB;AACnD,cAAA,IAAI,IAAA,EAAM,IAAA,KAAS,OAAA,IAAW,IAAA,CAAK,MAAA,EAAQ;AACzC,gBAAA,WAAA,CAAY,IAAA,CAAK;AAAA,kBACf,MAAA;AAAA,kBACA,UAAA;AAAA,kBACA,cAAA,EAAgB,OAAA;AAAA,kBAChB,WAAA,EAAa;AAAA,iBACd,CAAA;AAAA,cACH;AAAA,YACF,CAAC,CAAA;AAAA,UACH,CAAC,CAAA;AAAA,QACH,CAAC,CAAA;AAGD,QAAA,IAAI,WAAA,CAAY,SAAS,SAAA,EAAW;AAClC,UAAA,MAAM,QAAA,GAAW,WAAA,CAAY,KAAA,CAAM,CAAA,EAAG,CAAC,SAAS,CAAA;AAChD,UAAA,QAAA,CAAS,OAAA,CAAQ,CAAC,EAAE,WAAA,EAAY,KAAM;AACpC,YAAA,IAAI,WAAA,CAAY,QAAQ,IAAA,EAAM;AAE5B,cAAA,WAAA,CAAY,OAAO,IAAA,GAAO,kGAAA;AAC1B,cAAA,WAAA,CAAY,OAAO,UAAA,GAAa,WAAA;AAAA,YAClC;AAAA,UACF,CAAC,CAAA;AAAA,QACH;AAAA,MACF;AAAA,MAEA,MAAc,WAAA,CACZ,UAAA,EACA,MAAA,EACA,UACA,SAAA,EAC8B;AAC9B,QAAA,MAAM,SAAS,MAAA,CAAO,MAAA;AAEtB,QAAA,IAAI,QAAA,EAAU;AACZ,UAAA,QAAA,CAAS,gBAAA,EAAkB,EAAE,MAAA,EAAQ,MAAA,EAAQ,CAAA;AAAA,QAC/C;AAEA,QAAA,IAAI;AACF,UAAA,IAAI,CAAC,SAAA,EAAW;AACd,YAAA,SAAA,GAAY,IAAI,SAAA,EAAU;AAAA,UAC5B;AAEA,UAAA,QAAQ,MAAA;AAAQ,YACd,KAAK,YAAA,EAAc;AACjB,cAAA,MAAM,QAAA,GAAW,MAAM,SAAA,CAAU,aAAA,CAAc,UAAU,CAAA;AACzD,cAAA,IAAI,QAAA,EAAU;AACZ,gBAAA,QAAA,CAAS,eAAe,EAAE,IAAA,EAAM,OAAA,EAAS,MAAA,EAAQ,cAAc,CAAA;AAAA,cACjE;AAIA,cAAA,MAAM,WAAW,QAAA,CAAS,KAAA;AAE1B,cAAA,IAAI,CAAC,QAAA,EAAU;AACb,gBAAA,MAAM,IAAI,MAAM,gCAAgC,CAAA;AAAA,cAClD;AAGA,cAAA,MAAM,WAAA,GAAc,MAAM,KAAA,CAAM,QAAQ,CAAA;AACxC,cAAA,IAAI,CAAC,YAAY,EAAA,EAAI;AACnB,gBAAA,MAAM,IAAI,KAAA,CAAM,CAAA,uBAAA,EAA0B,WAAA,CAAY,UAAU,CAAA,CAAE,CAAA;AAAA,cACpE;AAGA,cAAA,MAAM,WAAA,GAAc,MAAM,WAAA,CAAY,WAAA,EAAY;AAClD,cAAA,MAAM,SAAS,MAAA,CAAO,IAAA,CAAK,WAAW,CAAA,CAAE,SAAS,QAAQ,CAAA;AAEzD,cAAA,OAAO;AAAA,gBACL,IAAA,EAAM,OAAA;AAAA,gBACN,MAAA,EAAQ;AAAA,kBACN,IAAA,EAAM,QAAA;AAAA,kBACN,UAAA,EAAY,YAAA;AAAA,kBACZ,IAAA,EAAM;AAAA;AACR,eACF;AAAA,YACF;AAAA,YAEA,KAAK,YAAA,EAAc;AACjB,cAAA,MAAM,QAAQ,MAAA,CAAO,UAAA;AACrB,cAAA,IAAI,CAAC,KAAA,EAAO;AACV,gBAAA,MAAM,IAAI,MAAM,qCAAqC,CAAA;AAAA,cACvD;AACA,cAAA,MAAM,CAAC,CAAA,EAAG,CAAC,CAAA,GAAI,KAAA;AACf,cAAA,MAAM,SAAA,CAAU,SAAA,CAAU,UAAA,EAAY,CAAA,EAAG,CAAC,CAAA;AAC1C,cAAA,IAAI,QAAA,EAAU;AACZ,gBAAA,QAAA,CAAS,eAAe,EAAE,MAAA,EAAQ,YAAA,EAAc,CAAA,EAAG,GAAG,CAAA;AAAA,cACxD;AACA,cAAA,OAAO,CAAA,iBAAA,EAAoB,CAAC,CAAA,EAAA,EAAK,CAAC,CAAA,CAAA,CAAA;AAAA,YACpC;AAAA,YAEA,KAAK,aAAA,EAAe;AAClB,cAAA,MAAM,QAAQ,MAAA,CAAO,UAAA;AACrB,cAAA,IAAI,CAAC,KAAA,EAAO;AACV,gBAAA,MAAM,IAAI,MAAM,sCAAsC,CAAA;AAAA,cACxD;AACA,cAAA,MAAM,CAAC,CAAA,EAAG,CAAC,CAAA,GAAI,KAAA;AACf,cAAA,MAAM,SAAA,CAAU,UAAA,CAAW,UAAA,EAAY,CAAA,EAAG,CAAC,CAAA;AAC3C,cAAA,IAAI,QAAA,EAAU;AACZ,gBAAA,QAAA,CAAS,eAAe,EAAE,MAAA,EAAQ,aAAA,EAAe,CAAA,EAAG,GAAG,CAAA;AAAA,cACzD;AACA,cAAA,OAAO,CAAA,kBAAA,EAAqB,CAAC,CAAA,EAAA,EAAK,CAAC,CAAA,CAAA,CAAA;AAAA,YACrC;AAAA,YAEA,KAAK,cAAA,EAAgB;AACnB,cAAA,MAAM,QAAQ,MAAA,CAAO,UAAA;AACrB,cAAA,IAAI,CAAC,KAAA,EAAO;AACV,gBAAA,MAAM,IAAI,MAAM,uCAAuC,CAAA;AAAA,cACzD;AACA,cAAA,MAAM,CAAC,CAAA,EAAG,CAAC,CAAA,GAAI,KAAA;AACf,cAAA,MAAM,SAAA,CAAU,WAAA,CAAY,UAAA,EAAY,CAAA,EAAG,CAAC,CAAA;AAC5C,cAAA,IAAI,QAAA,EAAU;AACZ,gBAAA,QAAA,CAAS,eAAe,EAAE,MAAA,EAAQ,cAAA,EAAgB,CAAA,EAAG,GAAG,CAAA;AAAA,cAC1D;AACA,cAAA,OAAO,CAAA,mBAAA,EAAsB,CAAC,CAAA,EAAA,EAAK,CAAC,CAAA,CAAA,CAAA;AAAA,YACtC;AAAA,YAEA,KAAK,MAAA,EAAQ;AACX,cAAA,MAAM,OAAO,MAAA,CAAO,IAAA;AACpB,cAAA,IAAI,CAAC,IAAA,EAAM;AACT,gBAAA,MAAM,IAAI,MAAM,0BAA0B,CAAA;AAAA,cAC5C;AACA,cAAA,MAAM,SAAA,CAAU,QAAA,CAAS,UAAA,EAAY,IAAI,CAAA;AACzC,cAAA,IAAI,QAAA,EAAU;AACZ,gBAAA,QAAA,CAAS,aAAA,EAAe,EAAE,MAAA,EAAQ,MAAA,EAAQ,MAAM,CAAA;AAAA,cAClD;AACA,cAAA,OAAO,WAAW,IAAI,CAAA,CAAA,CAAA;AAAA,YACxB;AAAA,YAEA,KAAK,KAAA,EAAO;AACV,cAAA,IAAI,MAAM,MAAA,CAAO,IAAA;AACjB,cAAA,IAAI,CAAC,GAAA,EAAK;AACR,gBAAA,MAAM,IAAI,MAAM,4BAA4B,CAAA;AAAA,cAC9C;AAEA,cAAA,IAAI,GAAA,CAAI,WAAA,EAAY,KAAM,QAAA,EAAU;AAClC,gBAAA,GAAA,GAAM,OAAA;AAAA,cACR;AACA,cAAA,MAAM,SAAA,CAAU,QAAA,CAAS,UAAA,EAAY,GAAG,CAAA;AACxC,cAAA,IAAI,QAAA,EAAU;AACZ,gBAAA,QAAA,CAAS,aAAA,EAAe,EAAE,MAAA,EAAQ,KAAA,EAAO,KAAK,CAAA;AAAA,cAChD;AACA,cAAA,OAAO,gBAAgB,GAAG,CAAA,CAAA;AAAA,YAC5B;AAAA,YAEA,KAAK,QAAA,EAAU;AACb,cAAA,MAAM,YAAY,MAAA,CAAO,gBAAA;AACzB,cAAA,MAAM,SAAS,MAAA,CAAO,aAAA;AACtB,cAAA,IAAI,CAAC,SAAA,IAAa,MAAA,KAAW,KAAA,CAAA,EAAW;AACtC,gBAAA,MAAM,IAAI,MAAM,6CAA6C,CAAA;AAAA,cAC/D;AACA,cAAA,MAAM,SAAA,CAAU,MAAA,CAAO,UAAA,EAAY,SAAA,EAAW,MAAM,CAAA;AACpD,cAAA,IAAI,QAAA,EAAU;AACZ,gBAAA,QAAA,CAAS,eAAe,EAAE,MAAA,EAAQ,QAAA,EAAU,SAAA,EAAW,QAAQ,CAAA;AAAA,cACjE;AACA,cAAA,OAAO,CAAA,SAAA,EAAY,SAAS,CAAA,IAAA,EAAO,MAAM,CAAA,CAAA;AAAA,YAC3C;AAAA,YAEA,KAAK,MAAA,EAAQ;AACX,cAAA,MAAM,QAAA,GAAY,OAAO,QAAA,IAAuB,CAAA;AAChD,cAAA,MAAM,SAAA,CAAU,IAAA,CAAK,UAAA,EAAY,QAAQ,CAAA;AACzC,cAAA,IAAI,QAAA,EAAU;AACZ,gBAAA,QAAA,CAAS,aAAA,EAAe,EAAE,MAAA,EAAQ,MAAA,EAAQ,UAAU,CAAA;AAAA,cACtD;AACA,cAAA,OAAO,cAAc,QAAQ,CAAA,UAAA,CAAA;AAAA,YAC/B;AAAA,YAEA,SAAS;AACP,cAAA,MAAM,KAAA,GAAQ,uBAAuB,MAAM,CAAA,CAAA;AAC3C,cAAA,IAAI,QAAA,EAAU;AACZ,gBAAA,QAAA,CAAS,SAAS,KAAK,CAAA;AAAA,cACzB;AACA,cAAA,MAAM,IAAI,MAAM,KAAK,CAAA;AAAA,YACvB;AAAA;AACF,QACF,SAAS,KAAA,EAAO;AACd,UAAA,MAAM,QAAA,GAAW,CAAA,gBAAA,EAAmB,MAAM,CAAA,EAAA,EAAK,KAAA,YAAiB,QAAQ,KAAA,CAAM,OAAA,GAAU,MAAA,CAAO,KAAK,CAAC,CAAA,CAAA;AACrG,UAAA,IAAI,QAAA,EAAU;AACZ,YAAA,QAAA,CAAS,SAAS,QAAQ,CAAA;AAAA,UAC5B;AACA,UAAA,OAAO,UAAU,QAAQ,CAAA,CAAA;AAAA,QAC3B;AAAA,MACF;AAAA,KACF;AAAA,EAAA;AAAA,CAAA,CAAA;;;AC/bO,SAAS,WAAA,CAAY,eAAuB,WAAA,EAA6B;AAC9E,EAAA,MAAM,aAAA,GAAgB,iBAAiB,YAAY,CAAA;AAEnD,EAAA,IAAI,CAAC,aAAA,EAAe;AAClB,IAAA,MAAM,YAAY,MAAA,CAAO,IAAA,CAAK,gBAAgB,CAAA,CAAE,KAAK,IAAI,CAAA;AACzD,IAAA,MAAM,IAAI,KAAA,CAAM,CAAA,kBAAA,EAAqB,YAAY,CAAA,uBAAA,EAA0B,SAAS,CAAA,CAAE,CAAA;AAAA,EACxF;AAEA,EAAA,OAAO,IAAI,aAAA,EAAc;AAC3B;AA7CA,IA+BM,gBAAA;AA/BN,IAAA,WAAA,GAAA,KAAA,CAAA;AAAA,EAAA,eAAA,GAAA;AAAA,IAAA,cAAA,EAAA;AA4BA,IAAA,cAAA,EAAA;AAGA,IAAM,gBAAA,GAA6D;AAAA,MACjE,SAAA,EAAW;AAAA;AAAA,KAEb;AAAA,EAAA;AAAA,CAAA,CAAA;;;AClCA,IAAA,gBAAA,GAAA,EAAA;AAAA,QAAA,CAAA,gBAAA,EAAA;AAAA,EAAA,QAAA,EAAA,MAAA;AAAA,CAAA,CAAA;AAAA,IAoBa;AApBb,IAAA,aAAA,GAAA,KAAA,CAAA;AAAA,EAAA,iBAAA,GAAA;AAAA,IAAA,cAAA,EAAA;AAIA,IAAA,WAAA,EAAA;AACA,IAAA,YAAA,EAAA;AACA,IAAA,WAAA,EAAA;AAcO,IAAM,QAAA,GAAN,MAAM,SAAA,CAAS;AAAA,MAeZ,WAAA,CACN,MAAA,EACA,UAAA,EACA,EAAA,GAA0B,OAAA,EAC1B,MAAoC,CAAA,EACpC,GAAA,GAA0B,CAAA,EAC1B,GAAA,GAA2D,MAAA,EAC3D;AACA,QAAA,IAAA,CAAK,MAAA,GAAS,MAAA;AACd,QAAA,IAAA,CAAK,UAAA,GAAa,UAAA;AAClB,QAAA,IAAA,CAAK,MAAM,IAAI,SAAA,CAAU,IAAA,CAAK,MAAA,EAAQ,KAAK,UAAU,CAAA;AACrD,QAAA,IAAA,CAAK,EAAA,GAAK,EAAA;AACV,QAAA,IAAA,CAAK,GAAA,GAAM,GAAA;AACX,QAAA,IAAA,CAAK,GAAA,GAAM,GAAA;AACX,QAAA,IAAA,CAAK,GAAA,GAAM,GAAA;AAAA,MACb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAiBA,aAAoB,OAAO,OAAA,EAWL;AAEpB,QAAA,IAAI,SAAA,GAAY,EAAA;AAChB,QAAA,IAAI,OAAO,OAAA,KAAY,WAAA,IAAe,QAAQ,GAAA,IAAO,OAAA,CAAQ,IAAI,YAAA,EAAc;AAC7E,UAAA,SAAA,GAAY,QAAQ,GAAA,CAAI,YAAA;AAAA,QAC1B;AAEA,QAAA,MAAM,MAAA,GAAS,OAAA,EAAS,MAAA,IAAU,SAAA,IAAa,EAAA;AAG/C,QAAA,IAAI,MAAM,OAAA,EAAS,GAAA;AACnB,QAAA,IAAI,GAAA,KAAQ,MAAA,IAAa,OAAA,EAAS,MAAA,KAAW,MAAA,EAAW;AACtD,UAAA,GAAA,GAAM,OAAA,CAAQ,MAAA;AAAA,QAChB;AAEA,QAAA,MAAM,WAAW,IAAI,SAAA;AAAA,UACnB,MAAA;AAAA,UACA,OAAA,EAAS,UAAA;AAAA,UACT,SAAS,EAAA,IAAM,OAAA;AAAA,UACf,GAAA,IAAO,CAAA;AAAA,UACP,SAAS,GAAA,IAAO,CAAA;AAAA,UAChB,SAAS,GAAA,IAAO;AAAA,SAClB;AAEA,QAAA,IAAI,SAAS,UAAA,EAAY;AAEvB,UAAA,QAAA,CAAS,aAAa,OAAA,CAAQ,UAAA;AAC9B,UAAA,QAAA,CAAS,OAAO,OAAA,CAAQ,IAAA;AACxB,UAAA,OAAA,CAAQ,IAAA,CAAK,CAAA,0BAAA,EAA6B,QAAA,CAAS,UAAU,CAAA,CAAE,CAAA;AAAA,QACjE,CAAA,MAAA,IAAW,SAAS,OAAA,EAAS;AAE3B,UAAA,IAAI,OAAO,OAAA,CAAQ,OAAA,KAAY,QAAA,EAAU;AAEvC,YAAA,MAAM,QAAA,CAAS,0BAAA,CAA2B,OAAA,CAAQ,OAAA,EAAS,SAAS,IAAI,CAAA;AAAA,UAC1E,CAAA,MAAA,IAAW,OAAA,CAAQ,OAAA,YAAmB,OAAA,EAAS;AAE7C,YAAA,MAAM,QAAA,CAAS,8BAAA,CAA+B,OAAA,CAAQ,OAAA,EAAS,SAAS,IAAI,CAAA;AAAA,UAC9E,CAAA,MAAO;AACL,YAAA,MAAM,IAAI,MAAM,6DAA6D,CAAA;AAAA,UAC/E;AAAA,QACF,CAAA,MAAO;AAEL,UAAA,MAAM,QAAA,CAAS,4BAAA,CAA6B,OAAA,EAAS,IAAI,CAAA;AAAA,QAC3D;AAEA,QAAA,OAAO,QAAA;AAAA,MACT;AAAA,MAEA,MAAc,0BAAA,CAA2B,WAAA,EAAqB,YAAA,EAAsC;AAClG,QAAA,IAAA,CAAK,WAAA,GAAc,WAAA;AAEnB,QAAA,IAAI;AAEF,UAAA,MAAM,OAAA,GAAU,MAAM,IAAA,CAAK,GAAA,CAAI,iBAAiB,WAAW,CAAA;AAC3D,UAAA,IAAA,CAAK,YAAY,OAAA,CAAQ,EAAA;AAGzB,UAAA,MAAM,YAAY,MAAM,IAAA,CAAK,GAAA,CAAI,aAAA,CAAc,KAAK,SAAS,CAAA;AAE7D,UAAA,IAAI,YAAA,EAAc;AAEhB,YAAA,MAAM,WAAW,SAAA,CAAU,IAAA,CAAK,CAAA,CAAA,KAAK,CAAA,CAAE,SAAS,YAAY,CAAA;AAC5D,YAAA,IAAI,QAAA,EAAU;AACZ,cAAA,MAAM,IAAA,CAAK,2BAA2B,QAAQ,CAAA;AAAA,YAChD,CAAA,MAAO;AAEL,cAAA,MAAM,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAK,SAAA,EAAW,YAAY,CAAA;AAAA,YACzD;AAAA,UACF,CAAA,MAAA,IAAW,SAAA,CAAU,MAAA,GAAS,CAAA,EAAG;AAE/B,YAAA,MAAM,aAAA,GAAgB,UAAU,CAAC,CAAA;AACjC,YAAA,IAAI,aAAA,EAAe;AACjB,cAAA,MAAM,IAAA,CAAK,2BAA2B,aAAa,CAAA;AAAA,YACrD,CAAA,MAAO;AAEL,cAAA,MAAM,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAK,SAAA,EAAW,YAAY,CAAA;AAAA,YACzD;AAAA,UACF,CAAA,MAAO;AAEL,YAAA,MAAM,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAK,SAAA,EAAW,YAAY,CAAA;AAAA,UACzD;AAAA,QACF,SAAS,KAAA,EAAO;AAEd,UAAA,OAAA,CAAQ,IAAA,CAAK,CAAA,QAAA,EAAW,WAAW,CAAA,gCAAA,CAAkC,CAAA;AACrE,UAAA,MAAM,OAAA,GAAU,MAAM,IAAA,CAAK,GAAA,CAAI,cAAc,WAAW,CAAA;AACxD,UAAA,IAAA,CAAK,YAAY,OAAA,CAAQ,EAAA;AACzB,UAAA,MAAM,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAK,SAAA,EAAW,YAAY,CAAA;AAAA,QACzD;AAAA,MACF;AAAA,MAEA,MAAc,8BAAA,CAA+B,OAAA,EAAkB,YAAA,EAAsC;AACnG,QAAA,IAAA,CAAK,cAAc,OAAA,CAAQ,IAAA;AAC3B,QAAA,IAAA,CAAK,YAAY,OAAA,CAAQ,EAAA;AAEzB,QAAA,MAAM,SAAA,GAAY,MAAM,OAAA,CAAQ,aAAA,EAAc;AAE9C,QAAA,IAAI,YAAA,EAAc;AAEhB,UAAA,MAAM,WAAW,SAAA,CAAU,IAAA,CAAK,CAAA,CAAA,KAAK,CAAA,CAAE,SAAS,YAAY,CAAA;AAC5D,UAAA,IAAI,QAAA,EAAU;AACZ,YAAA,MAAM,IAAA,CAAK,2BAA2B,QAAQ,CAAA;AAAA,UAChD,CAAA,MAAO;AAEL,YAAA,MAAM,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAK,SAAA,EAAW,YAAY,CAAA;AAAA,UACzD;AAAA,QACF,CAAA,MAAA,IAAW,SAAA,CAAU,MAAA,GAAS,CAAA,EAAG;AAE/B,UAAA,MAAM,aAAA,GAAgB,UAAU,CAAC,CAAA;AACjC,UAAA,IAAI,aAAA,EAAe;AACjB,YAAA,MAAM,IAAA,CAAK,2BAA2B,aAAa,CAAA;AAAA,UACrD,CAAA,MAAO;AAEL,YAAA,MAAM,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAK,SAAA,EAAW,YAAY,CAAA;AAAA,UACzD;AAAA,QACF,CAAA,MAAO;AAEL,UAAA,MAAM,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAK,SAAA,EAAW,YAAY,CAAA;AAAA,QACzD;AAAA,MACF;AAAA,MAEA,MAAc,6BAA6B,YAAA,EAAsC;AAE/E,QAAA,MAAM,cAAc,CAAA,QAAA,EAAWA,EAAAA,GAAS,SAAA,CAAU,CAAA,EAAG,CAAC,CAAC,CAAA,CAAA;AAGvD,QAAA,MAAM,OAAA,GAAU,MAAM,IAAA,CAAK,GAAA,CAAI,cAAc,WAAW,CAAA;AACxD,QAAA,IAAA,CAAK,YAAY,OAAA,CAAQ,EAAA;AACzB,QAAA,IAAA,CAAK,WAAA,GAAc,WAAA;AAGnB,QAAA,MAAM,IAAA,CAAK,eAAA,CAAgB,IAAA,CAAK,SAAA,EAAW,YAAY,CAAA;AAAA,MACzD;AAAA,MAEA,MAAc,2BAA2B,YAAA,EAA2C;AAClF,QAAA,IAAA,CAAK,aAAa,YAAA,CAAa,EAAA;AAC/B,QAAA,IAAA,CAAK,OAAO,YAAA,CAAa,IAAA;AACzB,QAAA,OAAA,CAAQ,KAAK,CAAA,+BAAA,EAAkC,IAAA,CAAK,IAAI,CAAA,MAAA,EAAS,IAAA,CAAK,UAAU,CAAA,CAAA,CAAG,CAAA;AAAA,MACrF;AAAA,MAEA,MAAc,eAAA,CAAgB,SAAA,EAAmB,YAAA,EAAsC;AAErF,QAAA,IAAI,CAAC,YAAA,EAAc;AACjB,UAAA,YAAA,GAAe,WAAWA,EAAAA,EAAO,CAAE,SAAA,CAAU,CAAA,EAAG,CAAC,CAAC,CAAA,CAAA;AAAA,QACpD;AAEA,QAAA,IAAA,CAAK,IAAA,GAAO,YAAA;AAGZ,QAAA,MAAM,QAAA,GAAW,CAAC,CAAA,EAAG,CAAA,EAAG,GAAG,CAAA,EAAG,EAAA,EAAI,IAAI,EAAE,CAAA;AACxC,QAAA,MAAM,WAAW,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,EAAG,GAAG,EAAE,CAAA;AAChC,QAAA,MAAM,OAAA,GAAU,CAAC,OAAA,EAAS,SAAS,CAAA;AACnC,QAAA,MAAM,WAAW,CAAC,MAAA,EAAQ,KAAA,EAAO,MAAA,EAAQ,aAAa,WAAW,CAAA;AAEjE,QAAA,IAAI,CAAC,QAAA,CAAS,QAAA,CAAS,IAAA,CAAK,GAAG,CAAA,EAAG;AAChC,UAAA,MAAM,IAAI,KAAA,CAAM,CAAA,oBAAA,EAAuB,SAAS,IAAA,CAAK,IAAI,CAAC,CAAA,GAAA,CAAK,CAAA;AAAA,QACjE;AACA,QAAA,IAAI,CAAC,QAAA,CAAS,QAAA,CAAS,IAAA,CAAK,GAAG,CAAA,EAAG;AAChC,UAAA,MAAM,IAAI,KAAA,CAAM,CAAA,oBAAA,EAAuB,SAAS,IAAA,CAAK,IAAI,CAAC,CAAA,MAAA,CAAQ,CAAA;AAAA,QACpE;AACA,QAAA,IAAI,CAAC,OAAA,CAAQ,QAAA,CAAS,IAAA,CAAK,EAAE,CAAA,EAAG;AAC9B,UAAA,MAAM,IAAI,MAAM,CAAA,sCAAA,CAAwC,CAAA;AAAA,QAC1D;AACA,QAAA,IAAI,CAAC,QAAA,CAAS,QAAA,CAAS,IAAA,CAAK,GAAG,CAAA,EAAG;AAChC,UAAA,MAAM,IAAI,KAAA,CAAM,CAAA,oBAAA,EAAuB,SAAS,IAAA,CAAK,IAAI,CAAC,CAAA,CAAE,CAAA;AAAA,QAC9D;AAEA,QAAA,MAAM,QAAA,GAAW,MAAM,IAAA,CAAK,GAAA,CAAI,cAAA;AAAA,UAC9B,SAAA;AAAA,UACA,YAAA;AAAA,UACA,IAAA,CAAK,EAAA;AAAA,UACL,IAAA,CAAK,GAAA;AAAA,UACL,IAAA,CAAK,GAAA;AAAA,UACL,IAAA,CAAK;AAAA,SACP;AAEA,QAAA,IAAA,CAAK,aAAa,QAAA,CAAS,EAAA;AAC3B,QAAA,OAAA,CAAQ,KAAK,CAAA,qBAAA,EAAwB,IAAA,CAAK,IAAI,CAAA,MAAA,EAAS,IAAA,CAAK,UAAU,CAAA,CAAA,CAAG,CAAA;AAAA,MAC3E;AAAA,MAEA,MAAa,MAAA,GAAgC;AAC3C,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,WAAA,CAAY,IAAA,CAAK,UAAU,CAAA;AAAA,MAC7C;AAAA,MAEA,MAAa,OAAA,GAA4B;AACvC,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,eAAA,CAAgB,IAAA,CAAK,UAAU,CAAA;AAAA,MACjD;AAAA,MAEA,MAAa,OAAA,GAA4B;AACvC,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,cAAA,CAAe,IAAA,CAAK,UAAU,CAAA;AAAA,MAChD;AAAA;AAAA,MAGA,MAAa,SAAA,CAAU,CAAA,EAAW,CAAA,EAA6B;AAC7D,QAAA,OAAO,KAAK,GAAA,CAAI,SAAA,CAAU,IAAA,CAAK,UAAA,EAAY,GAAG,CAAC,CAAA;AAAA,MACjD;AAAA,MAEA,MAAa,UAAA,CAAW,CAAA,EAAW,CAAA,EAA6B;AAC9D,QAAA,OAAO,KAAK,GAAA,CAAI,UAAA,CAAW,IAAA,CAAK,UAAA,EAAY,GAAG,CAAC,CAAA;AAAA,MAClD;AAAA,MAEA,MAAa,WAAA,CAAY,CAAA,EAAW,CAAA,EAA6B;AAC/D,QAAA,OAAO,KAAK,GAAA,CAAI,WAAA,CAAY,IAAA,CAAK,UAAA,EAAY,GAAG,CAAC,CAAA;AAAA,MACnD;AAAA,MAEA,MAAa,KACX,MAAA,EACA,MAAA,EACA,MACA,IAAA,EACA,MAAA,GAA2B,MAAA,EAC3B,QAAA,GAAmB,GAAA,EACD;AAClB,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,IAAA,CAAK,IAAA,CAAK,UAAA,EAAY,QAAQ,MAAA,EAAQ,IAAA,EAAM,IAAA,EAAM,MAAA,EAAQ,QAAQ,CAAA;AAAA,MACpF;AAAA,MAEA,MAAa,MAAA,CAAO,SAAA,GAAwC,MAAA,EAAQ,SAAiB,CAAA,EAAqB;AACxG,QAAA,OAAO,KAAK,GAAA,CAAI,MAAA,CAAO,IAAA,CAAK,UAAA,EAAY,WAAW,MAAM,CAAA;AAAA,MAC3D;AAAA;AAAA,MAGA,MAAa,KAAK,IAAA,EAAgC;AAChD,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,QAAA,CAAS,IAAA,CAAK,YAAY,IAAI,CAAA;AAAA,MAChD;AAAA,MAEA,MAAa,IAAI,GAAA,EAA+B;AAC9C,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,QAAA,CAAS,IAAA,CAAK,YAAY,GAAG,CAAA;AAAA,MAC/C;AAAA;AAAA,MAGA,MAAa,WAAW,OAAA,EAAuD;AAC7E,QAAA,MAAM,WAAW,MAAM,IAAA,CAAK,GAAA,CAAI,aAAA,CAAc,KAAK,UAAU,CAAA;AAC7D,QAAA,MAAM,SAAA,GAAY,SAAS,KAAA,IAAS,EAAA;AAEpC,QAAA,IAAI,UAAU,UAAA,CAAW,SAAS,KAAK,SAAA,CAAU,UAAA,CAAW,UAAU,CAAA,EAAG;AACvE,UAAA,MAAMD,MAAAA,GAAAA,CAAS,MAAM,OAAO,aAAa,CAAA,EAAG,OAAA;AAC5C,UAAA,MAAM,WAAA,GAAc,MAAMA,MAAAA,CAAM,SAAS,CAAA;AACzC,UAAA,IAAI,CAAC,YAAY,EAAA,EAAI;AACnB,YAAA,MAAM,IAAI,KAAA,CAAM,CAAA,+BAAA,EAAkC,WAAA,CAAY,UAAU,CAAA,CAAE,CAAA;AAAA,UAC5E;AACA,UAAA,MAAM,WAAA,GAAc,MAAM,WAAA,CAAY,WAAA,EAAY;AAClD,UAAA,MAAM,MAAA,GAAS,MAAA,CAAO,IAAA,CAAK,WAAW,CAAA;AAEtC,UAAA,IAAI,OAAA,EAAS,WAAW,QAAA,EAAU;AAChC,YAAA,OAAO,MAAA,CAAO,SAAS,QAAQ,CAAA;AAAA,UACjC;AACA,UAAA,OAAO,MAAA;AAAA,QACT,CAAA,MAAO;AACL,UAAA,IAAI,OAAA,EAAS,WAAW,QAAA,EAAU;AAChC,YAAA,OAAO,SAAA;AAAA,UACT;AACA,UAAA,OAAO,MAAA,CAAO,IAAA,CAAK,SAAA,EAAW,QAAQ,CAAA;AAAA,QACxC;AAAA,MACF;AAAA,MAEA,MAAa,gBAAA,GAAoC;AAC/C,QAAA,OAAO,IAAA,CAAK,UAAA,CAAW,EAAE,MAAA,EAAQ,UAAU,CAAA;AAAA,MAC7C;AAAA;AAAA,MAGA,MAAa,KAAK,OAAA,EAAkC;AAClD,QAAA,MAAM,WAAW,MAAM,IAAA,CAAK,IAAI,WAAA,CAAY,IAAA,CAAK,YAAY,OAAO,CAAA;AACpE,QAAA,OAAO,SAAS,MAAA,IAAU,EAAA;AAAA,MAC5B;AAAA,MAEA,MAAa,IAAA,CAAK,IAAA,EAAc,OAAA,GAAkB,EAAA,EAA2B;AAC3E,QAAA,OAAO,KAAK,GAAA,CAAI,aAAA,CAAc,IAAA,CAAK,UAAA,EAAY,MAAM,OAAO,CAAA;AAAA,MAC9D;AAAA,MAEA,MAAa,KAAK,OAAA,EAAmC;AACnD,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,IAAA,CAAK,IAAA,CAAK,YAAY,OAAO,CAAA;AAAA,MAC/C;AAAA;AAAA,MAGA,MAAa,YAAY,UAAA,EAAkD;AACzE,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,WAAA,CAAY,IAAA,CAAK,YAAY,UAAU,CAAA;AAAA,MACzD;AAAA,MAEA,MAAa,UAAA,GAA0C;AACrD,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,UAAA,CAAW,IAAA,CAAK,UAAU,CAAA;AAAA,MAC5C;AAAA,MAEA,MAAa,YAAA,GAA8C;AACzD,QAAA,OAAO,IAAA,CAAK,GAAA,CAAI,eAAA,CAAgB,IAAA,CAAK,UAAU,CAAA;AAAA,MACjD;AAAA;AAAA,MAGA,MAAa,OAAO,OAAA,EAAkD;AACpE,QAAA,MAAM,gBAAA,GAAmB,WAAA,CAAY,OAAA,CAAQ,QAAA,IAAY,WAAW,CAAA;AAEpE,QAAA,OAAO,iBAAiB,OAAA,CAAQ;AAAA,UAC9B,YAAY,IAAA,CAAK,UAAA;AAAA,UACjB,aAAa,OAAA,CAAQ,WAAA;AAAA,UACrB,UAAU,OAAA,CAAQ,QAAA;AAAA,UAClB,QAAQ,OAAA,CAAQ,MAAA;AAAA,UAChB,KAAA,EAAO,QAAQ,KAAA,IAAS,4BAAA;AAAA,UACxB,YAAA,EAAc,QAAQ,YAAA,IAAgB,IAAA;AAAA,UACtC,aAAA,EAAe,QAAQ,aAAA,IAAiB,GAAA;AAAA,UACxC,eAAA,EAAiB,QAAQ,eAAA,IAAmB,KAAA;AAAA,UAC5C,cAAA,EAAgB,QAAQ,cAAA,IAAkB,IAAA;AAAA,UAC1C,SAAA,EAAW,QAAQ,SAAA,IAAa,IAAA;AAAA,UAChC,aAAA,EAAe,QAAQ,aAAA,IAAiB,EAAA;AAAA,UACxC,mBAAA,EAAqB,QAAQ,mBAAA,IAAuB,CAAA;AAAA,UACpD,YAAY,IAAA,CAAK,MAAA;AAAA,UACjB,aAAa,IAAA,CAAK;AAAA,SACnB,CAAA;AAAA,MACH;AAAA,KACF;AAAA,EAAA;AAAA,CAAA,CAAA;;;AChYA,cAAA,EAAA;AAIA,YAAA,EAAA;AACA,aAAA,EAAA;AAWA,WAAA,EAAA;AAGA,eAAsB,eAAe,OAAA,EAKlC;AACD,EAAA,MAAM,EAAE,QAAA,EAAAE,SAAAA,EAAS,GAAI,MAAM,OAAA,CAAA,OAAA,EAAA,CAAA,IAAA,CAAA,OAAA,aAAA,EAAA,EAAA,gBAAA,CAAA,CAAA;AAG3B,EAAA,IAAI,eAAA,GAAuB;AAAA,IACzB,QAAQ,OAAA,EAAS,MAAA;AAAA,IACjB,YAAY,OAAA,EAAS;AAAA,GACvB;AAGA,EAAA,IAAI,SAAS,SAAA,EAAW;AACtB,IAAA,eAAA,CAAgB,UAAU,OAAA,CAAQ,SAAA;AAAA,EACpC;AAGA,EAAA,IAAI,SAAS,MAAA,EAAQ;AACnB,IAAA,IAAI,KAAA,IAAS,QAAQ,MAAA,EAAQ;AAC3B,MAAA,eAAA,CAAgB,GAAA,GAAM,QAAQ,MAAA,CAAO,GAAA;AAAA,IACvC;AACA,IAAA,IAAI,KAAA,IAAS,QAAQ,MAAA,EAAQ;AAC3B,MAAA,eAAA,CAAgB,GAAA,GAAM,QAAQ,MAAA,CAAO,GAAA;AAAA,IACvC;AACA,IAAA,IAAI,IAAA,IAAQ,QAAQ,MAAA,EAAQ;AAC1B,MAAA,eAAA,CAAgB,EAAA,GAAK,QAAQ,MAAA,CAAO,EAAA;AAAA,IACtC;AACA,IAAA,IAAI,KAAA,IAAS,QAAQ,MAAA,EAAQ;AAC3B,MAAA,eAAA,CAAgB,GAAA,GAAM,QAAQ,MAAA,CAAO,GAAA;AAAA,IACvC;AAAA,EACF;AAEA,EAAA,OAAOA,SAAAA,CAAS,OAAO,eAAe,CAAA;AACxC;AAGA,eAAsB,cAAc,OAAA,EAIjC;AACD,EAAA,MAAM,EAAE,OAAA,EAAAC,QAAAA,EAAQ,GAAI,MAAM,OAAA,CAAA,OAAA,EAAA,CAAA,IAAA,CAAA,OAAA,YAAA,EAAA,EAAA,eAAA,CAAA,CAAA;AAC1B,EAAA,OAAOA,QAAAA,CAAQ,OAAO,OAAO,CAAA;AAC/B","file":"index.mjs","sourcesContent":["// Shim globals in esm bundle\nimport path from 'node:path'\nimport { fileURLToPath } from 'node:url'\n\nconst getFilename = () => fileURLToPath(import.meta.url)\nconst getDirname = () => path.dirname(getFilename())\n\nexport const __dirname = /* @__PURE__ */ getDirname()\nexport const __filename = /* @__PURE__ */ getFilename()\n","/**\n * Authentication utilities for Orgo SDK\n */\n\nexport function getApiKey(apiKey?: string): string {\n // Safe environment variable access\n let envApiKey: string | undefined;\n \n // Check if we're in Node.js environment\n if (typeof process !== 'undefined' && process.env) {\n envApiKey = (process as any).env.ORGO_API_KEY;\n }\n // Check if we're in browser environment with global variable\n else if (typeof window !== 'undefined' && (window as any).ORGO_API_KEY) {\n envApiKey = (window as any).ORGO_API_KEY;\n }\n \n const key = apiKey || envApiKey;\n \n if (!key) {\n throw new Error(\n 'API key required. Set ORGO_API_KEY environment variable or pass apiKey parameter. ' +\n 'Get a key at https://www.orgo.ai/start'\n );\n }\n \n return key;\n}","/**\n * Custom error types for Orgo SDK\n */\n\nexport class OrgoError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'OrgoError';\n Object.setPrototypeOf(this, OrgoError.prototype);\n }\n }\n \n export class ApiError extends OrgoError {\n public statusCode?: number;\n public response?: unknown;\n \n constructor(message: string, statusCode?: number, response?: unknown) {\n super(message);\n this.name = 'ApiError';\n this.statusCode = statusCode;\n this.response = response;\n Object.setPrototypeOf(this, ApiError.prototype);\n }\n }\n \n export class ConfigError extends OrgoError {\n constructor(message: string) {\n super(message);\n this.name = 'ConfigError';\n Object.setPrototypeOf(this, ConfigError.prototype);\n }\n }","/**\n * API client for Orgo service\n */\n\nimport fetch from 'cross-fetch';\nimport { getApiKey } from '../utils/auth';\nimport { ApiError } from '../errors';\nimport type {\n ProjectInfo,\n ComputerInfo,\n ApiResponse,\n ScreenshotResponse,\n BashResponse,\n ExecResponse,\n StreamStartResponse,\n StreamStatusResponse,\n StreamStopResponse\n} from '../types';\n\nexport class ApiClient {\n private apiKey: string;\n private baseUrl: string;\n private headers: Record<string, string>;\n\n constructor(apiKey?: string, baseUrl?: string) {\n this.apiKey = getApiKey(apiKey);\n this.baseUrl = baseUrl || 'https://www.orgo.ai/api';\n this.headers = {\n 'Authorization': `Bearer ${this.apiKey}`,\n 'Content-Type': 'application/json',\n 'Accept': 'application/json'\n };\n }\n\n private async request<T = unknown>(\n method: string,\n endpoint: string,\n data?: unknown\n ): Promise<T> {\n const url = `${this.baseUrl}/${endpoint}`;\n\n try {\n const options: RequestInit = {\n method,\n headers: this.headers,\n };\n\n if (method === 'GET' && data) {\n const params = new URLSearchParams(data as Record<string, string>);\n const urlWithParams = `${url}?${params}`;\n const response = await fetch(urlWithParams, options);\n return this.handleResponse<T>(response);\n } else if (data) {\n options.body = JSON.stringify(data);\n }\n\n const response = await fetch(url, options);\n return this.handleResponse<T>(response);\n } catch (error) {\n if (error instanceof ApiError) {\n throw error;\n }\n throw new ApiError(`Connection error: ${error instanceof Error ? error.message : 'Unknown error'}`);\n }\n }\n\n private async handleResponse<T>(response: Response): Promise<T> {\n if (!response.ok) {\n let errorMessage = `API error: ${response.status}`;\n try {\n const errorData = await response.json() as ApiResponse;\n if (errorData.error) {\n errorMessage = errorData.error;\n }\n } catch {\n // Ignore JSON parse errors\n }\n throw new ApiError(errorMessage, response.status, response);\n }\n\n return response.json() as Promise<T>;\n }\n\n // Project methods\n public async createProject(name: string): Promise<ProjectInfo> {\n return this.request<ProjectInfo>('POST', 'projects', { name });\n }\n\n public async getProjectByName(name: string): Promise<ProjectInfo> {\n const projects = await this.listProjects();\n const project = projects.find(p => p.name === name);\n if (!project) {\n throw new ApiError(`Project '${name}' not found`, 404);\n }\n return project;\n }\n\n public async getProject(projectId: string): Promise<ProjectInfo> {\n return this.request<ProjectInfo>('GET', `projects/${projectId}`);\n }\n\n public async listProjects(): Promise<ProjectInfo[]> {\n const response = await this.request<{ projects: ProjectInfo[] }>('GET', 'projects');\n return response.projects || [];\n }\n\n public async deleteProject(projectId: string): Promise<unknown> {\n return this.request('DELETE', `projects/${projectId}`);\n }\n\n // Computer methods\n public async createComputer(\n projectId: string,\n computerName: string,\n os: 'linux' | 'windows' = 'linux',\n ram: number = 2,\n cpu: number = 2,\n gpu: string = 'none'\n ): Promise<ComputerInfo> {\n return this.request<ComputerInfo>('POST', 'computers', {\n project_id: projectId,\n name: computerName,\n os,\n ram,\n cpu,\n gpu\n });\n }\n\n public async listComputers(projectId: string): Promise<ComputerInfo[]> {\n const project = await this.getProject(projectId);\n return (project as any).desktops || [];\n }\n\n public async getComputer(computerId: string): Promise<ComputerInfo> {\n return this.request<ComputerInfo>('GET', `computers/${computerId}`);\n }\n\n public async deleteComputer(computerId: string): Promise<unknown> {\n return this.request('DELETE', `computers/${computerId}`);\n }\n\n public async restartComputer(computerId: string): Promise<unknown> {\n return this.request('POST', `computers/${computerId}/restart`);\n }\n\n // Computer control methods\n public async leftClick(computerId: string, x: number, y: number): Promise<unknown> {\n return this.request('POST', `computers/${computerId}/click`, {\n button: 'left',\n x,\n y\n });\n }\n\n public async rightClick(computerId: string, x: number, y: number): Promise<unknown> {\n return this.request('POST', `computers/${computerId}/click`, {\n button: 'right',\n x,\n y\n });\n }\n\n public async doubleClick(computerId: string, x: number, y: number): Promise<unknown> {\n return this.request('POST', `computers/${computerId}/click`, {\n button: 'left',\n x,\n y,\n double: true\n });\n }\n\n public async drag(\n computerId: string,\n startX: number,\n startY: number,\n endX: number,\n endY: number,\n button: 'left' | 'right' = 'left',\n duration: number = 0.5\n ): Promise<unknown> {\n return this.request('POST', `computers/${computerId}/drag`, {\n start_x: startX,\n start_y: startY,\n end_x: endX,\n end_y: endY,\n button,\n duration\n });\n }\n\n public async scroll(computerId: string, direction: string, amount: number = 3): Promise<unknown> {\n return this.request('POST', `computers/${computerId}/scroll`, {\n direction,\n amount\n });\n }\n\n public async typeText(computerId: string, text: string): Promise<unknown> {\n return this.request('POST', `computers/${computerId}/type`, {\n text\n });\n }\n\n public async keyPress(computerId: string, key: string): Promise<unknown> {\n return this.request('POST', `computers/${computerId}/key`, {\n key\n });\n }\n\n public async getScreenshot(computerId: string): Promise<ScreenshotResponse> {\n return this.request<ScreenshotResponse>('GET', `computers/${computerId}/screenshot`);\n }\n\n public async executeBash(computerId: string, command: string): Promise<BashResponse> {\n return this.request<BashResponse>('POST', `computers/${computerId}/bash`, {\n command\n });\n }\n\n public async executePython(computerId: string, code: string, timeout: number = 10): Promise<ExecResponse> {\n return this.request<ExecResponse>('POST', `computers/${computerId}/exec`, {\n code,\n timeout\n });\n }\n\n public async wait(computerId: string, seconds: number): Promise<unknown> {\n return this.request('POST', `computers/${computerId}/wait`, {\n duration: seconds\n });\n }\n\n // Streaming methods\n public async startStream(computerId: string, connectionName: string): Promise<StreamStartResponse> {\n return this.request<StreamStartResponse>('POST', `computers/${computerId}/stream/start`, {\n connection_name: connectionName\n });\n }\n\n public async stopStream(computerId: string): Promise<StreamStopResponse> {\n return this.request<StreamStopResponse>('POST', `computers/${computerId}/stream/stop`);\n }\n\n public async getStreamStatus(computerId: string): Promise<StreamStatusResponse> {\n return this.request<StreamStatusResponse>('GET', `computers/${computerId}/stream/status`);\n }\n}","/**\n * Project class for managing Orgo projects\n */\n\nimport { ApiClient } from './api/client';\nimport type { ProjectInfo, ComputerInfo } from './types';\nimport { v4 as uuidv4 } from 'uuid';\nimport { getApiKey } from './utils/auth';\n\nexport class Project {\n private apiKey: string;\n private baseApiUrl?: string;\n private api: ApiClient;\n public name: string;\n public id!: string;\n private _info!: ProjectInfo;\n\n private constructor(\n name: string,\n apiKey: string,\n baseApiUrl?: string\n ) {\n this.name = name;\n this.apiKey = apiKey;\n this.baseApiUrl = baseApiUrl;\n this.api = new ApiClient(this.apiKey, this.baseApiUrl);\n }\n\n /**\n * Create or connect to a Project\n * \n * @param options Configuration options\n * @param options.name Project name. If exists, connects to it. If not, creates it.\n * @param options.apiKey Orgo API key (defaults to ORGO_API_KEY env var)\n * @param options.baseApiUrl Custom API URL (optional)\n */\n public static async create(options?: {\n name?: string;\n apiKey?: string;\n baseApiUrl?: string;\n }): Promise<Project> {\n const apiKey = options?.apiKey || getApiKey() || '';\n const name = options?.name || `project-${uuidv4().substring(0, 8)}`;\n \n const project = new Project(name, apiKey, options?.baseApiUrl);\n await project._initializeProject();\n \n return project;\n }\n\n private async _initializeProject(): Promise<void> {\n try {\n // Try to get existing project\n const projectInfo = await this.api.getProjectByName(this.name);\n this.id = projectInfo.id;\n this._info = projectInfo;\n } catch (error) {\n // Project doesn't exist, create it\n const projectInfo = await this.api.createProject(this.name);\n this.id = projectInfo.id;\n this._info = projectInfo;\n }\n }\n\n public get info(): ProjectInfo {\n return this._info;\n }\n\n public async status(): Promise<ProjectInfo> {\n const projectInfo = await this.api.getProject(this.id);\n this._info = projectInfo;\n return projectInfo;\n }\n\n public async destroy(): Promise<unknown> {\n return this.api.deleteProject(this.id);\n }\n\n public async listComputers(): Promise<ComputerInfo[]> {\n return this.api.listComputers(this.id);\n }\n\n public async getComputer(computerName?: string): Promise<ComputerInfo | null> {\n const computers = await this.listComputers();\n if (!computers || computers.length === 0) {\n return null;\n }\n\n if (computerName) {\n const computer = computers.find(c => c.name === computerName);\n return computer ?? null;\n }\n\n return computers[0] ?? null;\n }\n}","/**\n * Anthropic Claude-based prompt provider\n */\n\nimport Anthropic from '@anthropic-ai/sdk';\nimport { ApiClient } from '../api/client';\nimport type { \n PromptProvider, \n PromptExecuteOptions \n} from '../prompt';\nimport type { PromptMessage, ScreenshotResponse } from '../types';\n\ninterface ToolUseBlock {\n type: 'tool_use';\n id: string;\n name: string;\n input: Record<string, unknown>;\n}\n\ninterface TextBlock {\n type: 'text';\n text: string;\n}\n\ninterface ThinkingBlock {\n type: 'thinking';\n thinking: string;\n}\n\ninterface ImageBlock {\n type: 'image';\n source: {\n type: 'base64';\n media_type: string;\n data: string;\n };\n}\n\ntype ContentBlock = ToolUseBlock | TextBlock | ThinkingBlock | ImageBlock;\n\ninterface ToolResult {\n type: 'tool_result';\n tool_use_id: string;\n content: Array<TextBlock | ImageBlock>;\n}\n\nexport class AnthropicProvider implements PromptProvider {\n private anthropic: typeof Anthropic;\n\n constructor() {\n try {\n this.anthropic = Anthropic;\n } catch (error) {\n throw new Error(\n \"Anthropic SDK not installed. Please install with 'npm install @anthropic-ai/sdk'\"\n );\n }\n }\n\n public async execute(options: PromptExecuteOptions): Promise<PromptMessage[]> {\n const {\n computerId,\n instruction,\n callback,\n apiKey = process.env.ANTHROPIC_API_KEY,\n model = 'claude-3-7-sonnet-20250219',\n displayWidth = 1024,\n displayHeight = 768,\n orgoApiKey,\n orgoBaseUrl,\n maxSavedScreenshots = 2,\n thinkingEnabled = false,\n thinkingBudget = 1024,\n maxTokens = 4096,\n maxIterations = 20\n } = options;\n\n if (!apiKey) {\n throw new Error(\n 'No Anthropic API key provided. Set ANTHROPIC_API_KEY environment variable or pass apiKey.'\n );\n }\n\n // Initialize the client\n const client = new this.anthropic({ apiKey });\n\n // Prepare the messages\n const messages: PromptMessage[] = [\n { role: 'user', content: instruction }\n ];\n\n // Set up the system prompt\n const systemPrompt = this.getSystemPrompt(displayWidth, displayHeight);\n\n try {\n // Define the computer tool\n const tools = [\n {\n type: 'computer_20250124',\n name: 'computer',\n display_width_px: displayWidth,\n display_height_px: displayHeight,\n display_number: 1\n }\n ];\n\n if (callback) {\n callback('status', 'Starting conversation with Claude');\n }\n\n // Create an API client\n const apiClient = new ApiClient(orgoApiKey, orgoBaseUrl);\n\n let iteration = 0;\n let screenshotCount = 0;\n\n // Start the agent loop\n while (iteration < maxIterations) {\n iteration++;\n\n // Filter screenshots if needed\n if (screenshotCount > maxSavedScreenshots) {\n this.filterToNMostRecentImages(messages, maxSavedScreenshots);\n screenshotCount = maxSavedScreenshots;\n }\n\n // Create request parameters\n const requestParams: Record<string, unknown> = {\n model,\n max_tokens: maxTokens,\n system: systemPrompt,\n messages: messages as unknown[],\n tools,\n betas: ['computer-use-2025-01-24'],\n };\n\n // Add thinking parameter only if enabled\n if (thinkingEnabled) {\n requestParams.thinking = {\n type: 'enabled',\n budget_tokens: thinkingBudget\n };\n }\n\n try {\n const response = await client.beta.messages.create(requestParams as any);\n const responseContent = response.content as ContentBlock[];\n\n // Add Claude's response to conversation\n const assistantMessage: PromptMessage = {\n role: 'assistant',\n content: responseContent as unknown[]\n };\n messages.push(assistantMessage);\n\n // Process response blocks\n for (const block of responseContent) {\n if (block.type === 'text' && callback) {\n callback('text', block.text);\n } else if (block.type === 'thinking' && callback) {\n callback('thinking', block.thinking);\n } else if (block.type === 'tool_use' && callback) {\n const toolParams = {\n action: block.name.split('.').pop(),\n ...block.input\n };\n callback('tool_use', toolParams);\n }\n }\n\n // Execute tool actions\n const toolResults: ToolResult[] = [];\n for (const block of responseContent) {\n if (block.type === 'tool_use') {\n const result = await this.executeTool(\n computerId,\n block.input,\n callback,\n apiClient\n );\n\n const toolResult: ToolResult = {\n type: 'tool_result',\n tool_use_id: block.id,\n content: []\n };\n\n // Handle different result types\n if (\n typeof result === 'object' &&\n result !== null &&\n 'type' in result &&\n result.type === 'image'\n ) {\n toolResult.content = [result as ImageBlock];\n if (block.input.action === 'screenshot') {\n screenshotCount++;\n }\n } else {\n toolResult.content = [{\n type: 'text',\n text: String(result)\n }];\n }\n\n toolResults.push(toolResult);\n }\n }\n\n // If no tools were used, we're done\n if (toolResults.length === 0) {\n if (callback) {\n callback('status', 'Task completed');\n }\n return messages;\n }\n\n // Add tool results for next iteration\n messages.push({\n role: 'user',\n content: toolResults as unknown[]\n });\n\n } catch (error) {\n // Handle base64 errors by reducing screenshots\n if (error instanceof Error && error