jbrowse-plugin-msaview 2.6.3 → 2.6.4

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.
Files changed (31) hide show
  1. package/dist/AddHighlightModel/MsaToGenomeHighlight.js +8 -9
  2. package/dist/MsaViewPanel/afterCreateAutoruns.d.ts +0 -2
  3. package/dist/MsaViewPanel/afterCreateAutoruns.js +1 -63
  4. package/dist/MsaViewPanel/model.d.ts +3 -28
  5. package/dist/MsaViewPanel/model.js +5 -103
  6. package/dist/MsaViewPanel/structureConnection.d.ts +0 -38
  7. package/dist/MsaViewPanel/structureConnection.js +0 -20
  8. package/dist/MsaViewPanel/structureConnection.test.js +1 -35
  9. package/dist/jbrowse-plugin-msaview.umd.production.min.js +26 -26
  10. package/dist/jbrowse-plugin-msaview.umd.production.min.js.map +4 -4
  11. package/dist/version.d.ts +1 -1
  12. package/dist/version.js +1 -1
  13. package/package.json +1 -1
  14. package/src/AddHighlightModel/MsaToGenomeHighlight.tsx +8 -9
  15. package/src/MsaViewPanel/afterCreateAutoruns.ts +1 -84
  16. package/src/MsaViewPanel/model.ts +4 -135
  17. package/src/MsaViewPanel/structureConnection.test.ts +1 -53
  18. package/src/MsaViewPanel/structureConnection.ts +0 -47
  19. package/src/version.ts +1 -1
  20. package/dist/MsaViewPanel/autoConnectStructures.test.d.ts +0 -1
  21. package/dist/MsaViewPanel/autoConnectStructures.test.js +0 -60
  22. package/dist/MsaViewPanel/components/ConnectStructureDialog.d.ts +0 -7
  23. package/dist/MsaViewPanel/components/ConnectStructureDialog.js +0 -60
  24. package/dist/MsaViewPanel/pairwiseAlignment.d.ts +0 -20
  25. package/dist/MsaViewPanel/pairwiseAlignment.js +0 -138
  26. package/dist/MsaViewPanel/pairwiseAlignment.test.d.ts +0 -1
  27. package/dist/MsaViewPanel/pairwiseAlignment.test.js +0 -111
  28. package/src/MsaViewPanel/autoConnectStructures.test.ts +0 -76
  29. package/src/MsaViewPanel/components/ConnectStructureDialog.tsx +0 -154
  30. package/src/MsaViewPanel/pairwiseAlignment.test.ts +0 -140
  31. package/src/MsaViewPanel/pairwiseAlignment.ts +0 -182
@@ -1,11 +1,11 @@
1
- "use strict";var JBrowsePluginMsaView=(()=>{var i_=Object.create;var Ts=Object.defineProperty;var a_=Object.getOwnPropertyDescriptor;var s_=Object.getOwnPropertyNames;var c_=Object.getPrototypeOf,l_=Object.prototype.hasOwnProperty;var h=(e,t,r)=>()=>{if(r)throw r[0];try{return e&&(t=e(e=0)),t}catch(n){throw r=[n],n}};var j=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(r){throw t=0,r}},$e=(e,t)=>{for(var r in t)Ts(e,r,{get:t[r],enumerable:!0})},Ag=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of s_(t))!l_.call(e,o)&&o!==r&&Ts(e,o,{get:()=>t[o],enumerable:!(n=a_(t,o))||n.enumerable});return e};var f=(e,t,r)=>(r=e!=null?i_(c_(e)):{},Ag(t||!e||!e.__esModule?Ts(r,"default",{value:e,enumerable:!0}):r,e)),A_=e=>Ag(Ts({},"__esModule",{value:!0}),e);var fg=j((_5,ug)=>{ug.exports=JBrowseExports["@jbrowse/core/Plugin"]});var jo=j((T5,dg)=>{dg.exports=JBrowseExports["@jbrowse/core/configuration"]});var me=j((k5,mg)=>{mg.exports=JBrowseExports["@jbrowse/core/util"]});var Pt=j((D5,pg)=>{pg.exports=JBrowseExports["mobx-state-tree"]});var hg=j((N5,gg)=>{gg.exports=JBrowseExports["@mui/material/utils"]});var R,V=h(()=>{"use client";R=f(hg(),1)});var O=j((R5,Cg)=>{Cg.exports=JBrowseExports["react/jsx-runtime"]});var v=j((O5,xg)=>{xg.exports=JBrowseExports.react});var H=j((G5,wg)=>{wg.exports=JBrowseExports["mobx-react"]});var ve=j((U5,yg)=>{yg.exports=JBrowseExports["tss-react/mui"]});var WA=j((J5,Sg)=>{Sg.exports=JBrowseExports["@jbrowse/core/pluggableElementTypes"]});var fr=j((Y5,vg)=>{vg.exports=JBrowseExports.mobx});function Ns(e){let{scrollX:t,msaAreaWidth:r,minimapHeight:n,colWidth:o,numColumns:i}=e,a=r/i/o,s=-t,c=s*a,l=(s+r)*a,A=Math.max(l-c,20),u=n-12,m=`${c+A},0 ${c},0 0,${u} ${r},${u}`;return{unit:a,s:c,w:A,polygonHeight:u,polygonPoints:m}}var zA=h(()=>{});var Zn,Mg,u_,_g,Tg=h(()=>{Zn=f(v(),1),Mg=f(H(),1);zA();u_=(0,Mg.observer)(({model:e})=>{let{msaAreaWidth:t}=e,{s:r,w:n,polygonPoints:o}=Ns(e),i="rgb(66, 119, 127)",a=.3;return Zn.default.createElement(Zn.default.Fragment,null,Zn.default.createElement("rect",{x:0,y:0,width:t,height:12,stroke:"#555",fill:"none"}),Zn.default.createElement("rect",{x:Math.max(0,r),y:0,width:n,height:12,fill:i,fillOpacity:a,stroke:"#555"}),Zn.default.createElement("g",{transform:`translate(0 ${12})`},Zn.default.createElement("polygon",{fill:i,fillOpacity:a,points:o})))}),_g=u_});function Ls({model:e,offsetY:t,blockSizeY:r}){let{leaves:n,rowHeight:o}=e,i=Math.max(0,Math.floor((t-o)/o)),a=Math.max(0,Math.ceil((t+r+o)/o));return n.slice(i,a)}var $A=h(()=>{});function Rs({model:e,offsetX:t,offsetY:r,ctx:n,highResScaleFactorOverride:o,blockSizeYOverride:i}){let{blockSize:a,rowHeight:s,highResScaleFactor:c,showDomains:l}=e;if(l){let A=o??c,u=i??a;n.resetTransform(),n.scale(A,A),n.translate(-t,s/2-r);let m=Ls({model:e,offsetY:r,blockSizeY:u});f_({model:e,ctx:n,visibleLeaves:m})}}function f_({model:e,ctx:t,visibleLeaves:r}){let{subFeatureRows:n,colWidth:o,rowHeight:i,fillPalette:a,strokePalette:s,tidyFilteredGatheredInterProAnnotations:c}=e;for(let l=0,A=r.length;l<A;l++){let u=r[l],{x:m,data:{name:d}}=u,g=m,E=c[d];if(E)for(let x=0,I=E.length;x<I;x++){let{start:p,end:w,accession:y}=E[x],b=e.seqPosToVisibleCol(d,p-1),Q=e.seqPosToVisibleCol(d,w);if(b===void 0||Q===void 0)continue;let S=b*o;t.fillStyle=a[y],t.strokeStyle=s[y];let k=n?4:i,T=g-i+(n?x*k:0),_=o*(Q-b);t.fillRect(S,T,_,k),t.strokeRect(S,T,_,k)}}}var KA=h(()=>{$A()});function aa({offsetX:e,blockWidth:t,colWidth:r}){return{xStart:Math.max(0,Math.floor(e/r)),xEnd:Math.max(0,Math.ceil((e+t)/r))}}var XA=h(()=>{});function _r(e,t,r=!1){e.font=e.font.replace(/(?:bold )?[\d.]+px/,`${r?"bold ":""}${t}px`)}var Jo=h(()=>{});var d_,Xr,Ke,zt,Og,kg,ZA,m_,Fs,Gg,Ug,Dg,Ng,Lg,sa,p_,g_,h_,C_,ru,Rg,E_,eu,tu,Fg,nu,it,Pg,Ps,Os=h(()=>{d_={grad:.9,turn:360,rad:360/(2*Math.PI)},Xr=function(e){return typeof e=="string"?e.length>0:typeof e=="number"},Ke=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=Math.pow(10,t)),Math.round(r*e)/r+0},zt=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=1),e>r?r:e>t?e:t},Og=function(e){return(e=isFinite(e)?e%360:0)>0?e:e+360},kg=function(e){return{r:zt(e.r,0,255),g:zt(e.g,0,255),b:zt(e.b,0,255),a:zt(e.a)}},ZA=function(e){return{r:Ke(e.r),g:Ke(e.g),b:Ke(e.b),a:Ke(e.a,3)}},m_=/^#([0-9a-f]{3,8})$/i,Fs=function(e){var t=e.toString(16);return t.length<2?"0"+t:t},Gg=function(e){var t=e.r,r=e.g,n=e.b,o=e.a,i=Math.max(t,r,n),a=i-Math.min(t,r,n),s=a?i===t?(r-n)/a:i===r?2+(n-t)/a:4+(t-r)/a:0;return{h:60*(s<0?s+6:s),s:i?a/i*100:0,v:i/255*100,a:o}},Ug=function(e){var t=e.h,r=e.s,n=e.v,o=e.a;t=t/360*6,r/=100,n/=100;var i=Math.floor(t),a=n*(1-r),s=n*(1-(t-i)*r),c=n*(1-(1-t+i)*r),l=i%6;return{r:255*[n,s,a,a,c,n][l],g:255*[c,n,n,s,a,a][l],b:255*[a,a,c,n,n,s][l],a:o}},Dg=function(e){return{h:Og(e.h),s:zt(e.s,0,100),l:zt(e.l,0,100),a:zt(e.a)}},Ng=function(e){return{h:Ke(e.h),s:Ke(e.s),l:Ke(e.l),a:Ke(e.a,3)}},Lg=function(e){return Ug((r=(t=e).s,{h:t.h,s:(r*=((n=t.l)<50?n:100-n)/100)>0?2*r/(n+r)*100:0,v:n+r,a:t.a}));var t,r,n},sa=function(e){return{h:(t=Gg(e)).h,s:(o=(200-(r=t.s))*(n=t.v)/100)>0&&o<200?r*n/100/(o<=100?o:200-o)*100:0,l:o/2,a:t.a};var t,r,n,o},p_=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,g_=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,h_=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,C_=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,ru={string:[[function(e){var t=m_.exec(e);return t?(e=t[1]).length<=4?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:e.length===4?Ke(parseInt(e[3]+e[3],16)/255,2):1}:e.length===6||e.length===8?{r:parseInt(e.substr(0,2),16),g:parseInt(e.substr(2,2),16),b:parseInt(e.substr(4,2),16),a:e.length===8?Ke(parseInt(e.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(e){var t=h_.exec(e)||C_.exec(e);return t?t[2]!==t[4]||t[4]!==t[6]?null:kg({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:t[7]===void 0?1:Number(t[7])/(t[8]?100:1)}):null},"rgb"],[function(e){var t=p_.exec(e)||g_.exec(e);if(!t)return null;var r,n,o=Dg({h:(r=t[1],n=t[2],n===void 0&&(n="deg"),Number(r)*(d_[n]||1)),s:Number(t[3]),l:Number(t[4]),a:t[5]===void 0?1:Number(t[5])/(t[6]?100:1)});return Lg(o)},"hsl"]],object:[[function(e){var t=e.r,r=e.g,n=e.b,o=e.a,i=o===void 0?1:o;return Xr(t)&&Xr(r)&&Xr(n)?kg({r:Number(t),g:Number(r),b:Number(n),a:Number(i)}):null},"rgb"],[function(e){var t=e.h,r=e.s,n=e.l,o=e.a,i=o===void 0?1:o;if(!Xr(t)||!Xr(r)||!Xr(n))return null;var a=Dg({h:Number(t),s:Number(r),l:Number(n),a:Number(i)});return Lg(a)},"hsl"],[function(e){var t=e.h,r=e.s,n=e.v,o=e.a,i=o===void 0?1:o;if(!Xr(t)||!Xr(r)||!Xr(n))return null;var a=(function(s){return{h:Og(s.h),s:zt(s.s,0,100),v:zt(s.v,0,100),a:zt(s.a)}})({h:Number(t),s:Number(r),v:Number(n),a:Number(i)});return Ug(a)},"hsv"]]},Rg=function(e,t){for(var r=0;r<t.length;r++){var n=t[r][0](e);if(n)return[n,t[r][1]]}return[null,void 0]},E_=function(e){return typeof e=="string"?Rg(e.trim(),ru.string):typeof e=="object"&&e!==null?Rg(e,ru.object):[null,void 0]},eu=function(e,t){var r=sa(e);return{h:r.h,s:zt(r.s+100*t,0,100),l:r.l,a:r.a}},tu=function(e){return(299*e.r+587*e.g+114*e.b)/1e3/255},Fg=function(e,t){var r=sa(e);return{h:r.h,s:r.s,l:zt(r.l+100*t,0,100),a:r.a}},nu=(function(){function e(t){this.parsed=E_(t)[0],this.rgba=this.parsed||{r:0,g:0,b:0,a:1}}return e.prototype.isValid=function(){return this.parsed!==null},e.prototype.brightness=function(){return Ke(tu(this.rgba),2)},e.prototype.isDark=function(){return tu(this.rgba)<.5},e.prototype.isLight=function(){return tu(this.rgba)>=.5},e.prototype.toHex=function(){return t=ZA(this.rgba),r=t.r,n=t.g,o=t.b,a=(i=t.a)<1?Fs(Ke(255*i)):"","#"+Fs(r)+Fs(n)+Fs(o)+a;var t,r,n,o,i,a},e.prototype.toRgb=function(){return ZA(this.rgba)},e.prototype.toRgbString=function(){return t=ZA(this.rgba),r=t.r,n=t.g,o=t.b,(i=t.a)<1?"rgba("+r+", "+n+", "+o+", "+i+")":"rgb("+r+", "+n+", "+o+")";var t,r,n,o,i},e.prototype.toHsl=function(){return Ng(sa(this.rgba))},e.prototype.toHslString=function(){return t=Ng(sa(this.rgba)),r=t.h,n=t.s,o=t.l,(i=t.a)<1?"hsla("+r+", "+n+"%, "+o+"%, "+i+")":"hsl("+r+", "+n+"%, "+o+"%)";var t,r,n,o,i},e.prototype.toHsv=function(){return t=Gg(this.rgba),{h:Ke(t.h),s:Ke(t.s),v:Ke(t.v),a:Ke(t.a,3)};var t},e.prototype.invert=function(){return it({r:255-(t=this.rgba).r,g:255-t.g,b:255-t.b,a:t.a});var t},e.prototype.saturate=function(t){return t===void 0&&(t=.1),it(eu(this.rgba,t))},e.prototype.desaturate=function(t){return t===void 0&&(t=.1),it(eu(this.rgba,-t))},e.prototype.grayscale=function(){return it(eu(this.rgba,-1))},e.prototype.lighten=function(t){return t===void 0&&(t=.1),it(Fg(this.rgba,t))},e.prototype.darken=function(t){return t===void 0&&(t=.1),it(Fg(this.rgba,-t))},e.prototype.rotate=function(t){return t===void 0&&(t=15),this.hue(this.hue()+t)},e.prototype.alpha=function(t){return typeof t=="number"?it({r:(r=this.rgba).r,g:r.g,b:r.b,a:t}):Ke(this.rgba.a,3);var r},e.prototype.hue=function(t){var r=sa(this.rgba);return typeof t=="number"?it({h:t,s:r.s,l:r.l,a:r.a}):Ke(r.h)},e.prototype.isEqual=function(t){return this.toHex()===it(t).toHex()},e})(),it=function(e){return e instanceof nu?e:new nu(e)},Pg=[],Ps=function(e){e.forEach(function(t){Pg.indexOf(t)<0&&(t(nu,ru),Pg.push(t))})}});function Hg(e){e.prototype.luminance=function(){return t=iu(this.rgba),(r=2)===void 0&&(r=0),n===void 0&&(n=Math.pow(10,r)),Math.round(n*t)/n+0;var t,r,n},e.prototype.contrast=function(t){t===void 0&&(t="#FFF");var r,n,o,i,a,s,c,l=t instanceof e?t:new e(t);return i=this.rgba,a=l.toRgb(),s=iu(i),c=iu(a),r=s>c?(s+.05)/(c+.05):(c+.05)/(s+.05),(n=2)===void 0&&(n=0),o===void 0&&(o=Math.pow(10,n)),Math.floor(o*r)/o+0},e.prototype.isReadable=function(t,r){return t===void 0&&(t="#FFF"),r===void 0&&(r={}),this.contrast(t)>=(s=(a=(n=r).size)===void 0?"normal":a,(i=(o=n.level)===void 0?"AA":o)==="AAA"&&s==="normal"?7:i==="AA"&&s==="large"?3:4.5);var n,o,i,a,s}}var ou,iu,jg=h(()=>{ou=function(e){var t=e/255;return t<.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},iu=function(e){return .2126*ou(e.r)+.7152*ou(e.g)+.0722*ou(e.b)}});function Gs(e,t){var r={white:"#ffffff",bisque:"#ffe4c4",blue:"#0000ff",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",antiquewhite:"#faebd7",aqua:"#00ffff",azure:"#f0ffff",whitesmoke:"#f5f5f5",papayawhip:"#ffefd5",plum:"#dda0dd",blanchedalmond:"#ffebcd",black:"#000000",gold:"#ffd700",goldenrod:"#daa520",gainsboro:"#dcdcdc",cornsilk:"#fff8dc",cornflowerblue:"#6495ed",burlywood:"#deb887",aquamarine:"#7fffd4",beige:"#f5f5dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkkhaki:"#bdb76b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",peachpuff:"#ffdab9",darkmagenta:"#8b008b",darkred:"#8b0000",darkorchid:"#9932cc",darkorange:"#ff8c00",darkslateblue:"#483d8b",gray:"#808080",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",deeppink:"#ff1493",deepskyblue:"#00bfff",wheat:"#f5deb3",firebrick:"#b22222",floralwhite:"#fffaf0",ghostwhite:"#f8f8ff",darkviolet:"#9400d3",magenta:"#ff00ff",green:"#008000",dodgerblue:"#1e90ff",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",blueviolet:"#8a2be2",forestgreen:"#228b22",lawngreen:"#7cfc00",indianred:"#cd5c5c",indigo:"#4b0082",fuchsia:"#ff00ff",brown:"#a52a2a",maroon:"#800000",mediumblue:"#0000cd",lightcoral:"#f08080",darkturquoise:"#00ced1",lightcyan:"#e0ffff",ivory:"#fffff0",lightyellow:"#ffffe0",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",linen:"#faf0e6",mediumaquamarine:"#66cdaa",lemonchiffon:"#fffacd",lime:"#00ff00",khaki:"#f0e68c",mediumseagreen:"#3cb371",limegreen:"#32cd32",mediumspringgreen:"#00fa9a",lightskyblue:"#87cefa",lightblue:"#add8e6",midnightblue:"#191970",lightpink:"#ffb6c1",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",mintcream:"#f5fffa",lightslategray:"#778899",lightslategrey:"#778899",navajowhite:"#ffdead",navy:"#000080",mediumvioletred:"#c71585",powderblue:"#b0e0e6",palegoldenrod:"#eee8aa",oldlace:"#fdf5e6",paleturquoise:"#afeeee",mediumturquoise:"#48d1cc",mediumorchid:"#ba55d3",rebeccapurple:"#663399",lightsteelblue:"#b0c4de",mediumslateblue:"#7b68ee",thistle:"#d8bfd8",tan:"#d2b48c",orchid:"#da70d6",mediumpurple:"#9370db",purple:"#800080",pink:"#ffc0cb",skyblue:"#87ceeb",springgreen:"#00ff7f",palegreen:"#98fb98",red:"#ff0000",yellow:"#ffff00",slateblue:"#6a5acd",lavenderblush:"#fff0f5",peru:"#cd853f",palevioletred:"#db7093",violet:"#ee82ee",teal:"#008080",slategray:"#708090",slategrey:"#708090",aliceblue:"#f0f8ff",darkseagreen:"#8fbc8f",darkolivegreen:"#556b2f",greenyellow:"#adff2f",seagreen:"#2e8b57",seashell:"#fff5ee",tomato:"#ff6347",silver:"#c0c0c0",sienna:"#a0522d",lavender:"#e6e6fa",lightgreen:"#90ee90",orange:"#ffa500",orangered:"#ff4500",steelblue:"#4682b4",royalblue:"#4169e1",turquoise:"#40e0d0",yellowgreen:"#9acd32",salmon:"#fa8072",saddlebrown:"#8b4513",sandybrown:"#f4a460",rosybrown:"#bc8f8f",darksalmon:"#e9967a",lightgoldenrodyellow:"#fafad2",snow:"#fffafa",lightgrey:"#d3d3d3",lightgray:"#d3d3d3",dimgray:"#696969",dimgrey:"#696969",olivedrab:"#6b8e23",olive:"#808000"},n={};for(var o in r)n[r[o]]=o;var i={};e.prototype.toName=function(a){if(!(this.rgba.a||this.rgba.r||this.rgba.g||this.rgba.b))return"transparent";var s,c,l=n[this.toHex()];if(l)return l;if(a?.closest){var A=this.toRgb(),u=1/0,m="black";if(!i.length)for(var d in r)i[d]=new e(r[d]).toRgb();for(var g in r){var E=(s=A,c=i[g],Math.pow(s.r-c.r,2)+Math.pow(s.g-c.g,2)+Math.pow(s.b-c.b,2));E<u&&(u=E,m=g)}return m}},t.string.push([function(a){var s=a.toLowerCase(),c=s==="transparent"?"#0000":r[s];return c?new e(c).toRgb():null},"name"])}var au=h(()=>{});function Jg(e,t){let r=`${e}|${t}`,n=qg.get(r);if(n!==void 0)return n;let o=it(e);if(!o.isReadable(t)){let a=it(t).luminance()<.5;for(let s=0;s<40&&!o.isReadable(t);s++)o=a?o.lighten(.05):o.darken(.05)}let i=o.toHex();return qg.set(r,i),i}function Vo(e,t){return Object.fromEntries(Object.entries(e).map(t))}function ca(e,t){return Vo(e,([r,n])=>[r,t.palette.getContrastText(it(n).toHex())])}function su(e,t){if(e.length===0)return t;let r=[],n=0;for(let o of e)o>n&&r.push(t.slice(n,o)),n=o+1;return n<t.length&&r.push(t.slice(n)),r.join("")}function Vg(e,t){let r=[],n=e.length,o=0,i=0,a=-1,s=[];for(let c=0;c<t.length;c++)i<n&&e[i]===c?(t.charCodeAt(c)-45>>>0<=1||(a===o?s.push(t[c]):(s.length>0&&r.push({pos:a,letters:s.join("")}),a=o,s=[t[c]])),i++):o++;return s.length>0&&r.push({pos:a,letters:s.join("")}),r}function cu(e){return e.end-e.start}function la(e){return e==="-"||e==="."}var qg,In=h(()=>{Os();jg();au();Ps([Gs,Hg]);qg=new Map});function Us({model:e,offsetX:t,offsetY:r,contrastScheme:n,ctx:o,theme:i,highResScaleFactorOverride:a,blockSizeXOverride:s,blockSizeYOverride:c}){let{colWidth:l,blockSize:A,rowHeight:u,fontSize:m,highResScaleFactor:d,actuallyShowDomains:g,bgColor:E}=e,x=a??d,I=s??A,p=c??A;o.resetTransform(),o.scale(x,x),o.translate(-t,u/2-r),o.textAlign="center",_r(o,m,!E);let{xStart:w,xEnd:y}=aa({offsetX:t,blockWidth:I,colWidth:l}),b=Ls({model:e,offsetY:r,blockSizeY:p}),{relativeTo:Q,columns:S}=e,k=Q?S.get(Q)?.slice(w,y):null;g?x_({model:e,ctx:o,xStart:w,xEnd:y,visibleLeaves:b,referenceSeq:k}):I_({model:e,ctx:o,theme:i,contrastScheme:n,xStart:w,xEnd:y,visibleLeaves:b,referenceSeq:k}),w_({model:e,ctx:o,xStart:w,xEnd:y,visibleLeaves:b}),o.resetTransform()}function I_({model:e,ctx:t,theme:r,contrastScheme:n,visibleLeaves:o,xStart:i,xEnd:a,referenceSeq:s}){let{bgColor:c,colorSchemeName:l,colorScheme:A,columns:u,colWidth:m,rowHeight:d,relativeTo:g,showMsaLetters:E,colClustalX:x,colConsensus:I}=e,p=l==="clustalx_protein_dynamic",w=l==="percent_identity_dynamic",y=c||p||w;if(!y&&!E)return;let b=i*m,Q=m/2,S=d/4;for(let k=0,T=o.length;k<T;k++){let _=o[k],{name:M}=_.data,L=_.x,U=u.get(M)?.slice(i,a);if(!U)continue;let Y=L-d,Ne=L-S;for(let te=0,Pe=U.length;te<Pe;te++){let Dt=U[te],$n=te*m+b,lr=s&&M!==g&&Dt===s[te],re;if(p)re=x[i+te][Dt];else if(w){let Ar=I[i+te];re=Dt===Ar.letter?Ar.color:void 0}else re=A[Dt];y&&(t.fillStyle=lr?r.palette.action.hover:re||r.palette.background.default,t.fillRect($n,Y,m,d)),E&&(t.fillStyle=c?n[Dt]??"black":re?Jg(re,r.palette.background.default):r.palette.text.primary,t.fillText(lr?".":Dt,$n+Q,Ne))}}}function x_({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o,referenceSeq:i}){let{showMsaLetters:a,columns:s,colWidth:c,rowHeight:l,relativeTo:A}=e;if(!a)return;let u=n*c,m=c/2,d=l/4;t.fillStyle="black";for(let g=0,E=r.length;g<E;g++){let x=r[g],{name:I}=x.data,p=x.x-d,w=s.get(I)?.slice(n,o);if(w)for(let y=0,b=w.length;y<b;y++){let Q=w[y],S=i&&I!==A&&Q===i[y];t.fillText(S?".":Q,y*c+u+m,p)}}}function w_({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o}){let{bgColor:i,hideGapsEffective:a}=e;a&&(t.lineWidth=1,t.strokeStyle="#f0f",Yg({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:0}),t.strokeStyle=i?"#fff":"#000",Yg({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:-1}))}function Yg({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o,offset:i}){let{colWidth:s,rowHeight:c,insertionPositions:l}=e;for(let A of r){let{name:u}=A.data,m=l.get(u);if(m){let d=A.x;for(let{pos:g}of m)if(g>=n&&g<o){let E=g*s,x=d-c,I=d;t.beginPath(),t.moveTo(E+i,x+i);let p=x,w=!0;for(;p<I;){let y=Math.min(p+2,I),b=w?E+1:E-1;t.lineTo(b+i,y+i),p=y,w=!w}t.stroke()}}}}var lu=h(()=>{$A();XA();Jo();In()});function Au({ctx:e,conservation:t,colWidth:r,trackHeight:n,offsetX:o,blockSize:i}){let{xStart:a,xEnd:s}=aa({offsetX:o,blockWidth:i,colWidth:r});e.fillStyle="gray";for(let c=a;c<s&&c<t.length;c++){let A=t[c]*n,u=c*r;e.fillRect(u,n-A,r,A)}}function uu({ctx:e,data:t,colorScheme:r,contrastScheme:n,bgColor:o,colWidth:i,rowHeight:a,offsetX:s,blockSize:c}){let{xStart:l,xEnd:A}=aa({offsetX:s,blockWidth:c,colWidth:i}),u=t?.slice(l,A);for(let m=0;u&&m<u.length;m++){let d=u[m],g=r[d.toUpperCase()];if(o){let E=(l+m)*i;e.fillStyle=g||"white",e.fillRect(E,0,i,a),a>=10&&i>=a/2&&(e.fillStyle=n[d.toUpperCase()]||"black",e.fillText(d,E+i/2,a/2+1))}}}function y_({model:e,ctx:t,offsetX:r,offsetY:n,trackHeight:o,blockSizeXOverride:i,highResScaleFactorOverride:a}){let{blockSize:s,colWidth:c,highResScaleFactor:l,conservation:A}=e,u=i??s,m=a??l;t.resetTransform(),t.scale(m,m),t.translate(-r,n),Au({ctx:t,conservation:A,colWidth:c,trackHeight:o,offsetX:r,blockSize:u}),t.resetTransform()}function b_({model:e,ctx:t,track:r,offsetX:n,offsetY:o,contrastScheme:i,blockSizeXOverride:a,highResScaleFactorOverride:s}){let{blockSize:c,bgColor:l,colorScheme:A,colWidth:u,fontSize:m,rowHeight:d,highResScaleFactor:g}=e,{customColorScheme:E,data:x}=r.model,I=E??A,p=a??c,w=s??g;t.resetTransform(),t.scale(w,w),t.translate(-n,o),t.textAlign="center",_r(t,m),uu({ctx:t,data:x,colorScheme:I,contrastScheme:i,bgColor:l,colWidth:u,rowHeight:d,offsetX:n,blockSize:p}),t.resetTransform()}function Wg({model:e,ctx:t,offsetX:r,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}){let{turnedOnTracks:a}=e,s=0;for(let c of a){let l=c.model.height;c.model.id==="conservation"?y_({model:e,ctx:t,offsetX:r,offsetY:s,trackHeight:l,blockSizeXOverride:o,highResScaleFactorOverride:i}):b_({model:e,ctx:t,track:c,offsetX:r,offsetY:s,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}),s+=l}}var Hs=h(()=>{Jo();XA()});function eo(e){let t=[],r=[e];for(;r.length>0;){let n=r.pop();if(t.push(n),n.children)for(let o=n.children.length-1;o>=0;o--)r.push(n.children[o])}return t}function B_(e){let t=eo(e);for(let r=t.length-1;r>=0;r--){let n=t[r],o=0;if(n.children)for(let i of n.children)i.height+1>o&&(o=i.height+1);n.height=o}}function zg(e,t){let r={data:e,children:null,parent:null,depth:0,height:0},n=[r];for(;n.length>0;){let o=n.pop(),i=t(o.data);if(i?.length){o.children=i.map(a=>({data:a,children:null,parent:o,depth:o.depth+1,height:0}));for(let a of o.children)n.push(a)}}return B_(r),r}function $g(e,t){let r=eo(e);for(let n=r.length-1;n>=0;n--){let o=r[n],i=t(o.data);if(o.children)for(let a of o.children)i+=a.value;o.value=i}return e}function Kg(e,t){let r=[e];for(;r.length>0;){let n=r.pop();if(n.children){n.children.sort(t);for(let o of n.children)r.push(o)}}return e}function js(e,t){let r=[e],n;for(;r.length>0&&n===void 0;){let o=r.pop();if(t(o))n=o;else if(o.children)for(let i=o.children.length-1;i>=0;i--)r.push(o.children[i])}return n}function Aa(e){let t=[],r=[e];for(;r.length>0;){let n=r.pop();if(n.children)for(let o=n.children.length-1;o>=0;o--)r.push(n.children[o]);else t.push(n)}return t}function Xg(e){let t=[];return fu(e,(r,n)=>{t.push({source:r,target:n})}),t}function fu(e,t){let r=[e];for(;r.length>0;){let n=r.pop();if(n.children)for(let o=n.children.length-1;o>=0;o--){let i=n.children[o];t(n,i),r.push(i)}}}function ua(e,t){for(let r of eo(e))t(r)}function Zg(e,t,r){let n=Aa(e),o=n.length,i=t/o;for(let l=0;l<o;l++)n[l].x=(l+.5)*i;let a=eo(e);for(let l=a.length-1;l>=0;l--){let A=a[l];if(A.children){let u=0;for(let m of A.children)u+=m.x;A.x=u/A.children.length}}let s=e.height,c=[{node:e,depth:0}];for(;c.length>0;){let{node:l,depth:A}=c.pop();if(l.y=s===0?r:A/s*r,l.children)for(let u of l.children)c.push({node:u,depth:A+1})}}function eh(e){e.children&&(fa(e),e._children=e.children,e.children=null)}function th(e){let t=e._children??e.children,r=1/0,n=0;if(t){let o=t.map(i=>({node:i,acc:Math.max(i.data.length??0,0)}));for(;o.length>0;){let{node:i,acc:a}=o.pop(),s=i.children??i._children;if(s?.length)for(let c of s)o.push({node:c,acc:a+Math.max(c.data.length??0,0)});else r=Math.min(r,a),n=Math.max(n,a)}}return{min:r===1/0?0:r,max:n}}function fa(e){let t=eo(e);for(let r=t.length-1;r>=0;r--){let n=t[r];if(n.depthToLeaf===void 0){let o=0;if(n.children)for(let i of n.children)o=Math.max(o,1+i.depthToLeaf);n.depthToLeaf=o}}return e.depthToLeaf}function rh(e){let t=0;for(let r of eo(e))t=Math.max(t,r.len||0);return t}function nh(e){let t=eo(e),r=new Map;for(let n=t.length-1;n>=0;n--){let o=t[n],i=0;if(o.children)for(let a of o.children)i=Math.max(i,r.get(a));r.set(o,(o.data.length||0)+i)}return r.get(e)}function oh(e,t,r){let n=[{node:e,y0:t}];for(;n.length>0;){let{node:o,y0:i}=n.pop(),a=i+Math.max(o.data.length||0,0);if(o.len=a*r,o.children)for(let s of o.children)n.push({node:s,y0:a})}}var du=h(()=>{});function da(e,t,r,n){if(t)return e.len;if(n===0)return 0;let o=fa(e);return(n-o)/n*r}function S_({offsetY:e,ctx:t,model:r,theme:n,maxBranchLen:o,maxDepthToLeaf:i,blockSizeYOverride:a}){let{hierarchy:s,showBranchLenEffective:c,blockSize:l}=r,A=a??l;t.strokeStyle=n.palette.text.primary,fu(s,(u,m)=>{let d=u.x,g=m.x,E=da(m,c,o,i),x=da(u,c,o,i);if(E===void 0||x===void 0)return;let I=Math.min(d,g),p=Math.max(d,g);e+A>=I&&p>=e&&(t.beginPath(),t.moveTo(x,d),t.lineTo(x,g),t.lineTo(E,g),t.stroke())})}function Q_({ctx:e,clickMap:t,offsetY:r,model:n,theme:o,maxBranchLen:i,maxDepthToLeaf:a,blockSizeYOverride:s}){let{hierarchy:c,showBranchLenEffective:l,collapsed:A,blockSize:u,rowHeight:m,fontSize:d,marginLeft:g}=n,E=s??u,x=Math.max(2,m*.42);ua(c,I=>{let{id:p,name:w}=I.data;if(A.includes(p)){let y=da(I,l,i,a),b=I.x,Q=b>r-Yo&&b<r+E+Yo,S=l?I.collapsedTipXFar??i:i;if(y!==void 0&&Q&&S>y){e.beginPath(),e.moveTo(y,b),e.lineTo(S,b-x),e.lineTo(S,b+x),e.closePath(),e.fillStyle=o.palette.action.disabled,e.fill(),e.strokeStyle=o.palette.text.primary,e.stroke();let k=I.value;k!==void 0&&m>=8&&(e.fillStyle=o.palette.text.primary,e.textAlign="left",e.fillText(`${k}`,S+3,b+d/4));let T=w===p?"Collapsed clade":w;t?.insert({minX:y+g,maxX:S+g,minY:b-x,maxY:b+x,branch:!0,id:p,name:k===void 0?T:`${T} (${k} tips)`})}}})}function v_({ctx:e,clickMap:t,offsetY:r,model:n,maxBranchLen:o,maxDepthToLeaf:i,blockSizeYOverride:a}){let{hierarchy:s,showBranchLenEffective:c,collapsed:l,blockSize:A,marginLeft:u}=n,m=a??A;ua(s,d=>{let g=da(d,c,o,i);if(g===void 0)return;let{data:E}=d,x=d.x,{id:I,name:p}=E;if(d.height>=1&&x>r-Yo&&x<r+m+Yo){let w=l.includes(I);e.strokeStyle="black",e.fillStyle=w?"black":"white",e.beginPath(),e.arc(g,x,to,0,2*Math.PI),e.fill(),e.stroke(),w||t?.insert({minX:g-to+u,maxX:g-to+mu+u,minY:x-to,maxY:x-to+mu,branch:!0,id:I,name:p})}})}function M_({theme:e,model:t,offsetY:r,ctx:n,clickMap:o,maxBranchLen:i,maxDepthToLeaf:a,blockSizeYOverride:s}){let{fontSize:c,showBranchLenEffective:l,treeMetadata:A,blockSize:u,labelsAlignRight:m,drawTree:d,treeAreaWidth:g,treeAreaWidthMinusMargin:E,marginLeft:x,leaves:I,noTree:p,labelWidthMap:w,collapsed:y}=t,b=s??u,Q=n.measureText("M").width;m?(n.textAlign="right",n.setLineDash([1,3])):n.textAlign="start";for(let S of I){let{data:{name:k,id:T}}=S,_=S.x,M=A[k]?.genome||k;if(!(y.includes(T)&&k===T)&&_>r-Yo&&_<r+b+Yo){let U=_+c/4,Y=0;p||(Y=da(S,l,i,a)??0);let Ne=w.get(k)??n.measureText(M).width;if(n.fillStyle=e.palette.text.primary,m){let Pe=E-2;d&&!p&&(n.moveTo(Y+to+2,_),n.lineTo(Pe-2-Ne,_),n.stroke()),n.fillText(M,Pe,U),o?.insert({minX:g-Ne,maxX:g,minY:U-Q,maxY:U,name:k,id:T})}else{let te=p?2:Y+mu;n.fillText(M,te,U),o?.insert({minX:te+x,maxX:te+Ne+x,minY:U-Q,maxY:U,name:k,id:T})}}}n.setLineDash([])}function qs({model:e,clickMap:t,ctx:r,offsetY:n,theme:o,highResScaleFactorOverride:i,blockSizeYOverride:a}){t?.clear();let{noTree:s,drawTree:c,drawNodeBubbles:l,highResScaleFactor:A,fontSize:u,showTreeText:m,marginLeft:d,rowHeight:g}=e;r.resetTransform();let E=i??A;r.scale(E,E),r.translate(d,-n),_r(r,u);let{maxBranchLength:x,maxDepthToLeaf:I}=e;!s&&c&&(S_({ctx:r,offsetY:n,model:e,theme:o,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:a}),Q_({ctx:r,clickMap:t,offsetY:n,model:e,theme:o,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:a}),l&&v_({ctx:r,offsetY:n,clickMap:t,model:e,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:a})),m&&M_({ctx:r,offsetY:n,model:e,clickMap:t,theme:o,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:a}),t?.finish()}var Wo,Yo,to,mu,Js=h(()=>{du();Jo();Wo=600,Yo=5,to=2.5,mu=to*2});var sh={};$e(sh,{Context:()=>hu});function ih(e){return!e||typeof e=="string"?e:e+""}function dr(e,t){let r=Object.keys(t);for(let n of r)e=e.replace(new RegExp("\\{"+n+"\\}","gi"),t[n]);return e}function pu(e){if(!e)throw new Error("cannot create a random attribute name for an undefined object");let t="ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz",r="";do{r="";for(let n=0;n<12;n++)r+=t[Math.floor(Math.random()*t.length)]}while(e[r]);return r}function __(e,t=10){let r={},n=e.split(",");for(let o=0;o<n.length;o+=2){let i="&"+n[o+1]+";",a=parseInt(n[o],t);r[i]="&#"+a+";"}return r["\\xa0"]="&#160;",r}function T_(e){let t={left:"start",right:"end",center:"middle",start:"start",end:"end"};return t[e]||t.start}function k_(e){let t={alphabetic:"alphabetic",hanging:"hanging",top:"text-before-edge",bottom:"text-after-edge",middle:"central"};return t[e]||t.alphabetic}var ah,ma,pa,gu,hu,ch=h(()=>{ah=__("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32),ma={strokeStyle:{svgAttr:"stroke",canvas:"#000000",svg:"none",apply:"stroke"},fillStyle:{svgAttr:"fill",canvas:"#000000",svg:null,apply:"fill"},lineCap:{svgAttr:"stroke-linecap",canvas:"butt",svg:"butt",apply:"stroke"},lineJoin:{svgAttr:"stroke-linejoin",canvas:"miter",svg:"miter",apply:"stroke"},miterLimit:{svgAttr:"stroke-miterlimit",canvas:10,svg:4,apply:"stroke"},lineWidth:{svgAttr:"stroke-width",canvas:1,svg:1,apply:"stroke"},globalAlpha:{svgAttr:"opacity",canvas:1,svg:1,apply:"fill stroke"},font:{canvas:"10px sans-serif"},shadowColor:{canvas:"#000000"},shadowOffsetX:{canvas:0},shadowOffsetY:{canvas:0},shadowBlur:{canvas:0},textAlign:{canvas:"start"},textBaseline:{canvas:"alphabetic"},lineDash:{svgAttr:"stroke-dasharray",canvas:[],svg:null,apply:"stroke"}},pa=class{__root;__ctx;constructor(t,r){this.__root=t,this.__ctx=r}addColorStop(t,r){let n=this.__ctx.__createElement("stop");if(n.setAttribute("offset",String(t)),ih(r).includes("rgba")){let i=/rgba\(\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi.exec(r);i&&(n.setAttribute("stop-color",dr("rgb({r},{g},{b})",{r:i[1],g:i[2],b:i[3]})),n.setAttribute("stop-opacity",i[4]))}else n.setAttribute("stop-color",ih(r));this.__root.appendChild(n)}},gu=class{__root;__ctx;constructor(t,r){this.__root=t,this.__ctx=r}},hu=class{width;height;enableMirroring;canvas;__document;__ctx;__canvas;__root;__ids;__defs;__currentElement;__styleStack;__groupStack;__currentDefaultPath;__currentPosition;__transformMatrix;__transformMatrixStack;__currentElementsToStyle;__options;__id;__fontUnderline;__fontHref;strokeStyle;fillStyle;lineCap;lineJoin;miterLimit;lineWidth;globalAlpha;font;shadowColor;shadowOffsetX;shadowOffsetY;shadowBlur;textAlign;textBaseline;lineDash;constructor(t,r){let n={width:500,height:500,enableMirroring:!1},o;typeof t=="number"&&r!==void 0?o={...n,width:t,height:r}:t&&typeof t=="object"?o=t:o=n,this.width=o.width||n.width,this.height=o.height||n.height,this.enableMirroring=o.enableMirroring!==void 0?o.enableMirroring:n.enableMirroring,this.canvas=this,this.__document=o.document||document,o.ctx?this.__ctx=o.ctx:(this.__canvas=this.__document.createElement("canvas"),this.__ctx=this.__canvas.getContext("2d")),this.__setDefaultStyles(),this.__styleStack=[this.__getStyleState()],this.__groupStack=[],this.__root=this.__document.createElementNS("http://www.w3.org/2000/svg","svg"),this.__root.setAttribute("version","1.1"),this.__root.setAttribute("xmlns","http://www.w3.org/2000/svg"),this.__root.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink"),this.__root.setAttribute("width",String(this.width)),this.__root.setAttribute("height",String(this.height)),this.__ids={},this.__defs=this.__document.createElementNS("http://www.w3.org/2000/svg","defs"),this.__root.appendChild(this.__defs),this.__currentElement=this.__document.createElementNS("http://www.w3.org/2000/svg","g"),this.__root.appendChild(this.__currentElement),this.__currentDefaultPath="",this.__currentPosition={},this.__transformMatrix=new DOMMatrix,this.resetTransform(),this.__options=o,this.__id=Math.random().toString(16).substring(2,8)}__createElement(t,r={},n){let o=this.__document.createElementNS("http://www.w3.org/2000/svg",t);n&&(o.setAttribute("fill","none"),o.setAttribute("stroke","none"));for(let i of Object.keys(r))o.setAttribute(i,r[i]);return o}__setDefaultStyles(){for(let t of Object.keys(ma))this[t]=ma[t].canvas}__applyStyleState(t){for(let r of Object.keys(t))this[r]=t[r]}__getStyleState(){let t={};for(let r of Object.keys(ma))t[r]=this[r];return t}__applyTransformation(t,r){let{a:n,b:o,c:i,d:a,e:s,f:c}=r||this.getTransform();t.setAttribute("transform",`matrix(${n} ${o} ${i} ${a} ${s} ${c})`)}__applyStyleToCurrentElement(t){let r=this.__currentElement,n=this.__currentElementsToStyle;if(n){r.setAttribute(t,""),r=n.element;for(let i of n.children)i.setAttribute(t,"")}let o=Object.keys(ma);for(let i of o){let a=ma[i],s=this[i];if(a.apply){if(s instanceof gu){if(s.__ctx)for(let c of Array.from(s.__ctx.__defs.childNodes)){let l=c.getAttribute("id");l&&(this.__ids[l]=l,this.__defs.appendChild(c))}r.setAttribute(a.apply,dr("url(#{id})",{id:s.__root.getAttribute("id")}))}else if(s instanceof pa)r.setAttribute(a.apply,dr("url(#{id})",{id:s.__root.getAttribute("id")}));else if(a.apply.includes(t)&&a.svg!==s)if((a.svgAttr==="stroke"||a.svgAttr==="fill")&&s&&s.includes("rgba")){let l=/rgba\(\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi.exec(s);if(l){r.setAttribute(a.svgAttr,dr("rgb({r},{g},{b})",{r:l[1],g:l[2],b:l[3]}));let A=Number(l[4]),u=this.globalAlpha;u!=null&&(A*=u),r.setAttribute(a.svgAttr+"-opacity",String(A))}}else{let c=a.svgAttr,l=s;if(i==="globalAlpha"){if(c=t+"-"+a.svgAttr,r.getAttribute(c))continue}else if(i==="lineWidth"){let A=this.__getTransformScale();l=s*Math.max(A.x,A.y)}r.setAttribute(c,l)}}}}__closestGroupOrSvg(t){return t=t||this.__currentElement,t.nodeName==="g"||t.nodeName==="svg"?t:this.__closestGroupOrSvg(t.parentNode)}getSerializedSvg(t){let r=new XMLSerializer().serializeToString(this.__root);if(/xmlns="http:\/\/www\.w3\.org\/2000\/svg".+xmlns="http:\/\/www\.w3\.org\/2000\/svg/gi.test(r)&&(r=r.replace('xmlns="http://www.w3.org/2000/svg','xmlns:xlink="http://www.w3.org/1999/xlink')),t)for(let o of Object.keys(ah)){let i=new RegExp(o,"gi");i.test(r)&&(r=r.replace(i,ah[o]))}return r}getSvg(){return this.__root}save(){let t=this.__createElement("g"),r=this.__closestGroupOrSvg();this.__groupStack.push(r),r.appendChild(t),this.__currentElement=t;let n=this.__getStyleState();this.__styleStack.push(n),this.__transformMatrixStack||(this.__transformMatrixStack=[]),this.__transformMatrixStack.push(this.getTransform())}restore(){this.__currentElement=this.__groupStack.pop(),this.__currentElementsToStyle=void 0,this.__currentElement||(this.__currentElement=this.__root.childNodes[1]);let t=this.__styleStack.pop();this.__applyStyleState(t),this.__transformMatrixStack&&this.__transformMatrixStack.length>0&&this.setTransform(this.__transformMatrixStack.pop())}beginPath(){this.__currentDefaultPath="",this.__currentPosition={};let t=this.__createElement("path",{},!0);this.__closestGroupOrSvg().appendChild(t),this.__currentElement=t}__applyCurrentDefaultPath(){let t=this.__currentElement;t.nodeName==="path"&&t.setAttribute("d",this.__currentDefaultPath)}__addPathCommand(t){this.__currentDefaultPath+=" ",this.__currentDefaultPath+=t}moveTo(t,r){this.__currentElement.nodeName!=="path"&&this.beginPath(),this.__currentPosition={x:t,y:r},this.__addPathCommand(dr("M {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y}))}closePath(){this.__currentDefaultPath&&this.__addPathCommand("Z")}lineTo(t,r){this.__currentPosition={x:t,y:r},this.__currentDefaultPath.includes("M")?this.__addPathCommand(dr("L {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y})):this.__addPathCommand(dr("M {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y}))}bezierCurveTo(t,r,n,o,i,a){this.__currentPosition={x:i,y:a},this.__addPathCommand(dr("C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}",{cp1x:this.__matrixTransform(t,r).x,cp1y:this.__matrixTransform(t,r).y,cp2x:this.__matrixTransform(n,o).x,cp2y:this.__matrixTransform(n,o).y,x:this.__matrixTransform(i,a).x,y:this.__matrixTransform(i,a).y}))}quadraticCurveTo(t,r,n,o){this.__currentPosition={x:n,y:o},this.__addPathCommand(dr("Q {cpx} {cpy} {x} {y}",{cpx:this.__matrixTransform(t,r).x,cpy:this.__matrixTransform(t,r).y,x:this.__matrixTransform(n,o).x,y:this.__matrixTransform(n,o).y}))}stroke(){this.__currentElement.nodeName==="path"&&this.__currentElement.setAttribute("paint-order","fill stroke markers"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement("stroke")}fill(){this.__currentElement.nodeName==="path"&&this.__currentElement.setAttribute("paint-order","stroke fill markers"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement("fill")}rect(t,r,n,o){this.__currentElement.nodeName!=="path"&&this.beginPath(),this.moveTo(t,r),this.lineTo(t+n,r),this.lineTo(t+n,r+o),this.lineTo(t,r+o),this.lineTo(t,r),this.closePath()}__clearCanvas(){let t=this.__root.childNodes[1];this.__root.removeChild(t),this.__currentElement=this.__document.createElementNS("http://www.w3.org/2000/svg","g"),this.__root.appendChild(this.__currentElement),this.__groupStack=[]}fillRect(t,r,n,o){let{a:i,b:a,c:s,d:c,e:l,f:A}=this.getTransform();JSON.stringify([i,a,s,c,l,A])===JSON.stringify([1,0,0,1,0,0])&&t===0&&r===0&&n===this.width&&o===this.height&&this.__clearCanvas();let u=this.__createElement("rect",{x:t,y:r,width:n,height:o},!0);this.__closestGroupOrSvg().appendChild(u),this.__currentElement=u,this.__applyTransformation(u),this.__applyStyleToCurrentElement("fill")}strokeRect(t,r,n,o){let i=this.__createElement("rect",{x:t,y:r,width:n,height:o},!0);this.__closestGroupOrSvg().appendChild(i),this.__currentElement=i,this.__applyTransformation(i),this.__applyStyleToCurrentElement("stroke")}clearRect(t,r,n,o){let{a:i,b:a,c:s,d:c,e:l,f:A}=this.getTransform();if(JSON.stringify([i,a,s,c,l,A])===JSON.stringify([1,0,0,1,0,0])&&t===0&&r===0&&n===this.width&&o===this.height){this.__clearCanvas();return}let u=this.__createElement("rect",{x:t,y:r,width:n,height:o,fill:"#FFFFFF"},!0);this.__applyTransformation(u),this.__closestGroupOrSvg().appendChild(u)}createLinearGradient(t,r,n,o){let i=this.__createElement("linearGradient",{id:pu(this.__ids),x1:t+"px",x2:n+"px",y1:r+"px",y2:o+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(i),new pa(i,this)}createRadialGradient(t,r,n,o,i,a){let s=this.__createElement("radialGradient",{id:pu(this.__ids),cx:o+"px",cy:i+"px",r:a+"px",fx:t+"px",fy:r+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(s),new pa(s,this)}__applyText(t,r,n,o){let i=document.createElement("span");i.setAttribute("style","font:"+this.font);let a=i.style,s=this.__closestGroupOrSvg(),c=this.__createElement("text",{"font-family":a.fontFamily,"font-size":a.fontSize,"font-style":a.fontStyle,"font-weight":a.fontWeight,"text-decoration":this.__fontUnderline,x:r,y:n,"text-anchor":T_(this.textAlign),"dominant-baseline":k_(this.textBaseline)},!0);c.appendChild(this.__document.createTextNode(t)),this.__currentElement=c,this.__applyTransformation(c),this.__applyStyleToCurrentElement(o);let l=c;if(this.__fontHref){let A=this.__createElement("a");A.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.__fontHref),A.appendChild(c),l=A}s.appendChild(l)}fillText(t,r,n){this.__applyText(t,r,n,"fill")}strokeText(t,r,n){this.__applyText(t,r,n,"stroke")}measureText(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)}arc(t,r,n,o,i,a){if(o===i)return;o=o%(2*Math.PI),i=i%(2*Math.PI),o===i&&(i=(i+2*Math.PI-.001*(a?-1:1))%(2*Math.PI));let s=t+n*Math.cos(i),c=r+n*Math.sin(i),l=t+n*Math.cos(o),A=r+n*Math.sin(o),u=a?0:1,m=0,d=i-o;d<0&&(d+=2*Math.PI),a?m=d>Math.PI?0:1:m=d>Math.PI?1:0;let g=Math.hypot(this.__transformMatrix.a,this.__transformMatrix.b),E=Math.hypot(this.__transformMatrix.c,this.__transformMatrix.d);this.lineTo(l,A),this.__addPathCommand(dr("A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}",{rx:n*g,ry:n*E,xAxisRotation:0,largeArcFlag:m,sweepFlag:u,endX:this.__matrixTransform(s,c).x,endY:this.__matrixTransform(s,c).y})),this.__currentPosition={x:s,y:c}}clip(){let t=this.__closestGroupOrSvg(),r=this.__createElement("clipPath"),n=pu(this.__ids),o=this.__createElement("g");this.__applyCurrentDefaultPath(),t.removeChild(this.__currentElement),r.setAttribute("id",n),r.appendChild(this.__currentElement),this.__defs.appendChild(r),t.setAttribute("clip-path",dr("url(#{id})",{id:n})),t.appendChild(o),this.__currentElement=o}setLineDash(t){t&&t.length>0?this.lineDash=t.join(","):this.lineDash=null}setTransform(t,r,n,o,i,a){t instanceof DOMMatrix?this.__transformMatrix=new DOMMatrix([t.a,t.b,t.c,t.d,t.e,t.f]):this.__transformMatrix=new DOMMatrix([t,r,n,o,i,a])}getTransform(){let{a:t,b:r,c:n,d:o,e:i,f:a}=this.__transformMatrix;return new DOMMatrix([t,r,n,o,i,a])}resetTransform(){this.setTransform(1,0,0,1,0,0)}scale(t,r){if(r===void 0&&(r=t),isNaN(t)||isNaN(r)||!isFinite(t)||!isFinite(r))return;let n=this.getTransform().scale(t,r);this.setTransform(n)}rotate(t){let r=this.getTransform().multiply(new DOMMatrix([Math.cos(t),Math.sin(t),-Math.sin(t),Math.cos(t),0,0]));this.setTransform(r)}translate(t,r){let n=this.getTransform().translate(t,r);this.setTransform(n)}transform(t,r,n,o,i,a){let s=this.getTransform().multiply(new DOMMatrix([t,r,n,o,i,a]));this.setTransform(s)}__matrixTransform(t,r){return new DOMPoint(t,r).matrixTransform(this.__transformMatrix)}__getTransformScale(){return{x:Math.hypot(this.__transformMatrix.a,this.__transformMatrix.b),y:Math.hypot(this.__transformMatrix.c,this.__transformMatrix.d)}}__getTransformRotation(){return Math.atan2(this.__transformMatrix.b,this.__transformMatrix.a)}drawFocusRing(){}createImageData(){}putImageData(){}globalCompositeOperation(){}drawImage(){}createPattern(){return null}}});var dh={};$e(dh,{renderToSvg:()=>fh});async function fh(e,t){await(0,uh.when)(()=>e.dataInitialized);let{width:r,height:n,scrollX:o,scrollY:i,totalTrackAreaHeight:a,minimapHeight:s}=e,{exportType:c,theme:l,includeTracks:A}=t,u=A?a:0,m=c==="viewport"&&!!t.includeMinimap;return lh(c==="entire"?{width:e.totalWidth+e.treeAreaWidth,height:e.totalHeight+u,contentHeight:e.totalHeight,trackHeight:u,theme:l,model:e,offsetY:0,offsetX:0,includeMinimap:m,includeTracks:A}:{width:r,height:n+(m?s:0)+u,contentHeight:n,trackHeight:u,theme:l,model:e,offsetY:-i,offsetX:-o,includeMinimap:m,includeTracks:A})}async function lh({width:e,height:t,contentHeight:r,trackHeight:n,offsetX:o,offsetY:i,theme:a,model:s,includeMinimap:c,includeTracks:l}){let{Context:A}=await Promise.resolve().then(()=>(ch(),sh)),{treeAreaWidth:u,minimapHeight:m}=s,d=se.default.createElement(se.default.Fragment,null,l&&n>0?se.default.createElement(N_,{Context:A,model:s,theme:a,offsetX:o,msaAreaWidth:e-u,trackHeight:n}):null,se.default.createElement("g",{transform:n>0?`translate(0 ${n})`:void 0},se.default.createElement(D_,{Context:A,model:s,theme:a,offsetX:o,offsetY:i,msaAreaWidth:e-u,contentHeight:r})));return(0,Ah.renderToStaticMarkup)(se.default.createElement(L_,{width:e,height:t},c?se.default.createElement(se.default.Fragment,null,se.default.createElement("g",{transform:`translate(${u} 0)`},se.default.createElement(_g,{model:s})),se.default.createElement("g",{transform:`translate(0 ${m})`},d)):d))}function D_({model:e,theme:t,msaAreaWidth:r,contentHeight:n,offsetX:o,offsetY:i,Context:a}){let{treeAreaWidth:s,colorScheme:c,id:l}=e,A=`tree-${l}`,u=`msa-${l}`,m=ca(c,t),d=new a(s,n),g=new a(r,n);return Rs({ctx:g,offsetX:o,offsetY:i,model:e,blockSizeYOverride:n,highResScaleFactorOverride:1}),qs({model:e,offsetY:i,ctx:d,theme:t,blockSizeYOverride:n,highResScaleFactorOverride:1}),Us({model:e,theme:t,offsetY:i,offsetX:o,contrastScheme:m,ctx:g,blockSizeXOverride:r,blockSizeYOverride:n,highResScaleFactorOverride:1}),se.default.createElement(se.default.Fragment,null,se.default.createElement("defs",null,se.default.createElement("clipPath",{id:A},se.default.createElement("rect",{x:0,y:0,width:s,height:n})),se.default.createElement("clipPath",{id:u},se.default.createElement("rect",{x:0,y:0,width:r,height:n}))),se.default.createElement(Cu,{clipId:A,html:d.getSvg().innerHTML}),se.default.createElement(Cu,{clipId:u,transform:`translate(${s} 0)`,html:g.getSvg().innerHTML}))}function Cu({clipId:e,html:t,transform:r}){return se.default.createElement("g",{clipPath:`url(#${e})`,transform:r,dangerouslySetInnerHTML:{__html:t}})}function N_({model:e,theme:t,msaAreaWidth:r,trackHeight:n,offsetX:o,Context:i}){let{treeAreaWidth:a,colorScheme:s,id:c}=e,l=`tracks-${c}`,A=ca(s,t),u=new i(r,n);return Wg({model:e,ctx:u,offsetX:o,contrastScheme:A,blockSizeXOverride:r,highResScaleFactorOverride:1}),se.default.createElement("g",{transform:`translate(${a} 0)`},se.default.createElement("defs",null,se.default.createElement("clipPath",{id:l},se.default.createElement("rect",{x:0,y:0,width:r,height:n}))),se.default.createElement(Cu,{clipId:l,html:u.getSvg().innerHTML}))}function L_({width:e,height:t,children:r}){return se.default.createElement("svg",{width:e,height:t,xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",viewBox:`0 0 ${e} ${t}`},se.default.createElement("rect",{width:"100%",height:"100%",fill:"white"}),r)}var se,Ah,uh,Eu=h(()=>{se=f(v(),1),Ah=f(me(),1),uh=f(fr(),1);Tg();KA();lu();Hs();Js();In()});var Me=j((QP,mh)=>{mh.exports=JBrowseExports["@jbrowse/core/ui"]});var ph,gh,zo,Iu=h(()=>{ph=f(O(),1),gh=f(v(),1),zo=class extends gh.Component{constructor(t){super(t),this.state={error:void 0}}componentDidCatch(t,r){console.error("ErrorBoundary caught an error:",t,r),this.setState({error:t})}render(){return this.state.error?(0,ph.jsx)(this.props.FallbackComponent,{error:this.state.error}):this.props.children}}});var F=j((MP,hh)=>{hh.exports=JBrowseExports["@mui/material"]});function R_(e){if(typeof window>"u")return()=>{};let t=window.matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`);function r(){e(),t.removeEventListener("change",r),t=window.matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`),t.addEventListener("change",r)}return t.addEventListener("change",r),()=>{t.removeEventListener("change",r)}}function F_(){return typeof window>"u"?1:window.devicePixelRatio}function Eh(){return(0,Ch.useSyncExternalStore)(R_,F_,()=>1)}var Ch,Ih=h(()=>{Ch=f(v(),1)});function xn(e,t){let r=(0,$o.useRef)(!1),[n,o]=(0,$o.useState)();return(0,$o.useEffect)(()=>{if(n!==void 0){let s=function(l){r.current||(r.current=!0,requestAnimationFrame(()=>{let A=e==="x"?l.clientX:l.clientY;t(A-i,a),r.current=!1}))},c=function(){o(void 0)},{client:i,startScroll:a}=n;return document.addEventListener("mousemove",s),document.addEventListener("mouseup",c),()=>{document.removeEventListener("mousemove",s),document.removeEventListener("mouseup",c)}}},[e,t,n]),{dragging:n!==void 0,startDrag:(i,a)=>{o({client:e==="x"?i.clientX:i.clientY,startScroll:a})}}}var $o,Vs=h(()=>{$o=f(v(),1)});var $t,Ys,xu,wu,xh,wh,yh,yu=h(()=>{$t=f(v(),1),Ys=f(H(),1);Vs();xu="rgba(200,200,200)",wu="rgba(150,150,150)",xh=(0,Ys.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,$t.useState)(!1),{startDrag:o}=xn("x",(0,$t.useCallback)((i,a)=>{e.setTreeAreaWidth(a+i)},[e]));return $t.default.createElement("div",{onMouseDown:i=>{o(i,e.treeAreaWidth)},onMouseEnter:()=>{n(!0)},onMouseLeave:()=>{n(!1)},style:{cursor:"ew-resize",width:t,background:r?wu:xu,position:"relative"}})}),wh=(0,Ys.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,$t.useState)(!1),{startDrag:o}=xn("y",(0,$t.useCallback)((i,a)=>{e.setHeight(a+i)},[e]));return $t.default.createElement("div",{onMouseDown:i=>{o(i,e.height)},onMouseEnter:()=>{n(!0)},onMouseLeave:()=>{n(!1)},style:{cursor:"ns-resize",width:"100%",height:t,background:r?wu:xu,position:"relative"}})}),yh=(0,Ys.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,$t.useState)(!1),{startDrag:o}=xn("y",(0,$t.useCallback)((i,a)=>{e.setConservationTrackHeight(Math.max(10,a+i))},[e]));return $t.default.createElement("div",{onMouseDown:i=>{o(i,e.conservationTrackHeight)},onMouseEnter:()=>{n(!0)},onMouseLeave:()=>{n(!1)},style:{position:"absolute",bottom:0,left:0,cursor:"ns-resize",width:"100%",height:t,zIndex:1,background:r?wu:xu}})})});var bh,Bh,Sh=h(()=>{"use client";V();bh=f(O(),1),Bh=(0,R.createSvgIcon)((0,bh.jsx)("path",{d:"m7 10 5 5 5-5z"}),"ArrowDropDown")});function Qh(e,t){return t===1?e*16:t===2?e*100:e}function vh(e){let t=Math.abs(e);return t<6?25:t>150?500:t>30?150:75}function Mh(e,t){let r=P_*t,n=Math.max(-r,Math.min(r,e));return n>0?1/(1+n):1-n}var P_,_h=h(()=>{P_=.011997600479904018});function Ko({ref:e,onScrollX:t,onScrollY:r,onZoom:n,scrollZoom:o}){let i=(0,pt.useRef)(!1),a=(0,pt.useRef)(!1),s=(0,pt.useRef)(0),c=(0,pt.useRef)(0),l=(0,pt.useRef)(0),A=(0,pt.useRef)(0),u=(0,pt.useRef)(0),m=(0,pt.useRef)(null),d=(0,pt.useRef)(0),g=(0,pt.useRef)(0),[E,x]=(0,pt.useState)(!1);(0,pt.useEffect)(()=>{let w=e.current;if(!w)return;function y(b){let Q=b.ctrlKey||b.metaKey,S=o&&!b.shiftKey&&Math.abs(b.deltaY)>=Math.abs(b.deltaX);if(n&&(Q||S)){let _=w.getBoundingClientRect(),M=Qh(b.deltaY,b.deltaMode),L=Q?vh(M):500;l.current+=M/L,A.current=b.clientX-_.left,u.current=b.clientY-_.top,a.current||(a.current=!0,requestAnimationFrame(U=>{let Y=m.current===null?16.67:U-m.current;m.current=U,n(Mh(l.current,Math.min(100,Y)),A.current,u.current),l.current=0,a.current=!1})),b.preventDefault(),b.stopPropagation();return}let k=!!t&&b.deltaX!==0,T=!!r&&b.deltaY!==0;(k||T)&&(t&&(s.current+=b.deltaX),r&&(c.current+=b.deltaY),i.current||(i.current=!0,requestAnimationFrame(()=>{t&&(t(-s.current),s.current=0),r&&(r(-c.current),c.current=0),i.current=!1})),b.preventDefault(),b.stopPropagation())}return w.addEventListener("wheel",y,{passive:!1}),()=>{w.removeEventListener("wheel",y)}},[e,t,r,n,o]),(0,pt.useEffect)(()=>{if(!E)return;function w(b){b.preventDefault();let Q=b.clientX-d.current,S=b.clientY-g.current;(Q&&t||S&&r)&&(i.current||(i.current=!0,requestAnimationFrame(()=>{t?.(Q),r?.(S),i.current=!1,d.current=b.clientX,g.current=b.clientY})))}function y(){d.current=0,g.current=0,x(!1)}return window.addEventListener("mousemove",w,!0),window.addEventListener("mouseup",y,!0),()=>{window.removeEventListener("mousemove",w,!0),window.removeEventListener("mouseup",y,!0)}},[E,t,r]);function I(w){let y=w.target;y.draggable||y.dataset.resizer||w.button===0&&(d.current=w.clientX,g.current=w.clientY,x(!0))}function p(w){w.preventDefault(),x(!1)}return{onMouseDown:I,onMouseUp:p}}var pt,Ws=h(()=>{pt=f(v(),1);_h()});function ga(e){let t=navigator.clipboard;if(t?.writeText){t.writeText(e).catch(n=>{console.error("Failed to copy to clipboard:",n)});return}let r=document.createElement("textarea");r.value=e,r.style.position="fixed",r.style.opacity="0",document.body.append(r),r.select(),document.execCommand("copy"),r.remove()}var bu=h(()=>{});var Nh={};$e(Nh,{default:()=>H_});var Zr,Th,ro,kh,Dh,G_,U_,H_,Lh=h(()=>{Zr=f(v(),1),Th=f(Me(),1),ro=f(F(),1),kh=f(H(),1),Dh=f(ve(),1);bu();G_=(0,Dh.makeStyles)()(e=>({textArea:{padding:e.spacing(2),overflow:"auto",background:"#ddd",wordBreak:"break-word"}})),U_=(0,kh.observer)(function({model:e,onClose:t}){let[r,n]=(0,Zr.useState)("Copy to clipboard"),{classes:o}=G_();return Zr.default.createElement(Th.Dialog,{open:!0,onClose:t,fullWidth:!0,maxWidth:"lg",title:`Track info - ${e.name}`},Zr.default.createElement(ro.DialogContent,null,Zr.default.createElement(ro.Button,{variant:"contained",color:"primary",onClick:()=>{ga(e.data),n("Copied!"),setTimeout(()=>{n("Copy to clipboard")},300)}},r),Zr.default.createElement("pre",{className:o.textArea},e.data)),Zr.default.createElement(ro.DialogActions,null,Zr.default.createElement(ro.Button,{variant:"contained",onClick:t,color:"secondary"},"Close")))}),H_=U_});var Ge,no,Bu,Rh,j_,q_,J_,V_,Fh,Ph=h(()=>{Ge=f(v(),1);Sh();no=f(F(),1),Bu=f(H(),1),Rh=f(ve(),1);Ws();j_=(0,Ge.lazy)(()=>Promise.resolve().then(()=>(Lh(),Nh))),q_=(0,Rh.makeStyles)()({button:{padding:0}}),J_=(0,Bu.observer)(function({model:t,track:r}){let[n,o]=(0,Ge.useState)(),{drawLabels:i,rowHeight:a,treeAreaWidth:s}=t,{model:{name:c,height:l}}=r,{classes:A}=q_(),u=Math.min(l,Math.max(8,a-8));return Ge.default.createElement("div",{style:{width:s,height:l,flexShrink:0,textAlign:"right",fontSize:u}},i?c:""," ",Ge.default.createElement(no.IconButton,{className:A.button,style:{width:u,height:u},onClick:m=>{o(m.currentTarget)}},Ge.default.createElement(Bh,null)),n?Ge.default.createElement(no.Menu,{anchorEl:n,transitionDuration:0,open:!0,onClose:()=>{o(void 0)}},Ge.default.createElement(no.MenuItem,{dense:!0,onClick:()=>{t.toggleTrack(r.model.id),o(void 0)}},"Close"),Ge.default.createElement(no.MenuItem,{dense:!0,onClick:()=>{t.queueDialog(m=>[j_,{onClose:m,model:r.model}]),o(void 0)}},"Get info")):null)}),V_=(0,Bu.observer)(function({model:e,track:t}){let{resizeHandleWidth:r,colWidth:n,scrollX:o,numColumns:i}=e,{model:{height:a}}=t,s=(0,Ge.useRef)(null),c=(0,Ge.useCallback)(l=>{e.doScrollX(l)},[e]);return Ko({ref:s,onScrollX:c}),Ge.default.createElement("div",{style:{display:"flex",height:a}},Ge.default.createElement(J_,{model:e,track:t}),Ge.default.createElement("div",{style:{width:r,flexShrink:0}}),Ge.default.createElement("div",{ref:s,onMouseMove:l=>{if(!s.current)return;let{left:A}=s.current.getBoundingClientRect(),u=l.clientX-A-o,m=Math.floor(u/n);m>=0&&m<i?e.setMousePos(m,void 0):e.setMousePos(void 0,void 0)},onMouseLeave:()=>{e.setMousePos(void 0,void 0)}},Ge.default.createElement(t.ReactComponent,{model:e,track:t})))}),Fh=V_});var oo,Oh,Gh,Y_,Uh,Hh=h(()=>{oo=f(v(),1),Oh=f(me(),1),Gh=f(H(),1);Vs();Y_=(0,Gh.observer)(({model:e})=>{let{msaAreaHeight:t,scrollY:r,totalHeight:n}=e,[o,i]=(0,oo.useState)(!1),a="rgba(66, 119, 127, 0.3)",s=t/n,c=-r,l=c+t,A=c*s,u=l*s,{startDrag:m}=xn("y",(0,oo.useCallback)((d,g)=>{e.setScrollY((0,Oh.clamp)(g-d/s,e.maxScrollY,0))},[e,s]));return oo.default.createElement("div",{style:{position:"relative",width:20,height:t,borderLeft:"1px solid #555",borderTop:"1px solid #555",boxSizing:"border-box"}},oo.default.createElement("div",{style:{position:"absolute",top:Math.max(0,A),left:0,background:o?"rgba(66,119,127,0.6)":a,cursor:"pointer",boxSizing:"border-box",width:20,height:Math.max(u-A,20),zIndex:100},onMouseOver:()=>{i(!0)},onMouseOut:()=>{i(!1)},onMouseDown:d=>{m(d,e.scrollY)}}))}),Uh=Y_});function Su(){let e=(0,Xo.useRef)(null),[t,r]=(0,Xo.useState)({width:void 0,height:void 0});return(0,Xo.useEffect)(()=>{if(!e.current)return;let n=typeof window<"u"&&"ResizeObserver"in window?window.ResizeObserver:void 0;if(!n)return;let o=new n(i=>{r({width:i[0].contentRect.width,height:i[0].contentRect.height})});return o.observe(e.current),()=>{o.disconnect()}},[]),[e,t]}var Xo,jh=h(()=>{Xo=f(v(),1)});var qh,Jh,Vh=h(()=>{"use client";V();qh=f(O(),1),Jh=(0,R.createSvgIcon)((0,qh.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 17h-2v-2h2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25"}),"Help")});var Yh,Wh,zh=h(()=>{"use client";V();Yh=f(O(),1),Wh=(0,R.createSvgIcon)((0,Yh.jsx)("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"ChevronRight")});var $h,Kh,Xh=h(()=>{"use client";V();$h=f(O(),1),Kh=(0,R.createSvgIcon)((0,$h.jsx)("path",{d:"M11 18h2v-2h-2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m0-14c-2.21 0-4 1.79-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4"}),"HelpOutline")});var Zh,zs,Qu=h(()=>{"use client";V();Zh=f(O(),1),zs=(0,R.createSvgIcon)((0,Zh.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close")});var e0,t0,r0=h(()=>{"use client";V();e0=f(O(),1),t0=(0,R.createSvgIcon)((0,e0.jsx)("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4z"}),"Refresh")});var n0,o0,i0=h(()=>{"use client";V();n0=f(O(),1),o0=(0,R.createSvgIcon)((0,n0.jsx)("path",{d:"M15.73 3H8.27L3 8.27v7.46L8.27 21h7.46L21 15.73V8.27zM12 17.3c-.72 0-1.3-.58-1.3-1.3s.58-1.3 1.3-1.3 1.3.58 1.3 1.3-.58 1.3-1.3 1.3m1-4.3h-2V7h2z"}),"Report")});function z_(e){if(e.sheet)return e.sheet;for(var t=0;t<document.styleSheets.length;t++)if(document.styleSheets[t].ownerNode===e)return document.styleSheets[t]}function $_(e){var t=document.createElement("style");return t.setAttribute("data-emotion",e.key),e.nonce!==void 0&&t.setAttribute("nonce",e.nonce),t.appendChild(document.createTextNode("")),t.setAttribute("data-s",""),t}var W_,a0,s0=h(()=>{W_=!1;a0=(function(){function e(r){var n=this;this._insertTag=function(o){var i;n.tags.length===0?n.insertionPoint?i=n.insertionPoint.nextSibling:n.prepend?i=n.container.firstChild:i=n.before:i=n.tags[n.tags.length-1].nextSibling,n.container.insertBefore(o,i),n.tags.push(o)},this.isSpeedy=r.speedy===void 0?!W_:r.speedy,this.tags=[],this.ctr=0,this.nonce=r.nonce,this.key=r.key,this.container=r.container,this.prepend=r.prepend,this.insertionPoint=r.insertionPoint,this.before=null}var t=e.prototype;return t.hydrate=function(n){n.forEach(this._insertTag)},t.insert=function(n){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag($_(this));var o=this.tags[this.tags.length-1];if(this.isSpeedy){var i=z_(o);try{i.insertRule(n,i.cssRules.length)}catch{}}else o.appendChild(document.createTextNode(n));this.ctr++},t.flush=function(){this.tags.forEach(function(n){var o;return(o=n.parentNode)==null?void 0:o.removeChild(n)}),this.tags=[],this.ctr=0},e})()});var at,ha,Z,$s,Zo,ei,c0,Ks,l0,Xs=h(()=>{at="-ms-",ha="-moz-",Z="-webkit-",$s="comm",Zo="rule",ei="decl",c0="@import",Ks="@keyframes",l0="@layer"});function f0(e,t){return Le(e,0)^45?(((t<<2^Le(e,0))<<2^Le(e,1))<<2^Le(e,2))<<2^Le(e,3):0}function Zs(e){return e.trim()}function vu(e,t){return(e=t.exec(e))?e[0]:e}function W(e,t,r){return e.replace(t,r)}function Ca(e,t){return e.indexOf(t)}function Le(e,t){return e.charCodeAt(t)|0}function wn(e,t,r){return e.slice(t,r)}function yt(e){return e.length}function ti(e){return e.length}function ri(e,t){return t.push(e),e}function Mu(e,t){return e.map(t).join("")}var A0,io,u0,ni=h(()=>{A0=Math.abs,io=String.fromCharCode,u0=Object.assign});function Ea(e,t,r,n,o,i,a){return{value:e,root:t,parent:r,type:n,props:o,children:i,line:ec,column:oi,length:a,return:""}}function si(e,t){return u0(Ea("",null,null,"",null,null,0),e,{length:-e.length},t)}function m0(){return Ue}function p0(){return Ue=bt>0?Le(ai,--bt):0,oi--,Ue===10&&(oi=1,ec--),Ue}function Bt(){return Ue=bt<d0?Le(ai,bt++):0,oi++,Ue===10&&(oi=1,ec++),Ue}function Kt(){return Le(ai,bt)}function Ia(){return bt}function ci(e,t){return wn(ai,e,t)}function ii(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function tc(e){return ec=oi=1,d0=yt(ai=e),bt=0,[]}function rc(e){return ai="",e}function li(e){return Zs(ci(bt-1,_u(e===91?e+2:e===40?e+1:e)))}function g0(e){for(;(Ue=Kt())&&Ue<33;)Bt();return ii(e)>2||ii(Ue)>3?"":" "}function h0(e,t){for(;--t&&Bt()&&!(Ue<48||Ue>102||Ue>57&&Ue<65||Ue>70&&Ue<97););return ci(e,Ia()+(t<6&&Kt()==32&&Bt()==32))}function _u(e){for(;Bt();)switch(Ue){case e:return bt;case 34:case 39:e!==34&&e!==39&&_u(Ue);break;case 40:e===41&&_u(e);break;case 92:Bt();break}return bt}function C0(e,t){for(;Bt()&&e+Ue!==57;)if(e+Ue===84&&Kt()===47)break;return"/*"+ci(t,bt-1)+"*"+io(e===47?e:Bt())}function E0(e){for(;!ii(Kt());)Bt();return ci(e,bt)}var ec,oi,d0,bt,Ue,ai,Tu=h(()=>{ni();ec=1,oi=1,d0=0,bt=0,Ue=0,ai=""});function w0(e){return rc(nc("",null,null,null,[""],e=tc(e),0,[0],e))}function nc(e,t,r,n,o,i,a,s,c){for(var l=0,A=0,u=a,m=0,d=0,g=0,E=1,x=1,I=1,p=0,w="",y=o,b=i,Q=n,S=w;x;)switch(g=p,p=Bt()){case 40:if(g!=108&&Le(S,u-1)==58){Ca(S+=W(li(p),"&","&\f"),"&\f")!=-1&&(I=-1);break}case 34:case 39:case 91:S+=li(p);break;case 9:case 10:case 13:case 32:S+=g0(g);break;case 92:S+=h0(Ia()-1,7);continue;case 47:switch(Kt()){case 42:case 47:ri(K_(C0(Bt(),Ia()),t,r),c);break;default:S+="/"}break;case 123*E:s[l++]=yt(S)*I;case 125*E:case 59:case 0:switch(p){case 0:case 125:x=0;case 59+A:I==-1&&(S=W(S,/\f/g,"")),d>0&&yt(S)-u&&ri(d>32?x0(S+";",n,r,u-1):x0(W(S," ","")+";",n,r,u-2),c);break;case 59:S+=";";default:if(ri(Q=I0(S,t,r,l,A,o,s,w,y=[],b=[],u),i),p===123)if(A===0)nc(S,t,Q,Q,y,i,u,s,b);else switch(m===99&&Le(S,3)===110?100:m){case 100:case 108:case 109:case 115:nc(e,Q,Q,n&&ri(I0(e,Q,Q,0,0,o,s,w,o,y=[],u),b),o,b,u,s,n?y:b);break;default:nc(S,Q,Q,Q,[""],b,0,s,b)}}l=A=d=0,E=I=1,w=S="",u=a;break;case 58:u=1+yt(S),d=g;default:if(E<1){if(p==123)--E;else if(p==125&&E++==0&&p0()==125)continue}switch(S+=io(p),p*E){case 38:I=A>0?1:(S+="\f",-1);break;case 44:s[l++]=(yt(S)-1)*I,I=1;break;case 64:Kt()===45&&(S+=li(Bt())),m=Kt(),A=u=yt(w=S+=E0(Ia())),p++;break;case 45:g===45&&yt(S)==2&&(E=0)}}return i}function I0(e,t,r,n,o,i,a,s,c,l,A){for(var u=o-1,m=o===0?i:[""],d=ti(m),g=0,E=0,x=0;g<n;++g)for(var I=0,p=wn(e,u+1,u=A0(E=a[g])),w=e;I<d;++I)(w=Zs(E>0?m[I]+" "+p:W(p,/&\f/g,m[I])))&&(c[x++]=w);return Ea(e,t,r,o===0?Zo:s,c,l,A)}function K_(e,t,r){return Ea(e,t,r,$s,io(m0()),wn(e,2,-2),0)}function x0(e,t,r,n){return Ea(e,t,r,ei,wn(e,0,n),wn(e,n+1,-1),n)}var y0=h(()=>{Xs();ni();Tu()});var b0=h(()=>{});function ao(e,t){for(var r="",n=ti(e),o=0;o<n;o++)r+=t(e[o],o,e,t)||"";return r}function B0(e,t,r,n){switch(e.type){case l0:if(e.children.length)break;case c0:case ei:return e.return=e.return||e.value;case $s:return"";case Ks:return e.return=e.value+"{"+ao(e.children,n)+"}";case Zo:e.value=e.props.join(",")}return yt(r=ao(e.children,n))?e.return=e.value+"{"+r+"}":""}var S0=h(()=>{Xs();ni()});function Q0(e){var t=ti(e);return function(r,n,o,i){for(var a="",s=0;s<t;s++)a+=e[s](r,n,o,i)||"";return a}}function v0(e){return function(t){t.root||(t=t.return)&&e(t)}}var M0=h(()=>{ni()});var _0=h(()=>{Xs();ni();y0();b0();Tu();S0();M0()});var oc=h(()=>{});function T0(e){var t=Object.create(null);return function(r){return t[r]===void 0&&(t[r]=e(r)),t[r]}}var ku=h(()=>{});function D0(e,t){switch(f0(e,t)){case 5103:return Z+"print-"+e+e;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return Z+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return Z+e+ha+e+at+e+e;case 6828:case 4268:return Z+e+at+e+e;case 6165:return Z+e+at+"flex-"+e+e;case 5187:return Z+e+W(e,/(\w+).+(:[^]+)/,Z+"box-$1$2"+at+"flex-$1$2")+e;case 5443:return Z+e+at+"flex-item-"+W(e,/flex-|-self/,"")+e;case 4675:return Z+e+at+"flex-line-pack"+W(e,/align-content|flex-|-self/,"")+e;case 5548:return Z+e+at+W(e,"shrink","negative")+e;case 5292:return Z+e+at+W(e,"basis","preferred-size")+e;case 6060:return Z+"box-"+W(e,"-grow","")+Z+e+at+W(e,"grow","positive")+e;case 4554:return Z+W(e,/([^-])(transform)/g,"$1"+Z+"$2")+e;case 6187:return W(W(W(e,/(zoom-|grab)/,Z+"$1"),/(image-set)/,Z+"$1"),e,"")+e;case 5495:case 3959:return W(e,/(image-set\([^]*)/,Z+"$1$`$1");case 4968:return W(W(e,/(.+:)(flex-)?(.*)/,Z+"box-pack:$3"+at+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+Z+e+e;case 4095:case 3583:case 4068:case 2532:return W(e,/(.+)-inline(.+)/,Z+"$1$2")+e;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(yt(e)-1-t>6)switch(Le(e,t+1)){case 109:if(Le(e,t+4)!==45)break;case 102:return W(e,/(.+:)(.+)-([^]+)/,"$1"+Z+"$2-$3$1"+ha+(Le(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~Ca(e,"stretch")?D0(W(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(Le(e,t+1)!==115)break;case 6444:switch(Le(e,yt(e)-3-(~Ca(e,"!important")&&10))){case 107:return W(e,":",":"+Z)+e;case 101:return W(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+Z+(Le(e,14)===45?"inline-":"")+"box$3$1"+Z+"$2$3$1"+at+"$2box$3")+e}break;case 5936:switch(Le(e,t+11)){case 114:return Z+e+at+W(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return Z+e+at+W(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return Z+e+at+W(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return Z+e+at+e+e}return e}var X_,Z_,eT,k0,tT,rT,nT,oT,N0,Du=h(()=>{s0();_0();oc();ku();X_=function(t,r,n){for(var o=0,i=0;o=i,i=Kt(),o===38&&i===12&&(r[n]=1),!ii(i);)Bt();return ci(t,bt)},Z_=function(t,r){var n=-1,o=44;do switch(ii(o)){case 0:o===38&&Kt()===12&&(r[n]=1),t[n]+=X_(bt-1,r,n);break;case 2:t[n]+=li(o);break;case 4:if(o===44){t[++n]=Kt()===58?"&\f":"",r[n]=t[n].length;break}default:t[n]+=io(o)}while(o=Bt());return t},eT=function(t,r){return rc(Z_(tc(t),r))},k0=new WeakMap,tT=function(t){if(!(t.type!=="rule"||!t.parent||t.length<1)){for(var r=t.value,n=t.parent,o=t.column===n.column&&t.line===n.line;n.type!=="rule";)if(n=n.parent,!n)return;if(!(t.props.length===1&&r.charCodeAt(0)!==58&&!k0.get(n))&&!o){k0.set(t,!0);for(var i=[],a=eT(r,i),s=n.props,c=0,l=0;c<a.length;c++)for(var A=0;A<s.length;A++,l++)t.props[l]=i[c]?a[c].replace(/&\f/g,s[A]):s[A]+" "+a[c]}}},rT=function(t){if(t.type==="decl"){var r=t.value;r.charCodeAt(0)===108&&r.charCodeAt(2)===98&&(t.return="",t.value="")}};nT=function(t,r,n,o){if(t.length>-1&&!t.return)switch(t.type){case ei:t.return=D0(t.value,t.length);break;case Ks:return ao([si(t,{value:W(t.value,"@","@"+Z)})],o);case Zo:if(t.length)return Mu(t.props,function(i){switch(vu(i,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return ao([si(t,{props:[W(i,/:(read-\w+)/,":"+ha+"$1")]})],o);case"::placeholder":return ao([si(t,{props:[W(i,/:(plac\w+)/,":"+Z+"input-$1")]}),si(t,{props:[W(i,/:(plac\w+)/,":"+ha+"$1")]}),si(t,{props:[W(i,/:(plac\w+)/,at+"input-$1")]})],o)}return""})}},oT=[nT],N0=function(t){var r=t.key;if(r==="css"){var n=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(n,function(E){var x=E.getAttribute("data-emotion");x.indexOf(" ")!==-1&&(document.head.appendChild(E),E.setAttribute("data-s",""))})}var o=t.stylisPlugins||oT,i={},a,s=[];a=t.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+r+' "]'),function(E){for(var x=E.getAttribute("data-emotion").split(" "),I=1;I<x.length;I++)i[x[I]]=!0;s.push(E)});var c,l=[tT,rT];{var A,u=[B0,v0(function(E){A.insert(E)})],m=Q0(l.concat(o,u)),d=function(x){return ao(w0(x),m)};c=function(x,I,p,w){A=p,d(x?x+"{"+I.styles+"}":I.styles),w&&(g.inserted[I.name]=!0)}}var g={key:r,sheet:new a0({key:r,container:a,nonce:t.nonce,speedy:t.speedy,prepend:t.prepend,insertionPoint:t.insertionPoint}),nonce:t.nonce,inserted:i,registered:{},insert:c};return g.sheet.hydrate(s),g}});var Nu=h(()=>{});var R0=j(ce=>{"use strict";var Xe=typeof Symbol=="function"&&Symbol.for,Lu=Xe?Symbol.for("react.element"):60103,Ru=Xe?Symbol.for("react.portal"):60106,ic=Xe?Symbol.for("react.fragment"):60107,ac=Xe?Symbol.for("react.strict_mode"):60108,sc=Xe?Symbol.for("react.profiler"):60114,cc=Xe?Symbol.for("react.provider"):60109,lc=Xe?Symbol.for("react.context"):60110,Fu=Xe?Symbol.for("react.async_mode"):60111,Ac=Xe?Symbol.for("react.concurrent_mode"):60111,uc=Xe?Symbol.for("react.forward_ref"):60112,fc=Xe?Symbol.for("react.suspense"):60113,iT=Xe?Symbol.for("react.suspense_list"):60120,dc=Xe?Symbol.for("react.memo"):60115,mc=Xe?Symbol.for("react.lazy"):60116,aT=Xe?Symbol.for("react.block"):60121,sT=Xe?Symbol.for("react.fundamental"):60117,cT=Xe?Symbol.for("react.responder"):60118,lT=Xe?Symbol.for("react.scope"):60119;function Ot(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case Lu:switch(e=e.type,e){case Fu:case Ac:case ic:case sc:case ac:case fc:return e;default:switch(e=e&&e.$$typeof,e){case lc:case uc:case mc:case dc:case cc:return e;default:return t}}case Ru:return t}}}function L0(e){return Ot(e)===Ac}ce.AsyncMode=Fu;ce.ConcurrentMode=Ac;ce.ContextConsumer=lc;ce.ContextProvider=cc;ce.Element=Lu;ce.ForwardRef=uc;ce.Fragment=ic;ce.Lazy=mc;ce.Memo=dc;ce.Portal=Ru;ce.Profiler=sc;ce.StrictMode=ac;ce.Suspense=fc;ce.isAsyncMode=function(e){return L0(e)||Ot(e)===Fu};ce.isConcurrentMode=L0;ce.isContextConsumer=function(e){return Ot(e)===lc};ce.isContextProvider=function(e){return Ot(e)===cc};ce.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===Lu};ce.isForwardRef=function(e){return Ot(e)===uc};ce.isFragment=function(e){return Ot(e)===ic};ce.isLazy=function(e){return Ot(e)===mc};ce.isMemo=function(e){return Ot(e)===dc};ce.isPortal=function(e){return Ot(e)===Ru};ce.isProfiler=function(e){return Ot(e)===sc};ce.isStrictMode=function(e){return Ot(e)===ac};ce.isSuspense=function(e){return Ot(e)===fc};ce.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===ic||e===Ac||e===sc||e===ac||e===fc||e===iT||typeof e=="object"&&e!==null&&(e.$$typeof===mc||e.$$typeof===dc||e.$$typeof===cc||e.$$typeof===lc||e.$$typeof===uc||e.$$typeof===sT||e.$$typeof===cT||e.$$typeof===lT||e.$$typeof===aT)};ce.typeOf=Ot});var P0=j((F4,F0)=>{"use strict";F0.exports=R0()});var J0=j((P4,q0)=>{"use strict";var Pu=P0(),AT={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},uT={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},fT={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},H0={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},Ou={};Ou[Pu.ForwardRef]=fT;Ou[Pu.Memo]=H0;function O0(e){return Pu.isMemo(e)?H0:Ou[e.$$typeof]||AT}var dT=Object.defineProperty,mT=Object.getOwnPropertyNames,G0=Object.getOwnPropertySymbols,pT=Object.getOwnPropertyDescriptor,gT=Object.getPrototypeOf,U0=Object.prototype;function j0(e,t,r){if(typeof t!="string"){if(U0){var n=gT(t);n&&n!==U0&&j0(e,n,r)}var o=mT(t);G0&&(o=o.concat(G0(t)));for(var i=O0(e),a=O0(t),s=0;s<o.length;++s){var c=o[s];if(!uT[c]&&!(r&&r[c])&&!(a&&a[c])&&!(i&&i[c])){var l=pT(t,c);try{dT(e,c,l)}catch{}}}}return e}q0.exports=j0});function xa(e,t,r){var n="";return r.split(" ").forEach(function(o){e[o]!==void 0?t.push(e[o]+";"):o&&(n+=o+" ")}),n}var hT,pc,wa,gc=h(()=>{hT=!0;pc=function(t,r,n){var o=t.key+"-"+r.name;(n===!1||hT===!1)&&t.registered[o]===void 0&&(t.registered[o]=r.styles)},wa=function(t,r,n){pc(t,r,n);var o=t.key+"-"+r.name;if(t.inserted[r.name]===void 0){var i=r;do t.insert(r===i?"."+o:"",i,t.sheet,!0),i=i.next;while(i!==void 0)}}});function V0(e){for(var t=0,r,n=0,o=e.length;o>=4;++n,o-=4)r=e.charCodeAt(n)&255|(e.charCodeAt(++n)&255)<<8|(e.charCodeAt(++n)&255)<<16|(e.charCodeAt(++n)&255)<<24,r=(r&65535)*1540483477+((r>>>16)*59797<<16),r^=r>>>24,t=(r&65535)*1540483477+((r>>>16)*59797<<16)^(t&65535)*1540483477+((t>>>16)*59797<<16);switch(o){case 3:t^=(e.charCodeAt(n+2)&255)<<16;case 2:t^=(e.charCodeAt(n+1)&255)<<8;case 1:t^=e.charCodeAt(n)&255,t=(t&65535)*1540483477+((t>>>16)*59797<<16)}return t^=t>>>13,t=(t&65535)*1540483477+((t>>>16)*59797<<16),((t^t>>>15)>>>0).toString(36)}var Y0=h(()=>{});var W0,z0=h(()=>{W0={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1}});function ya(e,t,r){if(r==null)return"";var n=r;if(n.__emotion_styles!==void 0)return n;switch(typeof r){case"boolean":return"";case"object":{var o=r;if(o.anim===1)return Tr={name:o.name,styles:o.styles,next:Tr},o.name;var i=r;if(i.styles!==void 0){var a=i.next;if(a!==void 0)for(;a!==void 0;)Tr={name:a.name,styles:a.styles,next:Tr},a=a.next;var s=i.styles+";";return s}return wT(e,t,r)}case"function":{if(e!==void 0){var c=Tr,l=r(e);return Tr=c,ya(e,t,l)}break}}var A=r;if(t==null)return A;var u=t[A];return u!==void 0?u:A}function wT(e,t,r){var n="";if(Array.isArray(r))for(var o=0;o<r.length;o++)n+=ya(e,t,r[o])+";";else for(var i in r){var a=r[i];if(typeof a!="object"){var s=a;t!=null&&t[s]!==void 0?n+=i+"{"+t[s]+"}":$0(s)&&(n+=Gu(i)+":"+K0(i,s)+";")}else{if(i==="NO_COMPONENT_SELECTOR"&&CT)throw new Error(xT);if(Array.isArray(a)&&typeof a[0]=="string"&&(t==null||t[a[0]]===void 0))for(var c=0;c<a.length;c++)$0(a[c])&&(n+=Gu(i)+":"+K0(i,a[c])+";");else{var l=ya(e,t,a);switch(i){case"animation":case"animationName":{n+=Gu(i)+":"+l+";";break}default:n+=i+"{"+l+"}"}}}}return n}function Ai(e,t,r){if(e.length===1&&typeof e[0]=="object"&&e[0]!==null&&e[0].styles!==void 0)return e[0];var n=!0,o="";Tr=void 0;var i=e[0];if(i==null||i.raw===void 0)n=!1,o+=ya(r,t,i);else{var a=i;o+=a[0]}for(var s=1;s<e.length;s++)if(o+=ya(r,t,e[s]),n){var c=i;o+=c[s]}X0.lastIndex=0;for(var l="",A;(A=X0.exec(o))!==null;)l+="-"+A[1];var u=V0(o)+l;return{name:u,styles:o,next:Tr}}var CT,ET,IT,Z0,$0,Gu,K0,xT,X0,Tr,hc=h(()=>{Y0();z0();ku();CT=!1,ET=/[A-Z]|^ms/g,IT=/_EMO_([^_]+?)_([^]*?)_EMO_/g,Z0=function(t){return t.charCodeAt(1)===45},$0=function(t){return t!=null&&typeof t!="boolean"},Gu=T0(function(e){return Z0(e)?e:e.replace(ET,"-$&").toLowerCase()}),K0=function(t,r){switch(t){case"animation":case"animationName":if(typeof r=="string")return r.replace(IT,function(n,o,i){return Tr={name:o,styles:i,next:Tr},o})}return W0[t]!==1&&!Z0(t)&&typeof r=="number"&&r!==0?r+"px":r},xT="Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform.";X0=/label:\s*([^\s;{]+)\s*(;|$)/g});var Cc,yT,bT,Uu,Hu=h(()=>{Cc=f(v()),yT=function(t){return t()},bT=Cc.useInsertionEffect?Cc.useInsertionEffect:!1,Uu=bT||yT});var Xt,ba,eC,qu,BT,Ju,Vu,Yu,Ec,ju,tC,ST,QT,rC,Wu=h(()=>{Xt=f(v()),ba=f(v());Du();Nu();oc();gc();hc();Hu();eC=!1,qu=Xt.createContext(typeof HTMLElement<"u"?N0({key:"css"}):null),BT=qu.Provider,Ju=function(){return(0,ba.useContext)(qu)},Vu=function(t){return(0,ba.forwardRef)(function(r,n){var o=(0,ba.useContext)(qu);return t(r,o,n)})},Yu=Xt.createContext({}),Ec={}.hasOwnProperty,ju="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",tC=function(t,r){var n={};for(var o in r)Ec.call(r,o)&&(n[o]=r[o]);return n[ju]=t,n},ST=function(t){var r=t.cache,n=t.serialized,o=t.isStringTag;return pc(r,n,o),Uu(function(){return wa(r,n,o)}),null},QT=Vu(function(e,t,r){var n=e.css;typeof n=="string"&&t.registered[n]!==void 0&&(n=t.registered[n]);var o=e[ju],i=[n],a="";typeof e.className=="string"?a=xa(t.registered,i,e.className):e.className!=null&&(a=e.className+" ");var s=Ai(i,void 0,Xt.useContext(Yu));a+=t.key+"-"+s.name;var c={};for(var l in e)Ec.call(e,l)&&l!=="css"&&l!==ju&&!eC&&(c[l]=e[l]);return c.className=a,r&&(c.ref=r),Xt.createElement(Xt.Fragment,null,Xt.createElement(ST,{cache:t,serialized:s,isStringTag:typeof o=="string"}),Xt.createElement(o,c))}),rC=QT});function vT(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return Ai(t)}function zu(){var e=vT.apply(void 0,arguments),t="animation-"+e.name;return{name:t,styles:"@keyframes "+t+"{"+e.styles+"}",anim:1,toString:function(){return"_EMO_"+this.name+"_"+this.styles+"_EMO_"}}}var ui,d8,nC,$u=h(()=>{Wu();Wu();ui=f(v());gc();Hu();hc();Du();Nu();oc();d8=f(J0()),nC=function(t,r){var n=arguments;if(r==null||!Ec.call(r,"css"))return ui.createElement.apply(void 0,n);var o=n.length,i=new Array(o);i[0]=rC,i[1]=tC(t,r);for(var a=2;a<o;a++)i[a]=n[a];return ui.createElement.apply(null,i)};(function(e){var t;t||(t=e.JSX||(e.JSX={}))})(nC||(nC={}))});var Ku=j((g8,oC)=>{oC.exports=JBrowseExports["@mui/material/styles"]});var fi,Xu=h(()=>{fi=e=>{let t=e.length,r=0,n="";for(;r<t;r++){let o=e[r];if(o==null)continue;let i;switch(typeof o){case"boolean":break;case"object":{if(Array.isArray(o))i=fi(o);else{let a=o;i="";for(let s in a)a[s]&&s&&(i&&(i+=" "),i+=s)}break}default:i=o}i&&(n&&(n+=" "),n+=i)}return n}});function iC(e){return e instanceof Object&&!("styles"in e)&&!("length"in e)&&!("__emotion_styles"in e)}var aC=h(()=>{});function lC(e){let{useCache:t}=e;function r(){let n=t(),{css:o,cx:i}=(0,cC.useMemo)(()=>MT({cache:n}),[n]);return{css:o,cx:i}}return{useCssAndCx:r}}var cC,MT,sC,AC=h(()=>{cC=f(v(),1);hc();gc();Xu();aC();({createCssAndCx:MT}=(()=>{function e(r,n,o){let i=[],a=xa(r,i,o);return i.length<2?o:a+n(i)}function t(r){let{cache:n}=r,o=(...a)=>{let s=Ai(a,n.registered);wa(n,s,!1);let c=`${n.key}-${s.name}`;e:{let l=a[0];if(!iC(l))break e;sC.saveClassNameCSSObjectMapping(n,c,l)}return c};return{css:o,cx:(...a)=>{let s=fi(a),c=sC.fixClassName(n,s,o);return e(n.registered,o,c)}}}return{createCssAndCx:t}})());sC=(()=>{let e=new WeakMap;return{saveClassNameCSSObjectMapping:(t,r,n)=>{let o=e.get(t);o===void 0&&(o=new Map,e.set(t,o)),o.set(r,n)},fixClassName:(()=>{function t(r){let n=!1;return r.map(([o,i])=>{if(i===void 0)return o;let a;if(n)a={"&&":i};else{a=o;for(let s in i)if(s.startsWith("@media")){n=!0;break}}return a})}return(r,n,o)=>{if(!n.includes(" "))return n;let i=e.get(r);return fi(t(n.split(" ").map(a=>[a,i?.get(a)])).map(a=>typeof a=="string"?a:o(a)))}})()}})()});function uC(e,t,r){if(!(t instanceof Object))return e;let n=Object.keys(t);if(n.length===0)return e;let o={};for(let i of Object.keys(e))o[i]=r(e[i],t[i]);for(let i of n){if(i in e)continue;let a=t[i];typeof a=="string"&&(o[i]=a)}return o}var fC=h(()=>{});function dC(e){if(!(e instanceof Object)||typeof e=="function")return e;let t=[];for(let r in e){let n=e[r],o=typeof n;if(!(o==="string"||o==="number"&&!isNaN(n)||o==="boolean"||n===void 0||n===null))return e;t.push(`${r}:${o}_${n}`)}return`xSqLiJdLMd9s${t.join("|")}`}var mC=h(()=>{});function pC(e){let{useTheme:t}=e,{useCssAndCx:r}=lC({useCache:_T});function n(){return function(o){let i=typeof o=="function"?o:()=>o;return function(s,c){let l=t(),{css:A,cx:u}=r(),m=(0,Zu.useMemo)(()=>{let x=i(l),I={};for(let p of Object.keys(x)){let w=x[p];I[p]=A(w)}return I},[A,l]),d=c?.props.classes,g=dC(d);return{classes:(0,Zu.useMemo)(()=>d?uC(m,d,u):m,[m,g,u]),theme:l,css:A,cx:u}}}}return{makeStyles:n}}var Zu,_T,gC=h(()=>{"use client";Zu=f(v(),1);$u();AC();fC();mC();_T=Ju});var hC,oe,CC=h(()=>{hC=f(Ku(),1);gC();({makeStyles:oe}=pC({useTheme:hC.useTheme}))});var EC=h(()=>{CC()});function Ic(...e){return fi(e)}var St=h(()=>{"use client";$u();EC();Xu()});function ef({children:e}){let{classes:t}=TT();return(0,IC.jsx)("div",{className:t.bg,children:e})}var IC,TT,xC=h(()=>{IC=f(O(),1);St();TT=oe()(e=>({bg:{padding:4,margin:4,overflow:"auto",maxHeight:200,background:e.palette.mode==="dark"?"#833":"#f88",border:`1px solid ${e.palette.divider}`}}))});var yC=j(tf=>{var wC="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");tf.encode=function(e){if(0<=e&&e<wC.length)return wC[e];throw new TypeError("Must be between 0 and 63: "+e)};tf.decode=function(e){var t=65,r=90,n=97,o=122,i=48,a=57,s=43,c=47,l=26,A=52;return t<=e&&e<=r?e-t:n<=e&&e<=o?e-n+l:i<=e&&e<=a?e-i+A:e==s?62:e==c?63:-1}});var of=j(nf=>{var bC=yC(),rf=5,BC=1<<rf,SC=BC-1,QC=BC;function kT(e){return e<0?(-e<<1)+1:(e<<1)+0}function DT(e){var t=(e&1)===1,r=e>>1;return t?-r:r}nf.encode=function(t){var r="",n,o=kT(t);do n=o&SC,o>>>=rf,o>0&&(n|=QC),r+=bC.encode(n);while(o>0);return r};nf.decode=function(t,r,n){var o=t.length,i=0,a=0,s,c;do{if(r>=o)throw new Error("Expected more digits in base 64 VLQ value.");if(c=bC.decode(t.charCodeAt(r++)),c===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));s=!!(c&QC),c&=SC,i=i+(c<<a),a+=rf}while(s);n.value=DT(i),n.rest=r}});var mi=j(Ze=>{function NT(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}Ze.getArg=NT;var vC=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,LT=/^data:.+\,.+$/;function Ba(e){var t=e.match(vC);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}Ze.urlParse=Ba;function di(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}Ze.urlGenerate=di;var RT=32;function FT(e){var t=[];return function(r){for(var n=0;n<t.length;n++)if(t[n].input===r){var o=t[0];return t[0]=t[n],t[n]=o,t[0].result}var i=e(r);return t.unshift({input:r,result:i}),t.length>RT&&t.pop(),i}}var af=FT(function(t){var r=t,n=Ba(t);if(n){if(!n.path)return t;r=n.path}for(var o=Ze.isAbsolute(r),i=[],a=0,s=0;;)if(a=s,s=r.indexOf("/",a),s===-1){i.push(r.slice(a));break}else for(i.push(r.slice(a,s));s<r.length&&r[s]==="/";)s++;for(var c,l=0,s=i.length-1;s>=0;s--)c=i[s],c==="."?i.splice(s,1):c===".."?l++:l>0&&(c===""?(i.splice(s+1,l),l=0):(i.splice(s,2),l--));return r=i.join("/"),r===""&&(r=o?"/":"."),n?(n.path=r,di(n)):r});Ze.normalize=af;function MC(e,t){e===""&&(e="."),t===""&&(t=".");var r=Ba(t),n=Ba(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),di(r);if(r||t.match(LT))return t;if(n&&!n.host&&!n.path)return n.host=t,di(n);var o=t.charAt(0)==="/"?t:af(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=o,di(n)):o}Ze.join=MC;Ze.isAbsolute=function(e){return e.charAt(0)==="/"||vC.test(e)};function PT(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}Ze.relative=PT;var _C=(function(){var e=Object.create(null);return!("__proto__"in e)})();function TC(e){return e}function OT(e){return kC(e)?"$"+e:e}Ze.toSetString=_C?TC:OT;function GT(e){return kC(e)?e.slice(1):e}Ze.fromSetString=_C?TC:GT;function kC(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function UT(e,t,r){var n=en(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:en(e.name,t.name)}Ze.compareByOriginalPositions=UT;function HT(e,t,r){var n;return n=e.originalLine-t.originalLine,n!==0||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:en(e.name,t.name)}Ze.compareByOriginalPositionsNoSource=HT;function jT(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=en(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:en(e.name,t.name)}Ze.compareByGeneratedPositionsDeflated=jT;function qT(e,t,r){var n=e.generatedColumn-t.generatedColumn;return n!==0||r||(n=en(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:en(e.name,t.name)}Ze.compareByGeneratedPositionsDeflatedNoLine=qT;function en(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function JT(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=en(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:en(e.name,t.name)}Ze.compareByGeneratedPositionsInflated=JT;function VT(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}Ze.parseSourceMapInput=VT;function YT(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=Ba(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var o=n.path.lastIndexOf("/");o>=0&&(n.path=n.path.substring(0,o+1))}t=MC(di(n),t)}return af(t)}Ze.computeSourceURL=YT});var lf=j(DC=>{var sf=mi(),cf=Object.prototype.hasOwnProperty,so=typeof Map<"u";function tn(){this._array=[],this._set=so?new Map:Object.create(null)}tn.fromArray=function(t,r){for(var n=new tn,o=0,i=t.length;o<i;o++)n.add(t[o],r);return n};tn.prototype.size=function(){return so?this._set.size:Object.getOwnPropertyNames(this._set).length};tn.prototype.add=function(t,r){var n=so?t:sf.toSetString(t),o=so?this.has(t):cf.call(this._set,n),i=this._array.length;(!o||r)&&this._array.push(t),o||(so?this._set.set(t,i):this._set[n]=i)};tn.prototype.has=function(t){if(so)return this._set.has(t);var r=sf.toSetString(t);return cf.call(this._set,r)};tn.prototype.indexOf=function(t){if(so){var r=this._set.get(t);if(r>=0)return r}else{var n=sf.toSetString(t);if(cf.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};tn.prototype.at=function(t){if(t>=0&&t<this._array.length)return this._array[t];throw new Error("No element indexed by "+t)};tn.prototype.toArray=function(){return this._array.slice()};DC.ArraySet=tn});var RC=j(LC=>{var NC=mi();function WT(e,t){var r=e.generatedLine,n=t.generatedLine,o=e.generatedColumn,i=t.generatedColumn;return n>r||n==r&&i>=o||NC.compareByGeneratedPositionsInflated(e,t)<=0}function xc(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}xc.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};xc.prototype.add=function(t){WT(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};xc.prototype.toArray=function(){return this._sorted||(this._array.sort(NC.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};LC.MappingList=xc});var Af=j(FC=>{var Sa=of(),Re=mi(),wc=lf().ArraySet,zT=RC().MappingList;function Zt(e){e||(e={}),this._file=Re.getArg(e,"file",null),this._sourceRoot=Re.getArg(e,"sourceRoot",null),this._skipValidation=Re.getArg(e,"skipValidation",!1),this._ignoreInvalidMapping=Re.getArg(e,"ignoreInvalidMapping",!1),this._sources=new wc,this._names=new wc,this._mappings=new zT,this._sourcesContents=null}Zt.prototype._version=3;Zt.fromSourceMap=function(t,r){var n=t.sourceRoot,o=new Zt(Object.assign(r||{},{file:t.file,sourceRoot:n}));return t.eachMapping(function(i){var a={generated:{line:i.generatedLine,column:i.generatedColumn}};i.source!=null&&(a.source=i.source,n!=null&&(a.source=Re.relative(n,a.source)),a.original={line:i.originalLine,column:i.originalColumn},i.name!=null&&(a.name=i.name)),o.addMapping(a)}),t.sources.forEach(function(i){var a=i;n!==null&&(a=Re.relative(n,i)),o._sources.has(a)||o._sources.add(a);var s=t.sourceContentFor(i);s!=null&&o.setSourceContent(i,s)}),o};Zt.prototype.addMapping=function(t){var r=Re.getArg(t,"generated"),n=Re.getArg(t,"original",null),o=Re.getArg(t,"source",null),i=Re.getArg(t,"name",null);!this._skipValidation&&this._validateMapping(r,n,o,i)===!1||(o!=null&&(o=String(o),this._sources.has(o)||this._sources.add(o)),i!=null&&(i=String(i),this._names.has(i)||this._names.add(i)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:o,name:i}))};Zt.prototype.setSourceContent=function(t,r){var n=t;this._sourceRoot!=null&&(n=Re.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Re.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[Re.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};Zt.prototype.applySourceMap=function(t,r,n){var o=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);o=t.file}var i=this._sourceRoot;i!=null&&(o=Re.relative(i,o));var a=new wc,s=new wc;this._mappings.unsortedForEach(function(c){if(c.source===o&&c.originalLine!=null){var l=t.originalPositionFor({line:c.originalLine,column:c.originalColumn});l.source!=null&&(c.source=l.source,n!=null&&(c.source=Re.join(n,c.source)),i!=null&&(c.source=Re.relative(i,c.source)),c.originalLine=l.line,c.originalColumn=l.column,l.name!=null&&(c.name=l.name))}var A=c.source;A!=null&&!a.has(A)&&a.add(A);var u=c.name;u!=null&&!s.has(u)&&s.add(u)},this),this._sources=a,this._names=s,t.sources.forEach(function(c){var l=t.sourceContentFor(c);l!=null&&(n!=null&&(c=Re.join(n,c)),i!=null&&(c=Re.relative(i,c)),this.setSourceContent(c,l))},this)};Zt.prototype._validateMapping=function(t,r,n,o){if(r&&typeof r.line!="number"&&typeof r.column!="number"){var i="original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.";if(this._ignoreInvalidMapping)return typeof console<"u"&&console.warn&&console.warn(i),!1;throw new Error(i)}if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!o)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n)return;var i="Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:o});if(this._ignoreInvalidMapping)return typeof console<"u"&&console.warn&&console.warn(i),!1;throw new Error(i)}};Zt.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,o=0,i=0,a=0,s="",c,l,A,u,m=this._mappings.toArray(),d=0,g=m.length;d<g;d++){if(l=m[d],c="",l.generatedLine!==r)for(t=0;l.generatedLine!==r;)c+=";",r++;else if(d>0){if(!Re.compareByGeneratedPositionsInflated(l,m[d-1]))continue;c+=","}c+=Sa.encode(l.generatedColumn-t),t=l.generatedColumn,l.source!=null&&(u=this._sources.indexOf(l.source),c+=Sa.encode(u-a),a=u,c+=Sa.encode(l.originalLine-1-o),o=l.originalLine-1,c+=Sa.encode(l.originalColumn-n),n=l.originalColumn,l.name!=null&&(A=this._names.indexOf(l.name),c+=Sa.encode(A-i),i=A)),s+=c}return s};Zt.prototype._generateSourcesContent=function(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=Re.relative(r,n));var o=Re.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,o)?this._sourcesContents[o]:null},this)};Zt.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};Zt.prototype.toString=function(){return JSON.stringify(this.toJSON())};FC.SourceMapGenerator=Zt});var PC=j(co=>{co.GREATEST_LOWER_BOUND=1;co.LEAST_UPPER_BOUND=2;function uf(e,t,r,n,o,i){var a=Math.floor((t-e)/2)+e,s=o(r,n[a],!0);return s===0?a:s>0?t-a>1?uf(a,t,r,n,o,i):i==co.LEAST_UPPER_BOUND?t<n.length?t:-1:a:a-e>1?uf(e,a,r,n,o,i):i==co.LEAST_UPPER_BOUND?a:e<0?-1:e}co.search=function(t,r,n,o){if(r.length===0)return-1;var i=uf(-1,r.length,t,r,n,o||co.GREATEST_LOWER_BOUND);if(i<0)return-1;for(;i-1>=0&&n(r[i],r[i-1],!0)===0;)--i;return i}});var UC=j(GC=>{function $T(e){function t(o,i,a){var s=o[i];o[i]=o[a],o[a]=s}function r(o,i){return Math.round(o+Math.random()*(i-o))}function n(o,i,a,s){if(a<s){var c=r(a,s),l=a-1;t(o,c,s);for(var A=o[s],u=a;u<s;u++)i(o[u],A,!1)<=0&&(l+=1,t(o,l,u));t(o,l+1,u);var m=l+1;n(o,i,a,m-1),n(o,i,m+1,s)}}return n}function KT(e){let t=$T.toString();return new Function(`return ${t}`)()(e)}var OC=new WeakMap;GC.quickSort=function(e,t,r=0){let n=OC.get(t);n===void 0&&(n=KT(t),OC.set(t,n)),n(e,t,r,e.length-1)}});var qC=j(yc=>{var P=mi(),df=PC(),pi=lf().ArraySet,XT=of(),Qa=UC().quickSort;function Ie(e,t){var r=e;return typeof e=="string"&&(r=P.parseSourceMapInput(e)),r.sections!=null?new mr(r,t):new st(r,t)}Ie.fromSourceMap=function(e,t){return st.fromSourceMap(e,t)};Ie.prototype._version=3;Ie.prototype.__generatedMappings=null;Object.defineProperty(Ie.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});Ie.prototype.__originalMappings=null;Object.defineProperty(Ie.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});Ie.prototype._charIsMappingSeparator=function(t,r){var n=t.charAt(r);return n===";"||n===","};Ie.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};Ie.GENERATED_ORDER=1;Ie.ORIGINAL_ORDER=2;Ie.GREATEST_LOWER_BOUND=1;Ie.LEAST_UPPER_BOUND=2;Ie.prototype.eachMapping=function(t,r,n){var o=r||null,i=n||Ie.GENERATED_ORDER,a;switch(i){case Ie.GENERATED_ORDER:a=this._generatedMappings;break;case Ie.ORIGINAL_ORDER:a=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}for(var s=this.sourceRoot,c=t.bind(o),l=this._names,A=this._sources,u=this._sourceMapURL,m=0,d=a.length;m<d;m++){var g=a[m],E=g.source===null?null:A.at(g.source);E!==null&&(E=P.computeSourceURL(s,E,u)),c({source:E,generatedLine:g.generatedLine,generatedColumn:g.generatedColumn,originalLine:g.originalLine,originalColumn:g.originalColumn,name:g.name===null?null:l.at(g.name)})}};Ie.prototype.allGeneratedPositionsFor=function(t){var r=P.getArg(t,"line"),n={source:P.getArg(t,"source"),originalLine:r,originalColumn:P.getArg(t,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];var o=[],i=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",P.compareByOriginalPositions,df.LEAST_UPPER_BOUND);if(i>=0){var a=this._originalMappings[i];if(t.column===void 0)for(var s=a.originalLine;a&&a.originalLine===s;)o.push({line:P.getArg(a,"generatedLine",null),column:P.getArg(a,"generatedColumn",null),lastColumn:P.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++i];else for(var c=a.originalColumn;a&&a.originalLine===r&&a.originalColumn==c;)o.push({line:P.getArg(a,"generatedLine",null),column:P.getArg(a,"generatedColumn",null),lastColumn:P.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++i]}return o};yc.SourceMapConsumer=Ie;function st(e,t){var r=e;typeof e=="string"&&(r=P.parseSourceMapInput(e));var n=P.getArg(r,"version"),o=P.getArg(r,"sources"),i=P.getArg(r,"names",[]),a=P.getArg(r,"sourceRoot",null),s=P.getArg(r,"sourcesContent",null),c=P.getArg(r,"mappings"),l=P.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);a&&(a=P.normalize(a)),o=o.map(String).map(P.normalize).map(function(A){return a&&P.isAbsolute(a)&&P.isAbsolute(A)?P.relative(a,A):A}),this._names=pi.fromArray(i.map(String),!0),this._sources=pi.fromArray(o,!0),this._absoluteSources=this._sources.toArray().map(function(A){return P.computeSourceURL(a,A,t)}),this.sourceRoot=a,this.sourcesContent=s,this._mappings=c,this._sourceMapURL=t,this.file=l}st.prototype=Object.create(Ie.prototype);st.prototype.consumer=Ie;st.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=P.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var r;for(r=0;r<this._absoluteSources.length;++r)if(this._absoluteSources[r]==e)return r;return-1};st.fromSourceMap=function(t,r){var n=Object.create(st.prototype),o=n._names=pi.fromArray(t._names.toArray(),!0),i=n._sources=pi.fromArray(t._sources.toArray(),!0);n.sourceRoot=t._sourceRoot,n.sourcesContent=t._generateSourcesContent(n._sources.toArray(),n.sourceRoot),n.file=t._file,n._sourceMapURL=r,n._absoluteSources=n._sources.toArray().map(function(d){return P.computeSourceURL(n.sourceRoot,d,r)});for(var a=t._mappings.toArray().slice(),s=n.__generatedMappings=[],c=n.__originalMappings=[],l=0,A=a.length;l<A;l++){var u=a[l],m=new jC;m.generatedLine=u.generatedLine,m.generatedColumn=u.generatedColumn,u.source&&(m.source=i.indexOf(u.source),m.originalLine=u.originalLine,m.originalColumn=u.originalColumn,u.name&&(m.name=o.indexOf(u.name)),c.push(m)),s.push(m)}return Qa(n.__originalMappings,P.compareByOriginalPositions),n};st.prototype._version=3;Object.defineProperty(st.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function jC(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var ff=P.compareByGeneratedPositionsDeflatedNoLine;function HC(e,t){let r=e.length,n=e.length-t;if(!(n<=1))if(n==2){let o=e[t],i=e[t+1];ff(o,i)>0&&(e[t]=i,e[t+1]=o)}else if(n<20)for(let o=t;o<r;o++)for(let i=o;i>t;i--){let a=e[i-1],s=e[i];if(ff(a,s)<=0)break;e[i-1]=s,e[i]=a}else Qa(e,ff,t)}st.prototype._parseMappings=function(t,r){var n=1,o=0,i=0,a=0,s=0,c=0,l=t.length,A=0,u={},m={},d=[],g=[],E,x,I,p,w;let y=0;for(;A<l;)if(t.charAt(A)===";")n++,A++,o=0,HC(g,y),y=g.length;else if(t.charAt(A)===",")A++;else{for(E=new jC,E.generatedLine=n,p=A;p<l&&!this._charIsMappingSeparator(t,p);p++);for(x=t.slice(A,p),I=[];A<p;)XT.decode(t,A,m),w=m.value,A=m.rest,I.push(w);if(I.length===2)throw new Error("Found a source, but no line and column");if(I.length===3)throw new Error("Found a source and line, but no column");if(E.generatedColumn=o+I[0],o=E.generatedColumn,I.length>1&&(E.source=s+I[1],s+=I[1],E.originalLine=i+I[2],i=E.originalLine,E.originalLine+=1,E.originalColumn=a+I[3],a=E.originalColumn,I.length>4&&(E.name=c+I[4],c+=I[4])),g.push(E),typeof E.originalLine=="number"){let Q=E.source;for(;d.length<=Q;)d.push(null);d[Q]===null&&(d[Q]=[]),d[Q].push(E)}}HC(g,y),this.__generatedMappings=g;for(var b=0;b<d.length;b++)d[b]!=null&&Qa(d[b],P.compareByOriginalPositionsNoSource);this.__originalMappings=[].concat(...d)};st.prototype._findMapping=function(t,r,n,o,i,a){if(t[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[n]);if(t[o]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[o]);return df.search(t,r,i,a)};st.prototype.computeColumnSpans=function(){for(var t=0;t<this._generatedMappings.length;++t){var r=this._generatedMappings[t];if(t+1<this._generatedMappings.length){var n=this._generatedMappings[t+1];if(r.generatedLine===n.generatedLine){r.lastGeneratedColumn=n.generatedColumn-1;continue}}r.lastGeneratedColumn=1/0}};st.prototype.originalPositionFor=function(t){var r={generatedLine:P.getArg(t,"line"),generatedColumn:P.getArg(t,"column")},n=this._findMapping(r,this._generatedMappings,"generatedLine","generatedColumn",P.compareByGeneratedPositionsDeflated,P.getArg(t,"bias",Ie.GREATEST_LOWER_BOUND));if(n>=0){var o=this._generatedMappings[n];if(o.generatedLine===r.generatedLine){var i=P.getArg(o,"source",null);i!==null&&(i=this._sources.at(i),i=P.computeSourceURL(this.sourceRoot,i,this._sourceMapURL));var a=P.getArg(o,"name",null);return a!==null&&(a=this._names.at(a)),{source:i,line:P.getArg(o,"originalLine",null),column:P.getArg(o,"originalColumn",null),name:a}}}return{source:null,line:null,column:null,name:null}};st.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};st.prototype.sourceContentFor=function(t,r){if(!this.sourcesContent)return null;var n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];var o=t;this.sourceRoot!=null&&(o=P.relative(this.sourceRoot,o));var i;if(this.sourceRoot!=null&&(i=P.urlParse(this.sourceRoot))){var a=o.replace(/^file:\/\//,"");if(i.scheme=="file"&&this._sources.has(a))return this.sourcesContent[this._sources.indexOf(a)];if((!i.path||i.path=="/")&&this._sources.has("/"+o))return this.sourcesContent[this._sources.indexOf("/"+o)]}if(r)return null;throw new Error('"'+o+'" is not in the SourceMap.')};st.prototype.generatedPositionFor=function(t){var r=P.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:P.getArg(t,"line"),originalColumn:P.getArg(t,"column")},o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",P.compareByOriginalPositions,P.getArg(t,"bias",Ie.GREATEST_LOWER_BOUND));if(o>=0){var i=this._originalMappings[o];if(i.source===n.source)return{line:P.getArg(i,"generatedLine",null),column:P.getArg(i,"generatedColumn",null),lastColumn:P.getArg(i,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};yc.BasicSourceMapConsumer=st;function mr(e,t){var r=e;typeof e=="string"&&(r=P.parseSourceMapInput(e));var n=P.getArg(r,"version"),o=P.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new pi,this._names=new pi;var i={line:-1,column:0};this._sections=o.map(function(a){if(a.url)throw new Error("Support for url field in sections not implemented.");var s=P.getArg(a,"offset"),c=P.getArg(s,"line"),l=P.getArg(s,"column");if(c<i.line||c===i.line&&l<i.column)throw new Error("Section offsets must be ordered and non-overlapping.");return i=s,{generatedOffset:{generatedLine:c+1,generatedColumn:l+1},consumer:new Ie(P.getArg(a,"map"),t)}})}mr.prototype=Object.create(Ie.prototype);mr.prototype.constructor=Ie;mr.prototype._version=3;Object.defineProperty(mr.prototype,"sources",{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var r=0;r<this._sections[t].consumer.sources.length;r++)e.push(this._sections[t].consumer.sources[r]);return e}});mr.prototype.originalPositionFor=function(t){var r={generatedLine:P.getArg(t,"line"),generatedColumn:P.getArg(t,"column")},n=df.search(r,this._sections,function(i,a){var s=i.generatedLine-a.generatedOffset.generatedLine;return s||i.generatedColumn-a.generatedOffset.generatedColumn}),o=this._sections[n];return o?o.consumer.originalPositionFor({line:r.generatedLine-(o.generatedOffset.generatedLine-1),column:r.generatedColumn-(o.generatedOffset.generatedLine===r.generatedLine?o.generatedOffset.generatedColumn-1:0),bias:t.bias}):{source:null,line:null,column:null,name:null}};mr.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(t){return t.consumer.hasContentsOfAllSources()})};mr.prototype.sourceContentFor=function(t,r){for(var n=0;n<this._sections.length;n++){var o=this._sections[n],i=o.consumer.sourceContentFor(t,!0);if(i||i==="")return i}if(r)return null;throw new Error('"'+t+'" is not in the SourceMap.')};mr.prototype.generatedPositionFor=function(t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r];if(n.consumer._findSourceIndex(P.getArg(t,"source"))!==-1){var o=n.consumer.generatedPositionFor(t);if(o){var i={line:o.line+(n.generatedOffset.generatedLine-1),column:o.column+(n.generatedOffset.generatedLine===o.line?n.generatedOffset.generatedColumn-1:0)};return i}}}return{line:null,column:null}};mr.prototype._parseMappings=function(t,r){this.__generatedMappings=[],this.__originalMappings=[];for(var n=0;n<this._sections.length;n++)for(var o=this._sections[n],i=o.consumer._generatedMappings,a=0;a<i.length;a++){var s=i[a],c=o.consumer._sources.at(s.source);c!==null&&(c=P.computeSourceURL(o.consumer.sourceRoot,c,this._sourceMapURL)),this._sources.add(c),c=this._sources.indexOf(c);var l=null;s.name&&(l=o.consumer._names.at(s.name),this._names.add(l),l=this._names.indexOf(l));var A={source:c,generatedLine:s.generatedLine+(o.generatedOffset.generatedLine-1),generatedColumn:s.generatedColumn+(o.generatedOffset.generatedLine===s.generatedLine?o.generatedOffset.generatedColumn-1:0),originalLine:s.originalLine,originalColumn:s.originalColumn,name:l};this.__generatedMappings.push(A),typeof A.originalLine=="number"&&this.__originalMappings.push(A)}Qa(this.__generatedMappings,P.compareByGeneratedPositionsDeflated),Qa(this.__originalMappings,P.compareByOriginalPositions)};yc.IndexedSourceMapConsumer=mr});var VC=j(JC=>{var ZT=Af().SourceMapGenerator,bc=mi(),ek=/(\r?\n)/,tk=10,gi="$$$isSourceNode$$$";function Gt(e,t,r,n,o){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=r??null,this.name=o??null,this[gi]=!0,n!=null&&this.add(n)}Gt.fromStringWithSourceMap=function(t,r,n){var o=new Gt,i=t.split(ek),a=0,s=function(){var m=g(),d=g()||"";return m+d;function g(){return a<i.length?i[a++]:void 0}},c=1,l=0,A=null;return r.eachMapping(function(m){if(A!==null)if(c<m.generatedLine)u(A,s()),c++,l=0;else{var d=i[a]||"",g=d.substr(0,m.generatedColumn-l);i[a]=d.substr(m.generatedColumn-l),l=m.generatedColumn,u(A,g),A=m;return}for(;c<m.generatedLine;)o.add(s()),c++;if(l<m.generatedColumn){var d=i[a]||"";o.add(d.substr(0,m.generatedColumn)),i[a]=d.substr(m.generatedColumn),l=m.generatedColumn}A=m},this),a<i.length&&(A&&u(A,s()),o.add(i.splice(a).join(""))),r.sources.forEach(function(m){var d=r.sourceContentFor(m);d!=null&&(n!=null&&(m=bc.join(n,m)),o.setSourceContent(m,d))}),o;function u(m,d){if(m===null||m.source===void 0)o.add(d);else{var g=n?bc.join(n,m.source):m.source;o.add(new Gt(m.originalLine,m.originalColumn,g,d,m.name))}}};Gt.prototype.add=function(t){if(Array.isArray(t))t.forEach(function(r){this.add(r)},this);else if(t[gi]||typeof t=="string")t&&this.children.push(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};Gt.prototype.prepend=function(t){if(Array.isArray(t))for(var r=t.length-1;r>=0;r--)this.prepend(t[r]);else if(t[gi]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};Gt.prototype.walk=function(t){for(var r,n=0,o=this.children.length;n<o;n++)r=this.children[n],r[gi]?r.walk(t):r!==""&&t(r,{source:this.source,line:this.line,column:this.column,name:this.name})};Gt.prototype.join=function(t){var r,n,o=this.children.length;if(o>0){for(r=[],n=0;n<o-1;n++)r.push(this.children[n]),r.push(t);r.push(this.children[n]),this.children=r}return this};Gt.prototype.replaceRight=function(t,r){var n=this.children[this.children.length-1];return n[gi]?n.replaceRight(t,r):typeof n=="string"?this.children[this.children.length-1]=n.replace(t,r):this.children.push("".replace(t,r)),this};Gt.prototype.setSourceContent=function(t,r){this.sourceContents[bc.toSetString(t)]=r};Gt.prototype.walkSourceContents=function(t){for(var r=0,n=this.children.length;r<n;r++)this.children[r][gi]&&this.children[r].walkSourceContents(t);for(var o=Object.keys(this.sourceContents),r=0,n=o.length;r<n;r++)t(bc.fromSetString(o[r]),this.sourceContents[o[r]])};Gt.prototype.toString=function(){var t="";return this.walk(function(r){t+=r}),t};Gt.prototype.toStringWithSourceMap=function(t){var r={code:"",line:1,column:0},n=new ZT(t),o=!1,i=null,a=null,s=null,c=null;return this.walk(function(l,A){r.code+=l,A.source!==null&&A.line!==null&&A.column!==null?((i!==A.source||a!==A.line||s!==A.column||c!==A.name)&&n.addMapping({source:A.source,original:{line:A.line,column:A.column},generated:{line:r.line,column:r.column},name:A.name}),i=A.source,a=A.line,s=A.column,c=A.name,o=!0):o&&(n.addMapping({generated:{line:r.line,column:r.column}}),i=null,o=!1);for(var u=0,m=l.length;u<m;u++)l.charCodeAt(u)===tk?(r.line++,r.column=0,u+1===m?(i=null,o=!1):o&&n.addMapping({source:A.source,original:{line:A.line,column:A.column},generated:{line:r.line,column:r.column},name:A.name})):r.column++}),this.walkSourceContents(function(l,A){n.setSourceContent(l,A)}),{code:r.code,map:n}};JC.SourceNode=Gt});var YC=j(Bc=>{Bc.SourceMapGenerator=Af().SourceMapGenerator;Bc.SourceMapConsumer=qC().SourceMapConsumer;Bc.SourceNode=VC().SourceNode});var WC,Sc,mf=h(()=>{"use client";V();WC=f(O(),1),Sc=(0,R.createSvgIcon)((0,WC.jsx)("path",{d:"M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3z"}),"OpenInNew")});function vc(e){let{children:t,...r}=e;return(0,Qc.jsxs)(zC.Link,{...r,target:"_blank",rel:"noopener noreferrer",children:[t," ",(0,Qc.jsx)(Sc,{fontSize:"small"})]})}var Qc,zC,$C=h(()=>{Qc=f(O(),1);mf();zC=f(F(),1)});function pf({text:e,extra:t}){let{classes:r}=rk(),n=t?`supporting data: ${JSON.stringify(t,null,2)}`:"",o=[e,n].filter(Boolean).join(`
1
+ "use strict";var JBrowsePluginMsaView=(()=>{var UM=Object.create;var Ss=Object.defineProperty;var HM=Object.getOwnPropertyDescriptor;var jM=Object.getOwnPropertyNames;var JM=Object.getPrototypeOf,qM=Object.prototype.hasOwnProperty;var g=(e,t,r)=>()=>{if(r)throw r[0];try{return e&&(t=e(e=0)),t}catch(n){throw r=[n],n}};var j=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(r){throw t=0,r}},tt=(e,t)=>{for(var r in t)Ss(e,r,{get:t[r],enumerable:!0})},eg=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of jM(t))!qM.call(e,o)&&o!==r&&Ss(e,o,{get:()=>t[o],enumerable:!(n=HM(t,o))||n.enumerable});return e};var f=(e,t,r)=>(r=e!=null?UM(JM(e)):{},eg(t||!e||!e.__esModule?Ss(r,"default",{value:e,enumerable:!0}):r,e)),VM=e=>eg(Ss({},"__esModule",{value:!0}),e);var rg=j((n3,tg)=>{tg.exports=JBrowseExports["@jbrowse/core/Plugin"]});var Go=j((o3,ng)=>{ng.exports=JBrowseExports["@jbrowse/core/configuration"]});var Ce=j((i3,og)=>{og.exports=JBrowseExports["@jbrowse/core/util"]});var Rt=j((a3,ig)=>{ig.exports=JBrowseExports["mobx-state-tree"]});var sg=j((s3,ag)=>{ag.exports=JBrowseExports["@mui/material/utils"]});var R,V=g(()=>{"use client";R=f(sg(),1)});var O=j((l3,cg)=>{cg.exports=JBrowseExports["react/jsx-runtime"]});var M=j((f3,ug)=>{ug.exports=JBrowseExports.react});var H=j((d3,fg)=>{fg.exports=JBrowseExports["mobx-react"]});var _e=j((m3,dg)=>{dg.exports=JBrowseExports["tss-react/mui"]});var GA=j((C3,gg)=>{gg.exports=JBrowseExports["@jbrowse/core/pluggableElementTypes"]});var Ar=j((I3,Cg)=>{Cg.exports=JBrowseExports.mobx});function vs(e){let{scrollX:t,msaAreaWidth:r,minimapHeight:n,colWidth:o,numColumns:i}=e,a=r/i/o,s=-t,c=s*a,l=(s+r)*a,A=Math.max(l-c,20),u=n-12,m=`${c+A},0 ${c},0 0,${u} ${r},${u}`;return{unit:a,s:c,w:A,polygonHeight:u,polygonPoints:m}}var UA=g(()=>{});var $n,Eg,YM,Ig,xg=g(()=>{$n=f(M(),1),Eg=f(H(),1);UA();YM=(0,Eg.observer)(({model:e})=>{let{msaAreaWidth:t}=e,{s:r,w:n,polygonPoints:o}=vs(e),i="rgb(66, 119, 127)",a=.3;return $n.default.createElement($n.default.Fragment,null,$n.default.createElement("rect",{x:0,y:0,width:t,height:12,stroke:"#555",fill:"none"}),$n.default.createElement("rect",{x:Math.max(0,r),y:0,width:n,height:12,fill:i,fillOpacity:a,stroke:"#555"}),$n.default.createElement("g",{transform:`translate(0 ${12})`},$n.default.createElement("polygon",{fill:i,fillOpacity:a,points:o})))}),Ig=YM});function Ms({model:e,offsetY:t,blockSizeY:r}){let{leaves:n,rowHeight:o}=e,i=Math.max(0,Math.floor((t-o)/o)),a=Math.max(0,Math.ceil((t+r+o)/o));return n.slice(i,a)}var HA=g(()=>{});function _s({model:e,offsetX:t,offsetY:r,ctx:n,highResScaleFactorOverride:o,blockSizeYOverride:i}){let{blockSize:a,rowHeight:s,highResScaleFactor:c,showDomains:l}=e;if(l){let A=o??c,u=i??a;n.resetTransform(),n.scale(A,A),n.translate(-t,s/2-r);let m=Ms({model:e,offsetY:r,blockSizeY:u});WM({model:e,ctx:n,visibleLeaves:m})}}function WM({model:e,ctx:t,visibleLeaves:r}){let{subFeatureRows:n,colWidth:o,rowHeight:i,fillPalette:a,strokePalette:s,tidyFilteredGatheredInterProAnnotations:c}=e;for(let l=0,A=r.length;l<A;l++){let u=r[l],{x:m,data:{name:d}}=u,p=m,E=c[d];if(E)for(let x=0,I=E.length;x<I;x++){let{start:C,end:w,accession:y}=E[x],b=e.seqPosToVisibleCol(d,C-1),Q=e.seqPosToVisibleCol(d,w);if(b===void 0||Q===void 0)continue;let S=b*o;t.fillStyle=a[y],t.strokeStyle=s[y];let k=n?4:i,T=p-i+(n?x*k:0),_=o*(Q-b);t.fillRect(S,T,_,k),t.strokeRect(S,T,_,k)}}}var jA=g(()=>{HA()});function ra({offsetX:e,blockWidth:t,colWidth:r}){return{xStart:Math.max(0,Math.floor(e/r)),xEnd:Math.max(0,Math.ceil((e+t)/r))}}var JA=g(()=>{});function vr(e,t,r=!1){e.font=e.font.replace(/(?:bold )?[\d.]+px/,`${r?"bold ":""}${t}px`)}var Ho=g(()=>{});var zM,$r,Ye,Yt,Mg,yg,qA,$M,Ts,_g,Tg,wg,bg,Bg,na,KM,XM,ZM,e_,WA,Sg,t_,VA,YA,Qg,zA,rt,vg,ks,Ds=g(()=>{zM={grad:.9,turn:360,rad:360/(2*Math.PI)},$r=function(e){return typeof e=="string"?e.length>0:typeof e=="number"},Ye=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=Math.pow(10,t)),Math.round(r*e)/r+0},Yt=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=1),e>r?r:e>t?e:t},Mg=function(e){return(e=isFinite(e)?e%360:0)>0?e:e+360},yg=function(e){return{r:Yt(e.r,0,255),g:Yt(e.g,0,255),b:Yt(e.b,0,255),a:Yt(e.a)}},qA=function(e){return{r:Ye(e.r),g:Ye(e.g),b:Ye(e.b),a:Ye(e.a,3)}},$M=/^#([0-9a-f]{3,8})$/i,Ts=function(e){var t=e.toString(16);return t.length<2?"0"+t:t},_g=function(e){var t=e.r,r=e.g,n=e.b,o=e.a,i=Math.max(t,r,n),a=i-Math.min(t,r,n),s=a?i===t?(r-n)/a:i===r?2+(n-t)/a:4+(t-r)/a:0;return{h:60*(s<0?s+6:s),s:i?a/i*100:0,v:i/255*100,a:o}},Tg=function(e){var t=e.h,r=e.s,n=e.v,o=e.a;t=t/360*6,r/=100,n/=100;var i=Math.floor(t),a=n*(1-r),s=n*(1-(t-i)*r),c=n*(1-(1-t+i)*r),l=i%6;return{r:255*[n,s,a,a,c,n][l],g:255*[c,n,n,s,a,a][l],b:255*[a,a,c,n,n,s][l],a:o}},wg=function(e){return{h:Mg(e.h),s:Yt(e.s,0,100),l:Yt(e.l,0,100),a:Yt(e.a)}},bg=function(e){return{h:Ye(e.h),s:Ye(e.s),l:Ye(e.l),a:Ye(e.a,3)}},Bg=function(e){return Tg((r=(t=e).s,{h:t.h,s:(r*=((n=t.l)<50?n:100-n)/100)>0?2*r/(n+r)*100:0,v:n+r,a:t.a}));var t,r,n},na=function(e){return{h:(t=_g(e)).h,s:(o=(200-(r=t.s))*(n=t.v)/100)>0&&o<200?r*n/100/(o<=100?o:200-o)*100:0,l:o/2,a:t.a};var t,r,n,o},KM=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,XM=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,ZM=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,e_=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,WA={string:[[function(e){var t=$M.exec(e);return t?(e=t[1]).length<=4?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:e.length===4?Ye(parseInt(e[3]+e[3],16)/255,2):1}:e.length===6||e.length===8?{r:parseInt(e.substr(0,2),16),g:parseInt(e.substr(2,2),16),b:parseInt(e.substr(4,2),16),a:e.length===8?Ye(parseInt(e.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(e){var t=ZM.exec(e)||e_.exec(e);return t?t[2]!==t[4]||t[4]!==t[6]?null:yg({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:t[7]===void 0?1:Number(t[7])/(t[8]?100:1)}):null},"rgb"],[function(e){var t=KM.exec(e)||XM.exec(e);if(!t)return null;var r,n,o=wg({h:(r=t[1],n=t[2],n===void 0&&(n="deg"),Number(r)*(zM[n]||1)),s:Number(t[3]),l:Number(t[4]),a:t[5]===void 0?1:Number(t[5])/(t[6]?100:1)});return Bg(o)},"hsl"]],object:[[function(e){var t=e.r,r=e.g,n=e.b,o=e.a,i=o===void 0?1:o;return $r(t)&&$r(r)&&$r(n)?yg({r:Number(t),g:Number(r),b:Number(n),a:Number(i)}):null},"rgb"],[function(e){var t=e.h,r=e.s,n=e.l,o=e.a,i=o===void 0?1:o;if(!$r(t)||!$r(r)||!$r(n))return null;var a=wg({h:Number(t),s:Number(r),l:Number(n),a:Number(i)});return Bg(a)},"hsl"],[function(e){var t=e.h,r=e.s,n=e.v,o=e.a,i=o===void 0?1:o;if(!$r(t)||!$r(r)||!$r(n))return null;var a=(function(s){return{h:Mg(s.h),s:Yt(s.s,0,100),v:Yt(s.v,0,100),a:Yt(s.a)}})({h:Number(t),s:Number(r),v:Number(n),a:Number(i)});return Tg(a)},"hsv"]]},Sg=function(e,t){for(var r=0;r<t.length;r++){var n=t[r][0](e);if(n)return[n,t[r][1]]}return[null,void 0]},t_=function(e){return typeof e=="string"?Sg(e.trim(),WA.string):typeof e=="object"&&e!==null?Sg(e,WA.object):[null,void 0]},VA=function(e,t){var r=na(e);return{h:r.h,s:Yt(r.s+100*t,0,100),l:r.l,a:r.a}},YA=function(e){return(299*e.r+587*e.g+114*e.b)/1e3/255},Qg=function(e,t){var r=na(e);return{h:r.h,s:r.s,l:Yt(r.l+100*t,0,100),a:r.a}},zA=(function(){function e(t){this.parsed=t_(t)[0],this.rgba=this.parsed||{r:0,g:0,b:0,a:1}}return e.prototype.isValid=function(){return this.parsed!==null},e.prototype.brightness=function(){return Ye(YA(this.rgba),2)},e.prototype.isDark=function(){return YA(this.rgba)<.5},e.prototype.isLight=function(){return YA(this.rgba)>=.5},e.prototype.toHex=function(){return t=qA(this.rgba),r=t.r,n=t.g,o=t.b,a=(i=t.a)<1?Ts(Ye(255*i)):"","#"+Ts(r)+Ts(n)+Ts(o)+a;var t,r,n,o,i,a},e.prototype.toRgb=function(){return qA(this.rgba)},e.prototype.toRgbString=function(){return t=qA(this.rgba),r=t.r,n=t.g,o=t.b,(i=t.a)<1?"rgba("+r+", "+n+", "+o+", "+i+")":"rgb("+r+", "+n+", "+o+")";var t,r,n,o,i},e.prototype.toHsl=function(){return bg(na(this.rgba))},e.prototype.toHslString=function(){return t=bg(na(this.rgba)),r=t.h,n=t.s,o=t.l,(i=t.a)<1?"hsla("+r+", "+n+"%, "+o+"%, "+i+")":"hsl("+r+", "+n+"%, "+o+"%)";var t,r,n,o,i},e.prototype.toHsv=function(){return t=_g(this.rgba),{h:Ye(t.h),s:Ye(t.s),v:Ye(t.v),a:Ye(t.a,3)};var t},e.prototype.invert=function(){return rt({r:255-(t=this.rgba).r,g:255-t.g,b:255-t.b,a:t.a});var t},e.prototype.saturate=function(t){return t===void 0&&(t=.1),rt(VA(this.rgba,t))},e.prototype.desaturate=function(t){return t===void 0&&(t=.1),rt(VA(this.rgba,-t))},e.prototype.grayscale=function(){return rt(VA(this.rgba,-1))},e.prototype.lighten=function(t){return t===void 0&&(t=.1),rt(Qg(this.rgba,t))},e.prototype.darken=function(t){return t===void 0&&(t=.1),rt(Qg(this.rgba,-t))},e.prototype.rotate=function(t){return t===void 0&&(t=15),this.hue(this.hue()+t)},e.prototype.alpha=function(t){return typeof t=="number"?rt({r:(r=this.rgba).r,g:r.g,b:r.b,a:t}):Ye(this.rgba.a,3);var r},e.prototype.hue=function(t){var r=na(this.rgba);return typeof t=="number"?rt({h:t,s:r.s,l:r.l,a:r.a}):Ye(r.h)},e.prototype.isEqual=function(t){return this.toHex()===rt(t).toHex()},e})(),rt=function(e){return e instanceof zA?e:new zA(e)},vg=[],ks=function(e){e.forEach(function(t){vg.indexOf(t)<0&&(t(zA,WA),vg.push(t))})}});function kg(e){e.prototype.luminance=function(){return t=KA(this.rgba),(r=2)===void 0&&(r=0),n===void 0&&(n=Math.pow(10,r)),Math.round(n*t)/n+0;var t,r,n},e.prototype.contrast=function(t){t===void 0&&(t="#FFF");var r,n,o,i,a,s,c,l=t instanceof e?t:new e(t);return i=this.rgba,a=l.toRgb(),s=KA(i),c=KA(a),r=s>c?(s+.05)/(c+.05):(c+.05)/(s+.05),(n=2)===void 0&&(n=0),o===void 0&&(o=Math.pow(10,n)),Math.floor(o*r)/o+0},e.prototype.isReadable=function(t,r){return t===void 0&&(t="#FFF"),r===void 0&&(r={}),this.contrast(t)>=(s=(a=(n=r).size)===void 0?"normal":a,(i=(o=n.level)===void 0?"AA":o)==="AAA"&&s==="normal"?7:i==="AA"&&s==="large"?3:4.5);var n,o,i,a,s}}var $A,KA,Dg=g(()=>{$A=function(e){var t=e/255;return t<.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},KA=function(e){return .2126*$A(e.r)+.7152*$A(e.g)+.0722*$A(e.b)}});function Ns(e,t){var r={white:"#ffffff",bisque:"#ffe4c4",blue:"#0000ff",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",antiquewhite:"#faebd7",aqua:"#00ffff",azure:"#f0ffff",whitesmoke:"#f5f5f5",papayawhip:"#ffefd5",plum:"#dda0dd",blanchedalmond:"#ffebcd",black:"#000000",gold:"#ffd700",goldenrod:"#daa520",gainsboro:"#dcdcdc",cornsilk:"#fff8dc",cornflowerblue:"#6495ed",burlywood:"#deb887",aquamarine:"#7fffd4",beige:"#f5f5dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkkhaki:"#bdb76b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",peachpuff:"#ffdab9",darkmagenta:"#8b008b",darkred:"#8b0000",darkorchid:"#9932cc",darkorange:"#ff8c00",darkslateblue:"#483d8b",gray:"#808080",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",deeppink:"#ff1493",deepskyblue:"#00bfff",wheat:"#f5deb3",firebrick:"#b22222",floralwhite:"#fffaf0",ghostwhite:"#f8f8ff",darkviolet:"#9400d3",magenta:"#ff00ff",green:"#008000",dodgerblue:"#1e90ff",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",blueviolet:"#8a2be2",forestgreen:"#228b22",lawngreen:"#7cfc00",indianred:"#cd5c5c",indigo:"#4b0082",fuchsia:"#ff00ff",brown:"#a52a2a",maroon:"#800000",mediumblue:"#0000cd",lightcoral:"#f08080",darkturquoise:"#00ced1",lightcyan:"#e0ffff",ivory:"#fffff0",lightyellow:"#ffffe0",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",linen:"#faf0e6",mediumaquamarine:"#66cdaa",lemonchiffon:"#fffacd",lime:"#00ff00",khaki:"#f0e68c",mediumseagreen:"#3cb371",limegreen:"#32cd32",mediumspringgreen:"#00fa9a",lightskyblue:"#87cefa",lightblue:"#add8e6",midnightblue:"#191970",lightpink:"#ffb6c1",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",mintcream:"#f5fffa",lightslategray:"#778899",lightslategrey:"#778899",navajowhite:"#ffdead",navy:"#000080",mediumvioletred:"#c71585",powderblue:"#b0e0e6",palegoldenrod:"#eee8aa",oldlace:"#fdf5e6",paleturquoise:"#afeeee",mediumturquoise:"#48d1cc",mediumorchid:"#ba55d3",rebeccapurple:"#663399",lightsteelblue:"#b0c4de",mediumslateblue:"#7b68ee",thistle:"#d8bfd8",tan:"#d2b48c",orchid:"#da70d6",mediumpurple:"#9370db",purple:"#800080",pink:"#ffc0cb",skyblue:"#87ceeb",springgreen:"#00ff7f",palegreen:"#98fb98",red:"#ff0000",yellow:"#ffff00",slateblue:"#6a5acd",lavenderblush:"#fff0f5",peru:"#cd853f",palevioletred:"#db7093",violet:"#ee82ee",teal:"#008080",slategray:"#708090",slategrey:"#708090",aliceblue:"#f0f8ff",darkseagreen:"#8fbc8f",darkolivegreen:"#556b2f",greenyellow:"#adff2f",seagreen:"#2e8b57",seashell:"#fff5ee",tomato:"#ff6347",silver:"#c0c0c0",sienna:"#a0522d",lavender:"#e6e6fa",lightgreen:"#90ee90",orange:"#ffa500",orangered:"#ff4500",steelblue:"#4682b4",royalblue:"#4169e1",turquoise:"#40e0d0",yellowgreen:"#9acd32",salmon:"#fa8072",saddlebrown:"#8b4513",sandybrown:"#f4a460",rosybrown:"#bc8f8f",darksalmon:"#e9967a",lightgoldenrodyellow:"#fafad2",snow:"#fffafa",lightgrey:"#d3d3d3",lightgray:"#d3d3d3",dimgray:"#696969",dimgrey:"#696969",olivedrab:"#6b8e23",olive:"#808000"},n={};for(var o in r)n[r[o]]=o;var i={};e.prototype.toName=function(a){if(!(this.rgba.a||this.rgba.r||this.rgba.g||this.rgba.b))return"transparent";var s,c,l=n[this.toHex()];if(l)return l;if(a?.closest){var A=this.toRgb(),u=1/0,m="black";if(!i.length)for(var d in r)i[d]=new e(r[d]).toRgb();for(var p in r){var E=(s=A,c=i[p],Math.pow(s.r-c.r,2)+Math.pow(s.g-c.g,2)+Math.pow(s.b-c.b,2));E<u&&(u=E,m=p)}return m}},t.string.push([function(a){var s=a.toLowerCase(),c=s==="transparent"?"#0000":r[s];return c?new e(c).toRgb():null},"name"])}var XA=g(()=>{});function Lg(e,t){let r=`${e}|${t}`,n=Ng.get(r);if(n!==void 0)return n;let o=rt(e);if(!o.isReadable(t)){let a=rt(t).luminance()<.5;for(let s=0;s<40&&!o.isReadable(t);s++)o=a?o.lighten(.05):o.darken(.05)}let i=o.toHex();return Ng.set(r,i),i}function jo(e,t){return Object.fromEntries(Object.entries(e).map(t))}function oa(e,t){return jo(e,([r,n])=>[r,t.palette.getContrastText(rt(n).toHex())])}function ZA(e,t){if(e.length===0)return t;let r=[],n=0;for(let o of e)o>n&&r.push(t.slice(n,o)),n=o+1;return n<t.length&&r.push(t.slice(n)),r.join("")}function Rg(e,t){let r=[],n=e.length,o=0,i=0,a=-1,s=[];for(let c=0;c<t.length;c++)i<n&&e[i]===c?(t.charCodeAt(c)-45>>>0<=1||(a===o?s.push(t[c]):(s.length>0&&r.push({pos:a,letters:s.join("")}),a=o,s=[t[c]])),i++):o++;return s.length>0&&r.push({pos:a,letters:s.join("")}),r}function eu(e){return e.end-e.start}function ia(e){return e==="-"||e==="."}var Ng,Cn=g(()=>{Ds();Dg();XA();ks([Ns,kg]);Ng=new Map});function Ls({model:e,offsetX:t,offsetY:r,contrastScheme:n,ctx:o,theme:i,highResScaleFactorOverride:a,blockSizeXOverride:s,blockSizeYOverride:c}){let{colWidth:l,blockSize:A,rowHeight:u,fontSize:m,highResScaleFactor:d,actuallyShowDomains:p,bgColor:E}=e,x=a??d,I=s??A,C=c??A;o.resetTransform(),o.scale(x,x),o.translate(-t,u/2-r),o.textAlign="center",vr(o,m,!E);let{xStart:w,xEnd:y}=ra({offsetX:t,blockWidth:I,colWidth:l}),b=Ms({model:e,offsetY:r,blockSizeY:C}),{relativeTo:Q,columns:S}=e,k=Q?S.get(Q)?.slice(w,y):null;p?n_({model:e,ctx:o,xStart:w,xEnd:y,visibleLeaves:b,referenceSeq:k}):r_({model:e,ctx:o,theme:i,contrastScheme:n,xStart:w,xEnd:y,visibleLeaves:b,referenceSeq:k}),o_({model:e,ctx:o,xStart:w,xEnd:y,visibleLeaves:b}),o.resetTransform()}function r_({model:e,ctx:t,theme:r,contrastScheme:n,visibleLeaves:o,xStart:i,xEnd:a,referenceSeq:s}){let{bgColor:c,colorSchemeName:l,colorScheme:A,columns:u,colWidth:m,rowHeight:d,relativeTo:p,showMsaLetters:E,colClustalX:x,colConsensus:I}=e,C=l==="clustalx_protein_dynamic",w=l==="percent_identity_dynamic",y=c||C||w;if(!y&&!E)return;let b=i*m,Q=m/2,S=d/4;for(let k=0,T=o.length;k<T;k++){let _=o[k],{name:v}=_.data,L=_.x,U=u.get(v)?.slice(i,a);if(!U)continue;let Y=L-d,ke=L-S;for(let te=0,Re=U.length;te<Re;te++){let Tt=U[te],Yn=te*m+b,sr=s&&v!==p&&Tt===s[te],re;if(C)re=x[i+te][Tt];else if(w){let cr=I[i+te];re=Tt===cr.letter?cr.color:void 0}else re=A[Tt];y&&(t.fillStyle=sr?r.palette.action.hover:re||r.palette.background.default,t.fillRect(Yn,Y,m,d)),E&&(t.fillStyle=c?n[Tt]??"black":re?Lg(re,r.palette.background.default):r.palette.text.primary,t.fillText(sr?".":Tt,Yn+Q,ke))}}}function n_({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o,referenceSeq:i}){let{showMsaLetters:a,columns:s,colWidth:c,rowHeight:l,relativeTo:A}=e;if(!a)return;let u=n*c,m=c/2,d=l/4;t.fillStyle="black";for(let p=0,E=r.length;p<E;p++){let x=r[p],{name:I}=x.data,C=x.x-d,w=s.get(I)?.slice(n,o);if(w)for(let y=0,b=w.length;y<b;y++){let Q=w[y],S=i&&I!==A&&Q===i[y];t.fillText(S?".":Q,y*c+u+m,C)}}}function o_({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o}){let{bgColor:i,hideGapsEffective:a}=e;a&&(t.lineWidth=1,t.strokeStyle="#f0f",Fg({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:0}),t.strokeStyle=i?"#fff":"#000",Fg({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:-1}))}function Fg({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o,offset:i}){let{colWidth:s,rowHeight:c,insertionPositions:l}=e;for(let A of r){let{name:u}=A.data,m=l.get(u);if(m){let d=A.x;for(let{pos:p}of m)if(p>=n&&p<o){let E=p*s,x=d-c,I=d;t.beginPath(),t.moveTo(E+i,x+i);let C=x,w=!0;for(;C<I;){let y=Math.min(C+2,I),b=w?E+1:E-1;t.lineTo(b+i,y+i),C=y,w=!w}t.stroke()}}}}var tu=g(()=>{HA();JA();Ho();Cn()});function ru({ctx:e,conservation:t,colWidth:r,trackHeight:n,offsetX:o,blockSize:i}){let{xStart:a,xEnd:s}=ra({offsetX:o,blockWidth:i,colWidth:r});e.fillStyle="gray";for(let c=a;c<s&&c<t.length;c++){let A=t[c]*n,u=c*r;e.fillRect(u,n-A,r,A)}}function nu({ctx:e,data:t,colorScheme:r,contrastScheme:n,bgColor:o,colWidth:i,rowHeight:a,offsetX:s,blockSize:c}){let{xStart:l,xEnd:A}=ra({offsetX:s,blockWidth:c,colWidth:i}),u=t?.slice(l,A);for(let m=0;u&&m<u.length;m++){let d=u[m],p=r[d.toUpperCase()];if(o){let E=(l+m)*i;e.fillStyle=p||"white",e.fillRect(E,0,i,a),a>=10&&i>=a/2&&(e.fillStyle=n[d.toUpperCase()]||"black",e.fillText(d,E+i/2,a/2+1))}}}function i_({model:e,ctx:t,offsetX:r,offsetY:n,trackHeight:o,blockSizeXOverride:i,highResScaleFactorOverride:a}){let{blockSize:s,colWidth:c,highResScaleFactor:l,conservation:A}=e,u=i??s,m=a??l;t.resetTransform(),t.scale(m,m),t.translate(-r,n),ru({ctx:t,conservation:A,colWidth:c,trackHeight:o,offsetX:r,blockSize:u}),t.resetTransform()}function a_({model:e,ctx:t,track:r,offsetX:n,offsetY:o,contrastScheme:i,blockSizeXOverride:a,highResScaleFactorOverride:s}){let{blockSize:c,bgColor:l,colorScheme:A,colWidth:u,fontSize:m,rowHeight:d,highResScaleFactor:p}=e,{customColorScheme:E,data:x}=r.model,I=E??A,C=a??c,w=s??p;t.resetTransform(),t.scale(w,w),t.translate(-n,o),t.textAlign="center",vr(t,m),nu({ctx:t,data:x,colorScheme:I,contrastScheme:i,bgColor:l,colWidth:u,rowHeight:d,offsetX:n,blockSize:C}),t.resetTransform()}function Pg({model:e,ctx:t,offsetX:r,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}){let{turnedOnTracks:a}=e,s=0;for(let c of a){let l=c.model.height;c.model.id==="conservation"?i_({model:e,ctx:t,offsetX:r,offsetY:s,trackHeight:l,blockSizeXOverride:o,highResScaleFactorOverride:i}):a_({model:e,ctx:t,track:c,offsetX:r,offsetY:s,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}),s+=l}}var Rs=g(()=>{Ho();JA()});function Kn(e){let t=[],r=[e];for(;r.length>0;){let n=r.pop();if(t.push(n),n.children)for(let o=n.children.length-1;o>=0;o--)r.push(n.children[o])}return t}function s_(e){let t=Kn(e);for(let r=t.length-1;r>=0;r--){let n=t[r],o=0;if(n.children)for(let i of n.children)i.height+1>o&&(o=i.height+1);n.height=o}}function Og(e,t){let r={data:e,children:null,parent:null,depth:0,height:0},n=[r];for(;n.length>0;){let o=n.pop(),i=t(o.data);if(i?.length){o.children=i.map(a=>({data:a,children:null,parent:o,depth:o.depth+1,height:0}));for(let a of o.children)n.push(a)}}return s_(r),r}function Gg(e,t){let r=Kn(e);for(let n=r.length-1;n>=0;n--){let o=r[n],i=t(o.data);if(o.children)for(let a of o.children)i+=a.value;o.value=i}return e}function Ug(e,t){let r=[e];for(;r.length>0;){let n=r.pop();if(n.children){n.children.sort(t);for(let o of n.children)r.push(o)}}return e}function Fs(e,t){let r=[e],n;for(;r.length>0&&n===void 0;){let o=r.pop();if(t(o))n=o;else if(o.children)for(let i=o.children.length-1;i>=0;i--)r.push(o.children[i])}return n}function aa(e){let t=[],r=[e];for(;r.length>0;){let n=r.pop();if(n.children)for(let o=n.children.length-1;o>=0;o--)r.push(n.children[o]);else t.push(n)}return t}function Hg(e){let t=[];return ou(e,(r,n)=>{t.push({source:r,target:n})}),t}function ou(e,t){let r=[e];for(;r.length>0;){let n=r.pop();if(n.children)for(let o=n.children.length-1;o>=0;o--){let i=n.children[o];t(n,i),r.push(i)}}}function sa(e,t){for(let r of Kn(e))t(r)}function jg(e,t,r){let n=aa(e),o=n.length,i=t/o;for(let l=0;l<o;l++)n[l].x=(l+.5)*i;let a=Kn(e);for(let l=a.length-1;l>=0;l--){let A=a[l];if(A.children){let u=0;for(let m of A.children)u+=m.x;A.x=u/A.children.length}}let s=e.height,c=[{node:e,depth:0}];for(;c.length>0;){let{node:l,depth:A}=c.pop();if(l.y=s===0?r:A/s*r,l.children)for(let u of l.children)c.push({node:u,depth:A+1})}}function Jg(e){e.children&&(ca(e),e._children=e.children,e.children=null)}function qg(e){let t=e._children??e.children,r=1/0,n=0;if(t){let o=t.map(i=>({node:i,acc:Math.max(i.data.length??0,0)}));for(;o.length>0;){let{node:i,acc:a}=o.pop(),s=i.children??i._children;if(s?.length)for(let c of s)o.push({node:c,acc:a+Math.max(c.data.length??0,0)});else r=Math.min(r,a),n=Math.max(n,a)}}return{min:r===1/0?0:r,max:n}}function ca(e){let t=Kn(e);for(let r=t.length-1;r>=0;r--){let n=t[r];if(n.depthToLeaf===void 0){let o=0;if(n.children)for(let i of n.children)o=Math.max(o,1+i.depthToLeaf);n.depthToLeaf=o}}return e.depthToLeaf}function Vg(e){let t=0;for(let r of Kn(e))t=Math.max(t,r.len||0);return t}function Yg(e){let t=Kn(e),r=new Map;for(let n=t.length-1;n>=0;n--){let o=t[n],i=0;if(o.children)for(let a of o.children)i=Math.max(i,r.get(a));r.set(o,(o.data.length||0)+i)}return r.get(e)}function Wg(e,t,r){let n=[{node:e,y0:t}];for(;n.length>0;){let{node:o,y0:i}=n.pop(),a=i+Math.max(o.data.length||0,0);if(o.len=a*r,o.children)for(let s of o.children)n.push({node:s,y0:a})}}var iu=g(()=>{});function la(e,t,r,n){if(t)return e.len;if(n===0)return 0;let o=ca(e);return(n-o)/n*r}function c_({offsetY:e,ctx:t,model:r,theme:n,maxBranchLen:o,maxDepthToLeaf:i,blockSizeYOverride:a}){let{hierarchy:s,showBranchLenEffective:c,blockSize:l}=r,A=a??l;t.strokeStyle=n.palette.text.primary,ou(s,(u,m)=>{let d=u.x,p=m.x,E=la(m,c,o,i),x=la(u,c,o,i);if(E===void 0||x===void 0)return;let I=Math.min(d,p),C=Math.max(d,p);e+A>=I&&C>=e&&(t.beginPath(),t.moveTo(x,d),t.lineTo(x,p),t.lineTo(E,p),t.stroke())})}function l_({ctx:e,clickMap:t,offsetY:r,model:n,theme:o,maxBranchLen:i,maxDepthToLeaf:a,blockSizeYOverride:s}){let{hierarchy:c,showBranchLenEffective:l,collapsed:A,blockSize:u,rowHeight:m,fontSize:d,marginLeft:p}=n,E=s??u,x=Math.max(2,m*.42);sa(c,I=>{let{id:C,name:w}=I.data;if(A.includes(C)){let y=la(I,l,i,a),b=I.x,Q=b>r-Jo&&b<r+E+Jo,S=l?I.collapsedTipXFar??i:i;if(y!==void 0&&Q&&S>y){e.beginPath(),e.moveTo(y,b),e.lineTo(S,b-x),e.lineTo(S,b+x),e.closePath(),e.fillStyle=o.palette.action.disabled,e.fill(),e.strokeStyle=o.palette.text.primary,e.stroke();let k=I.value;k!==void 0&&m>=8&&(e.fillStyle=o.palette.text.primary,e.textAlign="left",e.fillText(`${k}`,S+3,b+d/4));let T=w===C?"Collapsed clade":w;t?.insert({minX:y+p,maxX:S+p,minY:b-x,maxY:b+x,branch:!0,id:C,name:k===void 0?T:`${T} (${k} tips)`})}}})}function A_({ctx:e,clickMap:t,offsetY:r,model:n,maxBranchLen:o,maxDepthToLeaf:i,blockSizeYOverride:a}){let{hierarchy:s,showBranchLenEffective:c,collapsed:l,blockSize:A,marginLeft:u}=n,m=a??A;sa(s,d=>{let p=la(d,c,o,i);if(p===void 0)return;let{data:E}=d,x=d.x,{id:I,name:C}=E;if(d.height>=1&&x>r-Jo&&x<r+m+Jo){let w=l.includes(I);e.strokeStyle="black",e.fillStyle=w?"black":"white",e.beginPath(),e.arc(p,x,Xn,0,2*Math.PI),e.fill(),e.stroke(),w||t?.insert({minX:p-Xn+u,maxX:p-Xn+au+u,minY:x-Xn,maxY:x-Xn+au,branch:!0,id:I,name:C})}})}function u_({theme:e,model:t,offsetY:r,ctx:n,clickMap:o,maxBranchLen:i,maxDepthToLeaf:a,blockSizeYOverride:s}){let{fontSize:c,showBranchLenEffective:l,treeMetadata:A,blockSize:u,labelsAlignRight:m,drawTree:d,treeAreaWidth:p,treeAreaWidthMinusMargin:E,marginLeft:x,leaves:I,noTree:C,labelWidthMap:w,collapsed:y}=t,b=s??u,Q=n.measureText("M").width;m?(n.textAlign="right",n.setLineDash([1,3])):n.textAlign="start";for(let S of I){let{data:{name:k,id:T}}=S,_=S.x,v=A[k]?.genome||k;if(!(y.includes(T)&&k===T)&&_>r-Jo&&_<r+b+Jo){let U=_+c/4,Y=0;C||(Y=la(S,l,i,a)??0);let ke=w.get(k)??n.measureText(v).width;if(n.fillStyle=e.palette.text.primary,m){let Re=E-2;d&&!C&&(n.moveTo(Y+Xn+2,_),n.lineTo(Re-2-ke,_),n.stroke()),n.fillText(v,Re,U),o?.insert({minX:p-ke,maxX:p,minY:U-Q,maxY:U,name:k,id:T})}else{let te=C?2:Y+au;n.fillText(v,te,U),o?.insert({minX:te+x,maxX:te+ke+x,minY:U-Q,maxY:U,name:k,id:T})}}}n.setLineDash([])}function Ps({model:e,clickMap:t,ctx:r,offsetY:n,theme:o,highResScaleFactorOverride:i,blockSizeYOverride:a}){t?.clear();let{noTree:s,drawTree:c,drawNodeBubbles:l,highResScaleFactor:A,fontSize:u,showTreeText:m,marginLeft:d,rowHeight:p}=e;r.resetTransform();let E=i??A;r.scale(E,E),r.translate(d,-n),vr(r,u);let{maxBranchLength:x,maxDepthToLeaf:I}=e;!s&&c&&(c_({ctx:r,offsetY:n,model:e,theme:o,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:a}),l_({ctx:r,clickMap:t,offsetY:n,model:e,theme:o,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:a}),l&&A_({ctx:r,offsetY:n,clickMap:t,model:e,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:a})),m&&u_({ctx:r,offsetY:n,model:e,clickMap:t,theme:o,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:a}),t?.finish()}var qo,Jo,Xn,au,Os=g(()=>{iu();Ho();qo=600,Jo=5,Xn=2.5,au=Xn*2});var Kg={};tt(Kg,{Context:()=>lu});function zg(e){return!e||typeof e=="string"?e:e+""}function ur(e,t){let r=Object.keys(t);for(let n of r)e=e.replace(new RegExp("\\{"+n+"\\}","gi"),t[n]);return e}function su(e){if(!e)throw new Error("cannot create a random attribute name for an undefined object");let t="ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz",r="";do{r="";for(let n=0;n<12;n++)r+=t[Math.floor(Math.random()*t.length)]}while(e[r]);return r}function f_(e,t=10){let r={},n=e.split(",");for(let o=0;o<n.length;o+=2){let i="&"+n[o+1]+";",a=parseInt(n[o],t);r[i]="&#"+a+";"}return r["\\xa0"]="&#160;",r}function d_(e){let t={left:"start",right:"end",center:"middle",start:"start",end:"end"};return t[e]||t.start}function m_(e){let t={alphabetic:"alphabetic",hanging:"hanging",top:"text-before-edge",bottom:"text-after-edge",middle:"central"};return t[e]||t.alphabetic}var $g,Aa,ua,cu,lu,Xg=g(()=>{$g=f_("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32),Aa={strokeStyle:{svgAttr:"stroke",canvas:"#000000",svg:"none",apply:"stroke"},fillStyle:{svgAttr:"fill",canvas:"#000000",svg:null,apply:"fill"},lineCap:{svgAttr:"stroke-linecap",canvas:"butt",svg:"butt",apply:"stroke"},lineJoin:{svgAttr:"stroke-linejoin",canvas:"miter",svg:"miter",apply:"stroke"},miterLimit:{svgAttr:"stroke-miterlimit",canvas:10,svg:4,apply:"stroke"},lineWidth:{svgAttr:"stroke-width",canvas:1,svg:1,apply:"stroke"},globalAlpha:{svgAttr:"opacity",canvas:1,svg:1,apply:"fill stroke"},font:{canvas:"10px sans-serif"},shadowColor:{canvas:"#000000"},shadowOffsetX:{canvas:0},shadowOffsetY:{canvas:0},shadowBlur:{canvas:0},textAlign:{canvas:"start"},textBaseline:{canvas:"alphabetic"},lineDash:{svgAttr:"stroke-dasharray",canvas:[],svg:null,apply:"stroke"}},ua=class{__root;__ctx;constructor(t,r){this.__root=t,this.__ctx=r}addColorStop(t,r){let n=this.__ctx.__createElement("stop");if(n.setAttribute("offset",String(t)),zg(r).includes("rgba")){let i=/rgba\(\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi.exec(r);i&&(n.setAttribute("stop-color",ur("rgb({r},{g},{b})",{r:i[1],g:i[2],b:i[3]})),n.setAttribute("stop-opacity",i[4]))}else n.setAttribute("stop-color",zg(r));this.__root.appendChild(n)}},cu=class{__root;__ctx;constructor(t,r){this.__root=t,this.__ctx=r}},lu=class{width;height;enableMirroring;canvas;__document;__ctx;__canvas;__root;__ids;__defs;__currentElement;__styleStack;__groupStack;__currentDefaultPath;__currentPosition;__transformMatrix;__transformMatrixStack;__currentElementsToStyle;__options;__id;__fontUnderline;__fontHref;strokeStyle;fillStyle;lineCap;lineJoin;miterLimit;lineWidth;globalAlpha;font;shadowColor;shadowOffsetX;shadowOffsetY;shadowBlur;textAlign;textBaseline;lineDash;constructor(t,r){let n={width:500,height:500,enableMirroring:!1},o;typeof t=="number"&&r!==void 0?o={...n,width:t,height:r}:t&&typeof t=="object"?o=t:o=n,this.width=o.width||n.width,this.height=o.height||n.height,this.enableMirroring=o.enableMirroring!==void 0?o.enableMirroring:n.enableMirroring,this.canvas=this,this.__document=o.document||document,o.ctx?this.__ctx=o.ctx:(this.__canvas=this.__document.createElement("canvas"),this.__ctx=this.__canvas.getContext("2d")),this.__setDefaultStyles(),this.__styleStack=[this.__getStyleState()],this.__groupStack=[],this.__root=this.__document.createElementNS("http://www.w3.org/2000/svg","svg"),this.__root.setAttribute("version","1.1"),this.__root.setAttribute("xmlns","http://www.w3.org/2000/svg"),this.__root.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink"),this.__root.setAttribute("width",String(this.width)),this.__root.setAttribute("height",String(this.height)),this.__ids={},this.__defs=this.__document.createElementNS("http://www.w3.org/2000/svg","defs"),this.__root.appendChild(this.__defs),this.__currentElement=this.__document.createElementNS("http://www.w3.org/2000/svg","g"),this.__root.appendChild(this.__currentElement),this.__currentDefaultPath="",this.__currentPosition={},this.__transformMatrix=new DOMMatrix,this.resetTransform(),this.__options=o,this.__id=Math.random().toString(16).substring(2,8)}__createElement(t,r={},n){let o=this.__document.createElementNS("http://www.w3.org/2000/svg",t);n&&(o.setAttribute("fill","none"),o.setAttribute("stroke","none"));for(let i of Object.keys(r))o.setAttribute(i,r[i]);return o}__setDefaultStyles(){for(let t of Object.keys(Aa))this[t]=Aa[t].canvas}__applyStyleState(t){for(let r of Object.keys(t))this[r]=t[r]}__getStyleState(){let t={};for(let r of Object.keys(Aa))t[r]=this[r];return t}__applyTransformation(t,r){let{a:n,b:o,c:i,d:a,e:s,f:c}=r||this.getTransform();t.setAttribute("transform",`matrix(${n} ${o} ${i} ${a} ${s} ${c})`)}__applyStyleToCurrentElement(t){let r=this.__currentElement,n=this.__currentElementsToStyle;if(n){r.setAttribute(t,""),r=n.element;for(let i of n.children)i.setAttribute(t,"")}let o=Object.keys(Aa);for(let i of o){let a=Aa[i],s=this[i];if(a.apply){if(s instanceof cu){if(s.__ctx)for(let c of Array.from(s.__ctx.__defs.childNodes)){let l=c.getAttribute("id");l&&(this.__ids[l]=l,this.__defs.appendChild(c))}r.setAttribute(a.apply,ur("url(#{id})",{id:s.__root.getAttribute("id")}))}else if(s instanceof ua)r.setAttribute(a.apply,ur("url(#{id})",{id:s.__root.getAttribute("id")}));else if(a.apply.includes(t)&&a.svg!==s)if((a.svgAttr==="stroke"||a.svgAttr==="fill")&&s&&s.includes("rgba")){let l=/rgba\(\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi.exec(s);if(l){r.setAttribute(a.svgAttr,ur("rgb({r},{g},{b})",{r:l[1],g:l[2],b:l[3]}));let A=Number(l[4]),u=this.globalAlpha;u!=null&&(A*=u),r.setAttribute(a.svgAttr+"-opacity",String(A))}}else{let c=a.svgAttr,l=s;if(i==="globalAlpha"){if(c=t+"-"+a.svgAttr,r.getAttribute(c))continue}else if(i==="lineWidth"){let A=this.__getTransformScale();l=s*Math.max(A.x,A.y)}r.setAttribute(c,l)}}}}__closestGroupOrSvg(t){return t=t||this.__currentElement,t.nodeName==="g"||t.nodeName==="svg"?t:this.__closestGroupOrSvg(t.parentNode)}getSerializedSvg(t){let r=new XMLSerializer().serializeToString(this.__root);if(/xmlns="http:\/\/www\.w3\.org\/2000\/svg".+xmlns="http:\/\/www\.w3\.org\/2000\/svg/gi.test(r)&&(r=r.replace('xmlns="http://www.w3.org/2000/svg','xmlns:xlink="http://www.w3.org/1999/xlink')),t)for(let o of Object.keys($g)){let i=new RegExp(o,"gi");i.test(r)&&(r=r.replace(i,$g[o]))}return r}getSvg(){return this.__root}save(){let t=this.__createElement("g"),r=this.__closestGroupOrSvg();this.__groupStack.push(r),r.appendChild(t),this.__currentElement=t;let n=this.__getStyleState();this.__styleStack.push(n),this.__transformMatrixStack||(this.__transformMatrixStack=[]),this.__transformMatrixStack.push(this.getTransform())}restore(){this.__currentElement=this.__groupStack.pop(),this.__currentElementsToStyle=void 0,this.__currentElement||(this.__currentElement=this.__root.childNodes[1]);let t=this.__styleStack.pop();this.__applyStyleState(t),this.__transformMatrixStack&&this.__transformMatrixStack.length>0&&this.setTransform(this.__transformMatrixStack.pop())}beginPath(){this.__currentDefaultPath="",this.__currentPosition={};let t=this.__createElement("path",{},!0);this.__closestGroupOrSvg().appendChild(t),this.__currentElement=t}__applyCurrentDefaultPath(){let t=this.__currentElement;t.nodeName==="path"&&t.setAttribute("d",this.__currentDefaultPath)}__addPathCommand(t){this.__currentDefaultPath+=" ",this.__currentDefaultPath+=t}moveTo(t,r){this.__currentElement.nodeName!=="path"&&this.beginPath(),this.__currentPosition={x:t,y:r},this.__addPathCommand(ur("M {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y}))}closePath(){this.__currentDefaultPath&&this.__addPathCommand("Z")}lineTo(t,r){this.__currentPosition={x:t,y:r},this.__currentDefaultPath.includes("M")?this.__addPathCommand(ur("L {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y})):this.__addPathCommand(ur("M {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y}))}bezierCurveTo(t,r,n,o,i,a){this.__currentPosition={x:i,y:a},this.__addPathCommand(ur("C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}",{cp1x:this.__matrixTransform(t,r).x,cp1y:this.__matrixTransform(t,r).y,cp2x:this.__matrixTransform(n,o).x,cp2y:this.__matrixTransform(n,o).y,x:this.__matrixTransform(i,a).x,y:this.__matrixTransform(i,a).y}))}quadraticCurveTo(t,r,n,o){this.__currentPosition={x:n,y:o},this.__addPathCommand(ur("Q {cpx} {cpy} {x} {y}",{cpx:this.__matrixTransform(t,r).x,cpy:this.__matrixTransform(t,r).y,x:this.__matrixTransform(n,o).x,y:this.__matrixTransform(n,o).y}))}stroke(){this.__currentElement.nodeName==="path"&&this.__currentElement.setAttribute("paint-order","fill stroke markers"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement("stroke")}fill(){this.__currentElement.nodeName==="path"&&this.__currentElement.setAttribute("paint-order","stroke fill markers"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement("fill")}rect(t,r,n,o){this.__currentElement.nodeName!=="path"&&this.beginPath(),this.moveTo(t,r),this.lineTo(t+n,r),this.lineTo(t+n,r+o),this.lineTo(t,r+o),this.lineTo(t,r),this.closePath()}__clearCanvas(){let t=this.__root.childNodes[1];this.__root.removeChild(t),this.__currentElement=this.__document.createElementNS("http://www.w3.org/2000/svg","g"),this.__root.appendChild(this.__currentElement),this.__groupStack=[]}fillRect(t,r,n,o){let{a:i,b:a,c:s,d:c,e:l,f:A}=this.getTransform();JSON.stringify([i,a,s,c,l,A])===JSON.stringify([1,0,0,1,0,0])&&t===0&&r===0&&n===this.width&&o===this.height&&this.__clearCanvas();let u=this.__createElement("rect",{x:t,y:r,width:n,height:o},!0);this.__closestGroupOrSvg().appendChild(u),this.__currentElement=u,this.__applyTransformation(u),this.__applyStyleToCurrentElement("fill")}strokeRect(t,r,n,o){let i=this.__createElement("rect",{x:t,y:r,width:n,height:o},!0);this.__closestGroupOrSvg().appendChild(i),this.__currentElement=i,this.__applyTransformation(i),this.__applyStyleToCurrentElement("stroke")}clearRect(t,r,n,o){let{a:i,b:a,c:s,d:c,e:l,f:A}=this.getTransform();if(JSON.stringify([i,a,s,c,l,A])===JSON.stringify([1,0,0,1,0,0])&&t===0&&r===0&&n===this.width&&o===this.height){this.__clearCanvas();return}let u=this.__createElement("rect",{x:t,y:r,width:n,height:o,fill:"#FFFFFF"},!0);this.__applyTransformation(u),this.__closestGroupOrSvg().appendChild(u)}createLinearGradient(t,r,n,o){let i=this.__createElement("linearGradient",{id:su(this.__ids),x1:t+"px",x2:n+"px",y1:r+"px",y2:o+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(i),new ua(i,this)}createRadialGradient(t,r,n,o,i,a){let s=this.__createElement("radialGradient",{id:su(this.__ids),cx:o+"px",cy:i+"px",r:a+"px",fx:t+"px",fy:r+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(s),new ua(s,this)}__applyText(t,r,n,o){let i=document.createElement("span");i.setAttribute("style","font:"+this.font);let a=i.style,s=this.__closestGroupOrSvg(),c=this.__createElement("text",{"font-family":a.fontFamily,"font-size":a.fontSize,"font-style":a.fontStyle,"font-weight":a.fontWeight,"text-decoration":this.__fontUnderline,x:r,y:n,"text-anchor":d_(this.textAlign),"dominant-baseline":m_(this.textBaseline)},!0);c.appendChild(this.__document.createTextNode(t)),this.__currentElement=c,this.__applyTransformation(c),this.__applyStyleToCurrentElement(o);let l=c;if(this.__fontHref){let A=this.__createElement("a");A.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.__fontHref),A.appendChild(c),l=A}s.appendChild(l)}fillText(t,r,n){this.__applyText(t,r,n,"fill")}strokeText(t,r,n){this.__applyText(t,r,n,"stroke")}measureText(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)}arc(t,r,n,o,i,a){if(o===i)return;o=o%(2*Math.PI),i=i%(2*Math.PI),o===i&&(i=(i+2*Math.PI-.001*(a?-1:1))%(2*Math.PI));let s=t+n*Math.cos(i),c=r+n*Math.sin(i),l=t+n*Math.cos(o),A=r+n*Math.sin(o),u=a?0:1,m=0,d=i-o;d<0&&(d+=2*Math.PI),a?m=d>Math.PI?0:1:m=d>Math.PI?1:0;let p=Math.hypot(this.__transformMatrix.a,this.__transformMatrix.b),E=Math.hypot(this.__transformMatrix.c,this.__transformMatrix.d);this.lineTo(l,A),this.__addPathCommand(ur("A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}",{rx:n*p,ry:n*E,xAxisRotation:0,largeArcFlag:m,sweepFlag:u,endX:this.__matrixTransform(s,c).x,endY:this.__matrixTransform(s,c).y})),this.__currentPosition={x:s,y:c}}clip(){let t=this.__closestGroupOrSvg(),r=this.__createElement("clipPath"),n=su(this.__ids),o=this.__createElement("g");this.__applyCurrentDefaultPath(),t.removeChild(this.__currentElement),r.setAttribute("id",n),r.appendChild(this.__currentElement),this.__defs.appendChild(r),t.setAttribute("clip-path",ur("url(#{id})",{id:n})),t.appendChild(o),this.__currentElement=o}setLineDash(t){t&&t.length>0?this.lineDash=t.join(","):this.lineDash=null}setTransform(t,r,n,o,i,a){t instanceof DOMMatrix?this.__transformMatrix=new DOMMatrix([t.a,t.b,t.c,t.d,t.e,t.f]):this.__transformMatrix=new DOMMatrix([t,r,n,o,i,a])}getTransform(){let{a:t,b:r,c:n,d:o,e:i,f:a}=this.__transformMatrix;return new DOMMatrix([t,r,n,o,i,a])}resetTransform(){this.setTransform(1,0,0,1,0,0)}scale(t,r){if(r===void 0&&(r=t),isNaN(t)||isNaN(r)||!isFinite(t)||!isFinite(r))return;let n=this.getTransform().scale(t,r);this.setTransform(n)}rotate(t){let r=this.getTransform().multiply(new DOMMatrix([Math.cos(t),Math.sin(t),-Math.sin(t),Math.cos(t),0,0]));this.setTransform(r)}translate(t,r){let n=this.getTransform().translate(t,r);this.setTransform(n)}transform(t,r,n,o,i,a){let s=this.getTransform().multiply(new DOMMatrix([t,r,n,o,i,a]));this.setTransform(s)}__matrixTransform(t,r){return new DOMPoint(t,r).matrixTransform(this.__transformMatrix)}__getTransformScale(){return{x:Math.hypot(this.__transformMatrix.a,this.__transformMatrix.b),y:Math.hypot(this.__transformMatrix.c,this.__transformMatrix.d)}}__getTransformRotation(){return Math.atan2(this.__transformMatrix.b,this.__transformMatrix.a)}drawFocusRing(){}createImageData(){}putImageData(){}globalCompositeOperation(){}drawImage(){}createPattern(){return null}}});var nh={};tt(nh,{renderToSvg:()=>rh});async function rh(e,t){await(0,th.when)(()=>e.dataInitialized);let{width:r,height:n,scrollX:o,scrollY:i,totalTrackAreaHeight:a,minimapHeight:s}=e,{exportType:c,theme:l,includeTracks:A}=t,u=A?a:0,m=c==="viewport"&&!!t.includeMinimap;return Zg(c==="entire"?{width:e.totalWidth+e.treeAreaWidth,height:e.totalHeight+u,contentHeight:e.totalHeight,trackHeight:u,theme:l,model:e,offsetY:0,offsetX:0,includeMinimap:m,includeTracks:A}:{width:r,height:n+(m?s:0)+u,contentHeight:n,trackHeight:u,theme:l,model:e,offsetY:-i,offsetX:-o,includeMinimap:m,includeTracks:A})}async function Zg({width:e,height:t,contentHeight:r,trackHeight:n,offsetX:o,offsetY:i,theme:a,model:s,includeMinimap:c,includeTracks:l}){let{Context:A}=await Promise.resolve().then(()=>(Xg(),Kg)),{treeAreaWidth:u,minimapHeight:m}=s,d=se.default.createElement(se.default.Fragment,null,l&&n>0?se.default.createElement(g_,{Context:A,model:s,theme:a,offsetX:o,msaAreaWidth:e-u,trackHeight:n}):null,se.default.createElement("g",{transform:n>0?`translate(0 ${n})`:void 0},se.default.createElement(p_,{Context:A,model:s,theme:a,offsetX:o,offsetY:i,msaAreaWidth:e-u,contentHeight:r})));return(0,eh.renderToStaticMarkup)(se.default.createElement(h_,{width:e,height:t},c?se.default.createElement(se.default.Fragment,null,se.default.createElement("g",{transform:`translate(${u} 0)`},se.default.createElement(Ig,{model:s})),se.default.createElement("g",{transform:`translate(0 ${m})`},d)):d))}function p_({model:e,theme:t,msaAreaWidth:r,contentHeight:n,offsetX:o,offsetY:i,Context:a}){let{treeAreaWidth:s,colorScheme:c,id:l}=e,A=`tree-${l}`,u=`msa-${l}`,m=oa(c,t),d=new a(s,n),p=new a(r,n);return _s({ctx:p,offsetX:o,offsetY:i,model:e,blockSizeYOverride:n,highResScaleFactorOverride:1}),Ps({model:e,offsetY:i,ctx:d,theme:t,blockSizeYOverride:n,highResScaleFactorOverride:1}),Ls({model:e,theme:t,offsetY:i,offsetX:o,contrastScheme:m,ctx:p,blockSizeXOverride:r,blockSizeYOverride:n,highResScaleFactorOverride:1}),se.default.createElement(se.default.Fragment,null,se.default.createElement("defs",null,se.default.createElement("clipPath",{id:A},se.default.createElement("rect",{x:0,y:0,width:s,height:n})),se.default.createElement("clipPath",{id:u},se.default.createElement("rect",{x:0,y:0,width:r,height:n}))),se.default.createElement(Au,{clipId:A,html:d.getSvg().innerHTML}),se.default.createElement(Au,{clipId:u,transform:`translate(${s} 0)`,html:p.getSvg().innerHTML}))}function Au({clipId:e,html:t,transform:r}){return se.default.createElement("g",{clipPath:`url(#${e})`,transform:r,dangerouslySetInnerHTML:{__html:t}})}function g_({model:e,theme:t,msaAreaWidth:r,trackHeight:n,offsetX:o,Context:i}){let{treeAreaWidth:a,colorScheme:s,id:c}=e,l=`tracks-${c}`,A=oa(s,t),u=new i(r,n);return Pg({model:e,ctx:u,offsetX:o,contrastScheme:A,blockSizeXOverride:r,highResScaleFactorOverride:1}),se.default.createElement("g",{transform:`translate(${a} 0)`},se.default.createElement("defs",null,se.default.createElement("clipPath",{id:l},se.default.createElement("rect",{x:0,y:0,width:r,height:n}))),se.default.createElement(Au,{clipId:l,html:u.getSvg().innerHTML}))}function h_({width:e,height:t,children:r}){return se.default.createElement("svg",{width:e,height:t,xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",viewBox:`0 0 ${e} ${t}`},se.default.createElement("rect",{width:"100%",height:"100%",fill:"white"}),r)}var se,eh,th,uu=g(()=>{se=f(M(),1),eh=f(Ce(),1),th=f(Ar(),1);xg();jA();tu();Rs();Os();Cn()});var Te=j((eP,oh)=>{oh.exports=JBrowseExports["@jbrowse/core/ui"]});var ih,ah,Vo,fu=g(()=>{ih=f(O(),1),ah=f(M(),1),Vo=class extends ah.Component{constructor(t){super(t),this.state={error:void 0}}componentDidCatch(t,r){console.error("ErrorBoundary caught an error:",t,r),this.setState({error:t})}render(){return this.state.error?(0,ih.jsx)(this.props.FallbackComponent,{error:this.state.error}):this.props.children}}});var P=j((rP,sh)=>{sh.exports=JBrowseExports["@mui/material"]});function C_(e){if(typeof window>"u")return()=>{};let t=window.matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`);function r(){e(),t.removeEventListener("change",r),t=window.matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`),t.addEventListener("change",r)}return t.addEventListener("change",r),()=>{t.removeEventListener("change",r)}}function E_(){return typeof window>"u"?1:window.devicePixelRatio}function lh(){return(0,ch.useSyncExternalStore)(C_,E_,()=>1)}var ch,Ah=g(()=>{ch=f(M(),1)});function En(e,t){let r=(0,Yo.useRef)(!1),[n,o]=(0,Yo.useState)();return(0,Yo.useEffect)(()=>{if(n!==void 0){let s=function(l){r.current||(r.current=!0,requestAnimationFrame(()=>{let A=e==="x"?l.clientX:l.clientY;t(A-i,a),r.current=!1}))},c=function(){o(void 0)},{client:i,startScroll:a}=n;return document.addEventListener("mousemove",s),document.addEventListener("mouseup",c),()=>{document.removeEventListener("mousemove",s),document.removeEventListener("mouseup",c)}}},[e,t,n]),{dragging:n!==void 0,startDrag:(i,a)=>{o({client:e==="x"?i.clientX:i.clientY,startScroll:a})}}}var Yo,Gs=g(()=>{Yo=f(M(),1)});var Wt,Us,du,mu,uh,fh,dh,pu=g(()=>{Wt=f(M(),1),Us=f(H(),1);Gs();du="rgba(200,200,200)",mu="rgba(150,150,150)",uh=(0,Us.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,Wt.useState)(!1),{startDrag:o}=En("x",(0,Wt.useCallback)((i,a)=>{e.setTreeAreaWidth(a+i)},[e]));return Wt.default.createElement("div",{onMouseDown:i=>{o(i,e.treeAreaWidth)},onMouseEnter:()=>{n(!0)},onMouseLeave:()=>{n(!1)},style:{cursor:"ew-resize",width:t,background:r?mu:du,position:"relative"}})}),fh=(0,Us.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,Wt.useState)(!1),{startDrag:o}=En("y",(0,Wt.useCallback)((i,a)=>{e.setHeight(a+i)},[e]));return Wt.default.createElement("div",{onMouseDown:i=>{o(i,e.height)},onMouseEnter:()=>{n(!0)},onMouseLeave:()=>{n(!1)},style:{cursor:"ns-resize",width:"100%",height:t,background:r?mu:du,position:"relative"}})}),dh=(0,Us.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,Wt.useState)(!1),{startDrag:o}=En("y",(0,Wt.useCallback)((i,a)=>{e.setConservationTrackHeight(Math.max(10,a+i))},[e]));return Wt.default.createElement("div",{onMouseDown:i=>{o(i,e.conservationTrackHeight)},onMouseEnter:()=>{n(!0)},onMouseLeave:()=>{n(!1)},style:{position:"absolute",bottom:0,left:0,cursor:"ns-resize",width:"100%",height:t,zIndex:1,background:r?mu:du}})})});var mh,ph,gh=g(()=>{"use client";V();mh=f(O(),1),ph=(0,R.createSvgIcon)((0,mh.jsx)("path",{d:"m7 10 5 5 5-5z"}),"ArrowDropDown")});function hh(e,t){return t===1?e*16:t===2?e*100:e}function Ch(e){let t=Math.abs(e);return t<6?25:t>150?500:t>30?150:75}function Eh(e,t){let r=I_*t,n=Math.max(-r,Math.min(r,e));return n>0?1/(1+n):1-n}var I_,Ih=g(()=>{I_=.011997600479904018});function Wo({ref:e,onScrollX:t,onScrollY:r,onZoom:n,scrollZoom:o}){let i=(0,dt.useRef)(!1),a=(0,dt.useRef)(!1),s=(0,dt.useRef)(0),c=(0,dt.useRef)(0),l=(0,dt.useRef)(0),A=(0,dt.useRef)(0),u=(0,dt.useRef)(0),m=(0,dt.useRef)(null),d=(0,dt.useRef)(0),p=(0,dt.useRef)(0),[E,x]=(0,dt.useState)(!1);(0,dt.useEffect)(()=>{let w=e.current;if(!w)return;function y(b){let Q=b.ctrlKey||b.metaKey,S=o&&!b.shiftKey&&Math.abs(b.deltaY)>=Math.abs(b.deltaX);if(n&&(Q||S)){let _=w.getBoundingClientRect(),v=hh(b.deltaY,b.deltaMode),L=Q?Ch(v):500;l.current+=v/L,A.current=b.clientX-_.left,u.current=b.clientY-_.top,a.current||(a.current=!0,requestAnimationFrame(U=>{let Y=m.current===null?16.67:U-m.current;m.current=U,n(Eh(l.current,Math.min(100,Y)),A.current,u.current),l.current=0,a.current=!1})),b.preventDefault(),b.stopPropagation();return}let k=!!t&&b.deltaX!==0,T=!!r&&b.deltaY!==0;(k||T)&&(t&&(s.current+=b.deltaX),r&&(c.current+=b.deltaY),i.current||(i.current=!0,requestAnimationFrame(()=>{t&&(t(-s.current),s.current=0),r&&(r(-c.current),c.current=0),i.current=!1})),b.preventDefault(),b.stopPropagation())}return w.addEventListener("wheel",y,{passive:!1}),()=>{w.removeEventListener("wheel",y)}},[e,t,r,n,o]),(0,dt.useEffect)(()=>{if(!E)return;function w(b){b.preventDefault();let Q=b.clientX-d.current,S=b.clientY-p.current;(Q&&t||S&&r)&&(i.current||(i.current=!0,requestAnimationFrame(()=>{t?.(Q),r?.(S),i.current=!1,d.current=b.clientX,p.current=b.clientY})))}function y(){d.current=0,p.current=0,x(!1)}return window.addEventListener("mousemove",w,!0),window.addEventListener("mouseup",y,!0),()=>{window.removeEventListener("mousemove",w,!0),window.removeEventListener("mouseup",y,!0)}},[E,t,r]);function I(w){let y=w.target;y.draggable||y.dataset.resizer||w.button===0&&(d.current=w.clientX,p.current=w.clientY,x(!0))}function C(w){w.preventDefault(),x(!1)}return{onMouseDown:I,onMouseUp:C}}var dt,Hs=g(()=>{dt=f(M(),1);Ih()});function fa(e){let t=navigator.clipboard;if(t?.writeText){t.writeText(e).catch(n=>{console.error("Failed to copy to clipboard:",n)});return}let r=document.createElement("textarea");r.value=e,r.style.position="fixed",r.style.opacity="0",document.body.append(r),r.select(),document.execCommand("copy"),r.remove()}var gu=g(()=>{});var bh={};tt(bh,{default:()=>b_});var Kr,xh,Zn,yh,wh,y_,w_,b_,Bh=g(()=>{Kr=f(M(),1),xh=f(Te(),1),Zn=f(P(),1),yh=f(H(),1),wh=f(_e(),1);gu();y_=(0,wh.makeStyles)()(e=>({textArea:{padding:e.spacing(2),overflow:"auto",background:"#ddd",wordBreak:"break-word"}})),w_=(0,yh.observer)(function({model:e,onClose:t}){let[r,n]=(0,Kr.useState)("Copy to clipboard"),{classes:o}=y_();return Kr.default.createElement(xh.Dialog,{open:!0,onClose:t,fullWidth:!0,maxWidth:"lg",title:`Track info - ${e.name}`},Kr.default.createElement(Zn.DialogContent,null,Kr.default.createElement(Zn.Button,{variant:"contained",color:"primary",onClick:()=>{fa(e.data),n("Copied!"),setTimeout(()=>{n("Copy to clipboard")},300)}},r),Kr.default.createElement("pre",{className:o.textArea},e.data)),Kr.default.createElement(Zn.DialogActions,null,Kr.default.createElement(Zn.Button,{variant:"contained",onClick:t,color:"secondary"},"Close")))}),b_=w_});var Pe,eo,hu,Sh,B_,S_,Q_,v_,Qh,vh=g(()=>{Pe=f(M(),1);gh();eo=f(P(),1),hu=f(H(),1),Sh=f(_e(),1);Hs();B_=(0,Pe.lazy)(()=>Promise.resolve().then(()=>(Bh(),bh))),S_=(0,Sh.makeStyles)()({button:{padding:0}}),Q_=(0,hu.observer)(function({model:t,track:r}){let[n,o]=(0,Pe.useState)(),{drawLabels:i,rowHeight:a,treeAreaWidth:s}=t,{model:{name:c,height:l}}=r,{classes:A}=S_(),u=Math.min(l,Math.max(8,a-8));return Pe.default.createElement("div",{style:{width:s,height:l,flexShrink:0,textAlign:"right",fontSize:u}},i?c:""," ",Pe.default.createElement(eo.IconButton,{className:A.button,style:{width:u,height:u},onClick:m=>{o(m.currentTarget)}},Pe.default.createElement(ph,null)),n?Pe.default.createElement(eo.Menu,{anchorEl:n,transitionDuration:0,open:!0,onClose:()=>{o(void 0)}},Pe.default.createElement(eo.MenuItem,{dense:!0,onClick:()=>{t.toggleTrack(r.model.id),o(void 0)}},"Close"),Pe.default.createElement(eo.MenuItem,{dense:!0,onClick:()=>{t.queueDialog(m=>[B_,{onClose:m,model:r.model}]),o(void 0)}},"Get info")):null)}),v_=(0,hu.observer)(function({model:e,track:t}){let{resizeHandleWidth:r,colWidth:n,scrollX:o,numColumns:i}=e,{model:{height:a}}=t,s=(0,Pe.useRef)(null),c=(0,Pe.useCallback)(l=>{e.doScrollX(l)},[e]);return Wo({ref:s,onScrollX:c}),Pe.default.createElement("div",{style:{display:"flex",height:a}},Pe.default.createElement(Q_,{model:e,track:t}),Pe.default.createElement("div",{style:{width:r,flexShrink:0}}),Pe.default.createElement("div",{ref:s,onMouseMove:l=>{if(!s.current)return;let{left:A}=s.current.getBoundingClientRect(),u=l.clientX-A-o,m=Math.floor(u/n);m>=0&&m<i?e.setMousePos(m,void 0):e.setMousePos(void 0,void 0)},onMouseLeave:()=>{e.setMousePos(void 0,void 0)}},Pe.default.createElement(t.ReactComponent,{model:e,track:t})))}),Qh=v_});var to,Mh,_h,M_,Th,kh=g(()=>{to=f(M(),1),Mh=f(Ce(),1),_h=f(H(),1);Gs();M_=(0,_h.observer)(({model:e})=>{let{msaAreaHeight:t,scrollY:r,totalHeight:n}=e,[o,i]=(0,to.useState)(!1),a="rgba(66, 119, 127, 0.3)",s=t/n,c=-r,l=c+t,A=c*s,u=l*s,{startDrag:m}=En("y",(0,to.useCallback)((d,p)=>{e.setScrollY((0,Mh.clamp)(p-d/s,e.maxScrollY,0))},[e,s]));return to.default.createElement("div",{style:{position:"relative",width:20,height:t,borderLeft:"1px solid #555",borderTop:"1px solid #555",boxSizing:"border-box"}},to.default.createElement("div",{style:{position:"absolute",top:Math.max(0,A),left:0,background:o?"rgba(66,119,127,0.6)":a,cursor:"pointer",boxSizing:"border-box",width:20,height:Math.max(u-A,20),zIndex:100},onMouseOver:()=>{i(!0)},onMouseOut:()=>{i(!1)},onMouseDown:d=>{m(d,e.scrollY)}}))}),Th=M_});function Cu(){let e=(0,zo.useRef)(null),[t,r]=(0,zo.useState)({width:void 0,height:void 0});return(0,zo.useEffect)(()=>{if(!e.current)return;let n=typeof window<"u"&&"ResizeObserver"in window?window.ResizeObserver:void 0;if(!n)return;let o=new n(i=>{r({width:i[0].contentRect.width,height:i[0].contentRect.height})});return o.observe(e.current),()=>{o.disconnect()}},[]),[e,t]}var zo,Dh=g(()=>{zo=f(M(),1)});var Nh,Lh,Rh=g(()=>{"use client";V();Nh=f(O(),1),Lh=(0,R.createSvgIcon)((0,Nh.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 17h-2v-2h2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25"}),"Help")});var Fh,Ph,Oh=g(()=>{"use client";V();Fh=f(O(),1),Ph=(0,R.createSvgIcon)((0,Fh.jsx)("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"ChevronRight")});var Gh,Uh,Hh=g(()=>{"use client";V();Gh=f(O(),1),Uh=(0,R.createSvgIcon)((0,Gh.jsx)("path",{d:"M11 18h2v-2h-2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m0-14c-2.21 0-4 1.79-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4"}),"HelpOutline")});var jh,js,Eu=g(()=>{"use client";V();jh=f(O(),1),js=(0,R.createSvgIcon)((0,jh.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close")});var Jh,qh,Vh=g(()=>{"use client";V();Jh=f(O(),1),qh=(0,R.createSvgIcon)((0,Jh.jsx)("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4z"}),"Refresh")});var Yh,Wh,zh=g(()=>{"use client";V();Yh=f(O(),1),Wh=(0,R.createSvgIcon)((0,Yh.jsx)("path",{d:"M15.73 3H8.27L3 8.27v7.46L8.27 21h7.46L21 15.73V8.27zM12 17.3c-.72 0-1.3-.58-1.3-1.3s.58-1.3 1.3-1.3 1.3.58 1.3 1.3-.58 1.3-1.3 1.3m1-4.3h-2V7h2z"}),"Report")});function T_(e){if(e.sheet)return e.sheet;for(var t=0;t<document.styleSheets.length;t++)if(document.styleSheets[t].ownerNode===e)return document.styleSheets[t]}function k_(e){var t=document.createElement("style");return t.setAttribute("data-emotion",e.key),e.nonce!==void 0&&t.setAttribute("nonce",e.nonce),t.appendChild(document.createTextNode("")),t.setAttribute("data-s",""),t}var __,$h,Kh=g(()=>{__=!1;$h=(function(){function e(r){var n=this;this._insertTag=function(o){var i;n.tags.length===0?n.insertionPoint?i=n.insertionPoint.nextSibling:n.prepend?i=n.container.firstChild:i=n.before:i=n.tags[n.tags.length-1].nextSibling,n.container.insertBefore(o,i),n.tags.push(o)},this.isSpeedy=r.speedy===void 0?!__:r.speedy,this.tags=[],this.ctr=0,this.nonce=r.nonce,this.key=r.key,this.container=r.container,this.prepend=r.prepend,this.insertionPoint=r.insertionPoint,this.before=null}var t=e.prototype;return t.hydrate=function(n){n.forEach(this._insertTag)},t.insert=function(n){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(k_(this));var o=this.tags[this.tags.length-1];if(this.isSpeedy){var i=T_(o);try{i.insertRule(n,i.cssRules.length)}catch{}}else o.appendChild(document.createTextNode(n));this.ctr++},t.flush=function(){this.tags.forEach(function(n){var o;return(o=n.parentNode)==null?void 0:o.removeChild(n)}),this.tags=[],this.ctr=0},e})()});var nt,da,Z,Js,$o,Ko,Xh,qs,Zh,Vs=g(()=>{nt="-ms-",da="-moz-",Z="-webkit-",Js="comm",$o="rule",Ko="decl",Xh="@import",qs="@keyframes",Zh="@layer"});function r0(e,t){return De(e,0)^45?(((t<<2^De(e,0))<<2^De(e,1))<<2^De(e,2))<<2^De(e,3):0}function Ys(e){return e.trim()}function Iu(e,t){return(e=t.exec(e))?e[0]:e}function W(e,t,r){return e.replace(t,r)}function ma(e,t){return e.indexOf(t)}function De(e,t){return e.charCodeAt(t)|0}function In(e,t,r){return e.slice(t,r)}function xt(e){return e.length}function Xo(e){return e.length}function Zo(e,t){return t.push(e),e}function xu(e,t){return e.map(t).join("")}var e0,ro,t0,ei=g(()=>{e0=Math.abs,ro=String.fromCharCode,t0=Object.assign});function pa(e,t,r,n,o,i,a){return{value:e,root:t,parent:r,type:n,props:o,children:i,line:Ws,column:ti,length:a,return:""}}function oi(e,t){return t0(pa("",null,null,"",null,null,0),e,{length:-e.length},t)}function o0(){return Oe}function i0(){return Oe=yt>0?De(ni,--yt):0,ti--,Oe===10&&(ti=1,Ws--),Oe}function wt(){return Oe=yt<n0?De(ni,yt++):0,ti++,Oe===10&&(ti=1,Ws++),Oe}function zt(){return De(ni,yt)}function ga(){return yt}function ii(e,t){return In(ni,e,t)}function ri(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function zs(e){return Ws=ti=1,n0=xt(ni=e),yt=0,[]}function $s(e){return ni="",e}function ai(e){return Ys(ii(yt-1,yu(e===91?e+2:e===40?e+1:e)))}function a0(e){for(;(Oe=zt())&&Oe<33;)wt();return ri(e)>2||ri(Oe)>3?"":" "}function s0(e,t){for(;--t&&wt()&&!(Oe<48||Oe>102||Oe>57&&Oe<65||Oe>70&&Oe<97););return ii(e,ga()+(t<6&&zt()==32&&wt()==32))}function yu(e){for(;wt();)switch(Oe){case e:return yt;case 34:case 39:e!==34&&e!==39&&yu(Oe);break;case 40:e===41&&yu(e);break;case 92:wt();break}return yt}function c0(e,t){for(;wt()&&e+Oe!==57;)if(e+Oe===84&&zt()===47)break;return"/*"+ii(t,yt-1)+"*"+ro(e===47?e:wt())}function l0(e){for(;!ri(zt());)wt();return ii(e,yt)}var Ws,ti,n0,yt,Oe,ni,wu=g(()=>{ei();Ws=1,ti=1,n0=0,yt=0,Oe=0,ni=""});function f0(e){return $s(Ks("",null,null,null,[""],e=zs(e),0,[0],e))}function Ks(e,t,r,n,o,i,a,s,c){for(var l=0,A=0,u=a,m=0,d=0,p=0,E=1,x=1,I=1,C=0,w="",y=o,b=i,Q=n,S=w;x;)switch(p=C,C=wt()){case 40:if(p!=108&&De(S,u-1)==58){ma(S+=W(ai(C),"&","&\f"),"&\f")!=-1&&(I=-1);break}case 34:case 39:case 91:S+=ai(C);break;case 9:case 10:case 13:case 32:S+=a0(p);break;case 92:S+=s0(ga()-1,7);continue;case 47:switch(zt()){case 42:case 47:Zo(D_(c0(wt(),ga()),t,r),c);break;default:S+="/"}break;case 123*E:s[l++]=xt(S)*I;case 125*E:case 59:case 0:switch(C){case 0:case 125:x=0;case 59+A:I==-1&&(S=W(S,/\f/g,"")),d>0&&xt(S)-u&&Zo(d>32?u0(S+";",n,r,u-1):u0(W(S," ","")+";",n,r,u-2),c);break;case 59:S+=";";default:if(Zo(Q=A0(S,t,r,l,A,o,s,w,y=[],b=[],u),i),C===123)if(A===0)Ks(S,t,Q,Q,y,i,u,s,b);else switch(m===99&&De(S,3)===110?100:m){case 100:case 108:case 109:case 115:Ks(e,Q,Q,n&&Zo(A0(e,Q,Q,0,0,o,s,w,o,y=[],u),b),o,b,u,s,n?y:b);break;default:Ks(S,Q,Q,Q,[""],b,0,s,b)}}l=A=d=0,E=I=1,w=S="",u=a;break;case 58:u=1+xt(S),d=p;default:if(E<1){if(C==123)--E;else if(C==125&&E++==0&&i0()==125)continue}switch(S+=ro(C),C*E){case 38:I=A>0?1:(S+="\f",-1);break;case 44:s[l++]=(xt(S)-1)*I,I=1;break;case 64:zt()===45&&(S+=ai(wt())),m=zt(),A=u=xt(w=S+=l0(ga())),C++;break;case 45:p===45&&xt(S)==2&&(E=0)}}return i}function A0(e,t,r,n,o,i,a,s,c,l,A){for(var u=o-1,m=o===0?i:[""],d=Xo(m),p=0,E=0,x=0;p<n;++p)for(var I=0,C=In(e,u+1,u=e0(E=a[p])),w=e;I<d;++I)(w=Ys(E>0?m[I]+" "+C:W(C,/&\f/g,m[I])))&&(c[x++]=w);return pa(e,t,r,o===0?$o:s,c,l,A)}function D_(e,t,r){return pa(e,t,r,Js,ro(o0()),In(e,2,-2),0)}function u0(e,t,r,n){return pa(e,t,r,Ko,In(e,0,n),In(e,n+1,-1),n)}var d0=g(()=>{Vs();ei();wu()});var m0=g(()=>{});function no(e,t){for(var r="",n=Xo(e),o=0;o<n;o++)r+=t(e[o],o,e,t)||"";return r}function p0(e,t,r,n){switch(e.type){case Zh:if(e.children.length)break;case Xh:case Ko:return e.return=e.return||e.value;case Js:return"";case qs:return e.return=e.value+"{"+no(e.children,n)+"}";case $o:e.value=e.props.join(",")}return xt(r=no(e.children,n))?e.return=e.value+"{"+r+"}":""}var g0=g(()=>{Vs();ei()});function h0(e){var t=Xo(e);return function(r,n,o,i){for(var a="",s=0;s<t;s++)a+=e[s](r,n,o,i)||"";return a}}function C0(e){return function(t){t.root||(t=t.return)&&e(t)}}var E0=g(()=>{ei()});var I0=g(()=>{Vs();ei();d0();m0();wu();g0();E0()});var Xs=g(()=>{});function x0(e){var t=Object.create(null);return function(r){return t[r]===void 0&&(t[r]=e(r)),t[r]}}var bu=g(()=>{});function w0(e,t){switch(r0(e,t)){case 5103:return Z+"print-"+e+e;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return Z+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return Z+e+da+e+nt+e+e;case 6828:case 4268:return Z+e+nt+e+e;case 6165:return Z+e+nt+"flex-"+e+e;case 5187:return Z+e+W(e,/(\w+).+(:[^]+)/,Z+"box-$1$2"+nt+"flex-$1$2")+e;case 5443:return Z+e+nt+"flex-item-"+W(e,/flex-|-self/,"")+e;case 4675:return Z+e+nt+"flex-line-pack"+W(e,/align-content|flex-|-self/,"")+e;case 5548:return Z+e+nt+W(e,"shrink","negative")+e;case 5292:return Z+e+nt+W(e,"basis","preferred-size")+e;case 6060:return Z+"box-"+W(e,"-grow","")+Z+e+nt+W(e,"grow","positive")+e;case 4554:return Z+W(e,/([^-])(transform)/g,"$1"+Z+"$2")+e;case 6187:return W(W(W(e,/(zoom-|grab)/,Z+"$1"),/(image-set)/,Z+"$1"),e,"")+e;case 5495:case 3959:return W(e,/(image-set\([^]*)/,Z+"$1$`$1");case 4968:return W(W(e,/(.+:)(flex-)?(.*)/,Z+"box-pack:$3"+nt+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+Z+e+e;case 4095:case 3583:case 4068:case 2532:return W(e,/(.+)-inline(.+)/,Z+"$1$2")+e;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(xt(e)-1-t>6)switch(De(e,t+1)){case 109:if(De(e,t+4)!==45)break;case 102:return W(e,/(.+:)(.+)-([^]+)/,"$1"+Z+"$2-$3$1"+da+(De(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~ma(e,"stretch")?w0(W(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(De(e,t+1)!==115)break;case 6444:switch(De(e,xt(e)-3-(~ma(e,"!important")&&10))){case 107:return W(e,":",":"+Z)+e;case 101:return W(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+Z+(De(e,14)===45?"inline-":"")+"box$3$1"+Z+"$2$3$1"+nt+"$2box$3")+e}break;case 5936:switch(De(e,t+11)){case 114:return Z+e+nt+W(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return Z+e+nt+W(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return Z+e+nt+W(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return Z+e+nt+e+e}return e}var N_,L_,R_,y0,F_,P_,O_,G_,b0,Bu=g(()=>{Kh();I0();Xs();bu();N_=function(t,r,n){for(var o=0,i=0;o=i,i=zt(),o===38&&i===12&&(r[n]=1),!ri(i);)wt();return ii(t,yt)},L_=function(t,r){var n=-1,o=44;do switch(ri(o)){case 0:o===38&&zt()===12&&(r[n]=1),t[n]+=N_(yt-1,r,n);break;case 2:t[n]+=ai(o);break;case 4:if(o===44){t[++n]=zt()===58?"&\f":"",r[n]=t[n].length;break}default:t[n]+=ro(o)}while(o=wt());return t},R_=function(t,r){return $s(L_(zs(t),r))},y0=new WeakMap,F_=function(t){if(!(t.type!=="rule"||!t.parent||t.length<1)){for(var r=t.value,n=t.parent,o=t.column===n.column&&t.line===n.line;n.type!=="rule";)if(n=n.parent,!n)return;if(!(t.props.length===1&&r.charCodeAt(0)!==58&&!y0.get(n))&&!o){y0.set(t,!0);for(var i=[],a=R_(r,i),s=n.props,c=0,l=0;c<a.length;c++)for(var A=0;A<s.length;A++,l++)t.props[l]=i[c]?a[c].replace(/&\f/g,s[A]):s[A]+" "+a[c]}}},P_=function(t){if(t.type==="decl"){var r=t.value;r.charCodeAt(0)===108&&r.charCodeAt(2)===98&&(t.return="",t.value="")}};O_=function(t,r,n,o){if(t.length>-1&&!t.return)switch(t.type){case Ko:t.return=w0(t.value,t.length);break;case qs:return no([oi(t,{value:W(t.value,"@","@"+Z)})],o);case $o:if(t.length)return xu(t.props,function(i){switch(Iu(i,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return no([oi(t,{props:[W(i,/:(read-\w+)/,":"+da+"$1")]})],o);case"::placeholder":return no([oi(t,{props:[W(i,/:(plac\w+)/,":"+Z+"input-$1")]}),oi(t,{props:[W(i,/:(plac\w+)/,":"+da+"$1")]}),oi(t,{props:[W(i,/:(plac\w+)/,nt+"input-$1")]})],o)}return""})}},G_=[O_],b0=function(t){var r=t.key;if(r==="css"){var n=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(n,function(E){var x=E.getAttribute("data-emotion");x.indexOf(" ")!==-1&&(document.head.appendChild(E),E.setAttribute("data-s",""))})}var o=t.stylisPlugins||G_,i={},a,s=[];a=t.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+r+' "]'),function(E){for(var x=E.getAttribute("data-emotion").split(" "),I=1;I<x.length;I++)i[x[I]]=!0;s.push(E)});var c,l=[F_,P_];{var A,u=[p0,C0(function(E){A.insert(E)})],m=h0(l.concat(o,u)),d=function(x){return no(f0(x),m)};c=function(x,I,C,w){A=C,d(x?x+"{"+I.styles+"}":I.styles),w&&(p.inserted[I.name]=!0)}}var p={key:r,sheet:new $h({key:r,container:a,nonce:t.nonce,speedy:t.speedy,prepend:t.prepend,insertionPoint:t.insertionPoint}),nonce:t.nonce,inserted:i,registered:{},insert:c};return p.sheet.hydrate(s),p}});var Su=g(()=>{});var S0=j(ce=>{"use strict";var We=typeof Symbol=="function"&&Symbol.for,Qu=We?Symbol.for("react.element"):60103,vu=We?Symbol.for("react.portal"):60106,Zs=We?Symbol.for("react.fragment"):60107,ec=We?Symbol.for("react.strict_mode"):60108,tc=We?Symbol.for("react.profiler"):60114,rc=We?Symbol.for("react.provider"):60109,nc=We?Symbol.for("react.context"):60110,Mu=We?Symbol.for("react.async_mode"):60111,oc=We?Symbol.for("react.concurrent_mode"):60111,ic=We?Symbol.for("react.forward_ref"):60112,ac=We?Symbol.for("react.suspense"):60113,U_=We?Symbol.for("react.suspense_list"):60120,sc=We?Symbol.for("react.memo"):60115,cc=We?Symbol.for("react.lazy"):60116,H_=We?Symbol.for("react.block"):60121,j_=We?Symbol.for("react.fundamental"):60117,J_=We?Symbol.for("react.responder"):60118,q_=We?Symbol.for("react.scope"):60119;function Ft(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case Qu:switch(e=e.type,e){case Mu:case oc:case Zs:case tc:case ec:case ac:return e;default:switch(e=e&&e.$$typeof,e){case nc:case ic:case cc:case sc:case rc:return e;default:return t}}case vu:return t}}}function B0(e){return Ft(e)===oc}ce.AsyncMode=Mu;ce.ConcurrentMode=oc;ce.ContextConsumer=nc;ce.ContextProvider=rc;ce.Element=Qu;ce.ForwardRef=ic;ce.Fragment=Zs;ce.Lazy=cc;ce.Memo=sc;ce.Portal=vu;ce.Profiler=tc;ce.StrictMode=ec;ce.Suspense=ac;ce.isAsyncMode=function(e){return B0(e)||Ft(e)===Mu};ce.isConcurrentMode=B0;ce.isContextConsumer=function(e){return Ft(e)===nc};ce.isContextProvider=function(e){return Ft(e)===rc};ce.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===Qu};ce.isForwardRef=function(e){return Ft(e)===ic};ce.isFragment=function(e){return Ft(e)===Zs};ce.isLazy=function(e){return Ft(e)===cc};ce.isMemo=function(e){return Ft(e)===sc};ce.isPortal=function(e){return Ft(e)===vu};ce.isProfiler=function(e){return Ft(e)===tc};ce.isStrictMode=function(e){return Ft(e)===ec};ce.isSuspense=function(e){return Ft(e)===ac};ce.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===Zs||e===oc||e===tc||e===ec||e===ac||e===U_||typeof e=="object"&&e!==null&&(e.$$typeof===cc||e.$$typeof===sc||e.$$typeof===rc||e.$$typeof===nc||e.$$typeof===ic||e.$$typeof===j_||e.$$typeof===J_||e.$$typeof===q_||e.$$typeof===H_)};ce.typeOf=Ft});var v0=j((A4,Q0)=>{"use strict";Q0.exports=S0()});var L0=j((u4,N0)=>{"use strict";var _u=v0(),V_={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},Y_={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},W_={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},k0={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},Tu={};Tu[_u.ForwardRef]=W_;Tu[_u.Memo]=k0;function M0(e){return _u.isMemo(e)?k0:Tu[e.$$typeof]||V_}var z_=Object.defineProperty,$_=Object.getOwnPropertyNames,_0=Object.getOwnPropertySymbols,K_=Object.getOwnPropertyDescriptor,X_=Object.getPrototypeOf,T0=Object.prototype;function D0(e,t,r){if(typeof t!="string"){if(T0){var n=X_(t);n&&n!==T0&&D0(e,n,r)}var o=$_(t);_0&&(o=o.concat(_0(t)));for(var i=M0(e),a=M0(t),s=0;s<o.length;++s){var c=o[s];if(!Y_[c]&&!(r&&r[c])&&!(a&&a[c])&&!(i&&i[c])){var l=K_(t,c);try{z_(e,c,l)}catch{}}}}return e}N0.exports=D0});function ha(e,t,r){var n="";return r.split(" ").forEach(function(o){e[o]!==void 0?t.push(e[o]+";"):o&&(n+=o+" ")}),n}var Z_,lc,Ca,Ac=g(()=>{Z_=!0;lc=function(t,r,n){var o=t.key+"-"+r.name;(n===!1||Z_===!1)&&t.registered[o]===void 0&&(t.registered[o]=r.styles)},Ca=function(t,r,n){lc(t,r,n);var o=t.key+"-"+r.name;if(t.inserted[r.name]===void 0){var i=r;do t.insert(r===i?"."+o:"",i,t.sheet,!0),i=i.next;while(i!==void 0)}}});function R0(e){for(var t=0,r,n=0,o=e.length;o>=4;++n,o-=4)r=e.charCodeAt(n)&255|(e.charCodeAt(++n)&255)<<8|(e.charCodeAt(++n)&255)<<16|(e.charCodeAt(++n)&255)<<24,r=(r&65535)*1540483477+((r>>>16)*59797<<16),r^=r>>>24,t=(r&65535)*1540483477+((r>>>16)*59797<<16)^(t&65535)*1540483477+((t>>>16)*59797<<16);switch(o){case 3:t^=(e.charCodeAt(n+2)&255)<<16;case 2:t^=(e.charCodeAt(n+1)&255)<<8;case 1:t^=e.charCodeAt(n)&255,t=(t&65535)*1540483477+((t>>>16)*59797<<16)}return t^=t>>>13,t=(t&65535)*1540483477+((t>>>16)*59797<<16),((t^t>>>15)>>>0).toString(36)}var F0=g(()=>{});var P0,O0=g(()=>{P0={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1}});function Ea(e,t,r){if(r==null)return"";var n=r;if(n.__emotion_styles!==void 0)return n;switch(typeof r){case"boolean":return"";case"object":{var o=r;if(o.anim===1)return Mr={name:o.name,styles:o.styles,next:Mr},o.name;var i=r;if(i.styles!==void 0){var a=i.next;if(a!==void 0)for(;a!==void 0;)Mr={name:a.name,styles:a.styles,next:Mr},a=a.next;var s=i.styles+";";return s}return oT(e,t,r)}case"function":{if(e!==void 0){var c=Mr,l=r(e);return Mr=c,Ea(e,t,l)}break}}var A=r;if(t==null)return A;var u=t[A];return u!==void 0?u:A}function oT(e,t,r){var n="";if(Array.isArray(r))for(var o=0;o<r.length;o++)n+=Ea(e,t,r[o])+";";else for(var i in r){var a=r[i];if(typeof a!="object"){var s=a;t!=null&&t[s]!==void 0?n+=i+"{"+t[s]+"}":G0(s)&&(n+=ku(i)+":"+U0(i,s)+";")}else{if(i==="NO_COMPONENT_SELECTOR"&&eT)throw new Error(nT);if(Array.isArray(a)&&typeof a[0]=="string"&&(t==null||t[a[0]]===void 0))for(var c=0;c<a.length;c++)G0(a[c])&&(n+=ku(i)+":"+U0(i,a[c])+";");else{var l=Ea(e,t,a);switch(i){case"animation":case"animationName":{n+=ku(i)+":"+l+";";break}default:n+=i+"{"+l+"}"}}}}return n}function si(e,t,r){if(e.length===1&&typeof e[0]=="object"&&e[0]!==null&&e[0].styles!==void 0)return e[0];var n=!0,o="";Mr=void 0;var i=e[0];if(i==null||i.raw===void 0)n=!1,o+=Ea(r,t,i);else{var a=i;o+=a[0]}for(var s=1;s<e.length;s++)if(o+=Ea(r,t,e[s]),n){var c=i;o+=c[s]}H0.lastIndex=0;for(var l="",A;(A=H0.exec(o))!==null;)l+="-"+A[1];var u=R0(o)+l;return{name:u,styles:o,next:Mr}}var eT,tT,rT,j0,G0,ku,U0,nT,H0,Mr,uc=g(()=>{F0();O0();bu();eT=!1,tT=/[A-Z]|^ms/g,rT=/_EMO_([^_]+?)_([^]*?)_EMO_/g,j0=function(t){return t.charCodeAt(1)===45},G0=function(t){return t!=null&&typeof t!="boolean"},ku=x0(function(e){return j0(e)?e:e.replace(tT,"-$&").toLowerCase()}),U0=function(t,r){switch(t){case"animation":case"animationName":if(typeof r=="string")return r.replace(rT,function(n,o,i){return Mr={name:o,styles:i,next:Mr},o})}return P0[t]!==1&&!j0(t)&&typeof r=="number"&&r!==0?r+"px":r},nT="Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform.";H0=/label:\s*([^\s;{]+)\s*(;|$)/g});var fc,iT,aT,Du,Nu=g(()=>{fc=f(M()),iT=function(t){return t()},aT=fc.useInsertionEffect?fc.useInsertionEffect:!1,Du=aT||iT});var $t,Ia,J0,Ru,sT,Fu,Pu,Ou,dc,Lu,q0,cT,lT,V0,Gu=g(()=>{$t=f(M()),Ia=f(M());Bu();Su();Xs();Ac();uc();Nu();J0=!1,Ru=$t.createContext(typeof HTMLElement<"u"?b0({key:"css"}):null),sT=Ru.Provider,Fu=function(){return(0,Ia.useContext)(Ru)},Pu=function(t){return(0,Ia.forwardRef)(function(r,n){var o=(0,Ia.useContext)(Ru);return t(r,o,n)})},Ou=$t.createContext({}),dc={}.hasOwnProperty,Lu="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",q0=function(t,r){var n={};for(var o in r)dc.call(r,o)&&(n[o]=r[o]);return n[Lu]=t,n},cT=function(t){var r=t.cache,n=t.serialized,o=t.isStringTag;return lc(r,n,o),Du(function(){return Ca(r,n,o)}),null},lT=Pu(function(e,t,r){var n=e.css;typeof n=="string"&&t.registered[n]!==void 0&&(n=t.registered[n]);var o=e[Lu],i=[n],a="";typeof e.className=="string"?a=ha(t.registered,i,e.className):e.className!=null&&(a=e.className+" ");var s=si(i,void 0,$t.useContext(Ou));a+=t.key+"-"+s.name;var c={};for(var l in e)dc.call(e,l)&&l!=="css"&&l!==Lu&&!J0&&(c[l]=e[l]);return c.className=a,r&&(c.ref=r),$t.createElement($t.Fragment,null,$t.createElement(cT,{cache:t,serialized:s,isStringTag:typeof o=="string"}),$t.createElement(o,c))}),V0=lT});function AT(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return si(t)}function Uu(){var e=AT.apply(void 0,arguments),t="animation-"+e.name;return{name:t,styles:"@keyframes "+t+"{"+e.styles+"}",anim:1,toString:function(){return"_EMO_"+this.name+"_"+this.styles+"_EMO_"}}}var ci,G4,Y0,Hu=g(()=>{Gu();Gu();ci=f(M());Ac();Nu();uc();Bu();Su();Xs();G4=f(L0()),Y0=function(t,r){var n=arguments;if(r==null||!dc.call(r,"css"))return ci.createElement.apply(void 0,n);var o=n.length,i=new Array(o);i[0]=V0,i[1]=q0(t,r);for(var a=2;a<o;a++)i[a]=n[a];return ci.createElement.apply(null,i)};(function(e){var t;t||(t=e.JSX||(e.JSX={}))})(Y0||(Y0={}))});var ju=j((j4,W0)=>{W0.exports=JBrowseExports["@mui/material/styles"]});var li,Ju=g(()=>{li=e=>{let t=e.length,r=0,n="";for(;r<t;r++){let o=e[r];if(o==null)continue;let i;switch(typeof o){case"boolean":break;case"object":{if(Array.isArray(o))i=li(o);else{let a=o;i="";for(let s in a)a[s]&&s&&(i&&(i+=" "),i+=s)}break}default:i=o}i&&(n&&(n+=" "),n+=i)}return n}});function z0(e){return e instanceof Object&&!("styles"in e)&&!("length"in e)&&!("__emotion_styles"in e)}var $0=g(()=>{});function Z0(e){let{useCache:t}=e;function r(){let n=t(),{css:o,cx:i}=(0,X0.useMemo)(()=>uT({cache:n}),[n]);return{css:o,cx:i}}return{useCssAndCx:r}}var X0,uT,K0,eC=g(()=>{X0=f(M(),1);uc();Ac();Ju();$0();({createCssAndCx:uT}=(()=>{function e(r,n,o){let i=[],a=ha(r,i,o);return i.length<2?o:a+n(i)}function t(r){let{cache:n}=r,o=(...a)=>{let s=si(a,n.registered);Ca(n,s,!1);let c=`${n.key}-${s.name}`;e:{let l=a[0];if(!z0(l))break e;K0.saveClassNameCSSObjectMapping(n,c,l)}return c};return{css:o,cx:(...a)=>{let s=li(a),c=K0.fixClassName(n,s,o);return e(n.registered,o,c)}}}return{createCssAndCx:t}})());K0=(()=>{let e=new WeakMap;return{saveClassNameCSSObjectMapping:(t,r,n)=>{let o=e.get(t);o===void 0&&(o=new Map,e.set(t,o)),o.set(r,n)},fixClassName:(()=>{function t(r){let n=!1;return r.map(([o,i])=>{if(i===void 0)return o;let a;if(n)a={"&&":i};else{a=o;for(let s in i)if(s.startsWith("@media")){n=!0;break}}return a})}return(r,n,o)=>{if(!n.includes(" "))return n;let i=e.get(r);return li(t(n.split(" ").map(a=>[a,i?.get(a)])).map(a=>typeof a=="string"?a:o(a)))}})()}})()});function tC(e,t,r){if(!(t instanceof Object))return e;let n=Object.keys(t);if(n.length===0)return e;let o={};for(let i of Object.keys(e))o[i]=r(e[i],t[i]);for(let i of n){if(i in e)continue;let a=t[i];typeof a=="string"&&(o[i]=a)}return o}var rC=g(()=>{});function nC(e){if(!(e instanceof Object)||typeof e=="function")return e;let t=[];for(let r in e){let n=e[r],o=typeof n;if(!(o==="string"||o==="number"&&!isNaN(n)||o==="boolean"||n===void 0||n===null))return e;t.push(`${r}:${o}_${n}`)}return`xSqLiJdLMd9s${t.join("|")}`}var oC=g(()=>{});function iC(e){let{useTheme:t}=e,{useCssAndCx:r}=Z0({useCache:fT});function n(){return function(o){let i=typeof o=="function"?o:()=>o;return function(s,c){let l=t(),{css:A,cx:u}=r(),m=(0,qu.useMemo)(()=>{let x=i(l),I={};for(let C of Object.keys(x)){let w=x[C];I[C]=A(w)}return I},[A,l]),d=c?.props.classes,p=nC(d);return{classes:(0,qu.useMemo)(()=>d?tC(m,d,u):m,[m,p,u]),theme:l,css:A,cx:u}}}}return{makeStyles:n}}var qu,fT,aC=g(()=>{"use client";qu=f(M(),1);Hu();eC();rC();oC();fT=Fu});var sC,oe,cC=g(()=>{sC=f(ju(),1);aC();({makeStyles:oe}=iC({useTheme:sC.useTheme}))});var lC=g(()=>{cC()});function mc(...e){return li(e)}var bt=g(()=>{"use client";Hu();lC();Ju()});function Vu({children:e}){let{classes:t}=dT();return(0,AC.jsx)("div",{className:t.bg,children:e})}var AC,dT,uC=g(()=>{AC=f(O(),1);bt();dT=oe()(e=>({bg:{padding:4,margin:4,overflow:"auto",maxHeight:200,background:e.palette.mode==="dark"?"#833":"#f88",border:`1px solid ${e.palette.divider}`}}))});var dC=j(Yu=>{var fC="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Yu.encode=function(e){if(0<=e&&e<fC.length)return fC[e];throw new TypeError("Must be between 0 and 63: "+e)};Yu.decode=function(e){var t=65,r=90,n=97,o=122,i=48,a=57,s=43,c=47,l=26,A=52;return t<=e&&e<=r?e-t:n<=e&&e<=o?e-n+l:i<=e&&e<=a?e-i+A:e==s?62:e==c?63:-1}});var $u=j(zu=>{var mC=dC(),Wu=5,pC=1<<Wu,gC=pC-1,hC=pC;function mT(e){return e<0?(-e<<1)+1:(e<<1)+0}function pT(e){var t=(e&1)===1,r=e>>1;return t?-r:r}zu.encode=function(t){var r="",n,o=mT(t);do n=o&gC,o>>>=Wu,o>0&&(n|=hC),r+=mC.encode(n);while(o>0);return r};zu.decode=function(t,r,n){var o=t.length,i=0,a=0,s,c;do{if(r>=o)throw new Error("Expected more digits in base 64 VLQ value.");if(c=mC.decode(t.charCodeAt(r++)),c===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));s=!!(c&hC),c&=gC,i=i+(c<<a),a+=Wu}while(s);n.value=pT(i),n.rest=r}});var ui=j(ze=>{function gT(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}ze.getArg=gT;var CC=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,hT=/^data:.+\,.+$/;function xa(e){var t=e.match(CC);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}ze.urlParse=xa;function Ai(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}ze.urlGenerate=Ai;var CT=32;function ET(e){var t=[];return function(r){for(var n=0;n<t.length;n++)if(t[n].input===r){var o=t[0];return t[0]=t[n],t[n]=o,t[0].result}var i=e(r);return t.unshift({input:r,result:i}),t.length>CT&&t.pop(),i}}var Ku=ET(function(t){var r=t,n=xa(t);if(n){if(!n.path)return t;r=n.path}for(var o=ze.isAbsolute(r),i=[],a=0,s=0;;)if(a=s,s=r.indexOf("/",a),s===-1){i.push(r.slice(a));break}else for(i.push(r.slice(a,s));s<r.length&&r[s]==="/";)s++;for(var c,l=0,s=i.length-1;s>=0;s--)c=i[s],c==="."?i.splice(s,1):c===".."?l++:l>0&&(c===""?(i.splice(s+1,l),l=0):(i.splice(s,2),l--));return r=i.join("/"),r===""&&(r=o?"/":"."),n?(n.path=r,Ai(n)):r});ze.normalize=Ku;function EC(e,t){e===""&&(e="."),t===""&&(t=".");var r=xa(t),n=xa(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),Ai(r);if(r||t.match(hT))return t;if(n&&!n.host&&!n.path)return n.host=t,Ai(n);var o=t.charAt(0)==="/"?t:Ku(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=o,Ai(n)):o}ze.join=EC;ze.isAbsolute=function(e){return e.charAt(0)==="/"||CC.test(e)};function IT(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}ze.relative=IT;var IC=(function(){var e=Object.create(null);return!("__proto__"in e)})();function xC(e){return e}function xT(e){return yC(e)?"$"+e:e}ze.toSetString=IC?xC:xT;function yT(e){return yC(e)?e.slice(1):e}ze.fromSetString=IC?xC:yT;function yC(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function wT(e,t,r){var n=Xr(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:Xr(e.name,t.name)}ze.compareByOriginalPositions=wT;function bT(e,t,r){var n;return n=e.originalLine-t.originalLine,n!==0||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:Xr(e.name,t.name)}ze.compareByOriginalPositionsNoSource=bT;function BT(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=Xr(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:Xr(e.name,t.name)}ze.compareByGeneratedPositionsDeflated=BT;function ST(e,t,r){var n=e.generatedColumn-t.generatedColumn;return n!==0||r||(n=Xr(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:Xr(e.name,t.name)}ze.compareByGeneratedPositionsDeflatedNoLine=ST;function Xr(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function QT(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=Xr(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:Xr(e.name,t.name)}ze.compareByGeneratedPositionsInflated=QT;function vT(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}ze.parseSourceMapInput=vT;function MT(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=xa(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var o=n.path.lastIndexOf("/");o>=0&&(n.path=n.path.substring(0,o+1))}t=EC(Ai(n),t)}return Ku(t)}ze.computeSourceURL=MT});var ef=j(wC=>{var Xu=ui(),Zu=Object.prototype.hasOwnProperty,oo=typeof Map<"u";function Zr(){this._array=[],this._set=oo?new Map:Object.create(null)}Zr.fromArray=function(t,r){for(var n=new Zr,o=0,i=t.length;o<i;o++)n.add(t[o],r);return n};Zr.prototype.size=function(){return oo?this._set.size:Object.getOwnPropertyNames(this._set).length};Zr.prototype.add=function(t,r){var n=oo?t:Xu.toSetString(t),o=oo?this.has(t):Zu.call(this._set,n),i=this._array.length;(!o||r)&&this._array.push(t),o||(oo?this._set.set(t,i):this._set[n]=i)};Zr.prototype.has=function(t){if(oo)return this._set.has(t);var r=Xu.toSetString(t);return Zu.call(this._set,r)};Zr.prototype.indexOf=function(t){if(oo){var r=this._set.get(t);if(r>=0)return r}else{var n=Xu.toSetString(t);if(Zu.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};Zr.prototype.at=function(t){if(t>=0&&t<this._array.length)return this._array[t];throw new Error("No element indexed by "+t)};Zr.prototype.toArray=function(){return this._array.slice()};wC.ArraySet=Zr});var SC=j(BC=>{var bC=ui();function _T(e,t){var r=e.generatedLine,n=t.generatedLine,o=e.generatedColumn,i=t.generatedColumn;return n>r||n==r&&i>=o||bC.compareByGeneratedPositionsInflated(e,t)<=0}function pc(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}pc.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};pc.prototype.add=function(t){_T(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};pc.prototype.toArray=function(){return this._sorted||(this._array.sort(bC.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};BC.MappingList=pc});var tf=j(QC=>{var ya=$u(),Ne=ui(),gc=ef().ArraySet,TT=SC().MappingList;function Kt(e){e||(e={}),this._file=Ne.getArg(e,"file",null),this._sourceRoot=Ne.getArg(e,"sourceRoot",null),this._skipValidation=Ne.getArg(e,"skipValidation",!1),this._ignoreInvalidMapping=Ne.getArg(e,"ignoreInvalidMapping",!1),this._sources=new gc,this._names=new gc,this._mappings=new TT,this._sourcesContents=null}Kt.prototype._version=3;Kt.fromSourceMap=function(t,r){var n=t.sourceRoot,o=new Kt(Object.assign(r||{},{file:t.file,sourceRoot:n}));return t.eachMapping(function(i){var a={generated:{line:i.generatedLine,column:i.generatedColumn}};i.source!=null&&(a.source=i.source,n!=null&&(a.source=Ne.relative(n,a.source)),a.original={line:i.originalLine,column:i.originalColumn},i.name!=null&&(a.name=i.name)),o.addMapping(a)}),t.sources.forEach(function(i){var a=i;n!==null&&(a=Ne.relative(n,i)),o._sources.has(a)||o._sources.add(a);var s=t.sourceContentFor(i);s!=null&&o.setSourceContent(i,s)}),o};Kt.prototype.addMapping=function(t){var r=Ne.getArg(t,"generated"),n=Ne.getArg(t,"original",null),o=Ne.getArg(t,"source",null),i=Ne.getArg(t,"name",null);!this._skipValidation&&this._validateMapping(r,n,o,i)===!1||(o!=null&&(o=String(o),this._sources.has(o)||this._sources.add(o)),i!=null&&(i=String(i),this._names.has(i)||this._names.add(i)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:o,name:i}))};Kt.prototype.setSourceContent=function(t,r){var n=t;this._sourceRoot!=null&&(n=Ne.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Ne.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[Ne.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};Kt.prototype.applySourceMap=function(t,r,n){var o=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);o=t.file}var i=this._sourceRoot;i!=null&&(o=Ne.relative(i,o));var a=new gc,s=new gc;this._mappings.unsortedForEach(function(c){if(c.source===o&&c.originalLine!=null){var l=t.originalPositionFor({line:c.originalLine,column:c.originalColumn});l.source!=null&&(c.source=l.source,n!=null&&(c.source=Ne.join(n,c.source)),i!=null&&(c.source=Ne.relative(i,c.source)),c.originalLine=l.line,c.originalColumn=l.column,l.name!=null&&(c.name=l.name))}var A=c.source;A!=null&&!a.has(A)&&a.add(A);var u=c.name;u!=null&&!s.has(u)&&s.add(u)},this),this._sources=a,this._names=s,t.sources.forEach(function(c){var l=t.sourceContentFor(c);l!=null&&(n!=null&&(c=Ne.join(n,c)),i!=null&&(c=Ne.relative(i,c)),this.setSourceContent(c,l))},this)};Kt.prototype._validateMapping=function(t,r,n,o){if(r&&typeof r.line!="number"&&typeof r.column!="number"){var i="original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.";if(this._ignoreInvalidMapping)return typeof console<"u"&&console.warn&&console.warn(i),!1;throw new Error(i)}if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!o)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n)return;var i="Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:o});if(this._ignoreInvalidMapping)return typeof console<"u"&&console.warn&&console.warn(i),!1;throw new Error(i)}};Kt.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,o=0,i=0,a=0,s="",c,l,A,u,m=this._mappings.toArray(),d=0,p=m.length;d<p;d++){if(l=m[d],c="",l.generatedLine!==r)for(t=0;l.generatedLine!==r;)c+=";",r++;else if(d>0){if(!Ne.compareByGeneratedPositionsInflated(l,m[d-1]))continue;c+=","}c+=ya.encode(l.generatedColumn-t),t=l.generatedColumn,l.source!=null&&(u=this._sources.indexOf(l.source),c+=ya.encode(u-a),a=u,c+=ya.encode(l.originalLine-1-o),o=l.originalLine-1,c+=ya.encode(l.originalColumn-n),n=l.originalColumn,l.name!=null&&(A=this._names.indexOf(l.name),c+=ya.encode(A-i),i=A)),s+=c}return s};Kt.prototype._generateSourcesContent=function(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=Ne.relative(r,n));var o=Ne.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,o)?this._sourcesContents[o]:null},this)};Kt.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};Kt.prototype.toString=function(){return JSON.stringify(this.toJSON())};QC.SourceMapGenerator=Kt});var vC=j(io=>{io.GREATEST_LOWER_BOUND=1;io.LEAST_UPPER_BOUND=2;function rf(e,t,r,n,o,i){var a=Math.floor((t-e)/2)+e,s=o(r,n[a],!0);return s===0?a:s>0?t-a>1?rf(a,t,r,n,o,i):i==io.LEAST_UPPER_BOUND?t<n.length?t:-1:a:a-e>1?rf(e,a,r,n,o,i):i==io.LEAST_UPPER_BOUND?a:e<0?-1:e}io.search=function(t,r,n,o){if(r.length===0)return-1;var i=rf(-1,r.length,t,r,n,o||io.GREATEST_LOWER_BOUND);if(i<0)return-1;for(;i-1>=0&&n(r[i],r[i-1],!0)===0;)--i;return i}});var TC=j(_C=>{function kT(e){function t(o,i,a){var s=o[i];o[i]=o[a],o[a]=s}function r(o,i){return Math.round(o+Math.random()*(i-o))}function n(o,i,a,s){if(a<s){var c=r(a,s),l=a-1;t(o,c,s);for(var A=o[s],u=a;u<s;u++)i(o[u],A,!1)<=0&&(l+=1,t(o,l,u));t(o,l+1,u);var m=l+1;n(o,i,a,m-1),n(o,i,m+1,s)}}return n}function DT(e){let t=kT.toString();return new Function(`return ${t}`)()(e)}var MC=new WeakMap;_C.quickSort=function(e,t,r=0){let n=MC.get(t);n===void 0&&(n=DT(t),MC.set(t,n)),n(e,t,r,e.length-1)}});var NC=j(hc=>{var F=ui(),of=vC(),fi=ef().ArraySet,NT=$u(),wa=TC().quickSort;function Ee(e,t){var r=e;return typeof e=="string"&&(r=F.parseSourceMapInput(e)),r.sections!=null?new fr(r,t):new ot(r,t)}Ee.fromSourceMap=function(e,t){return ot.fromSourceMap(e,t)};Ee.prototype._version=3;Ee.prototype.__generatedMappings=null;Object.defineProperty(Ee.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});Ee.prototype.__originalMappings=null;Object.defineProperty(Ee.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});Ee.prototype._charIsMappingSeparator=function(t,r){var n=t.charAt(r);return n===";"||n===","};Ee.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};Ee.GENERATED_ORDER=1;Ee.ORIGINAL_ORDER=2;Ee.GREATEST_LOWER_BOUND=1;Ee.LEAST_UPPER_BOUND=2;Ee.prototype.eachMapping=function(t,r,n){var o=r||null,i=n||Ee.GENERATED_ORDER,a;switch(i){case Ee.GENERATED_ORDER:a=this._generatedMappings;break;case Ee.ORIGINAL_ORDER:a=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}for(var s=this.sourceRoot,c=t.bind(o),l=this._names,A=this._sources,u=this._sourceMapURL,m=0,d=a.length;m<d;m++){var p=a[m],E=p.source===null?null:A.at(p.source);E!==null&&(E=F.computeSourceURL(s,E,u)),c({source:E,generatedLine:p.generatedLine,generatedColumn:p.generatedColumn,originalLine:p.originalLine,originalColumn:p.originalColumn,name:p.name===null?null:l.at(p.name)})}};Ee.prototype.allGeneratedPositionsFor=function(t){var r=F.getArg(t,"line"),n={source:F.getArg(t,"source"),originalLine:r,originalColumn:F.getArg(t,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];var o=[],i=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",F.compareByOriginalPositions,of.LEAST_UPPER_BOUND);if(i>=0){var a=this._originalMappings[i];if(t.column===void 0)for(var s=a.originalLine;a&&a.originalLine===s;)o.push({line:F.getArg(a,"generatedLine",null),column:F.getArg(a,"generatedColumn",null),lastColumn:F.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++i];else for(var c=a.originalColumn;a&&a.originalLine===r&&a.originalColumn==c;)o.push({line:F.getArg(a,"generatedLine",null),column:F.getArg(a,"generatedColumn",null),lastColumn:F.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++i]}return o};hc.SourceMapConsumer=Ee;function ot(e,t){var r=e;typeof e=="string"&&(r=F.parseSourceMapInput(e));var n=F.getArg(r,"version"),o=F.getArg(r,"sources"),i=F.getArg(r,"names",[]),a=F.getArg(r,"sourceRoot",null),s=F.getArg(r,"sourcesContent",null),c=F.getArg(r,"mappings"),l=F.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);a&&(a=F.normalize(a)),o=o.map(String).map(F.normalize).map(function(A){return a&&F.isAbsolute(a)&&F.isAbsolute(A)?F.relative(a,A):A}),this._names=fi.fromArray(i.map(String),!0),this._sources=fi.fromArray(o,!0),this._absoluteSources=this._sources.toArray().map(function(A){return F.computeSourceURL(a,A,t)}),this.sourceRoot=a,this.sourcesContent=s,this._mappings=c,this._sourceMapURL=t,this.file=l}ot.prototype=Object.create(Ee.prototype);ot.prototype.consumer=Ee;ot.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=F.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var r;for(r=0;r<this._absoluteSources.length;++r)if(this._absoluteSources[r]==e)return r;return-1};ot.fromSourceMap=function(t,r){var n=Object.create(ot.prototype),o=n._names=fi.fromArray(t._names.toArray(),!0),i=n._sources=fi.fromArray(t._sources.toArray(),!0);n.sourceRoot=t._sourceRoot,n.sourcesContent=t._generateSourcesContent(n._sources.toArray(),n.sourceRoot),n.file=t._file,n._sourceMapURL=r,n._absoluteSources=n._sources.toArray().map(function(d){return F.computeSourceURL(n.sourceRoot,d,r)});for(var a=t._mappings.toArray().slice(),s=n.__generatedMappings=[],c=n.__originalMappings=[],l=0,A=a.length;l<A;l++){var u=a[l],m=new DC;m.generatedLine=u.generatedLine,m.generatedColumn=u.generatedColumn,u.source&&(m.source=i.indexOf(u.source),m.originalLine=u.originalLine,m.originalColumn=u.originalColumn,u.name&&(m.name=o.indexOf(u.name)),c.push(m)),s.push(m)}return wa(n.__originalMappings,F.compareByOriginalPositions),n};ot.prototype._version=3;Object.defineProperty(ot.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function DC(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var nf=F.compareByGeneratedPositionsDeflatedNoLine;function kC(e,t){let r=e.length,n=e.length-t;if(!(n<=1))if(n==2){let o=e[t],i=e[t+1];nf(o,i)>0&&(e[t]=i,e[t+1]=o)}else if(n<20)for(let o=t;o<r;o++)for(let i=o;i>t;i--){let a=e[i-1],s=e[i];if(nf(a,s)<=0)break;e[i-1]=s,e[i]=a}else wa(e,nf,t)}ot.prototype._parseMappings=function(t,r){var n=1,o=0,i=0,a=0,s=0,c=0,l=t.length,A=0,u={},m={},d=[],p=[],E,x,I,C,w;let y=0;for(;A<l;)if(t.charAt(A)===";")n++,A++,o=0,kC(p,y),y=p.length;else if(t.charAt(A)===",")A++;else{for(E=new DC,E.generatedLine=n,C=A;C<l&&!this._charIsMappingSeparator(t,C);C++);for(x=t.slice(A,C),I=[];A<C;)NT.decode(t,A,m),w=m.value,A=m.rest,I.push(w);if(I.length===2)throw new Error("Found a source, but no line and column");if(I.length===3)throw new Error("Found a source and line, but no column");if(E.generatedColumn=o+I[0],o=E.generatedColumn,I.length>1&&(E.source=s+I[1],s+=I[1],E.originalLine=i+I[2],i=E.originalLine,E.originalLine+=1,E.originalColumn=a+I[3],a=E.originalColumn,I.length>4&&(E.name=c+I[4],c+=I[4])),p.push(E),typeof E.originalLine=="number"){let Q=E.source;for(;d.length<=Q;)d.push(null);d[Q]===null&&(d[Q]=[]),d[Q].push(E)}}kC(p,y),this.__generatedMappings=p;for(var b=0;b<d.length;b++)d[b]!=null&&wa(d[b],F.compareByOriginalPositionsNoSource);this.__originalMappings=[].concat(...d)};ot.prototype._findMapping=function(t,r,n,o,i,a){if(t[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[n]);if(t[o]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[o]);return of.search(t,r,i,a)};ot.prototype.computeColumnSpans=function(){for(var t=0;t<this._generatedMappings.length;++t){var r=this._generatedMappings[t];if(t+1<this._generatedMappings.length){var n=this._generatedMappings[t+1];if(r.generatedLine===n.generatedLine){r.lastGeneratedColumn=n.generatedColumn-1;continue}}r.lastGeneratedColumn=1/0}};ot.prototype.originalPositionFor=function(t){var r={generatedLine:F.getArg(t,"line"),generatedColumn:F.getArg(t,"column")},n=this._findMapping(r,this._generatedMappings,"generatedLine","generatedColumn",F.compareByGeneratedPositionsDeflated,F.getArg(t,"bias",Ee.GREATEST_LOWER_BOUND));if(n>=0){var o=this._generatedMappings[n];if(o.generatedLine===r.generatedLine){var i=F.getArg(o,"source",null);i!==null&&(i=this._sources.at(i),i=F.computeSourceURL(this.sourceRoot,i,this._sourceMapURL));var a=F.getArg(o,"name",null);return a!==null&&(a=this._names.at(a)),{source:i,line:F.getArg(o,"originalLine",null),column:F.getArg(o,"originalColumn",null),name:a}}}return{source:null,line:null,column:null,name:null}};ot.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};ot.prototype.sourceContentFor=function(t,r){if(!this.sourcesContent)return null;var n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];var o=t;this.sourceRoot!=null&&(o=F.relative(this.sourceRoot,o));var i;if(this.sourceRoot!=null&&(i=F.urlParse(this.sourceRoot))){var a=o.replace(/^file:\/\//,"");if(i.scheme=="file"&&this._sources.has(a))return this.sourcesContent[this._sources.indexOf(a)];if((!i.path||i.path=="/")&&this._sources.has("/"+o))return this.sourcesContent[this._sources.indexOf("/"+o)]}if(r)return null;throw new Error('"'+o+'" is not in the SourceMap.')};ot.prototype.generatedPositionFor=function(t){var r=F.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:F.getArg(t,"line"),originalColumn:F.getArg(t,"column")},o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",F.compareByOriginalPositions,F.getArg(t,"bias",Ee.GREATEST_LOWER_BOUND));if(o>=0){var i=this._originalMappings[o];if(i.source===n.source)return{line:F.getArg(i,"generatedLine",null),column:F.getArg(i,"generatedColumn",null),lastColumn:F.getArg(i,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};hc.BasicSourceMapConsumer=ot;function fr(e,t){var r=e;typeof e=="string"&&(r=F.parseSourceMapInput(e));var n=F.getArg(r,"version"),o=F.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new fi,this._names=new fi;var i={line:-1,column:0};this._sections=o.map(function(a){if(a.url)throw new Error("Support for url field in sections not implemented.");var s=F.getArg(a,"offset"),c=F.getArg(s,"line"),l=F.getArg(s,"column");if(c<i.line||c===i.line&&l<i.column)throw new Error("Section offsets must be ordered and non-overlapping.");return i=s,{generatedOffset:{generatedLine:c+1,generatedColumn:l+1},consumer:new Ee(F.getArg(a,"map"),t)}})}fr.prototype=Object.create(Ee.prototype);fr.prototype.constructor=Ee;fr.prototype._version=3;Object.defineProperty(fr.prototype,"sources",{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var r=0;r<this._sections[t].consumer.sources.length;r++)e.push(this._sections[t].consumer.sources[r]);return e}});fr.prototype.originalPositionFor=function(t){var r={generatedLine:F.getArg(t,"line"),generatedColumn:F.getArg(t,"column")},n=of.search(r,this._sections,function(i,a){var s=i.generatedLine-a.generatedOffset.generatedLine;return s||i.generatedColumn-a.generatedOffset.generatedColumn}),o=this._sections[n];return o?o.consumer.originalPositionFor({line:r.generatedLine-(o.generatedOffset.generatedLine-1),column:r.generatedColumn-(o.generatedOffset.generatedLine===r.generatedLine?o.generatedOffset.generatedColumn-1:0),bias:t.bias}):{source:null,line:null,column:null,name:null}};fr.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(t){return t.consumer.hasContentsOfAllSources()})};fr.prototype.sourceContentFor=function(t,r){for(var n=0;n<this._sections.length;n++){var o=this._sections[n],i=o.consumer.sourceContentFor(t,!0);if(i||i==="")return i}if(r)return null;throw new Error('"'+t+'" is not in the SourceMap.')};fr.prototype.generatedPositionFor=function(t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r];if(n.consumer._findSourceIndex(F.getArg(t,"source"))!==-1){var o=n.consumer.generatedPositionFor(t);if(o){var i={line:o.line+(n.generatedOffset.generatedLine-1),column:o.column+(n.generatedOffset.generatedLine===o.line?n.generatedOffset.generatedColumn-1:0)};return i}}}return{line:null,column:null}};fr.prototype._parseMappings=function(t,r){this.__generatedMappings=[],this.__originalMappings=[];for(var n=0;n<this._sections.length;n++)for(var o=this._sections[n],i=o.consumer._generatedMappings,a=0;a<i.length;a++){var s=i[a],c=o.consumer._sources.at(s.source);c!==null&&(c=F.computeSourceURL(o.consumer.sourceRoot,c,this._sourceMapURL)),this._sources.add(c),c=this._sources.indexOf(c);var l=null;s.name&&(l=o.consumer._names.at(s.name),this._names.add(l),l=this._names.indexOf(l));var A={source:c,generatedLine:s.generatedLine+(o.generatedOffset.generatedLine-1),generatedColumn:s.generatedColumn+(o.generatedOffset.generatedLine===s.generatedLine?o.generatedOffset.generatedColumn-1:0),originalLine:s.originalLine,originalColumn:s.originalColumn,name:l};this.__generatedMappings.push(A),typeof A.originalLine=="number"&&this.__originalMappings.push(A)}wa(this.__generatedMappings,F.compareByGeneratedPositionsDeflated),wa(this.__originalMappings,F.compareByOriginalPositions)};hc.IndexedSourceMapConsumer=fr});var RC=j(LC=>{var LT=tf().SourceMapGenerator,Cc=ui(),RT=/(\r?\n)/,FT=10,di="$$$isSourceNode$$$";function Pt(e,t,r,n,o){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=r??null,this.name=o??null,this[di]=!0,n!=null&&this.add(n)}Pt.fromStringWithSourceMap=function(t,r,n){var o=new Pt,i=t.split(RT),a=0,s=function(){var m=p(),d=p()||"";return m+d;function p(){return a<i.length?i[a++]:void 0}},c=1,l=0,A=null;return r.eachMapping(function(m){if(A!==null)if(c<m.generatedLine)u(A,s()),c++,l=0;else{var d=i[a]||"",p=d.substr(0,m.generatedColumn-l);i[a]=d.substr(m.generatedColumn-l),l=m.generatedColumn,u(A,p),A=m;return}for(;c<m.generatedLine;)o.add(s()),c++;if(l<m.generatedColumn){var d=i[a]||"";o.add(d.substr(0,m.generatedColumn)),i[a]=d.substr(m.generatedColumn),l=m.generatedColumn}A=m},this),a<i.length&&(A&&u(A,s()),o.add(i.splice(a).join(""))),r.sources.forEach(function(m){var d=r.sourceContentFor(m);d!=null&&(n!=null&&(m=Cc.join(n,m)),o.setSourceContent(m,d))}),o;function u(m,d){if(m===null||m.source===void 0)o.add(d);else{var p=n?Cc.join(n,m.source):m.source;o.add(new Pt(m.originalLine,m.originalColumn,p,d,m.name))}}};Pt.prototype.add=function(t){if(Array.isArray(t))t.forEach(function(r){this.add(r)},this);else if(t[di]||typeof t=="string")t&&this.children.push(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};Pt.prototype.prepend=function(t){if(Array.isArray(t))for(var r=t.length-1;r>=0;r--)this.prepend(t[r]);else if(t[di]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};Pt.prototype.walk=function(t){for(var r,n=0,o=this.children.length;n<o;n++)r=this.children[n],r[di]?r.walk(t):r!==""&&t(r,{source:this.source,line:this.line,column:this.column,name:this.name})};Pt.prototype.join=function(t){var r,n,o=this.children.length;if(o>0){for(r=[],n=0;n<o-1;n++)r.push(this.children[n]),r.push(t);r.push(this.children[n]),this.children=r}return this};Pt.prototype.replaceRight=function(t,r){var n=this.children[this.children.length-1];return n[di]?n.replaceRight(t,r):typeof n=="string"?this.children[this.children.length-1]=n.replace(t,r):this.children.push("".replace(t,r)),this};Pt.prototype.setSourceContent=function(t,r){this.sourceContents[Cc.toSetString(t)]=r};Pt.prototype.walkSourceContents=function(t){for(var r=0,n=this.children.length;r<n;r++)this.children[r][di]&&this.children[r].walkSourceContents(t);for(var o=Object.keys(this.sourceContents),r=0,n=o.length;r<n;r++)t(Cc.fromSetString(o[r]),this.sourceContents[o[r]])};Pt.prototype.toString=function(){var t="";return this.walk(function(r){t+=r}),t};Pt.prototype.toStringWithSourceMap=function(t){var r={code:"",line:1,column:0},n=new LT(t),o=!1,i=null,a=null,s=null,c=null;return this.walk(function(l,A){r.code+=l,A.source!==null&&A.line!==null&&A.column!==null?((i!==A.source||a!==A.line||s!==A.column||c!==A.name)&&n.addMapping({source:A.source,original:{line:A.line,column:A.column},generated:{line:r.line,column:r.column},name:A.name}),i=A.source,a=A.line,s=A.column,c=A.name,o=!0):o&&(n.addMapping({generated:{line:r.line,column:r.column}}),i=null,o=!1);for(var u=0,m=l.length;u<m;u++)l.charCodeAt(u)===FT?(r.line++,r.column=0,u+1===m?(i=null,o=!1):o&&n.addMapping({source:A.source,original:{line:A.line,column:A.column},generated:{line:r.line,column:r.column},name:A.name})):r.column++}),this.walkSourceContents(function(l,A){n.setSourceContent(l,A)}),{code:r.code,map:n}};LC.SourceNode=Pt});var FC=j(Ec=>{Ec.SourceMapGenerator=tf().SourceMapGenerator;Ec.SourceMapConsumer=NC().SourceMapConsumer;Ec.SourceNode=RC().SourceNode});var PC,Ic,af=g(()=>{"use client";V();PC=f(O(),1),Ic=(0,R.createSvgIcon)((0,PC.jsx)("path",{d:"M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3z"}),"OpenInNew")});function yc(e){let{children:t,...r}=e;return(0,xc.jsxs)(OC.Link,{...r,target:"_blank",rel:"noopener noreferrer",children:[t," ",(0,xc.jsx)(Ic,{fontSize:"small"})]})}var xc,OC,GC=g(()=>{xc=f(O(),1);af();OC=f(P(),1)});function sf({text:e,extra:t}){let{classes:r}=PT(),n=t?`supporting data: ${JSON.stringify(t,null,2)}`:"",o=[e,n].filter(Boolean).join(`
2
2
  `),i=encodeURIComponent(`I got this error from JBrowse, here is the stack trace:
3
3
 
4
4
  \`\`\`
5
5
  ${e}
6
6
  \`\`\`
7
7
  ${n}
8
- `),a=`https://github.com/GMOD/jbrowse-components/issues/new?labels=bug&title=JBrowse+issue&body=${i}`,s=`mailto:${KC}?subject=JBrowse%202%20error&body=${i}`;return(0,rn.jsxs)(rn.Fragment,{children:[(0,rn.jsxs)(Mc.Typography,{children:["Post a new issue at"," ",(0,rn.jsx)(vc,{href:a,children:"GitHub"})," or send an email to ",(0,rn.jsx)(vc,{href:s,children:KC})]}),(0,rn.jsx)("pre",{className:r.pre,children:o})]})}var rn,Mc,KC,rk,XC=h(()=>{rn=f(O(),1),Mc=f(F(),1);$C();St();KC="jbrowse2@berkeley.edu",rk=oe()(e=>({pre:{background:(0,Mc.alpha)(e.palette.error.main,.2),border:`1px solid ${e.palette.divider}`,overflow:"auto",margin:20,maxHeight:300}}))});function gf({message:e,children:t,variant:r="body2",...n}){let{classes:o}=nk();return(0,ZC.jsx)(eE.Typography,{className:Ic(o.dots,n.className),...n,variant:r,children:e||"Loading"})}var ZC,eE,nk,tE=h(()=>{ZC=f(O(),1),eE=f(F(),1);St();nk=oe()({dots:{"&::after":{display:"inline-block",content:'""',width:"1em",textAlign:"left",animation:`${zu`
8
+ `),a=`https://github.com/GMOD/jbrowse-components/issues/new?labels=bug&title=JBrowse+issue&body=${i}`,s=`mailto:${UC}?subject=JBrowse%202%20error&body=${i}`;return(0,en.jsxs)(en.Fragment,{children:[(0,en.jsxs)(wc.Typography,{children:["Post a new issue at"," ",(0,en.jsx)(yc,{href:a,children:"GitHub"})," or send an email to ",(0,en.jsx)(yc,{href:s,children:UC})]}),(0,en.jsx)("pre",{className:r.pre,children:o})]})}var en,wc,UC,PT,HC=g(()=>{en=f(O(),1),wc=f(P(),1);GC();bt();UC="jbrowse2@berkeley.edu",PT=oe()(e=>({pre:{background:(0,wc.alpha)(e.palette.error.main,.2),border:`1px solid ${e.palette.divider}`,overflow:"auto",margin:20,maxHeight:300}}))});function cf({message:e,children:t,variant:r="body2",...n}){let{classes:o}=OT();return(0,jC.jsx)(JC.Typography,{className:mc(o.dots,n.className),...n,variant:r,children:e||"Loading"})}var jC,JC,OT,qC=g(()=>{jC=f(O(),1),JC=f(P(),1);bt();OT=oe()({dots:{"&::after":{display:"inline-block",content:'""',width:"1em",textAlign:"left",animation:`${Uu`
9
9
  0% {
10
10
  content: '';
11
11
  }
@@ -18,26 +18,26 @@ ${n}
18
18
  75% {
19
19
  content: '...';
20
20
  }
21
- `} 1.2s infinite ease-in-out`}}})});var nE=j((sO,rE)=>{rE.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,r=[],n=0;n<e.rangeCount;n++)r.push(e.getRangeAt(n));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null;break}return e.removeAllRanges(),function(){e.type==="Caret"&&e.removeAllRanges(),e.rangeCount||r.forEach(function(o){e.addRange(o)}),t&&t.focus()}}});var aE=j((cO,iE)=>{"use strict";var ok=nE(),oE={"text/plain":"Text","text/html":"Url",default:"Text"},ik="Copy to clipboard: #{key}, Enter";function ak(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}function sk(e,t){var r,n,o,i,a,s,c=!1;t||(t={}),r=t.debug||!1;try{o=ok(),i=document.createRange(),a=document.getSelection(),s=document.createElement("span"),s.textContent=e,s.ariaHidden="true",s.style.all="unset",s.style.position="fixed",s.style.top=0,s.style.clip="rect(0, 0, 0, 0)",s.style.whiteSpace="pre",s.style.webkitUserSelect="text",s.style.MozUserSelect="text",s.style.msUserSelect="text",s.style.userSelect="text",s.addEventListener("copy",function(A){if(A.stopPropagation(),t.format)if(A.preventDefault(),typeof A.clipboardData>"u"){r&&console.warn("unable to use e.clipboardData"),r&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var u=oE[t.format]||oE.default;window.clipboardData.setData(u,e)}else A.clipboardData.clearData(),A.clipboardData.setData(t.format,e);t.onCopy&&(A.preventDefault(),t.onCopy(A.clipboardData))}),document.body.appendChild(s),i.selectNodeContents(s),a.addRange(i);var l=document.execCommand("copy");if(!l)throw new Error("copy command was unsuccessful");c=!0}catch(A){r&&console.error("unable to copy using execCommand: ",A),r&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),c=!0}catch(u){r&&console.error("unable to copy using clipboardData: ",u),r&&console.error("falling back to prompt"),n=ak("message"in t?t.message:ik),window.prompt(n,e)}}finally{a&&(typeof a.removeRange=="function"?a.removeRange(i):a.removeAllRanges()),s&&document.body.removeChild(s),o()}return c}iE.exports=sk});var uE={};$e(uE,{default:()=>AE});async function lE(e){let t=await fetch(e);if(!t.ok)throw new Error(`HTTP ${t.status} fetching ${e}: ${await t.text()}`);return t.text()}async function ck(e){return JSON.parse(await lE(e))}async function uk(e){if(hf[e])return hf[e];let t=new URL(e).search,r=await lE(e),n=lk.exec(r)?.[1]??"",o=await ck(new URL(n,e).href+t),i=new cE.SourceMapConsumer(o);return hf[e]=i,i}async function fk(e){let t=[];for(let r of e.split(`
22
- `)){let n=Ak.exec(r);if(!n){t.push(r);continue}let o=n[2],a=(await uk(o)).originalPositionFor({line:+n[3],column:+n[4]});if(!a.source||!a.line||!a.column){t.push(r);continue}t.push(`${a.source}:${a.line}:${a.column+1} (${n[1].trim()})`)}return t.join(`
23
- `)}function dk(e,t){return e.startsWith("Error:")?e.slice(`${t}`.length):e}function mk(e){return typeof e=="object"&&e!==null&&"stack"in e?`${e.stack}`:""}function AE({error:e,onClose:t,extra:r}){let[n,o]=(0,hi.useState)(),[i,a]=(0,hi.useState)(),[s,c]=(0,hi.useState)(!1),l=e?`${e}`:"",A=dk(mk(e),l);(0,hi.useEffect)(()=>{(async()=>{try{o(await fk(A))}catch(d){console.error(d),o(A),a(d)}})()},[A]);let u=window.JBrowseSession?.version,m=[i?"Error loading source map, showing raw stack trace below:":"",l.length>sE?`${l.slice(0,sE)}...`:l,n||"No stack trace available",u?`JBrowse ${u}`:""].filter(Boolean).join(`
24
- `);return(0,er.jsxs)(Ut.Dialog,{open:!0,onClose:t,maxWidth:"xl",children:[(0,er.jsxs)(Ut.DialogTitle,{children:["Stack trace",(0,er.jsx)(Ut.IconButton,{onClick:t,sx:{position:"absolute",right:8,top:8},children:(0,er.jsx)(zs,{})})]}),(0,er.jsx)(Ut.DialogContent,{children:n===void 0?(0,er.jsx)(gf,{variant:"h6"}):(0,er.jsx)(pf,{text:m,extra:r})}),(0,er.jsxs)(Ut.DialogActions,{children:[(0,er.jsx)(Ut.Button,{variant:"contained",color:"secondary",onClick:async()=>{let{default:d}=await Promise.resolve().then(()=>f(aE(),1));d(m),c(!0),setTimeout(()=>{c(!1)},1e3)},children:s?"Copied!":"Copy stack trace to clipboard"}),(0,er.jsx)(Ut.Button,{variant:"contained",color:"primary",onClick:t,children:"Close"})]})]})}var er,hi,Ut,cE,hf,lk,Ak,sE,fE=h(()=>{er=f(O(),1),hi=f(v(),1);Qu();Ut=f(F(),1),cE=f(YC(),1);XC();tE();hf={},lk=/\/\/# sourceMappingURL=(.*)/,Ak=/(.*)((?:https?|file):\/\/.*):(\d+):(\d+)/;sE=1e4});function gk(e){let t="",r="is not assignable",n=e.indexOf(r);if(n!==-1){let o=e.slice(0,n+r.length),i=/.*at path "(.*)" snapshot `(.*)` is not assignable/m.exec(o);i&&(e=`Failed to load element at ${i[1]}...Failed element had snapshot`,t=i[2]);let a=/.*snapshot `(.*)` is not assignable/.exec(o);a&&(e="Failed to load element...Failed element had snapshot",t=a[1])}return t}function hk({error:e,onReset:t}){let{classes:r}=dE(),[n,o]=(0,Ei.useState)(!1);return(0,Nt.jsxs)("div",{className:r.iconFloat,children:[typeof e=="object"&&e&&"stack"in e?(0,Nt.jsx)(Ci.Tooltip,{title:"Get stack trace",children:(0,Nt.jsx)(Ci.IconButton,{onClick:()=>{o(!0)},color:"primary",children:(0,Nt.jsx)(o0,{})})}):null,t?(0,Nt.jsx)(Ci.Tooltip,{title:"Retry",children:(0,Nt.jsx)(Ci.IconButton,{onClick:t,color:"primary",children:(0,Nt.jsx)(t0,{})})}):null,n?(0,Nt.jsx)(Ei.Suspense,{fallback:null,children:(0,Nt.jsx)(pk,{error:e,onClose:()=>{o(!1)}})}):null]})}function Ck({error:e,onReset:t}){let{classes:r}=dE(),n=`${e}`,o=n.indexOf("expected an instance of"),i=o!==-1?n.slice(0,o):n,a=gk(n);return(0,Nt.jsxs)(ef,{children:[i.slice(0,1e4),(0,Nt.jsx)(hk,{error:e,onReset:t}),a?(0,Nt.jsx)("pre",{className:r.bg,children:JSON.stringify(JSON.parse(a),null,2)}):null]})}var Nt,Ei,Ci,pk,dE,mE,pE=h(()=>{Nt=f(O(),1),Ei=f(v(),1);r0();i0();Ci=f(F(),1);xC();St();pk=(0,Ei.lazy)(()=>Promise.resolve().then(()=>(fE(),uE))),dE=oe()(e=>({bg:{background:e.palette.divider,border:"1px solid black",margin:20},iconFloat:{float:"right",marginLeft:100}}));mE=Ck});var hE=j((hO,gE)=>{"use strict";var Ek=/["'&<>]/;gE.exports=Ik;function Ik(e){var t=""+e,r=Ek.exec(t);if(!r)return t;var n,o="",i=0,a=0;for(i=r.index;i<t.length;i++){switch(t.charCodeAt(i)){case 34:n="&quot;";break;case 38:n="&amp;";break;case 39:n="&#39;";break;case 60:n="&lt;";break;case 62:n="&gt;";break;default:continue}a!==i&&(o+=t.substring(a,i)),a=i+1,o+=n}return a!==i?o+t.substring(a,i):o}});function _c(e,t=0){let r=e.getUint32(t,!0);return e.getUint32(t+4,!0)*4294967296+r}var CE=h(()=>{});function xk(e,t){let r=new Array(t+1);r[0]=[0,0];let n=new DataView(e.buffer,e.byteOffset,e.byteLength);for(let o=0;o<t;o+=1){let i=o*Cf;r[o+1]=[_c(n,i),_c(n,i+8)]}return r}function wk(e,t){let r=0,n=e.length;for(;r<n;){let o=r+n>>>1;e[o][1]<=t?r=o+1:n=o}return r}var Cf,va,EE=h(()=>{CE();Cf=16;va=class{filehandle;index;constructor({filehandle:t}){this.filehandle=t}_getIndex(){return this.index||(this.index=this._readIndex().catch(t=>{throw this.index=void 0,t})),this.index}async _readIndex(){let t=await this.filehandle.read(8,0),r=_c(new DataView(t.buffer,t.byteOffset,t.byteLength));if(r===0)return[[0,0]];if(r>Number.MAX_SAFE_INTEGER/Cf)throw new TypeError("integer overflow");let n=await this.filehandle.read(Cf*r,8);return xk(n,r)}async getRelevantBlocksForRead(t,r){if(t===0)return{blocks:[],nextCompressedPosition:void 0};let n=await this._getIndex(),o=r+t,i=wk(n,r)-1,a=i+1;for(;a<n.length&&n[a][1]<o;)a+=1;return{blocks:n.slice(i,a),nextCompressedPosition:n[a]?.[0]}}}});var Ef,If,Ma,yn,_a,IE,xE,xf=h(()=>{Ef=0,If=2,Ma=4,yn=0,_a=1,IE=2,xE=-5});function yk(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function wE(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(var n in r)yk(r,n)&&(e[n]=r[n])}}return e}function kc(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)}var Ta,ka,Ii,kr,Tc,nn,bn,lo,Da=h(()=>{Ta={arraySet:function(e,t,r,n,o){if(t.subarray&&e.subarray){e.set(t.subarray(r,r+n),o);return}for(var i=0;i<n;i++)e[o+i]=t[r+i]},flattenChunks:function(e){var t,r,n,o,i,a;for(n=0,t=0,r=e.length;t<r;t++)n+=e[t].length;for(a=new Uint8Array(n),o=0,t=0,r=e.length;t<r;t++)i=e[t],a.set(i,o),o+=i.length;return a},Buf8:function(e){return new Uint8Array(e)},Buf16:function(e){return new Uint16Array(e)},Buf32:function(e){return new Int32Array(e)}},ka={arraySet:function(e,t,r,n,o){for(var i=0;i<n;i++)e[o+i]=t[r+i]},flattenChunks:function(e){return[].concat.apply([],e)},Buf8:function(e){return new Array(e)},Buf16:function(e){return new Array(e)},Buf32:function(e){return new Array(e)}},Ii=()=>{let e=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";return Ii=()=>e,e},kr=(e,t,r,n,o)=>(kr=Ii()?Ta.arraySet:ka.arraySet,kr(e,t,r,n,o)),Tc=e=>(Tc=Ii()?Ta.flattenChunks:ka.flattenChunks,Tc(e)),nn=e=>(nn=Ii()?Ta.Buf8:ka.Buf8,nn(e)),bn=e=>(bn=Ii()?Ta.Buf16:ka.Buf16,bn(e)),lo=e=>(lo=Ii()?Ta.Buf32:ka.Buf32,lo(e))});function yf(e){var t,r,n,o,i,a=e.length,s=0;for(o=0;o<a;o++)r=e.charCodeAt(o),(r&64512)===55296&&o+1<a&&(n=e.charCodeAt(o+1),(n&64512)===56320&&(r=65536+(r-55296<<10)+(n-56320),o++)),s+=r<128?1:r<2048?2:r<65536?3:4;for(t=new Uint8Array(s),i=0,o=0;i<s;o++)r=e.charCodeAt(o),(r&64512)===55296&&o+1<a&&(n=e.charCodeAt(o+1),(n&64512)===56320&&(r=65536+(r-55296<<10)+(n-56320),o++)),r<128?t[i++]=r:r<2048?(t[i++]=192|r>>>6,t[i++]=128|r&63):r<65536?(t[i++]=224|r>>>12,t[i++]=128|r>>>6&63,t[i++]=128|r&63):(t[i++]=240|r>>>18,t[i++]=128|r>>>12&63,t[i++]=128|r>>>6&63,t[i++]=128|r&63);return t}function bk(e,t){if(t<65534&&(e.subarray&&bE()||!e.subarray&&yE()))return String.fromCharCode.apply(null,kc(e,t));for(var r="",n=0;n<t;n++)r+=String.fromCharCode(e[n]);return r}function BE(e){for(var t=new Uint8Array(e.length),r=0,n=t.length;r<n;r++)t[r]=e.charCodeAt(r);return t}function SE(e,t){var r,n,o,i,a=t||e.length,s=new Array(a*2);for(n=0,r=0;r<a;){if(o=e[r++],o<128){s[n++]=o;continue}if(i=wf(o),i>4){s[n++]=65533,r+=i-1;continue}for(o&=i===2?31:i===3?15:7;i>1&&r<a;)o=o<<6|e[r++]&63,i--;if(i>1){s[n++]=65533;continue}o<65536?s[n++]=o:(o-=65536,s[n++]=55296|o>>10&1023,s[n++]=56320|o&1023)}return bk(s,n)}function QE(e,t){var r;for(t=t||e.length,t>e.length&&(t=e.length),r=t-1;r>=0&&(e[r]&192)===128;)r--;return r<0||r===0?t:r+wf(e[r])>t?r:t}var yE,bE,wf,vE=h(()=>{Da();yE=function(){let e=!0;try{String.fromCharCode.apply(null,[0])}catch{e=!1}return yE=()=>e,e},bE=function(){let e=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{e=!1}return bE=()=>e,e},wf=function(e){for(var t=nn(256),r=0;r<256;r++)t[r]=r>=252?6:r>=248?5:r>=240?4:r>=224?3:r>=192?2:1;return t[254]=t[254]=1,wf=n=>t[n],t[e]}});function bf(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}var ME=h(()=>{});function Na(e,t,r,n){for(var o=e&65535|0,i=e>>>16&65535|0,a=0;r!==0;){a=r>2e3?2e3:r,r-=a;do o=o+t[n++]|0,i=i+o|0;while(--a);o%=65521,i%=65521}return o|i<<16|0}var _E=h(()=>{});function Bk(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=e&1?3988292384^e>>>1:e>>>1;t[r]=e}return t}function tr(e,t,r,n){var o=TE(),i=n+r;e^=-1;for(var a=n;a<i;a++)e=e>>>8^o[(e^t[a])&255];return e^-1}var TE,kE=h(()=>{TE=function(){let e=Bk();return TE=()=>e,e}});function Bf(e,t){var r,n,o,i,a,s,c,l,A,u,m,d,g,E,x,I,p,w,y,b,Q,S,k,T,_;r=e.state,n=e.next_in,T=e.input,o=n+(e.avail_in-5),i=e.next_out,_=e.output,a=i-(t-e.avail_out),s=i+(e.avail_out-257),c=r.dmax,l=r.wsize,A=r.whave,u=r.wnext,m=r.window,d=r.hold,g=r.bits,E=r.lencode,x=r.distcode,I=(1<<r.lenbits)-1,p=(1<<r.distbits)-1;e:do{g<15&&(d+=T[n++]<<g,g+=8,d+=T[n++]<<g,g+=8),w=E[d&I];t:for(;;){if(y=w>>>24,d>>>=y,g-=y,y=w>>>16&255,y===0)_[i++]=w&65535;else if(y&16){b=w&65535,y&=15,y&&(g<y&&(d+=T[n++]<<g,g+=8),b+=d&(1<<y)-1,d>>>=y,g-=y),g<15&&(d+=T[n++]<<g,g+=8,d+=T[n++]<<g,g+=8),w=x[d&p];r:for(;;){if(y=w>>>24,d>>>=y,g-=y,y=w>>>16&255,y&16){if(Q=w&65535,y&=15,g<y&&(d+=T[n++]<<g,g+=8,g<y&&(d+=T[n++]<<g,g+=8)),Q+=d&(1<<y)-1,Q>c){e.msg="invalid distance too far back",r.mode=Dc;break e}if(d>>>=y,g-=y,y=i-a,Q>y){if(y=Q-y,y>A&&r.sane){e.msg="invalid distance too far back",r.mode=Dc;break e}if(S=0,k=m,u===0){if(S+=l-y,y<b){b-=y;do _[i++]=m[S++];while(--y);S=i-Q,k=_}}else if(u<y){if(S+=l+u-y,y-=u,y<b){b-=y;do _[i++]=m[S++];while(--y);if(S=0,u<b){y=u,b-=y;do _[i++]=m[S++];while(--y);S=i-Q,k=_}}}else if(S+=u-y,y<b){b-=y;do _[i++]=m[S++];while(--y);S=i-Q,k=_}for(;b>2;)_[i++]=k[S++],_[i++]=k[S++],_[i++]=k[S++],b-=3;b&&(_[i++]=k[S++],b>1&&(_[i++]=k[S++]))}else{S=i-Q;do _[i++]=_[S++],_[i++]=_[S++],_[i++]=_[S++],b-=3;while(b>2);b&&(_[i++]=_[S++],b>1&&(_[i++]=_[S++]))}}else if((y&64)===0){w=x[(w&65535)+(d&(1<<y)-1)];continue r}else{e.msg="invalid distance code",r.mode=Dc;break e}break}}else if((y&64)===0){w=E[(w&65535)+(d&(1<<y)-1)];continue t}else if(y&32){r.mode=Sk;break e}else{e.msg="invalid literal/length code",r.mode=Dc;break e}break}}while(n<o&&i<s);b=g>>3,n-=b,g-=b<<3,d&=(1<<g)-1,e.next_in=n,e.next_out=i,e.avail_in=n<o?5+(o-n):5-(n-o),e.avail_out=i<s?257+(s-i):257-(i-s),r.hold=d,r.bits=g}var Dc,Sk,DE=h(()=>{Dc=30,Sk=12});function Ao(e,t,r,n,o,i,a,s){var c=s.bits,l=0,A=0,u=0,m=0,d=0,g=0,E=0,x=0,I=0,p=0,w,y,b,Q,S,k=null,T=0,_,M=bn(xi+1),L=bn(xi+1),U=null,Y=0,Ne,te,Pe;for(l=0;l<=xi;l++)M[l]=0;for(A=0;A<n;A++)M[t[r+A]]++;for(d=c,m=xi;m>=1&&M[m]===0;m--);if(d>m&&(d=m),m===0)return o[i++]=1<<24|64<<16|0,o[i++]=1<<24|64<<16|0,s.bits=1,0;for(u=1;u<m&&M[u]===0;u++);for(d<u&&(d=u),x=1,l=1;l<=xi;l++)if(x<<=1,x-=M[l],x<0)return-1;if(x>0&&(e===RE||m!==1))return-1;for(L[1]=0,l=1;l<xi;l++)L[l+1]=L[l]+M[l];for(A=0;A<n;A++)t[r+A]!==0&&(a[L[t[r+A]]++]=A);if(e===RE?(k=U=a,_=19):e===Sf?(k=Qk,T-=257,U=vk,Y-=257,_=256):(k=Mk,U=_k,_=-1),p=0,A=0,l=u,S=i,g=d,E=0,b=-1,I=1<<d,Q=I-1,e===Sf&&I>NE||e===FE&&I>LE)return 1;for(;;){Ne=l-E,a[A]<_?(te=0,Pe=a[A]):a[A]>_?(te=U[Y+a[A]],Pe=k[T+a[A]]):(te=96,Pe=0),w=1<<l-E,y=1<<g,u=y;do y-=w,o[S+(p>>E)+y]=Ne<<24|te<<16|Pe|0;while(y!==0);for(w=1<<l-1;p&w;)w>>=1;if(w!==0?(p&=w-1,p+=w):p=0,A++,--M[l]===0){if(l===m)break;l=t[r+a[A]]}if(l>d&&(p&Q)!==b){for(E===0&&(E=d),S+=u,g=l-E,x=1<<g;g+E<m&&(x-=M[g+E],!(x<=0));)g++,x<<=1;if(I+=1<<g,e===Sf&&I>NE||e===FE&&I>LE)return 1;b=p&Q,o[b]=d<<24|g<<16|S-i|0}}return p!==0&&(o[S+p]=l-E<<24|64<<16|0),s.bits=d,0}var xi,NE,LE,RE,Sf,FE,Qk,vk,Mk,_k,PE=h(()=>{Da();xi=15,NE=852,LE=592,RE=0,Sf=1,FE=2,Qk=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],vk=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],Mk=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],_k=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]});function cI(e){return(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24)}function Ok(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=bn(320),this.work=bn(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function Gk(e){var t;return!e||!e.state?rr:(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=dI,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=lo(Fk),t.distcode=t.distdyn=lo(Pk),t.sane=1,t.back=-1,uo)}function Uk(e){var t;return!e||!e.state?rr:(t=e.state,t.wsize=0,t.whave=0,t.wnext=0,Gk(e))}function Hk(e,t){var r,n;return!e||!e.state||(n=e.state,t<0?(r=0,t=-t):(r=(t>>4)+1,t<48&&(t&=15)),t&&(t<8||t>15))?rr:(n.window!==null&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,Uk(e))}function mI(e,t){var r,n;return e?(n=new Ok,e.state=n,n.window=null,r=Hk(e,t),r!==uo&&(e.state=null),r):rr}function jk(e){if(lI){var t;for(_f=lo(512),Tf=lo(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(Ao(AI,e.lens,0,288,_f,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;Ao(uI,e.lens,0,32,Tf,0,e.work,{bits:5}),lI=!1}e.lencode=_f,e.lenbits=9,e.distcode=Tf,e.distbits=5}function pI(e,t,r,n){var o,i=e.state;return i.window===null&&(i.wsize=1<<i.wbits,i.wnext=0,i.whave=0,i.window=nn(i.wsize)),n>=i.wsize?(kr(i.window,t,r-i.wsize,i.wsize,0),i.wnext=0,i.whave=i.wsize):(o=i.wsize-i.wnext,o>n&&(o=n),kr(i.window,t,r-n,o,i.wnext),n-=o,n?(kr(i.window,t,r-n,n,0),i.wnext=n,i.whave=i.wsize):(i.wnext+=o,i.wnext===i.wsize&&(i.wnext=0),i.whave<i.wsize&&(i.whave+=o))),0}function gI(e,t){var r,n,o,i,a,s,c,l,A,u,m,d,g,E,x=0,I,p,w,y,b,Q,S,k,T=nn(4),_,M,L=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&e.avail_in!==0)return rr;r=e.state,r.mode===on&&(r.mode=Qf),a=e.next_out,o=e.output,c=e.avail_out,i=e.next_in,n=e.input,s=e.avail_in,l=r.hold,A=r.bits,u=s,m=c,k=uo;e:for(;;)switch(r.mode){case dI:if(r.wrap===0){r.mode=Qf;break}for(;A<16;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(r.wrap&2&&l===35615){r.check=0,T[0]=l&255,T[1]=l>>>8&255,r.check=tr(r.check,T,2,0),l=0,A=0,r.mode=UE;break}if(r.flags=0,r.head&&(r.head.done=!1),!(r.wrap&1)||(((l&255)<<8)+(l>>8))%31){e.msg="incorrect header check",r.mode=Se;break}if((l&15)!==GE){e.msg="unknown compression method",r.mode=Se;break}if(l>>>=4,A-=4,S=(l&15)+8,r.wbits===0)r.wbits=S;else if(S>r.wbits){e.msg="invalid window size",r.mode=Se;break}r.dmax=1<<S,e.adler=r.check=1,r.mode=l&512?zE:on,l=0,A=0;break;case UE:for(;A<16;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(r.flags=l,(r.flags&255)!==GE){e.msg="unknown compression method",r.mode=Se;break}if(r.flags&57344){e.msg="unknown header flags set",r.mode=Se;break}r.head&&(r.head.text=l>>8&1),r.flags&512&&(T[0]=l&255,T[1]=l>>>8&255,r.check=tr(r.check,T,2,0)),l=0,A=0,r.mode=HE;case HE:for(;A<32;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.head&&(r.head.time=l),r.flags&512&&(T[0]=l&255,T[1]=l>>>8&255,T[2]=l>>>16&255,T[3]=l>>>24&255,r.check=tr(r.check,T,4,0)),l=0,A=0,r.mode=jE;case jE:for(;A<16;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.head&&(r.head.xflags=l&255,r.head.os=l>>8),r.flags&512&&(T[0]=l&255,T[1]=l>>>8&255,r.check=tr(r.check,T,2,0)),l=0,A=0,r.mode=qE;case qE:if(r.flags&1024){for(;A<16;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.length=l,r.head&&(r.head.extra_len=l),r.flags&512&&(T[0]=l&255,T[1]=l>>>8&255,r.check=tr(r.check,T,2,0)),l=0,A=0}else r.head&&(r.head.extra=null);r.mode=JE;case JE:if(r.flags&1024&&(d=r.length,d>s&&(d=s),d&&(r.head&&(S=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),kr(r.head.extra,n,i,d,S)),r.flags&512&&(r.check=tr(r.check,n,d,i)),s-=d,i+=d,r.length-=d),r.length))break e;r.length=0,r.mode=VE;case VE:if(r.flags&2048){if(s===0)break e;d=0;do S=n[i+d++],r.head&&S&&r.length<65536&&(r.head.name+=String.fromCharCode(S));while(S&&d<s);if(r.flags&512&&(r.check=tr(r.check,n,d,i)),s-=d,i+=d,S)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=YE;case YE:if(r.flags&4096){if(s===0)break e;d=0;do S=n[i+d++],r.head&&S&&r.length<65536&&(r.head.comment+=String.fromCharCode(S));while(S&&d<s);if(r.flags&512&&(r.check=tr(r.check,n,d,i)),s-=d,i+=d,S)break e}else r.head&&(r.head.comment=null);r.mode=WE;case WE:if(r.flags&512){for(;A<16;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(l!==(r.check&65535)){e.msg="header crc mismatch",r.mode=Se;break}l=0,A=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=on;break;case zE:for(;A<32;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}e.adler=r.check=cI(l),l=0,A=0,r.mode=Fc;case Fc:if(r.havedict===0)return e.next_out=a,e.avail_out=c,e.next_in=i,e.avail_in=s,r.hold=l,r.bits=A,Nk;e.adler=r.check=1,r.mode=on;case on:if(t===kk||t===Nc)break e;case Qf:if(r.last){l>>>=A&7,A-=A&7,r.mode=Mf;break}for(;A<3;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}switch(r.last=l&1,l>>>=1,A-=1,l&3){case 0:r.mode=$E;break;case 1:if(jk(r),r.mode=Lc,t===Nc){l>>>=2,A-=2;break e}break;case 2:r.mode=XE;break;case 3:e.msg="invalid block type",r.mode=Se}l>>>=2,A-=2;break;case $E:for(l>>>=A&7,A-=A&7;A<32;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if((l&65535)!==(l>>>16^65535)){e.msg="invalid stored block lengths",r.mode=Se;break}if(r.length=l&65535,l=0,A=0,r.mode=vf,t===Nc)break e;case vf:r.mode=KE;case KE:if(d=r.length,d){if(d>s&&(d=s),d>c&&(d=c),d===0)break e;kr(o,n,i,d,a),s-=d,i+=d,c-=d,a+=d,r.length-=d;break}r.mode=on;break;case XE:for(;A<14;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(r.nlen=(l&31)+257,l>>>=5,A-=5,r.ndist=(l&31)+1,l>>>=5,A-=5,r.ncode=(l&15)+4,l>>>=4,A-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=Se;break}r.have=0,r.mode=ZE;case ZE:for(;r.have<r.ncode;){for(;A<3;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.lens[L[r.have++]]=l&7,l>>>=3,A-=3}for(;r.have<19;)r.lens[L[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,_={bits:r.lenbits},k=Ao(Tk,r.lens,0,19,r.lencode,0,r.work,_),r.lenbits=_.bits,k){e.msg="invalid code lengths set",r.mode=Se;break}r.have=0,r.mode=eI;case eI:for(;r.have<r.nlen+r.ndist;){for(;x=r.lencode[l&(1<<r.lenbits)-1],I=x>>>24,p=x>>>16&255,w=x&65535,!(I<=A);){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(w<16)l>>>=I,A-=I,r.lens[r.have++]=w;else{if(w===16){for(M=I+2;A<M;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(l>>>=I,A-=I,r.have===0){e.msg="invalid bit length repeat",r.mode=Se;break}S=r.lens[r.have-1],d=3+(l&3),l>>>=2,A-=2}else if(w===17){for(M=I+3;A<M;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}l>>>=I,A-=I,S=0,d=3+(l&7),l>>>=3,A-=3}else{for(M=I+7;A<M;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}l>>>=I,A-=I,S=0,d=11+(l&127),l>>>=7,A-=7}if(r.have+d>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=Se;break}for(;d--;)r.lens[r.have++]=S}}if(r.mode===Se)break;if(r.lens[256]===0){e.msg="invalid code -- missing end-of-block",r.mode=Se;break}if(r.lenbits=9,_={bits:r.lenbits},k=Ao(AI,r.lens,0,r.nlen,r.lencode,0,r.work,_),r.lenbits=_.bits,k){e.msg="invalid literal/lengths set",r.mode=Se;break}if(r.distbits=6,r.distcode=r.distdyn,_={bits:r.distbits},k=Ao(uI,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,_),r.distbits=_.bits,k){e.msg="invalid distances set",r.mode=Se;break}if(r.mode=Lc,t===Nc)break e;case Lc:r.mode=Rc;case Rc:if(s>=6&&c>=258){e.next_out=a,e.avail_out=c,e.next_in=i,e.avail_in=s,r.hold=l,r.bits=A,Bf(e,m),a=e.next_out,o=e.output,c=e.avail_out,i=e.next_in,n=e.input,s=e.avail_in,l=r.hold,A=r.bits,r.mode===on&&(r.back=-1);break}for(r.back=0;x=r.lencode[l&(1<<r.lenbits)-1],I=x>>>24,p=x>>>16&255,w=x&65535,!(I<=A);){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(p&&(p&240)===0){for(y=I,b=p,Q=w;x=r.lencode[Q+((l&(1<<y+b)-1)>>y)],I=x>>>24,p=x>>>16&255,w=x&65535,!(y+I<=A);){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}l>>>=y,A-=y,r.back+=y}if(l>>>=I,A-=I,r.back+=I,r.length=w,p===0){r.mode=iI;break}if(p&32){r.back=-1,r.mode=on;break}if(p&64){e.msg="invalid literal/length code",r.mode=Se;break}r.extra=p&15,r.mode=tI;case tI:if(r.extra){for(M=r.extra;A<M;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.length+=l&(1<<r.extra)-1,l>>>=r.extra,A-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=rI;case rI:for(;x=r.distcode[l&(1<<r.distbits)-1],I=x>>>24,p=x>>>16&255,w=x&65535,!(I<=A);){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if((p&240)===0){for(y=I,b=p,Q=w;x=r.distcode[Q+((l&(1<<y+b)-1)>>y)],I=x>>>24,p=x>>>16&255,w=x&65535,!(y+I<=A);){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}l>>>=y,A-=y,r.back+=y}if(l>>>=I,A-=I,r.back+=I,p&64){e.msg="invalid distance code",r.mode=Se;break}r.offset=w,r.extra=p&15,r.mode=nI;case nI:if(r.extra){for(M=r.extra;A<M;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.offset+=l&(1<<r.extra)-1,l>>>=r.extra,A-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=Se;break}r.mode=oI;case oI:if(c===0)break e;if(d=m-c,r.offset>d){if(d=r.offset-d,d>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=Se;break}d>r.wnext?(d-=r.wnext,g=r.wsize-d):g=r.wnext-d,d>r.length&&(d=r.length),E=r.window}else E=o,g=a-r.offset,d=r.length;d>c&&(d=c),c-=d,r.length-=d;do o[a++]=E[g++];while(--d);r.length===0&&(r.mode=Rc);break;case iI:if(c===0)break e;o[a++]=r.length,c--,r.mode=Rc;break;case Mf:if(r.wrap){for(;A<32;){if(s===0)break e;s--,l|=n[i++]<<A,A+=8}if(m-=c,e.total_out+=m,r.total+=m,m&&(e.adler=r.check=r.flags?tr(r.check,o,m,a-m):Na(r.check,o,m,a-m)),m=c,(r.flags?l:cI(l))!==r.check){e.msg="incorrect data check",r.mode=Se;break}l=0,A=0}r.mode=aI;case aI:if(r.wrap&&r.flags){for(;A<32;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(l!==(r.total&4294967295)){e.msg="incorrect length check",r.mode=Se;break}l=0,A=0}r.mode=sI;case sI:k=Dk;break e;case Se:k=fI;break e;case Df:return kf;case Rk:default:return rr}return e.next_out=a,e.avail_out=c,e.next_in=i,e.avail_in=s,r.hold=l,r.bits=A,(r.wsize||m!==e.avail_out&&r.mode<Se&&(r.mode<Mf||t!==OE))&&pI(e,e.output,e.next_out,m-e.avail_out)?(r.mode=Df,kf):(u-=e.avail_in,m-=e.avail_out,e.total_in+=u,e.total_out+=m,r.total+=m,r.wrap&&m&&(e.adler=r.check=r.flags?tr(r.check,o,m,e.next_out-m):Na(r.check,o,m,e.next_out-m)),e.data_type=r.bits+(r.last?64:0)+(r.mode===on?128:0)+(r.mode===Lc||r.mode===vf?256:0),(u===0&&m===0||t===OE)&&k===uo&&(k=Lk),k)}function hI(e){if(!e||!e.state)return rr;var t=e.state;return t.window&&(t.window=null),e.state=null,uo}function CI(e,t){var r;return!e||!e.state||(r=e.state,(r.wrap&2)===0)?rr:(r.head=t,t.done=!1,uo)}function Nf(e,t){var r=t.length,n,o,i;return!e||!e.state||(n=e.state,n.wrap!==0&&n.mode!==Fc)?rr:n.mode===Fc&&(o=1,o=Na(o,t,r,0),o!==n.check)?fI:(i=pI(e,t,r,r),i?(n.mode=Df,kf):(n.havedict=1,uo))}var Tk,AI,uI,OE,kk,Nc,uo,Dk,Nk,rr,fI,kf,Lk,GE,dI,UE,HE,jE,qE,JE,VE,YE,WE,zE,Fc,on,Qf,$E,vf,KE,XE,ZE,eI,Lc,Rc,tI,rI,nI,oI,iI,Mf,aI,sI,Se,Df,Rk,Fk,Pk,lI,_f,Tf,EI=h(()=>{_E();kE();DE();PE();Da();Tk=0,AI=1,uI=2,OE=4,kk=5,Nc=6,uo=0,Dk=1,Nk=2,rr=-2,fI=-3,kf=-4,Lk=-5,GE=8,dI=1,UE=2,HE=3,jE=4,qE=5,JE=6,VE=7,YE=8,WE=9,zE=10,Fc=11,on=12,Qf=13,$E=14,vf=15,KE=16,XE=17,ZE=18,eI=19,Lc=20,Rc=21,tI=22,rI=23,nI=24,oI=25,iI=26,Mf=27,aI=28,sI=29,Se=30,Df=31,Rk=32,Fk=852,Pk=592;lI=!0});var Pc,II=h(()=>{Pc={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});function Lf(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}var xI=h(()=>{});function qk(e,t){var r=new Ff(t);if(r.push(e,!0),r.err)throw r.msg||Pc[r.err];return r.result}var Rf,Ff,wI,yI=h(()=>{Da();vE();xf();ME();EI();II();xI();Rf=Object.prototype.toString,Ff=class e{constructor(t){if(!(this instanceof e))return new e(t);this.options=wE({chunkSize:16384,windowBits:0,to:""},t||{});var r=this.options;r.raw&&r.windowBits>=0&&r.windowBits<16&&(r.windowBits=-r.windowBits,r.windowBits===0&&(r.windowBits=-15)),r.windowBits>=0&&r.windowBits<16&&!(t&&t.windowBits)&&(r.windowBits+=32),r.windowBits>15&&r.windowBits<48&&(r.windowBits&15)===0&&(r.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Lf,this.strm.avail_out=0;var n=mI(this.strm,r.windowBits);if(n!==yn)throw new Error(Pc[n]);if(this.header=new bf,CI(this.strm,this.header),r.dictionary&&(typeof r.dictionary=="string"?r.dictionary=yf(r.dictionary):Rf.call(r.dictionary)==="[object ArrayBuffer]"&&(r.dictionary=new Uint8Array(r.dictionary)),r.raw&&(n=Nf(this.strm,r.dictionary),n!==yn)))throw new Error(Pc[n])}push(t,r){var n=this.strm,o=this.options.chunkSize,i=this.options.dictionary,a,s,c,l,A,u,m=!1;if(this.ended)return!1;s=r===~~r?r:r===!0?Ma:Ef,typeof t=="string"?n.input=BE(t):Rf.call(t)==="[object ArrayBuffer]"?n.input=new Uint8Array(t):n.input=t,n.next_in=0,n.avail_in=n.input.length;do{if(n.avail_out===0&&(n.output=nn(o),n.next_out=0,n.avail_out=o),a=gI(n,Ef),a===IE&&i&&(typeof i=="string"?u=yf(i):Rf.call(i)==="[object ArrayBuffer]"?u=new Uint8Array(i):u=i,a=Nf(this.strm,u)),a===xE&&m===!0&&(a=yn,m=!1),a!==_a&&a!==yn)return this.onEnd(a),this.ended=!0,!1;n.next_out&&(n.avail_out===0||a===_a||n.avail_in===0&&(s===Ma||s===If))&&(this.options.to==="string"?(c=QE(n.output,n.next_out),l=n.next_out-c,A=SE(n.output,c),n.next_out=l,n.avail_out=o-l,l&&kr(n.output,n.output,c,l,0),this.onData(A)):this.onData(kc(n.output,n.next_out))),n.avail_in===0&&n.avail_out===0&&(m=!0)}while((n.avail_in>0||n.avail_out===0)&&a!==_a);return a===_a&&(s=Ma),s===Ma?(a=hI(this.strm),this.onEnd(a),this.ended=!0,a===yn):(s===If&&(this.onEnd(yn),n.avail_out=0),!0)}onData(t){this.chunks.push(t)}onEnd(t){t===yn&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=Tc(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg}};wI=qk});var bI=h(()=>{});var BI=h(()=>{xf();yI();bI()});function vI(e){try{let a=Ae.__wbindgen_add_to_stack_pointer(-16),s=TI(e,Ae.__wbindgen_export2),c=Hf;Ae.decompress_all(a,s,c);var t=Ht().getInt32(a+0,!0),r=Ht().getInt32(a+4,!0),n=Ht().getInt32(a+8,!0),o=Ht().getInt32(a+12,!0);if(o)throw kI(n);var i=MI(t,r).slice();return Ae.__wbindgen_export(t,r*1,1),i}finally{Ae.__wbindgen_add_to_stack_pointer(16)}}function Vk(e,t,r,n,o){try{let c=Ae.__wbindgen_add_to_stack_pointer(-16),l=TI(e,Ae.__wbindgen_export2),A=Hf;Ae.decompress_chunk_slice(c,l,A,t,r,n,o);var i=Ht().getInt32(c+0,!0),a=Ht().getInt32(c+4,!0),s=Ht().getInt32(c+8,!0);if(s)throw kI(a);return yi.__wrap(i)}finally{Ae.__wbindgen_add_to_stack_pointer(16)}}function Yk(e,t){let r=Error(_I(e,t));return zk(r)}function Wk(e,t){throw new Error(_I(e,t))}function zk(e){Ra===an.length&&an.push(an.length+1);let t=Ra;return Ra=an[t],an[t]=e,t}function $k(e){e<1028||(an[e]=Ra,Ra=e)}function QI(e,t){return e=e>>>0,Kk().subarray(e/8,e/8+t)}function MI(e,t){return e=e>>>0,Uf().subarray(e/1,e/1+t)}function Ht(){return(wi===null||wi.buffer.detached===!0||wi.buffer.detached===void 0&&wi.buffer!==Ae.memory.buffer)&&(wi=new DataView(Ae.memory.buffer)),wi}function Kk(){return(Oc===null||Oc.byteLength===0)&&(Oc=new Float64Array(Ae.memory.buffer)),Oc}function _I(e,t){return eD(e>>>0,t)}function Uf(){return(Gc===null||Gc.byteLength===0)&&(Gc=new Uint8Array(Ae.memory.buffer)),Gc}function Xk(e){return an[e]}function TI(e,t){let r=t(e.length*1,1)>>>0;return Uf().set(e,r/1),Hf=e.length,r}function kI(e){let t=Xk(e);return $k(e),t}function eD(e,t){return Pf+=t,Pf>=Zk&&(Uc=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}),Uc.decode(),Pf=t),Uc.decode(Uf().subarray(e,e+t))}function DI(e){Ae=e}async function tD(){return La||(Of||(Of=(async()=>{let t=await(await fetch(Jk)).arrayBuffer(),{instance:r}=await WebAssembly.instantiate(t,{"./bgzf_wasm_bg.js":Gf});return La=r.exports,DI(La),La})()),Of)}async function NI(e){return await tD(),vI(e)}var fo,Gf,Jk,yi,SI,wi,Oc,Gc,an,Ra,Uc,Zk,Pf,Hf,Ae,La,Of,LI=h(()=>{fo={};fo.d=(e,t)=>{for(var r in t)fo.o(t,r)&&!fo.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})};fo.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);fo.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};Gf={};fo.r(Gf);fo.d(Gf,{ChunkSliceResult:()=>yi,__wbg_Error_ef53bc310eb298a0:()=>Yk,__wbg___wbindgen_throw_1506f2235d1bdba0:()=>Wk,__wbg_set_wasm:()=>DI,decompress_all:()=>vI,decompress_chunk_slice:()=>Vk});Jk="data:application/wasm;base64,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ADYCACADQRitQiCGIAOthDcDCEGfgsAAIANBCGogAhAxAAs0AAJAIAFpQQFHDQAgAEGAgICAeCABa0sNAAJAIABFDQAQaSAAIAEQVyIBRQ0BCyABDwsAC0AAAkAgACgCAEGAgICAeEYNACABIAAoAgQgACgCCBBMDwsgASgCACABKAIEIAAoAgwoAgAiACgCACAAKAIEEAsLOQACQCACQYCAxABGDQAgACACIAEoAhARBQBFDQBBAQ8LAkAgAw0AQQAPCyAAIAMgBCABKAIMEQcACzUBAX8CQCAARQ0AAkAgASgCACICRQ0AIAAgAhECAAsgASgCBCICRQ0AIAAgAiABKAIIEFILCyoBAX8jAEEQayIDJAAgAyACNgIMIAMgATYCCCADIAA2AgQgA0EEahBjAAstAQF/IwBBEGsiASQAIAEgACkCADcCCCABQQhqQZCUwAAgACgCCEEBQQAQFgALLAIBfwF+IwBBEGsiASQAIAApAgAhAiABIAA2AgwgASACNwIEIAFBBGoQZQALIwEBfyMAQRBrIgIkACACIAE2AgwgAiAANgIIIAJBCGoQZAALIAACQCABKAIARQ0AIABByJbAADYCBCAAIAE2AgAPCwALHgEBfwJAIAAoAgAiAkUNACABIAIgACgCBBBMDwsACxsBAX8QaSAAQQRqQQQQVyIBIAA2AgAgAUEEagseAQF/AkAgACgCACIBQQFIDQAgACgCBCABQQEQUgsLHgAgACgCACAAKAIEQQAoAtSZQCIAQQMgABsRBAAACyMBAX8CQEGMicAAECwiAA0AQcCIwABBOkH8iMAAEDcACyAACx8AAkAgAEGAgICAeHJBgICAgHhGDQAgASAAQQEQUgsLHAEBfwJAIAAoAgAiAUUNACAAKAIEIAFBARBSCwsXAAJAIAFBCUkNACABIAAQDw8LIAAQAgsVACAAQXxqIgAgACgCAEEEakEEEFILFAACQCAARQ0AIAAgARBeAAsQVQALEQAgACABQQF0QQFyIAIQMQALEgACQCABRQ0AIAAgASACEFILCxIAIAAgASACIAMgBEEAIAUQAwsVAAJAIABFDQAgACAAKAKoWhECAAsLGgAgAEEAKQKUlUA3AgggAEEAKQKMlUA3AgALGgAgAEEAKQKElUA3AgggAEEAKQL8lEA3AgALFgAgACgCACABIAIgACgC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AAGAAAACgAAAA4AAAASAAAAFgAAABoAAAAeAAAAIgAAACYAAAAqAAAALgAAADIAAAA2AAAAOgAAAD4AAABCAAAARgAAAEoAAABOAAAAUgAAAFYAAABaAAAAXgAAAGIAAABmAAAAagAAAG4AAAByAAAAdgAAAHoAAAB+AAAAggAAAIYAAACKAAAAjgAAAJIAAACWAAAAmgAAAJ4AAACiAAAApgAAAKoAAACuAAAAsgAAALYAAAC6AAAAvgAAAMIAAADGAAAAygAAAM4AAADSAAAA1gAAANoAAADeAAAA4gAAAOYAAADqAAAA7gAAAPIAAAD2AAAA+gAAAP4AAAECAAABBgAAAQoAAAEOAAABEgAAARYAAAEaAAABHgAAASIAAAEmAAABKgAAAS4AAAEyAAABNgAAAToAAAE+AAABQgAAAUYAAAFKAAABTgAAAVIAAAFWAAABWgAAAV4AAAFiAAABZgAAAWoAAAFuAAABcgAAAXYAAAF6AAABfgAAAYIAAAGGAAABigAAAY4AAAGSAAABlgAAAZoAAAGeAAABogAAAaYAAAGqAAABrgAAAbIAAAG2AAABugAAAb4AAAHCAAABxgAAAcoAAAHOAAAB0gAAAdYAAAHaAAAB3gAAAeIAAAHmAAAB6gAAAe4AAAHyAAAB9gAAAfoAAAH+AAACAgAAAgYAAAIKAAACDgAAAhIAAAIWAAACGgAAAh4AAAIiAAACJgAAAioAAAIuAAACMgAAAjYAAAI6AAACPgAAAkIAAAJGAAACSgAAAk4AAAJSAAACVgAAAloAAAJeAAACYgAAAmYAAAJqAAACbgAAAnIAAAJ2AAACegAAAn4AAAKCAAAChgAAAooAAAKOAAACkgAAApYAAAKaAAACngAAAqIAAAKmAAACqgAAAq4AAAKyAAACtgAAAroAAAK+AAACwgAAAsYAAALKAAACzgAAAtIAAALWAAAC2gAAAt4AAALiAAAC5gAAAuoAAALuAAAC8gAAAvYAAAL6AAAC/gAAAwIAAAMGAAADCgAAAw4AAAMSAAADFgAAAxoAAAMeAAADIgAAAyYAAAMqAAADLgAAAzIAAAM2AAADOgAAAz4AAANCAAADRgAAA0oAAANOAAADUgAAA1YAAANaAAADXgAAA2IAAANmAAADagAAA24AAANyAAADdgAAA3oAAAN+AAADggAAA4YAAAOKAAADjgAAA5IAAAOWAAADmgAAA54AAAOiAAADpgAAA6oAAAOuAAADsgAAA7YAAAO6AAADvgAAA8IAAAPGAAADygAAA84AAAPSAAAD1gAAA9oAAAPeAAAD4gAAA+YAAAPqAAAD7gAAA/IAAAP2AAAD+gAAA/4AAoAAAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgABAAsAAQANAAEADwABABEAAgATAAIAFwACABsAAgAfAAMAIwADACsAAwAzAAMAOwAEAEMABABTAAQAYwAEAHMABQCDAAUAowAFAMMABQDjAAAAAgEAAAIBAAACAQAAAAAIAAAABAAAAAQAAAAFAAAABgAAAAcAAAAIAAAADAAAAAQAAAAJAAAACgAAAAsAAAAAAAAACAAAAAQAAAAMAAAADQAAAA4AAAAPAAAAEAAAABAAAAAEAAAAEQAAABIAAAATAAAABwAAAG1dy9YsUOtjeEGmV3Ebi7krgVsBvYZR7Ay0wpzkyccEYXNzZXJ0aW9uIGZhaWxlZDogcHNpemUgPj0gc2l6ZSArIG1pbl9vdmVyaGVhZAAAOAIQACoAAACxBAAACQAAAGFzc2VydGlvbiBmYWlsZWQ6IHBzaXplIDw9IHNpemUgKyBtYXhfb3ZlcmhlYWQAADgCEAAqAAAAtwQAAA0AAAByd2xvY2sgb3ZlcmZsb3dlZCByZWFkIGxvY2tzIQEQAF0AAAAVAAAALAAAAAAAAAAIAAAABAAAABQAAAAIAAAADAAAAAQAAAAVAAAAcndsb2NrIGhhcyBub3QgYmVlbiBsb2NrZWQgZm9yIHJlYWRpbmcAACEBEABdAAAAPgAAAAkAAABjYXBhY2l0eSBvdmVyZmxvdwAAAOcBEABQAAAAHAAAAAUAAAAwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OVJlZkNlbGwgYWxyZWFkeSBib3Jyb3dlZABBpJnAAAsEBAAAAAApBG5hbWUBIgFWH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXIAPAlwcm9kdWNlcnMBDHByb2Nlc3NlZC1ieQIGd2FscnVzBjAuMjYuNAx3YXNtLWJpbmRnZW4HMC4yLjEyMg==",yi=class e{static __wrap(t){let r=Object.create(e.prototype);return r.__wbg_ptr=t,SI.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let t=this.__wbg_ptr;return this.__wbg_ptr=0,SI.unregister(this),t}free(){let t=this.__destroy_into_raw();Ae.__wbg_chunksliceresult_free(t,0)}take_buffer(){try{let o=Ae.__wbindgen_add_to_stack_pointer(-16);Ae.chunksliceresult_take_buffer(o,this.__wbg_ptr);var t=Ht().getInt32(o+0,!0),r=Ht().getInt32(o+4,!0),n=MI(t,r).slice();return Ae.__wbindgen_export(t,r*1,1),n}finally{Ae.__wbindgen_add_to_stack_pointer(16)}}take_cpositions(){try{let o=Ae.__wbindgen_add_to_stack_pointer(-16);Ae.chunksliceresult_take_cpositions(o,this.__wbg_ptr);var t=Ht().getInt32(o+0,!0),r=Ht().getInt32(o+4,!0),n=QI(t,r).slice();return Ae.__wbindgen_export(t,r*8,8),n}finally{Ae.__wbindgen_add_to_stack_pointer(16)}}take_dpositions(){try{let o=Ae.__wbindgen_add_to_stack_pointer(-16);Ae.chunksliceresult_take_dpositions(o,this.__wbg_ptr);var t=Ht().getInt32(o+0,!0),r=Ht().getInt32(o+4,!0),n=QI(t,r).slice();return Ae.__wbindgen_export(t,r*8,8),n}finally{Ae.__wbindgen_add_to_stack_pointer(16)}}};Symbol.dispose&&(yi.prototype[Symbol.dispose]=yi.prototype.free);SI=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>Ae.__wbg_chunksliceresult_free(e,1));wi=null;Oc=null;Gc=null;an=new Array(1024).fill(void 0);an.push(void 0,null,!0,!1);Ra=an.length;Uc=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});Uc.decode();Zk=2146435072,Pf=0;Hf=0;La=null,Of=null});function rD(e){return e[0]===31&&e[1]===139}function RI(e){return e instanceof Error?e.message:`${e}`}async function nD(e){if(typeof DecompressionStream<"u"){let t=new Blob([e]).stream().pipeThrough(new DecompressionStream("gzip"));return new Uint8Array(await new Response(t).arrayBuffer())}else return wI(e,void 0)}function oD(e){return RI(e).includes("invalid gzip header")?new Error("problem decompressing block: incorrect gzip header check",{cause:e}):e}async function Hc(e){try{return await NI(e)}catch(t){if(RI(t).includes("invalid bgzf header")){if(rD(e))return nD(e);throw new Error("problem decompressing block: not a valid bgzf or gzip block",{cause:t})}throw oD(t)}}var jf=h(()=>{BI();LI()});function FI(e){let t=0;for(let o of e)t+=o.length;let r=new Uint8Array(t),n=0;for(let o of e)r.set(o,n),n+=o.length;return r}var PI=h(()=>{});function sD(e){let t=0,r=[],n=()=>{t--,r.shift()?.()};return async o=>{t>=e&&await new Promise(i=>{r.push(i)}),t++;try{return await o()}finally{n()}}}function cD(e,t,r,n){let o=Math.max(0,r-t),i=Math.min(n,t+e.length)-t;return o<e.length?e.subarray(o,i):new Uint8Array(0)}var iD,aD,bi,OI=h(()=>{EE();jf();PI();iD=10,aD=65536;bi=class{filehandle;gzi;limit;constructor({filehandle:t,gziFilehandle:r,blockConcurrency:n=iD}){this.filehandle=t,this.gzi=new va({filehandle:r}),this.limit=sD(n)}async _readAndUncompressBlock(t,r){let n=await this.filehandle.read(r,t);return Hc(n)}async read(t,r){let{blocks:n,nextCompressedPosition:o}=await this.gzi.getRelevantBlocksForRead(t,r);if(n.length===0)return new Uint8Array(0);let i=r+t,a=await Promise.all(n.map(([s,c],l)=>this.limit(async()=>{let A=n[l+1]?.[0]??o??s+aD,u=await this._readAndUncompressBlock(s,A-s);return cD(u,c,r,i)})));return FI(a)}}});var qf=h(()=>{OI();jf()});var UI=j((f6,GI)=>{GI.exports=JBrowseExports["react-dom"]});var jI=j((d6,HI)=>{HI.exports=JBrowseExports["react-dom/client"]});function qI(e){let t="",r=!1;for(let n=0,o=e.length;n<o;n++){let i=e[n];i==="<"?r=!0:i===">"?r=!1:r||(t+=i)}return t}var Jf=h(()=>{});var JI=h(()=>{});var VI=h(()=>{});var YI=h(()=>{});function jc(e){return typeof e=="object"&&e!==null&&"uri"in e&&!!e.uri}var lD,Vf=h(()=>{lD=f(Pt(),1);YI()});var AD,WI=h(()=>{AD=f(fr(),1)});var zI=h(()=>{});var $I=h(()=>{});var Bi,qc,Yf,Wf,uD,Fa,Jc,KI=h(()=>{Bi={METHOD:"method",PROPERTY:"property"},qc=class{constructor(t,r){this.inst=t,this.args=r}},Yf=class extends qc{constructor(t,r){super(t,r),this.type=Bi.METHOD}execute(t){t[this.inst](...this.args)}},Wf=class extends qc{constructor(t,r){super(t,r),this.type=Bi.PROPERTY}execute(t){t[this.inst]=this.args[0]}},uD={[Bi.METHOD]:Yf,[Bi.PROPERTY]:Wf},Fa=class{constructor(t,r,n){return new uD[t](r,n)}};Fa.METHOD=Bi.METHOD;Fa.PROPERTY=Bi.PROPERTY;Jc=Fa});var XI,Dr,Vc,zf=h(()=>{KI();XI=Object.freeze({METHODS:["addHitRegion","arc","arcTo","beginPath","bezierCurveTo","clearHitRegions","clearRect","clip","closePath","drawFocusIfNeeded","drawImage","ellipse","fill","fillRect","fillText","lineTo","moveTo","putImageData","quadraticCurveTo","rect","removeHitRegion","resetTransform","restore","rotate","save","scale","scrollPathIntoView","setLineDash","setTransform","stroke","strokeRect","strokeText","transform","translate"],PROPERTIES:["direction","fillStyle","filter","font","globalAlpha","globalCompositeOperation","imageSmoothingEnabled","imageSmoothingQuality","lineCap","lineDashOffset","lineJoin","lineWidth","miterLimit","shadowBlur","shadowColor","shadowOffsetX","shadowOffsetY","strokeStyle","textAlign","textBaseline"]}),Dr=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push"),fromJSON:Symbol.for("fromJSON")}),Vc=class{constructor(t=null){this[Dr.sequence]=[],t&&this[Dr.fromJSON](t)}[Dr.fromJSON](t={sequence:[]}){t.sequence.forEach(({type:r,inst:n,args:o})=>{this[Dr.push](r,n,o)})}[Dr.push](t,r,n){this[Dr.sequence].push(new Jc(t,r,n))}execute(t){t.save(),this[Dr.sequence].forEach(r=>r.execute(t)),t.restore()}toJSON(){return{sequence:this[Dr.sequence]}}};XI.METHODS.forEach(e=>{Object.defineProperty(Vc.prototype,e,{value:function(...r){this[Dr.push](Jc.METHOD,e,r)},writable:!1,enumerable:!0,configurable:!1})});XI.PROPERTIES.forEach(e=>{Object.defineProperty(Vc.prototype,e,{get(){throw`Invalid canvas sequencer interaction, cannot get ${e}.`},set(t){this[Dr.push](Jc.PROPERTY,e,[t])},enumerable:!0,configurable:!1})})});var S6,ex=h(()=>{zf();S6=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push")})});var tx=h(()=>{ex();zf()});var nx=j((k6,rx)=>{rx.exports=!1});var fD,ox=h(()=>{tx();fD=f(nx(),1)});var dD,mD,ix=h(()=>{dD=f(O(),1),mD=f(v(),1)});var ax=h(()=>{});var F6,P6,O6,G6,sx=h(()=>{F6=new Uint8Array([99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22]),P6=new Uint8Array([82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125]),O6=new Uint8Array([1,2,4,8,16,32,64,128,27,54]),G6=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298])});function Pa(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");$f(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function Kf(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Si(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,i=[],a;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(s){a={error:s}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(a)throw a.error}}return i}function Qi(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,i;n<o;n++)(i||!(n in t))&&(i||(i=Array.prototype.slice.call(t,0,n)),i[n]=t[n]);return e.concat(i||Array.prototype.slice.call(t))}var $f,Oa=h(()=>{$f=function(e,t){return $f=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(r[o]=n[o])},$f(e,t)}});function Nr(e){return typeof e=="function"}var Yc=h(()=>{});function Wc(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var Xf=h(()=>{});var zc,cx=h(()=>{Xf();zc=Wc(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription:
21
+ `} 1.2s infinite ease-in-out`}}})});var YC=j((N8,VC)=>{VC.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,r=[],n=0;n<e.rangeCount;n++)r.push(e.getRangeAt(n));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null;break}return e.removeAllRanges(),function(){e.type==="Caret"&&e.removeAllRanges(),e.rangeCount||r.forEach(function(o){e.addRange(o)}),t&&t.focus()}}});var $C=j((L8,zC)=>{"use strict";var GT=YC(),WC={"text/plain":"Text","text/html":"Url",default:"Text"},UT="Copy to clipboard: #{key}, Enter";function HT(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}function jT(e,t){var r,n,o,i,a,s,c=!1;t||(t={}),r=t.debug||!1;try{o=GT(),i=document.createRange(),a=document.getSelection(),s=document.createElement("span"),s.textContent=e,s.ariaHidden="true",s.style.all="unset",s.style.position="fixed",s.style.top=0,s.style.clip="rect(0, 0, 0, 0)",s.style.whiteSpace="pre",s.style.webkitUserSelect="text",s.style.MozUserSelect="text",s.style.msUserSelect="text",s.style.userSelect="text",s.addEventListener("copy",function(A){if(A.stopPropagation(),t.format)if(A.preventDefault(),typeof A.clipboardData>"u"){r&&console.warn("unable to use e.clipboardData"),r&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var u=WC[t.format]||WC.default;window.clipboardData.setData(u,e)}else A.clipboardData.clearData(),A.clipboardData.setData(t.format,e);t.onCopy&&(A.preventDefault(),t.onCopy(A.clipboardData))}),document.body.appendChild(s),i.selectNodeContents(s),a.addRange(i);var l=document.execCommand("copy");if(!l)throw new Error("copy command was unsuccessful");c=!0}catch(A){r&&console.error("unable to copy using execCommand: ",A),r&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),c=!0}catch(u){r&&console.error("unable to copy using clipboardData: ",u),r&&console.error("falling back to prompt"),n=HT("message"in t?t.message:UT),window.prompt(n,e)}}finally{a&&(typeof a.removeRange=="function"?a.removeRange(i):a.removeAllRanges()),s&&document.body.removeChild(s),o()}return c}zC.exports=jT});var tE={};tt(tE,{default:()=>eE});async function ZC(e){let t=await fetch(e);if(!t.ok)throw new Error(`HTTP ${t.status} fetching ${e}: ${await t.text()}`);return t.text()}async function JT(e){return JSON.parse(await ZC(e))}async function YT(e){if(lf[e])return lf[e];let t=new URL(e).search,r=await ZC(e),n=qT.exec(r)?.[1]??"",o=await JT(new URL(n,e).href+t),i=new XC.SourceMapConsumer(o);return lf[e]=i,i}async function WT(e){let t=[];for(let r of e.split(`
22
+ `)){let n=VT.exec(r);if(!n){t.push(r);continue}let o=n[2],a=(await YT(o)).originalPositionFor({line:+n[3],column:+n[4]});if(!a.source||!a.line||!a.column){t.push(r);continue}t.push(`${a.source}:${a.line}:${a.column+1} (${n[1].trim()})`)}return t.join(`
23
+ `)}function zT(e,t){return e.startsWith("Error:")?e.slice(`${t}`.length):e}function $T(e){return typeof e=="object"&&e!==null&&"stack"in e?`${e.stack}`:""}function eE({error:e,onClose:t,extra:r}){let[n,o]=(0,mi.useState)(),[i,a]=(0,mi.useState)(),[s,c]=(0,mi.useState)(!1),l=e?`${e}`:"",A=zT($T(e),l);(0,mi.useEffect)(()=>{(async()=>{try{o(await WT(A))}catch(d){console.error(d),o(A),a(d)}})()},[A]);let u=window.JBrowseSession?.version,m=[i?"Error loading source map, showing raw stack trace below:":"",l.length>KC?`${l.slice(0,KC)}...`:l,n||"No stack trace available",u?`JBrowse ${u}`:""].filter(Boolean).join(`
24
+ `);return(0,Xt.jsxs)(Ot.Dialog,{open:!0,onClose:t,maxWidth:"xl",children:[(0,Xt.jsxs)(Ot.DialogTitle,{children:["Stack trace",(0,Xt.jsx)(Ot.IconButton,{onClick:t,sx:{position:"absolute",right:8,top:8},children:(0,Xt.jsx)(js,{})})]}),(0,Xt.jsx)(Ot.DialogContent,{children:n===void 0?(0,Xt.jsx)(cf,{variant:"h6"}):(0,Xt.jsx)(sf,{text:m,extra:r})}),(0,Xt.jsxs)(Ot.DialogActions,{children:[(0,Xt.jsx)(Ot.Button,{variant:"contained",color:"secondary",onClick:async()=>{let{default:d}=await Promise.resolve().then(()=>f($C(),1));d(m),c(!0),setTimeout(()=>{c(!1)},1e3)},children:s?"Copied!":"Copy stack trace to clipboard"}),(0,Xt.jsx)(Ot.Button,{variant:"contained",color:"primary",onClick:t,children:"Close"})]})]})}var Xt,mi,Ot,XC,lf,qT,VT,KC,rE=g(()=>{Xt=f(O(),1),mi=f(M(),1);Eu();Ot=f(P(),1),XC=f(FC(),1);HC();qC();lf={},qT=/\/\/# sourceMappingURL=(.*)/,VT=/(.*)((?:https?|file):\/\/.*):(\d+):(\d+)/;KC=1e4});function XT(e){let t="",r="is not assignable",n=e.indexOf(r);if(n!==-1){let o=e.slice(0,n+r.length),i=/.*at path "(.*)" snapshot `(.*)` is not assignable/m.exec(o);i&&(e=`Failed to load element at ${i[1]}...Failed element had snapshot`,t=i[2]);let a=/.*snapshot `(.*)` is not assignable/.exec(o);a&&(e="Failed to load element...Failed element had snapshot",t=a[1])}return t}function ZT({error:e,onReset:t}){let{classes:r}=nE(),[n,o]=(0,gi.useState)(!1);return(0,kt.jsxs)("div",{className:r.iconFloat,children:[typeof e=="object"&&e&&"stack"in e?(0,kt.jsx)(pi.Tooltip,{title:"Get stack trace",children:(0,kt.jsx)(pi.IconButton,{onClick:()=>{o(!0)},color:"primary",children:(0,kt.jsx)(Wh,{})})}):null,t?(0,kt.jsx)(pi.Tooltip,{title:"Retry",children:(0,kt.jsx)(pi.IconButton,{onClick:t,color:"primary",children:(0,kt.jsx)(qh,{})})}):null,n?(0,kt.jsx)(gi.Suspense,{fallback:null,children:(0,kt.jsx)(KT,{error:e,onClose:()=>{o(!1)}})}):null]})}function ek({error:e,onReset:t}){let{classes:r}=nE(),n=`${e}`,o=n.indexOf("expected an instance of"),i=o!==-1?n.slice(0,o):n,a=XT(n);return(0,kt.jsxs)(Vu,{children:[i.slice(0,1e4),(0,kt.jsx)(ZT,{error:e,onReset:t}),a?(0,kt.jsx)("pre",{className:r.bg,children:JSON.stringify(JSON.parse(a),null,2)}):null]})}var kt,gi,pi,KT,nE,oE,iE=g(()=>{kt=f(O(),1),gi=f(M(),1);Vh();zh();pi=f(P(),1);uC();bt();KT=(0,gi.lazy)(()=>Promise.resolve().then(()=>(rE(),tE))),nE=oe()(e=>({bg:{background:e.palette.divider,border:"1px solid black",margin:20},iconFloat:{float:"right",marginLeft:100}}));oE=ek});var sE=j((J8,aE)=>{"use strict";var tk=/["'&<>]/;aE.exports=rk;function rk(e){var t=""+e,r=tk.exec(t);if(!r)return t;var n,o="",i=0,a=0;for(i=r.index;i<t.length;i++){switch(t.charCodeAt(i)){case 34:n="&quot;";break;case 38:n="&amp;";break;case 39:n="&#39;";break;case 60:n="&lt;";break;case 62:n="&gt;";break;default:continue}a!==i&&(o+=t.substring(a,i)),a=i+1,o+=n}return a!==i?o+t.substring(a,i):o}});function bc(e,t=0){let r=e.getUint32(t,!0);return e.getUint32(t+4,!0)*4294967296+r}var cE=g(()=>{});function nk(e,t){let r=new Array(t+1);r[0]=[0,0];let n=new DataView(e.buffer,e.byteOffset,e.byteLength);for(let o=0;o<t;o+=1){let i=o*Af;r[o+1]=[bc(n,i),bc(n,i+8)]}return r}function ok(e,t){let r=0,n=e.length;for(;r<n;){let o=r+n>>>1;e[o][1]<=t?r=o+1:n=o}return r}var Af,ba,lE=g(()=>{cE();Af=16;ba=class{filehandle;index;constructor({filehandle:t}){this.filehandle=t}_getIndex(){return this.index||(this.index=this._readIndex().catch(t=>{throw this.index=void 0,t})),this.index}async _readIndex(){let t=await this.filehandle.read(8,0),r=bc(new DataView(t.buffer,t.byteOffset,t.byteLength));if(r===0)return[[0,0]];if(r>Number.MAX_SAFE_INTEGER/Af)throw new TypeError("integer overflow");let n=await this.filehandle.read(Af*r,8);return nk(n,r)}async getRelevantBlocksForRead(t,r){if(t===0)return{blocks:[],nextCompressedPosition:void 0};let n=await this._getIndex(),o=r+t,i=ok(n,r)-1,a=i+1;for(;a<n.length&&n[a][1]<o;)a+=1;return{blocks:n.slice(i,a),nextCompressedPosition:n[a]?.[0]}}}});var uf,ff,Ba,xn,Sa,AE,uE,df=g(()=>{uf=0,ff=2,Ba=4,xn=0,Sa=1,AE=2,uE=-5});function ik(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function fE(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(var n in r)ik(r,n)&&(e[n]=r[n])}}return e}function Sc(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)}var Qa,va,hi,_r,Bc,tn,yn,ao,Ma=g(()=>{Qa={arraySet:function(e,t,r,n,o){if(t.subarray&&e.subarray){e.set(t.subarray(r,r+n),o);return}for(var i=0;i<n;i++)e[o+i]=t[r+i]},flattenChunks:function(e){var t,r,n,o,i,a;for(n=0,t=0,r=e.length;t<r;t++)n+=e[t].length;for(a=new Uint8Array(n),o=0,t=0,r=e.length;t<r;t++)i=e[t],a.set(i,o),o+=i.length;return a},Buf8:function(e){return new Uint8Array(e)},Buf16:function(e){return new Uint16Array(e)},Buf32:function(e){return new Int32Array(e)}},va={arraySet:function(e,t,r,n,o){for(var i=0;i<n;i++)e[o+i]=t[r+i]},flattenChunks:function(e){return[].concat.apply([],e)},Buf8:function(e){return new Array(e)},Buf16:function(e){return new Array(e)},Buf32:function(e){return new Array(e)}},hi=()=>{let e=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";return hi=()=>e,e},_r=(e,t,r,n,o)=>(_r=hi()?Qa.arraySet:va.arraySet,_r(e,t,r,n,o)),Bc=e=>(Bc=hi()?Qa.flattenChunks:va.flattenChunks,Bc(e)),tn=e=>(tn=hi()?Qa.Buf8:va.Buf8,tn(e)),yn=e=>(yn=hi()?Qa.Buf16:va.Buf16,yn(e)),ao=e=>(ao=hi()?Qa.Buf32:va.Buf32,ao(e))});function pf(e){var t,r,n,o,i,a=e.length,s=0;for(o=0;o<a;o++)r=e.charCodeAt(o),(r&64512)===55296&&o+1<a&&(n=e.charCodeAt(o+1),(n&64512)===56320&&(r=65536+(r-55296<<10)+(n-56320),o++)),s+=r<128?1:r<2048?2:r<65536?3:4;for(t=new Uint8Array(s),i=0,o=0;i<s;o++)r=e.charCodeAt(o),(r&64512)===55296&&o+1<a&&(n=e.charCodeAt(o+1),(n&64512)===56320&&(r=65536+(r-55296<<10)+(n-56320),o++)),r<128?t[i++]=r:r<2048?(t[i++]=192|r>>>6,t[i++]=128|r&63):r<65536?(t[i++]=224|r>>>12,t[i++]=128|r>>>6&63,t[i++]=128|r&63):(t[i++]=240|r>>>18,t[i++]=128|r>>>12&63,t[i++]=128|r>>>6&63,t[i++]=128|r&63);return t}function ak(e,t){if(t<65534&&(e.subarray&&mE()||!e.subarray&&dE()))return String.fromCharCode.apply(null,Sc(e,t));for(var r="",n=0;n<t;n++)r+=String.fromCharCode(e[n]);return r}function pE(e){for(var t=new Uint8Array(e.length),r=0,n=t.length;r<n;r++)t[r]=e.charCodeAt(r);return t}function gE(e,t){var r,n,o,i,a=t||e.length,s=new Array(a*2);for(n=0,r=0;r<a;){if(o=e[r++],o<128){s[n++]=o;continue}if(i=mf(o),i>4){s[n++]=65533,r+=i-1;continue}for(o&=i===2?31:i===3?15:7;i>1&&r<a;)o=o<<6|e[r++]&63,i--;if(i>1){s[n++]=65533;continue}o<65536?s[n++]=o:(o-=65536,s[n++]=55296|o>>10&1023,s[n++]=56320|o&1023)}return ak(s,n)}function hE(e,t){var r;for(t=t||e.length,t>e.length&&(t=e.length),r=t-1;r>=0&&(e[r]&192)===128;)r--;return r<0||r===0?t:r+mf(e[r])>t?r:t}var dE,mE,mf,CE=g(()=>{Ma();dE=function(){let e=!0;try{String.fromCharCode.apply(null,[0])}catch{e=!1}return dE=()=>e,e},mE=function(){let e=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{e=!1}return mE=()=>e,e},mf=function(e){for(var t=tn(256),r=0;r<256;r++)t[r]=r>=252?6:r>=248?5:r>=240?4:r>=224?3:r>=192?2:1;return t[254]=t[254]=1,mf=n=>t[n],t[e]}});function gf(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}var EE=g(()=>{});function _a(e,t,r,n){for(var o=e&65535|0,i=e>>>16&65535|0,a=0;r!==0;){a=r>2e3?2e3:r,r-=a;do o=o+t[n++]|0,i=i+o|0;while(--a);o%=65521,i%=65521}return o|i<<16|0}var IE=g(()=>{});function sk(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=e&1?3988292384^e>>>1:e>>>1;t[r]=e}return t}function Zt(e,t,r,n){var o=xE(),i=n+r;e^=-1;for(var a=n;a<i;a++)e=e>>>8^o[(e^t[a])&255];return e^-1}var xE,yE=g(()=>{xE=function(){let e=sk();return xE=()=>e,e}});function hf(e,t){var r,n,o,i,a,s,c,l,A,u,m,d,p,E,x,I,C,w,y,b,Q,S,k,T,_;r=e.state,n=e.next_in,T=e.input,o=n+(e.avail_in-5),i=e.next_out,_=e.output,a=i-(t-e.avail_out),s=i+(e.avail_out-257),c=r.dmax,l=r.wsize,A=r.whave,u=r.wnext,m=r.window,d=r.hold,p=r.bits,E=r.lencode,x=r.distcode,I=(1<<r.lenbits)-1,C=(1<<r.distbits)-1;e:do{p<15&&(d+=T[n++]<<p,p+=8,d+=T[n++]<<p,p+=8),w=E[d&I];t:for(;;){if(y=w>>>24,d>>>=y,p-=y,y=w>>>16&255,y===0)_[i++]=w&65535;else if(y&16){b=w&65535,y&=15,y&&(p<y&&(d+=T[n++]<<p,p+=8),b+=d&(1<<y)-1,d>>>=y,p-=y),p<15&&(d+=T[n++]<<p,p+=8,d+=T[n++]<<p,p+=8),w=x[d&C];r:for(;;){if(y=w>>>24,d>>>=y,p-=y,y=w>>>16&255,y&16){if(Q=w&65535,y&=15,p<y&&(d+=T[n++]<<p,p+=8,p<y&&(d+=T[n++]<<p,p+=8)),Q+=d&(1<<y)-1,Q>c){e.msg="invalid distance too far back",r.mode=Qc;break e}if(d>>>=y,p-=y,y=i-a,Q>y){if(y=Q-y,y>A&&r.sane){e.msg="invalid distance too far back",r.mode=Qc;break e}if(S=0,k=m,u===0){if(S+=l-y,y<b){b-=y;do _[i++]=m[S++];while(--y);S=i-Q,k=_}}else if(u<y){if(S+=l+u-y,y-=u,y<b){b-=y;do _[i++]=m[S++];while(--y);if(S=0,u<b){y=u,b-=y;do _[i++]=m[S++];while(--y);S=i-Q,k=_}}}else if(S+=u-y,y<b){b-=y;do _[i++]=m[S++];while(--y);S=i-Q,k=_}for(;b>2;)_[i++]=k[S++],_[i++]=k[S++],_[i++]=k[S++],b-=3;b&&(_[i++]=k[S++],b>1&&(_[i++]=k[S++]))}else{S=i-Q;do _[i++]=_[S++],_[i++]=_[S++],_[i++]=_[S++],b-=3;while(b>2);b&&(_[i++]=_[S++],b>1&&(_[i++]=_[S++]))}}else if((y&64)===0){w=x[(w&65535)+(d&(1<<y)-1)];continue r}else{e.msg="invalid distance code",r.mode=Qc;break e}break}}else if((y&64)===0){w=E[(w&65535)+(d&(1<<y)-1)];continue t}else if(y&32){r.mode=ck;break e}else{e.msg="invalid literal/length code",r.mode=Qc;break e}break}}while(n<o&&i<s);b=p>>3,n-=b,p-=b<<3,d&=(1<<p)-1,e.next_in=n,e.next_out=i,e.avail_in=n<o?5+(o-n):5-(n-o),e.avail_out=i<s?257+(s-i):257-(i-s),r.hold=d,r.bits=p}var Qc,ck,wE=g(()=>{Qc=30,ck=12});function so(e,t,r,n,o,i,a,s){var c=s.bits,l=0,A=0,u=0,m=0,d=0,p=0,E=0,x=0,I=0,C=0,w,y,b,Q,S,k=null,T=0,_,v=yn(Ci+1),L=yn(Ci+1),U=null,Y=0,ke,te,Re;for(l=0;l<=Ci;l++)v[l]=0;for(A=0;A<n;A++)v[t[r+A]]++;for(d=c,m=Ci;m>=1&&v[m]===0;m--);if(d>m&&(d=m),m===0)return o[i++]=1<<24|64<<16|0,o[i++]=1<<24|64<<16|0,s.bits=1,0;for(u=1;u<m&&v[u]===0;u++);for(d<u&&(d=u),x=1,l=1;l<=Ci;l++)if(x<<=1,x-=v[l],x<0)return-1;if(x>0&&(e===SE||m!==1))return-1;for(L[1]=0,l=1;l<Ci;l++)L[l+1]=L[l]+v[l];for(A=0;A<n;A++)t[r+A]!==0&&(a[L[t[r+A]]++]=A);if(e===SE?(k=U=a,_=19):e===Cf?(k=lk,T-=257,U=Ak,Y-=257,_=256):(k=uk,U=fk,_=-1),C=0,A=0,l=u,S=i,p=d,E=0,b=-1,I=1<<d,Q=I-1,e===Cf&&I>bE||e===QE&&I>BE)return 1;for(;;){ke=l-E,a[A]<_?(te=0,Re=a[A]):a[A]>_?(te=U[Y+a[A]],Re=k[T+a[A]]):(te=96,Re=0),w=1<<l-E,y=1<<p,u=y;do y-=w,o[S+(C>>E)+y]=ke<<24|te<<16|Re|0;while(y!==0);for(w=1<<l-1;C&w;)w>>=1;if(w!==0?(C&=w-1,C+=w):C=0,A++,--v[l]===0){if(l===m)break;l=t[r+a[A]]}if(l>d&&(C&Q)!==b){for(E===0&&(E=d),S+=u,p=l-E,x=1<<p;p+E<m&&(x-=v[p+E],!(x<=0));)p++,x<<=1;if(I+=1<<p,e===Cf&&I>bE||e===QE&&I>BE)return 1;b=C&Q,o[b]=d<<24|p<<16|S-i|0}}return C!==0&&(o[S+C]=l-E<<24|64<<16|0),s.bits=d,0}var Ci,bE,BE,SE,Cf,QE,lk,Ak,uk,fk,vE=g(()=>{Ma();Ci=15,bE=852,BE=592,SE=0,Cf=1,QE=2,lk=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],Ak=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],uk=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],fk=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]});function XE(e){return(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24)}function xk(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=yn(320),this.work=yn(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function yk(e){var t;return!e||!e.state?er:(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=nI,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=ao(Ek),t.distcode=t.distdyn=ao(Ik),t.sane=1,t.back=-1,co)}function wk(e){var t;return!e||!e.state?er:(t=e.state,t.wsize=0,t.whave=0,t.wnext=0,yk(e))}function bk(e,t){var r,n;return!e||!e.state||(n=e.state,t<0?(r=0,t=-t):(r=(t>>4)+1,t<48&&(t&=15)),t&&(t<8||t>15))?er:(n.window!==null&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,wk(e))}function oI(e,t){var r,n;return e?(n=new xk,e.state=n,n.window=null,r=bk(e,t),r!==co&&(e.state=null),r):er}function Bk(e){if(ZE){var t;for(yf=ao(512),wf=ao(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(so(eI,e.lens,0,288,yf,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;so(tI,e.lens,0,32,wf,0,e.work,{bits:5}),ZE=!1}e.lencode=yf,e.lenbits=9,e.distcode=wf,e.distbits=5}function iI(e,t,r,n){var o,i=e.state;return i.window===null&&(i.wsize=1<<i.wbits,i.wnext=0,i.whave=0,i.window=tn(i.wsize)),n>=i.wsize?(_r(i.window,t,r-i.wsize,i.wsize,0),i.wnext=0,i.whave=i.wsize):(o=i.wsize-i.wnext,o>n&&(o=n),_r(i.window,t,r-n,o,i.wnext),n-=o,n?(_r(i.window,t,r-n,n,0),i.wnext=n,i.whave=i.wsize):(i.wnext+=o,i.wnext===i.wsize&&(i.wnext=0),i.whave<i.wsize&&(i.whave+=o))),0}function aI(e,t){var r,n,o,i,a,s,c,l,A,u,m,d,p,E,x=0,I,C,w,y,b,Q,S,k,T=tn(4),_,v,L=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&e.avail_in!==0)return er;r=e.state,r.mode===rn&&(r.mode=Ef),a=e.next_out,o=e.output,c=e.avail_out,i=e.next_in,n=e.input,s=e.avail_in,l=r.hold,A=r.bits,u=s,m=c,k=co;e:for(;;)switch(r.mode){case nI:if(r.wrap===0){r.mode=Ef;break}for(;A<16;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(r.wrap&2&&l===35615){r.check=0,T[0]=l&255,T[1]=l>>>8&255,r.check=Zt(r.check,T,2,0),l=0,A=0,r.mode=TE;break}if(r.flags=0,r.head&&(r.head.done=!1),!(r.wrap&1)||(((l&255)<<8)+(l>>8))%31){e.msg="incorrect header check",r.mode=be;break}if((l&15)!==_E){e.msg="unknown compression method",r.mode=be;break}if(l>>>=4,A-=4,S=(l&15)+8,r.wbits===0)r.wbits=S;else if(S>r.wbits){e.msg="invalid window size",r.mode=be;break}r.dmax=1<<S,e.adler=r.check=1,r.mode=l&512?OE:rn,l=0,A=0;break;case TE:for(;A<16;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(r.flags=l,(r.flags&255)!==_E){e.msg="unknown compression method",r.mode=be;break}if(r.flags&57344){e.msg="unknown header flags set",r.mode=be;break}r.head&&(r.head.text=l>>8&1),r.flags&512&&(T[0]=l&255,T[1]=l>>>8&255,r.check=Zt(r.check,T,2,0)),l=0,A=0,r.mode=kE;case kE:for(;A<32;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.head&&(r.head.time=l),r.flags&512&&(T[0]=l&255,T[1]=l>>>8&255,T[2]=l>>>16&255,T[3]=l>>>24&255,r.check=Zt(r.check,T,4,0)),l=0,A=0,r.mode=DE;case DE:for(;A<16;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.head&&(r.head.xflags=l&255,r.head.os=l>>8),r.flags&512&&(T[0]=l&255,T[1]=l>>>8&255,r.check=Zt(r.check,T,2,0)),l=0,A=0,r.mode=NE;case NE:if(r.flags&1024){for(;A<16;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.length=l,r.head&&(r.head.extra_len=l),r.flags&512&&(T[0]=l&255,T[1]=l>>>8&255,r.check=Zt(r.check,T,2,0)),l=0,A=0}else r.head&&(r.head.extra=null);r.mode=LE;case LE:if(r.flags&1024&&(d=r.length,d>s&&(d=s),d&&(r.head&&(S=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),_r(r.head.extra,n,i,d,S)),r.flags&512&&(r.check=Zt(r.check,n,d,i)),s-=d,i+=d,r.length-=d),r.length))break e;r.length=0,r.mode=RE;case RE:if(r.flags&2048){if(s===0)break e;d=0;do S=n[i+d++],r.head&&S&&r.length<65536&&(r.head.name+=String.fromCharCode(S));while(S&&d<s);if(r.flags&512&&(r.check=Zt(r.check,n,d,i)),s-=d,i+=d,S)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=FE;case FE:if(r.flags&4096){if(s===0)break e;d=0;do S=n[i+d++],r.head&&S&&r.length<65536&&(r.head.comment+=String.fromCharCode(S));while(S&&d<s);if(r.flags&512&&(r.check=Zt(r.check,n,d,i)),s-=d,i+=d,S)break e}else r.head&&(r.head.comment=null);r.mode=PE;case PE:if(r.flags&512){for(;A<16;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(l!==(r.check&65535)){e.msg="header crc mismatch",r.mode=be;break}l=0,A=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=rn;break;case OE:for(;A<32;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}e.adler=r.check=XE(l),l=0,A=0,r.mode=Tc;case Tc:if(r.havedict===0)return e.next_out=a,e.avail_out=c,e.next_in=i,e.avail_in=s,r.hold=l,r.bits=A,gk;e.adler=r.check=1,r.mode=rn;case rn:if(t===mk||t===vc)break e;case Ef:if(r.last){l>>>=A&7,A-=A&7,r.mode=xf;break}for(;A<3;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}switch(r.last=l&1,l>>>=1,A-=1,l&3){case 0:r.mode=GE;break;case 1:if(Bk(r),r.mode=Mc,t===vc){l>>>=2,A-=2;break e}break;case 2:r.mode=HE;break;case 3:e.msg="invalid block type",r.mode=be}l>>>=2,A-=2;break;case GE:for(l>>>=A&7,A-=A&7;A<32;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if((l&65535)!==(l>>>16^65535)){e.msg="invalid stored block lengths",r.mode=be;break}if(r.length=l&65535,l=0,A=0,r.mode=If,t===vc)break e;case If:r.mode=UE;case UE:if(d=r.length,d){if(d>s&&(d=s),d>c&&(d=c),d===0)break e;_r(o,n,i,d,a),s-=d,i+=d,c-=d,a+=d,r.length-=d;break}r.mode=rn;break;case HE:for(;A<14;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(r.nlen=(l&31)+257,l>>>=5,A-=5,r.ndist=(l&31)+1,l>>>=5,A-=5,r.ncode=(l&15)+4,l>>>=4,A-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=be;break}r.have=0,r.mode=jE;case jE:for(;r.have<r.ncode;){for(;A<3;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.lens[L[r.have++]]=l&7,l>>>=3,A-=3}for(;r.have<19;)r.lens[L[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,_={bits:r.lenbits},k=so(dk,r.lens,0,19,r.lencode,0,r.work,_),r.lenbits=_.bits,k){e.msg="invalid code lengths set",r.mode=be;break}r.have=0,r.mode=JE;case JE:for(;r.have<r.nlen+r.ndist;){for(;x=r.lencode[l&(1<<r.lenbits)-1],I=x>>>24,C=x>>>16&255,w=x&65535,!(I<=A);){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(w<16)l>>>=I,A-=I,r.lens[r.have++]=w;else{if(w===16){for(v=I+2;A<v;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(l>>>=I,A-=I,r.have===0){e.msg="invalid bit length repeat",r.mode=be;break}S=r.lens[r.have-1],d=3+(l&3),l>>>=2,A-=2}else if(w===17){for(v=I+3;A<v;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}l>>>=I,A-=I,S=0,d=3+(l&7),l>>>=3,A-=3}else{for(v=I+7;A<v;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}l>>>=I,A-=I,S=0,d=11+(l&127),l>>>=7,A-=7}if(r.have+d>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=be;break}for(;d--;)r.lens[r.have++]=S}}if(r.mode===be)break;if(r.lens[256]===0){e.msg="invalid code -- missing end-of-block",r.mode=be;break}if(r.lenbits=9,_={bits:r.lenbits},k=so(eI,r.lens,0,r.nlen,r.lencode,0,r.work,_),r.lenbits=_.bits,k){e.msg="invalid literal/lengths set",r.mode=be;break}if(r.distbits=6,r.distcode=r.distdyn,_={bits:r.distbits},k=so(tI,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,_),r.distbits=_.bits,k){e.msg="invalid distances set",r.mode=be;break}if(r.mode=Mc,t===vc)break e;case Mc:r.mode=_c;case _c:if(s>=6&&c>=258){e.next_out=a,e.avail_out=c,e.next_in=i,e.avail_in=s,r.hold=l,r.bits=A,hf(e,m),a=e.next_out,o=e.output,c=e.avail_out,i=e.next_in,n=e.input,s=e.avail_in,l=r.hold,A=r.bits,r.mode===rn&&(r.back=-1);break}for(r.back=0;x=r.lencode[l&(1<<r.lenbits)-1],I=x>>>24,C=x>>>16&255,w=x&65535,!(I<=A);){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(C&&(C&240)===0){for(y=I,b=C,Q=w;x=r.lencode[Q+((l&(1<<y+b)-1)>>y)],I=x>>>24,C=x>>>16&255,w=x&65535,!(y+I<=A);){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}l>>>=y,A-=y,r.back+=y}if(l>>>=I,A-=I,r.back+=I,r.length=w,C===0){r.mode=zE;break}if(C&32){r.back=-1,r.mode=rn;break}if(C&64){e.msg="invalid literal/length code",r.mode=be;break}r.extra=C&15,r.mode=qE;case qE:if(r.extra){for(v=r.extra;A<v;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.length+=l&(1<<r.extra)-1,l>>>=r.extra,A-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=VE;case VE:for(;x=r.distcode[l&(1<<r.distbits)-1],I=x>>>24,C=x>>>16&255,w=x&65535,!(I<=A);){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if((C&240)===0){for(y=I,b=C,Q=w;x=r.distcode[Q+((l&(1<<y+b)-1)>>y)],I=x>>>24,C=x>>>16&255,w=x&65535,!(y+I<=A);){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}l>>>=y,A-=y,r.back+=y}if(l>>>=I,A-=I,r.back+=I,C&64){e.msg="invalid distance code",r.mode=be;break}r.offset=w,r.extra=C&15,r.mode=YE;case YE:if(r.extra){for(v=r.extra;A<v;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}r.offset+=l&(1<<r.extra)-1,l>>>=r.extra,A-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=be;break}r.mode=WE;case WE:if(c===0)break e;if(d=m-c,r.offset>d){if(d=r.offset-d,d>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=be;break}d>r.wnext?(d-=r.wnext,p=r.wsize-d):p=r.wnext-d,d>r.length&&(d=r.length),E=r.window}else E=o,p=a-r.offset,d=r.length;d>c&&(d=c),c-=d,r.length-=d;do o[a++]=E[p++];while(--d);r.length===0&&(r.mode=_c);break;case zE:if(c===0)break e;o[a++]=r.length,c--,r.mode=_c;break;case xf:if(r.wrap){for(;A<32;){if(s===0)break e;s--,l|=n[i++]<<A,A+=8}if(m-=c,e.total_out+=m,r.total+=m,m&&(e.adler=r.check=r.flags?Zt(r.check,o,m,a-m):_a(r.check,o,m,a-m)),m=c,(r.flags?l:XE(l))!==r.check){e.msg="incorrect data check",r.mode=be;break}l=0,A=0}r.mode=$E;case $E:if(r.wrap&&r.flags){for(;A<32;){if(s===0)break e;s--,l+=n[i++]<<A,A+=8}if(l!==(r.total&4294967295)){e.msg="incorrect length check",r.mode=be;break}l=0,A=0}r.mode=KE;case KE:k=pk;break e;case be:k=rI;break e;case Bf:return bf;case Ck:default:return er}return e.next_out=a,e.avail_out=c,e.next_in=i,e.avail_in=s,r.hold=l,r.bits=A,(r.wsize||m!==e.avail_out&&r.mode<be&&(r.mode<xf||t!==ME))&&iI(e,e.output,e.next_out,m-e.avail_out)?(r.mode=Bf,bf):(u-=e.avail_in,m-=e.avail_out,e.total_in+=u,e.total_out+=m,r.total+=m,r.wrap&&m&&(e.adler=r.check=r.flags?Zt(r.check,o,m,e.next_out-m):_a(r.check,o,m,e.next_out-m)),e.data_type=r.bits+(r.last?64:0)+(r.mode===rn?128:0)+(r.mode===Mc||r.mode===If?256:0),(u===0&&m===0||t===ME)&&k===co&&(k=hk),k)}function sI(e){if(!e||!e.state)return er;var t=e.state;return t.window&&(t.window=null),e.state=null,co}function cI(e,t){var r;return!e||!e.state||(r=e.state,(r.wrap&2)===0)?er:(r.head=t,t.done=!1,co)}function Sf(e,t){var r=t.length,n,o,i;return!e||!e.state||(n=e.state,n.wrap!==0&&n.mode!==Tc)?er:n.mode===Tc&&(o=1,o=_a(o,t,r,0),o!==n.check)?rI:(i=iI(e,t,r,r),i?(n.mode=Bf,bf):(n.havedict=1,co))}var dk,eI,tI,ME,mk,vc,co,pk,gk,er,rI,bf,hk,_E,nI,TE,kE,DE,NE,LE,RE,FE,PE,OE,Tc,rn,Ef,GE,If,UE,HE,jE,JE,Mc,_c,qE,VE,YE,WE,zE,xf,$E,KE,be,Bf,Ck,Ek,Ik,ZE,yf,wf,lI=g(()=>{IE();yE();wE();vE();Ma();dk=0,eI=1,tI=2,ME=4,mk=5,vc=6,co=0,pk=1,gk=2,er=-2,rI=-3,bf=-4,hk=-5,_E=8,nI=1,TE=2,kE=3,DE=4,NE=5,LE=6,RE=7,FE=8,PE=9,OE=10,Tc=11,rn=12,Ef=13,GE=14,If=15,UE=16,HE=17,jE=18,JE=19,Mc=20,_c=21,qE=22,VE=23,YE=24,WE=25,zE=26,xf=27,$E=28,KE=29,be=30,Bf=31,Ck=32,Ek=852,Ik=592;ZE=!0});var kc,AI=g(()=>{kc={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});function Qf(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}var uI=g(()=>{});function Sk(e,t){var r=new Mf(t);if(r.push(e,!0),r.err)throw r.msg||kc[r.err];return r.result}var vf,Mf,fI,dI=g(()=>{Ma();CE();df();EE();lI();AI();uI();vf=Object.prototype.toString,Mf=class e{constructor(t){if(!(this instanceof e))return new e(t);this.options=fE({chunkSize:16384,windowBits:0,to:""},t||{});var r=this.options;r.raw&&r.windowBits>=0&&r.windowBits<16&&(r.windowBits=-r.windowBits,r.windowBits===0&&(r.windowBits=-15)),r.windowBits>=0&&r.windowBits<16&&!(t&&t.windowBits)&&(r.windowBits+=32),r.windowBits>15&&r.windowBits<48&&(r.windowBits&15)===0&&(r.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Qf,this.strm.avail_out=0;var n=oI(this.strm,r.windowBits);if(n!==xn)throw new Error(kc[n]);if(this.header=new gf,cI(this.strm,this.header),r.dictionary&&(typeof r.dictionary=="string"?r.dictionary=pf(r.dictionary):vf.call(r.dictionary)==="[object ArrayBuffer]"&&(r.dictionary=new Uint8Array(r.dictionary)),r.raw&&(n=Sf(this.strm,r.dictionary),n!==xn)))throw new Error(kc[n])}push(t,r){var n=this.strm,o=this.options.chunkSize,i=this.options.dictionary,a,s,c,l,A,u,m=!1;if(this.ended)return!1;s=r===~~r?r:r===!0?Ba:uf,typeof t=="string"?n.input=pE(t):vf.call(t)==="[object ArrayBuffer]"?n.input=new Uint8Array(t):n.input=t,n.next_in=0,n.avail_in=n.input.length;do{if(n.avail_out===0&&(n.output=tn(o),n.next_out=0,n.avail_out=o),a=aI(n,uf),a===AE&&i&&(typeof i=="string"?u=pf(i):vf.call(i)==="[object ArrayBuffer]"?u=new Uint8Array(i):u=i,a=Sf(this.strm,u)),a===uE&&m===!0&&(a=xn,m=!1),a!==Sa&&a!==xn)return this.onEnd(a),this.ended=!0,!1;n.next_out&&(n.avail_out===0||a===Sa||n.avail_in===0&&(s===Ba||s===ff))&&(this.options.to==="string"?(c=hE(n.output,n.next_out),l=n.next_out-c,A=gE(n.output,c),n.next_out=l,n.avail_out=o-l,l&&_r(n.output,n.output,c,l,0),this.onData(A)):this.onData(Sc(n.output,n.next_out))),n.avail_in===0&&n.avail_out===0&&(m=!0)}while((n.avail_in>0||n.avail_out===0)&&a!==Sa);return a===Sa&&(s=Ba),s===Ba?(a=sI(this.strm),this.onEnd(a),this.ended=!0,a===xn):(s===ff&&(this.onEnd(xn),n.avail_out=0),!0)}onData(t){this.chunks.push(t)}onEnd(t){t===xn&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=Bc(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg}};fI=Sk});var mI=g(()=>{});var pI=g(()=>{df();dI();mI()});function CI(e){try{let a=Ae.__wbindgen_add_to_stack_pointer(-16),s=xI(e,Ae.__wbindgen_export2),c=Nf;Ae.decompress_all(a,s,c);var t=Gt().getInt32(a+0,!0),r=Gt().getInt32(a+4,!0),n=Gt().getInt32(a+8,!0),o=Gt().getInt32(a+12,!0);if(o)throw yI(n);var i=EI(t,r).slice();return Ae.__wbindgen_export(t,r*1,1),i}finally{Ae.__wbindgen_add_to_stack_pointer(16)}}function vk(e,t,r,n,o){try{let c=Ae.__wbindgen_add_to_stack_pointer(-16),l=xI(e,Ae.__wbindgen_export2),A=Nf;Ae.decompress_chunk_slice(c,l,A,t,r,n,o);var i=Gt().getInt32(c+0,!0),a=Gt().getInt32(c+4,!0),s=Gt().getInt32(c+8,!0);if(s)throw yI(a);return Ii.__wrap(i)}finally{Ae.__wbindgen_add_to_stack_pointer(16)}}function Mk(e,t){let r=Error(II(e,t));return Tk(r)}function _k(e,t){throw new Error(II(e,t))}function Tk(e){ka===nn.length&&nn.push(nn.length+1);let t=ka;return ka=nn[t],nn[t]=e,t}function kk(e){e<1028||(nn[e]=ka,ka=e)}function hI(e,t){return e=e>>>0,Dk().subarray(e/8,e/8+t)}function EI(e,t){return e=e>>>0,Df().subarray(e/1,e/1+t)}function Gt(){return(Ei===null||Ei.buffer.detached===!0||Ei.buffer.detached===void 0&&Ei.buffer!==Ae.memory.buffer)&&(Ei=new DataView(Ae.memory.buffer)),Ei}function Dk(){return(Dc===null||Dc.byteLength===0)&&(Dc=new Float64Array(Ae.memory.buffer)),Dc}function II(e,t){return Rk(e>>>0,t)}function Df(){return(Nc===null||Nc.byteLength===0)&&(Nc=new Uint8Array(Ae.memory.buffer)),Nc}function Nk(e){return nn[e]}function xI(e,t){let r=t(e.length*1,1)>>>0;return Df().set(e,r/1),Nf=e.length,r}function yI(e){let t=Nk(e);return kk(e),t}function Rk(e,t){return _f+=t,_f>=Lk&&(Lc=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}),Lc.decode(),_f=t),Lc.decode(Df().subarray(e,e+t))}function wI(e){Ae=e}async function Fk(){return Ta||(Tf||(Tf=(async()=>{let t=await(await fetch(Qk)).arrayBuffer(),{instance:r}=await WebAssembly.instantiate(t,{"./bgzf_wasm_bg.js":kf});return Ta=r.exports,wI(Ta),Ta})()),Tf)}async function bI(e){return await Fk(),CI(e)}var lo,kf,Qk,Ii,gI,Ei,Dc,Nc,nn,ka,Lc,Lk,_f,Nf,Ae,Ta,Tf,BI=g(()=>{lo={};lo.d=(e,t)=>{for(var r in t)lo.o(t,r)&&!lo.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})};lo.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);lo.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};kf={};lo.r(kf);lo.d(kf,{ChunkSliceResult:()=>Ii,__wbg_Error_ef53bc310eb298a0:()=>Mk,__wbg___wbindgen_throw_1506f2235d1bdba0:()=>_k,__wbg_set_wasm:()=>wI,decompress_all:()=>CI,decompress_chunk_slice:()=>vk});Qk="data:application/wasm;base64,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ADYCACADQRitQiCGIAOthDcDCEGfgsAAIANBCGogAhAxAAs0AAJAIAFpQQFHDQAgAEGAgICAeCABa0sNAAJAIABFDQAQaSAAIAEQVyIBRQ0BCyABDwsAC0AAAkAgACgCAEGAgICAeEYNACABIAAoAgQgACgCCBBMDwsgASgCACABKAIEIAAoAgwoAgAiACgCACAAKAIEEAsLOQACQCACQYCAxABGDQAgACACIAEoAhARBQBFDQBBAQ8LAkAgAw0AQQAPCyAAIAMgBCABKAIMEQcACzUBAX8CQCAARQ0AAkAgASgCACICRQ0AIAAgAhECAAsgASgCBCICRQ0AIAAgAiABKAIIEFILCyoBAX8jAEEQayIDJAAgAyACNgIMIAMgATYCCCADIAA2AgQgA0EEahBjAAstAQF/IwBBEGsiASQAIAEgACkCADcCCCABQQhqQZCUwAAgACgCCEEBQQAQFgALLAIBfwF+IwBBEGsiASQAIAApAgAhAiABIAA2AgwgASACNwIEIAFBBGoQZQALIwEBfyMAQRBrIgIkACACIAE2AgwgAiAANgIIIAJBCGoQZAALIAACQCABKAIARQ0AIABByJbAADYCBCAAIAE2AgAPCwALHgEBfwJAIAAoAgAiAkUNACABIAIgACgCBBBMDwsACxsBAX8QaSAAQQRqQQQQVyIBIAA2AgAgAUEEagseAQF/AkAgACgCACIBQQFIDQAgACgCBCABQQEQUgsLHgAgACgCACAAKAIEQQAoAtSZQCIAQQMgABsRBAAACyMBAX8CQEGMicAAECwiAA0AQcCIwABBOkH8iMAAEDcACyAACx8AAkAgAEGAgICAeHJBgICAgHhGDQAgASAAQQEQUgsLHAEBfwJAIAAoAgAiAUUNACAAKAIEIAFBARBSCwsXAAJAIAFBCUkNACABIAAQDw8LIAAQAgsVACAAQXxqIgAgACgCAEEEakEEEFILFAACQCAARQ0AIAAgARBeAAsQVQALEQAgACABQQF0QQFyIAIQMQALEgACQCABRQ0AIAAgASACEFILCxIAIAAgASACIAMgBEEAIAUQAwsVAAJAIABFDQAgACAAKAKoWhECAAsLGgAgAEEAKQKUlUA3AgggAEEAKQKMlUA3AgALGgAgAEEAKQKElUA3AgggAEEAKQL8lEA3AgALFgAgACgCACABIAIgACgC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AAGAAAACgAAAA4AAAASAAAAFgAAABoAAAAeAAAAIgAAACYAAAAqAAAALgAAADIAAAA2AAAAOgAAAD4AAABCAAAARgAAAEoAAABOAAAAUgAAAFYAAABaAAAAXgAAAGIAAABmAAAAagAAAG4AAAByAAAAdgAAAHoAAAB+AAAAggAAAIYAAACKAAAAjgAAAJIAAACWAAAAmgAAAJ4AAACiAAAApgAAAKoAAACuAAAAsgAAALYAAAC6AAAAvgAAAMIAAADGAAAAygAAAM4AAADSAAAA1gAAANoAAADeAAAA4gAAAOYAAADqAAAA7gAAAPIAAAD2AAAA+gAAAP4AAAECAAABBgAAAQoAAAEOAAABEgAAARYAAAEaAAABHgAAASIAAAEmAAABKgAAAS4AAAEyAAABNgAAAToAAAE+AAABQgAAAUYAAAFKAAABTgAAAVIAAAFWAAABWgAAAV4AAAFiAAABZgAAAWoAAAFuAAABcgAAAXYAAAF6AAABfgAAAYIAAAGGAAABigAAAY4AAAGSAAABlgAAAZoAAAGeAAABogAAAaYAAAGqAAABrgAAAbIAAAG2AAABugAAAb4AAAHCAAABxgAAAcoAAAHOAAAB0gAAAdYAAAHaAAAB3gAAAeIAAAHmAAAB6gAAAe4AAAHyAAAB9gAAAfoAAAH+AAACAgAAAgYAAAIKAAACDgAAAhIAAAIWAAACGgAAAh4AAAIiAAACJgAAAioAAAIuAAACMgAAAjYAAAI6AAACPgAAAkIAAAJGAAACSgAAAk4AAAJSAAACVgAAAloAAAJeAAACYgAAAmYAAAJqAAACbgAAAnIAAAJ2AAACegAAAn4AAAKCAAAChgAAAooAAAKOAAACkgAAApYAAAKaAAACngAAAqIAAAKmAAACqgAAAq4AAAKyAAACtgAAAroAAAK+AAACwgAAAsYAAALKAAACzgAAAtIAAALWAAAC2gAAAt4AAALiAAAC5gAAAuoAAALuAAAC8gAAAvYAAAL6AAAC/gAAAwIAAAMGAAADCgAAAw4AAAMSAAADFgAAAxoAAAMeAAADIgAAAyYAAAMqAAADLgAAAzIAAAM2AAADOgAAAz4AAANCAAADRgAAA0oAAANOAAADUgAAA1YAAANaAAADXgAAA2IAAANmAAADagAAA24AAANyAAADdgAAA3oAAAN+AAADggAAA4YAAAOKAAADjgAAA5IAAAOWAAADmgAAA54AAAOiAAADpgAAA6oAAAOuAAADsgAAA7YAAAO6AAADvgAAA8IAAAPGAAADygAAA84AAAPSAAAD1gAAA9oAAAPeAAAD4gAAA+YAAAPqAAAD7gAAA/IAAAP2AAAD+gAAA/4AAoAAAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgABAAsAAQANAAEADwABABEAAgATAAIAFwACABsAAgAfAAMAIwADACsAAwAzAAMAOwAEAEMABABTAAQAYwAEAHMABQCDAAUAowAFAMMABQDjAAAAAgEAAAIBAAACAQAAAAAIAAAABAAAAAQAAAAFAAAABgAAAAcAAAAIAAAADAAAAAQAAAAJAAAACgAAAAsAAAAAAAAACAAAAAQAAAAMAAAADQAAAA4AAAAPAAAAEAAAABAAAAAEAAAAEQAAABIAAAATAAAABwAAAG1dy9YsUOtjeEGmV3Ebi7krgVsBvYZR7Ay0wpzkyccEYXNzZXJ0aW9uIGZhaWxlZDogcHNpemUgPj0gc2l6ZSArIG1pbl9vdmVyaGVhZAAAOAIQACoAAACxBAAACQAAAGFzc2VydGlvbiBmYWlsZWQ6IHBzaXplIDw9IHNpemUgKyBtYXhfb3ZlcmhlYWQAADgCEAAqAAAAtwQAAA0AAAByd2xvY2sgb3ZlcmZsb3dlZCByZWFkIGxvY2tzIQEQAF0AAAAVAAAALAAAAAAAAAAIAAAABAAAABQAAAAIAAAADAAAAAQAAAAVAAAAcndsb2NrIGhhcyBub3QgYmVlbiBsb2NrZWQgZm9yIHJlYWRpbmcAACEBEABdAAAAPgAAAAkAAABjYXBhY2l0eSBvdmVyZmxvdwAAAOcBEABQAAAAHAAAAAUAAAAwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OVJlZkNlbGwgYWxyZWFkeSBib3Jyb3dlZABBpJnAAAsEBAAAAAApBG5hbWUBIgFWH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXIAPAlwcm9kdWNlcnMBDHByb2Nlc3NlZC1ieQIGd2FscnVzBjAuMjYuNAx3YXNtLWJpbmRnZW4HMC4yLjEyMg==",Ii=class e{static __wrap(t){let r=Object.create(e.prototype);return r.__wbg_ptr=t,gI.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let t=this.__wbg_ptr;return this.__wbg_ptr=0,gI.unregister(this),t}free(){let t=this.__destroy_into_raw();Ae.__wbg_chunksliceresult_free(t,0)}take_buffer(){try{let o=Ae.__wbindgen_add_to_stack_pointer(-16);Ae.chunksliceresult_take_buffer(o,this.__wbg_ptr);var t=Gt().getInt32(o+0,!0),r=Gt().getInt32(o+4,!0),n=EI(t,r).slice();return Ae.__wbindgen_export(t,r*1,1),n}finally{Ae.__wbindgen_add_to_stack_pointer(16)}}take_cpositions(){try{let o=Ae.__wbindgen_add_to_stack_pointer(-16);Ae.chunksliceresult_take_cpositions(o,this.__wbg_ptr);var t=Gt().getInt32(o+0,!0),r=Gt().getInt32(o+4,!0),n=hI(t,r).slice();return Ae.__wbindgen_export(t,r*8,8),n}finally{Ae.__wbindgen_add_to_stack_pointer(16)}}take_dpositions(){try{let o=Ae.__wbindgen_add_to_stack_pointer(-16);Ae.chunksliceresult_take_dpositions(o,this.__wbg_ptr);var t=Gt().getInt32(o+0,!0),r=Gt().getInt32(o+4,!0),n=hI(t,r).slice();return Ae.__wbindgen_export(t,r*8,8),n}finally{Ae.__wbindgen_add_to_stack_pointer(16)}}};Symbol.dispose&&(Ii.prototype[Symbol.dispose]=Ii.prototype.free);gI=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>Ae.__wbg_chunksliceresult_free(e,1));Ei=null;Dc=null;Nc=null;nn=new Array(1024).fill(void 0);nn.push(void 0,null,!0,!1);ka=nn.length;Lc=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});Lc.decode();Lk=2146435072,_f=0;Nf=0;Ta=null,Tf=null});function Pk(e){return e[0]===31&&e[1]===139}function SI(e){return e instanceof Error?e.message:`${e}`}async function Ok(e){if(typeof DecompressionStream<"u"){let t=new Blob([e]).stream().pipeThrough(new DecompressionStream("gzip"));return new Uint8Array(await new Response(t).arrayBuffer())}else return fI(e,void 0)}function Gk(e){return SI(e).includes("invalid gzip header")?new Error("problem decompressing block: incorrect gzip header check",{cause:e}):e}async function Rc(e){try{return await bI(e)}catch(t){if(SI(t).includes("invalid bgzf header")){if(Pk(e))return Ok(e);throw new Error("problem decompressing block: not a valid bgzf or gzip block",{cause:t})}throw Gk(t)}}var Lf=g(()=>{pI();BI()});function QI(e){let t=0;for(let o of e)t+=o.length;let r=new Uint8Array(t),n=0;for(let o of e)r.set(o,n),n+=o.length;return r}var vI=g(()=>{});function jk(e){let t=0,r=[],n=()=>{t--,r.shift()?.()};return async o=>{t>=e&&await new Promise(i=>{r.push(i)}),t++;try{return await o()}finally{n()}}}function Jk(e,t,r,n){let o=Math.max(0,r-t),i=Math.min(n,t+e.length)-t;return o<e.length?e.subarray(o,i):new Uint8Array(0)}var Uk,Hk,xi,MI=g(()=>{lE();Lf();vI();Uk=10,Hk=65536;xi=class{filehandle;gzi;limit;constructor({filehandle:t,gziFilehandle:r,blockConcurrency:n=Uk}){this.filehandle=t,this.gzi=new ba({filehandle:r}),this.limit=jk(n)}async _readAndUncompressBlock(t,r){let n=await this.filehandle.read(r,t);return Rc(n)}async read(t,r){let{blocks:n,nextCompressedPosition:o}=await this.gzi.getRelevantBlocksForRead(t,r);if(n.length===0)return new Uint8Array(0);let i=r+t,a=await Promise.all(n.map(([s,c],l)=>this.limit(async()=>{let A=n[l+1]?.[0]??o??s+Hk,u=await this._readAndUncompressBlock(s,A-s);return Jk(u,c,r,i)})));return QI(a)}}});var Rf=g(()=>{MI();Lf()});var TI=j((OO,_I)=>{_I.exports=JBrowseExports["react-dom"]});var DI=j((GO,kI)=>{kI.exports=JBrowseExports["react-dom/client"]});function NI(e){let t="",r=!1;for(let n=0,o=e.length;n<o;n++){let i=e[n];i==="<"?r=!0:i===">"?r=!1:r||(t+=i)}return t}var Ff=g(()=>{});var LI=g(()=>{});var RI=g(()=>{});var FI=g(()=>{});function Fc(e){return typeof e=="object"&&e!==null&&"uri"in e&&!!e.uri}var qk,Pf=g(()=>{qk=f(Rt(),1);FI()});var Vk,PI=g(()=>{Vk=f(Ar(),1)});var OI=g(()=>{});var GI=g(()=>{});var yi,Pc,Of,Gf,Yk,Da,Oc,UI=g(()=>{yi={METHOD:"method",PROPERTY:"property"},Pc=class{constructor(t,r){this.inst=t,this.args=r}},Of=class extends Pc{constructor(t,r){super(t,r),this.type=yi.METHOD}execute(t){t[this.inst](...this.args)}},Gf=class extends Pc{constructor(t,r){super(t,r),this.type=yi.PROPERTY}execute(t){t[this.inst]=this.args[0]}},Yk={[yi.METHOD]:Of,[yi.PROPERTY]:Gf},Da=class{constructor(t,r,n){return new Yk[t](r,n)}};Da.METHOD=yi.METHOD;Da.PROPERTY=yi.PROPERTY;Oc=Da});var HI,Tr,Gc,Uf=g(()=>{UI();HI=Object.freeze({METHODS:["addHitRegion","arc","arcTo","beginPath","bezierCurveTo","clearHitRegions","clearRect","clip","closePath","drawFocusIfNeeded","drawImage","ellipse","fill","fillRect","fillText","lineTo","moveTo","putImageData","quadraticCurveTo","rect","removeHitRegion","resetTransform","restore","rotate","save","scale","scrollPathIntoView","setLineDash","setTransform","stroke","strokeRect","strokeText","transform","translate"],PROPERTIES:["direction","fillStyle","filter","font","globalAlpha","globalCompositeOperation","imageSmoothingEnabled","imageSmoothingQuality","lineCap","lineDashOffset","lineJoin","lineWidth","miterLimit","shadowBlur","shadowColor","shadowOffsetX","shadowOffsetY","strokeStyle","textAlign","textBaseline"]}),Tr=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push"),fromJSON:Symbol.for("fromJSON")}),Gc=class{constructor(t=null){this[Tr.sequence]=[],t&&this[Tr.fromJSON](t)}[Tr.fromJSON](t={sequence:[]}){t.sequence.forEach(({type:r,inst:n,args:o})=>{this[Tr.push](r,n,o)})}[Tr.push](t,r,n){this[Tr.sequence].push(new Oc(t,r,n))}execute(t){t.save(),this[Tr.sequence].forEach(r=>r.execute(t)),t.restore()}toJSON(){return{sequence:this[Tr.sequence]}}};HI.METHODS.forEach(e=>{Object.defineProperty(Gc.prototype,e,{value:function(...r){this[Tr.push](Oc.METHOD,e,r)},writable:!1,enumerable:!0,configurable:!1})});HI.PROPERTIES.forEach(e=>{Object.defineProperty(Gc.prototype,e,{get(){throw`Invalid canvas sequencer interaction, cannot get ${e}.`},set(t){this[Tr.push](Oc.PROPERTY,e,[t])},enumerable:!0,configurable:!1})})});var ZO,JI=g(()=>{Uf();ZO=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push")})});var qI=g(()=>{JI();Uf()});var YI=j((i6,VI)=>{VI.exports=!1});var Wk,WI=g(()=>{qI();Wk=f(YI(),1)});var zk,$k,zI=g(()=>{zk=f(O(),1),$k=f(M(),1)});var $I=g(()=>{});var A6,u6,f6,d6,KI=g(()=>{A6=new Uint8Array([99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22]),u6=new Uint8Array([82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125]),f6=new Uint8Array([1,2,4,8,16,32,64,128,27,54]),d6=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298])});function Na(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Hf(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function jf(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function wi(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,i=[],a;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(s){a={error:s}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(a)throw a.error}}return i}function bi(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,i;n<o;n++)(i||!(n in t))&&(i||(i=Array.prototype.slice.call(t,0,n)),i[n]=t[n]);return e.concat(i||Array.prototype.slice.call(t))}var Hf,La=g(()=>{Hf=function(e,t){return Hf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(r[o]=n[o])},Hf(e,t)}});function kr(e){return typeof e=="function"}var Uc=g(()=>{});function Hc(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var Jf=g(()=>{});var jc,XI=g(()=>{Jf();jc=Hc(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription:
25
25
  `+r.map(function(n,o){return o+1+") "+n.toString()}).join(`
26
- `):"",this.name="UnsubscriptionError",this.errors=r}})});function Zf(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var lx=h(()=>{});function ux(e){return e instanceof $c||e&&"closed"in e&&Nr(e.remove)&&Nr(e.add)&&Nr(e.unsubscribe)}function Ax(e){Nr(e)?e():e.unsubscribe()}var $c,X6,fx=h(()=>{Oa();Yc();cx();lx();$c=(function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,n,o,i;if(!this.closed){this.closed=!0;var a=this._parentage;if(a)if(this._parentage=null,Array.isArray(a))try{for(var s=Kf(a),c=s.next();!c.done;c=s.next()){var l=c.value;l.remove(this)}}catch(E){t={error:E}}finally{try{c&&!c.done&&(r=s.return)&&r.call(s)}finally{if(t)throw t.error}}else a.remove(this);var A=this.initialTeardown;if(Nr(A))try{A()}catch(E){i=E instanceof zc?E.errors:[E]}var u=this._finalizers;if(u){this._finalizers=null;try{for(var m=Kf(u),d=m.next();!d.done;d=m.next()){var g=d.value;try{Ax(g)}catch(E){i=i??[],E instanceof zc?i=Qi(Qi([],Si(i)),Si(E.errors)):i.push(E)}}}catch(E){n={error:E}}finally{try{d&&!d.done&&(o=m.return)&&o.call(m)}finally{if(n)throw n.error}}}if(i)throw new zc(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)Ax(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&Zf(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Zf(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=(function(){var t=new e;return t.closed=!0,t})(),e})(),X6=$c.EMPTY});var Bn,Kc=h(()=>{Bn={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var vi,ed=h(()=>{Oa();vi={setTimeout:function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var o=vi.delegate;return o?.setTimeout?o.setTimeout.apply(o,Qi([e,t],Si(r))):setTimeout.apply(void 0,Qi([e,t],Si(r)))},clearTimeout:function(e){var t=vi.delegate;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0}});function dx(e){vi.setTimeout(function(){var t=Bn.onUnhandledError;if(t)t(e);else throw e})}var mx=h(()=>{Kc();ed()});function td(){}var px=h(()=>{});function hx(e){return rd("E",void 0,e)}function Cx(e){return rd("N",e,void 0)}function rd(e,t,r){return{kind:e,value:t,error:r}}var gx,Ex=h(()=>{gx=(function(){return rd("C",void 0,void 0)})()});function Ix(e){Bn.useDeprecatedSynchronousErrorHandling&&nd&&(nd.errorThrown=!0,nd.error=e)}var nd,xx=h(()=>{Kc();nd=null});function od(e,t){return pD.call(e,t)}function Xc(e){Bn.useDeprecatedSynchronousErrorHandling?Ix(e):dx(e)}function hD(e){throw e}function id(e,t){var r=Bn.onStoppedNotification;r&&vi.setTimeout(function(){return r(e,t)})}var ad,pD,gD,sd,CD,cd=h(()=>{Oa();Yc();fx();Kc();mx();px();Ex();ed();xx();ad=(function(e){Pa(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,ux(r)&&r.add(n)):n.destination=CD,n}return t.create=function(r,n,o){return new sd(r,n,o)},t.prototype.next=function(r){this.isStopped?id(Cx(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?id(hx(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?id(gx,this):(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},t.prototype._next=function(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t})($c),pD=Function.prototype.bind;gD=(function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(n){Xc(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){Xc(n)}else Xc(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){Xc(r)}},e})(),sd=(function(e){Pa(t,e);function t(r,n,o){var i=e.call(this)||this,a;if(Nr(r)||!r)a={next:r??void 0,error:n??void 0,complete:o??void 0};else{var s;i&&Bn.useDeprecatedNextContext?(s=Object.create(r),s.unsubscribe=function(){return i.unsubscribe()},a={next:r.next&&od(r.next,s),error:r.error&&od(r.error,s),complete:r.complete&&od(r.complete,s)}):a=r}return i.destination=new gD(a),i}return t})(ad);CD={closed:!0,next:td,error:hD,complete:td}});function ED(e){return Nr(e?.lift)}function Zc(e){return function(t){if(ED(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}var ld=h(()=>{Yc()});function wx(e,t,r,n,o){return new ID(e,t,r,n,o)}var ID,yx=h(()=>{Oa();cd();ID=(function(e){Pa(t,e);function t(r,n,o,i,a,s){var c=e.call(this,r)||this;return c.onFinalize=a,c.shouldUnsubscribe=s,c._next=n?function(l){try{n(l)}catch(A){r.error(A)}}:e.prototype._next,c._error=i?function(l){try{i(l)}catch(A){r.error(A)}finally{this.unsubscribe()}}:e.prototype._error,c._complete=o?function(){try{o()}catch(l){r.error(l)}finally{this.unsubscribe()}}:e.prototype._complete,c}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t})(ad)});var bx,Bx=h(()=>{Xf();bx=Wc(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});function Ad(e,t){var r=typeof t=="object";return new Promise(function(n,o){var i=new sd({next:function(a){n(a),i.unsubscribe()},error:o,complete:function(){r?n(t.defaultValue):o(new bx)}});e.subscribe(i)})}var Sx=h(()=>{Bx();cd()});var Qx=h(()=>{});function vx(e,t,r,n,o){return function(i,a){var s=r,c=t,l=0;i.subscribe(wx(a,function(A){var u=l++;c=s?e(c,A,u):(s=!0,A),n&&a.next(c)},o&&(function(){s&&a.next(c),a.complete()})))}}var Mx=h(()=>{yx()});function _x(e,t){return Zc(vx(e,t,arguments.length>=2,!1,!0))}var Tx=h(()=>{Mx();ld()});function ud(){return Zc(function(e,t){_x(xD,[])(e).subscribe(t)})}var xD,kx=h(()=>{Tx();ld();xD=function(e,t){return e.push(t),e}});var Dx=h(()=>{Sx();Qx();kx()});var Nx=h(()=>{});var Lx=h(()=>{});function wD(){return Rx||(Rx=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function yD(){return Fx||(Fx=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}function bD(e){let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("success",i),e.removeEventListener("error",a)},i=()=>{r(mo(e.result)),o()},a=()=>{n(e.error),o()};e.addEventListener("success",i),e.addEventListener("error",a)});return el.set(t,e),t}function BD(e){if(pd.has(e))return;let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("complete",i),e.removeEventListener("error",a),e.removeEventListener("abort",a)},i=()=>{r(),o()},a=()=>{n(e.error||new DOMException("AbortError","AbortError")),o()};e.addEventListener("complete",i),e.addEventListener("error",a),e.addEventListener("abort",a)});pd.set(e,t)}function Ux(e){gd=e(gd)}function SD(e){return yD().includes(e)?function(...t){return e.apply(hd(this),t),mo(this.request)}:function(...t){return mo(e.apply(hd(this),t))}}function QD(e){return typeof e=="function"?SD(e):(e instanceof IDBTransaction&&BD(e),md(e,wD())?new Proxy(e,gd):e)}function mo(e){if(e instanceof IDBRequest)return bD(e);if(fd.has(e))return fd.get(e);let t=QD(e);return t!==e&&(fd.set(e,t),el.set(t,e)),t}function sn(e,t,{blocked:r,upgrade:n,blocking:o,terminated:i}={}){let a=indexedDB.open(e,t),s=mo(a);return n&&a.addEventListener("upgradeneeded",c=>{n(mo(a.result),c.oldVersion,c.newVersion,mo(a.transaction),c)}),r&&a.addEventListener("blocked",c=>r(c.oldVersion,c.newVersion,c)),s.then(c=>{i&&c.addEventListener("close",()=>i()),o&&c.addEventListener("versionchange",l=>o(l.oldVersion,l.newVersion,l))}).catch(()=>{}),s}function Px(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&typeof t=="string"))return;if(dd.get(t))return dd.get(t);let r=t.replace(/FromIndex$/,""),n=t!==r,o=MD.includes(r);if(!(r in(n?IDBIndex:IDBObjectStore).prototype)||!(o||vD.includes(r)))return;let i=async function(a,...s){let c=this.transaction(a,o?"readwrite":"readonly"),l=c.store;return n&&(l=l.index(s.shift())),(await Promise.all([l[r](...s),o&&c.done]))[0]};return dd.set(t,i),i}async function*kD(...e){let t=this;if(t instanceof IDBCursor||(t=await t.openCursor(...e)),!t)return;t=t;let r=new Proxy(t,TD);for(Hx.set(r,t),el.set(r,hd(t));t;)yield r,t=await(Cd.get(r)||t.continue()),Cd.delete(r)}function Gx(e,t){return t===Symbol.asyncIterator&&md(e,[IDBIndex,IDBObjectStore,IDBCursor])||t==="iterate"&&md(e,[IDBIndex,IDBObjectStore])}var md,Rx,Fx,pd,fd,el,gd,hd,vD,MD,dd,_D,Ox,Cd,Hx,TD,Mi=h(()=>{md=(e,t)=>t.some(r=>e instanceof r);pd=new WeakMap,fd=new WeakMap,el=new WeakMap;gd={get(e,t,r){if(e instanceof IDBTransaction){if(t==="done")return pd.get(e);if(t==="store")return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return mo(e[t])},set(e,t,r){return e[t]=r,!0},has(e,t){return e instanceof IDBTransaction&&(t==="done"||t==="store")?!0:t in e}};hd=e=>el.get(e);vD=["get","getKey","getAll","getAllKeys","count"],MD=["put","add","delete","clear"],dd=new Map;Ux(e=>({...e,get:(t,r,n)=>Px(t,r)||e.get(t,r,n),has:(t,r)=>!!Px(t,r)||e.has(t,r)}));_D=["continue","continuePrimaryKey","advance"],Ox={},Cd=new WeakMap,Hx=new WeakMap,TD={get(e,t){if(!_D.includes(t))return e[t];let r=Ox[t];return r||(r=Ox[t]=function(...n){Cd.set(this,Hx.get(this)[t](...n))}),r}};Ux(e=>({...e,get(t,r,n){return Gx(t,r)?kD:e.get(t,r,n)},has(t,r){return Gx(t,r)||e.has(t,r)}}))});var jx=h(()=>{Mi()});var tl,qx=h(()=>{tl=f(Pt(),1)});function Id(e,t=10){let r=String(e),n=0;for(let o=0,i=r.length;o<i;o++)n+=LD[r.charCodeAt(o)]??RD;return n*t}function xd(e){let t=0;if(e.length===0)return t;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);t=(t<<5)-t+n,t|=0}return t}function FD(e){let{uri:t,baseUri:r=""}=e,n;try{n=new URL(t,r).href}catch{n=t}return n}function wd(e){return nr(e)?jc(e)?FD(e):JSON.stringify(e):String(e)}function Jx(e){let t=/(^|[\s\n]|<[A-Za-z]*\/?>)((?:https?|ftp):\/\/[-A-Z0-9+\u0026\u2019@#/%?=()~_|!:,.;]*[-A-Z0-9+\u0026@#/%=~()_|])/gi;return e.replaceAll(t,`$1<a href='$2' target="_blank">$2</a>`)}function Vx(e,t){let{padding:r=30,minWidth:n=80,fontSize:o=12,maxWidth:i=1e3,stripHTML:a=!1}=t||{};return yd(e.map(s=>wd(s)).map(s=>a?qI(s):s).map(s=>Id(s,o)).map(s=>Math.min(Math.max(s+r,n),i)))}function yd(e,t=Number.NEGATIVE_INFINITY){let r=t;for(let n of e)r=Math.max(n,r);return r}function nr(e){return typeof e=="object"&&e!==null}var Ed,_i,DD,ND,tU,rU,nU,oU,LD,RD,Sn=h(()=>{Ed=f(v(),1);qf();_i=f(Pt(),1),DD=f(UI(),1),ND=f(jI(),1);Jf();Vf();Vf();WI();zI();$I();Jf();ox();ix();ax();sx();Nx();Lx();JI();VI();qx();jx();tU=180/Math.PI,rU=Math.PI/180,nU=/electron/i.test(typeof navigator<"u"?navigator.userAgent:""),oU=typeof jest>"u"?typeof window<"u"&&window.requestIdleCallback?window.requestIdleCallback:e=>setTimeout(()=>{e()},1):e=>{e()},LD=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,.2796875,.2765625,.3546875,.5546875,.5546875,.8890625,.665625,.190625,.3328125,.3328125,.3890625,.5828125,.2765625,.3328125,.2765625,.3015625,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.2765625,.2765625,.584375,.5828125,.584375,.5546875,1.0140625,.665625,.665625,.721875,.721875,.665625,.609375,.7765625,.721875,.2765625,.5,.665625,.5546875,.8328125,.721875,.7765625,.665625,.7765625,.721875,.665625,.609375,.721875,.665625,.94375,.665625,.665625,.609375,.2765625,.3546875,.2765625,.4765625,.5546875,.3328125,.5546875,.5546875,.5,.5546875,.5546875,.2765625,.5546875,.5546875,.221875,.240625,.5,.221875,.8328125,.5546875,.5546875,.5546875,.5546875,.3328125,.5,.2765625,.5546875,.5,.721875,.5,.5,.5,.3546875,.259375,.353125,.5890625],RD=.5279276315789471});function Yx(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function PD(e){if(Array.isArray(e))return e}function OD(e,t){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,o,i,a,s=[],c=!0,l=!1;try{if(i=(r=r.call(e)).next,t!==0)for(;!(c=(n=i.call(r)).done)&&(s.push(n.value),s.length!==t);c=!0);}catch(A){l=!0,o=A}finally{try{if(!c&&r.return!=null&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}function GD(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
27
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function UD(e,t){return PD(e)||OD(e,t)||HD(e,t)||GD()}function HD(e,t){if(e){if(typeof e=="string")return Yx(e,t);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Yx(e,t):void 0}}function He(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return Md(e,t,n)}}function KD(e){return function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _d(e,r)}}function z(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ja;if(Wx&&Wx(e,null),!vn(t))return e;let n=t.length;for(;n--;){let o=t[n];if(typeof o=="string"){let i=r(o);i!==o&&(jD(t)||(t[n]=i),o=i)}e[o]=!0}return e}function XD(e){for(let t=0;t<e.length;t++)et(e,t)||(e[t]=null);return e}function Qt(e){let t=ki(null);for(let n of sw(e)){var r=UD(n,2);let o=r[0],i=r[1];et(e,o)&&(vn(i)?t[o]=XD(i):i&&typeof i=="object"&&i.constructor===Object?t[o]=Qt(i):t[o]=i)}return t}function ZD(e){switch(typeof e){case"string":return e;case"number":return zD(e);case"boolean":return $D(e);case"bigint":return Xx?Xx(e):"0";case"symbol":return Zx?Zx(e):"Symbol()";case"undefined":return Ha(e);case"function":case"object":{if(e===null)return Ha(e);let t=e,r=Rr(t,"toString");if(typeof r=="function"){let n=r(t);return typeof n=="string"?n:Ha(n)}return Ha(e)}default:return Ha(e)}}function Rr(e,t){for(;e!==null;){let n=JD(e,t);if(n){if(n.get)return He(n.get);if(typeof n.value=="function")return He(n.value)}e=qD(e)}function r(){return null}return r}function eN(e){try{return ct(e,""),!0}catch{return!1}}function lw(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:pN(),t=N=>lw(N);if(t.version="3.4.11",t.removed=[],!e||!e.document||e.document.nodeType!==Lr.document||!e.Element)return t.isSupported=!1,t;let r=e.document,n=r,o=n.currentScript;e.DocumentFragment;let i=e.HTMLTemplateElement,a=e.Node,s=e.Element,c=e.NodeFilter,l=e.NamedNodeMap;l===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;let A=e.DOMParser,u=e.trustedTypes,m=s.prototype,d=Rr(m,"cloneNode"),g=Rr(m,"remove"),E=Rr(m,"nextSibling"),x=Rr(m,"childNodes"),I=Rr(m,"parentNode"),p=Rr(m,"shadowRoot"),w=Rr(m,"attributes"),y=a&&a.prototype?Rr(a.prototype,"nodeType"):null,b=a&&a.prototype?Rr(a.prototype,"nodeName"):null;if(typeof i=="function"){let N=r.createElement("template");N.content&&N.content.ownerDocument&&(r=N.content.ownerDocument)}let Q,S="",k,T=!1,_=0,M=function(){if(_>0)throw po('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},L=function(C){M(),_++;try{return Q.createHTML(C)}finally{_--}},U=function(C){M(),_++;try{return Q.createScriptURL(C)}finally{_--}},Y=function(){return T||(k=gN(u,o),T=!0),k},Ne=r,te=Ne.implementation,Pe=Ne.createNodeIterator,Dt=Ne.createDocumentFragment,$n=Ne.getElementsByTagName,lr=n.importNode,re=aw();t.isSupported=typeof sw=="function"&&typeof I=="function"&&te&&te.createHTMLDocument!==void 0;let Ar=nN,Wr=oN,ko=iN,ra=aN,Do=sN,zr=cN,gn=lN,LA=uN,na=ow,he=null,Bs=z({},[...ew,...Bd,...Sd,...Qd,...tw]),be=null,hn=z({},[...rw,...vd,...nw,...rl]),Ce=Object.seal(ki(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),No=null,ae=null,ne=Object.seal(ki(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),Be=!0,Ee=!0,Rt=!1,xt=!0,le=!1,ot=!0,Ft=!1,$r=!1,Lo=null,Ro=null,dt=!1,mt=!1,Cn=!1,Fo=!1,Po=!0,Yp=!1,Wp="user-content-",RA=!0,FA=!1,Oo={},vr=null,PA=z({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]),zp=null,$p=z({},["audio","video","img","source","image","track"]),OA=null,Kp=z({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ss="http://www.w3.org/1998/Math/MathML",Qs="http://www.w3.org/2000/svg",Mr="http://www.w3.org/1999/xhtml",Go=Mr,GA=!1,UA=null,jM=z({},[Ss,Qs,Mr],bd),Xp=lt(["mi","mo","mn","ms","mtext"]),HA=z({},Xp),Zp=lt(["annotation-xml"]),jA=z({},Zp),qM=z({},["title","style","font","a","script"]),oa=null,JM=["application/xhtml+xml","text/html"],VM="text/html",De=null,Uo=null,YM=r.createElement("form"),eg=function(C){return C instanceof RegExp||C instanceof Function},qA=function(){let C=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Uo&&Uo===C)return;(!C||typeof C!="object")&&(C={}),C=Qt(C),oa=JM.indexOf(C.PARSER_MEDIA_TYPE)===-1?VM:C.PARSER_MEDIA_TYPE,De=oa==="application/xhtml+xml"?bd:ja,he=Qn(C,"ALLOWED_TAGS",Bs,{transform:De}),be=Qn(C,"ALLOWED_ATTR",hn,{transform:De}),UA=Qn(C,"ALLOWED_NAMESPACES",jM,{transform:bd}),OA=Qn(C,"ADD_URI_SAFE_ATTR",Kp,{transform:De,base:Kp}),zp=Qn(C,"ADD_DATA_URI_TAGS",$p,{transform:De,base:$p}),vr=Qn(C,"FORBID_CONTENTS",PA,{transform:De}),No=Qn(C,"FORBID_TAGS",Qt({}),{transform:De}),ae=Qn(C,"FORBID_ATTR",Qt({}),{transform:De}),Oo=et(C,"USE_PROFILES")?C.USE_PROFILES&&typeof C.USE_PROFILES=="object"?Qt(C.USE_PROFILES):C.USE_PROFILES:!1,Be=C.ALLOW_ARIA_ATTR!==!1,Ee=C.ALLOW_DATA_ATTR!==!1,Rt=C.ALLOW_UNKNOWN_PROTOCOLS||!1,xt=C.ALLOW_SELF_CLOSE_IN_ATTR!==!1,le=C.SAFE_FOR_TEMPLATES||!1,ot=C.SAFE_FOR_XML!==!1,Ft=C.WHOLE_DOCUMENT||!1,mt=C.RETURN_DOM||!1,Cn=C.RETURN_DOM_FRAGMENT||!1,Fo=C.RETURN_TRUSTED_TYPE||!1,dt=C.FORCE_BODY||!1,Po=C.SANITIZE_DOM!==!1,Yp=C.SANITIZE_NAMED_PROPS||!1,RA=C.KEEP_CONTENT!==!1,FA=C.IN_PLACE||!1,na=eN(C.ALLOWED_URI_REGEXP)?C.ALLOWED_URI_REGEXP:ow,Go=typeof C.NAMESPACE=="string"?C.NAMESPACE:Mr,HA=et(C,"MATHML_TEXT_INTEGRATION_POINTS")&&C.MATHML_TEXT_INTEGRATION_POINTS&&typeof C.MATHML_TEXT_INTEGRATION_POINTS=="object"?Qt(C.MATHML_TEXT_INTEGRATION_POINTS):z({},Xp),jA=et(C,"HTML_INTEGRATION_POINTS")&&C.HTML_INTEGRATION_POINTS&&typeof C.HTML_INTEGRATION_POINTS=="object"?Qt(C.HTML_INTEGRATION_POINTS):z({},Zp);let B=et(C,"CUSTOM_ELEMENT_HANDLING")&&C.CUSTOM_ELEMENT_HANDLING&&typeof C.CUSTOM_ELEMENT_HANDLING=="object"?Qt(C.CUSTOM_ELEMENT_HANDLING):ki(null);if(Ce=ki(null),et(B,"tagNameCheck")&&eg(B.tagNameCheck)&&(Ce.tagNameCheck=B.tagNameCheck),et(B,"attributeNameCheck")&&eg(B.attributeNameCheck)&&(Ce.attributeNameCheck=B.attributeNameCheck),et(B,"allowCustomizedBuiltInElements")&&typeof B.allowCustomizedBuiltInElements=="boolean"&&(Ce.allowCustomizedBuiltInElements=B.allowCustomizedBuiltInElements),At(Ce),le&&(Ee=!1),Cn&&(mt=!0),Oo&&(he=z({},tw),be=ki(null),Oo.html===!0&&(z(he,ew),z(be,rw)),Oo.svg===!0&&(z(he,Bd),z(be,vd),z(be,rl)),Oo.svgFilters===!0&&(z(he,Sd),z(be,vd),z(be,rl)),Oo.mathMl===!0&&(z(he,Qd),z(be,nw),z(be,rl))),ne.tagCheck=null,ne.attributeCheck=null,et(C,"ADD_TAGS")&&(typeof C.ADD_TAGS=="function"?ne.tagCheck=C.ADD_TAGS:vn(C.ADD_TAGS)&&(he===Bs&&(he=Qt(he)),z(he,C.ADD_TAGS,De))),et(C,"ADD_ATTR")&&(typeof C.ADD_ATTR=="function"?ne.attributeCheck=C.ADD_ATTR:vn(C.ADD_ATTR)&&(be===hn&&(be=Qt(be)),z(be,C.ADD_ATTR,De))),et(C,"ADD_URI_SAFE_ATTR")&&vn(C.ADD_URI_SAFE_ATTR)&&z(OA,C.ADD_URI_SAFE_ATTR,De),et(C,"FORBID_CONTENTS")&&vn(C.FORBID_CONTENTS)&&(vr===PA&&(vr=Qt(vr)),z(vr,C.FORBID_CONTENTS,De)),et(C,"ADD_FORBID_CONTENTS")&&vn(C.ADD_FORBID_CONTENTS)&&(vr===PA&&(vr=Qt(vr)),z(vr,C.ADD_FORBID_CONTENTS,De)),RA&&(he["#text"]=!0),Ft&&z(he,["html","head","body"]),he.table&&(z(he,["tbody"]),delete No.tbody),C.TRUSTED_TYPES_POLICY){if(typeof C.TRUSTED_TYPES_POLICY.createHTML!="function")throw po('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof C.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw po('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let D=Q;Q=C.TRUSTED_TYPES_POLICY;try{S=L("")}catch(G){throw Q=D,G}}else C.TRUSTED_TYPES_POLICY===null?(Q=void 0,S=""):(Q===void 0&&(Q=Y()),Q&&typeof S=="string"&&(S=L("")));lt&&lt(C),Uo=C},tg=z({},[...Bd,...Sd,...tN]),rg=z({},[...Qd,...rN]),WM=function(C,B,D){return B.namespaceURI===Mr?C==="svg":B.namespaceURI===Ss?C==="svg"&&(D==="annotation-xml"||HA[D]):!!tg[C]},zM=function(C,B,D){return B.namespaceURI===Mr?C==="math":B.namespaceURI===Qs?C==="math"&&jA[D]:!!rg[C]},$M=function(C,B,D){return B.namespaceURI===Qs&&!jA[D]||B.namespaceURI===Ss&&!HA[D]?!1:!rg[C]&&(qM[C]||!tg[C])},KM=function(C){let B=I(C);(!B||!B.tagName)&&(B={namespaceURI:Go,tagName:"template"});let D=ja(C.tagName),G=ja(B.tagName);return UA[C.namespaceURI]?C.namespaceURI===Qs?WM(D,B,G):C.namespaceURI===Ss?zM(D,B,G):C.namespaceURI===Mr?$M(D,B,G):!!(oa==="application/xhtml+xml"&&UA[C.namespaceURI]):!1},En=function(C){Ti(t.removed,{element:C});try{I(C).removeChild(C)}catch{if(g(C),!I(C))throw po("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},ng=function(C){let B=x(C);if(B){let G=[];Ga(B,q=>{Ti(G,q)}),Ga(G,q=>{try{g(q)}catch{}})}let D=w(C);if(D)for(let G=D.length-1;G>=0;--G){let q=D[G],$=q&&q.name;if(typeof $=="string")try{C.removeAttribute($)}catch{}}},Kn=function(C,B){try{Ti(t.removed,{attribute:B.getAttributeNode(C),from:B})}catch{Ti(t.removed,{attribute:null,from:B})}if(B.removeAttribute(C),C==="is")if(mt||Cn)try{En(B)}catch{}else try{B.setAttribute(C,"")}catch{}},XM=function(C){let B=w(C);if(B)for(let D=B.length-1;D>=0;--D){let G=B[D],q=G&&G.name;if(!(typeof q!="string"||be[De(q)]))try{C.removeAttribute(q)}catch{}}},ZM=function(C){let B=[C];for(;B.length>0;){let D=B.pop();(y?y(D):D.nodeType)===Lr.element&&XM(D);let q=x(D);if(q)for(let $=q.length-1;$>=0;--$)B.push(q[$])}},og=function(C){let B=null,D=null;if(dt)C="<remove></remove>"+C;else{let $=$x(C,/^[\r\n\t ]+/);D=$&&$[0]}oa==="application/xhtml+xml"&&Go===Mr&&(C='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+C+"</body></html>");let G=Q?L(C):C;if(Go===Mr)try{B=new A().parseFromString(G,oa)}catch{}if(!B||!B.documentElement){B=te.createDocument(Go,"template",null);try{B.documentElement.innerHTML=GA?S:G}catch{}}let q=B.body||B.documentElement;return C&&D&&q.insertBefore(r.createTextNode(D),q.childNodes[0]||null),Go===Mr?$n.call(B,Ft?"html":"body")[0]:Ft?B.documentElement:q},ig=function(C){return Pe.call(C.ownerDocument||C,C,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},vs=function(C){return C=Ua(C,Ar," "),C=Ua(C,Wr," "),C=Ua(C,ko," "),C},JA=function(C){var B;C.normalize();let D=Pe.call(C.ownerDocument||C,C,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null),G=D.nextNode();for(;G;)G.data=vs(G.data),G=D.nextNode();let q=(B=C.querySelectorAll)===null||B===void 0?void 0:B.call(C,"template");q&&Ga(q,$=>{Ho($.content)&&JA($.content)})},Ms=function(C){let B=b?b(C):null;return typeof B!="string"||De(B)!=="form"?!1:typeof C.nodeName!="string"||typeof C.textContent!="string"||typeof C.removeChild!="function"||C.attributes!==w(C)||typeof C.removeAttribute!="function"||typeof C.setAttribute!="function"||typeof C.namespaceURI!="string"||typeof C.insertBefore!="function"||typeof C.hasChildNodes!="function"||C.nodeType!==y(C)||C.childNodes!==x(C)},Ho=function(C){if(!y||typeof C!="object"||C===null)return!1;try{return y(C)===Lr.documentFragment}catch{return!1}},ia=function(C){if(!y||typeof C!="object"||C===null)return!1;try{return typeof y(C)=="number"}catch{return!1}};function Kr(N,C,B){N.length!==0&&Ga(N,D=>{D.call(t,C,B,Uo)})}let e_=function(C,B){return!!(ot&&C.hasChildNodes()&&!ia(C.firstElementChild)&&ct(iw,C.textContent)&&ct(iw,C.innerHTML)||ot&&C.namespaceURI===Mr&&B==="style"&&ia(C.firstElementChild)||C.nodeType===Lr.processingInstruction||ot&&C.nodeType===Lr.comment&&ct(fN,C.data))},t_=function(C,B){if(!No[B]&&cg(B)&&(Ce.tagNameCheck instanceof RegExp&&ct(Ce.tagNameCheck,B)||Ce.tagNameCheck instanceof Function&&Ce.tagNameCheck(B)))return!1;if(RA&&!vr[B]){let D=I(C),G=x(C);if(G&&D){let q=G.length;for(let $=q-1;$>=0;--$){let ze=FA?G[$]:d(G[$],!0);D.insertBefore(ze,E(C))}}}return En(C),!0},ag=function(C){if(Kr(re.beforeSanitizeElements,C,null),Ms(C))return En(C),!0;let B=De(b?b(C):C.nodeName);if(Kr(re.uponSanitizeElement,C,{tagName:B,allowedTags:he}),e_(C,B))return En(C),!0;if(No[B]||!(ne.tagCheck instanceof Function&&ne.tagCheck(B))&&!he[B])return t_(C,B);if((y?y(C):C.nodeType)===Lr.element&&!KM(C)||(B==="noscript"||B==="noembed"||B==="noframes")&&ct(dN,C.innerHTML))return En(C),!0;if(le&&C.nodeType===Lr.text){let G=vs(C.textContent);C.textContent!==G&&(Ti(t.removed,{element:C.cloneNode()}),C.textContent=G)}return Kr(re.afterSanitizeElements,C,null),!1},sg=function(C,B,D){if(ae[B]||Po&&(B==="id"||B==="name")&&(D in r||D in YM))return!1;let G=be[B]||ne.attributeCheck instanceof Function&&ne.attributeCheck(B,C);if(!(Ee&&ct(ra,B))){if(!(Be&&ct(Do,B))){if(G){if(!OA[B]){if(!ct(na,Ua(D,gn,""))){if(!((B==="src"||B==="xlink:href"||B==="href")&&C!=="script"&&Kx(D,"data:")===0&&zp[C])){if(!(Rt&&!ct(zr,Ua(D,gn,"")))){if(D)return!1}}}}}else if(!(cg(C)&&(Ce.tagNameCheck instanceof RegExp&&ct(Ce.tagNameCheck,C)||Ce.tagNameCheck instanceof Function&&Ce.tagNameCheck(C))&&(Ce.attributeNameCheck instanceof RegExp&&ct(Ce.attributeNameCheck,B)||Ce.attributeNameCheck instanceof Function&&Ce.attributeNameCheck(B,C))||B==="is"&&Ce.allowCustomizedBuiltInElements&&(Ce.tagNameCheck instanceof RegExp&&ct(Ce.tagNameCheck,D)||Ce.tagNameCheck instanceof Function&&Ce.tagNameCheck(D))))return!1}}return!0},r_=z({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),cg=function(C){return!r_[ja(C)]&&ct(LA,C)},n_=function(C,B,D,G){if(Q&&typeof u=="object"&&typeof u.getAttributeType=="function"&&!D)switch(u.getAttributeType(C,B)){case"TrustedHTML":return L(G);case"TrustedScriptURL":return U(G)}return G},o_=function(C,B,D,G){try{D?C.setAttributeNS(D,B,G):C.setAttribute(B,G),Ms(C)?En(C):zx(t.removed)}catch{Kn(B,C)}},lg=function(C){Kr(re.beforeSanitizeAttributes,C,null);let B=C.attributes;if(!B||Ms(C))return;let D={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:be,forceKeepAttr:void 0},G=B.length,q=De(C.nodeName);for(;G--;){let $=B[G],ze=$.name,Oe=$.namespaceURI,Wt=$.value,ur=De(ze),YA=Wt,wt=ze==="value"?YA:WD(YA);if(D.attrName=ur,D.attrValue=wt,D.keepAttr=!0,D.forceKeepAttr=void 0,Kr(re.uponSanitizeAttribute,C,D),wt=D.attrValue,Yp&&(ur==="id"||ur==="name")&&Kx(wt,Wp)!==0&&(Kn(ze,C),wt=Wp+wt),ot&&ct(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,wt)){Kn(ze,C);continue}if(ur==="attributename"&&$x(wt,"href")){Kn(ze,C);continue}if(!D.forceKeepAttr){if(!D.keepAttr){Kn(ze,C);continue}if(!xt&&ct(mN,wt)){Kn(ze,C);continue}if(le&&(wt=vs(wt)),!sg(q,ur,wt)){Kn(ze,C);continue}wt=n_(q,ur,Oe,wt),wt!==YA&&o_(C,ze,Oe,wt)}}Kr(re.afterSanitizeAttributes,C,null)},_s=function(C){let B=null,D=ig(C);for(Kr(re.beforeSanitizeShadowDOM,C,null);B=D.nextNode();)if(Kr(re.uponSanitizeShadowNode,B,null),ag(B),lg(B),Ho(B.content)&&_s(B.content),(y?y(B):B.nodeType)===Lr.element){let q=p(B);Ho(q)&&(VA(q),_s(q))}Kr(re.afterSanitizeShadowDOM,C,null)},VA=function(C){let B=[{node:C,shadow:null}];for(;B.length>0;){let D=B.pop();if(D.shadow){_s(D.shadow);continue}let G=D.node,$=(y?y(G):G.nodeType)===Lr.element,ze=x(G);if(ze)for(let Oe=ze.length-1;Oe>=0;--Oe)B.push({node:ze[Oe],shadow:null});if($){let Oe=b?b(G):null;if(typeof Oe=="string"&&De(Oe)==="template"){let Wt=G.content;Ho(Wt)&&B.push({node:Wt,shadow:null})}}if($){let Oe=p(G);Ho(Oe)&&B.push({node:null,shadow:Oe},{node:Oe,shadow:null})}}};return t.sanitize=function(N){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},B=null,D=null,G=null,q=null;if(GA=!N,GA&&(N="<!-->"),typeof N!="string"&&!ia(N)&&(N=ZD(N),typeof N!="string"))throw po("dirty is not a string, aborting");if(!t.isSupported)return N;$r?(he=Lo,be=Ro):qA(C),(re.uponSanitizeElement.length>0||re.uponSanitizeAttribute.length>0)&&(he=Qt(he)),re.uponSanitizeAttribute.length>0&&(be=Qt(be)),t.removed=[];let $=FA&&typeof N!="string"&&ia(N);if($){let Wt=b?b(N):N.nodeName;if(typeof Wt=="string"){let ur=De(Wt);if(!he[ur]||No[ur])throw po("root node is forbidden and cannot be sanitized in-place")}if(Ms(N))throw po("root node is clobbered and cannot be sanitized in-place");try{VA(N)}catch(ur){throw ng(N),ur}}else if(ia(N))B=og("<!---->"),D=B.ownerDocument.importNode(N,!0),D.nodeType===Lr.element&&D.nodeName==="BODY"||D.nodeName==="HTML"?B=D:B.appendChild(D),VA(D);else{if(!mt&&!le&&!Ft&&N.indexOf("<")===-1)return Q&&Fo?L(N):N;if(B=og(N),!B)return mt?null:Fo?S:""}B&&dt&&En(B.firstChild);let ze=ig($?N:B);try{for(;G=ze.nextNode();)ag(G),lg(G),Ho(G.content)&&_s(G.content)}catch(Wt){throw $&&ng(N),Wt}if($)return Ga(t.removed,Wt=>{Wt.element&&ZM(Wt.element)}),le&&JA(N),N;if(mt){if(le&&JA(B),Cn)for(q=Dt.call(B.ownerDocument);B.firstChild;)q.appendChild(B.firstChild);else q=B;return(be.shadowroot||be.shadowrootmode)&&(q=lr.call(n,q,!0)),q}let Oe=Ft?B.outerHTML:B.innerHTML;return Ft&&he["!doctype"]&&B.ownerDocument&&B.ownerDocument.doctype&&B.ownerDocument.doctype.name&&ct(AN,B.ownerDocument.doctype.name)&&(Oe="<!DOCTYPE "+B.ownerDocument.doctype.name+`>
28
- `+Oe),le&&(Oe=vs(Oe)),Q&&Fo?L(Oe):Oe},t.setConfig=function(){let N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};qA(N),$r=!0,Lo=he,Ro=be},t.clearConfig=function(){Uo=null,$r=!1,Lo=null,Ro=null,Q=k,S=""},t.isValidAttribute=function(N,C,B){Uo||qA({});let D=De(N),G=De(C);return sg(D,G,B)},t.addHook=function(N,C){typeof C=="function"&&et(re,N)&&Ti(re[N],C)},t.removeHook=function(N,C){if(et(re,N)){if(C!==void 0){let B=VD(re[N],C);return B===-1?void 0:YD(re[N],B,1)[0]}return zx(re[N])}},t.removeHooks=function(N){et(re,N)&&(re[N]=[])},t.removeAllHooks=function(){re=aw()},t}var sw,Wx,jD,qD,JD,lt,At,ki,cw,Md,_d,Ga,VD,zx,Ti,YD,vn,ja,bd,$x,Ua,Kx,WD,zD,$D,Xx,Zx,et,Ha,ct,po,ew,Bd,Sd,tN,Qd,rN,tw,rw,vd,nw,rl,nN,oN,iN,aN,sN,ow,cN,lN,AN,uN,iw,fN,dN,mN,Lr,pN,gN,aw,Qn,Aw,uw=h(()=>{sw=Object.entries,Wx=Object.setPrototypeOf,jD=Object.isFrozen,qD=Object.getPrototypeOf,JD=Object.getOwnPropertyDescriptor,lt=Object.freeze,At=Object.seal,ki=Object.create,cw=typeof Reflect<"u"&&Reflect,Md=cw.apply,_d=cw.construct;lt||(lt=function(t){return t});At||(At=function(t){return t});Md||(Md=function(t,r){for(var n=arguments.length,o=new Array(n>2?n-2:0),i=2;i<n;i++)o[i-2]=arguments[i];return t.apply(r,o)});_d||(_d=function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return new t(...n)});Ga=He(Array.prototype.forEach),VD=He(Array.prototype.lastIndexOf),zx=He(Array.prototype.pop),Ti=He(Array.prototype.push),YD=He(Array.prototype.splice),vn=Array.isArray,ja=He(String.prototype.toLowerCase),bd=He(String.prototype.toString),$x=He(String.prototype.match),Ua=He(String.prototype.replace),Kx=He(String.prototype.indexOf),WD=He(String.prototype.trim),zD=He(Number.prototype.toString),$D=He(Boolean.prototype.toString),Xx=typeof BigInt>"u"?null:He(BigInt.prototype.toString),Zx=typeof Symbol>"u"?null:He(Symbol.prototype.toString),et=He(Object.prototype.hasOwnProperty),Ha=He(Object.prototype.toString),ct=He(RegExp.prototype.test),po=KD(TypeError);ew=lt(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Bd=lt(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Sd=lt(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),tN=lt(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Qd=lt(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),rN=lt(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),tw=lt(["#text"]),rw=lt(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),vd=lt(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),nw=lt(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),rl=lt(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),nN=At(/{{[\w\W]*|^[\w\W]*}}/g),oN=At(/<%[\w\W]*|^[\w\W]*%>/g),iN=At(/\${[\w\W]*/g),aN=At(/^data-[\-\w.\u00B7-\uFFFF]+$/),sN=At(/^aria-[\-\w]+$/),ow=At(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),cN=At(/^(?:\w+script|data):/i),lN=At(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),AN=At(/^html$/i),uN=At(/^[a-z][.\w]*(-[.\w]+)+$/i),iw=At(/<[/\w!]/g),fN=At(/<[/\w]/g),dN=At(/<\/no(script|embed|frames)/i),mN=At(/\/>/i),Lr={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},pN=function(){return typeof window>"u"?null:window},gN=function(t,r){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let n=null,o="data-tt-policy-suffix";r&&r.hasAttribute(o)&&(n=r.getAttribute(o));let i="dompurify"+(n?"#"+n:"");try{return t.createPolicy(i,{createHTML(a){return a},createScriptURL(a){return a}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},aw=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},Qn=function(t,r,n,o){return et(t,r)&&vn(t[r])?z(o.base?Qt(o.base):{},t[r],o.transform):n};Aw=lw()});var mw={};$e(mw,{default:()=>dw});function dw({value:e,className:t}){let r=(0,nl.useRef)(null);return(0,nl.useLayoutEffect)(()=>{let n=r.current;if(n)for(let o of n.querySelectorAll("a"))o.setAttribute("rel","noopener noreferrer"),o.setAttribute("target","_blank")},[e]),(0,fw.jsx)("span",{ref:r,className:t,dangerouslySetInnerHTML:{__html:Aw.sanitize(e)}})}var fw,nl,pw=h(()=>{fw=f(O(),1),nl=f(v(),1);uw()});function IN(e){return EN.test(e)}function xN(e){return e.includes("<")||e.includes("://")}function wN({value:e,className:t}){let r=(0,Mn.useRef)(null);return(0,Mn.useLayoutEffect)(()=>{let n=r.current;if(n)try{n.setHTML(e);for(let o of n.querySelectorAll("a"))o.setAttribute("rel","noopener noreferrer"),o.setAttribute("target","_blank")}catch(o){console.error(o)}},[e]),(0,go.jsx)("span",{ref:r,className:t})}function _n({html:e,className:t}){let r=`${e}`;if(!xN(r))return(0,go.jsx)("span",{className:t,children:r});let n=Jx(r),o=IN(n)?n:(0,gw.default)(n);return typeof Element<"u"&&Element.prototype.setHTML?(0,go.jsx)(wN,{value:o,className:t}):(0,go.jsx)(Mn.Suspense,{fallback:(0,go.jsx)("span",{className:t}),children:(0,go.jsx)(CN,{value:o,className:t})})}var go,Mn,gw,hN,CN,EN,Td=h(()=>{go=f(O(),1),Mn=f(v(),1),gw=f(hE(),1);Sn();hN=["a","b","br","code","div","em","h1","h2","h3","h4","h5","h6","i","img","li","mark","p","pre","span","small","strong","table","tbody","sup","sub","td","tfoot","th","thead","tr","u","ul"],CN=(0,Mn.lazy)(()=>Promise.resolve().then(()=>(pw(),mw))),EN=new RegExp(hN.map(e=>String.raw`<${e}\b[^>]*>`).join("|"),"i")});function yN({error:e}){let{classes:t}=Ew();return(0,jt.jsx)("div",{className:t.errorBox,children:(0,jt.jsx)(mE,{error:e})})}var jt,hw,gt,Cw,Ew,bN,Iw,xw=h(()=>{jt=f(O(),1),hw=f(v(),1);Qu();gt=f(F(),1),Cw=f(H(),1);Iu();pE();Td();St();Ew=oe()(e=>({closeButton:{position:"absolute",right:e.spacing(1),top:e.spacing(1),color:e.palette.grey[500]},errorBox:{width:800,margin:40}}));bN=(0,Cw.observer)(function(t){let{classes:r}=Ew(),{titleNode:n,...o}=t,{title:i,header:a,children:s,onClose:c}=o,l=(0,gt.useTheme)();return(0,jt.jsx)(gt.Dialog,{...o,children:(0,jt.jsxs)(gt.ScopedCssBaseline,{children:[(0,hw.isValidElement)(a)?a:(0,jt.jsxs)(gt.DialogTitle,{children:[n||(0,jt.jsx)(_n,{html:i||""}),c?(0,jt.jsx)(gt.IconButton,{className:r.closeButton,onClick:A=>{c(A,"backdropClick")},children:(0,jt.jsx)(zs,{})}):null]}),(0,jt.jsx)(gt.Divider,{}),(0,jt.jsx)(zo,{FallbackComponent:yN,children:(0,jt.jsx)(gt.ThemeProvider,{theme:(0,gt.createTheme)(l,{components:{MuiInputBase:{styleOverrides:{input:{boxSizing:"content-box!important"}}}}}),children:s})})]})})}),Iw=bN});function kd({onClose:e,helpText:t,label:r}){return(0,ho.jsx)(Iw,{open:!0,onClose:e,title:"Help",titleNode:r?(0,ho.jsxs)(ho.Fragment,{children:["Help: ",r]}):void 0,onClick:n=>{n.stopPropagation()},onMouseDown:n=>{n.stopPropagation()},children:(0,ho.jsx)(ww.DialogContent,{children:t})})}var ho,ww,yw=h(()=>{ho=f(O(),1),ww=f(F(),1);xw()});function Dd({helpText:e,label:t}){let[r,n]=(0,ol.useState)(!1);return(0,cn.jsxs)(cn.Fragment,{children:[(0,cn.jsx)(bw.IconButton,{size:"small",onClick:o=>{o.stopPropagation(),n(!0)},style:{marginLeft:4,padding:4},children:(0,cn.jsx)(Kh,{fontSize:"small"})}),r?(0,cn.jsxs)(ol.Suspense,{fallback:null,children:[(0,cn.jsx)(kd,{helpText:e,label:t,onClose:o=>{o.stopPropagation(),n(!1)}})," "]}):null]})}var cn,ol,bw,Bw=h(()=>{cn=f(O(),1),ol=f(v(),1);Xh();bw=f(F(),1);yw()});var Sw,Qw,vw,BN,Mw,_w=h(()=>{Sw=f(O(),1),Qw=f(v(),1),vw=f(F(),1),BN=Qw.forwardRef(function(t,r){return(0,Sw.jsx)(vw.Menu,{...t,ref:r,style:{pointerEvents:"none",...t.style},slotProps:{...t.slotProps,paper:{style:{pointerEvents:"auto"}}}})}),Mw=BN});var Tw,kw,Dw=h(()=>{"use client";V();Tw=f(O(),1),kw=(0,R.createSvgIcon)((0,Tw.jsx)("path",{d:"m10 17 5-5-5-5z"}),"ArrowRight")});var Nw,Lw,Rw=h(()=>{"use client";V();Nw=f(O(),1),Lw=(0,R.createSvgIcon)((0,Nw.jsx)("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2m-9 14-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z"}),"CheckBox")});var Fw,Pw,Ow=h(()=>{"use client";V();Fw=f(O(),1),Pw=(0,R.createSvgIcon)((0,Fw.jsx)("path",{d:"M19 5v14H5V5zm0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2"}),"CheckBoxOutlineBlank")});var Gw,Uw,Hw=h(()=>{"use client";V();Gw=f(O(),1),Uw=(0,R.createSvgIcon)((0,Gw.jsx)("path",{d:"M12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5m0-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"}),"RadioButtonChecked")});var jw,qw,Jw=h(()=>{"use client";V();jw=f(O(),1),qw=(0,R.createSvgIcon)((0,jw.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"}),"RadioButtonUnchecked")});function Vw(e){let{classes:t}=SN(),{type:r}=e,n,o;"checked"in e&&({checked:n,disabled:o}=e);let i;switch(r){case"subMenu":{i=(0,Tn.jsx)(kw,{color:"action"});break}case"checkbox":{n?i=(0,Tn.jsx)(Lw,{color:o?"inherit":void 0}):i=(0,Tn.jsx)(Pw,{color:"action"});break}case"radio":{n?i=(0,Tn.jsx)(Uw,{color:o?"inherit":void 0}):i=(0,Tn.jsx)(qw,{color:"action"});break}}return(0,Tn.jsx)("div",{className:t.menuItemEndDecoration,children:i})}var Tn,il,SN,Yw=h(()=>{Tn=f(O(),1);Dw();Rw();Ow();Hw();Jw();il=f(F(),1);St();SN=oe()({menuItemEndDecoration:{padding:0,margin:0,height:16}})});function Ww(e){if(typeof e=="string")return e.toLowerCase().replace(/\s+/g,"_")}function QN({title:e,Icon:t,inset:r,menuItems:n,onMenuItemClick:o,closeAfterItemClick:i,onCloseRoot:a,isOpen:s,onOpen:c,onClose:l}){let[A,u]=(0,Nd.useState)(null),m=Ww(e);return(0,ue.jsxs)(ue.Fragment,{children:[(0,ue.jsxs)(vt.MenuItem,{ref:u,"data-testid":m?`cascading-submenu-${m}`:void 0,onMouseOver:c,onFocus:c,onClick:c,children:[t?(0,ue.jsx)(vt.ListItemIcon,{children:(0,ue.jsx)(t,{})}):null,(0,ue.jsx)(vt.ListItemText,{primary:e,inset:r}),(0,ue.jsx)(Wh,{})]}),(0,ue.jsx)(Mw,{open:s,anchorEl:A,onClose:l,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"},children:(0,ue.jsx)(zw,{closeAfterItemClick:i,onMenuItemClick:o,menuItems:n,onCloseRoot:a})})]})}function zw({onMenuItemClick:e,closeAfterItemClick:t,menuItems:r,onCloseRoot:n}){let[o,i]=(0,Nd.useState)(),a=()=>{i(void 0)},s=r.some(A=>"icon"in A&&A.icon),c=r.some(A=>(A.type==="checkbox"||A.type==="radio")&&"helpText"in A&&A.helpText),l=r.toSorted((A,u)=>(u.priority||0)-(A.priority||0));return(0,ue.jsx)(ue.Fragment,{children:l.map((A,u)=>{if("subMenu"in A)return(0,ue.jsx)(QN,{title:A.label,Icon:A.icon,inset:s&&!A.icon,onMenuItemClick:e,menuItems:A.subMenu,closeAfterItemClick:t,onCloseRoot:n,isOpen:o===u,onOpen:()=>{i(u)},onClose:a},`subMenu-${A.label}-${u}`);if(A.type==="divider")return(0,ue.jsx)(vt.Divider,{component:"li"},`divider-${u}`);if(A.type==="subHeader")return(0,ue.jsx)(vt.ListSubheader,{children:A.label},`subHeader-${A.label}-${u}`);let m=A,d=m.helpText,g=m.type==="checkbox"||m.type==="radio",E=Ww(m.label);return(0,ue.jsxs)(vt.MenuItem,{"data-testid":E?`cascading-menuitem-${E}`:void 0,disabled:!!m.disabled,onClick:x=>{t&&n(),e(x,m.onClick)},onMouseOver:a,children:[m.icon?(0,ue.jsx)(vt.ListItemIcon,{children:(0,ue.jsx)(m.icon,{})}):null,(0,ue.jsx)(vt.ListItemText,{primary:m.label,secondary:m.subLabel,inset:s&&!m.icon}),(0,ue.jsx)("div",{style:{flexGrow:1,minWidth:10}}),g?(0,ue.jsx)(Vw,{type:m.type,checked:m.checked,disabled:m.disabled}):null,d?(0,ue.jsx)(Dd,{helpText:d,label:m.label}):g&&c?(0,ue.jsx)("div",{style:{marginLeft:4,padding:4,width:28,height:28}}):null]},`${m.label}-${u}`)})})}function Ld({onMenuItemClick:e,closeAfterItemClick:t=!0,menuItems:r,open:n,onClose:o,anchorEl:i,anchorOrigin:a,transformOrigin:s,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u,style:m}){let d=Array.isArray(r)?r:r();return(0,ue.jsx)(vt.Menu,{anchorEl:i,open:n,onClose:o,anchorOrigin:a,transformOrigin:s,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u??void 0,style:m,children:(0,ue.jsx)(zw,{menuItems:d,closeAfterItemClick:t,onMenuItemClick:e,onCloseRoot:o})})}var ue,Nd,vt,$w=h(()=>{ue=f(O(),1),Nd=f(v(),1);zh();vt=f(F(),1);Bw();_w();Yw()});function vN({children:e,menuItems:t,closeAfterItemClick:r=!0,stopPropagation:n,disabled:o,setOpen:i,ButtonComponent:a=Kw.IconButton,onClick:s,anchorOrigin:c,transformOrigin:l,marginThreshold:A,...u}){let[m,d]=(0,al.useState)(null),g=!!m;(0,al.useEffect)(()=>{i?.(g)},[g,i]);let E=o??(Array.isArray(t)&&t.length===0);return(0,Co.jsxs)(Co.Fragment,{children:[(0,Co.jsx)(a,{onClick:x=>{n&&x.stopPropagation(),d(x.currentTarget),s?.(x)},...u,disabled:E,children:e}),g?(0,Co.jsx)(Ld,{open:g,onClose:()=>{d(null)},anchorEl:m,anchorOrigin:c,transformOrigin:l,marginThreshold:A,menuItems:t,closeAfterItemClick:r,onMenuItemClick:(x,I)=>{I()}}):null]})}var Co,al,Kw,Fr,Di=h(()=>{Co=f(O(),1),al=f(v(),1),Kw=f(F(),1);$w();Fr=vN});var Xw,Zw,ey=h(()=>{"use client";V();Xw=f(O(),1),Zw=(0,R.createSvgIcon)((0,Xw.jsx)("path",{d:"M12 2C6.49 2 2 6.49 2 12s4.49 10 10 10c1.38 0 2.5-1.12 2.5-2.5 0-.61-.23-1.2-.64-1.67-.08-.1-.13-.21-.13-.33 0-.28.22-.5.5-.5H16c3.31 0 6-2.69 6-6 0-4.96-4.49-9-10-9m5.5 11c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5m-3-4c-.83 0-1.5-.67-1.5-1.5S13.67 6 14.5 6s1.5.67 1.5 1.5S15.33 9 14.5 9M5 11.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5S7.33 13 6.5 13 5 12.33 5 11.5m6-4c0 .83-.67 1.5-1.5 1.5S8 8.33 8 7.5 8.67 6 9.5 6s1.5.67 1.5 1.5"}),"Palette")});var MN,Ni,ty=h(()=>{MN={50:"#ffebee",100:"#ffcdd2",200:"#ef9a9a",300:"#e57373",400:"#ef5350",500:"#f44336",600:"#e53935",700:"#d32f2f",800:"#c62828",900:"#b71c1c",A100:"#ff8a80",A200:"#ff5252",A400:"#ff1744",A700:"#d50000"},Ni=MN});var _N,qa,ry=h(()=>{_N={50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",A100:"#82b1ff",A200:"#448aff",A400:"#2979ff",A700:"#2962ff"},qa=_N});var TN,Ja,ny=h(()=>{TN={50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",A100:"#b9f6ca",A200:"#69f0ae",A400:"#00e676",A700:"#00c853"},Ja=TN});var kN,Va,oy=h(()=>{kN={50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",A100:"#ffd180",A200:"#ffab40",A400:"#ff9100",A700:"#ff6d00"},Va=kN});var DN,kn,iy=h(()=>{DN={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#f5f5f5",A200:"#eeeeee",A400:"#bdbdbd",A700:"#616161"},kn=DN});var Rd=h(()=>{ty();ry();ny();oy();iy()});var NN,Eo,sl=h(()=>{Rd();Os();au();In();Ps([Gs]);NN={none:{},clustal:{G:"orange",P:"orange",S:"orange",T:"orange",H:"red",K:"red",R:"red",F:"blue",W:"blue",Y:"blue",I:"green",L:"green",M:"green",V:"green"},lesk:{G:"orange",A:"orange",S:"orange",T:"orange",C:"green",V:"green",I:"green",L:"green",P:"green",F:"green",Y:"green",M:"green",W:"green",N:"magenta",Q:"magenta",H:"magenta",D:"red",E:"red",K:"blue",R:"blue"},maeditor:{A:"lightgreen",G:"lightgreen",C:"green",D:"darkgreen",E:"darkgreen",N:"darkgreen",Q:"darkgreen",I:"blue",L:"blue",M:"blue",V:"blue",F:"#c8a2c8",W:"#c8a2c8",Y:"#c8a2c8",H:"darkblue",K:"orange",R:"orange",P:"pink",S:"red",T:"red"},percent_identity_dynamic:{},flower:{A:"#b18a51",C:"#ff5701",D:"#01a578",E:"#2da0a1",F:"#fa559d",G:"#b1c23c",H:"#0194f9",I:"#f27663",K:"#7fc3d7",L:"#df6e75",M:"#fe9daf",N:"#0bcec6",P:"#4fa32a",Q:"#7295ae",R:"#83bff1",S:"#b4bd9b",T:"#d2b576",V:"#fd997b",W:"#ff2ded",Y:"#c96ecf"},rainbow_dna:{A:"#3737f5",C:"#37f537",G:"#f5f537",T:"#f53737",U:"#f53737"},clustalx_protein:{A:"#197fe5",C:"#e57f7f",D:"#cc4ccc",E:"#cc4ccc",F:"#197fe5",G:"#e5994c",H:"#19b2b2",I:"#197fe5",K:"#e53319",L:"#197fe5",M:"#197fe5",N:"#19cc19",P:"#cccc00",Q:"#19cc19",R:"#e53319",S:"#19cc19",T:"#19cc19",V:"#197fe5",W:"#197fe5",Y:"#19b2b2"},clustalx_protein_dynamic:{},clustalx_dna:{A:"#e53319",C:"#197fe5",G:"#e5994c",T:"#19cc19",U:"#19cc19"},jbrowse_dna:{A:Ja[500],C:qa[500],G:Va[500],T:Ni[500],U:Ni[500]},jalview_buried:{A:"#00a35c",R:"#00fc03",N:"#00eb14",D:"#00eb14",C:"#0000ff",Q:"#00f10e",E:"#00f10e",G:"#009d62",H:"#00d52a",I:"#0054ab",L:"#007b84",K:"#00ff00",M:"#009768",F:"#008778",P:"#00e01f",S:"#00d52a",T:"#00db24",W:"#00a857",Y:"#00e619",V:"#005fa0",B:"#00eb14",X:"#00b649",Z:"#00f10e"},jalview_hydrophobicity:{A:"#ad0052",R:"#0000ff",N:"#0c00f3",D:"#0c00f3",C:"#c2003d",Q:"#0c00f3",E:"#0c00f3",G:"#6a0095",H:"#1500ea",I:"#ff0000",L:"#ea0015",K:"#0000ff",M:"#b0004f",F:"#cb0034",P:"#4600b9",S:"#5e00a1",T:"#61009e",W:"#5b00a4",Y:"#4f00b0",V:"#f60009",B:"#0c00f3",X:"#680097",Z:"#0c00f3"},jalview_prophelix:{A:"#e718e7",R:"#6f906f",N:"#1be41b",D:"#778877",C:"#23dc23",Q:"#926d92",E:"#ff00ff",G:"#00ff00",H:"#758a75",I:"#8a758a",L:"#ae51ae",K:"#a05fa0",M:"#ef10ef",F:"#986798",P:"#00ff00",S:"#36c936",T:"#47b847",W:"#8a758a",Y:"#21de21",V:"#857a85",B:"#49b649",X:"#758a75",Z:"#c936c9"},jalview_propstrand:{A:"#5858a7",R:"#6b6b94",N:"#64649b",D:"#2121de",C:"#9d9d62",Q:"#8c8c73",E:"#0000ff",G:"#4949b6",H:"#60609f",I:"#ecec13",L:"#b2b24d",K:"#4747b8",M:"#82827d",F:"#c2c23d",P:"#2323dc",S:"#4949b6",T:"#9d9d62",W:"#c0c03f",Y:"#d3d32c",V:"#ffff00",B:"#4343bc",X:"#797986",Z:"#4747b8"},jalview_propturn:{A:"#2cd3d3",R:"#708f8f",N:"#ff0000",D:"#e81717",C:"#a85757",Q:"#3fc0c0",E:"#778888",G:"#ff0000",H:"#708f8f",I:"#00ffff",L:"#1ce3e3",K:"#7e8181",M:"#1ee1e1",F:"#1ee1e1",P:"#f60909",S:"#e11e1e",T:"#738c8c",W:"#738c8c",Y:"#9d6262",V:"#07f8f8",B:"#f30c0c",X:"#7c8383",Z:"#5ba4a4"},jalview_taylor:{A:"#ccff00",R:"#0000ff",N:"#cc00ff",D:"#ff0000",C:"#ffff00",Q:"#ff00cc",E:"#ff0066",G:"#ff9900",H:"#0066ff",I:"#66ff00",L:"#33ff00",K:"#6600ff",M:"#00ff00",F:"#00ff66",P:"#ffcc00",S:"#ff3300",T:"#ff6600",W:"#00ccff",Y:"#00ffcc",V:"#99ff00"},jalview_zappo:{A:"#ffafaf",R:"#6464ff",N:"#00ff00",D:"#ff0000",C:"#ffff00",Q:"#00ff00",E:"#ff0000",G:"#ff00ff",H:"#6464ff",I:"#ffafaf",L:"#ffafaf",K:"#6464ff",M:"#ffafaf",F:"#ffc800",P:"#ff00ff",S:"#00ff00",T:"#00ff00",W:"#ffc800",Y:"#ffc800",V:"#ffafaf"},cinema:{H:"blue",K:"blue",R:"blue",D:"red",E:"red",S:"green",T:"green",N:"green",Q:"green",A:"white",V:"white",L:"white",I:"white",M:"white",F:"magenta",W:"magenta",Y:"magenta",P:"brown",G:"brown",C:"yellow",B:"gray",Z:"gray",X:"gray","-":"gray",".":"gray"}},Eo=Vo(NN,([e,t])=>[e,Vo(t,([r,n])=>[r,it(n).toHex()])])});var Fd,ay,LN,sy,cy=h(()=>{Fd=f(v(),1);Di();ey();ay=f(H(),1);sl();LN=(0,ay.observer)(function({model:e}){let{colorSchemeName:t}=e;return Fd.default.createElement(Fr,{"data-testid":"color_scheme_menu",closeAfterItemClick:!0,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:Object.keys(Eo).map(r=>({label:r,type:"radio",checked:t===r,onClick:()=>{e.setColorSchemeName(r)}}))},Fd.default.createElement(Zw,null))}),sy=LN});var ly,Ay,uy=h(()=>{"use client";V();ly=f(O(),1),Ay=(0,R.createSvgIcon)((0,ly.jsx)("path",{d:"M19 3h-4.18C14.4 1.84 13.3 1 12 1s-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2m-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1m2 14H7v-2h7zm3-4H7v-2h10zm0-4H7V7h10z"}),"Assignment")});var fy,cl,Pd=h(()=>{"use client";V();fy=f(O(),1),cl=(0,R.createSvgIcon)((0,fy.jsx)("path",{d:"M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2m0 12H4V8h16z"}),"FolderOpen")});var dy,my,py=h(()=>{"use client";V();dy=f(O(),1),my=(0,R.createSvgIcon)((0,dy.jsx)("path",{d:"M3 18h18v-2H3zm0-5h18v-2H3zm0-7v2h18V6z"}),"Menu")});var Od,gy,hy=h(()=>{"use client";V();Od=f(O(),1),gy=(0,R.createSvgIcon)([(0,Od.jsx)("circle",{cx:"12",cy:"12",r:"3.2"},"0"),(0,Od.jsx)("path",{d:"M9 2 7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-3.17L15 2zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5"},"1")],"PhotoCamera")});var Cy,ll,Gd=h(()=>{"use client";V();Cy=f(O(),1),ll=(0,R.createSvgIcon)((0,Cy.jsx)("path",{d:"M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58c.18-.14.23-.41.12-.61l-1.92-3.32c-.12-.22-.37-.29-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54c-.04-.24-.24-.41-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58c-.18.14-.23.41-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6"}),"Settings")});var Ey,Iy,xy=h(()=>{"use client";V();Ey=f(O(),1),Iy=(0,R.createSvgIcon)((0,Ey.jsx)("path",{d:"M4.25 5.61C6.27 8.2 10 13 10 13v6c0 .55.45 1 1 1h2c.55 0 1-.45 1-1v-6s3.72-4.8 5.74-7.39c.51-.66.04-1.61-.79-1.61H5.04c-.83 0-1.3.95-.79 1.61"}),"FilterAlt")});var wy,yy,by=h(()=>{"use client";V();wy=f(O(),1),yy=(0,R.createSvgIcon)((0,wy.jsx)("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"}),"Search")});var By,Sy,Qy=h(()=>{"use client";V();By=f(O(),1),Sy=(0,R.createSvgIcon)((0,By.jsx)("path",{d:"M3 18h6v-2H3zM3 6v2h18V6zm0 7h12v-2H3z"}),"Sort")});var vy,My,_y=h(()=>{"use client";V();vy=f(O(),1),My=(0,R.createSvgIcon)((0,vy.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5M12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5m0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3"}),"Visibility")});function Ty(e){return Ud[Math.min(e,Ud.length-1)]}var Ud,Hd,jd=h(()=>{Ud=[["#F8766D"],["#F8766D","#00BFC4"],["#F8766D","#00BA38","#619CFF"],["#F8766D","#7CAE00","#00BFC4","#C77CFF"],["#F8766D","#A3A500","#00BF7D","#00B0F6","#E76BF3"],["#F8766D","#B79F00","#00BA38","#00BFC4","#619CFF","#F564E3"],["#F8766D","#C49A00","#53B400","#00C094","#00B6EB","#A58AFF","#FB61D7"],["#F8766D","#CD9600","#7CAE00","#00BE67","#00BFC4","#00A9FF","#C77CFF","#FF61CC"]];Hd=Ud});var Dy={};$e(Dy,{default:()=>ON});var pe,ky,Ya,Al,RN,FN,PN,ON,Ny=h(()=>{pe=f(v(),1),ky=f(Me(),1),Ya=f(F(),1),Al=f(H(),1);jd();RN=(0,Al.observer)(function({model:e}){let{featureFilters:t}=e;return pe.default.createElement("div",null,pe.default.createElement(Ya.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!0)}},"Toggle all on"),pe.default.createElement(Ya.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!1)}},"Toggle all off"))}),FN=(0,Al.observer)(function({model:e}){let{tidyInterProAnnotationTypes:t,featureFilters:r}=e,n=[...t.values()],o=Ty(n.length-1);return pe.default.createElement(pe.default.Fragment,null,pe.default.createElement(RN,{model:e}),pe.default.createElement("table",null,pe.default.createElement("thead",null,pe.default.createElement("tr",null,pe.default.createElement("td",null),pe.default.createElement("td",null,"accession"),pe.default.createElement("td",null,"name"),pe.default.createElement("td",null,"description"))),pe.default.createElement("tbody",null,n.map(({accession:i,name:a,description:s},c)=>pe.default.createElement("tr",{key:i},pe.default.createElement("td",null,pe.default.createElement("input",{type:"checkbox",checked:r.get(i)??!1,onChange:()=>{e.setFilter(i,!e.featureFilters.get(i))}})),pe.default.createElement("td",null,i),pe.default.createElement("td",null,a),pe.default.createElement("td",null,s),pe.default.createElement("td",null,pe.default.createElement("div",{style:{width:20,height:20,background:o[c]||"black"}})))))))}),PN=(0,Al.observer)(function({onClose:e,model:t}){return pe.default.createElement(ky.Dialog,{onClose:()=>{e()},open:!0,title:"Feature filters",maxWidth:"xl"},pe.default.createElement(Ya.DialogContent,null,pe.default.createElement(FN,{model:t})))}),ON=PN});async function Wa(e,t,r=Ly.fetchAndMaybeUnzipText){let n=new AbortController;try{return await r(e,{signal:n.signal,statusCallback:o=>{t(o?{msg:o,onCancel:()=>{n.abort()}}:void 0)}})}finally{t(void 0)}}async function Ry(e,t){let r=await fetch(e,t);if(!r.ok)throw new Error(`HTTP ${r.status} fetching ${e} ${await r.text()}`);return r}async function qd(e,t){return(await Ry(e,t)).text()}async function ul(e,t){return(await Ry(e,t)).json()}function Fy(e,t){return new Promise((r,n)=>{if(t?.aborted)n(new DOMException("Aborted","AbortError"));else{let o=setTimeout(r,e);t?.addEventListener("abort",()=>{clearTimeout(o),n(new DOMException("Aborted","AbortError"))})}})}function Dn(e){return e instanceof DOMException&&e.name==="AbortError"}var Ly,fl=h(()=>{Ly=f(me(),1)});var Gy={};$e(Gy,{default:()=>UN});var xe,Py,Jd,_e,Oy,GN,UN,Uy=h(()=>{xe=f(v(),1),Py=f(Me(),1),Jd=f(me(),1),_e=f(F(),1),Oy=f(H(),1);fl();GN=(0,Oy.observer)(function({handleClose:e,model:t}){let[r,n]=(0,xe.useState)(),[o,i]=(0,xe.useState)("file"),[a,s]=(0,xe.useState)("");return xe.default.createElement(Py.Dialog,{maxWidth:"xl",title:"Open protein domains from file",onClose:()=>{e()},open:!0},xe.default.createElement(_e.DialogContent,null,xe.default.createElement("div",null,xe.default.createElement(_e.Typography,null,"Open a JSON file of InterProScan results that you run remotely on EBI servers or locally"),xe.default.createElement("div",{style:{display:"flex",margin:30}},xe.default.createElement(_e.FormControl,{component:"fieldset"},xe.default.createElement(_e.RadioGroup,{value:o,onChange:c=>{i(c.target.value)}},xe.default.createElement(_e.FormControlLabel,{value:"url",control:xe.default.createElement(_e.Radio,null),label:"URL"}),xe.default.createElement(_e.FormControlLabel,{value:"file",control:xe.default.createElement(_e.Radio,null),label:"File"}))),o==="url"?xe.default.createElement("div",null,xe.default.createElement(_e.Typography,null,"Open a InterProScan JSON file remote URL"),xe.default.createElement(_e.TextField,{label:"URL",value:a,onChange:c=>{s(c.target.value)}})):null,o==="file"?xe.default.createElement("div",{style:{paddingTop:20}},xe.default.createElement(_e.Typography,null,"Open a InterProScan JSON file file from your local drive"),xe.default.createElement(_e.Button,{variant:"outlined",component:"label"},"Choose File",xe.default.createElement("input",{type:"file",hidden:!0,onChange:({target:c})=>{let l=c.files?.[0];l&&n(l)}}))):null))),xe.default.createElement(_e.DialogActions,null,xe.default.createElement(_e.Button,{variant:"contained",color:"primary",onClick:()=>{(async()=>{try{let c=r?JSON.parse(await r.text()):await ul(a);t.setDomains(Object.fromEntries(c.results.map(l=>[l.xref[0].id,l]))),(0,Jd.getSession)(t).notify("Loaded interproscan results","success")}catch(c){console.error(c),(0,Jd.getSession)(t).notifyError(`${c}`,c)}finally{t.setStatus()}})(),e()}},"Open results")))}),UN=GN});var Hy=h(()=>{});function Li(e,t="node",r=0){let n=`${t}-${r}`;return{...e,id:n,name:e.name||n,children:e.children?.map((o,i)=>Li(o,`${n}-${i}`,r+1))||[]}}var Vd=h(()=>{});var qt,Ri=h(()=>{qt=class{getTree(){return{id:"root",name:"root",noTree:!0,children:this.getNames().map(t=>({id:t,children:[],name:t}))}}getRowData(t){}getStructures(){return{}}getHeader(){return{}}get alignmentNames(){return[]}get seqConsensus(){}get secondaryStructureConsensus(){}get tracks(){return[]}}});function Fi(e){return e>=HN&&e<=jN}var jy,qy,HN,jN,Jy,Vy,ln,Yd=h(()=>{Ri();jy=65,qy=90,HN=97,jN=122,Jy=45,Vy=46;ln=class extends qt{MSA;orderedNames;constructor(t){super();let r=[],n=[];for(let o of t.split(">")){if(!/\S/.test(o))continue;let i=o.indexOf(`
26
+ `):"",this.name="UnsubscriptionError",this.errors=r}})});function qf(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var ZI=g(()=>{});function tx(e){return e instanceof Jc||e&&"closed"in e&&kr(e.remove)&&kr(e.add)&&kr(e.unsubscribe)}function ex(e){kr(e)?e():e.unsubscribe()}var Jc,B6,rx=g(()=>{La();Uc();XI();ZI();Jc=(function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,n,o,i;if(!this.closed){this.closed=!0;var a=this._parentage;if(a)if(this._parentage=null,Array.isArray(a))try{for(var s=jf(a),c=s.next();!c.done;c=s.next()){var l=c.value;l.remove(this)}}catch(E){t={error:E}}finally{try{c&&!c.done&&(r=s.return)&&r.call(s)}finally{if(t)throw t.error}}else a.remove(this);var A=this.initialTeardown;if(kr(A))try{A()}catch(E){i=E instanceof jc?E.errors:[E]}var u=this._finalizers;if(u){this._finalizers=null;try{for(var m=jf(u),d=m.next();!d.done;d=m.next()){var p=d.value;try{ex(p)}catch(E){i=i??[],E instanceof jc?i=bi(bi([],wi(i)),wi(E.errors)):i.push(E)}}}catch(E){n={error:E}}finally{try{d&&!d.done&&(o=m.return)&&o.call(m)}finally{if(n)throw n.error}}}if(i)throw new jc(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)ex(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&qf(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&qf(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=(function(){var t=new e;return t.closed=!0,t})(),e})(),B6=Jc.EMPTY});var wn,qc=g(()=>{wn={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var Bi,Vf=g(()=>{La();Bi={setTimeout:function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var o=Bi.delegate;return o?.setTimeout?o.setTimeout.apply(o,bi([e,t],wi(r))):setTimeout.apply(void 0,bi([e,t],wi(r)))},clearTimeout:function(e){var t=Bi.delegate;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0}});function nx(e){Bi.setTimeout(function(){var t=wn.onUnhandledError;if(t)t(e);else throw e})}var ox=g(()=>{qc();Vf()});function Yf(){}var ix=g(()=>{});function sx(e){return Wf("E",void 0,e)}function cx(e){return Wf("N",e,void 0)}function Wf(e,t,r){return{kind:e,value:t,error:r}}var ax,lx=g(()=>{ax=(function(){return Wf("C",void 0,void 0)})()});function Ax(e){wn.useDeprecatedSynchronousErrorHandling&&zf&&(zf.errorThrown=!0,zf.error=e)}var zf,ux=g(()=>{qc();zf=null});function $f(e,t){return Kk.call(e,t)}function Vc(e){wn.useDeprecatedSynchronousErrorHandling?Ax(e):nx(e)}function Zk(e){throw e}function Kf(e,t){var r=wn.onStoppedNotification;r&&Bi.setTimeout(function(){return r(e,t)})}var Xf,Kk,Xk,Zf,eD,ed=g(()=>{La();Uc();rx();qc();ox();ix();lx();Vf();ux();Xf=(function(e){Na(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,tx(r)&&r.add(n)):n.destination=eD,n}return t.create=function(r,n,o){return new Zf(r,n,o)},t.prototype.next=function(r){this.isStopped?Kf(cx(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?Kf(sx(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?Kf(ax,this):(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},t.prototype._next=function(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t})(Jc),Kk=Function.prototype.bind;Xk=(function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(n){Vc(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){Vc(n)}else Vc(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){Vc(r)}},e})(),Zf=(function(e){Na(t,e);function t(r,n,o){var i=e.call(this)||this,a;if(kr(r)||!r)a={next:r??void 0,error:n??void 0,complete:o??void 0};else{var s;i&&wn.useDeprecatedNextContext?(s=Object.create(r),s.unsubscribe=function(){return i.unsubscribe()},a={next:r.next&&$f(r.next,s),error:r.error&&$f(r.error,s),complete:r.complete&&$f(r.complete,s)}):a=r}return i.destination=new Xk(a),i}return t})(Xf);eD={closed:!0,next:Yf,error:Zk,complete:Yf}});function tD(e){return kr(e?.lift)}function Yc(e){return function(t){if(tD(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}var td=g(()=>{Uc()});function fx(e,t,r,n,o){return new rD(e,t,r,n,o)}var rD,dx=g(()=>{La();ed();rD=(function(e){Na(t,e);function t(r,n,o,i,a,s){var c=e.call(this,r)||this;return c.onFinalize=a,c.shouldUnsubscribe=s,c._next=n?function(l){try{n(l)}catch(A){r.error(A)}}:e.prototype._next,c._error=i?function(l){try{i(l)}catch(A){r.error(A)}finally{this.unsubscribe()}}:e.prototype._error,c._complete=o?function(){try{o()}catch(l){r.error(l)}finally{this.unsubscribe()}}:e.prototype._complete,c}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t})(Xf)});var mx,px=g(()=>{Jf();mx=Hc(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});function rd(e,t){var r=typeof t=="object";return new Promise(function(n,o){var i=new Zf({next:function(a){n(a),i.unsubscribe()},error:o,complete:function(){r?n(t.defaultValue):o(new mx)}});e.subscribe(i)})}var gx=g(()=>{px();ed()});var hx=g(()=>{});function Cx(e,t,r,n,o){return function(i,a){var s=r,c=t,l=0;i.subscribe(fx(a,function(A){var u=l++;c=s?e(c,A,u):(s=!0,A),n&&a.next(c)},o&&(function(){s&&a.next(c),a.complete()})))}}var Ex=g(()=>{dx()});function Ix(e,t){return Yc(Cx(e,t,arguments.length>=2,!1,!0))}var xx=g(()=>{Ex();td()});function nd(){return Yc(function(e,t){Ix(nD,[])(e).subscribe(t)})}var nD,yx=g(()=>{xx();td();nD=function(e,t){return e.push(t),e}});var wx=g(()=>{gx();hx();yx()});var bx=g(()=>{});var Bx=g(()=>{});function oD(){return Sx||(Sx=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function iD(){return Qx||(Qx=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}function aD(e){let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("success",i),e.removeEventListener("error",a)},i=()=>{r(Ao(e.result)),o()},a=()=>{n(e.error),o()};e.addEventListener("success",i),e.addEventListener("error",a)});return Wc.set(t,e),t}function sD(e){if(sd.has(e))return;let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("complete",i),e.removeEventListener("error",a),e.removeEventListener("abort",a)},i=()=>{r(),o()},a=()=>{n(e.error||new DOMException("AbortError","AbortError")),o()};e.addEventListener("complete",i),e.addEventListener("error",a),e.addEventListener("abort",a)});sd.set(e,t)}function Tx(e){cd=e(cd)}function cD(e){return iD().includes(e)?function(...t){return e.apply(ld(this),t),Ao(this.request)}:function(...t){return Ao(e.apply(ld(this),t))}}function lD(e){return typeof e=="function"?cD(e):(e instanceof IDBTransaction&&sD(e),ad(e,oD())?new Proxy(e,cd):e)}function Ao(e){if(e instanceof IDBRequest)return aD(e);if(od.has(e))return od.get(e);let t=lD(e);return t!==e&&(od.set(e,t),Wc.set(t,e)),t}function on(e,t,{blocked:r,upgrade:n,blocking:o,terminated:i}={}){let a=indexedDB.open(e,t),s=Ao(a);return n&&a.addEventListener("upgradeneeded",c=>{n(Ao(a.result),c.oldVersion,c.newVersion,Ao(a.transaction),c)}),r&&a.addEventListener("blocked",c=>r(c.oldVersion,c.newVersion,c)),s.then(c=>{i&&c.addEventListener("close",()=>i()),o&&c.addEventListener("versionchange",l=>o(l.oldVersion,l.newVersion,l))}).catch(()=>{}),s}function vx(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&typeof t=="string"))return;if(id.get(t))return id.get(t);let r=t.replace(/FromIndex$/,""),n=t!==r,o=uD.includes(r);if(!(r in(n?IDBIndex:IDBObjectStore).prototype)||!(o||AD.includes(r)))return;let i=async function(a,...s){let c=this.transaction(a,o?"readwrite":"readonly"),l=c.store;return n&&(l=l.index(s.shift())),(await Promise.all([l[r](...s),o&&c.done]))[0]};return id.set(t,i),i}async function*mD(...e){let t=this;if(t instanceof IDBCursor||(t=await t.openCursor(...e)),!t)return;t=t;let r=new Proxy(t,dD);for(kx.set(r,t),Wc.set(r,ld(t));t;)yield r,t=await(Ad.get(r)||t.continue()),Ad.delete(r)}function _x(e,t){return t===Symbol.asyncIterator&&ad(e,[IDBIndex,IDBObjectStore,IDBCursor])||t==="iterate"&&ad(e,[IDBIndex,IDBObjectStore])}var ad,Sx,Qx,sd,od,Wc,cd,ld,AD,uD,id,fD,Mx,Ad,kx,dD,Si=g(()=>{ad=(e,t)=>t.some(r=>e instanceof r);sd=new WeakMap,od=new WeakMap,Wc=new WeakMap;cd={get(e,t,r){if(e instanceof IDBTransaction){if(t==="done")return sd.get(e);if(t==="store")return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return Ao(e[t])},set(e,t,r){return e[t]=r,!0},has(e,t){return e instanceof IDBTransaction&&(t==="done"||t==="store")?!0:t in e}};ld=e=>Wc.get(e);AD=["get","getKey","getAll","getAllKeys","count"],uD=["put","add","delete","clear"],id=new Map;Tx(e=>({...e,get:(t,r,n)=>vx(t,r)||e.get(t,r,n),has:(t,r)=>!!vx(t,r)||e.has(t,r)}));fD=["continue","continuePrimaryKey","advance"],Mx={},Ad=new WeakMap,kx=new WeakMap,dD={get(e,t){if(!fD.includes(t))return e[t];let r=Mx[t];return r||(r=Mx[t]=function(...n){Ad.set(this,kx.get(this)[t](...n))}),r}};Tx(e=>({...e,get(t,r,n){return _x(t,r)?mD:e.get(t,r,n)},has(t,r){return _x(t,r)||e.has(t,r)}}))});var Dx=g(()=>{Si()});var zc,Nx=g(()=>{zc=f(Rt(),1)});function fd(e,t=10){let r=String(e),n=0;for(let o=0,i=r.length;o<i;o++)n+=hD[r.charCodeAt(o)]??CD;return n*t}function dd(e){let t=0;if(e.length===0)return t;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);t=(t<<5)-t+n,t|=0}return t}function ED(e){let{uri:t,baseUri:r=""}=e,n;try{n=new URL(t,r).href}catch{n=t}return n}function md(e){return tr(e)?Fc(e)?ED(e):JSON.stringify(e):String(e)}function Lx(e){let t=/(^|[\s\n]|<[A-Za-z]*\/?>)((?:https?|ftp):\/\/[-A-Z0-9+\u0026\u2019@#/%?=()~_|!:,.;]*[-A-Z0-9+\u0026@#/%=~()_|])/gi;return e.replaceAll(t,`$1<a href='$2' target="_blank">$2</a>`)}function Rx(e,t){let{padding:r=30,minWidth:n=80,fontSize:o=12,maxWidth:i=1e3,stripHTML:a=!1}=t||{};return pd(e.map(s=>md(s)).map(s=>a?NI(s):s).map(s=>fd(s,o)).map(s=>Math.min(Math.max(s+r,n),i)))}function pd(e,t=Number.NEGATIVE_INFINITY){let r=t;for(let n of e)r=Math.max(n,r);return r}function tr(e){return typeof e=="object"&&e!==null}var ud,Qi,pD,gD,vG,MG,_G,TG,hD,CD,bn=g(()=>{ud=f(M(),1);Rf();Qi=f(Rt(),1),pD=f(TI(),1),gD=f(DI(),1);Ff();Pf();Pf();PI();OI();GI();Ff();WI();zI();$I();KI();bx();Bx();LI();RI();Nx();Dx();vG=180/Math.PI,MG=Math.PI/180,_G=/electron/i.test(typeof navigator<"u"?navigator.userAgent:""),TG=typeof jest>"u"?typeof window<"u"&&window.requestIdleCallback?window.requestIdleCallback:e=>setTimeout(()=>{e()},1):e=>{e()},hD=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,.2796875,.2765625,.3546875,.5546875,.5546875,.8890625,.665625,.190625,.3328125,.3328125,.3890625,.5828125,.2765625,.3328125,.2765625,.3015625,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.2765625,.2765625,.584375,.5828125,.584375,.5546875,1.0140625,.665625,.665625,.721875,.721875,.665625,.609375,.7765625,.721875,.2765625,.5,.665625,.5546875,.8328125,.721875,.7765625,.665625,.7765625,.721875,.665625,.609375,.721875,.665625,.94375,.665625,.665625,.609375,.2765625,.3546875,.2765625,.4765625,.5546875,.3328125,.5546875,.5546875,.5,.5546875,.5546875,.2765625,.5546875,.5546875,.221875,.240625,.5,.221875,.8328125,.5546875,.5546875,.5546875,.5546875,.3328125,.5,.2765625,.5546875,.5,.721875,.5,.5,.5,.3546875,.259375,.353125,.5890625],CD=.5279276315789471});function Fx(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function ID(e){if(Array.isArray(e))return e}function xD(e,t){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,o,i,a,s=[],c=!0,l=!1;try{if(i=(r=r.call(e)).next,t!==0)for(;!(c=(n=i.call(r)).done)&&(s.push(n.value),s.length!==t);c=!0);}catch(A){l=!0,o=A}finally{try{if(!c&&r.return!=null&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return s}}function yD(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
27
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function wD(e,t){return ID(e)||xD(e,t)||bD(e,t)||yD()}function bD(e,t){if(e){if(typeof e=="string")return Fx(e,t);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Fx(e,t):void 0}}function Ge(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return xd(e,t,n)}}function DD(e){return function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return yd(e,r)}}function z(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Oa;if(Px&&Px(e,null),!Sn(t))return e;let n=t.length;for(;n--;){let o=t[n];if(typeof o=="string"){let i=r(o);i!==o&&(BD(t)||(t[n]=i),o=i)}e[o]=!0}return e}function ND(e){for(let t=0;t<e.length;t++)$e(e,t)||(e[t]=null);return e}function Bt(e){let t=Mi(null);for(let n of Kx(e)){var r=wD(n,2);let o=r[0],i=r[1];$e(e,o)&&(Sn(i)?t[o]=ND(i):i&&typeof i=="object"&&i.constructor===Object?t[o]=Bt(i):t[o]=i)}return t}function LD(e){switch(typeof e){case"string":return e;case"number":return TD(e);case"boolean":return kD(e);case"bigint":return Hx?Hx(e):"0";case"symbol":return jx?jx(e):"Symbol()";case"undefined":return Pa(e);case"function":case"object":{if(e===null)return Pa(e);let t=e,r=Nr(t,"toString");if(typeof r=="function"){let n=r(t);return typeof n=="string"?n:Pa(n)}return Pa(e)}default:return Pa(e)}}function Nr(e,t){for(;e!==null;){let n=QD(e,t);if(n){if(n.get)return Ge(n.get);if(typeof n.value=="function")return Ge(n.value)}e=SD(e)}function r(){return null}return r}function RD(e){try{return it(e,""),!0}catch{return!1}}function Zx(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:KD(),t=N=>Zx(N);if(t.version="3.4.11",t.removed=[],!e||!e.document||e.document.nodeType!==Dr.document||!e.Element)return t.isSupported=!1,t;let r=e.document,n=r,o=n.currentScript;e.DocumentFragment;let i=e.HTMLTemplateElement,a=e.Node,s=e.Element,c=e.NodeFilter,l=e.NamedNodeMap;l===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;let A=e.DOMParser,u=e.trustedTypes,m=s.prototype,d=Nr(m,"cloneNode"),p=Nr(m,"remove"),E=Nr(m,"nextSibling"),x=Nr(m,"childNodes"),I=Nr(m,"parentNode"),C=Nr(m,"shadowRoot"),w=Nr(m,"attributes"),y=a&&a.prototype?Nr(a.prototype,"nodeType"):null,b=a&&a.prototype?Nr(a.prototype,"nodeName"):null;if(typeof i=="function"){let N=r.createElement("template");N.content&&N.content.ownerDocument&&(r=N.content.ownerDocument)}let Q,S="",k,T=!1,_=0,v=function(){if(_>0)throw uo('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},L=function(h){v(),_++;try{return Q.createHTML(h)}finally{_--}},U=function(h){v(),_++;try{return Q.createScriptURL(h)}finally{_--}},Y=function(){return T||(k=XD(u,o),T=!0),k},ke=r,te=ke.implementation,Re=ke.createNodeIterator,Tt=ke.createDocumentFragment,Yn=ke.getElementsByTagName,sr=n.importNode,re=$x();t.isSupported=typeof Kx=="function"&&typeof I=="function"&&te&&te.createHTMLDocument!==void 0;let cr=OD,Vr=GD,Mo=UD,Xi=HD,_o=jD,Yr=JD,mn=qD,QA=YD,Zi=Wx,pe=null,Is=z({},[...Jx,...hd,...Cd,...Ed,...qx]),ye=null,pn=z({},[...Vx,...Id,...Yx,...$c]),ge=Object.seal(Mi(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),To=null,ae=null,ne=Object.seal(Mi(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),we=!0,he=!0,Nt=!1,Et=!0,le=!1,et=!0,Lt=!1,Wr=!1,ko=null,Do=null,ut=!1,ft=!1,gn=!1,No=!1,Lo=!0,Fp=!1,Pp="user-content-",vA=!0,MA=!1,Ro={},Sr=null,_A=z({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]),Op=null,Gp=z({},["audio","video","img","source","image","track"]),TA=null,Up=z({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),xs="http://www.w3.org/1998/Math/MathML",ys="http://www.w3.org/2000/svg",Qr="http://www.w3.org/1999/xhtml",Fo=Qr,kA=!1,DA=null,BM=z({},[xs,ys,Qr],gd),Hp=at(["mi","mo","mn","ms","mtext"]),NA=z({},Hp),jp=at(["annotation-xml"]),LA=z({},jp),SM=z({},["title","style","font","a","script"]),ea=null,QM=["application/xhtml+xml","text/html"],vM="text/html",Me=null,Po=null,MM=r.createElement("form"),Jp=function(h){return h instanceof RegExp||h instanceof Function},RA=function(){let h=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Po&&Po===h)return;(!h||typeof h!="object")&&(h={}),h=Bt(h),ea=QM.indexOf(h.PARSER_MEDIA_TYPE)===-1?vM:h.PARSER_MEDIA_TYPE,Me=ea==="application/xhtml+xml"?gd:Oa,pe=Bn(h,"ALLOWED_TAGS",Is,{transform:Me}),ye=Bn(h,"ALLOWED_ATTR",pn,{transform:Me}),DA=Bn(h,"ALLOWED_NAMESPACES",BM,{transform:gd}),TA=Bn(h,"ADD_URI_SAFE_ATTR",Up,{transform:Me,base:Up}),Op=Bn(h,"ADD_DATA_URI_TAGS",Gp,{transform:Me,base:Gp}),Sr=Bn(h,"FORBID_CONTENTS",_A,{transform:Me}),To=Bn(h,"FORBID_TAGS",Bt({}),{transform:Me}),ae=Bn(h,"FORBID_ATTR",Bt({}),{transform:Me}),Ro=$e(h,"USE_PROFILES")?h.USE_PROFILES&&typeof h.USE_PROFILES=="object"?Bt(h.USE_PROFILES):h.USE_PROFILES:!1,we=h.ALLOW_ARIA_ATTR!==!1,he=h.ALLOW_DATA_ATTR!==!1,Nt=h.ALLOW_UNKNOWN_PROTOCOLS||!1,Et=h.ALLOW_SELF_CLOSE_IN_ATTR!==!1,le=h.SAFE_FOR_TEMPLATES||!1,et=h.SAFE_FOR_XML!==!1,Lt=h.WHOLE_DOCUMENT||!1,ft=h.RETURN_DOM||!1,gn=h.RETURN_DOM_FRAGMENT||!1,No=h.RETURN_TRUSTED_TYPE||!1,ut=h.FORCE_BODY||!1,Lo=h.SANITIZE_DOM!==!1,Fp=h.SANITIZE_NAMED_PROPS||!1,vA=h.KEEP_CONTENT!==!1,MA=h.IN_PLACE||!1,Zi=RD(h.ALLOWED_URI_REGEXP)?h.ALLOWED_URI_REGEXP:Wx,Fo=typeof h.NAMESPACE=="string"?h.NAMESPACE:Qr,NA=$e(h,"MATHML_TEXT_INTEGRATION_POINTS")&&h.MATHML_TEXT_INTEGRATION_POINTS&&typeof h.MATHML_TEXT_INTEGRATION_POINTS=="object"?Bt(h.MATHML_TEXT_INTEGRATION_POINTS):z({},Hp),LA=$e(h,"HTML_INTEGRATION_POINTS")&&h.HTML_INTEGRATION_POINTS&&typeof h.HTML_INTEGRATION_POINTS=="object"?Bt(h.HTML_INTEGRATION_POINTS):z({},jp);let B=$e(h,"CUSTOM_ELEMENT_HANDLING")&&h.CUSTOM_ELEMENT_HANDLING&&typeof h.CUSTOM_ELEMENT_HANDLING=="object"?Bt(h.CUSTOM_ELEMENT_HANDLING):Mi(null);if(ge=Mi(null),$e(B,"tagNameCheck")&&Jp(B.tagNameCheck)&&(ge.tagNameCheck=B.tagNameCheck),$e(B,"attributeNameCheck")&&Jp(B.attributeNameCheck)&&(ge.attributeNameCheck=B.attributeNameCheck),$e(B,"allowCustomizedBuiltInElements")&&typeof B.allowCustomizedBuiltInElements=="boolean"&&(ge.allowCustomizedBuiltInElements=B.allowCustomizedBuiltInElements),st(ge),le&&(he=!1),gn&&(ft=!0),Ro&&(pe=z({},qx),ye=Mi(null),Ro.html===!0&&(z(pe,Jx),z(ye,Vx)),Ro.svg===!0&&(z(pe,hd),z(ye,Id),z(ye,$c)),Ro.svgFilters===!0&&(z(pe,Cd),z(ye,Id),z(ye,$c)),Ro.mathMl===!0&&(z(pe,Ed),z(ye,Yx),z(ye,$c))),ne.tagCheck=null,ne.attributeCheck=null,$e(h,"ADD_TAGS")&&(typeof h.ADD_TAGS=="function"?ne.tagCheck=h.ADD_TAGS:Sn(h.ADD_TAGS)&&(pe===Is&&(pe=Bt(pe)),z(pe,h.ADD_TAGS,Me))),$e(h,"ADD_ATTR")&&(typeof h.ADD_ATTR=="function"?ne.attributeCheck=h.ADD_ATTR:Sn(h.ADD_ATTR)&&(ye===pn&&(ye=Bt(ye)),z(ye,h.ADD_ATTR,Me))),$e(h,"ADD_URI_SAFE_ATTR")&&Sn(h.ADD_URI_SAFE_ATTR)&&z(TA,h.ADD_URI_SAFE_ATTR,Me),$e(h,"FORBID_CONTENTS")&&Sn(h.FORBID_CONTENTS)&&(Sr===_A&&(Sr=Bt(Sr)),z(Sr,h.FORBID_CONTENTS,Me)),$e(h,"ADD_FORBID_CONTENTS")&&Sn(h.ADD_FORBID_CONTENTS)&&(Sr===_A&&(Sr=Bt(Sr)),z(Sr,h.ADD_FORBID_CONTENTS,Me)),vA&&(pe["#text"]=!0),Lt&&z(pe,["html","head","body"]),pe.table&&(z(pe,["tbody"]),delete To.tbody),h.TRUSTED_TYPES_POLICY){if(typeof h.TRUSTED_TYPES_POLICY.createHTML!="function")throw uo('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof h.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw uo('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let D=Q;Q=h.TRUSTED_TYPES_POLICY;try{S=L("")}catch(G){throw Q=D,G}}else h.TRUSTED_TYPES_POLICY===null?(Q=void 0,S=""):(Q===void 0&&(Q=Y()),Q&&typeof S=="string"&&(S=L("")));at&&at(h),Po=h},qp=z({},[...hd,...Cd,...FD]),Vp=z({},[...Ed,...PD]),_M=function(h,B,D){return B.namespaceURI===Qr?h==="svg":B.namespaceURI===xs?h==="svg"&&(D==="annotation-xml"||NA[D]):!!qp[h]},TM=function(h,B,D){return B.namespaceURI===Qr?h==="math":B.namespaceURI===ys?h==="math"&&LA[D]:!!Vp[h]},kM=function(h,B,D){return B.namespaceURI===ys&&!LA[D]||B.namespaceURI===xs&&!NA[D]?!1:!Vp[h]&&(SM[h]||!qp[h])},DM=function(h){let B=I(h);(!B||!B.tagName)&&(B={namespaceURI:Fo,tagName:"template"});let D=Oa(h.tagName),G=Oa(B.tagName);return DA[h.namespaceURI]?h.namespaceURI===ys?_M(D,B,G):h.namespaceURI===xs?TM(D,B,G):h.namespaceURI===Qr?kM(D,B,G):!!(ea==="application/xhtml+xml"&&DA[h.namespaceURI]):!1},hn=function(h){vi(t.removed,{element:h});try{I(h).removeChild(h)}catch{if(p(h),!I(h))throw uo("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Yp=function(h){let B=x(h);if(B){let G=[];Ra(B,J=>{vi(G,J)}),Ra(G,J=>{try{p(J)}catch{}})}let D=w(h);if(D)for(let G=D.length-1;G>=0;--G){let J=D[G],$=J&&J.name;if(typeof $=="string")try{h.removeAttribute($)}catch{}}},Wn=function(h,B){try{vi(t.removed,{attribute:B.getAttributeNode(h),from:B})}catch{vi(t.removed,{attribute:null,from:B})}if(B.removeAttribute(h),h==="is")if(ft||gn)try{hn(B)}catch{}else try{B.setAttribute(h,"")}catch{}},NM=function(h){let B=w(h);if(B)for(let D=B.length-1;D>=0;--D){let G=B[D],J=G&&G.name;if(!(typeof J!="string"||ye[Me(J)]))try{h.removeAttribute(J)}catch{}}},LM=function(h){let B=[h];for(;B.length>0;){let D=B.pop();(y?y(D):D.nodeType)===Dr.element&&NM(D);let J=x(D);if(J)for(let $=J.length-1;$>=0;--$)B.push(J[$])}},Wp=function(h){let B=null,D=null;if(ut)h="<remove></remove>"+h;else{let $=Gx(h,/^[\r\n\t ]+/);D=$&&$[0]}ea==="application/xhtml+xml"&&Fo===Qr&&(h='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+h+"</body></html>");let G=Q?L(h):h;if(Fo===Qr)try{B=new A().parseFromString(G,ea)}catch{}if(!B||!B.documentElement){B=te.createDocument(Fo,"template",null);try{B.documentElement.innerHTML=kA?S:G}catch{}}let J=B.body||B.documentElement;return h&&D&&J.insertBefore(r.createTextNode(D),J.childNodes[0]||null),Fo===Qr?Yn.call(B,Lt?"html":"body")[0]:Lt?B.documentElement:J},zp=function(h){return Re.call(h.ownerDocument||h,h,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},ws=function(h){return h=Fa(h,cr," "),h=Fa(h,Vr," "),h=Fa(h,Mo," "),h},FA=function(h){var B;h.normalize();let D=Re.call(h.ownerDocument||h,h,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null),G=D.nextNode();for(;G;)G.data=ws(G.data),G=D.nextNode();let J=(B=h.querySelectorAll)===null||B===void 0?void 0:B.call(h,"template");J&&Ra(J,$=>{Oo($.content)&&FA($.content)})},bs=function(h){let B=b?b(h):null;return typeof B!="string"||Me(B)!=="form"?!1:typeof h.nodeName!="string"||typeof h.textContent!="string"||typeof h.removeChild!="function"||h.attributes!==w(h)||typeof h.removeAttribute!="function"||typeof h.setAttribute!="function"||typeof h.namespaceURI!="string"||typeof h.insertBefore!="function"||typeof h.hasChildNodes!="function"||h.nodeType!==y(h)||h.childNodes!==x(h)},Oo=function(h){if(!y||typeof h!="object"||h===null)return!1;try{return y(h)===Dr.documentFragment}catch{return!1}},ta=function(h){if(!y||typeof h!="object"||h===null)return!1;try{return typeof y(h)=="number"}catch{return!1}};function zr(N,h,B){N.length!==0&&Ra(N,D=>{D.call(t,h,B,Po)})}let RM=function(h,B){return!!(et&&h.hasChildNodes()&&!ta(h.firstElementChild)&&it(zx,h.textContent)&&it(zx,h.innerHTML)||et&&h.namespaceURI===Qr&&B==="style"&&ta(h.firstElementChild)||h.nodeType===Dr.processingInstruction||et&&h.nodeType===Dr.comment&&it(WD,h.data))},FM=function(h,B){if(!To[B]&&Xp(B)&&(ge.tagNameCheck instanceof RegExp&&it(ge.tagNameCheck,B)||ge.tagNameCheck instanceof Function&&ge.tagNameCheck(B)))return!1;if(vA&&!Sr[B]){let D=I(h),G=x(h);if(G&&D){let J=G.length;for(let $=J-1;$>=0;--$){let Ve=MA?G[$]:d(G[$],!0);D.insertBefore(Ve,E(h))}}}return hn(h),!0},$p=function(h){if(zr(re.beforeSanitizeElements,h,null),bs(h))return hn(h),!0;let B=Me(b?b(h):h.nodeName);if(zr(re.uponSanitizeElement,h,{tagName:B,allowedTags:pe}),RM(h,B))return hn(h),!0;if(To[B]||!(ne.tagCheck instanceof Function&&ne.tagCheck(B))&&!pe[B])return FM(h,B);if((y?y(h):h.nodeType)===Dr.element&&!DM(h)||(B==="noscript"||B==="noembed"||B==="noframes")&&it(zD,h.innerHTML))return hn(h),!0;if(le&&h.nodeType===Dr.text){let G=ws(h.textContent);h.textContent!==G&&(vi(t.removed,{element:h.cloneNode()}),h.textContent=G)}return zr(re.afterSanitizeElements,h,null),!1},Kp=function(h,B,D){if(ae[B]||Lo&&(B==="id"||B==="name")&&(D in r||D in MM))return!1;let G=ye[B]||ne.attributeCheck instanceof Function&&ne.attributeCheck(B,h);if(!(he&&it(Xi,B))){if(!(we&&it(_o,B))){if(G){if(!TA[B]){if(!it(Zi,Fa(D,mn,""))){if(!((B==="src"||B==="xlink:href"||B==="href")&&h!=="script"&&Ux(D,"data:")===0&&Op[h])){if(!(Nt&&!it(Yr,Fa(D,mn,"")))){if(D)return!1}}}}}else if(!(Xp(h)&&(ge.tagNameCheck instanceof RegExp&&it(ge.tagNameCheck,h)||ge.tagNameCheck instanceof Function&&ge.tagNameCheck(h))&&(ge.attributeNameCheck instanceof RegExp&&it(ge.attributeNameCheck,B)||ge.attributeNameCheck instanceof Function&&ge.attributeNameCheck(B,h))||B==="is"&&ge.allowCustomizedBuiltInElements&&(ge.tagNameCheck instanceof RegExp&&it(ge.tagNameCheck,D)||ge.tagNameCheck instanceof Function&&ge.tagNameCheck(D))))return!1}}return!0},PM=z({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Xp=function(h){return!PM[Oa(h)]&&it(QA,h)},OM=function(h,B,D,G){if(Q&&typeof u=="object"&&typeof u.getAttributeType=="function"&&!D)switch(u.getAttributeType(h,B)){case"TrustedHTML":return L(G);case"TrustedScriptURL":return U(G)}return G},GM=function(h,B,D,G){try{D?h.setAttributeNS(D,B,G):h.setAttribute(B,G),bs(h)?hn(h):Ox(t.removed)}catch{Wn(B,h)}},Zp=function(h){zr(re.beforeSanitizeAttributes,h,null);let B=h.attributes;if(!B||bs(h))return;let D={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ye,forceKeepAttr:void 0},G=B.length,J=Me(h.nodeName);for(;G--;){let $=B[G],Ve=$.name,Fe=$.namespaceURI,Vt=$.value,lr=Me(Ve),OA=Vt,It=Ve==="value"?OA:_D(OA);if(D.attrName=lr,D.attrValue=It,D.keepAttr=!0,D.forceKeepAttr=void 0,zr(re.uponSanitizeAttribute,h,D),It=D.attrValue,Fp&&(lr==="id"||lr==="name")&&Ux(It,Pp)!==0&&(Wn(Ve,h),It=Pp+It),et&&it(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,It)){Wn(Ve,h);continue}if(lr==="attributename"&&Gx(It,"href")){Wn(Ve,h);continue}if(!D.forceKeepAttr){if(!D.keepAttr){Wn(Ve,h);continue}if(!Et&&it($D,It)){Wn(Ve,h);continue}if(le&&(It=ws(It)),!Kp(J,lr,It)){Wn(Ve,h);continue}It=OM(J,lr,Fe,It),It!==OA&&GM(h,Ve,Fe,It)}}zr(re.afterSanitizeAttributes,h,null)},Bs=function(h){let B=null,D=zp(h);for(zr(re.beforeSanitizeShadowDOM,h,null);B=D.nextNode();)if(zr(re.uponSanitizeShadowNode,B,null),$p(B),Zp(B),Oo(B.content)&&Bs(B.content),(y?y(B):B.nodeType)===Dr.element){let J=C(B);Oo(J)&&(PA(J),Bs(J))}zr(re.afterSanitizeShadowDOM,h,null)},PA=function(h){let B=[{node:h,shadow:null}];for(;B.length>0;){let D=B.pop();if(D.shadow){Bs(D.shadow);continue}let G=D.node,$=(y?y(G):G.nodeType)===Dr.element,Ve=x(G);if(Ve)for(let Fe=Ve.length-1;Fe>=0;--Fe)B.push({node:Ve[Fe],shadow:null});if($){let Fe=b?b(G):null;if(typeof Fe=="string"&&Me(Fe)==="template"){let Vt=G.content;Oo(Vt)&&B.push({node:Vt,shadow:null})}}if($){let Fe=C(G);Oo(Fe)&&B.push({node:null,shadow:Fe},{node:Fe,shadow:null})}}};return t.sanitize=function(N){let h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},B=null,D=null,G=null,J=null;if(kA=!N,kA&&(N="<!-->"),typeof N!="string"&&!ta(N)&&(N=LD(N),typeof N!="string"))throw uo("dirty is not a string, aborting");if(!t.isSupported)return N;Wr?(pe=ko,ye=Do):RA(h),(re.uponSanitizeElement.length>0||re.uponSanitizeAttribute.length>0)&&(pe=Bt(pe)),re.uponSanitizeAttribute.length>0&&(ye=Bt(ye)),t.removed=[];let $=MA&&typeof N!="string"&&ta(N);if($){let Vt=b?b(N):N.nodeName;if(typeof Vt=="string"){let lr=Me(Vt);if(!pe[lr]||To[lr])throw uo("root node is forbidden and cannot be sanitized in-place")}if(bs(N))throw uo("root node is clobbered and cannot be sanitized in-place");try{PA(N)}catch(lr){throw Yp(N),lr}}else if(ta(N))B=Wp("<!---->"),D=B.ownerDocument.importNode(N,!0),D.nodeType===Dr.element&&D.nodeName==="BODY"||D.nodeName==="HTML"?B=D:B.appendChild(D),PA(D);else{if(!ft&&!le&&!Lt&&N.indexOf("<")===-1)return Q&&No?L(N):N;if(B=Wp(N),!B)return ft?null:No?S:""}B&&ut&&hn(B.firstChild);let Ve=zp($?N:B);try{for(;G=Ve.nextNode();)$p(G),Zp(G),Oo(G.content)&&Bs(G.content)}catch(Vt){throw $&&Yp(N),Vt}if($)return Ra(t.removed,Vt=>{Vt.element&&LM(Vt.element)}),le&&FA(N),N;if(ft){if(le&&FA(B),gn)for(J=Tt.call(B.ownerDocument);B.firstChild;)J.appendChild(B.firstChild);else J=B;return(ye.shadowroot||ye.shadowrootmode)&&(J=sr.call(n,J,!0)),J}let Fe=Lt?B.outerHTML:B.innerHTML;return Lt&&pe["!doctype"]&&B.ownerDocument&&B.ownerDocument.doctype&&B.ownerDocument.doctype.name&&it(VD,B.ownerDocument.doctype.name)&&(Fe="<!DOCTYPE "+B.ownerDocument.doctype.name+`>
28
+ `+Fe),le&&(Fe=ws(Fe)),Q&&No?L(Fe):Fe},t.setConfig=function(){let N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};RA(N),Wr=!0,ko=pe,Do=ye},t.clearConfig=function(){Po=null,Wr=!1,ko=null,Do=null,Q=k,S=""},t.isValidAttribute=function(N,h,B){Po||RA({});let D=Me(N),G=Me(h);return Kp(D,G,B)},t.addHook=function(N,h){typeof h=="function"&&$e(re,N)&&vi(re[N],h)},t.removeHook=function(N,h){if($e(re,N)){if(h!==void 0){let B=vD(re[N],h);return B===-1?void 0:MD(re[N],B,1)[0]}return Ox(re[N])}},t.removeHooks=function(N){$e(re,N)&&(re[N]=[])},t.removeAllHooks=function(){re=$x()},t}var Kx,Px,BD,SD,QD,at,st,Mi,Xx,xd,yd,Ra,vD,Ox,vi,MD,Sn,Oa,gd,Gx,Fa,Ux,_D,TD,kD,Hx,jx,$e,Pa,it,uo,Jx,hd,Cd,FD,Ed,PD,qx,Vx,Id,Yx,$c,OD,GD,UD,HD,jD,Wx,JD,qD,VD,YD,zx,WD,zD,$D,Dr,KD,XD,$x,Bn,ey,ty=g(()=>{Kx=Object.entries,Px=Object.setPrototypeOf,BD=Object.isFrozen,SD=Object.getPrototypeOf,QD=Object.getOwnPropertyDescriptor,at=Object.freeze,st=Object.seal,Mi=Object.create,Xx=typeof Reflect<"u"&&Reflect,xd=Xx.apply,yd=Xx.construct;at||(at=function(t){return t});st||(st=function(t){return t});xd||(xd=function(t,r){for(var n=arguments.length,o=new Array(n>2?n-2:0),i=2;i<n;i++)o[i-2]=arguments[i];return t.apply(r,o)});yd||(yd=function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return new t(...n)});Ra=Ge(Array.prototype.forEach),vD=Ge(Array.prototype.lastIndexOf),Ox=Ge(Array.prototype.pop),vi=Ge(Array.prototype.push),MD=Ge(Array.prototype.splice),Sn=Array.isArray,Oa=Ge(String.prototype.toLowerCase),gd=Ge(String.prototype.toString),Gx=Ge(String.prototype.match),Fa=Ge(String.prototype.replace),Ux=Ge(String.prototype.indexOf),_D=Ge(String.prototype.trim),TD=Ge(Number.prototype.toString),kD=Ge(Boolean.prototype.toString),Hx=typeof BigInt>"u"?null:Ge(BigInt.prototype.toString),jx=typeof Symbol>"u"?null:Ge(Symbol.prototype.toString),$e=Ge(Object.prototype.hasOwnProperty),Pa=Ge(Object.prototype.toString),it=Ge(RegExp.prototype.test),uo=DD(TypeError);Jx=at(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),hd=at(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Cd=at(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),FD=at(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Ed=at(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),PD=at(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),qx=at(["#text"]),Vx=at(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),Id=at(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Yx=at(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),$c=at(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),OD=st(/{{[\w\W]*|^[\w\W]*}}/g),GD=st(/<%[\w\W]*|^[\w\W]*%>/g),UD=st(/\${[\w\W]*/g),HD=st(/^data-[\-\w.\u00B7-\uFFFF]+$/),jD=st(/^aria-[\-\w]+$/),Wx=st(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),JD=st(/^(?:\w+script|data):/i),qD=st(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),VD=st(/^html$/i),YD=st(/^[a-z][.\w]*(-[.\w]+)+$/i),zx=st(/<[/\w!]/g),WD=st(/<[/\w]/g),zD=st(/<\/no(script|embed|frames)/i),$D=st(/\/>/i),Dr={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},KD=function(){return typeof window>"u"?null:window},XD=function(t,r){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let n=null,o="data-tt-policy-suffix";r&&r.hasAttribute(o)&&(n=r.getAttribute(o));let i="dompurify"+(n?"#"+n:"");try{return t.createPolicy(i,{createHTML(a){return a},createScriptURL(a){return a}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},$x=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},Bn=function(t,r,n,o){return $e(t,r)&&Sn(t[r])?z(o.base?Bt(o.base):{},t[r],o.transform):n};ey=Zx()});var oy={};tt(oy,{default:()=>ny});function ny({value:e,className:t}){let r=(0,Kc.useRef)(null);return(0,Kc.useLayoutEffect)(()=>{let n=r.current;if(n)for(let o of n.querySelectorAll("a"))o.setAttribute("rel","noopener noreferrer"),o.setAttribute("target","_blank")},[e]),(0,ry.jsx)("span",{ref:r,className:t,dangerouslySetInnerHTML:{__html:ey.sanitize(e)}})}var ry,Kc,iy=g(()=>{ry=f(O(),1),Kc=f(M(),1);ty()});function rN(e){return tN.test(e)}function nN(e){return e.includes("<")||e.includes("://")}function oN({value:e,className:t}){let r=(0,Qn.useRef)(null);return(0,Qn.useLayoutEffect)(()=>{let n=r.current;if(n)try{n.setHTML(e);for(let o of n.querySelectorAll("a"))o.setAttribute("rel","noopener noreferrer"),o.setAttribute("target","_blank")}catch(o){console.error(o)}},[e]),(0,fo.jsx)("span",{ref:r,className:t})}function vn({html:e,className:t}){let r=`${e}`;if(!nN(r))return(0,fo.jsx)("span",{className:t,children:r});let n=Lx(r),o=rN(n)?n:(0,ay.default)(n);return typeof Element<"u"&&Element.prototype.setHTML?(0,fo.jsx)(oN,{value:o,className:t}):(0,fo.jsx)(Qn.Suspense,{fallback:(0,fo.jsx)("span",{className:t}),children:(0,fo.jsx)(eN,{value:o,className:t})})}var fo,Qn,ay,ZD,eN,tN,wd=g(()=>{fo=f(O(),1),Qn=f(M(),1),ay=f(sE(),1);bn();ZD=["a","b","br","code","div","em","h1","h2","h3","h4","h5","h6","i","img","li","mark","p","pre","span","small","strong","table","tbody","sup","sub","td","tfoot","th","thead","tr","u","ul"],eN=(0,Qn.lazy)(()=>Promise.resolve().then(()=>(iy(),oy))),tN=new RegExp(ZD.map(e=>String.raw`<${e}\b[^>]*>`).join("|"),"i")});function iN({error:e}){let{classes:t}=ly();return(0,Ut.jsx)("div",{className:t.errorBox,children:(0,Ut.jsx)(oE,{error:e})})}var Ut,sy,mt,cy,ly,aN,Ay,uy=g(()=>{Ut=f(O(),1),sy=f(M(),1);Eu();mt=f(P(),1),cy=f(H(),1);fu();iE();wd();bt();ly=oe()(e=>({closeButton:{position:"absolute",right:e.spacing(1),top:e.spacing(1),color:e.palette.grey[500]},errorBox:{width:800,margin:40}}));aN=(0,cy.observer)(function(t){let{classes:r}=ly(),{titleNode:n,...o}=t,{title:i,header:a,children:s,onClose:c}=o,l=(0,mt.useTheme)();return(0,Ut.jsx)(mt.Dialog,{...o,children:(0,Ut.jsxs)(mt.ScopedCssBaseline,{children:[(0,sy.isValidElement)(a)?a:(0,Ut.jsxs)(mt.DialogTitle,{children:[n||(0,Ut.jsx)(vn,{html:i||""}),c?(0,Ut.jsx)(mt.IconButton,{className:r.closeButton,onClick:A=>{c(A,"backdropClick")},children:(0,Ut.jsx)(js,{})}):null]}),(0,Ut.jsx)(mt.Divider,{}),(0,Ut.jsx)(Vo,{FallbackComponent:iN,children:(0,Ut.jsx)(mt.ThemeProvider,{theme:(0,mt.createTheme)(l,{components:{MuiInputBase:{styleOverrides:{input:{boxSizing:"content-box!important"}}}}}),children:s})})]})})}),Ay=aN});function bd({onClose:e,helpText:t,label:r}){return(0,mo.jsx)(Ay,{open:!0,onClose:e,title:"Help",titleNode:r?(0,mo.jsxs)(mo.Fragment,{children:["Help: ",r]}):void 0,onClick:n=>{n.stopPropagation()},onMouseDown:n=>{n.stopPropagation()},children:(0,mo.jsx)(fy.DialogContent,{children:t})})}var mo,fy,dy=g(()=>{mo=f(O(),1),fy=f(P(),1);uy()});function Bd({helpText:e,label:t}){let[r,n]=(0,Xc.useState)(!1);return(0,an.jsxs)(an.Fragment,{children:[(0,an.jsx)(my.IconButton,{size:"small",onClick:o=>{o.stopPropagation(),n(!0)},style:{marginLeft:4,padding:4},children:(0,an.jsx)(Uh,{fontSize:"small"})}),r?(0,an.jsxs)(Xc.Suspense,{fallback:null,children:[(0,an.jsx)(bd,{helpText:e,label:t,onClose:o=>{o.stopPropagation(),n(!1)}})," "]}):null]})}var an,Xc,my,py=g(()=>{an=f(O(),1),Xc=f(M(),1);Hh();my=f(P(),1);dy()});var gy,hy,Cy,sN,Ey,Iy=g(()=>{gy=f(O(),1),hy=f(M(),1),Cy=f(P(),1),sN=hy.forwardRef(function(t,r){return(0,gy.jsx)(Cy.Menu,{...t,ref:r,style:{pointerEvents:"none",...t.style},slotProps:{...t.slotProps,paper:{style:{pointerEvents:"auto"}}}})}),Ey=sN});var xy,yy,wy=g(()=>{"use client";V();xy=f(O(),1),yy=(0,R.createSvgIcon)((0,xy.jsx)("path",{d:"m10 17 5-5-5-5z"}),"ArrowRight")});var by,By,Sy=g(()=>{"use client";V();by=f(O(),1),By=(0,R.createSvgIcon)((0,by.jsx)("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2m-9 14-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z"}),"CheckBox")});var Qy,vy,My=g(()=>{"use client";V();Qy=f(O(),1),vy=(0,R.createSvgIcon)((0,Qy.jsx)("path",{d:"M19 5v14H5V5zm0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2"}),"CheckBoxOutlineBlank")});var _y,Ty,ky=g(()=>{"use client";V();_y=f(O(),1),Ty=(0,R.createSvgIcon)((0,_y.jsx)("path",{d:"M12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5m0-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"}),"RadioButtonChecked")});var Dy,Ny,Ly=g(()=>{"use client";V();Dy=f(O(),1),Ny=(0,R.createSvgIcon)((0,Dy.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"}),"RadioButtonUnchecked")});function Ry(e){let{classes:t}=cN(),{type:r}=e,n,o;"checked"in e&&({checked:n,disabled:o}=e);let i;switch(r){case"subMenu":{i=(0,Mn.jsx)(yy,{color:"action"});break}case"checkbox":{n?i=(0,Mn.jsx)(By,{color:o?"inherit":void 0}):i=(0,Mn.jsx)(vy,{color:"action"});break}case"radio":{n?i=(0,Mn.jsx)(Ty,{color:o?"inherit":void 0}):i=(0,Mn.jsx)(Ny,{color:"action"});break}}return(0,Mn.jsx)("div",{className:t.menuItemEndDecoration,children:i})}var Mn,Zc,cN,Fy=g(()=>{Mn=f(O(),1);wy();Sy();My();ky();Ly();Zc=f(P(),1);bt();cN=oe()({menuItemEndDecoration:{padding:0,margin:0,height:16}})});function Py(e){if(typeof e=="string")return e.toLowerCase().replace(/\s+/g,"_")}function lN({title:e,Icon:t,inset:r,menuItems:n,onMenuItemClick:o,closeAfterItemClick:i,onCloseRoot:a,isOpen:s,onOpen:c,onClose:l}){let[A,u]=(0,Sd.useState)(null),m=Py(e);return(0,ue.jsxs)(ue.Fragment,{children:[(0,ue.jsxs)(St.MenuItem,{ref:u,"data-testid":m?`cascading-submenu-${m}`:void 0,onMouseOver:c,onFocus:c,onClick:c,children:[t?(0,ue.jsx)(St.ListItemIcon,{children:(0,ue.jsx)(t,{})}):null,(0,ue.jsx)(St.ListItemText,{primary:e,inset:r}),(0,ue.jsx)(Ph,{})]}),(0,ue.jsx)(Ey,{open:s,anchorEl:A,onClose:l,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"},children:(0,ue.jsx)(Oy,{closeAfterItemClick:i,onMenuItemClick:o,menuItems:n,onCloseRoot:a})})]})}function Oy({onMenuItemClick:e,closeAfterItemClick:t,menuItems:r,onCloseRoot:n}){let[o,i]=(0,Sd.useState)(),a=()=>{i(void 0)},s=r.some(A=>"icon"in A&&A.icon),c=r.some(A=>(A.type==="checkbox"||A.type==="radio")&&"helpText"in A&&A.helpText),l=r.toSorted((A,u)=>(u.priority||0)-(A.priority||0));return(0,ue.jsx)(ue.Fragment,{children:l.map((A,u)=>{if("subMenu"in A)return(0,ue.jsx)(lN,{title:A.label,Icon:A.icon,inset:s&&!A.icon,onMenuItemClick:e,menuItems:A.subMenu,closeAfterItemClick:t,onCloseRoot:n,isOpen:o===u,onOpen:()=>{i(u)},onClose:a},`subMenu-${A.label}-${u}`);if(A.type==="divider")return(0,ue.jsx)(St.Divider,{component:"li"},`divider-${u}`);if(A.type==="subHeader")return(0,ue.jsx)(St.ListSubheader,{children:A.label},`subHeader-${A.label}-${u}`);let m=A,d=m.helpText,p=m.type==="checkbox"||m.type==="radio",E=Py(m.label);return(0,ue.jsxs)(St.MenuItem,{"data-testid":E?`cascading-menuitem-${E}`:void 0,disabled:!!m.disabled,onClick:x=>{t&&n(),e(x,m.onClick)},onMouseOver:a,children:[m.icon?(0,ue.jsx)(St.ListItemIcon,{children:(0,ue.jsx)(m.icon,{})}):null,(0,ue.jsx)(St.ListItemText,{primary:m.label,secondary:m.subLabel,inset:s&&!m.icon}),(0,ue.jsx)("div",{style:{flexGrow:1,minWidth:10}}),p?(0,ue.jsx)(Ry,{type:m.type,checked:m.checked,disabled:m.disabled}):null,d?(0,ue.jsx)(Bd,{helpText:d,label:m.label}):p&&c?(0,ue.jsx)("div",{style:{marginLeft:4,padding:4,width:28,height:28}}):null]},`${m.label}-${u}`)})})}function Qd({onMenuItemClick:e,closeAfterItemClick:t=!0,menuItems:r,open:n,onClose:o,anchorEl:i,anchorOrigin:a,transformOrigin:s,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u,style:m}){let d=Array.isArray(r)?r:r();return(0,ue.jsx)(St.Menu,{anchorEl:i,open:n,onClose:o,anchorOrigin:a,transformOrigin:s,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u??void 0,style:m,children:(0,ue.jsx)(Oy,{menuItems:d,closeAfterItemClick:t,onMenuItemClick:e,onCloseRoot:o})})}var ue,Sd,St,Gy=g(()=>{ue=f(O(),1),Sd=f(M(),1);Oh();St=f(P(),1);py();Iy();Fy()});function AN({children:e,menuItems:t,closeAfterItemClick:r=!0,stopPropagation:n,disabled:o,setOpen:i,ButtonComponent:a=Uy.IconButton,onClick:s,anchorOrigin:c,transformOrigin:l,marginThreshold:A,...u}){let[m,d]=(0,el.useState)(null),p=!!m;(0,el.useEffect)(()=>{i?.(p)},[p,i]);let E=o??(Array.isArray(t)&&t.length===0);return(0,po.jsxs)(po.Fragment,{children:[(0,po.jsx)(a,{onClick:x=>{n&&x.stopPropagation(),d(x.currentTarget),s?.(x)},...u,disabled:E,children:e}),p?(0,po.jsx)(Qd,{open:p,onClose:()=>{d(null)},anchorEl:m,anchorOrigin:c,transformOrigin:l,marginThreshold:A,menuItems:t,closeAfterItemClick:r,onMenuItemClick:(x,I)=>{I()}}):null]})}var po,el,Uy,Lr,_i=g(()=>{po=f(O(),1),el=f(M(),1),Uy=f(P(),1);Gy();Lr=AN});var Hy,jy,Jy=g(()=>{"use client";V();Hy=f(O(),1),jy=(0,R.createSvgIcon)((0,Hy.jsx)("path",{d:"M12 2C6.49 2 2 6.49 2 12s4.49 10 10 10c1.38 0 2.5-1.12 2.5-2.5 0-.61-.23-1.2-.64-1.67-.08-.1-.13-.21-.13-.33 0-.28.22-.5.5-.5H16c3.31 0 6-2.69 6-6 0-4.96-4.49-9-10-9m5.5 11c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5m-3-4c-.83 0-1.5-.67-1.5-1.5S13.67 6 14.5 6s1.5.67 1.5 1.5S15.33 9 14.5 9M5 11.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5S7.33 13 6.5 13 5 12.33 5 11.5m6-4c0 .83-.67 1.5-1.5 1.5S8 8.33 8 7.5 8.67 6 9.5 6s1.5.67 1.5 1.5"}),"Palette")});var uN,Ti,qy=g(()=>{uN={50:"#ffebee",100:"#ffcdd2",200:"#ef9a9a",300:"#e57373",400:"#ef5350",500:"#f44336",600:"#e53935",700:"#d32f2f",800:"#c62828",900:"#b71c1c",A100:"#ff8a80",A200:"#ff5252",A400:"#ff1744",A700:"#d50000"},Ti=uN});var fN,Ga,Vy=g(()=>{fN={50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",A100:"#82b1ff",A200:"#448aff",A400:"#2979ff",A700:"#2962ff"},Ga=fN});var dN,Ua,Yy=g(()=>{dN={50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",A100:"#b9f6ca",A200:"#69f0ae",A400:"#00e676",A700:"#00c853"},Ua=dN});var mN,Ha,Wy=g(()=>{mN={50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",A100:"#ffd180",A200:"#ffab40",A400:"#ff9100",A700:"#ff6d00"},Ha=mN});var pN,_n,zy=g(()=>{pN={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#f5f5f5",A200:"#eeeeee",A400:"#bdbdbd",A700:"#616161"},_n=pN});var vd=g(()=>{qy();Vy();Yy();Wy();zy()});var gN,go,tl=g(()=>{vd();Ds();XA();Cn();ks([Ns]);gN={none:{},clustal:{G:"orange",P:"orange",S:"orange",T:"orange",H:"red",K:"red",R:"red",F:"blue",W:"blue",Y:"blue",I:"green",L:"green",M:"green",V:"green"},lesk:{G:"orange",A:"orange",S:"orange",T:"orange",C:"green",V:"green",I:"green",L:"green",P:"green",F:"green",Y:"green",M:"green",W:"green",N:"magenta",Q:"magenta",H:"magenta",D:"red",E:"red",K:"blue",R:"blue"},maeditor:{A:"lightgreen",G:"lightgreen",C:"green",D:"darkgreen",E:"darkgreen",N:"darkgreen",Q:"darkgreen",I:"blue",L:"blue",M:"blue",V:"blue",F:"#c8a2c8",W:"#c8a2c8",Y:"#c8a2c8",H:"darkblue",K:"orange",R:"orange",P:"pink",S:"red",T:"red"},percent_identity_dynamic:{},flower:{A:"#b18a51",C:"#ff5701",D:"#01a578",E:"#2da0a1",F:"#fa559d",G:"#b1c23c",H:"#0194f9",I:"#f27663",K:"#7fc3d7",L:"#df6e75",M:"#fe9daf",N:"#0bcec6",P:"#4fa32a",Q:"#7295ae",R:"#83bff1",S:"#b4bd9b",T:"#d2b576",V:"#fd997b",W:"#ff2ded",Y:"#c96ecf"},rainbow_dna:{A:"#3737f5",C:"#37f537",G:"#f5f537",T:"#f53737",U:"#f53737"},clustalx_protein:{A:"#197fe5",C:"#e57f7f",D:"#cc4ccc",E:"#cc4ccc",F:"#197fe5",G:"#e5994c",H:"#19b2b2",I:"#197fe5",K:"#e53319",L:"#197fe5",M:"#197fe5",N:"#19cc19",P:"#cccc00",Q:"#19cc19",R:"#e53319",S:"#19cc19",T:"#19cc19",V:"#197fe5",W:"#197fe5",Y:"#19b2b2"},clustalx_protein_dynamic:{},clustalx_dna:{A:"#e53319",C:"#197fe5",G:"#e5994c",T:"#19cc19",U:"#19cc19"},jbrowse_dna:{A:Ua[500],C:Ga[500],G:Ha[500],T:Ti[500],U:Ti[500]},jalview_buried:{A:"#00a35c",R:"#00fc03",N:"#00eb14",D:"#00eb14",C:"#0000ff",Q:"#00f10e",E:"#00f10e",G:"#009d62",H:"#00d52a",I:"#0054ab",L:"#007b84",K:"#00ff00",M:"#009768",F:"#008778",P:"#00e01f",S:"#00d52a",T:"#00db24",W:"#00a857",Y:"#00e619",V:"#005fa0",B:"#00eb14",X:"#00b649",Z:"#00f10e"},jalview_hydrophobicity:{A:"#ad0052",R:"#0000ff",N:"#0c00f3",D:"#0c00f3",C:"#c2003d",Q:"#0c00f3",E:"#0c00f3",G:"#6a0095",H:"#1500ea",I:"#ff0000",L:"#ea0015",K:"#0000ff",M:"#b0004f",F:"#cb0034",P:"#4600b9",S:"#5e00a1",T:"#61009e",W:"#5b00a4",Y:"#4f00b0",V:"#f60009",B:"#0c00f3",X:"#680097",Z:"#0c00f3"},jalview_prophelix:{A:"#e718e7",R:"#6f906f",N:"#1be41b",D:"#778877",C:"#23dc23",Q:"#926d92",E:"#ff00ff",G:"#00ff00",H:"#758a75",I:"#8a758a",L:"#ae51ae",K:"#a05fa0",M:"#ef10ef",F:"#986798",P:"#00ff00",S:"#36c936",T:"#47b847",W:"#8a758a",Y:"#21de21",V:"#857a85",B:"#49b649",X:"#758a75",Z:"#c936c9"},jalview_propstrand:{A:"#5858a7",R:"#6b6b94",N:"#64649b",D:"#2121de",C:"#9d9d62",Q:"#8c8c73",E:"#0000ff",G:"#4949b6",H:"#60609f",I:"#ecec13",L:"#b2b24d",K:"#4747b8",M:"#82827d",F:"#c2c23d",P:"#2323dc",S:"#4949b6",T:"#9d9d62",W:"#c0c03f",Y:"#d3d32c",V:"#ffff00",B:"#4343bc",X:"#797986",Z:"#4747b8"},jalview_propturn:{A:"#2cd3d3",R:"#708f8f",N:"#ff0000",D:"#e81717",C:"#a85757",Q:"#3fc0c0",E:"#778888",G:"#ff0000",H:"#708f8f",I:"#00ffff",L:"#1ce3e3",K:"#7e8181",M:"#1ee1e1",F:"#1ee1e1",P:"#f60909",S:"#e11e1e",T:"#738c8c",W:"#738c8c",Y:"#9d6262",V:"#07f8f8",B:"#f30c0c",X:"#7c8383",Z:"#5ba4a4"},jalview_taylor:{A:"#ccff00",R:"#0000ff",N:"#cc00ff",D:"#ff0000",C:"#ffff00",Q:"#ff00cc",E:"#ff0066",G:"#ff9900",H:"#0066ff",I:"#66ff00",L:"#33ff00",K:"#6600ff",M:"#00ff00",F:"#00ff66",P:"#ffcc00",S:"#ff3300",T:"#ff6600",W:"#00ccff",Y:"#00ffcc",V:"#99ff00"},jalview_zappo:{A:"#ffafaf",R:"#6464ff",N:"#00ff00",D:"#ff0000",C:"#ffff00",Q:"#00ff00",E:"#ff0000",G:"#ff00ff",H:"#6464ff",I:"#ffafaf",L:"#ffafaf",K:"#6464ff",M:"#ffafaf",F:"#ffc800",P:"#ff00ff",S:"#00ff00",T:"#00ff00",W:"#ffc800",Y:"#ffc800",V:"#ffafaf"},cinema:{H:"blue",K:"blue",R:"blue",D:"red",E:"red",S:"green",T:"green",N:"green",Q:"green",A:"white",V:"white",L:"white",I:"white",M:"white",F:"magenta",W:"magenta",Y:"magenta",P:"brown",G:"brown",C:"yellow",B:"gray",Z:"gray",X:"gray","-":"gray",".":"gray"}},go=jo(gN,([e,t])=>[e,jo(t,([r,n])=>[r,rt(n).toHex()])])});var Md,$y,hN,Ky,Xy=g(()=>{Md=f(M(),1);_i();Jy();$y=f(H(),1);tl();hN=(0,$y.observer)(function({model:e}){let{colorSchemeName:t}=e;return Md.default.createElement(Lr,{"data-testid":"color_scheme_menu",closeAfterItemClick:!0,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:Object.keys(go).map(r=>({label:r,type:"radio",checked:t===r,onClick:()=>{e.setColorSchemeName(r)}}))},Md.default.createElement(jy,null))}),Ky=hN});var Zy,ew,tw=g(()=>{"use client";V();Zy=f(O(),1),ew=(0,R.createSvgIcon)((0,Zy.jsx)("path",{d:"M19 3h-4.18C14.4 1.84 13.3 1 12 1s-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2m-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1m2 14H7v-2h7zm3-4H7v-2h10zm0-4H7V7h10z"}),"Assignment")});var rw,rl,_d=g(()=>{"use client";V();rw=f(O(),1),rl=(0,R.createSvgIcon)((0,rw.jsx)("path",{d:"M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2m0 12H4V8h16z"}),"FolderOpen")});var nw,ow,iw=g(()=>{"use client";V();nw=f(O(),1),ow=(0,R.createSvgIcon)((0,nw.jsx)("path",{d:"M3 18h18v-2H3zm0-5h18v-2H3zm0-7v2h18V6z"}),"Menu")});var Td,aw,sw=g(()=>{"use client";V();Td=f(O(),1),aw=(0,R.createSvgIcon)([(0,Td.jsx)("circle",{cx:"12",cy:"12",r:"3.2"},"0"),(0,Td.jsx)("path",{d:"M9 2 7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-3.17L15 2zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5"},"1")],"PhotoCamera")});var cw,nl,kd=g(()=>{"use client";V();cw=f(O(),1),nl=(0,R.createSvgIcon)((0,cw.jsx)("path",{d:"M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58c.18-.14.23-.41.12-.61l-1.92-3.32c-.12-.22-.37-.29-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54c-.04-.24-.24-.41-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58c-.18.14-.23.41-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6"}),"Settings")});var lw,Aw,uw=g(()=>{"use client";V();lw=f(O(),1),Aw=(0,R.createSvgIcon)((0,lw.jsx)("path",{d:"M4.25 5.61C6.27 8.2 10 13 10 13v6c0 .55.45 1 1 1h2c.55 0 1-.45 1-1v-6s3.72-4.8 5.74-7.39c.51-.66.04-1.61-.79-1.61H5.04c-.83 0-1.3.95-.79 1.61"}),"FilterAlt")});var fw,dw,mw=g(()=>{"use client";V();fw=f(O(),1),dw=(0,R.createSvgIcon)((0,fw.jsx)("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"}),"Search")});var pw,gw,hw=g(()=>{"use client";V();pw=f(O(),1),gw=(0,R.createSvgIcon)((0,pw.jsx)("path",{d:"M3 18h6v-2H3zM3 6v2h18V6zm0 7h12v-2H3z"}),"Sort")});var Cw,Ew,Iw=g(()=>{"use client";V();Cw=f(O(),1),Ew=(0,R.createSvgIcon)((0,Cw.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5M12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5m0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3"}),"Visibility")});function xw(e){return Dd[Math.min(e,Dd.length-1)]}var Dd,Nd,Ld=g(()=>{Dd=[["#F8766D"],["#F8766D","#00BFC4"],["#F8766D","#00BA38","#619CFF"],["#F8766D","#7CAE00","#00BFC4","#C77CFF"],["#F8766D","#A3A500","#00BF7D","#00B0F6","#E76BF3"],["#F8766D","#B79F00","#00BA38","#00BFC4","#619CFF","#F564E3"],["#F8766D","#C49A00","#53B400","#00C094","#00B6EB","#A58AFF","#FB61D7"],["#F8766D","#CD9600","#7CAE00","#00BE67","#00BFC4","#00A9FF","#C77CFF","#FF61CC"]];Nd=Dd});var ww={};tt(ww,{default:()=>xN});var de,yw,ja,ol,CN,EN,IN,xN,bw=g(()=>{de=f(M(),1),yw=f(Te(),1),ja=f(P(),1),ol=f(H(),1);Ld();CN=(0,ol.observer)(function({model:e}){let{featureFilters:t}=e;return de.default.createElement("div",null,de.default.createElement(ja.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!0)}},"Toggle all on"),de.default.createElement(ja.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!1)}},"Toggle all off"))}),EN=(0,ol.observer)(function({model:e}){let{tidyInterProAnnotationTypes:t,featureFilters:r}=e,n=[...t.values()],o=xw(n.length-1);return de.default.createElement(de.default.Fragment,null,de.default.createElement(CN,{model:e}),de.default.createElement("table",null,de.default.createElement("thead",null,de.default.createElement("tr",null,de.default.createElement("td",null),de.default.createElement("td",null,"accession"),de.default.createElement("td",null,"name"),de.default.createElement("td",null,"description"))),de.default.createElement("tbody",null,n.map(({accession:i,name:a,description:s},c)=>de.default.createElement("tr",{key:i},de.default.createElement("td",null,de.default.createElement("input",{type:"checkbox",checked:r.get(i)??!1,onChange:()=>{e.setFilter(i,!e.featureFilters.get(i))}})),de.default.createElement("td",null,i),de.default.createElement("td",null,a),de.default.createElement("td",null,s),de.default.createElement("td",null,de.default.createElement("div",{style:{width:20,height:20,background:o[c]||"black"}})))))))}),IN=(0,ol.observer)(function({onClose:e,model:t}){return de.default.createElement(yw.Dialog,{onClose:()=>{e()},open:!0,title:"Feature filters",maxWidth:"xl"},de.default.createElement(ja.DialogContent,null,de.default.createElement(EN,{model:t})))}),xN=IN});async function Ja(e,t,r=Bw.fetchAndMaybeUnzipText){let n=new AbortController;try{return await r(e,{signal:n.signal,statusCallback:o=>{t(o?{msg:o,onCancel:()=>{n.abort()}}:void 0)}})}finally{t(void 0)}}async function Sw(e,t){let r=await fetch(e,t);if(!r.ok)throw new Error(`HTTP ${r.status} fetching ${e} ${await r.text()}`);return r}async function Rd(e,t){return(await Sw(e,t)).text()}async function il(e,t){return(await Sw(e,t)).json()}function Qw(e,t){return new Promise((r,n)=>{if(t?.aborted)n(new DOMException("Aborted","AbortError"));else{let o=setTimeout(r,e);t?.addEventListener("abort",()=>{clearTimeout(o),n(new DOMException("Aborted","AbortError"))})}})}function Tn(e){return e instanceof DOMException&&e.name==="AbortError"}var Bw,al=g(()=>{Bw=f(Ce(),1)});var _w={};tt(_w,{default:()=>wN});var Ie,vw,Fd,Se,Mw,yN,wN,Tw=g(()=>{Ie=f(M(),1),vw=f(Te(),1),Fd=f(Ce(),1),Se=f(P(),1),Mw=f(H(),1);al();yN=(0,Mw.observer)(function({handleClose:e,model:t}){let[r,n]=(0,Ie.useState)(),[o,i]=(0,Ie.useState)("file"),[a,s]=(0,Ie.useState)("");return Ie.default.createElement(vw.Dialog,{maxWidth:"xl",title:"Open protein domains from file",onClose:()=>{e()},open:!0},Ie.default.createElement(Se.DialogContent,null,Ie.default.createElement("div",null,Ie.default.createElement(Se.Typography,null,"Open a JSON file of InterProScan results that you run remotely on EBI servers or locally"),Ie.default.createElement("div",{style:{display:"flex",margin:30}},Ie.default.createElement(Se.FormControl,{component:"fieldset"},Ie.default.createElement(Se.RadioGroup,{value:o,onChange:c=>{i(c.target.value)}},Ie.default.createElement(Se.FormControlLabel,{value:"url",control:Ie.default.createElement(Se.Radio,null),label:"URL"}),Ie.default.createElement(Se.FormControlLabel,{value:"file",control:Ie.default.createElement(Se.Radio,null),label:"File"}))),o==="url"?Ie.default.createElement("div",null,Ie.default.createElement(Se.Typography,null,"Open a InterProScan JSON file remote URL"),Ie.default.createElement(Se.TextField,{label:"URL",value:a,onChange:c=>{s(c.target.value)}})):null,o==="file"?Ie.default.createElement("div",{style:{paddingTop:20}},Ie.default.createElement(Se.Typography,null,"Open a InterProScan JSON file file from your local drive"),Ie.default.createElement(Se.Button,{variant:"outlined",component:"label"},"Choose File",Ie.default.createElement("input",{type:"file",hidden:!0,onChange:({target:c})=>{let l=c.files?.[0];l&&n(l)}}))):null))),Ie.default.createElement(Se.DialogActions,null,Ie.default.createElement(Se.Button,{variant:"contained",color:"primary",onClick:()=>{(async()=>{try{let c=r?JSON.parse(await r.text()):await il(a);t.setDomains(Object.fromEntries(c.results.map(l=>[l.xref[0].id,l]))),(0,Fd.getSession)(t).notify("Loaded interproscan results","success")}catch(c){console.error(c),(0,Fd.getSession)(t).notifyError(`${c}`,c)}finally{t.setStatus()}})(),e()}},"Open results")))}),wN=yN});var kw=g(()=>{});function ki(e,t="node",r=0){let n=`${t}-${r}`;return{...e,id:n,name:e.name||n,children:e.children?.map((o,i)=>ki(o,`${n}-${i}`,r+1))||[]}}var Pd=g(()=>{});var Ht,Di=g(()=>{Ht=class{getTree(){return{id:"root",name:"root",noTree:!0,children:this.getNames().map(t=>({id:t,children:[],name:t}))}}getRowData(t){}getStructures(){return{}}getHeader(){return{}}get alignmentNames(){return[]}get seqConsensus(){}get secondaryStructureConsensus(){}get tracks(){return[]}}});function Ni(e){return e>=bN&&e<=BN}var Dw,Nw,bN,BN,Lw,Rw,sn,Od=g(()=>{Di();Dw=65,Nw=90,bN=97,BN=122,Lw=45,Rw=46;sn=class extends Ht{MSA;orderedNames;constructor(t){super();let r=[],n=[];for(let o of t.split(">")){if(!/\S/.test(o))continue;let i=o.indexOf(`
29
29
  `);if(i===-1)continue;let a=o.slice(0,i).replace(/\r$/,""),s=a.indexOf(" "),c=s===-1?a:a.slice(0,s);c&&(r.push(o.slice(i+1).replaceAll(/\s/g,"")),n.push(c))}this.orderedNames=n,this.MSA={seqdata:this.expandA3M(r,n)}}static sniff(t){if(!t.startsWith(">"))return!1;let r=[];for(let a of t.split(">")){if(!/\S/.test(a))continue;let s=a.indexOf(`
30
- `);if(s===-1)continue;let c=a.slice(s+1).replaceAll(/\s/g,"");c&&r.push(c)}if(r.length<2||new Set(r.map(a=>a.length)).size===1)return!1;let n=!1,o=-1,i=!0;for(let a of r){let s=0;for(let c=0;c<a.length;c++){let l=a.charCodeAt(c);Fi(l)?n=!0:(l>=jy&&l<=qy||l===Jy)&&s++}o===-1?o=s:s!==o&&(i=!1)}return n&&i}expandA3M(t,r){let n=r.length;if(n===0)return{};let o=[],i=[];for(let l=0;l<n;l++){let A=t[l],u=[],m=[],d=0;for(;d<A.length;){let g=A.charCodeAt(d);if(g>=jy&&g<=qy||g===Jy){u.push(A[d]);let E="",x=d+1;for(;x<A.length;){let I=A.charCodeAt(x);if(Fi(I)||I===Vy)E+=A[x],x++;else break}m.push(E),d=x}else if(g===Vy)d++;else if(Fi(g)){let E="";for(;d<A.length&&Fi(A.charCodeAt(d));)E+=A[d],d++;u.push(""),m.push(E)}else d++}o.push(u),i.push(m)}let a=Math.max(...o.map(l=>l.length),0),s=new Array(a).fill(0);for(let l=0;l<n;l++){let A=i[l];for(let u=0;u<A.length;u++){let m=0;for(let d of A[u])Fi(d.charCodeAt(0))&&m++;m>s[u]&&(s[u]=m)}}let c={};for(let l=0;l<n;l++){let A=o[l],u=i[l],m=[];for(let d=0;d<a;d++){let g=s[d];if(d<A.length){let E=A[d],x=u[d]||"";m.push(E||"-");let I="";for(let w of x)Fi(w.charCodeAt(0))&&(I+=w.toUpperCase());m.push(I);let p=g-I.length;p>0&&m.push(".".repeat(p))}else m.push("-"),g>0&&m.push(".".repeat(g))}c[r[l]]=m.join("")}return c}getMSA(){return this.MSA}getNames(){return this.orderedNames}getRow(t){return this.MSA.seqdata[t]||""}getWidth(){let t=Object.keys(this.MSA.seqdata)[0];return t?this.getRow(t).length:0}}});function qN(e){let t=/\(?(\d+(\.\d+)+)\)?/.exec(e);return t&&t.length>1?t[1]:""}function Wy(e){let t=["CLUSTAL","PROBCONS","MUSCLE","MSAPROBS","Kalign"];t.some(n=>e.startsWith(n))||console.warn(`${e} is not a known CLUSTAL header: ${t.join(",")}, proceeding but could indicate an issue`);let r=qN(e);return{info:e,version:r}}function dl(e){let t=e.next();for(;!t.done&&t.value.trim()==="";)t=e.next();return t.value}function JN(e){let t=e.split(/\s+/),r=e.slice(t[0].length),n=t[0].length+r.indexOf(t[1]),o=n+t[1].length;return[n,o]}function Yy(e){let t=dl(e),r=[],n="";if(!t)return;for(;t;)t.startsWith(" ")?n=t:r.push(t),t=e.next().value;let[o,i]=JN(r[0]),s=r.map(u=>u.split(/\s+/)).map(u=>u[0]),c=r.map(u=>u.slice(o,i)),l=n.slice(o,i),A=c[0].length-l.length;return A&&(l+=" ".repeat(A)),{ids:s,seqs:c,consensus:l}}function zy(e){let t,r=Yy(e);if(r!==void 0)for(;t=Yy(e);){for(let n=0;n<t.seqs.length;n++)r.seqs[n]+=t.seqs[n];r.consensus+=t.consensus}return r}var Wd=h(()=>{});var $y=h(()=>{Wd()});function VN(e){let t=dl(e);if(!t)throw new Error("Empty file received");let r=Wy(t),n=zy(e);if(n===void 0)throw new Error("No blocks parsed");let o=n.seqs.map((a,s)=>({id:n.ids[s],seq:a})),{consensus:i}=n;if(i.length!==o[0].seq.length)throw new Error(`Consensus length != sequence length. Con ${i.length} seq ${o[0].seq.length}`);return{consensus:i,alns:o,header:r}}function Ky(e){let t=e.split(`
31
- `)[Symbol.iterator]();return VN(t)}var Xy=h(()=>{$y();Wd()});var Nn,zd=h(()=>{Xy();Ri();Nn=class extends qt{MSA;constructor(t){super(),this.MSA=Ky(t)}getMSA(){return this.MSA}getRow(t){return this.MSA.alns.find(r=>r.id===t)?.seq??""}getWidth(){return this.MSA.alns[0]?.seq.length??0}getHeader(){return this.MSA.header}getNames(){return this.MSA.alns.map(t=>t.id)}get seqConsensus(){return this.MSA.consensus}}});function Zy(e){let t=e.split(`
32
- `).map(i=>i.trim()).filter(i=>!!i),r=[],n=[];for(let i of t)if(i.startsWith("SEQ"))r.push(i);else{if(i.startsWith("DATA"))continue;if(i.startsWith("//"))break;n.push(i)}let o=r.map(i=>{let[,a,s,c,l,A,u,m,d]=i.split(" ");return{species:a,protein:s,chr:c,start:+l,end:+A,strand:+u,geneId:m,unknown:d,seq:""}});for(let i of n)for(let a=0;a<r.length;a++)o[a].seq+=i[a];return o}function ml(e){let t=e.split(`
33
- `).map(i=>i.trim()).filter(i=>!!i),r=[],n="";for(let i of t)if(i.startsWith("SEQ"))r.push(i);else{if(i.startsWith("DATA"))continue;if(i.startsWith("//"))break;n=i}let o=r.map(i=>{let[,a,s,c,l,A,u,m,d]=i.split(" ");return{species:a,protein:s,chr:c,start:+l,end:+A,strand:+u,geneId:m,unknown:d}});return{tree:n,seqs:o}}var $d=h(()=>{});var Ln,Kd=h(()=>{$d();Ri();Ln=class extends qt{MSA;constructor(t){super(),this.MSA=Zy(t)}getMSA(){return this.MSA}getRow(t){return this.MSA.find(r=>r.protein===t)?.seq??""}getWidth(){return this.MSA[0]?.seq.length??0}getNames(){return this.MSA.map(t=>t.protein)}}});var Rn,Xd=h(()=>{Ri();Rn=class extends qt{MSA;orderedNames=[];constructor(t){super();let r={},n={};for(let o of t.split(">")){if(!/\S/.test(o))continue;let i=o.indexOf(`
34
- `);if(i===-1)continue;let a=o.slice(0,i).replace(/\r$/,""),s=a.indexOf(" "),c=s===-1?a:a.slice(0,s);c&&(r[c]=o.slice(i+1).replaceAll(/\s/g,""),this.orderedNames.push(c),c.includes(":")&&(n[c.replaceAll(":","_")]=c))}this.MSA={seqdata:r,colonNormalized:n}}getMSA(){return this.MSA}getNames(){return this.orderedNames}getRow(t){return this.MSA.seqdata[t]??this.MSA.seqdata[this.MSA.colonNormalized[t]??""]??""}getWidth(){let t=this.orderedNames[0];return t===void 0?0:this.getRow(t).length}}});function Io(e){let t=[],r=[],n=e.replace(/'((?:[^']|'')*)'/g,(a,s)=>{let c=r.length;return r.push(s.replaceAll("''","'")),`__Q${c}__`}),o={},i=n.split(/\s*(;|\(|\)|,|:)\s*/);for(let a=0;a<i.length;a++){let c=i[a].replace(/^__Q(\d+)__$/,(A,u)=>r[Number(u)]),l={};switch(c){case"(":o.children=[l],t.push(o),o=l;break;case",":t.at(-1)?.children.push(l),o=l;break;case")":o=t.pop();break;case":":break;default:{let A=i[a-1];A===")"||A==="("||A===","?o.name=c:A===":"&&(o.length=Number.parseFloat(c))}}}return o}var Zd=h(()=>{});function eb(){return{gf:{},gc:{},gs:{},gr:{},seqname:[],seqdata:{}}}function za(e,t){if(e)return e;if(t)throw new Error("No format header: # STOCKHOLM 1.0");return eb()}function $a(e){return tb.test(e)}function rb(e,t){let r=t??{},n=[],o=null,i=e.split(`
35
- `);for(let a of i){let s;if(tb.test(a))o=eb();else if(YN.test(a))o&&n.push(o),o=null;else if(s=WN.exec(a)){o=za(o,!!r.strict);let c=s[1];o.gf[c]||(o.gf[c]=[]),o.gf[c].push(s[2])}else if(s=zN.exec(a)){o=za(o,!!r.strict);let c=s[1];o.gc[c]||(o.gc[c]=""),o.gc[c]+=s[2]}else if(s=$N.exec(a)){o=za(o,!!r.strict);let c=s[1],l=s[2],A=s[3];o.gs[l]||(o.gs[l]={}),o.gs[l][c]||(o.gs[l][c]=[]),o.gs[l][c].push(A)}else if(s=KN.exec(a)){o=za(o,!!r.strict);let c=s[1],l=s[2],A=s[3];o.gr[l]||(o.gr[l]={}),o.gr[l][c]||(o.gr[l][c]=""),o.gr[l][c]+=A}else if(s=XN.exec(a)){o=za(o,!!r.strict);let c=s[1],l=s[2];o.seqdata[c]||(o.seqdata[c]="",o.seqname.push(c)),o.seqdata[c]+=l}else if(ZN.test(a)&&r.strict)throw new Error("Malformed line")}return o&&n.push(o),n}var tb,YN,WN,zN,$N,KN,XN,ZN,em=h(()=>{tb=/^# STOCKHOLM 1.0/,YN=/^\/\/\s*$/,WN=/^#=GF\s+(\S+)\s+(.*?)\s*$/,zN=/^#=GC\s+(\S+)\s+(.*?)\s*$/,$N=/^#=GS\s+(\S+)\s+(\S+)\s+(.*?)\s*$/,KN=/^#=GR\s+(\S+)\s+(\S+)\s+(.*?)\s*$/,XN=/^\s*(\S+)\s+(\S+)\s*$/,ZN=/\S/});var Fn,tm=h(()=>{Zd();em();Vd();Ri();em();Fn=class extends qt{data;MSA;constructor(t,r){super();let n=rb(t);this.data=n;let o=n[r]??n[0];if(!o)throw new Error("No alignments found in Stockholm file");this.MSA=o}getMSA(){return this.MSA}getRow(t){return this.MSA.seqdata[t]??""}getWidth(){let t=Object.keys(this.MSA.seqdata)[0];return t===void 0?0:this.getRow(t).length}get alignmentNames(){return this.data.map((t,r)=>t.gf.DE?.[0]??`Alignment ${r+1}`)}getHeader(){let t=this.MSA.gs.AC??{},r=this.MSA.gs.DR??{};return{General:this.MSA.gf,Accessions:Object.fromEntries(Object.entries(t).map(([n,o])=>[n,o[0]])),Dbxref:Object.fromEntries(Object.entries(r).map(([n,o])=>[n,o.join("; ")]))}}getRowData(t){return{name:t,accession:this.MSA.gs.AC?.[t]?.[0],dbxref:this.MSA.gs.DR?.[t]?.join("; ")}}getNames(){return Object.keys(this.MSA.seqdata)}getStructures(){let t=/PDB; +(\S+) +(\S); ([0-9]+)-([0-9]+)/,r=this.MSA.gs.DR??{},n={};for(let[o,i]of Object.entries(r))for(let a of i){let s=t.exec(a);s&&(n[o]??=[]).push({pdb:s[1].toLowerCase(),chain:s[2],startPos:+s[3],endPos:+s[4]})}return n}getTree(){let t=this.MSA.gf.NH?.[0];return t?Li(Io(t)):super.getTree()}get seqConsensus(){return this.MSA.gc.seq_cons}get secondaryStructureConsensus(){return this.MSA.gc.SS_cons}get tracks(){return[{id:"seqConsensus",name:"Sequence consensus",data:this.seqConsensus,customColorScheme:{}},{id:"secondaryStruct",name:"Secondary-structure",data:this.secondaryStructureConsensus,customColorScheme:{"<":"lightblue","(":"lightblue","[":"lightblue","{":"lightblue",">":"pink",")":"pink","]":"pink","}":"pink"}}]}}});function rm(e,t=0,r){return r==="stockholm"?new Fn(e,t):r==="a3m"?new ln(e):r==="fasta"?new Rn(e):r==="emf"?new Ln(e):r==="clustal"?new Nn(e):$a(e)?new Fn(e,t):ln.sniff(e)?new ln(e):e.startsWith(">")?new Rn(e):e.startsWith("SEQ")?new Ln(e):new Nn(e)}function nm(e){return e.replaceAll(/[.-]/g,"")}var nb=h(()=>{Yd();zd();Kd();Xd();tm();$d();Zd();Yd();zd();Kd();Xd();tm()});function eL(e){try{return decodeURIComponent(e)}catch{return e}}function tL(e){return e?Object.fromEntries(e.split(";").map(t=>t.trim()).filter(t=>!!t).map(t=>{let r=t.indexOf("="),n=(r===-1?t:t.slice(0,r)).trim(),o=r===-1?void 0:t.slice(r+1);return[n,o?o.split(",").map(i=>eL(i).trim()).join(" "):void 0]}).filter(([t])=>t!=="")):{}}function pl(e){return e?e.split(`
36
- `).map(t=>t.trim()).filter(t=>!!t&&!t.startsWith("#")).map(t=>{let r=t.split(" "),[n,o,i,a,s,c,l,A]=r,u=r[8];return{seq_id:n??"",source:o??"",type:i??"",start:Number(a)||0,end:Number(s)||0,score:Number(c)||0,strand:l??".",phase:A??".",...tL(u)}}):[]}var ob=h(()=>{});function gl(e){let t=new Map;for(let n of e){let o=t.get(n.seq_id);o?o.push(n):t.set(n.seq_id,[n])}let r={};for(let[n,o]of t){let i=new Map,a=new Map;for(let c of o){let l=c.Name||c.ID||`${c.source}_${c.start}_${c.end}`,A=c.signature_desc||c.Name||l,u=c.Ontology_term||c.description||c.Note||A;a.has(l)||a.set(l,{name:A,description:u,accession:l});let m=i.get(l);m?m.push({start:c.start,end:c.end}):i.set(l,[{start:c.start,end:c.end}])}let s=[];for(let[c,l]of i){let A=a.get(c);s.push({signature:{entry:A},locations:l})}r[n]={matches:s,xref:[{id:n}]}}return r}var ib=h(()=>{});var ab=h(()=>{});var sb=h(()=>{ob();ib();ab()});var om=h(()=>{Hy();Vd();nb();sb()});async function iL({seq:e,onProgress:t,onJobId:r,programs:n,model:o,signal:i}){let a=await qd(`${im}/iprscan5/run`,{method:"POST",body:new URLSearchParams({email:"colin.diesh@gmail.com",sequence:e,programs:n.join(",")}),signal:i});r?.(a),await sL({jobId:a,onProgress:t,signal:i}),await cL({jobId:a,model:o,onProgress:t,signal:i})}function aL(e,t){return ul(`${im}/iprscan5/result/${e}/json`,{signal:t})}async function sL({onProgress:e,jobId:t,signal:r}){let n=`${im}/iprscan5/status/${t}`,o=360;try{let i=!1;for(let a=0;a<o&&!i;a++){for(let c=0;c<10;c++)await Fy(1e3,r),e({msg:`Checking status ${10-c}`,url:n});let s=(await qd(n,{signal:r})).trim();if(s==="FINISHED")i=!0;else if(s==="FAILURE"||s==="ERROR"||s==="NOT_FOUND")throw new Error(`InterProScan job ${t} ended with status: ${s}`)}if(!i)throw new Error(`InterProScan job ${t} did not finish after ${o} status checks`)}finally{e()}}async function cb({algorithm:e,seq:t,programs:r,onJobId:n,onProgress:o,model:i,signal:a}){try{if(o({msg:`Launching ${e} MSA`}),e==="interproscan")await iL({seq:t,onJobId:n,onProgress:o,programs:r,model:i,signal:a});else throw new Error("unknown algorithm")}catch(s){if(Dn(s))(0,Ka.getSession)(i).notify("Cancelled InterProScan query","info");else throw s}finally{o()}}async function cL({jobId:e,model:t,onProgress:r,signal:n}){try{r({msg:`Downloading results of ${e} (for larger sequences this can be slow, click status to download and upload in the manual tab)`,url:`https://www.ebi.ac.uk/Tools/services/rest/iprscan5/result/${e}/json`});let o=await aL(e,n);t.setDomains(Object.fromEntries(o.results.map(i=>[i.xref[0]?.id,i]).filter(i=>i[0]!==void 0))),(0,Ka.getSession)(t).notify(`Loaded interproscan ${e} results`,"success")}catch(o){Dn(o)?(0,Ka.getSession)(t).notify("Cancelled InterProScan query","info"):(console.error(o),(0,Ka.getSession)(t).notifyError(`${o}`,o))}finally{r()}}var Ka,im,lb=h(()=>{Ka=f(me(),1);fl();im="https://www.ebi.ac.uk/Tools/services/rest"});var db={};$e(db,{default:()=>AL});var Te,Ab,ub,Jt,fb,lL,AL,mb=h(()=>{Te=f(v(),1),Ab=f(Me(),1),ub=f(me(),1),Jt=f(F(),1),fb=f(H(),1);om();lb();lL=(0,fb.observer)(function({handleClose:e,model:t}){let[r,n]=(0,Te.useState)([{name:"NCBIfam",description:"NCBI RefSeq FAMs including TIGRFAMs",category:"Families, domains, sites & repeats",checked:!0},{name:"SFLD",description:"Structure function linkage database",category:"Families, domains, sites & repeats",checked:!0},{name:"Phobius",checked:!0,description:"A combined transmembrane topology and signal peptide predictor",category:"Other sequence features"},{name:"SignalP",checked:!0,category:"Other sequence features"},{name:"SignalP_EUK",category:"Other category",checked:!0},{name:"SignalP_GRAM_POSITIVE",category:"Other category",checked:!0},{name:"SignalP_GRAM_NEGATIVE",checked:!0,category:"Other category"},{name:"SuperFamily",category:"Structural domains",checked:!0},{name:"Panther",category:"Families, domains, sites & repeats",checked:!0},{name:"Gene3d",category:"Structural domains",checked:!0},{name:"HAMAP",category:"Families, domains, sites & repeats",checked:!0},{name:"PrositeProfiles",category:"Families, domains, sites & repeats",checked:!0},{name:"PrositePatterns",category:"Families, domains, sites & repeats",checked:!0},{name:"Coils",category:"Other sequence features",checked:!0},{name:"SMART",category:"Families, domains, sites & repeats",checked:!0},{name:"CDD",description:"Conserved Domains Database",category:"Families, domains, sites & repeats",checked:!0},{name:"PRINTS",category:"Families, domains, sites & repeats",checked:!0},{name:"PfamA",category:"Families, domains, sites & repeats",checked:!0},{name:"MobiDBLite",checked:!0,category:"Other sequence features"},{name:"PIRSF",checked:!0,category:"Other category"},{name:"TMHMM",checked:!0,category:"Other sequence features"},{name:"AntiFam",checked:!0,category:"Other category"},{name:"FunFam",checked:!0,category:"Other category"},{name:"PIRSR",checked:!0,category:"Families, domains, sites & repeats"}]),o=r.filter(s=>s.checked).map(s=>s.name),[i,a]=(0,Te.useState)(!1);return Te.default.createElement(Ab.Dialog,{maxWidth:"xl",title:"Query InterProScan API for domains",onClose:()=>{e()},open:!0},Te.default.createElement(Jt.DialogContent,null,Te.default.createElement(Jt.Typography,null,"This will run InterProScan via the InterProScan API on all rows of the current MSA"),Te.default.createElement(Jt.Button,{onClick:()=>{a(!i)}},i?"Hide":"Show"," advanced options"),i?Te.default.createElement("div",null,Te.default.createElement(Jt.Typography,null,"Select algorithms for InterProScan to run"),Te.default.createElement("div",null,Te.default.createElement(Jt.Button,{variant:"contained",color:"secondary",onClick:()=>{n(r.map(s=>({...s,checked:!1})))}},"Select none"),Te.default.createElement(Jt.Button,{variant:"contained",color:"primary",onClick:()=>{n(r.map(s=>({...s,checked:!0})))}},"Select all")),Te.default.createElement("table",null,Te.default.createElement("tbody",null,r.toSorted((s,c)=>s.category.localeCompare(c.category)).map(({name:s,checked:c,category:l})=>Te.default.createElement("tr",{key:s},Te.default.createElement("td",null,Te.default.createElement("input",{type:"checkbox",key:s,checked:c,onChange:()=>{n(r.map(A=>A.name===s?{...A,checked:!A.checked}:A))}})),Te.default.createElement("td",null,s),Te.default.createElement("td",null,l)))))):null),Te.default.createElement(Jt.DialogActions,null,Te.default.createElement(Jt.Button,{variant:"contained",color:"secondary",onClick:()=>{e()}},"Cancel"),Te.default.createElement(Jt.Button,{variant:"contained",color:"primary",onClick:()=>{let s=new AbortController;(async()=>{try{let{rows:c}=t;if(c.length>140)throw new Error("Too many sequences, please run InterProScan offline");await cb({algorithm:"interproscan",programs:o,seq:c.map(l=>[l[0],nm(l[1])]).filter(l=>!!l[1]).map(l=>`>${l[0]}
30
+ `);if(s===-1)continue;let c=a.slice(s+1).replaceAll(/\s/g,"");c&&r.push(c)}if(r.length<2||new Set(r.map(a=>a.length)).size===1)return!1;let n=!1,o=-1,i=!0;for(let a of r){let s=0;for(let c=0;c<a.length;c++){let l=a.charCodeAt(c);Ni(l)?n=!0:(l>=Dw&&l<=Nw||l===Lw)&&s++}o===-1?o=s:s!==o&&(i=!1)}return n&&i}expandA3M(t,r){let n=r.length;if(n===0)return{};let o=[],i=[];for(let l=0;l<n;l++){let A=t[l],u=[],m=[],d=0;for(;d<A.length;){let p=A.charCodeAt(d);if(p>=Dw&&p<=Nw||p===Lw){u.push(A[d]);let E="",x=d+1;for(;x<A.length;){let I=A.charCodeAt(x);if(Ni(I)||I===Rw)E+=A[x],x++;else break}m.push(E),d=x}else if(p===Rw)d++;else if(Ni(p)){let E="";for(;d<A.length&&Ni(A.charCodeAt(d));)E+=A[d],d++;u.push(""),m.push(E)}else d++}o.push(u),i.push(m)}let a=Math.max(...o.map(l=>l.length),0),s=new Array(a).fill(0);for(let l=0;l<n;l++){let A=i[l];for(let u=0;u<A.length;u++){let m=0;for(let d of A[u])Ni(d.charCodeAt(0))&&m++;m>s[u]&&(s[u]=m)}}let c={};for(let l=0;l<n;l++){let A=o[l],u=i[l],m=[];for(let d=0;d<a;d++){let p=s[d];if(d<A.length){let E=A[d],x=u[d]||"";m.push(E||"-");let I="";for(let w of x)Ni(w.charCodeAt(0))&&(I+=w.toUpperCase());m.push(I);let C=p-I.length;C>0&&m.push(".".repeat(C))}else m.push("-"),p>0&&m.push(".".repeat(p))}c[r[l]]=m.join("")}return c}getMSA(){return this.MSA}getNames(){return this.orderedNames}getRow(t){return this.MSA.seqdata[t]||""}getWidth(){let t=Object.keys(this.MSA.seqdata)[0];return t?this.getRow(t).length:0}}});function SN(e){let t=/\(?(\d+(\.\d+)+)\)?/.exec(e);return t&&t.length>1?t[1]:""}function Pw(e){let t=["CLUSTAL","PROBCONS","MUSCLE","MSAPROBS","Kalign"];t.some(n=>e.startsWith(n))||console.warn(`${e} is not a known CLUSTAL header: ${t.join(",")}, proceeding but could indicate an issue`);let r=SN(e);return{info:e,version:r}}function sl(e){let t=e.next();for(;!t.done&&t.value.trim()==="";)t=e.next();return t.value}function QN(e){let t=e.split(/\s+/),r=e.slice(t[0].length),n=t[0].length+r.indexOf(t[1]),o=n+t[1].length;return[n,o]}function Fw(e){let t=sl(e),r=[],n="";if(!t)return;for(;t;)t.startsWith(" ")?n=t:r.push(t),t=e.next().value;let[o,i]=QN(r[0]),s=r.map(u=>u.split(/\s+/)).map(u=>u[0]),c=r.map(u=>u.slice(o,i)),l=n.slice(o,i),A=c[0].length-l.length;return A&&(l+=" ".repeat(A)),{ids:s,seqs:c,consensus:l}}function Ow(e){let t,r=Fw(e);if(r!==void 0)for(;t=Fw(e);){for(let n=0;n<t.seqs.length;n++)r.seqs[n]+=t.seqs[n];r.consensus+=t.consensus}return r}var Gd=g(()=>{});var Gw=g(()=>{Gd()});function vN(e){let t=sl(e);if(!t)throw new Error("Empty file received");let r=Pw(t),n=Ow(e);if(n===void 0)throw new Error("No blocks parsed");let o=n.seqs.map((a,s)=>({id:n.ids[s],seq:a})),{consensus:i}=n;if(i.length!==o[0].seq.length)throw new Error(`Consensus length != sequence length. Con ${i.length} seq ${o[0].seq.length}`);return{consensus:i,alns:o,header:r}}function Uw(e){let t=e.split(`
31
+ `)[Symbol.iterator]();return vN(t)}var Hw=g(()=>{Gw();Gd()});var kn,Ud=g(()=>{Hw();Di();kn=class extends Ht{MSA;constructor(t){super(),this.MSA=Uw(t)}getMSA(){return this.MSA}getRow(t){return this.MSA.alns.find(r=>r.id===t)?.seq??""}getWidth(){return this.MSA.alns[0]?.seq.length??0}getHeader(){return this.MSA.header}getNames(){return this.MSA.alns.map(t=>t.id)}get seqConsensus(){return this.MSA.consensus}}});function jw(e){let t=e.split(`
32
+ `).map(i=>i.trim()).filter(i=>!!i),r=[],n=[];for(let i of t)if(i.startsWith("SEQ"))r.push(i);else{if(i.startsWith("DATA"))continue;if(i.startsWith("//"))break;n.push(i)}let o=r.map(i=>{let[,a,s,c,l,A,u,m,d]=i.split(" ");return{species:a,protein:s,chr:c,start:+l,end:+A,strand:+u,geneId:m,unknown:d,seq:""}});for(let i of n)for(let a=0;a<r.length;a++)o[a].seq+=i[a];return o}function cl(e){let t=e.split(`
33
+ `).map(i=>i.trim()).filter(i=>!!i),r=[],n="";for(let i of t)if(i.startsWith("SEQ"))r.push(i);else{if(i.startsWith("DATA"))continue;if(i.startsWith("//"))break;n=i}let o=r.map(i=>{let[,a,s,c,l,A,u,m,d]=i.split(" ");return{species:a,protein:s,chr:c,start:+l,end:+A,strand:+u,geneId:m,unknown:d}});return{tree:n,seqs:o}}var Hd=g(()=>{});var Dn,jd=g(()=>{Hd();Di();Dn=class extends Ht{MSA;constructor(t){super(),this.MSA=jw(t)}getMSA(){return this.MSA}getRow(t){return this.MSA.find(r=>r.protein===t)?.seq??""}getWidth(){return this.MSA[0]?.seq.length??0}getNames(){return this.MSA.map(t=>t.protein)}}});var Nn,Jd=g(()=>{Di();Nn=class extends Ht{MSA;orderedNames=[];constructor(t){super();let r={},n={};for(let o of t.split(">")){if(!/\S/.test(o))continue;let i=o.indexOf(`
34
+ `);if(i===-1)continue;let a=o.slice(0,i).replace(/\r$/,""),s=a.indexOf(" "),c=s===-1?a:a.slice(0,s);c&&(r[c]=o.slice(i+1).replaceAll(/\s/g,""),this.orderedNames.push(c),c.includes(":")&&(n[c.replaceAll(":","_")]=c))}this.MSA={seqdata:r,colonNormalized:n}}getMSA(){return this.MSA}getNames(){return this.orderedNames}getRow(t){return this.MSA.seqdata[t]??this.MSA.seqdata[this.MSA.colonNormalized[t]??""]??""}getWidth(){let t=this.orderedNames[0];return t===void 0?0:this.getRow(t).length}}});function ho(e){let t=[],r=[],n=e.replace(/'((?:[^']|'')*)'/g,(a,s)=>{let c=r.length;return r.push(s.replaceAll("''","'")),`__Q${c}__`}),o={},i=n.split(/\s*(;|\(|\)|,|:)\s*/);for(let a=0;a<i.length;a++){let c=i[a].replace(/^__Q(\d+)__$/,(A,u)=>r[Number(u)]),l={};switch(c){case"(":o.children=[l],t.push(o),o=l;break;case",":t.at(-1)?.children.push(l),o=l;break;case")":o=t.pop();break;case":":break;default:{let A=i[a-1];A===")"||A==="("||A===","?o.name=c:A===":"&&(o.length=Number.parseFloat(c))}}}return o}var qd=g(()=>{});function Jw(){return{gf:{},gc:{},gs:{},gr:{},seqname:[],seqdata:{}}}function qa(e,t){if(e)return e;if(t)throw new Error("No format header: # STOCKHOLM 1.0");return Jw()}function Va(e){return qw.test(e)}function Vw(e,t){let r=t??{},n=[],o=null,i=e.split(`
35
+ `);for(let a of i){let s;if(qw.test(a))o=Jw();else if(MN.test(a))o&&n.push(o),o=null;else if(s=_N.exec(a)){o=qa(o,!!r.strict);let c=s[1];o.gf[c]||(o.gf[c]=[]),o.gf[c].push(s[2])}else if(s=TN.exec(a)){o=qa(o,!!r.strict);let c=s[1];o.gc[c]||(o.gc[c]=""),o.gc[c]+=s[2]}else if(s=kN.exec(a)){o=qa(o,!!r.strict);let c=s[1],l=s[2],A=s[3];o.gs[l]||(o.gs[l]={}),o.gs[l][c]||(o.gs[l][c]=[]),o.gs[l][c].push(A)}else if(s=DN.exec(a)){o=qa(o,!!r.strict);let c=s[1],l=s[2],A=s[3];o.gr[l]||(o.gr[l]={}),o.gr[l][c]||(o.gr[l][c]=""),o.gr[l][c]+=A}else if(s=NN.exec(a)){o=qa(o,!!r.strict);let c=s[1],l=s[2];o.seqdata[c]||(o.seqdata[c]="",o.seqname.push(c)),o.seqdata[c]+=l}else if(LN.test(a)&&r.strict)throw new Error("Malformed line")}return o&&n.push(o),n}var qw,MN,_N,TN,kN,DN,NN,LN,Vd=g(()=>{qw=/^# STOCKHOLM 1.0/,MN=/^\/\/\s*$/,_N=/^#=GF\s+(\S+)\s+(.*?)\s*$/,TN=/^#=GC\s+(\S+)\s+(.*?)\s*$/,kN=/^#=GS\s+(\S+)\s+(\S+)\s+(.*?)\s*$/,DN=/^#=GR\s+(\S+)\s+(\S+)\s+(.*?)\s*$/,NN=/^\s*(\S+)\s+(\S+)\s*$/,LN=/\S/});var Ln,Yd=g(()=>{qd();Vd();Pd();Di();Vd();Ln=class extends Ht{data;MSA;constructor(t,r){super();let n=Vw(t);this.data=n;let o=n[r]??n[0];if(!o)throw new Error("No alignments found in Stockholm file");this.MSA=o}getMSA(){return this.MSA}getRow(t){return this.MSA.seqdata[t]??""}getWidth(){let t=Object.keys(this.MSA.seqdata)[0];return t===void 0?0:this.getRow(t).length}get alignmentNames(){return this.data.map((t,r)=>t.gf.DE?.[0]??`Alignment ${r+1}`)}getHeader(){let t=this.MSA.gs.AC??{},r=this.MSA.gs.DR??{};return{General:this.MSA.gf,Accessions:Object.fromEntries(Object.entries(t).map(([n,o])=>[n,o[0]])),Dbxref:Object.fromEntries(Object.entries(r).map(([n,o])=>[n,o.join("; ")]))}}getRowData(t){return{name:t,accession:this.MSA.gs.AC?.[t]?.[0],dbxref:this.MSA.gs.DR?.[t]?.join("; ")}}getNames(){return Object.keys(this.MSA.seqdata)}getStructures(){let t=/PDB; +(\S+) +(\S); ([0-9]+)-([0-9]+)/,r=this.MSA.gs.DR??{},n={};for(let[o,i]of Object.entries(r))for(let a of i){let s=t.exec(a);s&&(n[o]??=[]).push({pdb:s[1].toLowerCase(),chain:s[2],startPos:+s[3],endPos:+s[4]})}return n}getTree(){let t=this.MSA.gf.NH?.[0];return t?ki(ho(t)):super.getTree()}get seqConsensus(){return this.MSA.gc.seq_cons}get secondaryStructureConsensus(){return this.MSA.gc.SS_cons}get tracks(){return[{id:"seqConsensus",name:"Sequence consensus",data:this.seqConsensus,customColorScheme:{}},{id:"secondaryStruct",name:"Secondary-structure",data:this.secondaryStructureConsensus,customColorScheme:{"<":"lightblue","(":"lightblue","[":"lightblue","{":"lightblue",">":"pink",")":"pink","]":"pink","}":"pink"}}]}}});function Wd(e,t=0,r){return r==="stockholm"?new Ln(e,t):r==="a3m"?new sn(e):r==="fasta"?new Nn(e):r==="emf"?new Dn(e):r==="clustal"?new kn(e):Va(e)?new Ln(e,t):sn.sniff(e)?new sn(e):e.startsWith(">")?new Nn(e):e.startsWith("SEQ")?new Dn(e):new kn(e)}function zd(e){return e.replaceAll(/[.-]/g,"")}var Yw=g(()=>{Od();Ud();jd();Jd();Yd();Hd();qd();Od();Ud();jd();Jd();Yd()});function RN(e){try{return decodeURIComponent(e)}catch{return e}}function FN(e){return e?Object.fromEntries(e.split(";").map(t=>t.trim()).filter(t=>!!t).map(t=>{let r=t.indexOf("="),n=(r===-1?t:t.slice(0,r)).trim(),o=r===-1?void 0:t.slice(r+1);return[n,o?o.split(",").map(i=>RN(i).trim()).join(" "):void 0]}).filter(([t])=>t!=="")):{}}function ll(e){return e?e.split(`
36
+ `).map(t=>t.trim()).filter(t=>!!t&&!t.startsWith("#")).map(t=>{let r=t.split(" "),[n,o,i,a,s,c,l,A]=r,u=r[8];return{seq_id:n??"",source:o??"",type:i??"",start:Number(a)||0,end:Number(s)||0,score:Number(c)||0,strand:l??".",phase:A??".",...FN(u)}}):[]}var Ww=g(()=>{});function Al(e){let t=new Map;for(let n of e){let o=t.get(n.seq_id);o?o.push(n):t.set(n.seq_id,[n])}let r={};for(let[n,o]of t){let i=new Map,a=new Map;for(let c of o){let l=c.Name||c.ID||`${c.source}_${c.start}_${c.end}`,A=c.signature_desc||c.Name||l,u=c.Ontology_term||c.description||c.Note||A;a.has(l)||a.set(l,{name:A,description:u,accession:l});let m=i.get(l);m?m.push({start:c.start,end:c.end}):i.set(l,[{start:c.start,end:c.end}])}let s=[];for(let[c,l]of i){let A=a.get(c);s.push({signature:{entry:A},locations:l})}r[n]={matches:s,xref:[{id:n}]}}return r}var zw=g(()=>{});var $w=g(()=>{});var Kw=g(()=>{Ww();zw();$w()});var $d=g(()=>{kw();Pd();Yw();Kw()});async function UN({seq:e,onProgress:t,onJobId:r,programs:n,model:o,signal:i}){let a=await Rd(`${Kd}/iprscan5/run`,{method:"POST",body:new URLSearchParams({email:"colin.diesh@gmail.com",sequence:e,programs:n.join(",")}),signal:i});r?.(a),await jN({jobId:a,onProgress:t,signal:i}),await JN({jobId:a,model:o,onProgress:t,signal:i})}function HN(e,t){return il(`${Kd}/iprscan5/result/${e}/json`,{signal:t})}async function jN({onProgress:e,jobId:t,signal:r}){let n=`${Kd}/iprscan5/status/${t}`,o=360;try{let i=!1;for(let a=0;a<o&&!i;a++){for(let c=0;c<10;c++)await Qw(1e3,r),e({msg:`Checking status ${10-c}`,url:n});let s=(await Rd(n,{signal:r})).trim();if(s==="FINISHED")i=!0;else if(s==="FAILURE"||s==="ERROR"||s==="NOT_FOUND")throw new Error(`InterProScan job ${t} ended with status: ${s}`)}if(!i)throw new Error(`InterProScan job ${t} did not finish after ${o} status checks`)}finally{e()}}async function Xw({algorithm:e,seq:t,programs:r,onJobId:n,onProgress:o,model:i,signal:a}){try{if(o({msg:`Launching ${e} MSA`}),e==="interproscan")await UN({seq:t,onJobId:n,onProgress:o,programs:r,model:i,signal:a});else throw new Error("unknown algorithm")}catch(s){if(Tn(s))(0,Ya.getSession)(i).notify("Cancelled InterProScan query","info");else throw s}finally{o()}}async function JN({jobId:e,model:t,onProgress:r,signal:n}){try{r({msg:`Downloading results of ${e} (for larger sequences this can be slow, click status to download and upload in the manual tab)`,url:`https://www.ebi.ac.uk/Tools/services/rest/iprscan5/result/${e}/json`});let o=await HN(e,n);t.setDomains(Object.fromEntries(o.results.map(i=>[i.xref[0]?.id,i]).filter(i=>i[0]!==void 0))),(0,Ya.getSession)(t).notify(`Loaded interproscan ${e} results`,"success")}catch(o){Tn(o)?(0,Ya.getSession)(t).notify("Cancelled InterProScan query","info"):(console.error(o),(0,Ya.getSession)(t).notifyError(`${o}`,o))}finally{r()}}var Ya,Kd,Zw=g(()=>{Ya=f(Ce(),1);al();Kd="https://www.ebi.ac.uk/Tools/services/rest"});var nb={};tt(nb,{default:()=>VN});var Qe,eb,tb,jt,rb,qN,VN,ob=g(()=>{Qe=f(M(),1),eb=f(Te(),1),tb=f(Ce(),1),jt=f(P(),1),rb=f(H(),1);$d();Zw();qN=(0,rb.observer)(function({handleClose:e,model:t}){let[r,n]=(0,Qe.useState)([{name:"NCBIfam",description:"NCBI RefSeq FAMs including TIGRFAMs",category:"Families, domains, sites & repeats",checked:!0},{name:"SFLD",description:"Structure function linkage database",category:"Families, domains, sites & repeats",checked:!0},{name:"Phobius",checked:!0,description:"A combined transmembrane topology and signal peptide predictor",category:"Other sequence features"},{name:"SignalP",checked:!0,category:"Other sequence features"},{name:"SignalP_EUK",category:"Other category",checked:!0},{name:"SignalP_GRAM_POSITIVE",category:"Other category",checked:!0},{name:"SignalP_GRAM_NEGATIVE",checked:!0,category:"Other category"},{name:"SuperFamily",category:"Structural domains",checked:!0},{name:"Panther",category:"Families, domains, sites & repeats",checked:!0},{name:"Gene3d",category:"Structural domains",checked:!0},{name:"HAMAP",category:"Families, domains, sites & repeats",checked:!0},{name:"PrositeProfiles",category:"Families, domains, sites & repeats",checked:!0},{name:"PrositePatterns",category:"Families, domains, sites & repeats",checked:!0},{name:"Coils",category:"Other sequence features",checked:!0},{name:"SMART",category:"Families, domains, sites & repeats",checked:!0},{name:"CDD",description:"Conserved Domains Database",category:"Families, domains, sites & repeats",checked:!0},{name:"PRINTS",category:"Families, domains, sites & repeats",checked:!0},{name:"PfamA",category:"Families, domains, sites & repeats",checked:!0},{name:"MobiDBLite",checked:!0,category:"Other sequence features"},{name:"PIRSF",checked:!0,category:"Other category"},{name:"TMHMM",checked:!0,category:"Other sequence features"},{name:"AntiFam",checked:!0,category:"Other category"},{name:"FunFam",checked:!0,category:"Other category"},{name:"PIRSR",checked:!0,category:"Families, domains, sites & repeats"}]),o=r.filter(s=>s.checked).map(s=>s.name),[i,a]=(0,Qe.useState)(!1);return Qe.default.createElement(eb.Dialog,{maxWidth:"xl",title:"Query InterProScan API for domains",onClose:()=>{e()},open:!0},Qe.default.createElement(jt.DialogContent,null,Qe.default.createElement(jt.Typography,null,"This will run InterProScan via the InterProScan API on all rows of the current MSA"),Qe.default.createElement(jt.Button,{onClick:()=>{a(!i)}},i?"Hide":"Show"," advanced options"),i?Qe.default.createElement("div",null,Qe.default.createElement(jt.Typography,null,"Select algorithms for InterProScan to run"),Qe.default.createElement("div",null,Qe.default.createElement(jt.Button,{variant:"contained",color:"secondary",onClick:()=>{n(r.map(s=>({...s,checked:!1})))}},"Select none"),Qe.default.createElement(jt.Button,{variant:"contained",color:"primary",onClick:()=>{n(r.map(s=>({...s,checked:!0})))}},"Select all")),Qe.default.createElement("table",null,Qe.default.createElement("tbody",null,r.toSorted((s,c)=>s.category.localeCompare(c.category)).map(({name:s,checked:c,category:l})=>Qe.default.createElement("tr",{key:s},Qe.default.createElement("td",null,Qe.default.createElement("input",{type:"checkbox",key:s,checked:c,onChange:()=>{n(r.map(A=>A.name===s?{...A,checked:!A.checked}:A))}})),Qe.default.createElement("td",null,s),Qe.default.createElement("td",null,l)))))):null),Qe.default.createElement(jt.DialogActions,null,Qe.default.createElement(jt.Button,{variant:"contained",color:"secondary",onClick:()=>{e()}},"Cancel"),Qe.default.createElement(jt.Button,{variant:"contained",color:"primary",onClick:()=>{let s=new AbortController;(async()=>{try{let{rows:c}=t;if(c.length>140)throw new Error("Too many sequences, please run InterProScan offline");await Xw({algorithm:"interproscan",programs:o,seq:c.map(l=>[l[0],zd(l[1])]).filter(l=>!!l[1]).map(l=>`>${l[0]}
37
37
  ${l[1]}`).join(`
38
- `),onProgress:l=>{t.setStatus(l?{...l,onCancel:()=>{s.abort()}}:void 0)},model:t,signal:s.signal})}catch(c){console.error(c),(0,ub.getSession)(t).notifyError(`${c}`,c)}finally{t.setStatus()}})(),e()}},"Send sequences to InterProScan")))}),AL=lL});function pb({model:e}){let{showDomains:t,actuallyShowDomains:r,subFeatureRows:n,noDomains:o}=e;return[{label:"Open domains...",icon:cl,onClick:()=>{e.queueDialog(i=>[fL,{handleClose:i,model:e}])}},{label:"Query InterProScan for domains...",icon:yy,onClick:()=>{e.queueDialog(i=>[dL,{handleClose:i,model:e}])}},{label:`Show domains${o?" (no domains loaded)":""}`,disabled:o,icon:My,checked:r?t:!1,type:"checkbox",onClick:()=>{e.setShowDomains(!t)}},{label:`Use sub-row layout${o?" (no domains loaded)":""}`,disabled:o,checked:r?n:!1,icon:Sy,type:"checkbox",onClick:()=>{e.setSubFeatureRows(!n)}},{label:`Filter domains${o?" (no domains loaded)":""}`,icon:Iy,disabled:o,onClick:()=>{e.queueDialog(i=>[uL,{onClose:i,model:e}])}}]}var hl,uL,fL,dL,gb=h(()=>{hl=f(v(),1);xy();Pd();by();Qy();_y();uL=(0,hl.lazy)(()=>Promise.resolve().then(()=>(Ny(),Dy))),fL=(0,hl.lazy)(()=>Promise.resolve().then(()=>(Uy(),Gy))),dL=(0,hl.lazy)(()=>Promise.resolve().then(()=>(mb(),db)))});var Ib=j((aj,Eb)=>{"use strict";var mL=function(t){return pL(t)&&!gL(t)};function pL(e){return!!e&&typeof e=="object"}function gL(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||EL(e)}var hL=typeof Symbol=="function"&&Symbol.for,CL=hL?Symbol.for("react.element"):60103;function EL(e){return e.$$typeof===CL}function IL(e){return Array.isArray(e)?[]:{}}function Xa(e,t){return t.clone!==!1&&t.isMergeableObject(e)?Pi(IL(e),e,t):e}function xL(e,t,r){return e.concat(t).map(function(n){return Xa(n,r)})}function wL(e,t){if(!t.customMerge)return Pi;var r=t.customMerge(e);return typeof r=="function"?r:Pi}function yL(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function hb(e){return Object.keys(e).concat(yL(e))}function Cb(e,t){try{return t in e}catch{return!1}}function bL(e,t){return Cb(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function BL(e,t,r){var n={};return r.isMergeableObject(e)&&hb(e).forEach(function(o){n[o]=Xa(e[o],r)}),hb(t).forEach(function(o){bL(e,o)||(Cb(e,o)&&r.isMergeableObject(t[o])?n[o]=wL(o,r)(e[o],t[o],r):n[o]=Xa(t[o],r))}),n}function Pi(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||xL,r.isMergeableObject=r.isMergeableObject||mL,r.cloneUnlessOtherwiseSpecified=Xa;var n=Array.isArray(t),o=Array.isArray(e),i=n===o;return i?n?r.arrayMerge(e,t,r):BL(e,t,r):Xa(t,r)}Pi.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,o){return Pi(n,o,r)},{})};var SL=Pi;Eb.exports=SL});function yb(){return{palette:{...Cl,mode:void 0},components:{MuiLink:{styleOverrides:{root:({theme:e})=>({color:e.palette.tertiary.main})}}}}}function UL(){return{...yb(),name:"Default (from config)"}}function HL(){return{...yb(),name:"Light (stock)"}}function jL(){return{name:"Dark (stock)",palette:{...Cl,mode:"dark"},components:{MuiAppBar:{defaultProps:{enableColorOnDark:!0},styleOverrides:{root:({theme:e})=>e.palette.primary.main}}}}}function qL(){return{name:"Dark (minimal)",palette:{...Cl,mode:"dark",primary:{main:kn[700]},secondary:{main:kn[800]},tertiary:ke.palette.augmentColor({color:{main:kn[900]}})}}}function JL(){return{name:"Light (minimal)",palette:{...Cl,primary:{main:kn[900]},secondary:{main:kn[800]},tertiary:ke.palette.augmentColor({color:{main:kn[900]}})}}}var wb,QL,ke,vL,ML,_L,xb,cj,TL,kL,DL,NL,LL,RL,FL,PL,OL,GL,Cl,lj,bb=h(()=>{wb=f(F(),1);Rd();QL=f(Ib(),1),ke=(0,wb.createTheme)(),vL=ke.palette.augmentColor({color:{main:"#0D233F"}}),ML=ke.palette.augmentColor({color:{main:"#721E63"}}),_L=ke.palette.augmentColor({color:{main:"#135560"}}),xb=ke.palette.augmentColor({color:{main:"#FFB11D"}}),cj=ke.palette.augmentColor({color:{main:"#aaa"}}),TL={A:ke.palette.augmentColor({color:Ja}),C:ke.palette.augmentColor({color:qa}),G:ke.palette.augmentColor({color:Va}),T:ke.palette.augmentColor({color:Ni})},kL=[null,ke.palette.augmentColor({color:{main:"#FF8080"}}),ke.palette.augmentColor({color:{main:"#80FF80"}}),ke.palette.augmentColor({color:{main:"#8080FF"}}),ke.palette.augmentColor({color:{main:"#8080FF"}}),ke.palette.augmentColor({color:{main:"#80FF80"}}),ke.palette.augmentColor({color:{main:"#FF8080"}})],DL=[null,ke.palette.augmentColor({color:{main:"#8f8f8f"}}),ke.palette.augmentColor({color:{main:"#adadad"}}),ke.palette.augmentColor({color:{main:"#d8d8d8"}}),ke.palette.augmentColor({color:{main:"#d8d8d8"}}),ke.palette.augmentColor({color:{main:"#adadad"}}),ke.palette.augmentColor({color:{main:"#8f8f8f"}})],NL="#e22",LL="#3e3",RL="#800080",FL="#808080",PL="#f00",OL="#00f",GL="#97b8c9",Cl={primary:vL,secondary:ML,tertiary:_L,quaternary:xb,highlight:xb,stopCodon:NL,startCodon:LL,insertion:RL,deletion:FL,softclip:OL,hardclip:PL,bases:TL,frames:DL,framesCDS:kL,skip:GL};lj={default:UL(),lightStock:HL(),lightMinimal:JL(),darkMinimal:qL(),darkStock:jL()}});var Bb=h(()=>{});var Sb=h(()=>{});var am=h(()=>{bb();Td();Bb();Sb()});function Pn({value:e}){let{classes:t}=VL(),r=/^https?:\/\//.exec(`${e}`);return(0,El.jsx)("div",{className:t.fieldValue,children:(0,Qb.isValidElement)(e)?e:r?(0,El.jsx)(vb.Link,{href:`${e}`,children:`${e}`}):(0,El.jsx)(_n,{html:nr(e)?JSON.stringify(e):String(e)})})}var El,Qb,vb,VL,Il=h(()=>{El=f(O(),1),Qb=f(v(),1),vb=f(F(),1);am();Sn();St();VL=oe()(e=>({fieldValue:{wordBreak:"break-word",maxHeight:300,fontSize:12,padding:e.spacing(.5),overflow:"auto"}}))});function Pr({description:e,name:t,width:r,prefix:n=[]}){let{classes:o}=YL(),i=[...n,t].join(".");return e?(0,xl.jsx)(Mb.Tooltip,{title:e,placement:"left",children:(0,xl.jsx)("div",{className:Ic(o.fieldDescription,o.fieldName),children:i})}):(0,xl.jsx)("div",{className:o.fieldName,style:{width:r},children:i})}var xl,Mb,YL,Za=h(()=>{xl=f(O(),1),Mb=f(F(),1);St();YL=oe()(e=>({fieldDescription:{"&:hover":{background:e.palette.mode==="dark"?"#e65100":"yellow"}},fieldName:{wordBreak:"break-all",minWidth:90,borderBottom:"1px solid #0003",fontSize:12,background:e.palette.action.disabledBackground,marginRight:e.spacing(1),padding:e.spacing(.5)}}))});function cm({name:e,value:t,description:r,formatter:n,prefix:o=[]}){let{classes:i}=WL(),[a,s]=(0,_b.useState)(!1),c=t.length>sm,l=c&&!a?t.slice(0,sm):t;return t.length===1?nr(t[0])?(0,Mt.jsx)(Or,{formatter:n,attributes:t[0],prefix:[...o,e]}):(0,Mt.jsxs)("div",{className:i.field,children:[(0,Mt.jsx)(Pr,{prefix:o,description:r,name:e}),(0,Mt.jsx)(Pn,{value:n?n(t[0],e):t[0]})]}):t.every(A=>nr(A))?(0,Mt.jsx)(Mt.Fragment,{children:t.map((A,u)=>(0,Mt.jsx)(Or,{formatter:n,attributes:A,prefix:[...o,`${e}-${u}`]},`${JSON.stringify(A)}-${u}`))}):(0,Mt.jsxs)("div",{className:i.field,children:[(0,Mt.jsx)(Pr,{prefix:o,description:r,name:e}),l.map((A,u)=>(0,Mt.jsx)("div",{className:i.fieldSubvalue,children:(0,Mt.jsx)(Pn,{value:n?n(A,e):A})},`${JSON.stringify(A)}-${u}`)),c?(0,Mt.jsx)("button",{type:"button",onClick:()=>{s(A=>!A)},children:a?"Show less":`Showing ${sm} of ${t.length}. Show all...`}):null]})}var Mt,_b,sm,WL,Tb=h(()=>{Mt=f(O(),1),_b=f(v(),1);wl();Il();Za();Sn();St();sm=100,WL=oe()(e=>({field:{display:"flex",flexWrap:"wrap"},fieldSubvalue:{wordBreak:"break-word",maxHeight:300,padding:e.spacing(.5),border:`1px solid ${e.palette.action.selected}`,boxSizing:"border-box",overflow:"auto"}}))});var Db=j((Mj,kb)=>{kb.exports=JBrowseExports["@mui/x-data-grid"]});function lm({children:e,style:t}){let{classes:r}=zL();return(0,Nb.jsx)("div",{className:r.flexContainer,style:t,children:e})}var Nb,zL,Lb=h(()=>{Nb=f(O(),1);St();zL=oe()({flexContainer:{display:"flex",flexDirection:"column"}})});function Am({value:e,prefix:t,name:r}){let{classes:n}=$L(),[o,i]=(0,Rb.useState)(!1),a=Object.keys(e[0]).sort(),s=new Set(a),c=Object.entries(e).map(([u,m])=>{let{id:d,...g}=m;return{id:u,identifier:d,...g}});for(let u of e)for(let m of Object.keys(u))s.add(m);let l;s.has("id")?(s.delete("id"),l=["identifier",...s]):l=[...s];let A=l.map(u=>Vx(c.map(m=>m[u])));return s.size<a.length+5?(0,pr.jsxs)("div",{className:n.margin,children:[(0,pr.jsx)(Pr,{prefix:t,name:r}),(0,pr.jsx)(Oi.FormControlLabel,{control:(0,pr.jsx)(Oi.Checkbox,{checked:o,onChange:u=>{i(u.target.checked)}}),label:(0,pr.jsx)(Oi.Typography,{variant:"body2",children:"Show options"})}),(0,pr.jsx)(lm,{children:(0,pr.jsx)(Fb.DataGrid,{disableRowSelectionOnClick:!0,rows:c,rowHeight:20,columnHeaderHeight:35,hideFooter:c.length<25,showToolbar:o,columns:l.map((u,m)=>({field:u,width:A[m],renderCell:({value:d})=>(0,pr.jsx)("div",{className:n.cell,children:(0,pr.jsx)(_n,{html:wd(d||"")})})}))})})]}):null}var pr,Rb,Oi,Fb,$L,Pb=h(()=>{pr=f(O(),1),Rb=f(v(),1),Oi=f(F(),1),Fb=f(Db(),1);Za();Lb();am();Sn();St();$L=oe()(e=>({margin:{marginBottom:e.spacing(4)},cell:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}}))});function um({name:e,value:t,description:r,prefix:n,width:o,formatter:i}){let{classes:a}=KL();return t!=null?(0,es.jsxs)("div",{className:a.field,children:[(0,es.jsx)(Pr,{prefix:n,description:r,name:e,width:o}),(0,es.jsx)(Pn,{value:i?i(t,e):t})]}):null}var es,KL,Ob=h(()=>{es=f(O(),1);Il();Za();St();KL=oe()({field:{display:"flex",flexWrap:"wrap"}})});function fm({value:e,prefix:t,name:r}){let{classes:n}=XL(),{uri:o,baseUri:i=""}=e,a;try{a=new URL(o,i).href}catch{a=o}return(0,ts.jsxs)("div",{className:n.field,children:[(0,ts.jsx)(Pr,{prefix:t,name:r}),(0,ts.jsx)(Pn,{value:a})]})}var ts,XL,Gb=h(()=>{ts=f(O(),1);Il();Za();St();XL=oe()({field:{display:"flex",flexWrap:"wrap"}})});function Ub(e,t){return Math.ceil(yd(e.map(r=>Id([...t,r[0]].join("."),12))))+10}function Hb(e,t={}){let r=t;for(let n of e)nr(r)&&(r=r[n]);return typeof r=="string"?r:nr(r)&&typeof r.Description=="string"?r.Description:void 0}var jb=h(()=>{Sn()});function Or(e){let{attributes:t,omit:r=[],omitSingleLevel:n=[],descriptions:o,formatter:i,hideUris:a,prefix:s=[]}=e,c=new Set([...r,...eR,...n]),{__jbrowsefmt:l,...A}=t,u=Object.entries({...A,...l}).filter(([d,g])=>g!=null&&!c.has(d)),m=Ub(u,s);return(0,An.jsx)(An.Fragment,{children:u.map(([d,g])=>{let E=Hb([...s,d],o);if(Array.isArray(g))return g.length>1&&g.every(x=>nr(x))?(0,An.jsx)(Am,{name:d,prefix:s,value:g},d):(0,An.jsx)(cm,{name:d,value:g,formatter:i,description:E,prefix:s},d);if(nr(g)){let{omitSingleLevel:x,...I}=e;return jc(g)?a?null:(0,An.jsx)(fm,{name:d,prefix:s,value:g},d):(0,An.jsx)(Or,{...I,formatter:i,attributes:g,descriptions:o,prefix:[...s,d]},d)}else return(0,An.jsx)(um,{name:d,formatter:i,value:g,description:E,prefix:s,width:Math.min(m,ZL)},d)})})}var An,ZL,eR,wl=h(()=>{An=f(O(),1);Tb();Pb();Ob();Gb();jb();Sn();ZL=170,eR=["__jbrowsefmt","length","position","subfeatures","uniqueId","exonFrames","parentId","thickStart","thickEnd","_lineHash"]});var qb,yl,dm=h(()=>{"use client";V();qb=f(O(),1),yl=(0,R.createSvgIcon)((0,qb.jsx)("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"ExpandMore")});function wo({children:e,title:t,defaultExpanded:r=!0}){let{classes:n}=tR();return(0,xo.jsxs)(On.Accordion,{defaultExpanded:r,children:[(0,xo.jsx)(On.AccordionSummary,{expandIcon:(0,xo.jsx)(yl,{className:n.icon}),children:(0,xo.jsx)(On.Typography,{variant:"button",children:t})}),(0,xo.jsx)(On.AccordionDetails,{className:n.expansionPanelDetails,children:e})]})}var xo,On,tR,mm=h(()=>{xo=f(O(),1);dm();On=f(F(),1);St();tR=oe()(e=>({expansionPanelDetails:{display:"block",padding:e.spacing(1)},icon:{color:e.palette.tertiary.contrastText||"#fff"}}))});function ht({checked:e,label:t,disabled:r,onChange:n}){return bl.default.createElement("div",null,bl.default.createElement(Bl.FormControlLabel,{control:bl.default.createElement(Bl.Checkbox,{disabled:r,checked:e,onChange:()=>{n()}}),label:t}))}var bl,Bl,Sl=h(()=>{bl=f(v(),1),Bl=f(F(),1)});function rs({str:e}){let{classes:t}=rR(),[r,n]=(0,gr.useState)(!1),[o,i]=(0,gr.useState)(!1),[a,s]=(0,gr.useState)(!1),c=A=>A.replaceAll("-","").replaceAll(".",""),l=e.map(([A,u])=>[A,o?u:c(u)]).filter(([,A])=>a||!!A).map(([A,u])=>`>${A}
38
+ `),onProgress:l=>{t.setStatus(l?{...l,onCancel:()=>{s.abort()}}:void 0)},model:t,signal:s.signal})}catch(c){console.error(c),(0,tb.getSession)(t).notifyError(`${c}`,c)}finally{t.setStatus()}})(),e()}},"Send sequences to InterProScan")))}),VN=qN});function ib({model:e}){let{showDomains:t,actuallyShowDomains:r,subFeatureRows:n,noDomains:o}=e;return[{label:"Open domains...",icon:rl,onClick:()=>{e.queueDialog(i=>[WN,{handleClose:i,model:e}])}},{label:"Query InterProScan for domains...",icon:dw,onClick:()=>{e.queueDialog(i=>[zN,{handleClose:i,model:e}])}},{label:`Show domains${o?" (no domains loaded)":""}`,disabled:o,icon:Ew,checked:r?t:!1,type:"checkbox",onClick:()=>{e.setShowDomains(!t)}},{label:`Use sub-row layout${o?" (no domains loaded)":""}`,disabled:o,checked:r?n:!1,icon:gw,type:"checkbox",onClick:()=>{e.setSubFeatureRows(!n)}},{label:`Filter domains${o?" (no domains loaded)":""}`,icon:Aw,disabled:o,onClick:()=>{e.queueDialog(i=>[YN,{onClose:i,model:e}])}}]}var ul,YN,WN,zN,ab=g(()=>{ul=f(M(),1);uw();_d();mw();hw();Iw();YN=(0,ul.lazy)(()=>Promise.resolve().then(()=>(bw(),ww))),WN=(0,ul.lazy)(()=>Promise.resolve().then(()=>(Tw(),_w))),zN=(0,ul.lazy)(()=>Promise.resolve().then(()=>(ob(),nb)))});var Ab=j((DH,lb)=>{"use strict";var $N=function(t){return KN(t)&&!XN(t)};function KN(e){return!!e&&typeof e=="object"}function XN(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||tL(e)}var ZN=typeof Symbol=="function"&&Symbol.for,eL=ZN?Symbol.for("react.element"):60103;function tL(e){return e.$$typeof===eL}function rL(e){return Array.isArray(e)?[]:{}}function Wa(e,t){return t.clone!==!1&&t.isMergeableObject(e)?Li(rL(e),e,t):e}function nL(e,t,r){return e.concat(t).map(function(n){return Wa(n,r)})}function oL(e,t){if(!t.customMerge)return Li;var r=t.customMerge(e);return typeof r=="function"?r:Li}function iL(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function sb(e){return Object.keys(e).concat(iL(e))}function cb(e,t){try{return t in e}catch{return!1}}function aL(e,t){return cb(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function sL(e,t,r){var n={};return r.isMergeableObject(e)&&sb(e).forEach(function(o){n[o]=Wa(e[o],r)}),sb(t).forEach(function(o){aL(e,o)||(cb(e,o)&&r.isMergeableObject(t[o])?n[o]=oL(o,r)(e[o],t[o],r):n[o]=Wa(t[o],r))}),n}function Li(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||nL,r.isMergeableObject=r.isMergeableObject||$N,r.cloneUnlessOtherwiseSpecified=Wa;var n=Array.isArray(t),o=Array.isArray(e),i=n===o;return i?n?r.arrayMerge(e,t,r):sL(e,t,r):Wa(t,r)}Li.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,o){return Li(n,o,r)},{})};var cL=Li;lb.exports=cL});function db(){return{palette:{...fl,mode:void 0},components:{MuiLink:{styleOverrides:{root:({theme:e})=>({color:e.palette.tertiary.main})}}}}}function wL(){return{...db(),name:"Default (from config)"}}function bL(){return{...db(),name:"Light (stock)"}}function BL(){return{name:"Dark (stock)",palette:{...fl,mode:"dark"},components:{MuiAppBar:{defaultProps:{enableColorOnDark:!0},styleOverrides:{root:({theme:e})=>e.palette.primary.main}}}}}function SL(){return{name:"Dark (minimal)",palette:{...fl,mode:"dark",primary:{main:_n[700]},secondary:{main:_n[800]},tertiary:ve.palette.augmentColor({color:{main:_n[900]}})}}}function QL(){return{name:"Light (minimal)",palette:{...fl,primary:{main:_n[900]},secondary:{main:_n[800]},tertiary:ve.palette.augmentColor({color:{main:_n[900]}})}}}var fb,lL,ve,AL,uL,fL,ub,LH,dL,mL,pL,gL,hL,CL,EL,IL,xL,yL,fl,RH,mb=g(()=>{fb=f(P(),1);vd();lL=f(Ab(),1),ve=(0,fb.createTheme)(),AL=ve.palette.augmentColor({color:{main:"#0D233F"}}),uL=ve.palette.augmentColor({color:{main:"#721E63"}}),fL=ve.palette.augmentColor({color:{main:"#135560"}}),ub=ve.palette.augmentColor({color:{main:"#FFB11D"}}),LH=ve.palette.augmentColor({color:{main:"#aaa"}}),dL={A:ve.palette.augmentColor({color:Ua}),C:ve.palette.augmentColor({color:Ga}),G:ve.palette.augmentColor({color:Ha}),T:ve.palette.augmentColor({color:Ti})},mL=[null,ve.palette.augmentColor({color:{main:"#FF8080"}}),ve.palette.augmentColor({color:{main:"#80FF80"}}),ve.palette.augmentColor({color:{main:"#8080FF"}}),ve.palette.augmentColor({color:{main:"#8080FF"}}),ve.palette.augmentColor({color:{main:"#80FF80"}}),ve.palette.augmentColor({color:{main:"#FF8080"}})],pL=[null,ve.palette.augmentColor({color:{main:"#8f8f8f"}}),ve.palette.augmentColor({color:{main:"#adadad"}}),ve.palette.augmentColor({color:{main:"#d8d8d8"}}),ve.palette.augmentColor({color:{main:"#d8d8d8"}}),ve.palette.augmentColor({color:{main:"#adadad"}}),ve.palette.augmentColor({color:{main:"#8f8f8f"}})],gL="#e22",hL="#3e3",CL="#800080",EL="#808080",IL="#f00",xL="#00f",yL="#97b8c9",fl={primary:AL,secondary:uL,tertiary:fL,quaternary:ub,highlight:ub,stopCodon:gL,startCodon:hL,insertion:CL,deletion:EL,softclip:xL,hardclip:IL,bases:dL,frames:pL,framesCDS:mL,skip:yL};RH={default:wL(),lightStock:bL(),lightMinimal:QL(),darkMinimal:SL(),darkStock:BL()}});var pb=g(()=>{});var gb=g(()=>{});var Xd=g(()=>{mb();wd();pb();gb()});function Rn({value:e}){let{classes:t}=vL(),r=/^https?:\/\//.exec(`${e}`);return(0,dl.jsx)("div",{className:t.fieldValue,children:(0,hb.isValidElement)(e)?e:r?(0,dl.jsx)(Cb.Link,{href:`${e}`,children:`${e}`}):(0,dl.jsx)(vn,{html:tr(e)?JSON.stringify(e):String(e)})})}var dl,hb,Cb,vL,ml=g(()=>{dl=f(O(),1),hb=f(M(),1),Cb=f(P(),1);Xd();bn();bt();vL=oe()(e=>({fieldValue:{wordBreak:"break-word",maxHeight:300,fontSize:12,padding:e.spacing(.5),overflow:"auto"}}))});function Rr({description:e,name:t,width:r,prefix:n=[]}){let{classes:o}=ML(),i=[...n,t].join(".");return e?(0,pl.jsx)(Eb.Tooltip,{title:e,placement:"left",children:(0,pl.jsx)("div",{className:mc(o.fieldDescription,o.fieldName),children:i})}):(0,pl.jsx)("div",{className:o.fieldName,style:{width:r},children:i})}var pl,Eb,ML,za=g(()=>{pl=f(O(),1),Eb=f(P(),1);bt();ML=oe()(e=>({fieldDescription:{"&:hover":{background:e.palette.mode==="dark"?"#e65100":"yellow"}},fieldName:{wordBreak:"break-all",minWidth:90,borderBottom:"1px solid #0003",fontSize:12,background:e.palette.action.disabledBackground,marginRight:e.spacing(1),padding:e.spacing(.5)}}))});function em({name:e,value:t,description:r,formatter:n,prefix:o=[]}){let{classes:i}=_L(),[a,s]=(0,Ib.useState)(!1),c=t.length>Zd,l=c&&!a?t.slice(0,Zd):t;return t.length===1?tr(t[0])?(0,Qt.jsx)(Fr,{formatter:n,attributes:t[0],prefix:[...o,e]}):(0,Qt.jsxs)("div",{className:i.field,children:[(0,Qt.jsx)(Rr,{prefix:o,description:r,name:e}),(0,Qt.jsx)(Rn,{value:n?n(t[0],e):t[0]})]}):t.every(A=>tr(A))?(0,Qt.jsx)(Qt.Fragment,{children:t.map((A,u)=>(0,Qt.jsx)(Fr,{formatter:n,attributes:A,prefix:[...o,`${e}-${u}`]},`${JSON.stringify(A)}-${u}`))}):(0,Qt.jsxs)("div",{className:i.field,children:[(0,Qt.jsx)(Rr,{prefix:o,description:r,name:e}),l.map((A,u)=>(0,Qt.jsx)("div",{className:i.fieldSubvalue,children:(0,Qt.jsx)(Rn,{value:n?n(A,e):A})},`${JSON.stringify(A)}-${u}`)),c?(0,Qt.jsx)("button",{type:"button",onClick:()=>{s(A=>!A)},children:a?"Show less":`Showing ${Zd} of ${t.length}. Show all...`}):null]})}var Qt,Ib,Zd,_L,xb=g(()=>{Qt=f(O(),1),Ib=f(M(),1);gl();ml();za();bn();bt();Zd=100,_L=oe()(e=>({field:{display:"flex",flexWrap:"wrap"},fieldSubvalue:{wordBreak:"break-word",maxHeight:300,padding:e.spacing(.5),border:`1px solid ${e.palette.action.selected}`,boxSizing:"border-box",overflow:"auto"}}))});var wb=j((rj,yb)=>{yb.exports=JBrowseExports["@mui/x-data-grid"]});function tm({children:e,style:t}){let{classes:r}=TL();return(0,bb.jsx)("div",{className:r.flexContainer,style:t,children:e})}var bb,TL,Bb=g(()=>{bb=f(O(),1);bt();TL=oe()({flexContainer:{display:"flex",flexDirection:"column"}})});function rm({value:e,prefix:t,name:r}){let{classes:n}=kL(),[o,i]=(0,Sb.useState)(!1),a=Object.keys(e[0]).sort(),s=new Set(a),c=Object.entries(e).map(([u,m])=>{let{id:d,...p}=m;return{id:u,identifier:d,...p}});for(let u of e)for(let m of Object.keys(u))s.add(m);let l;s.has("id")?(s.delete("id"),l=["identifier",...s]):l=[...s];let A=l.map(u=>Rx(c.map(m=>m[u])));return s.size<a.length+5?(0,dr.jsxs)("div",{className:n.margin,children:[(0,dr.jsx)(Rr,{prefix:t,name:r}),(0,dr.jsx)(Ri.FormControlLabel,{control:(0,dr.jsx)(Ri.Checkbox,{checked:o,onChange:u=>{i(u.target.checked)}}),label:(0,dr.jsx)(Ri.Typography,{variant:"body2",children:"Show options"})}),(0,dr.jsx)(tm,{children:(0,dr.jsx)(Qb.DataGrid,{disableRowSelectionOnClick:!0,rows:c,rowHeight:20,columnHeaderHeight:35,hideFooter:c.length<25,showToolbar:o,columns:l.map((u,m)=>({field:u,width:A[m],renderCell:({value:d})=>(0,dr.jsx)("div",{className:n.cell,children:(0,dr.jsx)(vn,{html:md(d||"")})})}))})})]}):null}var dr,Sb,Ri,Qb,kL,vb=g(()=>{dr=f(O(),1),Sb=f(M(),1),Ri=f(P(),1),Qb=f(wb(),1);za();Bb();Xd();bn();bt();kL=oe()(e=>({margin:{marginBottom:e.spacing(4)},cell:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}}))});function nm({name:e,value:t,description:r,prefix:n,width:o,formatter:i}){let{classes:a}=DL();return t!=null?(0,$a.jsxs)("div",{className:a.field,children:[(0,$a.jsx)(Rr,{prefix:n,description:r,name:e,width:o}),(0,$a.jsx)(Rn,{value:i?i(t,e):t})]}):null}var $a,DL,Mb=g(()=>{$a=f(O(),1);ml();za();bt();DL=oe()({field:{display:"flex",flexWrap:"wrap"}})});function om({value:e,prefix:t,name:r}){let{classes:n}=NL(),{uri:o,baseUri:i=""}=e,a;try{a=new URL(o,i).href}catch{a=o}return(0,Ka.jsxs)("div",{className:n.field,children:[(0,Ka.jsx)(Rr,{prefix:t,name:r}),(0,Ka.jsx)(Rn,{value:a})]})}var Ka,NL,_b=g(()=>{Ka=f(O(),1);ml();za();bt();NL=oe()({field:{display:"flex",flexWrap:"wrap"}})});function Tb(e,t){return Math.ceil(pd(e.map(r=>fd([...t,r[0]].join("."),12))))+10}function kb(e,t={}){let r=t;for(let n of e)tr(r)&&(r=r[n]);return typeof r=="string"?r:tr(r)&&typeof r.Description=="string"?r.Description:void 0}var Db=g(()=>{bn()});function Fr(e){let{attributes:t,omit:r=[],omitSingleLevel:n=[],descriptions:o,formatter:i,hideUris:a,prefix:s=[]}=e,c=new Set([...r,...RL,...n]),{__jbrowsefmt:l,...A}=t,u=Object.entries({...A,...l}).filter(([d,p])=>p!=null&&!c.has(d)),m=Tb(u,s);return(0,cn.jsx)(cn.Fragment,{children:u.map(([d,p])=>{let E=kb([...s,d],o);if(Array.isArray(p))return p.length>1&&p.every(x=>tr(x))?(0,cn.jsx)(rm,{name:d,prefix:s,value:p},d):(0,cn.jsx)(em,{name:d,value:p,formatter:i,description:E,prefix:s},d);if(tr(p)){let{omitSingleLevel:x,...I}=e;return Fc(p)?a?null:(0,cn.jsx)(om,{name:d,prefix:s,value:p},d):(0,cn.jsx)(Fr,{...I,formatter:i,attributes:p,descriptions:o,prefix:[...s,d]},d)}else return(0,cn.jsx)(nm,{name:d,formatter:i,value:p,description:E,prefix:s,width:Math.min(m,LL)},d)})})}var cn,LL,RL,gl=g(()=>{cn=f(O(),1);xb();vb();Mb();_b();Db();bn();LL=170,RL=["__jbrowsefmt","length","position","subfeatures","uniqueId","exonFrames","parentId","thickStart","thickEnd","_lineHash"]});var Nb,hl,im=g(()=>{"use client";V();Nb=f(O(),1),hl=(0,R.createSvgIcon)((0,Nb.jsx)("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"ExpandMore")});function Eo({children:e,title:t,defaultExpanded:r=!0}){let{classes:n}=FL();return(0,Co.jsxs)(Fn.Accordion,{defaultExpanded:r,children:[(0,Co.jsx)(Fn.AccordionSummary,{expandIcon:(0,Co.jsx)(hl,{className:n.icon}),children:(0,Co.jsx)(Fn.Typography,{variant:"button",children:t})}),(0,Co.jsx)(Fn.AccordionDetails,{className:n.expansionPanelDetails,children:e})]})}var Co,Fn,FL,am=g(()=>{Co=f(O(),1);im();Fn=f(P(),1);bt();FL=oe()(e=>({expansionPanelDetails:{display:"block",padding:e.spacing(1)},icon:{color:e.palette.tertiary.contrastText||"#fff"}}))});function pt({checked:e,label:t,disabled:r,onChange:n}){return Cl.default.createElement("div",null,Cl.default.createElement(El.FormControlLabel,{control:Cl.default.createElement(El.Checkbox,{disabled:r,checked:e,onChange:()=>{n()}}),label:t}))}var Cl,El,Il=g(()=>{Cl=f(M(),1),El=f(P(),1)});function Xa({str:e}){let{classes:t}=PL(),[r,n]=(0,mr.useState)(!1),[o,i]=(0,mr.useState)(!1),[a,s]=(0,mr.useState)(!1),c=A=>A.replaceAll("-","").replaceAll(".",""),l=e.map(([A,u])=>[A,o?u:c(u)]).filter(([,A])=>a||!!A).map(([A,u])=>`>${A}
39
39
  ${u}`).join(`
40
- `);return gr.default.createElement(gr.default.Fragment,null,gr.default.createElement(Ql.Button,{color:"primary",variant:"contained",onClick:()=>{ga(l),n(!0),setTimeout(()=>{n(!1)},500)}},r?"Copied!":"Copy to clipboard"),gr.default.createElement(ht,{label:"Show gaps",checked:o,onChange:()=>{i(!o)}}),gr.default.createElement(ht,{label:"Show empty",checked:a,onChange:()=>{s(!a)}}),gr.default.createElement(Ql.TextField,{variant:"outlined",multiline:!0,className:t.dialogContent,minRows:5,maxRows:10,fullWidth:!0,value:l,slotProps:{input:{readOnly:!0,className:t.textAreaFont}}}))}var gr,Ql,Jb,rR,pm=h(()=>{gr=f(v(),1),Ql=f(F(),1),Jb=f(ve(),1);Sl();bu();rR=(0,Jb.makeStyles)()({textAreaFont:{fontFamily:"Courier New",wordWrap:"break-word"},dialogContent:{background:"lightgrey",margin:4,minWidth:"80em"}})});var zb={};$e(zb,{default:()=>oR});var Gi,Vb,Yb,Wb,nR,oR,$b=h(()=>{Gi=f(v(),1);wl();mm();Vb=f(Me(),1),Yb=f(F(),1),Wb=f(H(),1);pm();nR=(0,Wb.observer)(function({model:e,onClose:t}){let{header:r}=e;return Gi.default.createElement(Vb.Dialog,{onClose:()=>{t()},open:!0,title:"Metadata",maxWidth:"xl"},Gi.default.createElement(Yb.DialogContent,null,Gi.default.createElement(Or,{attributes:r}),Gi.default.createElement(wo,{title:"sequence"},Gi.default.createElement(rs,{str:e.rows}))))}),oR=nR});var Xb={};$e(Xb,{default:()=>Kb});function Kb({model:e,onClose:t}){let[r,n]=(0,Qe.useState)(!0),[o,i]=(0,Qe.useState)(!0),[a,s]=(0,Qe.useState)("viewport"),[c,l]=(0,Qe.useState)(),A=(0,we.useTheme)(),{totalWidth:u,totalHeight:m,treeAreaWidth:d,turnedOnTracks:g,totalTrackAreaHeight:E}=e,x=g.length>0,I=u+d,p=m+(o?E:0),w=a==="entire"&&(I>1e4||p>1e4);return Qe.default.createElement(vl.Dialog,{onClose:()=>{t()},open:!0,title:"Export SVG"},Qe.default.createElement(we.DialogContent,null,c?Qe.default.createElement(vl.ErrorMessage,{error:c}):null,Qe.default.createElement(we.Typography,null,"Settings:"),Qe.default.createElement(ht,{label:"Include minimap?",disabled:a==="entire",checked:r,onChange:()=>{n(!r)}}),x?Qe.default.createElement(ht,{label:"Include tracks?",checked:o,onChange:()=>{i(!o)}}):null,Qe.default.createElement("div",null,Qe.default.createElement(we.FormControl,null,Qe.default.createElement(we.FormLabel,null,"Export type"),Qe.default.createElement(we.RadioGroup,{value:a,onChange:y=>{let{value:b}=y.target;(b==="entire"||b==="viewport")&&s(b)}},Qe.default.createElement(we.FormControlLabel,{value:"entire",control:Qe.default.createElement(we.Radio,null),label:"Entire MSA"}),Qe.default.createElement(we.FormControlLabel,{value:"viewport",control:Qe.default.createElement(we.Radio,null),label:"Current viewport only"})))),w?Qe.default.createElement(we.Alert,{severity:"warning",style:{marginTop:8}},"The entire MSA is very large (",Math.round(I),"x",Math.round(p)," pixels). Export may be slow or fail."):null),Qe.default.createElement(we.DialogActions,null,Qe.default.createElement(we.Button,{variant:"contained",color:"primary",onClick:()=>{e.exportSVG({theme:A,includeMinimap:a==="entire"?!1:r,includeTracks:x&&o,exportType:a}).then(()=>{t()}).catch(y=>{console.error(y),l(y)})}},"Submit"),Qe.default.createElement(we.Button,{variant:"contained",color:"secondary",onClick:()=>{t()}},"Cancel")))}var Qe,vl,we,Zb=h(()=>{Qe=f(v(),1),vl=f(Me(),1),we=f(F(),1);Sl()});var o1={};$e(o1,{default:()=>lR});var K,t1,tt,ns,r1,n1,e1,iR,aR,sR,cR,lR,i1=h(()=>{K=f(v(),1),t1=f(Me(),1),tt=f(F(),1),ns=f(H(),1),r1=f(ve(),1);sl();Sl();n1=(0,r1.makeStyles)()(e=>({field:{margin:e.spacing(4)},flex:{display:"flex"},minw:{width:"80em"}})),e1=(e=0)=>+e.toFixed(1),iR=(0,ns.observer)(function({model:e}){return K.default.createElement(K.default.Fragment,null,K.default.createElement(aR,{model:e}),K.default.createElement(sR,{model:e}))}),aR=(0,ns.observer)(function({model:t}){let{drawTree:r,drawLabels:n,drawNodeBubbles:o,labelsAlignRight:i,showBranchLen:a}=t;return K.default.createElement("div",null,K.default.createElement("h1",null,"Tree options"),K.default.createElement(ht,{checked:a,label:"Show branch length?",onChange:()=>{t.setShowBranchLen(!a)}}),K.default.createElement(ht,{checked:o,label:"Draw clickable bubbles on tree branches?",onChange:()=>{t.setDrawNodeBubbles(!o)}}),K.default.createElement(ht,{checked:r,label:"Show tree?",onChange:()=>{t.setDrawTree(!r)}}),K.default.createElement(ht,{checked:i,label:"Tree labels align right?",onChange:()=>{t.setLabelsAlignRight(!i)}}),K.default.createElement(ht,{checked:n,label:"Draw labels",onChange:()=>{t.setDrawLabels(!n)}}))}),sR=(0,ns.observer)(function({model:t}){let{classes:r}=n1(),{bgColor:n,colWidth:o,allowedGappyness:i,drawMsaLetters:a,colorSchemeName:s,hideGaps:c,rowHeight:l}=t;return K.default.createElement("div",null,K.default.createElement("h1",null,"MSA options"),K.default.createElement(ht,{checked:a,label:"Draw letters",onChange:()=>{t.setDrawMsaLetters(!a)}}),K.default.createElement(ht,{checked:n,label:"Color letters instead of background of tiles",onChange:()=>{t.setBgColor(!n)}}),K.default.createElement(ht,{checked:c,label:"Enable hiding gappy columns?",onChange:()=>{t.setHideGaps(!c)}}),c?K.default.createElement("div",{className:r.flex},K.default.createElement(tt.Typography,null,"Hide columns w/ >",i,"% gaps"),K.default.createElement(tt.Slider,{className:r.field,min:1,max:100,value:i,onChange:(A,u)=>{t.setAllowedGappyness(u)}})):null,K.default.createElement("div",{className:r.flex},K.default.createElement(tt.Typography,null,"Column width (",e1(o),"px)"),K.default.createElement(tt.Slider,{className:r.field,min:1,max:50,value:o,onChange:(A,u)=>{t.setColWidth(u)}})),K.default.createElement("div",{className:r.flex},K.default.createElement(tt.Typography,null,"Row height (",e1(l),"px)"),K.default.createElement(tt.Slider,{className:r.field,min:1,max:50,value:l,onChange:(A,u)=>{t.setRowHeight(u)}})),K.default.createElement(tt.TextField,{select:!0,label:"Color scheme",value:s,onChange:A=>{t.setColorSchemeName(A.target.value)}},Object.keys(Eo).map(A=>K.default.createElement(tt.MenuItem,{key:A,value:A},A))))}),cR=(0,ns.observer)(function({model:e,onClose:t}){let{classes:r}=n1();return K.default.createElement(t1.Dialog,{open:!0,title:"Settings",maxWidth:"xl",onClose:()=>{t()}},K.default.createElement(tt.DialogContent,{className:r.minw},K.default.createElement(iR,{model:e}),K.default.createElement(tt.DialogActions,null,K.default.createElement(tt.Button,{variant:"contained",color:"primary",onClick:()=>{t()}},"Submit"))))}),lR=cR});var yo,a1,AR,uR,fR,dR,s1,c1=h(()=>{yo=f(v(),1);Di();uy();Pd();py();hy();Gd();a1=f(H(),1);gb();AR=(0,yo.lazy)(()=>Promise.resolve().then(()=>($b(),zb))),uR=(0,yo.lazy)(()=>Promise.resolve().then(()=>(Zb(),Xb))),fR=(0,yo.lazy)(()=>Promise.resolve().then(()=>(i1(),o1))),dR=(0,a1.observer)(({model:e})=>yo.default.createElement(Fr,{"data-testid":"file_menu",menuItems:[{label:"Return to import form",icon:cl,onClick:()=>{e.reset()}},{label:"Metadata",icon:Ay,onClick:()=>{e.queueDialog(t=>[AR,{model:e,onClose:t}])}},{label:"More settings",icon:ll,onClick:()=>{e.queueDialog(t=>[fR,{model:e,onClose:t}])}},{label:"Domain settings",type:"subMenu",subMenu:pb({model:e})},{label:"Export SVG",icon:gy,onClick:()=>{e.queueDialog(t=>[uR,{onClose:t,model:e}])}}],anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"}},yo.default.createElement(my,null))),s1=dR});var Ml,_l,l1,mR,A1,u1=h(()=>{Ml=f(v(),1),_l=f(F(),1),l1=f(H(),1),mR=(0,l1.observer)(function({model:t}){let{hideGaps:r,allowedGappyness:n}=t;return r?Ml.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:8}},Ml.default.createElement(_l.Typography,{style:{whiteSpace:"nowrap"}},"Hide columns w/ >",n,"% gaps"),Ml.default.createElement(_l.Slider,{style:{width:100},min:1,max:100,value:n,onChange:(o,i)=>{t.setAllowedGappyness(i)}})):null}),A1=mR});var Tl,f1,d1,m1,pR,gR,p1,g1=h(()=>{Tl=f(v(),1),f1=f(F(),1),d1=f(H(),1),m1=f(ve(),1),pR=(0,m1.makeStyles)()({container:{display:"flex",overflow:"hidden",margin:"auto",marginLeft:10},nameFirst:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},nameRest:{whiteSpace:"nowrap",flexShrink:0}}),gR=(0,d1.observer)(function({model:e}){let{mouseOverRowName:t,mouseCol:r}=e,{classes:n}=pR();if(!t||r===void 0)return null;let o=Math.floor(t.length/2),i=e.visibleColToSeqPosOneBased(t,r),a=e.visibleColToRowLetter(t,r);return Tl.default.createElement(f1.Typography,{component:"div",className:n.container,title:t},Tl.default.createElement("span",{className:n.nameFirst},t.slice(0,o)),Tl.default.createElement("span",{className:n.nameRest},t.slice(o),":",i," (",a,")"))}),p1=gR});var os,h1,kl,C1,E1,hR,CR,I1,x1=h(()=>{os=f(v(),1),h1=f(Me(),1),kl=f(F(),1),C1=f(H(),1),E1=f(ve(),1),hR=(0,E1.makeStyles)()({margin:{margin:"auto",marginLeft:10}}),CR=(0,C1.observer)(({model:e})=>{let{status:t}=e,{classes:r}=hR();return t?os.default.createElement(kl.Typography,{className:r.margin},os.default.createElement(h1.LoadingEllipses,{message:t.msg,component:"span"})," ",t.url?os.default.createElement("a",{href:t.url,target:"_blank",rel:"noreferrer"},"(status)"):null," ",t.onCancel?os.default.createElement(kl.Button,{size:"small",onClick:()=>t.onCancel?.()},"Cancel"):null):null}),I1=CR});var w1,y1,b1=h(()=>{"use client";V();w1=f(O(),1),y1=(0,R.createSvgIcon)((0,w1.jsx)("path",{d:"M3 17v2h6v-2zM3 5v2h10V5zm10 16v-2h8v-2h-8v-2h-2v6zM7 9v2H3v2h4v2h2V9zm14 4v-2H11v2zm-6-4h2V7h4V5h-4V3h-2z"}),"Tune")});function B1(e){let{drawMsaLetters:t,hideGaps:r,bgColor:n}=e;return[{label:"Draw letters",type:"checkbox",checked:t,onClick:()=>{e.setDrawMsaLetters(!t)}},{label:"Color letters instead of background of tiles",type:"checkbox",checked:!n,onClick:()=>{e.setBgColor(!n)}},{label:"Enable hiding gappy columns?",type:"checkbox",checked:r,onClick:()=>{e.setHideGaps(!r)}}]}function S1(e){let{drawTree:t,showBranchLen:r,labelsAlignRight:n,drawNodeBubbles:o,drawLabels:i}=e;return[{label:"Show branch length",type:"checkbox",checked:r,onClick:()=>{e.setShowBranchLen(!r)}},{label:"Show tree",type:"checkbox",checked:t,onClick:()=>{e.setDrawTree(!t)}},{label:"Draw clickable bubbles on tree branches",type:"checkbox",checked:o,onClick:()=>{e.setDrawNodeBubbles(!o)}},{label:"Tree labels align right",type:"checkbox",checked:n,onClick:()=>{e.setLabelsAlignRight(!n)}},{label:"Draw labels",type:"checkbox",checked:i,onClick:()=>{e.setDrawLabels(!i)}}]}var gm=h(()=>{});var hm,Q1,ER,v1,M1=h(()=>{hm=f(v(),1);Di();b1();Q1=f(H(),1);gm();ER=(0,Q1.observer)(function({model:e}){return hm.default.createElement(Fr,{"data-testid":"msa_settings_menu",closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:B1(e)},hm.default.createElement(y1,null))}),v1=ER});var Cm,Dl,_1,IR,T1,k1=h(()=>{Cm=f(v(),1),Dl=f(F(),1),_1=f(H(),1),IR=(0,_1.observer)(function({model:e}){let{currentAlignment:t,alignmentNames:r}=e;return r.length>0?Cm.default.createElement(Dl.TextField,{select:!0,variant:"outlined",value:t,size:"small",onChange:n=>{e.setCurrentAlignment(+n.target.value),e.setScrollX(0),e.setScrollY(0)}},r.map((n,o)=>Cm.default.createElement(Dl.MenuItem,{key:`${n}-${o}`,value:o},n))):null}),T1=IR});var D1,N1,L1=h(()=>{"use client";V();D1=f(O(),1),N1=(0,R.createSvgIcon)((0,D1.jsx)("path",{d:"M22 11V3h-7v3H9V3H2v8h7V8h2v10h4v3h7v-8h-7v3h-2V8h2v3z"}),"AccountTree")});var Em,R1,xR,F1,P1=h(()=>{Em=f(v(),1);Di();L1();R1=f(H(),1);gm();xR=(0,R1.observer)(function({model:e}){let{rows:t}=e;return Em.default.createElement(Fr,{"data-testid":"tree_settings_menu",closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:[...S1(e),...t.length>=2?[{label:"Advanced",type:"subMenu",subMenu:[{label:"Calculate neighbor joining tree (BLOSUM62)",onClick:()=>{try{e.calculateNeighborJoiningTreeFromMSA()}catch(r){console.error("Failed to calculate NJ tree:",r),e.setError(r)}}}]}]:[]]},Em.default.createElement(N1,null))}),F1=xR});var Im,O1,G1=h(()=>{"use client";V();Im=f(O(),1),O1=(0,R.createSvgIcon)([(0,Im.jsx)("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"},"0"),(0,Im.jsx)("path",{d:"M12 10h-2v2H9v-2H7V9h2V7h1v2h2z"},"1")],"ZoomIn")});var U1,H1,j1=h(()=>{"use client";V();U1=f(O(),1),H1=(0,R.createSvgIcon)((0,U1.jsx)("path",{d:"M9 9V3H7v2.59L3.91 2.5 2.5 3.91 5.59 7H3v2zm12 0V7h-2.59l3.09-3.09-1.41-1.41L17 5.59V3h-2v6zM3 15v2h2.59L2.5 20.09l1.41 1.41L7 18.41V21h2v-6zm12 0v6h2v-2.59l3.09 3.09 1.41-1.41L18.41 17H21v-2z"}),"ZoomInMap")});var q1,J1,V1=h(()=>{"use client";V();q1=f(O(),1),J1=(0,R.createSvgIcon)((0,q1.jsx)("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14M7 9h5v1H7z"}),"ZoomOut")});var un,is,Y1,wR,W1,z1=h(()=>{un=f(v(),1);G1();j1();V1();is=f(F(),1),Y1=f(H(),1),wR=(0,Y1.observer)(function({model:t}){return un.default.createElement(un.default.Fragment,null,un.default.createElement(is.IconButton,{onClick:()=>{t.zoomIn()}},un.default.createElement(O1,null)),un.default.createElement(is.IconButton,{onClick:()=>{t.zoomOut()}},un.default.createElement(J1,null)),un.default.createElement(is.ToggleButton,{value:"scrollZoom",selected:t.scrollZoom,title:"Toggle scroll-to-zoom (zoom on plain mouse wheel; ctrl+wheel always zooms)",size:"small",sx:{border:"none"},onChange:()=>{t.setScrollZoom(!t.scrollZoom)}},un.default.createElement(H1,null)))}),W1=wR});var $1,K1,X1=h(()=>{"use client";V();$1=f(O(),1),K1=(0,R.createSvgIcon)((0,$1.jsx)("path",{d:"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2m0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2"}),"MoreVert")});var Z1,eB,tB=h(()=>{"use client";V();Z1=f(O(),1),eB=(0,R.createSvgIcon)((0,Z1.jsx)("path",{d:"M12 5V2L8 6l4 4V7c3.31 0 6 2.69 6 6 0 2.97-2.17 5.43-5 5.91v2.02c3.95-.49 7-3.85 7-7.93 0-4.42-3.58-8-8-8m-6 8c0-1.65.67-3.15 1.76-4.24L6.34 7.34C4.9 8.79 4 10.79 4 13c0 4.08 3.05 7.44 7 7.93v-2.02c-2.83-.48-5-2.94-5-5.91"}),"RestartAlt")});var xm,rB,yR,nB,oB=h(()=>{xm=f(v(),1);Di();X1();tB();rB=f(H(),1),yR=(0,rB.observer)(function({model:e}){return xm.default.createElement(Fr,{menuItems:[{label:"Fit both vertically/horizontally",onClick:()=>{e.fit()}},{label:"Fit vertically",onClick:()=>{e.fitVertically()}},{label:"Fit horizontally",onClick:()=>{e.fitHorizontally()}},{label:"Reset zoom to default",icon:eB,onClick:()=>{e.resetZoom()}},{label:"Scroll zoom",type:"checkbox",checked:e.scrollZoom,onClick:()=>{e.setScrollZoom(!e.scrollZoom)},helpText:"When enabled, scrolling the mouse wheel zooms in and out without holding ctrl. Hold shift to pan instead. Ctrl/\u2318+wheel always zooms."}]},xm.default.createElement(K1,null))}),nB=yR});var iB,aB=h(()=>{iB="5.4.1"});var lB={};$e(lB,{default:()=>cB});function cB({onClose:e}){return Je.default.createElement(sB.Dialog,{open:!0,title:"About",onClose:()=>{e()}},Je.default.createElement(_t.DialogContent,null,Je.default.createElement(_t.Typography,null,"MSAView ",iB," (",Je.default.createElement(_t.Link,{href:"https://github.com/gmod/react-msaview"},"Github"),")"),Je.default.createElement("ul",null,Je.default.createElement("li",null,Je.default.createElement(_t.Typography,null,"We use some color schemes from the"," ",Je.default.createElement(_t.Link,{href:"https://github.com/biotite-dev/biotite"},"biotite")," ","project, and their license is reproduced"," ",Je.default.createElement(_t.Link,{href:"https://github.com/biotite-dev/biotite/blob/master/LICENSE.rst"},"here"))),Je.default.createElement("li",null,Je.default.createElement(_t.Typography,null,"See this page for some information on jalview colorings"," ",Je.default.createElement(_t.Link,{href:"https://www.jalview.org/help/html/colourSchemes/"},"here"))),Je.default.createElement("li",null,Je.default.createElement(_t.Typography,null,"See this page for some info on the clustal, cinema, maeditor, and lesk color schemes"," ",Je.default.createElement(_t.Link,{href:"http://www.bioinformatics.nl/~berndb/aacolour.html"},"here"))),Je.default.createElement("li",null,Je.default.createElement(_t.Typography,null,"See this paper about the flower color scheme"," ",Je.default.createElement(_t.Link,{href:"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7245768/"},"here"))))))}var Je,sB,_t,AB=h(()=>{Je=f(v(),1),sB=f(Me(),1),_t=f(F(),1);aB()});function SR(){return Fe.default.createElement("div",{style:{flex:1}})}var Fe,uB,fB,bR,BR,dB,mB=h(()=>{Fe=f(v(),1);jh();Vh();uB=f(F(),1),fB=f(H(),1);cy();c1();u1();g1();x1();M1();k1();P1();z1();oB();bR=(0,Fe.lazy)(()=>Promise.resolve().then(()=>(AB(),lB))),BR=(0,fB.observer)(function({model:e}){let[t,{height:r}]=Su();return(0,Fe.useEffect)(()=>{e.setHeaderHeight(r??0)},[e,r]),Fe.default.createElement("div",{ref:t,style:{display:"flex"}},Fe.default.createElement(s1,{model:e}),Fe.default.createElement(sy,{model:e}),Fe.default.createElement(F1,{model:e}),Fe.default.createElement(v1,{model:e}),Fe.default.createElement(W1,{model:e}),Fe.default.createElement(nB,{model:e}),Fe.default.createElement(A1,{model:e}),Fe.default.createElement("div",{style:{paddingLeft:20,margin:"auto"}},Fe.default.createElement(T1,{model:e})),Fe.default.createElement(p1,{model:e}),Fe.default.createElement(SR,null),Fe.default.createElement(I1,{model:e}),Fe.default.createElement(uB.IconButton,{onClick:()=>{e.queueDialog(n=>[bR,{onClose:n}])}},Fe.default.createElement(Jh,null)))});dB=BR});var Gr,pB,QR,gB,hB=h(()=>{Gr=f(v(),1),pB=f(H(),1);zA();Vs();QR=(0,pB.observer)(function({model:e}){let[t,r]=(0,Gr.useState)(!1),{minimapHeight:n}=e,{unit:o,s:i,w:a,polygonHeight:s,polygonPoints:c}=Ns(e),l="rgba(66, 119, 127, 0.3)",{startDrag:A}=xn("x",(0,Gr.useCallback)((u,m)=>{e.setScrollX(m-u/o)},[e,o]));return Gr.default.createElement("div",{style:{position:"relative",height:n,width:"100%"}},Gr.default.createElement("div",{style:{height:12,boxSizing:"border-box",border:"1px solid #555"}}),Gr.default.createElement("div",{style:{position:"absolute",top:0,left:Math.max(0,i),background:t?"rgba(66,119,127,0.6)":l,cursor:"pointer",height:12,width:a,zIndex:100},onMouseOver:()=>{r(!0)},onMouseOut:()=>{r(!1)},onMouseDown:u=>{A(u,e.scrollX)}}),Gr.default.createElement("svg",{height:s,style:{width:"100%"}},Gr.default.createElement("polygon",{fill:l,points:c})))}),gB=QR});function wm(){return Nl.default.createElement("div",{style:{position:"absolute",left:"50%",top:"50%"}},Nl.default.createElement(Ll.CircularProgress,null),Nl.default.createElement(Ll.Typography,null,"Loading..."))}var Nl,Ll,CB=h(()=>{Nl=f(v(),1),Ll=f(F(),1)});function Rl(e){let t=(0,IB.useTheme)(),r=(0,EB.useMemo)(()=>ca(e,t),[e,t]);return{theme:t,contrastScheme:r}}var EB,IB,ym=h(()=>{EB=f(v(),1),IB=f(F(),1);In()});function xB(e,t,r,n,o,i){let{left:a,top:s}=t.getBoundingClientRect();return{col:Math.floor((e.clientX-a+r)/o),row:Math.floor((e.clientY-s+n)/i)}}var hr,wB,yB,bB,vR,BB,SB=h(()=>{hr=f(v(),1),wB=f(Me(),1),yB=f(fr(),1),bB=f(H(),1);KA();lu();ym();vR=(0,bB.observer)(function({model:e,offsetX:t,offsetY:r}){let{colWidth:n,rowHeight:o,scrollY:i,scrollX:a,colorScheme:s,blockSize:c,mouseClickCol:l,mouseClickRow:A,highResScaleFactor:u}=e,{theme:m,contrastScheme:d}=Rl(s),g=(0,hr.useRef)(null);(0,hr.useEffect)(()=>{let p=g.current?.getContext("2d");if(p)return(0,yB.autorun)(()=>{p.resetTransform(),p.clearRect(0,0,c*u,c*u),e.actuallyShowDomains&&Rs({ctx:p,offsetX:t,offsetY:r,model:e}),Us({ctx:p,theme:m,offsetX:t,offsetY:r,contrastScheme:d,model:e})})},[e,t,r,m,c,u,d]);let[E,x]=(0,hr.useState)(),{hoveredInsertion:I}=e;return hr.default.createElement(hr.default.Fragment,null,hr.default.createElement("canvas",{ref:g,onMouseMove:p=>{if(g.current){let{col:w,row:y}=xB(p,g.current,t,r,n,o);w>=0&&w<e.numColumns&&y>=0&&y<e.numRows?e.setMousePos(w,y):e.setMousePos(void 0,void 0),x(e.hoveredInsertion?{x:p.clientX,y:p.clientY}:void 0)}},onClick:p=>{if(g.current){let{col:w,row:y}=xB(p,g.current,t,r,n,o);w===l&&y===A?e.setMouseClickPos(void 0,void 0):e.setMouseClickPos(w,y)}},onMouseLeave:()=>{e.setMousePos(),x(void 0)},width:c*u,height:c*u,style:{position:"absolute",top:i+r,left:a+t,width:c,height:c}}),I&&E?hr.default.createElement(wB.BaseTooltip,{clientPoint:{x:E.x,y:E.y+15}},"Insertion (",I.letters.length,e.sequenceType==="amino"?"aa":"bp","):"," ",I.letters.length>20?`${I.letters.slice(0,20)}...`:I.letters):null)}),BB=vR});var Ur,QB,MR,vB,MB=h(()=>{Ur=f(v(),1),QB=f(H(),1);CB();SB();Ws();MR=(0,QB.observer)(function({model:e}){let{MSA:t,verticalScrollbarWidth:r,msaFilehandle:n,height:o,msaAreaWidth:i,blocks2d:a,scrollZoom:s}=e,c=(0,Ur.useRef)(null),l=(0,Ur.useCallback)(g=>{e.doScrollX(g)},[e]),A=(0,Ur.useCallback)(g=>{e.doScrollY(g)},[e]),u=(0,Ur.useCallback)((g,E,x)=>{e.zoomToPos(g,E,x)},[e]),{onMouseDown:m,onMouseUp:d}=Ko({ref:c,onScrollX:l,onScrollY:A,onZoom:u,scrollZoom:s});return Ur.default.createElement("div",{ref:c,onMouseDown:m,onMouseUp:d,onMouseLeave:g=>{g.preventDefault()},style:{position:"relative",height:o,width:i-r,overflow:"hidden"}},!t&&!n?null:t?a.map(([g,E])=>Ur.default.createElement(BB,{key:`${g}_${E}`,model:e,offsetX:g,offsetY:E})):Ur.default.createElement(wm,null))}),vB=MR});function TB({ctx:e,model:t}){let{mouseCol:r,colWidth:n,msaAreaWidth:o,verticalScrollbarWidth:i,height:a,rowHeight:s,scrollX:c,scrollY:l,mouseRow:A,mouseClickRow:u,mouseClickCol:m,relativeTo:d,hoveredTreeNode:g,highlightedColumns:E,highResScaleFactor:x}=t,I=o-i;if(e.resetTransform(),e.clearRect(0,0,I*x,a*x),e.scale(x,x),d){let p=t.rowNamesSet.get(d);p!==void 0&&(e.fillStyle=_R,e.fillRect(0,p*s+l,I,s))}if(g){e.fillStyle=TR;for(let p of g.descendantNames){let w=t.rowNamesSet.get(p);w!==void 0&&e.fillRect(0,w*s+l,I,s)}}if(E?.length){e.fillStyle=bm;for(let p of E)e.fillRect(p*n+c,0,n,a)}r!==void 0&&(e.fillStyle=_B,e.fillRect(r*n+c,0,n,a)),A!==void 0&&(e.fillStyle=_B,e.fillRect(0,A*s+l,I,s)),m!==void 0&&(e.fillStyle=bm,e.fillRect(m*n+c,0,n,a)),u!==void 0&&(e.fillStyle=bm,e.fillRect(0,u*s+l,I,s))}var _B,bm,_R,TR,kB=h(()=>{_B="rgba(0,0,0,0.15)",bm="rgba(128,128,0,0.2)",_R="rgba(0,128,255,0.3)",TR="rgba(255,165,0,0.15)"});var Ui,DB,NB,LB,kR,RB,FB=h(()=>{Ui=f(v(),1),DB=f(Pt(),1),NB=f(fr(),1),LB=f(H(),1);kB();kR=(0,LB.observer)(function({model:e}){let t=(0,Ui.useRef)(null),{height:r,msaAreaWidth:n,verticalScrollbarWidth:o,highResScaleFactor:i}=e,a=n-o;return(0,Ui.useEffect)(()=>{let s=t.current?.getContext("2d");return s?(0,NB.autorun)(()=>{(0,DB.isAlive)(e)&&TB({ctx:s,model:e})}):void 0},[e]),Ui.default.createElement("canvas",{ref:t,id:"mouseover",width:a*i,height:r*i,style:{position:"absolute",top:0,left:0,width:a,height:r,zIndex:1e3,pointerEvents:"none"}})}),RB=kR});var Fl,PB,DR,OB,GB=h(()=>{Fl=f(v(),1),PB=f(H(),1);MB();FB();DR=(0,PB.observer)(function({model:e}){return Fl.default.createElement("div",{style:{position:"relative"}},Fl.default.createElement(vB,{model:e}),Fl.default.createElement(RB,{model:e}))}),OB=DR});var as,UB=h(()=>{as=class{constructor(t=1/0,r=Float64Array,n=Uint32Array){let o=t!==1/0;this.ids=o?new n(t):[],this.values=o?new r(t):[],this.capacity=t,this.length=0}clear(){this.length=0}push(t,r){if(this.length===this.capacity)throw new RangeError("Queue is at capacity.");let n=this.length++;for(;n>0;){let o=n-1>>1,i=this.values[o];if(r>=i)break;this.ids[n]=this.ids[o],this.values[n]=i,n=o}this.ids[n]=t,this.values[n]=r}pop(){if(this.length===0)return;let t=this.ids,r=this.values,n=t[0],o=--this.length;if(o>0){let i=t[o],a=r[o],s=0,c=o>>1;for(;s<c;){let l=(s<<1)+1,A=l+1,u=l+(+(A<o)&+(r[A]<r[l]));if(r[u]>=a)break;t[s]=t[u],r[s]=r[u],s=u}t[s]=i,r[s]=a}return n}peek(){return this.length>0?this.ids[0]:void 0}peekValue(){return this.length>0?this.values[0]:void 0}shrink(){Array.isArray(this.ids)&&(this.ids.length=this.length),Array.isArray(this.values)&&(this.values.length=this.length)}}});function NR(e,t){let r=0,n=t.length-1;for(;r<n;){let o=r+n>>1;t[o]>e?n=o:r=o+1}return t[r]}function LR(e,t,r,n,o,i){let a=[n,o];for(;a.length;){let s=a.pop()||0,c=a.pop()||0;if(s-c<=i&&Math.floor(c/i)>=Math.floor(s/i))continue;let l=e[c],A=e[c+s>>1],u=e[s],m=l>A!=l>u?l:A<l!=A<u?A:u,d=c-1,g=s+1;for(;;){do d++;while(e[d]<m);do g--;while(e[g]>m);if(d>=g)break;RR(e,t,r,d,g)}a.push(c,g,g+1,s)}}function RR(e,t,r,n,o){let i=e[n];e[n]=e[o],e[o]=i;let a=4*n,s=4*o,c=t[a],l=t[a+1],A=t[a+2],u=t[a+3];t[a]=t[s],t[a+1]=t[s+1],t[a+2]=t[s+2],t[a+3]=t[s+3],t[s]=c,t[s+1]=l,t[s+2]=A,t[s+3]=u;let m=r[n];r[n]=r[o],r[o]=m}function FR(e,t){let r=e^t,n=65535^r,o=65535^(e|t),i=e&(t^65535),a=r|n>>1,s=r>>1^r,c=o^(o>>1^n&i>>1),l=i^(r&o>>1^i>>1);return r=a&a>>2^s&s>>2,n=a&s>>2^s&(a^s)>>2,o=c^(a&c>>2^s&l>>2),i=l^(s&c>>2^(a^s)&l>>2),a=r&r>>4^n&n>>4,s=r&n>>4^n&(r^n)>>4,c=o^(r&o>>4^n&i>>4),l=i^(n&o>>4^(r^n)&i>>4),o=c^(a&c>>8^s&l>>8),i=l^(s&c>>8^(a^s)&l>>8),o^=o>>1,i^=i>>1,r=e^t,n=i|65535^(r|o),r=(r|r<<8)&16711935,r=(r|r<<4)&252645135,r=(r|r<<2)&858993459,r=(r|r<<1)&1431655765,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,((n<<1|r)>>>0)-2147483648}var HB,Bm,ss,jB=h(()=>{UB();HB=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],Bm=3,ss=class e{static from(t,r=0){if(r%8!==0)throw new Error("byteOffset must be 8-byte aligned.");if(!t||t.byteLength===void 0||"buffer"in t)throw new Error("Data must be an instance of ArrayBuffer or SharedArrayBuffer.");let[n,o]=new Uint8Array(t,r+0,2);if(n!==251)throw new Error("Data does not appear to be in a Flatbush format.");let i=o>>4;if(i!==Bm)throw new Error(`Got v${i} data when expected v${Bm}.`);let a=HB[o&15];if(!a)throw new Error("Unrecognized array type.");let[s]=new Uint16Array(t,r+2,1),[c]=new Uint32Array(t,r+4,1);return new e(c,s,a,void 0,t,r)}constructor(t,r=16,n=Float64Array,o=ArrayBuffer,i,a=0){if(t===void 0)throw new Error("Missing required argument: numItems.");if(isNaN(t)||t<=0)throw new Error(`Unexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+r,2),65535),this.byteOffset=a;let s=t,c=s;this._levelBounds=[s*4];do s=Math.ceil(s/this.nodeSize),c+=s,this._levelBounds.push(c*4);while(s!==1);this.ArrayType=n,this.IndexArrayType=c<16384?Uint16Array:Uint32Array;let l=HB.indexOf(n),A=c*4*n.BYTES_PER_ELEMENT;if(l<0)throw new Error(`Unexpected typed array class: ${n}.`);let u=n,m=this.IndexArrayType;if(i)this.data=i,this._boxes=new u(i,a+8,c*4),this._indices=new m(i,a+8+A,c),this._pos=c*4,this.minX=this._boxes[this._pos-4],this.minY=this._boxes[this._pos-3],this.maxX=this._boxes[this._pos-2],this.maxY=this._boxes[this._pos-1];else{let d=this.data=new o(8+A+c*this.IndexArrayType.BYTES_PER_ELEMENT);this._boxes=new u(d,8,c*4),this._indices=new m(d,8+A,c),this._pos=0,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,new Uint8Array(d,0,2).set([251,(Bm<<4)+l]),new Uint16Array(d,2,1)[0]=r,new Uint32Array(d,4,1)[0]=t}this._queue=new as}add(t,r,n=t,o=r){let i=this._pos,a=i>>2,s=this._boxes;return this._indices[a]=a,s[i]=t,s[i+1]=r,s[i+2]=n,s[i+3]=o,this._pos=i+4,t<this.minX&&(this.minX=t),r<this.minY&&(this.minY=r),n>this.maxX&&(this.maxX=n),o>this.maxY&&(this.maxY=o),a}finish(){if(this._pos>>2!==this.numItems)throw new Error(`Added ${this._pos>>2} items when expected ${this.numItems}.`);let t=this._boxes;if(this.numItems<=this.nodeSize){t[this._pos++]=this.minX,t[this._pos++]=this.minY,t[this._pos++]=this.maxX,t[this._pos++]=this.maxY;return}let{numItems:r,minX:n,minY:o,nodeSize:i,_indices:a,_levelBounds:s}=this,c=this.maxX-n||1,l=this.maxY-o||1,A=new Int32Array(r),u=65535,m=u/c,d=u/l;for(let E=0,x=0;E<r;E++){let I=t[x++],p=t[x++],w=t[x++],y=t[x++],b=m*((I+w)/2-n)|0,Q=d*((p+y)/2-o)|0;A[E]=FR(b,Q)}LR(A,t,a,0,r-1,i);let g=r*4;for(let E=0,x=0;E<s.length-1;E++){let I=s[E];for(;x<I;){let p=x,w=t[x++],y=t[x++],b=t[x++],Q=t[x++];for(let S=1;S<i&&x<I;S++)w=Math.min(w,t[x++]),y=Math.min(y,t[x++]),b=Math.max(b,t[x++]),Q=Math.max(Q,t[x++]);a[g>>2]=p,t[g++]=w,t[g++]=y,t[g++]=b,t[g++]=Q}}this._pos=g}search(t,r,n,o,i){if(this._pos!==this._boxes.length)throw new Error("Data not yet indexed - call index.finish().");let{_boxes:a,_levelBounds:s,_indices:c,nodeSize:l}=this,A=this.numItems*4,u=a.length-4,m=s.length-1,d=[],g=[],E=!1;for(;u!==void 0;){let x=Math.min(u+l*4,s[m]),I=u>=A;if(E)this._collectContained(u,x,m,A,g,i);else for(let p=u;p<x;p+=4){let w=a[p];if(n<w)continue;let y=a[p+1];if(o<y)continue;let b=a[p+2];if(t>b)continue;let Q=a[p+3];if(r>Q)continue;let S=c[p>>2]|0;if(I){let k=+(t<=w&&r<=y&&n>=b&&o>=Q);d.push(S|k,m-1)}else(i===void 0||i(S,w,y,b,Q))&&g.push(S)}m=d.pop(),u=d.pop(),u!==void 0&&(E=(u&1)===1,u&=-2)}return g}_collectContained(t,r,n,o,i,a){let s=this._boxes,c=this._indices,l=t;for(let u=n;u>0;u--)l=c[l>>2];let A=Math.min(l+(r-t)*this.nodeSize**n,o);if(a===void 0)for(;l<A;l+=4)i.push(c[l>>2]|0);else for(;l<A;l+=4){let u=c[l>>2]|0;a(u,s[l],s[l+1],s[l+2],s[l+3])&&i.push(u)}}neighbors(t,r,n=1/0,o=1/0,i){if(this._pos!==this._boxes.length)throw new Error("Data not yet indexed - call index.finish().");let{_boxes:a,_levelBounds:s,_indices:c,_queue:l,nodeSize:A}=this,u=this.numItems*4,m=A*4,d=[],g=o*o,E=n===1,x=g;for(l.push(a.length-4<<1,0);l.length;){let I=l.ids[0];if(I&1){if(l.pop(),d.push(I>>1),d.length===n)break;continue}l.pop();let p=I>>1,w=p<u,y=Math.min(p+m,NR(p,s));for(let b=p;b<y;b+=4){let Q=a[b],S=a[b+1],k=a[b+2],T=a[b+3],_=Math.max(Math.max(Q-t,t-k),0),M=Math.max(Math.max(S-r,r-T),0),L=_*_+M*M;if(L>x)continue;let U=c[b>>2]|0;w?(i===void 0||i(U))&&(l.push(U<<1|1,L),E&&L<x&&(x=L)):l.push(U<<1,L)}}return l.clear(),d}}});var cs,Hi,qB,PR,JB,VB=h(()=>{cs=f(v(),1),Hi=f(F(),1),qB=f(H(),1),PR=(0,qB.observer)(function({node:e,model:t,onClose:r}){return cs.default.createElement(Hi.Menu,{anchorReference:"anchorPosition",anchorPosition:{left:e.x,top:e.y},transitionDuration:0,keepMounted:!0,open:!!e,onClose:r},cs.default.createElement(Hi.MenuItem,{dense:!0,disabled:!0},e.name),cs.default.createElement(Hi.MenuItem,{dense:!0,onClick:()=>{t.toggleCollapsed(e.id),r()}},t.collapsed.includes(e.id)?"Expand this node":"Collapse this node"),cs.default.createElement(Hi.MenuItem,{dense:!0,onClick:()=>{t.showOnly===e.id?t.setShowOnly(void 0):t.setShowOnly(e.id),r()}},t.showOnly===e.id?"Disable show only this node":"Show only this node"))}),JB=PR});var $B={};$e($B,{default:()=>GR});var Hr,YB,WB,zB,OR,GR,KB=h(()=>{Hr=f(v(),1);wl();mm();YB=f(Me(),1),WB=f(F(),1),zB=f(H(),1);pm();OR=(0,zB.observer)(function({info:e,model:t,nodeName:r,onClose:n}){let{treeMetadata:o,rows:i}=t,a=o[r],s=i.find(c=>c[0]===r);return Hr.default.createElement(YB.Dialog,{onClose:()=>{n()},open:!0,title:"Tree node info",maxWidth:"xl"},Hr.default.createElement(WB.DialogContent,null,Hr.default.createElement(wo,{title:"Attributes"},Hr.default.createElement(Or,{attributes:{nodeName:r,...e}})),Hr.default.createElement(wo,{title:"Sequence"},s?Hr.default.createElement(rs,{str:[s]}):Hr.default.createElement("div",null,"Sequence not found")),a?Hr.default.createElement(wo,{title:"Extra metadata"},Hr.default.createElement(Or,{attributes:a})):null))}),GR=OR});var fn,Gn,XB,UR,HR,ZB,eS=h(()=>{fn=f(v(),1),Gn=f(F(),1),XB=f(H(),1),UR=(0,fn.lazy)(()=>Promise.resolve().then(()=>(KB(),$B))),HR=(0,XB.observer)(function({node:e,onClose:t,model:r}){let{collapsed:n}=r,{name:o,id:i}=e,a=n.includes(i);return fn.default.createElement(Gn.Menu,{anchorReference:"anchorPosition",anchorPosition:{top:e.y,left:e.x},transitionDuration:0,keepMounted:!0,open:!!e,onClose:t},fn.default.createElement(Gn.MenuItem,{dense:!0,disabled:!0},o),fn.default.createElement(Gn.MenuItem,{dense:!0,onClick:()=>{r.queueDialog(s=>[UR,{info:r.getRowData(o),model:r,nodeName:o,onClose:s}]),t()}},"More info..."),fn.default.createElement(Gn.MenuItem,{dense:!0,onClick:()=>{r.toggleCollapsed(i),t()}},a?"Expand subtree":"Collapse subtree"),fn.default.createElement(Gn.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(e.name),t()}},"Indicate differences from this row"),r.relativeTo?fn.default.createElement(Gn.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(void 0),t()}},"Clear reference row"):null)}),ZB=HR});var je,tS,rS,nS,oS,jR,Sm,qR,iS,aS=h(()=>{je=f(v(),1),tS=f(F(),1);jB();rS=f(fr(),1),nS=f(H(),1),oS=f(ve(),1);VB();eS();Js();jR=(0,oS.makeStyles)()(e=>({tooltip:{position:"fixed",pointerEvents:"none",zIndex:1e4,backgroundColor:e.palette.grey[700],color:e.palette.common.white,padding:"4px 8px",borderRadius:4,fontSize:12,whiteSpace:"nowrap",maxWidth:300,overflow:"hidden",textOverflow:"ellipsis"}})),Sm=class{flatbush=null;entries=[];clear(){this.flatbush=null,this.entries=[]}insert(t){this.entries.push(t)}finish(){if(this.entries.length===0)this.flatbush=null;else{this.flatbush=new ss(this.entries.length);for(let t of this.entries)this.flatbush.add(t.minX,t.minY,t.maxX,t.maxY);this.flatbush.finish()}}search(t){return this.flatbush?.search(t.minX,t.minY,t.maxX,t.maxY).map(r=>this.entries[r])??[]}},qR=(0,nS.observer)(function({model:e,offsetY:t}){let{classes:r}=jR(),n=(0,tS.useTheme)(),o=(0,je.useRef)(null),i=(0,je.useRef)(new Sm),a=(0,je.useRef)(null),[s,c]=(0,je.useState)(),[l,A]=(0,je.useState)(),[u,m]=(0,je.useState)(),[d,g]=(0,je.useState)(),{scrollY:E,treeAreaWidth:x,blockSize:I,highResScaleFactor:p}=e,w=x+Wo,y=I,b=w*p,Q=y*p;(0,je.useEffect)(()=>{let _=o.current?.getContext("2d");if(_)return(0,rS.autorun)(()=>{_.resetTransform(),_.clearRect(0,0,(x+Wo)*p,I*p),qs({ctx:_,model:e,offsetY:t,clickMap:i.current,theme:n})})},[e,I,p,x,t,n]),(0,je.useEffect)(()=>{let _=a.current?.getContext("2d");if(_&&(_.resetTransform(),_.clearRect(0,0,x+Wo,I),_.translate(0,-t),u)){let{minX:M,maxX:L,minY:U,maxY:Y}=u;_.fillStyle="rgba(0,0,0,0.1)",_.fillRect(M,U,L-M,Y-U)}},[u,t,I,x]);function S(_){let M=_.nativeEvent.offsetX,L=_.nativeEvent.offsetY,[U]=i.current.search({minX:M,maxX:M+1,minY:L+t,maxY:L+1+t});return U?.branch?{...U,x:_.clientX,y:_.clientY}:void 0}function k(_){let M=_.nativeEvent.offsetX,L=_.nativeEvent.offsetY,[U]=i.current.search({minX:M,maxX:M+1,minY:L+t,maxY:L+1+t});return U&&!U.branch?{...U,x:_.clientX,y:_.clientY}:void 0}let T={width:w,height:y,top:E+t,left:0,position:"absolute"};return je.default.createElement(je.default.Fragment,null,s?.id?je.default.createElement(JB,{node:s,model:e,onClose:()=>{c(void 0)}}):null,l?.id?je.default.createElement(ZB,{node:l,model:e,onClose:()=>{A(void 0)}}):null,je.default.createElement("canvas",{width:b,height:Q,style:T,onMouseMove:_=>{if(!o.current)return;let M=k(_),L=S(_),U=M||L;if(o.current.style.cursor=U?"pointer":"default",m(M),g(U?{name:U.name,x:_.clientX,y:_.clientY}:void 0),U){if(e.setHoveredTreeNode(U.id),M?.name){let Y=e.rowNamesSet.get(M.name);Y!==void 0&&e.setMousePos(void 0,Y)}}else e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},onClick:_=>{let{clientX:M,clientY:L}=_,U=S(_);U?.id&&c({x:M,y:L,id:U.id,name:U.name});let Y=k(_);Y?.id&&A({...Y,x:M,y:L})},onMouseLeave:()=>{m(void 0),g(void 0),e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},ref:o}),je.default.createElement("canvas",{style:{...T,pointerEvents:"none",zIndex:100},width:w,height:y,ref:a}),d?je.default.createElement("div",{className:r.tooltip,style:{left:d.x+12,top:d.y+12}},d.name):null)}),iS=qR});var Cr,cS,lS,AS,JR,sS,VR,uS,fS=h(()=>{Cr=f(v(),1),cS=f(Pt(),1),lS=f(fr(),1),AS=f(H(),1);aS();Js();Ws();JR="rgba(0,128,255,0.3)",sS="rgba(255,165,0,0.2)",VR=(0,AS.observer)(function({model:e}){let t=(0,Cr.useRef)(null),r=(0,Cr.useRef)(null),{treeWidth:n,height:o,blocksY:i,treeAreaWidth:a}=e,s=(0,Cr.useCallback)(A=>{e.doScrollY(A)},[e]),{onMouseDown:c,onMouseUp:l}=Ko({ref:t,onScrollY:s});return(0,Cr.useEffect)(()=>{let A=r.current?.getContext("2d");return A?(0,lS.autorun)(()=>{if((0,cS.isAlive)(e)){let{relativeTo:u,leaves:m,rowHeight:d,hoveredTreeNode:g,treeAreaWidth:E,height:x,scrollY:I,mouseOverRowName:p}=e;A.resetTransform(),A.clearRect(0,0,E,x);let w=new Map(m.map(b=>[b.data.name,b])),y=b=>{let Q=w.get(b);Q&&A.fillRect(0,Q.x+I-d/2,E,d)};if(u&&(A.fillStyle=JR,y(u)),g){A.fillStyle=sS;for(let b of g.descendantNames)y(b)}p&&p!==u&&!g?.descendantNames.includes(p)&&(A.fillStyle=sS,y(p))}}):void 0},[e]),Cr.default.createElement("div",{ref:t,onMouseDown:c,onMouseUp:l,onMouseLeave:A=>{A.preventDefault()},style:{height:o,position:"relative",width:n+Wo}},i.map(A=>Cr.default.createElement(iS,{key:A,model:e,offsetY:A})),Cr.default.createElement("canvas",{ref:r,width:a,height:o,style:{position:"absolute",top:0,left:0,width:a,height:o,zIndex:1e3,pointerEvents:"none"}}))}),uS=VR});var Qm,dS,YR,mS,pS=h(()=>{Qm=f(v(),1),dS=f(H(),1);fS();YR=(0,dS.observer)(function({model:e}){let{treeAreaWidth:t}=e;return Qm.default.createElement("div",{style:{overflow:"hidden",flexShrink:0,width:t}},Qm.default.createElement(uS,{model:e}))}),mS=YR});var gS,hS,WR,CS,ES=h(()=>{gS=f(v(),1),hS=f(H(),1),WR=(0,hS.observer)(({model:e})=>{let{treeAreaWidth:t}=e;return gS.default.createElement("div",{style:{flexShrink:0,width:t}})}),CS=WR});var ee,bo,zR,$R,KR,XR,ZR,eF,IS,xS=h(()=>{ee=f(v(),1),bo=f(H(),1);Ih();yu();Ph();Hh();mB();hB();GB();pS();ES();zR=(0,bo.observer)(function({model:e}){let{showHorizontalScrollbar:t}=e;return ee.default.createElement("div",{style:{display:"flex"}},ee.default.createElement(CS,{model:e}),t?ee.default.createElement(gB,{model:e}):null)}),$R=(0,bo.observer)(function({model:e}){let{mouseCol:t,mouseClickCol:r,colWidth:n,scrollX:o,treeAreaWidth:i,resizeHandleWidth:a,totalTrackAreaHeight:s,msaAreaWidth:c,verticalScrollbarWidth:l}=e,A=i+a,u=c-l;return ee.default.createElement("div",{style:{position:"absolute",left:A,top:0,width:u,height:s,overflow:"hidden",pointerEvents:"none"}},t!==void 0?ee.default.createElement("div",{style:{position:"absolute",left:t*n+o,top:0,width:n,height:s,backgroundColor:"rgba(0,0,0,0.15)",zIndex:100}}):null,r!==void 0?ee.default.createElement("div",{style:{position:"absolute",left:r*n+o,top:0,width:n,height:s,backgroundColor:"rgba(128,128,0,0.2)",zIndex:100}}):null)}),KR=(0,bo.observer)(function({model:e}){let{turnedOnTracks:t}=e;return t.length===0?null:ee.default.createElement("div",{style:{position:"relative"}},ee.default.createElement($R,{model:e}),t.map(r=>ee.default.createElement(Fh,{key:r.model.id,model:e,track:r})))}),XR=(0,bo.observer)(function({model:e}){let{showVerticalScrollbar:t}=e;return ee.default.createElement("div",{style:{display:"flex"}},ee.default.createElement(mS,{model:e}),ee.default.createElement(xh,{model:e}),ee.default.createElement(OB,{model:e}),t?ee.default.createElement(Uh,{model:e}):null)}),ZR=(0,bo.observer)(function({model:e}){return ee.default.createElement("div",{style:{position:"relative"}},ee.default.createElement(zR,{model:e}),ee.default.createElement(KR,{model:e}),ee.default.createElement(XR,{model:e}))}),eF=(0,bo.observer)(function({model:e}){let{height:t,viewInitialized:r,DialogComponent:n,DialogProps:o}=e,i=Eh();return(0,ee.useEffect)(()=>{e.setHighResScaleFactor(i)},[e,i]),ee.default.createElement("div",null,r?ee.default.createElement(ee.default.Fragment,null,ee.default.createElement("div",{style:{height:t,overflow:"hidden"}},ee.default.createElement(dB,{model:e}),ee.default.createElement(ZR,{model:e})),ee.default.createElement(wh,{model:e}),n?ee.default.createElement(ee.Suspense,{fallback:null},ee.default.createElement(n,{...o})):null):null)}),IS=eF});var wS,yS,bS,BS=h(()=>{wS=`CLUSTAL O(1.2.3) multiple sequence alignment
40
+ `);return mr.default.createElement(mr.default.Fragment,null,mr.default.createElement(xl.Button,{color:"primary",variant:"contained",onClick:()=>{fa(l),n(!0),setTimeout(()=>{n(!1)},500)}},r?"Copied!":"Copy to clipboard"),mr.default.createElement(pt,{label:"Show gaps",checked:o,onChange:()=>{i(!o)}}),mr.default.createElement(pt,{label:"Show empty",checked:a,onChange:()=>{s(!a)}}),mr.default.createElement(xl.TextField,{variant:"outlined",multiline:!0,className:t.dialogContent,minRows:5,maxRows:10,fullWidth:!0,value:l,slotProps:{input:{readOnly:!0,className:t.textAreaFont}}}))}var mr,xl,Lb,PL,sm=g(()=>{mr=f(M(),1),xl=f(P(),1),Lb=f(_e(),1);Il();gu();PL=(0,Lb.makeStyles)()({textAreaFont:{fontFamily:"Courier New",wordWrap:"break-word"},dialogContent:{background:"lightgrey",margin:4,minWidth:"80em"}})});var Ob={};tt(Ob,{default:()=>GL});var Fi,Rb,Fb,Pb,OL,GL,Gb=g(()=>{Fi=f(M(),1);gl();am();Rb=f(Te(),1),Fb=f(P(),1),Pb=f(H(),1);sm();OL=(0,Pb.observer)(function({model:e,onClose:t}){let{header:r}=e;return Fi.default.createElement(Rb.Dialog,{onClose:()=>{t()},open:!0,title:"Metadata",maxWidth:"xl"},Fi.default.createElement(Fb.DialogContent,null,Fi.default.createElement(Fr,{attributes:r}),Fi.default.createElement(Eo,{title:"sequence"},Fi.default.createElement(Xa,{str:e.rows}))))}),GL=OL});var Hb={};tt(Hb,{default:()=>Ub});function Ub({model:e,onClose:t}){let[r,n]=(0,Be.useState)(!0),[o,i]=(0,Be.useState)(!0),[a,s]=(0,Be.useState)("viewport"),[c,l]=(0,Be.useState)(),A=(0,xe.useTheme)(),{totalWidth:u,totalHeight:m,treeAreaWidth:d,turnedOnTracks:p,totalTrackAreaHeight:E}=e,x=p.length>0,I=u+d,C=m+(o?E:0),w=a==="entire"&&(I>1e4||C>1e4);return Be.default.createElement(yl.Dialog,{onClose:()=>{t()},open:!0,title:"Export SVG"},Be.default.createElement(xe.DialogContent,null,c?Be.default.createElement(yl.ErrorMessage,{error:c}):null,Be.default.createElement(xe.Typography,null,"Settings:"),Be.default.createElement(pt,{label:"Include minimap?",disabled:a==="entire",checked:r,onChange:()=>{n(!r)}}),x?Be.default.createElement(pt,{label:"Include tracks?",checked:o,onChange:()=>{i(!o)}}):null,Be.default.createElement("div",null,Be.default.createElement(xe.FormControl,null,Be.default.createElement(xe.FormLabel,null,"Export type"),Be.default.createElement(xe.RadioGroup,{value:a,onChange:y=>{let{value:b}=y.target;(b==="entire"||b==="viewport")&&s(b)}},Be.default.createElement(xe.FormControlLabel,{value:"entire",control:Be.default.createElement(xe.Radio,null),label:"Entire MSA"}),Be.default.createElement(xe.FormControlLabel,{value:"viewport",control:Be.default.createElement(xe.Radio,null),label:"Current viewport only"})))),w?Be.default.createElement(xe.Alert,{severity:"warning",style:{marginTop:8}},"The entire MSA is very large (",Math.round(I),"x",Math.round(C)," pixels). Export may be slow or fail."):null),Be.default.createElement(xe.DialogActions,null,Be.default.createElement(xe.Button,{variant:"contained",color:"primary",onClick:()=>{e.exportSVG({theme:A,includeMinimap:a==="entire"?!1:r,includeTracks:x&&o,exportType:a}).then(()=>{t()}).catch(y=>{console.error(y),l(y)})}},"Submit"),Be.default.createElement(xe.Button,{variant:"contained",color:"secondary",onClick:()=>{t()}},"Cancel")))}var Be,yl,xe,jb=g(()=>{Be=f(M(),1),yl=f(Te(),1),xe=f(P(),1);Il()});var Wb={};tt(Wb,{default:()=>qL});var K,qb,Ke,Za,Vb,Yb,Jb,UL,HL,jL,JL,qL,zb=g(()=>{K=f(M(),1),qb=f(Te(),1),Ke=f(P(),1),Za=f(H(),1),Vb=f(_e(),1);tl();Il();Yb=(0,Vb.makeStyles)()(e=>({field:{margin:e.spacing(4)},flex:{display:"flex"},minw:{width:"80em"}})),Jb=(e=0)=>+e.toFixed(1),UL=(0,Za.observer)(function({model:e}){return K.default.createElement(K.default.Fragment,null,K.default.createElement(HL,{model:e}),K.default.createElement(jL,{model:e}))}),HL=(0,Za.observer)(function({model:t}){let{drawTree:r,drawLabels:n,drawNodeBubbles:o,labelsAlignRight:i,showBranchLen:a}=t;return K.default.createElement("div",null,K.default.createElement("h1",null,"Tree options"),K.default.createElement(pt,{checked:a,label:"Show branch length?",onChange:()=>{t.setShowBranchLen(!a)}}),K.default.createElement(pt,{checked:o,label:"Draw clickable bubbles on tree branches?",onChange:()=>{t.setDrawNodeBubbles(!o)}}),K.default.createElement(pt,{checked:r,label:"Show tree?",onChange:()=>{t.setDrawTree(!r)}}),K.default.createElement(pt,{checked:i,label:"Tree labels align right?",onChange:()=>{t.setLabelsAlignRight(!i)}}),K.default.createElement(pt,{checked:n,label:"Draw labels",onChange:()=>{t.setDrawLabels(!n)}}))}),jL=(0,Za.observer)(function({model:t}){let{classes:r}=Yb(),{bgColor:n,colWidth:o,allowedGappyness:i,drawMsaLetters:a,colorSchemeName:s,hideGaps:c,rowHeight:l}=t;return K.default.createElement("div",null,K.default.createElement("h1",null,"MSA options"),K.default.createElement(pt,{checked:a,label:"Draw letters",onChange:()=>{t.setDrawMsaLetters(!a)}}),K.default.createElement(pt,{checked:n,label:"Color letters instead of background of tiles",onChange:()=>{t.setBgColor(!n)}}),K.default.createElement(pt,{checked:c,label:"Enable hiding gappy columns?",onChange:()=>{t.setHideGaps(!c)}}),c?K.default.createElement("div",{className:r.flex},K.default.createElement(Ke.Typography,null,"Hide columns w/ >",i,"% gaps"),K.default.createElement(Ke.Slider,{className:r.field,min:1,max:100,value:i,onChange:(A,u)=>{t.setAllowedGappyness(u)}})):null,K.default.createElement("div",{className:r.flex},K.default.createElement(Ke.Typography,null,"Column width (",Jb(o),"px)"),K.default.createElement(Ke.Slider,{className:r.field,min:1,max:50,value:o,onChange:(A,u)=>{t.setColWidth(u)}})),K.default.createElement("div",{className:r.flex},K.default.createElement(Ke.Typography,null,"Row height (",Jb(l),"px)"),K.default.createElement(Ke.Slider,{className:r.field,min:1,max:50,value:l,onChange:(A,u)=>{t.setRowHeight(u)}})),K.default.createElement(Ke.TextField,{select:!0,label:"Color scheme",value:s,onChange:A=>{t.setColorSchemeName(A.target.value)}},Object.keys(go).map(A=>K.default.createElement(Ke.MenuItem,{key:A,value:A},A))))}),JL=(0,Za.observer)(function({model:e,onClose:t}){let{classes:r}=Yb();return K.default.createElement(qb.Dialog,{open:!0,title:"Settings",maxWidth:"xl",onClose:()=>{t()}},K.default.createElement(Ke.DialogContent,{className:r.minw},K.default.createElement(UL,{model:e}),K.default.createElement(Ke.DialogActions,null,K.default.createElement(Ke.Button,{variant:"contained",color:"primary",onClick:()=>{t()}},"Submit"))))}),qL=JL});var Io,$b,VL,YL,WL,zL,Kb,Xb=g(()=>{Io=f(M(),1);_i();tw();_d();iw();sw();kd();$b=f(H(),1);ab();VL=(0,Io.lazy)(()=>Promise.resolve().then(()=>(Gb(),Ob))),YL=(0,Io.lazy)(()=>Promise.resolve().then(()=>(jb(),Hb))),WL=(0,Io.lazy)(()=>Promise.resolve().then(()=>(zb(),Wb))),zL=(0,$b.observer)(({model:e})=>Io.default.createElement(Lr,{"data-testid":"file_menu",menuItems:[{label:"Return to import form",icon:rl,onClick:()=>{e.reset()}},{label:"Metadata",icon:ew,onClick:()=>{e.queueDialog(t=>[VL,{model:e,onClose:t}])}},{label:"More settings",icon:nl,onClick:()=>{e.queueDialog(t=>[WL,{model:e,onClose:t}])}},{label:"Domain settings",type:"subMenu",subMenu:ib({model:e})},{label:"Export SVG",icon:aw,onClick:()=>{e.queueDialog(t=>[YL,{onClose:t,model:e}])}}],anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"}},Io.default.createElement(ow,null))),Kb=zL});var wl,bl,Zb,$L,eB,tB=g(()=>{wl=f(M(),1),bl=f(P(),1),Zb=f(H(),1),$L=(0,Zb.observer)(function({model:t}){let{hideGaps:r,allowedGappyness:n}=t;return r?wl.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:8}},wl.default.createElement(bl.Typography,{style:{whiteSpace:"nowrap"}},"Hide columns w/ >",n,"% gaps"),wl.default.createElement(bl.Slider,{style:{width:100},min:1,max:100,value:n,onChange:(o,i)=>{t.setAllowedGappyness(i)}})):null}),eB=$L});var Bl,rB,nB,oB,KL,XL,iB,aB=g(()=>{Bl=f(M(),1),rB=f(P(),1),nB=f(H(),1),oB=f(_e(),1),KL=(0,oB.makeStyles)()({container:{display:"flex",overflow:"hidden",margin:"auto",marginLeft:10},nameFirst:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},nameRest:{whiteSpace:"nowrap",flexShrink:0}}),XL=(0,nB.observer)(function({model:e}){let{mouseOverRowName:t,mouseCol:r}=e,{classes:n}=KL();if(!t||r===void 0)return null;let o=Math.floor(t.length/2),i=e.visibleColToSeqPosOneBased(t,r),a=e.visibleColToRowLetter(t,r);return Bl.default.createElement(rB.Typography,{component:"div",className:n.container,title:t},Bl.default.createElement("span",{className:n.nameFirst},t.slice(0,o)),Bl.default.createElement("span",{className:n.nameRest},t.slice(o),":",i," (",a,")"))}),iB=XL});var es,sB,Sl,cB,lB,ZL,eR,AB,uB=g(()=>{es=f(M(),1),sB=f(Te(),1),Sl=f(P(),1),cB=f(H(),1),lB=f(_e(),1),ZL=(0,lB.makeStyles)()({margin:{margin:"auto",marginLeft:10}}),eR=(0,cB.observer)(({model:e})=>{let{status:t}=e,{classes:r}=ZL();return t?es.default.createElement(Sl.Typography,{className:r.margin},es.default.createElement(sB.LoadingEllipses,{message:t.msg,component:"span"})," ",t.url?es.default.createElement("a",{href:t.url,target:"_blank",rel:"noreferrer"},"(status)"):null," ",t.onCancel?es.default.createElement(Sl.Button,{size:"small",onClick:()=>t.onCancel?.()},"Cancel"):null):null}),AB=eR});var fB,dB,mB=g(()=>{"use client";V();fB=f(O(),1),dB=(0,R.createSvgIcon)((0,fB.jsx)("path",{d:"M3 17v2h6v-2zM3 5v2h10V5zm10 16v-2h8v-2h-8v-2h-2v6zM7 9v2H3v2h4v2h2V9zm14 4v-2H11v2zm-6-4h2V7h4V5h-4V3h-2z"}),"Tune")});function pB(e){let{drawMsaLetters:t,hideGaps:r,bgColor:n}=e;return[{label:"Draw letters",type:"checkbox",checked:t,onClick:()=>{e.setDrawMsaLetters(!t)}},{label:"Color letters instead of background of tiles",type:"checkbox",checked:!n,onClick:()=>{e.setBgColor(!n)}},{label:"Enable hiding gappy columns?",type:"checkbox",checked:r,onClick:()=>{e.setHideGaps(!r)}}]}function gB(e){let{drawTree:t,showBranchLen:r,labelsAlignRight:n,drawNodeBubbles:o,drawLabels:i}=e;return[{label:"Show branch length",type:"checkbox",checked:r,onClick:()=>{e.setShowBranchLen(!r)}},{label:"Show tree",type:"checkbox",checked:t,onClick:()=>{e.setDrawTree(!t)}},{label:"Draw clickable bubbles on tree branches",type:"checkbox",checked:o,onClick:()=>{e.setDrawNodeBubbles(!o)}},{label:"Tree labels align right",type:"checkbox",checked:n,onClick:()=>{e.setLabelsAlignRight(!n)}},{label:"Draw labels",type:"checkbox",checked:i,onClick:()=>{e.setDrawLabels(!i)}}]}var cm=g(()=>{});var lm,hB,tR,CB,EB=g(()=>{lm=f(M(),1);_i();mB();hB=f(H(),1);cm();tR=(0,hB.observer)(function({model:e}){return lm.default.createElement(Lr,{"data-testid":"msa_settings_menu",closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:pB(e)},lm.default.createElement(dB,null))}),CB=tR});var Am,Ql,IB,rR,xB,yB=g(()=>{Am=f(M(),1),Ql=f(P(),1),IB=f(H(),1),rR=(0,IB.observer)(function({model:e}){let{currentAlignment:t,alignmentNames:r}=e;return r.length>0?Am.default.createElement(Ql.TextField,{select:!0,variant:"outlined",value:t,size:"small",onChange:n=>{e.setCurrentAlignment(+n.target.value),e.setScrollX(0),e.setScrollY(0)}},r.map((n,o)=>Am.default.createElement(Ql.MenuItem,{key:`${n}-${o}`,value:o},n))):null}),xB=rR});var wB,bB,BB=g(()=>{"use client";V();wB=f(O(),1),bB=(0,R.createSvgIcon)((0,wB.jsx)("path",{d:"M22 11V3h-7v3H9V3H2v8h7V8h2v10h4v3h7v-8h-7v3h-2V8h2v3z"}),"AccountTree")});var um,SB,nR,QB,vB=g(()=>{um=f(M(),1);_i();BB();SB=f(H(),1);cm();nR=(0,SB.observer)(function({model:e}){let{rows:t}=e;return um.default.createElement(Lr,{"data-testid":"tree_settings_menu",closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:[...gB(e),...t.length>=2?[{label:"Advanced",type:"subMenu",subMenu:[{label:"Calculate neighbor joining tree (BLOSUM62)",onClick:()=>{try{e.calculateNeighborJoiningTreeFromMSA()}catch(r){console.error("Failed to calculate NJ tree:",r),e.setError(r)}}}]}]:[]]},um.default.createElement(bB,null))}),QB=nR});var fm,MB,_B=g(()=>{"use client";V();fm=f(O(),1),MB=(0,R.createSvgIcon)([(0,fm.jsx)("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"},"0"),(0,fm.jsx)("path",{d:"M12 10h-2v2H9v-2H7V9h2V7h1v2h2z"},"1")],"ZoomIn")});var TB,kB,DB=g(()=>{"use client";V();TB=f(O(),1),kB=(0,R.createSvgIcon)((0,TB.jsx)("path",{d:"M9 9V3H7v2.59L3.91 2.5 2.5 3.91 5.59 7H3v2zm12 0V7h-2.59l3.09-3.09-1.41-1.41L17 5.59V3h-2v6zM3 15v2h2.59L2.5 20.09l1.41 1.41L7 18.41V21h2v-6zm12 0v6h2v-2.59l3.09 3.09 1.41-1.41L18.41 17H21v-2z"}),"ZoomInMap")});var NB,LB,RB=g(()=>{"use client";V();NB=f(O(),1),LB=(0,R.createSvgIcon)((0,NB.jsx)("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14M7 9h5v1H7z"}),"ZoomOut")});var ln,ts,FB,oR,PB,OB=g(()=>{ln=f(M(),1);_B();DB();RB();ts=f(P(),1),FB=f(H(),1),oR=(0,FB.observer)(function({model:t}){return ln.default.createElement(ln.default.Fragment,null,ln.default.createElement(ts.IconButton,{onClick:()=>{t.zoomIn()}},ln.default.createElement(MB,null)),ln.default.createElement(ts.IconButton,{onClick:()=>{t.zoomOut()}},ln.default.createElement(LB,null)),ln.default.createElement(ts.ToggleButton,{value:"scrollZoom",selected:t.scrollZoom,title:"Toggle scroll-to-zoom (zoom on plain mouse wheel; ctrl+wheel always zooms)",size:"small",sx:{border:"none"},onChange:()=>{t.setScrollZoom(!t.scrollZoom)}},ln.default.createElement(kB,null)))}),PB=oR});var GB,UB,HB=g(()=>{"use client";V();GB=f(O(),1),UB=(0,R.createSvgIcon)((0,GB.jsx)("path",{d:"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2m0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2"}),"MoreVert")});var jB,JB,qB=g(()=>{"use client";V();jB=f(O(),1),JB=(0,R.createSvgIcon)((0,jB.jsx)("path",{d:"M12 5V2L8 6l4 4V7c3.31 0 6 2.69 6 6 0 2.97-2.17 5.43-5 5.91v2.02c3.95-.49 7-3.85 7-7.93 0-4.42-3.58-8-8-8m-6 8c0-1.65.67-3.15 1.76-4.24L6.34 7.34C4.9 8.79 4 10.79 4 13c0 4.08 3.05 7.44 7 7.93v-2.02c-2.83-.48-5-2.94-5-5.91"}),"RestartAlt")});var dm,VB,iR,YB,WB=g(()=>{dm=f(M(),1);_i();HB();qB();VB=f(H(),1),iR=(0,VB.observer)(function({model:e}){return dm.default.createElement(Lr,{menuItems:[{label:"Fit both vertically/horizontally",onClick:()=>{e.fit()}},{label:"Fit vertically",onClick:()=>{e.fitVertically()}},{label:"Fit horizontally",onClick:()=>{e.fitHorizontally()}},{label:"Reset zoom to default",icon:JB,onClick:()=>{e.resetZoom()}},{label:"Scroll zoom",type:"checkbox",checked:e.scrollZoom,onClick:()=>{e.setScrollZoom(!e.scrollZoom)},helpText:"When enabled, scrolling the mouse wheel zooms in and out without holding ctrl. Hold shift to pan instead. Ctrl/\u2318+wheel always zooms."}]},dm.default.createElement(UB,null))}),YB=iR});var zB,$B=g(()=>{zB="5.4.1"});var ZB={};tt(ZB,{default:()=>XB});function XB({onClose:e}){return je.default.createElement(KB.Dialog,{open:!0,title:"About",onClose:()=>{e()}},je.default.createElement(vt.DialogContent,null,je.default.createElement(vt.Typography,null,"MSAView ",zB," (",je.default.createElement(vt.Link,{href:"https://github.com/gmod/react-msaview"},"Github"),")"),je.default.createElement("ul",null,je.default.createElement("li",null,je.default.createElement(vt.Typography,null,"We use some color schemes from the"," ",je.default.createElement(vt.Link,{href:"https://github.com/biotite-dev/biotite"},"biotite")," ","project, and their license is reproduced"," ",je.default.createElement(vt.Link,{href:"https://github.com/biotite-dev/biotite/blob/master/LICENSE.rst"},"here"))),je.default.createElement("li",null,je.default.createElement(vt.Typography,null,"See this page for some information on jalview colorings"," ",je.default.createElement(vt.Link,{href:"https://www.jalview.org/help/html/colourSchemes/"},"here"))),je.default.createElement("li",null,je.default.createElement(vt.Typography,null,"See this page for some info on the clustal, cinema, maeditor, and lesk color schemes"," ",je.default.createElement(vt.Link,{href:"http://www.bioinformatics.nl/~berndb/aacolour.html"},"here"))),je.default.createElement("li",null,je.default.createElement(vt.Typography,null,"See this paper about the flower color scheme"," ",je.default.createElement(vt.Link,{href:"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7245768/"},"here"))))))}var je,KB,vt,eS=g(()=>{je=f(M(),1),KB=f(Te(),1),vt=f(P(),1);$B()});function cR(){return Le.default.createElement("div",{style:{flex:1}})}var Le,tS,rS,aR,sR,nS,oS=g(()=>{Le=f(M(),1);Dh();Rh();tS=f(P(),1),rS=f(H(),1);Xy();Xb();tB();aB();uB();EB();yB();vB();OB();WB();aR=(0,Le.lazy)(()=>Promise.resolve().then(()=>(eS(),ZB))),sR=(0,rS.observer)(function({model:e}){let[t,{height:r}]=Cu();return(0,Le.useEffect)(()=>{e.setHeaderHeight(r??0)},[e,r]),Le.default.createElement("div",{ref:t,style:{display:"flex"}},Le.default.createElement(Kb,{model:e}),Le.default.createElement(Ky,{model:e}),Le.default.createElement(QB,{model:e}),Le.default.createElement(CB,{model:e}),Le.default.createElement(PB,{model:e}),Le.default.createElement(YB,{model:e}),Le.default.createElement(eB,{model:e}),Le.default.createElement("div",{style:{paddingLeft:20,margin:"auto"}},Le.default.createElement(xB,{model:e})),Le.default.createElement(iB,{model:e}),Le.default.createElement(cR,null),Le.default.createElement(AB,{model:e}),Le.default.createElement(tS.IconButton,{onClick:()=>{e.queueDialog(n=>[aR,{onClose:n}])}},Le.default.createElement(Lh,null)))});nS=sR});var Pr,iS,lR,aS,sS=g(()=>{Pr=f(M(),1),iS=f(H(),1);UA();Gs();lR=(0,iS.observer)(function({model:e}){let[t,r]=(0,Pr.useState)(!1),{minimapHeight:n}=e,{unit:o,s:i,w:a,polygonHeight:s,polygonPoints:c}=vs(e),l="rgba(66, 119, 127, 0.3)",{startDrag:A}=En("x",(0,Pr.useCallback)((u,m)=>{e.setScrollX(m-u/o)},[e,o]));return Pr.default.createElement("div",{style:{position:"relative",height:n,width:"100%"}},Pr.default.createElement("div",{style:{height:12,boxSizing:"border-box",border:"1px solid #555"}}),Pr.default.createElement("div",{style:{position:"absolute",top:0,left:Math.max(0,i),background:t?"rgba(66,119,127,0.6)":l,cursor:"pointer",height:12,width:a,zIndex:100},onMouseOver:()=>{r(!0)},onMouseOut:()=>{r(!1)},onMouseDown:u=>{A(u,e.scrollX)}}),Pr.default.createElement("svg",{height:s,style:{width:"100%"}},Pr.default.createElement("polygon",{fill:l,points:c})))}),aS=lR});function mm(){return vl.default.createElement("div",{style:{position:"absolute",left:"50%",top:"50%"}},vl.default.createElement(Ml.CircularProgress,null),vl.default.createElement(Ml.Typography,null,"Loading..."))}var vl,Ml,cS=g(()=>{vl=f(M(),1),Ml=f(P(),1)});function _l(e){let t=(0,AS.useTheme)(),r=(0,lS.useMemo)(()=>oa(e,t),[e,t]);return{theme:t,contrastScheme:r}}var lS,AS,pm=g(()=>{lS=f(M(),1),AS=f(P(),1);Cn()});function uS(e,t,r,n,o,i){let{left:a,top:s}=t.getBoundingClientRect();return{col:Math.floor((e.clientX-a+r)/o),row:Math.floor((e.clientY-s+n)/i)}}var pr,fS,dS,mS,AR,pS,gS=g(()=>{pr=f(M(),1),fS=f(Te(),1),dS=f(Ar(),1),mS=f(H(),1);jA();tu();pm();AR=(0,mS.observer)(function({model:e,offsetX:t,offsetY:r}){let{colWidth:n,rowHeight:o,scrollY:i,scrollX:a,colorScheme:s,blockSize:c,mouseClickCol:l,mouseClickRow:A,highResScaleFactor:u}=e,{theme:m,contrastScheme:d}=_l(s),p=(0,pr.useRef)(null);(0,pr.useEffect)(()=>{let C=p.current?.getContext("2d");if(C)return(0,dS.autorun)(()=>{C.resetTransform(),C.clearRect(0,0,c*u,c*u),e.actuallyShowDomains&&_s({ctx:C,offsetX:t,offsetY:r,model:e}),Ls({ctx:C,theme:m,offsetX:t,offsetY:r,contrastScheme:d,model:e})})},[e,t,r,m,c,u,d]);let[E,x]=(0,pr.useState)(),{hoveredInsertion:I}=e;return pr.default.createElement(pr.default.Fragment,null,pr.default.createElement("canvas",{ref:p,onMouseMove:C=>{if(p.current){let{col:w,row:y}=uS(C,p.current,t,r,n,o);w>=0&&w<e.numColumns&&y>=0&&y<e.numRows?e.setMousePos(w,y):e.setMousePos(void 0,void 0),x(e.hoveredInsertion?{x:C.clientX,y:C.clientY}:void 0)}},onClick:C=>{if(p.current){let{col:w,row:y}=uS(C,p.current,t,r,n,o);w===l&&y===A?e.setMouseClickPos(void 0,void 0):e.setMouseClickPos(w,y)}},onMouseLeave:()=>{e.setMousePos(),x(void 0)},width:c*u,height:c*u,style:{position:"absolute",top:i+r,left:a+t,width:c,height:c}}),I&&E?pr.default.createElement(fS.BaseTooltip,{clientPoint:{x:E.x,y:E.y+15}},"Insertion (",I.letters.length,e.sequenceType==="amino"?"aa":"bp","):"," ",I.letters.length>20?`${I.letters.slice(0,20)}...`:I.letters):null)}),pS=AR});var Or,hS,uR,CS,ES=g(()=>{Or=f(M(),1),hS=f(H(),1);cS();gS();Hs();uR=(0,hS.observer)(function({model:e}){let{MSA:t,verticalScrollbarWidth:r,msaFilehandle:n,height:o,msaAreaWidth:i,blocks2d:a,scrollZoom:s}=e,c=(0,Or.useRef)(null),l=(0,Or.useCallback)(p=>{e.doScrollX(p)},[e]),A=(0,Or.useCallback)(p=>{e.doScrollY(p)},[e]),u=(0,Or.useCallback)((p,E,x)=>{e.zoomToPos(p,E,x)},[e]),{onMouseDown:m,onMouseUp:d}=Wo({ref:c,onScrollX:l,onScrollY:A,onZoom:u,scrollZoom:s});return Or.default.createElement("div",{ref:c,onMouseDown:m,onMouseUp:d,onMouseLeave:p=>{p.preventDefault()},style:{position:"relative",height:o,width:i-r,overflow:"hidden"}},!t&&!n?null:t?a.map(([p,E])=>Or.default.createElement(pS,{key:`${p}_${E}`,model:e,offsetX:p,offsetY:E})):Or.default.createElement(mm,null))}),CS=uR});function xS({ctx:e,model:t}){let{mouseCol:r,colWidth:n,msaAreaWidth:o,verticalScrollbarWidth:i,height:a,rowHeight:s,scrollX:c,scrollY:l,mouseRow:A,mouseClickRow:u,mouseClickCol:m,relativeTo:d,hoveredTreeNode:p,highlightedColumns:E,highResScaleFactor:x}=t,I=o-i;if(e.resetTransform(),e.clearRect(0,0,I*x,a*x),e.scale(x,x),d){let C=t.rowNamesSet.get(d);C!==void 0&&(e.fillStyle=fR,e.fillRect(0,C*s+l,I,s))}if(p){e.fillStyle=dR;for(let C of p.descendantNames){let w=t.rowNamesSet.get(C);w!==void 0&&e.fillRect(0,w*s+l,I,s)}}if(E?.length){e.fillStyle=gm;for(let C of E)e.fillRect(C*n+c,0,n,a)}r!==void 0&&(e.fillStyle=IS,e.fillRect(r*n+c,0,n,a)),A!==void 0&&(e.fillStyle=IS,e.fillRect(0,A*s+l,I,s)),m!==void 0&&(e.fillStyle=gm,e.fillRect(m*n+c,0,n,a)),u!==void 0&&(e.fillStyle=gm,e.fillRect(0,u*s+l,I,s))}var IS,gm,fR,dR,yS=g(()=>{IS="rgba(0,0,0,0.15)",gm="rgba(128,128,0,0.2)",fR="rgba(0,128,255,0.3)",dR="rgba(255,165,0,0.15)"});var Pi,wS,bS,BS,mR,SS,QS=g(()=>{Pi=f(M(),1),wS=f(Rt(),1),bS=f(Ar(),1),BS=f(H(),1);yS();mR=(0,BS.observer)(function({model:e}){let t=(0,Pi.useRef)(null),{height:r,msaAreaWidth:n,verticalScrollbarWidth:o,highResScaleFactor:i}=e,a=n-o;return(0,Pi.useEffect)(()=>{let s=t.current?.getContext("2d");return s?(0,bS.autorun)(()=>{(0,wS.isAlive)(e)&&xS({ctx:s,model:e})}):void 0},[e]),Pi.default.createElement("canvas",{ref:t,id:"mouseover",width:a*i,height:r*i,style:{position:"absolute",top:0,left:0,width:a,height:r,zIndex:1e3,pointerEvents:"none"}})}),SS=mR});var Tl,vS,pR,MS,_S=g(()=>{Tl=f(M(),1),vS=f(H(),1);ES();QS();pR=(0,vS.observer)(function({model:e}){return Tl.default.createElement("div",{style:{position:"relative"}},Tl.default.createElement(CS,{model:e}),Tl.default.createElement(SS,{model:e}))}),MS=pR});var rs,TS=g(()=>{rs=class{constructor(t=1/0,r=Float64Array,n=Uint32Array){let o=t!==1/0;this.ids=o?new n(t):[],this.values=o?new r(t):[],this.capacity=t,this.length=0}clear(){this.length=0}push(t,r){if(this.length===this.capacity)throw new RangeError("Queue is at capacity.");let n=this.length++;for(;n>0;){let o=n-1>>1,i=this.values[o];if(r>=i)break;this.ids[n]=this.ids[o],this.values[n]=i,n=o}this.ids[n]=t,this.values[n]=r}pop(){if(this.length===0)return;let t=this.ids,r=this.values,n=t[0],o=--this.length;if(o>0){let i=t[o],a=r[o],s=0,c=o>>1;for(;s<c;){let l=(s<<1)+1,A=l+1,u=l+(+(A<o)&+(r[A]<r[l]));if(r[u]>=a)break;t[s]=t[u],r[s]=r[u],s=u}t[s]=i,r[s]=a}return n}peek(){return this.length>0?this.ids[0]:void 0}peekValue(){return this.length>0?this.values[0]:void 0}shrink(){Array.isArray(this.ids)&&(this.ids.length=this.length),Array.isArray(this.values)&&(this.values.length=this.length)}}});function gR(e,t){let r=0,n=t.length-1;for(;r<n;){let o=r+n>>1;t[o]>e?n=o:r=o+1}return t[r]}function hR(e,t,r,n,o,i){let a=[n,o];for(;a.length;){let s=a.pop()||0,c=a.pop()||0;if(s-c<=i&&Math.floor(c/i)>=Math.floor(s/i))continue;let l=e[c],A=e[c+s>>1],u=e[s],m=l>A!=l>u?l:A<l!=A<u?A:u,d=c-1,p=s+1;for(;;){do d++;while(e[d]<m);do p--;while(e[p]>m);if(d>=p)break;CR(e,t,r,d,p)}a.push(c,p,p+1,s)}}function CR(e,t,r,n,o){let i=e[n];e[n]=e[o],e[o]=i;let a=4*n,s=4*o,c=t[a],l=t[a+1],A=t[a+2],u=t[a+3];t[a]=t[s],t[a+1]=t[s+1],t[a+2]=t[s+2],t[a+3]=t[s+3],t[s]=c,t[s+1]=l,t[s+2]=A,t[s+3]=u;let m=r[n];r[n]=r[o],r[o]=m}function ER(e,t){let r=e^t,n=65535^r,o=65535^(e|t),i=e&(t^65535),a=r|n>>1,s=r>>1^r,c=o^(o>>1^n&i>>1),l=i^(r&o>>1^i>>1);return r=a&a>>2^s&s>>2,n=a&s>>2^s&(a^s)>>2,o=c^(a&c>>2^s&l>>2),i=l^(s&c>>2^(a^s)&l>>2),a=r&r>>4^n&n>>4,s=r&n>>4^n&(r^n)>>4,c=o^(r&o>>4^n&i>>4),l=i^(n&o>>4^(r^n)&i>>4),o=c^(a&c>>8^s&l>>8),i=l^(s&c>>8^(a^s)&l>>8),o^=o>>1,i^=i>>1,r=e^t,n=i|65535^(r|o),r=(r|r<<8)&16711935,r=(r|r<<4)&252645135,r=(r|r<<2)&858993459,r=(r|r<<1)&1431655765,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,((n<<1|r)>>>0)-2147483648}var kS,hm,ns,DS=g(()=>{TS();kS=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],hm=3,ns=class e{static from(t,r=0){if(r%8!==0)throw new Error("byteOffset must be 8-byte aligned.");if(!t||t.byteLength===void 0||"buffer"in t)throw new Error("Data must be an instance of ArrayBuffer or SharedArrayBuffer.");let[n,o]=new Uint8Array(t,r+0,2);if(n!==251)throw new Error("Data does not appear to be in a Flatbush format.");let i=o>>4;if(i!==hm)throw new Error(`Got v${i} data when expected v${hm}.`);let a=kS[o&15];if(!a)throw new Error("Unrecognized array type.");let[s]=new Uint16Array(t,r+2,1),[c]=new Uint32Array(t,r+4,1);return new e(c,s,a,void 0,t,r)}constructor(t,r=16,n=Float64Array,o=ArrayBuffer,i,a=0){if(t===void 0)throw new Error("Missing required argument: numItems.");if(isNaN(t)||t<=0)throw new Error(`Unexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+r,2),65535),this.byteOffset=a;let s=t,c=s;this._levelBounds=[s*4];do s=Math.ceil(s/this.nodeSize),c+=s,this._levelBounds.push(c*4);while(s!==1);this.ArrayType=n,this.IndexArrayType=c<16384?Uint16Array:Uint32Array;let l=kS.indexOf(n),A=c*4*n.BYTES_PER_ELEMENT;if(l<0)throw new Error(`Unexpected typed array class: ${n}.`);let u=n,m=this.IndexArrayType;if(i)this.data=i,this._boxes=new u(i,a+8,c*4),this._indices=new m(i,a+8+A,c),this._pos=c*4,this.minX=this._boxes[this._pos-4],this.minY=this._boxes[this._pos-3],this.maxX=this._boxes[this._pos-2],this.maxY=this._boxes[this._pos-1];else{let d=this.data=new o(8+A+c*this.IndexArrayType.BYTES_PER_ELEMENT);this._boxes=new u(d,8,c*4),this._indices=new m(d,8+A,c),this._pos=0,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,new Uint8Array(d,0,2).set([251,(hm<<4)+l]),new Uint16Array(d,2,1)[0]=r,new Uint32Array(d,4,1)[0]=t}this._queue=new rs}add(t,r,n=t,o=r){let i=this._pos,a=i>>2,s=this._boxes;return this._indices[a]=a,s[i]=t,s[i+1]=r,s[i+2]=n,s[i+3]=o,this._pos=i+4,t<this.minX&&(this.minX=t),r<this.minY&&(this.minY=r),n>this.maxX&&(this.maxX=n),o>this.maxY&&(this.maxY=o),a}finish(){if(this._pos>>2!==this.numItems)throw new Error(`Added ${this._pos>>2} items when expected ${this.numItems}.`);let t=this._boxes;if(this.numItems<=this.nodeSize){t[this._pos++]=this.minX,t[this._pos++]=this.minY,t[this._pos++]=this.maxX,t[this._pos++]=this.maxY;return}let{numItems:r,minX:n,minY:o,nodeSize:i,_indices:a,_levelBounds:s}=this,c=this.maxX-n||1,l=this.maxY-o||1,A=new Int32Array(r),u=65535,m=u/c,d=u/l;for(let E=0,x=0;E<r;E++){let I=t[x++],C=t[x++],w=t[x++],y=t[x++],b=m*((I+w)/2-n)|0,Q=d*((C+y)/2-o)|0;A[E]=ER(b,Q)}hR(A,t,a,0,r-1,i);let p=r*4;for(let E=0,x=0;E<s.length-1;E++){let I=s[E];for(;x<I;){let C=x,w=t[x++],y=t[x++],b=t[x++],Q=t[x++];for(let S=1;S<i&&x<I;S++)w=Math.min(w,t[x++]),y=Math.min(y,t[x++]),b=Math.max(b,t[x++]),Q=Math.max(Q,t[x++]);a[p>>2]=C,t[p++]=w,t[p++]=y,t[p++]=b,t[p++]=Q}}this._pos=p}search(t,r,n,o,i){if(this._pos!==this._boxes.length)throw new Error("Data not yet indexed - call index.finish().");let{_boxes:a,_levelBounds:s,_indices:c,nodeSize:l}=this,A=this.numItems*4,u=a.length-4,m=s.length-1,d=[],p=[],E=!1;for(;u!==void 0;){let x=Math.min(u+l*4,s[m]),I=u>=A;if(E)this._collectContained(u,x,m,A,p,i);else for(let C=u;C<x;C+=4){let w=a[C];if(n<w)continue;let y=a[C+1];if(o<y)continue;let b=a[C+2];if(t>b)continue;let Q=a[C+3];if(r>Q)continue;let S=c[C>>2]|0;if(I){let k=+(t<=w&&r<=y&&n>=b&&o>=Q);d.push(S|k,m-1)}else(i===void 0||i(S,w,y,b,Q))&&p.push(S)}m=d.pop(),u=d.pop(),u!==void 0&&(E=(u&1)===1,u&=-2)}return p}_collectContained(t,r,n,o,i,a){let s=this._boxes,c=this._indices,l=t;for(let u=n;u>0;u--)l=c[l>>2];let A=Math.min(l+(r-t)*this.nodeSize**n,o);if(a===void 0)for(;l<A;l+=4)i.push(c[l>>2]|0);else for(;l<A;l+=4){let u=c[l>>2]|0;a(u,s[l],s[l+1],s[l+2],s[l+3])&&i.push(u)}}neighbors(t,r,n=1/0,o=1/0,i){if(this._pos!==this._boxes.length)throw new Error("Data not yet indexed - call index.finish().");let{_boxes:a,_levelBounds:s,_indices:c,_queue:l,nodeSize:A}=this,u=this.numItems*4,m=A*4,d=[],p=o*o,E=n===1,x=p;for(l.push(a.length-4<<1,0);l.length;){let I=l.ids[0];if(I&1){if(l.pop(),d.push(I>>1),d.length===n)break;continue}l.pop();let C=I>>1,w=C<u,y=Math.min(C+m,gR(C,s));for(let b=C;b<y;b+=4){let Q=a[b],S=a[b+1],k=a[b+2],T=a[b+3],_=Math.max(Math.max(Q-t,t-k),0),v=Math.max(Math.max(S-r,r-T),0),L=_*_+v*v;if(L>x)continue;let U=c[b>>2]|0;w?(i===void 0||i(U))&&(l.push(U<<1|1,L),E&&L<x&&(x=L)):l.push(U<<1,L)}}return l.clear(),d}}});var os,Oi,NS,IR,LS,RS=g(()=>{os=f(M(),1),Oi=f(P(),1),NS=f(H(),1),IR=(0,NS.observer)(function({node:e,model:t,onClose:r}){return os.default.createElement(Oi.Menu,{anchorReference:"anchorPosition",anchorPosition:{left:e.x,top:e.y},transitionDuration:0,keepMounted:!0,open:!!e,onClose:r},os.default.createElement(Oi.MenuItem,{dense:!0,disabled:!0},e.name),os.default.createElement(Oi.MenuItem,{dense:!0,onClick:()=>{t.toggleCollapsed(e.id),r()}},t.collapsed.includes(e.id)?"Expand this node":"Collapse this node"),os.default.createElement(Oi.MenuItem,{dense:!0,onClick:()=>{t.showOnly===e.id?t.setShowOnly(void 0):t.setShowOnly(e.id),r()}},t.showOnly===e.id?"Disable show only this node":"Show only this node"))}),LS=IR});var GS={};tt(GS,{default:()=>yR});var Gr,FS,PS,OS,xR,yR,US=g(()=>{Gr=f(M(),1);gl();am();FS=f(Te(),1),PS=f(P(),1),OS=f(H(),1);sm();xR=(0,OS.observer)(function({info:e,model:t,nodeName:r,onClose:n}){let{treeMetadata:o,rows:i}=t,a=o[r],s=i.find(c=>c[0]===r);return Gr.default.createElement(FS.Dialog,{onClose:()=>{n()},open:!0,title:"Tree node info",maxWidth:"xl"},Gr.default.createElement(PS.DialogContent,null,Gr.default.createElement(Eo,{title:"Attributes"},Gr.default.createElement(Fr,{attributes:{nodeName:r,...e}})),Gr.default.createElement(Eo,{title:"Sequence"},s?Gr.default.createElement(Xa,{str:[s]}):Gr.default.createElement("div",null,"Sequence not found")),a?Gr.default.createElement(Eo,{title:"Extra metadata"},Gr.default.createElement(Fr,{attributes:a})):null))}),yR=xR});var An,Pn,HS,wR,bR,jS,JS=g(()=>{An=f(M(),1),Pn=f(P(),1),HS=f(H(),1),wR=(0,An.lazy)(()=>Promise.resolve().then(()=>(US(),GS))),bR=(0,HS.observer)(function({node:e,onClose:t,model:r}){let{collapsed:n}=r,{name:o,id:i}=e,a=n.includes(i);return An.default.createElement(Pn.Menu,{anchorReference:"anchorPosition",anchorPosition:{top:e.y,left:e.x},transitionDuration:0,keepMounted:!0,open:!!e,onClose:t},An.default.createElement(Pn.MenuItem,{dense:!0,disabled:!0},o),An.default.createElement(Pn.MenuItem,{dense:!0,onClick:()=>{r.queueDialog(s=>[wR,{info:r.getRowData(o),model:r,nodeName:o,onClose:s}]),t()}},"More info..."),An.default.createElement(Pn.MenuItem,{dense:!0,onClick:()=>{r.toggleCollapsed(i),t()}},a?"Expand subtree":"Collapse subtree"),An.default.createElement(Pn.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(e.name),t()}},"Indicate differences from this row"),r.relativeTo?An.default.createElement(Pn.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(void 0),t()}},"Clear reference row"):null)}),jS=bR});var Ue,qS,VS,YS,WS,BR,Cm,SR,zS,$S=g(()=>{Ue=f(M(),1),qS=f(P(),1);DS();VS=f(Ar(),1),YS=f(H(),1),WS=f(_e(),1);RS();JS();Os();BR=(0,WS.makeStyles)()(e=>({tooltip:{position:"fixed",pointerEvents:"none",zIndex:1e4,backgroundColor:e.palette.grey[700],color:e.palette.common.white,padding:"4px 8px",borderRadius:4,fontSize:12,whiteSpace:"nowrap",maxWidth:300,overflow:"hidden",textOverflow:"ellipsis"}})),Cm=class{flatbush=null;entries=[];clear(){this.flatbush=null,this.entries=[]}insert(t){this.entries.push(t)}finish(){if(this.entries.length===0)this.flatbush=null;else{this.flatbush=new ns(this.entries.length);for(let t of this.entries)this.flatbush.add(t.minX,t.minY,t.maxX,t.maxY);this.flatbush.finish()}}search(t){return this.flatbush?.search(t.minX,t.minY,t.maxX,t.maxY).map(r=>this.entries[r])??[]}},SR=(0,YS.observer)(function({model:e,offsetY:t}){let{classes:r}=BR(),n=(0,qS.useTheme)(),o=(0,Ue.useRef)(null),i=(0,Ue.useRef)(new Cm),a=(0,Ue.useRef)(null),[s,c]=(0,Ue.useState)(),[l,A]=(0,Ue.useState)(),[u,m]=(0,Ue.useState)(),[d,p]=(0,Ue.useState)(),{scrollY:E,treeAreaWidth:x,blockSize:I,highResScaleFactor:C}=e,w=x+qo,y=I,b=w*C,Q=y*C;(0,Ue.useEffect)(()=>{let _=o.current?.getContext("2d");if(_)return(0,VS.autorun)(()=>{_.resetTransform(),_.clearRect(0,0,(x+qo)*C,I*C),Ps({ctx:_,model:e,offsetY:t,clickMap:i.current,theme:n})})},[e,I,C,x,t,n]),(0,Ue.useEffect)(()=>{let _=a.current?.getContext("2d");if(_&&(_.resetTransform(),_.clearRect(0,0,x+qo,I),_.translate(0,-t),u)){let{minX:v,maxX:L,minY:U,maxY:Y}=u;_.fillStyle="rgba(0,0,0,0.1)",_.fillRect(v,U,L-v,Y-U)}},[u,t,I,x]);function S(_){let v=_.nativeEvent.offsetX,L=_.nativeEvent.offsetY,[U]=i.current.search({minX:v,maxX:v+1,minY:L+t,maxY:L+1+t});return U?.branch?{...U,x:_.clientX,y:_.clientY}:void 0}function k(_){let v=_.nativeEvent.offsetX,L=_.nativeEvent.offsetY,[U]=i.current.search({minX:v,maxX:v+1,minY:L+t,maxY:L+1+t});return U&&!U.branch?{...U,x:_.clientX,y:_.clientY}:void 0}let T={width:w,height:y,top:E+t,left:0,position:"absolute"};return Ue.default.createElement(Ue.default.Fragment,null,s?.id?Ue.default.createElement(LS,{node:s,model:e,onClose:()=>{c(void 0)}}):null,l?.id?Ue.default.createElement(jS,{node:l,model:e,onClose:()=>{A(void 0)}}):null,Ue.default.createElement("canvas",{width:b,height:Q,style:T,onMouseMove:_=>{if(!o.current)return;let v=k(_),L=S(_),U=v||L;if(o.current.style.cursor=U?"pointer":"default",m(v),p(U?{name:U.name,x:_.clientX,y:_.clientY}:void 0),U){if(e.setHoveredTreeNode(U.id),v?.name){let Y=e.rowNamesSet.get(v.name);Y!==void 0&&e.setMousePos(void 0,Y)}}else e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},onClick:_=>{let{clientX:v,clientY:L}=_,U=S(_);U?.id&&c({x:v,y:L,id:U.id,name:U.name});let Y=k(_);Y?.id&&A({...Y,x:v,y:L})},onMouseLeave:()=>{m(void 0),p(void 0),e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},ref:o}),Ue.default.createElement("canvas",{style:{...T,pointerEvents:"none",zIndex:100},width:w,height:y,ref:a}),d?Ue.default.createElement("div",{className:r.tooltip,style:{left:d.x+12,top:d.y+12}},d.name):null)}),zS=SR});var gr,XS,ZS,e1,QR,KS,vR,t1,r1=g(()=>{gr=f(M(),1),XS=f(Rt(),1),ZS=f(Ar(),1),e1=f(H(),1);$S();Os();Hs();QR="rgba(0,128,255,0.3)",KS="rgba(255,165,0,0.2)",vR=(0,e1.observer)(function({model:e}){let t=(0,gr.useRef)(null),r=(0,gr.useRef)(null),{treeWidth:n,height:o,blocksY:i,treeAreaWidth:a}=e,s=(0,gr.useCallback)(A=>{e.doScrollY(A)},[e]),{onMouseDown:c,onMouseUp:l}=Wo({ref:t,onScrollY:s});return(0,gr.useEffect)(()=>{let A=r.current?.getContext("2d");return A?(0,ZS.autorun)(()=>{if((0,XS.isAlive)(e)){let{relativeTo:u,leaves:m,rowHeight:d,hoveredTreeNode:p,treeAreaWidth:E,height:x,scrollY:I,mouseOverRowName:C}=e;A.resetTransform(),A.clearRect(0,0,E,x);let w=new Map(m.map(b=>[b.data.name,b])),y=b=>{let Q=w.get(b);Q&&A.fillRect(0,Q.x+I-d/2,E,d)};if(u&&(A.fillStyle=QR,y(u)),p){A.fillStyle=KS;for(let b of p.descendantNames)y(b)}C&&C!==u&&!p?.descendantNames.includes(C)&&(A.fillStyle=KS,y(C))}}):void 0},[e]),gr.default.createElement("div",{ref:t,onMouseDown:c,onMouseUp:l,onMouseLeave:A=>{A.preventDefault()},style:{height:o,position:"relative",width:n+qo}},i.map(A=>gr.default.createElement(zS,{key:A,model:e,offsetY:A})),gr.default.createElement("canvas",{ref:r,width:a,height:o,style:{position:"absolute",top:0,left:0,width:a,height:o,zIndex:1e3,pointerEvents:"none"}}))}),t1=vR});var Em,n1,MR,o1,i1=g(()=>{Em=f(M(),1),n1=f(H(),1);r1();MR=(0,n1.observer)(function({model:e}){let{treeAreaWidth:t}=e;return Em.default.createElement("div",{style:{overflow:"hidden",flexShrink:0,width:t}},Em.default.createElement(t1,{model:e}))}),o1=MR});var a1,s1,_R,c1,l1=g(()=>{a1=f(M(),1),s1=f(H(),1),_R=(0,s1.observer)(({model:e})=>{let{treeAreaWidth:t}=e;return a1.default.createElement("div",{style:{flexShrink:0,width:t}})}),c1=_R});var ee,xo,TR,kR,DR,NR,LR,RR,A1,u1=g(()=>{ee=f(M(),1),xo=f(H(),1);Ah();pu();vh();kh();oS();sS();_S();i1();l1();TR=(0,xo.observer)(function({model:e}){let{showHorizontalScrollbar:t}=e;return ee.default.createElement("div",{style:{display:"flex"}},ee.default.createElement(c1,{model:e}),t?ee.default.createElement(aS,{model:e}):null)}),kR=(0,xo.observer)(function({model:e}){let{mouseCol:t,mouseClickCol:r,colWidth:n,scrollX:o,treeAreaWidth:i,resizeHandleWidth:a,totalTrackAreaHeight:s,msaAreaWidth:c,verticalScrollbarWidth:l}=e,A=i+a,u=c-l;return ee.default.createElement("div",{style:{position:"absolute",left:A,top:0,width:u,height:s,overflow:"hidden",pointerEvents:"none"}},t!==void 0?ee.default.createElement("div",{style:{position:"absolute",left:t*n+o,top:0,width:n,height:s,backgroundColor:"rgba(0,0,0,0.15)",zIndex:100}}):null,r!==void 0?ee.default.createElement("div",{style:{position:"absolute",left:r*n+o,top:0,width:n,height:s,backgroundColor:"rgba(128,128,0,0.2)",zIndex:100}}):null)}),DR=(0,xo.observer)(function({model:e}){let{turnedOnTracks:t}=e;return t.length===0?null:ee.default.createElement("div",{style:{position:"relative"}},ee.default.createElement(kR,{model:e}),t.map(r=>ee.default.createElement(Qh,{key:r.model.id,model:e,track:r})))}),NR=(0,xo.observer)(function({model:e}){let{showVerticalScrollbar:t}=e;return ee.default.createElement("div",{style:{display:"flex"}},ee.default.createElement(o1,{model:e}),ee.default.createElement(uh,{model:e}),ee.default.createElement(MS,{model:e}),t?ee.default.createElement(Th,{model:e}):null)}),LR=(0,xo.observer)(function({model:e}){return ee.default.createElement("div",{style:{position:"relative"}},ee.default.createElement(TR,{model:e}),ee.default.createElement(DR,{model:e}),ee.default.createElement(NR,{model:e}))}),RR=(0,xo.observer)(function({model:e}){let{height:t,viewInitialized:r,DialogComponent:n,DialogProps:o}=e,i=lh();return(0,ee.useEffect)(()=>{e.setHighResScaleFactor(i)},[e,i]),ee.default.createElement("div",null,r?ee.default.createElement(ee.default.Fragment,null,ee.default.createElement("div",{style:{height:t,overflow:"hidden"}},ee.default.createElement(nS,{model:e}),ee.default.createElement(LR,{model:e})),ee.default.createElement(fh,{model:e}),n?ee.default.createElement(ee.Suspense,{fallback:null},ee.default.createElement(n,{...o})):null):null)}),A1=RR});var f1,d1,m1,p1=g(()=>{f1=`CLUSTAL O(1.2.3) multiple sequence alignment
41
41
  UniProt/Swiss-Prot|P26898|IL2RA_SHEEP MEPSLLMWRFFVFIVVPGCVTEACHDDPPSLRNA----------MFKVLRYE----VGTM
42
42
  UniProt/Swiss-Prot|P01590|IL2RA_MOUSE MEPRLLMLGFLSLTIVPSCRAELCLYDPPEVPNA----------TFKALSYK----NGTI
43
43
  UniProt/Swiss-Prot|P41690|IL2RA_FELCA MEPSLLLWGILTFVVVHGHVTELCDENPPDIQHA----------TFKALTYK----TGTM
@@ -50,7 +50,7 @@ UniProt/Swiss-Prot|Q8BZM1|GLMN_MOUSE PLPLRSLLFLQLPLLGVGLNP----------------
50
50
  UniProt/Swiss-Prot|P36835|IL2_CAPHI -----------LLGVGLNPKFLTP------------------------------------
51
51
  UniProt/Swiss-Prot|Q7JFM4|IL2_AOTVO MLKPPLPLRSLLFLQLPLLGVGLNPKFLTPSGNEDIGGKPGTGGDFFLTSTPAGTLDVST
52
52
  UniProt/Swiss-Prot|Q29416|IL2_CANFA --------------LFLQLSLLG-------------------------------------
53
- `,yS=`CLUSTAL O(1.2.4) multiple sequence alignment
53
+ `,d1=`CLUSTAL O(1.2.4) multiple sequence alignment
54
54
 
55
55
 
56
56
  sp|P69905|HBA_HUMAN MVLSPADKTNVKAAWGKVGAHAGEYGAEALERMFLSFPTTKTYFPHFDLSHGSAQVKGHG 60
@@ -66,14 +66,14 @@ sp|P13786|HBAZ_CAPHI SKVVAAVGDAVKSIDNVTSALSKLSELHAYVLRVDPVNFKFLSHCLLVTLASHF
66
66
  sp|P69905|HBA_HUMAN AVHASLDKFLASVSTVLTSKYR 142
67
67
  sp|P01942|HBA_MOUSE AVHASLDKFLASVSTVLTSKYR 142
68
68
  sp|P13786|HBAZ_CAPHI DAHAAWDKFLSIVSGVLTEKYR 142
69
- .**: ****: ** ***.***`,bS="(((UniProt/Swiss-Prot|P26898|IL2RA_SHEEP:0.24036,(UniProt/Swiss-Prot|P41690|IL2RA_FELCA:0.17737,(UniProt/Swiss-Prot|P01589|IL2RA_HUMAN:0.03906,UniProt/Swiss-Prot|Q5MNY4|IL2RA_MACMU:0.03787):0.13033):0.04964):0.02189,UniProt/Swiss-Prot|P01590|IL2RA_MOUSE:0.23072):0.06814,(((UniProt/Swiss-Prot|Q95118|IL2RG_BOVIN:0.09600,UniProt/Swiss-Prot|P40321|IL2RG_CANFA:0.09845):0.25333,UniProt/Swiss-Prot|Q29416|IL2_CANFA:-0.35055):0.10231,(UniProt/Swiss-Prot|P26896|IL2RB_RAT:0.33631,UniProt/Swiss-Prot|Q7JFM4|IL2_AOTVO:-0.33631):0.10166):0.01607,(UniProt/Swiss-Prot|Q8BZM1|GLMN_MOUSE:0.32378,UniProt/Swiss-Prot|P36835|IL2_CAPHI:-0.32378):0.09999)"});async function Pl(e,t,r,n){e.setError(void 0),t&&e.setMSAFilehandle(t),r&&e.setTreeFilehandle(r),n&&e.setGFFFilehandle(n)}var vm=h(()=>{});function jr({onClick:e,model:t,children:r}){return Tt.default.createElement("li",null,Tt.default.createElement(Ol.Link,{onClick:n=>{t.setError(void 0),n.preventDefault(),e()},href:"#"},Tt.default.createElement(Ol.Typography,{component:"span"},r)))}var Tt,Ol,SS,Un,tF,QS,vS=h(()=>{Tt=f(v(),1),Ol=f(F(),1),SS=f(H(),1);BS();vm();Un="https://jbrowse.org/genomes/multiple_sequence_alignments",tF=(0,SS.observer)(function({model:e}){function t({msa:r,tree:n,gff:o}){(async()=>{try{await Pl(e,r?{uri:r,locationType:"UriLocation"}:void 0,n?{uri:n,locationType:"UriLocation"}:void 0,o?{uri:o,locationType:"UriLocation"}:void 0)}catch(i){console.error(i),e.setError(i)}})()}return Tt.default.createElement("ul",null,Tt.default.createElement(jr,{model:e,onClick:()=>{t({tree:"https://jbrowse.org/genomes/newicktrees/sarscov2phylo.pub.ft.nh"})}},"230k COVID-19 samples (tree only)"),Tt.default.createElement(jr,{model:e,onClick:()=>{e.setData({msa:wS,tree:bS})}},"Small protein MSA+tree"),Tt.default.createElement(jr,{model:e,onClick:()=>{e.setData({msa:yS})}},"Small MSA only"),Tt.default.createElement(jr,{model:e,onClick:()=>{t({msa:`${Un}/pfam-cov2.stock`})}},"PFAM SARS-CoV2 multi-stockholm"),Tt.default.createElement(jr,{model:e,onClick:()=>{t({msa:`${Un}/pfam-cov2.stock`,gff:`${Un}/pfam-cov2-domains.gff`})}},"PFAM SARS-CoV2 multi-stockholm w/ domains loaded"),Tt.default.createElement(jr,{model:e,onClick:()=>{t({msa:`${Un}/Lysine.stock`})}},"Lysine stockholm file"),Tt.default.createElement(jr,{model:e,onClick:()=>{t({msa:`${Un}/PF01601_full.txt`})}},"PF01601 stockholm file (SARS-CoV2 spike protein)"),Tt.default.createElement(jr,{model:e,onClick:()=>{t({msa:`${Un}/europe_covid.fa`})}},"Europe COVID full genomes (LR883044.1 and 199 other sequences)"),Tt.default.createElement(jr,{model:e,onClick:()=>{t({msa:`${Un}/rhv_test-only.aligned_with_mafft_auto.fa`,tree:`${Un}/rhv_test-only.aligned_with_mafft_auto.nh`})}},"MAFFT+VeryFastTree(17.9k samples)"),Tt.default.createElement(jr,{model:e,onClick:()=>{t({msa:"https://jbrowse.org/demos/ttc39a.mfa"})}},"Human BLAST results mfa"))}),QS=tF});var ge,ji,Er,MS,rF,_S,TS=h(()=>{ge=f(v(),1),ji=f(Me(),1),Er=f(F(),1),MS=f(H(),1);vS();vm();rF=(0,MS.observer)(function({model:e}){let[t,r]=(0,ge.useState)(),[n,o]=(0,ge.useState)(),[i,a]=(0,ge.useState)(),{error:s}=e;return ge.default.createElement(Er.Container,null,ge.default.createElement("div",{style:{width:"50%"}},s?ge.default.createElement(ji.ErrorMessage,{error:s}):null,ge.default.createElement(Er.Typography,null,"Open an MSA file (stockholm or clustal format) and/or a tree file (newick format)."),ge.default.createElement(Er.Typography,{color:"error"},"Note: you can open up just an MSA or just a tree, both are not required. Some MSA files e.g. stockholm format have an embedded tree also and this is fine, and opening a separate tree file is not required.")),ge.default.createElement("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",gap:40}},ge.default.createElement("div",null,ge.default.createElement("div",null,ge.default.createElement(Er.Typography,null,"MSA file or URL"),ge.default.createElement(ji.FileSelector,{location:t,setLocation:r})),ge.default.createElement("div",null,ge.default.createElement(Er.Typography,null,"Tree file or URL"),ge.default.createElement(ji.FileSelector,{location:n,setLocation:o})),ge.default.createElement("div",null,ge.default.createElement(Er.Typography,null,"InterProScan GFF file or URL (optional)"),ge.default.createElement(ji.FileSelector,{location:i,setLocation:a}))),ge.default.createElement("div",null,ge.default.createElement(Er.Button,{onClick:()=>{(async()=>{try{await Pl(e,t,n,i)}catch(c){console.error(c),e.setError(c)}})()},variant:"contained",color:"primary",disabled:!t&&!n},"Open")),ge.default.createElement("div",null,ge.default.createElement(Er.Typography,null,"Examples"),ge.default.createElement(QS,{model:e}))))}),_S=rF});var rt,DS,ls,Gl,kS,nF,oF,Ul,Mm=h(()=>{rt=f(v(),1),DS=f(Me(),1);Iu();ls=f(F(),1),Gl=f(H(),1);xS();TS();kS=(0,Gl.observer)(function({model:e}){let{status:t}=e;return rt.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:12,padding:20}},rt.default.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},rt.default.createElement("style",null,"@keyframes spinner { to { transform: rotate(360deg); } }"),rt.default.createElement("circle",{cx:"12",cy:"12",r:"10",stroke:"#ccc",strokeWidth:"3",fill:"none"}),rt.default.createElement("path",{d:"M12 2a10 10 0 0 1 10 10",stroke:"#1976d2",strokeWidth:"3",fill:"none",strokeLinecap:"round",style:{animation:"spinner 1s linear infinite",transformOrigin:"center"}})),rt.default.createElement(ls.Typography,{variant:"h6"},t?.msg??"Loading..."),t?.onCancel?rt.default.createElement(ls.Button,{variant:"outlined",size:"small",onClick:()=>t.onCancel?.()},"Cancel"):null)}),nF=(0,Gl.observer)(function({model:e,error:t}){return rt.default.createElement("div",null,rt.default.createElement(DS.ErrorMessage,{error:t}),rt.default.createElement(ls.Button,{variant:"contained",color:"primary",onClick:()=>{e.reset()}},"Return to import form"))}),oF=(0,Gl.observer)(function({model:e}){let{isLoading:t,dataInitialized:r,msaFilehandle:n,treeFilehandle:o}=e,i=!!(n||o);return rt.default.createElement("div",null,rt.default.createElement(zo,{FallbackComponent:a=>rt.default.createElement(nF,{model:e,error:a.error})},r?t?rt.default.createElement(kS,{model:e}):rt.default.createElement(IS,{model:e}):i||t?rt.default.createElement(kS,{model:e}):rt.default.createElement(_S,{model:e})))}),Ul=oF});var LS=j((vJ,NS)=>{NS.exports=JBrowseExports["@jbrowse/core/ui/theme"]});var _m=j((MJ,RS)=>{RS.exports=JBrowseExports["@jbrowse/core/util/io"]});var PS=j((_J,FS)=>{FS.exports=JBrowseExports["@jbrowse/core/util/types/mst"]});function Tm({mapSize:e,blockSize:t,viewportPos:r,viewportSize:n}){let o=Math.max(0,Math.min(r,e-n)),i=Math.floor(o/t),a=Math.floor((o+n-1)/t),s=[];for(let c=i;c<=a;c++)s.push(c*t);return s}var OS=h(()=>{});function qS(e,t){let{W:r=0,L:n=0,V:o=0,I:i=0,M:a=0,A:s=0,F:c=0,C:l=0,H:A=0,P:u=0,R:m=0,K:d=0,Q:g=0,E=0,D:x=0,T:I=0,S:p=0,G:w=0,Y:y=0,N:b=0}=e,Q=r+n+o+i+a+s+c+l+A+u+y,S=d+m,k=g+E,T=E+x,_=I+p,M=U=>U/t,L={};return M(Q)>.6&&(L.W=Hn,L.L=Hn,L.V=Hn,L.A=Hn,L.I=Hn,L.M=Hn,L.F=Hn,L.C=Hn),(M(S)>.6||M(d)>.8||M(m)>.8||M(g)>.8)&&(L.K=GS,L.R=GS),(M(S)>.6||M(k)>.5||M(E)>.8||M(g)>.8||M(x)>.8)&&(L.E=iF),(M(S)>.6||M(T)>.5||M(d)>.8||M(m)>.8||M(g)>.8)&&(L.D=aF),(M(b)>.5||M(y)>.85)&&(L.N=US),(M(S)>.6||M(k)>.6||M(g)>.85||M(E)>.85||M(d)>.85||M(m)>.85)&&(L.Q=US),(M(Q)>.6||M(_)>.5||M(p)>.85||M(I)>.85)&&(L.S=HS,L.T=HS),M(l)>.85&&(L.C=sF),w>0&&(L.G=cF),u>0&&(L.P=lF),(M(Q)>.6||M(r)>.85||M(y)>.85||M(s)>.85||M(l)>.85||M(u)>.85||M(g)>.85||M(c)>.85||M(A)>.85||M(i)>.85||M(n)>.85||M(a)>.85||M(o)>.85)&&(L.H=jS,L.Y=jS),L}var Hn,GS,iF,aF,US,HS,sF,cF,lF,jS,JS=h(()=>{Hn="rgb(128,179,230)",GS="#d88",iF="rgb(192, 72, 192)",aF="rgb(204, 77, 204)",US="#8f8",HS="rgb(26,204,26)",sF="rgb(240, 128, 128)",cF="rgb(240, 144, 72)",lF="rgb(204, 204, 0)",jS="rgb(26, 179, 179)"});var dn,VS,km,AF,uF,YS,WS=h(()=>{dn=f(v(),1),VS=f(fr(),1),km=f(H(),1);yu();Hs();AF=(0,km.observer)(function({model:e,offsetX:t,trackHeight:r}){let{blockSize:n,scrollX:o,highResScaleFactor:i}=e,a=(0,dn.useRef)(null);return(0,dn.useEffect)(()=>{let s=a.current?.getContext("2d");if(s)return(0,VS.autorun)(()=>{let{blockSize:c,colWidth:l,highResScaleFactor:A,conservation:u}=e;s.resetTransform(),s.scale(A,A),s.clearRect(0,0,c,r),s.translate(-t,0),Au({ctx:s,conservation:u,colWidth:l,trackHeight:r,offsetX:t,blockSize:c})})},[e,t,r]),dn.default.createElement("canvas",{ref:a,height:r*i,width:n*i,style:{position:"absolute",left:o+t,width:n,height:r}})}),uF=(0,km.observer)(function({model:e,track:t}){let{blocksX:r,msaAreaWidth:n}=e,o=t.model.height;return dn.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>dn.default.createElement(AF,{key:i,model:e,offsetX:i,trackHeight:o})),dn.default.createElement(yh,{model:e}))}),YS=uF});var jn,zS,Dm,fF,dF,$S,KS=h(()=>{jn=f(v(),1),zS=f(fr(),1),Dm=f(H(),1);Jo();ym();Hs();fF=(0,Dm.observer)(function({track:e,model:t,offsetX:r}){let{blockSize:n,scrollX:o,colorScheme:i,rowHeight:a,highResScaleFactor:s}=t,{model:{customColorScheme:c,data:l}}=e,A=c??i,u=(0,jn.useRef)(null),{contrastScheme:m}=Rl(A);return(0,jn.useEffect)(()=>{let d=u.current?.getContext("2d");if(d)return(0,zS.autorun)(()=>{let{blockSize:g,bgColor:E,colWidth:x,fontSize:I,rowHeight:p,highResScaleFactor:w}=t;d.resetTransform(),d.scale(w,w),d.clearRect(0,0,g,p),d.translate(-r,0),d.textAlign="center",_r(d,I),uu({ctx:d,data:l,colorScheme:A,contrastScheme:m,bgColor:E,colWidth:x,rowHeight:p,offsetX:r,blockSize:g})})},[t,r,m,A,l]),jn.default.createElement("canvas",{ref:u,height:a*s,width:n*s,style:{position:"absolute",left:o+r,width:n,height:a}})}),dF=(0,Dm.observer)(function({track:e,model:t}){let{blocksX:r,msaAreaWidth:n,rowHeight:o}=t;return e.model.data?jn.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>jn.default.createElement(fF,{key:i,track:e,model:t,offsetX:i}))):null}),$S=dF});var As,Hl=h(()=>{As="maeditor"});function XS(e){let t=Math.min(e.length-1,Hd.length-1),r=Hd[t];return Object.fromEntries(e.map((n,o)=>[n,r[o]]))}var ZS=h(()=>{jd()});function eQ(e){let t=new Map(e.map(n=>[n.id,{id:`${n.id}`,name:`${n.id}`,parent:n.parent!==void 0?`${n.parent}`:void 0,children:[]}])),r;for(let n of e){let o=t.get(n.id),i=n.parent!==void 0?t.get(n.parent):void 0;i?i.children.push(o):r??=o}if(r===void 0)throw new Error("could not build tree from flat node list: no root found (input was empty or contains a parent cycle)");return r}var tQ=h(()=>{});function rQ(e,t){Nm||(Nm=document.createElement("canvas"));let r=Nm.getContext("2d");if(!r)throw new Error("no canvas context");return _r(r,t),r.measureText(e).width}var Nm,nQ=h(()=>{Jo()});function oQ(){return qr.types.model({tree:qr.types.maybe(qr.types.string),msa:qr.types.maybe(qr.types.string),treeMetadata:qr.types.maybe(qr.types.string),gff:qr.types.maybe(qr.types.string)}).actions(e=>({setTree(t){e.tree=t},setMSA(t){e.msa=t},setTreeMetadata(t){e.treeMetadata=t},setGFF(t){e.gff=t}})).postProcessSnapshot(e=>{let{tree:t,msa:r,treeMetadata:n,gff:o}=e,i=5e4;return{tree:t&&t.length>i?void 0:t,msa:r&&r.length>i?void 0:r,treeMetadata:n&&n.length>i?void 0:n,gff:o&&o.length>i?void 0:o}})}var qr,iQ=h(()=>{qr=f(Pt(),1)});function sQ(){return aQ.types.model("DialogQueueSessionMixin",{}).volatile(()=>({queueOfDialogs:[]})).views(e=>({get DialogComponent(){return e.queueOfDialogs[0]?.[0]},get DialogProps(){return e.queueOfDialogs[0]?.[1]}})).actions(e=>({removeActiveDialog(){e.queueOfDialogs=e.queueOfDialogs.slice(1)},queueDialog(t){let[r,n]=t(()=>{this.removeActiveDialog()});e.queueOfDialogs=[...e.queueOfDialogs,[r,n]]}}))}var aQ,cQ=h(()=>{aQ=f(Pt(),1)});function lQ(){return jl.types.model({bgColor:!0,colorSchemeName:As,msaFormat:jl.types.maybe(jl.types.enumeration("MSAFormat",mF))}).actions(e=>({setColorSchemeName(t){e.colorSchemeName=t},setBgColor(t){e.bgColor=t},setMSAFormat(t){e.msaFormat=t}}))}var jl,mF,AQ=h(()=>{jl=f(Pt(),1);Hl();mF=["stockholm","a3m","fasta","emf","clustal"]});function uQ(){return qi.types.model({drawLabels:!0,labelsAlignRight:!1,treeAreaWidth:qi.types.optional(qi.types.number,400),treeWidth:qi.types.optional(qi.types.number,300),showBranchLen:!0,drawTree:!0,drawNodeBubbles:!0}).actions(e=>({setTreeAreaWidth(t){e.treeAreaWidth=Math.round(t)},setTreeWidth(t){e.treeWidth=Math.round(t)},setLabelsAlignRight(t){e.labelsAlignRight=t},setDrawTree(t){e.drawTree=t},setShowBranchLen(t){e.showBranchLen=t},setDrawNodeBubbles(t){e.drawNodeBubbles=t},setDrawLabels(t){e.drawLabels=t}}))}var qi,fQ=h(()=>{qi=f(Pt(),1);Hl()});function jm(e,t){return mQ.get(e.toUpperCase())?.get(t.toUpperCase())??-4}function gF(e,t){if(e.length!==t.length)throw new Error("Sequences must have the same length (aligned)");let r=0,n=0,o=0,i=0;for(let l=0;l<e.length;l++){let A=e[l],u=t[l];if(A==="-"&&u==="-")continue;if(A==="-"||u==="-"){n++;continue}let m=jm(A,u);o+=m,i+=Math.max(jm(A,A),jm(u,u)),A.toUpperCase()===u.toUpperCase()?r++:n++}if(r+n===0||i<=0)return 1;let s=o/i,c=Math.max(.01,Math.min(1,s));return-Math.log(c)}function hF(e){let t=e.length,r=[];for(let n=0;n<t;n++){r[n]=[];for(let o=0;o<t;o++)n===o?r[n][o]=0:o<n?r[n][o]=r[o][n]:r[n][o]=gF(e[n][1],e[o][1])}return r}function CF(e,t){let r=e.length;if(r<2)return{name:t[0]};if(r===2){let s=e[0][1];return{left:{name:t[0]},right:{name:t[1]},leftLength:s/2,rightLength:s/2}}let n=[];for(let s=0;s<r;s++)n[s]=[...e[s]];let o=t.map(s=>({name:s})),i=r;for(;i>2;){let s=[];for(let p=0;p<o.length;p++)o[p]!==void 0&&s.push(p);let c=new Map;for(let p of s){let w=0;for(let y of s)p!==y&&(w+=n[p][y]);c.set(p,w)}let l=1/0,A=-1,u=-1;for(let p=0;p<s.length;p++)for(let w=p+1;w<s.length;w++){let y=s[p],b=s[w],Q=(i-2)*n[y][b]-c.get(y)-c.get(b);Q<l&&(l=Q,A=y,u=b)}let m=n[A][u],d=c.get(A),g=c.get(u),E=m/2+(d-g)/(2*(i-2)),x=m-E;E=Math.max(0,E),x=Math.max(0,x);let I={left:o[A],right:o[u],leftLength:E,rightLength:x};for(let p of s)if(p!==A&&p!==u){let w=(n[A][p]+n[u][p]-m)/2;n[A][p]=Math.max(0,w),n[p][A]=Math.max(0,w)}o[u]=void 0,o[A]=I,i--}let a=[];for(let s=0;s<o.length;s++)o[s]!==void 0&&a.push(s);if(a.length===2){let s=a[0],c=a[1],l=n[s][c];return{left:o[s],right:o[c],leftLength:l/2,rightLength:l/2}}return o[a[0]]}function dQ(e,t){return t===void 0?e:`${e}:${t.toFixed(6)}`}function EF(e){let t=[],r=[e];for(;r.length>0;){let o=r.pop();t.push(o),o.left&&r.push(o.left),o.right&&r.push(o.right)}let n=new Map;for(let o=t.length-1;o>=0;o--){let i=t[o];if(i.name!==void 0&&!i.left&&!i.right)n.set(i,`'${i.name.replaceAll("'","''")}'`);else{let a=i.left?dQ(n.get(i.left),i.leftLength):"",s=i.right?dQ(n.get(i.right),i.rightLength):"";n.set(i,`(${a},${s})`)}}return n.get(e)}function pQ(e){if(e.length<2)throw new Error("Need at least 2 sequences to build a tree");let t=e.map(o=>o[0]),r=hF(e),n=CF(r,t);return EF(n)+";"}var ql,pF,mQ,gQ=h(()=>{ql="ARNDCQEGHILKMFPSTWYVBZX*",pF=[[4,-1,-2,-2,0,-1,-1,0,-2,-1,-1,-1,-1,-2,-1,1,0,-3,-2,0,-2,-1,0,-4],[-1,5,0,-2,-3,1,0,-2,0,-3,-2,2,-1,-3,-2,-1,-1,-3,-2,-3,-1,0,-1,-4],[-2,0,6,1,-3,0,0,0,1,-3,-3,0,-2,-3,-2,1,0,-4,-2,-3,3,0,-1,-4],[-2,-2,1,6,-3,0,2,-1,-1,-3,-4,-1,-3,-3,-1,0,-1,-4,-3,-3,4,1,-1,-4],[0,-3,-3,-3,9,-3,-4,-3,-3,-1,-1,-3,-1,-2,-3,-1,-1,-2,-2,-1,-3,-3,-2,-4],[-1,1,0,0,-3,5,2,-2,0,-3,-2,1,0,-3,-1,0,-1,-2,-1,-2,0,3,-1,-4],[-1,0,0,2,-4,2,5,-2,0,-3,-3,1,-2,-3,-1,0,-1,-3,-2,-2,1,4,-1,-4],[0,-2,0,-1,-3,-2,-2,6,-2,-4,-4,-2,-3,-3,-2,0,-2,-2,-3,-3,-1,-2,-1,-4],[-2,0,1,-1,-3,0,0,-2,8,-3,-3,-1,-2,-1,-2,-1,-2,-2,2,-3,0,0,-1,-4],[-1,-3,-3,-3,-1,-3,-3,-4,-3,4,2,-3,1,0,-3,-2,-1,-3,-1,3,-3,-3,-1,-4],[-1,-2,-3,-4,-1,-2,-3,-4,-3,2,4,-2,2,0,-3,-2,-1,-2,-1,1,-4,-3,-1,-4],[-1,2,0,-1,-3,1,1,-2,-1,-3,-2,5,-1,-3,-1,0,-1,-3,-2,-2,0,1,-1,-4],[-1,-1,-2,-3,-1,0,-2,-3,-2,1,2,-1,5,0,-2,-1,-1,-1,-1,1,-3,-1,-1,-4],[-2,-3,-3,-3,-2,-3,-3,-3,-1,0,0,-3,0,6,-4,-2,-2,1,3,-1,-3,-3,-1,-4],[-1,-2,-2,-1,-3,-1,-1,-2,-2,-3,-3,-1,-2,-4,7,-1,-1,-4,-3,-2,-2,-1,-2,-4],[1,-1,1,0,-1,0,0,0,-1,-2,-2,0,-1,-2,-1,4,1,-3,-2,-2,0,0,0,-4],[0,-1,0,-1,-1,-1,-1,-2,-2,-1,-1,-1,-1,-2,-1,1,5,-2,-2,0,-1,-1,0,-4],[-3,-3,-4,-4,-2,-2,-3,-2,-2,-3,-2,-3,-1,1,-4,-3,-2,11,2,-3,-4,-3,-2,-4],[-2,-2,-2,-3,-2,-1,-2,-3,2,-1,-1,-2,-1,3,-3,-2,-2,2,7,-1,-3,-2,-1,-4],[0,-3,-3,-3,-1,-2,-2,-3,-3,3,1,-2,1,-1,-2,-2,0,-3,-1,4,-3,-2,-1,-4],[-2,-1,3,4,-3,0,1,-1,0,-3,-4,0,-3,-3,-2,0,-1,-4,-3,-3,4,1,-1,-4],[-1,0,0,1,-3,3,4,-2,0,-3,-3,1,-1,-3,-1,0,-1,-3,-2,-2,1,4,-1,-4],[0,-1,-1,-1,-2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-2,0,0,-2,-1,-1,-1,-1,-1,-4],[-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,1]],mQ=new Map;for(let e=0;e<ql.length;e++){let t=new Map;for(let r=0;r<ql.length;r++)t.set(ql[r],pF[e][r]);mQ.set(ql[e],t)}});function qm(e){let t=[],r=0;for(;r<e.length&&(r=e.indexOf("{",r),r!==-1);){let n=1,o=r+1;for(r++;r<e.length&&n>0;)e[r]==="{"?n++:e[r]==="}"&&n--,r++;n===0&&t.push(e.slice(o,r-1).trim())}return t}function xF(e,t){let r=e.indexOf("{",t);if(r===-1)return;let n=1,o=r+1;for(;o<e.length&&n>0;)e[o]==="{"?n++:e[o]==="}"&&n--,o++;return n===0?e.slice(r+1,o-1).trim():void 0}function hQ(e){let t=e.replace(/\s+/g," ").replace(/\s*{\s*/g,"{").replace(/\s*}\s*/g,"}").replace(/\s*,\s*/g,",").replace(/\s*::\s*=\s*/g,"::=").replace(/^.*?::=/,""),r=wF(t),{fdict:n,nodes:o}=r;if(n===void 0||o===void 0)throw new Error(`invalid BioTreeContainer ASN.1: missing '${n===void 0?"fdict":"nodes"}' section`);let i=Object.fromEntries(qm(n).flatMap(a=>{let s=yF(a);return s?[[s.id,IF[s.name]||s.name]]:[]}));return qm(o).flatMap(a=>{let s=bF(a);if(!s)return[];let{features:c=[],...l}=s;return[{...l,...Object.fromEntries(c.map(A=>[i[A.featureid],A.value]))}]})}function wF(e){let t={},r=e.trim();r.startsWith("{")&&r.endsWith("}")&&(r=r.slice(1,-1).trim());let n=0;for(;n<r.length;){for(;n<r.length&&/\s/.test(r[n]);)n++;if(n>=r.length)break;let o=n;for(;n<r.length&&/\w/.test(r[n]);)n++;if(n>=r.length||r[n]!==" "&&r[n]!=="{"){n=r.indexOf(",",n),n=n===-1?r.length:n+1;continue}let i=r.slice(o,n).trim();for(;n<r.length&&/\s/.test(r[n]);)n++;if(n>=r.length||r[n]!=="{"){n=r.indexOf(",",n),n=n===-1?r.length:n+1;continue}let a=1,s=n+1;for(n++;n<r.length&&a>0;)r[n]==="{"?a++:r[n]==="}"&&a--,n++;a===0&&(t[i]=r.slice(s,n-1).trim()),n=r.indexOf(",",n),n=n===-1?r.length:n+1}return t}function yF(e){let t=/id\s+(\d+)/.exec(e),r=/name\s+"((?:[^"\\]|\\.)*)"/s.exec(e);return!t||!r?null:{id:parseInt(t[1],10),name:r[1].replace(/\\"/g,'"').replace(/\\\\/g,"\\")}}function bF(e){let t=/id\s+(\d+)/.exec(e);if(!t)return null;let r=/parent\s+(\d+)/.exec(e),n=e.indexOf("features"),o=n!==-1?xF(e,n):void 0;return{id:parseInt(t[1],10),...r?{parent:parseInt(r[1],10)}:{},features:o?qm(o).flatMap(i=>{let a=BF(i);return a?[a]:[]}):[]}}function BF(e){let t=/featureid\s+(\d+)/.exec(e),r=/value\s+"((?:[^"\\]|\\.)*)"/s.exec(e);return!t||!r?null:{featureid:parseInt(t[1],10),value:r[1].replace(/\\"/g,'"').replace(/\\\\/g,"\\")}}var IF,CQ=h(()=>{IF={$NODE_COLLAPSED:"collapsed",$NODE_COLOR:"color",$LABEL_BG_COLOR:"color","seq-id":"seqId","seq-title":"seqTitle","align-index":"alignIndex","accession-nbr":"accessionNbr","blast-name":"blastName","common-name":"commonName","leaf-count":"leafCount"}});function Jm(e,t){let r=0,n=0,o=0,i=e.length;for(;n<i&&e[n]===o;)n++,o++;for(;r<t;)for(r++,o++;n<i&&e[n]===o;)n++,o++;return o}function EQ(e,t){let r=0,n=e.length-1;for(;r<=n;){let i=Math.floor((r+n)/2);if(e[i]===t)return;e[i]<t?r=i+1:n=i-1}return t-r}function SF({seq:e,blanks:t,visibleCol:r}){let n=Jm(t,r),o=e.length;if(n<o&&la(e[n]))return;let i=0;for(let a=0;a<n&&a<o;a++)la(e[a])||i++;return n<o?i:void 0}function IQ({rowName:e,visibleCol:t,rowMap:r,blanks:n}){let o=r.get(e);return o!==void 0?SF({seq:o,visibleCol:t,blanks:n}):void 0}var xQ=h(()=>{In()});function wQ({row:e,seqPos:t}){let r=0,n=0;for(;n<e.length;){if(!la(e[n])){if(r===t)return n;r++}n++}return t===0?0:n}var yQ=h(()=>{In()});function bQ(e,t){let r=URL.createObjectURL(e),n=document.createElement("a");n.href=r,n.download=t,n.click(),setTimeout(()=>{URL.revokeObjectURL(r)},4e4)}var BQ=h(()=>{});function vF(e){return e.startsWith("BioTreeContainer")?eQ(hQ(e)):Io(e.startsWith("SEQ")?ml(e).tree:e)}function MF(){return X.types.compose(sQ(),uQ(),lQ(),X.types.model("MsaView",{id:Bo.ElementId,showDomains:!1,hideGaps:!0,allowedGappyness:100,subFeatureRows:!1,type:X.types.literal("MsaView"),drawMsaLetters:!0,scrollZoom:!1,height:X.types.optional(X.types.number,550),rowHeight:16,scrollY:0,scrollX:0,colWidth:12,treeFilehandle:X.types.maybe(Bo.FileLocation),msaFilehandle:X.types.maybe(Bo.FileLocation),treeMetadataFilehandle:X.types.maybe(Bo.FileLocation),gffFilehandle:X.types.maybe(Bo.FileLocation),currentAlignment:0,collapsed:X.types.array(X.types.string),showOnly:X.types.maybe(X.types.string),turnedOffTracks:X.types.map(X.types.boolean),data:X.types.optional(oQ(),{tree:"",msa:"",treeMetadata:""}),featureFilters:X.types.map(X.types.boolean),relativeTo:X.types.maybe(X.types.string),highlightColumns:X.types.frozen()})).volatile(()=>({headerHeight:0,status:void 0,highResScaleFactor:typeof window>"u"?1:window.devicePixelRatio,loadingMSA:!1,loadingTree:!1,volatileWidth:void 0,resizeHandleWidth:5,blockSize:500,mouseRow:void 0,mouseCol:void 0,mouseClickRow:void 0,mouseClickCol:void 0,hoveredTreeNode:void 0,highlightedColumns:void 0,minimapHeight:56,conservationTrackHeight:40,marginLeft:20,error:void 0,interProAnnotations:void 0})).actions(e=>({drawRelativeTo(t){e.relativeTo=t},setHideGaps(t){e.hideGaps=t},setAllowedGappyness(t){e.allowedGappyness=t},setLoadingMSA(t){e.loadingMSA=t},setLoadingTree(t){e.loadingTree=t},setWidth(t){e.volatileWidth=t},setHighResScaleFactor(t){e.highResScaleFactor=t},setHeight(t){e.height=t},setError(t){e.error=t},setMousePos(t,r){e.mouseCol=t,e.mouseRow=r},setHighlightedColumns(t){e.highlightedColumns=t},setShowDomains(t){e.showDomains=t},setSubFeatureRows(t){e.subFeatureRows=t},setMouseClickPos(t,r){e.mouseClickCol=t,e.mouseClickRow=r},setRowHeight(t){e.rowHeight=t},setColWidth(t){e.colWidth=t},setScrollY(t){e.scrollY=t},setCurrentAlignment(t){e.currentAlignment=t},toggleCollapsed(t){e.collapsed.includes(t)?e.collapsed.remove(t):e.collapsed.push(t)},setShowOnly(t){e.showOnly=t},setData(t){e.data=(0,X.cast)(t)},setMSAFilehandle(t){e.msaFilehandle=t},setTreeFilehandle(t){e.treeFilehandle=t},setGFFFilehandle(t){e.gffFilehandle=t},setMSA(t){e.data.setMSA(t)},setTree(t){e.data.setTree(t)},setTreeMetadata(t){e.data.setTreeMetadata(t)}})).views(e=>({get hideGapsEffective(){return e.hideGaps&&(e.collapsed.length>0||e.allowedGappyness<100)},get realAllowedGappyness(){return this.hideGapsEffective?e.allowedGappyness:100},get actuallyShowDomains(){return e.showDomains&&!!e.interProAnnotations},get viewInitialized(){return e.volatileWidth!==void 0},get width(){if(e.volatileWidth===void 0)throw new Error("not initialized");return e.volatileWidth}})).views(e=>({extraViewMenuItems(){return[]},get colorScheme(){return Eo[e.colorSchemeName]??Eo[As]},get header(){return this.MSA?.getHeader()??{}},get alignmentNames(){return this.MSA?.alignmentNames??[]},get noTree(){return!!this.tree.noTree},get noDomains(){return!e.interProAnnotations},menuItems(){return[]},get treeMetadata(){return e.data.treeMetadata?JSON.parse(e.data.treeMetadata):{}},get MSA(){let t=e.data.msa;return t?rm(t,e.currentAlignment,e.msaFormat):null},get numColumns(){return(this.MSA?.getWidth()??0)-this.blanks.length},get tree(){let t=e.data.tree;return t?Li(vF(t)):this.MSA?.getTree()??{noTree:!0,children:[],id:"empty",name:"empty"}},get rowNames(){return this.leaves.map(t=>t.data.name)},get rowNamesSet(){return new Map(this.leaves.map((t,r)=>[t.data.name,r]))},get mouseOverRowName(){let{mouseRow:t}=e;return t===void 0?void 0:this.leaves[t]?.data.name},get hoveredInsertion(){let{mouseCol:t,mouseRow:r}=e;if(t!==void 0&&r!==void 0){let n=this.leaves[r]?.data.name;if(n){let o=this.insertionPositions.get(n)?.find(i=>i.pos===t);if(o)return{rowName:n,col:t,letters:o.letters}}}},get root(){let t=zg(this.tree,r=>r.children);if($g(t,r=>r.children.length>0?0:1),Kg(t,(r,n)=>(r.data.length??1)-(n.data.length??1)),e.showOnly){let r=js(t,n=>n.data.id===e.showOnly);r&&(t=r)}for(let r of e.collapsed){let n=js(t,o=>o.data.id===r);n&&(n.children?eh(n):n.parent?.children&&(n.parent.children=n.parent.children.filter(o=>o.data.id!==r)))}return t},get msaAreaWidth(){return e.width-e.treeAreaWidth-e.resizeHandleWidth},get treeAreaWidthMinusMargin(){return e.treeAreaWidth-e.marginLeft},get blanks(){let{hideGapsEffective:t,realAllowedGappyness:r}=e;if(!t)return[];let n=this.leaves.map(l=>this.MSA?.getRow(l.data.name)).filter(Ve.notEmpty);if(n.length===0)return[];let o=n[0].length,i=n.length,a=Math.ceil(r/100*i),s=new Uint16Array(o);for(let l=0;l<i;l++){let A=n[l];for(let u=0;u<o;u++)A.charCodeAt(u)-45>>>0<=1&&s[u]++}let c=[];for(let l=0;l<o;l++)s[l]>=a&&c.push(l);return c},get blanksSet(){return new Set(this.blanks)},get insertionPositions(){let{blanks:t,rows:r}=this;if(t.length===0||!e.hideGapsEffective)return new Map;let n=new Map;for(let[o,i]of r){let a=Vg(t,i);a.length>0&&n.set(o,a)}return n},get rows(){let t=this.MSA;return this.leaves.map(r=>[r.data.name,t?.getRow(r.data.name)]).filter(r=>!!r[1])},get numRows(){return this.rows.length},get rowMap(){return new Map(this.rows)},get columns(){let t=this.columns2d;return new Map(this.rows.map((r,n)=>[r[0],t[n]]))},get columns2d(){let{hideGapsEffective:t}=e;return this.rows.map(([,r])=>(t?su(this.blanks,r):r).toUpperCase())},get fontSize(){return Math.min(Math.max(6,e.rowHeight-3),18)},get colStats(){let t=[],r=this.columns2d;for(let n of r)for(let o=0;o<n.length;o++){let i=t[o]??={},a=n[o];i[a]=(i[a]??0)+1}return t},get colStatsSums(){return this.colStats.map(t=>(0,Ve.sum)(Object.values(t)))},get sequenceType(){let t=new Set;for(let a of this.colStats)for(let s of Object.keys(a))s!=="-"&&s!=="."&&t.add(s);let r=new Set(["A","C","G","T","N"]),n=new Set(["A","C","G","U","N"]),o=t.size>0&&[...t].every(a=>r.has(a)),i=t.size>0&&[...t].every(a=>n.has(a));return o?"dna":i?"rna":"amino"},get colConsensus(){let{colStats:t,colStatsSums:r}=this;return t.map((n,o)=>{let i=r[o];if(!i)return{letter:"",color:void 0};let a=0,s="";for(let[l,A]of Object.entries(n))A>a&&l!=="-"&&l!=="."&&(a=A,s=l);let c=a/i;return{letter:s,color:c>.4?`hsl(240, 30%, ${100*Math.max(1-c/3,.3)}%)`:void 0}})},get colClustalX(){let{colStats:t,colStatsSums:r}=this;return t.map((n,o)=>qS(n,r[o]))},get conservation(){let{colStats:t,colStatsSums:r,sequenceType:n}=this,i=Math.log2(n==="amino"?20:4);return t.map((a,s)=>{let c=r[s];if(!c)return 0;let l=(a["-"]??0)+(a["."]??0),A=c-l;if(A===0)return 0;let u=0;for(let[g,E]of Object.entries(a))if(g!=="-"&&g!=="."){let x=E/A;u-=x*Math.log2(x)}let m=l/c;return Math.max(0,1-u/i)*(1-m)})},get hierarchy(){let t=this.root;Zg(t,this.totalHeight,e.treeWidth),t.data.length=0;let r=nh(t),n=r?e.treeWidth/r:0;return oh(t,0,n),ua(t,o=>{if(o._children){let{min:i,max:a}=th(o);o.collapsedTipXNear=(o.len??0)+i*n,o.collapsedTipXFar=(o.len??0)+a*n}}),t},get totalHeight(){return Aa(this.root).length*e.rowHeight},get leaves(){return Aa(this.hierarchy)},get maxBranchLength(){return rh(this.hierarchy)},get maxDepthToLeaf(){return fa(this.hierarchy)},get allBranchesLength0(){return Xg(this.hierarchy).every(t=>!t.source.data.length)},get showBranchLenEffective(){return this.allBranchesLength0?!1:e.showBranchLen}})).views(e=>({get totalWidth(){return e.numColumns*e.colWidth}})).views(e=>({get dataInitialized(){return(e.data.msa!==""||e.data.tree!=="")&&!e.error},get blocksX(){return Tm({viewportSize:e.msaAreaWidth,viewportPos:-e.scrollX,blockSize:e.blockSize,mapSize:e.totalWidth})},get blocksY(){return Tm({viewportSize:e.height,viewportPos:-e.scrollY,blockSize:e.blockSize,mapSize:e.totalHeight})}})).views(e=>({get blocks2d(){return e.blocksY.flatMap(t=>e.blocksX.map(r=>[r,t]))},get isLoading(){return e.loadingMSA||e.loadingTree},get maxScrollX(){return Math.min(-e.totalWidth+(e.msaAreaWidth-100),0)},get maxScrollY(){let t=e.height-e.headerHeight-(e.msaAreaWidth<e.totalWidth?e.minimapHeight:0);return Math.min(-e.totalHeight+t,0)},get showMsaLetters(){return e.drawMsaLetters&&e.rowHeight>=5&&e.colWidth>e.rowHeight/2},get showTreeText(){return e.drawLabels&&e.rowHeight>=5}})).actions(e=>({setDrawMsaLetters(t){e.drawMsaLetters=t},setScrollZoom(t){e.scrollZoom=t},setHoveredTreeNode(t){if(t){let r=js(e.hierarchy,n=>n.data.id===t);e.hoveredTreeNode=r?{nodeId:t,descendantNames:Aa(r).map(n=>n.data.name)}:void 0}else e.hoveredTreeNode=void 0},calculateNeighborJoiningTreeFromMSA(){if(e.rows.length<2)throw new Error("Need at least 2 sequences to build a tree");let t=pQ(e.rows);e.setTree(t)},resetZoom(){e.setColWidth(12),e.setRowHeight(16)},zoomOutHorizontal(){e.colWidth=Math.max(.2,Math.floor(e.colWidth*.75)),e.scrollX=(0,Ve.clamp)(e.scrollX,e.maxScrollX,0)},zoomInHorizontal(){e.colWidth=Math.min(80,Math.ceil(e.colWidth*1.5)),e.scrollX=(0,Ve.clamp)(e.scrollX,e.maxScrollX,0)},zoomInVertical(){e.rowHeight=Math.min(80,Math.ceil(e.rowHeight*1.5))},zoomOutVertical(){e.rowHeight=Math.max(1,Math.floor(e.rowHeight*.75))},zoomIn(){(0,kt.transaction)(()=>{this.zoomInHorizontal(),this.zoomInVertical()})},zoomOut(){(0,kt.transaction)(()=>{this.zoomOutHorizontal(),this.zoomOutVertical()})},zoomToPos(t,r,n){(0,kt.transaction)(()=>{let o=(-e.scrollX+r)/e.colWidth,i=(-e.scrollY+n)/e.rowHeight;e.colWidth=(0,Ve.clamp)(e.colWidth*t,.2,80),e.rowHeight=(0,Ve.clamp)(e.rowHeight*t,1,80),e.scrollX=(0,Ve.clamp)(r-o*e.colWidth,e.maxScrollX,0);let a=n-i*e.rowHeight,s=Math.max(0,-e.maxScrollY),c=e.totalHeight-s,l=c>0?(0,Ve.clamp)(1-s/c,0,1):1;e.scrollY=(0,Ve.clamp)(a*(1-l),e.maxScrollY,0)})},doScrollY(t){e.scrollY=(0,Ve.clamp)(e.scrollY+t,e.maxScrollY,0)},setDomains(t){e.interProAnnotations=t,e.setShowDomains(!!t)},applyGFFText(t){let r=pl(t);this.setDomains(gl(r))},doScrollX(t){this.setScrollX(e.scrollX+t)},setScrollX(t){e.scrollX=(0,Ve.clamp)(t,e.maxScrollX,0)},toggleTrack(t){e.turnedOffTracks.has(t)?e.turnedOffTracks.delete(t):e.turnedOffTracks.set(t,!0)},setStatus(t){e.status=t}})).views(e=>({get labelWidthMap(){let{rowHeight:t,leaves:r,treeMetadata:n,fontSize:o}=e;return t<=5?new Map:new Map(r.map(i=>{let{name:a}=i.data,s=n[a]?.genome??a;return[a,rQ(s,o)]}))},get labelsWidth(){let t=this.labelWidthMap;return t.size===0?0:Math.max(...t.values())},get secondaryStructureConsensus(){return e.MSA?.secondaryStructureConsensus},get seqConsensus(){return e.MSA?.seqConsensus},get adapterTrackModels(){let{rowHeight:t,MSA:r,hideGapsEffective:n,blanks:o}=e;return(r?.tracks??[]).filter(a=>!!a.data).map(a=>({model:{...a,data:n?su(o,a.data):a.data,height:t},ReactComponent:$S}))},get tracks(){let t={model:{id:"conservation",name:"Conservation",height:e.conservationTrackHeight},ReactComponent:YS};return[...this.adapterTrackModels,t]},get turnedOnTracks(){return this.tracks.filter(t=>!e.turnedOffTracks.has(t.model.id))},get showHorizontalScrollbar(){return e.msaAreaWidth<e.totalWidth},visibleColToRowLetter(t,r){let{rowMap:n,blanks:o}=e;return n.get(t)?.[Jm(o,r)]},visibleColToSeqPos(t,r){return IQ({rowName:t,visibleCol:r,rowMap:e.rowMap,blanks:e.blanks})},visibleColToSeqPosOneBased(t,r){let n=this.visibleColToSeqPos(t,r);return n!==void 0?n+1:void 0},globalColToVisibleCol(t){let{blanks:r,hideGapsEffective:n}=e;return n?EQ(r,t):t},seqPosToGlobalCol(t,r){let n=e.rowMap.get(t);return n?wQ({row:n,seqPos:r}):0},seqPosToVisibleCol(t,r){let n=this.seqPosToGlobalCol(t,r);return this.globalColToVisibleCol(n)}})).views(e=>({get msaAreaHeight(){return e.height-(e.showHorizontalScrollbar?e.minimapHeight:0)-e.headerHeight},get totalTrackAreaHeight(){return(0,Ve.sum)(e.turnedOnTracks.map(t=>t.model.height))},get tidyInterProAnnotationTypes(){return new Map(this.tidyInterProAnnotations.map(t=>[t.accession,t]))},get tidyInterProAnnotations(){return e.interProAnnotations?Object.entries(e.interProAnnotations).flatMap(([t,r])=>r.matches.flatMap(({signature:n,locations:o})=>{let{entry:i}=n;return i?o.map(({start:a,end:s})=>({id:t,name:i.name,accession:i.accession,description:i.description,start:a,end:s})):[]})).toSorted((t,r)=>cu(r)-cu(t)):[]},get tidyFilteredInterProAnnotations(){return this.tidyInterProAnnotations.filter(t=>e.featureFilters.get(t.accession))},get tidyFilteredGatheredInterProAnnotations(){return(0,Ve.groupBy)(this.tidyFilteredInterProAnnotations,t=>t.id)}})).views(e=>({get showVerticalScrollbar(){return e.msaAreaHeight<e.totalHeight}})).views(e=>({get verticalScrollbarWidth(){return e.showVerticalScrollbar?20:0},get fillPalette(){return XS([...e.tidyInterProAnnotationTypes.keys()])},get strokePalette(){return Vo(this.fillPalette,([t,r])=>[t,it(r).darken(.1).toHex()])},getRowData(t){return{data:e.MSA?.getRowData(t),treeMetadata:e.treeMetadata[t]}}})).actions(e=>({setHeaderHeight(t){e.headerHeight=t},setConservationTrackHeight(t){e.conservationTrackHeight=t},reset(){e.setData({tree:"",msa:""}),e.resetZoom(),e.setError(void 0),e.setScrollY(0),e.setScrollX(0),e.setCurrentAlignment(0),e.setTreeFilehandle(void 0),e.setMSAFilehandle(void 0),e.setGFFFilehandle(void 0),e.setDomains(void 0)},async exportSVG(t){let{renderToSvg:r}=await Promise.resolve().then(()=>(Eu(),dh)),n=await r(e,t),o=new Blob([n],{type:"image/svg+xml"});bQ(o,"image.svg")},initFilter(t){e.featureFilters.has(t)||e.featureFilters.set(t,!0)},setFilter(t,r){e.featureFilters.set(t,r)},fit(){this.fitVertically(),this.fitHorizontally()},fitVertically(){e.numRows>0&&(e.rowHeight=(0,Ve.clamp)(e.msaAreaHeight/e.numRows,1,80)),e.scrollY=0},fitHorizontally(){e.numColumns>0&&(e.colWidth=(0,Ve.clamp)(e.msaAreaWidth/e.numColumns,.2,80)),e.scrollX=0},afterCreate(){e.highlightColumns?.length&&e.setHighlightedColumns(e.highlightColumns),(0,X.addDisposer)(e,(0,kt.autorun)(()=>{for(let n of e.tidyInterProAnnotationTypes.keys())this.initFilter(n)}));let t=0;(0,X.addDisposer)(e,(0,kt.autorun)(async()=>{let{treeFilehandle:n}=e;if(n){let o=++t;try{e.setLoadingTree(!0);let i=await Wa((0,us.openLocation)(n),a=>{o===t&&e.setStatus(a)});o===t&&(0,kt.transaction)(()=>{e.setTree(i),n.locationType==="BlobLocation"&&e.setTreeFilehandle(void 0)})}catch(i){o===t&&(Dn(i)?e.setTreeFilehandle(void 0):(console.error(i),e.setError(i)))}finally{o===t&&e.setLoadingTree(!1)}}})),(0,X.addDisposer)(e,(0,kt.autorun)(async()=>{let{treeMetadataFilehandle:n}=e;if(n)try{e.setTreeMetadata(await Wa((0,us.openLocation)(n),o=>{e.setStatus(o)}))}catch(o){Dn(o)||(console.error(o),e.setError(o))}})),(0,X.addDisposer)(e,(0,kt.autorun)(()=>{let n=e.data.gff;if(n)try{e.applyGFFText(n)}catch(o){console.error(o),e.setError(o)}})),(0,X.addDisposer)(e,(0,kt.autorun)(async()=>{let{gffFilehandle:n}=e;if(n)try{let o=await Wa((0,us.openLocation)(n),i=>{e.setStatus(i)});e.applyGFFText(o),n.locationType==="BlobLocation"&&e.setGFFFilehandle(void 0)}catch(o){Dn(o)?e.setGFFFilehandle(void 0):(console.error(o),e.setError(o))}}));let r=0;(0,X.addDisposer)(e,(0,kt.autorun)(async()=>{let{msaFilehandle:n}=e;if(n){let o=++r;try{e.setLoadingMSA(!0),e.setError(void 0);let i=await Wa((0,us.openLocation)(n),a=>{o===r&&e.setStatus(a)});o===r&&(0,kt.transaction)(()=>{e.setMSA(i),n.locationType==="BlobLocation"&&e.setMSAFilehandle(void 0)})}catch(i){o===r&&(Dn(i)?e.setMSAFilehandle(void 0):(console.error(i),e.setError(i)))}finally{o===r&&e.setLoadingMSA(!1)}}})),(0,X.addDisposer)(e,(0,kt.autorun)(()=>{e.colorSchemeName.includes("dynamic")&&(e.colStats,e.colStatsSums),e.columns})),(0,X.addDisposer)(e,(0,kt.autorun)(()=>{e.setTreeWidth(Math.max(50,e.treeAreaWidth-e.labelsWidth-10-e.marginLeft))}))}})).postProcessSnapshot(e=>{let t=e,{data:{tree:r,msa:n,treeMetadata:o},showDomains:i,hideGaps:a,allowedGappyness:s,subFeatureRows:c,drawMsaLetters:l,height:A,rowHeight:u,scrollY:m,scrollX:d,colWidth:g,currentAlignment:E,collapsed:x,showOnly:I,turnedOffTracks:p,featureFilters:w,relativeTo:y,bgColor:b,colorSchemeName:Q,drawLabels:S,labelsAlignRight:k,treeAreaWidth:T,treeWidth:_,showBranchLen:M,drawTree:L,drawNodeBubbles:U,...Y}=t,te=Object.fromEntries(Object.entries({showDomains:!1,hideGaps:!0,allowedGappyness:100,subFeatureRows:!1,drawMsaLetters:!0,height:550,rowHeight:16,scrollY:0,scrollX:0,colWidth:12,currentAlignment:0,bgColor:!0,colorSchemeName:As,drawLabels:!0,labelsAlignRight:!1,treeAreaWidth:400,treeWidth:300,showBranchLen:!0,drawTree:!0,drawNodeBubbles:!0}).filter(([Pe,Dt])=>t[Pe]!==Dt).map(([Pe])=>[Pe,t[Pe]]));return{...Y,data:{...e.treeFilehandle?{}:{tree:r},...e.msaFilehandle?{}:{msa:n},...e.treeMetadataFilehandle?{}:{treeMetadata:o}},...te,...x?.length?{collapsed:x}:{},...I!==void 0?{showOnly:I}:{},...p&&Object.keys(p).length>0?{turnedOffTracks:p}:{},...w&&Object.keys(w).length>0?{featureFilters:w}:{},...y!==void 0?{relativeTo:y}:{}}})}var Ve,us,Bo,X,kt,Jl,$m=h(()=>{Ve=f(me(),1),us=f(_m(),1),Bo=f(PS(),1),X=f(Pt(),1);Os();kt=f(fr(),1);om();OS();JS();sl();WS();KS();Hl();ZS();fl();tQ();du();nQ();iQ();cQ();AQ();fQ();gQ();CQ();xQ();yQ();In();BQ();Jl=MF});var Km,_F,TF,LQ=h(()=>{Km=f(v(),1),_F=f(LS(),1),TF=f(Ku(),1);$m();Mm()});var Xm=h(()=>{Eu();Mm();LQ();$m()});function i3(e){let t=e;return t.type==="ProteinView"&&Array.isArray(t.structures)}function Vn(e){return e.filter(i3)}function dv({structure:e,connectedViewId:t,uniprotId:r}){let n=!!t&&e.connectedViewId===t,o=!!r&&e.uniprotId===r;return n||o}function oA(e,t){if(t<0||t>=e.length)return;let r=0;for(let n=0;n<t;n++)e[n]!=="-"&&r++;if(e[t]!=="-")return r}var ps=h(()=>{"use strict"});var Tv={};$e(Tv,{default:()=>d3});var fe,aA,vv,ye,Mv,_v,u3,f3,d3,kv=h(()=>{"use strict";fe=f(v()),aA=f(Me()),vv=f(me()),ye=f(F()),Mv=f(H()),_v=f(ve());ps();u3=(0,_v.makeStyles)()(e=>({formControl:{marginBottom:e.spacing(2)}})),f3=(0,Mv.observer)(function({model:t,handleClose:r}){let{classes:n}=u3(),o=(0,vv.getSession)(t),[i,a]=(0,fe.useState)(""),[s,c]=(0,fe.useState)(0),[l,A]=(0,fe.useState)(t.querySeqName),[u,m]=(0,fe.useState)(),d=Vn(o.views),E=d.find(p=>p.id===i)?.structures??[],x=t.rows.map(p=>p[0]),I=()=>{if(!i){m("Please select a protein view");return}try{t.connectToStructure(i,s,l),r()}catch(p){m(p instanceof Error?p.message:String(p))}};return fe.default.createElement(aA.Dialog,{maxWidth:"sm",title:"Connect to Protein Structure",open:!0,onClose:r},fe.default.createElement(ye.DialogContent,null,d.length===0?fe.default.createElement(ye.Typography,{color:"textSecondary"},"No protein views are currently open. Please open a protein structure view first."):fe.default.createElement(fe.default.Fragment,null,fe.default.createElement(ye.FormControl,{fullWidth:!0,className:n.formControl},fe.default.createElement(ye.InputLabel,null,"Protein View"),fe.default.createElement(ye.Select,{value:i,label:"Protein View",onChange:p=>{a(p.target.value),c(0)}},d.map(p=>fe.default.createElement(ye.MenuItem,{key:p.id,value:p.id},p.displayName??`ProteinView ${p.id}`)))),E.length>1?fe.default.createElement(ye.FormControl,{fullWidth:!0,className:n.formControl},fe.default.createElement(ye.InputLabel,null,"Structure"),fe.default.createElement(ye.Select,{value:s,label:"Structure",onChange:p=>{c(p.target.value)}},E.map((p,w)=>fe.default.createElement(ye.MenuItem,{key:w,value:w},p.url??`Structure ${w+1}`)))):null,fe.default.createElement(ye.FormControl,{fullWidth:!0,className:n.formControl},fe.default.createElement(ye.InputLabel,null,"MSA Row"),fe.default.createElement(ye.Select,{value:l,label:"MSA Row",onChange:p=>{A(p.target.value)}},x.map(p=>fe.default.createElement(ye.MenuItem,{key:p,value:p},p)))),u?fe.default.createElement(aA.ErrorMessage,{error:u}):null)),fe.default.createElement(ye.DialogActions,null,fe.default.createElement(ye.Button,{onClick:r},"Cancel"),fe.default.createElement(ye.Button,{onClick:I,variant:"contained",disabled:d.length===0||!i},"Connect")))}),d3=f3});var qv=j((iW,jv)=>{jv.exports=JBrowseExports["@jbrowse/core/data_adapters/BaseAdapter"]});var Yv={};$e(Yv,{default:()=>cA});var Jv,Vv,cA,Wv=h(()=>{"use strict";Jv=f(jo()),Vv=f(qv());Dx();cA=class extends Vv.BaseAdapter{async configurePre(){let t=this.getSubAdapter;if(t)return(await t({...(0,Jv.readConfObject)(this.config),type:"BgzipFastaAdapter"})).dataAdapter;throw new Error("no get subadapter")}configure(){return this.configureP??=this.configurePre().catch(t=>{throw this.configureP=void 0,t}),this.configureP}async getMSARefs(){return this.refNamesP??=this.configure().then(t=>t.getRefNames()).catch(t=>{throw this.refNamesP=void 0,t}),this.refNamesP}getMsaRegex(){return new RegExp(this.getConf("msaRegex"))}refNameToMsaId(t){return t.split(this.getMsaRegex())[0]}async getMSAList(){let t=await this.getMSARefs();return[...new Set(t.map(n=>this.refNameToMsaId(n)))]}async getMSA(t){let r=await this.configure(),o=(await r.getRefNames()).filter(i=>this.refNameToMsaId(i)===t);return Ad(r.getFeaturesInMultipleRegions(o.map(i=>({refName:i,start:0,end:1e9,assemblyName:""}))).pipe(ud()))}}});var c2=j(s2=>{"use strict";var zi=v();function Q3(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var v3=typeof Object.is=="function"?Object.is:Q3,M3=zi.useState,_3=zi.useEffect,T3=zi.useLayoutEffect,k3=zi.useDebugValue;function D3(e,t){var r=t(),n=M3({inst:{value:r,getSnapshot:t}}),o=n[0].inst,i=n[1];return T3(function(){o.value=r,o.getSnapshot=t,dp(o)&&i({inst:o})},[e,r,t]),_3(function(){return dp(o)&&i({inst:o}),e(function(){dp(o)&&i({inst:o})})},[e]),k3(r),r}function dp(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!v3(e,r)}catch{return!0}}function N3(e,t){return t()}var L3=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?N3:D3;s2.useSyncExternalStore=zi.useSyncExternalStore!==void 0?zi.useSyncExternalStore:L3});var A2=j((wW,l2)=>{"use strict";l2.exports=c2()});function _o(e){let{children:t,...r}=e;return kp.default.createElement($2.Link,{...r,target:"_blank",rel:"noreferrer"},t," ",kp.default.createElement(Sc,{fontSize:"small"}))}var kp,$2,QA=h(()=>{"use strict";kp=f(v());mf();$2=f(F())});var yM=j((G$,wM)=>{wM.exports=JBrowseExports["@jbrowse/core/pluggableElementTypes/ViewType"]});var bs,bM,kA,BM=h(()=>{"use strict";bs=f(v()),bM=f(Me()),kA=class extends bs.Component{constructor(t){super(t),this.state={hasError:!1,error:null}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,r){console.error("MsaViewPanel error:",t,r.componentStack)}render(){return this.state.hasError?bs.default.createElement("div",{style:{padding:20}},bs.default.createElement(bM.ErrorMessage,{error:this.state.error})):this.props.children}}});function I5({baseUrl:e,rid:t}){return Up.default.createElement(SM.Typography,null,"RID ",t," (",Up.default.createElement(_o,{href:`${e}?CMD=Get&RID=${t}`},"see status"),")")}var Up,SM,Hp,QM=h(()=>{"use strict";Up=f(v()),SM=f(F());QA();Hp=I5});function x5({baseUrl:e,rid:t,error:r}){return cr.default.createElement("div",null,t?cr.default.createElement(Hp,{rid:t,baseUrl:e}):null,cr.default.createElement(DA.ErrorMessage,{error:r}))}function w5({baseUrl:e,rid:t,progress:r}){let{classes:n}=_M();return cr.default.createElement("div",{className:n.loading},t?cr.default.createElement(Hp,{baseUrl:e,rid:t}):null,cr.default.createElement(jp.Typography,null,r))}var cr,DA,jp,vM,MM,_M,y5,TM,kM=h(()=>{"use strict";cr=f(v()),DA=f(Me()),jp=f(F()),vM=f(H()),MM=f(ve());QM();_M=(0,MM.makeStyles)()(e=>({margin:{padding:20},loading:{background:e.palette.background.paper}}));y5=(0,vM.observer)(function({model:t,baseUrl:r}){let{progress:n,rid:o,error:i}=t,{classes:a}=_M();return cr.default.createElement("div",{className:a.margin},cr.default.createElement(DA.LoadingEllipses,{message:"Running NCBI BLAST",variant:"h5"}),i?cr.default.createElement(x5,{baseUrl:r,rid:o,error:i}):o?cr.default.createElement(w5,{baseUrl:r,rid:o,progress:n}):cr.default.createElement(jp.Typography,null,n||"Initializing BLAST query"))}),TM=y5});var RM={};$e(RM,{default:()=>S5});var To,DM,NM,LM,b5,B5,S5,FM=h(()=>{"use strict";To=f(v()),DM=f(Me()),NM=f(H());Xm();LM=f(ve());BM();kM();b5=(0,LM.makeStyles)()({loadingContainer:{padding:20}}),B5=(0,NM.observer)(function({model:t}){let{classes:r}=b5(),{blastParams:n,loadingStoredData:o}=t;return To.default.createElement(kA,null,To.default.createElement("div",null,n?To.default.createElement(TM,{model:t,baseUrl:n.baseUrl}):o?To.default.createElement("div",{className:r.loadingContainer},To.default.createElement(DM.LoadingEllipses,{message:"Loading MSA data",variant:"h6"})):To.default.createElement(Ul,{model:t})))}),S5=B5});var v5={};$e(v5,{default:()=>NA});var UM=f(fg()),Jp=f(jo()),HM=f(me()),Vp=f(Pt());V();var Eg=f(O(),1),Ig=(0,R.createSvgIcon)((0,Eg.jsx)("path",{d:"M20 2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2M8 20H4v-4h4zm0-6H4v-4h4zm0-6H4V4h4zm6 12h-4v-4h4zm0-6h-4v-4h4zm0-6h-4V4h4zm6 12h-4v-4h4zm0-6h-4v-4h4zm0-6h-4V4h4z"}),"GridOn");var Gv=f(v()),Uv=f(me());var hs=f(v()),Pv=f(H());var np=f(v()),Lv=f(me()),op=f(H());var Bg=f(ve());function Xn(e){return!!e&&typeof e=="object"&&"hoverPosition"in e&&!!e.hoverPosition}function ks({assemblyManager:e,assemblyNames:t,refName:r}){let n=t?.[0];return n?e.get(n)?.getCanonicalRefName(r)??r:r}function bg(e){return/AF-([A-Z0-9]+)-F\d+/.exec(e)?.[1]}var Ds=(0,Bg.makeStyles)()({highlight:{height:"100%",background:"rgba(255,255,0,0.2)",border:"1px solid rgba(50,50,0,0.2)",position:"absolute",zIndex:99,textAlign:"center",pointerEvents:"none",overflow:"hidden"}});var Dv=f(v()),Nv=f(WA()),Vi=f(me()),Ye=f(Pt());function Qg(e){let t=e.strand,r=e.refName;if(t!==-1&&t!==1)throw new Error(`Invalid strand value: ${t}. Expected 1 or -1.`);if(!r)throw new Error("refName is required");let n=new Map;for(let c of e.subfeatures??[])if(c.type==="CDS"&&c.start<c.end){let l=`${c.start}-${c.end}`;n.has(l)||n.set(l,c)}let o=[...n.values()].sort((c,l)=>t*(c.start-l.start)),i={},a={},s={};if(o.length!==0){let l=(3-(o[0]?.phase??0))%3,A=-1;for(let u of o){let m=u.end-u.start;for(let d=0;d<m;d++){let g=t===1?u.start+d:u.end-1-d,E=Math.floor(l++/3);i[g]=E,E!==A?(a[E]=g,s[E]=[g],A=E):s[E].push(g)}}}return{g2p:i,p2g:a,p2gCodon:s,refName:r,strand:t}}var sA=f(fr());Xm();var tp=f(me());function RQ(e,t){let r=e.sciname.replaceAll(" ","_");if(e.taxid&&t?.has(e.taxid)){let n=t.get(e.taxid);n.commonName&&(r=n.commonName.split(" ").map(o=>o.charAt(0).toUpperCase()+o.slice(1).toLowerCase()).join("_"))}return`${e.accession}-${r}`}function FQ(e){return e.replaceAll("-","")}var Yl=f(me());function or(e){return(0,Yl.getContainingView)(e)}function PQ(e){return[...new Set(e.filter(t=>!!t))]}function OQ(e,t){return t.filter(r=>!!r).join(e)}function kF(e){let r=(e.get("subfeatures")??[]).filter(n=>(n.get("type")==="mRNA"||n.get("type")==="transcript")&&n.get("subfeatures")?.some(o=>o.get("type")==="CDS"));return r.length>0?r:[e]}function Vl(e){let t=(0,Yl.sum)(e.get("subfeatures")?.filter(r=>r.get("type")==="CDS").map(r=>r.get("end")-r.get("start"))??[]);return{len:Math.floor(t/3),mod:t%3}}function So(e){return e?.id()??""}function DF(e){return e?PQ([e.id(),e.get("name"),e.get("id"),e.get("transcript_id")]):[]}function fs(e,t){return DF(e).includes(t)}function Wl(e){return e?OQ(" ",[e.get("name"),e.get("id")]):""}function Qo(e){return e?OQ(" ",[e.get("gene_name")??e.get("name"),e.get("id")?`(${e.get("id")})`:void 0]):""}function zl(e,t){return`BLAST - ${Qo(e)} - ${Wl(t)}`}function GQ(e){return kF(e).toSorted((r,n)=>Vl(n).len-Vl(r).len)}function $l(e){return e.replaceAll("*","").replaceAll("&","")}function Kl(e){return PQ([e.id(),e.get("id"),e.get("name"),e.get("gene_id"),e.get("gene_name")])}Mi();var NF="jbrowse-msaview-blast-cache",qn="blast-results",LF=2;async function Xl(){return sn(NF,LF,{upgrade(e,t){t<2&&e.objectStoreNames.contains(qn)&&e.deleteObjectStore(qn),e.objectStoreNames.contains(qn)||e.createObjectStore(qn,{keyPath:"id"})}})}function RF(e,t,r,n){let o=n?`:${n}`:"";return`${t}:${r}${o}:${e}`}async function UQ({proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:a,rid:s,geneId:c,transcriptId:l,transcriptName:A,geneName:u}){let m=await Xl(),g={id:RF(e,t,r,l),proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:a,rid:s,timestamp:Date.now(),geneId:c,transcriptId:l,transcriptName:A,geneName:u};return await m.put(qn,g),g}async function HQ(){return(await(await Xl()).getAll(qn)).toSorted((r,n)=>n.timestamp-r.timestamp)}async function jQ(e){await(await Xl()).delete(qn,e)}async function qQ(){await(await Xl()).clear(qn)}async function JQ(e,t){let r=await fetch(e,t);if(!r.ok)throw new Error(`HTTP ${r.status} fetching ${e} ${await r.text()}`);return r}async function Jr(e,t){return(await JQ(e,t)).text()}async function VQ(e,t){return(await JQ(e,t)).json()}function YQ(e){return new Promise(t=>setTimeout(t,e))}async function Zl({check:e,intervalSeconds:t,onCountdown:r}){for(;;){if(await e())return;for(let n=t;n>0;n--)r(n),await YQ(1e3)}}var tA="https://www.ebi.ac.uk/Tools/services/rest",eA="colin.diesh@gmail.com",FF={clustalo:{params:{email:eA},msaResult:"aln-clustal_num",treeResult:"phylotree"},muscle:{params:{email:eA,format:"clw",tree:"tree1"},msaResult:"fa",treeResult:"phylotree"},kalign:{params:{email:eA,stype:"protein"},msaResult:"fa",treeResult:"phylotree"},mafft:{params:{email:eA,stype:"protein"},msaResult:"fa",treeResult:"phylotree"}};async function PF({onProgress:e,jobId:t,algorithm:r}){await Zl({intervalSeconds:10,onCountdown:n=>{e(`Re-checking MSA status in... ${n}`)},check:async()=>{let n=await Jr(`${tA}/${r}/status/${t}`);if(n.includes("FINISHED"))return!0;if(n.includes("FAILURE"))throw new Error(`Failed to run: jobId ${t}`);return!1}})}async function WQ({algorithm:e,sequence:t,onProgress:r}){let n=FF[e];r(`Launching ${e} MSA...`);let o=await Jr(`${tA}/${e}/run`,{method:"POST",body:new URLSearchParams({...n.params,sequence:t})});return await PF({jobId:o,algorithm:e,onProgress:r}),{msa:await Jr(`${tA}/${e}/result/${o}/${n.msaResult}`),tree:await Jr(`${tA}/${e}/result/${o}/${n.treeResult}`)}}async function Zm({rid:e,baseUrl:t,onProgress:r}){r(`Checking BLAST status for RID: ${e}...`),await GF({rid:e,onProgress:r,baseUrl:t});let n=await VQ(`${t}?CMD=Get&RID=${e}&FORMAT_TYPE=JSON2_S&FORMAT_OBJECT=Alignment`);return{rid:e,hits:n.BlastOutput2[0]?.report.results.search.hits??[]}}async function zQ({query:e,blastDatabase:t,blastProgram:r,baseUrl:n,onProgress:o,onRid:i}){o("Submitting to NCBI BLAST...");let{rid:a}=await OF({query:e,blastDatabase:t,blastProgram:r,baseUrl:n});return i(a),Zm({rid:a,baseUrl:n,onProgress:o})}async function OF({query:e,blastProgram:t,blastDatabase:r,baseUrl:n}){let o=await Jr(n,{method:"POST",body:new URLSearchParams({CMD:"Put",PROGRAM:t==="quick-blastp"?"blastp":t,DATABASE:r,QUERY:e,...r==="nr_cluster_seq"?{CLUSTERED_DB:"on",DB_TYPE:"Experimental Databases"}:{},...t==="quick-blastp"?{BLAST_PROGRAMS:"kmerBlastp"}:{}})}),i=/^ {4}RID = (.*$)/m.exec(o)?.[1],a=/^ {4}RTOE = (.*$)/m.exec(o)?.[1];if(!i)throw new Error("Failed to get RID from BLAST request");return{rid:i,rtoe:a}}async function GF({rid:e,onProgress:t,baseUrl:r}){await Zl({intervalSeconds:20,onCountdown:n=>{t(`Re-checking BLAST status in... ${n}`)},check:async()=>{let n=await Jr(`${r}?CMD=Get&FORMAT_OBJECT=SearchInfo&RID=${e}`),o=/\s+Status=(\S+)/m.exec(n)?.[1],i=/\s+ThereAreHits=yes/m.test(n);if(o==="WAITING")return!1;if(o==="FAILED")throw new Error(`BLAST ${e} failed`);if(o==="READY"){if(i)return!0;throw new Error("No hits found")}throw new Error(`BLAST ${e} returned unexpected status: ${o??"unknown"}`)}})}Mi();var UF="jbrowse-plugin-msaview",HF="colin.diesh@gmail.com",jF="https://eutils.ncbi.nlm.nih.gov/entrez/eutils";function rA(e){let t=new URLSearchParams({...e,tool:UF,email:HF});return`${jF}/efetch.fcgi?${t.toString()}`}var qF="jbrowse-msaview-taxonomy-cache",ds="common-names",JF=2;async function $Q(){return sn(qF,JF,{upgrade(e){e.objectStoreNames.contains(ds)&&e.deleteObjectStore(ds),e.createObjectStore(ds,{keyPath:"taxid"})}})}async function VF(e){let r=(await $Q()).transaction(ds,"readonly"),n=await Promise.all(e.map(o=>r.store.get(o)));return await r.done,n}async function YF(e){let r=(await $Q()).transaction(ds,"readwrite");for(let n of e)await r.store.put(n);await r.done}async function KQ(e){let t=new Map,r=[],n=await VF(e);for(let a=0;a<e.length;a++){let s=e[a],c=n[a];c?t.set(s,{sciname:c.sciname,commonName:c.commonName}):r.push(s)}if(r.length===0)return t;let o=100,i=[];for(let a=0;a<r.length;a+=o){let s=r.slice(a,a+o),c=s.join(",");try{let A=await(await fetch(rA({db:"taxonomy",id:c,retmode:"xml"}))).text(),u=new Map,m=/<Taxon>\s*<TaxId>(\d+)<\/TaxId>/g,d;for(;(d=m.exec(A))!==null;){let g=Number(d[1]),E=d.index,x=1,I=E+d[0].length;for(;x>0&&I<A.length;){let Q=A.indexOf("<Taxon>",I),S=A.indexOf("</Taxon>",I);if(S===-1)break;Q!==-1&&Q<S?(x++,I=Q+7):(x--,I=S+8)}let p=A.slice(E,I),w=u.get(g),y=p.includes("<LineageEx>"),b=w?.includes("<LineageEx>");(!w||y&&!b)&&u.set(g,p)}for(let g of s){let E=u.get(g);if(E){let x=/<GenbankCommonName>(.*?)<\/GenbankCommonName>/.exec(E),I=/<CommonName>(.*?)<\/CommonName>/.exec(E),p=/<ScientificName>(.*?)<\/ScientificName>/.exec(E),w=x?.[1]??I?.[1],y=p?.[1]??"";t.set(g,{sciname:y,commonName:w}),i.push({taxid:g,sciname:y,commonName:w})}}}catch(l){console.error("Failed to fetch taxonomy data:",l)}}return i.length>0&&await YF(i),t}async function XQ({self:e}){let{baseUrl:t,blastDatabase:r,blastProgram:n,msaAlgorithm:o,proteinSequence:i,selectedTranscript:a,rid:s}=e.blastParams,c=$l(i),l,A;if(s){e.setRid(s);let I=await Zm({rid:s,baseUrl:t,onProgress:p=>{e.setProgress(p)}});l=I.hits,A=I.rid}else{let I=await zQ({query:c,blastDatabase:r,blastProgram:n,baseUrl:t,onProgress:p=>{e.setProgress(p)},onRid:p=>{e.setRid(p)}});l=I.hits,A=I.rid}e.setProgress("Fetching species taxonomy info...");let u=l.map(I=>I.description[0]?.taxid).filter(I=>I!==void 0),m=await KQ(u),d={},g=l.map(I=>{let p=I.description[0]??{accession:"unknown",id:"unknown",sciname:"unknown"},w=RQ(p,m),y=FQ(I.hsps[0]?.hseq??"");return d[w]=WF(p,m),`>${w}
70
- ${y}`}),E=await WQ({algorithm:o,sequence:[`>QUERY
71
- ${c}`,...g].join(`
72
- `),onProgress:I=>{e.setProgress(I)}}),x=JSON.stringify(d);return await UQ({proteinSequence:c,blastDatabase:r,blastProgram:n,msaAlgorithm:o,msa:E.msa,tree:E.tree,treeMetadata:x,rid:A,geneId:a?.get("parentId"),transcriptId:a?.id(),transcriptName:a?.get("name")??a?.get("id"),geneName:a?.get("gene_name")??a?.get("parentId")}),{...E,treeMetadata:x}}function WF(e,t){let r={},n=e.taxid?t.get(e.taxid):void 0;return n?.sciname&&(r["Scientific name"]=n.sciname),n?.commonName&&(r["Common name"]=n.commonName),e.accession&&(r.Accession=e.accession),e.id&&(r.ID=e.id),e.title&&(r.Description=e.title),r}qf();var ev=f(_m());async function tv({location:e,name:t}){let r=i=>(0,ev.openLocation)({uri:i,locationType:"UriLocation"}),n=await r(`${e.uri}.idx`).readFile("utf8"),o=zF(n,t);if(o){let a=await new bi({filehandle:r(e.uri),gziFilehandle:r(`${e.uri}.gzi`)}).read(o.length,o.offset);return new TextDecoder().decode(a).trim()}}var ZQ=e=>e.replace(/\.\d+$/,"");function zF(e,t){let r=ZQ(t);for(let n of e.split(`
73
- `)){let[o,i,a]=n.split(" ");if(o&&ZQ(o)===r)return{offset:Number(i),length:Number(a)}}}var rv=f(me());function nv({model:e}){let{hovered:t}=(0,rv.getSession)(e),{querySeqName:r,transcriptToMsaMap:n,connectedView:o,mafRegion:i}=e;if(!o?.initialized||!Xn(t))return;let{coord:a,refName:s}=t.hoverPosition;if(i)return s!==i.refName||!o.assemblyNames.includes(i.assemblyName)||a<i.start||a>=i.end?void 0:e.seqPosToVisibleCol(r,a-i.start);if(n){let c=n.g2p[a];if(c!==void 0)return e.seqPosToVisibleCol(r,c)}}Mi();var $F="jbrowse-msaview-domain-cache",nA="domains",KF=1;async function ov(){return sn($F,KF,{upgrade(e){e.objectStoreNames.contains(nA)||e.createObjectStore(nA,{keyPath:"accession"})}})}async function iv(e){let r=(await ov()).transaction(nA,"readonly"),n=await Promise.all(e.map(o=>r.store.get(o)));return await r.done,n}async function av(e){let r=(await ov()).transaction(nA,"readwrite");for(let n of e)await r.store.put(n);await r.done}function Jn(e,t){return new RegExp(`<${t}>(.*?)</${t}>`,"s").exec(e)?.[1]}function XF(e){let t={},r=/<GBQualifier>([\s\S]*?)<\/GBQualifier>/g,n;for(;(n=r.exec(e))!==null;){let o=Jn(n[1],"GBQualifier_name"),i=Jn(n[1],"GBQualifier_value");o&&i!==void 0&&t[o]===void 0&&(t[o]=i)}return t}function ZF(e){let t=[],r=[],n=/<GBInterval>([\s\S]*?)<\/GBInterval>/g,o;for(;(o=n.exec(e))!==null;){let i=o[1],a=Jn(i,"GBInterval_from"),s=Jn(i,"GBInterval_to"),c=Jn(i,"GBInterval_point");a&&s?(t.push(Number(a)),r.push(Number(s))):c&&(t.push(Number(c)),r.push(Number(c)))}return t.length>0?{start:Math.min(...t),end:Math.max(...r)}:void 0}var e3=2;function t3(e){let t=Jn(e,"GBFeature_key"),r=XF(e),n=r.db_xref,o=ZF(e);if((t==="Region"||t==="Site")&&n?.startsWith("CDD:")&&o&&o.end-o.start+1>=e3){let i=n.replace("CDD:",""),a=t==="Region",s=r.note?.split(/[[(]/)[0]?.trim(),c=a?r.region_name??i:s||r.site_type||"site",l=a?i:`${i}:${c}`;return{signature:{entry:{name:c,description:r.note??c,accession:l}},locations:[o]}}}function r3(e){let t=new Map,r=/<GBSeq>([\s\S]*?)<\/GBSeq>/g,n;for(;(n=r.exec(e))!==null;){let o=n[1],i=[],a=/<GBFeature>([\s\S]*?)<\/GBFeature>/g,s;for(;(s=a.exec(o))!==null;){let c=t3(s[1]);c&&i.push(c)}for(let c of[Jn(o,"GBSeq_accession-version"),Jn(o,"GBSeq_primary-accession")])c&&t.set(c,i)}return t}async function sv(e){let t=[...new Set(e)].filter(Boolean),r=new Map,n=await iv(t),o=[];t.forEach((s,c)=>{let l=n[c];l?r.set(s,l.matches):o.push(s)});let i=[],a=100;for(let s=0;s<o.length;s+=a){let c=o.slice(s,s+a),l=await Jr(rA({db:"protein",id:c.join(","),rettype:"gp",retmode:"xml"})),A=r3(l);for(let u of c){let m=A.get(u)??[];r.set(u,m),i.push({accession:u,matches:m})}}return i.length>0&&await av(i),r}async function cv(e){let t=e.data.treeMetadata;if(!t)throw new Error("No sequence metadata available to look up domains");let r=JSON.parse(t),n=Object.entries(r).map(([a,s])=>({rowName:a,accession:s.Accession})).filter(a=>!!a.accession);if(n.length===0)throw new Error("No NCBI accessions found in alignment rows");e.setProgress(`Fetching protein domains from NCBI for ${n.length} sequences...`);let o=await sv(n.map(a=>a.accession)),i={};for(let{rowName:a,accession:s}of n){let c=o.get(s);c&&c.length>0&&(i[a]={matches:c,xref:[{id:a}]})}if(Object.keys(i).length===0)throw new Error("No CDD domain annotations found for these proteins");e.setDomains(i)}Mi();var n3="jbrowse-msaview-data",o3=1,ms="msa-data";async function ep(){return sn(n3,o3,{upgrade(e){e.objectStoreNames.contains(ms)||e.createObjectStore(ms,{keyPath:"id"}).createIndex("timestamp","timestamp",{unique:!1})}})}function lv(){return`msa-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}async function Av(e,t){try{let r=await ep(),n={id:e,msa:t.msa,tree:t.tree,treeMetadata:t.treeMetadata,timestamp:Date.now()};return await r.put(ms,n),!0}catch(r){return console.warn("Failed to store MSA data:",r),!1}}async function uv(e){try{let r=await(await ep()).get(ms,e);return r?{msa:r.msa,tree:r.tree,treeMetadata:r.treeMetadata}:void 0}catch(t){console.warn("Failed to retrieve MSA data:",t);return}}async function fv(e=10080*60*1e3){try{let t=await ep(),r=Date.now()-e,i=await t.transaction(ms,"readwrite").store.index("timestamp").openCursor(IDBKeyRange.upperBound(r)),a=0;for(;i;)await i.delete(),a++,i=await i.continue();return a}catch(t){return console.warn("Failed to cleanup old MSA data:",t),0}}ps();function mv(e){let{dataStoreId:t,rows:r}=e;t&&r.length===0&&(async()=>{try{e.setLoadingStoredData(!0);let n=await uv(t);n&&(n.msa&&e.setMSA(n.msa),n.tree&&e.setTree(n.tree),n.treeMetadata&&e.setTreeMetadata(n.treeMetadata))}catch(n){console.error("Failed to load MSA data from IndexedDB:",n)}finally{e.setLoadingStoredData(!1)}})()}function pv(e){let{rows:t,dataStoreId:r,isStoringData:n}=e;if(t.length>0&&!r&&!n){if(e.msaFilehandle||e.treeFilehandle)return;let o=e.data.msa,i=e.data.tree;(o||i)&&(e.setIsStoringData(!0),(async()=>{try{let a=lv();await Av(a,{msa:o,tree:i,treeMetadata:e.data.treeMetadata})&&e.setDataStoreId(a)}catch(a){console.error("Failed to store MSA data to IndexedDB:",a)}finally{e.setIsStoringData(!1)}})())}}function gv(e){e.blastParams&&(async()=>{try{e.setProgress("Submitting query"),e.setError(void 0);let t=await XQ({self:e});e.setData(t),e.setBlastParams(void 0)}catch(t){e.setError(t),console.error(t)}finally{e.setProgress("")}})()}function hv(e){let{rows:t,domainsRequested:r,interProAnnotations:n}=e,o=e.data.treeMetadata?.includes('"Accession"')??!1;t.length>0&&o&&!n&&!r&&(e.setDomainsRequested(!0),(async()=>{try{await cv(e)}catch(i){console.error("[msaview-domains] auto-load failed:",i)}finally{e.setProgress("")}})())}function Cv(e){let{init:t}=e;if(t){let{msaUrl:r,msaIndexedLocation:n,msaName:o,querySeqName:i}=t;(async()=>{try{if(e.setError(void 0),r){let a=bg(r);a&&(e.setUniprotId(a),e.setQuerySeqName("query"))}if(i&&e.setQuerySeqName(i),r)e.setMSAFilehandle({uri:r,locationType:"UriLocation"});else if(n&&o){let a=await tv({location:n,name:o});if(a)e.setMSA(a);else throw new Error(`No alignment named ${o} in ${n.uri}`)}e.setInit(void 0)}catch(a){e.setError(a),console.error(a)}})()}}function Ev(e){let t=!1;return()=>{let r=nv({model:e});r!==void 0?(e.setMousePos(r),t=!0):t&&(e.setMousePos(void 0),t=!1)}}function Iv(e){let{mouseCol:t,connectedProteinViews:r}=e;if(r.length!==0)for(let n of r){let o=n.proteinView.structures[n.structureIdx];if(!o)continue;if(t===void 0){o.clearHighlightFromExternal?.();continue}let i=e.getSequenceByRowName(n.msaRowName);if(!i)continue;let a=oA(i,t);if(a===void 0){o.clearHighlightFromExternal?.();continue}let s=n.msaToStructure[a];s===void 0?o.clearHighlightFromExternal?.():o.highlightFromExternal?.(s)}}function xv(e){let{connectedViewId:t,uniprotId:r,rows:n,connectedStructures:o}=e;if(n.length!==0)for(let i of Vn((0,tp.getSession)(e).views))for(let a=0;a<i.structures.length;a++){let s=i.structures[a];if(!(!s||!dv({structure:s,connectedViewId:t,uniprotId:r})||o.some(l=>l.proteinViewId===i.id&&l.structureIdx===a))&&s.structureSequences?.[0])try{e.connectToStructure(i.id,a)}catch(l){console.error("Failed to auto-connect to ProteinView:",l)}}}function wv(e){let t=!1;return()=>{let{connectedViewId:r,transcriptToMsaMap:n,querySeqName:o}=e;if(!r||!n)return;let i=new Set;for(let s of Vn((0,tp.getSession)(e).views))for(let c of s.structures){if(c.connectedViewId!==r)continue;let l=c.hoverGenomeHighlights;if(!l||l.length===0)continue;let{g2p:A}=n;for(let u of l)for(let m=u.start;m<u.end;m++){let d=A[m];if(d!==void 0){let g=e.seqPosToGlobalCol(o,d);i.add(g)}}}let a=Array.from(i).map(s=>e.globalColToVisibleCol(s)).filter(s=>s!==void 0);a.length>0?(e.setHighlightedColumns(a),t=!0):t&&(e.setHighlightedColumns(e.highlightColumns?.length?e.highlightColumns:void 0),t=!1)}}function yv(){fv().catch(e=>{console.error("Failed to cleanup old MSA data:",e)})}ps();function iA({model:e,coord:t}){let{querySeqName:r,transcriptToMsaMap:n,mafRegion:o}=e,i=e.rows.find(s=>s[0]===r)?.[1];if(!i)return;let a=oA(i,t);if(a!==void 0){if(o){let s=o.start+a;return s<o.end?{refName:o.refName,start:s,end:s+1}:void 0}if(n){let{refName:s,p2g:c}=n,l=c[a],A=c[a+1];return l!==void 0&&A!==void 0?{refName:s,start:Math.min(l,A),end:Math.max(l,A)}:void 0}}}var a3={A:{A:4,R:-1,N:-2,D:-2,C:0,Q:-1,E:-1,G:0,H:-2,I:-1,L:-1,K:-1,M:-1,F:-2,P:-1,S:1,T:0,W:-3,Y:-2,V:0,B:-2,Z:-1,X:0,"*":-4},R:{A:-1,R:5,N:0,D:-2,C:-3,Q:1,E:0,G:-2,H:0,I:-3,L:-2,K:2,M:-1,F:-3,P:-2,S:-1,T:-1,W:-3,Y:-2,V:-3,B:-1,Z:0,X:-1,"*":-4},N:{A:-2,R:0,N:6,D:1,C:-3,Q:0,E:0,G:0,H:1,I:-3,L:-3,K:0,M:-2,F:-3,P:-2,S:1,T:0,W:-4,Y:-2,V:-3,B:3,Z:0,X:-1,"*":-4},D:{A:-2,R:-2,N:1,D:6,C:-3,Q:0,E:2,G:-1,H:-1,I:-3,L:-4,K:-1,M:-3,F:-3,P:-1,S:0,T:-1,W:-4,Y:-3,V:-3,B:4,Z:1,X:-1,"*":-4},C:{A:0,R:-3,N:-3,D:-3,C:9,Q:-3,E:-4,G:-3,H:-3,I:-1,L:-1,K:-3,M:-1,F:-2,P:-3,S:-1,T:-1,W:-2,Y:-2,V:-1,B:-3,Z:-3,X:-2,"*":-4},Q:{A:-1,R:1,N:0,D:0,C:-3,Q:5,E:2,G:-2,H:0,I:-3,L:-2,K:1,M:0,F:-3,P:-1,S:0,T:-1,W:-2,Y:-1,V:-2,B:0,Z:3,X:-1,"*":-4},E:{A:-1,R:0,N:0,D:2,C:-4,Q:2,E:5,G:-2,H:0,I:-3,L:-3,K:1,M:-2,F:-3,P:-1,S:0,T:-1,W:-3,Y:-2,V:-2,B:1,Z:4,X:-1,"*":-4},G:{A:0,R:-2,N:0,D:-1,C:-3,Q:-2,E:-2,G:6,H:-2,I:-4,L:-4,K:-2,M:-3,F:-3,P:-2,S:0,T:-2,W:-2,Y:-3,V:-3,B:-1,Z:-2,X:-1,"*":-4},H:{A:-2,R:0,N:1,D:-1,C:-3,Q:0,E:0,G:-2,H:8,I:-3,L:-3,K:-1,M:-2,F:-1,P:-2,S:-1,T:-2,W:-2,Y:2,V:-3,B:0,Z:0,X:-1,"*":-4},I:{A:-1,R:-3,N:-3,D:-3,C:-1,Q:-3,E:-3,G:-4,H:-3,I:4,L:2,K:-3,M:1,F:0,P:-3,S:-2,T:-1,W:-3,Y:-1,V:3,B:-3,Z:-3,X:-1,"*":-4},L:{A:-1,R:-2,N:-3,D:-4,C:-1,Q:-2,E:-3,G:-4,H:-3,I:2,L:4,K:-2,M:2,F:0,P:-3,S:-2,T:-1,W:-2,Y:-1,V:1,B:-4,Z:-3,X:-1,"*":-4},K:{A:-1,R:2,N:0,D:-1,C:-3,Q:1,E:1,G:-2,H:-1,I:-3,L:-2,K:5,M:-1,F:-3,P:-1,S:0,T:-1,W:-3,Y:-2,V:-2,B:0,Z:1,X:-1,"*":-4},M:{A:-1,R:-1,N:-2,D:-3,C:-1,Q:0,E:-2,G:-3,H:-2,I:1,L:2,K:-1,M:5,F:0,P:-2,S:-1,T:-1,W:-1,Y:-1,V:1,B:-3,Z:-1,X:-1,"*":-4},F:{A:-2,R:-3,N:-3,D:-3,C:-2,Q:-3,E:-3,G:-3,H:-1,I:0,L:0,K:-3,M:0,F:6,P:-4,S:-2,T:-2,W:1,Y:3,V:-1,B:-3,Z:-3,X:-1,"*":-4},P:{A:-1,R:-2,N:-2,D:-1,C:-3,Q:-1,E:-1,G:-2,H:-2,I:-3,L:-3,K:-1,M:-2,F:-4,P:7,S:-1,T:-1,W:-4,Y:-3,V:-2,B:-2,Z:-1,X:-2,"*":-4},S:{A:1,R:-1,N:1,D:0,C:-1,Q:0,E:0,G:0,H:-1,I:-2,L:-2,K:0,M:-1,F:-2,P:-1,S:4,T:1,W:-3,Y:-2,V:-2,B:0,Z:0,X:0,"*":-4},T:{A:0,R:-1,N:0,D:-1,C:-1,Q:-1,E:-1,G:-2,H:-2,I:-1,L:-1,K:-1,M:-1,F:-2,P:-1,S:1,T:5,W:-2,Y:-2,V:0,B:-1,Z:-1,X:0,"*":-4},W:{A:-3,R:-3,N:-4,D:-4,C:-2,Q:-2,E:-3,G:-2,H:-2,I:-3,L:-2,K:-3,M:-1,F:1,P:-4,S:-3,T:-2,W:11,Y:2,V:-3,B:-4,Z:-3,X:-2,"*":-4},Y:{A:-2,R:-2,N:-2,D:-3,C:-2,Q:-1,E:-2,G:-3,H:2,I:-1,L:-1,K:-2,M:-1,F:3,P:-3,S:-2,T:-2,W:2,Y:7,V:-1,B:-3,Z:-2,X:-1,"*":-4},V:{A:0,R:-3,N:-3,D:-3,C:-1,Q:-2,E:-2,G:-3,H:-3,I:3,L:1,K:-2,M:1,F:-1,P:-2,S:-2,T:0,W:-3,Y:-1,V:4,B:-3,Z:-2,X:-1,"*":-4},B:{A:-2,R:-1,N:3,D:4,C:-3,Q:0,E:1,G:-1,H:0,I:-3,L:-4,K:0,M:-3,F:-3,P:-2,S:0,T:-1,W:-4,Y:-3,V:-3,B:4,Z:1,X:-1,"*":-4},Z:{A:-1,R:0,N:0,D:1,C:-3,Q:3,E:4,G:-2,H:0,I:-3,L:-3,K:1,M:-1,F:-3,P:-1,S:0,T:-1,W:-3,Y:-2,V:-2,B:1,Z:4,X:-1,"*":-4},X:{A:0,R:-1,N:-1,D:-1,C:-2,Q:-1,E:-1,G:-1,H:-1,I:-1,L:-1,K:-1,M:-1,F:-1,P:-2,S:0,T:0,W:-2,Y:-1,V:-1,B:-1,Z:-1,X:-1,"*":-4},"*":{A:-4,R:-4,N:-4,D:-4,C:-4,Q:-4,E:-4,G:-4,H:-4,I:-4,L:-4,K:-4,M:-4,F:-4,P:-4,S:-4,T:-4,W:-4,Y:-4,V:-4,B:-4,Z:-4,X:-4,"*":1}},bv=a3;function Bv(e,t){return bv[e.toUpperCase()]?.[t.toUpperCase()]??-4}var s3=-10,c3=-.5;function l3(e,t,r=s3,n=c3){let o=e.length,i=t.length,a=[],s=[],c=[];for(let p=0;p<=o;p++){a[p]=[],s[p]=[],c[p]=[];for(let w=0;w<=i;w++)a[p][w]=-1/0,s[p][w]=-1/0,c[p][w]=-1/0}a[0][0]=0;for(let p=1;p<=o;p++)s[p][0]=r+(p-1)*n;for(let p=1;p<=i;p++)c[0][p]=r+(p-1)*n;for(let p=1;p<=o;p++)for(let w=1;w<=i;w++){let y=Bv(e[p-1],t[w-1]);a[p][w]=Math.max(a[p-1][w-1],s[p-1][w-1],c[p-1][w-1])+y,s[p][w]=Math.max(a[p-1][w]+r,s[p-1][w]+n),c[p][w]=Math.max(a[p][w-1]+r,c[p][w-1]+n)}let l="",A="",u=o,m=i,d=a[o][i],g=s[o][i],E=c[o][i],x=Math.max(d,g,E),I=x===d?"M":x===g?"Ix":"Iy";for(;u>0||m>0;)if(I==="M"&&u>0&&m>0){l=e[u-1]+l,A=t[m-1]+A;let p=Bv(e[u-1],t[m-1]),w=a[u-1][m-1],y=s[u-1][m-1],b=a[u][m];b===w+p?I="M":b===y+p?I="Ix":I="Iy",u--,m--}else if(I==="Ix"&&u>0){l=e[u-1]+l,A="-"+A;let p=s[u][m],w=a[u-1][m]+r;I=p===w?"M":"Ix",u--}else if(m>0){l="-"+l,A=t[m-1]+A;let p=c[u][m],w=a[u][m-1]+r;I=p===w?"M":"Iy",m--}else break;return{alignedSeq1:l,alignedSeq2:A,score:x}}function A3(e,t){let r="";for(let n=0;n<e.length;n++){let o=e[n],i=t[n],a=o!=="-"&&i!=="-"&&o.toUpperCase()===i.toUpperCase();r+=a?"|":" "}return r}function Sv(e,t){let{alignedSeq1:r,alignedSeq2:n}=l3(e,t);return{consensus:A3(r,n),alns:[{id:"msa",seq:r},{id:"structure",seq:n}]}}function Qv(e){let t=e.alns[0].seq,r=e.alns[1].seq;if(t.length!==r.length)throw new Error("Aligned sequences must have same length");let n=0,o=0,i=new Map,a=new Map;for(let s=0;s<t.length;s++){let c=t[s],l=r[s];c!=="-"&&l!=="-"?(i.set(n,o),a.set(o,n),n++,o++):c==="-"?o++:n++}return{seq1ToSeq2:i,seq2ToSeq1:a}}ps();var m3=(0,Dv.lazy)(()=>Promise.resolve().then(()=>(kv(),Tv)));function rp(){return Ye.types.compose(Nv.BaseViewModel,Jl(),Ye.types.model("MsaView",{connectedViewId:Ye.types.maybe(Ye.types.string),connectedFeature:Ye.types.frozen(),blastParams:Ye.types.frozen(),querySeqName:"QUERY",uniprotId:Ye.types.maybe(Ye.types.string),zoomToBaseLevel:!1,init:Ye.types.frozen(),connectedStructures:Ye.types.array(Ye.types.frozen()),dataStoreId:Ye.types.maybe(Ye.types.string),mafRegion:Ye.types.frozen()})).volatile(()=>({rid:void 0,progress:"",error:void 0,loadingStoredData:!1,isStoringData:!1,domainsRequested:!1})).views(e=>({getRowByName(t){return e.rows.find(r=>r[0]===t)},getSequenceByRowName(t){return e.rows.find(r=>r[0]===t)?.[1]}})).views(e=>({get transcriptToMsaMap(){return e.connectedFeature?Qg(e.connectedFeature):void 0},get connectedView(){let{views:t}=(0,Vi.getSession)(e);return t.find(r=>r.id===e.connectedViewId)},get connectedProteinViews(){let t=Vn((0,Vi.getSession)(e).views),r=[];for(let n of e.connectedStructures){let o=t.find(i=>i.id===n.proteinViewId);o&&r.push({...n,proteinView:o})}return r}})).views(e=>({get connectedHighlights(){let{mouseCol:t,mouseClickCol:r}=e;return[t===void 0?void 0:iA({model:e,coord:t}),r===void 0?void 0:iA({model:e,coord:r})].filter(n=>n!==void 0)}})).actions(e=>({setZoomToBaseLevel(t){e.zoomToBaseLevel=t},setError(t){e.error=t},setProgress(t){e.progress=t},setRid(t){e.rid=t},setBlastParams(t){e.blastParams=t},setInit(t){e.init=t},setQuerySeqName(t){e.querySeqName=t},setUniprotId(t){e.uniprotId=t},setDataStoreId(t){e.dataStoreId=t},setMafRegion(t){e.mafRegion=t},setLoadingStoredData(t){e.loadingStoredData=t},setIsStoringData(t){e.isStoringData=t},setDomainsRequested(t){e.domainsRequested=t},handleMsaClick(t){let{connectedView:r,zoomToBaseLevel:n}=e,{assemblyManager:o}=(0,Vi.getSession)(e),i=iA({model:e,coord:t});if(!(!i||!r))if(n)r.navTo(i);else{let a=ks({assemblyManager:o,assemblyNames:r.assemblyNames,refName:i.refName});r.centerAt(i.start,a)}},connectToStructure(t,r,n){let o=n??e.querySeqName,i=e.getSequenceByRowName(o);if(!i)throw new Error(`MSA row "${o}" not found`);let a=i.replaceAll("-",""),s=Vn((0,Vi.getSession)(e).views).find(d=>d.id===t);if(!s)throw new Error(`ProteinView "${t}" not found`);let c=s.structures[r];if(!c)throw new Error(`Structure at index ${r} not found`);let l=c.structureSequences?.[0];if(!l)throw new Error("Structure sequence not available");let A=Sv(a,l),{seq1ToSeq2:u}=Qv(A),m={proteinViewId:t,structureIdx:r,msaRowName:o,msaToStructure:Object.fromEntries(u)};e.connectedStructures.push(m)},disconnectFromStructure(t,r){let n=e.connectedStructures.findIndex(o=>o.proteinViewId===t&&o.structureIdx===r);n!==-1&&e.connectedStructures.splice(n,1)},disconnectAllStructures(){e.connectedStructures.clear()}})).actions(e=>{let t=e.setMouseClickPos.bind(e);return{setMouseClickPos(r,n){t(r,n),r!==void 0&&e.handleMsaClick(r)}}}).views(e=>({extraViewMenuItems(){return[{label:"Zoom to base level on click?",checked:e.zoomToBaseLevel,type:"checkbox",onClick:()=>{e.setZoomToBaseLevel(!e.zoomToBaseLevel)}},{label:"Connect to protein structure...",onClick:()=>{(0,Vi.getSession)(e).queueDialog(t=>[m3,{model:e,handleClose:t}])}},...e.connectedStructures.length>0?[{label:"Disconnect from protein structures",onClick:()=>{e.disconnectAllStructures()}}]:[]]}})).actions(e=>({afterCreate(){yv();for(let t of[mv,pv,gv,Cv,Iv,xv,hv])(0,Ye.addDisposer)(e,(0,sA.autorun)(()=>{t(e)}));(0,Ye.addDisposer)(e,(0,sA.autorun)(Ev(e))),(0,Ye.addDisposer)(e,(0,sA.autorun)(wv(e)))}}))}function Yi(e){return e.type==="MsaView"}var p3=(0,op.observer)(function({model:e}){let{hovered:t,views:r}=(0,Lv.getSession)(e);return r.some(o=>Yi(o)&&o.connectedViewId===e.id)&&Xn(t)?np.default.createElement(g3,{model:e,hovered:t}):null}),g3=(0,op.observer)(function({model:e,hovered:t}){let{classes:r}=Ds(),{offsetPx:n}=e,{coord:o,refName:i}=t.hoverPosition,a=e.bpToPx({refName:i,coord:o-1}),s=e.bpToPx({refName:i,coord:o});if(a&&s){let c=Math.max(Math.abs(s.offsetPx-a.offsetPx),4),l=Math.min(a.offsetPx,s.offsetPx)-n;return np.default.createElement("div",{className:r.highlight,style:{left:l,width:c}})}return null}),Rv=p3;var gs=f(v()),ip=f(me()),ap=f(H());var h3=(0,ap.observer)(function({model:t}){let{views:r,hovered:n}=(0,ip.getSession)(t),i=r.filter(Yi).find(a=>a.connectedViewId===t.id)?.connectedHighlights;return!Xn(n)&&i?.length?gs.default.createElement(C3,{model:t,highlights:i}):null}),C3=(0,ap.observer)(function({model:e,highlights:t}){let{classes:r}=Ds(),{assemblyManager:n}=(0,ip.getSession)(e),{offsetPx:o}=e;return gs.default.createElement(gs.default.Fragment,null,t.map((i,a)=>{let s=ks({assemblyManager:n,assemblyNames:e.assemblyNames,refName:i.refName}),c=e.bpToPx({refName:s,coord:i.start}),l=e.bpToPx({refName:s,coord:i.end});if(c&&l){let A=Math.max(Math.abs(l.offsetPx-c.offsetPx),4),u=Math.min(c.offsetPx,l.offsetPx)-o;return gs.default.createElement("div",{key:`${i.refName}-${i.start}-${i.end}-${a}`,className:r.highlight,style:{left:u,width:A}})}return null}))}),Fv=h3;var E3=(0,Pv.observer)(function({model:t}){return hs.default.createElement(hs.default.Fragment,null,hs.default.createElement(Fv,{model:t}),hs.default.createElement(Rv,{model:t}))}),Ov=E3;function sp(e){e.addToExtensionPoint("LinearGenomeView-TracksContainerComponent",(t,{model:r})=>{let{views:n}=(0,Uv.getSession)(r);return n.some(i=>Yi(i)&&i.connectedViewId===r.id)?[...t,Gv.default.createElement(Ov,{key:"highlight_protein_viewer_msaview",model:r})]:t})}var zv=f(WA());var Hv=f(jo());function cp(e){let t=e.getAdapterType("BgzipFastaAdapter");return(0,Hv.ConfigurationSchema)("BgzipFastaMsaAdapter",{msaRegex:{type:"string",defaultValue:"_"}},{baseConfiguration:t?.configSchema})}function lp(e){return e.addAdapterType(()=>new zv.AdapterType({name:"BgzipFastaMsaAdapter",configSchema:cp(e),adapterMetadata:{hiddenFromGUI:!0},getAdapterClass:()=>Promise.resolve().then(()=>(Wv(),Yv)).then(t=>t.default)}))}var TA=f(me());V();var $v=f(O(),1),Kv=(0,R.createSvgIcon)((0,$v.jsx)("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6z"}),"Add");var Lt=f(v()),IM=f(Me()),xM=f(me()),ta=f(F());var ie=f(v()),Mp=f(Me()),T2=f(me()),ir=f(F()),k2=f(H()),D2=f(ve());function Xv({session:e,newViewTitle:t,view:r,feature:n,msaFilehandle:o,treeFilehandle:i,querySeqName:a,data:s}){e.addView("MsaView",{type:"MsaView",displayName:t,connectedViewId:r.id,connectedFeature:n.toJSON(),msaFilehandle:o,treeFilehandle:i,querySeqName:a,data:s})}var Ap=f(v()),Zv=f(F());function I3({children:e,...t}){return Ap.default.createElement("div",null,Ap.default.createElement(Zv.TextField,{...t},e))}var ut=I3;var up=f(v()),e2=f(Me()),t2=f(F()),r2=f(ve()),x3=(0,r2.makeStyles)()({dialogContent:{width:"80em"}});function Ir({error:e,children:t}){let{classes:r}=x3();return up.default.createElement(t2.DialogContent,{className:r.dialogContent},e?up.default.createElement(e2.ErrorMessage,{error:e}):null,t)}var lA=f(v()),Cs=f(F());function mn({onSubmit:e,onCancel:t,submitDisabled:r,submitLabel:n="Submit",cancelLabel:o="Cancel"}){return lA.default.createElement(Cs.DialogActions,null,lA.default.createElement(Cs.Button,{color:"primary",variant:"contained",disabled:r,onClick:()=>{e()}},n),lA.default.createElement(Cs.Button,{color:"secondary",variant:"contained",onClick:()=>{t()}},o))}var xr=f(v()),Wi=f(F()),i2=f(ve());var n2=f(v()),o2=f(ve());var w3=(0,o2.makeStyles)()({textAreaFont:{fontFamily:"Courier New"}});function fp({value:e}){let{classes:t}=w3();return n2.default.createElement(ut,{variant:"outlined",multiline:!0,minRows:5,maxRows:10,fullWidth:!0,value:e,slotProps:{input:{readOnly:!0,classes:{input:t.textAreaFont}}}})}var y3=(0,i2.makeStyles)()({flex:{display:"flex"},minWidth:{minWidth:300},centered:{alignContent:"center",marginLeft:20}});function wr({feature:e,options:t,selectedId:r,selectedTranscript:n,setSelectedId:o,proteinSequence:i,validIds:a}){let{classes:s}=y3(),[c,l]=(0,xr.useState)(!1);return xr.default.createElement(xr.default.Fragment,null,xr.default.createElement("div",{className:s.flex},xr.default.createElement(Wi.TextField,{variant:"outlined",label:`Choose isoform of ${Qo(e)}`,select:!0,className:s.minWidth,value:r,onChange:A=>{o(A.target.value)}},t.map(A=>{let u=a?a.some(g=>fs(A,g)):!0,{len:m,mod:d}=Vl(A);return xr.default.createElement(Wi.MenuItem,{value:So(A),key:A.id(),disabled:!u},Wl(A)," (",m," aa)"," ",d?" (possible fragment)":"",a?u?" (has data)":" (no data)":"")})),xr.default.createElement("div",{className:s.centered},xr.default.createElement(Wi.Button,{variant:"contained",color:"primary",onClick:()=>{l(!c)}},c?"Hide sequence":"Show sequence"))),c?xr.default.createElement(fp,{value:i?`>${Wl(n)}
74
- ${i}`:"Loading..."}):null)}var yA=f(v());var Yn=f(me());function b3(e,t){return e.map(r=>t.slice(r.start,r.end)).join("")}function B3({cds:e,sequence:t,codonTable:r}){let n=b3(e,t),o="";for(let i=0;i<n.length;i+=3)o+=r[n.slice(i,i+3)]??"&";return o}function S3(e,t){return e.map(r=>({...r,start:t-r.end,end:t-r.start})).toSorted((r,n)=>r.start-n.start)}function a2({feature:e,seq:t}){let{subfeatures:r,start:n,strand:o}=e.toJSON(),i=(0,Yn.dedupe)(r?.toSorted((a,s)=>a.start-s.start).map(a=>({...a,start:a.start-n,end:a.end-n})).filter(a=>a.type==="CDS")??[],a=>`${a.start}-${a.end}`);return B3({cds:o===-1?S3(i,t.length):i,sequence:o===-1?(0,Yn.revcom)(t):t,codonTable:(0,Yn.generateCodonTable)(Yn.defaultCodonTable)})}var v2=f(me());var We=f(v(),1),vp=f(A2(),1);var ft=f(v(),1);var Wn={};$e(Wn,{ERROR_REVALIDATE_EVENT:()=>R3,FOCUS_EVENT:()=>u2,MUTATE_EVENT:()=>d2,RECONNECT_EVENT:()=>f2});var u2=0,f2=1,d2=2,R3=3;var m2=Object.prototype.hasOwnProperty;function AA(e,t){var r,n;if(e===t)return!0;if(e&&t&&(r=e.constructor)===t.constructor){if(r===Date)return e.getTime()===t.getTime();if(r===RegExp)return e.toString()===t.toString();if(r===Array){if((n=e.length)===t.length)for(;n--&&AA(e[n],t[n]););return n===-1}if(!r||typeof e=="object"){n=0;for(r in e)if(m2.call(e,r)&&++n&&!m2.call(t,r)||!(r in t)||!AA(e[r],t[r]))return!1;return Object.keys(t).length===n}}return e!==e&&t!==t}var yr=new WeakMap,br=()=>{},qe=br(),$i=Object,J=e=>e===qe,Vt=e=>typeof e=="function",Br=(e,t)=>({...e,...t}),gA=e=>Vt(e.then),mp={},uA={},xp="undefined",Ki=typeof window!=xp,dA=typeof document!=xp,g2=Ki&&"Deno"in window,h2=()=>Ki&&typeof window.requestAnimationFrame!=xp,hA=(e,t)=>{let r=yr.get(e);return[()=>!J(t)&&e.get(t)||mp,n=>{if(!J(t)){let o=e.get(t);t in uA||(uA[t]=o),r[5](t,Br(o,n),o||mp)}},r[6],()=>!J(t)&&t in uA?uA[t]:!J(t)&&e.get(t)||mp]},hp=!0,F3=()=>hp,[Cp,Ep]=Ki&&window.addEventListener?[window.addEventListener.bind(window),window.removeEventListener.bind(window)]:[br,br],P3=()=>{let e=dA&&document.visibilityState;return J(e)||e!=="hidden"},O3=e=>(dA&&document.addEventListener("visibilitychange",e),Cp("focus",e),()=>{dA&&document.removeEventListener("visibilitychange",e),Ep("focus",e)}),G3=e=>{let t=()=>{hp=!0,e()},r=()=>{hp=!1};return Cp("online",t),Cp("offline",r),()=>{Ep("online",t),Ep("offline",r)}},C2={isOnline:F3,isVisible:P3},E2={initFocus:O3,initReconnect:G3},CA=!ft.default.useId,zn=!Ki||g2,wp=e=>h2()?window.requestAnimationFrame(e):setTimeout(e,1),Xi=zn?ft.useEffect:ft.useLayoutEffect,pp=typeof navigator<"u"&&navigator.connection,Ip=!zn&&pp&&(["slow-2g","2g"].includes(pp.effectiveType)||pp.saveData),fA=new WeakMap,U3=e=>$i.prototype.toString.call(e),gp=(e,t)=>e===`[object ${t}]`,H3=0,mA=e=>{let t=typeof e,r=U3(e),n=gp(r,"Date"),o=gp(r,"RegExp"),i=gp(r,"Object"),a,s;if($i(e)===e&&!n&&!o){if(a=fA.get(e),a)return a;if(a=++H3+"~",fA.set(e,a),Array.isArray(e)){for(a="@",s=0;s<e.length;s++)a+=mA(e[s])+",";fA.set(e,a)}if(i){a="#";let c=$i.keys(e).sort();for(;!J(s=c.pop());)J(e[s])||(a+=s+":"+mA(e[s])+",");fA.set(e,a)}}else a=n?e.toJSON():t=="symbol"?e.toString():t=="string"?JSON.stringify(e):""+e;return a},Is=e=>{if(Vt(e))try{e=e()}catch{e=""}let t=e;return e=typeof e=="string"?e:(Array.isArray(e)?e.length:e)?mA(e):"",[e,t]},j3=0,Es=()=>++j3;async function EA(...e){let[t,r,n,o]=e,i=Br({populateCache:!0,throwOnError:!0},typeof o=="boolean"?{revalidate:o}:o||{}),a=i.populateCache,s=i.rollbackOnError,c=i.optimisticData,l=m=>typeof s=="function"?s(m):s!==!1,A=i.throwOnError;if(Vt(r)){let m=r,d=[],g=t.keys();for(let E of g)!/^\$(inf|sub)\$/.test(E)&&m(t.get(E)._k)&&d.push(E);return Promise.all(d.map(u))}return u(r);async function u(m){let[d]=Is(m);if(!d)return;let[g,E]=hA(t,d),[x,I,p,w]=yr.get(t),y=()=>{let Y=x[d];return(Vt(i.revalidate)?i.revalidate(g().data,m):i.revalidate!==!1)&&(delete p[d],delete w[d],Y&&Y[0])?Y[0](2).then(()=>g().data):g().data};if(e.length<3)return y();let b=n,Q,S=!1,k=Es();I[d]=[k,0];let T=!J(c),_=g(),M=_.data,L=_._c,U=J(L)?M:L;if(T&&(c=Vt(c)?c(U,M):c,E({data:c,_c:U})),Vt(b))try{b=b(U)}catch(Y){Q=Y,S=!0}if(b&&gA(b))if(b=await b.catch(Y=>{Q=Y,S=!0}),k!==I[d][0]){if(S)throw Q;return b}else S&&T&&l(Q)&&(a=!0,E({data:U,_c:qe}));if(a&&!S)if(Vt(a)){let Y=a(b,U);E({data:Y,error:qe,_c:qe})}else E({data:b,error:qe,_c:qe});if(I[d][1]=Es(),Promise.resolve(y()).then(()=>{E({_c:qe})}),S){if(A)throw Q;return}return b}}var p2=(e,t)=>{for(let r in e)e[r][0]&&e[r][0](t)},yp=(e,t)=>{if(!yr.has(e)){let r=Br(E2,t),n=Object.create(null),o=EA.bind(qe,e),i=br,a=Object.create(null),s=(A,u)=>{let m=a[A]||[];return a[A]=m,m.push(u),()=>{let d=m.indexOf(u);d>=0&&(m[d]=m[m.length-1],m.pop())}},c=(A,u,m)=>{e.set(A,u);let d=a[A];if(d)for(let g of d)g(u,m)},l=()=>{if(!yr.has(e)&&(yr.set(e,[n,Object.create(null),Object.create(null),Object.create(null),o,c,s]),!zn)){let A=r.initFocus(setTimeout.bind(qe,p2.bind(qe,n,0))),u=r.initReconnect(setTimeout.bind(qe,p2.bind(qe,n,1)));i=()=>{A&&A(),u&&u(),yr.delete(e)}}};return l(),[e,o,l,i]}return[e,yr.get(e)[4]]},q3=(e,t,r,n,o)=>{let i=r.errorRetryCount,a=o.retryCount,s=~~((Math.random()+.5)*(1<<(a<8?a:8)))*r.errorRetryInterval;!J(i)&&a>i||setTimeout(n,s,o)},I2=AA,[IA,x2]=yp(new Map),xA=Br({onLoadingSlow:br,onSuccess:br,onError:br,onErrorRetry:q3,onDiscarded:br,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:Ip?1e4:5e3,focusThrottleInterval:5*1e3,dedupingInterval:2*1e3,loadingTimeout:Ip?5e3:3e3,compare:I2,isPaused:()=>!1,cache:IA,mutate:x2,fallback:{}},C2),bp=(e,t)=>{let r=Br(e,t);if(t){let{use:n,fallback:o}=e,{use:i,fallback:a}=t;n&&i&&(r.use=n.concat(i)),o&&a&&(r.fallback=Br(o,a))}return r},pA=(0,ft.createContext)({}),Bp=e=>{let{value:t}=e,r=(0,ft.useContext)(pA),n=Vt(t),o=(0,ft.useMemo)(()=>n?t(r):t,[n,r,t]),i=(0,ft.useMemo)(()=>n?o:bp(r,o),[n,r,o]),a=o&&o.provider,s=(0,ft.useRef)(qe);a&&!s.current&&(s.current=yp(a(i.cache||IA),o));let c=s.current;return c&&(i.cache=c[0],i.mutate=c[1]),Xi(()=>{if(c)return c[2]&&c[2](),c[3]},[]),(0,ft.createElement)(pA.Provider,Br(e,{value:i}))};var w2="$inf$";var Zi=f(v(),1);var y2=Ki&&window.__SWR_DEVTOOLS_USE__,J3=y2?window.__SWR_DEVTOOLS_USE__:[],V3=()=>{y2&&(window.__SWR_DEVTOOLS_REACT__=Zi.default)},Y3=e=>Vt(e[1])?[e[0],e[1],e[2]||{}]:[e[0],null,(e[1]===null?e[2]:e[1])||{}],W3=()=>{let e=(0,Zi.useContext)(pA);return(0,Zi.useMemo)(()=>Br(xA,e),[e])};var z3=e=>(t,r,n)=>e(t,r&&((...i)=>{let[a]=Is(t),[,,,s]=yr.get(IA);if(a.startsWith(w2))return r(...i);let c=s[a];return J(c)?r(...i):(delete s[a],c)}),n),$3=J3.concat(z3),b2=e=>function(...r){let n=W3(),[o,i,a]=Y3(r),s=bp(n,a),c=e,{use:l}=s,A=(l||[]).concat($3);for(let u=A.length;u--;)c=A[u](c);return c(o,i||s.fetcher||null,s)},B2=(e,t,r)=>{let n=t[e]||(t[e]=[]);return n.push(r),()=>{let o=n.indexOf(r);o>=0&&(n[o]=n[n.length-1],n.pop())}};V3();var K3=()=>{},DW=K3();var Sp=We.default.use||(e=>{switch(e.status){case"pending":throw e;case"fulfilled":return e.value;case"rejected":throw e.reason;default:throw e.status="pending",e.then(t=>{e.status="fulfilled",e.value=t},t=>{e.status="rejected",e.reason=t}),e}}),Qp={dedupe:!0},wA=Promise.resolve(qe);wA.status="fulfilled";wA.value=qe;var X3=()=>br,Z3=(e,t,r)=>{let{cache:n,compare:o,suspense:i,fallbackData:a,revalidateOnMount:s,revalidateIfStale:c,refreshInterval:l,refreshWhenHidden:A,refreshWhenOffline:u,keepPreviousData:m,strictServerPrefetchWarning:d}=r,[g,E,x,I]=yr.get(n),[p,w]=Is(e),y=(0,We.useRef)(!1),b=(0,We.useRef)(!1),Q=(0,We.useRef)(p),S=(0,We.useRef)(t),k=(0,We.useRef)(r),T=()=>k.current,_=()=>T().isVisible()&&T().isOnline(),[M,L,U,Y]=hA(n,p),Ne=(0,We.useRef)({}).current,te=J(a)?J(r.fallback)?qe:r.fallback[p]:a,Pe=(ae,ne)=>{for(let Be in Ne){let Ee=Be;if(Ee==="data"){if(!o(ae[Ee],ne[Ee])&&(!J(ae[Ee])||!o(Do,ne[Ee])))return!1}else if(ne[Ee]!==ae[Ee])return!1}return!0},Dt=!y.current,$n=(0,We.useMemo)(()=>{let ae=M(),ne=Y(),Be=le=>{let ot=Br(le);return delete ot._k,(()=>{if(!p||!t||T().isPaused())return!1;if(Dt&&!J(s))return s;let $r=J(te)?ot.data:te;return i?J($r)||c:J($r)||c})()?{isValidating:!0,isLoading:!0,...ot}:ot},Ee=Be(ae),Rt=ae===ne?Ee:Be(ne),xt=Ee;return[()=>{let le=Be(M());return Pe(le,xt)?(xt.data=le.data,xt.isLoading=le.isLoading,xt.isValidating=le.isValidating,xt.error=le.error,xt):(xt=le,le)},()=>Rt]},[n,p]),lr=(0,vp.useSyncExternalStore)((0,We.useCallback)(ae=>U(p,(ne,Be)=>{Pe(Be,ne)||ae()}),[n,p]),$n[0],$n[1]),re=g[p]&&g[p].length>0,Ar=lr.data,Wr=J(Ar)?te&&gA(te)?Sp(te):te:Ar,ko=lr.error,ra=(0,We.useRef)(Wr),Do=m?J(Ar)?J(ra.current)?Wr:ra.current:Ar:Wr,zr=p&&J(Wr),gn=(0,We.useRef)(null);!zn&&(0,vp.useSyncExternalStore)(X3,()=>(gn.current=!1,gn),()=>(gn.current=!0,gn));let LA=gn.current;d&&LA&&!i&&zr&&console.warn(`Missing pre-initiated data for serialized key "${p}" during server-side rendering. Data fetching should be initiated on the server and provided to SWR via fallback data. You can set "strictServerPrefetchWarning: false" to disable this warning.`);let na=!p||!t||T().isPaused()||re&&!J(ko)?!1:Dt&&!J(s)?s:i?J(Wr)?!1:c:J(Wr)||c,he=Dt&&na,Bs=J(lr.isValidating)?he:lr.isValidating,be=J(lr.isLoading)?he:lr.isLoading,hn=(0,We.useCallback)(async ae=>{let ne=S.current;if(!p||!ne||b.current||T().isPaused())return!1;let Be,Ee,Rt=!0,xt=ae||{},le=!x[p]||!xt.dedupe,ot=()=>CA?!b.current&&p===Q.current&&y.current:p===Q.current,Ft={isValidating:!1,isLoading:!1},$r=()=>{L(Ft)},Lo=()=>{let dt=x[p];dt&&dt[1]===Ee&&delete x[p]},Ro={isValidating:!0};J(M().data)&&(Ro.isLoading=!0);try{if(le&&(L(Ro),r.loadingTimeout&&J(M().data)&&setTimeout(()=>{Rt&&ot()&&T().onLoadingSlow(p,r)},r.loadingTimeout),x[p]=[ne(w),Es()]),[Be,Ee]=x[p],Be=await Be,le&&setTimeout(Lo,r.dedupingInterval),!x[p]||x[p][1]!==Ee)return le&&ot()&&T().onDiscarded(p),!1;Ft.error=qe;let dt=E[p];if(!J(dt)&&(Ee<=dt[0]||Ee<=dt[1]||dt[1]===0))return $r(),le&&ot()&&T().onDiscarded(p),!1;let mt=M().data;Ft.data=o(mt,Be)?mt:Be,le&&ot()&&T().onSuccess(Be,p,r)}catch(dt){Lo();let mt=T(),{shouldRetryOnError:Cn}=mt;mt.isPaused()||(Ft.error=dt,le&&ot()&&(mt.onError(dt,p,mt),(Cn===!0||Vt(Cn)&&Cn(dt))&&(!T().revalidateOnFocus||!T().revalidateOnReconnect||_())&&mt.onErrorRetry(dt,p,mt,Fo=>{let Po=g[p];Po&&Po[0]&&Po[0](Wn.ERROR_REVALIDATE_EVENT,Fo)},{retryCount:(xt.retryCount||0)+1,dedupe:!0})))}return Rt=!1,$r(),!0},[p,n]),Ce=(0,We.useCallback)((...ae)=>EA(n,Q.current,...ae),[]);if(Xi(()=>{S.current=t,k.current=r,J(Ar)||(ra.current=Ar)}),Xi(()=>{if(!p)return;let ae=hn.bind(qe,Qp),ne=0;T().revalidateOnFocus&&(ne=Date.now()+T().focusThrottleInterval);let Ee=B2(p,g,(Rt,xt={})=>{if(Rt==Wn.FOCUS_EVENT){let le=Date.now();T().revalidateOnFocus&&le>ne&&_()&&(ne=le+T().focusThrottleInterval,ae())}else if(Rt==Wn.RECONNECT_EVENT)T().revalidateOnReconnect&&_()&&ae();else{if(Rt==Wn.MUTATE_EVENT)return hn();if(Rt==Wn.ERROR_REVALIDATE_EVENT)return hn(xt)}});return b.current=!1,Q.current=p,y.current=!0,L({_k:w}),na&&(x[p]||(J(Wr)||zn?ae():wp(ae))),()=>{b.current=!0,Ee()}},[p]),Xi(()=>{let ae;function ne(){let Ee=Vt(l)?l(M().data):l;Ee&&ae!==-1&&(ae=setTimeout(Be,Ee))}function Be(){!M().error&&(A||T().isVisible())&&(u||T().isOnline())?hn(Qp).then(ne):ne()}return ne(),()=>{ae&&(clearTimeout(ae),ae=-1)}},[l,A,u,p]),(0,We.useDebugValue)(Do),i){if(!CA&&zn&&zr)throw new Error("Fallback data is required when using Suspense in SSR.");zr&&(S.current=t,k.current=r,b.current=!1);let ae=I[p],ne=!J(ae)&&zr?Ce(ae):wA;if(Sp(ne),!J(ko)&&zr)throw ko;let Be=zr?hn(Qp):wA;!J(Do)&&zr&&(Be.status="fulfilled",Be.value=!0),Sp(Be)}return{mutate:Ce,get data(){return Ne.data=!0,Do},get error(){return Ne.error=!0,ko},get isValidating(){return Ne.isValidating=!0,Bs},get isLoading(){return Ne.isLoading=!0,be}}},NW=$i.defineProperty(Bp,"defaultValue",{value:xA}),vo=b2(Z3);var S2=f(jo());async function Q2({start:e,end:t,refName:r,session:n,assemblyName:o}){let{assemblyManager:i,rpcManager:a}=n,s=await i.waitForAssembly(o);if(!s)throw new Error("assembly not found");let c="getSequence";return(await a.call(c,"CoreGetFeatures",{adapterConfig:(0,S2.getConf)(s,["sequence","adapter"]),sessionId:c,regions:[{start:e,end:t,refName:s.getCanonicalRefName(r),assemblyName:o}]}))[0]?.get("seq")??""}var Mo={revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1,refreshWhenHidden:!1,refreshWhenOffline:!1,shouldRetryOnError:!1};async function e5({feature:e,assemblyName:t,view:r}){let n=(0,v2.getSession)(r),{start:o,end:i,refName:a}=e.toJSON();return{seq:await Q2({start:o,end:i,refName:a,assemblyName:t,session:n})}}function M2({view:e,feature:t}){let r=e?.assemblyNames?.[0],n=t&&r?{feature:t,assemblyName:r,view:e}:void 0,{data:o,error:i}=vo(n?[n.feature.id(),n.assemblyName,"feature-sequence"]:null,()=>e5(n),Mo);return{sequence:o,error:i}}function _2({view:e,feature:t}){let{sequence:r,error:n}=M2({view:e,feature:t});return{proteinSequence:r&&t?a2({seq:r.seq,feature:t}):"",sequence:r,error:n}}function t5(e,t,r){if(r&&r.length>0){let n=t.find(i=>So(i)===e),o=n&&r.some(i=>fs(n,i));if(n&&!o){let i=t.find(a=>r.some(s=>fs(a,s)));return i?So(i):void 0}}}function Vr({feature:e,view:t,validIds:r}){let n=(0,yA.useMemo)(()=>GQ(e),[e]),[o,i]=(0,yA.useState)(()=>So(n[0])),a=t5(o,n,r)??o,s=n.find(A=>So(A)===a),{proteinSequence:c,error:l}=_2({view:t,feature:s});return{options:n,selectedId:a,setSelectedId:i,selectedTranscript:s,proteinSequence:c,error:l,validIds:r}}var r5=(0,D2.makeStyles)()({textAreaFont:{fontFamily:"Courier New"},inputContainer:{marginBottom:30},fileContainer:{maxWidth:500},msaInput:{marginBottom:20},queryNameInput:{marginTop:20},warningAlert:{marginTop:10}}),n5=(0,k2.observer)(function({model:t,feature:r,handleClose:n}){let o=(0,T2.getSession)(t),i=or(t),{classes:a}=r5(),[s,c]=(0,ie.useState)(),[l,A]=(0,ie.useState)("file"),[u,m]=(0,ie.useState)(""),[d,g]=(0,ie.useState)(""),[E,x]=(0,ie.useState)(),[I,p]=(0,ie.useState)(),[w,y]=(0,ie.useState)(""),b=Vr({feature:r,view:i}),{selectedTranscript:Q,error:S}=b;return ie.default.createElement(ie.default.Fragment,null,ie.default.createElement(Ir,{error:s??S},ie.default.createElement(ir.FormControl,{component:"fieldset"},ie.default.createElement(ir.RadioGroup,{row:!0,value:l,onChange:T=>{A(T.target.value)}},ie.default.createElement(ir.FormControlLabel,{value:"file",control:ie.default.createElement(ir.Radio,null),label:"Open files"}),ie.default.createElement(ir.FormControlLabel,{value:"text",control:ie.default.createElement(ir.Radio,null),label:"Paste text"}))),ie.default.createElement("div",{className:a.inputContainer},l==="file"?ie.default.createElement("div",{className:a.fileContainer},ie.default.createElement(Mp.FileSelector,{name:"MSA File .aln (Clustal), .fa/.mfa (aligned FASTA), .stock (Stockholm), etc)",inline:!0,location:E,setLocation:x}),ie.default.createElement(Mp.FileSelector,{name:"Tree file .nh (Newick) or .asn (NCBI COBALT ASN.1)",inline:!0,location:I,setLocation:p})):ie.default.createElement(ie.default.Fragment,null,ie.default.createElement(ut,{variant:"outlined",name:"MSA",multiline:!0,minRows:5,className:a.msaInput,maxRows:10,fullWidth:!0,placeholder:"Paste MSA here",value:u,onChange:T=>{m(T.target.value)}}),ie.default.createElement(ut,{variant:"outlined",name:"Tree",multiline:!0,minRows:5,maxRows:10,fullWidth:!0,placeholder:"Paste newick tree (optional)",value:d,onChange:T=>{g(T.target.value)}}))),ie.default.createElement(wr,{feature:r,...b}),ie.default.createElement(ut,{variant:"outlined",name:"MSA row name",fullWidth:!0,required:!0,className:a.queryNameInput,placeholder:"Row name in MSA that corresponds to the selected transcript",helperText:"Required: Specify the name of the row in your MSA that should be aligned with the selected transcript",value:w,onChange:T=>{y(T.target.value)}}),w.trim()?null:ie.default.createElement(ir.Alert,{severity:"warning",className:a.warningAlert},"Without specifying the MSA row name, clicking on the MSA will not navigate to the corresponding genome position, and hovering highlights will not work.")),ie.default.createElement(mn,{submitDisabled:!Q||l==="file"&&!E||l==="text"&&!u.trim(),onSubmit:()=>{try{Q&&(c(void 0),Xv({session:o,newViewTitle:Qo(Q),view:i,feature:Q,querySeqName:w.trim(),...l==="file"?{msaFilehandle:E,treeFilehandle:I}:{data:{msa:u,tree:d}}}),n())}catch(T){console.error(T),c(T)}},onCancel:n}))}),N2=n5;var Qr=f(v()),iM=f(me());Gd();var aM=f(F()),sM=f(ve());var de=f(v());dm();var Yt=f(F()),Y2=f(H()),W2=f(ve());var nt=f(v()),O2=f(Me());V();var L2=f(O(),1),R2=(0,R.createSvgIcon)((0,L2.jsx)("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6zM19 4h-3.5l-1-1h-5l-1 1H5v2h14z"}),"Delete");var Ct=f(F()),G2=f(H()),U2=f(ve());var _p=f(me());function bA({newViewTitle:e,view:t,feature:r,blastParams:n}){(0,_p.getSession)(t).addView("MsaView",{type:"MsaView",displayName:e,connectedViewId:t.id,connectedFeature:r.toJSON(),drawNodeBubbles:!0,colWidth:10,rowHeight:12,blastParams:n})}function F2({newViewTitle:e,view:t,cached:r}){(0,_p.getSession)(t).addView("MsaView",{type:"MsaView",displayName:e,connectedViewId:t.id,drawNodeBubbles:!0,colWidth:10,rowHeight:12,data:{msa:r.msa,tree:r.tree,treeMetadata:r.treeMetadata}})}function BA(e){let{data:t,error:r,mutate:n}=vo(`cached-blast-${e.join(",")}`,async()=>(await HQ()).filter(s=>s.geneId&&e.includes(s.geneId)),Mo);return{results:t??[],error:r,isLoading:!t&&!r,handleDelete:async a=>{await jQ(a),await n(s=>s?.filter(c=>c.id!==a)??[],!1)},handleClearAll:async()=>{await qQ(),await n([],!1)}}}var o5=(0,U2.makeStyles)()({header:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:8},resultList:{maxHeight:300,overflow:"auto"}});function P2(e){let t=[e.geneName,e.transcriptName!==e.geneName?e.transcriptName:void 0].filter(r=>!!r);return t.length>0?t.join(" - "):e.geneId??e.transcriptId??"Unknown"}var i5=(0,G2.observer)(function({model:e,handleClose:t,feature:r}){let{classes:n}=o5(),o=or(e),[i,a]=(0,nt.useState)(),s=(0,nt.useMemo)(()=>Kl(r),[r]),{results:c,error:l,isLoading:A,handleDelete:u,handleClearAll:m}=BA(s),d=E=>{F2({view:o,cached:E,newViewTitle:`BLAST - ${P2(E)}`}),t()},g=l??i;return g?nt.default.createElement(O2.ErrorMessage,{error:g}):A?nt.default.createElement(Ct.Typography,null,"Loading cached results..."):c.length===0?nt.default.createElement(Ct.Typography,{color:"textSecondary"},"No cached BLAST results found for this gene. Run a BLAST query to cache results."):nt.default.createElement("div",null,nt.default.createElement("div",{className:n.header},nt.default.createElement(Ct.Typography,{variant:"subtitle1"},"Cached BLAST Results (",c.length,")"),nt.default.createElement(Ct.Button,{size:"small",color:"error",onClick:async()=>{try{a(void 0),await m()}catch(E){a(E)}}},"Clear All")),nt.default.createElement(Ct.List,{dense:!0,className:n.resultList},c.map(E=>nt.default.createElement(Ct.ListItem,{key:E.id,disablePadding:!0,secondaryAction:nt.default.createElement(Ct.IconButton,{edge:"end",size:"small",onClick:async x=>{x.stopPropagation();try{a(void 0),await u(E.id)}catch(I){a(I)}}},nt.default.createElement(R2,{fontSize:"small"}))},nt.default.createElement(Ct.ListItemButton,{onClick:()=>{d(E)}},nt.default.createElement(Ct.ListItemText,{primary:`${P2(E)} - ${E.blastDatabase}/${E.blastProgram} (${E.msaAlgorithm})`,secondary:`${new Date(E.timestamp).toLocaleString()} - Seq: ${E.proteinSequence.slice(0,30)}...`}))))))}),H2=i5;var Tp=f(v()),V2=f(F());var SA="https://blast.ncbi.nlm.nih.gov/Blast.cgi",j2=["clustalo","muscle","kalign","mafft"],q2=["nr","nr_cluster_seq"],J2=["blastp","quick-blastp"];function xs({value:e,onChange:t,className:r}){return Tp.default.createElement(ut,{variant:"outlined",label:"MSA Algorithm",className:r,select:!0,value:e,onChange:n=>{t(n.target.value)}},j2.map(n=>Tp.default.createElement(V2.MenuItem,{value:n,key:n},n)))}var a5=(0,W2.makeStyles)()({selectField:{width:150},databaseFieldContainer:{display:"flex"},clusterSeqMessage:{marginLeft:4,alignContent:"center"},cachedResultsAccordion:{marginTop:20},infoText:{marginTop:20}}),s5=(0,Y2.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=a5(),a=or(r),[s,c]=(0,de.useState)(),[l,A]=(0,de.useState)("nr"),[u,m]=(0,de.useState)("clustalo"),[d,g]=(0,de.useState)("quick-blastp"),E=(0,de.useMemo)(()=>Kl(t),[t]),{results:x,error:I}=BA(E),p=Vr({feature:t,view:a}),{selectedTranscript:w,proteinSequence:y}=p,b=p.error??s??I;return de.default.createElement(de.default.Fragment,null,de.default.createElement(Ir,{error:b},n,de.default.createElement(ut,{variant:"outlined",label:"BLAST database",className:i.selectField,select:!0,value:l,onChange:Q=>{let S=Q.target.value;A(S),S==="nr_cluster_seq"&&g("blastp")}},q2.map(Q=>de.default.createElement(Yt.MenuItem,{value:Q,key:Q},Q))),de.default.createElement(xs,{className:i.selectField,value:u,onChange:m}),de.default.createElement("div",{className:i.databaseFieldContainer},de.default.createElement(ut,{variant:"outlined",label:"BLAST program",disabled:l==="nr_cluster_seq",className:i.selectField,select:!0,value:d,onChange:Q=>{g(Q.target.value)}},J2.map(Q=>de.default.createElement(Yt.MenuItem,{value:Q,key:Q},Q))),l==="nr_cluster_seq"?de.default.createElement(Yt.Typography,{variant:"subtitle2",className:i.clusterSeqMessage},"Can only use blastp on nr_cluster_seq"):null),de.default.createElement(wr,{feature:t,...p}),de.default.createElement(Yt.Typography,{className:i.infoText},"This panel will automatically submit a query to NCBI. Using blastp can take 10+ minutes to run, quick-blastp is generally a lot faster but is not available for the clustered database. After completion, all the hits will be run through a multiple sequence alignment. Note: we are not able to currently run NCBI COBALT automatically on the BLAST results, even though that is the method NCBI uses on their website. If you need a COBALT alignment, please use the manual approach of submitting BLAST yourself and downloading the resulting files"),x.length>0?de.default.createElement(Yt.Accordion,{className:i.cachedResultsAccordion},de.default.createElement(Yt.AccordionSummary,{expandIcon:de.default.createElement(yl,null)},de.default.createElement(Yt.Typography,null,"Previous BLAST Results")),de.default.createElement(Yt.AccordionDetails,null,de.default.createElement(H2,{model:r,handleClose:e,feature:t}))):null),de.default.createElement(mn,{submitDisabled:!y,onSubmit:()=>{try{w&&(c(void 0),bA({feature:w,view:a,newViewTitle:zl(t,w),blastParams:{baseUrl:o,blastProgram:d,blastDatabase:l,msaAlgorithm:u,selectedTranscript:w,proteinSequence:y}}),e())}catch(Q){console.error(Q),c(Q)}},onCancel:e}))}),z2=s5;var Yr=f(v()),K2=f(me()),ea=f(F()),X2=f(H()),Z2=f(ve());QA();var c5=(0,Z2.makeStyles)()({ncbiLink:{wordBreak:"break-all",margin:30,maxWidth:600},infoText:{marginTop:20}}),l5=(0,X2.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=c5(),a=or(r),s=Vr({feature:t,view:a}),{proteinSequence:c,error:l}=s,A=$l(c),u=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${A}`,m=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${(0,K2.shorten2)(A,10)}`;return Yr.default.createElement(Yr.default.Fragment,null,Yr.default.createElement(Ir,{error:l},n,Yr.default.createElement(wr,{feature:t,...s}),c?Yr.default.createElement("div",{className:i.ncbiLink},"Link to NCBI BLAST: ",Yr.default.createElement(_o,{href:u},m)):null,Yr.default.createElement(ea.Typography,{className:i.infoText},`Click the link above and run your BLAST query, and once you have results, click "Multiple Alignment" at the top of the results page to be redirected to COBALT, NCBI's multiple sequence aligner. Once COBALT completes, you can download an MSA (.aln file) and optionally a Newick tree (.nh) and paste the results into JBrowse`)),Yr.default.createElement(ea.DialogActions,null,Yr.default.createElement(ea.Button,{color:"primary",variant:"contained",onClick:()=>{e()}},"Close")))}),eM=l5;var pn=f(v()),ar=f(F());function Dp({lookupMethod:e,setLookupMethod:t}){return pn.default.createElement(ar.FormControl,{component:"fieldset"},pn.default.createElement(ar.RadioGroup,{row:!0,value:e,onChange:r=>{t(r.target.value)}},pn.default.createElement(ar.FormControlLabel,{value:"automatic",control:pn.default.createElement(ar.Radio,null),label:"Automatic"}),pn.default.createElement(ar.FormControlLabel,{value:"rid",control:pn.default.createElement(ar.Radio,null),label:"Load from RID"}),pn.default.createElement(ar.FormControlLabel,{value:"manual",control:pn.default.createElement(ar.Radio,null),label:"Manual"})))}var Et=f(v()),vA=f(F()),tM=f(H()),rM=f(ve());QA();var A5=(0,rM.makeStyles)()({marginBottom:{marginBottom:16},ridField:{width:150},infoText:{marginTop:20}}),u5=(0,tM.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=A5(),a=or(r),[s,c]=(0,Et.useState)(),[l,A]=(0,Et.useState)(""),[u,m]=(0,Et.useState)("clustalo"),d=Vr({feature:t,view:a}),{selectedTranscript:g,proteinSequence:E}=d,x=d.error??s,I=l.trim();return Et.default.createElement(Et.default.Fragment,null,Et.default.createElement(Ir,{error:x},n,Et.default.createElement(vA.Typography,{variant:"body2",className:i.marginBottom},"Enter the RID (Request ID) from a previously submitted NCBI BLAST query. You can find the RID in the BLAST results page URL or at the top of the results page. RIDs are typically valid for 24-36 hours after submission."),Et.default.createElement(ut,{variant:"outlined",label:"BLAST RID",placeholder:"e.g., ABC12345",fullWidth:!0,className:i.marginBottom,value:l,onChange:p=>{A(p.target.value)}}),I?Et.default.createElement(vA.Typography,{variant:"body2",className:i.marginBottom},Et.default.createElement(_o,{href:`${o}?CMD=Get&RID=${I}`},"View BLAST results on NCBI")):null,Et.default.createElement(xs,{className:i.ridField,value:u,onChange:m}),Et.default.createElement(wr,{feature:t,...d}),Et.default.createElement(vA.Typography,{className:i.infoText},"This will fetch the BLAST results for the provided RID and run them through a multiple sequence alignment. The protein sequence from the selected transcript will be added as the query sequence in the MSA.")),Et.default.createElement(mn,{submitDisabled:!E||!I,onSubmit:()=>{try{g&&I&&(c(void 0),bA({feature:g,view:a,newViewTitle:zl(t,g),blastParams:{baseUrl:o,blastProgram:"blastp",blastDatabase:"nr",msaAlgorithm:u,selectedTranscript:g,proteinSequence:E,rid:I}}),e())}catch(p){console.error(p),c(p)}},onCancel:e}))}),nM=u5;var Sr=f(v()),sr=f(F()),oM=f(ve());var f5=(0,oM.makeStyles)()({urlField:{minWidth:300}});function Np({handleClose:e,baseUrl:t}){let{classes:r}=f5(),[n,o]=(0,Sr.useState)(t);return Sr.default.createElement(sr.Dialog,{open:!0,maxWidth:"lg",onClose:()=>{e()}},Sr.default.createElement(sr.DialogTitle,null,"BLAST Settings"),Sr.default.createElement(sr.DialogContent,null,Sr.default.createElement(ut,{autoFocus:!0,margin:"dense",label:"BLAST Base URL",fullWidth:!0,variant:"outlined",value:n,className:r.urlField,onChange:i=>{o(i.target.value)}}),Sr.default.createElement(sr.Button,{variant:"contained",onClick:()=>{o(SA)}},"Reset")),Sr.default.createElement(sr.DialogActions,null,Sr.default.createElement(sr.Button,{variant:"contained",color:"secondary",onClick:()=>{e()}},"Cancel"),Sr.default.createElement(sr.Button,{color:"primary",variant:"contained",onClick:()=>{e(n)}},"Save")))}var d5=(0,sM.makeStyles)()({settingsButton:{float:"right"}}),m5={automatic:z2,rid:nM,manual:eM};function Lp({handleClose:e,model:t,feature:r}){let[n,o]=(0,Qr.useState)("automatic"),[i,a]=(0,iM.useLocalStorage)("msa-blastRootUrl",SA),[s,c]=(0,Qr.useState)(!1),{classes:l}=d5(),A=m5[n];return Qr.default.createElement(Qr.default.Fragment,null,Qr.default.createElement(aM.IconButton,{className:l.settingsButton,size:"small",onClick:()=>{c(!0)}},Qr.default.createElement(ll,null)),Qr.default.createElement(A,{model:t,feature:r,handleClose:e,baseUrl:i},Qr.default.createElement(Dp,{lookupMethod:n,setLookupMethod:o})),s?Qr.default.createElement(Np,{baseUrl:i,handleClose:u=>{u&&a(u),c(!1)}}):null)}var It=f(v()),ws=f(Me()),_A=f(me()),pM=f(F()),gM=f(H());var hM=f(ve());Sn();function Rp(e,t="",r=5e3){let n=[e];for(;n.length;){let o=n.pop();for(let[i,a]of Object.entries(o)){if(t.length>r)return xd(t);typeof a=="object"&&a!==null?n.push(a):i==="locationType"&&a==="FileHandleLocation"?t+=`${i}-BlobLocation`:i==="handleId"?t+=`blobId-fh-blob-${a}`:t+=`${i}-${a}`}}return`adp-${xd(t)}`}function cM(e={}){return e.type&&e.adapterId?`${e.type}-${e.adapterId}`:`${Rp(e)}`}var lM={};async function p5(e,t,r){let n=r?.type;if(!n)throw new Error(`could not determine adapter type from adapter config snapshot ${JSON.stringify(r)}`);let o=e.getAdapterType(n);if(!o)throw new Error(`unknown data adapter type ${n}`);let i=o.configSchema.create(r,{pluginManager:e}),a=Fp.bind(null,e,t),s=await o.getAdapterClass();return{dataAdapter:new s(i,a,e),sessionIds:new Set([t])}}async function Fp(e,t,r){let n=cM(r);lM[n]??=p5(e,t,r);let o=await lM[n];return o.sessionIds.add(t),o}async function AM(e,t){return(await Fp(e,"msa",t)).dataAdapter}async function uM({config:e,pluginManager:t}){return(await AM(t,e)).getMSAList()}async function fM({config:e,pluginManager:t,msaId:r}){return(await AM(t,e)).getMSA(r)}function dM({session:e,newViewTitle:t,view:r,feature:n,data:o,querySeqName:i}){e.addView("MsaView",{type:"MsaView",displayName:t,treeAreaWidth:200,querySeqName:i,treeWidth:100,drawNodeBubbles:!1,labelsAlignRight:!0,showBranchLen:!1,colWidth:10,rowHeight:12,colorSchemeName:"percent_identity_dynamic",data:o,connectedViewId:r.id,connectedFeature:n.toJSON()})}var mM=f(jo());function MA(e){return(0,mM.readConfObject)(e,["msa","datasets"])}var g5=(0,hM.makeStyles)()({selectedContainer:{marginTop:50}}),h5=(0,gM.observer)(function({model:e,feature:t,handleClose:r}){let n=(0,_A.getSession)(e),o=or(e),{classes:i}=g5(),{pluginManager:a}=(0,_A.getEnv)(e),{assemblyNames:s}=o,[c,l]=(0,It.useState)(),A=MA(n.jbrowse),[u,m]=(0,It.useState)(A?.[0]?.datasetId),d=A?.find(k=>k.datasetId===u),{data:g,isLoading:E,error:x}=vo(d?`${d.datasetId}-msa-list`:null,()=>uM({config:d.adapter,pluginManager:a}),Mo),I=Vr({feature:t,view:o,validIds:g}),{selectedId:p,selectedTranscript:w}=I,{data:y,isLoading:b,error:Q}=vo(p&&d&&g?`${d.datasetId}-${p}-${g.length}-msa`:null,()=>fM({msaId:p,config:d.adapter,pluginManager:a}),Mo),S=x??Q??I.error??c;return It.default.createElement(It.default.Fragment,null,It.default.createElement(Ir,{error:S},It.default.createElement(ut,{select:!0,label:"Select MSA dataset",value:u,onChange:k=>{m(k.target.value)}},A?.map(k=>It.default.createElement(pM.MenuItem,{key:k.datasetId,value:k.datasetId},k.name))),d?It.default.createElement("div",{className:i.selectedContainer},!E&&b?It.default.createElement(ws.LoadingEllipses,{variant:"h6",message:`Loading MSA for (${p})`}):null,E?It.default.createElement(ws.LoadingEllipses,{variant:"h6",message:`Loading available MSAs for (${d.name})`}):null,g?It.default.createElement("div",null,It.default.createElement(ws.SanitizedHTML,{html:d.description}),It.default.createElement(wr,{feature:t,...I})):null):null),It.default.createElement(mn,{submitDisabled:!w||!y?.length,onSubmit:()=>{try{if(w&&y){let k=`${p}_${s[0]}`;dM({session:n,newViewTitle:Qo(w),view:o,querySeqName:k,feature:w,data:{msa:y.map(T=>`>${T.get("refName")}
69
+ .**: ****: ** ***.***`,m1="(((UniProt/Swiss-Prot|P26898|IL2RA_SHEEP:0.24036,(UniProt/Swiss-Prot|P41690|IL2RA_FELCA:0.17737,(UniProt/Swiss-Prot|P01589|IL2RA_HUMAN:0.03906,UniProt/Swiss-Prot|Q5MNY4|IL2RA_MACMU:0.03787):0.13033):0.04964):0.02189,UniProt/Swiss-Prot|P01590|IL2RA_MOUSE:0.23072):0.06814,(((UniProt/Swiss-Prot|Q95118|IL2RG_BOVIN:0.09600,UniProt/Swiss-Prot|P40321|IL2RG_CANFA:0.09845):0.25333,UniProt/Swiss-Prot|Q29416|IL2_CANFA:-0.35055):0.10231,(UniProt/Swiss-Prot|P26896|IL2RB_RAT:0.33631,UniProt/Swiss-Prot|Q7JFM4|IL2_AOTVO:-0.33631):0.10166):0.01607,(UniProt/Swiss-Prot|Q8BZM1|GLMN_MOUSE:0.32378,UniProt/Swiss-Prot|P36835|IL2_CAPHI:-0.32378):0.09999)"});async function kl(e,t,r,n){e.setError(void 0),t&&e.setMSAFilehandle(t),r&&e.setTreeFilehandle(r),n&&e.setGFFFilehandle(n)}var Im=g(()=>{});function Ur({onClick:e,model:t,children:r}){return Mt.default.createElement("li",null,Mt.default.createElement(Dl.Link,{onClick:n=>{t.setError(void 0),n.preventDefault(),e()},href:"#"},Mt.default.createElement(Dl.Typography,{component:"span"},r)))}var Mt,Dl,g1,On,FR,h1,C1=g(()=>{Mt=f(M(),1),Dl=f(P(),1),g1=f(H(),1);p1();Im();On="https://jbrowse.org/genomes/multiple_sequence_alignments",FR=(0,g1.observer)(function({model:e}){function t({msa:r,tree:n,gff:o}){(async()=>{try{await kl(e,r?{uri:r,locationType:"UriLocation"}:void 0,n?{uri:n,locationType:"UriLocation"}:void 0,o?{uri:o,locationType:"UriLocation"}:void 0)}catch(i){console.error(i),e.setError(i)}})()}return Mt.default.createElement("ul",null,Mt.default.createElement(Ur,{model:e,onClick:()=>{t({tree:"https://jbrowse.org/genomes/newicktrees/sarscov2phylo.pub.ft.nh"})}},"230k COVID-19 samples (tree only)"),Mt.default.createElement(Ur,{model:e,onClick:()=>{e.setData({msa:f1,tree:m1})}},"Small protein MSA+tree"),Mt.default.createElement(Ur,{model:e,onClick:()=>{e.setData({msa:d1})}},"Small MSA only"),Mt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${On}/pfam-cov2.stock`})}},"PFAM SARS-CoV2 multi-stockholm"),Mt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${On}/pfam-cov2.stock`,gff:`${On}/pfam-cov2-domains.gff`})}},"PFAM SARS-CoV2 multi-stockholm w/ domains loaded"),Mt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${On}/Lysine.stock`})}},"Lysine stockholm file"),Mt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${On}/PF01601_full.txt`})}},"PF01601 stockholm file (SARS-CoV2 spike protein)"),Mt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${On}/europe_covid.fa`})}},"Europe COVID full genomes (LR883044.1 and 199 other sequences)"),Mt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${On}/rhv_test-only.aligned_with_mafft_auto.fa`,tree:`${On}/rhv_test-only.aligned_with_mafft_auto.nh`})}},"MAFFT+VeryFastTree(17.9k samples)"),Mt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:"https://jbrowse.org/demos/ttc39a.mfa"})}},"Human BLAST results mfa"))}),h1=FR});var me,Gi,hr,E1,PR,I1,x1=g(()=>{me=f(M(),1),Gi=f(Te(),1),hr=f(P(),1),E1=f(H(),1);C1();Im();PR=(0,E1.observer)(function({model:e}){let[t,r]=(0,me.useState)(),[n,o]=(0,me.useState)(),[i,a]=(0,me.useState)(),{error:s}=e;return me.default.createElement(hr.Container,null,me.default.createElement("div",{style:{width:"50%"}},s?me.default.createElement(Gi.ErrorMessage,{error:s}):null,me.default.createElement(hr.Typography,null,"Open an MSA file (stockholm or clustal format) and/or a tree file (newick format)."),me.default.createElement(hr.Typography,{color:"error"},"Note: you can open up just an MSA or just a tree, both are not required. Some MSA files e.g. stockholm format have an embedded tree also and this is fine, and opening a separate tree file is not required.")),me.default.createElement("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",gap:40}},me.default.createElement("div",null,me.default.createElement("div",null,me.default.createElement(hr.Typography,null,"MSA file or URL"),me.default.createElement(Gi.FileSelector,{location:t,setLocation:r})),me.default.createElement("div",null,me.default.createElement(hr.Typography,null,"Tree file or URL"),me.default.createElement(Gi.FileSelector,{location:n,setLocation:o})),me.default.createElement("div",null,me.default.createElement(hr.Typography,null,"InterProScan GFF file or URL (optional)"),me.default.createElement(Gi.FileSelector,{location:i,setLocation:a}))),me.default.createElement("div",null,me.default.createElement(hr.Button,{onClick:()=>{(async()=>{try{await kl(e,t,n,i)}catch(c){console.error(c),e.setError(c)}})()},variant:"contained",color:"primary",disabled:!t&&!n},"Open")),me.default.createElement("div",null,me.default.createElement(hr.Typography,null,"Examples"),me.default.createElement(h1,{model:e}))))}),I1=PR});var Xe,w1,is,Nl,y1,OR,GR,Ll,xm=g(()=>{Xe=f(M(),1),w1=f(Te(),1);fu();is=f(P(),1),Nl=f(H(),1);u1();x1();y1=(0,Nl.observer)(function({model:e}){let{status:t}=e;return Xe.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:12,padding:20}},Xe.default.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Xe.default.createElement("style",null,"@keyframes spinner { to { transform: rotate(360deg); } }"),Xe.default.createElement("circle",{cx:"12",cy:"12",r:"10",stroke:"#ccc",strokeWidth:"3",fill:"none"}),Xe.default.createElement("path",{d:"M12 2a10 10 0 0 1 10 10",stroke:"#1976d2",strokeWidth:"3",fill:"none",strokeLinecap:"round",style:{animation:"spinner 1s linear infinite",transformOrigin:"center"}})),Xe.default.createElement(is.Typography,{variant:"h6"},t?.msg??"Loading..."),t?.onCancel?Xe.default.createElement(is.Button,{variant:"outlined",size:"small",onClick:()=>t.onCancel?.()},"Cancel"):null)}),OR=(0,Nl.observer)(function({model:e,error:t}){return Xe.default.createElement("div",null,Xe.default.createElement(w1.ErrorMessage,{error:t}),Xe.default.createElement(is.Button,{variant:"contained",color:"primary",onClick:()=>{e.reset()}},"Return to import form"))}),GR=(0,Nl.observer)(function({model:e}){let{isLoading:t,dataInitialized:r,msaFilehandle:n,treeFilehandle:o}=e,i=!!(n||o);return Xe.default.createElement("div",null,Xe.default.createElement(Vo,{FallbackComponent:a=>Xe.default.createElement(OR,{model:e,error:a.error})},r?t?Xe.default.createElement(y1,{model:e}):Xe.default.createElement(A1,{model:e}):i||t?Xe.default.createElement(y1,{model:e}):Xe.default.createElement(I1,{model:e})))}),Ll=GR});var B1=j((tq,b1)=>{b1.exports=JBrowseExports["@jbrowse/core/ui/theme"]});var ym=j((rq,S1)=>{S1.exports=JBrowseExports["@jbrowse/core/util/io"]});var v1=j((nq,Q1)=>{Q1.exports=JBrowseExports["@jbrowse/core/util/types/mst"]});function wm({mapSize:e,blockSize:t,viewportPos:r,viewportSize:n}){let o=Math.max(0,Math.min(r,e-n)),i=Math.floor(o/t),a=Math.floor((o+n-1)/t),s=[];for(let c=i;c<=a;c++)s.push(c*t);return s}var M1=g(()=>{});function N1(e,t){let{W:r=0,L:n=0,V:o=0,I:i=0,M:a=0,A:s=0,F:c=0,C:l=0,H:A=0,P:u=0,R:m=0,K:d=0,Q:p=0,E=0,D:x=0,T:I=0,S:C=0,G:w=0,Y:y=0,N:b=0}=e,Q=r+n+o+i+a+s+c+l+A+u+y,S=d+m,k=p+E,T=E+x,_=I+C,v=U=>U/t,L={};return v(Q)>.6&&(L.W=Gn,L.L=Gn,L.V=Gn,L.A=Gn,L.I=Gn,L.M=Gn,L.F=Gn,L.C=Gn),(v(S)>.6||v(d)>.8||v(m)>.8||v(p)>.8)&&(L.K=_1,L.R=_1),(v(S)>.6||v(k)>.5||v(E)>.8||v(p)>.8||v(x)>.8)&&(L.E=UR),(v(S)>.6||v(T)>.5||v(d)>.8||v(m)>.8||v(p)>.8)&&(L.D=HR),(v(b)>.5||v(y)>.85)&&(L.N=T1),(v(S)>.6||v(k)>.6||v(p)>.85||v(E)>.85||v(d)>.85||v(m)>.85)&&(L.Q=T1),(v(Q)>.6||v(_)>.5||v(C)>.85||v(I)>.85)&&(L.S=k1,L.T=k1),v(l)>.85&&(L.C=jR),w>0&&(L.G=JR),u>0&&(L.P=qR),(v(Q)>.6||v(r)>.85||v(y)>.85||v(s)>.85||v(l)>.85||v(u)>.85||v(p)>.85||v(c)>.85||v(A)>.85||v(i)>.85||v(n)>.85||v(a)>.85||v(o)>.85)&&(L.H=D1,L.Y=D1),L}var Gn,_1,UR,HR,T1,k1,jR,JR,qR,D1,L1=g(()=>{Gn="rgb(128,179,230)",_1="#d88",UR="rgb(192, 72, 192)",HR="rgb(204, 77, 204)",T1="#8f8",k1="rgb(26,204,26)",jR="rgb(240, 128, 128)",JR="rgb(240, 144, 72)",qR="rgb(204, 204, 0)",D1="rgb(26, 179, 179)"});var un,R1,bm,VR,YR,F1,P1=g(()=>{un=f(M(),1),R1=f(Ar(),1),bm=f(H(),1);pu();Rs();VR=(0,bm.observer)(function({model:e,offsetX:t,trackHeight:r}){let{blockSize:n,scrollX:o,highResScaleFactor:i}=e,a=(0,un.useRef)(null);return(0,un.useEffect)(()=>{let s=a.current?.getContext("2d");if(s)return(0,R1.autorun)(()=>{let{blockSize:c,colWidth:l,highResScaleFactor:A,conservation:u}=e;s.resetTransform(),s.scale(A,A),s.clearRect(0,0,c,r),s.translate(-t,0),ru({ctx:s,conservation:u,colWidth:l,trackHeight:r,offsetX:t,blockSize:c})})},[e,t,r]),un.default.createElement("canvas",{ref:a,height:r*i,width:n*i,style:{position:"absolute",left:o+t,width:n,height:r}})}),YR=(0,bm.observer)(function({model:e,track:t}){let{blocksX:r,msaAreaWidth:n}=e,o=t.model.height;return un.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>un.default.createElement(VR,{key:i,model:e,offsetX:i,trackHeight:o})),un.default.createElement(dh,{model:e}))}),F1=YR});var Un,O1,Bm,WR,zR,G1,U1=g(()=>{Un=f(M(),1),O1=f(Ar(),1),Bm=f(H(),1);Ho();pm();Rs();WR=(0,Bm.observer)(function({track:e,model:t,offsetX:r}){let{blockSize:n,scrollX:o,colorScheme:i,rowHeight:a,highResScaleFactor:s}=t,{model:{customColorScheme:c,data:l}}=e,A=c??i,u=(0,Un.useRef)(null),{contrastScheme:m}=_l(A);return(0,Un.useEffect)(()=>{let d=u.current?.getContext("2d");if(d)return(0,O1.autorun)(()=>{let{blockSize:p,bgColor:E,colWidth:x,fontSize:I,rowHeight:C,highResScaleFactor:w}=t;d.resetTransform(),d.scale(w,w),d.clearRect(0,0,p,C),d.translate(-r,0),d.textAlign="center",vr(d,I),nu({ctx:d,data:l,colorScheme:A,contrastScheme:m,bgColor:E,colWidth:x,rowHeight:C,offsetX:r,blockSize:p})})},[t,r,m,A,l]),Un.default.createElement("canvas",{ref:u,height:a*s,width:n*s,style:{position:"absolute",left:o+r,width:n,height:a}})}),zR=(0,Bm.observer)(function({track:e,model:t}){let{blocksX:r,msaAreaWidth:n,rowHeight:o}=t;return e.model.data?Un.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>Un.default.createElement(WR,{key:i,track:e,model:t,offsetX:i}))):null}),G1=zR});var as,Rl=g(()=>{as="maeditor"});function H1(e){let t=Math.min(e.length-1,Nd.length-1),r=Nd[t];return Object.fromEntries(e.map((n,o)=>[n,r[o]]))}var j1=g(()=>{Ld()});function J1(e){let t=new Map(e.map(n=>[n.id,{id:`${n.id}`,name:`${n.id}`,parent:n.parent!==void 0?`${n.parent}`:void 0,children:[]}])),r;for(let n of e){let o=t.get(n.id),i=n.parent!==void 0?t.get(n.parent):void 0;i?i.children.push(o):r??=o}if(r===void 0)throw new Error("could not build tree from flat node list: no root found (input was empty or contains a parent cycle)");return r}var q1=g(()=>{});function V1(e,t){Sm||(Sm=document.createElement("canvas"));let r=Sm.getContext("2d");if(!r)throw new Error("no canvas context");return vr(r,t),r.measureText(e).width}var Sm,Y1=g(()=>{Ho()});function W1(){return Hr.types.model({tree:Hr.types.maybe(Hr.types.string),msa:Hr.types.maybe(Hr.types.string),treeMetadata:Hr.types.maybe(Hr.types.string),gff:Hr.types.maybe(Hr.types.string)}).actions(e=>({setTree(t){e.tree=t},setMSA(t){e.msa=t},setTreeMetadata(t){e.treeMetadata=t},setGFF(t){e.gff=t}})).postProcessSnapshot(e=>{let{tree:t,msa:r,treeMetadata:n,gff:o}=e,i=5e4;return{tree:t&&t.length>i?void 0:t,msa:r&&r.length>i?void 0:r,treeMetadata:n&&n.length>i?void 0:n,gff:o&&o.length>i?void 0:o}})}var Hr,z1=g(()=>{Hr=f(Rt(),1)});function K1(){return $1.types.model("DialogQueueSessionMixin",{}).volatile(()=>({queueOfDialogs:[]})).views(e=>({get DialogComponent(){return e.queueOfDialogs[0]?.[0]},get DialogProps(){return e.queueOfDialogs[0]?.[1]}})).actions(e=>({removeActiveDialog(){e.queueOfDialogs=e.queueOfDialogs.slice(1)},queueDialog(t){let[r,n]=t(()=>{this.removeActiveDialog()});e.queueOfDialogs=[...e.queueOfDialogs,[r,n]]}}))}var $1,X1=g(()=>{$1=f(Rt(),1)});function Z1(){return Fl.types.model({bgColor:!0,colorSchemeName:as,msaFormat:Fl.types.maybe(Fl.types.enumeration("MSAFormat",$R))}).actions(e=>({setColorSchemeName(t){e.colorSchemeName=t},setBgColor(t){e.bgColor=t},setMSAFormat(t){e.msaFormat=t}}))}var Fl,$R,eQ=g(()=>{Fl=f(Rt(),1);Rl();$R=["stockholm","a3m","fasta","emf","clustal"]});function tQ(){return Ui.types.model({drawLabels:!0,labelsAlignRight:!1,treeAreaWidth:Ui.types.optional(Ui.types.number,400),treeWidth:Ui.types.optional(Ui.types.number,300),showBranchLen:!0,drawTree:!0,drawNodeBubbles:!0}).actions(e=>({setTreeAreaWidth(t){e.treeAreaWidth=Math.round(t)},setTreeWidth(t){e.treeWidth=Math.round(t)},setLabelsAlignRight(t){e.labelsAlignRight=t},setDrawTree(t){e.drawTree=t},setShowBranchLen(t){e.showBranchLen=t},setDrawNodeBubbles(t){e.drawNodeBubbles=t},setDrawLabels(t){e.drawLabels=t}}))}var Ui,rQ=g(()=>{Ui=f(Rt(),1);Rl()});function Lm(e,t){return oQ.get(e.toUpperCase())?.get(t.toUpperCase())??-4}function XR(e,t){if(e.length!==t.length)throw new Error("Sequences must have the same length (aligned)");let r=0,n=0,o=0,i=0;for(let l=0;l<e.length;l++){let A=e[l],u=t[l];if(A==="-"&&u==="-")continue;if(A==="-"||u==="-"){n++;continue}let m=Lm(A,u);o+=m,i+=Math.max(Lm(A,A),Lm(u,u)),A.toUpperCase()===u.toUpperCase()?r++:n++}if(r+n===0||i<=0)return 1;let s=o/i,c=Math.max(.01,Math.min(1,s));return-Math.log(c)}function ZR(e){let t=e.length,r=[];for(let n=0;n<t;n++){r[n]=[];for(let o=0;o<t;o++)n===o?r[n][o]=0:o<n?r[n][o]=r[o][n]:r[n][o]=XR(e[n][1],e[o][1])}return r}function eF(e,t){let r=e.length;if(r<2)return{name:t[0]};if(r===2){let s=e[0][1];return{left:{name:t[0]},right:{name:t[1]},leftLength:s/2,rightLength:s/2}}let n=[];for(let s=0;s<r;s++)n[s]=[...e[s]];let o=t.map(s=>({name:s})),i=r;for(;i>2;){let s=[];for(let C=0;C<o.length;C++)o[C]!==void 0&&s.push(C);let c=new Map;for(let C of s){let w=0;for(let y of s)C!==y&&(w+=n[C][y]);c.set(C,w)}let l=1/0,A=-1,u=-1;for(let C=0;C<s.length;C++)for(let w=C+1;w<s.length;w++){let y=s[C],b=s[w],Q=(i-2)*n[y][b]-c.get(y)-c.get(b);Q<l&&(l=Q,A=y,u=b)}let m=n[A][u],d=c.get(A),p=c.get(u),E=m/2+(d-p)/(2*(i-2)),x=m-E;E=Math.max(0,E),x=Math.max(0,x);let I={left:o[A],right:o[u],leftLength:E,rightLength:x};for(let C of s)if(C!==A&&C!==u){let w=(n[A][C]+n[u][C]-m)/2;n[A][C]=Math.max(0,w),n[C][A]=Math.max(0,w)}o[u]=void 0,o[A]=I,i--}let a=[];for(let s=0;s<o.length;s++)o[s]!==void 0&&a.push(s);if(a.length===2){let s=a[0],c=a[1],l=n[s][c];return{left:o[s],right:o[c],leftLength:l/2,rightLength:l/2}}return o[a[0]]}function nQ(e,t){return t===void 0?e:`${e}:${t.toFixed(6)}`}function tF(e){let t=[],r=[e];for(;r.length>0;){let o=r.pop();t.push(o),o.left&&r.push(o.left),o.right&&r.push(o.right)}let n=new Map;for(let o=t.length-1;o>=0;o--){let i=t[o];if(i.name!==void 0&&!i.left&&!i.right)n.set(i,`'${i.name.replaceAll("'","''")}'`);else{let a=i.left?nQ(n.get(i.left),i.leftLength):"",s=i.right?nQ(n.get(i.right),i.rightLength):"";n.set(i,`(${a},${s})`)}}return n.get(e)}function iQ(e){if(e.length<2)throw new Error("Need at least 2 sequences to build a tree");let t=e.map(o=>o[0]),r=ZR(e),n=eF(r,t);return tF(n)+";"}var Pl,KR,oQ,aQ=g(()=>{Pl="ARNDCQEGHILKMFPSTWYVBZX*",KR=[[4,-1,-2,-2,0,-1,-1,0,-2,-1,-1,-1,-1,-2,-1,1,0,-3,-2,0,-2,-1,0,-4],[-1,5,0,-2,-3,1,0,-2,0,-3,-2,2,-1,-3,-2,-1,-1,-3,-2,-3,-1,0,-1,-4],[-2,0,6,1,-3,0,0,0,1,-3,-3,0,-2,-3,-2,1,0,-4,-2,-3,3,0,-1,-4],[-2,-2,1,6,-3,0,2,-1,-1,-3,-4,-1,-3,-3,-1,0,-1,-4,-3,-3,4,1,-1,-4],[0,-3,-3,-3,9,-3,-4,-3,-3,-1,-1,-3,-1,-2,-3,-1,-1,-2,-2,-1,-3,-3,-2,-4],[-1,1,0,0,-3,5,2,-2,0,-3,-2,1,0,-3,-1,0,-1,-2,-1,-2,0,3,-1,-4],[-1,0,0,2,-4,2,5,-2,0,-3,-3,1,-2,-3,-1,0,-1,-3,-2,-2,1,4,-1,-4],[0,-2,0,-1,-3,-2,-2,6,-2,-4,-4,-2,-3,-3,-2,0,-2,-2,-3,-3,-1,-2,-1,-4],[-2,0,1,-1,-3,0,0,-2,8,-3,-3,-1,-2,-1,-2,-1,-2,-2,2,-3,0,0,-1,-4],[-1,-3,-3,-3,-1,-3,-3,-4,-3,4,2,-3,1,0,-3,-2,-1,-3,-1,3,-3,-3,-1,-4],[-1,-2,-3,-4,-1,-2,-3,-4,-3,2,4,-2,2,0,-3,-2,-1,-2,-1,1,-4,-3,-1,-4],[-1,2,0,-1,-3,1,1,-2,-1,-3,-2,5,-1,-3,-1,0,-1,-3,-2,-2,0,1,-1,-4],[-1,-1,-2,-3,-1,0,-2,-3,-2,1,2,-1,5,0,-2,-1,-1,-1,-1,1,-3,-1,-1,-4],[-2,-3,-3,-3,-2,-3,-3,-3,-1,0,0,-3,0,6,-4,-2,-2,1,3,-1,-3,-3,-1,-4],[-1,-2,-2,-1,-3,-1,-1,-2,-2,-3,-3,-1,-2,-4,7,-1,-1,-4,-3,-2,-2,-1,-2,-4],[1,-1,1,0,-1,0,0,0,-1,-2,-2,0,-1,-2,-1,4,1,-3,-2,-2,0,0,0,-4],[0,-1,0,-1,-1,-1,-1,-2,-2,-1,-1,-1,-1,-2,-1,1,5,-2,-2,0,-1,-1,0,-4],[-3,-3,-4,-4,-2,-2,-3,-2,-2,-3,-2,-3,-1,1,-4,-3,-2,11,2,-3,-4,-3,-2,-4],[-2,-2,-2,-3,-2,-1,-2,-3,2,-1,-1,-2,-1,3,-3,-2,-2,2,7,-1,-3,-2,-1,-4],[0,-3,-3,-3,-1,-2,-2,-3,-3,3,1,-2,1,-1,-2,-2,0,-3,-1,4,-3,-2,-1,-4],[-2,-1,3,4,-3,0,1,-1,0,-3,-4,0,-3,-3,-2,0,-1,-4,-3,-3,4,1,-1,-4],[-1,0,0,1,-3,3,4,-2,0,-3,-3,1,-1,-3,-1,0,-1,-3,-2,-2,1,4,-1,-4],[0,-1,-1,-1,-2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-2,0,0,-2,-1,-1,-1,-1,-1,-4],[-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,1]],oQ=new Map;for(let e=0;e<Pl.length;e++){let t=new Map;for(let r=0;r<Pl.length;r++)t.set(Pl[r],KR[e][r]);oQ.set(Pl[e],t)}});function Rm(e){let t=[],r=0;for(;r<e.length&&(r=e.indexOf("{",r),r!==-1);){let n=1,o=r+1;for(r++;r<e.length&&n>0;)e[r]==="{"?n++:e[r]==="}"&&n--,r++;n===0&&t.push(e.slice(o,r-1).trim())}return t}function nF(e,t){let r=e.indexOf("{",t);if(r===-1)return;let n=1,o=r+1;for(;o<e.length&&n>0;)e[o]==="{"?n++:e[o]==="}"&&n--,o++;return n===0?e.slice(r+1,o-1).trim():void 0}function sQ(e){let t=e.replace(/\s+/g," ").replace(/\s*{\s*/g,"{").replace(/\s*}\s*/g,"}").replace(/\s*,\s*/g,",").replace(/\s*::\s*=\s*/g,"::=").replace(/^.*?::=/,""),r=oF(t),{fdict:n,nodes:o}=r;if(n===void 0||o===void 0)throw new Error(`invalid BioTreeContainer ASN.1: missing '${n===void 0?"fdict":"nodes"}' section`);let i=Object.fromEntries(Rm(n).flatMap(a=>{let s=iF(a);return s?[[s.id,rF[s.name]||s.name]]:[]}));return Rm(o).flatMap(a=>{let s=aF(a);if(!s)return[];let{features:c=[],...l}=s;return[{...l,...Object.fromEntries(c.map(A=>[i[A.featureid],A.value]))}]})}function oF(e){let t={},r=e.trim();r.startsWith("{")&&r.endsWith("}")&&(r=r.slice(1,-1).trim());let n=0;for(;n<r.length;){for(;n<r.length&&/\s/.test(r[n]);)n++;if(n>=r.length)break;let o=n;for(;n<r.length&&/\w/.test(r[n]);)n++;if(n>=r.length||r[n]!==" "&&r[n]!=="{"){n=r.indexOf(",",n),n=n===-1?r.length:n+1;continue}let i=r.slice(o,n).trim();for(;n<r.length&&/\s/.test(r[n]);)n++;if(n>=r.length||r[n]!=="{"){n=r.indexOf(",",n),n=n===-1?r.length:n+1;continue}let a=1,s=n+1;for(n++;n<r.length&&a>0;)r[n]==="{"?a++:r[n]==="}"&&a--,n++;a===0&&(t[i]=r.slice(s,n-1).trim()),n=r.indexOf(",",n),n=n===-1?r.length:n+1}return t}function iF(e){let t=/id\s+(\d+)/.exec(e),r=/name\s+"((?:[^"\\]|\\.)*)"/s.exec(e);return!t||!r?null:{id:parseInt(t[1],10),name:r[1].replace(/\\"/g,'"').replace(/\\\\/g,"\\")}}function aF(e){let t=/id\s+(\d+)/.exec(e);if(!t)return null;let r=/parent\s+(\d+)/.exec(e),n=e.indexOf("features"),o=n!==-1?nF(e,n):void 0;return{id:parseInt(t[1],10),...r?{parent:parseInt(r[1],10)}:{},features:o?Rm(o).flatMap(i=>{let a=sF(i);return a?[a]:[]}):[]}}function sF(e){let t=/featureid\s+(\d+)/.exec(e),r=/value\s+"((?:[^"\\]|\\.)*)"/s.exec(e);return!t||!r?null:{featureid:parseInt(t[1],10),value:r[1].replace(/\\"/g,'"').replace(/\\\\/g,"\\")}}var rF,cQ=g(()=>{rF={$NODE_COLLAPSED:"collapsed",$NODE_COLOR:"color",$LABEL_BG_COLOR:"color","seq-id":"seqId","seq-title":"seqTitle","align-index":"alignIndex","accession-nbr":"accessionNbr","blast-name":"blastName","common-name":"commonName","leaf-count":"leafCount"}});function Fm(e,t){let r=0,n=0,o=0,i=e.length;for(;n<i&&e[n]===o;)n++,o++;for(;r<t;)for(r++,o++;n<i&&e[n]===o;)n++,o++;return o}function lQ(e,t){let r=0,n=e.length-1;for(;r<=n;){let i=Math.floor((r+n)/2);if(e[i]===t)return;e[i]<t?r=i+1:n=i-1}return t-r}function cF({seq:e,blanks:t,visibleCol:r}){let n=Fm(t,r),o=e.length;if(n<o&&ia(e[n]))return;let i=0;for(let a=0;a<n&&a<o;a++)ia(e[a])||i++;return n<o?i:void 0}function AQ({rowName:e,visibleCol:t,rowMap:r,blanks:n}){let o=r.get(e);return o!==void 0?cF({seq:o,visibleCol:t,blanks:n}):void 0}var uQ=g(()=>{Cn()});function fQ({row:e,seqPos:t}){let r=0,n=0;for(;n<e.length;){if(!ia(e[n])){if(r===t)return n;r++}n++}return t===0?0:n}var dQ=g(()=>{Cn()});function mQ(e,t){let r=URL.createObjectURL(e),n=document.createElement("a");n.href=r,n.download=t,n.click(),setTimeout(()=>{URL.revokeObjectURL(r)},4e4)}var pQ=g(()=>{});function AF(e){return e.startsWith("BioTreeContainer")?J1(sQ(e)):ho(e.startsWith("SEQ")?cl(e).tree:e)}function uF(){return X.types.compose(K1(),tQ(),Z1(),X.types.model("MsaView",{id:yo.ElementId,showDomains:!1,hideGaps:!0,allowedGappyness:100,subFeatureRows:!1,type:X.types.literal("MsaView"),drawMsaLetters:!0,scrollZoom:!1,height:X.types.optional(X.types.number,550),rowHeight:16,scrollY:0,scrollX:0,colWidth:12,treeFilehandle:X.types.maybe(yo.FileLocation),msaFilehandle:X.types.maybe(yo.FileLocation),treeMetadataFilehandle:X.types.maybe(yo.FileLocation),gffFilehandle:X.types.maybe(yo.FileLocation),currentAlignment:0,collapsed:X.types.array(X.types.string),showOnly:X.types.maybe(X.types.string),turnedOffTracks:X.types.map(X.types.boolean),data:X.types.optional(W1(),{tree:"",msa:"",treeMetadata:""}),featureFilters:X.types.map(X.types.boolean),relativeTo:X.types.maybe(X.types.string),highlightColumns:X.types.frozen()})).volatile(()=>({headerHeight:0,status:void 0,highResScaleFactor:typeof window>"u"?1:window.devicePixelRatio,loadingMSA:!1,loadingTree:!1,volatileWidth:void 0,resizeHandleWidth:5,blockSize:500,mouseRow:void 0,mouseCol:void 0,mouseClickRow:void 0,mouseClickCol:void 0,hoveredTreeNode:void 0,highlightedColumns:void 0,minimapHeight:56,conservationTrackHeight:40,marginLeft:20,error:void 0,interProAnnotations:void 0})).actions(e=>({drawRelativeTo(t){e.relativeTo=t},setHideGaps(t){e.hideGaps=t},setAllowedGappyness(t){e.allowedGappyness=t},setLoadingMSA(t){e.loadingMSA=t},setLoadingTree(t){e.loadingTree=t},setWidth(t){e.volatileWidth=t},setHighResScaleFactor(t){e.highResScaleFactor=t},setHeight(t){e.height=t},setError(t){e.error=t},setMousePos(t,r){e.mouseCol=t,e.mouseRow=r},setHighlightedColumns(t){e.highlightedColumns=t},setShowDomains(t){e.showDomains=t},setSubFeatureRows(t){e.subFeatureRows=t},setMouseClickPos(t,r){e.mouseClickCol=t,e.mouseClickRow=r},setRowHeight(t){e.rowHeight=t},setColWidth(t){e.colWidth=t},setScrollY(t){e.scrollY=t},setCurrentAlignment(t){e.currentAlignment=t},toggleCollapsed(t){e.collapsed.includes(t)?e.collapsed.remove(t):e.collapsed.push(t)},setShowOnly(t){e.showOnly=t},setData(t){e.data=(0,X.cast)(t)},setMSAFilehandle(t){e.msaFilehandle=t},setTreeFilehandle(t){e.treeFilehandle=t},setGFFFilehandle(t){e.gffFilehandle=t},setMSA(t){e.data.setMSA(t)},setTree(t){e.data.setTree(t)},setTreeMetadata(t){e.data.setTreeMetadata(t)}})).views(e=>({get hideGapsEffective(){return e.hideGaps&&(e.collapsed.length>0||e.allowedGappyness<100)},get realAllowedGappyness(){return this.hideGapsEffective?e.allowedGappyness:100},get actuallyShowDomains(){return e.showDomains&&!!e.interProAnnotations},get viewInitialized(){return e.volatileWidth!==void 0},get width(){if(e.volatileWidth===void 0)throw new Error("not initialized");return e.volatileWidth}})).views(e=>({extraViewMenuItems(){return[]},get colorScheme(){return go[e.colorSchemeName]??go[as]},get header(){return this.MSA?.getHeader()??{}},get alignmentNames(){return this.MSA?.alignmentNames??[]},get noTree(){return!!this.tree.noTree},get noDomains(){return!e.interProAnnotations},menuItems(){return[]},get treeMetadata(){return e.data.treeMetadata?JSON.parse(e.data.treeMetadata):{}},get MSA(){let t=e.data.msa;return t?Wd(t,e.currentAlignment,e.msaFormat):null},get numColumns(){return(this.MSA?.getWidth()??0)-this.blanks.length},get tree(){let t=e.data.tree;return t?ki(AF(t)):this.MSA?.getTree()??{noTree:!0,children:[],id:"empty",name:"empty"}},get rowNames(){return this.leaves.map(t=>t.data.name)},get rowNamesSet(){return new Map(this.leaves.map((t,r)=>[t.data.name,r]))},get mouseOverRowName(){let{mouseRow:t}=e;return t===void 0?void 0:this.leaves[t]?.data.name},get hoveredInsertion(){let{mouseCol:t,mouseRow:r}=e;if(t!==void 0&&r!==void 0){let n=this.leaves[r]?.data.name;if(n){let o=this.insertionPositions.get(n)?.find(i=>i.pos===t);if(o)return{rowName:n,col:t,letters:o.letters}}}},get root(){let t=Og(this.tree,r=>r.children);if(Gg(t,r=>r.children.length>0?0:1),Ug(t,(r,n)=>(r.data.length??1)-(n.data.length??1)),e.showOnly){let r=Fs(t,n=>n.data.id===e.showOnly);r&&(t=r)}for(let r of e.collapsed){let n=Fs(t,o=>o.data.id===r);n&&(n.children?Jg(n):n.parent?.children&&(n.parent.children=n.parent.children.filter(o=>o.data.id!==r)))}return t},get msaAreaWidth(){return e.width-e.treeAreaWidth-e.resizeHandleWidth},get treeAreaWidthMinusMargin(){return e.treeAreaWidth-e.marginLeft},get blanks(){let{hideGapsEffective:t,realAllowedGappyness:r}=e;if(!t)return[];let n=this.leaves.map(l=>this.MSA?.getRow(l.data.name)).filter(Je.notEmpty);if(n.length===0)return[];let o=n[0].length,i=n.length,a=Math.ceil(r/100*i),s=new Uint16Array(o);for(let l=0;l<i;l++){let A=n[l];for(let u=0;u<o;u++)A.charCodeAt(u)-45>>>0<=1&&s[u]++}let c=[];for(let l=0;l<o;l++)s[l]>=a&&c.push(l);return c},get blanksSet(){return new Set(this.blanks)},get insertionPositions(){let{blanks:t,rows:r}=this;if(t.length===0||!e.hideGapsEffective)return new Map;let n=new Map;for(let[o,i]of r){let a=Rg(t,i);a.length>0&&n.set(o,a)}return n},get rows(){let t=this.MSA;return this.leaves.map(r=>[r.data.name,t?.getRow(r.data.name)]).filter(r=>!!r[1])},get numRows(){return this.rows.length},get rowMap(){return new Map(this.rows)},get columns(){let t=this.columns2d;return new Map(this.rows.map((r,n)=>[r[0],t[n]]))},get columns2d(){let{hideGapsEffective:t}=e;return this.rows.map(([,r])=>(t?ZA(this.blanks,r):r).toUpperCase())},get fontSize(){return Math.min(Math.max(6,e.rowHeight-3),18)},get colStats(){let t=[],r=this.columns2d;for(let n of r)for(let o=0;o<n.length;o++){let i=t[o]??={},a=n[o];i[a]=(i[a]??0)+1}return t},get colStatsSums(){return this.colStats.map(t=>(0,Je.sum)(Object.values(t)))},get sequenceType(){let t=new Set;for(let a of this.colStats)for(let s of Object.keys(a))s!=="-"&&s!=="."&&t.add(s);let r=new Set(["A","C","G","T","N"]),n=new Set(["A","C","G","U","N"]),o=t.size>0&&[...t].every(a=>r.has(a)),i=t.size>0&&[...t].every(a=>n.has(a));return o?"dna":i?"rna":"amino"},get colConsensus(){let{colStats:t,colStatsSums:r}=this;return t.map((n,o)=>{let i=r[o];if(!i)return{letter:"",color:void 0};let a=0,s="";for(let[l,A]of Object.entries(n))A>a&&l!=="-"&&l!=="."&&(a=A,s=l);let c=a/i;return{letter:s,color:c>.4?`hsl(240, 30%, ${100*Math.max(1-c/3,.3)}%)`:void 0}})},get colClustalX(){let{colStats:t,colStatsSums:r}=this;return t.map((n,o)=>N1(n,r[o]))},get conservation(){let{colStats:t,colStatsSums:r,sequenceType:n}=this,i=Math.log2(n==="amino"?20:4);return t.map((a,s)=>{let c=r[s];if(!c)return 0;let l=(a["-"]??0)+(a["."]??0),A=c-l;if(A===0)return 0;let u=0;for(let[p,E]of Object.entries(a))if(p!=="-"&&p!=="."){let x=E/A;u-=x*Math.log2(x)}let m=l/c;return Math.max(0,1-u/i)*(1-m)})},get hierarchy(){let t=this.root;jg(t,this.totalHeight,e.treeWidth),t.data.length=0;let r=Yg(t),n=r?e.treeWidth/r:0;return Wg(t,0,n),sa(t,o=>{if(o._children){let{min:i,max:a}=qg(o);o.collapsedTipXNear=(o.len??0)+i*n,o.collapsedTipXFar=(o.len??0)+a*n}}),t},get totalHeight(){return aa(this.root).length*e.rowHeight},get leaves(){return aa(this.hierarchy)},get maxBranchLength(){return Vg(this.hierarchy)},get maxDepthToLeaf(){return ca(this.hierarchy)},get allBranchesLength0(){return Hg(this.hierarchy).every(t=>!t.source.data.length)},get showBranchLenEffective(){return this.allBranchesLength0?!1:e.showBranchLen}})).views(e=>({get totalWidth(){return e.numColumns*e.colWidth}})).views(e=>({get dataInitialized(){return(e.data.msa!==""||e.data.tree!=="")&&!e.error},get blocksX(){return wm({viewportSize:e.msaAreaWidth,viewportPos:-e.scrollX,blockSize:e.blockSize,mapSize:e.totalWidth})},get blocksY(){return wm({viewportSize:e.height,viewportPos:-e.scrollY,blockSize:e.blockSize,mapSize:e.totalHeight})}})).views(e=>({get blocks2d(){return e.blocksY.flatMap(t=>e.blocksX.map(r=>[r,t]))},get isLoading(){return e.loadingMSA||e.loadingTree},get maxScrollX(){return Math.min(-e.totalWidth+(e.msaAreaWidth-100),0)},get maxScrollY(){let t=e.height-e.headerHeight-(e.msaAreaWidth<e.totalWidth?e.minimapHeight:0);return Math.min(-e.totalHeight+t,0)},get showMsaLetters(){return e.drawMsaLetters&&e.rowHeight>=5&&e.colWidth>e.rowHeight/2},get showTreeText(){return e.drawLabels&&e.rowHeight>=5}})).actions(e=>({setDrawMsaLetters(t){e.drawMsaLetters=t},setScrollZoom(t){e.scrollZoom=t},setHoveredTreeNode(t){if(t){let r=Fs(e.hierarchy,n=>n.data.id===t);e.hoveredTreeNode=r?{nodeId:t,descendantNames:aa(r).map(n=>n.data.name)}:void 0}else e.hoveredTreeNode=void 0},calculateNeighborJoiningTreeFromMSA(){if(e.rows.length<2)throw new Error("Need at least 2 sequences to build a tree");let t=iQ(e.rows);e.setTree(t)},resetZoom(){e.setColWidth(12),e.setRowHeight(16)},zoomOutHorizontal(){e.colWidth=Math.max(.2,Math.floor(e.colWidth*.75)),e.scrollX=(0,Je.clamp)(e.scrollX,e.maxScrollX,0)},zoomInHorizontal(){e.colWidth=Math.min(80,Math.ceil(e.colWidth*1.5)),e.scrollX=(0,Je.clamp)(e.scrollX,e.maxScrollX,0)},zoomInVertical(){e.rowHeight=Math.min(80,Math.ceil(e.rowHeight*1.5))},zoomOutVertical(){e.rowHeight=Math.max(1,Math.floor(e.rowHeight*.75))},zoomIn(){(0,_t.transaction)(()=>{this.zoomInHorizontal(),this.zoomInVertical()})},zoomOut(){(0,_t.transaction)(()=>{this.zoomOutHorizontal(),this.zoomOutVertical()})},zoomToPos(t,r,n){(0,_t.transaction)(()=>{let o=(-e.scrollX+r)/e.colWidth,i=(-e.scrollY+n)/e.rowHeight;e.colWidth=(0,Je.clamp)(e.colWidth*t,.2,80),e.rowHeight=(0,Je.clamp)(e.rowHeight*t,1,80),e.scrollX=(0,Je.clamp)(r-o*e.colWidth,e.maxScrollX,0);let a=n-i*e.rowHeight,s=Math.max(0,-e.maxScrollY),c=e.totalHeight-s,l=c>0?(0,Je.clamp)(1-s/c,0,1):1;e.scrollY=(0,Je.clamp)(a*(1-l),e.maxScrollY,0)})},doScrollY(t){e.scrollY=(0,Je.clamp)(e.scrollY+t,e.maxScrollY,0)},setDomains(t){e.interProAnnotations=t,e.setShowDomains(!!t)},applyGFFText(t){let r=ll(t);this.setDomains(Al(r))},doScrollX(t){this.setScrollX(e.scrollX+t)},setScrollX(t){e.scrollX=(0,Je.clamp)(t,e.maxScrollX,0)},toggleTrack(t){e.turnedOffTracks.has(t)?e.turnedOffTracks.delete(t):e.turnedOffTracks.set(t,!0)},setStatus(t){e.status=t}})).views(e=>({get labelWidthMap(){let{rowHeight:t,leaves:r,treeMetadata:n,fontSize:o}=e;return t<=5?new Map:new Map(r.map(i=>{let{name:a}=i.data,s=n[a]?.genome??a;return[a,V1(s,o)]}))},get labelsWidth(){let t=this.labelWidthMap;return t.size===0?0:Math.max(...t.values())},get secondaryStructureConsensus(){return e.MSA?.secondaryStructureConsensus},get seqConsensus(){return e.MSA?.seqConsensus},get adapterTrackModels(){let{rowHeight:t,MSA:r,hideGapsEffective:n,blanks:o}=e;return(r?.tracks??[]).filter(a=>!!a.data).map(a=>({model:{...a,data:n?ZA(o,a.data):a.data,height:t},ReactComponent:G1}))},get tracks(){let t={model:{id:"conservation",name:"Conservation",height:e.conservationTrackHeight},ReactComponent:F1};return[...this.adapterTrackModels,t]},get turnedOnTracks(){return this.tracks.filter(t=>!e.turnedOffTracks.has(t.model.id))},get showHorizontalScrollbar(){return e.msaAreaWidth<e.totalWidth},visibleColToRowLetter(t,r){let{rowMap:n,blanks:o}=e;return n.get(t)?.[Fm(o,r)]},visibleColToSeqPos(t,r){return AQ({rowName:t,visibleCol:r,rowMap:e.rowMap,blanks:e.blanks})},visibleColToSeqPosOneBased(t,r){let n=this.visibleColToSeqPos(t,r);return n!==void 0?n+1:void 0},globalColToVisibleCol(t){let{blanks:r,hideGapsEffective:n}=e;return n?lQ(r,t):t},seqPosToGlobalCol(t,r){let n=e.rowMap.get(t);return n?fQ({row:n,seqPos:r}):0},seqPosToVisibleCol(t,r){let n=this.seqPosToGlobalCol(t,r);return this.globalColToVisibleCol(n)}})).views(e=>({get msaAreaHeight(){return e.height-(e.showHorizontalScrollbar?e.minimapHeight:0)-e.headerHeight},get totalTrackAreaHeight(){return(0,Je.sum)(e.turnedOnTracks.map(t=>t.model.height))},get tidyInterProAnnotationTypes(){return new Map(this.tidyInterProAnnotations.map(t=>[t.accession,t]))},get tidyInterProAnnotations(){return e.interProAnnotations?Object.entries(e.interProAnnotations).flatMap(([t,r])=>r.matches.flatMap(({signature:n,locations:o})=>{let{entry:i}=n;return i?o.map(({start:a,end:s})=>({id:t,name:i.name,accession:i.accession,description:i.description,start:a,end:s})):[]})).toSorted((t,r)=>eu(r)-eu(t)):[]},get tidyFilteredInterProAnnotations(){return this.tidyInterProAnnotations.filter(t=>e.featureFilters.get(t.accession))},get tidyFilteredGatheredInterProAnnotations(){return(0,Je.groupBy)(this.tidyFilteredInterProAnnotations,t=>t.id)}})).views(e=>({get showVerticalScrollbar(){return e.msaAreaHeight<e.totalHeight}})).views(e=>({get verticalScrollbarWidth(){return e.showVerticalScrollbar?20:0},get fillPalette(){return H1([...e.tidyInterProAnnotationTypes.keys()])},get strokePalette(){return jo(this.fillPalette,([t,r])=>[t,rt(r).darken(.1).toHex()])},getRowData(t){return{data:e.MSA?.getRowData(t),treeMetadata:e.treeMetadata[t]}}})).actions(e=>({setHeaderHeight(t){e.headerHeight=t},setConservationTrackHeight(t){e.conservationTrackHeight=t},reset(){e.setData({tree:"",msa:""}),e.resetZoom(),e.setError(void 0),e.setScrollY(0),e.setScrollX(0),e.setCurrentAlignment(0),e.setTreeFilehandle(void 0),e.setMSAFilehandle(void 0),e.setGFFFilehandle(void 0),e.setDomains(void 0)},async exportSVG(t){let{renderToSvg:r}=await Promise.resolve().then(()=>(uu(),nh)),n=await r(e,t),o=new Blob([n],{type:"image/svg+xml"});mQ(o,"image.svg")},initFilter(t){e.featureFilters.has(t)||e.featureFilters.set(t,!0)},setFilter(t,r){e.featureFilters.set(t,r)},fit(){this.fitVertically(),this.fitHorizontally()},fitVertically(){e.numRows>0&&(e.rowHeight=(0,Je.clamp)(e.msaAreaHeight/e.numRows,1,80)),e.scrollY=0},fitHorizontally(){e.numColumns>0&&(e.colWidth=(0,Je.clamp)(e.msaAreaWidth/e.numColumns,.2,80)),e.scrollX=0},afterCreate(){e.highlightColumns?.length&&e.setHighlightedColumns(e.highlightColumns),(0,X.addDisposer)(e,(0,_t.autorun)(()=>{for(let n of e.tidyInterProAnnotationTypes.keys())this.initFilter(n)}));let t=0;(0,X.addDisposer)(e,(0,_t.autorun)(async()=>{let{treeFilehandle:n}=e;if(n){let o=++t;try{e.setLoadingTree(!0);let i=await Ja((0,ss.openLocation)(n),a=>{o===t&&e.setStatus(a)});o===t&&(0,_t.transaction)(()=>{e.setTree(i),n.locationType==="BlobLocation"&&e.setTreeFilehandle(void 0)})}catch(i){o===t&&(Tn(i)?e.setTreeFilehandle(void 0):(console.error(i),e.setError(i)))}finally{o===t&&e.setLoadingTree(!1)}}})),(0,X.addDisposer)(e,(0,_t.autorun)(async()=>{let{treeMetadataFilehandle:n}=e;if(n)try{e.setTreeMetadata(await Ja((0,ss.openLocation)(n),o=>{e.setStatus(o)}))}catch(o){Tn(o)||(console.error(o),e.setError(o))}})),(0,X.addDisposer)(e,(0,_t.autorun)(()=>{let n=e.data.gff;if(n)try{e.applyGFFText(n)}catch(o){console.error(o),e.setError(o)}})),(0,X.addDisposer)(e,(0,_t.autorun)(async()=>{let{gffFilehandle:n}=e;if(n)try{let o=await Ja((0,ss.openLocation)(n),i=>{e.setStatus(i)});e.applyGFFText(o),n.locationType==="BlobLocation"&&e.setGFFFilehandle(void 0)}catch(o){Tn(o)?e.setGFFFilehandle(void 0):(console.error(o),e.setError(o))}}));let r=0;(0,X.addDisposer)(e,(0,_t.autorun)(async()=>{let{msaFilehandle:n}=e;if(n){let o=++r;try{e.setLoadingMSA(!0),e.setError(void 0);let i=await Ja((0,ss.openLocation)(n),a=>{o===r&&e.setStatus(a)});o===r&&(0,_t.transaction)(()=>{e.setMSA(i),n.locationType==="BlobLocation"&&e.setMSAFilehandle(void 0)})}catch(i){o===r&&(Tn(i)?e.setMSAFilehandle(void 0):(console.error(i),e.setError(i)))}finally{o===r&&e.setLoadingMSA(!1)}}})),(0,X.addDisposer)(e,(0,_t.autorun)(()=>{e.colorSchemeName.includes("dynamic")&&(e.colStats,e.colStatsSums),e.columns})),(0,X.addDisposer)(e,(0,_t.autorun)(()=>{e.setTreeWidth(Math.max(50,e.treeAreaWidth-e.labelsWidth-10-e.marginLeft))}))}})).postProcessSnapshot(e=>{let t=e,{data:{tree:r,msa:n,treeMetadata:o},showDomains:i,hideGaps:a,allowedGappyness:s,subFeatureRows:c,drawMsaLetters:l,height:A,rowHeight:u,scrollY:m,scrollX:d,colWidth:p,currentAlignment:E,collapsed:x,showOnly:I,turnedOffTracks:C,featureFilters:w,relativeTo:y,bgColor:b,colorSchemeName:Q,drawLabels:S,labelsAlignRight:k,treeAreaWidth:T,treeWidth:_,showBranchLen:v,drawTree:L,drawNodeBubbles:U,...Y}=t,te=Object.fromEntries(Object.entries({showDomains:!1,hideGaps:!0,allowedGappyness:100,subFeatureRows:!1,drawMsaLetters:!0,height:550,rowHeight:16,scrollY:0,scrollX:0,colWidth:12,currentAlignment:0,bgColor:!0,colorSchemeName:as,drawLabels:!0,labelsAlignRight:!1,treeAreaWidth:400,treeWidth:300,showBranchLen:!0,drawTree:!0,drawNodeBubbles:!0}).filter(([Re,Tt])=>t[Re]!==Tt).map(([Re])=>[Re,t[Re]]));return{...Y,data:{...e.treeFilehandle?{}:{tree:r},...e.msaFilehandle?{}:{msa:n},...e.treeMetadataFilehandle?{}:{treeMetadata:o}},...te,...x?.length?{collapsed:x}:{},...I!==void 0?{showOnly:I}:{},...C&&Object.keys(C).length>0?{turnedOffTracks:C}:{},...w&&Object.keys(w).length>0?{featureFilters:w}:{},...y!==void 0?{relativeTo:y}:{}}})}var Je,ss,yo,X,_t,Ol,Hm=g(()=>{Je=f(Ce(),1),ss=f(ym(),1),yo=f(v1(),1),X=f(Rt(),1);Ds();_t=f(Ar(),1);$d();M1();L1();tl();P1();U1();Rl();j1();al();q1();iu();Y1();z1();X1();eQ();rQ();aQ();cQ();uQ();dQ();Cn();pQ();Ol=uF});var jm,fF,dF,BQ=g(()=>{jm=f(M(),1),fF=f(B1(),1),dF=f(ju(),1);Hm();xm()});var Jm=g(()=>{uu();xm();BQ();Hm()});var Sv=j((bY,Bv)=>{Bv.exports=JBrowseExports["@jbrowse/core/data_adapters/BaseAdapter"]});var Mv={};tt(Mv,{default:()=>eA});var Qv,vv,eA,_v=g(()=>{"use strict";Qv=f(Go()),vv=f(Sv());wx();eA=class extends vv.BaseAdapter{async configurePre(){let t=this.getSubAdapter;if(t)return(await t({...(0,Qv.readConfObject)(this.config),type:"BgzipFastaAdapter"})).dataAdapter;throw new Error("no get subadapter")}configure(){return this.configureP??=this.configurePre().catch(t=>{throw this.configureP=void 0,t}),this.configureP}async getMSARefs(){return this.refNamesP??=this.configure().then(t=>t.getRefNames()).catch(t=>{throw this.refNamesP=void 0,t}),this.refNamesP}getMsaRegex(){return new RegExp(this.getConf("msaRegex"))}refNameToMsaId(t){return t.split(this.getMsaRegex())[0]}async getMSAList(){let t=await this.getMSARefs();return[...new Set(t.map(n=>this.refNameToMsaId(n)))]}async getMSA(t){let r=await this.configure(),o=(await r.getRefNames()).filter(i=>this.refNameToMsaId(i)===t);return rd(r.getFeaturesInMultipleRegions(o.map(i=>({refName:i,start:0,end:1e9,assemblyName:""}))).pipe(nd()))}}});var Jv=j(jv=>{"use strict";var qi=M();function e5(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var t5=typeof Object.is=="function"?Object.is:e5,r5=qi.useState,n5=qi.useEffect,o5=qi.useLayoutEffect,i5=qi.useDebugValue;function a5(e,t){var r=t(),n=r5({inst:{value:r,getSnapshot:t}}),o=n[0].inst,i=n[1];return o5(function(){o.value=r,o.getSnapshot=t,np(o)&&i({inst:o})},[e,r,t]),n5(function(){return np(o)&&i({inst:o}),e(function(){np(o)&&i({inst:o})})},[e]),i5(r),r}function np(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!t5(e,r)}catch{return!0}}function s5(e,t){return t()}var c5=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?s5:a5;jv.useSyncExternalStore=qi.useSyncExternalStore!==void 0?qi.useSyncExternalStore:c5});var Vv=j((UY,qv)=>{"use strict";qv.exports=Jv()});function Qo(e){let{children:t,...r}=e;return yp.default.createElement(k2.Link,{...r,target:"_blank",rel:"noreferrer"},t," ",yp.default.createElement(Ic,{fontSize:"small"}))}var yp,k2,EA=g(()=>{"use strict";yp=f(M());af();k2=f(P())});var iM=j((i$,oM)=>{oM.exports=JBrowseExports["@jbrowse/core/pluggableElementTypes/ViewType"]});var Es,aM,bA,sM=g(()=>{"use strict";Es=f(M()),aM=f(Te()),bA=class extends Es.Component{constructor(t){super(t),this.state={hasError:!1,error:null}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,r){console.error("MsaViewPanel error:",t,r.componentStack)}render(){return this.state.hasError?Es.default.createElement("div",{style:{padding:20}},Es.default.createElement(aM.ErrorMessage,{error:this.state.error})):this.props.children}}});function Y5({baseUrl:e,rid:t}){return Tp.default.createElement(cM.Typography,null,"RID ",t," (",Tp.default.createElement(Qo,{href:`${e}?CMD=Get&RID=${t}`},"see status"),")")}var Tp,cM,kp,lM=g(()=>{"use strict";Tp=f(M()),cM=f(P());EA();kp=Y5});function W5({baseUrl:e,rid:t,error:r}){return ar.default.createElement("div",null,t?ar.default.createElement(kp,{rid:t,baseUrl:e}):null,ar.default.createElement(BA.ErrorMessage,{error:r}))}function z5({baseUrl:e,rid:t,progress:r}){let{classes:n}=fM();return ar.default.createElement("div",{className:n.loading},t?ar.default.createElement(kp,{baseUrl:e,rid:t}):null,ar.default.createElement(Dp.Typography,null,r))}var ar,BA,Dp,AM,uM,fM,$5,dM,mM=g(()=>{"use strict";ar=f(M()),BA=f(Te()),Dp=f(P()),AM=f(H()),uM=f(_e());lM();fM=(0,uM.makeStyles)()(e=>({margin:{padding:20},loading:{background:e.palette.background.paper}}));$5=(0,AM.observer)(function({model:t,baseUrl:r}){let{progress:n,rid:o,error:i}=t,{classes:a}=fM();return ar.default.createElement("div",{className:a.margin},ar.default.createElement(BA.LoadingEllipses,{message:"Running NCBI BLAST",variant:"h5"}),i?ar.default.createElement(W5,{baseUrl:r,rid:o,error:i}):o?ar.default.createElement(z5,{baseUrl:r,rid:o,progress:n}):ar.default.createElement(Dp.Typography,null,n||"Initializing BLAST query"))}),dM=$5});var CM={};tt(CM,{default:()=>Z5});var vo,pM,gM,hM,K5,X5,Z5,EM=g(()=>{"use strict";vo=f(M()),pM=f(Te()),gM=f(H());Jm();hM=f(_e());sM();mM();K5=(0,hM.makeStyles)()({loadingContainer:{padding:20}}),X5=(0,gM.observer)(function({model:t}){let{classes:r}=K5(),{blastParams:n,loadingStoredData:o}=t;return vo.default.createElement(bA,null,vo.default.createElement("div",null,n?vo.default.createElement(dM,{model:t,baseUrl:n.baseUrl}):o?vo.default.createElement("div",{className:r.loadingContainer},vo.default.createElement(pM.LoadingEllipses,{message:"Loading MSA data",variant:"h6"})):vo.default.createElement(Ll,{model:t})))}),Z5=X5});var t3={};tt(t3,{default:()=>SA});var wM=f(rg()),Lp=f(Go()),bM=f(Ce()),Rp=f(Rt());V();var lg=f(O(),1),Ag=(0,R.createSvgIcon)((0,lg.jsx)("path",{d:"M20 2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2M8 20H4v-4h4zm0-6H4v-4h4zm0-6H4V4h4zm6 12h-4v-4h4zm0-6h-4v-4h4zm0-6h-4V4h4zm6 12h-4v-4h4zm0-6h-4v-4h4zm0-6h-4V4h4z"}),"GridOn");var yv=f(M()),wv=f(Ce());var fs=f(M()),Iv=f(H());var Wm=f(M()),gv=f(Ce()),zm=f(H());var pg=f(_e());function zn(e){return!!e&&typeof e=="object"&&"hoverPosition"in e&&!!e.hoverPosition}function mg(e){return/AF-([A-Z0-9]+)-F\d+/.exec(e)?.[1]}var Qs=(0,pg.makeStyles)()({highlight:{height:"100%",background:"rgba(255,255,0,0.2)",border:"1px solid rgba(50,50,0,0.2)",position:"absolute",zIndex:99,textAlign:"center",pointerEvents:"none",overflow:"hidden"}});var mv=f(GA()),pv=f(Ce()),ct=f(Rt());function hg(e){let t=e.strand,r=e.refName;if(t!==-1&&t!==1)throw new Error(`Invalid strand value: ${t}. Expected 1 or -1.`);if(!r)throw new Error("refName is required");let n=new Map;for(let c of e.subfeatures??[])if(c.type==="CDS"&&c.start<c.end){let l=`${c.start}-${c.end}`;n.has(l)||n.set(l,c)}let o=[...n.values()].sort((c,l)=>t*(c.start-l.start)),i={},a={},s={};if(o.length!==0){let l=(3-(o[0]?.phase??0))%3,A=-1;for(let u of o){let m=u.end-u.start;for(let d=0;d<m;d++){let p=t===1?u.start+d:u.end-1-d,E=Math.floor(l++/3);i[p]=E,E!==A?(a[E]=p,s[E]=[p],A=E):s[E].push(p)}}}return{g2p:i,p2g:a,p2gCodon:s,refName:r,strand:t}}var Zl=f(Ar());Jm();var iv=f(Ce());function SQ(e,t){let r=e.sciname.replaceAll(" ","_");if(e.taxid&&t?.has(e.taxid)){let n=t.get(e.taxid);n.commonName&&(r=n.commonName.split(" ").map(o=>o.charAt(0).toUpperCase()+o.slice(1).toLowerCase()).join("_"))}return`${e.accession}-${r}`}function QQ(e){return e.replaceAll("-","")}var Ul=f(Ce());function rr(e){return(0,Ul.getContainingView)(e)}function vQ(e){return[...new Set(e.filter(t=>!!t))]}function MQ(e,t){return t.filter(r=>!!r).join(e)}function mF(e){let r=(e.get("subfeatures")??[]).filter(n=>(n.get("type")==="mRNA"||n.get("type")==="transcript")&&n.get("subfeatures")?.some(o=>o.get("type")==="CDS"));return r.length>0?r:[e]}function Gl(e){let t=(0,Ul.sum)(e.get("subfeatures")?.filter(r=>r.get("type")==="CDS").map(r=>r.get("end")-r.get("start"))??[]);return{len:Math.floor(t/3),mod:t%3}}function wo(e){return e?.id()??""}function pF(e){return e?vQ([e.id(),e.get("name"),e.get("id"),e.get("transcript_id")]):[]}function cs(e,t){return pF(e).includes(t)}function Hl(e){return e?MQ(" ",[e.get("name"),e.get("id")]):""}function bo(e){return e?MQ(" ",[e.get("gene_name")??e.get("name"),e.get("id")?`(${e.get("id")})`:void 0]):""}function jl(e,t){return`BLAST - ${bo(e)} - ${Hl(t)}`}function _Q(e){return mF(e).toSorted((r,n)=>Gl(n).len-Gl(r).len)}function Jl(e){return e.replaceAll("*","").replaceAll("&","")}function ql(e){return vQ([e.id(),e.get("id"),e.get("name"),e.get("gene_id"),e.get("gene_name")])}Si();var gF="jbrowse-msaview-blast-cache",Hn="blast-results",hF=2;async function Vl(){return on(gF,hF,{upgrade(e,t){t<2&&e.objectStoreNames.contains(Hn)&&e.deleteObjectStore(Hn),e.objectStoreNames.contains(Hn)||e.createObjectStore(Hn,{keyPath:"id"})}})}function CF(e,t,r,n){let o=n?`:${n}`:"";return`${t}:${r}${o}:${e}`}async function TQ({proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:a,rid:s,geneId:c,transcriptId:l,transcriptName:A,geneName:u}){let m=await Vl(),p={id:CF(e,t,r,l),proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:a,rid:s,timestamp:Date.now(),geneId:c,transcriptId:l,transcriptName:A,geneName:u};return await m.put(Hn,p),p}async function kQ(){return(await(await Vl()).getAll(Hn)).toSorted((r,n)=>n.timestamp-r.timestamp)}async function DQ(e){await(await Vl()).delete(Hn,e)}async function NQ(){await(await Vl()).clear(Hn)}async function LQ(e,t){let r=await fetch(e,t);if(!r.ok)throw new Error(`HTTP ${r.status} fetching ${e} ${await r.text()}`);return r}async function jr(e,t){return(await LQ(e,t)).text()}async function RQ(e,t){return(await LQ(e,t)).json()}function FQ(e){return new Promise(t=>setTimeout(t,e))}async function Yl({check:e,intervalSeconds:t,onCountdown:r}){for(;;){if(await e())return;for(let n=t;n>0;n--)r(n),await FQ(1e3)}}var zl="https://www.ebi.ac.uk/Tools/services/rest",Wl="colin.diesh@gmail.com",EF={clustalo:{params:{email:Wl},msaResult:"aln-clustal_num",treeResult:"phylotree"},muscle:{params:{email:Wl,format:"clw",tree:"tree1"},msaResult:"fa",treeResult:"phylotree"},kalign:{params:{email:Wl,stype:"protein"},msaResult:"fa",treeResult:"phylotree"},mafft:{params:{email:Wl,stype:"protein"},msaResult:"fa",treeResult:"phylotree"}};async function IF({onProgress:e,jobId:t,algorithm:r}){await Yl({intervalSeconds:10,onCountdown:n=>{e(`Re-checking MSA status in... ${n}`)},check:async()=>{let n=await jr(`${zl}/${r}/status/${t}`);if(n.includes("FINISHED"))return!0;if(n.includes("FAILURE"))throw new Error(`Failed to run: jobId ${t}`);return!1}})}async function PQ({algorithm:e,sequence:t,onProgress:r}){let n=EF[e];r(`Launching ${e} MSA...`);let o=await jr(`${zl}/${e}/run`,{method:"POST",body:new URLSearchParams({...n.params,sequence:t})});return await IF({jobId:o,algorithm:e,onProgress:r}),{msa:await jr(`${zl}/${e}/result/${o}/${n.msaResult}`),tree:await jr(`${zl}/${e}/result/${o}/${n.treeResult}`)}}async function qm({rid:e,baseUrl:t,onProgress:r}){r(`Checking BLAST status for RID: ${e}...`),await yF({rid:e,onProgress:r,baseUrl:t});let n=await RQ(`${t}?CMD=Get&RID=${e}&FORMAT_TYPE=JSON2_S&FORMAT_OBJECT=Alignment`);return{rid:e,hits:n.BlastOutput2[0]?.report.results.search.hits??[]}}async function OQ({query:e,blastDatabase:t,blastProgram:r,baseUrl:n,onProgress:o,onRid:i}){o("Submitting to NCBI BLAST...");let{rid:a}=await xF({query:e,blastDatabase:t,blastProgram:r,baseUrl:n});return i(a),qm({rid:a,baseUrl:n,onProgress:o})}async function xF({query:e,blastProgram:t,blastDatabase:r,baseUrl:n}){let o=await jr(n,{method:"POST",body:new URLSearchParams({CMD:"Put",PROGRAM:t==="quick-blastp"?"blastp":t,DATABASE:r,QUERY:e,...r==="nr_cluster_seq"?{CLUSTERED_DB:"on",DB_TYPE:"Experimental Databases"}:{},...t==="quick-blastp"?{BLAST_PROGRAMS:"kmerBlastp"}:{}})}),i=/^ {4}RID = (.*$)/m.exec(o)?.[1],a=/^ {4}RTOE = (.*$)/m.exec(o)?.[1];if(!i)throw new Error("Failed to get RID from BLAST request");return{rid:i,rtoe:a}}async function yF({rid:e,onProgress:t,baseUrl:r}){await Yl({intervalSeconds:20,onCountdown:n=>{t(`Re-checking BLAST status in... ${n}`)},check:async()=>{let n=await jr(`${r}?CMD=Get&FORMAT_OBJECT=SearchInfo&RID=${e}`),o=/\s+Status=(\S+)/m.exec(n)?.[1],i=/\s+ThereAreHits=yes/m.test(n);if(o==="WAITING")return!1;if(o==="FAILED")throw new Error(`BLAST ${e} failed`);if(o==="READY"){if(i)return!0;throw new Error("No hits found")}throw new Error(`BLAST ${e} returned unexpected status: ${o??"unknown"}`)}})}Si();var wF="jbrowse-plugin-msaview",bF="colin.diesh@gmail.com",BF="https://eutils.ncbi.nlm.nih.gov/entrez/eutils";function $l(e){let t=new URLSearchParams({...e,tool:wF,email:bF});return`${BF}/efetch.fcgi?${t.toString()}`}var SF="jbrowse-msaview-taxonomy-cache",ls="common-names",QF=2;async function GQ(){return on(SF,QF,{upgrade(e){e.objectStoreNames.contains(ls)&&e.deleteObjectStore(ls),e.createObjectStore(ls,{keyPath:"taxid"})}})}async function vF(e){let r=(await GQ()).transaction(ls,"readonly"),n=await Promise.all(e.map(o=>r.store.get(o)));return await r.done,n}async function MF(e){let r=(await GQ()).transaction(ls,"readwrite");for(let n of e)await r.store.put(n);await r.done}async function UQ(e){let t=new Map,r=[],n=await vF(e);for(let a=0;a<e.length;a++){let s=e[a],c=n[a];c?t.set(s,{sciname:c.sciname,commonName:c.commonName}):r.push(s)}if(r.length===0)return t;let o=100,i=[];for(let a=0;a<r.length;a+=o){let s=r.slice(a,a+o),c=s.join(",");try{let A=await(await fetch($l({db:"taxonomy",id:c,retmode:"xml"}))).text(),u=new Map,m=/<Taxon>\s*<TaxId>(\d+)<\/TaxId>/g,d;for(;(d=m.exec(A))!==null;){let p=Number(d[1]),E=d.index,x=1,I=E+d[0].length;for(;x>0&&I<A.length;){let Q=A.indexOf("<Taxon>",I),S=A.indexOf("</Taxon>",I);if(S===-1)break;Q!==-1&&Q<S?(x++,I=Q+7):(x--,I=S+8)}let C=A.slice(E,I),w=u.get(p),y=C.includes("<LineageEx>"),b=w?.includes("<LineageEx>");(!w||y&&!b)&&u.set(p,C)}for(let p of s){let E=u.get(p);if(E){let x=/<GenbankCommonName>(.*?)<\/GenbankCommonName>/.exec(E),I=/<CommonName>(.*?)<\/CommonName>/.exec(E),C=/<ScientificName>(.*?)<\/ScientificName>/.exec(E),w=x?.[1]??I?.[1],y=C?.[1]??"";t.set(p,{sciname:y,commonName:w}),i.push({taxid:p,sciname:y,commonName:w})}}}catch(l){console.error("Failed to fetch taxonomy data:",l)}}return i.length>0&&await MF(i),t}async function HQ({self:e}){let{baseUrl:t,blastDatabase:r,blastProgram:n,msaAlgorithm:o,proteinSequence:i,selectedTranscript:a,rid:s}=e.blastParams,c=Jl(i),l,A;if(s){e.setRid(s);let I=await qm({rid:s,baseUrl:t,onProgress:C=>{e.setProgress(C)}});l=I.hits,A=I.rid}else{let I=await OQ({query:c,blastDatabase:r,blastProgram:n,baseUrl:t,onProgress:C=>{e.setProgress(C)},onRid:C=>{e.setRid(C)}});l=I.hits,A=I.rid}e.setProgress("Fetching species taxonomy info...");let u=l.map(I=>I.description[0]?.taxid).filter(I=>I!==void 0),m=await UQ(u),d={},p=l.map(I=>{let C=I.description[0]??{accession:"unknown",id:"unknown",sciname:"unknown"},w=SQ(C,m),y=QQ(I.hsps[0]?.hseq??"");return d[w]=_F(C,m),`>${w}
70
+ ${y}`}),E=await PQ({algorithm:o,sequence:[`>QUERY
71
+ ${c}`,...p].join(`
72
+ `),onProgress:I=>{e.setProgress(I)}}),x=JSON.stringify(d);return await TQ({proteinSequence:c,blastDatabase:r,blastProgram:n,msaAlgorithm:o,msa:E.msa,tree:E.tree,treeMetadata:x,rid:A,geneId:a?.get("parentId"),transcriptId:a?.id(),transcriptName:a?.get("name")??a?.get("id"),geneName:a?.get("gene_name")??a?.get("parentId")}),{...E,treeMetadata:x}}function _F(e,t){let r={},n=e.taxid?t.get(e.taxid):void 0;return n?.sciname&&(r["Scientific name"]=n.sciname),n?.commonName&&(r["Common name"]=n.commonName),e.accession&&(r.Accession=e.accession),e.id&&(r.ID=e.id),e.title&&(r.Description=e.title),r}Rf();var JQ=f(ym());async function qQ({location:e,name:t}){let r=i=>(0,JQ.openLocation)({uri:i,locationType:"UriLocation"}),n=await r(`${e.uri}.idx`).readFile("utf8"),o=TF(n,t);if(o){let a=await new xi({filehandle:r(e.uri),gziFilehandle:r(`${e.uri}.gzi`)}).read(o.length,o.offset);return new TextDecoder().decode(a).trim()}}var jQ=e=>e.replace(/\.\d+$/,"");function TF(e,t){let r=jQ(t);for(let n of e.split(`
73
+ `)){let[o,i,a]=n.split(" ");if(o&&jQ(o)===r)return{offset:Number(i),length:Number(a)}}}var VQ=f(Ce());function YQ({model:e}){let{hovered:t}=(0,VQ.getSession)(e),{querySeqName:r,transcriptToMsaMap:n,connectedView:o,mafRegion:i}=e;if(!o?.initialized||!zn(t))return;let{coord:a,refName:s}=t.hoverPosition;if(i)return s!==i.refName||!o.assemblyNames.includes(i.assemblyName)||a<i.start||a>=i.end?void 0:e.seqPosToVisibleCol(r,a-i.start);if(n){let c=n.g2p[a];if(c!==void 0)return e.seqPosToVisibleCol(r,c)}}Si();var kF="jbrowse-msaview-domain-cache",Kl="domains",DF=1;async function WQ(){return on(kF,DF,{upgrade(e){e.objectStoreNames.contains(Kl)||e.createObjectStore(Kl,{keyPath:"accession"})}})}async function zQ(e){let r=(await WQ()).transaction(Kl,"readonly"),n=await Promise.all(e.map(o=>r.store.get(o)));return await r.done,n}async function $Q(e){let r=(await WQ()).transaction(Kl,"readwrite");for(let n of e)await r.store.put(n);await r.done}function jn(e,t){return new RegExp(`<${t}>(.*?)</${t}>`,"s").exec(e)?.[1]}function NF(e){let t={},r=/<GBQualifier>([\s\S]*?)<\/GBQualifier>/g,n;for(;(n=r.exec(e))!==null;){let o=jn(n[1],"GBQualifier_name"),i=jn(n[1],"GBQualifier_value");o&&i!==void 0&&t[o]===void 0&&(t[o]=i)}return t}function LF(e){let t=[],r=[],n=/<GBInterval>([\s\S]*?)<\/GBInterval>/g,o;for(;(o=n.exec(e))!==null;){let i=o[1],a=jn(i,"GBInterval_from"),s=jn(i,"GBInterval_to"),c=jn(i,"GBInterval_point");a&&s?(t.push(Number(a)),r.push(Number(s))):c&&(t.push(Number(c)),r.push(Number(c)))}return t.length>0?{start:Math.min(...t),end:Math.max(...r)}:void 0}var RF=2;function FF(e){let t=jn(e,"GBFeature_key"),r=NF(e),n=r.db_xref,o=LF(e);if((t==="Region"||t==="Site")&&n?.startsWith("CDD:")&&o&&o.end-o.start+1>=RF){let i=n.replace("CDD:",""),a=t==="Region",s=r.note?.split(/[[(]/)[0]?.trim(),c=a?r.region_name??i:s||r.site_type||"site",l=a?i:`${i}:${c}`;return{signature:{entry:{name:c,description:r.note??c,accession:l}},locations:[o]}}}function PF(e){let t=new Map,r=/<GBSeq>([\s\S]*?)<\/GBSeq>/g,n;for(;(n=r.exec(e))!==null;){let o=n[1],i=[],a=/<GBFeature>([\s\S]*?)<\/GBFeature>/g,s;for(;(s=a.exec(o))!==null;){let c=FF(s[1]);c&&i.push(c)}for(let c of[jn(o,"GBSeq_accession-version"),jn(o,"GBSeq_primary-accession")])c&&t.set(c,i)}return t}async function KQ(e){let t=[...new Set(e)].filter(Boolean),r=new Map,n=await zQ(t),o=[];t.forEach((s,c)=>{let l=n[c];l?r.set(s,l.matches):o.push(s)});let i=[],a=100;for(let s=0;s<o.length;s+=a){let c=o.slice(s,s+a),l=await jr($l({db:"protein",id:c.join(","),rettype:"gp",retmode:"xml"})),A=PF(l);for(let u of c){let m=A.get(u)??[];r.set(u,m),i.push({accession:u,matches:m})}}return i.length>0&&await $Q(i),r}async function XQ(e){let t=e.data.treeMetadata;if(!t)throw new Error("No sequence metadata available to look up domains");let r=JSON.parse(t),n=Object.entries(r).map(([a,s])=>({rowName:a,accession:s.Accession})).filter(a=>!!a.accession);if(n.length===0)throw new Error("No NCBI accessions found in alignment rows");e.setProgress(`Fetching protein domains from NCBI for ${n.length} sequences...`);let o=await KQ(n.map(a=>a.accession)),i={};for(let{rowName:a,accession:s}of n){let c=o.get(s);c&&c.length>0&&(i[a]={matches:c,xref:[{id:a}]})}if(Object.keys(i).length===0)throw new Error("No CDD domain annotations found for these proteins");e.setDomains(i)}Si();var OF="jbrowse-msaview-data",GF=1,As="msa-data";async function Vm(){return on(OF,GF,{upgrade(e){e.objectStoreNames.contains(As)||e.createObjectStore(As,{keyPath:"id"}).createIndex("timestamp","timestamp",{unique:!1})}})}function ZQ(){return`msa-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}async function ev(e,t){try{let r=await Vm(),n={id:e,msa:t.msa,tree:t.tree,treeMetadata:t.treeMetadata,timestamp:Date.now()};return await r.put(As,n),!0}catch(r){return console.warn("Failed to store MSA data:",r),!1}}async function tv(e){try{let r=await(await Vm()).get(As,e);return r?{msa:r.msa,tree:r.tree,treeMetadata:r.treeMetadata}:void 0}catch(t){console.warn("Failed to retrieve MSA data:",t);return}}async function rv(e=10080*60*1e3){try{let t=await Vm(),r=Date.now()-e,i=await t.transaction(As,"readwrite").store.index("timestamp").openCursor(IDBKeyRange.upperBound(r)),a=0;for(;i;)await i.delete(),a++,i=await i.continue();return a}catch(t){return console.warn("Failed to cleanup old MSA data:",t),0}}function UF(e){let t=e;return t.type==="ProteinView"&&Array.isArray(t.structures)}function nv(e){return e.filter(UF)}function ov(e,t){if(t<0||t>=e.length)return;let r=0;for(let n=0;n<t;n++)e[n]!=="-"&&r++;if(e[t]!=="-")return r}function av(e){let{dataStoreId:t,rows:r}=e;t&&r.length===0&&(async()=>{try{e.setLoadingStoredData(!0);let n=await tv(t);n&&(n.msa&&e.setMSA(n.msa),n.tree&&e.setTree(n.tree),n.treeMetadata&&e.setTreeMetadata(n.treeMetadata))}catch(n){console.error("Failed to load MSA data from IndexedDB:",n)}finally{e.setLoadingStoredData(!1)}})()}function sv(e){let{rows:t,dataStoreId:r,isStoringData:n}=e;if(t.length>0&&!r&&!n){if(e.msaFilehandle||e.treeFilehandle)return;let o=e.data.msa,i=e.data.tree;(o||i)&&(e.setIsStoringData(!0),(async()=>{try{let a=ZQ();await ev(a,{msa:o,tree:i,treeMetadata:e.data.treeMetadata})&&e.setDataStoreId(a)}catch(a){console.error("Failed to store MSA data to IndexedDB:",a)}finally{e.setIsStoringData(!1)}})())}}function cv(e){e.blastParams&&(async()=>{try{e.setProgress("Submitting query"),e.setError(void 0);let t=await HQ({self:e});e.setData(t),e.setBlastParams(void 0)}catch(t){e.setError(t),console.error(t)}finally{e.setProgress("")}})()}function lv(e){let{rows:t,domainsRequested:r,interProAnnotations:n}=e,o=e.data.treeMetadata?.includes('"Accession"')??!1;t.length>0&&o&&!n&&!r&&(e.setDomainsRequested(!0),(async()=>{try{await XQ(e)}catch(i){console.error("[msaview-domains] auto-load failed:",i)}finally{e.setProgress("")}})())}function Av(e){let{init:t}=e;if(t){let{msaUrl:r,msaIndexedLocation:n,msaName:o,querySeqName:i}=t;(async()=>{try{if(e.setError(void 0),r){let a=mg(r);a&&(e.setUniprotId(a),e.setQuerySeqName("query"))}if(i&&e.setQuerySeqName(i),r)e.setMSAFilehandle({uri:r,locationType:"UriLocation"});else if(n&&o){let a=await qQ({location:n,name:o});if(a)e.setMSA(a);else throw new Error(`No alignment named ${o} in ${n.uri}`)}e.setInit(void 0)}catch(a){e.setError(a),console.error(a)}})()}}function uv(e){let t=!1;return()=>{let r=YQ({model:e});r!==void 0?(e.setMousePos(r),t=!0):t&&(e.setMousePos(void 0),t=!1)}}function fv(e){let t=!1;return()=>{let{connectedViewId:r,transcriptToMsaMap:n,querySeqName:o}=e;if(!r||!n)return;let i=new Set;for(let s of nv((0,iv.getSession)(e).views))for(let c of s.structures){if(c.connectedViewId!==r)continue;let l=c.hoverGenomeHighlights;if(!l||l.length===0)continue;let{g2p:A}=n;for(let u of l)for(let m=u.start;m<u.end;m++){let d=A[m];if(d!==void 0){let p=e.seqPosToGlobalCol(o,d);i.add(p)}}}let a=Array.from(i).map(s=>e.globalColToVisibleCol(s)).filter(s=>s!==void 0);a.length>0?(e.setHighlightedColumns(a),t=!0):t&&(e.setHighlightedColumns(e.highlightColumns?.length?e.highlightColumns:void 0),t=!1)}}function dv(){rv().catch(e=>{console.error("Failed to cleanup old MSA data:",e)})}function Xl({model:e,coord:t}){let{querySeqName:r,transcriptToMsaMap:n,mafRegion:o}=e,i=e.rows.find(s=>s[0]===r)?.[1];if(!i)return;let a=ov(i,t);if(a!==void 0){if(o){let s=o.start+a;return s<o.end?{refName:o.refName,start:s,end:s+1}:void 0}if(n){let{refName:s,p2g:c}=n,l=c[a],A=c[a+1];return l!==void 0&&A!==void 0?{refName:s,start:Math.min(l,A),end:Math.max(l,A)}:void 0}}}function Ym(){return ct.types.compose(mv.BaseViewModel,Ol(),ct.types.model("MsaView",{connectedViewId:ct.types.maybe(ct.types.string),connectedFeature:ct.types.frozen(),blastParams:ct.types.frozen(),querySeqName:"QUERY",uniprotId:ct.types.maybe(ct.types.string),zoomToBaseLevel:!1,init:ct.types.frozen(),dataStoreId:ct.types.maybe(ct.types.string),mafRegion:ct.types.frozen()})).volatile(()=>({rid:void 0,progress:"",error:void 0,loadingStoredData:!1,isStoringData:!1,domainsRequested:!1})).views(e=>({getRowByName(t){return e.rows.find(r=>r[0]===t)},getSequenceByRowName(t){return e.rows.find(r=>r[0]===t)?.[1]}})).views(e=>({get transcriptToMsaMap(){return e.connectedFeature?hg(e.connectedFeature):void 0},get connectedView(){let{views:t}=(0,pv.getSession)(e);return t.find(r=>r.id===e.connectedViewId)}})).views(e=>({get connectedHighlights(){let{mouseCol:t,mouseClickCol:r}=e;return[t===void 0?void 0:Xl({model:e,coord:t}),r===void 0?void 0:Xl({model:e,coord:r})].filter(n=>n!==void 0)}})).actions(e=>({setZoomToBaseLevel(t){e.zoomToBaseLevel=t},setError(t){e.error=t},setProgress(t){e.progress=t},setRid(t){e.rid=t},setBlastParams(t){e.blastParams=t},setInit(t){e.init=t},setQuerySeqName(t){e.querySeqName=t},setUniprotId(t){e.uniprotId=t},setDataStoreId(t){e.dataStoreId=t},setMafRegion(t){e.mafRegion=t},setLoadingStoredData(t){e.loadingStoredData=t},setIsStoringData(t){e.isStoringData=t},setDomainsRequested(t){e.domainsRequested=t},handleMsaClick(t){let{connectedView:r,zoomToBaseLevel:n}=e,o=Xl({model:e,coord:t});!o||!r||(n?r.navTo(o):r.centerAt(o.start,o.refName))}})).actions(e=>{let t=e.setMouseClickPos.bind(e);return{setMouseClickPos(r,n){t(r,n),r!==void 0&&e.handleMsaClick(r)}}}).views(e=>({extraViewMenuItems(){return[{label:"Zoom to base level on click?",checked:e.zoomToBaseLevel,type:"checkbox",onClick:()=>{e.setZoomToBaseLevel(!e.zoomToBaseLevel)}}]}})).actions(e=>({afterCreate(){dv();for(let t of[av,sv,cv,Av,lv])(0,ct.addDisposer)(e,(0,Zl.autorun)(()=>{t(e)}));(0,ct.addDisposer)(e,(0,Zl.autorun)(uv(e))),(0,ct.addDisposer)(e,(0,Zl.autorun)(fv(e)))}}))}function ji(e){return e.type==="MsaView"}var HF=(0,zm.observer)(function({model:e}){let{hovered:t,views:r}=(0,gv.getSession)(e);return r.some(o=>ji(o)&&o.connectedViewId===e.id)&&zn(t)?Wm.default.createElement(jF,{model:e,hovered:t}):null}),jF=(0,zm.observer)(function({model:e,hovered:t}){let{classes:r}=Qs(),{offsetPx:n}=e,{coord:o,refName:i}=t.hoverPosition,a=e.bpToPx({refName:i,coord:o-1}),s=e.bpToPx({refName:i,coord:o});if(a&&s){let c=Math.max(Math.abs(s.offsetPx-a.offsetPx),4),l=Math.min(a.offsetPx,s.offsetPx)-n;return Wm.default.createElement("div",{className:r.highlight,style:{left:l,width:c}})}return null}),hv=HF;var us=f(M()),Cv=f(Ce()),$m=f(H());var JF=(0,$m.observer)(function({model:t}){let{views:r,hovered:n}=(0,Cv.getSession)(t),i=r.filter(ji).find(a=>a.connectedViewId===t.id)?.connectedHighlights;return!zn(n)&&i?.length?us.default.createElement(qF,{model:t,highlights:i}):null}),qF=(0,$m.observer)(function({model:e,highlights:t}){let{classes:r}=Qs(),{offsetPx:n}=e;return us.default.createElement(us.default.Fragment,null,t.map((o,i)=>{let a=e.bpToPx({refName:o.refName,coord:o.start}),s=e.bpToPx({refName:o.refName,coord:o.end});if(a&&s){let c=Math.max(Math.abs(s.offsetPx-a.offsetPx),4),l=Math.min(a.offsetPx,s.offsetPx)-n;return us.default.createElement("div",{key:`${o.refName}-${o.start}-${o.end}-${i}`,className:r.highlight,style:{left:l,width:c}})}return null}))}),Ev=JF;var VF=(0,Iv.observer)(function({model:t}){return fs.default.createElement(fs.default.Fragment,null,fs.default.createElement(Ev,{model:t}),fs.default.createElement(hv,{model:t}))}),xv=VF;function Km(e){e.addToExtensionPoint("LinearGenomeView-TracksContainerComponent",(t,{model:r})=>{let{views:n}=(0,wv.getSession)(r);return n.some(i=>ji(i)&&i.connectedViewId===r.id)?[...t,yv.default.createElement(xv,{key:"highlight_protein_viewer_msaview",model:r})]:t})}var Tv=f(GA());var bv=f(Go());function Xm(e){let t=e.getAdapterType("BgzipFastaAdapter");return(0,bv.ConfigurationSchema)("BgzipFastaMsaAdapter",{msaRegex:{type:"string",defaultValue:"_"}},{baseConfiguration:t?.configSchema})}function Zm(e){return e.addAdapterType(()=>new Tv.AdapterType({name:"BgzipFastaMsaAdapter",configSchema:Xm(e),adapterMetadata:{hiddenFromGUI:!0},getAdapterClass:()=>Promise.resolve().then(()=>(_v(),Mv)).then(t=>t.default)}))}var wA=f(Ce());V();var kv=f(O(),1),Dv=(0,R.createSvgIcon)((0,kv.jsx)("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6z"}),"Add");var Dt=f(M()),rM=f(Te()),nM=f(Ce()),Ki=f(P());var ie=f(M()),Ep=f(Te()),d2=f(Ce()),nr=f(P()),m2=f(H()),p2=f(_e());function Nv({session:e,newViewTitle:t,view:r,feature:n,msaFilehandle:o,treeFilehandle:i,querySeqName:a,data:s}){e.addView("MsaView",{type:"MsaView",displayName:t,connectedViewId:r.id,connectedFeature:n.toJSON(),msaFilehandle:o,treeFilehandle:i,querySeqName:a,data:s})}var ep=f(M()),Lv=f(P());function YF({children:e,...t}){return ep.default.createElement("div",null,ep.default.createElement(Lv.TextField,{...t},e))}var lt=YF;var tp=f(M()),Rv=f(Te()),Fv=f(P()),Pv=f(_e()),WF=(0,Pv.makeStyles)()({dialogContent:{width:"80em"}});function Cr({error:e,children:t}){let{classes:r}=WF();return tp.default.createElement(Fv.DialogContent,{className:r.dialogContent},e?tp.default.createElement(Rv.ErrorMessage,{error:e}):null,t)}var tA=f(M()),ds=f(P());function fn({onSubmit:e,onCancel:t,submitDisabled:r,submitLabel:n="Submit",cancelLabel:o="Cancel"}){return tA.default.createElement(ds.DialogActions,null,tA.default.createElement(ds.Button,{color:"primary",variant:"contained",disabled:r,onClick:()=>{e()}},n),tA.default.createElement(ds.Button,{color:"secondary",variant:"contained",onClick:()=>{t()}},o))}var Er=f(M()),Ji=f(P()),Uv=f(_e());var Ov=f(M()),Gv=f(_e());var zF=(0,Gv.makeStyles)()({textAreaFont:{fontFamily:"Courier New"}});function rp({value:e}){let{classes:t}=zF();return Ov.default.createElement(lt,{variant:"outlined",multiline:!0,minRows:5,maxRows:10,fullWidth:!0,value:e,slotProps:{input:{readOnly:!0,classes:{input:t.textAreaFont}}}})}var $F=(0,Uv.makeStyles)()({flex:{display:"flex"},minWidth:{minWidth:300},centered:{alignContent:"center",marginLeft:20}});function Ir({feature:e,options:t,selectedId:r,selectedTranscript:n,setSelectedId:o,proteinSequence:i,validIds:a}){let{classes:s}=$F(),[c,l]=(0,Er.useState)(!1);return Er.default.createElement(Er.default.Fragment,null,Er.default.createElement("div",{className:s.flex},Er.default.createElement(Ji.TextField,{variant:"outlined",label:`Choose isoform of ${bo(e)}`,select:!0,className:s.minWidth,value:r,onChange:A=>{o(A.target.value)}},t.map(A=>{let u=a?a.some(p=>cs(A,p)):!0,{len:m,mod:d}=Gl(A);return Er.default.createElement(Ji.MenuItem,{value:wo(A),key:A.id(),disabled:!u},Hl(A)," (",m," aa)"," ",d?" (possible fragment)":"",a?u?" (has data)":" (no data)":"")})),Er.default.createElement("div",{className:s.centered},Er.default.createElement(Ji.Button,{variant:"contained",color:"primary",onClick:()=>{l(!c)}},c?"Hide sequence":"Show sequence"))),c?Er.default.createElement(rp,{value:i?`>${Hl(n)}
74
+ ${i}`:"Loading..."}):null)}var pA=f(M());var Jn=f(Ce());function KF(e,t){return e.map(r=>t.slice(r.start,r.end)).join("")}function XF({cds:e,sequence:t,codonTable:r}){let n=KF(e,t),o="";for(let i=0;i<n.length;i+=3)o+=r[n.slice(i,i+3)]??"&";return o}function ZF(e,t){return e.map(r=>({...r,start:t-r.end,end:t-r.start})).toSorted((r,n)=>r.start-n.start)}function Hv({feature:e,seq:t}){let{subfeatures:r,start:n,strand:o}=e.toJSON(),i=(0,Jn.dedupe)(r?.toSorted((a,s)=>a.start-s.start).map(a=>({...a,start:a.start-n,end:a.end-n})).filter(a=>a.type==="CDS")??[],a=>`${a.start}-${a.end}`);return XF({cds:o===-1?ZF(i,t.length):i,sequence:o===-1?(0,Jn.revcom)(t):t,codonTable:(0,Jn.generateCodonTable)(Jn.defaultCodonTable)})}var A2=f(Ce());var qe=f(M(),1),Cp=f(Vv(),1);var At=f(M(),1);var qn={};tt(qn,{ERROR_REVALIDATE_EVENT:()=>l5,FOCUS_EVENT:()=>Yv,MUTATE_EVENT:()=>zv,RECONNECT_EVENT:()=>Wv});var Yv=0,Wv=1,zv=2,l5=3;var $v=Object.prototype.hasOwnProperty;function rA(e,t){var r,n;if(e===t)return!0;if(e&&t&&(r=e.constructor)===t.constructor){if(r===Date)return e.getTime()===t.getTime();if(r===RegExp)return e.toString()===t.toString();if(r===Array){if((n=e.length)===t.length)for(;n--&&rA(e[n],t[n]););return n===-1}if(!r||typeof e=="object"){n=0;for(r in e)if($v.call(e,r)&&++n&&!$v.call(t,r)||!(r in t)||!rA(e[r],t[r]))return!1;return Object.keys(t).length===n}}return e!==e&&t!==t}var xr=new WeakMap,yr=()=>{},He=yr(),Vi=Object,q=e=>e===He,Jt=e=>typeof e=="function",wr=(e,t)=>({...e,...t}),cA=e=>Jt(e.then),op={},nA={},up="undefined",Yi=typeof window!=up,iA=typeof document!=up,Xv=Yi&&"Deno"in window,Zv=()=>Yi&&typeof window.requestAnimationFrame!=up,lA=(e,t)=>{let r=xr.get(e);return[()=>!q(t)&&e.get(t)||op,n=>{if(!q(t)){let o=e.get(t);t in nA||(nA[t]=o),r[5](t,wr(o,n),o||op)}},r[6],()=>!q(t)&&t in nA?nA[t]:!q(t)&&e.get(t)||op]},sp=!0,A5=()=>sp,[cp,lp]=Yi&&window.addEventListener?[window.addEventListener.bind(window),window.removeEventListener.bind(window)]:[yr,yr],u5=()=>{let e=iA&&document.visibilityState;return q(e)||e!=="hidden"},f5=e=>(iA&&document.addEventListener("visibilitychange",e),cp("focus",e),()=>{iA&&document.removeEventListener("visibilitychange",e),lp("focus",e)}),d5=e=>{let t=()=>{sp=!0,e()},r=()=>{sp=!1};return cp("online",t),cp("offline",r),()=>{lp("online",t),lp("offline",r)}},e2={isOnline:A5,isVisible:u5},t2={initFocus:f5,initReconnect:d5},AA=!At.default.useId,Vn=!Yi||Xv,fp=e=>Zv()?window.requestAnimationFrame(e):setTimeout(e,1),Wi=Vn?At.useEffect:At.useLayoutEffect,ip=typeof navigator<"u"&&navigator.connection,Ap=!Vn&&ip&&(["slow-2g","2g"].includes(ip.effectiveType)||ip.saveData),oA=new WeakMap,m5=e=>Vi.prototype.toString.call(e),ap=(e,t)=>e===`[object ${t}]`,p5=0,aA=e=>{let t=typeof e,r=m5(e),n=ap(r,"Date"),o=ap(r,"RegExp"),i=ap(r,"Object"),a,s;if(Vi(e)===e&&!n&&!o){if(a=oA.get(e),a)return a;if(a=++p5+"~",oA.set(e,a),Array.isArray(e)){for(a="@",s=0;s<e.length;s++)a+=aA(e[s])+",";oA.set(e,a)}if(i){a="#";let c=Vi.keys(e).sort();for(;!q(s=c.pop());)q(e[s])||(a+=s+":"+aA(e[s])+",");oA.set(e,a)}}else a=n?e.toJSON():t=="symbol"?e.toString():t=="string"?JSON.stringify(e):""+e;return a},ps=e=>{if(Jt(e))try{e=e()}catch{e=""}let t=e;return e=typeof e=="string"?e:(Array.isArray(e)?e.length:e)?aA(e):"",[e,t]},g5=0,ms=()=>++g5;async function uA(...e){let[t,r,n,o]=e,i=wr({populateCache:!0,throwOnError:!0},typeof o=="boolean"?{revalidate:o}:o||{}),a=i.populateCache,s=i.rollbackOnError,c=i.optimisticData,l=m=>typeof s=="function"?s(m):s!==!1,A=i.throwOnError;if(Jt(r)){let m=r,d=[],p=t.keys();for(let E of p)!/^\$(inf|sub)\$/.test(E)&&m(t.get(E)._k)&&d.push(E);return Promise.all(d.map(u))}return u(r);async function u(m){let[d]=ps(m);if(!d)return;let[p,E]=lA(t,d),[x,I,C,w]=xr.get(t),y=()=>{let Y=x[d];return(Jt(i.revalidate)?i.revalidate(p().data,m):i.revalidate!==!1)&&(delete C[d],delete w[d],Y&&Y[0])?Y[0](2).then(()=>p().data):p().data};if(e.length<3)return y();let b=n,Q,S=!1,k=ms();I[d]=[k,0];let T=!q(c),_=p(),v=_.data,L=_._c,U=q(L)?v:L;if(T&&(c=Jt(c)?c(U,v):c,E({data:c,_c:U})),Jt(b))try{b=b(U)}catch(Y){Q=Y,S=!0}if(b&&cA(b))if(b=await b.catch(Y=>{Q=Y,S=!0}),k!==I[d][0]){if(S)throw Q;return b}else S&&T&&l(Q)&&(a=!0,E({data:U,_c:He}));if(a&&!S)if(Jt(a)){let Y=a(b,U);E({data:Y,error:He,_c:He})}else E({data:b,error:He,_c:He});if(I[d][1]=ms(),Promise.resolve(y()).then(()=>{E({_c:He})}),S){if(A)throw Q;return}return b}}var Kv=(e,t)=>{for(let r in e)e[r][0]&&e[r][0](t)},dp=(e,t)=>{if(!xr.has(e)){let r=wr(t2,t),n=Object.create(null),o=uA.bind(He,e),i=yr,a=Object.create(null),s=(A,u)=>{let m=a[A]||[];return a[A]=m,m.push(u),()=>{let d=m.indexOf(u);d>=0&&(m[d]=m[m.length-1],m.pop())}},c=(A,u,m)=>{e.set(A,u);let d=a[A];if(d)for(let p of d)p(u,m)},l=()=>{if(!xr.has(e)&&(xr.set(e,[n,Object.create(null),Object.create(null),Object.create(null),o,c,s]),!Vn)){let A=r.initFocus(setTimeout.bind(He,Kv.bind(He,n,0))),u=r.initReconnect(setTimeout.bind(He,Kv.bind(He,n,1)));i=()=>{A&&A(),u&&u(),xr.delete(e)}}};return l(),[e,o,l,i]}return[e,xr.get(e)[4]]},h5=(e,t,r,n,o)=>{let i=r.errorRetryCount,a=o.retryCount,s=~~((Math.random()+.5)*(1<<(a<8?a:8)))*r.errorRetryInterval;!q(i)&&a>i||setTimeout(n,s,o)},r2=rA,[fA,n2]=dp(new Map),dA=wr({onLoadingSlow:yr,onSuccess:yr,onError:yr,onErrorRetry:h5,onDiscarded:yr,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:Ap?1e4:5e3,focusThrottleInterval:5*1e3,dedupingInterval:2*1e3,loadingTimeout:Ap?5e3:3e3,compare:r2,isPaused:()=>!1,cache:fA,mutate:n2,fallback:{}},e2),mp=(e,t)=>{let r=wr(e,t);if(t){let{use:n,fallback:o}=e,{use:i,fallback:a}=t;n&&i&&(r.use=n.concat(i)),o&&a&&(r.fallback=wr(o,a))}return r},sA=(0,At.createContext)({}),pp=e=>{let{value:t}=e,r=(0,At.useContext)(sA),n=Jt(t),o=(0,At.useMemo)(()=>n?t(r):t,[n,r,t]),i=(0,At.useMemo)(()=>n?o:mp(r,o),[n,r,o]),a=o&&o.provider,s=(0,At.useRef)(He);a&&!s.current&&(s.current=dp(a(i.cache||fA),o));let c=s.current;return c&&(i.cache=c[0],i.mutate=c[1]),Wi(()=>{if(c)return c[2]&&c[2](),c[3]},[]),(0,At.createElement)(sA.Provider,wr(e,{value:i}))};var o2="$inf$";var zi=f(M(),1);var i2=Yi&&window.__SWR_DEVTOOLS_USE__,C5=i2?window.__SWR_DEVTOOLS_USE__:[],E5=()=>{i2&&(window.__SWR_DEVTOOLS_REACT__=zi.default)},I5=e=>Jt(e[1])?[e[0],e[1],e[2]||{}]:[e[0],null,(e[1]===null?e[2]:e[1])||{}],x5=()=>{let e=(0,zi.useContext)(sA);return(0,zi.useMemo)(()=>wr(dA,e),[e])};var y5=e=>(t,r,n)=>e(t,r&&((...i)=>{let[a]=ps(t),[,,,s]=xr.get(fA);if(a.startsWith(o2))return r(...i);let c=s[a];return q(c)?r(...i):(delete s[a],c)}),n),w5=C5.concat(y5),a2=e=>function(...r){let n=x5(),[o,i,a]=I5(r),s=mp(n,a),c=e,{use:l}=s,A=(l||[]).concat(w5);for(let u=A.length;u--;)c=A[u](c);return c(o,i||s.fetcher||null,s)},s2=(e,t,r)=>{let n=t[e]||(t[e]=[]);return n.push(r),()=>{let o=n.indexOf(r);o>=0&&(n[o]=n[n.length-1],n.pop())}};E5();var b5=()=>{},XY=b5();var gp=qe.default.use||(e=>{switch(e.status){case"pending":throw e;case"fulfilled":return e.value;case"rejected":throw e.reason;default:throw e.status="pending",e.then(t=>{e.status="fulfilled",e.value=t},t=>{e.status="rejected",e.reason=t}),e}}),hp={dedupe:!0},mA=Promise.resolve(He);mA.status="fulfilled";mA.value=He;var B5=()=>yr,S5=(e,t,r)=>{let{cache:n,compare:o,suspense:i,fallbackData:a,revalidateOnMount:s,revalidateIfStale:c,refreshInterval:l,refreshWhenHidden:A,refreshWhenOffline:u,keepPreviousData:m,strictServerPrefetchWarning:d}=r,[p,E,x,I]=xr.get(n),[C,w]=ps(e),y=(0,qe.useRef)(!1),b=(0,qe.useRef)(!1),Q=(0,qe.useRef)(C),S=(0,qe.useRef)(t),k=(0,qe.useRef)(r),T=()=>k.current,_=()=>T().isVisible()&&T().isOnline(),[v,L,U,Y]=lA(n,C),ke=(0,qe.useRef)({}).current,te=q(a)?q(r.fallback)?He:r.fallback[C]:a,Re=(ae,ne)=>{for(let we in ke){let he=we;if(he==="data"){if(!o(ae[he],ne[he])&&(!q(ae[he])||!o(_o,ne[he])))return!1}else if(ne[he]!==ae[he])return!1}return!0},Tt=!y.current,Yn=(0,qe.useMemo)(()=>{let ae=v(),ne=Y(),we=le=>{let et=wr(le);return delete et._k,(()=>{if(!C||!t||T().isPaused())return!1;if(Tt&&!q(s))return s;let Wr=q(te)?et.data:te;return i?q(Wr)||c:q(Wr)||c})()?{isValidating:!0,isLoading:!0,...et}:et},he=we(ae),Nt=ae===ne?he:we(ne),Et=he;return[()=>{let le=we(v());return Re(le,Et)?(Et.data=le.data,Et.isLoading=le.isLoading,Et.isValidating=le.isValidating,Et.error=le.error,Et):(Et=le,le)},()=>Nt]},[n,C]),sr=(0,Cp.useSyncExternalStore)((0,qe.useCallback)(ae=>U(C,(ne,we)=>{Re(we,ne)||ae()}),[n,C]),Yn[0],Yn[1]),re=p[C]&&p[C].length>0,cr=sr.data,Vr=q(cr)?te&&cA(te)?gp(te):te:cr,Mo=sr.error,Xi=(0,qe.useRef)(Vr),_o=m?q(cr)?q(Xi.current)?Vr:Xi.current:cr:Vr,Yr=C&&q(Vr),mn=(0,qe.useRef)(null);!Vn&&(0,Cp.useSyncExternalStore)(B5,()=>(mn.current=!1,mn),()=>(mn.current=!0,mn));let QA=mn.current;d&&QA&&!i&&Yr&&console.warn(`Missing pre-initiated data for serialized key "${C}" during server-side rendering. Data fetching should be initiated on the server and provided to SWR via fallback data. You can set "strictServerPrefetchWarning: false" to disable this warning.`);let Zi=!C||!t||T().isPaused()||re&&!q(Mo)?!1:Tt&&!q(s)?s:i?q(Vr)?!1:c:q(Vr)||c,pe=Tt&&Zi,Is=q(sr.isValidating)?pe:sr.isValidating,ye=q(sr.isLoading)?pe:sr.isLoading,pn=(0,qe.useCallback)(async ae=>{let ne=S.current;if(!C||!ne||b.current||T().isPaused())return!1;let we,he,Nt=!0,Et=ae||{},le=!x[C]||!Et.dedupe,et=()=>AA?!b.current&&C===Q.current&&y.current:C===Q.current,Lt={isValidating:!1,isLoading:!1},Wr=()=>{L(Lt)},ko=()=>{let ut=x[C];ut&&ut[1]===he&&delete x[C]},Do={isValidating:!0};q(v().data)&&(Do.isLoading=!0);try{if(le&&(L(Do),r.loadingTimeout&&q(v().data)&&setTimeout(()=>{Nt&&et()&&T().onLoadingSlow(C,r)},r.loadingTimeout),x[C]=[ne(w),ms()]),[we,he]=x[C],we=await we,le&&setTimeout(ko,r.dedupingInterval),!x[C]||x[C][1]!==he)return le&&et()&&T().onDiscarded(C),!1;Lt.error=He;let ut=E[C];if(!q(ut)&&(he<=ut[0]||he<=ut[1]||ut[1]===0))return Wr(),le&&et()&&T().onDiscarded(C),!1;let ft=v().data;Lt.data=o(ft,we)?ft:we,le&&et()&&T().onSuccess(we,C,r)}catch(ut){ko();let ft=T(),{shouldRetryOnError:gn}=ft;ft.isPaused()||(Lt.error=ut,le&&et()&&(ft.onError(ut,C,ft),(gn===!0||Jt(gn)&&gn(ut))&&(!T().revalidateOnFocus||!T().revalidateOnReconnect||_())&&ft.onErrorRetry(ut,C,ft,No=>{let Lo=p[C];Lo&&Lo[0]&&Lo[0](qn.ERROR_REVALIDATE_EVENT,No)},{retryCount:(Et.retryCount||0)+1,dedupe:!0})))}return Nt=!1,Wr(),!0},[C,n]),ge=(0,qe.useCallback)((...ae)=>uA(n,Q.current,...ae),[]);if(Wi(()=>{S.current=t,k.current=r,q(cr)||(Xi.current=cr)}),Wi(()=>{if(!C)return;let ae=pn.bind(He,hp),ne=0;T().revalidateOnFocus&&(ne=Date.now()+T().focusThrottleInterval);let he=s2(C,p,(Nt,Et={})=>{if(Nt==qn.FOCUS_EVENT){let le=Date.now();T().revalidateOnFocus&&le>ne&&_()&&(ne=le+T().focusThrottleInterval,ae())}else if(Nt==qn.RECONNECT_EVENT)T().revalidateOnReconnect&&_()&&ae();else{if(Nt==qn.MUTATE_EVENT)return pn();if(Nt==qn.ERROR_REVALIDATE_EVENT)return pn(Et)}});return b.current=!1,Q.current=C,y.current=!0,L({_k:w}),Zi&&(x[C]||(q(Vr)||Vn?ae():fp(ae))),()=>{b.current=!0,he()}},[C]),Wi(()=>{let ae;function ne(){let he=Jt(l)?l(v().data):l;he&&ae!==-1&&(ae=setTimeout(we,he))}function we(){!v().error&&(A||T().isVisible())&&(u||T().isOnline())?pn(hp).then(ne):ne()}return ne(),()=>{ae&&(clearTimeout(ae),ae=-1)}},[l,A,u,C]),(0,qe.useDebugValue)(_o),i){if(!AA&&Vn&&Yr)throw new Error("Fallback data is required when using Suspense in SSR.");Yr&&(S.current=t,k.current=r,b.current=!1);let ae=I[C],ne=!q(ae)&&Yr?ge(ae):mA;if(gp(ne),!q(Mo)&&Yr)throw Mo;let we=Yr?pn(hp):mA;!q(_o)&&Yr&&(we.status="fulfilled",we.value=!0),gp(we)}return{mutate:ge,get data(){return ke.data=!0,_o},get error(){return ke.error=!0,Mo},get isValidating(){return ke.isValidating=!0,Is},get isLoading(){return ke.isLoading=!0,ye}}},ZY=Vi.defineProperty(pp,"defaultValue",{value:dA}),Bo=a2(S5);var c2=f(Go());async function l2({start:e,end:t,refName:r,session:n,assemblyName:o}){let{assemblyManager:i,rpcManager:a}=n,s=await i.waitForAssembly(o);if(!s)throw new Error("assembly not found");let c="getSequence";return(await a.call(c,"CoreGetFeatures",{adapterConfig:(0,c2.getConf)(s,["sequence","adapter"]),sessionId:c,regions:[{start:e,end:t,refName:s.getCanonicalRefName(r),assemblyName:o}]}))[0]?.get("seq")??""}var So={revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1,refreshWhenHidden:!1,refreshWhenOffline:!1,shouldRetryOnError:!1};async function Q5({feature:e,assemblyName:t,view:r}){let n=(0,A2.getSession)(r),{start:o,end:i,refName:a}=e.toJSON();return{seq:await l2({start:o,end:i,refName:a,assemblyName:t,session:n})}}function u2({view:e,feature:t}){let r=e?.assemblyNames?.[0],n=t&&r?{feature:t,assemblyName:r,view:e}:void 0,{data:o,error:i}=Bo(n?[n.feature.id(),n.assemblyName,"feature-sequence"]:null,()=>Q5(n),So);return{sequence:o,error:i}}function f2({view:e,feature:t}){let{sequence:r,error:n}=u2({view:e,feature:t});return{proteinSequence:r&&t?Hv({seq:r.seq,feature:t}):"",sequence:r,error:n}}function v5(e,t,r){if(r&&r.length>0){let n=t.find(i=>wo(i)===e),o=n&&r.some(i=>cs(n,i));if(n&&!o){let i=t.find(a=>r.some(s=>cs(a,s)));return i?wo(i):void 0}}}function Jr({feature:e,view:t,validIds:r}){let n=(0,pA.useMemo)(()=>_Q(e),[e]),[o,i]=(0,pA.useState)(()=>wo(n[0])),a=v5(o,n,r)??o,s=n.find(A=>wo(A)===a),{proteinSequence:c,error:l}=f2({view:t,feature:s});return{options:n,selectedId:a,setSelectedId:i,selectedTranscript:s,proteinSequence:c,error:l,validIds:r}}var M5=(0,p2.makeStyles)()({textAreaFont:{fontFamily:"Courier New"},inputContainer:{marginBottom:30},fileContainer:{maxWidth:500},msaInput:{marginBottom:20},queryNameInput:{marginTop:20},warningAlert:{marginTop:10}}),_5=(0,m2.observer)(function({model:t,feature:r,handleClose:n}){let o=(0,d2.getSession)(t),i=rr(t),{classes:a}=M5(),[s,c]=(0,ie.useState)(),[l,A]=(0,ie.useState)("file"),[u,m]=(0,ie.useState)(""),[d,p]=(0,ie.useState)(""),[E,x]=(0,ie.useState)(),[I,C]=(0,ie.useState)(),[w,y]=(0,ie.useState)(""),b=Jr({feature:r,view:i}),{selectedTranscript:Q,error:S}=b;return ie.default.createElement(ie.default.Fragment,null,ie.default.createElement(Cr,{error:s??S},ie.default.createElement(nr.FormControl,{component:"fieldset"},ie.default.createElement(nr.RadioGroup,{row:!0,value:l,onChange:T=>{A(T.target.value)}},ie.default.createElement(nr.FormControlLabel,{value:"file",control:ie.default.createElement(nr.Radio,null),label:"Open files"}),ie.default.createElement(nr.FormControlLabel,{value:"text",control:ie.default.createElement(nr.Radio,null),label:"Paste text"}))),ie.default.createElement("div",{className:a.inputContainer},l==="file"?ie.default.createElement("div",{className:a.fileContainer},ie.default.createElement(Ep.FileSelector,{name:"MSA File .aln (Clustal), .fa/.mfa (aligned FASTA), .stock (Stockholm), etc)",inline:!0,location:E,setLocation:x}),ie.default.createElement(Ep.FileSelector,{name:"Tree file .nh (Newick) or .asn (NCBI COBALT ASN.1)",inline:!0,location:I,setLocation:C})):ie.default.createElement(ie.default.Fragment,null,ie.default.createElement(lt,{variant:"outlined",name:"MSA",multiline:!0,minRows:5,className:a.msaInput,maxRows:10,fullWidth:!0,placeholder:"Paste MSA here",value:u,onChange:T=>{m(T.target.value)}}),ie.default.createElement(lt,{variant:"outlined",name:"Tree",multiline:!0,minRows:5,maxRows:10,fullWidth:!0,placeholder:"Paste newick tree (optional)",value:d,onChange:T=>{p(T.target.value)}}))),ie.default.createElement(Ir,{feature:r,...b}),ie.default.createElement(lt,{variant:"outlined",name:"MSA row name",fullWidth:!0,required:!0,className:a.queryNameInput,placeholder:"Row name in MSA that corresponds to the selected transcript",helperText:"Required: Specify the name of the row in your MSA that should be aligned with the selected transcript",value:w,onChange:T=>{y(T.target.value)}}),w.trim()?null:ie.default.createElement(nr.Alert,{severity:"warning",className:a.warningAlert},"Without specifying the MSA row name, clicking on the MSA will not navigate to the corresponding genome position, and hovering highlights will not work.")),ie.default.createElement(fn,{submitDisabled:!Q||l==="file"&&!E||l==="text"&&!u.trim(),onSubmit:()=>{try{Q&&(c(void 0),Nv({session:o,newViewTitle:bo(Q),view:i,feature:Q,querySeqName:w.trim(),...l==="file"?{msaFilehandle:E,treeFilehandle:I}:{data:{msa:u,tree:d}}}),n())}catch(T){console.error(T),c(T)}},onCancel:n}))}),g2=_5;var Br=f(M()),U2=f(Ce());kd();var H2=f(P()),j2=f(_e());var fe=f(M());im();var qt=f(P()),M2=f(H()),_2=f(_e());var Ze=f(M()),x2=f(Te());V();var h2=f(O(),1),C2=(0,R.createSvgIcon)((0,h2.jsx)("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6zM19 4h-3.5l-1-1h-5l-1 1H5v2h14z"}),"Delete");var gt=f(P()),y2=f(H()),w2=f(_e());var Ip=f(Ce());function gA({newViewTitle:e,view:t,feature:r,blastParams:n}){(0,Ip.getSession)(t).addView("MsaView",{type:"MsaView",displayName:e,connectedViewId:t.id,connectedFeature:r.toJSON(),drawNodeBubbles:!0,colWidth:10,rowHeight:12,blastParams:n})}function E2({newViewTitle:e,view:t,cached:r}){(0,Ip.getSession)(t).addView("MsaView",{type:"MsaView",displayName:e,connectedViewId:t.id,drawNodeBubbles:!0,colWidth:10,rowHeight:12,data:{msa:r.msa,tree:r.tree,treeMetadata:r.treeMetadata}})}function hA(e){let{data:t,error:r,mutate:n}=Bo(`cached-blast-${e.join(",")}`,async()=>(await kQ()).filter(s=>s.geneId&&e.includes(s.geneId)),So);return{results:t??[],error:r,isLoading:!t&&!r,handleDelete:async a=>{await DQ(a),await n(s=>s?.filter(c=>c.id!==a)??[],!1)},handleClearAll:async()=>{await NQ(),await n([],!1)}}}var T5=(0,w2.makeStyles)()({header:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:8},resultList:{maxHeight:300,overflow:"auto"}});function I2(e){let t=[e.geneName,e.transcriptName!==e.geneName?e.transcriptName:void 0].filter(r=>!!r);return t.length>0?t.join(" - "):e.geneId??e.transcriptId??"Unknown"}var k5=(0,y2.observer)(function({model:e,handleClose:t,feature:r}){let{classes:n}=T5(),o=rr(e),[i,a]=(0,Ze.useState)(),s=(0,Ze.useMemo)(()=>ql(r),[r]),{results:c,error:l,isLoading:A,handleDelete:u,handleClearAll:m}=hA(s),d=E=>{E2({view:o,cached:E,newViewTitle:`BLAST - ${I2(E)}`}),t()},p=l??i;return p?Ze.default.createElement(x2.ErrorMessage,{error:p}):A?Ze.default.createElement(gt.Typography,null,"Loading cached results..."):c.length===0?Ze.default.createElement(gt.Typography,{color:"textSecondary"},"No cached BLAST results found for this gene. Run a BLAST query to cache results."):Ze.default.createElement("div",null,Ze.default.createElement("div",{className:n.header},Ze.default.createElement(gt.Typography,{variant:"subtitle1"},"Cached BLAST Results (",c.length,")"),Ze.default.createElement(gt.Button,{size:"small",color:"error",onClick:async()=>{try{a(void 0),await m()}catch(E){a(E)}}},"Clear All")),Ze.default.createElement(gt.List,{dense:!0,className:n.resultList},c.map(E=>Ze.default.createElement(gt.ListItem,{key:E.id,disablePadding:!0,secondaryAction:Ze.default.createElement(gt.IconButton,{edge:"end",size:"small",onClick:async x=>{x.stopPropagation();try{a(void 0),await u(E.id)}catch(I){a(I)}}},Ze.default.createElement(C2,{fontSize:"small"}))},Ze.default.createElement(gt.ListItemButton,{onClick:()=>{d(E)}},Ze.default.createElement(gt.ListItemText,{primary:`${I2(E)} - ${E.blastDatabase}/${E.blastProgram} (${E.msaAlgorithm})`,secondary:`${new Date(E.timestamp).toLocaleString()} - Seq: ${E.proteinSequence.slice(0,30)}...`}))))))}),b2=k5;var xp=f(M()),v2=f(P());var CA="https://blast.ncbi.nlm.nih.gov/Blast.cgi",B2=["clustalo","muscle","kalign","mafft"],S2=["nr","nr_cluster_seq"],Q2=["blastp","quick-blastp"];function gs({value:e,onChange:t,className:r}){return xp.default.createElement(lt,{variant:"outlined",label:"MSA Algorithm",className:r,select:!0,value:e,onChange:n=>{t(n.target.value)}},B2.map(n=>xp.default.createElement(v2.MenuItem,{value:n,key:n},n)))}var D5=(0,_2.makeStyles)()({selectField:{width:150},databaseFieldContainer:{display:"flex"},clusterSeqMessage:{marginLeft:4,alignContent:"center"},cachedResultsAccordion:{marginTop:20},infoText:{marginTop:20}}),N5=(0,M2.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=D5(),a=rr(r),[s,c]=(0,fe.useState)(),[l,A]=(0,fe.useState)("nr"),[u,m]=(0,fe.useState)("clustalo"),[d,p]=(0,fe.useState)("quick-blastp"),E=(0,fe.useMemo)(()=>ql(t),[t]),{results:x,error:I}=hA(E),C=Jr({feature:t,view:a}),{selectedTranscript:w,proteinSequence:y}=C,b=C.error??s??I;return fe.default.createElement(fe.default.Fragment,null,fe.default.createElement(Cr,{error:b},n,fe.default.createElement(lt,{variant:"outlined",label:"BLAST database",className:i.selectField,select:!0,value:l,onChange:Q=>{let S=Q.target.value;A(S),S==="nr_cluster_seq"&&p("blastp")}},S2.map(Q=>fe.default.createElement(qt.MenuItem,{value:Q,key:Q},Q))),fe.default.createElement(gs,{className:i.selectField,value:u,onChange:m}),fe.default.createElement("div",{className:i.databaseFieldContainer},fe.default.createElement(lt,{variant:"outlined",label:"BLAST program",disabled:l==="nr_cluster_seq",className:i.selectField,select:!0,value:d,onChange:Q=>{p(Q.target.value)}},Q2.map(Q=>fe.default.createElement(qt.MenuItem,{value:Q,key:Q},Q))),l==="nr_cluster_seq"?fe.default.createElement(qt.Typography,{variant:"subtitle2",className:i.clusterSeqMessage},"Can only use blastp on nr_cluster_seq"):null),fe.default.createElement(Ir,{feature:t,...C}),fe.default.createElement(qt.Typography,{className:i.infoText},"This panel will automatically submit a query to NCBI. Using blastp can take 10+ minutes to run, quick-blastp is generally a lot faster but is not available for the clustered database. After completion, all the hits will be run through a multiple sequence alignment. Note: we are not able to currently run NCBI COBALT automatically on the BLAST results, even though that is the method NCBI uses on their website. If you need a COBALT alignment, please use the manual approach of submitting BLAST yourself and downloading the resulting files"),x.length>0?fe.default.createElement(qt.Accordion,{className:i.cachedResultsAccordion},fe.default.createElement(qt.AccordionSummary,{expandIcon:fe.default.createElement(hl,null)},fe.default.createElement(qt.Typography,null,"Previous BLAST Results")),fe.default.createElement(qt.AccordionDetails,null,fe.default.createElement(b2,{model:r,handleClose:e,feature:t}))):null),fe.default.createElement(fn,{submitDisabled:!y,onSubmit:()=>{try{w&&(c(void 0),gA({feature:w,view:a,newViewTitle:jl(t,w),blastParams:{baseUrl:o,blastProgram:d,blastDatabase:l,msaAlgorithm:u,selectedTranscript:w,proteinSequence:y}}),e())}catch(Q){console.error(Q),c(Q)}},onCancel:e}))}),T2=N5;var qr=f(M()),D2=f(Ce()),$i=f(P()),N2=f(H()),L2=f(_e());EA();var L5=(0,L2.makeStyles)()({ncbiLink:{wordBreak:"break-all",margin:30,maxWidth:600},infoText:{marginTop:20}}),R5=(0,N2.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=L5(),a=rr(r),s=Jr({feature:t,view:a}),{proteinSequence:c,error:l}=s,A=Jl(c),u=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${A}`,m=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${(0,D2.shorten2)(A,10)}`;return qr.default.createElement(qr.default.Fragment,null,qr.default.createElement(Cr,{error:l},n,qr.default.createElement(Ir,{feature:t,...s}),c?qr.default.createElement("div",{className:i.ncbiLink},"Link to NCBI BLAST: ",qr.default.createElement(Qo,{href:u},m)):null,qr.default.createElement($i.Typography,{className:i.infoText},`Click the link above and run your BLAST query, and once you have results, click "Multiple Alignment" at the top of the results page to be redirected to COBALT, NCBI's multiple sequence aligner. Once COBALT completes, you can download an MSA (.aln file) and optionally a Newick tree (.nh) and paste the results into JBrowse`)),qr.default.createElement($i.DialogActions,null,qr.default.createElement($i.Button,{color:"primary",variant:"contained",onClick:()=>{e()}},"Close")))}),R2=R5;var dn=f(M()),or=f(P());function wp({lookupMethod:e,setLookupMethod:t}){return dn.default.createElement(or.FormControl,{component:"fieldset"},dn.default.createElement(or.RadioGroup,{row:!0,value:e,onChange:r=>{t(r.target.value)}},dn.default.createElement(or.FormControlLabel,{value:"automatic",control:dn.default.createElement(or.Radio,null),label:"Automatic"}),dn.default.createElement(or.FormControlLabel,{value:"rid",control:dn.default.createElement(or.Radio,null),label:"Load from RID"}),dn.default.createElement(or.FormControlLabel,{value:"manual",control:dn.default.createElement(or.Radio,null),label:"Manual"})))}var ht=f(M()),IA=f(P()),F2=f(H()),P2=f(_e());EA();var F5=(0,P2.makeStyles)()({marginBottom:{marginBottom:16},ridField:{width:150},infoText:{marginTop:20}}),P5=(0,F2.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=F5(),a=rr(r),[s,c]=(0,ht.useState)(),[l,A]=(0,ht.useState)(""),[u,m]=(0,ht.useState)("clustalo"),d=Jr({feature:t,view:a}),{selectedTranscript:p,proteinSequence:E}=d,x=d.error??s,I=l.trim();return ht.default.createElement(ht.default.Fragment,null,ht.default.createElement(Cr,{error:x},n,ht.default.createElement(IA.Typography,{variant:"body2",className:i.marginBottom},"Enter the RID (Request ID) from a previously submitted NCBI BLAST query. You can find the RID in the BLAST results page URL or at the top of the results page. RIDs are typically valid for 24-36 hours after submission."),ht.default.createElement(lt,{variant:"outlined",label:"BLAST RID",placeholder:"e.g., ABC12345",fullWidth:!0,className:i.marginBottom,value:l,onChange:C=>{A(C.target.value)}}),I?ht.default.createElement(IA.Typography,{variant:"body2",className:i.marginBottom},ht.default.createElement(Qo,{href:`${o}?CMD=Get&RID=${I}`},"View BLAST results on NCBI")):null,ht.default.createElement(gs,{className:i.ridField,value:u,onChange:m}),ht.default.createElement(Ir,{feature:t,...d}),ht.default.createElement(IA.Typography,{className:i.infoText},"This will fetch the BLAST results for the provided RID and run them through a multiple sequence alignment. The protein sequence from the selected transcript will be added as the query sequence in the MSA.")),ht.default.createElement(fn,{submitDisabled:!E||!I,onSubmit:()=>{try{p&&I&&(c(void 0),gA({feature:p,view:a,newViewTitle:jl(t,p),blastParams:{baseUrl:o,blastProgram:"blastp",blastDatabase:"nr",msaAlgorithm:u,selectedTranscript:p,proteinSequence:E,rid:I}}),e())}catch(C){console.error(C),c(C)}},onCancel:e}))}),O2=P5;var br=f(M()),ir=f(P()),G2=f(_e());var O5=(0,G2.makeStyles)()({urlField:{minWidth:300}});function bp({handleClose:e,baseUrl:t}){let{classes:r}=O5(),[n,o]=(0,br.useState)(t);return br.default.createElement(ir.Dialog,{open:!0,maxWidth:"lg",onClose:()=>{e()}},br.default.createElement(ir.DialogTitle,null,"BLAST Settings"),br.default.createElement(ir.DialogContent,null,br.default.createElement(lt,{autoFocus:!0,margin:"dense",label:"BLAST Base URL",fullWidth:!0,variant:"outlined",value:n,className:r.urlField,onChange:i=>{o(i.target.value)}}),br.default.createElement(ir.Button,{variant:"contained",onClick:()=>{o(CA)}},"Reset")),br.default.createElement(ir.DialogActions,null,br.default.createElement(ir.Button,{variant:"contained",color:"secondary",onClick:()=>{e()}},"Cancel"),br.default.createElement(ir.Button,{color:"primary",variant:"contained",onClick:()=>{e(n)}},"Save")))}var G5=(0,j2.makeStyles)()({settingsButton:{float:"right"}}),U5={automatic:T2,rid:O2,manual:R2};function Bp({handleClose:e,model:t,feature:r}){let[n,o]=(0,Br.useState)("automatic"),[i,a]=(0,U2.useLocalStorage)("msa-blastRootUrl",CA),[s,c]=(0,Br.useState)(!1),{classes:l}=G5(),A=U5[n];return Br.default.createElement(Br.default.Fragment,null,Br.default.createElement(H2.IconButton,{className:l.settingsButton,size:"small",onClick:()=>{c(!0)}},Br.default.createElement(nl,null)),Br.default.createElement(A,{model:t,feature:r,handleClose:e,baseUrl:i},Br.default.createElement(wp,{lookupMethod:n,setLookupMethod:o})),s?Br.default.createElement(bp,{baseUrl:i,handleClose:u=>{u&&a(u),c(!1)}}):null)}var Ct=f(M()),hs=f(Te()),yA=f(Ce()),K2=f(P()),X2=f(H());var Z2=f(_e());bn();function Sp(e,t="",r=5e3){let n=[e];for(;n.length;){let o=n.pop();for(let[i,a]of Object.entries(o)){if(t.length>r)return dd(t);typeof a=="object"&&a!==null?n.push(a):i==="locationType"&&a==="FileHandleLocation"?t+=`${i}-BlobLocation`:i==="handleId"?t+=`blobId-fh-blob-${a}`:t+=`${i}-${a}`}}return`adp-${dd(t)}`}function J2(e={}){return e.type&&e.adapterId?`${e.type}-${e.adapterId}`:`${Sp(e)}`}var q2={};async function H5(e,t,r){let n=r?.type;if(!n)throw new Error(`could not determine adapter type from adapter config snapshot ${JSON.stringify(r)}`);let o=e.getAdapterType(n);if(!o)throw new Error(`unknown data adapter type ${n}`);let i=o.configSchema.create(r,{pluginManager:e}),a=Qp.bind(null,e,t),s=await o.getAdapterClass();return{dataAdapter:new s(i,a,e),sessionIds:new Set([t])}}async function Qp(e,t,r){let n=J2(r);q2[n]??=H5(e,t,r);let o=await q2[n];return o.sessionIds.add(t),o}async function V2(e,t){return(await Qp(e,"msa",t)).dataAdapter}async function Y2({config:e,pluginManager:t}){return(await V2(t,e)).getMSAList()}async function W2({config:e,pluginManager:t,msaId:r}){return(await V2(t,e)).getMSA(r)}function z2({session:e,newViewTitle:t,view:r,feature:n,data:o,querySeqName:i}){e.addView("MsaView",{type:"MsaView",displayName:t,treeAreaWidth:200,querySeqName:i,treeWidth:100,drawNodeBubbles:!1,labelsAlignRight:!0,showBranchLen:!1,colWidth:10,rowHeight:12,colorSchemeName:"percent_identity_dynamic",data:o,connectedViewId:r.id,connectedFeature:n.toJSON()})}var $2=f(Go());function xA(e){return(0,$2.readConfObject)(e,["msa","datasets"])}var j5=(0,Z2.makeStyles)()({selectedContainer:{marginTop:50}}),J5=(0,X2.observer)(function({model:e,feature:t,handleClose:r}){let n=(0,yA.getSession)(e),o=rr(e),{classes:i}=j5(),{pluginManager:a}=(0,yA.getEnv)(e),{assemblyNames:s}=o,[c,l]=(0,Ct.useState)(),A=xA(n.jbrowse),[u,m]=(0,Ct.useState)(A?.[0]?.datasetId),d=A?.find(k=>k.datasetId===u),{data:p,isLoading:E,error:x}=Bo(d?`${d.datasetId}-msa-list`:null,()=>Y2({config:d.adapter,pluginManager:a}),So),I=Jr({feature:t,view:o,validIds:p}),{selectedId:C,selectedTranscript:w}=I,{data:y,isLoading:b,error:Q}=Bo(C&&d&&p?`${d.datasetId}-${C}-${p.length}-msa`:null,()=>W2({msaId:C,config:d.adapter,pluginManager:a}),So),S=x??Q??I.error??c;return Ct.default.createElement(Ct.default.Fragment,null,Ct.default.createElement(Cr,{error:S},Ct.default.createElement(lt,{select:!0,label:"Select MSA dataset",value:u,onChange:k=>{m(k.target.value)}},A?.map(k=>Ct.default.createElement(K2.MenuItem,{key:k.datasetId,value:k.datasetId},k.name))),d?Ct.default.createElement("div",{className:i.selectedContainer},!E&&b?Ct.default.createElement(hs.LoadingEllipses,{variant:"h6",message:`Loading MSA for (${C})`}):null,E?Ct.default.createElement(hs.LoadingEllipses,{variant:"h6",message:`Loading available MSAs for (${d.name})`}):null,p?Ct.default.createElement("div",null,Ct.default.createElement(hs.SanitizedHTML,{html:d.description}),Ct.default.createElement(Ir,{feature:t,...I})):null):null),Ct.default.createElement(fn,{submitDisabled:!w||!y?.length,onSubmit:()=>{try{if(w&&y){let k=`${C}_${s[0]}`;z2({session:n,newViewTitle:bo(w),view:o,querySeqName:k,feature:w,data:{msa:y.map(T=>`>${T.get("refName")}
75
75
  ${T.get("seq")}`).join(`
76
- `)}}),r()}}catch(k){l(k)}},onCancel:r}))}),CM=h5;var EM=f(v());function ys({children:e,value:t,index:r,...n}){return EM.default.createElement("div",{role:"tabpanel",hidden:t!==r,...n},t===r?e:null)}function Pp({handleClose:e,feature:t,model:r}){let n=(0,xM.getSession)(r),i=!!MA(n.jbrowse)?.length,[a,s]=(0,Lt.useState)("ncbi_blast");return Lt.default.createElement(IM.Dialog,{maxWidth:"xl",title:"Launch MSA view",open:!0,onClose:e},Lt.default.createElement(ta.Tabs,{value:a,onChange:(c,l)=>{s(l)}},Lt.default.createElement(ta.Tab,{label:"NCBI BLAST query",value:"ncbi_blast"}),i?Lt.default.createElement(ta.Tab,{label:"Pre-loaded MSA datasets",value:"preloaded_msa"}):null,Lt.default.createElement(ta.Tab,{label:"Manual upload",value:"manual_msa"})),Lt.default.createElement(ys,{value:a,index:"ncbi_blast"},Lt.default.createElement(Lp,{handleClose:e,feature:t,model:r})),i?Lt.default.createElement(ys,{value:a,index:"preloaded_msa"},Lt.default.createElement(CM,{model:r,feature:t,handleClose:e})):null,Lt.default.createElement(ys,{value:a,index:"manual_msa"},Lt.default.createElement(N2,{model:r,feature:t,handleClose:e})))}function C5(e){return e.name==="LinearBasicDisplay"}function E5(e){return e.views(t=>{let r=t.contextMenuItems;return{contextMenuItems(){let n=t.contextMenuFeature,o=(0,TA.getContainingTrack)(t),i=n?.get("type"),a=n&&["gene","mRNA","transcript"].includes(i);return[...r(),...a?[{label:"Launch MSA view",icon:Kv,onClick:()=>{(0,TA.getSession)(o).queueDialog(s=>[Pp,{model:o,handleClose:s,feature:n}])}}]:[]]}}})}function Op(e){e.addToExtensionPoint("Core-extendPluggableElement",t=>(C5(t)&&(t.stateModel=E5(t.stateModel)),t))}function Gp(e){e.addToExtensionPoint("LaunchView-MsaView",t=>{let{session:r,data:n,msaFileLocation:o,msaIndexedLocation:i,msaName:a,treeFileLocation:s,querySeqName:c,...l}=t;if(!n&&!o&&!i)throw new Error("No MSA data or file location provided when launching MSA view");return r.addView("MsaView",{type:"MsaView",...l,data:n,...s?{treeFilehandle:{...s,locationType:"UriLocation"}}:{},init:{msaUrl:o?.uri,msaIndexedLocation:i,msaName:a,querySeqName:c}}),t})}var PM=f(v()),OM=f(yM());var Q5=(0,PM.lazy)(()=>Promise.resolve().then(()=>(FM(),RM)));function qp(e){e.addViewType(()=>new OM.default({name:"MsaView",stateModel:rp(),ReactComponent:Q5}))}var GM="2.6.3";var NA=class extends UM.default{constructor(){super(...arguments);this.name="MsaViewPlugin";this.version=GM;this.rootConfigurationSchema=r=>({msa:(0,Jp.ConfigurationSchema)("MSA",{datasets:Vp.types.maybe(Vp.types.array((0,Jp.ConfigurationSchema)("MSAEntry",{datasetId:{type:"string",defaultValue:""},description:{type:"string",defaultValue:""},name:{type:"string",defaultValue:""},adapter:r.pluggableConfigSchemaType("adapter")})))})})}install(r){qp(r),Op(r),Gp(r),sp(r),lp(r)}configure(r){(0,HM.isAbstractMenuManager)(r.rootModel)&&r.rootModel.appendToSubMenu(["Add"],{label:"Multiple sequence alignment view",icon:Ig,onClick:n=>{n.addView("MsaView",{})}})}};return A_(v5);})();
76
+ `)}}),r()}}catch(k){l(k)}},onCancel:r}))}),eM=J5;var tM=f(M());function Cs({children:e,value:t,index:r,...n}){return tM.default.createElement("div",{role:"tabpanel",hidden:t!==r,...n},t===r?e:null)}function vp({handleClose:e,feature:t,model:r}){let n=(0,nM.getSession)(r),i=!!xA(n.jbrowse)?.length,[a,s]=(0,Dt.useState)("ncbi_blast");return Dt.default.createElement(rM.Dialog,{maxWidth:"xl",title:"Launch MSA view",open:!0,onClose:e},Dt.default.createElement(Ki.Tabs,{value:a,onChange:(c,l)=>{s(l)}},Dt.default.createElement(Ki.Tab,{label:"NCBI BLAST query",value:"ncbi_blast"}),i?Dt.default.createElement(Ki.Tab,{label:"Pre-loaded MSA datasets",value:"preloaded_msa"}):null,Dt.default.createElement(Ki.Tab,{label:"Manual upload",value:"manual_msa"})),Dt.default.createElement(Cs,{value:a,index:"ncbi_blast"},Dt.default.createElement(Bp,{handleClose:e,feature:t,model:r})),i?Dt.default.createElement(Cs,{value:a,index:"preloaded_msa"},Dt.default.createElement(eM,{model:r,feature:t,handleClose:e})):null,Dt.default.createElement(Cs,{value:a,index:"manual_msa"},Dt.default.createElement(g2,{model:r,feature:t,handleClose:e})))}function q5(e){return e.name==="LinearBasicDisplay"}function V5(e){return e.views(t=>{let r=t.contextMenuItems;return{contextMenuItems(){let n=t.contextMenuFeature,o=(0,wA.getContainingTrack)(t),i=n?.get("type"),a=n&&["gene","mRNA","transcript"].includes(i);return[...r(),...a?[{label:"Launch MSA view",icon:Dv,onClick:()=>{(0,wA.getSession)(o).queueDialog(s=>[vp,{model:o,handleClose:s,feature:n}])}}]:[]]}}})}function Mp(e){e.addToExtensionPoint("Core-extendPluggableElement",t=>(q5(t)&&(t.stateModel=V5(t.stateModel)),t))}function _p(e){e.addToExtensionPoint("LaunchView-MsaView",t=>{let{session:r,data:n,msaFileLocation:o,msaIndexedLocation:i,msaName:a,treeFileLocation:s,querySeqName:c,...l}=t;if(!n&&!o&&!i)throw new Error("No MSA data or file location provided when launching MSA view");return r.addView("MsaView",{type:"MsaView",...l,data:n,...s?{treeFilehandle:{...s,locationType:"UriLocation"}}:{},init:{msaUrl:o?.uri,msaIndexedLocation:i,msaName:a,querySeqName:c}}),t})}var IM=f(M()),xM=f(iM());var e3=(0,IM.lazy)(()=>Promise.resolve().then(()=>(EM(),CM)));function Np(e){e.addViewType(()=>new xM.default({name:"MsaView",stateModel:Ym(),ReactComponent:e3}))}var yM="2.6.4";var SA=class extends wM.default{constructor(){super(...arguments);this.name="MsaViewPlugin";this.version=yM;this.rootConfigurationSchema=r=>({msa:(0,Lp.ConfigurationSchema)("MSA",{datasets:Rp.types.maybe(Rp.types.array((0,Lp.ConfigurationSchema)("MSAEntry",{datasetId:{type:"string",defaultValue:""},description:{type:"string",defaultValue:""},name:{type:"string",defaultValue:""},adapter:r.pluggableConfigSchemaType("adapter")})))})})}install(r){Np(r),Mp(r),_p(r),Km(r),Zm(r)}configure(r){(0,bM.isAbstractMenuManager)(r.rootModel)&&r.rootModel.appendToSubMenu(["Add"],{label:"Multiple sequence alignment view",icon:Ag,onClick:n=>{n.addView("MsaView",{})}})}};return VM(t3);})();
77
77
  /*! Bundled license information:
78
78
 
79
79
  react-is/cjs/react-is.production.min.js: