From 26cc1e86b03e281b4a300d45344405058449b1e3 Mon Sep 17 00:00:00 2001 From: "Hermes (Server)" Date: Sun, 26 Jul 2026 17:33:47 +0200 Subject: [PATCH] =?UTF-8?q?SDS=20Origin=20Guide=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .obsidian/community-plugins.json | 3 + .obsidian/plugins/git-obsi-sync/data.json | 14 + .obsidian/plugins/git-obsi-sync/main.js | 112 ++++ .obsidian/plugins/git-obsi-sync/manifest.json | 11 + .obsidian/workspace.json | 28 +- .open-second-brain/brain.sqlite | Bin 200704 -> 704512 bytes .open-second-brain/brain.sqlite-shm | Bin 32768 -> 0 bytes .open-second-brain/brain.sqlite-wal | 0 .stfolder/syncthing-folder-abde28.txt | 5 + .stignore | 4 + .../45f0f56d62977f35.json} | 14 +- .../45f0f56d62977f35.json} | 21 +- .../45f0f56d62977f35.json} | 70 ++- .../run-42043-mrpi942z/e8bc0fd7b72f644c.json | 80 --- .../run-42043-mrpi942z/f9b39e21aeb74288.json | 71 --- .../45f0f56d62977f35.json} | 70 ++- .../run-5706-mrxbt03p/45f0f56d62977f35.json | 116 ++++ .../run-989-mrwgrv2a/45f0f56d62977f35.json | 116 ++++ Brain/inbox/melo-next-steps.md | 87 +++ .../inbox/sig-2026-07-23-o2b-server-setup.md | 10 + Brain/inbox/sig-2026-07-23-server-port-map.md | 10 + Brain/log/2026-07-23.013d10a8.jsonl | 13 + Brain/log/2026-07-23.013d10a8.md | 63 +++ Brain/metrics/index.jsonl | 1 + Brain/search/activation-state.json | 504 ++++++++++++++++++ .../activation/1784805125265-33b0c265.json | 14 + .../activation/1784805125422-e41e206e.json | 15 + .../activation/1784810815823-e6f48caf.json | 10 + .../activation/1784810821353-416403f0.json | 10 + .../activation/1784810822564-dd35cafe.json | 8 + .../activation/1784810823764-cb1bdfde.json | 8 + Notizen/Gehalt Juli 2026.md | 70 +++ .../Server Aingrad - Komplette Übersicht.md | 210 ++++++++ Notizen/Seven Deadly Sins Origin - Guide.md | 466 ++++++++++++++++ 34 files changed, 2031 insertions(+), 203 deletions(-) create mode 100644 .obsidian/community-plugins.json create mode 100644 .obsidian/plugins/git-obsi-sync/data.json create mode 100644 .obsidian/plugins/git-obsi-sync/main.js create mode 100644 .obsidian/plugins/git-obsi-sync/manifest.json delete mode 100644 .open-second-brain/brain.sqlite-shm delete mode 100644 .open-second-brain/brain.sqlite-wal create mode 100644 .stfolder/syncthing-folder-abde28.txt create mode 100644 .stignore rename Brain/.artifacts/{run-1207-mrqw73j4/c5f549c9943e6647.json => run-1014-mrwgstia/45f0f56d62977f35.json} (89%) rename Brain/.artifacts/{run-1207-mrqw73j4/c6497f2f689d463c.json => run-1309-mrwh167p/45f0f56d62977f35.json} (84%) rename Brain/.artifacts/{run-1207-mrqw73j4/e8bc0fd7b72f644c.json => run-2702-mrwjkw80/45f0f56d62977f35.json} (55%) delete mode 100644 Brain/.artifacts/run-42043-mrpi942z/e8bc0fd7b72f644c.json delete mode 100644 Brain/.artifacts/run-42043-mrpi942z/f9b39e21aeb74288.json rename Brain/.artifacts/{run-1145-mrqvvjdc/e8bc0fd7b72f644c.json => run-4262-mrwnaz34/45f0f56d62977f35.json} (55%) create mode 100644 Brain/.artifacts/run-5706-mrxbt03p/45f0f56d62977f35.json create mode 100644 Brain/.artifacts/run-989-mrwgrv2a/45f0f56d62977f35.json create mode 100644 Brain/inbox/melo-next-steps.md create mode 100644 Brain/inbox/sig-2026-07-23-o2b-server-setup.md create mode 100644 Brain/inbox/sig-2026-07-23-server-port-map.md create mode 100644 Brain/log/2026-07-23.013d10a8.jsonl create mode 100644 Brain/log/2026-07-23.013d10a8.md create mode 100644 Brain/search/activation-state.json create mode 100644 Brain/search/activation/1784805125265-33b0c265.json create mode 100644 Brain/search/activation/1784805125422-e41e206e.json create mode 100644 Brain/search/activation/1784810815823-e6f48caf.json create mode 100644 Brain/search/activation/1784810821353-416403f0.json create mode 100644 Brain/search/activation/1784810822564-dd35cafe.json create mode 100644 Brain/search/activation/1784810823764-cb1bdfde.json create mode 100644 Notizen/Gehalt Juli 2026.md create mode 100644 Notizen/Server Aingrad - Komplette Übersicht.md create mode 100644 Notizen/Seven Deadly Sins Origin - Guide.md diff --git a/.obsidian/community-plugins.json b/.obsidian/community-plugins.json new file mode 100644 index 0000000..c5f3675 --- /dev/null +++ b/.obsidian/community-plugins.json @@ -0,0 +1,3 @@ +[ + "git-obsi-sync" +] \ No newline at end of file diff --git a/.obsidian/plugins/git-obsi-sync/data.json b/.obsidian/plugins/git-obsi-sync/data.json new file mode 100644 index 0000000..0b567fa --- /dev/null +++ b/.obsidian/plugins/git-obsi-sync/data.json @@ -0,0 +1,14 @@ +{ + "githubToken": "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", + "githubUsername": "EinsamerWolfDH", + "repoName": "obsidian-hermes", + "autoSync": true, + "syncIntervalMs": 3000, + "excludePatterns": [ + ".obsidian/workspace", + ".obsidian/workspace.json", + ".obsidian/plugins/*/data.json" + ], + "lastSyncTime": 1784804279229, + "commitMessageTemplate": "sync: {{datetime}}" +} \ No newline at end of file diff --git a/.obsidian/plugins/git-obsi-sync/main.js b/.obsidian/plugins/git-obsi-sync/main.js new file mode 100644 index 0000000..10e54ba --- /dev/null +++ b/.obsidian/plugins/git-obsi-sync/main.js @@ -0,0 +1,112 @@ +/* obsidian-multisync */ +var Wu=Object.create;var Ir=Object.defineProperty;var Vu=Object.getOwnPropertyDescriptor;var Xu=Object.getOwnPropertyNames;var Yu=Object.getPrototypeOf,Ku=Object.prototype.hasOwnProperty;var O=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Qu=(t,e)=>{for(var r in e)Ir(t,r,{get:e[r],enumerable:!0})},Ja=(t,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Xu(e))!Ku.call(t,n)&&n!==r&&Ir(t,n,{get:()=>e[n],enumerable:!(i=Vu(e,n))||i.enumerable});return t};var Gt=(t,e,r)=>(r=t!=null?Wu(Yu(t)):{},Ja(e||!t||!t.__esModule?Ir(r,"default",{value:t,enumerable:!0}):r,t)),Ju=t=>Ja(Ir({},"__esModule",{value:!0}),t);var ho=O((fg,uo)=>{"use strict";var lt=function(t){if(t=t||{},this.Promise=t.Promise||Promise,this.queues=Object.create(null),this.domainReentrant=t.domainReentrant||!1,this.domainReentrant){if(typeof process=="undefined"||typeof process.domain=="undefined")throw new Error("Domain-reentrant locks require `process.domain` to exist. Please flip `opts.domainReentrant = false`, use a NodeJS version that still implements Domain, or install a browser polyfill.");this.domains=Object.create(null)}this.timeout=t.timeout||lt.DEFAULT_TIMEOUT,this.maxOccupationTime=t.maxOccupationTime||lt.DEFAULT_MAX_OCCUPATION_TIME,this.maxExecutionTime=t.maxExecutionTime||lt.DEFAULT_MAX_EXECUTION_TIME,t.maxPending===1/0||Number.isInteger(t.maxPending)&&t.maxPending>=0?this.maxPending=t.maxPending:this.maxPending=lt.DEFAULT_MAX_PENDING};lt.DEFAULT_TIMEOUT=0;lt.DEFAULT_MAX_OCCUPATION_TIME=0;lt.DEFAULT_MAX_EXECUTION_TIME=0;lt.DEFAULT_MAX_PENDING=1e3;lt.prototype.acquire=function(t,e,r,i){if(Array.isArray(t))return this._acquireBatch(t,e,r,i);if(typeof e!="function")throw new Error("You must pass a function to execute");var n=null,a=null,o=null;typeof r!="function"&&(i=r,r=null,o=new this.Promise(function(v,k){n=v,a=k})),i=i||{};var s=!1,l=null,c=null,f=null,d=this,u=function(v,k,S){c&&(clearTimeout(c),c=null),f&&(clearTimeout(f),f=null),v&&(d.queues[t]&&d.queues[t].length===0&&delete d.queues[t],d.domainReentrant&&delete d.domains[t]),s||(o?k?a(k):n(S):typeof r=="function"&&r(k,S),s=!0),v&&d.queues[t]&&d.queues[t].length>0&&d.queues[t].shift()()},h=function(v){if(s)return u(v);l&&(clearTimeout(l),l=null),d.domainReentrant&&v&&(d.domains[t]=process.domain);var k=i.maxExecutionTime||d.maxExecutionTime;if(k&&(f=setTimeout(function(){d.queues[t]&&u(v,new Error("Maximum execution time is exceeded "+t))},k)),e.length===1){var S=!1;try{e(function(x,T){S||(S=!0,u(v,x,T))})}catch(x){S||(S=!0,u(v,x))}}else d._promiseTry(function(){return e()}).then(function(x){u(v,void 0,x)},function(x){u(v,x)})};d.domainReentrant&&process.domain&&(h=process.domain.bind(h));var m=i.maxPending||d.maxPending;if(!d.queues[t])d.queues[t]=[],h(!0);else if(d.domainReentrant&&process.domain&&process.domain===d.domains[t])h(!1);else if(d.queues[t].length>=m)u(!1,new Error("Too many pending tasks in queue "+t));else{var g=function(){h(!0)};i.skipQueue?d.queues[t].unshift(g):d.queues[t].push(g);var y=i.timeout||d.timeout;y&&(l=setTimeout(function(){l=null,u(!1,new Error("async-lock timed out in queue "+t))},y))}var b=i.maxOccupationTime||d.maxOccupationTime;if(b&&(c=setTimeout(function(){d.queues[t]&&u(!1,new Error("Maximum occupation time is exceeded in queue "+t))},b)),o)return o};lt.prototype._acquireBatch=function(t,e,r,i){typeof r!="function"&&(i=r,r=null);var n=this,a=function(s,l){return function(c){n.acquire(s,l,c,i)}},o=t.reduceRight(function(s,l){return a(l,s)},e);if(typeof r=="function")o(r);else return new this.Promise(function(s,l){o.length===1?o(function(c,f){c?l(c):s(f)}):s(o())})};lt.prototype.isBusy=function(t){return t?!!this.queues[t]:Object.keys(this.queues).length>0};lt.prototype._promiseTry=function(t){try{return this.Promise.resolve(t())}catch(e){return this.Promise.reject(e)}};uo.exports=lt});var wo=O((lg,po)=>{"use strict";po.exports=ho()});var mo=O((ug,cn)=>{typeof Object.create=="function"?cn.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:cn.exports=function(e,r){if(r){e.super_=r;var i=function(){};i.prototype=r.prototype,e.prototype=new i,e.prototype.constructor=e}}});var Ur=O((fn,yo)=>{var Fr=require("buffer"),$t=Fr.Buffer;function go(t,e){for(var r in t)e[r]=t[r]}$t.from&&$t.alloc&&$t.allocUnsafe&&$t.allocUnsafeSlow?yo.exports=Fr:(go(Fr,fn),fn.Buffer=ee);function ee(t,e,r){return $t(t,e,r)}ee.prototype=Object.create($t.prototype);go($t,ee);ee.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return $t(t,e,r)};ee.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var i=$t(t);return e!==void 0?typeof r=="string"?i.fill(e,r):i.fill(e):i.fill(0),i};ee.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return $t(t)};ee.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Fr.SlowBuffer(t)}});var _o=O((dg,bo)=>{var ed={}.toString;bo.exports=Array.isArray||function(t){return ed.call(t)=="[object Array]"}});var ye=O((hg,vo)=>{"use strict";vo.exports=TypeError});var ln=O((pg,xo)=>{"use strict";xo.exports=Object});var So=O((wg,Eo)=>{"use strict";Eo.exports=Error});var Ao=O((mg,ko)=>{"use strict";ko.exports=EvalError});var $o=O((gg,To)=>{"use strict";To.exports=RangeError});var Ro=O((yg,Oo)=>{"use strict";Oo.exports=ReferenceError});var un=O((bg,Io)=>{"use strict";Io.exports=SyntaxError});var Co=O((_g,Po)=>{"use strict";Po.exports=URIError});var Do=O((vg,Bo)=>{"use strict";Bo.exports=Math.abs});var Fo=O((xg,No)=>{"use strict";No.exports=Math.floor});var jo=O((Eg,Uo)=>{"use strict";Uo.exports=Math.max});var zo=O((Sg,Mo)=>{"use strict";Mo.exports=Math.min});var Ho=O((kg,Lo)=>{"use strict";Lo.exports=Math.pow});var qo=O((Ag,Go)=>{"use strict";Go.exports=Math.round});var Wo=O((Tg,Zo)=>{"use strict";Zo.exports=Number.isNaN||function(e){return e!==e}});var Xo=O(($g,Vo)=>{"use strict";var rd=Wo();Vo.exports=function(e){return rd(e)||e===0?e:e<0?-1:1}});var Ko=O((Og,Yo)=>{"use strict";Yo.exports=Object.getOwnPropertyDescriptor});var be=O((Rg,Qo)=>{"use strict";var jr=Ko();if(jr)try{jr([],"length")}catch(t){jr=null}Qo.exports=jr});var Xe=O((Ig,Jo)=>{"use strict";var Mr=Object.defineProperty||!1;if(Mr)try{Mr({},"a",{value:1})}catch(t){Mr=!1}Jo.exports=Mr});var dn=O((Pg,ts)=>{"use strict";ts.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),i=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(i)!=="[object Symbol]")return!1;var n=42;e[r]=n;for(var a in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var o=Object.getOwnPropertySymbols(e);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var s=Object.getOwnPropertyDescriptor(e,r);if(s.value!==n||s.enumerable!==!0)return!1}return!0}});var is=O((Cg,rs)=>{"use strict";var es=typeof Symbol!="undefined"&&Symbol,id=dn();rs.exports=function(){return typeof es!="function"||typeof Symbol!="function"||typeof es("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:id()}});var hn=O((Bg,ns)=>{"use strict";ns.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var pn=O((Dg,as)=>{"use strict";var nd=ln();as.exports=nd.getPrototypeOf||null});var cs=O((Ng,ss)=>{"use strict";var ad="Function.prototype.bind called on incompatible ",od=Object.prototype.toString,sd=Math.max,cd="[object Function]",os=function(e,r){for(var i=[],n=0;n{"use strict";var ud=cs();fs.exports=Function.prototype.bind||ud});var zr=O((Ug,ls)=>{"use strict";ls.exports=Function.prototype.call});var Lr=O((jg,us)=>{"use strict";us.exports=Function.prototype.apply});var hs=O((Mg,ds)=>{"use strict";ds.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var wn=O((zg,ps)=>{"use strict";var dd=_e(),hd=Lr(),pd=zr(),wd=hs();ps.exports=wd||dd.call(pd,hd)});var Hr=O((Lg,ws)=>{"use strict";var md=_e(),gd=ye(),yd=zr(),bd=wn();ws.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new gd("a function is required");return bd(md,yd,e)}});var vs=O((Hg,_s)=>{"use strict";var _d=Hr(),ms=be(),ys;try{ys=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var mn=!!ys&&ms&&ms(Object.prototype,"__proto__"),bs=Object,gs=bs.getPrototypeOf;_s.exports=mn&&typeof mn.get=="function"?_d([mn.get]):typeof gs=="function"?function(e){return gs(e==null?e:bs(e))}:!1});var gn=O((Gg,ks)=>{"use strict";var xs=hn(),Es=pn(),Ss=vs();ks.exports=xs?function(e){return xs(e)}:Es?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return Es(e)}:Ss?function(e){return Ss(e)}:null});var Ts=O((qg,As)=>{"use strict";var vd=Function.prototype.call,xd=Object.prototype.hasOwnProperty,Ed=_e();As.exports=Ed.call(vd,xd)});var _n=O((Zg,Cs)=>{"use strict";var N,Sd=ln(),kd=So(),Ad=Ao(),Td=$o(),$d=Ro(),Se=un(),Ee=ye(),Od=Co(),Rd=Do(),Id=Fo(),Pd=jo(),Cd=zo(),Bd=Ho(),Dd=qo(),Nd=Xo(),Is=Function,yn=function(t){try{return Is('"use strict"; return ('+t+").constructor;")()}catch(e){}},Ye=be(),Fd=Xe(),bn=function(){throw new Ee},Ud=Ye?function(){try{return arguments.callee,bn}catch(t){try{return Ye(arguments,"callee").get}catch(e){return bn}}}():bn,ve=is()(),V=gn(),jd=pn(),Md=hn(),Ps=Lr(),Ke=zr(),xe={},zd=typeof Uint8Array=="undefined"||!V?N:V(Uint8Array),re={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?N:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?N:ArrayBuffer,"%ArrayIteratorPrototype%":ve&&V?V([][Symbol.iterator]()):N,"%AsyncFromSyncIteratorPrototype%":N,"%AsyncFunction%":xe,"%AsyncGenerator%":xe,"%AsyncGeneratorFunction%":xe,"%AsyncIteratorPrototype%":xe,"%Atomics%":typeof Atomics=="undefined"?N:Atomics,"%BigInt%":typeof BigInt=="undefined"?N:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?N:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?N:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?N:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":kd,"%eval%":eval,"%EvalError%":Ad,"%Float16Array%":typeof Float16Array=="undefined"?N:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?N:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?N:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?N:FinalizationRegistry,"%Function%":Is,"%GeneratorFunction%":xe,"%Int8Array%":typeof Int8Array=="undefined"?N:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?N:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?N:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":ve&&V?V(V([][Symbol.iterator]())):N,"%JSON%":typeof JSON=="object"?JSON:N,"%Map%":typeof Map=="undefined"?N:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!ve||!V?N:V(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Sd,"%Object.getOwnPropertyDescriptor%":Ye,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?N:Promise,"%Proxy%":typeof Proxy=="undefined"?N:Proxy,"%RangeError%":Td,"%ReferenceError%":$d,"%Reflect%":typeof Reflect=="undefined"?N:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?N:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!ve||!V?N:V(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?N:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":ve&&V?V(""[Symbol.iterator]()):N,"%Symbol%":ve?Symbol:N,"%SyntaxError%":Se,"%ThrowTypeError%":Ud,"%TypedArray%":zd,"%TypeError%":Ee,"%Uint8Array%":typeof Uint8Array=="undefined"?N:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?N:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?N:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?N:Uint32Array,"%URIError%":Od,"%WeakMap%":typeof WeakMap=="undefined"?N:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?N:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?N:WeakSet,"%Function.prototype.call%":Ke,"%Function.prototype.apply%":Ps,"%Object.defineProperty%":Fd,"%Object.getPrototypeOf%":jd,"%Math.abs%":Rd,"%Math.floor%":Id,"%Math.max%":Pd,"%Math.min%":Cd,"%Math.pow%":Bd,"%Math.round%":Dd,"%Math.sign%":Nd,"%Reflect.getPrototypeOf%":Md};if(V)try{null.error}catch(t){$s=V(V(t)),re["%Error.prototype%"]=$s}var $s,Ld=function t(e){var r;if(e==="%AsyncFunction%")r=yn("async function () {}");else if(e==="%GeneratorFunction%")r=yn("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=yn("async function* () {}");else if(e==="%AsyncGenerator%"){var i=t("%AsyncGeneratorFunction%");i&&(r=i.prototype)}else if(e==="%AsyncIteratorPrototype%"){var n=t("%AsyncGenerator%");n&&V&&(r=V(n.prototype))}return re[e]=r,r},Os={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},Qe=_e(),Gr=Ts(),Hd=Qe.call(Ke,Array.prototype.concat),Gd=Qe.call(Ps,Array.prototype.splice),Rs=Qe.call(Ke,String.prototype.replace),qr=Qe.call(Ke,String.prototype.slice),qd=Qe.call(Ke,RegExp.prototype.exec),Zd=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,Wd=/\\(\\)?/g,Vd=function(e){var r=qr(e,0,1),i=qr(e,-1);if(r==="%"&&i!=="%")throw new Se("invalid intrinsic syntax, expected closing `%`");if(i==="%"&&r!=="%")throw new Se("invalid intrinsic syntax, expected opening `%`");var n=[];return Rs(e,Zd,function(a,o,s,l){n[n.length]=s?Rs(l,Wd,"$1"):o||a}),n},Xd=function(e,r){var i=e,n;if(Gr(Os,i)&&(n=Os[i],i="%"+n[0]+"%"),Gr(re,i)){var a=re[i];if(a===xe&&(a=Ld(i)),typeof a=="undefined"&&!r)throw new Ee("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:n,name:i,value:a}}throw new Se("intrinsic "+e+" does not exist!")};Cs.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new Ee("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new Ee('"allowMissing" argument must be a boolean');if(qd(/^%?[^%]*%?$/,e)===null)throw new Se("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var i=Vd(e),n=i.length>0?i[0]:"",a=Xd("%"+n+"%",r),o=a.name,s=a.value,l=!1,c=a.alias;c&&(n=c[0],Gd(i,Hd([0,1],c)));for(var f=1,d=!0;f=i.length){var g=Ye(s,u);d=!!g,d&&"get"in g&&!("originalValue"in g.get)?s=g.get:s=s[u]}else d=Gr(s,u),s=s[u];d&&!l&&(re[o]=s)}}return s}});var vn=O((Wg,Ns)=>{"use strict";var Bs=_n(),Ds=Hr(),Yd=Ds([Bs("%String.prototype.indexOf%")]);Ns.exports=function(e,r){var i=Bs(e,!!r);return typeof i=="function"&&Yd(e,".prototype.")>-1?Ds([i]):i}});var Ms=O((Vg,js)=>{"use strict";var Us=Function.prototype.toString,ke=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,En,Zr;if(typeof ke=="function"&&typeof Object.defineProperty=="function")try{En=Object.defineProperty({},"length",{get:function(){throw Zr}}),Zr={},ke(function(){throw 42},null,En)}catch(t){t!==Zr&&(ke=null)}else ke=null;var Kd=/^\s*class\b/,Sn=function(e){try{var r=Us.call(e);return Kd.test(r)}catch(i){return!1}},xn=function(e){try{return Sn(e)?!1:(Us.call(e),!0)}catch(r){return!1}},Wr=Object.prototype.toString,Qd="[object Object]",Jd="[object Function]",th="[object GeneratorFunction]",eh="[object HTMLAllCollection]",rh="[object HTML document.all class]",ih="[object HTMLCollection]",nh=typeof Symbol=="function"&&!!Symbol.toStringTag,ah=!(0 in[,]),kn=function(){return!1};typeof document=="object"&&(Fs=document.all,Wr.call(Fs)===Wr.call(document.all)&&(kn=function(e){if((ah||!e)&&(typeof e=="undefined"||typeof e=="object"))try{var r=Wr.call(e);return(r===eh||r===rh||r===ih||r===Qd)&&e("")==null}catch(i){}return!1}));var Fs;js.exports=ke?function(e){if(kn(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;try{ke(e,null,En)}catch(r){if(r!==Zr)return!1}return!Sn(e)&&xn(e)}:function(e){if(kn(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;if(nh)return xn(e);if(Sn(e))return!1;var r=Wr.call(e);return r!==Jd&&r!==th&&!/^\[object HTML/.test(r)?!1:xn(e)}});var Hs=O((Xg,Ls)=>{"use strict";var oh=Ms(),sh=Object.prototype.toString,zs=Object.prototype.hasOwnProperty,ch=function(e,r,i){for(var n=0,a=e.length;n=3&&(n=i),uh(e)?ch(e,r,n):typeof e=="string"?fh(e,r,n):lh(e,r,n)}});var qs=O((Yg,Gs)=>{"use strict";Gs.exports=["Float16Array","Float32Array","Float64Array","Int8Array","Int16Array","Int32Array","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array"]});var Ws=O((Kg,Zs)=>{"use strict";var An=qs(),dh=typeof globalThis=="undefined"?global:globalThis;Zs.exports=function(){for(var e=[],r=0;r{"use strict";var Vs=Xe(),hh=un(),Ae=ye(),Xs=be();Ys.exports=function(e,r,i){if(!e||typeof e!="object"&&typeof e!="function")throw new Ae("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new Ae("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new Ae("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new Ae("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new Ae("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new Ae("`loose`, if provided, must be a boolean");var n=arguments.length>3?arguments[3]:null,a=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,l=!!Xs&&Xs(e,r);if(Vs)Vs(e,r,{configurable:o===null&&l?l.configurable:!o,enumerable:n===null&&l?l.enumerable:!n,value:i,writable:a===null&&l?l.writable:!a});else if(s||!n&&!a&&!o)e[r]=i;else throw new hh("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var tc=O((Jg,Js)=>{"use strict";var Tn=Xe(),Qs=function(){return!!Tn};Qs.hasArrayLengthDefineBug=function(){if(!Tn)return null;try{return Tn([],"length",{value:1}).length!==1}catch(e){return!0}};Js.exports=Qs});var ac=O((ty,nc)=>{"use strict";var ph=_n(),ec=Ks(),wh=tc()(),rc=be(),ic=ye(),mh=ph("%Math.floor%");nc.exports=function(e,r){if(typeof e!="function")throw new ic("`fn` is not a function");if(typeof r!="number"||r<0||r>4294967295||mh(r)!==r)throw new ic("`length` must be a positive 32-bit integer");var i=arguments.length>2&&!!arguments[2],n=!0,a=!0;if("length"in e&&rc){var o=rc(e,"length");o&&!o.configurable&&(n=!1),o&&!o.writable&&(a=!1)}return(n||a||!i)&&(wh?ec(e,"length",r,!0,!0):ec(e,"length",r)),e}});var sc=O((ey,oc)=>{"use strict";var gh=_e(),yh=Lr(),bh=wn();oc.exports=function(){return bh(gh,yh,arguments)}});var lc=O((ry,Vr)=>{"use strict";var _h=ac(),cc=Xe(),vh=Hr(),fc=sc();Vr.exports=function(e){var r=vh(arguments),i=1+e.length-(arguments.length-1);return _h(r,i>0?i:0,!0)};cc?cc(Vr.exports,"apply",{value:fc}):Vr.exports.apply=fc});var dc=O((iy,uc)=>{"use strict";var xh=dn();uc.exports=function(){return xh()&&!!Symbol.toStringTag}});var gc=O((ny,mc)=>{"use strict";var Kr=Hs(),Eh=Ws(),hc=lc(),On=vn(),Yr=be(),Xr=gn(),Sh=On("Object.prototype.toString"),wc=dc()(),pc=typeof globalThis=="undefined"?global:globalThis,$n=Eh(),Rn=On("String.prototype.slice"),kh=On("Array.prototype.indexOf",!0)||function(e,r){for(var i=0;i-1?r:r!=="Object"?!1:Th(e)}return Yr?Ah(e):null}});var bc=O((ay,yc)=>{"use strict";var $h=gc();yc.exports=function(e){return!!$h(e)}});var vc=O((oy,_c)=>{"use strict";var Oh=ye(),Rh=vn(),Ih=Rh("TypedArray.prototype.buffer",!0),Ph=bc();_c.exports=Ih||function(e){if(!Ph(e))throw new Oh("Not a Typed Array");return e.buffer}});var Sc=O((sy,Ec)=>{"use strict";var vt=Ur().Buffer,Ch=_o(),Bh=vc(),Dh=ArrayBuffer.isView||function(e){try{return Bh(e),!0}catch(r){return!1}},Nh=typeof Uint8Array!="undefined",xc=typeof ArrayBuffer!="undefined"&&typeof Uint8Array!="undefined",Fh=xc&&(vt.prototype instanceof Uint8Array||vt.TYPED_ARRAY_SUPPORT);Ec.exports=function(e,r){if(vt.isBuffer(e))return e.constructor&&!("isBuffer"in e)?vt.from(e):e;if(typeof e=="string")return vt.from(e,r);if(xc&&Dh(e)){if(e.byteLength===0)return vt.alloc(0);if(Fh){var i=vt.from(e.buffer,e.byteOffset,e.byteLength);if(i.byteLength===e.byteLength)return i}var n=e instanceof Uint8Array?e:new Uint8Array(e.buffer,e.byteOffset,e.byteLength),a=vt.from(n);if(a.length===e.byteLength)return a}if(Nh&&e instanceof Uint8Array)return vt.from(e);var o=Ch(e);if(o)for(var s=0;s255||~~l!==l)throw new RangeError("Array items must be numbers in the range 0-255.")}if(o||vt.isBuffer(e)&&e.constructor&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e))return vt.from(e);throw new TypeError('The "data" argument must be a string, an Array, a Buffer, a Uint8Array, or a DataView.')}});var Ac=O((cy,kc)=>{"use strict";var Uh=Ur().Buffer,jh=Sc();function Jr(t,e){this._block=Uh.alloc(t),this._finalSize=e,this._blockSize=t,this._len=0}Jr.prototype.update=function(t,e){t=jh(t,e||"utf8");for(var r=this._block,i=this._blockSize,n=t.length,a=this._len,o=0;o=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=this._len*8;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var i=(r&4294967295)>>>0,n=(r-i)/4294967296;this._block.writeUInt32BE(n,this._blockSize-8),this._block.writeUInt32BE(i,this._blockSize-4)}this._update(this._block);var a=this._hash();return t?a.toString(t):a};Jr.prototype._update=function(){throw new Error("_update must be implemented by subclass")};kc.exports=Jr});var Oc=O((fy,$c)=>{"use strict";var Mh=mo(),Tc=Ac(),zh=Ur().Buffer,Lh=[1518500249,1859775393,-1894007588,-899497514],Hh=new Array(80);function Je(){this.init(),this._w=Hh,Tc.call(this,64,56)}Mh(Je,Tc);Je.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function Gh(t){return t<<1|t>>>31}function qh(t){return t<<5|t>>>27}function Zh(t){return t<<30|t>>>2}function Wh(t,e,r,i){return t===0?e&r|~e&i:t===2?e&r|e&i|r&i:e^r^i}Je.prototype._update=function(t){for(var e=this._w,r=this._a|0,i=this._b|0,n=this._c|0,a=this._d|0,o=this._e|0,s=0;s<16;++s)e[s]=t.readInt32BE(s*4);for(;s<80;++s)e[s]=Gh(e[s-3]^e[s-8]^e[s-14]^e[s-16]);for(var l=0;l<80;++l){var c=~~(l/20),f=qh(r)+Wh(c,i,n,a)+o+e[l]+Lh[c]|0;o=a,a=n,n=Zh(i),i=r,r=f}this._a=r+this._a|0,this._b=i+this._b|0,this._c=n+this._c|0,this._d=a+this._d|0,this._e=o+this._e|0};Je.prototype._hash=function(){var t=zh.allocUnsafe(20);return t.writeInt32BE(this._a|0,0),t.writeInt32BE(this._b|0,4),t.writeInt32BE(this._c|0,8),t.writeInt32BE(this._d|0,12),t.writeInt32BE(this._e|0,16),t};$c.exports=Je});var Ic=O(In=>{var Rc;(function(t){typeof DO_NOT_EXPORT_CRC=="undefined"?typeof In=="object"?t(In):typeof define=="function"&&define.amd?define(function(){var e={};return t(e),e}):t(Rc={}):t(Rc={})})(function(t){t.version="1.2.2";function e(){for(var p=0,_=new Array(256),w=0;w!=256;++w)p=w,p=p&1?-306674912^p>>>1:p>>>1,p=p&1?-306674912^p>>>1:p>>>1,p=p&1?-306674912^p>>>1:p>>>1,p=p&1?-306674912^p>>>1:p>>>1,p=p&1?-306674912^p>>>1:p>>>1,p=p&1?-306674912^p>>>1:p>>>1,p=p&1?-306674912^p>>>1:p>>>1,p=p&1?-306674912^p>>>1:p>>>1,_[w]=p;return typeof Int32Array!="undefined"?new Int32Array(_):_}var r=e();function i(p){var _=0,w=0,A=0,E=typeof Int32Array!="undefined"?new Int32Array(4096):new Array(4096);for(A=0;A!=256;++A)E[A]=p[A];for(A=0;A!=256;++A)for(w=p[A],_=256+A;_<4096;_+=256)w=E[_]=w>>>8^p[w&255];var $=[];for(A=1;A!=16;++A)$[A-1]=typeof Int32Array!="undefined"?E.subarray(A*256,A*256+256):E.slice(A*256,A*256+256);return $}var n=i(r),a=n[0],o=n[1],s=n[2],l=n[3],c=n[4],f=n[5],d=n[6],u=n[7],h=n[8],m=n[9],g=n[10],y=n[11],b=n[12],v=n[13],k=n[14];function S(p,_){for(var w=_^-1,A=0,E=p.length;A>>8^r[(w^p.charCodeAt(A++))&255];return~w}function x(p,_){for(var w=_^-1,A=p.length-15,E=0;E>8&255]^b[p[E++]^w>>16&255]^y[p[E++]^w>>>24]^g[p[E++]]^m[p[E++]]^h[p[E++]]^u[p[E++]]^d[p[E++]]^f[p[E++]]^c[p[E++]]^l[p[E++]]^s[p[E++]]^o[p[E++]]^a[p[E++]]^r[p[E++]];for(A+=15;E>>8^r[(w^p[E++])&255];return~w}function T(p,_){for(var w=_^-1,A=0,E=p.length,$=0,R=0;A>>8^r[(w^$)&255]:$<2048?(w=w>>>8^r[(w^(192|$>>6&31))&255],w=w>>>8^r[(w^(128|$&63))&255]):$>=55296&&$<57344?($=($&1023)+64,R=p.charCodeAt(A++)&1023,w=w>>>8^r[(w^(240|$>>8&7))&255],w=w>>>8^r[(w^(128|$>>2&63))&255],w=w>>>8^r[(w^(128|R>>6&15|($&3)<<4))&255],w=w>>>8^r[(w^(128|R&63))&255]):(w=w>>>8^r[(w^(224|$>>12&15))&255],w=w>>>8^r[(w^(128|$>>6&63))&255],w=w>>>8^r[(w^(128|$&63))&255]);return~w}t.table=r,t.bstr=S,t.buf=x,t.str=T})});var Ft=O(et=>{"use strict";var Vh=typeof Uint8Array!="undefined"&&typeof Uint16Array!="undefined"&&typeof Int32Array!="undefined";function Xh(t,e){return Object.prototype.hasOwnProperty.call(t,e)}et.assign=function(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var r=e.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(var i in r)Xh(r,i)&&(t[i]=r[i])}}return t};et.shrinkBuf=function(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)};var Yh={arraySet:function(t,e,r,i,n){if(e.subarray&&t.subarray){t.set(e.subarray(r,r+i),n);return}for(var a=0;a{"use strict";var Qh=Ft(),Jh=4,Pc=0,Cc=1,tp=2;function $e(t){for(var e=t.length;--e>=0;)t[e]=0}var ep=0,jc=1,rp=2,ip=3,np=258,Un=29,ar=256,er=ar+1+Un,Te=30,jn=19,Mc=2*er+1,ie=15,Pn=16,ap=7,Mn=256,zc=16,Lc=17,Hc=18,Nn=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],ti=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],op=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Gc=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],sp=512,Ut=new Array((er+2)*2);$e(Ut);var tr=new Array(Te*2);$e(tr);var rr=new Array(sp);$e(rr);var ir=new Array(np-ip+1);$e(ir);var zn=new Array(Un);$e(zn);var ei=new Array(Te);$e(ei);function Cn(t,e,r,i,n){this.static_tree=t,this.extra_bits=e,this.extra_base=r,this.elems=i,this.max_length=n,this.has_stree=t&&t.length}var qc,Zc,Wc;function Bn(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}function Vc(t){return t<256?rr[t]:rr[256+(t>>>7)]}function nr(t,e){t.pending_buf[t.pending++]=e&255,t.pending_buf[t.pending++]=e>>>8&255}function st(t,e,r){t.bi_valid>Pn-r?(t.bi_buf|=e<>Pn-t.bi_valid,t.bi_valid+=r-Pn):(t.bi_buf|=e<>>=1,r<<=1;while(--e>0);return r>>>1}function cp(t){t.bi_valid===16?(nr(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=t.bi_buf&255,t.bi_buf>>=8,t.bi_valid-=8)}function fp(t,e){var r=e.dyn_tree,i=e.max_code,n=e.stat_desc.static_tree,a=e.stat_desc.has_stree,o=e.stat_desc.extra_bits,s=e.stat_desc.extra_base,l=e.stat_desc.max_length,c,f,d,u,h,m,g=0;for(u=0;u<=ie;u++)t.bl_count[u]=0;for(r[t.heap[t.heap_max]*2+1]=0,c=t.heap_max+1;cl&&(u=l,g++),r[f*2+1]=u,!(f>i)&&(t.bl_count[u]++,h=0,f>=s&&(h=o[f-s]),m=r[f*2],t.opt_len+=m*(u+h),a&&(t.static_len+=m*(n[f*2+1]+h)));if(g!==0){do{for(u=l-1;t.bl_count[u]===0;)u--;t.bl_count[u]--,t.bl_count[u+1]+=2,t.bl_count[l]--,g-=2}while(g>0);for(u=l;u!==0;u--)for(f=t.bl_count[u];f!==0;)d=t.heap[--c],!(d>i)&&(r[d*2+1]!==u&&(t.opt_len+=(u-r[d*2+1])*r[d*2],r[d*2+1]=u),f--)}}function Yc(t,e,r){var i=new Array(ie+1),n=0,a,o;for(a=1;a<=ie;a++)i[a]=n=n+r[a-1]<<1;for(o=0;o<=e;o++){var s=t[o*2+1];s!==0&&(t[o*2]=Xc(i[s]++,s))}}function lp(){var t,e,r,i,n,a=new Array(ie+1);for(r=0,i=0;i>=7;i8?nr(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0}function up(t,e,r,i){Qc(t),i&&(nr(t,r),nr(t,~r)),Qh.arraySet(t.pending_buf,t.window,e,r,t.pending),t.pending+=r}function Bc(t,e,r,i){var n=e*2,a=r*2;return t[n]>1;o>=1;o--)Dn(t,r,o);c=a;do o=t.heap[1],t.heap[1]=t.heap[t.heap_len--],Dn(t,r,1),s=t.heap[1],t.heap[--t.heap_max]=o,t.heap[--t.heap_max]=s,r[c*2]=r[o*2]+r[s*2],t.depth[c]=(t.depth[o]>=t.depth[s]?t.depth[o]:t.depth[s])+1,r[o*2+1]=r[s*2+1]=c,t.heap[1]=c++,Dn(t,r,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],fp(t,e),Yc(r,l,t.bl_count)}function Nc(t,e,r){var i,n=-1,a,o=e[0*2+1],s=0,l=7,c=4;for(o===0&&(l=138,c=3),e[(r+1)*2+1]=65535,i=0;i<=r;i++)a=o,o=e[(i+1)*2+1],!(++s=3&&t.bl_tree[Gc[e]*2+1]===0;e--);return t.opt_len+=3*(e+1)+5+5+4,e}function hp(t,e,r,i){var n;for(st(t,e-257,5),st(t,r-1,5),st(t,i-4,4),n=0;n>>=1)if(e&1&&t.dyn_ltree[r*2]!==0)return Pc;if(t.dyn_ltree[9*2]!==0||t.dyn_ltree[10*2]!==0||t.dyn_ltree[13*2]!==0)return Cc;for(r=32;r0?(t.strm.data_type===tp&&(t.strm.data_type=pp(t)),Fn(t,t.l_desc),Fn(t,t.d_desc),o=dp(t),n=t.opt_len+3+7>>>3,a=t.static_len+3+7>>>3,a<=n&&(n=a)):n=a=r+5,r+4<=n&&e!==-1?Jc(t,e,r,i):t.strategy===Jh||a===n?(st(t,(jc<<1)+(i?1:0),3),Dc(t,Ut,tr)):(st(t,(rp<<1)+(i?1:0),3),hp(t,t.l_desc.max_code+1,t.d_desc.max_code+1,o+1),Dc(t,t.dyn_ltree,t.dyn_dtree)),Kc(t),i&&Qc(t)}function yp(t,e,r){return t.pending_buf[t.d_buf+t.last_lit*2]=e>>>8&255,t.pending_buf[t.d_buf+t.last_lit*2+1]=e&255,t.pending_buf[t.l_buf+t.last_lit]=r&255,t.last_lit++,e===0?t.dyn_ltree[r*2]++:(t.matches++,e--,t.dyn_ltree[(ir[r]+ar+1)*2]++,t.dyn_dtree[Vc(e)*2]++),t.last_lit===t.lit_bufsize-1}Oe._tr_init=wp;Oe._tr_stored_block=Jc;Oe._tr_flush_block=gp;Oe._tr_tally=yp;Oe._tr_align=mp});var Ln=O((hy,ef)=>{"use strict";function bp(t,e,r,i){for(var n=t&65535|0,a=t>>>16&65535|0,o=0;r!==0;){o=r>2e3?2e3:r,r-=o;do n=n+e[i++]|0,a=a+n|0;while(--o);n%=65521,a%=65521}return n|a<<16|0}ef.exports=bp});var Hn=O((py,rf)=>{"use strict";function _p(){for(var t,e=[],r=0;r<256;r++){t=r;for(var i=0;i<8;i++)t=t&1?3988292384^t>>>1:t>>>1;e[r]=t}return e}var vp=_p();function xp(t,e,r,i){var n=vp,a=i+r;t^=-1;for(var o=i;o>>8^n[(t^e[o])&255];return t^-1}rf.exports=xp});var ri=O((wy,nf)=>{"use strict";nf.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var hf=O(Pt=>{"use strict";var rt=Ft(),mt=tf(),cf=Ln(),qt=Hn(),Ep=ri(),se=0,Sp=1,kp=3,Yt=4,af=5,It=0,of=1,gt=-2,Ap=-3,Gn=-5,Tp=-1,$p=1,ii=2,Op=3,Rp=4,Ip=0,Pp=2,si=8,Cp=9,Bp=15,Dp=8,Np=29,Fp=256,Zn=Fp+1+Np,Up=30,jp=19,Mp=2*Zn+1,zp=15,U=3,Vt=258,xt=Vt+U+1,Lp=32,ci=42,Wn=69,ni=73,ai=91,oi=103,ne=113,sr=666,Z=1,cr=2,ae=3,Pe=4,Hp=3;function Xt(t,e){return t.msg=Ep[e],e}function sf(t){return(t<<1)-(t>4?9:0)}function Wt(t){for(var e=t.length;--e>=0;)t[e]=0}function Zt(t){var e=t.state,r=e.pending;r>t.avail_out&&(r=t.avail_out),r!==0&&(rt.arraySet(t.output,e.pending_buf,e.pending_out,r,t.next_out),t.next_out+=r,e.pending_out+=r,t.total_out+=r,t.avail_out-=r,e.pending-=r,e.pending===0&&(e.pending_out=0))}function Y(t,e){mt._tr_flush_block(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,Zt(t.strm)}function j(t,e){t.pending_buf[t.pending++]=e}function or(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=e&255}function Gp(t,e,r,i){var n=t.avail_in;return n>i&&(n=i),n===0?0:(t.avail_in-=n,rt.arraySet(e,t.input,t.next_in,n,r),t.state.wrap===1?t.adler=cf(t.adler,e,n,r):t.state.wrap===2&&(t.adler=qt(t.adler,e,n,r)),t.next_in+=n,t.total_in+=n,n)}function ff(t,e){var r=t.max_chain_length,i=t.strstart,n,a,o=t.prev_length,s=t.nice_match,l=t.strstart>t.w_size-xt?t.strstart-(t.w_size-xt):0,c=t.window,f=t.w_mask,d=t.prev,u=t.strstart+Vt,h=c[i+o-1],m=c[i+o];t.prev_length>=t.good_match&&(r>>=2),s>t.lookahead&&(s=t.lookahead);do if(n=e,!(c[n+o]!==m||c[n+o-1]!==h||c[n]!==c[i]||c[++n]!==c[i+1])){i+=2,n++;do;while(c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&c[++i]===c[++n]&&io){if(t.match_start=e,o=a,a>=s)break;h=c[i+o-1],m=c[i+o]}}while((e=d[e&f])>l&&--r!==0);return o<=t.lookahead?o:t.lookahead}function oe(t){var e=t.w_size,r,i,n,a,o;do{if(a=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-xt)){rt.arraySet(t.window,t.window,e,e,0),t.match_start-=e,t.strstart-=e,t.block_start-=e,i=t.hash_size,r=i;do n=t.head[--r],t.head[r]=n>=e?n-e:0;while(--i);i=e,r=i;do n=t.prev[--r],t.prev[r]=n>=e?n-e:0;while(--i);a+=e}if(t.strm.avail_in===0)break;if(i=Gp(t.strm,t.window,t.strstart+t.lookahead,a),t.lookahead+=i,t.lookahead+t.insert>=U)for(o=t.strstart-t.insert,t.ins_h=t.window[o],t.ins_h=(t.ins_h<t.pending_buf_size-5&&(r=t.pending_buf_size-5);;){if(t.lookahead<=1){if(oe(t),t.lookahead===0&&e===se)return Z;if(t.lookahead===0)break}t.strstart+=t.lookahead,t.lookahead=0;var i=t.block_start+r;if((t.strstart===0||t.strstart>=i)&&(t.lookahead=t.strstart-i,t.strstart=i,Y(t,!1),t.strm.avail_out===0)||t.strstart-t.block_start>=t.w_size-xt&&(Y(t,!1),t.strm.avail_out===0))return Z}return t.insert=0,e===Yt?(Y(t,!0),t.strm.avail_out===0?ae:Pe):(t.strstart>t.block_start&&(Y(t,!1),t.strm.avail_out===0),Z)}function qn(t,e){for(var r,i;;){if(t.lookahead=U&&(t.ins_h=(t.ins_h<=U)if(i=mt._tr_tally(t,t.strstart-t.match_start,t.match_length-U),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=U){t.match_length--;do t.strstart++,t.ins_h=(t.ins_h<=U&&(t.ins_h=(t.ins_h<4096)&&(t.match_length=U-1)),t.prev_length>=U&&t.match_length<=t.prev_length){n=t.strstart+t.lookahead-U,i=mt._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-U),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=n&&(t.ins_h=(t.ins_h<=U&&t.strstart>0&&(n=t.strstart-1,i=o[n],i===o[++n]&&i===o[++n]&&i===o[++n])){a=t.strstart+Vt;do;while(i===o[++n]&&i===o[++n]&&i===o[++n]&&i===o[++n]&&i===o[++n]&&i===o[++n]&&i===o[++n]&&i===o[++n]&&nt.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=U?(r=mt._tr_tally(t,1,t.match_length-U),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(r=mt._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),r&&(Y(t,!1),t.strm.avail_out===0))return Z}return t.insert=0,e===Yt?(Y(t,!0),t.strm.avail_out===0?ae:Pe):t.last_lit&&(Y(t,!1),t.strm.avail_out===0)?Z:cr}function Wp(t,e){for(var r;;){if(t.lookahead===0&&(oe(t),t.lookahead===0)){if(e===se)return Z;break}if(t.match_length=0,r=mt._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,r&&(Y(t,!1),t.strm.avail_out===0))return Z}return t.insert=0,e===Yt?(Y(t,!0),t.strm.avail_out===0?ae:Pe):t.last_lit&&(Y(t,!1),t.strm.avail_out===0)?Z:cr}function Rt(t,e,r,i,n){this.good_length=t,this.max_lazy=e,this.nice_length=r,this.max_chain=i,this.func=n}var Ie;Ie=[new Rt(0,0,0,0,qp),new Rt(4,4,8,4,qn),new Rt(4,5,16,8,qn),new Rt(4,6,32,32,qn),new Rt(4,4,16,16,Re),new Rt(8,16,32,32,Re),new Rt(8,16,128,128,Re),new Rt(8,32,128,256,Re),new Rt(32,128,258,1024,Re),new Rt(32,258,258,4096,Re)];function Vp(t){t.window_size=2*t.w_size,Wt(t.head),t.max_lazy_match=Ie[t.level].max_lazy,t.good_match=Ie[t.level].good_length,t.nice_match=Ie[t.level].nice_length,t.max_chain_length=Ie[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=U-1,t.match_available=0,t.ins_h=0}function Xp(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=si,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new rt.Buf16(Mp*2),this.dyn_dtree=new rt.Buf16((2*Up+1)*2),this.bl_tree=new rt.Buf16((2*jp+1)*2),Wt(this.dyn_ltree),Wt(this.dyn_dtree),Wt(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new rt.Buf16(zp+1),this.heap=new rt.Buf16(2*Zn+1),Wt(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new rt.Buf16(2*Zn+1),Wt(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function lf(t){var e;return!t||!t.state?Xt(t,gt):(t.total_in=t.total_out=0,t.data_type=Pp,e=t.state,e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?ci:ne,t.adler=e.wrap===2?0:1,e.last_flush=se,mt._tr_init(e),It)}function uf(t){var e=lf(t);return e===It&&Vp(t.state),e}function Yp(t,e){return!t||!t.state||t.state.wrap!==2?gt:(t.state.gzhead=e,It)}function df(t,e,r,i,n,a){if(!t)return gt;var o=1;if(e===Tp&&(e=6),i<0?(o=0,i=-i):i>15&&(o=2,i-=16),n<1||n>Cp||r!==si||i<8||i>15||e<0||e>9||a<0||a>Rp)return Xt(t,gt);i===8&&(i=9);var s=new Xp;return t.state=s,s.strm=t,s.wrap=o,s.gzhead=null,s.w_bits=i,s.w_size=1<af||e<0)return t?Xt(t,gt):gt;if(i=t.state,!t.output||!t.input&&t.avail_in!==0||i.status===sr&&e!==Yt)return Xt(t,t.avail_out===0?Gn:gt);if(i.strm=t,r=i.last_flush,i.last_flush=e,i.status===ci)if(i.wrap===2)t.adler=0,j(i,31),j(i,139),j(i,8),i.gzhead?(j(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),j(i,i.gzhead.time&255),j(i,i.gzhead.time>>8&255),j(i,i.gzhead.time>>16&255),j(i,i.gzhead.time>>24&255),j(i,i.level===9?2:i.strategy>=ii||i.level<2?4:0),j(i,i.gzhead.os&255),i.gzhead.extra&&i.gzhead.extra.length&&(j(i,i.gzhead.extra.length&255),j(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(t.adler=qt(t.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=Wn):(j(i,0),j(i,0),j(i,0),j(i,0),j(i,0),j(i,i.level===9?2:i.strategy>=ii||i.level<2?4:0),j(i,Hp),i.status=ne);else{var o=si+(i.w_bits-8<<4)<<8,s=-1;i.strategy>=ii||i.level<2?s=0:i.level<6?s=1:i.level===6?s=2:s=3,o|=s<<6,i.strstart!==0&&(o|=Lp),o+=31-o%31,i.status=ne,or(i,o),i.strstart!==0&&(or(i,t.adler>>>16),or(i,t.adler&65535)),t.adler=1}if(i.status===Wn)if(i.gzhead.extra){for(n=i.pending;i.gzindex<(i.gzhead.extra.length&65535)&&!(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>n&&(t.adler=qt(t.adler,i.pending_buf,i.pending-n,n)),Zt(t),n=i.pending,i.pending===i.pending_buf_size));)j(i,i.gzhead.extra[i.gzindex]&255),i.gzindex++;i.gzhead.hcrc&&i.pending>n&&(t.adler=qt(t.adler,i.pending_buf,i.pending-n,n)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=ni)}else i.status=ni;if(i.status===ni)if(i.gzhead.name){n=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>n&&(t.adler=qt(t.adler,i.pending_buf,i.pending-n,n)),Zt(t),n=i.pending,i.pending===i.pending_buf_size)){a=1;break}i.gzindexn&&(t.adler=qt(t.adler,i.pending_buf,i.pending-n,n)),a===0&&(i.gzindex=0,i.status=ai)}else i.status=ai;if(i.status===ai)if(i.gzhead.comment){n=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>n&&(t.adler=qt(t.adler,i.pending_buf,i.pending-n,n)),Zt(t),n=i.pending,i.pending===i.pending_buf_size)){a=1;break}i.gzindexn&&(t.adler=qt(t.adler,i.pending_buf,i.pending-n,n)),a===0&&(i.status=oi)}else i.status=oi;if(i.status===oi&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&Zt(t),i.pending+2<=i.pending_buf_size&&(j(i,t.adler&255),j(i,t.adler>>8&255),t.adler=0,i.status=ne)):i.status=ne),i.pending!==0){if(Zt(t),t.avail_out===0)return i.last_flush=-1,It}else if(t.avail_in===0&&sf(e)<=sf(r)&&e!==Yt)return Xt(t,Gn);if(i.status===sr&&t.avail_in!==0)return Xt(t,Gn);if(t.avail_in!==0||i.lookahead!==0||e!==se&&i.status!==sr){var l=i.strategy===ii?Wp(i,e):i.strategy===Op?Zp(i,e):Ie[i.level].func(i,e);if((l===ae||l===Pe)&&(i.status=sr),l===Z||l===ae)return t.avail_out===0&&(i.last_flush=-1),It;if(l===cr&&(e===Sp?mt._tr_align(i):e!==af&&(mt._tr_stored_block(i,0,0,!1),e===kp&&(Wt(i.head),i.lookahead===0&&(i.strstart=0,i.block_start=0,i.insert=0))),Zt(t),t.avail_out===0))return i.last_flush=-1,It}return e!==Yt?It:i.wrap<=0?of:(i.wrap===2?(j(i,t.adler&255),j(i,t.adler>>8&255),j(i,t.adler>>16&255),j(i,t.adler>>24&255),j(i,t.total_in&255),j(i,t.total_in>>8&255),j(i,t.total_in>>16&255),j(i,t.total_in>>24&255)):(or(i,t.adler>>>16),or(i,t.adler&65535)),Zt(t),i.wrap>0&&(i.wrap=-i.wrap),i.pending!==0?It:of)}function Jp(t){var e;return!t||!t.state?gt:(e=t.state.status,e!==ci&&e!==Wn&&e!==ni&&e!==ai&&e!==oi&&e!==ne&&e!==sr?Xt(t,gt):(t.state=null,e===ne?Xt(t,Ap):It))}function tw(t,e){var r=e.length,i,n,a,o,s,l,c,f;if(!t||!t.state||(i=t.state,o=i.wrap,o===2||o===1&&i.status!==ci||i.lookahead))return gt;for(o===1&&(t.adler=cf(t.adler,e,r,0)),i.wrap=0,r>=i.w_size&&(o===0&&(Wt(i.head),i.strstart=0,i.block_start=0,i.insert=0),f=new rt.Buf8(i.w_size),rt.arraySet(f,e,r-i.w_size,i.w_size,0),e=f,r=i.w_size),s=t.avail_in,l=t.next_in,c=t.input,t.avail_in=r,t.next_in=0,t.input=e,oe(i);i.lookahead>=U;){n=i.strstart,a=i.lookahead-(U-1);do i.ins_h=(i.ins_h<{"use strict";var fi=Ft(),pf=!0,wf=!0;try{String.fromCharCode.apply(null,[0])}catch(t){pf=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){wf=!1}var fr=new fi.Buf8(256);for(jt=0;jt<256;jt++)fr[jt]=jt>=252?6:jt>=248?5:jt>=240?4:jt>=224?3:jt>=192?2:1;var jt;fr[254]=fr[254]=1;Ce.string2buf=function(t){var e,r,i,n,a,o=t.length,s=0;for(n=0;n>>6,e[a++]=128|r&63):r<65536?(e[a++]=224|r>>>12,e[a++]=128|r>>>6&63,e[a++]=128|r&63):(e[a++]=240|r>>>18,e[a++]=128|r>>>12&63,e[a++]=128|r>>>6&63,e[a++]=128|r&63);return e};function mf(t,e){if(e<65534&&(t.subarray&&wf||!t.subarray&&pf))return String.fromCharCode.apply(null,fi.shrinkBuf(t,e));for(var r="",i=0;i4){s[i++]=65533,r+=a-1;continue}for(n&=a===2?31:a===3?15:7;a>1&&r1){s[i++]=65533;continue}n<65536?s[i++]=n:(n-=65536,s[i++]=55296|n>>10&1023,s[i++]=56320|n&1023)}return mf(s,i)};Ce.utf8border=function(t,e){var r;for(e=e||t.length,e>t.length&&(e=t.length),r=e-1;r>=0&&(t[r]&192)===128;)r--;return r<0||r===0?e:r+fr[t[r]]>e?r:e}});var Xn=O((yy,gf)=>{"use strict";function ew(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}gf.exports=ew});var vf=O(dr=>{"use strict";var lr=hf(),ur=Ft(),Kn=Vn(),Qn=ri(),rw=Xn(),_f=Object.prototype.toString,iw=0,Yn=4,Be=0,yf=1,bf=2,nw=-1,aw=0,ow=8;function ce(t){if(!(this instanceof ce))return new ce(t);this.options=ur.assign({level:nw,method:ow,chunkSize:16384,windowBits:15,memLevel:8,strategy:aw,to:""},t||{});var e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new rw,this.strm.avail_out=0;var r=lr.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(r!==Be)throw new Error(Qn[r]);if(e.header&&lr.deflateSetHeader(this.strm,e.header),e.dictionary){var i;if(typeof e.dictionary=="string"?i=Kn.string2buf(e.dictionary):_f.call(e.dictionary)==="[object ArrayBuffer]"?i=new Uint8Array(e.dictionary):i=e.dictionary,r=lr.deflateSetDictionary(this.strm,i),r!==Be)throw new Error(Qn[r]);this._dict_set=!0}}ce.prototype.push=function(t,e){var r=this.strm,i=this.options.chunkSize,n,a;if(this.ended)return!1;a=e===~~e?e:e===!0?Yn:iw,typeof t=="string"?r.input=Kn.string2buf(t):_f.call(t)==="[object ArrayBuffer]"?r.input=new Uint8Array(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;do{if(r.avail_out===0&&(r.output=new ur.Buf8(i),r.next_out=0,r.avail_out=i),n=lr.deflate(r,a),n!==yf&&n!==Be)return this.onEnd(n),this.ended=!0,!1;(r.avail_out===0||r.avail_in===0&&(a===Yn||a===bf))&&(this.options.to==="string"?this.onData(Kn.buf2binstring(ur.shrinkBuf(r.output,r.next_out))):this.onData(ur.shrinkBuf(r.output,r.next_out)))}while((r.avail_in>0||r.avail_out===0)&&n!==yf);return a===Yn?(n=lr.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===Be):(a===bf&&(this.onEnd(Be),r.avail_out=0),!0)};ce.prototype.onData=function(t){this.chunks.push(t)};ce.prototype.onEnd=function(t){t===Be&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=ur.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function Jn(t,e){var r=new ce(e);if(r.push(t,!0),r.err)throw r.msg||Qn[r.err];return r.result}function sw(t,e){return e=e||{},e.raw=!0,Jn(t,e)}function cw(t,e){return e=e||{},e.gzip=!0,Jn(t,e)}dr.Deflate=ce;dr.deflate=Jn;dr.deflateRaw=sw;dr.gzip=cw});var Ef=O((_y,xf)=>{"use strict";var li=30,fw=12;xf.exports=function(e,r){var i,n,a,o,s,l,c,f,d,u,h,m,g,y,b,v,k,S,x,T,p,_,w,A,E;i=e.state,n=e.next_in,A=e.input,a=n+(e.avail_in-5),o=e.next_out,E=e.output,s=o-(r-e.avail_out),l=o+(e.avail_out-257),c=i.dmax,f=i.wsize,d=i.whave,u=i.wnext,h=i.window,m=i.hold,g=i.bits,y=i.lencode,b=i.distcode,v=(1<>>24,m>>>=x,g-=x,x=S>>>16&255,x===0)E[o++]=S&65535;else if(x&16){T=S&65535,x&=15,x&&(g>>=x,g-=x),g<15&&(m+=A[n++]<>>24,m>>>=x,g-=x,x=S>>>16&255,x&16){if(p=S&65535,x&=15,gc){e.msg="invalid distance too far back",i.mode=li;break t}if(m>>>=x,g-=x,x=o-s,p>x){if(x=p-x,x>d&&i.sane){e.msg="invalid distance too far back",i.mode=li;break t}if(_=0,w=h,u===0){if(_+=f-x,x2;)E[o++]=w[_++],E[o++]=w[_++],E[o++]=w[_++],T-=3;T&&(E[o++]=w[_++],T>1&&(E[o++]=w[_++]))}else{_=o-p;do E[o++]=E[_++],E[o++]=E[_++],E[o++]=E[_++],T-=3;while(T>2);T&&(E[o++]=E[_++],T>1&&(E[o++]=E[_++]))}}else if(x&64){e.msg="invalid distance code",i.mode=li;break t}else{S=b[(S&65535)+(m&(1<>3,n-=T,g-=T<<3,m&=(1<{"use strict";var Sf=Ft(),De=15,kf=852,Af=592,Tf=0,ta=1,$f=2,lw=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],uw=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],dw=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],hw=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];Of.exports=function(e,r,i,n,a,o,s,l){var c=l.bits,f=0,d=0,u=0,h=0,m=0,g=0,y=0,b=0,v=0,k=0,S,x,T,p,_,w=null,A=0,E,$=new Sf.Buf16(De+1),R=new Sf.Buf16(De+1),B=null,H=0,ht,W,tt;for(f=0;f<=De;f++)$[f]=0;for(d=0;d=1&&$[h]===0;h--);if(m>h&&(m=h),h===0)return a[o++]=1<<24|64<<16|0,a[o++]=1<<24|64<<16|0,l.bits=1,0;for(u=1;u0&&(e===Tf||h!==1))return-1;for(R[1]=0,f=1;fkf||e===$f&&v>Af)return 1;for(;;){ht=f-y,s[d]E?(W=B[H+s[d]],tt=w[A+s[d]]):(W=96,tt=0),S=1<>y)+x]=ht<<24|W<<16|tt|0;while(x!==0);for(S=1<>=1;if(S!==0?(k&=S-1,k+=S):k=0,d++,--$[f]===0){if(f===h)break;f=r[i+s[d]]}if(f>m&&(k&p)!==T){for(y===0&&(y=m),_+=u,g=f-y,b=1<kf||e===$f&&v>Af)return 1;T=k&p,a[T]=m<<24|g<<16|_-o|0}}return k!==0&&(a[_+k]=f-y<<24|64<<16|0),l.bits=m,0}});var ul=O(Et=>{"use strict";var ut=Ft(),oa=Ln(),Ct=Hn(),pw=Ef(),hr=Rf(),ww=0,rl=1,il=2,If=4,mw=5,ui=6,fe=0,gw=1,yw=2,yt=-2,nl=-3,sa=-4,bw=-5,Pf=8,al=1,Cf=2,Bf=3,Df=4,Nf=5,Ff=6,Uf=7,jf=8,Mf=9,zf=10,pi=11,Mt=12,ea=13,Lf=14,ra=15,Hf=16,Gf=17,qf=18,Zf=19,di=20,hi=21,Wf=22,Vf=23,Xf=24,Yf=25,Kf=26,ia=27,Qf=28,Jf=29,z=30,ca=31,_w=32,vw=852,xw=592,Ew=15,Sw=Ew;function tl(t){return(t>>>24&255)+(t>>>8&65280)+((t&65280)<<8)+((t&255)<<24)}function kw(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new ut.Buf16(320),this.work=new ut.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function ol(t){var e;return!t||!t.state?yt:(e=t.state,t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=e.wrap&1),e.mode=al,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new ut.Buf32(vw),e.distcode=e.distdyn=new ut.Buf32(xw),e.sane=1,e.back=-1,fe)}function sl(t){var e;return!t||!t.state?yt:(e=t.state,e.wsize=0,e.whave=0,e.wnext=0,ol(t))}function cl(t,e){var r,i;return!t||!t.state||(i=t.state,e<0?(r=0,e=-e):(r=(e>>4)+1,e<48&&(e&=15)),e&&(e<8||e>15))?yt:(i.window!==null&&i.wbits!==e&&(i.window=null),i.wrap=r,i.wbits=e,sl(t))}function fl(t,e){var r,i;return t?(i=new kw,t.state=i,i.window=null,r=cl(t,e),r!==fe&&(t.state=null),r):yt}function Aw(t){return fl(t,Sw)}var el=!0,na,aa;function Tw(t){if(el){var e;for(na=new ut.Buf32(512),aa=new ut.Buf32(32),e=0;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(hr(rl,t.lens,0,288,na,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;hr(il,t.lens,0,32,aa,0,t.work,{bits:5}),el=!1}t.lencode=na,t.lenbits=9,t.distcode=aa,t.distbits=5}function ll(t,e,r,i){var n,a=t.state;return a.window===null&&(a.wsize=1<=a.wsize?(ut.arraySet(a.window,e,r-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):(n=a.wsize-a.wnext,n>i&&(n=i),ut.arraySet(a.window,e,r-i,n,a.wnext),i-=n,i?(ut.arraySet(a.window,e,r-i,i,0),a.wnext=i,a.whave=a.wsize):(a.wnext+=n,a.wnext===a.wsize&&(a.wnext=0),a.whave>>8&255,r.check=Ct(r.check,w,2,0),c=0,f=0,r.mode=Cf;break}if(r.flags=0,r.head&&(r.head.done=!1),!(r.wrap&1)||(((c&255)<<8)+(c>>8))%31){t.msg="incorrect header check",r.mode=z;break}if((c&15)!==Pf){t.msg="unknown compression method",r.mode=z;break}if(c>>>=4,f-=4,p=(c&15)+8,r.wbits===0)r.wbits=p;else if(p>r.wbits){t.msg="invalid window size",r.mode=z;break}r.dmax=1<>8&1),r.flags&512&&(w[0]=c&255,w[1]=c>>>8&255,r.check=Ct(r.check,w,2,0)),c=0,f=0,r.mode=Bf;case Bf:for(;f<32;){if(s===0)break t;s--,c+=i[a++]<>>8&255,w[2]=c>>>16&255,w[3]=c>>>24&255,r.check=Ct(r.check,w,4,0)),c=0,f=0,r.mode=Df;case Df:for(;f<16;){if(s===0)break t;s--,c+=i[a++]<>8),r.flags&512&&(w[0]=c&255,w[1]=c>>>8&255,r.check=Ct(r.check,w,2,0)),c=0,f=0,r.mode=Nf;case Nf:if(r.flags&1024){for(;f<16;){if(s===0)break t;s--,c+=i[a++]<>>8&255,r.check=Ct(r.check,w,2,0)),c=0,f=0}else r.head&&(r.head.extra=null);r.mode=Ff;case Ff:if(r.flags&1024&&(h=r.length,h>s&&(h=s),h&&(r.head&&(p=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),ut.arraySet(r.head.extra,i,a,h,p)),r.flags&512&&(r.check=Ct(r.check,i,h,a)),s-=h,a+=h,r.length-=h),r.length))break t;r.length=0,r.mode=Uf;case Uf:if(r.flags&2048){if(s===0)break t;h=0;do p=i[a+h++],r.head&&p&&r.length<65536&&(r.head.name+=String.fromCharCode(p));while(p&&h>9&1,r.head.done=!0),t.adler=r.check=0,r.mode=Mt;break;case zf:for(;f<32;){if(s===0)break t;s--,c+=i[a++]<>>=f&7,f-=f&7,r.mode=ia;break}for(;f<3;){if(s===0)break t;s--,c+=i[a++]<>>=1,f-=1,c&3){case 0:r.mode=Lf;break;case 1:if(Tw(r),r.mode=di,e===ui){c>>>=2,f-=2;break t}break;case 2:r.mode=Gf;break;case 3:t.msg="invalid block type",r.mode=z}c>>>=2,f-=2;break;case Lf:for(c>>>=f&7,f-=f&7;f<32;){if(s===0)break t;s--,c+=i[a++]<>>16^65535)){t.msg="invalid stored block lengths",r.mode=z;break}if(r.length=c&65535,c=0,f=0,r.mode=ra,e===ui)break t;case ra:r.mode=Hf;case Hf:if(h=r.length,h){if(h>s&&(h=s),h>l&&(h=l),h===0)break t;ut.arraySet(n,i,a,h,o),s-=h,a+=h,l-=h,o+=h,r.length-=h;break}r.mode=Mt;break;case Gf:for(;f<14;){if(s===0)break t;s--,c+=i[a++]<>>=5,f-=5,r.ndist=(c&31)+1,c>>>=5,f-=5,r.ncode=(c&15)+4,c>>>=4,f-=4,r.nlen>286||r.ndist>30){t.msg="too many length or distance symbols",r.mode=z;break}r.have=0,r.mode=qf;case qf:for(;r.have>>=3,f-=3}for(;r.have<19;)r.lens[$[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,A={bits:r.lenbits},_=hr(ww,r.lens,0,19,r.lencode,0,r.work,A),r.lenbits=A.bits,_){t.msg="invalid code lengths set",r.mode=z;break}r.have=0,r.mode=Zf;case Zf:for(;r.have>>24,v=y>>>16&255,k=y&65535,!(b<=f);){if(s===0)break t;s--,c+=i[a++]<>>=b,f-=b,r.lens[r.have++]=k;else{if(k===16){for(E=b+2;f>>=b,f-=b,r.have===0){t.msg="invalid bit length repeat",r.mode=z;break}p=r.lens[r.have-1],h=3+(c&3),c>>>=2,f-=2}else if(k===17){for(E=b+3;f>>=b,f-=b,p=0,h=3+(c&7),c>>>=3,f-=3}else{for(E=b+7;f>>=b,f-=b,p=0,h=11+(c&127),c>>>=7,f-=7}if(r.have+h>r.nlen+r.ndist){t.msg="invalid bit length repeat",r.mode=z;break}for(;h--;)r.lens[r.have++]=p}}if(r.mode===z)break;if(r.lens[256]===0){t.msg="invalid code -- missing end-of-block",r.mode=z;break}if(r.lenbits=9,A={bits:r.lenbits},_=hr(rl,r.lens,0,r.nlen,r.lencode,0,r.work,A),r.lenbits=A.bits,_){t.msg="invalid literal/lengths set",r.mode=z;break}if(r.distbits=6,r.distcode=r.distdyn,A={bits:r.distbits},_=hr(il,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,A),r.distbits=A.bits,_){t.msg="invalid distances set",r.mode=z;break}if(r.mode=di,e===ui)break t;case di:r.mode=hi;case hi:if(s>=6&&l>=258){t.next_out=o,t.avail_out=l,t.next_in=a,t.avail_in=s,r.hold=c,r.bits=f,pw(t,u),o=t.next_out,n=t.output,l=t.avail_out,a=t.next_in,i=t.input,s=t.avail_in,c=r.hold,f=r.bits,r.mode===Mt&&(r.back=-1);break}for(r.back=0;y=r.lencode[c&(1<>>24,v=y>>>16&255,k=y&65535,!(b<=f);){if(s===0)break t;s--,c+=i[a++]<>S)],b=y>>>24,v=y>>>16&255,k=y&65535,!(S+b<=f);){if(s===0)break t;s--,c+=i[a++]<>>=S,f-=S,r.back+=S}if(c>>>=b,f-=b,r.back+=b,r.length=k,v===0){r.mode=Kf;break}if(v&32){r.back=-1,r.mode=Mt;break}if(v&64){t.msg="invalid literal/length code",r.mode=z;break}r.extra=v&15,r.mode=Wf;case Wf:if(r.extra){for(E=r.extra;f>>=r.extra,f-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=Vf;case Vf:for(;y=r.distcode[c&(1<>>24,v=y>>>16&255,k=y&65535,!(b<=f);){if(s===0)break t;s--,c+=i[a++]<>S)],b=y>>>24,v=y>>>16&255,k=y&65535,!(S+b<=f);){if(s===0)break t;s--,c+=i[a++]<>>=S,f-=S,r.back+=S}if(c>>>=b,f-=b,r.back+=b,v&64){t.msg="invalid distance code",r.mode=z;break}r.offset=k,r.extra=v&15,r.mode=Xf;case Xf:if(r.extra){for(E=r.extra;f>>=r.extra,f-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){t.msg="invalid distance too far back",r.mode=z;break}r.mode=Yf;case Yf:if(l===0)break t;if(h=u-l,r.offset>h){if(h=r.offset-h,h>r.whave&&r.sane){t.msg="invalid distance too far back",r.mode=z;break}h>r.wnext?(h-=r.wnext,m=r.wsize-h):m=r.wnext-h,h>r.length&&(h=r.length),g=r.window}else g=n,m=o-r.offset,h=r.length;h>l&&(h=l),l-=h,r.length-=h;do n[o++]=g[m++];while(--h);r.length===0&&(r.mode=hi);break;case Kf:if(l===0)break t;n[o++]=r.length,l--,r.mode=hi;break;case ia:if(r.wrap){for(;f<32;){if(s===0)break t;s--,c|=i[a++]<{"use strict";dl.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var pl=O((Sy,hl)=>{"use strict";function Pw(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}hl.exports=Pw});var ml=O(wr=>{"use strict";var Ne=ul(),pr=Ft(),wi=Vn(),G=fa(),la=ri(),Cw=Xn(),Bw=pl(),wl=Object.prototype.toString;function le(t){if(!(this instanceof le))return new le(t);this.options=pr.assign({chunkSize:16384,windowBits:0,to:""},t||{});var e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,e.windowBits===0&&(e.windowBits=-15)),e.windowBits>=0&&e.windowBits<16&&!(t&&t.windowBits)&&(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&(e.windowBits&15||(e.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Cw,this.strm.avail_out=0;var r=Ne.inflateInit2(this.strm,e.windowBits);if(r!==G.Z_OK)throw new Error(la[r]);if(this.header=new Bw,Ne.inflateGetHeader(this.strm,this.header),e.dictionary&&(typeof e.dictionary=="string"?e.dictionary=wi.string2buf(e.dictionary):wl.call(e.dictionary)==="[object ArrayBuffer]"&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(r=Ne.inflateSetDictionary(this.strm,e.dictionary),r!==G.Z_OK)))throw new Error(la[r])}le.prototype.push=function(t,e){var r=this.strm,i=this.options.chunkSize,n=this.options.dictionary,a,o,s,l,c,f=!1;if(this.ended)return!1;o=e===~~e?e:e===!0?G.Z_FINISH:G.Z_NO_FLUSH,typeof t=="string"?r.input=wi.binstring2buf(t):wl.call(t)==="[object ArrayBuffer]"?r.input=new Uint8Array(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;do{if(r.avail_out===0&&(r.output=new pr.Buf8(i),r.next_out=0,r.avail_out=i),a=Ne.inflate(r,G.Z_NO_FLUSH),a===G.Z_NEED_DICT&&n&&(a=Ne.inflateSetDictionary(this.strm,n)),a===G.Z_BUF_ERROR&&f===!0&&(a=G.Z_OK,f=!1),a!==G.Z_STREAM_END&&a!==G.Z_OK)return this.onEnd(a),this.ended=!0,!1;r.next_out&&(r.avail_out===0||a===G.Z_STREAM_END||r.avail_in===0&&(o===G.Z_FINISH||o===G.Z_SYNC_FLUSH))&&(this.options.to==="string"?(s=wi.utf8border(r.output,r.next_out),l=r.next_out-s,c=wi.buf2string(r.output,s),r.next_out=l,r.avail_out=i-l,l&&pr.arraySet(r.output,r.output,s,l,0),this.onData(c)):this.onData(pr.shrinkBuf(r.output,r.next_out))),r.avail_in===0&&r.avail_out===0&&(f=!0)}while((r.avail_in>0||r.avail_out===0)&&a!==G.Z_STREAM_END);return a===G.Z_STREAM_END&&(o=G.Z_FINISH),o===G.Z_FINISH?(a=Ne.inflateEnd(this.strm),this.onEnd(a),this.ended=!0,a===G.Z_OK):(o===G.Z_SYNC_FLUSH&&(this.onEnd(G.Z_OK),r.avail_out=0),!0)};le.prototype.onData=function(t){this.chunks.push(t)};le.prototype.onEnd=function(t){t===G.Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=pr.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function ua(t,e){var r=new le(e);if(r.push(t,!0),r.err)throw r.msg||la[r.err];return r.result}function Dw(t,e){return e=e||{},e.raw=!0,ua(t,e)}wr.Inflate=le;wr.inflate=ua;wr.inflateRaw=Dw;wr.ungzip=ua});var bl=O((Ay,yl)=>{"use strict";var Nw=Ft().assign,Fw=vf(),Uw=ml(),jw=fa(),gl={};Nw(gl,Fw,Uw,jw);yl.exports=gl});var xl=O((Ty,vl)=>{"use strict";var _l=(t,e)=>function(...r){let i=e.promiseModule;return new i((n,a)=>{e.multiArgs?r.push((...o)=>{e.errorFirst?o[0]?a(o):(o.shift(),n(o)):n(o)}):e.errorFirst?r.push((o,s)=>{o?a(o):n(s)}):r.push(n),t.apply(this,r)})};vl.exports=(t,e)=>{e=Object.assign({exclude:[/.+(Sync|Stream)$/],errorFirst:!0,promiseModule:Promise},e);let r=typeof t;if(!(t!==null&&(r==="object"||r==="function")))throw new TypeError(`Expected \`input\` to be a \`Function\` or \`Object\`, got \`${t===null?"null":r}\``);let i=a=>{let o=s=>typeof s=="string"?a===s:s.test(a);return e.include?e.include.some(o):!e.exclude.some(o)},n;r==="function"?n=function(...a){return e.excludeMain?t(...a):_l(t,e).apply(this,a)}:n=Object.create(Object.getPrototypeOf(t));for(let a in t){let o=t[a];n[a]=typeof o=="function"&&i(a)?_l(o,e):o}return n}});var Il=O(($y,Rl)=>{function El(t){return Array.isArray(t)?t:[t]}var pa="",Sl=" ",da="\\",Mw=/^\s+$/,zw=/(?:[^\\]|^)\\$/,Lw=/^\\!/,Hw=/^\\#/,Gw=/\r?\n/g,qw=/^\.*\/|^\.+$/,ha="/",Tl="node-ignore";typeof Symbol!="undefined"&&(Tl=Symbol.for("node-ignore"));var kl=Tl,Zw=(t,e,r)=>Object.defineProperty(t,e,{value:r}),Ww=/([0-z])-([0-z])/g,$l=()=>!1,Vw=t=>t.replace(Ww,(e,r,i)=>r.charCodeAt(0)<=i.charCodeAt(0)?e:pa),Xw=t=>{let{length:e}=t;return t.slice(0,e-e%2)},Yw=[[/^\uFEFF/,()=>pa],[/((?:\\\\)*?)(\\?\s+)$/,(t,e,r)=>e+(r.indexOf("\\")===0?Sl:pa)],[/(\\+?)\s/g,(t,e)=>{let{length:r}=e;return e.slice(0,r-r%2)+Sl}],[/[\\$.|*+(){^]/g,t=>`\\${t}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(t,e,r)=>e+6{let i=r.replace(/\\\*/g,"[^\\/]*");return e+i}],[/\\\\\\(?=[$.|*+(){^])/g,()=>da],[/\\\\/g,()=>da],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(t,e,r,i,n)=>e===da?`\\[${r}${Xw(i)}${n}`:n==="]"&&i.length%2===0?`[${Vw(r)}${i}]`:"[]"],[/(?:[^*])$/,t=>/\/$/.test(t)?`${t}$`:`${t}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(t,e)=>`${e?`${e}[^/]+`:"[^/]*"}(?=$|\\/$)`]],Al=Object.create(null),Kw=(t,e)=>{let r=Al[t];return r||(r=Yw.reduce((i,[n,a])=>i.replace(n,a.bind(t)),t),Al[t]=r),e?new RegExp(r,"i"):new RegExp(r)},ga=t=>typeof t=="string",Qw=t=>t&&ga(t)&&!Mw.test(t)&&!zw.test(t)&&t.indexOf("#")!==0,Jw=t=>t.split(Gw),wa=class{constructor(e,r,i,n){this.origin=e,this.pattern=r,this.negative=i,this.regex=n}},t0=(t,e)=>{let r=t,i=!1;t.indexOf("!")===0&&(i=!0,t=t.substr(1)),t=t.replace(Lw,"!").replace(Hw,"#");let n=Kw(t,e);return new wa(r,t,i,n)},e0=(t,e)=>{throw new e(t)},zt=(t,e,r)=>ga(t)?t?zt.isNotRelative(t)?r(`path should be a \`path.relative()\`d string, but got "${e}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${e}\``,TypeError),Ol=t=>qw.test(t);zt.isNotRelative=Ol;zt.convert=t=>t;var ma=class{constructor({ignorecase:e=!0,ignoreCase:r=e,allowRelativePaths:i=!1}={}){Zw(this,kl,!0),this._rules=[],this._ignoreCase=r,this._allowRelativePaths=i,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(e){if(e&&e[kl]){this._rules=this._rules.concat(e._rules),this._added=!0;return}if(Qw(e)){let r=t0(e,this._ignoreCase);this._added=!0,this._rules.push(r)}}add(e){return this._added=!1,El(ga(e)?Jw(e):e).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(e){return this.add(e)}_testOne(e,r){let i=!1,n=!1;return this._rules.forEach(a=>{let{negative:o}=a;if(n===o&&i!==n||o&&!i&&!n&&!r)return;a.regex.test(e)&&(i=!o,n=o)}),{ignored:i,unignored:n}}_test(e,r,i,n){let a=e&&zt.convert(e);return zt(a,e,this._allowRelativePaths?$l:e0),this._t(a,r,i,n)}_t(e,r,i,n){if(e in r)return r[e];if(n||(n=e.split(ha)),n.pop(),!n.length)return r[e]=this._testOne(e,i);let a=this._t(n.join(ha)+ha,r,i,n);return r[e]=a.ignored?a:this._testOne(e,i)}ignores(e){return this._test(e,this._ignoreCache,!1).ignored}createFilter(){return e=>!this.ignores(e)}filter(e){return El(e).filter(this.createFilter())}test(e){return this._test(e,this._testCache,!0)}},mi=t=>new ma(t),r0=t=>zt(t&&zt.convert(t),t,$l);mi.isPathValid=r0;mi.default=mi;Rl.exports=mi;if(typeof process!="undefined"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let t=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");zt.convert=t;let e=/^[a-z]:\//i;zt.isNotRelative=r=>e.test(r)||Ol(r)}});var Cl=O((Oy,Pl)=>{"use strict";function i0(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Bt(t,e,r){return e=e instanceof RegExp?e:new RegExp(i0(e),"g"),t.replace(e,r)}var n0={clean:function(e){if(typeof e!="string")throw new Error("Expected a string, received: "+e);return e=Bt(e,"./","/"),e=Bt(e,"..","."),e=Bt(e," ","-"),e=Bt(e,/^[~^:?*\\\-]/g,""),e=Bt(e,/[~^:?*\\]/g,"-"),e=Bt(e,/[~^:?*\\\-]$/g,""),e=Bt(e,"@{","-"),e=Bt(e,/\.$/g,""),e=Bt(e,/\/$/g,""),e=Bt(e,/\.lock$/g,""),e}};Pl.exports=n0});var Dl=O((Ry,Bl)=>{Bl.exports=function(t,e){var r=t,i=e,n=r.length,a=i.length,o=!1,s=null,l=n+1,c=[],f=[],d=[],u="",h=-1,m=0,g=1,y,b,v=function(){n>=a&&(y=r,b=n,r=i,i=y,n=a,a=b,o=!0,l=n+1)},k=function(p,_,w){return{x:p,y:_,k:w}},S=function(p,_){return{elem:p,t:_}},x=function(p,_,w){var A,E,$;for(_>w?A=c[p-1+l]:A=c[p+1+l],$=Math.max(_,w),E=$-p;E=0;--$)for(;AE-A?(o?d[d.length]=new S(i[E],h):d[d.length]=new S(i[E],g),++w,++E):p[$].y-p[$].x=p+1;--B)w[B+l]=x(B,w[B-1+l]+1,w[B+1+l]);w[p+l]=x(p,w[p-1+l]+1,w[p+1+l])}while(w[p+l]!==a);for(s=p+2*A,E=c[p+l],$=[];E!==-1;)$[$.length]=new k(f[E].x,f[E].y,null),E=f[E].k;T($)}}}});var Ul=O((Iy,Fl)=>{var a0=Dl();function o0(t,e){var r=new a0(t,e);r.compose();for(var i=r.getses(),n,a,o=t.length-1,s=e.length-1,l=i.length-1;l>=0;--l)i[l].t===r.SES_COMMON?(a?(a.chain={file1index:o,file2index:s,chain:null},a=a.chain):(n={file1index:o,file2index:s,chain:null},a=n),o--,s--):i[l].t===r.SES_DELETE?o--:i[l].t===r.SES_ADD&&s--;var c={file1index:-1,file2index:-1,chain:null};return a?(a.chain=c,n):c}function Nl(t,e){for(var r=[],i=t.length,n=e.length,a=o0(t,e);a!==null;a=a.chain){var o=i-a.file1index-1,s=n-a.file2index-1;i=a.file1index,n=a.file2index,(o||s)&&r.push({file1:[i+1,o],file2:[n+1,s]})}return r.reverse(),r}function s0(t,e,r){var i,n=Nl(e,t),a=Nl(e,r),o=[];function s(R,B){o.push([R.file1[0],B,R.file1[1],R.file2[0],R.file2[1]])}for(i=0;ic&&(l.push([1,c,R-c]),c=R)}for(var d=0;dg)break;g=Math.max(g,b+y[2]),d++}if(f(m),u==d)h[4]>0&&l.push([h[1],h[3],h[4]]);else{var v={0:[t.length,-1,e.length,-1],2:[r.length,-1,e.length,-1]};for(i=u;i<=d;i++){h=o[i];var k=h[1],S=v[k],x=h[0],T=x+h[2],p=h[3],_=p+h[4];S[0]=Math.min(p,S[0]),S[1]=Math.max(_,S[1]),S[2]=Math.min(x,S[2]),S[3]=Math.max(T,S[3])}var w=v[0][0]+(m-v[0][2]),A=v[0][1]+(g-v[0][3]),E=v[2][0]+(m-v[2][2]),$=v[2][1]+(g-v[2][3]);l.push([-1,w,A-w,m,g-m,E,$-E])}c=g}return f(e.length),l}function c0(t,e,r){var i=[],n=[t,e,r],a=s0(t,e,r),o=[];function s(){o.length&&i.push({ok:o}),o=[]}function l(h){for(var m=0;mJi});module.exports=Ju(qm);var at=require("obsidian");var to={githubToken:"",githubUsername:"",repoName:"",autoSync:!0,syncIntervalMs:3e3,excludePatterns:[".obsidian/workspace",".obsidian/workspace.json",".obsidian/plugins/*/data.json"],lastSyncTime:0,commitMessageTemplate:"sync: {{datetime}}"};var ot=require("obsidian");var on=require("obsidian");var nn="Ov23liN8a7D1bDe2571X",eo="https://github.com/login/device/code",ro="https://github.com/login/oauth/access_token",an="https://api.github.com";var Pr="ObsidianMultiSync",Cr="sync@obsidian.local";var wt="main";async function io(){let t=await(0,on.requestUrl)({url:eo,method:"POST",headers:{Accept:"application/json","Content-Type":"application/x-www-form-urlencoded"},body:`client_id=${nn}&scope=repo`,throw:!1});if(t.status!==200)throw new Error(`GitHub Device Flow failed: ${t.status}`);return t.json}async function no(t,e,r,i){let n=Date.now()+r*1e3,a=e*1e3;return new Promise((o,s)=>{let l=async()=>{if(Date.now()>n){s(new Error("Device code expired. Please try connecting again."));return}i==null||i();let f=(await(0,on.requestUrl)({url:ro,method:"POST",headers:{Accept:"application/json","Content-Type":"application/x-www-form-urlencoded"},body:`client_id=${nn}&device_code=${t}&grant_type=urn:ietf:params:oauth:grant-type:device_code`,throw:!1})).json;if(f.access_token){o(f.access_token);return}switch(f.error){case"authorization_pending":setTimeout(l,a);break;case"slow_down":a+=5e3,setTimeout(l,a);break;case"expired_token":s(new Error("Code expired. Please reconnect."));break;case"access_denied":s(new Error("Access denied. You cancelled the authorization."));break;default:s(new Error(`Unknown error: ${f.error}`))}};setTimeout(l,a)})}var sn=require("obsidian");async function ao(t,e,r={}){var n,a;let i=await(0,sn.requestUrl)({url:`${an}${t}`,method:(n=r.method)!=null?n:"GET",headers:{Authorization:`Bearer ${e}`,Accept:"application/vnd.github+json","X-GitHub-Api-Version":"2022-11-28","Content-Type":"application/json"},body:r.body?JSON.stringify(r.body):void 0,throw:!1});if(i.status>=400){let o=i.json;throw new Error(`GitHub API error ${i.status}: ${(a=o.message)!=null?a:"unknown"}`)}return i.json}async function oo(t){return ao("/user",t)}async function so(t,e,r){return(await(0,sn.requestUrl)({url:`${an}/repos/${e}/${r}`,method:"GET",headers:{Authorization:`Bearer ${t}`,Accept:"application/vnd.github+json"},throw:!1})).status===200}async function co(t,e,r){return ao("/user/repos",t,{method:"POST",body:{name:e,description:r,private:!0,auto_init:!1}})}function fo(t){return`obsidian-${t.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}`}var Br=class extends ot.PluginSettingTab{constructor(e,r){super(e,r),this.plugin=r}display(){let{containerEl:e}=this;e.empty(),e.createEl("h2",{text:"MultiSync Settings"});let r=this.plugin.settings;if(e.createEl("h3",{text:"GitHub Account"}),r.githubToken&&r.githubUsername?(new ot.Setting(e).setName("Connected account").setDesc(`Signed in as @${r.githubUsername}`).addButton(i=>i.setButtonText("Disconnect").setWarning().onClick(async()=>{r.githubToken="",r.githubUsername="",r.repoName="",await this.plugin.saveSettings(),this.display(),new ot.Notice("Disconnected from GitHub.")})),new ot.Setting(e).setName("Vault repo").setDesc(`github.com/${r.githubUsername}/${r.repoName}`)):new ot.Setting(e).setName("Connect GitHub account").setDesc("Authorise MultiSync to access your private repos. Opens a browser window.").addButton(i=>{i.setButtonText("Connect GitHub").setCta().onClick(async()=>{await this.startDeviceFlow(i)})}),e.createEl("h3",{text:"Sync Options"}),new ot.Setting(e).setName("Auto-sync").setDesc("Automatically sync when files are modified.").addToggle(i=>i.setValue(r.autoSync).onChange(async n=>{r.autoSync=n,await this.plugin.saveSettings()})),new ot.Setting(e).setName("Sync debounce (ms)").setDesc("Wait this many milliseconds after the last edit before syncing.").addSlider(i=>i.setLimits(1e3,1e4,500).setValue(r.syncIntervalMs).setDynamicTooltip().onChange(async n=>{r.syncIntervalMs=n,await this.plugin.saveSettings()})),new ot.Setting(e).setName("Excluded patterns").setDesc("One pattern per line. These files will never be synced.").addTextArea(i=>i.setValue(r.excludePatterns.join(` +`)).onChange(async n=>{r.excludePatterns=n.split(` +`).map(a=>a.trim()).filter(Boolean),await this.plugin.saveSettings()})),e.createEl("h3",{text:"Manual Sync"}),new ot.Setting(e).setName("Sync now").setDesc("Immediately push all local changes and pull remote changes.").addButton(i=>i.setButtonText("Sync Now").onClick(async()=>{await this.plugin.triggerManualSync()})),r.lastSyncTime>0){let i=new Date(r.lastSyncTime).toLocaleString();e.createEl("p",{text:`Last synced: ${i}`,cls:"setting-item-description"})}}async startDeviceFlow(e){var r;e.setButtonText("Connecting\u2026").setDisabled(!0);try{let i=await io(),n=this.containerEl.createDiv({cls:"multisync-device-modal"});n.style.cssText="background:var(--background-secondary);border-radius:8px;padding:16px;margin-top:12px;text-align:center;",n.createEl("p",{text:"Open this URL in your browser and enter the code below:"});let a=n.createEl("a",{text:i.verification_uri,href:i.verification_uri});a.style.display="block";let o=n.createEl("h1",{text:i.user_code,cls:"multisync-user-code"});o.style.cssText="font-size:2rem;letter-spacing:0.25em;font-weight:700;color:var(--text-normal);background:var(--background-primary);border:2px solid var(--interactive-accent);border-radius:6px;padding:8px 24px;display:inline-block;margin:12px auto;font-family:monospace;",n.createEl("p",{text:"Waiting for you to approve in the browser\u2026",cls:"setting-item-description"}),e.setButtonText("Cancel").setDisabled(!1),window.open(i.verification_uri,"_blank");let s=await no(i.device_code,i.interval,i.expires_in);n.remove();let l=await oo(s);this.plugin.settings.githubToken=s,this.plugin.settings.githubUsername=l.login,await this.plugin.initializeRepo(s,l.login),await this.plugin.saveSettings(),new ot.Notice(`Connected as @${l.login}. Vault syncing started!`),this.display()}catch(i){let n=i instanceof Error?i.message:String(i);(r=this.containerEl.querySelector(".multisync-device-modal"))==null||r.remove(),new ot.Notice(`Connection failed: ${n}`),e.setButtonText("Connect GitHub").setDisabled(!1)}}};var td={idle:"\u2713 MultiSync",pulling:"\u2193 Syncing\u2026",pushing:"\u2191 Syncing\u2026",conflict:"\u26A0 Conflict",error:"\u2717 Sync Error",connecting:"\u2026 Connecting"},Dr=class{constructor(e){this.el=e.addStatusBarItem(),this.el.style.cursor="pointer",this.set("idle")}set(e,r){let i=td[e];this.el.setText(r?`${i}: ${r}`:i),this.el.setAttribute("data-sync-status",e)}onClick(e){this.el.addEventListener("click",e)}};var ge=require("obsidian");function lo(t){var a,o;let e=t.ours.split(` +`),r=t.theirs.split(` +`),i=Math.max(e.length,r.length),n=[];for(let s=0;s0?n.join(` +`):"(files are identical \u2014 safe to accept either)"}var Nr=class extends ge.Modal{constructor(r,i,n){super(r);this.currentIndex=0;this.conflicts=i,this.onResolve=n,this.component=new ge.Component}onOpen(){this.component.load(),this.renderCurrent()}onClose(){this.component.unload(),this.contentEl.empty()}renderCurrent(){let r=this.conflicts[this.currentIndex],{contentEl:i}=this;i.empty(),i.createEl("h2",{text:`Sync Conflict (${this.currentIndex+1} / ${this.conflicts.length})`}),i.createEl("p",{text:`File: ${r.path}`,cls:"conflict-filepath"});let n=i.createEl("pre",{cls:"conflict-diff"});n.style.cssText="background:var(--background-secondary);padding:8px;border-radius:4px;overflow:auto;max-height:180px;font-size:12px;",n.textContent=lo(r);let a=i.createDiv({cls:"conflict-columns"});a.style.cssText="display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0;";let o=a.createDiv();o.createEl("h4",{text:"Your version (this device)"});let s=o.createEl("pre");s.style.cssText="background:#1a3a1a;padding:8px;border-radius:4px;overflow:auto;max-height:260px;font-size:11px;white-space:pre-wrap;",s.textContent=r.ours.slice(0,2e3)+(r.ours.length>2e3?` +\u2026(truncated)`:"");let l=a.createDiv();l.createEl("h4",{text:"Remote version (other device)"});let c=l.createEl("pre");c.style.cssText="background:#1a1a3a;padding:8px;border-radius:4px;overflow:auto;max-height:260px;font-size:11px;white-space:pre-wrap;",c.textContent=r.theirs.slice(0,2e3)+(r.theirs.length>2e3?` +\u2026(truncated)`:""),new ge.Setting(i).addButton(f=>f.setButtonText("Keep Mine").onClick(async()=>{await this.resolve(r,r.ours)})).addButton(f=>f.setButtonText("Keep Theirs").setCta().onClick(async()=>{await this.resolve(r,r.theirs)})).addButton(f=>f.setButtonText("Open in Editor").onClick(()=>{this.close(),this.app.workspace.openLinkText(r.path,"",!0)}))}async resolve(r,i){await this.onResolve(r.path,i),this.currentIndex++,this.currentIndex=this.buffer.length}tell(){return this._start}seek(e){this._start=e}slice(e){let r=this.buffer.slice(this._start,this._start+e);return this._start+=e,r}toString(e,r){let i=this.buffer.toString(e,this._start,this._start+r);return this._start+=r,i}write(e,r,i){let n=this.buffer.write(e,this._start,r,i);return this._start+=r,n}copy(e,r,i){let n=e.copy(this.buffer,this._start,r,i);return this._start+=n,n}readUInt8(){let e=this.buffer.readUInt8(this._start);return this._start+=1,e}writeUInt8(e){let r=this.buffer.writeUInt8(e,this._start);return this._start+=1,r}readUInt16BE(){let e=this.buffer.readUInt16BE(this._start);return this._start+=2,e}writeUInt16BE(e){let r=this.buffer.writeUInt16BE(e,this._start);return this._start+=2,r}readUInt32BE(){let e=this.buffer.readUInt32BE(this._start);return this._start+=4,e}writeUInt32BE(e){let r=this.buffer.writeUInt32BE(e,this._start);return this._start+=4,r}};function Wi(t,e){return-(te)}function lu(t,e){return Wi(t.path,e.path)}function uu(t){let e=t>0?t>>12:0;e!==4&&e!==8&&e!==10&&e!==14&&(e=8);let r=t&511;return r&73?r=493:r=420,e!==8&&(r=0),(e<<12)+r}var Dt=2**32;function jl(t,e,r,i){if(t!==void 0&&e!==void 0)return[t,e];r===void 0&&(r=i.valueOf());let n=Math.floor(r/1e3),a=(r-n*1e3)*1e6;return[n,a]}function Me(t){let[e,r]=jl(t.ctimeSeconds,t.ctimeNanoseconds,t.ctimeMs,t.ctime),[i,n]=jl(t.mtimeSeconds,t.mtimeNanoseconds,t.mtimeMs,t.mtime);return{ctimeSeconds:e%Dt,ctimeNanoseconds:r%Dt,mtimeSeconds:i%Dt,mtimeNanoseconds:n%Dt,dev:t.dev%Dt,ino:t.ino%Dt,mode:uu(t.mode%Dt),uid:t.uid%Dt,gid:t.gid%Dt,size:t.size>-1?t.size%Dt:0}}function f0(t){let e="";for(let r of new Uint8Array(t))r<16&&(e+="0"),e+=r.toString(16);return e}var ya=null;async function Qt(t){return ya===null&&(ya=await u0()),ya?du(t):l0(t)}function l0(t){return new Xa.default().update(t).digest("hex")}async function du(t){let e=await crypto.subtle.digest("SHA-1",t);return f0(e)}async function u0(){try{return await du(new Uint8Array([]))==="da39a3ee5e6b4b0d3255bfef95601890afd80709"}catch(t){}return!1}function d0(t){return{assumeValid:!!(t&32768),extended:!!(t&16384),stage:(t&12288)>>12,nameLength:t&4095}}function h0(t){let e=t.flags;return e.extended=!1,e.nameLength=Math.min(Buffer.from(t.path).length,4095),(e.assumeValid?32768:0)+(e.extended?16384:0)+((e.stage&3)<<12)+(e.nameLength&4095)}var Oa=class t{constructor(e,r){this._dirty=!1,this._unmergedPaths=r||new Set,this._entries=e||new Map}_addEntry(e){if(e.flags.stage===0)e.stages=[e],this._entries.set(e.path,e),this._unmergedPaths.delete(e.path);else{let r=this._entries.get(e.path);r||(this._entries.set(e.path,e),r=e),r.stages[e.flags.stage]=e,this._unmergedPaths.add(e.path)}}static async from(e){if(Buffer.isBuffer(e))return t.fromBuffer(e);if(e===null)return new t(null);throw new I("invalid type passed to GitIndex.from")}static async fromBuffer(e){if(e.length===0)throw new I("Index file is empty (.git/index)");let r=new t,i=new bt(e),n=i.toString("utf8",4);if(n!=="DIRC")throw new I(`Invalid dircache magic file number: ${n}`);let a=await Qt(e.slice(0,-20)),o=e.slice(-20).toString("hex");if(o!==a)throw new I(`Invalid checksum in GitIndex buffer: expected ${o} but saw ${a}`);let s=i.readUInt32BE();if(s!==2)throw new I(`Unsupported dircache version: ${s}`);let l=i.readUInt32BE(),c=0;for(;!i.eof()&&ce.stages.length>1?e.stages.filter(r=>r):e)}*[Symbol.iterator](){for(let e of this.entries)yield e}insert({filepath:e,stats:r,oid:i,stage:n=0}){r||(r={ctimeSeconds:0,ctimeNanoseconds:0,mtimeSeconds:0,mtimeNanoseconds:0,dev:0,ino:0,mode:0,uid:0,gid:0,size:0}),r=Me(r);let a=Buffer.from(e),o={ctimeSeconds:r.ctimeSeconds,ctimeNanoseconds:r.ctimeNanoseconds,mtimeSeconds:r.mtimeSeconds,mtimeNanoseconds:r.mtimeNanoseconds,dev:r.dev,ino:r.ino,mode:r.mode||33188,uid:r.uid,gid:r.gid,size:r.size,path:e,oid:i,flags:{assumeValid:!1,extended:!1,stage:n,nameLength:a.length<4095?a.length:4095},stages:[]};this._addEntry(o),this._dirty=!0}delete({filepath:e}){if(this._entries.has(e))this._entries.delete(e);else for(let r of this._entries.keys())r.startsWith(e+"/")&&this._entries.delete(r);this._unmergedPaths.has(e)&&this._unmergedPaths.delete(e),this._dirty=!0}clear(){this._entries.clear(),this._dirty=!0}has({filepath:e}){return this._entries.has(e)}render(){return this.entries.map(e=>`${e.mode.toString(8)} ${e.oid} ${e.path}`).join(` +`)}static async _entryToBuffer(e){let r=Buffer.from(e.path),i=Math.ceil((62+r.length+1)/8)*8,n=Buffer.alloc(i),a=new bt(n),o=Me(e);return a.writeUInt32BE(o.ctimeSeconds),a.writeUInt32BE(o.ctimeNanoseconds),a.writeUInt32BE(o.mtimeSeconds),a.writeUInt32BE(o.mtimeNanoseconds),a.writeUInt32BE(o.dev),a.writeUInt32BE(o.ino),a.writeUInt32BE(o.mode),a.writeUInt32BE(o.uid),a.writeUInt32BE(o.gid),a.writeUInt32BE(o.size),a.write(e.oid,20,"hex"),a.writeUInt16BE(h0(e)),a.write(e.path,r.length,"utf8"),n}async toObject(){let e=Buffer.alloc(12),r=new bt(e);r.write("DIRC",4,"utf8"),r.writeUInt32BE(2),r.writeUInt32BE(this.entriesFlat.length);let i=[];for(let s of this.entries)if(i.push(t._entryToBuffer(s)),s.stages.length>1)for(let l of s.stages)l&&l!==s&&i.push(t._entryToBuffer(l));i=await Promise.all(i);let n=Buffer.concat(i),a=Buffer.concat([e,n]),o=await Qt(a);return Buffer.concat([a,Buffer.from(o,"hex")])}};function Ra(t,e,r=!0,i=!0){let n=Me(t),a=Me(e);return r&&n.mode!==a.mode||n.mtimeSeconds!==a.mtimeSeconds||n.ctimeSeconds!==a.ctimeSeconds||n.uid!==a.uid||n.gid!==a.gid||i&&n.ino!==a.ino||n.size!==a.size}var ba=null,_a=Symbol("IndexCache");function p0(){return{map:new Map,stats:new Map}}async function w0(t,e,r){let[i,n]=await Promise.all([t.lstat(e),t.read(e)]),a=await Oa.from(n);r.map.set(e,a),r.stats.set(e,i)}async function m0(t,e,r){let i=r.stats.get(e);if(i===void 0)return!0;if(i===null)return!1;let n=await t.lstat(e);return n===null?!1:Ra(i,n)}var _t=class{static async acquire({fs:e,gitdir:r,cache:i,allowUnmerged:n=!0},a){i[_a]||(i[_a]=p0());let o=`${r}/index`;ba===null&&(ba=new yr.default({maxPending:1/0}));let s,l=[];return await ba.acquire(o,async()=>{let c=i[_a];await m0(e,o,c)&&await w0(e,o,c);let f=c.map.get(o);if(l=f.unmergedPaths,l.length&&!n)throw new bi(l);if(s=await a(f),f._dirty){let d=await f.toObject();await e.write(o,d),c.stats.set(o,await e.lstat(o)),f._dirty=!1}}),s}};function _i(t){let e=Math.max(t.lastIndexOf("/"),t.lastIndexOf("\\"));return e>-1&&(t=t.slice(e+1)),t}function ze(t){let e=Math.max(t.lastIndexOf("/"),t.lastIndexOf("\\"));return e===-1?".":e===0?"/":t.slice(0,e)}function hu(t){let e=new Map,r=function(n){if(!e.has(n)){let a={type:"tree",fullpath:n,basename:_i(n),metadata:{},children:[]};e.set(n,a),a.parent=r(ze(n)),a.parent&&a.parent!==a&&a.parent.children.push(a)}return e.get(n)},i=function(n,a){if(!e.has(n)){let o={type:"blob",fullpath:n,basename:_i(n),metadata:a,parent:r(ze(n)),children:[]};o.parent&&o.parent.children.push(o),e.set(n,o)}return e.get(n)};r(".");for(let n of t)i(n.path,n);return e}function g0(t){switch(t){case 16384:return"tree";case 33188:return"blob";case 33261:return"blob";case 40960:return"blob";case 57344:return"commit"}throw new I(`Unexpected GitTree entry mode: ${t.toString(8)}`)}var Ia=class{constructor({fs:e,gitdir:r,cache:i}){this.treePromise=_t.acquire({fs:e,gitdir:r,cache:i},async function(a){return hu(a.entries)});let n=this;this.ConstructEntry=class{constructor(o){this._fullpath=o,this._type=!1,this._mode=!1,this._stat=!1,this._oid=!1}async type(){return n.type(this)}async mode(){return n.mode(this)}async stat(){return n.stat(this)}async content(){return n.content(this)}async oid(){return n.oid(this)}}}async readdir(e){let r=e._fullpath,n=(await this.treePromise).get(r);if(!n||n.type==="blob")return null;if(n.type!=="tree")throw new Error(`ENOTDIR: not a directory, scandir '${r}'`);let a=n.children.map(o=>o.fullpath);return a.sort(Wi),a}async type(e){return e._type===!1&&await e.stat(),e._type}async mode(e){return e._mode===!1&&await e.stat(),e._mode}async stat(e){if(e._stat===!1){let i=(await this.treePromise).get(e._fullpath);if(!i)throw new Error(`ENOENT: no such file or directory, lstat '${e._fullpath}'`);let n=i.type==="tree"?{}:Me(i.metadata);e._type=i.type==="tree"?"tree":g0(n.mode),e._mode=n.mode,i.type==="tree"?e._stat=void 0:e._stat=n}return e._stat}async content(e){}async oid(e){if(e._oid===!1){let i=(await this.treePromise).get(e._fullpath);e._oid=i.metadata.oid}return e._oid}},Vi=Symbol("GitWalkSymbol");function pu(){let t=Object.create(null);return Object.defineProperty(t,Vi,{value:function({fs:e,gitdir:r,cache:i}){return new Ia({fs:e,gitdir:r,cache:i})}}),Object.freeze(t),t}var ct=class t extends F{constructor(e){super(`Could not find ${e}.`),this.code=this.name=t.code,this.data={what:e}}};ct.code="NotFoundError";var Nt=class t extends F{constructor(e,r,i,n){super(`Object ${e} ${n?`at ${n}`:""}was anticipated to be a ${i} but it is a ${r}.`),this.code=this.name=t.code,this.data={oid:e,actual:r,expected:i,filepath:n}}};Nt.code="ObjectTypeError";var he=class t extends F{constructor(e){super(`Expected a 40-char hex object id but saw "${e}".`),this.code=this.name=t.code,this.data={value:e}}};he.code="InvalidOidError";var vi=class t extends F{constructor(e){super(`Could not find a fetch refspec for remote "${e}". Make sure the config file has an entry like the following: +[remote "${e}"] + fetch = +refs/heads/*:refs/remotes/origin/* +`),this.code=this.name=t.code,this.data={remote:e}}};vi.code="NoRefspecError";var xi=class t{constructor(e){if(this.refs=new Map,this.parsedConfig=[],e){let r=null;this.parsedConfig=e.trim().split(` +`).map(i=>{if(/^\s*#/.test(i))return{line:i,comment:!0};let n=i.indexOf(" ");if(i.startsWith("^")){let a=i.slice(1);return this.refs.set(r+"^{}",a),{line:i,ref:r,peeled:a}}else{let a=i.slice(0,n);return r=i.slice(n+1),this.refs.set(r,a),{line:i,ref:r,oid:a}}})}return this}static from(e){return new t(e)}delete(e){this.parsedConfig=this.parsedConfig.filter(r=>r.ref!==e),this.refs.delete(e)}toString(){return this.parsedConfig.map(({line:e})=>e).join(` +`)+` +`}},Ei=class t{constructor({remotePath:e,localPath:r,force:i,matchPrefix:n}){Object.assign(this,{remotePath:e,localPath:r,force:i,matchPrefix:n})}static from(e){let[r,i,n,a,o]=e.match(/^(\+?)(.*?)(\*?):(.*?)(\*?)$/).slice(1),s=r==="+",l=n==="*";if(l!==(o==="*"))throw new I("Invalid refspec");return new t({remotePath:i,localPath:a,force:s,matchPrefix:l})}translate(e){if(this.matchPrefix){if(e.startsWith(this.remotePath))return this.localPath+e.replace(this.remotePath,"")}else if(e===this.remotePath)return this.localPath;return null}reverseTranslate(e){if(this.matchPrefix){if(e.startsWith(this.localPath))return this.remotePath+e.replace(this.localPath,"")}else if(e===this.localPath)return this.remotePath;return null}},Pa=class t{constructor(e=[]){this.rules=e}static from(e){let r=[];for(let i of e)r.push(Ei.from(i));return new t(r)}add(e){let r=Ei.from(e);this.rules.push(r)}translate(e){let r=[];for(let i of this.rules)for(let n of e){let a=i.translate(n);a&&r.push([n,a])}return r}translateOne(e){let r=null;for(let i of this.rules){let n=i.translate(e);n&&(r=n)}return r}localNamespaces(){return this.rules.filter(e=>e.matchPrefix).map(e=>e.localPath.replace(/\/$/,""))}};function y0(t,e){let r=t.replace(/\^\{\}$/,""),i=e.replace(/\^\{\}$/,""),n=-(ri);return n===0?t.endsWith("^{}")?1:-1:n}function b0(t,e){let r="",i=0,n=-1,a=0,o="\0";for(let s=0;s<=t.length;++s){if(s2){let l=r.lastIndexOf("/");l===-1?(r="",i=0):(r=r.slice(0,l),i=r.length-1-r.lastIndexOf("/")),n=s,a=0;continue}else if(r.length!==0){r="",i=0,n=s,a=0;continue}}e&&(r+=r.length>0?"/..":"..",i=2)}else r.length>0?r+="/"+t.slice(n+1,s):r=t.slice(n+1,s),i=s-n-1;n=s,a=0}else o==="."&&a!==-1?++a:a=-1}return r}function _0(t){if(!t.length)return".";let e=t[0]==="/",r=t.at(-1)==="/";return t=b0(t,!e),t.length?(r&&(t+="/"),e?`/${t}`:t):e?"/":r?"./":"."}function P(...t){if(t.length===0)return".";let e;for(let r=0;r0&&(e===void 0?e=i:e+="/"+i)}return e===void 0?".":_0(e)}var v0=t=>{if(typeof t=="number")return t;t=t.toLowerCase();let e=parseInt(t);return t.endsWith("k")&&(e*=1024),t.endsWith("m")&&(e*=1024*1024),t.endsWith("g")&&(e*=1024*1024*1024),e},mr=t=>{if(typeof t=="boolean")return t;if(t=t.trim().toLowerCase(),t==="true"||t==="yes"||t==="on")return!0;if(t==="false"||t==="no"||t==="off")return!1;throw Error(`Expected 'true', 'false', 'yes', 'no', 'on', or 'off', but got ${t}`)},Ml={core:{filemode:mr,bare:mr,logallrefupdates:mr,symlinks:mr,ignorecase:mr,bigFileThreshold:v0}},x0=/^\[([A-Za-z0-9-.]+)(?: "(.*)")?\]$/,E0=/^[A-Za-z0-9-.]+$/,S0=/^([A-Za-z][A-Za-z-]*)(?: *= *(.*))?$/,k0=/^[A-Za-z][A-Za-z-]*$/,A0=/^(.*?)( *[#;].*)$/,T0=t=>{let e=x0.exec(t);if(e!=null){let[r,i]=e.slice(1);return[r,i]}return null},$0=t=>{let e=S0.exec(t);if(e!=null){let[r,i="true"]=e.slice(1),n=O0(i),a=R0(n);return[r,a]}return null},O0=t=>{let e=A0.exec(t);if(e==null)return t;let[r,i]=e.slice(1);return zl(r)&&zl(i)?`${r}${i}`:r},zl=t=>(t.match(/(?:^|[^\\])"/g)||[]).length%2!==0,R0=t=>t.split("").reduce((e,r,i,n)=>{let a=r==='"'&&n[i-1]!=="\\",o=r==="\\"&&n[i+1]==='"';return a||o?e:e+r},""),Ll=t=>t!=null?t.toLowerCase():null,Ca=(t,e,r)=>[Ll(t),e,Ll(r)].filter(i=>i!=null).join("."),Hl=t=>{let e=t.split("."),r=e.shift(),i=e.pop(),n=e.length?e.join("."):void 0;return{section:r,subsection:n,name:i,path:Ca(r,n,i),sectionPath:Ca(r,n,null),isSection:!!r}},I0=(t,e)=>t.reduce((r,i,n)=>e(i)?n:r,-1),Ba=class t{constructor(e){let r=null,i=null;this.parsedConfig=e?e.split(` +`).map(n=>{let a=null,o=null,s=n.trim(),l=T0(s),c=l!=null;if(c)[r,i]=l;else{let d=$0(s);d!=null&&([a,o]=d)}let f=Ca(r,i,a);return{line:n,isSection:c,section:r,subsection:i,name:a,value:o,path:f}}):[]}static from(e){return new t(e)}async get(e,r=!1){let i=Hl(e).path,n=this.parsedConfig.filter(a=>a.path===i).map(({section:a,name:o,value:s})=>{let l=Ml[a]&&Ml[a][o];return l?l(s):s});return r?n:n.pop()}async getall(e){return this.get(e,!0)}async getSubsections(e){return this.parsedConfig.filter(r=>r.isSection&&r.section===e).map(r=>r.subsection)}async deleteSection(e,r){this.parsedConfig=this.parsedConfig.filter(i=>!(i.section===e&&i.subsection===r))}async append(e,r){return this.set(e,r,!0)}async set(e,r,i=!1){let{section:n,subsection:a,name:o,path:s,sectionPath:l,isSection:c}=Hl(e),f=I0(this.parsedConfig,d=>d.path===s);if(r==null)f!==-1&&this.parsedConfig.splice(f,1);else if(f!==-1){let d=this.parsedConfig[f],u=Object.assign({},d,{name:o,value:r,modified:!0});i?this.parsedConfig.splice(f+1,0,u):this.parsedConfig[f]=u}else{let d=this.parsedConfig.findIndex(h=>h.path===l),u={section:n,subsection:a,name:o,value:r,modified:!0,path:s};if(E0.test(n)&&k0.test(o))if(d>=0)this.parsedConfig.splice(d+1,0,u);else{let h={isSection:c,section:n,subsection:a,modified:!0,path:l};this.parsedConfig.push(h,u)}}}toString(){return this.parsedConfig.map(({line:e,section:r,subsection:i,name:n,value:a,modified:o=!1})=>o?n!=null&&a!=null?typeof a=="string"&&/[#;]/.test(a)?` ${n} = "${a}"`:` ${n} = ${a}`:i!=null?`[${r} "${i}"]`:`[${r}]`:e).join(` +`)}},J=class{static async get({fs:e,gitdir:r}){let i=await e.read(`${r}/config`,{encoding:"utf8"});return Ba.from(i)}static async save({fs:e,gitdir:r,config:i}){await e.write(`${r}/config`,i.toString(),{encoding:"utf8"})}},gi=t=>[`${t}`,`refs/${t}`,`refs/tags/${t}`,`refs/heads/${t}`,`refs/remotes/${t}`,`refs/remotes/${t}/HEAD`],P0=["config","description","index","shallow","commondir"],va;async function Kt(t,e){return va===void 0&&(va=new yr.default),va.acquire(t,e)}var D=class t{static async updateRemoteRefs({fs:e,gitdir:r,remote:i,refs:n,symrefs:a,tags:o,refspecs:s=void 0,prune:l=!1,pruneTags:c=!1}){for(let y of n.values())if(!y.match(/[0-9a-f]{40}/))throw new he(y);let f=await J.get({fs:e,gitdir:r});if(!s){if(s=await f.getall(`remote.${i}.fetch`),s.length===0)throw new vi(i);s.unshift(`+HEAD:refs/remotes/${i}/HEAD`)}let d=Pa.from(s),u=new Map;if(c){let y=await t.listRefs({fs:e,gitdir:r,filepath:"refs/tags"});await t.deleteRefs({fs:e,gitdir:r,refs:y.map(b=>`refs/tags/${b}`)})}if(o){for(let y of n.keys())if(y.startsWith("refs/tags")&&!y.endsWith("^{}")&&!await t.exists({fs:e,gitdir:r,ref:y})){let b=n.get(y);u.set(y,b)}}let h=d.translate([...n.keys()]);for(let[y,b]of h){let v=n.get(y);u.set(b,v)}let m=d.translate([...a.keys()]);for(let[y,b]of m){let v=a.get(y),k=d.translateOne(v);k&&u.set(b,`ref: ${k}`)}let g=[];if(l){for(let y of d.localNamespaces()){let b=(await t.listRefs({fs:e,gitdir:r,filepath:y})).map(v=>`${y}/${v}`);for(let v of b)u.has(v)||g.push(v)}g.length>0&&await t.deleteRefs({fs:e,gitdir:r,refs:g})}for(let[y,b]of u)await Kt(y,async()=>e.write(P(r,y),`${b.trim()} +`,"utf8"));return{pruned:g}}static async writeRef({fs:e,gitdir:r,ref:i,value:n}){if(!n.match(/[0-9a-f]{40}/))throw new he(n);await Kt(i,async()=>e.write(P(r,i),`${n.trim()} +`,"utf8"))}static async writeSymbolicRef({fs:e,gitdir:r,ref:i,value:n}){await Kt(i,async()=>e.write(P(r,i),`ref: ${n.trim()} +`,"utf8"))}static async deleteRef({fs:e,gitdir:r,ref:i}){return t.deleteRefs({fs:e,gitdir:r,refs:[i]})}static async deleteRefs({fs:e,gitdir:r,refs:i}){await Promise.all(i.map(s=>e.rm(P(r,s))));let n=await Kt("packed-refs",async()=>e.read(`${r}/packed-refs`,{encoding:"utf8"})),a=xi.from(n),o=a.refs.size;for(let s of i)a.refs.has(s)&&a.delete(s);a.refs.sizee.write(`${r}/packed-refs`,n,{encoding:"utf8"})))}static async resolve({fs:e,gitdir:r,ref:i,depth:n=void 0}){if(n!==void 0&&(n--,n===-1))return i;if(i.startsWith("ref: "))return i=i.slice(5),t.resolve({fs:e,gitdir:r,ref:i,depth:n});if(i.length===40&&/[0-9a-f]{40}/.test(i))return i;let a=await t.packedRefs({fs:e,gitdir:r}),o=gi(i).filter(s=>!P0.includes(s));for(let s of o){let l=await Kt(s,async()=>await e.read(`${r}/${s}`,{encoding:"utf8"})||a.get(s));if(l)return t.resolve({fs:e,gitdir:r,ref:l.trim(),depth:n})}throw new ct(i)}static async exists({fs:e,gitdir:r,ref:i}){try{return await t.expand({fs:e,gitdir:r,ref:i}),!0}catch(n){return!1}}static async expand({fs:e,gitdir:r,ref:i}){if(i.length===40&&/[0-9a-f]{40}/.test(i))return i;let n=await t.packedRefs({fs:e,gitdir:r}),a=gi(i);for(let o of a)if(await Kt(o,async()=>e.exists(`${r}/${o}`))||n.has(o))return o;throw new ct(i)}static async expandAgainstMap({ref:e,map:r}){let i=gi(e);for(let n of i)if(await r.has(n))return n;throw new ct(e)}static resolveAgainstMap({ref:e,fullref:r=e,depth:i=void 0,map:n}){if(i!==void 0&&(i--,i===-1))return{fullref:r,oid:e};if(e.startsWith("ref: "))return e=e.slice(5),t.resolveAgainstMap({ref:e,fullref:r,depth:i,map:n});if(e.length===40&&/[0-9a-f]{40}/.test(e))return{fullref:r,oid:e};let a=gi(e);for(let o of a){let s=n.get(o);if(s)return t.resolveAgainstMap({ref:s.trim(),fullref:o,depth:i,map:n})}throw new ct(e)}static async packedRefs({fs:e,gitdir:r}){let i=await Kt("packed-refs",async()=>e.read(`${r}/packed-refs`,{encoding:"utf8"}));return xi.from(i).refs}static async listRefs({fs:e,gitdir:r,filepath:i}){let n=t.packedRefs({fs:e,gitdir:r}),a=null;try{a=await e.readdirDeep(`${r}/${i}`),a=a.map(o=>o.replace(`${r}/${i}/`,""))}catch(o){a=[]}for(let o of(await n).keys())o.startsWith(i)&&(o=o.replace(i+"/",""),a.includes(o)||a.push(o));return a.sort(y0),a}static async listBranches({fs:e,gitdir:r,remote:i}){return i?t.listRefs({fs:e,gitdir:r,filepath:`refs/remotes/${i}`}):t.listRefs({fs:e,gitdir:r,filepath:"refs/heads"})}static async listTags({fs:e,gitdir:r}){return(await t.listRefs({fs:e,gitdir:r,filepath:"refs/tags"})).filter(n=>!n.endsWith("^{}"))}};function C0(t,e){return Wi(Gl(t),Gl(e))}function Gl(t){return t.mode==="040000"?t.path+"/":t.path}function wu(t){switch(t){case"040000":return"tree";case"100644":return"blob";case"100755":return"blob";case"120000":return"blob";case"160000":return"commit"}throw new I(`Unexpected GitTree entry mode: ${t}`)}function B0(t){let e=[],r=0;for(;r`${e.mode} ${e.type} ${e.oid} ${e.path}`).join(` +`)}toObject(){let e=[...this._entries];return e.sort(C0),Buffer.concat(e.map(r=>{let i=Buffer.from(r.mode.replace(/^0/,"")),n=Buffer.from(" "),a=Buffer.from(r.path,"utf8"),o=Buffer.from([0]),s=Buffer.from(r.oid,"hex");return Buffer.concat([i,n,a,o,s])}))}entries(){return this._entries}*[Symbol.iterator](){for(let e of this._entries)yield e}},Le=class{static wrap({type:e,object:r}){let i=`${e} ${r.length}\0`,n=i.length,a=n+r.length,o=new Uint8Array(a);for(let s=0;s>=1,n+=8;return i}function Wl(t,e){let r=t.readUInt8(),i=128,n=15,a=112;if(r&i){let o=Zl(t,r&n,4),s=Zl(t,(r&a)>>4,3);return s===0&&(s=65536),e.slice(o,o+s)}else return t.slice(r)}function j0(t){let e=[t];return{next(){return Promise.resolve({done:e.length===0,value:e.pop()})},return(){return e=[],{}},[Symbol.asyncIterator](){return this}}}function mu(t){return t[Symbol.asyncIterator]?t[Symbol.asyncIterator]():t[Symbol.iterator]?t[Symbol.iterator]():t.next?t:j0(t)}var Si=class{constructor(e){if(typeof Buffer=="undefined")throw new Error("Missing Buffer dependency");this.stream=mu(e),this.buffer=null,this.cursor=0,this.undoCursor=0,this.started=!1,this._ended=!1,this._discardedBytes=0}eof(){return this._ended&&this.cursor===this.buffer.length}tell(){return this._discardedBytes+this.cursor}async byte(){if(!this.eof()&&(this.started||await this._init(),!(this.cursor===this.buffer.length&&(await this._loadnext(),this._ended))))return this._moveCursor(1),this.buffer[this.undoCursor]}async chunk(){if(!this.eof()&&(this.started||await this._init(),!(this.cursor===this.buffer.length&&(await this._loadnext(),this._ended))))return this._moveCursor(this.buffer.length),this.buffer.slice(this.undoCursor,this.cursor)}async read(e){if(!this.eof())return this.started||await this._init(),this.cursor+e>this.buffer.length&&(this._trim(),await this._accumulate(e)),this._moveCursor(e),this.buffer.slice(this.undoCursor,this.cursor)}async skip(e){this.eof()||(this.started||await this._init(),this.cursor+e>this.buffer.length&&(this._trim(),await this._accumulate(e)),this._moveCursor(e))}async undo(){this.cursor=this.undoCursor}async _next(){this.started=!0;let{done:e,value:r}=await this.stream.next();return e&&(this._ended=!0,!r)?Buffer.alloc(0):(r&&(r=Buffer.from(r)),r)}_trim(){this.buffer=this.buffer.slice(this.undoCursor),this.cursor-=this.undoCursor,this._discardedBytes+=this.undoCursor,this.undoCursor=0}_moveCursor(e){this.undoCursor=this.cursor,this.cursor+=e,this.cursor>this.buffer.length&&(this.cursor=this.buffer.length)}async _accumulate(e){if(this._ended)return;let r=[this.buffer];for(;this.cursor+e>M0(r);){let i=await this._next();if(this._ended)break;r.push(i)}this.buffer=Buffer.concat(r)}async _loadnext(){this._discardedBytes+=this.buffer.length,this.undoCursor=0,this.cursor=0,this.buffer=await this._next()}async _init(){this.buffer=await this._next()}};function M0(t){return t.reduce((e,r)=>e+r.length,0)}async function z0(t,e){let r=new Si(t),i=await r.read(4);if(i=i.toString("utf8"),i!=="PACK")throw new I(`Invalid PACK header '${i}'`);let n=await r.read(4);if(n=n.readUInt32BE(0),n!==2)throw new I(`Invalid packfile version: ${n}`);let a=await r.read(4);if(a=a.readUInt32BE(0),!(a<1))for(;!r.eof()&&a--;){let o=r.tell(),{type:s,length:l,ofs:c,reference:f}=await L0(r),d=new Zi.default.Inflate;for(;!d.result;){let u=await r.chunk();if(!u)break;if(d.push(u,!1),d.err)throw new I(`Pako error: ${d.msg}`);if(d.result){if(d.result.length!==l)throw new I("Inflated object size is different from that stated in packfile.");await r.undo(),await r.read(u.length-d.strm.avail_in);let h=r.tell();await e({data:d.result,type:s,num:a,offset:o,end:h,reference:f,ofs:c})}}}}async function L0(t){let e=await t.byte(),r=e>>4&7,i=e&15;if(e&128){let o=4;do e=await t.byte(),i|=(e&127)<n+1<<7|a,-1)}function Z0(t,e){let r=e,i=4,n=null;do n=t.readUInt8(),r|=(n&127)<2048*1024*1024)throw new I("To keep implementation simple, I haven't implemented the layer 5 feature needed to support packfiles > 2GB in size.");i.seek(i.tell()+4*255);let o=i.readUInt32BE(),s=[];for(let f=0;f{f===null&&(f=S);let x=Math.floor((f-S)*100/f);x!==d&&i&&await i({phase:"Receiving objects",loaded:f-S,total:f}),d=x,b=n[b],["commit","tree","blob","tag"].includes(b)?a[k]={type:b,offset:k}:b==="ofs-delta"?a[k]={type:b,offset:k}:b==="ref-delta"&&(a[k]={type:b,offset:k})});let u=Object.keys(a).map(Number);for(let[y,b]of u.entries()){let v=y+1===u.length?e.byteLength-20:u[y+1],k=a[b],S=ou.default.buf(e.slice(b,v))>>>0;k.end=v,k.crc=S}let h=new t({pack:Promise.resolve(e),packfileSha:o,crcs:l,hashes:s,offsets:c,getExternalRefDelta:r});d=null;let m=0,g=[0,0,0,0,0,0,0,0,0,0,0,0];for(let y in a){y=Number(y);let b=Math.floor(m*100/f);b!==d&&i&&await i({phase:"Resolving deltas",loaded:m,total:f}),m++,d=b;let v=a[y];if(!v.oid)try{h.readDepth=0,h.externalReadDepth=0;let{type:k,object:S}=await h.readSlice({start:y});g[h.readDepth]+=1;let x=await Qt(Le.wrap({type:k,object:S}));v.oid=x,s.push(x),c.set(x,y),l[x]=v.crc}catch(k){continue}}return s.sort(),h}async toBuffer(){let e=[],r=(c,f)=>{e.push(Buffer.from(c,f))};r("ff744f63","hex"),r("00000002","hex");let i=new bt(Buffer.alloc(256*4));for(let c=0;c<256;c++){let f=0;for(let d of this.hashes)parseInt(d.slice(0,2),16)<=c&&f++;i.writeUInt32BE(f)}e.push(i.buffer);for(let c of this.hashes)r(c,"hex");let n=new bt(Buffer.alloc(this.hashes.length*4));for(let c of this.hashes)n.writeUInt32BE(this.crcs[c]);e.push(n.buffer);let a=new bt(Buffer.alloc(this.hashes.length*4));for(let c of this.hashes)a.writeUInt32BE(this.offsets.get(c));e.push(a.buffer),r(this.packfileSha,"hex");let o=Buffer.concat(e),s=await Qt(o),l=Buffer.alloc(20);return l.write(s,"hex"),Buffer.concat([o,l])}async load({pack:e}){this.pack=e}async unload(){this.pack=null}async read({oid:e}){if(!this.offsets.get(e)){if(this.getExternalRefDelta)return this.externalReadDepth++,this.getExternalRefDelta(e);throw new I(`Could not read object ${e} from packfile`)}let r=this.offsets.get(e);return this.readSlice({start:r})}async readSlice({start:e}){if(this.offsetCache[e])return Object.assign({},this.offsetCache[e]);this.readDepth++;let r={16:"commit",32:"tree",48:"blob",64:"tag",96:"ofs_delta",112:"ref_delta"},i=await this.pack;if(!i)throw new I("Could not read packfile data. The packfile may be missing, corrupted, or too large to read into memory.");let n=i.slice(e),a=new bt(n),o=a.readUInt8(),s=o&112,l=r[s];if(l===void 0)throw new I("Unrecognized type: 0b"+s.toString(2));let c=o&15,f=c;o&128&&(f=Z0(a,c));let u=null,h=null;if(l==="ofs_delta"){let g=q0(a),y=e-g;({object:u,type:l}=await this.readSlice({start:y}))}if(l==="ref_delta"){let g=a.slice(20).toString("hex");({object:u,type:l}=await this.read({oid:g}))}let m=n.slice(a.tell());if(h=Buffer.from(await gu(m)),h.byteLength!==f)throw new I(`Packfile told us object would have length ${f} but it had length ${h.byteLength}`);return u&&(h=Buffer.from(U0(h,u))),this.readDepth>3&&(this.offsetCache[e]={type:l,object:h}),{type:l,format:"content",object:h}}},yi=Symbol("PackfileCache");async function W0({fs:t,filename:e,getExternalRefDelta:r,emitter:i,emitterPrefix:n}){let a=await t.read(e);return ki.fromIdx({idx:a,getExternalRefDelta:r})}function yu({fs:t,cache:e,filename:r,getExternalRefDelta:i,emitter:n,emitterPrefix:a}){e[yi]||(e[yi]=new Map);let o=e[yi].get(r);return o||(o=W0({fs:t,filename:r,getExternalRefDelta:i,emitter:n,emitterPrefix:a}),e[yi].set(r,o)),o}async function V0(t,{start:e=0,end:r=t.length}={}){return Qt(t.subarray(e,r))}async function X0({fs:t,cache:e,gitdir:r,oid:i,format:n="content",getExternalRefDelta:a}){let o=await t.readdir(P(r,"objects/pack"));o=o.filter(s=>s.endsWith(".idx"));for(let s of o){let l=`${r}/objects/pack/${s}`,c=await yu({fs:t,cache:e,filename:l,getExternalRefDelta:a});if(c.error)throw new I(c.error);if(c.offsets.has(i)){let f=l.replace(/idx$/,"pack");c.pack||(c.pack=t.read(f));let d=await c.pack;if(!d)throw c.pack=null,new I(`Could not read packfile at ${f}. The file may be missing, corrupted, or too large to read into memory.`);if(!c._checksumVerified){let h=c.packfileSha,m=d.subarray(-20),g=Array.from(m).map(b=>b.toString(16).padStart(2,"0")).join("");if(g!==h)throw new I(`Packfile trailer mismatch: expected ${h}, got ${g}. The packfile may be corrupted.`);let y=await V0(d,{start:0,end:d.length-20});if(y!==h)throw new I(`Packfile payload corrupted: calculated ${y} but expected ${h}. The packfile may have been tampered with.`);c._checksumVerified=!0}let u=await c.read({oid:i,getExternalRefDelta:a});return u.format="content",u.source=`objects/pack/${s.replace(/idx$/,"pack")}`,u}}return null}async function K({fs:t,cache:e,gitdir:r,oid:i,format:n="content"}){let a=f=>K({fs:t,cache:e,gitdir:r,oid:f}),o;if(i==="4b825dc642cb6eb9a060e54bf8d69288fbee4904"&&(o={format:"wrapped",object:Buffer.from("tree 0\0")}),o||(o=await F0({fs:t,gitdir:r,oid:i})),!o){if(o=await X0({fs:t,cache:e,gitdir:r,oid:i,getExternalRefDelta:a}),!o)throw new ct(i);return o}if(n==="deflated"||(o.format==="deflated"&&(o.object=Buffer.from(await gu(o.object)),o.format="wrapped"),n==="wrapped"))return o;let s=await Qt(o.object);if(s!==i)throw new I(`SHA check failed! Expected ${i}, computed ${s}`);let{object:l,type:c}=Le.unwrap(o.object);if(o.type=c,o.object=l,o.format="content",n==="content")return o;throw new I(`invalid requested format "${n}"`)}var Ai=class t extends F{constructor(e,r,i=!0){super(`Failed to create ${e} at ${r} because it already exists.${i?` (Hint: use 'force: true' parameter to overwrite existing ${e}.)`:""}`),this.code=this.name=t.code,this.data={noun:e,where:r,canForce:i}}};Ai.code="AlreadyExistsError";var Da=class t extends F{constructor(e,r,i){super(`Found multiple ${e} matching "${r}" (${i.join(", ")}). Use a longer abbreviation length to disambiguate them.`),this.code=this.name=t.code,this.data={nouns:e,short:r,matches:i}}};Da.code="AmbiguousError";var Ti=class t extends F{constructor(e){super(`Your local changes to the following files would be overwritten by checkout: ${e.join(", ")}`),this.code=this.name=t.code,this.data={filepaths:e}}};Ti.code="CheckoutConflictError";var Na=class t extends F{constructor(e,r){super(`Cannot cherry-pick merge commit ${e}. Merge commits have ${r} parents and require specifying which parent to use as the base.`),this.code=this.name=t.code,this.data={oid:e,parentCount:r}}};Na.code="CherryPickMergeCommitError";var Fa=class t extends F{constructor(e){super(`Cannot cherry-pick root commit ${e}. Root commits have no parents.`),this.code=this.name=t.code,this.data={oid:e}}};Fa.code="CherryPickRootCommitError";var $i=class t extends F{constructor(e,r){super(`Failed to checkout "${e}" because commit ${r} is not available locally. Do a git fetch to make the branch available locally.`),this.code=this.name=t.code,this.data={ref:e,oid:r}}};$i.code="CommitNotFetchedError";var Oi=class t extends F{constructor(){super("Empty response from git server."),this.code=this.name=t.code,this.data={}}};Oi.code="EmptyServerResponseError";var Ri=class t extends F{constructor(){super("A simple fast-forward merge was not possible."),this.code=this.name=t.code,this.data={}}};Ri.code="FastForwardError";var Ii=class t extends F{constructor(e,r){super(`One or more branches were not updated: ${e}`),this.code=this.name=t.code,this.data={prettyDetails:e,result:r}}};Ii.code="GitPushError";var _r=class t extends F{constructor(e,r,i){super(`HTTP Error: ${e} ${r}`),this.code=this.name=t.code,this.data={statusCode:e,statusMessage:r,response:i}}};_r.code="HttpError";var vr=class t extends F{constructor(e){let r="invalid filepath";e==="leading-slash"||e==="trailing-slash"?r='"filepath" parameter should not include leading or trailing directory separators because these can cause problems on some platforms.':e==="directory"&&(r='"filepath" should not be a directory.'),super(r),this.code=this.name=t.code,this.data={reason:e}}};vr.code="InvalidFilepathError";var Pi=class t extends F{constructor(e,r){super(`"${e}" would be an invalid git reference. (Hint: a valid alternative would be "${r}".)`),this.code=this.name=t.code,this.data={ref:e,suggestion:r}}};Pi.code="InvalidRefNameError";var Ci=class t extends F{constructor(e){super(`Maximum search depth of ${e} exceeded.`),this.code=this.name=t.code,this.data={depth:e}}};Ci.code="MaxDepthError";var xr=class t extends F{constructor(){super("Merges with conflicts are not supported yet."),this.code=this.name=t.code,this.data={}}};xr.code="MergeNotSupportedError";var Er=class t extends F{constructor(e,r,i,n){super(`Automatic merge failed with one or more merge conflicts in the following files: ${e.toString()}. Fix conflicts then commit the result.`),this.code=this.name=t.code,this.data={filepaths:e,bothModified:r,deleteByUs:i,deleteByTheirs:n}}};Er.code="MergeConflictError";var pe=class t extends F{constructor(e){super(`No name was provided for ${e} in the argument or in the .git/config file.`),this.code=this.name=t.code,this.data={role:e}}};pe.code="MissingNameError";var St=class t extends F{constructor(e){super(`The function requires a "${e}" parameter but none was provided.`),this.code=this.name=t.code,this.data={parameter:e}}};St.code="MissingParameterError";var He=class t extends F{constructor(e){super('There are multiple errors that were thrown by the method. Please refer to the "errors" property to see more'),this.code=this.name=t.code,this.data={errors:e},this.errors=e}};He.code="MultipleGitError";var Ge=class t extends F{constructor(e,r){super(`Expected "${e}" but received "${r}".`),this.code=this.name=t.code,this.data={expected:e,actual:r}}};Ge.code="ParseError";var Sr=class t extends F{constructor(e){let r="";e==="not-fast-forward"?r=" because it was not a simple fast-forward":e==="tag-exists"&&(r=" because tag already exists"),super(`Push rejected${r}. Use "force: true" to override.`),this.code=this.name=t.code,this.data={reason:e}}};Sr.code="PushRejectedError";var de=class t extends F{constructor(e,r){super(`Remote does not support the "${e}" so the "${r}" parameter cannot be used.`),this.code=this.name=t.code,this.data={capability:e,parameter:r}}};de.code="RemoteCapabilityError";var Bi=class t extends F{constructor(e,r){super(`Remote did not reply using the "smart" HTTP protocol. Expected "001e# service=git-upload-pack" but received: ${e}`),this.code=this.name=t.code,this.data={preview:e,response:r}}};Bi.code="SmartHttpError";var Di=class t extends F{constructor(e,r,i){super(`Git remote "${e}" uses an unrecognized transport protocol: "${r}"`),this.code=this.name=t.code,this.data={url:e,transport:r,suggestion:i}}};Di.code="UnknownTransportError";var Ni=class t extends F{constructor(e){super(`Cannot parse remote URL: "${e}"`),this.code=this.name=t.code,this.data={url:e}}};Ni.code="UrlParseError";var kr=class t extends F{constructor(){super("The operation was canceled."),this.code=this.name=t.code,this.data={}}};kr.code="UserCanceledError";var Ua=class t extends F{constructor(e){super(`Could not merge index: Entry for '${e}' is not up to date. Either reset the index entry to HEAD, or stage your unstaged changes.`),this.code=this.name=t.code,this.data={filepath:e}}};Ua.code="IndexResetError";var Fi=class t extends F{constructor(e){super(`"${e}" does not point to any commit. You're maybe working on a repository with no commits yet. `),this.code=this.name=t.code,this.data={ref:e}}};Fi.code="NoCommitError";function ja({name:t,email:e,timestamp:r,timezoneOffset:i}){return i=Y0(i),`${t} <${e}> ${r} ${i}`}function Y0(t){let e=K0(Q0(t));t=Math.abs(t);let r=Math.floor(t/60);t-=r*60;let i=String(r),n=String(t);return i.length<2&&(i="0"+i),n.length<2&&(n="0"+n),(e===-1?"-":"+")+i+n}function K0(t){return Math.sign(t)||(Object.is(t,-0)?-1:1)}function Q0(t){return t===0?t:-t}function Lt(t){return t=t.replace(/\r/g,""),t=t.replace(/^\n+/,""),t=t.replace(/\n+$/,"")+` +`,t}function Ui(t){let[,e,r,i,n]=t.match(/^(.*) <(.*)> (.*) (.*)$/);return{name:e,email:r,timestamp:Number(i),timezoneOffset:J0(n)}}function J0(t){let[,e,r,i]=t.match(/(\+|-)(\d\d)(\d\d)/);return i=(e==="+"?1:-1)*(Number(r)*60+Number(i)),tm(i)}function tm(t){return t===0?t:-t}var we=class t{constructor(e){if(typeof e=="string")this._tag=e;else if(Buffer.isBuffer(e))this._tag=e.toString("utf8");else if(typeof e=="object")this._tag=t.render(e);else throw new I("invalid type passed to GitAnnotatedTag constructor")}static from(e){return new t(e)}static render(e){return`object ${e.object} +type ${e.type} +tag ${e.tag} +tagger ${ja(e.tagger)} + +${e.message} +${e.gpgsig?e.gpgsig:""}`}justHeaders(){return this._tag.slice(0,this._tag.indexOf(` + +`))}message(){let e=this.withoutSignature();return e.slice(e.indexOf(` + +`)+2)}parse(){return Object.assign(this.headers(),{message:this.message(),gpgsig:this.gpgsig()})}render(){return this._tag}headers(){let e=this.justHeaders().split(` +`),r=[];for(let n of e)n[0]===" "?r[r.length-1]+=` +`+n.slice(1):r.push(n);let i={};for(let n of r){let a=n.slice(0,n.indexOf(" ")),o=n.slice(n.indexOf(" ")+1);Array.isArray(i[a])?i[a].push(o):i[a]=o}return i.tagger&&(i.tagger=Ui(i.tagger)),i.committer&&(i.committer=Ui(i.committer)),i}withoutSignature(){let e=Lt(this._tag);return e.indexOf(` +-----BEGIN PGP SIGNATURE-----`)===-1?e:e.slice(0,e.lastIndexOf(` +-----BEGIN PGP SIGNATURE-----`))}gpgsig(){if(this._tag.indexOf(` +-----BEGIN PGP SIGNATURE-----`)===-1)return;let e=this._tag.slice(this._tag.indexOf("-----BEGIN PGP SIGNATURE-----"),this._tag.indexOf("-----END PGP SIGNATURE-----")+27);return Lt(e)}payload(){return this.withoutSignature()+` +`}toObject(){return Buffer.from(this._tag,"utf8")}static async sign(e,r,i){let n=e.payload(),{signature:a}=await r({payload:n,secretKey:i});a=Lt(a);let o=n+a;return t.from(o)}};function Ea(t){return t.trim().split(` +`).map(e=>" "+e).join(` +`)+` +`}function em(t){return t.split(` +`).map(e=>e.replace(/^ /,"")).join(` +`)}var kt=class t{constructor(e){if(typeof e=="string")this._commit=e;else if(Buffer.isBuffer(e))this._commit=e.toString("utf8");else if(typeof e=="object")this._commit=t.render(e);else throw new I("invalid type passed to GitCommit constructor")}static fromPayloadSignature({payload:e,signature:r}){let i=t.justHeaders(e),n=t.justMessage(e),a=Lt(i+` +gpgsig`+Ea(r)+` +`+n);return new t(a)}static from(e){return new t(e)}toObject(){return Buffer.from(this._commit,"utf8")}headers(){return this.parseHeaders()}message(){return t.justMessage(this._commit)}parse(){return Object.assign({message:this.message()},this.headers())}static justMessage(e){return Lt(e.slice(e.indexOf(` + +`)+2))}static justHeaders(e){return e.slice(0,e.indexOf(` + +`))}parseHeaders(){let e=t.justHeaders(this._commit).split(` +`),r=[];for(let n of e)n[0]===" "?r[r.length-1]+=` +`+n.slice(1):r.push(n);let i={parent:[]};for(let n of r){let a=n.slice(0,n.indexOf(" ")),o=n.slice(n.indexOf(" ")+1);Array.isArray(i[a])?i[a].push(o):i[a]=o}return i.author&&(i.author=Ui(i.author)),i.committer&&(i.committer=Ui(i.committer)),i}static renderHeaders(e){let r="";if(e.tree?r+=`tree ${e.tree} +`:r+=`tree 4b825dc642cb6eb9a060e54bf8d69288fbee4904 +`,e.parent){if(e.parent.length===void 0)throw new I("commit 'parent' property should be an array");for(let a of e.parent)r+=`parent ${a} +`}let i=e.author;r+=`author ${ja(i)} +`;let n=e.committer||e.author;return r+=`committer ${ja(n)} +`,e.gpgsig&&(r+="gpgsig"+Ea(e.gpgsig)),r}static render(e){return t.renderHeaders(e)+` +`+Lt(e.message)}render(){return this._commit}withoutSignature(){let e=Lt(this._commit);if(e.indexOf(` +gpgsig`)===-1)return e;let r=e.slice(0,e.indexOf(` +gpgsig`)),i=e.slice(e.indexOf(`-----END PGP SIGNATURE----- +`)+28);return Lt(r+` +`+i)}isolateSignature(){let e=this._commit.slice(this._commit.indexOf("-----BEGIN PGP SIGNATURE-----"),this._commit.indexOf("-----END PGP SIGNATURE-----")+27);return em(e)}static async sign(e,r,i){let n=e.withoutSignature(),a=t.justMessage(e._commit),{signature:o}=await r({payload:n,secretKey:i});o=Lt(o);let l=t.justHeaders(e._commit)+` +gpgsig`+Ea(o)+` +`+a;return t.from(l)}};async function ji({fs:t,cache:e,gitdir:r,oid:i}){if(i==="4b825dc642cb6eb9a060e54bf8d69288fbee4904")return{tree:Ht.from([]),oid:i};let{type:n,object:a}=await K({fs:t,cache:e,gitdir:r,oid:i});if(n==="tag")return i=we.from(a).parse().object,ji({fs:t,cache:e,gitdir:r,oid:i});if(n==="commit")return i=kt.from(a).parse().tree,ji({fs:t,cache:e,gitdir:r,oid:i});if(n!=="tree")throw new Nt(i,n,"tree");return{tree:Ht.from(a),oid:i}}var Ma=class{constructor({fs:e,gitdir:r,ref:i,cache:n}){this.fs=e,this.cache=n,this.gitdir=r,this.mapPromise=(async()=>{let o=new Map,s;try{s=await D.resolve({fs:e,gitdir:r,ref:i})}catch(c){c instanceof ct&&(s="4b825dc642cb6eb9a060e54bf8d69288fbee4904")}let l=await ji({fs:e,cache:this.cache,gitdir:r,oid:s});return l.type="tree",l.mode="40000",o.set(".",l),o})();let a=this;this.ConstructEntry=class{constructor(s){this._fullpath=s,this._type=!1,this._mode=!1,this._stat=!1,this._content=!1,this._oid=!1}async type(){return a.type(this)}async mode(){return a.mode(this)}async stat(){return a.stat(this)}async content(){return a.content(this)}async oid(){return a.oid(this)}}}async readdir(e){let r=e._fullpath,{fs:i,cache:n,gitdir:a}=this,o=await this.mapPromise,s=o.get(r);if(!s)throw new Error(`No obj for ${r}`);let l=s.oid;if(!l)throw new Error(`No oid for obj ${JSON.stringify(s)}`);if(s.type!=="tree")return null;let{type:c,object:f}=await K({fs:i,cache:n,gitdir:a,oid:l});if(c!==s.type)throw new Nt(l,c,s.type);let d=Ht.from(f);for(let u of d)o.set(P(r,u.path),u);return d.entries().map(u=>P(r,u.path))}async type(e){if(e._type===!1){let r=await this.mapPromise,{type:i}=r.get(e._fullpath);e._type=i}return e._type}async mode(e){if(e._mode===!1){let r=await this.mapPromise,{mode:i}=r.get(e._fullpath);e._mode=uu(parseInt(i,8))}return e._mode}async stat(e){}async content(e){if(e._content===!1){let r=await this.mapPromise,{fs:i,cache:n,gitdir:a}=this,s=r.get(e._fullpath).oid,{type:l,object:c}=await K({fs:i,cache:n,gitdir:a,oid:s});l!=="blob"?e._content=void 0:e._content=new Uint8Array(c)}return e._content}async oid(e){if(e._oid===!1){let i=(await this.mapPromise).get(e._fullpath);e._oid=i.oid}return e._oid}};function Fe({ref:t="HEAD"}={}){let e=Object.create(null);return Object.defineProperty(e,Vi,{value:function({fs:r,gitdir:i,cache:n}){return new Ma({fs:r,gitdir:i,ref:t,cache:n})}}),Object.freeze(e),e}var za=class{constructor({fs:e,dir:r,gitdir:i,cache:n,refresh:a=!0}){this.fs=e,this.cache=n,this.dir=r,this.gitdir=i,this.refresh=a,this.config=null;let o=this;this.ConstructEntry=class{constructor(l){this._fullpath=l,this._type=!1,this._mode=!1,this._stat=!1,this._content=!1,this._oid=!1}async type(){return o.type(this)}async mode(){return o.mode(this)}async stat(){return o.stat(this)}async content(){return o.content(this)}async oid(){return o.oid(this)}}}async readdir(e){let r=e._fullpath,{fs:i,dir:n}=this,a=await i.readdir(P(n,r));return a===null?null:a.map(o=>P(r,o))}async type(e){return e._type===!1&&await e.stat(),e._type}async mode(e){return e._mode===!1&&await e.stat(),e._mode}async stat(e){if(e._stat===!1){let{fs:r,dir:i}=this,n=await r.lstat(`${i}/${e._fullpath}`);if(!n)throw new Error(`ENOENT: no such file or directory, lstat '${e._fullpath}'`);let a=n.isDirectory()?"tree":"blob";a==="blob"&&!n.isFile()&&!n.isSymbolicLink()&&(a="special"),e._type=a,n=Me(n),e._mode=n.mode,n.size===-1&&e._actualSize&&(n.size=e._actualSize),e._stat=n}return e._stat}async content(e){if(e._content===!1){let{fs:r,dir:i,gitdir:n}=this;if(await e.type()==="tree")e._content=void 0;else{let a;if(await e.mode()>>12===10)a=await r.readlink(`${i}/${e._fullpath}`);else{let s=await(await this._getGitConfig(r,n)).get("core.autocrlf");a=await r.read(`${i}/${e._fullpath}`,{autocrlf:s})}e._actualSize=a.length,e._stat&&e._stat.size===-1&&(e._stat.size=e._actualSize),e._content=new Uint8Array(a)}}return e._content}async oid(e){if(e._oid===!1){let r=this,{fs:i,gitdir:n,cache:a}=this,o;await _t.acquire({fs:i,gitdir:n,cache:a},async function(s){let l=s.entriesMap.get(e._fullpath),c=await e.stat(),d=await(await r._getGitConfig(i,n)).get("core.filemode"),u=typeof process!="undefined"?process.platform!=="win32":!0;if(!l||Ra(c,l,d,u)){let h=await e.content();h===void 0?o=void 0:(o=await Qt(Le.wrap({type:"blob",object:h})),r.refresh&&l&&o===l.oid&&(!d||c.mode===l.mode)&&Ra(c,l,d,u)&&s.insert({filepath:e._fullpath,stats:c,oid:o}))}else o=l.oid}),e._oid=o}return e._oid}async _getGitConfig(e,r){return this.config?this.config:(this.config=await J.get({fs:e,gitdir:r}),this.config)}};function bu({refresh:t=!0}={}){let e=Object.create(null);return Object.defineProperty(e,Vi,{value:function({fs:r,dir:i,gitdir:n,cache:a}){return new za({fs:r,dir:i,gitdir:n,cache:a,refresh:t})}}),Object.freeze(e),e}function rm(t,e){let r=e-t;return Array.from({length:r},(i,n)=>t+n)}var _u=typeof Array.prototype.flat=="undefined"?t=>t.reduce((e,r)=>e.concat(r),[]):t=>t.flat(),La=class{constructor(){this.value=null}consider(e){e!=null&&(this.value===null?this.value=e:ec,reduce:o=async(l,c)=>{let f=_u(c);return l!==void 0&&f.unshift(l),f},iterate:s=(l,c)=>Promise.all([...c].map(l))}){let l=n.map(h=>h[Vi]({fs:t,dir:r,gitdir:i,cache:e})),c=new Array(l.length).fill("."),f=rm(0,l.length),d=async h=>{f.forEach(y=>{let b=h[y];h[y]=b&&new l[y].ConstructEntry(b)});let g=(await Promise.all(f.map(y=>{let b=h[y];return b?l[y].readdir(b):[]}))).map(y=>(y===null?[]:y)[Symbol.iterator]());return{entries:h,children:im(g)}},u=async h=>{let{entries:m,children:g}=await d(h),y=m.find(v=>v&&v._fullpath)._fullpath,b=await a(y,m);if(b!==null){let v=await s(u,g);return v=v.filter(k=>k!==void 0),o(b,v)}};return u(c)}async function Ha(t,e){let r=await t.readdir(e);r==null?await t.rm(e):r.length?await Promise.all(r.map(i=>{let n=P(e,i);return t.lstat(n).then(a=>{if(a)return a.isDirectory()?Ha(t,n):t.rm(n)})})).then(()=>t.rmdir(e)):await t.rmdir(e)}function nm(t){return am(t)&&Vl(t.then)&&Vl(t.catch)}function am(t){return t&&typeof t=="object"}function Vl(t){return typeof t=="function"}function Xl(t){return nm((r=>{try{return r.readFile().catch(i=>i)}catch(i){return i}})(t))}var Yl=["readFile","writeFile","mkdir","rmdir","unlink","stat","lstat","readdir","readlink","symlink"];function Kl(t,e){if(Xl(e))for(let r of Yl)t[`_${r}`]=e[r].bind(e);else for(let r of Yl)t[`_${r}`]=(0,gr.default)(e[r].bind(e));Xl(e)?(e.cp&&(t._cp=e.cp.bind(e)),e.rm?t._rm=e.rm.bind(e):e.rmdir.length>1?t._rm=e.rmdir.bind(e):t._rm=Ha.bind(null,t)):(e.cp&&(t._cp=(0,gr.default)(e.cp.bind(e))),e.rm?t._rm=(0,gr.default)(e.rm.bind(e)):e.rmdir.length>2?t._rm=(0,gr.default)(e.rmdir.bind(e)):t._rm=Ha.bind(null,t))}var nt=class{constructor(e){if(typeof e._original_unwrapped_fs!="undefined")return e;let r=Object.getOwnPropertyDescriptor(e,"promises");r&&r.enumerable?Kl(this,e.promises):Kl(this,e),this._original_unwrapped_fs=e}async exists(e,r={}){try{return await this._stat(e),!0}catch(i){if(i.code==="ENOENT"||i.code==="ENOTDIR"||(i.code||"").includes("ENS"))return!1;throw console.log('Unhandled error in "FileSystem.exists()" function',i),i}}async read(e,r={}){try{let i=await this._readFile(e,r);if(r.autocrlf==="true")try{i=new TextDecoder("utf8",{fatal:!0}).decode(i),i=i.replace(/\r\n/g,` +`),i=new TextEncoder().encode(i)}catch(n){}return typeof i!="string"&&(i=Buffer.from(i)),i}catch(i){return null}}async write(e,r,i={}){try{await this._writeFile(e,r,i)}catch(n){await this.mkdir(ze(e)),await this._writeFile(e,r,i)}}async mkdir(e,r=!1){try{await this._mkdir(e)}catch(i){if(i===null||i.code==="EEXIST")return;if(r)throw i;if(i.code==="ENOENT"){let n=ze(e);if(n==="."||n==="/"||n===e)throw i;await this.mkdir(n),await this.mkdir(e,!0)}}}async rm(e){try{await this._unlink(e)}catch(r){if(r.code!=="ENOENT")throw r}}async rmdir(e,r){try{r&&r.recursive?await this._rm(e,r):await this._rmdir(e)}catch(i){if(i.code!=="ENOENT")throw i}}async readdir(e){try{let r=await this._readdir(e);return r.sort(Wi),r}catch(r){return r.code==="ENOTDIR"?null:[]}}async readdirDeep(e){let r=await this._readdir(e);return(await Promise.all(r.map(async n=>{let a=e+"/"+n;return(await this._stat(a)).isDirectory()?this.readdirDeep(a):a}))).reduce((n,a)=>n.concat(a),[])}async lstat(e){try{return await this._lstat(e)}catch(r){if(r.code==="ENOENT"||(r.code||"").includes("ENS"))return null;throw r}}async readlink(e,r={encoding:"buffer"}){try{let i=await this._readlink(e,r);return Buffer.isBuffer(i)?i:Buffer.from(i)}catch(i){if(i.code==="ENOENT"||(i.code||"").includes("ENS"))return null;throw i}}async writelink(e,r){return this._symlink(r.toString("utf8"),e)}};function C(t,e){if(e===void 0)throw new St(t)}function om(t){return t.startsWith("/")||/^[a-zA-Z]:[\\/]/.test(t)}async function dt({fsp:t,dotgit:e}){C("fsp",t),C("dotgit",e);let r=await t._stat(e).catch(()=>({isFile:()=>!1,isDirectory:()=>!1}));return r.isDirectory()?e:r.isFile()?t._readFile(e,"utf8").then(i=>i.trimRight().substr(8)).then(i=>om(i)?i:P(ze(e),i)):e}async function Ql(t,e){return!t&&!e?!1:t&&!e||!t&&e?!0:!(await t.type()==="tree"&&await e.type()==="tree"||await t.type()===await e.type()&&await t.mode()===await e.mode()&&await t.oid()===await e.oid())}var zi=class{static async isIgnored({fs:e,dir:r,gitdir:i=P(r,".git"),filepath:n}){if(_i(n)===".git")return!0;if(n===".")return!1;let a="",o=P(i,"info","exclude");await e.exists(o)&&(a=await e.read(o,"utf8"));let s=[{gitignore:P(r,".gitignore"),filepath:n}],l=n.split("/").filter(Boolean);for(let f=1;f{let d=await(await J.get({fs:s,gitdir:l})).get("core.autocrlf");return Ga({dir:e,gitdir:l,fs:s,filepath:i,index:c,force:a,parallel:o,autocrlf:d})})}catch(s){throw s.caller="git.add",s}}async function Ga({dir:t,gitdir:e,fs:r,filepath:i,index:n,force:a,parallel:o,autocrlf:s}){i=Array.isArray(i)?i:[i];let l=i.map(async u=>{if(!a&&await zi.isIgnored({fs:r,dir:t,gitdir:e,filepath:u}))return;let h=await r.lstat(P(t,u));if(!h)throw new ct(u);if(h.isDirectory()){let m=await r.readdir(P(t,u));if(o){let g=m.map(y=>Ga({dir:t,gitdir:e,fs:r,filepath:[P(u,y)],index:n,force:a,parallel:o,autocrlf:s}));await Promise.all(g)}else for(let g of m)await Ga({dir:t,gitdir:e,fs:r,filepath:[P(u,g)],index:n,force:a,parallel:o,autocrlf:s})}else{let m=h.isSymbolicLink()?await r.readlink(P(t,u)).then(lm):await r.read(P(t,u),{autocrlf:s});if(m===null)throw new ct(u);let g=await Ar({fs:r,gitdir:e,type:"blob",object:m});n.insert({filepath:u,stats:h,oid:g})}}),c=await Promise.allSettled(l),f=c.filter(u=>u.status==="rejected").map(u=>u.reason);if(f.length>1)throw new He(f);if(f.length===1)throw f[0];return c.filter(u=>u.status==="fulfilled"&&u.value).map(u=>u.value)}async function Li({fs:t,gitdir:e,path:r}){return(await J.get({fs:t,gitdir:e})).get(r)}function xu(t,...e){for(let r of e)if(r)for(let i of Object.keys(r)){let n=r[i];n!==void 0&&(t[i]=n)}return t}async function qa({fs:t,gitdir:e,author:r,commit:i}){let n=Math.floor(Date.now()/1e3),a={name:await Li({fs:t,gitdir:e,path:"user.name"}),email:await Li({fs:t,gitdir:e,path:"user.email"})||"",timestamp:n,timezoneOffset:new Date(n*1e3).getTimezoneOffset()},o=xu({},a,i?i.author:void 0,r);if(o.name!==void 0)return o}async function Za({fs:t,gitdir:e,author:r,committer:i,commit:n}){let a=Math.floor(Date.now()/1e3),o={name:await Li({fs:t,gitdir:e,path:"user.name"}),email:await Li({fs:t,gitdir:e,path:"user.email"})||"",timestamp:a,timezoneOffset:new Date(a*1e3).getTimezoneOffset()},s=xu({},o,n?n.committer:void 0,r,i);if(s.name!==void 0)return s}async function Eu({fs:t,cache:e,gitdir:r,oid:i}){let{type:n,object:a}=await K({fs:t,cache:e,gitdir:r,oid:i});if(n==="tag")return i=we.from(a).parse().object,Eu({fs:t,cache:e,gitdir:r,oid:i});if(n!=="commit")throw new Nt(i,n,"commit");return{commit:kt.from(a),oid:i}}async function um({fs:t,cache:e,gitdir:r,oid:i}){let{commit:n,oid:a}=await Eu({fs:t,cache:e,gitdir:r,oid:i});return{oid:a,commit:n.parse(),payload:n.withoutSignature()}}async function Su({fs:t,cache:e,onSign:r,gitdir:i,message:n,author:a,committer:o,signingKey:s,amend:l=!1,dryRun:c=!1,noUpdateBranch:f=!1,ref:d,parent:u,tree:h}){let m=!1,g=!1;d||(g=!(await t.read(`${i}/HEAD`,{encoding:"utf8"})).startsWith("ref:"),d=await D.resolve({fs:t,gitdir:i,ref:"HEAD",depth:2}));let y,b;try{y=await D.resolve({fs:t,gitdir:i,ref:d}),b=await um({fs:t,gitdir:i,oid:y,cache:{}})}catch(S){m=!0}if(l&&m)throw new Fi(d);let v=l?await qa({fs:t,gitdir:i,author:a,commit:b.commit}):await qa({fs:t,gitdir:i,author:a});if(!v)throw new pe("author");let k=l?await Za({fs:t,gitdir:i,author:v,committer:o,commit:b.commit}):await Za({fs:t,gitdir:i,author:v,committer:o});if(!k)throw new pe("committer");return _t.acquire({fs:t,gitdir:i,cache:e,allowUnmerged:!1},async function(S){let T=hu(S.entries).get(".");if(h||(h=await ku({fs:t,gitdir:i,inode:T,dryRun:c})),u?u=await Promise.all(u.map(w=>D.resolve({fs:t,gitdir:i,ref:w}))):l?u=b.commit.parent:u=y?[y]:[],!n)if(l)n=b.commit.message;else throw new St("message");let p=kt.from({tree:h,parent:u,author:v,committer:k,message:n});s&&(p=await kt.sign(p,r,s));let _=await Ar({fs:t,gitdir:i,type:"commit",object:p.toObject(),dryRun:c});return!f&&!c&&await D.writeRef({fs:t,gitdir:i,ref:g?"HEAD":d,value:_}),_})}async function ku({fs:t,gitdir:e,inode:r,dryRun:i}){let n=r.children;for(let l of n)l.type==="tree"&&(l.metadata.mode="040000",l.metadata.oid=await ku({fs:t,gitdir:e,inode:l,dryRun:i}));let a=n.map(l=>({mode:l.metadata.mode,path:l.basename,oid:l.metadata.oid,type:l.type})),o=Ht.from(a);return await Ar({fs:t,gitdir:e,type:"tree",object:o.toObject(),dryRun:i})}async function dm({fs:t,cache:e,gitdir:r,oid:i,filepath:n}){if(n.startsWith("/"))throw new vr("leading-slash");if(n.endsWith("/"))throw new vr("trailing-slash");let a=i,o=await ji({fs:t,cache:e,gitdir:r,oid:i}),s=o.tree;if(n==="")i=o.oid;else{let l=n.split("/");i=await Au({fs:t,cache:e,gitdir:r,tree:s,pathArray:l,oid:a,filepath:n})}return i}async function Au({fs:t,cache:e,gitdir:r,tree:i,pathArray:n,oid:a,filepath:o}){let s=n.shift();for(let l of i)if(l.path===s){if(n.length===0)return l.oid;{let{type:c,object:f}=await K({fs:t,cache:e,gitdir:r,oid:l.oid});if(c!=="tree")throw new Nt(a,c,"tree",o);return i=Ht.from(f),Au({fs:t,cache:e,gitdir:r,tree:i,pathArray:n,oid:a,filepath:o})}}throw new ct(`file or directory found at "${a}:${o}"`)}var hm=/(^|[/.])([/.]|$)|^@$|@{|[\x00-\x20\x7f~^:?*[\\]|\.lock(\/|$)/;function pm(t,e){if(typeof t!="string")throw new TypeError("Reference name must be a string");return!hm.test(t)&&(!!e||t.includes("/"))}async function Tu({fs:t,gitdir:e,remote:r,url:i,force:n}){if(!pm(r,!0))throw new Pi(r,cu.default.clean(r));let a=await J.get({fs:t,gitdir:e});if(!n&&(await a.getSubsections("remote")).includes(r)&&i!==await a.get(`remote.${r}.url`))throw new Ai("remote",r);await a.set(`remote.${r}.url`,i),await a.set(`remote.${r}.fetch`,`+refs/heads/*:refs/remotes/${r}/*`),await J.save({fs:t,gitdir:e,config:a})}async function $u({fs:t,dir:e,gitdir:r=P(e,".git"),remote:i,url:n,force:a=!1}){try{C("fs",t),C("gitdir",r),C("remote",i),C("url",n);let o=new nt(t),s=await dt({fsp:o,dotgit:r});return await Tu({fs:o,gitdir:s,remote:i,url:n,force:a})}catch(o){throw o.caller="git.addRemote",o}}var Ou=(t,e)=>t==="."||e==null||e.length===0||e==="."?!0:e.length>=t.length?e.startsWith(t):t.startsWith(e);async function wm({fs:t,cache:e,onProgress:r,onPostCheckout:i,dir:n,gitdir:a,remote:o,ref:s,filepaths:l,noCheckout:c,noUpdateHead:f,dryRun:d,force:u,track:h=!0,nonBlocking:m=!1,batchSize:g=100}){let y;if(i)try{y=await D.resolve({fs:t,gitdir:a,ref:"HEAD"})}catch(v){y="0000000000000000000000000000000000000000"}let b;try{b=await D.resolve({fs:t,gitdir:a,ref:s})}catch(v){if(s==="HEAD")throw v;let k=`${o}/${s}`;if(b=await D.resolve({fs:t,gitdir:a,ref:k}),h){let S=await J.get({fs:t,gitdir:a});await S.set(`branch.${s}.remote`,o),await S.set(`branch.${s}.merge`,`refs/heads/${s}`),await J.save({fs:t,gitdir:a,config:S})}await D.writeRef({fs:t,gitdir:a,ref:`refs/heads/${s}`,value:b})}if(!c){let v;try{v=await mm({fs:t,cache:e,onProgress:r,dir:n,gitdir:a,ref:s,force:u,filepaths:l})}catch(p){throw p instanceof ct&&p.data.what===b?new $i(s,b):p}let k=v.filter(([p])=>p==="conflict").map(([p,_])=>_);if(k.length>0)throw new Ti(k);let S=v.filter(([p])=>p==="error").map(([p,_])=>_);if(S.length>0)throw new I(S.join(", "));if(d){i&&await i({previousHead:y,newHead:b,type:l!=null&&l.length>0?"file":"branch"});return}let x=0,T=v.length;if(await _t.acquire({fs:t,gitdir:a,cache:e},async function(p){await Promise.all(v.filter(([_])=>_==="delete"||_==="delete-index").map(async function([_,w]){let A=`${n}/${w}`;_==="delete"&&await t.rm(A),p.delete({filepath:w}),r&&await r({phase:"Updating workdir",loaded:++x,total:T})}))}),await _t.acquire({fs:t,gitdir:a,cache:e},async function(p){for(let[_,w]of v)if(_==="rmdir"||_==="rmdir-index"){let A=`${n}/${w}`;try{_==="rmdir"&&await t.rmdir(A),p.delete({filepath:w}),r&&await r({phase:"Updating workdir",loaded:++x,total:T})}catch(E){if(E.code==="ENOTEMPTY")console.log(`Did not delete ${w} because directory is not empty`);else throw E}}}),await Promise.all(v.filter(([p])=>p==="mkdir"||p==="mkdir-index").map(async function([p,_]){let w=`${n}/${_}`;await t.mkdir(w),r&&await r({phase:"Updating workdir",loaded:++x,total:T})})),m){let p=v.filter(([w])=>w==="create"||w==="create-index"||w==="update"||w==="mkdir-index"),_=await Jl("Update Working Dir",p.map(([w,A,E,$,R])=>()=>ym({fs:t,cache:e,gitdir:a,dir:n},[w,A,E,$,R])),r,g);await _t.acquire({fs:t,gitdir:a,cache:e,allowUnmerged:!0},async function(w){await Jl("Update Index",_.map(([A,E,$])=>()=>gm({index:w,fullpath:A,oid:E,stats:$})),r,g)})}else await _t.acquire({fs:t,gitdir:a,cache:e,allowUnmerged:!0},async function(p){var A,E;let _=await Promise.allSettled(v.filter(([$])=>$==="create"||$==="create-index"||$==="update"||$==="mkdir-index").map(async function([$,R,B,H,ht]){let W=`${n}/${R}`;if($!=="create-index"&&$!=="mkdir-index"){let{object:Jt}=await K({fs:t,cache:e,gitdir:a,oid:B});if(ht&&await t.rm(W),H===33188)await t.write(W,Jt);else if(H===33261)await t.write(W,Jt,{mode:511});else if(H===40960)await t.writelink(W,Jt);else throw new I(`Invalid mode 0o${H.toString(8)} detected in blob ${B}`)}let tt=await t.lstat(W);H===33261&&(tt.mode=493),$==="mkdir-index"&&(tt.mode=57344),p.insert({filepath:R,stats:tt,oid:B}),r&&await r({phase:"Updating workdir",loaded:++x,total:T})})),w=[];for(let $ of _)$.status==="rejected"&&(w.push($.reason),console.error("[isomorphic-git checkout] task rejected:",(E=(A=$.reason)==null?void 0:A.stack)!=null?E:$.reason));if(w.length>0)throw new He(w)});i&&await i({previousHead:y,newHead:b,type:l!=null&&l.length>0?"file":"branch"})}if(!f){let v=await D.expand({fs:t,gitdir:a,ref:s});v.startsWith("refs/heads")?await D.writeSymbolicRef({fs:t,gitdir:a,ref:"HEAD",value:v}):await D.writeRef({fs:t,gitdir:a,ref:"HEAD",value:b})}}async function mm({fs:t,cache:e,onProgress:r,dir:i,gitdir:n,ref:a,force:o,filepaths:s}){let l=0;return Mi({fs:t,cache:e,dir:i,gitdir:n,trees:[Fe({ref:a}),bu(),pu()],map:async function(c,[f,d,u]){if(c===".")return;if(s&&!s.some(m=>Ou(c,m)))return null;switch(r&&await r({phase:"Analyzing workdir",loaded:++l}),[!!u,!!f,!!d].map(Number).join("")){case"000":return;case"001":return o&&s&&s.includes(c)?["delete",c]:void 0;case"010":switch(await f.type()){case"tree":return["mkdir",c];case"blob":return["create",c,await f.oid(),await f.mode()];case"commit":return["mkdir-index",c,await f.oid(),await f.mode()];default:return["error",`new entry Unhandled type ${await f.type()}`]}case"011":switch(`${await f.type()}-${await d.type()}`){case"tree-tree":return;case"tree-blob":case"blob-tree":return["conflict",c];case"blob-blob":return await f.oid()!==await d.oid()?o?["update",c,await f.oid(),await f.mode(),await f.mode()!==await d.mode()]:["conflict",c]:await f.mode()!==await d.mode()?o?["update",c,await f.oid(),await f.mode(),!0]:["conflict",c]:["create-index",c,await f.oid(),await f.mode()];case"commit-tree":return;case"commit-blob":return["conflict",c];default:return["error",`new entry Unhandled type ${f.type}`]}case"100":return["delete-index",c];case"101":switch(await u.type()){case"tree":return["rmdir-index",c];case"blob":return await u.oid()!==await d.oid()?o?["delete",c]:["conflict",c]:["delete",c];case"commit":return["rmdir-index",c];default:return["error",`delete entry Unhandled type ${await u.type()}`]}case"110":case"111":switch(`${await u.type()}-${await f.type()}`){case"tree-tree":return;case"blob-blob":{if(await u.oid()===await f.oid()&&await u.mode()===await f.mode()&&!o)return;if(d){if(await d.oid()!==await u.oid()&&await d.oid()!==await f.oid())return o?["update",c,await f.oid(),await f.mode(),await f.mode()!==await d.mode()]:["conflict",c]}else if(o)return["update",c,await f.oid(),await f.mode(),await f.mode()!==await u.mode()];return await f.mode()!==await u.mode()?["update",c,await f.oid(),await f.mode(),!0]:await f.oid()!==await u.oid()?["update",c,await f.oid(),await f.mode(),!1]:void 0}case"tree-blob":return["update-dir-to-blob",c,await f.oid()];case"blob-tree":return["update-blob-to-tree",c];case"commit-commit":return["mkdir-index",c,await f.oid(),await f.mode()];default:return["error",`update entry Unhandled type ${await u.type()}-${await f.type()}`]}}},reduce:async function(c,f){return f=_u(f),c?c&&c[0]==="rmdir"?(f.push(c),f):(f.unshift(c),f):f}})}async function gm({index:t,fullpath:e,stats:r,oid:i}){try{t.insert({filepath:e,stats:r,oid:i})}catch(n){console.warn(`Error inserting ${e} into index:`,n)}}async function ym({fs:t,cache:e,gitdir:r,dir:i},[n,a,o,s,l]){let c=`${i}/${a}`;if(n!=="create-index"&&n!=="mkdir-index"){let{object:d}=await K({fs:t,cache:e,gitdir:r,oid:o});if(l&&await t.rm(c),s===33188)await t.write(c,d);else if(s===33261)await t.write(c,d,{mode:511});else if(s===40960)await t.writelink(c,d);else throw new I(`Invalid mode 0o${s.toString(8)} detected in blob ${o}`)}let f=await t.lstat(c);return s===33261&&(f.mode=493),n==="mkdir-index"&&(f.mode=57344),[a,o,f]}async function Jl(t,e,r,i){let n=[],a=[];for(let o=0;oc());(await Promise.allSettled(s)).forEach(c=>{var f,d;c.status==="fulfilled"?n.push(c.value):(a.push(c.reason),console.error(`[isomorphic-git ${t}] task rejected:`,(d=(f=c.reason)==null?void 0:f.stack)!=null?d:c.reason))}),r&&await r({phase:"Updating workdir",loaded:o+s.length,total:e.length})}if(a.length>0)throw new He(a);return n}var ka=/^.*(\r?\n|$)/gm;function bm({branches:t,contents:e}){let r=t[1],i=t[2],n=e[0],a=e[1],o=e[2],s=a.match(ka),l=n.match(ka),c=o.match(ka),f=(0,fu.default)(s,l,c),d=7,u="",h=!0;for(let m of f)m.ok&&(u+=m.ok.join("")),m.conflict&&(h=!1,u+=`${"<".repeat(d)} ${r} +`,u+=m.conflict.a.join(""),u+=`${"=".repeat(d)} +`,u+=m.conflict.b.join(""),u+=`${">".repeat(d)} ${i} +`);return{cleanMerge:h,mergedText:u}}async function _m({fs:t,cache:e,dir:r,gitdir:i=P(r,".git"),index:n,ourOid:a,baseOid:o,theirOid:s,ourName:l="ours",baseName:c="base",theirName:f="theirs",dryRun:d=!1,abortOnConflict:u=!0,mergeDriver:h}){let m=Fe({ref:a}),g=Fe({ref:o}),y=Fe({ref:s}),b=[],v=[],k=[],S=[],x=await Mi({fs:t,cache:e,dir:r,gitdir:i,trees:[m,g,y],map:async function(T,[p,_,w]){let A=_i(T),E=await Ql(p,_),$=await Ql(w,_);switch(`${E}-${$}`){case"false-false":return{mode:await _.mode(),path:A,oid:await _.oid(),type:await _.type()};case"false-true":return!w&&await p.type()==="tree"?{mode:await p.mode(),path:A,oid:await p.oid(),type:await p.type()}:w?{mode:await w.mode(),path:A,oid:await w.oid(),type:await w.type()}:void 0;case"true-false":return!p&&await w.type()==="tree"?{mode:await w.mode(),path:A,oid:await w.oid(),type:await w.type()}:p?{mode:await p.mode(),path:A,oid:await p.oid(),type:await p.type()}:void 0;case"true-true":{if(p&&w&&await p.type()==="tree"&&await w.type()==="tree")return{mode:await p.mode(),path:A,oid:await p.oid(),type:"tree"};if(p&&w&&await p.type()==="blob"&&await w.type()==="blob")return vm({fs:t,gitdir:i,path:A,ours:p,base:_,theirs:w,ourName:l,baseName:c,theirName:f,mergeDriver:h}).then(async R=>{if(R.cleanMerge)u||n.insert({filepath:T,oid:R.mergeResult.oid,stage:0});else if(b.push(T),v.push(T),!u){let B="";_&&await _.type()==="blob"&&(B=await _.oid());let H=await p.oid(),ht=await w.oid();n.delete({filepath:T}),B&&n.insert({filepath:T,oid:B,stage:1}),n.insert({filepath:T,oid:H,stage:2}),n.insert({filepath:T,oid:ht,stage:3})}return R.mergeResult});if(_&&!p&&w&&await _.type()==="blob"&&await w.type()==="blob"){if(b.push(T),k.push(T),!u){let R=await _.oid(),B=await w.oid();n.delete({filepath:T}),n.insert({filepath:T,oid:R,stage:1}),n.insert({filepath:T,oid:B,stage:3})}return{mode:await w.mode(),oid:await w.oid(),type:"blob",path:A}}if(_&&p&&!w&&await _.type()==="blob"&&await p.type()==="blob"){if(b.push(T),S.push(T),!u){let R=await _.oid(),B=await p.oid();n.delete({filepath:T}),n.insert({filepath:T,oid:R,stage:1}),n.insert({filepath:T,oid:B,stage:2})}return{mode:await p.mode(),oid:await p.oid(),type:"blob",path:A}}if(_&&!p&&!w&&(await _.type()==="blob"||await _.type()==="tree"))return;throw new xr}}},reduce:b.length!==0&&(!r||u)?void 0:async(T,p)=>{let _=p.filter(Boolean);if(T&&!(T&&T.type==="tree"&&_.length===0&&T.path!==".")){if(_.length>0||T.path==="."&&_.length===0){let A=new Ht(_).toObject(),E=await Ar({fs:t,gitdir:i,type:"tree",object:A,dryRun:d});T.oid=E}return T}}});return b.length!==0?(r&&!u&&await Mi({fs:t,cache:e,dir:r,gitdir:i,trees:[Fe({ref:x.oid})],map:async function(T,[p]){let _=`${r}/${T}`;if(await p.type()==="blob"){let w=await p.mode(),A=new TextDecoder().decode(await p.content());await t.write(_,A,{mode:w})}return!0}}),new Er(b,v,k,S)):x.oid}async function vm({fs:t,gitdir:e,path:r,ours:i,base:n,theirs:a,ourName:o,theirName:s,baseName:l,dryRun:c,mergeDriver:f=bm}){let d="blob",u="100755",h="",m="";n&&await n.type()==="blob"&&(u=await n.mode(),h=await n.oid(),m=Buffer.from(await n.content()).toString("utf8"));let g=u===await i.mode()?await a.mode():await i.mode();if(await i.oid()===await a.oid())return{cleanMerge:!0,mergeResult:{mode:g,path:r,oid:await i.oid(),type:d}};if(await i.oid()===h)return{cleanMerge:!0,mergeResult:{mode:g,path:r,oid:await a.oid(),type:d}};if(await a.oid()===h)return{cleanMerge:!0,mergeResult:{mode:g,path:r,oid:await i.oid(),type:d}};let y=Buffer.from(await i.content()).toString("utf8"),b=Buffer.from(await a.content()).toString("utf8"),{mergedText:v,cleanMerge:k}=await f({branches:[l,o,s],contents:[m,y,b],path:r}),S=await Ar({fs:t,gitdir:e,type:"blob",object:Buffer.from(v,"utf8"),dryRun:c});return{cleanMerge:k,mergeResult:{mode:g,path:r,oid:S,type:d}}}var xm=/^refs\/(heads\/|tags\/|remotes\/)?(.*)/;function Ue(t){let e=xm.exec(t);return e?e[1]==="remotes/"&&t.endsWith("/HEAD")?e[2].slice(0,-5):e[2]:t}async function Ya({fs:t,gitdir:e,fullname:r=!1,test:i=!1}){let n=await D.resolve({fs:t,gitdir:e,ref:"HEAD",depth:2});if(i)try{await D.resolve({fs:t,gitdir:e,ref:n})}catch(a){return}if(n.startsWith("refs/"))return r?n:Ue(n)}function Em(t){return t=t.replace(/^git@([^:]+):/,"https://$1/"),t=t.replace(/^ssh:\/\//,"https://"),t}function Ru({username:t="",password:e=""}){return`Basic ${Buffer.from(`${t}:${e}`).toString("base64")}`}async function Tr(t,e){let r=mu(t);for(;;){let{value:i,done:n}=await r.next();if(i&&await e(i),n)break}r.return&&r.return()}async function Wa(t){let e=0,r=[];await Tr(t,a=>{r.push(a),e+=a.byteLength});let i=new Uint8Array(e),n=0;for(let a of r)i.set(a,n),n+=a.byteLength;return i}function tu(t){let e=t.match(/^https?:\/\/([^/]+)@/);if(e==null)return{url:t,auth:{}};e=e[1];let[r,i]=e.split(":");return t=t.replace(`${e}@`,""),{url:t,auth:{username:r,password:i}}}function Va(t,e){let r=e.toString(16);return"0".repeat(t-r.length)+r}var it=class{static flush(){return Buffer.from("0000","utf8")}static delim(){return Buffer.from("0001","utf8")}static encode(e){typeof e=="string"&&(e=Buffer.from(e));let r=e.length+4,i=Va(4,r);return Buffer.concat([Buffer.from(i,"utf8"),e])}static streamReader(e){let r=new Si(e);return async function(){try{let n=await r.read(4);if(n==null)return!0;if(n=parseInt(n.toString("utf8"),16),n===0||n===1)return null;let a=await r.read(n-4);return a==null?!0:a}catch(n){return e.error=n,!0}}}};async function eu(t){let e={},r;for(;r=await t(),r!==!0;){if(r===null)continue;r=r.toString("utf8").replace(/\n$/,"");let i=r.indexOf("=");if(i>-1){let n=r.slice(0,i),a=r.slice(i+1);e[n]=a}else e[r]=!0}return{protocolVersion:2,capabilities2:e}}async function ru(t,{service:e}){let r=new Set,i=new Map,n=new Map,a=it.streamReader(t),o=await a();for(;o===null;)o=await a();if(o===!0)throw new Oi;if(o.includes("version 2"))return eu(a);if(o.toString("utf8").replace(/\n$/,"")!==`# service=${e}`)throw new Ge(`# service=${e}\\n`,o.toString("utf8"));let s=await a();for(;s===null;)s=await a();if(s===!0)return{capabilities:r,refs:i,symrefs:n};if(s=s.toString("utf8"),s.includes("version 2"))return eu(a);let[l,c]=Aa(s,"\0","\\x00");if(c.split(" ").map(f=>r.add(f)),l!=="0000000000000000000000000000000000000000 capabilities^{}"){let[f,d]=Aa(l," "," ");for(i.set(d,f);;){let u=await a();if(u===!0)break;if(u!==null){let[h,m]=Aa(u.toString("utf8")," "," ");i.set(m,h)}}}for(let f of r)if(f.startsWith("symref=")){let d=f.match(/symref=([^:]+):(.*)/);d.length===3&&n.set(d[1],d[2])}return{protocolVersion:1,capabilities:r,refs:i,symrefs:n}}function Aa(t,e,r){let i=t.trim().split(e);if(i.length!==2)throw new Ge(`Two strings separated by '${r}'`,t.toString("utf8"));return i}var iu=(t,e)=>t.endsWith("?")?`${t}${e}`:`${t}/${e.replace(/^https?:\/\//,"")}`,nu=(t,e)=>{(e.username||e.password)&&(t.Authorization=Ru(e)),e.headers&&Object.assign(t,e.headers)},Ta=async t=>{try{let e=Buffer.from(await Wa(t.body)),r=e.toString("utf8");return{preview:r.length<256?r:r.slice(0,256)+"...",response:r,data:e}}catch(e){return{}}},Hi=class{static async capabilities(){return["discover","connect"]}static async discover({http:e,onProgress:r,onAuth:i,onAuthSuccess:n,onAuthFailure:a,corsProxy:o,service:s,url:l,headers:c,protocolVersion:f}){let{url:d,auth:u}=tu(l),h=o?iu(o,d):d;(u.username||u.password)&&(c.Authorization=Ru(u)),f===2&&(c["Git-Protocol"]="version=2");let m,g,y=!1;do if(m=await e.request({onProgress:r,method:"GET",url:`${h}/info/refs?service=${s}`,headers:c}),g=!1,m.statusCode===401||m.statusCode===203){let b=y?a:i;if(b){if(u=await b(d,{...u,headers:{...c}}),u&&u.cancel)throw new kr;u&&(nu(c,u),y=!0,g=!0)}}else m.statusCode===200&&y&&n&&await n(d,u);while(g);if(m.statusCode!==200){let{response:b}=await Ta(m);throw new _r(m.statusCode,m.statusMessage,b)}if(m.headers["content-type"]===`application/x-${s}-advertisement`){let b=await ru(m.body,{service:s});return b.auth=u,b}else{let{preview:b,response:v,data:k}=await Ta(m);try{let S=await ru([k],{service:s});return S.auth=u,S}catch(S){throw new Bi(b,v)}}}static async connect({http:e,onProgress:r,corsProxy:i,service:n,url:a,auth:o,body:s,headers:l}){let c=tu(a);c&&(a=c.url),i&&(a=iu(i,a)),l["content-type"]=`application/x-${n}-request`,l.accept=`application/x-${n}-result`,nu(l,o);let f=await e.request({onProgress:r,method:"POST",url:`${a}/${n}`,body:s,headers:l});if(f.statusCode!==200){let{response:d}=Ta(f);throw new _r(f.statusCode,f.statusMessage,d)}return f}},Gi=class{static getRemoteHelperFor({url:e}){let r=new Map;r.set("http",Hi),r.set("https",Hi);let i=Sm({url:e});if(!i)throw new Ni(e);if(r.has(i.transport))return r.get(i.transport);throw new Di(e,i.transport,i.transport==="ssh"?Em(e):void 0)}};function Sm({url:t}){if(t.startsWith("git@"))return{transport:"ssh",address:t};let e=t.match(/(\w+)(:\/\/|::)(.*)/);if(e!==null){if(e[2]==="://")return{transport:e[1],address:e[0]};if(e[2]==="::")return{transport:e[1],address:e[3]}}}var ue=null,qe=class{static async read({fs:e,gitdir:r}){ue===null&&(ue=new yr.default);let i=P(r,"shallow"),n=new Set;return await ue.acquire(i,async function(){let a=await e.read(i,{encoding:"utf8"});if(a===null||a.trim()==="")return n;a.trim().split(` +`).map(o=>n.add(o))}),n}static async write({fs:e,gitdir:r,oids:i}){ue===null&&(ue=new yr.default);let n=P(r,"shallow");if(i.size>0){let a=[...i].join(` +`)+` +`;await ue.acquire(n,async function(){await e.write(n,a,{encoding:"utf8"})})}else await ue.acquire(n,async function(){await e.rm(n)})}};async function km({fs:t,gitdir:e,oid:r}){let i=`objects/${r.slice(0,2)}/${r.slice(2)}`;return t.exists(`${e}/${i}`)}async function Am({fs:t,cache:e,gitdir:r,oid:i,getExternalRefDelta:n}){let a=await t.readdir(P(r,"objects/pack"));a=a.filter(o=>o.endsWith(".idx"));for(let o of a){let s=`${r}/objects/pack/${o}`,l=await yu({fs:t,cache:e,filename:s,getExternalRefDelta:n});if(l.error)throw new I(l.error);if(l.offsets.has(i))return!0}return!1}async function au({fs:t,cache:e,gitdir:r,oid:i,format:n="content"}){let a=s=>K({fs:t,cache:e,gitdir:r,oid:s}),o=await km({fs:t,gitdir:r,oid:i});return o||(o=await Am({fs:t,cache:e,gitdir:r,oid:i,getExternalRefDelta:a})),o}function Tm(t){let n="5041434b"+"00000002"+"00000000";return t.slice(0,12).toString("hex")===n}function Iu(t,e){let r=t.map(i=>i.split("=",1)[0]);return e.filter(i=>{let n=i.split("=",1)[0];return r.includes(n)})}var Pu={name:"isomorphic-git",version:"1.38.1",agent:"git/isomorphic-git@1.38.1"},je=class{constructor(){this._queue=[]}write(e){if(this._ended)throw Error("You cannot write to a FIFO that has already been ended!");if(this._waiting){let r=this._waiting;this._waiting=null,r({value:e})}else this._queue.push(e)}end(){if(this._ended=!0,this._waiting){let e=this._waiting;this._waiting=null,e({done:!0})}}destroy(e){this.error=e,this.end()}async next(){if(this._queue.length>0)return{value:this._queue.shift()};if(this._ended)return{done:!0};if(this._waiting)throw Error("You cannot call read until the previous call to read has returned!");return new Promise(e=>{this._waiting=e})}};function $m(t){let e=t.indexOf("\r"),r=t.indexOf(` +`);return e===-1&&r===-1?-1:e===-1?r+1:r===-1?e+1:r===e+1?r+1:Math.min(e,r)+1}function Cu(t){let e=new je,r="";return(async()=>(await Tr(t,i=>{for(i=i.toString("utf8"),r+=i;;){let n=$m(r);if(n===-1)break;e.write(r.slice(0,n)),r=r.slice(n)}}),r.length>0&&e.write(r),e.end()))(),e}var qi=class{static demux(e){let r=it.streamReader(e),i=new je,n=new je,a=new je,o=async function(){let s=await r();if(s===null)return o();if(s===!0){i.end(),a.end(),e.error?n.destroy(e.error):n.end();return}switch(s[0]){case 1:{n.write(s.slice(1));break}case 2:{a.write(s.slice(1));break}case 3:{let l=s.slice(1);a.write(l),i.end(),a.end(),n.destroy(new Error(l.toString("utf8")));return}default:i.write(s)}o()};return o(),{packetlines:i,packfile:n,progress:a}}};async function Om(t){let{packetlines:e,packfile:r,progress:i}=qi.demux(t),n=[],a=[],o=[],s=!1,l=!1;return new Promise((c,f)=>{Tr(e,d=>{let u=d.toString("utf8").trim();if(u.startsWith("shallow")){let h=u.slice(-41).trim();h.length!==40&&f(new he(h)),n.push(h)}else if(u.startsWith("unshallow")){let h=u.slice(-41).trim();h.length!==40&&f(new he(h)),a.push(h)}else if(u.startsWith("ACK")){let[,h,m]=u.split(" ");o.push({oid:h,status:m}),m||(l=!0)}else u.startsWith("NAK")?(s=!0,l=!0):(l=!0,s=!0);l&&(t.error?f(t.error):c({shallows:n,unshallows:a,acks:o,nak:s,packfile:r,progress:i}))}).finally(()=>{l||(t.error?f(t.error):c({shallows:n,unshallows:a,acks:o,nak:s,packfile:r,progress:i}))})})}function Rm({capabilities:t=[],wants:e=[],haves:r=[],shallows:i=[],depth:n=null,since:a=null,exclude:o=[]}){let s=[];e=[...new Set(e)];let l=` ${t.join(" ")}`;for(let c of e)s.push(it.encode(`want ${c}${l} +`)),l="";for(let c of i)s.push(it.encode(`shallow ${c} +`));n!==null&&s.push(it.encode(`deepen ${n} +`)),a!==null&&s.push(it.encode(`deepen-since ${Math.floor(a.valueOf()/1e3)} +`));for(let c of o)s.push(it.encode(`deepen-not ${c} +`));s.push(it.flush());for(let c of r)s.push(it.encode(`have ${c} +`));return s.push(it.encode(`done +`)),s}async function Bu({fs:t,cache:e,http:r,onProgress:i,onMessage:n,onAuth:a,onAuthSuccess:o,onAuthFailure:s,gitdir:l,ref:c,remoteRef:f,remote:d,url:u,corsProxy:h,depth:m=null,since:g=null,exclude:y=[],relative:b=!1,tags:v=!1,singleBranch:k=!1,headers:S={},prune:x=!1,pruneTags:T=!1}){let p=c||await Ya({fs:t,gitdir:l,test:!0}),_=await J.get({fs:t,gitdir:l}),w=d||p&&await _.get(`branch.${p}.remote`)||"origin",A=u||await _.get(`remote.${w}.url`);if(typeof A=="undefined")throw new St("remote OR url");let E=f||p&&await _.get(`branch.${p}.merge`)||c||"HEAD";h===void 0&&(h=await _.get("http.corsProxy"));let $=Gi.getRemoteHelperFor({url:A}),R=await $.discover({http:r,onAuth:a,onAuthSuccess:o,onAuthFailure:s,corsProxy:h,service:"git-upload-pack",url:A,headers:S,protocolVersion:1}),B=R.auth,H=R.refs;if(H.size===0)return{defaultBranch:null,fetchHead:null,fetchHeadDescription:null};if(m!==null&&!R.capabilities.has("shallow"))throw new de("shallow","depth");if(g!==null&&!R.capabilities.has("deepen-since"))throw new de("deepen-since","since");if(y.length>0&&!R.capabilities.has("deepen-not"))throw new de("deepen-not","exclude");if(b===!0&&!R.capabilities.has("deepen-relative"))throw new de("deepen-relative","relative");let{oid:ht,fullref:W}=D.resolveAgainstMap({ref:E,map:H});for(let M of H.keys())M===W||M==="HEAD"||M.startsWith("refs/heads/")||v&&M.startsWith("refs/tags/")||H.delete(M);let tt=Iu([...R.capabilities],["multi_ack_detailed","no-done","side-band-64k","ofs-delta",`agent=${Pu.agent}`]);b&&tt.push("deepen-relative");let Jt=k?[ht]:H.values(),tn=k?[p]:await D.listRefs({fs:t,gitdir:l,filepath:"refs"}),ft=[];for(let M of tn)try{M=await D.expand({fs:t,gitdir:l,ref:M});let X=await D.resolve({fs:t,gitdir:l,ref:M});await au({fs:t,cache:e,gitdir:l,oid:X})&&ft.push(X)}catch(X){}ft=[...new Set(ft)];let L=await qe.read({fs:t,gitdir:l}),At=R.capabilities.has("shallow")?[...L]:[],Q=Rm({capabilities:tt,wants:Jt,haves:ft,shallows:At,depth:m,since:g,exclude:y}),Ze=Buffer.from(await Wa(Q)),te=await $.connect({http:r,onProgress:i,corsProxy:h,service:"git-upload-pack",url:A,auth:B,body:[Ze],headers:S}),q=await Om(te.body);te.headers&&(q.headers=te.headers);for(let M of q.shallows)if(!L.has(M))try{let{object:X}=await K({fs:t,cache:e,gitdir:l,oid:M}),pt=new kt(X),Tt=await Promise.all(pt.headers().parent.map(Ve=>au({fs:t,cache:e,gitdir:l,oid:Ve})));Tt.length===0||Tt.every(Ve=>Ve)||L.add(M)}catch(X){L.add(M)}for(let M of q.unshallows)L.delete(M);if(await qe.write({fs:t,gitdir:l,oids:L}),k){let M=new Map([[W,ht]]),X=new Map,pt=10,Tt=W;for(;pt--;){let rn=R.symrefs.get(Tt);if(rn===void 0)break;X.set(Tt,rn),Tt=rn}let en=H.get(Tt);en&&M.set(Tt,en);let{pruned:Ve}=await D.updateRemoteRefs({fs:t,gitdir:l,remote:w,refs:M,symrefs:X,tags:v,prune:x});x&&(q.pruned=Ve)}else{let{pruned:M}=await D.updateRemoteRefs({fs:t,gitdir:l,remote:w,refs:H,symrefs:R.symrefs,tags:v,prune:x,pruneTags:T});x&&(q.pruned=M)}if(q.HEAD=R.symrefs.get("HEAD"),q.HEAD===void 0){let{oid:M}=D.resolveAgainstMap({ref:"HEAD",map:H});for(let[X,pt]of H.entries())if(X!=="HEAD"&&pt===M){q.HEAD=X;break}}let Zu=W.startsWith("refs/tags")?"tag":"branch";if(q.FETCH_HEAD={oid:ht,description:`${Zu} '${Ue(W)}' of ${A}`},i||n){let M=Cu(q.progress);Tr(M,async X=>{if(n&&await n(X),i){let pt=X.match(/([^:]*).*\((\d+?)\/(\d+?)\)/);pt&&await i({phase:pt[1].trim(),loaded:parseInt(pt[2],10),total:parseInt(pt[3],10)})}})}let Rr=Buffer.from(await Wa(q.packfile));if(te.body.error)throw te.body.error;let Qa=Rr.slice(-20).toString("hex"),We={defaultBranch:q.HEAD,fetchHead:q.FETCH_HEAD.oid,fetchHeadDescription:q.FETCH_HEAD.description};if(q.headers&&(We.headers=q.headers),x&&(We.pruned=q.pruned),Qa!==""&&!Tm(Rr)){We.packfile=`objects/pack/pack-${Qa}.pack`;let M=P(l,We.packfile);await t.write(M,Rr);let X=Tt=>K({fs:t,cache:e,gitdir:l,oid:Tt}),pt=await ki.fromPack({pack:Rr,getExternalRefDelta:X,onProgress:i});await t.write(M.replace(/\.pack$/,".idx"),await pt.toBuffer())}return We}async function Du({fs:t,bare:e=!1,dir:r,gitdir:i=e?r:P(r,".git"),defaultBranch:n="master"}){if(await t.exists(i+"/config"))return;let a=["hooks","info","objects/info","objects/pack","refs/heads","refs/tags"];a=a.map(o=>i+"/"+o);for(let o of a)await t.mkdir(o);await t.write(i+"/config",`[core] + repositoryformatversion = 0 + filemode = false + bare = ${e} +`+(e?"":` logallrefupdates = true +`)+` symlinks = false + ignorecase = true +`),await t.write(i+"/HEAD",`ref: refs/heads/${n} +`)}async function Im({fs:t,cache:e,http:r,onProgress:i,onMessage:n,onAuth:a,onAuthSuccess:o,onAuthFailure:s,onPostCheckout:l,dir:c,gitdir:f,url:d,corsProxy:u,ref:h,remote:m,depth:g,since:y,exclude:b,relative:v,singleBranch:k,noCheckout:S,noTags:x,headers:T,nonBlocking:p,batchSize:_=100}){try{if(await Du({fs:t,gitdir:f}),await Tu({fs:t,gitdir:f,remote:m,url:d,force:!1}),u){let E=await J.get({fs:t,gitdir:f});await E.set("http.corsProxy",u),await J.save({fs:t,gitdir:f,config:E})}let{defaultBranch:w,fetchHead:A}=await Bu({fs:t,cache:e,http:r,onProgress:i,onMessage:n,onAuth:a,onAuthSuccess:o,onAuthFailure:s,gitdir:f,ref:h,remote:m,corsProxy:u,depth:g,since:y,exclude:b,relative:v,singleBranch:k,headers:T,tags:!x});if(A===null)return;h=h||w,h=h.replace("refs/heads/",""),await wm({fs:t,cache:e,onProgress:i,onPostCheckout:l,dir:c,gitdir:f,ref:h,remote:m,noCheckout:S,nonBlocking:p,batchSize:_})}catch(w){throw await t.rmdir(f,{recursive:!0,maxRetries:10}).catch(()=>{}),w}}async function Nu({fs:t,http:e,onProgress:r,onMessage:i,onAuth:n,onAuthSuccess:a,onAuthFailure:o,onPostCheckout:s,dir:l,gitdir:c=P(l,".git"),url:f,corsProxy:d=void 0,ref:u=void 0,remote:h="origin",depth:m=void 0,since:g=void 0,exclude:y=[],relative:b=!1,singleBranch:v=!1,noCheckout:k=!1,noTags:S=!1,headers:x={},cache:T={},nonBlocking:p=!1,batchSize:_=100}){try{C("fs",t),C("http",e),C("gitdir",c),k||C("dir",l),C("url",f);let w=new nt(t),A=await dt({fsp:w,dotgit:c});return await Im({fs:w,cache:T,http:e,onProgress:r,onMessage:i,onAuth:n,onAuthSuccess:a,onAuthFailure:o,onPostCheckout:s,dir:l,gitdir:A,url:f,corsProxy:d,ref:u,remote:h,depth:m,since:g,exclude:y,relative:b,singleBranch:v,noCheckout:k,noTags:S,headers:x,nonBlocking:p,batchSize:_})}catch(w){throw w.caller="git.clone",w}}async function $r({fs:t,onSign:e,dir:r,gitdir:i=P(r,".git"),message:n,author:a,committer:o,signingKey:s,amend:l=!1,dryRun:c=!1,noUpdateBranch:f=!1,ref:d,parent:u,tree:h,cache:m={}}){try{C("fs",t),l||C("message",n),s&&C("onSign",e);let g=new nt(t),y=await dt({fsp:g,dotgit:i});return await Su({fs:g,cache:m,onSign:e,gitdir:y,message:n,author:a,committer:o,signingKey:s,amend:l,dryRun:c,noUpdateBranch:f,ref:d,parent:u,tree:h})}catch(g){throw g.caller="git.commit",g}}async function Pm({fs:t,gitdir:e,remote:r}){let i=await J.get({fs:t,gitdir:e});await i.deleteSection("remote",r),await J.save({fs:t,gitdir:e,config:i})}async function Fu({fs:t,dir:e,gitdir:r=P(e,".git"),remote:i}){try{C("fs",t),C("remote",i);let n=new nt(t),a=await dt({fsp:n,dotgit:r});return await Pm({fs:n,gitdir:a,remote:i})}catch(n){throw n.caller="git.deleteRemote",n}}async function Uu({fs:t,cache:e,gitdir:r,oids:i}){let n={},a=i.length,o=i.map((s,l)=>({index:l,oid:s}));for(;o.length;){let s=new Set;for(let{oid:c,index:f}of o)n[c]||(n[c]=new Set),n[c].add(f),n[c].size===a&&s.add(c);if(s.size>0)return[...s];let l=new Map;for(let{oid:c,index:f}of o)try{let{object:d}=await K({fs:t,cache:e,gitdir:r,oid:c}),u=kt.from(d),{parent:h}=u.parseHeaders();for(let m of h)(!n[m]||!n[m].has(f))&&l.set(m+":"+f,{oid:m,index:f})}catch(d){}o=Array.from(l.values())}return[]}async function Cm({fs:t,cache:e,dir:r,gitdir:i,ours:n,theirs:a,fastForward:o=!0,fastForwardOnly:s=!1,dryRun:l=!1,noUpdateBranch:c=!1,abortOnConflict:f=!0,message:d,author:u,committer:h,signingKey:m,onSign:g,mergeDriver:y,allowUnrelatedHistories:b=!1}){n===void 0&&(n=await Ya({fs:t,gitdir:i,fullname:!0})),n=await D.expand({fs:t,gitdir:i,ref:n}),a=await D.expand({fs:t,gitdir:i,ref:a});let v=await D.resolve({fs:t,gitdir:i,ref:n}),k=await D.resolve({fs:t,gitdir:i,ref:a}),S=await Uu({fs:t,cache:e,gitdir:i,oids:[v,k]});if(S.length!==1)if(S.length===0&&b)S.push("4b825dc642cb6eb9a060e54bf8d69288fbee4904");else throw new xr;let x=S[0];if(x===k)return{oid:v,alreadyMerged:!0};if(o&&x===v)return!l&&!c&&await D.writeRef({fs:t,gitdir:i,ref:n,value:k}),{oid:k,fastForward:!0};{if(s)throw new Ri;let T=await _t.acquire({fs:t,gitdir:i,cache:e,allowUnmerged:!1},async _=>_m({fs:t,cache:e,dir:r,gitdir:i,index:_,ourOid:v,theirOid:k,baseOid:x,ourName:Ue(n),baseName:"base",theirName:Ue(a),dryRun:l,abortOnConflict:f,mergeDriver:y}));if(T instanceof Er)throw T;return d||(d=`Merge branch '${Ue(a)}' into ${Ue(n)}`),{oid:await Su({fs:t,cache:e,gitdir:i,message:d,ref:n,tree:T,parent:[v,k],author:u,committer:h,signingKey:m,onSign:g,dryRun:l,noUpdateBranch:c}),tree:T,mergeCommit:!0}}}async function ju({fs:t,http:e,onProgress:r,onMessage:i,onAuth:n,onAuthSuccess:a,onAuthFailure:o,dir:s,gitdir:l=P(s,".git"),ref:c,remote:f,remoteRef:d,url:u,corsProxy:h,depth:m=null,since:g=null,exclude:y=[],relative:b=!1,tags:v=!1,singleBranch:k=!1,headers:S={},prune:x=!1,pruneTags:T=!1,cache:p={}}){try{C("fs",t),C("http",e),C("gitdir",l);let _=new nt(t),w=await dt({fsp:_,dotgit:l});return await Bu({fs:_,cache:p,http:e,onProgress:r,onMessage:i,onAuth:n,onAuthSuccess:a,onAuthFailure:o,gitdir:w,ref:c,remote:f,remoteRef:d,url:u,corsProxy:h,depth:m,since:g,exclude:y,relative:b,tags:v,singleBranch:k,headers:S,prune:x,pruneTags:T})}catch(_){throw _.caller="git.fetch",_}}async function Mu({fs:t,bare:e=!1,dir:r,gitdir:i=e?r:P(r,".git"),defaultBranch:n="master"}){try{C("fs",t),C("gitdir",i),e||C("dir",r);let a=new nt(t),o=await dt({fsp:a,dotgit:i});return await Du({fs:a,bare:e,dir:r,gitdir:o,defaultBranch:n})}catch(a){throw a.caller="git.init",a}}async function Bm({fs:t,cache:e,gitdir:r,oid:i,ancestor:n,depth:a}){let o=await qe.read({fs:t,gitdir:r});if(!i)throw new St("oid");if(!n)throw new St("ancestor");if(i===n)return!1;let s=[i],l=new Set,c=0;for(;s.length;){if(c++===a)throw new Ci(a);let f=s.shift(),{type:d,object:u}=await K({fs:t,cache:e,gitdir:r,oid:f});if(d!=="commit")throw new Nt(f,d,"commit");let h=kt.from(u).parse();for(let m of h.parent)if(m===n)return!0;if(!o.has(f))for(let m of h.parent)l.has(m)||(s.push(m),l.add(m))}return!1}async function Ka({fs:t,onSign:e,dir:r,gitdir:i=P(r,".git"),ours:n,theirs:a,fastForward:o=!0,fastForwardOnly:s=!1,dryRun:l=!1,noUpdateBranch:c=!1,abortOnConflict:f=!0,message:d,author:u,committer:h,signingKey:m,cache:g={},mergeDriver:y,allowUnrelatedHistories:b=!1}){try{C("fs",t),m&&C("onSign",e);let v=new nt(t),k=await dt({fsp:v,dotgit:i}),S=await qa({fs:v,gitdir:k,author:u});if(!S&&(!s||!o))throw new pe("author");let x=await Za({fs:v,gitdir:k,author:S,committer:h});if(!x&&(!s||!o))throw new pe("committer");return await Cm({fs:v,cache:g,dir:r,gitdir:k,ours:n,theirs:a,fastForward:o,fastForwardOnly:s,dryRun:l,noUpdateBranch:c,abortOnConflict:f,message:d,author:S,committer:x,signingKey:m,onSign:e,mergeDriver:y,allowUnrelatedHistories:b})}catch(v){throw v.caller="git.merge",v}}var Dm={commit:16,tree:32,blob:48,tag:64,ofs_delta:96,ref_delta:112};async function Nm({fs:t,cache:e,dir:r,gitdir:i=P(r,".git"),oids:n}){let a=new Xa.default,o=[];function s(f,d){let u=Buffer.from(f,d);o.push(u),a.update(u)}async function l({stype:f,object:d}){let u=Dm[f],h=d.length,m=h>15?128:0,g=h&15;h=h>>>4;let y=(m|u|g).toString(16);for(s(y,"hex");m;)m=h>127?128:0,y=m|h&127,s(Va(2,y),"hex"),h=h>>>7;s(Buffer.from(await vu(d)))}s("PACK"),s("00000002","hex"),s(Va(8,n.length),"hex");for(let f of n){let{type:d,object:u}=await K({fs:t,cache:e,gitdir:i,oid:f});await l({write:s,object:u,stype:d})}let c=a.digest();return o.push(c),o}async function Fm({fs:t,cache:e,dir:r,gitdir:i=P(r,".git"),start:n,finish:a}){let o=await qe.read({fs:t,gitdir:i}),s=new Set,l=new Set;for(let d of n)s.add(await D.resolve({fs:t,gitdir:i,ref:d}));for(let d of a)try{let u=await D.resolve({fs:t,gitdir:i,ref:d});l.add(u)}catch(u){}let c=new Set;async function f(d){c.add(d);let{type:u,object:h}=await K({fs:t,cache:e,gitdir:i,oid:d});if(u==="tag"){let g=we.from(h).headers().object;return f(g)}if(u!=="commit")throw new Nt(d,u,"commit");if(!o.has(d)){let g=kt.from(h).headers().parent;for(d of g)!l.has(d)&&!c.has(d)&&await f(d)}}for(let d of s)await f(d);return c}async function $a({fs:t,cache:e,dir:r,gitdir:i=P(r,".git"),oids:n}){let a=new Set;async function o(s){if(a.has(s))return;a.add(s);let{type:l,object:c}=await K({fs:t,cache:e,gitdir:i,oid:s});if(l==="tag"){let d=we.from(c).headers().object;await o(d)}else if(l==="commit"){let d=kt.from(c).headers().tree;await o(d)}else if(l==="tree"){let f=Ht.from(c);for(let d of f)d.type==="blob"&&a.add(d.oid),d.type==="tree"&&await o(d.oid)}}for(let s of n)await o(s);return a}async function Um(t){let e={},r="",i=it.streamReader(t),n=await i();for(;n!==!0;)n!==null&&(r+=n.toString("utf8")+` +`),n=await i();let a=r.toString("utf8").split(` +`);if(n=a.shift(),!n.startsWith("unpack "))throw new Ge('unpack ok" or "unpack [error message]',n);e.ok=n==="unpack ok",e.ok||(e.error=n.slice(7)),e.refs={};for(let o of a){if(o.trim()==="")continue;let s=o.slice(0,2),l=o.slice(3),c=l.indexOf(" ");c===-1&&(c=l.length);let f=l.slice(0,c),d=l.slice(c+1);e.refs[f]={ok:s==="ok",error:d}}return e}async function jm({capabilities:t=[],triplets:e=[]}){let r=[],i=`\0 ${t.join(" ")}`;for(let n of e)r.push(it.encode(`${n.oldoid} ${n.oid} ${n.fullRef}${i} +`)),i="";return r.push(it.flush()),r}async function Mm({fs:t,cache:e,http:r,onProgress:i,onMessage:n,onAuth:a,onAuthSuccess:o,onAuthFailure:s,onPrePush:l,gitdir:c,ref:f,remoteRef:d,remote:u,url:h,force:m=!1,delete:g=!1,corsProxy:y,headers:b={}}){let v=f||await Ya({fs:t,gitdir:c});if(typeof v=="undefined")throw new St("ref");let k=await J.get({fs:t,gitdir:c});u=u||await k.get(`branch.${v}.pushRemote`)||await k.get("remote.pushDefault")||await k.get(`branch.${v}.remote`)||"origin";let S=h||await k.get(`remote.${u}.pushurl`)||await k.get(`remote.${u}.url`);if(typeof S=="undefined")throw new St("remote OR url");let x=d||await k.get(`branch.${v}.merge`);if(typeof S=="undefined")throw new St("remoteRef");y===void 0&&(y=await k.get("http.corsProxy"));let T=await D.expand({fs:t,gitdir:c,ref:v}),p=g?"0000000000000000000000000000000000000000":await D.resolve({fs:t,gitdir:c,ref:T}),_=Gi.getRemoteHelperFor({url:S}),w=await _.discover({http:r,onAuth:a,onAuthSuccess:o,onAuthFailure:s,corsProxy:y,service:"git-receive-pack",url:S,headers:b,protocolVersion:1}),A=w.auth,E;if(!x)E=T;else try{E=await D.expandAgainstMap({ref:x,map:w.refs})}catch(L){if(L instanceof ct)E=x.startsWith("refs/")?x:`refs/heads/${x}`;else throw L}let $=w.refs.get(E)||"0000000000000000000000000000000000000000";if(l&&!await l({remote:u,url:S,localRef:{ref:g?"(delete)":T,oid:p},remoteRef:{ref:E,oid:$}}))throw new kr;let R=!w.capabilities.has("no-thin"),B=new Set;if(!g){let L=[...w.refs.values()],At=new Set;if($!=="0000000000000000000000000000000000000000"){let Q=await Uu({fs:t,cache:e,gitdir:c,oids:[p,$]});for(let Ze of Q)L.push(Ze);R&&(At=await $a({fs:t,cache:e,gitdir:c,oids:Q}))}if(!L.includes(p)){let Q=await Fm({fs:t,cache:e,gitdir:c,start:[p],finish:L});B=await $a({fs:t,cache:e,gitdir:c,oids:Q})}if(R){try{let Q=await D.resolve({fs:t,gitdir:c,ref:`refs/remotes/${u}/HEAD`,depth:2}),{oid:Ze}=await D.resolveAgainstMap({ref:Q.replace(`refs/remotes/${u}/`,""),fullref:Q,map:w.refs}),te=[Ze];for(let q of await $a({fs:t,cache:e,gitdir:c,oids:te}))At.add(q)}catch(Q){}for(let Q of At)B.delete(Q)}if(p===$&&(m=!0),!m){if(T.startsWith("refs/tags")&&$!=="0000000000000000000000000000000000000000")throw new Sr("tag-exists");if(p!=="0000000000000000000000000000000000000000"&&$!=="0000000000000000000000000000000000000000"&&!await Bm({fs:t,cache:e,gitdir:c,oid:p,ancestor:$,depth:-1}))throw new Sr("not-fast-forward")}}let H=Iu([...w.capabilities],["report-status","side-band-64k",`agent=${Pu.agent}`]),ht=await jm({capabilities:H,triplets:[{oldoid:$,oid:p,fullRef:E}]}),W=g?[]:await Nm({fs:t,cache:e,gitdir:c,oids:[...B]}),tt=await _.connect({http:r,onProgress:i,corsProxy:y,service:"git-receive-pack",url:S,auth:A,headers:b,body:[...ht,...W]}),{packfile:Jt,progress:tn}=await qi.demux(tt.body);if(n){let L=Cu(tn);Tr(L,async At=>{await n(At)})}let ft=await Um(Jt);if(tt.headers&&(ft.headers=tt.headers),u&&ft.ok&&ft.refs[E].ok&&!T.startsWith("refs/tags")){let L=`refs/remotes/${u}/${E.replace("refs/heads","")}`;g?await D.deleteRef({fs:t,gitdir:c,ref:L}):await D.writeRef({fs:t,gitdir:c,ref:L,value:p})}if(ft.ok&&Object.values(ft.refs).every(L=>L.ok))return ft;{let L=Object.entries(ft.refs).filter(([At,Q])=>!Q.ok).map(([At,Q])=>` + - ${At}: ${Q.error}`).join("");throw new Ii(L,ft)}}async function Yi({fs:t,http:e,onProgress:r,onMessage:i,onAuth:n,onAuthSuccess:a,onAuthFailure:o,onPrePush:s,dir:l,gitdir:c=P(l,".git"),ref:f,remoteRef:d,remote:u="origin",url:h,force:m=!1,delete:g=!1,corsProxy:y,headers:b={},cache:v={}}){try{C("fs",t),C("http",e),C("gitdir",c);let k=new nt(t),S=await dt({fsp:k,dotgit:c});return await Mm({fs:k,cache:v,http:e,onProgress:r,onMessage:i,onAuth:n,onAuthSuccess:a,onAuthFailure:o,onPrePush:s,gitdir:S,ref:f,remoteRef:d,remote:u,url:h,force:m,delete:g,corsProxy:y,headers:b})}catch(k){throw k.caller="git.push",k}}async function zu({fs:t,cache:e,gitdir:r,oid:i}){let{type:n,object:a}=await K({fs:t,cache:e,gitdir:r,oid:i});if(n==="tag")return i=we.from(a).parse().object,zu({fs:t,cache:e,gitdir:r,oid:i});if(n!=="blob")throw new Nt(i,n,"blob");return{oid:i,blob:new Uint8Array(a)}}async function zm({fs:t,cache:e,gitdir:r,oid:i,filepath:n=void 0}){return n!==void 0&&(i=await dm({fs:t,cache:e,gitdir:r,oid:i,filepath:n})),await zu({fs:t,cache:e,gitdir:r,oid:i})}async function Lu({fs:t,dir:e,gitdir:r=P(e,".git"),oid:i,filepath:n,cache:a={}}){try{C("fs",t),C("gitdir",r),C("oid",i);let o=new nt(t),s=await dt({fsp:o,dotgit:r});return await zm({fs:o,cache:a,gitdir:s,oid:i,filepath:n})}catch(o){throw o.caller="git.readBlob",o}}async function Hu({fs:t,dir:e,gitdir:r=P(e,".git"),filepath:i,cache:n={}}){try{C("fs",t),C("gitdir",r),C("filepath",i);let a=new nt(t),o=await dt({fsp:a,dotgit:r});await _t.acquire({fs:a,gitdir:o,cache:n},async function(s){s.delete({filepath:i})})}catch(a){throw a.caller="git.remove",a}}async function me({fs:t,dir:e,gitdir:r=P(e,".git"),ref:i,depth:n}){try{C("fs",t),C("gitdir",r),C("ref",i);let a=new nt(t),o=await dt({fsp:a,dotgit:r});return await D.resolve({fs:a,gitdir:o,ref:i,depth:n})}catch(a){throw a.caller="git.resolveRef",a}}async function Ki({fs:t,dir:e,gitdir:r=P(e,".git"),ref:i="HEAD",filepaths:n=["."],filter:a,cache:o={},ignored:s=!1,refresh:l=!0}){try{C("fs",t),C("gitdir",r),C("ref",i);let c=new nt(t),f=await dt({fsp:c,dotgit:r});return await Mi({fs:c,cache:o,dir:e,gitdir:f,trees:[Fe({ref:i}),bu({refresh:l}),pu()],map:async function(d,[u,h,m]){if(!u&&!m&&h&&!s&&await zi.isIgnored({fs:c,dir:e,filepath:d})||!n.some(_=>Ou(d,_)))return null;if(a&&!a(d))return;let[g,y,b]=await Promise.all([u&&u.type(),h&&h.type(),m&&m.type()]),v=[g,y,b].includes("blob");if((g==="tree"||g==="special")&&!v)return;if(g==="commit")return null;if((y==="tree"||y==="special")&&!v)return;if(b==="commit")return null;if((b==="tree"||b==="special")&&!v)return;let k=g==="blob"?await u.oid():void 0,S=b==="blob"?await m.oid():void 0,x;g!=="blob"&&y==="blob"&&b!=="blob"?x="42":y==="blob"&&(x=await h.oid());let T=[void 0,k,x,S],p=T.map(_=>T.indexOf(_));return p.shift(),[d,...p]}})}catch(c){throw c.caller="git.statusMatrix",c}}var qu=require("obsidian");function Gu(t,e){function r(n){let a=n.replace(/\\/g,"/"),o=e.replace(/\\/g,"/").replace(/\/$/,"");return a.startsWith(o+"/")?a.slice(o.length+1):a}let i={async readFile(n,a){try{let o=await t.readBinary(r(n));return(a==null?void 0:a.encoding)==="utf8"?Buffer.from(o).toString("utf8"):Buffer.from(o)}catch(o){let s=new Error(`ENOENT: no such file or directory, open '${n}'`);throw s.code="ENOENT",s}},async writeFile(n,a){let o=r(n),s=o.split("/");if(s.length>1){let l=s.slice(0,-1).join("/");try{await t.mkdir(l)}catch(c){}}if(typeof a=="string")await t.write(o,a);else{let l=Buffer.isBuffer(a)?a:Buffer.from(a);await t.writeBinary(o,l.buffer.slice(l.byteOffset,l.byteOffset+l.byteLength))}},async unlink(n){try{await t.remove(r(n))}catch(a){}},async readdir(n){try{let a=await t.list(r(n)),o=a.files.map(l=>l.split("/").pop());return[...a.folders.map(l=>l.split("/").pop()),...o]}catch(a){let o=new Error(`ENOENT: no such file or directory, scandir '${n}'`);throw o.code="ENOENT",o}},async mkdir(n,a){try{await t.mkdir(r(n))}catch(o){}},async rmdir(n){},async stat(n){var a,o,s;try{let l=await t.stat(r(n));if(!l)throw new Error("no stat");let c=l.type!=="file";return{type:c?"dir":"file",mode:c?16877:33188,size:(a=l.size)!=null?a:0,ino:0,mtimeMs:(o=l.mtime)!=null?o:Date.now(),ctimeMs:(s=l.ctime)!=null?s:Date.now(),uid:1,gid:1,dev:1,isFile:()=>!c,isDirectory:()=>c,isSymbolicLink:()=>!1}}catch(l){let c=new Error(`ENOENT: no such file or directory, stat '${n}'`);throw c.code="ENOENT",c}},async lstat(n){return i.stat(n)},async readlink(n){throw Object.assign(new Error(`EINVAL: readlink not supported '${n}'`),{code:"EINVAL"})},async symlink(){throw Object.assign(new Error("EINVAL: symlink not supported"),{code:"EINVAL"})},async chmod(){}};return{promises:i}}var Hm={async request({url:t,method:e,headers:r,body:i}){let n;if(i){let l=[];for await(let u of i)l.push(u);let c=l.reduce((u,h)=>u+h.length,0),f=new Uint8Array(c),d=0;for(let u of l)f.set(u,d),d+=u.length;n=f.buffer}let a=await(0,qu.requestUrl)({url:t,method:e,headers:r,body:n,throw:!1}),o=a.arrayBuffer;async function*s(){yield new Uint8Array(o)}return{url:t,method:e,statusCode:a.status,statusMessage:"OK",body:s(),headers:a.headers}}},Or=class{constructor(e,r,i,n,a){this.fs=Gu(e,r),this.dir=r,this.token=i,this.username=n,this.remoteUrl=`https://github.com/${n}/${a}.git`}gitOpts(){return{fs:this.fs,http:Hm,dir:this.dir,author:{name:Pr,email:Cr}}}netOpts(){let e=this.token,r=this.username;return{...this.gitOpts(),url:this.remoteUrl,onAuth:()=>({username:r,password:e}),onAuthFailure:()=>{throw new Error("GitHub authentication failed. Please reconnect your account in MultiSync settings.")}}}async isInitialized(){try{return await me({fs:this.fs,dir:this.dir,ref:"HEAD"}),!0}catch(e){return!1}}async hasLocalBranch(){try{return await me({fs:this.fs,dir:this.dir,ref:wt}),!0}catch(e){return!1}}async safeFetch(){try{return await ju({...this.netOpts(),ref:wt,singleBranch:!0}),await me({fs:this.fs,dir:this.dir,ref:"FETCH_HEAD"})}catch(e){return null}}async clone(){return await Nu({...this.netOpts(),singleBranch:!0,depth:1}),this.hasLocalBranch()}async initAndPush(e){await this.isInitialized()||await Mu({fs:this.fs,dir:this.dir,defaultBranch:wt});for(let n of e)try{await Xi({fs:this.fs,dir:this.dir,filepath:n})}catch(a){}await this.hasLocalBranch()?(await Ki({fs:this.fs,dir:this.dir})).some(([,o,s,l])=>o!==1||s!==1||l!==1)&&await $r({...this.gitOpts(),message:"sync: initial vault snapshot"}):await $r({...this.gitOpts(),message:"sync: initial vault snapshot"});try{await Fu({fs:this.fs,dir:this.dir,remote:"origin"})}catch(n){}await $u({fs:this.fs,dir:this.dir,remote:"origin",url:this.remoteUrl}),await Yi({...this.netOpts(),ref:wt,force:!1})}async sync(e){let r=[];try{for(let a of e)try{await Xi({fs:this.fs,dir:this.dir,filepath:a})}catch(o){try{await Hu({fs:this.fs,dir:this.dir,filepath:a})}catch(s){}}let i;try{i=(await Ki({fs:this.fs,dir:this.dir})).some(([,o,s,l])=>o!==1||s!==1||l!==1)}catch(a){i=e.length>0}if(i){let a=new Date().toISOString().replace("T"," ").slice(0,19);await $r({...this.gitOpts(),message:`sync: ${a}`})}let n=await this.safeFetch();if(n&&await this.hasLocalBranch()){let a=await me({fs:this.fs,dir:this.dir,ref:wt});n!==a&&await Ka({fs:this.fs,dir:this.dir,ours:wt,theirs:n,author:{name:Pr,email:Cr},message:"sync: merge remote changes",fastForwardOnly:!1})}if(await this.hasLocalBranch()){let a=await Ki({fs:this.fs,dir:this.dir});for(let[o,s,l,c]of a)if(c===2||s===0&&l===2&&c===0){let f=await this.readFileContent(o),d=await this.readRemoteFileContent(o);r.push({path:o,ours:f,theirs:d})}}return r.length===0&&await this.hasLocalBranch()&&await Yi({...this.netOpts(),ref:wt}),{success:r.length===0,conflictFiles:r}}catch(i){let n=i instanceof Error?i.message:String(i);return{success:!1,conflictFiles:[],error:n}}}async resolveConflict(e,r){let i=`${this.dir}/${e}`;await this.fs.promises.writeFile(i,r),await Xi({fs:this.fs,dir:this.dir,filepath:e}),await $r({...this.gitOpts(),message:`sync: resolve conflict in ${e}`}),await Yi({...this.netOpts(),ref:wt})}async pull(){if(!await this.hasLocalBranch())return;let e=await this.safeFetch();if(!e)return;let r=await me({fs:this.fs,dir:this.dir,ref:wt});e!==r&&await Ka({fs:this.fs,dir:this.dir,ours:wt,theirs:e,author:{name:Pr,email:Cr},message:"sync: merge remote changes",fastForwardOnly:!1})}async readFileContent(e){try{return await this.fs.promises.readFile(`${this.dir}/${e}`,{encoding:"utf8"})}catch(r){return""}}async readRemoteFileContent(e){try{let r=await me({fs:this.fs,dir:this.dir,ref:`refs/remotes/origin/${wt}`}),{blob:i}=await Lu({fs:this.fs,dir:this.dir,oid:r,filepath:e});return new TextDecoder().decode(i)}catch(r){return""}}};var Qi=class{constructor(e,r){this.pendingFiles=new Set;this.debounceTimer=null;this.running=!1;this.gitSync=e,this.onStatus=r}enqueue(e){this.pendingFiles.add(e),this.debounceTimer&&clearTimeout(this.debounceTimer),this.debounceTimer=setTimeout(()=>this.flush(),3e3)}async flushNow(){return this.debounceTimer&&(clearTimeout(this.debounceTimer),this.debounceTimer=null),this.flush()}async flush(){if(this.running||this.pendingFiles.size===0)return null;this.running=!0;let e=[...this.pendingFiles];this.pendingFiles.clear();try{this.onStatus("pushing");let r=await this.gitSync.sync(e);return r.conflictFiles.length>0?this.onStatus("conflict"):r.success?this.onStatus("idle"):this.onStatus("error",r.error),r}catch(r){let i=r instanceof Error?r.message:String(r);return this.onStatus("error",i),{success:!1,conflictFiles:[],error:i}}finally{this.running=!1,this.pendingFiles.size>0&&setTimeout(()=>this.flush(),500)}}};var Ji=class extends at.Plugin{constructor(){super(...arguments);this.gitSync=null;this.syncQueue=null}async onload(){await this.loadSettings(),this.statusBar=new Dr(this),this.statusBar.onClick(()=>this.triggerManualSync()),this.addSettingTab(new Br(this.app,this)),this.addCommand({id:"sync-now",name:"Sync vault now",callback:()=>this.triggerManualSync()}),this.settings.githubToken&&this.settings.githubUsername&&this.settings.repoName&&await this.bootSyncEngine(),this.app.workspace.onLayoutReady(async()=>{if(this.gitSync){this.setStatus("pulling");try{await this.gitSync.pull(),this.setStatus("idle")}catch(r){this.setStatus("error","Pull failed on open")}}}),this.registerEvent(this.app.vault.on("modify",r=>{r instanceof at.TFile&&(!this.syncQueue||!this.settings.autoSync||this.isExcluded(r.path)||this.syncQueue.enqueue(r.path))})),this.registerEvent(this.app.vault.on("create",r=>{r instanceof at.TFile&&(!this.syncQueue||!this.settings.autoSync||this.isExcluded(r.path)||this.syncQueue.enqueue(r.path))})),this.registerEvent(this.app.vault.on("delete",r=>{r instanceof at.TFile&&(!this.syncQueue||!this.settings.autoSync||this.syncQueue.enqueue(r.path))})),this.registerEvent(this.app.vault.on("rename",(r,i)=>{!this.syncQueue||!this.settings.autoSync||this.syncQueue.enqueue(i)}))}async onunload(){this.syncQueue&&await this.syncQueue.flushNow()}async loadSettings(){this.settings=Object.assign({},to,await this.loadData())}async saveSettings(){await this.saveData(this.settings)}setStatus(r,i){this.statusBar.set(r,i)}async initializeRepo(r,i){var u;this.setStatus("connecting");let n=this.app.vault.getName(),a=fo(n);this.settings.repoName=a;let o=this.app.vault.adapter,s=(u=o.basePath)!=null?u:"",l=new Or(o,s,r,i,a),c=await so(r,i,a),f=await l.isInitialized(),d=()=>this.app.vault.getFiles().map(h=>h.path).filter(h=>!this.isExcluded(h));c?f?new at.Notice(`Reconnected to: ${i}/${a}`):await l.clone()?new at.Notice(`Cloned repo: ${i}/${a}`):(await l.initAndPush(d()),new at.Notice(`Initialised repo: ${i}/${a}`)):(await co(r,a,`Obsidian vault: ${n}`),await l.initAndPush(d()),new at.Notice(`Created private repo: ${i}/${a}`)),this.settings.lastSyncTime=Date.now(),await this.saveSettings(),await this.bootSyncEngine(),this.setStatus("idle")}async bootSyncEngine(){var s;let{githubToken:r,githubUsername:i,repoName:n}=this.settings;if(!r||!i||!n)return;let a=this.app.vault.adapter,o=(s=a.basePath)!=null?s:"";this.gitSync=new Or(a,o,r,i,n),this.syncQueue=new Qi(this.gitSync,(l,c)=>{this.setStatus(l,c),l==="idle"&&(this.settings.lastSyncTime=Date.now(),this.saveSettings())})}async triggerManualSync(){if(!this.gitSync){new at.Notice("MultiSync: not connected. Please connect your GitHub account in settings.");return}this.setStatus("pulling");try{let r=this.app.vault.getFiles().map(n=>n.path).filter(n=>!this.isExcluded(n)),i=await this.gitSync.sync(r);i.conflictFiles.length>0?(this.setStatus("conflict"),this.showConflictModal(i.conflictFiles)):i.success?(this.settings.lastSyncTime=Date.now(),await this.saveSettings(),this.setStatus("idle"),new at.Notice("Vault synced successfully.")):(this.setStatus("error",i.error),new at.Notice(`Sync error: ${i.error}`))}catch(r){let i=r instanceof Error?r.message:String(r);this.setStatus("error",i),new at.Notice(`Sync failed: ${i}`)}}showConflictModal(r){new Nr(this.app,r,async(i,n)=>{await this.gitSync.resolveConflict(i,n),this.settings.lastSyncTime=Date.now(),await this.saveSettings(),this.setStatus("idle")}).open()}isExcluded(r){return this.settings.excludePatterns.some(i=>{let a=i.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*");return new RegExp(`^${a}$`).test(r)})}}; +/*! Bundled license information: + +safe-buffer/index.js: + (*! safe-buffer. MIT License. Feross Aboukhadijeh *) + +crc-32/crc32.js: + (*! crc32.js (C) 2014-present SheetJS -- http://sheetjs.com *) + +isomorphic-git/index.js: + (*! + * This code for `path.join` is directly copied from @zenfs/core/path for bundle size improvements. + * SPDX-License-Identifier: LGPL-3.0-or-later + * Copyright (c) James Prevett and other ZenFS contributors. + *) +*/ + +/* nosourcemap */ \ No newline at end of file diff --git a/.obsidian/plugins/git-obsi-sync/manifest.json b/.obsidian/plugins/git-obsi-sync/manifest.json new file mode 100644 index 0000000..09f1fdf --- /dev/null +++ b/.obsidian/plugins/git-obsi-sync/manifest.json @@ -0,0 +1,11 @@ +{ + "id": "git-obsi-sync", + "name": "Git Sync", + "version": "1.0.0", + "minAppVersion": "1.0.0", + "description": "Sync your vault across all devices using your own GitHub account. Free forever.", + "author": "Livan Kumar", + "authorUrl": "https://github.com/livan116", + "fundingUrl": "", + "isDesktopOnly": false +} diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json index 1fd0494..a4adfab 100644 --- a/.obsidian/workspace.json +++ b/.obsidian/workspace.json @@ -184,6 +184,19 @@ }, "active": "6b81c26511b53323", "lastOpenFiles": [ + "Brain/log/2026-07-23.a0360993.md", + "Brain/log/2026-07-23.a0360993.jsonl", + "Brain/bases/projects.base", + "Brain/active.md", + "Brain/log.lock", + "Brain/log/2026-07-20.a0360993.md", + "Brain/log/2026-07-20.a0360993.jsonl", + "Brain/bases/people.base", + "Brain/inbox/sig-2026-07-19-server-port-map-2.md", + "Brain/preferences/pref-server-port-map.md", + "Brain/inbox/sig-2026-07-19-server-port-map.md", + "Brain/log/2026-07-19.a0360993.md", + "Brain/log/2026-07-19.a0360993.jsonl", "Brain/log/2026-07-18.a0360993.md", "Brain/log/2026-07-18.a0360993.jsonl", "Brain/preferences/pref-vps-plan-august-2026.md", @@ -205,20 +218,7 @@ "Templates/analysis_options_README.md", "Notizen/Slash-Commands.md", "Brain/pinned.md", - "Brain/INDEX.md", - "Brain/active.md", - "Brain/preferences/pref-save-more-often.md", - "Brain/preferences/pref-meriting-ai-personal.md", - "Brain/log/2026-07-09.a0360993.md", "Brain/bases/tasks.base", - "Brain/bases/projects.base", - "Brain/bases/people.base", - "Brain/bases/daily.base", - "Brain/preferences/pref-default-model-deepseek.md", - "Brain/inbox/sig-2026-07-12-default-model-deepseek.md", - "Projects", - "Brain/log/2026-07-10.a0360993.jsonl", - "Brain/log.lock", - "Notizen" + "Brain/bases/daily.base" ] } \ No newline at end of file diff --git a/.open-second-brain/brain.sqlite b/.open-second-brain/brain.sqlite index de4e115caf011a3d6db9ad522e60f43f225c71d1..da3e5a35ff5e735355c2dc825875cca0e746fd2e 100644 GIT binary patch literal 704512 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%0Dn~X>z_&yTr^_?>vJC%V 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

kdn_46HeaXV_~ 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 diff --git a/.open-second-brain/brain.sqlite-shm b/.open-second-brain/brain.sqlite-shm deleted file mode 100644 index fe9ac2845eca6fe6da8a63cd096d9cf9e24ece10..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeIuAr62r3mac" +cat ~/.ssh/id_ed25519.pub + +# Output in ~/.ssh/authorized_keys auf dem Mac hinzufügen + +# Dann auf Aingrad testen: +ssh dustin@mac.local "echo funktioniert" +``` + +**Für remote SSH:** Mac braucht eine feste IP oder du nutzt `mac.baka-net.de` über Caddy/Tailscale. + +**Alternativ (einfacher):** Wenn du Tailscale auf beiden Geräten installierst: +```bash +# Beide Geräte: tailscale installieren +# Mac: tailscale up +# Aingrad: tailscale up +# Dann: ssh dustin@mac-tailscale-hostname +``` diff --git a/Brain/inbox/sig-2026-07-23-o2b-server-setup.md b/Brain/inbox/sig-2026-07-23-o2b-server-setup.md new file mode 100644 index 0000000..f29b05b --- /dev/null +++ b/Brain/inbox/sig-2026-07-23-o2b-server-setup.md @@ -0,0 +1,10 @@ +--- +kind: brain-signal +id: sig-2026-07-23-o2b-server-setup +created_at: "2026-07-23T11:12:15.445Z" +tags: [brain, brain/signal, brain/topic/o2b-server-setup] +topic: o2b-server-setup +signal: positive +agent: hermes-main +principle: "O2B Memory Provider auf dem Server ist aktiv und funktionsfähig. Suche und Notizen-Funktion über CLI verfügbar. Vault wird per Syncthing mit Mac synchronisiert." +--- diff --git a/Brain/inbox/sig-2026-07-23-server-port-map.md b/Brain/inbox/sig-2026-07-23-server-port-map.md new file mode 100644 index 0000000..cffb93a --- /dev/null +++ b/Brain/inbox/sig-2026-07-23-server-port-map.md @@ -0,0 +1,10 @@ +--- +kind: brain-signal +id: sig-2026-07-23-server-port-map +created_at: "2026-07-23T11:14:32.960Z" +tags: [brain, brain/signal, brain/topic/server-port-map] +topic: server-port-map +signal: positive +agent: hermes-main +principle: "Server-Port-Map in pref-server-port-map gespeichert. Wichtige Ports: 22 SSH, 80/443 Caddy, 8008 Synapse (localhost), 8384 Syncthing WebUI, 22000 Syncthing Transfer, 2019 Caddy Admin." +--- diff --git a/Brain/log/2026-07-23.013d10a8.jsonl b/Brain/log/2026-07-23.013d10a8.jsonl new file mode 100644 index 0000000..30f31fa --- /dev/null +++ b/Brain/log/2026-07-23.013d10a8.jsonl @@ -0,0 +1,13 @@ +{"ts":"2026-07-23T11:12:04Z","kind":"note","payload":{"text":"Test: O2B Setup auf Server läuft 2026-07-23_13:12","agent":"agent"}} +{"ts":"2026-07-23T11:12:12Z","kind":"note","payload":{"text":"O2B Memory Provider auf Server Aingrad aktiviert. Vault per Syncthing mit Mac synchronisiert. Hermes kann jetzt brain_search, brain_note und brain_context nutzen. Bun installiert, o2b CLI in ~/.local/bin. 44 Dokumente indiziert.","agent":"hermes-main"}} +{"ts":"2026-07-23T11:12:15Z","kind":"feedback","payload":{"signal":"[[sig-2026-07-23-o2b-server-setup]]","topic":"o2b-server-setup","sign":"positive","agent":"hermes-main"}} +{"ts":"2026-07-23T11:14:07Z","kind":"note","payload":{"text":"Server Aingrad (159.195.51.99) - Netcup RS 1000 G12, Ubuntu 24.04, Domain baka-net.de. Hostname: Aingrad. 251GB SSD (6GB used, 235GB frei). IPs: 159.195.51.99 (IPv4). Läuft seit 1h (heute neugestartet).","agent":"hermes-main"}} +{"ts":"2026-07-23T11:14:10Z","kind":"note","payload":{"text":"Matrix Synapse als Docker Container auf localhost:8008. Config in /home/dustin/synapse/. registration_shared_secret: melo-reg-2026. Users: @baka (Admin), @hermes (Bot).","agent":"hermes-main"}} +{"ts":"2026-07-23T11:14:13Z","kind":"note","payload":{"text":"Caddy v2.9.1 als Reverse Proxy fuer baka-net.de und matrix.baka-net.de. baka-net.de zeigt auf /var/www/seite/. matrix.baka-net.de proxied zu localhost:8008 (Synapse).","agent":"hermes-main"}} +{"ts":"2026-07-23T11:14:18Z","kind":"note","payload":{"text":"Hermes Agent v0.19.0 Gateway auf Aingrad. Installiert in /home/dustin/hermes-agent/ (venv, kein Docker). Python 3.12.3. Config in /home/dustin/.hermes/config.yaml. Provider: DeepSeek V4 Flash. Matrix-Token in .hermes.env.","agent":"hermes-main"}} +{"ts":"2026-07-23T11:14:20Z","kind":"note","payload":{"text":"Docker Engine 29.1.3 laeuft, aber user dustin NICHT in docker group. Einziger aktiver Container: synapse (matrixdotorg/synapse). Syncthing und fail2ban als systemd-Services.","agent":"hermes-main"}} +{"ts":"2026-07-23T11:14:21Z","kind":"note","payload":{"text":"Syncthing systemd-Service aktiv. Sync-Port 22000, Web UI auf localhost:8384. hermes-vault wird per Syncthing mit Mac synchronisiert. .stfolder und .stignore vorhanden in /home/dustin/hermes-vault/.","agent":"hermes-main"}} +{"ts":"2026-07-23T11:14:22Z","kind":"note","payload":{"text":"Open Second Brain v1.26.1 als Hermes Plugin und Memory Provider aktiv. Vault: /home/dustin/hermes-vault/. o2b CLI in ~/.local/bin/. Bun installiert unter ~/.bun/. 44 Dokumente indiziert, 9 Preferences aktiv, 14 Signale verarbeitet.","agent":"hermes-main"}} +{"ts":"2026-07-23T11:14:23Z","kind":"note","payload":{"text":"TODO Server: Docker-Gruppe fuer dustin einrichten, OBSIDIAN_VAULT_PATH in .hermes.env auf Server-Pfad updaten. Geplant: Upgrade auf RS 2000 G12 ab August 2026, dann alles in Docker. Keine Projekte auf Server (nur Mac). Kein Ollama.","agent":"hermes-main"}} +{"ts":"2026-07-23T11:14:32Z","kind":"feedback","payload":{"signal":"[[sig-2026-07-23-server-port-map]]","topic":"server-port-map","sign":"positive","agent":"hermes-main"}} +{"ts":"2026-07-23T13:12:03Z","kind":"note","payload":{"text":"Telegram als Primary-Channel aktiviert. Telegram-Plugin enabled, simplex-chat Daemon gestoppt + Plugin disabled. Matrix bleibt als Backup aktiv. Gateway wird neugestartet fuer Telegram.","agent":"hermes-main"}} diff --git a/Brain/log/2026-07-23.013d10a8.md b/Brain/log/2026-07-23.013d10a8.md new file mode 100644 index 0000000..80b9d6c --- /dev/null +++ b/Brain/log/2026-07-23.013d10a8.md @@ -0,0 +1,63 @@ +--- +kind: brain-log +date: 2026-07-23 +tags: [brain, brain/log] +--- + +# Brain log — 2026-07-23 + +## 11:12:04Z — note +- text: Test: O2B Setup auf Server läuft 2026-07-23_13:12 +- agent: agent + +## 11:12:12Z — note +- text: O2B Memory Provider auf Server Aingrad aktiviert. Vault per Syncthing mit Mac synchronisiert. Hermes kann jetzt brain_search, brain_note und brain_context nutzen. Bun installiert, o2b CLI in ~/.local/bin. 44 Dokumente indiziert. +- agent: hermes-main + +## 11:12:15Z — feedback +- signal: [[sig-2026-07-23-o2b-server-setup]] +- topic: o2b-server-setup +- sign: positive +- agent: hermes-main + +## 11:14:07Z — note +- text: Server Aingrad (159.195.51.99) - Netcup RS 1000 G12, Ubuntu 24.04, Domain baka-net.de. Hostname: Aingrad. 251GB SSD (6GB used, 235GB frei). IPs: 159.195.51.99 (IPv4). Läuft seit 1h (heute neugestartet). +- agent: hermes-main + +## 11:14:10Z — note +- text: Matrix Synapse als Docker Container auf localhost:8008. Config in /home/dustin/synapse/. registration_shared_secret: melo-reg-2026. Users: @baka (Admin), @hermes (Bot). +- agent: hermes-main + +## 11:14:13Z — note +- text: Caddy v2.9.1 als Reverse Proxy fuer baka-net.de und matrix.baka-net.de. baka-net.de zeigt auf /var/www/seite/. matrix.baka-net.de proxied zu localhost:8008 (Synapse). +- agent: hermes-main + +## 11:14:18Z — note +- text: Hermes Agent v0.19.0 Gateway auf Aingrad. Installiert in /home/dustin/hermes-agent/ (venv, kein Docker). Python 3.12.3. Config in /home/dustin/.hermes/config.yaml. Provider: DeepSeek V4 Flash. Matrix-Token in .hermes.env. +- agent: hermes-main + +## 11:14:20Z — note +- text: Docker Engine 29.1.3 laeuft, aber user dustin NICHT in docker group. Einziger aktiver Container: synapse (matrixdotorg/synapse). Syncthing und fail2ban als systemd-Services. +- agent: hermes-main + +## 11:14:21Z — note +- text: Syncthing systemd-Service aktiv. Sync-Port 22000, Web UI auf localhost:8384. hermes-vault wird per Syncthing mit Mac synchronisiert. .stfolder und .stignore vorhanden in /home/dustin/hermes-vault/. +- agent: hermes-main + +## 11:14:22Z — note +- text: Open Second Brain v1.26.1 als Hermes Plugin und Memory Provider aktiv. Vault: /home/dustin/hermes-vault/. o2b CLI in ~/.local/bin/. Bun installiert unter ~/.bun/. 44 Dokumente indiziert, 9 Preferences aktiv, 14 Signale verarbeitet. +- agent: hermes-main + +## 11:14:23Z — note +- text: TODO Server: Docker-Gruppe fuer dustin einrichten, OBSIDIAN_VAULT_PATH in .hermes.env auf Server-Pfad updaten. Geplant: Upgrade auf RS 2000 G12 ab August 2026, dann alles in Docker. Keine Projekte auf Server (nur Mac). Kein Ollama. +- agent: hermes-main + +## 11:14:32Z — feedback +- signal: [[sig-2026-07-23-server-port-map]] +- topic: server-port-map +- sign: positive +- agent: hermes-main + +## 13:12:03Z — note +- text: Telegram als Primary-Channel aktiviert. Telegram-Plugin enabled, simplex-chat Daemon gestoppt + Plugin disabled. Matrix bleibt als Backup aktiv. Gateway wird neugestartet fuer Telegram. +- agent: hermes-main diff --git a/Brain/metrics/index.jsonl b/Brain/metrics/index.jsonl index 9ae2ce5..1217e37 100644 --- a/Brain/metrics/index.jsonl +++ b/Brain/metrics/index.jsonl @@ -1 +1,2 @@ {"schema":"o2b.metrics.v1","surface":"index","run_at":"2026-07-09T14:02:54.872Z","payload":{"added":3,"updated":0,"deleted":0,"alias_resolved":0,"relation_violations":0,"tier_drift":0}} +{"schema":"o2b.metrics.v1","surface":"index","run_at":"2026-07-23T11:12:04.985Z","payload":{"added":42,"updated":1,"deleted":1,"alias_resolved":0,"relation_violations":0,"tier_drift":0}} diff --git a/Brain/search/activation-state.json b/Brain/search/activation-state.json new file mode 100644 index 0000000..8407375 --- /dev/null +++ b/Brain/search/activation-state.json @@ -0,0 +1,504 @@ +{ + "version": 1, + "events": 6, + "updatedAt": "2026-07-23T12:47:03.764Z", + "paths": { + "Brain/INDEX.md": { + "strength": 0.3, + "lastAccessAt": 1784810823764, + "accessCount": 3 + }, + "Brain/_BRAIN.md": { + "strength": 0.1, + "lastAccessAt": 1784805125422, + "accessCount": 1 + }, + "Brain/active.md": { + "strength": 0.1, + "lastAccessAt": 1784805125265, + "accessCount": 1 + }, + "Brain/inbox/sig-2026-07-09-brain-index.md": { + "strength": 0.1, + "lastAccessAt": 1784805125422, + "accessCount": 1 + }, + "Brain/inbox/sig-2026-07-09-meriting-ai-personal.md": { + "strength": 0.1, + "lastAccessAt": 1784805125422, + "accessCount": 1 + }, + "Brain/inbox/sig-2026-07-09-save-more-often.md": { + "strength": 0.1, + "lastAccessAt": 1784805125422, + "accessCount": 1 + }, + "Brain/inbox/sig-2026-07-16-auto-brain-load.md": { + "strength": 0.1, + "lastAccessAt": 1784805125422, + "accessCount": 1 + }, + "Brain/inbox/sig-2026-07-16-check-system-time.md": { + "strength": 0.1, + "lastAccessAt": 1784805125422, + "accessCount": 1 + }, + "Brain/inbox/sig-2026-07-18-vps-plan-august-2026.md": { + "strength": 0.1, + "lastAccessAt": 1784805125265, + "accessCount": 1 + }, + "Brain/inbox/sig-2026-07-19-server-port-map-2.md": { + "strength": 0.1, + "lastAccessAt": 1784805125265, + "accessCount": 1 + }, + "Brain/inbox/sig-2026-07-19-server-port-map.md": { + "strength": 0.1, + "lastAccessAt": 1784805125265, + "accessCount": 1 + }, + "Brain/log/2026-07-09.a0360993.md": { + "strength": 0.2, + "lastAccessAt": 1784810821353, + "accessCount": 2 + }, + "Brain/log/2026-07-16.a0360993.md": { + "strength": 0.1, + "lastAccessAt": 1784810821353, + "accessCount": 1 + }, + "Brain/log/2026-07-17.a0360993.md": { + "strength": 0.1, + "lastAccessAt": 1784810822564, + "accessCount": 1 + }, + "Brain/log/2026-07-19.a0360993.md": { + "strength": 0.1, + "lastAccessAt": 1784805125265, + "accessCount": 1 + }, + "Brain/log/2026-07-20.a0360993.md": { + "strength": 0.2, + "lastAccessAt": 1784810822564, + "accessCount": 2 + }, + "Brain/log/2026-07-23.013d10a8.md": { + "strength": 0.2, + "lastAccessAt": 1784805125422, + "accessCount": 2 + }, + "Brain/log/2026-07-23.a0360993.md": { + "strength": 0.1, + "lastAccessAt": 1784805125265, + "accessCount": 1 + }, + "Brain/pinned.md": { + "strength": 0.2, + "lastAccessAt": 1784810823764, + "accessCount": 2 + }, + "Brain/preferences/pref-auto-brain-load.md": { + "strength": 0.1, + "lastAccessAt": 1784805125422, + "accessCount": 1 + }, + "Brain/preferences/pref-brain-index.md": { + "strength": 0.1, + "lastAccessAt": 1784805125422, + "accessCount": 1 + }, + "Brain/preferences/pref-server-port-map.md": { + "strength": 0.1, + "lastAccessAt": 1784805125265, + "accessCount": 1 + }, + "Soul.md": { + "strength": 0.1, + "lastAccessAt": 1784810815823, + "accessCount": 1 + } + }, + "coAccess": [ + { + "a": "Brain/INDEX.md", + "b": "Brain/log/2026-07-09.a0360993.md", + "count": 2 + }, + { + "a": "Brain/INDEX.md", + "b": "Brain/pinned.md", + "count": 2 + }, + { + "a": "Brain/_BRAIN.md", + "b": "Brain/inbox/sig-2026-07-09-brain-index.md", + "count": 1 + }, + { + "a": "Brain/_BRAIN.md", + "b": "Brain/inbox/sig-2026-07-09-meriting-ai-personal.md", + "count": 1 + }, + { + "a": "Brain/_BRAIN.md", + "b": "Brain/inbox/sig-2026-07-09-save-more-often.md", + "count": 1 + }, + { + "a": "Brain/_BRAIN.md", + "b": "Brain/inbox/sig-2026-07-16-auto-brain-load.md", + "count": 1 + }, + { + "a": "Brain/_BRAIN.md", + "b": "Brain/inbox/sig-2026-07-16-check-system-time.md", + "count": 1 + }, + { + "a": "Brain/_BRAIN.md", + "b": "Brain/log/2026-07-23.013d10a8.md", + "count": 1 + }, + { + "a": "Brain/_BRAIN.md", + "b": "Brain/preferences/pref-auto-brain-load.md", + "count": 1 + }, + { + "a": "Brain/_BRAIN.md", + "b": "Brain/preferences/pref-brain-index.md", + "count": 1 + }, + { + "a": "Brain/active.md", + "b": "Brain/inbox/sig-2026-07-18-vps-plan-august-2026.md", + "count": 1 + }, + { + "a": "Brain/active.md", + "b": "Brain/inbox/sig-2026-07-19-server-port-map-2.md", + "count": 1 + }, + { + "a": "Brain/active.md", + "b": "Brain/inbox/sig-2026-07-19-server-port-map.md", + "count": 1 + }, + { + "a": "Brain/active.md", + "b": "Brain/log/2026-07-19.a0360993.md", + "count": 1 + }, + { + "a": "Brain/active.md", + "b": "Brain/log/2026-07-23.013d10a8.md", + "count": 1 + }, + { + "a": "Brain/active.md", + "b": "Brain/log/2026-07-23.a0360993.md", + "count": 1 + }, + { + "a": "Brain/active.md", + "b": "Brain/preferences/pref-server-port-map.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-brain-index.md", + "b": "Brain/inbox/sig-2026-07-09-meriting-ai-personal.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-brain-index.md", + "b": "Brain/inbox/sig-2026-07-09-save-more-often.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-brain-index.md", + "b": "Brain/inbox/sig-2026-07-16-auto-brain-load.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-brain-index.md", + "b": "Brain/inbox/sig-2026-07-16-check-system-time.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-brain-index.md", + "b": "Brain/log/2026-07-23.013d10a8.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-brain-index.md", + "b": "Brain/preferences/pref-auto-brain-load.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-brain-index.md", + "b": "Brain/preferences/pref-brain-index.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-meriting-ai-personal.md", + "b": "Brain/inbox/sig-2026-07-09-save-more-often.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-meriting-ai-personal.md", + "b": "Brain/inbox/sig-2026-07-16-auto-brain-load.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-meriting-ai-personal.md", + "b": "Brain/inbox/sig-2026-07-16-check-system-time.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-meriting-ai-personal.md", + "b": "Brain/log/2026-07-23.013d10a8.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-meriting-ai-personal.md", + "b": "Brain/preferences/pref-auto-brain-load.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-meriting-ai-personal.md", + "b": "Brain/preferences/pref-brain-index.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-save-more-often.md", + "b": "Brain/inbox/sig-2026-07-16-auto-brain-load.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-save-more-often.md", + "b": "Brain/inbox/sig-2026-07-16-check-system-time.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-save-more-often.md", + "b": "Brain/log/2026-07-23.013d10a8.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-save-more-often.md", + "b": "Brain/preferences/pref-auto-brain-load.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-09-save-more-often.md", + "b": "Brain/preferences/pref-brain-index.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-16-auto-brain-load.md", + "b": "Brain/inbox/sig-2026-07-16-check-system-time.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-16-auto-brain-load.md", + "b": "Brain/log/2026-07-23.013d10a8.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-16-auto-brain-load.md", + "b": "Brain/preferences/pref-auto-brain-load.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-16-auto-brain-load.md", + "b": "Brain/preferences/pref-brain-index.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-16-check-system-time.md", + "b": "Brain/log/2026-07-23.013d10a8.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-16-check-system-time.md", + "b": "Brain/preferences/pref-auto-brain-load.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-16-check-system-time.md", + "b": "Brain/preferences/pref-brain-index.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-18-vps-plan-august-2026.md", + "b": "Brain/inbox/sig-2026-07-19-server-port-map-2.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-18-vps-plan-august-2026.md", + "b": "Brain/inbox/sig-2026-07-19-server-port-map.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-18-vps-plan-august-2026.md", + "b": "Brain/log/2026-07-19.a0360993.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-18-vps-plan-august-2026.md", + "b": "Brain/log/2026-07-23.013d10a8.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-18-vps-plan-august-2026.md", + "b": "Brain/log/2026-07-23.a0360993.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-18-vps-plan-august-2026.md", + "b": "Brain/preferences/pref-server-port-map.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-19-server-port-map-2.md", + "b": "Brain/inbox/sig-2026-07-19-server-port-map.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-19-server-port-map-2.md", + "b": "Brain/log/2026-07-19.a0360993.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-19-server-port-map-2.md", + "b": "Brain/log/2026-07-23.013d10a8.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-19-server-port-map-2.md", + "b": "Brain/log/2026-07-23.a0360993.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-19-server-port-map-2.md", + "b": "Brain/preferences/pref-server-port-map.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-19-server-port-map.md", + "b": "Brain/log/2026-07-19.a0360993.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-19-server-port-map.md", + "b": "Brain/log/2026-07-23.013d10a8.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-19-server-port-map.md", + "b": "Brain/log/2026-07-23.a0360993.md", + "count": 1 + }, + { + "a": "Brain/inbox/sig-2026-07-19-server-port-map.md", + "b": "Brain/preferences/pref-server-port-map.md", + "count": 1 + }, + { + "a": "Brain/INDEX.md", + "b": "Brain/log/2026-07-16.a0360993.md", + "count": 1 + }, + { + "a": "Brain/INDEX.md", + "b": "Brain/log/2026-07-20.a0360993.md", + "count": 1 + }, + { + "a": "Brain/INDEX.md", + "b": "Soul.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-09.a0360993.md", + "b": "Brain/log/2026-07-16.a0360993.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-09.a0360993.md", + "b": "Brain/log/2026-07-20.a0360993.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-09.a0360993.md", + "b": "Brain/pinned.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-09.a0360993.md", + "b": "Soul.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-16.a0360993.md", + "b": "Brain/pinned.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-17.a0360993.md", + "b": "Brain/log/2026-07-20.a0360993.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-19.a0360993.md", + "b": "Brain/log/2026-07-23.013d10a8.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-19.a0360993.md", + "b": "Brain/log/2026-07-23.a0360993.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-19.a0360993.md", + "b": "Brain/preferences/pref-server-port-map.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-20.a0360993.md", + "b": "Soul.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-23.013d10a8.md", + "b": "Brain/log/2026-07-23.a0360993.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-23.013d10a8.md", + "b": "Brain/preferences/pref-auto-brain-load.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-23.013d10a8.md", + "b": "Brain/preferences/pref-brain-index.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-23.013d10a8.md", + "b": "Brain/preferences/pref-server-port-map.md", + "count": 1 + }, + { + "a": "Brain/log/2026-07-23.a0360993.md", + "b": "Brain/preferences/pref-server-port-map.md", + "count": 1 + }, + { + "a": "Brain/preferences/pref-auto-brain-load.md", + "b": "Brain/preferences/pref-brain-index.md", + "count": 1 + } + ] +} diff --git a/Brain/search/activation/1784805125265-33b0c265.json b/Brain/search/activation/1784805125265-33b0c265.json new file mode 100644 index 0000000..e9a5bbe --- /dev/null +++ b/Brain/search/activation/1784805125265-33b0c265.json @@ -0,0 +1,14 @@ +{ + "ts": 1784805125265, + "queryHash": "40ac3dd2", + "paths": [ + "Brain/inbox/sig-2026-07-19-server-port-map-2.md", + "Brain/log/2026-07-23.a0360993.md", + "Brain/log/2026-07-19.a0360993.md", + "Brain/preferences/pref-server-port-map.md", + "Brain/inbox/sig-2026-07-18-vps-plan-august-2026.md", + "Brain/inbox/sig-2026-07-19-server-port-map.md", + "Brain/log/2026-07-23.013d10a8.md", + "Brain/active.md" + ] +} diff --git a/Brain/search/activation/1784805125422-e41e206e.json b/Brain/search/activation/1784805125422-e41e206e.json new file mode 100644 index 0000000..7f41c9c --- /dev/null +++ b/Brain/search/activation/1784805125422-e41e206e.json @@ -0,0 +1,15 @@ +{ + "ts": 1784805125422, + "queryHash": "832891f3", + "paths": [ + "Brain/inbox/sig-2026-07-09-brain-index.md", + "Brain/_BRAIN.md", + "Brain/inbox/sig-2026-07-16-auto-brain-load.md", + "Brain/log/2026-07-23.013d10a8.md", + "Brain/inbox/sig-2026-07-09-save-more-often.md", + "Brain/preferences/pref-brain-index.md", + "Brain/preferences/pref-auto-brain-load.md", + "Brain/inbox/sig-2026-07-09-meriting-ai-personal.md", + "Brain/inbox/sig-2026-07-16-check-system-time.md" + ] +} diff --git a/Brain/search/activation/1784810815823-e6f48caf.json b/Brain/search/activation/1784810815823-e6f48caf.json new file mode 100644 index 0000000..947957f --- /dev/null +++ b/Brain/search/activation/1784810815823-e6f48caf.json @@ -0,0 +1,10 @@ +{ + "ts": 1784810815823, + "queryHash": "aa504874", + "paths": [ + "Soul.md", + "Brain/log/2026-07-09.a0360993.md", + "Brain/log/2026-07-20.a0360993.md", + "Brain/INDEX.md" + ] +} diff --git a/Brain/search/activation/1784810821353-416403f0.json b/Brain/search/activation/1784810821353-416403f0.json new file mode 100644 index 0000000..f8bf701 --- /dev/null +++ b/Brain/search/activation/1784810821353-416403f0.json @@ -0,0 +1,10 @@ +{ + "ts": 1784810821353, + "queryHash": "f7b18c82", + "paths": [ + "Brain/INDEX.md", + "Brain/pinned.md", + "Brain/log/2026-07-16.a0360993.md", + "Brain/log/2026-07-09.a0360993.md" + ] +} diff --git a/Brain/search/activation/1784810822564-dd35cafe.json b/Brain/search/activation/1784810822564-dd35cafe.json new file mode 100644 index 0000000..3734f25 --- /dev/null +++ b/Brain/search/activation/1784810822564-dd35cafe.json @@ -0,0 +1,8 @@ +{ + "ts": 1784810822564, + "queryHash": "9feaf6da", + "paths": [ + "Brain/log/2026-07-20.a0360993.md", + "Brain/log/2026-07-17.a0360993.md" + ] +} diff --git a/Brain/search/activation/1784810823764-cb1bdfde.json b/Brain/search/activation/1784810823764-cb1bdfde.json new file mode 100644 index 0000000..05449ad --- /dev/null +++ b/Brain/search/activation/1784810823764-cb1bdfde.json @@ -0,0 +1,8 @@ +{ + "ts": 1784810823764, + "queryHash": "aecf3588", + "paths": [ + "Brain/INDEX.md", + "Brain/pinned.md" + ] +} diff --git a/Notizen/Gehalt Juli 2026.md b/Notizen/Gehalt Juli 2026.md new file mode 100644 index 0000000..2dd0165 --- /dev/null +++ b/Notizen/Gehalt Juli 2026.md @@ -0,0 +1,70 @@ +# Gehalt Juli 2026 – Freilichtmuseum Molfsee + +**Stand:** 24.07.2026 +**Name:** Dustin Hähnel +**Position:** Service, LMV Jahr100 Haus +**Ort:** Hamburger Landstr. 97, 24113 Molfsee + +--- + +## 📊 Arbeitszeit Juli + +| Wert | | +|------|---| +| Arbeitstage | 20 Tage | +| Stunden gesamt | **158 Stunden** | +| Stundenlohn | **15,10 €** | +| Brutto | **2.385,80 €** | + +--- + +## 💰 Netto-Berechnung (Auszahlung 15.08.) + +| Posten | Betrag | +|--------|:------:| +| **Brutto** | **2.385,80 €** | +| | | +| **Steuern (SK1, christlich, SH)** | | +| Lohnsteuer | −85,00 € | +| Kirchensteuer (9%) | −7,65 € | +| | | +| **Sozialabgaben (AOK Nordwest)** | | +| KV (AOK Nordwest, ~8,225%) | −196,23 € | +| PV (4,0%, keine Kinder) | −95,43 € | +| RV (9,3%) | −221,88 € | +| AV (1,3%) | −31,02 € | +| | | +| **────────────────** | **────────** | +| **Netto** | **~1.748,59 €** | + +**Steuern + Abgaben gesamt:** ~637 € (26,7 %) + +--- + +## 📅 Arbeitstage im Detail + +| Datum | Uhrzeit | Std | +|-------|---------|:---:| +| Do 02.07. | 09:30–18:30 | 8,5 | +| Fr 03.07. | 09:30–18:30 | 8,5 | +| Sa 04.07. | 09:30–18:30 | 8,5 | +| So 05.07. | 09:30–18:30 | 8,5 | +| Di 07.07. | 09:30–18:30 | 8,5 | +| Mi 08.07. | 09:30–18:30 | 8,5 | +| Fr 10.07. | 09:30–18:30 | 8,5 | +| Sa 11.07. | 09:30–18:30 | 8,5 | +| So 12.07. | 09:30–18:30 | 8,5 | +| Di 14.07. | 14:00–18:30 | 4,5 | +| Mi 15.07. | 14:00–18:30 | 4,5 | +| Fr 17.07. | 09:30–18:30 | 8,5 | +| Sa 18.07. | 14:00–18:30 | 4,5 | +| So 19.07. | 09:30–18:30 | 8,5 | +| Di 21.07. | 09:30–18:30 | 8,5 | +| Mi 22.07. | 09:30–18:30 | 8,5 | +| Fr 24.07. | 09:30–18:30 | 8,5 | +| Sa 25.07. | 09:30–18:30 | 8,5 | +| Do 30.07. | 09:30–18:30 | 8,5 | +| Fr 31.07. | 09:30–18:30 | 8,5 | + +**Abwesenheiten:** Keine Urlaubstage, keine Kranktage +**Pause:** 30 Min (bezahlt) diff --git a/Notizen/Server Aingrad - Komplette Übersicht.md b/Notizen/Server Aingrad - Komplette Übersicht.md new file mode 100644 index 0000000..85edc65 --- /dev/null +++ b/Notizen/Server Aingrad - Komplette Übersicht.md @@ -0,0 +1,210 @@ +# Server Aingrad – Komplette Übersicht + +> Stand: 24.07.2026 +> IP: 159.195.51.99 +> ZeroTier: 10.19.81.21 +> System: Ubuntu 24.04 LTS, 4 Kerne, 8 GB RAM, 251 GB SSD +> Domain: baka-net.de + +--- + +## 🔝 Die wichtigsten Befehle (täglich) + +```bash +# SSH zum Server +ssh dustin@159.195.51.99 + +# Docker-Container anzeigen +docker ps + +# Logs eines Containers +docker logs + +# Server neustarten +sudo reboot + +# Festplattenplatz prüfen +df -h + +# RAM/Nutzung prüfen +free -m + +# Hermes Gateway neustarten +systemctl --user restart hermes-gateway +``` + +--- + +## 🔒 1. Firewall (UFW) – Port-Freigaben + +**Status:** `sudo ufw status` + +| Erlaubt für | Port | Erklärung | +|-------------|------|-----------| +| SSH | 22/tcp | Server-Zugriff | +| Web (Caddy) | 80, 443/tcp | Websites + SSL | +| Syncthing | 22000/tcp+udp | Datei-Sync | +| ZeroTier | 9993/udp | VPN-Netzwerk | +| ZeroTier-Intern | Alle Ports auf `zt+` | Zugriff über sicheres VPN | + +--- + +## 📦 2. Docker-Container + +```bash +docker ps # Laufende Container anzeigen +docker ps -a # Alle Container (auch gestoppte) +docker logs -f # Live-Logs anzeigen +docker restart # Container neustarten +docker stop # Container stoppen +docker system prune -af # Ungenutzte Docker-Daten löschen +``` + +### Aktive Container + +| Container | Port | Zweck | +|-----------|------|-------| +| **gitea** | `127.0.0.1:3000` | Eigenes Git-System (git.baka-net.de) | +| **synapse** | `127.0.0.1:8008` | Matrix-Chat-Server (matrix.baka-net.de) | +| **anisette** | `127.0.0.1:6969` | Anisette-V3 für iOS-Sideloading (anisette.baka-net.de) | + +--- + +## 🌐 3. Caddy-Webserver (Domain-Routing) + +**Konfiguration:** `/etc/caddy/Caddyfile` + +```bash +caddy reload # Konfiguration neu laden +systemctl restart caddy # Caddy neustarten +journalctl -u caddy -n 50 # Letzte 50 Log-Einträge +``` + +| Domain | Weiterleitung auf | +|--------|-------------------| +| baka-net.de | Statische Webseite | +| matrix.baka-net.de | localhost:8008 (Synapse) | +| git.baka-net.de | localhost:3000 (Gitea) | +| anisette.baka-net.de | localhost:6969 (Anisette-V3) | + +--- + +## 🧰 4. Installierte Entwickler-Tools + +```bash +# Flutter & Dart (Android/iOS App-Entwicklung) +export PATH="$HOME/development/flutter/bin:$PATH" +flutter doctor # Status prüfen +flutter build apk --release --split-per-abi # APK bauen + +# Android SDK +export ANDROID_HOME="$HOME/development/android-sdk" +sdkmanager --list_installed # Installierte SDK-Versionen + +# Java +java -version # OpenJDK 17 +``` + +--- + +## 🛡️ 5. Security-Tools + +### Gitleaks – Findet Secrets in Git-Repos +```bash +# Aktuelles Repo scannen +gitleaks detect --source /pfad/zum/repo --verbose + +# Nur geänderte Dateien vor Commit prüfen +gitleaks detect --source . --log-level debug + +# Komplette Git-Historie durchsuchen +gitleaks detect --source /pfad/zum/repo --no-git +``` + +### Trivy – Schwachstellen-Scanner +```bash +# Repository scannen +trivy repo https://github.com/user/repo + +# Dateisystem scannen +trivy fs /pfad/zum/repo + +# Docker-Image scannen +trivy image alpine:latest +``` + +### Semgrep – Statische Code-Analyse (SAST) +```bash +# Projekt analysieren +semgrep --config=auto /pfad/zum/projekt + +# Nach Sicherheitslücken suchen +semgrep --config=p/default /pfad/zum/projekt + +# Nur bestimmte Regeln +semgrep --config=p/docker-security /pfad +``` + +--- + +## 🌐 6. Website-Klon-Tools + +### HTTrack – Komplette Webseiten kopieren +```bash +# Komplette Seite runterladen +httrack "https://example.com" -O /home/dustin/archiv/seite --depth=3 + +# Nur eine Seite + Ressourcen +httrack "https://example.com/seite.html" -O /home/dustin/archiv/seite --depth=1 + +# Mit Benutzername/Passwort +httrack "https://user:pass@example.com" -O /home/dustin/archiv/seite +``` + +--- + +## 🔄 7. Automatische Backups (Cron - 04:00 Uhr) + +```bash +# Backup-Skript manuell ausführen +sudo /home/dustin/scripts/backup_and_cleanup.sh + +# Backup-Ordner prüfen +ls -lh /home/dustin/Sync/backups/ + +# Crontab anzeigen +sudo crontab -l +``` + +**Sichert automatisch:** Gitea-Daten + Synapse-Datenbank +**Bereinigt:** Docker-Müll (`system prune`) +**Backup-Ziel:** `/home/dustin/Sync/backups/` (7 Tage Aufbewahrung) + +--- + +## 🧪 8. Weitere Tools + +| Tool | Befehl | Zweck | +|------|--------|-------| +| ZeroTier | `zerotier-cli listnetworks` | VPN-Status prüfen | +| Syncthing | `systemctl status syncthing@dustin` | Sync-Dienst prüfen | +| ADB | `adb devices` | Android-Geräte-Liste | +| Flutter | `flutter build apk --release --split-per-abi` | APK bauen | + +--- + +## 📁 Wichtige Pfade + +| Pfad | Inhalt | +|------|--------| +| `/home/dustin/` | Benutzer-Home | +| `/home/dustin/git/` | Git-Repos | +| `/home/dustin/git/melo_app/` | Melo App Quellcode | +| `/home/dustin/development/` | Flutter + Android SDK | +| `/home/dustin/hermes-vault/` | Notizen (Obsidian) | +| `/home/dustin/.hermes/` | Hermes-Konfiguration | +| `/home/dustin/scripts/` | Eigene Skripte | +| `/home/dustin/Sync/` | Syncthing-Synchronisation | +| `/home/dustin/Sync/backups/` | Backup-Archive | +| `/home/dustin/musik/` | Musik-Ordner | +| `/etc/caddy/Caddyfile` | Caddy-Konfiguration | diff --git a/Notizen/Seven Deadly Sins Origin - Guide.md b/Notizen/Seven Deadly Sins Origin - Guide.md new file mode 100644 index 0000000..f29bd76 --- /dev/null +++ b/Notizen/Seven Deadly Sins Origin - Guide.md @@ -0,0 +1,466 @@ +# 🎮 Seven Deadly Sins: Origin — Der ultimative Guide + +> **Stand:** Juli 2026 | **Sprache:** Deutsch | **Spiel:** Seven Deadly Sins: Origin (Open-World Gacha RPG) + +--- + +## 📋 Inhaltsverzeichnis + +1. [💎 Wichtige Items & Wo herbekommen](#-wichtige-items--wo-herbekommen) +2. [⏰ Cooldowns & Resets](#-cooldowns--resets) +3. [📈 Stark werden — Progression Guide](#-stark-werden--progression-guide) +4. [🎁 Aktuelle Codes (Juli 2026)](#-aktuelle-codes-juli-2026) +5. [🔄 Tägliche Routine](#-tägliche-routine) +6. [⚔️ Team-Zusammenstellung für Anfänger](#️-team-zusammenstellung-für-anfänger) +7. [🛡️ Equipment-System](#️-equipment-system) +8. [⚠️ Häufige Fehler & Was NICHT verschwenden](#️-häufige-fehler--was-nicht-verschwenden) + +--- + +## 💎 Wichtige Items & Wo herbekommen + +### ⭐ Star Fragments (Sternenfragmente) + +**Wofür?** +- Helden-Beschwörungen (Hero Draw) +- Limitierte Banner ziehen +- Premium-Währung des Spiels — das wertvollste Gut! + +**Wo farmen?** +| Quelle | Menge | Frequenz | +|--------|-------|----------| +| 📜 Tägliche Quests | ~30-50 | Täglich | +| 🏆 PvP-Rangbelohnungen | 50-200 | Wöchentlich | +| 🗺️ Story-Missionen (Erstbelohnung) | 10-30 pro Mission | Einmalig | +| 🎯 Achievements | 50-500 | Einmalig | +| 🏰 Weltboss-Raids | 20-60 | Täglich | +| 🎪 Events | Variabel | Saisonal | +| 📦 Cube-System | 30-100 | Nach Keys | +| 💳 Battle Pass (kostenlos) | 100-300 | Pro Season | +| 🎁 Codes (siehe unten) | 50-200 | Bei Release | + +> 💡 **Tipp:** Star Fragments NIE für Standard-Banner verschwenden! Immer für limitierte/pity-Banner sparen! + +--- + +### 🎫 Hero Draw Tickets + +#### Normale Draw Tickets +| Quelle | Menge | +|--------|-------| +| 📜 Tägliche Logins | 1 alle 2-3 Tage | +| 🗺️ Story-Fortschritt | 1-3 pro Kapitel | +| 🎯 Daily Missions (alle abschließen) | 1 | +| 🏪 Event-Shop | 3-5 pro Event | +| 🎁 Codes | 1-3 | + +#### Premium Draw Tickets (seltener!) +| Quelle | Menge | +|--------|-------| +| 🏆 Wöchentliche Rangbelohnung | 1-2 | +| 🎪 Große Events | 3-5 | +| 💎 Meilenstein-Belohnungen | 1-3 | +| 🎁 Spezielle Codes | 1-3 | +| 💳 Battle Pass (Premium) | 5-10 | + +--- + +### 🔨 Enhancement Stones (Verstärkungssteine) + +**Wofür?** Ausrüstung leveln und verstärken. + +| Quelle | Menge | Frequenz | +|--------|-------|----------| +| ⛏️ Enhancement-Dungeon | 20-50 | 3x täglich | +| 🗺️ Story-Missionen | 5-15 | Wiederholbar | +| 🏪 Gildenshop | 30 | Wöchentlich | +| 🎯 Daily Missions | 10 | Täglich | +| 🌍 Open-World Bosse | 5-10 | Unbegrenzt | +| 📦 Cube-Belohnungen | 10-30 | Nach Keys | +| ♻️ Unerwünschte Ausrüstung zerlegen | Variabel | Jederzeit | + +> 💡 **Bester Farm-Spot:** Enhancement-Dungeon auf höchster Stufe + Open-World Bosse in Liones! + +--- + +### 💠 Refinement Stones (Veredelungssteine) + +**Wofür?** Ausrüstungs-Substats verbessern und rerollen. + +| Quelle | Menge | Frequenz | +|--------|-------|----------| +| 💠 Refinement-Dungeon | 10-20 | 2x täglich | +| 🏪 PvP-Shop | 15 | Wöchentlich | +| 🐉 Drachen-Raids | 5-15 | Täglich | +| 🎪 Event-Belohnungen | 20-50 | Saisonal | +| 📦 High-Level Cubes | 10-25 | Nach Keys | + +> ⚠️ **Wichtig:** Refinement Stones sind ENDGAME-Ressourcen. Erst ab goldener/legendärer Ausrüstung verwenden! + +--- + +### 💰 Gold / EXP + +#### Gold-Farming +| Methode | Ertrag | Priorität | +|---------|--------|-----------| +| 💰 Gold-Dungeon | 50.000-200.000 | ⭐⭐⭐ Täglich machen! | +| 🗺️ Story-Wiederholung | 5.000-15.000 | ⭐⭐ | +| 🎯 Daily Missions | 10.000-30.000 | ⭐⭐⭐ | +| 🏪 Gildenquests | 20.000 | ⭐⭐ | +| 📦 Cube-System | 30.000-100.000 | ⭐⭐ | +| ♻️ Items verkaufen | Variabel | ⭐ | + +#### EXP-Farming +| Methode | Ertrag | Priorität | +|---------|--------|-----------| +| 📚 EXP-Dungeon | 50.000-200.000 EXP | ⭐⭐⭐ Täglich! | +| 🗺️ Story (Erstbelohnung) | Hoch | ⭐⭐⭐ | +| 🌍 Open-World Grinding | Mittel | ⭐⭐ | +| 🍖 EXP-Tränke (Alchemie) | Hoch | ⭐⭐ | + +> 💡 **Beste Routine:** Gold-Dungeon + EXP-Dungeon JEDEN TAG machen, das summiert sich massiv! + +--- + +### 🔑 Cube Keys (Würfelschlüssel) + +**Wofür?** Öffnen von Cubes (Würfeln), die zufällige Belohnungen enthalten: +- Star Fragments +- Enhancement Stones +- Refinement Stones +- Gold +- Seltene Materialien +- Ausrüstung + +**Wo bekommen?** +| Quelle | Menge | +|--------|-------| +| 📜 Tägliche Logins | 1-3 | +| 🎯 Daily Missions | 1-2 | +| 🏪 Event-Shop | 5-10 | +| 🎁 Codes | 3-5 | +| 🗺️ Versteckte Quests | 1-3 | +| 🏆 Achievements | 3-10 | + +> 💡 Cubes NUR mit Keys öffnen, niemals Star Fragments dafür ausgeben! + +--- + +### 🔮 Special Items für Aufstieg & Evolution + +| Item | Wofür? | Wo bekommen? | +|------|--------|--------------| +| 🌟 **Awakening Crystals** | Helden erwecken (Sterne erhöhen) | Boss-Raids, Event-Shop | +| 📜 **Skill Tomes** | Fähigkeiten leveln | Gilden-Raids, PvP-Shop | +| 💎 **Evolution Stones** | Helden weiterentwickeln | Element-Dungeons (täglich rotierend) | +| 🏅 **Limit Break Materials** | Levelcap erhöhen | Weltbosse, Spezial-Dungeons | +| 🔴 **Red Demon Horns** | SSR-Helden aufstieg | Red Demon Raid | +| 🔵 **Blue Demon Wings** | SSR-Helden aufstieg | Blue Demon Raid | +| ⚪ **Gray Demon Hearts** | SSR-Helden aufstieg | Gray Demon Raid | + +--- + +## ⏰ Cooldowns & Resets + +### 🌅 Tägliche Resets +| Was? | Reset-Zeit | Limit | +|------|------------|-------| +| 🎯 Daily Missions | 05:00 UTC | 1x täglich | +| 📜 Login-Belohnung | 05:00 UTC | 1x täglich | +| ⛏️ Enhancement-Dungeon | 05:00 UTC | 3x täglich | +| 💠 Refinement-Dungeon | 05:00 UTC | 2x täglich | +| 💰 Gold-Dungeon | 05:00 UTC | 2x täglich | +| 📚 EXP-Dungeon | 05:00 UTC | 2x täglich | +| 🐉 Drachen-Raids | 05:00 UTC | 3x täglich | +| 👹 Dämonen-Raids | 05:00 UTC | 3x täglich | +| 🏪 Shop-Refresh (Gilde) | 05:00 UTC | — | +| 🌍 Weltboss-Spawn | Verschiedene Zeiten | 3-5x täglich | +| 🤝 Freundes-AP senden | 05:00 UTC | 1x täglich | +| 🎪 Event-Quests | 05:00 UTC | Event-abhängig | + +### 📅 Wöchentliche Resets +| Was? | Reset-Tag | Limit | +|------|-----------|-------| +| 🏆 PvP-Rangbelohnung | Montag 05:00 UTC | 1x wöchentlich | +| 🏪 Gildenshop | Montag 05:00 UTC | — | +| 🐉 Großer Drachen-Raid | Samstag/Sonntag | 2x Wochenende | +| 🎯 Wöchentliche Missionen | Montag 05:00 UTC | 1x wöchentlich | +| 🎪 Event-Shop | Event-Ende | Event-abhängig | +| 📦 Cube-Reset (Belohnungen) | Täglich + Wöchentlich | Variabel | + +### 🔄 Events & Rotationen +| Typ | Dauer | Rhythmus | +|-----|-------|----------| +| 🎪 Saisonale Events | 2-4 Wochen | Alle 1-2 Monate | +| 🎯 Spezial-Banner | 1-3 Wochen | Rotierend | +| 🏪 Event-Shop | 2-4 Wochen | Parallel zu Events | +| 🎁 Login-Events | 7-14 Tage | Monatlich | +| 🌟 Doppel-Belohnungs-Wochenende | 3 Tage | 1x pro Monat | +| ⚔️ Gilden-Kriege | 1 Woche | Saisonal | + +--- + +## 📈 Stark werden — Progression Guide + +### 🔝 Prioritäten-Liste (Was zuerst leveln?) + +``` +1️⃣ Haupt-Team auf Max-Level bringen +2️⃣ Ausrüstung auf +9 (mindestens) +3️⃣ Fähigkeiten der Main-DPS leveln +4️⃣ Helden erwecken (Awakening/Sterne) +5️⃣ Ausrüstung auf +12 (Endgame +15) +6️⃣ Substats rerollen (Refinement) +7️⃣ Synergie-Helden leveln +8️⃣ Limit Break für Levelcap-Erweiterung +9️⃣ Ultimative Fähigkeiten freischalten +🔟 PvP-Team optimieren +``` + +### 🎖️ Beste Helden/Rollen (Meta — Juli 2026) + +#### S-Tier (MUST-HAVE) +| Held | Rolle | Stärke | +|------|-------|--------| +| 🔥 **Meliodas (Assault Mode)** | DPS | Wahnsinniger Burst-Schaden | +| ⚡ **Escanor (The One)** | DPS | Unaufhaltsam im Ultimate | +| 🌙 **Zeldris (Ominous Nebula)** | DPS/Debuffer | AOE + Kontrolle | +| 🛡️ **Goddess Elizabeth** | Support/Heiler | Beste Heilerin im Spiel | + +#### A-Tier (Sehr stark) +| Held | Rolle | Stärke | +|------|-------|--------| +| 🗡️ **King (Chastiefol)** | DPS/Controller | Vielseitig + Heilung | +| 💀 **Gowther (Invasion)** | Support | Unverzichtbar für Rank-Up | +| 🌊 **Merlin (Infinity)** | DPS/Support | Schilde + Burst | +| ⚔️ **Diane (Drole's Dance)** | Tank | Bester Tank + AOE | +| 🌑 **Estarossa** | DPS | Counter-Spezialist | + +#### B-Tier (Gute F2P-Optionen) +| Held | Rolle | Stärke | +|------|-------|--------| +| 🗡️ **Howzer** | DPS | AOE-Farming-König | +| 🛡️ **Gilthunder** | Support | ATK-Buff fürs Team | +| 💪 **Ban** | Bruiser | Lebensraub + Durability | +| 🎯 **Jericho** | Single-Target DPS | Boss-Killer | + +### ⚔️ Team-Zusammenstellung für Anfänger + +**Grundregel:** 1 DPS + 1 Sub-DPS + 1 Support + 1 Flex + +#### 🥇 Bestes Anfänger-Team (F2P-freundlich) +``` +🔥 Haupt-DPS: Meliodas / Escanor (vom Starter-Banner) +🗡️ Sub-DPS: King / Howzer +💚 Support/Heiler: Elizabeth / Gilthunder +🛡️ Flex (Tank): Diane / Ban +``` + +#### 🎯 Synergie-Kombos +| Combo | Helden | Effekt | +|-------|--------|--------| +| ⚡ Burst-Combo | Escanor + Gowther | Rank-Up → Ultimate = Oneshot | +| 🔥 Debuff-Combo | Zeldris + Estarossa | Gegner debuffen → Burst | +| 🛡️ Turtle-Combo | Diane + Elizabeth | Unzerstörbare Defensive | +| 🌪️ AOE-Farm | Howzer + King | Schnelles Story-Farming | + +--- + +## 🛡️ Equipment-System + +### Ausrüstungstypen +| Typ | Slot | Haupteffekt | +|-----|------|-------------| +| ⚔️ Waffe | 1 | ATK (Angriff) | +| 🛡️ Rüstung | 2 | DEF (Verteidigung) | +| 👑 Helm | 3 | HP (Lebenspunkte) | +| 💍 Ring | 4 | ATK oder DEF | +| 📿 Amulett | 5 | HP oder Crit | +| 👢 Stiefel | 6 | Speed oder ATK | + +### Seltenheitsstufen +| Stufe | Farbe | Maximale Verstärkung | Substat-Slots | +|-------|-------|---------------------|---------------| +| ⬜ Common | Grau | +3 | 0 | +| 🟩 Uncommon | Grün | +6 | 1 | +| 🟦 Rare | Blau | +9 | 2 | +| 🟪 Heroic | Lila | +12 | 3 | +| 🟨 Legendary | Gold | +15 | 4 | + +> ⚠️ **Regel:** NIEMALS Common/Uncommon verstärken. Rare nur bis +6 im Notfall. Ressourcen für Heroic+ sparen! + +### Set-Boni (wichtigste) + +| Set | 2er-Bonus | 4er-Bonus | +|-----|-----------|-----------| +| ⚔️ **Angriff** | ATK +15% | — | +| 💥 **Kritisch** | Crit-Rate +10% | Crit-DMG +25% | +| 🛡️ **Verteidigung** | DEF +15% | — | +| ❤️ **Leben** | HP +15% | — | +| ⚡ **Geschwindigkeit** | Speed +10% | — | +| 🔥 **Zerstörung** | — | Ignoriert 30% DEF | +| 💀 **Lebensraub** | Lifesteal +10% | — | + +### Wann welche Sets? + +| Rolle | Empfohlenes Set | Grund | +|-------|-----------------|-------| +| 🔥 DPS | Angriff (4) + Kritisch (2) | Maximaler Schaden | +| ⚡ Speed-DPS | Geschwindigkeit (4) + Angriff (2) | Zuerst dran | +| 🛡️ Tank | Verteidigung (4) + Leben (2) | Max Tankiness | +| 💚 Heiler | Leben (4) + Verteidigung (2) | Überleben + Heilung | +| 💀 Debuffer | Geschwindigkeit (4) + Effekttreffer (2) | Debuffs landen | + +--- + +## 🎁 Aktuelle Codes (Juli 2026) + +> 🔥 **Diese Codes funktionieren Stand Juli 2026! Sofort einlösen!** + +| Code | Belohnung | +|------|-----------| +| `100DAYCELEBRATION` | 🎫 Regular Hero Draw Ticket x3 | +| `WELCOMEORIGIN` | 🎫 Tickets + Ressourcen-Paket | +| `goatsinisgoat` | ⭐ Star Fragments + 🔑 Cube Keys | +| `PECCATUMLIBIDINIS` | ⭐ Star Fragments | +| `gowtherisback` | ⭐ Star Fragments + 💰 Gold | + +### 📝 Codes einlösen — So geht's: + +1. 🎮 Spiel öffnen +2. ⚙️ Einstellungen (Zahnrad-Icon) → "Code einlösen" +3. 📋 Code EXAKT eingeben (Groß-/Kleinschreibung beachten!) +4. ✅ Bestätigen → Belohnung erscheint im Postfach + +> ⚠️ **Wichtig:** Codes haben ein Ablaufdatum! Sofort einlösen, nicht aufschieben! + +--- + +## 🔄 Tägliche Routine + +### 🌅 JEDEN TAG (Daily Checklist) + +``` +☐ 📜 Login-Belohnung abholen +☐ 🎯 ALLE Daily Missions abschließen +☐ ⛏️ Enhancement-Dungeon (3x) +☐ 💰 Gold-Dungeon (2x) +☐ 📚 EXP-Dungeon (2x) +☐ 💠 Refinement-Dungeon (2x) +☐ 🐉 Drachen-Raids (3x) +☐ 👹 Dämonen-Raids (3x, deinem Level entsprechend) +☐ 🤝 Freundes-AP senden + empfangen +☐ 🏪 Gildenshop checken + spenden +☐ 🎪 Event-Quests (falls aktiv) +☐ 🌍 Weltbosse (Timer checken!) +☐ 📦 Cube-Öffnungen (wenn Keys da) +☐ 🗺️ 3-5 Story-Missionen wiederholen (Gold/EXP farmen) +``` + +**⏱️ Zeitaufwand:** ca. 45-60 Minuten + +### 📅 DIESE WOCHE priorisieren (Juli 2026) + +``` +🔥 PRIORITÄT 1: Codes einlösen! + → 100DAYCELEBRATION, WELCOMEORIGIN, goatsinisgoat, + PECCATUMLIBIDINIS, gowtherisback + +🔥 PRIORITÄT 2: 100-Tage-Event abschließen + → Alle Event-Missionen machen für maximale Belohnungen + +🔥 PRIORITÄT 3: Hauptteam auf Max-Level + → EXP-Dungeon täglich, Story pushen + +🔥 PRIORITÄT 4: Ausrüstung auf +9 + → Enhancement-Dungeon täglich farmen + +🔥 PRIORITÄT 5: PvP-Rang verbessern + → Vor Montag-Reset hoch pushen für bessere Belohnungen! +``` + +### 📊 Wöchentlicher Fahrplan + +| Tag | Fokus | +|-----|-------| +| 🟢 **Montag** | Reset-Tag! Alle Wöchentlichen Quests starten. PvP-Belohnung abholen. | +| 🔵 **Dienstag** | Story-Fortschritt. Hauptteam leveln. | +| 🟣 **Mittwoch** | Ausrüstung farmen. Enhancement + Refinement Dungeons. | +| 🟡 **Donnerstag** | Dämonen-Raids für Aufstiegsmaterialien. | +| 🔴 **Freitag** | Gilden-Quests + Weltbosse. | +| 🟠 **Samstag** | Großes Farm-Wochenende! Doppel-Belohnungen nutzen! | +| 🟢 **Sonntag** | PvP pushen vor Reset. Alles abschließen was noch offen ist. | + +--- + +## ⚠️ Häufige Fehler & Was NICHT verschwenden + +### ❌ Absolute No-Gos + +| Fehler | Warum schlimm? | Was stattdessen tun? | +|--------|---------------|---------------------| +| ⭐ Star Fragments für Standard-Banner | Verschwendung! Kaum Wert. | Nur für limitierte/Pity-Banner sparen | +| 🔨 Enhancement Stones auf graue/grüne Items | Bringt nichts, wird ersetzt | Mindestens blaue/rare Ausrüstung | +| 💠 Refinement Stones auf Items unter Lila | Pure Ressourcenverschwendung | Nur für Heroic (lila) oder Legendary | +| 📦 Cubes mit Star Fragments öffnen | Teuer und ineffizient | Nur mit Cube Keys öffnen! | +| 🎫 Premium Tickets auf filler Banner | Verpasste Chance auf Meta-Helden | Sparen für S-Tier Banner | +| 💰 Gold für unnötigen Shop-Kram | Gold wird später knapp | Nur Kern-Upgrades kaufen | +| 🔮 Dupe-SSR als EXP verfüttern | Dupes sind wertvoll für Awakening | Immer für Limit Break / Awakening aufheben | +| ⏰ Tägliche Dungeons skippen | Verpasster Fortschritt summiert sich | Jeden Tag machen, Routine aufbauen! | + +### 🟢 Empfehlungen für F2P-Spieler + +1. **Geduld haben!** Das Spiel ist ein Marathon, kein Sprint. +2. **Star Fragments horten** bis ein META-breaking Banner kommt. +3. **Täglich alles machen** — die kleinen Belohnungen addieren sich. +4. **Einer guten Gilde beitreten** — Gilden-Belohnungen sind massiv. +5. **PvP NICHT ignorieren** — selbst niedrige Ränge geben gute wöchentliche Belohnungen. +6. **Nicht jeden Held leveln** — Fokus auf 4-6 Kernhelden. +7. **Codes sofort einlösen** — viele laufen schnell ab! + +--- + +## 📊 Ressourcen-Management Cheat Sheet + +``` +┌─────────────────────────────────────────────────────────┐ +│ TÄGLICH │ +│ ✅ Enhancement-Dungeon (3x) ⭐ Höchste Priorität │ +│ ✅ Gold-Dungeon (2x) ⭐ Höchste Priorität │ +│ ✅ EXP-Dungeon (2x) ⭐ Höchste Priorität │ +│ ✅ Daily Missions (alle) ⭐ Höchste Priorität │ +│ ✅ Dämonen-Raids (3x) 🔶 Mittlere Priorität │ +│ ✅ Drachen-Raids (3x) 🔶 Mittlere Priorität │ +│ ✅ Weltbosse 🔶 Mittlere Priorität │ +│ ✅ Refinement-Dungeon (2x) 🔹 Niedrig (Endgame) │ +└─────────────────────────────────────────────────────────┘ + +┌─────────────────────────────────────────────────────────┐ +│ WOCHENTLICH │ +│ ✅ PvP-Rang pushen ⭐ Vor Montag-Reset! │ +│ ✅ Gildenshop leeren ⭐ Kostenlose Items │ +│ ✅ Gilden-Beitrag leisten ⭐ Für Gilden-Münzen │ +│ ✅ Wochen-Missionen abschließen ⭐ Gute Belohnungen │ +│ ✅ Doppel-Belohnungs-Event ⭐ Priorität nutzen! │ +└─────────────────────────────────────────────────────────┘ +``` + +--- + +## 🎯 Quick-Reference: "Was soll ich jetzt tun?" + +| Dein Level | Deine Priorität | +|------------|-----------------| +| 🆕 **1-30** (Anfänger) | Story pushen, Hauptteam finden, Tägliche Quests | +| 📗 **31-50** (Fortgeschritten) | Ausrüstung +9, Fähigkeiten leveln, Gilden beitreten | +| 📘 **51-70** (Erfahren) | Ausrüstung +12, Substats optimieren, PvP fokussieren | +| 📕 **71+** (Endgame) | Refinement, Meta-Teams bauen, Raids, PvP-Top-Ränge | + +--- + +> 🔖 **Letzte Aktualisierung:** Juli 2026 +> 🎮 **Spiel:** Seven Deadly Sins: Origin +> 👤 **Erstellt für:** Baka's Vault + +*Bei neuen Codes oder Meta-Änderungen diesen Guide updaten!*