@augmentcode/auggie 1.2.0-prerelease.202611021510 → 1.2.0-prerelease.202611030911
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -0
- package/auggie-v2.mjs +6 -6
- package/indexing-worker.mjs +2 -2
- package/package.json +1 -1
package/auggie-v2.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
3
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="cfe843b1-f926-554f-b3f8-561cbef2b058")}catch(e){}}();
|
|
4
4
|
import { createRequire as __createRequire } from "node:module"; import { dirname as __pathDirname } from "node:path"; import { fileURLToPath as __fileURLToPath } from "node:url"; const require = __createRequire(import.meta.url); const __dirname = __pathDirname(__fileURLToPath(import.meta.url));
|
|
5
5
|
var pFi=Object.create;var i1e=Object.defineProperty;var mFi=Object.getOwnPropertyDescriptor;var fFi=Object.getOwnPropertyNames;var hFi=Object.getPrototypeOf,gFi=Object.prototype.hasOwnProperty;var qe=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,n)=>(typeof require<"u"?require:t)[n]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var C=(e,t,n)=>()=>{if(n)throw n[0];try{return e&&(t=e(e=0)),t}catch(r){throw n=[r],r}};var G=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(n){throw t=0,n}},li=(e,t)=>{for(var n in t)i1e(e,n,{get:t[n],enumerable:!0})},grn=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of fFi(t))!gFi.call(e,i)&&i!==n&&i1e(e,i,{get:()=>t[i],enumerable:!(r=mFi(t,i))||r.enumerable});return e};var _n=(e,t,n)=>(n=e!=null?pFi(hFi(e)):{},grn(t||!e||!e.__esModule?i1e(n,"default",{value:e,enumerable:!0}):n,e)),Ui=e=>grn(i1e({},"__esModule",{value:!0}),e);import*as bFi from"node:tls";function yFi(e){let t=[],n="",r=!1;for(let i=0;i<e.length;i++){let s=e[i];if(s==='"')r=!r;else if(s==="\\"&&r){if(i++,i===e.length)return;n+=e[i]}else s===" "&&!r?n&&(t.push(n),n=""):n+=s}if(!r)return n&&t.push(n),t}function AFi(){let e=yFi(process.env.NODE_OPTIONS??"");return e===void 0||[...e,...process.execArgv].some(t=>t.split("=",1)[0]?.replaceAll("_","-")==="--use-openssl-ca")}function s1e(){if(sA!==void 0)return sA;if(process.env.AUGGIE_USE_SYSTEM_CA==="0")return sA="opted-out",sA;if(AFi())return sA="explicit-policy",sA;let{getCACertificates:e,setDefaultCACertificates:t}=bFi;if(typeof e!="function"||typeof t!="function")return sA="unsupported",sA;try{let n=e("default"),r=e("system");if(r.length===0)return sA="empty-store",sA;t([...n,...r]),sA="enabled"}catch{sA="failed"}return sA}var sA,Vqe=C(()=>{"use strict"});function iU(e,t){let n=e.toLowerCase(),r=t.toLowerCase(),i=c=>{if(c.length===0)return{matches:!0,score:0};if(c.length>r.length)return{matches:!1,score:0};let d=0,p=0,m=-1,f=0;for(let h=0;h<r.length&&d<c.length;h++)if(r[h]===c[d]){let g=h===0||/[\s\-_./:]/.test(r[h-1]);m===h-1?(f++,p-=f*5):(f=0,m>=0&&(p+=(h-m-1)*2)),g&&(p-=10),p+=h*.1,m=h,d++}return d<c.length?{matches:!1,score:0}:(c===r&&(p-=100),{matches:!0,score:p})},s=i(n);if(s.matches)return s;let o=n.match(/^(?<letters>[a-z]+)(?<digits>[0-9]+)$/),a=n.match(/^(?<digits>[0-9]+)(?<letters>[a-z]+)$/),l=o?`${o.groups?.digits??""}${o.groups?.letters??""}`:a?`${a.groups?.letters??""}${a.groups?.digits??""}`:"";if(!l)return s;let u=i(l);return u.matches?{matches:!0,score:u.score+5}:s}function uc(e,t,n){if(!t.trim())return e;let r=t.trim().split(/\s+/).filter(s=>s.length>0);if(r.length===0)return e;let i=[];for(let s of e){let o=n(s),a=0,l=!0;for(let u of r){let c=iU(u,o);if(c.matches)a+=c.score;else{l=!1;break}}l&&i.push({item:s,totalScore:a})}return i.sort((s,o)=>s.totalScore-o.totalScore),i.map(s=>s.item)}var o1e=C(()=>{"use strict"});import{spawn as EFi}from"child_process";import{readdirSync as _Fi,statSync as brn}from"fs";import{homedir as yrn}from"os";import{basename as Gqe,dirname as a1e,join as wM}from"path";function sU(e){return e.replace(/\\/g,"/")}function SFi(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function vFi(e){let t=sU(e);if(!t.includes("/"))return t;let n=t.endsWith("/"),r=t.replace(/^\/+|\/+$/g,"");if(!r)return t;let i="[\\\\/]",s=r.split("/").filter(Boolean).map(a=>SFi(a));if(s.length===0)return t;let o=s.join(i);return n&&(o+=i),o}function Arn(e){for(let t=e.length-1;t>=0;t-=1)if(xrn.has(e[t]??""))return t;return-1}function xFi(e){let t=!1,n=-1;for(let r=0;r<e.length;r+=1)e[r]==='"'&&(t=!t,t&&(n=r));return t?n:null}function Ern(e,t){return t===0||xrn.has(e[t-1]??"")}function _rn(e){let t=xFi(e);return t===null?null:t>0&&e[t-1]==="@"?Ern(e,t-1)?e.slice(t-1):null:Ern(e,t)?e.slice(t):null}function Srn(e){return e.startsWith('@"')?{rawPrefix:e.slice(2),isAtPrefix:!0,isQuotedPrefix:!0}:e.startsWith('"')?{rawPrefix:e.slice(1),isAtPrefix:!1,isQuotedPrefix:!0}:e.startsWith("@")?{rawPrefix:e.slice(1),isAtPrefix:!0,isQuotedPrefix:!1}:{rawPrefix:e,isAtPrefix:!1,isQuotedPrefix:!1}}function vrn(e,t){let n=t.isQuotedPrefix||e.includes(" "),r=t.isAtPrefix?"@":"";return n?`${`${r}"`}${e}"`:`${r}${e}`}async function CFi(e,t,n,r,i){let s=["--base-directory",e,"--max-results",String(r),"--type","f","--type","d","--follow","--hidden","--exclude",".git","--exclude",".git/*","--exclude",".git/**"];return sU(n).includes("/")&&s.push("--full-path"),n&&s.push(vFi(n)),await new Promise(o=>{if(i.aborted){o([]);return}let a=EFi(t,s,{stdio:["ignore","pipe","pipe"]}),l="",u=!1,c=p=>{u||(u=!0,i.removeEventListener("abort",d),o(p))},d=()=>{a.exitCode===null&&a.kill("SIGKILL")};i.addEventListener("abort",d,{once:!0}),a.stdout.setEncoding("utf-8"),a.stdout.on("data",p=>{l+=p}),a.on("error",()=>{c([])}),a.on("close",p=>{if(i.aborted||p!==0||!l){c([]);return}let m=l.trim().split(`
|
|
6
6
|
`).filter(Boolean),f=[];for(let h of m){let g=sU(h),b=g.endsWith("/"),A=b?g.slice(0,-1):g;A===".git"||A.startsWith(".git/")||A.includes("/.git/")||f.push({path:g,isDirectory:b})}c(f)})})}var xrn,RM,Crn=C(()=>{"use strict";o1e();xrn=new Set([" "," ",'"',"'","="]);RM=class{commands;basePath;fdPath;dollarItems;constructor(t=[],n,r=null,i=[]){this.commands=t,this.basePath=n,this.fdPath=r,this.dollarItems=i}getArgumentHint(t,n,r){if(t.length!==1||n!==0||r!==t[0]?.length)return;let i=/^\/(\S+)\s*$/u.exec(t[0]);if(!i)return;let s=this.commands.find(o=>("name"in o?o.name:o.value)===i[1]);if(!(!s||!("name"in s)||s.isAvailable?.()===!1))return s.argumentHint}async getSuggestions(t,n,r,i){let o=(t[n]||"").slice(0,r),a=this.extractAtPrefix(o);if(a){let{rawPrefix:d,isQuotedPrefix:p}=Srn(a),m=await this.getFuzzyFileSuggestions(d,{isQuotedPrefix:p,signal:i.signal});return m.length===0?null:{items:m,prefix:a}}let l=this.extractDollarPrefix(o);if(l!==null&&this.dollarItems.length>0){let d=l.slice(1),p=uc(this.dollarItems,d,m=>m.value);return p.length===0?null:{items:p,prefix:l}}if(!i.force&&o.startsWith("/")){let d=o.indexOf(" "),p=this.commands.filter(b=>!("isAvailable"in b)||b.isAvailable?.()!==!1);if(d===-1){let b=o.slice(1),A=p.map(S=>{let _="name"in S?S.name:S.value,x="argumentHint"in S&&S.argumentHint?S.argumentHint:void 0,v=S.description??"",w=x?v?`${x} \u2014 ${v}`:x:v;return{name:_,label:_,description:w||void 0}}),y=uc(A,b,S=>S.name).map(S=>({value:S.name,label:S.label,...S.description&&{description:S.description}}));return y.length===0?null:{items:y,prefix:o}}let m=o.slice(1,d),f=o.slice(d+1),h=p.find(b=>("name"in b?b.name:b.value)===m);if(!h||!("getArgumentCompletions"in h)||!h.getArgumentCompletions)return null;let g=await h.getArgumentCompletions(f);return!Array.isArray(g)||g.length===0?null:{items:g,prefix:f}}let u=this.extractPathPrefix(o,i.force??!1);if(u===null)return null;let c=this.getFileSuggestions(u);return c.length===0?null:{items:c,prefix:u}}applyCompletion(t,n,r,i,s){let o=t[n]||"",a=o.slice(0,r-s.length),l=o.slice(r),u=s.startsWith('"')||s.startsWith('@"'),c=l.startsWith('"'),d=i.value.endsWith('"'),p=u&&d&&c?l.slice(1):l;if(s.startsWith("/")&&a.trim()===""&&!s.slice(1).includes("/")){let S=`${a}/${i.value} ${p}`,_=[...t];return _[n]=S,{lines:_,cursorLine:n,cursorCol:a.length+i.value.length+2}}if(s.startsWith("$")){let _=/^[\w-]+(?:[./][\w-]+)*$/.test(i.value)?`$${i.value}`:`$"${i.value}"`,x=`${a}${_} ${p}`,v=[...t];return v[n]=x,{lines:v,cursorLine:n,cursorCol:a.length+_.length+1}}if(s.startsWith("@")){let S=i.label.endsWith("/"),_=S?"":" ",x=`${a+i.value}${_}${p}`,v=[...t];v[n]=x;let w=i.value.endsWith('"'),T=S&&w?i.value.length-1:i.value.length;return{lines:v,cursorLine:n,cursorCol:a.length+T+_.length}}let f=o.slice(0,r);if(f.includes("/")&&f.includes(" ")){let S=a+i.value+p,_=[...t];_[n]=S;let x=i.label.endsWith("/"),v=i.value.endsWith('"'),w=x&&v?i.value.length-1:i.value.length;return{lines:_,cursorLine:n,cursorCol:a.length+w}}let h=a+i.value+p,g=[...t];g[n]=h;let b=i.label.endsWith("/"),A=i.value.endsWith('"'),y=b&&A?i.value.length-1:i.value.length;return{lines:g,cursorLine:n,cursorCol:a.length+y}}extractAtPrefix(t){let n=_rn(t);if(n?.startsWith('@"'))return n;let r=Arn(t),i=r===-1?0:r+1;return t[i]==="@"?t.slice(i):null}extractDollarPrefix(t){let n=t.match(/(?:^|\s)(\$\S*)$/);return n?n[1]:null}extractPathPrefix(t,n=!1){let r=_rn(t);if(r)return r;let i=Arn(t),s=i===-1?t:t.slice(i+1);return n||s.includes("/")||s.startsWith(".")||s.startsWith("~/")||s===""&&t.endsWith(" ")?s:null}expandHomePath(t){if(t.startsWith("~/")){let n=wM(yrn(),t.slice(2));return t.endsWith("/")&&!n.endsWith("/")?`${n}/`:n}else if(t==="~")return yrn();return t}resolveScopedFuzzyQuery(t){let n=sU(t),r=n.lastIndexOf("/");if(r===-1)return null;let i=n.slice(0,r+1),s=n.slice(r+1),o;i.startsWith("~/")?o=this.expandHomePath(i):i.startsWith("/")?o=i:o=wM(this.basePath,i);try{if(!brn(o).isDirectory())return null}catch{return null}return{baseDir:o,query:s,displayBase:i}}scopedPathForDisplay(t,n){let r=sU(n);return t==="/"?`/${r}`:`${sU(t)}${r}`}getFileSuggestions(t){try{let n,r,{rawPrefix:i,isAtPrefix:s,isQuotedPrefix:o}=Srn(t),a=i;if(a.startsWith("~")&&(a=this.expandHomePath(a)),i===""||i==="./"||i==="../"||i==="~"||i==="~/"||i==="/"||s&&i==="")i.startsWith("~")||a.startsWith("/")?n=a:n=wM(this.basePath,a),r="";else if(i.endsWith("/"))i.startsWith("~")||a.startsWith("/")?n=a:n=wM(this.basePath,a),r="";else{let d=a1e(a),p=Gqe(a);i.startsWith("~")||a.startsWith("/")?n=d:n=wM(this.basePath,d),r=p}let u=_Fi(n,{withFileTypes:!0}),c=[];for(let d of u){if(!d.name.toLowerCase().startsWith(r.toLowerCase()))continue;let p=d.isDirectory();if(!p&&d.isSymbolicLink())try{let A=wM(n,d.name);p=brn(A).isDirectory()}catch{}let m,f=d.name,h=i;if(h.endsWith("/"))m=h+f;else if(h.includes("/")||h.includes("\\"))if(h.startsWith("~/")){let A=h.slice(2),y=a1e(A);m=`~/${y==="."?f:wM(y,f)}`}else if(h.startsWith("/")){let A=a1e(h);A==="/"?m=`/${f}`:m=`${A}/${f}`}else m=wM(a1e(h),f),h.startsWith("./")&&!m.startsWith("./")&&(m=`./${m}`);else h.startsWith("~")?m=`~/${f}`:m=f;m=sU(m);let g=p?`${m}/`:m,b=vrn(g,{isDirectory:p,isAtPrefix:s,isQuotedPrefix:o});c.push({value:b,label:f+(p?"/":"")})}return c.sort((d,p)=>{let m=d.value.endsWith("/"),f=p.value.endsWith("/");return m&&!f?-1:!m&&f?1:d.label.localeCompare(p.label)}),c}catch{return[]}}scoreEntry(t,n,r){let s=Gqe(t).toLowerCase(),o=n.toLowerCase(),a=0;return s===o?a=100:s.startsWith(o)?a=80:s.includes(o)?a=50:t.toLowerCase().includes(o)&&(a=30),r&&a>0&&(a+=10),a}async getFuzzyFileSuggestions(t,n){if(!this.fdPath||n.signal.aborted)return[];try{let r=this.resolveScopedFuzzyQuery(t),i=r?.baseDir??this.basePath,s=r?.query??t,o=await CFi(i,this.fdPath,s,100,n.signal);if(n.signal.aborted)return[];let a=o.map(c=>({...c,score:s?this.scoreEntry(c.path,s,c.isDirectory):1})).filter(c=>c.score>0);a.sort((c,d)=>d.score-c.score);let l=a.slice(0,20),u=[];for(let{path:c,isDirectory:d}of l){let p=d?c.slice(0,-1):c,m=r?this.scopedPathForDisplay(r.displayBase,p):p,f=Gqe(p),h=d?`${m}/`:m,g=vrn(h,{isDirectory:d,isAtPrefix:!0,isQuotedPrefix:n.isQuotedPrefix});u.push({value:g,label:f+(d?"/":""),description:m})}return u}catch{return[]}}shouldTriggerFileCompletion(t,n,r){let s=(t[n]||"").slice(0,r);return!(s.trim().startsWith("/")&&!s.trim().includes(" "))}}});var Trn,Irn,wrn,Rrn,Nrn,krn,Wqe,Orn=C(()=>{Trn=[161,161,164,164,167,168,170,170,173,174,176,180,182,186,188,191,198,198,208,208,215,216,222,225,230,230,232,234,236,237,240,240,242,243,247,250,252,252,254,254,257,257,273,273,275,275,283,283,294,295,299,299,305,307,312,312,319,322,324,324,328,331,333,333,338,339,358,359,363,363,462,462,464,464,466,466,468,468,470,470,472,472,474,474,476,476,593,593,609,609,708,708,711,711,713,715,717,717,720,720,728,731,733,733,735,735,768,879,913,929,931,937,945,961,963,969,1025,1025,1040,1103,1105,1105,8208,8208,8211,8214,8216,8217,8220,8221,8224,8226,8228,8231,8240,8240,8242,8243,8245,8245,8251,8251,8254,8254,8308,8308,8319,8319,8321,8324,8364,8364,8451,8451,8453,8453,8457,8457,8467,8467,8470,8470,8481,8482,8486,8486,8491,8491,8531,8532,8539,8542,8544,8555,8560,8569,8585,8585,8592,8601,8632,8633,8658,8658,8660,8660,8679,8679,8704,8704,8706,8707,8711,8712,8715,8715,8719,8719,8721,8721,8725,8725,8730,8730,8733,8736,8739,8739,8741,8741,8743,8748,8750,8750,8756,8759,8764,8765,8776,8776,8780,8780,8786,8786,8800,8801,8804,8807,8810,8811,8814,8815,8834,8835,8838,8839,8853,8853,8857,8857,8869,8869,8895,8895,8978,8978,9312,9449,9451,9547,9552,9587,9600,9615,9618,9621,9632,9633,9635,9641,9650,9651,9654,9655,9660,9661,9664,9665,9670,9672,9675,9675,9678,9681,9698,9701,9711,9711,9733,9734,9737,9737,9742,9743,9756,9756,9758,9758,9792,9792,9794,9794,9824,9825,9827,9829,9831,9834,9836,9837,9839,9839,9886,9887,9919,9919,9926,9933,9935,9939,9941,9953,9955,9955,9960,9961,9963,9969,9972,9972,9974,9977,9979,9980,9982,9983,10045,10045,10102,10111,11094,11097,12872,12879,57344,63743,65024,65039,65533,65533,127232,127242,127248,127277,127280,127337,127344,127373,127375,127376,127387,127404,917760,917999,983040,1048573,1048576,1114109],Irn=12288,wrn=65510,Rrn=[12288,12288,65281,65376,65504,65510],Nrn=4352,krn=262141,Wqe=[4352,4447,8986,8987,9001,9002,9193,9196,9200,9200,9203,9203,9725,9726,9748,9749,9776,9783,9800,9811,9855,9855,9866,9871,9875,9875,9889,9889,9898,9899,9917,9918,9924,9925,9934,9934,9940,9940,9962,9962,9970,9971,9973,9973,9978,9978,9981,9981,9989,9989,9994,9995,10024,10024,10060,10060,10062,10062,10067,10069,10071,10071,10133,10135,10160,10160,10175,10175,11035,11036,11088,11088,11093,11093,11904,11929,11931,12019,12032,12245,12272,12287,12289,12350,12353,12438,12441,12543,12549,12591,12593,12686,12688,12773,12783,12830,12832,12871,12880,42124,42128,42182,43360,43388,44032,55203,63744,64255,65040,65049,65072,65106,65108,65126,65128,65131,94176,94180,94192,94198,94208,101589,101631,101662,101760,101874,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,119552,119638,119648,119670,126980,126980,127183,127183,127374,127374,127377,127386,127488,127490,127504,127547,127552,127560,127568,127569,127584,127589,127744,127776,127789,127797,127799,127868,127870,127891,127904,127946,127951,127955,127968,127984,127988,127988,127992,128062,128064,128064,128066,128252,128255,128317,128331,128334,128336,128359,128378,128378,128405,128406,128420,128420,128507,128591,128640,128709,128716,128716,128720,128722,128725,128728,128732,128735,128747,128748,128756,128764,128992,129003,129008,129008,129292,129338,129340,129349,129351,129535,129648,129660,129664,129674,129678,129734,129736,129736,129741,129756,129759,129770,129775,129784,131072,196605,196608,262141]});var l1e,Mrn=C(()=>{l1e=(e,t)=>{let n=0,r=Math.floor(e.length/2)-1;for(;n<=r;){let i=Math.floor((n+r)/2),s=i*2;if(t<e[s])r=i-1;else if(t>e[s+1])n=i+1;else return!0}return!1}});function NFi(e){let t=e[0],n=e[1];for(let r=0;r<e.length;r+=2){let i=e[r],s=e[r+1];if(Prn>=i&&Prn<=s)return[i,s];s-i>n-t&&(t=i,n=s)}return[t,n]}var Prn,wFi,RFi,Drn,Brn,Lrn,Frn=C(()=>{Orn();Mrn();Prn=19968,[wFi,RFi]=NFi(Wqe);Drn=e=>e<161||e>1114109?!1:l1e(Trn,e),Brn=e=>e<Irn||e>wrn?!1:l1e(Rrn,e),Lrn=e=>e>=wFi&&e<=RFi?!0:e<Nrn||e>krn?!1:l1e(Wqe,e)});function kFi(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function $qe(e,{ambiguousAsWide:t=!1}={}){return kFi(e),Brn(e)||Lrn(e)||t&&Drn(e)?2:1}var Urn=C(()=>{Frn()});function c1e(){return sN}function OFi(e){let t=e.codePointAt(0);return t>=126976&&t<=130047||t>=8960&&t<=9215||t>=9728&&t<=10175||t>=11088&&t<=11093||e.includes("\uFE0F")||e.length>2}function Hqe(e){for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<32||n>126)return!1}return!0}function LFi(e,t){if(t<=0||e.length===0)return{text:"",width:0};if(Hqe(e)){let l=e.slice(0,t);return{text:l,width:l.length}}let n=e.includes("\x1B"),r=e.includes(" ");if(!n&&!r){let l="",u=0;for(let{segment:c}of sN.segment(e)){let d=oU(c);if(u+d>t)break;l+=c,u+=d}return{text:l,width:u}}let i="",s=0,o=0,a="";for(;o<e.length;){let l=oA(e,o);if(l){a+=l.code,o+=l.length;continue}if(e[o]===" "){if(s+3>t)break;a&&(i+=a,a=""),i+=" ",s+=3,o++;continue}let u=o;for(;u<e.length&&e[u]!==" "&&!oA(e,u);)u++;for(let{segment:c}of sN.segment(e.slice(o,u))){let d=oU(c);if(s+d>t)return{text:i,width:s};a&&(i+=a,a=""),i+=c,s+=d}o=u}return{text:i,width:s}}function Qqe(e,t,n,r,i,s){let o="\x1B[0m",a=t+r,l;return n.length>0?l=`${e}${o}${n}${o}`:l=`${e}${o}`,s?l+" ".repeat(Math.max(0,i-a)):l}function oU(e){if(MFi.test(e))return 0;if(OFi(e)&&DFi.test(e))return 2;let n=e.replace(PFi,"").codePointAt(0);if(n===void 0)return 0;if(n>=127462&&n<=127487)return 2;let r=$qe(n);if(e.length>1)for(let i of e.slice(1)){let s=i.codePointAt(0);s>=65280&&s<=65519?r+=$qe(s):(s===3635||s===3763)&&(r+=1)}return r}function Zt(e){if(e.length===0)return 0;if(Hqe(e))return e.length;let t=Ire.get(e);if(t!==void 0)return t;let n=e;if(e.includes(" ")&&(n=n.replace(/\t/g," ")),n.includes("\x1B")){let i="",s=0;for(;s<n.length;){let o=oA(n,s);if(o){s+=o.length;continue}i+=n[s],s++}n=i}let r=0;for(let{segment:i}of sN.segment(n))r+=oU(i);if(Ire.size>=BFi){let i=Ire.keys().next().value;i!==void 0&&Ire.delete(i)}return Ire.set(e,r),r}function Vrn(e){return FFi.test(e)?e.replace(UFi,t=>t==="\u0E33"?"\u0E4D\u0E32":"\u0ECD\u0EB2"):e}function oA(e,t){if(t>=e.length||e[t]!=="\x1B")return null;let n=e[t+1];if(n==="["){let r=t+2;for(;r<e.length&&!/[mGKHJ]/.test(e[r]);)r++;return r<e.length?{code:e.substring(t,r+1),length:r+1-t}:null}if(n==="]"){let r=t+2;for(;r<e.length;){if(e[r]==="\x07")return{code:e.substring(t,r+1),length:r+1-t};if(e[r]==="\x1B"&&e[r+1]==="\\")return{code:e.substring(t,r+2),length:r+2-t};r++}return null}if(n==="_"){let r=t+2;for(;r<e.length;){if(e[r]==="\x07")return{code:e.substring(t,r+1),length:r+1-t};if(e[r]==="\x1B"&&e[r+1]==="\\")return{code:e.substring(t,r+2),length:r+2-t};r++}return null}return null}function VFi(e){if(!e.startsWith("\x1B]8;"))return;let t=e.endsWith("\x07")?"\x07":"\x1B\\",n=e.slice(4,t==="\x07"?-1:-2),r=n.indexOf(";");if(r===-1)return;let i=n.slice(0,r),s=n.slice(r+1);return s?{params:i,url:s,terminator:t}:null}function GFi(e){return`\x1B]8;${e.params};${e.url}${e.terminator}`}function WFi(e){return`\x1B]8;;${e}`}function Grn(e,t){let n=0;for(;n<e.length;){let r=oA(e,n);r?(t.process(r.code),n+=r.length):n++}}function $Fi(e){let t=[],n="",r="",i=!1,s=0;for(;s<e.length;){let o=oA(e,s);if(o){r+=o.code,s+=o.length;continue}let a=e[s],l=a===" ";l!==i&&n&&(t.push(n),n=""),r&&(n+=r,r=""),i=l,n+=a,s++}return r&&(n+=r),n&&t.push(n),t}function yr(e,t){if(!e)return[""];let n=e.split(`
|
|
@@ -133,7 +133,7 @@ ${A}`),h.pop(),`{${x}}`}case"number":return isFinite(f)?String(f):t?t(f):"null";
|
|
|
133
133
|
`).join(`
|
|
134
134
|
`)}`:"",p=typeof n=="string"?n.toUpperCase():String(n??"INFO").toUpperCase();return`${t} ${p.padEnd(5)}${a} ${r}${c}${d}`})),M6i=Pm.default.format.combine(Pm.default.format.timestamp(),Pm.default.format.errors({stack:!0}),_cn(),Pm.default.format(e=>{let t=e[Ett];return t!==void 0&&e.meta_level===void 0&&(e.meta_level=t),e})(),Pm.default.format.json()),_tt=htt,Bve=!1,P6i={fallback:"The requested log file is unavailable. Logs will use the default file.",disabled:"File logging is unavailable. The session will continue without file logs.",runtime:"A logging error occurred. The session will continue, but file logs may be incomplete."},ycn=new Set,Dve=[],ftt=!1;Att=class extends Pm.default.transports.Stream{destination;constructor(t,n){let r=v6i(t,{flags:"a",mode:384});super({stream:r,format:n}),this.destination=r,r.on("error",()=>{this.silent=!0,Stt()})}_final(t){if(this.destination.destroyed||this.destination.writableFinished){t();return}this.destination.end(()=>t())}close(){this.destination.end()}};tt=new Proxy({},{get(e,t,n){return wU||__(),Reflect.get(wU,t,n)}});Fve="public",xtt={visibility:Fve},Acn=500;B6i=120,L6i=200});var $a,NU=C(()=>{"use strict";$a={SHARED:{EXTENSION_STARTUP:"vscode_extension_started_up",EXTENSION_ACTIVATED:"extension_activated",NOTIFICATION_DISPLAYED:"notification_displayed",NOTIFICATION_DISMISSED:"notification_dismissed",NOTIFICATION_ACTION_CLICKED:"notification_action_clicked",SIGNIN_SCREEN_DISPLAYED:"signin_screen_displayed",SIGNIN_APP_DISPLAYED:"signin_app_displayed",CHAT_PANEL_OPENED:"chat_panel_opened",CHAT_APP_DISPLAYED:"chat_app_displayed",REPOSITORY_BLOCKED_APP_DISPLAYED:"repository_blocked_app_displayed",INDEXING_STARTED:"indexing_started",INDEXING_COMPLETED:"indexing_completed",EXPERIMENT_VIEWED:"experiment_viewed",MESSAGE_SEND_ERROR_DISPLAYED:"message_send_error_displayed",PROMPT_ENHANCE_STARTED:"prompt_enhance_started",PROMPT_ENHANCE_SUCCEEDED:"prompt_enhance_succeeded",PROMPT_ENHANCE_FAILED:"prompt_enhance_failed",PROMPT_ENHANCE_COMPLETED:"prompt_enhancer_called",FILE_ATTACHMENT_STARTED:"file_attachment_started",FILE_ATTACHMENT_SUCCEEDED:"file_attachment_succeeded",FILE_ATTACHMENT_FAILED:"file_attachment_failed",FILE_ATTACHMENT_BUNDLE_COMPLETED:"file_attachment_bundle_completed",ASK_MODE_ACTIVATED:"ask_mode_activated",ASK_MODE_DEACTIVATED:"ask_mode_deactivated",ASK_MODE_SUBMITTED:"ask_mode_submitted",AGENT_MODE_ACTIVATED:"agent_mode_activated",AGENT_MODE_DEACTIVATED:"agent_mode_deactivated",SUB_AGENT_VIEW_CLICKED:"sub_agent_view_clicked",SUB_AGENT_EDIT_CLICKED:"sub_agent_edit_clicked",SUB_AGENT_DELETE_CLICKED:"sub_agent_delete_clicked",SUB_AGENTS_COMMAND_INVOKED:"sub_agents_command_invoked",SUB_AGENT_CREATED:"sub_agent_created",SUB_AGENT_STARTED:"sub_agent_started",SUB_AGENT_COMPLETED:"sub_agent_completed",SUB_AGENT_FAILED:"sub_agent_failed",STR_REPLACE_DIFF_FALLBACK:"str_replace_diff_fallback",MCP_SERVER_INITIALIZATION_FAILED:"mcp_server_initialization_failed",SESSION_SHARE_LINK_GENERATED:"session_share_link_generated",SETTING_CHANGED:"setting_changed",HIERARCHICAL_RULES_USED:"hierarchical_rules_used",CUSTOM_COMMAND_SELECTED:"custom_command_selected"},CLI:{STARTUP_COMPLETED:"cli_startup_completed",AGENTLOOP_COMPLETED:"agentloop_completed",SLASH_COMMAND_USED:"slash_command_used",LOGIN_STARTED:"login_started",LOGIN_SUCCESS:"login_success",LOGIN_FAILED:"login_failed",LOGOUT_SUCCESS:"logout_success",COMMAND_USED:"cli_command_used",UPGRADE_SUCCESS:"upgrade_success",UPGRADE_FAILED:"upgrade_failed",TASK_MANAGER_OPENED:"task_manager_opened",TASKS_UPDATED:"tasks_updated",DIFF_VIEWER_HOTKEY_USED:"cli_diff_viewer_hotkey_used",INDEXING_CONFIRMATION:"indexing_confirmation",INDEXING_CONFIRMATION_DISPLAYED:"indexing_confirmation_displayed",ONBOARDING_STARTED:"onboarding_started",ONBOARDING_EXITED:"onboarding_exited",ONBOARDING_COMPLETED:"onboarding_completed",ONBOARDING_SKIPPED:"onboarding_skipped",QUEUE_MODE_ENTERED:"queue_mode_entered",QUEUE_MODE_EXITED:"queue_mode_exited",VIM_MODE_ACTIVATED:"vim_mode_activated",VIM_MODE_DEACTIVATED:"vim_mode_deactivated",QUEUE_MESSAGE_ADDED:"queue_message_added",QUEUE_MESSAGE_REMOVED:"queue_message_removed",QUEUE_MESSAGE_EDITED:"queue_message_edited",QUEUE_MESSAGE_EXECUTED:"queue_message_executed",QUEUE_MESSAGE_FAILED:"queue_message_failed",QUEUE_MESSAGE_REORDERED:"queue_message_reordered",QUEUE_PAUSED:"queue_paused",QUEUE_RESUMED:"queue_resumed",QUEUE_CLEARED:"queue_cleared",QUEUE_FULL_WARNING:"queue_full_warning",QUEUE_KEYBOARD_SHORTCUT_USED:"queue_keyboard_shortcut_used",ACP_CONNECTION_ESTABLISHED:"cli_acp_connection_established",PLAN_MODE_SUBMITTED:"cli_plan_mode_submitted",PROMPT_STASHED:"cli_prompt_stashed",PROMPT_RECALLED:"cli_prompt_recalled",REVERSE_SEARCH_ACTIVATED:"cli_reverse_search_activated",REVERSE_SEARCH_SELECTED:"cli_reverse_search_selected",RECOMMENDED_MARKETPLACES_DISPLAYED:"cli_recommended_marketplaces_displayed",RECOMMENDED_MARKETPLACES_ACTION:"cli_recommended_marketplaces_action"}}});var tT,Tcn,I7=C(()=>{"use strict";tT="hermes:segment-analytics:track",Tcn="hermes:segment-analytics:identify"});var Kd={};li(Kd,{HasPropertyKey:()=>Uve,IsArray:()=>zd,IsAsyncIterator:()=>Ctt,IsBigInt:()=>lie,IsBoolean:()=>nT,IsDate:()=>kU,IsFunction:()=>Ttt,IsIterator:()=>Itt,IsNull:()=>wtt,IsNumber:()=>Ty,IsObject:()=>tl,IsRegExp:()=>cie,IsString:()=>jl,IsSymbol:()=>Rtt,IsUint8Array:()=>gN,IsUndefined:()=>Xd});function Uve(e,t){return t in e}function Ctt(e){return tl(e)&&!zd(e)&&!gN(e)&&Symbol.asyncIterator in e}function zd(e){return Array.isArray(e)}function lie(e){return typeof e=="bigint"}function nT(e){return typeof e=="boolean"}function kU(e){return e instanceof globalThis.Date}function Ttt(e){return typeof e=="function"}function Itt(e){return tl(e)&&!zd(e)&&!gN(e)&&Symbol.iterator in e}function wtt(e){return e===null}function Ty(e){return typeof e=="number"}function tl(e){return typeof e=="object"&&e!==null}function cie(e){return e instanceof globalThis.RegExp}function jl(e){return typeof e=="string"}function Rtt(e){return typeof e=="symbol"}function gN(e){return e instanceof globalThis.Uint8Array}function Xd(e){return e===void 0}var Yg=C(()=>{});function V6i(e){return e.map(t=>Vve(t))}function G6i(e){return new Date(e.getTime())}function W6i(e){return new Uint8Array(e)}function $6i(e){return new RegExp(e.source,e.flags)}function Q6i(e){let t={};for(let n of Object.getOwnPropertyNames(e))t[n]=Vve(e[n]);for(let n of Object.getOwnPropertySymbols(e))t[n]=Vve(e[n]);return t}function Vve(e){return zd(e)?V6i(e):kU(e)?G6i(e):gN(e)?W6i(e):cie(e)?$6i(e):tl(e)?Q6i(e):e}function pc(e){return Vve(e)}var Iy=C(()=>{Yg()});function Icn(e){return e.map(t=>fv(t))}function fv(e,t){return t===void 0?pc(e):pc({...t,...e})}var Gve=C(()=>{Iy()});var Wve=C(()=>{Gve();Iy()});function uie(e){return ps(e)&&globalThis.Symbol.asyncIterator in e}function die(e){return ps(e)&&globalThis.Symbol.iterator in e}function $ve(e){return ps(e)&&(globalThis.Object.getPrototypeOf(e)===Object.prototype||globalThis.Object.getPrototypeOf(e)===null)}function Y6i(e){return ps(e)&&!wi(e)&&iT(e.constructor)&&e.constructor.name!=="Object"}function pie(e){return e instanceof globalThis.Promise}function Gh(e){return e instanceof Date&&globalThis.Number.isFinite(e.getTime())}function Ntt(e){return e instanceof globalThis.Map}function ktt(e){return e instanceof globalThis.Set}function H6i(e){return e instanceof globalThis.RegExp}function lA(e){return globalThis.ArrayBuffer.isView(e)}function Z6i(e){return e instanceof globalThis.Int8Array}function OU(e){return e instanceof globalThis.Uint8Array}function j6i(e){return e instanceof globalThis.Uint8ClampedArray}function z6i(e){return e instanceof globalThis.Int16Array}function X6i(e){return e instanceof globalThis.Uint16Array}function K6i(e){return e instanceof globalThis.Int32Array}function q6i(e){return e instanceof globalThis.Uint32Array}function J6i(e){return e instanceof globalThis.Float32Array}function e8i(e){return e instanceof globalThis.Float64Array}function t8i(e){return e instanceof globalThis.BigInt64Array}function n8i(e){return e instanceof globalThis.BigUint64Array}function Vi(e,t){return t in e}function ps(e){return e!==null&&typeof e=="object"}function wi(e){return globalThis.Array.isArray(e)&&!globalThis.ArrayBuffer.isView(e)}function Nc(e){return e===void 0}function rT(e){return e===null}function hv(e){return typeof e=="boolean"}function pi(e){return typeof e=="number"}function mie(e){return globalThis.Number.isInteger(e)}function Dm(e){return typeof e=="bigint"}function Lo(e){return typeof e=="string"}function iT(e){return typeof e=="function"}function sT(e){return typeof e=="symbol"}function wy(e){return Dm(e)||hv(e)||rT(e)||pi(e)||Lo(e)||sT(e)||Nc(e)}var Qve=C(()=>{});var Ip=C(()=>{Qve()});var mc,fie=C(()=>{Ip();(function(e){e.InstanceMode="default",e.ExactOptionalPropertyTypes=!1,e.AllowArrayObject=!1,e.AllowNaN=!1,e.AllowNullVoid=!1;function t(o,a){return e.ExactOptionalPropertyTypes?a in o:o[a]!==void 0}e.IsExactOptionalProperty=t;function n(o){let a=ps(o);return e.AllowArrayObject?a:a&&!wi(o)}e.IsObjectLike=n;function r(o){return n(o)&&!(o instanceof Date)&&!(o instanceof Uint8Array)}e.IsRecordLike=r;function i(o){return e.AllowNaN?pi(o):Number.isFinite(o)}e.IsNumberLike=i;function s(o){let a=Nc(o);return e.AllowNullVoid?a||o===null:a}e.IsVoidLike=s})(mc||(mc={}))});function r8i(e){return globalThis.Object.freeze(e).map(t=>hie(t))}function i8i(e){let t={};for(let n of Object.getOwnPropertyNames(e))t[n]=hie(e[n]);for(let n of Object.getOwnPropertySymbols(e))t[n]=hie(e[n]);return globalThis.Object.freeze(t)}function hie(e){return zd(e)?r8i(e):kU(e)?e:gN(e)?e:cie(e)?e:tl(e)?i8i(e):e}var wcn=C(()=>{Yg()});function un(e,t){let n=t!==void 0?{...t,...e}:e;switch(mc.InstanceMode){case"freeze":return hie(n);case"clone":return pc(n);default:return n}}var Pi=C(()=>{fie();wcn();Iy()});var bN=C(()=>{Pi()});var vi,Ott=C(()=>{vi=class extends Error{constructor(t){super(t)}}});var Vc=C(()=>{Ott()});var kc,cA,Jp,Wh,on,gie=C(()=>{kc=Symbol.for("TypeBox.Transform"),cA=Symbol.for("TypeBox.Readonly"),Jp=Symbol.for("TypeBox.Optional"),Wh=Symbol.for("TypeBox.Hint"),on=Symbol.for("TypeBox.Kind")});var Fr=C(()=>{gie()});var $h={};li($h,{IsAny:()=>Yve,IsArgument:()=>Hve,IsArray:()=>S_,IsAsyncIterator:()=>jM,IsBigInt:()=>zM,IsBoolean:()=>oT,IsComputed:()=>v_,IsConstructor:()=>x_,IsDate:()=>Rcn,IsFunction:()=>C_,IsImport:()=>s8i,IsInteger:()=>T_,IsIntersect:()=>gu,IsIterator:()=>XM,IsKind:()=>AN,IsKindOf:()=>_o,IsLiteral:()=>Lf,IsLiteralBoolean:()=>c8i,IsLiteralNumber:()=>l8i,IsLiteralString:()=>a8i,IsLiteralValue:()=>bie,IsMappedKey:()=>Ry,IsMappedResult:()=>Oc,IsNever:()=>yN,IsNot:()=>Ncn,IsNull:()=>w7,IsNumber:()=>I_,IsObject:()=>md,IsOptional:()=>Hg,IsPromise:()=>KM,IsProperties:()=>o8i,IsReadonly:()=>MU,IsRecord:()=>qM,IsRecursive:()=>u8i,IsRef:()=>Yu,IsRegExp:()=>Zve,IsSchema:()=>Gc,IsString:()=>aT,IsSymbol:()=>R7,IsTemplateLiteral:()=>Ny,IsThis:()=>kcn,IsTransform:()=>fa,IsTuple:()=>ky,IsUint8Array:()=>Ocn,IsUndefined:()=>lT,IsUnion:()=>Xo,IsUnknown:()=>Mcn,IsUnsafe:()=>Pcn,IsVoid:()=>Dcn});function MU(e){return tl(e)&&e[cA]==="Readonly"}function Hg(e){return tl(e)&&e[Jp]==="Optional"}function Yve(e){return _o(e,"Any")}function Hve(e){return _o(e,"Argument")}function S_(e){return _o(e,"Array")}function jM(e){return _o(e,"AsyncIterator")}function zM(e){return _o(e,"BigInt")}function oT(e){return _o(e,"Boolean")}function v_(e){return _o(e,"Computed")}function x_(e){return _o(e,"Constructor")}function Rcn(e){return _o(e,"Date")}function C_(e){return _o(e,"Function")}function s8i(e){return _o(e,"Import")}function T_(e){return _o(e,"Integer")}function o8i(e){return tl(e)}function gu(e){return _o(e,"Intersect")}function XM(e){return _o(e,"Iterator")}function _o(e,t){return tl(e)&&on in e&&e[on]===t}function a8i(e){return Lf(e)&&jl(e.const)}function l8i(e){return Lf(e)&&Ty(e.const)}function c8i(e){return Lf(e)&&nT(e.const)}function bie(e){return nT(e)||Ty(e)||jl(e)}function Lf(e){return _o(e,"Literal")}function Ry(e){return _o(e,"MappedKey")}function Oc(e){return _o(e,"MappedResult")}function yN(e){return _o(e,"Never")}function Ncn(e){return _o(e,"Not")}function w7(e){return _o(e,"Null")}function I_(e){return _o(e,"Number")}function md(e){return _o(e,"Object")}function KM(e){return _o(e,"Promise")}function qM(e){return _o(e,"Record")}function u8i(e){return tl(e)&&Wh in e&&e[Wh]==="Recursive"}function Yu(e){return _o(e,"Ref")}function Zve(e){return _o(e,"RegExp")}function aT(e){return _o(e,"String")}function R7(e){return _o(e,"Symbol")}function Ny(e){return _o(e,"TemplateLiteral")}function kcn(e){return _o(e,"This")}function fa(e){return tl(e)&&kc in e}function ky(e){return _o(e,"Tuple")}function lT(e){return _o(e,"Undefined")}function Xo(e){return _o(e,"Union")}function Ocn(e){return _o(e,"Uint8Array")}function Mcn(e){return _o(e,"Unknown")}function Pcn(e){return _o(e,"Unsafe")}function Dcn(e){return _o(e,"Void")}function AN(e){return tl(e)&&on in e&&jl(e[on])}function Gc(e){return Yve(e)||Hve(e)||S_(e)||oT(e)||zM(e)||jM(e)||v_(e)||x_(e)||Rcn(e)||C_(e)||T_(e)||gu(e)||XM(e)||Lf(e)||Ry(e)||Oc(e)||yN(e)||Ncn(e)||w7(e)||I_(e)||md(e)||KM(e)||qM(e)||Yu(e)||Zve(e)||aT(e)||R7(e)||Ny(e)||kcn(e)||ky(e)||lT(e)||Xo(e)||Ocn(e)||Mcn(e)||Pcn(e)||Dcn(e)||AN(e)}var Ks=C(()=>{Yg();Fr()});var Pt={};li(Pt,{IsAny:()=>Ucn,IsArgument:()=>Vcn,IsArray:()=>Gcn,IsAsyncIterator:()=>Wcn,IsBigInt:()=>$cn,IsBoolean:()=>Qcn,IsComputed:()=>Ycn,IsConstructor:()=>Hcn,IsDate:()=>Zcn,IsFunction:()=>jcn,IsImport:()=>g8i,IsInteger:()=>zcn,IsIntersect:()=>Xcn,IsIterator:()=>Kcn,IsKind:()=>vun,IsKindOf:()=>So,IsLiteral:()=>Aie,IsLiteralBoolean:()=>b8i,IsLiteralNumber:()=>Jcn,IsLiteralString:()=>qcn,IsLiteralValue:()=>eun,IsMappedKey:()=>tun,IsMappedResult:()=>nun,IsNever:()=>run,IsNot:()=>iun,IsNull:()=>sun,IsNumber:()=>oun,IsObject:()=>aun,IsOptional:()=>h8i,IsPromise:()=>lun,IsProperties:()=>jve,IsReadonly:()=>f8i,IsRecord:()=>cun,IsRecursive:()=>y8i,IsRef:()=>uun,IsRegExp:()=>dun,IsSchema:()=>Wc,IsString:()=>pun,IsSymbol:()=>mun,IsTemplateLiteral:()=>fun,IsThis:()=>hun,IsTransform:()=>gun,IsTuple:()=>bun,IsUint8Array:()=>Aun,IsUndefined:()=>yun,IsUnion:()=>Btt,IsUnionLiteral:()=>A8i,IsUnknown:()=>Eun,IsUnsafe:()=>_un,IsVoid:()=>Sun,TypeGuardUnknownTypeError:()=>Mtt});function Bcn(e){try{return new RegExp(e),!0}catch{return!1}}function Ptt(e){if(!jl(e))return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n>=7&&n<=13||n===27||n===127)return!1}return!0}function Lcn(e){return Dtt(e)||Wc(e)}function yie(e){return Xd(e)||lie(e)}function fc(e){return Xd(e)||Ty(e)}function Dtt(e){return Xd(e)||nT(e)}function Nl(e){return Xd(e)||jl(e)}function p8i(e){return Xd(e)||jl(e)&&Ptt(e)&&Bcn(e)}function m8i(e){return Xd(e)||jl(e)&&Ptt(e)}function Fcn(e){return Xd(e)||Wc(e)}function f8i(e){return tl(e)&&e[cA]==="Readonly"}function h8i(e){return tl(e)&&e[Jp]==="Optional"}function Ucn(e){return So(e,"Any")&&Nl(e.$id)}function Vcn(e){return So(e,"Argument")&&Ty(e.index)}function Gcn(e){return So(e,"Array")&&e.type==="array"&&Nl(e.$id)&&Wc(e.items)&&fc(e.minItems)&&fc(e.maxItems)&&Dtt(e.uniqueItems)&&Fcn(e.contains)&&fc(e.minContains)&&fc(e.maxContains)}function Wcn(e){return So(e,"AsyncIterator")&&e.type==="AsyncIterator"&&Nl(e.$id)&&Wc(e.items)}function $cn(e){return So(e,"BigInt")&&e.type==="bigint"&&Nl(e.$id)&&yie(e.exclusiveMaximum)&&yie(e.exclusiveMinimum)&&yie(e.maximum)&&yie(e.minimum)&&yie(e.multipleOf)}function Qcn(e){return So(e,"Boolean")&&e.type==="boolean"&&Nl(e.$id)}function Ycn(e){return So(e,"Computed")&&jl(e.target)&&zd(e.parameters)&&e.parameters.every(t=>Wc(t))}function Hcn(e){return So(e,"Constructor")&&e.type==="Constructor"&&Nl(e.$id)&&zd(e.parameters)&&e.parameters.every(t=>Wc(t))&&Wc(e.returns)}function Zcn(e){return So(e,"Date")&&e.type==="Date"&&Nl(e.$id)&&fc(e.exclusiveMaximumTimestamp)&&fc(e.exclusiveMinimumTimestamp)&&fc(e.maximumTimestamp)&&fc(e.minimumTimestamp)&&fc(e.multipleOfTimestamp)}function jcn(e){return So(e,"Function")&&e.type==="Function"&&Nl(e.$id)&&zd(e.parameters)&&e.parameters.every(t=>Wc(t))&&Wc(e.returns)}function g8i(e){return So(e,"Import")&&Uve(e,"$defs")&&tl(e.$defs)&&jve(e.$defs)&&Uve(e,"$ref")&&jl(e.$ref)&&e.$ref in e.$defs}function zcn(e){return So(e,"Integer")&&e.type==="integer"&&Nl(e.$id)&&fc(e.exclusiveMaximum)&&fc(e.exclusiveMinimum)&&fc(e.maximum)&&fc(e.minimum)&&fc(e.multipleOf)}function jve(e){return tl(e)&&Object.entries(e).every(([t,n])=>Ptt(t)&&Wc(n))}function Xcn(e){return So(e,"Intersect")&&!(jl(e.type)&&e.type!=="object")&&zd(e.allOf)&&e.allOf.every(t=>Wc(t)&&!gun(t))&&Nl(e.type)&&(Dtt(e.unevaluatedProperties)||Fcn(e.unevaluatedProperties))&&Nl(e.$id)}function Kcn(e){return So(e,"Iterator")&&e.type==="Iterator"&&Nl(e.$id)&&Wc(e.items)}function So(e,t){return tl(e)&&on in e&&e[on]===t}function qcn(e){return Aie(e)&&jl(e.const)}function Jcn(e){return Aie(e)&&Ty(e.const)}function b8i(e){return Aie(e)&&nT(e.const)}function Aie(e){return So(e,"Literal")&&Nl(e.$id)&&eun(e.const)}function eun(e){return nT(e)||Ty(e)||jl(e)}function tun(e){return So(e,"MappedKey")&&zd(e.keys)&&e.keys.every(t=>Ty(t)||jl(t))}function nun(e){return So(e,"MappedResult")&&jve(e.properties)}function run(e){return So(e,"Never")&&tl(e.not)&&Object.getOwnPropertyNames(e.not).length===0}function iun(e){return So(e,"Not")&&Wc(e.not)}function sun(e){return So(e,"Null")&&e.type==="null"&&Nl(e.$id)}function oun(e){return So(e,"Number")&&e.type==="number"&&Nl(e.$id)&&fc(e.exclusiveMaximum)&&fc(e.exclusiveMinimum)&&fc(e.maximum)&&fc(e.minimum)&&fc(e.multipleOf)}function aun(e){return So(e,"Object")&&e.type==="object"&&Nl(e.$id)&&jve(e.properties)&&Lcn(e.additionalProperties)&&fc(e.minProperties)&&fc(e.maxProperties)}function lun(e){return So(e,"Promise")&&e.type==="Promise"&&Nl(e.$id)&&Wc(e.item)}function cun(e){return So(e,"Record")&&e.type==="object"&&Nl(e.$id)&&Lcn(e.additionalProperties)&&tl(e.patternProperties)&&(t=>{let n=Object.getOwnPropertyNames(t.patternProperties);return n.length===1&&Bcn(n[0])&&tl(t.patternProperties)&&Wc(t.patternProperties[n[0]])})(e)}function y8i(e){return tl(e)&&Wh in e&&e[Wh]==="Recursive"}function uun(e){return So(e,"Ref")&&Nl(e.$id)&&jl(e.$ref)}function dun(e){return So(e,"RegExp")&&Nl(e.$id)&&jl(e.source)&&jl(e.flags)&&fc(e.maxLength)&&fc(e.minLength)}function pun(e){return So(e,"String")&&e.type==="string"&&Nl(e.$id)&&fc(e.minLength)&&fc(e.maxLength)&&p8i(e.pattern)&&m8i(e.format)}function mun(e){return So(e,"Symbol")&&e.type==="symbol"&&Nl(e.$id)}function fun(e){return So(e,"TemplateLiteral")&&e.type==="string"&&jl(e.pattern)&&e.pattern[0]==="^"&&e.pattern[e.pattern.length-1]==="$"}function hun(e){return So(e,"This")&&Nl(e.$id)&&jl(e.$ref)}function gun(e){return tl(e)&&kc in e}function bun(e){return So(e,"Tuple")&&e.type==="array"&&Nl(e.$id)&&Ty(e.minItems)&&Ty(e.maxItems)&&e.minItems===e.maxItems&&(Xd(e.items)&&Xd(e.additionalItems)&&e.minItems===0||zd(e.items)&&e.items.every(t=>Wc(t)))}function yun(e){return So(e,"Undefined")&&e.type==="undefined"&&Nl(e.$id)}function A8i(e){return Btt(e)&&e.anyOf.every(t=>qcn(t)||Jcn(t))}function Btt(e){return So(e,"Union")&&Nl(e.$id)&&tl(e)&&zd(e.anyOf)&&e.anyOf.every(t=>Wc(t))}function Aun(e){return So(e,"Uint8Array")&&e.type==="Uint8Array"&&Nl(e.$id)&&fc(e.minByteLength)&&fc(e.maxByteLength)}function Eun(e){return So(e,"Unknown")&&Nl(e.$id)}function _un(e){return So(e,"Unsafe")}function Sun(e){return So(e,"Void")&&e.type==="void"&&Nl(e.$id)}function vun(e){return tl(e)&&on in e&&jl(e[on])&&!d8i.includes(e[on])}function Wc(e){return tl(e)&&(Ucn(e)||Vcn(e)||Gcn(e)||Qcn(e)||$cn(e)||Wcn(e)||Ycn(e)||Hcn(e)||Zcn(e)||jcn(e)||zcn(e)||Xcn(e)||Kcn(e)||Aie(e)||tun(e)||nun(e)||run(e)||iun(e)||sun(e)||oun(e)||aun(e)||lun(e)||cun(e)||uun(e)||dun(e)||pun(e)||mun(e)||fun(e)||hun(e)||bun(e)||yun(e)||Btt(e)||Aun(e)||Eun(e)||_un(e)||Sun(e)||vun(e))}var Mtt,d8i,Ltt=C(()=>{Yg();Fr();Vc();Mtt=class extends vi{},d8i=["Argument","Any","Array","AsyncIterator","BigInt","Boolean","Computed","Constructor","Date","Enum","Function","Integer","Intersect","Iterator","Literal","MappedKey","MappedResult","Not","Null","Number","Object","Promise","Record","Ref","RegExp","String","Symbol","TemplateLiteral","This","Tuple","Undefined","Union","Uint8Array","Unknown","Void"]});var zve=C(()=>{Ks();Ltt();Yg()});function xun(e){return(parseInt(e)+1).toString()}var Cun=C(()=>{});var Ftt=C(()=>{Cun()});var Eie,PU,_ie,Utt,Tun,cT,uT,Xve,Iun=C(()=>{Eie="(true|false)",PU="(0|[1-9][0-9]*)",_ie="(.*)",Utt="(?!.*)",Tun=`^${Eie}$`,cT=`^${PU}$`,uT=`^${_ie}$`,Xve=`^${Utt}$`});var N7=C(()=>{Iun()});var Qh={};li(Qh,{Clear:()=>_8i,Delete:()=>S8i,Entries:()=>E8i,Get:()=>C8i,Has:()=>v8i,Set:()=>x8i});function E8i(){return new Map(k7)}function _8i(){return k7.clear()}function S8i(e){return k7.delete(e)}function v8i(e){return k7.has(e)}function x8i(e,t){k7.set(e,t)}function C8i(e){return k7.get(e)}var k7,wun=C(()=>{k7=new Map});var wp={};li(wp,{Clear:()=>I8i,Delete:()=>w8i,Entries:()=>T8i,Get:()=>k8i,Has:()=>R8i,Set:()=>N8i});function T8i(){return new Map(O7)}function I8i(){return O7.clear()}function w8i(e){return O7.delete(e)}function R8i(e){return O7.has(e)}function N8i(e,t){O7.set(e,t)}function k8i(e){return O7.get(e)}var O7,Run=C(()=>{O7=new Map});var JM=C(()=>{wun();Run()});function Sie(e,t){return e.includes(t)}function Nun(e,t){return e.every(n=>Sie(t,n))}function Kve(e){return[...new Set(e)]}function Vtt(e,t){return e.filter(n=>t.includes(n))}function kun(e,t){return[...e,...t]}function Oun(e,t){return e.filter(n=>!t.includes(n))}function O8i(e,t){return e.reduce((n,r)=>Vtt(n,r),t)}function qve(e){return e.length===1?e[0]:e.length>1?O8i(e.slice(1),e[0]):[]}function Jve(e){let t=[];for(let n of e)t.push(...n);return t}var Mun=C(()=>{});var M7=C(()=>{Mun()});function Oy(e){return un({[on]:"Any"},e)}var Pun=C(()=>{bN();Fr()});var DU=C(()=>{Pun()});function uA(e,t){return un({[on]:"Array",type:"array",items:e},t)}var Dun=C(()=>{Pi();Fr()});var BU=C(()=>{Dun()});function EN(e){return un({[on]:"Argument",index:e})}var Bun=C(()=>{Pi();Fr()});var vie=C(()=>{Bun()});function w_(e,t){return un({[on]:"AsyncIterator",type:"AsyncIterator",items:e},t)}var Lun=C(()=>{Fr();Pi()});var LU=C(()=>{Lun()});function hc(e,t,n){return un({[on]:"Computed",target:e,parameters:t},n)}var Fun=C(()=>{bN();gie()});var eP=C(()=>{Fun()});function M8i(e,t){let{[t]:n,...r}=e;return r}function bu(e,t){return t.reduce((n,r)=>M8i(n,r),e)}var exe=C(()=>{});var dT=C(()=>{exe()});function Gi(e){return un({[on]:"Never",not:{}},e)}var Uun=C(()=>{Pi();Fr()});var fd=C(()=>{Uun()});function Vun(e){return un({[on]:"MappedKey",keys:e})}var Gun=C(()=>{Pi();Fr()});function Ko(e){return un({[on]:"MappedResult",properties:e})}var Gtt=C(()=>{Pi();Fr()});function R_(e,t,n){return un({[on]:"Constructor",type:"Constructor",parameters:e,returns:t},n)}var Wun=C(()=>{Pi();Fr()});var FU=C(()=>{Wun()});function Yh(e,t,n){return un({[on]:"Function",type:"Function",parameters:e,returns:t},n)}var $un=C(()=>{Pi();Fr()});var _N=C(()=>{$un()});function xie(e,t){return un({[on]:"Union",anyOf:e},t)}var Wtt=C(()=>{Pi();Fr()});function P8i(e){return e.some(t=>Hg(t))}function Qun(e){return e.map(t=>Hg(t)?D8i(t):t)}function D8i(e){return bu(e,[Jp])}function B8i(e,t){return P8i(e)?hd(xie(Qun(e),t)):xie(Qun(e),t)}function N_(e,t){return e.length===1?un(e[0],t):e.length===0?Gi(t):B8i(e,t)}var Yun=C(()=>{Pi();Fr();dT();fd();gv();Wtt();Ks()});var Hun=C(()=>{});function qs(e,t){return e.length===0?Gi(t):e.length===1?un(e[0],t):xie(e,t)}var Zun=C(()=>{fd();Pi();Wtt()});var Hu=C(()=>{Yun();Hun();Zun()});function L8i(e){return e.replace(/\\\$/g,"$").replace(/\\\*/g,"*").replace(/\\\^/g,"^").replace(/\\\|/g,"|").replace(/\\\(/g,"(").replace(/\\\)/g,")")}function $tt(e,t,n){return e[t]===n&&e.charCodeAt(t-1)!==92}function SN(e,t){return $tt(e,t,"(")}function Cie(e,t){return $tt(e,t,")")}function jun(e,t){return $tt(e,t,"|")}function F8i(e){if(!(SN(e,0)&&Cie(e,e.length-1)))return!1;let t=0;for(let n=0;n<e.length;n++)if(SN(e,n)&&(t+=1),Cie(e,n)&&(t-=1),t===0&&n!==e.length-1)return!1;return!0}function U8i(e){return e.slice(1,e.length-1)}function V8i(e){let t=0;for(let n=0;n<e.length;n++)if(SN(e,n)&&(t+=1),Cie(e,n)&&(t-=1),jun(e,n)&&t===0)return!0;return!1}function G8i(e){for(let t=0;t<e.length;t++)if(SN(e,t))return!0;return!1}function W8i(e){let[t,n]=[0,0],r=[];for(let s=0;s<e.length;s++)if(SN(e,s)&&(t+=1),Cie(e,s)&&(t-=1),jun(e,s)&&t===0){let o=e.slice(n,s);o.length>0&&r.push(tP(o)),n=s+1}let i=e.slice(n);return i.length>0&&r.push(tP(i)),r.length===0?{type:"const",const:""}:r.length===1?r[0]:{type:"or",expr:r}}function $8i(e){function t(i,s){if(!SN(i,s))throw new P7("TemplateLiteralParser: Index must point to open parens");let o=0;for(let a=s;a<i.length;a++)if(SN(i,a)&&(o+=1),Cie(i,a)&&(o-=1),o===0)return[s,a];throw new P7("TemplateLiteralParser: Unclosed group parens in expression")}function n(i,s){for(let o=s;o<i.length;o++)if(SN(i,o))return[s,o];return[s,i.length]}let r=[];for(let i=0;i<e.length;i++)if(SN(e,i)){let[s,o]=t(e,i),a=e.slice(s,o+1);r.push(tP(a)),i=o}else{let[s,o]=n(e,i),a=e.slice(s,o);a.length>0&&r.push(tP(a)),i=o-1}return r.length===0?{type:"const",const:""}:r.length===1?r[0]:{type:"and",expr:r}}function tP(e){return F8i(e)?tP(U8i(e)):V8i(e)?W8i(e):G8i(e)?$8i(e):{type:"const",const:L8i(e)}}function nP(e){return tP(e.slice(1,e.length-1))}var P7,txe=C(()=>{Vc();P7=class extends vi{}});function Q8i(e){return e.type==="or"&&e.expr.length===2&&e.expr[0].type==="const"&&e.expr[0].const==="0"&&e.expr[1].type==="const"&&e.expr[1].const==="[1-9][0-9]*"}function Y8i(e){return e.type==="or"&&e.expr.length===2&&e.expr[0].type==="const"&&e.expr[0].const==="true"&&e.expr[1].type==="const"&&e.expr[1].const==="false"}function H8i(e){return e.type==="const"&&e.const===".*"}function vN(e){return Q8i(e)||H8i(e)?!1:Y8i(e)?!0:e.type==="and"?e.expr.every(t=>vN(t)):e.type==="or"?e.expr.every(t=>vN(t)):e.type==="const"?!0:(()=>{throw new Tie("Unknown expression type")})()}function D7(e){let t=nP(e.pattern);return vN(t)}var Tie,Qtt=C(()=>{txe();Vc();Tie=class extends vi{}});function*zun(e){if(e.length===1)return yield*e[0];for(let t of e[0])for(let n of zun(e.slice(1)))yield`${t}${n}`}function*Z8i(e){return yield*zun(e.expr.map(t=>[...UU(t)]))}function*j8i(e){for(let t of e.expr)yield*UU(t)}function*z8i(e){return yield e.const}function*UU(e){return e.type==="and"?yield*Z8i(e):e.type==="or"?yield*j8i(e):e.type==="const"?yield*z8i(e):(()=>{throw new Iie("Unknown expression")})()}function rP(e){let t=nP(e.pattern);return vN(t)?[...UU(t)]:[]}var Iie,Ytt=C(()=>{Qtt();txe();Vc();Iie=class extends vi{}});function _s(e,t){return un({[on]:"Literal",const:e,type:typeof e},t)}var Xun=C(()=>{Pi();Fr()});var Ff=C(()=>{Xun()});function pT(e){return un({[on]:"Boolean",type:"boolean"},e)}var Kun=C(()=>{Fr();bN()});var B7=C(()=>{Kun()});function k_(e){return un({[on]:"BigInt",type:"bigint"},e)}var qun=C(()=>{Fr();bN()});var VU=C(()=>{qun()});function Bm(e){return un({[on]:"Number",type:"number"},e)}var Jun=C(()=>{Pi();Fr()});var xN=C(()=>{Jun()});function qd(e){return un({[on]:"String",type:"string"},e)}var edn=C(()=>{Pi();Fr()});var CN=C(()=>{edn()});function*X8i(e){let t=e.trim().replace(/"|'/g,"");return t==="boolean"?yield pT():t==="number"?yield Bm():t==="bigint"?yield k_():t==="string"?yield qd():yield(()=>{let n=t.split("|").map(r=>_s(r.trim()));return n.length===0?Gi():n.length===1?n[0]:N_(n)})()}function*K8i(e){if(e[1]!=="{"){let t=_s("$"),n=Htt(e.slice(1));return yield*[t,...n]}for(let t=2;t<e.length;t++)if(e[t]==="}"){let n=X8i(e.slice(2,t)),r=Htt(e.slice(t+1));return yield*[...n,...r]}yield _s(e)}function*Htt(e){for(let t=0;t<e.length;t++)if(e[t]==="$"){let n=_s(e.slice(0,t)),r=K8i(e.slice(t));return yield*[n,...r]}yield _s(e)}function nxe(e){return[...Htt(e)]}var Ztt=C(()=>{Ff();B7();VU();xN();CN();Hu();fd()});function q8i(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function tdn(e,t){return Ny(e)?e.pattern.slice(1,e.pattern.length-1):Xo(e)?`(${e.anyOf.map(n=>tdn(n,t)).join("|")})`:I_(e)?`${t}${PU}`:T_(e)?`${t}${PU}`:zM(e)?`${t}${PU}`:aT(e)?`${t}${_ie}`:Lf(e)?`${t}${q8i(e.const.toString())}`:oT(e)?`${t}${Eie}`:(()=>{throw new wie(`Unexpected Kind '${e[on]}'`)})()}function Rie(e){return`^${e.map(t=>tdn(t,"")).join("")}$`}var wie,jtt=C(()=>{N7();Fr();Vc();Ks();wie=class extends vi{}});function TN(e){let n=rP(e).map(r=>_s(r));return N_(n)}var ndn=C(()=>{Hu();Ff();Ytt()});function iP(e,t){let n=jl(e)?Rie(nxe(e)):Rie(e);return un({[on]:"TemplateLiteral",type:"string",pattern:n},t)}var rdn=C(()=>{Pi();Ztt();jtt();Yg();Fr()});var O_=C(()=>{Qtt();Ytt();Ztt();txe();jtt();ndn();rdn()});function J8i(e){return rP(e).map(n=>n.toString())}function e$i(e){let t=[];for(let n of e)t.push(...Hh(n));return t}function t$i(e){return[e.toString()]}function Hh(e){return[...new Set(Ny(e)?J8i(e):Xo(e)?e$i(e.anyOf):Lf(e)?t$i(e.const):I_(e)?["[number]"]:T_(e)?["[number]"]:[])]}var rxe=C(()=>{O_();Ks()});function n$i(e,t,n){let r={};for(let i of Object.getOwnPropertyNames(t))r[i]=My(e,Hh(t[i]),n);return r}function r$i(e,t,n){return n$i(e,t.properties,n)}function ixe(e,t,n){let r=r$i(e,t,n);return Ko(r)}var ztt=C(()=>{Jd();rxe();M_()});function sdn(e,t){return e.map(n=>sxe(n,t))}function i$i(e){return e.filter(t=>!yN(t))}function s$i(e,t){return L7(i$i(sdn(e,t)))}function o$i(e){return e.some(t=>yN(t))?[]:e}function a$i(e,t){return N_(o$i(sdn(e,t)))}function l$i(e,t){return t in e?e[t]:t==="[number]"?N_(e):Gi()}function c$i(e,t){return t==="[number]"?e:Gi()}function u$i(e,t){return t in e?e[t]:Gi()}function sxe(e,t){return gu(e)?s$i(e.allOf,t):Xo(e)?a$i(e.anyOf,t):ky(e)?l$i(e.items??[],t):S_(e)?c$i(e.items,t):md(e)?u$i(e.properties,t):Gi()}function GU(e,t){return t.map(n=>sxe(e,n))}function idn(e,t){return N_(GU(e,t))}function odn(e,t){return hc("Index",[e,t])}function My(e,t,n){if(Yu(e)||Yu(t)){let r="Index types using Ref parameters require both Type and Key to be of TSchema";if(!Gc(e)||!Gc(t))throw new vi(r);return hc("Index",[e,t])}return Oc(t)?ixe(e,t,n):Ry(t)?axe(e,t,n):un(Gc(t)?idn(e,Hh(t)):idn(e,t),n)}var oxe=C(()=>{Pi();Vc();eP();fd();Py();Hu();rxe();Xtt();ztt();Ks()});function d$i(e,t,n){return{[t]:My(e,[t],pc(n))}}function p$i(e,t,n){return t.reduce((r,i)=>({...r,...d$i(e,i,n)}),{})}function m$i(e,t,n){return p$i(e,t.keys,n)}function axe(e,t,n){let r=m$i(e,t,n);return Ko(r)}var Xtt=C(()=>{oxe();Jd();Iy()});var M_=C(()=>{Xtt();ztt();rxe();oxe()});function P_(e,t){return un({[on]:"Iterator",type:"Iterator",items:e},t)}var adn=C(()=>{Pi();Fr()});var WU=C(()=>{adn()});function f$i(e){return globalThis.Object.keys(e).filter(t=>!Hg(e[t]))}function h$i(e,t){let n=f$i(e),r=n.length>0?{[on]:"Object",type:"object",required:n,properties:e}:{[on]:"Object",type:"object",properties:e};return un(r,t)}var io,ldn=C(()=>{Pi();Fr();Ks();io=h$i});var Zh=C(()=>{ldn()});function mT(e,t){return un({[on]:"Promise",type:"Promise",item:e},t)}var cdn=C(()=>{Pi();Fr()});var F7=C(()=>{cdn()});function g$i(e){return un(bu(e,[cA]))}function b$i(e){return un({...e,[cA]:"Readonly"})}function y$i(e,t){return t===!1?g$i(e):b$i(e)}function Rp(e,t){let n=t??!0;return Oc(e)?lxe(e,n):y$i(e,n)}var Ktt=C(()=>{Pi();Fr();dT();qtt();Ks()});function A$i(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=Rp(e[r],t);return n}function E$i(e,t){return A$i(e.properties,t)}function lxe(e,t){let n=E$i(e,t);return Ko(n)}var qtt=C(()=>{Jd();Ktt()});var IN=C(()=>{qtt();Ktt()});function Lm(e,t){return un(e.length>0?{[on]:"Tuple",type:"array",items:e,additionalItems:!1,minItems:e.length,maxItems:e.length}:{[on]:"Tuple",type:"array",minItems:e.length,maxItems:e.length},t)}var udn=C(()=>{Pi();Fr()});var fT=C(()=>{udn()});function ddn(e,t){return e in t?D_(e,t[e]):Ko(t)}function _$i(e){return{[e]:_s(e)}}function S$i(e){let t={};for(let n of e)t[n]=_s(n);return t}function v$i(e,t){return Sie(t,e)?_$i(e):S$i(t)}function x$i(e,t){let n=v$i(e,t);return ddn(e,n)}function Nie(e,t){return t.map(n=>D_(e,n))}function C$i(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=D_(e,t[r]);return n}function D_(e,t){let n={...t};return Hg(t)?hd(D_(e,bu(t,[Jp]))):MU(t)?Rp(D_(e,bu(t,[cA]))):Oc(t)?ddn(e,t.properties):Ry(t)?x$i(e,t.keys):x_(t)?R_(Nie(e,t.parameters),D_(e,t.returns),n):C_(t)?Yh(Nie(e,t.parameters),D_(e,t.returns),n):jM(t)?w_(D_(e,t.items),n):XM(t)?P_(D_(e,t.items),n):gu(t)?Zu(Nie(e,t.allOf),n):Xo(t)?qs(Nie(e,t.anyOf),n):ky(t)?Lm(Nie(e,t.items??[]),n):md(t)?io(C$i(e,t.properties),n):S_(t)?uA(D_(e,t.items),n):KM(t)?mT(D_(e,t.item),n):t}function Jtt(e,t){let n={};for(let r of e)n[r]=D_(r,t);return n}function U7(e,t,n){let r=Gc(e)?Hh(e):e,i=t({[on]:"MappedKey",keys:r}),s=Jtt(r,i);return io(s,n)}var pdn=C(()=>{Fr();dT();BU();LU();FU();_N();M_();Py();WU();Ff();Zh();gv();F7();IN();fT();Hu();M7();Gtt();Ks()});var Jd=C(()=>{Gun();Gtt();pdn()});function T$i(e){return un(bu(e,[Jp]))}function I$i(e){return un({...e,[Jp]:"Optional"})}function w$i(e,t){return t===!1?T$i(e):I$i(e)}function hd(e,t){let n=t??!0;return Oc(e)?cxe(e,n):w$i(e,n)}var ent=C(()=>{Pi();Fr();dT();tnt();Ks()});function R$i(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=hd(e[r],t);return n}function N$i(e,t){return R$i(e.properties,t)}function cxe(e,t){let n=N$i(e,t);return Ko(n)}var tnt=C(()=>{Jd();ent()});var gv=C(()=>{tnt();ent()});function kie(e,t={}){let n=e.every(i=>md(i)),r=Gc(t.unevaluatedProperties)?{unevaluatedProperties:t.unevaluatedProperties}:{};return un(t.unevaluatedProperties===!1||Gc(t.unevaluatedProperties)||n?{...r,[on]:"Intersect",type:"object",allOf:e}:{...r,[on]:"Intersect",allOf:e},t)}var nnt=C(()=>{Pi();Fr();Ks()});function k$i(e){return e.every(t=>Hg(t))}function O$i(e){return bu(e,[Jp])}function mdn(e){return e.map(t=>Hg(t)?O$i(t):t)}function M$i(e,t){return k$i(e)?hd(kie(mdn(e),t)):kie(mdn(e),t)}function L7(e,t={}){if(e.length===1)return un(e[0],t);if(e.length===0)return Gi(t);if(e.some(n=>fa(n)))throw new Error("Cannot intersect transform types");return M$i(e,t)}var fdn=C(()=>{Fr();Pi();dT();fd();gv();nnt();Ks()});var hdn=C(()=>{});function Zu(e,t){if(e.length===1)return un(e[0],t);if(e.length===0)return Gi(t);if(e.some(n=>fa(n)))throw new Error("Cannot intersect transform types");return kie(e,t)}var gdn=C(()=>{Pi();fd();nnt();Ks()});var Py=C(()=>{fdn();hdn();gdn()});function Fm(...e){let[t,n]=typeof e[0]=="string"?[e[0],e[1]]:[e[0].$id,e[1]];if(typeof t!="string")throw new vi("Ref: $ref must be a string");return un({[on]:"Ref",$ref:t},n)}var bdn=C(()=>{Vc();Pi();Fr()});var hT=C(()=>{bdn()});function P$i(e,t){return hc("Awaited",[hc(e,t)])}function D$i(e){return hc("Awaited",[Fm(e)])}function B$i(e){return Zu(ydn(e))}function L$i(e){return qs(ydn(e))}function F$i(e){return B_(e)}function ydn(e){return e.map(t=>B_(t))}function B_(e,t){return un(v_(e)?P$i(e.target,e.parameters):gu(e)?B$i(e.allOf):Xo(e)?L$i(e.anyOf):KM(e)?F$i(e.item):Yu(e)?D$i(e.$ref):e,t)}var Adn=C(()=>{Pi();eP();Py();Hu();hT();Ks()});var V7=C(()=>{Adn()});function Edn(e){let t=[];for(let n of e)t.push(jh(n));return t}function U$i(e){let t=Edn(e);return Jve(t)}function V$i(e){let t=Edn(e);return qve(t)}function G$i(e){return e.map((t,n)=>n.toString())}function W$i(e){return["[number]"]}function $$i(e){return globalThis.Object.getOwnPropertyNames(e)}function Q$i(e){return rnt?globalThis.Object.getOwnPropertyNames(e).map(n=>n[0]==="^"&&n[n.length-1]==="$"?n.slice(1,n.length-1):n):[]}function jh(e){return gu(e)?U$i(e.allOf):Xo(e)?V$i(e.anyOf):ky(e)?G$i(e.items??[]):S_(e)?W$i(e.items):md(e)?$$i(e.properties):qM(e)?Q$i(e.patternProperties):[]}function bv(e){rnt=!0;let t=jh(e);return rnt=!1,`^(${t.map(r=>`(${r})`).join("|")})$`}var rnt,uxe=C(()=>{M7();Ks();rnt=!1});function Y$i(e,t){return hc("KeyOf",[hc(e,t)])}function H$i(e){return hc("KeyOf",[Fm(e)])}function Z$i(e,t){let n=jh(e),r=int(n),i=N_(r);return un(i,t)}function int(e){return e.map(t=>t==="[number]"?Bm():_s(t))}function L_(e,t){return v_(e)?Y$i(e.target,e.parameters):Yu(e)?H$i(e.$ref):Oc(e)?dxe(e,t):Z$i(e,t)}var snt=C(()=>{Pi();Ff();xN();eP();hT();uxe();Hu();ont();Ks()});function j$i(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=L_(e[r],pc(t));return n}function z$i(e,t){return j$i(e.properties,t)}function dxe(e,t){let n=z$i(e,t);return Ko(n)}var ont=C(()=>{Jd();snt();Iy()});function G7(e){let t=jh(e),n=GU(e,t);return t.map((r,i)=>[t[i],n[i]])}var _dn=C(()=>{oxe();uxe()});var dA=C(()=>{ont();_dn();uxe();snt()});function X$i(e){let t=[];for(let n of e)t.push(...jh(n));return Kve(t)}function K$i(e){return e.filter(t=>!yN(t))}function q$i(e,t){let n=[];for(let r of e)n.push(...GU(r,[t]));return K$i(n)}function J$i(e,t){let n={};for(let r of t)n[r]=L7(q$i(e,r));return n}function W7(e,t){let n=X$i(e),r=J$i(e,n);return io(r,t)}var Sdn=C(()=>{Py();M_();dA();Zh();M7();Ks()});var Oie=C(()=>{Sdn()});function gT(e){return un({[on]:"Date",type:"Date"},e)}var vdn=C(()=>{Fr();Pi()});var $7=C(()=>{vdn()});function bT(e){return un({[on]:"Null",type:"null"},e)}var xdn=C(()=>{Pi();Fr()});var Q7=C(()=>{xdn()});function yT(e){return un({[on]:"Symbol",type:"symbol"},e)}var Cdn=C(()=>{Pi();Fr()});var Y7=C(()=>{Cdn()});function AT(e){return un({[on]:"Undefined",type:"undefined"},e)}var Tdn=C(()=>{Pi();Fr()});var H7=C(()=>{Tdn()});function ET(e){return un({[on]:"Uint8Array",type:"Uint8Array"},e)}var Idn=C(()=>{Pi();Fr()});var Z7=C(()=>{Idn()});function Uf(e){return un({[on]:"Unknown"},e)}var wdn=C(()=>{Pi();Fr()});var wN=C(()=>{wdn()});function eQi(e){return e.map(t=>ant(t,!1))}function tQi(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=Rp(ant(e[n],!1));return t}function pxe(e,t){return t===!0?e:Rp(e)}function ant(e,t){return Ctt(e)?pxe(Oy(),t):Itt(e)?pxe(Oy(),t):zd(e)?Rp(Lm(eQi(e))):gN(e)?ET():kU(e)?gT():tl(e)?pxe(io(tQi(e)),t):Ttt(e)?pxe(Yh([],Uf()),t):Xd(e)?AT():wtt(e)?bT():Rtt(e)?yT():lie(e)?k_():Ty(e)?_s(e):nT(e)?_s(e):jl(e)?_s(e):io({})}function j7(e,t){return un(ant(e,!0),t)}var Rdn=C(()=>{DU();VU();$7();_N();Ff();Q7();Zh();Y7();fT();IN();H7();Z7();wN();bN();Yg()});var Mie=C(()=>{Rdn()});function sP(e,t){return x_(e)?Lm(e.parameters,t):Gi(t)}var Ndn=C(()=>{fT();fd();Ks()});var Pie=C(()=>{Ndn()});function z7(e,t){if(Xd(e))throw new Error("Enum undefined or empty");let n=globalThis.Object.getOwnPropertyNames(e).filter(s=>isNaN(s)).map(s=>e[s]),i=[...new Set(n)].map(s=>_s(s));return qs(i,{...t,[Wh]:"Enum"})}var kdn=C(()=>{Ff();Fr();Hu();Yg()});var Die=C(()=>{kdn()});function F_(e){return e===dn.False?e:dn.True}function X7(e){throw new Bie(e)}function Np(e){return Pt.IsNever(e)||Pt.IsIntersect(e)||Pt.IsUnion(e)||Pt.IsUnknown(e)||Pt.IsAny(e)}function kp(e,t){return Pt.IsNever(t)?Fdn(e,t):Pt.IsIntersect(t)?mxe(e,t):Pt.IsUnion(t)?pnt(e,t):Pt.IsUnknown(t)?Wdn(e,t):Pt.IsAny(t)?dnt(e,t):X7("StructuralRight")}function dnt(e,t){return dn.True}function nQi(e,t){return Pt.IsIntersect(t)?mxe(e,t):Pt.IsUnion(t)&&t.anyOf.some(n=>Pt.IsAny(n)||Pt.IsUnknown(n))?dn.True:Pt.IsUnion(t)?dn.Union:Pt.IsUnknown(t)||Pt.IsAny(t)?dn.True:dn.Union}function rQi(e,t){return Pt.IsUnknown(e)?dn.False:Pt.IsAny(e)?dn.Union:Pt.IsNever(e)?dn.True:dn.False}function iQi(e,t){return Pt.IsObject(t)&&fxe(t)?dn.True:Np(t)?kp(e,t):Pt.IsArray(t)?F_(kl(e.items,t.items)):dn.False}function sQi(e,t){return Np(t)?kp(e,t):Pt.IsAsyncIterator(t)?F_(kl(e.items,t.items)):dn.False}function oQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?U_(e,t):Pt.IsBigInt(t)?dn.True:dn.False}function Bdn(e,t){return Pt.IsLiteralBoolean(e)||Pt.IsBoolean(e)?dn.True:dn.False}function aQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?U_(e,t):Pt.IsBoolean(t)?dn.True:dn.False}function lQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsConstructor(t)?e.parameters.length>t.parameters.length?dn.False:e.parameters.every((n,r)=>F_(kl(t.parameters[r],n))===dn.True)?F_(kl(e.returns,t.returns)):dn.False:dn.False}function cQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?U_(e,t):Pt.IsDate(t)?dn.True:dn.False}function uQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsFunction(t)?e.parameters.length>t.parameters.length?dn.False:e.parameters.every((n,r)=>F_(kl(t.parameters[r],n))===dn.True)?F_(kl(e.returns,t.returns)):dn.False:dn.False}function Ldn(e,t){return Pt.IsLiteral(e)&&Kd.IsNumber(e.const)||Pt.IsNumber(e)||Pt.IsInteger(e)?dn.True:dn.False}function dQi(e,t){return Pt.IsInteger(t)||Pt.IsNumber(t)?dn.True:Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?U_(e,t):dn.False}function mxe(e,t){return t.allOf.every(n=>kl(e,n)===dn.True)?dn.True:dn.False}function pQi(e,t){return e.allOf.some(n=>kl(n,t)===dn.True)?dn.True:dn.False}function mQi(e,t){return Np(t)?kp(e,t):Pt.IsIterator(t)?F_(kl(e.items,t.items)):dn.False}function fQi(e,t){return Pt.IsLiteral(t)&&t.const===e.const?dn.True:Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?U_(e,t):Pt.IsString(t)?Gdn(e,t):Pt.IsNumber(t)?Udn(e,t):Pt.IsInteger(t)?Ldn(e,t):Pt.IsBoolean(t)?Bdn(e,t):dn.False}function Fdn(e,t){return dn.False}function hQi(e,t){return dn.True}function Odn(e){let[t,n]=[e,0];for(;Pt.IsNot(t);)t=t.not,n+=1;return n%2===0?t:Uf()}function gQi(e,t){return Pt.IsNot(e)?kl(Odn(e),t):Pt.IsNot(t)?kl(e,Odn(t)):X7("Invalid fallthrough for Not")}function bQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?U_(e,t):Pt.IsNull(t)?dn.True:dn.False}function Udn(e,t){return Pt.IsLiteralNumber(e)||Pt.IsNumber(e)||Pt.IsInteger(e)?dn.True:dn.False}function yQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?U_(e,t):Pt.IsInteger(t)||Pt.IsNumber(t)?dn.True:dn.False}function Dy(e,t){return Object.getOwnPropertyNames(e.properties).length===t}function Mdn(e){return fxe(e)}function Pdn(e){return Dy(e,0)||Dy(e,1)&&"description"in e.properties&&Pt.IsUnion(e.properties.description)&&e.properties.description.anyOf.length===2&&(Pt.IsString(e.properties.description.anyOf[0])&&Pt.IsUndefined(e.properties.description.anyOf[1])||Pt.IsString(e.properties.description.anyOf[1])&&Pt.IsUndefined(e.properties.description.anyOf[0]))}function lnt(e){return Dy(e,0)}function Ddn(e){return Dy(e,0)}function AQi(e){return Dy(e,0)}function EQi(e){return Dy(e,0)}function _Qi(e){return fxe(e)}function SQi(e){let t=Bm();return Dy(e,0)||Dy(e,1)&&"length"in e.properties&&F_(kl(e.properties.length,t))===dn.True}function vQi(e){return Dy(e,0)}function fxe(e){let t=Bm();return Dy(e,0)||Dy(e,1)&&"length"in e.properties&&F_(kl(e.properties.length,t))===dn.True}function xQi(e){let t=Yh([Oy()],Oy());return Dy(e,0)||Dy(e,1)&&"then"in e.properties&&F_(kl(e.properties.then,t))===dn.True}function Vdn(e,t){return kl(e,t)===dn.False||Pt.IsOptional(e)&&!Pt.IsOptional(t)?dn.False:dn.True}function zh(e,t){return Pt.IsUnknown(e)?dn.False:Pt.IsAny(e)?dn.Union:Pt.IsNever(e)||Pt.IsLiteralString(e)&&Mdn(t)||Pt.IsLiteralNumber(e)&&lnt(t)||Pt.IsLiteralBoolean(e)&&Ddn(t)||Pt.IsSymbol(e)&&Pdn(t)||Pt.IsBigInt(e)&&AQi(t)||Pt.IsString(e)&&Mdn(t)||Pt.IsSymbol(e)&&Pdn(t)||Pt.IsNumber(e)&&lnt(t)||Pt.IsInteger(e)&&lnt(t)||Pt.IsBoolean(e)&&Ddn(t)||Pt.IsUint8Array(e)&&_Qi(t)||Pt.IsDate(e)&&EQi(t)||Pt.IsConstructor(e)&&vQi(t)||Pt.IsFunction(e)&&SQi(t)?dn.True:Pt.IsRecord(e)&&Pt.IsString(cnt(e))?t[Wh]==="Record"?dn.True:dn.False:Pt.IsRecord(e)&&Pt.IsNumber(cnt(e))&&Dy(t,0)?dn.True:dn.False}function CQi(e,t){return Np(t)?kp(e,t):Pt.IsRecord(t)?U_(e,t):Pt.IsObject(t)?(()=>{for(let n of Object.getOwnPropertyNames(t.properties)){if(!(n in e.properties)&&!Pt.IsOptional(t.properties[n]))return dn.False;if(Pt.IsOptional(t.properties[n]))return dn.True;if(Vdn(e.properties[n],t.properties[n])===dn.False)return dn.False}return dn.True})():dn.False}function TQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)&&xQi(t)?dn.True:Pt.IsPromise(t)?F_(kl(e.item,t.item)):dn.False}function cnt(e){return cT in e.patternProperties?Bm():uT in e.patternProperties?qd():X7("Unknown record key pattern")}function unt(e){return cT in e.patternProperties?e.patternProperties[cT]:uT in e.patternProperties?e.patternProperties[uT]:X7("Unable to get record value schema")}function U_(e,t){let[n,r]=[cnt(t),unt(t)];return Pt.IsLiteralString(e)&&Pt.IsNumber(n)&&F_(kl(e,r))===dn.True?dn.True:Pt.IsUint8Array(e)&&Pt.IsNumber(n)||Pt.IsString(e)&&Pt.IsNumber(n)||Pt.IsArray(e)&&Pt.IsNumber(n)?kl(e,r):Pt.IsObject(e)?(()=>{for(let i of Object.getOwnPropertyNames(e.properties))if(Vdn(r,e.properties[i])===dn.False)return dn.False;return dn.True})():dn.False}function IQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?kl(unt(e),unt(t)):dn.False}function wQi(e,t){let n=Pt.IsRegExp(e)?qd():e,r=Pt.IsRegExp(t)?qd():t;return kl(n,r)}function Gdn(e,t){return Pt.IsLiteral(e)&&Kd.IsString(e.const)||Pt.IsString(e)?dn.True:dn.False}function RQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?U_(e,t):Pt.IsString(t)?dn.True:dn.False}function NQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?U_(e,t):Pt.IsSymbol(t)?dn.True:dn.False}function kQi(e,t){return Pt.IsTemplateLiteral(e)?kl(TN(e),t):Pt.IsTemplateLiteral(t)?kl(e,TN(t)):X7("Invalid fallthrough for TemplateLiteral")}function OQi(e,t){return Pt.IsArray(t)&&e.items!==void 0&&e.items.every(n=>kl(n,t.items)===dn.True)}function MQi(e,t){return Pt.IsNever(e)?dn.True:Pt.IsUnknown(e)?dn.False:Pt.IsAny(e)?dn.Union:dn.False}function PQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)&&fxe(t)||Pt.IsArray(t)&&OQi(e,t)?dn.True:Pt.IsTuple(t)?Kd.IsUndefined(e.items)&&!Kd.IsUndefined(t.items)||!Kd.IsUndefined(e.items)&&Kd.IsUndefined(t.items)?dn.False:Kd.IsUndefined(e.items)&&!Kd.IsUndefined(t.items)||e.items.every((n,r)=>kl(n,t.items[r])===dn.True)?dn.True:dn.False:dn.False}function DQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?U_(e,t):Pt.IsUint8Array(t)?dn.True:dn.False}function BQi(e,t){return Np(t)?kp(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsRecord(t)?U_(e,t):Pt.IsVoid(t)?UQi(e,t):Pt.IsUndefined(t)?dn.True:dn.False}function pnt(e,t){return t.anyOf.some(n=>kl(e,n)===dn.True)?dn.True:dn.False}function LQi(e,t){return e.anyOf.every(n=>kl(n,t)===dn.True)?dn.True:dn.False}function Wdn(e,t){return dn.True}function FQi(e,t){return Pt.IsNever(t)?Fdn(e,t):Pt.IsIntersect(t)?mxe(e,t):Pt.IsUnion(t)?pnt(e,t):Pt.IsAny(t)?dnt(e,t):Pt.IsString(t)?Gdn(e,t):Pt.IsNumber(t)?Udn(e,t):Pt.IsInteger(t)?Ldn(e,t):Pt.IsBoolean(t)?Bdn(e,t):Pt.IsArray(t)?rQi(e,t):Pt.IsTuple(t)?MQi(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsUnknown(t)?dn.True:dn.False}function UQi(e,t){return Pt.IsUndefined(e)||Pt.IsUndefined(e)?dn.True:dn.False}function VQi(e,t){return Pt.IsIntersect(t)?mxe(e,t):Pt.IsUnion(t)?pnt(e,t):Pt.IsUnknown(t)?Wdn(e,t):Pt.IsAny(t)?dnt(e,t):Pt.IsObject(t)?zh(e,t):Pt.IsVoid(t)?dn.True:dn.False}function kl(e,t){return Pt.IsTemplateLiteral(e)||Pt.IsTemplateLiteral(t)?kQi(e,t):Pt.IsRegExp(e)||Pt.IsRegExp(t)?wQi(e,t):Pt.IsNot(e)||Pt.IsNot(t)?gQi(e,t):Pt.IsAny(e)?nQi(e,t):Pt.IsArray(e)?iQi(e,t):Pt.IsBigInt(e)?oQi(e,t):Pt.IsBoolean(e)?aQi(e,t):Pt.IsAsyncIterator(e)?sQi(e,t):Pt.IsConstructor(e)?lQi(e,t):Pt.IsDate(e)?cQi(e,t):Pt.IsFunction(e)?uQi(e,t):Pt.IsInteger(e)?dQi(e,t):Pt.IsIntersect(e)?pQi(e,t):Pt.IsIterator(e)?mQi(e,t):Pt.IsLiteral(e)?fQi(e,t):Pt.IsNever(e)?hQi(e,t):Pt.IsNull(e)?bQi(e,t):Pt.IsNumber(e)?yQi(e,t):Pt.IsObject(e)?CQi(e,t):Pt.IsRecord(e)?IQi(e,t):Pt.IsString(e)?RQi(e,t):Pt.IsSymbol(e)?NQi(e,t):Pt.IsTuple(e)?PQi(e,t):Pt.IsPromise(e)?TQi(e,t):Pt.IsUint8Array(e)?DQi(e,t):Pt.IsUndefined(e)?BQi(e,t):Pt.IsUnion(e)?LQi(e,t):Pt.IsUnknown(e)?FQi(e,t):Pt.IsVoid(e)?VQi(e,t):X7(`Unknown left type operand '${e[on]}'`)}function _T(e,t){return kl(e,t)}var Bie,dn,mnt=C(()=>{DU();_N();xN();CN();wN();O_();N7();Fr();Vc();zve();Bie=class extends vi{};(function(e){e[e.Union=0]="Union",e[e.True=1]="True",e[e.False=2]="False"})(dn||(dn={}))});function GQi(e,t,n,r,i){let s={};for(let o of globalThis.Object.getOwnPropertyNames(e))s[o]=V_(e[o],t,n,r,pc(i));return s}function WQi(e,t,n,r,i){return GQi(e.properties,t,n,r,i)}function hxe(e,t,n,r,i){let s=WQi(e,t,n,r,i);return Ko(s)}var fnt=C(()=>{Jd();gxe();Iy()});function $Qi(e,t,n,r){let i=_T(e,t);return i===dn.Union?qs([n,r]):i===dn.True?n:r}function V_(e,t,n,r,i){return Oc(e)?hxe(e,t,n,r,i):Ry(e)?un(bxe(e,t,n,r,i)):un($Qi(e,t,n,r),i)}var gxe=C(()=>{Pi();Hu();mnt();hnt();fnt();Ks()});function QQi(e,t,n,r,i){return{[e]:V_(_s(e),t,n,r,pc(i))}}function YQi(e,t,n,r,i){return e.reduce((s,o)=>({...s,...QQi(o,t,n,r,i)}),{})}function HQi(e,t,n,r,i){return YQi(e.keys,t,n,r,i)}function bxe(e,t,n,r,i){let s=HQi(e,t,n,r,i);return Ko(s)}var hnt=C(()=>{Jd();Ff();gxe();Iy()});function ZQi(e){return e.allOf.every(t=>yv(t))}function jQi(e){return e.anyOf.some(t=>yv(t))}function zQi(e){return!yv(e.not)}function yv(e){return e[on]==="Intersect"?ZQi(e):e[on]==="Union"?jQi(e):e[on]==="Not"?zQi(e):e[on]==="Undefined"}var yxe=C(()=>{Fr()});var oP=C(()=>{mnt();hnt();fnt();yxe();gxe()});function Axe(e,t){return G_(TN(e),t)}var gnt=C(()=>{Exe();O_()});function XQi(e,t){let n=e.filter(r=>_T(r,t)===dn.False);return n.length===1?n[0]:qs(n)}function G_(e,t,n={}){return Ny(e)?un(Axe(e,t),n):Oc(e)?un(_xe(e,t),n):un(Xo(e)?XQi(e.anyOf,t):_T(e,t)!==dn.False?Gi():e,n)}var Exe=C(()=>{Pi();Hu();fd();oP();bnt();gnt();Ks()});function KQi(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=G_(e[r],t);return n}function qQi(e,t){return KQi(e.properties,t)}function _xe(e,t){let n=qQi(e,t);return Ko(n)}var bnt=C(()=>{Jd();Exe()});var Lie=C(()=>{bnt();gnt();Exe()});function Sxe(e,t){return W_(TN(e),t)}var ynt=C(()=>{vxe();O_()});function JQi(e,t){let n=e.filter(r=>_T(r,t)!==dn.False);return n.length===1?n[0]:qs(n)}function W_(e,t,n){return Ny(e)?un(Sxe(e,t),n):Oc(e)?un(xxe(e,t),n):un(Xo(e)?JQi(e.anyOf,t):_T(e,t)!==dn.False?e:Gi(),n)}var vxe=C(()=>{Pi();Hu();fd();oP();Ant();ynt();Ks()});function e7i(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=W_(e[r],t);return n}function t7i(e,t){return e7i(e.properties,t)}function xxe(e,t){let n=t7i(e,t);return Ko(n)}var Ant=C(()=>{Jd();vxe()});var Fie=C(()=>{Ant();ynt();vxe()});function aP(e,t){return x_(e)?un(e.returns,t):Gi(t)}var $dn=C(()=>{Pi();fd();Ks()});var Uie=C(()=>{$dn()});function ST(e){return Rp(hd(e))}var Qdn=C(()=>{IN();gv()});var K7=C(()=>{Qdn()});function $U(e,t,n){return un({[on]:"Record",type:"object",patternProperties:{[e]:t}},n)}function Ent(e,t,n){let r={};for(let i of e)r[i]=t;return io(r,{...n,[Wh]:"Record"})}function n7i(e,t,n){return D7(e)?Ent(Hh(e),t,n):$U(e.pattern,t,n)}function r7i(e,t,n){return Ent(Hh(qs(e)),t,n)}function i7i(e,t,n){return Ent([e.toString()],t,n)}function s7i(e,t,n){return $U(e.source,t,n)}function o7i(e,t,n){let r=Xd(e.pattern)?uT:e.pattern;return $U(r,t,n)}function a7i(e,t,n){return $U(uT,t,n)}function l7i(e,t,n){return $U(Xve,t,n)}function c7i(e,t,n){return io({true:t,false:t},n)}function u7i(e,t,n){return $U(cT,t,n)}function d7i(e,t,n){return $U(cT,t,n)}function vT(e,t,n={}){return Xo(e)?r7i(e.anyOf,t,n):Ny(e)?n7i(e,t,n):Lf(e)?i7i(e.const,t,n):oT(e)?c7i(e,t,n):T_(e)?u7i(e,t,n):I_(e)?d7i(e,t,n):Zve(e)?s7i(e,t,n):aT(e)?o7i(e,t,n):Yve(e)?a7i(e,t,n):yN(e)?l7i(e,t,n):Gi(n)}function q7(e){return globalThis.Object.getOwnPropertyNames(e.patternProperties)[0]}function Cxe(e){let t=q7(e);return t===uT?qd():t===cT?Bm():qd({pattern:t})}function J7(e){return e.patternProperties[q7(e)]}var Ydn=C(()=>{Pi();Fr();fd();xN();Zh();CN();Hu();O_();N7();M_();Yg();Ks()});var QU=C(()=>{Ydn()});function p7i(e,t){return t.parameters=YU(e,t.parameters),t.returns=Av(e,t.returns),t}function m7i(e,t){return t.parameters=YU(e,t.parameters),t.returns=Av(e,t.returns),t}function f7i(e,t){return t.allOf=YU(e,t.allOf),t}function h7i(e,t){return t.anyOf=YU(e,t.anyOf),t}function g7i(e,t){return Xd(t.items)||(t.items=YU(e,t.items)),t}function b7i(e,t){return t.items=Av(e,t.items),t}function y7i(e,t){return t.items=Av(e,t.items),t}function A7i(e,t){return t.items=Av(e,t.items),t}function E7i(e,t){return t.item=Av(e,t.item),t}function _7i(e,t){let n=C7i(e,t.properties);return{...t,...io(n)}}function S7i(e,t){let n=Av(e,Cxe(t)),r=Av(e,J7(t)),i=vT(n,r);return{...t,...i}}function v7i(e,t){return t.index in e?e[t.index]:Uf()}function x7i(e,t){let n=MU(t),r=Hg(t),i=Av(e,t);return n&&r?ST(i):n&&!r?Rp(i):!n&&r?hd(i):i}function C7i(e,t){return globalThis.Object.getOwnPropertyNames(t).reduce((n,r)=>({...n,[r]:x7i(e,t[r])}),{})}function YU(e,t){return t.map(n=>Av(e,n))}function Av(e,t){return x_(t)?p7i(e,t):C_(t)?m7i(e,t):gu(t)?f7i(e,t):Xo(t)?h7i(e,t):ky(t)?g7i(e,t):S_(t)?b7i(e,t):jM(t)?y7i(e,t):XM(t)?A7i(e,t):KM(t)?E7i(e,t):md(t)?_7i(e,t):qM(t)?S7i(e,t):Hve(t)?v7i(e,t):t}function lP(e,t){return Av(t,fv(e))}var Hdn=C(()=>{Gve();wN();K7();IN();gv();Zh();QU();Yg();Ks()});var Vie=C(()=>{Hdn()});function cP(e){return un({[on]:"Integer",type:"integer"},e)}var Zdn=C(()=>{Pi();Fr()});var Gie=C(()=>{Zdn()});function T7i(e,t,n){return{[e]:pA(_s(e),t,pc(n))}}function I7i(e,t,n){return e.reduce((i,s)=>({...i,...T7i(s,t,n)}),{})}function w7i(e,t,n){return I7i(e.keys,t,n)}function Txe(e,t,n){let r=w7i(e,t,n);return Ko(r)}var _nt=C(()=>{Jd();HU();Ff();Iy()});function R7i(e){let[t,n]=[e.slice(0,1),e.slice(1)];return[t.toLowerCase(),n].join("")}function N7i(e){let[t,n]=[e.slice(0,1),e.slice(1)];return[t.toUpperCase(),n].join("")}function k7i(e){return e.toUpperCase()}function O7i(e){return e.toLowerCase()}function M7i(e,t,n){let r=nP(e.pattern);if(!vN(r))return{...e,pattern:jdn(e.pattern,t)};let o=[...UU(r)].map(u=>_s(u)),a=zdn(o,t),l=qs(a);return iP([l],n)}function jdn(e,t){return typeof e=="string"?t==="Uncapitalize"?R7i(e):t==="Capitalize"?N7i(e):t==="Uppercase"?k7i(e):t==="Lowercase"?O7i(e):e:e.toString()}function zdn(e,t){return e.map(n=>pA(n,t))}function pA(e,t,n={}){return Ry(e)?Txe(e,t,n):Ny(e)?M7i(e,t,n):Xo(e)?qs(zdn(e.anyOf,t),n):Lf(e)?_s(jdn(e.const,t),n):un(e,n)}var HU=C(()=>{Pi();O_();_nt();Ff();Hu();Ks()});function uP(e,t={}){return pA(e,"Capitalize",t)}var Xdn=C(()=>{HU()});function dP(e,t={}){return pA(e,"Lowercase",t)}var Kdn=C(()=>{HU()});function pP(e,t={}){return pA(e,"Uncapitalize",t)}var qdn=C(()=>{HU()});function mP(e,t={}){return pA(e,"Uppercase",t)}var Jdn=C(()=>{HU()});var Wie=C(()=>{Xdn();_nt();HU();Kdn();qdn();Jdn()});function P7i(e,t,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(e))r[i]=By(e[i],t,pc(n));return r}function D7i(e,t,n){return P7i(e.properties,t,n)}function Ixe(e,t,n){let r=D7i(e,t,n);return Ko(r)}var Snt=C(()=>{Jd();wxe();Iy()});function B7i(e,t){return e.map(n=>vnt(n,t))}function L7i(e,t){return e.map(n=>vnt(n,t))}function F7i(e,t){let{[t]:n,...r}=e;return r}function U7i(e,t){return t.reduce((n,r)=>F7i(n,r),e)}function V7i(e,t,n){let r=bu(e,[kc,"$id","required","properties"]),i=U7i(n,t);return io(i,r)}function G7i(e){let t=e.reduce((n,r)=>bie(r)?[...n,_s(r)]:n,[]);return qs(t)}function vnt(e,t){return gu(e)?Zu(B7i(e.allOf,t)):Xo(e)?qs(L7i(e.anyOf,t)):md(e)?V7i(e,t,e.properties):io({})}function By(e,t,n){let r=zd(t)?G7i(t):t,i=Gc(t)?Hh(t):t,s=Yu(e),o=Yu(t);return Oc(e)?Ixe(e,i,n):Ry(t)?Rxe(e,t,n):s&&o?hc("Omit",[e,r],n):!s&&o?hc("Omit",[e,r],n):s&&!o?hc("Omit",[e,r],n):un({...vnt(e,i),...n})}var wxe=C(()=>{Pi();exe();gie();eP();Ff();M_();Py();Hu();Zh();xnt();Snt();Ks();Yg()});function W7i(e,t,n){return{[t]:By(e,[t],pc(n))}}function $7i(e,t,n){return t.reduce((r,i)=>({...r,...W7i(e,i,n)}),{})}function Q7i(e,t,n){return $7i(e,t.keys,n)}function Rxe(e,t,n){let r=Q7i(e,t,n);return Ko(r)}var xnt=C(()=>{Jd();wxe();Iy()});var eY=C(()=>{xnt();Snt();wxe()});function Y7i(e,t,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(e))r[i]=Ly(e[i],t,pc(n));return r}function H7i(e,t,n){return Y7i(e.properties,t,n)}function Nxe(e,t,n){let r=H7i(e,t,n);return Ko(r)}var Cnt=C(()=>{Jd();kxe();Iy()});function Z7i(e,t){return e.map(n=>Tnt(n,t))}function j7i(e,t){return e.map(n=>Tnt(n,t))}function z7i(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function X7i(e,t,n){let r=bu(e,[kc,"$id","required","properties"]),i=z7i(n,t);return io(i,r)}function K7i(e){let t=e.reduce((n,r)=>bie(r)?[...n,_s(r)]:n,[]);return qs(t)}function Tnt(e,t){return gu(e)?Zu(Z7i(e.allOf,t)):Xo(e)?qs(j7i(e.anyOf,t)):md(e)?X7i(e,t,e.properties):io({})}function Ly(e,t,n){let r=zd(t)?K7i(t):t,i=Gc(t)?Hh(t):t,s=Yu(e),o=Yu(t);return Oc(e)?Nxe(e,i,n):Ry(t)?Oxe(e,t,n):s&&o?hc("Pick",[e,r],n):!s&&o?hc("Pick",[e,r],n):s&&!o?hc("Pick",[e,r],n):un({...Tnt(e,i),...n})}var kxe=C(()=>{Pi();exe();eP();Py();Ff();Zh();Hu();M_();gie();Ks();Yg();Int();Cnt()});function q7i(e,t,n){return{[t]:Ly(e,[t],pc(n))}}function J7i(e,t,n){return t.reduce((r,i)=>({...r,...q7i(e,i,n)}),{})}function eYi(e,t,n){return J7i(e,t.keys,n)}function Oxe(e,t,n){let r=eYi(e,t,n);return Ko(r)}var Int=C(()=>{Jd();kxe();Iy()});var tY=C(()=>{Int();Cnt();kxe()});function tYi(e,t){return hc("Partial",[hc(e,t)])}function nYi(e){return hc("Partial",[Fm(e)])}function rYi(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=hd(e[n]);return t}function iYi(e,t){let n=bu(e,[kc,"$id","required","properties"]),r=rYi(t);return io(r,n)}function epn(e){return e.map(t=>tpn(t))}function tpn(e){return v_(e)?tYi(e.target,e.parameters):Yu(e)?nYi(e.$ref):gu(e)?Zu(epn(e.allOf)):Xo(e)?qs(epn(e.anyOf)):md(e)?iYi(e,e.properties):zM(e)||oT(e)||T_(e)||Lf(e)||w7(e)||I_(e)||aT(e)||R7(e)||lT(e)?e:io({})}function $_(e,t){return Oc(e)?Mxe(e,t):un({...tpn(e),...t})}var wnt=C(()=>{Pi();eP();gv();Zh();Py();Hu();hT();dT();Fr();Rnt();Ks()});function sYi(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=$_(e[r],pc(t));return n}function oYi(e,t){return sYi(e.properties,t)}function Mxe(e,t){let n=oYi(e,t);return Ko(n)}var Rnt=C(()=>{Jd();wnt();Iy()});var nY=C(()=>{Rnt();wnt()});function aYi(e,t){return hc("Required",[hc(e,t)])}function lYi(e){return hc("Required",[Fm(e)])}function cYi(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=bu(e[n],[Jp]);return t}function uYi(e,t){let n=bu(e,[kc,"$id","required","properties"]),r=cYi(t);return io(r,n)}function npn(e){return e.map(t=>rpn(t))}function rpn(e){return v_(e)?aYi(e.target,e.parameters):Yu(e)?lYi(e.$ref):gu(e)?Zu(npn(e.allOf)):Xo(e)?qs(npn(e.anyOf)):md(e)?uYi(e,e.properties):zM(e)||oT(e)||T_(e)||Lf(e)||w7(e)||I_(e)||aT(e)||R7(e)||lT(e)?e:io({})}function Q_(e,t){return Oc(e)?Pxe(e,t):un({...rpn(e),...t})}var Nnt=C(()=>{Pi();eP();Zh();Py();Hu();hT();Fr();dT();knt();Ks()});function dYi(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=Q_(e[r],t);return n}function pYi(e,t){return dYi(e.properties,t)}function Pxe(e,t){let n=pYi(e,t);return Ko(n)}var knt=C(()=>{Jd();Nnt()});var rY=C(()=>{knt();Nnt()});function mYi(e,t){return t.map(n=>Yu(n)?Ont(e,n.$ref):mA(e,n))}function Ont(e,t){return t in e?Yu(e[t])?Ont(e,e[t].$ref):mA(e,e[t]):Gi()}function fYi(e){return B_(e[0])}function hYi(e){return My(e[0],e[1])}function gYi(e){return L_(e[0])}function bYi(e){return $_(e[0])}function yYi(e){return By(e[0],e[1])}function AYi(e){return Ly(e[0],e[1])}function EYi(e){return Q_(e[0])}function _Yi(e,t,n){let r=mYi(e,n);return t==="Awaited"?fYi(r):t==="Index"?hYi(r):t==="KeyOf"?gYi(r):t==="Partial"?bYi(r):t==="Omit"?yYi(r):t==="Pick"?AYi(r):t==="Required"?EYi(r):Gi()}function SYi(e,t){return uA(mA(e,t))}function vYi(e,t){return w_(mA(e,t))}function xYi(e,t,n){return R_($ie(e,t),mA(e,n))}function CYi(e,t,n){return Yh($ie(e,t),mA(e,n))}function TYi(e,t){return Zu($ie(e,t))}function IYi(e,t){return P_(mA(e,t))}function wYi(e,t){return io(globalThis.Object.keys(t).reduce((n,r)=>({...n,[r]:mA(e,t[r])}),{}))}function RYi(e,t){let[n,r]=[mA(e,J7(t)),q7(t)],i=fv(t);return i.patternProperties[r]=n,i}function NYi(e,t){return Yu(t)?{...Ont(e,t.$ref),[kc]:t[kc]}:t}function kYi(e,t){return Lm($ie(e,t))}function OYi(e,t){return qs($ie(e,t))}function $ie(e,t){return t.map(n=>mA(e,n))}function mA(e,t){return Hg(t)?un(mA(e,bu(t,[Jp])),t):MU(t)?un(mA(e,bu(t,[cA])),t):fa(t)?un(NYi(e,t),t):S_(t)?un(SYi(e,t.items),t):jM(t)?un(vYi(e,t.items),t):v_(t)?un(_Yi(e,t.target,t.parameters)):x_(t)?un(xYi(e,t.parameters,t.returns),t):C_(t)?un(CYi(e,t.parameters,t.returns),t):gu(t)?un(TYi(e,t.allOf),t):XM(t)?un(IYi(e,t.items),t):md(t)?un(wYi(e,t.properties),t):qM(t)?un(RYi(e,t)):ky(t)?un(kYi(e,t.items||[]),t):Xo(t)?un(OYi(e,t.anyOf),t):t}function MYi(e,t){return t in e?mA(e,e[t]):Gi()}function ipn(e){return globalThis.Object.getOwnPropertyNames(e).reduce((t,n)=>({...t,[n]:MYi(e,n)}),{})}var spn=C(()=>{bN();Wve();dT();BU();V7();LU();FU();M_();_N();Py();WU();dA();Zh();eY();tY();fd();nY();QU();rY();fT();Hu();Fr();Ks()});function iY(e){return new Qie(e)}var Qie,opn=C(()=>{bN();Fr();spn();Qie=class{constructor(t){let n=ipn(t),r=this.WithIdentifiers(n);this.$defs=r}Import(t,n){let r={...this.$defs,[t]:un(this.$defs[t],n)};return un({[on]:"Import",$defs:r,$ref:t})}WithIdentifiers(t){return globalThis.Object.getOwnPropertyNames(t).reduce((n,r)=>({...n,[r]:{...t[r],$id:r}}),{})}}});var Yie=C(()=>{opn()});function sY(e,t){return un({[on]:"Not",not:e},t)}var apn=C(()=>{Pi();Fr()});var Hie=C(()=>{apn()});function fP(e,t){return C_(e)?Lm(e.parameters,t):Gi()}var lpn=C(()=>{fT();fd();Ks()});var Zie=C(()=>{lpn()});function oY(e,t={}){Xd(t.$id)&&(t.$id=`T${PYi++}`);let n=fv(e({[on]:"This",$ref:`${t.$id}`}));return n.$id=t.$id,un({[Wh]:"Recursive",...n},t)}var PYi,cpn=C(()=>{Gve();Pi();Yg();Fr();PYi=0});var jie=C(()=>{cpn()});function aY(e,t){let n=jl(e)?new globalThis.RegExp(e):e;return un({[on]:"RegExp",type:"RegExp",source:n.source,flags:n.flags},t)}var upn=C(()=>{Pi();Yg();Fr()});var zie=C(()=>{upn()});function DYi(e){return gu(e)?e.allOf:Xo(e)?e.anyOf:ky(e)?e.items??[]:[]}function lY(e){return DYi(e)}var dpn=C(()=>{Ks()});var Xie=C(()=>{dpn()});function hP(e,t){return C_(e)?un(e.returns,t):Gi(t)}var ppn=C(()=>{Pi();fd();Ks()});var Kie=C(()=>{ppn()});var mpn=C(()=>{});var fpn=C(()=>{});var Mnt=C(()=>{mpn();fpn()});var hpn=C(()=>{});var Pnt=C(()=>{hpn()});function cY(e){return new qie(e)}var qie,Jie,gpn=C(()=>{Fr();Ks();qie=class{constructor(t){this.schema=t}Decode(t){return new Jie(this.schema,t)}},Jie=class{constructor(t,n){this.schema=t,this.decode=n}EncodeTransform(t,n){let s={Encode:o=>n[kc].Encode(t(o)),Decode:o=>this.decode(n[kc].Decode(o))};return{...n,[kc]:s}}EncodeSchema(t,n){let r={Decode:this.decode,Encode:t};return{...n,[kc]:r}}Encode(t){return fa(this.schema)?this.EncodeTransform(t,this.schema):this.EncodeSchema(t,this.schema)}}});var ese=C(()=>{gpn()});function gP(e={}){return un({[on]:e[on]??"Unsafe"},e)}var bpn=C(()=>{Pi();Fr()});var uY=C(()=>{bpn()});function bP(e){return un({[on]:"Void",type:"void"},e)}var ypn=C(()=>{Pi();Fr()});var tse=C(()=>{ypn()});var ZU,Dnt=C(()=>{DU();BU();B7();Oie();Mie();Die();Lie();oP();Fie();M_();Gie();Py();Wie();dA();Ff();Jd();fd();Hie();Q7();Yie();xN();Zh();eY();gv();nY();tY();IN();K7();QU();jie();hT();rY();Xie();CN();O_();ese();fT();Hu();wN();uY();ZU=class{ReadonlyOptional(t){return ST(t)}Readonly(t,n){return Rp(t,n??!0)}Optional(t,n){return hd(t,n??!0)}Any(t){return Oy(t)}Array(t,n){return uA(t,n)}Boolean(t){return pT(t)}Capitalize(t,n){return uP(t,n)}Composite(t,n){return W7(t,n)}Const(t,n){return j7(t,n)}Enum(t,n){return z7(t,n)}Exclude(t,n,r){return G_(t,n,r)}Extends(t,n,r,i,s){return V_(t,n,r,i,s)}Extract(t,n,r){return W_(t,n,r)}Index(t,n,r){return My(t,n,r)}Integer(t){return cP(t)}Intersect(t,n){return Zu(t,n)}KeyOf(t,n){return L_(t,n)}Literal(t,n){return _s(t,n)}Lowercase(t,n){return dP(t,n)}Mapped(t,n,r){return U7(t,n,r)}Module(t){return iY(t)}Never(t){return Gi(t)}Not(t,n){return sY(t,n)}Null(t){return bT(t)}Number(t){return Bm(t)}Object(t,n){return io(t,n)}Omit(t,n,r){return By(t,n,r)}Partial(t,n){return $_(t,n)}Pick(t,n,r){return Ly(t,n,r)}Record(t,n,r){return vT(t,n,r)}Recursive(t,n){return oY(t,n)}Ref(...t){return Fm(t[0],t[1])}Required(t,n){return Q_(t,n)}Rest(t){return lY(t)}String(t){return qd(t)}TemplateLiteral(t,n){return iP(t,n)}Transform(t){return cY(t)}Tuple(t,n){return Lm(t,n)}Uncapitalize(t,n){return pP(t,n)}Union(t,n){return qs(t,n)}Unknown(t){return Uf(t)}Unsafe(t){return gP(t)}Uppercase(t,n){return mP(t,n)}}});var Bnt={};li(Bnt,{Any:()=>Oy,Argument:()=>EN,Array:()=>uA,AsyncIterator:()=>w_,Awaited:()=>B_,BigInt:()=>k_,Boolean:()=>pT,Capitalize:()=>uP,Composite:()=>W7,Const:()=>j7,Constructor:()=>R_,ConstructorParameters:()=>sP,Date:()=>gT,Enum:()=>z7,Exclude:()=>G_,Extends:()=>V_,Extract:()=>W_,Function:()=>Yh,Index:()=>My,InstanceType:()=>aP,Instantiate:()=>lP,Integer:()=>cP,Intersect:()=>Zu,Iterator:()=>P_,KeyOf:()=>L_,Literal:()=>_s,Lowercase:()=>dP,Mapped:()=>U7,Module:()=>iY,Never:()=>Gi,Not:()=>sY,Null:()=>bT,Number:()=>Bm,Object:()=>io,Omit:()=>By,Optional:()=>hd,Parameters:()=>fP,Partial:()=>$_,Pick:()=>Ly,Promise:()=>mT,Readonly:()=>Rp,ReadonlyOptional:()=>ST,Record:()=>vT,Recursive:()=>oY,Ref:()=>Fm,RegExp:()=>aY,Required:()=>Q_,Rest:()=>lY,ReturnType:()=>hP,String:()=>qd,Symbol:()=>yT,TemplateLiteral:()=>iP,Transform:()=>cY,Tuple:()=>Lm,Uint8Array:()=>ET,Uncapitalize:()=>pP,Undefined:()=>AT,Union:()=>qs,Unknown:()=>Uf,Unsafe:()=>gP,Uppercase:()=>mP,Void:()=>bP});var Apn=C(()=>{DU();vie();BU();LU();V7();VU();B7();Oie();Mie();FU();Pie();$7();Die();Lie();oP();Fie();_N();M_();Uie();Vie();Gie();Py();Wie();WU();dA();Ff();Jd();Yie();fd();Hie();Q7();xN();Zh();eY();gv();Zie();nY();tY();F7();IN();K7();QU();jie();hT();zie();rY();Xie();Kie();CN();Y7();O_();ese();fT();Z7();H7();Hu();wN();uY();tse()});var nse,Epn=C(()=>{Dnt();vie();LU();V7();VU();FU();Pie();$7();_N();Uie();Vie();WU();Zie();F7();zie();Kie();Y7();Z7();H7();tse();nse=class extends ZU{Argument(t){return EN(t)}AsyncIterator(t,n){return w_(t,n)}Awaited(t,n){return B_(t,n)}BigInt(t){return k_(t)}ConstructorParameters(t,n){return sP(t,n)}Constructor(t,n,r){return R_(t,n,r)}Date(t={}){return gT(t)}Function(t,n,r){return Yh(t,n,r)}InstanceType(t,n){return aP(t,n)}Instantiate(t,n){return lP(t,n)}Iterator(t,n){return P_(t,n)}Parameters(t,n){return fP(t,n)}Promise(t,n){return mT(t,n)}RegExp(t,n){return aY(t,n)}ReturnType(t,n){return hP(t,n)}Symbol(t){return yT(t)}Undefined(t){return AT(t)}Uint8Array(t){return ET(t)}Void(t){return bP(t)}}});var ee,Lnt=C(()=>{Dnt();Apn();Epn();ee=Bnt});var jU={};li(jU,{Any:()=>Oy,Argument:()=>EN,Array:()=>uA,AsyncIterator:()=>w_,Awaited:()=>B_,BigInt:()=>k_,Boolean:()=>pT,Capitalize:()=>uP,Clone:()=>pc,CloneRest:()=>Icn,CloneType:()=>fv,Composite:()=>W7,Const:()=>j7,Constructor:()=>R_,ConstructorParameters:()=>sP,CreateType:()=>un,Date:()=>gT,Enum:()=>z7,Exclude:()=>G_,ExcludeFromMappedResult:()=>_xe,ExcludeFromTemplateLiteral:()=>Axe,Extends:()=>V_,ExtendsCheck:()=>_T,ExtendsFromMappedKey:()=>bxe,ExtendsFromMappedResult:()=>hxe,ExtendsResolverError:()=>Bie,ExtendsResult:()=>dn,ExtendsUndefinedCheck:()=>yv,Extract:()=>W_,ExtractFromMappedResult:()=>xxe,ExtractFromTemplateLiteral:()=>Sxe,FormatRegistry:()=>Qh,FromTypes:()=>YU,Function:()=>Yh,Hint:()=>Wh,Increment:()=>xun,Index:()=>My,IndexFromComputed:()=>odn,IndexFromMappedKey:()=>axe,IndexFromMappedResult:()=>ixe,IndexFromPropertyKey:()=>sxe,IndexFromPropertyKeys:()=>GU,IndexPropertyKeys:()=>Hh,InstanceType:()=>aP,Instantiate:()=>lP,Integer:()=>cP,Intersect:()=>Zu,IntersectEvaluated:()=>L7,Intrinsic:()=>pA,IntrinsicFromMappedKey:()=>Txe,IsTemplateLiteralExpressionFinite:()=>vN,IsTemplateLiteralFinite:()=>D7,Iterator:()=>P_,JavaScriptTypeBuilder:()=>nse,JsonTypeBuilder:()=>ZU,KeyOf:()=>L_,KeyOfFromMappedResult:()=>dxe,KeyOfPattern:()=>bv,KeyOfPropertyEntries:()=>G7,KeyOfPropertyKeys:()=>jh,KeyOfPropertyKeysToRest:()=>int,Kind:()=>on,KindGuard:()=>$h,Literal:()=>_s,Lowercase:()=>dP,Mapped:()=>U7,MappedFunctionReturnType:()=>Jtt,MappedKey:()=>Vun,MappedResult:()=>Ko,Module:()=>iY,Never:()=>Gi,Not:()=>sY,Null:()=>bT,Number:()=>Bm,Object:()=>io,Omit:()=>By,OmitFromMappedKey:()=>Rxe,OmitFromMappedResult:()=>Ixe,Optional:()=>hd,OptionalFromMappedResult:()=>cxe,OptionalKind:()=>Jp,Parameters:()=>fP,Partial:()=>$_,PartialFromMappedResult:()=>Mxe,PatternBoolean:()=>Eie,PatternBooleanExact:()=>Tun,PatternNever:()=>Utt,PatternNeverExact:()=>Xve,PatternNumber:()=>PU,PatternNumberExact:()=>cT,PatternString:()=>_ie,PatternStringExact:()=>uT,Pick:()=>Ly,PickFromMappedKey:()=>Oxe,PickFromMappedResult:()=>Nxe,Promise:()=>mT,Readonly:()=>Rp,ReadonlyFromMappedResult:()=>lxe,ReadonlyKind:()=>cA,ReadonlyOptional:()=>ST,Record:()=>vT,RecordKey:()=>Cxe,RecordPattern:()=>q7,RecordValue:()=>J7,Recursive:()=>oY,Ref:()=>Fm,RegExp:()=>aY,Required:()=>Q_,RequiredFromMappedResult:()=>Pxe,Rest:()=>lY,ReturnType:()=>hP,SetComplement:()=>Oun,SetDistinct:()=>Kve,SetIncludes:()=>Sie,SetIntersect:()=>Vtt,SetIntersectMany:()=>qve,SetIsSubset:()=>Nun,SetUnion:()=>kun,SetUnionMany:()=>Jve,String:()=>qd,Symbol:()=>yT,TModule:()=>Qie,TemplateLiteral:()=>iP,TemplateLiteralExpressionGenerate:()=>UU,TemplateLiteralFiniteError:()=>Tie,TemplateLiteralGenerate:()=>rP,TemplateLiteralGenerateError:()=>Iie,TemplateLiteralParse:()=>tP,TemplateLiteralParseExact:()=>nP,TemplateLiteralParserError:()=>P7,TemplateLiteralPattern:()=>Rie,TemplateLiteralPatternError:()=>wie,TemplateLiteralSyntax:()=>nxe,TemplateLiteralToUnion:()=>TN,Transform:()=>cY,TransformDecodeBuilder:()=>qie,TransformEncodeBuilder:()=>Jie,TransformKind:()=>kc,Tuple:()=>Lm,Type:()=>ee,TypeBoxError:()=>vi,TypeGuard:()=>Pt,TypeRegistry:()=>wp,Uint8Array:()=>ET,Uncapitalize:()=>pP,Undefined:()=>AT,Union:()=>qs,UnionEvaluated:()=>N_,Unknown:()=>Uf,Unsafe:()=>gP,Uppercase:()=>mP,ValueGuard:()=>Kd,Void:()=>bP});var cs=C(()=>{Wve();bN();Vc();zve();Ftt();N7();JM();M7();Fr();DU();BU();vie();LU();V7();VU();B7();Oie();Mie();FU();Pie();$7();Die();Lie();oP();Fie();_N();M_();Uie();Vie();Gie();Py();WU();Wie();dA();Ff();Yie();Jd();fd();Hie();Q7();xN();Zh();eY();gv();Zie();nY();tY();F7();IN();K7();QU();jie();hT();zie();rY();Xie();Kie();Mnt();Pnt();CN();Y7();O_();ese();fT();Z7();H7();Hu();wN();uY();tse();Lnt()});var ep,Y_=C(()=>{"use strict";ep=class{handlers=[];fire(t){for(let n of this.handlers)n(t)}event(t){return this.handlers.push(t),{dispose:()=>{let n=this.handlers.indexOf(t);n>=0&&this.handlers.splice(n,1)}}}dispose(){this.handlers=[]}}});import{randomUUID as _pn}from"node:crypto";import{Worker as BYi}from"node:worker_threads";var Spn,vpn,zU,Dxe=C(()=>{"use strict";en();Y_();Spn=tt.child({prefix:"IndexingWorkerHost"}),vpn=3e4,zU=class{worker=null;pending=new Map;startPromise=null;workspaceIds=new Set;primaryWorkspaceId;failureReported=!1;terminationReported=!1;terminationError;shuttingDown=!1;onEvent=new ep;onTerminated=new ep;config;constructor(t){this.config=t}registerWorkspace(t){this.workspaceIds.add(t),this.primaryWorkspaceId??=t}unregisterWorkspace(t){this.workspaceIds.delete(t),this.primaryWorkspaceId===t&&(this.primaryWorkspaceId=this.workspaceIds.values().next().value)}shouldReceiveGlobalEvents(t){return t===this.primaryWorkspaceId}start(){return this.worker&&this.terminationError?Promise.reject(this.terminationError):(this.startPromise??=this.startWorker().catch(async t=>{throw this.shuttingDown||this.reportFailure(t instanceof Error?t:new Error(String(t)),"uncaughtException"),await this.worker?.terminate(),this.worker=null,this.startPromise=null,t}),this.startPromise)}async updateConfig(t){this.config.apiToken===t.apiToken&&this.config.apiUrl===t.apiUrl&&JSON.stringify(this.config.indexerOptions??{})===JSON.stringify(t.indexerOptions??{})||(this.config=t,!(!this.worker||!this.startPromise)&&await this.sendCommand({type:"configure",requestId:_pn(),config:t}))}sendCommand(t){return!this.worker||!this.startPromise?Promise.reject(new Error("Worker not started")):new Promise((n,r)=>{this.pending.set(t.requestId,{resolve:n,reject:r}),this.worker?.postMessage(t)})}async shutdown(){let t=this.worker;t&&(this.shuttingDown=!0,this.worker=null,this.startPromise=null,this.rejectAll(new Error("Indexing worker shut down")),await t.terminate(),this.workspaceIds.clear(),this.primaryWorkspaceId=void 0,this.onEvent.dispose())}async startWorker(){let t=new URL("./indexing-worker.mjs",import.meta.url);this.worker=new BYi(t),this.failureReported=!1,this.terminationReported=!1,this.terminationError=void 0,this.shuttingDown=!1;let n=new Promise((r,i)=>{let s=setTimeout(()=>{u(),i(new Error(`Indexing worker did not become ready within ${vpn}ms`))},vpn);s.unref();let o=c=>{c.type==="ready"&&(u(),r())},a=c=>{u(),i(c)},l=c=>{u(),i(new Error(`Worker exited with code ${c} before ready`))},u=()=>{clearTimeout(s),this.worker?.removeListener("message",o),this.worker?.removeListener("error",a),this.worker?.removeListener("exit",l)};this.worker?.on("message",o),this.worker?.on("error",a),this.worker?.on("exit",l)});this.worker.on("message",r=>{this.handleEvent(r)}),this.worker.on("error",r=>{let i=r;Spn.error("Worker error",{name:i?.name,message:i?.message,stack:i?.stack}),this.reportTermination(r)}),this.worker.on("exit",r=>{if(this.shuttingDown)return;let i=new Error(`Worker exited unexpectedly with code ${r}`);Spn.warn(i.message),this.reportTermination(i),this.worker=null,this.startPromise=null}),await n,await this.sendCommandWithoutStart({type:"configure",requestId:_pn(),config:{apiToken:this.config.apiToken,apiUrl:this.config.apiUrl,indexerOptions:this.config.indexerOptions}})}sendCommandWithoutStart(t){return this.worker?new Promise((n,r)=>{this.pending.set(t.requestId,{resolve:n,reject:r}),this.worker?.postMessage(t)}):Promise.reject(new Error("Worker not started"))}handleEvent(t){if(t.type==="result"||t.type==="error"||t.type==="statusResponse"){let n=this.pending.get(t.requestId);if(n)if(this.pending.delete(t.requestId),t.type==="error"){let r=new Error(t.message);t.stack&&(r.stack=t.stack),n.reject(r)}else t.type==="statusResponse"?n.resolve({status:t.status,progress:t.progress}):n.resolve(t.data)}this.onEvent.fire(t)}reportFailure(t,n){this.failureReported||(this.failureReported=!0,this.onEvent.fire({type:"fatalError",message:t.message,stack:t.stack,errorType:n}))}reportTermination(t){this.terminationReported||(this.terminationReported=!0,this.terminationError=t,this.rejectAll(t),this.reportFailure(t,"uncaughtException"),this.onTerminated.fire(t),this.onTerminated.dispose())}rejectAll(t){for(let n of this.pending.values())n.reject(t);this.pending.clear()}}});import{randomUUID as rse}from"node:crypto";var Bxe,xpn,LYi,ise,Fnt=C(()=>{"use strict";en();Y_();Dxe();Bxe=tt.child({prefix:"IndexingWorkerProxy"}),xpn=15e3,LYi=5,ise=class{host;ownsHost;workspaceId;eventSubscription;terminationSubscription;started=!1;stallCheckInterval=null;lastStatusSnapshot=null;identicalSnapshotCount=0;isDegraded=!1;lastProgress=null;lastMetrics=null;latestCheckpoint;onProgress=new ep;onMetrics=new ep;onLog=new ep;onFatalError=new ep;onWatcherUpdate=new ep;onCheckpoint=new ep;config;constructor(t,n,r=rse()){this.config=t,this.host=n??new zU(t),this.ownsHost=n===void 0,this.workspaceId=r}get checkpoint(){return this.latestCheckpoint}async start(){if(!this.started){this.host.registerWorkspace(this.workspaceId),this.started=!0,this.eventSubscription=this.host.onEvent.event(t=>{this.handleEvent(t)}),this.terminationSubscription=this.host.onTerminated.event(()=>{this.deactivate(!1)}),this.lastProgress={phase:"qualifying",percentage:0,filesDiscovered:0,filesTracked:0,filesProcessed:0,filesIndexed:0,filesFailed:0,filesRejected:0,filesPreIndexed:0},this.onProgress.fire(this.lastProgress);try{await this.host.start(),await this.host.updateConfig(this.config),this.startStallDetection()}catch(t){throw this.deactivate(),t}}}async indexWorkspace(t,n,r){if(!this.started)throw new Error("Worker not started");return await this.host.sendCommand({type:"indexWorkspace",requestId:rse(),workspaceId:this.workspaceId,workspaceRoot:t,folderToIndex:n??t,skipDirectories:r?.skipDirectories?[...r.skipDirectories]:void 0})}async createGitShaCommitIndex(t,n){if(!this.started)throw new Error("Worker not started");return await this.host.sendCommand({type:"createGitShaCommitIndex",requestId:rse(),workspaceId:this.workspaceId,repoRoot:t,revision:n})}async requestStatus(){if(!this.started)throw new Error("Worker not started");return await this.host.sendCommand({type:"statusRequest",requestId:rse(),workspaceId:this.workspaceId})}detach(){this.deactivate(),this.disposeEvents()}async dispose(){this.stopStallDetection(),this.started&&(await this.host.sendCommand({type:"dispose",requestId:rse(),workspaceId:this.workspaceId}),this.detach(),this.ownsHost&&await this.host.shutdown())}deactivate(t=!0){this.stopStallDetection(),this.eventSubscription?.dispose(),this.eventSubscription=void 0,t&&this.terminationSubscription?.dispose(),this.terminationSubscription=void 0,this.started=!1,this.host.unregisterWorkspace(this.workspaceId)}disposeEvents(){this.onProgress.dispose(),this.onMetrics.dispose(),this.onLog.dispose(),this.onFatalError.dispose(),this.onWatcherUpdate.dispose(),this.onCheckpoint.dispose()}startStallDetection(){this.stallCheckInterval||(this.stallCheckInterval=setInterval(()=>{this.checkForStall()},xpn),this.stallCheckInterval.unref())}stopStallDetection(){this.stallCheckInterval&&(clearInterval(this.stallCheckInterval),this.stallCheckInterval=null)}checkForStall(){if(!this.lastProgress)return;let{phase:t}=this.lastProgress;if(t==="complete"||t==="idle"){this.resetStallState();return}let n=JSON.stringify({phase:this.lastProgress.phase,percentage:this.lastProgress.percentage,filesProcessed:this.lastProgress.filesProcessed,filesTracked:this.lastProgress.filesTracked});n===this.lastStatusSnapshot?this.identicalSnapshotCount++:(this.isDegraded&&(Bxe.info("Progress resumed, clearing degraded state"),this.isDegraded=!1),this.identicalSnapshotCount=0,this.lastStatusSnapshot=n),this.identicalSnapshotCount>=LYi&&!this.isDegraded&&(this.isDegraded=!0,Bxe.warn(`Stall detected: ${this.identicalSnapshotCount} identical snapshots (${this.identicalSnapshotCount*xpn/1e3}s with no progress)`),this.onProgress.fire({...this.lastProgress,degraded:!0}))}resetStallState(){this.identicalSnapshotCount=0,this.lastStatusSnapshot=null,this.isDegraded=!1}handleEvent(t){let n="workspaceId"in t?t.workspaceId:void 0;if(!(n!==void 0&&n!==this.workspaceId)&&!(n===void 0&&t.type!=="fatalError"&&!this.host.shouldReceiveGlobalEvents(this.workspaceId)))switch(t.type){case"result":case"error":break;case"progress":{this.lastProgress=t.progress,this.isDegraded&&(this.isDegraded=!1,this.identicalSnapshotCount=0,Bxe.info("Progress resumed, clearing degraded state")),this.onProgress.fire(t.progress);break}case"statusResponse":break;case"log":{this.onLog.fire({level:t.level,prefix:t.prefix,message:t.message});break}case"metrics":{this.lastMetrics={heapUsedMb:t.heapUsedMb,rssMb:t.rssMb,activeHandles:t.activeHandles,timestamp:t.timestamp},this.onMetrics.fire(this.lastMetrics);break}case"fatalError":{Bxe.error(`Worker fatal error (${t.errorType})`,{message:t.message}),this.onFatalError.fire({message:t.message,stack:t.stack,errorType:t.errorType});break}case"watcherUpdate":{this.onWatcherUpdate.fire({filesAdded:t.filesAdded,filesDeleted:t.filesDeleted});break}case"checkpointUpdate":{this.latestCheckpoint=t.checkpoint,this.onCheckpoint.fire(t.checkpoint);break}case"ready":break}}}});function FYi(e){return typeof e=="string"?e:e.filter(t=>t.type==="text").map(t=>t.text).join(`
|
|
135
135
|
`)}function Cpn(e){let t=[],n="";for(let r of e){if(r.type!=="message"||!r.message)continue;let i=r.message;if(i.role==="user"){let s=FYi(i.content);n+=(n&&s?`
|
|
136
|
-
`:"")+s}else if(i.role==="assistant"&&n){let s=Array.isArray(i.content)?i.content.filter(o=>o.type==="text").map(o=>o.text??"").join(""):"";if(!s)continue;t.push({request_message:n,request_id:r.id,response_text:s}),n=""}}return t}function Tpn(e,t=1e5){if(e.length===0)return e;let n=0,r=e.length;for(let i=e.length-1;i>=0;i--){let s=JSON.stringify(e[i]).length;if(n+s>t)break;n+=s,r=i}return e.slice(r)}var Ipn=C(()=>{"use strict"});import{basename as UYi}from"node:path";function VYi(e){return`${(e/1e3).toFixed(1)}s`}function GYi(e){switch(e.kind){case"success":return`done ${VYi(e.elapsedMs)}`;case"failed":return"failed";case"skipped":return"skipped";case"too-large":return"too large"}}function WYi(e){if(!e)return;let{phase:t,filesTracked:n,filesProcessed:r,filesPreIndexed:i}=e;if(t==="qualifying"||t==="indexing"&&!e.walkComplete)return`discovering ${n+i} files`;if(t==="indexing"){let s=n+i,o=r+i;return`${s>0?Math.round(o/s*100):0}%`}if(t==="complete")return"100%";if(t==="workspace-too-large")return"too large"}function $Yi(e){return e.done?GYi(e.done):WYi(e.lastProgress)}function Rpn(e){let t=e?.fg,n=e?.getFgAnsi;if(typeof t!="function"||typeof n!="function")return{};let r=t.bind(e),i=n.bind(e);return{label:s=>`${r("mdHeading",s)}${i("dim")}`,doneSuccess:s=>`${r("success",s)}${i("dim")}`}}function Unt(e,t={}){let n=$Yi(e);if(n===void 0)return;let r=t.label??wpn,i=t.doneSuccess??wpn,s=e.done?.kind==="success"?i(n):n;return`${r(`[${UYi(e.cwd)}]`)}: ${s}`}function Vnt(e,t={}){let n=[];for(let r of e){let i=Unt(r,t);i!==void 0&&n.push(i)}return n.length>0?` | ${n.join(" | ")}`:""}function Npn(e,t,n={}){let r=[],i=Unt(e,n);i!==void 0&&r.push(i);for(let s of t){let o=Unt(s,n);o!==void 0&&r.push(o)}return r.length>0?`Indexing ${r.join(" | ")}`:""}var wpn,kpn=C(()=>{"use strict";wpn=e=>e});import{readFileSync as Wnt,realpathSync as Opn,statSync as QYi}from"node:fs";import{basename as Mpn,dirname as Gnt,join as Lxe,resolve as Fxe}from"node:path";function Ppn(e,t){if(e===t)return!0;let n;try{n=Opn(e)}catch{return!1}let r;try{r=Opn(t)}catch{return!1}return n===r}function ZYi(e){let t=Lxe(e,".git"),n;try{n=QYi(t)}catch{return null}if(n.isDirectory()||!n.isFile()||n.size>YYi)return null;let r;try{r=Wnt(t,"utf-8")}catch{return null}let i=r.match(HYi);return i===null?null:Fxe(e,i[1].trim())}function jYi(e,t){let n;try{n=Wnt(Lxe(e,"gitdir"),"utf-8")}catch{return!1}let r=Fxe(e,n.trim());return Ppn(r,t)}function sse(e){try{let t=Fxe(e),n=Lxe(t,".git"),r=ZYi(t);if(r===null||!jYi(r,n))return null;let i;try{i=Wnt(Lxe(r,"commondir"),"utf-8")}catch{return null}let s=Fxe(r,i.trim());if(Mpn(s)!==".git")return null;let o=Gnt(r);return Mpn(o)!=="worktrees"||!Ppn(Gnt(o),s)?null:Gnt(s)}catch{return null}}var YYi,HYi,$nt=C(()=>{"use strict";YYi=64*1024,HYi=/^gitdir:\s*(.+)\s*$/m});import{realpathSync as zYi}from"node:fs";import{homedir as XYi}from"node:os";import{isAbsolute as KYi,relative as qYi,resolve as yP,sep as JYi}from"node:path";function Lpn(e){return e.daemonChild?"daemon-child":"non-daemon"}function Fpn(e){let t=ose(e);return t.decision==="allowed"?{allowed:!0,reason:`allowed (${t.inheritedFrom===void 0?"rule":`inherited from ${t.inheritedFrom}`}, ${t.reason})`}:t.decision==="deny"||t.decision==="never"?{allowed:!1,reason:`skipped (${t.reason})`}:e.allowIndexingFlag?{allowed:!0,reason:"allowed (--allow-indexing, session only, not persisted)"}:{allowed:!1,reason:"skipped (unruled and --allow-indexing not set)"}}function Uxe(e,t){let n=qYi(e,t);return!(KYi(n)||n===".."||n.startsWith(`..${JYi}`)||n.startsWith("../"))}function Upn(e){try{return zYi(e)}catch{return null}}function Dpn(e){if(e===void 0)return;let t=[];for(let n of e){let r=Upn(n);r!==null&&t.push(r)}return t}function Vxe(e,t,n){let r=yP(n),i=yP(XYi());return Uxe(r,i)?"never":t!==void 0&&t.length>0&&t.some(a=>Uxe(yP(a),r))?"deny":e===void 0?"none":e.some(o=>{let a=yP(o);return Uxe(a,i)?!1:Uxe(a,r)})?"allowed":"none"}function Qnt(e,t,n){let r=Vxe(e,t,n);if(r!=="none")return r;let i=Upn(n);return i===null?"none":Vxe(Dpn(e),Dpn(t),i)}function Ynt(e,t,n){let r=Vxe(e,t,n);if(r!=="none")return r;let i=sse(n);return i===null?"none":Qnt(e,t,i)}function Bpn(e){let t=Vxe(e.allowedDirs,e.denyDirs,e.path);if(t==="never")return{decision:"never",reason:"home-hard-block"};if(t==="deny")return{decision:"deny",reason:"deny-dir"};if(e.storedDecision==="deny")return{decision:"deny",reason:"stored-deny"};if(t==="allowed")return{decision:"allowed",reason:"allow-dir"};if(e.storedDecision==="allow")return{decision:"allowed",reason:"stored-allow"}}function eHi(e){if(e.repositoryRoot===void 0)return;let t=yP(e.repositoryRoot);if(t===e.normalizedTarget)return;let n=Qnt(e.allowedDirs,e.denyDirs,t);if(n==="never")return{decision:"never",reason:"home-hard-block"};let r=e.repositoryRootStoredDecision??e.storedDecisions?.[t];if(n==="deny"||r==="deny")return{decision:"deny",reason:"repository-root-deny",inheritedFrom:t};if(n==="allowed"||r==="allow")return{decision:"allowed",reason:"repository-root-allow",inheritedFrom:t}}function tHi(e){let t=sse(e.targetDir);if(t===null)return{decision:"none",reason:"unruled"};let n=Qnt(e.allowedDirs,e.denyDirs,t);if(n==="never")return{decision:"never",reason:"home-hard-block"};let r=e.storedDecisions?.[yP(t)];return n==="deny"||r==="deny"?{decision:"deny",reason:"worktree-inherited-deny",inheritedFrom:t}:n==="allowed"||r==="allow"?{decision:"allowed",reason:"worktree-inherited-allow",inheritedFrom:t}:{decision:"none",reason:"unruled"}}function ose(e){let{targetDir:t,allowedDirs:n,denyDirs:r,storedDecision:i,repositoryRoot:s,repositoryRootStoredDecision:o,sourceWorkspacePath:a,storedDecisions:l}=e,u=yP(t),c=Bpn({allowedDirs:n,denyDirs:r,path:u,storedDecision:i??l?.[u]});if(c!==void 0&&c.decision!=="allowed")return c;let d=a===void 0?void 0:yP(a);if(d!==void 0&&d!==u){let m=Bpn({allowedDirs:n,denyDirs:r,path:d,storedDecision:l?.[d]});if(m!==void 0)return m}if(c!==void 0)return c;let p=eHi({allowedDirs:n,denyDirs:r,normalizedTarget:u,repositoryRoot:s,repositoryRootStoredDecision:o,storedDecisions:l});return p!==void 0?p:tHi({allowedDirs:n,denyDirs:r,targetDir:t,storedDecisions:l})}var ase=C(()=>{"use strict";$nt()});function rHi(e){return e.kind==="skipped"||e.kind==="ready"||e.kind==="failed"}function XU(){let e;return{promise:new Promise(n=>{e=n}),resolve:e}}function Ev(e,t){if(rHi(e.indexing)){nHi.debug(`indexing state already terminal (${e.indexing.kind}); ignoring transition to ${t.kind}`);return}e.indexing=t}async function lse(e,t,n){if(n?.aborted)return"aborted";let r,i;try{return await Promise.race([e.then(()=>"settled"),new Promise(s=>{r=setTimeout(()=>s("timeout"),t),n&&(i=()=>s("aborted"),n.addEventListener("abort",i,{once:!0}))})])}finally{r!==void 0&&clearTimeout(r),i&&n?.removeEventListener("abort",i)}}function Hnt(e){switch(e.kind){case"not_started":case"in_progress":return"Workspace is still being indexed. Please try again shortly.";case"skipped":return`Codebase retrieval unavailable: ${e.reason}`;case"failed":return`Indexing failed: ${e.error}`;case"ready":return"Codebase retrieval unavailable.";default:{let t=e;return"Codebase retrieval unavailable."}}}var nHi,Znt=C(()=>{"use strict";en();nHi=tt.child({prefix:"pi-indexer"})});var Gpn=G((TOl,Vpn)=>{var AP=qe("constants"),iHi=process.cwd,Gxe=null,sHi=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return Gxe||(Gxe=iHi.call(process)),Gxe};try{process.cwd()}catch{}typeof process.chdir=="function"&&(jnt=process.chdir,process.chdir=function(e){Gxe=null,jnt.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,jnt));var jnt;Vpn.exports=oHi;function oHi(e){AP.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&t(e),e.lutimes||n(e),e.chown=s(e.chown),e.fchown=s(e.fchown),e.lchown=s(e.lchown),e.chmod=r(e.chmod),e.fchmod=r(e.fchmod),e.lchmod=r(e.lchmod),e.chownSync=o(e.chownSync),e.fchownSync=o(e.fchownSync),e.lchownSync=o(e.lchownSync),e.chmodSync=i(e.chmodSync),e.fchmodSync=i(e.fchmodSync),e.lchmodSync=i(e.lchmodSync),e.stat=a(e.stat),e.fstat=a(e.fstat),e.lstat=a(e.lstat),e.statSync=l(e.statSync),e.fstatSync=l(e.fstatSync),e.lstatSync=l(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(c,d,p){p&&process.nextTick(p)},e.lchmodSync=function(){}),e.chown&&!e.lchown&&(e.lchown=function(c,d,p,m){m&&process.nextTick(m)},e.lchownSync=function(){}),sHi==="win32"&&(e.rename=typeof e.rename!="function"?e.rename:(function(c){function d(p,m,f){var h=Date.now(),g=0;c(p,m,function b(A){if(A&&(A.code==="EACCES"||A.code==="EPERM"||A.code==="EBUSY")&&Date.now()-h<6e4){setTimeout(function(){e.stat(m,function(y,S){y&&y.code==="ENOENT"?c(p,m,b):f(A)})},g),g<100&&(g+=10);return}f&&f(A)})}return Object.setPrototypeOf&&Object.setPrototypeOf(d,c),d})(e.rename)),e.read=typeof e.read!="function"?e.read:(function(c){function d(p,m,f,h,g,b){var A;if(b&&typeof b=="function"){var y=0;A=function(S,_,x){if(S&&S.code==="EAGAIN"&&y<10)return y++,c.call(e,p,m,f,h,g,A);b.apply(this,arguments)}}return c.call(e,p,m,f,h,g,A)}return Object.setPrototypeOf&&Object.setPrototypeOf(d,c),d})(e.read),e.readSync=typeof e.readSync!="function"?e.readSync:(function(c){return function(d,p,m,f,h){for(var g=0;;)try{return c.call(e,d,p,m,f,h)}catch(b){if(b.code==="EAGAIN"&&g<10){g++;continue}throw b}}})(e.readSync);function t(c){c.lchmod=function(d,p,m){c.open(d,AP.O_WRONLY|AP.O_SYMLINK,p,function(f,h){if(f){m&&m(f);return}c.fchmod(h,p,function(g){c.close(h,function(b){m&&m(g||b)})})})},c.lchmodSync=function(d,p){var m=c.openSync(d,AP.O_WRONLY|AP.O_SYMLINK,p),f=!0,h;try{h=c.fchmodSync(m,p),f=!1}finally{if(f)try{c.closeSync(m)}catch{}else c.closeSync(m)}return h}}function n(c){AP.hasOwnProperty("O_SYMLINK")&&c.futimes?(c.lutimes=function(d,p,m,f){c.open(d,AP.O_SYMLINK,function(h,g){if(h){f&&f(h);return}c.futimes(g,p,m,function(b){c.close(g,function(A){f&&f(b||A)})})})},c.lutimesSync=function(d,p,m){var f=c.openSync(d,AP.O_SYMLINK),h,g=!0;try{h=c.futimesSync(f,p,m),g=!1}finally{if(g)try{c.closeSync(f)}catch{}else c.closeSync(f)}return h}):c.futimes&&(c.lutimes=function(d,p,m,f){f&&process.nextTick(f)},c.lutimesSync=function(){})}function r(c){return c&&function(d,p,m){return c.call(e,d,p,function(f){u(f)&&(f=null),m&&m.apply(this,arguments)})}}function i(c){return c&&function(d,p){try{return c.call(e,d,p)}catch(m){if(!u(m))throw m}}}function s(c){return c&&function(d,p,m,f){return c.call(e,d,p,m,function(h){u(h)&&(h=null),f&&f.apply(this,arguments)})}}function o(c){return c&&function(d,p,m){try{return c.call(e,d,p,m)}catch(f){if(!u(f))throw f}}}function a(c){return c&&function(d,p,m){typeof p=="function"&&(m=p,p=null);function f(h,g){g&&(g.uid<0&&(g.uid+=4294967296),g.gid<0&&(g.gid+=4294967296)),m&&m.apply(this,arguments)}return p?c.call(e,d,p,f):c.call(e,d,f)}}function l(c){return c&&function(d,p){var m=p?c.call(e,d,p):c.call(e,d);return m&&(m.uid<0&&(m.uid+=4294967296),m.gid<0&&(m.gid+=4294967296)),m}}function u(c){if(!c||c.code==="ENOSYS")return!0;var d=!process.getuid||process.getuid()!==0;return!!(d&&(c.code==="EINVAL"||c.code==="EPERM"))}}});var Qpn=G((IOl,$pn)=>{var Wpn=qe("stream").Stream;$pn.exports=aHi;function aHi(e){return{ReadStream:t,WriteStream:n};function t(r,i){if(!(this instanceof t))return new t(r,i);Wpn.call(this);var s=this;this.path=r,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,i=i||{};for(var o=Object.keys(i),a=0,l=o.length;a<l;a++){var u=o[a];this[u]=i[u]}if(this.encoding&&this.setEncoding(this.encoding),this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!="number")throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){s._read()});return}e.open(this.path,this.flags,this.mode,function(c,d){if(c){s.emit("error",c),s.readable=!1;return}s.fd=d,s.emit("open",d),s._read()})}function n(r,i){if(!(this instanceof n))return new n(r,i);Wpn.call(this),this.path=r,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,i=i||{};for(var s=Object.keys(i),o=0,a=s.length;o<a;o++){var l=s[o];this[l]=i[l]}if(this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var Hpn=G((wOl,Ypn)=>{"use strict";Ypn.exports=cHi;var lHi=Object.getPrototypeOf||function(e){return e.__proto__};function cHi(e){if(e===null||typeof e!="object")return e;if(e instanceof Object)var t={__proto__:lHi(e)};else var t=Object.create(null);return Object.getOwnPropertyNames(e).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n))}),t}});var qnt=G((ROl,Knt)=>{var ju=qe("fs"),uHi=Gpn(),dHi=Qpn(),pHi=Hpn(),Wxe=qe("util"),Vf,Qxe;typeof Symbol=="function"&&typeof Symbol.for=="function"?(Vf=Symbol.for("graceful-fs.queue"),Qxe=Symbol.for("graceful-fs.previous")):(Vf="___graceful-fs.queue",Qxe="___graceful-fs.previous");function mHi(){}function zpn(e,t){Object.defineProperty(e,Vf,{get:function(){return t}})}var KU=mHi;Wxe.debuglog?KU=Wxe.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(KU=function(){var e=Wxe.format.apply(Wxe,arguments);e="GFS4: "+e.split(/\n/).join(`
|
|
136
|
+
`:"")+s}else if(i.role==="assistant"&&n){let s=Array.isArray(i.content)?i.content.filter(o=>o.type==="text").map(o=>o.text??"").join(""):"";if(!s)continue;t.push({request_message:n,request_id:r.id,response_text:s}),n=""}}return t}function Tpn(e,t=1e5){if(e.length===0)return e;let n=0,r=e.length;for(let i=e.length-1;i>=0;i--){let s=JSON.stringify(e[i]).length;if(n+s>t)break;n+=s,r=i}return e.slice(r)}var Ipn=C(()=>{"use strict"});import{basename as UYi}from"node:path";function VYi(e){return`${(e/1e3).toFixed(1)}s`}function GYi(e){switch(e.kind){case"success":return`done ${VYi(e.elapsedMs)}`;case"failed":return"failed";case"skipped":return"skipped";case"too-large":return"too large"}}function WYi(e){if(!e)return;let{phase:t,filesTracked:n,filesProcessed:r,filesPreIndexed:i}=e;if(t==="qualifying"||t==="indexing"&&!e.walkComplete)return`discovering ${n+i} files`;if(t==="indexing"){let s=n+i,o=r+i;return`${s>0?Math.floor(o/s*100):0}%`}if(t==="complete")return"100%";if(t==="workspace-too-large")return"too large"}function $Yi(e){return e.done?GYi(e.done):WYi(e.lastProgress)}function Rpn(e){let t=e?.fg,n=e?.getFgAnsi;if(typeof t!="function"||typeof n!="function")return{};let r=t.bind(e),i=n.bind(e);return{label:s=>`${r("mdHeading",s)}${i("dim")}`,doneSuccess:s=>`${r("success",s)}${i("dim")}`}}function Unt(e,t={}){let n=$Yi(e);if(n===void 0)return;let r=t.label??wpn,i=t.doneSuccess??wpn,s=e.done?.kind==="success"?i(n):n;return`${r(`[${UYi(e.cwd)}]`)}: ${s}`}function Vnt(e,t={}){let n=[];for(let r of e){let i=Unt(r,t);i!==void 0&&n.push(i)}return n.length>0?` | ${n.join(" | ")}`:""}function Npn(e,t,n={}){let r=[],i=Unt(e,n);i!==void 0&&r.push(i);for(let s of t){let o=Unt(s,n);o!==void 0&&r.push(o)}return r.length>0?`Indexing ${r.join(" | ")}`:""}var wpn,kpn=C(()=>{"use strict";wpn=e=>e});import{readFileSync as Wnt,realpathSync as Opn,statSync as QYi}from"node:fs";import{basename as Mpn,dirname as Gnt,join as Lxe,resolve as Fxe}from"node:path";function Ppn(e,t){if(e===t)return!0;let n;try{n=Opn(e)}catch{return!1}let r;try{r=Opn(t)}catch{return!1}return n===r}function ZYi(e){let t=Lxe(e,".git"),n;try{n=QYi(t)}catch{return null}if(n.isDirectory()||!n.isFile()||n.size>YYi)return null;let r;try{r=Wnt(t,"utf-8")}catch{return null}let i=r.match(HYi);return i===null?null:Fxe(e,i[1].trim())}function jYi(e,t){let n;try{n=Wnt(Lxe(e,"gitdir"),"utf-8")}catch{return!1}let r=Fxe(e,n.trim());return Ppn(r,t)}function sse(e){try{let t=Fxe(e),n=Lxe(t,".git"),r=ZYi(t);if(r===null||!jYi(r,n))return null;let i;try{i=Wnt(Lxe(r,"commondir"),"utf-8")}catch{return null}let s=Fxe(r,i.trim());if(Mpn(s)!==".git")return null;let o=Gnt(r);return Mpn(o)!=="worktrees"||!Ppn(Gnt(o),s)?null:Gnt(s)}catch{return null}}var YYi,HYi,$nt=C(()=>{"use strict";YYi=64*1024,HYi=/^gitdir:\s*(.+)\s*$/m});import{realpathSync as zYi}from"node:fs";import{homedir as XYi}from"node:os";import{isAbsolute as KYi,relative as qYi,resolve as yP,sep as JYi}from"node:path";function Lpn(e){return e.daemonChild?"daemon-child":"non-daemon"}function Fpn(e){let t=ose(e);return t.decision==="allowed"?{allowed:!0,reason:`allowed (${t.inheritedFrom===void 0?"rule":`inherited from ${t.inheritedFrom}`}, ${t.reason})`}:t.decision==="deny"||t.decision==="never"?{allowed:!1,reason:`skipped (${t.reason})`}:e.allowIndexingFlag?{allowed:!0,reason:"allowed (--allow-indexing, session only, not persisted)"}:{allowed:!1,reason:"skipped (unruled and --allow-indexing not set)"}}function Uxe(e,t){let n=qYi(e,t);return!(KYi(n)||n===".."||n.startsWith(`..${JYi}`)||n.startsWith("../"))}function Upn(e){try{return zYi(e)}catch{return null}}function Dpn(e){if(e===void 0)return;let t=[];for(let n of e){let r=Upn(n);r!==null&&t.push(r)}return t}function Vxe(e,t,n){let r=yP(n),i=yP(XYi());return Uxe(r,i)?"never":t!==void 0&&t.length>0&&t.some(a=>Uxe(yP(a),r))?"deny":e===void 0?"none":e.some(o=>{let a=yP(o);return Uxe(a,i)?!1:Uxe(a,r)})?"allowed":"none"}function Qnt(e,t,n){let r=Vxe(e,t,n);if(r!=="none")return r;let i=Upn(n);return i===null?"none":Vxe(Dpn(e),Dpn(t),i)}function Ynt(e,t,n){let r=Vxe(e,t,n);if(r!=="none")return r;let i=sse(n);return i===null?"none":Qnt(e,t,i)}function Bpn(e){let t=Vxe(e.allowedDirs,e.denyDirs,e.path);if(t==="never")return{decision:"never",reason:"home-hard-block"};if(t==="deny")return{decision:"deny",reason:"deny-dir"};if(e.storedDecision==="deny")return{decision:"deny",reason:"stored-deny"};if(t==="allowed")return{decision:"allowed",reason:"allow-dir"};if(e.storedDecision==="allow")return{decision:"allowed",reason:"stored-allow"}}function eHi(e){if(e.repositoryRoot===void 0)return;let t=yP(e.repositoryRoot);if(t===e.normalizedTarget)return;let n=Qnt(e.allowedDirs,e.denyDirs,t);if(n==="never")return{decision:"never",reason:"home-hard-block"};let r=e.repositoryRootStoredDecision??e.storedDecisions?.[t];if(n==="deny"||r==="deny")return{decision:"deny",reason:"repository-root-deny",inheritedFrom:t};if(n==="allowed"||r==="allow")return{decision:"allowed",reason:"repository-root-allow",inheritedFrom:t}}function tHi(e){let t=sse(e.targetDir);if(t===null)return{decision:"none",reason:"unruled"};let n=Qnt(e.allowedDirs,e.denyDirs,t);if(n==="never")return{decision:"never",reason:"home-hard-block"};let r=e.storedDecisions?.[yP(t)];return n==="deny"||r==="deny"?{decision:"deny",reason:"worktree-inherited-deny",inheritedFrom:t}:n==="allowed"||r==="allow"?{decision:"allowed",reason:"worktree-inherited-allow",inheritedFrom:t}:{decision:"none",reason:"unruled"}}function ose(e){let{targetDir:t,allowedDirs:n,denyDirs:r,storedDecision:i,repositoryRoot:s,repositoryRootStoredDecision:o,sourceWorkspacePath:a,storedDecisions:l}=e,u=yP(t),c=Bpn({allowedDirs:n,denyDirs:r,path:u,storedDecision:i??l?.[u]});if(c!==void 0&&c.decision!=="allowed")return c;let d=a===void 0?void 0:yP(a);if(d!==void 0&&d!==u){let m=Bpn({allowedDirs:n,denyDirs:r,path:d,storedDecision:l?.[d]});if(m!==void 0)return m}if(c!==void 0)return c;let p=eHi({allowedDirs:n,denyDirs:r,normalizedTarget:u,repositoryRoot:s,repositoryRootStoredDecision:o,storedDecisions:l});return p!==void 0?p:tHi({allowedDirs:n,denyDirs:r,targetDir:t,storedDecisions:l})}var ase=C(()=>{"use strict";$nt()});function rHi(e){return e.kind==="skipped"||e.kind==="ready"||e.kind==="failed"}function XU(){let e;return{promise:new Promise(n=>{e=n}),resolve:e}}function Ev(e,t){if(rHi(e.indexing)){nHi.debug(`indexing state already terminal (${e.indexing.kind}); ignoring transition to ${t.kind}`);return}e.indexing=t}async function lse(e,t,n){if(n?.aborted)return"aborted";let r,i;try{return await Promise.race([e.then(()=>"settled"),new Promise(s=>{r=setTimeout(()=>s("timeout"),t),n&&(i=()=>s("aborted"),n.addEventListener("abort",i,{once:!0}))})])}finally{r!==void 0&&clearTimeout(r),i&&n?.removeEventListener("abort",i)}}function Hnt(e){switch(e.kind){case"not_started":case"in_progress":return"Workspace is still being indexed. Please try again shortly.";case"skipped":return`Codebase retrieval unavailable: ${e.reason}`;case"failed":return`Indexing failed: ${e.error}`;case"ready":return"Codebase retrieval unavailable.";default:{let t=e;return"Codebase retrieval unavailable."}}}var nHi,Znt=C(()=>{"use strict";en();nHi=tt.child({prefix:"pi-indexer"})});var Gpn=G((TOl,Vpn)=>{var AP=qe("constants"),iHi=process.cwd,Gxe=null,sHi=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return Gxe||(Gxe=iHi.call(process)),Gxe};try{process.cwd()}catch{}typeof process.chdir=="function"&&(jnt=process.chdir,process.chdir=function(e){Gxe=null,jnt.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,jnt));var jnt;Vpn.exports=oHi;function oHi(e){AP.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&t(e),e.lutimes||n(e),e.chown=s(e.chown),e.fchown=s(e.fchown),e.lchown=s(e.lchown),e.chmod=r(e.chmod),e.fchmod=r(e.fchmod),e.lchmod=r(e.lchmod),e.chownSync=o(e.chownSync),e.fchownSync=o(e.fchownSync),e.lchownSync=o(e.lchownSync),e.chmodSync=i(e.chmodSync),e.fchmodSync=i(e.fchmodSync),e.lchmodSync=i(e.lchmodSync),e.stat=a(e.stat),e.fstat=a(e.fstat),e.lstat=a(e.lstat),e.statSync=l(e.statSync),e.fstatSync=l(e.fstatSync),e.lstatSync=l(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(c,d,p){p&&process.nextTick(p)},e.lchmodSync=function(){}),e.chown&&!e.lchown&&(e.lchown=function(c,d,p,m){m&&process.nextTick(m)},e.lchownSync=function(){}),sHi==="win32"&&(e.rename=typeof e.rename!="function"?e.rename:(function(c){function d(p,m,f){var h=Date.now(),g=0;c(p,m,function b(A){if(A&&(A.code==="EACCES"||A.code==="EPERM"||A.code==="EBUSY")&&Date.now()-h<6e4){setTimeout(function(){e.stat(m,function(y,S){y&&y.code==="ENOENT"?c(p,m,b):f(A)})},g),g<100&&(g+=10);return}f&&f(A)})}return Object.setPrototypeOf&&Object.setPrototypeOf(d,c),d})(e.rename)),e.read=typeof e.read!="function"?e.read:(function(c){function d(p,m,f,h,g,b){var A;if(b&&typeof b=="function"){var y=0;A=function(S,_,x){if(S&&S.code==="EAGAIN"&&y<10)return y++,c.call(e,p,m,f,h,g,A);b.apply(this,arguments)}}return c.call(e,p,m,f,h,g,A)}return Object.setPrototypeOf&&Object.setPrototypeOf(d,c),d})(e.read),e.readSync=typeof e.readSync!="function"?e.readSync:(function(c){return function(d,p,m,f,h){for(var g=0;;)try{return c.call(e,d,p,m,f,h)}catch(b){if(b.code==="EAGAIN"&&g<10){g++;continue}throw b}}})(e.readSync);function t(c){c.lchmod=function(d,p,m){c.open(d,AP.O_WRONLY|AP.O_SYMLINK,p,function(f,h){if(f){m&&m(f);return}c.fchmod(h,p,function(g){c.close(h,function(b){m&&m(g||b)})})})},c.lchmodSync=function(d,p){var m=c.openSync(d,AP.O_WRONLY|AP.O_SYMLINK,p),f=!0,h;try{h=c.fchmodSync(m,p),f=!1}finally{if(f)try{c.closeSync(m)}catch{}else c.closeSync(m)}return h}}function n(c){AP.hasOwnProperty("O_SYMLINK")&&c.futimes?(c.lutimes=function(d,p,m,f){c.open(d,AP.O_SYMLINK,function(h,g){if(h){f&&f(h);return}c.futimes(g,p,m,function(b){c.close(g,function(A){f&&f(b||A)})})})},c.lutimesSync=function(d,p,m){var f=c.openSync(d,AP.O_SYMLINK),h,g=!0;try{h=c.futimesSync(f,p,m),g=!1}finally{if(g)try{c.closeSync(f)}catch{}else c.closeSync(f)}return h}):c.futimes&&(c.lutimes=function(d,p,m,f){f&&process.nextTick(f)},c.lutimesSync=function(){})}function r(c){return c&&function(d,p,m){return c.call(e,d,p,function(f){u(f)&&(f=null),m&&m.apply(this,arguments)})}}function i(c){return c&&function(d,p){try{return c.call(e,d,p)}catch(m){if(!u(m))throw m}}}function s(c){return c&&function(d,p,m,f){return c.call(e,d,p,m,function(h){u(h)&&(h=null),f&&f.apply(this,arguments)})}}function o(c){return c&&function(d,p,m){try{return c.call(e,d,p,m)}catch(f){if(!u(f))throw f}}}function a(c){return c&&function(d,p,m){typeof p=="function"&&(m=p,p=null);function f(h,g){g&&(g.uid<0&&(g.uid+=4294967296),g.gid<0&&(g.gid+=4294967296)),m&&m.apply(this,arguments)}return p?c.call(e,d,p,f):c.call(e,d,f)}}function l(c){return c&&function(d,p){var m=p?c.call(e,d,p):c.call(e,d);return m&&(m.uid<0&&(m.uid+=4294967296),m.gid<0&&(m.gid+=4294967296)),m}}function u(c){if(!c||c.code==="ENOSYS")return!0;var d=!process.getuid||process.getuid()!==0;return!!(d&&(c.code==="EINVAL"||c.code==="EPERM"))}}});var Qpn=G((IOl,$pn)=>{var Wpn=qe("stream").Stream;$pn.exports=aHi;function aHi(e){return{ReadStream:t,WriteStream:n};function t(r,i){if(!(this instanceof t))return new t(r,i);Wpn.call(this);var s=this;this.path=r,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,i=i||{};for(var o=Object.keys(i),a=0,l=o.length;a<l;a++){var u=o[a];this[u]=i[u]}if(this.encoding&&this.setEncoding(this.encoding),this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!="number")throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){s._read()});return}e.open(this.path,this.flags,this.mode,function(c,d){if(c){s.emit("error",c),s.readable=!1;return}s.fd=d,s.emit("open",d),s._read()})}function n(r,i){if(!(this instanceof n))return new n(r,i);Wpn.call(this),this.path=r,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,i=i||{};for(var s=Object.keys(i),o=0,a=s.length;o<a;o++){var l=s[o];this[l]=i[l]}if(this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var Hpn=G((wOl,Ypn)=>{"use strict";Ypn.exports=cHi;var lHi=Object.getPrototypeOf||function(e){return e.__proto__};function cHi(e){if(e===null||typeof e!="object")return e;if(e instanceof Object)var t={__proto__:lHi(e)};else var t=Object.create(null);return Object.getOwnPropertyNames(e).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n))}),t}});var qnt=G((ROl,Knt)=>{var ju=qe("fs"),uHi=Gpn(),dHi=Qpn(),pHi=Hpn(),Wxe=qe("util"),Vf,Qxe;typeof Symbol=="function"&&typeof Symbol.for=="function"?(Vf=Symbol.for("graceful-fs.queue"),Qxe=Symbol.for("graceful-fs.previous")):(Vf="___graceful-fs.queue",Qxe="___graceful-fs.previous");function mHi(){}function zpn(e,t){Object.defineProperty(e,Vf,{get:function(){return t}})}var KU=mHi;Wxe.debuglog?KU=Wxe.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(KU=function(){var e=Wxe.format.apply(Wxe,arguments);e="GFS4: "+e.split(/\n/).join(`
|
|
137
137
|
GFS4: `),console.error(e)});ju[Vf]||(Zpn=global[Vf]||[],zpn(ju,Zpn),ju.close=(function(e){function t(n,r){return e.call(ju,n,function(i){i||jpn(),typeof r=="function"&&r.apply(this,arguments)})}return Object.defineProperty(t,Qxe,{value:e}),t})(ju.close),ju.closeSync=(function(e){function t(n){e.apply(ju,arguments),jpn()}return Object.defineProperty(t,Qxe,{value:e}),t})(ju.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){KU(ju[Vf]),qe("assert").equal(ju[Vf].length,0)}));var Zpn;global[Vf]||zpn(global,ju[Vf]);Knt.exports=znt(pHi(ju));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!ju.__patched&&(Knt.exports=znt(ju),ju.__patched=!0);function znt(e){uHi(e),e.gracefulify=znt,e.createReadStream=_,e.createWriteStream=x;var t=e.readFile;e.readFile=n;function n(T,D,M){return typeof D=="function"&&(M=D,D=null),P(T,D,M);function P(O,k,L,F){return t(O,k,function(Q){Q&&(Q.code==="EMFILE"||Q.code==="ENFILE")?dY([P,[O,k,L],Q,F||Date.now(),Date.now()]):typeof L=="function"&&L.apply(this,arguments)})}}var r=e.writeFile;e.writeFile=i;function i(T,D,M,P){return typeof M=="function"&&(P=M,M=null),O(T,D,M,P);function O(k,L,F,Q,U){return r(k,L,F,function(J){J&&(J.code==="EMFILE"||J.code==="ENFILE")?dY([O,[k,L,F,Q],J,U||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}var s=e.appendFile;s&&(e.appendFile=o);function o(T,D,M,P){return typeof M=="function"&&(P=M,M=null),O(T,D,M,P);function O(k,L,F,Q,U){return s(k,L,F,function(J){J&&(J.code==="EMFILE"||J.code==="ENFILE")?dY([O,[k,L,F,Q],J,U||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}var a=e.copyFile;a&&(e.copyFile=l);function l(T,D,M,P){return typeof M=="function"&&(P=M,M=0),O(T,D,M,P);function O(k,L,F,Q,U){return a(k,L,F,function(J){J&&(J.code==="EMFILE"||J.code==="ENFILE")?dY([O,[k,L,F,Q],J,U||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}var u=e.readdir;e.readdir=d;var c=/^v[0-5]\./;function d(T,D,M){typeof D=="function"&&(M=D,D=null);var P=c.test(process.version)?function(L,F,Q,U){return u(L,O(L,F,Q,U))}:function(L,F,Q,U){return u(L,F,O(L,F,Q,U))};return P(T,D,M);function O(k,L,F,Q){return function(U,J){U&&(U.code==="EMFILE"||U.code==="ENFILE")?dY([P,[k,L,F],U,Q||Date.now(),Date.now()]):(J&&J.sort&&J.sort(),typeof F=="function"&&F.call(this,U,J))}}}if(process.version.substr(0,4)==="v0.8"){var p=dHi(e);b=p.ReadStream,y=p.WriteStream}var m=e.ReadStream;m&&(b.prototype=Object.create(m.prototype),b.prototype.open=A);var f=e.WriteStream;f&&(y.prototype=Object.create(f.prototype),y.prototype.open=S),Object.defineProperty(e,"ReadStream",{get:function(){return b},set:function(T){b=T},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return y},set:function(T){y=T},enumerable:!0,configurable:!0});var h=b;Object.defineProperty(e,"FileReadStream",{get:function(){return h},set:function(T){h=T},enumerable:!0,configurable:!0});var g=y;Object.defineProperty(e,"FileWriteStream",{get:function(){return g},set:function(T){g=T},enumerable:!0,configurable:!0});function b(T,D){return this instanceof b?(m.apply(this,arguments),this):b.apply(Object.create(b.prototype),arguments)}function A(){var T=this;w(T.path,T.flags,T.mode,function(D,M){D?(T.autoClose&&T.destroy(),T.emit("error",D)):(T.fd=M,T.emit("open",M),T.read())})}function y(T,D){return this instanceof y?(f.apply(this,arguments),this):y.apply(Object.create(y.prototype),arguments)}function S(){var T=this;w(T.path,T.flags,T.mode,function(D,M){D?(T.destroy(),T.emit("error",D)):(T.fd=M,T.emit("open",M))})}function _(T,D){return new e.ReadStream(T,D)}function x(T,D){return new e.WriteStream(T,D)}var v=e.open;e.open=w;function w(T,D,M,P){return typeof M=="function"&&(P=M,M=null),O(T,D,M,P);function O(k,L,F,Q,U){return v(k,L,F,function(J,ie){J&&(J.code==="EMFILE"||J.code==="ENFILE")?dY([O,[k,L,F,Q],J,U||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}return e}function dY(e){KU("ENQUEUE",e[0].name,e[1]),ju[Vf].push(e),Xnt()}var $xe;function jpn(){for(var e=Date.now(),t=0;t<ju[Vf].length;++t)ju[Vf][t].length>2&&(ju[Vf][t][3]=e,ju[Vf][t][4]=e);Xnt()}function Xnt(){if(clearTimeout($xe),$xe=void 0,ju[Vf].length!==0){var e=ju[Vf].shift(),t=e[0],n=e[1],r=e[2],i=e[3],s=e[4];if(i===void 0)KU("RETRY",t.name,n),t.apply(null,n);else if(Date.now()-i>=6e4){KU("TIMEOUT",t.name,n);var o=n.pop();typeof o=="function"&&o.call(null,r)}else{var a=Date.now()-s,l=Math.max(s-i,1),u=Math.min(l*1.2,100);a>=u?(KU("RETRY",t.name,n),t.apply(null,n.concat([i]))):ju[Vf].push(e)}$xe===void 0&&($xe=setTimeout(Xnt,0))}}});var Kpn=G((NOl,Xpn)=>{function H_(e,t){typeof t=="boolean"&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}Xpn.exports=H_;H_.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};H_.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null};H_.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=new Date().getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var n=this._timeouts.shift();if(n===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),n=this._timeouts.shift();else return!1;var r=this,i=setTimeout(function(){r._attempts++,r._operationTimeoutCb&&(r._timeout=setTimeout(function(){r._operationTimeoutCb(r._attempts)},r._operationTimeout),r._options.unref&&r._timeout.unref()),r._fn(r._attempts)},n);return this._options.unref&&i.unref(),!0};H_.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var n=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){n._operationTimeoutCb()},n._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};H_.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)};H_.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)};H_.prototype.start=H_.prototype.try;H_.prototype.errors=function(){return this._errors};H_.prototype.attempts=function(){return this._attempts};H_.prototype.mainError=function(){if(this._errors.length===0)return null;for(var e={},t=null,n=0,r=0;r<this._errors.length;r++){var i=this._errors[r],s=i.message,o=(e[s]||0)+1;e[s]=o,o>=n&&(t=i,n=o)}return t}});var qpn=G(qU=>{var fHi=Kpn();qU.operation=function(e){var t=qU.timeouts(e);return new fHi(t,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})};qU.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var n in e)t[n]=e[n];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var r=[],i=0;i<t.retries;i++)r.push(this.createTimeout(i,t));return e&&e.forever&&!r.length&&r.push(this.createTimeout(i,t)),r.sort(function(s,o){return s-o}),r};qU.createTimeout=function(e,t){var n=t.randomize?Math.random()+1:1,r=Math.round(n*t.minTimeout*Math.pow(t.factor,e));return r=Math.min(r,t.maxTimeout),r};qU.wrap=function(e,t,n){if(t instanceof Array&&(n=t,t=null),!n){n=[];for(var r in e)typeof e[r]=="function"&&n.push(r)}for(var i=0;i<n.length;i++){var s=n[i],o=e[s];e[s]=function(l){var u=qU.operation(t),c=Array.prototype.slice.call(arguments,1),d=c.pop();c.push(function(p){u.retry(p)||(p&&(arguments[0]=u.mainError()),d.apply(this,arguments))}),u.attempt(function(){l.apply(e,c)})}.bind(e,o),e[s].options=t}}});var emn=G((OOl,Jpn)=>{Jpn.exports=qpn()});var tmn=G((MOl,Yxe)=>{Yxe.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&Yxe.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Yxe.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var omn=G((POl,fY)=>{var yu=global.process,JU=function(e){return e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function"};JU(yu)?(nmn=qe("assert"),pY=tmn(),rmn=/^win/i.test(yu.platform),cse=qe("events"),typeof cse!="function"&&(cse=cse.EventEmitter),yu.__signal_exit_emitter__?Um=yu.__signal_exit_emitter__:(Um=yu.__signal_exit_emitter__=new cse,Um.count=0,Um.emitted={}),Um.infinite||(Um.setMaxListeners(1/0),Um.infinite=!0),fY.exports=function(e,t){if(!JU(global.process))return function(){};nmn.equal(typeof e,"function","a callback must be provided for exit handler"),mY===!1&&Jnt();var n="exit";t&&t.alwaysLast&&(n="afterexit");var r=function(){Um.removeListener(n,e),Um.listeners("exit").length===0&&Um.listeners("afterexit").length===0&&Hxe()};return Um.on(n,e),r},Hxe=function(){!mY||!JU(global.process)||(mY=!1,pY.forEach(function(t){try{yu.removeListener(t,Zxe[t])}catch{}}),yu.emit=jxe,yu.reallyExit=ert,Um.count-=1)},fY.exports.unload=Hxe,e3=function(t,n,r){Um.emitted[t]||(Um.emitted[t]=!0,Um.emit(t,n,r))},Zxe={},pY.forEach(function(e){Zxe[e]=function(){if(JU(global.process)){var n=yu.listeners(e);n.length===Um.count&&(Hxe(),e3("exit",null,e),e3("afterexit",null,e),rmn&&e==="SIGHUP"&&(e="SIGINT"),yu.kill(yu.pid,e))}}}),fY.exports.signals=function(){return pY},mY=!1,Jnt=function(){mY||!JU(global.process)||(mY=!0,Um.count+=1,pY=pY.filter(function(t){try{return yu.on(t,Zxe[t]),!0}catch{return!1}}),yu.emit=smn,yu.reallyExit=imn)},fY.exports.load=Jnt,ert=yu.reallyExit,imn=function(t){JU(global.process)&&(yu.exitCode=t||0,e3("exit",yu.exitCode,null),e3("afterexit",yu.exitCode,null),ert.call(yu,yu.exitCode))},jxe=yu.emit,smn=function(t,n){if(t==="exit"&&JU(global.process)){n!==void 0&&(yu.exitCode=n);var r=jxe.apply(this,arguments);return e3("exit",yu.exitCode,null),e3("afterexit",yu.exitCode,null),r}else return jxe.apply(this,arguments)}):fY.exports=function(){return function(){}};var nmn,pY,rmn,cse,Um,Hxe,e3,Zxe,mY,Jnt,ert,imn,jxe,smn});var lmn=G((DOl,trt)=>{"use strict";var amn=Symbol();function hHi(e,t,n){let r=t[amn];if(r)return t.stat(e,(s,o)=>{if(s)return n(s);n(null,o.mtime,r)});let i=new Date(Math.ceil(Date.now()/1e3)*1e3+5);t.utimes(e,i,i,s=>{if(s)return n(s);t.stat(e,(o,a)=>{if(o)return n(o);let l=a.mtime.getTime()%1e3===0?"s":"ms";Object.defineProperty(t,amn,{value:l}),n(null,a.mtime,l)})})}function gHi(e){let t=Date.now();return e==="s"&&(t=Math.ceil(t/1e3)*1e3),new Date(t)}trt.exports.probe=hHi;trt.exports.getMtime=gHi});var mmn=G((BOl,dse)=>{"use strict";var bHi=qe("path"),irt=qnt(),yHi=emn(),AHi=omn(),cmn=lmn(),RN={};function use(e,t){return t.lockfilePath||`${e}.lock`}function srt(e,t,n){if(!t.realpath)return n(null,bHi.resolve(e));t.fs.realpath(e,n)}function rrt(e,t,n){let r=use(e,t);t.fs.mkdir(r,i=>{if(!i)return cmn.probe(r,t.fs,(s,o,a)=>{if(s)return t.fs.rmdir(r,()=>{}),n(s);n(null,o,a)});if(i.code!=="EEXIST")return n(i);if(t.stale<=0)return n(Object.assign(new Error("Lock file is already being held"),{code:"ELOCKED",file:e}));t.fs.stat(r,(s,o)=>{if(s)return s.code==="ENOENT"?rrt(e,{...t,stale:0},n):n(s);if(!umn(o,t))return n(Object.assign(new Error("Lock file is already being held"),{code:"ELOCKED",file:e}));dmn(e,t,a=>{if(a)return n(a);rrt(e,{...t,stale:0},n)})})})}function umn(e,t){return e.mtime.getTime()<Date.now()-t.stale}function dmn(e,t,n){t.fs.rmdir(use(e,t),r=>{if(r&&r.code!=="ENOENT")return n(r);n()})}function zxe(e,t){let n=RN[e];n.updateTimeout||(n.updateDelay=n.updateDelay||t.update,n.updateTimeout=setTimeout(()=>{n.updateTimeout=null,t.fs.stat(n.lockfilePath,(r,i)=>{let s=n.lastUpdate+t.stale<Date.now();if(r)return r.code==="ENOENT"||s?nrt(e,n,Object.assign(r,{code:"ECOMPROMISED"})):(n.updateDelay=1e3,zxe(e,t));if(!(n.mtime.getTime()===i.mtime.getTime()))return nrt(e,n,Object.assign(new Error("Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"}));let a=cmn.getMtime(n.mtimePrecision);t.fs.utimes(n.lockfilePath,a,a,l=>{let u=n.lastUpdate+t.stale<Date.now();if(!n.released){if(l)return l.code==="ENOENT"||u?nrt(e,n,Object.assign(l,{code:"ECOMPROMISED"})):(n.updateDelay=1e3,zxe(e,t));n.mtime=a,n.lastUpdate=Date.now(),n.updateDelay=null,zxe(e,t)}})})},n.updateDelay),n.updateTimeout.unref&&n.updateTimeout.unref())}function nrt(e,t,n){t.released=!0,t.updateTimeout&&clearTimeout(t.updateTimeout),RN[e]===t&&delete RN[e],t.options.onCompromised(n)}function EHi(e,t,n){t={stale:1e4,update:null,realpath:!0,retries:0,fs:irt,onCompromised:r=>{throw r},...t},t.retries=t.retries||0,t.retries=typeof t.retries=="number"?{retries:t.retries}:t.retries,t.stale=Math.max(t.stale||0,2e3),t.update=t.update==null?t.stale/2:t.update||0,t.update=Math.max(Math.min(t.update,t.stale/2),1e3),srt(e,t,(r,i)=>{if(r)return n(r);let s=yHi.operation(t.retries);s.attempt(()=>{rrt(i,t,(o,a,l)=>{if(s.retry(o))return;if(o)return n(s.mainError());let u=RN[i]={lockfilePath:use(i,t),mtime:a,mtimePrecision:l,options:t,lastUpdate:Date.now()};zxe(i,t),n(null,c=>{if(u.released)return c&&c(Object.assign(new Error("Lock is already released"),{code:"ERELEASED"}));pmn(i,{...t,realpath:!1},c)})})})})}function pmn(e,t,n){t={fs:irt,realpath:!0,...t},srt(e,t,(r,i)=>{if(r)return n(r);let s=RN[i];if(!s)return n(Object.assign(new Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));s.updateTimeout&&clearTimeout(s.updateTimeout),s.released=!0,delete RN[i],dmn(i,t,n)})}function _Hi(e,t,n){t={stale:1e4,realpath:!0,fs:irt,...t},t.stale=Math.max(t.stale||0,2e3),srt(e,t,(r,i)=>{if(r)return n(r);t.fs.stat(use(i,t),(s,o)=>s?s.code==="ENOENT"?n(null,!1):n(s):n(null,!umn(o,t)))})}function SHi(){return RN}AHi(()=>{for(let e in RN){let t=RN[e].options;try{t.fs.rmdirSync(use(e,t))}catch{}}});dse.exports.lock=EHi;dse.exports.unlock=pmn;dse.exports.check=_Hi;dse.exports.getLocks=SHi});var hmn=G((LOl,fmn)=>{"use strict";var vHi=qnt();function xHi(e){let t=["mkdir","realpath","stat","rmdir","utimes"],n={...e};return t.forEach(r=>{n[r]=(...i)=>{let s=i.pop(),o;try{o=e[`${r}Sync`](...i)}catch(a){return s(a)}s(null,o)}}),n}function CHi(e){return(...t)=>new Promise((n,r)=>{t.push((i,s)=>{i?r(i):n(s)}),e(...t)})}function THi(e){return(...t)=>{let n,r;if(t.push((i,s)=>{n=i,r=s}),e(...t),n)throw n;return r}}function IHi(e){if(e={...e},e.fs=xHi(e.fs||vHi),typeof e.retries=="number"&&e.retries>0||e.retries&&typeof e.retries.retries=="number"&&e.retries.retries>0)throw Object.assign(new Error("Cannot use retries with the sync api"),{code:"ESYNC"});return e}fmn.exports={toPromise:CHi,toSync:THi,toSyncOptions:IHi}});var _P=G((FOl,EP)=>{"use strict";var hY=mmn(),{toPromise:Xxe,toSync:Kxe,toSyncOptions:ort}=hmn();async function gmn(e,t){let n=await Xxe(hY.lock)(e,t);return Xxe(n)}function wHi(e,t){let n=Kxe(hY.lock)(e,ort(t));return Kxe(n)}function RHi(e,t){return Xxe(hY.unlock)(e,t)}function NHi(e,t){return Kxe(hY.unlock)(e,ort(t))}function kHi(e,t){return Xxe(hY.check)(e,t)}function OHi(e,t){return Kxe(hY.check)(e,ort(t))}EP.exports=gmn;EP.exports.lock=gmn;EP.exports.unlock=RHi;EP.exports.lockSync=wHi;EP.exports.unlockSync=NHi;EP.exports.check=kHi;EP.exports.checkSync=OHi});import{randomUUID as MHi}from"node:crypto";import{closeSync as bmn,fchmodSync as PHi,fsyncSync as DHi,lstatSync as BHi,mkdirSync as LHi,openSync as FHi,readFileSync as UHi,realpathSync as VHi,renameSync as GHi,statSync as WHi,unlinkSync as ymn,writeFileSync as $Hi}from"node:fs";import{basename as Emn,dirname as art,join as _mn,resolve as QHi}from"node:path";var Smn,SP,qxe,Amn,YHi,HHi,ZHi,jHi,zHi,t3,lrt=C(()=>{"use strict";Smn=_n(_P(),1),SP=e=>{let t=QHi(e);try{return VHi(t)}catch(n){if(!qxe(n))throw n;let r=!1;try{r=BHi(t).isSymbolicLink()}catch(s){if(!qxe(s))throw s}if(r)throw new Error("Settings path contains a dangling symbolic link.");let i=art(t);if(i===t)throw n;return _mn(SP(i),Emn(t))}},qxe=e=>typeof e=="object"&&e!==null&&"code"in e&&e.code==="ENOENT",Amn=e=>{try{return UHi(e,"utf-8")}catch(t){if(qxe(t))return;throw t}},YHi=e=>typeof e=="object"&&e!==null&&"code"in e&&e.code==="ELOCKED",HHi={realpath:!1},ZHi=10,jHi=20,zHi=e=>{for(let t=1;;t++)try{return Smn.default.lockSync(e,HHi)}catch(n){if(!YHi(n)||t===ZHi)throw n;let r=Date.now();for(;Date.now()-r<jHi;);}},t3=class{constructor(t){this.path=t}read(){return Amn(this.path)}modify(t){let n=SP(this.path);LHi(art(n),{recursive:!0});let r=zHi(n);try{let i=Amn(n),s=t(i);if(s===void 0)return;let o=_mn(art(n),`.${Emn(n)}.${MHi()}.tmp`),a=384;try{a=WHi(n).mode%512}catch(u){if(!qxe(u))throw u}let l=FHi(o,"wx",a);try{$Hi(l,s,"utf-8"),PHi(l,a),DHi(l)}catch(u){throw bmn(l),ymn(o),u}bmn(l);try{GHi(o,n)}catch(u){throw ymn(o),u}}finally{r()}}}});function mse(e,t=!1){let n=e.length,r=0,i="",s=0,o=16,a=0,l=0,u=0,c=0,d=0;function p(y,S){let _=0,x=0;for(;_<y||!S;){let v=e.charCodeAt(r);if(v>=48&&v<=57)x=x*16+v-48;else if(v>=65&&v<=70)x=x*16+v-65+10;else if(v>=97&&v<=102)x=x*16+v-97+10;else break;r++,_++}return _<y&&(x=-1),x}function m(y){r=y,i="",s=0,o=16,d=0}function f(){let y=r;if(e.charCodeAt(r)===48)r++;else for(r++;r<e.length&&gY(e.charCodeAt(r));)r++;if(r<e.length&&e.charCodeAt(r)===46)if(r++,r<e.length&&gY(e.charCodeAt(r)))for(r++;r<e.length&&gY(e.charCodeAt(r));)r++;else return d=3,e.substring(y,r);let S=r;if(r<e.length&&(e.charCodeAt(r)===69||e.charCodeAt(r)===101))if(r++,(r<e.length&&e.charCodeAt(r)===43||e.charCodeAt(r)===45)&&r++,r<e.length&&gY(e.charCodeAt(r))){for(r++;r<e.length&&gY(e.charCodeAt(r));)r++;S=r}else d=3;return e.substring(y,S)}function h(){let y="",S=r;for(;;){if(r>=n){y+=e.substring(S,r),d=2;break}let _=e.charCodeAt(r);if(_===34){y+=e.substring(S,r),r++;break}if(_===92){if(y+=e.substring(S,r),r++,r>=n){d=2;break}switch(e.charCodeAt(r++)){case 34:y+='"';break;case 92:y+="\\";break;case 47:y+="/";break;case 98:y+="\b";break;case 102:y+="\f";break;case 110:y+=`
|
|
138
138
|
`;break;case 114:y+="\r";break;case 116:y+=" ";break;case 117:let v=p(4,!0);v>=0?y+=String.fromCharCode(v):d=4;break;default:d=5}S=r;continue}if(_>=0&&_<=31)if(pse(_)){y+=e.substring(S,r),d=2;break}else d=6;r++}return y}function g(){if(i="",d=0,s=r,l=a,c=u,r>=n)return s=n,o=17;let y=e.charCodeAt(r);if(crt(y)){do r++,i+=String.fromCharCode(y),y=e.charCodeAt(r);while(crt(y));return o=15}if(pse(y))return r++,i+=String.fromCharCode(y),y===13&&e.charCodeAt(r)===10&&(r++,i+=`
|
|
139
139
|
`),a++,u=r,o=14;switch(y){case 123:return r++,o=1;case 125:return r++,o=2;case 91:return r++,o=3;case 93:return r++,o=4;case 58:return r++,o=6;case 44:return r++,o=5;case 34:return r++,i=h(),o=10;case 47:let S=r-1;if(e.charCodeAt(r+1)===47){for(r+=2;r<n&&!pse(e.charCodeAt(r));)r++;return i=e.substring(S,r),o=12}if(e.charCodeAt(r+1)===42){r+=2;let _=n-1,x=!1;for(;r<_;){let v=e.charCodeAt(r);if(v===42&&e.charCodeAt(r+1)===47){r+=2,x=!0;break}r++,pse(v)&&(v===13&&e.charCodeAt(r)===10&&r++,a++,u=r)}return x||(r++,d=1),i=e.substring(S,r),o=13}return i+=String.fromCharCode(y),r++,o=16;case 45:if(i+=String.fromCharCode(y),r++,r===n||!gY(e.charCodeAt(r)))return o=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return i+=f(),o=11;default:for(;r<n&&b(y);)r++,y=e.charCodeAt(r);if(s!==r){switch(i=e.substring(s,r),i){case"true":return o=8;case"false":return o=9;case"null":return o=7}return o=16}return i+=String.fromCharCode(y),r++,o=16}}function b(y){if(crt(y)||pse(y))return!1;switch(y){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}function A(){let y;do y=g();while(y>=12&&y<=15);return y}return{setPosition:m,getPosition:()=>r,scan:t?A:g,getToken:()=>o,getTokenValue:()=>i,getTokenOffset:()=>s,getTokenLength:()=>r-s,getTokenStartLine:()=>l,getTokenStartCharacter:()=>s-c,getTokenError:()=>d}}function crt(e){return e===32||e===9}function pse(e){return e===10||e===13}function gY(e){return e>=48&&e<=57}var vmn,Jxe=C(()=>{"use strict";(function(e){e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.space=32]="space",e[e._0=48]="_0",e[e._1=49]="_1",e[e._2=50]="_2",e[e._3=51]="_3",e[e._4=52]="_4",e[e._5=53]="_5",e[e._6=54]="_6",e[e._7=55]="_7",e[e._8=56]="_8",e[e._9=57]="_9",e[e.a=97]="a",e[e.b=98]="b",e[e.c=99]="c",e[e.d=100]="d",e[e.e=101]="e",e[e.f=102]="f",e[e.g=103]="g",e[e.h=104]="h",e[e.i=105]="i",e[e.j=106]="j",e[e.k=107]="k",e[e.l=108]="l",e[e.m=109]="m",e[e.n=110]="n",e[e.o=111]="o",e[e.p=112]="p",e[e.q=113]="q",e[e.r=114]="r",e[e.s=115]="s",e[e.t=116]="t",e[e.u=117]="u",e[e.v=118]="v",e[e.w=119]="w",e[e.x=120]="x",e[e.y=121]="y",e[e.z=122]="z",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.asterisk=42]="asterisk",e[e.backslash=92]="backslash",e[e.closeBrace=125]="closeBrace",e[e.closeBracket=93]="closeBracket",e[e.colon=58]="colon",e[e.comma=44]="comma",e[e.dot=46]="dot",e[e.doubleQuote=34]="doubleQuote",e[e.minus=45]="minus",e[e.openBrace=123]="openBrace",e[e.openBracket=91]="openBracket",e[e.plus=43]="plus",e[e.slash=47]="slash",e[e.formFeed=12]="formFeed",e[e.tab=9]="tab"})(vmn||(vmn={}))});var fA,bY,urt,xmn,Cmn=C(()=>{fA=new Array(20).fill(0).map((e,t)=>" ".repeat(t)),bY=200,urt={" ":{"\n":new Array(bY).fill(0).map((e,t)=>`
|
|
@@ -224,7 +224,7 @@ ${te.map(se=>ce.fg("toolOutput",se)).join(`
|
|
|
224
224
|
... (${X} more files)`)),Y.setText($)}return Y}},s=Kt.featureFlags?.flags.cosmosAuggieEnableContextEngine!==!1;s&&e.registerTool(i),e.events.on("augment:feature-flags",ne=>{let de=ne;Kt.featureFlags=de;let ce=de?.flags.cosmosAuggieEnableContextEngine!==!1;ce!==s&&(s=ce,ce?e.registerTool(i):e.unregisterTool(i.name))});function o(ne,de){let ce=Kt.indexing.kind==="in_progress"&&!Kt.lastWidgetStatus,W=Kt.indexing.kind==="skipped"&&!tyn({agentDir:de,workspacePath:ne});if(!ce&&!W)return;Kt.indexingGeneration++,Kt.warnings.clear(),Kt.primaryReadiness.settleTerminal();for(let Z of Kt.additionalWorkers)Z.readiness.settleTerminal(),Z.worker?.detach();Kt.additionalWorkers=[],Kt.primaryIndexingCompleteResolve?.(),vo.info(`Resetting indexing state (was ${Kt.indexing.kind}) for new session (gen=${Kt.indexingGeneration})`);let{promise:Y,resolve:j}=XU();Kt.indexing={kind:"not_started"},Kt.primaryIndexingComplete=Y,Kt.primaryIndexingCompleteResolve=j}function a(ne){let de=e.getFlag("add-workspace"),ce=[ne,...typeof de=="string"?de.split(oyn).map(Y=>Y.trim()).filter(Y=>Y.length>0):[]],W=new Set;return ce.flatMap(Y=>{let j=loe(Y),Z=dXi(j);return W.has(Z)?[]:(W.add(Z),[j])})}e.on("session_start",async(ne,de)=>{Kt.latestCtx=de,Kt.indexing.kind==="in_progress"&&Kt.lastWidgetStatus&&(vo.info("Re-surfacing indexing widget after session switch"),Kt.activeLoader=void 0,S(Kt.lastWidgetStatus)),o(de.cwd,de.agentDir);let ce={sessionId:de.sessionManager.getSessionId(),generation:Kt.indexingGeneration},W=e.getFlag("add-workspace"),Y=new Set([de.cwd,...typeof W=="string"?W.split(oyn).map(Re=>Re.trim()):[]]);for(let Re of[...Kt.warnings.values()])Y.has(Re.workspace)&&u(Re.workspace,Re.reason,ce);if(Kt.indexing.kind!=="not_started")return;Kt.primaryReadiness=new tH;let{promise:j,resolve:Z}=XU();if(Kt.primaryIndexingComplete=j,Kt.primaryIndexingCompleteResolve=Z,!s){Ev(Kt,{kind:"skipped",reason:"Context Engine disabled by the master feature flag."}),Kt.primaryReadiness.settleTerminal(),Kt.primaryIndexingCompleteResolve?.(),Kt.primaryIndexingCompleteResolve=void 0,vo.info("Skipping workspace indexing because the Context Engine is disabled");return}Ev(Kt,{kind:"in_progress"}),vo.info("Session start \u2014 indexing workspace");let z=a(de.cwd),[le]=z,ge=Date.now();Kt.primaryCwd=le,Kt.primaryStartedAt=ge,Kt.primaryDone=void 0;let te=Kt.indexingGeneration,X=()=>Kt.indexingGeneration!==te,$,se=async Re=>($??=g(z,de,X),(await $).get(Re)??h()),oe=XU();(async()=>{try{if(!await Llt()){if(X())return;vo.info("Skipping indexing \u2014 no API client"),Ev(Kt,{kind:"skipped",reason:"Augment API client unavailable. Indexing requires Augment credentials."}),T({kind:"skipped",elapsedMs:Date.now()-ge});return}if(X())return;let Re=await se(le);if(X())return;if(!Re.allowed){l(le,Re,ce),vo.info(Re.logMessage),Ev(Kt,{kind:"skipped",reason:Re.logMessage}),T({kind:"skipped",elapsedMs:Date.now()-ge});return}}finally{oe.resolve()}await P({cwd:le,ctx:de,warningOwner:ce})})().catch(Re=>{X()||(vo.error(`Background indexing failed: ${Re}`),Ev(Kt,{kind:"failed",error:Re instanceof Error?Re.message:String(Re)}),T({kind:"failed",elapsedMs:Date.now()-ge}))}).finally(()=>{X()||(Kt.primaryIndexingCompleteResolve?.(),Kt.primaryIndexingCompleteResolve=void 0)});let we=z.slice(1).flatMap(Re=>Kt.additionalWorkers.some(xe=>xe.cwd===Re)?[]:[k(Re,de,se)]);de.hasUI&&await Promise.all([oe.promise,...we])}),e.on("session_shutdown",async()=>{let ne=Kt.workerHost;Kt.indexingGeneration++,Kt.warnings.clear(),Kt.latestCtx=void 0,Kt.primaryReadiness.settleTerminal(),Kt.primaryIndexingCompleteResolve?.(),Kt.worker?.detach();for(let de of Kt.additionalWorkers)de.readiness.settleTerminal(),de.worker?.detach();try{await ne?.shutdown()}finally{Kt.workerHost=void 0,Kt.worker=void 0,Kt.additionalWorkers=[],Kt.checkpoint=void 0,Kt.lastPrimaryProgress=void 0,Kt.primaryDone=void 0,Kt.primaryCwd=void 0,Kt.primaryStartedAt=void 0;let{promise:de,resolve:ce}=XU();Kt.indexing={kind:"not_started"},Kt.primaryIndexingComplete=de,Kt.primaryIndexingCompleteResolve=ce}}),e.on("before_agent_start",async()=>{if(!e.getFlag("wait-for-indexing"))return;if(vo.info(`wait-for-indexing: blocking agent turn until primary indexing completes (currently ${Kt.indexing.kind})`),await lse(Kt.primaryIndexingComplete,Blt)==="timeout"){vo.warn("wait-for-indexing: timed out after 10 minutes; proceeding anyway");return}vo.info(`wait-for-indexing: indexing ${Kt.indexing.kind}, proceeding`),Kt.additionalWorkers.length>0&&(vo.info(`wait-for-indexing: also waiting for ${Kt.additionalWorkers.length} additional workspace worker(s)`),await Promise.all(Kt.additionalWorkers.map(de=>lse(de.settled,Blt))))});function l(ne,de,ce){de.warningReason&&u(ne,de.warningReason,ce)}function u(ne,de,ce){if(ce.generation!==Kt.indexingGeneration)return;let W;de==="file-limit"?W={...ce,workspace:ne,kind:"limited",reason:de}:de==="session-skip"?W={...ce,workspace:ne,kind:"disabled",reason:de,scope:"session"}:W={...ce,workspace:ne,kind:"disabled",reason:de,scope:"policy"};let Y=JSON.stringify([ce.sessionId,ne,de,W.scope]);Kt.warnings.has(Y)||(Kt.warnings.set(Y,W),e.events.emit(cXi,W))}let c=Promise.resolve();function d(ne){let de=c.then(()=>ne(),()=>ne());return c=de.catch(()=>{}),de}function p(ne,de,ce){let W=loe(ne),Y=de.repositoryRoots.find(Z=>loe(Z.workspacePath)===W),j=Fpn({targetDir:ne,sourceWorkspacePath:Y?.sourceWorkspacePath,repositoryRoot:Y?.repositoryRoot,allowedDirs:de.allowDirs.length>0?[...de.allowDirs]:void 0,denyDirs:de.denyDirs.length>0?[...de.denyDirs]:void 0,storedDecisions:JY({agentDir:ce}),allowIndexingFlag:de.allowIndexingFlag});return{allowed:j.allowed,logMessage:`Daemon child indexing ${j.reason}`}}function m(ne,de){let ce=Kt.indexingPolicy;if(ce!==void 0&&Lpn({daemonChild:ce.daemonChild})==="daemon-child")return p(ne,ce,de.agentDir);let W=Plt({agentDir:de.agentDir,workspacePath:ne});if(W==="allowed")return{allowed:!0,logMessage:"Indexing allowed (stored)"};if(W==="deny")return{allowed:!1,logMessage:"Indexing denied (stored)",warningReason:"permission-denied"};if(W==="never"||uXi(ne))return{allowed:!1,logMessage:"Skipping indexing \u2014 cwd is the home directory or an ancestor",warningReason:"home-block"}}async function f(ne,de){let ce=m(ne,de);if(ce)return ce;if(e.getFlag("allow-indexing")===!0)return await Dlt({agentDir:de.agentDir,workspacePath:ne,permission:"allow"}),{allowed:!0,logMessage:"Indexing allowed by --allow-indexing flag (persisted)"};if(!de.hasUI)return{allowed:!0,logMessage:"Indexing allowed (non-interactive, no stored decision)"}}function h(){return{allowed:!1,logMessage:"Indexing skipped (session ended)"}}async function g(ne,de,ce){let W=new Map,Y=[];for(let j of ne){if(ce())return W;let Z=await f(j,de);Z?W.set(j,Z):Y.push(j)}if(Y.length>0&&!ce()){let j=await A(Y,de,ce);for(let Z of Y)W.set(Z,j)}return W}async function b(ne,de,ce,W){for(let Y of ne){if(W())return;m(Y,de)?.allowed!==!1&&await Dlt({agentDir:de.agentDir,workspacePath:Y,permission:ce})}}async function A(ne,de,ce){let Y=["Augment would like to index your workspace to provide better code suggestions and context-aware assistance. With indexing, Auggie gains deep understanding of your codebase structure, patterns, and dependencies\u2014delivering precise assistance that scales with projects of any size. Your data always stays secure and private.","","Learn more at https://docs.augmentcode.com/setup-augment/workspace-indexing","",ne.length===1?`Workspace: ${ne[0]}`:`Workspaces:
|
|
225
225
|
${ne.join(`
|
|
226
226
|
`)}`].join(`
|
|
227
|
-
`);t($a.CLI.INDEXING_CONFIRMATION_DISPLAYED,{});let j=await d(()=>ce()?Promise.resolve(void 0):de.ui.select("Workspace Indexing Permission",["[1] Always index this workspace - Unlock full workspace understanding","[2] Never index this workspace - Use basic assistance only","[3] Index this workspace for this session","[4] Skip indexing for this session"],{description:Y}));if(ce())return h();switch(j){case"[1] Always index this workspace - Unlock full workspace understanding":case"Always index this workspace - Unlock full workspace understanding":case"Always index":return await b(ne,de,"allow",ce),t($a.CLI.INDEXING_CONFIRMATION,{status:"newlyAllowed"}),{allowed:!0,logMessage:"Indexing allowed (user chose always)"};case"[3] Index this workspace for this session":case"Index this workspace for this session":case"Index for this session":return t($a.CLI.INDEXING_CONFIRMATION,{status:"allowed"}),{allowed:!0,logMessage:"Indexing allowed (session only)"};case"[2] Never index this workspace - Use basic assistance only":case"Never index this workspace - Use basic assistance only":case"Never index":return await b(ne,de,"deny",ce),t($a.CLI.INDEXING_CONFIRMATION,{status:"denied"}),{allowed:!1,logMessage:"Indexing denied (user chose never)",warningReason:"user-denied"};default:return t($a.CLI.INDEXING_CONFIRMATION,{status:"denied"}),{allowed:!1,logMessage:"Indexing skipped (user chose skip)",warningReason:"session-skip"}}}function y(){let ne=Kt.lastWidgetStatus;return typeof ne=="function"?ne():ne??""}function S(ne,de=!0){let ce=Kt.latestCtx;if(ce){if(Kt.lastWidgetStatus=ne,!ne){Kt.activeLoader?.stop(),Kt.activeLoader=void 0,ce.ui.setWidget(XTe,void 0);return}if(Kt.activeLoader){Kt.activeLoader.setMessage(y()),de||Kt.activeLoader.stop();return}ce.ui.setWidget(XTe,(W,Y)=>{let j=new Wa(W,Z=>ce.ui.theme.fg("accent",Z),()=>ce.ui.theme.fg("dim",y()),y());return Kt.activeLoader=j,de||j.stop(),j},{placement:"aboveEditor"})}}function _(){return Kt.additionalWorkers.length>0}function x(){let ne={cwd:Kt.primaryCwd??"",lastProgress:Kt.lastPrimaryProgress,done:Kt.primaryDone},de=Rpn(Kt.latestCtx?.ui.theme);return Npn(ne,Kt.additionalWorkers,de)}function v(){x().length!==0&&S(x)}function w(){!_()||Kt.primaryDone===void 0||!Kt.additionalWorkers.every(de=>de.done!==void 0)||Kt.allDoneClearTimer||(Kt.allDoneClearTimer=setTimeout(()=>{Kt.allDoneClearTimer=void 0,S(void 0)},3e3))}function T(ne){ne.kind!=="success"&&Kt.primaryReadiness.settleTerminal(),!Kt.primaryDone&&(Kt.primaryDone=ne,_()&&(v(),w()))}function D(ne){M(ne,{kind:ne.readiness.settleCompleted()?"success":"failed",elapsedMs:Date.now()-ne.startedAt})}function M(ne,de){ne.done||(ne.done=de,de.kind==="success"?ne.indexingState={kind:"ready"}:de.kind==="failed"?ne.indexingState={kind:"failed",error:"Workspace indexing failed."}:ne.indexingState={kind:"skipped",reason:"Workspace indexing was skipped."},de.kind!=="success"&&ne.readiness.settleTerminal(),v(),w())}async function P({cwd:ne,ctx:de,warningOwner:ce}){let W=()=>ce.generation!==Kt.indexingGeneration;vo.info(`Starting workspace indexing for ${ne}`),S("Initializing indexing...");let Y=Date.now();Kt.primaryCwd=ne,Kt.primaryStartedAt=Y,Kt.primaryDone=void 0,Kt.allDoneClearTimer&&(clearTimeout(Kt.allDoneClearTimer),Kt.allDoneClearTimer=void 0);let j=new Promise(le=>setTimeout(le,5e3));if(await Promise.race([Kt.credentialsReady,j]),W())return;if(!Kt.credentials){vo.info("Skipping indexing \u2014 no Augment credentials received"),Ev(Kt,{kind:"skipped",reason:"No Augment credentials available."}),Kt.primaryReadiness.settleTerminal(),_()?T({kind:"skipped",elapsedMs:Date.now()-Y}):S(void 0);return}let Z=m(ne,de);if(Z?.allowed===!1){l(ne,Z,ce),vo.info(Z.logMessage),Ev(Kt,{kind:"skipped",reason:Z.logMessage}),Kt.primaryReadiness.settleTerminal(),_()?T({kind:"skipped",elapsedMs:Date.now()-Y}):S(void 0);return}let z=O(ne);Kt.worker=z,z.onProgress.event(le=>{if(!W()){if(U(le),Kt.primaryReadiness.updateProgress(le),le.phase==="workspace-too-large"){u(ne,"file-limit",ce);let ge="Indexing coverage is limited because the workspace file limit was reached";vo.warn(ge),Ev(Kt,{kind:"skipped",reason:ge}),Kt.primaryReadiness.settleTerminal(),_()?T({kind:"too-large",elapsedMs:Date.now()-Y}):S(void 0);return}if(le.phase==="complete"){let te=((Date.now()-Y)/1e3).toFixed(1),$=`\u2713 Indexed ${le.filesTracked+le.filesPreIndexed} files in ${te}s`;if(Ev(Kt,{kind:"ready"}),_()){vo.info(`Workspace indexing complete in ${te}s`);return}S(void 0);let se=Kt.latestCtx;se&&se.ui.setWidget(XTe,(oe,we)=>new Flt(()=>se.ui.theme.fg("success",$)),{placement:"aboveEditor"}),vo.info(`Workspace indexing complete in ${te}s`),setTimeout(()=>{W()||Kt.latestCtx?.ui.setWidget(XTe,void 0)},3e3)}}}),z.onCheckpoint.event(le=>{W()||(Kt.checkpoint=le,Kt.primaryReadiness.updateCheckpoint(),vo.debug(`Checkpoint updated: ${le.checkpointId} (+${le.addedBlobs.length} -${le.deletedBlobs.length})`))}),z.onLog.event(({level:le,prefix:ge,message:te})=>{let X=tt.child({prefix:`worker:${ge}`});switch(le){case"debug":X.debug(te);break;case"warn":X.warn(te);break;case"error":X.error(te);break;default:X.info(te);break}}),z.onFatalError.event(le=>{if(W())return;let ge=le.message;Ev(Kt,{kind:"failed",error:ge}),Kt.primaryReadiness.settleTerminal(),_()?T({kind:"failed",elapsedMs:Date.now()-Y}):S(void 0),vo.error(`Indexing failed: ${ge}`)}),await z.start(),!W()&&(await z.indexWorkspace(ne,ne),!W()&&(Kt.primaryReadiness.settleCompleted()?T({kind:"success",elapsedMs:Date.now()-Y}):(Kt.indexing={kind:"failed",error:"Workspace indexing completed without a retrievable checkpoint."},T({kind:"failed",elapsedMs:Date.now()-Y}))))}function O(ne){if(!Kt.credentials)throw new Error("Cannot create indexing worker without credentials");let de={apiToken:Kt.credentials.apiKey,apiUrl:Kt.credentials.apiUrl};return Kt.workerHost??=new zU(de),new ise(de,Kt.workerHost,ne)}function k(ne,de,ce){let W=XU(),Y=Kt.indexingGeneration,j={sessionId:de.sessionManager.getSessionId(),generation:Y},Z=()=>Y!==Kt.indexingGeneration,z,le=new Promise(te=>{z=te}),ge={cwd:ne,worker:void 0,settled:le,readiness:new tH,indexingState:{kind:"in_progress"},lastProgress:void 0,startedAt:Date.now(),checkpoint:void 0};return Kt.additionalWorkers.push(ge),L(ge,de,j,W.resolve,ce).catch(te=>{Z()||(vo.error(`Additional workspace worker for ${ne} failed: ${te instanceof Error?te.message:String(te)}`),M(ge,{kind:"failed",elapsedMs:Date.now()-ge.startedAt}))}).finally(()=>{if(W.resolve(),Z()){z?.();return}ge.done||M(ge,{kind:"skipped",elapsedMs:Date.now()-ge.startedAt}),z?.()}),W.promise}async function L(ne,de,ce,W,Y){let{cwd:j}=ne,Z=()=>ce.generation!==Kt.indexingGeneration,z=await Llt();if(Z())return;if(!z){vo.info(`Skipping additional workspace ${j} \u2014 no API client available`);return}let le=await Y(j);if(W(),Z())return;if(!le.allowed){l(j,le,ce),vo.info(`Skipping additional workspace ${j} \u2014 ${le.logMessage}`);return}if(await iyn(Kt),Z())return;let ge=new Promise($=>setTimeout($,5e3));if(await Promise.race([Kt.credentialsReady,ge]),Z())return;if(!Kt.credentials){vo.info(`Skipping additional workspace ${j} \u2014 no Augment credentials`);return}let te=m(j,de);if(te?.allowed===!1){l(j,te,ce),vo.info(`Skipping additional workspace ${j} \u2014 ${te.logMessage}`);return}let X=O(j);ne.worker=X,ne.startedAt=Date.now(),F(ne,ce),vo.info(`Starting indexing for additional workspace ${j}`),await X.start(),!Z()&&(await X.indexWorkspace(j,j),!Z()&&(D(ne),vo.info(`Indexing complete for additional workspace ${j}`)))}function F(ne,de){let{worker:ce,cwd:W}=ne,Y=()=>de.generation!==Kt.indexingGeneration;ce.onLog.event(({level:j,prefix:Z,message:z})=>{let le=tt.child({prefix:`worker[${W}]:${Z}`});switch(j){case"debug":le.debug(z);break;case"warn":le.warn(z);break;case"error":le.error(z);break;default:le.info(z);break}}),ce.onFatalError.event(j=>{Y()||(vo.error(`Additional workspace indexing failed for ${W}: ${j.message}`),M(ne,{kind:"failed",elapsedMs:Date.now()-ne.startedAt}))}),ce.onCheckpoint.event(j=>{Y()||(ne.checkpoint=j,ne.readiness.updateCheckpoint(),vo.debug(`Checkpoint updated for ${W}: ${j.checkpointId} (+${j.addedBlobs.length} -${j.deletedBlobs.length})`))}),ce.onProgress.event(j=>{Q(ne,j,de)})}function Q(ne,de,ce){ce.generation===Kt.indexingGeneration&&(de.phase==="workspace-too-large"&&u(ne.cwd,"file-limit",ce),ne.readiness.updateProgress(de),ne.lastProgress=de,J())}function U(ne){if(Kt.lastPrimaryProgress=ne,_()){v();return}let de=ie(ne);de!==void 0&&S(`${de}${Vnt(Kt.additionalWorkers)}`)}function J(){let ne=Kt.lastPrimaryProgress;if(!ne&&Kt.primaryDone===void 0)return;if(_()){v();return}if(!ne)return;let de=ie(ne);de!==void 0&&S(`${de}${Vnt(Kt.additionalWorkers)}`)}function ie(ne){let{phase:de,filesTracked:ce,filesProcessed:W,filesPreIndexed:Y}=ne;if(de==="qualifying"||de==="indexing"&&!ne.walkComplete)return`Discovering files (${ce+Y} found)...`;if(de==="indexing"){let j=ce+Y,Z=W+Y;return`Indexing... ${j>0?Math.round(Z/j*100):0}% (${Z}/${j})`}if(de==="complete")return"Finalizing index..."}}function gXi(e){return e.content.find(t=>t.type==="text")?.text}function bXi(e){return e.startsWith("Workspace is still being indexed")||e.startsWith("Codebase retrieval unavailable")||e.startsWith("Indexing failed")||e.startsWith("Not authenticated")}function yXi(e,t){let n=gXi(t);if(e?.ready===!1)return e.message??n??"Codebase retrieval is not ready.";if(e?.ready!==!0&&n&&bXi(n))return n}var vo,XTe,cXi,Blt,ayn,cyn,Flt,Kt,hXi,pyn=C(()=>{"use strict";nn();en();NU();I7();cs();Dxe();Fnt();Ipn();kpn();ase();Znt();eH();syn();vo=tt.child({prefix:"pi-indexer"}),XTe="context-engine",cXi="indexing:warning",Blt=600*1e3,ayn="wait-for-indexing-on-retrieval";cyn=Symbol.for("__pi_indexing_extension_state__"),Flt=class extends Ot{getMessage;constructor(t){super("",0,0),this.getMessage=t}render(t){return this.setText(this.getMessage()),super.render(t)}};Kt=pXi();hXi=["Augment's semantic context engine for the codebase.","Sees the whole repo as a graph and can answer questions whose answer is spread across files that don't share keywords.","","Use codebase-retrieval when the question has any of these shapes:",'* "How does X work" / "where is X implemented" / "what calls X"','* "Is there already something that does Y" (gap-finding)',`* "What's the convention / pattern for Z in this repo"`,'* "What would break if I change the signature of W"',"* Any question that spans multiple files, layers, or modules","","Don't use it when:","* You already know the exact file and just need specific lines.","* You're looking for a literal string.","* The task is a direct shell operation (run tests, git status, ls).","","If this session has multiple workspace folders mounted, pass the absolute path of the folder you want to search as `workspace`. Omit it to search the primary workspace. Each call searches exactly one workspace; call again with a different `workspace` to search another."].join(`
|
|
227
|
+
`);t($a.CLI.INDEXING_CONFIRMATION_DISPLAYED,{});let j=await d(()=>ce()?Promise.resolve(void 0):de.ui.select("Workspace Indexing Permission",["[1] Always index this workspace - Unlock full workspace understanding","[2] Never index this workspace - Use basic assistance only","[3] Index this workspace for this session","[4] Skip indexing for this session"],{description:Y}));if(ce())return h();switch(j){case"[1] Always index this workspace - Unlock full workspace understanding":case"Always index this workspace - Unlock full workspace understanding":case"Always index":return await b(ne,de,"allow",ce),t($a.CLI.INDEXING_CONFIRMATION,{status:"newlyAllowed"}),{allowed:!0,logMessage:"Indexing allowed (user chose always)"};case"[3] Index this workspace for this session":case"Index this workspace for this session":case"Index for this session":return t($a.CLI.INDEXING_CONFIRMATION,{status:"allowed"}),{allowed:!0,logMessage:"Indexing allowed (session only)"};case"[2] Never index this workspace - Use basic assistance only":case"Never index this workspace - Use basic assistance only":case"Never index":return await b(ne,de,"deny",ce),t($a.CLI.INDEXING_CONFIRMATION,{status:"denied"}),{allowed:!1,logMessage:"Indexing denied (user chose never)",warningReason:"user-denied"};default:return t($a.CLI.INDEXING_CONFIRMATION,{status:"denied"}),{allowed:!1,logMessage:"Indexing skipped (user chose skip)",warningReason:"session-skip"}}}function y(){let ne=Kt.lastWidgetStatus;return typeof ne=="function"?ne():ne??""}function S(ne,de=!0){let ce=Kt.latestCtx;if(ce){if(Kt.lastWidgetStatus=ne,!ne){Kt.activeLoader?.stop(),Kt.activeLoader=void 0,ce.ui.setWidget(XTe,void 0);return}if(Kt.activeLoader){Kt.activeLoader.setMessage(y()),de||Kt.activeLoader.stop();return}ce.ui.setWidget(XTe,(W,Y)=>{let j=new Wa(W,Z=>ce.ui.theme.fg("accent",Z),()=>ce.ui.theme.fg("dim",y()),y());return Kt.activeLoader=j,de||j.stop(),j},{placement:"aboveEditor"})}}function _(){return Kt.additionalWorkers.length>0}function x(){let ne={cwd:Kt.primaryCwd??"",lastProgress:Kt.lastPrimaryProgress,done:Kt.primaryDone},de=Rpn(Kt.latestCtx?.ui.theme);return Npn(ne,Kt.additionalWorkers,de)}function v(){x().length!==0&&S(x)}function w(){!_()||Kt.primaryDone===void 0||!Kt.additionalWorkers.every(de=>de.done!==void 0)||Kt.allDoneClearTimer||(Kt.allDoneClearTimer=setTimeout(()=>{Kt.allDoneClearTimer=void 0,S(void 0)},3e3))}function T(ne){ne.kind!=="success"&&Kt.primaryReadiness.settleTerminal(),!Kt.primaryDone&&(Kt.primaryDone=ne,_()&&(v(),w()))}function D(ne){M(ne,{kind:ne.readiness.settleCompleted()?"success":"failed",elapsedMs:Date.now()-ne.startedAt})}function M(ne,de){ne.done||(ne.done=de,de.kind==="success"?ne.indexingState={kind:"ready"}:de.kind==="failed"?ne.indexingState={kind:"failed",error:"Workspace indexing failed."}:ne.indexingState={kind:"skipped",reason:"Workspace indexing was skipped."},de.kind!=="success"&&ne.readiness.settleTerminal(),v(),w())}async function P({cwd:ne,ctx:de,warningOwner:ce}){let W=()=>ce.generation!==Kt.indexingGeneration;vo.info(`Starting workspace indexing for ${ne}`),S("Initializing indexing...");let Y=Date.now();Kt.primaryCwd=ne,Kt.primaryStartedAt=Y,Kt.primaryDone=void 0,Kt.allDoneClearTimer&&(clearTimeout(Kt.allDoneClearTimer),Kt.allDoneClearTimer=void 0);let j=new Promise(le=>setTimeout(le,5e3));if(await Promise.race([Kt.credentialsReady,j]),W())return;if(!Kt.credentials){vo.info("Skipping indexing \u2014 no Augment credentials received"),Ev(Kt,{kind:"skipped",reason:"No Augment credentials available."}),Kt.primaryReadiness.settleTerminal(),_()?T({kind:"skipped",elapsedMs:Date.now()-Y}):S(void 0);return}let Z=m(ne,de);if(Z?.allowed===!1){l(ne,Z,ce),vo.info(Z.logMessage),Ev(Kt,{kind:"skipped",reason:Z.logMessage}),Kt.primaryReadiness.settleTerminal(),_()?T({kind:"skipped",elapsedMs:Date.now()-Y}):S(void 0);return}let z=O(ne);Kt.worker=z,z.onProgress.event(le=>{if(!W()){if(U(le),Kt.primaryReadiness.updateProgress(le),le.phase==="workspace-too-large"){u(ne,"file-limit",ce);let ge="Indexing coverage is limited because the workspace file limit was reached";vo.warn(ge),Ev(Kt,{kind:"skipped",reason:ge}),Kt.primaryReadiness.settleTerminal(),_()?T({kind:"too-large",elapsedMs:Date.now()-Y}):S(void 0);return}if(le.phase==="complete"){let te=((Date.now()-Y)/1e3).toFixed(1),$=`\u2713 Indexed ${le.filesTracked+le.filesPreIndexed} files in ${te}s`;if(Ev(Kt,{kind:"ready"}),_()){vo.info(`Workspace indexing complete in ${te}s`);return}S(void 0);let se=Kt.latestCtx;se&&se.ui.setWidget(XTe,(oe,we)=>new Flt(()=>se.ui.theme.fg("success",$)),{placement:"aboveEditor"}),vo.info(`Workspace indexing complete in ${te}s`),setTimeout(()=>{W()||Kt.latestCtx?.ui.setWidget(XTe,void 0)},3e3)}}}),z.onCheckpoint.event(le=>{W()||(Kt.checkpoint=le,Kt.primaryReadiness.updateCheckpoint(),vo.debug(`Checkpoint updated: ${le.checkpointId} (+${le.addedBlobs.length} -${le.deletedBlobs.length})`))}),z.onLog.event(({level:le,prefix:ge,message:te})=>{let X=tt.child({prefix:`worker:${ge}`});switch(le){case"debug":X.debug(te);break;case"warn":X.warn(te);break;case"error":X.error(te);break;default:X.info(te);break}}),z.onFatalError.event(le=>{if(W())return;let ge=le.message;Ev(Kt,{kind:"failed",error:ge}),Kt.primaryReadiness.settleTerminal(),_()?T({kind:"failed",elapsedMs:Date.now()-Y}):S(void 0),vo.error(`Indexing failed: ${ge}`)}),await z.start(),!W()&&(await z.indexWorkspace(ne,ne),!W()&&(Kt.primaryReadiness.settleCompleted()?T({kind:"success",elapsedMs:Date.now()-Y}):(Kt.indexing={kind:"failed",error:"Workspace indexing completed without a retrievable checkpoint."},T({kind:"failed",elapsedMs:Date.now()-Y}))))}function O(ne){if(!Kt.credentials)throw new Error("Cannot create indexing worker without credentials");let de={apiToken:Kt.credentials.apiKey,apiUrl:Kt.credentials.apiUrl};return Kt.workerHost??=new zU(de),new ise(de,Kt.workerHost,ne)}function k(ne,de,ce){let W=XU(),Y=Kt.indexingGeneration,j={sessionId:de.sessionManager.getSessionId(),generation:Y},Z=()=>Y!==Kt.indexingGeneration,z,le=new Promise(te=>{z=te}),ge={cwd:ne,worker:void 0,settled:le,readiness:new tH,indexingState:{kind:"in_progress"},lastProgress:void 0,startedAt:Date.now(),checkpoint:void 0};return Kt.additionalWorkers.push(ge),L(ge,de,j,W.resolve,ce).catch(te=>{Z()||(vo.error(`Additional workspace worker for ${ne} failed: ${te instanceof Error?te.message:String(te)}`),M(ge,{kind:"failed",elapsedMs:Date.now()-ge.startedAt}))}).finally(()=>{if(W.resolve(),Z()){z?.();return}ge.done||M(ge,{kind:"skipped",elapsedMs:Date.now()-ge.startedAt}),z?.()}),W.promise}async function L(ne,de,ce,W,Y){let{cwd:j}=ne,Z=()=>ce.generation!==Kt.indexingGeneration,z=await Llt();if(Z())return;if(!z){vo.info(`Skipping additional workspace ${j} \u2014 no API client available`);return}let le=await Y(j);if(W(),Z())return;if(!le.allowed){l(j,le,ce),vo.info(`Skipping additional workspace ${j} \u2014 ${le.logMessage}`);return}if(await iyn(Kt),Z())return;let ge=new Promise($=>setTimeout($,5e3));if(await Promise.race([Kt.credentialsReady,ge]),Z())return;if(!Kt.credentials){vo.info(`Skipping additional workspace ${j} \u2014 no Augment credentials`);return}let te=m(j,de);if(te?.allowed===!1){l(j,te,ce),vo.info(`Skipping additional workspace ${j} \u2014 ${te.logMessage}`);return}let X=O(j);ne.worker=X,ne.startedAt=Date.now(),F(ne,ce),vo.info(`Starting indexing for additional workspace ${j}`),await X.start(),!Z()&&(await X.indexWorkspace(j,j),!Z()&&(D(ne),vo.info(`Indexing complete for additional workspace ${j}`)))}function F(ne,de){let{worker:ce,cwd:W}=ne,Y=()=>de.generation!==Kt.indexingGeneration;ce.onLog.event(({level:j,prefix:Z,message:z})=>{let le=tt.child({prefix:`worker[${W}]:${Z}`});switch(j){case"debug":le.debug(z);break;case"warn":le.warn(z);break;case"error":le.error(z);break;default:le.info(z);break}}),ce.onFatalError.event(j=>{Y()||(vo.error(`Additional workspace indexing failed for ${W}: ${j.message}`),M(ne,{kind:"failed",elapsedMs:Date.now()-ne.startedAt}))}),ce.onCheckpoint.event(j=>{Y()||(ne.checkpoint=j,ne.readiness.updateCheckpoint(),vo.debug(`Checkpoint updated for ${W}: ${j.checkpointId} (+${j.addedBlobs.length} -${j.deletedBlobs.length})`))}),ce.onProgress.event(j=>{Q(ne,j,de)})}function Q(ne,de,ce){ce.generation===Kt.indexingGeneration&&(de.phase==="workspace-too-large"&&u(ne.cwd,"file-limit",ce),ne.readiness.updateProgress(de),ne.lastProgress=de,J())}function U(ne){if(Kt.lastPrimaryProgress=ne,_()){v();return}let de=ie(ne);de!==void 0&&S(`${de}${Vnt(Kt.additionalWorkers)}`)}function J(){let ne=Kt.lastPrimaryProgress;if(!ne&&Kt.primaryDone===void 0)return;if(_()){v();return}if(!ne)return;let de=ie(ne);de!==void 0&&S(`${de}${Vnt(Kt.additionalWorkers)}`)}function ie(ne){let{phase:de,filesTracked:ce,filesProcessed:W,filesPreIndexed:Y}=ne;if(de==="qualifying"||de==="indexing"&&!ne.walkComplete)return`Discovering files (${ce+Y} found)...`;if(de==="indexing"){let j=ce+Y,Z=W+Y;return`Indexing... ${j>0?Math.floor(Z/j*100):0}% (${Z}/${j})`}if(de==="complete")return"Finalizing index..."}}function gXi(e){return e.content.find(t=>t.type==="text")?.text}function bXi(e){return e.startsWith("Workspace is still being indexed")||e.startsWith("Codebase retrieval unavailable")||e.startsWith("Indexing failed")||e.startsWith("Not authenticated")}function yXi(e,t){let n=gXi(t);if(e?.ready===!1)return e.message??n??"Codebase retrieval is not ready.";if(e?.ready!==!0&&n&&bXi(n))return n}var vo,XTe,cXi,Blt,ayn,cyn,Flt,Kt,hXi,pyn=C(()=>{"use strict";nn();en();NU();I7();cs();Dxe();Fnt();Ipn();kpn();ase();Znt();eH();syn();vo=tt.child({prefix:"pi-indexer"}),XTe="context-engine",cXi="indexing:warning",Blt=600*1e3,ayn="wait-for-indexing-on-retrieval";cyn=Symbol.for("__pi_indexing_extension_state__"),Flt=class extends Ot{getMessage;constructor(t){super("",0,0),this.getMessage=t}render(t){return this.setText(this.getMessage()),super.render(t)}};Kt=pXi();hXi=["Augment's semantic context engine for the codebase.","Sees the whole repo as a graph and can answer questions whose answer is spread across files that don't share keywords.","","Use codebase-retrieval when the question has any of these shapes:",'* "How does X work" / "where is X implemented" / "what calls X"','* "Is there already something that does Y" (gap-finding)',`* "What's the convention / pattern for Z in this repo"`,'* "What would break if I change the signature of W"',"* Any question that spans multiple files, layers, or modules","","Don't use it when:","* You already know the exact file and just need specific lines.","* You're looking for a literal string.","* The task is a direct shell operation (run tests, git status, ls).","","If this session has multiple workspace folders mounted, pass the absolute path of the folder you want to search as `workspace`. Omit it to search the primary workspace. Each call searches exactly one workspace; call again with a different `workspace` to search another."].join(`
|
|
228
228
|
`)});var myn=C(()=>{});function coe(e,t){return e!==null&&typeof e=="object"&&"$typeName"in e&&typeof e.$typeName=="string"?t===void 0?!0:t.typeName===e.$typeName:!1}var KTe=C(()=>{});var Wt,j_=C(()=>{(function(e){e[e.DOUBLE=1]="DOUBLE",e[e.FLOAT=2]="FLOAT",e[e.INT64=3]="INT64",e[e.UINT64=4]="UINT64",e[e.INT32=5]="INT32",e[e.FIXED64=6]="FIXED64",e[e.FIXED32=7]="FIXED32",e[e.BOOL=8]="BOOL",e[e.STRING=9]="STRING",e[e.BYTES=12]="BYTES",e[e.UINT32=13]="UINT32",e[e.SFIXED32=15]="SFIXED32",e[e.SFIXED64=16]="SFIXED64",e[e.SINT32=17]="SINT32",e[e.SINT64=18]="SINT64"})(Wt||(Wt={}))});function hyn(){let e=0,t=0;for(let r=0;r<28;r+=7){let i=this.buf[this.pos++];if(e|=(i&127)<<r,(i&128)==0)return this.assertBounds(),[e,t]}let n=this.buf[this.pos++];if(e|=(n&15)<<28,t=(n&112)>>4,(n&128)==0)return this.assertBounds(),[e,t];for(let r=3;r<=31;r+=7){let i=this.buf[this.pos++];if(t|=(i&127)<<r,(i&128)==0)return this.assertBounds(),[e,t]}throw new Error("invalid varint")}function JTe(e,t,n){for(let s=0;s<28;s=s+7){let o=e>>>s,a=!(!(o>>>7)&&t==0),l=(a?o|128:o)&255;if(n.push(l),!a)return}let r=e>>>28&15|(t&7)<<4,i=t>>3!=0;if(n.push((i?r|128:r)&255),!!i){for(let s=3;s<31;s=s+7){let o=t>>>s,a=!!(o>>>7),l=(a?o|128:o)&255;if(n.push(l),!a)return}n.push(t>>>31&1)}}function Ult(e){let t=e[0]==="-";t&&(e=e.slice(1));let n=1e6,r=0,i=0;function s(o,a){let l=Number(e.slice(o,a));i*=n,r=r*n+l,r>=qTe&&(i=i+(r/qTe|0),r=r%qTe)}return s(-24,-18),s(-18,-12),s(-12,-6),s(-6),t?byn(r,i):Glt(r,i)}function gyn(e,t){let n=Glt(e,t),r=n.hi&2147483648;r&&(n=byn(n.lo,n.hi));let i=Vlt(n.lo,n.hi);return r?"-"+i:i}function Vlt(e,t){if({lo:e,hi:t}=AXi(e,t),t<=2097151)return String(qTe*t+e);let n=e&16777215,r=(e>>>24|t<<8)&16777215,i=t>>16&65535,s=n+r*6777216+i*6710656,o=r+i*8147497,a=i*2,l=1e7;return s>=l&&(o+=Math.floor(s/l),s%=l),o>=l&&(a+=Math.floor(o/l),o%=l),a.toString()+fyn(o)+fyn(s)}function AXi(e,t){return{lo:e>>>0,hi:t>>>0}}function Glt(e,t){return{lo:e|0,hi:t|0}}function byn(e,t){return t=~t,e?e=~e+1:t+=1,Glt(e,t)}function Wlt(e,t){if(e>=0){for(;e>127;)t.push(e&127|128),e=e>>>7;t.push(e)}else{for(let n=0;n<9;n++)t.push(e&127|128),e=e>>7;t.push(1)}}function yyn(){let e=this.buf[this.pos++],t=e&127;if((e&128)==0)return this.assertBounds(),t;if(e=this.buf[this.pos++],t|=(e&127)<<7,(e&128)==0)return this.assertBounds(),t;if(e=this.buf[this.pos++],t|=(e&127)<<14,(e&128)==0)return this.assertBounds(),t;if(e=this.buf[this.pos++],t|=(e&127)<<21,(e&128)==0)return this.assertBounds(),t;e=this.buf[this.pos++],t|=(e&15)<<28;for(let n=5;(e&128)!==0&&n<10;n++)e=this.buf[this.pos++];if((e&128)!=0)throw new Error("invalid varint");return this.assertBounds(),t>>>0}var qTe,fyn,$lt=C(()=>{qTe=4294967296;fyn=e=>{let t=String(e);return"0000000".slice(t.length)+t}});function EXi(){let e=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof e.getBigInt64=="function"&&typeof e.getBigUint64=="function"&&typeof e.setBigInt64=="function"&&typeof e.setBigUint64=="function"&&(typeof process!="object"||typeof process.env!="object"||process.env.BUF_BIGINT_DISABLE!=="1")){let n=BigInt("-9223372036854775808"),r=BigInt("9223372036854775807"),i=BigInt("0"),s=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(o){let a=typeof o=="bigint"?o:BigInt(o);if(a>r||a<n)throw new Error(`invalid int64: ${o}`);return a},uParse(o){let a=typeof o=="bigint"?o:BigInt(o);if(a>s||a<i)throw new Error(`invalid uint64: ${o}`);return a},enc(o){return e.setBigInt64(0,this.parse(o),!0),{lo:e.getInt32(0,!0),hi:e.getInt32(4,!0)}},uEnc(o){return e.setBigInt64(0,this.uParse(o),!0),{lo:e.getInt32(0,!0),hi:e.getInt32(4,!0)}},dec(o,a){return e.setInt32(0,o,!0),e.setInt32(4,a,!0),e.getBigInt64(0,!0)},uDec(o,a){return e.setInt32(0,o,!0),e.setInt32(4,a,!0),e.getBigUint64(0,!0)}}}return{zero:"0",supported:!1,parse(n){return typeof n!="string"&&(n=n.toString()),Ayn(n),n},uParse(n){return typeof n!="string"&&(n=n.toString()),Eyn(n),n},enc(n){return typeof n!="string"&&(n=n.toString()),Ayn(n),Ult(n)},uEnc(n){return typeof n!="string"&&(n=n.toString()),Eyn(n),Ult(n)},dec(n,r){return gyn(n,r)},uDec(n,r){return Vlt(n,r)}}}function Ayn(e){if(!/^-?[0-9]+$/.test(e))throw new Error("invalid int64: "+e)}function Eyn(e){if(!/^[0-9]+$/.test(e))throw new Error("invalid uint64: "+e)}var bl,BP=C(()=>{$lt();bl=EXi()});function yA(e,t){switch(e){case Wt.STRING:return"";case Wt.BOOL:return!1;case Wt.DOUBLE:case Wt.FLOAT:return 0;case Wt.INT64:case Wt.UINT64:case Wt.SFIXED64:case Wt.FIXED64:case Wt.SINT64:return t?"0":bl.zero;case Wt.BYTES:return new Uint8Array(0);default:return 0}}function _yn(e,t){switch(e){case Wt.BOOL:return t===!1;case Wt.STRING:return t==="";case Wt.BYTES:return t instanceof Uint8Array&&!t.byteLength;default:return t==0}}var b3=C(()=>{BP();j_()});function eIe(e,t){let n=e[t.localName].case;return n===void 0?n:t.fields.find(r=>r.localName===n)}function vyn(e,t){let n=t.localName;if(t.oneof)return e[t.oneof.localName].case===n;if(t.presence!=Syn)return e[n]!==void 0&&Object.prototype.hasOwnProperty.call(e,n);switch(t.fieldKind){case"list":return e[n].length>0;case"map":return Object.keys(e[n]).length>0;case"scalar":return!_yn(t.scalar,e[n]);case"enum":return e[n]!==t.enum.values[0].number}throw new Error("message field with implicit presence")}function y3(e,t){return Object.prototype.hasOwnProperty.call(e,t)&&e[t]!==void 0}function tIe(e,t){if(t.oneof){let n=e[t.oneof.localName];return n.case===t.localName?n.value:void 0}return e[t.localName]}function nIe(e,t,n){t.oneof?e[t.oneof.localName]={case:t.localName,value:n}:e[t.localName]=n}function xyn(e,t){let n=t.localName;if(t.oneof){let r=t.oneof.localName;e[r].case===n&&(e[r]={case:void 0})}else if(t.presence!=Syn)delete e[n];else switch(t.fieldKind){case"map":e[n]={};break;case"list":e[n]=[];break;case"enum":e[n]=t.enum.values[0].number;break;case"scalar":e[n]=yA(t.scalar,t.longAsString);break}}var Syn,vv,nH=C(()=>{b3();Syn=2,vv=Symbol.for("reflect unsafe local")});function NT(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function uoe(e,t){var n,r,i,s;if(NT(e)&&vv in e&&"add"in e&&"field"in e&&typeof e.field=="function"){if(t!==void 0){let o=t,a=e.field();return o.listKind==a.listKind&&o.scalar===a.scalar&&((n=o.message)===null||n===void 0?void 0:n.typeName)===((r=a.message)===null||r===void 0?void 0:r.typeName)&&((i=o.enum)===null||i===void 0?void 0:i.typeName)===((s=a.enum)===null||s===void 0?void 0:s.typeName)}return!0}return!1}function doe(e,t){var n,r,i,s;if(NT(e)&&vv in e&&"has"in e&&"field"in e&&typeof e.field=="function"){if(t!==void 0){let o=t,a=e.field();return o.mapKey===a.mapKey&&o.mapKind==a.mapKind&&o.scalar===a.scalar&&((n=o.message)===null||n===void 0?void 0:n.typeName)===((r=a.message)===null||r===void 0?void 0:r.typeName)&&((i=o.enum)===null||i===void 0?void 0:i.typeName)===((s=a.enum)===null||s===void 0?void 0:s.typeName)}return!0}return!1}function poe(e,t){return NT(e)&&vv in e&&"desc"in e&&NT(e.desc)&&e.desc.kind==="message"&&(t===void 0||e.desc.typeName==t.typeName)}var rIe=C(()=>{nH()});function Cyn(e){return Tyn(e.$typeName)}function kT(e){let t=e.fields[0];return Tyn(e.typeName)&&t!==void 0&&t.fieldKind=="scalar"&&t.name=="value"&&t.number==1}function Tyn(e){return e.startsWith("google.protobuf.")&&["DoubleValue","FloatValue","Int64Value","UInt64Value","Int32Value","UInt32Value","BoolValue","StringValue","BytesValue"].includes(e.substring(16))}var rH=C(()=>{});function Qf(e,t){if(coe(t,e))return t;let n=IXi(e);return t!==void 0&&vXi(e,n,t),n}function vXi(e,t,n){for(let r of e.members){let i=n[r.localName];if(i==null)continue;let s;if(r.kind=="oneof"){let o=eIe(n,r);if(!o)continue;s=o,i=tIe(n,o)}else s=r;switch(s.fieldKind){case"message":i=Ylt(s,i);break;case"scalar":i=Ryn(s,i);break;case"list":i=CXi(s,i);break;case"map":i=xXi(s,i);break}nIe(t,s,i)}return t}function Ryn(e,t){return e.scalar==Wt.BYTES?Hlt(t):t}function xXi(e,t){if(NT(t)){if(e.scalar==Wt.BYTES)return Iyn(t,Hlt);if(e.mapKind=="message")return Iyn(t,n=>Ylt(e,n))}return t}function CXi(e,t){if(Array.isArray(t)){if(e.scalar==Wt.BYTES)return t.map(Hlt);if(e.listKind=="message")return t.map(n=>Ylt(e,n))}return t}function Ylt(e,t){if(e.fieldKind=="message"&&!e.oneof&&kT(e.message))return Ryn(e.message.fields[0],t);if(NT(t)){if(e.message.typeName=="google.protobuf.Struct"&&e.parent.typeName!=="google.protobuf.Value")return t;if(!coe(t,e.message))return Qf(e.message,t)}return t}function Hlt(e){return Array.isArray(e)?new Uint8Array(e):e}function Iyn(e,t){let n={};for(let r of Object.entries(e))n[r[0]]=t(r[1]);return n}function IXi(e){let t;if(wXi(e)){let n=wyn.get(e),r,i;if(n)({prototype:r,members:i}=n);else{r={},i=new Set;for(let s of e.members)s.kind!="oneof"&&(s.fieldKind!="scalar"&&s.fieldKind!="enum"||s.presence!=iIe&&(i.add(s),r[s.localName]=Qlt(s)));wyn.set(e,{prototype:r,members:i})}t=Object.create(r),t.$typeName=e.typeName;for(let s of e.members)i.has(s)||s.kind=="field"&&(s.fieldKind=="message"||(s.fieldKind=="scalar"||s.fieldKind=="enum")&&s.presence!=iIe)||(t[s.localName]=Qlt(s))}else{t={$typeName:e.typeName};for(let n of e.members)(n.kind=="oneof"||n.presence==iIe)&&(t[n.localName]=Qlt(n))}return t}function wXi(e){switch(e.file.edition){case _Xi:return!1;case SXi:return!0;default:return e.fields.some(t=>t.presence!=iIe&&t.fieldKind!="message"&&!t.oneof)}}function Qlt(e){if(e.kind=="oneof")return{case:void 0};if(e.fieldKind=="list")return[];if(e.fieldKind=="map")return{};if(e.fieldKind=="message")return TXi;let t=e.getDefaultValue();return t!==void 0?e.fieldKind=="scalar"&&e.longAsString?t.toString():t:e.fieldKind=="scalar"?yA(e.scalar,e.longAsString):e.enum.values[0].number}var _Xi,SXi,iIe,TXi,wyn,iH=C(()=>{KTe();j_();b3();rIe();nH();rH();_Xi=999,SXi=998,iIe=2;TXi=Symbol(),wyn=new WeakMap});function Nyn(e){return e instanceof Error&&RXi.includes(e.name)&&"field"in e&&typeof e.field=="function"}var RXi,em,sIe=C(()=>{RXi=["FieldValueInvalidError","FieldListRangeError","ForeignFieldError"],em=class extends Error{constructor(t,n,r="FieldValueInvalidError"){super(n),this.name=r,this.field=()=>t}}});function moe(){if(globalThis[Zlt]==null){let e=new globalThis.TextEncoder,t=new globalThis.TextDecoder;globalThis[Zlt]={encodeUtf8(n){return e.encode(n)},decodeUtf8(n){return t.decode(n)},checkUtf8(n){try{return encodeURIComponent(n),!0}catch{return!1}}}}return globalThis[Zlt]}var Zlt,oIe=C(()=>{Zlt=Symbol.for("@bufbuild/protobuf/text-encoding")});function jlt(e){if(typeof e=="string")e=Number(e);else if(typeof e!="number")throw new Error("invalid int32: "+typeof e);if(!Number.isInteger(e)||e>qlt||e<Jlt)throw new Error("invalid int32: "+e)}function kyn(e){if(typeof e=="string")e=Number(e);else if(typeof e!="number")throw new Error("invalid uint32: "+typeof e);if(!Number.isInteger(e)||e>Klt||e<0)throw new Error("invalid uint32: "+e)}function NXi(e){if(typeof e=="string"){let t=e;if(e=Number(e),Number.isNaN(e)&&t!=="NaN")throw new Error("invalid float32: "+t)}else if(typeof e!="number")throw new Error("invalid float32: "+typeof e);if(Number.isFinite(e)&&(e>zlt||e<Xlt))throw new Error("invalid float32: "+e)}var zu,zlt,Xlt,Klt,qlt,Jlt,LP,A3,sH=C(()=>{$lt();BP();oIe();(function(e){e[e.Varint=0]="Varint",e[e.Bit64=1]="Bit64",e[e.LengthDelimited=2]="LengthDelimited",e[e.StartGroup=3]="StartGroup",e[e.EndGroup=4]="EndGroup",e[e.Bit32=5]="Bit32"})(zu||(zu={}));zlt=34028234663852886e22,Xlt=-34028234663852886e22,Klt=4294967295,qlt=2147483647,Jlt=-2147483648,LP=class{constructor(t=moe().encodeUtf8){this.encodeUtf8=t,this.stack=[],this.chunks=[],this.buf=[]}finish(){this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]);let t=0;for(let i=0;i<this.chunks.length;i++)t+=this.chunks[i].length;let n=new Uint8Array(t),r=0;for(let i=0;i<this.chunks.length;i++)n.set(this.chunks[i],r),r+=this.chunks[i].length;return this.chunks=[],n}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let t=this.finish(),n=this.stack.pop();if(!n)throw new Error("invalid state, fork stack empty");return this.chunks=n.chunks,this.buf=n.buf,this.uint32(t.byteLength),this.raw(t)}tag(t,n){return this.uint32((t<<3|n)>>>0)}raw(t){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(t),this}uint32(t){for(kyn(t);t>127;)this.buf.push(t&127|128),t=t>>>7;return this.buf.push(t),this}int32(t){return jlt(t),Wlt(t,this.buf),this}bool(t){return this.buf.push(t?1:0),this}bytes(t){return this.uint32(t.byteLength),this.raw(t)}string(t){let n=this.encodeUtf8(t);return this.uint32(n.byteLength),this.raw(n)}float(t){NXi(t);let n=new Uint8Array(4);return new DataView(n.buffer).setFloat32(0,t,!0),this.raw(n)}double(t){let n=new Uint8Array(8);return new DataView(n.buffer).setFloat64(0,t,!0),this.raw(n)}fixed32(t){kyn(t);let n=new Uint8Array(4);return new DataView(n.buffer).setUint32(0,t,!0),this.raw(n)}sfixed32(t){jlt(t);let n=new Uint8Array(4);return new DataView(n.buffer).setInt32(0,t,!0),this.raw(n)}sint32(t){return jlt(t),t=(t<<1^t>>31)>>>0,Wlt(t,this.buf),this}sfixed64(t){let n=new Uint8Array(8),r=new DataView(n.buffer),i=bl.enc(t);return r.setInt32(0,i.lo,!0),r.setInt32(4,i.hi,!0),this.raw(n)}fixed64(t){let n=new Uint8Array(8),r=new DataView(n.buffer),i=bl.uEnc(t);return r.setInt32(0,i.lo,!0),r.setInt32(4,i.hi,!0),this.raw(n)}int64(t){let n=bl.enc(t);return JTe(n.lo,n.hi,this.buf),this}sint64(t){let n=bl.enc(t),r=n.hi>>31,i=n.lo<<1^r,s=(n.hi<<1|n.lo>>>31)^r;return JTe(i,s,this.buf),this}uint64(t){let n=bl.uEnc(t);return JTe(n.lo,n.hi,this.buf),this}},A3=class{constructor(t,n=moe().decodeUtf8){this.decodeUtf8=n,this.varint64=hyn,this.uint32=yyn,this.buf=t,this.len=t.length,this.pos=0,this.view=new DataView(t.buffer,t.byteOffset,t.byteLength)}tag(){let t=this.uint32(),n=t>>>3,r=t&7;if(n<=0||r<0||r>5)throw new Error("illegal tag: field no "+n+" wire type "+r);return[n,r]}skip(t,n){let r=this.pos;switch(t){case zu.Varint:for(;this.buf[this.pos++]&128;);break;case zu.Bit64:this.pos+=4;case zu.Bit32:this.pos+=4;break;case zu.LengthDelimited:let i=this.uint32();this.pos+=i;break;case zu.StartGroup:for(;;){let[s,o]=this.tag();if(o===zu.EndGroup){if(n!==void 0&&s!==n)throw new Error("invalid end group tag");break}this.skip(o,s)}break;default:throw new Error("cant skip wire type "+t)}return this.assertBounds(),this.buf.subarray(r,this.pos)}assertBounds(){if(this.pos>this.len)throw new RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)}int64(){return bl.dec(...this.varint64())}uint64(){return bl.uDec(...this.varint64())}sint64(){let[t,n]=this.varint64(),r=-(t&1);return t=(t>>>1|(n&1)<<31)^r,n=n>>>1^r,bl.dec(t,n)}bool(){let[t,n]=this.varint64();return t!==0||n!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return bl.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return bl.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let t=this.uint32(),n=this.pos;return this.pos+=t,this.assertBounds(),this.buf.subarray(n,n+t)}string(){return this.decodeUtf8(this.bytes())}}});function ON(e,t){let n=e.fieldKind=="list"?uoe(t,e):e.fieldKind=="map"?doe(t,e):tct(e,t);if(n===!0)return;let r;switch(e.fieldKind){case"list":r=`expected ${Dyn(e)}, got ${Mp(t)}`;break;case"map":r=`expected ${Byn(e)}, got ${Mp(t)}`;break;default:r=aIe(e,t,n)}return new em(e,r)}function ect(e,t,n){let r=tct(e,n);if(r!==!0)return new em(e,`list item #${t+1}: ${aIe(e,n,r)}`)}function Oyn(e,t,n){let r=Myn(t,e.mapKey);if(r!==!0)return new em(e,`invalid map key: ${aIe({scalar:e.mapKey},t,r)}`);let i=tct(e,n);if(i!==!0)return new em(e,`map entry ${Mp(t)}: ${aIe(e,n,i)}`)}function tct(e,t){return e.scalar!==void 0?Myn(t,e.scalar):e.enum!==void 0?e.enum.open?Number.isInteger(t):e.enum.values.some(n=>n.number===t):poe(t,e.message)}function Myn(e,t){switch(t){case Wt.DOUBLE:return typeof e=="number";case Wt.FLOAT:return typeof e!="number"?!1:Number.isNaN(e)||!Number.isFinite(e)?!0:e>zlt||e<Xlt?`${e.toFixed()} out of range`:!0;case Wt.INT32:case Wt.SFIXED32:case Wt.SINT32:return typeof e!="number"||!Number.isInteger(e)?!1:e>qlt||e<Jlt?`${e.toFixed()} out of range`:!0;case Wt.FIXED32:case Wt.UINT32:return typeof e!="number"||!Number.isInteger(e)?!1:e>Klt||e<0?`${e.toFixed()} out of range`:!0;case Wt.BOOL:return typeof e=="boolean";case Wt.STRING:return typeof e!="string"?!1:moe().checkUtf8(e)||"invalid UTF8";case Wt.BYTES:return e instanceof Uint8Array;case Wt.INT64:case Wt.SFIXED64:case Wt.SINT64:if(typeof e=="bigint"||typeof e=="number"||typeof e=="string"&&e.length>0)try{return bl.parse(e),!0}catch{return`${e} out of range`}return!1;case Wt.FIXED64:case Wt.UINT64:if(typeof e=="bigint"||typeof e=="number"||typeof e=="string"&&e.length>0)try{return bl.uParse(e),!0}catch{return`${e} out of range`}return!1}}function aIe(e,t,n){return n=typeof n=="string"?`: ${n}`:`, got ${Mp(t)}`,e.scalar!==void 0?`expected ${kXi(e.scalar)}`+n:e.enum!==void 0?`expected ${e.enum.toString()}`+n:`expected ${Pyn(e.message)}`+n}function Mp(e){switch(typeof e){case"object":return e===null?"null":e instanceof Uint8Array?`Uint8Array(${e.length})`:Array.isArray(e)?`Array(${e.length})`:uoe(e)?Dyn(e.field()):doe(e)?Byn(e.field()):poe(e)?Pyn(e.desc):coe(e)?`message ${e.$typeName}`:"object";case"string":return e.length>30?"string":`"${e.split('"').join('\\"')}"`;case"boolean":return String(e);case"number":return String(e);case"bigint":return String(e)+"n";default:return typeof e}}function Pyn(e){return`ReflectMessage (${e.typeName})`}function Dyn(e){switch(e.listKind){case"message":return`ReflectList (${e.message.toString()})`;case"enum":return`ReflectList (${e.enum.toString()})`;case"scalar":return`ReflectList (${Wt[e.scalar]})`}}function Byn(e){switch(e.mapKind){case"message":return`ReflectMap (${Wt[e.mapKey]}, ${e.message.toString()})`;case"enum":return`ReflectMap (${Wt[e.mapKey]}, ${e.enum.toString()})`;case"scalar":return`ReflectMap (${Wt[e.mapKey]}, ${Wt[e.scalar]})`}}function kXi(e){switch(e){case Wt.STRING:return"string";case Wt.BOOL:return"boolean";case Wt.INT64:case Wt.SINT64:case Wt.SFIXED64:return"bigint (int64)";case Wt.UINT64:case Wt.FIXED64:return"bigint (uint64)";case Wt.BYTES:return"Uint8Array";case Wt.DOUBLE:return"number (float64)";case Wt.FLOAT:return"number (float32)";case Wt.FIXED32:case Wt.UINT32:return"number (uint32)";case Wt.INT32:case Wt.SFIXED32:case Wt.SINT32:return"number (int32)"}}var lIe=C(()=>{j_();KTe();sIe();rIe();sH();oIe();BP()});function Yf(e,t,n=!0){return new uIe(e,t,n)}function foe(e,t){if(t.parent.typeName!==e.$typeName)throw new em(t,`cannot use ${t.toString()} with message ${e.$typeName}`,"ForeignFieldError")}function oct(e,t){return poe(t)?Cyn(t.message)&&!e.oneof&&e.fieldKind=="message"?t.message.value:t.desc.typeName=="google.protobuf.Struct"&&e.parent.typeName!="google.protobuf.Value"?Vyn(t.message):t.message:t}function act(e,t,n){return t!==void 0&&(kT(e.message)&&!e.oneof&&e.fieldKind=="message"?t={$typeName:e.message.typeName,value:lct(e.message.fields[0],t)}:e.message.typeName=="google.protobuf.Struct"&&e.parent.typeName!="google.protobuf.Value"&&NT(t)&&(t=Uyn(t))),new uIe(e.message,t,n)}function Lyn(e,t){return e.listKind=="message"?oct(e,t):cct(e,t)}function nct(e,t,n){return e.listKind=="message"?act(e,t,n):lct(e,t)}function OXi(e,t){return e.mapKind=="message"?oct(e,t):cct(e,t)}function rct(e,t,n){return e.mapKind=="message"?act(e,t,n):t}function cIe(e){return typeof e=="string"||typeof e=="number"?e:String(e)}function Fyn(e,t){switch(t){case Wt.STRING:return e;case Wt.INT32:case Wt.FIXED32:case Wt.UINT32:case Wt.SFIXED32:case Wt.SINT32:{let n=Number.parseInt(e);if(Number.isFinite(n))return n;break}case Wt.BOOL:switch(e){case"true":return!0;case"false":return!1}break;case Wt.UINT64:case Wt.FIXED64:try{return bl.uParse(e)}catch{}break;default:try{return bl.parse(e)}catch{}break}return e}function lct(e,t){switch(e.scalar){case Wt.INT64:case Wt.SFIXED64:case Wt.SINT64:"longAsString"in e&&e.longAsString&&typeof t=="string"&&(t=bl.parse(t));break;case Wt.FIXED64:case Wt.UINT64:"longAsString"in e&&e.longAsString&&typeof t=="string"&&(t=bl.uParse(t));break}return t}function cct(e,t){switch(e.scalar){case Wt.INT64:case Wt.SFIXED64:case Wt.SINT64:"longAsString"in e&&e.longAsString?t=String(t):(typeof t=="string"||typeof t=="number")&&(t=bl.parse(t));break;case Wt.FIXED64:case Wt.UINT64:"longAsString"in e&&e.longAsString?t=String(t):(typeof t=="string"||typeof t=="number")&&(t=bl.uParse(t));break}return t}function Uyn(e){let t={$typeName:"google.protobuf.Struct",fields:{}};if(NT(e))for(let[n,r]of Object.entries(e))t.fields[n]=Wyn(r);return t}function Vyn(e){let t={};for(let[n,r]of Object.entries(e.fields))t[n]=Gyn(r);return t}function Gyn(e){switch(e.kind.case){case"structValue":return Vyn(e.kind.value);case"listValue":return e.kind.value.values.map(Gyn);case"nullValue":case void 0:return null;default:return e.kind.value}}function Wyn(e){let t={$typeName:"google.protobuf.Value",kind:{case:void 0}};switch(typeof e){case"number":t.kind={case:"numberValue",value:e};break;case"string":t.kind={case:"stringValue",value:e};break;case"boolean":t.kind={case:"boolValue",value:e};break;case"object":if(e===null)t.kind={case:"nullValue",value:0};else if(Array.isArray(e)){let n={$typeName:"google.protobuf.ListValue",values:[]};if(Array.isArray(e))for(let r of e)n.values.push(Wyn(r));t.kind={case:"listValue",value:n}}else t.kind={case:"structValue",value:Uyn(e)};break}return t}var uIe,ict,sct,oH=C(()=>{j_();lIe();sIe();nH();iH();rH();b3();BP();rIe();uIe=class{get sortedFields(){var t;return(t=this._sortedFields)!==null&&t!==void 0?t:this._sortedFields=this.desc.fields.concat().sort((n,r)=>n.number-r.number)}constructor(t,n,r=!0){this.lists=new Map,this.maps=new Map,this.check=r,this.desc=t,this.message=this[vv]=n??Qf(t),this.fields=t.fields,this.oneofs=t.oneofs,this.members=t.members}findNumber(t){return this._fieldsByNumber||(this._fieldsByNumber=new Map(this.desc.fields.map(n=>[n.number,n]))),this._fieldsByNumber.get(t)}oneofCase(t){return foe(this.message,t),eIe(this.message,t)}isSet(t){return foe(this.message,t),vyn(this.message,t)}clear(t){foe(this.message,t),xyn(this.message,t)}get(t){foe(this.message,t);let n=tIe(this.message,t);switch(t.fieldKind){case"list":let r=this.lists.get(t);return(!r||r[vv]!==n)&&this.lists.set(t,r=new ict(t,n,this.check)),r;case"map":let i=this.maps.get(t);return(!i||i[vv]!==n)&&this.maps.set(t,i=new sct(t,n,this.check)),i;case"message":return act(t,n,this.check);case"scalar":return n===void 0?yA(t.scalar,!1):lct(t,n);case"enum":return n??t.enum.values[0].number}}set(t,n){if(foe(this.message,t),this.check){let i=ON(t,n);if(i)throw i}let r;t.fieldKind=="message"?r=oct(t,n):doe(n)||uoe(n)?r=n[vv]:r=cct(t,n),nIe(this.message,t,r)}getUnknown(){return this.message.$unknown}setUnknown(t){this.message.$unknown=t}};ict=class{field(){return this._field}get size(){return this._arr.length}constructor(t,n,r){this._field=t,this._arr=this[vv]=n,this.check=r}get(t){let n=this._arr[t];return n===void 0?void 0:nct(this._field,n,this.check)}set(t,n){if(t<0||t>=this._arr.length)throw new em(this._field,`list item #${t+1}: out of range`);if(this.check){let r=ect(this._field,t,n);if(r)throw r}this._arr[t]=Lyn(this._field,n)}add(t){if(this.check){let n=ect(this._field,this._arr.length,t);if(n)throw n}this._arr.push(Lyn(this._field,t))}clear(){this._arr.splice(0,this._arr.length)}[Symbol.iterator](){return this.values()}keys(){return this._arr.keys()}*values(){for(let t of this._arr)yield nct(this._field,t,this.check)}*entries(){for(let t=0;t<this._arr.length;t++)yield[t,nct(this._field,this._arr[t],this.check)]}},sct=class{constructor(t,n,r=!0){this.obj=this[vv]=n??{},this.check=r,this._field=t}field(){return this._field}set(t,n){if(this.check){let r=Oyn(this._field,t,n);if(r)throw r}return this.obj[cIe(t)]=OXi(this._field,n),this}delete(t){let n=cIe(t),r=Object.prototype.hasOwnProperty.call(this.obj,n);return r&&delete this.obj[n],r}clear(){for(let t of Object.keys(this.obj))delete this.obj[t]}get(t){let n=this.obj[cIe(t)];return n!==void 0&&(n=rct(this._field,n,this.check)),n}has(t){return Object.prototype.hasOwnProperty.call(this.obj,cIe(t))}*keys(){for(let t of Object.keys(this.obj))yield Fyn(t,this._field.mapKey)}*entries(){for(let t of Object.entries(this.obj))yield[Fyn(t[0],this._field.mapKey),rct(this._field,t[1],this.check)]}[Symbol.iterator](){return this.entries()}get size(){return Object.keys(this.obj).length}*values(){for(let t of Object.values(this.obj))yield rct(this._field,t,this.check)}forEach(t,n){for(let r of this.entries())t.call(n,r[1],r[0],this)}}});var $yn=C(()=>{});function lH(e){let t=MXi(),n=e.length*3/4;e[e.length-2]=="="?n-=2:e[e.length-1]=="="&&(n-=1);let r=new Uint8Array(n),i=0,s=0,o,a=0;for(let l=0;l<e.length;l++){if(o=t[e.charCodeAt(l)],o===void 0)switch(e[l]){case"=":s=0;case`
|
|
229
229
|
`:case"\r":case" ":case" ":continue;default:throw Error("invalid base64 string")}switch(s){case 0:a=o,s=1;break;case 1:r[i++]=a<<2|(o&48)>>4,a=o,s=2;break;case 2:r[i++]=(a&15)<<4|(o&60)>>2,a=o,s=3;break;case 3:r[i++]=(a&3)<<6|o,s=0;break}}if(s==1)throw Error("invalid base64 string");return r.subarray(0,i)}function hoe(e,t="std"){let n=Yyn(t),r=t=="std",i="",s=0,o,a=0;for(let l=0;l<e.length;l++)switch(o=e[l],s){case 0:i+=n[o>>2],a=(o&3)<<4,s=1;break;case 1:i+=n[a|o>>4],a=(o&15)<<2,s=2;break;case 2:i+=n[a|o>>6],i+=n[o&63],s=0;break}return s&&(i+=n[a],r&&(i+="=",s==1&&(i+="="))),i}function Yyn(e){return dIe||(dIe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),Qyn=dIe.slice(0,-2).concat("-","_")),e=="url"?Qyn:dIe}function MXi(){if(!aH){aH=[];let e=Yyn("std");for(let t=0;t<e.length;t++)aH[e[t].charCodeAt(0)]=t;aH[45]=e.indexOf("+"),aH[95]=e.indexOf("/")}return aH}var dIe,Qyn,aH,pIe=C(()=>{});function FP(e){let t=!1,n=[];for(let r=0;r<e.length;r++){let i=e.charAt(r);switch(i){case"_":t=!0;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":n.push(i),t=!1;break;default:t&&(t=!1,i=i.toUpperCase()),n.push(i);break}}return n.join("")}function cH(e){return PXi.has(e)?e+"$":e}var PXi,mIe=C(()=>{PXi=new Set(["constructor","toString","toJSON","valueOf"])});function goe(e){for(let t of e.field)y3(t,"jsonName")||(t.jsonName=FP(t.name));e.nestedType.forEach(goe)}var uct=C(()=>{mIe();nH()});function Hyn(e,t){let n=e.values.find(r=>r.name===t);if(!n)throw new Error(`cannot parse ${e} default value: ${t}`);return n.number}function Zyn(e,t){switch(e){case Wt.STRING:return t;case Wt.BYTES:{let n=DXi(t);if(n===!1)throw new Error(`cannot parse ${Wt[e]} default value: ${t}`);return n}case Wt.INT64:case Wt.SFIXED64:case Wt.SINT64:return bl.parse(t);case Wt.UINT64:case Wt.FIXED64:return bl.uParse(t);case Wt.DOUBLE:case Wt.FLOAT:switch(t){case"inf":return Number.POSITIVE_INFINITY;case"-inf":return Number.NEGATIVE_INFINITY;case"nan":return Number.NaN;default:return parseFloat(t)}case Wt.BOOL:return t==="true";case Wt.INT32:case Wt.UINT32:case Wt.SINT32:case Wt.FIXED32:case Wt.SFIXED32:return parseInt(t,10)}}function DXi(e){let t=[],n={tail:e,c:"",next(){return this.tail.length==0?!1:(this.c=this.tail[0],this.tail=this.tail.substring(1),!0)},take(r){if(this.tail.length>=r){let i=this.tail.substring(0,r);return this.tail=this.tail.substring(r),i}return!1}};for(;n.next();)switch(n.c){case"\\":if(n.next())switch(n.c){case"\\":t.push(n.c.charCodeAt(0));break;case"b":t.push(8);break;case"f":t.push(12);break;case"n":t.push(10);break;case"r":t.push(13);break;case"t":t.push(9);break;case"v":t.push(11);break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":{let r=n.c,i=n.take(2);if(i===!1)return!1;let s=parseInt(r+i,8);if(Number.isNaN(s))return!1;t.push(s);break}case"x":{let r=n.c,i=n.take(2);if(i===!1)return!1;let s=parseInt(r+i,16);if(Number.isNaN(s))return!1;t.push(s);break}case"u":{let r=n.c,i=n.take(4);if(i===!1)return!1;let s=parseInt(r+i,16);if(Number.isNaN(s))return!1;let o=new Uint8Array(4);new DataView(o.buffer).setInt32(0,s,!0),t.push(o[0],o[1],o[2],o[3]);break}case"U":{let r=n.c,i=n.take(8);if(i===!1)return!1;let s=bl.uEnc(r+i),o=new Uint8Array(8),a=new DataView(o.buffer);a.setInt32(0,s.lo,!0),a.setInt32(4,s.hi,!0),t.push(o[0],o[1],o[2],o[3],o[4],o[5],o[6],o[7]);break}}break;default:t.push(n.c.charCodeAt(0))}return new Uint8Array(t)}var dct=C(()=>{j_();BP()});function*fIe(e){switch(e.kind){case"file":for(let t of e.messages)yield t,yield*fIe(t);yield*e.enums,yield*e.services,yield*e.extensions;break;case"message":for(let t of e.nestedMessages)yield t,yield*fIe(t);yield*e.nestedEnums,yield*e.nestedExtensions;break}}var jyn=C(()=>{});function hIe(...e){let t=BXi();if(!e.length)return t;if("$typeName"in e[0]&&e[0].$typeName=="google.protobuf.FileDescriptorSet"){for(let n of e[0].file)qyn(n,t);return t}if("$typeName"in e[0]){let s=function(o){let a=[];for(let l of o.dependency){if(t.getFile(l)!=null||i.has(l))continue;let u=r(l);if(!u)throw new Error(`Unable to resolve ${l}, imported by ${o.name}`);"kind"in u?t.addFile(u,!1,!0):(i.add(u.name),a.push(u))}return a.concat(...a.map(s))},n=e[0],r=e[1],i=new Set;for(let o of[n,...s(n)].reverse())qyn(o,t)}else for(let n of e)for(let r of n.files)t.addFile(r);return t}function BXi(){let e=new Map,t=new Map,n=new Map;return{kind:"registry",types:e,extendees:t,[Symbol.iterator](){return e.values()},get files(){return n.values()},addFile(r,i,s){if(n.set(r.proto.name,r),!i)for(let o of fIe(r))this.add(o);if(s)for(let o of r.dependencies)this.addFile(o,i,s)},add(r){if(r.kind=="extension"){let i=t.get(r.extendee.typeName);i||t.set(r.extendee.typeName,i=new Map),i.set(r.number,r)}e.set(r.typeName,r)},get(r){return e.get(r)},getFile(r){return n.get(r)},getMessage(r){let i=e.get(r);return i?.kind=="message"?i:void 0},getEnum(r){let i=e.get(r);return i?.kind=="enum"?i:void 0},getExtension(r){let i=e.get(r);return i?.kind=="extension"?i:void 0},getExtensionFor(r,i){var s;return(s=t.get(r.typeName))===null||s===void 0?void 0:s.get(i)},getService(r){let i=e.get(r);return i?.kind=="service"?i:void 0}}}function qyn(e,t){var n,r;let i={kind:"file",proto:e,deprecated:(r=(n=e.options)===null||n===void 0?void 0:n.deprecated)!==null&&r!==void 0?r:!1,edition:XXi(e),name:e.name.replace(/\.proto$/,""),dependencies:KXi(e,t),enums:[],messages:[],extensions:[],services:[],toString(){return`file ${e.name}`}},s=new Map,o={get(a){return s.get(a)},add(a){var l;xv(((l=a.proto.options)===null||l===void 0?void 0:l.mapEntry)===!0),s.set(a.typeName,a)}};for(let a of e.enumType)t0n(a,i,void 0,t);for(let a of e.messageType)n0n(a,i,void 0,t,o);for(let a of e.service)ZXi(a,i,t);mct(i,t);for(let a of s.values())fct(a,t,o);for(let a of i.messages)fct(a,t,o),mct(a,t);t.addFile(i,!0)}function mct(e,t){switch(e.kind){case"file":for(let n of e.proto.extension){let r=hct(n,e,t);e.extensions.push(r),t.add(r)}break;case"message":for(let n of e.proto.extension){let r=hct(n,e,t);e.nestedExtensions.push(r),t.add(r)}for(let n of e.nestedMessages)mct(n,t);break}}function fct(e,t,n){let r=e.proto.oneofDecl.map(s=>zXi(s,e)),i=new Set;for(let s of e.proto.field){let o=eKi(s,r),a=hct(s,e,t,o,n);e.fields.push(a),e.field[a.localName]=a,o===void 0?e.members.push(a):(o.fields.push(a),i.has(o)||(i.add(o),e.members.push(o)))}for(let s of r.filter(o=>i.has(o)))e.oneofs.push(s);for(let s of e.nestedMessages)fct(s,t,n)}function t0n(e,t,n,r){var i,s,o,a,l;let u=qXi(e.name,e.value),c={kind:"enum",proto:e,deprecated:(s=(i=e.options)===null||i===void 0?void 0:i.deprecated)!==null&&s!==void 0?s:!1,file:t,parent:n,open:!0,name:e.name,typeName:gIe(e,n,t),value:{},values:[],sharedPrefix:u,toString(){return`enum ${this.typeName}`}};c.open=iKi(c),r.add(c);for(let d of e.value){let p=d.name;c.values.push(c.value[d.number]={kind:"enum_value",proto:d,deprecated:(a=(o=d.options)===null||o===void 0?void 0:o.deprecated)!==null&&a!==void 0?a:!1,parent:c,name:p,localName:cH(u==null?p:p.substring(u.length)),number:d.number,toString(){return`enum value ${c.typeName}.${p}`}})}((l=n?.nestedEnums)!==null&&l!==void 0?l:t.enums).push(c)}function n0n(e,t,n,r,i){var s,o,a,l;let u={kind:"message",proto:e,deprecated:(o=(s=e.options)===null||s===void 0?void 0:s.deprecated)!==null&&o!==void 0?o:!1,file:t,parent:n,name:e.name,typeName:gIe(e,n,t),fields:[],field:{},oneofs:[],members:[],nestedEnums:[],nestedMessages:[],nestedExtensions:[],toString(){return`message ${this.typeName}`}};((a=e.options)===null||a===void 0?void 0:a.mapEntry)===!0?i.add(u):(((l=n?.nestedMessages)!==null&&l!==void 0?l:t.messages).push(u),r.add(u));for(let c of e.enumType)t0n(c,t,u,r);for(let c of e.nestedType)n0n(c,t,u,r,i)}function ZXi(e,t,n){var r,i;let s={kind:"service",proto:e,deprecated:(i=(r=e.options)===null||r===void 0?void 0:r.deprecated)!==null&&i!==void 0?i:!1,file:t,name:e.name,typeName:gIe(e,void 0,t),methods:[],method:{},toString(){return`service ${this.typeName}`}};t.services.push(s),n.add(s);for(let o of e.method){let a=jXi(o,s,n);s.methods.push(a),s.method[a.localName]=a}}function jXi(e,t,n){var r,i,s,o;let a;e.clientStreaming&&e.serverStreaming?a="bidi_streaming":e.clientStreaming?a="client_streaming":e.serverStreaming?a="server_streaming":a="unary";let l=n.getMessage(MN(e.inputType)),u=n.getMessage(MN(e.outputType));xv(l,`invalid MethodDescriptorProto: input_type ${e.inputType} not found`),xv(u,`invalid MethodDescriptorProto: output_type ${e.inputType} not found`);let c=e.name;return{kind:"rpc",proto:e,deprecated:(i=(r=e.options)===null||r===void 0?void 0:r.deprecated)!==null&&i!==void 0?i:!1,parent:t,name:c,localName:cH(c.length?cH(c[0].toLowerCase()+c.substring(1)):c),methodKind:a,input:l,output:u,idempotency:(o=(s=e.options)===null||s===void 0?void 0:s.idempotencyLevel)!==null&&o!==void 0?o:WXi,toString(){return`rpc ${t.typeName}.${c}`}}}function zXi(e,t){return{kind:"oneof",proto:e,deprecated:!1,parent:t,fields:[],name:e.name,localName:cH(FP(e.name)),toString(){return`oneof ${t.typeName}.${this.name}`}}}function hct(e,t,n,r,i){var s,o,a;let l=i===void 0,u={kind:"field",proto:e,deprecated:(o=(s=e.options)===null||s===void 0?void 0:s.deprecated)!==null&&o!==void 0?o:!1,name:e.name,number:e.number,scalar:void 0,message:void 0,enum:void 0,presence:tKi(e,r,l,t),listKind:void 0,mapKind:void 0,mapKey:void 0,delimitedEncoding:void 0,packed:void 0,longAsString:!1,getDefaultValue:void 0};if(l){let m=t.kind=="file"?t:t.file,f=t.kind=="file"?void 0:t,h=gIe(e,f,m);u.kind="extension",u.file=m,u.parent=f,u.oneof=void 0,u.typeName=h,u.jsonName=`[${h}]`,u.toString=()=>`extension ${h}`;let g=n.getMessage(MN(e.extendee));xv(g,`invalid FieldDescriptorProto: extendee ${e.extendee} not found`),u.extendee=g}else{let m=t;xv(m.kind=="message"),u.parent=m,u.oneof=r,u.localName=r?FP(e.name):cH(FP(e.name)),u.jsonName=e.jsonName,u.toString=()=>`field ${m.typeName}.${e.name}`}let c=e.label,d=e.type,p=(a=e.options)===null||a===void 0?void 0:a.jstype;if(c===gct){let m=d==boe?i?.get(MN(e.typeName)):void 0;if(m){u.fieldKind="map";let{key:f,value:h}=rKi(m);return u.mapKey=f.scalar,u.mapKind=h.fieldKind,u.message=h.message,u.delimitedEncoding=!1,u.enum=h.enum,u.scalar=h.scalar,u}switch(u.fieldKind="list",d){case boe:case yoe:u.listKind="message",u.message=n.getMessage(MN(e.typeName)),xv(u.message),u.delimitedEncoding=Jyn(e,t);break;case zyn:u.listKind="enum",u.enum=n.getEnum(MN(e.typeName)),xv(u.enum);break;default:u.listKind="scalar",u.scalar=d,u.longAsString=p==Xyn;break}return u.packed=nKi(e,t),u}switch(d){case boe:case yoe:u.fieldKind="message",u.message=n.getMessage(MN(e.typeName)),xv(u.message,`invalid FieldDescriptorProto: type_name ${e.typeName} not found`),u.delimitedEncoding=Jyn(e,t),u.getDefaultValue=()=>{};break;case zyn:{let m=n.getEnum(MN(e.typeName));xv(m!==void 0,`invalid FieldDescriptorProto: type_name ${e.typeName} not found`),u.fieldKind="enum",u.enum=n.getEnum(MN(e.typeName)),u.getDefaultValue=()=>y3(e,"defaultValue")?Hyn(m,e.defaultValue):void 0;break}default:{u.fieldKind="scalar",u.scalar=d,u.longAsString=p==Xyn,u.getDefaultValue=()=>y3(e,"defaultValue")?Zyn(d,e.defaultValue):void 0;break}}return u}function XXi(e){switch(e.syntax){case"":case"proto2":return LXi;case"proto3":return FXi;case"editions":if(e.edition in e0n)return e.edition;throw new Error(`${e.name}: unsupported edition`);default:throw new Error(`${e.name}: unsupported syntax "${e.syntax}"`)}}function KXi(e,t){return e.dependency.map(n=>{let r=t.getFile(n);if(!r)throw new Error(`Cannot find ${n}, imported by ${e.name}`);return r})}function qXi(e,t){let n=JXi(e)+"_";for(let r of t){if(!r.name.toLowerCase().startsWith(n))return;let i=r.name.substring(n.length);if(i.length==0||/^\d/.test(i))return}return n}function JXi(e){return(e.substring(0,1)+e.substring(1).replace(/[A-Z]/g,t=>"_"+t)).toLowerCase()}function gIe(e,t,n){let r;return t?r=`${t.typeName}.${e.name}`:n.proto.package.length>0?r=`${n.proto.package}.${e.name}`:r=`${e.name}`,r}function MN(e){return e.startsWith(".")?e.substring(1):e}function eKi(e,t){if(!y3(e,"oneofIndex")||e.proto3Optional)return;let n=t[e.oneofIndex];return xv(n,`invalid FieldDescriptorProto: oneof #${e.oneofIndex} for field #${e.number} not found`),n}function tKi(e,t,n,r){if(e.label==GXi)return $Xi;if(e.label==gct)return Kyn;if(t||e.proto3Optional||n)return pct;let i=uH("fieldPresence",{proto:e,parent:r});return i==Kyn&&(e.type==boe||e.type==yoe)?pct:i}function nKi(e,t){if(e.label!=gct)return!1;switch(e.type){case UXi:case VXi:case yoe:case boe:return!1}let n=e.options;return n&&y3(n,"packed")?n.packed:QXi==uH("repeatedFieldEncoding",{proto:e,parent:t})}function rKi(e){let t=e.fields.find(r=>r.number===1),n=e.fields.find(r=>r.number===2);return xv(t&&t.fieldKind=="scalar"&&t.scalar!=Wt.BYTES&&t.scalar!=Wt.FLOAT&&t.scalar!=Wt.DOUBLE&&n&&n.fieldKind!="list"&&n.fieldKind!="map"),{key:t,value:n}}function iKi(e){var t;return HXi==uH("enumType",{proto:e.proto,parent:(t=e.parent)!==null&&t!==void 0?t:e.file})}function Jyn(e,t){return e.type==yoe?!0:YXi==uH("messageEncoding",{proto:e,parent:t})}function uH(e,t){var n,r;let i=(n=t.proto.options)===null||n===void 0?void 0:n.features;if(i){let s=i[e];if(s!=0)return s}if("kind"in t){if(t.kind=="message")return uH(e,(r=t.parent)!==null&&r!==void 0?r:t.file);let s=e0n[t.edition];if(!s)throw new Error(`feature default for edition ${t.edition} not found`);return s[e]}return uH(e,t.parent)}function xv(e,t){if(!e)throw new Error(t)}var LXi,FXi,UXi,yoe,boe,VXi,zyn,gct,GXi,Xyn,WXi,pct,Kyn,$Xi,QXi,YXi,HXi,e0n,bIe=C(()=>{j_();dct();jyn();nH();mIe();LXi=998,FXi=999,UXi=9,yoe=10,boe=11,VXi=12,zyn=14,gct=3,GXi=2,Xyn=1,WXi=0,pct=1,Kyn=2,$Xi=3,QXi=1,YXi=2,HXi=1,e0n={998:{fieldPresence:1,enumType:2,repeatedFieldEncoding:2,utf8Validation:3,messageEncoding:1,jsonFormat:2,enforceNamingStyle:2,defaultSymbolVisibility:1},999:{fieldPresence:2,enumType:1,repeatedFieldEncoding:1,utf8Validation:2,messageEncoding:1,jsonFormat:1,enforceNamingStyle:2,defaultSymbolVisibility:1},1e3:{fieldPresence:1,enumType:1,repeatedFieldEncoding:1,utf8Validation:2,messageEncoding:1,jsonFormat:1,enforceNamingStyle:2,defaultSymbolVisibility:1}}});function r0n(e){let t=sKi(e);return t.messageType.forEach(goe),hIe(t,()=>{}).getFile(t.name)}function sKi(e){return Object.assign(Object.create({syntax:"",edition:0}),Object.assign(Object.assign({$typeName:"google.protobuf.FileDescriptorProto",dependency:[],publicDependency:[],weakDependency:[],optionDependency:[],service:[],extension:[]},e),{messageType:e.messageType.map(i0n),enumType:e.enumType.map(s0n)}))}function i0n(e){var t,n,r,i,s,o,a,l;return Object.assign(Object.create({visibility:0}),{$typeName:"google.protobuf.DescriptorProto",name:e.name,field:(n=(t=e.field)===null||t===void 0?void 0:t.map(oKi))!==null&&n!==void 0?n:[],extension:[],nestedType:(i=(r=e.nestedType)===null||r===void 0?void 0:r.map(i0n))!==null&&i!==void 0?i:[],enumType:(o=(s=e.enumType)===null||s===void 0?void 0:s.map(s0n))!==null&&o!==void 0?o:[],extensionRange:(l=(a=e.extensionRange)===null||a===void 0?void 0:a.map(c=>Object.assign({$typeName:"google.protobuf.DescriptorProto.ExtensionRange"},c)))!==null&&l!==void 0?l:[],oneofDecl:[],reservedRange:[],reservedName:[]})}function oKi(e){return Object.assign(Object.create({label:1,typeName:"",extendee:"",defaultValue:"",oneofIndex:0,jsonName:"",proto3Optional:!1}),Object.assign(Object.assign({$typeName:"google.protobuf.FieldDescriptorProto"},e),{options:e.options?aKi(e.options):void 0}))}function aKi(e){var t,n,r;return Object.assign(Object.create({ctype:0,packed:!1,jstype:0,lazy:!1,unverifiedLazy:!1,deprecated:!1,weak:!1,debugRedact:!1,retention:0}),Object.assign(Object.assign({$typeName:"google.protobuf.FieldOptions"},e),{targets:(t=e.targets)!==null&&t!==void 0?t:[],editionDefaults:(r=(n=e.editionDefaults)===null||n===void 0?void 0:n.map(s=>Object.assign({$typeName:"google.protobuf.FieldOptions.EditionDefault"},s)))!==null&&r!==void 0?r:[],uninterpretedOption:[]}))}function s0n(e){return Object.assign(Object.create({visibility:0}),{$typeName:"google.protobuf.EnumDescriptorProto",name:e.name,reservedName:[],reservedRange:[],value:e.value.map(n=>Object.assign({$typeName:"google.protobuf.EnumValueDescriptorProto"},n))})}var bct=C(()=>{uct();bIe()});function oo(e,t,...n){return n.reduce((r,i)=>r.nestedMessages[i],e.messages[t])}var Aoe=C(()=>{});var o0n=C(()=>{});var PN,T0n,a0n,l0n,c0n,u0n,d0n,p0n,m0n,f0n,yIe,h0n,g0n,b0n,y0n,A0n,E0n,_0n,S0n,v0n,x0n,C0n,yct=C(()=>{bct();Aoe();PN=r0n({name:"google/protobuf/descriptor.proto",package:"google.protobuf",messageType:[{name:"FileDescriptorSet",field:[{name:"file",number:1,type:11,label:3,typeName:".google.protobuf.FileDescriptorProto"}],extensionRange:[{start:536e6,end:536000001}]},{name:"FileDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"package",number:2,type:9,label:1},{name:"dependency",number:3,type:9,label:3},{name:"public_dependency",number:10,type:5,label:3},{name:"weak_dependency",number:11,type:5,label:3},{name:"option_dependency",number:15,type:9,label:3},{name:"message_type",number:4,type:11,label:3,typeName:".google.protobuf.DescriptorProto"},{name:"enum_type",number:5,type:11,label:3,typeName:".google.protobuf.EnumDescriptorProto"},{name:"service",number:6,type:11,label:3,typeName:".google.protobuf.ServiceDescriptorProto"},{name:"extension",number:7,type:11,label:3,typeName:".google.protobuf.FieldDescriptorProto"},{name:"options",number:8,type:11,label:1,typeName:".google.protobuf.FileOptions"},{name:"source_code_info",number:9,type:11,label:1,typeName:".google.protobuf.SourceCodeInfo"},{name:"syntax",number:12,type:9,label:1},{name:"edition",number:14,type:14,label:1,typeName:".google.protobuf.Edition"}]},{name:"DescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"field",number:2,type:11,label:3,typeName:".google.protobuf.FieldDescriptorProto"},{name:"extension",number:6,type:11,label:3,typeName:".google.protobuf.FieldDescriptorProto"},{name:"nested_type",number:3,type:11,label:3,typeName:".google.protobuf.DescriptorProto"},{name:"enum_type",number:4,type:11,label:3,typeName:".google.protobuf.EnumDescriptorProto"},{name:"extension_range",number:5,type:11,label:3,typeName:".google.protobuf.DescriptorProto.ExtensionRange"},{name:"oneof_decl",number:8,type:11,label:3,typeName:".google.protobuf.OneofDescriptorProto"},{name:"options",number:7,type:11,label:1,typeName:".google.protobuf.MessageOptions"},{name:"reserved_range",number:9,type:11,label:3,typeName:".google.protobuf.DescriptorProto.ReservedRange"},{name:"reserved_name",number:10,type:9,label:3},{name:"visibility",number:11,type:14,label:1,typeName:".google.protobuf.SymbolVisibility"}],nestedType:[{name:"ExtensionRange",field:[{name:"start",number:1,type:5,label:1},{name:"end",number:2,type:5,label:1},{name:"options",number:3,type:11,label:1,typeName:".google.protobuf.ExtensionRangeOptions"}]},{name:"ReservedRange",field:[{name:"start",number:1,type:5,label:1},{name:"end",number:2,type:5,label:1}]}]},{name:"ExtensionRangeOptions",field:[{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"},{name:"declaration",number:2,type:11,label:3,typeName:".google.protobuf.ExtensionRangeOptions.Declaration",options:{retention:2}},{name:"features",number:50,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"verification",number:3,type:14,label:1,typeName:".google.protobuf.ExtensionRangeOptions.VerificationState",defaultValue:"UNVERIFIED",options:{retention:2}}],nestedType:[{name:"Declaration",field:[{name:"number",number:1,type:5,label:1},{name:"full_name",number:2,type:9,label:1},{name:"type",number:3,type:9,label:1},{name:"reserved",number:5,type:8,label:1},{name:"repeated",number:6,type:8,label:1}]}],enumType:[{name:"VerificationState",value:[{name:"DECLARATION",number:0},{name:"UNVERIFIED",number:1}]}],extensionRange:[{start:1e3,end:536870912}]},{name:"FieldDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"number",number:3,type:5,label:1},{name:"label",number:4,type:14,label:1,typeName:".google.protobuf.FieldDescriptorProto.Label"},{name:"type",number:5,type:14,label:1,typeName:".google.protobuf.FieldDescriptorProto.Type"},{name:"type_name",number:6,type:9,label:1},{name:"extendee",number:2,type:9,label:1},{name:"default_value",number:7,type:9,label:1},{name:"oneof_index",number:9,type:5,label:1},{name:"json_name",number:10,type:9,label:1},{name:"options",number:8,type:11,label:1,typeName:".google.protobuf.FieldOptions"},{name:"proto3_optional",number:17,type:8,label:1}],enumType:[{name:"Type",value:[{name:"TYPE_DOUBLE",number:1},{name:"TYPE_FLOAT",number:2},{name:"TYPE_INT64",number:3},{name:"TYPE_UINT64",number:4},{name:"TYPE_INT32",number:5},{name:"TYPE_FIXED64",number:6},{name:"TYPE_FIXED32",number:7},{name:"TYPE_BOOL",number:8},{name:"TYPE_STRING",number:9},{name:"TYPE_GROUP",number:10},{name:"TYPE_MESSAGE",number:11},{name:"TYPE_BYTES",number:12},{name:"TYPE_UINT32",number:13},{name:"TYPE_ENUM",number:14},{name:"TYPE_SFIXED32",number:15},{name:"TYPE_SFIXED64",number:16},{name:"TYPE_SINT32",number:17},{name:"TYPE_SINT64",number:18}]},{name:"Label",value:[{name:"LABEL_OPTIONAL",number:1},{name:"LABEL_REPEATED",number:3},{name:"LABEL_REQUIRED",number:2}]}]},{name:"OneofDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"options",number:2,type:11,label:1,typeName:".google.protobuf.OneofOptions"}]},{name:"EnumDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"value",number:2,type:11,label:3,typeName:".google.protobuf.EnumValueDescriptorProto"},{name:"options",number:3,type:11,label:1,typeName:".google.protobuf.EnumOptions"},{name:"reserved_range",number:4,type:11,label:3,typeName:".google.protobuf.EnumDescriptorProto.EnumReservedRange"},{name:"reserved_name",number:5,type:9,label:3},{name:"visibility",number:6,type:14,label:1,typeName:".google.protobuf.SymbolVisibility"}],nestedType:[{name:"EnumReservedRange",field:[{name:"start",number:1,type:5,label:1},{name:"end",number:2,type:5,label:1}]}]},{name:"EnumValueDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"number",number:2,type:5,label:1},{name:"options",number:3,type:11,label:1,typeName:".google.protobuf.EnumValueOptions"}]},{name:"ServiceDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"method",number:2,type:11,label:3,typeName:".google.protobuf.MethodDescriptorProto"},{name:"options",number:3,type:11,label:1,typeName:".google.protobuf.ServiceOptions"}]},{name:"MethodDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"input_type",number:2,type:9,label:1},{name:"output_type",number:3,type:9,label:1},{name:"options",number:4,type:11,label:1,typeName:".google.protobuf.MethodOptions"},{name:"client_streaming",number:5,type:8,label:1,defaultValue:"false"},{name:"server_streaming",number:6,type:8,label:1,defaultValue:"false"}]},{name:"FileOptions",field:[{name:"java_package",number:1,type:9,label:1},{name:"java_outer_classname",number:8,type:9,label:1},{name:"java_multiple_files",number:10,type:8,label:1,defaultValue:"false"},{name:"java_generate_equals_and_hash",number:20,type:8,label:1,options:{deprecated:!0}},{name:"java_string_check_utf8",number:27,type:8,label:1,defaultValue:"false"},{name:"optimize_for",number:9,type:14,label:1,typeName:".google.protobuf.FileOptions.OptimizeMode",defaultValue:"SPEED"},{name:"go_package",number:11,type:9,label:1},{name:"cc_generic_services",number:16,type:8,label:1,defaultValue:"false"},{name:"java_generic_services",number:17,type:8,label:1,defaultValue:"false"},{name:"py_generic_services",number:18,type:8,label:1,defaultValue:"false"},{name:"deprecated",number:23,type:8,label:1,defaultValue:"false"},{name:"cc_enable_arenas",number:31,type:8,label:1,defaultValue:"true"},{name:"objc_class_prefix",number:36,type:9,label:1},{name:"csharp_namespace",number:37,type:9,label:1},{name:"swift_prefix",number:39,type:9,label:1},{name:"php_class_prefix",number:40,type:9,label:1},{name:"php_namespace",number:41,type:9,label:1},{name:"php_metadata_namespace",number:44,type:9,label:1},{name:"ruby_package",number:45,type:9,label:1},{name:"features",number:50,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],enumType:[{name:"OptimizeMode",value:[{name:"SPEED",number:1},{name:"CODE_SIZE",number:2},{name:"LITE_RUNTIME",number:3}]}],extensionRange:[{start:1e3,end:536870912}]},{name:"MessageOptions",field:[{name:"message_set_wire_format",number:1,type:8,label:1,defaultValue:"false"},{name:"no_standard_descriptor_accessor",number:2,type:8,label:1,defaultValue:"false"},{name:"deprecated",number:3,type:8,label:1,defaultValue:"false"},{name:"map_entry",number:7,type:8,label:1},{name:"deprecated_legacy_json_field_conflicts",number:11,type:8,label:1,options:{deprecated:!0}},{name:"features",number:12,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],extensionRange:[{start:1e3,end:536870912}]},{name:"FieldOptions",field:[{name:"ctype",number:1,type:14,label:1,typeName:".google.protobuf.FieldOptions.CType",defaultValue:"STRING"},{name:"packed",number:2,type:8,label:1},{name:"jstype",number:6,type:14,label:1,typeName:".google.protobuf.FieldOptions.JSType",defaultValue:"JS_NORMAL"},{name:"lazy",number:5,type:8,label:1,defaultValue:"false"},{name:"unverified_lazy",number:15,type:8,label:1,defaultValue:"false"},{name:"deprecated",number:3,type:8,label:1,defaultValue:"false"},{name:"weak",number:10,type:8,label:1,defaultValue:"false"},{name:"debug_redact",number:16,type:8,label:1,defaultValue:"false"},{name:"retention",number:17,type:14,label:1,typeName:".google.protobuf.FieldOptions.OptionRetention"},{name:"targets",number:19,type:14,label:3,typeName:".google.protobuf.FieldOptions.OptionTargetType"},{name:"edition_defaults",number:20,type:11,label:3,typeName:".google.protobuf.FieldOptions.EditionDefault"},{name:"features",number:21,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"feature_support",number:22,type:11,label:1,typeName:".google.protobuf.FieldOptions.FeatureSupport"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],nestedType:[{name:"EditionDefault",field:[{name:"edition",number:3,type:14,label:1,typeName:".google.protobuf.Edition"},{name:"value",number:2,type:9,label:1}]},{name:"FeatureSupport",field:[{name:"edition_introduced",number:1,type:14,label:1,typeName:".google.protobuf.Edition"},{name:"edition_deprecated",number:2,type:14,label:1,typeName:".google.protobuf.Edition"},{name:"deprecation_warning",number:3,type:9,label:1},{name:"edition_removed",number:4,type:14,label:1,typeName:".google.protobuf.Edition"}]}],enumType:[{name:"CType",value:[{name:"STRING",number:0},{name:"CORD",number:1},{name:"STRING_PIECE",number:2}]},{name:"JSType",value:[{name:"JS_NORMAL",number:0},{name:"JS_STRING",number:1},{name:"JS_NUMBER",number:2}]},{name:"OptionRetention",value:[{name:"RETENTION_UNKNOWN",number:0},{name:"RETENTION_RUNTIME",number:1},{name:"RETENTION_SOURCE",number:2}]},{name:"OptionTargetType",value:[{name:"TARGET_TYPE_UNKNOWN",number:0},{name:"TARGET_TYPE_FILE",number:1},{name:"TARGET_TYPE_EXTENSION_RANGE",number:2},{name:"TARGET_TYPE_MESSAGE",number:3},{name:"TARGET_TYPE_FIELD",number:4},{name:"TARGET_TYPE_ONEOF",number:5},{name:"TARGET_TYPE_ENUM",number:6},{name:"TARGET_TYPE_ENUM_ENTRY",number:7},{name:"TARGET_TYPE_SERVICE",number:8},{name:"TARGET_TYPE_METHOD",number:9}]}],extensionRange:[{start:1e3,end:536870912}]},{name:"OneofOptions",field:[{name:"features",number:1,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],extensionRange:[{start:1e3,end:536870912}]},{name:"EnumOptions",field:[{name:"allow_alias",number:2,type:8,label:1},{name:"deprecated",number:3,type:8,label:1,defaultValue:"false"},{name:"deprecated_legacy_json_field_conflicts",number:6,type:8,label:1,options:{deprecated:!0}},{name:"features",number:7,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],extensionRange:[{start:1e3,end:536870912}]},{name:"EnumValueOptions",field:[{name:"deprecated",number:1,type:8,label:1,defaultValue:"false"},{name:"features",number:2,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"debug_redact",number:3,type:8,label:1,defaultValue:"false"},{name:"feature_support",number:4,type:11,label:1,typeName:".google.protobuf.FieldOptions.FeatureSupport"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],extensionRange:[{start:1e3,end:536870912}]},{name:"ServiceOptions",field:[{name:"features",number:34,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"deprecated",number:33,type:8,label:1,defaultValue:"false"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],extensionRange:[{start:1e3,end:536870912}]},{name:"MethodOptions",field:[{name:"deprecated",number:33,type:8,label:1,defaultValue:"false"},{name:"idempotency_level",number:34,type:14,label:1,typeName:".google.protobuf.MethodOptions.IdempotencyLevel",defaultValue:"IDEMPOTENCY_UNKNOWN"},{name:"features",number:35,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],enumType:[{name:"IdempotencyLevel",value:[{name:"IDEMPOTENCY_UNKNOWN",number:0},{name:"NO_SIDE_EFFECTS",number:1},{name:"IDEMPOTENT",number:2}]}],extensionRange:[{start:1e3,end:536870912}]},{name:"UninterpretedOption",field:[{name:"name",number:2,type:11,label:3,typeName:".google.protobuf.UninterpretedOption.NamePart"},{name:"identifier_value",number:3,type:9,label:1},{name:"positive_int_value",number:4,type:4,label:1},{name:"negative_int_value",number:5,type:3,label:1},{name:"double_value",number:6,type:1,label:1},{name:"string_value",number:7,type:12,label:1},{name:"aggregate_value",number:8,type:9,label:1}],nestedType:[{name:"NamePart",field:[{name:"name_part",number:1,type:9,label:2},{name:"is_extension",number:2,type:8,label:2}]}]},{name:"FeatureSet",field:[{name:"field_presence",number:1,type:14,label:1,typeName:".google.protobuf.FeatureSet.FieldPresence",options:{retention:1,targets:[4,1],editionDefaults:[{value:"EXPLICIT",edition:900},{value:"IMPLICIT",edition:999},{value:"EXPLICIT",edition:1e3}]}},{name:"enum_type",number:2,type:14,label:1,typeName:".google.protobuf.FeatureSet.EnumType",options:{retention:1,targets:[6,1],editionDefaults:[{value:"CLOSED",edition:900},{value:"OPEN",edition:999}]}},{name:"repeated_field_encoding",number:3,type:14,label:1,typeName:".google.protobuf.FeatureSet.RepeatedFieldEncoding",options:{retention:1,targets:[4,1],editionDefaults:[{value:"EXPANDED",edition:900},{value:"PACKED",edition:999}]}},{name:"utf8_validation",number:4,type:14,label:1,typeName:".google.protobuf.FeatureSet.Utf8Validation",options:{retention:1,targets:[4,1],editionDefaults:[{value:"NONE",edition:900},{value:"VERIFY",edition:999}]}},{name:"message_encoding",number:5,type:14,label:1,typeName:".google.protobuf.FeatureSet.MessageEncoding",options:{retention:1,targets:[4,1],editionDefaults:[{value:"LENGTH_PREFIXED",edition:900}]}},{name:"json_format",number:6,type:14,label:1,typeName:".google.protobuf.FeatureSet.JsonFormat",options:{retention:1,targets:[3,6,1],editionDefaults:[{value:"LEGACY_BEST_EFFORT",edition:900},{value:"ALLOW",edition:999}]}},{name:"enforce_naming_style",number:7,type:14,label:1,typeName:".google.protobuf.FeatureSet.EnforceNamingStyle",options:{retention:2,targets:[1,2,3,4,5,6,7,8,9],editionDefaults:[{value:"STYLE_LEGACY",edition:900},{value:"STYLE2024",edition:1001}]}},{name:"default_symbol_visibility",number:8,type:14,label:1,typeName:".google.protobuf.FeatureSet.VisibilityFeature.DefaultSymbolVisibility",options:{retention:2,targets:[1],editionDefaults:[{value:"EXPORT_ALL",edition:900},{value:"EXPORT_TOP_LEVEL",edition:1001}]}}],nestedType:[{name:"VisibilityFeature",enumType:[{name:"DefaultSymbolVisibility",value:[{name:"DEFAULT_SYMBOL_VISIBILITY_UNKNOWN",number:0},{name:"EXPORT_ALL",number:1},{name:"EXPORT_TOP_LEVEL",number:2},{name:"LOCAL_ALL",number:3},{name:"STRICT",number:4}]}]}],enumType:[{name:"FieldPresence",value:[{name:"FIELD_PRESENCE_UNKNOWN",number:0},{name:"EXPLICIT",number:1},{name:"IMPLICIT",number:2},{name:"LEGACY_REQUIRED",number:3}]},{name:"EnumType",value:[{name:"ENUM_TYPE_UNKNOWN",number:0},{name:"OPEN",number:1},{name:"CLOSED",number:2}]},{name:"RepeatedFieldEncoding",value:[{name:"REPEATED_FIELD_ENCODING_UNKNOWN",number:0},{name:"PACKED",number:1},{name:"EXPANDED",number:2}]},{name:"Utf8Validation",value:[{name:"UTF8_VALIDATION_UNKNOWN",number:0},{name:"VERIFY",number:2},{name:"NONE",number:3}]},{name:"MessageEncoding",value:[{name:"MESSAGE_ENCODING_UNKNOWN",number:0},{name:"LENGTH_PREFIXED",number:1},{name:"DELIMITED",number:2}]},{name:"JsonFormat",value:[{name:"JSON_FORMAT_UNKNOWN",number:0},{name:"ALLOW",number:1},{name:"LEGACY_BEST_EFFORT",number:2}]},{name:"EnforceNamingStyle",value:[{name:"ENFORCE_NAMING_STYLE_UNKNOWN",number:0},{name:"STYLE2024",number:1},{name:"STYLE_LEGACY",number:2}]}],extensionRange:[{start:1e3,end:9995},{start:9995,end:1e4},{start:1e4,end:10001}]},{name:"FeatureSetDefaults",field:[{name:"defaults",number:1,type:11,label:3,typeName:".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault"},{name:"minimum_edition",number:4,type:14,label:1,typeName:".google.protobuf.Edition"},{name:"maximum_edition",number:5,type:14,label:1,typeName:".google.protobuf.Edition"}],nestedType:[{name:"FeatureSetEditionDefault",field:[{name:"edition",number:3,type:14,label:1,typeName:".google.protobuf.Edition"},{name:"overridable_features",number:4,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"fixed_features",number:5,type:11,label:1,typeName:".google.protobuf.FeatureSet"}]}]},{name:"SourceCodeInfo",field:[{name:"location",number:1,type:11,label:3,typeName:".google.protobuf.SourceCodeInfo.Location"}],nestedType:[{name:"Location",field:[{name:"path",number:1,type:5,label:3,options:{packed:!0}},{name:"span",number:2,type:5,label:3,options:{packed:!0}},{name:"leading_comments",number:3,type:9,label:1},{name:"trailing_comments",number:4,type:9,label:1},{name:"leading_detached_comments",number:6,type:9,label:3}]}],extensionRange:[{start:536e6,end:536000001}]},{name:"GeneratedCodeInfo",field:[{name:"annotation",number:1,type:11,label:3,typeName:".google.protobuf.GeneratedCodeInfo.Annotation"}],nestedType:[{name:"Annotation",field:[{name:"path",number:1,type:5,label:3,options:{packed:!0}},{name:"source_file",number:2,type:9,label:1},{name:"begin",number:3,type:5,label:1},{name:"end",number:4,type:5,label:1},{name:"semantic",number:5,type:14,label:1,typeName:".google.protobuf.GeneratedCodeInfo.Annotation.Semantic"}],enumType:[{name:"Semantic",value:[{name:"NONE",number:0},{name:"SET",number:1},{name:"ALIAS",number:2}]}]}]}],enumType:[{name:"Edition",value:[{name:"EDITION_UNKNOWN",number:0},{name:"EDITION_LEGACY",number:900},{name:"EDITION_PROTO2",number:998},{name:"EDITION_PROTO3",number:999},{name:"EDITION_2023",number:1e3},{name:"EDITION_2024",number:1001},{name:"EDITION_1_TEST_ONLY",number:1},{name:"EDITION_2_TEST_ONLY",number:2},{name:"EDITION_99997_TEST_ONLY",number:99997},{name:"EDITION_99998_TEST_ONLY",number:99998},{name:"EDITION_99999_TEST_ONLY",number:99999},{name:"EDITION_MAX",number:2147483647}]},{name:"SymbolVisibility",value:[{name:"VISIBILITY_UNSET",number:0},{name:"VISIBILITY_LOCAL",number:1},{name:"VISIBILITY_EXPORT",number:2}]}]}),T0n=oo(PN,1);(function(e){e[e.DECLARATION=0]="DECLARATION",e[e.UNVERIFIED=1]="UNVERIFIED"})(a0n||(a0n={}));(function(e){e[e.DOUBLE=1]="DOUBLE",e[e.FLOAT=2]="FLOAT",e[e.INT64=3]="INT64",e[e.UINT64=4]="UINT64",e[e.INT32=5]="INT32",e[e.FIXED64=6]="FIXED64",e[e.FIXED32=7]="FIXED32",e[e.BOOL=8]="BOOL",e[e.STRING=9]="STRING",e[e.GROUP=10]="GROUP",e[e.MESSAGE=11]="MESSAGE",e[e.BYTES=12]="BYTES",e[e.UINT32=13]="UINT32",e[e.ENUM=14]="ENUM",e[e.SFIXED32=15]="SFIXED32",e[e.SFIXED64=16]="SFIXED64",e[e.SINT32=17]="SINT32",e[e.SINT64=18]="SINT64"})(l0n||(l0n={}));(function(e){e[e.OPTIONAL=1]="OPTIONAL",e[e.REPEATED=3]="REPEATED",e[e.REQUIRED=2]="REQUIRED"})(c0n||(c0n={}));(function(e){e[e.SPEED=1]="SPEED",e[e.CODE_SIZE=2]="CODE_SIZE",e[e.LITE_RUNTIME=3]="LITE_RUNTIME"})(u0n||(u0n={}));(function(e){e[e.STRING=0]="STRING",e[e.CORD=1]="CORD",e[e.STRING_PIECE=2]="STRING_PIECE"})(d0n||(d0n={}));(function(e){e[e.JS_NORMAL=0]="JS_NORMAL",e[e.JS_STRING=1]="JS_STRING",e[e.JS_NUMBER=2]="JS_NUMBER"})(p0n||(p0n={}));(function(e){e[e.RETENTION_UNKNOWN=0]="RETENTION_UNKNOWN",e[e.RETENTION_RUNTIME=1]="RETENTION_RUNTIME",e[e.RETENTION_SOURCE=2]="RETENTION_SOURCE"})(m0n||(m0n={}));(function(e){e[e.TARGET_TYPE_UNKNOWN=0]="TARGET_TYPE_UNKNOWN",e[e.TARGET_TYPE_FILE=1]="TARGET_TYPE_FILE",e[e.TARGET_TYPE_EXTENSION_RANGE=2]="TARGET_TYPE_EXTENSION_RANGE",e[e.TARGET_TYPE_MESSAGE=3]="TARGET_TYPE_MESSAGE",e[e.TARGET_TYPE_FIELD=4]="TARGET_TYPE_FIELD",e[e.TARGET_TYPE_ONEOF=5]="TARGET_TYPE_ONEOF",e[e.TARGET_TYPE_ENUM=6]="TARGET_TYPE_ENUM",e[e.TARGET_TYPE_ENUM_ENTRY=7]="TARGET_TYPE_ENUM_ENTRY",e[e.TARGET_TYPE_SERVICE=8]="TARGET_TYPE_SERVICE",e[e.TARGET_TYPE_METHOD=9]="TARGET_TYPE_METHOD"})(f0n||(f0n={}));(function(e){e[e.IDEMPOTENCY_UNKNOWN=0]="IDEMPOTENCY_UNKNOWN",e[e.NO_SIDE_EFFECTS=1]="NO_SIDE_EFFECTS",e[e.IDEMPOTENT=2]="IDEMPOTENT"})(yIe||(yIe={}));(function(e){e[e.DEFAULT_SYMBOL_VISIBILITY_UNKNOWN=0]="DEFAULT_SYMBOL_VISIBILITY_UNKNOWN",e[e.EXPORT_ALL=1]="EXPORT_ALL",e[e.EXPORT_TOP_LEVEL=2]="EXPORT_TOP_LEVEL",e[e.LOCAL_ALL=3]="LOCAL_ALL",e[e.STRICT=4]="STRICT"})(h0n||(h0n={}));(function(e){e[e.FIELD_PRESENCE_UNKNOWN=0]="FIELD_PRESENCE_UNKNOWN",e[e.EXPLICIT=1]="EXPLICIT",e[e.IMPLICIT=2]="IMPLICIT",e[e.LEGACY_REQUIRED=3]="LEGACY_REQUIRED"})(g0n||(g0n={}));(function(e){e[e.ENUM_TYPE_UNKNOWN=0]="ENUM_TYPE_UNKNOWN",e[e.OPEN=1]="OPEN",e[e.CLOSED=2]="CLOSED"})(b0n||(b0n={}));(function(e){e[e.REPEATED_FIELD_ENCODING_UNKNOWN=0]="REPEATED_FIELD_ENCODING_UNKNOWN",e[e.PACKED=1]="PACKED",e[e.EXPANDED=2]="EXPANDED"})(y0n||(y0n={}));(function(e){e[e.UTF8_VALIDATION_UNKNOWN=0]="UTF8_VALIDATION_UNKNOWN",e[e.VERIFY=2]="VERIFY",e[e.NONE=3]="NONE"})(A0n||(A0n={}));(function(e){e[e.MESSAGE_ENCODING_UNKNOWN=0]="MESSAGE_ENCODING_UNKNOWN",e[e.LENGTH_PREFIXED=1]="LENGTH_PREFIXED",e[e.DELIMITED=2]="DELIMITED"})(E0n||(E0n={}));(function(e){e[e.JSON_FORMAT_UNKNOWN=0]="JSON_FORMAT_UNKNOWN",e[e.ALLOW=1]="ALLOW",e[e.LEGACY_BEST_EFFORT=2]="LEGACY_BEST_EFFORT"})(_0n||(_0n={}));(function(e){e[e.ENFORCE_NAMING_STYLE_UNKNOWN=0]="ENFORCE_NAMING_STYLE_UNKNOWN",e[e.STYLE2024=1]="STYLE2024",e[e.STYLE_LEGACY=2]="STYLE_LEGACY"})(S0n||(S0n={}));(function(e){e[e.NONE=0]="NONE",e[e.SET=1]="SET",e[e.ALIAS=2]="ALIAS"})(v0n||(v0n={}));(function(e){e[e.EDITION_UNKNOWN=0]="EDITION_UNKNOWN",e[e.EDITION_LEGACY=900]="EDITION_LEGACY",e[e.EDITION_PROTO2=998]="EDITION_PROTO2",e[e.EDITION_PROTO3=999]="EDITION_PROTO3",e[e.EDITION_2023=1e3]="EDITION_2023",e[e.EDITION_2024=1001]="EDITION_2024",e[e.EDITION_1_TEST_ONLY=1]="EDITION_1_TEST_ONLY",e[e.EDITION_2_TEST_ONLY=2]="EDITION_2_TEST_ONLY",e[e.EDITION_99997_TEST_ONLY=99997]="EDITION_99997_TEST_ONLY",e[e.EDITION_99998_TEST_ONLY=99998]="EDITION_99998_TEST_ONLY",e[e.EDITION_99999_TEST_ONLY=99999]="EDITION_99999_TEST_ONLY",e[e.EDITION_MAX=2147483647]="EDITION_MAX"})(x0n||(x0n={}));(function(e){e[e.VISIBILITY_UNSET=0]="VISIBILITY_UNSET",e[e.VISIBILITY_LOCAL=1]="VISIBILITY_LOCAL",e[e.VISIBILITY_EXPORT=2]="VISIBILITY_EXPORT"})(C0n||(C0n={}))});function lKi(e){return e?Object.assign(Object.assign({},I0n),e):I0n}function DN(e,t,n){let r=Yf(e,void 0,!1);return w0n(r,new A3(t),lKi(n),!1,t.byteLength),r.message}function w0n(e,t,n,r,i){var s;let o=r?t.len:t.pos+i,a,l,u=(s=e.getUnknown())!==null&&s!==void 0?s:[];for(;t.pos<o&&([a,l]=t.tag(),!(r&&l==zu.EndGroup));){let c=e.findNumber(a);if(!c){let d=t.skip(l,a);n.readUnknownFields&&u.push({no:a,wireType:l,data:d});continue}Act(e,t,c,l,n)}if(r&&(l!=zu.EndGroup||a!==i))throw new Error("invalid end group tag");u.length>0&&e.setUnknown(u)}function Act(e,t,n,r,i){var s;switch(n.fieldKind){case"scalar":e.set(n,dH(t,n.scalar));break;case"enum":let o=dH(t,Wt.INT32);if(n.enum.open)e.set(n,o);else if(n.enum.values.some(l=>l.number===o))e.set(n,o);else if(i.readUnknownFields){let l=new LP().int32(o).finish(),u=(s=e.getUnknown())!==null&&s!==void 0?s:[];u.push({no:n.number,wireType:r,data:l}),e.setUnknown(u)}break;case"message":e.set(n,Ect(t,i,n,e.get(n)));break;case"list":uKi(t,r,e.get(n),i);break;case"map":cKi(t,e.get(n),i);break}}function cKi(e,t,n){let r=t.field(),i,s,o=e.pos+e.uint32();for(;e.pos<o;){let[a]=e.tag();switch(a){case 1:i=dH(e,r.mapKey);break;case 2:switch(r.mapKind){case"scalar":s=dH(e,r.scalar);break;case"enum":s=e.int32();break;case"message":s=Ect(e,n,r);break}break}}if(i===void 0&&(i=yA(r.mapKey,!1)),s===void 0)switch(r.mapKind){case"scalar":s=yA(r.scalar,!1);break;case"enum":s=r.enum.values[0].number;break;case"message":s=Yf(r.message,void 0,!1);break}t.set(i,s)}function uKi(e,t,n,r){var i;let s=n.field();if(s.listKind==="message"){n.add(Ect(e,r,s));return}let o=(i=s.scalar)!==null&&i!==void 0?i:Wt.INT32;if(!(t==zu.LengthDelimited&&o!=Wt.STRING&&o!=Wt.BYTES)){n.add(dH(e,o));return}let l=e.uint32()+e.pos;for(;e.pos<l;)n.add(dH(e,o))}function Ect(e,t,n,r){let i=n.delimitedEncoding,s=r??Yf(n.message,void 0,!1);return w0n(s,e,t,i,i?n.number:e.uint32()),s}function dH(e,t){switch(t){case Wt.STRING:return e.string();case Wt.BOOL:return e.bool();case Wt.DOUBLE:return e.double();case Wt.FLOAT:return e.float();case Wt.INT32:return e.int32();case Wt.INT64:return e.int64();case Wt.UINT64:return e.uint64();case Wt.FIXED64:return e.fixed64();case Wt.BYTES:return e.bytes();case Wt.FIXED32:return e.fixed32();case Wt.SFIXED32:return e.sfixed32();case Wt.SFIXED64:return e.sfixed64();case Wt.SINT64:return e.sint64();case Wt.UINT32:return e.uint32();case Wt.SINT32:return e.sint32()}}var I0n,Eoe=C(()=>{j_();b3();oH();sH();I0n={readUnknownFields:!0}});function Zr(e,t){var n;let r=DN(T0n,lH(e));return r.messageType.forEach(goe),r.dependency=(n=t?.map(s=>s.proto.name))!==null&&n!==void 0?n:[],hIe(r,s=>t?.find(o=>o.proto.name===s)).getFile(r.name)}var pH=C(()=>{pIe();yct();bIe();uct();Eoe()});var ha,R0n=C(()=>{pH();ha=Zr("Ch9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1wLnByb3RvEg9nb29nbGUucHJvdG9idWYiKwoJVGltZXN0YW1wEg8KB3NlY29uZHMYASABKAMSDQoFbmFub3MYAiABKAVChQEKE2NvbS5nb29nbGUucHJvdG9idWZCDlRpbWVzdGFtcFByb3RvUAFaMmdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL3RpbWVzdGFtcHBi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzYgZwcm90bzM")});var N0n=C(()=>{});var E3,k0n,_ct=C(()=>{pH();Aoe();E3=Zr("Chlnb29nbGUvcHJvdG9idWYvYW55LnByb3RvEg9nb29nbGUucHJvdG9idWYiJgoDQW55EhAKCHR5cGVfdXJsGAEgASgJEg0KBXZhbHVlGAIgASgMQnYKE2NvbS5nb29nbGUucHJvdG9idWZCCEFueVByb3RvUAFaLGdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL2FueXBiogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzYgZwcm90bzM"),k0n=oo(E3,0)});function pKi(e){return e?Object.assign(Object.assign({},O0n),e):O0n}function _oe(e,t,n){return AIe(new LP,pKi(n),Yf(e,t)).finish()}function AIe(e,t,n){var r;for(let i of n.sortedFields){if(!n.isSet(i)){if(i.presence==dKi)throw new Error(`cannot encode ${i} to binary: required field not set`);continue}Sct(e,t,n,i)}if(t.writeUnknownFields)for(let{no:i,wireType:s,data:o}of(r=n.getUnknown())!==null&&r!==void 0?r:[])e.tag(i,s).raw(o);return e}function Sct(e,t,n,r){var i;switch(r.fieldKind){case"scalar":case"enum":EIe(e,n.desc.typeName,r.name,(i=r.scalar)!==null&&i!==void 0?i:Wt.INT32,r.number,n.get(r));break;case"list":mKi(e,t,r,n.get(r));break;case"message":M0n(e,t,r,n.get(r));break;case"map":for(let[s,o]of n.get(r))fKi(e,t,r,s,o);break}}function EIe(e,t,n,r,i,s){P0n(e.tag(i,hKi(r)),t,n,r,s)}function M0n(e,t,n,r){n.delimitedEncoding?AIe(e.tag(n.number,zu.StartGroup),t,r).tag(n.number,zu.EndGroup):AIe(e.tag(n.number,zu.LengthDelimited).fork(),t,r).join()}function mKi(e,t,n,r){var i;if(n.listKind=="message"){for(let o of r)M0n(e,t,n,o);return}let s=(i=n.scalar)!==null&&i!==void 0?i:Wt.INT32;if(n.packed){if(!r.size)return;e.tag(n.number,zu.LengthDelimited).fork();for(let o of r)P0n(e,n.parent.typeName,n.name,s,o);e.join();return}for(let o of r)EIe(e,n.parent.typeName,n.name,s,n.number,o)}function fKi(e,t,n,r,i){var s;switch(e.tag(n.number,zu.LengthDelimited).fork(),EIe(e,n.parent.typeName,n.name,n.mapKey,1,r),n.mapKind){case"scalar":case"enum":EIe(e,n.parent.typeName,n.name,(s=n.scalar)!==null&&s!==void 0?s:Wt.INT32,2,i);break;case"message":AIe(e.tag(2,zu.LengthDelimited).fork(),t,i).join();break}e.join()}function P0n(e,t,n,r,i){try{switch(r){case Wt.STRING:e.string(i);break;case Wt.BOOL:e.bool(i);break;case Wt.DOUBLE:e.double(i);break;case Wt.FLOAT:e.float(i);break;case Wt.INT32:e.int32(i);break;case Wt.INT64:e.int64(i);break;case Wt.UINT64:e.uint64(i);break;case Wt.FIXED64:e.fixed64(i);break;case Wt.BYTES:e.bytes(i);break;case Wt.FIXED32:e.fixed32(i);break;case Wt.SFIXED32:e.sfixed32(i);break;case Wt.SFIXED64:e.sfixed64(i);break;case Wt.SINT64:e.sint64(i);break;case Wt.UINT32:e.uint32(i);break;case Wt.SINT32:e.sint32(i);break}}catch(s){throw s instanceof Error?new Error(`cannot encode field ${t}.${n} to binary: ${s.message}`):s}}function hKi(e){switch(e){case Wt.BYTES:case Wt.STRING:return zu.LengthDelimited;case Wt.DOUBLE:case Wt.FIXED64:case Wt.SFIXED64:return zu.Bit64;case Wt.FIXED32:case Wt.SFIXED32:case Wt.FLOAT:return zu.Bit32;default:return zu.Varint}}var dKi,O0n,_Ie=C(()=>{oH();sH();j_();dKi=3,O0n={writeUnknownFields:!0}});function D0n(e,t,n){let r=!1;return n||(n=Qf(k0n),r=!0),n.value=_oe(e,t),n.typeUrl=yKi(t.$typeName),r?n:void 0}function bKi(e,t){if(e.typeUrl==="")return!1;let n=typeof t=="string"?t:t.typeName,r=L0n(e.typeUrl);return n===r}function B0n(e,t){if(e.typeUrl==="")return;let n=t.kind=="message"?t:t.getMessage(L0n(e.typeUrl));if(!(!n||!bKi(e,n)))return DN(n,e.value)}function yKi(e){return`type.googleapis.com/${e}`}function L0n(e){let t=e.lastIndexOf("/"),n=t>=0?e.substring(t+1):e;if(!n.length)throw new Error(`invalid type url: ${e}`);return n}var F0n=C(()=>{_ct();iH();_Ie();Eoe()});var U0n=C(()=>{});var V0n,G0n,W0n,$0n=C(()=>{(function(e){e[e.TYPE_UNKNOWN=0]="TYPE_UNKNOWN",e[e.TYPE_DOUBLE=1]="TYPE_DOUBLE",e[e.TYPE_FLOAT=2]="TYPE_FLOAT",e[e.TYPE_INT64=3]="TYPE_INT64",e[e.TYPE_UINT64=4]="TYPE_UINT64",e[e.TYPE_INT32=5]="TYPE_INT32",e[e.TYPE_FIXED64=6]="TYPE_FIXED64",e[e.TYPE_FIXED32=7]="TYPE_FIXED32",e[e.TYPE_BOOL=8]="TYPE_BOOL",e[e.TYPE_STRING=9]="TYPE_STRING",e[e.TYPE_GROUP=10]="TYPE_GROUP",e[e.TYPE_MESSAGE=11]="TYPE_MESSAGE",e[e.TYPE_BYTES=12]="TYPE_BYTES",e[e.TYPE_UINT32=13]="TYPE_UINT32",e[e.TYPE_ENUM=14]="TYPE_ENUM",e[e.TYPE_SFIXED32=15]="TYPE_SFIXED32",e[e.TYPE_SFIXED64=16]="TYPE_SFIXED64",e[e.TYPE_SINT32=17]="TYPE_SINT32",e[e.TYPE_SINT64=18]="TYPE_SINT64"})(V0n||(V0n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.OPTIONAL=1]="OPTIONAL",e[e.REQUIRED=2]="REQUIRED",e[e.REPEATED=3]="REPEATED"})(G0n||(G0n={}));(function(e){e[e.PROTO2=0]="PROTO2",e[e.PROTO3=1]="PROTO3",e[e.EDITIONS=2]="EDITIONS"})(W0n||(W0n={}))});var Q0n=C(()=>{});function vct(e,t,...n){if(n.length==0)return e.extensions[t];let r=n.pop();return n.reduce((i,s)=>i.nestedMessages[s],e.messages[t]).nestedExtensions[r]}var Y0n=C(()=>{});var H0n,Z0n=C(()=>{(function(e){e[e.STRING_TYPE_UNKNOWN=0]="STRING_TYPE_UNKNOWN",e[e.VIEW=1]="VIEW",e[e.CORD=2]="CORD",e[e.STRING=3]="STRING"})(H0n||(H0n={}))});var j0n=C(()=>{});var z0n=C(()=>{});var X0n,K0n=C(()=>{pH();X0n=Zr("CiBnb29nbGUvcHJvdG9idWYvZmllbGRfbWFzay5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIhoKCUZpZWxkTWFzaxINCgVwYXRocxgBIAMoCUKFAQoTY29tLmdvb2dsZS5wcm90b2J1ZkIORmllbGRNYXNrUHJvdG9QAVoyZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vZmllbGRtYXNrcGL4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNiBnByb3RvMw")});var q0n,J0n,eAn=C(()=>{(function(e){e[e.API_LEVEL_UNSPECIFIED=0]="API_LEVEL_UNSPECIFIED",e[e.API_OPEN=1]="API_OPEN",e[e.API_HYBRID=2]="API_HYBRID",e[e.API_OPAQUE=3]="API_OPAQUE"})(q0n||(q0n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.KEEP=1]="KEEP",e[e.GENERATE_BOTH=2]="GENERATE_BOTH",e[e.STRIP=3]="STRIP"})(J0n||(J0n={}))});var tAn,nAn,rAn=C(()=>{(function(e){e[e.NEST_IN_FILE_CLASS_UNKNOWN=0]="NEST_IN_FILE_CLASS_UNKNOWN",e[e.NO=1]="NO",e[e.YES=2]="YES",e[e.LEGACY=3]="LEGACY"})(tAn||(tAn={}));(function(e){e[e.UTF8_VALIDATION_UNKNOWN=0]="UTF8_VALIDATION_UNKNOWN",e[e.DEFAULT=1]="DEFAULT",e[e.VERIFY=2]="VERIFY"})(nAn||(nAn={}))});var xct,iAn,Cct,sAn,SIe,oAn=C(()=>{pH();Aoe();xct=Zr("Chxnb29nbGUvcHJvdG9idWYvc3RydWN0LnByb3RvEg9nb29nbGUucHJvdG9idWYihAEKBlN0cnVjdBIzCgZmaWVsZHMYASADKAsyIy5nb29nbGUucHJvdG9idWYuU3RydWN0LkZpZWxkc0VudHJ5GkUKC0ZpZWxkc0VudHJ5EgsKA2tleRgBIAEoCRIlCgV2YWx1ZRgCIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZToCOAEi6gEKBVZhbHVlEjAKCm51bGxfdmFsdWUYASABKA4yGi5nb29nbGUucHJvdG9idWYuTnVsbFZhbHVlSAASFgoMbnVtYmVyX3ZhbHVlGAIgASgBSAASFgoMc3RyaW5nX3ZhbHVlGAMgASgJSAASFAoKYm9vbF92YWx1ZRgEIAEoCEgAEi8KDHN0cnVjdF92YWx1ZRgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIABIwCgpsaXN0X3ZhbHVlGAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLkxpc3RWYWx1ZUgAQgYKBGtpbmQiMwoJTGlzdFZhbHVlEiYKBnZhbHVlcxgBIAMoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZSobCglOdWxsVmFsdWUSDgoKTlVMTF9WQUxVRRAAQn8KE2NvbS5nb29nbGUucHJvdG9idWZCC1N0cnVjdFByb3RvUAFaL2dvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL3N0cnVjdHBi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzYgZwcm90bzM"),iAn=oo(xct,0),Cct=oo(xct,1),sAn=oo(xct,2);(function(e){e[e.NULL_VALUE=0]="NULL_VALUE"})(SIe||(SIe={}))});var aAn=C(()=>{});var lAn,cAn=C(()=>{(function(e){e[e.NONE=0]="NONE",e[e.PROTO3_OPTIONAL=1]="PROTO3_OPTIONAL",e[e.SUPPORTS_EDITIONS=2]="SUPPORTS_EDITIONS"})(lAn||(lAn={}))});var Au=C(()=>{N0n();F0n();rH();_ct();Q0n();Z0n();yct();j0n();z0n();K0n();eAn();rAn();U0n();oAn();R0n();$0n();aAn();cAn()});function vIe(e,t){uAn(t,e);let n=AKi(e.$unknown,t),[r,i,s]=_3(t);for(let o of n)Act(r,new A3(o.data),i,o.wireType,{readUnknownFields:!0});return s()}function Tct(e,t,n){var r;uAn(t,e);let i=((r=e.$unknown)!==null&&r!==void 0?r:[]).filter(u=>u.no!==t.number),[s,o]=_3(t,n),a=new LP;Sct(a,{writeUnknownFields:!0},s,o);let l=new A3(a.finish());for(;l.pos<l.len;){let[u,c]=l.tag(),d=l.skip(c,u);i.push({no:u,wireType:c,data:d})}e.$unknown=i}function Ict(e,t){let n=e.proto.options;if(!n){let[,,r]=_3(t);return r()}return vIe(n,t)}function AKi(e,t){if(e===void 0)return[];if(t.fieldKind==="enum"||t.fieldKind==="scalar"){for(let n=e.length-1;n>=0;--n)if(e[n].no==t.number)return[e[n]];return[]}return e.filter(n=>n.no===t.number)}function _3(e,t){let n=e.typeName,r=Object.assign(Object.assign({},e),{kind:"field",parent:e.extendee,localName:n}),i=Object.assign(Object.assign({},e.extendee),{fields:[r],members:[r],oneofs:[]}),s=Qf(i,t!==void 0?{[n]:t}:void 0);return[Yf(i,s),r,()=>{let o=s[n];if(o===void 0){let a=e.message;return kT(a)?yA(a.fields[0].scalar,a.fields[0].longAsString):Qf(a)}return o}]}function uAn(e,t){if(e.extendee.typeName!=t.$typeName)throw new Error(`extension ${e.typeName} can only be applied to message ${e.extendee.typeName}`)}var xIe=C(()=>{iH();Eoe();oH();b3();_Ie();sH();rH()});var dAn=C(()=>{});var pAn=C(()=>{});var mAn=C(()=>{});var CIe=C(()=>{sH();pIe();oIe();dct();mAn()});function SKi(e){return e?Object.assign(Object.assign({},fAn),e):fAn}function TIe(e,t,n){return Soe(Yf(e,t),SKi(n))}function gAn(e,t,n){var r;let i=TIe(e,t,n);return JSON.stringify(i,null,(r=n?.prettySpaces)!==null&&r!==void 0?r:0)}function Soe(e,t){var n;let r=TKi(e,t);if(r!==void 0)return r;let i={};for(let s of e.sortedFields){if(!e.isSet(s)){if(s.presence==EKi)throw new Error(`cannot encode ${s} to JSON: required field not set`);if(!t.alwaysEmitImplicit||s.presence!==_Ki)continue}let o=hAn(s,e.get(s),t);o!==void 0&&(i[CKi(s,t)]=o)}if(t.registry){let s=new Set;for(let{no:o}of(n=e.getUnknown())!==null&&n!==void 0?n:[])if(!s.has(o)){s.add(o);let a=t.registry.getExtensionFor(e.desc,o);if(!a)continue;let l=vIe(e.message,a),[u,c]=_3(a,l),d=hAn(c,u.get(c),t);d!==void 0&&(i[a.jsonName]=d)}}return i}function hAn(e,t,n){switch(e.fieldKind){case"scalar":return IIe(e,t);case"message":return Soe(t,n);case"enum":return wct(e.enum,t,n.enumAsInteger);case"list":return xKi(t,n);case"map":return vKi(t,n)}}function vKi(e,t){let n=e.field(),r={};switch(n.mapKind){case"scalar":for(let[i,s]of e)r[i]=IIe(n,s);break;case"message":for(let[i,s]of e)r[i]=Soe(s,t);break;case"enum":for(let[i,s]of e)r[i]=wct(n.enum,s,t.enumAsInteger);break}return t.alwaysEmitImplicit||e.size>0?r:void 0}function xKi(e,t){let n=e.field(),r=[];switch(n.listKind){case"scalar":for(let i of e)r.push(IIe(n,i));break;case"enum":for(let i of e)r.push(wct(n.enum,i,t.enumAsInteger));break;case"message":for(let i of e)r.push(Soe(i,t));break}return t.alwaysEmitImplicit||r.length>0?r:void 0}function wct(e,t,n){var r;if(typeof t!="number")throw new Error(`cannot encode ${e} to JSON: expected number, got ${Mp(t)}`);if(e.typeName=="google.protobuf.NullValue")return null;if(n)return t;let i=e.value[t];return(r=i?.name)!==null&&r!==void 0?r:t}function IIe(e,t){var n,r,i,s,o,a;switch(e.scalar){case Wt.INT32:case Wt.SFIXED32:case Wt.SINT32:case Wt.FIXED32:case Wt.UINT32:if(typeof t!="number")throw new Error(`cannot encode ${e} to JSON: ${(n=ON(e,t))===null||n===void 0?void 0:n.message}`);return t;case Wt.FLOAT:case Wt.DOUBLE:if(typeof t!="number")throw new Error(`cannot encode ${e} to JSON: ${(r=ON(e,t))===null||r===void 0?void 0:r.message}`);return Number.isNaN(t)?"NaN":t===Number.POSITIVE_INFINITY?"Infinity":t===Number.NEGATIVE_INFINITY?"-Infinity":t;case Wt.STRING:if(typeof t!="string")throw new Error(`cannot encode ${e} to JSON: ${(i=ON(e,t))===null||i===void 0?void 0:i.message}`);return t;case Wt.BOOL:if(typeof t!="boolean")throw new Error(`cannot encode ${e} to JSON: ${(s=ON(e,t))===null||s===void 0?void 0:s.message}`);return t;case Wt.UINT64:case Wt.FIXED64:case Wt.INT64:case Wt.SFIXED64:case Wt.SINT64:if(typeof t!="bigint"&&typeof t!="string")throw new Error(`cannot encode ${e} to JSON: ${(o=ON(e,t))===null||o===void 0?void 0:o.message}`);return t.toString();case Wt.BYTES:if(t instanceof Uint8Array)return hoe(t);throw new Error(`cannot encode ${e} to JSON: ${(a=ON(e,t))===null||a===void 0?void 0:a.message}`)}}function CKi(e,t){return t.useProtoFieldName?e.name:e.jsonName}function TKi(e,t){if(e.desc.typeName.startsWith("google.protobuf."))switch(e.desc.typeName){case"google.protobuf.Any":return IKi(e.message,t);case"google.protobuf.Timestamp":return NKi(e.message);case"google.protobuf.Duration":return wKi(e.message);case"google.protobuf.FieldMask":return RKi(e.message);case"google.protobuf.Struct":return bAn(e.message);case"google.protobuf.Value":return Rct(e.message);case"google.protobuf.ListValue":return yAn(e.message);default:if(kT(e.desc)){let n=e.desc.fields[0];return IIe(n,e.get(n))}return}}function IKi(e,t){if(e.typeUrl==="")return{};let{registry:n}=t,r,i;if(n&&(r=B0n(e,n),r&&(i=n.getMessage(r.$typeName))),!i||!r)throw new Error(`cannot encode message ${e.$typeName} to JSON: "${e.typeUrl}" is not in the type registry`);let s=Soe(Yf(i,r),t);return(i.typeName.startsWith("google.protobuf.")||s===null||Array.isArray(s)||typeof s!="object")&&(s={value:s}),s["@type"]=e.typeUrl,s}function wKi(e){if(Number(e.seconds)>315576e6||Number(e.seconds)<-315576e6)throw new Error(`cannot encode message ${e.$typeName} to JSON: value out of range`);let t=e.seconds.toString();if(e.nanos!==0){let n=Math.abs(e.nanos).toString();n="0".repeat(9-n.length)+n,n.substring(3)==="000000"?n=n.substring(0,3):n.substring(6)==="000"&&(n=n.substring(0,6)),t+="."+n,e.nanos<0&&Number(e.seconds)==0&&(t="-"+t)}return t+"s"}function RKi(e){return e.paths.map(t=>{if(t.match(/_[0-9]?_/g)||t.match(/[A-Z]/g))throw new Error(`cannot encode message ${e.$typeName} to JSON: lowerCamelCase of path name "`+t+'" is irreversible');return FP(t)}).join(",")}function bAn(e){let t={};for(let[n,r]of Object.entries(e.fields))t[n]=Rct(r);return t}function Rct(e){switch(e.kind.case){case"nullValue":return null;case"numberValue":if(!Number.isFinite(e.kind.value))throw new Error(`${e.$typeName} cannot be NaN or Infinity`);return e.kind.value;case"boolValue":return e.kind.value;case"stringValue":return e.kind.value;case"structValue":return bAn(e.kind.value);case"listValue":return yAn(e.kind.value);default:throw new Error(`${e.$typeName} must have a value`)}}function yAn(e){return e.values.map(Rct)}function NKi(e){let t=Number(e.seconds)*1e3;if(t<Date.parse("0001-01-01T00:00:00Z")||t>Date.parse("9999-12-31T23:59:59Z"))throw new Error(`cannot encode message ${e.$typeName} to JSON: must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive`);if(e.nanos<0)throw new Error(`cannot encode message ${e.$typeName} to JSON: nanos must not be negative`);let n="Z";if(e.nanos>0){let r=(e.nanos+1e9).toString().substring(1);r.substring(3)==="000000"?n="."+r.substring(0,3)+"Z":r.substring(6)==="000"?n="."+r.substring(0,6)+"Z":n="."+r+"Z"}return new Date(t).toISOString().replace(".000Z",n)}var EKi,_Ki,fAn,AAn=C(()=>{j_();mIe();oH();Au();rH();CIe();xIe();lIe();EKi=3,_Ki=2,fAn={alwaysEmitImplicit:!1,enumAsInteger:!1,useProtoFieldName:!1}});function kKi(e){return e?Object.assign(Object.assign({},EAn),e):EAn}function SAn(e,t,n){return voe(e,FKi(t,e.typeName),n)}function voe(e,t,n){let r=Yf(e);try{mH(r,t,kKi(n))}catch(i){throw Nyn(i)?new Error(`cannot decode ${i.field()} from JSON: ${i.message}`,{cause:i}):i}return r.message}function mH(e,t,n){var r;if(UKi(e,t,n))return;if(t==null||Array.isArray(t)||typeof t!="object")throw new Error(`cannot decode ${e.desc} from JSON: ${Mp(t)}`);let i=new Map,s=new Map;for(let o of e.desc.fields)s.set(o.name,o).set(o.jsonName,o);for(let[o,a]of Object.entries(t)){let l=s.get(o);if(l){if(l.oneof){if(a===null&&l.fieldKind=="scalar")continue;let u=i.get(l.oneof);if(u!==void 0)throw new em(l.oneof,`oneof set multiple times by ${u.name} and ${l.name}`);i.set(l.oneof,l)}_An(e,l,a,n)}else{let u;if(o.startsWith("[")&&o.endsWith("]")&&(u=(r=n.registry)===null||r===void 0?void 0:r.getExtension(o.substring(1,o.length-1)))&&u.extendee.typeName===e.desc.typeName){let[c,d,p]=_3(u);_An(c,d,a,n),Tct(e.message,u,p())}if(!u&&!n.ignoreUnknownFields)throw new Error(`cannot decode ${e.desc} from JSON: key "${o}" is unknown`)}}}function _An(e,t,n,r){switch(t.fieldKind){case"scalar":BKi(e,t,n);break;case"enum":DKi(e,t,n,r);break;case"message":PKi(e,t,n,r);break;case"list":MKi(e.get(t),n,r);break;case"map":OKi(e.get(t),n,r);break}}function OKi(e,t,n){if(t===null)return;let r=e.field();if(typeof t!="object"||Array.isArray(t))throw new em(r,"expected object, got "+Mp(t));for(let[i,s]of Object.entries(t)){if(s===null)throw new em(r,"map value must not be null");let o;switch(r.mapKind){case"message":let l=Yf(r.message);mH(l,s,n),o=l;break;case"enum":if(o=Nct(r.enum,s,n.ignoreUnknownFields,!0),o===wIe)return;break;case"scalar":o=NIe(r,s,!0);break}let a=LKi(r.mapKey,i);e.set(a,o)}}function MKi(e,t,n){if(t===null)return;let r=e.field();if(!Array.isArray(t))throw new em(r,"expected Array, got "+Mp(t));for(let i of t){if(i===null)throw new em(r,"list item must not be null");switch(r.listKind){case"message":let s=Yf(r.message);mH(s,i,n),e.add(s);break;case"enum":let o=Nct(r.enum,i,n.ignoreUnknownFields,!0);o!==wIe&&e.add(o);break;case"scalar":e.add(NIe(r,i,!0));break}}}function PKi(e,t,n,r){if(n===null&&t.message.typeName!="google.protobuf.Value"){e.clear(t);return}let i=e.isSet(t)?e.get(t):Yf(t.message);mH(i,n,r),e.set(t,i)}function DKi(e,t,n,r){let i=Nct(t.enum,n,r.ignoreUnknownFields,!1);i===RIe?e.clear(t):i!==wIe&&e.set(t,i)}function BKi(e,t,n){let r=NIe(t,n,!1);r===RIe?e.clear(t):e.set(t,r)}function Nct(e,t,n,r){if(t===null)return e.typeName=="google.protobuf.NullValue"?0:r?e.values[0].number:RIe;switch(typeof t){case"number":if(Number.isInteger(t))return t;break;case"string":let i=e.values.find(s=>s.name===t);if(i!==void 0)return i.number;if(n)return wIe;break}throw new Error(`cannot decode ${e} from JSON: ${Mp(t)}`)}function NIe(e,t,n){if(t===null)return n?yA(e.scalar,!1):RIe;switch(e.scalar){case Wt.DOUBLE:case Wt.FLOAT:if(t==="NaN")return NaN;if(t==="Infinity")return Number.POSITIVE_INFINITY;if(t==="-Infinity")return Number.NEGATIVE_INFINITY;if(typeof t=="number"){if(Number.isNaN(t))throw new em(e,"unexpected NaN number");if(!Number.isFinite(t))throw new em(e,"unexpected infinite number");break}if(typeof t=="string"){if(t===""||t.trim().length!==t.length)break;let r=Number(t);if(!Number.isFinite(r))break;return r}break;case Wt.INT32:case Wt.FIXED32:case Wt.SFIXED32:case Wt.SINT32:case Wt.UINT32:return vAn(t);case Wt.BYTES:if(typeof t=="string"){if(t==="")return new Uint8Array(0);try{return lH(t)}catch(r){let i=r instanceof Error?r.message:String(r);throw new em(e,i)}}break}return t}function LKi(e,t){switch(e){case Wt.BOOL:switch(t){case"true":return!0;case"false":return!1}return t;case Wt.INT32:case Wt.FIXED32:case Wt.UINT32:case Wt.SFIXED32:case Wt.SINT32:return vAn(t);default:return t}}function vAn(e){if(typeof e=="string"){if(e===""||e.trim().length!==e.length)return e;let t=Number(e);return Number.isNaN(t)?e:t}return e}function FKi(e,t){try{return JSON.parse(e)}catch(n){let r=n instanceof Error?n.message:String(n);throw new Error(`cannot decode message ${t} from JSON: ${r}`,{cause:n})}}function UKi(e,t,n){if(!e.desc.typeName.startsWith("google.protobuf."))return!1;switch(e.desc.typeName){case"google.protobuf.Any":return VKi(e.message,t,n),!0;case"google.protobuf.Timestamp":return GKi(e.message,t),!0;case"google.protobuf.Duration":return WKi(e.message,t),!0;case"google.protobuf.FieldMask":return $Ki(e.message,t),!0;case"google.protobuf.Struct":return xAn(e.message,t),!0;case"google.protobuf.Value":return kct(e.message,t),!0;case"google.protobuf.ListValue":return CAn(e.message,t),!0;default:if(kT(e.desc)){let r=e.desc.fields[0];return t===null?e.clear(r):e.set(r,NIe(r,t,!0)),!0}return!1}}function VKi(e,t,n){var r;if(t===null||Array.isArray(t)||typeof t!="object")throw new Error(`cannot decode message ${e.$typeName} from JSON: expected object but got ${Mp(t)}`);if(Object.keys(t).length==0)return;let i=t["@type"];if(typeof i!="string"||i=="")throw new Error(`cannot decode message ${e.$typeName} from JSON: "@type" is empty`);let s=i.includes("/")?i.substring(i.lastIndexOf("/")+1):i;if(!s.length)throw new Error(`cannot decode message ${e.$typeName} from JSON: "@type" is invalid`);let o=(r=n.registry)===null||r===void 0?void 0:r.getMessage(s);if(!o)throw new Error(`cannot decode message ${e.$typeName} from JSON: ${i} is not in the type registry`);let a=Yf(o);if(s.startsWith("google.protobuf.")&&Object.prototype.hasOwnProperty.call(t,"value")){let l=t.value;mH(a,l,n)}else{let l=Object.assign({},t);delete l["@type"],mH(a,l,n)}D0n(a.desc,a.message,e)}function GKi(e,t){if(typeof t!="string")throw new Error(`cannot decode message ${e.$typeName} from JSON: ${Mp(t)}`);let n=t.match(/^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})(?:\.([0-9]{1,9}))?(?:Z|([+-][0-9][0-9]:[0-9][0-9]))$/);if(!n)throw new Error(`cannot decode message ${e.$typeName} from JSON: invalid RFC 3339 string`);let r=Date.parse(n[1]+"-"+n[2]+"-"+n[3]+"T"+n[4]+":"+n[5]+":"+n[6]+(n[8]?n[8]:"Z"));if(Number.isNaN(r))throw new Error(`cannot decode message ${e.$typeName} from JSON: invalid RFC 3339 string`);if(r<Date.parse("0001-01-01T00:00:00Z")||r>Date.parse("9999-12-31T23:59:59Z"))throw new Error(`cannot decode message ${e.$typeName} from JSON: must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive`);e.seconds=bl.parse(r/1e3),e.nanos=0,n[7]&&(e.nanos=parseInt("1"+n[7]+"0".repeat(9-n[7].length))-1e9)}function WKi(e,t){if(typeof t!="string")throw new Error(`cannot decode message ${e.$typeName} from JSON: ${Mp(t)}`);let n=t.match(/^(-?[0-9]+)(?:\.([0-9]+))?s/);if(n===null)throw new Error(`cannot decode message ${e.$typeName} from JSON: ${Mp(t)}`);let r=Number(n[1]);if(r>315576e6||r<-315576e6)throw new Error(`cannot decode message ${e.$typeName} from JSON: ${Mp(t)}`);if(e.seconds=bl.parse(r),typeof n[2]!="string")return;let i=n[2]+"0".repeat(9-n[2].length);e.nanos=parseInt(i),(r<0||Object.is(r,-0))&&(e.nanos=-e.nanos)}function $Ki(e,t){if(typeof t!="string")throw new Error(`cannot decode message ${e.$typeName} from JSON: ${Mp(t)}`);if(t==="")return;function n(r){if(r.includes("_"))throw new Error(`cannot decode message ${e.$typeName} from JSON: path names must be lowerCamelCase`);let i=r.replace(/[A-Z]/g,s=>"_"+s.toLowerCase());return i[0]==="_"?i.substring(1):i}e.paths=t.split(",").map(n)}function xAn(e,t){if(typeof t!="object"||t==null||Array.isArray(t))throw new Error(`cannot decode message ${e.$typeName} from JSON ${Mp(t)}`);for(let[n,r]of Object.entries(t)){let i=Qf(Cct);kct(i,r),e.fields[n]=i}}function kct(e,t){switch(typeof t){case"number":e.kind={case:"numberValue",value:t};break;case"string":e.kind={case:"stringValue",value:t};break;case"boolean":e.kind={case:"boolValue",value:t};break;case"object":if(t===null)e.kind={case:"nullValue",value:SIe.NULL_VALUE};else if(Array.isArray(t)){let n=Qf(sAn);CAn(n,t),e.kind={case:"listValue",value:n}}else{let n=Qf(iAn);xAn(n,t),e.kind={case:"structValue",value:n}}break;default:throw new Error(`cannot decode message ${e.$typeName} from JSON ${Mp(t)}`)}return e}function CAn(e,t){if(!Array.isArray(t))throw new Error(`cannot decode message ${e.$typeName} from JSON ${Mp(t)}`);for(let n of t){let r=Qf(Cct);kct(r,n),e.values.push(r)}}var EAn,wIe,RIe,TAn=C(()=>{j_();BP();iH();oH();sIe();lIe();b3();pIe();Au();xIe();EAn={ignoreUnknownFields:!1};wIe=Symbol();RIe=Symbol()});var IAn=C(()=>{});var S3=C(()=>{myn();KTe();iH();$yn();j_();dAn();pAn();bIe();_Ie();Eoe();AAn();TAn();IAn();xIe();BP()});var tr,cn,BN,v3,fH,UP,kIe,OIe,MIe,VP,xoe=C(()=>{"use strict";tr=class extends Error{statusCode;statusText;responseBody;serverMessage;errorReason;constructor(t,n,r,i,s){let o=i??(r||void 0),a=o&&o.length>200?`${o.slice(0,200)}\u2026[truncated]`:o;super(a?`API call failed: ${t} ${n}: ${a}`:`API call failed: ${t} ${n}`),this.name="PoseidonRpcError",this.statusCode=t,this.statusText=n,this.responseBody=r,this.serverMessage=i,this.errorReason=s}get status(){return this.statusCode}},cn=class extends Error{constructor(t){super(t),this.name="UsageError"}},BN=class extends Error{residentId;resourceVersion;constructor(t,n){super(`Unable to find resident ${t} or resource version ${n}`),this.name="ResidentVersionLookupError",this.residentId=t,this.resourceVersion=n}};(function(e){e[e.REASON_UNSPECIFIED=0]="REASON_UNSPECIFIED",e[e.END_TURN=1]="END_TURN",e[e.MAX_TOKENS=2]="MAX_TOKENS",e[e.TOOL_USE_REQUESTED=3]="TOOL_USE_REQUESTED",e[e.SAFETY=4]="SAFETY",e[e.RECITATION=5]="RECITATION",e[e.MALFORMED_FUNCTION_CALL=6]="MALFORMED_FUNCTION_CALL",e[e.STOP_REASON_ERROR=7]="STOP_REASON_ERROR"})(v3||(v3={}));(function(e){e.chat="CHAT",e.agent="AGENT",e.remoteAgent="REMOTE_AGENT",e.orientation="ORIENTATION",e.cliAgent="CLI_AGENT",e.cliNoninteractive="CLI_NONINTERACTIVE"})(fH||(fH={}));(function(e){e[e.UNSET=0]="UNSET",e[e.POSITIVE=1]="POSITIVE",e[e.NEGATIVE=2]="NEGATIVE"})(UP||(UP={}));(function(e){e[e.TEXT=0]="TEXT",e[e.TOOL_RESULT=1]="TOOL_RESULT",e[e.IMAGE=2]="IMAGE",e[e.IMAGE_ID=3]="IMAGE_ID",e[e.IDE_STATE=4]="IDE_STATE",e[e.EDIT_EVENTS=5]="EDIT_EVENTS",e[e.CHECKPOINT_REF=6]="CHECKPOINT_REF",e[e.FILE=8]="FILE",e[e.FILE_ID=9]="FILE_ID",e[e.HISTORY_SUMMARY=10]="HISTORY_SUMMARY"})(kIe||(kIe={}));(function(e){e[e.RAW_RESPONSE=0]="RAW_RESPONSE",e[e.SUGGESTED_QUESTIONS=1]="SUGGESTED_QUESTIONS",e[e.MAIN_TEXT_FINISHED=2]="MAIN_TEXT_FINISHED",e[e.WORKSPACE_FILE_CHUNKS=3]="WORKSPACE_FILE_CHUNKS",e[e.RELEVANT_SOURCES=4]="RELEVANT_SOURCES",e[e.TOOL_USE=5]="TOOL_USE",e[e.AGENT_MEMORY=6]="AGENT_MEMORY",e[e.TOOL_USE_START=7]="TOOL_USE_START",e[e.THINKING=8]="THINKING",e[e.BILLING_METADATA=9]="BILLING_METADATA",e[e.TOKEN_USAGE=10]="TOKEN_USAGE"})(OIe||(OIe={}));(function(e){e[e.ALWAYS_ATTACHED=0]="ALWAYS_ATTACHED",e[e.MANUAL=1]="MANUAL",e[e.AGENT_REQUESTED=2]="AGENT_REQUESTED"})(MIe||(MIe={}));VP="https://auth.augmentcode.com"});var Cs,z_=C(()=>{(function(e){e[e.Canceled=1]="Canceled",e[e.Unknown=2]="Unknown",e[e.InvalidArgument=3]="InvalidArgument",e[e.DeadlineExceeded=4]="DeadlineExceeded",e[e.NotFound=5]="NotFound",e[e.AlreadyExists=6]="AlreadyExists",e[e.PermissionDenied=7]="PermissionDenied",e[e.ResourceExhausted=8]="ResourceExhausted",e[e.FailedPrecondition=9]="FailedPrecondition",e[e.Aborted=10]="Aborted",e[e.OutOfRange=11]="OutOfRange",e[e.Unimplemented=12]="Unimplemented",e[e.Internal=13]="Internal",e[e.Unavailable=14]="Unavailable",e[e.DataLoss=15]="DataLoss",e[e.Unauthenticated=16]="Unauthenticated"})(Cs||(Cs={}))});function Coe(e){let t=Cs[e];return typeof t!="string"?e.toString():t[0].toLowerCase()+t.substring(1).replace(/[A-Z]/g,n=>"_"+n.toLowerCase())}function wAn(e){if(!PIe){PIe={};for(let t of Object.values(Cs))typeof t!="string"&&(PIe[Coe(t)]=t)}return PIe[e]}var PIe,Oct=C(()=>{z_()});function QKi(e,t){return e.length?`[${Coe(t)}] ${e}`:`[${Coe(t)}]`}var nl,Cv=C(()=>{z_();S3();Oct();nl=class e extends Error{constructor(t,n=Cs.Unknown,r,i,s){super(QKi(t,n)),this.name="ConnectError",Object.setPrototypeOf(this,new.target.prototype),this.rawMessage=t,this.code=n,this.metadata=new Headers(r??{}),this.details=i??[],this.cause=s}static from(t,n=Cs.Unknown){return t instanceof e?t:t instanceof Error?t.name=="AbortError"||t.name=="TimeoutError"?new e(t.message,Cs.Canceled):new e(t.message,n,void 0,void 0,t):new e(String(t),n,void 0,void 0,t)}static[Symbol.hasInstance](t){return t instanceof Error?Object.getPrototypeOf(t)===e.prototype?!0:t.name==="ConnectError"&&"code"in t&&typeof t.code=="number"&&"metadata"in t&&"details"in t&&Array.isArray(t.details)&&"rawMessage"in t&&typeof t.rawMessage=="string"&&"cause"in t:!1}findDetails(t){let n=t.kind==="message"?{getMessage:i=>i===t.typeName?t:void 0}:t,r=[];for(let i of this.details){if("desc"in i){n.getMessage(i.desc.typeName)&&r.push(Qf(i.desc,i.value));continue}let s=n.getMessage(i.type);if(s)try{r.push(DN(s,i.value))}catch{}}return r}}});function Mct(...e){let t=new Headers;for(let n of e)n.forEach((r,i)=>{t.append(i,r)});return t}var RAn=C(()=>{});function NAn(e,t){let n={};for(let r of e.methods){let i=t(r);i!=null&&(n[r.localName]=i)}return n}var kAn=C(()=>{});var DIe,OAn=C(()=>{DIe=1});function MAn(e,t,n=!1){if(t>e){let r=`message size is larger than configured readMaxBytes ${e}`;throw n&&(r=`message size ${t} is larger than configured readMaxBytes ${e}`),new nl(r,Cs.ResourceExhausted)}}var PAn=C(()=>{Cv();z_()});function YKi(e){return new Pct(e)}function Dct(e){let t,n=YKi(4294967295);return new ReadableStream({start(){t=e.getReader()},async pull(r){let i=!1;for(;!i;){let s=await t.read();if(s.done)n.byteLength>0&&r.error(new nl("protocol error: incomplete envelope",Cs.InvalidArgument)),r.close();else for(let o of n.decode(s.value))r.enqueue(o),i=!0}}})}function Bct(e,t){let n=new Uint8Array(t.length+5);n.set(t,5);let r=new DataView(n.buffer,n.byteOffset,n.byteLength);return r.setUint8(0,e),r.setUint32(1,t.length),n}var Pct,DAn=C(()=>{Cv();z_();PAn();Pct=class{constructor(t){this.readMaxBytes=t,this.header=new Uint8Array(5),this.headerView=new DataView(this.header.buffer),this.buf=[]}get byteLength(){return this.buf.reduce((t,n)=>t+n.byteLength,0)}decode(t){this.buf.push(t);let n=[];for(;;){let r=this.pop();if(!r)break;n.push(r)}return n}pop(){if(!(!this.env&&(this.env=this.head(),!this.env))&&this.cons(this.env.data)){let t=this.env;return this.env=void 0,t}}head(){if(!this.cons(this.header))return;let t=this.headerView.getUint8(0),n=this.headerView.getUint32(1);return MAn(this.readMaxBytes,n,!0),{flags:t,data:new Uint8Array(n)}}cons(t){let n=t.byteLength;if(this.byteLength<n)return!1;let r=0;for(;r<n;){let i=this.buf.shift();i.byteLength>n-r?(t.set(i.subarray(0,n-r),r),this.buf.unshift(i.subarray(n-r)),r+=n-r):(t.set(i,r),r+=i.byteLength)}return!0}}});function BAn(e){return ZKi(this,arguments,function*(){yield Toe(yield*jKi(HKi(e)))})}var HKi,Toe,ZKi,jKi,LAn=C(()=>{HKi=function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof __values=="function"?__values(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(s){n[s]=e[s]&&function(o){return new Promise(function(a,l){o=e[s](o),i(a,l,o.done,o.value)})}}function i(s,o,a,l){Promise.resolve(l).then(function(u){s({value:u,done:a})},o)}},Toe=function(e){return this instanceof Toe?(this.v=e,this):new Toe(e)},ZKi=function(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),i,s=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",o),i[Symbol.asyncIterator]=function(){return this},i;function o(m){return function(f){return Promise.resolve(f).then(m,d)}}function a(m,f){r[m]&&(i[m]=function(h){return new Promise(function(g,b){s.push([m,h,g,b])>1||l(m,h)})},f&&(i[m]=f(i[m])))}function l(m,f){try{u(r[m](f))}catch(h){p(s[0][3],h)}}function u(m){m.value instanceof Toe?Promise.resolve(m.value.v).then(c,d):p(s[0][2],m)}function c(m){l("next",m)}function d(m){l("throw",m)}function p(m,f){m(f),s.shift(),s.length&&l(s[0][0],s[0][1])}},jKi=function(e){var t,n;return t={},r("next"),r("throw",function(i){throw i}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(i,s){t[i]=e[i]?function(o){return(n=!n)?{value:Toe(e[i](o)),done:!1}:s?s(o):o}:s}}});function Lct(e,t){return NAn(e,n=>{switch(n.methodKind){case"unary":return KKi(t,n);case"server_streaming":return qKi(t,n);case"client_streaming":return JKi(t,n);case"bidi_streaming":return eqi(t,n);default:return null}})}function KKi(e,t){return async(n,r)=>{var i,s;let o=await e.unary(t,r?.signal,r?.timeoutMs,r?.headers,n,r?.contextValues);return(i=r?.onHeader)===null||i===void 0||i.call(r,o.header),(s=r?.onTrailer)===null||s===void 0||s.call(r,o.trailer),o.message}}function qKi(e,t){return(n,r)=>UAn(e.stream(t,r?.signal,r?.timeoutMs,r?.headers,BAn([n]),r?.contextValues),r)}function JKi(e,t){return async(n,r)=>{var i,s,o,a,l,u;let c=await e.stream(t,r?.signal,r?.timeoutMs,r?.headers,n,r?.contextValues);(l=r?.onHeader)===null||l===void 0||l.call(r,c.header);let d,p=0;try{for(var m=!0,f=FAn(c.message),h;h=await f.next(),i=h.done,!i;m=!0)a=h.value,m=!1,d=a,p++}catch(g){s={error:g}}finally{try{!m&&!i&&(o=f.return)&&await o.call(f)}finally{if(s)throw s.error}}if(!d)throw new nl("protocol error: missing response message",Cs.Unimplemented);if(p>1)throw new nl("protocol error: received extra messages for client streaming method",Cs.Unimplemented);return(u=r?.onTrailer)===null||u===void 0||u.call(r,c.trailer),d}}function eqi(e,t){return(n,r)=>UAn(e.stream(t,r?.signal,r?.timeoutMs,r?.headers,n,r?.contextValues),r)}function UAn(e,t){let n=(function(){return XKi(this,arguments,function*(){var r,i;let s=yield hH(e);(r=t?.onHeader)===null||r===void 0||r.call(t,s.header),yield hH(yield*zKi(FAn(s.message))),(i=t?.onTrailer)===null||i===void 0||i.call(t,s.trailer)})})()[Symbol.asyncIterator]();return{[Symbol.asyncIterator]:()=>({next:()=>n.next()})}}var FAn,hH,zKi,XKi,VAn=C(()=>{kAn();Cv();z_();LAn();FAn=function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof __values=="function"?__values(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(s){n[s]=e[s]&&function(o){return new Promise(function(a,l){o=e[s](o),i(a,l,o.done,o.value)})}}function i(s,o,a,l){Promise.resolve(l).then(function(u){s({value:u,done:a})},o)}},hH=function(e){return this instanceof hH?(this.v=e,this):new hH(e)},zKi=function(e){var t,n;return t={},r("next"),r("throw",function(i){throw i}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(i,s){t[i]=e[i]?function(o){return(n=!n)?{value:hH(e[i](o)),done:!1}:s?s(o):o}:s}},XKi=function(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),i,s=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",o),i[Symbol.asyncIterator]=function(){return this},i;function o(m){return function(f){return Promise.resolve(f).then(m,d)}}function a(m,f){r[m]&&(i[m]=function(h){return new Promise(function(g,b){s.push([m,h,g,b])>1||l(m,h)})},f&&(i[m]=f(i[m])))}function l(m,f){try{u(r[m](f))}catch(h){p(s[0][3],h)}}function u(m){m.value instanceof hH?Promise.resolve(m.value.v).then(c,d):p(s[0][2],m)}function c(m){l("next",m)}function d(m){l("throw",m)}function p(m,f){m(f),s.shift(),s.length&&l(s[0][0],s[0][1])}}});function GAn(...e){let t=new AbortController,n=e.filter(i=>i!==void 0).concat(t.signal);for(let i of n){if(i.aborted){r.apply(i);break}i.addEventListener("abort",r)}function r(){t.signal.aborted||t.abort(Fct(this));for(let i of n)i.removeEventListener("abort",r)}return t}function WAn(e){let t=new AbortController,n=()=>{t.abort(new nl("the operation timed out",Cs.DeadlineExceeded))},r;return e!==void 0&&(e<=0?n():r=setTimeout(n,e)),{signal:t.signal,cleanup:()=>clearTimeout(r)}}function Fct(e){if(!e.aborted)return;if(e.reason!==void 0)return e.reason;let t=new Error("This operation was aborted");return t.name="AbortError",t}var $An=C(()=>{Cv();z_()});function BIe(){return{get(e){return e.id in this?this[e.id]:e.defaultValue},set(e,t){return this[e.id]=t,this},delete(e){return delete this[e.id],this}}}var QAn=C(()=>{});var YAn=C(()=>{});function LIe(e,t,...n){if(n.length>0)throw new Error;return e.services[t]}var HAn=C(()=>{});var ao,uUl,dUl,ZAn=C(()=>{ao="@bufbuild/protobuf",uUl={"google/protobuf/compiler/plugin.proto":ao+"/wkt","google/protobuf/any.proto":ao+"/wkt","google/protobuf/api.proto":ao+"/wkt","google/protobuf/cpp_features.proto":ao+"/wkt","google/protobuf/descriptor.proto":ao+"/wkt","google/protobuf/duration.proto":ao+"/wkt","google/protobuf/empty.proto":ao+"/wkt","google/protobuf/field_mask.proto":ao+"/wkt","google/protobuf/go_features.proto":ao+"/wkt","google/protobuf/java_features.proto":ao+"/wkt","google/protobuf/source_context.proto":ao+"/wkt","google/protobuf/struct.proto":ao+"/wkt","google/protobuf/timestamp.proto":ao+"/wkt","google/protobuf/type.proto":ao+"/wkt","google/protobuf/wrappers.proto":ao+"/wkt"},dUl={isMessage:{typeOnly:!1,bootstrapWktFrom:"../../is-message.js",from:ao},Message:{typeOnly:!0,bootstrapWktFrom:"../../types.js",from:ao},create:{typeOnly:!1,bootstrapWktFrom:"../../create.js",from:ao},fromJson:{typeOnly:!1,bootstrapWktFrom:"../../from-json.js",from:ao},fromJsonString:{typeOnly:!1,bootstrapWktFrom:"../../from-json.js",from:ao},fromBinary:{typeOnly:!1,bootstrapWktFrom:"../../from-binary.js",from:ao},toBinary:{typeOnly:!1,bootstrapWktFrom:"../../to-binary.js",from:ao},toJson:{typeOnly:!1,bootstrapWktFrom:"../../to-json.js",from:ao},toJsonString:{typeOnly:!1,bootstrapWktFrom:"../../to-json.js",from:ao},protoInt64:{typeOnly:!1,bootstrapWktFrom:"../../proto-int64.js",from:ao},JsonValue:{typeOnly:!0,bootstrapWktFrom:"../../json-value.js",from:ao},JsonObject:{typeOnly:!0,bootstrapWktFrom:"../../json-value.js",from:ao},codegen:{boot:{typeOnly:!1,bootstrapWktFrom:"../../codegenv2/boot.js",from:ao+"/codegenv2"},fileDesc:{typeOnly:!1,bootstrapWktFrom:"../../codegenv2/file.js",from:ao+"/codegenv2"},enumDesc:{typeOnly:!1,bootstrapWktFrom:"../../codegenv2/enum.js",from:ao+"/codegenv2"},extDesc:{typeOnly:!1,bootstrapWktFrom:"../../codegenv2/extension.js",from:ao+"/codegenv2"},messageDesc:{typeOnly:!1,bootstrapWktFrom:"../../codegenv2/message.js",from:ao+"/codegenv2"},serviceDesc:{typeOnly:!1,bootstrapWktFrom:"../../codegenv2/service.js",from:ao+"/codegenv2"},tsEnum:{typeOnly:!1,bootstrapWktFrom:"../../codegenv2/enum.js",from:ao+"/codegenv2"},GenFile:{typeOnly:!0,bootstrapWktFrom:"../../codegenv2/types.js",from:ao+"/codegenv2"},GenEnum:{typeOnly:!0,bootstrapWktFrom:"../../codegenv2/types.js",from:ao+"/codegenv2"},GenExtension:{typeOnly:!0,bootstrapWktFrom:"../../codegenv2/types.js",from:ao+"/codegenv2"},GenMessage:{typeOnly:!0,bootstrapWktFrom:"../../codegenv2/types.js",from:ao+"/codegenv2"},GenService:{typeOnly:!0,bootstrapWktFrom:"../../codegenv2/types.js",from:ao+"/codegenv2"}}}});var jAn=C(()=>{});var zAn=C(()=>{});var Ml=C(()=>{bct();YAn();o0n();Y0n();pH();Aoe();HAn();ZAn();jAn();zAn()});function FIe(e,t){return e.toString().replace(/\/?$/,`/${t.parent.typeName}/${t.name}`)}var XAn=C(()=>{});function Uct(e,t){return Qf(e,t)}function KAn(e,t){function n(r){return r.done===!0?r:{done:r.done,value:Uct(e,r.value)}}return{[Symbol.asyncIterator](){let r=t[Symbol.asyncIterator](),i={next:()=>r.next().then(n)};return r.throw!==void 0&&(i.throw=s=>r.throw(s).then(n)),r.return!==void 0&&(i.return=s=>r.return(s).then(n)),i}}}var qAn=C(()=>{S3()});function Vct(e,t){if(!t)return e;for(let n of t.concat().reverse())e=n(e);return e}var JAn=C(()=>{});function UIe(e){var t;let n=Object.assign({},e);return(t=n.ignoreUnknownFields)!==null&&t!==void 0||(n.ignoreUnknownFields=!0),n}function VIe(e,t,n,r){let i=t?eEn(e.input,r):tEn(e.input,n);return{parse:(t?eEn(e.output,r):tEn(e.output,n)).parse,serialize:i.serialize}}function eEn(e,t){return{parse(n){try{return DN(e,n,t)}catch(r){let i=r instanceof Error?r.message:String(r);throw new nl(`parse binary: ${i}`,Cs.Internal)}},serialize(n){try{return _oe(e,n,t)}catch(r){let i=r instanceof Error?r.message:String(r);throw new nl(`serialize binary: ${i}`,Cs.Internal)}}}}function tEn(e,t){var n,r;let i=(n=t?.textEncoder)!==null&&n!==void 0?n:new TextEncoder,s=(r=t?.textDecoder)!==null&&r!==void 0?r:new TextDecoder,o=UIe(t);return{parse(a){try{let l=s.decode(a);return SAn(e,l,o)}catch(l){throw nl.from(l,Cs.InvalidArgument)}},serialize(a){try{let l=gAn(e,a,o);return i.encode(l)}catch(l){throw nl.from(l,Cs.Internal)}}}}var nEn=C(()=>{S3();Cv();z_()});function aEn(e){let t=e?.match(tqi);if(!t)return;let n=!!t[1],r=!!t[3];return{stream:n,binary:r}}var tqi,rEn,iEn,sEn,oEn,Gct=C(()=>{tqi=/^application\/(connect\+)?(?:(json)(?:; ?charset=utf-?8)?|(proto))$/i,rEn="application/proto",iEn="application/json",sEn="application/connect+proto",oEn="application/connect+json"});function Ioe(e,t,n){var r;if(t&&new Headers(t).forEach((a,l)=>n.metadata.append(l,a)),typeof e!="object"||e==null||Array.isArray(e))throw n;let i=n.code;"code"in e&&typeof e.code=="string"&&(i=(r=wAn(e.code))!==null&&r!==void 0?r:i);let s=e.message;if(s!=null&&typeof s!="string")throw n;let o=new nl(s??"",i,t);if("details"in e&&Array.isArray(e.details))for(let a of e.details){if(a===null||typeof a!="object"||Array.isArray(a)||typeof a.type!="string"||typeof a.value!="string")throw n;try{o.details.push({type:a.type,value:lH(a.value),debug:a.debug})}catch{throw n}}return o}var Wct=C(()=>{CIe();Cv();Oct()});function $ct(e){let t=new nl("invalid end stream",Cs.Unknown),n;try{n=JSON.parse(typeof e=="string"?e:new TextDecoder().decode(e))}catch{throw t}if(typeof n!="object"||n==null||Array.isArray(n))throw t;let r=new Headers;if("metadata"in n){if(typeof n.metadata!="object"||n.metadata==null||Array.isArray(n.metadata))throw t;for(let[s,o]of Object.entries(n.metadata)){if(!Array.isArray(o)||o.some(a=>typeof a!="string"))throw t;for(let a of o)r.append(s,a)}}let i="error"in n&&n.error!=null?Ioe(n.error,r,t):void 0;return{metadata:r,error:i}}var GIe,lEn=C(()=>{Wct();Cv();z_();GIe=2});var x3,cEn,woe,Qct,uEn,WIe,Yct,Roe=C(()=>{x3="Content-Type",cEn="Content-Length",woe="Content-Encoding",Qct="Accept-Encoding",uEn="Connect-Timeout-Ms",WIe="Connect-Protocol-Version",Yct="User-Agent"});function dEn(e){switch(e){case 400:return Cs.Internal;case 401:return Cs.Unauthenticated;case 403:return Cs.PermissionDenied;case 404:return Cs.Unimplemented;case 429:return Cs.Unavailable;case 502:return Cs.Unavailable;case 503:return Cs.Unavailable;case 504:return Cs.Unavailable;default:return Cs.Unknown}}var pEn=C(()=>{z_()});function $Ie(e){let t=new Headers,n=new Headers;return e.forEach((r,i)=>{i.toLowerCase().startsWith("trailer-")?n.append(i.substring(8),r):t.append(i,r)}),[t,n]}var mEn=C(()=>{});var QIe,Hct=C(()=>{QIe="1"});function YIe(e,t,n,r,i){let s=new Headers(r??{});return n!==void 0&&s.set(uEn,`${n}`),s.set(x3,e=="unary"?t?rEn:iEn:t?sEn:oEn),s.set(WIe,QIe),!s.has(Yct)&&i&&s.set(Yct,"connect-es/2.0.4"),s}var fEn=C(()=>{Roe();Hct();Gct()});function HIe(e,t,n,r){let i=r.get(x3),s=aEn(i);if(n!==200){let a=new nl(`HTTP ${n}`,dEn(n),r);if(e=="unary"&&s&&!s.binary)return{isUnaryError:!0,unaryError:a};throw a}let o={binary:t,stream:e!=="unary"};if(s?.binary!==o.binary||s.stream!==o.stream)throw new nl(`unsupported content type ${i}`,s===void 0?Cs.Unknown:Cs.Internal,r);return{isUnaryError:!1}}var hEn=C(()=>{z_();pEn();Cv();Gct();Roe()});function iqi(e,t){return t?hoe(e,"url"):encodeURIComponent(new TextDecoder().decode(e))}function Zct(e,t,n){let r=`?connect=v${QIe}`,i=e.header.get(x3);i?.indexOf(gEn)===0&&(r+="&encoding="+encodeURIComponent(i.slice(gEn.length)));let s=e.header.get(woe);s!==null&&s!=="identity"&&(r+="&compression="+encodeURIComponent(s),n=!0),n&&(r+="&base64=1"),r+="&message="+iqi(t,n);let o=e.url+r,a=new Headers(e.header);for(let l of[WIe,x3,cEn,woe,Qct])a.delete(l);return Object.assign(Object.assign({},e),{requestMethod:"GET",url:o,header:a})}var gEn,bEn=C(()=>{CIe();Roe();Hct();gEn="application/"});function jct(e){let t=Vct(e.next,e.interceptors),[n,r,i]=yEn(e),s=Object.assign(Object.assign({},e.req),{message:Uct(e.req.method.input,e.req.message),signal:n});return t(s).then(o=>(i(),o),r)}function zct(e){let t=Vct(e.next,e.interceptors),[n,r,i]=yEn(e),s=Object.assign(Object.assign({},e.req),{message:KAn(e.req.method.input,e.req.message),signal:n}),o=!1;return n.addEventListener("abort",function(){var a,l;let u=e.req.message[Symbol.asyncIterator]();o||(a=u.throw)===null||a===void 0||a.call(u,this.reason).catch(()=>{}),(l=u.return)===null||l===void 0||l.call(u).catch(()=>{})}),t(s).then(a=>Object.assign(Object.assign({},a),{message:{[Symbol.asyncIterator](){let l=a.message[Symbol.asyncIterator]();return{next(){return l.next().then(u=>(u.done==!0&&(o=!0,i()),u),r)}}}}}),r)}function yEn(e){let{signal:t,cleanup:n}=WAn(e.timeoutMs),r=GAn(e.signal,t);return[r.signal,function(s){let o=nl.from(t.aborted?Fct(t):s);return r.abort(o),n(),Promise.reject(o)},function(){n(),r.abort()}]}var AEn=C(()=>{JAn();Cv();$An();qAn()});var ZIe=C(()=>{Cv();z_();RAn();VAn();QAn()});var EEn,_En=C(()=>{"use strict";Ml();EEn=Zr("ChVnb29nbGUvYXBpL2h0dHAucHJvdG8SCmdvb2dsZS5hcGkiVAoESHR0cBIjCgVydWxlcxgBIAMoCzIULmdvb2dsZS5hcGkuSHR0cFJ1bGUSJwofZnVsbHlfZGVjb2RlX3Jlc2VydmVkX2V4cGFuc2lvbhgCIAEoCCKBAgoISHR0cFJ1bGUSEAoIc2VsZWN0b3IYASABKAkSDQoDZ2V0GAIgASgJSAASDQoDcHV0GAMgASgJSAASDgoEcG9zdBgEIAEoCUgAEhAKBmRlbGV0ZRgFIAEoCUgAEg8KBXBhdGNoGAYgASgJSAASLwoGY3VzdG9tGAggASgLMh0uZ29vZ2xlLmFwaS5DdXN0b21IdHRwUGF0dGVybkgAEgwKBGJvZHkYByABKAkSFQoNcmVzcG9uc2VfYm9keRgMIAEoCRIxChNhZGRpdGlvbmFsX2JpbmRpbmdzGAsgAygLMhQuZ29vZ2xlLmFwaS5IdHRwUnVsZUIJCgdwYXR0ZXJuIi8KEUN1c3RvbUh0dHBQYXR0ZXJuEgwKBGtpbmQYASABKAkSDAoEcGF0aBgCIAEoCUJnCg5jb20uZ29vZ2xlLmFwaUIJSHR0cFByb3RvUAFaQWdvb2dsZS5nb2xhbmcub3JnL2dlbnByb3RvL2dvb2dsZWFwaXMvYXBpL2Fubm90YXRpb25zO2Fubm90YXRpb25zogIER0FQSWIGcHJvdG8z")});var Noe,SEn,jIe=C(()=>{"use strict";Ml();_En();Au();Noe=Zr("Chxnb29nbGUvYXBpL2Fubm90YXRpb25zLnByb3RvEgpnb29nbGUuYXBpOksKBGh0dHASHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxiwyrwiIAEoCzIULmdvb2dsZS5hcGkuSHR0cFJ1bGVSBGh0dHBCbgoOY29tLmdvb2dsZS5hcGlCEEFubm90YXRpb25zUHJvdG9QAVpBZ29vZ2xlLmdvbGFuZy5vcmcvZ2VucHJvdG8vZ29vZ2xlYXBpcy9hcGkvYW5ub3RhdGlvbnM7YW5ub3RhdGlvbnOiAgRHQVBJYgZwcm90bzM",[EEn,PN]),SEn=vct(Noe,0)});var GP,koe=C(()=>{"use strict";Ml();Au();GP=Zr("Chdnb29nbGUvcnBjL3N0YXR1cy5wcm90bxIKZ29vZ2xlLnJwYyJOCgZTdGF0dXMSDAoEY29kZRgBIAEoBRIPCgdtZXNzYWdlGAIgASgJEiUKB2RldGFpbHMYAyADKAsyFC5nb29nbGUucHJvdG9idWYuQW55QmEKDmNvbS5nb29nbGUucnBjQgtTdGF0dXNQcm90b1ABWjdnb29nbGUuZ29sYW5nLm9yZy9nZW5wcm90by9nb29nbGVhcGlzL3JwYy9zdGF0dXM7c3RhdHVz+AEBogIDUlBDYgZwcm90bzM",[E3])});var X_,C3=C(()=>{"use strict";Ml();X_=Zr("CiBiYXNlL2Jsb2JfbmFtZXMvYmxvYl9uYW1lcy5wcm90bxIPYmFzZS5ibG9iX25hbWVzImcKBUJsb2JzEiMKFmJhc2VsaW5lX2NoZWNrcG9pbnRfaWQYASABKAlIAIgBARINCgVhZGRlZBgCIAMoDBIPCgdkZWxldGVkGAMgAygMQhkKF19iYXNlbGluZV9jaGVja3BvaW50X2lkYgZwcm90bzM")});var xEn,vEn,CEn=C(()=>{"use strict";Ml();Au();xEn=Zr("Ci9zZXJ2aWNlcy9iaWxsaW5nL2NlbnRyYWwvYmlsbGluZ19lbnRpdGllcy5wcm90bxIHYmlsbGluZypPCglVc2FnZVVuaXQSFgoSVVNBR0VfVU5JVF9VTktOT1dOEAASFgoSVVNBR0VfVU5JVF9DUkVESVRTEAESEgoOVVNBR0VfVU5JVF9VU0QQAkJQWk5naXRodWIuY29tL2F1Z21lbnRjb2RlL2F1Z21lbnQvc2VydmljZXMvYmlsbGluZy9jZW50cmFsL2JpbGxpbmdfZW50aXRpZXNfcHJvdG9iBnByb3RvMw",[ha]);(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.CREDITS=1]="CREDITS",e[e.USD=2]="USD"})(vEn||(vEn={}))});var OEn,TEn,IEn,wEn,REn,NEn,kEn,MEn=C(()=>{"use strict";Ml();OEn=Zr("Ch1zZXJ2aWNlcy9saWIvcHJvdG8vY2hhdC5wcm90bxIEY2hhdCJ+ChVDaGF0UmVxdWVzdEVkaXRFdmVudHMSLgoLZWRpdF9ldmVudHMYASADKAsyGS5jaGF0LkNoYXRSZXF1ZXN0RmlsZUVkaXQSKgoGc291cmNlGAIgASgOMhUuY2hhdC5FZGl0RXZlbnRTb3VyY2VIAIgBAUIJCgdfc291cmNlIoYBCg9DaGF0UmVxdWVzdEZpbGUSEQoJZmlsZV9kYXRhGAEgASgJEhIKCm1lZGlhX3R5cGUYAiABKAkSFgoJZmlsZV9uYW1lGAMgASgJSACIAQESFwoKcGFnZV9jb3VudBgEIAEoBUgBiAEBQgwKCl9maWxlX25hbWVCDQoLX3BhZ2VfY291bnQitQEKE0NoYXRSZXF1ZXN0RmlsZUVkaXQSDAoEcGF0aBgBIAEoCRIdChBiZWZvcmVfYmxvYl9uYW1lGAIgASgJSACIAQESHAoPYWZ0ZXJfYmxvYl9uYW1lGAMgASgJSAGIAQESKgoFZWRpdHMYBCADKAsyGy5jaGF0LkNoYXRSZXF1ZXN0U2luZ2xlRWRpdEITChFfYmVmb3JlX2Jsb2JfbmFtZUISChBfYWZ0ZXJfYmxvYl9uYW1lIrgBChNDaGF0UmVxdWVzdElkZVN0YXRlEjQKEXdvcmtzcGFjZV9mb2xkZXJzGAEgAygLMhkuY2hhdC5Xb3Jrc3BhY2VGb2xkZXJJbmZvEiMKG3dvcmtzcGFjZV9mb2xkZXJzX3VuY2hhbmdlZBgCIAEoCBIxChBjdXJyZW50X3Rlcm1pbmFsGAMgASgLMhIuY2hhdC5UZXJtaW5hbEluZm9IAIgBAUITChFfY3VycmVudF90ZXJtaW5hbCJNChBDaGF0UmVxdWVzdEltYWdlEhIKCmltYWdlX2RhdGEYASABKAkSJQoGZm9ybWF0GAIgASgOMhUuY2hhdC5JbWFnZUZvcm1hdFR5cGUidQoVQ2hhdFJlcXVlc3RTaW5nbGVFZGl0EhkKEWJlZm9yZV9saW5lX3N0YXJ0GAEgASgNEhMKC2JlZm9yZV90ZXh0GAIgASgJEhgKEGFmdGVyX2xpbmVfc3RhcnQYAyABKA0SEgoKYWZ0ZXJfdGV4dBgEIAEoCSIiCg9DaGF0UmVxdWVzdFRleHQSDwoHY29udGVudBgBIAEoCSLxAgoVQ2hhdFJlcXVlc3RUb29sUmVzdWx0EhMKC3Rvb2xfdXNlX2lkGAEgASgJEg8KB2NvbnRlbnQYAiABKAkSEAoIaXNfZXJyb3IYAyABKAgSFwoKcmVxdWVzdF9pZBgEIAEoCUgAiAEBEjIKDWNvbnRlbnRfbm9kZXMYBSADKAsyGy5jaGF0LlRvb2xSZXN1bHRDb250ZW50Tm9kZRIYCgtkdXJhdGlvbl9tcxgGIAEoA0gBiAEBEhoKDXN0YXJ0X3RpbWVfbXMYByABKANIAogBARI7CghtZXRhZGF0YRgIIAMoCzIpLmNoYXQuQ2hhdFJlcXVlc3RUb29sUmVzdWx0Lk1ldGFkYXRhRW50cnkaLwoNTWV0YWRhdGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBQg0KC19yZXF1ZXN0X2lkQg4KDF9kdXJhdGlvbl9tc0IQCg5fc3RhcnRfdGltZV9tcyLaAQoWQ2hhdFJlc3VsdE5vZGVNZXRhZGF0YRIWCglvcGVuYWlfaWQYASABKAlIAIgBARIWCglnb29nbGVfdHMYAiABKAxIAYgBARIVCghwcm92aWRlchgDIAEoCUgCiAEBEhIKBXBoYXNlGAQgASgJSAOIAQESHQoQc291cmNlX2V2ZW50X3NlcRgFIAEoA0gEiAEBQgwKCl9vcGVuYWlfaWRCDAoKX2dvb2dsZV90c0ILCglfcHJvdmlkZXJCCAoGX3BoYXNlQhMKEV9zb3VyY2VfZXZlbnRfc2VxItoBChJDaGF0UmVzdWx0VGhpbmtpbmcSFAoHc3VtbWFyeRgBIAEoCUgAiAEBEh4KEWVuY3J5cHRlZF9jb250ZW50GAIgASgJSAGIAQESFAoHY29udGVudBgDIAEoCUgCiAEBEikKHG9wZW5haV9yZXNwb25zZXNfYXBpX2l0ZW1faWQYBCABKAlIA4gBAUIKCghfc3VtbWFyeUIUChJfZW5jcnlwdGVkX2NvbnRlbnRCCgoIX2NvbnRlbnRCHwodX29wZW5haV9yZXNwb25zZXNfYXBpX2l0ZW1faWQi4AUKFENoYXRSZXN1bHRUb2tlblVzYWdlEhkKDGlucHV0X3Rva2VucxgBIAEoBUgAiAEBEhoKDW91dHB1dF90b2tlbnMYAiABKAVIAYgBARIkChdjYWNoZV9yZWFkX2lucHV0X3Rva2VucxgDIAEoBUgCiAEBEigKG2NhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucxgEIAEoBUgDiAEBEiEKFHN5c3RlbV9wcm9tcHRfdG9rZW5zGAUgASgFSASIAQESIAoTY2hhdF9oaXN0b3J5X3Rva2VucxgGIAEoBUgFiAEBEiMKFmN1cnJlbnRfbWVzc2FnZV90b2tlbnMYByABKAVIBogBARIfChJtYXhfY29udGV4dF90b2tlbnMYCCABKAVIB4gBARIkChd0b29sX2RlZmluaXRpb25zX3Rva2VucxgJIAEoBUgIiAEBEh8KEnRvb2xfcmVzdWx0X3Rva2VucxgKIAEoBUgJiAEBEiYKGWFzc2lzdGFudF9yZXNwb25zZV90b2tlbnMYCyABKAVICogBARIeChFtYXhfb3V0cHV0X3Rva2VucxgMIAEoBUgLiAEBQg8KDV9pbnB1dF90b2tlbnNCEAoOX291dHB1dF90b2tlbnNCGgoYX2NhY2hlX3JlYWRfaW5wdXRfdG9rZW5zQh4KHF9jYWNoZV9jcmVhdGlvbl9pbnB1dF90b2tlbnNCFwoVX3N5c3RlbV9wcm9tcHRfdG9rZW5zQhYKFF9jaGF0X2hpc3RvcnlfdG9rZW5zQhkKF19jdXJyZW50X21lc3NhZ2VfdG9rZW5zQhUKE19tYXhfY29udGV4dF90b2tlbnNCGgoYX3Rvb2xfZGVmaW5pdGlvbnNfdG9rZW5zQhUKE190b29sX3Jlc3VsdF90b2tlbnNCHAoaX2Fzc2lzdGFudF9yZXNwb25zZV90b2tlbnNCFAoSX21heF9vdXRwdXRfdG9rZW5zImMKEUNoYXRSZXN1bHRUb29sVXNlEhMKC3Rvb2xfdXNlX2lkGAEgASgJEhEKCXRvb2xfbmFtZRgCIAEoCRISCgppbnB1dF9qc29uGAMgASgJEhIKCmlzX3BhcnRpYWwYBCABKAgiRgoMVGVybWluYWxJbmZvEhMKC3Rlcm1pbmFsX2lkGAEgASgNEiEKGWN1cnJlbnRfd29ya2luZ19kaXJlY3RvcnkYAiABKAkiTgoOVG9vbERlZmluaXRpb24SDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIZChFpbnB1dF9zY2hlbWFfanNvbhgDIAEoCSK4AQoVVG9vbFJlc3VsdENvbnRlbnROb2RlEi0KBHR5cGUYASABKA4yHy5jaGF0LlRvb2xSZXN1bHRDb250ZW50Tm9kZVR5cGUSGQoMdGV4dF9jb250ZW50GAIgASgJSACIAQESMgoNaW1hZ2VfY29udGVudBgDIAEoCzIWLmNoYXQuQ2hhdFJlcXVlc3RJbWFnZUgBiAEBQg8KDV90ZXh0X2NvbnRlbnRCEAoOX2ltYWdlX2NvbnRlbnQiQwoTV29ya3NwYWNlRm9sZGVySW5mbxIXCg9yZXBvc2l0b3J5X3Jvb3QYASABKAkSEwoLZm9sZGVyX3Jvb3QYAiABKAkqqQEKE0NoYXRSZXF1ZXN0Tm9kZVR5cGUSCAoEVEVYVBAAEg8KC1RPT0xfUkVTVUxUEAESCQoFSU1BR0UQAhIMCghJTUFHRV9JRBADEg0KCUlERV9TVEFURRAEEg8KC0VESVRfRVZFTlRTEAUSEgoOQ0hFQ0tQT0lOVF9SRUYQBhIICgRGSUxFEAgSCwoHRklMRV9JRBAJEhMKD0hJU1RPUllfU1VNTUFSWRAKKusBChJDaGF0UmVzdWx0Tm9kZVR5cGUSEAoMUkFXX1JFU1BPTlNFEAASFwoTU1VHR0VTVEVEX1FVRVNUSU9OUxABEhYKEk1BSU5fVEVYVF9GSU5JU0hFRBACEhkKFVdPUktTUEFDRV9GSUxFX0NIVU5LUxADEhQKEFJFTEVWQU5UX1NPVVJDRVMQBBIMCghUT09MX1VTRRAFEhIKDlRPT0xfVVNFX1NUQVJUEAcSDAoIVEhJTktJTkcQCBIUChBCSUxMSU5HX01FVEFEQVRBEAkSDwoLVE9LRU5fVVNBR0UQCiIECAYQBiIECAsQCyquAQoOQ2hhdFN0b3BSZWFzb24SFgoSUkVBU09OX1VOU1BFQ0lGSUVEEAASDAoIRU5EX1RVUk4QARIOCgpNQVhfVE9LRU5TEAISFgoSVE9PTF9VU0VfUkVRVUVTVEVEEAMSCgoGU0FGRVRZEAQSDgoKUkVDSVRBVElPThAFEhsKF01BTEZPUk1FRF9GVU5DVElPTl9DQUxMEAYSFQoRU1RPUF9SRUFTT05fRVJST1IQBypICg9FZGl0RXZlbnRTb3VyY2USDwoLVU5TUEVDSUZJRUQQABINCglVU0VSX0VESVQQARIVChFDSEVDS1BPSU5UX1JFVkVSVBACKlUKD0ltYWdlRm9ybWF0VHlwZRIcChhJTUFHRV9GT1JNQVRfVU5TUEVDSUZJRUQQABIHCgNQTkcQARIICgRKUEVHEAISBwoDR0lGEAMSCAoEV0VCUBAEKl4KGVRvb2xSZXN1bHRDb250ZW50Tm9kZVR5cGUSHAoYQ09OVEVOVF9UWVBFX1VOU1BFQ0lGSUVEEAASEAoMQ09OVEVOVF9URVhUEAESEQoNQ09OVEVOVF9JTUFHRRACQjhaNmdpdGh1Yi5jb20vYXVnbWVudGNvZGUvYXVnbWVudC9zZXJ2aWNlcy9saWIvcHJvdG8vY2hhdGIGcHJvdG8z");(function(e){e[e.TEXT=0]="TEXT",e[e.TOOL_RESULT=1]="TOOL_RESULT",e[e.IMAGE=2]="IMAGE",e[e.IMAGE_ID=3]="IMAGE_ID",e[e.IDE_STATE=4]="IDE_STATE",e[e.EDIT_EVENTS=5]="EDIT_EVENTS",e[e.CHECKPOINT_REF=6]="CHECKPOINT_REF",e[e.FILE=8]="FILE",e[e.FILE_ID=9]="FILE_ID",e[e.HISTORY_SUMMARY=10]="HISTORY_SUMMARY"})(TEn||(TEn={}));(function(e){e[e.RAW_RESPONSE=0]="RAW_RESPONSE",e[e.SUGGESTED_QUESTIONS=1]="SUGGESTED_QUESTIONS",e[e.MAIN_TEXT_FINISHED=2]="MAIN_TEXT_FINISHED",e[e.WORKSPACE_FILE_CHUNKS=3]="WORKSPACE_FILE_CHUNKS",e[e.RELEVANT_SOURCES=4]="RELEVANT_SOURCES",e[e.TOOL_USE=5]="TOOL_USE",e[e.TOOL_USE_START=7]="TOOL_USE_START",e[e.THINKING=8]="THINKING",e[e.BILLING_METADATA=9]="BILLING_METADATA",e[e.TOKEN_USAGE=10]="TOKEN_USAGE"})(IEn||(IEn={}));(function(e){e[e.REASON_UNSPECIFIED=0]="REASON_UNSPECIFIED",e[e.END_TURN=1]="END_TURN",e[e.MAX_TOKENS=2]="MAX_TOKENS",e[e.TOOL_USE_REQUESTED=3]="TOOL_USE_REQUESTED",e[e.SAFETY=4]="SAFETY",e[e.RECITATION=5]="RECITATION",e[e.MALFORMED_FUNCTION_CALL=6]="MALFORMED_FUNCTION_CALL",e[e.STOP_REASON_ERROR=7]="STOP_REASON_ERROR"})(wEn||(wEn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.USER_EDIT=1]="USER_EDIT",e[e.CHECKPOINT_REVERT=2]="CHECKPOINT_REVERT"})(REn||(REn={}));(function(e){e[e.IMAGE_FORMAT_UNSPECIFIED=0]="IMAGE_FORMAT_UNSPECIFIED",e[e.PNG=1]="PNG",e[e.JPEG=2]="JPEG",e[e.GIF=3]="GIF",e[e.WEBP=4]="WEBP"})(NEn||(NEn={}));(function(e){e[e.CONTENT_TYPE_UNSPECIFIED=0]="CONTENT_TYPE_UNSPECIFIED",e[e.CONTENT_TEXT=1]="CONTENT_TEXT",e[e.CONTENT_IMAGE=2]="CONTENT_IMAGE"})(kEn||(kEn={}))});var WP,PEn,DEn,BEn,LEn,FEn,UEn,VEn,Ooe=C(()=>{"use strict";Ml();C3();Au();koe();CEn();MEn();WP=Zr("Ch1zZXJ2aWNlcy9jaGF0X2hvc3QvY2hhdC5wcm90bxIEY2hhdCJECg9CcmluZ1lvdXJPd25LZXkSJAoIcHJvdmlkZXIYASABKA4yEi5jaGF0LkJZT0tQcm92aWRlchILCgNrZXkYAiABKAki6AMKEENoYW5nZWRGaWxlU3RhdHMSNwoQYWRkZWRfZmlsZV9zdGF0cxgBIAEoCzIdLmNoYXQuUGVyVHlwZUNoYW5nZWRGaWxlU3RhdHMSOAoRYnJva2VuX2ZpbGVfc3RhdHMYAiABKAsyHS5jaGF0LlBlclR5cGVDaGFuZ2VkRmlsZVN0YXRzEjgKEWNvcGllZF9maWxlX3N0YXRzGAMgASgLMh0uY2hhdC5QZXJUeXBlQ2hhbmdlZEZpbGVTdGF0cxI5ChJkZWxldGVkX2ZpbGVfc3RhdHMYBCABKAsyHS5jaGF0LlBlclR5cGVDaGFuZ2VkRmlsZVN0YXRzEjoKE21vZGlmaWVkX2ZpbGVfc3RhdHMYBSABKAsyHS5jaGF0LlBlclR5cGVDaGFuZ2VkRmlsZVN0YXRzEjkKEnJlbmFtZWRfZmlsZV9zdGF0cxgGIAEoCzIdLmNoYXQuUGVyVHlwZUNoYW5nZWRGaWxlU3RhdHMSOgoTdW5tZXJnZWRfZmlsZV9zdGF0cxgHIAEoCzIdLmNoYXQuUGVyVHlwZUNoYW5nZWRGaWxlU3RhdHMSOQoSdW5rbm93bl9maWxlX3N0YXRzGAggASgLMh0uY2hhdC5QZXJUeXBlQ2hhbmdlZEZpbGVTdGF0cyLxAQoZQ2hhdEZlYXR1cmVEZXRlY3Rpb25GbGFncxIlChhzdXBwb3J0X3JlbGV2YW50X3NvdXJjZXMYAyABKAhIAIgBARIjChZzdXBwb3J0X3Rvb2xfdXNlX3N0YXJ0GAQgASgISAGIAQESJgoZc3VwcG9ydF9wYXJhbGxlbF90b29sX3VzZRgFIAEoCEgCiAEBQhsKGV9zdXBwb3J0X3JlbGV2YW50X3NvdXJjZXNCGQoXX3N1cHBvcnRfdG9vbF91c2Vfc3RhcnRCHAoaX3N1cHBvcnRfcGFyYWxsZWxfdG9vbF91c2VKBAgBEAJKBAgCEAMiywYKE0NoYXRIaXN0b3J5TWV0YWRhdGESJgoJY2hhdF9tb2RlGAEgASgOMg4uY2hhdC5DaGF0TW9kZUgAiAEBEjMKCmNyZWF0ZWRfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESFgoJaXNfc2lsZW50GAMgASgISAKIAQESGgoNaXNfc3VjY2Vzc2Z1bBgEIAEoCEgDiAEBEhcKCm1vZGVsX25hbWUYBSABKAlIBIgBARIXCgpyZXF1ZXN0X2lkGAYgASgJSAWIAQESFAoHdHVybl9pZBgHIAEoCUgGiAEBEiMKFnBhcmVudF9jb252ZXJzYXRpb25faWQYCCABKAlIB4gBARIhChRyb290X2NvbnZlcnNhdGlvbl9pZBgJIAEoCUgIiAEBEigKG3BlcnNpc3RlZF90aHJvdWdoX2V2ZW50X3NlcRgKIAEoA0gJiAEBEhcKCmlzX3BhcnRpYWwYCyABKAhICogBARIcCg9zdWJzY3JpcHRpb25faWQYDCABKAlIC4gBARIbCg5zZW5kZXJfdXNlcl9pZBgNIAEoCUgMiAEBEjMKE3Zmc19maWxlX3JlZmVyZW5jZXMYDiADKAsyFi5jaGF0LlZGU0ZpbGVSZWZlcmVuY2USMwoTbWNwX3Rvb2xfcmVmZXJlbmNlcxgPIAMoCzIWLmNoYXQuTUNQVG9vbFJlZmVyZW5jZRIqCgtzaWxlbnRfdHlwZRgQIAEoDjIQLmNoYXQuU2lsZW50VHlwZUgNiAEBQgwKCl9jaGF0X21vZGVCDQoLX2NyZWF0ZWRfYXRCDAoKX2lzX3NpbGVudEIQCg5faXNfc3VjY2Vzc2Z1bEINCgtfbW9kZWxfbmFtZUINCgtfcmVxdWVzdF9pZEIKCghfdHVybl9pZEIZChdfcGFyZW50X2NvbnZlcnNhdGlvbl9pZEIXChVfcm9vdF9jb252ZXJzYXRpb25faWRCHgocX3BlcnNpc3RlZF90aHJvdWdoX2V2ZW50X3NlcUINCgtfaXNfcGFydGlhbEISChBfc3Vic2NyaXB0aW9uX2lkQhEKD19zZW5kZXJfdXNlcl9pZEIOCgxfc2lsZW50X3R5cGUiSwoMQ2hhdFBvc2l0aW9uEhQKDHByZWZpeF9iZWdpbhgBIAEoBRISCgpzdWZmaXhfZW5kGAIgASgFEhEKCWJsb2JfbmFtZRgDIAEoCSJfCg9DaGF0UmVwbGFjZVRleHQSGAoQcmVwbGFjZW1lbnRfdGV4dBgBIAEoCRIZChFzdGFydF9saW5lX251bWJlchgCIAEoBRIXCg9lbmRfbGluZV9udW1iZXIYAyABKAUi/BUKC0NoYXRSZXF1ZXN0EhIKCm1vZGVsX25hbWUYASABKAkSDAoEcGF0aBgCIAEoCRIOCgZwcmVmaXgYAyABKAkSFQoNc2VsZWN0ZWRfY29kZRgEIAEoCRIOCgZzdWZmaXgYBSABKAkSDwoHbWVzc2FnZRgGIAEoCRIkCgxjaGF0X2hpc3RvcnkYByADKAsyDi5jaGF0LkV4Y2hhbmdlEiQKCHBvc2l0aW9uGAggASgLMhIuY2hhdC5DaGF0UG9zaXRpb24SDAoEbGFuZxgKIAEoCRITCgtzZXF1ZW5jZV9pZBgLIAEoDRIlCgVibG9icxgMIAMoCzIWLmJhc2UuYmxvYl9uYW1lcy5CbG9icxIkChxlbmFibGVfcHJlZmVyZW5jZV9jb2xsZWN0aW9uGA0gASgIEhkKEXVzZXJfZ3VpZGVkX2Jsb2JzGA4gAygJEhsKE2V4dGVybmFsX3NvdXJjZV9pZHMYECADKAkSKAogY29udGV4dF9jb2RlX2V4Y2hhbmdlX3JlcXVlc3RfaWQYDyABKAkSJQodZGlzYWJsZV9hdXRvX2V4dGVybmFsX3NvdXJjZXMYESABKAgSHQoVcHJvbXB0X2Zvcm1hdHRlcl9uYW1lGBIgASgJEjcKEmNoYW5nZWRfZmlsZV9zdGF0cxgTIAEoCzIWLmNoYXQuQ2hhbmdlZEZpbGVTdGF0c0gAiAEBEhEKBGRpZmYYFCABKAlIAYgBARIgChhyZWxldmFudF9jb21taXRfbWVzc2FnZXMYFSADKAkSHwoXZXhhbXBsZV9jb21taXRfbWVzc2FnZXMYFiADKAkSHAoPdXNlcl9ndWlkZWxpbmVzGBcgASgJSAKIAQESIQoUd29ya3NwYWNlX2d1aWRlbGluZXMYGCABKAlIA4gBARJFChdmZWF0dXJlX2RldGVjdGlvbl9mbGFncxgZIAEoCzIfLmNoYXQuQ2hhdEZlYXR1cmVEZXRlY3Rpb25GbGFnc0gEiAEBEi4KEHRvb2xfZGVmaW5pdGlvbnMYGiADKAsyFC5jaGF0LlRvb2xEZWZpbml0aW9uEiQKBW5vZGVzGBsgAygLMhUuY2hhdC5DaGF0UmVxdWVzdE5vZGUSLAoMcGVyc29uYV90eXBlGB0gASgOMhEuY2hhdC5QZXJzb25hVHlwZUgFiAEBEhUKDWlzX3N1c3BpY2lvdXMYHiABKAgSGQoFcnVsZXMYHyADKAsyCi5jaGF0LlJ1bGUSDgoGc2lsZW50GCAgASgIEhgKC2FnZW50X3Rhc2tzGCEgASgJSAaIAQESJQoLY2xpZW50X3R5cGUYIiABKA4yEC5jaGF0LkNsaWVudFR5cGUSJgoJY2hhdF9tb2RlGCMgASgOMg4uY2hhdC5DaGF0TW9kZUgHiAEBEjsKFHRoaXJkX3BhcnR5X292ZXJyaWRlGCQgASgLMhguY2hhdC5UaGlyZFBhcnR5T3ZlcnJpZGVICIgBARIcCg9jb252ZXJzYXRpb25faWQYJSABKAlICYgBARIqCgtzaWxlbnRfdHlwZRgmIAEoDjIQLmNoYXQuU2lsZW50VHlwZUgKiAEBEiMKFnN5c3RlbV9wcm9tcHRfb3ZlcnJpZGUYJyABKAlIC4gBARJBChpzeXN0ZW1fcHJvbXB0X3JlcGxhY2VtZW50cxgoIAMoCzIdLmNoYXQuU3lzdGVtUHJvbXB0UmVwbGFjZW1lbnQSGwoGc2tpbGxzGCogAygLMgsuY2hhdC5Ta2lsbBIhChRzeXN0ZW1fcHJvbXB0X2FwcGVuZBgrIAEoCUgMiAEBEi8KImNvbnN1bWVfY3JlZGl0c19vbl9zaWxlbnRfcmVxdWVzdHMYLCABKAhIDYgBARIUCgd0dXJuX2lkGC0gASgJSA6IAQESIwoWcGFyZW50X2NvbnZlcnNhdGlvbl9pZBguIAEoCUgPiAEBEiEKFHJvb3RfY29udmVyc2F0aW9uX2lkGC8gASgJSBCIAQESHQoQZGlzYWJsZV90aGlua2luZxgwIAEoCEgRiAEBEjYKEmJyaW5nX3lvdXJfb3duX2tleRgxIAEoCzIVLmNoYXQuQnJpbmdZb3VyT3duS2V5SBKIAQESIQoUcmVxdWVzdGVkX21vZGVsX25hbWUYMiABKAlIE4gBARIcCg9zdWJzY3JpcHRpb25faWQYMyABKAlIFIgBARIyCg9jbGllbnRfbWV0YWRhdGEYNCABKAsyFC5jaGF0LkNsaWVudE1ldGFkYXRhSBWIAQESJgoZaW50ZXJuYWxfYWdlbnRfcGVyc29uYV9pZBg1IAEoCUgWiAEBEhwKD3BlcnNvbmFfcHJvbXB0cxg2IAEoCUgXiAEBEicKGnNraXBfY29udmVyc2F0aW9uX2luZGV4aW5nGDcgASgISBiIAQESGwoOc2VuZGVyX3VzZXJfaWQYOCABKAlIGYgBARIeChFldV9pbmZlcmVuY2Vfb25seRg5IAEoCEgaiAEBEkoKHGN1c3RvbV9idXRsZXJfcm91dGluZ19jb25maWcYOiABKAsyHy5jaGF0LkN1c3RvbUJ1dGxlclJvdXRpbmdDb25maWdIG4gBARIzChN2ZnNfZmlsZV9yZWZlcmVuY2VzGDsgAygLMhYuY2hhdC5WRlNGaWxlUmVmZXJlbmNlEjMKE21jcF90b29sX3JlZmVyZW5jZXMYPCADKAsyFi5jaGF0Lk1DUFRvb2xSZWZlcmVuY2USHQoQcmVhc29uaW5nX2VmZm9ydBg9IAEoCUgciAEBEhYKCWV4cGVydF9pZBg+IAEoCUgdiAEBQhUKE19jaGFuZ2VkX2ZpbGVfc3RhdHNCBwoFX2RpZmZCEgoQX3VzZXJfZ3VpZGVsaW5lc0IXChVfd29ya3NwYWNlX2d1aWRlbGluZXNCGgoYX2ZlYXR1cmVfZGV0ZWN0aW9uX2ZsYWdzQg8KDV9wZXJzb25hX3R5cGVCDgoMX2FnZW50X3Rhc2tzQgwKCl9jaGF0X21vZGVCFwoVX3RoaXJkX3BhcnR5X292ZXJyaWRlQhIKEF9jb252ZXJzYXRpb25faWRCDgoMX3NpbGVudF90eXBlQhkKF19zeXN0ZW1fcHJvbXB0X292ZXJyaWRlQhcKFV9zeXN0ZW1fcHJvbXB0X2FwcGVuZEIlCiNfY29uc3VtZV9jcmVkaXRzX29uX3NpbGVudF9yZXF1ZXN0c0IKCghfdHVybl9pZEIZChdfcGFyZW50X2NvbnZlcnNhdGlvbl9pZEIXChVfcm9vdF9jb252ZXJzYXRpb25faWRCEwoRX2Rpc2FibGVfdGhpbmtpbmdCFQoTX2JyaW5nX3lvdXJfb3duX2tleUIXChVfcmVxdWVzdGVkX21vZGVsX25hbWVCEgoQX3N1YnNjcmlwdGlvbl9pZEISChBfY2xpZW50X21ldGFkYXRhQhwKGl9pbnRlcm5hbF9hZ2VudF9wZXJzb25hX2lkQhIKEF9wZXJzb25hX3Byb21wdHNCHQobX3NraXBfY29udmVyc2F0aW9uX2luZGV4aW5nQhEKD19zZW5kZXJfdXNlcl9pZEIUChJfZXVfaW5mZXJlbmNlX29ubHlCHwodX2N1c3RvbV9idXRsZXJfcm91dGluZ19jb25maWdCEwoRX3JlYXNvbmluZ19lZmZvcnRCDAoKX2V4cGVydF9pZEoECAkQCkoECBwQHUoECCkQKlIJY2FudmFzX2lkIvMDCg9DaGF0UmVxdWVzdE5vZGUSCgoCaWQYASABKAUSJwoEdHlwZRgCIAEoDjIZLmNoYXQuQ2hhdFJlcXVlc3ROb2RlVHlwZRItCgl0ZXh0X25vZGUYAyABKAsyFS5jaGF0LkNoYXRSZXF1ZXN0VGV4dEgAiAEBEjoKEHRvb2xfcmVzdWx0X25vZGUYBCABKAsyGy5jaGF0LkNoYXRSZXF1ZXN0VG9vbFJlc3VsdEgBiAEBEi8KCmltYWdlX25vZGUYBSABKAsyFi5jaGF0LkNoYXRSZXF1ZXN0SW1hZ2VIAogBARI2Cg5pZGVfc3RhdGVfbm9kZRgHIAEoCzIZLmNoYXQuQ2hhdFJlcXVlc3RJZGVTdGF0ZUgDiAEBEjoKEGVkaXRfZXZlbnRzX25vZGUYCCABKAsyGy5jaGF0LkNoYXRSZXF1ZXN0RWRpdEV2ZW50c0gEiAEBEi0KCWZpbGVfbm9kZRgJIAEoCzIVLmNoYXQuQ2hhdFJlcXVlc3RGaWxlSAWIAQFCDAoKX3RleHRfbm9kZUITChFfdG9vbF9yZXN1bHRfbm9kZUINCgtfaW1hZ2Vfbm9kZUIRCg9faWRlX3N0YXRlX25vZGVCEwoRX2VkaXRfZXZlbnRzX25vZGVCDAoKX2ZpbGVfbm9kZUoECAYQByLEBAoMQ2hhdFJlc3BvbnNlEgwKBHRleHQYASABKAkSGgoSdW5rbm93bl9ibG9iX25hbWVzGAIgAygJEhwKFGNoZWNrcG9pbnRfbm90X2ZvdW5kGAMgASgIEjcKFXdvcmtzcGFjZV9maWxlX2NodW5rcxgEIAMoCzIYLmNoYXQuV29ya3NwYWNlRmlsZUNodW5rEkcKHWluY29ycG9yYXRlZF9leHRlcm5hbF9zb3VyY2VzGAUgAygLMiAuY2hhdC5JbmNvcnBvcmF0ZWRFeHRlcm5hbFNvdXJjZRI5ChVyZXBsYWNlX3RleHRfcmVzcG9uc2UYBiABKAsyFS5jaGF0LkNoYXRSZXBsYWNlVGV4dEgAiAEBEiMKBW5vZGVzGAcgAygLMhQuY2hhdC5DaGF0UmVzdWx0Tm9kZRI2CgtzdGF0dXNfY29kZRgIIAEoDjIcLmNoYXQuQ2hhdFJlc3BvbnNlU3RhdHVzQ29kZUgBiAEBEi4KC3N0b3BfcmVhc29uGAkgASgOMhQuY2hhdC5DaGF0U3RvcFJlYXNvbkgCiAEBEhoKDWVycm9yX21lc3NhZ2UYCiABKAlIA4gBARIhChRlZmZlY3RpdmVfbW9kZWxfbmFtZRgLIAEoCUgEiAEBQhgKFl9yZXBsYWNlX3RleHRfcmVzcG9uc2VCDgoMX3N0YXR1c19jb2RlQg4KDF9zdG9wX3JlYXNvbkIQCg5fZXJyb3JfbWVzc2FnZUIXChVfZWZmZWN0aXZlX21vZGVsX25hbWUixgIKGUNoYXRSZXN1bHRCaWxsaW5nTWV0YWRhdGESGwoOdHJhbnNhY3Rpb25faWQYASABKAlIAIgBARIYChBjcmVkaXRzX2NvbnN1bWVkGAIgASgFEhAKCGNvc3RfdXNkGAcgASgJEiYKCnVzYWdlX3VuaXQYCCABKA4yEi5iaWxsaW5nLlVzYWdlVW5pdBIhChRlZmZlY3RpdmVfbW9kZWxfbmFtZRgJIAEoCUgBiAEBQhEKD190cmFuc2FjdGlvbl9pZEIXChVfZWZmZWN0aXZlX21vZGVsX25hbWVKBAgDEARKBAgEEAVKBAgFEAZKBAgGEAdSDGlucHV0X3Rva2Vuc1INb3V0cHV0X3Rva2Vuc1IXY2FjaGVfcmVhZF9pbnB1dF90b2tlbnNSG2NhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyLuAwoOQ2hhdFJlc3VsdE5vZGUSCgoCaWQYASABKAUSJgoEdHlwZRgCIAEoDjIYLmNoYXQuQ2hhdFJlc3VsdE5vZGVUeXBlEg8KB2NvbnRlbnQYAyABKAkSLgoIdG9vbF91c2UYBCABKAsyFy5jaGF0LkNoYXRSZXN1bHRUb29sVXNlSACIAQESLwoIdGhpbmtpbmcYBSABKAsyGC5jaGF0LkNoYXRSZXN1bHRUaGlua2luZ0gBiAEBEj4KEGJpbGxpbmdfbWV0YWRhdGEYBiABKAsyHy5jaGF0LkNoYXRSZXN1bHRCaWxsaW5nTWV0YWRhdGFIAogBARI0Cgt0b2tlbl91c2FnZRgIIAEoCzIaLmNoYXQuQ2hhdFJlc3VsdFRva2VuVXNhZ2VIA4gBARIzCghtZXRhZGF0YRgHIAEoCzIcLmNoYXQuQ2hhdFJlc3VsdE5vZGVNZXRhZGF0YUgEiAEBEhkKDHRpbWVzdGFtcF9tcxgKIAEoBEgFiAEBQgsKCV90b29sX3VzZUILCglfdGhpbmtpbmdCEwoRX2JpbGxpbmdfbWV0YWRhdGFCDgoMX3Rva2VuX3VzYWdlQgsKCV9tZXRhZGF0YUIPCg1fdGltZXN0YW1wX21zSgQICRAKUg1jb250ZXh0X3VzYWdlIr4BCg5DbGllbnRNZXRhZGF0YRITCgtjbGllbnRfbmFtZRgBIAEoCRIWCg5jbGllbnRfdmVyc2lvbhgCIAEoCRIWCg5jbGllbnRfc3VidHlwZRgDIAEoCRIXCg9hY3BfY2xpZW50X25hbWUYBCABKAkSGgoSYWNwX2NsaWVudF92ZXJzaW9uGAUgASgJEhIKCnVzZXJfYWdlbnQYBiABKAkSEAoIcGxhdGZvcm0YByABKAkSDAoEYXJjaBgIIAEoCSLDAgoZQ3VzdG9tQnV0bGVyUm91dGluZ0NvbmZpZxIVCg1kZWZhdWx0X21vZGVsGAEgASgJEkQKC3RpZXJfbW9kZWxzGAIgAygLMi8uY2hhdC5DdXN0b21CdXRsZXJSb3V0aW5nQ29uZmlnLlRpZXJNb2RlbHNFbnRyeRJZChZ0aWVyX3JlYXNvbmluZ19lZmZvcnRzGAMgAygLMjkuY2hhdC5DdXN0b21CdXRsZXJSb3V0aW5nQ29uZmlnLlRpZXJSZWFzb25pbmdFZmZvcnRzRW50cnkaMQoPVGllck1vZGVsc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaOwoZVGllclJlYXNvbmluZ0VmZm9ydHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIsUCCghFeGNoYW5nZRIXCg9yZXF1ZXN0X21lc3NhZ2UYASABKAkSGgoNcmVzcG9uc2VfdGV4dBgCIAEoCUgAiAEBEhcKCnJlcXVlc3RfaWQYAyABKAlIAYgBARIsCg1yZXF1ZXN0X25vZGVzGAQgAygLMhUuY2hhdC5DaGF0UmVxdWVzdE5vZGUSLAoOcmVzcG9uc2Vfbm9kZXMYBSADKAsyFC5jaGF0LkNoYXRSZXN1bHROb2RlEjMKCmNyZWF0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESGQoMY29tcG9zaXRlX2lkGAcgASgJSAOIAQFCEAoOX3Jlc3BvbnNlX3RleHRCDQoLX3JlcXVlc3RfaWRCDQoLX2NyZWF0ZWRfYXRCDwoNX2NvbXBvc2l0ZV9pZCJlChRFeGNoYW5nZVdpdGhNZXRhZGF0YRIgCghleGNoYW5nZRgBIAEoCzIOLmNoYXQuRXhjaGFuZ2USKwoIbWV0YWRhdGEYAiABKAsyGS5jaGF0LkNoYXRIaXN0b3J5TWV0YWRhdGEiYAoaSW5jb3Jwb3JhdGVkRXh0ZXJuYWxTb3VyY2USEwoLc291cmNlX25hbWUYASABKAkSEQoEbGluaxgCIAEoCUgAiAEBEhEKCXNvdXJjZV9pZBgDIAEoCUIHCgVfbGluayJLChBNQ1BUb29sUmVmZXJlbmNlEhEKCXNlcnZlcl9pZBgBIAEoCRIWCgl0b29sX25hbWUYAiABKAlIAIgBAUIMCgpfdG9vbF9uYW1lIm8KElBlckZpbGVDaGFuZ2VTdGF0cxIRCglmaWxlX3BhdGgYASABKAkSFwoPaW5zZXJ0aW9uX2NvdW50GAIgASgFEhYKDmRlbGV0aW9uX2NvdW50GAMgASgFEhUKDW9sZF9maWxlX3BhdGgYBCABKAkisQEKF1BlclR5cGVDaGFuZ2VkRmlsZVN0YXRzEhoKEmNoYW5nZWRfZmlsZV9jb3VudBgBIAEoBRI8ChpwZXJfZmlsZV9jaGFuZ2Vfc3RhdHNfaGVhZBgCIAMoCzIYLmNoYXQuUGVyRmlsZUNoYW5nZVN0YXRzEjwKGnBlcl9maWxlX2NoYW5nZV9zdGF0c190YWlsGAMgAygLMhguY2hhdC5QZXJGaWxlQ2hhbmdlU3RhdHMibQoEUnVsZRIcCgR0eXBlGAEgASgOMg4uY2hhdC5SdWxlVHlwZRIMCgRwYXRoGAIgASgJEg8KB2NvbnRlbnQYAyABKAkSGAoLZGVzY3JpcHRpb24YBCABKAlIAIgBAUIOCgxfZGVzY3JpcHRpb24iPAoFU2tpbGwSDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIQCghsb2NhdGlvbhgDIAEoCSI6ChdTeXN0ZW1Qcm9tcHRSZXBsYWNlbWVudBIOCgZzZWFyY2gYASABKAkSDwoHcmVwbGFjZRgCIAEoCSKUAQoSVGhpcmRQYXJ0eU92ZXJyaWRlEiAKE3Byb3ZpZGVyX21vZGVsX25hbWUYASABKAlIAIgBARIUCgdhcGlfa2V5GAIgASgJSAGIAQESFQoIYmFzZV91cmwYAyABKAlIAogBAUIWChRfcHJvdmlkZXJfbW9kZWxfbmFtZUIKCghfYXBpX2tleUILCglfYmFzZV91cmwiagoQVkZTRmlsZVJlZmVyZW5jZRIPCgdmaWxlX2lkGAEgASgJEhUKDWZpbGVzeXN0ZW1faWQYAiABKAkSDAoEcGF0aBgDIAEoCRIQCghzcGFjZV9pZBgEIAEoCRIOCgZpc19kaXIYBSABKAgiTQoSV29ya3NwYWNlRmlsZUNodW5rEhIKCmNoYXJfc3RhcnQYASABKAUSEAoIY2hhcl9lbmQYAiABKAUSEQoJYmxvYl9uYW1lGAMgASgJKqICCgxCWU9LUHJvdmlkZXISFAoQUFJPVklERVJfVU5LTk9XThAAEhYKElBST1ZJREVSX0FOVEhST1BJQxABEhMKD1BST1ZJREVSX09QRU5BSRACEhQKEFBST1ZJREVSX0JFRFJPQ0sQAxIWChJQUk9WSURFUl9GSVJFV09SS1MQBBIfChtQUk9WSURFUl9WRVJURVhBSV9BTlRIUk9QSUMQBRIcChhQUk9WSURFUl9WRVJURVhBSV9HRU1JTkkQBhIbChdQUk9WSURFUl9CRURST0NLX09QRU5BSRAHEhcKE1BST1ZJREVSX09QRU5ST1VURVIQCBIVChFQUk9WSURFUl9UT0dFVEhFUhAJEhUKEVBST1ZJREVSX0xJVEhPU0FJEAoq5QEKCENoYXRNb2RlEggKBENIQVQQABIJCgVBR0VOVBABEg8KC09SSUVOVEFUSU9OEAMSEAoMUkVNT1RFX0FHRU5UEAUSDQoJQ0xJX0FHRU5UEAYSFgoSQ0xJX05PTklOVEVSQUNUSVZFEAcSDwoLQ09ERV9SRVZJRVcQCBIVChFBR0VOVElDX1NMQUNLX0JPVBAJEhYKEkNPTlRFWFRfRU5HSU5FX1NESxAKEhYKEkNPTlRFWFRfRU5HSU5FX01DUBALEhYKElBPU0VJRE9OX0NMSV9BR0VOVBAMIgQIAhACIgQIBBAEKnoKFkNoYXRSZXNwb25zZVN0YXR1c0NvZGUSBgoCT0sQABIZChVFWENFRURfQ09OVEVYVF9MRU5HVEgQARIPCgtXQVNfQkxPQ0tFRBACEhMKD0lOVkFMSURfUkVRVUVTVBADEhcKE1NVTU1BUklaRV9BTkRfUkVUUlkQBCpFCgpDbGllbnRUeXBlEgsKB1VOS05PV04QABIHCgNDTEkQARIKCgZWU0NPREUQAhIMCghJTlRFTExJShADEgcKA1dFQhAEKkgKC1BlcnNvbmFUeXBlEgsKB0RFRkFVTFQQABIOCgpQUk9UT1RZUEVSEAESDgoKQlJBSU5TVE9STRACEgwKCFJFVklFV0VSEAMqQAoIUnVsZVR5cGUSEwoPQUxXQVlTX0FUVEFDSEVEEAASCgoGTUFOVUFMEAESEwoPQUdFTlRfUkVRVUVTVEVEEAIq8wQKClNpbGVudFR5cGUSGwoXU0lMRU5UX1RZUEVfVU5TUEVDSUZJRUQQABIXChNTSUxFTlRfVFlQRV9VTktOT1dOEBMSHgoaUkVXUklURV9QUk9NUFRfSU5TVFJVQ1RJT04QARIaChZISVNUT1JZX1NVTU1BUllfUFJPTVBUEAISHwobQ0xBU1NJRllfQU5EX0RJU1RJTExfUFJPTVBUEAMSJwojQ0xBU1NJRllfQU5EX0RJU1RJTExfU1VDQ0VTU19QUk9NUFQQBBIUChBJTkpFQ1RJT05fUFJPTVBUEAUSGwoXU1VNTUFSWV9FWENIQU5HRV9QUk9NUFQQBhIbChdVUERBVEVfVEFTS19MSVNUX1BST01QVBAHEh0KGUdFTkVSQVRFX1FVRVNUSU9OU19QUk9NUFQQCBIaChZQUk9KRUNUX1NVTU1BUllfUFJPTVBUEAkSFgoSQ09NUFJFU1NJT05fUFJPTVBUEAoSIAocTEFOR1VBR0VfTE9DQUxJWkFUSU9OX1BST01QVBAMEhsKF0RFVEVDVF9MQU5HVUFHRVNfUFJPTVBUEA0SIgoeT1JJRU5UQVRJT05fQ09NUFJFU1NJT05fUFJPTVBUEA4SIAocT1JJRU5UQVRJT05fQlVJTERfVEVTVF9RVUVSWRAPEiQKIEhFTFBGVUxfU09GVFdBUkVfRU5HSU5FRVJfUFJPTVBUEBASGwoXQUdFTlRfT05CT0FSRElOR19QUk9NUFQQERIgChxFTVBUWV9NRVNTQUdFX1dJVEhfVE9PTF9DQUxMEBISFgoSVE9PTF9TRUFSQ0hfUFJPTVBUEBQiBAgLEAtQBGIGcHJvdG8z",[X_,ha,GP,xEn,OEn]);(function(e){e[e.PROVIDER_UNKNOWN=0]="PROVIDER_UNKNOWN",e[e.PROVIDER_ANTHROPIC=1]="PROVIDER_ANTHROPIC",e[e.PROVIDER_OPENAI=2]="PROVIDER_OPENAI",e[e.PROVIDER_BEDROCK=3]="PROVIDER_BEDROCK",e[e.PROVIDER_FIREWORKS=4]="PROVIDER_FIREWORKS",e[e.PROVIDER_VERTEXAI_ANTHROPIC=5]="PROVIDER_VERTEXAI_ANTHROPIC",e[e.PROVIDER_VERTEXAI_GEMINI=6]="PROVIDER_VERTEXAI_GEMINI",e[e.PROVIDER_BEDROCK_OPENAI=7]="PROVIDER_BEDROCK_OPENAI",e[e.PROVIDER_OPENROUTER=8]="PROVIDER_OPENROUTER",e[e.PROVIDER_TOGETHER=9]="PROVIDER_TOGETHER",e[e.PROVIDER_LITHOSAI=10]="PROVIDER_LITHOSAI"})(PEn||(PEn={}));(function(e){e[e.CHAT=0]="CHAT",e[e.AGENT=1]="AGENT",e[e.ORIENTATION=3]="ORIENTATION",e[e.REMOTE_AGENT=5]="REMOTE_AGENT",e[e.CLI_AGENT=6]="CLI_AGENT",e[e.CLI_NONINTERACTIVE=7]="CLI_NONINTERACTIVE",e[e.CODE_REVIEW=8]="CODE_REVIEW",e[e.AGENTIC_SLACK_BOT=9]="AGENTIC_SLACK_BOT",e[e.CONTEXT_ENGINE_SDK=10]="CONTEXT_ENGINE_SDK",e[e.CONTEXT_ENGINE_MCP=11]="CONTEXT_ENGINE_MCP",e[e.POSEIDON_CLI_AGENT=12]="POSEIDON_CLI_AGENT"})(DEn||(DEn={}));(function(e){e[e.OK=0]="OK",e[e.EXCEED_CONTEXT_LENGTH=1]="EXCEED_CONTEXT_LENGTH",e[e.WAS_BLOCKED=2]="WAS_BLOCKED",e[e.INVALID_REQUEST=3]="INVALID_REQUEST",e[e.SUMMARIZE_AND_RETRY=4]="SUMMARIZE_AND_RETRY"})(BEn||(BEn={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.CLI=1]="CLI",e[e.VSCODE=2]="VSCODE",e[e.INTELLIJ=3]="INTELLIJ",e[e.WEB=4]="WEB"})(LEn||(LEn={}));(function(e){e[e.DEFAULT=0]="DEFAULT",e[e.PROTOTYPER=1]="PROTOTYPER",e[e.BRAINSTORM=2]="BRAINSTORM",e[e.REVIEWER=3]="REVIEWER"})(FEn||(FEn={}));(function(e){e[e.ALWAYS_ATTACHED=0]="ALWAYS_ATTACHED",e[e.MANUAL=1]="MANUAL",e[e.AGENT_REQUESTED=2]="AGENT_REQUESTED"})(UEn||(UEn={}));(function(e){e[e.SILENT_TYPE_UNSPECIFIED=0]="SILENT_TYPE_UNSPECIFIED",e[e.SILENT_TYPE_UNKNOWN=19]="SILENT_TYPE_UNKNOWN",e[e.REWRITE_PROMPT_INSTRUCTION=1]="REWRITE_PROMPT_INSTRUCTION",e[e.HISTORY_SUMMARY_PROMPT=2]="HISTORY_SUMMARY_PROMPT",e[e.CLASSIFY_AND_DISTILL_PROMPT=3]="CLASSIFY_AND_DISTILL_PROMPT",e[e.CLASSIFY_AND_DISTILL_SUCCESS_PROMPT=4]="CLASSIFY_AND_DISTILL_SUCCESS_PROMPT",e[e.INJECTION_PROMPT=5]="INJECTION_PROMPT",e[e.SUMMARY_EXCHANGE_PROMPT=6]="SUMMARY_EXCHANGE_PROMPT",e[e.UPDATE_TASK_LIST_PROMPT=7]="UPDATE_TASK_LIST_PROMPT",e[e.GENERATE_QUESTIONS_PROMPT=8]="GENERATE_QUESTIONS_PROMPT",e[e.PROJECT_SUMMARY_PROMPT=9]="PROJECT_SUMMARY_PROMPT",e[e.COMPRESSION_PROMPT=10]="COMPRESSION_PROMPT",e[e.LANGUAGE_LOCALIZATION_PROMPT=12]="LANGUAGE_LOCALIZATION_PROMPT",e[e.DETECT_LANGUAGES_PROMPT=13]="DETECT_LANGUAGES_PROMPT",e[e.ORIENTATION_COMPRESSION_PROMPT=14]="ORIENTATION_COMPRESSION_PROMPT",e[e.ORIENTATION_BUILD_TEST_QUERY=15]="ORIENTATION_BUILD_TEST_QUERY",e[e.HELPFUL_SOFTWARE_ENGINEER_PROMPT=16]="HELPFUL_SOFTWARE_ENGINEER_PROMPT",e[e.AGENT_ONBOARDING_PROMPT=17]="AGENT_ONBOARDING_PROMPT",e[e.EMPTY_MESSAGE_WITH_TOOL_CALL=18]="EMPTY_MESSAGE_WITH_TOOL_CALL",e[e.TOOL_SEARCH_PROMPT=20]="TOOL_SEARCH_PROMPT"})(VEn||(VEn={}))});var zIe,Xct=C(()=>{"use strict";Ml();zIe=Zr("CiFiYXNlL2RpZmZfdXRpbHMvZWRpdF9ldmVudHMucHJvdG8SD2Jhc2UuZGlmZl91dGlscyJqCgpTaW5nbGVFZGl0EhQKDGJlZm9yZV9zdGFydBgBIAEoDRIYCgtiZWZvcmVfdGV4dBgCIAEoCUIDgAEBEhMKC2FmdGVyX3N0YXJ0GAMgASgNEhcKCmFmdGVyX3RleHQYBCABKAlCA4ABASKFAQoRR3JhbnVsYXJFZGl0RXZlbnQSEQoEcGF0aBgBIAEoCUIDgAEBEhgKEGJlZm9yZV9ibG9iX25hbWUYAiABKAkSFwoPYWZ0ZXJfYmxvYl9uYW1lGAMgASgJEioKBWVkaXRzGAQgAygLMhsuYmFzZS5kaWZmX3V0aWxzLlNpbmdsZUVkaXRiBnByb3RvMw")});var $En,GEn,WEn,QEn=C(()=>{"use strict";Ml();C3();koe();Ooe();$En=Zr("ChxzZXJ2aWNlcy9hZ2VudHMvYWdlbnRzLnByb3RvEgZhZ2VudHMi9gQKG0NvZGViYXNlUmV0cmlldmFsUmF3UmVxdWVzdBIqCgdxdWVyaWVzGAEgAygLMhkuYWdlbnRzLlJhd1JldHJpZXZhbFF1ZXJ5EiUKBWJsb2JzGAIgAygLMhYuYmFzZS5ibG9iX25hbWVzLkJsb2JzEhIKCm1heF9jaHVua3MYAyABKAUSGQoRbWF4X291dHB1dF9sZW5ndGgYBCABKAUSGQoRdXNlcl9ndWlkZWRfYmxvYnMYBSADKAkSGwoTZXh0ZXJuYWxfc291cmNlX2lkcxgGIAMoCRIlCh1kaXNhYmxlX2F1dG9fZXh0ZXJuYWxfc291cmNlcxgHIAEoCBIMCgRwYXRoGAggASgJEg4KBnByZWZpeBgJIAEoCRIOCgZzdWZmaXgYCiABKAkSFQoNc2VsZWN0ZWRfY29kZRgLIAEoCRIeCgZkaWFsb2cYDCADKAsyDi5jaGF0LkV4Y2hhbmdlEiMKG2luY2x1ZGVfZm9ybWF0dGVkX3JldHJpZXZhbBgNIAEoCBIcChRpbmNsdWRlX2xpbmVfbnVtYmVycxgOIAEoCBIcCg9jb252ZXJzYXRpb25faWQYDyABKAlIAIgBARIjChZwYXJlbnRfY29udmVyc2F0aW9uX2lkGBAgASgJSAGIAQESIQoUcm9vdF9jb252ZXJzYXRpb25faWQYESABKAlIAogBARIUCgd0dXJuX2lkGBIgASgJSAOIAQFCEgoQX2NvbnZlcnNhdGlvbl9pZEIZChdfcGFyZW50X2NvbnZlcnNhdGlvbl9pZEIXChVfcm9vdF9jb252ZXJzYXRpb25faWRCCgoIX3R1cm5faWQioAEKHENvZGViYXNlUmV0cmlldmFsUmF3UmVzcG9uc2USKQoGY2h1bmtzGAEgAygLMhkuYWdlbnRzLlJhd1JldHJpZXZlZENodW5rEhsKE2Zvcm1hdHRlZF9yZXRyaWV2YWwYAiABKAkSGgoSdW5rbm93bl9ibG9iX25hbWVzGAMgAygJEhwKFGNoZWNrcG9pbnRfbm90X2ZvdW5kGAQgASgIIqQEChhDb2RlYmFzZVJldHJpZXZhbFJlcXVlc3QSGwoTaW5mb3JtYXRpb25fcmVxdWVzdBgBIAEoCRIeCgZkaWFsb2cYAiADKAsyDi5jaGF0LkV4Y2hhbmdlEiUKBWJsb2JzGAMgAygLMhYuYmFzZS5ibG9iX25hbWVzLkJsb2JzEhkKEW1heF9vdXRwdXRfbGVuZ3RoGAQgASgFEiIKGmRpc2FibGVfY29kZWJhc2VfcmV0cmlldmFsGAUgASgIEh8KF2VuYWJsZV9jb21taXRfcmV0cmlldmFsGAYgASgIEiUKHWVuYWJsZV9jb252ZXJzYXRpb25fcmV0cmlldmFsGAcgASgIEjYKEmJyaW5nX3lvdXJfb3duX2tleRgIIAEoCzIVLmNoYXQuQnJpbmdZb3VyT3duS2V5SACIAQESHAoPY29udmVyc2F0aW9uX2lkGAkgASgJSAGIAQESIwoWcGFyZW50X2NvbnZlcnNhdGlvbl9pZBgKIAEoCUgCiAEBEiEKFHJvb3RfY29udmVyc2F0aW9uX2lkGAsgASgJSAOIAQESFAoHdHVybl9pZBgMIAEoCUgEiAEBQhUKE19icmluZ195b3VyX293bl9rZXlCEgoQX2NvbnZlcnNhdGlvbl9pZEIZChdfcGFyZW50X2NvbnZlcnNhdGlvbl9pZEIXChVfcm9vdF9jb252ZXJzYXRpb25faWRCCgoIX3R1cm5faWQiuwYKGUNvZGViYXNlUmV0cmlldmFsUmVzcG9uc2USGwoTZm9ybWF0dGVkX3JldHJpZXZhbBgBIAEoCRIlCh1jb2RlYmFzZV9yZXRyaWV2YWxfZWxhcHNlZF9tcxgCIAEoBRIpCiFjb252ZXJzYXRpb25fcmV0cmlldmFsX2VsYXBzZWRfbXMYAyABKAUSKQohY29udmVyc2F0aW9uX2luaXRpYWxfcmV0cmlldmFsX21zGAQgASgFEicKH2NvbnZlcnNhdGlvbl9xdWVyeV9yZXdyaXRpbmdfbXMYBSABKAUSKgoiY29udmVyc2F0aW9uX2ZvbGxvd3VwX3JldHJpZXZhbF9tcxgGIAEoBRIbChNibG9iX25hbWVfbG9va3VwX21zGAcgASgFEiEKGWNvZGViYXNlX2NodW5rc19yZXRyaWV2ZWQYCCABKAUSIwobY29udmVyc2F0aW9uX2NodW5rc19pbml0aWFsGAkgASgFEiYKHmNvbnZlcnNhdGlvbl9xdWVyaWVzX2dlbmVyYXRlZBgKIAEoBRIkChxjb252ZXJzYXRpb25fY2h1bmtzX2ZvbGxvd3VwGAsgASgFEiQKHGNvbnZlcnNhdGlvbl9jaHVua3NfY29tYmluZWQYDCABKAUSKgoiY29kZWJhc2VfcmVzdWx0X2xlbl9wcmVfdHJ1bmNhdGlvbhgNIAEoBRIbChNjb2RlYmFzZV9yZXN1bHRfbGVuGA4gASgFEi4KJmNvbnZlcnNhdGlvbl9yZXN1bHRfbGVuX3ByZV90cnVuY2F0aW9uGA8gASgFEh8KF2NvbnZlcnNhdGlvbl9yZXN1bHRfbGVuGBAgASgFEhsKE2NvbWJpbmVkX3Jlc3VsdF9sZW4YESABKAUSFAoMdG90YWxfYnVkZ2V0GBIgASgFEhcKD2NvZGViYXNlX2J1ZGdldBgTIAEoBRIbChNjb252ZXJzYXRpb25fYnVkZ2V0GBQgASgFEhoKEmNvZGViYXNlX3RydW5jYXRlZBgVIAEoCBIeChZjb252ZXJzYXRpb25fdHJ1bmNhdGVkGBYgASgIEhcKD2ZpbmFsX3RydW5jYXRlZBgXIAEoCCJ0Cg9FZGl0RmlsZVJlcXVlc3QSEQoJZmlsZV9wYXRoGAEgASgJEhQKDGVkaXRfc3VtbWFyeRgCIAEoCRIhChlkZXRhaWxlZF9lZGl0X2Rlc2NyaXB0aW9uGAMgASgJEhUKDWZpbGVfY29udGVudHMYBCABKAkiRAoQRWRpdEZpbGVSZXNwb25zZRIeChZtb2RpZmllZF9maWxlX2NvbnRlbnRzGAEgASgJEhAKCGlzX2Vycm9yGAIgASgIImMKEVJhd1JldHJpZXZhbFF1ZXJ5EhMKC2Rlc2NyaXB0aW9uGAEgASgJEgwKBHBhdGgYAiABKAkSFwoPY29udGFpbnNfc3RyaW5nGAMgASgJEhIKCm1heF9jaHVua3MYBCABKAUihgIKEVJhd1JldHJpZXZlZENodW5rEgwKBHRleHQYASABKAkSDAoEcGF0aBgCIAEoCRISCgpjaGFyX3N0YXJ0GAMgASgFEhAKCGNoYXJfZW5kGAQgASgFEhIKCmxpbmVfc3RhcnQYBSABKAUSFwoPbGVuZ3RoX2luX2xpbmVzGAYgASgFEhEKCWJsb2JfbmFtZRgHIAEoCRINCgVzY29yZRgIIAEoAhIOCgZvcmlnaW4YCSABKAkSFgoObWF0Y2hlZF9zdHJpbmcYCiABKAkSGgoSZXh0ZXJuYWxfc291cmNlX2lkGAsgASgJEhwKFGV4dGVybmFsX3NvdXJjZV9uYW1lGAwgASgJIrkCChVSdW5SZW1vdGVUb29sUmVzcG9uc2USEwoLdG9vbF9vdXRwdXQYASABKAkSGwoTdG9vbF9yZXN1bHRfbWVzc2FnZRgCIAEoCRIUCghpc19lcnJvchgDIAEoCEICGAESMAoGc3RhdHVzGAQgASgOMiAuYWdlbnRzLlJlbW90ZVRvb2xSZXNwb25zZVN0YXR1cxIjChZjb21wcmVzc2VkX2Z1bGxfb3V0cHV0GAUgASgJSACIAQESHQoQZnVsbF9vdXRwdXRfc2l6ZRgGIAEoA0gBiAEBEjIKDWNvbnRlbnRfbm9kZXMYByADKAsyGy5jaGF0LlRvb2xSZXN1bHRDb250ZW50Tm9kZUIZChdfY29tcHJlc3NlZF9mdWxsX291dHB1dEITChFfZnVsbF9vdXRwdXRfc2l6ZSqrAgoMUmVtb3RlVG9vbElkEgsKB1VOS05PV04QABIOCgpXRUJfU0VBUkNIEAESDgoKR0lUSFVCX0FQSRAIEhsKF0dJVEhVQl9BUFBfUkVBRE9OTFlfQVBJEBISGwoXR0lUSFVCX0FQUF9QT1NUX0NPTU1FTlQQExIdChlHSVRIVUJfQVBQX1BSX0RFU0NSSVBUSU9OEBQSCgoGTElORUFSEAwSCAoESklSQRANEg4KCkNPTkZMVUVOQ0UQDhIKCgZOT1RJT04QDxIMCghTVVBBQkFTRRAQEgkKBUdMRUFOEBEiBAgCEAIiBAgDEAMiBAgEEAQiBAgFEAUiBAgGEAYiBAgHEAciBAgJEAkiBAgKEAoiBAgLEAsiBAgVEBUqDkNPTlRFWFRfQ0FOVkFTKtYBChhSZW1vdGVUb29sUmVzcG9uc2VTdGF0dXMSIQodVE9PTF9FWEVDVVRJT05fVU5LTk9XTl9TVEFUVVMQABIaChZUT09MX0VYRUNVVElPTl9TVUNDRVNTEAESEgoOVE9PTF9OT1RfRk9VTkQQAhIWChJJTlZBTElEX1RPT0xfSU5QVVQQAxIYChRUT09MX0VYRUNVVElPTl9FUlJPUhAEEhYKElRPT0xfTk9UX0FWQUlMQUJMRRAFEh0KGVRPT0xfQVVUSEVOVElDQVRJT05fRVJST1IQBmIGcHJvdG8z",[X_,GP,WP]);(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.WEB_SEARCH=1]="WEB_SEARCH",e[e.GITHUB_API=8]="GITHUB_API",e[e.GITHUB_APP_READONLY_API=18]="GITHUB_APP_READONLY_API",e[e.GITHUB_APP_POST_COMMENT=19]="GITHUB_APP_POST_COMMENT",e[e.GITHUB_APP_PR_DESCRIPTION=20]="GITHUB_APP_PR_DESCRIPTION",e[e.LINEAR=12]="LINEAR",e[e.JIRA=13]="JIRA",e[e.CONFLUENCE=14]="CONFLUENCE",e[e.NOTION=15]="NOTION",e[e.SUPABASE=16]="SUPABASE",e[e.GLEAN=17]="GLEAN"})(GEn||(GEn={}));(function(e){e[e.TOOL_EXECUTION_UNKNOWN_STATUS=0]="TOOL_EXECUTION_UNKNOWN_STATUS",e[e.TOOL_EXECUTION_SUCCESS=1]="TOOL_EXECUTION_SUCCESS",e[e.TOOL_NOT_FOUND=2]="TOOL_NOT_FOUND",e[e.INVALID_TOOL_INPUT=3]="INVALID_TOOL_INPUT",e[e.TOOL_EXECUTION_ERROR=4]="TOOL_EXECUTION_ERROR",e[e.TOOL_NOT_AVAILABLE=5]="TOOL_NOT_AVAILABLE",e[e.TOOL_AUTHENTICATION_ERROR=6]="TOOL_AUTHENTICATION_ERROR"})(WEn||(WEn={}))});var Wy,YEn,HEn,ZEn,$P=C(()=>{"use strict";Ml();Au();Wy=Zr("CjBzZXJ2aWNlcy9hdXRoL2NlbnRyYWwvc2VydmVyL2F1dGhfZW50aXRpZXMucHJvdG8SDWF1dGhfZW50aXRpZXMipQEKBlVzZXJJZBI2Cgx1c2VyX2lkX3R5cGUYASABKA4yIC5hdXRoX2VudGl0aWVzLlVzZXJJZC5Vc2VySWRUeXBlEg8KB3VzZXJfaWQYAiABKAkiUgoKVXNlcklkVHlwZRILCgdVTktOT1dOEAASCwoHQVVHTUVOVBABEg0KCUFQSV9UT0tFThACEgkKBVNMQUNLEAMSEAoMSU5URVJOQUxfSUFQEAQqjgEKB0JvdFR5cGUSGAoUQk9UX1RZUEVfVU5TUEVDSUZJRUQQABITCg9DT0RFX1JFVklFV19CT1QQARIYChRDT0RFX1JFVklFV19FVkFMX0JPVBACEg4KCkFUSEVOQV9CT1QQAxINCglTTEFDS19CT1QQBBIOCgpMSU5FQVJfQk9UEAUSCwoHU0FOREJPWBAGKlMKCFVzZXJUeXBlEhkKFVVTRVJfVFlQRV9VTlNQRUNJRklFRBAAEhUKEVVTRVJfVFlQRV9SRUdVTEFSEAESFQoRVVNFUl9UWVBFX1NFUlZJQ0UQAkJRWk9naXRodWIuY29tL2F1Z21lbnRjb2RlL2F1Z21lbnQvc2VydmljZXMvYXV0aC9jZW50cmFsL3NlcnZlci9hdXRoX2VudGl0aWVzX3Byb3RvYgZwcm90bzM",[ha]);(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.AUGMENT=1]="AUGMENT",e[e.API_TOKEN=2]="API_TOKEN",e[e.SLACK=3]="SLACK",e[e.INTERNAL_IAP=4]="INTERNAL_IAP"})(YEn||(YEn={}));(function(e){e[e.BOT_TYPE_UNSPECIFIED=0]="BOT_TYPE_UNSPECIFIED",e[e.CODE_REVIEW_BOT=1]="CODE_REVIEW_BOT",e[e.CODE_REVIEW_EVAL_BOT=2]="CODE_REVIEW_EVAL_BOT",e[e.ATHENA_BOT=3]="ATHENA_BOT",e[e.SLACK_BOT=4]="SLACK_BOT",e[e.LINEAR_BOT=5]="LINEAR_BOT",e[e.SANDBOX=6]="SANDBOX"})(HEn||(HEn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.REGULAR=1]="REGULAR",e[e.SERVICE=2]="SERVICE"})(ZEn||(ZEn={}))});var zEn,jEn,XEn=C(()=>{"use strict";Ml();Au();$P();zEn=Zr("CidzZXJ2aWNlcy9hdXRoL2NlbnRyYWwvc2VydmVyL2F1dGgucHJvdG8SBGF1dGgipAIKGUNhbmNlbFN1YnNjcmlwdGlvblJlcXVlc3QSDwoHdXNlcl9pZBgBIAEoCRIRCgl0ZW5hbnRfaWQYAiABKAkSGgoSY2FuY2VsX2ltbWVkaWF0ZWx5GAMgASgIEjoKCGZlZWRiYWNrGAQgASgLMiguYXV0aC5DYW5jZWxTdWJzY3JpcHRpb25SZXF1ZXN0LkZlZWRiYWNrEg4KBnJlYXNvbhgFIAEoCRp7CghGZWVkYmFjaxI1ChNjYW5jZWxsYXRpb25fcmVhc29uGAEgASgOMhguYXV0aC5DYW5jZWxsYXRpb25SZWFzb24SIAoTYWRkaXRpb25hbF9mZWVkYmFjaxgCIAEoCUgAiAEBQhYKFF9hZGRpdGlvbmFsX2ZlZWRiYWNrKugHChJDYW5jZWxsYXRpb25SZWFzb24SIwofQ0FOQ0VMTEFUSU9OX1JFQVNPTl9VTlNQRUNJRklFRBAAEiUKIUNBTkNFTExBVElPTl9SRUFTT05fVE9PX0VYUEVOU0lWRRABEigKJENBTkNFTExBVElPTl9SRUFTT05fTk9UX1VTSU5HX0VOT1VHSBACEigKJENBTkNFTExBVElPTl9SRUFTT05fTUlTU0lOR19GRUFUVVJFUxADEigKJENBTkNFTExBVElPTl9SRUFTT05fVEVDSE5JQ0FMX0lTU1VFUxAEEi8KK0NBTkNFTExBVElPTl9SRUFTT05fU1dJVENISU5HX1RPX0NPTVBFVElUT1IQBRIwCixDQU5DRUxMQVRJT05fUkVBU09OX1NXSVRDSElOR19UT19DTEFVREVfQ09ERRAGEioKJkNBTkNFTExBVElPTl9SRUFTT05fU1dJVENISU5HX1RPX0NPREVYEAcSLworQ0FOQ0VMTEFUSU9OX1JFQVNPTl9TV0lUQ0hJTkdfVE9fR0VNSU5JX0NMSRAIEisKJ0NBTkNFTExBVElPTl9SRUFTT05fU1dJVENISU5HX1RPX0NVUlNPUhAJEi0KKUNBTkNFTExBVElPTl9SRUFTT05fU1dJVENISU5HX1RPX1dJTkRTVVJGEAoSLAooQ0FOQ0VMTEFUSU9OX1JFQVNPTl9TV0lUQ0hJTkdfVE9fQ09QSUxPVBALEioKJkNBTkNFTExBVElPTl9SRUFTT05fU1dJVENISU5HX1RPX0NMSU5FEAwSKgomQ0FOQ0VMTEFUSU9OX1JFQVNPTl9TV0lUQ0hJTkdfVE9fREVWSU4QDRIoCiRDQU5DRUxMQVRJT05fUkVBU09OX1NXSVRDSElOR19UT19ST08QDhIsCihDQU5DRUxMQVRJT05fUkVBU09OX1NXSVRDSElOR19UT19MT1ZBQkxFEA8SLAooQ0FOQ0VMTEFUSU9OX1JFQVNPTl9TV0lUQ0hJTkdfVE9fRkFDVE9SWRAQEi8KK0NBTkNFTExBVElPTl9SRUFTT05fU1dJVENISU5HX1RPX09USEVSX1RPT0wQERIoCiRDQU5DRUxMQVRJT05fUkVBU09OX05PX0xPTkdFUl9ORUVERUQQEhIdChlDQU5DRUxMQVRJT05fUkVBU09OX09USEVSEBMSMwovQ0FOQ0VMTEFUSU9OX1JFQVNPTl9SRVFVSVJFX0NPTVBMRVRJT05TX0ZFQVRVUkUQFBIxCi1DQU5DRUxMQVRJT05fUkVBU09OX1JFUVVJUkVfTkVYVF9FRElUX0ZFQVRVUkUQFUJDWkFnaXRodWIuY29tL2F1Z21lbnRjb2RlL2F1Z21lbnQvc2VydmljZXMvYXV0aC9jZW50cmFsL3NlcnZlci9wcm90b2IGcHJvdG8z",[ha,Wy]);(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TOO_EXPENSIVE=1]="TOO_EXPENSIVE",e[e.NOT_USING_ENOUGH=2]="NOT_USING_ENOUGH",e[e.MISSING_FEATURES=3]="MISSING_FEATURES",e[e.TECHNICAL_ISSUES=4]="TECHNICAL_ISSUES",e[e.SWITCHING_TO_COMPETITOR=5]="SWITCHING_TO_COMPETITOR",e[e.SWITCHING_TO_CLAUDE_CODE=6]="SWITCHING_TO_CLAUDE_CODE",e[e.SWITCHING_TO_CODEX=7]="SWITCHING_TO_CODEX",e[e.SWITCHING_TO_GEMINI_CLI=8]="SWITCHING_TO_GEMINI_CLI",e[e.SWITCHING_TO_CURSOR=9]="SWITCHING_TO_CURSOR",e[e.SWITCHING_TO_WINDSURF=10]="SWITCHING_TO_WINDSURF",e[e.SWITCHING_TO_COPILOT=11]="SWITCHING_TO_COPILOT",e[e.SWITCHING_TO_CLINE=12]="SWITCHING_TO_CLINE",e[e.SWITCHING_TO_DEVIN=13]="SWITCHING_TO_DEVIN",e[e.SWITCHING_TO_ROO=14]="SWITCHING_TO_ROO",e[e.SWITCHING_TO_LOVABLE=15]="SWITCHING_TO_LOVABLE",e[e.SWITCHING_TO_FACTORY=16]="SWITCHING_TO_FACTORY",e[e.SWITCHING_TO_OTHER_TOOL=17]="SWITCHING_TO_OTHER_TOOL",e[e.NO_LONGER_NEEDED=18]="NO_LONGER_NEEDED",e[e.OTHER=19]="OTHER",e[e.REQUIRE_COMPLETIONS_FEATURE=20]="REQUIRE_COMPLETIONS_FEATURE",e[e.REQUIRE_NEXT_EDIT_FEATURE=21]="REQUIRE_NEXT_EDIT_FEATURE"})(jEn||(jEn={}))});var qEn,KEn,JEn=C(()=>{"use strict";Ml();Au();$P();qEn=Zr("Ci5zZXJ2aWNlcy9iaWxsaW5nL21ldGVyaW5nL21ldGVyaW5nX2V2ZW50LnByb3RvEg5tZXRlcmluZ19ldmVudCKRBAoOUmVxdWVzdENvbnRleHQSFgoOcmVxdWVzdF9zb3VyY2UYASABKAkSEgoKcmVxdWVzdF9pZBgCIAEoCRISCgpzZXNzaW9uX2lkGAMgASgJEhEKCXRlbmFudF9pZBgFIAEoCRImCgd1c2VyX2lkGAYgASgLMhUuYXV0aF9lbnRpdGllcy5Vc2VySWQSGwoTdXNlcl9lbWFpbF9vdmVycmlkZRgHIAEoCRIXCg9jb252ZXJzYXRpb25faWQYCCABKAkSHgoWcGFyZW50X2NvbnZlcnNhdGlvbl9pZBgJIAEoCRIcChRyb290X2NvbnZlcnNhdGlvbl9pZBgKIAEoCRIPCgd0dXJuX2lkGAsgASgJEioKCXVzZXJfdHlwZRgMIAEoDjIXLmF1dGhfZW50aXRpZXMuVXNlclR5cGUSKAoIYm90X3R5cGUYDSABKA4yFi5hdXRoX2VudGl0aWVzLkJvdFR5cGUSDwoHaXNfYnlvaxgOIAEoCBIRCglleHBlcnRfaWQYDyABKAkSGQoRZXVfaW5mZXJlbmNlX29ubHkYECABKAgSEwoLd29ya2Zsb3dfaWQYESABKAkSEwoLcmVzaWRlbnRfaWQYEiABKAkSFgoOZW52aXJvbm1lbnRfaWQYEyABKAkSEAoIYWdlbnRfaWQYFCABKAkSEAoIc3BhY2VfaWQYFSABKAlKBAgEEAUiiAEKFUFnZW50TWV0ZXJpbmdNZXRhZGF0YRIdChVhY3Rpdml0eV9kaXNwbGF5X25hbWUYASABKAkSGgoSbW9kZWxfZGlzcGxheV9uYW1lGAIgASgJEhwKFHJlcXVlc3RlZF9tb2RlbF9uYW1lGAMgASgJEhYKDnJvdXRpbmdfcmVhc29uGAQgASgJIloKHUNvbnRleHRFbmdpbmVNZXRlcmluZ01ldGFkYXRhEh0KFWFjdGl2aXR5X2Rpc3BsYXlfbmFtZRgBIAEoCRIaChJtb2RlbF9kaXNwbGF5X25hbWUYAiABKAkiYwoXQ29tcHV0ZU1ldGVyaW5nTWV0YWRhdGESHQoVYWN0aXZpdHlfZGlzcGxheV9uYW1lGAEgASgJEhoKEm1vZGVsX2Rpc3BsYXlfbmFtZRgCIAEoCRINCgV2bV9pZBgDIAEoCSKgBAoLQ29zdENvbnRleHQSGwoTYWN0aXZpdHlfbXVsdGlwbGllchgBIAEoARIUCgxpbnB1dF90b2tlbnMYAiABKAUSFQoNb3V0cHV0X3Rva2VucxgDIAEoBRIZChFjYWNoZV9yZWFkX3Rva2VucxgEIAEoBRIaChJjYWNoZV93cml0ZV90b2tlbnMYBSABKAUSEgoKbW9kZWxfbmFtZRgGIAEoCRIWCg50b3RhbF9jb3N0X3VzZBgHIAEoARIaChJieW9rX3Byb3ZpZGVyX25hbWUYCCABKAkSFgoOc3VyY2hhcmdlX3JhdGUYCSABKAESFQoNc3VyY2hhcmdlX3VzZBgKIAEoCRIVCg1iYXNlX2Nvc3RfdXNkGAsgASgJEhAKCHZtX2NvdW50GAwgASgFEhoKEnRvdGFsX2NwdV9jb3N0X3VzZBgNIAEoARIdChV0b3RhbF9tZW1vcnlfY29zdF91c2QYDiABKAESHgoWdG90YWxfYmlsbGFibGVfc2Vjb25kcxgPIAEoARIRCgljcHVfY29yZXMYECABKAISFwoPbWVtb3J5X3NpemVfbWliGBEgASgFEhcKD3Byb3ZpZGVyX3JlZ2lvbhgSIAEoCRIWCg5lbmRwb2ludF9zY29wZRgTIAEoCRIgChNyZWdpb25hbF9tdWx0aXBsaWVyGBQgASgBSACIAQFCFgoUX3JlZ2lvbmFsX211bHRpcGxpZXIizwUKDU1ldGVyaW5nRXZlbnQSFgoOaWRlbXBvdGVuY3lfaWQYASABKAkSOwoKdXNhZ2VfdHlwZRgCIAEoDjInLm1ldGVyaW5nX2V2ZW50Lk1ldGVyaW5nRXZlbnQuVXNhZ2VUeXBlEjcKD3JlcXVlc3RfY29udGV4dBgDIAEoCzIeLm1ldGVyaW5nX2V2ZW50LlJlcXVlc3RDb250ZXh0EkgKF2FnZW50X21ldGVyaW5nX21ldGFkYXRhGAQgASgLMiUubWV0ZXJpbmdfZXZlbnQuQWdlbnRNZXRlcmluZ01ldGFkYXRhSAASWQogY29udGV4dF9lbmdpbmVfbWV0ZXJpbmdfbWV0YWRhdGEYByABKAsyLS5tZXRlcmluZ19ldmVudC5Db250ZXh0RW5naW5lTWV0ZXJpbmdNZXRhZGF0YUgAEkwKGWNvbXB1dGVfbWV0ZXJpbmdfbWV0YWRhdGEYCyABKAsyJy5tZXRlcmluZ19ldmVudC5Db21wdXRlTWV0ZXJpbmdNZXRhZGF0YUgAEi0KCXRpbWVzdGFtcBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGAoQY3JlZGl0c19jb25zdW1lZBgGIAEoARIxCgxjb3N0X2NvbnRleHQYCCABKAsyGy5tZXRlcmluZ19ldmVudC5Db3N0Q29udGV4dBIPCgdkcnlfcnVuGAkgASgIEhMKB2lzX2J5b2sYCiABKAhCAhgBEhkKEWJpbGxlZF9hbW91bnRfdXNkGA4gASgJEiMKG2VzdGltYXRlZF9jdXN0b21lcl9jb3N0X3VzZBgPIAEoCSJPCglVc2FnZVR5cGUSFgoSVVNBR0VfVFlQRV9VTktOT1dOEAASCQoFQUdFTlQQARISCg5DT05URVhUX0VOR0lORRACEgsKB0NPTVBVVEUQA0IKCghtZXRhZGF0YUJGWkRnaXRodWIuY29tL2F1Z21lbnRjb2RlL2F1Z21lbnQvc2VydmljZXMvYmlsbGluZy9tZXRlcmluZ19ldmVudF9wcm90b2IGcHJvdG8z",[ha,Wy]);(function(e){e[e.USAGE_TYPE_UNKNOWN=0]="USAGE_TYPE_UNKNOWN",e[e.AGENT=1]="AGENT",e[e.CONTEXT_ENGINE=2]="CONTEXT_ENGINE",e[e.COMPUTE=3]="COMPUTE"})(KEn||(KEn={}))});var e_n,t_n=C(()=>{"use strict";Ml();C3();Xct();Au();e_n=Zr("CilzZXJ2aWNlcy9jb21wbGV0aW9uX2hvc3QvY29tcGxldGlvbi5wcm90bxIKY29tcGxldGlvbiJECg9HaXREaWZmRmlsZUluZm8SGQoRY29udGVudF9ibG9iX25hbWUYASABKAkSFgoOZmlsZV9ibG9iX25hbWUYAiABKAki6wEKC1JlY2VuY3lJbmZvEjUKEXRhYl9zd2l0Y2hfZXZlbnRzGAEgAygLMhouY29tcGxldGlvbi5UYWJTd2l0Y2hFdmVudBI3ChJnaXRfZGlmZl9maWxlX2luZm8YAiADKAsyGy5jb21wbGV0aW9uLkdpdERpZmZGaWxlSW5mbxIzCg5yZWNlbnRfY2hhbmdlcxgDIAMoCzIbLmNvbXBsZXRpb24uUmVwbGFjZW1lbnRUZXh0EjcKD3ZpZXdlZF9jb250ZW50cxgEIAMoCzIeLmNvbXBsZXRpb24uVmlld2VkQ29udGVudEV2ZW50IoUCCg9SZXBsYWNlbWVudFRleHQSEQoJYmxvYl9uYW1lGAEgASgJEgwKBHBhdGgYAiABKAkSEgoKY2hhcl9zdGFydBgDIAEoDRIQCghjaGFyX2VuZBgEIAEoDRIYChByZXBsYWNlbWVudF90ZXh0GAUgASgJEhcKD3ByZXNlbnRfaW5fYmxvYhgGIAEoCBIfChJleHBlY3RlZF9ibG9iX25hbWUYByABKAlIAIgBARIyCgl0aW1lc3RhbXAYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQFCFQoTX2V4cGVjdGVkX2Jsb2JfbmFtZUIMCgpfdGltZXN0YW1wIjYKDlRhYlN3aXRjaEV2ZW50EgwKBHBhdGgYASABKAkSFgoOZmlsZV9ibG9iX25hbWUYAiABKAkizgEKElZpZXdlZENvbnRlbnRFdmVudBIMCgRwYXRoGAEgASgJEhYKDmZpbGVfYmxvYl9uYW1lGAIgASgJEhcKD3Zpc2libGVfY29udGVudBgDIAEoCRISCgpsaW5lX3N0YXJ0GAQgASgNEhAKCGxpbmVfZW5kGAUgASgNEhIKCmNoYXJfc3RhcnQYBiABKA0SEAoIY2hhcl9lbmQYByABKA0SLQoJdGltZXN0YW1wGAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcGIGcHJvdG8z",[X_,zIe,ha])});var n_n,r_n=C(()=>{"use strict";Ml();C3();n_n=Zr("Ch1zZXJ2aWNlcy9lZGl0X2hvc3QvZWRpdC5wcm90bxIEZWRpdCJLCgxFZGl0UG9zaXRpb24SFAoMcHJlZml4X2JlZ2luGAEgASgFEhIKCnN1ZmZpeF9lbmQYAiABKAUSEQoJYmxvYl9uYW1lGAMgASgJIvEBCgtFZGl0UmVxdWVzdBISCgptb2RlbF9uYW1lGAEgASgJEgwKBHBhdGgYAiABKAkSDgoGcHJlZml4GAMgASgJEhUKDXNlbGVjdGVkX3RleHQYBCABKAkSDgoGc3VmZml4GAUgASgJEhMKC2luc3RydWN0aW9uGAYgASgJEiQKCHBvc2l0aW9uGAcgASgLMhIuZWRpdC5FZGl0UG9zaXRpb24SDAoEbGFuZxgJIAEoCRITCgtzZXF1ZW5jZV9pZBgKIAEoDRIlCgVibG9icxgLIAEoCzIWLmJhc2UuYmxvYl9uYW1lcy5CbG9ic0oECAgQCSJWCgxFZGl0UmVzcG9uc2USDAoEdGV4dBgBIAEoCRIaChJ1bmtub3duX2Jsb2JfbmFtZXMYAiADKAkSHAoUY2hlY2twb2ludF9ub3RfZm91bmQYAyABKAgieQoIRXhjaGFuZ2USFwoPcmVxdWVzdF9tZXNzYWdlGAEgASgJEhoKDXJlc3BvbnNlX3RleHQYAiABKAlIAIgBARIXCgpyZXF1ZXN0X2lkGAMgASgJSAGIAQFCEAoOX3Jlc3BvbnNlX3RleHRCDQoLX3JlcXVlc3RfaWQijwEKHEluc3RydWN0aW9uQWdncmVnYXRlUmVzcG9uc2USDAoEdGV4dBgBIAEoCRIaChJ1bmtub3duX2Jsb2JfbmFtZXMYAiADKAkSHAoUY2hlY2twb2ludF9ub3RfZm91bmQYAyABKAgSJwoMcmVwbGFjZV90ZXh0GAQgAygLMhEuZWRpdC5SZXBsYWNlVGV4dCLwBAoSSW5zdHJ1Y3Rpb25SZXF1ZXN0EhIKCm1vZGVsX25hbWUYASABKAkSDAoEcGF0aBgCIAEoCRIOCgZwcmVmaXgYAyABKAkSFQoNc2VsZWN0ZWRfdGV4dBgEIAEoCRIOCgZzdWZmaXgYBSABKAkSEwoLaW5zdHJ1Y3Rpb24YBiABKAkSJAoIcG9zaXRpb24YByABKAsyEi5lZGl0LkVkaXRQb3NpdGlvbhIMCgRsYW5nGAggASgJEhMKC3NlcXVlbmNlX2lkGAkgASgNEiUKBWJsb2JzGAogASgLMhYuYmFzZS5ibG9iX25hbWVzLkJsb2JzEiQKDGNoYXRfaGlzdG9yeRgLIAMoCzIOLmVkaXQuRXhjaGFuZ2USFwoKY29kZV9ibG9jaxgMIAEoCUgAiAEBEh0KEHRhcmdldF9maWxlX3BhdGgYDSABKAlIAYgBARIgChN0YXJnZXRfZmlsZV9jb250ZW50GA4gASgJSAKIAQESLQogY29udGV4dF9jb2RlX2V4Y2hhbmdlX3JlcXVlc3RfaWQYDyABKAlIA4gBARIcCg91c2VyX2d1aWRlbGluZXMYECABKAlIBIgBARIhChR3b3Jrc3BhY2VfZ3VpZGVsaW5lcxgRIAEoCUgFiAEBQg0KC19jb2RlX2Jsb2NrQhMKEV90YXJnZXRfZmlsZV9wYXRoQhYKFF90YXJnZXRfZmlsZV9jb250ZW50QiMKIV9jb250ZXh0X2NvZGVfZXhjaGFuZ2VfcmVxdWVzdF9pZEISChBfdXNlcl9ndWlkZWxpbmVzQhcKFV93b3Jrc3BhY2VfZ3VpZGVsaW5lcyKuAQoLUmVwbGFjZVRleHQSEQoEdGV4dBgBIAEoCUgAiAEBEhcKCnN0YXJ0X2xpbmUYAiABKA1IAYgBARIVCghlbmRfbGluZRgDIAEoDUgCiAEBEhUKCG9sZF90ZXh0GAQgASgJSAOIAQESEwoLc2VxdWVuY2VfaWQYBSABKA1CBwoFX3RleHRCDQoLX3N0YXJ0X2xpbmVCCwoJX2VuZF9saW5lQgsKCV9vbGRfdGV4dGIGcHJvdG8z",[X_])});var i_n,s_n=C(()=>{"use strict";Ml();Au();i_n=Zr("Ci9zZXJ2aWNlcy9pbnRlZ3JhdGlvbnMvZ2l0aHViL2dpdGh1Yl9ldmVudC5wcm90bxIMZ2l0aHViX2V2ZW50InkKDUV2ZW50TWV0YWRhdGESFwoPaW5zdGFsbGF0aW9uX2lkGAEgASgDEhEKCXRlbmFudF9pZBgCIAEoCRITCgt0ZW5hbnRfbmFtZRgEIAEoCRISCgpyZXF1ZXN0X2lkGAMgASgJEhMKC2RlbGl2ZXJ5X2lkGAUgASgJIkQKClJlcG9zaXRvcnkSEQoEbmFtZRgBIAEoCUIDgAEBEhIKBW93bmVyGAIgASgJQgOAAQESDwoHbm9kZV9pZBgDIAEoCSKAAgoJUHVzaEV2ZW50EiwKCnJlcG9zaXRvcnkYASABKAsyGC5naXRodWJfZXZlbnQuUmVwb3NpdG9yeRIQCgNyZWYYAiABKAlCA4ABARIXCgpiZWZvcmVfc2hhGAMgASgJQgOAAQESFgoJYWZ0ZXJfc2hhGAQgASgJQgOAAQESNwoTcHVzaGVkX2F0X3RpbWVzdGFtcBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDgoGZm9yY2VkGAYgASgIEjkKFWhlYWRfY29tbWl0X3RpbWVzdGFtcBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiQwoIVXNlckluZm8SEgoFbG9naW4YASABKAlCA4ABARISCgVlbWFpbBgCIAEoCUIDgAEBEg8KB25vZGVfaWQYAyABKAkiwgEKEUluc3RhbGxhdGlvbkV2ZW50EicKBXJlcG9zGAEgAygLMhguZ2l0aHViX2V2ZW50LlJlcG9zaXRvcnkSDgoGYWN0aW9uGAIgASgJEisKBnNlbmRlchgDIAEoCzIWLmdpdGh1Yl9ldmVudC5Vc2VySW5mb0gAiAEBEi4KCXJlcXVlc3RlchgEIAEoCzIWLmdpdGh1Yl9ldmVudC5Vc2VySW5mb0gBiAEBQgkKB19zZW5kZXJCDAoKX3JlcXVlc3RlciKtBQoQUHVsbFJlcXVlc3RFdmVudBIsCgpyZXBvc2l0b3J5GAEgASgLMhguZ2l0aHViX2V2ZW50LlJlcG9zaXRvcnkSDgoGYWN0aW9uGAIgASgJEg4KBm51bWJlchgDIAEoDRISCgV0aXRsZRgEIAEoCUIDgAEBEhEKBGJvZHkYBSABKAlCA4ABARINCgVzdGF0ZRgGIAEoCRImCgZhdXRob3IYByABKAsyFi5naXRodWJfZXZlbnQuVXNlckluZm8SLQoIYXNzaWduZWUYCCABKAsyFi5naXRodWJfZXZlbnQuVXNlckluZm9IAIgBARITCgZsYWJlbHMYCSADKAlCA4ABARIuCgpjcmVhdGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIVCghoZWFkX3JlZhgMIAEoCUIDgAEBEhUKCGhlYWRfc2hhGA0gASgJQgOAAQESFQoIYmFzZV9yZWYYDiABKAlCA4ABARIVCghiYXNlX3NoYRgPIAEoCUIDgAEBEjMKE3JlcXVlc3RlZF9yZXZpZXdlcnMYECADKAsyFi5naXRodWJfZXZlbnQuVXNlckluZm8SDQoFZHJhZnQYESABKAgSDgoGbWVyZ2VkGBIgASgIEjIKCW1lcmdlZF9hdBgTIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIWCglhZGRpdGlvbnMYFCABKANIAogBARIWCglkZWxldGlvbnMYFSABKANIA4gBAUILCglfYXNzaWduZWVCDAoKX21lcmdlZF9hdEIMCgpfYWRkaXRpb25zQgwKCl9kZWxldGlvbnMi4gEKB0NvbW1lbnQSEQoEYm9keRgBIAEoCUIDgAEBEgoKAmlkGAIgASgDEiQKBHVzZXIYAyABKAsyFi5naXRodWJfZXZlbnQuVXNlckluZm8SLgoKY3JlYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASEQoEcGF0aBgGIAEoCUIDgAEBEgwKBGxpbmUYByABKAUSEQoJY29tbWl0X2lkGAggASgJIocCCh1QdWxsUmVxdWVzdFJldmlld0NvbW1lbnRFdmVudBIsCgpyZXBvc2l0b3J5GAEgASgLMhguZ2l0aHViX2V2ZW50LlJlcG9zaXRvcnkSDgoGYWN0aW9uGAIgASgJEg4KBm51bWJlchgDIAEoDRImCgdjb21tZW50GAQgASgLMhUuZ2l0aHViX2V2ZW50LkNvbW1lbnQSHwoScHVsbF9yZXF1ZXN0X3RpdGxlGAUgASgJQgOAAQESGgoScHVsbF9yZXF1ZXN0X3N0YXRlGAYgASgJEjMKE3B1bGxfcmVxdWVzdF9hdXRob3IYByABKAsyFi5naXRodWJfZXZlbnQuVXNlckluZm8i7gEKCkNoZWNrU3VpdGUSCgoCaWQYASABKAMSFQoIaGVhZF9zaGEYAiABKAlCA4ABARIOCgZzdGF0dXMYAyABKAkSEgoKY29uY2x1c2lvbhgEIAEoCRIuCgpjcmVhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI5Cg1wdWxsX3JlcXVlc3RzGAcgAygLMiIuZ2l0aHViX2V2ZW50LlB1bGxSZXF1ZXN0UmVmZXJlbmNlInEKFFB1bGxSZXF1ZXN0UmVmZXJlbmNlEg4KBm51bWJlchgBIAEoDRISCgV0aXRsZRgCIAEoCUIDgAEBEg0KBXN0YXRlGAMgASgJEiYKBmF1dGhvchgEIAEoCzIWLmdpdGh1Yl9ldmVudC5Vc2VySW5mbyJ+Cg9DaGVja1N1aXRlRXZlbnQSLAoKcmVwb3NpdG9yeRgBIAEoCzIYLmdpdGh1Yl9ldmVudC5SZXBvc2l0b3J5Eg4KBmFjdGlvbhgCIAEoCRItCgtjaGVja19zdWl0ZRgDIAEoCzIYLmdpdGh1Yl9ldmVudC5DaGVja1N1aXRlIrMBCgxJc3N1ZUNvbW1lbnQSEQoEYm9keRgBIAEoCUIDgAEBEgoKAmlkGAIgASgDEiQKBHVzZXIYAyABKAsyFi5naXRodWJfZXZlbnQuVXNlckluZm8SLgoKY3JlYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAihAIKEUlzc3VlQ29tbWVudEV2ZW50EiwKCnJlcG9zaXRvcnkYASABKAsyGC5naXRodWJfZXZlbnQuUmVwb3NpdG9yeRIOCgZhY3Rpb24YAiABKAkSDgoGbnVtYmVyGAMgASgNEisKB2NvbW1lbnQYBCABKAsyGi5naXRodWJfZXZlbnQuSXNzdWVDb21tZW50EhgKC2lzc3VlX3RpdGxlGAUgASgJQgOAAQESEwoLaXNzdWVfc3RhdGUYBiABKAkSFwoPaXNfcHVsbF9yZXF1ZXN0GAcgASgIEiwKDGlzc3VlX2F1dGhvchgIIAEoCzIWLmdpdGh1Yl9ldmVudC5Vc2VySW5mbyLQAQoMQ29tbWl0U3RhdHVzEg0KBXN0YXRlGAEgASgJEhcKCnRhcmdldF91cmwYAiABKAlCA4ABARIYCgtkZXNjcmlwdGlvbhgDIAEoCUIDgAEBEhQKB2NvbnRleHQYBCABKAlCA4ABARIzCgpjcmVhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIDgAEBEjMKCnVwZGF0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgOAAQEiwwEKC1N0YXR1c0V2ZW50EjEKCnJlcG9zaXRvcnkYASABKAsyGC5naXRodWJfZXZlbnQuUmVwb3NpdG9yeUIDgAEBEgsKA3NoYRgCIAEoCRINCgVzdGF0ZRgDIAEoCRIqCgZzdGF0dXMYBCABKAsyGi5naXRodWJfZXZlbnQuQ29tbWl0U3RhdHVzEjkKDXB1bGxfcmVxdWVzdHMYBSADKAsyIi5naXRodWJfZXZlbnQuUHVsbFJlcXVlc3RSZWZlcmVuY2Ui+wMKC0dpdGh1YkV2ZW50Ei0KCG1ldGFkYXRhGAEgASgLMhsuZ2l0aHViX2V2ZW50LkV2ZW50TWV0YWRhdGESEgoKZXZlbnRfdHlwZRgCIAEoCRInCgRwdXNoGAMgASgLMhcuZ2l0aHViX2V2ZW50LlB1c2hFdmVudEgAEjcKDGluc3RhbGxhdGlvbhgEIAEoCzIfLmdpdGh1Yl9ldmVudC5JbnN0YWxsYXRpb25FdmVudEgAEjYKDHB1bGxfcmVxdWVzdBgFIAEoCzIeLmdpdGh1Yl9ldmVudC5QdWxsUmVxdWVzdEV2ZW50SAASUgobcHVsbF9yZXF1ZXN0X3Jldmlld19jb21tZW50GAYgASgLMisuZ2l0aHViX2V2ZW50LlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudEV2ZW50SAASNAoLY2hlY2tfc3VpdGUYByABKAsyHS5naXRodWJfZXZlbnQuQ2hlY2tTdWl0ZUV2ZW50SAASOAoNaXNzdWVfY29tbWVudBgIIAEoCzIfLmdpdGh1Yl9ldmVudC5Jc3N1ZUNvbW1lbnRFdmVudEgAEisKBnN0YXR1cxgJIAEoCzIZLmdpdGh1Yl9ldmVudC5TdGF0dXNFdmVudEgAEhUKCHJhd19qc29uGAogASgJQgOAAQFCBwoFZXZlbnRiBnByb3RvMw",[ha])});var XIe,o_n,a_n,l_n,Kct=C(()=>{"use strict";Ml();Au();XIe=Zr("CidzZXJ2aWNlcy9pbnRlZ3JhdGlvbnMvZ2xlYW4vZ2xlYW4ucHJvdG8SBWdsZWFuIq8FCghEb2N1bWVudBITCgtkb2N1bWVudF9pZBgBIAEoCRINCgV0aXRsZRgCIAEoCRIPCgdjb250ZW50GAMgASgJEioKDWRvY3VtZW50X3R5cGUYBCABKA4yEy5nbGVhbi5Eb2N1bWVudFR5cGUSJgoLZGF0YV9zb3VyY2UYBSABKA4yES5nbGVhbi5EYXRhU291cmNlEgsKA3VybBgGIAEoCRIhCghjaGlsZHJlbhgHIAMoCzIPLmdsZWFuLkRvY3VtZW50Eh0KBmF1dGhvchgIIAEoCzINLmdsZWFuLlBlcnNvbhIuCgpjcmVhdGVkX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp2aXNpYmlsaXR5GAsgASgOMhouZ2xlYW4uRG9jdW1lbnQuVmlzaWJpbGl0eRIpCghzbmlwcGV0cxgMIAMoCzIXLmdsZWFuLkRvY3VtZW50LlNuaXBwZXQSGAoQZGF0YV9zb3VyY2VfbmFtZRgNIAEoCRpUCgdTbmlwcGV0EgwKBHRleHQYASABKAkSEwoLc3RhcnRfcmFuZ2UYAiABKAUSEQoJZW5kX3JhbmdlGAMgASgFEhMKC2RvY3VtZW50X2lkGAQgASgJIp8BCgpWaXNpYmlsaXR5EhoKFlVOU1BFQ0lGSUVEX1ZJU0lCSUxJVFkQABIPCgtQVUJMSUNfTElOSxABEhIKDlBVQkxJQ19WSVNJQkxFEAISEgoORE9NQUlOX1ZJU0lCTEUQAxIPCgtET01BSU5fTElOSxAEEgsKB1BSSVZBVEUQBRIeChpTUEVDSUZJQ19QRU9QTEVfQU5EX0dST1VQUxAGIiIKBlBlcnNvbhIMCgRuYW1lGAEgASgJEgoKAmlkGAIgASgJImEKDVNlYXJjaFJlcXVlc3QSDQoFcXVlcnkYASABKAkSHAoUaW5jbHVkZV9wcml2YXRlX2RvY3MYAiABKAgSDwoHdXNlcl9pZBgDIAEoCRISCgp1c2VyX2VtYWlsGAQgASgJIlwKDlNlYXJjaFJlc3BvbnNlEiIKCWRvY3VtZW50cxgBIAMoCzIPLmdsZWFuLkRvY3VtZW50EhEKCW9hdXRoX3VybBgCIAEoCRITCgtzdGF0dXNfY29kZRgDIAEoBSpYCgpEYXRhU291cmNlEhsKF1VOU1BFQ0lGSUVEX0RBVEFfU09VUkNFEAASCQoFU0xBQ0sQARIKCgZOT1RJT04QAhIKCgZMSU5FQVIQAxIKCgZHSVRIVUIQBCpuCgxEb2N1bWVudFR5cGUSHQoZVU5TUEVDSUZJRURfRE9DVU1FTlRfVFlQRRAAEggKBFBBR0UQARILCgdNRVNTQUdFEAISCwoHQ0hBTk5FTBADEhAKDENPTlZFUlNBVElPThAEEgkKBUlTU1VFEAVCQlpAZ2l0aHViLmNvbS9hdWdtZW50Y29kZS9hdWdtZW50L3NlcnZpY2VzL2ludGVncmF0aW9ucy9nbGVhbi9wcm90b2IGcHJvdG8z",[ha]);(function(e){e[e.UNSPECIFIED_VISIBILITY=0]="UNSPECIFIED_VISIBILITY",e[e.PUBLIC_LINK=1]="PUBLIC_LINK",e[e.PUBLIC_VISIBLE=2]="PUBLIC_VISIBLE",e[e.DOMAIN_VISIBLE=3]="DOMAIN_VISIBLE",e[e.DOMAIN_LINK=4]="DOMAIN_LINK",e[e.PRIVATE=5]="PRIVATE",e[e.SPECIFIC_PEOPLE_AND_GROUPS=6]="SPECIFIC_PEOPLE_AND_GROUPS"})(o_n||(o_n={}));(function(e){e[e.UNSPECIFIED_DATA_SOURCE=0]="UNSPECIFIED_DATA_SOURCE",e[e.SLACK=1]="SLACK",e[e.NOTION=2]="NOTION",e[e.LINEAR=3]="LINEAR",e[e.GITHUB=4]="GITHUB"})(a_n||(a_n={}));(function(e){e[e.UNSPECIFIED_DOCUMENT_TYPE=0]="UNSPECIFIED_DOCUMENT_TYPE",e[e.PAGE=1]="PAGE",e[e.MESSAGE=2]="MESSAGE",e[e.CHANNEL=3]="CHANNEL",e[e.CONVERSATION=4]="CONVERSATION",e[e.ISSUE=5]="ISSUE"})(l_n||(l_n={}))});var c_n,u_n=C(()=>{"use strict";Ml();c_n=Zr("CjFzZXJ2aWNlcy9pbnRlZ3JhdGlvbnMvc2xhY2tfYm90L3NsYWNrX2V2ZW50LnByb3RvEghzbGFja2JvdCKzAQoNRXZlbnRNZXRhZGF0YRIPCgd0ZWFtX2lkGAEgASgJEhUKDWVudGVycHJpc2VfaWQYAiABKAkSEQoJdGVuYW50X2lkGAMgASgJEhIKCnJlcXVlc3RfaWQYBCABKAkSEwoLdGVuYW50X25hbWUYBSABKAkSFwoPc2hhcmRfbmFtZXNwYWNlGAYgASgJEhMKC3JpX2V2ZW50X2lkGAcgASgJEhAKCGV2ZW50X2lkGAggASgJIrEBCg9BcHBNZW50aW9uRXZlbnQSEQoEdGV4dBgDIAEoCUIDgAEBEgwKBHVzZXIYBCABKAkSEQoJdGltZXN0YW1wGAUgASgJEhgKEHRocmVhZF90aW1lc3RhbXAYBiABKAkSDwoHY2hhbm5lbBgHIAEoCRIXCg9ldmVudF90aW1lc3RhbXAYCCABKAkSEQoJdXNlcl90ZWFtGAkgASgJEhMKC3NvdXJjZV90ZWFtGAogASgJIvcBCgxNZXNzYWdlRXZlbnQSFQoNY2xpZW50X21zZ19pZBgBIAEoCRIMCgR1c2VyGAIgASgJEgwKBHRleHQYAyABKAkSGAoQdGhyZWFkX3RpbWVzdGFtcBgEIAEoCRIRCgl0aW1lc3RhbXAYBSABKAkSDwoHY2hhbm5lbBgGIAEoCRIUCgxjaGFubmVsX3R5cGUYByABKAkSFwoPZXZlbnRfdGltZXN0YW1wGAggASgJEhEKCXVzZXJfdGVhbRgJIAEoCRITCgtzb3VyY2VfdGVhbRgKIAEoCRIPCgdzdWJ0eXBlGAsgASgJEg4KBmJvdF9pZBgMIAEoCSKhAQoSUmVhY3Rpb25BZGRlZEV2ZW50EgwKBHVzZXIYASABKAkSEQoJaXRlbV91c2VyGAIgASgJEhcKD2V2ZW50X3RpbWVzdGFtcBgDIAEoCRIRCglpdGVtX3R5cGUYBCABKAkSFAoMaXRlbV9jaGFubmVsGAUgASgJEhAKCHJlYWN0aW9uGAYgASgJEhYKDml0ZW1fdGltZXN0YW1wGAcgASgJImMKGE1lbWJlckpvaW5lZENoYW5uZWxFdmVudBIMCgR1c2VyGAEgASgJEg8KB2NoYW5uZWwYAiABKAkSFwoPZXZlbnRfdGltZXN0YW1wGAMgASgJEg8KB2ludml0ZXIYBCABKAkiPgoTQXBwVW5pbnN0YWxsZWRFdmVudBIXCg9ldmVudF90aW1lc3RhbXAYASABKAMSDgoGYXBwX2lkGAIgASgJIkwKEkFwcEhvbWVPcGVuZWRFdmVudBIMCgR1c2VyGAEgASgJEg8KB2NoYW5uZWwYAiABKAkSFwoPZXZlbnRfdGltZXN0YW1wGAMgASgJImQKEkNoYW5uZWxDcmVhdGVkSW5mbxIKCgJpZBgBIAEoCRISCgppc19jaGFubmVsGAIgASgIEgwKBG5hbWUYAyABKAkSDwoHY3JlYXRlZBgEIAEoAxIPCgdjcmVhdG9yGAUgASgJIl0KE0NoYW5uZWxDcmVhdGVkRXZlbnQSLQoHY2hhbm5lbBgBIAEoCzIcLnNsYWNrYm90LkNoYW5uZWxDcmVhdGVkSW5mbxIXCg9ldmVudF90aW1lc3RhbXAYAiABKAki7QMKClNsYWNrRXZlbnQSKQoIbWV0YWRhdGEYASABKAsyFy5zbGFja2JvdC5FdmVudE1ldGFkYXRhEhIKCmV2ZW50X3R5cGUYAiABKAkSMAoLYXBwX21lbnRpb24YAyABKAsyGS5zbGFja2JvdC5BcHBNZW50aW9uRXZlbnRIABIpCgdtZXNzYWdlGAQgASgLMhYuc2xhY2tib3QuTWVzc2FnZUV2ZW50SAASNgoOcmVhY3Rpb25fYWRkZWQYBSABKAsyHC5zbGFja2JvdC5SZWFjdGlvbkFkZGVkRXZlbnRIABJDChVtZW1iZXJfam9pbmVkX2NoYW5uZWwYBiABKAsyIi5zbGFja2JvdC5NZW1iZXJKb2luZWRDaGFubmVsRXZlbnRIABI4Cg9hcHBfdW5pbnN0YWxsZWQYByABKAsyHS5zbGFja2JvdC5BcHBVbmluc3RhbGxlZEV2ZW50SAASNwoPYXBwX2hvbWVfb3BlbmVkGAggASgLMhwuc2xhY2tib3QuQXBwSG9tZU9wZW5lZEV2ZW50SAASOAoPY2hhbm5lbF9jcmVhdGVkGAogASgLMh0uc2xhY2tib3QuQ2hhbm5lbENyZWF0ZWRFdmVudEgAEhAKCHJhd19qc29uGAkgASgJQgcKBWV2ZW50YgZwcm90bzM")});var d_n,p_n=C(()=>{"use strict";Ml();Au();$P();Kct();d_n=Zr("CiBzZXJ2aWNlcy9zZXR0aW5ncy9zZXR0aW5ncy5wcm90bxIIc2V0dGluZ3Mi9AUKE01jcE9BdXRoQ3JlZGVudGlhbHMSFAoMYWNjZXNzX3Rva2VuGAEgASgJEhoKDXJlZnJlc2hfdG9rZW4YAiABKAlIAIgBARJAChdhY2Nlc3NfdG9rZW5fZXhwaXJlc19hdBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIXCgp0b2tlbl90eXBlGAQgASgJSAKIAQESEgoFc2NvcGUYBSABKAlIA4gBARIeChZhdXRob3JpemF0aW9uX2VuZHBvaW50GAYgASgJEhYKDnRva2VuX2VuZHBvaW50GAcgASgJEhMKBmlzc3VlchgIIAEoCUgEiAEBEhEKCWNsaWVudF9pZBgJIAEoCRIaCg1jbGllbnRfc2VjcmV0GAogASgJSAWIAQESHgoRaGFzX3JlZnJlc2hfdG9rZW4YCyABKAhIBogBARIdChBvYXV0aF9zZWNyZXRfa2V5GAwgASgJSAeIAQESKQocb2F1dGhfc2VjcmV0X293bmVyX2NvbmZpZ19pZBgNIAEoCUgIiAEBEicKGnRva2VuX2VuZHBvaW50X2F1dGhfbWV0aG9kGA4gASgJSAmIAQESLAokb2F1dGhfc2VjcmV0X293bmVyX2NvbmZpZ19pZF9hbGlhc2VzGA8gAygJEhwKD29hdXRoX3NlY3JldF9pZBgQIAEoCUgKiAEBQhAKDl9yZWZyZXNoX3Rva2VuQhoKGF9hY2Nlc3NfdG9rZW5fZXhwaXJlc19hdEINCgtfdG9rZW5fdHlwZUIICgZfc2NvcGVCCQoHX2lzc3VlckIQCg5fY2xpZW50X3NlY3JldEIUChJfaGFzX3JlZnJlc2hfdG9rZW5CEwoRX29hdXRoX3NlY3JldF9rZXlCHwodX29hdXRoX3NlY3JldF9vd25lcl9jb25maWdfaWRCHQobX3Rva2VuX2VuZHBvaW50X2F1dGhfbWV0aG9kQhIKEF9vYXV0aF9zZWNyZXRfaWRiBnByb3RvMw",[PN,ha,Wy,XIe])});var y_n,m_n,f_n,h_n,g_n,b_n,A_n=C(()=>{"use strict";Ml();Au();$P();Ooe();p_n();y_n=Zr("CipzZXJ2aWNlcy9yZW1vdGVfYWdlbnRzL3JlbW90ZV9hZ2VudHMucHJvdG8SDXJlbW90ZV9hZ2VudHMiQAoQQWRkU1NIS2V5UmVxdWVzdBIXCg9yZW1vdGVfYWdlbnRfaWQYASABKAkSEwoLcHVibGljX2tleXMYAiADKAkiRgoRQWRkU1NIS2V5UmVzcG9uc2USMQoKc3NoX2NvbmZpZxgBIAEoCzIdLnJlbW90ZV9hZ2VudHMuQWdlbnRTU0hDb25maWcixwMKBUFnZW50EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCRIqCgZzdGF0dXMYAiABKA4yGi5yZW1vdGVfYWdlbnRzLkFnZW50U3RhdHVzEioKBmNvbmZpZxgDIAEoCzIaLnJlbW90ZV9hZ2VudHMuQWdlbnRDb25maWcSLgoKY3JlYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASNgoKc3NoX2NvbmZpZxgGIAEoCzIdLnJlbW90ZV9hZ2VudHMuQWdlbnRTU0hDb25maWdIAIgBARIYCgtoYXNfdXBkYXRlcxgHIAEoCEgBiAEBEjgKEHdvcmtzcGFjZV9zdGF0dXMYCCABKA4yHi5yZW1vdGVfYWdlbnRzLldvcmtzcGFjZVN0YXR1cxIzCgpleHBpcmVzX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBQg0KC19zc2hfY29uZmlnQg4KDF9oYXNfdXBkYXRlc0INCgtfZXhwaXJlc19hdCL2BgoLQWdlbnRDb25maWcSNgoPd29ya3NwYWNlX3NldHVwGAEgASgLMh0ucmVtb3RlX2FnZW50cy5Xb3Jrc3BhY2VTZXR1cBItCg5zdGFydGluZ19ub2RlcxgCIAMoCzIVLmNoYXQuQ2hhdFJlcXVlc3ROb2RlEhwKD3VzZXJfZ3VpZGVsaW5lcxgDIAEoCUgAiAEBEiEKFHdvcmtzcGFjZV9ndWlkZWxpbmVzGAQgASgJSAGIAQESEgoFbW9kZWwYBiABKAlIAogBARIiChVpc19zZXR1cF9zY3JpcHRfYWdlbnQYByABKAhIA4gBARIzCgttY3Bfc2VydmVycxgIIAMoCzIeLnJlbW90ZV9hZ2VudHMuTWNwU2VydmVyQ29uZmlnEhIKBXRpdGxlGAkgASgJSASIAQESOQoOcmVxdWVzdF9zb3VyY2UYCiABKA4yHC5yZW1vdGVfYWdlbnRzLlJlcXVlc3RTb3VyY2VIBYgBARIWCg5kaXNhYmxlZF90b29scxgMIAMoCRJSChVtY3Bfb2F1dGhfY3JlZGVudGlhbHMYDSADKAsyMy5yZW1vdGVfYWdlbnRzLkFnZW50Q29uZmlnLk1jcE9hdXRoQ3JlZGVudGlhbHNFbnRyeRItCghib3RfdHlwZRgOIAEoDjIWLmF1dGhfZW50aXRpZXMuQm90VHlwZUgGiAEBEhsKDmNvcnJlbGF0aW9uX2lkGA8gASgJSAeIAQESLwoic2tpcF9mZWF0dXJlX2dhdGluZ19mb3JfZnJlZV90cmlhbBgQIAEoCEgIiAEBGlkKGE1jcE9hdXRoQ3JlZGVudGlhbHNFbnRyeRILCgNrZXkYASABKAkSLAoFdmFsdWUYAiABKAsyHS5zZXR0aW5ncy5NY3BPQXV0aENyZWRlbnRpYWxzOgI4AUISChBfdXNlcl9ndWlkZWxpbmVzQhcKFV93b3Jrc3BhY2VfZ3VpZGVsaW5lc0IICgZfbW9kZWxCGAoWX2lzX3NldHVwX3NjcmlwdF9hZ2VudEIICgZfdGl0bGVCEQoPX3JlcXVlc3Rfc291cmNlQgsKCV9ib3RfdHlwZUIRCg9fY29ycmVsYXRpb25faWRCJQojX3NraXBfZmVhdHVyZV9nYXRpbmdfZm9yX2ZyZWVfdHJpYWxKBAgFEAZKBAgLEAwicwoOQWdlbnRTU0hDb25maWcSEwoLcHVibGljX2tleXMYASADKAkSEAoIaG9zdG5hbWUYAiABKAkSOgoSc3NoX2NvbmZpZ19vcHRpb25zGAMgAygLMh4ucmVtb3RlX2FnZW50cy5TU0hDb25maWdPcHRpb24iYgoLQ2hhdFJlcXVlc3QSFwoPcmVtb3RlX2FnZW50X2lkGAEgASgJEjoKD3JlcXVlc3RfZGV0YWlscxgCIAEoCzIhLnJlbW90ZV9hZ2VudHMuQ2hhdFJlcXVlc3REZXRhaWxzIo8CChJDaGF0UmVxdWVzdERldGFpbHMSLAoNcmVxdWVzdF9ub2RlcxgBIAMoCzIVLmNoYXQuQ2hhdFJlcXVlc3ROb2RlEhwKD3VzZXJfZ3VpZGVsaW5lcxgCIAEoCUgAiAEBEiEKFHdvcmtzcGFjZV9ndWlkZWxpbmVzGAMgASgJSAGIAQESFQoIbW9kZWxfaWQYBSABKAlIAogBARIzCgttY3Bfc2VydmVycxgGIAMoCzIeLnJlbW90ZV9hZ2VudHMuTWNwU2VydmVyQ29uZmlnQhIKEF91c2VyX2d1aWRlbGluZXNCFwoVX3dvcmtzcGFjZV9ndWlkZWxpbmVzQgsKCV9tb2RlbF9pZEoECAQQBSIOCgxDaGF0UmVzcG9uc2UiaAoSQ3JlYXRlQWdlbnRSZXF1ZXN0EioKBmNvbmZpZxgBIAEoCzIaLnJlbW90ZV9hZ2VudHMuQWdlbnRDb25maWcSFwoKaW1hZ2VfbmFtZRgCIAEoCUgAiAEBQg0KC19pbWFnZV9uYW1lIjoKE0NyZWF0ZUFnZW50UmVzcG9uc2USIwoFYWdlbnQYASABKAsyFC5yZW1vdGVfYWdlbnRzLkFnZW50Ii0KEkRlbGV0ZUFnZW50UmVxdWVzdBIXCg9yZW1vdGVfYWdlbnRfaWQYASABKAkiFQoTRGVsZXRlQWdlbnRSZXNwb25zZSJ4ChZEaWZmRXhwbGFuYXRpb25TZWN0aW9uEg0KBXRpdGxlGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEjoKCHNlY3Rpb25zGAMgAygLMigucmVtb3RlX2FnZW50cy5EaWZmRXhwbGFuYXRpb25TdWJTZWN0aW9uIqEBChlEaWZmRXhwbGFuYXRpb25TdWJTZWN0aW9uEg0KBXRpdGxlGAEgASgJEkkKDGRlc2NyaXB0aW9ucxgCIAMoCzIzLnJlbW90ZV9hZ2VudHMuRGlmZkV4cGxhbmF0aW9uU3ViU2VjdGlvbkRlc2NyaXB0aW9uEioKCWRpZmZfdHlwZRgDIAEoDjIXLnJlbW90ZV9hZ2VudHMuRGlmZlR5cGUifgokRGlmZkV4cGxhbmF0aW9uU3ViU2VjdGlvbkRlc2NyaXB0aW9uEgwKBHBhdGgYASABKAkSDAoEdGV4dBgCIAEoCRIjCgVyYW5nZRgDIAEoCzIULnJlbW90ZV9hZ2VudHMuUmFuZ2USFQoNc2VsZWN0ZWRfY29kZRgEIAEoCSJlChZHZW5lcmF0ZVN1bW1hcnlSZXF1ZXN0EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCRIZChFzdGFydF9zZXF1ZW5jZV9pZBgCIAEoDRIXCg9lbmRfc2VxdWVuY2VfaWQYAyABKA0iWwoXR2VuZXJhdGVTdW1tYXJ5UmVzcG9uc2USQAoRZGlmZl9kZXNjcmlwdGlvbnMYASADKAsyJS5yZW1vdGVfYWdlbnRzLkRpZmZFeHBsYW5hdGlvblNlY3Rpb24iJQoJR2l0aHViUmVmEgsKA3VybBgBIAEoCRILCgNyZWYYAiABKAkiMAoVSW50ZXJydXB0QWdlbnRSZXF1ZXN0EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCSIYChZJbnRlcnJ1cHRBZ2VudFJlc3BvbnNlIoMDCg9NY3BTZXJ2ZXJDb25maWcSFAoHY29tbWFuZBgBIAEoCUgAiAEBEgwKBGFyZ3MYAiADKAkSFwoKdGltZW91dF9tcxgDIAEoBUgBiAEBEjQKA2VudhgEIAMoCzInLnJlbW90ZV9hZ2VudHMuTWNwU2VydmVyQ29uZmlnLkVudkVudHJ5EiQKF3VzZV9zaGVsbF9pbnRlcnBvbGF0aW9uGAUgASgISAKIAQESEQoEbmFtZRgGIAEoCUgDiAEBEhUKCGRpc2FibGVkGAcgASgISASIAQESEQoEdHlwZRgIIAEoCUgFiAEBEhAKA3VybBgJIAEoCUgGiAEBGioKCEVudkVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCCgoIX2NvbW1hbmRCDQoLX3RpbWVvdXRfbXNCGgoYX3VzZV9zaGVsbF9pbnRlcnBvbGF0aW9uQgcKBV9uYW1lQgsKCV9kaXNhYmxlZEIHCgVfdHlwZUIGCgRfdXJsIiwKEVBhdXNlQWdlbnRSZXF1ZXN0EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCSIUChJQYXVzZUFnZW50UmVzcG9uc2UiIwoFUmFuZ2USDQoFc3RhcnQYASABKAUSCwoDZW5kGAIgASgFIi0KElJlc3VtZUFnZW50UmVxdWVzdBIXCg9yZW1vdGVfYWdlbnRfaWQYASABKAkiFQoTUmVzdW1lQWdlbnRSZXNwb25zZSJsChZSZXN1bWVIaW50QWdlbnRSZXF1ZXN0EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCRI5CgtoaW50X3JlYXNvbhgCIAEoDjIkLnJlbW90ZV9hZ2VudHMuUmVzdW1lSGludEFnZW50UmVhc29uIjEKF1Jlc3VtZUhpbnRBZ2VudFJlc3BvbnNlEhYKDnJlc3VtZV9zdGFydGVkGAEgASgIIi0KD1NTSENvbmZpZ09wdGlvbhILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAkiUwoSVXBkYXRlQWdlbnRSZXF1ZXN0EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCRIWCgluZXdfdGl0bGUYAiABKAlIAIgBAUIMCgpfbmV3X3RpdGxlIjoKE1VwZGF0ZUFnZW50UmVzcG9uc2USIwoFYWdlbnQYASABKAsyFC5yZW1vdGVfYWdlbnRzLkFnZW50ItACCg5Xb3Jrc3BhY2VTZXR1cBIuCgpnaXRodWJfcmVmGAEgASgLMhgucmVtb3RlX2FnZW50cy5HaXRodWJSZWZIABISCgVwYXRjaBgCIAEoCUgBiAEBEhkKDHNldHVwX3NjcmlwdBgDIAEoCUgCiAEBEhIKBXRva2VuGAQgASgJSAOIAQESFAoHYXBpX3VybBgFIAEoCUgEiAEBEkAKCmdpdF9jb25maWcYBiADKAsyLC5yZW1vdGVfYWdlbnRzLldvcmtzcGFjZVNldHVwLkdpdENvbmZpZ0VudHJ5GjAKDkdpdENvbmZpZ0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCEAoOc3RhcnRpbmdfZmlsZXNCCAoGX3BhdGNoQg8KDV9zZXR1cF9zY3JpcHRCCAoGX3Rva2VuQgoKCF9hcGlfdXJsKoACCgtBZ2VudFN0YXR1cxIcChhBR0VOVF9TVEFUVVNfVU5TUEVDSUZJRUQQABIYChRBR0VOVF9TVEFUVVNfUEVORElORxAFEhkKFUFHRU5UX1NUQVRVU19TVEFSVElORxABEhgKFEFHRU5UX1NUQVRVU19SVU5OSU5HEAISFQoRQUdFTlRfU1RBVFVTX0lETEUQAxIXChNBR0VOVF9TVEFUVVNfRkFJTEVEEAQSGAoUQUdFTlRfU1RBVFVTX1BBVVNJTkcQBhIXChNBR0VOVF9TVEFUVVNfUEFVU0VEEAcSIQodQUdFTlRfU1RBVFVTX1BFTkRJTkdfREVMRVRJT04QCCqJAQoIRGlmZlR5cGUSDwoLVU5TUEVDSUZJRUQQABIHCgNGSVgQARILCgdGRUFUVVJFEAISDAoIUkVGQUNUT1IQAxIRCg1ET0NVTUVOVEFUSU9OEAQSCQoFU1RZTEUQBRIICgRURVNUEAYSCQoFQ0hPUkUQBxIKCgZSRVZFUlQQCBIJCgVPVEhFUhAJKt8BCg1SZXF1ZXN0U291cmNlEh4KGlJFUVVFU1RfU09VUkNFX1VOU1BFQ0lGSUVEEAASFgoSUkVRVUVTVF9TT1VSQ0VfSURFEAESIgoeUkVRVUVTVF9TT1VSQ0VfQVVHTUVOVF9BQ1RJT05TEAISHAoYUkVRVUVTVF9TT1VSQ0VfU0xBQ0tfQk9UEAMSHQoZUkVRVUVTVF9TT1VSQ0VfR0lUSFVCX0JPVBAEEh0KGVJFUVVFU1RfU09VUkNFX0xJTkVBUl9CT1QQBRIWChJSRVFVRVNUX1NPVVJDRV9DTEkQBiqaAQoVUmVzdW1lSGludEFnZW50UmVhc29uEigKJFJFU1VNRV9BR0VOVF9ISU5UX1JFQVNPTl9VTlNQRUNJRklFRBAAEisKJ1JFU1VNRV9BR0VOVF9ISU5UX1JFQVNPTl9UWVBJTkdfTUVTU0FHRRABEioKJlJFU1VNRV9BR0VOVF9ISU5UX1JFQVNPTl9WSUVXSU5HX0FHRU5UEAIqygEKD1dvcmtzcGFjZVN0YXR1cxIgChxXT1JLU1BBQ0VfU1RBVFVTX1VOU1BFQ0lGSUVEEAASHAoYV09SS1NQQUNFX1NUQVRVU19SVU5OSU5HEAESHAoYV09SS1NQQUNFX1NUQVRVU19QQVVTSU5HEAISGwoXV09SS1NQQUNFX1NUQVRVU19QQVVTRUQQAxIdChlXT1JLU1BBQ0VfU1RBVFVTX1JFU1VNSU5HEAQSHQoZV09SS1NQQUNFX1NUQVRVU19ERUxFVElORxAFYgZwcm90bzM",[ha,Wy,WP,d_n]);(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.PENDING=5]="PENDING",e[e.STARTING=1]="STARTING",e[e.RUNNING=2]="RUNNING",e[e.IDLE=3]="IDLE",e[e.FAILED=4]="FAILED",e[e.PAUSING=6]="PAUSING",e[e.PAUSED=7]="PAUSED",e[e.PENDING_DELETION=8]="PENDING_DELETION"})(m_n||(m_n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.FIX=1]="FIX",e[e.FEATURE=2]="FEATURE",e[e.REFACTOR=3]="REFACTOR",e[e.DOCUMENTATION=4]="DOCUMENTATION",e[e.STYLE=5]="STYLE",e[e.TEST=6]="TEST",e[e.CHORE=7]="CHORE",e[e.REVERT=8]="REVERT",e[e.OTHER=9]="OTHER"})(f_n||(f_n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.IDE=1]="IDE",e[e.AUGMENT_ACTIONS=2]="AUGMENT_ACTIONS",e[e.SLACK_BOT=3]="SLACK_BOT",e[e.GITHUB_BOT=4]="GITHUB_BOT",e[e.LINEAR_BOT=5]="LINEAR_BOT",e[e.CLI=6]="CLI"})(h_n||(h_n={}));(function(e){e[e.RESUME_AGENT_HINT_REASON_UNSPECIFIED=0]="RESUME_AGENT_HINT_REASON_UNSPECIFIED",e[e.RESUME_AGENT_HINT_REASON_TYPING_MESSAGE=1]="RESUME_AGENT_HINT_REASON_TYPING_MESSAGE",e[e.RESUME_AGENT_HINT_REASON_VIEWING_AGENT=2]="RESUME_AGENT_HINT_REASON_VIEWING_AGENT"})(g_n||(g_n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.RUNNING=1]="RUNNING",e[e.PAUSING=2]="PAUSING",e[e.PAUSED=3]="PAUSED",e[e.RESUMING=4]="RESUMING",e[e.DELETING=5]="DELETING"})(b_n||(b_n={}))});var E_n,__n=C(()=>{"use strict";Ml();Au();E_n=Zr("ChpzZXJ2aWNlcy9zaGFyZS9zaGFyZS5wcm90bxIFc2hhcmUicQoMQ2hhdEV4Y2hhbmdlEhIKCnJlcXVlc3RfaWQYASABKAkSFAoHbWVzc2FnZRgCIAEoCUIDgAEBEhUKCHJlc3BvbnNlGAMgASgJQgOAAQESIAoTcmVzcG9uc2Vfbm9kZXNfanNvbhgEIAEoCUIDgAEBIioKGkdldENoYXRDb252ZXJzYXRpb25SZXF1ZXN0EgwKBHV1aWQYASABKAkiswEKG0dldENoYXRDb252ZXJzYXRpb25SZXNwb25zZRIMCgR1dWlkGAEgASgJEigKBGRhdGUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEgwKBHVzZXIYAyABKAkSFwoPY29udmVyc2F0aW9uX2lkGAQgASgJEiEKBGNoYXQYBSADKAsyEy5zaGFyZS5DaGF0RXhjaGFuZ2USEgoFdGl0bGUYBiABKAlCA4ABASJ7ChtTYXZlQ2hhdENvbnZlcnNhdGlvblJlcXVlc3QSDAoEdXNlchgBIAEoCRIXCg9jb252ZXJzYXRpb25faWQYAiABKAkSIQoEY2hhdBgDIAMoCzITLnNoYXJlLkNoYXRFeGNoYW5nZRISCgV0aXRsZRgEIAEoCUIDgAEBIiwKHFNhdmVDaGF0Q29udmVyc2F0aW9uUmVzcG9uc2USDAoEdXVpZBgBIAEoCTLGAQoFU2hhcmUSXAoTR2V0Q2hhdENvbnZlcnNhdGlvbhIhLnNoYXJlLkdldENoYXRDb252ZXJzYXRpb25SZXF1ZXN0GiIuc2hhcmUuR2V0Q2hhdENvbnZlcnNhdGlvblJlc3BvbnNlEl8KFFNhdmVDaGF0Q29udmVyc2F0aW9uEiIuc2hhcmUuU2F2ZUNoYXRDb252ZXJzYXRpb25SZXF1ZXN0GiMuc2hhcmUuU2F2ZUNoYXRDb252ZXJzYXRpb25SZXNwb25zZWIGcHJvdG8z",[ha])});var K_n,S_n,v_n,x_n,C_n,T_n,I_n,w_n,R_n,N_n,k_n,O_n,M_n,P_n,D_n,B_n,L_n,F_n,U_n,V_n,G_n,W_n,$_n,Q_n,Y_n,H_n,Z_n,j_n,z_n,X_n,q_n=C(()=>{"use strict";Ml();C3();Xct();Au();koe();QEn();XEn();$P();JEn();Ooe();t_n();r_n();s_n();Kct();u_n();A_n();__n();K_n=Zr("Ci5zZXJ2aWNlcy9yZXF1ZXN0X2luc2lnaHQvcmVxdWVzdF9pbnNpZ2h0LnByb3RvEg9yZXF1ZXN0X2luc2lnaHQiYgoNQWdlbnRGZWVkYmFjaxIvCgZyYXRpbmcYASABKA4yHy5yZXF1ZXN0X2luc2lnaHQuRmVlZGJhY2tSYXRpbmcSDAoEbm90ZRgCIAEoCRISCgp1c2VyX2FnZW50GAMgASgJIk0KFUFnZW50SW50ZXJydXB0aW9uRGF0YRISCgpyZXF1ZXN0X2lkGAEgASgJEiAKGGN1cnJfY29udmVyc2F0aW9uX2xlbmd0aBgCIAEoDSKjAgoRQWdlbnRSZXF1ZXN0RXZlbnQSWAofY2hhdF9oaXN0b3J5X3N1bW1hcml6YXRpb25fZGF0YRgFIAEoCzItLnJlcXVlc3RfaW5zaWdodC5DaGF0SGlzdG9yeVN1bW1hcml6YXRpb25EYXRhSAASSAoXZmlyc3RfdG9rZW5fdGltaW5nX2RhdGEYBiABKAsyJS5yZXF1ZXN0X2luc2lnaHQuRmlyc3RUb2tlblRpbWluZ0RhdGFIABISCgpldmVudF9uYW1lGAEgASgJEhIKCnVzZXJfYWdlbnQYAiABKAkSFwoPY29udmVyc2F0aW9uX2lkGAMgASgJEhsKE2NoYXRfaGlzdG9yeV9sZW5ndGgYBCABKA1CDAoKZXZlbnRfZGF0YSIUChJBZ2VudFJldmVyc2lvbkRhdGEiugoKEUFnZW50U2Vzc2lvbkV2ZW50EkMKFGFnZW50X3JldmVyc2lvbl9kYXRhGAQgASgLMiMucmVxdWVzdF9pbnNpZ2h0LkFnZW50UmV2ZXJzaW9uRGF0YUgAEkkKF2FnZW50X2ludGVycnVwdGlvbl9kYXRhGAUgASgLMiYucmVxdWVzdF9pbnNpZ2h0LkFnZW50SW50ZXJydXB0aW9uRGF0YUgAEkgKF3JlbWVtYmVyX3Rvb2xfY2FsbF9kYXRhGAYgASgLMiUucmVxdWVzdF9pbnNpZ2h0LlJlbWVtYmVyVG9vbENhbGxEYXRhSAASSAoXbWVtb3JpZXNfZmlsZV9vcGVuX2RhdGEYByABKAsyJS5yZXF1ZXN0X2luc2lnaHQuTWVtb3JpZXNGaWxlT3BlbkRhdGFIABJLChhpbml0aWFsX29yaWVudGF0aW9uX2RhdGEYCCABKAsyJy5yZXF1ZXN0X2luc2lnaHQuSW5pdGlhbE9yaWVudGF0aW9uRGF0YUgAEkwKGWNsYXNzaWZ5X2FuZF9kaXN0aWxsX2RhdGEYCSABKAsyJy5yZXF1ZXN0X2luc2lnaHQuQ2xhc3NpZnlBbmREaXN0aWxsRGF0YUgAEkEKE2ZsdXNoX21lbW9yaWVzX2RhdGEYCiABKAsyIi5yZXF1ZXN0X2luc2lnaHQuRmx1c2hNZW1vcmllc0RhdGFIABI/ChJtZW1vcmllc19tb3ZlX2RhdGEYCyABKAsyIS5yZXF1ZXN0X2luc2lnaHQuTWVtb3JpZXNNb3ZlRGF0YUgAEkEKE3J1bGVzX2ltcG9ydGVkX2RhdGEYDCABKAsyIi5yZXF1ZXN0X2luc2lnaHQuUnVsZXNJbXBvcnRlZERhdGFIABJCChR0YXNrX2xpc3RfdXNhZ2VfZGF0YRgNIAEoCzIiLnJlcXVlc3RfaW5zaWdodC5UYXNrTGlzdFVzYWdlRGF0YUgAEkkKF2NvbnRlbnRfdHJ1bmNhdGlvbl9kYXRhGA4gASgLMiYucmVxdWVzdF9pbnNpZ2h0LkNvbnRlbnRUcnVuY2F0aW9uRGF0YUgAElAKG21vZGVsX3NlbGVjdGlvbl9jaGFuZ2VfZGF0YRgPIAEoCzIpLnJlcXVlc3RfaW5zaWdodC5Nb2RlbFNlbGVjdGlvbkNoYW5nZURhdGFIABJMChlzY3JpcHRfY2FwdHVyZV9iYXNpY19kYXRhGBAgASgLMicucmVxdWVzdF9pbnNpZ2h0LlNjcmlwdENhcHR1cmVCYXNpY0RhdGFIABI9ChFtZW1vcnlfdXNhZ2VfZGF0YRgRIAEoCzIgLnJlcXVlc3RfaW5zaWdodC5NZW1vcnlVc2FnZURhdGFIABJRChxza2lsbHNfaW5jbHVkZWRfaW5fY2hhdF9kYXRhGBIgASgLMikucmVxdWVzdF9pbnNpZ2h0LlNraWxsc0luY2x1ZGVkSW5DaGF0RGF0YUgAEkwKGXNraWxsX2NvbnRlbnRfbG9hZGVkX2RhdGEYEyABKAsyJy5yZXF1ZXN0X2luc2lnaHQuU2tpbGxDb250ZW50TG9hZGVkRGF0YUgAEkEKE3JldHJpZXZhbF90b29sX2RhdGEYFCABKAsyIi5yZXF1ZXN0X2luc2lnaHQuUmV0cmlldmFsVG9vbERhdGFIABISCgpldmVudF9uYW1lGAEgASgJEhIKCnVzZXJfYWdlbnQYAiABKAkSFwoPY29udmVyc2F0aW9uX2lkGAMgASgJQgwKCmV2ZW50X2RhdGEivggKEEFnZW50VHJhY2luZ0RhdGESOwoFZmxhZ3MYAyADKAsyLC5yZXF1ZXN0X2luc2lnaHQuQWdlbnRUcmFjaW5nRGF0YS5GbGFnc0VudHJ5EjkKBG51bXMYBCADKAsyKy5yZXF1ZXN0X2luc2lnaHQuQWdlbnRUcmFjaW5nRGF0YS5OdW1zRW50cnkSSAoMc3RyaW5nX3N0YXRzGAUgAygLMjIucmVxdWVzdF9pbnNpZ2h0LkFnZW50VHJhY2luZ0RhdGEuU3RyaW5nU3RhdHNFbnRyeRJGCgtyZXF1ZXN0X2lkcxgGIAMoCzIxLnJlcXVlc3RfaW5zaWdodC5BZ2VudFRyYWNpbmdEYXRhLlJlcXVlc3RJZHNFbnRyeRozCgtTdHJpbmdTdGF0cxIRCgludW1fbGluZXMYASABKAUSEQoJbnVtX2NoYXJzGAIgASgFGkwKDFRpbWVkQm9vbGVhbhINCgV2YWx1ZRgBIAEoCBItCgl0aW1lc3RhbXAYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wGksKC1RpbWVkTnVtYmVyEg0KBXZhbHVlGAEgASgBEi0KCXRpbWVzdGFtcBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAafwoQVGltZWRTdHJpbmdTdGF0cxI8CgV2YWx1ZRgBIAEoCzItLnJlcXVlc3RfaW5zaWdodC5BZ2VudFRyYWNpbmdEYXRhLlN0cmluZ1N0YXRzEi0KCXRpbWVzdGFtcBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAaSwoLVGltZWRTdHJpbmcSDQoFdmFsdWUYASABKAkSLQoJdGltZXN0YW1wGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBpcCgpGbGFnc0VudHJ5EgsKA2tleRgBIAEoCRI9CgV2YWx1ZRgCIAEoCzIuLnJlcXVlc3RfaW5zaWdodC5BZ2VudFRyYWNpbmdEYXRhLlRpbWVkQm9vbGVhbjoCOAEaWgoJTnVtc0VudHJ5EgsKA2tleRgBIAEoCRI8CgV2YWx1ZRgCIAEoCzItLnJlcXVlc3RfaW5zaWdodC5BZ2VudFRyYWNpbmdEYXRhLlRpbWVkTnVtYmVyOgI4ARpmChBTdHJpbmdTdGF0c0VudHJ5EgsKA2tleRgBIAEoCRJBCgV2YWx1ZRgCIAEoCzIyLnJlcXVlc3RfaW5zaWdodC5BZ2VudFRyYWNpbmdEYXRhLlRpbWVkU3RyaW5nU3RhdHM6AjgBGmAKD1JlcXVlc3RJZHNFbnRyeRILCgNrZXkYASABKAkSPAoFdmFsdWUYAiABKAsyLS5yZXF1ZXN0X2luc2lnaHQuQWdlbnRUcmFjaW5nRGF0YS5UaW1lZFN0cmluZzoCOAEipwEKFUFwaUh0dHBSZXF1ZXN0RGV0YWlscxITCgtoZWFkZXJfanNvbhgBIAEoCRItCg5vcGFxdWVfdXNlcl9pZBgCIAEoCzIVLmF1dGhfZW50aXRpZXMuVXNlcklkEjIKDHJlcXVlc3RfdHlwZRgDIAEoDjIcLnJlcXVlc3RfaW5zaWdodC5SZXF1ZXN0VHlwZRIWCg5yZXF1ZXN0X3BhcmFtcxgEIAEoCSI2Cg9BcGlIdHRwUmVzcG9uc2USDAoEY29kZRgBIAEoDRIVCg1lcnJvcl9tZXNzYWdlGAIgASgJIqYCChBBdXRvVG9wVXBTZXR0aW5nEhcKD29yYl9jdXN0b21lcl9pZBgBIAEoCRJBCgZhY3Rpb24YAiABKA4yMS5yZXF1ZXN0X2luc2lnaHQuQXV0b1RvcFVwU2V0dGluZy5BdXRvVG9wVXBBY3Rpb24SEQoJdGhyZXNob2xkGAMgASgDEg4KBmFtb3VudBgEIAEoAxIZChFiaWxsaW5nX2VudGl0eV9pZBgFIAEoCRIYChB0b3BfdXBfdGhyZXNob2xkGAYgASgJEhUKDXRvcF91cF9hbW91bnQYByABKAkiRwoPQXV0b1RvcFVwQWN0aW9uEhkKFVVOS05PV05fVE9QX1VQX0FDVElPThAAEgsKB0VOQUJMRUQQARIMCghESVNBQkxFRBACImsKFEJ1dGxlclBsYW5uZXJBdHRlbXB0Eg8KB2F0dGVtcHQYASABKAUSFAoMcmF3X3Jlc3BvbnNlGAIgASgJEhoKDWVycm9yX21lc3NhZ2UYAyABKAlIAIgBAUIQCg5fZXJyb3JfbWVzc2FnZSKaCQoVQnV0bGVyUm91dGluZ1Jlc3BvbnNlEhYKDnNlbGVjdGVkX21vZGVsGAEgASgJEhUKDXJvdXRpbmdfbW9kZWwYAiABKAkSFgoOcm91dGluZ19yZWFzb24YAyABKAkSGQoMcGxhbm5lcl90aWVyGAQgASgJSACIAQESNwoIYXR0ZW1wdHMYBSADKAsyJS5yZXF1ZXN0X2luc2lnaHQuQnV0bGVyUGxhbm5lckF0dGVtcHQSFAoMcm91dGluZ19wYXRoGAYgASgJEiUKGHBsYW5uZXJfZXN0aW1hdGVkX3JvdW5kcxgHIAEoBUgBiAEBEiMKFnBsYW5uZXJfaGlnaF9yZWFzb25pbmcYCCABKAhIAogBARIeChFwbGFubmVyX2Jhc2VfdGllchgJIAEoCUgDiAEBEigKG3BsYW5uZXJfdXNlcl9yZXF1ZXN0ZWRfdGllchgKIAEoCUgEiAEBEiAKE3BsYW5uZXJfcHJvbXB0X2hhc2gYCyABKAlIBYgBARIXCg9jb252ZXJzYXRpb25faWQYDCABKAkSDwoHdHVybl9pZBgNIAEoCRIZChFidXRsZXJfbW9kZWxfbmFtZRgOIAEoCRIRCglpc19zaWxlbnQYDyABKAgSGwoTaXNfdG9vbF9yZXN1bHRfdHVybhgQIAEoCBJECg1zZXNzaW9uX3N0YXRlGBEgASgLMigucmVxdWVzdF9pbnNpZ2h0LkJ1dGxlclNlc3Npb25DYWNoZVN0YXRlSAaIAQESUQoWcGVuZGluZ19yZXRyeV9kZWNpc2lvbhgSIAEoCzIsLnJlcXVlc3RfaW5zaWdodC5CdXRsZXJTdW1tYXJpemVSZXRyeVBlbmRpbmdIB4gBARIUCgxzcnBfZGVjaXNpb24YEyABKAkSHQoQcF93ZWFrX2Nhbl9zb2x2ZRgUIAEoAkgIiAEBEiMKFndlYWtfcHJvYmFiaWxpdHlfZmxvb3IYFSABKAJICYgBARIhChRwcmlzbV9wbGFubmVyX3N0YXR1cxgWIAEoCUgKiAEBEiIKFXByaXNtX3BsYW5uZXJfdmVyc2lvbhgXIAEoCUgLiAEBEiUKGHByaXNtX3BsYW5uZXJfbGF0ZW5jeV9tcxgYIAEoBUgMiAEBQg8KDV9wbGFubmVyX3RpZXJCGwoZX3BsYW5uZXJfZXN0aW1hdGVkX3JvdW5kc0IZChdfcGxhbm5lcl9oaWdoX3JlYXNvbmluZ0IUChJfcGxhbm5lcl9iYXNlX3RpZXJCHgocX3BsYW5uZXJfdXNlcl9yZXF1ZXN0ZWRfdGllckIWChRfcGxhbm5lcl9wcm9tcHRfaGFzaEIQCg5fc2Vzc2lvbl9zdGF0ZUIZChdfcGVuZGluZ19yZXRyeV9kZWNpc2lvbkITChFfcF93ZWFrX2Nhbl9zb2x2ZUIZChdfd2Vha19wcm9iYWJpbGl0eV9mbG9vckIXChVfcHJpc21fcGxhbm5lcl9zdGF0dXNCGAoWX3ByaXNtX3BsYW5uZXJfdmVyc2lvbkIbChlfcHJpc21fcGxhbm5lcl9sYXRlbmN5X21zInAKF0J1dGxlclNlc3Npb25DYWNoZVN0YXRlEhIKCmxhc3RfbW9kZWwYASABKAkSGQoRY29uc2VjdXRpdmVfdHVybnMYAiABKAUSFQoNY2FjaGVkX3Rva2VucxgDIAEoAxIPCgdsYXN0X3RzGAQgASgBIkYKG0J1dGxlclN1bW1hcml6ZVJldHJ5UGVuZGluZxIPCgd0dXJuX2lkGAEgASgJEhYKDnNlbGVjdGVkX21vZGVsGAIgASgJIuIBChJDYW5jZWxTdWJzY3JpcHRpb24SGwoTb3JiX3N1YnNjcmlwdGlvbl9pZBgBIAEoCRI6CghmZWVkYmFjaxgCIAEoCzIoLmF1dGguQ2FuY2VsU3Vic2NyaXB0aW9uUmVxdWVzdC5GZWVkYmFjaxIbChNjYW5jZWxsYXRpb25fcmVhc29uGAMgASgJEh4KFnN0cmlwZV9zdWJzY3JpcHRpb25faWQYBCABKAkSGQoRYmlsbGluZ19lbnRpdHlfaWQYBSABKAkSGwoTYWRkaXRpb25hbF9mZWVkYmFjaxgGIAEoCSIUChJDaGFuZ2VzQXBwbGllZERhdGEiYQoMQ2hhdEZlZWRiYWNrEi8KBnJhdGluZxgBIAEoDjIfLnJlcXVlc3RfaW5zaWdodC5GZWVkYmFja1JhdGluZxIMCgRub3RlGAIgASgJEhIKCnVzZXJfYWdlbnQYAyABKAki6wQKHENoYXRIaXN0b3J5U3VtbWFyaXphdGlvbkRhdGESIAoYdG90YWxfaGlzdG9yeV9jaGFyX2NvdW50GAEgASgNEiQKHHRvdGFsX2hpc3RvcnlfZXhjaGFuZ2VfY291bnQYAiABKA0SFwoPaGVhZF9jaGFyX2NvdW50GAMgASgNEhsKE2hlYWRfZXhjaGFuZ2VfY291bnQYBCABKA0SHAoUaGVhZF9sYXN0X3JlcXVlc3RfaWQYBSABKAkSFwoPdGFpbF9jaGFyX2NvdW50GAYgASgNEhsKE3RhaWxfZXhjaGFuZ2VfY291bnQYByABKA0SHAoUdGFpbF9sYXN0X3JlcXVlc3RfaWQYCCABKAkSGgoSc3VtbWFyeV9jaGFyX2NvdW50GAkgASgNEiEKGXN1bW1hcml6YXRpb25fZHVyYXRpb25fbXMYCiABKA0SIAoYaXNfY2FjaGVfYWJvdXRfdG9fZXhwaXJlGAsgASgIEhIKCmlzX2Fib3J0ZWQYDCABKAgSJgoZdG90YWxfaGlzdG9yeV90b2tlbl9jb3VudBgNIAEoDUgAiAEBEh0KEGhlYWRfdG9rZW5fY291bnQYDiABKA1IAYgBARIdChB0YWlsX3Rva2VuX2NvdW50GA8gASgNSAKIAQESIAoTdG9rZW5zX2Zyb21fYmFja2VuZBgQIAEoCEgDiAEBQhwKGl90b3RhbF9oaXN0b3J5X3Rva2VuX2NvdW50QhMKEV9oZWFkX3Rva2VuX2NvdW50QhMKEV90YWlsX3Rva2VuX2NvdW50QhYKFF90b2tlbnNfZnJvbV9iYWNrZW5kIhkKF0NoYXRJbnB1dENvbXBsZXRpb25FbWl0IjEKHUNoYXRJbnB1dENvbXBsZXRpb25SZXNvbHV0aW9uEhAKCGFjY2VwdGVkGAEgASgIIqAGCg9DaGF0VXNlck1lc3NhZ2USPAoJY2hhdF9tb2RlGAEgASgOMikucmVxdWVzdF9pbnNpZ2h0LkNoYXRVc2VyTWVzc2FnZS5DaGF0TW9kZRIbChNjaGF0X2hpc3RvcnlfbGVuZ3RoGAIgASgNEhgKEGltYWdlX25vZGVfY291bnQYAyABKA0SFwoPY2hhcmFjdGVyX2NvdW50GAQgASgNEhIKCmxpbmVfY291bnQYBSABKA0SLQoOb3BhcXVlX3VzZXJfaWQYBiABKAsyFS5hdXRoX2VudGl0aWVzLlVzZXJJZBIXCgptb2RlbF9uYW1lGAcgASgJSACIAQESHAoPY29udmVyc2F0aW9uX2lkGAggASgJSAGIAQESKAoIYm90X3R5cGUYCSABKA4yFi5hdXRoX2VudGl0aWVzLkJvdFR5cGUSHQoQYWdlbnRfcGVyc29uYV9pZBgKIAEoCUgCiAEBIoMDCghDaGF0TW9kZRISCg5DSEFUX01PREVfQ0hBVBAAEhMKD0NIQVRfTU9ERV9BR0VOVBABEhYKEkNIQVRfTU9ERV9NRU1PUklFUxACEhkKFUNIQVRfTU9ERV9PUklFTlRBVElPThADEiIKHkNIQVRfTU9ERV9NRU1PUklFU19DT01QUkVTU0lPThAEEhoKFkNIQVRfTU9ERV9SRU1PVEVfQUdFTlQQBRIXChNDSEFUX01PREVfQ0xJX0FHRU5UEAYSIAocQ0hBVF9NT0RFX0NMSV9OT05JTlRFUkFDVElWRRAHEhkKFUNIQVRfTU9ERV9DT0RFX1JFVklFVxAIEh8KG0NIQVRfTU9ERV9BR0VOVElDX1NMQUNLX0JPVBAJEiAKHENIQVRfTU9ERV9DT05URVhUX0VOR0lORV9TREsQChIgChxDSEFUX01PREVfQ09OVEVYVF9FTkdJTkVfTUNQEAsSIAocQ0hBVF9NT0RFX1BPU0VJRE9OX0NMSV9BR0VOVBAMQg0KC19tb2RlbF9uYW1lQhIKEF9jb252ZXJzYXRpb25faWRCEwoRX2FnZW50X3BlcnNvbmFfaWQiUQoWQ2xhc3NpZnlBbmREaXN0aWxsRGF0YRI3Cgx0cmFjaW5nX2RhdGEYASABKAsyIS5yZXF1ZXN0X2luc2lnaHQuQWdlbnRUcmFjaW5nRGF0YSJlChBDbGlBZ2VudEZlZWRiYWNrEi8KBnJhdGluZxgBIAEoDjIfLnJlcXVlc3RfaW5zaWdodC5GZWVkYmFja1JhdGluZxIMCgRub3RlGAIgASgJEhIKCnVzZXJfYWdlbnQYAyABKAki6QEKGENsaWVudENvbXBsZXRpb25UaW1lbGluZRI4ChRpbml0aWFsX3JlcXVlc3RfdGltZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMgoOYXBpX3N0YXJ0X3RpbWUYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjAKDGFwaV9lbmRfdGltZRgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLQoJZW1pdF90aW1lGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJcCgxDbGllbnRNZXRyaWMSEgoKZXZlbnRfbmFtZRgBIAEoCRISCgp1c2VyX2FnZW50GAIgASgJEhUKDWNsaWVudF9tZXRyaWMYAyABKAkSDQoFdmFsdWUYBCABKAQiawoRQ2xvc2VTdWJzY3JpcHRpb24SGwoTb3JiX3N1YnNjcmlwdGlvbl9pZBgBIAEoCRIeChZzdHJpcGVfc3Vic2NyaXB0aW9uX2lkGAIgASgJEhkKEWJpbGxpbmdfZW50aXR5X2lkGAMgASgJImEKH0NvbW1pdEF0dHJpYnV0aW9uTW9kZWxCcmVha2Rvd24SEgoKbW9kZWxfbmFtZRgBIAEoCRITCgtsaW5lc19hZGRlZBgCIAEoBRIVCg1saW5lc19kZWxldGVkGAMgASgFIu0CChhDb21taXRBdHRyaWJ1dGlvblN1bW1hcnkSGwoTYXR0cmlidXRpb25fdmVyc2lvbhgBIAEoCRIUCgxjb250ZW50X2hhc2gYAiABKAkSNAoQY29tbWl0X3RpbWVzdGFtcBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGQoRdG90YWxfbGluZXNfYWRkZWQYBCABKAUSGwoTdG90YWxfbGluZXNfZGVsZXRlZBgFIAEoBRJJCg9tb2RlbF9icmVha2Rvd24YBiADKAsyMC5yZXF1ZXN0X2luc2lnaHQuQ29tbWl0QXR0cmlidXRpb25Nb2RlbEJyZWFrZG93bhISCgp3aW5kb3dfc2VjGAcgASgFEhcKD3NvdXJjZV9ldmVudF9pZBgIIAEoCRIgChNpc19mcm9tX21haW5fYnJhbmNoGAkgASgISACIAQFCFgoUX2lzX2Zyb21fbWFpbl9icmFuY2gihAEKEENvbW1pdEZpbGVDaGFuZ2USEwoLY2hhbmdlX3R5cGUYASABKAkSEQoJZmlsZV9wYXRoGAIgASgJEhoKDW9sZF9maWxlX3BhdGgYAyABKAlIAIgBARIRCgRkaWZmGAQgASgJSAGIAQFCEAoOX29sZF9maWxlX3BhdGhCBwoFX2RpZmYivAIKEkNvbW1pdFNlc3Npb25FdmVudBIMCgRoYXNoGAEgASgJEi0KCXRpbWVzdGFtcBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDwoHc3ViamVjdBgFIAEoCRIMCgRib2R5GAYgASgJEjcKDGZpbGVfY2hhbmdlcxgHIAMoCzIhLnJlcXVlc3RfaW5zaWdodC5Db21taXRGaWxlQ2hhbmdlEhIKCnVzZXJfYWdlbnQYCCABKAkSNwoTY29tbWl0dGVyX3RpbWVzdGFtcBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASIAoTaXNfZnJvbV9tYWluX2JyYW5jaBgKIAEoCEgAiAEBQhYKFF9pc19mcm9tX21haW5fYnJhbmNoSgQIAhADSgQIAxAEIhAKDkNvbXBsZXRpb25FbWl0IlMKEkNvbXBsZXRpb25GZWVkYmFjaxIvCgZyYXRpbmcYASABKA4yHy5yZXF1ZXN0X2luc2lnaHQuRmVlZGJhY2tSYXRpbmcSDAoEbm90ZRgCIAEoCSLbBQoVQ29tcGxldGlvbkhvc3RSZXF1ZXN0EgwKBHNlZWQYAiABKAQSFAoMZW9zX3Rva2VuX2lkGAQgAygFEg0KBXRvcF9rGAUgASgFEg0KBXRvcF9wGAYgASgCEhMKC3RlbXBlcmF0dXJlGAcgASgCEhIKCm91dHB1dF9sZW4YCCABKAUSGgoSZW5hYmxlX3BhdGhfcHJlZml4GAkgASgIEiAKGGVuYWJsZV9wcmVmZXJlbmNlX3Rva2VucxgKIAEoCBIhChllbmFibGVfZmlsbF9pbl90aGVfbWlkZGxlGAsgASgIEhMKC2VuYWJsZV9ibTI1GA0gASgIEh4KFmVuYWJsZV9kZW5zZV9yZXRyaWV2YWwYDiABKAgSDQoFbW9kZWwYDyABKAkSDgoGcHJlZml4GBAgASgJEgwKBHBhdGgYESABKAkSDgoGc3VmZml4GBIgASgJEhIKCmJsb2JfbmFtZXMYEyADKAkSDAoEbGFuZxgUIAEoCRJACghwb3NpdGlvbhgVIAEoCzIuLnJlcXVlc3RfaW5zaWdodC5Db21wbGV0aW9uSG9zdFJlcXVlc3RQb3NpdGlvbhISCgpwcm9iZV9vbmx5GBYgASgIEiUKBWJsb2JzGBcgASgLMhYuYmFzZS5ibG9iX25hbWVzLkJsb2JzEi0KDHJlY2VuY3lfaW5mbxgYIAEoCzIXLmNvbXBsZXRpb24uUmVjZW5jeUluZm8SMwoMdG9rZW5pemF0aW9uGBkgASgLMh0ucmVxdWVzdF9pbnNpZ2h0LlRva2VuaXphdGlvbhIiChV1c2VyX2ZpbHRlcl90aHJlc2hvbGQYGiABKAJIAIgBARI3CgtlZGl0X2V2ZW50cxgbIAMoCzIiLmJhc2UuZGlmZl91dGlscy5HcmFudWxhckVkaXRFdmVudEIYChZfdXNlcl9maWx0ZXJfdGhyZXNob2xkSgQIARACSgQIDBANInUKHUNvbXBsZXRpb25Ib3N0UmVxdWVzdFBvc2l0aW9uEhQKDHByZWZpeF9iZWdpbhgBIAEoBRIXCg9jdXJzb3JfcG9zaXRpb24YAiABKAUSEgoKc3VmZml4X2VuZBgDIAEoBRIRCglibG9iX25hbWUYBCABKAkihgMKFkNvbXBsZXRpb25Ib3N0UmVzcG9uc2USDAoEdGV4dBgCIAEoCRIaChJ1bmtub3duX2Jsb2JfbmFtZXMYAyADKAkSFgoOc2tpcHBlZF9zdWZmaXgYBiABKAkSHwoXc3VmZml4X3JlcGxhY2VtZW50X3RleHQYByABKAkSHAoUY2hlY2twb2ludF9ub3RfZm91bmQYCCABKAgSMwoMdG9rZW5pemF0aW9uGAkgASgLMh0ucmVxdWVzdF9pbnNpZ2h0LlRva2VuaXphdGlvbhIeChFpc19lbXB0eV9yZXNwb25zZRgKIAEoCEgAiAEBEiAKE2NvbnRhaW5zX3NraXBfdG9rZW4YCyABKAhIAYgBARIeChF2YWxpZF9yZXBsYWNlbWVudBgMIAEoCEgCiAEBQhQKEl9pc19lbXB0eV9yZXNwb25zZUIWChRfY29udGFpbnNfc2tpcF90b2tlbkIUChJfdmFsaWRfcmVwbGFjZW1lbnRKBAgBEAJKBAgEEAVKBAgFEAYi5QIKFUNvbXBsZXRpb25Qb3N0UHJvY2VzcxIfCg5pc19sb3dfcXVhbGl0eRgBIAEoCEICGAFIAIgBARIUCgxmaWx0ZXJfc2NvcmUYDCABKAISJQoYYXBwbGllZF9maWx0ZXJfdGhyZXNob2xkGA0gASgCSAGIAQESTwoNZmlsdGVyX3JlYXNvbhgOIAEoDjIzLnJlcXVlc3RfaW5zaWdodC5Db21wbGV0aW9uUG9zdFByb2Nlc3MuRmlsdGVyUmVhc29uSAKIAQEiWwoMRmlsdGVyUmVhc29uEhkKFVVOS05PV05fRklMVEVSX1JFQVNPThAAEhAKDE5PVF9GSUxURVJFRBABEg8KC0xPV19RVUFMSVRZEAISDQoJREVOWV9MSVNUEANCEQoPX2lzX2xvd19xdWFsaXR5QhsKGV9hcHBsaWVkX2ZpbHRlcl90aHJlc2hvbGRCEAoOX2ZpbHRlcl9yZWFzb24iWgoeQ29tcGxldGlvblJlcXVlc3RJZElzc3VlZEV2ZW50EhIKCnJlcXVlc3RfaWQYASABKAkSFgoJZmlsZV9wYXRoGAIgASgJSACIAQFCDAoKX2ZpbGVfcGF0aCIsChRDb21wbGV0aW9uUmVzb2x1dGlvbhIUCgxhY2NlcHRlZF9pZHgYASABKAUiRAoNQ29udGVudENoYW5nZRIMCgR0ZXh0GAEgASgJEiUKBXJhbmdlGAIgASgLMhYucmVxdWVzdF9pbnNpZ2h0LlJhbmdlIo4BCh1Db250ZW50TWFuYWdlckNoZWNrcG9pbnRCbG9icxIVCg1jaGVja3BvaW50X2lkGAEgASgJEh4KFmJhc2VsaW5lX2NoZWNrcG9pbnRfaWQYAiABKAkSGQoRYWRkZWRfYmxvYnNfY291bnQYAyABKA0SGwoTZGVsZXRlZF9ibG9ic19jb3VudBgEIAEoDSK8AQoZQ29udGVudE1hbmFnZXJVcGxvYWRCbG9icxJTCg51cGxvYWRlZF9ibG9icxgBIAMoCzI7LnJlcXVlc3RfaW5zaWdodC5Db250ZW50TWFuYWdlclVwbG9hZEJsb2JzLlVwbG9hZGVkQmxvYkluZm8aSgoQVXBsb2FkZWRCbG9iSW5mbxIRCglibG9iX25hbWUYASABKAkSEgoKc2l6ZV9ieXRlcxgCIAEoBBIPCgdleGlzdGVkGAMgASgIIqABChVDb250ZW50VHJ1bmNhdGlvbkRhdGESGwoTb3JpZ2luYWxfY2hhcl9jb3VudBgBIAEoDRIbChNvcmlnaW5hbF9saW5lX2NvdW50GAIgASgNEhwKFHRydW5jYXRlZF9jaGFyX2NvdW50GAMgASgNEhwKFHRydW5jYXRlZF9saW5lX2NvdW50GAQgASgNEhEKCXRvb2xfdHlwZRgFIAEoCSK+AQoOQ29zbW9zRmVlZGJhY2sSLwoGcmF0aW5nGAEgASgOMh8ucmVxdWVzdF9pbnNpZ2h0LkZlZWRiYWNrUmF0aW5nEgwKBG5vdGUYAiABKAkSEgoKdXNlcl9hZ2VudBgDIAEoCRIUCgxyZWFzb25fY29kZXMYBCADKAkSEwoLZXhwZXJ0X25hbWUYBSABKAkSEwoLdGVuYW50X3RpZXIYBiABKAkSGQoRdGVhbV9kaXNwbGF5X25hbWUYByABKAkiDwoNQ3JlYXRlZFBSRGF0YSKPAwoWQ3VzdG9tZXJVSVNlc3Npb25FdmVudBJNCg1zZXNzaW9uX3N0YXJ0GAIgASgLMjQucmVxdWVzdF9pbnNpZ2h0LkN1c3RvbWVyVUlTZXNzaW9uRXZlbnQuU2Vzc2lvblN0YXJ0SAASSQoLc2Vzc2lvbl9lbmQYAyABKAsyMi5yZXF1ZXN0X2luc2lnaHQuQ3VzdG9tZXJVSVNlc3Npb25FdmVudC5TZXNzaW9uRW5kSAASDwoHdXNlcl9pZBgBIAEoCRokCgxTZXNzaW9uU3RhcnQSFAoMcmVkaXJlY3RfdXJsGAEgASgJGpoBCgpTZXNzaW9uRW5kEkkKBnJlYXNvbhgBIAEoDjI5LnJlcXVlc3RfaW5zaWdodC5DdXN0b21lclVJU2Vzc2lvbkV2ZW50LlNlc3Npb25FbmQuUmVhc29uIkEKBlJlYXNvbhIeChpVTktOT1dOX1NFU1NJT05fRU5EX1JFQVNPThAAEgoKBkxPR09VVBABEgsKB1RJTUVPVVQQAkIHCgVldmVudCJZChlEYWlseVJlcXVlc3RMaW1pdEV4Y2VlZGVkEi0KDm9wYXF1ZV91c2VyX2lkGAEgASgLMhUuYXV0aF9lbnRpdGllcy5Vc2VySWQSDQoFbGltaXQYAiABKAUiOQoNRGlmZlBhbmVsRGF0YRIXCg9sb2FkaW5nX3RpbWVfbXMYASABKAUSDwoHYXBwbGllZBgCIAEoCCIKCghFZGl0RW1pdCJUChhFZGl0UmVxdWVzdElkSXNzdWVkRXZlbnQSEgoKcmVxdWVzdF9pZBgBIAEoCRIWCglmaWxlX3BhdGgYAiABKAlIAIgBAUIMCgpfZmlsZV9wYXRoIpMBCg5FZGl0UmVzb2x1dGlvbhITCgtpc19hY2NlcHRlZBgBIAEoCBIbCg5hbm5vdGF0ZWRfdGV4dBgCIAEoCUgAiAEBEiIKFWFubm90YXRlZF9pbnN0cnVjdGlvbhgDIAEoCUgBiAEBQhEKD19hbm5vdGF0ZWRfdGV4dEIYChZfYW5ub3RhdGVkX2luc3RydWN0aW9uIqkBChdFbWJlZGRpbmdzU2VhcmNoUmVxdWVzdBISCgpibG9iX25hbWVzGAEgAygJEhMKC251bV9yZXN1bHRzGAIgASgFEhoKEnRyYW5zZm9ybWF0aW9uX2tleRgDIAEoCRIPCgdzdWJfa2V5GAQgASgJEiUKBWJsb2JzGAUgAygLMhYuYmFzZS5ibG9iX25hbWVzLkJsb2JzEhEKCW51bV9ibG9icxgGIAEoBSKEAQoYRW1iZWRkaW5nc1NlYXJjaFJlc3BvbnNlEhoKEm1pc3NpbmdfYmxvYl9uYW1lcxgBIAMoCRI4CgdyZXN1bHRzGAIgAygLMicucmVxdWVzdF9pbnNpZ2h0LkVtYmVkZGluZ3NTZWFyY2hSZXN1bHQSEgoKYmxvYl9jb3VudBgDIAEoDSJPChZFbWJlZGRpbmdzU2VhcmNoUmVzdWx0EhEKCWJsb2JfbmFtZRgBIAEoCRITCgtjaHVua19pbmRleBgCIAEoDRINCgV2YWx1ZRgDIAEoAiLrAQoORXh0ZW5zaW9uRXJyb3ISIAoTb3JpZ2luYWxfcmVxdWVzdF9pZBgBIAEoCUgAiAEBEg8KB21lc3NhZ2UYAiABKAkSEwoLc3RhY2tfdHJhY2UYAyABKAkSRQoLZGlhZ25vc3RpY3MYBCADKAsyMC5yZXF1ZXN0X2luc2lnaHQuRXh0ZW5zaW9uRXJyb3IuRGlhZ25vc3RpY3NFbnRyeRoyChBEaWFnbm9zdGljc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCFgoUX29yaWdpbmFsX3JlcXVlc3RfaWQisQEKFUV4dGVuc2lvblNlc3Npb25FdmVudBISCgpldmVudF9uYW1lGAEgASgJEhIKCnVzZXJfYWdlbnQYAiABKAkSSAoPYWRkaXRpb25hbF9kYXRhGAMgAygLMi8ucmVxdWVzdF9pbnNpZ2h0LkV4dGVuc2lvblNlc3Npb25FdmVudC5LZXlWYWx1ZRomCghLZXlWYWx1ZRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAkiiQEKFEZpcnN0VG9rZW5UaW1pbmdEYXRhEiYKHnVzZXJfbWVzc2FnZV9zZW50X3RpbWVzdGFtcF9tcxgBIAEoBBIpCiFmaXJzdF90b2tlbl9yZWNlaXZlZF90aW1lc3RhbXBfbXMYAiABKAQSHgoWdGltZV90b19maXJzdF90b2tlbl9tcxgDIAEoDSJMChFGbHVzaE1lbW9yaWVzRGF0YRI3Cgx0cmFjaW5nX2RhdGEYASABKAsyIS5yZXF1ZXN0X2luc2lnaHQuQWdlbnRUcmFjaW5nRGF0YSImChBHaXRodWJBUElGYWlsdXJlEhIKCmVycm9yX2NvZGUYASABKAUimgMKHEdpdGh1YlB1bGxSZXF1ZXN0TWVyZ2VkRXZlbnQSFwoKcmVwb19vd25lchgBIAEoCUgAiAEBEhYKCXJlcG9fbmFtZRgCIAEoCUgBiAEBEhYKCXByX251bWJlchgDIAEoDUgCiAEBEjIKCW1lcmdlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIA4gBARIcCg9tZXJnZWRfYnlfbG9naW4YBSABKAlIBIgBARIWCglhZGRpdGlvbnMYBiABKA1IBYgBARIWCglkZWxldGlvbnMYByABKA1IBogBARIVCghoZWFkX3NoYRgIIAEoCUgHiAEBEhUKCGJhc2VfcmVmGAkgASgJSAiIAQFCDQoLX3JlcG9fb3duZXJCDAoKX3JlcG9fbmFtZUIMCgpfcHJfbnVtYmVyQgwKCl9tZXJnZWRfYXRCEgoQX21lcmdlZF9ieV9sb2dpbkIMCgpfYWRkaXRpb25zQgwKCl9kZWxldGlvbnNCCwoJX2hlYWRfc2hhQgsKCV9iYXNlX3JlZiItChNHaXRodWJVc2VyQXV0aG9yaXplEhYKDmdpdGh1Yl91c2VyX2lkGAEgASgDItYDCgxJbmZlclJlcXVlc3QSDQoFbW9kZWwYASABKAkSDgoGcHJvbXB0GAIgASgJEgwKBHBhdGgYAyABKAkSDgoGc3VmZml4GAQgASgJEhAKCG1lbW9yaWVzGAUgAygJEg0KBXRvcF9rGAYgASgFEg0KBXRvcF9wGAcgASgCEhMKC3RlbXBlcmF0dXJlGAggASgCEhIKCm1heF90b2tlbnMYCSABKAUSEgoKc2Vzc2lvbl9pZBgLIAEoCRIMCgRsYW5nGAwgASgJEhIKCnVzZXJfYWdlbnQYDSABKAkSEwoLc2VxdWVuY2VfaWQYDiABKA0SEgoKcHJvYmVfb25seRgPIAEoCBIlCgVibG9icxgQIAEoCzIWLmJhc2UuYmxvYl9uYW1lcy5CbG9icxItCgxyZWNlbmN5X2luZm8YESABKAsyFy5jb21wbGV0aW9uLlJlY2VuY3lJbmZvEiIKFXVzZXJfZmlsdGVyX3RocmVzaG9sZBgSIAEoAkgAiAEBEjcKC2VkaXRfZXZlbnRzGBMgAygLMiIuYmFzZS5kaWZmX3V0aWxzLkdyYW51bGFyRWRpdEV2ZW50QhgKFl91c2VyX2ZpbHRlcl90aHJlc2hvbGRKBAgKEAsiaQoVSW5mZXJlbmNlSG9zdFJlc3BvbnNlEhUKDWN1bV9sb2dfcHJvYnMYAiABKAISMwoMdG9rZW5pemF0aW9uGAMgASgLMh0ucmVxdWVzdF9pbnNpZ2h0LlRva2VuaXphdGlvbkoECAEQAiLfAQoWSW5pdGlhbE9yaWVudGF0aW9uRGF0YRJJCgZjYWxsZXIYASABKA4yOS5yZXF1ZXN0X2luc2lnaHQuSW5pdGlhbE9yaWVudGF0aW9uRGF0YS5PcmllbnRhdGlvbkNhbGxlchI3Cgx0cmFjaW5nX2RhdGEYAiABKAsyIS5yZXF1ZXN0X2luc2lnaHQuQWdlbnRUcmFjaW5nRGF0YSJBChFPcmllbnRhdGlvbkNhbGxlchIPCgtVTlNQRUNJRklFRBAAEg4KCk9OQk9BUkRJTkcQARILCgdDT01NQU5EEAIiEQoPSW5zdHJ1Y3Rpb25FbWl0ImEKFUluc3RydWN0aW9uUmVzb2x1dGlvbhIaChJpc19hY2NlcHRlZF9jaHVua3MYASADKAgSFQoNaXNfYWNjZXB0X2FsbBgCIAEoCBIVCg1pc19yZWplY3RfYWxsGAMgASgIImUKEE1lbW9yaWVzRmVlZGJhY2sSLwoGcmF0aW5nGAEgASgOMh8ucmVxdWVzdF9pbnNpZ2h0LkZlZWRiYWNrUmF0aW5nEgwKBG5vdGUYAiABKAkSEgoKdXNlcl9hZ2VudBgDIAEoCSI3ChRNZW1vcmllc0ZpbGVPcGVuRGF0YRIfChdtZW1vcmllc19wYXRoX3VuZGVmaW5lZBgBIAEoCCKfAQoQTWVtb3JpZXNNb3ZlRGF0YRI4CgZ0YXJnZXQYASABKA4yKC5yZXF1ZXN0X2luc2lnaHQuTWVtb3JpZXNNb3ZlRGF0YS5UYXJnZXQiUQoGVGFyZ2V0Eg8KC1VOU1BFQ0lGSUVEEAASEwoPVVNFUl9HVUlERUxJTkVTEAESFgoSQVVHTUVOVF9HVUlERUxJTkVTEAISCQoFUlVMRVMQAyK5AQoPTWVtb3J5VXNhZ2VEYXRhEg4KBmFjdGlvbhgBIAEoBRIWCgltZW1vcnlfaWQYAiABKAlIAIgBARIUCgx0cmlnZ2VyZWRfYnkYAyABKAUSGQoMbWVtb3J5X3N0YXRlGAQgASgJSAGIAQESGwoObWVtb3J5X3ZlcnNpb24YBSABKAlIAogBAUIMCgpfbWVtb3J5X2lkQg8KDV9tZW1vcnlfc3RhdGVCEQoPX21lbW9yeV92ZXJzaW9uIu4CChBNb2RlU2VsZWN0b3JEYXRhEkQKBmFjdGlvbhgBIAEoDjI0LnJlcXVlc3RfaW5zaWdodC5Nb2RlU2VsZWN0b3JEYXRhLk1vZGVTZWxlY3RvckFjdGlvbhI0CgRtb2RlGAIgASgOMiYucmVxdWVzdF9pbnNpZ2h0Lk1vZGVTZWxlY3RvckRhdGEuTW9kZRI6Cg5zb3VyY2VfY29udHJvbBgDIAEoDjIiLnJlcXVlc3RfaW5zaWdodC5Tb3VyY2VDb250cm9sVHlwZSI/CgRNb2RlEhAKDFVOS05PV05fTU9ERRAAEggKBENIQVQQARIJCgVBR0VOVBACEhAKDFJFTU9URV9BR0VOVBADImEKEk1vZGVTZWxlY3RvckFjdGlvbhIgChxVTktOT1dOX01PREVfU0VMRUNUT1JfQUNUSU9OEAASCAoET1BFThABEgkKBUNMT1NFEAISCgoGU0VMRUNUEAMSCAoESU5JVBAEIoABChhNb2RlbFNlbGVjdGlvbkNoYW5nZURhdGESGQoRcHJldmlvdXNfbW9kZWxfaWQYASABKAkSGwoTcHJldmlvdXNfbW9kZWxfbmFtZRgCIAEoCRIUCgxuZXdfbW9kZWxfaWQYAyABKAkSFgoObmV3X21vZGVsX25hbWUYBCABKAkiyQEKFE5vdGlmaWNhdGlvbkJlbGxEYXRhEk8KCmJlbGxfc3RhdGUYASABKA4yOy5yZXF1ZXN0X2luc2lnaHQuTm90aWZpY2F0aW9uQmVsbERhdGEuTm90aWZpY2F0aW9uQmVsbFN0YXRlImAKFU5vdGlmaWNhdGlvbkJlbGxTdGF0ZRILCgdVTktOT1dOEAASDQoJQUNUSVZBVEVEEAESDwoLREVBQ1RJVkFURUQQAhIMCghOT1RJRklFRBAEEgwKCEFDQ0VQVEVEEAMiQAoWT25ib2FyZGluZ1Nlc3Npb25FdmVudBISCgpldmVudF9uYW1lGAEgASgJEhIKCnVzZXJfYWdlbnQYAiABKAkiiQEKFVBhcmVudGhlc2lzVHJ1bmNhdGlvbhIVCg1vcmlnaW5hbF90ZXh0GAEgASgJEhYKDnRydW5jYXRlZF90ZXh0GAIgASgJEhUKDXdhc190cnVuY2F0ZWQYAyABKAgSHAoUY291bGRfaGF2ZV90cnVuY2F0ZWQYBCABKAgSDAoEcGF0aBgFIAEoCSJMChRQYXJzZWRSb3V0ZXJSZXNwb25zZRIQCghjYXRlZ29yeRgBIAEoCRIRCglmaWxlbmFtZXMYAiADKAkSDwoHZG9jc2V0cxgDIAMoCSLCAgoWUG9zZWlkb25BbmFseXRpY3NFdmVudBJKChVwb3NlaWRvbl9wcl9hbmFseXRpY3MYBCABKAsyKS5yZXF1ZXN0X2luc2lnaHQuUG9zZWlkb25QckFuYWx5dGljc0V2ZW50SAASTwoTb3V0Y29tZV9vYnNlcnZhdGlvbhgFIAEoCzIwLnJlcXVlc3RfaW5zaWdodC5Qb3NlaWRvbk91dGNvbWVPYnNlcnZhdGlvbkV2ZW50SAASLQoEdGltZRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIVCghldmVudF9pZBgCIAEoCUgCiAEBEhcKCnJlcXVlc3RfaWQYAyABKAlIA4gBAUIHCgVldmVudEIHCgVfdGltZUILCglfZXZlbnRfaWRCDQoLX3JlcXVlc3RfaWQirgQKH1Bvc2VpZG9uT3V0Y29tZU9ic2VydmF0aW9uRXZlbnQSEQoEbmFtZRgBIAEoCUgAiAEBEhQKB3N1YmplY3QYAiABKAlIAYgBARIZCgxzdWJqZWN0X3R5cGUYAyABKAlIAogBARITCgZzb3VyY2UYBCABKAlIA4gBARI0CgtvYnNlcnZlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBIgBARJICgR0YWdzGAYgAygLMjoucmVxdWVzdF9pbnNpZ2h0LlBvc2VpZG9uT3V0Y29tZU9ic2VydmF0aW9uRXZlbnQuVGFnc0VudHJ5EhoKDW1ldGFkYXRhX2pzb24YCCABKAlIBYgBARJOCgdtZXRyaWNzGAkgAygLMj0ucmVxdWVzdF9pbnNpZ2h0LlBvc2VpZG9uT3V0Y29tZU9ic2VydmF0aW9uRXZlbnQuTWV0cmljc0VudHJ5GisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGi4KDE1ldHJpY3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAE6AjgBQgcKBV9uYW1lQgoKCF9zdWJqZWN0Qg8KDV9zdWJqZWN0X3R5cGVCCQoHX3NvdXJjZUIOCgxfb2JzZXJ2ZWRfYXRCEAoOX21ldGFkYXRhX2pzb25KBAgHEAhSEGF0dHJpYnV0aW9uX3RhZ3Mi4gkKGFBvc2VpZG9uUHJBbmFseXRpY3NFdmVudBIRCgRyZXBvGAEgASgJSACIAQESFgoJcHJfbnVtYmVyGAIgASgDSAGIAQESGgoNZXZlbnRfdHJpZ2dlchgDIAEoCUgCiAEBEjMKCmNyZWF0ZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAOIAQESGQoMYXV0aG9yX2xvZ2luGAUgASgJSASIAQESMgoJbWVyZ2VkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgFiAEBEiYKGWFwcHJvdmVkX2J5X3Jpc2tfYW5hbHl6ZXIYByABKAhIBogBARIwCiNudW1fY29tbWVudHNfYWRkcmVzc2VkX2J5X3ByX2F1dGhvchgIIAEoA0gHiAEBEh8KEnByX2F1dGhvcl9hc3Npc3RlZBgJIAEoCEgIiAEBEi0KIGRlZXBfcmV2aWV3ZXJfbnVtYmVyX29mX2NvbW1lbnRzGAogASgDSAmIAQESLQogcGFpcl9yZXZpZXdlcl9udW1iZXJfb2ZfY29tbWVudHMYCyABKANICogBARIWCglpc19yZXZlcnQYDCABKAhIC4gBARIXCgppc19idWdfZml4GA0gASgISAyIAQESGAoLbG9jX2NoYW5nZWQYDiABKANIDYgBARIfChJudW1faHVtYW5fY29tbWVudHMYDyABKANIDogBARIgChNudW1fY29zbW9zX2NvbW1lbnRzGBAgASgDSA+IAQESFQoIcGxhdGZvcm0YESABKAlIEIgBARIqCh1kZWVwX2NvZGVfcmV2aWV3ZXJfc2Vzc2lvbl9pZBgSIAEoCUgRiAEBEigKG3ByX3Jpc2tfYW5hbHl6ZXJfc2Vzc2lvbl9pZBgTIAEoCUgSiAEBEiUKGHBhaXJfcmV2aWV3ZXJfc2Vzc2lvbl9pZBgUIAEoCUgTiAEBEiEKFHByX2F1dGhvcl9zZXNzaW9uX2lkGBUgASgJSBSIAQFCBwoFX3JlcG9CDAoKX3ByX251bWJlckIQCg5fZXZlbnRfdHJpZ2dlckINCgtfY3JlYXRlZF9hdEIPCg1fYXV0aG9yX2xvZ2luQgwKCl9tZXJnZWRfYXRCHAoaX2FwcHJvdmVkX2J5X3Jpc2tfYW5hbHl6ZXJCJgokX251bV9jb21tZW50c19hZGRyZXNzZWRfYnlfcHJfYXV0aG9yQhUKE19wcl9hdXRob3JfYXNzaXN0ZWRCIwohX2RlZXBfcmV2aWV3ZXJfbnVtYmVyX29mX2NvbW1lbnRzQiMKIV9wYWlyX3Jldmlld2VyX251bWJlcl9vZl9jb21tZW50c0IMCgpfaXNfcmV2ZXJ0Qg0KC19pc19idWdfZml4Qg4KDF9sb2NfY2hhbmdlZEIVChNfbnVtX2h1bWFuX2NvbW1lbnRzQhYKFF9udW1fY29zbW9zX2NvbW1lbnRzQgsKCV9wbGF0Zm9ybUIgCh5fZGVlcF9jb2RlX3Jldmlld2VyX3Nlc3Npb25faWRCHgocX3ByX3Jpc2tfYW5hbHl6ZXJfc2Vzc2lvbl9pZEIbChlfcGFpcl9yZXZpZXdlcl9zZXNzaW9uX2lkQhcKFV9wcl9hdXRob3Jfc2Vzc2lvbl9pZCKOAQoTUG9zdHByb2Nlc3NSZXNwb25zZRI4Cgx0b2tlbml6YXRpb24YASABKAsyHS5yZXF1ZXN0X2luc2lnaHQuVG9rZW5pemF0aW9uSACIAQESGgoNZXJyb3JfbWVzc2FnZRgCIAEoCUgBiAEBQg8KDV90b2tlbml6YXRpb25CEAoOX2Vycm9yX21lc3NhZ2UipwEKEFByZWZlcmVuY2VTYW1wbGUSEwoLcmVxdWVzdF9pZHMYASADKAkSPQoGc2NvcmVzGAIgAygLMi0ucmVxdWVzdF9pbnNpZ2h0LlByZWZlcmVuY2VTYW1wbGUuU2NvcmVzRW50cnkSEAoIZmVlZGJhY2sYAyABKAkaLQoLU2NvcmVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgFOgI4ASK0AgoQUHJvbXB0Q2FjaGVVc2FnZRIUCgxpbnB1dF90b2tlbnMYASABKA0SHwoXY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMYAiABKA0SIwobY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zGAMgASgNEhkKEXRleHRfaW5wdXRfdG9rZW5zGAQgASgNEhkKEXRvb2xfaW5wdXRfdG9rZW5zGAUgASgNEhoKEnRleHRfb3V0cHV0X3Rva2VucxgGIAEoDRIaChJ0b29sX291dHB1dF90b2tlbnMYByABKA0SGQoMbW9kZWxfY2FsbGVyGAggASgJSACIAQESGQoMc2VydmljZV90aWVyGAkgASgJSAGIAQFCDwoNX21vZGVsX2NhbGxlckIPCg1fc2VydmljZV90aWVyIj8KD1B1cmNoYXNlQ3JlZGl0cxIbChNvcmJfc3Vic2NyaXB0aW9uX2lkGAEgASgJEg8KB2NyZWRpdHMYAiABKAIiUwomUklBZ2VudGljU2xhY2tib3RSZWFjdGlvblJlY2VpdmVkRXZlbnQSKQoLc2xhY2tfZXZlbnQYASABKAsyFC5zbGFja2JvdC5TbGFja0V2ZW50IjcKDVJJQmF0Y2hVcGxvYWQSEgoKYmxvYl9jb3VudBgBIAEoBRISCgp0b3RhbF9zaXplGAIgASgDIvcDChNSSUNoYXRNZXRlcmluZ0V2ZW50EjUKDm1ldGVyaW5nX2V2ZW50GAEgASgLMh0ubWV0ZXJpbmdfZXZlbnQuTWV0ZXJpbmdFdmVudBIbChNhY3Rpdml0eV9tdWx0aXBsaWVyGAIgASgBEhQKDGlucHV0X3Rva2VucxgDIAEoBRIVCg1vdXRwdXRfdG9rZW5zGAQgASgFEhkKEWNhY2hlX3JlYWRfdG9rZW5zGAUgASgFEhoKEmNhY2hlX3dyaXRlX3Rva2VucxgGIAEoBRIWCg50b3RhbF9jb3N0X3VzZBgLIAEoARISCgptb2RlbF9uYW1lGAwgASgJEhwKD2NvbnZlcnNhdGlvbl9pZBgNIAEoCUgAiAEBEhsKDnJvdXRpbmdfcmVhc29uGA4gASgJSAGIAQESHAoPcHJvdmlkZXJfcmVnaW9uGA8gASgJSAKIAQESGwoOZW5kcG9pbnRfc2NvcGUYECABKAlIA4gBARIgChNyZWdpb25hbF9tdWx0aXBsaWVyGBEgASgBSASIAQFCEgoQX2NvbnZlcnNhdGlvbl9pZEIRCg9fcm91dGluZ19yZWFzb25CEgoQX3Byb3ZpZGVyX3JlZ2lvbkIRCg9fZW5kcG9pbnRfc2NvcGVCFgoUX3JlZ2lvbmFsX211bHRpcGxpZXIi7wEKDVJJQ2hhdFJlcXVlc3QSIgoHcmVxdWVzdBgBIAEoCzIRLmNoYXQuQ2hhdFJlcXVlc3QSOQoQcmV0cmlldmVkX2NodW5rcxgDIAMoCzIfLnJlcXVlc3RfaW5zaWdodC5SZXRyaWV2YWxDaHVuaxIzCgx0b2tlbml6YXRpb24YBCABKAsyHS5yZXF1ZXN0X2luc2lnaHQuVG9rZW5pemF0aW9uEhsKE2V4dGVybmFsX3NvdXJjZV9pZHMYBSADKAkSFgoOcmVxdWVzdF9zb3VyY2UYBiABKAlKBAgCEANKBAgHEAhSCWV4cGVydF9pZCLAAgoOUklDaGF0UmVzcG9uc2USJAoIcmVzcG9uc2UYASABKAsyEi5jaGF0LkNoYXRSZXNwb25zZRIzCgx0b2tlbml6YXRpb24YAyABKAsyHS5yZXF1ZXN0X2luc2lnaHQuVG9rZW5pemF0aW9uEhoKDWVycm9yX21lc3NhZ2UYBCABKAlIAIgBARIOCgZzaWxlbnQYBSABKAgSKgoLc2lsZW50X3R5cGUYBiABKA4yEC5jaGF0LlNpbGVudFR5cGVIAYgBARI/Cg9yZWZ1c2FsX3N1bW1hcnkYByABKAsyIS5yZXF1ZXN0X2luc2lnaHQuUklSZWZ1c2FsU3VtbWFyeUgCiAEBQhAKDl9lcnJvcl9tZXNzYWdlQg4KDF9zaWxlbnRfdHlwZUISChBfcmVmdXNhbF9zdW1tYXJ5SgQIAhADIqkBCg1SSUVkaXRSZXF1ZXN0EiIKB3JlcXVlc3QYASABKAsyES5lZGl0LkVkaXRSZXF1ZXN0EjkKEHJldHJpZXZlZF9jaHVua3MYAyADKAsyHy5yZXF1ZXN0X2luc2lnaHQuUmV0cmlldmFsQ2h1bmsSMwoMdG9rZW5pemF0aW9uGAQgASgLMh0ucmVxdWVzdF9pbnNpZ2h0LlRva2VuaXphdGlvbkoECAIQAyJxCg5SSUVkaXRSZXNwb25zZRIkCghyZXNwb25zZRgBIAEoCzISLmVkaXQuRWRpdFJlc3BvbnNlEjMKDHRva2VuaXphdGlvbhgDIAEoCzIdLnJlcXVlc3RfaW5zaWdodC5Ub2tlbml6YXRpb25KBAgCEAMiaAoNUklGaW5kTWlzc2luZxISCgptb2RlbF9uYW1lGAEgASgJEhIKCmJsb2JfY291bnQYAiABKAUSFQoNbWlzc2luZ19jb3VudBgDIAEoBRIYChBub25pbmRleGVkX2NvdW50GAQgASgFInkKHFJJR2l0aHViQXBwSW5zdGFsbGF0aW9uRXZlbnQSIgoGc3RhdHVzGAEgASgLMhIuZ29vZ2xlLnJwYy5TdGF0dXMSNQoKZXZlbnRfdHlwZRgCIAEoDjIhLnJlcXVlc3RfaW5zaWdodC5JbnN0YWxsRXZlbnRUeXBlIkAKDVJJR2l0aHViRXZlbnQSLwoMZ2l0aHViX2V2ZW50GAEgASgLMhkuZ2l0aHViX2V2ZW50LkdpdGh1YkV2ZW50ItEEChhSSUdpdGh1YlByb2Nlc3NpbmdSZXN1bHQSIgoGc3RhdHVzGAEgASgLMhIuZ29vZ2xlLnJwYy5TdGF0dXMSGwoTbGFzdF91cGRhdGVkX2NvbW1pdBgCIAEoCRJGCgpkaWZmX2luZm9zGAMgAygLMjIucmVxdWVzdF9pbnNpZ2h0LlJJR2l0aHViUHJvY2Vzc2luZ1Jlc3VsdC5EaWZmSW5mbxIdChVmaWxlbmFtZXNfdG9fZG93bmxvYWQYBCADKAkSTQoRaWdub3JlX2RpZmZfaW5mb3MYByADKAsyMi5yZXF1ZXN0X2luc2lnaHQuUklHaXRodWJQcm9jZXNzaW5nUmVzdWx0LkRpZmZJbmZvEiQKHGlnbm9yZV9maWxlbmFtZXNfdG9fZG93bmxvYWQYCCADKAkSMAoQY2hlY2twb2ludF9ibG9icxgFIAEoCzIWLmJhc2UuYmxvYl9uYW1lcy5CbG9icxIXCg9naXRfYXBwbHlfZXJyb3IYBiABKAkSGwoTZmlsZV9kb3dubG9hZF9lcnJvchgJIAEoCRIWCg5kaWZmX2Jsb2JfbmFtZRgKIAEoCRIVCg1pZ25vcmVkX2ZpbGVzGAsgAygJGoABCghEaWZmSW5mbxIQCghmaWxlbmFtZRgBIAEoCRIUCgxvbGRfYmxvYm5hbWUYAiABKAkSFAoMbmV3X2Jsb2JuYW1lGAMgASgJEhQKDG9sZF9maWxlbmFtZRgEIAEoCRIPCgdyZW1vdmVkGAUgASgIEg8KB3JlbmFtZWQYBiABKAgiGAoWUklHbGVhbk9BdXRoVVJMUmVxdWVzdCIsChdSSUdsZWFuT0F1dGhVUkxSZXNwb25zZRIRCglvYXV0aF91cmwYASABKAki0QIKDlJJR2xlYW5SZXF1ZXN0EiUKB3JlcXVlc3QYASABKAsyFC5nbGVhbi5TZWFyY2hSZXF1ZXN0EhYKDnJlcXVlc3Rfc291cmNlGAIgASgJElsKFnF1ZXJ5X3Byb2Nlc3Nvcl9jb25maWcYAyABKAsyOy5yZXF1ZXN0X2luc2lnaHQuUklHbGVhblJlcXVlc3QuUklHbGVhblF1ZXJ5UHJvY2Vzc29yQ29uZmlnGqIBChtSSUdsZWFuUXVlcnlQcm9jZXNzb3JDb25maWcSFgoOZ2NwX3Byb2plY3RfaWQYASABKAkSEgoKZ2NwX3JlZ2lvbhgCIAEoCRISCgptb2RlbF9uYW1lGAMgASgJEhMKC3RlbXBlcmF0dXJlGAQgASgCEhkKEW1heF9vdXRwdXRfdG9rZW5zGAUgASgFEhMKC21heF9yZXN1bHRzGAYgASgFIrYBCg9SSUdsZWFuUmVzcG9uc2USJwoIcmVzcG9uc2UYASABKAsyFS5nbGVhbi5TZWFyY2hSZXNwb25zZRJQCh9nZW5lcmF0ZV9zZWFyY2hfcXVlcmllc19yZXF1ZXN0GAIgASgLMicucmVxdWVzdF9pbnNpZ2h0LlRoaXJkUGFydHlNb2RlbFJlcXVlc3QSKAogZ2VuZXJhdGVfc2VhcmNoX3F1ZXJpZXNfcmVzcG9uc2UYAyADKAkisQEKFFJJSW5zdHJ1Y3Rpb25SZXF1ZXN0EikKB3JlcXVlc3QYASABKAsyGC5lZGl0Lkluc3RydWN0aW9uUmVxdWVzdBI5ChByZXRyaWV2ZWRfY2h1bmtzGAIgAygLMh8ucmVxdWVzdF9pbnNpZ2h0LlJldHJpZXZhbENodW5rEjMKDHRva2VuaXphdGlvbhgDIAEoCzIdLnJlcXVlc3RfaW5zaWdodC5Ub2tlbml6YXRpb24isAEKFVJJSW5zdHJ1Y3Rpb25SZXNwb25zZRI0CghyZXNwb25zZRgBIAEoCzIiLmVkaXQuSW5zdHJ1Y3Rpb25BZ2dyZWdhdGVSZXNwb25zZRIzCgx0b2tlbml6YXRpb24YAiABKAsyHS5yZXF1ZXN0X2luc2lnaHQuVG9rZW5pemF0aW9uEhoKDWVycm9yX21lc3NhZ2UYAyABKAlIAIgBAUIQCg5fZXJyb3JfbWVzc2FnZSKvAQoeUklJbnRlZ3JhdGlvbkluc3RhbGxhdGlvbkV2ZW50EiIKBnN0YXR1cxgBIAEoCzISLmdvb2dsZS5ycGMuU3RhdHVzEjUKCmV2ZW50X3R5cGUYAiABKA4yIS5yZXF1ZXN0X2luc2lnaHQuSW5zdGFsbEV2ZW50VHlwZRITCgtpbnRlZ3JhdGlvbhgDIAEoCRINCgVzY29wZRgEIAEoCRIOCgZtZXRob2QYBSABKAki0AEKDlJJTW9kZWxBUElDYWxsEhIKCm1vZGVsX25hbWUYASABKAkSEAoIcHJvdmlkZXIYAiABKAkSEwoGcmVnaW9uGAMgASgJSACIAQESIAoTcmVxdWVzdF9wYXJhbXNfanNvbhgEIAEoCUgBiAEBEiMKFnJlc3BvbnNlX21ldGFkYXRhX2pzb24YBSABKAlIAogBAUIJCgdfcmVnaW9uQhYKFF9yZXF1ZXN0X3BhcmFtc19qc29uQhkKF19yZXNwb25zZV9tZXRhZGF0YV9qc29uImgKEFJJUmVmdXNhbFN1bW1hcnkSEAoIcHJvdmlkZXIYASABKAkSEgoKbW9kZWxfbmFtZRgCIAEoCRIMCgR0eXBlGAMgASgJEhAKCGNhdGVnb3J5GAQgASgJEg4KBnNvdXJjZRgFIAEoCSLGAgoXUklSZW1vdGVUb29sQ2FsbFJlcXVlc3QSRgoaY29kZWJhc2VfcmV0cmlldmFsX3JlcXVlc3QYASABKAsyIC5hZ2VudHMuQ29kZWJhc2VSZXRyaWV2YWxSZXF1ZXN0SAASNAoRZWRpdF9maWxlX3JlcXVlc3QYAiABKAsyFy5hZ2VudHMuRWRpdEZpbGVSZXF1ZXN0SAASTQoacmlfcnVuX3JlbW90ZV90b29sX3JlcXVlc3QYBCABKAsyJy5yZXF1ZXN0X2luc2lnaHQuUklSdW5SZW1vdGVUb29sUmVxdWVzdEgAEk0KHmNvZGViYXNlX3JldHJpZXZhbF9yYXdfcmVxdWVzdBgFIAEoCzIjLmFnZW50cy5Db2RlYmFzZVJldHJpZXZhbFJhd1JlcXVlc3RIAEIJCgdyZXF1ZXN0SgQIAxAEIrwCChhSSVJlbW90ZVRvb2xDYWxsUmVzcG9uc2USSAobY29kZWJhc2VfcmV0cmlldmFsX3Jlc3BvbnNlGAEgASgLMiEuYWdlbnRzLkNvZGViYXNlUmV0cmlldmFsUmVzcG9uc2VIABI2ChJlZGl0X2ZpbGVfcmVzcG9uc2UYAiABKAsyGC5hZ2VudHMuRWRpdEZpbGVSZXNwb25zZUgAEkEKGHJ1bl9yZW1vdGVfdG9vbF9yZXNwb25zZRgDIAEoCzIdLmFnZW50cy5SdW5SZW1vdGVUb29sUmVzcG9uc2VIABJPCh9jb2RlYmFzZV9yZXRyaWV2YWxfcmF3X3Jlc3BvbnNlGAQgASgLMiQuYWdlbnRzLkNvZGViYXNlUmV0cmlldmFsUmF3UmVzcG9uc2VIAEIKCghyZXNwb25zZSJvChZSSVJ1blJlbW90ZVRvb2xSZXF1ZXN0EhUKCXRvb2xfbmFtZRgBIAEoCUICGAESFwoPdG9vbF9pbnB1dF9qc29uGAIgASgJEiUKB3Rvb2xfaWQYAyABKA4yFC5hZ2VudHMuUmVtb3RlVG9vbElkIksKFVJJU2hhcmVHZXRDaGF0UmVxdWVzdBIyCgdyZXF1ZXN0GAEgASgLMiEuc2hhcmUuR2V0Q2hhdENvbnZlcnNhdGlvblJlcXVlc3QiTgoWUklTaGFyZUdldENoYXRSZXNwb25zZRI0CghyZXNwb25zZRgBIAEoCzIiLnNoYXJlLkdldENoYXRDb252ZXJzYXRpb25SZXNwb25zZSJNChZSSVNoYXJlU2F2ZUNoYXRSZXF1ZXN0EjMKB3JlcXVlc3QYASABKAsyIi5zaGFyZS5TYXZlQ2hhdENvbnZlcnNhdGlvblJlcXVlc3QiUAoXUklTaGFyZVNhdmVDaGF0UmVzcG9uc2USNQoIcmVzcG9uc2UYASABKAsyIy5zaGFyZS5TYXZlQ2hhdENvbnZlcnNhdGlvblJlc3BvbnNlIngKG1JJU2xhY2tib3RJbnN0YWxsYXRpb25FdmVudBIiCgZzdGF0dXMYASABKAsyEi5nb29nbGUucnBjLlN0YXR1cxI1CgpldmVudF90eXBlGAIgASgOMiEucmVxdWVzdF9pbnNpZ2h0Lkluc3RhbGxFdmVudFR5cGUiiwIKEVJJU2xhY2tib3RSZXF1ZXN0EikKC3NsYWNrX2V2ZW50GAEgASgLMhQuc2xhY2tib3QuU2xhY2tFdmVudBJECgxjaGFubmVsX3R5cGUYAiABKA4yLi5yZXF1ZXN0X2luc2lnaHQuUklTbGFja2JvdFJlcXVlc3QuQ2hhbm5lbFR5cGUihAEKC0NoYW5uZWxUeXBlEhgKFFVOS05PV05fQ0hBTk5FTF9UWVBFEAASBgoCSU0QARIICgRNUElNEAISEgoOU0hBUkVEX0NIQU5ORUwQAxITCg9QUklWQVRFX0NIQU5ORUwQBBITCg9HRU5FUkFMX0NIQU5ORUwQBRILCgdDSEFOTkVMEAYi/QMKElJJU2xhY2tib3RSZXNwb25zZRIPCgdjaGFubmVsGAEgASgJEhgKEHRocmVhZF90aW1lc3RhbXAYAiABKAkSIQoZcmVxdWVzdF9tZXNzYWdlX3RpbWVzdGFtcBgDIAEoCRJCCg9yZXNwb25zZV9ldmVudHMYBCADKAsyKS5yZXF1ZXN0X2luc2lnaHQuUklTbGFja2JvdFJlc3BvbnNlLkV2ZW50GtABCgVFdmVudBJHCgxwb3N0X21lc3NhZ2UYAiABKAsyLy5yZXF1ZXN0X2luc2lnaHQuUklTbGFja2JvdFJlc3BvbnNlLlBvc3RNZXNzYWdlSAASSwoOdXBkYXRlX21lc3NhZ2UYAyABKAsyMS5yZXF1ZXN0X2luc2lnaHQuUklTbGFja2JvdFJlc3BvbnNlLlVwZGF0ZU1lc3NhZ2VIABIoCgR0aW1lGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIHCgVldmVudBo/CgtQb3N0TWVzc2FnZRIiChpyZXNwb25zZV9tZXNzYWdlX3RpbWVzdGFtcBgBIAEoCRIMCgR0ZXh0GAIgASgJGkEKDVVwZGF0ZU1lc3NhZ2USIgoacmVzcG9uc2VfbWVzc2FnZV90aW1lc3RhbXAYASABKAkSDAoEdGV4dBgCIAEoCSIjCgVSYW5nZRINCgVzdGFydBgBIAEoBRILCgNlbmQYAiABKAUioQIKFFJlbWVtYmVyVG9vbENhbGxEYXRhEkgKBmNhbGxlchgBIAEoDjI4LnJlcXVlc3RfaW5zaWdodC5SZW1lbWJlclRvb2xDYWxsRGF0YS5SZW1lbWJlclRvb2xDYWxsZXISHQoVaXNfY29tcGxleF9uZXdfbWVtb3J5GAIgASgIEjcKDHRyYWNpbmdfZGF0YRgDIAEoCzIhLnJlcXVlc3RfaW5zaWdodC5BZ2VudFRyYWNpbmdEYXRhImcKElJlbWVtYmVyVG9vbENhbGxlchIPCgtVTlNQRUNJRklFRBAAEhgKFENMQVNTSUZZX0FORF9ESVNUSUxMEAESDwoLT1JJRU5UQVRJT04QAhIVChFNRU1PUllfQUNDRVBUQU5DRRADIkIKElJlbW90ZUFnZW50Q3JlYXRlZBIUCgxjaGFuZ2VkX3JlcG8YASABKAgSFgoOY2hhbmdlZF9icmFuY2gYAiABKAgiaAoTUmVtb3RlQWdlbnRGZWVkYmFjaxIvCgZyYXRpbmcYASABKA4yHy5yZXF1ZXN0X2luc2lnaHQuRmVlZGJhY2tSYXRpbmcSDAoEbm90ZRgCIAEoCRISCgp1c2VyX2FnZW50GAMgASgJItoBChZSZW1vdGVBZ2VudExhdGVuY3lEYXRhElQKDGxhdGVuY3lfdHlwZRgBIAEoDjI+LnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudExhdGVuY3lEYXRhLlJlbW90ZUFnZW50TGF0ZW5jeVR5cGUSEgoKbGF0ZW5jeV9tcxgCIAEoDSJWChZSZW1vdGVBZ2VudExhdGVuY3lUeXBlEhgKFFVOS05PV05fTEFURU5DWV9UWVBFEAASEAoMQ1JFQVRFX0FHRU5UEAESEAoMUkVTVU1FX0FHRU5UEAIi2wEKDlJlbW90ZUFnZW50TG9nEjUKB2VudHJpZXMYASADKAsyJC5yZXF1ZXN0X2luc2lnaHQuUmVtb3RlQWdlbnRMb2dFbnRyeRIXCg9yZW1vdGVfYWdlbnRfaWQYAiABKAkSEQoJY29tcG9uZW50GAMgASgJEjMKD3N0YXJ0X3RpbWVzdGFtcBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMQoNZW5kX3RpbWVzdGFtcBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiaAoTUmVtb3RlQWdlbnRMb2dFbnRyeRIPCgdtZXNzYWdlGAEgASgJEhEKCXRyYW5zcG9ydBgCIAEoCRItCgl0aW1lc3RhbXAYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIscDCh5SZW1vdGVBZ2VudE5ld1RocmVhZEJ1dHRvbkRhdGESYAoGYWN0aW9uGAEgASgOMlAucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50TmV3VGhyZWFkQnV0dG9uRGF0YS5SZW1vdGVBZ2VudE5ld1RocmVhZEJ1dHRvbkFjdGlvbhJPCgt0aHJlYWRfdHlwZRgCIAEoDjI6LnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudE5ld1RocmVhZEJ1dHRvbkRhdGEuVGhyZWFkVHlwZRI6Cg5zb3VyY2VfY29udHJvbBgDIAEoDjIiLnJlcXVlc3RfaW5zaWdodC5Tb3VyY2VDb250cm9sVHlwZSJoCiBSZW1vdGVBZ2VudE5ld1RocmVhZEJ1dHRvbkFjdGlvbhIkCiBVTktOT1dOX05FV19USFJFQURfQlVUVE9OX0FDVElPThAAEgkKBUNMSUNLEAESCAoET1BFThACEgkKBUNMT1NFEAMiTAoKVGhyZWFkVHlwZRIXChNVTktOT1dOX1RIUkVBRF9UWVBFEAASCAoEQ0hBVBABEgkKBUFHRU5UEAISEAoMUkVNT1RFX0FHRU5UEAMipQkKF1JlbW90ZUFnZW50U2Vzc2lvbkV2ZW50EkgKF3JlbW90ZV9hZ2VudF9zZXR1cF9kYXRhGAQgASgLMiUucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50U2V0dXBEYXRhSAASSAoRc2V0dXBfc2NyaXB0X2RhdGEYBSABKAsyKy5yZXF1ZXN0X2luc2lnaHQuUmVtb3RlQWdlbnRTZXR1cFNjcmlwdERhdGFIABJDChRzc2hfaW50ZXJhY3Rpb25fZGF0YRgGIAEoCzIjLnJlcXVlc3RfaW5zaWdodC5TU0hJbnRlcmFjdGlvbkRhdGFIABJHChZub3RpZmljYXRpb25fYmVsbF9kYXRhGAcgASgLMiUucmVxdWVzdF9pbnNpZ2h0Lk5vdGlmaWNhdGlvbkJlbGxEYXRhSAASOQoPZGlmZl9wYW5lbF9kYXRhGAggASgLMh4ucmVxdWVzdF9pbnNpZ2h0LkRpZmZQYW5lbERhdGFIABI9ChFzZXR1cF9wYWdlX29wZW5lZBgJIAEoCzIgLnJlcXVlc3RfaW5zaWdodC5TZXR1cFBhZ2VPcGVuZWRIABI/ChJnaXRodWJfYXBpX2ZhaWx1cmUYCiABKAsyIS5yZXF1ZXN0X2luc2lnaHQuR2l0aHViQVBJRmFpbHVyZUgAEkMKFHJlbW90ZV9hZ2VudF9jcmVhdGVkGAsgASgLMiMucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50Q3JlYXRlZEgAEkMKFGNoYW5nZXNfYXBwbGllZF9kYXRhGAwgASgLMiMucmVxdWVzdF9pbnNpZ2h0LkNoYW5nZXNBcHBsaWVkRGF0YUgAEjkKD2NyZWF0ZWRfcHJfZGF0YRgNIAEoCzIeLnJlcXVlc3RfaW5zaWdodC5DcmVhdGVkUFJEYXRhSAASPwoSbW9kZV9zZWxlY3Rvcl9kYXRhGA4gASgLMiEucmVxdWVzdF9pbnNpZ2h0Lk1vZGVTZWxlY3RvckRhdGFIABJVCh5yZW1vdGVfYWdlbnRfc2V0dXBfd2luZG93X2RhdGEYDyABKAsyKy5yZXF1ZXN0X2luc2lnaHQuUmVtb3RlQWdlbnRTZXR1cFdpbmRvd0RhdGFIABJTCh1yZW1vdGVfYWdlbnRfdGhyZWFkX2xpc3RfZGF0YRgQIAEoCzIqLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudFRocmVhZExpc3REYXRhSAASXgojcmVtb3RlX2FnZW50X25ld190aHJlYWRfYnV0dG9uX2RhdGEYESABKAsyLy5yZXF1ZXN0X2luc2lnaHQuUmVtb3RlQWdlbnROZXdUaHJlYWRCdXR0b25EYXRhSAASTAoZcmVtb3RlX2FnZW50X2xhdGVuY3lfZGF0YRgSIAEoCzInLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudExhdGVuY3lEYXRhSAASEgoKZXZlbnRfbmFtZRgBIAEoCRISCgp1c2VyX2FnZW50GAIgASgJEhcKD3JlbW90ZV9hZ2VudF9pZBgDIAEoCUIMCgpldmVudF9kYXRhIs4BChRSZW1vdGVBZ2VudFNldHVwRGF0YRIjCht1c2VkX2dlbmVyYXRlZF9zZXR1cF9zY3JpcHQYASABKAgSUAoLc2V0dXBfc3RhdGUYAiABKA4yOy5yZXF1ZXN0X2luc2lnaHQuUmVtb3RlQWdlbnRTZXR1cERhdGEuUmVtb3RlQWdlbnRTZXR1cFN0YXRlIj8KFVJlbW90ZUFnZW50U2V0dXBTdGF0ZRILCgdVTktOT1dOEAASDQoJQ09NUExFVEVEEAESCgoGRkFJTEVEEAIigwEKGlJlbW90ZUFnZW50U2V0dXBTY3JpcHREYXRhEhEKCW51bV90cmllcxgBIAEoBRIZChFudW1fbWVzc2FnZXNfc2VudBgDIAEoBRIaChJnZW5lcmF0aW9uX3RpbWVfbXMYBCABKAUSGwoTbWFudWFsX21vZGlmaWNhdGlvbhgFIAEoCCKWBQoaUmVtb3RlQWdlbnRTZXR1cFdpbmRvd0RhdGESWAoGYWN0aW9uGAEgASgOMkgucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50U2V0dXBXaW5kb3dEYXRhLlJlbW90ZUFnZW50U2V0dXBXaW5kb3dBY3Rpb24SEQoJcmVwb19oYXNoGAIgASgJEhMKC2JyYW5jaF9oYXNoGAMgASgJEiEKGWhhc19zZXR1cF9zY3JpcHRfc2VsZWN0ZWQYBCABKAgSIgoaZ2l0aHViX2ludGVncmF0aW9uX2VuYWJsZWQYBSABKAgSGwoTbnVtX3JlcG9zX2F2YWlsYWJsZRgGIAEoDRI6Cg5zb3VyY2VfY29udHJvbBgHIAEoDjIiLnJlcXVlc3RfaW5zaWdodC5Tb3VyY2VDb250cm9sVHlwZSLVAgocUmVtb3RlQWdlbnRTZXR1cFdpbmRvd0FjdGlvbhIfChtVTktOT1dOX1NFVFVQX1dJTkRPV19BQ1RJT04QABIICgRPUEVOEAESCQoFQ0xPU0UQAhIPCgtTRUxFQ1RfUkVQTxADEhEKDVNFTEVDVF9CUkFOQ0gQBBIXChNTRUxFQ1RfU0VUVVBfU0NSSVBUEAUSHgoaQVVUT19HRU5FUkFURV9TRVRVUF9TQ1JJUFQQBhIgChxNQU5VQUxMWV9DUkVBVEVfU0VUVVBfU0NSSVBUEAcSGQoVVFlQRV9JTl9QUk9NUFRfV0lORE9XEAgSGAoUQ0xJQ0tfUkVXUklURV9QUk9NUFQQCRIYChRFTkFCTEVfTk9USUZJQ0FUSU9OUxAKEhkKFURJU0FCTEVfTk9USUZJQ0FUSU9OUxALEhYKEkNMSUNLX0NSRUFURV9BR0VOVBAMIuMCChlSZW1vdGVBZ2VudFRocmVhZExpc3REYXRhElYKBmFjdGlvbhgBIAEoDjJGLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudFRocmVhZExpc3REYXRhLlJlbW90ZUFnZW50VGhyZWFkTGlzdEFjdGlvbhIaChJudW1fYWdlbnRzX2luX2xpc3QYAiABKA0SOgoOc291cmNlX2NvbnRyb2wYAyABKA4yIi5yZXF1ZXN0X2luc2lnaHQuU291cmNlQ29udHJvbFR5cGUilQEKG1JlbW90ZUFnZW50VGhyZWFkTGlzdEFjdGlvbhIdChlVTktOT1dOX0FHRU5UX0xJU1RfQUNUSU9OEAASCAoET1BFThABEgkKBUNMT1NFEAISEAoMU0VMRUNUX0FHRU5UEAMSEAoMREVMRVRFX0FHRU5UEAQSDQoJUElOX0FHRU5UEAUSDwoLVU5QSU5fQUdFTlQQBiJ+ChpSZW1vdGVBZ2VudFdvcmtzcGFjZVVwdGltZRIwCgx1cHRpbWVfc3RhcnQYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwdGltZV9lbmQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIlAKHFJlbW90ZUFnZW50c0FkZFNTSEtleVJlcXVlc3QSMAoHcmVxdWVzdBgBIAEoCzIfLnJlbW90ZV9hZ2VudHMuQWRkU1NIS2V5UmVxdWVzdCJTCh1SZW1vdGVBZ2VudHNBZGRTU0hLZXlSZXNwb25zZRIyCghyZXNwb25zZRgBIAEoCzIgLnJlbW90ZV9hZ2VudHMuQWRkU1NIS2V5UmVzcG9uc2UiRgoXUmVtb3RlQWdlbnRzQ2hhdFJlcXVlc3QSKwoHcmVxdWVzdBgBIAEoCzIaLnJlbW90ZV9hZ2VudHMuQ2hhdFJlcXVlc3QiSQoYUmVtb3RlQWdlbnRzQ2hhdFJlc3BvbnNlEi0KCHJlc3BvbnNlGAEgASgLMhsucmVtb3RlX2FnZW50cy5DaGF0UmVzcG9uc2UiTwoZUmVtb3RlQWdlbnRzQ3JlYXRlUmVxdWVzdBIyCgdyZXF1ZXN0GAEgASgLMiEucmVtb3RlX2FnZW50cy5DcmVhdGVBZ2VudFJlcXVlc3QiUgoaUmVtb3RlQWdlbnRzQ3JlYXRlUmVzcG9uc2USNAoIcmVzcG9uc2UYASABKAsyIi5yZW1vdGVfYWdlbnRzLkNyZWF0ZUFnZW50UmVzcG9uc2UiTwoZUmVtb3RlQWdlbnRzRGVsZXRlUmVxdWVzdBIyCgdyZXF1ZXN0GAEgASgLMiEucmVtb3RlX2FnZW50cy5EZWxldGVBZ2VudFJlcXVlc3QiUgoaUmVtb3RlQWdlbnRzRGVsZXRlUmVzcG9uc2USNAoIcmVzcG9uc2UYASABKAsyIi5yZW1vdGVfYWdlbnRzLkRlbGV0ZUFnZW50UmVzcG9uc2UiXAoiUmVtb3RlQWdlbnRzR2VuZXJhdGVTdW1tYXJ5UmVxdWVzdBI2CgdyZXF1ZXN0GAEgASgLMiUucmVtb3RlX2FnZW50cy5HZW5lcmF0ZVN1bW1hcnlSZXF1ZXN0Il8KI1JlbW90ZUFnZW50c0dlbmVyYXRlU3VtbWFyeVJlc3BvbnNlEjgKCHJlc3BvbnNlGAEgASgLMiYucmVtb3RlX2FnZW50cy5HZW5lcmF0ZVN1bW1hcnlSZXNwb25zZSJVChxSZW1vdGVBZ2VudHNJbnRlcnJ1cHRSZXF1ZXN0EjUKB3JlcXVlc3QYASABKAsyJC5yZW1vdGVfYWdlbnRzLkludGVycnVwdEFnZW50UmVxdWVzdCJYCh1SZW1vdGVBZ2VudHNJbnRlcnJ1cHRSZXNwb25zZRI3CghyZXNwb25zZRgBIAEoCzIlLnJlbW90ZV9hZ2VudHMuSW50ZXJydXB0QWdlbnRSZXNwb25zZSJNChhSZW1vdGVBZ2VudHNQYXVzZVJlcXVlc3QSMQoHcmVxdWVzdBgBIAEoCzIgLnJlbW90ZV9hZ2VudHMuUGF1c2VBZ2VudFJlcXVlc3QiUAoZUmVtb3RlQWdlbnRzUGF1c2VSZXNwb25zZRIzCghyZXNwb25zZRgBIAEoCzIhLnJlbW90ZV9hZ2VudHMuUGF1c2VBZ2VudFJlc3BvbnNlIlwKIlJlbW90ZUFnZW50c1Jlc3VtZUhpbnRBZ2VudFJlcXVlc3QSNgoHcmVxdWVzdBgBIAEoCzIlLnJlbW90ZV9hZ2VudHMuUmVzdW1lSGludEFnZW50UmVxdWVzdCJfCiNSZW1vdGVBZ2VudHNSZXN1bWVIaW50QWdlbnRSZXNwb25zZRI4CghyZXNwb25zZRgBIAEoCzImLnJlbW90ZV9hZ2VudHMuUmVzdW1lSGludEFnZW50UmVzcG9uc2UiTwoZUmVtb3RlQWdlbnRzUmVzdW1lUmVxdWVzdBIyCgdyZXF1ZXN0GAEgASgLMiEucmVtb3RlX2FnZW50cy5SZXN1bWVBZ2VudFJlcXVlc3QiUgoaUmVtb3RlQWdlbnRzUmVzdW1lUmVzcG9uc2USNAoIcmVzcG9uc2UYASABKAsyIi5yZW1vdGVfYWdlbnRzLlJlc3VtZUFnZW50UmVzcG9uc2UiTwoZUmVtb3RlQWdlbnRzVXBkYXRlUmVxdWVzdBIyCgdyZXF1ZXN0GAEgASgLMiEucmVtb3RlX2FnZW50cy5VcGRhdGVBZ2VudFJlcXVlc3QiUgoaUmVtb3RlQWdlbnRzVXBkYXRlUmVzcG9uc2USNAoIcmVzcG9uc2UYASABKAsyIi5yZW1vdGVfYWdlbnRzLlVwZGF0ZUFnZW50UmVzcG9uc2UiZwoOUmVxdWVzdEJsb2NrZWQSLQoOb3BhcXVlX3VzZXJfaWQYASABKAsyFS5hdXRoX2VudGl0aWVzLlVzZXJJZBISCgp1c2VyX2VtYWlsGAIgASgJEhIKCmNoZWNrX3R5cGUYAyABKAkiwj4KDFJlcXVlc3RFdmVudBI2Cg1pbmZlcl9yZXF1ZXN0GAIgASgLMh0ucmVxdWVzdF9pbnNpZ2h0LkluZmVyUmVxdWVzdEgAEkkKF2NvbXBsZXRpb25faG9zdF9yZXF1ZXN0GAggASgLMiYucmVxdWVzdF9pbnNpZ2h0LkNvbXBsZXRpb25Ib3N0UmVxdWVzdEgAEkkKF2luZmVyZW5jZV9ob3N0X3Jlc3BvbnNlGAogASgLMiYucmVxdWVzdF9pbnNpZ2h0LkluZmVyZW5jZUhvc3RSZXNwb25zZUgAEksKGGNvbXBsZXRpb25faG9zdF9yZXNwb25zZRgJIAEoCzInLnJlcXVlc3RfaW5zaWdodC5Db21wbGV0aW9uSG9zdFJlc3BvbnNlSAASPQoRYXBpX2h0dHBfcmVzcG9uc2UYByABKAsyIC5yZXF1ZXN0X2luc2lnaHQuQXBpSHR0cFJlc3BvbnNlSAASTQoZZW1iZWRkaW5nc19zZWFyY2hfcmVxdWVzdBgLIAEoCzIoLnJlcXVlc3RfaW5zaWdodC5FbWJlZGRpbmdzU2VhcmNoUmVxdWVzdEgAEk8KGmVtYmVkZGluZ3Nfc2VhcmNoX3Jlc3BvbnNlGAwgASgLMikucmVxdWVzdF9pbnNpZ2h0LkVtYmVkZGluZ3NTZWFyY2hSZXNwb25zZUgAEjoKD2NvbXBsZXRpb25fZW1pdBgNIAEoCzIfLnJlcXVlc3RfaW5zaWdodC5Db21wbGV0aW9uRW1pdEgAEkYKFWNvbXBsZXRpb25fcmVzb2x1dGlvbhgOIAEoCzIlLnJlcXVlc3RfaW5zaWdodC5Db21wbGV0aW9uUmVzb2x1dGlvbkgAEjsKEWVkaXRfaG9zdF9yZXF1ZXN0GA8gASgLMh4ucmVxdWVzdF9pbnNpZ2h0LlJJRWRpdFJlcXVlc3RIABI9ChJlZGl0X2hvc3RfcmVzcG9uc2UYECABKAsyHy5yZXF1ZXN0X2luc2lnaHQuUklFZGl0UmVzcG9uc2VIABJCChNjb21wbGV0aW9uX2ZlZWRiYWNrGBEgASgLMiMucmVxdWVzdF9pbnNpZ2h0LkNvbXBsZXRpb25GZWVkYmFja0gAEi4KCWVkaXRfZW1pdBgSIAEoCzIZLnJlcXVlc3RfaW5zaWdodC5FZGl0RW1pdEgAEjoKD2VkaXRfcmVzb2x1dGlvbhgTIAEoCzIfLnJlcXVlc3RfaW5zaWdodC5FZGl0UmVzb2x1dGlvbkgAEjwKEHJlcXVlc3RfbWV0YWRhdGEYFCABKAsyIC5yZXF1ZXN0X2luc2lnaHQuUmVxdWVzdE1ldGFkYXRhSAASQAoScmV0cmlldmFsX3Jlc3BvbnNlGBUgASgLMiIucmVxdWVzdF9pbnNpZ2h0LlJldHJpZXZhbFJlc3BvbnNlSAASOwoRY2hhdF9ob3N0X3JlcXVlc3QYFiABKAsyHi5yZXF1ZXN0X2luc2lnaHQuUklDaGF0UmVxdWVzdEgAEj0KEmNoYXRfaG9zdF9yZXNwb25zZRgXIAEoCzIfLnJlcXVlc3RfaW5zaWdodC5SSUNoYXRSZXNwb25zZUgAEjoKD2V4dGVuc2lvbl9lcnJvchgYIAEoCzIfLnJlcXVlc3RfaW5zaWdodC5FeHRlbnNpb25FcnJvckgAEkkKF2NvbXBsZXRpb25fcG9zdF9wcm9jZXNzGBkgASgLMiYucmVxdWVzdF9pbnNpZ2h0LkNvbXBsZXRpb25Qb3N0UHJvY2Vzc0gAEj4KEXByZWZlcmVuY2Vfc2FtcGxlGBsgASgLMiEucmVxdWVzdF9pbnNpZ2h0LlByZWZlcmVuY2VTYW1wbGVIABI2Cg1jaGF0X2ZlZWRiYWNrGBwgASgLMh0ucmVxdWVzdF9pbnNpZ2h0LkNoYXRGZWVkYmFja0gAEj4KEXJlcmFua2VyX3Jlc3BvbnNlGB0gASgLMiEucmVxdWVzdF9pbnNpZ2h0LlJlcmFua2VyUmVzcG9uc2VIABJPChpjbGllbnRfY29tcGxldGlvbl90aW1lbGluZRggIAEoCzIpLnJlcXVlc3RfaW5zaWdodC5DbGllbnRDb21wbGV0aW9uVGltZWxpbmVIABJJChhpbnN0cnVjdGlvbl9ob3N0X3JlcXVlc3QYJiABKAsyJS5yZXF1ZXN0X2luc2lnaHQuUklJbnN0cnVjdGlvblJlcXVlc3RIABJLChlpbnN0cnVjdGlvbl9ob3N0X3Jlc3BvbnNlGCcgASgLMiYucmVxdWVzdF9pbnNpZ2h0LlJJSW5zdHJ1Y3Rpb25SZXNwb25zZUgAEj4KEHNsYWNrYm90X3JlcXVlc3QYKCABKAsyIi5yZXF1ZXN0X2luc2lnaHQuUklTbGFja2JvdFJlcXVlc3RIABJAChFzbGFja2JvdF9yZXNwb25zZRgpIAEoCzIjLnJlcXVlc3RfaW5zaWdodC5SSVNsYWNrYm90UmVzcG9uc2VIABI2CgxnaXRodWJfZXZlbnQYKiABKAsyHi5yZXF1ZXN0X2luc2lnaHQuUklHaXRodWJFdmVudEgAEk0KGGdpdGh1Yl9wcm9jZXNzaW5nX3Jlc3VsdBgrIAEoCzIpLnJlcXVlc3RfaW5zaWdodC5SSUdpdGh1YlByb2Nlc3NpbmdSZXN1bHRIABJKChdzaGFyZV9zYXZlX2NoYXRfcmVxdWVzdBgsIAEoCzInLnJlcXVlc3RfaW5zaWdodC5SSVNoYXJlU2F2ZUNoYXRSZXF1ZXN0SAASTAoYc2hhcmVfc2F2ZV9jaGF0X3Jlc3BvbnNlGC0gASgLMigucmVxdWVzdF9pbnNpZ2h0LlJJU2hhcmVTYXZlQ2hhdFJlc3BvbnNlSAASSAoWc2hhcmVfZ2V0X2NoYXRfcmVxdWVzdBguIAEoCzImLnJlcXVlc3RfaW5zaWdodC5SSVNoYXJlR2V0Q2hhdFJlcXVlc3RIABJKChdzaGFyZV9nZXRfY2hhdF9yZXNwb25zZRgvIAEoCzInLnJlcXVlc3RfaW5zaWdodC5SSVNoYXJlR2V0Q2hhdFJlc3BvbnNlSAASUAobc21hcnRfcGFzdGVfY2xpZW50X3RpbWVsaW5lGDAgASgLMikucmVxdWVzdF9pbnNpZ2h0LlNtYXJ0UGFzdGVDbGllbnRUaW1lbGluZUgAEkcKFnNtYXJ0X3Bhc3RlX3Jlc29sdXRpb24YMSABKAsyJS5yZXF1ZXN0X2luc2lnaHQuU21hcnRQYXN0ZVJlc29sdXRpb25IABJWCh1naXRodWJfYXBwX2luc3RhbGxhdGlvbl9ldmVudBgyIAEoCzItLnJlcXVlc3RfaW5zaWdodC5SSUdpdGh1YkFwcEluc3RhbGxhdGlvbkV2ZW50SAASUwobc2xhY2tib3RfaW5zdGFsbGF0aW9uX2V2ZW50GDMgASgLMiwucmVxdWVzdF9pbnNpZ2h0LlJJU2xhY2tib3RJbnN0YWxsYXRpb25FdmVudEgAEkgKFmluc3RydWN0aW9uX3Jlc29sdXRpb24YNCABKAsyJi5yZXF1ZXN0X2luc2lnaHQuSW5zdHJ1Y3Rpb25SZXNvbHV0aW9uSAASPAoQaW5zdHJ1Y3Rpb25fZW1pdBg1IAEoCzIgLnJlcXVlc3RfaW5zaWdodC5JbnN0cnVjdGlvbkVtaXRIABI+ChFzbGFja2JvdF9mZWVkYmFjaxg2IAEoCzIhLnJlcXVlc3RfaW5zaWdodC5TbGFja2JvdEZlZWRiYWNrSAASOAoNZ2xlYW5fcmVxdWVzdBg7IAEoCzIfLnJlcXVlc3RfaW5zaWdodC5SSUdsZWFuUmVxdWVzdEgAEjoKDmdsZWFuX3Jlc3BvbnNlGDwgASgLMiAucmVxdWVzdF9pbnNpZ2h0LlJJR2xlYW5SZXNwb25zZUgAEkoKF2dsZWFuX29hdXRoX3VybF9yZXF1ZXN0GD0gASgLMicucmVxdWVzdF9pbnNpZ2h0LlJJR2xlYW5PQXV0aFVSTFJlcXVlc3RIABJMChhnbGVhbl9vYXV0aF91cmxfcmVzcG9uc2UYPiABKAsyKC5yZXF1ZXN0X2luc2lnaHQuUklHbGVhbk9BdXRoVVJMUmVzcG9uc2VIABJMChhyZW1vdGVfdG9vbF9jYWxsX3JlcXVlc3QYQSABKAsyKC5yZXF1ZXN0X2luc2lnaHQuUklSZW1vdGVUb29sQ2FsbFJlcXVlc3RIABJOChlyZW1vdGVfdG9vbF9jYWxsX3Jlc3BvbnNlGEIgASgLMikucmVxdWVzdF9pbnNpZ2h0LlJJUmVtb3RlVG9vbENhbGxSZXNwb25zZUgAEjsKEHN1Yl9hZ2VudF9kaWFsb2cYQyABKAsyHy5yZXF1ZXN0X2luc2lnaHQuU3ViQWdlbnREaWFsb2dIABI/ChJwcm9tcHRfY2FjaGVfdXNhZ2UYRCABKAsyIS5yZXF1ZXN0X2luc2lnaHQuUHJvbXB0Q2FjaGVVc2FnZUgAEjUKDXRvb2xfdXNlX2RhdGEYRSABKAsyHC5yZXF1ZXN0X2luc2lnaHQuVG9vbFVzZURhdGFIABI6Cg9yb3V0ZXJfcmVzcG9uc2UYRiABKAsyHy5yZXF1ZXN0X2luc2lnaHQuUm91dGVyUmVzcG9uc2VIABJEChRwb3N0cHJvY2Vzc19yZXNwb25zZRhHIAEoCzIkLnJlcXVlc3RfaW5zaWdodC5Qb3N0cHJvY2Vzc1Jlc3BvbnNlSAASQQoTYWdlbnRfcmVxdWVzdF9ldmVudBhIIAEoCzIiLnJlcXVlc3RfaW5zaWdodC5BZ2VudFJlcXVlc3RFdmVudEgAEjgKDmFnZW50X2ZlZWRiYWNrGEkgASgLMh4ucmVxdWVzdF9pbnNpZ2h0LkFnZW50RmVlZGJhY2tIABI6Cg9yZXF1ZXN0X2Jsb2NrZWQYSiABKAsyHy5yZXF1ZXN0X2luc2lnaHQuUmVxdWVzdEJsb2NrZWRIABJAChJyZXF1ZXN0X3N1c3BpY2lvdXMYSyABKAsyIi5yZXF1ZXN0X2luc2lnaHQuUmVxdWVzdFN1c3BpY2lvdXNIABJDChR0b2tlbl9leGNoYW5nZV9lcnJvchhMIAEoCzIjLnJlcXVlc3RfaW5zaWdodC5Ub2tlbkV4Y2hhbmdlRXJyb3JIABI2CgxmaW5kX21pc3NpbmcYTSABKAsyHi5yZXF1ZXN0X2luc2lnaHQuUklGaW5kTWlzc2luZ0gAEjYKDGJhdGNoX3VwbG9hZBhOIAEoCzIeLnJlcXVlc3RfaW5zaWdodC5SSUJhdGNoVXBsb2FkSAASUgoccmVtb3RlX2FnZW50c19jcmVhdGVfcmVxdWVzdBhPIAEoCzIqLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudHNDcmVhdGVSZXF1ZXN0SAASVAodcmVtb3RlX2FnZW50c19jcmVhdGVfcmVzcG9uc2UYUCABKAsyKy5yZXF1ZXN0X2luc2lnaHQuUmVtb3RlQWdlbnRzQ3JlYXRlUmVzcG9uc2VIABJOChpyZW1vdGVfYWdlbnRzX2NoYXRfcmVxdWVzdBhRIAEoCzIoLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudHNDaGF0UmVxdWVzdEgAElAKG3JlbW90ZV9hZ2VudHNfY2hhdF9yZXNwb25zZRhSIAEoCzIpLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudHNDaGF0UmVzcG9uc2VIABJYCh9yZW1vdGVfYWdlbnRzX2ludGVycnVwdF9yZXF1ZXN0GFMgASgLMi0ucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50c0ludGVycnVwdFJlcXVlc3RIABJaCiByZW1vdGVfYWdlbnRzX2ludGVycnVwdF9yZXNwb25zZRhUIAEoCzIuLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudHNJbnRlcnJ1cHRSZXNwb25zZUgAElIKHHJlbW90ZV9hZ2VudHNfZGVsZXRlX3JlcXVlc3QYVSABKAsyKi5yZXF1ZXN0X2luc2lnaHQuUmVtb3RlQWdlbnRzRGVsZXRlUmVxdWVzdEgAElQKHXJlbW90ZV9hZ2VudHNfZGVsZXRlX3Jlc3BvbnNlGFYgASgLMisucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50c0RlbGV0ZVJlc3BvbnNlSAASWgohcmVtb3RlX2FnZW50c19hZGRfc3NoX2tleV9yZXF1ZXN0GFcgASgLMi0ucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50c0FkZFNTSEtleVJlcXVlc3RIABJcCiJyZW1vdGVfYWdlbnRzX2FkZF9zc2hfa2V5X3Jlc3BvbnNlGFggASgLMi4ucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50c0FkZFNTSEtleVJlc3BvbnNlSAASUgocZGFpbHlfcmVxdWVzdF9saW1pdF9leGNlZWRlZBhZIAEoCzIqLnJlcXVlc3RfaW5zaWdodC5EYWlseVJlcXVlc3RMaW1pdEV4Y2VlZGVkSAASPQoRY2hhdF91c2VyX21lc3NhZ2UYWiABKAsyIC5yZXF1ZXN0X2luc2lnaHQuQ2hhdFVzZXJNZXNzYWdlSAASSAoWcGFyZW50aGVzaXNfdHJ1bmNhdGlvbhhbIAEoCzImLnJlcXVlc3RfaW5zaWdodC5QYXJlbnRoZXNpc1RydW5jYXRpb25IABJFChVyZW1vdGVfYWdlbnRfZmVlZGJhY2sYXCABKAsyJC5yZXF1ZXN0X2luc2lnaHQuUmVtb3RlQWdlbnRGZWVkYmFja0gAElAKG3JlbW90ZV9hZ2VudHNfcGF1c2VfcmVxdWVzdBhdIAEoCzIpLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudHNQYXVzZVJlcXVlc3RIABJSChxyZW1vdGVfYWdlbnRzX3BhdXNlX3Jlc3BvbnNlGF4gASgLMioucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50c1BhdXNlUmVzcG9uc2VIABJSChxyZW1vdGVfYWdlbnRzX3Jlc3VtZV9yZXF1ZXN0GF8gASgLMioucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50c1Jlc3VtZVJlcXVlc3RIABJUCh1yZW1vdGVfYWdlbnRzX3Jlc3VtZV9yZXNwb25zZRhgIAEoCzIrLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudHNSZXN1bWVSZXNwb25zZUgAEjkKDm1vZGVsX2FwaV9jYWxsGGEgASgLMh8ucmVxdWVzdF9pbnNpZ2h0LlJJTW9kZWxBUElDYWxsSAASZgoncmVtb3RlX2FnZW50c19yZXN1bWVfaGludF9hZ2VudF9yZXF1ZXN0GGIgASgLMjMucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50c1Jlc3VtZUhpbnRBZ2VudFJlcXVlc3RIABJoCihyZW1vdGVfYWdlbnRzX3Jlc3VtZV9oaW50X2FnZW50X3Jlc3BvbnNlGGMgASgLMjQucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50c1Jlc3VtZUhpbnRBZ2VudFJlc3BvbnNlSAASUgoccmVtb3RlX2FnZW50c191cGRhdGVfcmVxdWVzdBhkIAEoCzIqLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudHNVcGRhdGVSZXF1ZXN0SAASVAodcmVtb3RlX2FnZW50c191cGRhdGVfcmVzcG9uc2UYZSABKAsyKy5yZXF1ZXN0X2luc2lnaHQuUmVtb3RlQWdlbnRzVXBkYXRlUmVzcG9uc2VIABJlCiZyZW1vdGVfYWdlbnRzX2dlbmVyYXRlX3N1bW1hcnlfcmVxdWVzdBhmIAEoCzIzLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudHNHZW5lcmF0ZVN1bW1hcnlSZXF1ZXN0SAASZwoncmVtb3RlX2FnZW50c19nZW5lcmF0ZV9zdW1tYXJ5X3Jlc3BvbnNlGGcgASgLMjQucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50c0dlbmVyYXRlU3VtbWFyeVJlc3BvbnNlSAASPgoRbWVtb3JpZXNfZmVlZGJhY2sYaCABKAsyIS5yZXF1ZXN0X2luc2lnaHQuTWVtb3JpZXNGZWVkYmFja0gAEj8KEmNsaV9hZ2VudF9mZWVkYmFjaxhpIAEoCzIhLnJlcXVlc3RfaW5zaWdodC5DbGlBZ2VudEZlZWRiYWNrSAASSgoYYXBpX2h0dHBfcmVxdWVzdF9kZXRhaWxzGGogASgLMiYucmVxdWVzdF9pbnNpZ2h0LkFwaUh0dHBSZXF1ZXN0RGV0YWlsc0gAElkKIHJldmlld19ib3RfcHVsbF9yZXF1ZXN0X3Jldmlld2VkGGsgASgLMi0ucmVxdWVzdF9pbnNpZ2h0LlJldmlld0JvdFB1bGxSZXF1ZXN0UmV2aWV3ZWRIABJMChlyZXZpZXdfYm90X2Vtb2ppX3JlYWN0aW9uGGwgASgLMicucmVxdWVzdF9pbnNpZ2h0LlJldmlld0JvdEVtb2ppUmVhY3Rpb25IABJDChNjaGF0X21ldGVyaW5nX2V2ZW50GG0gASgLMiQucmVxdWVzdF9pbnNpZ2h0LlJJQ2hhdE1ldGVyaW5nRXZlbnRIABJMChlyZXZpZXdfYm90X2F1dG9tYXRlZF9ldmFsGG4gASgLMicucmVxdWVzdF9pbnNpZ2h0LlJldmlld0JvdEF1dG9tYXRlZEV2YWxIABJKChhyZXZpZXdfYm90X3Bvc3RlZF9yZXZpZXcYbyABKAsyJi5yZXF1ZXN0X2luc2lnaHQuUmV2aWV3Qm90UG9zdGVkUmV2aWV3SAASTAoZcmV2aWV3X2JvdF9wb3N0ZWRfY29tbWVudBhwIAEoCzInLnJlcXVlc3RfaW5zaWdodC5SZXZpZXdCb3RQb3N0ZWRDb21tZW50SAASTgoaY2hhdF9pbnB1dF9jb21wbGV0aW9uX2VtaXQYcSABKAsyKC5yZXF1ZXN0X2luc2lnaHQuQ2hhdElucHV0Q29tcGxldGlvbkVtaXRIABJaCiBjaGF0X2lucHV0X2NvbXBsZXRpb25fcmVzb2x1dGlvbhhyIAEoCzIuLnJlcXVlc3RfaW5zaWdodC5DaGF0SW5wdXRDb21wbGV0aW9uUmVzb2x1dGlvbkgAEk4KGnJldmlld19ib3RfcmVwb3NfY29ubmVjdGVkGHMgASgLMigucmVxdWVzdF9pbnNpZ2h0LlJldmlld0JvdFJlcG9zQ29ubmVjdGVkSAASawooYWdlbnRpY19zbGFja2JvdF9yZWFjdGlvbl9yZWNlaXZlZF9ldmVudBh0IAEoCzI3LnJlcXVlc3RfaW5zaWdodC5SSUFnZW50aWNTbGFja2JvdFJlYWN0aW9uUmVjZWl2ZWRFdmVudEgAEk4KGnJldmlld19ib3RfYWdlbnRfY29tcGxldGVkGHYgASgLMigucmVxdWVzdF9pbnNpZ2h0LlJldmlld0JvdEFnZW50Q29tcGxldGVkSAASUwoaZ2l0aHViX3B1bGxfcmVxdWVzdF9tZXJnZWQYdyABKAsyLS5yZXF1ZXN0X2luc2lnaHQuR2l0aHViUHVsbFJlcXVlc3RNZXJnZWRFdmVudEgAEkkKF2J1dGxlcl9yb3V0aW5nX3Jlc3BvbnNlGHggASgLMiYucmVxdWVzdF9pbnNpZ2h0LkJ1dGxlclJvdXRpbmdSZXNwb25zZUgAEjoKD2Nvc21vc19mZWVkYmFjaxh5IAEoCzIfLnJlcXVlc3RfaW5zaWdodC5Db3Ntb3NGZWVkYmFja0gAElkKHmludGVncmF0aW9uX2luc3RhbGxhdGlvbl9ldmVudBh6IAEoCzIvLnJlcXVlc3RfaW5zaWdodC5SSUludGVncmF0aW9uSW5zdGFsbGF0aW9uRXZlbnRIABI9ChF2b2ljZV9tb2RlbF9pbnB1dBh7IAEoCzIgLnJlcXVlc3RfaW5zaWdodC5Wb2ljZU1vZGVsSW5wdXRIABIoCgR0aW1lGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIVCghldmVudF9pZBglIAEoCUgBiAEBQgcKBWV2ZW50QgsKCV9ldmVudF9pZEoECAMQBEoECAQQBUoECAUQBkoECDcQOEoECDgQOUoECDkQOkoECDoQO0oECD8QQEoECEAQQUoECBoQG0oECB4QH0oECB8QIEoECCEQIkoECCIQI0oECCMQJEoECCQQJUoECHUQdlIUbGxtX2dlbmVyYXRlX3JlcXVlc3RSFWxsbV9nZW5lcmF0ZV9yZXNwb25zZVIWbmV4dF9lZGl0X2hvc3RfcmVxdWVzdFIXbmV4dF9lZGl0X2hvc3RfcmVzcG9uc2VSEm5leHRfZWRpdF9mZWVkYmFja1IUbmV4dF9lZGl0X3Jlc29sdXRpb25SDm5leHRfZWRpdF9lbWl0IsQCCg9SZXF1ZXN0TWV0YWRhdGESMgoMcmVxdWVzdF90eXBlGAEgASgOMhwucmVxdWVzdF9pbnNpZ2h0LlJlcXVlc3RUeXBlEhIKCnNlc3Npb25faWQYAiABKAkSDwoHdXNlcl9pZBgDIAEoCRISCgp1c2VyX2FnZW50GAQgASgJEi0KDm9wYXF1ZV91c2VyX2lkGAUgASgLMhUuYXV0aF9lbnRpdGllcy5Vc2VySWQSFwoKdXNlcl9lbWFpbBgGIAEoCUgAiAEBEhEKCXNvdXJjZV9pcBgHIAEoCRIoCghib3RfdHlwZRgIIAEoDjIWLmF1dGhfZW50aXRpZXMuQm90VHlwZRIcCg9jb252ZXJzYXRpb25faWQYCSABKAlIAYgBAUINCgtfdXNlcl9lbWFpbEISChBfY29udmVyc2F0aW9uX2lkImoKEVJlcXVlc3RTdXNwaWNpb3VzEi0KDm9wYXF1ZV91c2VyX2lkGAEgASgLMhUuYXV0aF9lbnRpdGllcy5Vc2VySWQSEgoKdXNlcl9lbWFpbBgCIAEoCRISCgpjaGVja190eXBlGAMgASgJIrQBCg1SZXJhbmtlckNodW5rEgwKBHRleHQYASABKAkSDAoEcGF0aBgCIAEoCRITCgtjaGFyX29mZnNldBgDIAEoBRIQCghjaGFyX2VuZBgEIAEoBRIRCglibG9iX25hbWUYBSABKAkSEwoLY2h1bmtfaW5kZXgYBiABKAUSDgoGb3JpZ2luGAcgASgJEg0KBXNjb3JlGAggASgCEhkKEXNob3J0X2Rlc2NyaXB0aW9uGAkgASgJIooBChBSZXJhbmtlclJlc3BvbnNlEjcKD3JlcmFua2VkX2NodW5rcxgBIAMoCzIeLnJlcXVlc3RfaW5zaWdodC5SZXJhbmtlckNodW5rEjcKEHJlcmFua2VyX3Byb21wdHMYAyADKAsyHS5yZXF1ZXN0X2luc2lnaHQuVG9rZW5pemF0aW9uSgQIAhADIuIBCg5SZXRyaWV2YWxDaHVuaxIMCgR0ZXh0GAUgASgJEgwKBHBhdGgYBiABKAkSEwoLY2hhcl9vZmZzZXQYBCABKAUSEAoIY2hhcl9lbmQYByABKAUSEQoJYmxvYl9uYW1lGAIgASgJEhMKC2NodW5rX2luZGV4GAMgASgFEg4KBm9yaWdpbhgIIAEoCRINCgVzY29yZRgJIAEoAhIyCgl0aW1lc3RhbXAYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQFCDAoKX3RpbWVzdGFtcEoECAEQAiLBAQoRUmV0cmlldmFsUmVzcG9uc2USNgoOcmV0cmlldmFsX3R5cGUYASABKA4yHi5yZXF1ZXN0X2luc2lnaHQuUmV0cmlldmFsVHlwZRI5ChByZXRyaWV2ZWRfY2h1bmtzGAMgAygLMh8ucmVxdWVzdF9pbnNpZ2h0LlJldHJpZXZhbENodW5rEjMKDHF1ZXJ5X3Byb21wdBgEIAEoCzIdLnJlcXVlc3RfaW5zaWdodC5Ub2tlbml6YXRpb25KBAgCEAMi2wcKEVJldHJpZXZhbFRvb2xEYXRhEhYKDnJldHJpZXZhbF9tb2RlGAEgASgJEhgKEHRvdGFsX2VsYXBzZWRfbXMYAiABKAUSGwoTYXBpX2NhbGxfZWxhcHNlZF9tcxgDIAEoBRIZChFyZXJhbmtfZWxhcHNlZF9tcxgEIAEoBRIZChFlbnJpY2hfZWxhcHNlZF9tcxgFIAEoBRIlCh1jb2RlYmFzZV9yZXRyaWV2YWxfZWxhcHNlZF9tcxgGIAEoBRIpCiFjb252ZXJzYXRpb25fcmV0cmlldmFsX2VsYXBzZWRfbXMYByABKAUSKQohY29udmVyc2F0aW9uX2luaXRpYWxfcmV0cmlldmFsX21zGAggASgFEicKH2NvbnZlcnNhdGlvbl9xdWVyeV9yZXdyaXRpbmdfbXMYCSABKAUSKgoiY29udmVyc2F0aW9uX2ZvbGxvd3VwX3JldHJpZXZhbF9tcxgKIAEoBRIbChNibG9iX25hbWVfbG9va3VwX21zGAsgASgFEiEKGWNvZGViYXNlX2NodW5rc19yZXRyaWV2ZWQYDCABKAUSIwobY29udmVyc2F0aW9uX2NodW5rc19pbml0aWFsGA0gASgFEiYKHmNvbnZlcnNhdGlvbl9xdWVyaWVzX2dlbmVyYXRlZBgOIAEoBRIkChxjb252ZXJzYXRpb25fY2h1bmtzX2ZvbGxvd3VwGA8gASgFEiQKHGNvbnZlcnNhdGlvbl9jaHVua3NfY29tYmluZWQYECABKAUSKAogY29udmVyc2F0aW9uX2NodW5rc19hZnRlcl9yZXJhbmsYESABKAUSKgoiY29kZWJhc2VfcmVzdWx0X2xlbl9wcmVfdHJ1bmNhdGlvbhgSIAEoBRIbChNjb2RlYmFzZV9yZXN1bHRfbGVuGBMgASgFEi4KJmNvbnZlcnNhdGlvbl9yZXN1bHRfbGVuX3ByZV90cnVuY2F0aW9uGBQgASgFEh8KF2NvbnZlcnNhdGlvbl9yZXN1bHRfbGVuGBUgASgFEhsKE2NvbWJpbmVkX3Jlc3VsdF9sZW4YFiABKAUSFAoMdG90YWxfYnVkZ2V0GBcgASgFEhcKD2NvZGViYXNlX2J1ZGdldBgYIAEoBRIbChNjb252ZXJzYXRpb25fYnVkZ2V0GBkgASgFEhoKEmNvZGViYXNlX3RydW5jYXRlZBgaIAEoCBIeChZjb252ZXJzYXRpb25fdHJ1bmNhdGVkGBsgASgIEhcKD2ZpbmFsX3RydW5jYXRlZBgcIAEoCBIUCgxpc19zdWJfYWdlbnQYHSABKAgiqQEKF1Jldmlld0JvdEFnZW50Q29tcGxldGVkEhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCRISCgpyZXBvX293bmVyGAIgASgJEhEKCXJlcG9fbmFtZRgDIAEoCRIRCglwcl9udW1iZXIYBCABKA0SDwoHb3V0Y29tZRgFIAEoCRIPCgdhdHRlbXB0GAYgASgFEhkKEXJldmlld19yZXF1ZXN0X2lkGAcgASgJIrECChZSZXZpZXdCb3RBdXRvbWF0ZWRFdmFsEhQKDHJlcG9fbm9kZV9pZBgBIAEoCRIRCglwcl9udW1iZXIYAiABKA0SFwoPcmVtb3RlX2FnZW50X2lkGAMgASgJEhEKCWFkZHJlc3NlZBgEIAEoCBISCgpjb21tZW50X2lkGAUgASgJEhgKEHByaW1hcnlfY2F0ZWdvcnkYBiABKAkSEwoLc3ViY2F0ZWdvcnkYByABKAkSGwoTYXVnbWVudF9ib3RfY29tbWVudBgIIAEoCBIdChVjdXN0b21fZ3VpZGVsaW5lX2FyZWEYCSABKAkSGwoTY3VzdG9tX2d1aWRlbGluZV9pZBgKIAEoCRIXCgphY3Rpb25hYmxlGAsgASgISACIAQFCDQoLX2FjdGlvbmFibGUibwoWUmV2aWV3Qm90RW1vamlSZWFjdGlvbhIUCgxyZXBvX25vZGVfaWQYASABKAkSEQoJcHJfbnVtYmVyGAIgASgNEh0KFWNvbW1lbnRfZGlzY3Vzc2lvbl9pZBgDIAEoDRINCgVlbW9qaRgEIAEoCSJ7ChZSZXZpZXdCb3RQb3N0ZWRDb21tZW50EhEKCXJldmlld19pZBgBIAEoCRISCgpjb21tZW50X2lkGAIgASgJEhEKCXByX251bWJlchgDIAEoDRIQCghzZXZlcml0eRgEIAEoCRIVCg1mcF9saWtlbGlob29kGAUgASgCIkAKFVJldmlld0JvdFBvc3RlZFJldmlldxIUCgxudW1fY29tbWVudHMYASABKA0SEQoJcmV2aWV3X2lkGAIgASgJIo8JChxSZXZpZXdCb3RQdWxsUmVxdWVzdFJldmlld2VkEhQKDHJlcG9fbm9kZV9pZBgBIAEoCRIRCglwcl9udW1iZXIYAiABKA0SDwoHdHJpZ2dlchgDIAEoCRIXCg9yZW1vdGVfYWdlbnRfaWQYBCABKAkSEgoKcmVwb19vd25lchgFIAEoCRIRCglyZXBvX25hbWUYBiABKAkSGwoTYXV0aG9yX2dpdGh1Yl9sb2dpbhgHIAEoCRIbChNhdXRob3JfZ2l0aHViX2VtYWlsGAggASgJEh0KFWF1dGhvcl9naXRodWJfbm9kZV9pZBgJIAEoCRIoChtjb21tZW50X2F1dGhvcl9naXRodWJfbG9naW4YCiABKAlIAIgBARIoChtjb21tZW50X2F1dGhvcl9naXRodWJfZW1haWwYCyABKAlIAYgBARIqCh1jb21tZW50X2F1dGhvcl9naXRodWJfbm9kZV9pZBgMIAEoCUgCiAEBEhgKC2xpbmVzX2FkZGVkGA0gASgNSAOIAQESGgoNbGluZXNfcmVtb3ZlZBgOIAEoDUgEiAEBEhIKCm1vZGVsX25hbWUYDyABKAkSHQoQZXN0aW1hdGVkX3Rva2VucxgQIAEoDUgFiAEBEhgKEHVzZWRfbGFyZ2VfbW9kZWwYESABKAgSHgoRZGlmZl9wYXRjaF9sZW5ndGgYEiABKANIBogBARIlChhjdXN0b21fZ3VpZGVsaW5lc19sZW5ndGgYEyABKANIB4gBARIjChZ3b3Jrc3BhY2VfcnVsZXNfbGVuZ3RoGBQgASgDSAiIAQESJAoXd29ya3NwYWNlX3J1bGVzX2VuYWJsZWQYFSABKAhICYgBARIeChFydWxlX2ZpbGVzX2xvYWRlZBgWIAEoBUgKiAEBEiUKGGV4aXN0aW5nX2NvbW1lbnRzX2xlbmd0aBgXIAEoA0gLiAEBEhsKDnByX2JvZHlfbGVuZ3RoGBggASgDSAyIAQESIAoTY2hhbmdlZF9maWxlc19jb3VudBgZIAEoBUgNiAEBEhQKB291dGNvbWUYGiABKAlIDogBAUIeChxfY29tbWVudF9hdXRob3JfZ2l0aHViX2xvZ2luQh4KHF9jb21tZW50X2F1dGhvcl9naXRodWJfZW1haWxCIAoeX2NvbW1lbnRfYXV0aG9yX2dpdGh1Yl9ub2RlX2lkQg4KDF9saW5lc19hZGRlZEIQCg5fbGluZXNfcmVtb3ZlZEITChFfZXN0aW1hdGVkX3Rva2Vuc0IUChJfZGlmZl9wYXRjaF9sZW5ndGhCGwoZX2N1c3RvbV9ndWlkZWxpbmVzX2xlbmd0aEIZChdfd29ya3NwYWNlX3J1bGVzX2xlbmd0aEIaChhfd29ya3NwYWNlX3J1bGVzX2VuYWJsZWRCFAoSX3J1bGVfZmlsZXNfbG9hZGVkQhsKGV9leGlzdGluZ19jb21tZW50c19sZW5ndGhCEQoPX3ByX2JvZHlfbGVuZ3RoQhYKFF9jaGFuZ2VkX2ZpbGVzX2NvdW50QgoKCF9vdXRjb21lIpoBChdSZXZpZXdCb3RSZXBvc0Nvbm5lY3RlZBITCgt0b3RhbF9jb3VudBgBIAEoDRIlCh1hdXRvX3Jldmlld19vbl9wcl9yZWFkeV9jb3VudBgCIAEoDRIrCiNtYW51YWxfd2l0aF9jb21tZW50X2tleXBocmFzZV9jb3VudBgDIAEoDRIWCg5kaXNhYmxlZF9jb3VudBgEIAEoDSKeAgoOUm91dGVyUmVzcG9uc2USNAoNcHJvbXB0X3Rva2VucxgBIAEoCzIdLnJlcXVlc3RfaW5zaWdodC5Ub2tlbml6YXRpb24SOwoPcmVzcG9uc2VfdG9rZW5zGAIgASgLMh0ucmVxdWVzdF9pbnNpZ2h0LlRva2VuaXphdGlvbkgAiAEBEkMKD3BhcnNlZF9yZXNwb25zZRgDIAEoCzIlLnJlcXVlc3RfaW5zaWdodC5QYXJzZWRSb3V0ZXJSZXNwb25zZUgBiAEBEhoKDWVycm9yX21lc3NhZ2UYBCABKAlIAogBAUISChBfcmVzcG9uc2VfdG9rZW5zQhIKEF9wYXJzZWRfcmVzcG9uc2VCEAoOX2Vycm9yX21lc3NhZ2Ui0QEKEVJ1bGVzSW1wb3J0ZWREYXRhEjUKBHR5cGUYASABKA4yJy5yZXF1ZXN0X2luc2lnaHQuUnVsZXNJbXBvcnRlZERhdGEuVHlwZRIRCgludW1fZmlsZXMYAiABKA0SDgoGc291cmNlGAMgASgJImIKBFR5cGUSDwoLVU5TUEVDSUZJRUQQABIUChBNQU5VQUxMWV9DUkVBVEVEEAESCAoEQVVUTxACEhYKElNFTEVDVEVEX0RJUkVDVE9SWRADEhEKDVNFTEVDVEVEX0ZJTEUQBCKsAQoSU1NISW50ZXJhY3Rpb25EYXRhEk0KEGludGVyYWN0aW9uX3R5cGUYASABKA4yMy5yZXF1ZXN0X2luc2lnaHQuU1NISW50ZXJhY3Rpb25EYXRhLkludGVyYWN0aW9uVHlwZSJHCg9JbnRlcmFjdGlvblR5cGUSCwoHVU5LTk9XThAAEgsKB0NMSUNLRUQQARIaChZSRU1PVEVfU0VTU0lPTl9TVEFSVEVEEAIiTwoWU2NyaXB0Q2FwdHVyZUJhc2ljRGF0YRISCgpzaGVsbF9uYW1lGAEgASgJEhAKCHBsYXRmb3JtGAIgASgJEg8KB21lc3NhZ2UYAyABKAki/w4KDFNlc3Npb25FdmVudBJLChhvbmJvYXJkaW5nX3Nlc3Npb25fZXZlbnQYBCABKAsyJy5yZXF1ZXN0X2luc2lnaHQuT25ib2FyZGluZ1Nlc3Npb25FdmVudEgAEjYKDWNsaWVudF9tZXRyaWMYBSABKAsyHS5yZXF1ZXN0X2luc2lnaHQuQ2xpZW50TWV0cmljSAASSQoXZXh0ZW5zaW9uX3Nlc3Npb25fZXZlbnQYCiABKAsyJi5yZXF1ZXN0X2luc2lnaHQuRXh0ZW5zaW9uU2Vzc2lvbkV2ZW50SAASTAoZY3VzdG9tZXJfdWlfc2Vzc2lvbl9ldmVudBgLIAEoCzInLnJlcXVlc3RfaW5zaWdodC5DdXN0b21lclVJU2Vzc2lvbkV2ZW50SAASQQoTYWdlbnRfc2Vzc2lvbl9ldmVudBgMIAEoCzIiLnJlcXVlc3RfaW5zaWdodC5BZ2VudFNlc3Npb25FdmVudEgAElIKHGNvbnRlbnRfbWFuYWdlcl91cGxvYWRfYmxvYnMYDSABKAsyKi5yZXF1ZXN0X2luc2lnaHQuQ29udGVudE1hbmFnZXJVcGxvYWRCbG9ic0gAEloKIGNvbnRlbnRfbWFuYWdlcl9jaGVja3BvaW50X2Jsb2JzGA4gASgLMi4ucmVxdWVzdF9pbnNpZ2h0LkNvbnRlbnRNYW5hZ2VyQ2hlY2twb2ludEJsb2JzSAASTgoacmVtb3RlX2FnZW50X3Nlc3Npb25fZXZlbnQYDyABKAsyKC5yZXF1ZXN0X2luc2lnaHQuUmVtb3RlQWdlbnRTZXNzaW9uRXZlbnRIABI8ChBwdXJjaGFzZV9jcmVkaXRzGBAgASgLMiAucmVxdWVzdF9pbnNpZ2h0LlB1cmNoYXNlQ3JlZGl0c0gAEkIKE2NhbmNlbF9zdWJzY3JpcHRpb24YESABKAsyIy5yZXF1ZXN0X2luc2lnaHQuQ2FuY2VsU3Vic2NyaXB0aW9uSAAScgosdW5zY2hlZHVsZV9wZW5kaW5nX3N1YnNjcmlwdGlvbl9jYW5jZWxsYXRpb24YEiABKAsyOi5yZXF1ZXN0X2luc2lnaHQuVW5zY2hlZHVsZVBlbmRpbmdTdWJzY3JpcHRpb25DYW5jZWxsYXRpb25IABI7ChByZW1vdGVfYWdlbnRfbG9nGBMgASgLMh8ucmVxdWVzdF9pbnNpZ2h0LlJlbW90ZUFnZW50TG9nSAASSQoXdW5zY2hlZHVsZV9wbGFuX2NoYW5nZXMYFSABKAsyJi5yZXF1ZXN0X2luc2lnaHQuVW5zY2hlZHVsZVBsYW5DaGFuZ2VzSAASRQoVZ2l0aHViX3VzZXJfYXV0aG9yaXplGBYgASgLMiQucmVxdWVzdF9pbnNpZ2h0LkdpdGh1YlVzZXJBdXRob3JpemVIABJUCh1yZW1vdGVfYWdlbnRfd29ya3NwYWNlX3VwdGltZRgXIAEoCzIrLnJlcXVlc3RfaW5zaWdodC5SZW1vdGVBZ2VudFdvcmtzcGFjZVVwdGltZUgAEkgKF3VzZXJfZ2l0aHViX29yZ19tYXBwaW5nGBggASgLMiUucmVxdWVzdF9pbnNpZ2h0LlVzZXJHaXRodWJPcmdNYXBwaW5nSAASQAoTYXV0b190b3BfdXBfc2V0dGluZxgZIAEoCzIhLnJlcXVlc3RfaW5zaWdodC5BdXRvVG9wVXBTZXR0aW5nSAASQwoUY29tbWl0X3Nlc3Npb25fZXZlbnQYGiABKAsyIy5yZXF1ZXN0X2luc2lnaHQuQ29tbWl0U2Vzc2lvbkV2ZW50SAASTwoaY29tbWl0X2F0dHJpYnV0aW9uX3N1bW1hcnkYGyABKAsyKS5yZXF1ZXN0X2luc2lnaHQuQ29tbWl0QXR0cmlidXRpb25TdW1tYXJ5SAASQAoSY2xvc2Vfc3Vic2NyaXB0aW9uGBwgASgLMiIucmVxdWVzdF9pbnNpZ2h0LkNsb3NlU3Vic2NyaXB0aW9uSAASMwoJdGV4dF9lZGl0GAYgASgLMh4ucmVxdWVzdF9pbnNpZ2h0LlRleHRFZGl0RXZlbnRIABJXChxjb21wbGV0aW9uX3JlcXVlc3RfaWRfaXNzdWVkGAcgASgLMi8ucmVxdWVzdF9pbnNpZ2h0LkNvbXBsZXRpb25SZXF1ZXN0SWRJc3N1ZWRFdmVudEgAEksKFmVkaXRfcmVxdWVzdF9pZF9pc3N1ZWQYCCABKAsyKS5yZXF1ZXN0X2luc2lnaHQuRWRpdFJlcXVlc3RJZElzc3VlZEV2ZW50SAASKAoEdGltZRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASFQoIZXZlbnRfaWQYAyABKAlIAYgBAUIHCgVldmVudEILCglfZXZlbnRfaWRKBAgCEANKBAgJEApKBAgUEBVSF25leHRfZWRpdF9zZXNzaW9uX2V2ZW50UhtuZXh0X2VkaXRfcmVxdWVzdF9pZF9pc3N1ZWRSFWZlYXR1cmVfdmVjdG9yX3JlcG9ydCIRCg9TZXR1cFBhZ2VPcGVuZWQibwoWU2tpbGxDb250ZW50TG9hZGVkRGF0YRISCgpza2lsbF9uYW1lGAEgASgJEhQKDHNraWxsX3NvdXJjZRgCIAEoCRIWCg5jb250ZW50X2xlbmd0aBgDIAEoDRITCgtzb3VyY2VfdG9vbBgEIAEoCSI1CglTa2lsbEluZm8SEgoKc2tpbGxfbmFtZRgBIAEoCRIUCgxza2lsbF9zb3VyY2UYAiABKAkiWwoYU2tpbGxzSW5jbHVkZWRJbkNoYXREYXRhEioKBnNraWxscxgBIAMoCzIaLnJlcXVlc3RfaW5zaWdodC5Ta2lsbEluZm8SEwoLc2tpbGxfY291bnQYAiABKA0ijQEKEFNsYWNrYm90RmVlZGJhY2sSIAoYc2xhY2tfcmVzcG9uc2VfdGltZXN0YW1wGAEgASgJEhgKEHNsYWNrX2NoYW5uZWxfaWQYAiABKAkSLwoGcmF0aW5nGAMgASgOMh8ucmVxdWVzdF9pbnNpZ2h0LkZlZWRiYWNrUmF0aW5nEgwKBG5vdGUYBCABKAkivAEKGFNtYXJ0UGFzdGVDbGllbnRUaW1lbGluZRI4ChRpbml0aWFsX3JlcXVlc3RfdGltZRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASNgoSc3RyZWFtX2ZpbmlzaF90aW1lGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgphcHBseV90aW1lGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJgChRTbWFydFBhc3RlUmVzb2x1dGlvbhIaChJpc19hY2NlcHRlZF9jaHVua3MYASADKAgSFQoNaXNfYWNjZXB0X2FsbBgCIAEoCBIVCg1pc19yZWplY3RfYWxsGAMgASgIIjAKDlN1YkFnZW50RGlhbG9nEh4KBmRpYWxvZxgDIAMoCzIOLmNoYXQuRXhjaGFuZ2UiqQQKEVRhc2tMaXN0VXNhZ2VEYXRhEkEKBmFjdGlvbhgBIAEoDjIxLnJlcXVlc3RfaW5zaWdodC5UYXNrTGlzdFVzYWdlRGF0YS5UYXNrTGlzdEFjdGlvbhIZChF0b3RhbF90YXNrc19jb3VudBgCIAEoDRJGCgx0cmlnZ2VyZWRfYnkYAyABKA4yMC5yZXF1ZXN0X2luc2lnaHQuVGFza0xpc3RVc2FnZURhdGEuQWN0aW9uVHJpZ2dlciKyAgoOVGFza0xpc3RBY3Rpb24SDwoLVU5TUEVDSUZJRUQQABIMCghBRERfVEFTSxABEg8KC0FERF9TVUJUQVNLEAISFgoSVVBEQVRFX1RBU0tfU1RBVFVTEAMSFAoQVVBEQVRFX1RBU0tfTkFNRRAEEhsKF1VQREFURV9UQVNLX0RFU0NSSVBUSU9OEAUSGAoUUkVPUkdBTklaRV9UQVNLX0xJU1QQBhIPCgtERUxFVEVfVEFTSxAHEhMKD1JVTl9TSU5HTEVfVEFTSxAIEhEKDVJVTl9BTExfVEFTS1MQCRISCg5WSUVXX1RBU0tfTElTVBAKEhQKEEVYUE9SVF9UQVNLX0xJU1QQCxIUChBJTVBPUlRfVEFTS19MSVNUEAwSEgoOU1lOQ19UQVNLX0xJU1QQDSI5Cg1BY3Rpb25UcmlnZ2VyEhMKD1VOS05PV05fVFJJR0dFUhAAEggKBFVTRVIQARIJCgVBR0VOVBACIr0DCg1UZXh0RWRpdEV2ZW50EjoKBnJlYXNvbhgBIAEoDjIlLnJlcXVlc3RfaW5zaWdodC5UZXh0RWRpdEV2ZW50LlJlYXNvbkgAiAEBEjcKD2NvbnRlbnRfY2hhbmdlcxgCIAMoCzIeLnJlcXVlc3RfaW5zaWdodC5Db250ZW50Q2hhbmdlEhYKCWZpbGVfcGF0aBgDIAEoCUgBiAEBEh8KEmFmdGVyX2NoYW5nZXNfaGFzaBgEIAEoCUgCiAEBEjAKEGhhc2hfY2hhcl9yYW5nZXMYBSADKAsyFi5yZXF1ZXN0X2luc2lnaHQuUmFuZ2USHwoSc291cmNlX2ZvbGRlcl9yb290GAYgASgJSAOIAQESHQoQYWZ0ZXJfZG9jX2xlbmd0aBgHIAEoDUgEiAEBIjAKBlJlYXNvbhISCg5VTktOT1dOX1JFQVNPThAAEggKBFVORE8QARIICgRSRURPEAJCCQoHX3JlYXNvbkIMCgpfZmlsZV9wYXRoQhUKE19hZnRlcl9jaGFuZ2VzX2hhc2hCFQoTX3NvdXJjZV9mb2xkZXJfcm9vdEITChFfYWZ0ZXJfZG9jX2xlbmd0aCJQCh1UaGlyZFBhcnR5TW9kZWxNZXNzYWdlSGlzdG9yeRIUCgx1c2VyX21lc3NhZ2UYASABKAkSGQoRYXNzaXN0YW50X21lc3NhZ2UYAiABKAkigQEKFlRoaXJkUGFydHlNb2RlbFJlcXVlc3QSDgoGcHJvbXB0GAEgASgJEhUKDXN5c3RlbV9wcm9tcHQYAiABKAkSQAoIbWVzc2FnZXMYAyADKAsyLi5yZXF1ZXN0X2luc2lnaHQuVGhpcmRQYXJ0eU1vZGVsTWVzc2FnZUhpc3RvcnkiwwEKElRva2VuRXhjaGFuZ2VFcnJvchI6CgZyZWFzb24YASABKA4yKi5yZXF1ZXN0X2luc2lnaHQuVG9rZW5FeGNoYW5nZUVycm9yLlJlYXNvbhItCg5vcGFxdWVfdXNlcl9pZBgCIAEoCzIVLmF1dGhfZW50aXRpZXMuVXNlcklkEhIKCnVzZXJfZW1haWwYAyABKAkiLgoGUmVhc29uEgsKB1VOS05PV04QABIXChNURU5BTlRfTk9UX0lOX1NIQVJEEAEiUwoMVG9rZW5pemF0aW9uEhEKCXRva2VuX2lkcxgBIAMoBRIPCgdvZmZzZXRzGAIgAygNEhEKCWxvZ19wcm9icxgDIAMoAhIMCgR0ZXh0GAQgASgJIscGCgtUb29sVXNlRGF0YRIRCgl0b29sX25hbWUYASABKAkSEwoLdG9vbF91c2VfaWQYAiABKAkSIQoUdG9vbF9vdXRwdXRfaXNfZXJyb3IYAyABKAhIAIgBARIcChR0b29sX3J1bl9kdXJhdGlvbl9tcxgEIAEoDRISCgp0b29sX2lucHV0GAUgASgJEhgKC2lzX21jcF90b29sGAYgASgISAGIAQESHAoPY29udmVyc2F0aW9uX2lkGAcgASgJSAKIAQESIAoTY2hhdF9oaXN0b3J5X2xlbmd0aBgIIAEoDUgDiAEBEhwKD3Rvb2xfcmVxdWVzdF9pZBgJIAEoCUgEiAEBEhwKD3Rvb2xfb3V0cHV0X2xlbhgKIAEoDUgFiAEBEhsKDnRvb2xfaW5wdXRfbGVuGAsgASgNSAaIAQESHQoQdG9vbF9saW5lc19hZGRlZBgMIAEoDUgHiAEBEh8KEnRvb2xfbGluZXNfZGVsZXRlZBgNIAEoDUgIiAEBEjgKDXRvb2xfdXNlX2RpZmYYDiABKAsyHC5yZXF1ZXN0X2luc2lnaHQuVG9vbFVzZURpZmZICYgBARIXCgptY3Bfc2VydmVyGA8gASgJSAqIAQESGgoNbWNwX3Rvb2xfbmFtZRgQIAEoCUgLiAEBEh0KEHRvb2xfZXJyb3JfY2xhc3MYESABKAlIDIgBARIfChJ0b29sX2Vycm9yX3NuaXBwZXQYEiABKAlIDYgBAUIXChVfdG9vbF9vdXRwdXRfaXNfZXJyb3JCDgoMX2lzX21jcF90b29sQhIKEF9jb252ZXJzYXRpb25faWRCFgoUX2NoYXRfaGlzdG9yeV9sZW5ndGhCEgoQX3Rvb2xfcmVxdWVzdF9pZEISChBfdG9vbF9vdXRwdXRfbGVuQhEKD190b29sX2lucHV0X2xlbkITChFfdG9vbF9saW5lc19hZGRlZEIVChNfdG9vbF9saW5lc19kZWxldGVkQhAKDl90b29sX3VzZV9kaWZmQg0KC19tY3Bfc2VydmVyQhAKDl9tY3BfdG9vbF9uYW1lQhMKEV90b29sX2Vycm9yX2NsYXNzQhUKE190b29sX2Vycm9yX3NuaXBwZXQiWwoLVG9vbFVzZURpZmYSEQoJcm9vdF9wYXRoGAEgASgJEgwKBHBhdGgYAiABKAkSKwoFZWRpdHMYAyADKAsyHC5yZXF1ZXN0X2luc2lnaHQuVG9vbFVzZUVkaXQiSgoLVG9vbFVzZUVkaXQSEwoLYmVmb3JlX3RleHQYASABKAkSEgoKYWZ0ZXJfdGV4dBgCIAEoCRISCgpsaW5lX3N0YXJ0GAMgASgNIkgKKVVuc2NoZWR1bGVQZW5kaW5nU3Vic2NyaXB0aW9uQ2FuY2VsbGF0aW9uEhsKE29yYl9zdWJzY3JpcHRpb25faWQYASABKAkiNAoVVW5zY2hlZHVsZVBsYW5DaGFuZ2VzEhsKE29yYl9zdWJzY3JpcHRpb25faWQYASABKAkihQIKFFVzZXJHaXRodWJPcmdNYXBwaW5nEgoKAmlkGAEgASgDEg0KBWxvZ2luGAIgASgJEgwKBG5hbWUYAyABKAkSDwoHY29tcGFueRgEIAEoCRIQCghsb2NhdGlvbhgFIAEoCRINCgVlbWFpbBgGIAEoCRIYChB0d2l0dGVyX3VzZXJuYW1lGAcgASgJEhMKC2Rlc2NyaXB0aW9uGAggASgJEhcKD2ZvbGxvd2Vyc19jb3VudBgJIAEoBRISCgpkaXNrX3VzYWdlGAogASgFEhEKCXBsYW5fbmFtZRgLIAEoCRIUCgxmaWxsZWRfc2VhdHMYDCABKAUSDQoFc2VhdHMYDSABKAUi5AIKD1ZvaWNlTW9kZWxJbnB1dBIzCgRraW5kGAEgASgOMiUucmVxdWVzdF9pbnNpZ2h0LlZvaWNlTW9kZWxJbnB1dC5LaW5kEhAKCHByb3ZpZGVyGAIgASgJEg0KBW1vZGVsGAMgASgJEhsKE3Byb3ZpZGVyX3Nlc3Npb25faWQYBCABKAkSEAoIYWdlbnRfaWQYBSABKAkSFAoMaW5zdHJ1Y3Rpb25zGAYgASgJEhQKDGhpc3RvcnlfanNvbhgHIAEoCRISCgpldmVudF9qc29uGAggASgJEhkKEXByb3ZpZGVyX2V2ZW50X2lkGAkgASgJEhIKCnNlbmRfb3JkZXIYCiABKAQSEgoKaW5wdXRfdHlwZRgLIAEoCSJJCgRLaW5kEhQKEEtJTkRfVU5TUEVDSUZJRUQQABITCg9JTklUSUFMX1NFU1NJT04QARIWChJEQVRBX0NIQU5ORUxfRVZFTlQQAio3Cg5GZWVkYmFja1JhdGluZxIJCgVVTlNFVBAAEgwKCFBPU0lUSVZFEAESDAoITkVHQVRJVkUQAipOChBJbnN0YWxsRXZlbnRUeXBlEh4KGlVOS05PV05fSU5TVEFMTF9FVkVOVF9UWVBFEAASDQoJVU5JTlNUQUxMEAESCwoHSU5TVEFMTBACKscFCgtSZXF1ZXN0VHlwZRIYChRVTktOT1dOX1JFUVVFU1RfVFlQRRAAEg4KCkNPTVBMRVRJT04QARIICgRFRElUEAISCAoEQ0hBVBADEhMKD0VYVEVOU0lPTl9FUlJPUhAEEhEKDVNMQUNLQk9UX0NIQVQQBhITCg9TSEFSRV9TQVZFX0NIQVQQBxISCg5TSEFSRV9HRVRfQ0hBVBAIEhEKDUFVVE9GSVhfQ0hFQ0sQCRIQCgxBVVRPRklYX1BMQU4QChIQCgxMTE1fR0VORVJBVEUQCxIUChBSRU1PVEVfVE9PTF9DQUxMEAwSEAoMUkVNT1RFX0FHRU5UEA0SDgoKQUdFTlRfQ0hBVBAOEhAKDExJTkVBUl9PQVVUSBAPEgwKCE1FTU9SSUVTEBASDwoLT1JJRU5UQVRJT04QERIYChRNRU1PUklFU19DT01QUkVTU0lPThASEhUKEVJFTU9URV9BR0VOVF9DSEFUEBMSFAoQUkVNT1RFX0FHRU5UX0xPRxAUEhIKDkNMSV9BR0VOVF9DSEFUEBUSEwoPVE9LRU5fRlJPTV9DT0RFEBYSIQodQ0xJX0FHRU5UX0NIQVRfTk9OSU5URVJBQ1RJVkUQFxIZChVDSEFUX0lOUFVUX0NPTVBMRVRJT04QGBIPCgtDT0RFX1JFVklFVxAZEh8KG1JFTU9URV9NQ1BfU0VSVkVSX1RPT0xfQ0FMTBAaEh8KG0RZTkFNSUNfQ0xJRU5UX1JFR0lTVFJBVElPThAbEhUKEUFHRU5USUNfU0xBQ0tfQk9UEBwSGwoXQ09OVEVYVF9FTkdJTkVfU0RLX0NIQVQQHRIbChdDT05URVhUX0VOR0lORV9NQ1BfQ0hBVBAeEhsKF1BPU0VJRE9OX0NMSV9BR0VOVF9DSEFUEB8SCQoFVk9JQ0UQICIECAUQBSoJTkVYVF9FRElUKm0KDVJldHJpZXZhbFR5cGUSGgoWVU5LTk9XTl9SRVRSSUVWQUxfVFlQRRAAEgkKBURFTlNFEAESDQoJU0lHTkFUVVJFEAISCwoHUkVDRU5DWRADEg8KC1VTRVJfR1VJREVEEAQSCAoERElGRhAFKkQKEVNvdXJjZUNvbnRyb2xUeXBlEhoKFlVOS05PV05fU09VUkNFX0NPTlRST0wQABIHCgNHSVQQARIKCgZHSVRIVUIQAmIGcHJvdG8z",[X_,zIe,ha,GP,$En,zEn,Wy,qEn,WP,e_n,n_n,i_n,XIe,c_n,y_n,E_n]);(function(e){e[e.UNKNOWN_TOP_UP_ACTION=0]="UNKNOWN_TOP_UP_ACTION",e[e.ENABLED=1]="ENABLED",e[e.DISABLED=2]="DISABLED"})(S_n||(S_n={}));(function(e){e[e.CHAT=0]="CHAT",e[e.AGENT=1]="AGENT",e[e.MEMORIES=2]="MEMORIES",e[e.ORIENTATION=3]="ORIENTATION",e[e.MEMORIES_COMPRESSION=4]="MEMORIES_COMPRESSION",e[e.REMOTE_AGENT=5]="REMOTE_AGENT",e[e.CLI_AGENT=6]="CLI_AGENT",e[e.CLI_NONINTERACTIVE=7]="CLI_NONINTERACTIVE",e[e.CODE_REVIEW=8]="CODE_REVIEW",e[e.AGENTIC_SLACK_BOT=9]="AGENTIC_SLACK_BOT",e[e.CONTEXT_ENGINE_SDK=10]="CONTEXT_ENGINE_SDK",e[e.CONTEXT_ENGINE_MCP=11]="CONTEXT_ENGINE_MCP",e[e.POSEIDON_CLI_AGENT=12]="POSEIDON_CLI_AGENT"})(v_n||(v_n={}));(function(e){e[e.UNKNOWN_FILTER_REASON=0]="UNKNOWN_FILTER_REASON",e[e.NOT_FILTERED=1]="NOT_FILTERED",e[e.LOW_QUALITY=2]="LOW_QUALITY",e[e.DENY_LIST=3]="DENY_LIST"})(x_n||(x_n={}));(function(e){e[e.UNKNOWN_SESSION_END_REASON=0]="UNKNOWN_SESSION_END_REASON",e[e.LOGOUT=1]="LOGOUT",e[e.TIMEOUT=2]="TIMEOUT"})(C_n||(C_n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.ONBOARDING=1]="ONBOARDING",e[e.COMMAND=2]="COMMAND"})(T_n||(T_n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.USER_GUIDELINES=1]="USER_GUIDELINES",e[e.AUGMENT_GUIDELINES=2]="AUGMENT_GUIDELINES",e[e.RULES=3]="RULES"})(I_n||(I_n={}));(function(e){e[e.UNKNOWN_MODE=0]="UNKNOWN_MODE",e[e.CHAT=1]="CHAT",e[e.AGENT=2]="AGENT",e[e.REMOTE_AGENT=3]="REMOTE_AGENT"})(w_n||(w_n={}));(function(e){e[e.UNKNOWN_MODE_SELECTOR_ACTION=0]="UNKNOWN_MODE_SELECTOR_ACTION",e[e.OPEN=1]="OPEN",e[e.CLOSE=2]="CLOSE",e[e.SELECT=3]="SELECT",e[e.INIT=4]="INIT"})(R_n||(R_n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.ACTIVATED=1]="ACTIVATED",e[e.DEACTIVATED=2]="DEACTIVATED",e[e.NOTIFIED=4]="NOTIFIED",e[e.ACCEPTED=3]="ACCEPTED"})(N_n||(N_n={}));(function(e){e[e.UNKNOWN_CHANNEL_TYPE=0]="UNKNOWN_CHANNEL_TYPE",e[e.IM=1]="IM",e[e.MPIM=2]="MPIM",e[e.SHARED_CHANNEL=3]="SHARED_CHANNEL",e[e.PRIVATE_CHANNEL=4]="PRIVATE_CHANNEL",e[e.GENERAL_CHANNEL=5]="GENERAL_CHANNEL",e[e.CHANNEL=6]="CHANNEL"})(k_n||(k_n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.CLASSIFY_AND_DISTILL=1]="CLASSIFY_AND_DISTILL",e[e.ORIENTATION=2]="ORIENTATION",e[e.MEMORY_ACCEPTANCE=3]="MEMORY_ACCEPTANCE"})(O_n||(O_n={}));(function(e){e[e.UNKNOWN_LATENCY_TYPE=0]="UNKNOWN_LATENCY_TYPE",e[e.CREATE_AGENT=1]="CREATE_AGENT",e[e.RESUME_AGENT=2]="RESUME_AGENT"})(M_n||(M_n={}));(function(e){e[e.UNKNOWN_NEW_THREAD_BUTTON_ACTION=0]="UNKNOWN_NEW_THREAD_BUTTON_ACTION",e[e.CLICK=1]="CLICK",e[e.OPEN=2]="OPEN",e[e.CLOSE=3]="CLOSE"})(P_n||(P_n={}));(function(e){e[e.UNKNOWN_THREAD_TYPE=0]="UNKNOWN_THREAD_TYPE",e[e.CHAT=1]="CHAT",e[e.AGENT=2]="AGENT",e[e.REMOTE_AGENT=3]="REMOTE_AGENT"})(D_n||(D_n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.COMPLETED=1]="COMPLETED",e[e.FAILED=2]="FAILED"})(B_n||(B_n={}));(function(e){e[e.UNKNOWN_SETUP_WINDOW_ACTION=0]="UNKNOWN_SETUP_WINDOW_ACTION",e[e.OPEN=1]="OPEN",e[e.CLOSE=2]="CLOSE",e[e.SELECT_REPO=3]="SELECT_REPO",e[e.SELECT_BRANCH=4]="SELECT_BRANCH",e[e.SELECT_SETUP_SCRIPT=5]="SELECT_SETUP_SCRIPT",e[e.AUTO_GENERATE_SETUP_SCRIPT=6]="AUTO_GENERATE_SETUP_SCRIPT",e[e.MANUALLY_CREATE_SETUP_SCRIPT=7]="MANUALLY_CREATE_SETUP_SCRIPT",e[e.TYPE_IN_PROMPT_WINDOW=8]="TYPE_IN_PROMPT_WINDOW",e[e.CLICK_REWRITE_PROMPT=9]="CLICK_REWRITE_PROMPT",e[e.ENABLE_NOTIFICATIONS=10]="ENABLE_NOTIFICATIONS",e[e.DISABLE_NOTIFICATIONS=11]="DISABLE_NOTIFICATIONS",e[e.CLICK_CREATE_AGENT=12]="CLICK_CREATE_AGENT"})(L_n||(L_n={}));(function(e){e[e.UNKNOWN_AGENT_LIST_ACTION=0]="UNKNOWN_AGENT_LIST_ACTION",e[e.OPEN=1]="OPEN",e[e.CLOSE=2]="CLOSE",e[e.SELECT_AGENT=3]="SELECT_AGENT",e[e.DELETE_AGENT=4]="DELETE_AGENT",e[e.PIN_AGENT=5]="PIN_AGENT",e[e.UNPIN_AGENT=6]="UNPIN_AGENT"})(F_n||(F_n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.MANUALLY_CREATED=1]="MANUALLY_CREATED",e[e.AUTO=2]="AUTO",e[e.SELECTED_DIRECTORY=3]="SELECTED_DIRECTORY",e[e.SELECTED_FILE=4]="SELECTED_FILE"})(U_n||(U_n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.CLICKED=1]="CLICKED",e[e.REMOTE_SESSION_STARTED=2]="REMOTE_SESSION_STARTED"})(V_n||(V_n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.ADD_TASK=1]="ADD_TASK",e[e.ADD_SUBTASK=2]="ADD_SUBTASK",e[e.UPDATE_TASK_STATUS=3]="UPDATE_TASK_STATUS",e[e.UPDATE_TASK_NAME=4]="UPDATE_TASK_NAME",e[e.UPDATE_TASK_DESCRIPTION=5]="UPDATE_TASK_DESCRIPTION",e[e.REORGANIZE_TASK_LIST=6]="REORGANIZE_TASK_LIST",e[e.DELETE_TASK=7]="DELETE_TASK",e[e.RUN_SINGLE_TASK=8]="RUN_SINGLE_TASK",e[e.RUN_ALL_TASKS=9]="RUN_ALL_TASKS",e[e.VIEW_TASK_LIST=10]="VIEW_TASK_LIST",e[e.EXPORT_TASK_LIST=11]="EXPORT_TASK_LIST",e[e.IMPORT_TASK_LIST=12]="IMPORT_TASK_LIST",e[e.SYNC_TASK_LIST=13]="SYNC_TASK_LIST"})(G_n||(G_n={}));(function(e){e[e.UNKNOWN_TRIGGER=0]="UNKNOWN_TRIGGER",e[e.USER=1]="USER",e[e.AGENT=2]="AGENT"})(W_n||(W_n={}));(function(e){e[e.UNKNOWN_REASON=0]="UNKNOWN_REASON",e[e.UNDO=1]="UNDO",e[e.REDO=2]="REDO"})($_n||($_n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.TENANT_NOT_IN_SHARD=1]="TENANT_NOT_IN_SHARD"})(Q_n||(Q_n={}));(function(e){e[e.KIND_UNSPECIFIED=0]="KIND_UNSPECIFIED",e[e.INITIAL_SESSION=1]="INITIAL_SESSION",e[e.DATA_CHANNEL_EVENT=2]="DATA_CHANNEL_EVENT"})(Y_n||(Y_n={}));(function(e){e[e.UNSET=0]="UNSET",e[e.POSITIVE=1]="POSITIVE",e[e.NEGATIVE=2]="NEGATIVE"})(H_n||(H_n={}));(function(e){e[e.UNKNOWN_INSTALL_EVENT_TYPE=0]="UNKNOWN_INSTALL_EVENT_TYPE",e[e.UNINSTALL=1]="UNINSTALL",e[e.INSTALL=2]="INSTALL"})(Z_n||(Z_n={}));(function(e){e[e.UNKNOWN_REQUEST_TYPE=0]="UNKNOWN_REQUEST_TYPE",e[e.COMPLETION=1]="COMPLETION",e[e.EDIT=2]="EDIT",e[e.CHAT=3]="CHAT",e[e.EXTENSION_ERROR=4]="EXTENSION_ERROR",e[e.SLACKBOT_CHAT=6]="SLACKBOT_CHAT",e[e.SHARE_SAVE_CHAT=7]="SHARE_SAVE_CHAT",e[e.SHARE_GET_CHAT=8]="SHARE_GET_CHAT",e[e.AUTOFIX_CHECK=9]="AUTOFIX_CHECK",e[e.AUTOFIX_PLAN=10]="AUTOFIX_PLAN",e[e.LLM_GENERATE=11]="LLM_GENERATE",e[e.REMOTE_TOOL_CALL=12]="REMOTE_TOOL_CALL",e[e.REMOTE_AGENT=13]="REMOTE_AGENT",e[e.AGENT_CHAT=14]="AGENT_CHAT",e[e.LINEAR_OAUTH=15]="LINEAR_OAUTH",e[e.MEMORIES=16]="MEMORIES",e[e.ORIENTATION=17]="ORIENTATION",e[e.MEMORIES_COMPRESSION=18]="MEMORIES_COMPRESSION",e[e.REMOTE_AGENT_CHAT=19]="REMOTE_AGENT_CHAT",e[e.REMOTE_AGENT_LOG=20]="REMOTE_AGENT_LOG",e[e.CLI_AGENT_CHAT=21]="CLI_AGENT_CHAT",e[e.TOKEN_FROM_CODE=22]="TOKEN_FROM_CODE",e[e.CLI_AGENT_CHAT_NONINTERACTIVE=23]="CLI_AGENT_CHAT_NONINTERACTIVE",e[e.CHAT_INPUT_COMPLETION=24]="CHAT_INPUT_COMPLETION",e[e.CODE_REVIEW=25]="CODE_REVIEW",e[e.REMOTE_MCP_SERVER_TOOL_CALL=26]="REMOTE_MCP_SERVER_TOOL_CALL",e[e.DYNAMIC_CLIENT_REGISTRATION=27]="DYNAMIC_CLIENT_REGISTRATION",e[e.AGENTIC_SLACK_BOT=28]="AGENTIC_SLACK_BOT",e[e.CONTEXT_ENGINE_SDK_CHAT=29]="CONTEXT_ENGINE_SDK_CHAT",e[e.CONTEXT_ENGINE_MCP_CHAT=30]="CONTEXT_ENGINE_MCP_CHAT",e[e.POSEIDON_CLI_AGENT_CHAT=31]="POSEIDON_CLI_AGENT_CHAT",e[e.VOICE=32]="VOICE"})(j_n||(j_n={}));(function(e){e[e.UNKNOWN_RETRIEVAL_TYPE=0]="UNKNOWN_RETRIEVAL_TYPE",e[e.DENSE=1]="DENSE",e[e.SIGNATURE=2]="SIGNATURE",e[e.RECENCY=3]="RECENCY",e[e.USER_GUIDED=4]="USER_GUIDED",e[e.DIFF=5]="DIFF"})(z_n||(z_n={}));(function(e){e[e.UNKNOWN_SOURCE_CONTROL=0]="UNKNOWN_SOURCE_CONTROL",e[e.GIT=1]="GIT",e[e.GITHUB=2]="GITHUB"})(X_n||(X_n={}))});var J_n,eSn=C(()=>{"use strict";Ml();Au();J_n=Zr("CjdzZXJ2aWNlcy9saWIvZ3JwYy9jb25uZWN0X2ZvcndhcmQvZm9yd2FyZF9vcHRpb25zLnByb3RvEg9mb3J3YXJkX29wdGlvbnMiRAoXUmVxdWlyZWRGZWF0dXJlRmxhZ0Jvb2wSEQoJZmxhZ19uYW1lGAEgASgJEhYKDmV4cGVjdGVkX3ZhbHVlGAIgASgIIkYKGVJlcXVpcmVkRmVhdHVyZUZsYWdTdHJpbmcSEQoJZmxhZ19uYW1lGAEgASgJEhYKDmV4cGVjdGVkX3ZhbHVlGAIgASgJOlAKE2ZvcndhcmRfbWV0aG9kX25hbWUSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxjThgMgASgJUhFmb3J3YXJkTWV0aG9kTmFtZTphChxza2lwX3RlbmFudF91c2VyX2VuZm9yY2VtZW50Eh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMY1IYDIAEoCFIZc2tpcFRlbmFudFVzZXJFbmZvcmNlbWVudDpZChhza2lwX3VzZXJfaWRfZW5mb3JjZW1lbnQSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxjVhgMgASgIUhVza2lwVXNlcklkRW5mb3JjZW1lbnQ6SQoPZW50ZXJwcmlzZV9vbmx5Eh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMY1oYDIAEoCFIOZW50ZXJwcmlzZU9ubHk6hwEKGnJlcXVpcmVkX2ZlYXR1cmVfZmxhZ19ib29sEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMY14YDIAMoCzIoLmZvcndhcmRfb3B0aW9ucy5SZXF1aXJlZEZlYXR1cmVGbGFnQm9vbFIXcmVxdWlyZWRGZWF0dXJlRmxhZ0Jvb2w6jQEKHHJlcXVpcmVkX2ZlYXR1cmVfZmxhZ19zdHJpbmcSHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxjYhgMgAygLMiouZm9yd2FyZF9vcHRpb25zLlJlcXVpcmVkRmVhdHVyZUZsYWdTdHJpbmdSGXJlcXVpcmVkRmVhdHVyZUZsYWdTdHJpbmc6QwoMc2tpcF9jb2RlZ2VuEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMY2YYDIAEoCFILc2tpcENvZGVnZW46PwoKYWRtaW5fb25seRIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zGNqGAyABKAhSCWFkbWluT25seTpRChNyZXF1aXJlZF9wZXJtaXNzaW9uEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMY24YDIAMoCVIScmVxdWlyZWRQZXJtaXNzaW9uYgZwcm90bzM",[PN])});var KIe,tSn,nSn,rSn,iSn,sSn,oSn,aSn,lSn,cSn,uSn,dSn,pSn,mSn,fSn,qct=C(()=>{"use strict";Ml();Au();eSn();KIe=Zr("CihzZXJ2aWNlcy93ZWJfcnBjX3Byb3h5L2ZsZWV0X3Byb3h5LnByb3RvEg13ZWJfcnBjX3Byb3h5IiYKFEZsZWV0U3RyaW5nTGlzdFZhbHVlEg4KBnZhbHVlcxgBIAMoCSLxAQoXRmxlZXRDb25maWd1cmF0aW9uVmFsdWUSCwoDa2V5GAEgASgJEhQKCnRleHRfdmFsdWUYAiABKAlIABJAChFzdHJpbmdfbGlzdF92YWx1ZRgDIAEoCzIjLndlYl9ycGNfcHJveHkuRmxlZXRTdHJpbmdMaXN0VmFsdWVIABIYCg5lbnZpcm9ubWVudF9pZBgEIAEoCUgAEhoKEHNlY3JldF9yZWZlcmVuY2UYBSABKAlIABIZCg9pbnRlZ3JhdGlvbl9rZXkYBiABKAlIABIXCg1ib29sZWFuX3ZhbHVlGAcgASgISABCBwoFdmFsdWUilQIKFUFwcGx5RmxlZXRGbG93UmVxdWVzdBIQCghzcGFjZV9pZBgBIAEoCRIQCghmbG93X2tleRgCIAEoCRITCgt2YXJpYW50X2tleRgDIAEoCRIXCg9jYXRhbG9nX3ZlcnNpb24YBCABKAUSPQoNY29uZmlndXJhdGlvbhgFIAMoCzImLndlYl9ycGNfcHJveHkuRmxlZXRDb25maWd1cmF0aW9uVmFsdWUSFwoPaWRlbXBvdGVuY3lfa2V5GAYgASgJEjIKC3J1bl9hc19tb2RlGAcgASgOMh0ud2ViX3JwY19wcm94eS5GbGVldFJ1bkFzTW9kZRIeChZzZWxlY3RlZF9hY3Rvcl91c2VyX2lkGAggASgJIjsKFEZsZWV0SW5zdGFsbGVkRXhwZXJ0EhAKCHNsb3Rfa2V5GAEgASgJEhEKCWV4cGVydF9pZBgCIAEoCSLwAQoWQXBwbHlGbGVldEZsb3dSZXNwb25zZRIXCg9pbnN0YWxsYXRpb25faWQYASABKAkSLwoGc3RhdHVzGAIgASgOMh8ud2ViX3JwY19wcm94eS5GbGVldEFwcGx5U3RhdHVzEhEKCWV4cGVydF9pZBgDIAEoCRIZChFpZGVtcG90ZW50X3JlcGxheRgEIAEoCBI+ChFpbnN0YWxsZWRfZXhwZXJ0cxgFIAMoCzIjLndlYl9ycGNfcHJveHkuRmxlZXRJbnN0YWxsZWRFeHBlcnQSHgoWZGlzYWJsZWRfdHJpZ2dlcl9jb3VudBgGIAEoBSJBChNBcm1GbGVldEZsb3dSZXF1ZXN0EhcKD2luc3RhbGxhdGlvbl9pZBgBIAEoCRIRCgljb25maXJtZWQYAiABKAgidgoUQXJtRmxlZXRGbG93UmVzcG9uc2USFwoPaW5zdGFsbGF0aW9uX2lkGAEgASgJEg0KBWFybWVkGAIgASgIEhsKE2FybWVkX3RyaWdnZXJfY291bnQYAyABKAUSGQoRaWRlbXBvdGVudF9yZXBsYXkYBCABKAgiSAoaRGVhY3RpdmF0ZUZsZWV0Rmxvd1JlcXVlc3QSFwoPaW5zdGFsbGF0aW9uX2lkGAEgASgJEhEKCWNvbmZpcm1lZBgCIAEoCCJ0ChtEZWFjdGl2YXRlRmxlZXRGbG93UmVzcG9uc2USFwoPaW5zdGFsbGF0aW9uX2lkGAEgASgJEiEKGWRlYWN0aXZhdGVkX3RyaWdnZXJfY291bnQYAiABKAUSGQoRaWRlbXBvdGVudF9yZXBsYXkYAyABKAgiRwoZVW5pbnN0YWxsRmxlZXRGbG93UmVxdWVzdBIXCg9pbnN0YWxsYXRpb25faWQYASABKAkSEQoJY29uZmlybWVkGAIgASgIIvUBChpVbmluc3RhbGxGbGVldEZsb3dSZXNwb25zZRIXCg9pbnN0YWxsYXRpb25faWQYASABKAkSHAoUZGVsZXRlZF9leHBlcnRfY291bnQYAiABKAUSHgoWZGVsZXRlZF93b3JrZmxvd19jb3VudBgDIAEoBRIZChFpZGVtcG90ZW50X3JlcGxheRgEIAEoCBJLChNyZW1haW5pbmdfcmVzb3VyY2VzGAUgAygLMi4ud2ViX3JwY19wcm94eS5GbGVldFVuaW5zdGFsbFJlbWFpbmluZ1Jlc291cmNlEhgKEGNsZWFudXBfY29tcGxldGUYBiABKAgiTQofRmxlZXRVbmluc3RhbGxSZW1haW5pbmdSZXNvdXJjZRIVCg1yZXNvdXJjZV90eXBlGAEgASgJEhMKC3Jlc291cmNlX2lkGAIgASgJIvABChlDb25maWd1cmVGbGVldEZsb3dSZXF1ZXN0EhcKD2luc3RhbGxhdGlvbl9pZBgBIAEoCRI9Cg1jb25maWd1cmF0aW9uGAIgAygLMiYud2ViX3JwY19wcm94eS5GbGVldENvbmZpZ3VyYXRpb25WYWx1ZRIjChtleHBlY3RlZF9jb25maWd1cmF0aW9uX2hhc2gYBSABKAkSPwoJaW5zdGFuY2VzGAMgAygLMiwud2ViX3JwY19wcm94eS5GbGVldEluc3RhbGxhYmxlSW5zdGFuY2VJbnB1dBIVCg1oYXNfaW5zdGFuY2VzGAQgASgIIooBCh1GbGVldEluc3RhbGxhYmxlSW5zdGFuY2VJbnB1dBITCgtpbnN0YW5jZV9pZBgBIAEoCRIXCg9pbnN0YWxsYWJsZV9rZXkYAiABKAkSFAoMZGlzcGxheV9uYW1lGAMgASgJEg8KB2VuYWJsZWQYBCABKAgSFAoMZXh0cmFfcHJvbXB0GAUgASgJIvYBChpDb25maWd1cmVGbGVldEZsb3dSZXNwb25zZRIXCg9pbnN0YWxsYXRpb25faWQYASABKAkSQwoTY29uZmlndXJhdGlvbl9zdGF0ZRgCIAEoDjImLndlYl9ycGNfcHJveHkuRmxlZXRDb25maWd1cmF0aW9uU3RhdGUSIgoabWlzc2luZ19jb25maWd1cmF0aW9uX2tleXMYAyADKAkSOgoJaW5zdGFuY2VzGAQgAygLMicud2ViX3JwY19wcm94eS5GbGVldEluc3RhbGxhYmxlSW5zdGFuY2USGgoSY29uZmlndXJhdGlvbl9oYXNoGAUgASgJIkQKFlJlcGFpckZsZWV0Rmxvd1JlcXVlc3QSFwoPaW5zdGFsbGF0aW9uX2lkGAEgASgJEhEKCWNvbmZpcm1lZBgCIAEoCCJ4ChdSZXBhaXJGbGVldEZsb3dSZXNwb25zZRIXCg9pbnN0YWxsYXRpb25faWQYASABKAkSHQoVcmVzdG9yZWRfZXhwZXJ0X2NvdW50GAIgASgFEiUKHXJlc3RvcmVkX3dvcmtmbG93X2FjdG9yX2NvdW50GAMgASgFIlcKHEdldEZsZWV0Rmxvd0xpZmVjeWNsZVJlcXVlc3QSEAoIc3BhY2VfaWQYASABKAkSEAoIZmxvd19rZXkYAiABKAkSEwoLdmFyaWFudF9rZXkYAyABKAkitwEKEkZsZWV0TWFuYWdlZEV4cGVydBIQCghzbG90X2tleRgBIAEoCRIRCglleHBlcnRfaWQYAiABKAkSDwoHbWFuYWdlZBgDIAEoCBIVCg1hY3Rvcl91c2VyX2lkGAQgASgJEhgKEGFjdG9yX292ZXJyaWRkZW4YBSABKAgSDAoEbmFtZRgGIAEoCRITCgtpbnN0YW5jZV9pZBgHIAEoCRIXCg9pbnN0YWxsYWJsZV9rZXkYCCABKAkizAYKEkZsZWV0Rmxvd0xpZmVjeWNsZRIXCg9pbnN0YWxsYXRpb25faWQYASABKAkSEAoIZmxvd19rZXkYAiABKAkSEwoLdmFyaWFudF9rZXkYAyABKAkSLwoGc3RhdHVzGAQgASgOMh8ud2ViX3JwY19wcm94eS5GbGVldEFwcGx5U3RhdHVzEjIKB2V4cGVydHMYBSADKAsyIS53ZWJfcnBjX3Byb3h5LkZsZWV0TWFuYWdlZEV4cGVydBIeChZkaXNhYmxlZF90cmlnZ2VyX2NvdW50GAYgASgFEi4KCmNyZWF0ZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhkKEW1hbmFnZXJfZXhwZXJ0X2lkGAkgASgJEj8KFGFsbG93ZWRfbmV4dF9hY3Rpb25zGAsgAygOMiEud2ViX3JwY19wcm94eS5GbGVldEFsbG93ZWRBY3Rpb24SQwoTY29uZmlndXJhdGlvbl9zdGF0ZRgMIAEoDjImLndlYl9ycGNfcHJveHkuRmxlZXRDb25maWd1cmF0aW9uU3RhdGUSIgoabWlzc2luZ19jb25maWd1cmF0aW9uX2tleXMYDSADKAkSGAoQcmVwb3NpdG9yeV9zY29wZRgOIAMoCRIXCg90cmlnZ2Vyc19hY3RpdmUYDyABKAgSFQoNYWN0b3JfdXNlcl9pZBgQIAEoCRIyCgtydW5fYXNfbW9kZRgRIAEoDjIdLndlYl9ycGNfcHJveHkuRmxlZXRSdW5Bc01vZGUSGAoQYWN0b3Jfb3ZlcnJpZGRlbhgSIAEoCBIXCg9pZGVtcG90ZW5jeV9rZXkYEyABKAkSMwoLYWN0b3Jfc3RhdGUYFCABKA4yHi53ZWJfcnBjX3Byb3h5LkZsZWV0QWN0b3JTdGF0ZRI6CglpbnN0YW5jZXMYFSADKAsyJy53ZWJfcnBjX3Byb3h5LkZsZWV0SW5zdGFsbGFibGVJbnN0YW5jZRIqCiJ1bmV4cGVjdGVkbHlfZW5hYmxlZF90cmlnZ2VyX2NvdW50GBYgASgFIoUBChhGbGVldEluc3RhbGxhYmxlSW5zdGFuY2USEwoLaW5zdGFuY2VfaWQYASABKAkSFwoPaW5zdGFsbGFibGVfa2V5GAIgASgJEhQKDGRpc3BsYXlfbmFtZRgDIAEoCRIPCgdlbmFibGVkGAQgASgIEhQKDGV4dHJhX3Byb21wdBgFIAEoCSJZCh1HZXRGbGVldEZsb3dMaWZlY3ljbGVSZXNwb25zZRI4Cg1pbnN0YWxsYXRpb25zGAEgAygLMiEud2ViX3JwY19wcm94eS5GbGVldEZsb3dMaWZlY3ljbGUiMQodTGlzdEZsZWV0SW5zdGFsbGF0aW9uc1JlcXVlc3QSEAoIc3BhY2VfaWQYASABKAkiWgoeTGlzdEZsZWV0SW5zdGFsbGF0aW9uc1Jlc3BvbnNlEjgKDWluc3RhbGxhdGlvbnMYASADKAsyIS53ZWJfcnBjX3Byb3h5LkZsZWV0Rmxvd0xpZmVjeWNsZSI/CiRHZXRGbGVldENvbmZpZ3VyYXRpb25Eb2N1bWVudFJlcXVlc3QSFwoPaW5zdGFsbGF0aW9uX2lkGAEgASgJIscCCiVHZXRGbGVldENvbmZpZ3VyYXRpb25Eb2N1bWVudFJlc3BvbnNlEhcKD2luc3RhbGxhdGlvbl9pZBgBIAEoCRIXCg9jYXRhbG9nX3ZlcnNpb24YAiABKAUSEAoIZmxvd19rZXkYAyABKAkSEwoLdmFyaWFudF9rZXkYBCABKAkSPQoNY29uZmlndXJhdGlvbhgFIAMoCzImLndlYl9ycGNfcHJveHkuRmxlZXRDb25maWd1cmF0aW9uVmFsdWUSOgoJaW5zdGFuY2VzGAYgAygLMicud2ViX3JwY19wcm94eS5GbGVldEluc3RhbGxhYmxlSW5zdGFuY2USGgoSY29uZmlndXJhdGlvbl9oYXNoGAcgASgJEi4KCnVwZGF0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIioKFkdldEZsZWV0Q2F0YWxvZ1JlcXVlc3QSEAoIc3BhY2VfaWQYASABKAkizAEKF0dldEZsZWV0Q2F0YWxvZ1Jlc3BvbnNlEj0KDGF2YWlsYWJpbGl0eRgBIAEoDjInLndlYl9ycGNfcHJveHkuRmxlZXRDYXRhbG9nQXZhaWxhYmlsaXR5EhcKD2NhdGFsb2dfdmVyc2lvbhgCIAEoBRInCgVmbG93cxgDIAMoCzIYLndlYl9ycGNfcHJveHkuRmxlZXRGbG93EjAKCmNhdGVnb3JpZXMYBCADKAsyHC53ZWJfcnBjX3Byb3h5LkZsZWV0Q2F0ZWdvcnkiRgoQRmxlZXRSZXF1aXJlbWVudBILCgNrZXkYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSEAoIcmVxdWlyZWQYAyABKAgijgEKEUZsZWV0QXZhaWxhYmlsaXR5EjQKBXN0YXRlGAEgASgOMiUud2ViX3JwY19wcm94eS5GbGVldEF2YWlsYWJpbGl0eVN0YXRlEj0KFG1pc3NpbmdfcmVxdWlyZW1lbnRzGAMgAygLMh8ud2ViX3JwY19wcm94eS5GbGVldFJlcXVpcmVtZW50SgQIAhADIlYKDUZsZWV0Q29yZVNsb3QSCwoDa2V5GAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhAKCHJlcXVpcmVkGAMgASgIEhEKCWZ1bGZpbGxlZBgEIAEoCCLuAgoMRmxlZXRWYXJpYW50EgsKA2tleRgBIAEoCRIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEjYKDGF2YWlsYWJpbGl0eRgFIAEoCzIgLndlYl9ycGNfcHJveHkuRmxlZXRBdmFpbGFiaWxpdHkSMAoKY29yZV9zbG90cxgGIAMoCzIcLndlYl9ycGNfcHJveHkuRmxlZXRDb3JlU2xvdBI6Cg9hbGxvd2VkX2FjdGlvbnMYByADKA4yIS53ZWJfcnBjX3Byb3h5LkZsZWV0QWxsb3dlZEFjdGlvbhJDChNpbnN0YWxsYXRpb25fc3RhdHVzGAggASgOMiYud2ViX3JwY19wcm94eS5GbGVldEluc3RhbGxhdGlvblN0YXR1cxIUCgxleHBlcnRfbmFtZXMYCSADKAkSLQoEa2luZBgKIAEoDjIfLndlYl9ycGNfcHJveHkuRmxlZXRWYXJpYW50S2luZCJCChBGbGVldFNldHVwT3B0aW9uEgsKA2tleRgBIAEoCRIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJImEKE0ZsZWV0U2V0dXBDb25kaXRpb24SCwoDa2V5GAEgASgJEhgKDmJvb2xlYW5fZXF1YWxzGAIgASgISAASFwoNY2hvaWNlX2VxdWFscxgDIAEoCUgAQgoKCGV4cGVjdGVkIqQCCg9GbGVldFNldHVwSW5wdXQSCwoDa2V5GAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEjAKBHR5cGUYAyABKA4yIi53ZWJfcnBjX3Byb3h5LkZsZWV0U2V0dXBJbnB1dFR5cGUSEAoIcmVxdWlyZWQYBCABKAgSFQoNZGVmYXVsdF92YWx1ZRgFIAEoCRIwCgdvcHRpb25zGAYgAygLMh8ud2ViX3JwY19wcm94eS5GbGVldFNldHVwT3B0aW9uEjgKDHZpc2libGVfd2hlbhgIIAEoCzIiLndlYl9ycGNfcHJveHkuRmxlZXRTZXR1cENvbmRpdGlvbhIRCgltdWx0aWxpbmUYCSABKAhKBAgHEAhSD2VtcHR5X21lYW5zX2FsbCJAChxGbGVldFBhcnRpY2lwYXRpb25NZXRyaWNQYXJ0EgsKA2tleRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCSKcAQoYRmxlZXRQYXJ0aWNpcGF0aW9uTWV0cmljEj4KCW51bWVyYXRvchgBIAEoCzIrLndlYl9ycGNfcHJveHkuRmxlZXRQYXJ0aWNpcGF0aW9uTWV0cmljUGFydBJACgtkZW5vbWluYXRvchgCIAEoCzIrLndlYl9ycGNfcHJveHkuRmxlZXRQYXJ0aWNpcGF0aW9uTWV0cmljUGFydCLoAQoSRmxlZXRQYXJ0aWNpcGF0aW9uEjMKBG1vZGUYASABKA4yJS53ZWJfcnBjX3Byb3h5LkZsZWV0UGFydGljaXBhdGlvbk1vZGUSOQoHY2FkZW5jZRgCIAEoDjIoLndlYl9ycGNfcHJveHkuRmxlZXRQYXJ0aWNpcGF0aW9uQ2FkZW5jZRIpCgZhY3RvcnMYAyADKA4yGS53ZWJfcnBjX3Byb3h5LkZsZWV0QWN0b3ISNwoGbWV0cmljGAQgASgLMicud2ViX3JwY19wcm94eS5GbGVldFBhcnRpY2lwYXRpb25NZXRyaWMiKgoNRmxlZXRDYXRlZ29yeRILCgNrZXkYASABKAkSDAoEbmFtZRgCIAEoCSKYBAoJRmxlZXRGbG93EgsKA2tleRgBIAEoCRIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAYgASgJEjYKDGF2YWlsYWJpbGl0eRgHIAEoCzIgLndlYl9ycGNfcHJveHkuRmxlZXRBdmFpbGFiaWxpdHkSMAoKY29yZV9zbG90cxgJIAMoCzIcLndlYl9ycGNfcHJveHkuRmxlZXRDb3JlU2xvdBItCgh2YXJpYW50cxgKIAMoCzIbLndlYl9ycGNfcHJveHkuRmxlZXRWYXJpYW50EjQKDHNldHVwX2lucHV0cxgLIAMoCzIeLndlYl9ycGNfcHJveHkuRmxlZXRTZXR1cElucHV0EjgKDXBhcnRpY2lwYXRpb24YDCABKAsyIS53ZWJfcnBjX3Byb3h5LkZsZWV0UGFydGljaXBhdGlvbhI6Cg9hbGxvd2VkX2FjdGlvbnMYDSADKA4yIS53ZWJfcnBjX3Byb3h5LkZsZWV0QWxsb3dlZEFjdGlvbhJDChNpbnN0YWxsYXRpb25fc3RhdHVzGA4gASgOMiYud2ViX3JwY19wcm94eS5GbGVldEluc3RhbGxhdGlvblN0YXR1cxIUCgxjYXRlZ29yeV9rZXkYDyABKAkSNQoMaW5zdGFsbGFibGVzGBAgAygLMh8ud2ViX3JwY19wcm94eS5GbGVldEluc3RhbGxhYmxlSgQICBAJIqcCChBGbGVldEluc3RhbGxhYmxlEgsKA2tleRgBIAEoCRIMCgRuYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEj8KC2NhcmRpbmFsaXR5GAQgASgOMioud2ViX3JwY19wcm94eS5GbGVldEluc3RhbGxhYmxlQ2FyZGluYWxpdHkSHQoVc3VwcG9ydHNfZXh0cmFfcHJvbXB0GAUgASgIEhwKFGluc3RhbGxlZF9ieV9kZWZhdWx0GAYgASgIEjQKDHNldHVwX2lucHV0cxgHIAMoCzIeLndlYl9ycGNfcHJveHkuRmxlZXRTZXR1cElucHV0EhQKDHZhcmlhbnRfa2V5cxgIIAMoCRIZChFleHRyYV9pbnB1dF9sYWJlbBgJIAEoCSqpAQoORmxlZXRSdW5Bc01vZGUSIQodRkxFRVRfUlVOX0FTX01PREVfVU5TUEVDSUZJRUQQABIdChlGTEVFVF9SVU5fQVNfTU9ERV9NQU5BR0VEEAESJQohRkxFRVRfUlVOX0FTX01PREVfSU5TVEFMTElOR19VU0VSEAISLgoqRkxFRVRfUlVOX0FTX01PREVfRVhJU1RJTkdfU0VSVklDRV9BQ0NPVU5UEAMqeAoPRmxlZXRBY3RvclN0YXRlEiEKHUZMRUVUX0FDVE9SX1NUQVRFX1VOU1BFQ0lGSUVEEAASHwobRkxFRVRfQUNUT1JfU1RBVEVfQVZBSUxBQkxFEAESIQodRkxFRVRfQUNUT1JfU1RBVEVfVU5BVkFJTEFCTEUQAirJAQoQRmxlZXRBcHBseVN0YXR1cxIiCh5GTEVFVF9BUFBMWV9TVEFUVVNfVU5TUEVDSUZJRUQQABIfChtGTEVFVF9BUFBMWV9TVEFUVVNfQVBQTFlJTkcQARIjCh9GTEVFVF9BUFBMWV9TVEFUVVNfUkVBRFlfVE9fQVJNEAISJwojRkxFRVRfQVBQTFlfU1RBVFVTX0ZBSUxFRF9SRVRSWUFCTEUQAxIcChhGTEVFVF9BUFBMWV9TVEFUVVNfQVJNRUQQBSIECAQQBCrCAQoYRmxlZXRDYXRhbG9nQXZhaWxhYmlsaXR5EioKJkZMRUVUX0NBVEFMT0dfQVZBSUxBQklMSVRZX1VOU1BFQ0lGSUVEEAASKAokRkxFRVRfQ0FUQUxPR19BVkFJTEFCSUxJVFlfQVZBSUxBQkxFEAESJAogRkxFRVRfQ0FUQUxPR19BVkFJTEFCSUxJVFlfU1RBTEUQAhIqCiZGTEVFVF9DQVRBTE9HX0FWQUlMQUJJTElUWV9VTkFWQUlMQUJMRRADKskBChZGbGVldEF2YWlsYWJpbGl0eVN0YXRlEigKJEZMRUVUX0FWQUlMQUJJTElUWV9TVEFURV9VTlNQRUNJRklFRBAAEiYKIkZMRUVUX0FWQUlMQUJJTElUWV9TVEFURV9BVkFJTEFCTEUQARIxCi1GTEVFVF9BVkFJTEFCSUxJVFlfU1RBVEVfQkxPQ0tFRF9SRVFVSVJFTUVOVFMQAhIqCiZGTEVFVF9BVkFJTEFCSUxJVFlfU1RBVEVfTk9UX0FWQUlMQUJMRRADKsoCChNGbGVldFNldHVwSW5wdXRUeXBlEiYKIkZMRUVUX1NFVFVQX0lOUFVUX1RZUEVfVU5TUEVDSUZJRUQQABIfChtGTEVFVF9TRVRVUF9JTlBVVF9UWVBFX1RFWFQQARImCiJGTEVFVF9TRVRVUF9JTlBVVF9UWVBFX1NUUklOR19MSVNUEAISJgoiRkxFRVRfU0VUVVBfSU5QVVRfVFlQRV9FTlZJUk9OTUVOVBADEisKJ0ZMRUVUX1NFVFVQX0lOUFVUX1RZUEVfU0VDUkVUX1JFRkVSRU5DRRAEEiYKIkZMRUVUX1NFVFVQX0lOUFVUX1RZUEVfSU5URUdSQVRJT04QBRIiCh5GTEVFVF9TRVRVUF9JTlBVVF9UWVBFX0JPT0xFQU4QBhIhCh1GTEVFVF9TRVRVUF9JTlBVVF9UWVBFX0NIT0lDRRAHKuYBChZGbGVldFBhcnRpY2lwYXRpb25Nb2RlEigKJEZMRUVUX1BBUlRJQ0lQQVRJT05fTU9ERV9VTlNQRUNJRklFRBAAEigKJEZMRUVUX1BBUlRJQ0lQQVRJT05fTU9ERV9JTlRFUkFDVElWRRABEioKJkZMRUVUX1BBUlRJQ0lQQVRJT05fTU9ERV9IVU1BTl9PTl9MT09QEAISJwojRkxFRVRfUEFSVElDSVBBVElPTl9NT0RFX0FVVE9OT01PVVMQAxIjCh9GTEVFVF9QQVJUSUNJUEFUSU9OX01PREVfSFlCUklEEAQq+AEKGUZsZWV0UGFydGljaXBhdGlvbkNhZGVuY2USKwonRkxFRVRfUEFSVElDSVBBVElPTl9DQURFTkNFX1VOU1BFQ0lGSUVEEAASKQolRkxFRVRfUEFSVElDSVBBVElPTl9DQURFTkNFX09OX0RFTUFORBABEiwKKEZMRUVUX1BBUlRJQ0lQQVRJT05fQ0FERU5DRV9FVkVOVF9EUklWRU4QAhIpCiVGTEVFVF9QQVJUSUNJUEFUSU9OX0NBREVOQ0VfU0NIRURVTEVEEAMSKgomRkxFRVRfUEFSVElDSVBBVElPTl9DQURFTkNFX0NPTlRJTlVPVVMQBCrFAQoKRmxlZXRBY3RvchIbChdGTEVFVF9BQ1RPUl9VTlNQRUNJRklFRBAAEhsKF0ZMRUVUX0FDVE9SX0VOR0lORUVSSU5HEAESFwoTRkxFRVRfQUNUT1JfUFJPRFVDVBACEhoKFkZMRUVUX0FDVE9SX09QRVJBVElPTlMQAxIYChRGTEVFVF9BQ1RPUl9CVVNJTkVTUxAEEhcKE0ZMRUVUX0FDVE9SX1NVUFBPUlQQBRIVChFGTEVFVF9BQ1RPUl9TQUxFUxAGKuQBChJGbGVldEFsbG93ZWRBY3Rpb24SJAogRkxFRVRfQUxMT1dFRF9BQ1RJT05fVU5TUEVDSUZJRUQQABIdChlGTEVFVF9BTExPV0VEX0FDVElPTl9WSUVXEAESIAocRkxFRVRfQUxMT1dFRF9BQ1RJT05fSU5TVEFMTBACEhwKGEZMRUVUX0FMTE9XRURfQUNUSU9OX0FSTRAEEiIKHkZMRUVUX0FMTE9XRURfQUNUSU9OX0NPTkZJR1VSRRAFEh8KG0ZMRUVUX0FMTE9XRURfQUNUSU9OX1JFUEFJUhAGIgQIAxADKlIKEEZsZWV0VmFyaWFudEtpbmQSIgoeRkxFRVRfVkFSSUFOVF9LSU5EX1VOU1BFQ0lGSUVEEAASGgoWRkxFRVRfVkFSSUFOVF9LSU5EX1NDTRABKroBChdGbGVldENvbmZpZ3VyYXRpb25TdGF0ZRIpCiVGTEVFVF9DT05GSUdVUkFUSU9OX1NUQVRFX1VOU1BFQ0lGSUVEEAASIwofRkxFRVRfQ09ORklHVVJBVElPTl9TVEFURV9SRUFEWRABEigKJEZMRUVUX0NPTkZJR1VSQVRJT05fU1RBVEVfSU5DT01QTEVURRACEiUKIUZMRUVUX0NPTkZJR1VSQVRJT05fU1RBVEVfVU5LTk9XThADKqACChdGbGVldEluc3RhbGxhdGlvblN0YXR1cxIpCiVGTEVFVF9JTlNUQUxMQVRJT05fU1RBVFVTX1VOU1BFQ0lGSUVEEAASJQohRkxFRVRfSU5TVEFMTEFUSU9OX1NUQVRVU19VTktOT1dOEAESKwonRkxFRVRfSU5TVEFMTEFUSU9OX1NUQVRVU19OT1RfSU5TVEFMTEVEEAISMQotRkxFRVRfSU5TVEFMTEFUSU9OX1NUQVRVU19QQVJUSUFMTFlfSU5TVEFMTEVEEAMSJwojRkxFRVRfSU5TVEFMTEFUSU9OX1NUQVRVU19JTlNUQUxMRUQQBBIqCiZGTEVFVF9JTlNUQUxMQVRJT05fU1RBVFVTX05FRURTX1JFUEFJUhAFKt0BChtGbGVldEluc3RhbGxhYmxlQ2FyZGluYWxpdHkSLQopRkxFRVRfSU5TVEFMTEFCTEVfQ0FSRElOQUxJVFlfVU5TUEVDSUZJRUQQABIrCidGTEVFVF9JTlNUQUxMQUJMRV9DQVJESU5BTElUWV9TSU5HTEVUT04QARI0CjBGTEVFVF9JTlNUQUxMQUJMRV9DQVJESU5BTElUWV9PUFRJT05BTF9TSU5HTEVUT04QAhIsCihGTEVFVF9JTlNUQUxMQUJMRV9DQVJESU5BTElUWV9SRVBFQVRBQkxFEAMy2Q4KEUZsZWV0UHJveHlTZXJ2aWNlEqoBCg9HZXRGbGVldENhdGFsb2cSJS53ZWJfcnBjX3Byb3h5LkdldEZsZWV0Q2F0YWxvZ1JlcXVlc3QaJi53ZWJfcnBjX3Byb3h5LkdldEZsZWV0Q2F0YWxvZ1Jlc3BvbnNlIkiatRglcG9zZWlkb24uRmxlZXRTZXJ2aWNlL0dldEZsZWV0Q2F0YWxvZ7q1GBsKF2ZsZWV0X3dvcmtmbG93c19lbmFibGVkEAESpgEKDkFwcGx5RmxlZXRGbG93EiQud2ViX3JwY19wcm94eS5BcHBseUZsZWV0Rmxvd1JlcXVlc3QaJS53ZWJfcnBjX3Byb3h5LkFwcGx5RmxlZXRGbG93UmVzcG9uc2UiR5q1GCRwb3NlaWRvbi5GbGVldFNlcnZpY2UvQXBwbHlGbGVldEZsb3e6tRgbChdmbGVldF93b3JrZmxvd3NfZW5hYmxlZBABEp4BCgxBcm1GbGVldEZsb3cSIi53ZWJfcnBjX3Byb3h5LkFybUZsZWV0Rmxvd1JlcXVlc3QaIy53ZWJfcnBjX3Byb3h5LkFybUZsZWV0Rmxvd1Jlc3BvbnNlIkWatRgicG9zZWlkb24uRmxlZXRTZXJ2aWNlL0FybUZsZWV0Rmxvd7q1GBsKF2ZsZWV0X3dvcmtmbG93c19lbmFibGVkEAESugEKE0RlYWN0aXZhdGVGbGVldEZsb3cSKS53ZWJfcnBjX3Byb3h5LkRlYWN0aXZhdGVGbGVldEZsb3dSZXF1ZXN0Gioud2ViX3JwY19wcm94eS5EZWFjdGl2YXRlRmxlZXRGbG93UmVzcG9uc2UiTJq1GClwb3NlaWRvbi5GbGVldFNlcnZpY2UvRGVhY3RpdmF0ZUZsZWV0Rmxvd7q1GBsKF2ZsZWV0X3dvcmtmbG93c19lbmFibGVkEAEStgEKElVuaW5zdGFsbEZsZWV0RmxvdxIoLndlYl9ycGNfcHJveHkuVW5pbnN0YWxsRmxlZXRGbG93UmVxdWVzdBopLndlYl9ycGNfcHJveHkuVW5pbnN0YWxsRmxlZXRGbG93UmVzcG9uc2UiS5q1GChwb3NlaWRvbi5GbGVldFNlcnZpY2UvVW5pbnN0YWxsRmxlZXRGbG93urUYGwoXZmxlZXRfd29ya2Zsb3dzX2VuYWJsZWQQARK2AQoSQ29uZmlndXJlRmxlZXRGbG93Eigud2ViX3JwY19wcm94eS5Db25maWd1cmVGbGVldEZsb3dSZXF1ZXN0Gikud2ViX3JwY19wcm94eS5Db25maWd1cmVGbGVldEZsb3dSZXNwb25zZSJLmrUYKHBvc2VpZG9uLkZsZWV0U2VydmljZS9Db25maWd1cmVGbGVldEZsb3e6tRgbChdmbGVldF93b3JrZmxvd3NfZW5hYmxlZBABEqoBCg9SZXBhaXJGbGVldEZsb3cSJS53ZWJfcnBjX3Byb3h5LlJlcGFpckZsZWV0Rmxvd1JlcXVlc3QaJi53ZWJfcnBjX3Byb3h5LlJlcGFpckZsZWV0Rmxvd1Jlc3BvbnNlIkiatRglcG9zZWlkb24uRmxlZXRTZXJ2aWNlL1JlcGFpckZsZWV0Rmxvd7q1GBsKF2ZsZWV0X3dvcmtmbG93c19lbmFibGVkEAESwgEKFUdldEZsZWV0Rmxvd0xpZmVjeWNsZRIrLndlYl9ycGNfcHJveHkuR2V0RmxlZXRGbG93TGlmZWN5Y2xlUmVxdWVzdBosLndlYl9ycGNfcHJveHkuR2V0RmxlZXRGbG93TGlmZWN5Y2xlUmVzcG9uc2UiTpq1GCtwb3NlaWRvbi5GbGVldFNlcnZpY2UvR2V0RmxlZXRGbG93TGlmZWN5Y2xlurUYGwoXZmxlZXRfd29ya2Zsb3dzX2VuYWJsZWQQARLGAQoWTGlzdEZsZWV0SW5zdGFsbGF0aW9ucxIsLndlYl9ycGNfcHJveHkuTGlzdEZsZWV0SW5zdGFsbGF0aW9uc1JlcXVlc3QaLS53ZWJfcnBjX3Byb3h5Lkxpc3RGbGVldEluc3RhbGxhdGlvbnNSZXNwb25zZSJPmrUYLHBvc2VpZG9uLkZsZWV0U2VydmljZS9MaXN0RmxlZXRJbnN0YWxsYXRpb25zurUYGwoXZmxlZXRfd29ya2Zsb3dzX2VuYWJsZWQQARLiAQodR2V0RmxlZXRDb25maWd1cmF0aW9uRG9jdW1lbnQSMy53ZWJfcnBjX3Byb3h5LkdldEZsZWV0Q29uZmlndXJhdGlvbkRvY3VtZW50UmVxdWVzdBo0LndlYl9ycGNfcHJveHkuR2V0RmxlZXRDb25maWd1cmF0aW9uRG9jdW1lbnRSZXNwb25zZSJWmrUYM3Bvc2VpZG9uLkZsZWV0U2VydmljZS9HZXRGbGVldENvbmZpZ3VyYXRpb25Eb2N1bWVudLq1GBsKF2ZsZWV0X3dvcmtmbG93c19lbmFibGVkEAFiBnByb3RvMw",[ha,J_n]);(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.MANAGED=1]="MANAGED",e[e.INSTALLING_USER=2]="INSTALLING_USER",e[e.EXISTING_SERVICE_ACCOUNT=3]="EXISTING_SERVICE_ACCOUNT"})(tSn||(tSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.AVAILABLE=1]="AVAILABLE",e[e.UNAVAILABLE=2]="UNAVAILABLE"})(nSn||(nSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.APPLYING=1]="APPLYING",e[e.READY_TO_ARM=2]="READY_TO_ARM",e[e.FAILED_RETRYABLE=3]="FAILED_RETRYABLE",e[e.ARMED=5]="ARMED"})(rSn||(rSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.AVAILABLE=1]="AVAILABLE",e[e.STALE=2]="STALE",e[e.UNAVAILABLE=3]="UNAVAILABLE"})(iSn||(iSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.AVAILABLE=1]="AVAILABLE",e[e.BLOCKED_REQUIREMENTS=2]="BLOCKED_REQUIREMENTS",e[e.NOT_AVAILABLE=3]="NOT_AVAILABLE"})(sSn||(sSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TEXT=1]="TEXT",e[e.STRING_LIST=2]="STRING_LIST",e[e.ENVIRONMENT=3]="ENVIRONMENT",e[e.SECRET_REFERENCE=4]="SECRET_REFERENCE",e[e.INTEGRATION=5]="INTEGRATION",e[e.BOOLEAN=6]="BOOLEAN",e[e.CHOICE=7]="CHOICE"})(oSn||(oSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.INTERACTIVE=1]="INTERACTIVE",e[e.HUMAN_ON_LOOP=2]="HUMAN_ON_LOOP",e[e.AUTONOMOUS=3]="AUTONOMOUS",e[e.HYBRID=4]="HYBRID"})(aSn||(aSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.ON_DEMAND=1]="ON_DEMAND",e[e.EVENT_DRIVEN=2]="EVENT_DRIVEN",e[e.SCHEDULED=3]="SCHEDULED",e[e.CONTINUOUS=4]="CONTINUOUS"})(lSn||(lSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.ENGINEERING=1]="ENGINEERING",e[e.PRODUCT=2]="PRODUCT",e[e.OPERATIONS=3]="OPERATIONS",e[e.BUSINESS=4]="BUSINESS",e[e.SUPPORT=5]="SUPPORT",e[e.SALES=6]="SALES"})(cSn||(cSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.VIEW=1]="VIEW",e[e.INSTALL=2]="INSTALL",e[e.ARM=4]="ARM",e[e.CONFIGURE=5]="CONFIGURE",e[e.REPAIR=6]="REPAIR"})(uSn||(uSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.SCM=1]="SCM"})(dSn||(dSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.READY=1]="READY",e[e.INCOMPLETE=2]="INCOMPLETE",e[e.UNKNOWN=3]="UNKNOWN"})(pSn||(pSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.UNKNOWN=1]="UNKNOWN",e[e.NOT_INSTALLED=2]="NOT_INSTALLED",e[e.PARTIALLY_INSTALLED=3]="PARTIALLY_INSTALLED",e[e.INSTALLED=4]="INSTALLED",e[e.NEEDS_REPAIR=5]="NEEDS_REPAIR"})(mSn||(mSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.SINGLETON=1]="SINGLETON",e[e.OPTIONAL_SINGLETON=2]="OPTIONAL_SINGLETON",e[e.REPEATABLE=3]="REPEATABLE"})(fSn||(fSn={}))});var T3,hSn,gSn,bSn,B1n,L1n,ySn,ASn,ESn,F1n,_Sn,U1n,V1n,SSn,vSn,xSn,CSn,TSn,ISn,wSn,RSn,NSn,kSn,OSn,MSn,PSn,DSn,BSn,LSn,FSn,USn,VSn,OT,GSn,QP,qIe,WSn,$Sn,QSn,JIe,YSn,HSn,ZSn,jSn,zSn,XSn,KSn,qSn,JSn,e1n,t1n,n1n,r1n,i1n,s1n,o1n,a1n,l1n,c1n,u1n,d1n,p1n,m1n,f1n,h1n,g1n,b1n,y1n,A1n,E1n,_1n,S1n,v1n,x1n,EA,gH,C1n,T1n,I1n,w1n,R1n,LN,bH,N1n,k1n,yH,O1n,M1n,P1n,D1n,Moe=C(()=>{"use strict";Ml();jIe();Au();koe();Ooe();q_n();qct();T3=Zr("CiNzZXJ2aWNlcy9hcGlfcHJveHkvcHVibGljX2FwaS5wcm90bxIKcHVibGljX2FwaSI1CgpBY3Rpb25JdGVtEg0KBXRpdGxlGAEgASgJEhAKA3VybBgCIAEoCUgAiAEBQgYKBF91cmwiKQoaQWN0aW9uc0dldFVzZXJTdGF0ZVJlcXVlc3QSCwoDa2V5GAEgASgJIkQKG0FjdGlvbnNHZXRVc2VyU3RhdGVSZXNwb25zZRINCgV2YWx1ZRgBIAEoCRIWCg52ZXJzaW9uX251bWJlchgCIAEoAyJoChpBY3Rpb25zU2V0VXNlclN0YXRlUmVxdWVzdBILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAkSGwoOdmVyc2lvbl9udW1iZXIYAyABKANIAIgBAUIRCg9fdmVyc2lvbl9udW1iZXIiNQobQWN0aW9uc1NldFVzZXJTdGF0ZVJlc3BvbnNlEhYKDnZlcnNpb25fbnVtYmVyGAEgASgDImIKEkFjdGl2ZVN1YnNjcmlwdGlvbhIsCghlbmRfZGF0ZRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASHgoWdXNhZ2VfYmFsYW5jZV9kZXBsZXRlZBgCIAEoCCLhAQoPQWdlbnRDYXBhYmlsaXR5EgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSLwoFc2NvcGUYAyABKA4yIC5wdWJsaWNfYXBpLkFnZW50Q2FwYWJpbGl0eVNjb3BlEj8KDG5hdGl2ZV90b29scxgEIAMoCzIpLnB1YmxpY19hcGkuQWdlbnRDYXBhYmlsaXR5VG9vbERlZmluaXRpb24SOQoLbWNwX3NlcnZlcnMYBSADKAsyJC5wdWJsaWNfYXBpLkFnZW50Q2FwYWJpbGl0eU1DUFNlcnZlciJkChhBZ2VudENhcGFiaWxpdHlNQ1BTZXJ2ZXISEwoLc2VydmVyX25hbWUYASABKAkSEgoKc2VydmVyX3VybBgCIAEoCRIfChdyZXF1aXJlZF9jcmVkZW50aWFsX2tleRgDIAEoCSJhChhBZ2VudENhcGFiaWxpdHlSZWZlcmVuY2USFwoPY2FwYWJpbGl0eV9uYW1lGAEgASgJEhUKDWFsbG93ZWRfdG9vbHMYAiADKAkSFQoNYmxvY2tlZF90b29scxgDIAMoCSIyCh1BZ2VudENhcGFiaWxpdHlUb29sRGVmaW5pdGlvbhIRCgl0b29sX25hbWUYASABKAki+gMKC0FnZW50Q29uZmlnEjMKD3dvcmtzcGFjZV9zZXR1cBgBIAEoCzIaLnB1YmxpY19hcGkuV29ya3NwYWNlU2V0dXASMwoOc3RhcnRpbmdfbm9kZXMYAiADKAsyGy5wdWJsaWNfYXBpLkNoYXRSZXF1ZXN0Tm9kZRIcCg91c2VyX2d1aWRlbGluZXMYAyABKAlIAIgBARIhChR3b3Jrc3BhY2VfZ3VpZGVsaW5lcxgEIAEoCUgBiAEBEhIKBW1vZGVsGAYgASgJSAKIAQESIgoVaXNfc2V0dXBfc2NyaXB0X2FnZW50GAcgASgISAOIAQESMAoLbWNwX3NlcnZlcnMYCCADKAsyGy5wdWJsaWNfYXBpLk1jcFNlcnZlckNvbmZpZxISCgV0aXRsZRgJIAEoCUgEiAEBEjYKDnJlcXVlc3Rfc291cmNlGAogASgOMhkucHVibGljX2FwaS5SZXF1ZXN0U291cmNlSAWIAQESFgoOZGlzYWJsZWRfdG9vbHMYCyADKAlCEgoQX3VzZXJfZ3VpZGVsaW5lc0IXChVfd29ya3NwYWNlX2d1aWRlbGluZXNCCAoGX21vZGVsQhgKFl9pc19zZXR1cF9zY3JpcHRfYWdlbnRCCAoGX3RpdGxlQhEKD19yZXF1ZXN0X3NvdXJjZUoECAUQBiKQAgoSQWdlbnRIaXN0b3J5VXBkYXRlEjAKBHR5cGUYASABKA4yIi5wdWJsaWNfYXBpLkFnZW50SGlzdG9yeVVwZGF0ZVR5cGUSNgoIZXhjaGFuZ2UYAiABKAsyHy5wdWJsaWNfYXBpLlJlbW90ZUFnZW50RXhjaGFuZ2VIAIgBARI4Cg9leGNoYW5nZV91cGRhdGUYAyABKAsyGi5wdWJsaWNfYXBpLkV4Y2hhbmdlVXBkYXRlSAGIAQESKwoFYWdlbnQYBCABKAsyFy5wdWJsaWNfYXBpLlJlbW90ZUFnZW50SAKIAQFCCwoJX2V4Y2hhbmdlQhIKEF9leGNoYW5nZV91cGRhdGVCCAoGX2FnZW50IuwCCg9BZ2VudExpc3RVcGRhdGUSLQoEdHlwZRgBIAEoDjIfLnB1YmxpY19hcGkuQWdlbnRMaXN0VXBkYXRlVHlwZRI0ChB1cGRhdGVfdGltZXN0YW1wGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIrCgVhZ2VudBgDIAEoCzIXLnB1YmxpY19hcGkuUmVtb3RlQWdlbnRIAIgBARIdChBkZWxldGVkX2FnZW50X2lkGAQgASgJSAGIAQESKwoKYWxsX2FnZW50cxgFIAMoCzIXLnB1YmxpY19hcGkuUmVtb3RlQWdlbnQSFwoKbWF4X2FnZW50cxgGIAEoBUgCiAEBEh4KEW1heF9hY3RpdmVfYWdlbnRzGAcgASgFSAOIAQFCCAoGX2FnZW50QhMKEV9kZWxldGVkX2FnZW50X2lkQg0KC19tYXhfYWdlbnRzQhQKEl9tYXhfYWN0aXZlX2FnZW50cyKiAQoMQWdlbnRQZXJzb25hEgoKAmlkGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEiwKBXNjb3BlGAMgASgOMh0ucHVibGljX2FwaS5BZ2VudFBlcnNvbmFTY29wZRJDChVyZXF1aXJlZF9jYXBhYmlsaXRpZXMYBCADKAsyJC5wdWJsaWNfYXBpLkFnZW50Q2FwYWJpbGl0eVJlZmVyZW5jZSJfChlBZ2VudFdvcmtzcGFjZUNoYXRSZXF1ZXN0EkIKD3JlcXVlc3RfZGV0YWlscxgBIAEoCzIpLnB1YmxpY19hcGkuUmVtb3RlQWdlbnRDaGF0UmVxdWVzdERldGFpbHMiQQomQWdlbnRXb3Jrc3BhY2VHZXRMYXN0U2VxdWVuY2VJZFJlcXVlc3QSFwoPcmVtb3RlX2FnZW50X2lkGAEgASgJIk0KJ0FnZW50V29ya3NwYWNlR2V0TGFzdFNlcXVlbmNlSWRSZXNwb25zZRIiChpsYXN0X3Byb2Nlc3NlZF9zZXF1ZW5jZV9pZBgBIAEoDSIZChdBZ2VudFdvcmtzcGFjZUludGVycnVwdCJeCh9BZ2VudFdvcmtzcGFjZVBvbGxVcGRhdGVSZXF1ZXN0EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCRIiChpsYXN0X3Byb2Nlc3NlZF9zZXF1ZW5jZV9pZBgCIAEoDSJVCiBBZ2VudFdvcmtzcGFjZVBvbGxVcGRhdGVSZXNwb25zZRIxCgd1cGRhdGVzGAEgAygLMiAucHVibGljX2FwaS5BZ2VudFdvcmtzcGFjZVVwZGF0ZSJ4CiZBZ2VudFdvcmtzcGFjZVJlcG9ydENoYXRIaXN0b3J5UmVxdWVzdBIXCg9yZW1vdGVfYWdlbnRfaWQYASABKAkSNQoMY2hhdF9oaXN0b3J5GAIgAygLMh8ucHVibGljX2FwaS5SZW1vdGVBZ2VudEV4Y2hhbmdlIikKJ0FnZW50V29ya3NwYWNlUmVwb3J0Q2hhdEhpc3RvcnlSZXNwb25zZSJoCilBZ2VudFdvcmtzcGFjZVJlcG9ydExhc3RTZXF1ZW5jZUlkUmVxdWVzdBIXCg9yZW1vdGVfYWdlbnRfaWQYASABKAkSIgoabGFzdF9wcm9jZXNzZWRfc2VxdWVuY2VfaWQYAiABKA0iLAoqQWdlbnRXb3Jrc3BhY2VSZXBvcnRMYXN0U2VxdWVuY2VJZFJlc3BvbnNlIocBCiRBZ2VudFdvcmtzcGFjZVJlcG9ydFNldHVwTG9nc1JlcXVlc3QSFwoPcmVtb3RlX2FnZW50X2lkGAEgASgJEkYKFndvcmtzcGFjZV9zZXR1cF9zdGF0dXMYAyABKAsyJi5wdWJsaWNfYXBpLlJlbW90ZVdvcmtzcGFjZVNldHVwU3RhdHVzIicKJUFnZW50V29ya3NwYWNlUmVwb3J0U2V0dXBMb2dzUmVzcG9uc2UisQEKIUFnZW50V29ya3NwYWNlUmVwb3J0U3RhdHVzUmVxdWVzdBIXCg9yZW1vdGVfYWdlbnRfaWQYASABKAkSLQoGc3RhdHVzGAIgASgOMh0ucHVibGljX2FwaS5SZW1vdGVBZ2VudFN0YXR1cxImChloYXNfYWN0aXZlX3NzaF9jb25uZWN0aW9uGAMgASgISACIAQFCHAoaX2hhc19hY3RpdmVfc3NoX2Nvbm5lY3Rpb24iJAoiQWdlbnRXb3Jrc3BhY2VSZXBvcnRTdGF0dXNSZXNwb25zZSJaChtBZ2VudFdvcmtzcGFjZVN0cmVhbVJlcXVlc3QSFwoPcmVtb3RlX2FnZW50X2lkGAEgASgJEiIKGmxhc3RfcHJvY2Vzc2VkX3NlcXVlbmNlX2lkGAIgASgNIlcKHEFnZW50V29ya3NwYWNlU3RyZWFtUmVzcG9uc2USNwoHdXBkYXRlcxgBIAMoCzImLnB1YmxpY19hcGkuQWdlbnRXb3Jrc3BhY2VTdHJlYW1VcGRhdGUigwIKGkFnZW50V29ya3NwYWNlU3RyZWFtVXBkYXRlEjIKBHR5cGUYASABKA4yJC5wdWJsaWNfYXBpLkFnZW50V29ya3NwYWNlVXBkYXRlVHlwZRITCgtzZXF1ZW5jZV9pZBgCIAEoDRI7CglpbnRlcnJ1cHQYAyABKAsyIy5wdWJsaWNfYXBpLkFnZW50V29ya3NwYWNlSW50ZXJydXB0SACIAQESQAoMY2hhdF9yZXF1ZXN0GAQgASgLMiUucHVibGljX2FwaS5BZ2VudFdvcmtzcGFjZUNoYXRSZXF1ZXN0SAGIAQFCDAoKX2ludGVycnVwdEIPCg1fY2hhdF9yZXF1ZXN0Iq4BChRBZ2VudFdvcmtzcGFjZVVwZGF0ZRI4CglpbnRlcnJ1cHQYAiABKAsyIy5wdWJsaWNfYXBpLkFnZW50V29ya3NwYWNlSW50ZXJydXB0SAASPQoMY2hhdF9yZXF1ZXN0GAMgASgLMiUucHVibGljX2FwaS5BZ2VudFdvcmtzcGFjZUNoYXRSZXF1ZXN0SAASEwoLc2VxdWVuY2VfaWQYASABKA1CCAoGdXBkYXRlInsKGEFnZ3JlZ2F0ZWRPdXRjb21lTWV0cmljcxIMCgRuYW1lGAEgASgJEhQKDGRpc3BsYXlfbmFtZRgCIAEoCRINCgVjb3VudBgDIAEoBBIsCgZ2YWx1ZXMYBCABKAsyHC5wdWJsaWNfYXBpLkFnZ3JlZ2F0ZWRWYWx1ZXMilAEKEEFnZ3JlZ2F0ZWRWYWx1ZXMSCwoDc3VtGAEgASgBEgsKA2F2ZxgCIAEoARILCgNtaW4YAyABKAESCwoDbWF4GAQgASgBEgsKA3AyNRgFIAEoARILCgNwNTAYBiABKAESCwoDcDc1GAcgASgBEgsKA3A5MBgIIAEoARILCgNwOTUYCSABKAESCwoDcDk5GAogASgBIuYBChNBbmFseXRpY3NUYWdTdW1tYXJ5EgsKA2tleRgBIAEoCRIVCg1zZXNzaW9uX2NvdW50GAIgASgEEhkKEW9ic2VydmF0aW9uX2NvdW50GAQgASgEEh4KFmRpc3RpbmN0X3N1YmplY3RfY291bnQYBSABKAQSNAoGdmFsdWVzGAYgAygLMiQucHVibGljX2FwaS5BbmFseXRpY3NUYWdWYWx1ZVN1bW1hcnkSEwoLZGlzcGxheV9rZXkYByABKAkSJQoGc291cmNlGAggASgOMhUucHVibGljX2FwaS5UYWdTb3VyY2UikgEKGEFuYWx5dGljc1RhZ1ZhbHVlU3VtbWFyeRINCgV2YWx1ZRgBIAEoCRIVCg1kaXNwbGF5X3ZhbHVlGAIgASgJEhUKDXNlc3Npb25fY291bnQYAyABKAQSGQoRb2JzZXJ2YXRpb25fY291bnQYBSABKAQSHgoWZGlzdGluY3Rfc3ViamVjdF9jb3VudBgGIAEoBCJbChdBdGxhc3NpYW5Ub29sRXh0cmFJbnB1dBISCgpzZXJ2ZXJfdXJsGAEgASgJEhoKEnBlcnNvbmFsX2FwaV90b2tlbhgCIAEoCRIQCgh1c2VybmFtZRgDIAEoCSIqCgxCYW5uZXJCdXR0b24SDQoFdGl0bGUYASABKAkSCwoDdXJsGAIgASgJItcDChFCYW5uZXJJbmZvcm1hdGlvbhIPCgdtZXNzYWdlGAEgASgJEi0KBmJ1dHRvbhgCIAEoCzIYLnB1YmxpY19hcGkuQmFubmVyQnV0dG9uSACIAQESPQoLYmFubmVyX3R5cGUYAyABKA4yKC5wdWJsaWNfYXBpLkJhbm5lckluZm9ybWF0aW9uLkJhbm5lclR5cGUSRwoNZGlzcGxheV9zdHlsZRgEIAEoDjIwLnB1YmxpY19hcGkuQmFubmVySW5mb3JtYXRpb24uQmFubmVyRGlzcGxheVN0eWxlIoUBCgpCYW5uZXJUeXBlEhcKE0JBTk5FUl9UWVBFX1VOS05PV04QABIMCghVUkxfTElOSxABEhoKFlVTQUdFX0JBTEFOQ0VfREVQTEVURUQQAhIVChFVU0FHRV9CQUxBTkNFX0xPVxADEh0KGVJFUVVJUkVfUEFZTUVOVF9GT1JfVFJJQUwQBCJnChJCYW5uZXJEaXNwbGF5U3R5bGUSIAocQkFOTkVSX0RJU1BMQVlfU1RZTEVfVU5LTk9XThAAEggKBElORk8QARINCglQUk9NT1RJT04QAhILCgdXQVJOSU5HEAMSCQoFQUxFUlQQBEIJCgdfYnV0dG9uIjsKEkJhdGNoVXBsb2FkUmVxdWVzdBIlCgVibG9icxgBIAMoCzIWLnB1YmxpY19hcGkuVXBsb2FkQmxvYiIpChNCYXRjaFVwbG9hZFJlc3BvbnNlEhIKCmJsb2JfbmFtZXMYASADKAkiYQoFQmxvYnMSGgoNY2hlY2twb2ludF9pZBgBIAEoCUgAiAEBEhMKC2FkZGVkX2Jsb2JzGAIgAygJEhUKDWRlbGV0ZWRfYmxvYnMYAyADKAlCEAoOX2NoZWNrcG9pbnRfaWQiigEKEUJvb3RzdHJhcFNldHRpbmdzElMKHXJlcG9zaXRvcnlfYWxsb3dsaXN0X3NldHRpbmdzGAEgASgLMicucHVibGljX2FwaS5SZXBvc2l0b3J5QWxsb3dsaXN0U2V0dGluZ3NIAIgBAUIgCh5fcmVwb3NpdG9yeV9hbGxvd2xpc3Rfc2V0dGluZ3Mi3wEKC0NoYW5nZWRGaWxlEhAKCG9sZF9wYXRoGAEgASgJEhAKCG5ld19wYXRoGAIgASgJEjsKC2NoYW5nZV90eXBlGAMgASgOMiYucHVibGljX2FwaS5DaGFuZ2VkRmlsZS5GaWxlQ2hhbmdlVHlwZRIUCgxvbGRfY29udGVudHMYBCABKAkSFAoMbmV3X2NvbnRlbnRzGAUgASgJIkMKDkZpbGVDaGFuZ2VUeXBlEgkKBUFEREVEEAASCwoHREVMRVRFRBABEgwKCE1PRElGSUVEEAISCwoHUkVOQU1FRBADIpgEChBDaGFuZ2VkRmlsZVN0YXRzEj0KEGFkZGVkX2ZpbGVfc3RhdHMYASABKAsyIy5wdWJsaWNfYXBpLlBlclR5cGVDaGFuZ2VkRmlsZVN0YXRzEj4KEWJyb2tlbl9maWxlX3N0YXRzGAIgASgLMiMucHVibGljX2FwaS5QZXJUeXBlQ2hhbmdlZEZpbGVTdGF0cxI+ChFjb3BpZWRfZmlsZV9zdGF0cxgDIAEoCzIjLnB1YmxpY19hcGkuUGVyVHlwZUNoYW5nZWRGaWxlU3RhdHMSPwoSZGVsZXRlZF9maWxlX3N0YXRzGAQgASgLMiMucHVibGljX2FwaS5QZXJUeXBlQ2hhbmdlZEZpbGVTdGF0cxJAChNtb2RpZmllZF9maWxlX3N0YXRzGAUgASgLMiMucHVibGljX2FwaS5QZXJUeXBlQ2hhbmdlZEZpbGVTdGF0cxI/ChJyZW5hbWVkX2ZpbGVfc3RhdHMYBiABKAsyIy5wdWJsaWNfYXBpLlBlclR5cGVDaGFuZ2VkRmlsZVN0YXRzEkAKE3VubWVyZ2VkX2ZpbGVfc3RhdHMYByABKAsyIy5wdWJsaWNfYXBpLlBlclR5cGVDaGFuZ2VkRmlsZVN0YXRzEj8KEnVua25vd25fZmlsZV9zdGF0cxgIIAEoCzIjLnB1YmxpY19hcGkuUGVyVHlwZUNoYW5nZWRGaWxlU3RhdHMi2QIKGUNoYXRGZWF0dXJlRGV0ZWN0aW9uRmxhZ3MSIQoQc3VwcG9ydF9tYXJrZG93bhgBIAEoCEICGAFIAIgBARIjChJzdXBwb3J0X3Jhd19vdXRwdXQYAiABKAhCAhgBSAGIAQESJQoYc3VwcG9ydF9yZWxldmFudF9zb3VyY2VzGAMgASgISAKIAQESIwoWc3VwcG9ydF90b29sX3VzZV9zdGFydBgEIAEoCEgDiAEBEiYKGXN1cHBvcnRfcGFyYWxsZWxfdG9vbF91c2UYBSABKAhIBIgBAUITChFfc3VwcG9ydF9tYXJrZG93bkIVChNfc3VwcG9ydF9yYXdfb3V0cHV0QhsKGV9zdXBwb3J0X3JlbGV2YW50X3NvdXJjZXNCGQoXX3N1cHBvcnRfdG9vbF91c2Vfc3RhcnRCHAoaX3N1cHBvcnRfcGFyYWxsZWxfdG9vbF91c2UikAEKDENoYXRGZWVkYmFjaxISCgpyZXF1ZXN0X2lkGAEgASgJEioKBnJhdGluZxgCIAEoDjIaLnB1YmxpY19hcGkuRmVlZGJhY2tSYXRpbmcSDAoEbm90ZRgDIAEoCRIcCgRtb2RlGAQgASgOMg4uY2hhdC5DaGF0TW9kZRIUCgxyZWFzb25fY29kZXMYBSADKAkiFgoUQ2hhdEZlZWRiYWNrUmVzcG9uc2Ui1QIKGkNoYXRJbnB1dENvbXBsZXRpb25SZXF1ZXN0EhIKBW1vZGVsGAEgASgJSACIAQESDgoGcHJvbXB0GAIgASgJEgwKBHBhdGgYAyABKAkSEwoGc3VmZml4GAQgASgJSAGIAQESIAoFYmxvYnMYBSABKAsyES5wdWJsaWNfYXBpLkJsb2JzEjIKDHJlY2VuY3lfaW5mbxgGIAEoCzIXLnB1YmxpY19hcGkuUmVjZW5jeUluZm9IAogBARIRCgRsYW5nGAcgASgJSAOIAQESGAoLc2VxdWVuY2VfaWQYCCABKA1IBIgBARIuCgtlZGl0X2V2ZW50cxgJIAMoCzIZLnB1YmxpY19hcGkuRmlsZUVkaXRFdmVudEIICgZfbW9kZWxCCQoHX3N1ZmZpeEIPCg1fcmVjZW5jeV9pbmZvQgcKBV9sYW5nQg4KDF9zZXF1ZW5jZV9pZCKpAQodQ2hhdElucHV0Q29tcGxldGlvblJlc29sdXRpb24SEgoKcmVxdWVzdF9pZBgBIAEoCRIVCg1lbWl0X3RpbWVfc2VjGAIgASgDEhYKDmVtaXRfdGltZV9uc2VjGAMgASgFEhgKEHJlc29sdmVfdGltZV9zZWMYBCABKAMSGQoRcmVzb2x2ZV90aW1lX25zZWMYBSABKAUSEAoIYWNjZXB0ZWQYBiABKAgiJwolQ2hhdElucHV0Q29tcGxldGlvblJlc29sdXRpb25SZXNwb25zZSLnAQobQ2hhdElucHV0Q29tcGxldGlvblJlc3BvbnNlEgwKBHRleHQYASABKAkSHAoUdW5rbm93bl9tZW1vcnlfbmFtZXMYAiADKAkSIwobc3VnZ2VzdGVkX3ByZWZpeF9jaGFyX2NvdW50GAMgASgNEiMKG3N1Z2dlc3RlZF9zdWZmaXhfY2hhcl9jb3VudBgEIAEoDRI0ChBjb21wbGV0aW9uX2l0ZW1zGAUgAygLMhoucHVibGljX2FwaS5Db21wbGV0aW9uSXRlbRIcChRjaGVja3BvaW50X25vdF9mb3VuZBgGIAEoCCL5EQoLQ2hhdFJlcXVlc3QSEgoFbW9kZWwYASABKAlIAIgBARIRCgRwYXRoGAIgASgJSAGIAQESEwoGcHJlZml4GAMgASgJSAKIAQESGgoNc2VsZWN0ZWRfY29kZRgEIAEoCUgDiAEBEhMKBnN1ZmZpeBgFIAEoCUgEiAEBEg8KB21lc3NhZ2UYBiABKAkSKgoMY2hhdF9oaXN0b3J5GAcgAygLMhQucHVibGljX2FwaS5FeGNoYW5nZRIWCglibG9iX25hbWUYCCABKAlIBYgBARIZCgxwcmVmaXhfYmVnaW4YCSABKAVIBogBARIcCg9jdXJzb3JfcG9zaXRpb24YCiABKAVIB4gBARIXCgpzdWZmaXhfZW5kGAsgASgFSAiIAQESFgoKYmxvYl9uYW1lcxgMIAMoCUICGAESEQoEbGFuZxgNIAEoCUgJiAEBEhMKC3NlcXVlbmNlX2lkGA4gASgNEiAKBWJsb2JzGA8gASgLMhEucHVibGljX2FwaS5CbG9icxIZChF1c2VyX2d1aWRlZF9ibG9icxgRIAMoCRIbChNleHRlcm5hbF9zb3VyY2VfaWRzGBMgAygJEikKHGVuYWJsZV9wcmVmZXJlbmNlX2NvbGxlY3Rpb24YECABKAhICogBARItCiBjb250ZXh0X2NvZGVfZXhjaGFuZ2VfcmVxdWVzdF9pZBgSIAEoCUgLiAEBEioKHWRpc2FibGVfYXV0b19leHRlcm5hbF9zb3VyY2VzGBQgASgISAyIAQESSwoXZmVhdHVyZV9kZXRlY3Rpb25fZmxhZ3MYFSABKAsyJS5wdWJsaWNfYXBpLkNoYXRGZWF0dXJlRGV0ZWN0aW9uRmxhZ3NIDYgBARIcCg91c2VyX2d1aWRlbGluZXMYFiABKAlIDogBARIhChR3b3Jrc3BhY2VfZ3VpZGVsaW5lcxgXIAEoCUgPiAEBEjQKEHRvb2xfZGVmaW5pdGlvbnMYGCADKAsyGi5wdWJsaWNfYXBpLlRvb2xEZWZpbml0aW9uEioKBW5vZGVzGBkgAygLMhsucHVibGljX2FwaS5DaGF0UmVxdWVzdE5vZGUSHAoEbW9kZRgaIAEoDjIOLmNoYXQuQ2hhdE1vZGUSMgoMcGVyc29uYV90eXBlGBwgASgOMhcucHVibGljX2FwaS5QZXJzb25hVHlwZUgQiAEBEh8KBXJ1bGVzGB0gAygLMhAucHVibGljX2FwaS5SdWxlEhMKBnNpbGVudBgeIAEoCEgRiAEBEjsKFHRoaXJkX3BhcnR5X292ZXJyaWRlGB8gASgLMhguY2hhdC5UaGlyZFBhcnR5T3ZlcnJpZGVIEogBARIcCg9jb252ZXJzYXRpb25faWQYICABKAlIE4gBARIaCg1zeXN0ZW1fcHJvbXB0GCEgASgJSBSIAQESRwoac3lzdGVtX3Byb21wdF9yZXBsYWNlbWVudHMYIiADKAsyIy5wdWJsaWNfYXBpLlN5c3RlbVByb21wdFJlcGxhY2VtZW50EiEKBnNraWxscxgkIAMoCzIRLnB1YmxpY19hcGkuU2tpbGwSHQoQYWdlbnRfcGVyc29uYV9pZBglIAEoCUgViAEBEhQKB3R1cm5faWQYJiABKAlIFogBARIjChZwYXJlbnRfY29udmVyc2F0aW9uX2lkGCcgASgJSBeIAQESIQoUcm9vdF9jb252ZXJzYXRpb25faWQYKCABKAlIGIgBARIhChRzeXN0ZW1fcHJvbXB0X2FwcGVuZBgpIAEoCUgZiAEBEjYKEmJyaW5nX3lvdXJfb3duX2tleRgqIAEoCzIVLmNoYXQuQnJpbmdZb3VyT3duS2V5SBqIAQESHAoPc3Vic2NyaXB0aW9uX2lkGCsgASgJSBuIAQESEwoLcGVyc29uYV9pZHMYLCADKAkSGwoOc2VuZGVyX3VzZXJfaWQYLSABKAlIHIgBARIkChdwb3NlaWRvbl9zZW5kZXJfdXNlcl9pZBguIAEoCUgdiAEBEjMKE3Zmc19maWxlX3JlZmVyZW5jZXMYLyADKAsyFi5jaGF0LlZGU0ZpbGVSZWZlcmVuY2USMwoTbWNwX3Rvb2xfcmVmZXJlbmNlcxgwIAMoCzIWLmNoYXQuTUNQVG9vbFJlZmVyZW5jZRIdChByZWFzb25pbmdfZWZmb3J0GDEgASgJSB6IAQFCCAoGX21vZGVsQgcKBV9wYXRoQgkKB19wcmVmaXhCEAoOX3NlbGVjdGVkX2NvZGVCCQoHX3N1ZmZpeEIMCgpfYmxvYl9uYW1lQg8KDV9wcmVmaXhfYmVnaW5CEgoQX2N1cnNvcl9wb3NpdGlvbkINCgtfc3VmZml4X2VuZEIHCgVfbGFuZ0IfCh1fZW5hYmxlX3ByZWZlcmVuY2VfY29sbGVjdGlvbkIjCiFfY29udGV4dF9jb2RlX2V4Y2hhbmdlX3JlcXVlc3RfaWRCIAoeX2Rpc2FibGVfYXV0b19leHRlcm5hbF9zb3VyY2VzQhoKGF9mZWF0dXJlX2RldGVjdGlvbl9mbGFnc0ISChBfdXNlcl9ndWlkZWxpbmVzQhcKFV93b3Jrc3BhY2VfZ3VpZGVsaW5lc0IPCg1fcGVyc29uYV90eXBlQgkKB19zaWxlbnRCFwoVX3RoaXJkX3BhcnR5X292ZXJyaWRlQhIKEF9jb252ZXJzYXRpb25faWRCEAoOX3N5c3RlbV9wcm9tcHRCEwoRX2FnZW50X3BlcnNvbmFfaWRCCgoIX3R1cm5faWRCGQoXX3BhcmVudF9jb252ZXJzYXRpb25faWRCFwoVX3Jvb3RfY29udmVyc2F0aW9uX2lkQhcKFV9zeXN0ZW1fcHJvbXB0X2FwcGVuZEIVChNfYnJpbmdfeW91cl9vd25fa2V5QhIKEF9zdWJzY3JpcHRpb25faWRCEQoPX3NlbmRlcl91c2VyX2lkQhoKGF9wb3NlaWRvbl9zZW5kZXJfdXNlcl9pZEITChFfcmVhc29uaW5nX2VmZm9ydEoECBsQHEoECCMQJFIJY2FudmFzX2lkIooBChVDaGF0UmVxdWVzdEVkaXRFdmVudHMSNAoLZWRpdF9ldmVudHMYASADKAsyHy5wdWJsaWNfYXBpLkNoYXRSZXF1ZXN0RmlsZUVkaXQSMAoGc291cmNlGAIgASgOMhsucHVibGljX2FwaS5FZGl0RXZlbnRTb3VyY2VIAIgBAUIJCgdfc291cmNlIoYBCg9DaGF0UmVxdWVzdEZpbGUSEQoJZmlsZV9kYXRhGAEgASgJEhIKCm1lZGlhX3R5cGUYAiABKAkSFgoJZmlsZV9uYW1lGAMgASgJSACIAQESFwoKcGFnZV9jb3VudBgEIAEoBUgBiAEBQgwKCl9maWxlX25hbWVCDQoLX3BhZ2VfY291bnQiuwEKE0NoYXRSZXF1ZXN0RmlsZUVkaXQSDAoEcGF0aBgBIAEoCRIdChBiZWZvcmVfYmxvYl9uYW1lGAIgASgJSACIAQESHAoPYWZ0ZXJfYmxvYl9uYW1lGAMgASgJSAGIAQESMAoFZWRpdHMYBCADKAsyIS5wdWJsaWNfYXBpLkNoYXRSZXF1ZXN0U2luZ2xlRWRpdEITChFfYmVmb3JlX2Jsb2JfbmFtZUISChBfYWZ0ZXJfYmxvYl9uYW1lIsQBChNDaGF0UmVxdWVzdElkZVN0YXRlEjoKEXdvcmtzcGFjZV9mb2xkZXJzGAEgAygLMh8ucHVibGljX2FwaS5Xb3Jrc3BhY2VGb2xkZXJJbmZvEiMKG3dvcmtzcGFjZV9mb2xkZXJzX3VuY2hhbmdlZBgCIAEoCBI3ChBjdXJyZW50X3Rlcm1pbmFsGAMgASgLMhgucHVibGljX2FwaS5UZXJtaW5hbEluZm9IAIgBAUITChFfY3VycmVudF90ZXJtaW5hbCJTChBDaGF0UmVxdWVzdEltYWdlEhIKCmltYWdlX2RhdGEYASABKAkSKwoGZm9ybWF0GAIgASgOMhsucHVibGljX2FwaS5JbWFnZUZvcm1hdFR5cGUiowQKD0NoYXRSZXF1ZXN0Tm9kZRIKCgJpZBgBIAEoBRItCgR0eXBlGAIgASgOMh8ucHVibGljX2FwaS5DaGF0UmVxdWVzdE5vZGVUeXBlEjMKCXRleHRfbm9kZRgDIAEoCzIbLnB1YmxpY19hcGkuQ2hhdFJlcXVlc3RUZXh0SACIAQESQAoQdG9vbF9yZXN1bHRfbm9kZRgEIAEoCzIhLnB1YmxpY19hcGkuQ2hhdFJlcXVlc3RUb29sUmVzdWx0SAGIAQESNQoKaW1hZ2Vfbm9kZRgFIAEoCzIcLnB1YmxpY19hcGkuQ2hhdFJlcXVlc3RJbWFnZUgCiAEBEjwKDmlkZV9zdGF0ZV9ub2RlGAcgASgLMh8ucHVibGljX2FwaS5DaGF0UmVxdWVzdElkZVN0YXRlSAOIAQESQAoQZWRpdF9ldmVudHNfbm9kZRgIIAEoCzIhLnB1YmxpY19hcGkuQ2hhdFJlcXVlc3RFZGl0RXZlbnRzSASIAQESMwoJZmlsZV9ub2RlGAogASgLMhsucHVibGljX2FwaS5DaGF0UmVxdWVzdEZpbGVIBYgBAUIMCgpfdGV4dF9ub2RlQhMKEV90b29sX3Jlc3VsdF9ub2RlQg0KC19pbWFnZV9ub2RlQhEKD19pZGVfc3RhdGVfbm9kZUITChFfZWRpdF9ldmVudHNfbm9kZUIMCgpfZmlsZV9ub2RlSgQIBhAHSgQICRAKInUKFUNoYXRSZXF1ZXN0U2luZ2xlRWRpdBIZChFiZWZvcmVfbGluZV9zdGFydBgBIAEoDRITCgtiZWZvcmVfdGV4dBgCIAEoCRIYChBhZnRlcl9saW5lX3N0YXJ0GAMgASgNEhIKCmFmdGVyX3RleHQYBCABKAkiIgoPQ2hhdFJlcXVlc3RUZXh0Eg8KB2NvbnRlbnQYASABKAki/QIKFUNoYXRSZXF1ZXN0VG9vbFJlc3VsdBITCgt0b29sX3VzZV9pZBgBIAEoCRIPCgdjb250ZW50GAIgASgJEhAKCGlzX2Vycm9yGAMgASgIEhcKCnJlcXVlc3RfaWQYBCABKAlIAIgBARI4Cg1jb250ZW50X25vZGVzGAUgAygLMiEucHVibGljX2FwaS5Ub29sUmVzdWx0Q29udGVudE5vZGUSGAoLZHVyYXRpb25fbXMYBiABKANIAYgBARIaCg1zdGFydF90aW1lX21zGAcgASgDSAKIAQESQQoIbWV0YWRhdGEYCCADKAsyLy5wdWJsaWNfYXBpLkNoYXRSZXF1ZXN0VG9vbFJlc3VsdC5NZXRhZGF0YUVudHJ5Gi8KDU1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4AUINCgtfcmVxdWVzdF9pZEIOCgxfZHVyYXRpb25fbXNCEAoOX3N0YXJ0X3RpbWVfbXMijwMKDENoYXRSZXNwb25zZRIMCgR0ZXh0GAEgASgJEhoKEnVua25vd25fYmxvYl9uYW1lcxgCIAMoCRIcChRjaGVja3BvaW50X25vdF9mb3VuZBgDIAEoCBI9ChV3b3Jrc3BhY2VfZmlsZV9jaHVua3MYBCADKAsyHi5wdWJsaWNfYXBpLldvcmtzcGFjZUZpbGVDaHVuaxJNCh1pbmNvcnBvcmF0ZWRfZXh0ZXJuYWxfc291cmNlcxgFIAMoCzImLnB1YmxpY19hcGkuSW5jb3Jwb3JhdGVkRXh0ZXJuYWxTb3VyY2USKQoFbm9kZXMYBiADKAsyGi5wdWJsaWNfYXBpLkNoYXRSZXN1bHROb2RlEjQKC3N0b3BfcmVhc29uGAcgASgOMhoucHVibGljX2FwaS5DaGF0U3RvcFJlYXNvbkgAiAEBEiAKE3N1bW1hcml6ZV9hbmRfcmV0cnkYCCABKAhIAYgBAUIOCgxfc3RvcF9yZWFzb25CFgoUX3N1bW1hcml6ZV9hbmRfcmV0cnkiyQIKGUNoYXRSZXN1bHRCaWxsaW5nTWV0YWRhdGESGwoOdHJhbnNhY3Rpb25faWQYASABKAlIAIgBARIYChBjcmVkaXRzX2NvbnN1bWVkGAIgASgFEhAKCGNvc3RfdXNkGAcgASgJEikKCnVzYWdlX3VuaXQYCCABKA4yFS5wdWJsaWNfYXBpLlVzYWdlVW5pdBIhChRlZmZlY3RpdmVfbW9kZWxfbmFtZRgJIAEoCUgBiAEBQhEKD190cmFuc2FjdGlvbl9pZEIXChVfZWZmZWN0aXZlX21vZGVsX25hbWVKBAgDEARKBAgEEAVKBAgFEAZKBAgGEAdSDGlucHV0X3Rva2Vuc1INb3V0cHV0X3Rva2Vuc1IXY2FjaGVfcmVhZF9pbnB1dF90b2tlbnNSG2NhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyKSBAoOQ2hhdFJlc3VsdE5vZGUSCgoCaWQYASABKAUSLAoEdHlwZRgCIAEoDjIeLnB1YmxpY19hcGkuQ2hhdFJlc3VsdE5vZGVUeXBlEg8KB2NvbnRlbnQYAyABKAkSNAoIdG9vbF91c2UYBCABKAsyHS5wdWJsaWNfYXBpLkNoYXRSZXN1bHRUb29sVXNlSACIAQESNQoIdGhpbmtpbmcYBSABKAsyHi5wdWJsaWNfYXBpLkNoYXRSZXN1bHRUaGlua2luZ0gBiAEBEkQKEGJpbGxpbmdfbWV0YWRhdGEYBiABKAsyJS5wdWJsaWNfYXBpLkNoYXRSZXN1bHRCaWxsaW5nTWV0YWRhdGFIAogBARI5CghtZXRhZGF0YRgHIAEoCzIiLnB1YmxpY19hcGkuQ2hhdFJlc3VsdE5vZGVNZXRhZGF0YUgDiAEBEjoKC3Rva2VuX3VzYWdlGAggASgLMiAucHVibGljX2FwaS5DaGF0UmVzdWx0VG9rZW5Vc2FnZUgEiAEBEhkKDHRpbWVzdGFtcF9tcxgKIAEoBEgFiAEBQgsKCV90b29sX3VzZUILCglfdGhpbmtpbmdCEwoRX2JpbGxpbmdfbWV0YWRhdGFCCwoJX21ldGFkYXRhQg4KDF90b2tlbl91c2FnZUIPCg1fdGltZXN0YW1wX21zSgQICRAKUg1jb250ZXh0X3VzYWdlIqYBChZDaGF0UmVzdWx0Tm9kZU1ldGFkYXRhEhYKCW9wZW5haV9pZBgBIAEoCUgAiAEBEhYKCWdvb2dsZV90cxgCIAEoDEgBiAEBEhUKCHByb3ZpZGVyGAMgASgJSAKIAQESEgoFcGhhc2UYBCABKAlIA4gBAUIMCgpfb3BlbmFpX2lkQgwKCl9nb29nbGVfdHNCCwoJX3Byb3ZpZGVyQggKBl9waGFzZSLaAQoSQ2hhdFJlc3VsdFRoaW5raW5nEhQKB3N1bW1hcnkYASABKAlIAIgBARIeChFlbmNyeXB0ZWRfY29udGVudBgCIAEoCUgBiAEBEhQKB2NvbnRlbnQYAyABKAlIAogBARIpChxvcGVuYWlfcmVzcG9uc2VzX2FwaV9pdGVtX2lkGAQgASgJSAOIAQFCCgoIX3N1bW1hcnlCFAoSX2VuY3J5cHRlZF9jb250ZW50QgoKCF9jb250ZW50Qh8KHV9vcGVuYWlfcmVzcG9uc2VzX2FwaV9pdGVtX2lkIuAFChRDaGF0UmVzdWx0VG9rZW5Vc2FnZRIZCgxpbnB1dF90b2tlbnMYASABKAVIAIgBARIaCg1vdXRwdXRfdG9rZW5zGAIgASgFSAGIAQESJAoXY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMYAyABKAVIAogBARIoChtjYWNoZV9jcmVhdGlvbl9pbnB1dF90b2tlbnMYBCABKAVIA4gBARIhChRzeXN0ZW1fcHJvbXB0X3Rva2VucxgFIAEoBUgEiAEBEiAKE2NoYXRfaGlzdG9yeV90b2tlbnMYBiABKAVIBYgBARIjChZjdXJyZW50X21lc3NhZ2VfdG9rZW5zGAcgASgFSAaIAQESHwoSbWF4X2NvbnRleHRfdG9rZW5zGAggASgFSAeIAQESJAoXdG9vbF9kZWZpbml0aW9uc190b2tlbnMYCSABKAVICIgBARIfChJ0b29sX3Jlc3VsdF90b2tlbnMYCiABKAVICYgBARImChlhc3Npc3RhbnRfcmVzcG9uc2VfdG9rZW5zGAsgASgFSAqIAQESHgoRbWF4X291dHB1dF90b2tlbnMYDSABKAVIC4gBAUIPCg1faW5wdXRfdG9rZW5zQhAKDl9vdXRwdXRfdG9rZW5zQhoKGF9jYWNoZV9yZWFkX2lucHV0X3Rva2Vuc0IeChxfY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zQhcKFV9zeXN0ZW1fcHJvbXB0X3Rva2Vuc0IWChRfY2hhdF9oaXN0b3J5X3Rva2Vuc0IZChdfY3VycmVudF9tZXNzYWdlX3Rva2Vuc0IVChNfbWF4X2NvbnRleHRfdG9rZW5zQhoKGF90b29sX2RlZmluaXRpb25zX3Rva2Vuc0IVChNfdG9vbF9yZXN1bHRfdG9rZW5zQhwKGl9hc3Npc3RhbnRfcmVzcG9uc2VfdG9rZW5zQhQKEl9tYXhfb3V0cHV0X3Rva2VucyJjChFDaGF0UmVzdWx0VG9vbFVzZRITCgt0b29sX3VzZV9pZBgBIAEoCRIRCgl0b29sX25hbWUYAiABKAkSEgoKaW5wdXRfanNvbhgDIAEoCRISCgppc19wYXJ0aWFsGAQgASgIIlwKFkNoZWNrVG9vbFNhZmV0eVJlcXVlc3QSKQoHdG9vbF9pZBgBIAEoDjIYLnB1YmxpY19hcGkuUmVtb3RlVG9vbElkEhcKD3Rvb2xfaW5wdXRfanNvbhgCIAEoCSIqChdDaGVja1Rvb2xTYWZldHlSZXNwb25zZRIPCgdpc19zYWZlGAEgASgIIjoKFkNoZWNrcG9pbnRCbG9ic1JlcXVlc3QSIAoFYmxvYnMYASABKAsyES5wdWJsaWNfYXBpLkJsb2JzIjQKF0NoZWNrcG9pbnRCbG9ic1Jlc3BvbnNlEhkKEW5ld19jaGVja3BvaW50X2lkGAEgASgJIpACChhDbGllbnRDb21wbGV0aW9uVGltZWxpbmUSEgoKcmVxdWVzdF9pZBgBIAEoCRIgChhpbml0aWFsX3JlcXVlc3RfdGltZV9zZWMYAiABKAMSIQoZaW5pdGlhbF9yZXF1ZXN0X3RpbWVfbnNlYxgDIAEoBRIaChJhcGlfc3RhcnRfdGltZV9zZWMYBCABKAMSGwoTYXBpX3N0YXJ0X3RpbWVfbnNlYxgFIAEoBRIYChBhcGlfZW5kX3RpbWVfc2VjGAYgASgDEhkKEWFwaV9lbmRfdGltZV9uc2VjGAcgASgFEhUKDWVtaXRfdGltZV9zZWMYCCABKAMSFgoOZW1pdF90aW1lX25zZWMYCSABKAUiWgofQ2xpZW50Q29tcGxldGlvblRpbWVsaW5lUmVxdWVzdBI3Cgl0aW1lbGluZXMYASADKAsyJC5wdWJsaWNfYXBpLkNsaWVudENvbXBsZXRpb25UaW1lbGluZSIiCiBDbGllbnRDb21wbGV0aW9uVGltZWxpbmVSZXNwb25zZSI6ChJDbGllbnRNZXRyaWNzRXZlbnQSFQoNY2xpZW50X21ldHJpYxgBIAEoCRINCgV2YWx1ZRgCIAEoBCJHChRDbGllbnRNZXRyaWNzUmVxdWVzdBIvCgdtZXRyaWNzGAEgAygLMh4ucHVibGljX2FwaS5DbGllbnRNZXRyaWNzRXZlbnQiFwoVQ2xpZW50TWV0cmljc1Jlc3BvbnNlIq8BChBDbG91ZEFjY2Vzc0VudHJ5EhYKDnByaW5jaXBhbF90eXBlGAEgASgJEhQKDHByaW5jaXBhbF9pZBgCIAEoCRIMCgRyb2xlGAMgASgJEhIKCmdyYW50ZWRfYnkYBCABKAkSEgoKY3JlYXRlZF9hdBgFIAEoCRIXCg9wcmluY2lwYWxfZW1haWwYBiABKAkSHgoWcHJpbmNpcGFsX2Rpc3BsYXlfbmFtZRgHIAEoCSKEAQoXQ2xvdWRBY2Nlc3NHcmFudFJlcXVlc3QSEwoLb2JqZWN0X3R5cGUYASABKAkSEQoJb2JqZWN0X2lkGAIgASgJEjMKCXByaW5jaXBhbBgDIAEoCzIgLnB1YmxpY19hcGkuQ2xvdWRBY2Nlc3NQcmluY2lwYWwSDAoEcm9sZRgEIAEoCSIaChhDbG91ZEFjY2Vzc0dyYW50UmVzcG9uc2UiQAoWQ2xvdWRBY2Nlc3NMaXN0UmVxdWVzdBITCgtvYmplY3RfdHlwZRgBIAEoCRIRCglvYmplY3RfaWQYAiABKAkiSAoXQ2xvdWRBY2Nlc3NMaXN0UmVzcG9uc2USLQoHZW50cmllcxgBIAMoCzIcLnB1YmxpY19hcGkuQ2xvdWRBY2Nlc3NFbnRyeSK3AQoUQ2xvdWRBY2Nlc3NQcmluY2lwYWwSEQoHdXNlcl9pZBgBIAEoCUgAEg8KBWVtYWlsGAIgASgJSAASEAoGdGVuYW50GAMgASgISAASEgoIZ3JvdXBfaWQYBCABKAlIABIcChJzZXJ2aWNlX2FjY291bnRfaWQYBSABKAlIABIPCgVncm91cBgGIAEoCUgAEhkKD3NlcnZpY2VfYWNjb3VudBgHIAEoCUgAQgsKCXByaW5jaXBhbCJ3ChhDbG91ZEFjY2Vzc1Jldm9rZVJlcXVlc3QSEwoLb2JqZWN0X3R5cGUYASABKAkSEQoJb2JqZWN0X2lkGAIgASgJEjMKCXByaW5jaXBhbBgDIAEoCzIgLnB1YmxpY19hcGkuQ2xvdWRBY2Nlc3NQcmluY2lwYWwiGwoZQ2xvdWRBY2Nlc3NSZXZva2VSZXNwb25zZSKuBQoKQ2xvdWRBZ2VudBIQCghhZ2VudF9pZBgBIAEoCRISCgphZ2VudF9uYW1lGAIgASgJEjYKDGNhcGFiaWxpdGllcxgDIAMoDjIgLnB1YmxpY19hcGkuQ2xvdWRBZ2VudENhcGFiaWxpdHkSLAoGc3RhdHVzGAQgASgOMhwucHVibGljX2FwaS5DbG91ZEFnZW50U3RhdHVzEi4KCmNyZWF0ZWRfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhMKC3dvcmtmbG93X2lkGAcgASgJEhkKDW1lc3NhZ2VfY291bnQYCCABKA1CAhgBEhEKCWV4cGVydF9pZBgJIAEoCRIdChVleGVjdXRpb25fZW52aXJvbm1lbnQYCiABKAkSEAoIYXJjaGl2ZWQYCyABKAgSEAoIc3BhY2VfaWQYDCABKAkSFgoOZW52aXJvbm1lbnRfaWQYDSABKAkSEQoJZGFlbW9uX2lkGA4gASgJEhYKDmRhZW1vbl9wb29sX2lkGA8gASgJEhMKC3Jlc2lkZW50X2lkGBAgASgJEhEKCXZtX3N0YXR1cxgRIAEoCRIYChB2bV9lcnJvcl9tZXNzYWdlGBIgASgJEj4KEHZtX2Vycm9yX2RldGFpbHMYEyABKAsyJC5wdWJsaWNfYXBpLkNsb3VkQWdlbnRWbUVycm9yRGV0YWlscxIXCg9wYXJlbnRfYWdlbnRfaWQYFCABKAkSEgoFbW9kZWwYFSABKAlIAIgBARIdChByZWFzb25pbmdfZWZmb3J0GBYgASgJSAGIAQFCCAoGX21vZGVsQhMKEV9yZWFzb25pbmdfZWZmb3J0InAKF0Nsb3VkQWdlbnRTZXNzaW9uQ29uZmlnEjcKD2FnZW50X2xvb3BfdHlwZRgBIAEoDjIeLnB1YmxpY19hcGkuQ2xvdWRBZ2VudExvb3BUeXBlEhIKBW1vZGVsGAIgASgJSACIAQFCCAoGX21vZGVsInEKGENsb3VkQWdlbnRWbUVycm9yRGV0YWlscxIPCgdzdW1tYXJ5GAEgASgJEgwKBGhpbnQYAiABKAkSEQoJcmF3X2Vycm9yGAMgASgJEhEKCWJ1aWxkX2xvZxgEIAEoCRIQCghidWlsZF9pZBgFIAEoCSIyCh5DbG91ZEFnZW50c0FyY2hpdmVBZ2VudFJlcXVlc3QSEAoIYWdlbnRfaWQYASABKAkiMwofQ2xvdWRBZ2VudHNBcmNoaXZlQWdlbnRSZXNwb25zZRIQCghhZ2VudF9pZBgBIAEoCSI0CiRDbG91ZEFnZW50c0F6dXJlRGV2T3BzUHJvdmlkZXJQYXJhbXMSDAoEaG9zdBgBIAEoCSI8CidDbG91ZEFnZW50c0JhdGNoR2V0TWVzc2FnZUNvdW50c1JlcXVlc3QSEQoJYWdlbnRfaWRzGAEgAygJIskBCihDbG91ZEFnZW50c0JhdGNoR2V0TWVzc2FnZUNvdW50c1Jlc3BvbnNlEmUKEmNvdW50c19ieV9hZ2VudF9pZBgBIAMoCzJJLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNCYXRjaEdldE1lc3NhZ2VDb3VudHNSZXNwb25zZS5Db3VudHNCeUFnZW50SWRFbnRyeRo2ChRDb3VudHNCeUFnZW50SWRFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKA06AjgBIssCChdDbG91ZEFnZW50c0NvbnRlbnRCbG9jaxIwCgR0ZXh0GAEgASgLMiAucHVibGljX2FwaS5DbG91ZEFnZW50c1RleHRCbG9ja0gAEjcKCHRvb2xfdXNlGAIgASgLMiMucHVibGljX2FwaS5DbG91ZEFnZW50c1Rvb2xVc2VCbG9ja0gAEj0KC3Rvb2xfcmVzdWx0GAMgASgLMiYucHVibGljX2FwaS5DbG91ZEFnZW50c1Rvb2xSZXN1bHRCbG9ja0gAEjgKCHRoaW5raW5nGAQgASgLMiQucHVibGljX2FwaS5DbG91ZEFnZW50c1RoaW5raW5nQmxvY2tIABJDCg5leHRlcm5hbF9ldmVudBgFIAEoCzIpLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNFeHRlcm5hbEV2ZW50QmxvY2tIAEIHCgVibG9jayK2AgodQ2xvdWRBZ2VudHNDcmVhdGVBZ2VudFJlcXVlc3QSEgoKYWdlbnRfbmFtZRgBIAEoCRI2CgxjYXBhYmlsaXRpZXMYAiADKA4yIC5wdWJsaWNfYXBpLkNsb3VkQWdlbnRDYXBhYmlsaXR5EhwKD2luaXRpYWxfbWVzc2FnZRgDIAEoCUgAiAEBEkAKDnNlc3Npb25fY29uZmlnGAQgASgLMiMucHVibGljX2FwaS5DbG91ZEFnZW50U2Vzc2lvbkNvbmZpZ0gBiAEBEhwKD2lkZW1wb3RlbmN5X2tleRgFIAEoCUgCiAEBEhAKCHNwYWNlX2lkGAYgASgJQhIKEF9pbml0aWFsX21lc3NhZ2VCEQoPX3Nlc3Npb25fY29uZmlnQhIKEF9pZGVtcG90ZW5jeV9rZXkiRwoeQ2xvdWRBZ2VudHNDcmVhdGVBZ2VudFJlc3BvbnNlEiUKBWFnZW50GAEgASgLMhYucHVibGljX2FwaS5DbG91ZEFnZW50IjEKHUNsb3VkQWdlbnRzRGVsZXRlQWdlbnRSZXF1ZXN0EhAKCGFnZW50X2lkGAEgASgJIkMKHkNsb3VkQWdlbnRzRGVsZXRlQWdlbnRSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEhAKCGFnZW50X2lkGAIgASgJIpcBCh1DbG91ZEFnZW50c0V4dGVybmFsRXZlbnRCbG9jaxIOCgZzb3VyY2UYASABKAkSEgoKZXZlbnRfdHlwZRgCIAEoCRIPCgdzdW1tYXJ5GAMgASgJEg8KB2RldGFpbHMYBCABKAkSHAoPc3Vic2NyaXB0aW9uX2lkGAUgASgJSACIAQFCEgoQX3N1YnNjcmlwdGlvbl9pZCIuChpDbG91ZEFnZW50c0dldEFnZW50UmVxdWVzdBIQCghhZ2VudF9pZBgBIAEoCSJEChtDbG91ZEFnZW50c0dldEFnZW50UmVzcG9uc2USJQoFYWdlbnQYASABKAsyFi5wdWJsaWNfYXBpLkNsb3VkQWdlbnQi5wIKHUNsb3VkQWdlbnRzR2V0TWVzc2FnZXNSZXF1ZXN0EhAKCGFnZW50X2lkGAEgASgJEiEKEGFmdGVyX21lc3NhZ2VfaWQYAiABKAlCAhgBSACIAQESEgoFbGltaXQYAyABKA1IAYgBARI4Cg9hZnRlcl90aW1lc3RhbXAYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESOQoQYmVmb3JlX3RpbWVzdGFtcBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIA4gBARIkChdpbmNsdWRlX3JlcGxheV9maWRlbGl0eRgGIAEoCEgEiAEBQhMKEV9hZnRlcl9tZXNzYWdlX2lkQggKBl9saW1pdEISChBfYWZ0ZXJfdGltZXN0YW1wQhMKEV9iZWZvcmVfdGltZXN0YW1wQhoKGF9pbmNsdWRlX3JlcGxheV9maWRlbGl0eSKHBAoeQ2xvdWRBZ2VudHNHZXRNZXNzYWdlc1Jlc3BvbnNlEjAKCG1lc3NhZ2VzGAEgAygLMh4ucHVibGljX2FwaS5DbG91ZEFnZW50c01lc3NhZ2USEAoIaGFzX25leHQYAiABKAgSHQoQZmlyc3RfbWVzc2FnZV9pZBgDIAEoCUgAiAEBEhwKD2xhc3RfbWVzc2FnZV9pZBgEIAEoCUgBiAEBEjIKDGFnZW50X3N0YXR1cxgFIAEoDjIcLnB1YmxpY19hcGkuQ2xvdWRBZ2VudFN0YXR1cxI+ChBwZW5kaW5nX21lc3NhZ2VzGAYgAygLMiQucHVibGljX2FwaS5DbG91ZEFnZW50c1F1ZXVlZE1lc3NhZ2USFAoMcXVldWVfcGF1c2VkGAcgASgIEhEKCWhhc19uZXdlchgIIAEoCBI5ChBvbGRlc3RfdGltZXN0YW1wGAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBEjkKEG5ld2VzdF90aW1lc3RhbXAYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAOIAQFCEwoRX2ZpcnN0X21lc3NhZ2VfaWRCEgoQX2xhc3RfbWVzc2FnZV9pZEITChFfb2xkZXN0X3RpbWVzdGFtcEITChFfbmV3ZXN0X3RpbWVzdGFtcCJrCiNDbG91ZEFnZW50c0dldE1lc3NhZ2VzU3RyZWFtUmVxdWVzdBIQCghhZ2VudF9pZBgBIAEoCRIdChBhZnRlcl9tZXNzYWdlX2lkGAIgASgJSACIAQFCEwoRX2FmdGVyX21lc3NhZ2VfaWQi1wEKJENsb3VkQWdlbnRzR2V0TWVzc2FnZXNTdHJlYW1SZXNwb25zZRIQCghhZ2VudF9pZBgBIAEoCRIwCghtZXNzYWdlcxgCIAMoCzIeLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNNZXNzYWdlEh0KFXBlbmRpbmdfbWVzc2FnZV9jb3VudBgDIAEoDRIeChFsYXRlc3RfbWVzc2FnZV9pZBgEIAEoCUgAiAEBEhYKDnN0cmVhbV90aW1lb3V0GAUgASgIQhQKEl9sYXRlc3RfbWVzc2FnZV9pZCI+Ch9DbG91ZEFnZW50c0dpdEh1YlByb3ZpZGVyUGFyYW1zEgwKBGhvc3QYASABKAkSDQoFb3duZXIYAiABKAkiLwofQ2xvdWRBZ2VudHNHaXRMYWJQcm92aWRlclBhcmFtcxIMCgRob3N0GAEgASgJIroCCiNDbG91ZEFnZW50c0hhbmRvZmZUb1Bvc2VpZG9uUmVxdWVzdBIYChB0YXNrX2Rlc2NyaXB0aW9uGAEgASgJEhgKEGluaXRpYWxfbWVzc2FnZXMYAiADKAkSFgoJZXhwZXJ0X2lkGAMgASgJSACIAQESFwoKYWdlbnRfbmFtZRgEIAEoCUgBiAEBEhUKDXRvdWNoZWRfZmlsZXMYBSADKAkSHwoSd29ya2luZ190cmVlX3BhdGNoGAYgASgJSAKIAQESJQoYZXhpc3RpbmdfY29udmVyc2F0aW9uX2lkGAcgASgJSAOIAQFCDAoKX2V4cGVydF9pZEINCgtfYWdlbnRfbmFtZUIVChNfd29ya2luZ190cmVlX3BhdGNoQhsKGV9leGlzdGluZ19jb252ZXJzYXRpb25faWQiOAokQ2xvdWRBZ2VudHNIYW5kb2ZmVG9Qb3NlaWRvblJlc3BvbnNlEhAKCGFnZW50X2lkGAEgASgJIoADChxDbG91ZEFnZW50c0xpc3RBZ2VudHNSZXF1ZXN0EhQKDHNlYXJjaF9xdWVyeRgBIAEoCRIYChBpbmNsdWRlX2FyY2hpdmVkGAIgASgIEhEKCWV4cGVydF9pZBgDIAEoCRIxCg1jcmVhdGVkX2FmdGVyGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIyCg5jcmVhdGVkX2JlZm9yZRgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASFgoOaW5jbHVkZV9zaGFyZWQYBiABKAgSGwoTaW5jbHVkZV9vbGFjX3NoYXJlZBgHIAEoCBINCgVsaW1pdBgIIAEoDRISCgpwYWdlX3Rva2VuGAkgASgJEhAKCHNwYWNlX2lkGAogASgJEhoKEmRlZmF1bHRfc3BhY2Vfb25seRgLIAEoCBIcCg9wYXJlbnRfYWdlbnRfaWQYDCABKAlIAIgBAUISChBfcGFyZW50X2FnZW50X2lkInIKHUNsb3VkQWdlbnRzTGlzdEFnZW50c1Jlc3BvbnNlEiYKBmFnZW50cxgBIAMoCzIWLnB1YmxpY19hcGkuQ2xvdWRBZ2VudBIQCghoYXNfbW9yZRgCIAEoCBIXCg9uZXh0X3BhZ2VfdG9rZW4YAyABKAki0QEKI0Nsb3VkQWdlbnRzTWNwQ3JlZGVudGlhbFJlcXVpcmVtZW50EhYKDnJlcXVpcmVtZW50X2lkGAEgASgJEhUKDW1jcF9jb25maWdfaWQYAiABKAkSFAoMZGlzcGxheV9uYW1lGAMgASgJEhEKCWF1dGhfdHlwZRgEIAEoBRIOCgZyZWFzb24YBSABKAkSLgoKZXhwaXJlc19hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASEgoKcmVxdWVzdF9pZBgHIAEoCSJWChtDbG91ZEFnZW50c01jcFRvb2xSZWZlcmVuY2USEQoJc2VydmVyX2lkGAEgASgJEhYKCXRvb2xfbmFtZRgCIAEoCUgAiAEBQgwKCl90b29sX25hbWUijAIKEkNsb3VkQWdlbnRzTWVzc2FnZRIKCgJpZBgBIAEoCRIMCgRyb2xlGAIgASgJEjQKB2NvbnRlbnQYAyADKAsyIy5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzQ29udGVudEJsb2NrEi4KCmNyZWF0ZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEj0KCG1ldGFkYXRhGAUgASgLMiYucHVibGljX2FwaS5DbG91ZEFnZW50c01lc3NhZ2VNZXRhZGF0YUgAiAEBEhkKDGNvbXBvc2l0ZV9pZBgGIAEoCUgBiAEBQgsKCV9tZXRhZGF0YUIPCg1fY29tcG9zaXRlX2lkIs4BCiFDbG91ZEFnZW50c01lc3NhZ2VCaWxsaW5nTWV0YWRhdGESFgoOdHJhbnNhY3Rpb25faWQYASABKAkSGAoQY3JlZGl0c19jb25zdW1lZBgCIAEoBRIQCghjb3N0X3VzZBgDIAEoCRIpCgp1c2FnZV91bml0GAQgASgOMhUucHVibGljX2FwaS5Vc2FnZVVuaXQSIQoUZWZmZWN0aXZlX21vZGVsX25hbWUYBSABKAlIAIgBAUIXChVfZWZmZWN0aXZlX21vZGVsX25hbWUi2AUKGkNsb3VkQWdlbnRzTWVzc2FnZU1ldGFkYXRhEhcKCnJlcXVlc3RfaWQYASABKAlIAIgBARIYCgtzdG9wX3JlYXNvbhgCIAEoCUgBiAEBEhIKBW1vZGVsGAMgASgJSAKIAQESOwoLdG9rZW5fdXNhZ2UYBCABKAsyIS5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzVG9rZW5Vc2FnZUgDiAEBEhwKD3R1cm5fcmVxdWVzdF9pZBgFIAEoCUgEiAEBEhcKCmlzX3BhcnRpYWwYBiABKAhIBYgBARIVCghpc19maW5hbBgHIAEoCEgGiAEBEigKG3BlcnNpc3RlZF90aHJvdWdoX2V2ZW50X3NlcRgIIAEoA0gHiAEBEhwKD3N1YnNjcmlwdGlvbl9pZBgJIAEoCUgIiAEBEhsKDnNlbmRlcl91c2VyX2lkGAogASgJSAmIAQESRwoQYmlsbGluZ19tZXRhZGF0YRgLIAMoCzItLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNNZXNzYWdlQmlsbGluZ01ldGFkYXRhEkQKE3Zmc19maWxlX3JlZmVyZW5jZXMYDCADKAsyJy5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzVmZzRmlsZVJlZmVyZW5jZRJEChNtY3BfdG9vbF9yZWZlcmVuY2VzGA0gAygLMicucHVibGljX2FwaS5DbG91ZEFnZW50c01jcFRvb2xSZWZlcmVuY2VCDQoLX3JlcXVlc3RfaWRCDgoMX3N0b3BfcmVhc29uQggKBl9tb2RlbEIOCgxfdG9rZW5fdXNhZ2VCEgoQX3R1cm5fcmVxdWVzdF9pZEINCgtfaXNfcGFydGlhbEILCglfaXNfZmluYWxCHgocX3BlcnNpc3RlZF90aHJvdWdoX2V2ZW50X3NlcUISChBfc3Vic2NyaXB0aW9uX2lkQhEKD19zZW5kZXJfdXNlcl9pZCJQChlDbG91ZEFnZW50c1Byb3ZpZGVyUGFyYW1zEhAKCHByb3ZpZGVyGAEgASgJEgwKBGhvc3QYAiABKAkSEwoLcGF0aF9wcmVmaXgYAyABKAkibgoYQ2xvdWRBZ2VudHNRdWV1ZWRNZXNzYWdlEhAKCGV2ZW50X2lkGAEgASgJEi8KC3JlY2VpdmVkX2F0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIPCgdjb250ZW50GAMgASgJIq4DCidDbG91ZEFnZW50c1JlZnJlc2hHaXRDcmVkZW50aWFsc1JlcXVlc3QSPQoGZ2l0aHViGAMgASgLMisucHVibGljX2FwaS5DbG91ZEFnZW50c0dpdEh1YlByb3ZpZGVyUGFyYW1zSAASPQoGZ2l0bGFiGAQgASgLMisucHVibGljX2FwaS5DbG91ZEFnZW50c0dpdExhYlByb3ZpZGVyUGFyYW1zSAASSAoMYXp1cmVfZGV2b3BzGAUgASgLMjAucHVibGljX2FwaS5DbG91ZEFnZW50c0F6dXJlRGV2T3BzUHJvdmlkZXJQYXJhbXNIABI4CgdnZW5lcmljGAkgASgLMiUucHVibGljX2FwaS5DbG91ZEFnZW50c1Byb3ZpZGVyUGFyYW1zSAASHgoWY2FwYWJpbGl0eV9pbnN0YW5jZV9pZBgBIAEoCRISCgpza2lwX2NhY2hlGAIgASgIEhAKCGFnZW50X2lkGAYgASgJEhIKCnJlcXVlc3RfaWQYByABKAkSFAoMZGFlbW9uX3ZtX2lkGAggASgJQhEKD3Byb3ZpZGVyX3BhcmFtcyIqCihDbG91ZEFnZW50c1JlZnJlc2hHaXRDcmVkZW50aWFsc1Jlc3BvbnNlIkMKHUNsb3VkQWdlbnRzUmVuYW1lQWdlbnRSZXF1ZXN0EhAKCGFnZW50X2lkGAEgASgJEhAKCG5ld19uYW1lGAIgASgJIkcKHkNsb3VkQWdlbnRzUmVuYW1lQWdlbnRSZXNwb25zZRIlCgVhZ2VudBgBIAEoCzIWLnB1YmxpY19hcGkuQ2xvdWRBZ2VudCJhCiJDbG91ZEFnZW50c1JlcXVlc3RNY3BTZXJ2ZXJSZXF1ZXN0EhAKCGFnZW50X2lkGAEgASgJEhUKDW1jcF9jb25maWdfaWQYAiABKAkSEgoKcmVxdWVzdF9pZBgDIAEoCSKmAQojQ2xvdWRBZ2VudHNSZXF1ZXN0TWNwU2VydmVyUmVzcG9uc2USDgoGc3RhdHVzGAEgASgJElQKFmNyZWRlbnRpYWxfcmVxdWlyZW1lbnQYAiABKAsyLy5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzTWNwQ3JlZGVudGlhbFJlcXVpcmVtZW50SACIAQFCGQoXX2NyZWRlbnRpYWxfcmVxdWlyZW1lbnQidAodQ2xvdWRBZ2VudHNTZW5kTWVzc2FnZVJlcXVlc3QSEAoIYWdlbnRfaWQYASABKAkSDwoHbWVzc2FnZRgCIAEoCRIcCg9pZGVtcG90ZW5jeV9rZXkYAyABKAlIAIgBAUISChBfaWRlbXBvdGVuY3lfa2V5ImsKHkNsb3VkQWdlbnRzU2VuZE1lc3NhZ2VSZXNwb25zZRIlCgVhZ2VudBgBIAEoCzIWLnB1YmxpY19hcGkuQ2xvdWRBZ2VudBIOCgZxdWV1ZWQYAiABKAgSEgoKcmVxdWVzdF9pZBgDIAEoCSKOAQoUQ2xvdWRBZ2VudHNUZXh0QmxvY2sSDAoEdGV4dBgBIAEoCRIWCglnb29nbGVfdHMYAiABKAxIAIgBARIWCglvcGVuYWlfaWQYAyABKAlIAYgBARISCgVwaGFzZRgEIAEoCUgCiAEBQgwKCl9nb29nbGVfdHNCDAoKX29wZW5haV9pZEIICgZfcGhhc2UizQEKGENsb3VkQWdlbnRzVGhpbmtpbmdCbG9jaxIPCgdjb250ZW50GAEgASgJEhQKB3N1bW1hcnkYAiABKAlIAIgBARIeChFlbmNyeXB0ZWRfY29udGVudBgDIAEoCUgBiAEBEhUKCHByb3ZpZGVyGAQgASgJSAKIAQESFgoJb3BlbmFpX2lkGAUgASgJSAOIAQFCCgoIX3N1bW1hcnlCFAoSX2VuY3J5cHRlZF9jb250ZW50QgsKCV9wcm92aWRlckIMCgpfb3BlbmFpX2lkIvwCChVDbG91ZEFnZW50c1Rva2VuVXNhZ2USFAoMaW5wdXRfdG9rZW5zGAEgASgNEhUKDW91dHB1dF90b2tlbnMYAiABKA0SHwoXY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMYAyABKA0SIwobY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zGAQgASgNEhwKFHN5c3RlbV9wcm9tcHRfdG9rZW5zGAUgASgNEhsKE2NoYXRfaGlzdG9yeV90b2tlbnMYBiABKA0SHgoWY3VycmVudF9tZXNzYWdlX3Rva2VucxgHIAEoDRIaChJtYXhfY29udGV4dF90b2tlbnMYCCABKA0SHwoXdG9vbF9kZWZpbml0aW9uc190b2tlbnMYCSABKA0SGgoSdG9vbF9yZXN1bHRfdG9rZW5zGAogASgNEiEKGWFzc2lzdGFudF9yZXNwb25zZV90b2tlbnMYCyABKA0SGQoRbWF4X291dHB1dF90b2tlbnMYDCABKA0iZgoaQ2xvdWRBZ2VudHNUb29sUmVzdWx0QmxvY2sSEwoLdG9vbF91c2VfaWQYASABKAkSDwoHY29udGVudBgCIAEoCRIVCghpc19lcnJvchgDIAEoCEgAiAEBQgsKCV9pc19lcnJvciKsAQoXQ2xvdWRBZ2VudHNUb29sVXNlQmxvY2sSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRINCgVpbnB1dBgDIAEoCRIWCglnb29nbGVfdHMYBCABKAxIAIgBARIWCglvcGVuYWlfaWQYBSABKAlIAYgBARISCgVwaGFzZRgGIAEoCUgCiAEBQgwKCl9nb29nbGVfdHNCDAoKX29wZW5haV9pZEIICgZfcGhhc2UiNAogQ2xvdWRBZ2VudHNVbmFyY2hpdmVBZ2VudFJlcXVlc3QSEAoIYWdlbnRfaWQYASABKAkiNQohQ2xvdWRBZ2VudHNVbmFyY2hpdmVBZ2VudFJlc3BvbnNlEhAKCGFnZW50X2lkGAEgASgJImgKKENsb3VkQWdlbnRzVXBkYXRlQWdlbnRTZXNzaW9uVGFnc1JlcXVlc3QSEAoIYWdlbnRfaWQYASABKAkSCwoDa2V5GAIgASgJEg0KBXZhbHVlGAMgASgJEg4KBmRlbGV0ZRgEIAEoCCJSCilDbG91ZEFnZW50c1VwZGF0ZUFnZW50U2Vzc2lvblRhZ3NSZXNwb25zZRIlCgVhZ2VudBgBIAEoCzIWLnB1YmxpY19hcGkuQ2xvdWRBZ2VudCJ2CiVDbG91ZEFnZW50c1VwZGF0ZVNlc3Npb25Db25maWdSZXF1ZXN0EhAKCGFnZW50X2lkGAEgASgJEjsKDnNlc3Npb25fY29uZmlnGAIgASgLMiMucHVibGljX2FwaS5DbG91ZEFnZW50U2Vzc2lvbkNvbmZpZyJPCiZDbG91ZEFnZW50c1VwZGF0ZVNlc3Npb25Db25maWdSZXNwb25zZRIlCgVhZ2VudBgBIAEoCzIWLnB1YmxpY19hcGkuQ2xvdWRBZ2VudCJ1ChtDbG91ZEFnZW50c1Zmc0ZpbGVSZWZlcmVuY2USDwoHZmlsZV9pZBgBIAEoCRIVCg1maWxlc3lzdGVtX2lkGAIgASgJEgwKBHBhdGgYAyABKAkSEAoIc3BhY2VfaWQYBCABKAkSDgoGaXNfZGlyGAUgASgIIvkCCg9DbG91ZERhZW1vblBvb2wSCgoCaWQYASABKAkSFAoMZGlzcGxheV9uYW1lGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEhIKCnZpc2liaWxpdHkYBCABKAUSGgoSY3JlYXRlZF9ieV91c2VyX2lkGAUgASgJEhwKFGNyZWF0ZWRfYnlfdXNlcl9uYW1lGAYgASgJEhIKCmNyZWF0ZWRfYXQYByABKAkSEgoKdXBkYXRlZF9hdBgIIAEoCRIYChByZXNvdXJjZV92ZXJzaW9uGAkgASgDEhIKCmRlbGV0ZWRfYXQYCiABKAkSIAoYZGFlbW9uX2Nvbm5lY3Rvcl91c2VyX2lkGAsgASgJEhAKCHNwYWNlX2lkGAwgASgJElcKGndvcmtzcGFjZV9pc29sYXRpb25fcG9saWN5GA0gASgOMjMucHVibGljX2FwaS5DbG91ZERhZW1vblBvb2xXb3Jrc3BhY2VJc29sYXRpb25Qb2xpY3kiXwodQ2xvdWREYWVtb25Qb29sQ29ubmVjdG9ySW5wdXQSEQoHdXNlcl9pZBgBIAEoCUgAEh4KFHNlcnZpY2VfYWNjb3VudF9uYW1lGAIgASgJSABCCwoJY29ubmVjdG9yIssBChVDbG91ZERhZW1vblBvb2xEYWVtb24SDQoFdm1faWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtzbG90c190b3RhbBgDIAEoBRIUCgxzbG90c19pbl91c2UYBCABKAUSFgoOd29ya3NwYWNlX3BhdGgYBSABKAkSFAoMY29ubmVjdGVkX2F0GAYgASgJEhYKDmxhc3RfaGVhcnRiZWF0GAcgASgJEg8KB3Bvb2xfaWQYCCABKAkSEwoLY2xpX3ZlcnNpb24YCSABKAkiwgEKFUNsb3VkRGFlbW9uUG9vbFN0YXR1cxIWCg5kYWVtb25zX29ubGluZRgBIAEoBRITCgtzbG90c190b3RhbBgCIAEoBRIUCgxzbG90c19pbl91c2UYAyABKAUSGAoQbGFzdF9kYWVtb25fc2VlbhgEIAEoCRIqCh13b3JrdHJlZV9jYXBhYmxlX2RhZW1vbl9jb3VudBgFIAEoBUgAiAEBQiAKHl93b3JrdHJlZV9jYXBhYmxlX2RhZW1vbl9jb3VudCLeBQoQQ2xvdWRFbnZpcm9ubWVudBIQCghpbWFnZV9pZBgBIAEoCRIUCgxkaXNwbGF5X25hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSFwoPY3VycmVudF92ZXJzaW9uGAQgASgJEhIKBnN0YXR1cxgFIAEoBUICGAESEgoKdmlzaWJpbGl0eRgGIAEoBRIWCg5tb2RhbF9pbWFnZV9pZBgHIAEoCRISCgpjcmVhdGVkX2F0GAggASgJEhIKCnVwZGF0ZWRfYXQYCSABKAkSGAoQcmVzb3VyY2VfdmVyc2lvbhgKIAEoAxI6CgVyZXBvcxgLIAMoCzIrLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudENsb25lUmVwb3NpdG9yeRJEChVlbnZpcm9ubWVudF92YXJpYWJsZXMYDCABKAsyJS5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRWYXJpYWJsZXMSEgoKYmFzZV9pbWFnZRgNIAEoCRIXCg9yZWZyZXNoX2VuYWJsZWQYDiABKAgSEAoIc3BhY2VfaWQYDyABKAkSNAoEdGFncxgQIAMoCzImLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudC5UYWdzRW50cnkSPAoQbGlmZWN5Y2xlX3N0YXR1cxgRIAEoDjIiLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudFN0YXR1cxIbChNzYW5kYm94X3Byb3ZpZGVyX2lkGBIgASgJEjoKEHNhbmRib3hfcHJvdmlkZXIYEyABKAsyIC5wdWJsaWNfYXBpLkNsb3VkU2FuZGJveFByb3ZpZGVyEjcKCXZtX2NvbmZpZxgUIAEoCzIkLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudFZNQ29uZmlnGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIm0KH0Nsb3VkRW52aXJvbm1lbnRDbG9uZVJlcG9zaXRvcnkSDQoFb3duZXIYASABKAkSDAoEbmFtZRgCIAEoCRIOCgZicmFuY2gYAyABKAkSDAoEaG9zdBgEIAEoCRIPCgdwcm9qZWN0GAUgASgJItcDChZDbG91ZEVudmlyb25tZW50Q29uZmlnEhQKDGRpc3BsYXlfbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRISCgp2aXNpYmlsaXR5GAMgASgFEjoKBXJlcG9zGAQgAygLMisucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50Q2xvbmVSZXBvc2l0b3J5EkQKFWVudmlyb25tZW50X3ZhcmlhYmxlcxgFIAEoCzIlLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudFZhcmlhYmxlcxISCgpiYXNlX2ltYWdlGAYgASgJEhcKD3JlZnJlc2hfZW5hYmxlZBgHIAEoCBIQCghzcGFjZV9pZBgIIAEoCRI6CgR0YWdzGAkgAygLMiwucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50Q29uZmlnLlRhZ3NFbnRyeRIbChNzYW5kYm94X3Byb3ZpZGVyX2lkGAogASgJEjcKCXZtX2NvbmZpZxgLIAEoCzIkLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudFZNQ29uZmlnGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIrsEChlDbG91ZEVudmlyb25tZW50T3BlcmF0aW9uEhQKDG9wZXJhdGlvbl9pZBgBIAEoCRJBCg5vcGVyYXRpb25fdHlwZRgCIAEoDjIpLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudE9wZXJhdGlvblR5cGUSFgoOZW52aXJvbm1lbnRfaWQYAyABKAkSOQoFc3RhdGUYBCABKA4yKi5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRPcGVyYXRpb25TdGF0ZRI5CgVwaGFzZRgFIAEoDjIqLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudE9wZXJhdGlvblBoYXNlEhIKCmNyZWF0ZWRfYXQYBiABKAkSEgoKc3RhcnRlZF9hdBgHIAEoCRISCgp1cGRhdGVkX2F0GAggASgJEhQKDGNvbXBsZXRlZF9hdBgJIAEoCRIdChBzdGFydGluZ192ZXJzaW9uGAogASgJSACIAQESIQoZc3RhcnRpbmdfcmVzb3VyY2VfdmVyc2lvbhgLIAEoAxI7CgZyZXN1bHQYDSABKAsyKy5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRPcGVyYXRpb25SZXN1bHQSOQoFZXJyb3IYDiABKAsyKi5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRPcGVyYXRpb25FcnJvckITChFfc3RhcnRpbmdfdmVyc2lvbkoECAwQDVIQY2FuY2VsX3JlcXVlc3RlZCKCAQoeQ2xvdWRFbnZpcm9ubWVudE9wZXJhdGlvbkVycm9yEjwKBGNvZGUYASABKA4yLi5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRPcGVyYXRpb25FcnJvckNvZGUSDwoHbWVzc2FnZRgCIAEoCRIRCglyZXRyeWFibGUYAyABKAgiZAofQ2xvdWRFbnZpcm9ubWVudE9wZXJhdGlvblJlc3VsdBIWCg5tb2RhbF9pbWFnZV9pZBgBIAEoCRIPCgd2ZXJzaW9uGAIgASgJEhgKEHJlc291cmNlX3ZlcnNpb24YAyABKAMiagoTQ2xvdWRFbnZpcm9ubWVudFJlZhIXCg1iYXNlX2ltYWdlX2lkGAEgASgJSAASGAoOZGFlbW9uX3Bvb2xfaWQYAiABKAlIABIWCgxkYWVtb25fdm1faWQYAyABKAlIAEIICgZ0YXJnZXQiOAoZQ2xvdWRFbnZpcm9ubWVudFJlc291cmNlcxILCgNjcHUYASABKAkSDgoGbWVtb3J5GAIgASgJIocFChdDbG91ZEVudmlyb25tZW50U3VtbWFyeRI4Cgtwb29sX3N0YXR1cxgUIAEoCzIhLnB1YmxpY19hcGkuQ2xvdWREYWVtb25Qb29sU3RhdHVzSAASOgoIdW5wb29sZWQYFSABKAsyJi5wdWJsaWNfYXBpLkNsb3VkVW5wb29sZWREYWVtb25TdW1tYXJ5SAASCgoCaWQYASABKAkSLgoEa2luZBgCIAEoDjIgLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudEtpbmQSFAoMZGlzcGxheV9uYW1lGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEhIKCnZpc2liaWxpdHkYBSABKAUSEgoKY3JlYXRlZF9hdBgGIAEoCRISCgp1cGRhdGVkX2F0GAcgASgJEhoKEmNyZWF0ZWRfYnlfdXNlcl9pZBgIIAEoCRIcChRjcmVhdGVkX2J5X3VzZXJfbmFtZRgJIAEoCRIQCghzcGFjZV9pZBgKIAEoCRIXCg9jdXJyZW50X3ZlcnNpb24YCyABKAkSMgoGc3RhdHVzGAwgASgOMiIucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50U3RhdHVzElcKGndvcmtzcGFjZV9pc29sYXRpb25fcG9saWN5GA0gASgOMjMucHVibGljX2FwaS5DbG91ZERhZW1vblBvb2xXb3Jrc3BhY2VJc29sYXRpb25Qb2xpY3kSGwoTc2FuZGJveF9wcm92aWRlcl9pZBgOIAEoCRI6ChBzYW5kYm94X3Byb3ZpZGVyGA8gASgLMiAucHVibGljX2FwaS5DbG91ZFNhbmRib3hQcm92aWRlckIICgZleHRyYXMiggEKGENsb3VkRW52aXJvbm1lbnRWTUNvbmZpZxI4CglyZXNvdXJjZXMYAyABKAsyJS5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRSZXNvdXJjZXMSFwoKdm1fcnVudGltZRgCIAEoCEgAiAEBQg0KC192bV9ydW50aW1lSgQIARACIjcKGENsb3VkRW52aXJvbm1lbnRWYXJpYWJsZRIMCgRuYW1lGAEgASgJEg0KBXZhbHVlGAIgASgJIlQKGUNsb3VkRW52aXJvbm1lbnRWYXJpYWJsZXMSNwoJdmFyaWFibGVzGAEgAygLMiQucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50VmFyaWFibGUiswIKF0Nsb3VkRW52aXJvbm1lbnRWZXJzaW9uEhAKCGltYWdlX2lkGAEgASgJEg8KB3ZlcnNpb24YAiABKAkSFQoNZ2NwX2ltYWdlX3VybBgDIAEoCRIXCg91cHN0cmVhbV9kaWdlc3QYBCABKAkSEgoKY3JlYXRlZF9hdBgFIAEoCRISCgZzdGF0dXMYBiABKAVCAhgBEhUKDWVycm9yX21lc3NhZ2UYByABKAkSFgoObW9kYWxfaW1hZ2VfaWQYCCABKAkSFQoNdXBkYXRlX3NjcmlwdBgJIAEoCRIZChFoYXNfdXBkYXRlX3NjcmlwdBgKIAEoCBI8ChBsaWZlY3ljbGVfc3RhdHVzGAsgASgOMiIucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50U3RhdHVzIqsBChxDbG91ZEVudmlyb25tZW50VmVyc2lvbkVudHJ5EhgKEHJlc291cmNlX3ZlcnNpb24YASABKAMSMgoGY29uZmlnGAIgASgLMiIucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50Q29uZmlnEhMKC21vZGlmaWVkX2J5GAMgASgJEhMKC21vZGlmaWVkX2F0GAQgASgJEhMKC2NoYW5nZV90eXBlGAUgASgJIj8KJ0Nsb3VkRW52aXJvbm1lbnRzQ2FuY2VsT3BlcmF0aW9uUmVxdWVzdBIUCgxvcGVyYXRpb25faWQYASABKAkiZAooQ2xvdWRFbnZpcm9ubWVudHNDYW5jZWxPcGVyYXRpb25SZXNwb25zZRI4CglvcGVyYXRpb24YASABKAsyJS5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRPcGVyYXRpb24ihQEKJ0Nsb3VkRW52aXJvbm1lbnRzQ3JlYXRlQmFzZUltYWdlUmVxdWVzdBIyCgZjb25maWcYASABKAsyIi5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRDb25maWcSFwoKYmFzZV9pbWFnZRgCIAEoCUgAiAEBQg0KC19iYXNlX2ltYWdlIl0KKENsb3VkRW52aXJvbm1lbnRzQ3JlYXRlQmFzZUltYWdlUmVzcG9uc2USMQoLZW52aXJvbm1lbnQYASABKAsyHC5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnQipgIKKENsb3VkRW52aXJvbm1lbnRzQ3JlYXRlRGFlbW9uUG9vbFJlcXVlc3QSFAoMZGlzcGxheV9uYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhcKCnZpc2liaWxpdHkYAyABKAVIAIgBARI8Cgljb25uZWN0b3IYBCABKAsyKS5wdWJsaWNfYXBpLkNsb3VkRGFlbW9uUG9vbENvbm5lY3RvcklucHV0EhAKCHNwYWNlX2lkGAUgASgJElcKGndvcmtzcGFjZV9pc29sYXRpb25fcG9saWN5GAYgASgOMjMucHVibGljX2FwaS5DbG91ZERhZW1vblBvb2xXb3Jrc3BhY2VJc29sYXRpb25Qb2xpY3lCDQoLX3Zpc2liaWxpdHkiVgopQ2xvdWRFbnZpcm9ubWVudHNDcmVhdGVEYWVtb25Qb29sUmVzcG9uc2USKQoEcG9vbBgBIAEoCzIbLnB1YmxpY19hcGkuQ2xvdWREYWVtb25Qb29sItoBCi1DbG91ZEVudmlyb25tZW50c0NyZWF0ZVNhbmRib3hQcm92aWRlclJlcXVlc3QSDAoEc2x1ZxgBIAEoCRIUCgxkaXNwbGF5X25hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSFAoHZW5hYmxlZBgFIAEoCEgAiAEBEhEKCXNwYWNlX2lkcxgGIAMoCRIXCgphbGxfc3BhY2VzGAcgASgISAGIAQFCCgoIX2VuYWJsZWRCDQoLX2FsbF9zcGFjZXNKBAgEEAVSDXByb3ZpZGVyX3R5cGUiZAouQ2xvdWRFbnZpcm9ubWVudHNDcmVhdGVTYW5kYm94UHJvdmlkZXJSZXNwb25zZRIyCghwcm92aWRlchgBIAEoCzIgLnB1YmxpY19hcGkuQ2xvdWRTYW5kYm94UHJvdmlkZXIiOwonQ2xvdWRFbnZpcm9ubWVudHNEZWxldGVCYXNlSW1hZ2VSZXF1ZXN0EhAKCGltYWdlX2lkGAEgASgJIioKKENsb3VkRW52aXJvbm1lbnRzRGVsZXRlQmFzZUltYWdlUmVzcG9uc2UiNgooQ2xvdWRFbnZpcm9ubWVudHNEZWxldGVEYWVtb25Qb29sUmVxdWVzdBIKCgJpZBgBIAEoCSIrCilDbG91ZEVudmlyb25tZW50c0RlbGV0ZURhZW1vblBvb2xSZXNwb25zZSJeCi1DbG91ZEVudmlyb25tZW50c0RlbGV0ZVNhbmRib3hQcm92aWRlclJlcXVlc3QSCgoCaWQYASABKAkSIQoZZXhwZWN0ZWRfcmVzb3VyY2VfdmVyc2lvbhgCIAEoAyIwCi5DbG91ZEVudmlyb25tZW50c0RlbGV0ZVNhbmRib3hQcm92aWRlclJlc3BvbnNlIocBCipDbG91ZEVudmlyb25tZW50c0R1cGxpY2F0ZUJhc2VJbWFnZVJlcXVlc3QSFwoPc291cmNlX2ltYWdlX2lkGAEgASgJEhgKEG5ld19kaXNwbGF5X25hbWUYAiABKAkSFwoKdmlzaWJpbGl0eRgDIAEoBUgAiAEBQg0KC192aXNpYmlsaXR5ImAKK0Nsb3VkRW52aXJvbm1lbnRzRHVwbGljYXRlQmFzZUltYWdlUmVzcG9uc2USMQoLZW52aXJvbm1lbnQYASABKAsyHC5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnQiRAoqQ2xvdWRFbnZpcm9ubWVudHNHZXRBY3RpdmVPcGVyYXRpb25SZXF1ZXN0EhYKDmVudmlyb25tZW50X2lkGAEgASgJImcKK0Nsb3VkRW52aXJvbm1lbnRzR2V0QWN0aXZlT3BlcmF0aW9uUmVzcG9uc2USOAoJb3BlcmF0aW9uGAEgASgLMiUucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50T3BlcmF0aW9uIq4BCiZDbG91ZEVudmlyb25tZW50c0dldEVudmlyb25tZW50UmVxdWVzdBIUCghpbWFnZV9pZBgBIAEoCUICGAESHAoQaW5jbHVkZV92ZXJzaW9ucxgCIAEoCEICGAESLAoDcmVmGAMgASgLMh8ucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50UmVmEiIKGnJlc29sdmVfdXNlcl9kaXNwbGF5X25hbWVzGAQgASgIIocDCidDbG91ZEVudmlyb25tZW50c0dldEVudmlyb25tZW50UmVzcG9uc2USMgoKYmFzZV9pbWFnZRgEIAEoCzIcLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudEgAEjIKC2RhZW1vbl9wb29sGAUgASgLMhsucHVibGljX2FwaS5DbG91ZERhZW1vblBvb2xIABJBCg91bnBvb2xlZF9kYWVtb24YBiABKAsyJi5wdWJsaWNfYXBpLkNsb3VkVW5wb29sZWREYWVtb25TdW1tYXJ5SAASNQoLZW52aXJvbm1lbnQYASABKAsyHC5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRCAhgBEjkKCHZlcnNpb25zGAIgAygLMiMucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50VmVyc2lvbkICGAESNAoHc3VtbWFyeRgDIAEoCzIjLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudFN1bW1hcnlCCQoHZGV0YWlscyI8CiRDbG91ZEVudmlyb25tZW50c0dldE9wZXJhdGlvblJlcXVlc3QSFAoMb3BlcmF0aW9uX2lkGAEgASgJImEKJUNsb3VkRW52aXJvbm1lbnRzR2V0T3BlcmF0aW9uUmVzcG9uc2USOAoJb3BlcmF0aW9uGAEgASgLMiUucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50T3BlcmF0aW9uIncKKkNsb3VkRW52aXJvbm1lbnRzR2V0U2FuZGJveFByb3ZpZGVyUmVxdWVzdBIMCgRzbHVnGAEgASgJEhcKD2luY2x1ZGVfZGVsZXRlZBgCIAEoCBIVCghzcGFjZV9pZBgDIAEoCUgAiAEBQgsKCV9zcGFjZV9pZCJhCitDbG91ZEVudmlyb25tZW50c0dldFNhbmRib3hQcm92aWRlclJlc3BvbnNlEjIKCHByb3ZpZGVyGAEgASgLMiAucHVibGljX2FwaS5DbG91ZFNhbmRib3hQcm92aWRlciJQCiJDbG91ZEVudmlyb25tZW50c0dldFZlcnNpb25SZXF1ZXN0EhAKCGltYWdlX2lkGAEgASgJEhgKEHJlc291cmNlX3ZlcnNpb24YAiABKAMiYAojQ2xvdWRFbnZpcm9ubWVudHNHZXRWZXJzaW9uUmVzcG9uc2USOQoHdmVyc2lvbhgBIAEoCzIoLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudFZlcnNpb25FbnRyeSJfCitDbG91ZEVudmlyb25tZW50c0xpc3RCYXNlSW1hZ2VCdWlsZHNSZXF1ZXN0EhAKCGltYWdlX2lkGAEgASgJEh4KFmluY2x1ZGVfdXBkYXRlX3NjcmlwdHMYAiABKAgiYwosQ2xvdWRFbnZpcm9ubWVudHNMaXN0QmFzZUltYWdlQnVpbGRzUmVzcG9uc2USMwoGYnVpbGRzGAEgAygLMiMucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50VmVyc2lvbiJACi1DbG91ZEVudmlyb25tZW50c0xpc3REYWVtb25Qb29sRGFlbW9uc1JlcXVlc3QSDwoHcG9vbF9pZBgBIAEoCSJkCi5DbG91ZEVudmlyb25tZW50c0xpc3REYWVtb25Qb29sRGFlbW9uc1Jlc3BvbnNlEjIKB2RhZW1vbnMYASADKAsyIS5wdWJsaWNfYXBpLkNsb3VkRGFlbW9uUG9vbERhZW1vbiKIAwooQ2xvdWRFbnZpcm9ubWVudHNMaXN0RW52aXJvbm1lbnRzUmVxdWVzdBIXCg9pbmNsdWRlX2RlbGV0ZWQYASABKAgSIgoacmVzb2x2ZV91c2VyX2Rpc3BsYXlfbmFtZXMYAiABKAgSLwoFa2luZHMYAyADKA4yIC5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRLaW5kEhEKCXBhZ2Vfc2l6ZRgEIAEoBRISCgpwYWdlX3Rva2VuGAUgASgJEjkKCG9yZGVyX2J5GAYgASgOMicucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50TGlzdE9yZGVyQnkSFAoMc2VhcmNoX3F1ZXJ5GAcgASgJEhIKCm93bmVkX29ubHkYCCABKAgSNAoFc2NvcGUYCSABKA4yJS5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRMaXN0U2NvcGUSEAoIc3BhY2VfaWQYCiABKAkSGgoSZGVmYXVsdF9zcGFjZV9vbmx5GAsgASgIItUBCilDbG91ZEVudmlyb25tZW50c0xpc3RFbnZpcm9ubWVudHNSZXNwb25zZRI2CgxlbnZpcm9ubWVudHMYASADKAsyHC5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRCAhgBEkIKFWVudmlyb25tZW50X3N1bW1hcmllcxgCIAMoCzIjLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudFN1bW1hcnkSFwoPbmV4dF9wYWdlX3Rva2VuGAMgASgJEhMKC3RvdGFsX2NvdW50GAQgASgFImsKLENsb3VkRW52aXJvbm1lbnRzTGlzdFNhbmRib3hQcm92aWRlcnNSZXF1ZXN0EhcKD2luY2x1ZGVfZGVsZXRlZBgBIAEoCBIVCghzcGFjZV9pZBgCIAEoCUgAiAEBQgsKCV9zcGFjZV9pZCJkCi1DbG91ZEVudmlyb25tZW50c0xpc3RTYW5kYm94UHJvdmlkZXJzUmVzcG9uc2USMwoJcHJvdmlkZXJzGAEgAygLMiAucHVibGljX2FwaS5DbG91ZFNhbmRib3hQcm92aWRlciJHCiRDbG91ZEVudmlyb25tZW50c0xpc3RWZXJzaW9uc1JlcXVlc3QSEAoIaW1hZ2VfaWQYASABKAkSDQoFbGltaXQYAiABKAUiYwolQ2xvdWRFbnZpcm9ubWVudHNMaXN0VmVyc2lvbnNSZXNwb25zZRI6Cgh2ZXJzaW9ucxgBIAMoCzIoLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudFZlcnNpb25FbnRyeSLxAQooQ2xvdWRFbnZpcm9ubWVudHNSZWJ1aWxkQmFzZUltYWdlUmVxdWVzdBIQCghpbWFnZV9pZBgBIAEoCRIdChBwcm92aXNpb25fc2NyaXB0GAIgASgJSACIAQESHgoRdm1fc3RhcnR1cF9zY3JpcHQYAyABKAlIAYgBARIbCg5iYXNlX2ltYWdlX3JlZhgEIAEoCUgCiAEBQhMKEV9wcm92aXNpb25fc2NyaXB0QhQKEl92bV9zdGFydHVwX3NjcmlwdEIRCg9fYmFzZV9pbWFnZV9yZWZKBAgFEAZSE3VzZV9kZWZhdWx0X3NjcmlwdHMibQopQ2xvdWRFbnZpcm9ubWVudHNSZWJ1aWxkQmFzZUltYWdlUmVzcG9uc2USFgoObW9kYWxfaW1hZ2VfaWQYASABKAkSEgoKdXBkYXRlZF9hdBgDIAEoCUoECAIQA1IOYXVnbWVudF9jb21taXQicAooQ2xvdWRFbnZpcm9ubWVudHNSZWZyZXNoQmFzZUltYWdlUmVxdWVzdBIQCghpbWFnZV9pZBgBIAEoCRIfCg5lbnZpcm9ubWVudF9pZBgCIAEoCUICGAFIAIgBAUIRCg9fZW52aXJvbm1lbnRfaWQiKwopQ2xvdWRFbnZpcm9ubWVudHNSZWZyZXNoQmFzZUltYWdlUmVzcG9uc2UiPAooQ2xvdWRFbnZpcm9ubWVudHNSZXN0b3JlQmFzZUltYWdlUmVxdWVzdBIQCghpbWFnZV9pZBgBIAEoCSJeCilDbG91ZEVudmlyb25tZW50c1Jlc3RvcmVCYXNlSW1hZ2VSZXNwb25zZRIxCgtlbnZpcm9ubWVudBgBIAEoCzIcLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudCI3CilDbG91ZEVudmlyb25tZW50c1Jlc3RvcmVEYWVtb25Qb29sUmVxdWVzdBIKCgJpZBgBIAEoCSJXCipDbG91ZEVudmlyb25tZW50c1Jlc3RvcmVEYWVtb25Qb29sUmVzcG9uc2USKQoEcG9vbBgBIAEoCzIbLnB1YmxpY19hcGkuQ2xvdWREYWVtb25Qb29sIl8KLkNsb3VkRW52aXJvbm1lbnRzUmVzdG9yZVNhbmRib3hQcm92aWRlclJlcXVlc3QSCgoCaWQYASABKAkSIQoZZXhwZWN0ZWRfcmVzb3VyY2VfdmVyc2lvbhgCIAEoAyJlCi9DbG91ZEVudmlyb25tZW50c1Jlc3RvcmVTYW5kYm94UHJvdmlkZXJSZXNwb25zZRIyCghwcm92aWRlchgBIAEoCzIgLnB1YmxpY19hcGkuQ2xvdWRTYW5kYm94UHJvdmlkZXIi5wEKLENsb3VkRW52aXJvbm1lbnRzU3RhcnRCYXNlSW1hZ2VDcmVhdGVSZXF1ZXN0EjIKBmNvbmZpZxgBIAEoCzIiLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudENvbmZpZxIXCgpiYXNlX2ltYWdlGAIgASgJSACIAQESFwoPaWRlbXBvdGVuY3lfa2V5GAMgASgJEiUKGHJlZ2lzdHJ5X2NyZWRlbnRpYWxfbmFtZRgEIAEoCUgBiAEBQg0KC19iYXNlX2ltYWdlQhsKGV9yZWdpc3RyeV9jcmVkZW50aWFsX25hbWUinAEKLUNsb3VkRW52aXJvbm1lbnRzU3RhcnRCYXNlSW1hZ2VDcmVhdGVSZXNwb25zZRIxCgtlbnZpcm9ubWVudBgBIAEoCzIcLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudBI4CglvcGVyYXRpb24YAiABKAsyJS5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRPcGVyYXRpb24ivgIKLUNsb3VkRW52aXJvbm1lbnRzU3RhcnRCYXNlSW1hZ2VSZWJ1aWxkUmVxdWVzdBIWCg5lbnZpcm9ubWVudF9pZBgBIAEoCRIXCg9pZGVtcG90ZW5jeV9rZXkYAiABKAkSHQoQcHJvdmlzaW9uX3NjcmlwdBgDIAEoCUgAiAEBEh4KEXZtX3N0YXJ0dXBfc2NyaXB0GAQgASgJSAGIAQESGwoOYmFzZV9pbWFnZV9yZWYYBSABKAlIAogBARIlChhyZWdpc3RyeV9jcmVkZW50aWFsX25hbWUYBiABKAlIA4gBAUITChFfcHJvdmlzaW9uX3NjcmlwdEIUChJfdm1fc3RhcnR1cF9zY3JpcHRCEQoPX2Jhc2VfaW1hZ2VfcmVmQhsKGV9yZWdpc3RyeV9jcmVkZW50aWFsX25hbWUiagouQ2xvdWRFbnZpcm9ubWVudHNTdGFydEJhc2VJbWFnZVJlYnVpbGRSZXNwb25zZRI4CglvcGVyYXRpb24YASABKAsyJS5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRPcGVyYXRpb24iYAotQ2xvdWRFbnZpcm9ubWVudHNTdGFydEJhc2VJbWFnZVJlZnJlc2hSZXF1ZXN0EhYKDmVudmlyb25tZW50X2lkGAEgASgJEhcKD2lkZW1wb3RlbmN5X2tleRgCIAEoCSJqCi5DbG91ZEVudmlyb25tZW50c1N0YXJ0QmFzZUltYWdlUmVmcmVzaFJlc3BvbnNlEjgKCW9wZXJhdGlvbhgBIAEoCzIlLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudE9wZXJhdGlvbiLPAQo5Q2xvdWRFbnZpcm9ubWVudHNTdGFydEJhc2VJbWFnZVJlcG9zaXRvcnlSZWNvbmNpbGVSZXF1ZXN0EkMKBnVwZGF0ZRgBIAEoCzIzLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVCYXNlSW1hZ2VSZXF1ZXN0EhcKD2lkZW1wb3RlbmN5X2tleRgCIAEoCRIkChhleHBlY3RlZF9jdXJyZW50X3ZlcnNpb24YAyABKAlCAhgBEg4KBnJlcGFpchgEIAEoCCJ2CjpDbG91ZEVudmlyb25tZW50c1N0YXJ0QmFzZUltYWdlUmVwb3NpdG9yeVJlY29uY2lsZVJlc3BvbnNlEjgKCW9wZXJhdGlvbhgBIAEoCzIlLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudE9wZXJhdGlvbiK7AQo0Q2xvdWRFbnZpcm9ubWVudHNTdGFydEJhc2VJbWFnZVNuYXBzaG90VXBkYXRlUmVxdWVzdBIWCg5lbnZpcm9ubWVudF9pZBgBIAEoCRIXCg9pZGVtcG90ZW5jeV9rZXkYAiABKAkSDgoGc2NyaXB0GAMgASgJEiUKGGV4cGVjdGVkX2N1cnJlbnRfdmVyc2lvbhgEIAEoCUgAiAEBQhsKGV9leHBlY3RlZF9jdXJyZW50X3ZlcnNpb24icQo1Q2xvdWRFbnZpcm9ubWVudHNTdGFydEJhc2VJbWFnZVNuYXBzaG90VXBkYXRlUmVzcG9uc2USOAoJb3BlcmF0aW9uGAEgASgLMiUucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50T3BlcmF0aW9uIpEGCidDbG91ZEVudmlyb25tZW50c1VwZGF0ZUJhc2VJbWFnZVJlcXVlc3QSEAoIaW1hZ2VfaWQYASABKAkSGQoMZGlzcGxheV9uYW1lGAIgASgJSACIAQESGAoLZGVzY3JpcHRpb24YAyABKAlIAYgBARIXCgp2aXNpYmlsaXR5GAQgASgFSAKIAQESJgoZZXhwZWN0ZWRfcmVzb3VyY2VfdmVyc2lvbhgFIAEoA0gDiAEBEjoKBXJlcG9zGAYgAygLMisucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50Q2xvbmVSZXBvc2l0b3J5EkQKFWVudmlyb25tZW50X3ZhcmlhYmxlcxgHIAEoCzIlLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudFZhcmlhYmxlcxIRCgloYXNfcmVwb3MYCCABKAgSFwoKYmFzZV9pbWFnZRgJIAEoCUgEiAEBEhwKD3JlZnJlc2hfZW5hYmxlZBgKIAEoCEgFiAEBEhUKCHNwYWNlX2lkGAsgASgJSAaIAQESSwoEdGFncxgMIAMoCzI9LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVCYXNlSW1hZ2VSZXF1ZXN0LlRhZ3NFbnRyeRIQCghoYXNfdGFncxgNIAEoCBIgChNzYW5kYm94X3Byb3ZpZGVyX2lkGA4gASgJSAeIAQESNwoJdm1fY29uZmlnGA8gASgLMiQucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50Vk1Db25maWcaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCDwoNX2Rpc3BsYXlfbmFtZUIOCgxfZGVzY3JpcHRpb25CDQoLX3Zpc2liaWxpdHlCHAoaX2V4cGVjdGVkX3Jlc291cmNlX3ZlcnNpb25CDQoLX2Jhc2VfaW1hZ2VCEgoQX3JlZnJlc2hfZW5hYmxlZEILCglfc3BhY2VfaWRCFgoUX3NhbmRib3hfcHJvdmlkZXJfaWQiXQooQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVCYXNlSW1hZ2VSZXNwb25zZRIxCgtlbnZpcm9ubWVudBgBIAEoCzIcLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudCLZAwooQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVEYWVtb25Qb29sUmVxdWVzdBIKCgJpZBgBIAEoCRIZCgxkaXNwbGF5X25hbWUYAiABKAlIAIgBARIYCgtkZXNjcmlwdGlvbhgDIAEoCUgBiAEBEhcKCnZpc2liaWxpdHkYBCABKAVIAogBARJcChp3b3Jrc3BhY2VfaXNvbGF0aW9uX3BvbGljeRgFIAEoDjIzLnB1YmxpY19hcGkuQ2xvdWREYWVtb25Qb29sV29ya3NwYWNlSXNvbGF0aW9uUG9saWN5SAOIAQESPAoJY29ubmVjdG9yGAYgASgLMikucHVibGljX2FwaS5DbG91ZERhZW1vblBvb2xDb25uZWN0b3JJbnB1dBIVCghzcGFjZV9pZBgHIAEoCUgEiAEBEiYKGWV4cGVjdGVkX3Jlc291cmNlX3ZlcnNpb24YCCABKANIBYgBAUIPCg1fZGlzcGxheV9uYW1lQg4KDF9kZXNjcmlwdGlvbkINCgtfdmlzaWJpbGl0eUIdChtfd29ya3NwYWNlX2lzb2xhdGlvbl9wb2xpY3lCCwoJX3NwYWNlX2lkQhwKGl9leHBlY3RlZF9yZXNvdXJjZV92ZXJzaW9uIlYKKUNsb3VkRW52aXJvbm1lbnRzVXBkYXRlRGFlbW9uUG9vbFJlc3BvbnNlEikKBHBvb2wYASABKAsyGy5wdWJsaWNfYXBpLkNsb3VkRGFlbW9uUG9vbCKRAgotQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVTYW5kYm94UHJvdmlkZXJSZXF1ZXN0EgoKAmlkGAEgASgJEhkKDGRpc3BsYXlfbmFtZRgCIAEoCUgAiAEBEhgKC2Rlc2NyaXB0aW9uGAMgASgJSAGIAQESFAoHZW5hYmxlZBgEIAEoCEgCiAEBEiEKGWV4cGVjdGVkX3Jlc291cmNlX3ZlcnNpb24YBSABKAMSEQoJc3BhY2VfaWRzGAYgAygJEhcKCmFsbF9zcGFjZXMYByABKAhIA4gBAUIPCg1fZGlzcGxheV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIKCghfZW5hYmxlZEINCgtfYWxsX3NwYWNlcyJkCi5DbG91ZEVudmlyb25tZW50c1VwZGF0ZVNhbmRib3hQcm92aWRlclJlc3BvbnNlEjIKCHByb3ZpZGVyGAEgASgLMiAucHVibGljX2FwaS5DbG91ZFNhbmRib3hQcm92aWRlciKnAQomQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVTbmFwc2hvdFJlcXVlc3QSEAoIaW1hZ2VfaWQYASABKAkSDgoGc2NyaXB0GAIgASgJEiUKGGV4cGVjdGVkX2N1cnJlbnRfdmVyc2lvbhgDIAEoCUgAiAEBEhcKD2lkZW1wb3RlbmN5X2tleRgEIAEoCUIbChlfZXhwZWN0ZWRfY3VycmVudF92ZXJzaW9uIlIKJ0Nsb3VkRW52aXJvbm1lbnRzVXBkYXRlU25hcHNob3RSZXNwb25zZRIWCg5tb2RhbF9pbWFnZV9pZBgBIAEoCRIPCgd2ZXJzaW9uGAIgASgJItsBCgpDbG91ZEV2ZW50EhAKCGV2ZW50X2lkGAEgASgJEg4KBnNvdXJjZRgCIAEoCRISCgpldmVudF90eXBlGAMgASgJEhQKDHBheWxvYWRfanNvbhgEIAEoCRIvCgtyZWNlaXZlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASEQoJdGVuYW50X2lkGAYgASgJEg8KB3VzZXJfaWQYByABKAkSEgoKd2ViaG9va19pZBgIIAEoCRIYChBwYXlsb2FkX3JlZGFjdGVkGAkgASgIIpsBChxDbG91ZEV2ZW50c0xpc3RFdmVudHNSZXF1ZXN0Eg0KBWxpbWl0GAEgASgNEhIKCnBhZ2VfdG9rZW4YAiABKAkSDgoGc291cmNlGAMgASgJEhYKDmZpbHRlcl9wYXlsb2FkGAQgASgJEhIKCmV2ZW50X3R5cGUYBSABKAkSDQoFc2luY2UYBiABKAkSDQoFdW50aWwYByABKAkidQodQ2xvdWRFdmVudHNMaXN0RXZlbnRzUmVzcG9uc2USJgoGZXZlbnRzGAEgAygLMhYucHVibGljX2FwaS5DbG91ZEV2ZW50EhcKD25leHRfcGFnZV90b2tlbhgCIAEoCRITCgt0b3RhbF9jb3VudBgDIAEoBSLyAwoLQ2xvdWRFeHBlcnQSEQoJZXhwZXJ0X2lkGAEgASgJEisKBXNjb3BlGAIgASgOMhwucHVibGljX2FwaS5DbG91ZEV4cGVydFNjb3BlEi0KBmNvbmZpZxgDIAEoCzIdLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRDb25maWcSDwoHdXNlcl9pZBgEIAEoCRIuCgpjcmVhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIYChByZXNvdXJjZV92ZXJzaW9uGAcgASgDEi4KCmRlbGV0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhYKDmVmZmVjdGl2ZV9yb2xlGAkgASgJEjoKDXNwYWNlX3N1bW1hcnkYCyABKAsyIy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0U3BhY2VTdW1tYXJ5EgwKBHNsdWcYDCABKAkSQgoRZGVwZW5kZW5jeV9oZWFsdGgYDSABKAsyJy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0RGVwZW5kZW5jeUhlYWx0aEoECAoQC1INdGFnX3N1bW1hcmllcyJXChpDbG91ZEV4cGVydENsb25lUmVwb3NpdG9yeRINCgVvd25lchgBIAEoCRIMCgRuYW1lGAIgASgJEg4KBmJyYW5jaBgDIAEoCRIMCgRob3N0GAQgASgJIpwHChFDbG91ZEV4cGVydENvbmZpZxIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhgKEGluaXRpYWxfbWVzc2FnZXMYAyADKAkSRgoUYnVpbHRpbl9jYXBhYmlsaXRpZXMYBCADKA4yKC5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0QnVpbHRpbkNhcGFiaWxpdHkSOwoLdG9vbF9jb25maWcYBiABKAsyIS5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0VG9vbENvbmZpZ0gAiAEBEkEKDnNlc3Npb25fY29uZmlnGAcgASgLMiQucHVibGljX2FwaS5DbG91ZEV4cGVydFNlc3Npb25Db25maWdIAYgBARI3Cgl2bV9jb25maWcYCCABKAsyHy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0Vk1Db25maWdIAogBARIZChF3b3JrZXJfZXhwZXJ0X2lkcxgJIAMoCRIZChF1c2VyX2luc3RydWN0aW9ucxgKIAEoCRIdChBwbGFjZWhvbGRlcl90ZXh0GBAgASgJSAOIAQESIgoadXNlX2FsbF9leHBlcnRzX2FzX3dvcmtlcnMYCyABKAgSFgoObWNwX2NvbmZpZ19pZHMYDCADKAkSGgoSaGFzX21jcF9jb25maWdfaWRzGA0gASgIEhMKBmhpZGRlbhgOIAEoCEgEiAEBEkEKDnJvdXRpbmdfdGFyZ2V0GA8gASgLMiQucHVibGljX2FwaS5DbG91ZEV4cGVydFJvdXRpbmdUYXJnZXRIBYgBARI1CgR0YWdzGBEgAygLMicucHVibGljX2FwaS5DbG91ZEV4cGVydENvbmZpZy5UYWdzRW50cnkSEAoIaGFzX3RhZ3MYEiABKAgSGAoQY2FwYWJpbGl0eV9uYW1lcxgTIAMoCRIpChx1c2VfYWxsX2J1aWx0aW5fY2FwYWJpbGl0aWVzGBQgASgISAaIAQEaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCDgoMX3Rvb2xfY29uZmlnQhEKD19zZXNzaW9uX2NvbmZpZ0IMCgpfdm1fY29uZmlnQhMKEV9wbGFjZWhvbGRlcl90ZXh0QgkKB19oaWRkZW5CEQoPX3JvdXRpbmdfdGFyZ2V0Qh8KHV91c2VfYWxsX2J1aWx0aW5fY2FwYWJpbGl0aWVzSgQIBRAGInAKG0Nsb3VkRXhwZXJ0RGVwZW5kZW5jeUhlYWx0aBI2CgZpc3N1ZXMYASADKAsyJi5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0RGVwZW5kZW5jeUlzc3VlEhkKEWJsb2Nrc19uZXdfbGF1bmNoGAIgASgIIrMCChpDbG91ZEV4cGVydERlcGVuZGVuY3lJc3N1ZRJDCgxyZWxhdGlvbnNoaXAYASABKA4yLS5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0RGVwZW5kZW5jeVJlbGF0aW9uc2hpcBI3CgZzdGF0dXMYAiABKA4yJy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0RGVwZW5kZW5jeVN0YXR1cxIYChB0YXJnZXRfZXhwZXJ0X2lkGAMgASgJEhoKEnRhcmdldF9leHBlcnRfc2x1ZxgEIAEoCRIaChJ0YXJnZXRfZXhwZXJ0X25hbWUYBSABKAkSRQoOcmVwYWlyX2FjdGlvbnMYBiADKA4yLS5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0RGVwZW5kZW5jeVJlcGFpckFjdGlvbiI9Ch5DbG91ZEV4cGVydEVudmlyb25tZW50VmFyaWFibGUSDAoEbmFtZRgBIAEoCRINCgV2YWx1ZRgCIAEoCSJgCh9DbG91ZEV4cGVydEVudmlyb25tZW50VmFyaWFibGVzEj0KCXZhcmlhYmxlcxgBIAMoCzIqLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRFbnZpcm9ubWVudFZhcmlhYmxlIkQKG0Nsb3VkRXhwZXJ0TWFjaGluZVJlc291cmNlcxIRCgljcHVfY29yZXMYASABKAISEgoKbWVtb3J5X21pYhgCIAEoBSJPChhDbG91ZEV4cGVydFJvdXRpbmdUYXJnZXQSFgoMZGFlbW9uX3ZtX2lkGAEgASgJSAASEQoHcG9vbF9pZBgCIAEoCUgAQggKBnRhcmdldCKKAwoYQ2xvdWRFeHBlcnRTZXNzaW9uQ29uZmlnEhIKBW1vZGVsGAEgASgJSACIAQESJQodaW5jbHVkZV9kZWZhdWx0X3N5c3RlbV9wcm9tcHQYAiABKAgSFQoNc3lzdGVtX3Byb21wdBgDIAEoCRI8Cgp2aXNpYmlsaXR5GAQgASgOMigucHVibGljX2FwaS5DbG91ZEV4cGVydFNlc3Npb25WaXNpYmlsaXR5Ek0KDXVzZXJfbWV0YWRhdGEYBSADKAsyNi5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0U2Vzc2lvbkNvbmZpZy5Vc2VyTWV0YWRhdGFFbnRyeRIcChRhdXRvX2NsZWFudXBfb25faWRsZRgGIAEoCBIdChByZWFzb25pbmdfZWZmb3J0GAcgASgJSAGIAQEaMwoRVXNlck1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4AUIICgZfbW9kZWxCEwoRX3JlYXNvbmluZ19lZmZvcnQiQQoXQ2xvdWRFeHBlcnRTcGFjZVN1bW1hcnkSEAoIc3BhY2VfaWQYASABKAkSFAoMZGlzcGxheV9uYW1lGAIgASgJIp8BChVDbG91ZEV4cGVydFRvb2xDb25maWcSFgoJdG9vbF9uYW1lGAEgASgJSACIAQESHQoQdG9vbF9kZXNjcmlwdGlvbhgCIAEoCUgBiAEBEhcKD3RpbWVvdXRfc2Vjb25kcxgDIAEoDRITCgthbGxvd19hc3luYxgEIAEoCEIMCgpfdG9vbF9uYW1lQhMKEV90b29sX2Rlc2NyaXB0aW9uIskEChNDbG91ZEV4cGVydFZNQ29uZmlnEhIKCmJhc2VfaW1hZ2UYASABKAkSEwoLc25hcHNob3RfaWQYAiABKAkSEQoJY3B1X2NvcmVzGAMgASgFEhIKCm1lbW9yeV9taWIYBCABKAUSFwoPdGltZW91dF9zZWNvbmRzGAUgASgFEhwKFGlkbGVfdGltZW91dF9zZWNvbmRzGAYgASgFEh8KF2luc3RhbGxfZ2l0X2NyZWRlbnRpYWxzGAcgASgIEhwKFGluc3RhbGxfdXNlcl9zZWNyZXRzGAggASgIEjoKDGltYWdlX3NvdXJjZRgJIAEoDjIkLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRWTUltYWdlU291cmNlEhUKDWJhc2VfaW1hZ2VfaWQYCiABKAkSOwoLY2xvbmVfcmVwb3MYCyADKAsyJi5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0Q2xvbmVSZXBvc2l0b3J5Ej8KCXJlc291cmNlcxgMIAEoCzInLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRNYWNoaW5lUmVzb3VyY2VzSACIAQESIgoaYmFzZV9pbWFnZV9jdXJyZW50X3ZlcnNpb24YDSABKAkSTwoVZW52aXJvbm1lbnRfdmFyaWFibGVzGA4gASgLMisucHVibGljX2FwaS5DbG91ZEV4cGVydEVudmlyb25tZW50VmFyaWFibGVzSAGIAQFCDAoKX3Jlc291cmNlc0IYChZfZW52aXJvbm1lbnRfdmFyaWFibGVzIs4BChdDbG91ZEV4cGVydFZlcnNpb25FbnRyeRIYChByZXNvdXJjZV92ZXJzaW9uGAEgASgDEi0KBmNvbmZpZxgCIAEoCzIdLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRDb25maWcSKwoFc2NvcGUYAyABKA4yHC5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0U2NvcGUSEwoLbW9kaWZpZWRfYnkYBCABKAkSEwoLbW9kaWZpZWRfYXQYBSABKAkSEwoLY2hhbmdlX3R5cGUYBiABKAkijgEKFENsb3VkRXhwZXJ0V2l0aFVzYWdlEicKBmV4cGVydBgBIAEoCzIXLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnQSMAoMbGFzdF91c2VkX2F0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIbChN3ZWVrbHlfYWN0aXZlX3VzZXJzGAMgASgFIrMDCihDbG91ZEV4cGVydHNDcmVhdGVBZ2VudEZyb21FeHBlcnRSZXF1ZXN0EhEKCWV4cGVydF9pZBgBIAEoCRIXCgphZ2VudF9uYW1lGAIgASgJSACIAQESIgoVc2VuZF9pbml0aWFsX21lc3NhZ2VzGAMgASgISAGIAQESJQoYZXhpc3RpbmdfY29udmVyc2F0aW9uX2lkGAQgASgJSAKIAQESHAoPaW5pdGlhbF9tZXNzYWdlGAUgASgJSAOIAQESHAoPaWRlbXBvdGVuY3lfa2V5GAYgASgJSASIAQESEAoIc3BhY2VfaWQYByABKAkSQQoOcm91dGluZ190YXJnZXQYCCABKAsyJC5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0Um91dGluZ1RhcmdldEgFiAEBQg0KC19hZ2VudF9uYW1lQhgKFl9zZW5kX2luaXRpYWxfbWVzc2FnZXNCGwoZX2V4aXN0aW5nX2NvbnZlcnNhdGlvbl9pZEISChBfaW5pdGlhbF9tZXNzYWdlQhIKEF9pZGVtcG90ZW5jeV9rZXlCEQoPX3JvdXRpbmdfdGFyZ2V0IlIKKUNsb3VkRXhwZXJ0c0NyZWF0ZUFnZW50RnJvbUV4cGVydFJlc3BvbnNlEiUKBWFnZW50GAEgASgLMhYucHVibGljX2FwaS5DbG91ZEFnZW50IvgBCh9DbG91ZEV4cGVydHNDcmVhdGVFeHBlcnRSZXF1ZXN0EisKBXNjb3BlGAEgASgOMhwucHVibGljX2FwaS5DbG91ZEV4cGVydFNjb3BlEi0KBmNvbmZpZxgCIAEoCzIdLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRDb25maWcSEAoIc3BhY2VfaWQYBCABKAkSQgoRY2FwYWJpbGl0eV9zb3VyY2UYBSABKA4yJy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0Q2FwYWJpbGl0eVNvdXJjZRIUCgxkZXNpcmVkX3NsdWcYBiABKAlKBAgDEARSB3RhZ19pZHMiSwogQ2xvdWRFeHBlcnRzQ3JlYXRlRXhwZXJ0UmVzcG9uc2USJwoGZXhwZXJ0GAEgASgLMhcucHVibGljX2FwaS5DbG91ZEV4cGVydCI1Ch9DbG91ZEV4cGVydHNEZWxldGVFeHBlcnRSZXF1ZXN0EhIKCmV4cGVydF9pZHMYASADKAkiWQogQ2xvdWRFeHBlcnRzRGVsZXRlRXhwZXJ0UmVzcG9uc2USGgoSZGVsZXRlZF9leHBlcnRfaWRzGAEgAygJEhkKEWZhaWxlZF9leHBlcnRfaWRzGAIgAygJIjEKHENsb3VkRXhwZXJ0c0dldEV4cGVydFJlcXVlc3QSEQoJZXhwZXJ0X2lkGAEgASgJIkgKHUNsb3VkRXhwZXJ0c0dldEV4cGVydFJlc3BvbnNlEicKBmV4cGVydBgBIAEoCzIXLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnQiTAodQ2xvdWRFeHBlcnRzR2V0VmVyc2lvblJlcXVlc3QSEQoJZXhwZXJ0X2lkGAEgASgJEhgKEHJlc291cmNlX3ZlcnNpb24YAiABKAMiVgoeQ2xvdWRFeHBlcnRzR2V0VmVyc2lvblJlc3BvbnNlEjQKB3ZlcnNpb24YASABKAsyIy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0VmVyc2lvbkVudHJ5Io4BCh5DbG91ZEV4cGVydHNMaXN0RXhwZXJ0c1JlcXVlc3QSFwoPaW5jbHVkZV9kZWxldGVkGAEgASgIEhAKCHNwYWNlX2lkGAIgASgJEhoKEmRlZmF1bHRfc3BhY2Vfb25seRgDIAEoCBIRCglwYWdlX3NpemUYBCABKAUSEgoKcGFnZV90b2tlbhgFIAEoCSJ5Ch9DbG91ZEV4cGVydHNMaXN0RXhwZXJ0c1Jlc3BvbnNlEigKB2V4cGVydHMYASADKAsyFy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0EhcKD25leHRfcGFnZV90b2tlbhgCIAEoCRITCgt0b3RhbF9jb3VudBgDIAEoBSJwCidDbG91ZEV4cGVydHNMaXN0RXhwZXJ0c1dpdGhVc2FnZVJlcXVlc3QSFwoPbWF4X3Blcl9zZWN0aW9uGAEgASgFEhAKCHNwYWNlX2lkGAIgASgJEhoKEmRlZmF1bHRfc3BhY2Vfb25seRgDIAEoCCLHAQooQ2xvdWRFeHBlcnRzTGlzdEV4cGVydHNXaXRoVXNhZ2VSZXNwb25zZRI3Cg1yZWNlbnRseV91c2VkGAEgAygLMiAucHVibGljX2FwaS5DbG91ZEV4cGVydFdpdGhVc2FnZRIxCgdwb3B1bGFyGAIgAygLMiAucHVibGljX2FwaS5DbG91ZEV4cGVydFdpdGhVc2FnZRIvCgVvdGhlchgDIAMoCzIgLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRXaXRoVXNhZ2UiQwofQ2xvdWRFeHBlcnRzTGlzdFZlcnNpb25zUmVxdWVzdBIRCglleHBlcnRfaWQYASABKAkSDQoFbGltaXQYAiABKAUiWQogQ2xvdWRFeHBlcnRzTGlzdFZlcnNpb25zUmVzcG9uc2USNQoIdmVyc2lvbnMYASADKAsyIy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0VmVyc2lvbkVudHJ5IjUKIENsb3VkRXhwZXJ0c1Jlc3RvcmVFeHBlcnRSZXF1ZXN0EhEKCWV4cGVydF9pZBgBIAEoCSJMCiFDbG91ZEV4cGVydHNSZXN0b3JlRXhwZXJ0UmVzcG9uc2USJwoGZXhwZXJ0GAEgASgLMhcucHVibGljX2FwaS5DbG91ZEV4cGVydCLsAgofQ2xvdWRFeHBlcnRzVXBkYXRlRXhwZXJ0UmVxdWVzdBIRCglleHBlcnRfaWQYASABKAkSMgoGY29uZmlnGAIgASgLMh0ucHVibGljX2FwaS5DbG91ZEV4cGVydENvbmZpZ0gAiAEBEiYKGWV4cGVjdGVkX3Jlc291cmNlX3ZlcnNpb24YAyABKANIAYgBARIwCgVzY29wZRgEIAEoDjIcLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRTY29wZUgCiAEBEhUKCHNwYWNlX2lkGAYgASgJSAOIAQESQgoRY2FwYWJpbGl0eV9zb3VyY2UYByABKA4yJy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0Q2FwYWJpbGl0eVNvdXJjZUIJCgdfY29uZmlnQhwKGl9leHBlY3RlZF9yZXNvdXJjZV92ZXJzaW9uQggKBl9zY29wZUILCglfc3BhY2VfaWRKBAgFEAZSB3RhZ19pZHMiSwogQ2xvdWRFeHBlcnRzVXBkYXRlRXhwZXJ0UmVzcG9uc2USJwoGZXhwZXJ0GAEgASgLMhcucHVibGljX2FwaS5DbG91ZEV4cGVydCJ9CgpDbG91ZEdyb3VwEhAKCGdyb3VwX2lkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSEgoKY3JlYXRlZF9ieRgEIAEoCRISCgpjcmVhdGVkX2F0GAUgASgJEhIKCnVwZGF0ZWRfYXQYBiABKAki5gEKEENsb3VkR3JvdXBNZW1iZXISDwoHdXNlcl9pZBgBIAEoCRIQCghhZGRlZF9hdBgCIAEoCRIQCghhZGRlZF9ieRgDIAEoCRINCgVlbWFpbBgEIAEoCRISCgpnaXZlbl9uYW1lGAUgASgJEhMKC2ZhbWlseV9uYW1lGAYgASgJEhUKDWFkZGVkX2J5X25hbWUYByABKAkSOAoOcHJpbmNpcGFsX2tpbmQYCCABKA4yIC5wdWJsaWNfYXBpLkNsb3VkR3JvdXBNZW1iZXJLaW5kEhQKDHNlcnZpY2VfbmFtZRgJIAEoCSJTChhDbG91ZEdyb3VwTWVtYmVyU2VsZWN0b3ISEAoGbWVtYmVyGAEgASgJSAASGQoPc2VydmljZV9hY2NvdW50GAIgASgJSABCCgoIc2VsZWN0b3IiegocQ2xvdWRHcm91cHNBZGRNZW1iZXJzUmVxdWVzdBIQCghncm91cF9pZBgBIAEoCRIPCgdtZW1iZXJzGAIgAygJEjcKCXNlbGVjdG9ycxgDIAMoCzIkLnB1YmxpY19hcGkuQ2xvdWRHcm91cE1lbWJlclNlbGVjdG9yIlgKHUNsb3VkR3JvdXBzQWRkTWVtYmVyc1Jlc3BvbnNlEhYKDmFkZGVkX3VzZXJfaWRzGAEgAygJEh8KF2FscmVhZHlfbWVtYmVyX3VzZXJfaWRzGAIgAygJIj0KGENsb3VkR3JvdXBzQ3JlYXRlUmVxdWVzdBIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJIkIKGUNsb3VkR3JvdXBzQ3JlYXRlUmVzcG9uc2USJQoFZ3JvdXAYASABKAsyFi5wdWJsaWNfYXBpLkNsb3VkR3JvdXAiLAoYQ2xvdWRHcm91cHNEZWxldGVSZXF1ZXN0EhAKCGdyb3VwX2lkGAEgASgJIhsKGUNsb3VkR3JvdXBzRGVsZXRlUmVzcG9uc2UiWAodQ2xvdWRHcm91cHNMaXN0TWVtYmVyc1JlcXVlc3QSEAoIZ3JvdXBfaWQYASABKAkSEQoJcGFnZV9zaXplGAIgASgNEhIKCnBhZ2VfdG9rZW4YAyABKAkikwEKHkNsb3VkR3JvdXBzTGlzdE1lbWJlcnNSZXNwb25zZRItCgdtZW1iZXJzGAEgAygLMhwucHVibGljX2FwaS5DbG91ZEdyb3VwTWVtYmVyEhcKD25leHRfcGFnZV90b2tlbhgCIAEoCRIpCiFzZXJ2aWNlX2FjY291bnRfc2VsZWN0b3JzX2VuYWJsZWQYAyABKAgiPwoWQ2xvdWRHcm91cHNMaXN0UmVxdWVzdBIRCglwYWdlX3NpemUYASABKA0SEgoKcGFnZV90b2tlbhgCIAEoCSJaChdDbG91ZEdyb3Vwc0xpc3RSZXNwb25zZRImCgZncm91cHMYASADKAsyFi5wdWJsaWNfYXBpLkNsb3VkR3JvdXASFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJIn0KH0Nsb3VkR3JvdXBzUmVtb3ZlTWVtYmVyc1JlcXVlc3QSEAoIZ3JvdXBfaWQYASABKAkSDwoHbWVtYmVycxgCIAMoCRI3CglzZWxlY3RvcnMYAyADKAsyJC5wdWJsaWNfYXBpLkNsb3VkR3JvdXBNZW1iZXJTZWxlY3RvciJZCiBDbG91ZEdyb3Vwc1JlbW92ZU1lbWJlcnNSZXNwb25zZRIYChByZW1vdmVkX3VzZXJfaWRzGAEgAygJEhsKE25vdF9tZW1iZXJfdXNlcl9pZHMYAiADKAkicgoYQ2xvdWRHcm91cHNVcGRhdGVSZXF1ZXN0EhAKCGdyb3VwX2lkGAEgASgJEhEKBG5hbWUYAiABKAlIAIgBARIYCgtkZXNjcmlwdGlvbhgDIAEoCUgBiAEBQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbiJCChlDbG91ZEdyb3Vwc1VwZGF0ZVJlc3BvbnNlEiUKBWdyb3VwGAEgASgLMhYucHVibGljX2FwaS5DbG91ZEdyb3VwIkoKL0Nsb3VkSW50ZWdyYXRpb25zQ2FuY2VsRXZlbnRTdWJzY3JpcHRpb25SZXF1ZXN0EhcKD3N1YnNjcmlwdGlvbl9pZBgBIAEoCSIyCjBDbG91ZEludGVncmF0aW9uc0NhbmNlbEV2ZW50U3Vic2NyaXB0aW9uUmVzcG9uc2UiMQovQ2xvdWRJbnRlZ3JhdGlvbnNDaGVja0F0bGFzc2lhbkFwcFN0YXR1c1JlcXVlc3QidQowQ2xvdWRJbnRlZ3JhdGlvbnNDaGVja0F0bGFzc2lhbkFwcFN0YXR1c1Jlc3BvbnNlEhQKDGlzX2luc3RhbGxlZBgBIAEoCBIRCglzaXRlX25hbWUYAiABKAkSGAoQZW5hYmxlZF9wcm9kdWN0cxgDIAMoCSIuCixDbG91ZEludGVncmF0aW9uc0NoZWNrR2l0SHViQXBwU3RhdHVzUmVxdWVzdCJFCi1DbG91ZEludGVncmF0aW9uc0NoZWNrR2l0SHViQXBwU3RhdHVzUmVzcG9uc2USFAoMaXNfaW5zdGFsbGVkGAEgASgIIisKKUNsb3VkSW50ZWdyYXRpb25zQ2hlY2tMaW5lYXJTdGF0dXNSZXF1ZXN0IkIKKkNsb3VkSW50ZWdyYXRpb25zQ2hlY2tMaW5lYXJTdGF0dXNSZXNwb25zZRIUCgxpc19jb25uZWN0ZWQYASABKAgiKgooQ2xvdWRJbnRlZ3JhdGlvbnNDaGVja1NsYWNrU3RhdHVzUmVxdWVzdCJBCilDbG91ZEludGVncmF0aW9uc0NoZWNrU2xhY2tTdGF0dXNSZXNwb25zZRIUCgxpc19jb25uZWN0ZWQYASABKAgilAEKL0Nsb3VkSW50ZWdyYXRpb25zQ3JlYXRlRXZlbnRTdWJzY3JpcHRpb25SZXF1ZXN0EhAKCGFnZW50X2lkGAEgASgJEg4KBnNvdXJjZRgCIAEoCRISCgpldmVudF90eXBlGAMgASgJEhYKDmZpbHRlcl9wYXlsb2FkGAQgASgJEhMKC2Rlc2NyaXB0aW9uGAUgASgJIksKMENsb3VkSW50ZWdyYXRpb25zQ3JlYXRlRXZlbnRTdWJzY3JpcHRpb25SZXNwb25zZRIXCg9zdWJzY3JpcHRpb25faWQYASABKAkiyAEKIkNsb3VkSW50ZWdyYXRpb25zRXZlbnRTdWJzY3JpcHRpb24SFwoPc3Vic2NyaXB0aW9uX2lkGAEgASgJEhAKCGFnZW50X2lkGAIgASgJEg4KBnNvdXJjZRgDIAEoCRISCgpldmVudF90eXBlGAQgASgJEhYKDmZpbHRlcl9wYXlsb2FkGAUgASgJEhMKC2Rlc2NyaXB0aW9uGAYgASgJEhIKCmNyZWF0ZWRfYXQYByABKAkSEgoKZXhwaXJlc19hdBgIIAEoCSIzCjFDbG91ZEludGVncmF0aW9uc0dldEF0bGFzc2lhbkFwcEluc3RhbGxVcmxSZXF1ZXN0IkkKMkNsb3VkSW50ZWdyYXRpb25zR2V0QXRsYXNzaWFuQXBwSW5zdGFsbFVybFJlc3BvbnNlEhMKC2luc3RhbGxfdXJsGAEgASgJIjAKLkNsb3VkSW50ZWdyYXRpb25zR2V0R2l0SHViQXBwSW5zdGFsbFVybFJlcXVlc3QiRgovQ2xvdWRJbnRlZ3JhdGlvbnNHZXRHaXRIdWJBcHBJbnN0YWxsVXJsUmVzcG9uc2USEwoLaW5zdGFsbF91cmwYASABKAkiKwopQ2xvdWRJbnRlZ3JhdGlvbnNHZXRMaW5lYXJPQXV0aFVybFJlcXVlc3QiPwoqQ2xvdWRJbnRlZ3JhdGlvbnNHZXRMaW5lYXJPQXV0aFVybFJlc3BvbnNlEhEKCW9hdXRoX3VybBgBIAEoCSIqCihDbG91ZEludGVncmF0aW9uc0dldFNsYWNrT0F1dGhVcmxSZXF1ZXN0Ij4KKUNsb3VkSW50ZWdyYXRpb25zR2V0U2xhY2tPQXV0aFVybFJlc3BvbnNlEhEKCW9hdXRoX3VybBgBIAEoCSJOCiJDbG91ZEludGVncmF0aW9uc0ludGVncmF0aW9uQWN0aW9uEgwKBGtpbmQYASABKAkSDQoFbGFiZWwYAiABKAkSCwoDdXJsGAMgASgJIpgCCiZDbG91ZEludGVncmF0aW9uc0ludGVncmF0aW9uRGVmaW5pdGlvbhIKCgJpZBgBIAEoCRINCgVsYWJlbBgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIRCgljb25uZWN0ZWQYBCABKAgSEwoLc3RhdHVzX2tpbmQYBSABKAkSFAoMc3RhdHVzX2xhYmVsGAYgASgJEj8KB2RldGFpbHMYByADKAsyLi5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zSW50ZWdyYXRpb25EZXRhaWwSPwoHYWN0aW9ucxgIIAMoCzIuLnB1YmxpY19hcGkuQ2xvdWRJbnRlZ3JhdGlvbnNJbnRlZ3JhdGlvbkFjdGlvbiJPCiJDbG91ZEludGVncmF0aW9uc0ludGVncmF0aW9uRGV0YWlsEgsKA2tleRgBIAEoCRINCgVsYWJlbBgCIAEoCRINCgV2YWx1ZRgDIAEoCSJMCiRDbG91ZEludGVncmF0aW9uc0ludm9rZUFjdGlvblJlcXVlc3QSFgoOaW50ZWdyYXRpb25faWQYASABKAkSDAoEa2luZBgCIAEoCSKWAQolQ2xvdWRJbnRlZ3JhdGlvbnNJbnZva2VBY3Rpb25SZXNwb25zZRITCgt1cmxfdG9fb3BlbhgBIAEoCRIPCgdtZXNzYWdlGAIgASgJEkcKC2ludGVncmF0aW9uGAMgASgLMjIucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0ludGVncmF0aW9uRGVmaW5pdGlvbiJCCi5DbG91ZEludGVncmF0aW9uc0xpc3RFdmVudFN1YnNjcmlwdGlvbnNSZXF1ZXN0EhAKCGFnZW50X2lkGAEgASgJIngKL0Nsb3VkSW50ZWdyYXRpb25zTGlzdEV2ZW50U3Vic2NyaXB0aW9uc1Jlc3BvbnNlEkUKDXN1YnNjcmlwdGlvbnMYASADKAsyLi5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zRXZlbnRTdWJzY3JpcHRpb24iHgocQ2xvdWRJbnRlZ3JhdGlvbnNMaXN0UmVxdWVzdCJpCh1DbG91ZEludGVncmF0aW9uc0xpc3RSZXNwb25zZRJICgxpbnRlZ3JhdGlvbnMYASADKAsyMi5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zSW50ZWdyYXRpb25EZWZpbml0aW9uIkoKKUNsb3VkSW50ZWdyYXRpb25zTGlzdFNsYWNrQ2hhbm5lbHNSZXF1ZXN0Eg4KBmN1cnNvchgBIAEoCRINCgVsaW1pdBgCIAEoDSKNAQoqQ2xvdWRJbnRlZ3JhdGlvbnNMaXN0U2xhY2tDaGFubmVsc1Jlc3BvbnNlEjsKCGNoYW5uZWxzGAEgAygLMikucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc1NsYWNrQ2hhbm5lbBITCgtuZXh0X2N1cnNvchgCIAEoCRINCgVlcnJvchgDIAEoCSIrCilDbG91ZEludGVncmF0aW9uc1Jldm9rZUdpdGh1Yk9BdXRoUmVxdWVzdCIsCipDbG91ZEludGVncmF0aW9uc1Jldm9rZUdpdGh1Yk9BdXRoUmVzcG9uc2UiKwopQ2xvdWRJbnRlZ3JhdGlvbnNSZXZva2VMaW5lYXJPQXV0aFJlcXVlc3QiLAoqQ2xvdWRJbnRlZ3JhdGlvbnNSZXZva2VMaW5lYXJPQXV0aFJlc3BvbnNlImAKHUNsb3VkSW50ZWdyYXRpb25zU2xhY2tDaGFubmVsEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEgoKaXNfcHJpdmF0ZRgDIAEoCBIRCglpc19tZW1iZXIYBCABKAgi8gEKDENsb3VkUHJvamVjdBISCgpwcm9qZWN0X2lkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSLgoKY3JlYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASEgoKY3JlYXRlZF9ieRgGIAEoCRI3CgZhZ2VudHMYByADKAsyJy5wdWJsaWNfYXBpLkNsb3VkUHJvamVjdEFnZW50TWVtYmVyc2hpcCJdChtDbG91ZFByb2plY3RBZ2VudE1lbWJlcnNoaXASEAoIYWdlbnRfaWQYASABKAkSLAoIYWRkZWRfYXQYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIkQKHENsb3VkUHJvamVjdHNBZGRBZ2VudFJlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCRIQCghhZ2VudF9pZBgCIAEoCSJKCh1DbG91ZFByb2plY3RzQWRkQWdlbnRSZXNwb25zZRIpCgdwcm9qZWN0GAEgASgLMhgucHVibGljX2FwaS5DbG91ZFByb2plY3QiRgohQ2xvdWRQcm9qZWN0c0NyZWF0ZVByb2plY3RSZXF1ZXN0EgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkiTwoiQ2xvdWRQcm9qZWN0c0NyZWF0ZVByb2plY3RSZXNwb25zZRIpCgdwcm9qZWN0GAEgASgLMhgucHVibGljX2FwaS5DbG91ZFByb2plY3QiNwohQ2xvdWRQcm9qZWN0c0RlbGV0ZVByb2plY3RSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkiJAoiQ2xvdWRQcm9qZWN0c0RlbGV0ZVByb2plY3RSZXNwb25zZSI0Ch5DbG91ZFByb2plY3RzR2V0UHJvamVjdFJlcXVlc3QSEgoKcHJvamVjdF9pZBgBIAEoCSJMCh9DbG91ZFByb2plY3RzR2V0UHJvamVjdFJlc3BvbnNlEikKB3Byb2plY3QYASABKAsyGC5wdWJsaWNfYXBpLkNsb3VkUHJvamVjdCIiCiBDbG91ZFByb2plY3RzTGlzdFByb2plY3RzUmVxdWVzdCJPCiFDbG91ZFByb2plY3RzTGlzdFByb2plY3RzUmVzcG9uc2USKgoIcHJvamVjdHMYASADKAsyGC5wdWJsaWNfYXBpLkNsb3VkUHJvamVjdCJHCh9DbG91ZFByb2plY3RzUmVtb3ZlQWdlbnRSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSEAoIYWdlbnRfaWQYAiABKAkiTQogQ2xvdWRQcm9qZWN0c1JlbW92ZUFnZW50UmVzcG9uc2USKQoHcHJvamVjdBgBIAEoCzIYLnB1YmxpY19hcGkuQ2xvdWRQcm9qZWN0Ip8ECg1DbG91ZFJlc2lkZW50EhMKC3Jlc2lkZW50X2lkGAEgASgJEi0KBXNjb3BlGAIgASgOMh4ucHVibGljX2FwaS5DbG91ZFJlc2lkZW50U2NvcGUSLwoGY29uZmlnGAMgASgLMh8ucHVibGljX2FwaS5DbG91ZFJlc2lkZW50Q29uZmlnEg8KB3VzZXJfaWQYBCABKAkSLgoKY3JlYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGAoQcmVzb3VyY2VfdmVyc2lvbhgHIAEoAxIYChBjdXJyZW50X2FnZW50X2lkGAggASgJEi4KCnN0YXJ0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhYKDmVmZmVjdGl2ZV9yb2xlGAogASgJEi4KCmRlbGV0ZWRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEkAKD3ByZXNlbmNlX3N0YXR1cxgMIAEoCzInLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudFByZXNlbmNlU3RhdHVzEjoKDXNwYWNlX3N1bW1hcnkYDSABKAsyIy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0U3BhY2VTdW1tYXJ5IsQDChNDbG91ZFJlc2lkZW50Q29uZmlnEgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSEQoJZXhwZXJ0X2lkGAMgASgJEhwKD2luaXRpYWxfbWVzc2FnZRgEIAEoCUgAiAEBEjoKCW92ZXJyaWRlcxgFIAEoCzIiLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudE92ZXJyaWRlc0gBiAEBEhsKDnJ1bl9hc191c2VyX2lkGAYgASgJSAKIAQESOAoIcHJlc2VuY2UYByABKAsyIS5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnRQcmVzZW5jZUgDiAEBEgwKBGljb24YCCABKAkSNwoEdGFncxgJIAMoCzIpLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudENvbmZpZy5UYWdzRW50cnkSEAoIaGFzX3RhZ3MYCiABKAgaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCEgoQX2luaXRpYWxfbWVzc2FnZUIMCgpfb3ZlcnJpZGVzQhEKD19ydW5fYXNfdXNlcl9pZEILCglfcHJlc2VuY2UiggEKGENsb3VkUmVzaWRlbnRFbnZWTUNvbmZpZxIVCg1iYXNlX2ltYWdlX2lkGAEgASgJEkEKCXJlc291cmNlcxgCIAEoCzIpLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudE1hY2hpbmVSZXNvdXJjZXNIAIgBAUIMCgpfcmVzb3VyY2VzIkYKHUNsb3VkUmVzaWRlbnRNYWNoaW5lUmVzb3VyY2VzEhEKCWNwdV9jb3JlcxgBIAEoAhISCgptZW1vcnlfbWliGAIgASgFIrIBChZDbG91ZFJlc2lkZW50T3ZlcnJpZGVzEjkKCXZtX2NvbmZpZxgCIAEoCzIkLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudEVudlZNQ29uZmlnSAASFgoMZGFlbW9uX3ZtX2lkGAMgASgJSAASGAoOZGFlbW9uX3Bvb2xfaWQYBCABKAlIABISCgVtb2RlbBgBIAEoCUgBiAEBQg0KC2Vudmlyb25tZW50QggKBl9tb2RlbCJTChVDbG91ZFJlc2lkZW50UHJlc2VuY2USLQoFc2xhY2sYASABKAsyHi5wdWJsaWNfYXBpLkNsb3VkU2xhY2tQcmVzZW5jZUoECAIQA1IFdGVhbXMiXwobQ2xvdWRSZXNpZGVudFByZXNlbmNlU3RhdHVzEjMKBXNsYWNrGAEgASgLMiQucHVibGljX2FwaS5DbG91ZFNsYWNrUHJlc2VuY2VTdGF0dXNKBAgCEANSBXRlYW1zIp0BChtDbG91ZFJlc2lkZW50U2Vzc2lvblN1bW1hcnkSEAoIYWdlbnRfaWQYASABKAkSDgoGc3RhdHVzGAIgASgJEi4KCnN0YXJ0ZWRfYXQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiwKCGVuZGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLUAQoZQ2xvdWRSZXNpZGVudFZlcnNpb25FbnRyeRIYChByZXNvdXJjZV92ZXJzaW9uGAEgASgDEi8KBmNvbmZpZxgCIAEoCzIfLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudENvbmZpZxItCgVzY29wZRgDIAEoDjIeLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudFNjb3BlEhMKC21vZGlmaWVkX2J5GAQgASgJEhMKC21vZGlmaWVkX2F0GAUgASgJEhMKC2NoYW5nZV90eXBlGAYgASgJIoUBCiNDbG91ZFJlc2lkZW50c0NyZWF0ZVJlc2lkZW50UmVxdWVzdBItCgVzY29wZRgBIAEoDjIeLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudFNjb3BlEi8KBmNvbmZpZxgCIAEoCzIfLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudENvbmZpZyJTCiRDbG91ZFJlc2lkZW50c0NyZWF0ZVJlc2lkZW50UmVzcG9uc2USKwoIcmVzaWRlbnQYASABKAsyGS5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnQiUAojQ2xvdWRSZXNpZGVudHNEZWxldGVSZXNpZGVudFJlcXVlc3QSFAoMcmVzaWRlbnRfaWRzGAEgAygJEhMKC2hhcmRfZGVsZXRlGAIgASgIImEKJENsb3VkUmVzaWRlbnRzRGVsZXRlUmVzaWRlbnRSZXNwb25zZRIcChRkZWxldGVkX3Jlc2lkZW50X2lkcxgBIAMoCRIbChNmYWlsZWRfcmVzaWRlbnRfaWRzGAIgAygJIjcKIENsb3VkUmVzaWRlbnRzR2V0UmVzaWRlbnRSZXF1ZXN0EhMKC3Jlc2lkZW50X2lkGAEgASgJIlAKIUNsb3VkUmVzaWRlbnRzR2V0UmVzaWRlbnRSZXNwb25zZRIrCghyZXNpZGVudBgBIAEoCzIZLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudCJQCh9DbG91ZFJlc2lkZW50c0dldFZlcnNpb25SZXF1ZXN0EhMKC3Jlc2lkZW50X2lkGAEgASgJEhgKEHJlc291cmNlX3ZlcnNpb24YAiABKAMiWgogQ2xvdWRSZXNpZGVudHNHZXRWZXJzaW9uUmVzcG9uc2USNgoHdmVyc2lvbhgBIAEoCzIlLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudFZlcnNpb25FbnRyeSKpAQoiQ2xvdWRSZXNpZGVudHNMaXN0UmVzaWRlbnRzUmVxdWVzdBIyCgVzY29wZRgBIAEoDjIeLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudFNjb3BlSACIAQESFwoPaW5jbHVkZV9kZWxldGVkGAIgASgIEhAKCHNwYWNlX2lkGAMgASgJEhoKEmRlZmF1bHRfc3BhY2Vfb25seRgEIAEoCEIICgZfc2NvcGUiUwojQ2xvdWRSZXNpZGVudHNMaXN0UmVzaWRlbnRzUmVzcG9uc2USLAoJcmVzaWRlbnRzGAEgAygLMhkucHVibGljX2FwaS5DbG91ZFJlc2lkZW50IjgKIUNsb3VkUmVzaWRlbnRzTGlzdFNlc3Npb25zUmVxdWVzdBITCgtyZXNpZGVudF9pZBgBIAEoCSJfCiJDbG91ZFJlc2lkZW50c0xpc3RTZXNzaW9uc1Jlc3BvbnNlEjkKCHNlc3Npb25zGAEgAygLMicucHVibGljX2FwaS5DbG91ZFJlc2lkZW50U2Vzc2lvblN1bW1hcnkiRwohQ2xvdWRSZXNpZGVudHNMaXN0VmVyc2lvbnNSZXF1ZXN0EhMKC3Jlc2lkZW50X2lkGAEgASgJEg0KBWxpbWl0GAIgASgFIl0KIkNsb3VkUmVzaWRlbnRzTGlzdFZlcnNpb25zUmVzcG9uc2USNwoIdmVyc2lvbnMYASADKAsyJS5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnRWZXJzaW9uRW50cnkiOwokQ2xvdWRSZXNpZGVudHNSZXN0b3JlUmVzaWRlbnRSZXF1ZXN0EhMKC3Jlc2lkZW50X2lkGAEgASgJIlQKJUNsb3VkUmVzaWRlbnRzUmVzdG9yZVJlc2lkZW50UmVzcG9uc2USKwoIcmVzaWRlbnQYASABKAsyGS5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnQizQEKLENsb3VkUmVzaWRlbnRzU2V0UmVzaWRlbnRUZW5hbnRBY2Nlc3NSZXF1ZXN0EhMKC3Jlc2lkZW50X2lkGAEgASgJEi0KBXNjb3BlGAIgASgOMh4ucHVibGljX2FwaS5DbG91ZFJlc2lkZW50U2NvcGUSEwoLdGVuYW50X3JvbGUYAyABKAkSJgoZZXhwZWN0ZWRfcmVzb3VyY2VfdmVyc2lvbhgEIAEoA0gAiAEBQhwKGl9leHBlY3RlZF9yZXNvdXJjZV92ZXJzaW9uIlwKLUNsb3VkUmVzaWRlbnRzU2V0UmVzaWRlbnRUZW5hbnRBY2Nlc3NSZXNwb25zZRIrCghyZXNpZGVudBgBIAEoCzIZLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudCJrCiJDbG91ZFJlc2lkZW50c1N0YXJ0UmVzaWRlbnRSZXF1ZXN0EhMKC3Jlc2lkZW50X2lkGAEgASgJEhwKD2luaXRpYWxfbWVzc2FnZRgCIAEoCUgAiAEBQhIKEF9pbml0aWFsX21lc3NhZ2UieQojQ2xvdWRSZXNpZGVudHNTdGFydFJlc2lkZW50UmVzcG9uc2USKwoIcmVzaWRlbnQYASABKAsyGS5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnQSJQoFYWdlbnQYAiABKAsyFi5wdWJsaWNfYXBpLkNsb3VkQWdlbnQiOAohQ2xvdWRSZXNpZGVudHNTdG9wUmVzaWRlbnRSZXF1ZXN0EhMKC3Jlc2lkZW50X2lkGAEgASgJIlEKIkNsb3VkUmVzaWRlbnRzU3RvcFJlc2lkZW50UmVzcG9uc2USKwoIcmVzaWRlbnQYASABKAsyGS5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnQi/wEKI0Nsb3VkUmVzaWRlbnRzVXBkYXRlUmVzaWRlbnRSZXF1ZXN0EhMKC3Jlc2lkZW50X2lkGAEgASgJEjQKBmNvbmZpZxgCIAEoCzIfLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudENvbmZpZ0gAiAEBEiYKGWV4cGVjdGVkX3Jlc291cmNlX3ZlcnNpb24YAyABKANIAYgBARIyCgVzY29wZRgEIAEoDjIeLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudFNjb3BlSAKIAQFCCQoHX2NvbmZpZ0IcChpfZXhwZWN0ZWRfcmVzb3VyY2VfdmVyc2lvbkIICgZfc2NvcGUiUwokQ2xvdWRSZXNpZGVudHNVcGRhdGVSZXNpZGVudFJlc3BvbnNlEisKCHJlc2lkZW50GAEgASgLMhkucHVibGljX2FwaS5DbG91ZFJlc2lkZW50ItgCChRDbG91ZFNhbmRib3hQcm92aWRlchIMCgRzbHVnGAEgASgJEhQKDGRpc3BsYXlfbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIPCgdlbmFibGVkGAUgASgIEhoKEmNyZWF0ZWRfYnlfdXNlcl9pZBgGIAEoCRISCgpjcmVhdGVkX2F0GAcgASgJEhIKCnVwZGF0ZWRfYXQYCCABKAkSGAoQcmVzb3VyY2VfdmVyc2lvbhgJIAEoAxISCgpkZWxldGVkX2F0GAogASgJEgoKAmlkGAsgASgJEjsKDXByb3ZpZGVyX3R5cGUYDCABKA4yJC5wdWJsaWNfYXBpLkNsb3VkU2FuZGJveFByb3ZpZGVyVHlwZRIRCglzcGFjZV9pZHMYDSADKAkSEgoKYWxsX3NwYWNlcxgOIAEoCEoECAQQBVIOc3lzdGVtX21hbmFnZWQingEKEkNsb3VkU2xhY2tQcmVzZW5jZRITCgttZW50aW9uYWJsZRgBIAEoCBIYChB1c2VyZ3JvdXBfaGFuZGxlGAIgASgJEhcKD2hvbWVfY2hhbm5lbF9pZBgDIAEoCRIkChdkaXJlY3RfbWVzc2FnZXNfZW5hYmxlZBgEIAEoCEgAiAEBQhoKGF9kaXJlY3RfbWVzc2FnZXNfZW5hYmxlZCJxChhDbG91ZFNsYWNrUHJlc2VuY2VTdGF0dXMSEgoKc3VidGVhbV9pZBgBIAEoCRIyCg5sYXN0X3N5bmNlZF9hdBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDQoFZXJyb3IYAyABKAki3AEKCkNsb3VkU3BhY2USEAoIc3BhY2VfaWQYASABKAkSFAoMZGlzcGxheV9uYW1lGAIgASgJEhcKD25vcm1hbGl6ZWRfbmFtZRgDIAEoCRIuCgpjcmVhdGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBISCgpjcmVhdGVkX2J5GAYgASgJEhkKEXBpbm5lZF9leHBlcnRfaWRzGAcgAygJIjUKHUNsb3VkU3BhY2VzQ3JlYXRlU3BhY2VSZXF1ZXN0EhQKDGRpc3BsYXlfbmFtZRgBIAEoCSJHCh5DbG91ZFNwYWNlc0NyZWF0ZVNwYWNlUmVzcG9uc2USJQoFc3BhY2UYASABKAsyFi5wdWJsaWNfYXBpLkNsb3VkU3BhY2UiMQodQ2xvdWRTcGFjZXNEZWxldGVTcGFjZVJlcXVlc3QSEAoIc3BhY2VfaWQYASABKAkiIAoeQ2xvdWRTcGFjZXNEZWxldGVTcGFjZVJlc3BvbnNlIi4KGkNsb3VkU3BhY2VzR2V0U3BhY2VSZXF1ZXN0EhAKCHNwYWNlX2lkGAEgASgJIkQKG0Nsb3VkU3BhY2VzR2V0U3BhY2VSZXNwb25zZRIlCgVzcGFjZRgBIAEoCzIWLnB1YmxpY19hcGkuQ2xvdWRTcGFjZSIeChxDbG91ZFNwYWNlc0xpc3RTcGFjZXNSZXF1ZXN0IkcKHUNsb3VkU3BhY2VzTGlzdFNwYWNlc1Jlc3BvbnNlEiYKBnNwYWNlcxgBIAMoCzIWLnB1YmxpY19hcGkuQ2xvdWRTcGFjZSJHCh1DbG91ZFNwYWNlc1VwZGF0ZVNwYWNlUmVxdWVzdBIQCghzcGFjZV9pZBgBIAEoCRIUCgxkaXNwbGF5X25hbWUYAiABKAkiRwoeQ2xvdWRTcGFjZXNVcGRhdGVTcGFjZVJlc3BvbnNlEiUKBXNwYWNlGAEgASgLMhYucHVibGljX2FwaS5DbG91ZFNwYWNlIlgKJUNsb3VkVHJpZ2dlcnNDcmVhdGVFdmVudFNvdXJjZVJlcXVlc3QSGQoRZXZlbnRfc291cmNlX2pzb24YASABKAkSFAoMZGVzaXJlZF9zbHVnGAIgASgJIkMKJkNsb3VkVHJpZ2dlcnNDcmVhdGVFdmVudFNvdXJjZVJlc3BvbnNlEhkKEWV2ZW50X3NvdXJjZV9qc29uGAEgASgJIlEKIkNsb3VkVHJpZ2dlcnNDcmVhdGVXb3JrZmxvd1JlcXVlc3QSFQoNd29ya2Zsb3dfanNvbhgBIAEoCRIUCgxkZXNpcmVkX3NsdWcYAiABKAkiPAojQ2xvdWRUcmlnZ2Vyc0NyZWF0ZVdvcmtmbG93UmVzcG9uc2USFQoNd29ya2Zsb3dfanNvbhgBIAEoCSJCCiZDbG91ZFRyaWdnZXJzRGVsZXRlRXZlbnRTb3VyY2VzUmVxdWVzdBIYChBldmVudF9zb3VyY2VfaWRzGAEgAygJIn0KJ0Nsb3VkVHJpZ2dlcnNEZWxldGVFdmVudFNvdXJjZXNSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEiAKGGRlbGV0ZWRfZXZlbnRfc291cmNlX2lkcxgCIAMoCRIfChdmYWlsZWRfZXZlbnRfc291cmNlX2lkcxgDIAMoCSJsCjJDbG91ZFRyaWdnZXJzRGVsZXRlV29ya2Zsb3dFeHBlY3RlZFJlc291cmNlVmVyc2lvbhITCgt3b3JrZmxvd19pZBgBIAEoCRIhChlleHBlY3RlZF9yZXNvdXJjZV92ZXJzaW9uGAIgASgDIp4BCiJDbG91ZFRyaWdnZXJzRGVsZXRlV29ya2Zsb3dSZXF1ZXN0EhQKDHdvcmtmbG93X2lkcxgBIAMoCRJiChpleHBlY3RlZF9yZXNvdXJjZV92ZXJzaW9ucxgCIAMoCzI+LnB1YmxpY19hcGkuQ2xvdWRUcmlnZ2Vyc0RlbGV0ZVdvcmtmbG93RXhwZWN0ZWRSZXNvdXJjZVZlcnNpb24ikQEKI0Nsb3VkVHJpZ2dlcnNEZWxldGVXb3JrZmxvd1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSHAoUZGVsZXRlZF93b3JrZmxvd19pZHMYAiADKAkSGwoTZmFpbGVkX3dvcmtmbG93X2lkcxgDIAMoCRIeChZub3RfZm91bmRfd29ya2Zsb3dfaWRzGAQgAygJIj0KIkNsb3VkVHJpZ2dlcnNHZXRFdmVudFNvdXJjZVJlcXVlc3QSFwoPZXZlbnRfc291cmNlX2lkGAEgASgJIkAKI0Nsb3VkVHJpZ2dlcnNHZXRFdmVudFNvdXJjZVJlc3BvbnNlEhkKEWV2ZW50X3NvdXJjZV9qc29uGAEgASgJIjYKH0Nsb3VkVHJpZ2dlcnNHZXRXb3JrZmxvd1JlcXVlc3QSEwoLd29ya2Zsb3dfaWQYASABKAkiOQogQ2xvdWRUcmlnZ2Vyc0dldFdvcmtmbG93UmVzcG9uc2USFQoNd29ya2Zsb3dfanNvbhgBIAEoCSImCiRDbG91ZFRyaWdnZXJzTGlzdEV2ZW50U291cmNlc1JlcXVlc3QiQwolQ2xvdWRUcmlnZ2Vyc0xpc3RFdmVudFNvdXJjZXNSZXNwb25zZRIaChJldmVudF9zb3VyY2VzX2pzb24YASABKAkiTwohQ2xvdWRUcmlnZ2Vyc0xpc3RXb3JrZmxvd3NSZXF1ZXN0EhcKD2V2ZW50X3NvdXJjZV9pZBgBIAEoCRIRCglleHBlcnRfaWQYAiABKAkiPAoiQ2xvdWRUcmlnZ2Vyc0xpc3RXb3JrZmxvd3NSZXNwb25zZRIWCg53b3JrZmxvd3NfanNvbhgBIAEoCSJlCiVDbG91ZFRyaWdnZXJzVXBkYXRlRXZlbnRTb3VyY2VSZXF1ZXN0EhkKEWV2ZW50X3NvdXJjZV9qc29uGAEgASgJEiEKGWV4cGVjdGVkX3Jlc291cmNlX3ZlcnNpb24YAiABKAMiQwomQ2xvdWRUcmlnZ2Vyc1VwZGF0ZUV2ZW50U291cmNlUmVzcG9uc2USGQoRZXZlbnRfc291cmNlX2pzb24YASABKAkiwwMKIkNsb3VkVHJpZ2dlcnNVcGRhdGVXb3JrZmxvd1JlcXVlc3QSEwoLd29ya2Zsb3dfaWQYASABKAkSEQoEbmFtZRgCIAEoCUgAiAEBEhQKB2VuYWJsZWQYAyABKAhIAYgBARImChlleHBlY3RlZF9yZXNvdXJjZV92ZXJzaW9uGAQgASgDSAKIAQESKgodb3ZlcnJpZGVfYXV0b19jbGVhbnVwX29uX2lkbGUYBSABKAhIA4gBARIqCh1wZXJfbWludXRlX2NyZWF0ZV9hZ2VudF9saW1pdBgGIAEoBUgEiAEBEiEKFGluaXRpYWxfaW5zdHJ1Y3Rpb25zGAcgASgJSAWIAQESGgoNYWN0b3JfdXNlcl9pZBgIIAEoCUgGiAEBQgcKBV9uYW1lQgoKCF9lbmFibGVkQhwKGl9leHBlY3RlZF9yZXNvdXJjZV92ZXJzaW9uQiAKHl9vdmVycmlkZV9hdXRvX2NsZWFudXBfb25faWRsZUIgCh5fcGVyX21pbnV0ZV9jcmVhdGVfYWdlbnRfbGltaXRCFwoVX2luaXRpYWxfaW5zdHJ1Y3Rpb25zQhAKDl9hY3Rvcl91c2VyX2lkIjwKI0Nsb3VkVHJpZ2dlcnNVcGRhdGVXb3JrZmxvd1Jlc3BvbnNlEhUKDXdvcmtmbG93X2pzb24YASABKAkiiAIKC0Nsb3VkVHVubmVsEhEKCXR1bm5lbF9pZBgBIAEoCRIQCghhZ2VudF9pZBgCIAEoCRINCgV2bV9pZBgDIAEoCRISCgpsb2NhbF9ob3N0GAQgASgJEhIKCmxvY2FsX3BvcnQYBSABKAUSDQoFbGFiZWwYBiABKAkSKQoEbW9kZRgHIAEoDjIbLnB1YmxpY19hcGkuQ2xvdWRUdW5uZWxNb2RlEi0KBnN0YXR1cxgIIAEoDjIdLnB1YmxpY19hcGkuQ2xvdWRUdW5uZWxTdGF0dXMSDAoEaG9zdBgJIAEoCRISCgpjcmVhdGVkX2F0GAogASgJEhIKCmV4cGlyZXNfYXQYCyABKAkiPQoYQ2xvdWRUdW5uZWxzQ2xvc2VSZXF1ZXN0EhEKCXR1bm5lbF9pZBgBIAEoCRIOCgZyZWFzb24YAiABKAkiRAoZQ2xvdWRUdW5uZWxzQ2xvc2VSZXNwb25zZRInCgZ0dW5uZWwYASABKAsyFy5wdWJsaWNfYXBpLkNsb3VkVHVubmVsIisKF0Nsb3VkVHVubmVsc0xpc3RSZXF1ZXN0EhAKCGFnZW50X2lkGAEgASgJIkQKGENsb3VkVHVubmVsc0xpc3RSZXNwb25zZRIoCgd0dW5uZWxzGAEgAygLMhcucHVibGljX2FwaS5DbG91ZFR1bm5lbCKGAQoXQ2xvdWRUdW5uZWxzT3BlblJlcXVlc3QSEAoIYWdlbnRfaWQYASABKAkSEgoKbG9jYWxfcG9ydBgCIAEoBRISCgpsb2NhbF9ob3N0GAMgASgJEg0KBWxhYmVsGAQgASgJEhUKCGFjdGl2YXRlGAUgASgISACIAQFCCwoJX2FjdGl2YXRlIkMKGENsb3VkVHVubmVsc09wZW5SZXNwb25zZRInCgZ0dW5uZWwYASABKAsyFy5wdWJsaWNfYXBpLkNsb3VkVHVubmVsIrABChpDbG91ZFVucG9vbGVkRGFlbW9uU3VtbWFyeRINCgV2bV9pZBgBIAEoCRIWCg53b3Jrc3BhY2VfcGF0aBgCIAEoCRISCgptYXhfYWdlbnRzGAMgASgFEhsKE2N1cnJlbnRfYWdlbnRfY291bnQYBCABKAUSFAoMY29ubmVjdGVkX2F0GAUgASgJEhYKDmxhc3RfaGVhcnRiZWF0GAYgASgJEgwKBG5hbWUYByABKAkiWQoaQ2xvdWRXZWJob29rc0NyZWF0ZVJlcXVlc3QSEwoLZGVzY3JpcHRpb24YASABKAkSDAoEdHlwZRgCIAEoCRIYChBjYXB0dXJlZF9oZWFkZXJzGAMgAygJInEKG0Nsb3VkV2ViaG9va3NDcmVhdGVSZXNwb25zZRIUCgx3ZWJob29rX2pzb24YASABKAkSCwoDdXJsGAIgASgJEg4KBnNlY3JldBgDIAEoCRIfChdzZXR1cF9pbnN0cnVjdGlvbnNfanNvbhgEIAEoCSIxChpDbG91ZFdlYmhvb2tzRGVsZXRlUmVxdWVzdBITCgt3ZWJob29rX2lkcxgBIAMoCSJnChtDbG91ZFdlYmhvb2tzRGVsZXRlUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIbChNkZWxldGVkX3dlYmhvb2tfaWRzGAIgAygJEhoKEmZhaWxlZF93ZWJob29rX2lkcxgDIAMoCSItChdDbG91ZFdlYmhvb2tzR2V0UmVxdWVzdBISCgp3ZWJob29rX2lkGAEgASgJIjAKGENsb3VkV2ViaG9va3NHZXRSZXNwb25zZRIUCgx3ZWJob29rX2pzb24YASABKAkiTAooQ2xvdWRXZWJob29rc0dldFNldHVwSW5zdHJ1Y3Rpb25zUmVxdWVzdBISCgp3ZWJob29rX2lkGAEgASgJEgwKBHR5cGUYAiABKAkiTAopQ2xvdWRXZWJob29rc0dldFNldHVwSW5zdHJ1Y3Rpb25zUmVzcG9uc2USHwoXc2V0dXBfaW5zdHJ1Y3Rpb25zX2pzb24YASABKAkiGgoYQ2xvdWRXZWJob29rc0xpc3RSZXF1ZXN0IjIKGUNsb3VkV2ViaG9va3NMaXN0UmVzcG9uc2USFQoNd2ViaG9va3NfanNvbhgBIAEoCSJDCh1DbG91ZFdlYmhvb2tzU2V0U2VjcmV0UmVxdWVzdBISCgp3ZWJob29rX2lkGAEgASgJEg4KBnNlY3JldBgCIAEoCSI2Ch5DbG91ZFdlYmhvb2tzU2V0U2VjcmV0UmVzcG9uc2USFAoMd2ViaG9va19qc29uGAEgASgJIpUBChpDbG91ZFdlYmhvb2tzVXBkYXRlUmVxdWVzdBISCgp3ZWJob29rX2lkGAEgASgJEhgKC2Rlc2NyaXB0aW9uGAIgASgJSACIAQESGAoQY2FwdHVyZWRfaGVhZGVycxgDIAMoCRIfChd1cGRhdGVfY2FwdHVyZWRfaGVhZGVycxgEIAEoCEIOCgxfZGVzY3JpcHRpb24iMwobQ2xvdWRXZWJob29rc1VwZGF0ZVJlc3BvbnNlEhQKDHdlYmhvb2tfanNvbhgBIAEoCSL7BAobQ29kZWJhc2VSZXRyaWV2YWxSYXdSZXF1ZXN0Ei4KB3F1ZXJpZXMYASADKAsyHS5wdWJsaWNfYXBpLlJhd1JldHJpZXZhbFF1ZXJ5EiAKBWJsb2JzGAIgASgLMhEucHVibGljX2FwaS5CbG9icxISCgptYXhfY2h1bmtzGAMgASgFEhkKEW1heF9vdXRwdXRfbGVuZ3RoGAQgASgFEhkKEXVzZXJfZ3VpZGVkX2Jsb2JzGAUgAygJEhsKE2V4dGVybmFsX3NvdXJjZV9pZHMYBiADKAkSJQodZGlzYWJsZV9hdXRvX2V4dGVybmFsX3NvdXJjZXMYByABKAgSDAoEcGF0aBgIIAEoCRIOCgZwcmVmaXgYCSABKAkSDgoGc3VmZml4GAogASgJEhUKDXNlbGVjdGVkX2NvZGUYCyABKAkSJAoGZGlhbG9nGAwgAygLMhQucHVibGljX2FwaS5FeGNoYW5nZRIjChtpbmNsdWRlX2Zvcm1hdHRlZF9yZXRyaWV2YWwYDSABKAgSHAoUaW5jbHVkZV9saW5lX251bWJlcnMYDiABKAgSHAoPY29udmVyc2F0aW9uX2lkGA8gASgJSACIAQESIwoWcGFyZW50X2NvbnZlcnNhdGlvbl9pZBgQIAEoCUgBiAEBEiEKFHJvb3RfY29udmVyc2F0aW9uX2lkGBEgASgJSAKIAQESFAoHdHVybl9pZBgSIAEoCUgDiAEBQhIKEF9jb252ZXJzYXRpb25faWRCGQoXX3BhcmVudF9jb252ZXJzYXRpb25faWRCFwoVX3Jvb3RfY29udmVyc2F0aW9uX2lkQgoKCF90dXJuX2lkIqQBChxDb2RlYmFzZVJldHJpZXZhbFJhd1Jlc3BvbnNlEi0KBmNodW5rcxgBIAMoCzIdLnB1YmxpY19hcGkuUmF3UmV0cmlldmVkQ2h1bmsSGwoTZm9ybWF0dGVkX3JldHJpZXZhbBgCIAEoCRIaChJ1bmtub3duX2Jsb2JfbmFtZXMYAyADKAkSHAoUY2hlY2twb2ludF9ub3RfZm91bmQYBCABKAgipQQKGENvZGViYXNlUmV0cmlldmFsUmVxdWVzdBIbChNpbmZvcm1hdGlvbl9yZXF1ZXN0GAEgASgJEiQKBmRpYWxvZxgCIAMoCzIULnB1YmxpY19hcGkuRXhjaGFuZ2USIAoFYmxvYnMYAyABKAsyES5wdWJsaWNfYXBpLkJsb2JzEhkKEW1heF9vdXRwdXRfbGVuZ3RoGAQgASgFEiIKGmRpc2FibGVfY29kZWJhc2VfcmV0cmlldmFsGAUgASgIEh8KF2VuYWJsZV9jb21taXRfcmV0cmlldmFsGAYgASgIEiUKHWVuYWJsZV9jb252ZXJzYXRpb25fcmV0cmlldmFsGAcgASgIEjYKEmJyaW5nX3lvdXJfb3duX2tleRgIIAEoCzIVLmNoYXQuQnJpbmdZb3VyT3duS2V5SACIAQESHAoPY29udmVyc2F0aW9uX2lkGAkgASgJSAGIAQESIwoWcGFyZW50X2NvbnZlcnNhdGlvbl9pZBgKIAEoCUgCiAEBEiEKFHJvb3RfY29udmVyc2F0aW9uX2lkGAsgASgJSAOIAQESFAoHdHVybl9pZBgMIAEoCUgEiAEBQhUKE19icmluZ195b3VyX293bl9rZXlCEgoQX2NvbnZlcnNhdGlvbl9pZEIZChdfcGFyZW50X2NvbnZlcnNhdGlvbl9pZEIXChVfcm9vdF9jb252ZXJzYXRpb25faWRCCgoIX3R1cm5faWQiuwYKGUNvZGViYXNlUmV0cmlldmFsUmVzcG9uc2USGwoTZm9ybWF0dGVkX3JldHJpZXZhbBgBIAEoCRIlCh1jb2RlYmFzZV9yZXRyaWV2YWxfZWxhcHNlZF9tcxgCIAEoBRIpCiFjb252ZXJzYXRpb25fcmV0cmlldmFsX2VsYXBzZWRfbXMYAyABKAUSKQohY29udmVyc2F0aW9uX2luaXRpYWxfcmV0cmlldmFsX21zGAQgASgFEicKH2NvbnZlcnNhdGlvbl9xdWVyeV9yZXdyaXRpbmdfbXMYBSABKAUSKgoiY29udmVyc2F0aW9uX2ZvbGxvd3VwX3JldHJpZXZhbF9tcxgGIAEoBRIbChNibG9iX25hbWVfbG9va3VwX21zGAcgASgFEiEKGWNvZGViYXNlX2NodW5rc19yZXRyaWV2ZWQYCCABKAUSIwobY29udmVyc2F0aW9uX2NodW5rc19pbml0aWFsGAkgASgFEiYKHmNvbnZlcnNhdGlvbl9xdWVyaWVzX2dlbmVyYXRlZBgKIAEoBRIkChxjb252ZXJzYXRpb25fY2h1bmtzX2ZvbGxvd3VwGAsgASgFEiQKHGNvbnZlcnNhdGlvbl9jaHVua3NfY29tYmluZWQYDCABKAUSKgoiY29kZWJhc2VfcmVzdWx0X2xlbl9wcmVfdHJ1bmNhdGlvbhgNIAEoBRIbChNjb2RlYmFzZV9yZXN1bHRfbGVuGA4gASgFEi4KJmNvbnZlcnNhdGlvbl9yZXN1bHRfbGVuX3ByZV90cnVuY2F0aW9uGA8gASgFEh8KF2NvbnZlcnNhdGlvbl9yZXN1bHRfbGVuGBAgASgFEhsKE2NvbWJpbmVkX3Jlc3VsdF9sZW4YESABKAUSFAoMdG90YWxfYnVkZ2V0GBIgASgFEhcKD2NvZGViYXNlX2J1ZGdldBgTIAEoBRIbChNjb252ZXJzYXRpb25fYnVkZ2V0GBQgASgFEhoKEmNvZGViYXNlX3RydW5jYXRlZBgVIAEoCBIeChZjb252ZXJzYXRpb25fdHJ1bmNhdGVkGBYgASgIEhcKD2ZpbmFsX3RydW5jYXRlZBgXIAEoCCJiChJDb21wbGV0aW9uRmVlZGJhY2sSEgoKcmVxdWVzdF9pZBgBIAEoCRIqCgZyYXRpbmcYAiABKA4yGi5wdWJsaWNfYXBpLkZlZWRiYWNrUmF0aW5nEgwKBG5vdGUYAyABKAkiHAoaQ29tcGxldGlvbkZlZWRiYWNrUmVzcG9uc2UigwEKDkNvbXBsZXRpb25JdGVtEgwKBHRleHQYASABKAkSFgoOc2tpcHBlZF9zdWZmaXgYAiABKAkSHwoXc3VmZml4X3JlcGxhY2VtZW50X3RleHQYAyABKAkSGQoMZmlsdGVyX3Njb3JlGAQgASgCSACIAQFCDwoNX2ZpbHRlcl9zY29yZSLKBgoRQ29tcGxldGlvblJlcXVlc3QSEgoFbW9kZWwYASABKAlIAIgBARIOCgZwcm9tcHQYAiABKAkSDAoEcGF0aBgDIAEoCRITCgZzdWZmaXgYBCABKAlIAYgBARIUCghtZW1vcmllcxgFIAMoCUICGAESEgoFdG9wX2sYBiABKAVIAogBARISCgV0b3BfcBgHIAEoAkgDiAEBEhgKC3RlbXBlcmF0dXJlGAggASgCSASIAQESFwoKbWF4X3Rva2VucxgJIAEoBUgFiAEBEhEKBGxhbmcYCiABKAlIBogBARIWCglibG9iX25hbWUYCyABKAlIB4gBARIZCgxwcmVmaXhfYmVnaW4YDCABKAVICIgBARIcCg9jdXJzb3JfcG9zaXRpb24YDSABKAVICYgBARIXCgpzdWZmaXhfZW5kGA4gASgFSAqIAQESMgoMcmVjZW5jeV9pbmZvGA8gASgLMhcucHVibGljX2FwaS5SZWNlbmN5SW5mb0gLiAEBEiAKBWJsb2JzGBAgASgLMhEucHVibGljX2FwaS5CbG9icxIYCgtzZXF1ZW5jZV9pZBgRIAEoDUgMiAEBEhsKCnByb2JlX29ubHkYEiABKAhCAhgBSA2IAQESHQoQZmlsdGVyX3RocmVzaG9sZBgTIAEoAkgOiAEBEi4KC2VkaXRfZXZlbnRzGBQgAygLMhkucHVibGljX2FwaS5GaWxlRWRpdEV2ZW50EjgKD2NvbXBsZXRpb25fdHlwZRgVIAEoDjIaLnB1YmxpY19hcGkuQ29tcGxldGlvblR5cGVID4gBAUIICgZfbW9kZWxCCQoHX3N1ZmZpeEIICgZfdG9wX2tCCAoGX3RvcF9wQg4KDF90ZW1wZXJhdHVyZUINCgtfbWF4X3Rva2Vuc0IHCgVfbGFuZ0IMCgpfYmxvYl9uYW1lQg8KDV9wcmVmaXhfYmVnaW5CEgoQX2N1cnNvcl9wb3NpdGlvbkINCgtfc3VmZml4X2VuZEIPCg1fcmVjZW5jeV9pbmZvQg4KDF9zZXF1ZW5jZV9pZEINCgtfcHJvYmVfb25seUITChFfZmlsdGVyX3RocmVzaG9sZEISChBfY29tcGxldGlvbl90eXBlIqQBChRDb21wbGV0aW9uUmVzb2x1dGlvbhISCgpyZXF1ZXN0X2lkGAEgASgJEhUKDWVtaXRfdGltZV9zZWMYAiABKAMSFgoOZW1pdF90aW1lX25zZWMYAyABKAUSGAoQcmVzb2x2ZV90aW1lX3NlYxgEIAEoAxIZChFyZXNvbHZlX3RpbWVfbnNlYxgFIAEoBRIUCgxhY2NlcHRlZF9pZHgYBiABKAUi4gIKEkNvbXBsZXRpb25SZXNwb25zZRIMCgR0ZXh0GAEgASgJEhwKFHVua25vd25fbWVtb3J5X25hbWVzGAIgAygJEiMKG3N1Z2dlc3RlZF9wcmVmaXhfY2hhcl9jb3VudBgDIAEoDRIjChtzdWdnZXN0ZWRfc3VmZml4X2NoYXJfY291bnQYBCABKA0SJgoVdW5rbm93bl9jaGVja3BvaW50X2lkGAUgASgJQgIYAUgAiAEBEiYKFWNvbXBsZXRpb25fdGltZW91dF9tcxgGIAEoDUICGAFIAYgBARI0ChBjb21wbGV0aW9uX2l0ZW1zGAcgAygLMhoucHVibGljX2FwaS5Db21wbGV0aW9uSXRlbRIcChRjaGVja3BvaW50X25vdF9mb3VuZBgIIAEoCEIYChZfdW5rbm93bl9jaGVja3BvaW50X2lkQhgKFl9jb21wbGV0aW9uX3RpbWVvdXRfbXMiowMKEENvbnZlcnNhdGlvbkluZm8SFwoPY29udmVyc2F0aW9uX2lkGAEgASgJEhQKDHdvcmtzcGFjZV9pZBgCIAEoCRINCgV0aXRsZRgDIAEoCRIRCglpc19waW5uZWQYBCABKAgSKgoEdHlwZRgFIAEoDjIcLnB1YmxpY19hcGkuQ29udmVyc2F0aW9uVHlwZRIzCgpjcmVhdGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEjMKCnVwZGF0ZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESKAobZm9ya2VkX2Zyb21fY29udmVyc2F0aW9uX2lkGAggASgJSAKIAQESJAoXZm9ya2VkX2Zyb21fZXhjaGFuZ2VfaWQYCSABKAlIA4gBAUINCgtfY3JlYXRlZF9hdEINCgtfdXBkYXRlZF9hdEIeChxfZm9ya2VkX2Zyb21fY29udmVyc2F0aW9uX2lkQhoKGF9mb3JrZWRfZnJvbV9leGNoYW5nZV9pZCLEAQoWQ29zdEFuYWx5dGljc0RhdGFQb2ludBI2CgpkYXRlX3JhbmdlGAEgASgLMiIucHVibGljX2FwaS5Db3N0QW5hbHl0aWNzRGF0ZVJhbmdlEjEKB21ldHJpY3MYAiABKAsyIC5wdWJsaWNfYXBpLkNvc3RBbmFseXRpY3NNZXRyaWNzEj8KD2dyb3VwX2J5X3ZhbHVlcxgDIAEoCzImLnB1YmxpY19hcGkuQ29zdEFuYWx5dGljc0dyb3VwQnlWYWx1ZXMidgoWQ29zdEFuYWx5dGljc0RhdGVSYW5nZRIuCgpzdGFydF9kYXRlGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIsCghlbmRfZGF0ZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiOgoXQ29zdEFuYWx5dGljc0V4cGVydEluZm8SEQoJZXhwZXJ0X2lkGAEgASgJEgwKBG5hbWUYAiABKAkiewoUQ29zdEFuYWx5dGljc0ZpbHRlcnMSEAoIdXNlcl9pZHMYASADKAkSHQoVcHJvZHVjdF9kaXNwbGF5X25hbWVzGAIgAygJEh4KFnJlc291cmNlX2Rpc3BsYXlfbmFtZXMYAyADKAkSEgoKZXhwZXJ0X2lkcxgEIAMoCSL8AgoaQ29zdEFuYWx5dGljc0dyb3VwQnlWYWx1ZXMSGgoSbW9kZWxfZGlzcGxheV9uYW1lGAEgASgJEh0KFWFjdGl2aXR5X2Rpc3BsYXlfbmFtZRgCIAEoCRI0Cgl1c2VyX2luZm8YAyABKAsyIS5wdWJsaWNfYXBpLkNvc3RBbmFseXRpY3NVc2VySW5mbxI4CgtieW9rX3N0YXR1cxgEIAEoDjIjLnB1YmxpY19hcGkuQ29zdEFuYWx5dGljc0J5b2tTdGF0dXMSHQoVcmVzb3VyY2VfZGlzcGxheV9uYW1lGAUgASgJEhwKFHByb2R1Y3RfZGlzcGxheV9uYW1lGAYgASgJEjwKDXJlc291cmNlX3R5cGUYByABKA4yJS5wdWJsaWNfYXBpLkNvc3RBbmFseXRpY3NSZXNvdXJjZVR5cGUSOAoLZXhwZXJ0X2luZm8YCCABKAsyIy5wdWJsaWNfYXBpLkNvc3RBbmFseXRpY3NFeHBlcnRJbmZvIpkCChRDb3N0QW5hbHl0aWNzTWV0cmljcxIZChFiaWxsZWRfYW1vdW50X3VzZBgBIAEoCRIjChtlc3RpbWF0ZWRfY3VzdG9tZXJfY29zdF91c2QYAiABKAkSFQoNYmFzZV9jb3N0X3VzZBgDIAEoCRIVCg1zdXJjaGFyZ2VfdXNkGAQgASgJEhQKDGlucHV0X3Rva2VucxgFIAEoBBIVCg1vdXRwdXRfdG9rZW5zGAYgASgEEhkKEWNhY2hlX3JlYWRfdG9rZW5zGAcgASgEEhoKEmNhY2hlX3dyaXRlX3Rva2VucxgIIAEoBBIYChBjcmVkaXRzX2NvbnN1bWVkGAkgASgJEhUKDXNlc3Npb25fY291bnQYCiABKAQicgoWQ29zdEFuYWx5dGljc1RhZ0ZpbHRlchILCgNrZXkYASABKAkSDgoGdmFsdWVzGAIgAygJEjsKC2ZpbHRlcl90eXBlGAMgASgOMiYucHVibGljX2FwaS5Db3N0QW5hbHl0aWNzVGFnRmlsdGVyVHlwZSJ1ChVDb3N0QW5hbHl0aWNzVXNlckluZm8SDwoHdXNlcl9pZBgBIAEoCRI0Cgl1c2VyX3R5cGUYAiABKA4yIS5wdWJsaWNfYXBpLkNvc3RBbmFseXRpY3NVc2VyVHlwZRIVCg1lbWFpbF9vcl9uYW1lGAMgASgJIsgBChhDb3N0QW5hbHl0aWNzVjJEYXRhUG9pbnQSNgoKZGF0ZV9yYW5nZRgBIAEoCzIiLnB1YmxpY19hcGkuQ29zdEFuYWx5dGljc0RhdGVSYW5nZRIxCgdtZXRyaWNzGAIgASgLMiAucHVibGljX2FwaS5Db3N0QW5hbHl0aWNzTWV0cmljcxJBCg9ncm91cF9ieV92YWx1ZXMYAyABKAsyKC5wdWJsaWNfYXBpLkNvc3RBbmFseXRpY3NWMkdyb3VwQnlWYWx1ZXMiUQoWQ29zdEFuYWx5dGljc1YyRmlsdGVycxI3Cgt0YWdfZmlsdGVycxgBIAMoCzIiLnB1YmxpY19hcGkuQ29zdEFuYWx5dGljc1RhZ0ZpbHRlciKiAgocQ29zdEFuYWx5dGljc1YyR3JvdXBCeVZhbHVlcxJACgR0YWdzGAEgAygLMjIucHVibGljX2FwaS5Db3N0QW5hbHl0aWNzVjJHcm91cEJ5VmFsdWVzLlRhZ3NFbnRyeRJaChJ0YWdfZGlzcGxheV92YWx1ZXMYAiADKAsyPi5wdWJsaWNfYXBpLkNvc3RBbmFseXRpY3NWMkdyb3VwQnlWYWx1ZXMuVGFnRGlzcGxheVZhbHVlc0VudHJ5GisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGjcKFVRhZ0Rpc3BsYXlWYWx1ZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIpMBChdDb3VudENoYXRIaXN0b3J5UmVxdWVzdBIYChBjb252ZXJzYXRpb25faWRzGAEgAygJEhsKDmV4Y2x1ZGVfc2lsZW50GAIgASgISACIAQESGwoOZXhjbHVkZV9mYWlsZWQYAyABKAhIAYgBAUIRCg9fZXhjbHVkZV9zaWxlbnRCEQoPX2V4Y2x1ZGVfZmFpbGVkIlAKGENvdW50Q2hhdEhpc3RvcnlSZXNwb25zZRI0CgdyZXN1bHRzGAEgAygLMiMucHVibGljX2FwaS5Db3VudENvbnZlcnNhdGlvblJlc3VsdCJeChdDb3VudENvbnZlcnNhdGlvblJlc3VsdBIPCgVjb3VudBgCIAEoBUgAEg8KBWVycm9yGAMgASgJSAASFwoPY29udmVyc2F0aW9uX2lkGAEgASgJQggKBnJlc3VsdCK9AgoZQ3JlYXRlQ29udmVyc2F0aW9uUmVxdWVzdBIUCgx3b3Jrc3BhY2VfaWQYASABKAkSDQoFdGl0bGUYAiABKAkSEQoJaXNfcGlubmVkGAMgASgIEioKBHR5cGUYBCABKA4yHC5wdWJsaWNfYXBpLkNvbnZlcnNhdGlvblR5cGUSHAoPY29udmVyc2F0aW9uX2lkGAUgASgJSACIAQESKAobZm9ya2VkX2Zyb21fY29udmVyc2F0aW9uX2lkGAYgASgJSAGIAQESJAoXZm9ya2VkX2Zyb21fZXhjaGFuZ2VfaWQYByABKAlIAogBAUISChBfY29udmVyc2F0aW9uX2lkQh4KHF9mb3JrZWRfZnJvbV9jb252ZXJzYXRpb25faWRCGgoYX2ZvcmtlZF9mcm9tX2V4Y2hhbmdlX2lkIjUKGkNyZWF0ZUNvbnZlcnNhdGlvblJlc3BvbnNlEhcKD2NvbnZlcnNhdGlvbl9pZBgBIAEoCSKIAQoYQ3JlYXRlUHVsbFJlcXVlc3RSZXF1ZXN0EiQKBHJlcG8YASABKAsyFi5wdWJsaWNfYXBpLkdpdGh1YlJlcG8SDQoFdGl0bGUYAiABKAkSDAoEYm9keRgDIAEoCRIMCgRoZWFkGAQgASgJEgwKBGJhc2UYBSABKAkSDQoFZHJhZnQYBiABKAgiUAoZQ3JlYXRlUHVsbFJlcXVlc3RSZXNwb25zZRIzCgxwdWxsX3JlcXVlc3QYASABKAsyHS5wdWJsaWNfYXBpLkdpdGh1YlB1bGxSZXF1ZXN0IqoDChhDcmVhdGVSZW1vdGVBZ2VudFJlcXVlc3QSPgoPd29ya3NwYWNlX3NldHVwGAEgASgLMiUucHVibGljX2FwaS5SZW1vdGVBZ2VudFdvcmtzcGFjZVNldHVwEkoKF2luaXRpYWxfcmVxdWVzdF9kZXRhaWxzGAIgASgLMikucHVibGljX2FwaS5SZW1vdGVBZ2VudENoYXRSZXF1ZXN0RGV0YWlscxISCgVtb2RlbBgDIAEoCUgAiAEBEhkKDHNldHVwX3NjcmlwdBgEIAEoCUgBiAEBEhIKBXRva2VuGAUgASgJSAKIAQESIgoVaXNfc2V0dXBfc2NyaXB0X2FnZW50GAYgASgISAOIAQESEgoFdGl0bGUYByABKAlIBIgBARIXCgppbWFnZV9uYW1lGAggASgJSAWIAQESFgoOZGlzYWJsZWRfdG9vbHMYCSADKAlCCAoGX21vZGVsQg8KDV9zZXR1cF9zY3JpcHRCCAoGX3Rva2VuQhgKFl9pc19zZXR1cF9zY3JpcHRfYWdlbnRCCAoGX3RpdGxlQg0KC19pbWFnZV9uYW1lImMKGUNyZWF0ZVJlbW90ZUFnZW50UmVzcG9uc2USFwoPcmVtb3RlX2FnZW50X2lkGAEgASgJEi0KBnN0YXR1cxgCIAEoDjIdLnB1YmxpY19hcGkuUmVtb3RlQWdlbnRTdGF0dXMiTwoUQ3JlYXRlVHJpZ2dlclJlcXVlc3QSNwoNY29uZmlndXJhdGlvbhgBIAEoCzIgLnB1YmxpY19hcGkuVHJpZ2dlckNvbmZpZ3VyYXRpb24iPQoVQ3JlYXRlVHJpZ2dlclJlc3BvbnNlEiQKB3RyaWdnZXIYASABKAsyEy5wdWJsaWNfYXBpLlRyaWdnZXIiLAoWQ3JlYXRlV29ya3NwYWNlUmVxdWVzdBIMCgRuYW1lGAEgASgJSgQIAhADIi8KF0NyZWF0ZVdvcmtzcGFjZVJlc3BvbnNlEhQKDHdvcmtzcGFjZV9pZBgBIAEoCSIyChFDcmVkaXREZXRhaWxzSW5mbxINCgVsYWJlbBgBIAEoCRIOCgZhbW91bnQYAiABKAEijgEKEUNyZWRpdERpc3BsYXlJbmZvEh8KF3VzYWdlX3VuaXRfZGlzcGxheV9uYW1lGAEgASgJEhkKEXBsYW5fZGlzcGxheV9uYW1lGAIgASgJEjIKBmJhbm5lchgDIAEoCzIdLnB1YmxpY19hcGkuQmFubmVySW5mb3JtYXRpb25IAIgBAUIJCgdfYmFubmVyIjMKGERlbGV0ZVJlbW90ZUFnZW50UmVxdWVzdBIXCg9yZW1vdGVfYWdlbnRfaWQYASABKAkiGwoZRGVsZXRlUmVtb3RlQWdlbnRSZXNwb25zZSJDChlEZWxldGVUZW5hbnRTZWNyZXRSZXF1ZXN0EgwKBG5hbWUYASABKAkSGAoQZXhwZWN0ZWRfdmVyc2lvbhgCIAEoCSItChpEZWxldGVUZW5hbnRTZWNyZXRSZXNwb25zZRIPCgdkZWxldGVkGAEgASgIIioKFERlbGV0ZVRyaWdnZXJSZXF1ZXN0EhIKCnRyaWdnZXJfaWQYASABKAkiFwoVRGVsZXRlVHJpZ2dlclJlc3BvbnNlInwKF0RlbGV0ZVVzZXJTZWNyZXRSZXF1ZXN0EgwKBG5hbWUYASABKAkSGAoQZXhwZWN0ZWRfdmVyc2lvbhgCIAEoCRImCgVzY29wZRgDIAEoDjIXLnB1YmxpY19hcGkuU2VjcmV0U2NvcGUSEQoJc2VjcmV0X2lkGAQgASgJIisKGERlbGV0ZVVzZXJTZWNyZXRSZXNwb25zZRIPCgdkZWxldGVkGAEgASgIInUKFkRpZmZFeHBsYW5hdGlvblNlY3Rpb24SDQoFdGl0bGUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSNwoIc2VjdGlvbnMYAyADKAsyJS5wdWJsaWNfYXBpLkRpZmZFeHBsYW5hdGlvblN1YlNlY3Rpb24imwEKGURpZmZFeHBsYW5hdGlvblN1YlNlY3Rpb24SDQoFdGl0bGUYASABKAkSRgoMZGVzY3JpcHRpb25zGAIgAygLMjAucHVibGljX2FwaS5EaWZmRXhwbGFuYXRpb25TdWJTZWN0aW9uRGVzY3JpcHRpb24SJwoJZGlmZl90eXBlGAMgASgOMhQucHVibGljX2FwaS5EaWZmVHlwZSJ7CiREaWZmRXhwbGFuYXRpb25TdWJTZWN0aW9uRGVzY3JpcHRpb24SDAoEcGF0aBgBIAEoCRIMCgR0ZXh0GAIgASgJEiAKBXJhbmdlGAMgASgLMhEucHVibGljX2FwaS5SYW5nZRIVCg1zZWxlY3RlZF9jb2RlGAQgASgJIlAKFERpc21pc3NFbnRpdHlSZXF1ZXN0EhIKCnRyaWdnZXJfaWQYASABKAkSEQoJZW50aXR5X2lkGAIgASgJEhEKCWRpc21pc3NlZBgDIAEoCCIXChVEaXNtaXNzRW50aXR5UmVzcG9uc2UidAoYRHJvcHBlZFNoYXJlZFNlcnZlck9wdEluEhEKCXNlcnZlcl9pZBgBIAEoCRIOCgZyZWFzb24YAiABKAkSGQoRb3B0X2luX2dlbmVyYXRpb24YAyABKAMSGgoSY3VycmVudF9nZW5lcmF0aW9uGAQgASgDInQKD0VkaXRGaWxlUmVxdWVzdBIRCglmaWxlX3BhdGgYASABKAkSFAoMZWRpdF9zdW1tYXJ5GAIgASgJEiEKGWRldGFpbGVkX2VkaXRfZGVzY3JpcHRpb24YAyABKAkSFQoNZmlsZV9jb250ZW50cxgEIAEoCSJEChBFZGl0RmlsZVJlc3BvbnNlEh4KFm1vZGlmaWVkX2ZpbGVfY29udGVudHMYASABKAkSEAoIaXNfZXJyb3IYAiABKAgijQMKC0VkaXRSZXF1ZXN0EhIKBW1vZGVsGAEgASgJSACIAQESDgoGcHJlZml4GAIgASgJEhUKDXNlbGVjdGVkX3RleHQYAyABKAkSDgoGc3VmZml4GAQgASgJEhYKCmJsb2JfbmFtZXMYBSADKAlCAhgBEhEKBHBhdGgYBiABKAlIAYgBARITCgtpbnN0cnVjdGlvbhgHIAEoCRIRCgRsYW5nGAggASgJSAKIAQESFgoJYmxvYl9uYW1lGAkgASgJSAOIAQESGQoMcHJlZml4X2JlZ2luGAogASgFSASIAQESFwoKc3VmZml4X2VuZBgLIAEoBUgFiAEBEhgKC3NlcXVlbmNlX2lkGAwgASgNSAaIAQESIAoFYmxvYnMYDSABKAsyES5wdWJsaWNfYXBpLkJsb2JzQggKBl9tb2RlbEIHCgVfcGF0aEIHCgVfbGFuZ0IMCgpfYmxvYl9uYW1lQg8KDV9wcmVmaXhfYmVnaW5CDQoLX3N1ZmZpeF9lbmRCDgoMX3NlcXVlbmNlX2lkIqQCCg5FZGl0UmVzb2x1dGlvbhIXCgtjbGllbnRfbmFtZRgBIAEoCUICGAESEgoKcmVxdWVzdF9pZBgCIAEoCRIVCg1lbWl0X3RpbWVfc2VjGAMgASgDEhYKDmVtaXRfdGltZV9uc2VjGAQgASgFEhgKEHJlc29sdmVfdGltZV9zZWMYBSABKAMSGQoRcmVzb2x2ZV90aW1lX25zZWMYBiABKAUSEwoLaXNfYWNjZXB0ZWQYByABKAgSGwoOYW5ub3RhdGVkX3RleHQYCCABKAlIAIgBARIiChVhbm5vdGF0ZWRfaW5zdHJ1Y3Rpb24YCSABKAlIAYgBAUIRCg9fYW5ub3RhdGVkX3RleHRCGAoWX2Fubm90YXRlZF9pbnN0cnVjdGlvbiJWCgxFZGl0UmVzcG9uc2USDAoEdGV4dBgBIAEoCRIaChJ1bmtub3duX2Jsb2JfbmFtZXMYAiADKAkSHAoUY2hlY2twb2ludF9ub3RfZm91bmQYAyABKAgiGAoWRW50ZXJwcmlzZVN1YnNjcmlwdGlvbiKNAgoIRXhjaGFuZ2USFwoPcmVxdWVzdF9tZXNzYWdlGAEgASgJEhoKDXJlc3BvbnNlX3RleHQYAiABKAlIAIgBARIXCgpyZXF1ZXN0X2lkGAMgASgJSAGIAQESMgoNcmVxdWVzdF9ub2RlcxgEIAMoCzIbLnB1YmxpY19hcGkuQ2hhdFJlcXVlc3ROb2RlEjIKDnJlc3BvbnNlX25vZGVzGAUgAygLMhoucHVibGljX2FwaS5DaGF0UmVzdWx0Tm9kZRIZCgxjb21wb3NpdGVfaWQYBiABKAlIAogBAUIQCg5fcmVzcG9uc2VfdGV4dEINCgtfcmVxdWVzdF9pZEIPCg1fY29tcG9zaXRlX2lkItEBCg5FeGNoYW5nZVVwZGF0ZRIXCgpyZXF1ZXN0X2lkGAEgASgJSACIAQESEwoLc2VxdWVuY2VfaWQYAiABKA0SFQoNYXBwZW5kZWRfdGV4dBgDIAEoCRIyCg5hcHBlbmRlZF9ub2RlcxgEIAMoCzIaLnB1YmxpY19hcGkuQ2hhdFJlc3VsdE5vZGUSNwoWYXBwZW5kZWRfY2hhbmdlZF9maWxlcxgFIAMoCzIXLnB1YmxpY19hcGkuQ2hhbmdlZEZpbGVCDQoLX3JlcXVlc3RfaWQiiQIKGUV4ZWN1dGVNYW51YWxBZ2VudFJlcXVlc3QSEQoJZW50aXR5X2lkGAEgASgJEj0KEmdpdGh1Yl9lbnRpdHlfdHlwZRgCIAEoDjIcLnB1YmxpY19hcGkuR2l0SHViRW50aXR5VHlwZUgAiAEBEj0KEmxpbmVhcl9lbnRpdHlfdHlwZRgDIAEoDjIcLnB1YmxpY19hcGkuTGluZWFyRW50aXR5VHlwZUgBiAEBEi0KDGFnZW50X2NvbmZpZxgEIAEoCzIXLnB1YmxpY19hcGkuQWdlbnRDb25maWdCFQoTX2dpdGh1Yl9lbnRpdHlfdHlwZUIVChNfbGluZWFyX2VudGl0eV90eXBlIoYBChpFeGVjdXRlTWFudWFsQWdlbnRSZXNwb25zZRIUCgxleGVjdXRpb25faWQYASABKAkSHAoPcmVtb3RlX2FnZW50X2lkGAIgASgJSACIAQESFAoHbWVzc2FnZRgDIAEoCUgBiAEBQhIKEF9yZW1vdGVfYWdlbnRfaWRCCgoIX21lc3NhZ2UicgodRXhlY3V0ZVRyaWdnZXJNYW51YWxseVJlcXVlc3QSEgoKdHJpZ2dlcl9pZBgBIAEoCRIRCgllbnRpdHlfaWQYAiABKAkSGQoMZXh0cmFfcHJvbXB0GAMgASgJSACIAQFCDwoNX2V4dHJhX3Byb21wdCKKAQoeRXhlY3V0ZVRyaWdnZXJNYW51YWxseVJlc3BvbnNlEhQKDGV4ZWN1dGlvbl9pZBgBIAEoCRIcCg9yZW1vdGVfYWdlbnRfaWQYAiABKAlIAIgBARIUCgdtZXNzYWdlGAMgASgJSAGIAQFCEgoQX3JlbW90ZV9hZ2VudF9pZEIKCghfbWVzc2FnZSJuCg5FeHRlcm5hbFNvdXJjZRIKCgJpZBgBIAEoCRIMCgRuYW1lGAQgASgJEg0KBXRpdGxlGAIgASgJEjMKC3NvdXJjZV90eXBlGAMgASgOMh4ucHVibGljX2FwaS5FeHRlcm5hbFNvdXJjZVR5cGUi+wUKDkZlYXR1cmVDb250cm9sEj0KDWZlYXR1cmVfdHlwZXMYASADKA4yJi5wdWJsaWNfYXBpLkZlYXR1cmVDb250cm9sLkZlYXR1cmVUeXBlEjYKBXN0YXRlGAIgASgOMicucHVibGljX2FwaS5GZWF0dXJlQ29udHJvbC5GZWF0dXJlU3RhdGUSSQoPZGlzYWJsZWRfcmVhc29uGAMgASgOMjAucHVibGljX2FwaS5GZWF0dXJlQ29udHJvbC5GZWF0dXJlRGlzYWJsZWRSZWFzb24SLAoIZW5kX2RhdGUYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjsKDGRpc3BsYXlfaW5mbxgFIAEoCzIlLnB1YmxpY19hcGkuRmVhdHVyZUNvbnRyb2xEaXNwbGF5SW5mbyLqAQoLRmVhdHVyZVR5cGUSCwoHVU5LTk9XThAAEhAKDEFMTF9GRUFUVVJFUxABEggKBENIQVQQAhIJCgVBR0VOVBADEhAKDFJFTU9URV9BR0VOVBAEEg0KCUNMSV9BR0VOVBAFEg8KC09SSUVOVEFUSU9OEAcSDwoLQ09ERV9SRVZJRVcQCRIiCh5DSEFUX1NUUkVBTV9DUkVESVRfQ09OU1VNUFRJT04QFRISCg5DT05URVhUX0VOR0lORRAWEgwKCFBPU0VJRE9OEBkSEgoOSU5ERVhJTkdfSU5GUkEQHCIECAYQBiIECAgQCCI8CgxGZWF0dXJlU3RhdGUSEQoNU1RBVEVfVU5LTk9XThAAEgsKB0VOQUJMRUQQARIMCghESVNBQkxFRBACIpABChVGZWF0dXJlRGlzYWJsZWRSZWFzb24SEgoOUkVBU09OX1VOS05PV04QABIZChVJTkFDVElWRV9TVUJTQ1JJUFRJT04QARIaChZVU0FHRV9CQUxBTkNFX0RFUExFVEVEEAISGAoUTk9UX0lOQ0xVREVEX0lOX1BMQU4QAxISCg5RVU9UQV9FWENFRURFRBAEIlAKGUZlYXR1cmVDb250cm9sRGlzcGxheUluZm8SLQoGYmFubmVyGAIgASgLMh0ucHVibGljX2FwaS5CYW5uZXJJbmZvcm1hdGlvbkoECAEQAiJJChFGZWF0dXJlR2F0aW5nSW5mbxI0ChBmZWF0dXJlX2NvbnRyb2xzGAEgAygLMhoucHVibGljX2FwaS5GZWF0dXJlQ29udHJvbCJeCghGaWxlRWRpdBIUCgxiZWZvcmVfc3RhcnQYASABKA0SEwoLYmVmb3JlX3RleHQYAiABKAkSEwoLYWZ0ZXJfc3RhcnQYAyABKA0SEgoKYWZ0ZXJfdGV4dBgEIAEoCSJ1Cg1GaWxlRWRpdEV2ZW50EgwKBHBhdGgYASABKAkSGAoQYmVmb3JlX2Jsb2JfbmFtZRgCIAEoCRIXCg9hZnRlcl9ibG9iX25hbWUYAyABKAkSIwoFZWRpdHMYBCADKAsyFC5wdWJsaWNfYXBpLkZpbGVFZGl0IkwKEkZpbmRNaXNzaW5nUmVxdWVzdBISCgVtb2RlbBgBIAEoCUgAiAEBEhgKEG1lbV9vYmplY3RfbmFtZXMYAiADKAlCCAoGX21vZGVsIlIKE0ZpbmRNaXNzaW5nUmVzcG9uc2USHAoUdW5rbm93bl9tZW1vcnlfbmFtZXMYAiADKAkSHQoVbm9uaW5kZXhlZF9ibG9iX25hbWVzGAMgAygJItMBChxHZW5lcmF0ZUNvbW1pdE1lc3NhZ2VSZXF1ZXN0Ej0KEmNoYW5nZWRfZmlsZV9zdGF0cxgBIAEoCzIcLnB1YmxpY19hcGkuQ2hhbmdlZEZpbGVTdGF0c0gAiAEBEhEKBGRpZmYYAiABKAlIAYgBARIgChhyZWxldmFudF9jb21taXRfbWVzc2FnZXMYAyADKAkSHwoXZXhhbXBsZV9jb21taXRfbWVzc2FnZXMYBCADKAlCFQoTX2NoYW5nZWRfZmlsZV9zdGF0c0IHCgVfZGlmZiItCh1HZW5lcmF0ZUNvbW1pdE1lc3NhZ2VSZXNwb25zZRIMCgR0ZXh0GAEgASgJIiQKFkdldEFnZW50UGVyc29uYVJlcXVlc3QSCgoCaWQYASABKAkiSgoXR2V0QWdlbnRQZXJzb25hUmVzcG9uc2USLwoNYWdlbnRfcGVyc29uYRgBIAEoCzIYLnB1YmxpY19hcGkuQWdlbnRQZXJzb25hIhoKGEdldEJpbGxpbmdTdW1tYXJ5UmVxdWVzdCL5AQoZR2V0QmlsbGluZ1N1bW1hcnlSZXNwb25zZRIRCglwbGFuX25hbWUYASABKAkSGAoQYW1vdW50X3JlbWFpbmluZxgCIAEoCRIhChlhbW91bnRfaW5jbHVkZWRfcGVyX2N5Y2xlGAMgASgJEikKCnVzYWdlX3VuaXQYBCABKA4yFS5wdWJsaWNfYXBpLlVzYWdlVW5pdBIiChpiaWxsaW5nX2N5Y2xlX2VuZF9kYXRlX2lzbxgFIAEoCRIyCgZiYW5uZXIYBiABKAsyHS5wdWJsaWNfYXBpLkJhbm5lckluZm9ybWF0aW9uSACIAQFCCQoHX2Jhbm5lciJHChZHZXRDb252ZXJzYXRpb25SZXF1ZXN0EhQKDHdvcmtzcGFjZV9pZBgBIAEoCRIXCg9jb252ZXJzYXRpb25faWQYAiABKAkiTQoXR2V0Q29udmVyc2F0aW9uUmVzcG9uc2USMgoMY29udmVyc2F0aW9uGAEgASgLMhwucHVibGljX2FwaS5Db252ZXJzYXRpb25JbmZvIqMCChdHZXRDb3N0QW5hbHl0aWNzUmVxdWVzdBI2CgpkYXRlX3JhbmdlGAEgASgLMiIucHVibGljX2FwaS5Db3N0QW5hbHl0aWNzRGF0ZVJhbmdlEjcKDWdyb3VwX2J5X2tleXMYAiADKA4yIC5wdWJsaWNfYXBpLkNvc3RBbmFseXRpY3NHcm91cEJ5Ej0KC2dyYW51bGFyaXR5GAMgASgOMigucHVibGljX2FwaS5Db3N0QW5hbHl0aWNzVGltZUdyYW51bGFyaXR5EhEKCXBhZ2Vfc2l6ZRgEIAEoDRISCgpwYWdlX3Rva2VuGAUgASgJEjEKB2ZpbHRlcnMYBiABKAsyIC5wdWJsaWNfYXBpLkNvc3RBbmFseXRpY3NGaWx0ZXJzImwKGEdldENvc3RBbmFseXRpY3NSZXNwb25zZRI3CgtkYXRhX3BvaW50cxgBIAMoCzIiLnB1YmxpY19hcGkuQ29zdEFuYWx5dGljc0RhdGFQb2ludBIXCg9uZXh0X3BhZ2VfdG9rZW4YAiABKAkiiQIKGUdldENvc3RBbmFseXRpY3NWMlJlcXVlc3QSNgoKZGF0ZV9yYW5nZRgBIAEoCzIiLnB1YmxpY19hcGkuQ29zdEFuYWx5dGljc0RhdGVSYW5nZRI9CgtncmFudWxhcml0eRgCIAEoDjIoLnB1YmxpY19hcGkuQ29zdEFuYWx5dGljc1RpbWVHcmFudWxhcml0eRIZChF0YWdfZ3JvdXBfYnlfa2V5cxgDIAMoCRIzCgdmaWx0ZXJzGAQgASgLMiIucHVibGljX2FwaS5Db3N0QW5hbHl0aWNzVjJGaWx0ZXJzEhEKCXBhZ2Vfc2l6ZRgFIAEoDRISCgpwYWdlX3Rva2VuGAYgASgJInAKGkdldENvc3RBbmFseXRpY3NWMlJlc3BvbnNlEjkKC2RhdGFfcG9pbnRzGAEgAygLMiQucHVibGljX2FwaS5Db3N0QW5hbHl0aWNzVjJEYXRhUG9pbnQSFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJIhYKFEdldENyZWRpdEluZm9SZXF1ZXN0IskDChVHZXRDcmVkaXRJbmZvUmVzcG9uc2USHQoVdXNhZ2VfdW5pdHNfcmVtYWluaW5nGAEgASgBEjMKJ3VzYWdlX3VuaXRzX3RvdGFsX2N1cnJlbnRfYmlsbGluZ19jeWNsZRgCIAEoAUICGAESKAocdXNhZ2VfdW5pdHNfdG90YWxfYWRkaXRpb25hbBgDIAEoAUICGAESHQoVaXNfY3JlZGl0X2JhbGFuY2VfbG93GAQgASgIEjMKDGRpc3BsYXlfaW5mbxgFIAEoCzIdLnB1YmxpY19hcGkuQ3JlZGl0RGlzcGxheUluZm8SMAoMcmVmcmVzaGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCiZpbmNsdWRlZF91c2FnZV91bml0c19wZXJfYmlsbGluZ19jeWNsZRgHIAEoARIqCiJjdXJyZW50X2JpbGxpbmdfY3ljbGVfZW5kX2RhdGVfaXNvGAggASgJEjUKDmNyZWRpdF9kZXRhaWxzGAkgAygLMh0ucHVibGljX2FwaS5DcmVkaXREZXRhaWxzSW5mbxIZChF1c2FnZV91bml0c190b3RhbBgKIAEoASLzAgoXR2V0RW50aXR5RGV0YWlsc1JlcXVlc3QSEQoJZW50aXR5X2lkGAEgASgJEi0KDGV2ZW50X3NvdXJjZRgCIAEoDjIXLnB1YmxpY19hcGkuRXZlbnRTb3VyY2USPQoSZ2l0aHViX2VudGl0eV90eXBlGAMgASgOMhwucHVibGljX2FwaS5HaXRIdWJFbnRpdHlUeXBlSACIAQESPQoSbGluZWFyX2VudGl0eV90eXBlGAQgASgOMhwucHVibGljX2FwaS5MaW5lYXJFbnRpdHlUeXBlSAGIAQESFwoKcmVwb3NpdG9yeRgFIAEoCUgCiAEBEiUKGGluY2x1ZGVfcmVsYXRlZF9lbnRpdGllcxgGIAEoCEgDiAEBQhUKE19naXRodWJfZW50aXR5X3R5cGVCFQoTX2xpbmVhcl9lbnRpdHlfdHlwZUINCgtfcmVwb3NpdG9yeUIbChlfaW5jbHVkZV9yZWxhdGVkX2VudGl0aWVzIucBChhHZXRFbnRpdHlEZXRhaWxzUmVzcG9uc2USNAoNZ2l0aHViX2VudGl0eRgBIAEoCzIYLnB1YmxpY19hcGkuR2l0SHViRW50aXR5SACIAQESNAoNbGluZWFyX2VudGl0eRgCIAEoCzIYLnB1YmxpY19hcGkuTGluZWFyRW50aXR5SAGIAQESDQoFZm91bmQYAyABKAgSGgoNZXJyb3JfbWVzc2FnZRgEIAEoCUgCiAEBQhAKDl9naXRodWJfZW50aXR5QhAKDl9saW5lYXJfZW50aXR5QhAKDl9lcnJvcl9tZXNzYWdlIjwKFEdldEdpdGh1YlJlcG9SZXF1ZXN0EiQKBHJlcG8YASABKAsyFi5wdWJsaWNfYXBpLkdpdGh1YlJlcG8iPQoVR2V0R2l0aHViUmVwb1Jlc3BvbnNlEiQKBHJlcG8YASABKAsyFi5wdWJsaWNfYXBpLkdpdGh1YlJlcG8iNAohR2V0SW1wbGljaXRFeHRlcm5hbFNvdXJjZXNSZXF1ZXN0Eg8KB21lc3NhZ2UYASABKAkiUQoiR2V0SW1wbGljaXRFeHRlcm5hbFNvdXJjZXNSZXNwb25zZRIrCgdzb3VyY2VzGAEgAygLMhoucHVibGljX2FwaS5FeHRlcm5hbFNvdXJjZSI7CiRHZXRMYXRlc3RJbmRleGVkQ29tbWl0QmxvYnNldFJlcXVlc3QSEwoLY29tbWl0X3NoYXMYASADKAkikgEKJUdldExhdGVzdEluZGV4ZWRDb21taXRCbG9ic2V0UmVzcG9uc2USEgoKY29tbWl0X3NoYRgBIAEoCRI1CgpmaWxlX2luZm9zGAIgAygLMiEucHVibGljX2FwaS5JbmRleGVkQ29tbWl0RmlsZUluZm8SHgoWYmFzZWxpbmVfY2hlY2twb2ludF9pZBgDIAEoCSLkAgoaR2V0TWF0Y2hpbmdFbnRpdGllc1JlcXVlc3QSFwoKdHJpZ2dlcl9pZBgBIAEoCUgAiAEBEjYKCmNvbmRpdGlvbnMYAiABKAsyHS5wdWJsaWNfYXBpLlRyaWdnZXJDb25kaXRpb25zSAGIAQESLQoMZXZlbnRfc291cmNlGAMgASgOMhcucHVibGljX2FwaS5FdmVudFNvdXJjZRISCgVsaW1pdBgEIAEoDUgCiAEBEhMKBm9mZnNldBgFIAEoDUgDiAEBEhIKBXNpbmNlGAYgASgJSASIAQESEgoFdW50aWwYByABKAlIBYgBARIbCg5zaG93X2Rpc21pc3NlZBgIIAEoCEgGiAEBQg0KC190cmlnZ2VyX2lkQg0KC19jb25kaXRpb25zQggKBl9saW1pdEIJCgdfb2Zmc2V0QggKBl9zaW5jZUIICgZfdW50aWxCEQoPX3Nob3dfZGlzbWlzc2VkItcCChtHZXRNYXRjaGluZ0VudGl0aWVzUmVzcG9uc2USMQoPZ2l0aHViX2VudGl0aWVzGAEgAygLMhgucHVibGljX2FwaS5HaXRIdWJFbnRpdHkSMQoPbGluZWFyX2VudGl0aWVzGAIgAygLMhgucHVibGljX2FwaS5MaW5lYXJFbnRpdHkSEwoLdG90YWxfY291bnQYAyABKA0SEAoIaGFzX21vcmUYBCABKAgSHgoRcXVlcnlfZXhwbGFuYXRpb24YBSABKAlIAIgBARIjChZ0b3RhbF9lbnRpdGllc19jaGVja2VkGAYgASgNSAGIAQESNQoRc2NoZWR1bGVfZW50aXRpZXMYByADKAsyGi5wdWJsaWNfYXBpLlNjaGVkdWxlRW50aXR5QhQKEl9xdWVyeV9leHBsYW5hdGlvbkIZChdfdG90YWxfZW50aXRpZXNfY2hlY2tlZCI0ChxHZXRNY3BDYXRhbG9nTWV0YWRhdGFSZXF1ZXN0EhQKDHByb2R1Y3RfdHlwZRgBIAEoBSJVCh1HZXRNY3BDYXRhbG9nTWV0YWRhdGFSZXNwb25zZRI0CgdlbnRyaWVzGAEgAygLMiMucHVibGljX2FwaS5NY3BDYXRhbG9nTWV0YWRhdGFFbnRyeSJXChdHZXRNY3BDb25maWdCeUlkUmVxdWVzdBIRCgljb25maWdfaWQYASABKAkSKQoFc2NvcGUYAiABKA4yGi5wdWJsaWNfYXBpLk1jcENvbmZpZ1Njb3BlIkEKGEdldE1jcENvbmZpZ0J5SWRSZXNwb25zZRIlCgZjb25maWcYASABKAsyFS5wdWJsaWNfYXBpLk1jcENvbmZpZyJVChNHZXRNY3BTZWNyZXRSZXF1ZXN0EgwKBG5hbWUYASABKAkSHAoPYWN0aXZlX3NwYWNlX2lkGAIgASgJSACIAQFCEgoQX2FjdGl2ZV9zcGFjZV9pZCI9ChRHZXRNY3BTZWNyZXRSZXNwb25zZRIlCgZzZWNyZXQYASABKAsyFS5wdWJsaWNfYXBpLk1jcFNlY3JldCJOChpHZXRNY3BUZW5hbnRDb25maWdzUmVxdWVzdBIwCgxwcm9kdWN0X3R5cGUYASABKA4yGi5wdWJsaWNfYXBpLk1jcFByb2R1Y3RUeXBlIkkKG0dldE1jcFRlbmFudENvbmZpZ3NSZXNwb25zZRIqCgttY3BfY29uZmlncxgBIAMoCzIVLnB1YmxpY19hcGkuTWNwQ29uZmlnIh0KG0dldE1jcFRlbmFudFNldHRpbmdzUmVxdWVzdCJbChxHZXRNY3BUZW5hbnRTZXR0aW5nc1Jlc3BvbnNlEioKC21jcF9jb25maWdzGAEgAygLMhUucHVibGljX2FwaS5NY3BDb25maWcSDwoHdmVyc2lvbhgCIAEoCSJMChhHZXRNY3BVc2VyQ29uZmlnc1JlcXVlc3QSMAoMcHJvZHVjdF90eXBlGAEgASgOMhoucHVibGljX2FwaS5NY3BQcm9kdWN0VHlwZSKJAwoZR2V0TWNwVXNlckNvbmZpZ3NSZXNwb25zZRIqCgttY3BfY29uZmlncxgBIAMoCzIVLnB1YmxpY19hcGkuTWNwQ29uZmlnEiEKGWVuYWJsZWRfc2hhcmVkX3NlcnZlcl9pZHMYAiADKAkSZwoac2VydmVyX3Byb2R1Y3RfcHJlZmVyZW5jZXMYAyADKAsyQy5wdWJsaWNfYXBpLkdldE1jcFVzZXJDb25maWdzUmVzcG9uc2UuU2VydmVyUHJvZHVjdFByZWZlcmVuY2VzRW50cnkSSwodZHJvcHBlZF9zaGFyZWRfc2VydmVyX29wdF9pbnMYBCADKAsyJC5wdWJsaWNfYXBpLkRyb3BwZWRTaGFyZWRTZXJ2ZXJPcHRJbhpnCh1TZXJ2ZXJQcm9kdWN0UHJlZmVyZW5jZXNFbnRyeRILCgNrZXkYASABKAkSNQoFdmFsdWUYAiABKAsyJi5wdWJsaWNfYXBpLk1jcFNlcnZlclByb2R1Y3RQcmVmZXJlbmNlOgI4ASIbChlHZXRNY3BVc2VyU2V0dGluZ3NSZXF1ZXN0IlkKGkdldE1jcFVzZXJTZXR0aW5nc1Jlc3BvbnNlEioKC21jcF9jb25maWdzGAEgAygLMhUucHVibGljX2FwaS5NY3BDb25maWcSDwoHdmVyc2lvbhgCIAEoCSISChBHZXRNb2RlbHNSZXF1ZXN0IsPcAQoRR2V0TW9kZWxzUmVzcG9uc2USGgoNZGVmYXVsdF9tb2RlbBgBIAEoCUgAiAEBEiEKBm1vZGVscxgCIAMoCzIRLnB1YmxpY19hcGkuTW9kZWwSJwoJbGFuZ3VhZ2VzGAMgAygLMhQucHVibGljX2FwaS5MYW5ndWFnZRJGCg1mZWF0dXJlX2ZsYWdzGAQgASgLMioucHVibGljX2FwaS5HZXRNb2RlbHNSZXNwb25zZS5GZWF0dXJlRmxhZ3NIAYgBARI5Cgl1c2VyX3RpZXIYBSABKA4yJi5wdWJsaWNfYXBpLkdldE1vZGVsc1Jlc3BvbnNlLlVzZXJUaWVyEjUKBHVzZXIYBiABKAsyIi5wdWJsaWNfYXBpLkdldE1vZGVsc1Jlc3BvbnNlLlVzZXJIAogBARI+ChJib290c3RyYXBfc2V0dGluZ3MYByABKAsyHS5wdWJsaWNfYXBpLkJvb3RzdHJhcFNldHRpbmdzSAOIAQEa5tYBCgxGZWF0dXJlRmxhZ3MSIgoRZW5hYmxlX2NvZGVfZWRpdHMYASABKAhCAhgBSACIAQESGAoLZW5hYmxlX2NoYXQYBSABKAhIAYgBARIoChtlbmFibGVfd29ya3NwYWNlX21hbmFnZXJfdWkYBiABKAhIAogBARIhChRlbmFibGVfaW50ZWxsaWpfY2hhdBgHIAEoCEgDiAEBEi8KImVuYWJsZV93b3Jrc3BhY2VfbWFuYWdlcl91aV9sYXVuY2gYCCABKAhIBIgBARIjChZhZGRpdGlvbmFsX2NoYXRfbW9kZWxzGAkgASgJSAWIAQESJgoZaW50ZWxsaWpfY2hhdF9taW5fdmVyc2lvbhgKIAEoCUgGiAEBEigKG3ZzY29kZV9mbHl3aGVlbF9taW5fdmVyc2lvbhgMIAEoCUgHiAEBEjgKK3ZzY29kZV9leHRlcm5hbF9zb3VyY2VzX2luX2NoYXRfbWluX3ZlcnNpb24YDSABKAlICIgBARIgChNlbmFibGVfaW5zdHJ1Y3Rpb25zGA4gASgISAmIAQESHwoSZW5hYmxlX3NtYXJ0X3Bhc3RlGA8gASgISAqIAQESKwoeZW5hYmxlX3NtYXJ0X3Bhc3RlX21pbl92ZXJzaW9uGBEgASgJSAuIAQESJgoZZW5hYmxlX3ZpZXdfdGV4dF9kb2N1bWVudBgSIAEoCEgMiAEBEiAKE2NoZWNrcG9pbnRfYmxvYnNfdjIYEyABKAhIDYgBARIjChZlbmFibGVfZGF0YV9jb2xsZWN0aW9uGBQgASgISA6IAQESIQoUc21hbGxfc3luY190aHJlc2hvbGQYFSABKANID4gBARIfChJiaWdfc3luY190aHJlc2hvbGQYFiABKANIEIgBARIjChZieXBhc3NfbGFuZ3VhZ2VfZmlsdGVyGBcgASgISBGIAQESHQoQZW5hYmxlX2hpbmRzaWdodBgYIAEoCEgSiAEBEiIKFW1heF91cGxvYWRfc2l6ZV9ieXRlcxgZIAEoA0gTiAEBEjIKJWludGVsbGlqX2ZvcmNlX2NvbXBsZXRpb25fbWluX3ZlcnNpb24YGiABKAlIFIgBARIwCh9lbmFibGVfZXh0ZXJuYWxfc291cmNlc19pbl9jaGF0GBsgASgIQgIYAUgViAEBEiUKGG1heF90cmFja2FibGVfZmlsZV9jb3VudBgcIAEoA0gWiAEBEjgKK21heF90cmFja2FibGVfZmlsZV9jb3VudF93aXRob3V0X3Blcm1pc3Npb24YHSABKANIF4gBARI3CiptaW5fdXBsb2FkZWRfcGVyY2VudGFnZV93aXRob3V0X3Blcm1pc3Npb24YHiABKANIGIgBARI0Cid2c2NvZGVfY2hhdF9oaW50X2RlY29yYXRpb25fbWluX3ZlcnNpb24YHyABKAlIGYgBARIvCiJlbmFibGVfY29tcGxldGlvbl9maWxlX2VkaXRfZXZlbnRzGCEgASgISBqIAQESJwoadnNjb2RlX3NvdXJjZXNfbWluX3ZlcnNpb24YIiABKAlIG4gBARImChl2c2NvZGVfZW5hYmxlX2NwdV9wcm9maWxlGCMgASgISByIAQESKQocdmVyaWZ5X2ZvbGRlcl9pc19zb3VyY2VfcmVwbxgkIAEoCEgdiAEBEiwKH3JlZnVzZV90b19zeW5jX2hvbWVfZGlyZWN0b3JpZXMYJSABKAhIHogBARI2CillbmFibGVfZmlsZV9saW1pdHNfZm9yX3N5bmNpbmdfcGVybWlzc2lvbhgmIAEoCEgfiAEBEiUKGHZzY29kZV9zaGFyZV9taW5fdmVyc2lvbhgnIAEoCUggiAEBEicKGmludGVsbGlqX3NoYXJlX21pbl92ZXJzaW9uGCggASgJSCGIAQESIgoVZW5hYmxlX3N1bW1hcnlfdGl0bGVzGCkgASgISCKIAQESKQocZW5hYmxlX2NoYXRfbWVybWFpZF9kaWFncmFtcxgqIAEoCEgjiAEBEigKG3NtYXJ0X3Bhc3RlX3ByZWNvbXB1dGVfbW9kZRgrIAEoCUgkiAEBEjAKI3ZzY29kZV9uZXdfdGhyZWFkc19tZW51X21pbl92ZXJzaW9uGCwgASgJSCWIAQESMgolaW50ZWxsaWpfbmV3X3RocmVhZHNfbWVudV9taW5fdmVyc2lvbhgtIAEoCUgmiAEBEjAKI3ZzY29kZV9lZGl0YWJsZV9oaXN0b3J5X21pbl92ZXJzaW9uGC4gASgJSCeIAQESIgoVaW50ZWxsaWpfc2hvd19zdW1tYXJ5GC8gASgISCiIAQESHgoRZW5hYmxlX2d1aWRlbGluZXMYMCABKAhIKYgBARI8Ci92c2NvZGVfZW5hYmxlX2NoYXRfbWVybWFpZF9kaWFncmFtc19taW5fdmVyc2lvbhgxIAEoCUgqiAEBEiYKGXZzY29kZV9kZXByZWNhdGVkX3ZlcnNpb24YMiABKAlIK4gBARIoChtpbnRlbGxpal9kZXByZWNhdGVkX3ZlcnNpb24YMyABKAlILIgBARI+CjF2c2NvZGVfdXNlX2NoZWNrcG9pbnRfbWFuYWdlcl9jb250ZXh0X21pbl92ZXJzaW9uGDQgASgJSC2IAQESNwoqdnNjb2RlX3ZhbGlkYXRlX2NoZWNrcG9pbnRfbWFuYWdlcl9jb250ZXh0GDUgASgISC6IAQESLQogaW50ZWxsaWpfc21hcnRfcGFzdGVfbWluX3ZlcnNpb24YNyABKAlIL4gBARI+CjF2c2NvZGVfZGVzaWduX3N5c3RlbV9yaWNoX3RleHRfZWRpdG9yX21pbl92ZXJzaW9uGDogASgJSDCIAQESMAojYWxsb3dfY2xpZW50X2ZlYXR1cmVfZmxhZ19vdmVycmlkZXMYOyABKAhIMYgBARIvCiJ2c2NvZGVfY2hhdF93aXRoX3Rvb2xzX21pbl92ZXJzaW9uGDwgASgJSDKIAQESMQokaW50ZWxsaWpfY2hhdF93aXRoX3Rvb2xzX21pbl92ZXJzaW9uGD0gASgJSDOIAQESLwoidnNjb2RlX2NoYXRfbXVsdGltb2RhbF9taW5fdmVyc2lvbhg+IAEoCUg0iAEBEjEKJGludGVsbGlqX2NoYXRfbXVsdGltb2RhbF9taW5fdmVyc2lvbhg/IAEoCUg1iAEBEj4KMWludGVsbGlqX2VuYWJsZV9jaGF0X21lcm1haWRfZGlhZ3JhbXNfbWluX3ZlcnNpb24YQCABKAlINogBARIqCh12c2NvZGVfYWdlbnRfbW9kZV9taW5fdmVyc2lvbhhBIAEoCUg3iAEBEiwKH2ludGVsbGlqX2FnZW50X21vZGVfbWluX3ZlcnNpb24YQiABKAlIOIgBARImChlpbnRlbGxpal9ibG9ja2VkX3ZlcnNpb25zGEMgASgJSDmIAQESQAozaW50ZWxsaWpfZGVzaWduX3N5c3RlbV9yaWNoX3RleHRfZWRpdG9yX21pbl92ZXJzaW9uGEQgASgJSDqIAQESMgolaW50ZWxsaWpfc3luY2luZ19wcm9ncmVzc19taW5fdmVyc2lvbhhFIAEoCUg7iAEBEiQKF2Vsb19tb2RlbF9jb25maWd1cmF0aW9uGEcgASgJSDyIAQESIwoWdnNjb2RlX2FnZW50X2VkaXRfdG9vbBhJIAEoCUg9iAEBEjkKLGludGVsbGlqX2Fza19mb3Jfc3luY19wZXJtaXNzaW9uX21pbl92ZXJzaW9uGEogASgJSD6IAQESMQokdnNjb2RlX2JhY2tncm91bmRfYWdlbnRzX21pbl92ZXJzaW9uGEsgASgJSD+IAQESMwomaW50ZWxsaWpfYmFja2dyb3VuZF9hZ2VudHNfbWluX3ZlcnNpb24YTCABKAlIQIgBARIpChx1c2VyX2d1aWRlbGluZXNfbGVuZ3RoX2xpbWl0GE0gASgDSEGIAQESLgohd29ya3NwYWNlX2d1aWRlbGluZXNfbGVuZ3RoX2xpbWl0GE4gASgDSEKIAQESNAondnNjb2RlX3JpY2hfY2hlY2twb2ludF9pbmZvX21pbl92ZXJzaW9uGE8gASgJSEOIAQESLAofaW50ZWxsaWpfZW5hYmxlX3VzZXJfZ3VpZGVsaW5lcxhSIAEoCEhEiAEBEjEKJGludGVsbGlqX2VuYWJsZV93b3Jrc3BhY2VfZ3VpZGVsaW5lcxhTIAEoCEhFiAEBEjEKJHZzY29kZV9hZ2VudF9tb2RlX21pbl9zdGFibGVfdmVyc2lvbhhUIAEoCUhGiAEBEjoKLWludGVsbGlqX3ZpcnR1YWxpemVkX21lc3NhZ2VfbGlzdF9taW5fdmVyc2lvbhhWIAEoCUhHiAEBEj0KMHZzY29kZV9jaGF0X3N0YWJsZV9wcmVmaXhfdHJ1bmNhdGlvbl9taW5fdmVyc2lvbhhXIAEoCUhIiAEBEioKHWFnZW50X2VkaXRfdG9vbF9taW5fdmlld19zaXplGFggASgDSEmIAQESMQokaW50ZWxsaWpfdXNlcl9ndWlkZWxpbmVzX2luX3NldHRpbmdzGFkgASgISEqIAQESKAobYWdlbnRfZWRpdF90b29sX3NjaGVtYV90eXBlGFogASgJSEuIAQESLAofdnNjb2RlX2RpcmVjdF9hcHBseV9taW5fdmVyc2lvbhhbIAEoCUhMiAEBEi0KIHZzY29kZV9wZXJzb25hbGl0aWVzX21pbl92ZXJzaW9uGFwgASgJSE2IAQESNwoqYWdlbnRfc2F2ZV9maWxlX3Rvb2xfaW5zdHJ1Y3Rpb25zX3JlbWluZGVyGF4gASgISE6IAQESOgotcmVtb3RlX2FnZW50X2NoYXRfaGlzdG9yeV9wb2xsaW5nX2ludGVydmFsX21zGF8gASgDSE+IAQESMgolcmVtb3RlX2FnZW50X2xpc3RfcG9sbGluZ19pbnRlcnZhbF9tcxhgIAEoA0hQiAEBEj8KMmludGVsbGlqX3ByZWZlcmVuY2VfY29sbGVjdGlvbl9hbGxvd2VkX21pbl92ZXJzaW9uGGIgASgJSFGIAQESLwoiaW50ZWxsaWpfZW5hYmxlX2hvbWVzcHVuX2dpdGlnbm9yZRhjIAEoCEhSiAEBEjcKKnZzY29kZV9nZW5lcmF0ZV9jb21taXRfbWVzc2FnZV9taW5fdmVyc2lvbhhkIAEoCUhTiAEBEhkKDGVuYWJsZV9ydWxlcxhlIAEoCEhUiAEBEjIKJWFnZW50X2VkaXRfdG9vbF9lbmFibGVfZnV6enlfbWF0Y2hpbmcYZyABKAhIVYgBARI4CithZ2VudF9lZGl0X3Rvb2xfZnV6enlfbWF0Y2hfc3VjY2Vzc19tZXNzYWdlGGggASgJSFaIAQESMQokYWdlbnRfZWRpdF90b29sX2Z1enp5X21hdGNoX21heF9kaWZmGGkgASgDSFeIAQESNwoqYWdlbnRfZWRpdF90b29sX2Z1enp5X21hdGNoX21heF9kaWZmX3JhdGlvGGogASgBSFiIAQESSwo+YWdlbnRfZWRpdF90b29sX2Z1enp5X21hdGNoX21pbl9hbGxfbWF0Y2hfc3RyZWFrX2JldHdlZW5fZGlmZnMYayABKANIWYgBARIjChZlbmFibGVfcHJvbXB0X2VuaGFuY2VyGGwgASgISFqIAQESLQogaW50ZWxsaWpfcHJvbXB0X2VuaGFuY2VyX2VuYWJsZWQYbyABKAhIW4gBARIyCiVhZ2VudF9lZGl0X3Rvb2xfaW5zdHJ1Y3Rpb25zX3JlbWluZGVyGHAgASgISFyIAQESIwoWaW50ZWxsaWpfZW5hYmxlX3NlbnRyeRhxIAEoCEhdiAEBEjEKJGludGVsbGlqX3dlYnZpZXdfZXJyb3Jfc2FtcGxpbmdfcmF0ZRhyIAEoAUheiAEBEjAKI2ludGVsbGlqX3BsdWdpbl9lcnJvcl9zYW1wbGluZ19yYXRlGHMgASgBSF+IAQESMQokaW50ZWxsaWpfd2Vidmlld190cmFjZV9zYW1wbGluZ19yYXRlGHQgASgBSGCIAQESMAojaW50ZWxsaWpfcGx1Z2luX3RyYWNlX3NhbXBsaW5nX3JhdGUYdSABKAFIYYgBARIpChxvcGVuX2ZpbGVfbWFuYWdlcl92Ml9lbmFibGVkGHYgASgISGKIAQESOwouaW50ZWxsaWpfZW5hYmxlX3dlYnZpZXdfcGVyZm9ybWFuY2VfbW9uaXRvcmluZxh3IAEoCEhjiAEBEikKHHZzY29kZV90YXNrX2xpc3RfbWluX3ZlcnNpb24YeCABKAlIZIgBARIwCiNhZ2VudF9lZGl0X3Rvb2xfc2hvd19yZXN1bHRfc25pcHBldBh5IAEoCEhliAEBEjIKJWludGVsbGlqX2VkdF9mcmVlemVfZGV0ZWN0aW9uX2VuYWJsZWQYeiABKAhIZogBARIgChNjbGllbnRfYW5ub3VuY2VtZW50GHsgASgJSGeIAQESMAojdnNjb2RlX3JlbW90ZV9hZ2VudF9zc2hfbWluX3ZlcnNpb24YfCABKAlIaIgBARImChlhZ2VudF9lZGl0X3Rvb2xfbWF4X2xpbmVzGH0gASgDSGmIAQESJAoXZ3JlcF9zZWFyY2hfdG9vbF9lbmFibGUYfiABKAhIaogBARIrCh5ncmVwX3NlYXJjaF90b29sX3RpbWVsaW1pdF9zZWMYfyABKANIa4gBARIxCiNncmVwX3NlYXJjaF90b29sX291dHB1dF9jaGFyc19saW1pdBiAASABKANIbIgBARIwCiJncmVwX3NlYXJjaF90b29sX251bV9jb250ZXh0X2xpbmVzGIEBIAEoA0htiAEBEiQKFmVuYWJsZV9hZ2VudF9hdXRvX21vZGUYggEgASgISG6IAQESNAomYWdlbnRfcmVwb3J0X3N0cmVhbWVkX2NoYXRfZXZlcnlfY2h1bmsYgwEgASgDSG+IAQESNgooYWdlbnRfbWF4X3RvdGFsX2NoYW5nZWRfZmlsZXNfc2l6ZV9ieXRlcxiEASABKANIcIgBARIzCiVhZ2VudF9tYXhfY2hhbmdlZF9maWxlc19za2lwcGVkX3BhdGhzGIUBIAEoA0hxiAEBEjIKJGFnZW50X2lkbGVfc3RhdHVzX3VwZGF0ZV9pbnRlcnZhbF9tcxiGASABKANIcogBARIiChRhZ2VudF9tYXhfaXRlcmF0aW9ucxiHASABKANIc4gBARI0CiZhZ2VudF9zc2hfY29ubmVjdGlvbl9jaGVja19pbnRlcnZhbF9tcxiIASABKANIdIgBARI4CiphZ2VudF9zc2hfY29ubmVjdGlvbl9jaGVja19sb2dfaW50ZXJ2YWxfbXMYiQEgASgDSHWIAQESJQoXYmVhY2hoZWFkX2VuYWJsZV9zZW50cnkYigEgASgISHaIAQESKwodYmVhY2hoZWFkX2Vycm9yX3NhbXBsaW5nX3JhdGUYiwEgASgBSHeIAQESKwodYmVhY2hoZWFkX3RyYWNlX3NhbXBsaW5nX3JhdGUYjAEgASgBSHiIAQESNwopdnNjb2RlX3N1cHBvcnRfdG9vbF91c2Vfc3RhcnRfbWluX3ZlcnNpb24YjQEgASgJSHmIAQESKQobaGlzdG9yeV9zdW1tYXJ5X21pbl92ZXJzaW9uGI8BIAEoCUh6iAEBEisKGWhpc3Rvcnlfc3VtbWFyeV9tYXhfY2hhcnMYkAEgASgDQgIYAUh7iAEBEi0KG2hpc3Rvcnlfc3VtbWFyeV9sb3dlcl9jaGFycxiRASABKANCAhgBSHyIAQESJQoXZW5hYmxlX25ld190aHJlYWRzX2xpc3QYkgEgASgISH2IAQESJAoWaGlzdG9yeV9zdW1tYXJ5X3Byb21wdBiTASABKAlIfogBARIwCiJlbmFibGVfdW50cnVuY2F0ZWRfY29udGVudF9zdG9yYWdlGJQBIAEoCEh/iAEBEjAKIW1heF9saW5lc190ZXJtaW5hbF9wcm9jZXNzX291dHB1dBiVASABKANIgAGIAQESJQoWZW5hYmxlX2NvbW1pdF9pbmRleGluZxiXASABKAhIgQGIAQESIwoUbWF4X2NvbW1pdHNfdG9faW5kZXgYmAEgASgDSIIBiAEBEi0KHmludGVsbGlqX3Rhc2tfbGlzdF9taW5fdmVyc2lvbhiZASABKAlIgwGIAQESJgoXZW5hYmxlX2V4Y2hhbmdlX3N0b3JhZ2UYmgEgASgISIQBiAEBEikKGnJldHJ5X2NoYXRfc3RyZWFtX3RpbWVvdXRzGJsBIAEoCEiFAYgBARIsCh1lbmFibGVfdG9vbF91c2Vfc3RhdGVfc3RvcmFnZRicASABKAhIhgGIAQESLQoecmVtb3RlX2FnZW50X2N1cnJlbnRfd29ya3NwYWNlGJ0BIAEoCEiHAYgBARIlChZoaXN0b3J5X3N1bW1hcnlfcGFyYW1zGJ8BIAEoCUiIAYgBARIgChFlbmFibGVfYWdlbnRfdGFicxigASABKAhIiQGIAQESIAoRZW5hYmxlX3N3YXJtX21vZGUYoQEgASgISIoBiAEBEi4KH2JlYWNoaGVhZF9lbmFibGVfc3ViX2FnZW50X3Rvb2wYogEgASgISIsBiAEBEiMKFGVuYWJsZV9ncm91cGVkX3Rvb2xzGKMBIAEoCEiMAYgBARI7CixyZW1vdGVfYWdlbnRzX3Jlc3VtZV9oaW50X2F2YWlsYWJsZV90dGxfZGF5cxikASABKANIjQGIAQESJAoVZW5hYmxlX3BhcmFsbGVsX3Rvb2xzGKUBIAEoCEiOAYgBARIgChFjbGllbnRfZGVwcmVjYXRlZBimASABKAhIjwGIAQESLQoeZW5hYmxlX3ZpZXdlZF9jb250ZW50X3RyYWNraW5nGKcBIAEoCEiQAYgBARIzCiR2aWV3ZWRfY29udGVudF9jbG9zZV9yYW5nZV90aHJlc2hvbGQYqAEgASgDSJEBiAEBEjUKJnZpZXdlZF9jb250ZW50X2Rpc2NyZXRlX2p1bXBfdGhyZXNob2xkGKkBIAEoA0iSAYgBARIuCh92aWV3ZWRfY29udGVudF9taW5fZXZlbnRfYWdlX21zGKoBIAEoA0iTAYgBARIuCh92aWV3ZWRfY29udGVudF9tYXhfZXZlbnRfYWdlX21zGKsBIAEoA0iUAYgBARInChhlbmFibGVfbmF0aXZlX3JlbW90ZV9tY3AYrAEgASgISJUBiAEBEi8KIG5vdGlmaWNhdGlvbl9wb2xsaW5nX2ludGVydmFsX21zGK0BIAEoA0iWAYgBARInChhlbmFibGVfYWdlbnRfZ2l0X3RyYWNrZXIYrgEgASgISJcBiAEBEi4KH3RydW5jYXRpb25fZm9vdGVyX2FkZGl0aW9uX3RleHQYrwEgASgJSJgBiAEBEhwKDWVuYWJsZV9zZW50cnkYsAEgASgISJkBiAEBEioKG3dlYnZpZXdfZXJyb3Jfc2FtcGxpbmdfcmF0ZRixASABKAFImgGIAQESKgobd2Vidmlld190cmFjZV9zYW1wbGluZ19yYXRlGLIBIAEoAUibAYgBARIlChZhZ2VudF92aWV3X3Rvb2xfcGFyYW1zGLMBIAEoCUicAYgBARInChh2c2NvZGVfdGVybWluYWxfc3RyYXRlZ3kYtAEgASgJSJ0BiAEBEh8KEGFnZW50X2NoYXRfbW9kZWwYtQEgASgJSJ4BiAEBEjEKImNsb3VkX2FnZW50X2RlZmF1bHRfbW9kZWxfb3ZlcnJpZGUYtQIgASgJSJ8BiAEBEiIKE21vZGVsX2luZm9fcmVnaXN0cnkYtgEgASgJSKABiAEBEkEKMm1heF9saW5lc190ZXJtaW5hbF9wcm9jZXNzX291dHB1dF9hZnRlcl90cnVuY2F0aW9uGLcBIAEoA0ihAYgBARI0CiVlbmFibGVfbm90aWZpY2F0aW9uc19zZXJ2aWNlX2ludGVsbGlqGLgBIAEoCEiiAYgBARIiChNlbmFibGVfbHVjaWRlX2ljb25zGLkBIAEoCEijAYgBARIvCiBlbmFibGVfZW5oYW5jZWRfZGVoeWRyYXRpb25fbW9kZRi8ASABKAhIpAGIAQESNwoodnNjb2RlX3Nob3dfdGhpbmtpbmdfc3VtbWFyeV9taW5fdmVyc2lvbhi9ASABKAlIpQGIAQESOQoqaW50ZWxsaWpfc2hvd190aGlua2luZ19zdW1tYXJ5X21pbl92ZXJzaW9uGL4BIAEoCUimAYgBARIyCiNpbnRlbGxpal9lbmFibGVfZmlsZV9pbnRha2Vfc2VydmljZRjAASABKAhIpwGIAQESOgoraW50ZWxsaWpfZW5hYmxlX3NlZ21lbnRfYW5hbHl0aWNzX3JlcG9ydGluZxjBASABKAhIqAGIAQESIAoRY2xpX2VuYWJsZV9zZW50cnkYwgEgASgISKkBiAEBEiYKF2NsaV9lcnJvcl9zYW1wbGluZ19yYXRlGMMBIAEoAUiqAYgBARImChdjbGlfdHJhY2Vfc2FtcGxpbmdfcmF0ZRjEASABKAFIqwGIAQESMQoiY2xpX2NoYXRfc3RyZWFtX3JldHJ5X2hhcmRfc3RvcF9tcxjFASABKANIrAGIAQESIwoUY2xpX2VuYWJsZV9hbmFseXRpY3MYxwEgASgISK0BiAEBEiYKF2NsaV9hbmFseXRpY3Nfd3JpdGVfa2V5GMgBIAEoCUiuAYgBARIqChtwYXJ0bmVyX21jcF9sYXVuY2hfMjAyNTA5MTYYyQEgASgISK8BiAEBEiEKEmNsaV9wYXJhbGxlbF90b29scxjKASABKAhIsAGIAQESKQoaZW5hYmxlX2J1bGtfZGVsZXRlX3RocmVhZHMYywEgASgISLEBiAEBEjMKJGVuYWJsZV9pbnRlcnNlY3Rpb25fb2JzZXJ2ZXJfbWFuYWdlchjMASABKAhIsgGIAQESMwokZW5hYmxlX3RlbmFudF9sZXZlbF90b29sX3Blcm1pc3Npb25zGM0BIAEoCEizAYgBARIyCiN3ZWJ2aWV3X3JlcGxheXNfc2Vzc2lvbl9zYW1wbGVfcmF0ZRjOASABKAFItAGIAQESMwokd2Vidmlld19yZXBsYXlzX29uX2Vycm9yX3NhbXBsZV9yYXRlGM8BIAEoAUi1AYgBARIwCiF2c2NvZGVfcGx1Z2luX2Vycm9yX3NhbXBsaW5nX3JhdGUY0AEgASgBSLYBiAEBEjAKIXZzY29kZV9wbHVnaW5fdHJhY2Vfc2FtcGxpbmdfcmF0ZRjRASABKAFItwGIAQESKQoaZW5hYmxlX2NyZWRpdHNfaW5fc2V0dGluZ3MY0gEgASgISLgBiAEBEi8KIGVuYWJsZV9jcmVkaXRfYmFubmVyX2luX3NldHRpbmdzGNMBIAEoCEi5AYgBARIyCiNlbmFibGVfY2hhdF9pbnB1dF9pbmxpbmVfY29tcGxldGlvbhjUASABKAhIugGIAQESKgobY2xpX2VuYWJsZV9hY2NvdW50X2NvbW1hbmRzGNUBIAEoCEi7AYgBARIjChRlbmFibGVfb25ib2FyZGluZ192MhjWASABKAhIvAGIAQESJwoYY2xpX2VuYWJsZV9tZXNzYWdlX3F1ZXVlGNcBIAEoCEi9AYgBARIrChxlbmFibGVfZ3JwY190b19pZGVfbWVzc2FnaW5nGNgBIAEoCEi+AYgBARI4CiljbGlfZW5hYmxlX2FzeW5jX3dvcmtzcGFjZV9pbml0aWFsaXphdGlvbhjZASABKAhIvwGIAQESKQoabWF4X2xpbmVfbGVuZ3RoX2NoYXJhY3RlcnMY2gEgASgFSMABiAEBEjYKJ2VuYWJsZV9jcmVkaXRzX2NvbnN1bWVkX2luX3R1cm5fc3VtbWFyeRjbASABKAhIwQGIAQESMwokZ2l0aHViX2ludGVncmF0aW9uX25vdGlmaWNhdGlvbl9qc29uGNwBIAEoCUjCAYgBARIwCiFlbmFibGVfZGVlcF9saW5rX2NoYXRfd2l0aF9wcm9tcHQY3gEgASgISMMBiAEBEisKHGVuYWJsZV9jb21taXRfc2Vzc2lvbl9ldmVudHMY3wEgASgISMQBiAEBEi8KIHVzZV9pbnRha2Vfc2VydmljZV9mb3JfZmlsZV93YWxrGOABIAEoCEjFAYgBARImChdlbmFibGVfYXBwbHlfcGF0Y2hfdG9vbBjhASABKAhIxgGIAQESMQoiY3VzdG9tZXJfdWlfc2VjcmV0X21hbmFnZXJfZW5hYmxlZBjiASABKAhIxwGIAQESKgobY2hhdF9pbnB1dF9jb21wbGV0aW9uX21vZGVsGOMBIAEoCUjIAYgBARI+Ci92c2NvZGVfcHJvbXB0X2VuaGFuY2VyX25ld19lbmRwb2ludF9yb2xsb3V0X3BjdBjkASABKAVIyQGIAQESQAoxaW50ZWxsaWpfcHJvbXB0X2VuaGFuY2VyX25ld19lbmRwb2ludF9yb2xsb3V0X3BjdBjlASABKAVIygGIAQESOwosY2xpX3Byb21wdF9lbmhhbmNlcl9uZXdfZW5kcG9pbnRfcm9sbG91dF9wY3QY5gEgASgFSMsBiAEBEjMKJGNsaV9lbmFibGVfd29ya2VyX3RocmVhZF9wYXRoX2ZpbHRlchjoASABKAhIzAGIAQESOgorYXBpX3Byb3h5X2NsaV9ub25faW50ZXJhY3RpdmVfbW9kZV9kaXNhYmxlZBjrASABKAhIzQGIAQESKAoZZW5hYmxlX3NldHRpbmdzX2hvbWVfcGFnZRjsASABKAhIzgGIAQESIwoUY2xpX2VuYWJsZV9iYXNoX21vZGUY7QEgASgISM8BiAEBEi8KIGVuYWJsZV9jb2RlX3Jldmlld19zbGFzaF9jb21tYW5kGO4BIAEoCEjQAYgBARIbCgxlbmFibGVfaG9va3MY7wEgASgISNEBiAEBEigKGWVuYWJsZV9oaWVyYXJjaGljYWxfcnVsZXMY8AEgASgISNIBiAEBEi4KH2NhbnZhc19leHRlbnNpb25fZmVhdHVyZV9lbmFibGUY8QEgASgISNMBiAEBEiQKFWVuYWJsZV9kZWJ1Z19mZWF0dXJlcxjyASABKAhI1AGIAQESKAoZZW5hYmxlX3BsdWdpbl9tYXJrZXRwbGFjZRjzASABKAhI1QGIAQESRAo1YmVhY2hoZWFkX2ZpbGVzeXN0ZW1fY2hhbmdlX3RyYWNrZXJfbWF4X2dpdF9wcm9jZXNzZXMY9QEgASgFSNYBiAEBEisKHGNsaV9lbmFibGVfd29ya3NwYWNlX2NvbW1hbmQY9gEgASgISNcBiAEBEiUKFnB1YmxpY19iZXRhX29wdF9pbl9hbGwY9wEgASgISNgBiAEBEjoKK3B1YmxpY19iZXRhX2NhbnZhc19leHRlbnNpb25fZmVhdHVyZV9lbmFibGUY+AEgASgISNkBiAEBEiYKF2VuYWJsZV9wdWJsaWNfYmV0YV9wYWdlGPkBIAEoCEjaAYgBARIxCiJlbmFibGVfd29ya3NwYWNlX2NvbnZlcnNhdGlvbl9zeW5jGPoBIAEoCEjbAYgBARIcCg1lbmFibGVfc2tpbGxzGPwBIAEoCEjcAYgBARIrChxyZXBvc2l0b3J5X2FsbG93bGlzdF9lbmFibGVkGP0BIAEoCEjdAYgBARIrChxjbGlfbmV3X2ZlYXR1cmVfYW5ub3VuY2VtZW50GP8BIAEoCUjeAYgBARIlChZlbmFibGVfY3VzdG9tX2NvbW1hbmRzGIACIAEoCEjfAYgBARImChdjbGlfZW5hYmxlX2Nsb3VkX2FnZW50cxiBAiABKAhI4AGIAQESPgovZW5hYmxlX3dvcmtzcGFjZV9jb252ZXJzYXRpb25fY2hhdF9oaXN0b3J5X3N5bmMYggIgASgISOEBiAEBEjEKInB1YmxpY19iZXRhX2VuYWJsZV9jdXN0b21fY29tbWFuZHMYhAIgASgISOIBiAEBEiMKFGVuYWJsZV9tZXNzYWdlX3F1ZXVlGIUCIAEoCEjjAYgBARInChhlbmFibGVfc2hhcmVkX2d1aWRlbGluZXMYhgIgASgISOQBiAEBEkIKM3ZzY29kZV91cGRhdGVfdmVyc2lvbl9ub3RpZmljYXRpb25fcG9sbGluZ19pbnRlcnZhbBiHAiABKANI5QGIAQESRAo1aW50ZWxsaWpfdXBkYXRlX3ZlcnNpb25fbm90aWZpY2F0aW9uX3BvbGxpbmdfaW50ZXJ2YWwYiAIgASgDSOYBiAEBEiEKEmNsaV9lbmFibGVfcGVyc29uYRiJAiABKAhI5wGIAQESNwooY2xpX2VuYWJsZV9sYXVuY2hfcHJvY2Vzc19ldmVudF9saXN0ZW5lchiKAiABKAhI6AGIAQESOAopdnNjb2RlX2VuYWJsZV91cGRhdGVfdmVyc2lvbl9ub3RpZmljYXRpb24YiwIgASgISOkBiAEBEiMKFGNsaV9lbmFibGVfcGxhbl9tb2RlGIwCIAEoCEjqAYgBARIvCiBjb2xkX3N0YXJ0X2dpdF9zaGFfaW5kZXhfZW5hYmxlZBiNAiABKAhI6wGIAQESOgoraW50ZWxsaWpfZW5hYmxlX3VwZGF0ZV92ZXJzaW9uX25vdGlmaWNhdGlvbhiOAiABKAhI7AGIAQESKgobZW5hYmxlX3JlYWRfcHJvY2Vzc190cmFja2VyGJACIAEoCEjtAYgBARIsCh1yZWFkX3Byb2Nlc3NfbWF4X3dhaXRfc2Vjb25kcxiRAiABKANI7gGIAQESMwokcmVhZF9wcm9jZXNzX3N0dWNrX3BvbGxpbmdfdGhyZXNob2xkGJICIAEoA0jvAYgBARIhChJlbmFibGVfY29tcGxldGlvbnMYkwIgASgISPABiAEBEh8KEGVuYWJsZV9zdWJhZ2VudHMYlAIgASgISPEBiAEBEicKGGNsaV9hbGxvd190b29sX292ZXJyaWRlcxiVAiABKAhI8gGIAQESJwoYY2xpX2VuYWJsZV9jb250ZXh0X3VzYWdlGJYCIAEoCEjzAYgBARIsCh1lbmFibGVfY29udmVyc2F0aW9uX3JldHJpZXZhbBiXAiABKAhI9AGIAQESJQoWY2xpX2VuYWJsZV9kaWZmX3ZpZXdlchiYAiABKAhI9QGIAQESLQoeaW50ZWxsaWpfc2lkZWNhcl9lbmFibGVfc2VudHJ5GJkCIAEoCEj2AYgBARIzCiRpbnRlbGxpal9zaWRlY2FyX2Vycm9yX3NhbXBsaW5nX3JhdGUYmgIgASgBSPcBiAEBEjMKJGludGVsbGlqX3NpZGVjYXJfdHJhY2Vfc2FtcGxpbmdfcmF0ZRibAiABKAFI+AGIAQESKAoZY2xpX2VuYWJsZV9hc3luY19pbmRleGluZxicAiABKAhI+QGIAQESKAoZcHVibGljX2JldGFfZW5hYmxlX3NraWxscxidAiABKAhI+gGIAQESLwogcHVibGljX2JldGFfZW5hYmxlX21lc3NhZ2VfcXVldWUYngIgASgISPsBiAEBEisKHHB1YmxpY19iZXRhX2VuYWJsZV9zdWJhZ2VudHMYnwIgASgISPwBiAEBEiYKF2NsaV9lbmFibGVfc2hvd19jcmVkaXRzGKACIAEoCEj9AYgBARInChhpZGVfZW5hYmxlX2Fza191c2VyX3Rvb2wYoQIgASgISP4BiAEBEisKHGVuYWJsZV9jaGF0X2hpc3RvcnlfcmVjb3ZlcnkYogIgASgISP8BiAEBEjEKImludGVsbGlqX3N0YXRlX3BvbGxpbmdfaW50ZXJ2YWxfbXMYowIgASgDSIACiAEBEi8KIHZzY29kZV9zdGF0ZV9wb2xsaW5nX2ludGVydmFsX21zGKQCIAEoA0iBAogBARIpChpjbGlfZGVmYXVsdF9wb3NlaWRvbl9hZ2VudBilAiABKAhIggKIAQESKQoaY2xpX2VuYWJsZV9zZXNzaW9uX2FuYWx5emUYpgIgASgISIMCiAEBEh8KEGVuYWJsZV9maWdtYV9tY3AYpwIgASgISIQCiAEBEiYKF2VuYWJsZV9oeWJyaWRfcmV0cmlldmFsGKgCIAEoCEiFAogBARIrChxjb252ZXJzYXRpb25fcmVyYW5raW5nX21vZGVsGKkCIAEoCUiGAogBARI3CihiZWFjaGhlYWRfZW5hYmxlX3BhcmFsbGVsX3Rvb2xfZXhlY3V0aW9uGKoCIAEoCEiHAogBARIqChtlbmFibGVfY29udGV4dF93aW5kb3dfdXNhZ2UYqwIgASgISIgCiAEBEiwKHWVuYWJsZV9wbHVnaW5fbWFya2V0cGxhY2VfaWRlGKwCIAEoCEiJAogBARIaCgtlbmFibGVfYnlvaxitAiABKAhIigKIAQESKgoXcG9zZWlkb25fZGFlbW9uX2VuYWJsZWQYrgIgASgIQgIYAUiLAogBARIpChplbmFibGVfY29udGV4dF91c2FnZV9tb2RhbBivAiABKAhIjAKIAQESKQoadG9vbF9zZWFyY2hfc3VtbWFyeV9wcm9tcHQYsgIgASgJSI0CiAEBEisKHHRvb2xfc2VhcmNoX2ZpbmRfdG9vbF9wcm9tcHQYswIgASgJSI4CiAEBEicKGGNsaV9lbmFibGVfc2Vzc2lvbl9zdGF0cxi0AiABKAhIjwKIAQESJgoXZW5hYmxlX21pZF9zdHJlYW1fcmV0cnkYtgIgASgISJACiAEBEh0KDmNsaV9lbmFibGVfYnR3GLcCIAEoCEiRAogBARInChhjbGlfZW5hYmxlX2NvbnRleHRfc3RhdHMYuAIgASgISJICiAEBEioKG2VuYWJsZV9pZGVfaGFuZG9mZl90b19jbG91ZBi5AiABKAhIkwKIAQESMwokY2xpX2VuYWJsZV9jbG91ZF9hZ2VudF9hc2tfdXNlcl90b29sGLoCIAEoCEiUAogBARIiChN1c2VfYWNwX2NvbXBsZXRpb25zGLsCIAEoCEiVAogBARIsCh1lbmFibGVfY29kZWJhc2VfcmV0cmlldmFsX3Jhdxi8AiABKAhIlgKIAQESHgoPd2Vidmlld191c2VfYWNwGL0CIAEoCEiXAogBARIqChtjbGlfZW5hYmxlX2hhbmRvZmZfdG9fY2xvdWQYvgIgASgISJgCiAEBEi0KHnN1YmFnZW50c192aXNpYmlsaXR5X292ZXJyaWRlcxi/AiABKAlImQKIAQESMwokY2xpX2VuYWJsZV9jb2xsYXBzZV9sb25nX3Bhc3RlZF90ZXh0GMACIAEoCEiaAogBARIkChVtYXhfdG9vbF9vdXRwdXRfYnl0ZXMYwQIgASgFSJsCiAEBEicKGGNsaV9jb21wYWN0X3Rvb2xfc3VyZmFjZRjCAiABKAhInAKIAQESJgoXY29zbW9zX2VuYWJsZV9yZXNpZGVudHMYwwIgASgISJ0CiAEBEicKGGNvc21vc19yZXNpZGVudF9wcmVzZW5jZRjLAiABKAhIngKIAQESNgonY2xpX3JlY29yZF9zdW1tYXJpemF0aW9uc19hbmRfc3ViYWdlbnRzGMQCIAEoCEifAogBARIqChtjb3Ntb3NfbW9yZV9jdXN0b21fd2ViaG9va3MYxQIgASgISKACiAEBEjEKImNsaV91c2Vfc3RyZWFtaW5nX3Zmc19maWxlX2NvbnRlbnQYxgIgASgISKECiAEBEiIKE2NsaV90dW5uZWxfY29tbWFuZHMYxwIgASgISKICiAEBEi0KHmNsaV9wb3NlaWRvbl9hbmFseXRpY3NfZW5hYmxlZBjIAiABKAhIowKIAQESLgofY2xpX2RhZW1vbl9wb29sX2FjY2Vzc19jb21tYW5kcxjJAiABKAhIpAKIAQESMAohY29zbW9zX211bHRpX3JlcG9fY29udGV4dF9lbmFibGVkGMoCIAEoCEilAogBARIuCh9jb3Ntb3NfbmVzdGVkX2FnZW50c19tZF9lbmFibGVkGNMCIAEoCEimAogBARIoChl2ZnNfZHVyYWJsZV9maWxlX2lkZW50aXR5GMwCIAEoCEinAogBARIkChVpZGVfZXh0ZW5zaW9uX3JldGlyZWQYzQIgASgISKgCiAEBEjEKImNsaV9lbmFibGVfdmZzX2NvbW1lbnRzX3Byb2plY3Rpb24YzgIgASgISKkCiAEBEjUKJmNsaV9zbGVlcF9yZXN1bWVfd2F0Y2hkb2dfdGhyZXNob2xkX21zGM8CIAEoA0iqAogBARIjChR2ZnNfZXh0ZW5kZWRfc2hhcmluZxjQAiABKAhIqwKIAQESLQoeY2xpX2RhZW1vbl9hdXRvX3VwZGF0ZV9lbmFibGVkGNECIAEoCEisAogBARIhChJpZGVfbWlncmF0aW9uX21vZGUY0gIgASgISK0CiAEBEi0KHmlkZV9taWdyYXRpb25fYW5hbHlzaXNfZW5hYmxlZBjUAiABKAhIrgKIAQESKwocaWRlX21pZ3JhdGlvbl9hbmFseXNpc19tb2RlbBjVAiABKAlIrwKIAQESLwogY2xpX2Vudmlyb25tZW50X3NuYXBzaG90X3VwZGF0ZXMY1gIgASgISLACiAEBEjYKJ2Nvc21vc19jbGlfYmFja2dyb3VuZF9zdWJhZ2VudHNfZW5hYmxlZBjXAiABKAhIsQKIAQESJwoYY2xpX3NlY3JldF9vbGFjX2NvbW1hbmRzGNgCIAEoCEiyAogBARIjChRjbGlfZGVza3RvcF9jb21tYW5kcxjZAiABKAhIswKIAQESLgofY2xpX2VuYWJsZV9zcGFjZV9waW5uZWRfZXhwZXJ0cxjaAiABKAhItAKIAQESNgojcG9zZWlkb25fcHJlZmV0Y2hfdmZzX2JlZm9yZV9hdWdnaWUY2wIgASgIQgIYAUi1AogBARIgChFjb21wYWN0aW9uX2NvbmZpZxjcAiABKAlItgKIAQESQAoxcG9zZWlkb25faW1hZ2VzX2FzeW5jX2Vudmlyb25tZW50X3JlYnVpbGRfZW5hYmxlZBjdAiABKAhItwKIAQESJwoYY2xpX3Zmc19iYWxhbmNlZF9zdHJlYW1zGN4CIAEoCEi4AogBARJACjFwb3NlaWRvbl9pbWFnZXNfYXN5bmNfZW52aXJvbm1lbnRfcmVmcmVzaF9lbmFibGVkGN8CIAEoCEi5AogBARJNCj5wb3NlaWRvbl9pbWFnZXNfYXN5bmNfZW52aXJvbm1lbnRfcmVwb3NpdG9yeV9yZWNvbmNpbGVfZW5hYmxlZBjgAiABKAhIugKIAQESIAoRY2xpX3N5bmNfZnJlZV92ZnMY4QIgASgISLsCiAEBEj8KMHBvc2VpZG9uX2ltYWdlc19hc3luY19lbnZpcm9ubWVudF91cGRhdGVfZW5hYmxlZBjiAiABKAhIvAKIAQESKAoZY29zbW9zX2F1Z2dpZV9lYXJseV9zdGFydBjjAiABKAhIvQKIAQESOgorY29zbW9zX2Vudmlyb25tZW50X3J1bnRpbWVfc2VsZWN0b3JfZW5hYmxlZBjkAiABKAhIvgKIAQESJgoXY29zbW9zX21jcF9hZ2VudF9hdHRhY2gY5QIgASgISL8CiAEBEiYKF2NsaV9zdGFydHVwX2Jhbm5lcl90ZXh0GOYCIAEoCUjAAogBARIpChpwb3NlaWRvbl92ZnNfbWF4X2ZpbGVfc2l6ZRjnAiABKANIwQKIAQESOwooZW5hYmxlX2NvZGViYXNlX3JldHJpZXZhbF90b29sX2F1Z2dpZV92MhjoAiABKAhCAhgBSMICiAEBEjIKI2Nvc21vc19hdWdnaWVfZW5hYmxlX2NvbnRleHRfZW5naW5lGOkCIAEoCEjDAogBARIqCht1c2VfdnNjb2RlX3NlcnZlcl9mb3JfZmlsZXMY6gIgASgISMQCiAEBEi4KH2NsaV9tY3BfdG9vbF9zZWFyY2hfYXV0b19lbmFibGUY6wIgASgISMUCiAEBQhQKEl9lbmFibGVfY29kZV9lZGl0c0IOCgxfZW5hYmxlX2NoYXRCHgocX2VuYWJsZV93b3Jrc3BhY2VfbWFuYWdlcl91aUIXChVfZW5hYmxlX2ludGVsbGlqX2NoYXRCJQojX2VuYWJsZV93b3Jrc3BhY2VfbWFuYWdlcl91aV9sYXVuY2hCGQoXX2FkZGl0aW9uYWxfY2hhdF9tb2RlbHNCHAoaX2ludGVsbGlqX2NoYXRfbWluX3ZlcnNpb25CHgocX3ZzY29kZV9mbHl3aGVlbF9taW5fdmVyc2lvbkIuCixfdnNjb2RlX2V4dGVybmFsX3NvdXJjZXNfaW5fY2hhdF9taW5fdmVyc2lvbkIWChRfZW5hYmxlX2luc3RydWN0aW9uc0IVChNfZW5hYmxlX3NtYXJ0X3Bhc3RlQiEKH19lbmFibGVfc21hcnRfcGFzdGVfbWluX3ZlcnNpb25CHAoaX2VuYWJsZV92aWV3X3RleHRfZG9jdW1lbnRCFgoUX2NoZWNrcG9pbnRfYmxvYnNfdjJCGQoXX2VuYWJsZV9kYXRhX2NvbGxlY3Rpb25CFwoVX3NtYWxsX3N5bmNfdGhyZXNob2xkQhUKE19iaWdfc3luY190aHJlc2hvbGRCGQoXX2J5cGFzc19sYW5ndWFnZV9maWx0ZXJCEwoRX2VuYWJsZV9oaW5kc2lnaHRCGAoWX21heF91cGxvYWRfc2l6ZV9ieXRlc0IoCiZfaW50ZWxsaWpfZm9yY2VfY29tcGxldGlvbl9taW5fdmVyc2lvbkIiCiBfZW5hYmxlX2V4dGVybmFsX3NvdXJjZXNfaW5fY2hhdEIbChlfbWF4X3RyYWNrYWJsZV9maWxlX2NvdW50Qi4KLF9tYXhfdHJhY2thYmxlX2ZpbGVfY291bnRfd2l0aG91dF9wZXJtaXNzaW9uQi0KK19taW5fdXBsb2FkZWRfcGVyY2VudGFnZV93aXRob3V0X3Blcm1pc3Npb25CKgooX3ZzY29kZV9jaGF0X2hpbnRfZGVjb3JhdGlvbl9taW5fdmVyc2lvbkIlCiNfZW5hYmxlX2NvbXBsZXRpb25fZmlsZV9lZGl0X2V2ZW50c0IdChtfdnNjb2RlX3NvdXJjZXNfbWluX3ZlcnNpb25CHAoaX3ZzY29kZV9lbmFibGVfY3B1X3Byb2ZpbGVCHwodX3ZlcmlmeV9mb2xkZXJfaXNfc291cmNlX3JlcG9CIgogX3JlZnVzZV90b19zeW5jX2hvbWVfZGlyZWN0b3JpZXNCLAoqX2VuYWJsZV9maWxlX2xpbWl0c19mb3Jfc3luY2luZ19wZXJtaXNzaW9uQhsKGV92c2NvZGVfc2hhcmVfbWluX3ZlcnNpb25CHQobX2ludGVsbGlqX3NoYXJlX21pbl92ZXJzaW9uQhgKFl9lbmFibGVfc3VtbWFyeV90aXRsZXNCHwodX2VuYWJsZV9jaGF0X21lcm1haWRfZGlhZ3JhbXNCHgocX3NtYXJ0X3Bhc3RlX3ByZWNvbXB1dGVfbW9kZUImCiRfdnNjb2RlX25ld190aHJlYWRzX21lbnVfbWluX3ZlcnNpb25CKAomX2ludGVsbGlqX25ld190aHJlYWRzX21lbnVfbWluX3ZlcnNpb25CJgokX3ZzY29kZV9lZGl0YWJsZV9oaXN0b3J5X21pbl92ZXJzaW9uQhgKFl9pbnRlbGxpal9zaG93X3N1bW1hcnlCFAoSX2VuYWJsZV9ndWlkZWxpbmVzQjIKMF92c2NvZGVfZW5hYmxlX2NoYXRfbWVybWFpZF9kaWFncmFtc19taW5fdmVyc2lvbkIcChpfdnNjb2RlX2RlcHJlY2F0ZWRfdmVyc2lvbkIeChxfaW50ZWxsaWpfZGVwcmVjYXRlZF92ZXJzaW9uQjQKMl92c2NvZGVfdXNlX2NoZWNrcG9pbnRfbWFuYWdlcl9jb250ZXh0X21pbl92ZXJzaW9uQi0KK192c2NvZGVfdmFsaWRhdGVfY2hlY2twb2ludF9tYW5hZ2VyX2NvbnRleHRCIwohX2ludGVsbGlqX3NtYXJ0X3Bhc3RlX21pbl92ZXJzaW9uQjQKMl92c2NvZGVfZGVzaWduX3N5c3RlbV9yaWNoX3RleHRfZWRpdG9yX21pbl92ZXJzaW9uQiYKJF9hbGxvd19jbGllbnRfZmVhdHVyZV9mbGFnX292ZXJyaWRlc0IlCiNfdnNjb2RlX2NoYXRfd2l0aF90b29sc19taW5fdmVyc2lvbkInCiVfaW50ZWxsaWpfY2hhdF93aXRoX3Rvb2xzX21pbl92ZXJzaW9uQiUKI192c2NvZGVfY2hhdF9tdWx0aW1vZGFsX21pbl92ZXJzaW9uQicKJV9pbnRlbGxpal9jaGF0X211bHRpbW9kYWxfbWluX3ZlcnNpb25CNAoyX2ludGVsbGlqX2VuYWJsZV9jaGF0X21lcm1haWRfZGlhZ3JhbXNfbWluX3ZlcnNpb25CIAoeX3ZzY29kZV9hZ2VudF9tb2RlX21pbl92ZXJzaW9uQiIKIF9pbnRlbGxpal9hZ2VudF9tb2RlX21pbl92ZXJzaW9uQhwKGl9pbnRlbGxpal9ibG9ja2VkX3ZlcnNpb25zQjYKNF9pbnRlbGxpal9kZXNpZ25fc3lzdGVtX3JpY2hfdGV4dF9lZGl0b3JfbWluX3ZlcnNpb25CKAomX2ludGVsbGlqX3N5bmNpbmdfcHJvZ3Jlc3NfbWluX3ZlcnNpb25CGgoYX2Vsb19tb2RlbF9jb25maWd1cmF0aW9uQhkKF192c2NvZGVfYWdlbnRfZWRpdF90b29sQi8KLV9pbnRlbGxpal9hc2tfZm9yX3N5bmNfcGVybWlzc2lvbl9taW5fdmVyc2lvbkInCiVfdnNjb2RlX2JhY2tncm91bmRfYWdlbnRzX21pbl92ZXJzaW9uQikKJ19pbnRlbGxpal9iYWNrZ3JvdW5kX2FnZW50c19taW5fdmVyc2lvbkIfCh1fdXNlcl9ndWlkZWxpbmVzX2xlbmd0aF9saW1pdEIkCiJfd29ya3NwYWNlX2d1aWRlbGluZXNfbGVuZ3RoX2xpbWl0QioKKF92c2NvZGVfcmljaF9jaGVja3BvaW50X2luZm9fbWluX3ZlcnNpb25CIgogX2ludGVsbGlqX2VuYWJsZV91c2VyX2d1aWRlbGluZXNCJwolX2ludGVsbGlqX2VuYWJsZV93b3Jrc3BhY2VfZ3VpZGVsaW5lc0InCiVfdnNjb2RlX2FnZW50X21vZGVfbWluX3N0YWJsZV92ZXJzaW9uQjAKLl9pbnRlbGxpal92aXJ0dWFsaXplZF9tZXNzYWdlX2xpc3RfbWluX3ZlcnNpb25CMwoxX3ZzY29kZV9jaGF0X3N0YWJsZV9wcmVmaXhfdHJ1bmNhdGlvbl9taW5fdmVyc2lvbkIgCh5fYWdlbnRfZWRpdF90b29sX21pbl92aWV3X3NpemVCJwolX2ludGVsbGlqX3VzZXJfZ3VpZGVsaW5lc19pbl9zZXR0aW5nc0IeChxfYWdlbnRfZWRpdF90b29sX3NjaGVtYV90eXBlQiIKIF92c2NvZGVfZGlyZWN0X2FwcGx5X21pbl92ZXJzaW9uQiMKIV92c2NvZGVfcGVyc29uYWxpdGllc19taW5fdmVyc2lvbkItCitfYWdlbnRfc2F2ZV9maWxlX3Rvb2xfaW5zdHJ1Y3Rpb25zX3JlbWluZGVyQjAKLl9yZW1vdGVfYWdlbnRfY2hhdF9oaXN0b3J5X3BvbGxpbmdfaW50ZXJ2YWxfbXNCKAomX3JlbW90ZV9hZ2VudF9saXN0X3BvbGxpbmdfaW50ZXJ2YWxfbXNCNQozX2ludGVsbGlqX3ByZWZlcmVuY2VfY29sbGVjdGlvbl9hbGxvd2VkX21pbl92ZXJzaW9uQiUKI19pbnRlbGxpal9lbmFibGVfaG9tZXNwdW5fZ2l0aWdub3JlQi0KK192c2NvZGVfZ2VuZXJhdGVfY29tbWl0X21lc3NhZ2VfbWluX3ZlcnNpb25CDwoNX2VuYWJsZV9ydWxlc0IoCiZfYWdlbnRfZWRpdF90b29sX2VuYWJsZV9mdXp6eV9tYXRjaGluZ0IuCixfYWdlbnRfZWRpdF90b29sX2Z1enp5X21hdGNoX3N1Y2Nlc3NfbWVzc2FnZUInCiVfYWdlbnRfZWRpdF90b29sX2Z1enp5X21hdGNoX21heF9kaWZmQi0KK19hZ2VudF9lZGl0X3Rvb2xfZnV6enlfbWF0Y2hfbWF4X2RpZmZfcmF0aW9CQQo/X2FnZW50X2VkaXRfdG9vbF9mdXp6eV9tYXRjaF9taW5fYWxsX21hdGNoX3N0cmVha19iZXR3ZWVuX2RpZmZzQhkKF19lbmFibGVfcHJvbXB0X2VuaGFuY2VyQiMKIV9pbnRlbGxpal9wcm9tcHRfZW5oYW5jZXJfZW5hYmxlZEIoCiZfYWdlbnRfZWRpdF90b29sX2luc3RydWN0aW9uc19yZW1pbmRlckIZChdfaW50ZWxsaWpfZW5hYmxlX3NlbnRyeUInCiVfaW50ZWxsaWpfd2Vidmlld19lcnJvcl9zYW1wbGluZ19yYXRlQiYKJF9pbnRlbGxpal9wbHVnaW5fZXJyb3Jfc2FtcGxpbmdfcmF0ZUInCiVfaW50ZWxsaWpfd2Vidmlld190cmFjZV9zYW1wbGluZ19yYXRlQiYKJF9pbnRlbGxpal9wbHVnaW5fdHJhY2Vfc2FtcGxpbmdfcmF0ZUIfCh1fb3Blbl9maWxlX21hbmFnZXJfdjJfZW5hYmxlZEIxCi9faW50ZWxsaWpfZW5hYmxlX3dlYnZpZXdfcGVyZm9ybWFuY2VfbW9uaXRvcmluZ0IfCh1fdnNjb2RlX3Rhc2tfbGlzdF9taW5fdmVyc2lvbkImCiRfYWdlbnRfZWRpdF90b29sX3Nob3dfcmVzdWx0X3NuaXBwZXRCKAomX2ludGVsbGlqX2VkdF9mcmVlemVfZGV0ZWN0aW9uX2VuYWJsZWRCFgoUX2NsaWVudF9hbm5vdW5jZW1lbnRCJgokX3ZzY29kZV9yZW1vdGVfYWdlbnRfc3NoX21pbl92ZXJzaW9uQhwKGl9hZ2VudF9lZGl0X3Rvb2xfbWF4X2xpbmVzQhoKGF9ncmVwX3NlYXJjaF90b29sX2VuYWJsZUIhCh9fZ3JlcF9zZWFyY2hfdG9vbF90aW1lbGltaXRfc2VjQiYKJF9ncmVwX3NlYXJjaF90b29sX291dHB1dF9jaGFyc19saW1pdEIlCiNfZ3JlcF9zZWFyY2hfdG9vbF9udW1fY29udGV4dF9saW5lc0IZChdfZW5hYmxlX2FnZW50X2F1dG9fbW9kZUIpCidfYWdlbnRfcmVwb3J0X3N0cmVhbWVkX2NoYXRfZXZlcnlfY2h1bmtCKwopX2FnZW50X21heF90b3RhbF9jaGFuZ2VkX2ZpbGVzX3NpemVfYnl0ZXNCKAomX2FnZW50X21heF9jaGFuZ2VkX2ZpbGVzX3NraXBwZWRfcGF0aHNCJwolX2FnZW50X2lkbGVfc3RhdHVzX3VwZGF0ZV9pbnRlcnZhbF9tc0IXChVfYWdlbnRfbWF4X2l0ZXJhdGlvbnNCKQonX2FnZW50X3NzaF9jb25uZWN0aW9uX2NoZWNrX2ludGVydmFsX21zQi0KK19hZ2VudF9zc2hfY29ubmVjdGlvbl9jaGVja19sb2dfaW50ZXJ2YWxfbXNCGgoYX2JlYWNoaGVhZF9lbmFibGVfc2VudHJ5QiAKHl9iZWFjaGhlYWRfZXJyb3Jfc2FtcGxpbmdfcmF0ZUIgCh5fYmVhY2hoZWFkX3RyYWNlX3NhbXBsaW5nX3JhdGVCLAoqX3ZzY29kZV9zdXBwb3J0X3Rvb2xfdXNlX3N0YXJ0X21pbl92ZXJzaW9uQh4KHF9oaXN0b3J5X3N1bW1hcnlfbWluX3ZlcnNpb25CHAoaX2hpc3Rvcnlfc3VtbWFyeV9tYXhfY2hhcnNCHgocX2hpc3Rvcnlfc3VtbWFyeV9sb3dlcl9jaGFyc0IaChhfZW5hYmxlX25ld190aHJlYWRzX2xpc3RCGQoXX2hpc3Rvcnlfc3VtbWFyeV9wcm9tcHRCJQojX2VuYWJsZV91bnRydW5jYXRlZF9jb250ZW50X3N0b3JhZ2VCJAoiX21heF9saW5lc190ZXJtaW5hbF9wcm9jZXNzX291dHB1dEIZChdfZW5hYmxlX2NvbW1pdF9pbmRleGluZ0IXChVfbWF4X2NvbW1pdHNfdG9faW5kZXhCIQofX2ludGVsbGlqX3Rhc2tfbGlzdF9taW5fdmVyc2lvbkIaChhfZW5hYmxlX2V4Y2hhbmdlX3N0b3JhZ2VCHQobX3JldHJ5X2NoYXRfc3RyZWFtX3RpbWVvdXRzQiAKHl9lbmFibGVfdG9vbF91c2Vfc3RhdGVfc3RvcmFnZUIhCh9fcmVtb3RlX2FnZW50X2N1cnJlbnRfd29ya3NwYWNlQhkKF19oaXN0b3J5X3N1bW1hcnlfcGFyYW1zQhQKEl9lbmFibGVfYWdlbnRfdGFic0IUChJfZW5hYmxlX3N3YXJtX21vZGVCIgogX2JlYWNoaGVhZF9lbmFibGVfc3ViX2FnZW50X3Rvb2xCFwoVX2VuYWJsZV9ncm91cGVkX3Rvb2xzQi8KLV9yZW1vdGVfYWdlbnRzX3Jlc3VtZV9oaW50X2F2YWlsYWJsZV90dGxfZGF5c0IYChZfZW5hYmxlX3BhcmFsbGVsX3Rvb2xzQhQKEl9jbGllbnRfZGVwcmVjYXRlZEIhCh9fZW5hYmxlX3ZpZXdlZF9jb250ZW50X3RyYWNraW5nQicKJV92aWV3ZWRfY29udGVudF9jbG9zZV9yYW5nZV90aHJlc2hvbGRCKQonX3ZpZXdlZF9jb250ZW50X2Rpc2NyZXRlX2p1bXBfdGhyZXNob2xkQiIKIF92aWV3ZWRfY29udGVudF9taW5fZXZlbnRfYWdlX21zQiIKIF92aWV3ZWRfY29udGVudF9tYXhfZXZlbnRfYWdlX21zQhsKGV9lbmFibGVfbmF0aXZlX3JlbW90ZV9tY3BCIwohX25vdGlmaWNhdGlvbl9wb2xsaW5nX2ludGVydmFsX21zQhsKGV9lbmFibGVfYWdlbnRfZ2l0X3RyYWNrZXJCIgogX3RydW5jYXRpb25fZm9vdGVyX2FkZGl0aW9uX3RleHRCEAoOX2VuYWJsZV9zZW50cnlCHgocX3dlYnZpZXdfZXJyb3Jfc2FtcGxpbmdfcmF0ZUIeChxfd2Vidmlld190cmFjZV9zYW1wbGluZ19yYXRlQhkKF19hZ2VudF92aWV3X3Rvb2xfcGFyYW1zQhsKGV92c2NvZGVfdGVybWluYWxfc3RyYXRlZ3lCEwoRX2FnZW50X2NoYXRfbW9kZWxCJQojX2Nsb3VkX2FnZW50X2RlZmF1bHRfbW9kZWxfb3ZlcnJpZGVCFgoUX21vZGVsX2luZm9fcmVnaXN0cnlCNQozX21heF9saW5lc190ZXJtaW5hbF9wcm9jZXNzX291dHB1dF9hZnRlcl90cnVuY2F0aW9uQigKJl9lbmFibGVfbm90aWZpY2F0aW9uc19zZXJ2aWNlX2ludGVsbGlqQhYKFF9lbmFibGVfbHVjaWRlX2ljb25zQiMKIV9lbmFibGVfZW5oYW5jZWRfZGVoeWRyYXRpb25fbW9kZUIrCilfdnNjb2RlX3Nob3dfdGhpbmtpbmdfc3VtbWFyeV9taW5fdmVyc2lvbkItCitfaW50ZWxsaWpfc2hvd190aGlua2luZ19zdW1tYXJ5X21pbl92ZXJzaW9uQiYKJF9pbnRlbGxpal9lbmFibGVfZmlsZV9pbnRha2Vfc2VydmljZUIuCixfaW50ZWxsaWpfZW5hYmxlX3NlZ21lbnRfYW5hbHl0aWNzX3JlcG9ydGluZ0IUChJfY2xpX2VuYWJsZV9zZW50cnlCGgoYX2NsaV9lcnJvcl9zYW1wbGluZ19yYXRlQhoKGF9jbGlfdHJhY2Vfc2FtcGxpbmdfcmF0ZUIlCiNfY2xpX2NoYXRfc3RyZWFtX3JldHJ5X2hhcmRfc3RvcF9tc0IXChVfY2xpX2VuYWJsZV9hbmFseXRpY3NCGgoYX2NsaV9hbmFseXRpY3Nfd3JpdGVfa2V5Qh4KHF9wYXJ0bmVyX21jcF9sYXVuY2hfMjAyNTA5MTZCFQoTX2NsaV9wYXJhbGxlbF90b29sc0IdChtfZW5hYmxlX2J1bGtfZGVsZXRlX3RocmVhZHNCJwolX2VuYWJsZV9pbnRlcnNlY3Rpb25fb2JzZXJ2ZXJfbWFuYWdlckInCiVfZW5hYmxlX3RlbmFudF9sZXZlbF90b29sX3Blcm1pc3Npb25zQiYKJF93ZWJ2aWV3X3JlcGxheXNfc2Vzc2lvbl9zYW1wbGVfcmF0ZUInCiVfd2Vidmlld19yZXBsYXlzX29uX2Vycm9yX3NhbXBsZV9yYXRlQiQKIl92c2NvZGVfcGx1Z2luX2Vycm9yX3NhbXBsaW5nX3JhdGVCJAoiX3ZzY29kZV9wbHVnaW5fdHJhY2Vfc2FtcGxpbmdfcmF0ZUIdChtfZW5hYmxlX2NyZWRpdHNfaW5fc2V0dGluZ3NCIwohX2VuYWJsZV9jcmVkaXRfYmFubmVyX2luX3NldHRpbmdzQiYKJF9lbmFibGVfY2hhdF9pbnB1dF9pbmxpbmVfY29tcGxldGlvbkIeChxfY2xpX2VuYWJsZV9hY2NvdW50X2NvbW1hbmRzQhcKFV9lbmFibGVfb25ib2FyZGluZ192MkIbChlfY2xpX2VuYWJsZV9tZXNzYWdlX3F1ZXVlQh8KHV9lbmFibGVfZ3JwY190b19pZGVfbWVzc2FnaW5nQiwKKl9jbGlfZW5hYmxlX2FzeW5jX3dvcmtzcGFjZV9pbml0aWFsaXphdGlvbkIdChtfbWF4X2xpbmVfbGVuZ3RoX2NoYXJhY3RlcnNCKgooX2VuYWJsZV9jcmVkaXRzX2NvbnN1bWVkX2luX3R1cm5fc3VtbWFyeUInCiVfZ2l0aHViX2ludGVncmF0aW9uX25vdGlmaWNhdGlvbl9qc29uQiQKIl9lbmFibGVfZGVlcF9saW5rX2NoYXRfd2l0aF9wcm9tcHRCHwodX2VuYWJsZV9jb21taXRfc2Vzc2lvbl9ldmVudHNCIwohX3VzZV9pbnRha2Vfc2VydmljZV9mb3JfZmlsZV93YWxrQhoKGF9lbmFibGVfYXBwbHlfcGF0Y2hfdG9vbEIlCiNfY3VzdG9tZXJfdWlfc2VjcmV0X21hbmFnZXJfZW5hYmxlZEIeChxfY2hhdF9pbnB1dF9jb21wbGV0aW9uX21vZGVsQjIKMF92c2NvZGVfcHJvbXB0X2VuaGFuY2VyX25ld19lbmRwb2ludF9yb2xsb3V0X3BjdEI0CjJfaW50ZWxsaWpfcHJvbXB0X2VuaGFuY2VyX25ld19lbmRwb2ludF9yb2xsb3V0X3BjdEIvCi1fY2xpX3Byb21wdF9lbmhhbmNlcl9uZXdfZW5kcG9pbnRfcm9sbG91dF9wY3RCJwolX2NsaV9lbmFibGVfd29ya2VyX3RocmVhZF9wYXRoX2ZpbHRlckIuCixfYXBpX3Byb3h5X2NsaV9ub25faW50ZXJhY3RpdmVfbW9kZV9kaXNhYmxlZEIcChpfZW5hYmxlX3NldHRpbmdzX2hvbWVfcGFnZUIXChVfY2xpX2VuYWJsZV9iYXNoX21vZGVCIwohX2VuYWJsZV9jb2RlX3Jldmlld19zbGFzaF9jb21tYW5kQg8KDV9lbmFibGVfaG9va3NCHAoaX2VuYWJsZV9oaWVyYXJjaGljYWxfcnVsZXNCIgogX2NhbnZhc19leHRlbnNpb25fZmVhdHVyZV9lbmFibGVCGAoWX2VuYWJsZV9kZWJ1Z19mZWF0dXJlc0IcChpfZW5hYmxlX3BsdWdpbl9tYXJrZXRwbGFjZUI4CjZfYmVhY2hoZWFkX2ZpbGVzeXN0ZW1fY2hhbmdlX3RyYWNrZXJfbWF4X2dpdF9wcm9jZXNzZXNCHwodX2NsaV9lbmFibGVfd29ya3NwYWNlX2NvbW1hbmRCGQoXX3B1YmxpY19iZXRhX29wdF9pbl9hbGxCLgosX3B1YmxpY19iZXRhX2NhbnZhc19leHRlbnNpb25fZmVhdHVyZV9lbmFibGVCGgoYX2VuYWJsZV9wdWJsaWNfYmV0YV9wYWdlQiUKI19lbmFibGVfd29ya3NwYWNlX2NvbnZlcnNhdGlvbl9zeW5jQhAKDl9lbmFibGVfc2tpbGxzQh8KHV9yZXBvc2l0b3J5X2FsbG93bGlzdF9lbmFibGVkQh8KHV9jbGlfbmV3X2ZlYXR1cmVfYW5ub3VuY2VtZW50QhkKF19lbmFibGVfY3VzdG9tX2NvbW1hbmRzQhoKGF9jbGlfZW5hYmxlX2Nsb3VkX2FnZW50c0IyCjBfZW5hYmxlX3dvcmtzcGFjZV9jb252ZXJzYXRpb25fY2hhdF9oaXN0b3J5X3N5bmNCJQojX3B1YmxpY19iZXRhX2VuYWJsZV9jdXN0b21fY29tbWFuZHNCFwoVX2VuYWJsZV9tZXNzYWdlX3F1ZXVlQhsKGV9lbmFibGVfc2hhcmVkX2d1aWRlbGluZXNCNgo0X3ZzY29kZV91cGRhdGVfdmVyc2lvbl9ub3RpZmljYXRpb25fcG9sbGluZ19pbnRlcnZhbEI4CjZfaW50ZWxsaWpfdXBkYXRlX3ZlcnNpb25fbm90aWZpY2F0aW9uX3BvbGxpbmdfaW50ZXJ2YWxCFQoTX2NsaV9lbmFibGVfcGVyc29uYUIrCilfY2xpX2VuYWJsZV9sYXVuY2hfcHJvY2Vzc19ldmVudF9saXN0ZW5lckIsCipfdnNjb2RlX2VuYWJsZV91cGRhdGVfdmVyc2lvbl9ub3RpZmljYXRpb25CFwoVX2NsaV9lbmFibGVfcGxhbl9tb2RlQiMKIV9jb2xkX3N0YXJ0X2dpdF9zaGFfaW5kZXhfZW5hYmxlZEIuCixfaW50ZWxsaWpfZW5hYmxlX3VwZGF0ZV92ZXJzaW9uX25vdGlmaWNhdGlvbkIeChxfZW5hYmxlX3JlYWRfcHJvY2Vzc190cmFja2VyQiAKHl9yZWFkX3Byb2Nlc3NfbWF4X3dhaXRfc2Vjb25kc0InCiVfcmVhZF9wcm9jZXNzX3N0dWNrX3BvbGxpbmdfdGhyZXNob2xkQhUKE19lbmFibGVfY29tcGxldGlvbnNCEwoRX2VuYWJsZV9zdWJhZ2VudHNCGwoZX2NsaV9hbGxvd190b29sX292ZXJyaWRlc0IbChlfY2xpX2VuYWJsZV9jb250ZXh0X3VzYWdlQiAKHl9lbmFibGVfY29udmVyc2F0aW9uX3JldHJpZXZhbEIZChdfY2xpX2VuYWJsZV9kaWZmX3ZpZXdlckIhCh9faW50ZWxsaWpfc2lkZWNhcl9lbmFibGVfc2VudHJ5QicKJV9pbnRlbGxpal9zaWRlY2FyX2Vycm9yX3NhbXBsaW5nX3JhdGVCJwolX2ludGVsbGlqX3NpZGVjYXJfdHJhY2Vfc2FtcGxpbmdfcmF0ZUIcChpfY2xpX2VuYWJsZV9hc3luY19pbmRleGluZ0IcChpfcHVibGljX2JldGFfZW5hYmxlX3NraWxsc0IjCiFfcHVibGljX2JldGFfZW5hYmxlX21lc3NhZ2VfcXVldWVCHwodX3B1YmxpY19iZXRhX2VuYWJsZV9zdWJhZ2VudHNCGgoYX2NsaV9lbmFibGVfc2hvd19jcmVkaXRzQhsKGV9pZGVfZW5hYmxlX2Fza191c2VyX3Rvb2xCHwodX2VuYWJsZV9jaGF0X2hpc3RvcnlfcmVjb3ZlcnlCJQojX2ludGVsbGlqX3N0YXRlX3BvbGxpbmdfaW50ZXJ2YWxfbXNCIwohX3ZzY29kZV9zdGF0ZV9wb2xsaW5nX2ludGVydmFsX21zQh0KG19jbGlfZGVmYXVsdF9wb3NlaWRvbl9hZ2VudEIdChtfY2xpX2VuYWJsZV9zZXNzaW9uX2FuYWx5emVCEwoRX2VuYWJsZV9maWdtYV9tY3BCGgoYX2VuYWJsZV9oeWJyaWRfcmV0cmlldmFsQh8KHV9jb252ZXJzYXRpb25fcmVyYW5raW5nX21vZGVsQisKKV9iZWFjaGhlYWRfZW5hYmxlX3BhcmFsbGVsX3Rvb2xfZXhlY3V0aW9uQh4KHF9lbmFibGVfY29udGV4dF93aW5kb3dfdXNhZ2VCIAoeX2VuYWJsZV9wbHVnaW5fbWFya2V0cGxhY2VfaWRlQg4KDF9lbmFibGVfYnlva0IaChhfcG9zZWlkb25fZGFlbW9uX2VuYWJsZWRCHQobX2VuYWJsZV9jb250ZXh0X3VzYWdlX21vZGFsQh0KG190b29sX3NlYXJjaF9zdW1tYXJ5X3Byb21wdEIfCh1fdG9vbF9zZWFyY2hfZmluZF90b29sX3Byb21wdEIbChlfY2xpX2VuYWJsZV9zZXNzaW9uX3N0YXRzQhoKGF9lbmFibGVfbWlkX3N0cmVhbV9yZXRyeUIRCg9fY2xpX2VuYWJsZV9idHdCGwoZX2NsaV9lbmFibGVfY29udGV4dF9zdGF0c0IeChxfZW5hYmxlX2lkZV9oYW5kb2ZmX3RvX2Nsb3VkQicKJV9jbGlfZW5hYmxlX2Nsb3VkX2FnZW50X2Fza191c2VyX3Rvb2xCFgoUX3VzZV9hY3BfY29tcGxldGlvbnNCIAoeX2VuYWJsZV9jb2RlYmFzZV9yZXRyaWV2YWxfcmF3QhIKEF93ZWJ2aWV3X3VzZV9hY3BCHgocX2NsaV9lbmFibGVfaGFuZG9mZl90b19jbG91ZEIhCh9fc3ViYWdlbnRzX3Zpc2liaWxpdHlfb3ZlcnJpZGVzQicKJV9jbGlfZW5hYmxlX2NvbGxhcHNlX2xvbmdfcGFzdGVkX3RleHRCGAoWX21heF90b29sX291dHB1dF9ieXRlc0IbChlfY2xpX2NvbXBhY3RfdG9vbF9zdXJmYWNlQhoKGF9jb3Ntb3NfZW5hYmxlX3Jlc2lkZW50c0IbChlfY29zbW9zX3Jlc2lkZW50X3ByZXNlbmNlQioKKF9jbGlfcmVjb3JkX3N1bW1hcml6YXRpb25zX2FuZF9zdWJhZ2VudHNCHgocX2Nvc21vc19tb3JlX2N1c3RvbV93ZWJob29rc0IlCiNfY2xpX3VzZV9zdHJlYW1pbmdfdmZzX2ZpbGVfY29udGVudEIWChRfY2xpX3R1bm5lbF9jb21tYW5kc0IhCh9fY2xpX3Bvc2VpZG9uX2FuYWx5dGljc19lbmFibGVkQiIKIF9jbGlfZGFlbW9uX3Bvb2xfYWNjZXNzX2NvbW1hbmRzQiQKIl9jb3Ntb3NfbXVsdGlfcmVwb19jb250ZXh0X2VuYWJsZWRCIgogX2Nvc21vc19uZXN0ZWRfYWdlbnRzX21kX2VuYWJsZWRCHAoaX3Zmc19kdXJhYmxlX2ZpbGVfaWRlbnRpdHlCGAoWX2lkZV9leHRlbnNpb25fcmV0aXJlZEIlCiNfY2xpX2VuYWJsZV92ZnNfY29tbWVudHNfcHJvamVjdGlvbkIpCidfY2xpX3NsZWVwX3Jlc3VtZV93YXRjaGRvZ190aHJlc2hvbGRfbXNCFwoVX3Zmc19leHRlbmRlZF9zaGFyaW5nQiEKH19jbGlfZGFlbW9uX2F1dG9fdXBkYXRlX2VuYWJsZWRCFQoTX2lkZV9taWdyYXRpb25fbW9kZUIhCh9faWRlX21pZ3JhdGlvbl9hbmFseXNpc19lbmFibGVkQh8KHV9pZGVfbWlncmF0aW9uX2FuYWx5c2lzX21vZGVsQiMKIV9jbGlfZW52aXJvbm1lbnRfc25hcHNob3RfdXBkYXRlc0IqCihfY29zbW9zX2NsaV9iYWNrZ3JvdW5kX3N1YmFnZW50c19lbmFibGVkQhsKGV9jbGlfc2VjcmV0X29sYWNfY29tbWFuZHNCFwoVX2NsaV9kZXNrdG9wX2NvbW1hbmRzQiIKIF9jbGlfZW5hYmxlX3NwYWNlX3Bpbm5lZF9leHBlcnRzQiYKJF9wb3NlaWRvbl9wcmVmZXRjaF92ZnNfYmVmb3JlX2F1Z2dpZUIUChJfY29tcGFjdGlvbl9jb25maWdCNAoyX3Bvc2VpZG9uX2ltYWdlc19hc3luY19lbnZpcm9ubWVudF9yZWJ1aWxkX2VuYWJsZWRCGwoZX2NsaV92ZnNfYmFsYW5jZWRfc3RyZWFtc0I0CjJfcG9zZWlkb25faW1hZ2VzX2FzeW5jX2Vudmlyb25tZW50X3JlZnJlc2hfZW5hYmxlZEJBCj9fcG9zZWlkb25faW1hZ2VzX2FzeW5jX2Vudmlyb25tZW50X3JlcG9zaXRvcnlfcmVjb25jaWxlX2VuYWJsZWRCFAoSX2NsaV9zeW5jX2ZyZWVfdmZzQjMKMV9wb3NlaWRvbl9pbWFnZXNfYXN5bmNfZW52aXJvbm1lbnRfdXBkYXRlX2VuYWJsZWRCHAoaX2Nvc21vc19hdWdnaWVfZWFybHlfc3RhcnRCLgosX2Nvc21vc19lbnZpcm9ubWVudF9ydW50aW1lX3NlbGVjdG9yX2VuYWJsZWRCGgoYX2Nvc21vc19tY3BfYWdlbnRfYXR0YWNoQhoKGF9jbGlfc3RhcnR1cF9iYW5uZXJfdGV4dEIdChtfcG9zZWlkb25fdmZzX21heF9maWxlX3NpemVCKwopX2VuYWJsZV9jb2RlYmFzZV9yZXRyaWV2YWxfdG9vbF9hdWdnaWVfdjJCJgokX2Nvc21vc19hdWdnaWVfZW5hYmxlX2NvbnRleHRfZW5naW5lQh4KHF91c2VfdnNjb2RlX3NlcnZlcl9mb3JfZmlsZXNCIgogX2NsaV9tY3BfdG9vbF9zZWFyY2hfYXV0b19lbmFibGVKBAgCEANKBAgDEARKBAgEEAVKBgiPAhCQAkoECAsQDEoECBAQEUoECCAQIUoECDYQN0oECDgQOUoECDkQOkoECEYQR0oECEgQSUoECFAQUUoECFEQUkoECFUQVkoECF0QXkoECGEQYkoECGYQZ0oECG0QbkoECG4Qb0oGCI4BEI8BSgYIlgEQlwFKBgieARCfAUoGCLoBELsBSgYIuwEQvAFKBgi/ARDAAUoGCMYBEMcBSgYI3QEQ3gFKBgjnARDoAUoGCOkBEOoBSgYI6gEQ6wFKBgj0ARD1AUoGCPsBEPwBSgYIgwIQhAJKBgiwAhCxAkoGCLECELICUhx2c2NvZGVfbmV4dF9lZGl0X21pbl92ZXJzaW9uUhVuZXh0X2VkaXRfZGVib3VuY2VfbXNSKGludGVsbGlqX2NvbXBsZXRpb25zX2hpc3RvcnlfbWluX3ZlcnNpb25SIHZzY29kZV9uZXh0X2VkaXRfdXgxX21heF92ZXJzaW9uUiB2c2NvZGVfbmV4dF9lZGl0X3V4Ml9tYXhfdmVyc2lvblIpdnNjb2RlX25leHRfZWRpdF9ib3R0b21fcGFuZWxfbWluX3ZlcnNpb25SK3ZzY29kZV92aXJ0dWFsaXplZF9tZXNzYWdlX2xpc3RfbWluX3ZlcnNpb25SFWVuYWJsZV9tb2RlbF9yZWdpc3RyeVIObW9kZWxfcmVnaXN0cnlSFGZyYXVkX3NpZ25fZW5kcG9pbnRzUjhnaXRodWJfaW50ZWdyYXRpb25fbm90aWZpY2F0aW9uX29uX2ZpcnN0X21lc3NhZ2VfZW5hYmxlZFInaXNfb25ib2FyZGluZ19mZWF0dXJlX2hpZ2hsaWdodF9lbmFibGVkUi52c2NvZGVfZ2VuZXJhdGVfY29udmVyc2F0aW9uX3RpdGxlX3JvbGxvdXRfcGN0UjBpbnRlbGxpal9nZW5lcmF0ZV9jb252ZXJzYXRpb25fdGl0bGVfcm9sbG91dF9wY3RSHHZzY29kZV9hdXRvX2luZGV4X3Blcm1pc3Npb25SFWVuYWJsZV9jb250ZXh0X2NhbnZhc1IXZW5hYmxlX21jcF9yZWdpc3RyeV9jbGlSGWVuYWJsZV9tY3BfcmVnaXN0cnlfY2xvdWQaxAEKBFVzZXISCgoCaWQYASABKAkSEgoFZW1haWwYAiABKAlIAIgBARIWCgl0ZW5hbnRfaWQYAyABKAlIAYgBARIYCgt0ZW5hbnRfbmFtZRgEIAEoCUgCiAEBEjMKCmNyZWF0ZWRfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAOIAQFCCAoGX2VtYWlsQgwKCl90ZW5hbnRfaWRCDgoMX3RlbmFudF9uYW1lQg0KC19jcmVhdGVkX2F0IlcKCFVzZXJUaWVyEgsKB1VOS05PV04QABISCg5DT01NVU5JVFlfVElFUhABEhUKEVBST0ZFU1NJT05BTF9USUVSEAISEwoPRU5URVJQUklTRV9USUVSEANCEAoOX2RlZmF1bHRfbW9kZWxCEAoOX2ZlYXR1cmVfZmxhZ3NCBwoFX3VzZXJCFQoTX2Jvb3RzdHJhcF9zZXR0aW5ncyLUAgoaR2V0T3V0Y29tZUFuYWx5dGljc1JlcXVlc3QSNgoKZGF0ZV9yYW5nZRgBIAEoCzIiLnB1YmxpY19hcGkuQ29zdEFuYWx5dGljc0RhdGVSYW5nZRIZChF0YWdfZ3JvdXBfYnlfa2V5cxgCIAMoCRI0CgdmaWx0ZXJzGAMgASgLMiMucHVibGljX2FwaS5PdXRjb21lQW5hbHl0aWNzRmlsdGVycxIcChRpbmNsdWRlX2Nvc3RfbWV0cmljcxgEIAEoCBI9CgtncmFudWxhcml0eRgFIAEoDjIoLnB1YmxpY19hcGkuQ29zdEFuYWx5dGljc1RpbWVHcmFudWxhcml0eRIdChVkaXNhYmxlX2dyb3VwX2J5X25hbWUYBiABKAgSMQoOb3V0Y29tZV9vcmlnaW4YByABKA4yGS5wdWJsaWNfYXBpLk91dGNvbWVPcmlnaW4iWQobR2V0T3V0Y29tZUFuYWx5dGljc1Jlc3BvbnNlEjoKC2RhdGFfcG9pbnRzGAEgAygLMiUucHVibGljX2FwaS5PdXRjb21lQW5hbHl0aWNzRGF0YVBvaW50IiIKIEdldFBvc2VpZG9uVGVuYW50U2V0dGluZ3NSZXF1ZXN0IkIKIUdldFBvc2VpZG9uVGVuYW50U2V0dGluZ3NSZXNwb25zZRIdChVkZWZhdWx0X2Jhc2VfaW1hZ2VfaWQYASABKAkiIAoeR2V0UG9zZWlkb25Vc2VyU2V0dGluZ3NSZXF1ZXN0In4KH0dldFBvc2VpZG9uVXNlclNldHRpbmdzUmVzcG9uc2USHgoWZGVmYXVsdF9lbnZpcm9ubWVudF9pZBgBIAEoCRI1CgxwaW5uZWRfb3JkZXIYAyADKAsyHy5wdWJsaWNfYXBpLlBvc2VpZG9uUGlubmVkRW50cnlKBAgCEAMihQEKIEdldFJlbW90ZUFnZW50Q2hhdEhpc3RvcnlSZXF1ZXN0EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCRIiChpsYXN0X3Byb2Nlc3NlZF9zZXF1ZW5jZV9pZBgCIAEoDRIWCglwZWVrX29ubHkYAyABKAhIAIgBAUIMCgpfcGVla19vbmx5ItEBCiFHZXRSZW1vdGVBZ2VudENoYXRIaXN0b3J5UmVzcG9uc2USNQoMY2hhdF9oaXN0b3J5GAIgAygLMh8ucHVibGljX2FwaS5SZW1vdGVBZ2VudEV4Y2hhbmdlEhwKD3Nlc3Npb25fc3VtbWFyeRgDIAEoCUgAiAEBEjIKDHJlbW90ZV9hZ2VudBgEIAEoCzIXLnB1YmxpY19hcGkuUmVtb3RlQWdlbnRIAYgBAUISChBfc2Vzc2lvbl9zdW1tYXJ5Qg8KDV9yZW1vdGVfYWdlbnQihwEKIkdldFJlbW90ZUFnZW50SGlzdG9yeVN0cmVhbVJlcXVlc3QSFwoPcmVtb3RlX2FnZW50X2lkGAEgASgJEiIKGmxhc3RfcHJvY2Vzc2VkX3NlcXVlbmNlX2lkGAIgASgNEhYKCXBlZWtfb25seRgDIAEoCEgAiAEBQgwKCl9wZWVrX29ubHkiVgojR2V0UmVtb3RlQWdlbnRIaXN0b3J5U3RyZWFtUmVzcG9uc2USLwoHdXBkYXRlcxgBIAMoCzIeLnB1YmxpY19hcGkuQWdlbnRIaXN0b3J5VXBkYXRlIuEBChpHZXRTZXNzaW9uQW5hbHl0aWNzUmVxdWVzdBI2CgpkYXRlX3JhbmdlGAEgASgLMiIucHVibGljX2FwaS5Db3N0QW5hbHl0aWNzRGF0ZVJhbmdlEjQKB2ZpbHRlcnMYAiABKAsyIy5wdWJsaWNfYXBpLk91dGNvbWVBbmFseXRpY3NGaWx0ZXJzEhwKFGluY2x1ZGVfY29zdF9tZXRyaWNzGAMgASgIEhEKCXBhZ2Vfc2l6ZRgEIAEoDRISCgpwYWdlX3Rva2VuGAUgASgJEhAKCGFnZW50X2lkGAYgASgJIqgBChtHZXRTZXNzaW9uQW5hbHl0aWNzUmVzcG9uc2USMwoIc2Vzc2lvbnMYASADKAsyIS5wdWJsaWNfYXBpLk91dGNvbWVTZXNzaW9uU3VtbWFyeRI7CgxvYnNlcnZhdGlvbnMYAiADKAsyJS5wdWJsaWNfYXBpLk91dGNvbWVTZXNzaW9uT2JzZXJ2YXRpb24SFwoPbmV4dF9wYWdlX3Rva2VuGAMgASgJIioKFkdldFNlc3Npb25Vc2FnZVJlcXVlc3QSEAoIYWdlbnRfaWQYASABKAkijwEKF0dldFNlc3Npb25Vc2FnZVJlc3BvbnNlEjcKFXVzYWdlX2N1cnJlbnRfc2Vzc2lvbhgBIAEoCzIYLnB1YmxpY19hcGkuU2Vzc2lvblVzYWdlEjsKGXVzYWdlX3dpdGhfY2hpbGRfc2Vzc2lvbnMYAiABKAsyGC5wdWJsaWNfYXBpLlNlc3Npb25Vc2FnZSIeChxHZXRTdWJzY3JpcHRpb25CYW5uZXJSZXF1ZXN0Ik4KHUdldFN1YnNjcmlwdGlvbkJhbm5lclJlc3BvbnNlEi0KBmJhbm5lchgBIAEoCzIdLnB1YmxpY19hcGkuQmFubmVySW5mb3JtYXRpb24iHAoaR2V0U3Vic2NyaXB0aW9uSW5mb1JlcXVlc3QisQIKG0dldFN1YnNjcmlwdGlvbkluZm9SZXNwb25zZRI8CgplbnRlcnByaXNlGAEgASgLMiIucHVibGljX2FwaS5FbnRlcnByaXNlU3Vic2NyaXB0aW9uQgIYAUgAEkEKE2FjdGl2ZV9zdWJzY3JpcHRpb24YAiABKAsyHi5wdWJsaWNfYXBpLkFjdGl2ZVN1YnNjcmlwdGlvbkICGAFIABJFChVpbmFjdGl2ZV9zdWJzY3JpcHRpb24YAyABKAsyIC5wdWJsaWNfYXBpLkluYWN0aXZlU3Vic2NyaXB0aW9uQgIYAUgAEjoKE2ZlYXR1cmVfZ2F0aW5nX2luZm8YBCABKAsyHS5wdWJsaWNfYXBpLkZlYXR1cmVHYXRpbmdJbmZvQg4KDHN1YnNjcmlwdGlvbiJaChZHZXRUZW5hbnRTZWNyZXRSZXF1ZXN0EgwKBG5hbWUYASABKAkSHwoOaW5jbHVkZV92YWx1ZXMYAiABKAhCAhgBSACIAQFCEQoPX2luY2x1ZGVfdmFsdWVzIkMKF0dldFRlbmFudFNlY3JldFJlc3BvbnNlEigKBnNlY3JldBgBIAEoCzIYLnB1YmxpY19hcGkuVGVuYW50U2VjcmV0IigKF0dldFRlbmFudFNlY3JldHNSZXF1ZXN0Eg0KBW5hbWVzGAEgAygJIkUKGEdldFRlbmFudFNlY3JldHNSZXNwb25zZRIpCgdzZWNyZXRzGAEgAygLMhgucHVibGljX2FwaS5UZW5hbnRTZWNyZXQiIQofR2V0VGVuYW50VG9vbFBlcm1pc3Npb25zUmVxdWVzdCJqCiBHZXRUZW5hbnRUb29sUGVybWlzc2lvbnNSZXNwb25zZRJGChl0b29sX3Blcm1pc3Npb25zX3NldHRpbmdzGAEgASgLMiMucHVibGljX2FwaS5Ub29sUGVybWlzc2lvbnNTZXR0aW5ncyJvChtHZXRUcmlnZ2VyRXhlY3V0aW9uc1JlcXVlc3QSEgoKdHJpZ2dlcl9pZBgBIAEoCRISCgVsaW1pdBgCIAEoDUgAiAEBEhMKBm9mZnNldBgDIAEoDUgBiAEBQggKBl9saW1pdEIJCgdfb2Zmc2V0ImUKHEdldFRyaWdnZXJFeGVjdXRpb25zUmVzcG9uc2USMAoKZXhlY3V0aW9ucxgBIAMoCzIcLnB1YmxpY19hcGkuVHJpZ2dlckV4ZWN1dGlvbhITCgt0b3RhbF9jb3VudBgCIAEoDSKTAQoUR2V0VXNlclNlY3JldFJlcXVlc3QSDAoEbmFtZRgBIAEoCRImCgVzY29wZRgCIAEoDjIXLnB1YmxpY19hcGkuU2VjcmV0U2NvcGUSHwoOaW5jbHVkZV92YWx1ZXMYAyABKAhCAhgBSACIAQESEQoJc2VjcmV0X2lkGAQgASgJQhEKD19pbmNsdWRlX3ZhbHVlcyI/ChVHZXRVc2VyU2VjcmV0UmVzcG9uc2USJgoGc2VjcmV0GAEgASgLMhYucHVibGljX2FwaS5Vc2VyU2VjcmV0Ik4KFUdldFVzZXJTZWNyZXRzUmVxdWVzdBINCgVuYW1lcxgBIAMoCRImCgVzY29wZRgCIAEoDjIXLnB1YmxpY19hcGkuU2VjcmV0U2NvcGUiQQoWR2V0VXNlclNlY3JldHNSZXNwb25zZRInCgdzZWNyZXRzGAEgAygLMhYucHVibGljX2FwaS5Vc2VyU2VjcmV0IkQKD0dpdERpZmZGaWxlSW5mbxIZChFjb250ZW50X2Jsb2JfbmFtZRgBIAEoCRIWCg5maWxlX2Jsb2JfbmFtZRgCIAEoCSKXAQoOR2l0SHViQ2hlY2tSdW4SCgoCaWQYASABKAMSDAoEbmFtZRgCIAEoCRIOCgZzdGF0dXMYAyABKAkSEgoKY29uY2x1c2lvbhgEIAEoCRISCgpzdGFydGVkX2F0GAUgASgJEhQKDGNvbXBsZXRlZF9hdBgGIAEoCRILCgN1cmwYByABKAkSEAoIaHRtbF91cmwYCCABKAkidgoQR2l0SHViQ2hlY2tTdWl0ZRIQCghhcHBfbmFtZRgBIAEoCRISCgpjb25jbHVzaW9uGAIgASgJEhIKCmNyZWF0ZWRfYXQYAyABKAkSEAoIaHRtbF91cmwYBCABKAkSFgoOY2hlY2tfcnVuc191cmwYBSABKAki3wIKDEdpdEh1YkVudGl0eRIKCgJpZBgBIAEoCRIqCgR0eXBlGAIgASgOMhwucHVibGljX2FwaS5HaXRIdWJFbnRpdHlUeXBlEjYKCnJlcG9zaXRvcnkYAyABKAsyIi5wdWJsaWNfYXBpLkdpdEh1YkVudGl0eVJlcG9zaXRvcnkSEQoJdGltZXN0YW1wGAQgASgJEj4KDHB1bGxfcmVxdWVzdBgFIAEoCzIjLnB1YmxpY19hcGkuR2l0SHViUHVsbFJlcXVlc3RFbnRpdHlIAIgBARI+Cgx3b3JrZmxvd19ydW4YBiABKAsyIy5wdWJsaWNfYXBpLkdpdEh1YldvcmtmbG93UnVuRW50aXR5SAGIAQESGQoMaXNfZGlzbWlzc2VkGAcgASgISAKIAQFCDwoNX3B1bGxfcmVxdWVzdEIPCg1fd29ya2Zsb3dfcnVuQg8KDV9pc19kaXNtaXNzZWQigwEKFkdpdEh1YkVudGl0eVJlcG9zaXRvcnkSDQoFb3duZXIYASABKAkSDAoEbmFtZRgCIAEoCRIRCglmdWxsX25hbWUYAyABKAkSEAoIaHRtbF91cmwYBCABKAkSFgoOZGVmYXVsdF9icmFuY2gYBSABKAkSDwoHcHJpdmF0ZRgGIAEoCCJTChBHaXRIdWJFbnRpdHlVc2VyEg0KBWxvZ2luGAEgASgJEhIKCmF2YXRhcl91cmwYAiABKAkSEAoIaHRtbF91cmwYAyABKAkSCgoCaWQYBCABKAMisgEKEkdpdEh1Yklzc3VlQ29tbWVudBIKCgJpZBgBIAEoAxIsCgZhdXRob3IYAiABKAsyHC5wdWJsaWNfYXBpLkdpdEh1YkVudGl0eVVzZXISDAoEYm9keRgDIAEoCRISCgpjcmVhdGVkX2F0GAQgASgJEhIKCnVwZGF0ZWRfYXQYBSABKAkSEAoIaHRtbF91cmwYBiABKAkSGgoSYXV0aG9yX2Fzc29jaWF0aW9uGAcgASgJIsAIChdHaXRIdWJQdWxsUmVxdWVzdEVudGl0eRIOCgZudW1iZXIYASABKAUSDQoFdGl0bGUYAiABKAkSDAoEYm9keRgDIAEoCRINCgVzdGF0ZRgEIAEoCRIQCghodG1sX3VybBgFIAEoCRISCgpjcmVhdGVkX2F0GAYgASgJEhIKCnVwZGF0ZWRfYXQYByABKAkSFgoJbWVyZ2VkX2F0GAggASgJSACIAQESFgoJY2xvc2VkX2F0GAkgASgJSAGIAQESKgoEdXNlchgKIAEoCzIcLnB1YmxpY19hcGkuR2l0SHViRW50aXR5VXNlchIvCglhc3NpZ25lZXMYCyADKAsyHC5wdWJsaWNfYXBpLkdpdEh1YkVudGl0eVVzZXISOQoTcmVxdWVzdGVkX3Jldmlld2VycxgMIAMoCzIcLnB1YmxpY19hcGkuR2l0SHViRW50aXR5VXNlchIQCghoZWFkX3JlZhgNIAEoCRIQCghiYXNlX3JlZhgOIAEoCRIQCghoZWFkX3NoYRgPIAEoCRIQCghiYXNlX3NoYRgQIAEoCRIOCgZtZXJnZWQYESABKAgSDQoFZHJhZnQYEiABKAgSDgoGbGFiZWxzGBMgAygJEhAKCGNvbW1lbnRzGBQgASgFEg8KB2NvbW1pdHMYFSABKAUSEQoJYWRkaXRpb25zGBYgASgFEhEKCWRlbGV0aW9ucxgXIAEoBRIVCg1jaGFuZ2VkX2ZpbGVzGBggASgFEhYKCW1lcmdlYWJsZRgZIAEoCEgCiAEBEhcKD21lcmdlYWJsZV9zdGF0ZRgaIAEoCRIyCgxjaGVja19zdWl0ZXMYGyADKAsyHC5wdWJsaWNfYXBpLkdpdEh1YkNoZWNrU3VpdGUSKgoIc3RhdHVzZXMYHCADKAsyGC5wdWJsaWNfYXBpLkdpdEh1YlN0YXR1cxI4Cg9yZXZpZXdfY29tbWVudHMYHSADKAsyHy5wdWJsaWNfYXBpLkdpdEh1YlJldmlld0NvbW1lbnQSNgoOaXNzdWVfY29tbWVudHMYHiADKAsyHi5wdWJsaWNfYXBpLkdpdEh1Yklzc3VlQ29tbWVudBIuCgpjaGVja19ydW5zGB8gAygLMhoucHVibGljX2FwaS5HaXRIdWJDaGVja1J1bhI+Cg9yZXF1aXJlZF9jaGVja3MYICABKAsyIC5wdWJsaWNfYXBpLkdpdEh1YlJlcXVpcmVkQ2hlY2tzSAOIAQESNAoNd29ya2Zsb3dfcnVucxghIAMoCzIdLnB1YmxpY19hcGkuR2l0SHViV29ya2Zsb3dSdW4SKQoHcmV2aWV3cxgiIAMoCzIYLnB1YmxpY19hcGkuR2l0SHViUmV2aWV3QgwKCl9tZXJnZWRfYXRCDAoKX2Nsb3NlZF9hdEIMCgpfbWVyZ2VhYmxlQhIKEF9yZXF1aXJlZF9jaGVja3MisQMKIkdpdEh1YlB1bGxSZXF1ZXN0VHJpZ2dlckNvbmRpdGlvbnMSFwoKcmVwb3NpdG9yeRgBIAEoCUgAiAEBEhMKBmF1dGhvchgCIAEoCUgBiAEBEhUKCGFzc2lnbmVlGAMgASgJSAKIAQESFQoIcmV2aWV3ZXIYBCABKAlIA4gBARIOCgZsYWJlbHMYBSADKAkSGgoOYWN0aXZpdHlfdHlwZXMYBiADKAlCAhgBEhIKBWRyYWZ0GAcgASgISASIAQESGwoOdGl0bGVfY29udGFpbnMYCCABKAlIBYgBARIYCgtiYXNlX2JyYW5jaBgJIAEoCUgGiAEBEhgKC2hlYWRfYnJhbmNoGAogASgJSAeIAQESEgoFZXZlbnQYCyABKAlICIgBARIPCgdhY3Rpb25zGAwgAygJQg0KC19yZXBvc2l0b3J5QgkKB19hdXRob3JCCwoJX2Fzc2lnbmVlQgsKCV9yZXZpZXdlckIICgZfZHJhZnRCEQoPX3RpdGxlX2NvbnRhaW5zQg4KDF9iYXNlX2JyYW5jaEIOCgxfaGVhZF9icmFuY2hCCAoGX2V2ZW50IrYBCg9HaXRIdWJSZWFjdGlvbnMSEAoIcGx1c19vbmUYASABKAUSEQoJbWludXNfb25lGAIgASgFEhAKCGNvbmZ1c2VkGAMgASgFEgwKBGV5ZXMYBCABKAUSDQoFaGVhcnQYBSABKAUSDgoGaG9vcmF5GAYgASgFEg0KBWxhdWdoGAcgASgFEg4KBnJvY2tldBgIIAEoBRITCgt0b3RhbF9jb3VudBgJIAEoBRILCgN1cmwYCiABKAkieAoUR2l0SHViUmVxdWlyZWRDaGVja3MSGQoRcmVxdWlyZWRfY29udGV4dHMYASADKAkSGQoRZW5mb3JjZW1lbnRfbGV2ZWwYAiABKAkSEwoLc3RyaWN0X21vZGUYAyABKAgSFQoNdGFyZ2V0X2JyYW5jaBgEIAEoCSKgAQoMR2l0SHViUmV2aWV3EgoKAmlkGAEgASgDEiwKBmF1dGhvchgCIAEoCzIcLnB1YmxpY19hcGkuR2l0SHViRW50aXR5VXNlchIMCgRib2R5GAMgASgJEg0KBXN0YXRlGAQgASgJEhQKDHN1Ym1pdHRlZF9hdBgFIAEoCRIRCgljb21taXRfaWQYBiABKAkSEAoIaHRtbF91cmwYByABKAkimQUKE0dpdEh1YlJldmlld0NvbW1lbnQSLAoGYXV0aG9yGAEgASgLMhwucHVibGljX2FwaS5HaXRIdWJFbnRpdHlVc2VyEgwKBGJvZHkYAiABKAkSEgoKY3JlYXRlZF9hdBgDIAEoCRIQCghodG1sX3VybBgEIAEoCRIYCgtsaW5lX251bWJlchgFIAEoBUgAiAEBEhEKBHBhdGgYBiABKAlIAYgBARIWCglkaWZmX2h1bmsYByABKAlIAogBARIVCghwb3NpdGlvbhgIIAEoBUgDiAEBEhYKCWNvbW1pdF9pZBgJIAEoCUgEiAEBEhcKCnN0YXJ0X2xpbmUYCiABKAVIBYgBARIRCgRzaWRlGAsgASgJSAaIAQESCgoCaWQYDCABKAMSEgoKdXBkYXRlZF9hdBgNIAEoCRIuCglyZWFjdGlvbnMYDiABKAsyGy5wdWJsaWNfYXBpLkdpdEh1YlJlYWN0aW9ucxIeChZwdWxsX3JlcXVlc3RfcmV2aWV3X2lkGA8gASgDEhsKDmluX3JlcGx5X3RvX2lkGBAgASgDSAeIAQESCwoDdXJsGBEgASgJEhoKEm9yaWdpbmFsX2NvbW1pdF9pZBgSIAEoCRIaCg1vcmlnaW5hbF9saW5lGBMgASgFSAiIAQESGQoRb3JpZ2luYWxfcG9zaXRpb24YFCABKAUSFAoMc3ViamVjdF90eXBlGBUgASgJQg4KDF9saW5lX251bWJlckIHCgVfcGF0aEIMCgpfZGlmZl9odW5rQgsKCV9wb3NpdGlvbkIMCgpfY29tbWl0X2lkQg0KC19zdGFydF9saW5lQgcKBV9zaWRlQhEKD19pbl9yZXBseV90b19pZEIQCg5fb3JpZ2luYWxfbGluZSKTAQoMR2l0SHViU3RhdHVzEg8KB2NvbnRleHQYASABKAkSDQoFc3RhdGUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSFwoKdGFyZ2V0X3VybBgEIAEoCUgAiAEBEhIKCmNyZWF0ZWRfYXQYBSABKAkSEgoKdXBkYXRlZF9hdBgGIAEoCUINCgtfdGFyZ2V0X3VybCIpChRHaXRIdWJUb29sRXh0cmFJbnB1dBIRCglhcGlfdG9rZW4YASABKAkihAIKF0dpdEh1YlRyaWdnZXJDb25kaXRpb25zEjEKC2VudGl0eV90eXBlGAEgASgOMhwucHVibGljX2FwaS5HaXRIdWJFbnRpdHlUeXBlEkkKDHB1bGxfcmVxdWVzdBgCIAEoCzIuLnB1YmxpY19hcGkuR2l0SHViUHVsbFJlcXVlc3RUcmlnZ2VyQ29uZGl0aW9uc0gAiAEBEkkKDHdvcmtmbG93X3J1bhgDIAEoCzIuLnB1YmxpY19hcGkuR2l0SHViV29ya2Zsb3dSdW5UcmlnZ2VyQ29uZGl0aW9uc0gBiAEBQg8KDV9wdWxsX3JlcXVlc3RCDwoNX3dvcmtmbG93X3J1biK+AQoRR2l0SHViV29ya2Zsb3dSdW4SCgoCaWQYASABKAMSDAoEbmFtZRgCIAEoCRIMCgRwYXRoGAMgASgJEg4KBnN0YXR1cxgEIAEoCRISCgpjb25jbHVzaW9uGAUgASgJEhIKCmNyZWF0ZWRfYXQYBiABKAkSEgoKdXBkYXRlZF9hdBgHIAEoCRILCgN1cmwYCCABKAkSEAoIaHRtbF91cmwYCSABKAkSFgoOY2hlY2tfc3VpdGVfaWQYCiABKAMi6gMKF0dpdEh1YldvcmtmbG93UnVuRW50aXR5EgoKAmlkGAEgASgDEgwKBG5hbWUYAiABKAkSFQoNZGlzcGxheV90aXRsZRgDIAEoCRISCgpydW5fbnVtYmVyGAQgASgFEg0KBWV2ZW50GAUgASgJEg4KBnN0YXR1cxgGIAEoCRIXCgpjb25jbHVzaW9uGAcgASgJSACIAQESEwoLd29ya2Zsb3dfaWQYCCABKAkSFQoNd29ya2Zsb3dfbmFtZRgJIAEoCRIQCghodG1sX3VybBgKIAEoCRISCgpjcmVhdGVkX2F0GAsgASgJEhIKCnVwZGF0ZWRfYXQYDCABKAkSGwoOcnVuX3N0YXJ0ZWRfYXQYDSABKAlIAYgBARIrCgVhY3RvchgOIAEoCzIcLnB1YmxpY19hcGkuR2l0SHViRW50aXR5VXNlchI2ChB0cmlnZ2VyaW5nX2FjdG9yGA8gASgLMhwucHVibGljX2FwaS5HaXRIdWJFbnRpdHlVc2VyEhMKC2hlYWRfYnJhbmNoGBAgASgJEhAKCGhlYWRfc2hhGBEgASgJEgwKBHBhdGgYEiABKAkSEwoLcnVuX2F0dGVtcHQYEyABKAVCDQoLX2NvbmNsdXNpb25CEQoPX3J1bl9zdGFydGVkX2F0IucCCiJHaXRIdWJXb3JrZmxvd1J1blRyaWdnZXJDb25kaXRpb25zEhcKCnJlcG9zaXRvcnkYASABKAlIAIgBARISCgVhY3RvchgCIAEoCUgBiAEBEh0KEHRyaWdnZXJpbmdfYWN0b3IYAyABKAlIAogBARIRCgl3b3JrZmxvd3MYBCADKAkSEgoFZXZlbnQYBSABKAlIA4gBARITCgZzdGF0dXMYBiABKAlIBIgBARIXCgpjb25jbHVzaW9uGAcgASgJSAWIAQESEwoGYnJhbmNoGAggASgJSAaIAQESGwoOdGl0bGVfY29udGFpbnMYCSABKAlIB4gBAUINCgtfcmVwb3NpdG9yeUIICgZfYWN0b3JCEwoRX3RyaWdnZXJpbmdfYWN0b3JCCAoGX2V2ZW50QgkKB19zdGF0dXNCDQoLX2NvbmNsdXNpb25CCQoHX2JyYW5jaEIRCg9fdGl0bGVfY29udGFpbnMiXwoMR2l0aHViQnJhbmNoEgwKBG5hbWUYASABKAkSLgoGY29tbWl0GAIgASgLMh4ucHVibGljX2FwaS5HaXRodWJCcmFuY2hDb21taXQSEQoJcHJvdGVjdGVkGAMgASgIIi4KEkdpdGh1YkJyYW5jaENvbW1pdBILCgNzaGEYASABKAkSCwoDdXJsGAIgASgJIlgKD0dpdGh1YkNvbW1pdFJlZhIWCg5yZXBvc2l0b3J5X3VybBgBIAEoCRIPCgdnaXRfcmVmGAIgASgJEhIKBXBhdGNoGAMgASgJSACIAQFCCAoGX3BhdGNoIpwDChFHaXRodWJQdWxsUmVxdWVzdBIOCgZudW1iZXIYASABKAUSDQoFdGl0bGUYAiABKAkSDAoEYm9keRgDIAEoCRINCgVzdGF0ZRgEIAEoCRIQCghodG1sX3VybBgFIAEoCRISCgpjcmVhdGVkX2F0GAYgASgJEhIKCnVwZGF0ZWRfYXQYByABKAkSEQoJbWVyZ2VkX2F0GAggASgJEhEKCWNsb3NlZF9hdBgJIAEoCRIkCgR1c2VyGAogASgLMhYucHVibGljX2FwaS5HaXRodWJVc2VyEhAKCGhlYWRfcmVmGAsgASgJEhAKCGJhc2VfcmVmGAwgASgJEhAKCGhlYWRfc2hhGA0gASgJEhAKCGJhc2Vfc2hhGA4gASgJEg4KBm1lcmdlZBgPIAEoCBINCgVkcmFmdBgQIAEoCBIQCghjb21tZW50cxgRIAEoBRIPCgdjb21taXRzGBIgASgFEhEKCWFkZGl0aW9ucxgTIAEoBRIRCglkZWxldGlvbnMYFCABKAUSFQoNY2hhbmdlZF9maWxlcxgVIAEoBSKPAQoaR2l0aHViUHVsbFJlcXVlc3RGaWxlRW50cnkSEAoIZmlsZW5hbWUYASABKAkSDgoGc3RhdHVzGAIgASgJEhEKCWFkZGl0aW9ucxgDIAEoBRIRCglkZWxldGlvbnMYBCABKAUSCwoDc2hhGAUgASgJEhIKBXBhdGNoGAYgASgJSACIAQFCCAoGX3BhdGNoIiUKCUdpdGh1YlJlZhILCgN1cmwYASABKAkSCwoDcmVmGAIgASgJIs0BCgpHaXRodWJSZXBvEg0KBW93bmVyGAEgASgJEgwKBG5hbWUYAiABKAkSFQoIaHRtbF91cmwYAyABKAlIAIgBARIXCgpjcmVhdGVkX2F0GAQgASgJSAGIAQESFwoKdXBkYXRlZF9hdBgFIAEoCUgCiAEBEhsKDmRlZmF1bHRfYnJhbmNoGAYgASgJSAOIAQFCCwoJX2h0bWxfdXJsQg0KC19jcmVhdGVkX2F0Qg0KC191cGRhdGVkX2F0QhEKD19kZWZhdWx0X2JyYW5jaCJBCgpHaXRodWJVc2VyEg0KBWxvZ2luGAEgASgJEhIKCmF2YXRhcl91cmwYAiABKAkSEAoIaHRtbF91cmwYAyABKAkiFgoUSW5hY3RpdmVTdWJzY3JpcHRpb24iTQoaSW5jb3Jwb3JhdGVkRXh0ZXJuYWxTb3VyY2USEwoLc291cmNlX25hbWUYASABKAkSEQoEbGluaxgCIAEoCUgAiAEBQgcKBV9saW5rIj0KFUluZGV4ZWRDb21taXRGaWxlSW5mbxIRCglmaWxlX3BhdGgYASABKAkSEQoJYmxvYl9uYW1lGAIgASgJIjwKEUluZGV4ZWRDb21taXRJbmZvEhIKCmNvbW1pdF9zaGEYASABKAkSEwoLY29tbWl0X3RpbWUYAiABKAkiYgoYSW5zZXJ0Q2hhdEhpc3RvcnlSZXF1ZXN0EhcKD2NvbnZlcnNhdGlvbl9pZBgBIAEoCRItCglleGNoYW5nZXMYAiADKAsyGi5jaGF0LkV4Y2hhbmdlV2l0aE1ldGFkYXRhIsEBChlJbnNlcnRDaGF0SGlzdG9yeVJlc3BvbnNlEjwKB2VudHJpZXMYASADKAsyKy5wdWJsaWNfYXBpLkluc2VydENoYXRIaXN0b3J5UmVzcG9uc2UuRW50cnkaZgoFRW50cnkSDQoFaW5kZXgYASABKAMSIgoGc3RhdHVzGAIgASgLMhIuZ29vZ2xlLnJwYy5TdGF0dXMSGQoMY29tcG9zaXRlX2lkGAMgASgJSACIAQFCDwoNX2NvbXBvc2l0ZV9pZCKABgoSSW5zdHJ1Y3Rpb25SZXF1ZXN0EhIKBW1vZGVsGAEgASgJSACIAQESDgoGcHJlZml4GAIgASgJEhUKDXNlbGVjdGVkX3RleHQYAyABKAkSDgoGc3VmZml4GAQgASgJEhEKBHBhdGgYBSABKAlIAYgBARITCgtpbnN0cnVjdGlvbhgGIAEoCRIRCgRsYW5nGAcgASgJSAKIAQESFgoJYmxvYl9uYW1lGAggASgJSAOIAQESGQoMcHJlZml4X2JlZ2luGAkgASgFSASIAQESFwoKc3VmZml4X2VuZBgKIAEoBUgFiAEBEhgKC3NlcXVlbmNlX2lkGAsgASgNSAaIAQESIAoFYmxvYnMYDCABKAsyES5wdWJsaWNfYXBpLkJsb2JzEioKDGNoYXRfaGlzdG9yeRgNIAMoCzIULnB1YmxpY19hcGkuRXhjaGFuZ2USFwoKY29kZV9ibG9jaxgOIAEoCUgHiAEBEh0KEHRhcmdldF9maWxlX3BhdGgYDyABKAlICIgBARIgChN0YXJnZXRfZmlsZV9jb250ZW50GBAgASgJSAmIAQESLQogY29udGV4dF9jb2RlX2V4Y2hhbmdlX3JlcXVlc3RfaWQYESABKAlICogBARIcCg91c2VyX2d1aWRlbGluZXMYEiABKAlIC4gBARIhChR3b3Jrc3BhY2VfZ3VpZGVsaW5lcxgTIAEoCUgMiAEBQggKBl9tb2RlbEIHCgVfcGF0aEIHCgVfbGFuZ0IMCgpfYmxvYl9uYW1lQg8KDV9wcmVmaXhfYmVnaW5CDQoLX3N1ZmZpeF9lbmRCDgoMX3NlcXVlbmNlX2lkQg0KC19jb2RlX2Jsb2NrQhMKEV90YXJnZXRfZmlsZV9wYXRoQhYKFF90YXJnZXRfZmlsZV9jb250ZW50QiMKIV9jb250ZXh0X2NvZGVfZXhjaGFuZ2VfcmVxdWVzdF9pZEISChBfdXNlcl9ndWlkZWxpbmVzQhcKFV93b3Jrc3BhY2VfZ3VpZGVsaW5lcyKLAwoTSW5zdHJ1Y3Rpb25SZXNwb25zZRIMCgR0ZXh0GAEgASgJEhoKEnVua25vd25fYmxvYl9uYW1lcxgCIAMoCRIcChRjaGVja3BvaW50X25vdF9mb3VuZBgDIAEoCBIdChByZXBsYWNlbWVudF90ZXh0GAQgASgJSACIAQESIwoWcmVwbGFjZW1lbnRfc3RhcnRfbGluZRgFIAEoDUgBiAEBEiEKFHJlcGxhY2VtZW50X2VuZF9saW5lGAYgASgNSAKIAQESIQoUcmVwbGFjZW1lbnRfb2xkX3RleHQYByABKAlIA4gBARIkChdyZXBsYWNlbWVudF9zZXF1ZW5jZV9pZBgIIAEoDUgEiAEBQhMKEV9yZXBsYWNlbWVudF90ZXh0QhkKF19yZXBsYWNlbWVudF9zdGFydF9saW5lQhcKFV9yZXBsYWNlbWVudF9lbmRfbGluZUIXChVfcmVwbGFjZW1lbnRfb2xkX3RleHRCGgoYX3JlcGxhY2VtZW50X3NlcXVlbmNlX2lkIjYKG0ludGVycnVwdFJlbW90ZUFnZW50UmVxdWVzdBIXCg9yZW1vdGVfYWdlbnRfaWQYASABKAkiTQocSW50ZXJydXB0UmVtb3RlQWdlbnRSZXNwb25zZRItCgZzdGF0dXMYASABKA4yHS5wdWJsaWNfYXBpLlJlbW90ZUFnZW50U3RhdHVzIh8KHUlzVXNlckdpdGh1YkNvbmZpZ3VyZWRSZXF1ZXN0IocBCh5Jc1VzZXJHaXRodWJDb25maWd1cmVkUmVzcG9uc2USFQoNaXNfY29uZmlndXJlZBgBIAEoCBIRCglvYXV0aF91cmwYAiABKAkSIwobY29uZmlndXJlZF9idXRfbmVlZHNfdXBkYXRlGAMgASgIEhYKDnVwZGF0ZWRfc2NvcGVzGAQgASgJIioKDEtleVZhbHVlUGFpchILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAkiQQoITGFuZ3VhZ2USDAoEbmFtZRgBIAEoCRITCgt2c2NvZGVfbmFtZRgCIAEoCRISCgpleHRlbnNpb25zGAMgAygJIsIBCgxMaW5lYXJFbnRpdHkSCgoCaWQYASABKAkSKgoEdHlwZRgCIAEoDjIcLnB1YmxpY19hcGkuTGluZWFyRW50aXR5VHlwZRIRCgl0aW1lc3RhbXAYAyABKAkSMQoFaXNzdWUYBCABKAsyHS5wdWJsaWNfYXBpLkxpbmVhcklzc3VlRW50aXR5SACIAQESGQoMaXNfZGlzbWlzc2VkGAUgASgISAGIAQFCCAoGX2lzc3VlQg8KDV9pc19kaXNtaXNzZWQidQoRTGluZWFyRW50aXR5TGFiZWwSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIYCgtkZXNjcmlwdGlvbhgDIAEoCUgAiAEBEhIKBWNvbG9yGAQgASgJSAGIAQFCDgoMX2Rlc2NyaXB0aW9uQggKBl9jb2xvciKCAQoTTGluZWFyRW50aXR5UHJvamVjdBIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhgKC2Rlc2NyaXB0aW9uGAMgASgJSACIAQESDQoFc3RhdGUYBCABKAkSEAoDdXJsGAUgASgJSAGIAQFCDgoMX2Rlc2NyaXB0aW9uQgYKBF91cmwiYwoQTGluZWFyRW50aXR5VGVhbRIKCgJpZBgBIAEoCRILCgNrZXkYAiABKAkSDAoEbmFtZRgDIAEoCRIYCgtkZXNjcmlwdGlvbhgEIAEoCUgAiAEBQg4KDF9kZXNjcmlwdGlvbiJ5ChBMaW5lYXJFbnRpdHlVc2VyEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSFAoMZGlzcGxheV9uYW1lGAMgASgJEg0KBWVtYWlsGAQgASgJEhcKCmF2YXRhcl91cmwYBSABKAlIAIgBAUINCgtfYXZhdGFyX3VybCKLAQoZTGluZWFyRW50aXR5V29ya2Zsb3dTdGF0ZRIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEgwKBHR5cGUYAyABKAkSGAoLZGVzY3JpcHRpb24YBCABKAlIAIgBARISCgVjb2xvchgFIAEoCUgBiAEBQg4KDF9kZXNjcmlwdGlvbkIICgZfY29sb3Ii7wUKEUxpbmVhcklzc3VlRW50aXR5EgoKAmlkGAEgASgJEhIKCmlkZW50aWZpZXIYAiABKAkSDQoFdGl0bGUYAyABKAkSGAoLZGVzY3JpcHRpb24YBCABKAlIAIgBARIQCghwcmlvcml0eRgFIAEoBRILCgN1cmwYBiABKAkSEgoKY3JlYXRlZF9hdBgHIAEoCRISCgp1cGRhdGVkX2F0GAggASgJEhcKCnN0YXJ0ZWRfYXQYCSABKAlIAYgBARIZCgxjb21wbGV0ZWRfYXQYCiABKAlIAogBARIYCgtjYW5jZWxlZF9hdBgLIAEoCUgDiAEBEhUKCGR1ZV9kYXRlGAwgASgJSASIAQESFQoIZXN0aW1hdGUYDSABKAFIBYgBARItCgdjcmVhdG9yGA4gASgLMhwucHVibGljX2FwaS5MaW5lYXJFbnRpdHlVc2VyEjMKCGFzc2lnbmVlGA8gASgLMhwucHVibGljX2FwaS5MaW5lYXJFbnRpdHlVc2VySAaIAQESKgoEdGVhbRgQIAEoCzIcLnB1YmxpY19hcGkuTGluZWFyRW50aXR5VGVhbRI0CgVzdGF0ZRgRIAEoCzIlLnB1YmxpY19hcGkuTGluZWFyRW50aXR5V29ya2Zsb3dTdGF0ZRI1Cgdwcm9qZWN0GBIgASgLMh8ucHVibGljX2FwaS5MaW5lYXJFbnRpdHlQcm9qZWN0SAeIAQESLQoGbGFiZWxzGBMgAygLMh0ucHVibGljX2FwaS5MaW5lYXJFbnRpdHlMYWJlbBIVCg1jb21tZW50X2NvdW50GBQgASgFEhgKEHN1YnNjcmliZXJfY291bnQYFSABKAVCDgoMX2Rlc2NyaXB0aW9uQg0KC19zdGFydGVkX2F0Qg8KDV9jb21wbGV0ZWRfYXRCDgoMX2NhbmNlbGVkX2F0QgsKCV9kdWVfZGF0ZUILCglfZXN0aW1hdGVCCwoJX2Fzc2lnbmVlQgoKCF9wcm9qZWN0IosDChxMaW5lYXJJc3N1ZVRyaWdnZXJDb25kaXRpb25zEhEKBHRlYW0YASABKAlIAIgBARIUCgdjcmVhdG9yGAIgASgJSAGIAQESFQoIYXNzaWduZWUYAyABKAlIAogBARIOCgZzdGF0ZXMYBCADKAkSEwoLc3RhdGVfdHlwZXMYBSADKAkSEgoKcHJpb3JpdGllcxgGIAMoBRIOCgZsYWJlbHMYByADKAkSFAoHcHJvamVjdBgIIAEoCUgDiAEBEhYKDmFjdGl2aXR5X3R5cGVzGAkgAygJEhsKDnRpdGxlX2NvbnRhaW5zGAogASgJSASIAQESGQoMbWluX2VzdGltYXRlGAsgASgBSAWIAQESGQoMbWF4X2VzdGltYXRlGAwgASgBSAaIAQFCBwoFX3RlYW1CCgoIX2NyZWF0b3JCCwoJX2Fzc2lnbmVlQgoKCF9wcm9qZWN0QhEKD190aXRsZV9jb250YWluc0IPCg1fbWluX2VzdGltYXRlQg8KDV9tYXhfZXN0aW1hdGUiKQoUTGluZWFyVG9vbEV4dHJhSW5wdXQSEQoJYXBpX3Rva2VuGAEgASgJIpQBChdMaW5lYXJUcmlnZ2VyQ29uZGl0aW9ucxIxCgtlbnRpdHlfdHlwZRgBIAEoDjIcLnB1YmxpY19hcGkuTGluZWFyRW50aXR5VHlwZRI8CgVpc3N1ZRgCIAEoCzIoLnB1YmxpY19hcGkuTGluZWFySXNzdWVUcmlnZ2VyQ29uZGl0aW9uc0gAiAEBQggKBl9pc3N1ZSIeChxMaXN0QWdlbnRDYXBhYmlsaXRpZXNSZXF1ZXN0IlgKHUxpc3RBZ2VudENhcGFiaWxpdGllc1Jlc3BvbnNlEjcKEmFnZW50X2NhcGFiaWxpdGllcxgBIAMoCzIbLnB1YmxpY19hcGkuQWdlbnRDYXBhYmlsaXR5IhoKGExpc3RBZ2VudFBlcnNvbmFzUmVxdWVzdCJNChlMaXN0QWdlbnRQZXJzb25hc1Jlc3BvbnNlEjAKDmFnZW50X3BlcnNvbmFzGAEgAygLMhgucHVibGljX2FwaS5BZ2VudFBlcnNvbmEi7QIKFkxpc3RDaGF0SGlzdG9yeVJlcXVlc3QSFwoPY29udmVyc2F0aW9uX2lkGAEgASgJEjgKD3N0YXJ0X3RpbWVzdGFtcBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARI2Cg1lbmRfdGltZXN0YW1wGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgBiAEBEhsKDmV4Y2x1ZGVfc2lsZW50GAQgASgISAKIAQESEgoFbGltaXQYBSABKAVIA4gBARIuCiFleGNsdWRlX3JldHJpZWRfc3RvcHBlZF9leGNoYW5nZXMYBiABKAhIBIgBAUISChBfc3RhcnRfdGltZXN0YW1wQhAKDl9lbmRfdGltZXN0YW1wQhEKD19leGNsdWRlX3NpbGVudEIICgZfbGltaXRCJAoiX2V4Y2x1ZGVfcmV0cmllZF9zdG9wcGVkX2V4Y2hhbmdlcyI/ChdMaXN0Q2hhdEhpc3RvcnlSZXNwb25zZRIkCgxjaGF0X2hpc3RvcnkYASADKAsyDi5jaGF0LkV4Y2hhbmdlIjAKGExpc3RDb252ZXJzYXRpb25zUmVxdWVzdBIUCgx3b3Jrc3BhY2VfaWQYASABKAkiUAoZTGlzdENvbnZlcnNhdGlvbnNSZXNwb25zZRIzCg1jb252ZXJzYXRpb25zGAEgAygLMhwucHVibGljX2FwaS5Db252ZXJzYXRpb25JbmZvIiAKHkxpc3RFeHRlcm5hbFNvdXJjZVR5cGVzUmVxdWVzdCJXCh9MaXN0RXh0ZXJuYWxTb3VyY2VUeXBlc1Jlc3BvbnNlEjQKDHNvdXJjZV90eXBlcxgBIAMoDjIeLnB1YmxpY19hcGkuRXh0ZXJuYWxTb3VyY2VUeXBlImEKHUxpc3RHaXRodWJSZXBvQnJhbmNoZXNSZXF1ZXN0EiQKBHJlcG8YASABKAsyFi5wdWJsaWNfYXBpLkdpdGh1YlJlcG8SEQoEcGFnZRgCIAEoBUgAiAEBQgcKBV9wYWdlInYKHkxpc3RHaXRodWJSZXBvQnJhbmNoZXNSZXNwb25zZRIqCghicmFuY2hlcxgBIAMoCzIYLnB1YmxpY19hcGkuR2l0aHViQnJhbmNoEhUKDWhhc19uZXh0X3BhZ2UYAiABKAgSEQoJbmV4dF9wYWdlGAMgASgFIkgKKkxpc3RHaXRodWJSZXBvc0ZvckF1dGhlbnRpY2F0ZWRVc2VyUmVxdWVzdBIRCgRwYWdlGAEgASgFSACIAQFCBwoFX3BhZ2UifgorTGlzdEdpdGh1YlJlcG9zRm9yQXV0aGVudGljYXRlZFVzZXJSZXNwb25zZRIlCgVyZXBvcxgBIAMoCzIWLnB1YmxpY19hcGkuR2l0aHViUmVwbxIVCg1oYXNfbmV4dF9wYWdlGAIgASgIEhEKCW5leHRfcGFnZRgDIAEoBSJKCh1MaXN0R2l0aHViU2V0dXBTY3JpcHRzUmVxdWVzdBIpCgpnaXRodWJfcmVmGAEgASgLMhUucHVibGljX2FwaS5HaXRodWJSZWYiNgoeTGlzdEdpdGh1YlNldHVwU2NyaXB0c1Jlc3BvbnNlEhQKDHNjcmlwdF9wYXRocxgBIAMoCSKuAgobTGlzdFB1bGxSZXF1ZXN0RmlsZXNSZXF1ZXN0EhIKCnJlcG9zaXRvcnkYASABKAkSEQoJcHJfbnVtYmVyGAIgASgFEhEKBHBhZ2UYAyABKAVIAIgBARIVCghwZXJfcGFnZRgEIAEoBUgBiAEBEhoKDWluY2x1ZGVfcGF0Y2gYBSABKAhIAogBARIcCg9tYXhfcGF0Y2hfYnl0ZXMYBiABKAVIA4gBARIoChtpbmNsdWRlX3RvdGFsX2NoYW5nZWRfZmlsZXMYByABKAhIBIgBAUIHCgVfcGFnZUILCglfcGVyX3BhZ2VCEAoOX2luY2x1ZGVfcGF0Y2hCEgoQX21heF9wYXRjaF9ieXRlc0IeChxfaW5jbHVkZV90b3RhbF9jaGFuZ2VkX2ZpbGVzIscBChxMaXN0UHVsbFJlcXVlc3RGaWxlc1Jlc3BvbnNlEjUKBWZpbGVzGAEgAygLMiYucHVibGljX2FwaS5HaXRodWJQdWxsUmVxdWVzdEZpbGVFbnRyeRIQCghoYXNfbW9yZRgCIAEoCBIWCgluZXh0X3BhZ2UYAyABKAVIAIgBARIgChN0b3RhbF9jaGFuZ2VkX2ZpbGVzGAQgASgFSAGIAQFCDAoKX25leHRfcGFnZUIWChRfdG90YWxfY2hhbmdlZF9maWxlcyIZChdMaXN0UmVtb3RlQWdlbnRzUmVxdWVzdCKHAQoYTGlzdFJlbW90ZUFnZW50c1Jlc3BvbnNlEi4KDXJlbW90ZV9hZ2VudHMYASADKAsyFy5wdWJsaWNfYXBpLlJlbW90ZUFnZW50EhkKEW1heF9yZW1vdGVfYWdlbnRzGAIgASgFEiAKGG1heF9hY3RpdmVfcmVtb3RlX2FnZW50cxgDIAEoBSJ5Ch1MaXN0UmVtb3RlQWdlbnRzU3RyZWFtUmVxdWVzdBI+ChVsYXN0X3VwZGF0ZV90aW1lc3RhbXAYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQFCGAoWX2xhc3RfdXBkYXRlX3RpbWVzdGFtcCJOCh5MaXN0UmVtb3RlQWdlbnRzU3RyZWFtUmVzcG9uc2USLAoHdXBkYXRlcxgBIAMoCzIbLnB1YmxpY19hcGkuQWdlbnRMaXN0VXBkYXRlImIKFkxpc3RSZW1vdGVUb29sc1JlcXVlc3QSNwoMdG9vbF9pZF9saXN0GAEgASgLMhwucHVibGljX2FwaS5SZW1vdGVUb29sSWRMaXN0SACIAQFCDwoNX3Rvb2xfaWRfbGlzdCJUChdMaXN0UmVtb3RlVG9vbHNSZXNwb25zZRI5CgV0b29scxgBIAMoCzIqLnB1YmxpY19hcGkuTGlzdFJlbW90ZVRvb2xzUmVzcG9uc2VNZXNzYWdlIogCCh5MaXN0UmVtb3RlVG9vbHNSZXNwb25zZU1lc3NhZ2USMwoPdG9vbF9kZWZpbml0aW9uGAEgASgLMhoucHVibGljX2FwaS5Ub29sRGVmaW5pdGlvbhIwCg5yZW1vdGVfdG9vbF9pZBgCIAEoDjIYLnB1YmxpY19hcGkuUmVtb3RlVG9vbElkEj8KE2F2YWlsYWJpbGl0eV9zdGF0dXMYAyABKA4yIi5wdWJsaWNfYXBpLlRvb2xBdmFpbGFiaWxpdHlTdGF0dXMSKwoLdG9vbF9zYWZldHkYBCABKA4yFi5wdWJsaWNfYXBpLlRvb2xTYWZldHkSEQoJb2F1dGhfdXJsGAUgASgJIqUCCg9MaXN0VGFnc1JlcXVlc3QSLgoIdGFnX3R5cGUYASABKA4yHC5wdWJsaWNfYXBpLkFuYWx5dGljc1RhZ1R5cGUSNgoKZGF0ZV9yYW5nZRgCIAEoCzIiLnB1YmxpY19hcGkuQ29zdEFuYWx5dGljc0RhdGVSYW5nZRI4Cgxjb3N0X2ZpbHRlcnMYAyABKAsyIi5wdWJsaWNfYXBpLkNvc3RBbmFseXRpY3NWMkZpbHRlcnMSPAoPb3V0Y29tZV9maWx0ZXJzGAQgASgLMiMucHVibGljX2FwaS5PdXRjb21lQW5hbHl0aWNzRmlsdGVycxIWCg5pbmNsdWRlX3ZhbHVlcxgFIAEoCBIaChJtYXhfdmFsdWVzX3Blcl90YWcYBiABKA0iQQoQTGlzdFRhZ3NSZXNwb25zZRItCgR0YWdzGAEgAygLMh8ucHVibGljX2FwaS5BbmFseXRpY3NUYWdTdW1tYXJ5Ip8BChhMaXN0VGVuYW50U2VjcmV0c1JlcXVlc3QSFAoMbmFtZV9wYXR0ZXJuGAEgASgJEioKC3RhZ19maWx0ZXJzGAIgAygLMhUucHVibGljX2FwaS5UYWdGaWx0ZXISGgoOaW5jbHVkZV92YWx1ZXMYAyABKAhCAhgBEhEKCXBhZ2Vfc2l6ZRgEIAEoBRISCgpwYWdlX3Rva2VuGAUgASgJInQKGUxpc3RUZW5hbnRTZWNyZXRzUmVzcG9uc2USKQoHc2VjcmV0cxgBIAMoCzIYLnB1YmxpY19hcGkuVGVuYW50U2VjcmV0EhcKD25leHRfcGFnZV90b2tlbhgCIAEoCRITCgt0b3RhbF9jb3VudBgDIAEoBSIVChNMaXN0VHJpZ2dlcnNSZXF1ZXN0Ij0KFExpc3RUcmlnZ2Vyc1Jlc3BvbnNlEiUKCHRyaWdnZXJzGAEgAygLMhMucHVibGljX2FwaS5UcmlnZ2VyIukBChZMaXN0VXNlclNlY3JldHNSZXF1ZXN0EhQKDG5hbWVfcGF0dGVybhgBIAEoCRIqCgt0YWdfZmlsdGVycxgCIAMoCzIVLnB1YmxpY19hcGkuVGFnRmlsdGVyEhoKDmluY2x1ZGVfdmFsdWVzGAMgASgIQgIYARIRCglwYWdlX3NpemUYBCABKAUSEgoKcGFnZV90b2tlbhgFIAEoCRImCgVzY29wZRgGIAEoDjIXLnB1YmxpY19hcGkuU2VjcmV0U2NvcGUSFQoIc3BhY2VfaWQYByABKAlIAIgBAUILCglfc3BhY2VfaWQiyAEKF0xpc3RVc2VyU2VjcmV0c1Jlc3BvbnNlEicKB3NlY3JldHMYASADKAsyFi5wdWJsaWNfYXBpLlVzZXJTZWNyZXQSFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJEhMKC3RvdGFsX2NvdW50GAMgASgFEigKIHNlY3JldF9zY29wZWRfcmVzb2x1dGlvbl9lbmFibGVkGAQgASgIEiwKJHNlY3JldF9tdWx0aV9zcGFjZV90YXJnZXRpbmdfZW5hYmxlZBgFIAEoCCIXChVMaXN0V29ya3NwYWNlc1JlcXVlc3QiRwoWTGlzdFdvcmtzcGFjZXNSZXNwb25zZRItCgp3b3Jrc3BhY2VzGAEgAygLMhkucHVibGljX2FwaS5Xb3Jrc3BhY2VJbmZvIm4KHU1hcmtOb3RpZmljYXRpb25Bc1JlYWRSZXF1ZXN0EhcKD25vdGlmaWNhdGlvbl9pZBgBIAEoCRIeChFhY3Rpb25faXRlbV90aXRsZRgCIAEoCUgAiAEBQhQKEl9hY3Rpb25faXRlbV90aXRsZSIgCh5NYXJrTm90aWZpY2F0aW9uQXNSZWFkUmVzcG9uc2UijAEKF01jcENhdGFsb2dNZXRhZGF0YUVudHJ5EgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSEQoJYXV0aF90eXBlGAQgASgJEi8KBXN0YXRlGAUgASgOMiAucHVibGljX2FwaS5NY3BDYXRhbG9nRW50cnlTdGF0ZSLmAQoJTWNwQ29uZmlnEgoKAmlkGAEgASgJEjAKBmNvbmZpZxgCIAEoCzIgLnB1YmxpY19hcGkuUmVtb3RlQWdlbnRNY3BDb25maWcSNAoQZW5hYmxlZF9wcm9kdWN0cxgDIAMoDjIaLnB1YmxpY19hcGkuTWNwUHJvZHVjdFR5cGUSHQoVaGFzX29hdXRoX2NyZWRlbnRpYWxzGAQgASgIEhUKCHNwYWNlX2lkGAUgASgJSACIAQESFQoIYWRkZWRfYnkYBiABKAlIAYgBAUILCglfc3BhY2VfaWRCCwoJX2FkZGVkX2J5Iq8BCglNY3BTZWNyZXQSDQoFdmFsdWUYASABKAkSLQoEdGFncxgCIAMoCzIfLnB1YmxpY19hcGkuTWNwU2VjcmV0LlRhZ3NFbnRyeRIPCgd2ZXJzaW9uGAMgASgJEiYKBXNjb3BlGAQgASgOMhcucHVibGljX2FwaS5TZWNyZXRTY29wZRorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKAAwoPTWNwU2VydmVyQ29uZmlnEhQKB2NvbW1hbmQYASABKAlIAIgBARIMCgRhcmdzGAIgAygJEhcKCnRpbWVvdXRfbXMYAyABKAVIAYgBARIxCgNlbnYYBCADKAsyJC5wdWJsaWNfYXBpLk1jcFNlcnZlckNvbmZpZy5FbnZFbnRyeRIkChd1c2Vfc2hlbGxfaW50ZXJwb2xhdGlvbhgFIAEoCEgCiAEBEhEKBG5hbWUYBiABKAlIA4gBARIVCghkaXNhYmxlZBgHIAEoCEgEiAEBEhEKBHR5cGUYCCABKAlIBYgBARIQCgN1cmwYCSABKAlIBogBARoqCghFbnZFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBQgoKCF9jb21tYW5kQg0KC190aW1lb3V0X21zQhoKGF91c2Vfc2hlbGxfaW50ZXJwb2xhdGlvbkIHCgVfbmFtZUILCglfZGlzYWJsZWRCBwoFX3R5cGVCBgoEX3VybCJSChpNY3BTZXJ2ZXJQcm9kdWN0UHJlZmVyZW5jZRI0ChBlbmFibGVkX3Byb2R1Y3RzGAEgAygOMhoucHVibGljX2FwaS5NY3BQcm9kdWN0VHlwZSJjCg9NZW1vcml6ZVJlcXVlc3QSEQoFbW9kZWwYASABKAlCAhgBEgkKAXQYAiABKAkSDAoEcGF0aBgDIAEoCRIWCglibG9iX25hbWUYBCABKAlIAIgBAUIMCgpfYmxvYl9uYW1lIisKEE1lbW9yaXplUmVzcG9uc2USFwoPbWVtX29iamVjdF9uYW1lGAEgASgJIqIBCh1NaWdyYXRlVXNlclNlY3JldFNjb3BlUmVxdWVzdBIMCgRuYW1lGAEgASgJEi0KDHNvdXJjZV9zY29wZRgCIAEoDjIXLnB1YmxpY19hcGkuU2VjcmV0U2NvcGUSLQoMdGFyZ2V0X3Njb3BlGAMgASgOMhcucHVibGljX2FwaS5TZWNyZXRTY29wZRIVCg1kZWxldGVfc291cmNlGAQgASgIImAKHk1pZ3JhdGVVc2VyU2VjcmV0U2NvcGVSZXNwb25zZRImCgZzZWNyZXQYASABKAsyFi5wdWJsaWNfYXBpLlVzZXJTZWNyZXQSFgoOc291cmNlX2RlbGV0ZWQYAiABKAgi1AEKBU1vZGVsEiMKG3N1Z2dlc3RlZF9wcmVmaXhfY2hhcl9jb3VudBgBIAEoDRIjChtzdWdnZXN0ZWRfc3VmZml4X2NoYXJfY291bnQYAiABKA0SHwoXbWF4X21lbW9yaXplX3NpemVfYnl0ZXMYAyABKA0SDAoEbmFtZRgFIAEoCRIaCg1pbnRlcm5hbF9uYW1lGAYgASgJSACIAQESEgoKaXNfZGVmYXVsdBgHIAEoCEIQCg5faW50ZXJuYWxfbmFtZUoECAQQBUoECAoQC0oECAsQDCLPAQoMTm90aWZpY2F0aW9uEiwKBWxldmVsGAEgASgOMh0ucHVibGljX2FwaS5Ob3RpZmljYXRpb25MZXZlbBIPCgdtZXNzYWdlGAIgASgJEiwKDGFjdGlvbl9pdGVtcxgDIAMoCzIWLnB1YmxpY19hcGkuQWN0aW9uSXRlbRIXCg9ub3RpZmljYXRpb25faWQYBiABKAkSOQoMZGlzcGxheV90eXBlGAcgASgOMiMucHVibGljX2FwaS5Ob3RpZmljYXRpb25EaXNwbGF5VHlwZSIpChROb3Rpb25Ub29sRXh0cmFJbnB1dBIRCglhcGlfdG9rZW4YASABKAkiXQoWT25ib2FyZGluZ1Nlc3Npb25FdmVudBIWCg5ldmVudF90aW1lX3NlYxgBIAEoAxIXCg9ldmVudF90aW1lX25zZWMYAiABKAUSEgoKZXZlbnRfbmFtZRgDIAEoCSJRChtPbmJvYXJkaW5nU2Vzc2lvbkV2ZW50QmF0Y2gSMgoGZXZlbnRzGAEgAygLMiIucHVibGljX2FwaS5PbmJvYXJkaW5nU2Vzc2lvbkV2ZW50IiAKHk9uYm9hcmRpbmdTZXNzaW9uRXZlbnRSZXNwb25zZSL/AQoZT3V0Y29tZUFuYWx5dGljc0RhdGFQb2ludBI2CgpkYXRlX3JhbmdlGAEgASgLMiIucHVibGljX2FwaS5Db3N0QW5hbHl0aWNzRGF0ZVJhbmdlEjMKD291dGNvbWVfbWV0cmljcxgCIAEoCzIaLnB1YmxpY19hcGkuT3V0Y29tZU1ldHJpY3MSQgoPZ3JvdXBfYnlfdmFsdWVzGAMgASgLMikucHVibGljX2FwaS5PdXRjb21lQW5hbHl0aWNzR3JvdXBCeVZhbHVlcxIxCgdtZXRyaWNzGAQgASgLMiAucHVibGljX2FwaS5Db3N0QW5hbHl0aWNzTWV0cmljcyJkChdPdXRjb21lQW5hbHl0aWNzRmlsdGVycxINCgVuYW1lcxgBIAMoCRI6Cgt0YWdfZmlsdGVycxgCIAMoCzIlLnB1YmxpY19hcGkuT3V0Y29tZUFuYWx5dGljc1RhZ0ZpbHRlciLJAgodT3V0Y29tZUFuYWx5dGljc0dyb3VwQnlWYWx1ZXMSDAoEbmFtZRgBIAEoCRJBCgR0YWdzGAIgAygLMjMucHVibGljX2FwaS5PdXRjb21lQW5hbHl0aWNzR3JvdXBCeVZhbHVlcy5UYWdzRW50cnkSWwoSdGFnX2Rpc3BsYXlfdmFsdWVzGAMgAygLMj8ucHVibGljX2FwaS5PdXRjb21lQW5hbHl0aWNzR3JvdXBCeVZhbHVlcy5UYWdEaXNwbGF5VmFsdWVzRW50cnkSFAoMZGlzcGxheV9uYW1lGAQgASgJGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGjcKFVRhZ0Rpc3BsYXlWYWx1ZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBInUKGU91dGNvbWVBbmFseXRpY3NUYWdGaWx0ZXISCwoDa2V5GAEgASgJEg4KBnZhbHVlcxgCIAMoCRI7CgtmaWx0ZXJfdHlwZRgDIAEoDjImLnB1YmxpY19hcGkuQ29zdEFuYWx5dGljc1RhZ0ZpbHRlclR5cGUiggEKDk91dGNvbWVNZXRyaWNzEhkKEW9ic2VydmF0aW9uX2NvdW50GAEgASgEEh4KFmRpc3RpbmN0X3N1YmplY3RfY291bnQYAiABKAQSNQoHbWV0cmljcxgDIAMoCzIkLnB1YmxpY19hcGkuQWdncmVnYXRlZE91dGNvbWVNZXRyaWNzIpUEChlPdXRjb21lU2Vzc2lvbk9ic2VydmF0aW9uEhAKCGV2ZW50X2lkGAEgASgJEgwKBG5hbWUYAiABKAkSDwoHc3ViamVjdBgDIAEoCRIUCgxzdWJqZWN0X3R5cGUYBCABKAkSDgoGc291cmNlGAUgASgJEi8KC29ic2VydmVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIRCgl0YWdzX2pzb24YByABKAkSUAoOZWZmZWN0aXZlX3RhZ3MYCSADKAsyOC5wdWJsaWNfYXBpLk91dGNvbWVTZXNzaW9uT2JzZXJ2YXRpb24uRWZmZWN0aXZlVGFnc0VudHJ5EmoKHGVmZmVjdGl2ZV90YWdfZGlzcGxheV92YWx1ZXMYCiADKAsyRC5wdWJsaWNfYXBpLk91dGNvbWVTZXNzaW9uT2JzZXJ2YXRpb24uRWZmZWN0aXZlVGFnRGlzcGxheVZhbHVlc0VudHJ5EhUKDW1ldGFkYXRhX2pzb24YCyABKAkaNAoSRWZmZWN0aXZlVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaQAoeRWZmZWN0aXZlVGFnRGlzcGxheVZhbHVlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFKBAgIEAlSCnZhbHVlX2pzb24iyQQKFU91dGNvbWVTZXNzaW9uU3VtbWFyeRI1ChFmaXJzdF9vYnNlcnZlZF9hdBgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASNAoQbGFzdF9vYnNlcnZlZF9hdBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGQoRb2JzZXJ2YXRpb25fY291bnQYAyABKAQSHgoWZGlzdGluY3Rfc3ViamVjdF9jb3VudBgEIAEoBBIVCg1vdXRjb21lX25hbWVzGAUgAygJEkwKDmVmZmVjdGl2ZV90YWdzGAYgAygLMjQucHVibGljX2FwaS5PdXRjb21lU2Vzc2lvblN1bW1hcnkuRWZmZWN0aXZlVGFnc0VudHJ5EjEKB21ldHJpY3MYByABKAsyIC5wdWJsaWNfYXBpLkNvc3RBbmFseXRpY3NNZXRyaWNzEmYKHGVmZmVjdGl2ZV90YWdfZGlzcGxheV92YWx1ZXMYCCADKAsyQC5wdWJsaWNfYXBpLk91dGNvbWVTZXNzaW9uU3VtbWFyeS5FZmZlY3RpdmVUYWdEaXNwbGF5VmFsdWVzRW50cnkSEAoIYWdlbnRfaWQYCSABKAkaNAoSRWZmZWN0aXZlVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaQAoeRWZmZWN0aXZlVGFnRGlzcGxheVZhbHVlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEibwoSUGVyRmlsZUNoYW5nZVN0YXRzEhEKCWZpbGVfcGF0aBgBIAEoCRIXCg9pbnNlcnRpb25fY291bnQYAiABKAUSFgoOZGVsZXRpb25fY291bnQYAyABKAUSFQoNb2xkX2ZpbGVfcGF0aBgEIAEoCSK9AQoXUGVyVHlwZUNoYW5nZWRGaWxlU3RhdHMSGgoSY2hhbmdlZF9maWxlX2NvdW50GAEgASgFEkIKGnBlcl9maWxlX2NoYW5nZV9zdGF0c19oZWFkGAIgAygLMh4ucHVibGljX2FwaS5QZXJGaWxlQ2hhbmdlU3RhdHMSQgoacGVyX2ZpbGVfY2hhbmdlX3N0YXRzX3RhaWwYAyADKAsyHi5wdWJsaWNfYXBpLlBlckZpbGVDaGFuZ2VTdGF0cyIvChlQaW5Qb3NlaWRvblNlc3Npb25SZXF1ZXN0EhIKCnNlc3Npb25faWQYASABKAkiHAoaUGluUG9zZWlkb25TZXNzaW9uUmVzcG9uc2UiPQoTUG9zZWlkb25QaW5uZWRFbnRyeRISCgpzZXNzaW9uX2lkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkiogEKEFByZWZlcmVuY2VTYW1wbGUSEwoLcmVxdWVzdF9pZHMYASADKAkSOAoGc2NvcmVzGAIgAygLMigucHVibGljX2FwaS5QcmVmZXJlbmNlU2FtcGxlLlNjb3Jlc0VudHJ5EhAKCGZlZWRiYWNrGAMgASgJGi0KC1Njb3Jlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoBToCOAEiGgoYUHJlZmVyZW5jZVNhbXBsZVJlc3BvbnNlIl0KFVByb2Nlc3NXZWJob29rUmVxdWVzdBISCgp3ZWJob29rX2lkGAEgASgJEg8KB2hlYWRlcnMYAiABKAkSDAoEYm9keRgDIAEoCRIRCglzb3VyY2VfaXAYBCABKAkiKQoWUHJvY2Vzc1dlYmhvb2tSZXNwb25zZRIPCgdtZXNzYWdlGAEgASgJIiMKBVJhbmdlEg0KBXN0YXJ0GAEgASgFEgsKA2VuZBgCIAEoBSJjChFSYXdSZXRyaWV2YWxRdWVyeRITCgtkZXNjcmlwdGlvbhgBIAEoCRIMCgRwYXRoGAIgASgJEhcKD2NvbnRhaW5zX3N0cmluZxgDIAEoCRISCgptYXhfY2h1bmtzGAQgASgFIoYCChFSYXdSZXRyaWV2ZWRDaHVuaxIMCgR0ZXh0GAEgASgJEgwKBHBhdGgYAiABKAkSEgoKY2hhcl9zdGFydBgDIAEoBRIQCghjaGFyX2VuZBgEIAEoBRISCgpsaW5lX3N0YXJ0GAUgASgFEhcKD2xlbmd0aF9pbl9saW5lcxgGIAEoBRIRCglibG9iX25hbWUYByABKAkSDQoFc2NvcmUYCCABKAISDgoGb3JpZ2luGAkgASgJEhYKDm1hdGNoZWRfc3RyaW5nGAogASgJEhoKEmV4dGVybmFsX3NvdXJjZV9pZBgLIAEoCRIcChRleHRlcm5hbF9zb3VyY2VfbmFtZRgMIAEoCSJeChxSZWFkR2l0aHViU2V0dXBTY3JpcHRSZXF1ZXN0EikKCmdpdGh1Yl9yZWYYASABKAsyFS5wdWJsaWNfYXBpLkdpdGh1YlJlZhITCgtzY3JpcHRfcGF0aBgCIAEoCSIwCh1SZWFkR2l0aHViU2V0dXBTY3JpcHRSZXNwb25zZRIPCgdjb250ZW50GAEgASgJIhoKGFJlYWROb3RpZmljYXRpb25zUmVxdWVzdCJMChlSZWFkTm90aWZpY2F0aW9uc1Jlc3BvbnNlEi8KDW5vdGlmaWNhdGlvbnMYASADKAsyGC5wdWJsaWNfYXBpLk5vdGlmaWNhdGlvbiLrAQoLUmVjZW5jeUluZm8SNQoRdGFiX3N3aXRjaF9ldmVudHMYASADKAsyGi5wdWJsaWNfYXBpLlRhYlN3aXRjaEV2ZW50EjcKEmdpdF9kaWZmX2ZpbGVfaW5mbxgCIAMoCzIbLnB1YmxpY19hcGkuR2l0RGlmZkZpbGVJbmZvEjMKDnJlY2VudF9jaGFuZ2VzGAMgAygLMhsucHVibGljX2FwaS5SZXBsYWNlbWVudFRleHQSNwoPdmlld2VkX2NvbnRlbnRzGAQgAygLMh4ucHVibGljX2FwaS5WaWV3ZWRDb250ZW50RXZlbnQicQokUmVjb3JkUG9zZWlkb25BbmFseXRpY3NFdmVudHNSZXF1ZXN0EhAKCGFnZW50X2lkGAEgASgJEjcKBmV2ZW50cxgCIAMoCzInLnJlcXVlc3RfaW5zaWdodC5Qb3NlaWRvbkFuYWx5dGljc0V2ZW50IicKJVJlY29yZFBvc2VpZG9uQW5hbHl0aWNzRXZlbnRzUmVzcG9uc2UiSwoaUmVjb3JkUmVxdWVzdEV2ZW50c1JlcXVlc3QSLQoGZXZlbnRzGAEgAygLMh0ucmVxdWVzdF9pbnNpZ2h0LlJlcXVlc3RFdmVudCIdChtSZWNvcmRSZXF1ZXN0RXZlbnRzUmVzcG9uc2UiSwoaUmVjb3JkU2Vzc2lvbkV2ZW50c1JlcXVlc3QSLQoGZXZlbnRzGAEgAygLMh0ucmVxdWVzdF9pbnNpZ2h0LlNlc3Npb25FdmVudCIdChtSZWNvcmRTZXNzaW9uRXZlbnRzUmVzcG9uc2UidgojUmVnaXN0ZXJJbmRleGVkQ29tbWl0QmxvYnNldFJlcXVlc3QSLQoGY29tbWl0GAEgASgLMh0ucHVibGljX2FwaS5JbmRleGVkQ29tbWl0SW5mbxIgCgVibG9icxgCIAEoCzIRLnB1YmxpY19hcGkuQmxvYnMiNwokUmVnaXN0ZXJJbmRleGVkQ29tbWl0QmxvYnNldFJlc3BvbnNlEg8KB2NyZWF0ZWQYASABKAgi6AQKC1JlbW90ZUFnZW50EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCRI+Cg93b3Jrc3BhY2Vfc2V0dXAYAiABKAsyJS5wdWJsaWNfYXBpLlJlbW90ZUFnZW50V29ya3NwYWNlU2V0dXASLQoGc3RhdHVzGAMgASgOMh0ucHVibGljX2FwaS5SZW1vdGVBZ2VudFN0YXR1cxIuCgpzdGFydGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIXCg9zZXNzaW9uX3N1bW1hcnkYBiABKAkSFgoOdHVybl9zdW1tYXJpZXMYByADKAkSOQoKc3NoX2NvbmZpZxgIIAEoCzIgLnB1YmxpY19hcGkuUmVtb3RlQWdlbnRTU0hDb25maWdIAIgBARIiChVpc19zZXR1cF9zY3JpcHRfYWdlbnQYCSABKAhIAYgBARIYCgtoYXNfdXBkYXRlcxgKIAEoCEgCiAEBEkAKEHdvcmtzcGFjZV9zdGF0dXMYCyABKA4yJi5wdWJsaWNfYXBpLlJlbW90ZUFnZW50V29ya3NwYWNlU3RhdHVzEi4KCmV4cGlyZXNfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhIKBXRpdGxlGA0gASgJSAOIAQFCDQoLX3NzaF9jb25maWdCGAoWX2lzX3NldHVwX3NjcmlwdF9hZ2VudEIOCgxfaGFzX3VwZGF0ZXNCCAoGX3RpdGxlIksKG1JlbW90ZUFnZW50QWRkU1NIS2V5UmVxdWVzdBIXCg9yZW1vdGVfYWdlbnRfaWQYASABKAkSEwoLcHVibGljX2tleXMYAiADKAkiVAocUmVtb3RlQWdlbnRBZGRTU0hLZXlSZXNwb25zZRI0Cgpzc2hfY29uZmlnGAEgASgLMiAucHVibGljX2FwaS5SZW1vdGVBZ2VudFNTSENvbmZpZyJ1ChZSZW1vdGVBZ2VudENoYXRSZXF1ZXN0EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCRJCCg9yZXF1ZXN0X2RldGFpbHMYAiABKAsyKS5wdWJsaWNfYXBpLlJlbW90ZUFnZW50Q2hhdFJlcXVlc3REZXRhaWxzIp0CCh1SZW1vdGVBZ2VudENoYXRSZXF1ZXN0RGV0YWlscxIyCg1yZXF1ZXN0X25vZGVzGAEgAygLMhsucHVibGljX2FwaS5DaGF0UmVxdWVzdE5vZGUSHAoPdXNlcl9ndWlkZWxpbmVzGAIgASgJSACIAQESIQoUd29ya3NwYWNlX2d1aWRlbGluZXMYAyABKAlIAYgBARIVCghtb2RlbF9pZBgFIAEoCUgCiAEBEjAKC21jcF9zZXJ2ZXJzGAYgAygLMhsucHVibGljX2FwaS5NY3BTZXJ2ZXJDb25maWdCEgoQX3VzZXJfZ3VpZGVsaW5lc0IXChVfd29ya3NwYWNlX2d1aWRlbGluZXNCCwoJX21vZGVsX2lkSgQIBBAFIhkKF1JlbW90ZUFnZW50Q2hhdFJlc3BvbnNlIsgCChNSZW1vdGVBZ2VudEV4Y2hhbmdlEiYKCGV4Y2hhbmdlGAEgASgLMhQucHVibGljX2FwaS5FeGNoYW5nZRIuCg1jaGFuZ2VkX2ZpbGVzGAIgAygLMhcucHVibGljX2FwaS5DaGFuZ2VkRmlsZRITCgtzZXF1ZW5jZV9pZBgDIAEoDRIZCgx0dXJuX3N1bW1hcnkYBCABKAlIAIgBARIvCgtmaW5pc2hlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASHQoVY2hhbmdlZF9maWxlc19za2lwcGVkGAYgAygJEigKG2NoYW5nZWRfZmlsZXNfc2tpcHBlZF9jb3VudBgHIAEoDUgBiAEBQg8KDV90dXJuX3N1bW1hcnlCHgocX2NoYW5nZWRfZmlsZXNfc2tpcHBlZF9jb3VudCJwCiFSZW1vdGVBZ2VudEdlbmVyYXRlU3VtbWFyeVJlcXVlc3QSFwoPcmVtb3RlX2FnZW50X2lkGAEgASgJEhkKEXN0YXJ0X3NlcXVlbmNlX2lkGAIgASgNEhcKD2VuZF9zZXF1ZW5jZV9pZBgDIAEoDSJjCiJSZW1vdGVBZ2VudEdlbmVyYXRlU3VtbWFyeVJlc3BvbnNlEj0KEWRpZmZfZGVzY3JpcHRpb25zGAEgAygLMiIucHVibGljX2FwaS5EaWZmRXhwbGFuYXRpb25TZWN0aW9uIpcEChRSZW1vdGVBZ2VudE1jcENvbmZpZxIUCgdjb21tYW5kGAEgASgJSACIAQESDAoEYXJncxgCIAMoCRIXCgp0aW1lb3V0X21zGAMgASgFSAGIAQESNgoDZW52GAQgAygLMikucHVibGljX2FwaS5SZW1vdGVBZ2VudE1jcENvbmZpZy5FbnZFbnRyeRIkChd1c2Vfc2hlbGxfaW50ZXJwb2xhdGlvbhgFIAEoCEgCiAEBEhEKBG5hbWUYBiABKAlIA4gBARIVCghkaXNhYmxlZBgHIAEoCEgEiAEBEhEKBHR5cGUYCCABKAlIBYgBARIQCgN1cmwYCSABKAlIBogBARIvCglhdXRoX3R5cGUYCiABKA4yFy5wdWJsaWNfYXBpLk1jcEF1dGhUeXBlSAeIAQESFQoIaWNvbl91cmwYCyABKAlICIgBARIYCgtkZXNjcmlwdGlvbhgMIAEoCUgJiAEBGioKCEVudkVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCCgoIX2NvbW1hbmRCDQoLX3RpbWVvdXRfbXNCGgoYX3VzZV9zaGVsbF9pbnRlcnBvbGF0aW9uQgcKBV9uYW1lQgsKCV9kaXNhYmxlZEIHCgVfdHlwZUIGCgRfdXJsQgwKCl9hdXRoX3R5cGVCCwoJX2ljb25fdXJsQg4KDF9kZXNjcmlwdGlvbiIyChdSZW1vdGVBZ2VudFBhdXNlUmVxdWVzdBIXCg9yZW1vdGVfYWdlbnRfaWQYASABKAkiGgoYUmVtb3RlQWdlbnRQYXVzZVJlc3BvbnNlInUKHFJlbW90ZUFnZW50UmVzdW1lSGludFJlcXVlc3QSFwoPcmVtb3RlX2FnZW50X2lkGAEgASgJEjwKC2hpbnRfcmVhc29uGAIgASgOMicucHVibGljX2FwaS5SZW1vdGVBZ2VudFJlc3VtZUhpbnRSZWFzb24iNwodUmVtb3RlQWdlbnRSZXN1bWVIaW50UmVzcG9uc2USFgoOcmVzdW1lX3N0YXJ0ZWQYASABKAgiMwoYUmVtb3RlQWdlbnRSZXN1bWVSZXF1ZXN0EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCSIbChlSZW1vdGVBZ2VudFJlc3VtZVJlc3BvbnNlInYKFFJlbW90ZUFnZW50U1NIQ29uZmlnEhMKC3B1YmxpY19rZXlzGAEgAygJEhAKCGhvc3RuYW1lGAIgASgJEjcKEnNzaF9jb25maWdfb3B0aW9ucxgDIAMoCzIbLnB1YmxpY19hcGkuU1NIQ29uZmlnT3B0aW9uIrwBCh9SZW1vdGVBZ2VudFdvcmtzcGFjZUxvZ3NSZXF1ZXN0EhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCRIgChNsYXN0X3Byb2Nlc3NlZF9zdGVwGAIgASgNSACIAQESJwoabGFzdF9wcm9jZXNzZWRfc2VxdWVuY2VfaWQYAyABKA1IAYgBAUIWChRfbGFzdF9wcm9jZXNzZWRfc3RlcEIdChtfbGFzdF9wcm9jZXNzZWRfc2VxdWVuY2VfaWQigwEKIFJlbW90ZUFnZW50V29ya3NwYWNlTG9nc1Jlc3BvbnNlEhcKD3JlbW90ZV9hZ2VudF9pZBgBIAEoCRJGChZ3b3Jrc3BhY2Vfc2V0dXBfc3RhdHVzGAMgASgLMiYucHVibGljX2FwaS5SZW1vdGVXb3Jrc3BhY2VTZXR1cFN0YXR1cyLjAQoZUmVtb3RlQWdlbnRXb3Jrc3BhY2VTZXR1cBI4ChFnaXRodWJfY29tbWl0X3JlZhgBIAEoCzIbLnB1YmxpY19hcGkuR2l0aHViQ29tbWl0UmVmSAASSAoKZ2l0X2NvbmZpZxgCIAMoCzI0LnB1YmxpY19hcGkuUmVtb3RlQWdlbnRXb3Jrc3BhY2VTZXR1cC5HaXRDb25maWdFbnRyeRowCg5HaXRDb25maWdFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBQhAKDnN0YXJ0aW5nX2ZpbGVzIj4KEFJlbW90ZVRvb2xJZExpc3QSKgoIdG9vbF9pZHMYASADKA4yGC5wdWJsaWNfYXBpLlJlbW90ZVRvb2xJZCJRChpSZW1vdGVXb3Jrc3BhY2VTZXR1cFN0YXR1cxIzCgVzdGVwcxgBIAMoCzIkLnB1YmxpY19hcGkuUmVtb3RlV29ya3NwYWNlU2V0dXBTdGVwIqgBChhSZW1vdGVXb3Jrc3BhY2VTZXR1cFN0ZXASGAoQc3RlcF9kZXNjcmlwdGlvbhgBIAEoCRIMCgRsb2dzGAIgASgJEjoKBnN0YXR1cxgDIAEoDjIqLnB1YmxpY19hcGkuUmVtb3RlV29ya3NwYWNlU2V0dXBTdGVwU3RhdHVzEhMKC3NlcXVlbmNlX2lkGAQgASgNEhMKC3N0ZXBfbnVtYmVyGAUgASgNIksKHFJlbW92ZU1jcFRlbmFudENvbmZpZ1JlcXVlc3QSEQoJY29uZmlnX2lkGAEgASgJEhgKEGV4cGVjdGVkX3ZlcnNpb24YAiABKAkiQQodUmVtb3ZlTWNwVGVuYW50Q29uZmlnUmVzcG9uc2USDwoHcmVtb3ZlZBgBIAEoCBIPCgd2ZXJzaW9uGAIgASgJIkkKGlJlbW92ZU1jcFVzZXJDb25maWdSZXF1ZXN0EhEKCWNvbmZpZ19pZBgBIAEoCRIYChBleHBlY3RlZF92ZXJzaW9uGAIgASgJIj8KG1JlbW92ZU1jcFVzZXJDb25maWdSZXNwb25zZRIPCgdyZW1vdmVkGAEgASgIEg8KB3ZlcnNpb24YAiABKAkiPgoXUmVuYW1lVXNlclNlY3JldFJlcXVlc3QSEQoJc2VjcmV0X2lkGAEgASgJEhAKCG5ld19uYW1lGAIgASgJIkIKGFJlbmFtZVVzZXJTZWNyZXRSZXNwb25zZRImCgZzZWNyZXQYASABKAsyFi5wdWJsaWNfYXBpLlVzZXJTZWNyZXQihQIKD1JlcGxhY2VtZW50VGV4dBIRCglibG9iX25hbWUYASABKAkSDAoEcGF0aBgCIAEoCRISCgpjaGFyX3N0YXJ0GAMgASgNEhAKCGNoYXJfZW5kGAQgASgNEhgKEHJlcGxhY2VtZW50X3RleHQYBSABKAkSFwoPcHJlc2VudF9pbl9ibG9iGAYgASgIEh8KEmV4cGVjdGVkX2Jsb2JfbmFtZRgHIAEoCUgAiAEBEjIKCXRpbWVzdGFtcBgIIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBAUIVChNfZXhwZWN0ZWRfYmxvYl9uYW1lQgwKCl90aW1lc3RhbXAirQEKElJlcG9ydEVycm9yUmVxdWVzdBIgChNvcmlnaW5hbF9yZXF1ZXN0X2lkGAEgASgJSACIAQESGQoRc2FuaXRpemVkX21lc3NhZ2UYAiABKAkSEwoLc3RhY2tfdHJhY2UYAyABKAkSLQoLZGlhZ25vc3RpY3MYBCADKAsyGC5wdWJsaWNfYXBpLktleVZhbHVlUGFpckIWChRfb3JpZ2luYWxfcmVxdWVzdF9pZCIVChNSZXBvcnRFcnJvclJlc3BvbnNlIqUBChpSZXBvcnRGZWF0dXJlVmVjdG9yUmVxdWVzdBJRCg5mZWF0dXJlX3ZlY3RvchgBIAMoCzI5LnB1YmxpY19hcGkuUmVwb3J0RmVhdHVyZVZlY3RvclJlcXVlc3QuRmVhdHVyZVZlY3RvckVudHJ5GjQKEkZlYXR1cmVWZWN0b3JFbnRyeRILCgNrZXkYASABKAUSDQoFdmFsdWUYAiABKAk6AjgBIh0KG1JlcG9ydEZlYXR1cmVWZWN0b3JSZXNwb25zZSJMChtSZXBvc2l0b3J5QWxsb3dsaXN0U2V0dGluZ3MSFwoPcmVwb3NpdG9yeV91cmxzGAEgAygJEhQKDGlzX2RlbnlfbGlzdBgCIAEoCCJ5ChJSZXNvbHZlQ29tcGxldGlvbnMSHAoLY2xpZW50X25hbWUYASABKAlCAhgBSACIAQESNQoLcmVzb2x1dGlvbnMYAiADKAsyIC5wdWJsaWNfYXBpLkNvbXBsZXRpb25SZXNvbHV0aW9uQg4KDF9jbGllbnRfbmFtZSIVChNSZXNvbHZlRWRpdFJlc3BvbnNlIiAKHlJldm9rZUN1cnJlbnRVc2VyVG9rZW5zUmVxdWVzdCI5Ch9SZXZva2VDdXJyZW50VXNlclRva2Vuc1Jlc3BvbnNlEhYKDnRva2Vuc19kZWxldGVkGAEgASgFIkQKF1Jldm9rZVRvb2xBY2Nlc3NSZXF1ZXN0EikKB3Rvb2xfaWQYASABKA4yGC5wdWJsaWNfYXBpLlJlbW90ZVRvb2xJZCJOChhSZXZva2VUb29sQWNjZXNzUmVzcG9uc2USMgoGc3RhdHVzGAEgASgOMiIucHVibGljX2FwaS5SZXZva2VUb29sQWNjZXNzU3RhdHVzInMKBFJ1bGUSIgoEdHlwZRgBIAEoDjIULnB1YmxpY19hcGkuUnVsZVR5cGUSDAoEcGF0aBgCIAEoCRIPCgdjb250ZW50GAMgASgJEhgKC2Rlc2NyaXB0aW9uGAQgASgJSACIAQFCDgoMX2Rlc2NyaXB0aW9uIrYDChRSdW5SZW1vdGVUb29sUmVxdWVzdBJJChphdGxhc3NpYW5fdG9vbF9leHRyYV9pbnB1dBgEIAEoCzIjLnB1YmxpY19hcGkuQXRsYXNzaWFuVG9vbEV4dHJhSW5wdXRIABJDChdub3Rpb25fdG9vbF9leHRyYV9pbnB1dBgFIAEoCzIgLnB1YmxpY19hcGkuTm90aW9uVG9vbEV4dHJhSW5wdXRIABJDChdsaW5lYXJfdG9vbF9leHRyYV9pbnB1dBgGIAEoCzIgLnB1YmxpY19hcGkuTGluZWFyVG9vbEV4dHJhSW5wdXRIABJDChdnaXRodWJfdG9vbF9leHRyYV9pbnB1dBgHIAEoCzIgLnB1YmxpY19hcGkuR2l0SHViVG9vbEV4dHJhSW5wdXRIABIVCgl0b29sX25hbWUYASABKAlCAhgBEhcKD3Rvb2xfaW5wdXRfanNvbhgCIAEoCRIuCgd0b29sX2lkGAMgASgOMhgucHVibGljX2FwaS5SZW1vdGVUb29sSWRIAYgBAUISChBleHRyYV90b29sX2lucHV0QgoKCF90b29sX2lkSgQICBAJIsMCChVSdW5SZW1vdGVUb29sUmVzcG9uc2USEwoLdG9vbF9vdXRwdXQYASABKAkSGwoTdG9vbF9yZXN1bHRfbWVzc2FnZRgCIAEoCRIUCghpc19lcnJvchgDIAEoCEICGAESNAoGc3RhdHVzGAQgASgOMiQucHVibGljX2FwaS5SZW1vdGVUb29sUmVzcG9uc2VTdGF0dXMSIwoWY29tcHJlc3NlZF9mdWxsX291dHB1dBgFIAEoCUgAiAEBEh0KEGZ1bGxfb3V0cHV0X3NpemUYBiABKANIAYgBARI4Cg1jb250ZW50X25vZGVzGAcgAygLMiEucHVibGljX2FwaS5Ub29sUmVzdWx0Q29udGVudE5vZGVCGQoXX2NvbXByZXNzZWRfZnVsbF9vdXRwdXRCEwoRX2Z1bGxfb3V0cHV0X3NpemUiLQoPU1NIQ29uZmlnT3B0aW9uEgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCSJdCg9TYXZlQ2hhdFJlcXVlc3QSFwoPY29udmVyc2F0aW9uX2lkGAEgASgJEiIKBGNoYXQYAiADKAsyFC5wdWJsaWNfYXBpLkV4Y2hhbmdlEg0KBXRpdGxlGAMgASgJIi0KEFNhdmVDaGF0UmVzcG9uc2USDAoEdXVpZBgBIAEoCRILCgN1cmwYAiABKAkiqAEKDlNjaGVkdWxlRW50aXR5EgoKAmlkGAEgASgJEiwKBHR5cGUYAiABKA4yHi5wdWJsaWNfYXBpLlNjaGVkdWxlRW50aXR5VHlwZRIRCgl0aW1lc3RhbXAYAyABKAkSOwoJZXhlY3V0aW9uGAQgASgLMiMucHVibGljX2FwaS5TY2hlZHVsZUV4ZWN1dGlvbkVudGl0eUgAiAEBQgwKCl9leGVjdXRpb24i3gEKF1NjaGVkdWxlRXhlY3V0aW9uRW50aXR5EhIKCnRyaWdnZXJfaWQYASABKAkSFwoPY3Jvbl9leHByZXNzaW9uGAIgASgJEhYKDmV4ZWN1dGlvbl90aW1lGAMgASgJEhUKCHRpbWV6b25lGAQgASgJSACIAQESFwoKc3RhcnRfZGF0ZRgFIAEoCUgBiAEBEhUKCGVuZF9kYXRlGAYgASgJSAKIAQESDgoGc3RhdHVzGAcgASgJQgsKCV90aW1lem9uZUINCgtfc3RhcnRfZGF0ZUILCglfZW5kX2RhdGUihgIKGVNjaGVkdWxlVHJpZ2dlckNvbmRpdGlvbnMSFwoPY3Jvbl9leHByZXNzaW9uGAEgASgJEhUKCHRpbWV6b25lGAIgASgJSACIAQESMwoKc3RhcnRfZGF0ZRgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIxCghlbmRfZGF0ZRgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAogBARIYCgtkZXNjcmlwdGlvbhgFIAEoCUgDiAEBQgsKCV90aW1lem9uZUINCgtfc3RhcnRfZGF0ZUILCglfZW5kX2RhdGVCDgoMX2Rlc2NyaXB0aW9uIh4KDFNjcmlwdFBvbGljeRIOCgZzY3JpcHQYASABKAkiYwocU2VhcmNoRXh0ZXJuYWxTb3VyY2VzUmVxdWVzdBINCgVxdWVyeRgBIAEoCRI0Cgxzb3VyY2VfdHlwZXMYAiADKA4yHi5wdWJsaWNfYXBpLkV4dGVybmFsU291cmNlVHlwZSJMCh1TZWFyY2hFeHRlcm5hbFNvdXJjZXNSZXNwb25zZRIrCgdzb3VyY2VzGAEgAygLMhoucHVibGljX2FwaS5FeHRlcm5hbFNvdXJjZSJECgxTZXNzaW9uVXNhZ2USNAoLdG90YWxfdXNhZ2UYASABKAsyHy5wdWJsaWNfYXBpLlNlc3Npb25Vc2FnZU1ldHJpY3MiuAEKE1Nlc3Npb25Vc2FnZU1ldHJpY3MSIwobZXN0aW1hdGVkX2N1c3RvbWVyX2Nvc3RfdXNkGAEgASgJEhgKEGNyZWRpdHNfY29uc3VtZWQYAiABKAkSFAoMaW5wdXRfdG9rZW5zGAMgASgEEhUKDW91dHB1dF90b2tlbnMYBCABKAQSGQoRY2FjaGVfcmVhZF90b2tlbnMYBSABKAQSGgoSY2FjaGVfd3JpdGVfdG9rZW5zGAYgASgEIiAKEFNpbXBsZVBlcm1pc3Npb24SDAoEdHlwZRgBIAEoCSI8CgVTa2lsbBIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhAKCGxvY2F0aW9uGAMgASgJIuACChRTbWFydFBhc3RlUmVzb2x1dGlvbhISCgpyZXF1ZXN0X2lkGAEgASgJEhoKEmlzX2FjY2VwdGVkX2NodW5rcxgCIAMoCBIVCg1pc19hY2NlcHRfYWxsGAMgASgIEhUKDWlzX3JlamVjdF9hbGwYBCABKAgSIAoYaW5pdGlhbF9yZXF1ZXN0X3RpbWVfc2VjGAUgASgDEiEKGWluaXRpYWxfcmVxdWVzdF90aW1lX25zZWMYBiABKAUSHgoWc3RyZWFtX2ZpbmlzaF90aW1lX3NlYxgHIAEoAxIfChdzdHJlYW1fZmluaXNoX3RpbWVfbnNlYxgIIAEoBRIWCg5hcHBseV90aW1lX3NlYxgJIAEoAxIXCg9hcHBseV90aW1lX25zZWMYCiABKAUSGAoQcmVzb2x2ZV90aW1lX3NlYxgLIAEoAxIZChFyZXNvbHZlX3RpbWVfbnNlYxgMIAEoBSIeChxTbWFydFBhc3RlUmVzb2x1dGlvblJlc3BvbnNlIjoKF1N5c3RlbVByb21wdFJlcGxhY2VtZW50Eg4KBnNlYXJjaBgBIAEoCRIPCgdyZXBsYWNlGAIgASgJIjYKDlRhYlN3aXRjaEV2ZW50EgwKBHBhdGgYASABKAkSFgoOZmlsZV9ibG9iX25hbWUYAiABKAkiSwoJVGFnRmlsdGVyEgsKA2tleRgBIAEoCRIOCgZ2YWx1ZXMYAiADKAkSEQoJbWF0Y2hfYW55GAMgASgIEg4KBmludmVydBgEIAEoCCLlAgoMVGVuYW50U2VjcmV0EgwKBG5hbWUYASABKAkSDQoFdmFsdWUYAiABKAkSMAoEdGFncxgDIAMoCzIiLnB1YmxpY19hcGkuVGVuYW50U2VjcmV0LlRhZ3NFbnRyeRIuCgpjcmVhdGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBITCgtkZXNjcmlwdGlvbhgGIAEoCRIPCgd2ZXJzaW9uGAcgASgJEhgKEHZhbHVlX3NpemVfYnl0ZXMYCCABKAUSEgoKY3JlYXRlZF9ieRgJIAEoCRIRCglzZWNyZXRfaWQYCiABKAkSEgoKb2xhY19yZWFkeRgLIAEoCBorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJGCgxUZXJtaW5hbEluZm8SEwoLdGVybWluYWxfaWQYASABKA0SIQoZY3VycmVudF93b3JraW5nX2RpcmVjdG9yeRgCIAEoCSJGChlUZXN0VG9vbENvbm5lY3Rpb25SZXF1ZXN0EikKB3Rvb2xfaWQYASABKA4yGC5wdWJsaWNfYXBpLlJlbW90ZVRvb2xJZCJSChpUZXN0VG9vbENvbm5lY3Rpb25SZXNwb25zZRI0CgZzdGF0dXMYASABKA4yJC5wdWJsaWNfYXBpLlRlc3RUb29sQ29ubmVjdGlvblN0YXR1cyJOCg5Ub29sRGVmaW5pdGlvbhIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhkKEWlucHV0X3NjaGVtYV9qc29uGAMgASgJIocCChJUb29sUGVybWlzc2lvblJ1bGUSOQoRc2ltcGxlX3Blcm1pc3Npb24YAiABKAsyHC5wdWJsaWNfYXBpLlNpbXBsZVBlcm1pc3Npb25IABIzCg53ZWJob29rX3BvbGljeRgDIAEoCzIZLnB1YmxpY19hcGkuV2ViaG9va1BvbGljeUgAEjEKDXNjcmlwdF9wb2xpY3kYBCABKAsyGC5wdWJsaWNfYXBpLlNjcmlwdFBvbGljeUgAEhEKCXRvb2xfbmFtZRgBIAEoCRISCgpldmVudF90eXBlGAUgASgJEhkKEXNoZWxsX2lucHV0X3JlZ2V4GAYgASgJQgwKCnBlcm1pc3Npb24iSAoXVG9vbFBlcm1pc3Npb25zU2V0dGluZ3MSLQoFcnVsZXMYASADKAsyHi5wdWJsaWNfYXBpLlRvb2xQZXJtaXNzaW9uUnVsZSLEAQoVVG9vbFJlc3VsdENvbnRlbnROb2RlEjMKBHR5cGUYASABKA4yJS5wdWJsaWNfYXBpLlRvb2xSZXN1bHRDb250ZW50Tm9kZVR5cGUSGQoMdGV4dF9jb250ZW50GAIgASgJSACIAQESOAoNaW1hZ2VfY29udGVudBgDIAEoCzIcLnB1YmxpY19hcGkuQ2hhdFJlcXVlc3RJbWFnZUgBiAEBQg8KDV90ZXh0X2NvbnRlbnRCEAoOX2ltYWdlX2NvbnRlbnQi3wIKB1RyaWdnZXISEgoKdHJpZ2dlcl9pZBgBIAEoCRI3Cg1jb25maWd1cmF0aW9uGAIgASgLMiAucHVibGljX2FwaS5UcmlnZ2VyQ29uZmlndXJhdGlvbhIuCgpjcmVhdGVkX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIXCg9leGVjdXRpb25fY291bnQYBSABKA0SOgoRbGFzdF9leGVjdXRpb25fYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQESIgoVbGFzdF9leGVjdXRpb25fc3RhdHVzGAcgASgJSAGIAQFCFAoSX2xhc3RfZXhlY3V0aW9uX2F0QhgKFl9sYXN0X2V4ZWN1dGlvbl9zdGF0dXMimAIKEVRyaWdnZXJDb25kaXRpb25zEi4KBHR5cGUYASABKA4yIC5wdWJsaWNfYXBpLlRyaWdnZXJDb25kaXRpb25UeXBlEjgKBmdpdGh1YhgCIAEoCzIjLnB1YmxpY19hcGkuR2l0SHViVHJpZ2dlckNvbmRpdGlvbnNIAIgBARI4CgZsaW5lYXIYAyABKAsyIy5wdWJsaWNfYXBpLkxpbmVhclRyaWdnZXJDb25kaXRpb25zSAGIAQESPAoIc2NoZWR1bGUYBCABKAsyJS5wdWJsaWNfYXBpLlNjaGVkdWxlVHJpZ2dlckNvbmRpdGlvbnNIAogBAUIJCgdfZ2l0aHViQgkKB19saW5lYXJCCwoJX3NjaGVkdWxlIocDChRUcmlnZ2VyQ29uZmlndXJhdGlvbhIMCgRuYW1lGAEgASgJEhgKC2Rlc2NyaXB0aW9uGAIgASgJSACIAQESLQoMZXZlbnRfc291cmNlGAMgASgOMhcucHVibGljX2FwaS5FdmVudFNvdXJjZRIxCgpjb25kaXRpb25zGAQgASgLMh0ucHVibGljX2FwaS5UcmlnZ2VyQ29uZGl0aW9ucxItCgxhZ2VudF9jb25maWcYBSABKAsyFy5wdWJsaWNfYXBpLkFnZW50Q29uZmlnEhQKB2VuYWJsZWQYBiABKAhIAYgBARIYCgt0ZW1wbGF0ZV9pZBgHIAEoCUgCiAEBEhoKDXRlbXBsYXRlX25hbWUYCCABKAlIA4gBARIaCg10ZW1wbGF0ZV9qc29uGAkgASgJSASIAQFCDgoMX2Rlc2NyaXB0aW9uQgoKCF9lbmFibGVkQg4KDF90ZW1wbGF0ZV9pZEIQCg5fdGVtcGxhdGVfbmFtZUIQCg5fdGVtcGxhdGVfanNvbiLUAgoQVHJpZ2dlckV4ZWN1dGlvbhIUCgxleGVjdXRpb25faWQYASABKAkSEgoKdHJpZ2dlcl9pZBgCIAEoCRIQCghldmVudF9pZBgDIAEoCRIcCg9yZW1vdGVfYWdlbnRfaWQYBCABKAlIAIgBARIuCgpzdGFydGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI1Cgxjb21wbGV0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESGgoNZXJyb3JfbWVzc2FnZRgHIAEoCUgCiAEBEhoKDWV2ZW50X3BheWxvYWQYCCABKAlIA4gBAUISChBfcmVtb3RlX2FnZW50X2lkQg8KDV9jb21wbGV0ZWRfYXRCEAoOX2Vycm9yX21lc3NhZ2VCEAoOX2V2ZW50X3BheWxvYWQiMQobVW5waW5Qb3NlaWRvblNlc3Npb25SZXF1ZXN0EhIKCnNlc3Npb25faWQYASABKAkiHgocVW5waW5Qb3NlaWRvblNlc3Npb25SZXNwb25zZSKOAQoZVXBkYXRlQ29udmVyc2F0aW9uUmVxdWVzdBIUCgx3b3Jrc3BhY2VfaWQYASABKAkSFwoPY29udmVyc2F0aW9uX2lkGAIgASgJEhIKBXRpdGxlGAMgASgJSACIAQESFgoJaXNfcGlubmVkGAQgASgISAGIAQFCCAoGX3RpdGxlQgwKCl9pc19waW5uZWQiUAoaVXBkYXRlQ29udmVyc2F0aW9uUmVzcG9uc2USMgoMY29udmVyc2F0aW9uGAEgASgLMhwucHVibGljX2FwaS5Db252ZXJzYXRpb25JbmZvIkQKI1VwZGF0ZVBvc2VpZG9uVGVuYW50U2V0dGluZ3NSZXF1ZXN0Eh0KFWRlZmF1bHRfYmFzZV9pbWFnZV9pZBgBIAEoCSImCiRVcGRhdGVQb3NlaWRvblRlbmFudFNldHRpbmdzUmVzcG9uc2UiQwohVXBkYXRlUG9zZWlkb25Vc2VyU2V0dGluZ3NSZXF1ZXN0Eh4KFmRlZmF1bHRfZW52aXJvbm1lbnRfaWQYASABKAkiJAoiVXBkYXRlUG9zZWlkb25Vc2VyU2V0dGluZ3NSZXNwb25zZSJZChhVcGRhdGVSZW1vdGVBZ2VudFJlcXVlc3QSFwoPcmVtb3RlX2FnZW50X2lkGAEgASgJEhYKCW5ld190aXRsZRgCIAEoCUgAiAEBQgwKCl9uZXdfdGl0bGUiQwoZVXBkYXRlUmVtb3RlQWdlbnRSZXNwb25zZRImCgVhZ2VudBgBIAEoCzIXLnB1YmxpY19hcGkuUmVtb3RlQWdlbnQiYwoUVXBkYXRlVHJpZ2dlclJlcXVlc3QSEgoKdHJpZ2dlcl9pZBgBIAEoCRI3Cg1jb25maWd1cmF0aW9uGAIgASgLMiAucHVibGljX2FwaS5UcmlnZ2VyQ29uZmlndXJhdGlvbiI9ChVVcGRhdGVUcmlnZ2VyUmVzcG9uc2USJAoHdHJpZ2dlchgBIAEoCzITLnB1YmxpY19hcGkuVHJpZ2dlciI8ChZVcGRhdGVXb3Jrc3BhY2VSZXF1ZXN0EhQKDHdvcmtzcGFjZV9pZBgBIAEoCRIMCgRuYW1lGAIgASgJIkcKF1VwZGF0ZVdvcmtzcGFjZVJlc3BvbnNlEiwKCXdvcmtzcGFjZRgBIAEoCzIZLnB1YmxpY19hcGkuV29ya3NwYWNlSW5mbyJRCgpVcGxvYWRCbG9iEg8KB2NvbnRlbnQYASABKAkSDAoEcGF0aBgCIAEoCRIWCglibG9iX25hbWUYAyABKAlIAIgBAUIMCgpfYmxvYl9uYW1lIl8KHFVwc2VydE1jcFRlbmFudENvbmZpZ1JlcXVlc3QSJQoGY29uZmlnGAEgASgLMhUucHVibGljX2FwaS5NY3BDb25maWcSGAoQZXhwZWN0ZWRfdmVyc2lvbhgCIAEoCSJBCh1VcHNlcnRNY3BUZW5hbnRDb25maWdSZXNwb25zZRIPCgdjcmVhdGVkGAEgASgIEg8KB3ZlcnNpb24YAiABKAkiXQoaVXBzZXJ0TWNwVXNlckNvbmZpZ1JlcXVlc3QSJQoGY29uZmlnGAEgASgLMhUucHVibGljX2FwaS5NY3BDb25maWcSGAoQZXhwZWN0ZWRfdmVyc2lvbhgCIAEoCSI/ChtVcHNlcnRNY3BVc2VyQ29uZmlnUmVzcG9uc2USDwoHY3JlYXRlZBgBIAEoCBIPCgd2ZXJzaW9uGAIgASgJIvEBChlVcHNlcnRUZW5hbnRTZWNyZXRSZXF1ZXN0EgwKBG5hbWUYASABKAkSDQoFdmFsdWUYAiABKAkSPQoEdGFncxgDIAMoCzIvLnB1YmxpY19hcGkuVXBzZXJ0VGVuYW50U2VjcmV0UmVxdWVzdC5UYWdzRW50cnkSEwoLZGVzY3JpcHRpb24YBCABKAkSGAoQZXhwZWN0ZWRfdmVyc2lvbhgFIAEoCRIcChRtYXhfdmFsdWVfc2l6ZV9ieXRlcxgGIAEoBRorCglUYWdzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJGChpVcHNlcnRUZW5hbnRTZWNyZXRSZXNwb25zZRIoCgZzZWNyZXQYASABKAsyGC5wdWJsaWNfYXBpLlRlbmFudFNlY3JldCKiBAoXVXBzZXJ0VXNlclNlY3JldFJlcXVlc3QSDAoEbmFtZRgBIAEoCRINCgV2YWx1ZRgCIAEoCRI7CgR0YWdzGAMgAygLMi0ucHVibGljX2FwaS5VcHNlcnRVc2VyU2VjcmV0UmVxdWVzdC5UYWdzRW50cnkSEwoLZGVzY3JpcHRpb24YBCABKAkSGAoQZXhwZWN0ZWRfdmVyc2lvbhgFIAEoCRIcChRtYXhfdmFsdWVfc2l6ZV9ieXRlcxgGIAEoBRImCgVzY29wZRgHIAEoDjIXLnB1YmxpY19hcGkuU2VjcmV0U2NvcGUSFQoIc3BhY2VfaWQYCCABKAlIAIgBARI7Cg1hcHBsaWNhYmlsaXR5GAkgASgOMh8ucHVibGljX2FwaS5TZWNyZXRBcHBsaWNhYmlsaXR5SAGIAQESEQoJc3BhY2VfaWRzGAogAygJEhIKCmFsbF9zcGFjZXMYCyABKAgSFQoNdXBkYXRlX3NwYWNlcxgMIAEoCBIRCglzZWNyZXRfaWQYDSABKAkSEwoLdXBkYXRlX3RhZ3MYDiABKAgSGgoSdXBkYXRlX2Rlc2NyaXB0aW9uGA8gASgIEhYKDnByZXNlcnZlX3ZhbHVlGBAgASgIGisKCVRhZ3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBQgsKCV9zcGFjZV9pZEIQCg5fYXBwbGljYWJpbGl0eSJCChhVcHNlcnRVc2VyU2VjcmV0UmVzcG9uc2USJgoGc2VjcmV0GAEgASgLMhYucHVibGljX2FwaS5Vc2VyU2VjcmV0IvgDCgpVc2VyU2VjcmV0EgwKBG5hbWUYASABKAkSDQoFdmFsdWUYAiABKAkSLgoEdGFncxgDIAMoCzIgLnB1YmxpY19hcGkuVXNlclNlY3JldC5UYWdzRW50cnkSLgoKY3JlYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASEwoLZGVzY3JpcHRpb24YBiABKAkSDwoHdmVyc2lvbhgHIAEoCRIYChB2YWx1ZV9zaXplX2J5dGVzGAggASgFEiYKBXNjb3BlGAkgASgOMhcucHVibGljX2FwaS5TZWNyZXRTY29wZRIVCghzcGFjZV9pZBgKIAEoCUgAiAEBEhEKCXNlY3JldF9pZBgLIAEoCRISCgpvbGFjX3JlYWR5GAwgASgIEjYKDWFwcGxpY2FiaWxpdHkYDSABKA4yHy5wdWJsaWNfYXBpLlNlY3JldEFwcGxpY2FiaWxpdHkSEQoJc3BhY2VfaWRzGA4gAygJEhIKCmFsbF9zcGFjZXMYDyABKAgaKwoJVGFnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCCwoJX3NwYWNlX2lkIs4BChJWaWV3ZWRDb250ZW50RXZlbnQSDAoEcGF0aBgBIAEoCRIWCg5maWxlX2Jsb2JfbmFtZRgCIAEoCRIXCg92aXNpYmxlX2NvbnRlbnQYAyABKAkSEgoKbGluZV9zdGFydBgEIAEoDRIQCghsaW5lX2VuZBgFIAEoDRISCgpjaGFyX3N0YXJ0GAYgASgNEhAKCGNoYXJfZW5kGAcgASgNEi0KCXRpbWVzdGFtcBgIIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiJAoNV2ViaG9va1BvbGljeRITCgt3ZWJob29rX3VybBgBIAEoCSJNChJXb3Jrc3BhY2VGaWxlQ2h1bmsSEgoKY2hhcl9zdGFydBgBIAEoBRIQCghjaGFyX2VuZBgCIAEoBRIRCglibG9iX25hbWUYAyABKAkiQwoTV29ya3NwYWNlRm9sZGVySW5mbxIXCg9yZXBvc2l0b3J5X3Jvb3QYASABKAkSEwoLZm9sZGVyX3Jvb3QYAiABKAkiwQEKDVdvcmtzcGFjZUluZm8SFAoMd29ya3NwYWNlX2lkGAEgASgJEgwKBG5hbWUYAiABKAkSMwoKY3JlYXRlZF9hdBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARIzCgp1cGRhdGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgBiAEBQg0KC19jcmVhdGVkX2F0Qg0KC191cGRhdGVkX2F0SgQIBRAGIooCCg5Xb3Jrc3BhY2VTZXR1cBIrCgpnaXRodWJfcmVmGAEgASgLMhUucHVibGljX2FwaS5HaXRodWJSZWZIABISCgVwYXRjaBgCIAEoCUgBiAEBEhkKDHNldHVwX3NjcmlwdBgDIAEoCUgCiAEBEj0KCmdpdF9jb25maWcYBCADKAsyKS5wdWJsaWNfYXBpLldvcmtzcGFjZVNldHVwLkdpdENvbmZpZ0VudHJ5GjAKDkdpdENvbmZpZ0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCEAoOc3RhcnRpbmdfZmlsZXNCCAoGX3BhdGNoQg8KDV9zZXR1cF9zY3JpcHQqXAoUQWdlbnRDYXBhYmlsaXR5U2NvcGUSIQodQUdFTlRfQ0FQQUJJTElUWV9TQ09QRV9HTE9CQUwQABIhCh1BR0VOVF9DQVBBQklMSVRZX1NDT1BFX1RFTkFOVBABKqIBChZBZ2VudEhpc3RvcnlVcGRhdGVUeXBlEikKJUFHRU5UX0hJU1RPUllfVVBEQVRFX1RZUEVfVU5TUEVDSUZJRUQQABIaChZBR0VOVF9ISVNUT1JZX0VYQ0hBTkdFEAESIQodQUdFTlRfSElTVE9SWV9FWENIQU5HRV9VUERBVEUQAhIeChpBR0VOVF9ISVNUT1JZX0FHRU5UX1NUQVRVUxADKrABChNBZ2VudExpc3RVcGRhdGVUeXBlEiYKIkFHRU5UX0xJU1RfVVBEQVRFX1RZUEVfVU5TUEVDSUZJRUQQABIaChZBR0VOVF9MSVNUX0FHRU5UX0FEREVEEAESHAoYQUdFTlRfTElTVF9BR0VOVF9VUERBVEVEEAISHAoYQUdFTlRfTElTVF9BR0VOVF9ERUxFVEVEEAMSGQoVQUdFTlRfTElTVF9BTExfQUdFTlRTEAQqcQoRQWdlbnRQZXJzb25hU2NvcGUSHgoaQUdFTlRfUEVSU09OQV9TQ09QRV9HTE9CQUwQABIeChpBR0VOVF9QRVJTT05BX1NDT1BFX1RFTkFOVBABEhwKGEFHRU5UX1BFUlNPTkFfU0NPUEVfVVNFUhACKpYBChhBZ2VudFdvcmtzcGFjZVVwZGF0ZVR5cGUSKwonQUdFTlRfV09SS1NQQUNFX1VQREFURV9UWVBFX1VOU1BFQ0lGSUVEEAASJAogQUdFTlRfV09SS1NQQUNFX1VQREFURV9JTlRFUlJVUFQQARInCiNBR0VOVF9XT1JLU1BBQ0VfVVBEQVRFX0NIQVRfUkVRVUVTVBACKm8KEEFuYWx5dGljc1RhZ1R5cGUSHgoaQU5BTFlUSUNTX1RBR19UWVBFX1VOS05PV04QABIbChdBTkFMWVRJQ1NfVEFHX1RZUEVfQ09TVBABEh4KGkFOQUxZVElDU19UQUdfVFlQRV9PVVRDT01FEAIqvQEKE0NoYXRSZXF1ZXN0Tm9kZVR5cGUSCAoEVEVYVBAAEg8KC1RPT0xfUkVTVUxUEAESCQoFSU1BR0UQAhIMCghJTUFHRV9JRBADEg0KCUlERV9TVEFURRAEEg8KC0VESVRfRVZFTlRTEAUSEgoOQ0hFQ0tQT0lOVF9SRUYQBhISCg5DSEFUX05PREVfRklMRRAIEhUKEUNIQVRfTk9ERV9GSUxFX0lEEAkSEwoPSElTVE9SWV9TVU1NQVJZEAoq6wEKEkNoYXRSZXN1bHROb2RlVHlwZRIQCgxSQVdfUkVTUE9OU0UQABIXChNTVUdHRVNURURfUVVFU1RJT05TEAESFgoSTUFJTl9URVhUX0ZJTklTSEVEEAISGQoVV09SS1NQQUNFX0ZJTEVfQ0hVTktTEAMSFAoQUkVMRVZBTlRfU09VUkNFUxAEEgwKCFRPT0xfVVNFEAUSEgoOVE9PTF9VU0VfU1RBUlQQBxIMCghUSElOS0lORxAIEhQKEEJJTExJTkdfTUVUQURBVEEQCRIPCgtUT0tFTl9VU0FHRRAKIgQIBhAGIgQICxALKq4BCg5DaGF0U3RvcFJlYXNvbhIWChJSRUFTT05fVU5TUEVDSUZJRUQQABIMCghFTkRfVFVSThABEg4KCk1BWF9UT0tFTlMQAhIWChJUT09MX1VTRV9SRVFVRVNURUQQAxIKCgZTQUZFVFkQBBIOCgpSRUNJVEFUSU9OEAUSGwoXTUFMRk9STUVEX0ZVTkNUSU9OX0NBTEwQBhIVChFTVE9QX1JFQVNPTl9FUlJPUhAHKsoBChRDbG91ZEFnZW50Q2FwYWJpbGl0eRIiCh5DTE9VRF9BR0VOVF9DQVBBQklMSVRZX1VOS05PV04QABIlCiFDTE9VRF9BR0VOVF9DQVBBQklMSVRZX1dFQl9BQ0NFU1MQARIeChpDTE9VRF9BR0VOVF9DQVBBQklMSVRZX01DUBACEiQKIENMT1VEX0FHRU5UX0NBUEFCSUxJVFlfQ0xJX1RPT0xTEAQSIQodQ0xPVURfQUdFTlRfQ0FQQUJJTElUWV9HSVRIVUIQBSp+ChJDbG91ZEFnZW50TG9vcFR5cGUSJQohQ0xPVURfQUdFTlRfTE9PUF9UWVBFX1VOU1BFQ0lGSUVEEAASHwobQ0xPVURfQUdFTlRfTE9PUF9UWVBFX1NBTFNBEAESIAocQ0xPVURfQUdFTlRfTE9PUF9UWVBFX0FVR0dJRRACKoICChBDbG91ZEFnZW50U3RhdHVzEh4KGkNMT1VEX0FHRU5UX1NUQVRVU19VTktOT1dOEAASGwoXQ0xPVURfQUdFTlRfU1RBVFVTX0lETEUQARIhCh1DTE9VRF9BR0VOVF9TVEFUVVNfUFJPQ0VTU0lORxACEiEKHUNMT1VEX0FHRU5UX1NUQVRVU19URVJNSU5BVEVEEAMSIAocQ0xPVURfQUdFTlRfU1RBVFVTX0NPTVBMRVRFRBAEEh8KG0NMT1VEX0FHRU5UX1NUQVRVU19TVEFSVElORxAFEigKJENMT1VEX0FHRU5UX1NUQVRVU19XQUlUSU5HX0ZPUl9JTlBVVBAGKucBCidDbG91ZERhZW1vblBvb2xXb3Jrc3BhY2VJc29sYXRpb25Qb2xpY3kSPAo4Q0xPVURfREFFTU9OX1BPT0xfV09SS1NQQUNFX0lTT0xBVElPTl9QT0xJQ1lfVU5TUEVDSUZJRUQQABI/CjtDTE9VRF9EQUVNT05fUE9PTF9XT1JLU1BBQ0VfSVNPTEFUSU9OX1BPTElDWV9GT1JDRV9JU09MQVRFRBABEj0KOUNMT1VEX0RBRU1PTl9QT09MX1dPUktTUEFDRV9JU09MQVRJT05fUE9MSUNZX0ZPUkNFX1NIQVJFRBACKrkBChRDbG91ZEVudmlyb25tZW50S2luZBImCiJDTE9VRF9FTlZJUk9OTUVOVF9LSU5EX1VOU1BFQ0lGSUVEEAASJQohQ0xPVURfRU5WSVJPTk1FTlRfS0lORF9CQVNFX0lNQUdFEAESJgoiQ0xPVURfRU5WSVJPTk1FTlRfS0lORF9EQUVNT05fUE9PTBACEioKJkNMT1VEX0VOVklST05NRU5UX0tJTkRfVU5QT09MRURfREFFTU9OEAMqlgUKG0Nsb3VkRW52aXJvbm1lbnRMaXN0T3JkZXJCeRIvCitDTE9VRF9FTlZJUk9OTUVOVF9MSVNUX09SREVSX0JZX1VOU1BFQ0lGSUVEEAASLAooQ0xPVURfRU5WSVJPTk1FTlRfTElTVF9PUkRFUl9CWV9OQU1FX0FTQxABEi0KKUNMT1VEX0VOVklST05NRU5UX0xJU1RfT1JERVJfQllfTkFNRV9ERVNDEAISMgouQ0xPVURfRU5WSVJPTk1FTlRfTElTVF9PUkRFUl9CWV9DUkVBVEVEX0JZX0FTQxADEjMKL0NMT1VEX0VOVklST05NRU5UX0xJU1RfT1JERVJfQllfQ1JFQVRFRF9CWV9ERVNDEAQSLAooQ0xPVURfRU5WSVJPTk1FTlRfTElTVF9PUkRFUl9CWV9TSVpFX0FTQxAFEi0KKUNMT1VEX0VOVklST05NRU5UX0xJU1RfT1JERVJfQllfU0laRV9ERVNDEAYSLQopQ0xPVURfRU5WSVJPTk1FTlRfTElTVF9PUkRFUl9CWV9SRVBPU19BU0MQBxIuCipDTE9VRF9FTlZJUk9OTUVOVF9MSVNUX09SREVSX0JZX1JFUE9TX0RFU0MQCBIvCitDTE9VRF9FTlZJUk9OTUVOVF9MSVNUX09SREVSX0JZX1VQREFURURfQVNDEAkSMAosQ0xPVURfRU5WSVJPTk1FTlRfTElTVF9PUkRFUl9CWV9VUERBVEVEX0RFU0MQChIvCitDTE9VRF9FTlZJUk9OTUVOVF9MSVNUX09SREVSX0JZX0NSRUFURURfQVNDEAsSMAosQ0xPVURfRU5WSVJPTk1FTlRfTElTVF9PUkRFUl9CWV9DUkVBVEVEX0RFU0MQDCqdAQoZQ2xvdWRFbnZpcm9ubWVudExpc3RTY29wZRIsCihDTE9VRF9FTlZJUk9OTUVOVF9MSVNUX1NDT1BFX1VOU1BFQ0lGSUVEEAASKQolQ0xPVURfRU5WSVJPTk1FTlRfTElTVF9TQ09QRV9QRVJTT05BTBABEicKI0NMT1VEX0VOVklST05NRU5UX0xJU1RfU0NPUEVfU0hBUkVEEAIq+wMKIkNsb3VkRW52aXJvbm1lbnRPcGVyYXRpb25FcnJvckNvZGUSNgoyQ0xPVURfRU5WSVJPTk1FTlRfT1BFUkFUSU9OX0VSUk9SX0NPREVfVU5TUEVDSUZJRUQQABI3CjNDTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fRVJST1JfQ09ERV9CVUlMRF9GQUlMRUQQARJACjxDTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fRVJST1JfQ09ERV9FWEVDVVRJT05fSU5URVJSVVBURUQQAhIzCi9DTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fRVJST1JfQ09ERV9JTlRFUk5BTBADEjsKN0NMT1VEX0VOVklST05NRU5UX09QRVJBVElPTl9FUlJPUl9DT0RFX1ZFUlNJT05fQ09ORkxJQ1QQBBI5CjVDTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fRVJST1JfQ09ERV9SRUZSRVNIX0ZBSUxFRBAFEjsKN0NMT1VEX0VOVklST05NRU5UX09QRVJBVElPTl9FUlJPUl9DT0RFX1JFQ09OQ0lMRV9GQUlMRUQQBhI4CjRDTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fRVJST1JfQ09ERV9VUERBVEVfRkFJTEVEEAcq9wIKHkNsb3VkRW52aXJvbm1lbnRPcGVyYXRpb25QaGFzZRIxCi1DTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fUEhBU0VfVU5TUEVDSUZJRUQQABIsCihDTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fUEhBU0VfUVVFVUVEEAESLworQ0xPVURfRU5WSVJPTk1FTlRfT1BFUkFUSU9OX1BIQVNFX1BSRVBBUklORxACEi4KKkNMT1VEX0VOVklST05NRU5UX09QRVJBVElPTl9QSEFTRV9CVUlMRElORxADEi8KK0NMT1VEX0VOVklST05NRU5UX09QRVJBVElPTl9QSEFTRV9QUk9NT1RJTkcQBBIuCipDTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fUEhBU0VfVVBEQVRJTkcQBiIECAUQBSosQ0xPVURfRU5WSVJPTk1FTlRfT1BFUkFUSU9OX1BIQVNFX1JFRlJFU0hJTkcq+AIKHkNsb3VkRW52aXJvbm1lbnRPcGVyYXRpb25TdGF0ZRIxCi1DTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fU1RBVEVfVU5TUEVDSUZJRUQQABItCilDTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fU1RBVEVfUEVORElORxABEi0KKUNMT1VEX0VOVklST05NRU5UX09QRVJBVElPTl9TVEFURV9SVU5OSU5HEAISNgoyQ0xPVURfRU5WSVJPTk1FTlRfT1BFUkFUSU9OX1NUQVRFX0NBTkNFTF9SRVFVRVNURUQQAxIvCitDTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fU1RBVEVfU1VDQ0VFREVEEAQSLAooQ0xPVURfRU5WSVJPTk1FTlRfT1BFUkFUSU9OX1NUQVRFX0ZBSUxFRBAFEi4KKkNMT1VEX0VOVklST05NRU5UX09QRVJBVElPTl9TVEFURV9DQU5DRUxFRBAGKtcCCh1DbG91ZEVudmlyb25tZW50T3BlcmF0aW9uVHlwZRIwCixDTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fVFlQRV9VTlNQRUNJRklFRBAAEjcKM0NMT1VEX0VOVklST05NRU5UX09QRVJBVElPTl9UWVBFX0JBU0VfSU1BR0VfUkVCVUlMRBABEjUKMUNMT1VEX0VOVklST05NRU5UX09QRVJBVElPTl9UWVBFX0JBU0VfSU1BR0VfQlVJTEQQAhIsCihDTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fVFlQRV9SRUZSRVNIEAMSOQo1Q0xPVURfRU5WSVJPTk1FTlRfT1BFUkFUSU9OX1RZUEVfUkVQT1NJVE9SWV9SRUNPTkNJTEUQBBIrCidDTE9VRF9FTlZJUk9OTUVOVF9PUEVSQVRJT05fVFlQRV9VUERBVEUQBSqDAgoWQ2xvdWRFbnZpcm9ubWVudFN0YXR1cxIoCiRDTE9VRF9FTlZJUk9OTUVOVF9TVEFUVVNfVU5TUEVDSUZJRUQQABIjCh9DTE9VRF9FTlZJUk9OTUVOVF9TVEFUVVNfQUNUSVZFEAESJQohQ0xPVURfRU5WSVJPTk1FTlRfU1RBVFVTX0JVSUxESU5HEAISIwofQ0xPVURfRU5WSVJPTk1FTlRfU1RBVFVTX0ZBSUxFRBADEicKI0NMT1VEX0VOVklST05NRU5UX1NUQVRVU19ERVBSRUNBVEVEEAQSJQohQ0xPVURfRU5WSVJPTk1FTlRfU1RBVFVTX0RFTEVUSU5HEAUq6AkKHENsb3VkRXhwZXJ0QnVpbHRpbkNhcGFiaWxpdHkSKwonQ0xPVURfRVhQRVJUX0JVSUxUSU5fQ0FQQUJJTElUWV9VTktOT1dOEAASLgoqQ0xPVURfRVhQRVJUX0JVSUxUSU5fQ0FQQUJJTElUWV9XRUJfQUNDRVNTEAESLQopQ0xPVURfRVhQRVJUX0JVSUxUSU5fQ0FQQUJJTElUWV9DTElfVE9PTFMQBBIqCiZDTE9VRF9FWFBFUlRfQlVJTFRJTl9DQVBBQklMSVRZX0dJVEhVQhAHEioKJkNMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfTElORUFSEAgSKAokQ0xPVURfRVhQRVJUX0JVSUxUSU5fQ0FQQUJJTElUWV9FQ0hPEAkSKQolQ0xPVURfRVhQRVJUX0JVSUxUSU5fQ0FQQUJJTElUWV9TTEFDSxALEi4KKkNMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfR0lUSFVCX0FQUBAMEi4KKkNMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfTElORUFSX0FQUBANEjIKLkNMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfQ1VTVE9NX1dFQkhPT0sQExIqCiZDTE9VRF9FWFBFUlRfQlVJTFRJTl9DQVBBQklMSVRZX0dJVExBQhAUEi4KKkNMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfR0lUTEFCX0FQUBAVEigKJENMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfSklSQRAXEi4KKkNMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfQ09ORkxVRU5DRRAYEiwKKENMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfSklSQV9BUFAQGRIyCi5DTE9VRF9FWFBFUlRfQlVJTFRJTl9DQVBBQklMSVRZX0NPTkZMVUVOQ0VfQVBQEBoSKQolQ0xPVURfRVhQRVJUX0JVSUxUSU5fQ0FQQUJJTElUWV9URUFNUxAbEjAKLENMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfQVpVUkVfREVWT1BTEBwSNAowQ0xPVURfRVhQRVJUX0JVSUxUSU5fQ0FQQUJJTElUWV9BWlVSRV9ERVZPUFNfQVBQEB0iBAgCEAIiBAgDEAMiBAgFEAUiBAgGEAYiBAgKEAoiBAgOEA4iBAgPEA8iBAgQEBAiBAgREBEiBAgSEBIiBAgWEBYqLkNMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfR0NQX01PTklUT1JJTkcqK0NMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfR0NQX0xPR0dJTkcqJ0NMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfS1VCRUNUTCopQ0xPVURfRVhQRVJUX0JVSUxUSU5fQ0FQQUJJTElUWV9QQUdFUkRVVFkqKENMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfRU5HX0lORk8qM0NMT1VEX0VYUEVSVF9CVUlMVElOX0NBUEFCSUxJVFlfQ0xPVURfQUdFTlRfQ09OVFJPTCqwAQobQ2xvdWRFeHBlcnRDYXBhYmlsaXR5U291cmNlEi4KKkNMT1VEX0VYUEVSVF9DQVBBQklMSVRZX1NPVVJDRV9VTlNQRUNJRklFRBAAEjcKM0NMT1VEX0VYUEVSVF9DQVBBQklMSVRZX1NPVVJDRV9CVUlMVElOX0NBUEFCSUxJVElFUxABEigKJENMT1VEX0VYUEVSVF9DQVBBQklMSVRZX1NPVVJDRV9OQU1FUxACKpMBCiFDbG91ZEV4cGVydERlcGVuZGVuY3lSZWxhdGlvbnNoaXASNAowQ0xPVURfRVhQRVJUX0RFUEVOREVOQ1lfUkVMQVRJT05TSElQX1VOU1BFQ0lGSUVEEAASOAo0Q0xPVURfRVhQRVJUX0RFUEVOREVOQ1lfUkVMQVRJT05TSElQX1JFUVVJUkVEX1dPUktFUhABKtEBCiFDbG91ZEV4cGVydERlcGVuZGVuY3lSZXBhaXJBY3Rpb24SNQoxQ0xPVURfRVhQRVJUX0RFUEVOREVOQ1lfUkVQQUlSX0FDVElPTl9VTlNQRUNJRklFRBAAEjgKNENMT1VEX0VYUEVSVF9ERVBFTkRFTkNZX1JFUEFJUl9BQ1RJT05fUkVTVE9SRV9UQVJHRVQQARI7CjdDTE9VRF9FWFBFUlRfREVQRU5ERU5DWV9SRVBBSVJfQUNUSU9OX0VESVRfREVQRU5ERU5DSUVTEAIq1gEKG0Nsb3VkRXhwZXJ0RGVwZW5kZW5jeVN0YXR1cxIuCipDTE9VRF9FWFBFUlRfREVQRU5ERU5DWV9TVEFUVVNfVU5TUEVDSUZJRUQQABIqCiZDTE9VRF9FWFBFUlRfREVQRU5ERU5DWV9TVEFUVVNfTUlTU0lORxABEioKJkNMT1VEX0VYUEVSVF9ERVBFTkRFTkNZX1NUQVRVU19ERUxFVEVEEAISLworQ0xPVURfRVhQRVJUX0RFUEVOREVOQ1lfU1RBVFVTX0lOQUNDRVNTSUJMRRADKm4KEENsb3VkRXhwZXJ0U2NvcGUSHgoaQ0xPVURfRVhQRVJUX1NDT1BFX1VOS05PV04QABIdChlDTE9VRF9FWFBFUlRfU0NPUEVfVEVOQU5UEAESGwoXQ0xPVURfRVhQRVJUX1NDT1BFX1VTRVIQAiqoAQocQ2xvdWRFeHBlcnRTZXNzaW9uVmlzaWJpbGl0eRIvCitDTE9VRF9FWFBFUlRfU0VTU0lPTl9WSVNJQklMSVRZX1VOU1BFQ0lGSUVEEAASKgomQ0xPVURfRVhQRVJUX1NFU1NJT05fVklTSUJJTElUWV9TSEFSRUQQARIrCidDTE9VRF9FWFBFUlRfU0VTU0lPTl9WSVNJQklMSVRZX1BSSVZBVEUQAiqpAQoYQ2xvdWRFeHBlcnRWTUltYWdlU291cmNlEiwKKENMT1VEX0VYUEVSVF9WTV9JTUFHRV9TT1VSQ0VfVU5TUEVDSUZJRUQQABInCiNDTE9VRF9FWFBFUlRfVk1fSU1BR0VfU09VUkNFX1BVQkxJQxABEjYKMkNMT1VEX0VYUEVSVF9WTV9JTUFHRV9TT1VSQ0VfR0NQX0FSVElGQUNUX1JFR0lTVFJZEAIqjwEKFENsb3VkR3JvdXBNZW1iZXJLaW5kEicKI0NMT1VEX0dST1VQX01FTUJFUl9LSU5EX1VOU1BFQ0lGSUVEEAASIQodQ0xPVURfR1JPVVBfTUVNQkVSX0tJTkRfSFVNQU4QARIrCidDTE9VRF9HUk9VUF9NRU1CRVJfS0lORF9TRVJWSUNFX0FDQ09VTlQQAip2ChJDbG91ZFJlc2lkZW50U2NvcGUSIAocQ0xPVURfUkVTSURFTlRfU0NPUEVfVU5LTk9XThAAEh8KG0NMT1VEX1JFU0lERU5UX1NDT1BFX1RFTkFOVBABEh0KGUNMT1VEX1JFU0lERU5UX1NDT1BFX1VTRVIQAiqlAQoYQ2xvdWRTYW5kYm94UHJvdmlkZXJUeXBlEisKJ0NMT1VEX1NBTkRCT1hfUFJPVklERVJfVFlQRV9VTlNQRUNJRklFRBAAEi4KKkNMT1VEX1NBTkRCT1hfUFJPVklERVJfVFlQRV9TWVNURU1fTUFOQUdFRBABEiwKKENMT1VEX1NBTkRCT1hfUFJPVklERVJfVFlQRV9VU0VSX01BTkFHRUQQAip2Cg9DbG91ZFR1bm5lbE1vZGUSIQodQ0xPVURfVFVOTkVMX01PREVfVU5TUEVDSUZJRUQQABIhCh1DTE9VRF9UVU5ORUxfTU9ERV9XRUJfUFJFVklFVxABEh0KGUNMT1VEX1RVTk5FTF9NT0RFX0RJU1BMQVkQAiqgAgoRQ2xvdWRUdW5uZWxTdGF0dXMSIwofQ0xPVURfVFVOTkVMX1NUQVRVU19VTlNQRUNJRklFRBAAEh8KG0NMT1VEX1RVTk5FTF9TVEFUVVNfUEVORElORxABEh4KGkNMT1VEX1RVTk5FTF9TVEFUVVNfQUNUSVZFEAISJAogQ0xPVURfVFVOTkVMX1NUQVRVU19ESVNDT05ORUNURUQQAxIfChtDTE9VRF9UVU5ORUxfU1RBVFVTX1JFVk9LRUQQBBIfChtDTE9VRF9UVU5ORUxfU1RBVFVTX0VYUElSRUQQBRIeChpDTE9VRF9UVU5ORUxfU1RBVFVTX0NMT1NFRBAGEh0KGUNMT1VEX1RVTk5FTF9TVEFUVVNfRVJST1IQByprCg5Db21wbGV0aW9uVHlwZRIfChtDT01QTEVUSU9OX1RZUEVfVU5TUEVDSUZJRUQQABIYChRDT01QTEVUSU9OX1RZUEVfQ09ERRABEh4KGkNPTVBMRVRJT05fVFlQRV9DSEFUX0lOUFVUEAIqbgoQQ29udmVyc2F0aW9uVHlwZRIhCh1DT05WRVJTQVRJT05fVFlQRV9VTlNQRUNJRklFRBAAEhoKFkNPTlZFUlNBVElPTl9UWVBFX0NIQVQQARIbChdDT05WRVJTQVRJT05fVFlQRV9BR0VOVBACKo8BChdDb3N0QW5hbHl0aWNzQnlva1N0YXR1cxImCiJDT1NUX0FOQUxZVElDU19CWU9LX1NUQVRVU19VTktOT1dOEAASJwojQ09TVF9BTkFMWVRJQ1NfQllPS19TVEFUVVNfTk9OX0JZT0sQARIjCh9DT1NUX0FOQUxZVElDU19CWU9LX1NUQVRVU19CWU9LEAIqgQIKFENvc3RBbmFseXRpY3NHcm91cEJ5EiMKH0NPU1RfQU5BTFlUSUNTX0dST1VQX0JZX1VOS05PV04QABIgChxDT1NUX0FOQUxZVElDU19HUk9VUF9CWV9VU0VSEAISJwojQ09TVF9BTkFMWVRJQ1NfR1JPVVBfQllfQllPS19TVEFUVVMQBBIkCiBDT1NUX0FOQUxZVElDU19HUk9VUF9CWV9SRVNPVVJDRRAFEiMKH0NPU1RfQU5BTFlUSUNTX0dST1VQX0JZX1BST0RVQ1QQBhIiCh5DT1NUX0FOQUxZVElDU19HUk9VUF9CWV9FWFBFUlQQByIECAEQASIECAMQAyqXAQoZQ29zdEFuYWx5dGljc1Jlc291cmNlVHlwZRIoCiRDT1NUX0FOQUxZVElDU19SRVNPVVJDRV9UWVBFX1VOS05PV04QABImCiJDT1NUX0FOQUxZVElDU19SRVNPVVJDRV9UWVBFX01PREVMEAESKAokQ09TVF9BTkFMWVRJQ1NfUkVTT1VSQ0VfVFlQRV9DT01QVVRFEAIqpwEKGkNvc3RBbmFseXRpY3NUYWdGaWx0ZXJUeXBlEikKJUNPU1RfQU5BTFlUSUNTX1RBR19GSUxURVJfVFlQRV9WQUxVRVMQABIsCihDT1NUX0FOQUxZVElDU19UQUdfRklMVEVSX1RZUEVfQU5ZX1ZBTFVFEAESMAosQ09TVF9BTkFMWVRJQ1NfVEFHX0ZJTFRFUl9UWVBFX01JU1NJTkdfVkFMVUUQAirJAQocQ29zdEFuYWx5dGljc1RpbWVHcmFudWxhcml0eRIrCidDT1NUX0FOQUxZVElDU19USU1FX0dSQU5VTEFSSVRZX1VOS05PV04QABIpCiVDT1NUX0FOQUxZVElDU19USU1FX0dSQU5VTEFSSVRZX1RPVEFMEAESJwojQ09TVF9BTkFMWVRJQ1NfVElNRV9HUkFOVUxBUklUWV9EQVkQAhIoCiRDT1NUX0FOQUxZVElDU19USU1FX0dSQU5VTEFSSVRZX1dFRUsQAyqwAQoVQ29zdEFuYWx5dGljc1VzZXJUeXBlEiQKIENPU1RfQU5BTFlUSUNTX1VTRVJfVFlQRV9VTktOT1dOEAASIQodQ09TVF9BTkFMWVRJQ1NfVVNFUl9UWVBFX1VTRVIQARIsCihDT1NUX0FOQUxZVElDU19VU0VSX1RZUEVfU0VSVklDRV9BQ0NPVU5UEAISIAocQ09TVF9BTkFMWVRJQ1NfVVNFUl9UWVBFX0JPVBADKu0BCghEaWZmVHlwZRIZChVESUZGX1RZUEVfVU5TUEVDSUZJRUQQABIRCg1ESUZGX1RZUEVfRklYEAESFQoRRElGRl9UWVBFX0ZFQVRVUkUQAhIWChJESUZGX1RZUEVfUkVGQUNUT1IQAxIbChdESUZGX1RZUEVfRE9DVU1FTlRBVElPThAEEhMKD0RJRkZfVFlQRV9TVFlMRRAFEhIKDkRJRkZfVFlQRV9URVNUEAYSEwoPRElGRl9UWVBFX0NIT1JFEAcSFAoQRElGRl9UWVBFX1JFVkVSVBAIEhMKD0RJRkZfVFlQRV9PVEhFUhAJKmwKD0VkaXRFdmVudFNvdXJjZRIbChdFRElUX1NPVVJDRV9VTlNQRUNJRklFRBAAEhkKFUVESVRfU09VUkNFX1VTRVJfRURJVBABEiEKHUVESVRfU09VUkNFX0NIRUNLUE9JTlRfUkVWRVJUEAIqmAEKC0V2ZW50U291cmNlEhwKGEVWRU5UX1NPVVJDRV9VTlNQRUNJRklFRBAAEhcKE0VWRU5UX1NPVVJDRV9HSVRIVUIQARIXChNFVkVOVF9TT1VSQ0VfTElORUFSEAISGQoVRVZFTlRfU09VUkNFX1NDSEVEVUxFEAMSHgoaRVZFTlRfU09VUkNFX1NDSEVEVUxFX1RFTVAQBCo/ChJFeHRlcm5hbFNvdXJjZVR5cGUSEgoOVU5LTk9XTl9TT1VSQ0UQABIVChFET0NVTUVOVEFUSU9OX1NFVBABKjcKDkZlZWRiYWNrUmF0aW5nEgkKBVVOU0VUEAASDAoIUE9TSVRJVkUQARIMCghORUdBVElWRRACKoABChBHaXRIdWJFbnRpdHlUeXBlEiIKHkdJVEhVQl9FTlRJVFlfVFlQRV9VTlNQRUNJRklFRBAAEiMKH0dJVEhVQl9FTlRJVFlfVFlQRV9QVUxMX1JFUVVFU1QQARIjCh9HSVRIVUJfRU5USVRZX1RZUEVfV09SS0ZMT1dfUlVOEAIqVQoPSW1hZ2VGb3JtYXRUeXBlEhwKGElNQUdFX0ZPUk1BVF9VTlNQRUNJRklFRBAAEgcKA1BORxABEggKBEpQRUcQAhIHCgNHSUYQAxIICgRXRUJQEAQqVAoQTGluZWFyRW50aXR5VHlwZRIiCh5MSU5FQVJfRU5USVRZX1RZUEVfVU5TUEVDSUZJRUQQABIcChhMSU5FQVJfRU5USVRZX1RZUEVfSVNTVUUQASp4CgtNY3BBdXRoVHlwZRIdChlNQ1BfQVVUSF9UWVBFX1VOU1BFQ0lGSUVEEAASFgoSTUNQX0FVVEhfVFlQRV9OT05FEAESFwoTTUNQX0FVVEhfVFlQRV9PQVVUSBACEhkKFU1DUF9BVVRIX1RZUEVfQVBJX0tFWRADKpMBChRNY3BDYXRhbG9nRW50cnlTdGF0ZRInCiNNQ1BfQ0FUQUxPR19FTlRSWV9TVEFURV9VTlNQRUNJRklFRBAAEiUKIU1DUF9DQVRBTE9HX0VOVFJZX1NUQVRFX0FWQUlMQUJMRRABEisKJ01DUF9DQVRBTE9HX0VOVFJZX1NUQVRFX09QVF9JTl9SRVFVSVJFRBACKmoKDk1jcENvbmZpZ1Njb3BlEiAKHE1DUF9DT05GSUdfU0NPUEVfVU5TUEVDSUZJRUQQABIZChVNQ1BfQ09ORklHX1NDT1BFX1VTRVIQARIbChdNQ1BfQ09ORklHX1NDT1BFX1RFTkFOVBACKm4KDk1jcFByb2R1Y3RUeXBlEiAKHE1DUF9QUk9EVUNUX1RZUEVfVU5TUEVDSUZJRUQQABIYChRNQ1BfUFJPRFVDVF9UWVBFX0NMSRABEiAKHE1DUF9QUk9EVUNUX1RZUEVfQ0xPVURfQUdFTlQQAipoChdOb3RpZmljYXRpb25EaXNwbGF5VHlwZRIcChhESVNQTEFZX1RZUEVfVU5TUEVDSUZJRUQQABIWChJESVNQTEFZX1RZUEVfVE9BU1QQARIXChNESVNQTEFZX1RZUEVfQkFOTkVSEAIqkgEKEU5vdGlmaWNhdGlvbkxldmVsEiIKHk5PVElGSUNBVElPTl9MRVZFTF9VTlNQRUNJRklFRBAAEhsKF05PVElGSUNBVElPTl9MRVZFTF9JTkZPEAESHgoaTk9USUZJQ0FUSU9OX0xFVkVMX1dBUk5JTkcQAhIcChhOT1RJRklDQVRJT05fTEVWRUxfRVJST1IQAyplCg1PdXRjb21lT3JpZ2luEhoKFk9VVENPTUVfT1JJR0lOX1VOS05PV04QABIZChVPVVRDT01FX09SSUdJTl9DT1NNT1MQARIdChlPVVRDT01FX09SSUdJTl9OT05fQ09TTU9TEAIqSAoLUGVyc29uYVR5cGUSCwoHREVGQVVMVBAAEg4KClBST1RPVFlQRVIQARIOCgpCUkFJTlNUT1JNEAISDAoIUkVWSUVXRVIQAyqgAQobUmVtb3RlQWdlbnRSZXN1bWVIaW50UmVhc29uEigKJFJFU1VNRV9BR0VOVF9ISU5UX1JFQVNPTl9VTlNQRUNJRklFRBAAEisKJ1JFU1VNRV9BR0VOVF9ISU5UX1JFQVNPTl9UWVBJTkdfTUVTU0FHRRABEioKJlJFU1VNRV9BR0VOVF9ISU5UX1JFQVNPTl9WSUVXSU5HX0FHRU5UEAIqqwEKEVJlbW90ZUFnZW50U3RhdHVzEhUKEUFHRU5UX1VOU1BFQ0lGSUVEEAASEQoNQUdFTlRfUEVORElORxAFEhIKDkFHRU5UX1NUQVJUSU5HEAESEQoNQUdFTlRfUlVOTklORxACEg4KCkFHRU5UX0lETEUQAxIQCgxBR0VOVF9GQUlMRUQQBBIRCg1BR0VOVF9QQVVTSU5HEAYSEAoMQUdFTlRfUEFVU0VEEAcqowIKGlJlbW90ZUFnZW50V29ya3NwYWNlU3RhdHVzEi0KKVJFTU9URV9BR0VOVF9XT1JLU1BBQ0VfU1RBVFVTX1VOU1BFQ0lGSUVEEAASKQolUkVNT1RFX0FHRU5UX1dPUktTUEFDRV9TVEFUVVNfUlVOTklORxABEikKJVJFTU9URV9BR0VOVF9XT1JLU1BBQ0VfU1RBVFVTX1BBVVNJTkcQAhIoCiRSRU1PVEVfQUdFTlRfV09SS1NQQUNFX1NUQVRVU19QQVVTRUQQAxIqCiZSRU1PVEVfQUdFTlRfV09SS1NQQUNFX1NUQVRVU19SRVNVTUlORxAEEioKJlJFTU9URV9BR0VOVF9XT1JLU1BBQ0VfU1RBVFVTX0RFTEVUSU5HEAUqqwIKDFJlbW90ZVRvb2xJZBILCgdVTktOT1dOEAASDgoKV0VCX1NFQVJDSBABEg4KCkdJVEhVQl9BUEkQCBIbChdHSVRIVUJfQVBQX1JFQURPTkxZX0FQSRASEhsKF0dJVEhVQl9BUFBfUE9TVF9DT01NRU5UEBMSHQoZR0lUSFVCX0FQUF9QUl9ERVNDUklQVElPThAUEgoKBkxJTkVBUhAMEggKBEpJUkEQDRIOCgpDT05GTFVFTkNFEA4SCgoGTk9USU9OEA8SDAoIU1VQQUJBU0UQEBIJCgVHTEVBThARIgQIAhACIgQIAxADIgQIBBAEIgQIBRAFIgQIBhAGIgQIBxAHIgQICRAJIgQIChAKIgQICxALIgQIFRAVKg5DT05URVhUX0NBTlZBUyrWAQoYUmVtb3RlVG9vbFJlc3BvbnNlU3RhdHVzEiEKHVRPT0xfRVhFQ1VUSU9OX1VOS05PV05fU1RBVFVTEAASGgoWVE9PTF9FWEVDVVRJT05fU1VDQ0VTUxABEhIKDlRPT0xfTk9UX0ZPVU5EEAISFgoSSU5WQUxJRF9UT09MX0lOUFVUEAMSGAoUVE9PTF9FWEVDVVRJT05fRVJST1IQBBIWChJUT09MX05PVF9BVkFJTEFCTEUQBRIdChlUT09MX0FVVEhFTlRJQ0FUSU9OX0VSUk9SEAYqkAIKHlJlbW90ZVdvcmtzcGFjZVNldHVwU3RlcFN0YXR1cxIuCipSRU1PVEVfV09SS1NQQUNFX1NFVFVQX1NURVBfU1RBVFVTX1VOS05PV04QABIuCipSRU1PVEVfV09SS1NQQUNFX1NFVFVQX1NURVBfU1RBVFVTX1JVTk5JTkcQARIuCipSRU1PVEVfV09SS1NQQUNFX1NFVFVQX1NURVBfU1RBVFVTX1NVQ0NFU1MQAhIuCipSRU1PVEVfV09SS1NQQUNFX1NFVFVQX1NURVBfU1RBVFVTX0ZBSUxVUkUQAxIuCipSRU1PVEVfV09SS1NQQUNFX1NFVFVQX1NURVBfU1RBVFVTX1NLSVBQRUQQBCrfAQoNUmVxdWVzdFNvdXJjZRIeChpSRVFVRVNUX1NPVVJDRV9VTlNQRUNJRklFRBAAEhYKElJFUVVFU1RfU09VUkNFX0lERRABEiIKHlJFUVVFU1RfU09VUkNFX0FVR01FTlRfQUNUSU9OUxACEhwKGFJFUVVFU1RfU09VUkNFX1NMQUNLX0JPVBADEh0KGVJFUVVFU1RfU09VUkNFX0dJVEhVQl9CT1QQBBIdChlSRVFVRVNUX1NPVVJDRV9MSU5FQVJfQk9UEAUSFgoSUkVRVUVTVF9TT1VSQ0VfQ0xJEAYqjAIKFlJldm9rZVRvb2xBY2Nlc3NTdGF0dXMSJQohUkVWT0tFX1RPT0xfQUNDRVNTX1NUQVRVU19VTktOT1dOEAASKwonUkVWT0tFX1RPT0xfQUNDRVNTX1NUQVRVU19VTklNUExFTUVOVEVEEAESJwojUkVWT0tFX1RPT0xfQUNDRVNTX1NUQVRVU19OT1RfRk9VTkQQAhIlCiFSRVZPS0VfVE9PTF9BQ0NFU1NfU1RBVFVTX1NVQ0NFU1MQAxIoCiRSRVZPS0VfVE9PTF9BQ0NFU1NfU1RBVFVTX05PVF9BQ1RJVkUQBBIkCiBSRVZPS0VfVE9PTF9BQ0NFU1NfU1RBVFVTX0ZBSUxFRBAFKkAKCFJ1bGVUeXBlEhMKD0FMV0FZU19BVFRBQ0hFRBAAEgoKBk1BTlVBTBABEhMKD0FHRU5UX1JFUVVFU1RFRBACKl4KElNjaGVkdWxlRW50aXR5VHlwZRIkCiBTQ0hFRFVMRV9FTlRJVFlfVFlQRV9VTlNQRUNJRklFRBAAEiIKHlNDSEVEVUxFX0VOVElUWV9UWVBFX0VYRUNVVElPThABKqUBChNTZWNyZXRBcHBsaWNhYmlsaXR5EiQKIFNFQ1JFVF9BUFBMSUNBQklMSVRZX1VOU1BFQ0lGSUVEEAASIQodU0VDUkVUX0FQUExJQ0FCSUxJVFlfUEVSU09OQUwQARIeChpTRUNSRVRfQVBQTElDQUJJTElUWV9TUEFDRRACEiUKIVNFQ1JFVF9BUFBMSUNBQklMSVRZX09SR0FOSVpBVElPThADKl4KC1NlY3JldFNjb3BlEhwKGFNFQ1JFVF9TQ09QRV9VTlNQRUNJRklFRBAAEhgKFFNFQ1JFVF9TQ09QRV9QUklWQVRFEAESFwoTU0VDUkVUX1NDT1BFX1NIQVJFRBACKlEKCVRhZ1NvdXJjZRIWChJUQUdfU09VUkNFX1VOS05PV04QABIVChFUQUdfU09VUkNFX1NZU1RFTRABEhUKEVRBR19TT1VSQ0VfQ1VTVE9NEAIq0wIKGFRlc3RUb29sQ29ubmVjdGlvblN0YXR1cxInCiNURVNUX1RPT0xfQ09OTkVDVElPTl9TVEFUVVNfVU5LTk9XThAAEi0KKVRFU1RfVE9PTF9DT05ORUNUSU9OX1NUQVRVU19VTklNUExFTUVOVEVEEAESKQolVEVTVF9UT09MX0NPTk5FQ1RJT05fU1RBVFVTX05PVF9GT1VORBACEiIKHlRFU1RfVE9PTF9DT05ORUNUSU9OX1NUQVRVU19PSxADEiUKIVRFU1RfVE9PTF9DT05ORUNUSU9OX1NUQVRVU19FUlJPUhAEEjMKL1RFU1RfVE9PTF9DT05ORUNUSU9OX1NUQVRVU19TRVJWSUNFX1VOQVZBSUxBQkxFEAUSNAowVEVTVF9UT09MX0NPTk5FQ1RJT05fU1RBVFVTX0FVVEhFTlRJQ0FUSU9OX0VSUk9SEAYqVQoWVG9vbEF2YWlsYWJpbGl0eVN0YXR1cxISCg5VTktOT1dOX1NUQVRVUxAAEg0KCUFWQUlMQUJMRRABEhgKFFVTRVJfQ09ORklHX1JFUVVJUkVEEAIqXgoZVG9vbFJlc3VsdENvbnRlbnROb2RlVHlwZRIcChhDT05URU5UX1RZUEVfVU5TUEVDSUZJRUQQABIQCgxDT05URU5UX1RFWFQQARIRCg1DT05URU5UX0lNQUdFEAIqPAoKVG9vbFNhZmV0eRIPCgtUT09MX1VOU0FGRRAAEg0KCVRPT0xfU0FGRRABEg4KClRPT0xfQ0hFQ0sQAiqaAQoUVHJpZ2dlckNvbmRpdGlvblR5cGUSJgoiVFJJR0dFUl9DT05ESVRJT05fVFlQRV9VTlNQRUNJRklFRBAAEhwKGFRSSUdHRVJfQ09ORElUSU9OX0dJVEhVQhABEhwKGFRSSUdHRVJfQ09ORElUSU9OX0xJTkVBUhACEh4KGlRSSUdHRVJfQ09ORElUSU9OX1NDSEVEVUxFEAMqTwoJVXNhZ2VVbml0EhYKElVTQUdFX1VOSVRfVU5LTk9XThAAEhYKElVTQUdFX1VOSVRfQ1JFRElUUxABEhIKDlVTQUdFX1VOSVRfVVNEEAJCPlo8Z2l0aHViLmNvbS9hdWdtZW50Y29kZS9hdWdtZW50L3NlcnZpY2VzL2FwaV9wcm94eS9wdWJsaWNfYXBpYgZwcm90bzM",[Noe,E3,PN,ha,GP,WP,K_n,KIe]);(function(e){e[e.BANNER_TYPE_UNKNOWN=0]="BANNER_TYPE_UNKNOWN",e[e.URL_LINK=1]="URL_LINK",e[e.USAGE_BALANCE_DEPLETED=2]="USAGE_BALANCE_DEPLETED",e[e.USAGE_BALANCE_LOW=3]="USAGE_BALANCE_LOW",e[e.REQUIRE_PAYMENT_FOR_TRIAL=4]="REQUIRE_PAYMENT_FOR_TRIAL"})(hSn||(hSn={}));(function(e){e[e.BANNER_DISPLAY_STYLE_UNKNOWN=0]="BANNER_DISPLAY_STYLE_UNKNOWN",e[e.INFO=1]="INFO",e[e.PROMOTION=2]="PROMOTION",e[e.WARNING=3]="WARNING",e[e.ALERT=4]="ALERT"})(gSn||(gSn={}));(function(e){e[e.ADDED=0]="ADDED",e[e.DELETED=1]="DELETED",e[e.MODIFIED=2]="MODIFIED",e[e.RENAMED=3]="RENAMED"})(bSn||(bSn={}));B1n=oo(T3,225),L1n=oo(T3,227);(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.ALL_FEATURES=1]="ALL_FEATURES",e[e.CHAT=2]="CHAT",e[e.AGENT=3]="AGENT",e[e.REMOTE_AGENT=4]="REMOTE_AGENT",e[e.CLI_AGENT=5]="CLI_AGENT",e[e.ORIENTATION=7]="ORIENTATION",e[e.CODE_REVIEW=9]="CODE_REVIEW",e[e.CHAT_STREAM_CREDIT_CONSUMPTION=21]="CHAT_STREAM_CREDIT_CONSUMPTION",e[e.CONTEXT_ENGINE=22]="CONTEXT_ENGINE",e[e.POSEIDON=25]="POSEIDON",e[e.INDEXING_INFRA=28]="INDEXING_INFRA"})(ySn||(ySn={}));(function(e){e[e.STATE_UNKNOWN=0]="STATE_UNKNOWN",e[e.ENABLED=1]="ENABLED",e[e.DISABLED=2]="DISABLED"})(ASn||(ASn={}));(function(e){e[e.REASON_UNKNOWN=0]="REASON_UNKNOWN",e[e.INACTIVE_SUBSCRIPTION=1]="INACTIVE_SUBSCRIPTION",e[e.USAGE_BALANCE_DEPLETED=2]="USAGE_BALANCE_DEPLETED",e[e.NOT_INCLUDED_IN_PLAN=3]="NOT_INCLUDED_IN_PLAN",e[e.QUOTA_EXCEEDED=4]="QUOTA_EXCEEDED"})(ESn||(ESn={}));F1n=oo(T3,528,0);(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.COMMUNITY_TIER=1]="COMMUNITY_TIER",e[e.PROFESSIONAL_TIER=2]="PROFESSIONAL_TIER",e[e.ENTERPRISE_TIER=3]="ENTERPRISE_TIER"})(_Sn||(_Sn={}));U1n=oo(T3,633),V1n=oo(T3,737);(function(e){e[e.GLOBAL=0]="GLOBAL",e[e.TENANT=1]="TENANT"})(SSn||(SSn={}));(function(e){e[e.AGENT_HISTORY_UPDATE_TYPE_UNSPECIFIED=0]="AGENT_HISTORY_UPDATE_TYPE_UNSPECIFIED",e[e.AGENT_HISTORY_EXCHANGE=1]="AGENT_HISTORY_EXCHANGE",e[e.AGENT_HISTORY_EXCHANGE_UPDATE=2]="AGENT_HISTORY_EXCHANGE_UPDATE",e[e.AGENT_HISTORY_AGENT_STATUS=3]="AGENT_HISTORY_AGENT_STATUS"})(vSn||(vSn={}));(function(e){e[e.AGENT_LIST_UPDATE_TYPE_UNSPECIFIED=0]="AGENT_LIST_UPDATE_TYPE_UNSPECIFIED",e[e.AGENT_LIST_AGENT_ADDED=1]="AGENT_LIST_AGENT_ADDED",e[e.AGENT_LIST_AGENT_UPDATED=2]="AGENT_LIST_AGENT_UPDATED",e[e.AGENT_LIST_AGENT_DELETED=3]="AGENT_LIST_AGENT_DELETED",e[e.AGENT_LIST_ALL_AGENTS=4]="AGENT_LIST_ALL_AGENTS"})(xSn||(xSn={}));(function(e){e[e.GLOBAL=0]="GLOBAL",e[e.TENANT=1]="TENANT",e[e.USER=2]="USER"})(CSn||(CSn={}));(function(e){e[e.AGENT_WORKSPACE_UPDATE_TYPE_UNSPECIFIED=0]="AGENT_WORKSPACE_UPDATE_TYPE_UNSPECIFIED",e[e.AGENT_WORKSPACE_UPDATE_INTERRUPT=1]="AGENT_WORKSPACE_UPDATE_INTERRUPT",e[e.AGENT_WORKSPACE_UPDATE_CHAT_REQUEST=2]="AGENT_WORKSPACE_UPDATE_CHAT_REQUEST"})(TSn||(TSn={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.COST=1]="COST",e[e.OUTCOME=2]="OUTCOME"})(ISn||(ISn={}));(function(e){e[e.TEXT=0]="TEXT",e[e.TOOL_RESULT=1]="TOOL_RESULT",e[e.IMAGE=2]="IMAGE",e[e.IMAGE_ID=3]="IMAGE_ID",e[e.IDE_STATE=4]="IDE_STATE",e[e.EDIT_EVENTS=5]="EDIT_EVENTS",e[e.CHECKPOINT_REF=6]="CHECKPOINT_REF",e[e.CHAT_NODE_FILE=8]="CHAT_NODE_FILE",e[e.CHAT_NODE_FILE_ID=9]="CHAT_NODE_FILE_ID",e[e.HISTORY_SUMMARY=10]="HISTORY_SUMMARY"})(wSn||(wSn={}));(function(e){e[e.RAW_RESPONSE=0]="RAW_RESPONSE",e[e.SUGGESTED_QUESTIONS=1]="SUGGESTED_QUESTIONS",e[e.MAIN_TEXT_FINISHED=2]="MAIN_TEXT_FINISHED",e[e.WORKSPACE_FILE_CHUNKS=3]="WORKSPACE_FILE_CHUNKS",e[e.RELEVANT_SOURCES=4]="RELEVANT_SOURCES",e[e.TOOL_USE=5]="TOOL_USE",e[e.TOOL_USE_START=7]="TOOL_USE_START",e[e.THINKING=8]="THINKING",e[e.BILLING_METADATA=9]="BILLING_METADATA",e[e.TOKEN_USAGE=10]="TOKEN_USAGE"})(RSn||(RSn={}));(function(e){e[e.REASON_UNSPECIFIED=0]="REASON_UNSPECIFIED",e[e.END_TURN=1]="END_TURN",e[e.MAX_TOKENS=2]="MAX_TOKENS",e[e.TOOL_USE_REQUESTED=3]="TOOL_USE_REQUESTED",e[e.SAFETY=4]="SAFETY",e[e.RECITATION=5]="RECITATION",e[e.MALFORMED_FUNCTION_CALL=6]="MALFORMED_FUNCTION_CALL",e[e.STOP_REASON_ERROR=7]="STOP_REASON_ERROR"})(NSn||(NSn={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.WEB_ACCESS=1]="WEB_ACCESS",e[e.MCP=2]="MCP",e[e.CLI_TOOLS=4]="CLI_TOOLS",e[e.GITHUB=5]="GITHUB"})(kSn||(kSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.SALSA=1]="SALSA",e[e.AUGGIE=2]="AUGGIE"})(OSn||(OSn={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.IDLE=1]="IDLE",e[e.PROCESSING=2]="PROCESSING",e[e.TERMINATED=3]="TERMINATED",e[e.COMPLETED=4]="COMPLETED",e[e.STARTING=5]="STARTING",e[e.WAITING_FOR_INPUT=6]="WAITING_FOR_INPUT"})(MSn||(MSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.FORCE_ISOLATED=1]="FORCE_ISOLATED",e[e.FORCE_SHARED=2]="FORCE_SHARED"})(PSn||(PSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.BASE_IMAGE=1]="BASE_IMAGE",e[e.DAEMON_POOL=2]="DAEMON_POOL",e[e.UNPOOLED_DAEMON=3]="UNPOOLED_DAEMON"})(DSn||(DSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.NAME_ASC=1]="NAME_ASC",e[e.NAME_DESC=2]="NAME_DESC",e[e.CREATED_BY_ASC=3]="CREATED_BY_ASC",e[e.CREATED_BY_DESC=4]="CREATED_BY_DESC",e[e.SIZE_ASC=5]="SIZE_ASC",e[e.SIZE_DESC=6]="SIZE_DESC",e[e.REPOS_ASC=7]="REPOS_ASC",e[e.REPOS_DESC=8]="REPOS_DESC",e[e.UPDATED_ASC=9]="UPDATED_ASC",e[e.UPDATED_DESC=10]="UPDATED_DESC",e[e.CREATED_ASC=11]="CREATED_ASC",e[e.CREATED_DESC=12]="CREATED_DESC"})(BSn||(BSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.PERSONAL=1]="PERSONAL",e[e.SHARED=2]="SHARED"})(LSn||(LSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.BUILD_FAILED=1]="BUILD_FAILED",e[e.EXECUTION_INTERRUPTED=2]="EXECUTION_INTERRUPTED",e[e.INTERNAL=3]="INTERNAL",e[e.VERSION_CONFLICT=4]="VERSION_CONFLICT",e[e.REFRESH_FAILED=5]="REFRESH_FAILED",e[e.RECONCILE_FAILED=6]="RECONCILE_FAILED",e[e.UPDATE_FAILED=7]="UPDATE_FAILED"})(FSn||(FSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.QUEUED=1]="QUEUED",e[e.PREPARING=2]="PREPARING",e[e.BUILDING=3]="BUILDING",e[e.PROMOTING=4]="PROMOTING",e[e.UPDATING=6]="UPDATING"})(USn||(USn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.PENDING=1]="PENDING",e[e.RUNNING=2]="RUNNING",e[e.CANCEL_REQUESTED=3]="CANCEL_REQUESTED",e[e.SUCCEEDED=4]="SUCCEEDED",e[e.FAILED=5]="FAILED",e[e.CANCELED=6]="CANCELED"})(VSn||(VSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.BASE_IMAGE_REBUILD=1]="BASE_IMAGE_REBUILD",e[e.BASE_IMAGE_BUILD=2]="BASE_IMAGE_BUILD",e[e.REFRESH=3]="REFRESH",e[e.REPOSITORY_RECONCILE=4]="REPOSITORY_RECONCILE",e[e.UPDATE=5]="UPDATE"})(OT||(OT={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.ACTIVE=1]="ACTIVE",e[e.BUILDING=2]="BUILDING",e[e.FAILED=3]="FAILED",e[e.DEPRECATED=4]="DEPRECATED",e[e.DELETING=5]="DELETING"})(GSn||(GSn={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.WEB_ACCESS=1]="WEB_ACCESS",e[e.CLI_TOOLS=4]="CLI_TOOLS",e[e.GITHUB=7]="GITHUB",e[e.LINEAR=8]="LINEAR",e[e.ECHO=9]="ECHO",e[e.SLACK=11]="SLACK",e[e.GITHUB_APP=12]="GITHUB_APP",e[e.LINEAR_APP=13]="LINEAR_APP",e[e.CUSTOM_WEBHOOK=19]="CUSTOM_WEBHOOK",e[e.GITLAB=20]="GITLAB",e[e.GITLAB_APP=21]="GITLAB_APP",e[e.JIRA=23]="JIRA",e[e.CONFLUENCE=24]="CONFLUENCE",e[e.JIRA_APP=25]="JIRA_APP",e[e.CONFLUENCE_APP=26]="CONFLUENCE_APP",e[e.TEAMS=27]="TEAMS",e[e.AZURE_DEVOPS=28]="AZURE_DEVOPS",e[e.AZURE_DEVOPS_APP=29]="AZURE_DEVOPS_APP"})(QP||(QP={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.BUILTIN_CAPABILITIES=1]="BUILTIN_CAPABILITIES",e[e.NAMES=2]="NAMES"})(qIe||(qIe={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.REQUIRED_WORKER=1]="REQUIRED_WORKER"})(WSn||(WSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.RESTORE_TARGET=1]="RESTORE_TARGET",e[e.EDIT_DEPENDENCIES=2]="EDIT_DEPENDENCIES"})($Sn||($Sn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.MISSING=1]="MISSING",e[e.DELETED=2]="DELETED",e[e.INACCESSIBLE=3]="INACCESSIBLE"})(QSn||(QSn={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.TENANT=1]="TENANT",e[e.USER=2]="USER"})(JIe||(JIe={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.SHARED=1]="SHARED",e[e.PRIVATE=2]="PRIVATE"})(YSn||(YSn={}));(function(e){e[e.CLOUD_EXPERT_VM_IMAGE_SOURCE_UNSPECIFIED=0]="CLOUD_EXPERT_VM_IMAGE_SOURCE_UNSPECIFIED",e[e.CLOUD_EXPERT_VM_IMAGE_SOURCE_PUBLIC=1]="CLOUD_EXPERT_VM_IMAGE_SOURCE_PUBLIC",e[e.CLOUD_EXPERT_VM_IMAGE_SOURCE_GCP_ARTIFACT_REGISTRY=2]="CLOUD_EXPERT_VM_IMAGE_SOURCE_GCP_ARTIFACT_REGISTRY"})(HSn||(HSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.HUMAN=1]="HUMAN",e[e.SERVICE_ACCOUNT=2]="SERVICE_ACCOUNT"})(ZSn||(ZSn={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.TENANT=1]="TENANT",e[e.USER=2]="USER"})(jSn||(jSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.SYSTEM_MANAGED=1]="SYSTEM_MANAGED",e[e.USER_MANAGED=2]="USER_MANAGED"})(zSn||(zSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.WEB_PREVIEW=1]="WEB_PREVIEW",e[e.DISPLAY=2]="DISPLAY"})(XSn||(XSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.PENDING=1]="PENDING",e[e.ACTIVE=2]="ACTIVE",e[e.DISCONNECTED=3]="DISCONNECTED",e[e.REVOKED=4]="REVOKED",e[e.EXPIRED=5]="EXPIRED",e[e.CLOSED=6]="CLOSED",e[e.ERROR=7]="ERROR"})(KSn||(KSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.CODE=1]="CODE",e[e.CHAT_INPUT=2]="CHAT_INPUT"})(qSn||(qSn={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.CHAT=1]="CHAT",e[e.AGENT=2]="AGENT"})(JSn||(JSn={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.NON_BYOK=1]="NON_BYOK",e[e.BYOK=2]="BYOK"})(e1n||(e1n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.USER=2]="USER",e[e.BYOK_STATUS=4]="BYOK_STATUS",e[e.RESOURCE=5]="RESOURCE",e[e.PRODUCT=6]="PRODUCT",e[e.EXPERT=7]="EXPERT"})(t1n||(t1n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.MODEL=1]="MODEL",e[e.COMPUTE=2]="COMPUTE"})(n1n||(n1n={}));(function(e){e[e.VALUES=0]="VALUES",e[e.ANY_VALUE=1]="ANY_VALUE",e[e.MISSING_VALUE=2]="MISSING_VALUE"})(r1n||(r1n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.TOTAL=1]="TOTAL",e[e.DAY=2]="DAY",e[e.WEEK=3]="WEEK"})(i1n||(i1n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.USER=1]="USER",e[e.SERVICE_ACCOUNT=2]="SERVICE_ACCOUNT",e[e.BOT=3]="BOT"})(s1n||(s1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.FIX=1]="FIX",e[e.FEATURE=2]="FEATURE",e[e.REFACTOR=3]="REFACTOR",e[e.DOCUMENTATION=4]="DOCUMENTATION",e[e.STYLE=5]="STYLE",e[e.TEST=6]="TEST",e[e.CHORE=7]="CHORE",e[e.REVERT=8]="REVERT",e[e.OTHER=9]="OTHER"})(o1n||(o1n={}));(function(e){e[e.EDIT_SOURCE_UNSPECIFIED=0]="EDIT_SOURCE_UNSPECIFIED",e[e.EDIT_SOURCE_USER_EDIT=1]="EDIT_SOURCE_USER_EDIT",e[e.EDIT_SOURCE_CHECKPOINT_REVERT=2]="EDIT_SOURCE_CHECKPOINT_REVERT"})(a1n||(a1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.GITHUB=1]="GITHUB",e[e.LINEAR=2]="LINEAR",e[e.SCHEDULE=3]="SCHEDULE",e[e.SCHEDULE_TEMP=4]="SCHEDULE_TEMP"})(l1n||(l1n={}));(function(e){e[e.UNKNOWN_SOURCE=0]="UNKNOWN_SOURCE",e[e.DOCUMENTATION_SET=1]="DOCUMENTATION_SET"})(c1n||(c1n={}));(function(e){e[e.UNSET=0]="UNSET",e[e.POSITIVE=1]="POSITIVE",e[e.NEGATIVE=2]="NEGATIVE"})(u1n||(u1n={}));(function(e){e[e.GITHUB_ENTITY_TYPE_UNSPECIFIED=0]="GITHUB_ENTITY_TYPE_UNSPECIFIED",e[e.GITHUB_ENTITY_TYPE_PULL_REQUEST=1]="GITHUB_ENTITY_TYPE_PULL_REQUEST",e[e.GITHUB_ENTITY_TYPE_WORKFLOW_RUN=2]="GITHUB_ENTITY_TYPE_WORKFLOW_RUN"})(d1n||(d1n={}));(function(e){e[e.IMAGE_FORMAT_UNSPECIFIED=0]="IMAGE_FORMAT_UNSPECIFIED",e[e.PNG=1]="PNG",e[e.JPEG=2]="JPEG",e[e.GIF=3]="GIF",e[e.WEBP=4]="WEBP"})(p1n||(p1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.ISSUE=1]="ISSUE"})(m1n||(m1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.NONE=1]="NONE",e[e.OAUTH=2]="OAUTH",e[e.API_KEY=3]="API_KEY"})(f1n||(f1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.AVAILABLE=1]="AVAILABLE",e[e.OPT_IN_REQUIRED=2]="OPT_IN_REQUIRED"})(h1n||(h1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.USER=1]="USER",e[e.TENANT=2]="TENANT"})(g1n||(g1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.CLI=1]="CLI",e[e.CLOUD_AGENT=2]="CLOUD_AGENT"})(b1n||(b1n={}));(function(e){e[e.DISPLAY_TYPE_UNSPECIFIED=0]="DISPLAY_TYPE_UNSPECIFIED",e[e.DISPLAY_TYPE_TOAST=1]="DISPLAY_TYPE_TOAST",e[e.DISPLAY_TYPE_BANNER=2]="DISPLAY_TYPE_BANNER"})(y1n||(y1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.INFO=1]="INFO",e[e.WARNING=2]="WARNING",e[e.ERROR=3]="ERROR"})(A1n||(A1n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.COSMOS=1]="COSMOS",e[e.NON_COSMOS=2]="NON_COSMOS"})(E1n||(E1n={}));(function(e){e[e.DEFAULT=0]="DEFAULT",e[e.PROTOTYPER=1]="PROTOTYPER",e[e.BRAINSTORM=2]="BRAINSTORM",e[e.REVIEWER=3]="REVIEWER"})(_1n||(_1n={}));(function(e){e[e.RESUME_AGENT_HINT_REASON_UNSPECIFIED=0]="RESUME_AGENT_HINT_REASON_UNSPECIFIED",e[e.RESUME_AGENT_HINT_REASON_TYPING_MESSAGE=1]="RESUME_AGENT_HINT_REASON_TYPING_MESSAGE",e[e.RESUME_AGENT_HINT_REASON_VIEWING_AGENT=2]="RESUME_AGENT_HINT_REASON_VIEWING_AGENT"})(S1n||(S1n={}));(function(e){e[e.AGENT_UNSPECIFIED=0]="AGENT_UNSPECIFIED",e[e.AGENT_PENDING=5]="AGENT_PENDING",e[e.AGENT_STARTING=1]="AGENT_STARTING",e[e.AGENT_RUNNING=2]="AGENT_RUNNING",e[e.AGENT_IDLE=3]="AGENT_IDLE",e[e.AGENT_FAILED=4]="AGENT_FAILED",e[e.AGENT_PAUSING=6]="AGENT_PAUSING",e[e.AGENT_PAUSED=7]="AGENT_PAUSED"})(v1n||(v1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.RUNNING=1]="RUNNING",e[e.PAUSING=2]="PAUSING",e[e.PAUSED=3]="PAUSED",e[e.RESUMING=4]="RESUMING",e[e.DELETING=5]="DELETING"})(x1n||(x1n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.WEB_SEARCH=1]="WEB_SEARCH",e[e.GITHUB_API=8]="GITHUB_API",e[e.GITHUB_APP_READONLY_API=18]="GITHUB_APP_READONLY_API",e[e.GITHUB_APP_POST_COMMENT=19]="GITHUB_APP_POST_COMMENT",e[e.GITHUB_APP_PR_DESCRIPTION=20]="GITHUB_APP_PR_DESCRIPTION",e[e.LINEAR=12]="LINEAR",e[e.JIRA=13]="JIRA",e[e.CONFLUENCE=14]="CONFLUENCE",e[e.NOTION=15]="NOTION",e[e.SUPABASE=16]="SUPABASE",e[e.GLEAN=17]="GLEAN"})(EA||(EA={}));(function(e){e[e.TOOL_EXECUTION_UNKNOWN_STATUS=0]="TOOL_EXECUTION_UNKNOWN_STATUS",e[e.TOOL_EXECUTION_SUCCESS=1]="TOOL_EXECUTION_SUCCESS",e[e.TOOL_NOT_FOUND=2]="TOOL_NOT_FOUND",e[e.INVALID_TOOL_INPUT=3]="INVALID_TOOL_INPUT",e[e.TOOL_EXECUTION_ERROR=4]="TOOL_EXECUTION_ERROR",e[e.TOOL_NOT_AVAILABLE=5]="TOOL_NOT_AVAILABLE",e[e.TOOL_AUTHENTICATION_ERROR=6]="TOOL_AUTHENTICATION_ERROR"})(gH||(gH={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.RUNNING=1]="RUNNING",e[e.SUCCESS=2]="SUCCESS",e[e.FAILURE=3]="FAILURE",e[e.SKIPPED=4]="SKIPPED"})(C1n||(C1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.IDE=1]="IDE",e[e.AUGMENT_ACTIONS=2]="AUGMENT_ACTIONS",e[e.SLACK_BOT=3]="SLACK_BOT",e[e.GITHUB_BOT=4]="GITHUB_BOT",e[e.LINEAR_BOT=5]="LINEAR_BOT",e[e.CLI=6]="CLI"})(T1n||(T1n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.UNIMPLEMENTED=1]="UNIMPLEMENTED",e[e.NOT_FOUND=2]="NOT_FOUND",e[e.SUCCESS=3]="SUCCESS",e[e.NOT_ACTIVE=4]="NOT_ACTIVE",e[e.FAILED=5]="FAILED"})(I1n||(I1n={}));(function(e){e[e.ALWAYS_ATTACHED=0]="ALWAYS_ATTACHED",e[e.MANUAL=1]="MANUAL",e[e.AGENT_REQUESTED=2]="AGENT_REQUESTED"})(w1n||(w1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.EXECUTION=1]="EXECUTION"})(R1n||(R1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.PERSONAL=1]="PERSONAL",e[e.SPACE=2]="SPACE",e[e.ORGANIZATION=3]="ORGANIZATION"})(LN||(LN={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.PRIVATE=1]="PRIVATE",e[e.SHARED=2]="SHARED"})(bH||(bH={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.SYSTEM=1]="SYSTEM",e[e.CUSTOM=2]="CUSTOM"})(N1n||(N1n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.UNIMPLEMENTED=1]="UNIMPLEMENTED",e[e.NOT_FOUND=2]="NOT_FOUND",e[e.OK=3]="OK",e[e.ERROR=4]="ERROR",e[e.SERVICE_UNAVAILABLE=5]="SERVICE_UNAVAILABLE",e[e.AUTHENTICATION_ERROR=6]="AUTHENTICATION_ERROR"})(k1n||(k1n={}));(function(e){e[e.UNKNOWN_STATUS=0]="UNKNOWN_STATUS",e[e.AVAILABLE=1]="AVAILABLE",e[e.USER_CONFIG_REQUIRED=2]="USER_CONFIG_REQUIRED"})(yH||(yH={}));(function(e){e[e.CONTENT_TYPE_UNSPECIFIED=0]="CONTENT_TYPE_UNSPECIFIED",e[e.CONTENT_TEXT=1]="CONTENT_TEXT",e[e.CONTENT_IMAGE=2]="CONTENT_IMAGE"})(O1n||(O1n={}));(function(e){e[e.TOOL_UNSAFE=0]="TOOL_UNSAFE",e[e.TOOL_SAFE=1]="TOOL_SAFE",e[e.TOOL_CHECK=2]="TOOL_CHECK"})(M1n||(M1n={}));(function(e){e[e.TRIGGER_CONDITION_TYPE_UNSPECIFIED=0]="TRIGGER_CONDITION_TYPE_UNSPECIFIED",e[e.TRIGGER_CONDITION_GITHUB=1]="TRIGGER_CONDITION_GITHUB",e[e.TRIGGER_CONDITION_LINEAR=2]="TRIGGER_CONDITION_LINEAR",e[e.TRIGGER_CONDITION_SCHEDULE=3]="TRIGGER_CONDITION_SCHEDULE"})(P1n||(P1n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.CREDITS=1]="CREDITS",e[e.USD=2]="USD"})(D1n||(D1n={}))});var G1n,W1n=C(()=>{"use strict";Ml();C3();Au();$P();G1n=Zr("CiRzZXJ2aWNlcy9wb3NlaWRvbi9jYXBhYmlsaXRpZXMucHJvdG8SCHBvc2VpZG9uIlEKEUNsaVRvb2xEZWZpbml0aW9uEgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSGQoRaW5wdXRfc2NoZW1hX2pzb24YAyABKAliBnByb3RvMw",[X_,ha,Wy])});var ewe,$1n,Q1n,Y1n,H1n,Jct=C(()=>{"use strict";Ml();Au();ewe=Zr("CipzZXJ2aWNlcy9wb3NlaWRvbi92aXJ0dWFsX2ZpbGVzeXN0ZW0ucHJvdG8SCHBvc2VpZG9uImwKF0FwcGVuZFZGU0NvbW1lbnRSZXF1ZXN0EhUKDWZpbGVzeXN0ZW1faWQYASABKAkSKAoFZXZlbnQYAiABKAsyGS5wb3NlaWRvbi5WRlNDb21tZW50RXZlbnQSEAoIc3BhY2VfaWQYAyABKAkiRAoYQXBwZW5kVkZTQ29tbWVudFJlc3BvbnNlEigKBWV2ZW50GAEgASgLMhkucG9zZWlkb24uVkZTQ29tbWVudEV2ZW50IrsBChdDb21taXRWRlNDaGFuZ2VzUmVxdWVzdBIVCg1maWxlc3lzdGVtX2lkGAEgASgJEi0KDGZpbGVfY2hhbmdlcxgCIAMoCzIXLnBvc2VpZG9uLlZGU0ZpbGVDaGFuZ2USEwoLbW9kaWZpZWRfYnkYAyABKAkSFQoIYWdlbnRfaWQYBCABKAlIAIgBARIQCghzcGFjZV9pZBgFIAEoCRIPCgdmaWxlX2lkGAYgASgJQgsKCV9hZ2VudF9pZCJZChhDb21taXRWRlNDaGFuZ2VzUmVzcG9uc2USDwoHbmV3X3NlcRgBIAEoAxIsCg1za2lwcGVkX2ZpbGVzGAIgAygLMhUucG9zZWlkb24uU2tpcHBlZEZpbGUiVQocRW5zdXJlVkZTRmlsZUlkZW50aXR5UmVxdWVzdBIVCg1maWxlc3lzdGVtX2lkGAEgASgJEgwKBHBhdGgYAiABKAkSEAoIc3BhY2VfaWQYAyABKAkiewoWRmV0Y2hWRlNDaGFuZ2VzUmVxdWVzdBIVCg1maWxlc3lzdGVtX2lkGAEgASgJEhEKCWFmdGVyX3NlcRgCIAEoAxIQCghzcGFjZV9pZBgDIAEoCRIQCghhZ2VudF9pZBgEIAEoCRITCgtwYXRoX3ByZWZpeBgFIAEoCSJaChdGZXRjaFZGU0NoYW5nZXNSZXNwb25zZRIrCgdjaGFuZ2VzGAEgAygLMhoucG9zZWlkb24uVkZTQ2hhbmdlU3VtbWFyeRISCgpsYXRlc3Rfc2VxGAIgASgDIncKGkZldGNoVkZTRmlsZUNvbnRlbnRSZXF1ZXN0EhUKDWZpbGVzeXN0ZW1faWQYASABKAkSDQoFcGF0aHMYAiADKAkSEAoIc3BhY2VfaWQYAyABKAkSDwoHZmlsZV9pZBgEIAEoCRIQCghhZ2VudF9pZBgFIAEoCSJGChtGZXRjaFZGU0ZpbGVDb250ZW50UmVzcG9uc2USJwoFZmlsZXMYASADKAsyGC5wb3NlaWRvbi5WRlNGaWxlQ29udGVudCKHAQoWTGlzdFZGU0NvbW1lbnRzUmVxdWVzdBIVCg1maWxlc3lzdGVtX2lkGAEgASgJEgwKBHBhdGgYAiABKAkSEQoJcGFnZV9zaXplGAMgASgFEhIKCnBhZ2VfdG9rZW4YBCABKAkSEAoIc3BhY2VfaWQYBSABKAkSDwoHZmlsZV9pZBgGIAEoCSJdChdMaXN0VkZTQ29tbWVudHNSZXNwb25zZRIpCgZldmVudHMYASADKAsyGS5wb3NlaWRvbi5WRlNDb21tZW50RXZlbnQSFwoPbmV4dF9wYWdlX3Rva2VuGAIgASgJIosBChpMaXN0VkZTRmlsZVZlcnNpb25zUmVxdWVzdBIVCg1maWxlc3lzdGVtX2lkGAEgASgJEgwKBHBhdGgYAiABKAkSEQoJcGFnZV9zaXplGAMgASgFEhIKCnBhZ2VfdG9rZW4YBCABKAkSEAoIc3BhY2VfaWQYBSABKAkSDwoHZmlsZV9pZBgGIAEoCSJnChtMaXN0VkZTRmlsZVZlcnNpb25zUmVzcG9uc2USLwoIdmVyc2lvbnMYASADKAsyHS5wb3NlaWRvbi5WRlNGaWxlVmVyc2lvbkVudHJ5EhcKD25leHRfcGFnZV90b2tlbhgCIAEoCSKHAQocTGlzdFZGU1ZlcnNpb25lZEZpbGVzUmVxdWVzdBIVCg1maWxlc3lzdGVtX2lkGAEgASgJEhcKD2luY2x1ZGVfZGVsZXRlZBgCIAEoCBIRCglwYWdlX3NpemUYAyABKAUSEgoKcGFnZV90b2tlbhgEIAEoCRIQCghzcGFjZV9pZBgFIAEoCSJqCh1MaXN0VkZTVmVyc2lvbmVkRmlsZXNSZXNwb25zZRIwCgVmaWxlcxgBIAMoCzIhLnBvc2VpZG9uLlZGU1ZlcnNpb25lZEZpbGVTdW1tYXJ5EhcKD25leHRfcGFnZV90b2tlbhgCIAEoCSKDAQoZUmVhZFZGU0ZpbGVWZXJzaW9uUmVxdWVzdBIVCg1maWxlc3lzdGVtX2lkGAEgASgJEgwKBHBhdGgYAiABKAkSEQoJdGltZXN0YW1wGAMgASgJEgsKA3NlcRgEIAEoAxIQCghzcGFjZV9pZBgFIAEoCRIPCgdmaWxlX2lkGAYgASgJIl0KGlJlYWRWRlNGaWxlVmVyc2lvblJlc3BvbnNlEg8KB2NvbnRlbnQYASABKAwSCwoDc2VxGAIgASgDEgwKBHNpemUYAyABKAMSEwoLbW9kaWZpZWRfYnkYBCABKAkiMAodUmVzb2x2ZVZGU0ZpbGVJZGVudGl0eVJlcXVlc3QSDwoHZmlsZV9pZBgBIAEoCSIrCgtTa2lwcGVkRmlsZRIMCgRwYXRoGAEgASgJEg4KBnJlYXNvbhgCIAEoCSKBAQoQVkZTQ2hhbmdlU3VtbWFyeRIMCgRwYXRoGAEgASgJEgwKBHNpemUYAiABKAMSDQoFbXRpbWUYAyABKAMSEwoLbW9kaWZpZWRfYnkYBCABKAkSCwoDc2VxGAUgASgDEg8KB2RlbGV0ZWQYBiABKAgSDwoHZmlsZV9pZBgHIAEoCSKTAQoQVkZTQ29tbWVudEFuY2hvchITCgt2ZXJzaW9uX3NlcRgBIAEoAxINCgVxdW90ZRgCIAEoCRIRCglsaW5lX2hpbnQYAyABKAUSFAoMc3RhcnRfb2Zmc2V0GAQgASgFEhIKCmVuZF9vZmZzZXQYBSABKAUSDgoGcHJlZml4GAYgASgJEg4KBnN1ZmZpeBgHIAEoCSKwAwoPVkZTQ29tbWVudEV2ZW50EhAKCGV2ZW50X2lkGAEgASgJEhIKCmNvbW1lbnRfaWQYAiABKAkSDAoEcGF0aBgDIAEoCRIrCgRraW5kGAQgASgOMh0ucG9zZWlkb24uVkZTQ29tbWVudEV2ZW50S2luZBIMCgRib2R5GAYgASgJEioKBmFuY2hvchgHIAEoCzIaLnBvc2VpZG9uLlZGU0NvbW1lbnRBbmNob3ISEgoKY3JlYXRlZF9hdBgIIAEoCRIRCglwYXJlbnRfaWQYCSABKAkSEQoJYXV0aG9yX2lkGAogASgJEg8KB2ZpbGVfaWQYCyABKAkSLQoIbWVudGlvbnMYDCADKAsyGy5wb3NlaWRvbi5WRlNDb21tZW50TWVudGlvbhIWCg5yZWFjdGlvbl9lbW9qaRgNIAEoCRIzCgtyZWFjdGlvbl9vcBgOIAEoDjIeLnBvc2VpZG9uLlZGU0NvbW1lbnRSZWFjdGlvbk9wEhsKE2F1dGhvcl9kaXNwbGF5X25hbWUYDyABKAkSEAoIYWdlbnRfaWQYECABKAlKBAgFEAZSBmF1dGhvciKMAQoRVkZTQ29tbWVudE1lbnRpb24SLQoEdHlwZRgBIAEoDjIfLnBvc2VpZG9uLlZGU0NvbW1lbnRNZW50aW9uVHlwZRIKCgJpZBgCIAEoCRIPCgdkaXNwbGF5GAMgASgJEg0KBXN0YXJ0GAQgASgFEg4KBmxlbmd0aBgFIAEoBRIMCgRwYXRoGAYgASgJIlEKDVZGU0ZpbGVDaGFuZ2USDAoEcGF0aBgBIAEoCRIPCgdjb250ZW50GAIgASgMEg8KB2RlbGV0ZWQYAyABKAgSEAoIYmFzZV9zZXEYBCABKAMiPAoOVkZTRmlsZUNvbnRlbnQSDAoEcGF0aBgBIAEoCRIPCgdjb250ZW50GAIgASgMEgsKA3NlcRgDIAEoAyL4AQoTVkZTRmlsZUlkZW50aXR5SW5mbxIPCgdmaWxlX2lkGAEgASgJEhUKDWZpbGVzeXN0ZW1faWQYAiABKAkSEAoIc3BhY2VfaWQYAyABKAkSFAoMY3VycmVudF9wYXRoGAQgASgJEhMKC2N1cnJlbnRfc2VxGAUgASgDEg8KB2RlbGV0ZWQYBiABKAgSKAoFc2NvcGUYByABKA4yGS5wb3NlaWRvbi5GaWxlc3lzdGVtU2NvcGUSFQoNb3duZXJfdXNlcl9pZBgIIAEoCRIWCg5lZmZlY3RpdmVfcm9sZRgJIAEoCRISCgp1cGRhdGVkX2F0GAogASgJIuEBChNWRlNGaWxlVmVyc2lvbkVudHJ5EhEKCXRpbWVzdGFtcBgBIAEoCRILCgNzZXEYAiABKAMSDAoEc2l6ZRgDIAEoAxITCgttb2RpZmllZF9ieRgEIAEoCRIPCgdkZWxldGVkGAUgASgIEg8KB2ZpbGVfaWQYBiABKAkSFwoPcGF0aF9hdF92ZXJzaW9uGAcgASgJEhAKCGFnZW50X2lkGAggASgJEhsKE21vZGlmaWVkX2J5X3VzZXJfaWQYCSABKAkSHQoVbW9kaWZpZWRfYnlfdXNlcl9uYW1lGAogASgJImkKF1ZGU1ZlcnNpb25lZEZpbGVTdW1tYXJ5EgwKBHBhdGgYASABKAkSFQoNdmVyc2lvbl9jb3VudBgCIAEoBRIYChBsYXRlc3RfdGltZXN0YW1wGAMgASgJEg8KB2RlbGV0ZWQYBCABKAgqhwEKD0ZpbGVzeXN0ZW1TY29wZRIgChxGSUxFU1lTVEVNX1NDT1BFX1VOU1BFQ0lGSUVEEAASGwoXRklMRVNZU1RFTV9TQ09QRV9URU5BTlQQARIZChVGSUxFU1lTVEVNX1NDT1BFX1VTRVIQAhIaChZGSUxFU1lTVEVNX1NDT1BFX1NQQUNFEAMqvgIKE1ZGU0NvbW1lbnRFdmVudEtpbmQSJgoiVkZTX0NPTU1FTlRfRVZFTlRfS0lORF9VTlNQRUNJRklFRBAAEiIKHlZGU19DT01NRU5UX0VWRU5UX0tJTkRfQ1JFQVRFRBABEiEKHVZGU19DT01NRU5UX0VWRU5UX0tJTkRfRURJVEVEEAISIwofVkZTX0NPTU1FTlRfRVZFTlRfS0lORF9SRVNPTFZFRBADEiIKHlZGU19DT01NRU5UX0VWRU5UX0tJTkRfREVMRVRFRBAEEiUKIVZGU19DT01NRU5UX0VWRU5UX0tJTkRfUkVBTkNIT1JFRBAFEiMKH1ZGU19DT01NRU5UX0VWRU5UX0tJTkRfUkVPUEVORUQQBhIjCh9WRlNfQ09NTUVOVF9FVkVOVF9LSU5EX1JFQUNUSU9OEAcqhwEKFVZGU0NvbW1lbnRNZW50aW9uVHlwZRIoCiRWRlNfQ09NTUVOVF9NRU5USU9OX1RZUEVfVU5TUEVDSUZJRUQQABIhCh1WRlNfQ09NTUVOVF9NRU5USU9OX1RZUEVfVVNFUhABEiEKHVZGU19DT01NRU5UX01FTlRJT05fVFlQRV9GSUxFEAIqhAEKFFZGU0NvbW1lbnRSZWFjdGlvbk9wEicKI1ZGU19DT01NRU5UX1JFQUNUSU9OX09QX1VOU1BFQ0lGSUVEEAASHwobVkZTX0NPTU1FTlRfUkVBQ1RJT05fT1BfQUREEAESIgoeVkZTX0NPTU1FTlRfUkVBQ1RJT05fT1BfUkVNT1ZFEAJiBnByb3RvMw",[ha]);(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TENANT=1]="TENANT",e[e.USER=2]="USER",e[e.SPACE=3]="SPACE"})($1n||($1n={}));(function(e){e[e.VFS_COMMENT_EVENT_KIND_UNSPECIFIED=0]="VFS_COMMENT_EVENT_KIND_UNSPECIFIED",e[e.VFS_COMMENT_EVENT_KIND_CREATED=1]="VFS_COMMENT_EVENT_KIND_CREATED",e[e.VFS_COMMENT_EVENT_KIND_EDITED=2]="VFS_COMMENT_EVENT_KIND_EDITED",e[e.VFS_COMMENT_EVENT_KIND_RESOLVED=3]="VFS_COMMENT_EVENT_KIND_RESOLVED",e[e.VFS_COMMENT_EVENT_KIND_DELETED=4]="VFS_COMMENT_EVENT_KIND_DELETED",e[e.VFS_COMMENT_EVENT_KIND_REANCHORED=5]="VFS_COMMENT_EVENT_KIND_REANCHORED",e[e.VFS_COMMENT_EVENT_KIND_REOPENED=6]="VFS_COMMENT_EVENT_KIND_REOPENED",e[e.VFS_COMMENT_EVENT_KIND_REACTION=7]="VFS_COMMENT_EVENT_KIND_REACTION"})(Q1n||(Q1n={}));(function(e){e[e.VFS_COMMENT_MENTION_TYPE_UNSPECIFIED=0]="VFS_COMMENT_MENTION_TYPE_UNSPECIFIED",e[e.VFS_COMMENT_MENTION_TYPE_USER=1]="VFS_COMMENT_MENTION_TYPE_USER",e[e.VFS_COMMENT_MENTION_TYPE_FILE=2]="VFS_COMMENT_MENTION_TYPE_FILE"})(Y1n||(Y1n={}));(function(e){e[e.VFS_COMMENT_REACTION_OP_UNSPECIFIED=0]="VFS_COMMENT_REACTION_OP_UNSPECIFIED",e[e.VFS_COMMENT_REACTION_OP_ADD=1]="VFS_COMMENT_REACTION_OP_ADD",e[e.VFS_COMMENT_REACTION_OP_REMOVE=2]="VFS_COMMENT_REACTION_OP_REMOVE"})(H1n||(H1n={}))});var K1n,Z1n,j1n,z1n,X1n,q1n=C(()=>{"use strict";Ml();Au();$P();W1n();Jct();K1n=Zr("CiBzZXJ2aWNlcy9wb3NlaWRvbi9wb3NlaWRvbi5wcm90bxIIcG9zZWlkb24i/wIKE0Nvbm5lY3RDbGlWbVJlcXVlc3QSEAoIYWdlbnRfaWQYASABKAkSDQoFdm1faWQYAiABKAkSFgoOd29ya3NwYWNlX3BhdGgYAyABKAkSHgoWY2FwYWJpbGl0eV9pbnN0YW5jZV9pZBgEIAEoCRI0Cg9hdmFpbGFibGVfdG9vbHMYBSADKAsyGy5wb3NlaWRvbi5DbGlUb29sRGVmaW5pdGlvbhI0Cg9jb25uZWN0aW9uX21vZGUYBiABKA4yGy5wb3NlaWRvbi5DbGlDb25uZWN0aW9uTW9kZRIUCgxwYXJlbnRfdm1faWQYByABKAkSGQoRZGFlbW9uX2NvbW1hbmRfaWQYCCABKAkSGwoTY2xpZW50X2NhcGFiaWxpdGllcxgJIAMoCRITCgtjbGlfdmVyc2lvbhgKIAEoCRIkChdwcm92aXNpb25pbmdfZ2VuZXJhdGlvbhgLIAEoA0gAiAEBQhoKGF9wcm92aXNpb25pbmdfZ2VuZXJhdGlvbiLjAwoUQ29ubmVjdENsaVZtUmVzcG9uc2USDQoFdm1faWQYASABKAkSDwoHc3VjY2VzcxgCIAEoCBIVCg1lcnJvcl9tZXNzYWdlGAMgASgJEjQKDHJlbW90ZV90b29scxgEIAMoCzIeLnBvc2VpZG9uLlJlbW90ZVRvb2xEZWZpbml0aW9uEjYKDnNlc3Npb25fY29uZmlnGAUgASgLMh4ucG9zZWlkb24uU2Vzc2lvbkNvbmZpZ3VyYXRpb24SFgoObWNwX2NvbmZpZ19pZHMYBiADKAkSSwoPdmZzX2ZpbGVzeXN0ZW1zGAcgAygLMjIucG9zZWlkb24uQ29ubmVjdENsaVZtUmVzcG9uc2UuVmZzRmlsZXN5c3RlbXNFbnRyeRIRCglleHBlcnRfaWQYCyABKAkSEwoLcGVyc29uYV9pZHMYDCADKAkSEAoIc3BhY2VfaWQYDSABKAkSEwoLd29ya2Zsb3dfaWQYDiABKAkSHwoXYWN0aXZlX2dlbmVyYXRpb25fZXBvY2gYDyABKAMSGgoSY29ubmVjdGlvbl92ZXJzaW9uGBAgASgDGjUKE1Zmc0ZpbGVzeXN0ZW1zRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASK4AQohQ3JlYXRlSG9zdGVkQXJ0aWZhY3RVcGxvYWRSZXF1ZXN0EjYKCnZpc2liaWxpdHkYASABKA4yIi5wb3NlaWRvbi5Ib3N0ZWRBcnRpZmFjdFZpc2liaWxpdHkSEgoKbWVkaWFfdHlwZRgCIAEoCRISCgpzaXplX2J5dGVzGAMgASgDEhIKCnNoYTI1Nl9oZXgYBCABKAkSDQoFbGFiZWwYBSABKAkSEAoIZmlsZW5hbWUYBiABKAkiwQIKIkNyZWF0ZUhvc3RlZEFydGlmYWN0VXBsb2FkUmVzcG9uc2USGgoSaG9zdGVkX2FydGlmYWN0X2lkGAEgASgJEhYKDnNpZ25lZF9wdXRfdXJsGAIgASgJElsKEHJlcXVpcmVkX2hlYWRlcnMYAyADKAsyQS5wb3NlaWRvbi5DcmVhdGVIb3N0ZWRBcnRpZmFjdFVwbG9hZFJlc3BvbnNlLlJlcXVpcmVkSGVhZGVyc0VudHJ5EjkKFXNpZ25lZF91cmxfZXhwaXJlc19hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAaNgoUUmVxdWlyZWRIZWFkZXJzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4AUoECAUQBlIRZXhpc3RpbmdfYXJ0aWZhY3QiUAobRGVsZXRlSG9zdGVkQXJ0aWZhY3RSZXF1ZXN0EhoKEmhvc3RlZF9hcnRpZmFjdF9pZBgBIAEoCRIVCg1jYW5vbmljYWxfdXJsGAIgASgJIh4KHERlbGV0ZUhvc3RlZEFydGlmYWN0UmVzcG9uc2UiTQodRmluYWxpemVIb3N0ZWRBcnRpZmFjdFJlcXVlc3QSGgoSaG9zdGVkX2FydGlmYWN0X2lkGAEgASgJEhAKCGZpbGVuYW1lGAIgASgJIkwKHkZpbmFsaXplSG9zdGVkQXJ0aWZhY3RSZXNwb25zZRIqCghhcnRpZmFjdBgBIAEoCzIYLnBvc2VpZG9uLkhvc3RlZEFydGlmYWN0Ir0CCg5Ib3N0ZWRBcnRpZmFjdBIaChJob3N0ZWRfYXJ0aWZhY3RfaWQYASABKAkSNgoKdmlzaWJpbGl0eRgCIAEoDjIiLnBvc2VpZG9uLkhvc3RlZEFydGlmYWN0VmlzaWJpbGl0eRISCgptZWRpYV90eXBlGAMgASgJEhIKCnNpemVfYnl0ZXMYBCABKAMSEgoKc2hhMjU2X2hleBgFIAEoCRINCgVsYWJlbBgGIAEoCRIVCg1vd25lcl91c2VyX2lkGAcgASgJEhUKDWNhbm9uaWNhbF91cmwYCCABKAkSLgoKY3JlYXRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKZXhwaXJlc19hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiaQoUUmVtb3RlVG9vbERlZmluaXRpb24SDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIZChFpbnB1dF9zY2hlbWFfanNvbhgDIAEoCRITCgt0b29sX3NhZmV0eRgEIAEoCSLoAwoUU2Vzc2lvbkNvbmZpZ3VyYXRpb24SEgoFbW9kZWwYASABKAlIAIgBARIlCh1pbmNsdWRlX2RlZmF1bHRfc3lzdGVtX3Byb21wdBgCIAEoCBIVCg1zeXN0ZW1fcHJvbXB0GAMgASgJEi8KCnZpc2liaWxpdHkYBCABKA4yGy5wb3NlaWRvbi5TZXNzaW9uVmlzaWJpbGl0eRI0Cg9hZ2VudF9sb29wX3R5cGUYBSABKA4yFy5wb3NlaWRvbi5BZ2VudExvb3BUeXBlQgIYARJHCg11c2VyX21ldGFkYXRhGAYgAygLMjAucG9zZWlkb24uU2Vzc2lvbkNvbmZpZ3VyYXRpb24uVXNlck1ldGFkYXRhRW50cnkSHAoUYXV0b19jbGVhbnVwX29uX2lkbGUYByABKAgSGQoRd29ya2VyX2V4cGVydF9pZHMYCCADKAkSIgoadXNlX2FsbF9leHBlcnRzX2FzX3dvcmtlcnMYCSABKAgSHQoQcmVhc29uaW5nX2VmZm9ydBgKIAEoCUgBiAEBGjMKEVVzZXJNZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFCCAoGX21vZGVsQhMKEV9yZWFzb25pbmdfZWZmb3J0KmcKDUFnZW50TG9vcFR5cGUSHwobQUdFTlRfTE9PUF9UWVBFX1VOU1BFQ0lGSUVEEAASGQoVQUdFTlRfTE9PUF9UWVBFX1NBTFNBEAESGgoWQUdFTlRfTE9PUF9UWVBFX0FVR0dJRRACKpsBChFDbGlDb25uZWN0aW9uTW9kZRIfChtDTElfQ09OTkVDVElPTl9NT0RFX1VOS05PV04QABIlCiFDTElfQ09OTkVDVElPTl9NT0RFX1RPT0xfUFJPVklERVIQARIdChlDTElfQ09OTkVDVElPTl9NT0RFX0FHRU5UEAISHwobQ0xJX0NPTk5FQ1RJT05fTU9ERV9XQUlUSU5HEAMqmAEKGEhvc3RlZEFydGlmYWN0VmlzaWJpbGl0eRIqCiZIT1NURURfQVJUSUZBQ1RfVklTSUJJTElUWV9VTlNQRUNJRklFRBAAEikKJUhPU1RFRF9BUlRJRkFDVF9WSVNJQklMSVRZX1NFQ1JFVF9VUkwQARIlCiFIT1NURURfQVJUSUZBQ1RfVklTSUJJTElUWV9URU5BTlQQAip2ChFTZXNzaW9uVmlzaWJpbGl0eRIiCh5TRVNTSU9OX1ZJU0lCSUxJVFlfVU5TUEVDSUZJRUQQABIdChlTRVNTSU9OX1ZJU0lCSUxJVFlfU0hBUkVEEAESHgoaU0VTU0lPTl9WSVNJQklMSVRZX1BSSVZBVEUQAmIGcHJvdG8z",[E3,X0n,ha,Wy,G1n,ewe]);(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.SALSA=1]="SALSA",e[e.AUGGIE=2]="AUGGIE"})(Z1n||(Z1n={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.TOOL_PROVIDER=1]="TOOL_PROVIDER",e[e.AGENT=2]="AGENT",e[e.WAITING=3]="WAITING"})(j1n||(j1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.SECRET_URL=1]="SECRET_URL",e[e.TENANT=2]="TENANT"})(z1n||(z1n={}));(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.SHARED=1]="SHARED",e[e.PRIVATE=2]="PRIVATE"})(X1n||(X1n={}))});var sqi,I3,twe=C(()=>{"use strict";Ml();jIe();Moe();q1n();Jct();qct();sqi=Zr("CitzZXJ2aWNlcy9hcGlfcHJveHkvcHVibGljX2FwaV9zZXJ2aWNlLnByb3RvEgpwdWJsaWNfYXBpIpIBCixDbG91ZEFnZW50c0Vuc3VyZVZGU0ZpbGVJZGVudGl0eUh0dHBSZXNwb25zZRIvCghpZGVudGl0eRgBIAEoCzIdLnBvc2VpZG9uLlZGU0ZpbGVJZGVudGl0eUluZm8SGAoQd2ViX2FwcF9iYXNlX3VybBgCIAEoCRIXCg9hcHBfcGF0aF9wcmVmaXgYAyABKAkieAotQ2xvdWRBZ2VudHNSZXNvbHZlVkZTRmlsZUlkZW50aXR5SHR0cFJlc3BvbnNlEi8KCGlkZW50aXR5GAEgASgLMh0ucG9zZWlkb24uVkZTRmlsZUlkZW50aXR5SW5mbxIWCg5jYWxsZXJfdXNlcl9pZBgCIAEoCTLZ8AIKEEF1Z21lbnRQdWJsaWNBcGkSaAoLQmF0Y2hVcGxvYWQSHi5wdWJsaWNfYXBpLkJhdGNoVXBsb2FkUmVxdWVzdBofLnB1YmxpY19hcGkuQmF0Y2hVcGxvYWRSZXNwb25zZSIYgtPkkwISIg0vYmF0Y2gtdXBsb2FkOgEqEksKBENoYXQSFy5wdWJsaWNfYXBpLkNoYXRSZXF1ZXN0GhgucHVibGljX2FwaS5DaGF0UmVzcG9uc2UiEILT5JMCCiIFL2NoYXQ6ASoSWgoKQ2hhdFN0cmVhbRIXLnB1YmxpY19hcGkuQ2hhdFJlcXVlc3QaGC5wdWJsaWNfYXBpLkNoYXRSZXNwb25zZSIXgtPkkwIRIgwvY2hhdC1zdHJlYW06ASowARJiCg5Qcm9tcHRFbmhhbmNlchIXLnB1YmxpY19hcGkuQ2hhdFJlcXVlc3QaGC5wdWJsaWNfYXBpLkNoYXRSZXNwb25zZSIbgtPkkwIVIhAvcHJvbXB0LWVuaGFuY2VyOgEqMAESoAEKG0dlbmVyYXRlQ29tbWl0TWVzc2FnZVN0cmVhbRIoLnB1YmxpY19hcGkuR2VuZXJhdGVDb21taXRNZXNzYWdlUmVxdWVzdBopLnB1YmxpY19hcGkuR2VuZXJhdGVDb21taXRNZXNzYWdlUmVzcG9uc2UiKoLT5JMCJCIfL2dlbmVyYXRlLWNvbW1pdC1tZXNzYWdlLXN0cmVhbToBKjABEnUKEFNtYXJ0UGFzdGVTdHJlYW0SHi5wdWJsaWNfYXBpLkluc3RydWN0aW9uUmVxdWVzdBofLnB1YmxpY19hcGkuSW5zdHJ1Y3Rpb25SZXNwb25zZSIegtPkkwIYIhMvc21hcnQtcGFzdGUtc3RyZWFtOgEqMAESeAoPQ2hlY2twb2ludEJsb2JzEiIucHVibGljX2FwaS5DaGVja3BvaW50QmxvYnNSZXF1ZXN0GiMucHVibGljX2FwaS5DaGVja3BvaW50QmxvYnNSZXNwb25zZSIcgtPkkwIWIhEvY2hlY2twb2ludC1ibG9iczoBKhJjCgpDb21wbGV0aW9uEh0ucHVibGljX2FwaS5Db21wbGV0aW9uUmVxdWVzdBoeLnB1YmxpY19hcGkuQ29tcGxldGlvblJlc3BvbnNlIhaC0+STAhAiCy9jb21wbGV0aW9uOgEqEokBChNDaGF0SW5wdXRDb21wbGV0aW9uEiYucHVibGljX2FwaS5DaGF0SW5wdXRDb21wbGV0aW9uUmVxdWVzdBonLnB1YmxpY19hcGkuQ2hhdElucHV0Q29tcGxldGlvblJlc3BvbnNlIiGC0+STAhsiFi9jaGF0LWlucHV0LWNvbXBsZXRpb246ASoSegoVUmVzb2x2ZUNvbXBsZXRpb25zUnBjEh4ucHVibGljX2FwaS5SZXNvbHZlQ29tcGxldGlvbnMaIC5wdWJsaWNfYXBpLkNvbXBsZXRpb25SZXNvbHV0aW9uIh+C0+STAhkiFC9yZXNvbHZlLWNvbXBsZXRpb25zOgEqEoABChFSZXNvbHZlU21hcnRQYXN0ZRIgLnB1YmxpY19hcGkuU21hcnRQYXN0ZVJlc29sdXRpb24aKC5wdWJsaWNfYXBpLlNtYXJ0UGFzdGVSZXNvbHV0aW9uUmVzcG9uc2UiH4LT5JMCGSIUL3Jlc29sdmUtc21hcnQtcGFzdGU6ASoSpQEKGlJlc29sdmVDaGF0SW5wdXRDb21wbGV0aW9uEikucHVibGljX2FwaS5DaGF0SW5wdXRDb21wbGV0aW9uUmVzb2x1dGlvbhoxLnB1YmxpY19hcGkuQ2hhdElucHV0Q29tcGxldGlvblJlc29sdXRpb25SZXNwb25zZSIpgtPkkwIjIh4vcmVzb2x2ZS1jaGF0LWlucHV0LWNvbXBsZXRpb246ASoSSwoERWRpdBIXLnB1YmxpY19hcGkuRWRpdFJlcXVlc3QaGC5wdWJsaWNfYXBpLkVkaXRSZXNwb25zZSIQgtPkkwIKIgUvZWRpdDoBKhJkCgtSZXNvbHZlRWRpdBIaLnB1YmxpY19hcGkuRWRpdFJlc29sdXRpb24aHy5wdWJsaWNfYXBpLlJlc29sdmVFZGl0UmVzcG9uc2UiGILT5JMCEiINL3Jlc29sdmUtZWRpdDoBKhKaAQoWT25ib2FyZGluZ1Nlc3Npb25FdmVudBInLnB1YmxpY19hcGkuT25ib2FyZGluZ1Nlc3Npb25FdmVudEJhdGNoGioucHVibGljX2FwaS5PbmJvYXJkaW5nU2Vzc2lvbkV2ZW50UmVzcG9uc2UiK4LT5JMCJSIgL3JlY29yZC1vbmJvYXJkaW5nLXNlc3Npb24tZXZlbnQ6ASoSggEKFlJlY29yZFByZWZlcmVuY2VTYW1wbGUSHC5wdWJsaWNfYXBpLlByZWZlcmVuY2VTYW1wbGUaJC5wdWJsaWNfYXBpLlByZWZlcmVuY2VTYW1wbGVSZXNwb25zZSIkgtPkkwIeIhkvcmVjb3JkLXByZWZlcmVuY2Utc2FtcGxlOgEqEmgKC0ZpbmRNaXNzaW5nEh4ucHVibGljX2FwaS5GaW5kTWlzc2luZ1JlcXVlc3QaHy5wdWJsaWNfYXBpLkZpbmRNaXNzaW5nUmVzcG9uc2UiGILT5JMCEiINL2ZpbmQtbWlzc2luZzoBKhKXAQoXTGlzdEV4dGVybmFsU291cmNlVHlwZXMSKi5wdWJsaWNfYXBpLkxpc3RFeHRlcm5hbFNvdXJjZVR5cGVzUmVxdWVzdBorLnB1YmxpY19hcGkuTGlzdEV4dGVybmFsU291cmNlVHlwZXNSZXNwb25zZSIjgtPkkwIdIhsvbGlzdC1leHRlcm5hbC1zb3VyY2UtdHlwZXMSkQEKFVNlYXJjaEV4dGVybmFsU291cmNlcxIoLnB1YmxpY19hcGkuU2VhcmNoRXh0ZXJuYWxTb3VyY2VzUmVxdWVzdBopLnB1YmxpY19hcGkuU2VhcmNoRXh0ZXJuYWxTb3VyY2VzUmVzcG9uc2UiI4LT5JMCHSIYL3NlYXJjaC1leHRlcm5hbC1zb3VyY2VzOgEqEqYBChpHZXRJbXBsaWNpdEV4dGVybmFsU291cmNlcxItLnB1YmxpY19hcGkuR2V0SW1wbGljaXRFeHRlcm5hbFNvdXJjZXNSZXF1ZXN0Gi4ucHVibGljX2FwaS5HZXRJbXBsaWNpdEV4dGVybmFsU291cmNlc1Jlc3BvbnNlIimC0+STAiMiHi9nZXQtaW1wbGljaXQtZXh0ZXJuYWwtc291cmNlczoBKhJdCglHZXRNb2RlbHMSHC5wdWJsaWNfYXBpLkdldE1vZGVsc1JlcXVlc3QaHS5wdWJsaWNfYXBpLkdldE1vZGVsc1Jlc3BvbnNlIhOC0+STAg0iCy9nZXQtbW9kZWxzEl4KCE1lbW9yaXplEhsucHVibGljX2FwaS5NZW1vcml6ZVJlcXVlc3QaHC5wdWJsaWNfYXBpLk1lbW9yaXplUmVzcG9uc2UiF4gCAYLT5JMCDiIJL21lbW9yaXplOgEqEmgKC1JlcG9ydEVycm9yEh4ucHVibGljX2FwaS5SZXBvcnRFcnJvclJlcXVlc3QaHy5wdWJsaWNfYXBpLlJlcG9ydEVycm9yUmVzcG9uc2UiGILT5JMCEiINL3JlcG9ydC1lcnJvcjoBKhJxCg1HZXRDcmVkaXRJbmZvEiAucHVibGljX2FwaS5HZXRDcmVkaXRJbmZvUmVxdWVzdBohLnB1YmxpY19hcGkuR2V0Q3JlZGl0SW5mb1Jlc3BvbnNlIhuC0+STAhUiEC9nZXQtY3JlZGl0LWluZm86ASoSfQoQR2V0Q29zdEFuYWx5dGljcxIjLnB1YmxpY19hcGkuR2V0Q29zdEFuYWx5dGljc1JlcXVlc3QaJC5wdWJsaWNfYXBpLkdldENvc3RBbmFseXRpY3NSZXNwb25zZSIegtPkkwIYIhMvZ2V0LWNvc3QtYW5hbHl0aWNzOgEqEoYBChJHZXRDb3N0QW5hbHl0aWNzVjISJS5wdWJsaWNfYXBpLkdldENvc3RBbmFseXRpY3NWMlJlcXVlc3QaJi5wdWJsaWNfYXBpLkdldENvc3RBbmFseXRpY3NWMlJlc3BvbnNlIiGC0+STAhsiFi9nZXQtY29zdC1hbmFseXRpY3MtdjI6ASoSiQEKE0dldE91dGNvbWVBbmFseXRpY3MSJi5wdWJsaWNfYXBpLkdldE91dGNvbWVBbmFseXRpY3NSZXF1ZXN0GicucHVibGljX2FwaS5HZXRPdXRjb21lQW5hbHl0aWNzUmVzcG9uc2UiIYLT5JMCGyIWL2dldC1vdXRjb21lLWFuYWx5dGljczoBKhJcCghMaXN0VGFncxIbLnB1YmxpY19hcGkuTGlzdFRhZ3NSZXF1ZXN0GhwucHVibGljX2FwaS5MaXN0VGFnc1Jlc3BvbnNlIhWC0+STAg8iCi9saXN0LXRhZ3M6ASoSiQEKE0dldFNlc3Npb25BbmFseXRpY3MSJi5wdWJsaWNfYXBpLkdldFNlc3Npb25BbmFseXRpY3NSZXF1ZXN0GicucHVibGljX2FwaS5HZXRTZXNzaW9uQW5hbHl0aWNzUmVzcG9uc2UiIYLT5JMCGyIWL2dldC1zZXNzaW9uLWFuYWx5dGljczoBKhJ5Cg9HZXRTZXNzaW9uVXNhZ2USIi5wdWJsaWNfYXBpLkdldFNlc3Npb25Vc2FnZVJlcXVlc3QaIy5wdWJsaWNfYXBpLkdldFNlc3Npb25Vc2FnZVJlc3BvbnNlIh2C0+STAhciEi9nZXQtc2Vzc2lvbi11c2FnZToBKhKBAQoRR2V0QmlsbGluZ1N1bW1hcnkSJC5wdWJsaWNfYXBpLkdldEJpbGxpbmdTdW1tYXJ5UmVxdWVzdBolLnB1YmxpY19hcGkuR2V0QmlsbGluZ1N1bW1hcnlSZXNwb25zZSIfgtPkkwIZIhQvZ2V0LWJpbGxpbmctc3VtbWFyeToBKhJ2ChNSZXBvcnRDbGllbnRNZXRyaWNzEiAucHVibGljX2FwaS5DbGllbnRNZXRyaWNzUmVxdWVzdBohLnB1YmxpY19hcGkuQ2xpZW50TWV0cmljc1Jlc3BvbnNlIhqC0+STAhQiDy9jbGllbnQtbWV0cmljczoBKhKJAQoTUmVwb3J0RmVhdHVyZVZlY3RvchImLnB1YmxpY19hcGkuUmVwb3J0RmVhdHVyZVZlY3RvclJlcXVlc3QaJy5wdWJsaWNfYXBpLlJlcG9ydEZlYXR1cmVWZWN0b3JSZXNwb25zZSIhgtPkkwIbIhYvcmVwb3J0LWZlYXR1cmUtdmVjdG9yOgEqEoEBChZTZW5kQ29tcGxldGlvbkZlZWRiYWNrEh4ucHVibGljX2FwaS5Db21wbGV0aW9uRmVlZGJhY2saJi5wdWJsaWNfYXBpLkNvbXBsZXRpb25GZWVkYmFja1Jlc3BvbnNlIh+C0+STAhkiFC9jb21wbGV0aW9uLWZlZWRiYWNrOgEqEmkKEFNlbmRDaGF0RmVlZGJhY2sSGC5wdWJsaWNfYXBpLkNoYXRGZWVkYmFjaxogLnB1YmxpY19hcGkuQ2hhdEZlZWRiYWNrUmVzcG9uc2UiGYLT5JMCEyIOL2NoYXQtZmVlZGJhY2s6ASoSogEKHFNlbmRDbGllbnRDb21wbGV0aW9uVGltZWxpbmUSKy5wdWJsaWNfYXBpLkNsaWVudENvbXBsZXRpb25UaW1lbGluZVJlcXVlc3QaLC5wdWJsaWNfYXBpLkNsaWVudENvbXBsZXRpb25UaW1lbGluZVJlc3BvbnNlIieC0+STAiEiHC9jbGllbnQtY29tcGxldGlvbi10aW1lbGluZXM6ASoSfgoQVXBzZXJ0VXNlclNlY3JldBIjLnB1YmxpY19hcGkuVXBzZXJ0VXNlclNlY3JldFJlcXVlc3QaJC5wdWJsaWNfYXBpLlVwc2VydFVzZXJTZWNyZXRSZXNwb25zZSIfgtPkkwIZIhQvdXNlci1zZWNyZXRzL3Vwc2VydDoBKhJyCg1HZXRVc2VyU2VjcmV0EiAucHVibGljX2FwaS5HZXRVc2VyU2VjcmV0UmVxdWVzdBohLnB1YmxpY19hcGkuR2V0VXNlclNlY3JldFJlc3BvbnNlIhyC0+STAhYiES91c2VyLXNlY3JldHMvZ2V0OgEqEm4KDEdldE1jcFNlY3JldBIfLnB1YmxpY19hcGkuR2V0TWNwU2VjcmV0UmVxdWVzdBogLnB1YmxpY19hcGkuR2V0TWNwU2VjcmV0UmVzcG9uc2UiG4LT5JMCFSIQL21jcC1zZWNyZXRzL2dldDoBKhJ5Cg9MaXN0VXNlclNlY3JldHMSIi5wdWJsaWNfYXBpLkxpc3RVc2VyU2VjcmV0c1JlcXVlc3QaIy5wdWJsaWNfYXBpLkxpc3RVc2VyU2VjcmV0c1Jlc3BvbnNlIh2C0+STAhciEi91c2VyLXNlY3JldHMvbGlzdDoBKhJ+ChBEZWxldGVVc2VyU2VjcmV0EiMucHVibGljX2FwaS5EZWxldGVVc2VyU2VjcmV0UmVxdWVzdBokLnB1YmxpY19hcGkuRGVsZXRlVXNlclNlY3JldFJlc3BvbnNlIh+C0+STAhkiFC91c2VyLXNlY3JldHMvZGVsZXRlOgEqEnsKDkdldFVzZXJTZWNyZXRzEiEucHVibGljX2FwaS5HZXRVc2VyU2VjcmV0c1JlcXVlc3QaIi5wdWJsaWNfYXBpLkdldFVzZXJTZWNyZXRzUmVzcG9uc2UiIoLT5JMCHCIXL3VzZXItc2VjcmV0cy9nZXQtYmF0Y2g6ASoSlwEKFk1pZ3JhdGVVc2VyU2VjcmV0U2NvcGUSKS5wdWJsaWNfYXBpLk1pZ3JhdGVVc2VyU2VjcmV0U2NvcGVSZXF1ZXN0GioucHVibGljX2FwaS5NaWdyYXRlVXNlclNlY3JldFNjb3BlUmVzcG9uc2UiJoLT5JMCICIbL3VzZXItc2VjcmV0cy9taWdyYXRlLXNjb3BlOgEqEn4KEFJlbmFtZVVzZXJTZWNyZXQSIy5wdWJsaWNfYXBpLlJlbmFtZVVzZXJTZWNyZXRSZXF1ZXN0GiQucHVibGljX2FwaS5SZW5hbWVVc2VyU2VjcmV0UmVzcG9uc2UiH4LT5JMCGSIUL3VzZXItc2VjcmV0cy9yZW5hbWU6ASoSegoPR2V0VGVuYW50U2VjcmV0EiIucHVibGljX2FwaS5HZXRUZW5hbnRTZWNyZXRSZXF1ZXN0GiMucHVibGljX2FwaS5HZXRUZW5hbnRTZWNyZXRSZXNwb25zZSIegtPkkwIYIhMvdGVuYW50LXNlY3JldHMvZ2V0OgEqEoMBChBHZXRUZW5hbnRTZWNyZXRzEiMucHVibGljX2FwaS5HZXRUZW5hbnRTZWNyZXRzUmVxdWVzdBokLnB1YmxpY19hcGkuR2V0VGVuYW50U2VjcmV0c1Jlc3BvbnNlIiSC0+STAh4iGS90ZW5hbnQtc2VjcmV0cy9nZXQtYmF0Y2g6ASoShgEKElVwc2VydFRlbmFudFNlY3JldBIlLnB1YmxpY19hcGkuVXBzZXJ0VGVuYW50U2VjcmV0UmVxdWVzdBomLnB1YmxpY19hcGkuVXBzZXJ0VGVuYW50U2VjcmV0UmVzcG9uc2UiIYLT5JMCGyIWL3RlbmFudC1zZWNyZXRzL3Vwc2VydDoBKhKBAQoRTGlzdFRlbmFudFNlY3JldHMSJC5wdWJsaWNfYXBpLkxpc3RUZW5hbnRTZWNyZXRzUmVxdWVzdBolLnB1YmxpY19hcGkuTGlzdFRlbmFudFNlY3JldHNSZXNwb25zZSIfgtPkkwIZIhQvdGVuYW50LXNlY3JldHMvbGlzdDoBKhKGAQoSRGVsZXRlVGVuYW50U2VjcmV0EiUucHVibGljX2FwaS5EZWxldGVUZW5hbnRTZWNyZXRSZXF1ZXN0GiYucHVibGljX2FwaS5EZWxldGVUZW5hbnRTZWNyZXRSZXNwb25zZSIhgtPkkwIbIhYvdGVuYW50LXNlY3JldHMvZGVsZXRlOgEqElwKCFNhdmVDaGF0EhsucHVibGljX2FwaS5TYXZlQ2hhdFJlcXVlc3QaHC5wdWJsaWNfYXBpLlNhdmVDaGF0UmVzcG9uc2UiFYLT5JMCDyIKL3NhdmUtY2hhdDoBKhKJAQoTUmVjb3JkUmVxdWVzdEV2ZW50cxImLnB1YmxpY19hcGkuUmVjb3JkUmVxdWVzdEV2ZW50c1JlcXVlc3QaJy5wdWJsaWNfYXBpLlJlY29yZFJlcXVlc3RFdmVudHNSZXNwb25zZSIhgtPkkwIbIhYvcmVjb3JkLXJlcXVlc3QtZXZlbnRzOgEqEokBChNSZWNvcmRTZXNzaW9uRXZlbnRzEiYucHVibGljX2FwaS5SZWNvcmRTZXNzaW9uRXZlbnRzUmVxdWVzdBonLnB1YmxpY19hcGkuUmVjb3JkU2Vzc2lvbkV2ZW50c1Jlc3BvbnNlIiGC0+STAhsiFi9yZWNvcmQtc2Vzc2lvbi1ldmVudHM6ASoSsgEKHVJlY29yZFBvc2VpZG9uQW5hbHl0aWNzRXZlbnRzEjAucHVibGljX2FwaS5SZWNvcmRQb3NlaWRvbkFuYWx5dGljc0V2ZW50c1JlcXVlc3QaMS5wdWJsaWNfYXBpLlJlY29yZFBvc2VpZG9uQW5hbHl0aWNzRXZlbnRzUmVzcG9uc2UiLILT5JMCJiIhL3JlY29yZC1wb3NlaWRvbi1hbmFseXRpY3MtZXZlbnRzOgEqEocBChFDb2RlYmFzZVJldHJpZXZhbBIkLnB1YmxpY19hcGkuQ29kZWJhc2VSZXRyaWV2YWxSZXF1ZXN0GiUucHVibGljX2FwaS5Db2RlYmFzZVJldHJpZXZhbFJlc3BvbnNlIiWC0+STAh8iGi9hZ2VudHMvY29kZWJhc2UtcmV0cmlldmFsOgEqEpQBChRDb2RlYmFzZVJldHJpZXZhbFJhdxInLnB1YmxpY19hcGkuQ29kZWJhc2VSZXRyaWV2YWxSYXdSZXF1ZXN0GigucHVibGljX2FwaS5Db2RlYmFzZVJldHJpZXZhbFJhd1Jlc3BvbnNlIimC0+STAiMiHi9hZ2VudHMvY29kZWJhc2UtcmV0cmlldmFsLXJhdzoBKhJjCghFZGl0RmlsZRIbLnB1YmxpY19hcGkuRWRpdEZpbGVSZXF1ZXN0GhwucHVibGljX2FwaS5FZGl0RmlsZVJlc3BvbnNlIhyC0+STAhYiES9hZ2VudHMvZWRpdC1maWxlOgEqEoABCg9MaXN0UmVtb3RlVG9vbHMSIi5wdWJsaWNfYXBpLkxpc3RSZW1vdGVUb29sc1JlcXVlc3QaIy5wdWJsaWNfYXBpLkxpc3RSZW1vdGVUb29sc1Jlc3BvbnNlIiSC0+STAh4iGS9hZ2VudHMvbGlzdC1yZW1vdGUtdG9vbHM6ASoSeAoNUnVuUmVtb3RlVG9vbBIgLnB1YmxpY19hcGkuUnVuUmVtb3RlVG9vbFJlcXVlc3QaIS5wdWJsaWNfYXBpLlJ1blJlbW90ZVRvb2xSZXNwb25zZSIigtPkkwIcIhcvYWdlbnRzL3J1bi1yZW1vdGUtdG9vbDoBKhKEAQoQUmV2b2tlVG9vbEFjY2VzcxIjLnB1YmxpY19hcGkuUmV2b2tlVG9vbEFjY2Vzc1JlcXVlc3QaJC5wdWJsaWNfYXBpLlJldm9rZVRvb2xBY2Nlc3NSZXNwb25zZSIlgtPkkwIfIhovYWdlbnRzL3Jldm9rZS10b29sLWFjY2VzczoBKhKMAQoSVGVzdFRvb2xDb25uZWN0aW9uEiUucHVibGljX2FwaS5UZXN0VG9vbENvbm5lY3Rpb25SZXF1ZXN0GiYucHVibGljX2FwaS5UZXN0VG9vbENvbm5lY3Rpb25SZXNwb25zZSIngtPkkwIhIhwvYWdlbnRzL3Rlc3QtdG9vbC1jb25uZWN0aW9uOgEqEoABCg9DaGVja1Rvb2xTYWZldHkSIi5wdWJsaWNfYXBpLkNoZWNrVG9vbFNhZmV0eVJlcXVlc3QaIy5wdWJsaWNfYXBpLkNoZWNrVG9vbFNhZmV0eVJlc3BvbnNlIiSC0+STAh4iGS9hZ2VudHMvY2hlY2stdG9vbC1zYWZldHk6ASoSggEKEUNyZWF0ZVJlbW90ZUFnZW50EiQucHVibGljX2FwaS5DcmVhdGVSZW1vdGVBZ2VudFJlcXVlc3QaJS5wdWJsaWNfYXBpLkNyZWF0ZVJlbW90ZUFnZW50UmVzcG9uc2UiIILT5JMCGiIVL3JlbW90ZS1hZ2VudHMvY3JlYXRlOgEqEoIBChFEZWxldGVSZW1vdGVBZ2VudBIkLnB1YmxpY19hcGkuRGVsZXRlUmVtb3RlQWdlbnRSZXF1ZXN0GiUucHVibGljX2FwaS5EZWxldGVSZW1vdGVBZ2VudFJlc3BvbnNlIiCC0+STAhoiFS9yZW1vdGUtYWdlbnRzL2RlbGV0ZToBKhJ9ChBMaXN0UmVtb3RlQWdlbnRzEiMucHVibGljX2FwaS5MaXN0UmVtb3RlQWdlbnRzUmVxdWVzdBokLnB1YmxpY19hcGkuTGlzdFJlbW90ZUFnZW50c1Jlc3BvbnNlIh6C0+STAhgiEy9yZW1vdGUtYWdlbnRzL2xpc3Q6ASoSmAEKFkxpc3RSZW1vdGVBZ2VudHNTdHJlYW0SKS5wdWJsaWNfYXBpLkxpc3RSZW1vdGVBZ2VudHNTdHJlYW1SZXF1ZXN0GioucHVibGljX2FwaS5MaXN0UmVtb3RlQWdlbnRzU3RyZWFtUmVzcG9uc2UiJYLT5JMCHyIaL3JlbW90ZS1hZ2VudHMvbGlzdC1zdHJlYW06ASowARKkAQoZR2V0UmVtb3RlQWdlbnRDaGF0SGlzdG9yeRIsLnB1YmxpY19hcGkuR2V0UmVtb3RlQWdlbnRDaGF0SGlzdG9yeVJlcXVlc3QaLS5wdWJsaWNfYXBpLkdldFJlbW90ZUFnZW50Q2hhdEhpc3RvcnlSZXNwb25zZSIqgtPkkwIkIh8vcmVtb3RlLWFnZW50cy9nZXQtY2hhdC1oaXN0b3J5OgEqErABChtHZXRSZW1vdGVBZ2VudEhpc3RvcnlTdHJlYW0SLi5wdWJsaWNfYXBpLkdldFJlbW90ZUFnZW50SGlzdG9yeVN0cmVhbVJlcXVlc3QaLy5wdWJsaWNfYXBpLkdldFJlbW90ZUFnZW50SGlzdG9yeVN0cmVhbVJlc3BvbnNlIi6C0+STAigiIy9yZW1vdGUtYWdlbnRzL2FnZW50LWhpc3Rvcnktc3RyZWFtOgEqMAESegoPUmVtb3RlQWdlbnRDaGF0EiIucHVibGljX2FwaS5SZW1vdGVBZ2VudENoYXRSZXF1ZXN0GiMucHVibGljX2FwaS5SZW1vdGVBZ2VudENoYXRSZXNwb25zZSIegtPkkwIYIhMvcmVtb3RlLWFnZW50cy9jaGF0OgEqEo4BChRJbnRlcnJ1cHRSZW1vdGVBZ2VudBInLnB1YmxpY19hcGkuSW50ZXJydXB0UmVtb3RlQWdlbnRSZXF1ZXN0GigucHVibGljX2FwaS5JbnRlcnJ1cHRSZW1vdGVBZ2VudFJlc3BvbnNlIiOC0+STAh0iGC9yZW1vdGUtYWdlbnRzL2ludGVycnVwdDoBKhKQAQoUUmVtb3RlQWdlbnRBZGRTU0hLZXkSJy5wdWJsaWNfYXBpLlJlbW90ZUFnZW50QWRkU1NIS2V5UmVxdWVzdBooLnB1YmxpY19hcGkuUmVtb3RlQWdlbnRBZGRTU0hLZXlSZXNwb25zZSIlgtPkkwIfIhovcmVtb3RlLWFnZW50cy9hZGQtc3NoLWtleToBKhKVAQoYUmVtb3RlQWdlbnRXb3Jrc3BhY2VMb2dzEisucHVibGljX2FwaS5SZW1vdGVBZ2VudFdvcmtzcGFjZUxvZ3NSZXF1ZXN0GiwucHVibGljX2FwaS5SZW1vdGVBZ2VudFdvcmtzcGFjZUxvZ3NSZXNwb25zZSIegtPkkwIYIhMvcmVtb3RlLWFnZW50cy9sb2dzOgEqEn4KEFBhdXNlUmVtb3RlQWdlbnQSIy5wdWJsaWNfYXBpLlJlbW90ZUFnZW50UGF1c2VSZXF1ZXN0GiQucHVibGljX2FwaS5SZW1vdGVBZ2VudFBhdXNlUmVzcG9uc2UiH4LT5JMCGSIUL3JlbW90ZS1hZ2VudHMvcGF1c2U6ASoSggEKEVJlc3VtZVJlbW90ZUFnZW50EiQucHVibGljX2FwaS5SZW1vdGVBZ2VudFJlc3VtZVJlcXVlc3QaJS5wdWJsaWNfYXBpLlJlbW90ZUFnZW50UmVzdW1lUmVzcG9uc2UiIILT5JMCGiIVL3JlbW90ZS1hZ2VudHMvcmVzdW1lOgEqEpMBChVSZXN1bWVIaW50UmVtb3RlQWdlbnQSKC5wdWJsaWNfYXBpLlJlbW90ZUFnZW50UmVzdW1lSGludFJlcXVlc3QaKS5wdWJsaWNfYXBpLlJlbW90ZUFnZW50UmVzdW1lSGludFJlc3BvbnNlIiWC0+STAh8iGi9yZW1vdGUtYWdlbnRzL3Jlc3VtZS1oaW50OgEqEoIBChFVcGRhdGVSZW1vdGVBZ2VudBIkLnB1YmxpY19hcGkuVXBkYXRlUmVtb3RlQWdlbnRSZXF1ZXN0GiUucHVibGljX2FwaS5VcGRhdGVSZW1vdGVBZ2VudFJlc3BvbnNlIiCC0+STAhoiFS9yZW1vdGUtYWdlbnRzL3VwZGF0ZToBKhKGAQoNQ3JlYXRlVHJpZ2dlchIgLnB1YmxpY19hcGkuQ3JlYXRlVHJpZ2dlclJlcXVlc3QaIS5wdWJsaWNfYXBpLkNyZWF0ZVRyaWdnZXJSZXNwb25zZSIwgtPkkwIqIiUvcmVtb3RlLWFnZW50LWFjdGlvbnMvdHJpZ2dlcnMvY3JlYXRlOgEqEoEBCgxMaXN0VHJpZ2dlcnMSHy5wdWJsaWNfYXBpLkxpc3RUcmlnZ2Vyc1JlcXVlc3QaIC5wdWJsaWNfYXBpLkxpc3RUcmlnZ2Vyc1Jlc3BvbnNlIi6C0+STAigiIy9yZW1vdGUtYWdlbnQtYWN0aW9ucy90cmlnZ2Vycy9saXN0OgEqEoYBCg1VcGRhdGVUcmlnZ2VyEiAucHVibGljX2FwaS5VcGRhdGVUcmlnZ2VyUmVxdWVzdBohLnB1YmxpY19hcGkuVXBkYXRlVHJpZ2dlclJlc3BvbnNlIjCC0+STAioiJS9yZW1vdGUtYWdlbnQtYWN0aW9ucy90cmlnZ2Vycy91cGRhdGU6ASoShgEKDURlbGV0ZVRyaWdnZXISIC5wdWJsaWNfYXBpLkRlbGV0ZVRyaWdnZXJSZXF1ZXN0GiEucHVibGljX2FwaS5EZWxldGVUcmlnZ2VyUmVzcG9uc2UiMILT5JMCKiIlL3JlbW90ZS1hZ2VudC1hY3Rpb25zL3RyaWdnZXJzL2RlbGV0ZToBKhKfAQoUR2V0VHJpZ2dlckV4ZWN1dGlvbnMSJy5wdWJsaWNfYXBpLkdldFRyaWdnZXJFeGVjdXRpb25zUmVxdWVzdBooLnB1YmxpY19hcGkuR2V0VHJpZ2dlckV4ZWN1dGlvbnNSZXNwb25zZSI0gtPkkwIuIikvcmVtb3RlLWFnZW50LWFjdGlvbnMvdHJpZ2dlcnMvZXhlY3V0aW9uczoBKhKjAQoTR2V0TWF0Y2hpbmdFbnRpdGllcxImLnB1YmxpY19hcGkuR2V0TWF0Y2hpbmdFbnRpdGllc1JlcXVlc3QaJy5wdWJsaWNfYXBpLkdldE1hdGNoaW5nRW50aXRpZXNSZXNwb25zZSI7gtPkkwI1IjAvcmVtb3RlLWFnZW50LWFjdGlvbnMvdHJpZ2dlcnMvbWF0Y2hpbmctZW50aXRpZXM6ASoSjgEKDURpc21pc3NFbnRpdHkSIC5wdWJsaWNfYXBpLkRpc21pc3NFbnRpdHlSZXF1ZXN0GiEucHVibGljX2FwaS5EaXNtaXNzRW50aXR5UmVzcG9uc2UiOILT5JMCMiItL3JlbW90ZS1hZ2VudC1hY3Rpb25zL3RyaWdnZXJzL2Rpc21pc3MtZW50aXR5OgEqEqsBChZFeGVjdXRlVHJpZ2dlck1hbnVhbGx5EikucHVibGljX2FwaS5FeGVjdXRlVHJpZ2dlck1hbnVhbGx5UmVxdWVzdBoqLnB1YmxpY19hcGkuRXhlY3V0ZVRyaWdnZXJNYW51YWxseVJlc3BvbnNlIjqC0+STAjQiLy9yZW1vdGUtYWdlbnQtYWN0aW9ucy90cmlnZ2Vycy9leGVjdXRlLW1hbnVhbGx5OgEqEpoBChJFeGVjdXRlTWFudWFsQWdlbnQSJS5wdWJsaWNfYXBpLkV4ZWN1dGVNYW51YWxBZ2VudFJlcXVlc3QaJi5wdWJsaWNfYXBpLkV4ZWN1dGVNYW51YWxBZ2VudFJlc3BvbnNlIjWC0+STAi8iKi9yZW1vdGUtYWdlbnQtYWN0aW9ucy9leGVjdXRlLW1hbnVhbC1hZ2VudDoBKhKSAQoQR2V0RW50aXR5RGV0YWlscxIjLnB1YmxpY19hcGkuR2V0RW50aXR5RGV0YWlsc1JlcXVlc3QaJC5wdWJsaWNfYXBpLkdldEVudGl0eURldGFpbHNSZXNwb25zZSIzgtPkkwItIigvcmVtb3RlLWFnZW50LWFjdGlvbnMvZ2V0LWVudGl0eS1kZXRhaWxzOgEqEpkBChRMaXN0UHVsbFJlcXVlc3RGaWxlcxInLnB1YmxpY19hcGkuTGlzdFB1bGxSZXF1ZXN0RmlsZXNSZXF1ZXN0GigucHVibGljX2FwaS5MaXN0UHVsbFJlcXVlc3RGaWxlc1Jlc3BvbnNlIi6C0+STAigiIy9yZW1vdGUtYWdlbnQtYWN0aW9ucy9saXN0LXByLWZpbGVzOgEqEqcBChpSZW1vdGVBZ2VudEdlbmVyYXRlU3VtbWFyeRItLnB1YmxpY19hcGkuUmVtb3RlQWdlbnRHZW5lcmF0ZVN1bW1hcnlSZXF1ZXN0Gi4ucHVibGljX2FwaS5SZW1vdGVBZ2VudEdlbmVyYXRlU3VtbWFyeVJlc3BvbnNlIiqC0+STAiQiHy9yZW1vdGUtYWdlbnRzL2dlbmVyYXRlLXN1bW1hcnk6ASoSpAEKFkxpc3RHaXRodWJTZXR1cFNjcmlwdHMSKS5wdWJsaWNfYXBpLkxpc3RHaXRodWJTZXR1cFNjcmlwdHNSZXF1ZXN0GioucHVibGljX2FwaS5MaXN0R2l0aHViU2V0dXBTY3JpcHRzUmVzcG9uc2UiM4LT5JMCLSIoL3JlbW90ZS1hZ2VudHMvbGlzdC1naXRodWItc2V0dXAtc2NyaXB0czoBKhKgAQoVUmVhZEdpdGh1YlNldHVwU2NyaXB0EigucHVibGljX2FwaS5SZWFkR2l0aHViU2V0dXBTY3JpcHRSZXF1ZXN0GikucHVibGljX2FwaS5SZWFkR2l0aHViU2V0dXBTY3JpcHRSZXNwb25zZSIygtPkkwIsIicvcmVtb3RlLWFnZW50cy9yZWFkLWdpdGh1Yi1zZXR1cC1zY3JpcHQ6ASoSpgEKGkFnZW50V29ya3NwYWNlUmVwb3J0U3RhdHVzEi0ucHVibGljX2FwaS5BZ2VudFdvcmtzcGFjZVJlcG9ydFN0YXR1c1JlcXVlc3QaLi5wdWJsaWNfYXBpLkFnZW50V29ya3NwYWNlUmVwb3J0U3RhdHVzUmVzcG9uc2UiKYLT5JMCIyIeL2FnZW50LXdvcmtzcGFjZS9yZXBvcnQtc3RhdHVzOgEqErsBCh9BZ2VudFdvcmtzcGFjZVJlcG9ydENoYXRIaXN0b3J5EjIucHVibGljX2FwaS5BZ2VudFdvcmtzcGFjZVJlcG9ydENoYXRIaXN0b3J5UmVxdWVzdBozLnB1YmxpY19hcGkuQWdlbnRXb3Jrc3BhY2VSZXBvcnRDaGF0SGlzdG9yeVJlc3BvbnNlIi+C0+STAikiJC9hZ2VudC13b3Jrc3BhY2UvcmVwb3J0LWNoYXQtaGlzdG9yeToBKhKeAQoYQWdlbnRXb3Jrc3BhY2VQb2xsVXBkYXRlEisucHVibGljX2FwaS5BZ2VudFdvcmtzcGFjZVBvbGxVcGRhdGVSZXF1ZXN0GiwucHVibGljX2FwaS5BZ2VudFdvcmtzcGFjZVBvbGxVcGRhdGVSZXNwb25zZSIngtPkkwIhIhwvYWdlbnQtd29ya3NwYWNlL3BvbGwtdXBkYXRlOgEqEo8BChRBZ2VudFdvcmtzcGFjZVN0cmVhbRInLnB1YmxpY19hcGkuQWdlbnRXb3Jrc3BhY2VTdHJlYW1SZXF1ZXN0GigucHVibGljX2FwaS5BZ2VudFdvcmtzcGFjZVN0cmVhbVJlc3BvbnNlIiKC0+STAhwiFy9hZ2VudC13b3Jrc3BhY2Uvc3RyZWFtOgEqMAESwwEKIkFnZW50V29ya3NwYWNlUmVwb3J0TGFzdFNlcXVlbmNlSWQSNS5wdWJsaWNfYXBpLkFnZW50V29ya3NwYWNlUmVwb3J0TGFzdFNlcXVlbmNlSWRSZXF1ZXN0GjYucHVibGljX2FwaS5BZ2VudFdvcmtzcGFjZVJlcG9ydExhc3RTZXF1ZW5jZUlkUmVzcG9uc2UiLoLT5JMCKCIjL2FnZW50LXdvcmtzcGFjZS9yZXBvcnQtbGFzdC1zZXEtaWQ6ASoStwEKH0FnZW50V29ya3NwYWNlR2V0TGFzdFNlcXVlbmNlSWQSMi5wdWJsaWNfYXBpLkFnZW50V29ya3NwYWNlR2V0TGFzdFNlcXVlbmNlSWRSZXF1ZXN0GjMucHVibGljX2FwaS5BZ2VudFdvcmtzcGFjZUdldExhc3RTZXF1ZW5jZUlkUmVzcG9uc2UiK4LT5JMCJSIgL2FnZW50LXdvcmtzcGFjZS9nZXQtbGFzdC1zZXEtaWQ6ASoSswEKHUFnZW50V29ya3NwYWNlUmVwb3J0U2V0dXBMb2dzEjAucHVibGljX2FwaS5BZ2VudFdvcmtzcGFjZVJlcG9ydFNldHVwTG9nc1JlcXVlc3QaMS5wdWJsaWNfYXBpLkFnZW50V29ya3NwYWNlUmVwb3J0U2V0dXBMb2dzUmVzcG9uc2UiLYLT5JMCJyIiL2FnZW50LXdvcmtzcGFjZS9yZXBvcnQtc2V0dXAtbG9nczoBKhJ7Cg9MaXN0Q2hhdEhpc3RvcnkSIi5wdWJsaWNfYXBpLkxpc3RDaGF0SGlzdG9yeVJlcXVlc3QaIy5wdWJsaWNfYXBpLkxpc3RDaGF0SGlzdG9yeVJlc3BvbnNlIh+C0+STAhkiFC9jaGF0L2V4Y2hhbmdlcy9saXN0OgEqEn8KEENvdW50Q2hhdEhpc3RvcnkSIy5wdWJsaWNfYXBpLkNvdW50Q2hhdEhpc3RvcnlSZXF1ZXN0GiQucHVibGljX2FwaS5Db3VudENoYXRIaXN0b3J5UmVzcG9uc2UiIILT5JMCGiIVL2NoYXQvZXhjaGFuZ2VzL2NvdW50OgEqEoMBChFJbnNlcnRDaGF0SGlzdG9yeRIkLnB1YmxpY19hcGkuSW5zZXJ0Q2hhdEhpc3RvcnlSZXF1ZXN0GiUucHVibGljX2FwaS5JbnNlcnRDaGF0SGlzdG9yeVJlc3BvbnNlIiGC0+STAhsiFi9jaGF0L2V4Y2hhbmdlcy9pbnNlcnQ6ASoSfQoPQ3JlYXRlV29ya3NwYWNlEiIucHVibGljX2FwaS5DcmVhdGVXb3Jrc3BhY2VSZXF1ZXN0GiMucHVibGljX2FwaS5DcmVhdGVXb3Jrc3BhY2VSZXNwb25zZSIhgtPkkwIbIhYvY2hhdC93b3Jrc3BhY2UvY3JlYXRlOgEqEn0KD1VwZGF0ZVdvcmtzcGFjZRIiLnB1YmxpY19hcGkuVXBkYXRlV29ya3NwYWNlUmVxdWVzdBojLnB1YmxpY19hcGkuVXBkYXRlV29ya3NwYWNlUmVzcG9uc2UiIYLT5JMCGyIWL2NoYXQvd29ya3NwYWNlL3VwZGF0ZToBKhJ4Cg5MaXN0V29ya3NwYWNlcxIhLnB1YmxpY19hcGkuTGlzdFdvcmtzcGFjZXNSZXF1ZXN0GiIucHVibGljX2FwaS5MaXN0V29ya3NwYWNlc1Jlc3BvbnNlIh+C0+STAhkiFC9jaGF0L3dvcmtzcGFjZS9saXN0OgEqEokBChJDcmVhdGVDb252ZXJzYXRpb24SJS5wdWJsaWNfYXBpLkNyZWF0ZUNvbnZlcnNhdGlvblJlcXVlc3QaJi5wdWJsaWNfYXBpLkNyZWF0ZUNvbnZlcnNhdGlvblJlc3BvbnNlIiSC0+STAh4iGS9jaGF0L2NvbnZlcnNhdGlvbi9jcmVhdGU6ASoSiQEKElVwZGF0ZUNvbnZlcnNhdGlvbhIlLnB1YmxpY19hcGkuVXBkYXRlQ29udmVyc2F0aW9uUmVxdWVzdBomLnB1YmxpY19hcGkuVXBkYXRlQ29udmVyc2F0aW9uUmVzcG9uc2UiJILT5JMCHiIZL2NoYXQvY29udmVyc2F0aW9uL3VwZGF0ZToBKhJ9Cg9HZXRDb252ZXJzYXRpb24SIi5wdWJsaWNfYXBpLkdldENvbnZlcnNhdGlvblJlcXVlc3QaIy5wdWJsaWNfYXBpLkdldENvbnZlcnNhdGlvblJlc3BvbnNlIiGC0+STAhsiFi9jaGF0L2NvbnZlcnNhdGlvbi9nZXQ6ASoShAEKEUxpc3RDb252ZXJzYXRpb25zEiQucHVibGljX2FwaS5MaXN0Q29udmVyc2F0aW9uc1JlcXVlc3QaJS5wdWJsaWNfYXBpLkxpc3RDb252ZXJzYXRpb25zUmVzcG9uc2UiIoLT5JMCHCIXL2NoYXQvY29udmVyc2F0aW9uL2xpc3Q6ASoStQEKI0xpc3RHaXRodWJSZXBvc0ZvckF1dGhlbnRpY2F0ZWRVc2VyEjYucHVibGljX2FwaS5MaXN0R2l0aHViUmVwb3NGb3JBdXRoZW50aWNhdGVkVXNlclJlcXVlc3QaNy5wdWJsaWNfYXBpLkxpc3RHaXRodWJSZXBvc0ZvckF1dGhlbnRpY2F0ZWRVc2VyUmVzcG9uc2UiHYLT5JMCFyISL2dpdGh1Yi9saXN0LXJlcG9zOgEqEpEBChZMaXN0R2l0aHViUmVwb0JyYW5jaGVzEikucHVibGljX2FwaS5MaXN0R2l0aHViUmVwb0JyYW5jaGVzUmVxdWVzdBoqLnB1YmxpY19hcGkuTGlzdEdpdGh1YlJlcG9CcmFuY2hlc1Jlc3BvbnNlIiCC0+STAhoiFS9naXRodWIvbGlzdC1icmFuY2hlczoBKhJxCg1HZXRHaXRodWJSZXBvEiAucHVibGljX2FwaS5HZXRHaXRodWJSZXBvUmVxdWVzdBohLnB1YmxpY19hcGkuR2V0R2l0aHViUmVwb1Jlc3BvbnNlIhuC0+STAhUiEC9naXRodWIvZ2V0LXJlcG86ASoSlgEKFklzVXNlckdpdGh1YkNvbmZpZ3VyZWQSKS5wdWJsaWNfYXBpLklzVXNlckdpdGh1YkNvbmZpZ3VyZWRSZXF1ZXN0GioucHVibGljX2FwaS5Jc1VzZXJHaXRodWJDb25maWd1cmVkUmVzcG9uc2UiJYLT5JMCHyIaL2dpdGh1Yi9pcy11c2VyLWNvbmZpZ3VyZWQ6ASoSiAEKEUNyZWF0ZVB1bGxSZXF1ZXN0EiQucHVibGljX2FwaS5DcmVhdGVQdWxsUmVxdWVzdFJlcXVlc3QaJS5wdWJsaWNfYXBpLkNyZWF0ZVB1bGxSZXF1ZXN0UmVzcG9uc2UiJoLT5JMCICIbL2dpdGh1Yi9jcmVhdGUtcHVsbC1yZXF1ZXN0OgEqEq8BChxSZWdpc3RlckluZGV4ZWRDb21taXRCbG9ic2V0Ei8ucHVibGljX2FwaS5SZWdpc3RlckluZGV4ZWRDb21taXRCbG9ic2V0UmVxdWVzdBowLnB1YmxpY19hcGkuUmVnaXN0ZXJJbmRleGVkQ29tbWl0QmxvYnNldFJlc3BvbnNlIiyC0+STAiYiIS9pbmRleGVkLWNvbW1pdHMvcmVnaXN0ZXItYmxvYnNldDoBKhK2AQodR2V0TGF0ZXN0SW5kZXhlZENvbW1pdEJsb2JzZXQSMC5wdWJsaWNfYXBpLkdldExhdGVzdEluZGV4ZWRDb21taXRCbG9ic2V0UmVxdWVzdBoxLnB1YmxpY19hcGkuR2V0TGF0ZXN0SW5kZXhlZENvbW1pdEJsb2JzZXRSZXNwb25zZSIugtPkkwIoIiMvaW5kZXhlZC1jb21taXRzL2dldC1sYXRlc3QtYmxvYnNldDoBKjABEoUBChNHZXRTdWJzY3JpcHRpb25JbmZvEiYucHVibGljX2FwaS5HZXRTdWJzY3JpcHRpb25JbmZvUmVxdWVzdBonLnB1YmxpY19hcGkuR2V0U3Vic2NyaXB0aW9uSW5mb1Jlc3BvbnNlIh2C0+STAhciEi9zdWJzY3JpcHRpb24taW5mbzoBKhKNAQoVR2V0U3Vic2NyaXB0aW9uQmFubmVyEigucHVibGljX2FwaS5HZXRTdWJzY3JpcHRpb25CYW5uZXJSZXF1ZXN0GikucHVibGljX2FwaS5HZXRTdWJzY3JpcHRpb25CYW5uZXJSZXNwb25zZSIfgtPkkwIZIhQvc3Vic2NyaXB0aW9uLWJhbm5lcjoBKhKaAQoXUmV2b2tlQ3VycmVudFVzZXJUb2tlbnMSKi5wdWJsaWNfYXBpLlJldm9rZUN1cnJlbnRVc2VyVG9rZW5zUmVxdWVzdBorLnB1YmxpY19hcGkuUmV2b2tlQ3VycmVudFVzZXJUb2tlbnNSZXNwb25zZSImgtPkkwIgIhsvcmV2b2tlLWN1cnJlbnQtdXNlci10b2tlbnM6ASoSgAEKEVJlYWROb3RpZmljYXRpb25zEiQucHVibGljX2FwaS5SZWFkTm90aWZpY2F0aW9uc1JlcXVlc3QaJS5wdWJsaWNfYXBpLlJlYWROb3RpZmljYXRpb25zUmVzcG9uc2UiHoLT5JMCGCITL25vdGlmaWNhdGlvbnMvcmVhZDoBKhKXAQoWTWFya05vdGlmaWNhdGlvbkFzUmVhZBIpLnB1YmxpY19hcGkuTWFya05vdGlmaWNhdGlvbkFzUmVhZFJlcXVlc3QaKi5wdWJsaWNfYXBpLk1hcmtOb3RpZmljYXRpb25Bc1JlYWRSZXNwb25zZSImgtPkkwIgIhsvbm90aWZpY2F0aW9ucy9tYXJrLWFzLXJlYWQ6ASoSlwEKE0FjdGlvbnNTZXRVc2VyU3RhdGUSJi5wdWJsaWNfYXBpLkFjdGlvbnNTZXRVc2VyU3RhdGVSZXF1ZXN0GicucHVibGljX2FwaS5BY3Rpb25zU2V0VXNlclN0YXRlUmVzcG9uc2UiL4LT5JMCKSIkL3JlbW90ZS1hZ2VudC1hY3Rpb25zL3VzZXItc3RhdGUvc2V0OgEqEpcBChNBY3Rpb25zR2V0VXNlclN0YXRlEiYucHVibGljX2FwaS5BY3Rpb25zR2V0VXNlclN0YXRlUmVxdWVzdBonLnB1YmxpY19hcGkuQWN0aW9uc0dldFVzZXJTdGF0ZVJlc3BvbnNlIi+C0+STAikiJC9yZW1vdGUtYWdlbnQtYWN0aW9ucy91c2VyLXN0YXRlL2dldDoBKhKnAQoYR2V0VGVuYW50VG9vbFBlcm1pc3Npb25zEisucHVibGljX2FwaS5HZXRUZW5hbnRUb29sUGVybWlzc2lvbnNSZXF1ZXN0GiwucHVibGljX2FwaS5HZXRUZW5hbnRUb29sUGVybWlzc2lvbnNSZXNwb25zZSIwgtPkkwIqIiUvc2V0dGluZ3MvZ2V0LXRlbmFudC10b29sLXBlcm1pc3Npb25zOgEqEpMBChNHZXRNY3BUZW5hbnRDb25maWdzEiYucHVibGljX2FwaS5HZXRNY3BUZW5hbnRDb25maWdzUmVxdWVzdBonLnB1YmxpY19hcGkuR2V0TWNwVGVuYW50Q29uZmlnc1Jlc3BvbnNlIiuC0+STAiUiIC9zZXR0aW5ncy9nZXQtbWNwLXRlbmFudC1jb25maWdzOgEqEosBChFHZXRNY3BVc2VyQ29uZmlncxIkLnB1YmxpY19hcGkuR2V0TWNwVXNlckNvbmZpZ3NSZXF1ZXN0GiUucHVibGljX2FwaS5HZXRNY3BVc2VyQ29uZmlnc1Jlc3BvbnNlIimC0+STAiMiHi9zZXR0aW5ncy9nZXQtbWNwLXVzZXItY29uZmlnczoBKhKbAQoVR2V0TWNwQ2F0YWxvZ01ldGFkYXRhEigucHVibGljX2FwaS5HZXRNY3BDYXRhbG9nTWV0YWRhdGFSZXF1ZXN0GikucHVibGljX2FwaS5HZXRNY3BDYXRhbG9nTWV0YWRhdGFSZXNwb25zZSItgtPkkwInIiIvc2V0dGluZ3MvZ2V0LW1jcC1jYXRhbG9nLW1ldGFkYXRhOgEqEogBChBHZXRNY3BDb25maWdCeUlkEiMucHVibGljX2FwaS5HZXRNY3BDb25maWdCeUlkUmVxdWVzdBokLnB1YmxpY19hcGkuR2V0TWNwQ29uZmlnQnlJZFJlc3BvbnNlIimC0+STAiMiHi9zZXR0aW5ncy9nZXQtbWNwLWNvbmZpZy1ieS1pZDoBKhKPAQoSR2V0TWNwVXNlclNldHRpbmdzEiUucHVibGljX2FwaS5HZXRNY3BVc2VyU2V0dGluZ3NSZXF1ZXN0GiYucHVibGljX2FwaS5HZXRNY3BVc2VyU2V0dGluZ3NSZXNwb25zZSIqgtPkkwIkIh8vc2V0dGluZ3MvZ2V0LW1jcC11c2VyLXNldHRpbmdzOgEqEpcBChRHZXRNY3BUZW5hbnRTZXR0aW5ncxInLnB1YmxpY19hcGkuR2V0TWNwVGVuYW50U2V0dGluZ3NSZXF1ZXN0GigucHVibGljX2FwaS5HZXRNY3BUZW5hbnRTZXR0aW5nc1Jlc3BvbnNlIiyC0+STAiYiIS9zZXR0aW5ncy9nZXQtbWNwLXRlbmFudC1zZXR0aW5nczoBKhKjAQoXR2V0UG9zZWlkb25Vc2VyU2V0dGluZ3MSKi5wdWJsaWNfYXBpLkdldFBvc2VpZG9uVXNlclNldHRpbmdzUmVxdWVzdBorLnB1YmxpY19hcGkuR2V0UG9zZWlkb25Vc2VyU2V0dGluZ3NSZXNwb25zZSIvgtPkkwIpIiQvc2V0dGluZ3MvZ2V0LXBvc2VpZG9uLXVzZXItc2V0dGluZ3M6ASoSrwEKGlVwZGF0ZVBvc2VpZG9uVXNlclNldHRpbmdzEi0ucHVibGljX2FwaS5VcGRhdGVQb3NlaWRvblVzZXJTZXR0aW5nc1JlcXVlc3QaLi5wdWJsaWNfYXBpLlVwZGF0ZVBvc2VpZG9uVXNlclNldHRpbmdzUmVzcG9uc2UiMoLT5JMCLCInL3NldHRpbmdzL3VwZGF0ZS1wb3NlaWRvbi11c2VyLXNldHRpbmdzOgEqEo4BChJQaW5Qb3NlaWRvblNlc3Npb24SJS5wdWJsaWNfYXBpLlBpblBvc2VpZG9uU2Vzc2lvblJlcXVlc3QaJi5wdWJsaWNfYXBpLlBpblBvc2VpZG9uU2Vzc2lvblJlc3BvbnNlIimC0+STAiMiHi9zZXR0aW5ncy9waW4tcG9zZWlkb24tc2Vzc2lvbjoBKhKWAQoUVW5waW5Qb3NlaWRvblNlc3Npb24SJy5wdWJsaWNfYXBpLlVucGluUG9zZWlkb25TZXNzaW9uUmVxdWVzdBooLnB1YmxpY19hcGkuVW5waW5Qb3NlaWRvblNlc3Npb25SZXNwb25zZSIrgtPkkwIlIiAvc2V0dGluZ3MvdW5waW4tcG9zZWlkb24tc2Vzc2lvbjoBKhKrAQoZR2V0UG9zZWlkb25UZW5hbnRTZXR0aW5ncxIsLnB1YmxpY19hcGkuR2V0UG9zZWlkb25UZW5hbnRTZXR0aW5nc1JlcXVlc3QaLS5wdWJsaWNfYXBpLkdldFBvc2VpZG9uVGVuYW50U2V0dGluZ3NSZXNwb25zZSIxgtPkkwIrIiYvc2V0dGluZ3MvZ2V0LXBvc2VpZG9uLXRlbmFudC1zZXR0aW5nczoBKhK3AQocVXBkYXRlUG9zZWlkb25UZW5hbnRTZXR0aW5ncxIvLnB1YmxpY19hcGkuVXBkYXRlUG9zZWlkb25UZW5hbnRTZXR0aW5nc1JlcXVlc3QaMC5wdWJsaWNfYXBpLlVwZGF0ZVBvc2VpZG9uVGVuYW50U2V0dGluZ3NSZXNwb25zZSI0gtPkkwIuIikvc2V0dGluZ3MvdXBkYXRlLXBvc2VpZG9uLXRlbmFudC1zZXR0aW5nczoBKhKTAQoTVXBzZXJ0TWNwVXNlckNvbmZpZxImLnB1YmxpY19hcGkuVXBzZXJ0TWNwVXNlckNvbmZpZ1JlcXVlc3QaJy5wdWJsaWNfYXBpLlVwc2VydE1jcFVzZXJDb25maWdSZXNwb25zZSIrgtPkkwIlIiAvc2V0dGluZ3MvdXBzZXJ0LW1jcC11c2VyLWNvbmZpZzoBKhKbAQoVVXBzZXJ0TWNwVGVuYW50Q29uZmlnEigucHVibGljX2FwaS5VcHNlcnRNY3BUZW5hbnRDb25maWdSZXF1ZXN0GikucHVibGljX2FwaS5VcHNlcnRNY3BUZW5hbnRDb25maWdSZXNwb25zZSItgtPkkwInIiIvc2V0dGluZ3MvdXBzZXJ0LW1jcC10ZW5hbnQtY29uZmlnOgEqEpMBChNSZW1vdmVNY3BVc2VyQ29uZmlnEiYucHVibGljX2FwaS5SZW1vdmVNY3BVc2VyQ29uZmlnUmVxdWVzdBonLnB1YmxpY19hcGkuUmVtb3ZlTWNwVXNlckNvbmZpZ1Jlc3BvbnNlIiuC0+STAiUiIC9zZXR0aW5ncy9yZW1vdmUtbWNwLXVzZXItY29uZmlnOgEqEpsBChVSZW1vdmVNY3BUZW5hbnRDb25maWcSKC5wdWJsaWNfYXBpLlJlbW92ZU1jcFRlbmFudENvbmZpZ1JlcXVlc3QaKS5wdWJsaWNfYXBpLlJlbW92ZU1jcFRlbmFudENvbmZpZ1Jlc3BvbnNlIi2C0+STAiciIi9zZXR0aW5ncy9yZW1vdmUtbWNwLXRlbmFudC1jb25maWc6ASoSigEKEUxpc3RBZ2VudFBlcnNvbmFzEiQucHVibGljX2FwaS5MaXN0QWdlbnRQZXJzb25hc1JlcXVlc3QaJS5wdWJsaWNfYXBpLkxpc3RBZ2VudFBlcnNvbmFzUmVzcG9uc2UiKILT5JMCIiIdL2FnZW50LXBlcnNvbmFzL2xpc3QtcGVyc29uYXM6ASoSggEKD0dldEFnZW50UGVyc29uYRIiLnB1YmxpY19hcGkuR2V0QWdlbnRQZXJzb25hUmVxdWVzdBojLnB1YmxpY19hcGkuR2V0QWdlbnRQZXJzb25hUmVzcG9uc2UiJoLT5JMCICIbL2FnZW50LXBlcnNvbmFzL2dldC1wZXJzb25hOgEqEpoBChVMaXN0QWdlbnRDYXBhYmlsaXRpZXMSKC5wdWJsaWNfYXBpLkxpc3RBZ2VudENhcGFiaWxpdGllc1JlcXVlc3QaKS5wdWJsaWNfYXBpLkxpc3RBZ2VudENhcGFiaWxpdGllc1Jlc3BvbnNlIiyC0+STAiYiIS9hZ2VudC1wZXJzb25hcy9saXN0LWNhcGFiaWxpdGllczoBKhKXAQoWQ2xvdWRBZ2VudHNDcmVhdGVBZ2VudBIpLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNDcmVhdGVBZ2VudFJlcXVlc3QaKi5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzQ3JlYXRlQWdlbnRSZXNwb25zZSImgtPkkwIgIhsvY2xvdWQtYWdlbnRzL2FnZW50cy9jcmVhdGU6ASoSiwEKE0Nsb3VkQWdlbnRzR2V0QWdlbnQSJi5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzR2V0QWdlbnRSZXF1ZXN0GicucHVibGljX2FwaS5DbG91ZEFnZW50c0dldEFnZW50UmVzcG9uc2UiI4LT5JMCHSIYL2Nsb3VkLWFnZW50cy9hZ2VudHMvZ2V0OgEqEp0BChZDbG91ZEFnZW50c1NlbmRNZXNzYWdlEikucHVibGljX2FwaS5DbG91ZEFnZW50c1NlbmRNZXNzYWdlUmVxdWVzdBoqLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNTZW5kTWVzc2FnZVJlc3BvbnNlIiyC0+STAiYiIS9jbG91ZC1hZ2VudHMvYWdlbnRzL3NlbmQtbWVzc2FnZToBKhKdAQoWQ2xvdWRBZ2VudHNHZXRNZXNzYWdlcxIpLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNHZXRNZXNzYWdlc1JlcXVlc3QaKi5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzR2V0TWVzc2FnZXNSZXNwb25zZSIsgtPkkwImIiEvY2xvdWQtYWdlbnRzL2FnZW50cy9nZXQtbWVzc2FnZXM6ASoSuAEKHENsb3VkQWdlbnRzR2V0TWVzc2FnZXNTdHJlYW0SLy5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzR2V0TWVzc2FnZXNTdHJlYW1SZXF1ZXN0GjAucHVibGljX2FwaS5DbG91ZEFnZW50c0dldE1lc3NhZ2VzU3RyZWFtUmVzcG9uc2UiM4LT5JMCLSIoL2Nsb3VkLWFnZW50cy9hZ2VudHMvZ2V0LW1lc3NhZ2VzLXN0cmVhbToBKjABEpcBChZDbG91ZEFnZW50c1JlbmFtZUFnZW50EikucHVibGljX2FwaS5DbG91ZEFnZW50c1JlbmFtZUFnZW50UmVxdWVzdBoqLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNSZW5hbWVBZ2VudFJlc3BvbnNlIiaC0+STAiAiGy9jbG91ZC1hZ2VudHMvYWdlbnRzL3JlbmFtZToBKhLFAQohQ2xvdWRBZ2VudHNVcGRhdGVBZ2VudFNlc3Npb25UYWdzEjQucHVibGljX2FwaS5DbG91ZEFnZW50c1VwZGF0ZUFnZW50U2Vzc2lvblRhZ3NSZXF1ZXN0GjUucHVibGljX2FwaS5DbG91ZEFnZW50c1VwZGF0ZUFnZW50U2Vzc2lvblRhZ3NSZXNwb25zZSIzgtPkkwItIigvY2xvdWQtYWdlbnRzL2FnZW50cy91cGRhdGUtc2Vzc2lvbi10YWdzOgEqEpcBChZDbG91ZEFnZW50c0RlbGV0ZUFnZW50EikucHVibGljX2FwaS5DbG91ZEFnZW50c0RlbGV0ZUFnZW50UmVxdWVzdBoqLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNEZWxldGVBZ2VudFJlc3BvbnNlIiaC0+STAiAiGy9jbG91ZC1hZ2VudHMvYWdlbnRzL2RlbGV0ZToBKhKbAQoXQ2xvdWRBZ2VudHNBcmNoaXZlQWdlbnQSKi5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzQXJjaGl2ZUFnZW50UmVxdWVzdBorLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNBcmNoaXZlQWdlbnRSZXNwb25zZSIngtPkkwIhIhwvY2xvdWQtYWdlbnRzL2FnZW50cy9hcmNoaXZlOgEqEqMBChlDbG91ZEFnZW50c1VuYXJjaGl2ZUFnZW50EiwucHVibGljX2FwaS5DbG91ZEFnZW50c1VuYXJjaGl2ZUFnZW50UmVxdWVzdBotLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNVbmFyY2hpdmVBZ2VudFJlc3BvbnNlIimC0+STAiMiHi9jbG91ZC1hZ2VudHMvYWdlbnRzL3VuYXJjaGl2ZToBKhLHAQogQ2xvdWRBZ2VudHNCYXRjaEdldE1lc3NhZ2VDb3VudHMSMy5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzQmF0Y2hHZXRNZXNzYWdlQ291bnRzUmVxdWVzdBo0LnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNCYXRjaEdldE1lc3NhZ2VDb3VudHNSZXNwb25zZSI4gtPkkwIyIi0vY2xvdWQtYWdlbnRzL2FnZW50cy9iYXRjaC1nZXQtbWVzc2FnZS1jb3VudHM6ASoSxgEKIENsb3VkQWdlbnRzUmVmcmVzaEdpdENyZWRlbnRpYWxzEjMucHVibGljX2FwaS5DbG91ZEFnZW50c1JlZnJlc2hHaXRDcmVkZW50aWFsc1JlcXVlc3QaNC5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzUmVmcmVzaEdpdENyZWRlbnRpYWxzUmVzcG9uc2UiN4LT5JMCMSIsL2Nsb3VkLWFnZW50cy9hZ2VudHMvcmVmcmVzaC1naXQtY3JlZGVudGlhbHM6ASoSsgEKG0Nsb3VkQWdlbnRzUmVxdWVzdE1jcFNlcnZlchIuLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNSZXF1ZXN0TWNwU2VydmVyUmVxdWVzdBovLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNSZXF1ZXN0TWNwU2VydmVyUmVzcG9uc2UiMoLT5JMCLCInL2Nsb3VkLWFnZW50cy9hZ2VudHMvcmVxdWVzdC1tY3Atc2VydmVyOgEqErYBChxDbG91ZEFnZW50c0hhbmRvZmZUb1Bvc2VpZG9uEi8ucHVibGljX2FwaS5DbG91ZEFnZW50c0hhbmRvZmZUb1Bvc2VpZG9uUmVxdWVzdBowLnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNIYW5kb2ZmVG9Qb3NlaWRvblJlc3BvbnNlIjOC0+STAi0iKC9jbG91ZC1hZ2VudHMvYWdlbnRzL2hhbmRvZmYtdG8tcG9zZWlkb246ASoSnwEKGENsb3VkRXhwZXJ0c0NyZWF0ZUV4cGVydBIrLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzQ3JlYXRlRXhwZXJ0UmVxdWVzdBosLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzQ3JlYXRlRXhwZXJ0UmVzcG9uc2UiKILT5JMCIiIdL2Nsb3VkLWV4cGVydHMvZXhwZXJ0cy9jcmVhdGU6ASoSkwEKFUNsb3VkRXhwZXJ0c0dldEV4cGVydBIoLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzR2V0RXhwZXJ0UmVxdWVzdBopLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzR2V0RXhwZXJ0UmVzcG9uc2UiJYLT5JMCHyIaL2Nsb3VkLWV4cGVydHMvZXhwZXJ0cy9nZXQ6ASoSnwEKGENsb3VkRXhwZXJ0c1VwZGF0ZUV4cGVydBIrLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzVXBkYXRlRXhwZXJ0UmVxdWVzdBosLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzVXBkYXRlRXhwZXJ0UmVzcG9uc2UiKILT5JMCIiIdL2Nsb3VkLWV4cGVydHMvZXhwZXJ0cy91cGRhdGU6ASoSnwEKGENsb3VkRXhwZXJ0c0RlbGV0ZUV4cGVydBIrLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzRGVsZXRlRXhwZXJ0UmVxdWVzdBosLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzRGVsZXRlRXhwZXJ0UmVzcG9uc2UiKILT5JMCIiIdL2Nsb3VkLWV4cGVydHMvZXhwZXJ0cy9kZWxldGU6ASoSmgEKF0Nsb3VkRXhwZXJ0c0xpc3RFeHBlcnRzEioucHVibGljX2FwaS5DbG91ZEV4cGVydHNMaXN0RXhwZXJ0c1JlcXVlc3QaKy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0c0xpc3RFeHBlcnRzUmVzcG9uc2UiJoLT5JMCICIbL2Nsb3VkLWV4cGVydHMvZXhwZXJ0cy9saXN0OgEqEsABCiBDbG91ZEV4cGVydHNMaXN0RXhwZXJ0c1dpdGhVc2FnZRIzLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzTGlzdEV4cGVydHNXaXRoVXNhZ2VSZXF1ZXN0GjQucHVibGljX2FwaS5DbG91ZEV4cGVydHNMaXN0RXhwZXJ0c1dpdGhVc2FnZVJlc3BvbnNlIjGC0+STAisiJi9jbG91ZC1leHBlcnRzL2V4cGVydHMvbGlzdC13aXRoLXVzYWdlOgEqEqYBChhDbG91ZEV4cGVydHNMaXN0VmVyc2lvbnMSKy5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0c0xpc3RWZXJzaW9uc1JlcXVlc3QaLC5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0c0xpc3RWZXJzaW9uc1Jlc3BvbnNlIi+C0+STAikiJC9jbG91ZC1leHBlcnRzL2V4cGVydHMvdmVyc2lvbnMvbGlzdDoBKhKfAQoWQ2xvdWRFeHBlcnRzR2V0VmVyc2lvbhIpLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzR2V0VmVyc2lvblJlcXVlc3QaKi5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0c0dldFZlcnNpb25SZXNwb25zZSIugtPkkwIoIiMvY2xvdWQtZXhwZXJ0cy9leHBlcnRzL3ZlcnNpb25zL2dldDoBKhKjAQoZQ2xvdWRFeHBlcnRzUmVzdG9yZUV4cGVydBIsLnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzUmVzdG9yZUV4cGVydFJlcXVlc3QaLS5wdWJsaWNfYXBpLkNsb3VkRXhwZXJ0c1Jlc3RvcmVFeHBlcnRSZXNwb25zZSIpgtPkkwIjIh4vY2xvdWQtZXhwZXJ0cy9leHBlcnRzL3Jlc3RvcmU6ASoSwAEKIUNsb3VkRXhwZXJ0c0NyZWF0ZUFnZW50RnJvbUV4cGVydBI0LnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzQ3JlYXRlQWdlbnRGcm9tRXhwZXJ0UmVxdWVzdBo1LnB1YmxpY19hcGkuQ2xvdWRFeHBlcnRzQ3JlYXRlQWdlbnRGcm9tRXhwZXJ0UmVzcG9uc2UiLoLT5JMCKCIjL2Nsb3VkLWV4cGVydHMvZXhwZXJ0cy9jcmVhdGUtYWdlbnQ6ASoSigEKFENsb3VkRmxlZXRHZXRDYXRhbG9nEiUud2ViX3JwY19wcm94eS5HZXRGbGVldENhdGFsb2dSZXF1ZXN0GiYud2ViX3JwY19wcm94eS5HZXRGbGVldENhdGFsb2dSZXNwb25zZSIjgtPkkwIdIhgvY2xvdWQtZmxlZXQvY2F0YWxvZy9nZXQ6ASoSiwEKD0Nsb3VkRmxlZXRBcHBseRIkLndlYl9ycGNfcHJveHkuQXBwbHlGbGVldEZsb3dSZXF1ZXN0GiUud2ViX3JwY19wcm94eS5BcHBseUZsZWV0Rmxvd1Jlc3BvbnNlIiuC0+STAiUiIC9jbG91ZC1mbGVldC9pbnN0YWxsYXRpb25zL2FwcGx5OgEqEoMBCg1DbG91ZEZsZWV0QXJtEiIud2ViX3JwY19wcm94eS5Bcm1GbGVldEZsb3dSZXF1ZXN0GiMud2ViX3JwY19wcm94eS5Bcm1GbGVldEZsb3dSZXNwb25zZSIpgtPkkwIjIh4vY2xvdWQtZmxlZXQvaW5zdGFsbGF0aW9ucy9hcm06ASoSnwEKFENsb3VkRmxlZXREZWFjdGl2YXRlEikud2ViX3JwY19wcm94eS5EZWFjdGl2YXRlRmxlZXRGbG93UmVxdWVzdBoqLndlYl9ycGNfcHJveHkuRGVhY3RpdmF0ZUZsZWV0Rmxvd1Jlc3BvbnNlIjCC0+STAioiJS9jbG91ZC1mbGVldC9pbnN0YWxsYXRpb25zL2RlYWN0aXZhdGU6ASoSmwEKE0Nsb3VkRmxlZXRVbmluc3RhbGwSKC53ZWJfcnBjX3Byb3h5LlVuaW5zdGFsbEZsZWV0Rmxvd1JlcXVlc3QaKS53ZWJfcnBjX3Byb3h5LlVuaW5zdGFsbEZsZWV0Rmxvd1Jlc3BvbnNlIi+C0+STAikiJC9jbG91ZC1mbGVldC9pbnN0YWxsYXRpb25zL3VuaW5zdGFsbDoBKhKbAQoTQ2xvdWRGbGVldENvbmZpZ3VyZRIoLndlYl9ycGNfcHJveHkuQ29uZmlndXJlRmxlZXRGbG93UmVxdWVzdBopLndlYl9ycGNfcHJveHkuQ29uZmlndXJlRmxlZXRGbG93UmVzcG9uc2UiL4LT5JMCKSIkL2Nsb3VkLWZsZWV0L2luc3RhbGxhdGlvbnMvY29uZmlndXJlOgEqEo8BChBDbG91ZEZsZWV0UmVwYWlyEiUud2ViX3JwY19wcm94eS5SZXBhaXJGbGVldEZsb3dSZXF1ZXN0GiYud2ViX3JwY19wcm94eS5SZXBhaXJGbGVldEZsb3dSZXNwb25zZSIsgtPkkwImIiEvY2xvdWQtZmxlZXQvaW5zdGFsbGF0aW9ucy9yZXBhaXI6ASoSqAEKFkNsb3VkRmxlZXRHZXRMaWZlY3ljbGUSKy53ZWJfcnBjX3Byb3h5LkdldEZsZWV0Rmxvd0xpZmVjeWNsZVJlcXVlc3QaLC53ZWJfcnBjX3Byb3h5LkdldEZsZWV0Rmxvd0xpZmVjeWNsZVJlc3BvbnNlIjOC0+STAi0iKC9jbG91ZC1mbGVldC9pbnN0YWxsYXRpb25zL2xpZmVjeWNsZS9nZXQ6ASoSpgEKG0Nsb3VkRmxlZXRMaXN0SW5zdGFsbGF0aW9ucxIsLndlYl9ycGNfcHJveHkuTGlzdEZsZWV0SW5zdGFsbGF0aW9uc1JlcXVlc3QaLS53ZWJfcnBjX3Byb3h5Lkxpc3RGbGVldEluc3RhbGxhdGlvbnNSZXNwb25zZSIqgtPkkwIkIh8vY2xvdWQtZmxlZXQvaW5zdGFsbGF0aW9ucy9saXN0OgEqEsgBCiJDbG91ZEZsZWV0R2V0Q29uZmlndXJhdGlvbkRvY3VtZW50EjMud2ViX3JwY19wcm94eS5HZXRGbGVldENvbmZpZ3VyYXRpb25Eb2N1bWVudFJlcXVlc3QaNC53ZWJfcnBjX3Byb3h5LkdldEZsZWV0Q29uZmlndXJhdGlvbkRvY3VtZW50UmVzcG9uc2UiN4LT5JMCMSIsL2Nsb3VkLWZsZWV0L2luc3RhbGxhdGlvbnMvY29uZmlndXJhdGlvbi9nZXQ6ASoSrwEKHENsb3VkUmVzaWRlbnRzQ3JlYXRlUmVzaWRlbnQSLy5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnRzQ3JlYXRlUmVzaWRlbnRSZXF1ZXN0GjAucHVibGljX2FwaS5DbG91ZFJlc2lkZW50c0NyZWF0ZVJlc2lkZW50UmVzcG9uc2UiLILT5JMCJiIhL2Nsb3VkLXJlc2lkZW50cy9yZXNpZGVudHMvY3JlYXRlOgEqEqMBChlDbG91ZFJlc2lkZW50c0dldFJlc2lkZW50EiwucHVibGljX2FwaS5DbG91ZFJlc2lkZW50c0dldFJlc2lkZW50UmVxdWVzdBotLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudHNHZXRSZXNpZGVudFJlc3BvbnNlIimC0+STAiMiHi9jbG91ZC1yZXNpZGVudHMvcmVzaWRlbnRzL2dldDoBKhKvAQocQ2xvdWRSZXNpZGVudHNVcGRhdGVSZXNpZGVudBIvLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudHNVcGRhdGVSZXNpZGVudFJlcXVlc3QaMC5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnRzVXBkYXRlUmVzaWRlbnRSZXNwb25zZSIsgtPkkwImIiEvY2xvdWQtcmVzaWRlbnRzL3Jlc2lkZW50cy91cGRhdGU6ASoS1QEKJUNsb3VkUmVzaWRlbnRzU2V0UmVzaWRlbnRUZW5hbnRBY2Nlc3MSOC5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnRzU2V0UmVzaWRlbnRUZW5hbnRBY2Nlc3NSZXF1ZXN0GjkucHVibGljX2FwaS5DbG91ZFJlc2lkZW50c1NldFJlc2lkZW50VGVuYW50QWNjZXNzUmVzcG9uc2UiN4LT5JMCMSIsL2Nsb3VkLXJlc2lkZW50cy9yZXNpZGVudHMvc2V0LXRlbmFudC1hY2Nlc3M6ASoSrwEKHENsb3VkUmVzaWRlbnRzRGVsZXRlUmVzaWRlbnQSLy5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnRzRGVsZXRlUmVzaWRlbnRSZXF1ZXN0GjAucHVibGljX2FwaS5DbG91ZFJlc2lkZW50c0RlbGV0ZVJlc2lkZW50UmVzcG9uc2UiLILT5JMCJiIhL2Nsb3VkLXJlc2lkZW50cy9yZXNpZGVudHMvZGVsZXRlOgEqEqoBChtDbG91ZFJlc2lkZW50c0xpc3RSZXNpZGVudHMSLi5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnRzTGlzdFJlc2lkZW50c1JlcXVlc3QaLy5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnRzTGlzdFJlc2lkZW50c1Jlc3BvbnNlIiqC0+STAiQiHy9jbG91ZC1yZXNpZGVudHMvcmVzaWRlbnRzL2xpc3Q6ASoSqwEKG0Nsb3VkUmVzaWRlbnRzU3RhcnRSZXNpZGVudBIuLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudHNTdGFydFJlc2lkZW50UmVxdWVzdBovLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudHNTdGFydFJlc2lkZW50UmVzcG9uc2UiK4LT5JMCJSIgL2Nsb3VkLXJlc2lkZW50cy9yZXNpZGVudHMvc3RhcnQ6ASoSpwEKGkNsb3VkUmVzaWRlbnRzU3RvcFJlc2lkZW50Ei0ucHVibGljX2FwaS5DbG91ZFJlc2lkZW50c1N0b3BSZXNpZGVudFJlcXVlc3QaLi5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnRzU3RvcFJlc2lkZW50UmVzcG9uc2UiKoLT5JMCJCIfL2Nsb3VkLXJlc2lkZW50cy9yZXNpZGVudHMvc3RvcDoBKhKwAQoaQ2xvdWRSZXNpZGVudHNMaXN0U2Vzc2lvbnMSLS5wdWJsaWNfYXBpLkNsb3VkUmVzaWRlbnRzTGlzdFNlc3Npb25zUmVxdWVzdBouLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudHNMaXN0U2Vzc2lvbnNSZXNwb25zZSIzgtPkkwItIigvY2xvdWQtcmVzaWRlbnRzL3Jlc2lkZW50cy9zZXNzaW9ucy9saXN0OgEqErABChpDbG91ZFJlc2lkZW50c0xpc3RWZXJzaW9ucxItLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudHNMaXN0VmVyc2lvbnNSZXF1ZXN0Gi4ucHVibGljX2FwaS5DbG91ZFJlc2lkZW50c0xpc3RWZXJzaW9uc1Jlc3BvbnNlIjOC0+STAi0iKC9jbG91ZC1yZXNpZGVudHMvcmVzaWRlbnRzL3ZlcnNpb25zL2xpc3Q6ASoSqQEKGENsb3VkUmVzaWRlbnRzR2V0VmVyc2lvbhIrLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudHNHZXRWZXJzaW9uUmVxdWVzdBosLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudHNHZXRWZXJzaW9uUmVzcG9uc2UiMoLT5JMCLCInL2Nsb3VkLXJlc2lkZW50cy9yZXNpZGVudHMvdmVyc2lvbnMvZ2V0OgEqErMBCh1DbG91ZFJlc2lkZW50c1Jlc3RvcmVSZXNpZGVudBIwLnB1YmxpY19hcGkuQ2xvdWRSZXNpZGVudHNSZXN0b3JlUmVzaWRlbnRSZXF1ZXN0GjEucHVibGljX2FwaS5DbG91ZFJlc2lkZW50c1Jlc3RvcmVSZXNpZGVudFJlc3BvbnNlIi2C0+STAiciIi9jbG91ZC1yZXNpZGVudHMvcmVzaWRlbnRzL3Jlc3RvcmU6ASoSwgEKIUNsb3VkRW52aXJvbm1lbnRzTGlzdEVudmlyb25tZW50cxI0LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNMaXN0RW52aXJvbm1lbnRzUmVxdWVzdBo1LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNMaXN0RW52aXJvbm1lbnRzUmVzcG9uc2UiMILT5JMCKiIlL2Nsb3VkLWVudmlyb25tZW50cy9lbnZpcm9ubWVudHMvbGlzdDoBKhK7AQofQ2xvdWRFbnZpcm9ubWVudHNHZXRFbnZpcm9ubWVudBIyLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNHZXRFbnZpcm9ubWVudFJlcXVlc3QaMy5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzR2V0RW52aXJvbm1lbnRSZXNwb25zZSIvgtPkkwIpIiQvY2xvdWQtZW52aXJvbm1lbnRzL2Vudmlyb25tZW50cy9nZXQ6ASoS7gEKIENsb3VkRW52aXJvbm1lbnRzQ3JlYXRlQmFzZUltYWdlEjMucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0NyZWF0ZUJhc2VJbWFnZVJlcXVlc3QaNC5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzQ3JlYXRlQmFzZUltYWdlUmVzcG9uc2UiX4LT5JMCWSImL2Nsb3VkLWVudmlyb25tZW50cy9iYXNlLWltYWdlcy9jcmVhdGU6ASpaLCInL2Nsb3VkLWVudmlyb25tZW50cy9lbnZpcm9ubWVudHMvY3JlYXRlOgEqEokCCiVDbG91ZEVudmlyb25tZW50c1N0YXJ0QmFzZUltYWdlQ3JlYXRlEjgucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c1N0YXJ0QmFzZUltYWdlQ3JlYXRlUmVxdWVzdBo5LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNTdGFydEJhc2VJbWFnZUNyZWF0ZVJlc3BvbnNlImuC0+STAmUiLC9jbG91ZC1lbnZpcm9ubWVudHMvYmFzZS1pbWFnZXMvY3JlYXRlL3N0YXJ0OgEqWjIiLS9jbG91ZC1lbnZpcm9ubWVudHMvZW52aXJvbm1lbnRzL2NyZWF0ZS9zdGFydDoBKhLuAQogQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVCYXNlSW1hZ2USMy5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzVXBkYXRlQmFzZUltYWdlUmVxdWVzdBo0LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVCYXNlSW1hZ2VSZXNwb25zZSJfgtPkkwJZIiYvY2xvdWQtZW52aXJvbm1lbnRzL2Jhc2UtaW1hZ2VzL3VwZGF0ZToBKlosIicvY2xvdWQtZW52aXJvbm1lbnRzL2Vudmlyb25tZW50cy91cGRhdGU6ASoS7gEKIENsb3VkRW52aXJvbm1lbnRzRGVsZXRlQmFzZUltYWdlEjMucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0RlbGV0ZUJhc2VJbWFnZVJlcXVlc3QaNC5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzRGVsZXRlQmFzZUltYWdlUmVzcG9uc2UiX4LT5JMCWSImL2Nsb3VkLWVudmlyb25tZW50cy9iYXNlLWltYWdlcy9kZWxldGU6ASpaLCInL2Nsb3VkLWVudmlyb25tZW50cy9lbnZpcm9ubWVudHMvZGVsZXRlOgEqEvMBCiFDbG91ZEVudmlyb25tZW50c1Jlc3RvcmVCYXNlSW1hZ2USNC5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzUmVzdG9yZUJhc2VJbWFnZVJlcXVlc3QaNS5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzUmVzdG9yZUJhc2VJbWFnZVJlc3BvbnNlImGC0+STAlsiJy9jbG91ZC1lbnZpcm9ubWVudHMvYmFzZS1pbWFnZXMvcmVzdG9yZToBKlotIigvY2xvdWQtZW52aXJvbm1lbnRzL2Vudmlyb25tZW50cy9yZXN0b3JlOgEqEvMBCh1DbG91ZEVudmlyb25tZW50c0xpc3RWZXJzaW9ucxIwLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNMaXN0VmVyc2lvbnNSZXF1ZXN0GjEucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0xpc3RWZXJzaW9uc1Jlc3BvbnNlIm2C0+STAmciLS9jbG91ZC1lbnZpcm9ubWVudHMvYmFzZS1pbWFnZXMvdmVyc2lvbnMvbGlzdDoBKlozIi4vY2xvdWQtZW52aXJvbm1lbnRzL2Vudmlyb25tZW50cy92ZXJzaW9ucy9saXN0OgEqEusBChtDbG91ZEVudmlyb25tZW50c0dldFZlcnNpb24SLi5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzR2V0VmVyc2lvblJlcXVlc3QaLy5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzR2V0VmVyc2lvblJlc3BvbnNlImuC0+STAmUiLC9jbG91ZC1lbnZpcm9ubWVudHMvYmFzZS1pbWFnZXMvdmVyc2lvbnMvZ2V0OgEqWjIiLS9jbG91ZC1lbnZpcm9ubWVudHMvZW52aXJvbm1lbnRzL3ZlcnNpb25zL2dldDoBKhLRAQokQ2xvdWRFbnZpcm9ubWVudHNMaXN0QmFzZUltYWdlQnVpbGRzEjcucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0xpc3RCYXNlSW1hZ2VCdWlsZHNSZXF1ZXN0GjgucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0xpc3RCYXNlSW1hZ2VCdWlsZHNSZXNwb25zZSI2gtPkkwIwIisvY2xvdWQtZW52aXJvbm1lbnRzL2Jhc2UtaW1hZ2VzL2J1aWxkcy9saXN0OgEqEv0BCiNDbG91ZEVudmlyb25tZW50c0R1cGxpY2F0ZUJhc2VJbWFnZRI2LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNEdXBsaWNhdGVCYXNlSW1hZ2VSZXF1ZXN0GjcucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0R1cGxpY2F0ZUJhc2VJbWFnZVJlc3BvbnNlImWC0+STAl8iKS9jbG91ZC1lbnZpcm9ubWVudHMvYmFzZS1pbWFnZXMvZHVwbGljYXRlOgEqWi8iKi9jbG91ZC1lbnZpcm9ubWVudHMvZW52aXJvbm1lbnRzL2R1cGxpY2F0ZToBKhLzAQohQ2xvdWRFbnZpcm9ubWVudHNSZWZyZXNoQmFzZUltYWdlEjQucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c1JlZnJlc2hCYXNlSW1hZ2VSZXF1ZXN0GjUucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c1JlZnJlc2hCYXNlSW1hZ2VSZXNwb25zZSJhgtPkkwJbIicvY2xvdWQtZW52aXJvbm1lbnRzL2Jhc2UtaW1hZ2VzL3JlZnJlc2g6ASpaLSIoL2Nsb3VkLWVudmlyb25tZW50cy9lbnZpcm9ubWVudHMvcmVmcmVzaDoBKhL9AQofQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVTbmFwc2hvdBIyLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVTbmFwc2hvdFJlcXVlc3QaMy5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzVXBkYXRlU25hcHNob3RSZXNwb25zZSJxgtPkkwJrIi8vY2xvdWQtZW52aXJvbm1lbnRzL2Jhc2UtaW1hZ2VzL3VwZGF0ZS1zbmFwc2hvdDoBKlo1IjAvY2xvdWQtZW52aXJvbm1lbnRzL2Vudmlyb25tZW50cy91cGRhdGUtc25hcHNob3Q6ASoS9gEKLUNsb3VkRW52aXJvbm1lbnRzU3RhcnRCYXNlSW1hZ2VTbmFwc2hvdFVwZGF0ZRJALnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNTdGFydEJhc2VJbWFnZVNuYXBzaG90VXBkYXRlUmVxdWVzdBpBLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNTdGFydEJhc2VJbWFnZVNuYXBzaG90VXBkYXRlUmVzcG9uc2UiQILT5JMCOiI1L2Nsb3VkLWVudmlyb25tZW50cy9iYXNlLWltYWdlcy91cGRhdGUtc25hcHNob3Qvc3RhcnQ6ASoS8wEKIUNsb3VkRW52aXJvbm1lbnRzUmVidWlsZEJhc2VJbWFnZRI0LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNSZWJ1aWxkQmFzZUltYWdlUmVxdWVzdBo1LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNSZWJ1aWxkQmFzZUltYWdlUmVzcG9uc2UiYYLT5JMCWyInL2Nsb3VkLWVudmlyb25tZW50cy9iYXNlLWltYWdlcy9yZWJ1aWxkOgEqWi0iKC9jbG91ZC1lbnZpcm9ubWVudHMvZW52aXJvbm1lbnRzL3JlYnVpbGQ6ASoS2QEKJkNsb3VkRW52aXJvbm1lbnRzU3RhcnRCYXNlSW1hZ2VSZWJ1aWxkEjkucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c1N0YXJ0QmFzZUltYWdlUmVidWlsZFJlcXVlc3QaOi5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzU3RhcnRCYXNlSW1hZ2VSZWJ1aWxkUmVzcG9uc2UiOILT5JMCMiItL2Nsb3VkLWVudmlyb25tZW50cy9iYXNlLWltYWdlcy9yZWJ1aWxkL3N0YXJ0OgEqEtkBCiZDbG91ZEVudmlyb25tZW50c1N0YXJ0QmFzZUltYWdlUmVmcmVzaBI5LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNTdGFydEJhc2VJbWFnZVJlZnJlc2hSZXF1ZXN0GjoucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c1N0YXJ0QmFzZUltYWdlUmVmcmVzaFJlc3BvbnNlIjiC0+STAjIiLS9jbG91ZC1lbnZpcm9ubWVudHMvYmFzZS1pbWFnZXMvcmVmcmVzaC9zdGFydDoBKhKMAgoyQ2xvdWRFbnZpcm9ubWVudHNTdGFydEJhc2VJbWFnZVJlcG9zaXRvcnlSZWNvbmNpbGUSRS5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzU3RhcnRCYXNlSW1hZ2VSZXBvc2l0b3J5UmVjb25jaWxlUmVxdWVzdBpGLnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNTdGFydEJhc2VJbWFnZVJlcG9zaXRvcnlSZWNvbmNpbGVSZXNwb25zZSJHgtPkkwJBIjwvY2xvdWQtZW52aXJvbm1lbnRzL2Jhc2UtaW1hZ2VzL3JlcG9zaXRvcmllcy9yZWNvbmNpbGUvc3RhcnQ6ASoSswEKHUNsb3VkRW52aXJvbm1lbnRzR2V0T3BlcmF0aW9uEjAucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0dldE9wZXJhdGlvblJlcXVlc3QaMS5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzR2V0T3BlcmF0aW9uUmVzcG9uc2UiLYLT5JMCJyIiL2Nsb3VkLWVudmlyb25tZW50cy9vcGVyYXRpb25zL2dldDoBKhLMAQojQ2xvdWRFbnZpcm9ubWVudHNHZXRBY3RpdmVPcGVyYXRpb24SNi5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzR2V0QWN0aXZlT3BlcmF0aW9uUmVxdWVzdBo3LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNHZXRBY3RpdmVPcGVyYXRpb25SZXNwb25zZSI0gtPkkwIuIikvY2xvdWQtZW52aXJvbm1lbnRzL29wZXJhdGlvbnMvYWN0aXZlL2dldDoBKhK/AQogQ2xvdWRFbnZpcm9ubWVudHNDYW5jZWxPcGVyYXRpb24SMy5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzQ2FuY2VsT3BlcmF0aW9uUmVxdWVzdBo0LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNDYW5jZWxPcGVyYXRpb25SZXNwb25zZSIwgtPkkwIqIiUvY2xvdWQtZW52aXJvbm1lbnRzL29wZXJhdGlvbnMvY2FuY2VsOgEqEsABCiVDbG91ZEVudmlyb25tZW50c0xpc3RTYW5kYm94UHJvdmlkZXJzEjgucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0xpc3RTYW5kYm94UHJvdmlkZXJzUmVxdWVzdBo5LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNMaXN0U2FuZGJveFByb3ZpZGVyc1Jlc3BvbnNlIiKC0+STAhwiFy9zYW5kYm94LXByb3ZpZGVycy9saXN0OgEqErkBCiNDbG91ZEVudmlyb25tZW50c0dldFNhbmRib3hQcm92aWRlchI2LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNHZXRTYW5kYm94UHJvdmlkZXJSZXF1ZXN0GjcucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0dldFNhbmRib3hQcm92aWRlclJlc3BvbnNlIiGC0+STAhsiFi9zYW5kYm94LXByb3ZpZGVycy9nZXQ6ASoSxQEKJkNsb3VkRW52aXJvbm1lbnRzQ3JlYXRlU2FuZGJveFByb3ZpZGVyEjkucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0NyZWF0ZVNhbmRib3hQcm92aWRlclJlcXVlc3QaOi5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzQ3JlYXRlU2FuZGJveFByb3ZpZGVyUmVzcG9uc2UiJILT5JMCHiIZL3NhbmRib3gtcHJvdmlkZXJzL2NyZWF0ZToBKhLFAQomQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVTYW5kYm94UHJvdmlkZXISOS5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzVXBkYXRlU2FuZGJveFByb3ZpZGVyUmVxdWVzdBo6LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVTYW5kYm94UHJvdmlkZXJSZXNwb25zZSIkgtPkkwIeIhkvc2FuZGJveC1wcm92aWRlcnMvdXBkYXRlOgEqEsUBCiZDbG91ZEVudmlyb25tZW50c0RlbGV0ZVNhbmRib3hQcm92aWRlchI5LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNEZWxldGVTYW5kYm94UHJvdmlkZXJSZXF1ZXN0GjoucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0RlbGV0ZVNhbmRib3hQcm92aWRlclJlc3BvbnNlIiSC0+STAh4iGS9zYW5kYm94LXByb3ZpZGVycy9kZWxldGU6ASoSyQEKJ0Nsb3VkRW52aXJvbm1lbnRzUmVzdG9yZVNhbmRib3hQcm92aWRlchI6LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNSZXN0b3JlU2FuZGJveFByb3ZpZGVyUmVxdWVzdBo7LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNSZXN0b3JlU2FuZGJveFByb3ZpZGVyUmVzcG9uc2UiJYLT5JMCHyIaL3NhbmRib3gtcHJvdmlkZXJzL3Jlc3RvcmU6ASoSvQEKIUNsb3VkRW52aXJvbm1lbnRzQ3JlYXRlRGFlbW9uUG9vbBI0LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNDcmVhdGVEYWVtb25Qb29sUmVxdWVzdBo1LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNDcmVhdGVEYWVtb25Qb29sUmVzcG9uc2UiK4LT5JMCJSIgL2Nsb3VkLWVudmlyb25tZW50cy9wb29scy9jcmVhdGU6ASoSvQEKIUNsb3VkRW52aXJvbm1lbnRzVXBkYXRlRGFlbW9uUG9vbBI0LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVEYWVtb25Qb29sUmVxdWVzdBo1LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNVcGRhdGVEYWVtb25Qb29sUmVzcG9uc2UiK4LT5JMCJSIgL2Nsb3VkLWVudmlyb25tZW50cy9wb29scy91cGRhdGU6ASoSvQEKIUNsb3VkRW52aXJvbm1lbnRzRGVsZXRlRGFlbW9uUG9vbBI0LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNEZWxldGVEYWVtb25Qb29sUmVxdWVzdBo1LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNEZWxldGVEYWVtb25Qb29sUmVzcG9uc2UiK4LT5JMCJSIgL2Nsb3VkLWVudmlyb25tZW50cy9wb29scy9kZWxldGU6ASoSwQEKIkNsb3VkRW52aXJvbm1lbnRzUmVzdG9yZURhZW1vblBvb2wSNS5wdWJsaWNfYXBpLkNsb3VkRW52aXJvbm1lbnRzUmVzdG9yZURhZW1vblBvb2xSZXF1ZXN0GjYucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c1Jlc3RvcmVEYWVtb25Qb29sUmVzcG9uc2UiLILT5JMCJiIhL2Nsb3VkLWVudmlyb25tZW50cy9wb29scy9yZXN0b3JlOgEqEtIBCiZDbG91ZEVudmlyb25tZW50c0xpc3REYWVtb25Qb29sRGFlbW9ucxI5LnB1YmxpY19hcGkuQ2xvdWRFbnZpcm9ubWVudHNMaXN0RGFlbW9uUG9vbERhZW1vbnNSZXF1ZXN0GjoucHVibGljX2FwaS5DbG91ZEVudmlyb25tZW50c0xpc3REYWVtb25Qb29sRGFlbW9uc1Jlc3BvbnNlIjGC0+STAisiJi9jbG91ZC1lbnZpcm9ubWVudHMvcG9vbHMvZGFlbW9ucy9saXN0OgEqEpIBChVDbG91ZEV2ZW50c0xpc3RFdmVudHMSKC5wdWJsaWNfYXBpLkNsb3VkRXZlbnRzTGlzdEV2ZW50c1JlcXVlc3QaKS5wdWJsaWNfYXBpLkNsb3VkRXZlbnRzTGlzdEV2ZW50c1Jlc3BvbnNlIiSC0+STAh4iGS9jbG91ZC1ldmVudHMvZXZlbnRzL2xpc3Q6ASoShQEKEENsb3VkVHVubmVsc09wZW4SIy5wdWJsaWNfYXBpLkNsb3VkVHVubmVsc09wZW5SZXF1ZXN0GiQucHVibGljX2FwaS5DbG91ZFR1bm5lbHNPcGVuUmVzcG9uc2UiJoLT5JMCICIbL2Nsb3VkLXR1bm5lbHMvdHVubmVscy9vcGVuOgEqEokBChFDbG91ZFR1bm5lbHNDbG9zZRIkLnB1YmxpY19hcGkuQ2xvdWRUdW5uZWxzQ2xvc2VSZXF1ZXN0GiUucHVibGljX2FwaS5DbG91ZFR1bm5lbHNDbG9zZVJlc3BvbnNlIieC0+STAiEiHC9jbG91ZC10dW5uZWxzL3R1bm5lbHMvY2xvc2U6ASoShQEKEENsb3VkVHVubmVsc0xpc3QSIy5wdWJsaWNfYXBpLkNsb3VkVHVubmVsc0xpc3RSZXF1ZXN0GiQucHVibGljX2FwaS5DbG91ZFR1bm5lbHNMaXN0UmVzcG9uc2UiJoLT5JMCICIbL2Nsb3VkLXR1bm5lbHMvdHVubmVscy9saXN0OgEqEqYBChpDbG91ZFRyaWdnZXJzTGlzdFdvcmtmbG93cxItLnB1YmxpY19hcGkuQ2xvdWRUcmlnZ2Vyc0xpc3RXb3JrZmxvd3NSZXF1ZXN0Gi4ucHVibGljX2FwaS5DbG91ZFRyaWdnZXJzTGlzdFdvcmtmbG93c1Jlc3BvbnNlIimC0+STAiMiHi9jbG91ZC10cmlnZ2Vycy93b3JrZmxvd3MvbGlzdDoBKhKfAQoYQ2xvdWRUcmlnZ2Vyc0dldFdvcmtmbG93EisucHVibGljX2FwaS5DbG91ZFRyaWdnZXJzR2V0V29ya2Zsb3dSZXF1ZXN0GiwucHVibGljX2FwaS5DbG91ZFRyaWdnZXJzR2V0V29ya2Zsb3dSZXNwb25zZSIogtPkkwIiIh0vY2xvdWQtdHJpZ2dlcnMvd29ya2Zsb3dzL2dldDoBKhKrAQobQ2xvdWRUcmlnZ2Vyc0RlbGV0ZVdvcmtmbG93Ei4ucHVibGljX2FwaS5DbG91ZFRyaWdnZXJzRGVsZXRlV29ya2Zsb3dSZXF1ZXN0Gi8ucHVibGljX2FwaS5DbG91ZFRyaWdnZXJzRGVsZXRlV29ya2Zsb3dSZXNwb25zZSIrgtPkkwIlIiAvY2xvdWQtdHJpZ2dlcnMvd29ya2Zsb3dzL2RlbGV0ZToBKhKrAQobQ2xvdWRUcmlnZ2Vyc0NyZWF0ZVdvcmtmbG93Ei4ucHVibGljX2FwaS5DbG91ZFRyaWdnZXJzQ3JlYXRlV29ya2Zsb3dSZXF1ZXN0Gi8ucHVibGljX2FwaS5DbG91ZFRyaWdnZXJzQ3JlYXRlV29ya2Zsb3dSZXNwb25zZSIrgtPkkwIlIiAvY2xvdWQtdHJpZ2dlcnMvd29ya2Zsb3dzL2NyZWF0ZToBKhKrAQobQ2xvdWRUcmlnZ2Vyc1VwZGF0ZVdvcmtmbG93Ei4ucHVibGljX2FwaS5DbG91ZFRyaWdnZXJzVXBkYXRlV29ya2Zsb3dSZXF1ZXN0Gi8ucHVibGljX2FwaS5DbG91ZFRyaWdnZXJzVXBkYXRlV29ya2Zsb3dSZXNwb25zZSIrgtPkkwIlIiAvY2xvdWQtdHJpZ2dlcnMvd29ya2Zsb3dzL3VwZGF0ZToBKhKzAQodQ2xvdWRUcmlnZ2Vyc0xpc3RFdmVudFNvdXJjZXMSMC5wdWJsaWNfYXBpLkNsb3VkVHJpZ2dlcnNMaXN0RXZlbnRTb3VyY2VzUmVxdWVzdBoxLnB1YmxpY19hcGkuQ2xvdWRUcmlnZ2Vyc0xpc3RFdmVudFNvdXJjZXNSZXNwb25zZSItgtPkkwInIiIvY2xvdWQtdHJpZ2dlcnMvZXZlbnQtc291cmNlcy9saXN0OgEqEqwBChtDbG91ZFRyaWdnZXJzR2V0RXZlbnRTb3VyY2USLi5wdWJsaWNfYXBpLkNsb3VkVHJpZ2dlcnNHZXRFdmVudFNvdXJjZVJlcXVlc3QaLy5wdWJsaWNfYXBpLkNsb3VkVHJpZ2dlcnNHZXRFdmVudFNvdXJjZVJlc3BvbnNlIiyC0+STAiYiIS9jbG91ZC10cmlnZ2Vycy9ldmVudC1zb3VyY2VzL2dldDoBKhK7AQofQ2xvdWRUcmlnZ2Vyc0RlbGV0ZUV2ZW50U291cmNlcxIyLnB1YmxpY19hcGkuQ2xvdWRUcmlnZ2Vyc0RlbGV0ZUV2ZW50U291cmNlc1JlcXVlc3QaMy5wdWJsaWNfYXBpLkNsb3VkVHJpZ2dlcnNEZWxldGVFdmVudFNvdXJjZXNSZXNwb25zZSIvgtPkkwIpIiQvY2xvdWQtdHJpZ2dlcnMvZXZlbnQtc291cmNlcy9kZWxldGU6ASoSuAEKHkNsb3VkVHJpZ2dlcnNDcmVhdGVFdmVudFNvdXJjZRIxLnB1YmxpY19hcGkuQ2xvdWRUcmlnZ2Vyc0NyZWF0ZUV2ZW50U291cmNlUmVxdWVzdBoyLnB1YmxpY19hcGkuQ2xvdWRUcmlnZ2Vyc0NyZWF0ZUV2ZW50U291cmNlUmVzcG9uc2UiL4LT5JMCKSIkL2Nsb3VkLXRyaWdnZXJzL2V2ZW50LXNvdXJjZXMvY3JlYXRlOgEqErgBCh5DbG91ZFRyaWdnZXJzVXBkYXRlRXZlbnRTb3VyY2USMS5wdWJsaWNfYXBpLkNsb3VkVHJpZ2dlcnNVcGRhdGVFdmVudFNvdXJjZVJlcXVlc3QaMi5wdWJsaWNfYXBpLkNsb3VkVHJpZ2dlcnNVcGRhdGVFdmVudFNvdXJjZVJlc3BvbnNlIi+C0+STAikiJC9jbG91ZC10cmlnZ2Vycy9ldmVudC1zb3VyY2VzL3VwZGF0ZToBKhKKAQoRQ2xvdWRXZWJob29rc0xpc3QSJC5wdWJsaWNfYXBpLkNsb3VkV2ViaG9va3NMaXN0UmVxdWVzdBolLnB1YmxpY19hcGkuQ2xvdWRXZWJob29rc0xpc3RSZXNwb25zZSIogtPkkwIiIh0vY2xvdWQtd2ViaG9va3Mvd2ViaG9va3MvbGlzdDoBKhKSAQoTQ2xvdWRXZWJob29rc0NyZWF0ZRImLnB1YmxpY19hcGkuQ2xvdWRXZWJob29rc0NyZWF0ZVJlcXVlc3QaJy5wdWJsaWNfYXBpLkNsb3VkV2ViaG9va3NDcmVhdGVSZXNwb25zZSIqgtPkkwIkIh8vY2xvdWQtd2ViaG9va3Mvd2ViaG9va3MvY3JlYXRlOgEqEoYBChBDbG91ZFdlYmhvb2tzR2V0EiMucHVibGljX2FwaS5DbG91ZFdlYmhvb2tzR2V0UmVxdWVzdBokLnB1YmxpY19hcGkuQ2xvdWRXZWJob29rc0dldFJlc3BvbnNlIieC0+STAiEiHC9jbG91ZC13ZWJob29rcy93ZWJob29rcy9nZXQ6ASoSkgEKE0Nsb3VkV2ViaG9va3NEZWxldGUSJi5wdWJsaWNfYXBpLkNsb3VkV2ViaG9va3NEZWxldGVSZXF1ZXN0GicucHVibGljX2FwaS5DbG91ZFdlYmhvb2tzRGVsZXRlUmVzcG9uc2UiKoLT5JMCJCIfL2Nsb3VkLXdlYmhvb2tzL3dlYmhvb2tzL2RlbGV0ZToBKhKSAQoTQ2xvdWRXZWJob29rc1VwZGF0ZRImLnB1YmxpY19hcGkuQ2xvdWRXZWJob29rc1VwZGF0ZVJlcXVlc3QaJy5wdWJsaWNfYXBpLkNsb3VkV2ViaG9va3NVcGRhdGVSZXNwb25zZSIqgtPkkwIkIh8vY2xvdWQtd2ViaG9va3Mvd2ViaG9va3MvdXBkYXRlOgEqEp8BChZDbG91ZFdlYmhvb2tzU2V0U2VjcmV0EikucHVibGljX2FwaS5DbG91ZFdlYmhvb2tzU2V0U2VjcmV0UmVxdWVzdBoqLnB1YmxpY19hcGkuQ2xvdWRXZWJob29rc1NldFNlY3JldFJlc3BvbnNlIi6C0+STAigiIy9jbG91ZC13ZWJob29rcy93ZWJob29rcy9zZXQtc2VjcmV0OgEqEsgBCiFDbG91ZFdlYmhvb2tzR2V0U2V0dXBJbnN0cnVjdGlvbnMSNC5wdWJsaWNfYXBpLkNsb3VkV2ViaG9va3NHZXRTZXR1cEluc3RydWN0aW9uc1JlcXVlc3QaNS5wdWJsaWNfYXBpLkNsb3VkV2ViaG9va3NHZXRTZXR1cEluc3RydWN0aW9uc1Jlc3BvbnNlIjaC0+STAjAiKy9jbG91ZC13ZWJob29rcy93ZWJob29rcy9zZXR1cC1pbnN0cnVjdGlvbnM6ASoSkgEKFUNsb3VkU3BhY2VzTGlzdFNwYWNlcxIoLnB1YmxpY19hcGkuQ2xvdWRTcGFjZXNMaXN0U3BhY2VzUmVxdWVzdBopLnB1YmxpY19hcGkuQ2xvdWRTcGFjZXNMaXN0U3BhY2VzUmVzcG9uc2UiJILT5JMCHiIZL2Nsb3VkLXNwYWNlcy9zcGFjZXMvbGlzdDoBKhKLAQoTQ2xvdWRTcGFjZXNHZXRTcGFjZRImLnB1YmxpY19hcGkuQ2xvdWRTcGFjZXNHZXRTcGFjZVJlcXVlc3QaJy5wdWJsaWNfYXBpLkNsb3VkU3BhY2VzR2V0U3BhY2VSZXNwb25zZSIjgtPkkwIdIhgvY2xvdWQtc3BhY2VzL3NwYWNlcy9nZXQ6ASoSlwEKFkNsb3VkU3BhY2VzQ3JlYXRlU3BhY2USKS5wdWJsaWNfYXBpLkNsb3VkU3BhY2VzQ3JlYXRlU3BhY2VSZXF1ZXN0GioucHVibGljX2FwaS5DbG91ZFNwYWNlc0NyZWF0ZVNwYWNlUmVzcG9uc2UiJoLT5JMCICIbL2Nsb3VkLXNwYWNlcy9zcGFjZXMvY3JlYXRlOgEqEpcBChZDbG91ZFNwYWNlc0RlbGV0ZVNwYWNlEikucHVibGljX2FwaS5DbG91ZFNwYWNlc0RlbGV0ZVNwYWNlUmVxdWVzdBoqLnB1YmxpY19hcGkuQ2xvdWRTcGFjZXNEZWxldGVTcGFjZVJlc3BvbnNlIiaC0+STAiAiGy9jbG91ZC1zcGFjZXMvc3BhY2VzL2RlbGV0ZToBKhKXAQoWQ2xvdWRTcGFjZXNVcGRhdGVTcGFjZRIpLnB1YmxpY19hcGkuQ2xvdWRTcGFjZXNVcGRhdGVTcGFjZVJlcXVlc3QaKi5wdWJsaWNfYXBpLkNsb3VkU3BhY2VzVXBkYXRlU3BhY2VSZXNwb25zZSImgtPkkwIgIhsvY2xvdWQtc3BhY2VzL3NwYWNlcy91cGRhdGU6ASoSeQoPQ2xvdWRHcm91cHNMaXN0EiIucHVibGljX2FwaS5DbG91ZEdyb3Vwc0xpc3RSZXF1ZXN0GiMucHVibGljX2FwaS5DbG91ZEdyb3Vwc0xpc3RSZXNwb25zZSIdgtPkkwIXIhIvY2xvdWQtZ3JvdXBzL2xpc3Q6ASoSgQEKEUNsb3VkR3JvdXBzQ3JlYXRlEiQucHVibGljX2FwaS5DbG91ZEdyb3Vwc0NyZWF0ZVJlcXVlc3QaJS5wdWJsaWNfYXBpLkNsb3VkR3JvdXBzQ3JlYXRlUmVzcG9uc2UiH4LT5JMCGSIUL2Nsb3VkLWdyb3Vwcy9jcmVhdGU6ASoSgQEKEUNsb3VkR3JvdXBzVXBkYXRlEiQucHVibGljX2FwaS5DbG91ZEdyb3Vwc1VwZGF0ZVJlcXVlc3QaJS5wdWJsaWNfYXBpLkNsb3VkR3JvdXBzVXBkYXRlUmVzcG9uc2UiH4LT5JMCGSIUL2Nsb3VkLWdyb3Vwcy91cGRhdGU6ASoSgQEKEUNsb3VkR3JvdXBzRGVsZXRlEiQucHVibGljX2FwaS5DbG91ZEdyb3Vwc0RlbGV0ZVJlcXVlc3QaJS5wdWJsaWNfYXBpLkNsb3VkR3JvdXBzRGVsZXRlUmVzcG9uc2UiH4LT5JMCGSIUL2Nsb3VkLWdyb3Vwcy9kZWxldGU6ASoSlgEKFkNsb3VkR3JvdXBzTGlzdE1lbWJlcnMSKS5wdWJsaWNfYXBpLkNsb3VkR3JvdXBzTGlzdE1lbWJlcnNSZXF1ZXN0GioucHVibGljX2FwaS5DbG91ZEdyb3Vwc0xpc3RNZW1iZXJzUmVzcG9uc2UiJYLT5JMCHyIaL2Nsb3VkLWdyb3Vwcy9tZW1iZXJzL2xpc3Q6ASoSkgEKFUNsb3VkR3JvdXBzQWRkTWVtYmVycxIoLnB1YmxpY19hcGkuQ2xvdWRHcm91cHNBZGRNZW1iZXJzUmVxdWVzdBopLnB1YmxpY19hcGkuQ2xvdWRHcm91cHNBZGRNZW1iZXJzUmVzcG9uc2UiJILT5JMCHiIZL2Nsb3VkLWdyb3Vwcy9tZW1iZXJzL2FkZDoBKhKeAQoYQ2xvdWRHcm91cHNSZW1vdmVNZW1iZXJzEisucHVibGljX2FwaS5DbG91ZEdyb3Vwc1JlbW92ZU1lbWJlcnNSZXF1ZXN0GiwucHVibGljX2FwaS5DbG91ZEdyb3Vwc1JlbW92ZU1lbWJlcnNSZXNwb25zZSIngtPkkwIhIhwvY2xvdWQtZ3JvdXBzL21lbWJlcnMvcmVtb3ZlOgEqEnMKD0Nsb3VkQWNjZXNzTGlzdBIiLnB1YmxpY19hcGkuQ2xvdWRBY2Nlc3NMaXN0UmVxdWVzdBojLnB1YmxpY19hcGkuQ2xvdWRBY2Nlc3NMaXN0UmVzcG9uc2UiF4LT5JMCESIML2FjY2Vzcy9saXN0OgEqEncKEENsb3VkQWNjZXNzR3JhbnQSIy5wdWJsaWNfYXBpLkNsb3VkQWNjZXNzR3JhbnRSZXF1ZXN0GiQucHVibGljX2FwaS5DbG91ZEFjY2Vzc0dyYW50UmVzcG9uc2UiGILT5JMCEiINL2FjY2Vzcy9ncmFudDoBKhJ7ChFDbG91ZEFjY2Vzc1Jldm9rZRIkLnB1YmxpY19hcGkuQ2xvdWRBY2Nlc3NSZXZva2VSZXF1ZXN0GiUucHVibGljX2FwaS5DbG91ZEFjY2Vzc1Jldm9rZVJlc3BvbnNlIhmC0+STAhMiDi9hY2Nlc3MvcmV2b2tlOgEqEqIBChlDbG91ZFByb2plY3RzTGlzdFByb2plY3RzEiwucHVibGljX2FwaS5DbG91ZFByb2plY3RzTGlzdFByb2plY3RzUmVxdWVzdBotLnB1YmxpY19hcGkuQ2xvdWRQcm9qZWN0c0xpc3RQcm9qZWN0c1Jlc3BvbnNlIiiC0+STAiIiHS9jbG91ZC1wcm9qZWN0cy9wcm9qZWN0cy9saXN0OgEqEpsBChdDbG91ZFByb2plY3RzR2V0UHJvamVjdBIqLnB1YmxpY19hcGkuQ2xvdWRQcm9qZWN0c0dldFByb2plY3RSZXF1ZXN0GisucHVibGljX2FwaS5DbG91ZFByb2plY3RzR2V0UHJvamVjdFJlc3BvbnNlIieC0+STAiEiHC9jbG91ZC1wcm9qZWN0cy9wcm9qZWN0cy9nZXQ6ASoSpwEKGkNsb3VkUHJvamVjdHNDcmVhdGVQcm9qZWN0Ei0ucHVibGljX2FwaS5DbG91ZFByb2plY3RzQ3JlYXRlUHJvamVjdFJlcXVlc3QaLi5wdWJsaWNfYXBpLkNsb3VkUHJvamVjdHNDcmVhdGVQcm9qZWN0UmVzcG9uc2UiKoLT5JMCJCIfL2Nsb3VkLXByb2plY3RzL3Byb2plY3RzL2NyZWF0ZToBKhKnAQoaQ2xvdWRQcm9qZWN0c0RlbGV0ZVByb2plY3QSLS5wdWJsaWNfYXBpLkNsb3VkUHJvamVjdHNEZWxldGVQcm9qZWN0UmVxdWVzdBouLnB1YmxpY19hcGkuQ2xvdWRQcm9qZWN0c0RlbGV0ZVByb2plY3RSZXNwb25zZSIqgtPkkwIkIh8vY2xvdWQtcHJvamVjdHMvcHJvamVjdHMvZGVsZXRlOgEqEpsBChVDbG91ZFByb2plY3RzQWRkQWdlbnQSKC5wdWJsaWNfYXBpLkNsb3VkUHJvamVjdHNBZGRBZ2VudFJlcXVlc3QaKS5wdWJsaWNfYXBpLkNsb3VkUHJvamVjdHNBZGRBZ2VudFJlc3BvbnNlIi2C0+STAiciIi9jbG91ZC1wcm9qZWN0cy9wcm9qZWN0cy9hZGQtYWdlbnQ6ASoSpwEKGENsb3VkUHJvamVjdHNSZW1vdmVBZ2VudBIrLnB1YmxpY19hcGkuQ2xvdWRQcm9qZWN0c1JlbW92ZUFnZW50UmVxdWVzdBosLnB1YmxpY19hcGkuQ2xvdWRQcm9qZWN0c1JlbW92ZUFnZW50UmVzcG9uc2UiMILT5JMCKiIlL2Nsb3VkLXByb2plY3RzL3Byb2plY3RzL3JlbW92ZS1hZ2VudDoBKhK9AQohQ2xvdWRJbnRlZ3JhdGlvbnNDaGVja1NsYWNrU3RhdHVzEjQucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0NoZWNrU2xhY2tTdGF0dXNSZXF1ZXN0GjUucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0NoZWNrU2xhY2tTdGF0dXNSZXNwb25zZSIrgtPkkwIlIiAvY2xvdWQtaW50ZWdyYXRpb25zL3NsYWNrL3N0YXR1czoBKhLAAQohQ2xvdWRJbnRlZ3JhdGlvbnNHZXRTbGFja09BdXRoVXJsEjQucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0dldFNsYWNrT0F1dGhVcmxSZXF1ZXN0GjUucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0dldFNsYWNrT0F1dGhVcmxSZXNwb25zZSIugtPkkwIoIiMvY2xvdWQtaW50ZWdyYXRpb25zL3NsYWNrL29hdXRoLXVybDoBKhLHAQoiQ2xvdWRJbnRlZ3JhdGlvbnNMaXN0U2xhY2tDaGFubmVscxI1LnB1YmxpY19hcGkuQ2xvdWRJbnRlZ3JhdGlvbnNMaXN0U2xhY2tDaGFubmVsc1JlcXVlc3QaNi5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zTGlzdFNsYWNrQ2hhbm5lbHNSZXNwb25zZSIygtPkkwIsIicvY2xvdWQtaW50ZWdyYXRpb25zL3NsYWNrL2xpc3QtY2hhbm5lbHM6ASoSwQEKIkNsb3VkSW50ZWdyYXRpb25zQ2hlY2tMaW5lYXJTdGF0dXMSNS5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zQ2hlY2tMaW5lYXJTdGF0dXNSZXF1ZXN0GjYucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0NoZWNrTGluZWFyU3RhdHVzUmVzcG9uc2UiLILT5JMCJiIhL2Nsb3VkLWludGVncmF0aW9ucy9saW5lYXIvc3RhdHVzOgEqEsQBCiJDbG91ZEludGVncmF0aW9uc0dldExpbmVhck9BdXRoVXJsEjUucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0dldExpbmVhck9BdXRoVXJsUmVxdWVzdBo2LnB1YmxpY19hcGkuQ2xvdWRJbnRlZ3JhdGlvbnNHZXRMaW5lYXJPQXV0aFVybFJlc3BvbnNlIi+C0+STAikiJC9jbG91ZC1pbnRlZ3JhdGlvbnMvbGluZWFyL29hdXRoLXVybDoBKhLOAQolQ2xvdWRJbnRlZ3JhdGlvbnNDaGVja0dpdEh1YkFwcFN0YXR1cxI4LnB1YmxpY19hcGkuQ2xvdWRJbnRlZ3JhdGlvbnNDaGVja0dpdEh1YkFwcFN0YXR1c1JlcXVlc3QaOS5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zQ2hlY2tHaXRIdWJBcHBTdGF0dXNSZXNwb25zZSIwgtPkkwIqIiUvY2xvdWQtaW50ZWdyYXRpb25zL2dpdGh1Yi1hcHAvc3RhdHVzOgEqEtkBCidDbG91ZEludGVncmF0aW9uc0dldEdpdEh1YkFwcEluc3RhbGxVcmwSOi5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zR2V0R2l0SHViQXBwSW5zdGFsbFVybFJlcXVlc3QaOy5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zR2V0R2l0SHViQXBwSW5zdGFsbFVybFJlc3BvbnNlIjWC0+STAi8iKi9jbG91ZC1pbnRlZ3JhdGlvbnMvZ2l0aHViLWFwcC9pbnN0YWxsLXVybDoBKhLaAQooQ2xvdWRJbnRlZ3JhdGlvbnNDaGVja0F0bGFzc2lhbkFwcFN0YXR1cxI7LnB1YmxpY19hcGkuQ2xvdWRJbnRlZ3JhdGlvbnNDaGVja0F0bGFzc2lhbkFwcFN0YXR1c1JlcXVlc3QaPC5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zQ2hlY2tBdGxhc3NpYW5BcHBTdGF0dXNSZXNwb25zZSIzgtPkkwItIigvY2xvdWQtaW50ZWdyYXRpb25zL2F0bGFzc2lhbi1hcHAvc3RhdHVzOgEqEuUBCipDbG91ZEludGVncmF0aW9uc0dldEF0bGFzc2lhbkFwcEluc3RhbGxVcmwSPS5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zR2V0QXRsYXNzaWFuQXBwSW5zdGFsbFVybFJlcXVlc3QaPi5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zR2V0QXRsYXNzaWFuQXBwSW5zdGFsbFVybFJlc3BvbnNlIjiC0+STAjIiLS9jbG91ZC1pbnRlZ3JhdGlvbnMvYXRsYXNzaWFuLWFwcC9pbnN0YWxsLXVybDoBKhKRAQoVQ2xvdWRJbnRlZ3JhdGlvbnNMaXN0EigucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0xpc3RSZXF1ZXN0GikucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0xpc3RSZXNwb25zZSIjgtPkkwIdIhgvY2xvdWQtaW50ZWdyYXRpb25zL2xpc3Q6ASoSsgEKHUNsb3VkSW50ZWdyYXRpb25zSW52b2tlQWN0aW9uEjAucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0ludm9rZUFjdGlvblJlcXVlc3QaMS5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zSW52b2tlQWN0aW9uUmVzcG9uc2UiLILT5JMCJiIhL2Nsb3VkLWludGVncmF0aW9ucy9pbnZva2UtYWN0aW9uOgEqEuABCihDbG91ZEludGVncmF0aW9uc0NyZWF0ZUV2ZW50U3Vic2NyaXB0aW9uEjsucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0NyZWF0ZUV2ZW50U3Vic2NyaXB0aW9uUmVxdWVzdBo8LnB1YmxpY19hcGkuQ2xvdWRJbnRlZ3JhdGlvbnNDcmVhdGVFdmVudFN1YnNjcmlwdGlvblJlc3BvbnNlIjmC0+STAjMiLi9jbG91ZC1pbnRlZ3JhdGlvbnMvZXZlbnQtc3Vic2NyaXB0aW9ucy9jcmVhdGU6ASoS2wEKJ0Nsb3VkSW50ZWdyYXRpb25zTGlzdEV2ZW50U3Vic2NyaXB0aW9ucxI6LnB1YmxpY19hcGkuQ2xvdWRJbnRlZ3JhdGlvbnNMaXN0RXZlbnRTdWJzY3JpcHRpb25zUmVxdWVzdBo7LnB1YmxpY19hcGkuQ2xvdWRJbnRlZ3JhdGlvbnNMaXN0RXZlbnRTdWJzY3JpcHRpb25zUmVzcG9uc2UiN4LT5JMCMSIsL2Nsb3VkLWludGVncmF0aW9ucy9ldmVudC1zdWJzY3JpcHRpb25zL2xpc3Q6ASoS4AEKKENsb3VkSW50ZWdyYXRpb25zQ2FuY2VsRXZlbnRTdWJzY3JpcHRpb24SOy5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zQ2FuY2VsRXZlbnRTdWJzY3JpcHRpb25SZXF1ZXN0GjwucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc0NhbmNlbEV2ZW50U3Vic2NyaXB0aW9uUmVzcG9uc2UiOYLT5JMCMyIuL2Nsb3VkLWludGVncmF0aW9ucy9ldmVudC1zdWJzY3JpcHRpb25zL2NhbmNlbDoBKhLHAQoiQ2xvdWRJbnRlZ3JhdGlvbnNSZXZva2VHaXRodWJPQXV0aBI1LnB1YmxpY19hcGkuQ2xvdWRJbnRlZ3JhdGlvbnNSZXZva2VHaXRodWJPQXV0aFJlcXVlc3QaNi5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zUmV2b2tlR2l0aHViT0F1dGhSZXNwb25zZSIygtPkkwIsIicvY2xvdWQtaW50ZWdyYXRpb25zL2dpdGh1Yi9yZXZva2Utb2F1dGg6ASoSxwEKIkNsb3VkSW50ZWdyYXRpb25zUmV2b2tlTGluZWFyT0F1dGgSNS5wdWJsaWNfYXBpLkNsb3VkSW50ZWdyYXRpb25zUmV2b2tlTGluZWFyT0F1dGhSZXF1ZXN0GjYucHVibGljX2FwaS5DbG91ZEludGVncmF0aW9uc1Jldm9rZUxpbmVhck9BdXRoUmVzcG9uc2UiMoLT5JMCLCInL2Nsb3VkLWludGVncmF0aW9ucy9saW5lYXIvcmV2b2tlLW9hdXRoOgEqEnoKDlByb2Nlc3NXZWJob29rEiEucHVibGljX2FwaS5Qcm9jZXNzV2ViaG9va1JlcXVlc3QaIi5wdWJsaWNfYXBpLlByb2Nlc3NXZWJob29rUmVzcG9uc2UiIYLT5JMCGyIWL3dlYmhvb2tzL3t3ZWJob29rX2lkfToBKhKSAQoVQ2xvdWRBZ2VudHNMaXN0QWdlbnRzEigucHVibGljX2FwaS5DbG91ZEFnZW50c0xpc3RBZ2VudHNSZXF1ZXN0GikucHVibGljX2FwaS5DbG91ZEFnZW50c0xpc3RBZ2VudHNSZXNwb25zZSIkgtPkkwIeIhkvY2xvdWQtYWdlbnRzL2FnZW50cy9saXN0OgEqEr4BCh5DbG91ZEFnZW50c1VwZGF0ZVNlc3Npb25Db25maWcSMS5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzVXBkYXRlU2Vzc2lvbkNvbmZpZ1JlcXVlc3QaMi5wdWJsaWNfYXBpLkNsb3VkQWdlbnRzVXBkYXRlU2Vzc2lvbkNvbmZpZ1Jlc3BvbnNlIjWC0+STAi8iKi9jbG91ZC1hZ2VudHMvYWdlbnRzL3VwZGF0ZS1zZXNzaW9uLWNvbmZpZzoBKhKBAQoXQ2xvdWRBZ2VudHNDb25uZWN0Q2xpVm0SHS5wb3NlaWRvbi5Db25uZWN0Q2xpVm1SZXF1ZXN0Gh4ucG9zZWlkb24uQ29ubmVjdENsaVZtUmVzcG9uc2UiJ4LT5JMCISIcL3ZtLWJlYWNoaGVhZC9jb25uZWN0LWNsaS12bToBKhKNAQoaQ2xvdWRBZ2VudHNGZXRjaFZGU0NoYW5nZXMSIC5wb3NlaWRvbi5GZXRjaFZGU0NoYW5nZXNSZXF1ZXN0GiEucG9zZWlkb24uRmV0Y2hWRlNDaGFuZ2VzUmVzcG9uc2UiKoLT5JMCJCIfL2Nsb3VkLWFnZW50cy92ZnMvZmV0Y2gtY2hhbmdlczoBKhKZAQoeQ2xvdWRBZ2VudHNGZXRjaFZGU0ZpbGVDb250ZW50EiQucG9zZWlkb24uRmV0Y2hWRlNGaWxlQ29udGVudFJlcXVlc3QaJS5wb3NlaWRvbi5GZXRjaFZGU0ZpbGVDb250ZW50UmVzcG9uc2UiKoLT5JMCJCIfL2Nsb3VkLWFnZW50cy92ZnMvZmV0Y2gtY29udGVudDoBKhKQAQofQ2xvdWRBZ2VudHNTdHJlYW1WRlNGaWxlQ29udGVudBIkLnBvc2VpZG9uLkZldGNoVkZTRmlsZUNvbnRlbnRSZXF1ZXN0GhgucG9zZWlkb24uVkZTRmlsZUNvbnRlbnQiK4LT5JMCJSIgL2Nsb3VkLWFnZW50cy92ZnMvc3RyZWFtLWNvbnRlbnQ6ASowARKRAQobQ2xvdWRBZ2VudHNDb21taXRWRlNDaGFuZ2VzEiEucG9zZWlkb24uQ29tbWl0VkZTQ2hhbmdlc1JlcXVlc3QaIi5wb3NlaWRvbi5Db21taXRWRlNDaGFuZ2VzUmVzcG9uc2UiK4LT5JMCJSIgL2Nsb3VkLWFnZW50cy92ZnMvY29tbWl0LWNoYW5nZXM6ASoStwEKIENsb3VkQWdlbnRzRW5zdXJlVkZTRmlsZUlkZW50aXR5EiYucG9zZWlkb24uRW5zdXJlVkZTRmlsZUlkZW50aXR5UmVxdWVzdBo4LnB1YmxpY19hcGkuQ2xvdWRBZ2VudHNFbnN1cmVWRlNGaWxlSWRlbnRpdHlIdHRwUmVzcG9uc2UiMYLT5JMCKyImL2Nsb3VkLWFnZW50cy92ZnMvZW5zdXJlLWZpbGUtaWRlbnRpdHk6ASoSuwEKIUNsb3VkQWdlbnRzUmVzb2x2ZVZGU0ZpbGVJZGVudGl0eRInLnBvc2VpZG9uLlJlc29sdmVWRlNGaWxlSWRlbnRpdHlSZXF1ZXN0GjkucHVibGljX2FwaS5DbG91ZEFnZW50c1Jlc29sdmVWRlNGaWxlSWRlbnRpdHlIdHRwUmVzcG9uc2UiMoLT5JMCLCInL2Nsb3VkLWFnZW50cy92ZnMvcmVzb2x2ZS1maWxlLWlkZW50aXR5OgEqEp4BCh5DbG91ZEFnZW50c0xpc3RWRlNGaWxlVmVyc2lvbnMSJC5wb3NlaWRvbi5MaXN0VkZTRmlsZVZlcnNpb25zUmVxdWVzdBolLnBvc2VpZG9uLkxpc3RWRlNGaWxlVmVyc2lvbnNSZXNwb25zZSIvgtPkkwIpIiQvY2xvdWQtYWdlbnRzL3Zmcy9saXN0LWZpbGUtdmVyc2lvbnM6ASoSmgEKHUNsb3VkQWdlbnRzUmVhZFZGU0ZpbGVWZXJzaW9uEiMucG9zZWlkb24uUmVhZFZGU0ZpbGVWZXJzaW9uUmVxdWVzdBokLnBvc2VpZG9uLlJlYWRWRlNGaWxlVmVyc2lvblJlc3BvbnNlIi6C0+STAigiIy9jbG91ZC1hZ2VudHMvdmZzL3JlYWQtZmlsZS12ZXJzaW9uOgEqEqYBCiBDbG91ZEFnZW50c0xpc3RWRlNWZXJzaW9uZWRGaWxlcxImLnBvc2VpZG9uLkxpc3RWRlNWZXJzaW9uZWRGaWxlc1JlcXVlc3QaJy5wb3NlaWRvbi5MaXN0VkZTVmVyc2lvbmVkRmlsZXNSZXNwb25zZSIxgtPkkwIrIiYvY2xvdWQtYWdlbnRzL3Zmcy9saXN0LXZlcnNpb25lZC1maWxlczoBKhKRAQobQ2xvdWRBZ2VudHNBcHBlbmRWRlNDb21tZW50EiEucG9zZWlkb24uQXBwZW5kVkZTQ29tbWVudFJlcXVlc3QaIi5wb3NlaWRvbi5BcHBlbmRWRlNDb21tZW50UmVzcG9uc2UiK4LT5JMCJSIgL2Nsb3VkLWFnZW50cy92ZnMvYXBwZW5kLWNvbW1lbnQ6ASoSjQEKGkNsb3VkQWdlbnRzTGlzdFZGU0NvbW1lbnRzEiAucG9zZWlkb24uTGlzdFZGU0NvbW1lbnRzUmVxdWVzdBohLnBvc2VpZG9uLkxpc3RWRlNDb21tZW50c1Jlc3BvbnNlIiqC0+STAiQiHy9jbG91ZC1hZ2VudHMvdmZzL2xpc3QtY29tbWVudHM6ASoStAEKJUNsb3VkQWdlbnRzQ3JlYXRlSG9zdGVkQXJ0aWZhY3RVcGxvYWQSKy5wb3NlaWRvbi5DcmVhdGVIb3N0ZWRBcnRpZmFjdFVwbG9hZFJlcXVlc3QaLC5wb3NlaWRvbi5DcmVhdGVIb3N0ZWRBcnRpZmFjdFVwbG9hZFJlc3BvbnNlIjCC0+STAioiJS9jbG91ZC1hZ2VudHMvYXJ0aWZhY3RzL2NyZWF0ZS11cGxvYWQ6ASoSowEKIUNsb3VkQWdlbnRzRmluYWxpemVIb3N0ZWRBcnRpZmFjdBInLnBvc2VpZG9uLkZpbmFsaXplSG9zdGVkQXJ0aWZhY3RSZXF1ZXN0GigucG9zZWlkb24uRmluYWxpemVIb3N0ZWRBcnRpZmFjdFJlc3BvbnNlIiuC0+STAiUiIC9jbG91ZC1hZ2VudHMvYXJ0aWZhY3RzL2ZpbmFsaXplOgEqEpsBCh9DbG91ZEFnZW50c0RlbGV0ZUhvc3RlZEFydGlmYWN0EiUucG9zZWlkb24uRGVsZXRlSG9zdGVkQXJ0aWZhY3RSZXF1ZXN0GiYucG9zZWlkb24uRGVsZXRlSG9zdGVkQXJ0aWZhY3RSZXNwb25zZSIpgtPkkwIjIh4vY2xvdWQtYWdlbnRzL2FydGlmYWN0cy9kZWxldGU6ASpiBnByb3RvMw",[Noe,T3,K1n,ewe,KIe]),I3=LIe(sqi,0)});var J1n=C(()=>{XAn();AEn();nEn();DAn();OAn()});var evn=C(()=>{fEn();lEn();Wct();hEn();mEn();Roe();bEn()});function tvn(){try{new Headers}catch{throw new Error("connect-web requires the fetch API. Are you running on an old version of Node.js? Node.js is not supported in Connect for Web - please stay tuned for Connect for Node.")}}var nvn=C(()=>{});function eut(e){var t;tvn();let n=(t=e.useBinaryFormat)!==null&&t!==void 0?t:!1;return{async unary(r,i,s,o,a,l){let{serialize:u,parse:c}=VIe(r,n,e.jsonOptions,e.binaryOptions);return s=s===void 0?e.defaultTimeoutMs:s<=0?void 0:s,await jct({interceptors:e.interceptors,signal:i,timeoutMs:s,req:{stream:!1,service:r.parent,method:r,requestMethod:"POST",url:FIe(e.baseUrl,r),header:YIe(r.methodKind,n,s,o,!1),contextValues:l??BIe(),message:a},next:async d=>{var p;let m=e.useHttpGet===!0&&r.idempotency===yIe.NO_SIDE_EFFECTS,f=null;m?d=Zct(d,u(d.message),n):f=u(d.message);let g=await((p=e.fetch)!==null&&p!==void 0?p:globalThis.fetch)(d.url,Object.assign(Object.assign({},rvn),{method:d.requestMethod,headers:d.header,signal:d.signal,body:f})),{isUnaryError:b,unaryError:A}=HIe(r.methodKind,n,g.status,g.headers);if(b)throw Ioe(await g.json(),Mct(...$Ie(g.headers)),A);let[y,S]=$Ie(g.headers);return{stream:!1,service:r.parent,method:r,header:y,message:n?c(new Uint8Array(await g.arrayBuffer())):voe(r.output,await g.json(),UIe(e.jsonOptions)),trailer:S}}})},async stream(r,i,s,o,a,l){let{serialize:u,parse:c}=VIe(r,n,e.jsonOptions,e.binaryOptions);function d(m,f,h,g){return oqi(this,arguments,function*(){let A=Dct(m).getReader(),y=!1;for(;;){let S=yield Poe(A.read());if(S.done)break;let{flags:_,data:x}=S.value;if((_&DIe)===DIe)throw new nl("protocol error: received unsupported compressed output",Cs.Internal);if((_&GIe)===GIe){y=!0;let v=$ct(x);if(v.error){let w=v.error;throw h.forEach((T,D)=>{w.metadata.append(D,T)}),w}v.metadata.forEach((w,T)=>f.set(T,w));continue}yield yield Poe(c(x))}if("throwIfAborted"in g&&g.throwIfAborted(),!y)throw"missing EndStreamResponse"})}async function p(m){if(r.methodKind!="server_streaming")throw"The fetch API does not support streaming request bodies";let f=await m[Symbol.asyncIterator]().next();if(f.done==!0)throw"missing request message";return Bct(0,u(f.value))}return s=s===void 0?e.defaultTimeoutMs:s<=0?void 0:s,await zct({interceptors:e.interceptors,timeoutMs:s,signal:i,req:{stream:!0,service:r.parent,method:r,requestMethod:"POST",url:FIe(e.baseUrl,r),header:YIe(r.methodKind,n,s,o,!1),contextValues:l??BIe(),message:a},next:async m=>{var f;let g=await((f=e.fetch)!==null&&f!==void 0?f:globalThis.fetch)(m.url,Object.assign(Object.assign({},rvn),{method:m.requestMethod,headers:m.header,signal:m.signal,body:await p(m.message)}));if(HIe(r.methodKind,n,g.status,g.headers),g.body===null)throw"missing response body";let b=new Headers;return Object.assign(Object.assign({},m),{header:g.headers,trailer:b,message:d(g.body,b,g.headers,m.signal)})}})}}}var Poe,oqi,rvn,ivn=C(()=>{S3();ZIe();J1n();evn();nvn();Au();Poe=function(e){return this instanceof Poe?(this.v=e,this):new Poe(e)},oqi=function(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),i,s=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",o),i[Symbol.asyncIterator]=function(){return this},i;function o(m){return function(f){return Promise.resolve(f).then(m,d)}}function a(m,f){r[m]&&(i[m]=function(h){return new Promise(function(g,b){s.push([m,h,g,b])>1||l(m,h)})},f&&(i[m]=f(i[m])))}function l(m,f){try{u(r[m](f))}catch(h){p(s[0][3],h)}}function u(m){m.value instanceof Poe?Promise.resolve(m.value.v).then(c,d):p(s[0][2],m)}function c(m){l("next",m)}function d(m){l("throw",m)}function p(m,f){m(f),s.shift(),s.length&&l(s[0][0],s[0][1])}},rvn={redirect:"error"}});var svn=C(()=>{ivn()});import{randomUUID as ovn}from"node:crypto";function aqi(e,t){let n=AbortSignal.timeout(t);if(!e)return n;if(typeof AbortSignal.any=="function")return AbortSignal.any([e,n]);let r=new AbortController,i=()=>r.abort(e.reason??n.reason);return e.aborted?(r.abort(e.reason),r.signal):n.aborted?(r.abort(n.reason),r.signal):(e.addEventListener("abort",i,{once:!0}),n.addEventListener("abort",i,{once:!0}),r.signal)}async function nwe(e){return typeof e=="function"?await e():e}function Doe(e,t,n){n&&!e.has(t)&&e.set(t,n)}function rwe(e){return t=>async n=>{n.header.has("x-request-id")||n.header.set("x-request-id",ovn()),Doe(n.header,"x-request-session-id",await nwe(e.sessionId)),Doe(n.header,"x-expert-id",await nwe(e.expertId)),Doe(n.header,"x-workflow-id",await nwe(e.workflowId));let r=await nwe(e.apiToken);return r&&!n.header.has("authorization")&&n.header.set("authorization",`Bearer ${r}`),Doe(n.header,"user-agent",e.userAgent),Doe(n.header,"x-augment-source-agent-id",e.sourceAgentId??process.env.AUGMENT_SOURCE_AGENT_ID),await t(n)}}function avn(e=12e4){return t=>async n=>{if(e<=0)return await t(n);let r=aqi(n.signal,e);return await t({...n,signal:r})}}function lqi(e){return e?e.replace(/ \(\/[^()]+\)/g,""):""}function cqi(e){return e instanceof nl?Cs[e.code]??"unknown":"unknown"}async function uqi(e,t,n,r){let i=typeof r.apiToken=="function"?await r.apiToken():r.apiToken,s=typeof r.sessionId=="function"?r.sessionId():r.sessionId,o=new URL("report-error",e.replace(/\/?$/,"/")),a=AbortSignal.timeout(1e3);await t(o,{method:"POST",headers:{"Content-Type":"application/json","x-request-id":ovn(),...s?{"x-request-session-id":s}:{},...i?{authorization:`Bearer ${i}`}:{}},body:JSON.stringify({original_request_id:n.requestId,sanitized_message:`${n.endpoint} call failed with status ${cqi(n.error)}`,stack_trace:lqi(n.error.stack),diagnostics:[{key:"start_time",value:String(n.startTime)},{key:"duration_ms",value:String(n.durationMs)},{key:"message",value:n.error.message}]}),signal:a})}function dqi(e,t,n){return!!(t?.aborted||n.toLowerCase()==="reporterror"||e instanceof nl&&e.code===Cs.Canceled)}function iwe(e){if(e.errorReporting===!1)return n=>r=>n(r);let t=typeof e.errorReporting=="function"?e.errorReporting:n=>uqi(e.baseUrl,e.fetch??globalThis.fetch,n,e);return n=>async r=>{let i=Date.now(),s=o=>{if(dqi(o,r.signal,r.method.name))return;let a=r.header.get("x-request-id")??"",l={endpoint:r.url,requestId:a,error:o instanceof Error?o:new Error(String(o)),startTime:i,durationMs:Date.now()-i};Promise.resolve().then(()=>t(l)).catch(()=>{})};try{let o=await n(r);if(o.stream){let a=o.message;async function*l(){try{for await(let u of a)yield u}catch(u){throw s(u),u}}return{...o,message:l()}}return o}catch(o){throw s(o),o}}}var tut=C(()=>{"use strict";ZIe()});function rut(){if(nut)return nut;let e=new Map,t=`/${I3.typeName}/`;for(let n of Object.values(I3.methods)){let r=Ict(n,SEn),i;typeof r?.pattern.value=="string"?i=r.pattern.value:r?.pattern.case==="custom"&&(i=r.pattern.value.path),i&&!i.includes("{")&&e.set(`${t}${n.name}`,i)}return nut=e,e}function pqi(e){switch(e){case 400:return"invalid_argument";case 401:return"unauthenticated";case 403:return"permission_denied";case 404:return"not_found";case 408:case 504:return"deadline_exceeded";case 409:return"already_exists";case 412:return"failed_precondition";case 413:case 429:return"resource_exhausted";case 499:return"canceled";case 501:return"unimplemented";case 502:case 503:return"unavailable";default:return e>=500&&e<600?"internal":"unknown"}}function mqi(e){try{let t=JSON.parse(e);if(typeof t=="object"&&t!==null)return t}catch{}}async function iut(e){try{let t=await e.text(),n=mqi(t),r=typeof n?.code=="string"?n.code:pqi(e.status),i=typeof n?.message=="string"&&n.message||typeof n?.error=="string"&&n.error||t.trim()||e.statusText||r,s=Array.isArray(n?.details)?n.details:void 0,o=new Headers(e.headers);return o.set("Content-Type","application/json"),new Response(JSON.stringify({code:r,message:i,...s?{details:s}:{}}),{status:e.status,statusText:e.statusText,headers:o})}catch{return e}}function swe(e=globalThis.fetch,t=rut()){return async(n,r)=>{let i;typeof n=="string"?i=n:n instanceof URL?i=n.toString():i=n.url;let s=new URL(i),o=t.get(s.pathname),a;return o?(s.pathname=o,typeof n=="string"||n instanceof URL?a=await e(s.toString(),r):a=await e(new Request(s.toString(),n),r)):a=await e(n,r),a.ok?a:await iut(a)}}var nut,sut=C(()=>{"use strict";S3();jIe();twe()});function owe(e){let t=[rwe(e),iwe(e),...e.interceptors??[]],n=e.fetch??globalThis.fetch,r=e.disableRouteMapping?n:swe(n);return eut({baseUrl:e.baseUrl,useBinaryFormat:!1,defaultTimeoutMs:e.timeoutMs??12e4,jsonOptions:{useProtoFieldName:!0,enumAsInteger:!0,...e.jsonOptions},fetch:r,interceptors:t})}var out=C(()=>{"use strict";svn();tut();sut()});function awe(e){let t="unary"in e?e:owe(e);return Lct(I3,t)}var aut=C(()=>{"use strict";ZIe();twe();out()});function lut(e){if(Array.isArray(e))return e.map(t=>lut(t));if(e!==null&&typeof e=="object"){let t={};for(let[n,r]of Object.entries(e))r!==void 0&&(t[n]=lut(r));return t}return e}function cvn(e){let t=e.modified_at??e.modifiedAt;return{resourceVersion:e.resource_version??e.resourceVersion??0,config:e.config,scope:fqi[e.scope??0]??"unknown",modifiedBy:e.modified_by??e.modifiedBy??"",modifiedAt:t?new Date(t):void 0,changeType:e.change_type??e.changeType??""}}function bqi(e){return typeof e=="number"?e:typeof e=="string"?hqi[e]??0:0}function yqi(e){if(typeof e=="number")return e;if(typeof e=="string"){let t=e.replace(/^(?:CLOUD_EXPERT_BUILTIN_CAPABILITY_|AGENT_CAPABILITY_)/,""),n=QP[t];return typeof n=="number"?n:void 0}}function Aqi(e){if(typeof e=="number")return e;if(typeof e=="string")return gqi[e]}function Eqi(e){if(e.routing_target?.pool_id===void 0)return e.routing_target?.daemon_vm_id??e.daemon_vm_id}function uvn(e,t,n){let r=e.capabilityNames??[],i=(e.builtinCapabilities??[]).map(u=>QP[u]??"UNKNOWN"),s=i.every(u=>u&&u!=="UNKNOWN"),o=s&&i.every(u=>r.includes(u)),a=s&&r.every(u=>i.includes(u));if(o&&a)return r;let l=new Error(`inconsistent capabilities from api call ${t}`);if(n(l),o)return r;if(a)return i;throw l}function w3(e){let t=e;return{name:t.name,description:t.description,initialMessages:t.initial_messages||[],builtinCapabilities:(t.builtin_capabilities||[]).map(n=>yqi(n)??QP.UNKNOWN),...t.capability_names===void 0?{}:{capabilityNames:t.capability_names},...t.use_all_builtin_capabilities===void 0?{}:{useAllBuiltinCapabilities:t.use_all_builtin_capabilities},capabilityInstanceIds:t.capability_instance_ids||[],toolConfig:t.tool_config?{toolName:t.tool_config.tool_name,toolDescription:t.tool_config.tool_description,timeoutSeconds:t.tool_config.timeout_seconds,allowAsync:t.tool_config.allow_async}:void 0,sessionConfig:t.session_config?{model:t.session_config.model,reasoningEffort:t.session_config.reasoning_effort,includeDefaultSystemPrompt:t.session_config.include_default_system_prompt,systemPrompt:t.session_config.system_prompt,visibility:Aqi(t.session_config.visibility),userMetadata:t.session_config.user_metadata,autoCleanupOnIdle:t.session_config.auto_cleanup_on_idle}:void 0,vmConfig:t.vm_config?{baseImage:t.vm_config.base_image,snapshotId:t.vm_config.snapshot_id,cpuCores:t.vm_config.cpu_cores,memoryMib:t.vm_config.memory_mib,timeoutSeconds:t.vm_config.timeout_seconds,idleTimeoutSeconds:t.vm_config.idle_timeout_seconds,installGitCredentials:t.vm_config.install_git_credentials,installUserSecrets:t.vm_config.install_user_secrets,imageSource:t.vm_config.image_source,baseImageId:t.vm_config.base_image_id,cloneRepos:(t.vm_config.clone_repos||[]).map(n=>({owner:n.owner,name:n.name,branch:n.branch})),resources:t.vm_config.resources?{cpuCores:t.vm_config.resources.cpu_cores,memoryMib:t.vm_config.resources.memory_mib}:void 0,baseImageCurrentVersion:t.vm_config.base_image_current_version,environmentVariables:t.vm_config.environment_variables?{variables:(t.vm_config.environment_variables.variables||[]).map(n=>({name:n.name,value:n.value}))}:void 0}:void 0,daemonVmId:Eqi(t),poolId:t.routing_target?.pool_id,workerExpertIds:t.worker_expert_ids||[],useAllExpertsAsWorkers:t.use_all_experts_as_workers??!1,userInstructions:t.user_instructions,placeholderText:t.placeholder_text,mcpConfigIds:t.mcp_config_ids||[],hidden:t.hidden??!1,...t.tags&&Object.keys(t.tags).length>0?{tags:t.tags}:{}}}function dvn(e){return{expertId:e.expert_id,slug:e.slug,scope:bqi(e.scope),config:e.config?w3(e.config):void 0,userId:e.user_id,createdAt:e.created_at?new Date(e.created_at):void 0,updatedAt:e.updated_at?new Date(e.updated_at):void 0,resourceVersion:e.resource_version,deletedAt:e.deleted_at?new Date(e.deleted_at):void 0,effectiveRole:e.effective_role||void 0,...e.space_summary?{spaceSummary:{spaceId:e.space_summary.space_id??"",displayName:e.space_summary.display_name??""}}:{}}}function lvn(e){let t=e?.trim();return t&&t.length>0?t:void 0}function _qi(e,t){if(e!==void 0)return{pool_id:e};if(t!==void 0)return{daemon_vm_id:t}}function uut(e){let t=e.mcpConfigIds!==void 0,n=e.mcpConfigIds??[],r=e.tags!==void 0,i=lvn(e.poolId),s=lvn(e.daemonVmId),o={name:e.name,description:e.description,initial_messages:e.initialMessages||[],builtin_capabilities:e.builtinCapabilities||[],capability_names:e.capabilityNames,use_all_builtin_capabilities:e.useAllBuiltinCapabilities,capability_instance_ids:e.capabilityInstanceIds||[],tool_config:e.toolConfig?{tool_name:e.toolConfig.toolName,tool_description:e.toolConfig.toolDescription,timeout_seconds:e.toolConfig.timeoutSeconds,allow_async:e.toolConfig.allowAsync}:void 0,session_config:e.sessionConfig?{model:e.sessionConfig.model,reasoning_effort:e.sessionConfig.reasoningEffort,include_default_system_prompt:e.sessionConfig.includeDefaultSystemPrompt,system_prompt:e.sessionConfig.systemPrompt,visibility:e.sessionConfig.visibility,user_metadata:e.sessionConfig.userMetadata,auto_cleanup_on_idle:e.sessionConfig.autoCleanupOnIdle}:void 0,vm_config:e.vmConfig?{base_image:e.vmConfig.baseImage,snapshot_id:e.vmConfig.snapshotId,cpu_cores:e.vmConfig.cpuCores,memory_mib:e.vmConfig.memoryMib,timeout_seconds:e.vmConfig.timeoutSeconds,idle_timeout_seconds:e.vmConfig.idleTimeoutSeconds,install_git_credentials:e.vmConfig.installGitCredentials,install_user_secrets:e.vmConfig.installUserSecrets,image_source:e.vmConfig.imageSource,base_image_id:e.vmConfig.baseImageId,clone_repos:(e.vmConfig.cloneRepos||[]).map(a=>({owner:a.owner,name:a.name,branch:a.branch})),resources:e.vmConfig.resources?{cpu_cores:e.vmConfig.resources.cpuCores,memory_mib:e.vmConfig.resources.memoryMib}:void 0,base_image_current_version:e.vmConfig.baseImageCurrentVersion,environment_variables:e.vmConfig.environmentVariables?{variables:e.vmConfig.environmentVariables.variables.map(a=>({name:a.name,value:a.value}))}:void 0}:void 0,routing_target:_qi(i,s),worker_expert_ids:e.useAllExpertsAsWorkers?[]:e.workerExpertIds||[],use_all_experts_as_workers:e.useAllExpertsAsWorkers??!1,user_instructions:e.userInstructions,placeholder_text:e.placeholderText,mcp_config_ids:n,has_mcp_config_ids:t,hidden:e.hidden??!1,tags:e.tags,has_tags:r?!0:void 0};return lut(o)}var fqi,hqi,gqi,cut,dut=C(()=>{"use strict";Moe();fqi={0:"unknown",1:"tenant",2:"user",CLOUD_EXPERT_SCOPE_UNKNOWN:"unknown",CLOUD_EXPERT_SCOPE_TENANT:"tenant",CLOUD_EXPERT_SCOPE_USER:"user",EXPERT_SCOPE_UNSPECIFIED:"unknown",EXPERT_SCOPE_TENANT:"tenant",EXPERT_SCOPE_USER:"user"},hqi={CLOUD_EXPERT_SCOPE_UNKNOWN:0,CLOUD_EXPERT_SCOPE_TENANT:1,CLOUD_EXPERT_SCOPE_USER:2,EXPERT_SCOPE_UNSPECIFIED:0,EXPERT_SCOPE_TENANT:1,EXPERT_SCOPE_USER:2},gqi={CLOUD_EXPERT_SESSION_VISIBILITY_UNSPECIFIED:0,CLOUD_EXPERT_SESSION_VISIBILITY_SHARED:1,CLOUD_EXPERT_SESSION_VISIBILITY_PRIVATE:2},cut={unspecified:0,builtin_capabilities:1,names:2}});function pvn(e){return{...Boe,...e}}var Boe,put=C(()=>{"use strict";Boe={apiCallTimeoutMs:3e4,imageBuildTimeoutMs:6e5,environmentSnapshotUpdateTimeoutMs:6e5,maxRetries:3,retryBaseDelayMs:500}});function vqi(e){if(typeof e=="number")return e;if(typeof e=="string")return Sqi[e]??void 0}function mvn(e){if(typeof e=="number")return e;if(typeof e=="string"){let t=Number(e);return Number.isFinite(t)?t:void 0}}function YP(e){let t=e,n=t.workflow_id??t.workflowId??"",r=t.slug??"",i=t.event_source_id??t.eventSourceId??"",s=t.expert_id??t.expertId??"",o=mvn(t.resource_version??t.resourceVersion),a=t.created_at??t.createdAt,l=t.override_auto_cleanup_on_idle??t.overrideAutoCleanupOnIdle,u=t.initial_instructions??t.initialInstructions,c=t.actor_user_id??t.actorUserId,d=t.per_minute_create_agent_limit??t.perMinuteCreateAgentLimit,p=typeof d=="number"?d:void 0;return{workflowId:n,...r?{slug:r}:{},eventSourceId:i,name:e.name??"",description:e.description,enabled:e.enabled??!0,...typeof l=="boolean"?{overrideAutoCleanupOnIdle:l}:{},...typeof u=="string"?{initialInstructions:u}:{},...typeof c=="string"?{actorUserId:c}:{},...p===void 0?{}:{perMinuteCreateAgentLimit:p},expertId:s,resourceVersion:o,createdAt:a?new Date(a):void 0,raw:e}}function R3(e){let t=e,n=t.event_source_id??t.eventSourceId??"",r=t.slug??"",i=vqi(t.event_source_type??t.eventSourceType),s=t.user_id??t.userId,o=t.tenant_id??t.tenantId,a=mvn(t.resource_version??t.resourceVersion),l=t.created_at??t.createdAt;return{eventSourceId:n,...r?{slug:r}:{},eventSourceType:i,name:e.name??n,active:e.active??!0,userId:s,tenantId:o,resourceVersion:a,createdAt:l?new Date(l):void 0,raw:e}}var Sqi,fvn=C(()=>{"use strict";Sqi={EVENT_SOURCE_TYPE_SLACK:1,EVENT_SOURCE_TYPE_GITHUB:2,EVENT_SOURCE_TYPE_LINEAR:3,EVENT_SOURCE_TYPE_WEBHOOK:4,EVENT_SOURCE_TYPE_SCHEDULED:5,EVENT_SOURCE_TYPE_PAGERDUTY:6,EVENT_SOURCE_TYPE_JIRA:7,EVENT_SOURCE_TYPE_CONFLUENCE:8,EVENT_SOURCE_TYPE_GITLAB:9,EVENT_SOURCE_TYPE_TEAMS:10,EVENT_SOURCE_TYPE_AZURE_DEVOPS:11}});function FN(e,t=64){if(!e)return;let n=e.replace(/[^a-zA-Z0-9!#$%&'*+-.^_`|~]/g,"").slice(0,t);return n.length>0?n:void 0}function lwe(e){if(!e)return;let t=e.split("/").map(n=>FN(n)).filter(n=>!!n);return t.length>0?t.join("/"):void 0}var mut=C(()=>{"use strict"});import{Buffer as xqi}from"node:buffer";import{randomUUID as hvn,randomUUID as Cqi}from"node:crypto";function wqi(e){let t={400:5,401:7,403:8,404:4,408:11,413:10,426:12,429:6,499:1,504:9};return t[e]!==void 0?t[e]:e>=500&&e<600?3:2}function Rqi(e){if(e===429||e===503)return"retry";if(e===402||e===403)return"sinkhole"}function Nqi(e){try{return e?new URL(e):void 0}catch{return}}function kqi(e){return e.length>gvn?`${e.slice(0,gvn)}\u2026(truncated, ${e.length} chars total)`:e}function Pqi(e){return JSON.stringify(e,(t,n)=>typeof n=="string"?n.replace(Oqi,"").replace(Mqi,"\uFFFD"):n)}function Dqi(e){try{return JSON.stringify(e).length}catch{return 0}}function Bqi(e){let t="0123456789ABCDEFGHJKMNPQRSTVWXYZ",n=0n;if(e.length!==26)throw new Error("agent id is not a 26-character ULID");for(let i of e.toUpperCase()){let s=t.indexOf(i);if(s<0)throw new Error("agent id contains an invalid ULID character");n=n*32n+BigInt(s)}let r=n.toString(16).padStart(32,"0").slice(-32);return`${r.slice(0,8)}-${r.slice(8,12)}-${r.slice(12,16)}-${r.slice(16,20)}-${r.slice(20)}`}function Lqi(e,t){return t?.aborted?!1:e instanceof _H?[1,4,8].includes(e.status)?!1:e.httpStatus!==402:!(e instanceof tr&&e.statusCode===402)}async function Fqi(e,t){let n=await e.text(),r=n.trim()?kqi(n.trim()):void 0,i,s,o;try{let a=JSON.parse(n);s=a.error_details,o=a.error_reason??a.errorReason,typeof a.error=="string"?i=a.error:typeof a.message=="string"&&(i=a.message)}catch{}return new _H(void 0,e,t,{errorDetails:s,errorReason:o,responseBodyMessage:i,responseBodyText:r})}function Uqi(e){let t=Number(e);if(Number.isFinite(t))return new Date(Date.now()+t*1e3);let n=new Date(e);return Number.isNaN(n.getTime())?void 0:n}function Vqi(e){return e.replace(/[A-Z]/g,t=>`_${t.toLowerCase()}`)}function Gqi(e){return e.replace(/_([a-z])/g,(t,n)=>n.toUpperCase())}function ZP(e){return Array.isArray(e)?e.map(ZP):e===null||typeof e!="object"?e:Object.fromEntries(Object.entries(e).map(([t,n])=>[Gqi(t),ZP(n)]))}function Wqi(e,t){if(typeof e!="string")throw new Error(`Expected ${t} to be a string`);return e}function hut(e,t){if(!Array.isArray(e)||e.some(n=>typeof n!="string"))throw new Error(`Expected ${t} to be an array of strings`);return e}function $qi(e){if(typeof e=="number")return e;if(typeof e=="string")return v3[e]??v3.REASON_UNSPECIFIED}function Qqi(e){if(!e||typeof e!="object")return;let t=e;return{...typeof t.code=="number"?{code:t.code}:{},...typeof t.message=="string"?{message:t.message}:{},...typeof t.detail=="string"?{detail:t.detail}:{}}}function mwe(e){return{checkpoint_id:e.checkpointId,added_blobs:e.addedBlobs,deleted_blobs:e.deletedBlobs}}function Yqi(e,t){if(!t)return{};if(e===13||e===14)return{extra_tool_input:{atlassian_tool_extra_input:{server_url:t.serverUrl,personal_api_token:t.personalApiToken,username:t.username}}};let n;return e===15?n="notion_tool_extra_input":e===12?n="linear_tool_extra_input":e===8&&(n="github_tool_extra_input"),n?{extra_tool_input:{[n]:{api_token:t.apiToken}}}:{}}function Hqi(e){let t={},n={enableParallelTools:"enable_parallel_tool_use",language:"lang",pathName:"path",senderUserId:"poseidon_sender_user_id",thirdPartyOverride:"third_party_override"};for(let[r,i]of Object.entries(e))if(!(r==="signal"||r==="sessionId"||i===void 0))if(r==="thirdPartyOverride"){let s=e.thirdPartyOverride;t.third_party_override={...s?.providerModelName===void 0?{}:{provider_model_name:s.providerModelName},...s?.apiKey===void 0?{}:{api_key:s.apiKey},...s?.baseUrl===void 0?{}:{base_url:s.baseUrl}}}else t[n[r]??Vqi(r)]=r==="blobs"?mwe(i):i;return t.tool_definitions??=[],t.nodes??=[],t.rules??=[],t.skills??=[],t.mode??="CHAT",t.feature_detection_flags={support_tool_use_start:e.enableSupportToolUseStart,support_parallel_tool_use:e.enableParallelTools},t}function Zqi(e){if(typeof e!="string")return"unknown";let t=e.toLowerCase().replace("_tier","");return t==="community"||t==="professional"||t==="enterprise"?t:"unknown"}function jqi(e){if(!e.startsWith("https://"))return!1;try{return new URL(e).hostname!==""}catch{return!1}}function Xqi(e,t){return e===hwe.TENANT||e==="HOSTED_ARTIFACT_VISIBILITY_TENANT"?"tenant":e===hwe.SECRET_URL||e==="HOSTED_ARTIFACT_VISIBILITY_SECRET_URL"?"secret-url":t}function Kqi(e){let t=typeof e.size_bytes=="string"?Number(e.size_bytes):e.size_bytes??0;return{hostedArtifactId:e.hosted_artifact_id??"",visibility:Xqi(e.visibility,"secret-url"),mediaType:e.media_type??"",sizeBytes:t,sha256Hex:e.sha256_hex??"",label:e.label??"",ownerUserId:e.owner_user_id??"",canonicalUrl:e.canonical_url??"",createdAt:e.created_at??"",expiresAt:e.expires_at??""}}function nJi(e){if(e===void 0)return"build";if(e!==OT.UNSPECIFIED)return tJi[e]??"unknown"}function bvn({sandboxProviderId:e,displayName:t,description:n,visibility:r,baseImage:i,refreshEnabled:s,repos:o,environmentVariables:a,tags:l,spaceId:u}){return{config:{...e===void 0?{}:{sandbox_provider_id:e},display_name:t,description:n,visibility:r,...o?{repos:o.map(c=>({owner:c.owner,name:c.name,branch:c.branch,...c.host?{host:c.host}:{},...c.project?{project:c.project}:{}}))}:{},...a?{environment_variables:{variables:a.variables.map(c=>({name:c.name,value:c.value}))}}:{},...s===void 0?{}:{refresh_enabled:s},tags:l??{},...u===void 0?{}:{space_id:u}},...i?{base_image:i}:{}}}function yvn({imageId:e,sandboxProviderId:t,displayName:n,description:r,visibility:i,baseImage:s,refreshEnabled:o,repos:a,environmentVariables:l,expectedResourceVersion:u,tags:c,spaceId:d}){return{image_id:e,...t===void 0?{}:{sandbox_provider_id:t},...n===void 0?{}:{display_name:n},...r===void 0?{}:{description:r},...i===void 0?{}:{visibility:i},...s===void 0?{}:{base_image:s},...o===void 0?{}:{refresh_enabled:o},...a?{repos:a.map(p=>({owner:p.owner,name:p.name,...p.branch?{branch:p.branch}:{},...p.host?{host:p.host}:{},...p.project?{project:p.project}:{}})),has_repos:!0}:{},...l?{environment_variables:{variables:l.variables.map(p=>({name:p.name,value:p.value}))}}:{},...u===void 0?{}:{expected_resource_version:u},...c===void 0?{}:{tags:c,has_tags:!0},...d===void 0?{}:{space_id:d}}}function rJi(e){return{eventId:e.event_id??"",source:e.source??"",eventType:e.event_type??"",payloadJson:e.payload_json??"",receivedAt:e.received_at?new Date(e.received_at):void 0,tenantId:e.tenant_id,userId:e.user_id,webhookId:e.webhook_id||void 0}}function yut(e){return{groupId:e.group_id??"",name:e.name??"",description:e.description??"",createdBy:e.created_by??"",createdAt:e.created_at??"",updatedAt:e.updated_at??""}}function oJi(e){switch(e){case 1:case"CLOUD_GROUP_MEMBER_KIND_HUMAN":return"human";case 2:case"CLOUD_GROUP_MEMBER_KIND_SERVICE_ACCOUNT":return"service_account";default:return"unspecified"}}function aJi(e){return{userId:e.user_id??"",addedAt:e.added_at??"",addedBy:e.added_by??"",email:e.email??"",givenName:e.given_name??"",familyName:e.family_name??"",addedByName:e.added_by_name??"",principalKind:oJi(e.principal_kind),serviceName:e.service_name??""}}function Avn(e,t){let n=t.members??[],r=t.serviceAccounts??[];return r.length===0?{group_id:e,members:n}:{group_id:e,selectors:[...n.map(i=>({member:i})),...r.map(i=>({service_account:i}))]}}function cJi(e,t){return t.selectors===void 0||t.members!==void 0||!(e instanceof tr)||e.statusCode!==400?!1:[e.serverMessage,e.responseBody,e.message].some(n=>n!==void 0&&/\bmembers is required\b/.test(n))}async function Evn(e,t){try{return await e()}catch(n){throw cJi(n,t)?new Error(lJi):n}}function _vn(e){return{id:e.id??"",label:e.label??"",description:e.description??"",connected:e.connected??!1,statusKind:e.status_kind??"",statusLabel:e.status_label??"",details:(e.details??[]).map(t=>({key:t.key??"",label:t.label??"",value:t.value??""})),actions:(e.actions??[]).map(t=>({kind:t.kind??"",label:t.label??"",url:t.url??""}))}}function pJi(e){return e===1||e==="1"||e==="DAEMON_POOL_WORKSPACE_ISOLATION_POLICY_FORCE_ISOLATED"||e==="CLOUD_DAEMON_POOL_WORKSPACE_ISOLATION_POLICY_FORCE_ISOLATED"?"isolated":e===2||e==="2"||e==="DAEMON_POOL_WORKSPACE_ISOLATION_POLICY_FORCE_SHARED"||e==="CLOUD_DAEMON_POOL_WORKSPACE_ISOLATION_POLICY_FORCE_SHARED"?"shared":"unspecified"}function mJi(e){return e.provider_type===1||e.provider_type==="CLOUD_SANDBOX_PROVIDER_TYPE_SYSTEM_MANAGED"?"system-managed":(e.provider_type===2||e.provider_type==="CLOUD_SANDBOX_PROVIDER_TYPE_USER_MANAGED","user-managed")}function N3(e){return{id:e.id??"",slug:e.slug??"",displayName:e.display_name??e.slug??"",description:e.description||void 0,type:mJi(e),enabled:e.enabled===!0,createdByUserId:e.created_by_user_id||void 0,createdAt:e.created_at?new Date(e.created_at):void 0,updatedAt:e.updated_at?new Date(e.updated_at):void 0,resourceVersion:String(e.resource_version??""),deletedAt:e.deleted_at?new Date(e.deleted_at):void 0,spaceIds:e.space_ids??[],allSpaces:e.all_spaces??e.space_ids===void 0}}function vvn({connectorUserId:e,connectorServiceAccount:t}){if(e!==void 0&&t!==void 0)throw new Error("Use only one of connectorUserId or connectorServiceAccount.");if(e!==void 0)return{user_id:e};if(t!==void 0)return{service_account_name:t}}function cwe(e){let t=e.connector,n=fJi(e.resource_version);return{id:e.id??"",displayName:e.display_name??e.id??"",description:e.description,visibility:e.visibility,daemonConnectorUserId:e.daemon_connector_user_id??(typeof t?.user_id=="string"?t.user_id:void 0),daemonConnectorServiceAccountName:e.daemon_connector_service_account_name??(typeof t?.service_account_name=="string"?t.service_account_name:void 0),spaceId:e.space_id,workspaceIsolation:pJi(e.workspace_isolation_policy??e.workspace_isolation),createdByUserId:e.created_by_user_id,createdByUserName:e.created_by_user_name,createdAt:e.created_at?new Date(e.created_at):void 0,updatedAt:e.updated_at?new Date(e.updated_at):void 0,resourceVersion:n}}function fJi(e){if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(typeof e=="string"&&e.trim()!==""){let t=Number(e);return Number.isInteger(t)&&t>=0?t:void 0}}function hJi(e){if(e)return{daemonsOnline:e.daemons_online,slotsTotal:e.slots_total,slotsInUse:e.slots_in_use,lastDaemonSeen:e.last_daemon_seen?new Date(e.last_daemon_seen):void 0}}function gJi(e){return{vmId:e.vm_id??"",name:e.name,slotsTotal:e.slots_total,slotsInUse:e.slots_in_use,workspacePath:e.workspace_path,connectedAt:e.connected_at?new Date(e.connected_at):void 0,lastHeartbeat:e.last_heartbeat?new Date(e.last_heartbeat):void 0,poolId:e.pool_id,cliVersion:e.cli_version}}function bJi(e){return{agentId:e.agent_id??"",addedAt:e.added_at??""}}function Loe(e){return{projectId:e.project_id??"",name:e.name??"",description:e.description??"",createdAt:e.created_at??"",updatedAt:e.updated_at??"",createdBy:e.created_by??"",agents:(e.agents??[]).map(bJi)}}function kvn(e){return typeof e=="number"?e:e==="CLOUD_RESIDENT_SCOPE_TENANT"?1:e==="CLOUD_RESIDENT_SCOPE_USER"?2:0}function yJi(e){let t;return e.vm_config!=null?t={type:"base_image",vmConfig:{baseImageId:e.vm_config.base_image_id,...e.vm_config.resources==null?{}:{resources:{cpuCores:e.vm_config.resources.cpu_cores,memoryMib:e.vm_config.resources.memory_mib}}}}:e.daemon_vm_id!=null?t={type:"daemon",daemonVmId:e.daemon_vm_id}:e.daemon_pool_id!=null&&(t={type:"pool",daemonPoolId:e.daemon_pool_id}),{...e.model===void 0?{}:{model:e.model},...e.reasoning_effort===void 0?{}:{reasoningEffort:e.reasoning_effort},...t===void 0?{}:{environment:t}}}function AJi(e){return{...e.slack?{slack:{mentionable:e.slack.mentionable??!1,...e.slack.usergroup_handle===void 0?{}:{usergroupHandle:e.slack.usergroup_handle},...e.slack.home_channel_id===void 0?{}:{homeChannelId:e.slack.home_channel_id},...e.slack.direct_messages_enabled===void 0?{}:{directMessagesEnabled:e.slack.direct_messages_enabled}}}:{}}}function EJi(e){return{...e.slack?{slack:{...e.slack.subteam_id===void 0?{}:{subteamId:e.slack.subteam_id},...e.slack.last_synced_at?{lastSyncedAt:new Date(e.slack.last_synced_at)}:{},...e.slack.error===void 0?{}:{error:e.slack.error}}}:{}}}function Ovn(e){return{name:e.name,description:e.description,expertId:e.expert_id,initialMessage:e.initial_message,overrides:e.overrides?yJi(e.overrides):void 0,runAsUserId:e.run_as_user_id,presence:e.presence?AJi(e.presence):void 0,icon:e.icon,tags:e.tags??{}}}function k3(e){return{residentId:e.resident_id,scope:kvn(e.scope),config:e.config?Ovn(e.config):void 0,userId:e.user_id,createdAt:e.created_at?new Date(e.created_at):void 0,updatedAt:e.updated_at?new Date(e.updated_at):void 0,resourceVersion:e.resource_version,currentAgentId:e.current_agent_id,startedAt:e.started_at?new Date(e.started_at):void 0,effectiveRole:e.effective_role||void 0,deletedAt:e.deleted_at?new Date(e.deleted_at):void 0,presenceStatus:e.presence_status?EJi(e.presence_status):void 0,...e.space_summary?{spaceSummary:{spaceId:e.space_summary.space_id??"",displayName:e.space_summary.display_name??""}}:{}}}function _Ji(e){return{agentId:e.agent_id,status:e.status??"",startedAt:e.started_at?new Date(e.started_at):void 0,endedAt:e.ended_at?new Date(e.ended_at):void 0}}function xvn(e){return{resourceVersion:e.resource_version??0,config:e.config?Ovn(e.config):void 0,scope:kvn(e.scope),modifiedBy:e.modified_by??"",modifiedAt:e.modified_at?new Date(e.modified_at):void 0,changeType:e.change_type??""}}function SJi(e){let t={};e.model!==void 0&&(t.model=e.model),e.reasoningEffort!==void 0&&(t.reasoning_effort=e.reasoningEffort);let n=e.environment;if(n)switch(n.type){case"base_image":t.vm_config={base_image_id:n.vmConfig.baseImageId,...n.vmConfig.resources==null?{}:{resources:{cpu_cores:n.vmConfig.resources.cpuCores,memory_mib:n.vmConfig.resources.memoryMib}}};break;case"daemon":t.daemon_vm_id=n.daemonVmId;break;case"pool":t.daemon_pool_id=n.daemonPoolId;break}return t}function vJi(e){let t={};return e.slack&&(t.slack={mentionable:e.slack.mentionable,...e.slack.usergroupHandle===void 0?{}:{usergroup_handle:e.slack.usergroupHandle},...e.slack.homeChannelId===void 0?{}:{home_channel_id:e.slack.homeChannelId},...e.slack.directMessagesEnabled===void 0?{}:{direct_messages_enabled:e.slack.directMessagesEnabled}}),t}function Cvn(e){return{name:e.name,...e.description===void 0?{}:{description:e.description},expert_id:e.expertId,...e.initialMessage===void 0?{}:{initial_message:e.initialMessage},...e.overrides===void 0?{}:{overrides:SJi(e.overrides)},...e.runAsUserId===void 0?{}:{run_as_user_id:e.runAsUserId},...e.presence===void 0?{}:{presence:vJi(e.presence)},...e.icon===void 0?{}:{icon:e.icon},...e.tags===void 0?{}:{tags:e.tags,has_tags:!0}}}function CJi(e){let t={name:e.name,scope:Mvn[e.scope]};if(e.value!==void 0&&(t.value=e.value),e.expectedVersion!==void 0?t.expected_version=e.expectedVersion:e.secretId===void 0&&(t.expected_version="0"),e.secretId===void 0){if(e.applicability===void 0)throw new Error("applicability is required for stable create");if(e.value===void 0)throw new Error("value is required for stable create");t.applicability=xJi[e.applicability]}else t.secret_id=e.secretId,e.value===void 0&&(t.preserve_value=!0);return TJi(t,e),IJi(t,e),t}function TJi(e,t){if(t.allSpaces===!0&&(t.spaceIds?.length??0)>0)throw new Error("allSpaces and non-empty spaceIds are mutually exclusive");if(t.allSpaces===!0){e.update_spaces=!0,e.all_spaces=!0,e.space_ids=[];return}(t.applicability==="space"||t.spaceIds!==void 0)&&(e.update_spaces=!0,e.all_spaces=!1,e.space_ids=[...t.spaceIds??[]].sort())}function IJi(e,t){t.description!==void 0&&(e.description=t.description,t.secretId!==void 0&&(e.update_description=!0)),t.tags!==void 0&&(e.tags=t.tags,t.secretId!==void 0&&(e.update_tags=!0))}function wJi(e){switch(e){case 1:case"SECRET_APPLICABILITY_PERSONAL":return"personal";case 2:case"SECRET_APPLICABILITY_SPACE":return"space";case 3:case"SECRET_APPLICABILITY_ORGANIZATION":return"organization";default:return}}function RJi(e,t){return e===O3.user||e==="SECRET_SCOPE_PRIVATE"?"user":e===O3.tenant||e==="SECRET_SCOPE_SHARED"?"tenant":t}function uwe(e,t,n){let r=wJi(e.applicability),i=r!==void 0||Array.isArray(e.space_ids)||typeof e.all_spaces=="boolean",s;i&&(s=Array.isArray(e.space_ids)?e.space_ids.filter(a=>typeof a=="string"):[]);let o=i?e.all_spaces===!0:void 0;return{name:e.name??t,scope:RJi(e.scope,n),description:e.description??"",tags:e.tags??{},version:e.version??"",createdAt:e.created_at??"",updatedAt:e.updated_at??"",valueSizeBytes:e.value_size_bytes??0,...s===void 0?{}:{spaceIds:s},...o===void 0?{}:{allSpaces:o},...r===void 0?{}:{applicability:r},...e.secret_id===void 0?{}:{secretId:e.secret_id},...e.olac_ready===void 0?{}:{olacReady:e.olac_ready}}}function NJi(e){if(e===void 0)return;let t=Object.entries(e);return t.length===0?void 0:t.map(([n,r])=>({key:n,values:[r]}))}function Tvn(e,t,n){if(typeof e!="string"&&typeof e!="number")return;let r=String(e);return r in t?t[r]??r:r.startsWith(n)?r.slice(n.length):r}function Ivn(e){return e instanceof Date?e.toISOString():e}function BJi(e={}){let t={limit:e.limit??100};return e.parentAgentId&&(t.parent_agent_id=e.parentAgentId),e.includeOlacShared!==void 0&&(t.include_olac_shared=e.includeOlacShared),e.spaceId&&(t.space_id=e.spaceId),e.searchQuery&&(t.search_query=e.searchQuery),e.includeArchived&&(t.include_archived=!0),e.expertId&&(t.expert_id=e.expertId),e.createdAfter&&(t.created_after=Ivn(e.createdAfter)),e.createdBefore&&(t.created_before=Ivn(e.createdBefore)),(e.includeShared!==void 0||e.includeTenantShared!==void 0)&&(t.include_shared=e.includeShared??e.includeTenantShared),e.defaultSpaceOnly&&(t.default_space_only=!0),e.pageToken&&(t.page_token=e.pageToken),t}function M3(e){let t=r=>typeof r=="string"?new Date(r):void 0,n=r=>typeof r=="string"&&r?r:void 0;return{agentId:n(e.agent_id)??"",agentName:n(e.agent_name)??"",status:Tvn(e.status,PJi,"CLOUD_AGENT_STATUS_"),...Array.isArray(e.capabilities)?{capabilities:e.capabilities.filter(r=>typeof r=="number")}:{},createdAt:t(e.created_at),updatedAt:t(e.updated_at),...Array.isArray(e.tags)?{tags:e.tags.filter(r=>typeof r=="string")}:{},expertId:n(e.expert_id),spaceId:n(e.space_id),workflowId:n(e.workflow_id),model:n(e.model),reasoningEffort:n(e.reasoning_effort),environmentId:n(e.environment_id),daemonId:n(e.daemon_id),daemonPoolId:n(e.daemon_pool_id),parentAgentId:n(e.parent_agent_id),...typeof e.archived=="boolean"?{archived:e.archived}:{},...e.execution_environment===void 0?{}:{executionEnvironment:Tvn(e.execution_environment,DJi,"AGENT_EXECUTION_ENVIRONMENT_")}}}function LJi(e,t){let n={agent_id:e.agentId,workspace_path:e.workspacePath,connection_mode:t,available_tools:[],client_capabilities:[...MJi,...e.extraClientCapabilities??[]]};return e.vmId!==void 0&&(n.vm_id=e.vmId),e.capabilityInstanceId&&(n.capability_instance_id=e.capabilityInstanceId),e.provisioningGeneration!==void 0&&(n.provisioning_generation=e.provisioningGeneration),e.parentVmId!==void 0&&(n.parent_vm_id=e.parentVmId),e.daemonCommandId!==void 0&&(n.daemon_command_id=e.daemonCommandId),e.cliVersion&&(n.cli_version=e.cliVersion),n}function FJi(e,t,n){let r={vmId:n,agentId:e.agentId},i=t.active_generation_epoch;typeof i=="number"&&Number.isSafeInteger(i)&&i>=0&&(r.activeGenerationEpoch=i);let s=t.connection_version;typeof s=="number"&&Number.isSafeInteger(s)&&s>0&&(r.connectionVersion=s),t.session_config&&(r.sessionConfig=UJi(t.session_config));let o=VJi(t.remote_tools);return o.length>0&&(r.remoteTools=o),t.vfs_filesystems&&Object.keys(t.vfs_filesystems).length>0&&(r.vfsFilesystems=t.vfs_filesystems),t.space_id&&(r.spaceId=t.space_id),t.expert_id&&(r.expertId=t.expert_id),t.workflow_id&&(r.workflowId=t.workflow_id),r}function UJi(e){return{systemPrompt:e.system_prompt,includeDefaultSystemPrompt:e.include_default_system_prompt,model:e.model,reasoningEffort:e.reasoning_effort??e.reasoningEffort,userMetadata:e.user_metadata,useAllExpertsAsWorkers:e.use_all_experts_as_workers}}function VJi(e){if(!Array.isArray(e))return[];let t=[];for(let n of e){if(!n||typeof n!="object")continue;let r=n,i=typeof r.name=="string"?r.name:"";i&&t.push({name:i,description:typeof r.description=="string"?r.description:"",inputSchemaJson:typeof r.input_schema_json=="string"?r.input_schema_json:"",toolSafety:typeof r.tool_safety=="string"?r.tool_safety:""})}return t}function P3(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function EH(e,...t){for(let n of t){let r=e[n];if(P3(r))return r}}function Hf(e,...t){for(let n of t){let r=e[n];if(typeof r=="string")return r}}function GJi(e){if(!P3(e))return{};let t={},n=Hf(e,"stop_reason","stopReason"),r=e.is_partial??e.isPartial,i=e.is_final??e.isFinal;return n!==void 0&&(t.stopReason=n),typeof r=="boolean"&&(t.isPartial=r),typeof i=="boolean"&&(t.isFinal=i),t}function WJi(e,t){let n=[];if(Array.isArray(e.content))for(let i of e.content){let s=$Ji(i);if(s!==null){n.push(s);continue}if(i==null||QJi(i))continue;let o=P3(i)?`object keys=[${Object.keys(i).join(",")}]`:`type=${typeof i}`;HP.warn(`getMessages: dropping unparseable content block in agent ${t} message ${e.id??"<unknown>"}: ${o}`)}let r=n.filter(i=>i.kind==="text").map(i=>i.text).join("");return{messageId:e.id??"",role:e.role??"",content:r,contentBlocks:n,createdAt:e.created_at?new Date(e.created_at):void 0,...GJi(e.metadata)}}function $Ji(e){if(typeof e=="string")return e.trim().length>0?{kind:"text",text:e}:null;if(!P3(e))return null;let t=P3(e.block)?e.block:e,n=EH(t,"text","Text");if(n){let a=Hf(n,"text");if(a!==void 0&&a.trim().length>0)return{kind:"text",text:a}}let r=EH(t,"tool_use","toolUse","ToolUse");if(r){let a=Hf(r,"id"),l=Hf(r,"name");if(!a||!l)return null;let u=Hf(r,"input");return{kind:"tool_use",toolUseId:a,toolName:l,inputJson:u&&u.trim().length>0?u:"{}"}}let i=EH(t,"tool_result","toolResult","ToolResult");if(i){let a=Hf(i,"tool_use_id","toolUseId");if(!a)return null;let l=i.is_error??i.isError;return{kind:"tool_result",toolUseId:a,content:Hf(i,"content")??"",isError:typeof l=="boolean"?l:!1}}let s=EH(t,"thinking","Thinking");if(s){let a=Hf(s,"content"),l=Hf(s,"summary"),u=Hf(s,"encrypted_content","encryptedContent"),c=Hf(s,"provider");if(a!==void 0||l!==void 0||u!==void 0)return{kind:"thinking",content:a??"",...l===void 0?{}:{summary:l},...u===void 0?{}:{encryptedContent:u},...c===void 0?{}:{provider:c}}}let o=EH(t,"external_event","externalEvent","ExternalEvent");if(o){let a=Hf(o,"source")??"",l=Hf(o,"event_type","eventType")??"",u=Hf(o,"summary")??"";return a===""&&l===""&&u===""?null:{kind:"external_event",source:a,eventType:l,summary:u,details:Hf(o,"details")??"",subscriptionId:Hf(o,"subscription_id","subscriptionId")}}return null}function QJi(e){if(typeof e=="string")return e.trim().length===0;if(!P3(e))return!1;let t=P3(e.block)?e.block:e,n=EH(t,"text","Text");if(!n)return!1;let r=Hf(n,"text");return r!==void 0&&r.trim().length===0}function YJi(e){return"poolId"in e?{pool_id:e.poolId}:{daemon_vm_id:e.daemonVmId}}function dwe(e){return{spaceId:e.space_id??"",displayName:e.display_name??"",normalizedName:e.normalized_name??"",createdAt:e.created_at??"",updatedAt:e.updated_at??"",createdBy:e.created_by??"",pinnedExpertIds:e.pinned_expert_ids??[]}}function xut(e){return{tunnelId:e.tunnel_id??"",agentId:e.agent_id??"",vmId:e.vm_id??"",localHost:e.local_host??"",localPort:e.local_port??0,label:e.label??"",mode:e.mode??0,status:e.status??0,host:e.host??"",createdAt:e.created_at??"",expiresAt:e.expires_at??""}}function Tut(e){return Array.isArray(e)?e.map(Tut):e!==null&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([t,n])=>[t,t==="value"&&typeof n=="string"?"<redacted>":Tut(n)])):e}function ZJi(e){if(e===LN.PERSONAL||e==="SECRET_APPLICABILITY_PERSONAL")return"personal";if(e===LN.SPACE||e==="SECRET_APPLICABILITY_SPACE")return"space";if(e===LN.ORGANIZATION||e==="SECRET_APPLICABILITY_ORGANIZATION")return"organization"}function pwe(e,t){let n=e.scope===bH.SHARED||e.scope==="SECRET_SCOPE_SHARED"?"tenant":t,r=ZJi(e.applicability),i=e.space_ids??(e.space_id===void 0||e.space_id===""?[]:[e.space_id]);return{name:e.name??"",scope:n,description:e.description??"",tags:e.tags??{},version:e.version??"",createdAt:e.created_at??"",updatedAt:e.updated_at??"",valueSizeBytes:e.value_size_bytes??0,spaceIds:i,allSpaces:e.all_spaces===!0,...r?{applicability:r}:{},...e.secret_id?{secretId:e.secret_id}:{},...e.olac_ready===void 0?{}:{olacReady:e.olac_ready}}}function jJi(e){if(!(!e||Object.keys(e).length===0))return Object.entries(e).map(([t,n])=>({key:t,values:[n]}))}function wvn(e){return{event_id:e.event_id??e.eventId,comment_id:e.comment_id??e.commentId,path:e.path,kind:e.kind,author_display_name:e.author_display_name??e.authorDisplayName,author_id:e.author_id??e.authorId,body:e.body,anchor:e.anchor?{version_seq:e.anchor.version_seq??e.anchor.versionSeq,quote:e.anchor.quote,line_hint:e.anchor.line_hint??e.anchor.lineHint}:void 0,created_at:e.created_at??e.createdAt,parent_id:e.parent_id??e.parentId}}function Nvn(e){if(e)return{steps:(e.steps??[]).map(t=>({title:t.title??"",bodyMarkdown:t.bodyMarkdown??t.body_markdown??""})),fields:(e.fields??[]).map(JJi),webhookUrl:e.webhookUrl??e.webhook_url??"",secretSource:qJi(e.secretSource??e.secret_source)}}function qJi(e){return e===1||e==="SECRET_SOURCE_AUGMENT_GENERATED"?"augment_generated":e===2||e==="SECRET_SOURCE_SERVICE_PROVIDED"?"service_provided":"unknown"}function JJi(e){let t=e.valueKind??e.value_kind;return{label:e.label??"",value:e.value??"",valueKind:ees(t),literalValue:e.literalValue??e.literal_value??"",secret:e.secret===!0}}function ees(e){return e===1||e==="SETUP_FIELD_VALUE_KIND_WEBHOOK_URL"?"webhook_url":e===2||e==="SETUP_FIELD_VALUE_KIND_SECRET"?"secret":e===3||e==="SETUP_FIELD_VALUE_KIND_LITERAL"?"literal":"unknown"}function tes(e){let t=e.failedWebhookIds??e.failed_webhook_ids??[];return{success:e.success??t.length===0,deletedWebhookIds:e.deletedWebhookIds??e.deleted_webhook_ids??[],failedWebhookIds:t}}function Foe(e){return{webhookId:e.webhookId??e.webhook_id??"",description:e.description,url:e.url,type:nes(e.type),active:e.active??!1,userId:e.userId??e.user_id,tenantId:e.tenantId??e.tenant_id,createdAt:res(e.createdAt??e.created_at),capturedHeaders:e.capturedHeaders??e.captured_headers??[],raw:e}}function nes(e){return typeof e=="number"?KJi[e]??"bearer":e?XJi[e]??"bearer":"bearer"}function res(e){if(!e)return;let t=new Date(e);return Number.isNaN(t.getTime())?void 0:t}var Tqi,Iqi,gvn,fut,_H,fwe,Oqi,Mqi,hwe,zqi,gut,qqi,Jqi,eJi,tJi,iJi,but,sJi,lJi,uJi,Svn,dJi,Aut,Eut,_ut,xJi,Mvn,O3,Sut,HP,SH,Iut,kJi,OJi,MJi,PJi,DJi,vut,AH,HJi,MT,zJi,gwe,D3,Cut,Rvn,XJi,KJi,qg,Uoe=C(()=>{"use strict";S3();en();xoe();aut();Moe();dut();put();fvn();mut();Tqi={debug:()=>{},error:()=>{},info:()=>{},warn:()=>{}},Iqi={0:"ok",1:"cancelled",2:"unknown",3:"unavailable",4:"unimplemented",5:"invalidArgument",6:"resourceExhausted",7:"unauthenticated",8:"permissionDenied",9:"deadlineExceeded",10:"augmentTooLarge",11:"augmentClientTimeout",12:"augmentUpgradeRequired"},gvn=500,fut=3e4,_H=class extends tr{apiStatus;originalError;errorDetails;responseBodyMessage;responseBodyText;httpUrl;httpStatus;httpRetryAfter;retryBehavior;isRetriable;shouldBackoff;requestId;constructor(t,n,r,i={}){super(n?.status??0,n?.statusText??"",i.responseBodyText??"",i.responseBodyMessage,i.errorReason??i.errorDetails),t!==void 0&&(this.message=t),this.name="APIError",this.apiStatus=n?wqi(n.status):3,this.originalError=i.originalError,this.errorDetails=i.errorDetails,this.responseBodyMessage=i.responseBodyMessage,this.responseBodyText=i.responseBodyText,this.httpUrl=Nqi(n?.url),this.httpStatus=n?.status;let s=n?.headers.get("retry-after");this.httpRetryAfter=s?Uqi(s):void 0,this.retryBehavior=Rqi(n?.status),this.isRetriable=this.status===1||this.status===3,this.shouldBackoff=n?.status===429,this.requestId=n?.headers.get("x-request-id")??r}get status(){return this.apiStatus}},fwe=class extends Error{status=3;isRetriable=!0;shouldBackoff=!1;originalError;constructor(t,n){super(t,{cause:n}),this.name="APITransportError",this.originalError=n}};Oqi=/^[\uDC00-\uDFFF]|[\uD800-\uDBFF]$/g,Mqi=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g;hwe={UNSPECIFIED:0,SECRET_URL:1,TENANT:2};zqi={"secret-url":hwe.SECRET_URL,tenant:hwe.TENANT};gut="environment",qqi={1:"pending",2:"running",3:"cancel_requested",4:"succeeded",5:"failed",6:"canceled"},Jqi={1:"queued",2:"preparing",3:"building",4:"promoting",6:"building"},eJi=5,tJi={[OT.BASE_IMAGE_REBUILD]:"build",[OT.BASE_IMAGE_BUILD]:"build",[OT.REFRESH]:"refresh",[OT.REPOSITORY_RECONCILE]:"reconcile",[eJi]:"update"};iJi=50,but="expert",sJi=1e3;lJi="This deployment does not support service-account selectors yet. Pass the service account's user id as a member instead.";uJi=404,Svn={UNSPECIFIED:0,USER:1,TENANT:2},dJi={user:Svn.USER,tenant:Svn.TENANT},Aut="daemon_pool";Eut="sandbox_backend";_ut="resident";xJi={personal:1,space:2,organization:3},Mvn={user:1,tenant:2};O3={user:1,tenant:2};Sut="secret",HP=tt.child({prefix:"cloud-http"}),SH=200,Iut=1e4,kJi=2,OJi={UNKNOWN:0,TOOL_PROVIDER:1,AGENT:2,WAITING:3},MJi=["vfs_space_id","command_handler_ready","mcp_credential_revision","desktop_ensure","mcp_targeted_credential_update","mcp_target_material_v1","mcp_passive_credential_install_v1","mcp_target_material_stdio_v1","provisioning_generation","mcp_scoped_secret_revision_domain_v1"],PJi={0:"UNKNOWN",1:"IDLE",2:"PROCESSING",3:"TERMINATED",4:"COMPLETED",5:"STARTING",6:"WAITING_FOR_INPUT"},DJi={0:"unspecified",1:"CLI",2:"cloud VM",3:"local daemon",AGENT_EXECUTION_ENVIRONMENT_UNSPECIFIED:"unspecified",AGENT_EXECUTION_ENVIRONMENT_CLI:"CLI",AGENT_EXECUTION_ENVIRONMENT_MODAL_VM:"cloud VM",AGENT_EXECUTION_ENVIRONMENT_DAEMON:"local daemon"};vut="space";AH={user:bH.PRIVATE,tenant:bH.SHARED},HJi={personal:LN.PERSONAL,space:LN.SPACE,organization:LN.ORGANIZATION};MT="/cloud-agents/vfs",zJi=3e4;gwe=[{name:"bearer",proto:"WEBHOOK_TYPE_BEARER",numeric:1,creatable:!0},{name:"gitlab",proto:"WEBHOOK_TYPE_GITLAB",numeric:2,creatable:!0},{name:"jira",proto:"WEBHOOK_TYPE_JIRA",numeric:3,creatable:!0},{name:"github",proto:"WEBHOOK_TYPE_GITHUB",numeric:6,creatable:!0},{name:"harness-code",proto:"WEBHOOK_TYPE_HARNESS_CODE",numeric:58,creatable:!0},{name:"harness-pipeline-notification",proto:"WEBHOOK_TYPE_HARNESS_PIPELINE_NOTIFICATION",numeric:59,creatable:!0},{name:"stripe",proto:"WEBHOOK_TYPE_STRIPE",numeric:5,creatable:!0},{name:"sentry",proto:"WEBHOOK_TYPE_SENTRY",numeric:9,creatable:!0},{name:"datadog",proto:"WEBHOOK_TYPE_DATADOG",numeric:10,creatable:!0},{name:"buildkite",proto:"WEBHOOK_TYPE_BUILDKITE",numeric:11,creatable:!0},{name:"launchdarkly",proto:"WEBHOOK_TYPE_LAUNCHDARKLY",numeric:12,creatable:!0},{name:"circleci",proto:"WEBHOOK_TYPE_CIRCLECI",numeric:13,creatable:!0},{name:"snyk",proto:"WEBHOOK_TYPE_SNYK",numeric:14,creatable:!0},{name:"sonarqube",proto:"WEBHOOK_TYPE_SONARQUBE",numeric:15,creatable:!0},{name:"semgrep",proto:"WEBHOOK_TYPE_SEMGREP",numeric:16,creatable:!0},{name:"argocd",proto:"WEBHOOK_TYPE_ARGOCD",numeric:17,creatable:!0},{name:"terraform-cloud",proto:"WEBHOOK_TYPE_TERRAFORM_CLOUD",numeric:18,creatable:!0},{name:"opsgenie",proto:"WEBHOOK_TYPE_OPSGENIE",numeric:19,creatable:!0},{name:"pagerduty",proto:"WEBHOOK_TYPE_PAGERDUTY",numeric:8,creatable:!0},{name:"azure-devops",proto:"WEBHOOK_TYPE_AZURE_DEVOPS",numeric:20,creatable:!0},{name:"bitbucket",proto:"WEBHOOK_TYPE_BITBUCKET",numeric:21,creatable:!0},{name:"auth0",proto:"WEBHOOK_TYPE_AUTH0",numeric:22,creatable:!0},{name:"okta",proto:"WEBHOOK_TYPE_OKTA",numeric:23,creatable:!0},{name:"zendesk",proto:"WEBHOOK_TYPE_ZENDESK",numeric:24,creatable:!0},{name:"intercom",proto:"WEBHOOK_TYPE_INTERCOM",numeric:25,creatable:!0},{name:"posthog",proto:"WEBHOOK_TYPE_POSTHOG",numeric:26,creatable:!0},{name:"resend",proto:"WEBHOOK_TYPE_RESEND",numeric:27,creatable:!0},{name:"chargebee",proto:"WEBHOOK_TYPE_CHARGEBEE",numeric:28,creatable:!0},{name:"workos",proto:"WEBHOOK_TYPE_WORKOS",numeric:29,creatable:!0},{name:"hubspot",proto:"WEBHOOK_TYPE_HUBSPOT",numeric:30,creatable:!0},{name:"notion",proto:"WEBHOOK_TYPE_NOTION",numeric:31,creatable:!0},{name:"jsm-operations",proto:"WEBHOOK_TYPE_JSM_OPERATIONS",numeric:32,creatable:!0},{name:"incident-io",proto:"WEBHOOK_TYPE_INCIDENT_IO",numeric:33,creatable:!0},{name:"sendgrid",proto:"WEBHOOK_TYPE_SENDGRID",numeric:34,creatable:!0},{name:"mailgun",proto:"WEBHOOK_TYPE_MAILGUN",numeric:35,creatable:!0},{name:"twilio",proto:"WEBHOOK_TYPE_TWILIO",numeric:36,creatable:!0},{name:"customer-io",proto:"WEBHOOK_TYPE_CUSTOMER_IO",numeric:37,creatable:!0},{name:"vanta",proto:"WEBHOOK_TYPE_VANTA",numeric:38,creatable:!1},{name:"new-relic",proto:"WEBHOOK_TYPE_NEW_RELIC",numeric:39,creatable:!0},{name:"grafana",proto:"WEBHOOK_TYPE_GRAFANA",numeric:40,creatable:!0},{name:"jfrog-xray",proto:"WEBHOOK_TYPE_JFROG_XRAY",numeric:41,creatable:!0},{name:"vercel",proto:"WEBHOOK_TYPE_VERCEL",numeric:42,creatable:!0},{name:"cloudflare",proto:"WEBHOOK_TYPE_CLOUDFLARE",numeric:43,creatable:!0},{name:"pulumi",proto:"WEBHOOK_TYPE_PULUMI",numeric:44,creatable:!0},{name:"harbor",proto:"WEBHOOK_TYPE_HARBOR",numeric:45,creatable:!0},{name:"aws-eventbridge",proto:"WEBHOOK_TYPE_AWS_EVENTBRIDGE",numeric:46,creatable:!0},{name:"clerk",proto:"WEBHOOK_TYPE_CLERK",numeric:47,creatable:!0},{name:"replicate",proto:"WEBHOOK_TYPE_REPLICATE",numeric:48,creatable:!0},{name:"daytona",proto:"WEBHOOK_TYPE_DAYTONA",numeric:49,creatable:!0},{name:"netlify",proto:"WEBHOOK_TYPE_NETLIFY",numeric:50,creatable:!0},{name:"azure-event-grid",proto:"WEBHOOK_TYPE_AZURE_EVENT_GRID",numeric:51,creatable:!0},{name:"rootly",proto:"WEBHOOK_TYPE_ROOTLY",numeric:52,creatable:!0},{name:"firehydrant",proto:"WEBHOOK_TYPE_FIREHYDRANT",numeric:53,creatable:!0},{name:"statuspage",proto:"WEBHOOK_TYPE_STATUSPAGE",numeric:54,creatable:!0},{name:"devrev",proto:"WEBHOOK_TYPE_DEVREV",numeric:55,creatable:!0},{name:"pylon",proto:"WEBHOOK_TYPE_PYLON",numeric:56,creatable:!1},{name:"plain",proto:"WEBHOOK_TYPE_PLAIN",numeric:57,creatable:!0}],D3=gwe.filter(e=>e.creatable).map(e=>e.name),Cut="webhook",Rvn=Object.fromEntries(gwe.map(e=>[e.name,e.proto])),XJi={WEBHOOK_TYPE_UNSPECIFIED:"bearer",...Object.fromEntries(gwe.map(e=>[e.proto,e.name]))},KJi=Object.fromEntries(gwe.map(e=>[e.numeric,e.name]));qg=class e{static userAgent;instanceUserAgent;static setUserAgent(t){e.userAgent=lwe(t)}static getUserAgent(){return e.userAgent??"augment-api-sdk"}apiToken;apiUrl;fetchImpl;sessionId=hvn();logger;poseidonConfig;onExpertCapabilityMismatch;reportedExpertEndpoints=new Set;expertId;workflowId;constructor(t,n,r,i,s,o){let a="apiToken"in t?t:{apiToken:r??"",apiUrl:n??"",fetchImpl:o,logger:t,userAgent:i,apiCallTimeoutMs:s?.apiCallTimeoutMs};this.apiToken=a.apiToken,this.apiUrl=a.apiUrl.endsWith("/")?a.apiUrl:`${a.apiUrl}/`,this.instanceUserAgent=a.userAgent,this.fetchImpl=a.fetchImpl??globalThis.fetch,this.logger=a.logger??Tqi,this.onExpertCapabilityMismatch=a.onExpertCapabilityMismatch,this.poseidonConfig={...Boe,...a.apiCallTimeoutMs===void 0?{}:{apiCallTimeoutMs:a.apiCallTimeoutMs}}}getRpcClient(){return awe({baseUrl:this.apiUrl,apiToken:this.apiToken,fetch:this.fetchImpl,sessionId:this.sessionId,expertId:()=>this.expertId,workflowId:()=>this.workflowId,userAgent:this.getUserAgent(),timeoutMs:this.poseidonConfig.apiCallTimeoutMs,errorReporting:t=>this.reportRequestFailure({bodyLength:t.bodyLength??0,endpoint:t.endpoint,error:t.error,requestId:t.requestId,startTime:t.startTime})})}getApiUrl(){return this.apiUrl}getAuthToken(){return this.apiToken}getUserAgent(){return e.userAgent??this.instanceUserAgent??"augment-api-sdk"}setUserAgent(t){e.setUserAgent(t)}getAuthHeaders(){return{Authorization:`Bearer ${this.apiToken}`,"User-Agent":this.getUserAgent()}}createRequestId(){return hvn()}setExpertId(t){this.expertId=t}setWorkflowId(t){this.workflowId=t}async reportRequestFailure({bodyLength:t,endpoint:n,error:r,requestId:i,signal:s,startTime:o}){if(n==="report-error"||!Lqi(r,s))return;let a=r instanceof _H||r instanceof fwe?r.status:2;await this.reportError(i,`${n} call failed with APIStatus ${Iqi[a]??"unknown"}`,r.stack??"",[{key:"body_length",value:String(t)},{key:"start_time",value:String(o)},{key:"end_time",value:String(Date.now())},{key:"message",value:r.message}])}async request(t,n,r=this.createRequestId(),i,s=12e4,o=this.sessionId){let a=Date.now();try{return await this.requestWithoutReporting(t,n,r,i,s,o)}catch(l){let u=l instanceof Error?l:new Error(String(l));throw await this.reportRequestFailure({bodyLength:Dqi(n),endpoint:t,error:u,requestId:r,signal:i,startTime:a}),l}}async requestWithoutReporting(t,n,r,i,s,o){let a=new Headers({"x-request-id":r,"x-request-session-id":o,...this.expertId?{"x-expert-id":this.expertId}:{},...this.workflowId?{"x-workflow-id":this.workflowId}:{}}),l=AbortSignal.timeout(s),u=i&&typeof AbortSignal.any=="function"?AbortSignal.any([i,l]):i??l,c;try{c=await this.fetchImpl(new URL(t,this.apiUrl),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiToken}`,"User-Agent":this.getUserAgent(),...Object.fromEntries(a),...process.env.AUGMENT_SOURCE_AGENT_ID?{"x-augment-source-agent-id":process.env.AUGMENT_SOURCE_AGENT_ID}:{}},body:Pqi(n),signal:u})}catch(d){let p=d instanceof Error?d:void 0;throw new fwe(`Augment request to ${new URL(t,this.apiUrl).toString()} failed: ${p?.message??String(d)}`,p)}if(!c.ok)throw await Fqi(c,r);return c}async reportError(t,n,r,i){let s=r.replace(/ \(\/[^()]+\)/g,"");try{await this.requestWithoutReporting("report-error",{original_request_id:t,sanitized_message:n,stack_trace:s,diagnostics:i},this.createRequestId(),void 0,500,this.sessionId)}catch{}}poseidonRequestSessionId(){let t=process.env.AUGMENT_SOURCE_AGENT_ID;if(!t)return this.sessionId;try{return Bqi(t)}catch(n){return this.logger.warn("Failed to derive request session ID: %s",String(n)),this.sessionId}}async callApi(t,n,r){let s=await(await this.request(t.replace(/^\//,""),n,void 0,r?.signal,r?.timeoutMs??this.poseidonConfig.apiCallTimeoutMs,this.poseidonRequestSessionId())).text();if(s)return this.base_parseJson(s,`Augment request to ${t}`)}async getModelConfig(){let t=await this.callApi("get-models",{});return{defaultModel:t.default_model??"",models:(t.models??[]).map(n=>({name:n.name??"",suggestedPrefixCharCount:n.suggested_prefix_char_count??0,suggestedSuffixCharCount:n.suggested_suffix_char_count??0,completionTimeoutMs:n.completion_timeout_ms,internalName:n.internal_name})),featureFlagsV2:voe(F1n,ZP(t.feature_flags??{}),{ignoreUnknownFields:!0}),userTier:Zqi(t.user_tier),user:t.user}}async chatFeedback(t){await this.callApi("chat-feedback",{request_id:t.requestId,rating:t.rating,note:t.note,mode:t.mode})}async chat(t,n,r,i,s,o,a,l,u,c,d,p,m,f,h){let b=await(await this.request("chat",{model:a,path:p,prefix:c,selected_code:u,suffix:d,message:n,chat_history:r,lang:m,blobs:mwe(i),user_guided_blobs:s,external_source_ids:o,context_code_exchange_request_id:l,feature_detection_flags:{},...f?{system_prompt:f}:{},system_prompt_replacements:h??[]},t,void 0,3e5)).text();return this.toChatResult(b?JSON.parse(b):{})}async chatStream(t,n){let r=await this.request("chat-stream",Hqi(n),t,n.signal,12e5,typeof n.sessionId=="string"?n.sessionId:this.sessionId);if(!r.body)throw new _H("Chat stream response had no body",r,t);let i=r.body.getReader(),s=a=>{try{return this.toChatResult(JSON.parse(a))}catch{return}};async function*o(){let a=new TextDecoder,l="";try{for(;;){let{done:c,value:d}=await i.read();if(c)break;l+=a.decode(d,{stream:!0});let p=l.indexOf(`
|
|
230
230
|
`);for(;p>=0;){let m=l.slice(0,p).trim();l=l.slice(p+1);let f=s(m);f&&(yield f),p=l.indexOf(`
|
|
@@ -292,7 +292,7 @@ ${s}${a}`;throw new Error(l)}function aus(e){let t=e.instancePath?e.instancePath
|
|
|
292
292
|
|
|
293
293
|
Re-emit the call with a corrected arguments object.`:`
|
|
294
294
|
|
|
295
|
-
Offending fields: ${e.join(", ")}. Re-emit the call with corrected values for those fields only.`}function cus(e,t){if(t.params?.missingProperty!==void 0||t.params?.additionalProperty!==void 0||!t.instancePath)return"";let n=uus(e,t.instancePath);if(n===void 0)return"";if(typeof n=="string")return` (current value: ${n.length>_Re?JSON.stringify(`${n.slice(0,_Re)}\u2026`):JSON.stringify(n)})`;let r;try{r=JSON.stringify(n)}catch{return""}return r===void 0?"":` (current value: ${r.length>_Re?`${r.slice(0,_Re)}\u2026`:r})`}function uus(e,t){if(t===""||t==="/")return e;let n=t.split("/").slice(1),r=e;for(let i of n){let s=i.replace(/~1/g,"/").replace(/~0/g,"~");if(r==null)return;if(Array.isArray(r)){let o=Number(s);if(!Number.isInteger(o)||o<0)return;r=r[o];continue}if(typeof r!="object")return;r=r[s]}return r}var sft,oft,aft,eus,tus,uRn,nus,dRn,rus,ius,SRe,lft,_Re,fRn=C(()=>{"use strict";sft=_n(KH(),1),oft=_n(Kwn(),1),aft=_n(ift(),1),eus=sft.default.default||sft.default,tus=oft.default.default||oft.default,uRn=aft.default.default||aft.default,nus=typeof globalThis<"u"&&globalThis.chrome?.runtime?.id!==void 0;dRn={allErrors:!0,strict:!1,coerceTypes:!0},rus=/^https?:\/\/json-schema\.org\/draft-07\/schema#?$/,ius=/^https?:\/\/json-schema\.org\/draft\/2020-12\/schema#?$/;SRe=null,lft=null;if(mRn())try{let e=new eus(dRn);uRn(e);let t=new tus(dRn);uRn(t),pRn(e,"http://json-schema.org/draft-07/schema#","https://json-schema.org/draft-07/schema"),pRn(t,"https://json-schema.org/draft/2020-12/schema","http://json-schema.org/draft/2020-12/schema"),SRe=e,lft=t}catch{console.warn("AJV validation disabled due to CSP restrictions")}_Re=200});var J3={};li(J3,{AssistantMessageEventStream:()=>UN,EventStream:()=>XP,LEGACY_THINKING_LEVELS:()=>Iwe,StringEnum:()=>Fwe,Type:()=>ee,appendAssistantMessageDiagnostic:()=>Edt,calculateCost:()=>wts,calculateDetailedContextUsedTokens:()=>BT,cleanupSessionResources:()=>Tns,clearApiProviders:()=>mdt,complete:()=>Ldt,completeSimple:()=>tb,createAssistantMessageDiagnostic:()=>Bts,createAssistantMessageEventStream:()=>Gts,createAugmentTransportErrorDiagnostic:()=>Sdt,discoverAugmentModels:()=>V3,extractDiagnosticError:()=>pCn,findAugmentTransportErrorContext:()=>Tv,findEnvKeys:()=>sCn,formatThrownValue:()=>dCn,formatUnsupportedReasoningEffort:()=>nm,getApiProvider:()=>F3,getApiProviders:()=>yts,getEnvApiKey:()=>DT,getModel:()=>Its,getModels:()=>Koe,getOrCreateAugmentClient:()=>rl,getOverflowPatterns:()=>Dns,getProviders:()=>Xoe,isContextOverflow:()=>GN,isContextOverflowErrorText:()=>MH,isDetailedContextUsage:()=>SA,isLegacyThinkingLevel:()=>vA,isModelUnavailableErrorText:()=>eae,modelsAreEqual:()=>sa,normalizeReasoningEfforts:()=>Nwe,parseAugmentTransportErrorDiagnostic:()=>fCn,parseJsonWithRepair:()=>XCn,parseStreamingJson:()=>Gdt,reasoningSelectionLabel:()=>xA,reasoningSelections:()=>eb,registerApiProvider:()=>L3,registerBuiltInApiProviders:()=>Pdt,registerSessionResourceCleanup:()=>Cns,repairJson:()=>Vdt,resetApiProviders:()=>VN,resolveReasoningCapabilities:()=>Xu,resolveReasoningSelection:()=>Ls,sanitizeAugmentTransportErrorContext:()=>qoe,stream:()=>HCn,streamAugment:()=>OH,streamSimple:()=>LT,streamSimpleAugment:()=>$Cn,supportsXhigh:()=>lCn,toProviderStopReason:()=>ydt,unregisterApiProviders:()=>Ats,validateToolArguments:()=>vRe,validateToolCall:()=>ous});var Bi=C(()=>{"use strict";cs();xwe();bdt();Adt();Mdt();Ddt();QCn();ZCn();wwe();vdt();Mwe();KCn();JCn();eTn();fRn()});var aD,cft=C(()=>{aD={name:"@augmentcode/auggie-v2",version:"1.2.0",description:"Auggie CLI Client by Augment Code",type:"module",piConfig:{name:"auggie",configDir:".augment"},bin:{auggie:"dist/cli.js","auggie-v2":"dist/cli.js",pi:"dist/cli.js"},main:"./dist/index.js",types:"./dist/index.d.ts",exports:{".":{source:"./src/index.ts",types:"./dist/index.d.ts",import:"./dist/index.js"},"./hooks":{types:"./dist/core/hooks/index.d.ts",import:"./dist/core/hooks/index.js"}},files:["dist","docs","examples","CHANGELOG.md"],scripts:{"check-types":"pnpm run bake:export-html && tsgo -p tsconfig.build.json",clean:"shx rm -rf dist",banners:"tsx --conditions=source scripts/print-banners.ts","cli:source":"tsx --conditions=source src/cli.ts",dev:"pnpm run bake:export-html && pnpm run cli:source","dev:debug":"pnpm run bake:export-html && node --conditions=source --inspect-wait=ws://localhost:6499/57uz7t2uyri --import tsx src/cli.ts","bake:export-html":"node scripts/bake-export-html.mjs",build:"pnpm run bake:export-html && tsgo -p tsconfig.build.json --noCheck && shx chmod +x dist/cli.js && shx cp src/runtime/register-extensions.js dist/runtime/register-extensions.js && shx cp src/runtime/cloud-bridge.js dist/runtime/cloud-bridge.js && shx cp src/runtime/cloud-tracer-bridge.js dist/runtime/cloud-tracer-bridge.js && shx cp src/runtime/cloud-error-bridge.js dist/runtime/cloud-error-bridge.js && shx cp src/runtime/mcp-error-bridge.js dist/runtime/mcp-error-bridge.js && pnpm run copy-assets","build:npm:release":"node scripts/build-npm-release.mjs","build:migration-engine":"node scripts/build-migration-engine.mjs","build:release:sea":"node scripts/build-sea-release.mjs","build:release:sea:from-onison":"node scripts/build-sea-from-onison.mjs","build:release-js":"pnpm run bake:export-html && tsgo -p tsconfig.release.json --noCheck && shx chmod +x dist/cli.js && shx cp src/runtime/register-extensions.js dist/runtime/register-extensions.js && shx cp src/runtime/cloud-bridge.js dist/runtime/cloud-bridge.js && shx cp src/runtime/cloud-tracer-bridge.js dist/runtime/cloud-tracer-bridge.js && shx cp src/runtime/cloud-error-bridge.js dist/runtime/cloud-error-bridge.js && shx cp src/runtime/mcp-error-bridge.js dist/runtime/mcp-error-bridge.js && pnpm run copy-assets","build:npm":"pnpm run build:npm:release","clean:npm-artifacts":"find dist -name '*.js' -not -path 'dist/cli.js' -not -path 'dist/index.js' -not -path 'dist/release/*' -not -path 'dist/core/export-html/*' -delete && find dist -name '*.js.map' -delete","copy-assets":"shx mkdir -p dist/modes/interactive/theme && shx cp src/modes/interactive/theme/*.json dist/modes/interactive/theme/",test:"pnpm run bake:export-html && vitest --run","test:acp:e2e":"pnpm run bake:export-html && vitest --run --config vitest.e2e.config.ts e2e-test/acp/","test:e2e:sanity":"pnpm run bake:export-html && vitest --run --config vitest.e2e.config.ts e2e-test/tui/sanity.test.ts","test:e2e:tui":"pnpm run bake:export-html && vitest --run --no-file-parallelism --config vitest.e2e.config.ts e2e-test/tui/","test:e2e:cli":"pnpm run bake:export-html && vitest --run --no-file-parallelism --config vitest.e2e.config.ts e2e-test/cli/",prepublishOnly:"pnpm run clean && pnpm run build"},dependencies:{"@agentclientprotocol/sdk":"1.4.0","@augmentcode/api-client":"workspace:*","@earendil-works/pi-agent-core":"workspace:*","@earendil-works/pi-ai":"workspace:*","@earendil-works/pi-indexing":"workspace:*","@earendil-works/pi-tui":"workspace:*","@hermes/ask-user":"workspace:*","@hermes/augment-legacy-tools":"workspace:*","@hermes/cloud":"workspace:*","@hermes/context-usage":"workspace:*","@hermes/import-sessions":"workspace:*","@hermes/cosmos":"workspace:*","@hermes/daemon":"workspace:*","@hermes/git-credentials":"workspace:*","@hermes/hashline-edit":"workspace:*","@hermes/hooks":"workspace:*","@hermes/logger":"workspace:*","@hermes/lsp":"workspace:*","@hermes/mcp":"workspace:*","@hermes/migration":"workspace:*","@hermes/open-browser":"workspace:*","@hermes/otel":"workspace:*","@hermes/path-utils":"workspace:*","@hermes/plugins":"workspace:*","@hermes/prompt-enhancer":"workspace:*","@hermes/segment-analytics":"workspace:*","@hermes/sentry":"workspace:*","@hermes/settings":"workspace:*","@hermes/shared-types":"workspace:*","@hermes/subagents":"workspace:*","@hermes/tool-permissions":"workspace:*","@mariozechner/jiti":"^2.6.2","@sentry/node":"^10.53.1","@silvia-odwyer/photon-node":"^0.3.4","@sinclair/typebox":"^0.34.41",ajv:"^8.17.1",chalk:"^5.5.0","cli-highlight":"^2.1.11",diff:"^8.0.2","extract-zip":"^2.0.1",fdir:"^6.5.0","file-type":"^21.1.1",glob:"^13.0.1","hosted-git-info":"^9.0.2",ignore:"^7.0.5",jimp:"^1.6.1","jsonc-parser":"3.3.1",marked:"^15.0.12",minimatch:"^10.2.3","proper-lockfile":"^4.1.2","strip-ansi":"^7.1.0",turndown:"^7.2.4",undici:"^7.19.1",yaml:"^2.8.2",zod:"^4.4.3"},overrides:{rimraf:"6.1.2",gaxios:{rimraf:"6.1.2"}},optionalDependencies:{"@mariozechner/clipboard":"^0.3.2"},devDependencies:{"@tintinweb/pi-subagents":"workspace:*","@types/diff":"^7.0.2","@types/hosted-git-info":"^3.0.5","@types/ms":"^2.1.0","@types/node":"^24.3.0","@types/proper-lockfile":"^4.1.4","@types/turndown":"^5.0.5",level:"^10.0.0",shx:"^0.4.0",tsx:"^4.21.0",typescript:"^5.7.3",vitest:"^3.2.4"},keywords:["coding-agent","ai","llm","cli","tui","agent"],author:"Mario Zechner",license:"MIT",repository:{type:"git",url:"git+https://github.com/badlogic/pi-mono.git",directory:"packages/coding-agent"},engines:{node:">=20.6.0"}}});import{existsSync as pus}from"node:fs";import{homedir as Oae}from"node:os";import{dirname as uft,join as Ov,resolve as gRn}from"node:path";import{fileURLToPath as mus}from"node:url";function bRn(){let e=process.env.PI_PACKAGE_DIR;if(e)return e==="~"?Oae():e.startsWith("~/")?Oae()+e.slice(1):e;let t=hRn;for(;t!==uft(t);){if(pus(Ov(t,"package.json")))return t;t=uft(t)}return hRn}function xRe(){return gRn(Ov(bRn(),"docs"))}function CRe(){return gRn(Ov(bRn(),"CHANGELOG.md"))}function _Rn(e){return e==="~"?Oae():e.startsWith("~/")?Oae()+e.slice(1):e}function $T(){let e=process.env.AUGMENT_CACHE_DIR;return e?_Rn(e):Ov(Oae(),".augment")}function Dr(){let e=process.env[dft];return e?_Rn(e):$T()}function Dae(){return Ov(Dr(),"themes")}function SRn(){return Ov(Dr(),"models.json")}function vRn(){return Ov(Dr(),"auth.json")}function xRn(){return Ov(Dr(),"settings.json")}function CA(){return $T()}function nZ(){return Ov(Dr(),"bin")}function CRn(){return Ov(Dr(),Mae)}function TRn(){return Ov(Dr(),`${Jr}-debug.log`)}var fus,hRn,Jr,Ns,Mae,Pae,yRn,hus,hs,ARn,ERn,dft,Fs=C(()=>{"use strict";cft();fus=mus(import.meta.url),hRn=uft(fus);Jr=aD.piConfig?.name||"auggie",Ns=aD.piConfig?.configDir||".augment",Mae="sessions-v2",Pae=Jr,yRn="Auggie Coding Agent",hus="1.2.0-prerelease.202611021510",hs=hus??aD.version,ARn="b6c75130ce1c29f9e22890824491dfdd17042373",ERn="2026-11-02T23:10:44Z",dft=`${Jr.toUpperCase()}_CODING_AGENT_DIR`});function pft(...e){return new globalThis.Function(...e)}var IRn=C(()=>{});var TRe,IRe,mft,wRn=C(()=>{JM();uY();Fr();Vc();TRe=class extends vi{constructor(t){super(`Duplicate type kind '${t}' detected`)}},IRe=class extends vi{constructor(t){super(`Duplicate string format '${t}' detected`)}};(function(e){function t(r,i){if(wp.Has(r))throw new TRe(r);return wp.Set(r,i),(s={})=>gP({...s,[on]:r})}e.Type=t;function n(r,i){if(Qh.Has(r))throw new IRe(r);return Qh.Set(r,i),r}e.Format=n})(mft||(mft={}))});var e4={};li(e4,{Evaluate:()=>pft,TypeSystem:()=>mft,TypeSystemDuplicateFormat:()=>IRe,TypeSystemDuplicateTypeKind:()=>TRe,TypeSystemPolicy:()=>mc});var rZ=C(()=>{IRn();fie();wRn()});function RRn(e){switch(e.errorType){case an.ArrayContains:return"Expected array to contain at least one matching value";case an.ArrayMaxContains:return`Expected array to contain no more than ${e.schema.maxContains} matching values`;case an.ArrayMinContains:return`Expected array to contain at least ${e.schema.minContains} matching values`;case an.ArrayMaxItems:return`Expected array length to be less or equal to ${e.schema.maxItems}`;case an.ArrayMinItems:return`Expected array length to be greater or equal to ${e.schema.minItems}`;case an.ArrayUniqueItems:return"Expected array elements to be unique";case an.Array:return"Expected array";case an.AsyncIterator:return"Expected AsyncIterator";case an.BigIntExclusiveMaximum:return`Expected bigint to be less than ${e.schema.exclusiveMaximum}`;case an.BigIntExclusiveMinimum:return`Expected bigint to be greater than ${e.schema.exclusiveMinimum}`;case an.BigIntMaximum:return`Expected bigint to be less or equal to ${e.schema.maximum}`;case an.BigIntMinimum:return`Expected bigint to be greater or equal to ${e.schema.minimum}`;case an.BigIntMultipleOf:return`Expected bigint to be a multiple of ${e.schema.multipleOf}`;case an.BigInt:return"Expected bigint";case an.Boolean:return"Expected boolean";case an.DateExclusiveMinimumTimestamp:return`Expected Date timestamp to be greater than ${e.schema.exclusiveMinimumTimestamp}`;case an.DateExclusiveMaximumTimestamp:return`Expected Date timestamp to be less than ${e.schema.exclusiveMaximumTimestamp}`;case an.DateMinimumTimestamp:return`Expected Date timestamp to be greater or equal to ${e.schema.minimumTimestamp}`;case an.DateMaximumTimestamp:return`Expected Date timestamp to be less or equal to ${e.schema.maximumTimestamp}`;case an.DateMultipleOfTimestamp:return`Expected Date timestamp to be a multiple of ${e.schema.multipleOfTimestamp}`;case an.Date:return"Expected Date";case an.Function:return"Expected function";case an.IntegerExclusiveMaximum:return`Expected integer to be less than ${e.schema.exclusiveMaximum}`;case an.IntegerExclusiveMinimum:return`Expected integer to be greater than ${e.schema.exclusiveMinimum}`;case an.IntegerMaximum:return`Expected integer to be less or equal to ${e.schema.maximum}`;case an.IntegerMinimum:return`Expected integer to be greater or equal to ${e.schema.minimum}`;case an.IntegerMultipleOf:return`Expected integer to be a multiple of ${e.schema.multipleOf}`;case an.Integer:return"Expected integer";case an.IntersectUnevaluatedProperties:return"Unexpected property";case an.Intersect:return"Expected all values to match";case an.Iterator:return"Expected Iterator";case an.Literal:return`Expected ${typeof e.schema.const=="string"?`'${e.schema.const}'`:e.schema.const}`;case an.Never:return"Never";case an.Not:return"Value should not match";case an.Null:return"Expected null";case an.NumberExclusiveMaximum:return`Expected number to be less than ${e.schema.exclusiveMaximum}`;case an.NumberExclusiveMinimum:return`Expected number to be greater than ${e.schema.exclusiveMinimum}`;case an.NumberMaximum:return`Expected number to be less or equal to ${e.schema.maximum}`;case an.NumberMinimum:return`Expected number to be greater or equal to ${e.schema.minimum}`;case an.NumberMultipleOf:return`Expected number to be a multiple of ${e.schema.multipleOf}`;case an.Number:return"Expected number";case an.Object:return"Expected object";case an.ObjectAdditionalProperties:return"Unexpected property";case an.ObjectMaxProperties:return`Expected object to have no more than ${e.schema.maxProperties} properties`;case an.ObjectMinProperties:return`Expected object to have at least ${e.schema.minProperties} properties`;case an.ObjectRequiredProperty:return"Expected required property";case an.Promise:return"Expected Promise";case an.RegExp:return"Expected string to match regular expression";case an.StringFormatUnknown:return`Unknown format '${e.schema.format}'`;case an.StringFormat:return`Expected string to match '${e.schema.format}' format`;case an.StringMaxLength:return`Expected string length less or equal to ${e.schema.maxLength}`;case an.StringMinLength:return`Expected string length greater or equal to ${e.schema.minLength}`;case an.StringPattern:return`Expected string to match '${e.schema.pattern}'`;case an.String:return"Expected string";case an.Symbol:return"Expected symbol";case an.TupleLength:return`Expected tuple to have ${e.schema.maxItems||0} elements`;case an.Tuple:return"Expected tuple";case an.Uint8ArrayMaxByteLength:return`Expected byte length less or equal to ${e.schema.maxByteLength}`;case an.Uint8ArrayMinByteLength:return`Expected byte length greater or equal to ${e.schema.minByteLength}`;case an.Uint8Array:return"Expected Uint8Array";case an.Undefined:return"Expected undefined";case an.Union:return"Expected union value";case an.Void:return"Expected void";case an.Kind:return`Expected kind '${e.schema[on]}'`;default:return"Unknown error type"}}function gus(e){NRn=e}function fft(){return NRn}var NRn,hft=C(()=>{Fr();gft();NRn=RRn});function bus(e,t){let n=t.find(r=>r.$id===e.$ref);if(n===void 0)throw new bft(e);return aa(n,t)}function Vm(e,t){return!Lo(e.$id)||t.some(n=>n.$id===e.$id)||t.push(e),t}function aa(e,t){return e[on]==="This"||e[on]==="Ref"?bus(e,t):e}var bft,kRn=C(()=>{Vc();Fr();Qve();bft=class extends vi{constructor(t){super(`Unable to dereference schema with $id '${t.$ref}'`),this.schema=t}}});var nS=C(()=>{kRn()});function*_us(e){let t=e===0?1:Math.ceil(Math.floor(Math.log2(e)+1)/8);for(let n=0;n<t;n++)yield e>>8*(t-1-n)&255}function Sus(e){tg(TA.Array);for(let t of e)sZ(t)}function vus(e){tg(TA.Boolean),tg(e?1:0)}function xus(e){tg(TA.BigInt),MRn.setBigInt64(0,e);for(let t of PRn)tg(t)}function Cus(e){tg(TA.Date),sZ(e.getTime())}function Tus(e){tg(TA.Null)}function Ius(e){tg(TA.Number),MRn.setFloat64(0,e);for(let t of PRn)tg(t)}function wus(e){tg(TA.Object);for(let t of globalThis.Object.getOwnPropertyNames(e).sort())sZ(t),sZ(e[t])}function Rus(e){tg(TA.String);for(let t=0;t<e.length;t++)for(let n of _us(e.charCodeAt(t)))tg(n)}function Nus(e){tg(TA.Symbol),sZ(e.description)}function kus(e){tg(TA.Uint8Array);for(let t=0;t<e.length;t++)tg(e[t])}function Ous(e){return tg(TA.Undefined)}function sZ(e){if(wi(e))return Sus(e);if(hv(e))return vus(e);if(Dm(e))return xus(e);if(Gh(e))return Cus(e);if(rT(e))return Tus(e);if(pi(e))return Ius(e);if(ps(e))return wus(e);if(Lo(e))return Rus(e);if(sT(e))return Nus(e);if(OU(e))return kus(e);if(Nc(e))return Ous(e);throw new wRe(e)}function tg(e){iZ=iZ^Eus[e],iZ=iZ*yus%Aus}function YN(e){return iZ=BigInt("14695981039346656037"),sZ(e),iZ}var wRe,TA,iZ,yus,Aus,Eus,ORn,MRn,PRn,DRn=C(()=>{Ip();Vc();wRe=class extends vi{constructor(t){super("Unable to hash value"),this.value=t}};(function(e){e[e.Undefined=0]="Undefined",e[e.Null=1]="Null",e[e.Boolean=2]="Boolean",e[e.Number=3]="Number",e[e.String=4]="String",e[e.Object=5]="Object",e[e.Array=6]="Array",e[e.Date=7]="Date",e[e.Uint8Array=8]="Uint8Array",e[e.Symbol=9]="Symbol",e[e.BigInt=10]="BigInt"})(TA||(TA={}));iZ=BigInt("14695981039346656037"),[yus,Aus]=[BigInt("1099511628211"),BigInt("18446744073709551616")],Eus=Array.from({length:256}).map((e,t)=>BigInt(t)),ORn=new Float64Array(1),MRn=new DataView(ORn.buffer),PRn=new Uint8Array(ORn.buffer)});var oZ=C(()=>{DRn()});function Mus(e){return e[on]==="Any"||e[on]==="Unknown"}function Fo(e){return e!==void 0}function Pus(e,t,n){return!0}function Dus(e,t,n){return!0}function Bus(e,t,n){if(!wi(n)||Fo(e.minItems)&&!(n.length>=e.minItems)||Fo(e.maxItems)&&!(n.length<=e.maxItems))return!1;for(let s of n)if(!Gm(e.items,t,s))return!1;if(e.uniqueItems===!0&&!(function(){let s=new Set;for(let o of n){let a=YN(o);if(s.has(a))return!1;s.add(a)}return!0})())return!1;if(!(Fo(e.contains)||pi(e.minContains)||pi(e.maxContains)))return!0;let r=Fo(e.contains)?e.contains:Gi(),i=n.reduce((s,o)=>Gm(r,t,o)?s+1:s,0);return!(i===0||pi(e.minContains)&&i<e.minContains||pi(e.maxContains)&&i>e.maxContains)}function Lus(e,t,n){return uie(n)}function Fus(e,t,n){return!(!Dm(n)||Fo(e.exclusiveMaximum)&&!(n<e.exclusiveMaximum)||Fo(e.exclusiveMinimum)&&!(n>e.exclusiveMinimum)||Fo(e.maximum)&&!(n<=e.maximum)||Fo(e.minimum)&&!(n>=e.minimum)||Fo(e.multipleOf)&&n%e.multipleOf!==BigInt(0))}function Uus(e,t,n){return hv(n)}function Vus(e,t,n){return Gm(e.returns,t,n.prototype)}function Gus(e,t,n){return!(!Gh(n)||Fo(e.exclusiveMaximumTimestamp)&&!(n.getTime()<e.exclusiveMaximumTimestamp)||Fo(e.exclusiveMinimumTimestamp)&&!(n.getTime()>e.exclusiveMinimumTimestamp)||Fo(e.maximumTimestamp)&&!(n.getTime()<=e.maximumTimestamp)||Fo(e.minimumTimestamp)&&!(n.getTime()>=e.minimumTimestamp)||Fo(e.multipleOfTimestamp)&&n.getTime()%e.multipleOfTimestamp!==0)}function Wus(e,t,n){return iT(n)}function $us(e,t,n){let r=globalThis.Object.values(e.$defs),i=e.$defs[e.$ref];return Gm(i,[...t,...r],n)}function Qus(e,t,n){return!(!mie(n)||Fo(e.exclusiveMaximum)&&!(n<e.exclusiveMaximum)||Fo(e.exclusiveMinimum)&&!(n>e.exclusiveMinimum)||Fo(e.maximum)&&!(n<=e.maximum)||Fo(e.minimum)&&!(n>=e.minimum)||Fo(e.multipleOf)&&n%e.multipleOf!==0)}function Yus(e,t,n){let r=e.allOf.every(i=>Gm(i,t,n));if(e.unevaluatedProperties===!1){let i=new RegExp(bv(e)),s=Object.getOwnPropertyNames(n).every(o=>i.test(o));return r&&s}else if(Gc(e.unevaluatedProperties)){let i=new RegExp(bv(e)),s=Object.getOwnPropertyNames(n).every(o=>i.test(o)||Gm(e.unevaluatedProperties,t,n[o]));return r&&s}else return r}function Hus(e,t,n){return die(n)}function Zus(e,t,n){return n===e.const}function jus(e,t,n){return!1}function zus(e,t,n){return!Gm(e.not,t,n)}function Xus(e,t,n){return rT(n)}function Kus(e,t,n){return!(!mc.IsNumberLike(n)||Fo(e.exclusiveMaximum)&&!(n<e.exclusiveMaximum)||Fo(e.exclusiveMinimum)&&!(n>e.exclusiveMinimum)||Fo(e.minimum)&&!(n>=e.minimum)||Fo(e.maximum)&&!(n<=e.maximum)||Fo(e.multipleOf)&&n%e.multipleOf!==0)}function qus(e,t,n){if(!mc.IsObjectLike(n)||Fo(e.minProperties)&&!(Object.getOwnPropertyNames(n).length>=e.minProperties)||Fo(e.maxProperties)&&!(Object.getOwnPropertyNames(n).length<=e.maxProperties))return!1;let r=Object.getOwnPropertyNames(e.properties);for(let i of r){let s=e.properties[i];if(e.required&&e.required.includes(i)){if(!Gm(s,t,n[i])||(yv(s)||Mus(s))&&!(i in n))return!1}else if(mc.IsExactOptionalProperty(n,i)&&!Gm(s,t,n[i]))return!1}if(e.additionalProperties===!1){let i=Object.getOwnPropertyNames(n);return e.required&&e.required.length===r.length&&i.length===r.length?!0:i.every(s=>r.includes(s))}else return typeof e.additionalProperties=="object"?Object.getOwnPropertyNames(n).every(s=>r.includes(s)||Gm(e.additionalProperties,t,n[s])):!0}function Jus(e,t,n){return pie(n)}function eds(e,t,n){if(!mc.IsRecordLike(n)||Fo(e.minProperties)&&!(Object.getOwnPropertyNames(n).length>=e.minProperties)||Fo(e.maxProperties)&&!(Object.getOwnPropertyNames(n).length<=e.maxProperties))return!1;let[r,i]=Object.entries(e.patternProperties)[0],s=new RegExp(r),o=Object.entries(n).every(([u,c])=>s.test(u)?Gm(i,t,c):!0),a=typeof e.additionalProperties=="object"?Object.entries(n).every(([u,c])=>s.test(u)?!0:Gm(e.additionalProperties,t,c)):!0,l=e.additionalProperties===!1?Object.getOwnPropertyNames(n).every(u=>s.test(u)):!0;return o&&a&&l}function tds(e,t,n){return Gm(aa(e,t),t,n)}function nds(e,t,n){let r=new RegExp(e.source,e.flags);return Fo(e.minLength)&&!(n.length>=e.minLength)||Fo(e.maxLength)&&!(n.length<=e.maxLength)?!1:r.test(n)}function rds(e,t,n){return!Lo(n)||Fo(e.minLength)&&!(n.length>=e.minLength)||Fo(e.maxLength)&&!(n.length<=e.maxLength)||Fo(e.pattern)&&!new RegExp(e.pattern).test(n)?!1:Fo(e.format)?Qh.Has(e.format)?Qh.Get(e.format)(n):!1:!0}function ids(e,t,n){return sT(n)}function sds(e,t,n){return Lo(n)&&new RegExp(e.pattern).test(n)}function ods(e,t,n){return Gm(aa(e,t),t,n)}function ads(e,t,n){if(!wi(n)||e.items===void 0&&n.length!==0||n.length!==e.maxItems)return!1;if(!e.items)return!0;for(let r=0;r<e.items.length;r++)if(!Gm(e.items[r],t,n[r]))return!1;return!0}function lds(e,t,n){return Nc(n)}function cds(e,t,n){return e.anyOf.some(r=>Gm(r,t,n))}function uds(e,t,n){return!(!OU(n)||Fo(e.maxByteLength)&&!(n.length<=e.maxByteLength)||Fo(e.minByteLength)&&!(n.length>=e.minByteLength))}function dds(e,t,n){return!0}function pds(e,t,n){return mc.IsVoidLike(n)}function mds(e,t,n){return wp.Has(e[on])?wp.Get(e[on])(e,n):!1}function Gm(e,t,n){let r=Fo(e.$id)?Vm(e,t):t,i=e;switch(i[on]){case"Any":return Pus(i,r,n);case"Argument":return Dus(i,r,n);case"Array":return Bus(i,r,n);case"AsyncIterator":return Lus(i,r,n);case"BigInt":return Fus(i,r,n);case"Boolean":return Uus(i,r,n);case"Constructor":return Vus(i,r,n);case"Date":return Gus(i,r,n);case"Function":return Wus(i,r,n);case"Import":return $us(i,r,n);case"Integer":return Qus(i,r,n);case"Intersect":return Yus(i,r,n);case"Iterator":return Hus(i,r,n);case"Literal":return Zus(i,r,n);case"Never":return jus(i,r,n);case"Not":return zus(i,r,n);case"Null":return Xus(i,r,n);case"Number":return Kus(i,r,n);case"Object":return qus(i,r,n);case"Promise":return Jus(i,r,n);case"Record":return eds(i,r,n);case"Ref":return tds(i,r,n);case"RegExp":return nds(i,r,n);case"String":return rds(i,r,n);case"Symbol":return ids(i,r,n);case"TemplateLiteral":return sds(i,r,n);case"This":return ods(i,r,n);case"Tuple":return ads(i,r,n);case"Undefined":return lds(i,r,n);case"Union":return cds(i,r,n);case"Uint8Array":return uds(i,r,n);case"Unknown":return dds(i,r,n);case"Void":return pds(i,r,n);default:if(!wp.Has(i[on]))throw new RRe(i);return mds(i,r,n)}}function Us(...e){return e.length===3?Gm(e[0],e[1],e[2]):Gm(e[0],[],e[1])}var RRe,yft=C(()=>{rZ();nS();oZ();Fr();dA();oP();JM();Vc();fd();Ip();Ks();RRe=class extends vi{constructor(t){super("Unknown type"),this.schema=t}}});var IA=C(()=>{yft()});function HN(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function Uo(e){return e!==void 0}function br(e,t,n,r,i=[]){return{type:e,schema:t,path:n,value:r,message:fft()({errorType:e,path:n,schema:t,value:r,errors:i}),errors:i}}function*fds(e,t,n,r){}function*hds(e,t,n,r){}function*gds(e,t,n,r){if(!wi(r))return yield br(an.Array,e,n,r);Uo(e.minItems)&&!(r.length>=e.minItems)&&(yield br(an.ArrayMinItems,e,n,r)),Uo(e.maxItems)&&!(r.length<=e.maxItems)&&(yield br(an.ArrayMaxItems,e,n,r));for(let o=0;o<r.length;o++)yield*Wm(e.items,t,`${n}/${o}`,r[o]);if(e.uniqueItems===!0&&!(function(){let o=new Set;for(let a of r){let l=YN(a);if(o.has(l))return!1;o.add(l)}return!0})()&&(yield br(an.ArrayUniqueItems,e,n,r)),!(Uo(e.contains)||Uo(e.minContains)||Uo(e.maxContains)))return;let i=Uo(e.contains)?e.contains:Gi(),s=r.reduce((o,a,l)=>Wm(i,t,`${n}${l}`,a).next().done===!0?o+1:o,0);s===0&&(yield br(an.ArrayContains,e,n,r)),pi(e.minContains)&&s<e.minContains&&(yield br(an.ArrayMinContains,e,n,r)),pi(e.maxContains)&&s>e.maxContains&&(yield br(an.ArrayMaxContains,e,n,r))}function*bds(e,t,n,r){uie(r)||(yield br(an.AsyncIterator,e,n,r))}function*yds(e,t,n,r){if(!Dm(r))return yield br(an.BigInt,e,n,r);Uo(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield br(an.BigIntExclusiveMaximum,e,n,r)),Uo(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield br(an.BigIntExclusiveMinimum,e,n,r)),Uo(e.maximum)&&!(r<=e.maximum)&&(yield br(an.BigIntMaximum,e,n,r)),Uo(e.minimum)&&!(r>=e.minimum)&&(yield br(an.BigIntMinimum,e,n,r)),Uo(e.multipleOf)&&r%e.multipleOf!==BigInt(0)&&(yield br(an.BigIntMultipleOf,e,n,r))}function*Ads(e,t,n,r){hv(r)||(yield br(an.Boolean,e,n,r))}function*Eds(e,t,n,r){yield*Wm(e.returns,t,n,r.prototype)}function*_ds(e,t,n,r){if(!Gh(r))return yield br(an.Date,e,n,r);Uo(e.exclusiveMaximumTimestamp)&&!(r.getTime()<e.exclusiveMaximumTimestamp)&&(yield br(an.DateExclusiveMaximumTimestamp,e,n,r)),Uo(e.exclusiveMinimumTimestamp)&&!(r.getTime()>e.exclusiveMinimumTimestamp)&&(yield br(an.DateExclusiveMinimumTimestamp,e,n,r)),Uo(e.maximumTimestamp)&&!(r.getTime()<=e.maximumTimestamp)&&(yield br(an.DateMaximumTimestamp,e,n,r)),Uo(e.minimumTimestamp)&&!(r.getTime()>=e.minimumTimestamp)&&(yield br(an.DateMinimumTimestamp,e,n,r)),Uo(e.multipleOfTimestamp)&&r.getTime()%e.multipleOfTimestamp!==0&&(yield br(an.DateMultipleOfTimestamp,e,n,r))}function*Sds(e,t,n,r){iT(r)||(yield br(an.Function,e,n,r))}function*vds(e,t,n,r){let i=globalThis.Object.values(e.$defs),s=e.$defs[e.$ref];yield*Wm(s,[...t,...i],n,r)}function*xds(e,t,n,r){if(!mie(r))return yield br(an.Integer,e,n,r);Uo(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield br(an.IntegerExclusiveMaximum,e,n,r)),Uo(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield br(an.IntegerExclusiveMinimum,e,n,r)),Uo(e.maximum)&&!(r<=e.maximum)&&(yield br(an.IntegerMaximum,e,n,r)),Uo(e.minimum)&&!(r>=e.minimum)&&(yield br(an.IntegerMinimum,e,n,r)),Uo(e.multipleOf)&&r%e.multipleOf!==0&&(yield br(an.IntegerMultipleOf,e,n,r))}function*Cds(e,t,n,r){let i=!1;for(let s of e.allOf)for(let o of Wm(s,t,n,r))i=!0,yield o;if(i)return yield br(an.Intersect,e,n,r);if(e.unevaluatedProperties===!1){let s=new RegExp(bv(e));for(let o of Object.getOwnPropertyNames(r))s.test(o)||(yield br(an.IntersectUnevaluatedProperties,e,`${n}/${o}`,r))}if(typeof e.unevaluatedProperties=="object"){let s=new RegExp(bv(e));for(let o of Object.getOwnPropertyNames(r))if(!s.test(o)){let a=Wm(e.unevaluatedProperties,t,`${n}/${o}`,r[o]).next();a.done||(yield a.value)}}}function*Tds(e,t,n,r){die(r)||(yield br(an.Iterator,e,n,r))}function*Ids(e,t,n,r){r!==e.const&&(yield br(an.Literal,e,n,r))}function*wds(e,t,n,r){yield br(an.Never,e,n,r)}function*Rds(e,t,n,r){Wm(e.not,t,n,r).next().done===!0&&(yield br(an.Not,e,n,r))}function*Nds(e,t,n,r){rT(r)||(yield br(an.Null,e,n,r))}function*kds(e,t,n,r){if(!mc.IsNumberLike(r))return yield br(an.Number,e,n,r);Uo(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield br(an.NumberExclusiveMaximum,e,n,r)),Uo(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield br(an.NumberExclusiveMinimum,e,n,r)),Uo(e.maximum)&&!(r<=e.maximum)&&(yield br(an.NumberMaximum,e,n,r)),Uo(e.minimum)&&!(r>=e.minimum)&&(yield br(an.NumberMinimum,e,n,r)),Uo(e.multipleOf)&&r%e.multipleOf!==0&&(yield br(an.NumberMultipleOf,e,n,r))}function*Ods(e,t,n,r){if(!mc.IsObjectLike(r))return yield br(an.Object,e,n,r);Uo(e.minProperties)&&!(Object.getOwnPropertyNames(r).length>=e.minProperties)&&(yield br(an.ObjectMinProperties,e,n,r)),Uo(e.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=e.maxProperties)&&(yield br(an.ObjectMaxProperties,e,n,r));let i=Array.isArray(e.required)?e.required:[],s=Object.getOwnPropertyNames(e.properties),o=Object.getOwnPropertyNames(r);for(let a of i)o.includes(a)||(yield br(an.ObjectRequiredProperty,e.properties[a],`${n}/${HN(a)}`,void 0));if(e.additionalProperties===!1)for(let a of o)s.includes(a)||(yield br(an.ObjectAdditionalProperties,e,`${n}/${HN(a)}`,r[a]));if(typeof e.additionalProperties=="object")for(let a of o)s.includes(a)||(yield*Wm(e.additionalProperties,t,`${n}/${HN(a)}`,r[a]));for(let a of s){let l=e.properties[a];e.required&&e.required.includes(a)?(yield*Wm(l,t,`${n}/${HN(a)}`,r[a]),yv(e)&&!(a in r)&&(yield br(an.ObjectRequiredProperty,l,`${n}/${HN(a)}`,void 0))):mc.IsExactOptionalProperty(r,a)&&(yield*Wm(l,t,`${n}/${HN(a)}`,r[a]))}}function*Mds(e,t,n,r){pie(r)||(yield br(an.Promise,e,n,r))}function*Pds(e,t,n,r){if(!mc.IsRecordLike(r))return yield br(an.Object,e,n,r);Uo(e.minProperties)&&!(Object.getOwnPropertyNames(r).length>=e.minProperties)&&(yield br(an.ObjectMinProperties,e,n,r)),Uo(e.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=e.maxProperties)&&(yield br(an.ObjectMaxProperties,e,n,r));let[i,s]=Object.entries(e.patternProperties)[0],o=new RegExp(i);for(let[a,l]of Object.entries(r))o.test(a)&&(yield*Wm(s,t,`${n}/${HN(a)}`,l));if(typeof e.additionalProperties=="object")for(let[a,l]of Object.entries(r))o.test(a)||(yield*Wm(e.additionalProperties,t,`${n}/${HN(a)}`,l));if(e.additionalProperties===!1){for(let[a,l]of Object.entries(r))if(!o.test(a))return yield br(an.ObjectAdditionalProperties,e,`${n}/${HN(a)}`,l)}}function*Dds(e,t,n,r){yield*Wm(aa(e,t),t,n,r)}function*Bds(e,t,n,r){if(!Lo(r))return yield br(an.String,e,n,r);if(Uo(e.minLength)&&!(r.length>=e.minLength)&&(yield br(an.StringMinLength,e,n,r)),Uo(e.maxLength)&&!(r.length<=e.maxLength)&&(yield br(an.StringMaxLength,e,n,r)),!new RegExp(e.source,e.flags).test(r))return yield br(an.RegExp,e,n,r)}function*Lds(e,t,n,r){if(!Lo(r))return yield br(an.String,e,n,r);Uo(e.minLength)&&!(r.length>=e.minLength)&&(yield br(an.StringMinLength,e,n,r)),Uo(e.maxLength)&&!(r.length<=e.maxLength)&&(yield br(an.StringMaxLength,e,n,r)),Lo(e.pattern)&&(new RegExp(e.pattern).test(r)||(yield br(an.StringPattern,e,n,r))),Lo(e.format)&&(Qh.Has(e.format)?Qh.Get(e.format)(r)||(yield br(an.StringFormat,e,n,r)):yield br(an.StringFormatUnknown,e,n,r))}function*Fds(e,t,n,r){sT(r)||(yield br(an.Symbol,e,n,r))}function*Uds(e,t,n,r){if(!Lo(r))return yield br(an.String,e,n,r);new RegExp(e.pattern).test(r)||(yield br(an.StringPattern,e,n,r))}function*Vds(e,t,n,r){yield*Wm(aa(e,t),t,n,r)}function*Gds(e,t,n,r){if(!wi(r))return yield br(an.Tuple,e,n,r);if(e.items===void 0&&r.length!==0)return yield br(an.TupleLength,e,n,r);if(r.length!==e.maxItems)return yield br(an.TupleLength,e,n,r);if(e.items)for(let i=0;i<e.items.length;i++)yield*Wm(e.items[i],t,`${n}/${i}`,r[i])}function*Wds(e,t,n,r){Nc(r)||(yield br(an.Undefined,e,n,r))}function*$ds(e,t,n,r){if(Us(e,t,r))return;let i=e.anyOf.map(s=>new wA(Wm(s,t,n,r)));yield br(an.Union,e,n,r,i)}function*Qds(e,t,n,r){if(!OU(r))return yield br(an.Uint8Array,e,n,r);Uo(e.maxByteLength)&&!(r.length<=e.maxByteLength)&&(yield br(an.Uint8ArrayMaxByteLength,e,n,r)),Uo(e.minByteLength)&&!(r.length>=e.minByteLength)&&(yield br(an.Uint8ArrayMinByteLength,e,n,r))}function*Yds(e,t,n,r){}function*Hds(e,t,n,r){mc.IsVoidLike(r)||(yield br(an.Void,e,n,r))}function*Zds(e,t,n,r){wp.Get(e[on])(e,r)||(yield br(an.Kind,e,n,r))}function*Wm(e,t,n,r){let i=Uo(e.$id)?[...t,e]:t,s=e;switch(s[on]){case"Any":return yield*fds(s,i,n,r);case"Argument":return yield*hds(s,i,n,r);case"Array":return yield*gds(s,i,n,r);case"AsyncIterator":return yield*bds(s,i,n,r);case"BigInt":return yield*yds(s,i,n,r);case"Boolean":return yield*Ads(s,i,n,r);case"Constructor":return yield*Eds(s,i,n,r);case"Date":return yield*_ds(s,i,n,r);case"Function":return yield*Sds(s,i,n,r);case"Import":return yield*vds(s,i,n,r);case"Integer":return yield*xds(s,i,n,r);case"Intersect":return yield*Cds(s,i,n,r);case"Iterator":return yield*Tds(s,i,n,r);case"Literal":return yield*Ids(s,i,n,r);case"Never":return yield*wds(s,i,n,r);case"Not":return yield*Rds(s,i,n,r);case"Null":return yield*Nds(s,i,n,r);case"Number":return yield*kds(s,i,n,r);case"Object":return yield*Ods(s,i,n,r);case"Promise":return yield*Mds(s,i,n,r);case"Record":return yield*Pds(s,i,n,r);case"Ref":return yield*Dds(s,i,n,r);case"RegExp":return yield*Bds(s,i,n,r);case"String":return yield*Lds(s,i,n,r);case"Symbol":return yield*Fds(s,i,n,r);case"TemplateLiteral":return yield*Uds(s,i,n,r);case"This":return yield*Vds(s,i,n,r);case"Tuple":return yield*Gds(s,i,n,r);case"Undefined":return yield*Wds(s,i,n,r);case"Union":return yield*$ds(s,i,n,r);case"Uint8Array":return yield*Qds(s,i,n,r);case"Unknown":return yield*Yds(s,i,n,r);case"Void":return yield*Hds(s,i,n,r);default:if(!wp.Has(s[on]))throw new NRe(e);return yield*Zds(s,i,n,r)}}function Mv(...e){let t=e.length===3?Wm(e[0],e[1],"",e[2]):Wm(e[0],[],"",e[1]);return new wA(t)}var an,NRe,wA,gft=C(()=>{rZ();dA();JM();yxe();hft();Vc();nS();oZ();IA();Fr();fd();Ip();(function(e){e[e.ArrayContains=0]="ArrayContains",e[e.ArrayMaxContains=1]="ArrayMaxContains",e[e.ArrayMaxItems=2]="ArrayMaxItems",e[e.ArrayMinContains=3]="ArrayMinContains",e[e.ArrayMinItems=4]="ArrayMinItems",e[e.ArrayUniqueItems=5]="ArrayUniqueItems",e[e.Array=6]="Array",e[e.AsyncIterator=7]="AsyncIterator",e[e.BigIntExclusiveMaximum=8]="BigIntExclusiveMaximum",e[e.BigIntExclusiveMinimum=9]="BigIntExclusiveMinimum",e[e.BigIntMaximum=10]="BigIntMaximum",e[e.BigIntMinimum=11]="BigIntMinimum",e[e.BigIntMultipleOf=12]="BigIntMultipleOf",e[e.BigInt=13]="BigInt",e[e.Boolean=14]="Boolean",e[e.DateExclusiveMaximumTimestamp=15]="DateExclusiveMaximumTimestamp",e[e.DateExclusiveMinimumTimestamp=16]="DateExclusiveMinimumTimestamp",e[e.DateMaximumTimestamp=17]="DateMaximumTimestamp",e[e.DateMinimumTimestamp=18]="DateMinimumTimestamp",e[e.DateMultipleOfTimestamp=19]="DateMultipleOfTimestamp",e[e.Date=20]="Date",e[e.Function=21]="Function",e[e.IntegerExclusiveMaximum=22]="IntegerExclusiveMaximum",e[e.IntegerExclusiveMinimum=23]="IntegerExclusiveMinimum",e[e.IntegerMaximum=24]="IntegerMaximum",e[e.IntegerMinimum=25]="IntegerMinimum",e[e.IntegerMultipleOf=26]="IntegerMultipleOf",e[e.Integer=27]="Integer",e[e.IntersectUnevaluatedProperties=28]="IntersectUnevaluatedProperties",e[e.Intersect=29]="Intersect",e[e.Iterator=30]="Iterator",e[e.Kind=31]="Kind",e[e.Literal=32]="Literal",e[e.Never=33]="Never",e[e.Not=34]="Not",e[e.Null=35]="Null",e[e.NumberExclusiveMaximum=36]="NumberExclusiveMaximum",e[e.NumberExclusiveMinimum=37]="NumberExclusiveMinimum",e[e.NumberMaximum=38]="NumberMaximum",e[e.NumberMinimum=39]="NumberMinimum",e[e.NumberMultipleOf=40]="NumberMultipleOf",e[e.Number=41]="Number",e[e.ObjectAdditionalProperties=42]="ObjectAdditionalProperties",e[e.ObjectMaxProperties=43]="ObjectMaxProperties",e[e.ObjectMinProperties=44]="ObjectMinProperties",e[e.ObjectRequiredProperty=45]="ObjectRequiredProperty",e[e.Object=46]="Object",e[e.Promise=47]="Promise",e[e.RegExp=48]="RegExp",e[e.StringFormatUnknown=49]="StringFormatUnknown",e[e.StringFormat=50]="StringFormat",e[e.StringMaxLength=51]="StringMaxLength",e[e.StringMinLength=52]="StringMinLength",e[e.StringPattern=53]="StringPattern",e[e.String=54]="String",e[e.Symbol=55]="Symbol",e[e.TupleLength=56]="TupleLength",e[e.Tuple=57]="Tuple",e[e.Uint8ArrayMaxByteLength=58]="Uint8ArrayMaxByteLength",e[e.Uint8ArrayMinByteLength=59]="Uint8ArrayMinByteLength",e[e.Uint8Array=60]="Uint8Array",e[e.Undefined=61]="Undefined",e[e.Union=62]="Union",e[e.Void=63]="Void"})(an||(an={}));NRe=class extends vi{constructor(t){super("Unknown type"),this.schema=t}};wA=class{constructor(t){this.iterator=t}[Symbol.iterator](){return this.iterator}First(){let t=this.iterator.next();return t.done?void 0:t.value}}});var t4={};li(t4,{DefaultErrorFunction:()=>RRn,Errors:()=>Mv,GetErrorFunction:()=>fft,SetErrorFunction:()=>gus,ValueErrorIterator:()=>wA,ValueErrorType:()=>an,ValueErrorsUnknownTypeError:()=>NRe});var QT=C(()=>{gft();hft()});function _u(e,t,n){try{return fa(e)?e[kc].Decode(n):n}catch(r){throw new kRe(e,t,n,r)}}function jds(e,t,n,r){return wi(r)?_u(e,n,r.map((i,s)=>Pv(e.items,t,`${n}/${s}`,i))):_u(e,n,r)}function zds(e,t,n,r){if(!ps(r)||wy(r))return _u(e,n,r);let i=G7(e),s=i.map(c=>c[0]),o={...r};for(let[c,d]of i)c in o&&(o[c]=Pv(d,t,`${n}/${c}`,o[c]));if(!fa(e.unevaluatedProperties))return _u(e,n,o);let a=Object.getOwnPropertyNames(o),l=e.unevaluatedProperties,u={...o};for(let c of a)s.includes(c)||(u[c]=_u(l,`${n}/${c}`,u[c]));return _u(e,n,u)}function Xds(e,t,n,r){let i=globalThis.Object.values(e.$defs),s=e.$defs[e.$ref],o=Pv(s,[...t,...i],n,r);return _u(e,n,o)}function Kds(e,t,n,r){return _u(e,n,Pv(e.not,t,n,r))}function qds(e,t,n,r){if(!ps(r))return _u(e,n,r);let i=jh(e),s={...r};for(let u of i)Vi(s,u)&&(Nc(s[u])&&(!lT(e.properties[u])||mc.IsExactOptionalProperty(s,u))||(s[u]=Pv(e.properties[u],t,`${n}/${u}`,s[u])));if(!Gc(e.additionalProperties))return _u(e,n,s);let o=Object.getOwnPropertyNames(s),a=e.additionalProperties,l={...s};for(let u of o)i.includes(u)||(l[u]=_u(a,`${n}/${u}`,l[u]));return _u(e,n,l)}function Jds(e,t,n,r){if(!ps(r))return _u(e,n,r);let i=Object.getOwnPropertyNames(e.patternProperties)[0],s=new RegExp(i),o={...r};for(let c of Object.getOwnPropertyNames(r))s.test(c)&&(o[c]=Pv(e.patternProperties[i],t,`${n}/${c}`,o[c]));if(!Gc(e.additionalProperties))return _u(e,n,o);let a=Object.getOwnPropertyNames(o),l=e.additionalProperties,u={...o};for(let c of a)s.test(c)||(u[c]=_u(l,`${n}/${c}`,u[c]));return _u(e,n,u)}function eps(e,t,n,r){let i=aa(e,t);return _u(e,n,Pv(i,t,n,r))}function tps(e,t,n,r){let i=aa(e,t);return _u(e,n,Pv(i,t,n,r))}function nps(e,t,n,r){return wi(r)&&wi(e.items)?_u(e,n,e.items.map((i,s)=>Pv(i,t,`${n}/${s}`,r[s]))):_u(e,n,r)}function rps(e,t,n,r){for(let i of e.anyOf){if(!Us(i,t,r))continue;let s=Pv(i,t,n,r);return _u(e,n,s)}return _u(e,n,r)}function Pv(e,t,n,r){let i=Vm(e,t),s=e;switch(e[on]){case"Array":return jds(s,i,n,r);case"Import":return Xds(s,i,n,r);case"Intersect":return zds(s,i,n,r);case"Not":return Kds(s,i,n,r);case"Object":return qds(s,i,n,r);case"Record":return Jds(s,i,n,r);case"Ref":return eps(s,i,n,r);case"Symbol":return _u(s,n,r);case"This":return tps(s,i,n,r);case"Tuple":return nps(s,i,n,r);case"Union":return rps(s,i,n,r);default:return _u(s,n,r)}}function r4(e,t,n){return Pv(e,t,"",n)}var n4,kRe,BRn=C(()=>{fie();Fr();Vc();dA();nS();IA();Ip();Ks();n4=class extends vi{constructor(t,n,r){super("Unable to decode value as it does not match the expected schema"),this.schema=t,this.value=n,this.error=r}},kRe=class extends vi{constructor(t,n,r,i){super(i instanceof Error?i.message:"Unknown error"),this.schema=t,this.path=n,this.value=r,this.error=i}}});function Xf(e,t,n){try{return fa(e)?e[kc].Encode(n):n}catch(r){throw new ORe(e,t,n,r)}}function ips(e,t,n,r){let i=Xf(e,n,r);return wi(i)?i.map((s,o)=>Dv(e.items,t,`${n}/${o}`,s)):i}function sps(e,t,n,r){let i=globalThis.Object.values(e.$defs),s=e.$defs[e.$ref],o=Xf(e,n,r);return Dv(s,[...t,...i],n,o)}function ops(e,t,n,r){let i=Xf(e,n,r);if(!ps(r)||wy(r))return i;let s=G7(e),o=s.map(d=>d[0]),a={...i};for(let[d,p]of s)d in a&&(a[d]=Dv(p,t,`${n}/${d}`,a[d]));if(!fa(e.unevaluatedProperties))return a;let l=Object.getOwnPropertyNames(a),u=e.unevaluatedProperties,c={...a};for(let d of l)o.includes(d)||(c[d]=Xf(u,`${n}/${d}`,c[d]));return c}function aps(e,t,n,r){return Xf(e.not,n,Xf(e,n,r))}function lps(e,t,n,r){let i=Xf(e,n,r);if(!ps(i))return i;let s=jh(e),o={...i};for(let c of s)Vi(o,c)&&(Nc(o[c])&&(!lT(e.properties[c])||mc.IsExactOptionalProperty(o,c))||(o[c]=Dv(e.properties[c],t,`${n}/${c}`,o[c])));if(!Gc(e.additionalProperties))return o;let a=Object.getOwnPropertyNames(o),l=e.additionalProperties,u={...o};for(let c of a)s.includes(c)||(u[c]=Xf(l,`${n}/${c}`,u[c]));return u}function cps(e,t,n,r){let i=Xf(e,n,r);if(!ps(r))return i;let s=Object.getOwnPropertyNames(e.patternProperties)[0],o=new RegExp(s),a={...i};for(let d of Object.getOwnPropertyNames(r))o.test(d)&&(a[d]=Dv(e.patternProperties[s],t,`${n}/${d}`,a[d]));if(!Gc(e.additionalProperties))return a;let l=Object.getOwnPropertyNames(a),u=e.additionalProperties,c={...a};for(let d of l)o.test(d)||(c[d]=Xf(u,`${n}/${d}`,c[d]));return c}function ups(e,t,n,r){let i=aa(e,t),s=Dv(i,t,n,r);return Xf(e,n,s)}function dps(e,t,n,r){let i=aa(e,t),s=Dv(i,t,n,r);return Xf(e,n,s)}function pps(e,t,n,r){let i=Xf(e,n,r);return wi(e.items)?e.items.map((s,o)=>Dv(s,t,`${n}/${o}`,i[o])):[]}function mps(e,t,n,r){for(let i of e.anyOf){if(!Us(i,t,r))continue;let s=Dv(i,t,n,r);return Xf(e,n,s)}for(let i of e.anyOf){let s=Dv(i,t,n,r);if(Us(e,t,s))return Xf(e,n,s)}return Xf(e,n,r)}function Dv(e,t,n,r){let i=Vm(e,t),s=e;switch(e[on]){case"Array":return ips(s,i,n,r);case"Import":return sps(s,i,n,r);case"Intersect":return ops(s,i,n,r);case"Not":return aps(s,i,n,r);case"Object":return lps(s,i,n,r);case"Record":return cps(s,i,n,r);case"Ref":return ups(s,i,n,r);case"This":return dps(s,i,n,r);case"Tuple":return pps(s,i,n,r);case"Union":return mps(s,i,n,r);default:return Xf(s,n,r)}}function s4(e,t,n){return Dv(e,t,"",n)}var i4,ORe,LRn=C(()=>{fie();Fr();Vc();dA();nS();IA();Ip();Ks();i4=class extends vi{constructor(t,n,r){super("The encoded value does not match the expected schema"),this.schema=t,this.value=n,this.error=r}},ORe=class extends vi{constructor(t,n,r,i){super(`${i instanceof Error?i.message:"Unknown error"}`),this.schema=t,this.path=n,this.value=r,this.error=i}}});function fps(e,t){return fa(e)||rm(e.items,t)}function hps(e,t){return fa(e)||rm(e.items,t)}function gps(e,t){return fa(e)||rm(e.returns,t)||e.parameters.some(n=>rm(n,t))}function bps(e,t){return fa(e)||rm(e.returns,t)||e.parameters.some(n=>rm(n,t))}function yps(e,t){return fa(e)||fa(e.unevaluatedProperties)||e.allOf.some(n=>rm(n,t))}function Aps(e,t){let n=globalThis.Object.getOwnPropertyNames(e.$defs).reduce((i,s)=>[...i,e.$defs[s]],[]),r=e.$defs[e.$ref];return fa(e)||rm(r,[...n,...t])}function Eps(e,t){return fa(e)||rm(e.items,t)}function _ps(e,t){return fa(e)||rm(e.not,t)}function Sps(e,t){return fa(e)||Object.values(e.properties).some(n=>rm(n,t))||Gc(e.additionalProperties)&&rm(e.additionalProperties,t)}function vps(e,t){return fa(e)||rm(e.item,t)}function xps(e,t){let n=Object.getOwnPropertyNames(e.patternProperties)[0],r=e.patternProperties[n];return fa(e)||rm(r,t)||Gc(e.additionalProperties)&&fa(e.additionalProperties)}function Cps(e,t){return fa(e)?!0:rm(aa(e,t),t)}function Tps(e,t){return fa(e)?!0:rm(aa(e,t),t)}function Ips(e,t){return fa(e)||!Nc(e.items)&&e.items.some(n=>rm(n,t))}function wps(e,t){return fa(e)||e.anyOf.some(n=>rm(n,t))}function rm(e,t){let n=Vm(e,t),r=e;if(e.$id&&Aft.has(e.$id))return!1;switch(e.$id&&Aft.add(e.$id),e[on]){case"Array":return fps(r,n);case"AsyncIterator":return hps(r,n);case"Constructor":return gps(r,n);case"Function":return bps(r,n);case"Import":return Aps(r,n);case"Intersect":return yps(r,n);case"Iterator":return Eps(r,n);case"Not":return _ps(r,n);case"Object":return Sps(r,n);case"Promise":return vps(r,n);case"Record":return xps(r,n);case"Ref":return Cps(r,n);case"This":return Tps(r,n);case"Tuple":return Ips(r,n);case"Union":return wps(r,n);default:return fa(e)}}function YT(e,t){return Aft.clear(),rm(e,t)}var Aft,FRn=C(()=>{nS();Fr();Ks();Ip();Aft=new Set});var aZ=C(()=>{BRn();LRn();FRn()});function lD(e){if(!Lo(e))throw Error("ConstantString: Not a String");return`'${JSON.stringify(e).slice(1,-1).replace(/'/g,"\\'")}'`}function URn(e,t){return`${e}[${lD(t)}]`}var MRe,PRe,Eft,DRe,Bae,cD,o4,VRn=C(()=>{aZ();QT();rZ();Vc();nS();oZ();Fr();JM();dA();yxe();fd();hT();Ip();Ltt();MRe=class{constructor(t,n,r,i){this.schema=t,this.references=n,this.checkFunc=r,this.code=i,this.hasTransform=YT(t,n)}Code(){return this.code}Schema(){return this.schema}References(){return this.references}Errors(t){return Mv(this.schema,this.references,t)}Check(t){return this.checkFunc(t)}Decode(t){if(!this.checkFunc(t))throw new n4(this.schema,t,this.Errors(t).First());return this.hasTransform?r4(this.schema,this.references,t):t}Encode(t){let n=this.hasTransform?s4(this.schema,this.references,t):t;if(!this.checkFunc(n))throw new i4(this.schema,t,this.Errors(t).First());return n}};(function(e){function t(s){return s===36}e.DollarSign=t;function n(s){return s===95}e.IsUnderscore=n;function r(s){return s>=65&&s<=90||s>=97&&s<=122}e.IsAlpha=r;function i(s){return s>=48&&s<=57}e.IsNumeric=i})(PRe||(PRe={}));(function(e){function t(n){let r=[];for(let i=0;i<n.length;i++){let s=n.charCodeAt(i);PRe.IsNumeric(s)||PRe.IsAlpha(s)?r.push(n.charAt(i)):r.push(`_${s}_`)}return r.join("").replace(/__/g,"_")}e.Encode=t})(Eft||(Eft={}));DRe=class extends vi{constructor(t){super("Unknown type"),this.schema=t}},Bae=class extends vi{constructor(t){super("Preflight validation check failed to guard for the given schema"),this.schema=t}};(function(e){function t(o,a,l){return mc.ExactOptionalPropertyTypes?`(${lD(a)} in ${o} ? ${l} : true)`:`(${URn(o,a)} !== undefined ? ${l} : true)`}e.IsExactOptionalProperty=t;function n(o){return mc.AllowArrayObject?`(typeof ${o} === 'object' && ${o} !== null)`:`(typeof ${o} === 'object' && ${o} !== null && !Array.isArray(${o}))`}e.IsObjectLike=n;function r(o){return mc.AllowArrayObject?`(typeof ${o} === 'object' && ${o} !== null && !(${o} instanceof Date) && !(${o} instanceof Uint8Array))`:`(typeof ${o} === 'object' && ${o} !== null && !Array.isArray(${o}) && !(${o} instanceof Date) && !(${o} instanceof Uint8Array))`}e.IsRecordLike=r;function i(o){return mc.AllowNaN?`typeof ${o} === 'number'`:`Number.isFinite(${o})`}e.IsNumberLike=i;function s(o){return mc.AllowNullVoid?`(${o} === undefined || ${o} === null)`:`${o} === undefined`}e.IsVoidLike=s})(cD||(cD={}));(function(e){function t(te){return te[on]==="Any"||te[on]==="Unknown"}function*n(te,X,$){yield"true"}function*r(te,X,$){yield"true"}function*i(te,X,$){yield`Array.isArray(${$})`;let[se,oe]=[j("value","any"),j("acc","number")];pi(te.maxItems)&&(yield`${$}.length <= ${te.maxItems}`),pi(te.minItems)&&(yield`${$}.length >= ${te.minItems}`);let we=de(te.items,X,"value");if(yield`((array) => { for(const ${se} of array) if(!(${we})) { return false }; return true; })(${$})`,Wc(te.contains)||pi(te.minContains)||pi(te.maxContains)){let Re=Wc(te.contains)?te.contains:Gi(),xe=de(Re,X,"value"),re=pi(te.minContains)?[`(count >= ${te.minContains})`]:[],Oe=pi(te.maxContains)?[`(count <= ${te.maxContains})`]:[],Ze=`const count = value.reduce((${oe}, ${se}) => ${xe} ? acc + 1 : acc, 0)`,Ye=["(count > 0)",...re,...Oe].join(" && ");yield`((${se}) => { ${Ze}; return ${Ye}})(${$})`}te.uniqueItems===!0&&(yield`((${se}) => { const set = new Set(); for(const element of value) { const hashed = hash(element); if(set.has(hashed)) { return false } else { set.add(hashed) } } return true } )(${$})`)}function*s(te,X,$){yield`(typeof value === 'object' && Symbol.asyncIterator in ${$})`}function*o(te,X,$){yield`(typeof ${$} === 'bigint')`,Dm(te.exclusiveMaximum)&&(yield`${$} < BigInt(${te.exclusiveMaximum})`),Dm(te.exclusiveMinimum)&&(yield`${$} > BigInt(${te.exclusiveMinimum})`),Dm(te.maximum)&&(yield`${$} <= BigInt(${te.maximum})`),Dm(te.minimum)&&(yield`${$} >= BigInt(${te.minimum})`),Dm(te.multipleOf)&&(yield`(${$} % BigInt(${te.multipleOf})) === 0`)}function*a(te,X,$){yield`(typeof ${$} === 'boolean')`}function*l(te,X,$){yield*ie(te.returns,X,`${$}.prototype`)}function*u(te,X,$){yield`(${$} instanceof Date) && Number.isFinite(${$}.getTime())`,pi(te.exclusiveMaximumTimestamp)&&(yield`${$}.getTime() < ${te.exclusiveMaximumTimestamp}`),pi(te.exclusiveMinimumTimestamp)&&(yield`${$}.getTime() > ${te.exclusiveMinimumTimestamp}`),pi(te.maximumTimestamp)&&(yield`${$}.getTime() <= ${te.maximumTimestamp}`),pi(te.minimumTimestamp)&&(yield`${$}.getTime() >= ${te.minimumTimestamp}`),pi(te.multipleOfTimestamp)&&(yield`(${$}.getTime() % ${te.multipleOfTimestamp}) === 0`)}function*c(te,X,$){yield`(typeof ${$} === 'function')`}function*d(te,X,$){let se=globalThis.Object.getOwnPropertyNames(te.$defs).reduce((oe,we)=>[...oe,te.$defs[we]],[]);yield*ie(Fm(te.$ref),[...X,...se],$)}function*p(te,X,$){yield`Number.isInteger(${$})`,pi(te.exclusiveMaximum)&&(yield`${$} < ${te.exclusiveMaximum}`),pi(te.exclusiveMinimum)&&(yield`${$} > ${te.exclusiveMinimum}`),pi(te.maximum)&&(yield`${$} <= ${te.maximum}`),pi(te.minimum)&&(yield`${$} >= ${te.minimum}`),pi(te.multipleOf)&&(yield`(${$} % ${te.multipleOf}) === 0`)}function*m(te,X,$){let se=te.allOf.map(oe=>de(oe,X,$)).join(" && ");if(te.unevaluatedProperties===!1){let oe=W(`${new RegExp(bv(te))};`),we=`Object.getOwnPropertyNames(${$}).every(key => ${oe}.test(key))`;yield`(${se} && ${we})`}else if(Wc(te.unevaluatedProperties)){let oe=W(`${new RegExp(bv(te))};`),we=`Object.getOwnPropertyNames(${$}).every(key => ${oe}.test(key) || ${de(te.unevaluatedProperties,X,`${$}[key]`)})`;yield`(${se} && ${we})`}else yield`(${se})`}function*f(te,X,$){yield`(typeof value === 'object' && Symbol.iterator in ${$})`}function*h(te,X,$){if(typeof te.const=="number"||typeof te.const=="boolean")yield`(${$} === ${te.const})`;else if(typeof te.const=="string")yield`(${$} === ${lD(te.const)})`;else throw Error("Invalid Literal Value")}function*g(te,X,$){yield"false"}function*b(te,X,$){yield`(!${de(te.not,X,$)})`}function*A(te,X,$){yield`(${$} === null)`}function*y(te,X,$){yield cD.IsNumberLike($),pi(te.exclusiveMaximum)&&(yield`${$} < ${te.exclusiveMaximum}`),pi(te.exclusiveMinimum)&&(yield`${$} > ${te.exclusiveMinimum}`),pi(te.maximum)&&(yield`${$} <= ${te.maximum}`),pi(te.minimum)&&(yield`${$} >= ${te.minimum}`),pi(te.multipleOf)&&(yield`(${$} % ${te.multipleOf}) === 0`)}function*S(te,X,$){yield cD.IsObjectLike($),pi(te.minProperties)&&(yield`Object.getOwnPropertyNames(${$}).length >= ${te.minProperties}`),pi(te.maxProperties)&&(yield`Object.getOwnPropertyNames(${$}).length <= ${te.maxProperties}`);let se=Object.getOwnPropertyNames(te.properties);for(let oe of se){let we=URn($,oe),Re=te.properties[oe];if(te.required&&te.required.includes(oe))yield*ie(Re,X,we),(yv(Re)||t(Re))&&(yield`(${lD(oe)} in ${$})`);else{let xe=de(Re,X,we);yield cD.IsExactOptionalProperty($,oe,xe)}}if(te.additionalProperties===!1)if(te.required&&te.required.length===se.length)yield`Object.getOwnPropertyNames(${$}).length === ${se.length}`;else{let oe=`[${se.map(we=>`${lD(we)}`).join(", ")}]`;yield`Object.getOwnPropertyNames(${$}).every(key => ${oe}.includes(key))`}if(typeof te.additionalProperties=="object"){let oe=de(te.additionalProperties,X,`${$}[key]`),we=`[${se.map(Re=>`${lD(Re)}`).join(", ")}]`;yield`(Object.getOwnPropertyNames(${$}).every(key => ${we}.includes(key) || ${oe}))`}}function*_(te,X,$){yield`${$} instanceof Promise`}function*x(te,X,$){yield cD.IsRecordLike($),pi(te.minProperties)&&(yield`Object.getOwnPropertyNames(${$}).length >= ${te.minProperties}`),pi(te.maxProperties)&&(yield`Object.getOwnPropertyNames(${$}).length <= ${te.maxProperties}`);let[se,oe]=Object.entries(te.patternProperties)[0],we=W(`${new RegExp(se)}`),Re=de(oe,X,"value"),xe=Wc(te.additionalProperties)?de(te.additionalProperties,X,$):te.additionalProperties===!1?"false":"true",re=`(${we}.test(key) ? ${Re} : ${xe})`;yield`(Object.entries(${$}).every(([key, value]) => ${re}))`}function*v(te,X,$){let se=aa(te,X);if(ne.functions.has(te.$ref))return yield`${ce(te.$ref)}(${$})`;yield*ie(se,X,$)}function*w(te,X,$){let se=W(`${new RegExp(te.source,te.flags)};`);yield`(typeof ${$} === 'string')`,pi(te.maxLength)&&(yield`${$}.length <= ${te.maxLength}`),pi(te.minLength)&&(yield`${$}.length >= ${te.minLength}`),yield`${se}.test(${$})`}function*T(te,X,$){yield`(typeof ${$} === 'string')`,pi(te.maxLength)&&(yield`${$}.length <= ${te.maxLength}`),pi(te.minLength)&&(yield`${$}.length >= ${te.minLength}`),te.pattern!==void 0&&(yield`${W(`${new RegExp(te.pattern)};`)}.test(${$})`),te.format!==void 0&&(yield`format(${lD(te.format)}, ${$})`)}function*D(te,X,$){yield`(typeof ${$} === 'symbol')`}function*M(te,X,$){yield`(typeof ${$} === 'string')`,yield`${W(`${new RegExp(te.pattern)};`)}.test(${$})`}function*P(te,X,$){yield`${ce(te.$ref)}(${$})`}function*O(te,X,$){if(yield`Array.isArray(${$})`,te.items===void 0)return yield`${$}.length === 0`;yield`(${$}.length === ${te.maxItems})`;for(let se=0;se<te.items.length;se++)yield`${de(te.items[se],X,`${$}[${se}]`)}`}function*k(te,X,$){yield`${$} === undefined`}function*L(te,X,$){yield`(${te.anyOf.map(oe=>de(oe,X,$)).join(" || ")})`}function*F(te,X,$){yield`${$} instanceof Uint8Array`,pi(te.maxByteLength)&&(yield`(${$}.length <= ${te.maxByteLength})`),pi(te.minByteLength)&&(yield`(${$}.length >= ${te.minByteLength})`)}function*Q(te,X,$){yield"true"}function*U(te,X,$){yield cD.IsVoidLike($)}function*J(te,X,$){let se=ne.instances.size;ne.instances.set(se,te),yield`kind(${lD(te[on])}, ${se}, ${$})`}function*ie(te,X,$,se=!0){let oe=Lo(te.$id)?[...X,te]:X,we=te;if(se&&Lo(te.$id)){let Re=ce(te.$id);if(ne.functions.has(Re))return yield`${Re}(${$})`;{ne.functions.set(Re,"<deferred>");let xe=Y(Re,te,X,"value",!1);return ne.functions.set(Re,xe),yield`${Re}(${$})`}}switch(we[on]){case"Any":return yield*n(we,oe,$);case"Argument":return yield*r(we,oe,$);case"Array":return yield*i(we,oe,$);case"AsyncIterator":return yield*s(we,oe,$);case"BigInt":return yield*o(we,oe,$);case"Boolean":return yield*a(we,oe,$);case"Constructor":return yield*l(we,oe,$);case"Date":return yield*u(we,oe,$);case"Function":return yield*c(we,oe,$);case"Import":return yield*d(we,oe,$);case"Integer":return yield*p(we,oe,$);case"Intersect":return yield*m(we,oe,$);case"Iterator":return yield*f(we,oe,$);case"Literal":return yield*h(we,oe,$);case"Never":return yield*g(we,oe,$);case"Not":return yield*b(we,oe,$);case"Null":return yield*A(we,oe,$);case"Number":return yield*y(we,oe,$);case"Object":return yield*S(we,oe,$);case"Promise":return yield*_(we,oe,$);case"Record":return yield*x(we,oe,$);case"Ref":return yield*v(we,oe,$);case"RegExp":return yield*w(we,oe,$);case"String":return yield*T(we,oe,$);case"Symbol":return yield*D(we,oe,$);case"TemplateLiteral":return yield*M(we,oe,$);case"This":return yield*P(we,oe,$);case"Tuple":return yield*O(we,oe,$);case"Undefined":return yield*k(we,oe,$);case"Union":return yield*L(we,oe,$);case"Uint8Array":return yield*F(we,oe,$);case"Unknown":return yield*Q(we,oe,$);case"Void":return yield*U(we,oe,$);default:if(!wp.Has(we[on]))throw new DRe(te);return yield*J(we,oe,$)}}let ne={language:"javascript",functions:new Map,variables:new Map,instances:new Map};function de(te,X,$,se=!0){return`(${[...ie(te,X,$,se)].join(" && ")})`}function ce(te){return`check_${Eft.Encode(te)}`}function W(te){let X=`local_${ne.variables.size}`;return ne.variables.set(X,`const ${X} = ${te}`),X}function Y(te,X,$,se,oe=!0){let[we,Re]=[`
|
|
295
|
+
Offending fields: ${e.join(", ")}. Re-emit the call with corrected values for those fields only.`}function cus(e,t){if(t.params?.missingProperty!==void 0||t.params?.additionalProperty!==void 0||!t.instancePath)return"";let n=uus(e,t.instancePath);if(n===void 0)return"";if(typeof n=="string")return` (current value: ${n.length>_Re?JSON.stringify(`${n.slice(0,_Re)}\u2026`):JSON.stringify(n)})`;let r;try{r=JSON.stringify(n)}catch{return""}return r===void 0?"":` (current value: ${r.length>_Re?`${r.slice(0,_Re)}\u2026`:r})`}function uus(e,t){if(t===""||t==="/")return e;let n=t.split("/").slice(1),r=e;for(let i of n){let s=i.replace(/~1/g,"/").replace(/~0/g,"~");if(r==null)return;if(Array.isArray(r)){let o=Number(s);if(!Number.isInteger(o)||o<0)return;r=r[o];continue}if(typeof r!="object")return;r=r[s]}return r}var sft,oft,aft,eus,tus,uRn,nus,dRn,rus,ius,SRe,lft,_Re,fRn=C(()=>{"use strict";sft=_n(KH(),1),oft=_n(Kwn(),1),aft=_n(ift(),1),eus=sft.default.default||sft.default,tus=oft.default.default||oft.default,uRn=aft.default.default||aft.default,nus=typeof globalThis<"u"&&globalThis.chrome?.runtime?.id!==void 0;dRn={allErrors:!0,strict:!1,coerceTypes:!0},rus=/^https?:\/\/json-schema\.org\/draft-07\/schema#?$/,ius=/^https?:\/\/json-schema\.org\/draft\/2020-12\/schema#?$/;SRe=null,lft=null;if(mRn())try{let e=new eus(dRn);uRn(e);let t=new tus(dRn);uRn(t),pRn(e,"http://json-schema.org/draft-07/schema#","https://json-schema.org/draft-07/schema"),pRn(t,"https://json-schema.org/draft/2020-12/schema","http://json-schema.org/draft/2020-12/schema"),SRe=e,lft=t}catch{console.warn("AJV validation disabled due to CSP restrictions")}_Re=200});var J3={};li(J3,{AssistantMessageEventStream:()=>UN,EventStream:()=>XP,LEGACY_THINKING_LEVELS:()=>Iwe,StringEnum:()=>Fwe,Type:()=>ee,appendAssistantMessageDiagnostic:()=>Edt,calculateCost:()=>wts,calculateDetailedContextUsedTokens:()=>BT,cleanupSessionResources:()=>Tns,clearApiProviders:()=>mdt,complete:()=>Ldt,completeSimple:()=>tb,createAssistantMessageDiagnostic:()=>Bts,createAssistantMessageEventStream:()=>Gts,createAugmentTransportErrorDiagnostic:()=>Sdt,discoverAugmentModels:()=>V3,extractDiagnosticError:()=>pCn,findAugmentTransportErrorContext:()=>Tv,findEnvKeys:()=>sCn,formatThrownValue:()=>dCn,formatUnsupportedReasoningEffort:()=>nm,getApiProvider:()=>F3,getApiProviders:()=>yts,getEnvApiKey:()=>DT,getModel:()=>Its,getModels:()=>Koe,getOrCreateAugmentClient:()=>rl,getOverflowPatterns:()=>Dns,getProviders:()=>Xoe,isContextOverflow:()=>GN,isContextOverflowErrorText:()=>MH,isDetailedContextUsage:()=>SA,isLegacyThinkingLevel:()=>vA,isModelUnavailableErrorText:()=>eae,modelsAreEqual:()=>sa,normalizeReasoningEfforts:()=>Nwe,parseAugmentTransportErrorDiagnostic:()=>fCn,parseJsonWithRepair:()=>XCn,parseStreamingJson:()=>Gdt,reasoningSelectionLabel:()=>xA,reasoningSelections:()=>eb,registerApiProvider:()=>L3,registerBuiltInApiProviders:()=>Pdt,registerSessionResourceCleanup:()=>Cns,repairJson:()=>Vdt,resetApiProviders:()=>VN,resolveReasoningCapabilities:()=>Xu,resolveReasoningSelection:()=>Ls,sanitizeAugmentTransportErrorContext:()=>qoe,stream:()=>HCn,streamAugment:()=>OH,streamSimple:()=>LT,streamSimpleAugment:()=>$Cn,supportsXhigh:()=>lCn,toProviderStopReason:()=>ydt,unregisterApiProviders:()=>Ats,validateToolArguments:()=>vRe,validateToolCall:()=>ous});var Bi=C(()=>{"use strict";cs();xwe();bdt();Adt();Mdt();Ddt();QCn();ZCn();wwe();vdt();Mwe();KCn();JCn();eTn();fRn()});var aD,cft=C(()=>{aD={name:"@augmentcode/auggie-v2",version:"1.2.0",description:"Auggie CLI Client by Augment Code",type:"module",piConfig:{name:"auggie",configDir:".augment"},bin:{auggie:"dist/cli.js","auggie-v2":"dist/cli.js",pi:"dist/cli.js"},main:"./dist/index.js",types:"./dist/index.d.ts",exports:{".":{source:"./src/index.ts",types:"./dist/index.d.ts",import:"./dist/index.js"},"./hooks":{types:"./dist/core/hooks/index.d.ts",import:"./dist/core/hooks/index.js"}},files:["dist","docs","examples","CHANGELOG.md"],scripts:{"check-types":"pnpm run bake:export-html && tsgo -p tsconfig.build.json",clean:"shx rm -rf dist",banners:"tsx --conditions=source scripts/print-banners.ts","cli:source":"tsx --conditions=source src/cli.ts",dev:"pnpm run bake:export-html && pnpm run cli:source","dev:debug":"pnpm run bake:export-html && node --conditions=source --inspect-wait=ws://localhost:6499/57uz7t2uyri --import tsx src/cli.ts","bake:export-html":"node scripts/bake-export-html.mjs",build:"pnpm run bake:export-html && tsgo -p tsconfig.build.json --noCheck && shx chmod +x dist/cli.js && shx cp src/runtime/register-extensions.js dist/runtime/register-extensions.js && shx cp src/runtime/cloud-bridge.js dist/runtime/cloud-bridge.js && shx cp src/runtime/cloud-tracer-bridge.js dist/runtime/cloud-tracer-bridge.js && shx cp src/runtime/cloud-error-bridge.js dist/runtime/cloud-error-bridge.js && shx cp src/runtime/mcp-error-bridge.js dist/runtime/mcp-error-bridge.js && pnpm run copy-assets","build:npm:release":"node scripts/build-npm-release.mjs","build:migration-engine":"node scripts/build-migration-engine.mjs","build:release:sea":"node scripts/build-sea-release.mjs","build:release:sea:from-onison":"node scripts/build-sea-from-onison.mjs","build:release-js":"pnpm run bake:export-html && tsgo -p tsconfig.release.json --noCheck && shx chmod +x dist/cli.js && shx cp src/runtime/register-extensions.js dist/runtime/register-extensions.js && shx cp src/runtime/cloud-bridge.js dist/runtime/cloud-bridge.js && shx cp src/runtime/cloud-tracer-bridge.js dist/runtime/cloud-tracer-bridge.js && shx cp src/runtime/cloud-error-bridge.js dist/runtime/cloud-error-bridge.js && shx cp src/runtime/mcp-error-bridge.js dist/runtime/mcp-error-bridge.js && pnpm run copy-assets","build:npm":"pnpm run build:npm:release","clean:npm-artifacts":"find dist -name '*.js' -not -path 'dist/cli.js' -not -path 'dist/index.js' -not -path 'dist/release/*' -not -path 'dist/core/export-html/*' -delete && find dist -name '*.js.map' -delete","copy-assets":"shx mkdir -p dist/modes/interactive/theme && shx cp src/modes/interactive/theme/*.json dist/modes/interactive/theme/",test:"pnpm run bake:export-html && vitest --run","test:acp:e2e":"pnpm run bake:export-html && vitest --run --config vitest.e2e.config.ts e2e-test/acp/","test:e2e:sanity":"pnpm run bake:export-html && vitest --run --config vitest.e2e.config.ts e2e-test/tui/sanity.test.ts","test:e2e:tui":"pnpm run bake:export-html && vitest --run --no-file-parallelism --config vitest.e2e.config.ts e2e-test/tui/","test:e2e:cli":"pnpm run bake:export-html && vitest --run --no-file-parallelism --config vitest.e2e.config.ts e2e-test/cli/",prepublishOnly:"pnpm run clean && pnpm run build"},dependencies:{"@agentclientprotocol/sdk":"1.4.0","@augmentcode/api-client":"workspace:*","@earendil-works/pi-agent-core":"workspace:*","@earendil-works/pi-ai":"workspace:*","@earendil-works/pi-indexing":"workspace:*","@earendil-works/pi-tui":"workspace:*","@hermes/ask-user":"workspace:*","@hermes/augment-legacy-tools":"workspace:*","@hermes/cloud":"workspace:*","@hermes/context-usage":"workspace:*","@hermes/import-sessions":"workspace:*","@hermes/cosmos":"workspace:*","@hermes/daemon":"workspace:*","@hermes/git-credentials":"workspace:*","@hermes/hashline-edit":"workspace:*","@hermes/hooks":"workspace:*","@hermes/logger":"workspace:*","@hermes/lsp":"workspace:*","@hermes/mcp":"workspace:*","@hermes/migration":"workspace:*","@hermes/open-browser":"workspace:*","@hermes/otel":"workspace:*","@hermes/path-utils":"workspace:*","@hermes/plugins":"workspace:*","@hermes/prompt-enhancer":"workspace:*","@hermes/segment-analytics":"workspace:*","@hermes/sentry":"workspace:*","@hermes/settings":"workspace:*","@hermes/shared-types":"workspace:*","@hermes/subagents":"workspace:*","@hermes/tool-permissions":"workspace:*","@mariozechner/jiti":"^2.6.2","@sentry/node":"^10.53.1","@silvia-odwyer/photon-node":"^0.3.4","@sinclair/typebox":"^0.34.41",ajv:"^8.17.1",chalk:"^5.5.0","cli-highlight":"^2.1.11",diff:"^8.0.2","extract-zip":"^2.0.1",fdir:"^6.5.0","file-type":"^21.1.1",glob:"^13.0.1","hosted-git-info":"^9.0.2",ignore:"^7.0.5",jimp:"^1.6.1","jsonc-parser":"3.3.1",marked:"^15.0.12",minimatch:"^10.2.3","proper-lockfile":"^4.1.2","strip-ansi":"^7.1.0",turndown:"^7.2.4",undici:"^7.19.1",yaml:"^2.8.2",zod:"^4.4.3"},overrides:{rimraf:"6.1.2",gaxios:{rimraf:"6.1.2"}},optionalDependencies:{"@mariozechner/clipboard":"^0.3.2"},devDependencies:{"@tintinweb/pi-subagents":"workspace:*","@types/diff":"^7.0.2","@types/hosted-git-info":"^3.0.5","@types/ms":"^2.1.0","@types/node":"^24.3.0","@types/proper-lockfile":"^4.1.4","@types/turndown":"^5.0.5",level:"^10.0.0",shx:"^0.4.0",tsx:"^4.21.0",typescript:"^5.7.3",vitest:"^3.2.4"},keywords:["coding-agent","ai","llm","cli","tui","agent"],author:"Mario Zechner",license:"MIT",repository:{type:"git",url:"git+https://github.com/badlogic/pi-mono.git",directory:"packages/coding-agent"},engines:{node:">=20.6.0"}}});import{existsSync as pus}from"node:fs";import{homedir as Oae}from"node:os";import{dirname as uft,join as Ov,resolve as gRn}from"node:path";import{fileURLToPath as mus}from"node:url";function bRn(){let e=process.env.PI_PACKAGE_DIR;if(e)return e==="~"?Oae():e.startsWith("~/")?Oae()+e.slice(1):e;let t=hRn;for(;t!==uft(t);){if(pus(Ov(t,"package.json")))return t;t=uft(t)}return hRn}function xRe(){return gRn(Ov(bRn(),"docs"))}function CRe(){return gRn(Ov(bRn(),"CHANGELOG.md"))}function _Rn(e){return e==="~"?Oae():e.startsWith("~/")?Oae()+e.slice(1):e}function $T(){let e=process.env.AUGMENT_CACHE_DIR;return e?_Rn(e):Ov(Oae(),".augment")}function Dr(){let e=process.env[dft];return e?_Rn(e):$T()}function Dae(){return Ov(Dr(),"themes")}function SRn(){return Ov(Dr(),"models.json")}function vRn(){return Ov(Dr(),"auth.json")}function xRn(){return Ov(Dr(),"settings.json")}function CA(){return $T()}function nZ(){return Ov(Dr(),"bin")}function CRn(){return Ov(Dr(),Mae)}function TRn(){return Ov(Dr(),`${Jr}-debug.log`)}var fus,hRn,Jr,Ns,Mae,Pae,yRn,hus,hs,ARn,ERn,dft,Fs=C(()=>{"use strict";cft();fus=mus(import.meta.url),hRn=uft(fus);Jr=aD.piConfig?.name||"auggie",Ns=aD.piConfig?.configDir||".augment",Mae="sessions-v2",Pae=Jr,yRn="Auggie Coding Agent",hus="1.2.0-prerelease.202611030911",hs=hus??aD.version,ARn="4f74133a7a889d255901aad04cd02f7d617e3846",ERn="2026-11-03T17:11:24Z",dft=`${Jr.toUpperCase()}_CODING_AGENT_DIR`});function pft(...e){return new globalThis.Function(...e)}var IRn=C(()=>{});var TRe,IRe,mft,wRn=C(()=>{JM();uY();Fr();Vc();TRe=class extends vi{constructor(t){super(`Duplicate type kind '${t}' detected`)}},IRe=class extends vi{constructor(t){super(`Duplicate string format '${t}' detected`)}};(function(e){function t(r,i){if(wp.Has(r))throw new TRe(r);return wp.Set(r,i),(s={})=>gP({...s,[on]:r})}e.Type=t;function n(r,i){if(Qh.Has(r))throw new IRe(r);return Qh.Set(r,i),r}e.Format=n})(mft||(mft={}))});var e4={};li(e4,{Evaluate:()=>pft,TypeSystem:()=>mft,TypeSystemDuplicateFormat:()=>IRe,TypeSystemDuplicateTypeKind:()=>TRe,TypeSystemPolicy:()=>mc});var rZ=C(()=>{IRn();fie();wRn()});function RRn(e){switch(e.errorType){case an.ArrayContains:return"Expected array to contain at least one matching value";case an.ArrayMaxContains:return`Expected array to contain no more than ${e.schema.maxContains} matching values`;case an.ArrayMinContains:return`Expected array to contain at least ${e.schema.minContains} matching values`;case an.ArrayMaxItems:return`Expected array length to be less or equal to ${e.schema.maxItems}`;case an.ArrayMinItems:return`Expected array length to be greater or equal to ${e.schema.minItems}`;case an.ArrayUniqueItems:return"Expected array elements to be unique";case an.Array:return"Expected array";case an.AsyncIterator:return"Expected AsyncIterator";case an.BigIntExclusiveMaximum:return`Expected bigint to be less than ${e.schema.exclusiveMaximum}`;case an.BigIntExclusiveMinimum:return`Expected bigint to be greater than ${e.schema.exclusiveMinimum}`;case an.BigIntMaximum:return`Expected bigint to be less or equal to ${e.schema.maximum}`;case an.BigIntMinimum:return`Expected bigint to be greater or equal to ${e.schema.minimum}`;case an.BigIntMultipleOf:return`Expected bigint to be a multiple of ${e.schema.multipleOf}`;case an.BigInt:return"Expected bigint";case an.Boolean:return"Expected boolean";case an.DateExclusiveMinimumTimestamp:return`Expected Date timestamp to be greater than ${e.schema.exclusiveMinimumTimestamp}`;case an.DateExclusiveMaximumTimestamp:return`Expected Date timestamp to be less than ${e.schema.exclusiveMaximumTimestamp}`;case an.DateMinimumTimestamp:return`Expected Date timestamp to be greater or equal to ${e.schema.minimumTimestamp}`;case an.DateMaximumTimestamp:return`Expected Date timestamp to be less or equal to ${e.schema.maximumTimestamp}`;case an.DateMultipleOfTimestamp:return`Expected Date timestamp to be a multiple of ${e.schema.multipleOfTimestamp}`;case an.Date:return"Expected Date";case an.Function:return"Expected function";case an.IntegerExclusiveMaximum:return`Expected integer to be less than ${e.schema.exclusiveMaximum}`;case an.IntegerExclusiveMinimum:return`Expected integer to be greater than ${e.schema.exclusiveMinimum}`;case an.IntegerMaximum:return`Expected integer to be less or equal to ${e.schema.maximum}`;case an.IntegerMinimum:return`Expected integer to be greater or equal to ${e.schema.minimum}`;case an.IntegerMultipleOf:return`Expected integer to be a multiple of ${e.schema.multipleOf}`;case an.Integer:return"Expected integer";case an.IntersectUnevaluatedProperties:return"Unexpected property";case an.Intersect:return"Expected all values to match";case an.Iterator:return"Expected Iterator";case an.Literal:return`Expected ${typeof e.schema.const=="string"?`'${e.schema.const}'`:e.schema.const}`;case an.Never:return"Never";case an.Not:return"Value should not match";case an.Null:return"Expected null";case an.NumberExclusiveMaximum:return`Expected number to be less than ${e.schema.exclusiveMaximum}`;case an.NumberExclusiveMinimum:return`Expected number to be greater than ${e.schema.exclusiveMinimum}`;case an.NumberMaximum:return`Expected number to be less or equal to ${e.schema.maximum}`;case an.NumberMinimum:return`Expected number to be greater or equal to ${e.schema.minimum}`;case an.NumberMultipleOf:return`Expected number to be a multiple of ${e.schema.multipleOf}`;case an.Number:return"Expected number";case an.Object:return"Expected object";case an.ObjectAdditionalProperties:return"Unexpected property";case an.ObjectMaxProperties:return`Expected object to have no more than ${e.schema.maxProperties} properties`;case an.ObjectMinProperties:return`Expected object to have at least ${e.schema.minProperties} properties`;case an.ObjectRequiredProperty:return"Expected required property";case an.Promise:return"Expected Promise";case an.RegExp:return"Expected string to match regular expression";case an.StringFormatUnknown:return`Unknown format '${e.schema.format}'`;case an.StringFormat:return`Expected string to match '${e.schema.format}' format`;case an.StringMaxLength:return`Expected string length less or equal to ${e.schema.maxLength}`;case an.StringMinLength:return`Expected string length greater or equal to ${e.schema.minLength}`;case an.StringPattern:return`Expected string to match '${e.schema.pattern}'`;case an.String:return"Expected string";case an.Symbol:return"Expected symbol";case an.TupleLength:return`Expected tuple to have ${e.schema.maxItems||0} elements`;case an.Tuple:return"Expected tuple";case an.Uint8ArrayMaxByteLength:return`Expected byte length less or equal to ${e.schema.maxByteLength}`;case an.Uint8ArrayMinByteLength:return`Expected byte length greater or equal to ${e.schema.minByteLength}`;case an.Uint8Array:return"Expected Uint8Array";case an.Undefined:return"Expected undefined";case an.Union:return"Expected union value";case an.Void:return"Expected void";case an.Kind:return`Expected kind '${e.schema[on]}'`;default:return"Unknown error type"}}function gus(e){NRn=e}function fft(){return NRn}var NRn,hft=C(()=>{Fr();gft();NRn=RRn});function bus(e,t){let n=t.find(r=>r.$id===e.$ref);if(n===void 0)throw new bft(e);return aa(n,t)}function Vm(e,t){return!Lo(e.$id)||t.some(n=>n.$id===e.$id)||t.push(e),t}function aa(e,t){return e[on]==="This"||e[on]==="Ref"?bus(e,t):e}var bft,kRn=C(()=>{Vc();Fr();Qve();bft=class extends vi{constructor(t){super(`Unable to dereference schema with $id '${t.$ref}'`),this.schema=t}}});var nS=C(()=>{kRn()});function*_us(e){let t=e===0?1:Math.ceil(Math.floor(Math.log2(e)+1)/8);for(let n=0;n<t;n++)yield e>>8*(t-1-n)&255}function Sus(e){tg(TA.Array);for(let t of e)sZ(t)}function vus(e){tg(TA.Boolean),tg(e?1:0)}function xus(e){tg(TA.BigInt),MRn.setBigInt64(0,e);for(let t of PRn)tg(t)}function Cus(e){tg(TA.Date),sZ(e.getTime())}function Tus(e){tg(TA.Null)}function Ius(e){tg(TA.Number),MRn.setFloat64(0,e);for(let t of PRn)tg(t)}function wus(e){tg(TA.Object);for(let t of globalThis.Object.getOwnPropertyNames(e).sort())sZ(t),sZ(e[t])}function Rus(e){tg(TA.String);for(let t=0;t<e.length;t++)for(let n of _us(e.charCodeAt(t)))tg(n)}function Nus(e){tg(TA.Symbol),sZ(e.description)}function kus(e){tg(TA.Uint8Array);for(let t=0;t<e.length;t++)tg(e[t])}function Ous(e){return tg(TA.Undefined)}function sZ(e){if(wi(e))return Sus(e);if(hv(e))return vus(e);if(Dm(e))return xus(e);if(Gh(e))return Cus(e);if(rT(e))return Tus(e);if(pi(e))return Ius(e);if(ps(e))return wus(e);if(Lo(e))return Rus(e);if(sT(e))return Nus(e);if(OU(e))return kus(e);if(Nc(e))return Ous(e);throw new wRe(e)}function tg(e){iZ=iZ^Eus[e],iZ=iZ*yus%Aus}function YN(e){return iZ=BigInt("14695981039346656037"),sZ(e),iZ}var wRe,TA,iZ,yus,Aus,Eus,ORn,MRn,PRn,DRn=C(()=>{Ip();Vc();wRe=class extends vi{constructor(t){super("Unable to hash value"),this.value=t}};(function(e){e[e.Undefined=0]="Undefined",e[e.Null=1]="Null",e[e.Boolean=2]="Boolean",e[e.Number=3]="Number",e[e.String=4]="String",e[e.Object=5]="Object",e[e.Array=6]="Array",e[e.Date=7]="Date",e[e.Uint8Array=8]="Uint8Array",e[e.Symbol=9]="Symbol",e[e.BigInt=10]="BigInt"})(TA||(TA={}));iZ=BigInt("14695981039346656037"),[yus,Aus]=[BigInt("1099511628211"),BigInt("18446744073709551616")],Eus=Array.from({length:256}).map((e,t)=>BigInt(t)),ORn=new Float64Array(1),MRn=new DataView(ORn.buffer),PRn=new Uint8Array(ORn.buffer)});var oZ=C(()=>{DRn()});function Mus(e){return e[on]==="Any"||e[on]==="Unknown"}function Fo(e){return e!==void 0}function Pus(e,t,n){return!0}function Dus(e,t,n){return!0}function Bus(e,t,n){if(!wi(n)||Fo(e.minItems)&&!(n.length>=e.minItems)||Fo(e.maxItems)&&!(n.length<=e.maxItems))return!1;for(let s of n)if(!Gm(e.items,t,s))return!1;if(e.uniqueItems===!0&&!(function(){let s=new Set;for(let o of n){let a=YN(o);if(s.has(a))return!1;s.add(a)}return!0})())return!1;if(!(Fo(e.contains)||pi(e.minContains)||pi(e.maxContains)))return!0;let r=Fo(e.contains)?e.contains:Gi(),i=n.reduce((s,o)=>Gm(r,t,o)?s+1:s,0);return!(i===0||pi(e.minContains)&&i<e.minContains||pi(e.maxContains)&&i>e.maxContains)}function Lus(e,t,n){return uie(n)}function Fus(e,t,n){return!(!Dm(n)||Fo(e.exclusiveMaximum)&&!(n<e.exclusiveMaximum)||Fo(e.exclusiveMinimum)&&!(n>e.exclusiveMinimum)||Fo(e.maximum)&&!(n<=e.maximum)||Fo(e.minimum)&&!(n>=e.minimum)||Fo(e.multipleOf)&&n%e.multipleOf!==BigInt(0))}function Uus(e,t,n){return hv(n)}function Vus(e,t,n){return Gm(e.returns,t,n.prototype)}function Gus(e,t,n){return!(!Gh(n)||Fo(e.exclusiveMaximumTimestamp)&&!(n.getTime()<e.exclusiveMaximumTimestamp)||Fo(e.exclusiveMinimumTimestamp)&&!(n.getTime()>e.exclusiveMinimumTimestamp)||Fo(e.maximumTimestamp)&&!(n.getTime()<=e.maximumTimestamp)||Fo(e.minimumTimestamp)&&!(n.getTime()>=e.minimumTimestamp)||Fo(e.multipleOfTimestamp)&&n.getTime()%e.multipleOfTimestamp!==0)}function Wus(e,t,n){return iT(n)}function $us(e,t,n){let r=globalThis.Object.values(e.$defs),i=e.$defs[e.$ref];return Gm(i,[...t,...r],n)}function Qus(e,t,n){return!(!mie(n)||Fo(e.exclusiveMaximum)&&!(n<e.exclusiveMaximum)||Fo(e.exclusiveMinimum)&&!(n>e.exclusiveMinimum)||Fo(e.maximum)&&!(n<=e.maximum)||Fo(e.minimum)&&!(n>=e.minimum)||Fo(e.multipleOf)&&n%e.multipleOf!==0)}function Yus(e,t,n){let r=e.allOf.every(i=>Gm(i,t,n));if(e.unevaluatedProperties===!1){let i=new RegExp(bv(e)),s=Object.getOwnPropertyNames(n).every(o=>i.test(o));return r&&s}else if(Gc(e.unevaluatedProperties)){let i=new RegExp(bv(e)),s=Object.getOwnPropertyNames(n).every(o=>i.test(o)||Gm(e.unevaluatedProperties,t,n[o]));return r&&s}else return r}function Hus(e,t,n){return die(n)}function Zus(e,t,n){return n===e.const}function jus(e,t,n){return!1}function zus(e,t,n){return!Gm(e.not,t,n)}function Xus(e,t,n){return rT(n)}function Kus(e,t,n){return!(!mc.IsNumberLike(n)||Fo(e.exclusiveMaximum)&&!(n<e.exclusiveMaximum)||Fo(e.exclusiveMinimum)&&!(n>e.exclusiveMinimum)||Fo(e.minimum)&&!(n>=e.minimum)||Fo(e.maximum)&&!(n<=e.maximum)||Fo(e.multipleOf)&&n%e.multipleOf!==0)}function qus(e,t,n){if(!mc.IsObjectLike(n)||Fo(e.minProperties)&&!(Object.getOwnPropertyNames(n).length>=e.minProperties)||Fo(e.maxProperties)&&!(Object.getOwnPropertyNames(n).length<=e.maxProperties))return!1;let r=Object.getOwnPropertyNames(e.properties);for(let i of r){let s=e.properties[i];if(e.required&&e.required.includes(i)){if(!Gm(s,t,n[i])||(yv(s)||Mus(s))&&!(i in n))return!1}else if(mc.IsExactOptionalProperty(n,i)&&!Gm(s,t,n[i]))return!1}if(e.additionalProperties===!1){let i=Object.getOwnPropertyNames(n);return e.required&&e.required.length===r.length&&i.length===r.length?!0:i.every(s=>r.includes(s))}else return typeof e.additionalProperties=="object"?Object.getOwnPropertyNames(n).every(s=>r.includes(s)||Gm(e.additionalProperties,t,n[s])):!0}function Jus(e,t,n){return pie(n)}function eds(e,t,n){if(!mc.IsRecordLike(n)||Fo(e.minProperties)&&!(Object.getOwnPropertyNames(n).length>=e.minProperties)||Fo(e.maxProperties)&&!(Object.getOwnPropertyNames(n).length<=e.maxProperties))return!1;let[r,i]=Object.entries(e.patternProperties)[0],s=new RegExp(r),o=Object.entries(n).every(([u,c])=>s.test(u)?Gm(i,t,c):!0),a=typeof e.additionalProperties=="object"?Object.entries(n).every(([u,c])=>s.test(u)?!0:Gm(e.additionalProperties,t,c)):!0,l=e.additionalProperties===!1?Object.getOwnPropertyNames(n).every(u=>s.test(u)):!0;return o&&a&&l}function tds(e,t,n){return Gm(aa(e,t),t,n)}function nds(e,t,n){let r=new RegExp(e.source,e.flags);return Fo(e.minLength)&&!(n.length>=e.minLength)||Fo(e.maxLength)&&!(n.length<=e.maxLength)?!1:r.test(n)}function rds(e,t,n){return!Lo(n)||Fo(e.minLength)&&!(n.length>=e.minLength)||Fo(e.maxLength)&&!(n.length<=e.maxLength)||Fo(e.pattern)&&!new RegExp(e.pattern).test(n)?!1:Fo(e.format)?Qh.Has(e.format)?Qh.Get(e.format)(n):!1:!0}function ids(e,t,n){return sT(n)}function sds(e,t,n){return Lo(n)&&new RegExp(e.pattern).test(n)}function ods(e,t,n){return Gm(aa(e,t),t,n)}function ads(e,t,n){if(!wi(n)||e.items===void 0&&n.length!==0||n.length!==e.maxItems)return!1;if(!e.items)return!0;for(let r=0;r<e.items.length;r++)if(!Gm(e.items[r],t,n[r]))return!1;return!0}function lds(e,t,n){return Nc(n)}function cds(e,t,n){return e.anyOf.some(r=>Gm(r,t,n))}function uds(e,t,n){return!(!OU(n)||Fo(e.maxByteLength)&&!(n.length<=e.maxByteLength)||Fo(e.minByteLength)&&!(n.length>=e.minByteLength))}function dds(e,t,n){return!0}function pds(e,t,n){return mc.IsVoidLike(n)}function mds(e,t,n){return wp.Has(e[on])?wp.Get(e[on])(e,n):!1}function Gm(e,t,n){let r=Fo(e.$id)?Vm(e,t):t,i=e;switch(i[on]){case"Any":return Pus(i,r,n);case"Argument":return Dus(i,r,n);case"Array":return Bus(i,r,n);case"AsyncIterator":return Lus(i,r,n);case"BigInt":return Fus(i,r,n);case"Boolean":return Uus(i,r,n);case"Constructor":return Vus(i,r,n);case"Date":return Gus(i,r,n);case"Function":return Wus(i,r,n);case"Import":return $us(i,r,n);case"Integer":return Qus(i,r,n);case"Intersect":return Yus(i,r,n);case"Iterator":return Hus(i,r,n);case"Literal":return Zus(i,r,n);case"Never":return jus(i,r,n);case"Not":return zus(i,r,n);case"Null":return Xus(i,r,n);case"Number":return Kus(i,r,n);case"Object":return qus(i,r,n);case"Promise":return Jus(i,r,n);case"Record":return eds(i,r,n);case"Ref":return tds(i,r,n);case"RegExp":return nds(i,r,n);case"String":return rds(i,r,n);case"Symbol":return ids(i,r,n);case"TemplateLiteral":return sds(i,r,n);case"This":return ods(i,r,n);case"Tuple":return ads(i,r,n);case"Undefined":return lds(i,r,n);case"Union":return cds(i,r,n);case"Uint8Array":return uds(i,r,n);case"Unknown":return dds(i,r,n);case"Void":return pds(i,r,n);default:if(!wp.Has(i[on]))throw new RRe(i);return mds(i,r,n)}}function Us(...e){return e.length===3?Gm(e[0],e[1],e[2]):Gm(e[0],[],e[1])}var RRe,yft=C(()=>{rZ();nS();oZ();Fr();dA();oP();JM();Vc();fd();Ip();Ks();RRe=class extends vi{constructor(t){super("Unknown type"),this.schema=t}}});var IA=C(()=>{yft()});function HN(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function Uo(e){return e!==void 0}function br(e,t,n,r,i=[]){return{type:e,schema:t,path:n,value:r,message:fft()({errorType:e,path:n,schema:t,value:r,errors:i}),errors:i}}function*fds(e,t,n,r){}function*hds(e,t,n,r){}function*gds(e,t,n,r){if(!wi(r))return yield br(an.Array,e,n,r);Uo(e.minItems)&&!(r.length>=e.minItems)&&(yield br(an.ArrayMinItems,e,n,r)),Uo(e.maxItems)&&!(r.length<=e.maxItems)&&(yield br(an.ArrayMaxItems,e,n,r));for(let o=0;o<r.length;o++)yield*Wm(e.items,t,`${n}/${o}`,r[o]);if(e.uniqueItems===!0&&!(function(){let o=new Set;for(let a of r){let l=YN(a);if(o.has(l))return!1;o.add(l)}return!0})()&&(yield br(an.ArrayUniqueItems,e,n,r)),!(Uo(e.contains)||Uo(e.minContains)||Uo(e.maxContains)))return;let i=Uo(e.contains)?e.contains:Gi(),s=r.reduce((o,a,l)=>Wm(i,t,`${n}${l}`,a).next().done===!0?o+1:o,0);s===0&&(yield br(an.ArrayContains,e,n,r)),pi(e.minContains)&&s<e.minContains&&(yield br(an.ArrayMinContains,e,n,r)),pi(e.maxContains)&&s>e.maxContains&&(yield br(an.ArrayMaxContains,e,n,r))}function*bds(e,t,n,r){uie(r)||(yield br(an.AsyncIterator,e,n,r))}function*yds(e,t,n,r){if(!Dm(r))return yield br(an.BigInt,e,n,r);Uo(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield br(an.BigIntExclusiveMaximum,e,n,r)),Uo(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield br(an.BigIntExclusiveMinimum,e,n,r)),Uo(e.maximum)&&!(r<=e.maximum)&&(yield br(an.BigIntMaximum,e,n,r)),Uo(e.minimum)&&!(r>=e.minimum)&&(yield br(an.BigIntMinimum,e,n,r)),Uo(e.multipleOf)&&r%e.multipleOf!==BigInt(0)&&(yield br(an.BigIntMultipleOf,e,n,r))}function*Ads(e,t,n,r){hv(r)||(yield br(an.Boolean,e,n,r))}function*Eds(e,t,n,r){yield*Wm(e.returns,t,n,r.prototype)}function*_ds(e,t,n,r){if(!Gh(r))return yield br(an.Date,e,n,r);Uo(e.exclusiveMaximumTimestamp)&&!(r.getTime()<e.exclusiveMaximumTimestamp)&&(yield br(an.DateExclusiveMaximumTimestamp,e,n,r)),Uo(e.exclusiveMinimumTimestamp)&&!(r.getTime()>e.exclusiveMinimumTimestamp)&&(yield br(an.DateExclusiveMinimumTimestamp,e,n,r)),Uo(e.maximumTimestamp)&&!(r.getTime()<=e.maximumTimestamp)&&(yield br(an.DateMaximumTimestamp,e,n,r)),Uo(e.minimumTimestamp)&&!(r.getTime()>=e.minimumTimestamp)&&(yield br(an.DateMinimumTimestamp,e,n,r)),Uo(e.multipleOfTimestamp)&&r.getTime()%e.multipleOfTimestamp!==0&&(yield br(an.DateMultipleOfTimestamp,e,n,r))}function*Sds(e,t,n,r){iT(r)||(yield br(an.Function,e,n,r))}function*vds(e,t,n,r){let i=globalThis.Object.values(e.$defs),s=e.$defs[e.$ref];yield*Wm(s,[...t,...i],n,r)}function*xds(e,t,n,r){if(!mie(r))return yield br(an.Integer,e,n,r);Uo(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield br(an.IntegerExclusiveMaximum,e,n,r)),Uo(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield br(an.IntegerExclusiveMinimum,e,n,r)),Uo(e.maximum)&&!(r<=e.maximum)&&(yield br(an.IntegerMaximum,e,n,r)),Uo(e.minimum)&&!(r>=e.minimum)&&(yield br(an.IntegerMinimum,e,n,r)),Uo(e.multipleOf)&&r%e.multipleOf!==0&&(yield br(an.IntegerMultipleOf,e,n,r))}function*Cds(e,t,n,r){let i=!1;for(let s of e.allOf)for(let o of Wm(s,t,n,r))i=!0,yield o;if(i)return yield br(an.Intersect,e,n,r);if(e.unevaluatedProperties===!1){let s=new RegExp(bv(e));for(let o of Object.getOwnPropertyNames(r))s.test(o)||(yield br(an.IntersectUnevaluatedProperties,e,`${n}/${o}`,r))}if(typeof e.unevaluatedProperties=="object"){let s=new RegExp(bv(e));for(let o of Object.getOwnPropertyNames(r))if(!s.test(o)){let a=Wm(e.unevaluatedProperties,t,`${n}/${o}`,r[o]).next();a.done||(yield a.value)}}}function*Tds(e,t,n,r){die(r)||(yield br(an.Iterator,e,n,r))}function*Ids(e,t,n,r){r!==e.const&&(yield br(an.Literal,e,n,r))}function*wds(e,t,n,r){yield br(an.Never,e,n,r)}function*Rds(e,t,n,r){Wm(e.not,t,n,r).next().done===!0&&(yield br(an.Not,e,n,r))}function*Nds(e,t,n,r){rT(r)||(yield br(an.Null,e,n,r))}function*kds(e,t,n,r){if(!mc.IsNumberLike(r))return yield br(an.Number,e,n,r);Uo(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield br(an.NumberExclusiveMaximum,e,n,r)),Uo(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield br(an.NumberExclusiveMinimum,e,n,r)),Uo(e.maximum)&&!(r<=e.maximum)&&(yield br(an.NumberMaximum,e,n,r)),Uo(e.minimum)&&!(r>=e.minimum)&&(yield br(an.NumberMinimum,e,n,r)),Uo(e.multipleOf)&&r%e.multipleOf!==0&&(yield br(an.NumberMultipleOf,e,n,r))}function*Ods(e,t,n,r){if(!mc.IsObjectLike(r))return yield br(an.Object,e,n,r);Uo(e.minProperties)&&!(Object.getOwnPropertyNames(r).length>=e.minProperties)&&(yield br(an.ObjectMinProperties,e,n,r)),Uo(e.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=e.maxProperties)&&(yield br(an.ObjectMaxProperties,e,n,r));let i=Array.isArray(e.required)?e.required:[],s=Object.getOwnPropertyNames(e.properties),o=Object.getOwnPropertyNames(r);for(let a of i)o.includes(a)||(yield br(an.ObjectRequiredProperty,e.properties[a],`${n}/${HN(a)}`,void 0));if(e.additionalProperties===!1)for(let a of o)s.includes(a)||(yield br(an.ObjectAdditionalProperties,e,`${n}/${HN(a)}`,r[a]));if(typeof e.additionalProperties=="object")for(let a of o)s.includes(a)||(yield*Wm(e.additionalProperties,t,`${n}/${HN(a)}`,r[a]));for(let a of s){let l=e.properties[a];e.required&&e.required.includes(a)?(yield*Wm(l,t,`${n}/${HN(a)}`,r[a]),yv(e)&&!(a in r)&&(yield br(an.ObjectRequiredProperty,l,`${n}/${HN(a)}`,void 0))):mc.IsExactOptionalProperty(r,a)&&(yield*Wm(l,t,`${n}/${HN(a)}`,r[a]))}}function*Mds(e,t,n,r){pie(r)||(yield br(an.Promise,e,n,r))}function*Pds(e,t,n,r){if(!mc.IsRecordLike(r))return yield br(an.Object,e,n,r);Uo(e.minProperties)&&!(Object.getOwnPropertyNames(r).length>=e.minProperties)&&(yield br(an.ObjectMinProperties,e,n,r)),Uo(e.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=e.maxProperties)&&(yield br(an.ObjectMaxProperties,e,n,r));let[i,s]=Object.entries(e.patternProperties)[0],o=new RegExp(i);for(let[a,l]of Object.entries(r))o.test(a)&&(yield*Wm(s,t,`${n}/${HN(a)}`,l));if(typeof e.additionalProperties=="object")for(let[a,l]of Object.entries(r))o.test(a)||(yield*Wm(e.additionalProperties,t,`${n}/${HN(a)}`,l));if(e.additionalProperties===!1){for(let[a,l]of Object.entries(r))if(!o.test(a))return yield br(an.ObjectAdditionalProperties,e,`${n}/${HN(a)}`,l)}}function*Dds(e,t,n,r){yield*Wm(aa(e,t),t,n,r)}function*Bds(e,t,n,r){if(!Lo(r))return yield br(an.String,e,n,r);if(Uo(e.minLength)&&!(r.length>=e.minLength)&&(yield br(an.StringMinLength,e,n,r)),Uo(e.maxLength)&&!(r.length<=e.maxLength)&&(yield br(an.StringMaxLength,e,n,r)),!new RegExp(e.source,e.flags).test(r))return yield br(an.RegExp,e,n,r)}function*Lds(e,t,n,r){if(!Lo(r))return yield br(an.String,e,n,r);Uo(e.minLength)&&!(r.length>=e.minLength)&&(yield br(an.StringMinLength,e,n,r)),Uo(e.maxLength)&&!(r.length<=e.maxLength)&&(yield br(an.StringMaxLength,e,n,r)),Lo(e.pattern)&&(new RegExp(e.pattern).test(r)||(yield br(an.StringPattern,e,n,r))),Lo(e.format)&&(Qh.Has(e.format)?Qh.Get(e.format)(r)||(yield br(an.StringFormat,e,n,r)):yield br(an.StringFormatUnknown,e,n,r))}function*Fds(e,t,n,r){sT(r)||(yield br(an.Symbol,e,n,r))}function*Uds(e,t,n,r){if(!Lo(r))return yield br(an.String,e,n,r);new RegExp(e.pattern).test(r)||(yield br(an.StringPattern,e,n,r))}function*Vds(e,t,n,r){yield*Wm(aa(e,t),t,n,r)}function*Gds(e,t,n,r){if(!wi(r))return yield br(an.Tuple,e,n,r);if(e.items===void 0&&r.length!==0)return yield br(an.TupleLength,e,n,r);if(r.length!==e.maxItems)return yield br(an.TupleLength,e,n,r);if(e.items)for(let i=0;i<e.items.length;i++)yield*Wm(e.items[i],t,`${n}/${i}`,r[i])}function*Wds(e,t,n,r){Nc(r)||(yield br(an.Undefined,e,n,r))}function*$ds(e,t,n,r){if(Us(e,t,r))return;let i=e.anyOf.map(s=>new wA(Wm(s,t,n,r)));yield br(an.Union,e,n,r,i)}function*Qds(e,t,n,r){if(!OU(r))return yield br(an.Uint8Array,e,n,r);Uo(e.maxByteLength)&&!(r.length<=e.maxByteLength)&&(yield br(an.Uint8ArrayMaxByteLength,e,n,r)),Uo(e.minByteLength)&&!(r.length>=e.minByteLength)&&(yield br(an.Uint8ArrayMinByteLength,e,n,r))}function*Yds(e,t,n,r){}function*Hds(e,t,n,r){mc.IsVoidLike(r)||(yield br(an.Void,e,n,r))}function*Zds(e,t,n,r){wp.Get(e[on])(e,r)||(yield br(an.Kind,e,n,r))}function*Wm(e,t,n,r){let i=Uo(e.$id)?[...t,e]:t,s=e;switch(s[on]){case"Any":return yield*fds(s,i,n,r);case"Argument":return yield*hds(s,i,n,r);case"Array":return yield*gds(s,i,n,r);case"AsyncIterator":return yield*bds(s,i,n,r);case"BigInt":return yield*yds(s,i,n,r);case"Boolean":return yield*Ads(s,i,n,r);case"Constructor":return yield*Eds(s,i,n,r);case"Date":return yield*_ds(s,i,n,r);case"Function":return yield*Sds(s,i,n,r);case"Import":return yield*vds(s,i,n,r);case"Integer":return yield*xds(s,i,n,r);case"Intersect":return yield*Cds(s,i,n,r);case"Iterator":return yield*Tds(s,i,n,r);case"Literal":return yield*Ids(s,i,n,r);case"Never":return yield*wds(s,i,n,r);case"Not":return yield*Rds(s,i,n,r);case"Null":return yield*Nds(s,i,n,r);case"Number":return yield*kds(s,i,n,r);case"Object":return yield*Ods(s,i,n,r);case"Promise":return yield*Mds(s,i,n,r);case"Record":return yield*Pds(s,i,n,r);case"Ref":return yield*Dds(s,i,n,r);case"RegExp":return yield*Bds(s,i,n,r);case"String":return yield*Lds(s,i,n,r);case"Symbol":return yield*Fds(s,i,n,r);case"TemplateLiteral":return yield*Uds(s,i,n,r);case"This":return yield*Vds(s,i,n,r);case"Tuple":return yield*Gds(s,i,n,r);case"Undefined":return yield*Wds(s,i,n,r);case"Union":return yield*$ds(s,i,n,r);case"Uint8Array":return yield*Qds(s,i,n,r);case"Unknown":return yield*Yds(s,i,n,r);case"Void":return yield*Hds(s,i,n,r);default:if(!wp.Has(s[on]))throw new NRe(e);return yield*Zds(s,i,n,r)}}function Mv(...e){let t=e.length===3?Wm(e[0],e[1],"",e[2]):Wm(e[0],[],"",e[1]);return new wA(t)}var an,NRe,wA,gft=C(()=>{rZ();dA();JM();yxe();hft();Vc();nS();oZ();IA();Fr();fd();Ip();(function(e){e[e.ArrayContains=0]="ArrayContains",e[e.ArrayMaxContains=1]="ArrayMaxContains",e[e.ArrayMaxItems=2]="ArrayMaxItems",e[e.ArrayMinContains=3]="ArrayMinContains",e[e.ArrayMinItems=4]="ArrayMinItems",e[e.ArrayUniqueItems=5]="ArrayUniqueItems",e[e.Array=6]="Array",e[e.AsyncIterator=7]="AsyncIterator",e[e.BigIntExclusiveMaximum=8]="BigIntExclusiveMaximum",e[e.BigIntExclusiveMinimum=9]="BigIntExclusiveMinimum",e[e.BigIntMaximum=10]="BigIntMaximum",e[e.BigIntMinimum=11]="BigIntMinimum",e[e.BigIntMultipleOf=12]="BigIntMultipleOf",e[e.BigInt=13]="BigInt",e[e.Boolean=14]="Boolean",e[e.DateExclusiveMaximumTimestamp=15]="DateExclusiveMaximumTimestamp",e[e.DateExclusiveMinimumTimestamp=16]="DateExclusiveMinimumTimestamp",e[e.DateMaximumTimestamp=17]="DateMaximumTimestamp",e[e.DateMinimumTimestamp=18]="DateMinimumTimestamp",e[e.DateMultipleOfTimestamp=19]="DateMultipleOfTimestamp",e[e.Date=20]="Date",e[e.Function=21]="Function",e[e.IntegerExclusiveMaximum=22]="IntegerExclusiveMaximum",e[e.IntegerExclusiveMinimum=23]="IntegerExclusiveMinimum",e[e.IntegerMaximum=24]="IntegerMaximum",e[e.IntegerMinimum=25]="IntegerMinimum",e[e.IntegerMultipleOf=26]="IntegerMultipleOf",e[e.Integer=27]="Integer",e[e.IntersectUnevaluatedProperties=28]="IntersectUnevaluatedProperties",e[e.Intersect=29]="Intersect",e[e.Iterator=30]="Iterator",e[e.Kind=31]="Kind",e[e.Literal=32]="Literal",e[e.Never=33]="Never",e[e.Not=34]="Not",e[e.Null=35]="Null",e[e.NumberExclusiveMaximum=36]="NumberExclusiveMaximum",e[e.NumberExclusiveMinimum=37]="NumberExclusiveMinimum",e[e.NumberMaximum=38]="NumberMaximum",e[e.NumberMinimum=39]="NumberMinimum",e[e.NumberMultipleOf=40]="NumberMultipleOf",e[e.Number=41]="Number",e[e.ObjectAdditionalProperties=42]="ObjectAdditionalProperties",e[e.ObjectMaxProperties=43]="ObjectMaxProperties",e[e.ObjectMinProperties=44]="ObjectMinProperties",e[e.ObjectRequiredProperty=45]="ObjectRequiredProperty",e[e.Object=46]="Object",e[e.Promise=47]="Promise",e[e.RegExp=48]="RegExp",e[e.StringFormatUnknown=49]="StringFormatUnknown",e[e.StringFormat=50]="StringFormat",e[e.StringMaxLength=51]="StringMaxLength",e[e.StringMinLength=52]="StringMinLength",e[e.StringPattern=53]="StringPattern",e[e.String=54]="String",e[e.Symbol=55]="Symbol",e[e.TupleLength=56]="TupleLength",e[e.Tuple=57]="Tuple",e[e.Uint8ArrayMaxByteLength=58]="Uint8ArrayMaxByteLength",e[e.Uint8ArrayMinByteLength=59]="Uint8ArrayMinByteLength",e[e.Uint8Array=60]="Uint8Array",e[e.Undefined=61]="Undefined",e[e.Union=62]="Union",e[e.Void=63]="Void"})(an||(an={}));NRe=class extends vi{constructor(t){super("Unknown type"),this.schema=t}};wA=class{constructor(t){this.iterator=t}[Symbol.iterator](){return this.iterator}First(){let t=this.iterator.next();return t.done?void 0:t.value}}});var t4={};li(t4,{DefaultErrorFunction:()=>RRn,Errors:()=>Mv,GetErrorFunction:()=>fft,SetErrorFunction:()=>gus,ValueErrorIterator:()=>wA,ValueErrorType:()=>an,ValueErrorsUnknownTypeError:()=>NRe});var QT=C(()=>{gft();hft()});function _u(e,t,n){try{return fa(e)?e[kc].Decode(n):n}catch(r){throw new kRe(e,t,n,r)}}function jds(e,t,n,r){return wi(r)?_u(e,n,r.map((i,s)=>Pv(e.items,t,`${n}/${s}`,i))):_u(e,n,r)}function zds(e,t,n,r){if(!ps(r)||wy(r))return _u(e,n,r);let i=G7(e),s=i.map(c=>c[0]),o={...r};for(let[c,d]of i)c in o&&(o[c]=Pv(d,t,`${n}/${c}`,o[c]));if(!fa(e.unevaluatedProperties))return _u(e,n,o);let a=Object.getOwnPropertyNames(o),l=e.unevaluatedProperties,u={...o};for(let c of a)s.includes(c)||(u[c]=_u(l,`${n}/${c}`,u[c]));return _u(e,n,u)}function Xds(e,t,n,r){let i=globalThis.Object.values(e.$defs),s=e.$defs[e.$ref],o=Pv(s,[...t,...i],n,r);return _u(e,n,o)}function Kds(e,t,n,r){return _u(e,n,Pv(e.not,t,n,r))}function qds(e,t,n,r){if(!ps(r))return _u(e,n,r);let i=jh(e),s={...r};for(let u of i)Vi(s,u)&&(Nc(s[u])&&(!lT(e.properties[u])||mc.IsExactOptionalProperty(s,u))||(s[u]=Pv(e.properties[u],t,`${n}/${u}`,s[u])));if(!Gc(e.additionalProperties))return _u(e,n,s);let o=Object.getOwnPropertyNames(s),a=e.additionalProperties,l={...s};for(let u of o)i.includes(u)||(l[u]=_u(a,`${n}/${u}`,l[u]));return _u(e,n,l)}function Jds(e,t,n,r){if(!ps(r))return _u(e,n,r);let i=Object.getOwnPropertyNames(e.patternProperties)[0],s=new RegExp(i),o={...r};for(let c of Object.getOwnPropertyNames(r))s.test(c)&&(o[c]=Pv(e.patternProperties[i],t,`${n}/${c}`,o[c]));if(!Gc(e.additionalProperties))return _u(e,n,o);let a=Object.getOwnPropertyNames(o),l=e.additionalProperties,u={...o};for(let c of a)s.test(c)||(u[c]=_u(l,`${n}/${c}`,u[c]));return _u(e,n,u)}function eps(e,t,n,r){let i=aa(e,t);return _u(e,n,Pv(i,t,n,r))}function tps(e,t,n,r){let i=aa(e,t);return _u(e,n,Pv(i,t,n,r))}function nps(e,t,n,r){return wi(r)&&wi(e.items)?_u(e,n,e.items.map((i,s)=>Pv(i,t,`${n}/${s}`,r[s]))):_u(e,n,r)}function rps(e,t,n,r){for(let i of e.anyOf){if(!Us(i,t,r))continue;let s=Pv(i,t,n,r);return _u(e,n,s)}return _u(e,n,r)}function Pv(e,t,n,r){let i=Vm(e,t),s=e;switch(e[on]){case"Array":return jds(s,i,n,r);case"Import":return Xds(s,i,n,r);case"Intersect":return zds(s,i,n,r);case"Not":return Kds(s,i,n,r);case"Object":return qds(s,i,n,r);case"Record":return Jds(s,i,n,r);case"Ref":return eps(s,i,n,r);case"Symbol":return _u(s,n,r);case"This":return tps(s,i,n,r);case"Tuple":return nps(s,i,n,r);case"Union":return rps(s,i,n,r);default:return _u(s,n,r)}}function r4(e,t,n){return Pv(e,t,"",n)}var n4,kRe,BRn=C(()=>{fie();Fr();Vc();dA();nS();IA();Ip();Ks();n4=class extends vi{constructor(t,n,r){super("Unable to decode value as it does not match the expected schema"),this.schema=t,this.value=n,this.error=r}},kRe=class extends vi{constructor(t,n,r,i){super(i instanceof Error?i.message:"Unknown error"),this.schema=t,this.path=n,this.value=r,this.error=i}}});function Xf(e,t,n){try{return fa(e)?e[kc].Encode(n):n}catch(r){throw new ORe(e,t,n,r)}}function ips(e,t,n,r){let i=Xf(e,n,r);return wi(i)?i.map((s,o)=>Dv(e.items,t,`${n}/${o}`,s)):i}function sps(e,t,n,r){let i=globalThis.Object.values(e.$defs),s=e.$defs[e.$ref],o=Xf(e,n,r);return Dv(s,[...t,...i],n,o)}function ops(e,t,n,r){let i=Xf(e,n,r);if(!ps(r)||wy(r))return i;let s=G7(e),o=s.map(d=>d[0]),a={...i};for(let[d,p]of s)d in a&&(a[d]=Dv(p,t,`${n}/${d}`,a[d]));if(!fa(e.unevaluatedProperties))return a;let l=Object.getOwnPropertyNames(a),u=e.unevaluatedProperties,c={...a};for(let d of l)o.includes(d)||(c[d]=Xf(u,`${n}/${d}`,c[d]));return c}function aps(e,t,n,r){return Xf(e.not,n,Xf(e,n,r))}function lps(e,t,n,r){let i=Xf(e,n,r);if(!ps(i))return i;let s=jh(e),o={...i};for(let c of s)Vi(o,c)&&(Nc(o[c])&&(!lT(e.properties[c])||mc.IsExactOptionalProperty(o,c))||(o[c]=Dv(e.properties[c],t,`${n}/${c}`,o[c])));if(!Gc(e.additionalProperties))return o;let a=Object.getOwnPropertyNames(o),l=e.additionalProperties,u={...o};for(let c of a)s.includes(c)||(u[c]=Xf(l,`${n}/${c}`,u[c]));return u}function cps(e,t,n,r){let i=Xf(e,n,r);if(!ps(r))return i;let s=Object.getOwnPropertyNames(e.patternProperties)[0],o=new RegExp(s),a={...i};for(let d of Object.getOwnPropertyNames(r))o.test(d)&&(a[d]=Dv(e.patternProperties[s],t,`${n}/${d}`,a[d]));if(!Gc(e.additionalProperties))return a;let l=Object.getOwnPropertyNames(a),u=e.additionalProperties,c={...a};for(let d of l)o.test(d)||(c[d]=Xf(u,`${n}/${d}`,c[d]));return c}function ups(e,t,n,r){let i=aa(e,t),s=Dv(i,t,n,r);return Xf(e,n,s)}function dps(e,t,n,r){let i=aa(e,t),s=Dv(i,t,n,r);return Xf(e,n,s)}function pps(e,t,n,r){let i=Xf(e,n,r);return wi(e.items)?e.items.map((s,o)=>Dv(s,t,`${n}/${o}`,i[o])):[]}function mps(e,t,n,r){for(let i of e.anyOf){if(!Us(i,t,r))continue;let s=Dv(i,t,n,r);return Xf(e,n,s)}for(let i of e.anyOf){let s=Dv(i,t,n,r);if(Us(e,t,s))return Xf(e,n,s)}return Xf(e,n,r)}function Dv(e,t,n,r){let i=Vm(e,t),s=e;switch(e[on]){case"Array":return ips(s,i,n,r);case"Import":return sps(s,i,n,r);case"Intersect":return ops(s,i,n,r);case"Not":return aps(s,i,n,r);case"Object":return lps(s,i,n,r);case"Record":return cps(s,i,n,r);case"Ref":return ups(s,i,n,r);case"This":return dps(s,i,n,r);case"Tuple":return pps(s,i,n,r);case"Union":return mps(s,i,n,r);default:return Xf(s,n,r)}}function s4(e,t,n){return Dv(e,t,"",n)}var i4,ORe,LRn=C(()=>{fie();Fr();Vc();dA();nS();IA();Ip();Ks();i4=class extends vi{constructor(t,n,r){super("The encoded value does not match the expected schema"),this.schema=t,this.value=n,this.error=r}},ORe=class extends vi{constructor(t,n,r,i){super(`${i instanceof Error?i.message:"Unknown error"}`),this.schema=t,this.path=n,this.value=r,this.error=i}}});function fps(e,t){return fa(e)||rm(e.items,t)}function hps(e,t){return fa(e)||rm(e.items,t)}function gps(e,t){return fa(e)||rm(e.returns,t)||e.parameters.some(n=>rm(n,t))}function bps(e,t){return fa(e)||rm(e.returns,t)||e.parameters.some(n=>rm(n,t))}function yps(e,t){return fa(e)||fa(e.unevaluatedProperties)||e.allOf.some(n=>rm(n,t))}function Aps(e,t){let n=globalThis.Object.getOwnPropertyNames(e.$defs).reduce((i,s)=>[...i,e.$defs[s]],[]),r=e.$defs[e.$ref];return fa(e)||rm(r,[...n,...t])}function Eps(e,t){return fa(e)||rm(e.items,t)}function _ps(e,t){return fa(e)||rm(e.not,t)}function Sps(e,t){return fa(e)||Object.values(e.properties).some(n=>rm(n,t))||Gc(e.additionalProperties)&&rm(e.additionalProperties,t)}function vps(e,t){return fa(e)||rm(e.item,t)}function xps(e,t){let n=Object.getOwnPropertyNames(e.patternProperties)[0],r=e.patternProperties[n];return fa(e)||rm(r,t)||Gc(e.additionalProperties)&&fa(e.additionalProperties)}function Cps(e,t){return fa(e)?!0:rm(aa(e,t),t)}function Tps(e,t){return fa(e)?!0:rm(aa(e,t),t)}function Ips(e,t){return fa(e)||!Nc(e.items)&&e.items.some(n=>rm(n,t))}function wps(e,t){return fa(e)||e.anyOf.some(n=>rm(n,t))}function rm(e,t){let n=Vm(e,t),r=e;if(e.$id&&Aft.has(e.$id))return!1;switch(e.$id&&Aft.add(e.$id),e[on]){case"Array":return fps(r,n);case"AsyncIterator":return hps(r,n);case"Constructor":return gps(r,n);case"Function":return bps(r,n);case"Import":return Aps(r,n);case"Intersect":return yps(r,n);case"Iterator":return Eps(r,n);case"Not":return _ps(r,n);case"Object":return Sps(r,n);case"Promise":return vps(r,n);case"Record":return xps(r,n);case"Ref":return Cps(r,n);case"This":return Tps(r,n);case"Tuple":return Ips(r,n);case"Union":return wps(r,n);default:return fa(e)}}function YT(e,t){return Aft.clear(),rm(e,t)}var Aft,FRn=C(()=>{nS();Fr();Ks();Ip();Aft=new Set});var aZ=C(()=>{BRn();LRn();FRn()});function lD(e){if(!Lo(e))throw Error("ConstantString: Not a String");return`'${JSON.stringify(e).slice(1,-1).replace(/'/g,"\\'")}'`}function URn(e,t){return`${e}[${lD(t)}]`}var MRe,PRe,Eft,DRe,Bae,cD,o4,VRn=C(()=>{aZ();QT();rZ();Vc();nS();oZ();Fr();JM();dA();yxe();fd();hT();Ip();Ltt();MRe=class{constructor(t,n,r,i){this.schema=t,this.references=n,this.checkFunc=r,this.code=i,this.hasTransform=YT(t,n)}Code(){return this.code}Schema(){return this.schema}References(){return this.references}Errors(t){return Mv(this.schema,this.references,t)}Check(t){return this.checkFunc(t)}Decode(t){if(!this.checkFunc(t))throw new n4(this.schema,t,this.Errors(t).First());return this.hasTransform?r4(this.schema,this.references,t):t}Encode(t){let n=this.hasTransform?s4(this.schema,this.references,t):t;if(!this.checkFunc(n))throw new i4(this.schema,t,this.Errors(t).First());return n}};(function(e){function t(s){return s===36}e.DollarSign=t;function n(s){return s===95}e.IsUnderscore=n;function r(s){return s>=65&&s<=90||s>=97&&s<=122}e.IsAlpha=r;function i(s){return s>=48&&s<=57}e.IsNumeric=i})(PRe||(PRe={}));(function(e){function t(n){let r=[];for(let i=0;i<n.length;i++){let s=n.charCodeAt(i);PRe.IsNumeric(s)||PRe.IsAlpha(s)?r.push(n.charAt(i)):r.push(`_${s}_`)}return r.join("").replace(/__/g,"_")}e.Encode=t})(Eft||(Eft={}));DRe=class extends vi{constructor(t){super("Unknown type"),this.schema=t}},Bae=class extends vi{constructor(t){super("Preflight validation check failed to guard for the given schema"),this.schema=t}};(function(e){function t(o,a,l){return mc.ExactOptionalPropertyTypes?`(${lD(a)} in ${o} ? ${l} : true)`:`(${URn(o,a)} !== undefined ? ${l} : true)`}e.IsExactOptionalProperty=t;function n(o){return mc.AllowArrayObject?`(typeof ${o} === 'object' && ${o} !== null)`:`(typeof ${o} === 'object' && ${o} !== null && !Array.isArray(${o}))`}e.IsObjectLike=n;function r(o){return mc.AllowArrayObject?`(typeof ${o} === 'object' && ${o} !== null && !(${o} instanceof Date) && !(${o} instanceof Uint8Array))`:`(typeof ${o} === 'object' && ${o} !== null && !Array.isArray(${o}) && !(${o} instanceof Date) && !(${o} instanceof Uint8Array))`}e.IsRecordLike=r;function i(o){return mc.AllowNaN?`typeof ${o} === 'number'`:`Number.isFinite(${o})`}e.IsNumberLike=i;function s(o){return mc.AllowNullVoid?`(${o} === undefined || ${o} === null)`:`${o} === undefined`}e.IsVoidLike=s})(cD||(cD={}));(function(e){function t(te){return te[on]==="Any"||te[on]==="Unknown"}function*n(te,X,$){yield"true"}function*r(te,X,$){yield"true"}function*i(te,X,$){yield`Array.isArray(${$})`;let[se,oe]=[j("value","any"),j("acc","number")];pi(te.maxItems)&&(yield`${$}.length <= ${te.maxItems}`),pi(te.minItems)&&(yield`${$}.length >= ${te.minItems}`);let we=de(te.items,X,"value");if(yield`((array) => { for(const ${se} of array) if(!(${we})) { return false }; return true; })(${$})`,Wc(te.contains)||pi(te.minContains)||pi(te.maxContains)){let Re=Wc(te.contains)?te.contains:Gi(),xe=de(Re,X,"value"),re=pi(te.minContains)?[`(count >= ${te.minContains})`]:[],Oe=pi(te.maxContains)?[`(count <= ${te.maxContains})`]:[],Ze=`const count = value.reduce((${oe}, ${se}) => ${xe} ? acc + 1 : acc, 0)`,Ye=["(count > 0)",...re,...Oe].join(" && ");yield`((${se}) => { ${Ze}; return ${Ye}})(${$})`}te.uniqueItems===!0&&(yield`((${se}) => { const set = new Set(); for(const element of value) { const hashed = hash(element); if(set.has(hashed)) { return false } else { set.add(hashed) } } return true } )(${$})`)}function*s(te,X,$){yield`(typeof value === 'object' && Symbol.asyncIterator in ${$})`}function*o(te,X,$){yield`(typeof ${$} === 'bigint')`,Dm(te.exclusiveMaximum)&&(yield`${$} < BigInt(${te.exclusiveMaximum})`),Dm(te.exclusiveMinimum)&&(yield`${$} > BigInt(${te.exclusiveMinimum})`),Dm(te.maximum)&&(yield`${$} <= BigInt(${te.maximum})`),Dm(te.minimum)&&(yield`${$} >= BigInt(${te.minimum})`),Dm(te.multipleOf)&&(yield`(${$} % BigInt(${te.multipleOf})) === 0`)}function*a(te,X,$){yield`(typeof ${$} === 'boolean')`}function*l(te,X,$){yield*ie(te.returns,X,`${$}.prototype`)}function*u(te,X,$){yield`(${$} instanceof Date) && Number.isFinite(${$}.getTime())`,pi(te.exclusiveMaximumTimestamp)&&(yield`${$}.getTime() < ${te.exclusiveMaximumTimestamp}`),pi(te.exclusiveMinimumTimestamp)&&(yield`${$}.getTime() > ${te.exclusiveMinimumTimestamp}`),pi(te.maximumTimestamp)&&(yield`${$}.getTime() <= ${te.maximumTimestamp}`),pi(te.minimumTimestamp)&&(yield`${$}.getTime() >= ${te.minimumTimestamp}`),pi(te.multipleOfTimestamp)&&(yield`(${$}.getTime() % ${te.multipleOfTimestamp}) === 0`)}function*c(te,X,$){yield`(typeof ${$} === 'function')`}function*d(te,X,$){let se=globalThis.Object.getOwnPropertyNames(te.$defs).reduce((oe,we)=>[...oe,te.$defs[we]],[]);yield*ie(Fm(te.$ref),[...X,...se],$)}function*p(te,X,$){yield`Number.isInteger(${$})`,pi(te.exclusiveMaximum)&&(yield`${$} < ${te.exclusiveMaximum}`),pi(te.exclusiveMinimum)&&(yield`${$} > ${te.exclusiveMinimum}`),pi(te.maximum)&&(yield`${$} <= ${te.maximum}`),pi(te.minimum)&&(yield`${$} >= ${te.minimum}`),pi(te.multipleOf)&&(yield`(${$} % ${te.multipleOf}) === 0`)}function*m(te,X,$){let se=te.allOf.map(oe=>de(oe,X,$)).join(" && ");if(te.unevaluatedProperties===!1){let oe=W(`${new RegExp(bv(te))};`),we=`Object.getOwnPropertyNames(${$}).every(key => ${oe}.test(key))`;yield`(${se} && ${we})`}else if(Wc(te.unevaluatedProperties)){let oe=W(`${new RegExp(bv(te))};`),we=`Object.getOwnPropertyNames(${$}).every(key => ${oe}.test(key) || ${de(te.unevaluatedProperties,X,`${$}[key]`)})`;yield`(${se} && ${we})`}else yield`(${se})`}function*f(te,X,$){yield`(typeof value === 'object' && Symbol.iterator in ${$})`}function*h(te,X,$){if(typeof te.const=="number"||typeof te.const=="boolean")yield`(${$} === ${te.const})`;else if(typeof te.const=="string")yield`(${$} === ${lD(te.const)})`;else throw Error("Invalid Literal Value")}function*g(te,X,$){yield"false"}function*b(te,X,$){yield`(!${de(te.not,X,$)})`}function*A(te,X,$){yield`(${$} === null)`}function*y(te,X,$){yield cD.IsNumberLike($),pi(te.exclusiveMaximum)&&(yield`${$} < ${te.exclusiveMaximum}`),pi(te.exclusiveMinimum)&&(yield`${$} > ${te.exclusiveMinimum}`),pi(te.maximum)&&(yield`${$} <= ${te.maximum}`),pi(te.minimum)&&(yield`${$} >= ${te.minimum}`),pi(te.multipleOf)&&(yield`(${$} % ${te.multipleOf}) === 0`)}function*S(te,X,$){yield cD.IsObjectLike($),pi(te.minProperties)&&(yield`Object.getOwnPropertyNames(${$}).length >= ${te.minProperties}`),pi(te.maxProperties)&&(yield`Object.getOwnPropertyNames(${$}).length <= ${te.maxProperties}`);let se=Object.getOwnPropertyNames(te.properties);for(let oe of se){let we=URn($,oe),Re=te.properties[oe];if(te.required&&te.required.includes(oe))yield*ie(Re,X,we),(yv(Re)||t(Re))&&(yield`(${lD(oe)} in ${$})`);else{let xe=de(Re,X,we);yield cD.IsExactOptionalProperty($,oe,xe)}}if(te.additionalProperties===!1)if(te.required&&te.required.length===se.length)yield`Object.getOwnPropertyNames(${$}).length === ${se.length}`;else{let oe=`[${se.map(we=>`${lD(we)}`).join(", ")}]`;yield`Object.getOwnPropertyNames(${$}).every(key => ${oe}.includes(key))`}if(typeof te.additionalProperties=="object"){let oe=de(te.additionalProperties,X,`${$}[key]`),we=`[${se.map(Re=>`${lD(Re)}`).join(", ")}]`;yield`(Object.getOwnPropertyNames(${$}).every(key => ${we}.includes(key) || ${oe}))`}}function*_(te,X,$){yield`${$} instanceof Promise`}function*x(te,X,$){yield cD.IsRecordLike($),pi(te.minProperties)&&(yield`Object.getOwnPropertyNames(${$}).length >= ${te.minProperties}`),pi(te.maxProperties)&&(yield`Object.getOwnPropertyNames(${$}).length <= ${te.maxProperties}`);let[se,oe]=Object.entries(te.patternProperties)[0],we=W(`${new RegExp(se)}`),Re=de(oe,X,"value"),xe=Wc(te.additionalProperties)?de(te.additionalProperties,X,$):te.additionalProperties===!1?"false":"true",re=`(${we}.test(key) ? ${Re} : ${xe})`;yield`(Object.entries(${$}).every(([key, value]) => ${re}))`}function*v(te,X,$){let se=aa(te,X);if(ne.functions.has(te.$ref))return yield`${ce(te.$ref)}(${$})`;yield*ie(se,X,$)}function*w(te,X,$){let se=W(`${new RegExp(te.source,te.flags)};`);yield`(typeof ${$} === 'string')`,pi(te.maxLength)&&(yield`${$}.length <= ${te.maxLength}`),pi(te.minLength)&&(yield`${$}.length >= ${te.minLength}`),yield`${se}.test(${$})`}function*T(te,X,$){yield`(typeof ${$} === 'string')`,pi(te.maxLength)&&(yield`${$}.length <= ${te.maxLength}`),pi(te.minLength)&&(yield`${$}.length >= ${te.minLength}`),te.pattern!==void 0&&(yield`${W(`${new RegExp(te.pattern)};`)}.test(${$})`),te.format!==void 0&&(yield`format(${lD(te.format)}, ${$})`)}function*D(te,X,$){yield`(typeof ${$} === 'symbol')`}function*M(te,X,$){yield`(typeof ${$} === 'string')`,yield`${W(`${new RegExp(te.pattern)};`)}.test(${$})`}function*P(te,X,$){yield`${ce(te.$ref)}(${$})`}function*O(te,X,$){if(yield`Array.isArray(${$})`,te.items===void 0)return yield`${$}.length === 0`;yield`(${$}.length === ${te.maxItems})`;for(let se=0;se<te.items.length;se++)yield`${de(te.items[se],X,`${$}[${se}]`)}`}function*k(te,X,$){yield`${$} === undefined`}function*L(te,X,$){yield`(${te.anyOf.map(oe=>de(oe,X,$)).join(" || ")})`}function*F(te,X,$){yield`${$} instanceof Uint8Array`,pi(te.maxByteLength)&&(yield`(${$}.length <= ${te.maxByteLength})`),pi(te.minByteLength)&&(yield`(${$}.length >= ${te.minByteLength})`)}function*Q(te,X,$){yield"true"}function*U(te,X,$){yield cD.IsVoidLike($)}function*J(te,X,$){let se=ne.instances.size;ne.instances.set(se,te),yield`kind(${lD(te[on])}, ${se}, ${$})`}function*ie(te,X,$,se=!0){let oe=Lo(te.$id)?[...X,te]:X,we=te;if(se&&Lo(te.$id)){let Re=ce(te.$id);if(ne.functions.has(Re))return yield`${Re}(${$})`;{ne.functions.set(Re,"<deferred>");let xe=Y(Re,te,X,"value",!1);return ne.functions.set(Re,xe),yield`${Re}(${$})`}}switch(we[on]){case"Any":return yield*n(we,oe,$);case"Argument":return yield*r(we,oe,$);case"Array":return yield*i(we,oe,$);case"AsyncIterator":return yield*s(we,oe,$);case"BigInt":return yield*o(we,oe,$);case"Boolean":return yield*a(we,oe,$);case"Constructor":return yield*l(we,oe,$);case"Date":return yield*u(we,oe,$);case"Function":return yield*c(we,oe,$);case"Import":return yield*d(we,oe,$);case"Integer":return yield*p(we,oe,$);case"Intersect":return yield*m(we,oe,$);case"Iterator":return yield*f(we,oe,$);case"Literal":return yield*h(we,oe,$);case"Never":return yield*g(we,oe,$);case"Not":return yield*b(we,oe,$);case"Null":return yield*A(we,oe,$);case"Number":return yield*y(we,oe,$);case"Object":return yield*S(we,oe,$);case"Promise":return yield*_(we,oe,$);case"Record":return yield*x(we,oe,$);case"Ref":return yield*v(we,oe,$);case"RegExp":return yield*w(we,oe,$);case"String":return yield*T(we,oe,$);case"Symbol":return yield*D(we,oe,$);case"TemplateLiteral":return yield*M(we,oe,$);case"This":return yield*P(we,oe,$);case"Tuple":return yield*O(we,oe,$);case"Undefined":return yield*k(we,oe,$);case"Union":return yield*L(we,oe,$);case"Uint8Array":return yield*F(we,oe,$);case"Unknown":return yield*Q(we,oe,$);case"Void":return yield*U(we,oe,$);default:if(!wp.Has(we[on]))throw new DRe(te);return yield*J(we,oe,$)}}let ne={language:"javascript",functions:new Map,variables:new Map,instances:new Map};function de(te,X,$,se=!0){return`(${[...ie(te,X,$,se)].join(" && ")})`}function ce(te){return`check_${Eft.Encode(te)}`}function W(te){let X=`local_${ne.variables.size}`;return ne.variables.set(X,`const ${X} = ${te}`),X}function Y(te,X,$,se,oe=!0){let[we,Re]=[`
|
|
296
296
|
`,Ze=>"".padStart(Ze," ")],xe=j("value","any"),re=Z("boolean"),Oe=[...ie(X,$,se,oe)].map(Ze=>`${Re(4)}${Ze}`).join(` &&${we}`);return`function ${te}(${xe})${re} {${we}${Re(2)}return (${we}${Oe}${we}${Re(2)})
|
|
297
297
|
}`}function j(te,X){let $=ne.language==="typescript"?`: ${X}`:"";return`${te}${$}`}function Z(te){return ne.language==="typescript"?`: ${te}`:""}function z(te,X,$){let se=Y("check",te,X,"value"),oe=j("value","any"),we=Z("boolean"),Re=[...ne.functions.values()],xe=[...ne.variables.values()],re=Lo(te.$id)?`return function check(${oe})${we} {
|
|
298
298
|
return ${ce(te.$id)}(value)
|
|
@@ -6399,7 +6399,7 @@ not revoke server-side tokens; use \`auggie token revoke\` for revocation.
|
|
|
6399
6399
|
|
|
6400
6400
|
Interactive /login and /logout manage the platform session in session.json.`,mPr=`Usage: auggie auth status
|
|
6401
6401
|
|
|
6402
|
-
Show whether the CLI has an active Augment authentication session.`,eFo="Note: Injected credentials remain active and may override the saved session.",tFo="Note: Injected credentials remain active.",nFo="AUGGIE_V2_SEGMENT_WRITE_KEY"});import{readFile as EFo}from"node:fs/promises";import{resolve as _Fo}from"node:path";function xFo(e){let t=[],n;for(let r=0;r<e.length;r+=1){let i=e[r];if(i==="--"){t.push(...e.slice(r));break}if(i===LBt){let s=e[r+1];if(s===void 0||s.startsWith("-")||!s.trim())return{type:"fatal"};n=s,r+=1;continue}if(i.startsWith(`${LBt}=`)){let s=i.slice(LBt.length+1);if(!s.trim())return{type:"fatal"};n=s;continue}t.push(i)}return{type:"success",args:t,candidate:n}}async function vPr(e,t=vFo){let n=xFo(e);if(n.type==="fatal")return{type:"fatal",message:SFo};if(n.candidate===void 0)return{type:"success",args:n.args};let r=n.candidate.trim(),i;if(r.startsWith("{"))i=r;else try{i=await t.readPath(_Fo(process.cwd(),r))}catch{return{type:"fatal",message:FBt}}let s;try{s=JSON.parse(i)}catch{return{type:"fatal",message:FBt}}let o=Ade(s);return o?{type:"success",args:n.args,credentials:o}:{type:"fatal",message:FBt}}var LBt,SFo,FBt,vFo,xPr=C(()=>{"use strict";Ede();LBt="--augment-session-json",SFo="--augment-session-json requires a value",FBt="--augment-session-json value is unusable",vFo={readPath:e=>EFo(e,"utf8")}});import{execFile as CFo}from"node:child_process";import{existsSync as TFo,rmSync as IFo}from"node:fs";import{promisify as wFo}from"node:util";function VBt(e){let t=e.match(/^git@github\.com:(.+?)(?:\.git)?$/);if(t){let r=t[1];return{sshUrl:`git@github.com:${r}.git`,httpsUrl:`https://github.com/${r}.git`}}let n=e.match(/^https?:\/\/github\.com\/(.+?)(?:\.git)?$/);if(n){let r=n[1];return{sshUrl:`git@github.com:${r}.git`,httpsUrl:`https://github.com/${r}.git`}}return{sshUrl:e,httpsUrl:e}}function wPr(e){return e instanceof Error?e.message:String(e)}async function GBt({sshUrl:e,httpsUrl:t,targetDir:n,extraArgs:r=[]}){let i,s=e===t?[{url:e,env:e.startsWith("http")?UBt:CPr}]:[{url:e,env:CPr},{url:t,env:UBt}];for(let o of s)try{return await IPr("git",["clone","--depth","1",...r,o.url,n],{env:o.env}),{success:!0}}catch(a){i=a,TFo(n)&&IFo(n,{recursive:!0,force:!0})}return{success:!1,error:wPr(i)}}function TPr(e,t){return IPr("git",e,{cwd:t,env:UBt})}async function RPr(e,t){try{return await TPr(["fetch","--depth","1","origin",t],e),await TPr(["checkout","FETCH_HEAD"],e),{success:!0}}catch(n){return{success:!1,error:wPr(n)}}}var IPr,CPr,UBt,NPr=C(()=>{"use strict";IPr=wFo(CFo),CPr={...process.env,GIT_TERMINAL_PROMPT:"0",GIT_SSH_COMMAND:"ssh -o BatchMode=yes"},UBt={...process.env,GIT_TERMINAL_PROMPT:"0"}});import{readFileSync as RFo}from"node:fs";import{join as WBt}from"node:path";function d9(e){let t=NFo(e,kPr);return t.manifest||t.diagnostics.length>0?t:{diagnostics:[`no marketplace manifest found (looked for ${kPr.join(", ")})`]}}function NFo(e,t){let n=[];for(let r of t){let i=WBt(e,r),s;try{s=RFo(i,"utf-8")}catch{continue}try{let o=JSON.parse(s);if(o&&typeof o=="object"&&!Array.isArray(o))return{manifest:o,manifestPath:i,diagnostics:n};n.push(`manifest at ${r} is not a JSON object; ignoring`)}catch(o){n.push(`failed to parse manifest at ${r}: ${o.message}`)}}return{diagnostics:n}}var kPr,HVe=C(()=>{"use strict";kPr=[WBt(".augment-plugin","marketplace.json"),WBt(".claude-plugin","marketplace.json")]});import{execFile as kFo}from"node:child_process";import{existsSync as Cw,mkdirSync as MPr,readdirSync as OFo,renameSync as MFo,rmSync as PFo,statSync as DFo}from"node:fs";import{dirname as BFo,isAbsolute as PPr,join as Tw,relative as DPr,resolve as $Bt}from"node:path";import{promisify as LFo}from"node:util";function FPr(e){let t=e.replace(/\.\./g,"").replace(/[/\\]/g,"").replace(/^\.+/,"").trim();return!t||!/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(t)?null:t}function OPr(e){let t=e.replace(/\.\./g,"").replace(/[/\\]/g,"").replace(/^\.+/,"").trim();return!t||!/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(t)?null:t}function FFo(e){let t=e.trim();if(!t)return null;let n=t.match(/^([a-zA-Z0-9_-]+)\/([a-zA-Z0-9_.-]+?)(?:@(.+))?$/);if(n?.[1]&&n[2]){let r=n[1],i=n[2].replace(/\.git$/,"");return{repo:i,cloneUrl:`https://github.com/${r}/${i}`,...n[3]?{ref:n[3]}:{}}}if(/^(https?|ssh|file):\/\/|^git@/.test(t)){let[r,i]=t.split("#");if(!r)return null;let s=r.replace(/\/+$/,""),o=s.split(/[/:]/).pop()?.replace(/\.git$/,"");if(o)return{repo:o,cloneUrl:s,...i?{ref:i}:{}}}return null}function Iw(e){return typeof e=="string"&&e.length>0?e:void 0}function UFo(e,t){let n=Iw(e.repo);return n?{kind:"github",url:`https://github.com/${n.replace(/\.git$/,"")}.git`,...t?{ref:t}:{},...Iw(e.path)?{subdir:Iw(e.path)}:{}}:null}function VFo(e,t){let n=Iw(e.url);return n?{kind:"url",url:n,...t?{ref:t}:{},...Iw(e.path)?{subdir:Iw(e.path)}:{}}:null}function GFo(e,t){let n=Iw(e.url),r=Iw(e.path);return n&&r?{kind:"git-subdir",url:n,subdir:r,...t?{ref:t}:{}}:null}function QBt(e){if(!e||typeof e!="object")return null;let t=e,n=Iw(t.sha)??Iw(t.ref);switch(t.source){case"github":return UFo(t,n);case"url":return VFo(t,n);case"git-subdir":return GFo(t,n);default:return null}}function UPr(e,t,n){let r=FPr(t);if(!r)return;let i=Tw(e,LPr,r);if(!Cw(Tw(i,".git")))return;if(!n)return i;let s=$Bt(i,n),o=DPr(i,s);if(!(o.startsWith("..")||PPr(o)))return Cw(s)?s:void 0}async function WFo(e,t){let n=typeof t.name=="string"?t.name:"",r=QBt(t.source);if(!r)return;let i=FPr(n);if(!i)return{name:n,status:"failed",error:"invalid plugin cache name"};let s=Tw(e,LPr,i);if(Cw(Tw(s,".git")))return{name:n,status:"skipped"};let o=BFo(s);Cw(o)||MPr(o,{recursive:!0});let{sshUrl:a,httpsUrl:l}=VBt(r.url),u=r.kind==="git-subdir",c=await GBt({sshUrl:a,httpsUrl:l,targetDir:s,extraArgs:u?["--filter=blob:none","--sparse"]:[]});if(!c.success)return{name:n,status:"failed",error:c.error};if(r.ref){let d=await RPr(s,r.ref);if(!d.success)return{name:n,status:"failed",error:d.error}}if(u&&r.kind==="git-subdir")try{await BPr("git",["sparse-checkout","set",r.subdir],{cwd:s,env:{...process.env,GIT_TERMINAL_PROMPT:"0"}})}catch(d){return{name:n,status:"failed",error:d instanceof Error?d.message:String(d)}}return{name:n,status:"cloned"}}async function YBt(e){let{manifest:t}=d9(e),n=t?.plugins;if(!n||n.length===0)return[];let r=[];for(let i of n){let s=await WFo(e,i);s&&r.push(s)}return r}function $Fo(e){try{return DFo(e).isDirectory()}catch{return!1}}function QFo(e,t){let n=DPr($Bt(e),$Bt(t));return n!==""&&!n.startsWith("..")&&!PPr(n)}async function yq(e,t){let n=FFo(t);if(!n)return{success:!1,error:`Invalid repository: ${t}. Expected owner/repo, a Git URL (HTTPS/SSH/file), or a github.com URL.`};let{repo:r,ref:i,cloneUrl:s}=n;Cw(e)||MPr(e,{recursive:!0});let o=OPr(r);if(!o)return{success:!1,error:`Invalid repository name for marketplace directory: "${r}".`};let a=Tw(e,o);if(Cw(a))return{success:!1,alreadyInstalled:!0,marketplaceId:o,error:`Marketplace '${o}' is already installed.`};let{sshUrl:l,httpsUrl:u}=VBt(s),c=await GBt({sshUrl:l,httpsUrl:u,targetDir:a,extraArgs:i?["--branch",i]:[]});if(!c.success)return{success:!1,error:`Failed to clone '${s}': ${c.error}`};let{manifest:d}=d9(a),p=o,m=typeof d?.name=="string"?OPr(d.name):null;if(m&&m!==o){let f=Tw(e,m);if(!Cw(f))try{MFo(a,f),p=m}catch{}}return await YBt(Tw(e,p)),{success:!0,marketplaceId:p}}function Aq(e,t){let n=Tw(e,t);if(!QFo(e,n))return{success:!1,error:`Refusing to remove '${t}': path is outside the marketplaces directory.`};if(!Cw(n))return{success:!1,error:`Marketplace '${t}' not found.`};try{return PFo(n,{recursive:!0,force:!0}),{success:!0}}catch(r){return{success:!1,error:`Failed to remove '${t}': ${r instanceof Error?r.message:String(r)}`}}}async function VPr(e){if(!Cw(Tw(e,".git")))return{success:!1,notGitRepo:!0,error:"Not a git repository"};try{return await BPr("git",["pull"],{cwd:e,env:{...process.env,GIT_TERMINAL_PROMPT:"0"}}),await YBt(e),{success:!0}}catch(t){return{success:!1,error:t instanceof Error?t.message:String(t)}}}async function GPr(e){let t=!1;for(let n of e){if(!Cw(n))continue;let r;try{r=OFo(n)}catch{continue}for(let i of r){let s=Tw(n,i);if(!$Fo(s))continue;(await YBt(s)).some(a=>a.status==="cloned")&&(t=!0)}}return t}var BPr,LPr,ZVe=C(()=>{"use strict";NPr();HVe();BPr=LFo(kFo),LPr=".plugin-cache"});import{readFileSync as YFo}from"node:fs";import{join as HFo}from"node:path";function jVe(e){let t=HFo(e,"hooks","hooks.json"),n;try{n=YFo(t,"utf-8")}catch{return{diagnostics:[]}}let r;try{r=JSON.parse(n)}catch(s){return{diagnostics:[`failed to parse hooks/hooks.json: ${s.message}`]}}return!r||typeof r!="object"||Array.isArray(r)?{diagnostics:["hooks/hooks.json must be a JSON object"]}:{config:zI(r),diagnostics:[]}}var HBt=C(()=>{"use strict";q2()});import{existsSync as ZFo,lstatSync as jFo,readdirSync as YPr,realpathSync as WPr,statSync as zFo}from"node:fs";import{basename as $Pr,isAbsolute as ZBt,join as _he,relative as HPr,resolve as jBt}from"node:path";function zBt(e,t){let n=[],r=[],i=[],s=new Map;for(let o of new Set(e))for(let a of XFo(o,t,r)){let l=s.get(a.id);if(l!==void 0){i.push({id:a.id,shadowedRoot:o,winnerRoot:l});continue}s.set(a.id,o),n.push(a)}for(let[o,a]of Object.entries(t))a&&!s.has(o)&&r.push(`enabledPlugins["${o}"] = true but no plugin with that id was found in any marketplace root`);return{plugins:n,globalDiagnostics:r,shadowedPlugins:i}}function XFo(e,t,n){let r=[];if(!ZFo(e))return r;let i=d9(e);if(!i.manifest)for(let o of i.diagnostics)o.startsWith("no marketplace manifest found")||n.push(`[${$Pr(e)}] ${o}`);if(i.manifest)return QPr(e,$Pr(e),t,r,n),r;let s;try{s=YPr(e)}catch(o){return n.push(`failed to read marketplaces directory ${e}: ${o.message}`),r}for(let o of s){let a=_he(e,o);She(a)&&QPr(a,o,t,r,n)}return r}function QPr(e,t,n,r,i){let s=d9(e);if(!s.manifest){for(let u of s.diagnostics)i.push(`[${t}] ${u}`);return}let o=r5o(s.manifest.name,t),a=n5o(e,s.manifest.metadata?.pluginRoot),l=Array.isArray(s.manifest.plugins)?s.manifest.plugins:[];l.length===0&&i.push(`[${o}] marketplace.json has no plugins[] entries`);for(let u of l){let c=KFo(u,e,a,o,n);c&&r.push(c)}for(let u of s.diagnostics)i.push(`[${o}] ${u}`)}function KFo(e,t,n,r,i){let s=typeof e.name=="string"?p9(e.name):void 0;if(!s)return;let o=`${s}@${r}`,a=i[o]===!0,l=[],u=t5o(e.source,s,t,n,l);return u?JFo(o,r,s,u,a,l,t):{id:o,marketplace:r,name:s,enabled:a,commandsDir:void 0,skillsDir:void 0,hooksConfig:void 0,agentsDirPresent:!1,diagnostics:l}}function qFo(e,t){let n=[],r;try{r=YPr(e).sort()}catch(s){return t.push(`failed to read agents directory: ${s.message}`),n}let i=[];for(let s of r){if(!s.endsWith(".md"))continue;let o=_he(e,s);try{if(!jFo(o).isFile()){i.push(s);continue}}catch(a){t.push(`failed to stat agent file ${s}: ${a.message}`);continue}n.push(o)}return i.length>0&&t.push(`ignoring non-regular agent file(s) under agents/ (symlinks / dirs / devices are not followed): ${i.join(", ")}`),n}function JFo(e,t,n,r,i,s,o){let a=_he(r,"commands"),l=_he(r,"skills"),u=_he(r,"agents"),c=i5o(a,r,s),d=She(l)?l:void 0,p=She(u),m=p&&i?qFo(u,s):void 0,f=jVe(r);for(let h of f.diagnostics)s.push(h);return{id:e,marketplace:t,name:n,root:r,marketplacePath:jBt(o),enabled:i,commandsDir:c,skillsDir:d,hooksConfig:f.config,agentsDirPresent:p,agentFiles:m,diagnostics:s}}function e5o(e,t,n,r){let i=QBt(e);if(!i){let o=e.source;r.push(`source kind "${typeof o=="string"?o:"object"}" is not supported; install the plugin manually as a relative directory`);return}let s=UPr(n,t,i.subdir);if(s)return s;r.push(`source kind "${i.kind}" not fetched yet; run /plugins to clone it (or marketplace update)`)}function t5o(e,t,n,r,i){if(typeof e!="string"){if(e&&typeof e=="object")return e5o(e,t,n,i);i.push("plugin entry has no source field; skipping");return}if(ZBt(e)){i.push(`absolute source "${e}" is not allowed; skipping`);return}let s=e.startsWith("./")?n:r,o=jBt(s,e),a=HPr(n,o);if(a.startsWith("..")||ZBt(a)){i.push(`source "${e}" resolves outside the marketplace root; skipping`);return}if(!She(o)){i.push(`source "${e}" does not point to an existing directory (looked at ${o})`);return}return o}function n5o(e,t){return typeof t!="string"||t.length===0?e:jBt(e,t)}function r5o(e,t){if(typeof e=="string"&&e.length>0){let n=p9(e);if(n.length>0)return n}return t}function p9(e){let t="";for(let n of e){let r=n.codePointAt(0);if(r===void 0)continue;let i=r<=31,s=r>=127&&r<=159;i||s||(t+=n)}return t}function i5o(e,t,n){if(She(e))try{let r=HPr(WPr(t),WPr(e));if(r===".."||r.startsWith("../")||r.startsWith("..\\")||ZBt(r)){n.push("commands/ directory resolves outside the plugin root");return}return e}catch{n.push("commands/ directory could not be resolved");return}}function She(e){try{return zFo(e).isDirectory()}catch{return!1}}var vhe=C(()=>{"use strict";ZVe();HBt();HVe()});import{readFileSync as s5o}from"node:fs";import{basename as o5o}from"node:path";function Px(e,t,n=!0){if(e!==void 0){if(typeof e!="string")throw new Dx(`Invalid ${t}: expected a string.`);return n?e.trim():e}}function Dk(e,t){if(e!==void 0){if(typeof e!="boolean")throw new Dx(`Invalid ${t}: expected a boolean.`);return e}}function ZPr(e){return p9(e.trim().replace(/\s+/g,"-").replace(/[^a-zA-Z0-9_-]/g,"-").replace(/-+/g,"-"))}function zVe(e,t){if(typeof e=="string")return e.trim()==="none"?[]:[...new Set(e.split(",").map(n=>n.trim()).filter(Boolean))];if(!Array.isArray(e)||e.some(n=>typeof n!="string"||!n.trim()))throw new Dx(`Invalid ${t}: expected named strings as a list or CSV.`);return[...new Set(e.map(n=>n.trim()))]}function c5o(e){if(e===void 0)return!0;if(typeof e=="boolean")throw new Dx("Boolean skills is unsupported. Use disable_skills: true for opt-out; omit skills for defaults.");let t=zVe(e,"skills");return t.length?t:!1}function u5o(e){switch(e){case"red":case"blue":case"green":case"yellow":case"orange":case"purple":case"pink":case"cyan":return e;default:return}}function XBt(e,t,n){return{name:e,pluginId:t,source:"plugin",description:e,enabled:!1,invalidDefinition:!0,diagnostics:[n],builtinToolNames:[],disallowedTools:[],extensions:!1,skills:!1,systemPrompt:"",promptMode:"append"}}function d5o(e){if(typeof e=="string")return l5o.includes(e)?e:void 0}function p5o(e){return typeof e=="number"&&e>=0?e:void 0}function m5o(e){if(e==="user"||e==="project"||e==="local")return e}function f5o(e){if(e==null||e===!0)return!0;if(e===!1||e==="none")return!1;let t=zVe(e,"extensions");return t.length>0?t:!1}function h5o(e,t){let n=o5o(e,".md"),r=ZPr(n),i;try{i=s5o(e,"utf-8")}catch{return XBt(r,t,"Custom-agent file could not be read.")}try{let{frontmatter:s,body:o}=ux(i);if(!s||typeof s!="object"||Array.isArray(s))throw new Dx("Invalid frontmatter mapping.");if(r=ZPr(Px(s.name,"name")||n),!r)throw new Dx("Invalid name: a non-empty identity is required.");for(let[a,l]of Object.entries({disallowed_tools:"Use disabled_tools instead.",prompt_mode:"Use replace_system_prompt: false for append or true for replace.",inherit_skills:"Use disable_skills for opt-out or skills for named selection."}))if(Object.hasOwn(s,a))throw new Dx(`Removed frontmatter field ${a}. ${l}`);return b5o({fm:s,body:o,name:r,pluginId:t})}catch(s){return XBt(r,t,s instanceof Dx?s.message:"Invalid custom-agent definition.")}}function g5o(e){let t=Px(e.thinking,"thinking"),n=d5o(t),r=u5o(e.color),i=[];return e.color!==void 0&&!r&&i.push("Invalid color: expected a supported terminal label color."),t!==void 0&&n===void 0&&i.push("Invalid thinking: expected a supported thinking level. Model default retained."),{color:r,thinking:n,diagnostics:i.length?i:void 0}}function b5o({fm:e,body:t,name:n,pluginId:r}){let i=Dk(e.replace_system_prompt,"replace_system_prompt")??!1;if(i&&!t.trim())throw new Dx("replace_system_prompt requires a non-empty Markdown body.");let s=Dk(e.disable_skills,"disable_skills")??!1,o=c5o(e.skills);return{name:n,displayName:Px(e.display_name,"display_name")||n,description:Px(e.description,"description")||n,...g5o(e),toolDescription:Px(e.tool_description,"tool_description")||void 0,instructionDescription:Px(e.instruction_description,"instruction_description")||void 0,providerModel:Px(e.provider_model,"provider_model",!1),providerApiKey:Px(e.provider_api_key,"provider_api_key",!1),providerBaseUrl:Px(e.provider_base_url,"provider_base_url",!1),builtinToolNames:e.tools===void 0?[...a5o]:zVe(e.tools,"tools"),disallowedTools:e.disabled_tools===void 0?void 0:zVe(e.disabled_tools,"disabled_tools"),extensions:f5o(e.extensions??e.inherit_extensions),skills:s?!1:o,disableSkills:s,disableRules:Dk(e.disable_rules,"disable_rules")??!1,disableWorkspaceGuidelines:Dk(e.disable_workspace_guidelines,"disable_workspace_guidelines")??!1,model:Px(e.model,"model"),maxTurns:p5o(e.max_turns),systemPrompt:t.trim(),replaceSystemPrompt:i,promptMode:i?"replace":"append",inheritContext:Dk(e.inherit_context,"inherit_context"),runInBackground:Dk(e.run_in_background,"run_in_background"),isolated:Dk(e.isolated,"isolated"),memory:m5o(e.memory),isolation:e.isolation==="worktree"?"worktree":void 0,enabled:Dk(e.enabled,"enabled")??!0,hidden:Dk(e.hidden,"hidden")??!1,finishTool:Px(e.finish_tool,"finish_tool"),source:"plugin",pluginId:r}}function zPr(e){let t=new Map,n=[];if(!e.agentFiles||e.agentFiles.length===0)return{agents:t,diagnostics:n};let r=new Map;for(let i of e.agentFiles){let s=h5o(i,e.id);n.push(...s.diagnostics??[]);let o=s.name.toLowerCase();if(r.has(o)){let a=r.get(o)??s.name,l="Duplicate agent identity in the same directory.";n.push(l),t.set(a,XBt(a,e.id,l));continue}t.set(s.name,s),r.set(o,s.name)}return{agents:t,diagnostics:n}}var a5o,l5o,jPr,Dx,XPr=C(()=>{"use strict";Ms();vhe();a5o=["read","bash","edit","write","grep","find","ls"],l5o=["off","minimal","low","medium","high","xhigh"],jPr=["general-purpose","explore","plan"],Dx=class extends Error{}});import{lstatSync as y5o,readFileSync as A5o,realpathSync as KPr}from"node:fs";import{isAbsolute as E5o,join as _5o,relative as S5o}from"node:path";function Eq(e,t){let n=e;for(let r of v5o){let i=`\${${r}}`;n.includes(i)&&(n=n.split(i).join(t))}return n}function KBt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function qPr(e){if(!e)return;let t={};for(let[n,r]of Object.entries(e))r!=null&&(t[n]=String(r));return Object.keys(t).length>0?t:void 0}function x5o(e){if(e.type==="stdio"||e.type==="http"||e.type==="sse")return e.type;if(e.url)return"http";if(e.command)return"stdio"}function C5o(e,t){let n=x5o(t);if(!n)throw new Error(`MCP server "${e}" must declare a 'command' (stdio) or 'url' (http/sse) property`);if(n==="http"||n==="sse"){if(!t.url)throw new Error(`MCP server "${e}" has type "${n}" but no 'url' property`);let a=typeof t.clientId=="string"?t.clientId.trim():void 0;return{type:n,name:e,disabled:t.disabled,url:t.url,headers:qPr(t.headers),auth:t.auth==="oauth"?"oauth":void 0,...a?{clientId:a}:{},cwd:t.cwd,timeoutMs:t.timeoutMs}}let r=t.command;if(!r)throw new Error(`MCP server "${e}" has type "stdio" but no 'command' property`);let i=Array.isArray(t.args)?t.args.map(a=>String(a)):[],s=t.useShellInterpolation??!0,o=s&&i.length>0?`${r} ${i.join(" ")}`:r;return{type:"stdio",name:e,disabled:t.disabled,command:o,args:s?[]:i,env:qPr(t.env),cwd:t.cwd,timeoutMs:t.timeoutMs,useShellInterpolation:s}}function JPr(e,t){if(!e)return;let n={};for(let[r,i]of Object.entries(e))n[r]=Eq(i,t);return n}function T5o(e,t){return e.type==="stdio"?{...e,command:Eq(e.command,t),args:e.args.map(n=>Eq(n,t)),env:JPr(e.env,t),cwd:e.cwd?Eq(e.cwd,t):void 0}:{...e,url:Eq(e.url,t),headers:JPr(e.headers,t),cwd:e.cwd?Eq(e.cwd,t):void 0}}function I5o(e,t){let n=_5o(e,".mcp.json"),r;try{r=y5o(n)}catch(i){if(i?.code==="ENOENT")return;t.push(`failed to stat .mcp.json: ${i.message}`);return}if(r.isSymbolicLink()){t.push(".mcp.json is a symlink; refusing to follow it out of the plugin root");return}if(!r.isFile()){t.push(".mcp.json is not a regular file; skipping");return}try{let i=KPr(e),s=KPr(n),o=S5o(i,s);if(o.startsWith("..")||E5o(o)){t.push(".mcp.json resolves outside the plugin root; skipping");return}}catch(i){t.push(`failed to resolve .mcp.json real path: ${i.message}`);return}try{return A5o(n,"utf-8")}catch(i){t.push(`failed to read .mcp.json: ${i.message}`);return}}function XVe(e){let t=[];if(!e.root)return{servers:[],diagnostics:t};let n=I5o(e.root,t);if(n===void 0)return{servers:[],diagnostics:t};let r;try{r=JSON.parse(n)}catch(o){return t.push(`failed to parse .mcp.json: ${o.message}`),{servers:[],diagnostics:t}}if(!KBt(r))return t.push(".mcp.json must be a JSON object"),{servers:[],diagnostics:t};let i=r.mcpServers;if(!KBt(i))return t.push('.mcp.json must contain an "mcpServers" object'),{servers:[],diagnostics:t};let s=[];for(let[o,a]of Object.entries(i)){let l=`${e.id}/${p9(o)}`;if(!KBt(a)){t.push(`MCP server "${l}" must be a JSON object`);continue}try{let u=C5o(l,a);s.push(T5o(u,e.root))}catch(u){t.push(u instanceof Error?u.message:String(u))}}return{servers:s,diagnostics:t}}var v5o,eDr,qBt=C(()=>{"use strict";vhe();v5o=["CLAUDE_PLUGIN_ROOT","AUGMENT_PLUGIN_ROOT","AUGGIE_PLUGIN_ROOT"];eDr="hermes:mcp:register-server-source"});function tDr(e,t,n){let r=gi.create(e,t,n),i={};for(let o of[r.getVfsOrgSettings(),r.getVfsSpaceSettings(),r.getVfsUserSettings(),r.getSettings()])for(let[a,l]of Object.entries(o.enabledPlugins??{}))typeof l=="boolean"&&(i[a]=l);let s=r.drainErrors().map(({scope:o,error:a})=>`failed to load ${o} settings: ${a.message}; enabledPlugins entries from this scope will be ignored`);return{enabled:i,diagnostics:s}}var nDr=C(()=>{"use strict";Ms()});var rDr,iDr=C(()=>{"use strict";rDr="hermes:subagents:register-agent-source"});import{lstatSync as w5o,readdirSync as R5o,readFileSync as JBt}from"node:fs";import{basename as N5o,dirname as k5o,extname as O5o,isAbsolute as M5o,join as Bx,parse as P5o,relative as _q,resolve as xhe,sep as eLt}from"node:path";function KVe(e){return typeof e=="string"&&qVe(e)||void 0}function sDr(e,t){let n=_q(e,t);return!M5o(n)&&n!==".."&&!n.startsWith(`..${eLt}`)}function D5o(e,t,n){let r=n?xhe(n):P5o(e).root;if(!sDr(r,e)||!sDr(e,t))throw new Error("Plugin metadata path is outside the plugin root");let i=r,s;for(let o of["",..._q(r,t).split(eLt).filter(Boolean)]){i=Bx(i,o);try{s=w5o(i)}catch(a){if(a.code==="ENOENT")return;throw a}if(s.isSymbolicLink())throw new Error("Plugin metadata path contains a symbolic link")}return s}function Sq(e){let t={agents:[],commands:[],rules:[],mcpServers:[],hooks:[],skills:[],diagnostics:[]};if(!e.root)return t.diagnostics.push("Plugin source is unavailable"),t;let n=xhe(e.root),r=d=>D5o(n,d,e.marketplacePath),i=Xz(),s=d=>{let p=`Could not read plugin ${d} metadata`;t.diagnostics.includes(p)||t.diagnostics.push(p)};try{if(!r(n)?.isDirectory())throw new Error("Plugin root is unavailable")}catch{return s("contents"),t}let o=(d,p,m,f)=>{let h={name:qVe(p)};try{if(!r(d)?.isFile())throw new Error("Plugin metadata file is unavailable");let{frontmatter:g}=ux(JBt(d,"utf8"));if(!g||typeof g!="object"||Array.isArray(g))throw new Error("Invalid plugin frontmatter");f&&(h.name=KVe(g.name)??h.name),h.description=KVe(g.description)}catch{s(m)}return h},a=(d,p,m)=>{let f=O5o(p);if(!(f===".md"||(d==="commands"||d==="rules")&&f===".txt")||d==="skills"&&k5o(p)!==m)return;let g=_q(m,p),b=d==="rules"?g:g.slice(0,-f.length).split(eLt).join(":");t[d].push(o(p,b,d,d==="agents"||d==="skills"))},l=(d,p,m)=>{try{let f=r(p);if(d==="skills"&&KB(i,_q(m,p),f?.isDirectory()))return;f?.isDirectory()?d!=="agents"&&c(d,p,m):f?.isFile()&&a(d,p,m)}catch{s(d)}},u=(d,p)=>{for(let m of zz){let f=Bx(d,m);try{let h=r(f);if(!h)continue;if(!h.isFile())throw new Error("Invalid skill ignore file");Kz(i,JBt(f,"utf8"),_q(p,d))}catch{s("skills")}}},c=(d,p,m=p)=>{try{let f=r(p);if(!f)return;if(!f.isDirectory())throw new Error("Plugin metadata directory is invalid");if(d==="skills"){u(p,m);let h=Bx(p,"SKILL.md");if(!KB(i,_q(m,h))&&r(h)?.isFile()){t.skills.push(o(h,N5o(p),d,!0));return}}for(let h of R5o(p).sort())(d==="commands"||d==="skills")&&XB(h)||l(d,Bx(p,h),m)}catch{s(d)}};return c("agents",Bx(n,"agents")),c("commands",xhe(e.commandsDir??Bx(n,"commands"))),c("rules",Bx(n,"rules")),c("skills",xhe(e.skillsDir??Bx(n,"skills"))),t.hooks=F5o(n,r,s),t.mcpServers=U5o(e,r,s),Object.assign(t,L5o(n,r,s)),t}function B5o(e){let t={};for(let s of["description","version","homepage"]){let o=KVe(e[s]);o&&(t[s]=o)}let n=e.author,r=n&&typeof n=="object"&&!Array.isArray(n)?n.name:n,i=KVe(r);return i&&(t.author=i),t}function L5o(e,t,n){for(let r of[".augment-plugin",".claude-plugin"])try{let i=Bx(e,r,"plugin.json"),s=t(i);if(!s)continue;if(!s.isFile())throw new Error("Invalid plugin manifest file");let o=JSON.parse(JBt(i,"utf8"));if(!o||typeof o!="object"||Array.isArray(o))throw new Error("Invalid plugin manifest");return B5o(o)}catch{n("manifest")}return{}}function F5o(e,t,n){let r=[];try{let i=t(Bx(e,"hooks","hooks.json"));if(i){if(!i.isFile())throw new Error("Invalid plugin hooks file");let{config:s,diagnostics:o}=jVe(e);(!s||o.length)&&n("hook");for(let[a,l]of Object.entries(s??{}).sort(([u],[c])=>u.localeCompare(c)))for(let u of l??[])r.push({name:qVe(`${a}[${u.matcher??".*"}]`),description:"Command hook"})}}catch{n("hook")}return r}function U5o(e,t,n){if(!e.root)return[];let r=xhe(e.root);try{let i=t(Bx(r,".mcp.json"));if(i){if(!i.isFile())throw new Error("Invalid plugin MCP file");let{servers:s,diagnostics:o}=XVe(e);return o.length&&n("MCP server"),s.map(a=>({name:qVe(a.name.slice(e.id.length+1)),description:`${a.type==="stdio"?"stdio":a.type.toUpperCase()} server`})).sort((a,l)=>a.name.localeCompare(l.name))}}catch{n("MCP server")}return[]}var qVe,oDr=C(()=>{"use strict";Ms();vhe();HBt();qBt();qVe=e=>p9(e.replace(/\s+/g," ")).trim()});var The={};li(The,{addMarketplace:()=>yq,default:()=>tGe,getDiscoveredMarketplaces:()=>Che,getDiscoveredPlugins:()=>Lx,getInteractivePluginDiagnostics:()=>X5o,getPluginDetails:()=>Sq,getPluginDiagnostics:()=>Fx,getV2MarketplacesRoot:()=>xq,removeMarketplace:()=>Aq,updateMarketplace:()=>VPr});import{join as YW,resolve as V5o}from"node:path";import{existsSync as G5o,readdirSync as W5o,statSync as $5o}from"node:fs";function Y5o(){return globalThis[aDr]??{}}function H5o(e){globalThis[aDr]=e}function tGe(e){u1=[],eGe=[],JVe=[],tLt=[],vq=[];let t=!1,n,r=new Map,i,s,o=new Map,a;e.events.on(L9e,w=>{n=w.register}),e.events.on(rDr,w=>{i=w.register}),e.events.on(eDr,w=>{a=w.registerServerSource}),e.events.on(Q5o,w=>{H5o(w?.scopes??{})});function l(w,T,D=[]){let M=Y5o(),{enabled:P,diagnostics:O}=tDr(w,T,M),k=[...new Set(D.map(ne=>V5o(w,ne)))],L=zBt(k,{}),F={...P};for(let ne of L.plugins)F[ne.id]=!0;let Q=YW(CA(),"plugins","marketplaces"),U=YW(T,"plugins","marketplaces"),J=[M.user,M.space,M.org].flatMap(ne=>ne?[YW(ne,".augment","plugins","marketplaces")]:[]),ie=zBt([...k,Q,U,...J],F);for(let ne of ie.shadowedPlugins)pE.debug(`plugin "${ne.id}" from ${ne.shadowedRoot} is shadowed by the higher-precedence root ${ne.winnerRoot}`);return ie.globalDiagnostics=[...O,...ie.globalDiagnostics],u1=ie.plugins,eGe=ie.globalDiagnostics,t=!0,ie}function u(w,T,D=[]){t||l(w,T,D)}function c(){let w=new Map,T=new Map;JVe=[];let D=[...u1.filter(M=>M.enabled)].sort((M,P)=>M.id.localeCompare(P.id));for(let M of D){let{agents:P,diagnostics:O}=zPr(M);for(let k of O)pE.warn(`[${M.id}] ${k}`),JVe.push({type:"warning",message:`[${M.id}] ${k}`,path:M.root});for(let[k,L]of P)d(M.id,k,L,w,T)}o=w}function d(w,T,D,M,P){let O=T.toLowerCase(),k=P.get(O);if(k){let L=k.name===T?`"${T}"`:`"${T}" (case-insensitive collision with "${k.name}")`;pE.warn(`[${w}] plugin-contributed agent ${L} shadowed by earlier plugin ${k.pluginId}; ignoring`);return}jPr.includes(O)&&pE.warn(`[${w}] plugin-contributed agent "${T}" shadows the built-in default agent of the same name; the plugin's definition will be used for every Agent-tool invocation across this session`),M.set(T,D),P.set(O,{pluginId:w,name:T})}function p(){if(!i)return;s?.(),s=i({getAgents:()=>o,getDiagnostics:()=>JVe})}function m(){let w=[];vq=[];let T=[...u1.filter(D=>D.enabled)].sort((D,M)=>D.id.localeCompare(M.id));for(let D of T){let{servers:M,diagnostics:P}=XVe(D);for(let O of P)pE.warn(`[${D.id}] ${O}`),vq.push({type:"warning",message:`[${D.id}] ${O}`,path:D.root});for(let O of M)w.push(O)}tLt=w}function f(){if(!a)return;a({source:"plugin",getServers:()=>tLt,getDiagnostics:()=>vq})}function h(){if(n){for(let w of r.values())w();r.clear();for(let w of u1){if(!w.enabled)continue;let T=Z5o(w);T&&r.set(w.id,n(T))}}}function g(){for(let w of r.values())w();r.clear()}function b(){let w=[],T=[];for(let D of u1){if(!D.enabled){for(let M of D.diagnostics)pE.debug(`[${D.id}] ${M}`);continue}D.root&&D.commandsDir&&T.push({path:D.commandsDir,commandNamespace:`${D.name}--${D.marketplace}`}),D.root&&D.skillsDir&&w.push(D.skillsDir);for(let M of D.diagnostics)pE.warn(`[${D.id}] ${M}`)}return{skillPaths:w,promptPaths:T}}e.on("resources_discover",(w,T)=>{t=!1;let D=l(w.cwd,w.agentDir,T.pluginDirs),{skillPaths:M,promptPaths:P}=b();for(let k of D.globalDiagnostics)pE.warn(k);let O=u1.filter(k=>k.enabled).length;return u1.length>0&&pE.info(`Discovered ${u1.length} plugin(s); ${O} enabled`),h(),c(),p(),x(),m(),f(),v(),{skillPaths:M,promptPaths:P}}),e.on("session_start",(w,T)=>{u(T.cwd,T.agentDir,T.pluginDirs),h(),c(),p(),_(),m(),f();let D=YW(CA(),"plugins","marketplaces"),M=YW(T.agentDir,"plugins","marketplaces");GPr([D,M]).then(P=>{P&&(t=!1,l(T.cwd,T.agentDir,T.pluginDirs),h(),c(),p(),m(),f())}).catch(P=>{pE.debug(`background plugin source fetch failed: ${P instanceof Error?P.message:String(P)}`)})}),e.on("session_shutdown",()=>{g(),s?.(),s=void 0,o=new Map});let A=!1,y=!1,S=!1;function _(){!n&&!A&&(A=!0,pE.warn("@hermes/hooks did not register a hook listener; plugin hooks will not run. This usually means @hermes/hooks was removed from the built-in extension list."))}function x(){!i&&!y&&(y=!0,pE.debug("@hermes/subagents did not register an agent source; plugin-contributed subagents will not be available (expected when --disable-subagents is set)."))}function v(){!a&&!S&&(S=!0,pE.debug("@hermes/mcp did not register a server source; plugin-contributed MCP servers will not be loaded."))}}function Z5o(e){if(e.root)return{source:e.id,isEnabled:()=>e.enabled,getConfig:()=>e.hooksConfig,env:j5o(e.root),postToolUsePrefix:`Plugin ${e.id} hook`,backgroundLabel:t=>`[${e.id}] ${t} hook`,blockedFallbackReason:"Blocked by plugin hook"}}function j5o(e){return{PLUGIN_ROOT:e,CLAUDE_PLUGIN_ROOT:e,AUGMENT_PLUGIN_ROOT:e,AUGGIE_PLUGIN_ROOT:e}}function Lx(){return u1}function xq(e){return YW(e,"plugins","marketplaces")}function Che(e){let t=xq(e);if(!G5o(t))return[];let n;try{n=W5o(t)}catch{return[]}let r=[];for(let i of n){let s=YW(t,i);try{if(!$5o(s).isDirectory())continue}catch{continue}let{manifest:o}=d9(s);if(!o)continue;let a=typeof o.name=="string"&&o.name.length>0?o.name:i;r.push({dir:i,name:a,path:s})}return r}function Fx(){let e=[];for(let t of u1)for(let n of t.diagnostics)e.push({type:"warning",message:`[${t.id}] ${n}`,path:t.root});for(let t of eGe)e.push({type:"warning",message:t});for(let t of vq)e.push(t);return e}function X5o(){let e=[],t=new Set,n=0;for(let r of u1){let i=!1;for(let s of r.diagnostics){let o=r.enabled?null:z5o.exec(s);if(o?.[1]){t.add(o[1]),i=!0;continue}e.push({type:"warning",message:`[${r.id}] ${s}`,path:r.root})}i&&n++}if(n>0){let r=[...t].sort().join(", "),i=n===1?"plugin":"plugins";e.push({type:"warning",message:`${n} disabled ${i} use unsupported source kinds (${r}); enable one to see details, or re-run with --check-startup`})}for(let r of eGe)e.push({type:"warning",message:r});for(let r of vq)e.push(r);return e}var pE,Q5o,aDr,u1,eGe,JVe,tLt,vq,z5o,ww=C(()=>{"use strict";Ms();q2();en();XPr();vhe();ZVe();HVe();qBt();nDr();iDr();oDr();ZVe();pE=tt.child({prefix:"pi-plugins"}),Q5o="augment:vfs-scopes",aDr=Symbol.for("__pi_plugins_vfs_scopes__");u1=[],eGe=[],JVe=[],tLt=[],vq=[];z5o=/^source kind "([^"]+)" (?:is not supported; install the plugin manually as a relative directory|not fetched yet; run \/plugins to clone it \(or marketplace update\))$/});function K5o(e){return{...e,execute:(t,n,r,i,s)=>{let o=vwe(e.name);if(!o)throw new Error(`Cloud tool "${e.name}" is unavailable`);return o.execute(t,n,r,i,s)}}}function nLt(e){for(let t of Qxn())e.registerTool(K5o(t))}var lDr=C(()=>{"use strict";RH()});function rGe(){let e=globalThis;return e[cDr]??=new Map,e[cDr]}function nGe(){let e=globalThis;return e[uDr]??=new Map,e[uDr]}function iGe(){return[...rGe().values()]}function sGe(e){return rGe().get(e)}function pDr(e){return nGe().get(e)}function m9(e,t){rGe().set(e.name,e),t===void 0?nGe().delete(e.name):nGe().set(e.name,t)}function Cq(e,t){let n=rGe();(t===void 0||n.get(e)===t)&&(n.delete(e),nGe().delete(e))}function mDr(e){Reflect.set(e,dDr,!0)}function oGe(e){return Reflect.get(e,dDr)===!0}var cDr,uDr,dDr,Bk=C(()=>{"use strict";cDr=Symbol.for("__hermes_mcp_tool_registry__"),uDr=Symbol.for("__hermes_mcp_tool_server_registry__"),dDr=Symbol.for("__hermes_mcp_extension_factory__")});function q5o(e){return{...e,execute:(t,n,r,i,s)=>{let o=sGe(e.name);if(!o)throw new Error(`MCP tool "${e.name}" is unavailable`);return o.execute(t,n,r,i,s)}}}function aGe(e){for(let t of iGe())e.registerTool(q5o(t))}var fDr=C(()=>{"use strict";Bk()});import{existsSync as J5o}from"node:fs";import{homedir as Ihe}from"node:os";import{dirname as rLt,join as Ux,resolve as gDr}from"node:path";import{fileURLToPath as eUo}from"node:url";function bDr(){let e=process.env.PI_PACKAGE_DIR;if(e)return e==="~"?Ihe():e.startsWith("~/")?Ihe()+e.slice(1):e;let t=hDr;for(;t!==rLt(t);){if(J5o(Ux(t,"package.json")))return t;t=rLt(t)}return hDr}function lGe(){return gDr(Ux(bDr(),"docs"))}function cGe(){return gDr(Ux(bDr(),"CHANGELOG.md"))}function _Dr(e){return e==="~"?Ihe():e.startsWith("~/")?Ihe()+e.slice(1):e}function Rw(){let e=process.env.AUGMENT_CACHE_DIR;return e?_Dr(e):Ux(Ihe(),".augment")}function nr(){let e=process.env[iLt];return e?_Dr(e):Rw()}function Nhe(){return Ux(nr(),"themes")}function SDr(){return Ux(nr(),"models.json")}function vDr(){return Ux(nr(),"auth.json")}function xDr(){return Ux(nr(),"settings.json")}function f9(){return Rw()}function Tq(){return Ux(nr(),"bin")}function CDr(){return Ux(nr(),whe)}function TDr(){return Ux(nr(),`${ei}-debug.log`)}var tUo,hDr,ei,Ps,whe,Rhe,yDr,nUo,Gs,ADr,EDr,iLt,Ws=C(()=>{"use strict";cft();tUo=eUo(import.meta.url),hDr=rLt(tUo);ei=aD.piConfig?.name||"auggie",Ps=aD.piConfig?.configDir||".augment",whe="sessions-v2",Rhe=ei,yDr="Auggie Coding Agent",nUo="1.2.0-prerelease.202611021510",Gs=nUo??aD.version,ADr="b6c75130ce1c29f9e22890824491dfdd17042373",EDr="2026-11-02T23:10:44Z",iLt=`${ei.toUpperCase()}_CODING_AGENT_DIR`});var wDr,IDr=C(()=>{wDr={$schema:"https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",name:"ansi",vars:{red:1,green:2,yellow:3,blue:4,magenta:5,cyan:6,gray:8,brightMagenta:13},colors:{accent:"magenta",border:"gray",borderAccent:"magenta",borderMuted:"gray",success:"green",error:"red",warning:"yellow",muted:"gray",dim:"gray",text:"",thinkingText:"gray",selectedBg:"gray",userMessageBg:"",userMessageText:"",customMessageBg:"",customMessageText:"",customMessageLabel:"magenta",toolPendingBg:"",toolSuccessBg:"",toolErrorBg:"",toolTitle:"magenta",toolOutput:"gray",mdHeading:"magenta",mdLink:"magenta",mdLinkUrl:"gray",mdCode:"magenta",mdCodeBlock:"green",mdCodeBlockBorder:"gray",mdQuote:"gray",mdQuoteBorder:"gray",mdHr:"gray",mdListBullet:"magenta",toolDiffAdded:"green",toolDiffRemoved:"red",toolDiffContext:"gray",syntaxComment:"gray",syntaxKeyword:"blue",syntaxFunction:"yellow",syntaxVariable:"cyan",syntaxString:"green",syntaxNumber:"magenta",syntaxType:"cyan",syntaxOperator:"",syntaxPunctuation:"",thinkingOff:"gray",thinkingMinimal:"gray",thinkingLow:"blue",thinkingMedium:"cyan",thinkingHigh:"magenta",thinkingXhigh:"brightMagenta",bashMode:"green"},export:{pageBg:"#18181e",cardBg:"#1e1e24",infoBg:"#3c3728"}}});var Nw,RDr=C(()=>{Nw={$schema:"https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",name:"dark",vars:{cyan:"#00d7ff",blue:"#5f87ff",green:"#b5bd68",red:"#cc6666",yellow:"#ffff00",gray:"#808080",dimGray:"#666666",darkGray:"#505050",accent:"#8abeb7",selectedBg:"#3a3a4a",userMsgBg:"#343541",toolPendingBg:"#282832",toolSuccessBg:"#283228",toolErrorBg:"#3c2828",customMsgBg:"#2d2838"},colors:{accent:"accent",border:"blue",borderAccent:"cyan",borderMuted:"darkGray",success:"green",error:"red",warning:"yellow",muted:"gray",dim:"dimGray",text:"",thinkingText:"gray",agentRed:"#CC6666",agentBlue:"#81A2BE",agentGreen:"#B5BD68",agentYellow:"#F0C674",agentOrange:"#CE9178",agentPurple:"#B294BB",agentPink:"#D183E8",agentCyan:"#8ABEB7",selectedBg:"selectedBg",userMessageBg:"userMsgBg",userMessageText:"",customMessageBg:"customMsgBg",customMessageText:"",customMessageLabel:"#9575cd",toolPendingBg:"toolPendingBg",toolSuccessBg:"toolSuccessBg",toolErrorBg:"toolErrorBg",toolTitle:"#b294bb",toolOutput:"gray",mdHeading:"#f0c674",mdLink:"#81a2be",mdLinkUrl:"dimGray",mdCode:"accent",mdCodeBlock:"green",mdCodeBlockBorder:"gray",mdQuote:"gray",mdQuoteBorder:"gray",mdHr:"gray",mdListBullet:"accent",toolDiffAdded:"green",toolDiffRemoved:"red",toolDiffContext:"gray",syntaxComment:"#6A9955",syntaxKeyword:"#569CD6",syntaxFunction:"#DCDCAA",syntaxVariable:"#9CDCFE",syntaxString:"#CE9178",syntaxNumber:"#B5CEA8",syntaxType:"#4EC9B0",syntaxOperator:"#D4D4D4",syntaxPunctuation:"#D4D4D4",thinkingOff:"darkGray",thinkingMinimal:"#6e6e6e",thinkingLow:"#5f87af",thinkingMedium:"#81a2be",thinkingHigh:"#b294bb",thinkingXhigh:"#d183e8",bashMode:"green"},export:{pageBg:"#18181e",cardBg:"#1e1e24",infoBg:"#3c3728"}}});var kDr,NDr=C(()=>{kDr={$schema:"https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",name:"light",vars:{teal:"#5a8080",blue:"#547da7",green:"#588458",red:"#aa5555",yellow:"#9a7326",mediumGray:"#6c6c6c",dimGray:"#767676",lightGray:"#b0b0b0",selectedBg:"#d0d0e0",userMsgBg:"#e8e8e8",toolPendingBg:"#e8e8f0",toolSuccessBg:"#e8f0e8",toolErrorBg:"#f0e8e8",customMsgBg:"#ede7f6"},colors:{accent:"teal",border:"blue",borderAccent:"teal",borderMuted:"lightGray",success:"green",error:"red",warning:"yellow",muted:"mediumGray",dim:"dimGray",text:"",thinkingText:"mediumGray",agentRed:"#AA5555",agentBlue:"#476D94",agentGreen:"#477047",agentYellow:"#8A6822",agentOrange:"#795E26",agentPurple:"#875F87",agentPink:"#8B008B",agentCyan:"#4D7070",selectedBg:"selectedBg",userMessageBg:"userMsgBg",userMessageText:"",customMessageBg:"customMsgBg",customMessageText:"",customMessageLabel:"#7e57c2",toolPendingBg:"toolPendingBg",toolSuccessBg:"toolSuccessBg",toolErrorBg:"toolErrorBg",toolTitle:"",toolOutput:"mediumGray",mdHeading:"yellow",mdLink:"blue",mdLinkUrl:"dimGray",mdCode:"teal",mdCodeBlock:"green",mdCodeBlockBorder:"mediumGray",mdQuote:"mediumGray",mdQuoteBorder:"mediumGray",mdHr:"mediumGray",mdListBullet:"green",toolDiffAdded:"green",toolDiffRemoved:"red",toolDiffContext:"mediumGray",syntaxComment:"#008000",syntaxKeyword:"#0000FF",syntaxFunction:"#795E26",syntaxVariable:"#001080",syntaxString:"#A31515",syntaxNumber:"#098658",syntaxType:"#267F99",syntaxOperator:"#000000",syntaxPunctuation:"#000000",thinkingOff:"lightGray",thinkingMinimal:"#767676",thinkingLow:"blue",thinkingMedium:"teal",thinkingHigh:"#875f87",thinkingXhigh:"#8b008b",bashMode:"green"},export:{pageBg:"#f8f8f8",cardBg:"#ffffff",infoBg:"#fffae6"}}});import*as Gb from"node:fs";import*as dGe from"node:path";function aUo(){let e=process.env.COLORTERM;if(e==="truecolor"||e==="24bit"||process.env.WT_SESSION)return"truecolor";let t=process.env.TERM||"";return t==="dumb"||t===""||t==="linux"||process.env.TERM_PROGRAM==="Apple_Terminal"||t==="screen"||t.startsWith("screen-")||t.startsWith("screen.")?"256color":"truecolor"}function lLt(e){let t=e.replace("#","");if(t.length!==6)throw new Error(`Invalid hex color: ${e}`);let n=Number.parseInt(t.slice(0,2),16),r=Number.parseInt(t.slice(2,4),16),i=Number.parseInt(t.slice(4,6),16);if(Number.isNaN(n)||Number.isNaN(r)||Number.isNaN(i))throw new Error(`Invalid hex color: ${e}`);return{r:n,g:r,b:i}}function sLt(e){let t=Number.POSITIVE_INFINITY,n=0;for(let[r,i]of uGe.entries()){let s=Math.abs(e-i);s<t&&(t=s,n=r)}return n}function lUo(e){let t=Number.POSITIVE_INFINITY,n=0;for(let[r,i]of BDr.entries()){let s=Math.abs(e-i);s<t&&(t=s,n=r)}return n}function MDr(e,t,n,r,i,s){let o=e-r,a=t-i,l=n-s;return o*o*.299+a*a*.587+l*l*.114}function cUo(e,t,n){let r=sLt(e),i=sLt(t),s=sLt(n),o=uGe[r]??0,a=uGe[i]??0,l=uGe[s]??0,u=16+36*r+6*i+s,c=MDr(e,t,n,o,a,l),d=Math.round(.299*e+.587*t+.114*n),p=lUo(d),m=BDr[p]??0,f=232+p,h=MDr(e,t,n,m,m,m),g=Math.max(e,t,n),b=Math.min(e,t,n);return g-b<10&&h<c?f:u}function LDr(e){let{r:t,g:n,b:r}=lLt(e);return cUo(t,n,r)}function FDr(e,t,n){return`\x1B[${e<8?t+e:n+e-8}m`}function PDr(e,t){if(e==="")return"\x1B[39m";if(typeof e=="number")return e<16?FDr(e,30,90):`\x1B[38;5;${e}m`;if(e.startsWith("#")){if(t==="truecolor"){let{r,g:i,b:s}=lLt(e);return`\x1B[38;2;${r};${i};${s}m`}return`\x1B[38;5;${LDr(e)}m`}throw new Error(`Invalid color value: ${e}`)}function uUo(e,t){if(e==="")return"\x1B[49m";if(typeof e=="number")return e<16?FDr(e,40,100):`\x1B[48;5;${e}m`;if(e.startsWith("#")){if(t==="truecolor"){let{r,g:i,b:s}=lLt(e);return`\x1B[48;2;${r};${i};${s}m`}return`\x1B[48;5;${LDr(e)}m`}throw new Error(`Invalid color value: ${e}`)}function cLt(e,t,n=new Set){if(typeof e=="number"||e===""||e.startsWith("#"))return e;if(n.has(e))throw new Error(`Circular variable reference detected: ${e}`);if(!(e in t))throw new Error(`Variable reference not found: ${e}`);n.add(e);let r=t[e];if(r===void 0)throw new Error(`Variable reference not found: ${e}`);return cLt(r,t,n)}function UDr(e,t={}){let n={};for(let[r,i]of Object.entries(e))n[r]=cLt(i,t);return n}function mGe(){let e=new Set(Object.keys(pGe)),t=Nhe();if(Gb.existsSync(t)){let n=Gb.readdirSync(t);for(let r of n)r.endsWith(".json")&&e.add(r.slice(0,-5))}for(let n of zW.keys())e.add(n);return Array.from(e).sort()}function VDr(){let e=Nhe(),t=[];for(let n of Object.keys(pGe))t.push({name:n,path:void 0});if(Gb.existsSync(e)){for(let n of Gb.readdirSync(e))if(n.endsWith(".json")){let r=n.slice(0,-5);t.some(i=>i.name===r)||t.push({name:r,path:dGe.join(e,n)})}}for(let[n,r]of zW.entries())t.some(i=>i.name===n)||t.push({name:n,path:r.sourcePath});return t.sort((n,r)=>n.name.localeCompare(r.name))}function dUo(e,t){if(!ODr.Check(t)){let n=Array.from(ODr.Errors(t)),r=[],i=[];for(let o of n){let l=o.path.match(/^\/colors\/(\w+)$/)?.[1];l&&o.message.includes("Required")?r.push(l):i.push(` - ${o.path}: ${o.message}`)}let s=`Invalid theme "${e}":
|
|
6402
|
+
Show whether the CLI has an active Augment authentication session.`,eFo="Note: Injected credentials remain active and may override the saved session.",tFo="Note: Injected credentials remain active.",nFo="AUGGIE_V2_SEGMENT_WRITE_KEY"});import{readFile as EFo}from"node:fs/promises";import{resolve as _Fo}from"node:path";function xFo(e){let t=[],n;for(let r=0;r<e.length;r+=1){let i=e[r];if(i==="--"){t.push(...e.slice(r));break}if(i===LBt){let s=e[r+1];if(s===void 0||s.startsWith("-")||!s.trim())return{type:"fatal"};n=s,r+=1;continue}if(i.startsWith(`${LBt}=`)){let s=i.slice(LBt.length+1);if(!s.trim())return{type:"fatal"};n=s;continue}t.push(i)}return{type:"success",args:t,candidate:n}}async function vPr(e,t=vFo){let n=xFo(e);if(n.type==="fatal")return{type:"fatal",message:SFo};if(n.candidate===void 0)return{type:"success",args:n.args};let r=n.candidate.trim(),i;if(r.startsWith("{"))i=r;else try{i=await t.readPath(_Fo(process.cwd(),r))}catch{return{type:"fatal",message:FBt}}let s;try{s=JSON.parse(i)}catch{return{type:"fatal",message:FBt}}let o=Ade(s);return o?{type:"success",args:n.args,credentials:o}:{type:"fatal",message:FBt}}var LBt,SFo,FBt,vFo,xPr=C(()=>{"use strict";Ede();LBt="--augment-session-json",SFo="--augment-session-json requires a value",FBt="--augment-session-json value is unusable",vFo={readPath:e=>EFo(e,"utf8")}});import{execFile as CFo}from"node:child_process";import{existsSync as TFo,rmSync as IFo}from"node:fs";import{promisify as wFo}from"node:util";function VBt(e){let t=e.match(/^git@github\.com:(.+?)(?:\.git)?$/);if(t){let r=t[1];return{sshUrl:`git@github.com:${r}.git`,httpsUrl:`https://github.com/${r}.git`}}let n=e.match(/^https?:\/\/github\.com\/(.+?)(?:\.git)?$/);if(n){let r=n[1];return{sshUrl:`git@github.com:${r}.git`,httpsUrl:`https://github.com/${r}.git`}}return{sshUrl:e,httpsUrl:e}}function wPr(e){return e instanceof Error?e.message:String(e)}async function GBt({sshUrl:e,httpsUrl:t,targetDir:n,extraArgs:r=[]}){let i,s=e===t?[{url:e,env:e.startsWith("http")?UBt:CPr}]:[{url:e,env:CPr},{url:t,env:UBt}];for(let o of s)try{return await IPr("git",["clone","--depth","1",...r,o.url,n],{env:o.env}),{success:!0}}catch(a){i=a,TFo(n)&&IFo(n,{recursive:!0,force:!0})}return{success:!1,error:wPr(i)}}function TPr(e,t){return IPr("git",e,{cwd:t,env:UBt})}async function RPr(e,t){try{return await TPr(["fetch","--depth","1","origin",t],e),await TPr(["checkout","FETCH_HEAD"],e),{success:!0}}catch(n){return{success:!1,error:wPr(n)}}}var IPr,CPr,UBt,NPr=C(()=>{"use strict";IPr=wFo(CFo),CPr={...process.env,GIT_TERMINAL_PROMPT:"0",GIT_SSH_COMMAND:"ssh -o BatchMode=yes"},UBt={...process.env,GIT_TERMINAL_PROMPT:"0"}});import{readFileSync as RFo}from"node:fs";import{join as WBt}from"node:path";function d9(e){let t=NFo(e,kPr);return t.manifest||t.diagnostics.length>0?t:{diagnostics:[`no marketplace manifest found (looked for ${kPr.join(", ")})`]}}function NFo(e,t){let n=[];for(let r of t){let i=WBt(e,r),s;try{s=RFo(i,"utf-8")}catch{continue}try{let o=JSON.parse(s);if(o&&typeof o=="object"&&!Array.isArray(o))return{manifest:o,manifestPath:i,diagnostics:n};n.push(`manifest at ${r} is not a JSON object; ignoring`)}catch(o){n.push(`failed to parse manifest at ${r}: ${o.message}`)}}return{diagnostics:n}}var kPr,HVe=C(()=>{"use strict";kPr=[WBt(".augment-plugin","marketplace.json"),WBt(".claude-plugin","marketplace.json")]});import{execFile as kFo}from"node:child_process";import{existsSync as Cw,mkdirSync as MPr,readdirSync as OFo,renameSync as MFo,rmSync as PFo,statSync as DFo}from"node:fs";import{dirname as BFo,isAbsolute as PPr,join as Tw,relative as DPr,resolve as $Bt}from"node:path";import{promisify as LFo}from"node:util";function FPr(e){let t=e.replace(/\.\./g,"").replace(/[/\\]/g,"").replace(/^\.+/,"").trim();return!t||!/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(t)?null:t}function OPr(e){let t=e.replace(/\.\./g,"").replace(/[/\\]/g,"").replace(/^\.+/,"").trim();return!t||!/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(t)?null:t}function FFo(e){let t=e.trim();if(!t)return null;let n=t.match(/^([a-zA-Z0-9_-]+)\/([a-zA-Z0-9_.-]+?)(?:@(.+))?$/);if(n?.[1]&&n[2]){let r=n[1],i=n[2].replace(/\.git$/,"");return{repo:i,cloneUrl:`https://github.com/${r}/${i}`,...n[3]?{ref:n[3]}:{}}}if(/^(https?|ssh|file):\/\/|^git@/.test(t)){let[r,i]=t.split("#");if(!r)return null;let s=r.replace(/\/+$/,""),o=s.split(/[/:]/).pop()?.replace(/\.git$/,"");if(o)return{repo:o,cloneUrl:s,...i?{ref:i}:{}}}return null}function Iw(e){return typeof e=="string"&&e.length>0?e:void 0}function UFo(e,t){let n=Iw(e.repo);return n?{kind:"github",url:`https://github.com/${n.replace(/\.git$/,"")}.git`,...t?{ref:t}:{},...Iw(e.path)?{subdir:Iw(e.path)}:{}}:null}function VFo(e,t){let n=Iw(e.url);return n?{kind:"url",url:n,...t?{ref:t}:{},...Iw(e.path)?{subdir:Iw(e.path)}:{}}:null}function GFo(e,t){let n=Iw(e.url),r=Iw(e.path);return n&&r?{kind:"git-subdir",url:n,subdir:r,...t?{ref:t}:{}}:null}function QBt(e){if(!e||typeof e!="object")return null;let t=e,n=Iw(t.sha)??Iw(t.ref);switch(t.source){case"github":return UFo(t,n);case"url":return VFo(t,n);case"git-subdir":return GFo(t,n);default:return null}}function UPr(e,t,n){let r=FPr(t);if(!r)return;let i=Tw(e,LPr,r);if(!Cw(Tw(i,".git")))return;if(!n)return i;let s=$Bt(i,n),o=DPr(i,s);if(!(o.startsWith("..")||PPr(o)))return Cw(s)?s:void 0}async function WFo(e,t){let n=typeof t.name=="string"?t.name:"",r=QBt(t.source);if(!r)return;let i=FPr(n);if(!i)return{name:n,status:"failed",error:"invalid plugin cache name"};let s=Tw(e,LPr,i);if(Cw(Tw(s,".git")))return{name:n,status:"skipped"};let o=BFo(s);Cw(o)||MPr(o,{recursive:!0});let{sshUrl:a,httpsUrl:l}=VBt(r.url),u=r.kind==="git-subdir",c=await GBt({sshUrl:a,httpsUrl:l,targetDir:s,extraArgs:u?["--filter=blob:none","--sparse"]:[]});if(!c.success)return{name:n,status:"failed",error:c.error};if(r.ref){let d=await RPr(s,r.ref);if(!d.success)return{name:n,status:"failed",error:d.error}}if(u&&r.kind==="git-subdir")try{await BPr("git",["sparse-checkout","set",r.subdir],{cwd:s,env:{...process.env,GIT_TERMINAL_PROMPT:"0"}})}catch(d){return{name:n,status:"failed",error:d instanceof Error?d.message:String(d)}}return{name:n,status:"cloned"}}async function YBt(e){let{manifest:t}=d9(e),n=t?.plugins;if(!n||n.length===0)return[];let r=[];for(let i of n){let s=await WFo(e,i);s&&r.push(s)}return r}function $Fo(e){try{return DFo(e).isDirectory()}catch{return!1}}function QFo(e,t){let n=DPr($Bt(e),$Bt(t));return n!==""&&!n.startsWith("..")&&!PPr(n)}async function yq(e,t){let n=FFo(t);if(!n)return{success:!1,error:`Invalid repository: ${t}. Expected owner/repo, a Git URL (HTTPS/SSH/file), or a github.com URL.`};let{repo:r,ref:i,cloneUrl:s}=n;Cw(e)||MPr(e,{recursive:!0});let o=OPr(r);if(!o)return{success:!1,error:`Invalid repository name for marketplace directory: "${r}".`};let a=Tw(e,o);if(Cw(a))return{success:!1,alreadyInstalled:!0,marketplaceId:o,error:`Marketplace '${o}' is already installed.`};let{sshUrl:l,httpsUrl:u}=VBt(s),c=await GBt({sshUrl:l,httpsUrl:u,targetDir:a,extraArgs:i?["--branch",i]:[]});if(!c.success)return{success:!1,error:`Failed to clone '${s}': ${c.error}`};let{manifest:d}=d9(a),p=o,m=typeof d?.name=="string"?OPr(d.name):null;if(m&&m!==o){let f=Tw(e,m);if(!Cw(f))try{MFo(a,f),p=m}catch{}}return await YBt(Tw(e,p)),{success:!0,marketplaceId:p}}function Aq(e,t){let n=Tw(e,t);if(!QFo(e,n))return{success:!1,error:`Refusing to remove '${t}': path is outside the marketplaces directory.`};if(!Cw(n))return{success:!1,error:`Marketplace '${t}' not found.`};try{return PFo(n,{recursive:!0,force:!0}),{success:!0}}catch(r){return{success:!1,error:`Failed to remove '${t}': ${r instanceof Error?r.message:String(r)}`}}}async function VPr(e){if(!Cw(Tw(e,".git")))return{success:!1,notGitRepo:!0,error:"Not a git repository"};try{return await BPr("git",["pull"],{cwd:e,env:{...process.env,GIT_TERMINAL_PROMPT:"0"}}),await YBt(e),{success:!0}}catch(t){return{success:!1,error:t instanceof Error?t.message:String(t)}}}async function GPr(e){let t=!1;for(let n of e){if(!Cw(n))continue;let r;try{r=OFo(n)}catch{continue}for(let i of r){let s=Tw(n,i);if(!$Fo(s))continue;(await YBt(s)).some(a=>a.status==="cloned")&&(t=!0)}}return t}var BPr,LPr,ZVe=C(()=>{"use strict";NPr();HVe();BPr=LFo(kFo),LPr=".plugin-cache"});import{readFileSync as YFo}from"node:fs";import{join as HFo}from"node:path";function jVe(e){let t=HFo(e,"hooks","hooks.json"),n;try{n=YFo(t,"utf-8")}catch{return{diagnostics:[]}}let r;try{r=JSON.parse(n)}catch(s){return{diagnostics:[`failed to parse hooks/hooks.json: ${s.message}`]}}return!r||typeof r!="object"||Array.isArray(r)?{diagnostics:["hooks/hooks.json must be a JSON object"]}:{config:zI(r),diagnostics:[]}}var HBt=C(()=>{"use strict";q2()});import{existsSync as ZFo,lstatSync as jFo,readdirSync as YPr,realpathSync as WPr,statSync as zFo}from"node:fs";import{basename as $Pr,isAbsolute as ZBt,join as _he,relative as HPr,resolve as jBt}from"node:path";function zBt(e,t){let n=[],r=[],i=[],s=new Map;for(let o of new Set(e))for(let a of XFo(o,t,r)){let l=s.get(a.id);if(l!==void 0){i.push({id:a.id,shadowedRoot:o,winnerRoot:l});continue}s.set(a.id,o),n.push(a)}for(let[o,a]of Object.entries(t))a&&!s.has(o)&&r.push(`enabledPlugins["${o}"] = true but no plugin with that id was found in any marketplace root`);return{plugins:n,globalDiagnostics:r,shadowedPlugins:i}}function XFo(e,t,n){let r=[];if(!ZFo(e))return r;let i=d9(e);if(!i.manifest)for(let o of i.diagnostics)o.startsWith("no marketplace manifest found")||n.push(`[${$Pr(e)}] ${o}`);if(i.manifest)return QPr(e,$Pr(e),t,r,n),r;let s;try{s=YPr(e)}catch(o){return n.push(`failed to read marketplaces directory ${e}: ${o.message}`),r}for(let o of s){let a=_he(e,o);She(a)&&QPr(a,o,t,r,n)}return r}function QPr(e,t,n,r,i){let s=d9(e);if(!s.manifest){for(let u of s.diagnostics)i.push(`[${t}] ${u}`);return}let o=r5o(s.manifest.name,t),a=n5o(e,s.manifest.metadata?.pluginRoot),l=Array.isArray(s.manifest.plugins)?s.manifest.plugins:[];l.length===0&&i.push(`[${o}] marketplace.json has no plugins[] entries`);for(let u of l){let c=KFo(u,e,a,o,n);c&&r.push(c)}for(let u of s.diagnostics)i.push(`[${o}] ${u}`)}function KFo(e,t,n,r,i){let s=typeof e.name=="string"?p9(e.name):void 0;if(!s)return;let o=`${s}@${r}`,a=i[o]===!0,l=[],u=t5o(e.source,s,t,n,l);return u?JFo(o,r,s,u,a,l,t):{id:o,marketplace:r,name:s,enabled:a,commandsDir:void 0,skillsDir:void 0,hooksConfig:void 0,agentsDirPresent:!1,diagnostics:l}}function qFo(e,t){let n=[],r;try{r=YPr(e).sort()}catch(s){return t.push(`failed to read agents directory: ${s.message}`),n}let i=[];for(let s of r){if(!s.endsWith(".md"))continue;let o=_he(e,s);try{if(!jFo(o).isFile()){i.push(s);continue}}catch(a){t.push(`failed to stat agent file ${s}: ${a.message}`);continue}n.push(o)}return i.length>0&&t.push(`ignoring non-regular agent file(s) under agents/ (symlinks / dirs / devices are not followed): ${i.join(", ")}`),n}function JFo(e,t,n,r,i,s,o){let a=_he(r,"commands"),l=_he(r,"skills"),u=_he(r,"agents"),c=i5o(a,r,s),d=She(l)?l:void 0,p=She(u),m=p&&i?qFo(u,s):void 0,f=jVe(r);for(let h of f.diagnostics)s.push(h);return{id:e,marketplace:t,name:n,root:r,marketplacePath:jBt(o),enabled:i,commandsDir:c,skillsDir:d,hooksConfig:f.config,agentsDirPresent:p,agentFiles:m,diagnostics:s}}function e5o(e,t,n,r){let i=QBt(e);if(!i){let o=e.source;r.push(`source kind "${typeof o=="string"?o:"object"}" is not supported; install the plugin manually as a relative directory`);return}let s=UPr(n,t,i.subdir);if(s)return s;r.push(`source kind "${i.kind}" not fetched yet; run /plugins to clone it (or marketplace update)`)}function t5o(e,t,n,r,i){if(typeof e!="string"){if(e&&typeof e=="object")return e5o(e,t,n,i);i.push("plugin entry has no source field; skipping");return}if(ZBt(e)){i.push(`absolute source "${e}" is not allowed; skipping`);return}let s=e.startsWith("./")?n:r,o=jBt(s,e),a=HPr(n,o);if(a.startsWith("..")||ZBt(a)){i.push(`source "${e}" resolves outside the marketplace root; skipping`);return}if(!She(o)){i.push(`source "${e}" does not point to an existing directory (looked at ${o})`);return}return o}function n5o(e,t){return typeof t!="string"||t.length===0?e:jBt(e,t)}function r5o(e,t){if(typeof e=="string"&&e.length>0){let n=p9(e);if(n.length>0)return n}return t}function p9(e){let t="";for(let n of e){let r=n.codePointAt(0);if(r===void 0)continue;let i=r<=31,s=r>=127&&r<=159;i||s||(t+=n)}return t}function i5o(e,t,n){if(She(e))try{let r=HPr(WPr(t),WPr(e));if(r===".."||r.startsWith("../")||r.startsWith("..\\")||ZBt(r)){n.push("commands/ directory resolves outside the plugin root");return}return e}catch{n.push("commands/ directory could not be resolved");return}}function She(e){try{return zFo(e).isDirectory()}catch{return!1}}var vhe=C(()=>{"use strict";ZVe();HBt();HVe()});import{readFileSync as s5o}from"node:fs";import{basename as o5o}from"node:path";function Px(e,t,n=!0){if(e!==void 0){if(typeof e!="string")throw new Dx(`Invalid ${t}: expected a string.`);return n?e.trim():e}}function Dk(e,t){if(e!==void 0){if(typeof e!="boolean")throw new Dx(`Invalid ${t}: expected a boolean.`);return e}}function ZPr(e){return p9(e.trim().replace(/\s+/g,"-").replace(/[^a-zA-Z0-9_-]/g,"-").replace(/-+/g,"-"))}function zVe(e,t){if(typeof e=="string")return e.trim()==="none"?[]:[...new Set(e.split(",").map(n=>n.trim()).filter(Boolean))];if(!Array.isArray(e)||e.some(n=>typeof n!="string"||!n.trim()))throw new Dx(`Invalid ${t}: expected named strings as a list or CSV.`);return[...new Set(e.map(n=>n.trim()))]}function c5o(e){if(e===void 0)return!0;if(typeof e=="boolean")throw new Dx("Boolean skills is unsupported. Use disable_skills: true for opt-out; omit skills for defaults.");let t=zVe(e,"skills");return t.length?t:!1}function u5o(e){switch(e){case"red":case"blue":case"green":case"yellow":case"orange":case"purple":case"pink":case"cyan":return e;default:return}}function XBt(e,t,n){return{name:e,pluginId:t,source:"plugin",description:e,enabled:!1,invalidDefinition:!0,diagnostics:[n],builtinToolNames:[],disallowedTools:[],extensions:!1,skills:!1,systemPrompt:"",promptMode:"append"}}function d5o(e){if(typeof e=="string")return l5o.includes(e)?e:void 0}function p5o(e){return typeof e=="number"&&e>=0?e:void 0}function m5o(e){if(e==="user"||e==="project"||e==="local")return e}function f5o(e){if(e==null||e===!0)return!0;if(e===!1||e==="none")return!1;let t=zVe(e,"extensions");return t.length>0?t:!1}function h5o(e,t){let n=o5o(e,".md"),r=ZPr(n),i;try{i=s5o(e,"utf-8")}catch{return XBt(r,t,"Custom-agent file could not be read.")}try{let{frontmatter:s,body:o}=ux(i);if(!s||typeof s!="object"||Array.isArray(s))throw new Dx("Invalid frontmatter mapping.");if(r=ZPr(Px(s.name,"name")||n),!r)throw new Dx("Invalid name: a non-empty identity is required.");for(let[a,l]of Object.entries({disallowed_tools:"Use disabled_tools instead.",prompt_mode:"Use replace_system_prompt: false for append or true for replace.",inherit_skills:"Use disable_skills for opt-out or skills for named selection."}))if(Object.hasOwn(s,a))throw new Dx(`Removed frontmatter field ${a}. ${l}`);return b5o({fm:s,body:o,name:r,pluginId:t})}catch(s){return XBt(r,t,s instanceof Dx?s.message:"Invalid custom-agent definition.")}}function g5o(e){let t=Px(e.thinking,"thinking"),n=d5o(t),r=u5o(e.color),i=[];return e.color!==void 0&&!r&&i.push("Invalid color: expected a supported terminal label color."),t!==void 0&&n===void 0&&i.push("Invalid thinking: expected a supported thinking level. Model default retained."),{color:r,thinking:n,diagnostics:i.length?i:void 0}}function b5o({fm:e,body:t,name:n,pluginId:r}){let i=Dk(e.replace_system_prompt,"replace_system_prompt")??!1;if(i&&!t.trim())throw new Dx("replace_system_prompt requires a non-empty Markdown body.");let s=Dk(e.disable_skills,"disable_skills")??!1,o=c5o(e.skills);return{name:n,displayName:Px(e.display_name,"display_name")||n,description:Px(e.description,"description")||n,...g5o(e),toolDescription:Px(e.tool_description,"tool_description")||void 0,instructionDescription:Px(e.instruction_description,"instruction_description")||void 0,providerModel:Px(e.provider_model,"provider_model",!1),providerApiKey:Px(e.provider_api_key,"provider_api_key",!1),providerBaseUrl:Px(e.provider_base_url,"provider_base_url",!1),builtinToolNames:e.tools===void 0?[...a5o]:zVe(e.tools,"tools"),disallowedTools:e.disabled_tools===void 0?void 0:zVe(e.disabled_tools,"disabled_tools"),extensions:f5o(e.extensions??e.inherit_extensions),skills:s?!1:o,disableSkills:s,disableRules:Dk(e.disable_rules,"disable_rules")??!1,disableWorkspaceGuidelines:Dk(e.disable_workspace_guidelines,"disable_workspace_guidelines")??!1,model:Px(e.model,"model"),maxTurns:p5o(e.max_turns),systemPrompt:t.trim(),replaceSystemPrompt:i,promptMode:i?"replace":"append",inheritContext:Dk(e.inherit_context,"inherit_context"),runInBackground:Dk(e.run_in_background,"run_in_background"),isolated:Dk(e.isolated,"isolated"),memory:m5o(e.memory),isolation:e.isolation==="worktree"?"worktree":void 0,enabled:Dk(e.enabled,"enabled")??!0,hidden:Dk(e.hidden,"hidden")??!1,finishTool:Px(e.finish_tool,"finish_tool"),source:"plugin",pluginId:r}}function zPr(e){let t=new Map,n=[];if(!e.agentFiles||e.agentFiles.length===0)return{agents:t,diagnostics:n};let r=new Map;for(let i of e.agentFiles){let s=h5o(i,e.id);n.push(...s.diagnostics??[]);let o=s.name.toLowerCase();if(r.has(o)){let a=r.get(o)??s.name,l="Duplicate agent identity in the same directory.";n.push(l),t.set(a,XBt(a,e.id,l));continue}t.set(s.name,s),r.set(o,s.name)}return{agents:t,diagnostics:n}}var a5o,l5o,jPr,Dx,XPr=C(()=>{"use strict";Ms();vhe();a5o=["read","bash","edit","write","grep","find","ls"],l5o=["off","minimal","low","medium","high","xhigh"],jPr=["general-purpose","explore","plan"],Dx=class extends Error{}});import{lstatSync as y5o,readFileSync as A5o,realpathSync as KPr}from"node:fs";import{isAbsolute as E5o,join as _5o,relative as S5o}from"node:path";function Eq(e,t){let n=e;for(let r of v5o){let i=`\${${r}}`;n.includes(i)&&(n=n.split(i).join(t))}return n}function KBt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function qPr(e){if(!e)return;let t={};for(let[n,r]of Object.entries(e))r!=null&&(t[n]=String(r));return Object.keys(t).length>0?t:void 0}function x5o(e){if(e.type==="stdio"||e.type==="http"||e.type==="sse")return e.type;if(e.url)return"http";if(e.command)return"stdio"}function C5o(e,t){let n=x5o(t);if(!n)throw new Error(`MCP server "${e}" must declare a 'command' (stdio) or 'url' (http/sse) property`);if(n==="http"||n==="sse"){if(!t.url)throw new Error(`MCP server "${e}" has type "${n}" but no 'url' property`);let a=typeof t.clientId=="string"?t.clientId.trim():void 0;return{type:n,name:e,disabled:t.disabled,url:t.url,headers:qPr(t.headers),auth:t.auth==="oauth"?"oauth":void 0,...a?{clientId:a}:{},cwd:t.cwd,timeoutMs:t.timeoutMs}}let r=t.command;if(!r)throw new Error(`MCP server "${e}" has type "stdio" but no 'command' property`);let i=Array.isArray(t.args)?t.args.map(a=>String(a)):[],s=t.useShellInterpolation??!0,o=s&&i.length>0?`${r} ${i.join(" ")}`:r;return{type:"stdio",name:e,disabled:t.disabled,command:o,args:s?[]:i,env:qPr(t.env),cwd:t.cwd,timeoutMs:t.timeoutMs,useShellInterpolation:s}}function JPr(e,t){if(!e)return;let n={};for(let[r,i]of Object.entries(e))n[r]=Eq(i,t);return n}function T5o(e,t){return e.type==="stdio"?{...e,command:Eq(e.command,t),args:e.args.map(n=>Eq(n,t)),env:JPr(e.env,t),cwd:e.cwd?Eq(e.cwd,t):void 0}:{...e,url:Eq(e.url,t),headers:JPr(e.headers,t),cwd:e.cwd?Eq(e.cwd,t):void 0}}function I5o(e,t){let n=_5o(e,".mcp.json"),r;try{r=y5o(n)}catch(i){if(i?.code==="ENOENT")return;t.push(`failed to stat .mcp.json: ${i.message}`);return}if(r.isSymbolicLink()){t.push(".mcp.json is a symlink; refusing to follow it out of the plugin root");return}if(!r.isFile()){t.push(".mcp.json is not a regular file; skipping");return}try{let i=KPr(e),s=KPr(n),o=S5o(i,s);if(o.startsWith("..")||E5o(o)){t.push(".mcp.json resolves outside the plugin root; skipping");return}}catch(i){t.push(`failed to resolve .mcp.json real path: ${i.message}`);return}try{return A5o(n,"utf-8")}catch(i){t.push(`failed to read .mcp.json: ${i.message}`);return}}function XVe(e){let t=[];if(!e.root)return{servers:[],diagnostics:t};let n=I5o(e.root,t);if(n===void 0)return{servers:[],diagnostics:t};let r;try{r=JSON.parse(n)}catch(o){return t.push(`failed to parse .mcp.json: ${o.message}`),{servers:[],diagnostics:t}}if(!KBt(r))return t.push(".mcp.json must be a JSON object"),{servers:[],diagnostics:t};let i=r.mcpServers;if(!KBt(i))return t.push('.mcp.json must contain an "mcpServers" object'),{servers:[],diagnostics:t};let s=[];for(let[o,a]of Object.entries(i)){let l=`${e.id}/${p9(o)}`;if(!KBt(a)){t.push(`MCP server "${l}" must be a JSON object`);continue}try{let u=C5o(l,a);s.push(T5o(u,e.root))}catch(u){t.push(u instanceof Error?u.message:String(u))}}return{servers:s,diagnostics:t}}var v5o,eDr,qBt=C(()=>{"use strict";vhe();v5o=["CLAUDE_PLUGIN_ROOT","AUGMENT_PLUGIN_ROOT","AUGGIE_PLUGIN_ROOT"];eDr="hermes:mcp:register-server-source"});function tDr(e,t,n){let r=gi.create(e,t,n),i={};for(let o of[r.getVfsOrgSettings(),r.getVfsSpaceSettings(),r.getVfsUserSettings(),r.getSettings()])for(let[a,l]of Object.entries(o.enabledPlugins??{}))typeof l=="boolean"&&(i[a]=l);let s=r.drainErrors().map(({scope:o,error:a})=>`failed to load ${o} settings: ${a.message}; enabledPlugins entries from this scope will be ignored`);return{enabled:i,diagnostics:s}}var nDr=C(()=>{"use strict";Ms()});var rDr,iDr=C(()=>{"use strict";rDr="hermes:subagents:register-agent-source"});import{lstatSync as w5o,readdirSync as R5o,readFileSync as JBt}from"node:fs";import{basename as N5o,dirname as k5o,extname as O5o,isAbsolute as M5o,join as Bx,parse as P5o,relative as _q,resolve as xhe,sep as eLt}from"node:path";function KVe(e){return typeof e=="string"&&qVe(e)||void 0}function sDr(e,t){let n=_q(e,t);return!M5o(n)&&n!==".."&&!n.startsWith(`..${eLt}`)}function D5o(e,t,n){let r=n?xhe(n):P5o(e).root;if(!sDr(r,e)||!sDr(e,t))throw new Error("Plugin metadata path is outside the plugin root");let i=r,s;for(let o of["",..._q(r,t).split(eLt).filter(Boolean)]){i=Bx(i,o);try{s=w5o(i)}catch(a){if(a.code==="ENOENT")return;throw a}if(s.isSymbolicLink())throw new Error("Plugin metadata path contains a symbolic link")}return s}function Sq(e){let t={agents:[],commands:[],rules:[],mcpServers:[],hooks:[],skills:[],diagnostics:[]};if(!e.root)return t.diagnostics.push("Plugin source is unavailable"),t;let n=xhe(e.root),r=d=>D5o(n,d,e.marketplacePath),i=Xz(),s=d=>{let p=`Could not read plugin ${d} metadata`;t.diagnostics.includes(p)||t.diagnostics.push(p)};try{if(!r(n)?.isDirectory())throw new Error("Plugin root is unavailable")}catch{return s("contents"),t}let o=(d,p,m,f)=>{let h={name:qVe(p)};try{if(!r(d)?.isFile())throw new Error("Plugin metadata file is unavailable");let{frontmatter:g}=ux(JBt(d,"utf8"));if(!g||typeof g!="object"||Array.isArray(g))throw new Error("Invalid plugin frontmatter");f&&(h.name=KVe(g.name)??h.name),h.description=KVe(g.description)}catch{s(m)}return h},a=(d,p,m)=>{let f=O5o(p);if(!(f===".md"||(d==="commands"||d==="rules")&&f===".txt")||d==="skills"&&k5o(p)!==m)return;let g=_q(m,p),b=d==="rules"?g:g.slice(0,-f.length).split(eLt).join(":");t[d].push(o(p,b,d,d==="agents"||d==="skills"))},l=(d,p,m)=>{try{let f=r(p);if(d==="skills"&&KB(i,_q(m,p),f?.isDirectory()))return;f?.isDirectory()?d!=="agents"&&c(d,p,m):f?.isFile()&&a(d,p,m)}catch{s(d)}},u=(d,p)=>{for(let m of zz){let f=Bx(d,m);try{let h=r(f);if(!h)continue;if(!h.isFile())throw new Error("Invalid skill ignore file");Kz(i,JBt(f,"utf8"),_q(p,d))}catch{s("skills")}}},c=(d,p,m=p)=>{try{let f=r(p);if(!f)return;if(!f.isDirectory())throw new Error("Plugin metadata directory is invalid");if(d==="skills"){u(p,m);let h=Bx(p,"SKILL.md");if(!KB(i,_q(m,h))&&r(h)?.isFile()){t.skills.push(o(h,N5o(p),d,!0));return}}for(let h of R5o(p).sort())(d==="commands"||d==="skills")&&XB(h)||l(d,Bx(p,h),m)}catch{s(d)}};return c("agents",Bx(n,"agents")),c("commands",xhe(e.commandsDir??Bx(n,"commands"))),c("rules",Bx(n,"rules")),c("skills",xhe(e.skillsDir??Bx(n,"skills"))),t.hooks=F5o(n,r,s),t.mcpServers=U5o(e,r,s),Object.assign(t,L5o(n,r,s)),t}function B5o(e){let t={};for(let s of["description","version","homepage"]){let o=KVe(e[s]);o&&(t[s]=o)}let n=e.author,r=n&&typeof n=="object"&&!Array.isArray(n)?n.name:n,i=KVe(r);return i&&(t.author=i),t}function L5o(e,t,n){for(let r of[".augment-plugin",".claude-plugin"])try{let i=Bx(e,r,"plugin.json"),s=t(i);if(!s)continue;if(!s.isFile())throw new Error("Invalid plugin manifest file");let o=JSON.parse(JBt(i,"utf8"));if(!o||typeof o!="object"||Array.isArray(o))throw new Error("Invalid plugin manifest");return B5o(o)}catch{n("manifest")}return{}}function F5o(e,t,n){let r=[];try{let i=t(Bx(e,"hooks","hooks.json"));if(i){if(!i.isFile())throw new Error("Invalid plugin hooks file");let{config:s,diagnostics:o}=jVe(e);(!s||o.length)&&n("hook");for(let[a,l]of Object.entries(s??{}).sort(([u],[c])=>u.localeCompare(c)))for(let u of l??[])r.push({name:qVe(`${a}[${u.matcher??".*"}]`),description:"Command hook"})}}catch{n("hook")}return r}function U5o(e,t,n){if(!e.root)return[];let r=xhe(e.root);try{let i=t(Bx(r,".mcp.json"));if(i){if(!i.isFile())throw new Error("Invalid plugin MCP file");let{servers:s,diagnostics:o}=XVe(e);return o.length&&n("MCP server"),s.map(a=>({name:qVe(a.name.slice(e.id.length+1)),description:`${a.type==="stdio"?"stdio":a.type.toUpperCase()} server`})).sort((a,l)=>a.name.localeCompare(l.name))}}catch{n("MCP server")}return[]}var qVe,oDr=C(()=>{"use strict";Ms();vhe();HBt();qBt();qVe=e=>p9(e.replace(/\s+/g," ")).trim()});var The={};li(The,{addMarketplace:()=>yq,default:()=>tGe,getDiscoveredMarketplaces:()=>Che,getDiscoveredPlugins:()=>Lx,getInteractivePluginDiagnostics:()=>X5o,getPluginDetails:()=>Sq,getPluginDiagnostics:()=>Fx,getV2MarketplacesRoot:()=>xq,removeMarketplace:()=>Aq,updateMarketplace:()=>VPr});import{join as YW,resolve as V5o}from"node:path";import{existsSync as G5o,readdirSync as W5o,statSync as $5o}from"node:fs";function Y5o(){return globalThis[aDr]??{}}function H5o(e){globalThis[aDr]=e}function tGe(e){u1=[],eGe=[],JVe=[],tLt=[],vq=[];let t=!1,n,r=new Map,i,s,o=new Map,a;e.events.on(L9e,w=>{n=w.register}),e.events.on(rDr,w=>{i=w.register}),e.events.on(eDr,w=>{a=w.registerServerSource}),e.events.on(Q5o,w=>{H5o(w?.scopes??{})});function l(w,T,D=[]){let M=Y5o(),{enabled:P,diagnostics:O}=tDr(w,T,M),k=[...new Set(D.map(ne=>V5o(w,ne)))],L=zBt(k,{}),F={...P};for(let ne of L.plugins)F[ne.id]=!0;let Q=YW(CA(),"plugins","marketplaces"),U=YW(T,"plugins","marketplaces"),J=[M.user,M.space,M.org].flatMap(ne=>ne?[YW(ne,".augment","plugins","marketplaces")]:[]),ie=zBt([...k,Q,U,...J],F);for(let ne of ie.shadowedPlugins)pE.debug(`plugin "${ne.id}" from ${ne.shadowedRoot} is shadowed by the higher-precedence root ${ne.winnerRoot}`);return ie.globalDiagnostics=[...O,...ie.globalDiagnostics],u1=ie.plugins,eGe=ie.globalDiagnostics,t=!0,ie}function u(w,T,D=[]){t||l(w,T,D)}function c(){let w=new Map,T=new Map;JVe=[];let D=[...u1.filter(M=>M.enabled)].sort((M,P)=>M.id.localeCompare(P.id));for(let M of D){let{agents:P,diagnostics:O}=zPr(M);for(let k of O)pE.warn(`[${M.id}] ${k}`),JVe.push({type:"warning",message:`[${M.id}] ${k}`,path:M.root});for(let[k,L]of P)d(M.id,k,L,w,T)}o=w}function d(w,T,D,M,P){let O=T.toLowerCase(),k=P.get(O);if(k){let L=k.name===T?`"${T}"`:`"${T}" (case-insensitive collision with "${k.name}")`;pE.warn(`[${w}] plugin-contributed agent ${L} shadowed by earlier plugin ${k.pluginId}; ignoring`);return}jPr.includes(O)&&pE.warn(`[${w}] plugin-contributed agent "${T}" shadows the built-in default agent of the same name; the plugin's definition will be used for every Agent-tool invocation across this session`),M.set(T,D),P.set(O,{pluginId:w,name:T})}function p(){if(!i)return;s?.(),s=i({getAgents:()=>o,getDiagnostics:()=>JVe})}function m(){let w=[];vq=[];let T=[...u1.filter(D=>D.enabled)].sort((D,M)=>D.id.localeCompare(M.id));for(let D of T){let{servers:M,diagnostics:P}=XVe(D);for(let O of P)pE.warn(`[${D.id}] ${O}`),vq.push({type:"warning",message:`[${D.id}] ${O}`,path:D.root});for(let O of M)w.push(O)}tLt=w}function f(){if(!a)return;a({source:"plugin",getServers:()=>tLt,getDiagnostics:()=>vq})}function h(){if(n){for(let w of r.values())w();r.clear();for(let w of u1){if(!w.enabled)continue;let T=Z5o(w);T&&r.set(w.id,n(T))}}}function g(){for(let w of r.values())w();r.clear()}function b(){let w=[],T=[];for(let D of u1){if(!D.enabled){for(let M of D.diagnostics)pE.debug(`[${D.id}] ${M}`);continue}D.root&&D.commandsDir&&T.push({path:D.commandsDir,commandNamespace:`${D.name}--${D.marketplace}`}),D.root&&D.skillsDir&&w.push(D.skillsDir);for(let M of D.diagnostics)pE.warn(`[${D.id}] ${M}`)}return{skillPaths:w,promptPaths:T}}e.on("resources_discover",(w,T)=>{t=!1;let D=l(w.cwd,w.agentDir,T.pluginDirs),{skillPaths:M,promptPaths:P}=b();for(let k of D.globalDiagnostics)pE.warn(k);let O=u1.filter(k=>k.enabled).length;return u1.length>0&&pE.info(`Discovered ${u1.length} plugin(s); ${O} enabled`),h(),c(),p(),x(),m(),f(),v(),{skillPaths:M,promptPaths:P}}),e.on("session_start",(w,T)=>{u(T.cwd,T.agentDir,T.pluginDirs),h(),c(),p(),_(),m(),f();let D=YW(CA(),"plugins","marketplaces"),M=YW(T.agentDir,"plugins","marketplaces");GPr([D,M]).then(P=>{P&&(t=!1,l(T.cwd,T.agentDir,T.pluginDirs),h(),c(),p(),m(),f())}).catch(P=>{pE.debug(`background plugin source fetch failed: ${P instanceof Error?P.message:String(P)}`)})}),e.on("session_shutdown",()=>{g(),s?.(),s=void 0,o=new Map});let A=!1,y=!1,S=!1;function _(){!n&&!A&&(A=!0,pE.warn("@hermes/hooks did not register a hook listener; plugin hooks will not run. This usually means @hermes/hooks was removed from the built-in extension list."))}function x(){!i&&!y&&(y=!0,pE.debug("@hermes/subagents did not register an agent source; plugin-contributed subagents will not be available (expected when --disable-subagents is set)."))}function v(){!a&&!S&&(S=!0,pE.debug("@hermes/mcp did not register a server source; plugin-contributed MCP servers will not be loaded."))}}function Z5o(e){if(e.root)return{source:e.id,isEnabled:()=>e.enabled,getConfig:()=>e.hooksConfig,env:j5o(e.root),postToolUsePrefix:`Plugin ${e.id} hook`,backgroundLabel:t=>`[${e.id}] ${t} hook`,blockedFallbackReason:"Blocked by plugin hook"}}function j5o(e){return{PLUGIN_ROOT:e,CLAUDE_PLUGIN_ROOT:e,AUGMENT_PLUGIN_ROOT:e,AUGGIE_PLUGIN_ROOT:e}}function Lx(){return u1}function xq(e){return YW(e,"plugins","marketplaces")}function Che(e){let t=xq(e);if(!G5o(t))return[];let n;try{n=W5o(t)}catch{return[]}let r=[];for(let i of n){let s=YW(t,i);try{if(!$5o(s).isDirectory())continue}catch{continue}let{manifest:o}=d9(s);if(!o)continue;let a=typeof o.name=="string"&&o.name.length>0?o.name:i;r.push({dir:i,name:a,path:s})}return r}function Fx(){let e=[];for(let t of u1)for(let n of t.diagnostics)e.push({type:"warning",message:`[${t.id}] ${n}`,path:t.root});for(let t of eGe)e.push({type:"warning",message:t});for(let t of vq)e.push(t);return e}function X5o(){let e=[],t=new Set,n=0;for(let r of u1){let i=!1;for(let s of r.diagnostics){let o=r.enabled?null:z5o.exec(s);if(o?.[1]){t.add(o[1]),i=!0;continue}e.push({type:"warning",message:`[${r.id}] ${s}`,path:r.root})}i&&n++}if(n>0){let r=[...t].sort().join(", "),i=n===1?"plugin":"plugins";e.push({type:"warning",message:`${n} disabled ${i} use unsupported source kinds (${r}); enable one to see details, or re-run with --check-startup`})}for(let r of eGe)e.push({type:"warning",message:r});for(let r of vq)e.push(r);return e}var pE,Q5o,aDr,u1,eGe,JVe,tLt,vq,z5o,ww=C(()=>{"use strict";Ms();q2();en();XPr();vhe();ZVe();HVe();qBt();nDr();iDr();oDr();ZVe();pE=tt.child({prefix:"pi-plugins"}),Q5o="augment:vfs-scopes",aDr=Symbol.for("__pi_plugins_vfs_scopes__");u1=[],eGe=[],JVe=[],tLt=[],vq=[];z5o=/^source kind "([^"]+)" (?:is not supported; install the plugin manually as a relative directory|not fetched yet; run \/plugins to clone it \(or marketplace update\))$/});function K5o(e){return{...e,execute:(t,n,r,i,s)=>{let o=vwe(e.name);if(!o)throw new Error(`Cloud tool "${e.name}" is unavailable`);return o.execute(t,n,r,i,s)}}}function nLt(e){for(let t of Qxn())e.registerTool(K5o(t))}var lDr=C(()=>{"use strict";RH()});function rGe(){let e=globalThis;return e[cDr]??=new Map,e[cDr]}function nGe(){let e=globalThis;return e[uDr]??=new Map,e[uDr]}function iGe(){return[...rGe().values()]}function sGe(e){return rGe().get(e)}function pDr(e){return nGe().get(e)}function m9(e,t){rGe().set(e.name,e),t===void 0?nGe().delete(e.name):nGe().set(e.name,t)}function Cq(e,t){let n=rGe();(t===void 0||n.get(e)===t)&&(n.delete(e),nGe().delete(e))}function mDr(e){Reflect.set(e,dDr,!0)}function oGe(e){return Reflect.get(e,dDr)===!0}var cDr,uDr,dDr,Bk=C(()=>{"use strict";cDr=Symbol.for("__hermes_mcp_tool_registry__"),uDr=Symbol.for("__hermes_mcp_tool_server_registry__"),dDr=Symbol.for("__hermes_mcp_extension_factory__")});function q5o(e){return{...e,execute:(t,n,r,i,s)=>{let o=sGe(e.name);if(!o)throw new Error(`MCP tool "${e.name}" is unavailable`);return o.execute(t,n,r,i,s)}}}function aGe(e){for(let t of iGe())e.registerTool(q5o(t))}var fDr=C(()=>{"use strict";Bk()});import{existsSync as J5o}from"node:fs";import{homedir as Ihe}from"node:os";import{dirname as rLt,join as Ux,resolve as gDr}from"node:path";import{fileURLToPath as eUo}from"node:url";function bDr(){let e=process.env.PI_PACKAGE_DIR;if(e)return e==="~"?Ihe():e.startsWith("~/")?Ihe()+e.slice(1):e;let t=hDr;for(;t!==rLt(t);){if(J5o(Ux(t,"package.json")))return t;t=rLt(t)}return hDr}function lGe(){return gDr(Ux(bDr(),"docs"))}function cGe(){return gDr(Ux(bDr(),"CHANGELOG.md"))}function _Dr(e){return e==="~"?Ihe():e.startsWith("~/")?Ihe()+e.slice(1):e}function Rw(){let e=process.env.AUGMENT_CACHE_DIR;return e?_Dr(e):Ux(Ihe(),".augment")}function nr(){let e=process.env[iLt];return e?_Dr(e):Rw()}function Nhe(){return Ux(nr(),"themes")}function SDr(){return Ux(nr(),"models.json")}function vDr(){return Ux(nr(),"auth.json")}function xDr(){return Ux(nr(),"settings.json")}function f9(){return Rw()}function Tq(){return Ux(nr(),"bin")}function CDr(){return Ux(nr(),whe)}function TDr(){return Ux(nr(),`${ei}-debug.log`)}var tUo,hDr,ei,Ps,whe,Rhe,yDr,nUo,Gs,ADr,EDr,iLt,Ws=C(()=>{"use strict";cft();tUo=eUo(import.meta.url),hDr=rLt(tUo);ei=aD.piConfig?.name||"auggie",Ps=aD.piConfig?.configDir||".augment",whe="sessions-v2",Rhe=ei,yDr="Auggie Coding Agent",nUo="1.2.0-prerelease.202611030911",Gs=nUo??aD.version,ADr="4f74133a7a889d255901aad04cd02f7d617e3846",EDr="2026-11-03T17:11:24Z",iLt=`${ei.toUpperCase()}_CODING_AGENT_DIR`});var wDr,IDr=C(()=>{wDr={$schema:"https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",name:"ansi",vars:{red:1,green:2,yellow:3,blue:4,magenta:5,cyan:6,gray:8,brightMagenta:13},colors:{accent:"magenta",border:"gray",borderAccent:"magenta",borderMuted:"gray",success:"green",error:"red",warning:"yellow",muted:"gray",dim:"gray",text:"",thinkingText:"gray",selectedBg:"gray",userMessageBg:"",userMessageText:"",customMessageBg:"",customMessageText:"",customMessageLabel:"magenta",toolPendingBg:"",toolSuccessBg:"",toolErrorBg:"",toolTitle:"magenta",toolOutput:"gray",mdHeading:"magenta",mdLink:"magenta",mdLinkUrl:"gray",mdCode:"magenta",mdCodeBlock:"green",mdCodeBlockBorder:"gray",mdQuote:"gray",mdQuoteBorder:"gray",mdHr:"gray",mdListBullet:"magenta",toolDiffAdded:"green",toolDiffRemoved:"red",toolDiffContext:"gray",syntaxComment:"gray",syntaxKeyword:"blue",syntaxFunction:"yellow",syntaxVariable:"cyan",syntaxString:"green",syntaxNumber:"magenta",syntaxType:"cyan",syntaxOperator:"",syntaxPunctuation:"",thinkingOff:"gray",thinkingMinimal:"gray",thinkingLow:"blue",thinkingMedium:"cyan",thinkingHigh:"magenta",thinkingXhigh:"brightMagenta",bashMode:"green"},export:{pageBg:"#18181e",cardBg:"#1e1e24",infoBg:"#3c3728"}}});var Nw,RDr=C(()=>{Nw={$schema:"https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",name:"dark",vars:{cyan:"#00d7ff",blue:"#5f87ff",green:"#b5bd68",red:"#cc6666",yellow:"#ffff00",gray:"#808080",dimGray:"#666666",darkGray:"#505050",accent:"#8abeb7",selectedBg:"#3a3a4a",userMsgBg:"#343541",toolPendingBg:"#282832",toolSuccessBg:"#283228",toolErrorBg:"#3c2828",customMsgBg:"#2d2838"},colors:{accent:"accent",border:"blue",borderAccent:"cyan",borderMuted:"darkGray",success:"green",error:"red",warning:"yellow",muted:"gray",dim:"dimGray",text:"",thinkingText:"gray",agentRed:"#CC6666",agentBlue:"#81A2BE",agentGreen:"#B5BD68",agentYellow:"#F0C674",agentOrange:"#CE9178",agentPurple:"#B294BB",agentPink:"#D183E8",agentCyan:"#8ABEB7",selectedBg:"selectedBg",userMessageBg:"userMsgBg",userMessageText:"",customMessageBg:"customMsgBg",customMessageText:"",customMessageLabel:"#9575cd",toolPendingBg:"toolPendingBg",toolSuccessBg:"toolSuccessBg",toolErrorBg:"toolErrorBg",toolTitle:"#b294bb",toolOutput:"gray",mdHeading:"#f0c674",mdLink:"#81a2be",mdLinkUrl:"dimGray",mdCode:"accent",mdCodeBlock:"green",mdCodeBlockBorder:"gray",mdQuote:"gray",mdQuoteBorder:"gray",mdHr:"gray",mdListBullet:"accent",toolDiffAdded:"green",toolDiffRemoved:"red",toolDiffContext:"gray",syntaxComment:"#6A9955",syntaxKeyword:"#569CD6",syntaxFunction:"#DCDCAA",syntaxVariable:"#9CDCFE",syntaxString:"#CE9178",syntaxNumber:"#B5CEA8",syntaxType:"#4EC9B0",syntaxOperator:"#D4D4D4",syntaxPunctuation:"#D4D4D4",thinkingOff:"darkGray",thinkingMinimal:"#6e6e6e",thinkingLow:"#5f87af",thinkingMedium:"#81a2be",thinkingHigh:"#b294bb",thinkingXhigh:"#d183e8",bashMode:"green"},export:{pageBg:"#18181e",cardBg:"#1e1e24",infoBg:"#3c3728"}}});var kDr,NDr=C(()=>{kDr={$schema:"https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",name:"light",vars:{teal:"#5a8080",blue:"#547da7",green:"#588458",red:"#aa5555",yellow:"#9a7326",mediumGray:"#6c6c6c",dimGray:"#767676",lightGray:"#b0b0b0",selectedBg:"#d0d0e0",userMsgBg:"#e8e8e8",toolPendingBg:"#e8e8f0",toolSuccessBg:"#e8f0e8",toolErrorBg:"#f0e8e8",customMsgBg:"#ede7f6"},colors:{accent:"teal",border:"blue",borderAccent:"teal",borderMuted:"lightGray",success:"green",error:"red",warning:"yellow",muted:"mediumGray",dim:"dimGray",text:"",thinkingText:"mediumGray",agentRed:"#AA5555",agentBlue:"#476D94",agentGreen:"#477047",agentYellow:"#8A6822",agentOrange:"#795E26",agentPurple:"#875F87",agentPink:"#8B008B",agentCyan:"#4D7070",selectedBg:"selectedBg",userMessageBg:"userMsgBg",userMessageText:"",customMessageBg:"customMsgBg",customMessageText:"",customMessageLabel:"#7e57c2",toolPendingBg:"toolPendingBg",toolSuccessBg:"toolSuccessBg",toolErrorBg:"toolErrorBg",toolTitle:"",toolOutput:"mediumGray",mdHeading:"yellow",mdLink:"blue",mdLinkUrl:"dimGray",mdCode:"teal",mdCodeBlock:"green",mdCodeBlockBorder:"mediumGray",mdQuote:"mediumGray",mdQuoteBorder:"mediumGray",mdHr:"mediumGray",mdListBullet:"green",toolDiffAdded:"green",toolDiffRemoved:"red",toolDiffContext:"mediumGray",syntaxComment:"#008000",syntaxKeyword:"#0000FF",syntaxFunction:"#795E26",syntaxVariable:"#001080",syntaxString:"#A31515",syntaxNumber:"#098658",syntaxType:"#267F99",syntaxOperator:"#000000",syntaxPunctuation:"#000000",thinkingOff:"lightGray",thinkingMinimal:"#767676",thinkingLow:"blue",thinkingMedium:"teal",thinkingHigh:"#875f87",thinkingXhigh:"#8b008b",bashMode:"green"},export:{pageBg:"#f8f8f8",cardBg:"#ffffff",infoBg:"#fffae6"}}});import*as Gb from"node:fs";import*as dGe from"node:path";function aUo(){let e=process.env.COLORTERM;if(e==="truecolor"||e==="24bit"||process.env.WT_SESSION)return"truecolor";let t=process.env.TERM||"";return t==="dumb"||t===""||t==="linux"||process.env.TERM_PROGRAM==="Apple_Terminal"||t==="screen"||t.startsWith("screen-")||t.startsWith("screen.")?"256color":"truecolor"}function lLt(e){let t=e.replace("#","");if(t.length!==6)throw new Error(`Invalid hex color: ${e}`);let n=Number.parseInt(t.slice(0,2),16),r=Number.parseInt(t.slice(2,4),16),i=Number.parseInt(t.slice(4,6),16);if(Number.isNaN(n)||Number.isNaN(r)||Number.isNaN(i))throw new Error(`Invalid hex color: ${e}`);return{r:n,g:r,b:i}}function sLt(e){let t=Number.POSITIVE_INFINITY,n=0;for(let[r,i]of uGe.entries()){let s=Math.abs(e-i);s<t&&(t=s,n=r)}return n}function lUo(e){let t=Number.POSITIVE_INFINITY,n=0;for(let[r,i]of BDr.entries()){let s=Math.abs(e-i);s<t&&(t=s,n=r)}return n}function MDr(e,t,n,r,i,s){let o=e-r,a=t-i,l=n-s;return o*o*.299+a*a*.587+l*l*.114}function cUo(e,t,n){let r=sLt(e),i=sLt(t),s=sLt(n),o=uGe[r]??0,a=uGe[i]??0,l=uGe[s]??0,u=16+36*r+6*i+s,c=MDr(e,t,n,o,a,l),d=Math.round(.299*e+.587*t+.114*n),p=lUo(d),m=BDr[p]??0,f=232+p,h=MDr(e,t,n,m,m,m),g=Math.max(e,t,n),b=Math.min(e,t,n);return g-b<10&&h<c?f:u}function LDr(e){let{r:t,g:n,b:r}=lLt(e);return cUo(t,n,r)}function FDr(e,t,n){return`\x1B[${e<8?t+e:n+e-8}m`}function PDr(e,t){if(e==="")return"\x1B[39m";if(typeof e=="number")return e<16?FDr(e,30,90):`\x1B[38;5;${e}m`;if(e.startsWith("#")){if(t==="truecolor"){let{r,g:i,b:s}=lLt(e);return`\x1B[38;2;${r};${i};${s}m`}return`\x1B[38;5;${LDr(e)}m`}throw new Error(`Invalid color value: ${e}`)}function uUo(e,t){if(e==="")return"\x1B[49m";if(typeof e=="number")return e<16?FDr(e,40,100):`\x1B[48;5;${e}m`;if(e.startsWith("#")){if(t==="truecolor"){let{r,g:i,b:s}=lLt(e);return`\x1B[48;2;${r};${i};${s}m`}return`\x1B[48;5;${LDr(e)}m`}throw new Error(`Invalid color value: ${e}`)}function cLt(e,t,n=new Set){if(typeof e=="number"||e===""||e.startsWith("#"))return e;if(n.has(e))throw new Error(`Circular variable reference detected: ${e}`);if(!(e in t))throw new Error(`Variable reference not found: ${e}`);n.add(e);let r=t[e];if(r===void 0)throw new Error(`Variable reference not found: ${e}`);return cLt(r,t,n)}function UDr(e,t={}){let n={};for(let[r,i]of Object.entries(e))n[r]=cLt(i,t);return n}function mGe(){let e=new Set(Object.keys(pGe)),t=Nhe();if(Gb.existsSync(t)){let n=Gb.readdirSync(t);for(let r of n)r.endsWith(".json")&&e.add(r.slice(0,-5))}for(let n of zW.keys())e.add(n);return Array.from(e).sort()}function VDr(){let e=Nhe(),t=[];for(let n of Object.keys(pGe))t.push({name:n,path:void 0});if(Gb.existsSync(e)){for(let n of Gb.readdirSync(e))if(n.endsWith(".json")){let r=n.slice(0,-5);t.some(i=>i.name===r)||t.push({name:r,path:dGe.join(e,n)})}}for(let[n,r]of zW.entries())t.some(i=>i.name===n)||t.push({name:n,path:r.sourcePath});return t.sort((n,r)=>n.name.localeCompare(r.name))}function dUo(e,t){if(!ODr.Check(t)){let n=Array.from(ODr.Errors(t)),r=[],i=[];for(let o of n){let l=o.path.match(/^\/colors\/(\w+)$/)?.[1];l&&o.message.includes("Required")?r.push(l):i.push(` - ${o.path}: ${o.message}`)}let s=`Invalid theme "${e}":
|
|
6403
6403
|
`;throw r.length>0&&(s+=`
|
|
6404
6404
|
Missing required color tokens:
|
|
6405
6405
|
`,s+=r.map(o=>` - ${o}`).join(`
|
|
@@ -14260,4 +14260,4 @@ undici/lib/web/websocket/frame.js:
|
|
|
14260
14260
|
(*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> *)
|
|
14261
14261
|
*/
|
|
14262
14262
|
|
|
14263
|
-
//# debugId=
|
|
14263
|
+
//# debugId=cfe843b1-f926-554f-b3f8-561cbef2b058
|