jbrowse-plugin-msaview 2.5.1 → 2.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/LaunchMsaViewExtensionPoint/index.js +5 -2
- package/dist/MsaViewPanel/afterCreateAutoruns.d.ts +15 -1
- package/dist/MsaViewPanel/afterCreateAutoruns.js +73 -27
- package/dist/MsaViewPanel/fetchTabixMsa.d.ts +12 -0
- package/dist/MsaViewPanel/fetchTabixMsa.js +33 -0
- package/dist/MsaViewPanel/model.js +3 -1
- package/dist/MsaViewPanel/types.d.ts +7 -0
- package/dist/jbrowse-plugin-msaview.umd.production.min.js +29 -27
- package/dist/jbrowse-plugin-msaview.umd.production.min.js.map +4 -4
- package/dist/utils/ncbiDomains.js +3 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +17 -16
- package/src/LaunchMsaViewExtensionPoint/index.ts +10 -1
- package/src/MsaViewPanel/afterCreateAutoruns.ts +84 -30
- package/src/MsaViewPanel/fetchTabixMsa.ts +50 -0
- package/src/MsaViewPanel/model.ts +3 -1
- package/src/MsaViewPanel/types.ts +8 -0
- package/src/utils/domainCache.ts +1 -2
- package/src/utils/ncbiDomains.ts +3 -1
- package/src/version.ts +1 -1
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
"use strict";var JBrowsePluginMsaView=(()=>{var wM=Object.create;var sa=Object.defineProperty;var bM=Object.getOwnPropertyDescriptor;var BM=Object.getOwnPropertyNames;var SM=Object.getPrototypeOf,QM=Object.prototype.hasOwnProperty;var g=(e,t)=>()=>(e&&(t=e(e=0)),t);var j=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),We=(e,t)=>{for(var r in t)sa(e,r,{get:t[r],enumerable:!0})},Wm=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of BM(t))!QM.call(e,o)&&o!==r&&sa(e,o,{get:()=>t[o],enumerable:!(n=bM(t,o))||n.enumerable});return e};var f=(e,t,r)=>(r=e!=null?wM(SM(e)):{},Wm(t||!e||!e.__esModule?sa(r,"default",{value:e,enumerable:!0}):r,e)),MM=e=>Wm(sa({},"__esModule",{value:!0}),e);var $m=j((dR,zm)=>{zm.exports=JBrowseExports["@jbrowse/core/Plugin"]});var Qo=j((mR,Km)=>{Km.exports=JBrowseExports["@jbrowse/core/configuration"]});var de=j((pR,Xm)=>{Xm.exports=JBrowseExports["@jbrowse/core/util"]});var kt=j((gR,Zm)=>{Zm.exports=JBrowseExports["mobx-state-tree"]});var tp=j((hR,ep)=>{ep.exports=JBrowseExports["@mui/material/utils"]});var _,Y=g(()=>{"use client";_=f(tp(),1)});var R=j((ER,rp)=>{rp.exports=JBrowseExports["react/jsx-runtime"]});var Q=j((yR,ip)=>{ip.exports=JBrowseExports.react});var G=j((wR,sp)=>{sp.exports=JBrowseExports["mobx-react"]});var Se=j((bR,ap)=>{ap.exports=JBrowseExports["tss-react/mui"]});var iA=j((MR,Ap)=>{Ap.exports=JBrowseExports["@jbrowse/core/pluggableElementTypes"]});var Ar=j((TR,fp)=>{fp.exports=JBrowseExports.mobx});function la(e){let{scrollX:t,msaAreaWidth:r,minimapHeight:n,colWidth:o,numColumns:i}=e,s=r/i/o,a=-t,c=a*s,l=(a+r)*s,A=Math.max(l-c,20),u=n-12,d=`${c+A},0 ${c},0 0,${u} ${r},${u}`;return{unit:s,s:c,w:A,polygonHeight:u,polygonPoints:d}}var sA=g(()=>{});var Yn,dp,vM,mp,pp=g(()=>{Yn=f(Q(),1),dp=f(G(),1);sA();vM=(0,dp.observer)(({model:e})=>{let{msaAreaWidth:t}=e,{s:r,w:n,polygonPoints:o}=la(e),i="rgb(66, 119, 127)",s=.3;return Yn.default.createElement(Yn.default.Fragment,null,Yn.default.createElement("rect",{x:0,y:0,width:t,height:12,stroke:"#555",fill:"none"}),Yn.default.createElement("rect",{x:Math.max(0,r),y:0,width:n,height:12,fill:i,fillOpacity:s,stroke:"#555"}),Yn.default.createElement("g",{transform:`translate(0 ${12})`},Yn.default.createElement("polygon",{fill:i,fillOpacity:s,points:o})))}),mp=vM});function Aa({model:e,offsetY:t,blockSizeY:r}){let{leaves:n,rowHeight:o}=e,i=Math.max(0,Math.floor((t-o)/o)),s=Math.max(0,Math.ceil((t+r+o)/o));return n.slice(i,s)}var aA=g(()=>{});function ua({model:e,offsetX:t,offsetY:r,ctx:n,highResScaleFactorOverride:o,blockSizeYOverride:i}){let{blockSize:s,rowHeight:a,highResScaleFactor:c,showDomains:l}=e;if(l){let A=o??c,u=i??s;n.resetTransform(),n.scale(A,A),n.translate(-t,a/2-r);let d=Aa({model:e,offsetY:r,blockSizeY:u});TM({model:e,ctx:n,visibleLeaves:d})}}function TM({model:e,ctx:t,visibleLeaves:r}){let{subFeatureRows:n,colWidth:o,rowHeight:i,fillPalette:s,strokePalette:a,tidyFilteredGatheredInterProAnnotations:c}=e;for(let l=0,A=r.length;l<A;l++){let u=r[l],{x:d,data:{name:m}}=u,h=d,E=c[m];if(E)for(let x=0,I=E.length;x<I;x++){let{start:p,end:y,accession:b}=E[x],w=e.seqPosToVisibleCol(m,p-1),S=e.seqPosToVisibleCol(m,y);if(w===void 0||S===void 0)continue;let M=w*o;t.fillStyle=s[b],t.strokeStyle=a[b];let F=n?4:i,D=h-i+(n?x*F:0),L=o*(S-w);t.fillRect(M,D,L,F),t.strokeRect(M,D,L,F)}}}var cA=g(()=>{aA()});function ji({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 lA=g(()=>{});function vr(e,t,r=!1){e.font=e.font.replace(/(?:bold )?[\d.]+px/,`${r?"bold ":""}${t}px`)}var vo=g(()=>{});var _M,Wr,ze,qt,wp,gp,AA,DM,fa,bp,Bp,hp,Cp,Ep,qi,kM,NM,LM,RM,dA,Ip,FM,uA,fA,xp,mA,it,yp,da,ma=g(()=>{_M={grad:.9,turn:360,rad:360/(2*Math.PI)},Wr=function(e){return typeof e=="string"?e.length>0:typeof e=="number"},ze=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=Math.pow(10,t)),Math.round(r*e)/r+0},qt=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=1),e>r?r:e>t?e:t},wp=function(e){return(e=isFinite(e)?e%360:0)>0?e:e+360},gp=function(e){return{r:qt(e.r,0,255),g:qt(e.g,0,255),b:qt(e.b,0,255),a:qt(e.a)}},AA=function(e){return{r:ze(e.r),g:ze(e.g),b:ze(e.b),a:ze(e.a,3)}},DM=/^#([0-9a-f]{3,8})$/i,fa=function(e){var t=e.toString(16);return t.length<2?"0"+t:t},bp=function(e){var t=e.r,r=e.g,n=e.b,o=e.a,i=Math.max(t,r,n),s=i-Math.min(t,r,n),a=s?i===t?(r-n)/s:i===r?2+(n-t)/s:4+(t-r)/s:0;return{h:60*(a<0?a+6:a),s:i?s/i*100:0,v:i/255*100,a:o}},Bp=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),s=n*(1-r),a=n*(1-(t-i)*r),c=n*(1-(1-t+i)*r),l=i%6;return{r:255*[n,a,s,s,c,n][l],g:255*[c,n,n,a,s,s][l],b:255*[s,s,c,n,n,a][l],a:o}},hp=function(e){return{h:wp(e.h),s:qt(e.s,0,100),l:qt(e.l,0,100),a:qt(e.a)}},Cp=function(e){return{h:ze(e.h),s:ze(e.s),l:ze(e.l),a:ze(e.a,3)}},Ep=function(e){return Bp((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},qi=function(e){return{h:(t=bp(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,NM=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,LM=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,RM=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,dA={string:[[function(e){var t=DM.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?ze(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?ze(parseInt(e.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(e){var t=LM.exec(e)||RM.exec(e);return t?t[2]!==t[4]||t[4]!==t[6]?null:gp({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)||NM.exec(e);if(!t)return null;var r,n,o=hp({h:(r=t[1],n=t[2],n===void 0&&(n="deg"),Number(r)*(_M[n]||1)),s:Number(t[3]),l:Number(t[4]),a:t[5]===void 0?1:Number(t[5])/(t[6]?100:1)});return Ep(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 Wr(t)&&Wr(r)&&Wr(n)?gp({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(!Wr(t)||!Wr(r)||!Wr(n))return null;var s=hp({h:Number(t),s:Number(r),l:Number(n),a:Number(i)});return Ep(s)},"hsl"],[function(e){var t=e.h,r=e.s,n=e.v,o=e.a,i=o===void 0?1:o;if(!Wr(t)||!Wr(r)||!Wr(n))return null;var s=(function(a){return{h:wp(a.h),s:qt(a.s,0,100),v:qt(a.v,0,100),a:qt(a.a)}})({h:Number(t),s:Number(r),v:Number(n),a:Number(i)});return Bp(s)},"hsv"]]},Ip=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]},FM=function(e){return typeof e=="string"?Ip(e.trim(),dA.string):typeof e=="object"&&e!==null?Ip(e,dA.object):[null,void 0]},uA=function(e,t){var r=qi(e);return{h:r.h,s:qt(r.s+100*t,0,100),l:r.l,a:r.a}},fA=function(e){return(299*e.r+587*e.g+114*e.b)/1e3/255},xp=function(e,t){var r=qi(e);return{h:r.h,s:r.s,l:qt(r.l+100*t,0,100),a:r.a}},mA=(function(){function e(t){this.parsed=FM(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 ze(fA(this.rgba),2)},e.prototype.isDark=function(){return fA(this.rgba)<.5},e.prototype.isLight=function(){return fA(this.rgba)>=.5},e.prototype.toHex=function(){return t=AA(this.rgba),r=t.r,n=t.g,o=t.b,s=(i=t.a)<1?fa(ze(255*i)):"","#"+fa(r)+fa(n)+fa(o)+s;var t,r,n,o,i,s},e.prototype.toRgb=function(){return AA(this.rgba)},e.prototype.toRgbString=function(){return t=AA(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 Cp(qi(this.rgba))},e.prototype.toHslString=function(){return t=Cp(qi(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=bp(this.rgba),{h:ze(t.h),s:ze(t.s),v:ze(t.v),a:ze(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(uA(this.rgba,t))},e.prototype.desaturate=function(t){return t===void 0&&(t=.1),it(uA(this.rgba,-t))},e.prototype.grayscale=function(){return it(uA(this.rgba,-1))},e.prototype.lighten=function(t){return t===void 0&&(t=.1),it(xp(this.rgba,t))},e.prototype.darken=function(t){return t===void 0&&(t=.1),it(xp(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}):ze(this.rgba.a,3);var r},e.prototype.hue=function(t){var r=qi(this.rgba);return typeof t=="number"?it({h:t,s:r.s,l:r.l,a:r.a}):ze(r.h)},e.prototype.isEqual=function(t){return this.toHex()===it(t).toHex()},e})(),it=function(e){return e instanceof mA?e:new mA(e)},yp=[],da=function(e){e.forEach(function(t){yp.indexOf(t)<0&&(t(mA,dA),yp.push(t))})}});function Sp(e){e.prototype.luminance=function(){return t=gA(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,s,a,c,l=t instanceof e?t:new e(t);return i=this.rgba,s=l.toRgb(),a=gA(i),c=gA(s),r=a>c?(a+.05)/(c+.05):(c+.05)/(a+.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)>=(a=(s=(n=r).size)===void 0?"normal":s,(i=(o=n.level)===void 0?"AA":o)==="AAA"&&a==="normal"?7:i==="AA"&&a==="large"?3:4.5);var n,o,i,s,a}}var pA,gA,Qp=g(()=>{pA=function(e){var t=e/255;return t<.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},gA=function(e){return .2126*pA(e.r)+.7152*pA(e.g)+.0722*pA(e.b)}});function pa(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(s){if(!(this.rgba.a||this.rgba.r||this.rgba.g||this.rgba.b))return"transparent";var a,c,l=n[this.toHex()];if(l)return l;if(s?.closest){var A=this.toRgb(),u=1/0,d="black";if(!i.length)for(var m in r)i[m]=new e(r[m]).toRgb();for(var h in r){var E=(a=A,c=i[h],Math.pow(a.r-c.r,2)+Math.pow(a.g-c.g,2)+Math.pow(a.b-c.b,2));E<u&&(u=E,d=h)}return d}},t.string.push([function(s){var a=s.toLowerCase(),c=a==="transparent"?"#0000":r[a];return c?new e(c).toRgb():null},"name"])}var hA=g(()=>{});function vp(e,t){let r=`${e}|${t}`,n=Mp.get(r);if(n!==void 0)return n;let o=it(e);if(!o.isReadable(t)){let s=it(t).luminance()<.5;for(let a=0;a<40&&!o.isReadable(t);a++)o=s?o.lighten(.05):o.darken(.05)}let i=o.toHex();return Mp.set(r,i),i}function To(e,t){return Object.fromEntries(Object.entries(e).map(t))}function Ji(e,t){return To(e,([r,n])=>[r,t.palette.getContrastText(it(n).toHex())])}function CA(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 Tp(e,t){let r=[],n=e.length,o=0,i=0,s=-1,a=[];for(let c=0;c<t.length;c++)i<n&&e[i]===c?(t.charCodeAt(c)-45>>>0<=1||(s===o?a.push(t[c]):(a.length>0&&r.push({pos:s,letters:a.join("")}),s=o,a=[t[c]])),i++):o++;return a.length>0&&r.push({pos:s,letters:a.join("")}),r}function EA(e){return e.end-e.start}function Vi(e){return e==="-"||e==="."}var Mp,mn=g(()=>{ma();Qp();hA();da([pa,Sp]);Mp=new Map});function ga({model:e,offsetX:t,offsetY:r,contrastScheme:n,ctx:o,theme:i,highResScaleFactorOverride:s,blockSizeXOverride:a,blockSizeYOverride:c}){let{colWidth:l,blockSize:A,rowHeight:u,fontSize:d,highResScaleFactor:m,actuallyShowDomains:h,bgColor:E}=e,x=s??m,I=a??A,p=c??A;o.resetTransform(),o.scale(x,x),o.translate(-t,u/2-r),o.textAlign="center",vr(o,d,!E);let{xStart:y,xEnd:b}=ji({offsetX:t,blockWidth:I,colWidth:l}),w=Aa({model:e,offsetY:r,blockSizeY:p}),{relativeTo:S,columns:M}=e,F=S?M.get(S)?.slice(y,b):null;h?OM({model:e,ctx:o,xStart:y,xEnd:b,visibleLeaves:w,referenceSeq:F}):PM({model:e,ctx:o,theme:i,contrastScheme:n,xStart:y,xEnd:b,visibleLeaves:w,referenceSeq:F}),GM({model:e,ctx:o,xStart:y,xEnd:b,visibleLeaves:w}),o.resetTransform()}function PM({model:e,ctx:t,theme:r,contrastScheme:n,visibleLeaves:o,xStart:i,xEnd:s,referenceSeq:a}){let{bgColor:c,colorSchemeName:l,colorScheme:A,columns:u,colWidth:d,rowHeight:m,relativeTo:h,showMsaLetters:E,colClustalX:x,colConsensus:I}=e,p=l==="clustalx_protein_dynamic",y=l==="percent_identity_dynamic",b=c||p||y;if(!b&&!E)return;let w=i*d,S=d/2,M=m/4;for(let F=0,D=o.length;F<D;F++){let L=o[F],{name:v}=L.data,O=L.x,U=u.get(v)?.slice(i,s);if(!U)continue;let H=O-m,Ve=O-M;for(let ue=0,rt=U.length;ue<rt;ue++){let vt=U[ue],Gn=ue*d+w,nr=a&&v!==h&&vt===a[ue],or;if(p)or=x[i+ue][vt];else if(y){let ir=I[i+ue];or=vt===ir.letter?ir.color:void 0}else or=A[vt];b&&(t.fillStyle=nr?r.palette.action.hover:or||r.palette.background.default,t.fillRect(Gn,H,d,m)),E&&(t.fillStyle=c?n[vt]??"black":or?vp(or,r.palette.background.default):r.palette.text.primary,t.fillText(nr?".":vt,Gn+S,Ve))}}}function OM({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o,referenceSeq:i}){let{showMsaLetters:s,columns:a,colWidth:c,rowHeight:l,relativeTo:A}=e;if(!s)return;let u=n*c,d=c/2,m=l/4;t.fillStyle="black";for(let h=0,E=r.length;h<E;h++){let x=r[h],{name:I}=x.data,p=x.x-m,y=a.get(I)?.slice(n,o);if(y)for(let b=0,w=y.length;b<w;b++){let S=y[b],M=i&&I!==A&&S===i[b];t.fillText(M?".":S,b*c+u+d,p)}}}function GM({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o}){let{bgColor:i,hideGapsEffective:s}=e;s&&(t.lineWidth=1,t.strokeStyle="#f0f",_p({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:0}),t.strokeStyle=i?"#fff":"#000",_p({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:-1}))}function _p({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o,offset:i}){let{colWidth:a,rowHeight:c,insertionPositions:l}=e;for(let A of r){let{name:u}=A.data,d=l.get(u);if(d){let m=A.x;for(let{pos:h}of d)if(h>=n&&h<o){let E=h*a,x=m-c,I=m;t.beginPath(),t.moveTo(E+i,x+i);let p=x,y=!0;for(;p<I;){let b=Math.min(p+2,I),w=y?E+1:E-1;t.lineTo(w+i,b+i),p=b,y=!y}t.stroke()}}}}var IA=g(()=>{aA();lA();vo();mn()});function xA({ctx:e,conservation:t,colWidth:r,trackHeight:n,offsetX:o,blockSize:i}){let{xStart:s,xEnd:a}=ji({offsetX:o,blockWidth:i,colWidth:r});e.fillStyle="gray";for(let c=s;c<a&&c<t.length;c++){let A=t[c]*n,u=c*r;e.fillRect(u,n-A,r,A)}}function yA({ctx:e,data:t,colorScheme:r,contrastScheme:n,bgColor:o,colWidth:i,rowHeight:s,offsetX:a,blockSize:c}){let{xStart:l,xEnd:A}=ji({offsetX:a,blockWidth:c,colWidth:i}),u=t?.slice(l,A);for(let d=0;u&&d<u.length;d++){let m=u[d],h=r[m.toUpperCase()];if(o){let E=(l+d)*i;e.fillStyle=h||"white",e.fillRect(E,0,i,s),s>=10&&i>=s/2&&(e.fillStyle=n[m.toUpperCase()]||"black",e.fillText(m,E+i/2,s/2+1))}}}function UM({model:e,ctx:t,offsetX:r,offsetY:n,trackHeight:o,blockSizeXOverride:i,highResScaleFactorOverride:s}){let{blockSize:a,colWidth:c,highResScaleFactor:l,conservation:A}=e,u=i??a,d=s??l;t.resetTransform(),t.scale(d,d),t.translate(-r,n),xA({ctx:t,conservation:A,colWidth:c,trackHeight:o,offsetX:r,blockSize:u}),t.resetTransform()}function HM({model:e,ctx:t,track:r,offsetX:n,offsetY:o,contrastScheme:i,blockSizeXOverride:s,highResScaleFactorOverride:a}){let{blockSize:c,bgColor:l,colorScheme:A,colWidth:u,fontSize:d,rowHeight:m,highResScaleFactor:h}=e,{customColorScheme:E,data:x}=r.model,I=E??A,p=s??c,y=a??h;t.resetTransform(),t.scale(y,y),t.translate(-n,o),t.textAlign="center",vr(t,d),yA({ctx:t,data:x,colorScheme:I,contrastScheme:i,bgColor:l,colWidth:u,rowHeight:m,offsetX:n,blockSize:p}),t.resetTransform()}function Dp({model:e,ctx:t,offsetX:r,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}){let{turnedOnTracks:s}=e,a=0;for(let c of s){let l=c.model.height;c.model.id==="conservation"?UM({model:e,ctx:t,offsetX:r,offsetY:a,trackHeight:l,blockSizeXOverride:o,highResScaleFactorOverride:i}):HM({model:e,ctx:t,track:c,offsetX:r,offsetY:a,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}),a+=l}}var ha=g(()=>{vo();lA()});function Wn(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 jM(e){let t=Wn(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 kp(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(s=>({data:s,children:null,parent:o,depth:o.depth+1,height:0}));for(let s of o.children)n.push(s)}}return jM(r),r}function Np(e,t){let r=Wn(e);for(let n=r.length-1;n>=0;n--){let o=r[n],i=t(o.data);if(o.children)for(let s of o.children)i+=s.value;o.value=i}return e}function Lp(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 Ca(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 Yi(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 Rp(e){let t=[];return wA(e,(r,n)=>{t.push({source:r,target:n})}),t}function wA(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 Wi(e,t){for(let r of Wn(e))t(r)}function Fp(e,t,r){let n=Yi(e),o=n.length,i=t/o;for(let l=0;l<o;l++)n[l].x=(l+.5)*i;let s=Wn(e);for(let l=s.length-1;l>=0;l--){let A=s[l];if(A.children){let u=0;for(let d of A.children)u+=d.x;A.x=u/A.children.length}}let a=e.height,c=[{node:e,depth:0}];for(;c.length>0;){let{node:l,depth:A}=c.pop();if(l.y=a===0?r:A/a*r,l.children)for(let u of l.children)c.push({node:u,depth:A+1})}}function Pp(e){e.children&&(zi(e),e._children=e.children,e.children=null)}function Op(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:s}=o.pop(),a=i.children??i._children;if(a?.length)for(let c of a)o.push({node:c,acc:s+Math.max(c.data.length??0,0)});else r=Math.min(r,s),n=Math.max(n,s)}}return{min:r===1/0?0:r,max:n}}function zi(e){let t=Wn(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 Gp(e){let t=0;for(let r of Wn(e))t=Math.max(t,r.len||0);return t}function Up(e){let t=Wn(e),r=new Map;for(let n=t.length-1;n>=0;n--){let o=t[n],i=0;if(o.children)for(let s of o.children)i=Math.max(i,r.get(s));r.set(o,(o.data.length||0)+i)}return r.get(e)}function Hp(e,t,r){let n=[{node:e,y0:t}];for(;n.length>0;){let{node:o,y0:i}=n.pop(),s=i+Math.max(o.data.length||0,0);if(o.len=s*r,o.children)for(let a of o.children)n.push({node:a,y0:s})}}var bA=g(()=>{});function $i(e,t,r,n){if(t)return e.len;if(n===0)return 0;let o=zi(e);return(n-o)/n*r}function qM({offsetY:e,ctx:t,model:r,theme:n,maxBranchLen:o,maxDepthToLeaf:i,blockSizeYOverride:s}){let{hierarchy:a,showBranchLenEffective:c,blockSize:l}=r,A=s??l;t.strokeStyle=n.palette.text.primary,wA(a,(u,d)=>{let m=u.x,h=d.x,E=$i(d,c,o,i),x=$i(u,c,o,i);if(E===void 0||x===void 0)return;let I=Math.min(m,h),p=Math.max(m,h);e+A>=I&&p>=e&&(t.beginPath(),t.moveTo(x,m),t.lineTo(x,h),t.lineTo(E,h),t.stroke())})}function JM({ctx:e,clickMap:t,offsetY:r,model:n,theme:o,maxBranchLen:i,maxDepthToLeaf:s,blockSizeYOverride:a}){let{hierarchy:c,showBranchLenEffective:l,collapsed:A,blockSize:u,rowHeight:d,fontSize:m,marginLeft:h}=n,E=a??u,x=Math.max(2,d*.42);Wi(c,I=>{let{id:p,name:y}=I.data;if(A.includes(p)){let b=$i(I,l,i,s),w=I.x,S=w>r-_o&&w<r+E+_o,M=l?I.collapsedTipXFar??i:i;if(b!==void 0&&S&&M>b){e.beginPath(),e.moveTo(b,w),e.lineTo(M,w-x),e.lineTo(M,w+x),e.closePath(),e.fillStyle=o.palette.action.disabled,e.fill(),e.strokeStyle=o.palette.text.primary,e.stroke();let F=I.value;F!==void 0&&d>=8&&(e.fillStyle=o.palette.text.primary,e.textAlign="left",e.fillText(`${F}`,M+3,w+m/4));let D=y===p?"Collapsed clade":y;t?.insert({minX:b+h,maxX:M+h,minY:w-x,maxY:w+x,branch:!0,id:p,name:F===void 0?D:`${D} (${F} tips)`})}}})}function VM({ctx:e,clickMap:t,offsetY:r,model:n,maxBranchLen:o,maxDepthToLeaf:i,blockSizeYOverride:s}){let{hierarchy:a,showBranchLenEffective:c,collapsed:l,blockSize:A,marginLeft:u}=n,d=s??A;Wi(a,m=>{let h=$i(m,c,o,i);if(h===void 0)return;let{data:E}=m,x=m.x,{id:I,name:p}=E;if(m.height>=1&&x>r-_o&&x<r+d+_o){let y=l.includes(I);e.strokeStyle="black",e.fillStyle=y?"black":"white",e.beginPath(),e.arc(h,x,zn,0,2*Math.PI),e.fill(),e.stroke(),y||t?.insert({minX:h-zn+u,maxX:h-zn+BA+u,minY:x-zn,maxY:x-zn+BA,branch:!0,id:I,name:p})}})}function YM({theme:e,model:t,offsetY:r,ctx:n,clickMap:o,maxBranchLen:i,maxDepthToLeaf:s,blockSizeYOverride:a}){let{fontSize:c,showBranchLenEffective:l,treeMetadata:A,blockSize:u,labelsAlignRight:d,drawTree:m,treeAreaWidth:h,treeAreaWidthMinusMargin:E,marginLeft:x,leaves:I,noTree:p,labelWidthMap:y,collapsed:b}=t,w=a??u,S=n.measureText("M").width;d?(n.textAlign="right",n.setLineDash([1,3])):n.textAlign="start";for(let M of I){let{data:{name:F,id:D}}=M,L=M.x,v=A[F]?.genome||F;if(!(b.includes(D)&&F===D)&&L>r-_o&&L<r+w+_o){let U=L+c/4,H=0;p||(H=$i(M,l,i,s)??0);let Ve=y.get(F)??n.measureText(v).width;if(n.fillStyle=e.palette.text.primary,d){let rt=E-2;m&&!p&&(n.moveTo(H+zn+2,L),n.lineTo(rt-2-Ve,L),n.stroke()),n.fillText(v,rt,U),o?.insert({minX:h-Ve,maxX:h,minY:U-S,maxY:U,name:F,id:D})}else{let ue=p?2:H+BA;n.fillText(v,ue,U),o?.insert({minX:ue+x,maxX:ue+Ve+x,minY:U-S,maxY:U,name:F,id:D})}}}n.setLineDash([])}function Ea({model:e,clickMap:t,ctx:r,offsetY:n,theme:o,highResScaleFactorOverride:i,blockSizeYOverride:s}){t?.clear();let{noTree:a,drawTree:c,drawNodeBubbles:l,highResScaleFactor:A,fontSize:u,showTreeText:d,marginLeft:m,rowHeight:h}=e;r.resetTransform();let E=i??A;r.scale(E,E),r.translate(m,-n),vr(r,u);let{maxBranchLength:x,maxDepthToLeaf:I}=e;!a&&c&&(qM({ctx:r,offsetY:n,model:e,theme:o,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:s}),JM({ctx:r,clickMap:t,offsetY:n,model:e,theme:o,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:s}),l&&VM({ctx:r,offsetY:n,clickMap:t,model:e,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:s})),d&&YM({ctx:r,offsetY:n,model:e,clickMap:t,theme:o,maxBranchLen:x,maxDepthToLeaf:I,blockSizeYOverride:s}),t?.finish()}var Do,_o,zn,BA,Ia=g(()=>{bA();vo();Do=600,_o=5,zn=2.5,BA=zn*2});var Jp={};We(Jp,{Context:()=>MA});function jp(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 SA(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 WM(e,t=10){let r={},n=e.split(",");for(let o=0;o<n.length;o+=2){let i="&"+n[o+1]+";",s=parseInt(n[o],t);r[i]="&#"+s+";"}return r["\\xa0"]=" ",r}function zM(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 qp,Ki,Xi,QA,MA,Vp=g(()=>{qp=WM("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),Ki={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"}},Xi=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)),jp(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",jp(r));this.__root.appendChild(n)}},QA=class{__root;__ctx;constructor(t,r){this.__root=t,this.__ctx=r}},MA=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(Ki))this[t]=Ki[t].canvas}__applyStyleState(t){for(let r of Object.keys(t))this[r]=t[r]}__getStyleState(){let t={};for(let r of Object.keys(Ki))t[r]=this[r];return t}__applyTransformation(t,r){let{a:n,b:o,c:i,d:s,e:a,f:c}=r||this.getTransform();t.setAttribute("transform",`matrix(${n} ${o} ${i} ${s} ${a} ${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(Ki);for(let i of o){let s=Ki[i],a=this[i];if(s.apply){if(a instanceof QA){if(a.__ctx)for(let c of Array.from(a.__ctx.__defs.childNodes)){let l=c.getAttribute("id");l&&(this.__ids[l]=l,this.__defs.appendChild(c))}r.setAttribute(s.apply,ur("url(#{id})",{id:a.__root.getAttribute("id")}))}else if(a instanceof Xi)r.setAttribute(s.apply,ur("url(#{id})",{id:a.__root.getAttribute("id")}));else if(s.apply.includes(t)&&s.svg!==a)if((s.svgAttr==="stroke"||s.svgAttr==="fill")&&a&&a.includes("rgba")){let l=/rgba\(\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi.exec(a);if(l){r.setAttribute(s.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(s.svgAttr+"-opacity",String(A))}}else{let c=s.svgAttr,l=a;if(i==="globalAlpha"){if(c=t+"-"+s.svgAttr,r.getAttribute(c))continue}else if(i==="lineWidth"){let A=this.__getTransformScale();l=a*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(qp)){let i=new RegExp(o,"gi");i.test(r)&&(r=r.replace(i,qp[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,s){this.__currentPosition={x:i,y:s},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,s).x,y:this.__matrixTransform(i,s).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:s,c:a,d:c,e:l,f:A}=this.getTransform();JSON.stringify([i,s,a,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:s,c:a,d:c,e:l,f:A}=this.getTransform();if(JSON.stringify([i,s,a,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:SA(this.__ids),x1:t+"px",x2:n+"px",y1:r+"px",y2:o+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(i),new Xi(i,this)}createRadialGradient(t,r,n,o,i,s){let a=this.__createElement("radialGradient",{id:SA(this.__ids),cx:o+"px",cy:i+"px",r:s+"px",fx:t+"px",fy:r+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(a),new Xi(a,this)}__applyText(t,r,n,o){let i=document.createElement("span");i.setAttribute("style","font:"+this.font);let s=i.style,a=this.__closestGroupOrSvg(),c=this.__createElement("text",{"font-family":s.fontFamily,"font-size":s.fontSize,"font-style":s.fontStyle,"font-weight":s.fontWeight,"text-decoration":this.__fontUnderline,x:r,y:n,"text-anchor":zM(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}a.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,s){if(o===i)return;o=o%(2*Math.PI),i=i%(2*Math.PI),o===i&&(i=(i+2*Math.PI-.001*(s?-1:1))%(2*Math.PI));let a=t+n*Math.cos(i),c=r+n*Math.sin(i),l=t+n*Math.cos(o),A=r+n*Math.sin(o),u=s?0:1,d=0,m=i-o;m<0&&(m+=2*Math.PI),s?d=m>Math.PI?0:1:d=m>Math.PI?1:0;let h=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*h,ry:n*E,xAxisRotation:0,largeArcFlag:d,sweepFlag:u,endX:this.__matrixTransform(a,c).x,endY:this.__matrixTransform(a,c).y})),this.__currentPosition={x:a,y:c}}clip(){let t=this.__closestGroupOrSvg(),r=this.__createElement("clipPath"),n=SA(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,s){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,s])}getTransform(){let{a:t,b:r,c:n,d:o,e:i,f:s}=this.__transformMatrix;return new DOMMatrix([t,r,n,o,i,s])}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,s){let a=this.getTransform().multiply(new DOMMatrix([t,r,n,o,i,s]));this.setTransform(a)}__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 Kp={};We(Kp,{renderToSvg:()=>$p});async function $p(e,t){await(0,zp.when)(()=>e.dataInitialized);let{width:r,height:n,scrollX:o,scrollY:i,totalTrackAreaHeight:s,minimapHeight:a}=e,{exportType:c,theme:l,includeTracks:A}=t,u=A?s:0,d=c==="viewport"&&!!t.includeMinimap;return Yp(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:d,includeTracks:A}:{width:r,height:n+(d?a:0)+u,contentHeight:n,trackHeight:u,theme:l,model:e,offsetY:-i,offsetX:-o,includeMinimap:d,includeTracks:A})}async function Yp({width:e,height:t,contentHeight:r,trackHeight:n,offsetX:o,offsetY:i,theme:s,model:a,includeMinimap:c,includeTracks:l}){let{Context:A}=await Promise.resolve().then(()=>(Vp(),Jp)),{treeAreaWidth:u,minimapHeight:d}=a,m=oe.default.createElement(oe.default.Fragment,null,l&&n>0?oe.default.createElement(XM,{Context:A,model:a,theme:s,offsetX:o,msaAreaWidth:e-u,trackHeight:n}):null,oe.default.createElement("g",{transform:n>0?`translate(0 ${n})`:void 0},oe.default.createElement(KM,{Context:A,model:a,theme:s,offsetX:o,offsetY:i,msaAreaWidth:e-u,contentHeight:r})));return(0,Wp.renderToStaticMarkup)(oe.default.createElement(ZM,{width:e,height:t},c?oe.default.createElement(oe.default.Fragment,null,oe.default.createElement("g",{transform:`translate(${u} 0)`},oe.default.createElement(mp,{model:a})),oe.default.createElement("g",{transform:`translate(0 ${d})`},m)):m))}function KM({model:e,theme:t,msaAreaWidth:r,contentHeight:n,offsetX:o,offsetY:i,Context:s}){let{treeAreaWidth:a,colorScheme:c,id:l}=e,A=`tree-${l}`,u=`msa-${l}`,d=Ji(c,t),m=new s(a,n),h=new s(r,n);return ua({ctx:h,offsetX:o,offsetY:i,model:e,blockSizeYOverride:n,highResScaleFactorOverride:1}),Ea({model:e,offsetY:i,ctx:m,theme:t,blockSizeYOverride:n,highResScaleFactorOverride:1}),ga({model:e,theme:t,offsetY:i,offsetX:o,contrastScheme:d,ctx:h,blockSizeXOverride:r,blockSizeYOverride:n,highResScaleFactorOverride:1}),oe.default.createElement(oe.default.Fragment,null,oe.default.createElement("defs",null,oe.default.createElement("clipPath",{id:A},oe.default.createElement("rect",{x:0,y:0,width:a,height:n})),oe.default.createElement("clipPath",{id:u},oe.default.createElement("rect",{x:0,y:0,width:r,height:n}))),oe.default.createElement(vA,{clipId:A,html:m.getSvg().innerHTML}),oe.default.createElement(vA,{clipId:u,transform:`translate(${a} 0)`,html:h.getSvg().innerHTML}))}function vA({clipId:e,html:t,transform:r}){return oe.default.createElement("g",{clipPath:`url(#${e})`,transform:r,dangerouslySetInnerHTML:{__html:t}})}function XM({model:e,theme:t,msaAreaWidth:r,trackHeight:n,offsetX:o,Context:i}){let{treeAreaWidth:s,colorScheme:a,id:c}=e,l=`tracks-${c}`,A=Ji(a,t),u=new i(r,n);return Dp({model:e,ctx:u,offsetX:o,contrastScheme:A,blockSizeXOverride:r,highResScaleFactorOverride:1}),oe.default.createElement("g",{transform:`translate(${s} 0)`},oe.default.createElement("defs",null,oe.default.createElement("clipPath",{id:l},oe.default.createElement("rect",{x:0,y:0,width:r,height:n}))),oe.default.createElement(vA,{clipId:l,html:u.getSvg().innerHTML}))}function ZM({width:e,height:t,children:r}){return oe.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}`},oe.default.createElement("rect",{width:"100%",height:"100%",fill:"white"}),r)}var oe,Wp,zp,TA=g(()=>{oe=f(Q(),1),Wp=f(de(),1),zp=f(Ar(),1);pp();cA();IA();ha();Ia();mn()});var Qe=j((AF,Xp)=>{Xp.exports=JBrowseExports["@jbrowse/core/ui"]});var Zp,eg,ko,_A=g(()=>{Zp=f(R(),1),eg=f(Q(),1),ko=class extends eg.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,Zp.jsx)(this.props.FallbackComponent,{error:this.state.error}):this.props.children}}});var k=j((fF,tg)=>{tg.exports=JBrowseExports["@mui/material"]});function e2(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 t2(){return typeof window>"u"?1:window.devicePixelRatio}function ng(){return(0,rg.useSyncExternalStore)(e2,t2,()=>1)}var rg,og=g(()=>{rg=f(Q(),1)});function pn(e,t){let r=(0,No.useRef)(!1),[n,o]=(0,No.useState)();return(0,No.useEffect)(()=>{if(n!==void 0){let a=function(l){r.current||(r.current=!0,requestAnimationFrame(()=>{let A=e==="x"?l.clientX:l.clientY;t(A-i,s),r.current=!1}))},c=function(){o(void 0)},{client:i,startScroll:s}=n;return document.addEventListener("mousemove",a),document.addEventListener("mouseup",c),()=>{document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",c)}}},[e,t,n]),{dragging:n!==void 0,startDrag:(i,s)=>{o({client:e==="x"?i.clientX:i.clientY,startScroll:s})}}}var No,xa=g(()=>{No=f(Q(),1)});var Jt,ya,DA,kA,ig,sg,ag,NA=g(()=>{Jt=f(Q(),1),ya=f(G(),1);xa();DA="rgba(200,200,200)",kA="rgba(150,150,150)",ig=(0,ya.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,Jt.useState)(!1),{startDrag:o}=pn("x",(0,Jt.useCallback)((i,s)=>{e.setTreeAreaWidth(s+i)},[e]));return Jt.default.createElement("div",{onMouseDown:i=>{o(i,e.treeAreaWidth)},onMouseEnter:()=>{n(!0)},onMouseLeave:()=>{n(!1)},style:{cursor:"ew-resize",width:t,background:r?kA:DA,position:"relative"}})}),sg=(0,ya.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,Jt.useState)(!1),{startDrag:o}=pn("y",(0,Jt.useCallback)((i,s)=>{e.setHeight(s+i)},[e]));return Jt.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?kA:DA,position:"relative"}})}),ag=(0,ya.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,Jt.useState)(!1),{startDrag:o}=pn("y",(0,Jt.useCallback)((i,s)=>{e.setConservationTrackHeight(Math.max(10,s+i))},[e]));return Jt.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?kA:DA}})})});var cg,lg,Ag=g(()=>{"use client";Y();cg=f(R(),1),lg=(0,_.createSvgIcon)((0,cg.jsx)("path",{d:"m7 10 5 5 5-5z"}),"ArrowDropDown")});function ug(e,t){return t===1?e*16:t===2?e*100:e}function fg(e){let t=Math.abs(e);return t<6?25:t>150?500:t>30?150:75}function dg(e,t){let r=r2*t,n=Math.max(-r,Math.min(r,e));return n>0?1/(1+n):1-n}var r2,mg=g(()=>{r2=.011997600479904018});function Lo({ref:e,onScrollX:t,onScrollY:r,onZoom:n,scrollZoom:o}){let i=(0,ut.useRef)(!1),s=(0,ut.useRef)(!1),a=(0,ut.useRef)(0),c=(0,ut.useRef)(0),l=(0,ut.useRef)(0),A=(0,ut.useRef)(0),u=(0,ut.useRef)(0),d=(0,ut.useRef)(null),m=(0,ut.useRef)(0),h=(0,ut.useRef)(0),[E,x]=(0,ut.useState)(!1);(0,ut.useEffect)(()=>{let y=e.current;if(!y)return;function b(w){let S=w.ctrlKey||w.metaKey,M=o&&!w.shiftKey&&Math.abs(w.deltaY)>=Math.abs(w.deltaX);if(n&&(S||M)){let L=y.getBoundingClientRect(),v=ug(w.deltaY,w.deltaMode),O=S?fg(v):500;l.current+=v/O,A.current=w.clientX-L.left,u.current=w.clientY-L.top,s.current||(s.current=!0,requestAnimationFrame(U=>{let H=d.current===null?16.67:U-d.current;d.current=U,n(dg(l.current,Math.min(100,H)),A.current,u.current),l.current=0,s.current=!1})),w.preventDefault(),w.stopPropagation();return}let F=!!t&&w.deltaX!==0,D=!!r&&w.deltaY!==0;(F||D)&&(t&&(a.current+=w.deltaX),r&&(c.current+=w.deltaY),i.current||(i.current=!0,requestAnimationFrame(()=>{t&&(t(-a.current),a.current=0),r&&(r(-c.current),c.current=0),i.current=!1})),w.preventDefault(),w.stopPropagation())}return y.addEventListener("wheel",b,{passive:!1}),()=>{y.removeEventListener("wheel",b)}},[e,t,r,n,o]),(0,ut.useEffect)(()=>{if(!E)return;function y(w){w.preventDefault();let S=w.clientX-m.current,M=w.clientY-h.current;(S&&t||M&&r)&&(i.current||(i.current=!0,requestAnimationFrame(()=>{t?.(S),r?.(M),i.current=!1,m.current=w.clientX,h.current=w.clientY})))}function b(){m.current=0,h.current=0,x(!1)}return window.addEventListener("mousemove",y,!0),window.addEventListener("mouseup",b,!0),()=>{window.removeEventListener("mousemove",y,!0),window.removeEventListener("mouseup",b,!0)}},[E,t,r]);function I(y){let b=y.target;b.draggable||b.dataset.resizer||y.button===0&&(m.current=y.clientX,h.current=y.clientY,x(!0))}function p(y){y.preventDefault(),x(!1)}return{onMouseDown:I,onMouseUp:p}}var ut,wa=g(()=>{ut=f(Q(),1);mg()});function Zi(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 LA=g(()=>{});var Cg={};We(Cg,{default:()=>s2});var zr,pg,$n,gg,hg,o2,i2,s2,Eg=g(()=>{zr=f(Q(),1),pg=f(Qe(),1),$n=f(k(),1),gg=f(G(),1),hg=f(Se(),1);LA();o2=(0,hg.makeStyles)()(e=>({textArea:{padding:e.spacing(2),overflow:"auto",background:"#ddd",wordBreak:"break-word"}})),i2=(0,gg.observer)(function({model:e,onClose:t}){let[r,n]=(0,zr.useState)("Copy to clipboard"),{classes:o}=o2();return zr.default.createElement(pg.Dialog,{open:!0,onClose:t,fullWidth:!0,maxWidth:"lg",title:`Track info - ${e.name}`},zr.default.createElement($n.DialogContent,null,zr.default.createElement($n.Button,{variant:"contained",color:"primary",onClick:()=>{Zi(e.data),n("Copied!"),setTimeout(()=>{n("Copy to clipboard")},300)}},r),zr.default.createElement("pre",{className:o.textArea},e.data)),zr.default.createElement($n.DialogActions,null,zr.default.createElement($n.Button,{variant:"contained",onClick:t,color:"secondary"},"Close")))}),s2=i2});var Fe,Kn,RA,Ig,a2,c2,l2,A2,xg,yg=g(()=>{Fe=f(Q(),1);Ag();Kn=f(k(),1),RA=f(G(),1),Ig=f(Se(),1);wa();a2=(0,Fe.lazy)(()=>Promise.resolve().then(()=>(Eg(),Cg))),c2=(0,Ig.makeStyles)()({button:{padding:0}}),l2=(0,RA.observer)(function({model:t,track:r}){let[n,o]=(0,Fe.useState)(),{drawLabels:i,rowHeight:s,treeAreaWidth:a}=t,{model:{name:c,height:l}}=r,{classes:A}=c2(),u=Math.min(l,Math.max(8,s-8));return Fe.default.createElement("div",{style:{width:a,height:l,flexShrink:0,textAlign:"right",fontSize:u}},i?c:""," ",Fe.default.createElement(Kn.IconButton,{className:A.button,style:{width:u,height:u},onClick:d=>{o(d.currentTarget)}},Fe.default.createElement(lg,null)),n?Fe.default.createElement(Kn.Menu,{anchorEl:n,transitionDuration:0,open:!0,onClose:()=>{o(void 0)}},Fe.default.createElement(Kn.MenuItem,{dense:!0,onClick:()=>{t.toggleTrack(r.model.id),o(void 0)}},"Close"),Fe.default.createElement(Kn.MenuItem,{dense:!0,onClick:()=>{t.queueDialog(d=>[a2,{onClose:d,model:r.model}]),o(void 0)}},"Get info")):null)}),A2=(0,RA.observer)(function({model:e,track:t}){let{resizeHandleWidth:r,colWidth:n,scrollX:o,numColumns:i}=e,{model:{height:s}}=t,a=(0,Fe.useRef)(null),c=(0,Fe.useCallback)(l=>{e.doScrollX(l)},[e]);return Lo({ref:a,onScrollX:c}),Fe.default.createElement("div",{style:{display:"flex",height:s}},Fe.default.createElement(l2,{model:e,track:t}),Fe.default.createElement("div",{style:{width:r,flexShrink:0}}),Fe.default.createElement("div",{ref:a,onMouseMove:l=>{if(!a.current)return;let{left:A}=a.current.getBoundingClientRect(),u=l.clientX-A-o,d=Math.floor(u/n);d>=0&&d<i?e.setMousePos(d,void 0):e.setMousePos(void 0,void 0)},onMouseLeave:()=>{e.setMousePos(void 0,void 0)}},Fe.default.createElement(t.ReactComponent,{model:e,track:t})))}),xg=A2});var Xn,wg,bg,u2,Bg,Sg=g(()=>{Xn=f(Q(),1),wg=f(de(),1),bg=f(G(),1);xa();u2=(0,bg.observer)(({model:e})=>{let{msaAreaHeight:t,scrollY:r,totalHeight:n}=e,[o,i]=(0,Xn.useState)(!1),s="rgba(66, 119, 127, 0.3)",a=t/n,c=-r,l=c+t,A=c*a,u=l*a,{startDrag:d}=pn("y",(0,Xn.useCallback)((m,h)=>{e.setScrollY((0,wg.clamp)(h-m/a,e.maxScrollY,0))},[e,a]));return Xn.default.createElement("div",{style:{position:"relative",width:20,height:t,borderLeft:"1px solid #555",borderTop:"1px solid #555",boxSizing:"border-box"}},Xn.default.createElement("div",{style:{position:"absolute",top:Math.max(0,A),left:0,background:o?"rgba(66,119,127,0.6)":s,cursor:"pointer",boxSizing:"border-box",width:20,height:Math.max(u-A,20),zIndex:100},onMouseOver:()=>{i(!0)},onMouseOut:()=>{i(!1)},onMouseDown:m=>{d(m,e.scrollY)}}))}),Bg=u2});function FA(){let e=(0,Ro.useRef)(null),[t,r]=(0,Ro.useState)({width:void 0,height:void 0});return(0,Ro.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 Ro,Qg=g(()=>{Ro=f(Q(),1)});var Mg,vg,Tg=g(()=>{"use client";Y();Mg=f(R(),1),vg=(0,_.createSvgIcon)((0,Mg.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 _g,Dg,kg=g(()=>{"use client";Y();_g=f(R(),1),Dg=(0,_.createSvgIcon)((0,_g.jsx)("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"ChevronRight")});var Ng,Lg,Rg=g(()=>{"use client";Y();Ng=f(R(),1),Lg=(0,_.createSvgIcon)((0,Ng.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 Fg,ba,PA=g(()=>{"use client";Y();Fg=f(R(),1),ba=(0,_.createSvgIcon)((0,Fg.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 Pg,Og,Gg=g(()=>{"use client";Y();Pg=f(R(),1),Og=(0,_.createSvgIcon)((0,Pg.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 Ug,Hg,jg=g(()=>{"use client";Y();Ug=f(R(),1),Hg=(0,_.createSvgIcon)((0,Ug.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 d2(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 m2(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 f2,qg,Jg=g(()=>{f2=!1;qg=(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?!f2: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(m2(this));var o=this.tags[this.tags.length-1];if(this.isSpeedy){var i=d2(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 st,es,X,Ba,Fo,Po,Vg,Sa,Yg,Qa=g(()=>{st="-ms-",es="-moz-",X="-webkit-",Ba="comm",Fo="rule",Po="decl",Vg="@import",Sa="@keyframes",Yg="@layer"});function $g(e,t){return ke(e,0)^45?(((t<<2^ke(e,0))<<2^ke(e,1))<<2^ke(e,2))<<2^ke(e,3):0}function Ma(e){return e.trim()}function OA(e,t){return(e=t.exec(e))?e[0]:e}function W(e,t,r){return e.replace(t,r)}function ts(e,t){return e.indexOf(t)}function ke(e,t){return e.charCodeAt(t)|0}function gn(e,t,r){return e.slice(t,r)}function Ct(e){return e.length}function Oo(e){return e.length}function Go(e,t){return t.push(e),e}function GA(e,t){return e.map(t).join("")}var Wg,Zn,zg,Uo=g(()=>{Wg=Math.abs,Zn=String.fromCharCode,zg=Object.assign});function rs(e,t,r,n,o,i,s){return{value:e,root:t,parent:r,type:n,props:o,children:i,line:va,column:Ho,length:s,return:""}}function Jo(e,t){return zg(rs("",null,null,"",null,null,0),e,{length:-e.length},t)}function Xg(){return Pe}function Zg(){return Pe=Et>0?ke(qo,--Et):0,Ho--,Pe===10&&(Ho=1,va--),Pe}function It(){return Pe=Et<Kg?ke(qo,Et++):0,Ho++,Pe===10&&(Ho=1,va++),Pe}function Vt(){return ke(qo,Et)}function ns(){return Et}function Vo(e,t){return gn(qo,e,t)}function jo(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 Ta(e){return va=Ho=1,Kg=Ct(qo=e),Et=0,[]}function _a(e){return qo="",e}function Yo(e){return Ma(Vo(Et-1,UA(e===91?e+2:e===40?e+1:e)))}function eh(e){for(;(Pe=Vt())&&Pe<33;)It();return jo(e)>2||jo(Pe)>3?"":" "}function th(e,t){for(;--t&&It()&&!(Pe<48||Pe>102||Pe>57&&Pe<65||Pe>70&&Pe<97););return Vo(e,ns()+(t<6&&Vt()==32&&It()==32))}function UA(e){for(;It();)switch(Pe){case e:return Et;case 34:case 39:e!==34&&e!==39&&UA(Pe);break;case 40:e===41&&UA(e);break;case 92:It();break}return Et}function rh(e,t){for(;It()&&e+Pe!==57;)if(e+Pe===84&&Vt()===47)break;return"/*"+Vo(t,Et-1)+"*"+Zn(e===47?e:It())}function nh(e){for(;!jo(Vt());)It();return Vo(e,Et)}var va,Ho,Kg,Et,Pe,qo,HA=g(()=>{Uo();va=1,Ho=1,Kg=0,Et=0,Pe=0,qo=""});function sh(e){return _a(Da("",null,null,null,[""],e=Ta(e),0,[0],e))}function Da(e,t,r,n,o,i,s,a,c){for(var l=0,A=0,u=s,d=0,m=0,h=0,E=1,x=1,I=1,p=0,y="",b=o,w=i,S=n,M=y;x;)switch(h=p,p=It()){case 40:if(h!=108&&ke(M,u-1)==58){ts(M+=W(Yo(p),"&","&\f"),"&\f")!=-1&&(I=-1);break}case 34:case 39:case 91:M+=Yo(p);break;case 9:case 10:case 13:case 32:M+=eh(h);break;case 92:M+=th(ns()-1,7);continue;case 47:switch(Vt()){case 42:case 47:Go(p2(rh(It(),ns()),t,r),c);break;default:M+="/"}break;case 123*E:a[l++]=Ct(M)*I;case 125*E:case 59:case 0:switch(p){case 0:case 125:x=0;case 59+A:I==-1&&(M=W(M,/\f/g,"")),m>0&&Ct(M)-u&&Go(m>32?ih(M+";",n,r,u-1):ih(W(M," ","")+";",n,r,u-2),c);break;case 59:M+=";";default:if(Go(S=oh(M,t,r,l,A,o,a,y,b=[],w=[],u),i),p===123)if(A===0)Da(M,t,S,S,b,i,u,a,w);else switch(d===99&&ke(M,3)===110?100:d){case 100:case 108:case 109:case 115:Da(e,S,S,n&&Go(oh(e,S,S,0,0,o,a,y,o,b=[],u),w),o,w,u,a,n?b:w);break;default:Da(M,S,S,S,[""],w,0,a,w)}}l=A=m=0,E=I=1,y=M="",u=s;break;case 58:u=1+Ct(M),m=h;default:if(E<1){if(p==123)--E;else if(p==125&&E++==0&&Zg()==125)continue}switch(M+=Zn(p),p*E){case 38:I=A>0?1:(M+="\f",-1);break;case 44:a[l++]=(Ct(M)-1)*I,I=1;break;case 64:Vt()===45&&(M+=Yo(It())),d=Vt(),A=u=Ct(y=M+=nh(ns())),p++;break;case 45:h===45&&Ct(M)==2&&(E=0)}}return i}function oh(e,t,r,n,o,i,s,a,c,l,A){for(var u=o-1,d=o===0?i:[""],m=Oo(d),h=0,E=0,x=0;h<n;++h)for(var I=0,p=gn(e,u+1,u=Wg(E=s[h])),y=e;I<m;++I)(y=Ma(E>0?d[I]+" "+p:W(p,/&\f/g,d[I])))&&(c[x++]=y);return rs(e,t,r,o===0?Fo:a,c,l,A)}function p2(e,t,r){return rs(e,t,r,Ba,Zn(Xg()),gn(e,2,-2),0)}function ih(e,t,r,n){return rs(e,t,r,Po,gn(e,0,n),gn(e,n+1,-1),n)}var ah=g(()=>{Qa();Uo();HA()});var ch=g(()=>{});function eo(e,t){for(var r="",n=Oo(e),o=0;o<n;o++)r+=t(e[o],o,e,t)||"";return r}function lh(e,t,r,n){switch(e.type){case Yg:if(e.children.length)break;case Vg:case Po:return e.return=e.return||e.value;case Ba:return"";case Sa:return e.return=e.value+"{"+eo(e.children,n)+"}";case Fo:e.value=e.props.join(",")}return Ct(r=eo(e.children,n))?e.return=e.value+"{"+r+"}":""}var Ah=g(()=>{Qa();Uo()});function uh(e){var t=Oo(e);return function(r,n,o,i){for(var s="",a=0;a<t;a++)s+=e[a](r,n,o,i)||"";return s}}function fh(e){return function(t){t.root||(t=t.return)&&e(t)}}var dh=g(()=>{Uo()});var mh=g(()=>{Qa();Uo();ah();ch();HA();Ah();dh()});var ka=g(()=>{});function ph(e){var t=Object.create(null);return function(r){return t[r]===void 0&&(t[r]=e(r)),t[r]}}var jA=g(()=>{});function hh(e,t){switch($g(e,t)){case 5103:return X+"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 X+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return X+e+es+e+st+e+e;case 6828:case 4268:return X+e+st+e+e;case 6165:return X+e+st+"flex-"+e+e;case 5187:return X+e+W(e,/(\w+).+(:[^]+)/,X+"box-$1$2"+st+"flex-$1$2")+e;case 5443:return X+e+st+"flex-item-"+W(e,/flex-|-self/,"")+e;case 4675:return X+e+st+"flex-line-pack"+W(e,/align-content|flex-|-self/,"")+e;case 5548:return X+e+st+W(e,"shrink","negative")+e;case 5292:return X+e+st+W(e,"basis","preferred-size")+e;case 6060:return X+"box-"+W(e,"-grow","")+X+e+st+W(e,"grow","positive")+e;case 4554:return X+W(e,/([^-])(transform)/g,"$1"+X+"$2")+e;case 6187:return W(W(W(e,/(zoom-|grab)/,X+"$1"),/(image-set)/,X+"$1"),e,"")+e;case 5495:case 3959:return W(e,/(image-set\([^]*)/,X+"$1$`$1");case 4968:return W(W(e,/(.+:)(flex-)?(.*)/,X+"box-pack:$3"+st+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+X+e+e;case 4095:case 3583:case 4068:case 2532:return W(e,/(.+)-inline(.+)/,X+"$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(Ct(e)-1-t>6)switch(ke(e,t+1)){case 109:if(ke(e,t+4)!==45)break;case 102:return W(e,/(.+:)(.+)-([^]+)/,"$1"+X+"$2-$3$1"+es+(ke(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~ts(e,"stretch")?hh(W(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(ke(e,t+1)!==115)break;case 6444:switch(ke(e,Ct(e)-3-(~ts(e,"!important")&&10))){case 107:return W(e,":",":"+X)+e;case 101:return W(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+X+(ke(e,14)===45?"inline-":"")+"box$3$1"+X+"$2$3$1"+st+"$2box$3")+e}break;case 5936:switch(ke(e,t+11)){case 114:return X+e+st+W(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return X+e+st+W(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return X+e+st+W(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return X+e+st+e+e}return e}var g2,h2,C2,gh,E2,I2,x2,y2,Ch,qA=g(()=>{Jg();mh();ka();jA();g2=function(t,r,n){for(var o=0,i=0;o=i,i=Vt(),o===38&&i===12&&(r[n]=1),!jo(i);)It();return Vo(t,Et)},h2=function(t,r){var n=-1,o=44;do switch(jo(o)){case 0:o===38&&Vt()===12&&(r[n]=1),t[n]+=g2(Et-1,r,n);break;case 2:t[n]+=Yo(o);break;case 4:if(o===44){t[++n]=Vt()===58?"&\f":"",r[n]=t[n].length;break}default:t[n]+=Zn(o)}while(o=It());return t},C2=function(t,r){return _a(h2(Ta(t),r))},gh=new WeakMap,E2=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&&!gh.get(n))&&!o){gh.set(t,!0);for(var i=[],s=C2(r,i),a=n.props,c=0,l=0;c<s.length;c++)for(var A=0;A<a.length;A++,l++)t.props[l]=i[c]?s[c].replace(/&\f/g,a[A]):a[A]+" "+s[c]}}},I2=function(t){if(t.type==="decl"){var r=t.value;r.charCodeAt(0)===108&&r.charCodeAt(2)===98&&(t.return="",t.value="")}};x2=function(t,r,n,o){if(t.length>-1&&!t.return)switch(t.type){case Po:t.return=hh(t.value,t.length);break;case Sa:return eo([Jo(t,{value:W(t.value,"@","@"+X)})],o);case Fo:if(t.length)return GA(t.props,function(i){switch(OA(i,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return eo([Jo(t,{props:[W(i,/:(read-\w+)/,":"+es+"$1")]})],o);case"::placeholder":return eo([Jo(t,{props:[W(i,/:(plac\w+)/,":"+X+"input-$1")]}),Jo(t,{props:[W(i,/:(plac\w+)/,":"+es+"$1")]}),Jo(t,{props:[W(i,/:(plac\w+)/,st+"input-$1")]})],o)}return""})}},y2=[x2],Ch=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||y2,i={},s,a=[];s=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;a.push(E)});var c,l=[E2,I2];{var A,u=[lh,fh(function(E){A.insert(E)})],d=uh(l.concat(o,u)),m=function(x){return eo(sh(x),d)};c=function(x,I,p,y){A=p,m(x?x+"{"+I.styles+"}":I.styles),y&&(h.inserted[I.name]=!0)}}var h={key:r,sheet:new qg({key:r,container:s,nonce:t.nonce,speedy:t.speedy,prepend:t.prepend,insertionPoint:t.insertionPoint}),nonce:t.nonce,inserted:i,registered:{},insert:c};return h.sheet.hydrate(a),h}});var JA=g(()=>{});var Ih=j(ie=>{"use strict";var $e=typeof Symbol=="function"&&Symbol.for,VA=$e?Symbol.for("react.element"):60103,YA=$e?Symbol.for("react.portal"):60106,Na=$e?Symbol.for("react.fragment"):60107,La=$e?Symbol.for("react.strict_mode"):60108,Ra=$e?Symbol.for("react.profiler"):60114,Fa=$e?Symbol.for("react.provider"):60109,Pa=$e?Symbol.for("react.context"):60110,WA=$e?Symbol.for("react.async_mode"):60111,Oa=$e?Symbol.for("react.concurrent_mode"):60111,Ga=$e?Symbol.for("react.forward_ref"):60112,Ua=$e?Symbol.for("react.suspense"):60113,w2=$e?Symbol.for("react.suspense_list"):60120,Ha=$e?Symbol.for("react.memo"):60115,ja=$e?Symbol.for("react.lazy"):60116,b2=$e?Symbol.for("react.block"):60121,B2=$e?Symbol.for("react.fundamental"):60117,S2=$e?Symbol.for("react.responder"):60118,Q2=$e?Symbol.for("react.scope"):60119;function Nt(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case VA:switch(e=e.type,e){case WA:case Oa:case Na:case Ra:case La:case Ua:return e;default:switch(e=e&&e.$$typeof,e){case Pa:case Ga:case ja:case Ha:case Fa:return e;default:return t}}case YA:return t}}}function Eh(e){return Nt(e)===Oa}ie.AsyncMode=WA;ie.ConcurrentMode=Oa;ie.ContextConsumer=Pa;ie.ContextProvider=Fa;ie.Element=VA;ie.ForwardRef=Ga;ie.Fragment=Na;ie.Lazy=ja;ie.Memo=Ha;ie.Portal=YA;ie.Profiler=Ra;ie.StrictMode=La;ie.Suspense=Ua;ie.isAsyncMode=function(e){return Eh(e)||Nt(e)===WA};ie.isConcurrentMode=Eh;ie.isContextConsumer=function(e){return Nt(e)===Pa};ie.isContextProvider=function(e){return Nt(e)===Fa};ie.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===VA};ie.isForwardRef=function(e){return Nt(e)===Ga};ie.isFragment=function(e){return Nt(e)===Na};ie.isLazy=function(e){return Nt(e)===ja};ie.isMemo=function(e){return Nt(e)===Ha};ie.isPortal=function(e){return Nt(e)===YA};ie.isProfiler=function(e){return Nt(e)===Ra};ie.isStrictMode=function(e){return Nt(e)===La};ie.isSuspense=function(e){return Nt(e)===Ua};ie.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===Na||e===Oa||e===Ra||e===La||e===Ua||e===w2||typeof e=="object"&&e!==null&&(e.$$typeof===ja||e.$$typeof===Ha||e.$$typeof===Fa||e.$$typeof===Pa||e.$$typeof===Ga||e.$$typeof===B2||e.$$typeof===S2||e.$$typeof===Q2||e.$$typeof===b2)};ie.typeOf=Nt});var yh=j((I3,xh)=>{"use strict";xh.exports=Ih()});var vh=j((x3,Mh)=>{"use strict";var zA=yh(),M2={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},v2={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},T2={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},Sh={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},$A={};$A[zA.ForwardRef]=T2;$A[zA.Memo]=Sh;function wh(e){return zA.isMemo(e)?Sh:$A[e.$$typeof]||M2}var _2=Object.defineProperty,D2=Object.getOwnPropertyNames,bh=Object.getOwnPropertySymbols,k2=Object.getOwnPropertyDescriptor,N2=Object.getPrototypeOf,Bh=Object.prototype;function Qh(e,t,r){if(typeof t!="string"){if(Bh){var n=N2(t);n&&n!==Bh&&Qh(e,n,r)}var o=D2(t);bh&&(o=o.concat(bh(t)));for(var i=wh(e),s=wh(t),a=0;a<o.length;++a){var c=o[a];if(!v2[c]&&!(r&&r[c])&&!(s&&s[c])&&!(i&&i[c])){var l=k2(t,c);try{_2(e,c,l)}catch{}}}}return e}Mh.exports=Qh});function os(e,t,r){var n="";return r.split(" ").forEach(function(o){e[o]!==void 0?t.push(e[o]+";"):o&&(n+=o+" ")}),n}var L2,qa,is,Ja=g(()=>{L2=!0;qa=function(t,r,n){var o=t.key+"-"+r.name;(n===!1||L2===!1)&&t.registered[o]===void 0&&(t.registered[o]=r.styles)},is=function(t,r,n){qa(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 Th(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 _h=g(()=>{});var Dh,kh=g(()=>{Dh={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 ss(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 s=i.next;if(s!==void 0)for(;s!==void 0;)Tr={name:s.name,styles:s.styles,next:Tr},s=s.next;var a=i.styles+";";return a}return G2(e,t,r)}case"function":{if(e!==void 0){var c=Tr,l=r(e);return Tr=c,ss(e,t,l)}break}}var A=r;if(t==null)return A;var u=t[A];return u!==void 0?u:A}function G2(e,t,r){var n="";if(Array.isArray(r))for(var o=0;o<r.length;o++)n+=ss(e,t,r[o])+";";else for(var i in r){var s=r[i];if(typeof s!="object"){var a=s;t!=null&&t[a]!==void 0?n+=i+"{"+t[a]+"}":Nh(a)&&(n+=KA(i)+":"+Lh(i,a)+";")}else{if(i==="NO_COMPONENT_SELECTOR"&&R2)throw new Error(O2);if(Array.isArray(s)&&typeof s[0]=="string"&&(t==null||t[s[0]]===void 0))for(var c=0;c<s.length;c++)Nh(s[c])&&(n+=KA(i)+":"+Lh(i,s[c])+";");else{var l=ss(e,t,s);switch(i){case"animation":case"animationName":{n+=KA(i)+":"+l+";";break}default:n+=i+"{"+l+"}"}}}}return n}function Wo(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+=ss(r,t,i);else{var s=i;o+=s[0]}for(var a=1;a<e.length;a++)if(o+=ss(r,t,e[a]),n){var c=i;o+=c[a]}Rh.lastIndex=0;for(var l="",A;(A=Rh.exec(o))!==null;)l+="-"+A[1];var u=Th(o)+l;return{name:u,styles:o,next:Tr}}var R2,F2,P2,Fh,Nh,KA,Lh,O2,Rh,Tr,Va=g(()=>{_h();kh();jA();R2=!1,F2=/[A-Z]|^ms/g,P2=/_EMO_([^_]+?)_([^]*?)_EMO_/g,Fh=function(t){return t.charCodeAt(1)===45},Nh=function(t){return t!=null&&typeof t!="boolean"},KA=ph(function(e){return Fh(e)?e:e.replace(F2,"-$&").toLowerCase()}),Lh=function(t,r){switch(t){case"animation":case"animationName":if(typeof r=="string")return r.replace(P2,function(n,o,i){return Tr={name:o,styles:i,next:Tr},o})}return Dh[t]!==1&&!Fh(t)&&typeof r=="number"&&r!==0?r+"px":r},O2="Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform.";Rh=/label:\s*([^\s;{]+)\s*(;|$)/g});var Ya,U2,H2,XA,ZA=g(()=>{Ya=f(Q()),U2=function(t){return t()},H2=Ya.useInsertionEffect?Ya.useInsertionEffect:!1,XA=H2||U2});var Yt,as,Ph,tu,j2,ru,nu,ou,Wa,eu,Oh,q2,J2,Gh,iu=g(()=>{Yt=f(Q()),as=f(Q());qA();JA();ka();Ja();Va();ZA();Ph=!1,tu=Yt.createContext(typeof HTMLElement<"u"?Ch({key:"css"}):null),j2=tu.Provider,ru=function(){return(0,as.useContext)(tu)},nu=function(t){return(0,as.forwardRef)(function(r,n){var o=(0,as.useContext)(tu);return t(r,o,n)})},ou=Yt.createContext({}),Wa={}.hasOwnProperty,eu="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",Oh=function(t,r){var n={};for(var o in r)Wa.call(r,o)&&(n[o]=r[o]);return n[eu]=t,n},q2=function(t){var r=t.cache,n=t.serialized,o=t.isStringTag;return qa(r,n,o),XA(function(){return is(r,n,o)}),null},J2=nu(function(e,t,r){var n=e.css;typeof n=="string"&&t.registered[n]!==void 0&&(n=t.registered[n]);var o=e[eu],i=[n],s="";typeof e.className=="string"?s=os(t.registered,i,e.className):e.className!=null&&(s=e.className+" ");var a=Wo(i,void 0,Yt.useContext(ou));s+=t.key+"-"+a.name;var c={};for(var l in e)Wa.call(e,l)&&l!=="css"&&l!==eu&&!Ph&&(c[l]=e[l]);return c.className=s,r&&(c.ref=r),Yt.createElement(Yt.Fragment,null,Yt.createElement(q2,{cache:t,serialized:a,isStringTag:typeof o=="string"}),Yt.createElement(o,c))}),Gh=J2});function V2(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return Wo(t)}function su(){var e=V2.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 zo,$3,Uh,au=g(()=>{iu();iu();zo=f(Q());Ja();ZA();Va();qA();JA();ka();$3=f(vh()),Uh=function(t,r){var n=arguments;if(r==null||!Wa.call(r,"css"))return zo.createElement.apply(void 0,n);var o=n.length,i=new Array(o);i[0]=Gh,i[1]=Oh(t,r);for(var s=2;s<o;s++)i[s]=n[s];return zo.createElement.apply(null,i)};(function(e){var t;t||(t=e.JSX||(e.JSX={}))})(Uh||(Uh={}))});var cu=j((Z3,Hh)=>{Hh.exports=JBrowseExports["@mui/material/styles"]});var $o,lu=g(()=>{$o=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=$o(o);else{let s=o;i="";for(let a in s)s[a]&&a&&(i&&(i+=" "),i+=a)}break}default:i=o}i&&(n&&(n+=" "),n+=i)}return n}});function jh(e){return e instanceof Object&&!("styles"in e)&&!("length"in e)&&!("__emotion_styles"in e)}var qh=g(()=>{});function Yh(e){let{useCache:t}=e;function r(){let n=t(),{css:o,cx:i}=(0,Vh.useMemo)(()=>Y2({cache:n}),[n]);return{css:o,cx:i}}return{useCssAndCx:r}}var Vh,Y2,Jh,Wh=g(()=>{Vh=f(Q(),1);Va();Ja();lu();qh();({createCssAndCx:Y2}=(()=>{function e(r,n,o){let i=[],s=os(r,i,o);return i.length<2?o:s+n(i)}function t(r){let{cache:n}=r,o=(...s)=>{let a=Wo(s,n.registered);is(n,a,!1);let c=`${n.key}-${a.name}`;e:{let l=s[0];if(!jh(l))break e;Jh.saveClassNameCSSObjectMapping(n,c,l)}return c};return{css:o,cx:(...s)=>{let a=$o(s),c=Jh.fixClassName(n,a,o);return e(n.registered,o,c)}}}return{createCssAndCx:t}})());Jh=(()=>{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 s;if(n)s={"&&":i};else{s=o;for(let a in i)if(a.startsWith("@media")){n=!0;break}}return s})}return(r,n,o)=>{if(!n.includes(" "))return n;let i=e.get(r);return $o(t(n.split(" ").map(s=>[s,i?.get(s)])).map(s=>typeof s=="string"?s:o(s)))}})()}})()});function zh(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 s=t[i];typeof s=="string"&&(o[i]=s)}return o}var $h=g(()=>{});function Kh(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 Xh=g(()=>{});function Zh(e){let{useTheme:t}=e,{useCssAndCx:r}=Yh({useCache:W2});function n(){return function(o){let i=typeof o=="function"?o:()=>o;return function(a,c){let l=t(),{css:A,cx:u}=r(),d=(0,Au.useMemo)(()=>{let x=i(l),I={};for(let p of Object.keys(x)){let y=x[p];I[p]=A(y)}return I},[A,l]),m=c?.props.classes,h=Kh(m);return{classes:(0,Au.useMemo)(()=>m?zh(d,m,u):d,[d,h,u]),theme:l,css:A,cx:u}}}}return{makeStyles:n}}var Au,W2,e0=g(()=>{"use client";Au=f(Q(),1);au();Wh();$h();Xh();W2=ru});var t0,te,r0=g(()=>{t0=f(cu(),1);e0();({makeStyles:te}=Zh({useTheme:t0.useTheme}))});var n0=g(()=>{r0()});function za(...e){return $o(e)}var xt=g(()=>{"use client";au();n0();lu()});function uu({children:e}){let{classes:t}=z2();return(0,o0.jsx)("div",{className:t.bg,children:e})}var o0,z2,i0=g(()=>{o0=f(R(),1);xt();z2=te()(e=>({bg:{padding:4,margin:4,overflow:"auto",maxHeight:200,background:e.palette.mode==="dark"?"#833":"#f88",border:`1px solid ${e.palette.divider}`}}))});var a0=j(fu=>{var s0="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");fu.encode=function(e){if(0<=e&&e<s0.length)return s0[e];throw new TypeError("Must be between 0 and 63: "+e)};fu.decode=function(e){var t=65,r=90,n=97,o=122,i=48,s=57,a=43,c=47,l=26,A=52;return t<=e&&e<=r?e-t:n<=e&&e<=o?e-n+l:i<=e&&e<=s?e-i+A:e==a?62:e==c?63:-1}});var pu=j(mu=>{var c0=a0(),du=5,l0=1<<du,A0=l0-1,u0=l0;function $2(e){return e<0?(-e<<1)+1:(e<<1)+0}function K2(e){var t=(e&1)===1,r=e>>1;return t?-r:r}mu.encode=function(t){var r="",n,o=$2(t);do n=o&A0,o>>>=du,o>0&&(n|=u0),r+=c0.encode(n);while(o>0);return r};mu.decode=function(t,r,n){var o=t.length,i=0,s=0,a,c;do{if(r>=o)throw new Error("Expected more digits in base 64 VLQ value.");if(c=c0.decode(t.charCodeAt(r++)),c===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));a=!!(c&u0),c&=A0,i=i+(c<<s),s+=du}while(a);n.value=K2(i),n.rest=r}});var Xo=j(Ke=>{function X2(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}Ke.getArg=X2;var f0=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,Z2=/^data:.+\,.+$/;function cs(e){var t=e.match(f0);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}Ke.urlParse=cs;function Ko(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}Ke.urlGenerate=Ko;var ev=32;function tv(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>ev&&t.pop(),i}}var gu=tv(function(t){var r=t,n=cs(t);if(n){if(!n.path)return t;r=n.path}for(var o=Ke.isAbsolute(r),i=[],s=0,a=0;;)if(s=a,a=r.indexOf("/",s),a===-1){i.push(r.slice(s));break}else for(i.push(r.slice(s,a));a<r.length&&r[a]==="/";)a++;for(var c,l=0,a=i.length-1;a>=0;a--)c=i[a],c==="."?i.splice(a,1):c===".."?l++:l>0&&(c===""?(i.splice(a+1,l),l=0):(i.splice(a,2),l--));return r=i.join("/"),r===""&&(r=o?"/":"."),n?(n.path=r,Ko(n)):r});Ke.normalize=gu;function d0(e,t){e===""&&(e="."),t===""&&(t=".");var r=cs(t),n=cs(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),Ko(r);if(r||t.match(Z2))return t;if(n&&!n.host&&!n.path)return n.host=t,Ko(n);var o=t.charAt(0)==="/"?t:gu(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=o,Ko(n)):o}Ke.join=d0;Ke.isAbsolute=function(e){return e.charAt(0)==="/"||f0.test(e)};function rv(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)}Ke.relative=rv;var m0=(function(){var e=Object.create(null);return!("__proto__"in e)})();function p0(e){return e}function nv(e){return g0(e)?"$"+e:e}Ke.toSetString=m0?p0:nv;function ov(e){return g0(e)?e.slice(1):e}Ke.fromSetString=m0?p0:ov;function g0(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 iv(e,t,r){var n=$r(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:$r(e.name,t.name)}Ke.compareByOriginalPositions=iv;function sv(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:$r(e.name,t.name)}Ke.compareByOriginalPositionsNoSource=sv;function av(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=$r(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:$r(e.name,t.name)}Ke.compareByGeneratedPositionsDeflated=av;function cv(e,t,r){var n=e.generatedColumn-t.generatedColumn;return n!==0||r||(n=$r(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:$r(e.name,t.name)}Ke.compareByGeneratedPositionsDeflatedNoLine=cv;function $r(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function lv(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=$r(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:$r(e.name,t.name)}Ke.compareByGeneratedPositionsInflated=lv;function Av(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}Ke.parseSourceMapInput=Av;function uv(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=cs(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=d0(Ko(n),t)}return gu(t)}Ke.computeSourceURL=uv});var Eu=j(h0=>{var hu=Xo(),Cu=Object.prototype.hasOwnProperty,to=typeof Map<"u";function Kr(){this._array=[],this._set=to?new Map:Object.create(null)}Kr.fromArray=function(t,r){for(var n=new Kr,o=0,i=t.length;o<i;o++)n.add(t[o],r);return n};Kr.prototype.size=function(){return to?this._set.size:Object.getOwnPropertyNames(this._set).length};Kr.prototype.add=function(t,r){var n=to?t:hu.toSetString(t),o=to?this.has(t):Cu.call(this._set,n),i=this._array.length;(!o||r)&&this._array.push(t),o||(to?this._set.set(t,i):this._set[n]=i)};Kr.prototype.has=function(t){if(to)return this._set.has(t);var r=hu.toSetString(t);return Cu.call(this._set,r)};Kr.prototype.indexOf=function(t){if(to){var r=this._set.get(t);if(r>=0)return r}else{var n=hu.toSetString(t);if(Cu.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};Kr.prototype.at=function(t){if(t>=0&&t<this._array.length)return this._array[t];throw new Error("No element indexed by "+t)};Kr.prototype.toArray=function(){return this._array.slice()};h0.ArraySet=Kr});var I0=j(E0=>{var C0=Xo();function fv(e,t){var r=e.generatedLine,n=t.generatedLine,o=e.generatedColumn,i=t.generatedColumn;return n>r||n==r&&i>=o||C0.compareByGeneratedPositionsInflated(e,t)<=0}function $a(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}$a.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};$a.prototype.add=function(t){fv(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};$a.prototype.toArray=function(){return this._sorted||(this._array.sort(C0.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};E0.MappingList=$a});var Iu=j(x0=>{var ls=pu(),Ne=Xo(),Ka=Eu().ArraySet,dv=I0().MappingList;function Wt(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 Ka,this._names=new Ka,this._mappings=new dv,this._sourcesContents=null}Wt.prototype._version=3;Wt.fromSourceMap=function(t,r){var n=t.sourceRoot,o=new Wt(Object.assign(r||{},{file:t.file,sourceRoot:n}));return t.eachMapping(function(i){var s={generated:{line:i.generatedLine,column:i.generatedColumn}};i.source!=null&&(s.source=i.source,n!=null&&(s.source=Ne.relative(n,s.source)),s.original={line:i.originalLine,column:i.originalColumn},i.name!=null&&(s.name=i.name)),o.addMapping(s)}),t.sources.forEach(function(i){var s=i;n!==null&&(s=Ne.relative(n,i)),o._sources.has(s)||o._sources.add(s);var a=t.sourceContentFor(i);a!=null&&o.setSourceContent(i,a)}),o};Wt.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}))};Wt.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))};Wt.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 s=new Ka,a=new Ka;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&&!s.has(A)&&s.add(A);var u=c.name;u!=null&&!a.has(u)&&a.add(u)},this),this._sources=s,this._names=a,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)};Wt.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)}};Wt.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,o=0,i=0,s=0,a="",c,l,A,u,d=this._mappings.toArray(),m=0,h=d.length;m<h;m++){if(l=d[m],c="",l.generatedLine!==r)for(t=0;l.generatedLine!==r;)c+=";",r++;else if(m>0){if(!Ne.compareByGeneratedPositionsInflated(l,d[m-1]))continue;c+=","}c+=ls.encode(l.generatedColumn-t),t=l.generatedColumn,l.source!=null&&(u=this._sources.indexOf(l.source),c+=ls.encode(u-s),s=u,c+=ls.encode(l.originalLine-1-o),o=l.originalLine-1,c+=ls.encode(l.originalColumn-n),n=l.originalColumn,l.name!=null&&(A=this._names.indexOf(l.name),c+=ls.encode(A-i),i=A)),a+=c}return a};Wt.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)};Wt.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};Wt.prototype.toString=function(){return JSON.stringify(this.toJSON())};x0.SourceMapGenerator=Wt});var y0=j(ro=>{ro.GREATEST_LOWER_BOUND=1;ro.LEAST_UPPER_BOUND=2;function xu(e,t,r,n,o,i){var s=Math.floor((t-e)/2)+e,a=o(r,n[s],!0);return a===0?s:a>0?t-s>1?xu(s,t,r,n,o,i):i==ro.LEAST_UPPER_BOUND?t<n.length?t:-1:s:s-e>1?xu(e,s,r,n,o,i):i==ro.LEAST_UPPER_BOUND?s:e<0?-1:e}ro.search=function(t,r,n,o){if(r.length===0)return-1;var i=xu(-1,r.length,t,r,n,o||ro.GREATEST_LOWER_BOUND);if(i<0)return-1;for(;i-1>=0&&n(r[i],r[i-1],!0)===0;)--i;return i}});var B0=j(b0=>{function mv(e){function t(o,i,s){var a=o[i];o[i]=o[s],o[s]=a}function r(o,i){return Math.round(o+Math.random()*(i-o))}function n(o,i,s,a){if(s<a){var c=r(s,a),l=s-1;t(o,c,a);for(var A=o[a],u=s;u<a;u++)i(o[u],A,!1)<=0&&(l+=1,t(o,l,u));t(o,l+1,u);var d=l+1;n(o,i,s,d-1),n(o,i,d+1,a)}}return n}function pv(e){let t=mv.toString();return new Function(`return ${t}`)()(e)}var w0=new WeakMap;b0.quickSort=function(e,t,r=0){let n=w0.get(t);n===void 0&&(n=pv(t),w0.set(t,n)),n(e,t,r,e.length-1)}});var M0=j(Xa=>{var N=Xo(),wu=y0(),Zo=Eu().ArraySet,gv=pu(),As=B0().quickSort;function Ie(e,t){var r=e;return typeof e=="string"&&(r=N.parseSourceMapInput(e)),r.sections!=null?new fr(r,t):new at(r,t)}Ie.fromSourceMap=function(e,t){return at.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,s;switch(i){case Ie.GENERATED_ORDER:s=this._generatedMappings;break;case Ie.ORIGINAL_ORDER:s=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}for(var a=this.sourceRoot,c=t.bind(o),l=this._names,A=this._sources,u=this._sourceMapURL,d=0,m=s.length;d<m;d++){var h=s[d],E=h.source===null?null:A.at(h.source);E!==null&&(E=N.computeSourceURL(a,E,u)),c({source:E,generatedLine:h.generatedLine,generatedColumn:h.generatedColumn,originalLine:h.originalLine,originalColumn:h.originalColumn,name:h.name===null?null:l.at(h.name)})}};Ie.prototype.allGeneratedPositionsFor=function(t){var r=N.getArg(t,"line"),n={source:N.getArg(t,"source"),originalLine:r,originalColumn:N.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",N.compareByOriginalPositions,wu.LEAST_UPPER_BOUND);if(i>=0){var s=this._originalMappings[i];if(t.column===void 0)for(var a=s.originalLine;s&&s.originalLine===a;)o.push({line:N.getArg(s,"generatedLine",null),column:N.getArg(s,"generatedColumn",null),lastColumn:N.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++i];else for(var c=s.originalColumn;s&&s.originalLine===r&&s.originalColumn==c;)o.push({line:N.getArg(s,"generatedLine",null),column:N.getArg(s,"generatedColumn",null),lastColumn:N.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++i]}return o};Xa.SourceMapConsumer=Ie;function at(e,t){var r=e;typeof e=="string"&&(r=N.parseSourceMapInput(e));var n=N.getArg(r,"version"),o=N.getArg(r,"sources"),i=N.getArg(r,"names",[]),s=N.getArg(r,"sourceRoot",null),a=N.getArg(r,"sourcesContent",null),c=N.getArg(r,"mappings"),l=N.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);s&&(s=N.normalize(s)),o=o.map(String).map(N.normalize).map(function(A){return s&&N.isAbsolute(s)&&N.isAbsolute(A)?N.relative(s,A):A}),this._names=Zo.fromArray(i.map(String),!0),this._sources=Zo.fromArray(o,!0),this._absoluteSources=this._sources.toArray().map(function(A){return N.computeSourceURL(s,A,t)}),this.sourceRoot=s,this.sourcesContent=a,this._mappings=c,this._sourceMapURL=t,this.file=l}at.prototype=Object.create(Ie.prototype);at.prototype.consumer=Ie;at.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=N.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};at.fromSourceMap=function(t,r){var n=Object.create(at.prototype),o=n._names=Zo.fromArray(t._names.toArray(),!0),i=n._sources=Zo.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(m){return N.computeSourceURL(n.sourceRoot,m,r)});for(var s=t._mappings.toArray().slice(),a=n.__generatedMappings=[],c=n.__originalMappings=[],l=0,A=s.length;l<A;l++){var u=s[l],d=new Q0;d.generatedLine=u.generatedLine,d.generatedColumn=u.generatedColumn,u.source&&(d.source=i.indexOf(u.source),d.originalLine=u.originalLine,d.originalColumn=u.originalColumn,u.name&&(d.name=o.indexOf(u.name)),c.push(d)),a.push(d)}return As(n.__originalMappings,N.compareByOriginalPositions),n};at.prototype._version=3;Object.defineProperty(at.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function Q0(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var yu=N.compareByGeneratedPositionsDeflatedNoLine;function S0(e,t){let r=e.length,n=e.length-t;if(!(n<=1))if(n==2){let o=e[t],i=e[t+1];yu(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 s=e[i-1],a=e[i];if(yu(s,a)<=0)break;e[i-1]=a,e[i]=s}else As(e,yu,t)}at.prototype._parseMappings=function(t,r){var n=1,o=0,i=0,s=0,a=0,c=0,l=t.length,A=0,u={},d={},m=[],h=[],E,x,I,p,y;let b=0;for(;A<l;)if(t.charAt(A)===";")n++,A++,o=0,S0(h,b),b=h.length;else if(t.charAt(A)===",")A++;else{for(E=new Q0,E.generatedLine=n,p=A;p<l&&!this._charIsMappingSeparator(t,p);p++);for(x=t.slice(A,p),I=[];A<p;)gv.decode(t,A,d),y=d.value,A=d.rest,I.push(y);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=a+I[1],a+=I[1],E.originalLine=i+I[2],i=E.originalLine,E.originalLine+=1,E.originalColumn=s+I[3],s=E.originalColumn,I.length>4&&(E.name=c+I[4],c+=I[4])),h.push(E),typeof E.originalLine=="number"){let S=E.source;for(;m.length<=S;)m.push(null);m[S]===null&&(m[S]=[]),m[S].push(E)}}S0(h,b),this.__generatedMappings=h;for(var w=0;w<m.length;w++)m[w]!=null&&As(m[w],N.compareByOriginalPositionsNoSource);this.__originalMappings=[].concat(...m)};at.prototype._findMapping=function(t,r,n,o,i,s){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 wu.search(t,r,i,s)};at.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}};at.prototype.originalPositionFor=function(t){var r={generatedLine:N.getArg(t,"line"),generatedColumn:N.getArg(t,"column")},n=this._findMapping(r,this._generatedMappings,"generatedLine","generatedColumn",N.compareByGeneratedPositionsDeflated,N.getArg(t,"bias",Ie.GREATEST_LOWER_BOUND));if(n>=0){var o=this._generatedMappings[n];if(o.generatedLine===r.generatedLine){var i=N.getArg(o,"source",null);i!==null&&(i=this._sources.at(i),i=N.computeSourceURL(this.sourceRoot,i,this._sourceMapURL));var s=N.getArg(o,"name",null);return s!==null&&(s=this._names.at(s)),{source:i,line:N.getArg(o,"originalLine",null),column:N.getArg(o,"originalColumn",null),name:s}}}return{source:null,line:null,column:null,name:null}};at.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};at.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=N.relative(this.sourceRoot,o));var i;if(this.sourceRoot!=null&&(i=N.urlParse(this.sourceRoot))){var s=o.replace(/^file:\/\//,"");if(i.scheme=="file"&&this._sources.has(s))return this.sourcesContent[this._sources.indexOf(s)];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.')};at.prototype.generatedPositionFor=function(t){var r=N.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:N.getArg(t,"line"),originalColumn:N.getArg(t,"column")},o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",N.compareByOriginalPositions,N.getArg(t,"bias",Ie.GREATEST_LOWER_BOUND));if(o>=0){var i=this._originalMappings[o];if(i.source===n.source)return{line:N.getArg(i,"generatedLine",null),column:N.getArg(i,"generatedColumn",null),lastColumn:N.getArg(i,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};Xa.BasicSourceMapConsumer=at;function fr(e,t){var r=e;typeof e=="string"&&(r=N.parseSourceMapInput(e));var n=N.getArg(r,"version"),o=N.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new Zo,this._names=new Zo;var i={line:-1,column:0};this._sections=o.map(function(s){if(s.url)throw new Error("Support for url field in sections not implemented.");var a=N.getArg(s,"offset"),c=N.getArg(a,"line"),l=N.getArg(a,"column");if(c<i.line||c===i.line&&l<i.column)throw new Error("Section offsets must be ordered and non-overlapping.");return i=a,{generatedOffset:{generatedLine:c+1,generatedColumn:l+1},consumer:new Ie(N.getArg(s,"map"),t)}})}fr.prototype=Object.create(Ie.prototype);fr.prototype.constructor=Ie;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:N.getArg(t,"line"),generatedColumn:N.getArg(t,"column")},n=wu.search(r,this._sections,function(i,s){var a=i.generatedLine-s.generatedOffset.generatedLine;return a||i.generatedColumn-s.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(N.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,s=0;s<i.length;s++){var a=i[s],c=o.consumer._sources.at(a.source);c!==null&&(c=N.computeSourceURL(o.consumer.sourceRoot,c,this._sourceMapURL)),this._sources.add(c),c=this._sources.indexOf(c);var l=null;a.name&&(l=o.consumer._names.at(a.name),this._names.add(l),l=this._names.indexOf(l));var A={source:c,generatedLine:a.generatedLine+(o.generatedOffset.generatedLine-1),generatedColumn:a.generatedColumn+(o.generatedOffset.generatedLine===a.generatedLine?o.generatedOffset.generatedColumn-1:0),originalLine:a.originalLine,originalColumn:a.originalColumn,name:l};this.__generatedMappings.push(A),typeof A.originalLine=="number"&&this.__originalMappings.push(A)}As(this.__generatedMappings,N.compareByGeneratedPositionsDeflated),As(this.__originalMappings,N.compareByOriginalPositions)};Xa.IndexedSourceMapConsumer=fr});var T0=j(v0=>{var hv=Iu().SourceMapGenerator,Za=Xo(),Cv=/(\r?\n)/,Ev=10,ei="$$$isSourceNode$$$";function Lt(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[ei]=!0,n!=null&&this.add(n)}Lt.fromStringWithSourceMap=function(t,r,n){var o=new Lt,i=t.split(Cv),s=0,a=function(){var d=h(),m=h()||"";return d+m;function h(){return s<i.length?i[s++]:void 0}},c=1,l=0,A=null;return r.eachMapping(function(d){if(A!==null)if(c<d.generatedLine)u(A,a()),c++,l=0;else{var m=i[s]||"",h=m.substr(0,d.generatedColumn-l);i[s]=m.substr(d.generatedColumn-l),l=d.generatedColumn,u(A,h),A=d;return}for(;c<d.generatedLine;)o.add(a()),c++;if(l<d.generatedColumn){var m=i[s]||"";o.add(m.substr(0,d.generatedColumn)),i[s]=m.substr(d.generatedColumn),l=d.generatedColumn}A=d},this),s<i.length&&(A&&u(A,a()),o.add(i.splice(s).join(""))),r.sources.forEach(function(d){var m=r.sourceContentFor(d);m!=null&&(n!=null&&(d=Za.join(n,d)),o.setSourceContent(d,m))}),o;function u(d,m){if(d===null||d.source===void 0)o.add(m);else{var h=n?Za.join(n,d.source):d.source;o.add(new Lt(d.originalLine,d.originalColumn,h,m,d.name))}}};Lt.prototype.add=function(t){if(Array.isArray(t))t.forEach(function(r){this.add(r)},this);else if(t[ei]||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};Lt.prototype.prepend=function(t){if(Array.isArray(t))for(var r=t.length-1;r>=0;r--)this.prepend(t[r]);else if(t[ei]||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};Lt.prototype.walk=function(t){for(var r,n=0,o=this.children.length;n<o;n++)r=this.children[n],r[ei]?r.walk(t):r!==""&&t(r,{source:this.source,line:this.line,column:this.column,name:this.name})};Lt.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};Lt.prototype.replaceRight=function(t,r){var n=this.children[this.children.length-1];return n[ei]?n.replaceRight(t,r):typeof n=="string"?this.children[this.children.length-1]=n.replace(t,r):this.children.push("".replace(t,r)),this};Lt.prototype.setSourceContent=function(t,r){this.sourceContents[Za.toSetString(t)]=r};Lt.prototype.walkSourceContents=function(t){for(var r=0,n=this.children.length;r<n;r++)this.children[r][ei]&&this.children[r].walkSourceContents(t);for(var o=Object.keys(this.sourceContents),r=0,n=o.length;r<n;r++)t(Za.fromSetString(o[r]),this.sourceContents[o[r]])};Lt.prototype.toString=function(){var t="";return this.walk(function(r){t+=r}),t};Lt.prototype.toStringWithSourceMap=function(t){var r={code:"",line:1,column:0},n=new hv(t),o=!1,i=null,s=null,a=null,c=null;return this.walk(function(l,A){r.code+=l,A.source!==null&&A.line!==null&&A.column!==null?((i!==A.source||s!==A.line||a!==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,s=A.line,a=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,d=l.length;u<d;u++)l.charCodeAt(u)===Ev?(r.line++,r.column=0,u+1===d?(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}};v0.SourceNode=Lt});var _0=j(ec=>{ec.SourceMapGenerator=Iu().SourceMapGenerator;ec.SourceMapConsumer=M0().SourceMapConsumer;ec.SourceNode=T0().SourceNode});var D0,tc,bu=g(()=>{"use client";Y();D0=f(R(),1),tc=(0,_.createSvgIcon)((0,D0.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 nc(e){let{children:t,...r}=e;return(0,rc.jsxs)(k0.Link,{...r,target:"_blank",rel:"noopener noreferrer",children:[t," ",(0,rc.jsx)(tc,{fontSize:"small"})]})}var rc,k0,N0=g(()=>{rc=f(R(),1);bu();k0=f(k(),1)});function Bu({text:e,extra:t}){let{classes:r}=Iv(),n=t?`supporting data: ${JSON.stringify(t,null,2)}`:"",o=[e,n].filter(Boolean).join(`
|
|
1
|
+
"use strict";var JBrowsePluginMsaView=(()=>{var Y_=Object.create;var nc=Object.defineProperty;var W_=Object.getOwnPropertyDescriptor;var z_=Object.getOwnPropertyNames;var $_=Object.getPrototypeOf,K_=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 q=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(r){throw t=0,r}},rt=(e,t)=>{for(var r in t)nc(e,r,{get:t[r],enumerable:!0})},Jg=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of z_(t))!K_.call(e,o)&&o!==r&&nc(e,o,{get:()=>t[o],enumerable:!(n=W_(t,o))||n.enumerable});return e};var m=(e,t,r)=>(r=e!=null?Y_($_(e)):{},Jg(t||!e||!e.__esModule?nc(r,"default",{value:e,enumerable:!0}):r,e)),X_=e=>Jg(nc({},"__esModule",{value:!0}),e);var Wg=q((yP,Yg)=>{Yg.exports=JBrowseExports["@jbrowse/core/Plugin"]});var ci=q((bP,zg)=>{zg.exports=JBrowseExports["@jbrowse/core/configuration"]});var he=q((SP,$g)=>{$g.exports=JBrowseExports["@jbrowse/core/util"]});var Yt=q((BP,Kg)=>{Kg.exports=JBrowseExports["mobx-state-tree"]});var Zg=q((QP,Xg)=>{Xg.exports=JBrowseExports["@mui/material/utils"]});var F,$=h(()=>{"use client";F=m(Zg(),1)});var U=q((MP,eh)=>{eh.exports=JBrowseExports["react/jsx-runtime"]});var _=q((kP,nh)=>{nh.exports=JBrowseExports.react});var j=q((DP,oh)=>{oh.exports=JBrowseExports["mobx-react"]});var De=q((NP,ih)=>{ih.exports=JBrowseExports["tss-react/mui"]});var bu=q((PP,ch)=>{ch.exports=JBrowseExports["@jbrowse/core/pluggableElementTypes"]});var Ir=q((GP,Ah)=>{Ah.exports=JBrowseExports.mobx});function sc(e){let{scrollX:t,msaAreaWidth:r,minimapHeight:n,colWidth:o,numColumns:i}=e,s=r/i/o,a=-t,c=a*s,l=(a+r)*s,A=Math.max(l-c,20),u=n-12,f=`${c+A},0 ${c},0 0,${u} ${r},${u}`;return{unit:s,s:c,w:A,polygonHeight:u,polygonPoints:f}}var Su=h(()=>{});var go,uh,Z_,fh,dh=h(()=>{go=m(_(),1),uh=m(j(),1);Su();Z_=(0,uh.observer)(({model:e})=>{let{msaAreaWidth:t}=e,{s:r,w:n,polygonPoints:o}=sc(e),i="rgb(66, 119, 127)",s=.3;return go.default.createElement(go.default.Fragment,null,go.default.createElement("rect",{x:0,y:0,width:t,height:12,stroke:"#555",fill:"none"}),go.default.createElement("rect",{x:Math.max(0,r),y:0,width:n,height:12,fill:i,fillOpacity:s,stroke:"#555"}),go.default.createElement("g",{transform:`translate(0 ${12})`},go.default.createElement("polygon",{fill:i,fillOpacity:s,points:o})))}),fh=Z_});function ac({model:e,offsetY:t,blockSizeY:r}){let{leaves:n,rowHeight:o}=e,i=Math.max(0,Math.floor((t-o)/o)),s=Math.max(0,Math.ceil((t+r+o)/o));return n.slice(i,s)}var Bu=h(()=>{});function cc({model:e,offsetX:t,offsetY:r,ctx:n,highResScaleFactorOverride:o,blockSizeYOverride:i}){let{blockSize:s,rowHeight:a,highResScaleFactor:c,showDomains:l}=e;if(l){let A=o??c,u=i??s;n.resetTransform(),n.scale(A,A),n.translate(-t,a/2-r);let f=ac({model:e,offsetY:r,blockSizeY:u});eT({model:e,ctx:n,visibleLeaves:f})}}function eT({model:e,ctx:t,visibleLeaves:r}){let{subFeatureRows:n,colWidth:o,rowHeight:i,fillPalette:s,strokePalette:a,tidyFilteredGatheredInterProAnnotations:c}=e;for(let l=0,A=r.length;l<A;l++){let u=r[l],{x:f,data:{name:d}}=u,g=f,E=c[d];if(E)for(let I=0,x=E.length;I<x;I++){let{start:p,end:w,accession:y}=E[I],S=e.seqPosToVisibleCol(d,p-1),Q=e.seqPosToVisibleCol(d,w);if(S===void 0||Q===void 0)continue;let b=S*o;t.fillStyle=s[y],t.strokeStyle=a[y];let k=n?4:i,T=g-i+(n?I*k:0),v=o*(Q-S);t.fillRect(b,T,v,k),t.strokeRect(b,T,v,k)}}}var Qu=h(()=>{Bu()});function Bs({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 vu=h(()=>{});function Hr(e,t,r=!1){e.font=e.font.replace(/(?:bold )?[\d.]+px/,`${r?"bold ":""}${t}px`)}var Ai=h(()=>{});var tT,fn,nt,sr,Ih,mh,Mu,rT,lc,wh,yh,ph,gh,hh,Qs,nT,oT,iT,sT,ku,Ch,aT,_u,Tu,Eh,Du,ut,xh,Ac,uc=h(()=>{tT={grad:.9,turn:360,rad:360/(2*Math.PI)},fn=function(e){return typeof e=="string"?e.length>0:typeof e=="number"},nt=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=Math.pow(10,t)),Math.round(r*e)/r+0},sr=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=1),e>r?r:e>t?e:t},Ih=function(e){return(e=isFinite(e)?e%360:0)>0?e:e+360},mh=function(e){return{r:sr(e.r,0,255),g:sr(e.g,0,255),b:sr(e.b,0,255),a:sr(e.a)}},Mu=function(e){return{r:nt(e.r),g:nt(e.g),b:nt(e.b),a:nt(e.a,3)}},rT=/^#([0-9a-f]{3,8})$/i,lc=function(e){var t=e.toString(16);return t.length<2?"0"+t:t},wh=function(e){var t=e.r,r=e.g,n=e.b,o=e.a,i=Math.max(t,r,n),s=i-Math.min(t,r,n),a=s?i===t?(r-n)/s:i===r?2+(n-t)/s:4+(t-r)/s:0;return{h:60*(a<0?a+6:a),s:i?s/i*100:0,v:i/255*100,a:o}},yh=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),s=n*(1-r),a=n*(1-(t-i)*r),c=n*(1-(1-t+i)*r),l=i%6;return{r:255*[n,a,s,s,c,n][l],g:255*[c,n,n,a,s,s][l],b:255*[s,s,c,n,n,a][l],a:o}},ph=function(e){return{h:Ih(e.h),s:sr(e.s,0,100),l:sr(e.l,0,100),a:sr(e.a)}},gh=function(e){return{h:nt(e.h),s:nt(e.s),l:nt(e.l),a:nt(e.a,3)}},hh=function(e){return yh((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},Qs=function(e){return{h:(t=wh(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},nT=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,oT=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,iT=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,sT=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,ku={string:[[function(e){var t=rT.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?nt(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?nt(parseInt(e.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(e){var t=iT.exec(e)||sT.exec(e);return t?t[2]!==t[4]||t[4]!==t[6]?null:mh({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=nT.exec(e)||oT.exec(e);if(!t)return null;var r,n,o=ph({h:(r=t[1],n=t[2],n===void 0&&(n="deg"),Number(r)*(tT[n]||1)),s:Number(t[3]),l:Number(t[4]),a:t[5]===void 0?1:Number(t[5])/(t[6]?100:1)});return hh(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 fn(t)&&fn(r)&&fn(n)?mh({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(!fn(t)||!fn(r)||!fn(n))return null;var s=ph({h:Number(t),s:Number(r),l:Number(n),a:Number(i)});return hh(s)},"hsl"],[function(e){var t=e.h,r=e.s,n=e.v,o=e.a,i=o===void 0?1:o;if(!fn(t)||!fn(r)||!fn(n))return null;var s=(function(a){return{h:Ih(a.h),s:sr(a.s,0,100),v:sr(a.v,0,100),a:sr(a.a)}})({h:Number(t),s:Number(r),v:Number(n),a:Number(i)});return yh(s)},"hsv"]]},Ch=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]},aT=function(e){return typeof e=="string"?Ch(e.trim(),ku.string):typeof e=="object"&&e!==null?Ch(e,ku.object):[null,void 0]},_u=function(e,t){var r=Qs(e);return{h:r.h,s:sr(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},Eh=function(e,t){var r=Qs(e);return{h:r.h,s:r.s,l:sr(r.l+100*t,0,100),a:r.a}},Du=(function(){function e(t){this.parsed=aT(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 nt(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=Mu(this.rgba),r=t.r,n=t.g,o=t.b,s=(i=t.a)<1?lc(nt(255*i)):"","#"+lc(r)+lc(n)+lc(o)+s;var t,r,n,o,i,s},e.prototype.toRgb=function(){return Mu(this.rgba)},e.prototype.toRgbString=function(){return t=Mu(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 gh(Qs(this.rgba))},e.prototype.toHslString=function(){return t=gh(Qs(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=wh(this.rgba),{h:nt(t.h),s:nt(t.s),v:nt(t.v),a:nt(t.a,3)};var t},e.prototype.invert=function(){return ut({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),ut(_u(this.rgba,t))},e.prototype.desaturate=function(t){return t===void 0&&(t=.1),ut(_u(this.rgba,-t))},e.prototype.grayscale=function(){return ut(_u(this.rgba,-1))},e.prototype.lighten=function(t){return t===void 0&&(t=.1),ut(Eh(this.rgba,t))},e.prototype.darken=function(t){return t===void 0&&(t=.1),ut(Eh(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"?ut({r:(r=this.rgba).r,g:r.g,b:r.b,a:t}):nt(this.rgba.a,3);var r},e.prototype.hue=function(t){var r=Qs(this.rgba);return typeof t=="number"?ut({h:t,s:r.s,l:r.l,a:r.a}):nt(r.h)},e.prototype.isEqual=function(t){return this.toHex()===ut(t).toHex()},e})(),ut=function(e){return e instanceof Du?e:new Du(e)},xh=[],Ac=function(e){e.forEach(function(t){xh.indexOf(t)<0&&(t(Du,ku),xh.push(t))})}});function bh(e){e.prototype.luminance=function(){return t=Lu(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,s,a,c,l=t instanceof e?t:new e(t);return i=this.rgba,s=l.toRgb(),a=Lu(i),c=Lu(s),r=a>c?(a+.05)/(c+.05):(c+.05)/(a+.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)>=(a=(s=(n=r).size)===void 0?"normal":s,(i=(o=n.level)===void 0?"AA":o)==="AAA"&&a==="normal"?7:i==="AA"&&a==="large"?3:4.5);var n,o,i,s,a}}var Nu,Lu,Sh=h(()=>{Nu=function(e){var t=e/255;return t<.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},Lu=function(e){return .2126*Nu(e.r)+.7152*Nu(e.g)+.0722*Nu(e.b)}});function fc(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(s){if(!(this.rgba.a||this.rgba.r||this.rgba.g||this.rgba.b))return"transparent";var a,c,l=n[this.toHex()];if(l)return l;if(s?.closest){var A=this.toRgb(),u=1/0,f="black";if(!i.length)for(var d in r)i[d]=new e(r[d]).toRgb();for(var g in r){var E=(a=A,c=i[g],Math.pow(a.r-c.r,2)+Math.pow(a.g-c.g,2)+Math.pow(a.b-c.b,2));E<u&&(u=E,f=g)}return f}},t.string.push([function(s){var a=s.toLowerCase(),c=a==="transparent"?"#0000":r[a];return c?new e(c).toRgb():null},"name"])}var Ru=h(()=>{});function Qh(e,t){let r=`${e}|${t}`,n=Bh.get(r);if(n!==void 0)return n;let o=ut(e);if(!o.isReadable(t)){let s=ut(t).luminance()<.5;for(let a=0;a<40&&!o.isReadable(t);a++)o=s?o.lighten(.05):o.darken(.05)}let i=o.toHex();return Bh.set(r,i),i}function ui(e,t){return Object.fromEntries(Object.entries(e).map(t))}function vs(e,t){return ui(e,([r,n])=>[r,t.palette.getContrastText(ut(n).toHex())])}function Fu(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 vh(e,t){let r=[],n=e.length,o=0,i=0,s=-1,a=[];for(let c=0;c<t.length;c++)i<n&&e[i]===c?(t.charCodeAt(c)-45>>>0<=1||(s===o?a.push(t[c]):(a.length>0&&r.push({pos:s,letters:a.join("")}),s=o,a=[t[c]])),i++):o++;return a.length>0&&r.push({pos:s,letters:a.join("")}),r}function Pu(e){return e.end-e.start}function Ms(e){return e==="-"||e==="."}var Bh,Rn=h(()=>{uc();Sh();Ru();Ac([fc,bh]);Bh=new Map});function dc({model:e,offsetX:t,offsetY:r,contrastScheme:n,ctx:o,theme:i,highResScaleFactorOverride:s,blockSizeXOverride:a,blockSizeYOverride:c}){let{colWidth:l,blockSize:A,rowHeight:u,fontSize:f,highResScaleFactor:d,actuallyShowDomains:g,bgColor:E}=e,I=s??d,x=a??A,p=c??A;o.resetTransform(),o.scale(I,I),o.translate(-t,u/2-r),o.textAlign="center",Hr(o,f,!E);let{xStart:w,xEnd:y}=Bs({offsetX:t,blockWidth:x,colWidth:l}),S=ac({model:e,offsetY:r,blockSizeY:p}),{relativeTo:Q,columns:b}=e,k=Q?b.get(Q)?.slice(w,y):null;g?lT({model:e,ctx:o,xStart:w,xEnd:y,visibleLeaves:S,referenceSeq:k}):cT({model:e,ctx:o,theme:i,contrastScheme:n,xStart:w,xEnd:y,visibleLeaves:S,referenceSeq:k}),AT({model:e,ctx:o,xStart:w,xEnd:y,visibleLeaves:S}),o.resetTransform()}function cT({model:e,ctx:t,theme:r,contrastScheme:n,visibleLeaves:o,xStart:i,xEnd:s,referenceSeq:a}){let{bgColor:c,colorSchemeName:l,colorScheme:A,columns:u,colWidth:f,rowHeight:d,relativeTo:g,showMsaLetters:E,colClustalX:I,colConsensus:x}=e,p=l==="clustalx_protein_dynamic",w=l==="percent_identity_dynamic",y=c||p||w;if(!y&&!E)return;let S=i*f,Q=f/2,b=d/4;for(let k=0,T=o.length;k<T;k++){let v=o[k],{name:M}=v.data,L=v.x,P=u.get(M)?.slice(i,s);if(!P)continue;let V=L-d,J=L-b;for(let W=0,Z=P.length;W<Z;W++){let Et=P[W],Pr=W*f+S,nr=a&&M!==g&&Et===a[W],ee;if(p)ee=I[i+W][Et];else if(w){let Gt=x[i+W];ee=Et===Gt.letter?Gt.color:void 0}else ee=A[Et];y&&(t.fillStyle=nr?r.palette.action.hover:ee||r.palette.background.default,t.fillRect(Pr,V,f,d)),E&&(t.fillStyle=c?n[Et]??"black":ee?Qh(ee,r.palette.background.default):r.palette.text.primary,t.fillText(nr?".":Et,Pr+Q,J))}}}function lT({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o,referenceSeq:i}){let{showMsaLetters:s,columns:a,colWidth:c,rowHeight:l,relativeTo:A}=e;if(!s)return;let u=n*c,f=c/2,d=l/4;t.fillStyle="black";for(let g=0,E=r.length;g<E;g++){let I=r[g],{name:x}=I.data,p=I.x-d,w=a.get(x)?.slice(n,o);if(w)for(let y=0,S=w.length;y<S;y++){let Q=w[y],b=i&&x!==A&&Q===i[y];t.fillText(b?".":Q,y*c+u+f,p)}}}function AT({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o}){let{bgColor:i,hideGapsEffective:s}=e;s&&(t.lineWidth=1,t.strokeStyle="#f0f",Mh({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:0}),t.strokeStyle=i?"#fff":"#000",Mh({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:-1}))}function Mh({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o,offset:i}){let{colWidth:a,rowHeight:c,insertionPositions:l}=e;for(let A of r){let{name:u}=A.data,f=l.get(u);if(f){let d=A.x;for(let{pos:g}of f)if(g>=n&&g<o){let E=g*a,I=d-c,x=d;t.beginPath(),t.moveTo(E+i,I+i);let p=I,w=!0;for(;p<x;){let y=Math.min(p+2,x),S=w?E+1:E-1;t.lineTo(S+i,y+i),p=y,w=!w}t.stroke()}}}}var Ou=h(()=>{Bu();vu();Ai();Rn()});function Gu({ctx:e,conservation:t,colWidth:r,trackHeight:n,offsetX:o,blockSize:i}){let{xStart:s,xEnd:a}=Bs({offsetX:o,blockWidth:i,colWidth:r});e.fillStyle="gray";for(let c=s;c<a&&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:s,offsetX:a,blockSize:c}){let{xStart:l,xEnd:A}=Bs({offsetX:a,blockWidth:c,colWidth:i}),u=t?.slice(l,A);for(let f=0;u&&f<u.length;f++){let d=u[f],g=r[d.toUpperCase()];if(o){let E=(l+f)*i;e.fillStyle=g||"white",e.fillRect(E,0,i,s),s>=10&&i>=s/2&&(e.fillStyle=n[d.toUpperCase()]||"black",e.fillText(d,E+i/2,s/2+1))}}}function uT({model:e,ctx:t,offsetX:r,offsetY:n,trackHeight:o,blockSizeXOverride:i,highResScaleFactorOverride:s}){let{blockSize:a,colWidth:c,highResScaleFactor:l,conservation:A}=e,u=i??a,f=s??l;t.resetTransform(),t.scale(f,f),t.translate(-r,n),Gu({ctx:t,conservation:A,colWidth:c,trackHeight:o,offsetX:r,blockSize:u}),t.resetTransform()}function fT({model:e,ctx:t,track:r,offsetX:n,offsetY:o,contrastScheme:i,blockSizeXOverride:s,highResScaleFactorOverride:a}){let{blockSize:c,bgColor:l,colorScheme:A,colWidth:u,fontSize:f,rowHeight:d,highResScaleFactor:g}=e,{customColorScheme:E,data:I}=r.model,x=E??A,p=s??c,w=a??g;t.resetTransform(),t.scale(w,w),t.translate(-n,o),t.textAlign="center",Hr(t,f),Uu({ctx:t,data:I,colorScheme:x,contrastScheme:i,bgColor:l,colWidth:u,rowHeight:d,offsetX:n,blockSize:p}),t.resetTransform()}function _h({model:e,ctx:t,offsetX:r,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}){let{turnedOnTracks:s}=e,a=0;for(let c of s){let l=c.model.height;c.model.id==="conservation"?uT({model:e,ctx:t,offsetX:r,offsetY:a,trackHeight:l,blockSizeXOverride:o,highResScaleFactorOverride:i}):fT({model:e,ctx:t,track:c,offsetX:r,offsetY:a,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}),a+=l}}var mc=h(()=>{Ai();vu()});function ho(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 dT(e){let t=ho(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 Th(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(s=>({data:s,children:null,parent:o,depth:o.depth+1,height:0}));for(let s of o.children)n.push(s)}}return dT(r),r}function kh(e,t){let r=ho(e);for(let n=r.length-1;n>=0;n--){let o=r[n],i=t(o.data);if(o.children)for(let s of o.children)i+=s.value;o.value=i}return e}function Dh(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 pc(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 _s(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 Nh(e){let t=[];return Hu(e,(r,n)=>{t.push({source:r,target:n})}),t}function Hu(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 Ts(e,t){for(let r of ho(e))t(r)}function Lh(e,t,r){let n=_s(e),o=n.length,i=t/o;for(let l=0;l<o;l++)n[l].x=(l+.5)*i;let s=ho(e);for(let l=s.length-1;l>=0;l--){let A=s[l];if(A.children){let u=0;for(let f of A.children)u+=f.x;A.x=u/A.children.length}}let a=e.height,c=[{node:e,depth:0}];for(;c.length>0;){let{node:l,depth:A}=c.pop();if(l.y=a===0?r:A/a*r,l.children)for(let u of l.children)c.push({node:u,depth:A+1})}}function Rh(e){e.children&&(ks(e),e._children=e.children,e.children=null)}function Fh(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:s}=o.pop(),a=i.children??i._children;if(a?.length)for(let c of a)o.push({node:c,acc:s+Math.max(c.data.length??0,0)});else r=Math.min(r,s),n=Math.max(n,s)}}return{min:r===1/0?0:r,max:n}}function ks(e){let t=ho(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 Ph(e){let t=0;for(let r of ho(e))t=Math.max(t,r.len||0);return t}function Oh(e){let t=ho(e),r=new Map;for(let n=t.length-1;n>=0;n--){let o=t[n],i=0;if(o.children)for(let s of o.children)i=Math.max(i,r.get(s));r.set(o,(o.data.length||0)+i)}return r.get(e)}function Gh(e,t,r){let n=[{node:e,y0:t}];for(;n.length>0;){let{node:o,y0:i}=n.pop(),s=i+Math.max(o.data.length||0,0);if(o.len=s*r,o.children)for(let a of o.children)n.push({node:a,y0:s})}}var ju=h(()=>{});function Ds(e,t,r,n){if(t)return e.len;if(n===0)return 0;let o=ks(e);return(n-o)/n*r}function mT({offsetY:e,ctx:t,model:r,theme:n,maxBranchLen:o,maxDepthToLeaf:i,blockSizeYOverride:s}){let{hierarchy:a,showBranchLenEffective:c,blockSize:l}=r,A=s??l;t.strokeStyle=n.palette.text.primary,Hu(a,(u,f)=>{let d=u.x,g=f.x,E=Ds(f,c,o,i),I=Ds(u,c,o,i);if(E===void 0||I===void 0)return;let x=Math.min(d,g),p=Math.max(d,g);e+A>=x&&p>=e&&(t.beginPath(),t.moveTo(I,d),t.lineTo(I,g),t.lineTo(E,g),t.stroke())})}function pT({ctx:e,clickMap:t,offsetY:r,model:n,theme:o,maxBranchLen:i,maxDepthToLeaf:s,blockSizeYOverride:a}){let{hierarchy:c,showBranchLenEffective:l,collapsed:A,blockSize:u,rowHeight:f,fontSize:d,marginLeft:g}=n,E=a??u,I=Math.max(2,f*.42);Ts(c,x=>{let{id:p,name:w}=x.data;if(A.includes(p)){let y=Ds(x,l,i,s),S=x.x,Q=S>r-fi&&S<r+E+fi,b=l?x.collapsedTipXFar??i:i;if(y!==void 0&&Q&&b>y){e.beginPath(),e.moveTo(y,S),e.lineTo(b,S-I),e.lineTo(b,S+I),e.closePath(),e.fillStyle=o.palette.action.disabled,e.fill(),e.strokeStyle=o.palette.text.primary,e.stroke();let k=x.value;k!==void 0&&f>=8&&(e.fillStyle=o.palette.text.primary,e.textAlign="left",e.fillText(`${k}`,b+3,S+d/4));let T=w===p?"Collapsed clade":w;t?.insert({minX:y+g,maxX:b+g,minY:S-I,maxY:S+I,branch:!0,id:p,name:k===void 0?T:`${T} (${k} tips)`})}}})}function gT({ctx:e,clickMap:t,offsetY:r,model:n,maxBranchLen:o,maxDepthToLeaf:i,blockSizeYOverride:s}){let{hierarchy:a,showBranchLenEffective:c,collapsed:l,blockSize:A,marginLeft:u}=n,f=s??A;Ts(a,d=>{let g=Ds(d,c,o,i);if(g===void 0)return;let{data:E}=d,I=d.x,{id:x,name:p}=E;if(d.height>=1&&I>r-fi&&I<r+f+fi){let w=l.includes(x);e.strokeStyle="black",e.fillStyle=w?"black":"white",e.beginPath(),e.arc(g,I,Co,0,2*Math.PI),e.fill(),e.stroke(),w||t?.insert({minX:g-Co+u,maxX:g-Co+qu+u,minY:I-Co,maxY:I-Co+qu,branch:!0,id:x,name:p})}})}function hT({theme:e,model:t,offsetY:r,ctx:n,clickMap:o,maxBranchLen:i,maxDepthToLeaf:s,blockSizeYOverride:a}){let{fontSize:c,showBranchLenEffective:l,treeMetadata:A,blockSize:u,labelsAlignRight:f,drawTree:d,treeAreaWidth:g,treeAreaWidthMinusMargin:E,marginLeft:I,leaves:x,noTree:p,labelWidthMap:w,collapsed:y}=t,S=a??u,Q=n.measureText("M").width;f?(n.textAlign="right",n.setLineDash([1,3])):n.textAlign="start";for(let b of x){let{data:{name:k,id:T}}=b,v=b.x,M=A[k]?.genome||k;if(!(y.includes(T)&&k===T)&&v>r-fi&&v<r+S+fi){let P=v+c/4,V=0;p||(V=Ds(b,l,i,s)??0);let J=w.get(k)??n.measureText(M).width;if(n.fillStyle=e.palette.text.primary,f){let Z=E-2;d&&!p&&(n.moveTo(V+Co+2,v),n.lineTo(Z-2-J,v),n.stroke()),n.fillText(M,Z,P),o?.insert({minX:g-J,maxX:g,minY:P-Q,maxY:P,name:k,id:T})}else{let W=p?2:V+qu;n.fillText(M,W,P),o?.insert({minX:W+I,maxX:W+J+I,minY:P-Q,maxY:P,name:k,id:T})}}}n.setLineDash([])}function gc({model:e,clickMap:t,ctx:r,offsetY:n,theme:o,highResScaleFactorOverride:i,blockSizeYOverride:s}){t?.clear();let{noTree:a,drawTree:c,drawNodeBubbles:l,highResScaleFactor:A,fontSize:u,showTreeText:f,marginLeft:d,rowHeight:g}=e;r.resetTransform();let E=i??A;r.scale(E,E),r.translate(d,-n),Hr(r,u);let{maxBranchLength:I,maxDepthToLeaf:x}=e;!a&&c&&(mT({ctx:r,offsetY:n,model:e,theme:o,maxBranchLen:I,maxDepthToLeaf:x,blockSizeYOverride:s}),pT({ctx:r,clickMap:t,offsetY:n,model:e,theme:o,maxBranchLen:I,maxDepthToLeaf:x,blockSizeYOverride:s}),l&&gT({ctx:r,offsetY:n,clickMap:t,model:e,maxBranchLen:I,maxDepthToLeaf:x,blockSizeYOverride:s})),f&&hT({ctx:r,offsetY:n,model:e,clickMap:t,theme:o,maxBranchLen:I,maxDepthToLeaf:x,blockSizeYOverride:s}),t?.finish()}var di,fi,Co,qu,hc=h(()=>{ju();Ai();di=600,fi=5,Co=2.5,qu=Co*2});var jh={};rt(jh,{Context:()=>Yu});function Uh(e){return!e||typeof e=="string"?e:e+""}function wr(e,t){let r=Object.keys(t);for(let n of r)e=e.replace(new RegExp("\\{"+n+"\\}","gi"),t[n]);return e}function Vu(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 CT(e,t=10){let r={},n=e.split(",");for(let o=0;o<n.length;o+=2){let i="&"+n[o+1]+";",s=parseInt(n[o],t);r[i]="&#"+s+";"}return r["\\xa0"]=" ",r}function ET(e){let t={left:"start",right:"end",center:"middle",start:"start",end:"end"};return t[e]||t.start}function xT(e){let t={alphabetic:"alphabetic",hanging:"hanging",top:"text-before-edge",bottom:"text-after-edge",middle:"central"};return t[e]||t.alphabetic}var Hh,Ns,Ls,Ju,Yu,qh=h(()=>{Hh=CT("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),Ns={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"}},Ls=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)),Uh(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",wr("rgb({r},{g},{b})",{r:i[1],g:i[2],b:i[3]})),n.setAttribute("stop-opacity",i[4]))}else n.setAttribute("stop-color",Uh(r));this.__root.appendChild(n)}},Ju=class{__root;__ctx;constructor(t,r){this.__root=t,this.__ctx=r}},Yu=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(Ns))this[t]=Ns[t].canvas}__applyStyleState(t){for(let r of Object.keys(t))this[r]=t[r]}__getStyleState(){let t={};for(let r of Object.keys(Ns))t[r]=this[r];return t}__applyTransformation(t,r){let{a:n,b:o,c:i,d:s,e:a,f:c}=r||this.getTransform();t.setAttribute("transform",`matrix(${n} ${o} ${i} ${s} ${a} ${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(Ns);for(let i of o){let s=Ns[i],a=this[i];if(s.apply){if(a instanceof Ju){if(a.__ctx)for(let c of Array.from(a.__ctx.__defs.childNodes)){let l=c.getAttribute("id");l&&(this.__ids[l]=l,this.__defs.appendChild(c))}r.setAttribute(s.apply,wr("url(#{id})",{id:a.__root.getAttribute("id")}))}else if(a instanceof Ls)r.setAttribute(s.apply,wr("url(#{id})",{id:a.__root.getAttribute("id")}));else if(s.apply.includes(t)&&s.svg!==a)if((s.svgAttr==="stroke"||s.svgAttr==="fill")&&a&&a.includes("rgba")){let l=/rgba\(\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi.exec(a);if(l){r.setAttribute(s.svgAttr,wr("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(s.svgAttr+"-opacity",String(A))}}else{let c=s.svgAttr,l=a;if(i==="globalAlpha"){if(c=t+"-"+s.svgAttr,r.getAttribute(c))continue}else if(i==="lineWidth"){let A=this.__getTransformScale();l=a*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(Hh)){let i=new RegExp(o,"gi");i.test(r)&&(r=r.replace(i,Hh[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(wr("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(wr("L {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y})):this.__addPathCommand(wr("M {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y}))}bezierCurveTo(t,r,n,o,i,s){this.__currentPosition={x:i,y:s},this.__addPathCommand(wr("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,s).x,y:this.__matrixTransform(i,s).y}))}quadraticCurveTo(t,r,n,o){this.__currentPosition={x:n,y:o},this.__addPathCommand(wr("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:s,c:a,d:c,e:l,f:A}=this.getTransform();JSON.stringify([i,s,a,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:s,c:a,d:c,e:l,f:A}=this.getTransform();if(JSON.stringify([i,s,a,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:Vu(this.__ids),x1:t+"px",x2:n+"px",y1:r+"px",y2:o+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(i),new Ls(i,this)}createRadialGradient(t,r,n,o,i,s){let a=this.__createElement("radialGradient",{id:Vu(this.__ids),cx:o+"px",cy:i+"px",r:s+"px",fx:t+"px",fy:r+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(a),new Ls(a,this)}__applyText(t,r,n,o){let i=document.createElement("span");i.setAttribute("style","font:"+this.font);let s=i.style,a=this.__closestGroupOrSvg(),c=this.__createElement("text",{"font-family":s.fontFamily,"font-size":s.fontSize,"font-style":s.fontStyle,"font-weight":s.fontWeight,"text-decoration":this.__fontUnderline,x:r,y:n,"text-anchor":ET(this.textAlign),"dominant-baseline":xT(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}a.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,s){if(o===i)return;o=o%(2*Math.PI),i=i%(2*Math.PI),o===i&&(i=(i+2*Math.PI-.001*(s?-1:1))%(2*Math.PI));let a=t+n*Math.cos(i),c=r+n*Math.sin(i),l=t+n*Math.cos(o),A=r+n*Math.sin(o),u=s?0:1,f=0,d=i-o;d<0&&(d+=2*Math.PI),s?f=d>Math.PI?0:1:f=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(wr("A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}",{rx:n*g,ry:n*E,xAxisRotation:0,largeArcFlag:f,sweepFlag:u,endX:this.__matrixTransform(a,c).x,endY:this.__matrixTransform(a,c).y})),this.__currentPosition={x:a,y:c}}clip(){let t=this.__closestGroupOrSvg(),r=this.__createElement("clipPath"),n=Vu(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",wr("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,s){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,s])}getTransform(){let{a:t,b:r,c:n,d:o,e:i,f:s}=this.__transformMatrix;return new DOMMatrix([t,r,n,o,i,s])}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,s){let a=this.getTransform().multiply(new DOMMatrix([t,r,n,o,i,s]));this.setTransform(a)}__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 zh={};rt(zh,{renderToSvg:()=>Wh});async function Wh(e,t){await(0,Yh.when)(()=>e.dataInitialized);let{width:r,height:n,scrollX:o,scrollY:i,totalTrackAreaHeight:s,minimapHeight:a}=e,{exportType:c,theme:l,includeTracks:A}=t,u=A?s:0,f=c==="viewport"&&!!t.includeMinimap;return Vh(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:f,includeTracks:A}:{width:r,height:n+(f?a:0)+u,contentHeight:n,trackHeight:u,theme:l,model:e,offsetY:-i,offsetX:-o,includeMinimap:f,includeTracks:A})}async function Vh({width:e,height:t,contentHeight:r,trackHeight:n,offsetX:o,offsetY:i,theme:s,model:a,includeMinimap:c,includeTracks:l}){let{Context:A}=await Promise.resolve().then(()=>(qh(),jh)),{treeAreaWidth:u,minimapHeight:f}=a,d=Ae.default.createElement(Ae.default.Fragment,null,l&&n>0?Ae.default.createElement(wT,{Context:A,model:a,theme:s,offsetX:o,msaAreaWidth:e-u,trackHeight:n}):null,Ae.default.createElement("g",{transform:n>0?`translate(0 ${n})`:void 0},Ae.default.createElement(IT,{Context:A,model:a,theme:s,offsetX:o,offsetY:i,msaAreaWidth:e-u,contentHeight:r})));return(0,Jh.renderToStaticMarkup)(Ae.default.createElement(yT,{width:e,height:t},c?Ae.default.createElement(Ae.default.Fragment,null,Ae.default.createElement("g",{transform:`translate(${u} 0)`},Ae.default.createElement(fh,{model:a})),Ae.default.createElement("g",{transform:`translate(0 ${f})`},d)):d))}function IT({model:e,theme:t,msaAreaWidth:r,contentHeight:n,offsetX:o,offsetY:i,Context:s}){let{treeAreaWidth:a,colorScheme:c,id:l}=e,A=`tree-${l}`,u=`msa-${l}`,f=vs(c,t),d=new s(a,n),g=new s(r,n);return cc({ctx:g,offsetX:o,offsetY:i,model:e,blockSizeYOverride:n,highResScaleFactorOverride:1}),gc({model:e,offsetY:i,ctx:d,theme:t,blockSizeYOverride:n,highResScaleFactorOverride:1}),dc({model:e,theme:t,offsetY:i,offsetX:o,contrastScheme:f,ctx:g,blockSizeXOverride:r,blockSizeYOverride:n,highResScaleFactorOverride:1}),Ae.default.createElement(Ae.default.Fragment,null,Ae.default.createElement("defs",null,Ae.default.createElement("clipPath",{id:A},Ae.default.createElement("rect",{x:0,y:0,width:a,height:n})),Ae.default.createElement("clipPath",{id:u},Ae.default.createElement("rect",{x:0,y:0,width:r,height:n}))),Ae.default.createElement(Wu,{clipId:A,html:d.getSvg().innerHTML}),Ae.default.createElement(Wu,{clipId:u,transform:`translate(${a} 0)`,html:g.getSvg().innerHTML}))}function Wu({clipId:e,html:t,transform:r}){return Ae.default.createElement("g",{clipPath:`url(#${e})`,transform:r,dangerouslySetInnerHTML:{__html:t}})}function wT({model:e,theme:t,msaAreaWidth:r,trackHeight:n,offsetX:o,Context:i}){let{treeAreaWidth:s,colorScheme:a,id:c}=e,l=`tracks-${c}`,A=vs(a,t),u=new i(r,n);return _h({model:e,ctx:u,offsetX:o,contrastScheme:A,blockSizeXOverride:r,highResScaleFactorOverride:1}),Ae.default.createElement("g",{transform:`translate(${s} 0)`},Ae.default.createElement("defs",null,Ae.default.createElement("clipPath",{id:l},Ae.default.createElement("rect",{x:0,y:0,width:r,height:n}))),Ae.default.createElement(Wu,{clipId:l,html:u.getSvg().innerHTML}))}function yT({width:e,height:t,children:r}){return Ae.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}`},Ae.default.createElement("rect",{width:"100%",height:"100%",fill:"white"}),r)}var Ae,Jh,Yh,zu=h(()=>{Ae=m(_(),1),Jh=m(he(),1),Yh=m(Ir(),1);dh();Qu();Ou();mc();hc();Rn()});var Ne=q((x4,$h)=>{$h.exports=JBrowseExports["@jbrowse/core/ui"]});var Kh,Xh,mi,$u=h(()=>{Kh=m(U(),1),Xh=m(_(),1),mi=class extends Xh.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,Kh.jsx)(this.props.FallbackComponent,{error:this.state.error}):this.props.children}}});var O=q((w4,Zh)=>{Zh.exports=JBrowseExports["@mui/material"]});function bT(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 ST(){return typeof window>"u"?1:window.devicePixelRatio}function t0(){return(0,e0.useSyncExternalStore)(bT,ST,()=>1)}var e0,r0=h(()=>{e0=m(_(),1)});function Fn(e,t){let r=(0,pi.useRef)(!1),[n,o]=(0,pi.useState)();return(0,pi.useEffect)(()=>{if(n!==void 0){let a=function(l){r.current||(r.current=!0,requestAnimationFrame(()=>{let A=e==="x"?l.clientX:l.clientY;t(A-i,s),r.current=!1}))},c=function(){o(void 0)},{client:i,startScroll:s}=n;return document.addEventListener("mousemove",a),document.addEventListener("mouseup",c),()=>{document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",c)}}},[e,t,n]),{dragging:n!==void 0,startDrag:(i,s)=>{o({client:e==="x"?i.clientX:i.clientY,startScroll:s})}}}var pi,Cc=h(()=>{pi=m(_(),1)});var ar,Ec,Ku,Xu,n0,o0,i0,Zu=h(()=>{ar=m(_(),1),Ec=m(j(),1);Cc();Ku="rgba(200,200,200)",Xu="rgba(150,150,150)",n0=(0,Ec.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,ar.useState)(!1),{startDrag:o}=Fn("x",(0,ar.useCallback)((i,s)=>{e.setTreeAreaWidth(s+i)},[e]));return ar.default.createElement("div",{onMouseDown:i=>{o(i,e.treeAreaWidth)},onMouseEnter:()=>{n(!0)},onMouseLeave:()=>{n(!1)},style:{cursor:"ew-resize",width:t,background:r?Xu:Ku,position:"relative"}})}),o0=(0,Ec.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,ar.useState)(!1),{startDrag:o}=Fn("y",(0,ar.useCallback)((i,s)=>{e.setHeight(s+i)},[e]));return ar.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?Xu:Ku,position:"relative"}})}),i0=(0,Ec.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,ar.useState)(!1),{startDrag:o}=Fn("y",(0,ar.useCallback)((i,s)=>{e.setConservationTrackHeight(Math.max(10,s+i))},[e]));return ar.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?Xu:Ku}})})});var s0,a0,c0=h(()=>{"use client";$();s0=m(U(),1),a0=(0,F.createSvgIcon)((0,s0.jsx)("path",{d:"m7 10 5 5 5-5z"}),"ArrowDropDown")});function l0(e,t){return t===1?e*16:t===2?e*100:e}function A0(e){let t=Math.abs(e);return t<6?25:t>150?500:t>30?150:75}function u0(e,t){let r=BT*t,n=Math.max(-r,Math.min(r,e));return n>0?1/(1+n):1-n}var BT,f0=h(()=>{BT=.011997600479904018});function gi({ref:e,onScrollX:t,onScrollY:r,onZoom:n,scrollZoom:o}){let i=(0,wt.useRef)(!1),s=(0,wt.useRef)(!1),a=(0,wt.useRef)(0),c=(0,wt.useRef)(0),l=(0,wt.useRef)(0),A=(0,wt.useRef)(0),u=(0,wt.useRef)(0),f=(0,wt.useRef)(null),d=(0,wt.useRef)(0),g=(0,wt.useRef)(0),[E,I]=(0,wt.useState)(!1);(0,wt.useEffect)(()=>{let w=e.current;if(!w)return;function y(S){let Q=S.ctrlKey||S.metaKey,b=o&&!S.shiftKey&&Math.abs(S.deltaY)>=Math.abs(S.deltaX);if(n&&(Q||b)){let v=w.getBoundingClientRect(),M=l0(S.deltaY,S.deltaMode),L=Q?A0(M):500;l.current+=M/L,A.current=S.clientX-v.left,u.current=S.clientY-v.top,s.current||(s.current=!0,requestAnimationFrame(P=>{let V=f.current===null?16.67:P-f.current;f.current=P,n(u0(l.current,Math.min(100,V)),A.current,u.current),l.current=0,s.current=!1})),S.preventDefault(),S.stopPropagation();return}let k=!!t&&S.deltaX!==0,T=!!r&&S.deltaY!==0;(k||T)&&(t&&(a.current+=S.deltaX),r&&(c.current+=S.deltaY),i.current||(i.current=!0,requestAnimationFrame(()=>{t&&(t(-a.current),a.current=0),r&&(r(-c.current),c.current=0),i.current=!1})),S.preventDefault(),S.stopPropagation())}return w.addEventListener("wheel",y,{passive:!1}),()=>{w.removeEventListener("wheel",y)}},[e,t,r,n,o]),(0,wt.useEffect)(()=>{if(!E)return;function w(S){S.preventDefault();let Q=S.clientX-d.current,b=S.clientY-g.current;(Q&&t||b&&r)&&(i.current||(i.current=!0,requestAnimationFrame(()=>{t?.(Q),r?.(b),i.current=!1,d.current=S.clientX,g.current=S.clientY})))}function y(){d.current=0,g.current=0,I(!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 x(w){let y=w.target;y.draggable||y.dataset.resizer||w.button===0&&(d.current=w.clientX,g.current=w.clientY,I(!0))}function p(w){w.preventDefault(),I(!1)}return{onMouseDown:x,onMouseUp:p}}var wt,xc=h(()=>{wt=m(_(),1);f0()});function Rs(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 ef=h(()=>{});var g0={};rt(g0,{default:()=>_T});var dn,d0,Eo,m0,p0,vT,MT,_T,h0=h(()=>{dn=m(_(),1),d0=m(Ne(),1),Eo=m(O(),1),m0=m(j(),1),p0=m(De(),1);ef();vT=(0,p0.makeStyles)()(e=>({textArea:{padding:e.spacing(2),overflow:"auto",background:"#ddd",wordBreak:"break-word"}})),MT=(0,m0.observer)(function({model:e,onClose:t}){let[r,n]=(0,dn.useState)("Copy to clipboard"),{classes:o}=vT();return dn.default.createElement(d0.Dialog,{open:!0,onClose:t,fullWidth:!0,maxWidth:"lg",title:`Track info - ${e.name}`},dn.default.createElement(Eo.DialogContent,null,dn.default.createElement(Eo.Button,{variant:"contained",color:"primary",onClick:()=>{Rs(e.data),n("Copied!"),setTimeout(()=>{n("Copy to clipboard")},300)}},r),dn.default.createElement("pre",{className:o.textArea},e.data)),dn.default.createElement(Eo.DialogActions,null,dn.default.createElement(Eo.Button,{variant:"contained",onClick:t,color:"secondary"},"Close")))}),_T=MT});var qe,xo,tf,C0,TT,kT,DT,NT,E0,x0=h(()=>{qe=m(_(),1);c0();xo=m(O(),1),tf=m(j(),1),C0=m(De(),1);xc();TT=(0,qe.lazy)(()=>Promise.resolve().then(()=>(h0(),g0))),kT=(0,C0.makeStyles)()({button:{padding:0}}),DT=(0,tf.observer)(function({model:t,track:r}){let[n,o]=(0,qe.useState)(),{drawLabels:i,rowHeight:s,treeAreaWidth:a}=t,{model:{name:c,height:l}}=r,{classes:A}=kT(),u=Math.min(l,Math.max(8,s-8));return qe.default.createElement("div",{style:{width:a,height:l,flexShrink:0,textAlign:"right",fontSize:u}},i?c:""," ",qe.default.createElement(xo.IconButton,{className:A.button,style:{width:u,height:u},onClick:f=>{o(f.currentTarget)}},qe.default.createElement(a0,null)),n?qe.default.createElement(xo.Menu,{anchorEl:n,transitionDuration:0,open:!0,onClose:()=>{o(void 0)}},qe.default.createElement(xo.MenuItem,{dense:!0,onClick:()=>{t.toggleTrack(r.model.id),o(void 0)}},"Close"),qe.default.createElement(xo.MenuItem,{dense:!0,onClick:()=>{t.queueDialog(f=>[TT,{onClose:f,model:r.model}]),o(void 0)}},"Get info")):null)}),NT=(0,tf.observer)(function({model:e,track:t}){let{resizeHandleWidth:r,colWidth:n,scrollX:o,numColumns:i}=e,{model:{height:s}}=t,a=(0,qe.useRef)(null),c=(0,qe.useCallback)(l=>{e.doScrollX(l)},[e]);return gi({ref:a,onScrollX:c}),qe.default.createElement("div",{style:{display:"flex",height:s}},qe.default.createElement(DT,{model:e,track:t}),qe.default.createElement("div",{style:{width:r,flexShrink:0}}),qe.default.createElement("div",{ref:a,onMouseMove:l=>{if(!a.current)return;let{left:A}=a.current.getBoundingClientRect(),u=l.clientX-A-o,f=Math.floor(u/n);f>=0&&f<i?e.setMousePos(f,void 0):e.setMousePos(void 0,void 0)},onMouseLeave:()=>{e.setMousePos(void 0,void 0)}},qe.default.createElement(t.ReactComponent,{model:e,track:t})))}),E0=NT});var Io,I0,w0,LT,y0,b0=h(()=>{Io=m(_(),1),I0=m(he(),1),w0=m(j(),1);Cc();LT=(0,w0.observer)(({model:e})=>{let{msaAreaHeight:t,scrollY:r,totalHeight:n}=e,[o,i]=(0,Io.useState)(!1),s="rgba(66, 119, 127, 0.3)",a=t/n,c=-r,l=c+t,A=c*a,u=l*a,{startDrag:f}=Fn("y",(0,Io.useCallback)((d,g)=>{e.setScrollY((0,I0.clamp)(g-d/a,e.maxScrollY,0))},[e,a]));return Io.default.createElement("div",{style:{position:"relative",width:20,height:t,borderLeft:"1px solid #555",borderTop:"1px solid #555",boxSizing:"border-box"}},Io.default.createElement("div",{style:{position:"absolute",top:Math.max(0,A),left:0,background:o?"rgba(66,119,127,0.6)":s,cursor:"pointer",boxSizing:"border-box",width:20,height:Math.max(u-A,20),zIndex:100},onMouseOver:()=>{i(!0)},onMouseOut:()=>{i(!1)},onMouseDown:d=>{f(d,e.scrollY)}}))}),y0=LT});function rf(){let e=(0,hi.useRef)(null),[t,r]=(0,hi.useState)({width:void 0,height:void 0});return(0,hi.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 hi,S0=h(()=>{hi=m(_(),1)});var B0,Q0,v0=h(()=>{"use client";$();B0=m(U(),1),Q0=(0,F.createSvgIcon)((0,B0.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 M0,_0,T0=h(()=>{"use client";$();M0=m(U(),1),_0=(0,F.createSvgIcon)((0,M0.jsx)("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"ChevronRight")});var k0,D0,N0=h(()=>{"use client";$();k0=m(U(),1),D0=(0,F.createSvgIcon)((0,k0.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 L0,Ic,nf=h(()=>{"use client";$();L0=m(U(),1),Ic=(0,F.createSvgIcon)((0,L0.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 R0,F0,P0=h(()=>{"use client";$();R0=m(U(),1),F0=(0,F.createSvgIcon)((0,R0.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 O0,G0,U0=h(()=>{"use client";$();O0=m(U(),1),G0=(0,F.createSvgIcon)((0,O0.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 FT(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 PT(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 RT,H0,j0=h(()=>{RT=!1;H0=(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?!RT: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(PT(this));var o=this.tags[this.tags.length-1];if(this.isSpeedy){var i=FT(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 ft,Fs,oe,wc,Ci,Ei,q0,yc,V0,bc=h(()=>{ft="-ms-",Fs="-moz-",oe="-webkit-",wc="comm",Ci="rule",Ei="decl",q0="@import",yc="@keyframes",V0="@layer"});function W0(e,t){return Ge(e,0)^45?(((t<<2^Ge(e,0))<<2^Ge(e,1))<<2^Ge(e,2))<<2^Ge(e,3):0}function Sc(e){return e.trim()}function of(e,t){return(e=t.exec(e))?e[0]:e}function K(e,t,r){return e.replace(t,r)}function Ps(e,t){return e.indexOf(t)}function Ge(e,t){return e.charCodeAt(t)|0}function Pn(e,t,r){return e.slice(t,r)}function _t(e){return e.length}function xi(e){return e.length}function Ii(e,t){return t.push(e),e}function sf(e,t){return e.map(t).join("")}var J0,wo,Y0,wi=h(()=>{J0=Math.abs,wo=String.fromCharCode,Y0=Object.assign});function Os(e,t,r,n,o,i,s){return{value:e,root:t,parent:r,type:n,props:o,children:i,line:Bc,column:yi,length:s,return:""}}function Bi(e,t){return Y0(Os("",null,null,"",null,null,0),e,{length:-e.length},t)}function $0(){return Ve}function K0(){return Ve=Tt>0?Ge(Si,--Tt):0,yi--,Ve===10&&(yi=1,Bc--),Ve}function kt(){return Ve=Tt<z0?Ge(Si,Tt++):0,yi++,Ve===10&&(yi=1,Bc++),Ve}function cr(){return Ge(Si,Tt)}function Gs(){return Tt}function Qi(e,t){return Pn(Si,e,t)}function bi(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 Qc(e){return Bc=yi=1,z0=_t(Si=e),Tt=0,[]}function vc(e){return Si="",e}function vi(e){return Sc(Qi(Tt-1,af(e===91?e+2:e===40?e+1:e)))}function X0(e){for(;(Ve=cr())&&Ve<33;)kt();return bi(e)>2||bi(Ve)>3?"":" "}function Z0(e,t){for(;--t&&kt()&&!(Ve<48||Ve>102||Ve>57&&Ve<65||Ve>70&&Ve<97););return Qi(e,Gs()+(t<6&&cr()==32&&kt()==32))}function af(e){for(;kt();)switch(Ve){case e:return Tt;case 34:case 39:e!==34&&e!==39&&af(Ve);break;case 40:e===41&&af(e);break;case 92:kt();break}return Tt}function eC(e,t){for(;kt()&&e+Ve!==57;)if(e+Ve===84&&cr()===47)break;return"/*"+Qi(t,Tt-1)+"*"+wo(e===47?e:kt())}function tC(e){for(;!bi(cr());)kt();return Qi(e,Tt)}var Bc,yi,z0,Tt,Ve,Si,cf=h(()=>{wi();Bc=1,yi=1,z0=0,Tt=0,Ve=0,Si=""});function oC(e){return vc(Mc("",null,null,null,[""],e=Qc(e),0,[0],e))}function Mc(e,t,r,n,o,i,s,a,c){for(var l=0,A=0,u=s,f=0,d=0,g=0,E=1,I=1,x=1,p=0,w="",y=o,S=i,Q=n,b=w;I;)switch(g=p,p=kt()){case 40:if(g!=108&&Ge(b,u-1)==58){Ps(b+=K(vi(p),"&","&\f"),"&\f")!=-1&&(x=-1);break}case 34:case 39:case 91:b+=vi(p);break;case 9:case 10:case 13:case 32:b+=X0(g);break;case 92:b+=Z0(Gs()-1,7);continue;case 47:switch(cr()){case 42:case 47:Ii(OT(eC(kt(),Gs()),t,r),c);break;default:b+="/"}break;case 123*E:a[l++]=_t(b)*x;case 125*E:case 59:case 0:switch(p){case 0:case 125:I=0;case 59+A:x==-1&&(b=K(b,/\f/g,"")),d>0&&_t(b)-u&&Ii(d>32?nC(b+";",n,r,u-1):nC(K(b," ","")+";",n,r,u-2),c);break;case 59:b+=";";default:if(Ii(Q=rC(b,t,r,l,A,o,a,w,y=[],S=[],u),i),p===123)if(A===0)Mc(b,t,Q,Q,y,i,u,a,S);else switch(f===99&&Ge(b,3)===110?100:f){case 100:case 108:case 109:case 115:Mc(e,Q,Q,n&&Ii(rC(e,Q,Q,0,0,o,a,w,o,y=[],u),S),o,S,u,a,n?y:S);break;default:Mc(b,Q,Q,Q,[""],S,0,a,S)}}l=A=d=0,E=x=1,w=b="",u=s;break;case 58:u=1+_t(b),d=g;default:if(E<1){if(p==123)--E;else if(p==125&&E++==0&&K0()==125)continue}switch(b+=wo(p),p*E){case 38:x=A>0?1:(b+="\f",-1);break;case 44:a[l++]=(_t(b)-1)*x,x=1;break;case 64:cr()===45&&(b+=vi(kt())),f=cr(),A=u=_t(w=b+=tC(Gs())),p++;break;case 45:g===45&&_t(b)==2&&(E=0)}}return i}function rC(e,t,r,n,o,i,s,a,c,l,A){for(var u=o-1,f=o===0?i:[""],d=xi(f),g=0,E=0,I=0;g<n;++g)for(var x=0,p=Pn(e,u+1,u=J0(E=s[g])),w=e;x<d;++x)(w=Sc(E>0?f[x]+" "+p:K(p,/&\f/g,f[x])))&&(c[I++]=w);return Os(e,t,r,o===0?Ci:a,c,l,A)}function OT(e,t,r){return Os(e,t,r,wc,wo($0()),Pn(e,2,-2),0)}function nC(e,t,r,n){return Os(e,t,r,Ei,Pn(e,0,n),Pn(e,n+1,-1),n)}var iC=h(()=>{bc();wi();cf()});var sC=h(()=>{});function yo(e,t){for(var r="",n=xi(e),o=0;o<n;o++)r+=t(e[o],o,e,t)||"";return r}function aC(e,t,r,n){switch(e.type){case V0:if(e.children.length)break;case q0:case Ei:return e.return=e.return||e.value;case wc:return"";case yc:return e.return=e.value+"{"+yo(e.children,n)+"}";case Ci:e.value=e.props.join(",")}return _t(r=yo(e.children,n))?e.return=e.value+"{"+r+"}":""}var cC=h(()=>{bc();wi()});function lC(e){var t=xi(e);return function(r,n,o,i){for(var s="",a=0;a<t;a++)s+=e[a](r,n,o,i)||"";return s}}function AC(e){return function(t){t.root||(t=t.return)&&e(t)}}var uC=h(()=>{wi()});var fC=h(()=>{bc();wi();iC();sC();cf();cC();uC()});var _c=h(()=>{});function dC(e){var t=Object.create(null);return function(r){return t[r]===void 0&&(t[r]=e(r)),t[r]}}var lf=h(()=>{});function pC(e,t){switch(W0(e,t)){case 5103:return oe+"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 oe+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return oe+e+Fs+e+ft+e+e;case 6828:case 4268:return oe+e+ft+e+e;case 6165:return oe+e+ft+"flex-"+e+e;case 5187:return oe+e+K(e,/(\w+).+(:[^]+)/,oe+"box-$1$2"+ft+"flex-$1$2")+e;case 5443:return oe+e+ft+"flex-item-"+K(e,/flex-|-self/,"")+e;case 4675:return oe+e+ft+"flex-line-pack"+K(e,/align-content|flex-|-self/,"")+e;case 5548:return oe+e+ft+K(e,"shrink","negative")+e;case 5292:return oe+e+ft+K(e,"basis","preferred-size")+e;case 6060:return oe+"box-"+K(e,"-grow","")+oe+e+ft+K(e,"grow","positive")+e;case 4554:return oe+K(e,/([^-])(transform)/g,"$1"+oe+"$2")+e;case 6187:return K(K(K(e,/(zoom-|grab)/,oe+"$1"),/(image-set)/,oe+"$1"),e,"")+e;case 5495:case 3959:return K(e,/(image-set\([^]*)/,oe+"$1$`$1");case 4968:return K(K(e,/(.+:)(flex-)?(.*)/,oe+"box-pack:$3"+ft+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+oe+e+e;case 4095:case 3583:case 4068:case 2532:return K(e,/(.+)-inline(.+)/,oe+"$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(_t(e)-1-t>6)switch(Ge(e,t+1)){case 109:if(Ge(e,t+4)!==45)break;case 102:return K(e,/(.+:)(.+)-([^]+)/,"$1"+oe+"$2-$3$1"+Fs+(Ge(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~Ps(e,"stretch")?pC(K(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(Ge(e,t+1)!==115)break;case 6444:switch(Ge(e,_t(e)-3-(~Ps(e,"!important")&&10))){case 107:return K(e,":",":"+oe)+e;case 101:return K(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+oe+(Ge(e,14)===45?"inline-":"")+"box$3$1"+oe+"$2$3$1"+ft+"$2box$3")+e}break;case 5936:switch(Ge(e,t+11)){case 114:return oe+e+ft+K(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return oe+e+ft+K(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return oe+e+ft+K(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return oe+e+ft+e+e}return e}var GT,UT,HT,mC,jT,qT,VT,JT,gC,Af=h(()=>{j0();fC();_c();lf();GT=function(t,r,n){for(var o=0,i=0;o=i,i=cr(),o===38&&i===12&&(r[n]=1),!bi(i);)kt();return Qi(t,Tt)},UT=function(t,r){var n=-1,o=44;do switch(bi(o)){case 0:o===38&&cr()===12&&(r[n]=1),t[n]+=GT(Tt-1,r,n);break;case 2:t[n]+=vi(o);break;case 4:if(o===44){t[++n]=cr()===58?"&\f":"",r[n]=t[n].length;break}default:t[n]+=wo(o)}while(o=kt());return t},HT=function(t,r){return vc(UT(Qc(t),r))},mC=new WeakMap,jT=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&&!mC.get(n))&&!o){mC.set(t,!0);for(var i=[],s=HT(r,i),a=n.props,c=0,l=0;c<s.length;c++)for(var A=0;A<a.length;A++,l++)t.props[l]=i[c]?s[c].replace(/&\f/g,a[A]):a[A]+" "+s[c]}}},qT=function(t){if(t.type==="decl"){var r=t.value;r.charCodeAt(0)===108&&r.charCodeAt(2)===98&&(t.return="",t.value="")}};VT=function(t,r,n,o){if(t.length>-1&&!t.return)switch(t.type){case Ei:t.return=pC(t.value,t.length);break;case yc:return yo([Bi(t,{value:K(t.value,"@","@"+oe)})],o);case Ci:if(t.length)return sf(t.props,function(i){switch(of(i,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return yo([Bi(t,{props:[K(i,/:(read-\w+)/,":"+Fs+"$1")]})],o);case"::placeholder":return yo([Bi(t,{props:[K(i,/:(plac\w+)/,":"+oe+"input-$1")]}),Bi(t,{props:[K(i,/:(plac\w+)/,":"+Fs+"$1")]}),Bi(t,{props:[K(i,/:(plac\w+)/,ft+"input-$1")]})],o)}return""})}},JT=[VT],gC=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 I=E.getAttribute("data-emotion");I.indexOf(" ")!==-1&&(document.head.appendChild(E),E.setAttribute("data-s",""))})}var o=t.stylisPlugins||JT,i={},s,a=[];s=t.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+r+' "]'),function(E){for(var I=E.getAttribute("data-emotion").split(" "),x=1;x<I.length;x++)i[I[x]]=!0;a.push(E)});var c,l=[jT,qT];{var A,u=[aC,AC(function(E){A.insert(E)})],f=lC(l.concat(o,u)),d=function(I){return yo(oC(I),f)};c=function(I,x,p,w){A=p,d(I?I+"{"+x.styles+"}":x.styles),w&&(g.inserted[x.name]=!0)}}var g={key:r,sheet:new H0({key:r,container:s,nonce:t.nonce,speedy:t.speedy,prepend:t.prepend,insertionPoint:t.insertionPoint}),nonce:t.nonce,inserted:i,registered:{},insert:c};return g.sheet.hydrate(a),g}});var uf=h(()=>{});var CC=q(ue=>{"use strict";var ot=typeof Symbol=="function"&&Symbol.for,ff=ot?Symbol.for("react.element"):60103,df=ot?Symbol.for("react.portal"):60106,Tc=ot?Symbol.for("react.fragment"):60107,kc=ot?Symbol.for("react.strict_mode"):60108,Dc=ot?Symbol.for("react.profiler"):60114,Nc=ot?Symbol.for("react.provider"):60109,Lc=ot?Symbol.for("react.context"):60110,mf=ot?Symbol.for("react.async_mode"):60111,Rc=ot?Symbol.for("react.concurrent_mode"):60111,Fc=ot?Symbol.for("react.forward_ref"):60112,Pc=ot?Symbol.for("react.suspense"):60113,YT=ot?Symbol.for("react.suspense_list"):60120,Oc=ot?Symbol.for("react.memo"):60115,Gc=ot?Symbol.for("react.lazy"):60116,WT=ot?Symbol.for("react.block"):60121,zT=ot?Symbol.for("react.fundamental"):60117,$T=ot?Symbol.for("react.responder"):60118,KT=ot?Symbol.for("react.scope"):60119;function Wt(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case ff:switch(e=e.type,e){case mf:case Rc:case Tc:case Dc:case kc:case Pc:return e;default:switch(e=e&&e.$$typeof,e){case Lc:case Fc:case Gc:case Oc:case Nc:return e;default:return t}}case df:return t}}}function hC(e){return Wt(e)===Rc}ue.AsyncMode=mf;ue.ConcurrentMode=Rc;ue.ContextConsumer=Lc;ue.ContextProvider=Nc;ue.Element=ff;ue.ForwardRef=Fc;ue.Fragment=Tc;ue.Lazy=Gc;ue.Memo=Oc;ue.Portal=df;ue.Profiler=Dc;ue.StrictMode=kc;ue.Suspense=Pc;ue.isAsyncMode=function(e){return hC(e)||Wt(e)===mf};ue.isConcurrentMode=hC;ue.isContextConsumer=function(e){return Wt(e)===Lc};ue.isContextProvider=function(e){return Wt(e)===Nc};ue.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===ff};ue.isForwardRef=function(e){return Wt(e)===Fc};ue.isFragment=function(e){return Wt(e)===Tc};ue.isLazy=function(e){return Wt(e)===Gc};ue.isMemo=function(e){return Wt(e)===Oc};ue.isPortal=function(e){return Wt(e)===df};ue.isProfiler=function(e){return Wt(e)===Dc};ue.isStrictMode=function(e){return Wt(e)===kc};ue.isSuspense=function(e){return Wt(e)===Pc};ue.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===Tc||e===Rc||e===Dc||e===kc||e===Pc||e===YT||typeof e=="object"&&e!==null&&(e.$$typeof===Gc||e.$$typeof===Oc||e.$$typeof===Nc||e.$$typeof===Lc||e.$$typeof===Fc||e.$$typeof===zT||e.$$typeof===$T||e.$$typeof===KT||e.$$typeof===WT)};ue.typeOf=Wt});var xC=q((_8,EC)=>{"use strict";EC.exports=CC()});var QC=q((T8,BC)=>{"use strict";var pf=xC(),XT={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},ZT={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},ek={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},bC={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},gf={};gf[pf.ForwardRef]=ek;gf[pf.Memo]=bC;function IC(e){return pf.isMemo(e)?bC:gf[e.$$typeof]||XT}var tk=Object.defineProperty,rk=Object.getOwnPropertyNames,wC=Object.getOwnPropertySymbols,nk=Object.getOwnPropertyDescriptor,ok=Object.getPrototypeOf,yC=Object.prototype;function SC(e,t,r){if(typeof t!="string"){if(yC){var n=ok(t);n&&n!==yC&&SC(e,n,r)}var o=rk(t);wC&&(o=o.concat(wC(t)));for(var i=IC(e),s=IC(t),a=0;a<o.length;++a){var c=o[a];if(!ZT[c]&&!(r&&r[c])&&!(s&&s[c])&&!(i&&i[c])){var l=nk(t,c);try{tk(e,c,l)}catch{}}}}return e}BC.exports=SC});function Us(e,t,r){var n="";return r.split(" ").forEach(function(o){e[o]!==void 0?t.push(e[o]+";"):o&&(n+=o+" ")}),n}var ik,Uc,Hs,Hc=h(()=>{ik=!0;Uc=function(t,r,n){var o=t.key+"-"+r.name;(n===!1||ik===!1)&&t.registered[o]===void 0&&(t.registered[o]=r.styles)},Hs=function(t,r,n){Uc(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 vC(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 MC=h(()=>{});var _C,TC=h(()=>{_C={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 js(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 jr={name:o.name,styles:o.styles,next:jr},o.name;var i=r;if(i.styles!==void 0){var s=i.next;if(s!==void 0)for(;s!==void 0;)jr={name:s.name,styles:s.styles,next:jr},s=s.next;var a=i.styles+";";return a}return Ak(e,t,r)}case"function":{if(e!==void 0){var c=jr,l=r(e);return jr=c,js(e,t,l)}break}}var A=r;if(t==null)return A;var u=t[A];return u!==void 0?u:A}function Ak(e,t,r){var n="";if(Array.isArray(r))for(var o=0;o<r.length;o++)n+=js(e,t,r[o])+";";else for(var i in r){var s=r[i];if(typeof s!="object"){var a=s;t!=null&&t[a]!==void 0?n+=i+"{"+t[a]+"}":kC(a)&&(n+=hf(i)+":"+DC(i,a)+";")}else{if(i==="NO_COMPONENT_SELECTOR"&&sk)throw new Error(lk);if(Array.isArray(s)&&typeof s[0]=="string"&&(t==null||t[s[0]]===void 0))for(var c=0;c<s.length;c++)kC(s[c])&&(n+=hf(i)+":"+DC(i,s[c])+";");else{var l=js(e,t,s);switch(i){case"animation":case"animationName":{n+=hf(i)+":"+l+";";break}default:n+=i+"{"+l+"}"}}}}return n}function Mi(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="";jr=void 0;var i=e[0];if(i==null||i.raw===void 0)n=!1,o+=js(r,t,i);else{var s=i;o+=s[0]}for(var a=1;a<e.length;a++)if(o+=js(r,t,e[a]),n){var c=i;o+=c[a]}NC.lastIndex=0;for(var l="",A;(A=NC.exec(o))!==null;)l+="-"+A[1];var u=vC(o)+l;return{name:u,styles:o,next:jr}}var sk,ak,ck,LC,kC,hf,DC,lk,NC,jr,jc=h(()=>{MC();TC();lf();sk=!1,ak=/[A-Z]|^ms/g,ck=/_EMO_([^_]+?)_([^]*?)_EMO_/g,LC=function(t){return t.charCodeAt(1)===45},kC=function(t){return t!=null&&typeof t!="boolean"},hf=dC(function(e){return LC(e)?e:e.replace(ak,"-$&").toLowerCase()}),DC=function(t,r){switch(t){case"animation":case"animationName":if(typeof r=="string")return r.replace(ck,function(n,o,i){return jr={name:o,styles:i,next:jr},o})}return _C[t]!==1&&!LC(t)&&typeof r=="number"&&r!==0?r+"px":r},lk="Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform.";NC=/label:\s*([^\s;{]+)\s*(;|$)/g});var qc,uk,fk,Cf,Ef=h(()=>{qc=m(_()),uk=function(t){return t()},fk=qc.useInsertionEffect?qc.useInsertionEffect:!1,Cf=fk||uk});var lr,qs,RC,If,dk,wf,yf,bf,Vc,xf,FC,mk,pk,PC,Sf=h(()=>{lr=m(_()),qs=m(_());Af();uf();_c();Hc();jc();Ef();RC=!1,If=lr.createContext(typeof HTMLElement<"u"?gC({key:"css"}):null),dk=If.Provider,wf=function(){return(0,qs.useContext)(If)},yf=function(t){return(0,qs.forwardRef)(function(r,n){var o=(0,qs.useContext)(If);return t(r,o,n)})},bf=lr.createContext({}),Vc={}.hasOwnProperty,xf="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",FC=function(t,r){var n={};for(var o in r)Vc.call(r,o)&&(n[o]=r[o]);return n[xf]=t,n},mk=function(t){var r=t.cache,n=t.serialized,o=t.isStringTag;return Uc(r,n,o),Cf(function(){return Hs(r,n,o)}),null},pk=yf(function(e,t,r){var n=e.css;typeof n=="string"&&t.registered[n]!==void 0&&(n=t.registered[n]);var o=e[xf],i=[n],s="";typeof e.className=="string"?s=Us(t.registered,i,e.className):e.className!=null&&(s=e.className+" ");var a=Mi(i,void 0,lr.useContext(bf));s+=t.key+"-"+a.name;var c={};for(var l in e)Vc.call(e,l)&&l!=="css"&&l!==xf&&!RC&&(c[l]=e[l]);return c.className=s,r&&(c.ref=r),lr.createElement(lr.Fragment,null,lr.createElement(mk,{cache:t,serialized:a,isStringTag:typeof o=="string"}),lr.createElement(o,c))}),PC=pk});function gk(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return Mi(t)}function Bf(){var e=gk.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 _i,sO,OC,Qf=h(()=>{Sf();Sf();_i=m(_());Hc();Ef();jc();Af();uf();_c();sO=m(QC()),OC=function(t,r){var n=arguments;if(r==null||!Vc.call(r,"css"))return _i.createElement.apply(void 0,n);var o=n.length,i=new Array(o);i[0]=PC,i[1]=FC(t,r);for(var s=2;s<o;s++)i[s]=n[s];return _i.createElement.apply(null,i)};(function(e){var t;t||(t=e.JSX||(e.JSX={}))})(OC||(OC={}))});var vf=q((lO,GC)=>{GC.exports=JBrowseExports["@mui/material/styles"]});var Ti,Mf=h(()=>{Ti=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=Ti(o);else{let s=o;i="";for(let a in s)s[a]&&a&&(i&&(i+=" "),i+=a)}break}default:i=o}i&&(n&&(n+=" "),n+=i)}return n}});function UC(e){return e instanceof Object&&!("styles"in e)&&!("length"in e)&&!("__emotion_styles"in e)}var HC=h(()=>{});function VC(e){let{useCache:t}=e;function r(){let n=t(),{css:o,cx:i}=(0,qC.useMemo)(()=>hk({cache:n}),[n]);return{css:o,cx:i}}return{useCssAndCx:r}}var qC,hk,jC,JC=h(()=>{qC=m(_(),1);jc();Hc();Mf();HC();({createCssAndCx:hk}=(()=>{function e(r,n,o){let i=[],s=Us(r,i,o);return i.length<2?o:s+n(i)}function t(r){let{cache:n}=r,o=(...s)=>{let a=Mi(s,n.registered);Hs(n,a,!1);let c=`${n.key}-${a.name}`;e:{let l=s[0];if(!UC(l))break e;jC.saveClassNameCSSObjectMapping(n,c,l)}return c};return{css:o,cx:(...s)=>{let a=Ti(s),c=jC.fixClassName(n,a,o);return e(n.registered,o,c)}}}return{createCssAndCx:t}})());jC=(()=>{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 s;if(n)s={"&&":i};else{s=o;for(let a in i)if(a.startsWith("@media")){n=!0;break}}return s})}return(r,n,o)=>{if(!n.includes(" "))return n;let i=e.get(r);return Ti(t(n.split(" ").map(s=>[s,i?.get(s)])).map(s=>typeof s=="string"?s:o(s)))}})()}})()});function YC(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 s=t[i];typeof s=="string"&&(o[i]=s)}return o}var WC=h(()=>{});function zC(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 $C=h(()=>{});function KC(e){let{useTheme:t}=e,{useCssAndCx:r}=VC({useCache:Ck});function n(){return function(o){let i=typeof o=="function"?o:()=>o;return function(a,c){let l=t(),{css:A,cx:u}=r(),f=(0,_f.useMemo)(()=>{let I=i(l),x={};for(let p of Object.keys(I)){let w=I[p];x[p]=A(w)}return x},[A,l]),d=c?.props.classes,g=zC(d);return{classes:(0,_f.useMemo)(()=>d?YC(f,d,u):f,[f,g,u]),theme:l,css:A,cx:u}}}}return{makeStyles:n}}var _f,Ck,XC=h(()=>{"use client";_f=m(_(),1);Qf();JC();WC();$C();Ck=wf});var ZC,ae,eE=h(()=>{ZC=m(vf(),1);XC();({makeStyles:ae}=KC({useTheme:ZC.useTheme}))});var tE=h(()=>{eE()});function Jc(...e){return Ti(e)}var Dt=h(()=>{"use client";Qf();tE();Mf()});function Tf({children:e}){let{classes:t}=Ek();return(0,rE.jsx)("div",{className:t.bg,children:e})}var rE,Ek,nE=h(()=>{rE=m(U(),1);Dt();Ek=ae()(e=>({bg:{padding:4,margin:4,overflow:"auto",maxHeight:200,background:e.palette.mode==="dark"?"#833":"#f88",border:`1px solid ${e.palette.divider}`}}))});var iE=q(kf=>{var oE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");kf.encode=function(e){if(0<=e&&e<oE.length)return oE[e];throw new TypeError("Must be between 0 and 63: "+e)};kf.decode=function(e){var t=65,r=90,n=97,o=122,i=48,s=57,a=43,c=47,l=26,A=52;return t<=e&&e<=r?e-t:n<=e&&e<=o?e-n+l:i<=e&&e<=s?e-i+A:e==a?62:e==c?63:-1}});var Lf=q(Nf=>{var sE=iE(),Df=5,aE=1<<Df,cE=aE-1,lE=aE;function xk(e){return e<0?(-e<<1)+1:(e<<1)+0}function Ik(e){var t=(e&1)===1,r=e>>1;return t?-r:r}Nf.encode=function(t){var r="",n,o=xk(t);do n=o&cE,o>>>=Df,o>0&&(n|=lE),r+=sE.encode(n);while(o>0);return r};Nf.decode=function(t,r,n){var o=t.length,i=0,s=0,a,c;do{if(r>=o)throw new Error("Expected more digits in base 64 VLQ value.");if(c=sE.decode(t.charCodeAt(r++)),c===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));a=!!(c&lE),c&=cE,i=i+(c<<s),s+=Df}while(a);n.value=Ik(i),n.rest=r}});var Di=q(it=>{function wk(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}it.getArg=wk;var AE=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,yk=/^data:.+\,.+$/;function Vs(e){var t=e.match(AE);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}it.urlParse=Vs;function ki(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}it.urlGenerate=ki;var bk=32;function Sk(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>bk&&t.pop(),i}}var Rf=Sk(function(t){var r=t,n=Vs(t);if(n){if(!n.path)return t;r=n.path}for(var o=it.isAbsolute(r),i=[],s=0,a=0;;)if(s=a,a=r.indexOf("/",s),a===-1){i.push(r.slice(s));break}else for(i.push(r.slice(s,a));a<r.length&&r[a]==="/";)a++;for(var c,l=0,a=i.length-1;a>=0;a--)c=i[a],c==="."?i.splice(a,1):c===".."?l++:l>0&&(c===""?(i.splice(a+1,l),l=0):(i.splice(a,2),l--));return r=i.join("/"),r===""&&(r=o?"/":"."),n?(n.path=r,ki(n)):r});it.normalize=Rf;function uE(e,t){e===""&&(e="."),t===""&&(t=".");var r=Vs(t),n=Vs(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),ki(r);if(r||t.match(yk))return t;if(n&&!n.host&&!n.path)return n.host=t,ki(n);var o=t.charAt(0)==="/"?t:Rf(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=o,ki(n)):o}it.join=uE;it.isAbsolute=function(e){return e.charAt(0)==="/"||AE.test(e)};function Bk(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)}it.relative=Bk;var fE=(function(){var e=Object.create(null);return!("__proto__"in e)})();function dE(e){return e}function Qk(e){return mE(e)?"$"+e:e}it.toSetString=fE?dE:Qk;function vk(e){return mE(e)?e.slice(1):e}it.fromSetString=fE?dE:vk;function mE(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 Mk(e,t,r){var n=mn(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:mn(e.name,t.name)}it.compareByOriginalPositions=Mk;function _k(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:mn(e.name,t.name)}it.compareByOriginalPositionsNoSource=_k;function Tk(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=mn(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:mn(e.name,t.name)}it.compareByGeneratedPositionsDeflated=Tk;function kk(e,t,r){var n=e.generatedColumn-t.generatedColumn;return n!==0||r||(n=mn(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:mn(e.name,t.name)}it.compareByGeneratedPositionsDeflatedNoLine=kk;function mn(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function Dk(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=mn(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:mn(e.name,t.name)}it.compareByGeneratedPositionsInflated=Dk;function Nk(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}it.parseSourceMapInput=Nk;function Lk(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=Vs(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=uE(ki(n),t)}return Rf(t)}it.computeSourceURL=Lk});var Of=q(pE=>{var Ff=Di(),Pf=Object.prototype.hasOwnProperty,bo=typeof Map<"u";function pn(){this._array=[],this._set=bo?new Map:Object.create(null)}pn.fromArray=function(t,r){for(var n=new pn,o=0,i=t.length;o<i;o++)n.add(t[o],r);return n};pn.prototype.size=function(){return bo?this._set.size:Object.getOwnPropertyNames(this._set).length};pn.prototype.add=function(t,r){var n=bo?t:Ff.toSetString(t),o=bo?this.has(t):Pf.call(this._set,n),i=this._array.length;(!o||r)&&this._array.push(t),o||(bo?this._set.set(t,i):this._set[n]=i)};pn.prototype.has=function(t){if(bo)return this._set.has(t);var r=Ff.toSetString(t);return Pf.call(this._set,r)};pn.prototype.indexOf=function(t){if(bo){var r=this._set.get(t);if(r>=0)return r}else{var n=Ff.toSetString(t);if(Pf.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};pn.prototype.at=function(t){if(t>=0&&t<this._array.length)return this._array[t];throw new Error("No element indexed by "+t)};pn.prototype.toArray=function(){return this._array.slice()};pE.ArraySet=pn});var CE=q(hE=>{var gE=Di();function Rk(e,t){var r=e.generatedLine,n=t.generatedLine,o=e.generatedColumn,i=t.generatedColumn;return n>r||n==r&&i>=o||gE.compareByGeneratedPositionsInflated(e,t)<=0}function Yc(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}Yc.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};Yc.prototype.add=function(t){Rk(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};Yc.prototype.toArray=function(){return this._sorted||(this._array.sort(gE.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};hE.MappingList=Yc});var Gf=q(EE=>{var Js=Lf(),Ue=Di(),Wc=Of().ArraySet,Fk=CE().MappingList;function Ar(e){e||(e={}),this._file=Ue.getArg(e,"file",null),this._sourceRoot=Ue.getArg(e,"sourceRoot",null),this._skipValidation=Ue.getArg(e,"skipValidation",!1),this._ignoreInvalidMapping=Ue.getArg(e,"ignoreInvalidMapping",!1),this._sources=new Wc,this._names=new Wc,this._mappings=new Fk,this._sourcesContents=null}Ar.prototype._version=3;Ar.fromSourceMap=function(t,r){var n=t.sourceRoot,o=new Ar(Object.assign(r||{},{file:t.file,sourceRoot:n}));return t.eachMapping(function(i){var s={generated:{line:i.generatedLine,column:i.generatedColumn}};i.source!=null&&(s.source=i.source,n!=null&&(s.source=Ue.relative(n,s.source)),s.original={line:i.originalLine,column:i.originalColumn},i.name!=null&&(s.name=i.name)),o.addMapping(s)}),t.sources.forEach(function(i){var s=i;n!==null&&(s=Ue.relative(n,i)),o._sources.has(s)||o._sources.add(s);var a=t.sourceContentFor(i);a!=null&&o.setSourceContent(i,a)}),o};Ar.prototype.addMapping=function(t){var r=Ue.getArg(t,"generated"),n=Ue.getArg(t,"original",null),o=Ue.getArg(t,"source",null),i=Ue.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}))};Ar.prototype.setSourceContent=function(t,r){var n=t;this._sourceRoot!=null&&(n=Ue.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Ue.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[Ue.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};Ar.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=Ue.relative(i,o));var s=new Wc,a=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=Ue.join(n,c.source)),i!=null&&(c.source=Ue.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&&!s.has(A)&&s.add(A);var u=c.name;u!=null&&!a.has(u)&&a.add(u)},this),this._sources=s,this._names=a,t.sources.forEach(function(c){var l=t.sourceContentFor(c);l!=null&&(n!=null&&(c=Ue.join(n,c)),i!=null&&(c=Ue.relative(i,c)),this.setSourceContent(c,l))},this)};Ar.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)}};Ar.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,o=0,i=0,s=0,a="",c,l,A,u,f=this._mappings.toArray(),d=0,g=f.length;d<g;d++){if(l=f[d],c="",l.generatedLine!==r)for(t=0;l.generatedLine!==r;)c+=";",r++;else if(d>0){if(!Ue.compareByGeneratedPositionsInflated(l,f[d-1]))continue;c+=","}c+=Js.encode(l.generatedColumn-t),t=l.generatedColumn,l.source!=null&&(u=this._sources.indexOf(l.source),c+=Js.encode(u-s),s=u,c+=Js.encode(l.originalLine-1-o),o=l.originalLine-1,c+=Js.encode(l.originalColumn-n),n=l.originalColumn,l.name!=null&&(A=this._names.indexOf(l.name),c+=Js.encode(A-i),i=A)),a+=c}return a};Ar.prototype._generateSourcesContent=function(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=Ue.relative(r,n));var o=Ue.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,o)?this._sourcesContents[o]:null},this)};Ar.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};Ar.prototype.toString=function(){return JSON.stringify(this.toJSON())};EE.SourceMapGenerator=Ar});var xE=q(So=>{So.GREATEST_LOWER_BOUND=1;So.LEAST_UPPER_BOUND=2;function Uf(e,t,r,n,o,i){var s=Math.floor((t-e)/2)+e,a=o(r,n[s],!0);return a===0?s:a>0?t-s>1?Uf(s,t,r,n,o,i):i==So.LEAST_UPPER_BOUND?t<n.length?t:-1:s:s-e>1?Uf(e,s,r,n,o,i):i==So.LEAST_UPPER_BOUND?s:e<0?-1:e}So.search=function(t,r,n,o){if(r.length===0)return-1;var i=Uf(-1,r.length,t,r,n,o||So.GREATEST_LOWER_BOUND);if(i<0)return-1;for(;i-1>=0&&n(r[i],r[i-1],!0)===0;)--i;return i}});var yE=q(wE=>{function Pk(e){function t(o,i,s){var a=o[i];o[i]=o[s],o[s]=a}function r(o,i){return Math.round(o+Math.random()*(i-o))}function n(o,i,s,a){if(s<a){var c=r(s,a),l=s-1;t(o,c,a);for(var A=o[a],u=s;u<a;u++)i(o[u],A,!1)<=0&&(l+=1,t(o,l,u));t(o,l+1,u);var f=l+1;n(o,i,s,f-1),n(o,i,f+1,a)}}return n}function Ok(e){let t=Pk.toString();return new Function(`return ${t}`)()(e)}var IE=new WeakMap;wE.quickSort=function(e,t,r=0){let n=IE.get(t);n===void 0&&(n=Ok(t),IE.set(t,n)),n(e,t,r,e.length-1)}});var BE=q(zc=>{var G=Di(),jf=xE(),Ni=Of().ArraySet,Gk=Lf(),Ys=yE().quickSort;function Se(e,t){var r=e;return typeof e=="string"&&(r=G.parseSourceMapInput(e)),r.sections!=null?new yr(r,t):new dt(r,t)}Se.fromSourceMap=function(e,t){return dt.fromSourceMap(e,t)};Se.prototype._version=3;Se.prototype.__generatedMappings=null;Object.defineProperty(Se.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});Se.prototype.__originalMappings=null;Object.defineProperty(Se.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});Se.prototype._charIsMappingSeparator=function(t,r){var n=t.charAt(r);return n===";"||n===","};Se.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};Se.GENERATED_ORDER=1;Se.ORIGINAL_ORDER=2;Se.GREATEST_LOWER_BOUND=1;Se.LEAST_UPPER_BOUND=2;Se.prototype.eachMapping=function(t,r,n){var o=r||null,i=n||Se.GENERATED_ORDER,s;switch(i){case Se.GENERATED_ORDER:s=this._generatedMappings;break;case Se.ORIGINAL_ORDER:s=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}for(var a=this.sourceRoot,c=t.bind(o),l=this._names,A=this._sources,u=this._sourceMapURL,f=0,d=s.length;f<d;f++){var g=s[f],E=g.source===null?null:A.at(g.source);E!==null&&(E=G.computeSourceURL(a,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)})}};Se.prototype.allGeneratedPositionsFor=function(t){var r=G.getArg(t,"line"),n={source:G.getArg(t,"source"),originalLine:r,originalColumn:G.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",G.compareByOriginalPositions,jf.LEAST_UPPER_BOUND);if(i>=0){var s=this._originalMappings[i];if(t.column===void 0)for(var a=s.originalLine;s&&s.originalLine===a;)o.push({line:G.getArg(s,"generatedLine",null),column:G.getArg(s,"generatedColumn",null),lastColumn:G.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++i];else for(var c=s.originalColumn;s&&s.originalLine===r&&s.originalColumn==c;)o.push({line:G.getArg(s,"generatedLine",null),column:G.getArg(s,"generatedColumn",null),lastColumn:G.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++i]}return o};zc.SourceMapConsumer=Se;function dt(e,t){var r=e;typeof e=="string"&&(r=G.parseSourceMapInput(e));var n=G.getArg(r,"version"),o=G.getArg(r,"sources"),i=G.getArg(r,"names",[]),s=G.getArg(r,"sourceRoot",null),a=G.getArg(r,"sourcesContent",null),c=G.getArg(r,"mappings"),l=G.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);s&&(s=G.normalize(s)),o=o.map(String).map(G.normalize).map(function(A){return s&&G.isAbsolute(s)&&G.isAbsolute(A)?G.relative(s,A):A}),this._names=Ni.fromArray(i.map(String),!0),this._sources=Ni.fromArray(o,!0),this._absoluteSources=this._sources.toArray().map(function(A){return G.computeSourceURL(s,A,t)}),this.sourceRoot=s,this.sourcesContent=a,this._mappings=c,this._sourceMapURL=t,this.file=l}dt.prototype=Object.create(Se.prototype);dt.prototype.consumer=Se;dt.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=G.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};dt.fromSourceMap=function(t,r){var n=Object.create(dt.prototype),o=n._names=Ni.fromArray(t._names.toArray(),!0),i=n._sources=Ni.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 G.computeSourceURL(n.sourceRoot,d,r)});for(var s=t._mappings.toArray().slice(),a=n.__generatedMappings=[],c=n.__originalMappings=[],l=0,A=s.length;l<A;l++){var u=s[l],f=new SE;f.generatedLine=u.generatedLine,f.generatedColumn=u.generatedColumn,u.source&&(f.source=i.indexOf(u.source),f.originalLine=u.originalLine,f.originalColumn=u.originalColumn,u.name&&(f.name=o.indexOf(u.name)),c.push(f)),a.push(f)}return Ys(n.__originalMappings,G.compareByOriginalPositions),n};dt.prototype._version=3;Object.defineProperty(dt.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function SE(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var Hf=G.compareByGeneratedPositionsDeflatedNoLine;function bE(e,t){let r=e.length,n=e.length-t;if(!(n<=1))if(n==2){let o=e[t],i=e[t+1];Hf(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 s=e[i-1],a=e[i];if(Hf(s,a)<=0)break;e[i-1]=a,e[i]=s}else Ys(e,Hf,t)}dt.prototype._parseMappings=function(t,r){var n=1,o=0,i=0,s=0,a=0,c=0,l=t.length,A=0,u={},f={},d=[],g=[],E,I,x,p,w;let y=0;for(;A<l;)if(t.charAt(A)===";")n++,A++,o=0,bE(g,y),y=g.length;else if(t.charAt(A)===",")A++;else{for(E=new SE,E.generatedLine=n,p=A;p<l&&!this._charIsMappingSeparator(t,p);p++);for(I=t.slice(A,p),x=[];A<p;)Gk.decode(t,A,f),w=f.value,A=f.rest,x.push(w);if(x.length===2)throw new Error("Found a source, but no line and column");if(x.length===3)throw new Error("Found a source and line, but no column");if(E.generatedColumn=o+x[0],o=E.generatedColumn,x.length>1&&(E.source=a+x[1],a+=x[1],E.originalLine=i+x[2],i=E.originalLine,E.originalLine+=1,E.originalColumn=s+x[3],s=E.originalColumn,x.length>4&&(E.name=c+x[4],c+=x[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)}}bE(g,y),this.__generatedMappings=g;for(var S=0;S<d.length;S++)d[S]!=null&&Ys(d[S],G.compareByOriginalPositionsNoSource);this.__originalMappings=[].concat(...d)};dt.prototype._findMapping=function(t,r,n,o,i,s){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 jf.search(t,r,i,s)};dt.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}};dt.prototype.originalPositionFor=function(t){var r={generatedLine:G.getArg(t,"line"),generatedColumn:G.getArg(t,"column")},n=this._findMapping(r,this._generatedMappings,"generatedLine","generatedColumn",G.compareByGeneratedPositionsDeflated,G.getArg(t,"bias",Se.GREATEST_LOWER_BOUND));if(n>=0){var o=this._generatedMappings[n];if(o.generatedLine===r.generatedLine){var i=G.getArg(o,"source",null);i!==null&&(i=this._sources.at(i),i=G.computeSourceURL(this.sourceRoot,i,this._sourceMapURL));var s=G.getArg(o,"name",null);return s!==null&&(s=this._names.at(s)),{source:i,line:G.getArg(o,"originalLine",null),column:G.getArg(o,"originalColumn",null),name:s}}}return{source:null,line:null,column:null,name:null}};dt.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};dt.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=G.relative(this.sourceRoot,o));var i;if(this.sourceRoot!=null&&(i=G.urlParse(this.sourceRoot))){var s=o.replace(/^file:\/\//,"");if(i.scheme=="file"&&this._sources.has(s))return this.sourcesContent[this._sources.indexOf(s)];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.')};dt.prototype.generatedPositionFor=function(t){var r=G.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:G.getArg(t,"line"),originalColumn:G.getArg(t,"column")},o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",G.compareByOriginalPositions,G.getArg(t,"bias",Se.GREATEST_LOWER_BOUND));if(o>=0){var i=this._originalMappings[o];if(i.source===n.source)return{line:G.getArg(i,"generatedLine",null),column:G.getArg(i,"generatedColumn",null),lastColumn:G.getArg(i,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};zc.BasicSourceMapConsumer=dt;function yr(e,t){var r=e;typeof e=="string"&&(r=G.parseSourceMapInput(e));var n=G.getArg(r,"version"),o=G.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new Ni,this._names=new Ni;var i={line:-1,column:0};this._sections=o.map(function(s){if(s.url)throw new Error("Support for url field in sections not implemented.");var a=G.getArg(s,"offset"),c=G.getArg(a,"line"),l=G.getArg(a,"column");if(c<i.line||c===i.line&&l<i.column)throw new Error("Section offsets must be ordered and non-overlapping.");return i=a,{generatedOffset:{generatedLine:c+1,generatedColumn:l+1},consumer:new Se(G.getArg(s,"map"),t)}})}yr.prototype=Object.create(Se.prototype);yr.prototype.constructor=Se;yr.prototype._version=3;Object.defineProperty(yr.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}});yr.prototype.originalPositionFor=function(t){var r={generatedLine:G.getArg(t,"line"),generatedColumn:G.getArg(t,"column")},n=jf.search(r,this._sections,function(i,s){var a=i.generatedLine-s.generatedOffset.generatedLine;return a||i.generatedColumn-s.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}};yr.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(t){return t.consumer.hasContentsOfAllSources()})};yr.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.')};yr.prototype.generatedPositionFor=function(t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r];if(n.consumer._findSourceIndex(G.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}};yr.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,s=0;s<i.length;s++){var a=i[s],c=o.consumer._sources.at(a.source);c!==null&&(c=G.computeSourceURL(o.consumer.sourceRoot,c,this._sourceMapURL)),this._sources.add(c),c=this._sources.indexOf(c);var l=null;a.name&&(l=o.consumer._names.at(a.name),this._names.add(l),l=this._names.indexOf(l));var A={source:c,generatedLine:a.generatedLine+(o.generatedOffset.generatedLine-1),generatedColumn:a.generatedColumn+(o.generatedOffset.generatedLine===a.generatedLine?o.generatedOffset.generatedColumn-1:0),originalLine:a.originalLine,originalColumn:a.originalColumn,name:l};this.__generatedMappings.push(A),typeof A.originalLine=="number"&&this.__originalMappings.push(A)}Ys(this.__generatedMappings,G.compareByGeneratedPositionsDeflated),Ys(this.__originalMappings,G.compareByOriginalPositions)};zc.IndexedSourceMapConsumer=yr});var vE=q(QE=>{var Uk=Gf().SourceMapGenerator,$c=Di(),Hk=/(\r?\n)/,jk=10,Li="$$$isSourceNode$$$";function zt(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[Li]=!0,n!=null&&this.add(n)}zt.fromStringWithSourceMap=function(t,r,n){var o=new zt,i=t.split(Hk),s=0,a=function(){var f=g(),d=g()||"";return f+d;function g(){return s<i.length?i[s++]:void 0}},c=1,l=0,A=null;return r.eachMapping(function(f){if(A!==null)if(c<f.generatedLine)u(A,a()),c++,l=0;else{var d=i[s]||"",g=d.substr(0,f.generatedColumn-l);i[s]=d.substr(f.generatedColumn-l),l=f.generatedColumn,u(A,g),A=f;return}for(;c<f.generatedLine;)o.add(a()),c++;if(l<f.generatedColumn){var d=i[s]||"";o.add(d.substr(0,f.generatedColumn)),i[s]=d.substr(f.generatedColumn),l=f.generatedColumn}A=f},this),s<i.length&&(A&&u(A,a()),o.add(i.splice(s).join(""))),r.sources.forEach(function(f){var d=r.sourceContentFor(f);d!=null&&(n!=null&&(f=$c.join(n,f)),o.setSourceContent(f,d))}),o;function u(f,d){if(f===null||f.source===void 0)o.add(d);else{var g=n?$c.join(n,f.source):f.source;o.add(new zt(f.originalLine,f.originalColumn,g,d,f.name))}}};zt.prototype.add=function(t){if(Array.isArray(t))t.forEach(function(r){this.add(r)},this);else if(t[Li]||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};zt.prototype.prepend=function(t){if(Array.isArray(t))for(var r=t.length-1;r>=0;r--)this.prepend(t[r]);else if(t[Li]||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};zt.prototype.walk=function(t){for(var r,n=0,o=this.children.length;n<o;n++)r=this.children[n],r[Li]?r.walk(t):r!==""&&t(r,{source:this.source,line:this.line,column:this.column,name:this.name})};zt.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};zt.prototype.replaceRight=function(t,r){var n=this.children[this.children.length-1];return n[Li]?n.replaceRight(t,r):typeof n=="string"?this.children[this.children.length-1]=n.replace(t,r):this.children.push("".replace(t,r)),this};zt.prototype.setSourceContent=function(t,r){this.sourceContents[$c.toSetString(t)]=r};zt.prototype.walkSourceContents=function(t){for(var r=0,n=this.children.length;r<n;r++)this.children[r][Li]&&this.children[r].walkSourceContents(t);for(var o=Object.keys(this.sourceContents),r=0,n=o.length;r<n;r++)t($c.fromSetString(o[r]),this.sourceContents[o[r]])};zt.prototype.toString=function(){var t="";return this.walk(function(r){t+=r}),t};zt.prototype.toStringWithSourceMap=function(t){var r={code:"",line:1,column:0},n=new Uk(t),o=!1,i=null,s=null,a=null,c=null;return this.walk(function(l,A){r.code+=l,A.source!==null&&A.line!==null&&A.column!==null?((i!==A.source||s!==A.line||a!==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,s=A.line,a=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,f=l.length;u<f;u++)l.charCodeAt(u)===jk?(r.line++,r.column=0,u+1===f?(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}};QE.SourceNode=zt});var ME=q(Kc=>{Kc.SourceMapGenerator=Gf().SourceMapGenerator;Kc.SourceMapConsumer=BE().SourceMapConsumer;Kc.SourceNode=vE().SourceNode});var _E,Xc,qf=h(()=>{"use client";$();_E=m(U(),1),Xc=(0,F.createSvgIcon)((0,_E.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 el(e){let{children:t,...r}=e;return(0,Zc.jsxs)(TE.Link,{...r,target:"_blank",rel:"noopener noreferrer",children:[t," ",(0,Zc.jsx)(Xc,{fontSize:"small"})]})}var Zc,TE,kE=h(()=>{Zc=m(U(),1);qf();TE=m(O(),1)});function Vf({text:e,extra:t}){let{classes:r}=qk(),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
|
-
`),s=`https://github.com/GMOD/jbrowse-components/issues/new?labels=bug&title=JBrowse+issue&body=${i}`,a=`mailto:${
|
|
8
|
+
`),s=`https://github.com/GMOD/jbrowse-components/issues/new?labels=bug&title=JBrowse+issue&body=${i}`,a=`mailto:${DE}?subject=JBrowse%202%20error&body=${i}`;return(0,gn.jsxs)(gn.Fragment,{children:[(0,gn.jsxs)(tl.Typography,{children:["Post a new issue at"," ",(0,gn.jsx)(el,{href:s,children:"GitHub"})," or send an email to ",(0,gn.jsx)(el,{href:a,children:DE})]}),(0,gn.jsx)("pre",{className:r.pre,children:o})]})}var gn,tl,DE,qk,NE=h(()=>{gn=m(U(),1),tl=m(O(),1);kE();Dt();DE="jbrowse2@berkeley.edu",qk=ae()(e=>({pre:{background:(0,tl.alpha)(e.palette.error.main,.2),border:`1px solid ${e.palette.divider}`,overflow:"auto",margin:20,maxHeight:300}}))});function Jf({message:e,children:t,variant:r="body2",...n}){let{classes:o}=Vk();return(0,LE.jsx)(RE.Typography,{className:Jc(o.dots,n.className),...n,variant:r,children:e||"Loading"})}var LE,RE,Vk,FE=h(()=>{LE=m(U(),1),RE=m(O(),1);Dt();Vk=ae()({dots:{"&::after":{display:"inline-block",content:'""',width:"1em",textAlign:"left",animation:`${Bf`
|
|
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
|
|
22
|
-
`)){let n=
|
|
23
|
-
`)}function
|
|
24
|
-
`);return(0,zt.jsxs)(Rt.Dialog,{open:!0,onClose:t,maxWidth:"xl",children:[(0,zt.jsxs)(Rt.DialogTitle,{children:["Stack trace",(0,zt.jsx)(Rt.IconButton,{onClick:t,sx:{position:"absolute",right:8,top:8},children:(0,zt.jsx)(ba,{})})]}),(0,zt.jsx)(Rt.DialogContent,{children:n===void 0?(0,zt.jsx)(Su,{variant:"h6"}):(0,zt.jsx)(Bu,{text:d,extra:r})}),(0,zt.jsxs)(Rt.DialogActions,{children:[(0,zt.jsx)(Rt.Button,{variant:"contained",color:"secondary",onClick:async()=>{let{default:m}=await Promise.resolve().then(()=>f(q0(),1));m(d),c(!0),setTimeout(()=>{c(!1)},1e3)},children:a?"Copied!":"Copy stack trace to clipboard"}),(0,zt.jsx)(Rt.Button,{variant:"contained",color:"primary",onClick:t,children:"Close"})]})]})}var zt,ti,Rt,V0,Qu,Qv,Mv,J0,$0=g(()=>{zt=f(R(),1),ti=f(Q(),1);PA();Rt=f(k(),1),V0=f(_0(),1);R0();O0();Qu={},Qv=/\/\/# sourceMappingURL=(.*)/,Mv=/(.*)((?:https?|file):\/\/.*):(\d+):(\d+)/;J0=1e4});function Nv(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 s=/.*snapshot `(.*)` is not assignable/.exec(o);s&&(e="Failed to load element...Failed element had snapshot",t=s[1])}return t}function Lv({error:e,onReset:t}){let{classes:r}=K0(),[n,o]=(0,ni.useState)(!1);return(0,_t.jsxs)("div",{className:r.iconFloat,children:[typeof e=="object"&&e&&"stack"in e?(0,_t.jsx)(ri.Tooltip,{title:"Get stack trace",children:(0,_t.jsx)(ri.IconButton,{onClick:()=>{o(!0)},color:"primary",children:(0,_t.jsx)(Hg,{})})}):null,t?(0,_t.jsx)(ri.Tooltip,{title:"Retry",children:(0,_t.jsx)(ri.IconButton,{onClick:t,color:"primary",children:(0,_t.jsx)(Og,{})})}):null,n?(0,_t.jsx)(ni.Suspense,{fallback:null,children:(0,_t.jsx)(kv,{error:e,onClose:()=>{o(!1)}})}):null]})}function Rv({error:e,onReset:t}){let{classes:r}=K0(),n=`${e}`,o=n.indexOf("expected an instance of"),i=o!==-1?n.slice(0,o):n,s=Nv(n);return(0,_t.jsxs)(uu,{children:[i.slice(0,1e4),(0,_t.jsx)(Lv,{error:e,onReset:t}),s?(0,_t.jsx)("pre",{className:r.bg,children:JSON.stringify(JSON.parse(s),null,2)}):null]})}var _t,ni,ri,kv,K0,X0,Z0=g(()=>{_t=f(R(),1),ni=f(Q(),1);Gg();jg();ri=f(k(),1);i0();xt();kv=(0,ni.lazy)(()=>Promise.resolve().then(()=>($0(),z0))),K0=te()(e=>({bg:{background:e.palette.divider,border:"1px solid black",margin:20},iconFloat:{float:"right",marginLeft:100}}));X0=Rv});var tC=j((eP,eC)=>{"use strict";var Fv=/["'&<>]/;eC.exports=Pv;function Pv(e){var t=""+e,r=Fv.exec(t);if(!r)return t;var n,o="",i=0,s=0;for(i=r.index;i<t.length;i++){switch(t.charCodeAt(i)){case 34:n=""";break;case 38:n="&";break;case 39:n="'";break;case 60:n="<";break;case 62:n=">";break;default:continue}s!==i&&(o+=t.substring(s,i)),s=i+1,o+=n}return s!==i?o+t.substring(s,i):o}});var rC=g(()=>{});var nC=g(()=>{rC()});function Ov(e){try{let s=se.__wbindgen_add_to_stack_pointer(-16),a=lC(e,se.__wbindgen_export2),c=Tu;se.decompress_all(s,a,c);var t=Ft().getInt32(s+0,!0),r=Ft().getInt32(s+4,!0),n=Ft().getInt32(s+8,!0),o=Ft().getInt32(s+12,!0);if(o)throw AC(n);var i=aC(t,r).slice();return se.__wbindgen_export(t,r*1,1),i}finally{se.__wbindgen_add_to_stack_pointer(16)}}function Gv(e,t,r,n,o){try{let c=se.__wbindgen_add_to_stack_pointer(-16),l=lC(e,se.__wbindgen_export2),A=Tu;se.decompress_chunk_slice(c,l,A,t,r,n,o);var i=Ft().getInt32(c+0,!0),s=Ft().getInt32(c+4,!0),a=Ft().getInt32(c+8,!0);if(a)throw AC(s);return ii.__wrap(i)}finally{se.__wbindgen_add_to_stack_pointer(16)}}function Uv(e,t){let r=Error(cC(e,t));return jv(r)}function Hv(e,t){throw new Error(cC(e,t))}function jv(e){us===Zr.length&&Zr.push(Zr.length+1);let t=us;return us=Zr[t],Zr[t]=e,t}function qv(e){e<1028||(Zr[e]=us,us=e)}function iC(e,t){return e=e>>>0,Jv().subarray(e/8,e/8+t)}function aC(e,t){return e=e>>>0,vu().subarray(e/1,e/1+t)}function Ft(){return(oi===null||oi.buffer.detached===!0||oi.buffer.detached===void 0&&oi.buffer!==se.memory.buffer)&&(oi=new DataView(se.memory.buffer)),oi}function Jv(){return(ic===null||ic.byteLength===0)&&(ic=new Float64Array(se.memory.buffer)),ic}function cC(e,t){return Wv(e>>>0,t)}function vu(){return(sc===null||sc.byteLength===0)&&(sc=new Uint8Array(se.memory.buffer)),sc}function Vv(e){return Zr[e]}function lC(e,t){let r=t(e.length*1,1)>>>0;return vu().set(e,r/1),Tu=e.length,r}function AC(e){let t=Vv(e);return qv(e),t}function Wv(e,t){return Mu+=t,Mu>=Yv&&(ac=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}),ac.decode(),Mu=t),ac.decode(vu().subarray(e,e+t))}function zv(e){se=e}var no,sC,ii,oC,oi,ic,sc,Zr,us,ac,Yv,Mu,Tu,se,uC=g(()=>{no={};no.d=(e,t)=>{for(var r in t)no.o(t,r)&&!no.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})};no.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);no.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};sC={};no.r(sC);no.d(sC,{ChunkSliceResult:()=>ii,__wbg_Error_ef53bc310eb298a0:()=>Uv,__wbg___wbindgen_throw_1506f2235d1bdba0:()=>Hv,__wbg_set_wasm:()=>zv,decompress_all:()=>Ov,decompress_chunk_slice:()=>Gv});ii=class e{static __wrap(t){let r=Object.create(e.prototype);return r.__wbg_ptr=t,oC.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let t=this.__wbg_ptr;return this.__wbg_ptr=0,oC.unregister(this),t}free(){let t=this.__destroy_into_raw();se.__wbg_chunksliceresult_free(t,0)}take_buffer(){try{let o=se.__wbindgen_add_to_stack_pointer(-16);se.chunksliceresult_take_buffer(o,this.__wbg_ptr);var t=Ft().getInt32(o+0,!0),r=Ft().getInt32(o+4,!0),n=aC(t,r).slice();return se.__wbindgen_export(t,r*1,1),n}finally{se.__wbindgen_add_to_stack_pointer(16)}}take_cpositions(){try{let o=se.__wbindgen_add_to_stack_pointer(-16);se.chunksliceresult_take_cpositions(o,this.__wbg_ptr);var t=Ft().getInt32(o+0,!0),r=Ft().getInt32(o+4,!0),n=iC(t,r).slice();return se.__wbindgen_export(t,r*8,8),n}finally{se.__wbindgen_add_to_stack_pointer(16)}}take_dpositions(){try{let o=se.__wbindgen_add_to_stack_pointer(-16);se.chunksliceresult_take_dpositions(o,this.__wbg_ptr);var t=Ft().getInt32(o+0,!0),r=Ft().getInt32(o+4,!0),n=iC(t,r).slice();return se.__wbindgen_export(t,r*8,8),n}finally{se.__wbindgen_add_to_stack_pointer(16)}}};Symbol.dispose&&(ii.prototype[Symbol.dispose]=ii.prototype.free);oC=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>se.__wbg_chunksliceresult_free(e,1));oi=null;ic=null;sc=null;Zr=new Array(1024).fill(void 0);Zr.push(void 0,null,!0,!1);us=Zr.length;ac=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});ac.decode();Yv=2146435072,Mu=0;Tu=0});var _u=g(()=>{uC()});var fC=g(()=>{});var mC=g(()=>{nC();_u();fC()});var pC=g(()=>{mC();_u()});var hC=j((yP,gC)=>{gC.exports=JBrowseExports["react-dom"]});var EC=j((wP,CC)=>{CC.exports=JBrowseExports["react-dom/client"]});function IC(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 Du=g(()=>{});var xC=g(()=>{});var yC=g(()=>{});var wC=g(()=>{});function cc(e){return typeof e=="object"&&e!==null&&"uri"in e&&!!e.uri}var $v,ku=g(()=>{$v=f(kt(),1);wC()});var Kv,bC=g(()=>{Kv=f(Ar(),1)});var BC=g(()=>{});var SC=g(()=>{});var si,lc,Nu,Lu,Xv,fs,Ac,QC=g(()=>{si={METHOD:"method",PROPERTY:"property"},lc=class{constructor(t,r){this.inst=t,this.args=r}},Nu=class extends lc{constructor(t,r){super(t,r),this.type=si.METHOD}execute(t){t[this.inst](...this.args)}},Lu=class extends lc{constructor(t,r){super(t,r),this.type=si.PROPERTY}execute(t){t[this.inst]=this.args[0]}},Xv={[si.METHOD]:Nu,[si.PROPERTY]:Lu},fs=class{constructor(t,r,n){return new Xv[t](r,n)}};fs.METHOD=si.METHOD;fs.PROPERTY=si.PROPERTY;Ac=fs});var MC,_r,uc,Ru=g(()=>{QC();MC=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"]}),_r=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push"),fromJSON:Symbol.for("fromJSON")}),uc=class{constructor(t=null){this[_r.sequence]=[],t&&this[_r.fromJSON](t)}[_r.fromJSON](t={sequence:[]}){t.sequence.forEach(({type:r,inst:n,args:o})=>{this[_r.push](r,n,o)})}[_r.push](t,r,n){this[_r.sequence].push(new Ac(t,r,n))}execute(t){t.save(),this[_r.sequence].forEach(r=>r.execute(t)),t.restore()}toJSON(){return{sequence:this[_r.sequence]}}};MC.METHODS.forEach(e=>{Object.defineProperty(uc.prototype,e,{value:function(...r){this[_r.push](Ac.METHOD,e,r)},writable:!1,enumerable:!0,configurable:!1})});MC.PROPERTIES.forEach(e=>{Object.defineProperty(uc.prototype,e,{get(){throw`Invalid canvas sequencer interaction, cannot get ${e}.`},set(t){this[_r.push](Ac.PROPERTY,e,[t])},enumerable:!0,configurable:!1})})});var RP,TC=g(()=>{Ru();RP=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push")})});var _C=g(()=>{TC();Ru()});var kC=j((HP,DC)=>{DC.exports=!1});var Zv,NC=g(()=>{_C();Zv=f(kC(),1)});var eT,tT,LC=g(()=>{eT=f(R(),1),tT=f(Q(),1)});var RC=g(()=>{});var YP,WP,zP,$P,FC=g(()=>{YP=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]),WP=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]),zP=new Uint8Array([1,2,4,8,16,32,64,128,27,54]),$P=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 ds(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Fu(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function Pu(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 ai(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,i=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(a){s={error:a}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return i}function ci(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 Fu,ms=g(()=>{Fu=function(e,t){return Fu=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])},Fu(e,t)}});function Dr(e){return typeof e=="function"}var fc=g(()=>{});function dc(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 Ou=g(()=>{});var mc,PC=g(()=>{Ou();mc=dc(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription:
|
|
21
|
+
`} 1.2s infinite ease-in-out`}}})});var OE=q((e6,PE)=>{PE.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 HE=q((t6,UE)=>{"use strict";var Jk=OE(),GE={"text/plain":"Text","text/html":"Url",default:"Text"},Yk="Copy to clipboard: #{key}, Enter";function Wk(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}function zk(e,t){var r,n,o,i,s,a,c=!1;t||(t={}),r=t.debug||!1;try{o=Jk(),i=document.createRange(),s=document.getSelection(),a=document.createElement("span"),a.textContent=e,a.ariaHidden="true",a.style.all="unset",a.style.position="fixed",a.style.top=0,a.style.clip="rect(0, 0, 0, 0)",a.style.whiteSpace="pre",a.style.webkitUserSelect="text",a.style.MozUserSelect="text",a.style.msUserSelect="text",a.style.userSelect="text",a.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=GE[t.format]||GE.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(a),i.selectNodeContents(a),s.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=Wk("message"in t?t.message:Yk),window.prompt(n,e)}}finally{s&&(typeof s.removeRange=="function"?s.removeRange(i):s.removeAllRanges()),a&&document.body.removeChild(a),o()}return c}UE.exports=zk});var YE={};rt(YE,{default:()=>JE});async function VE(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 $k(e){return JSON.parse(await VE(e))}async function Zk(e){if(Yf[e])return Yf[e];let t=new URL(e).search,r=await VE(e),n=Kk.exec(r)?.[1]??"",o=await $k(new URL(n,e).href+t),i=new qE.SourceMapConsumer(o);return Yf[e]=i,i}async function eD(e){let t=[];for(let r of e.split(`
|
|
22
|
+
`)){let n=Xk.exec(r);if(!n){t.push(r);continue}let o=n[2],s=(await Zk(o)).originalPositionFor({line:+n[3],column:+n[4]});if(!s.source||!s.line||!s.column){t.push(r);continue}t.push(`${s.source}:${s.line}:${s.column+1} (${n[1].trim()})`)}return t.join(`
|
|
23
|
+
`)}function tD(e,t){return e.startsWith("Error:")?e.slice(`${t}`.length):e}function rD(e){return typeof e=="object"&&e!==null&&"stack"in e?`${e.stack}`:""}function JE({error:e,onClose:t,extra:r}){let[n,o]=(0,Ri.useState)(),[i,s]=(0,Ri.useState)(),[a,c]=(0,Ri.useState)(!1),l=e?`${e}`:"",A=tD(rD(e),l);(0,Ri.useEffect)(()=>{(async()=>{try{o(await eD(A))}catch(d){console.error(d),o(A),s(d)}})()},[A]);let u=window.JBrowseSession?.version,f=[i?"Error loading source map, showing raw stack trace below:":"",l.length>jE?`${l.slice(0,jE)}...`:l,n||"No stack trace available",u?`JBrowse ${u}`:""].filter(Boolean).join(`
|
|
24
|
+
`);return(0,ur.jsxs)($t.Dialog,{open:!0,onClose:t,maxWidth:"xl",children:[(0,ur.jsxs)($t.DialogTitle,{children:["Stack trace",(0,ur.jsx)($t.IconButton,{onClick:t,sx:{position:"absolute",right:8,top:8},children:(0,ur.jsx)(Ic,{})})]}),(0,ur.jsx)($t.DialogContent,{children:n===void 0?(0,ur.jsx)(Jf,{variant:"h6"}):(0,ur.jsx)(Vf,{text:f,extra:r})}),(0,ur.jsxs)($t.DialogActions,{children:[(0,ur.jsx)($t.Button,{variant:"contained",color:"secondary",onClick:async()=>{let{default:d}=await Promise.resolve().then(()=>m(HE(),1));d(f),c(!0),setTimeout(()=>{c(!1)},1e3)},children:a?"Copied!":"Copy stack trace to clipboard"}),(0,ur.jsx)($t.Button,{variant:"contained",color:"primary",onClick:t,children:"Close"})]})]})}var ur,Ri,$t,qE,Yf,Kk,Xk,jE,WE=h(()=>{ur=m(U(),1),Ri=m(_(),1);nf();$t=m(O(),1),qE=m(ME(),1);NE();FE();Yf={},Kk=/\/\/# sourceMappingURL=(.*)/,Xk=/(.*)((?:https?|file):\/\/.*):(\d+):(\d+)/;jE=1e4});function oD(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 s=/.*snapshot `(.*)` is not assignable/.exec(o);s&&(e="Failed to load element...Failed element had snapshot",t=s[1])}return t}function iD({error:e,onReset:t}){let{classes:r}=zE(),[n,o]=(0,Pi.useState)(!1);return(0,Ht.jsxs)("div",{className:r.iconFloat,children:[typeof e=="object"&&e&&"stack"in e?(0,Ht.jsx)(Fi.Tooltip,{title:"Get stack trace",children:(0,Ht.jsx)(Fi.IconButton,{onClick:()=>{o(!0)},color:"primary",children:(0,Ht.jsx)(G0,{})})}):null,t?(0,Ht.jsx)(Fi.Tooltip,{title:"Retry",children:(0,Ht.jsx)(Fi.IconButton,{onClick:t,color:"primary",children:(0,Ht.jsx)(F0,{})})}):null,n?(0,Ht.jsx)(Pi.Suspense,{fallback:null,children:(0,Ht.jsx)(nD,{error:e,onClose:()=>{o(!1)}})}):null]})}function sD({error:e,onReset:t}){let{classes:r}=zE(),n=`${e}`,o=n.indexOf("expected an instance of"),i=o!==-1?n.slice(0,o):n,s=oD(n);return(0,Ht.jsxs)(Tf,{children:[i.slice(0,1e4),(0,Ht.jsx)(iD,{error:e,onReset:t}),s?(0,Ht.jsx)("pre",{className:r.bg,children:JSON.stringify(JSON.parse(s),null,2)}):null]})}var Ht,Pi,Fi,nD,zE,$E,KE=h(()=>{Ht=m(U(),1),Pi=m(_(),1);P0();U0();Fi=m(O(),1);nE();Dt();nD=(0,Pi.lazy)(()=>Promise.resolve().then(()=>(WE(),YE))),zE=ae()(e=>({bg:{background:e.palette.divider,border:"1px solid black",margin:20},iconFloat:{float:"right",marginLeft:100}}));$E=sD});var ZE=q((A6,XE)=>{"use strict";var aD=/["'&<>]/;XE.exports=cD;function cD(e){var t=""+e,r=aD.exec(t);if(!r)return t;var n,o="",i=0,s=0;for(i=r.index;i<t.length;i++){switch(t.charCodeAt(i)){case 34:n=""";break;case 38:n="&";break;case 39:n="'";break;case 60:n="<";break;case 62:n=">";break;default:continue}s!==i&&(o+=t.substring(s,i)),s=i+1,o+=n}return s!==i?o+t.substring(s,i):o}});var ex=h(()=>{});var tx=h(()=>{ex()});var Wf,zf,Ws,On,zs,rx,nx,$f=h(()=>{Wf=0,zf=2,Ws=4,On=0,zs=1,rx=2,nx=-5});function lD(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function ox(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)lD(r,n)&&(e[n]=r[n])}}return e}function nl(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)}var $s,Ks,Oi,qr,rl,hn,Gn,Bo,Xs=h(()=>{$s={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,s;for(n=0,t=0,r=e.length;t<r;t++)n+=e[t].length;for(s=new Uint8Array(n),o=0,t=0,r=e.length;t<r;t++)i=e[t],s.set(i,o),o+=i.length;return s},Buf8:function(e){return new Uint8Array(e)},Buf16:function(e){return new Uint16Array(e)},Buf32:function(e){return new Int32Array(e)}},Ks={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)}},Oi=()=>{let e=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";return Oi=()=>e,e},qr=(e,t,r,n,o)=>(qr=Oi()?$s.arraySet:Ks.arraySet,qr(e,t,r,n,o)),rl=e=>(rl=Oi()?$s.flattenChunks:Ks.flattenChunks,rl(e)),hn=e=>(hn=Oi()?$s.Buf8:Ks.Buf8,hn(e)),Gn=e=>(Gn=Oi()?$s.Buf16:Ks.Buf16,Gn(e)),Bo=e=>(Bo=Oi()?$s.Buf32:Ks.Buf32,Bo(e))});function Xf(e){var t,r,n,o,i,s=e.length,a=0;for(o=0;o<s;o++)r=e.charCodeAt(o),(r&64512)===55296&&o+1<s&&(n=e.charCodeAt(o+1),(n&64512)===56320&&(r=65536+(r-55296<<10)+(n-56320),o++)),a+=r<128?1:r<2048?2:r<65536?3:4;for(t=new Uint8Array(a),i=0,o=0;i<a;o++)r=e.charCodeAt(o),(r&64512)===55296&&o+1<s&&(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 AD(e,t){if(t<65534&&(e.subarray&&sx()||!e.subarray&&ix()))return String.fromCharCode.apply(null,nl(e,t));for(var r="",n=0;n<t;n++)r+=String.fromCharCode(e[n]);return r}function ax(e){for(var t=new Uint8Array(e.length),r=0,n=t.length;r<n;r++)t[r]=e.charCodeAt(r);return t}function cx(e,t){var r,n,o,i,s=t||e.length,a=new Array(s*2);for(n=0,r=0;r<s;){if(o=e[r++],o<128){a[n++]=o;continue}if(i=Kf(o),i>4){a[n++]=65533,r+=i-1;continue}for(o&=i===2?31:i===3?15:7;i>1&&r<s;)o=o<<6|e[r++]&63,i--;if(i>1){a[n++]=65533;continue}o<65536?a[n++]=o:(o-=65536,a[n++]=55296|o>>10&1023,a[n++]=56320|o&1023)}return AD(a,n)}function lx(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+Kf(e[r])>t?r:t}var ix,sx,Kf,Ax=h(()=>{Xs();ix=function(){let e=!0;try{String.fromCharCode.apply(null,[0])}catch{e=!1}return ix=()=>e,e},sx=function(){let e=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{e=!1}return sx=()=>e,e},Kf=function(e){for(var t=hn(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,Kf=n=>t[n],t[e]}});function Zf(){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 ux=h(()=>{});function Zs(e,t,r,n){for(var o=e&65535|0,i=e>>>16&65535|0,s=0;r!==0;){s=r>2e3?2e3:r,r-=s;do o=o+t[n++]|0,i=i+o|0;while(--s);o%=65521,i%=65521}return o|i<<16|0}var fx=h(()=>{});function uD(){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 fr(e,t,r,n){var o=dx(),i=n+r;e^=-1;for(var s=n;s<i;s++)e=e>>>8^o[(e^t[s])&255];return e^-1}var dx,mx=h(()=>{dx=function(){let e=uD();return dx=()=>e,e}});function ed(e,t){var r,n,o,i,s,a,c,l,A,u,f,d,g,E,I,x,p,w,y,S,Q,b,k,T,v;r=e.state,n=e.next_in,T=e.input,o=n+(e.avail_in-5),i=e.next_out,v=e.output,s=i-(t-e.avail_out),a=i+(e.avail_out-257),c=r.dmax,l=r.wsize,A=r.whave,u=r.wnext,f=r.window,d=r.hold,g=r.bits,E=r.lencode,I=r.distcode,x=(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&x];t:for(;;){if(y=w>>>24,d>>>=y,g-=y,y=w>>>16&255,y===0)v[i++]=w&65535;else if(y&16){S=w&65535,y&=15,y&&(g<y&&(d+=T[n++]<<g,g+=8),S+=d&(1<<y)-1,d>>>=y,g-=y),g<15&&(d+=T[n++]<<g,g+=8,d+=T[n++]<<g,g+=8),w=I[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=ol;break e}if(d>>>=y,g-=y,y=i-s,Q>y){if(y=Q-y,y>A&&r.sane){e.msg="invalid distance too far back",r.mode=ol;break e}if(b=0,k=f,u===0){if(b+=l-y,y<S){S-=y;do v[i++]=f[b++];while(--y);b=i-Q,k=v}}else if(u<y){if(b+=l+u-y,y-=u,y<S){S-=y;do v[i++]=f[b++];while(--y);if(b=0,u<S){y=u,S-=y;do v[i++]=f[b++];while(--y);b=i-Q,k=v}}}else if(b+=u-y,y<S){S-=y;do v[i++]=f[b++];while(--y);b=i-Q,k=v}for(;S>2;)v[i++]=k[b++],v[i++]=k[b++],v[i++]=k[b++],S-=3;S&&(v[i++]=k[b++],S>1&&(v[i++]=k[b++]))}else{b=i-Q;do v[i++]=v[b++],v[i++]=v[b++],v[i++]=v[b++],S-=3;while(S>2);S&&(v[i++]=v[b++],S>1&&(v[i++]=v[b++]))}}else if((y&64)===0){w=I[(w&65535)+(d&(1<<y)-1)];continue r}else{e.msg="invalid distance code",r.mode=ol;break e}break}}else if((y&64)===0){w=E[(w&65535)+(d&(1<<y)-1)];continue t}else if(y&32){r.mode=fD;break e}else{e.msg="invalid literal/length code",r.mode=ol;break e}break}}while(n<o&&i<a);S=g>>3,n-=S,g-=S<<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<a?257+(a-i):257-(i-a),r.hold=d,r.bits=g}var ol,fD,px=h(()=>{ol=30,fD=12});function Qo(e,t,r,n,o,i,s,a){var c=a.bits,l=0,A=0,u=0,f=0,d=0,g=0,E=0,I=0,x=0,p=0,w,y,S,Q,b,k=null,T=0,v,M=Gn(Gi+1),L=Gn(Gi+1),P=null,V=0,J,W,Z;for(l=0;l<=Gi;l++)M[l]=0;for(A=0;A<n;A++)M[t[r+A]]++;for(d=c,f=Gi;f>=1&&M[f]===0;f--);if(d>f&&(d=f),f===0)return o[i++]=1<<24|64<<16|0,o[i++]=1<<24|64<<16|0,a.bits=1,0;for(u=1;u<f&&M[u]===0;u++);for(d<u&&(d=u),I=1,l=1;l<=Gi;l++)if(I<<=1,I-=M[l],I<0)return-1;if(I>0&&(e===Cx||f!==1))return-1;for(L[1]=0,l=1;l<Gi;l++)L[l+1]=L[l]+M[l];for(A=0;A<n;A++)t[r+A]!==0&&(s[L[t[r+A]]++]=A);if(e===Cx?(k=P=s,v=19):e===td?(k=dD,T-=257,P=mD,V-=257,v=256):(k=pD,P=gD,v=-1),p=0,A=0,l=u,b=i,g=d,E=0,S=-1,x=1<<d,Q=x-1,e===td&&x>gx||e===Ex&&x>hx)return 1;for(;;){J=l-E,s[A]<v?(W=0,Z=s[A]):s[A]>v?(W=P[V+s[A]],Z=k[T+s[A]]):(W=96,Z=0),w=1<<l-E,y=1<<g,u=y;do y-=w,o[b+(p>>E)+y]=J<<24|W<<16|Z|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===f)break;l=t[r+s[A]]}if(l>d&&(p&Q)!==S){for(E===0&&(E=d),b+=u,g=l-E,I=1<<g;g+E<f&&(I-=M[g+E],!(I<=0));)g++,I<<=1;if(x+=1<<g,e===td&&x>gx||e===Ex&&x>hx)return 1;S=p&Q,o[S]=d<<24|g<<16|b-i|0}}return p!==0&&(o[b+p]=l-E<<24|64<<16|0),a.bits=d,0}var Gi,gx,hx,Cx,td,Ex,dD,mD,pD,gD,xx=h(()=>{Xs();Gi=15,gx=852,hx=592,Cx=0,td=1,Ex=2,dD=[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],mD=[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],pD=[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],gD=[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 qx(e){return(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24)}function SD(){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=Gn(320),this.work=Gn(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function BD(e){var t;return!e||!e.state?dr:(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=zx,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=Bo(yD),t.distcode=t.distdyn=Bo(bD),t.sane=1,t.back=-1,vo)}function QD(e){var t;return!e||!e.state?dr:(t=e.state,t.wsize=0,t.whave=0,t.wnext=0,BD(e))}function vD(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))?dr:(n.window!==null&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,QD(e))}function $x(e,t){var r,n;return e?(n=new SD,e.state=n,n.window=null,r=vD(e,t),r!==vo&&(e.state=null),r):dr}function MD(e){if(Vx){var t;for(id=Bo(512),sd=Bo(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(Qo(Jx,e.lens,0,288,id,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;Qo(Yx,e.lens,0,32,sd,0,e.work,{bits:5}),Vx=!1}e.lencode=id,e.lenbits=9,e.distcode=sd,e.distbits=5}function Kx(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=hn(i.wsize)),n>=i.wsize?(qr(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),qr(i.window,t,r-n,o,i.wnext),n-=o,n?(qr(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 Xx(e,t){var r,n,o,i,s,a,c,l,A,u,f,d,g,E,I=0,x,p,w,y,S,Q,b,k,T=hn(4),v,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 dr;r=e.state,r.mode===Cn&&(r.mode=rd),s=e.next_out,o=e.output,c=e.avail_out,i=e.next_in,n=e.input,a=e.avail_in,l=r.hold,A=r.bits,u=a,f=c,k=vo;e:for(;;)switch(r.mode){case zx:if(r.wrap===0){r.mode=rd;break}for(;A<16;){if(a===0)break e;a--,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=fr(r.check,T,2,0),l=0,A=0,r.mode=yx;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=Te;break}if((l&15)!==wx){e.msg="unknown compression method",r.mode=Te;break}if(l>>>=4,A-=4,b=(l&15)+8,r.wbits===0)r.wbits=b;else if(b>r.wbits){e.msg="invalid window size",r.mode=Te;break}r.dmax=1<<b,e.adler=r.check=1,r.mode=l&512?Tx:Cn,l=0,A=0;break;case yx:for(;A<16;){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}if(r.flags=l,(r.flags&255)!==wx){e.msg="unknown compression method",r.mode=Te;break}if(r.flags&57344){e.msg="unknown header flags set",r.mode=Te;break}r.head&&(r.head.text=l>>8&1),r.flags&512&&(T[0]=l&255,T[1]=l>>>8&255,r.check=fr(r.check,T,2,0)),l=0,A=0,r.mode=bx;case bx:for(;A<32;){if(a===0)break e;a--,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=fr(r.check,T,4,0)),l=0,A=0,r.mode=Sx;case Sx:for(;A<16;){if(a===0)break e;a--,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=fr(r.check,T,2,0)),l=0,A=0,r.mode=Bx;case Bx:if(r.flags&1024){for(;A<16;){if(a===0)break e;a--,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=fr(r.check,T,2,0)),l=0,A=0}else r.head&&(r.head.extra=null);r.mode=Qx;case Qx:if(r.flags&1024&&(d=r.length,d>a&&(d=a),d&&(r.head&&(b=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),qr(r.head.extra,n,i,d,b)),r.flags&512&&(r.check=fr(r.check,n,d,i)),a-=d,i+=d,r.length-=d),r.length))break e;r.length=0,r.mode=vx;case vx:if(r.flags&2048){if(a===0)break e;d=0;do b=n[i+d++],r.head&&b&&r.length<65536&&(r.head.name+=String.fromCharCode(b));while(b&&d<a);if(r.flags&512&&(r.check=fr(r.check,n,d,i)),a-=d,i+=d,b)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=Mx;case Mx:if(r.flags&4096){if(a===0)break e;d=0;do b=n[i+d++],r.head&&b&&r.length<65536&&(r.head.comment+=String.fromCharCode(b));while(b&&d<a);if(r.flags&512&&(r.check=fr(r.check,n,d,i)),a-=d,i+=d,b)break e}else r.head&&(r.head.comment=null);r.mode=_x;case _x:if(r.flags&512){for(;A<16;){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}if(l!==(r.check&65535)){e.msg="header crc mismatch",r.mode=Te;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=Cn;break;case Tx:for(;A<32;){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}e.adler=r.check=qx(l),l=0,A=0,r.mode=cl;case cl:if(r.havedict===0)return e.next_out=s,e.avail_out=c,e.next_in=i,e.avail_in=a,r.hold=l,r.bits=A,xD;e.adler=r.check=1,r.mode=Cn;case Cn:if(t===CD||t===il)break e;case rd:if(r.last){l>>>=A&7,A-=A&7,r.mode=od;break}for(;A<3;){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}switch(r.last=l&1,l>>>=1,A-=1,l&3){case 0:r.mode=kx;break;case 1:if(MD(r),r.mode=sl,t===il){l>>>=2,A-=2;break e}break;case 2:r.mode=Nx;break;case 3:e.msg="invalid block type",r.mode=Te}l>>>=2,A-=2;break;case kx:for(l>>>=A&7,A-=A&7;A<32;){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}if((l&65535)!==(l>>>16^65535)){e.msg="invalid stored block lengths",r.mode=Te;break}if(r.length=l&65535,l=0,A=0,r.mode=nd,t===il)break e;case nd:r.mode=Dx;case Dx:if(d=r.length,d){if(d>a&&(d=a),d>c&&(d=c),d===0)break e;qr(o,n,i,d,s),a-=d,i+=d,c-=d,s+=d,r.length-=d;break}r.mode=Cn;break;case Nx:for(;A<14;){if(a===0)break e;a--,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=Te;break}r.have=0,r.mode=Lx;case Lx:for(;r.have<r.ncode;){for(;A<3;){if(a===0)break e;a--,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,v={bits:r.lenbits},k=Qo(hD,r.lens,0,19,r.lencode,0,r.work,v),r.lenbits=v.bits,k){e.msg="invalid code lengths set",r.mode=Te;break}r.have=0,r.mode=Rx;case Rx:for(;r.have<r.nlen+r.ndist;){for(;I=r.lencode[l&(1<<r.lenbits)-1],x=I>>>24,p=I>>>16&255,w=I&65535,!(x<=A);){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}if(w<16)l>>>=x,A-=x,r.lens[r.have++]=w;else{if(w===16){for(M=x+2;A<M;){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}if(l>>>=x,A-=x,r.have===0){e.msg="invalid bit length repeat",r.mode=Te;break}b=r.lens[r.have-1],d=3+(l&3),l>>>=2,A-=2}else if(w===17){for(M=x+3;A<M;){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}l>>>=x,A-=x,b=0,d=3+(l&7),l>>>=3,A-=3}else{for(M=x+7;A<M;){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}l>>>=x,A-=x,b=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=Te;break}for(;d--;)r.lens[r.have++]=b}}if(r.mode===Te)break;if(r.lens[256]===0){e.msg="invalid code -- missing end-of-block",r.mode=Te;break}if(r.lenbits=9,v={bits:r.lenbits},k=Qo(Jx,r.lens,0,r.nlen,r.lencode,0,r.work,v),r.lenbits=v.bits,k){e.msg="invalid literal/lengths set",r.mode=Te;break}if(r.distbits=6,r.distcode=r.distdyn,v={bits:r.distbits},k=Qo(Yx,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,v),r.distbits=v.bits,k){e.msg="invalid distances set",r.mode=Te;break}if(r.mode=sl,t===il)break e;case sl:r.mode=al;case al:if(a>=6&&c>=258){e.next_out=s,e.avail_out=c,e.next_in=i,e.avail_in=a,r.hold=l,r.bits=A,ed(e,f),s=e.next_out,o=e.output,c=e.avail_out,i=e.next_in,n=e.input,a=e.avail_in,l=r.hold,A=r.bits,r.mode===Cn&&(r.back=-1);break}for(r.back=0;I=r.lencode[l&(1<<r.lenbits)-1],x=I>>>24,p=I>>>16&255,w=I&65535,!(x<=A);){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}if(p&&(p&240)===0){for(y=x,S=p,Q=w;I=r.lencode[Q+((l&(1<<y+S)-1)>>y)],x=I>>>24,p=I>>>16&255,w=I&65535,!(y+x<=A);){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}l>>>=y,A-=y,r.back+=y}if(l>>>=x,A-=x,r.back+=x,r.length=w,p===0){r.mode=Ux;break}if(p&32){r.back=-1,r.mode=Cn;break}if(p&64){e.msg="invalid literal/length code",r.mode=Te;break}r.extra=p&15,r.mode=Fx;case Fx:if(r.extra){for(M=r.extra;A<M;){if(a===0)break e;a--,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=Px;case Px:for(;I=r.distcode[l&(1<<r.distbits)-1],x=I>>>24,p=I>>>16&255,w=I&65535,!(x<=A);){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}if((p&240)===0){for(y=x,S=p,Q=w;I=r.distcode[Q+((l&(1<<y+S)-1)>>y)],x=I>>>24,p=I>>>16&255,w=I&65535,!(y+x<=A);){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}l>>>=y,A-=y,r.back+=y}if(l>>>=x,A-=x,r.back+=x,p&64){e.msg="invalid distance code",r.mode=Te;break}r.offset=w,r.extra=p&15,r.mode=Ox;case Ox:if(r.extra){for(M=r.extra;A<M;){if(a===0)break e;a--,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=Te;break}r.mode=Gx;case Gx:if(c===0)break e;if(d=f-c,r.offset>d){if(d=r.offset-d,d>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=Te;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=s-r.offset,d=r.length;d>c&&(d=c),c-=d,r.length-=d;do o[s++]=E[g++];while(--d);r.length===0&&(r.mode=al);break;case Ux:if(c===0)break e;o[s++]=r.length,c--,r.mode=al;break;case od:if(r.wrap){for(;A<32;){if(a===0)break e;a--,l|=n[i++]<<A,A+=8}if(f-=c,e.total_out+=f,r.total+=f,f&&(e.adler=r.check=r.flags?fr(r.check,o,f,s-f):Zs(r.check,o,f,s-f)),f=c,(r.flags?l:qx(l))!==r.check){e.msg="incorrect data check",r.mode=Te;break}l=0,A=0}r.mode=Hx;case Hx:if(r.wrap&&r.flags){for(;A<32;){if(a===0)break e;a--,l+=n[i++]<<A,A+=8}if(l!==(r.total&4294967295)){e.msg="incorrect length check",r.mode=Te;break}l=0,A=0}r.mode=jx;case jx:k=ED;break e;case Te:k=Wx;break e;case cd:return ad;case wD:default:return dr}return e.next_out=s,e.avail_out=c,e.next_in=i,e.avail_in=a,r.hold=l,r.bits=A,(r.wsize||f!==e.avail_out&&r.mode<Te&&(r.mode<od||t!==Ix))&&Kx(e,e.output,e.next_out,f-e.avail_out)?(r.mode=cd,ad):(u-=e.avail_in,f-=e.avail_out,e.total_in+=u,e.total_out+=f,r.total+=f,r.wrap&&f&&(e.adler=r.check=r.flags?fr(r.check,o,f,e.next_out-f):Zs(r.check,o,f,e.next_out-f)),e.data_type=r.bits+(r.last?64:0)+(r.mode===Cn?128:0)+(r.mode===sl||r.mode===nd?256:0),(u===0&&f===0||t===Ix)&&k===vo&&(k=ID),k)}function Zx(e){if(!e||!e.state)return dr;var t=e.state;return t.window&&(t.window=null),e.state=null,vo}function eI(e,t){var r;return!e||!e.state||(r=e.state,(r.wrap&2)===0)?dr:(r.head=t,t.done=!1,vo)}function ld(e,t){var r=t.length,n,o,i;return!e||!e.state||(n=e.state,n.wrap!==0&&n.mode!==cl)?dr:n.mode===cl&&(o=1,o=Zs(o,t,r,0),o!==n.check)?Wx:(i=Kx(e,t,r,r),i?(n.mode=cd,ad):(n.havedict=1,vo))}var hD,Jx,Yx,Ix,CD,il,vo,ED,xD,dr,Wx,ad,ID,wx,zx,yx,bx,Sx,Bx,Qx,vx,Mx,_x,Tx,cl,Cn,rd,kx,nd,Dx,Nx,Lx,Rx,sl,al,Fx,Px,Ox,Gx,Ux,od,Hx,jx,Te,cd,wD,yD,bD,Vx,id,sd,tI=h(()=>{fx();mx();px();xx();Xs();hD=0,Jx=1,Yx=2,Ix=4,CD=5,il=6,vo=0,ED=1,xD=2,dr=-2,Wx=-3,ad=-4,ID=-5,wx=8,zx=1,yx=2,bx=3,Sx=4,Bx=5,Qx=6,vx=7,Mx=8,_x=9,Tx=10,cl=11,Cn=12,rd=13,kx=14,nd=15,Dx=16,Nx=17,Lx=18,Rx=19,sl=20,al=21,Fx=22,Px=23,Ox=24,Gx=25,Ux=26,od=27,Hx=28,jx=29,Te=30,cd=31,wD=32,yD=852,bD=592;Vx=!0});var ll,rI=h(()=>{ll={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 Ad(){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 nI=h(()=>{});function _D(e,t){var r=new fd(t);if(r.push(e,!0),r.err)throw r.msg||ll[r.err];return r.result}var ud,fd,oI,iI=h(()=>{Xs();Ax();$f();ux();tI();rI();nI();ud=Object.prototype.toString,fd=class e{constructor(t){if(!(this instanceof e))return new e(t);this.options=ox({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 Ad,this.strm.avail_out=0;var n=$x(this.strm,r.windowBits);if(n!==On)throw new Error(ll[n]);if(this.header=new Zf,eI(this.strm,this.header),r.dictionary&&(typeof r.dictionary=="string"?r.dictionary=Xf(r.dictionary):ud.call(r.dictionary)==="[object ArrayBuffer]"&&(r.dictionary=new Uint8Array(r.dictionary)),r.raw&&(n=ld(this.strm,r.dictionary),n!==On)))throw new Error(ll[n])}push(t,r){var n=this.strm,o=this.options.chunkSize,i=this.options.dictionary,s,a,c,l,A,u,f=!1;if(this.ended)return!1;a=r===~~r?r:r===!0?Ws:Wf,typeof t=="string"?n.input=ax(t):ud.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=hn(o),n.next_out=0,n.avail_out=o),s=Xx(n,Wf),s===rx&&i&&(typeof i=="string"?u=Xf(i):ud.call(i)==="[object ArrayBuffer]"?u=new Uint8Array(i):u=i,s=ld(this.strm,u)),s===nx&&f===!0&&(s=On,f=!1),s!==zs&&s!==On)return this.onEnd(s),this.ended=!0,!1;n.next_out&&(n.avail_out===0||s===zs||n.avail_in===0&&(a===Ws||a===zf))&&(this.options.to==="string"?(c=lx(n.output,n.next_out),l=n.next_out-c,A=cx(n.output,c),n.next_out=l,n.avail_out=o-l,l&&qr(n.output,n.output,c,l,0),this.onData(A)):this.onData(nl(n.output,n.next_out))),n.avail_in===0&&n.avail_out===0&&(f=!0)}while((n.avail_in>0||n.avail_out===0)&&s!==zs);return s===zs&&(a=Ws),a===Ws?(s=Zx(this.strm),this.onEnd(s),this.ended=!0,s===On):(a===zf&&(this.onEnd(On),n.avail_out=0),!0)}onData(t){this.chunks.push(t)}onEnd(t){t===On&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=rl(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg}};oI=_D});var sI=h(()=>{});var aI=h(()=>{$f();iI();sI()});function AI(e){try{let s=de.__wbindgen_add_to_stack_pointer(-16),a=mI(e,de.__wbindgen_export2),c=hd;de.decompress_all(s,a,c);var t=Kt().getInt32(s+0,!0),r=Kt().getInt32(s+4,!0),n=Kt().getInt32(s+8,!0),o=Kt().getInt32(s+12,!0);if(o)throw pI(n);var i=fI(t,r).slice();return de.__wbindgen_export(t,r*1,1),i}finally{de.__wbindgen_add_to_stack_pointer(16)}}function uI(e,t,r,n,o){try{let c=de.__wbindgen_add_to_stack_pointer(-16),l=mI(e,de.__wbindgen_export2),A=hd;de.decompress_chunk_slice(c,l,A,t,r,n,o);var i=Kt().getInt32(c+0,!0),s=Kt().getInt32(c+4,!0),a=Kt().getInt32(c+8,!0);if(a)throw pI(s);return Hi.__wrap(i)}finally{de.__wbindgen_add_to_stack_pointer(16)}}function kD(e,t){let r=Error(dI(e,t));return ND(r)}function DD(e,t){throw new Error(dI(e,t))}function ND(e){ta===En.length&&En.push(En.length+1);let t=ta;return ta=En[t],En[t]=e,t}function LD(e){e<1028||(En[e]=ta,ta=e)}function lI(e,t){return e=e>>>0,RD().subarray(e/8,e/8+t)}function fI(e,t){return e=e>>>0,gd().subarray(e/1,e/1+t)}function Kt(){return(Ui===null||Ui.buffer.detached===!0||Ui.buffer.detached===void 0&&Ui.buffer!==de.memory.buffer)&&(Ui=new DataView(de.memory.buffer)),Ui}function RD(){return(Al===null||Al.byteLength===0)&&(Al=new Float64Array(de.memory.buffer)),Al}function dI(e,t){return OD(e>>>0,t)}function gd(){return(ul===null||ul.byteLength===0)&&(ul=new Uint8Array(de.memory.buffer)),ul}function FD(e){return En[e]}function mI(e,t){let r=t(e.length*1,1)>>>0;return gd().set(e,r/1),hd=e.length,r}function pI(e){let t=FD(e);return LD(e),t}function OD(e,t){return dd+=t,dd>=PD&&(fl=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}),fl.decode(),dd=t),fl.decode(gd().subarray(e,e+t))}function gI(e){de=e}async function hI(){return ea||(md||(md=(async()=>{let t=await(await fetch(TD)).arrayBuffer(),{instance:r}=await WebAssembly.instantiate(t,{"./bgzf_wasm_bg.js":pd});return ea=r.exports,gI(ea),ea})()),md)}async function CI(e){return await hI(),AI(e)}async function EI(e,t,r,n,o){await hI();let i=uI(e,t,r,n,o),s=i.take_buffer(),a=[...i.take_cpositions()],c=[...i.take_dpositions()];return i.free(),{buffer:s,cpositions:a,dpositions:c}}var Mo,pd,TD,Hi,cI,Ui,Al,ul,En,ta,fl,PD,dd,hd,de,ea,md,xI=h(()=>{Mo={};Mo.d=(e,t)=>{for(var r in t)Mo.o(t,r)&&!Mo.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})};Mo.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);Mo.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};pd={};Mo.r(pd);Mo.d(pd,{ChunkSliceResult:()=>Hi,__wbg_Error_ef53bc310eb298a0:()=>kD,__wbg___wbindgen_throw_1506f2235d1bdba0:()=>DD,__wbg_set_wasm:()=>gI,decompress_all:()=>AI,decompress_chunk_slice:()=>uI});TD="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==",Hi=class e{static __wrap(t){let r=Object.create(e.prototype);return r.__wbg_ptr=t,cI.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let t=this.__wbg_ptr;return this.__wbg_ptr=0,cI.unregister(this),t}free(){let t=this.__destroy_into_raw();de.__wbg_chunksliceresult_free(t,0)}take_buffer(){try{let o=de.__wbindgen_add_to_stack_pointer(-16);de.chunksliceresult_take_buffer(o,this.__wbg_ptr);var t=Kt().getInt32(o+0,!0),r=Kt().getInt32(o+4,!0),n=fI(t,r).slice();return de.__wbindgen_export(t,r*1,1),n}finally{de.__wbindgen_add_to_stack_pointer(16)}}take_cpositions(){try{let o=de.__wbindgen_add_to_stack_pointer(-16);de.chunksliceresult_take_cpositions(o,this.__wbg_ptr);var t=Kt().getInt32(o+0,!0),r=Kt().getInt32(o+4,!0),n=lI(t,r).slice();return de.__wbindgen_export(t,r*8,8),n}finally{de.__wbindgen_add_to_stack_pointer(16)}}take_dpositions(){try{let o=de.__wbindgen_add_to_stack_pointer(-16);de.chunksliceresult_take_dpositions(o,this.__wbg_ptr);var t=Kt().getInt32(o+0,!0),r=Kt().getInt32(o+4,!0),n=lI(t,r).slice();return de.__wbindgen_export(t,r*8,8),n}finally{de.__wbindgen_add_to_stack_pointer(16)}}};Symbol.dispose&&(Hi.prototype[Symbol.dispose]=Hi.prototype.free);cI=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>de.__wbg_chunksliceresult_free(e,1));Ui=null;Al=null;ul=null;En=new Array(1024).fill(void 0);En.push(void 0,null,!0,!1);ta=En.length;fl=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});fl.decode();PD=2146435072,dd=0;hd=0;ea=null,md=null});function GD(e){return e[0]===31&&e[1]===139}function II(e){return e instanceof Error?e.message:`${e}`}async function UD(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 oI(e,void 0)}function wI(e){return II(e).includes("invalid gzip header")?new Error("problem decompressing block: incorrect gzip header check",{cause:e}):e}async function xn(e){try{return await CI(e)}catch(t){if(II(t).includes("invalid bgzf header")){if(GD(e))return UD(e);throw new Error("problem decompressing block: not a valid bgzf or gzip block",{cause:t})}throw wI(t)}}async function Cd(e,t){let{minv:r,maxv:n}=t;try{let o=await EI(e,r.blockPosition,r.dataPosition,n.blockPosition,n.dataPosition);return{buffer:o.buffer,cpositions:o.cpositions,dpositions:o.dpositions}}catch(o){throw wI(o)}}var Ed=h(()=>{aI();xI()});var yI=h(()=>{});var bI=h(()=>{tx();Ed();yI()});var ra=h(()=>{bI();Ed()});var BI=q((aG,SI)=>{SI.exports=JBrowseExports["react-dom"]});var vI=q((cG,QI)=>{QI.exports=JBrowseExports["react-dom/client"]});function MI(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 xd=h(()=>{});var _I=h(()=>{});var TI=h(()=>{});var kI=h(()=>{});var ze,R,Ce,jt,Ee,Le,_o,na,To,dl,br,DI,Id,wd,yd,NI,ml,ko,bd=h(()=>{ze=function(e,t,r,n,o){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!o)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?o.call(e,r):o?o.value=r:t.set(e,r),r},R=function(e,t,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(e):n?n.value:t.get(e)},ko=class extends Map{constructor(t={}){if(super(),Ce.add(this),jt.set(this,0),Ee.set(this,new Map),Le.set(this,new Map),_o.set(this,void 0),na.set(this,void 0),To.set(this,void 0),!(t.maxSize&&t.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");if(typeof t.maxAge=="number"&&t.maxAge===0)throw new TypeError("`maxAge` must be a number greater than 0");ze(this,_o,t.maxSize,"f"),ze(this,na,t.maxAge||Number.POSITIVE_INFINITY,"f"),ze(this,To,t.onEviction,"f")}get __oldCache(){return R(this,Le,"f")}get(t){if(R(this,Ee,"f").has(t)){let r=R(this,Ee,"f").get(t);return R(this,Ce,"m",Id).call(this,t,r)}if(R(this,Le,"f").has(t)){let r=R(this,Le,"f").get(t);if(!R(this,Ce,"m",br).call(this,t,r))return R(this,Ce,"m",NI).call(this,t,r),r.value}}set(t,r,{maxAge:n=R(this,na,"f")}={}){let o=typeof n=="number"&&n!==Number.POSITIVE_INFINITY?Date.now()+n:void 0;return R(this,Ee,"f").has(t)?R(this,Ee,"f").set(t,{value:r,expiry:o}):R(this,Ce,"m",yd).call(this,t,{value:r,expiry:o}),this}has(t){return R(this,Ee,"f").has(t)?!R(this,Ce,"m",br).call(this,t,R(this,Ee,"f").get(t)):R(this,Le,"f").has(t)?!R(this,Ce,"m",br).call(this,t,R(this,Le,"f").get(t)):!1}peek(t){if(R(this,Ee,"f").has(t))return R(this,Ce,"m",wd).call(this,t,R(this,Ee,"f"));if(R(this,Le,"f").has(t))return R(this,Ce,"m",wd).call(this,t,R(this,Le,"f"))}expiresIn(t){let r=R(this,Ee,"f").get(t)??R(this,Le,"f").get(t);if(r)return r.expiry?r.expiry-Date.now():Number.POSITIVE_INFINITY}delete(t){var r;let n=R(this,Ee,"f").delete(t);return n&&ze(this,jt,(r=R(this,jt,"f"),r--,r),"f"),R(this,Le,"f").delete(t)||n}clear(){R(this,Ee,"f").clear(),R(this,Le,"f").clear(),ze(this,jt,0,"f")}resize(t){if(!(t&&t>0))throw new TypeError("`maxSize` must be a number greater than 0");let r=[...R(this,Ce,"m",ml).call(this)],n=r.length-t;n<0?(ze(this,Ee,new Map(r),"f"),ze(this,Le,new Map,"f"),ze(this,jt,r.length,"f")):(n>0&&R(this,Ce,"m",dl).call(this,r.slice(0,n)),ze(this,Le,new Map(r.slice(n)),"f"),ze(this,Ee,new Map,"f"),ze(this,jt,0,"f")),ze(this,_o,t,"f")}evict(t=1){let r=t;if(!r||r<=0)return;let n=[...R(this,Ce,"m",ml).call(this)],o=Math.trunc(Math.min(r,Math.max(n.length-1,0)));o<=0||(R(this,Ce,"m",dl).call(this,n.slice(0,o)),ze(this,Le,new Map(n.slice(o)),"f"),ze(this,Ee,new Map,"f"),ze(this,jt,0,"f"))}*keys(){for(let[t]of this)yield t}*values(){for(let[,t]of this)yield t}*[(jt=new WeakMap,Ee=new WeakMap,Le=new WeakMap,_o=new WeakMap,na=new WeakMap,To=new WeakMap,Ce=new WeakSet,dl=function(r){if(typeof R(this,To,"f")=="function")for(let[n,o]of r)R(this,To,"f").call(this,n,o.value)},br=function(r,n){return typeof n.expiry=="number"&&n.expiry<=Date.now()?(typeof R(this,To,"f")=="function"&&R(this,To,"f").call(this,r,n.value),this.delete(r)):!1},DI=function(r,n){if(!R(this,Ce,"m",br).call(this,r,n))return n.value},Id=function(r,n){return n.expiry?R(this,Ce,"m",DI).call(this,r,n):n.value},wd=function(r,n){let o=n.get(r);return R(this,Ce,"m",Id).call(this,r,o)},yd=function(r,n){var o;R(this,Ee,"f").set(r,n),ze(this,jt,(o=R(this,jt,"f"),o++,o),"f"),R(this,jt,"f")>=R(this,_o,"f")&&(ze(this,jt,0,"f"),R(this,Ce,"m",dl).call(this,R(this,Le,"f")),ze(this,Le,R(this,Ee,"f"),"f"),ze(this,Ee,new Map,"f"))},NI=function(r,n){R(this,Le,"f").delete(r),R(this,Ce,"m",yd).call(this,r,n)},ml=function*(){for(let r of R(this,Le,"f")){let[n,o]=r;R(this,Ee,"f").has(n)||R(this,Ce,"m",br).call(this,n,o)||(yield r)}for(let r of R(this,Ee,"f")){let[n,o]=r;R(this,Ce,"m",br).call(this,n,o)||(yield r)}},Symbol.iterator)](){for(let t of R(this,Ee,"f")){let[r,n]=t;R(this,Ce,"m",br).call(this,r,n)||(yield[r,n.value])}for(let t of R(this,Le,"f")){let[r,n]=t;R(this,Ee,"f").has(r)||R(this,Ce,"m",br).call(this,r,n)||(yield[r,n.value])}}*entriesDescending(){let t=[...R(this,Ee,"f")];for(let r=t.length-1;r>=0;--r){let n=t[r],[o,i]=n;R(this,Ce,"m",br).call(this,o,i)||(yield[o,i.value])}t=[...R(this,Le,"f")];for(let r=t.length-1;r>=0;--r){let n=t[r],[o,i]=n;R(this,Ee,"f").has(o)||R(this,Ce,"m",br).call(this,o,i)||(yield[o,i.value])}}*entriesAscending(){for(let[t,r]of R(this,Ce,"m",ml).call(this))yield[t,r.value]}get size(){if(!R(this,jt,"f"))return R(this,Le,"f").size;let t=0;for(let r of R(this,Le,"f").keys())R(this,Ee,"f").has(r)||t++;return Math.min(R(this,jt,"f")+t,R(this,_o,"f"))}get maxSize(){return R(this,_o,"f")}get maxAge(){return R(this,na,"f")}entries(){return this.entriesAscending()}forEach(t,r=this){for(let[n,o]of this.entriesAscending())t.call(r,o,n,this)}get[Symbol.toStringTag](){return"QuickLRU"}toString(){return`QuickLRU(${this.size}/${this.maxSize})`}[Symbol.for("nodejs.util.inspect.custom")](){return this.toString()}}});function pl(e){return typeof e=="object"&&e!==null&&"uri"in e&&!!e.uri}var HD,Sd=h(()=>{HD=m(Yt(),1);kI()});var jD,LI=h(()=>{jD=m(Ir(),1)});var RI=h(()=>{});var FI=h(()=>{});var ji,gl,Bd,Qd,qD,oa,hl,PI=h(()=>{ji={METHOD:"method",PROPERTY:"property"},gl=class{constructor(t,r){this.inst=t,this.args=r}},Bd=class extends gl{constructor(t,r){super(t,r),this.type=ji.METHOD}execute(t){t[this.inst](...this.args)}},Qd=class extends gl{constructor(t,r){super(t,r),this.type=ji.PROPERTY}execute(t){t[this.inst]=this.args[0]}},qD={[ji.METHOD]:Bd,[ji.PROPERTY]:Qd},oa=class{constructor(t,r,n){return new qD[t](r,n)}};oa.METHOD=ji.METHOD;oa.PROPERTY=ji.PROPERTY;hl=oa});var OI,Vr,Cl,vd=h(()=>{PI();OI=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"]}),Vr=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push"),fromJSON:Symbol.for("fromJSON")}),Cl=class{constructor(t=null){this[Vr.sequence]=[],t&&this[Vr.fromJSON](t)}[Vr.fromJSON](t={sequence:[]}){t.sequence.forEach(({type:r,inst:n,args:o})=>{this[Vr.push](r,n,o)})}[Vr.push](t,r,n){this[Vr.sequence].push(new hl(t,r,n))}execute(t){t.save(),this[Vr.sequence].forEach(r=>r.execute(t)),t.restore()}toJSON(){return{sequence:this[Vr.sequence]}}};OI.METHODS.forEach(e=>{Object.defineProperty(Cl.prototype,e,{value:function(...r){this[Vr.push](hl.METHOD,e,r)},writable:!1,enumerable:!0,configurable:!1})});OI.PROPERTIES.forEach(e=>{Object.defineProperty(Cl.prototype,e,{get(){throw`Invalid canvas sequencer interaction, cannot get ${e}.`},set(t){this[Vr.push](hl.PROPERTY,e,[t])},enumerable:!0,configurable:!1})})});var wG,UI=h(()=>{vd();wG=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push")})});var HI=h(()=>{UI();vd()});var qI=q((vG,jI)=>{jI.exports=!1});var VD,VI=h(()=>{HI();VD=m(qI(),1)});var JD,YD,JI=h(()=>{JD=m(U(),1),YD=m(_(),1)});var YI=h(()=>{});var DG,NG,LG,RG,WI=h(()=>{DG=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]),NG=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]),LG=new Uint8Array([1,2,4,8,16,32,64,128,27,54]),RG=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 ia(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Md(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function _d(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 qi(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,i=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(a){s={error:a}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return i}function Vi(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 Md,sa=h(()=>{Md=function(e,t){return Md=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])},Md(e,t)}});function Jr(e){return typeof e=="function"}var El=h(()=>{});function xl(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 Td=h(()=>{});var Il,zI=h(()=>{Td();Il=xl(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 Gu(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var OC=g(()=>{});function UC(e){return e instanceof pc||e&&"closed"in e&&Dr(e.remove)&&Dr(e.add)&&Dr(e.unsubscribe)}function GC(e){Dr(e)?e():e.unsubscribe()}var pc,c4,HC=g(()=>{ms();fc();PC();OC();pc=(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 s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=Pu(s),c=a.next();!c.done;c=a.next()){var l=c.value;l.remove(this)}}catch(E){t={error:E}}finally{try{c&&!c.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var A=this.initialTeardown;if(Dr(A))try{A()}catch(E){i=E instanceof mc?E.errors:[E]}var u=this._finalizers;if(u){this._finalizers=null;try{for(var d=Pu(u),m=d.next();!m.done;m=d.next()){var h=m.value;try{GC(h)}catch(E){i=i??[],E instanceof mc?i=ci(ci([],ai(i)),ai(E.errors)):i.push(E)}}}catch(E){n={error:E}}finally{try{m&&!m.done&&(o=d.return)&&o.call(d)}finally{if(n)throw n.error}}}if(i)throw new mc(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)GC(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)&&Gu(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Gu(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=(function(){var t=new e;return t.closed=!0,t})(),e})(),c4=pc.EMPTY});var hn,gc=g(()=>{hn={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var li,Uu=g(()=>{ms();li={setTimeout:function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var o=li.delegate;return o?.setTimeout?o.setTimeout.apply(o,ci([e,t],ai(r))):setTimeout.apply(void 0,ci([e,t],ai(r)))},clearTimeout:function(e){var t=li.delegate;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0}});function jC(e){li.setTimeout(function(){var t=hn.onUnhandledError;if(t)t(e);else throw e})}var qC=g(()=>{gc();Uu()});function Hu(){}var JC=g(()=>{});function YC(e){return ju("E",void 0,e)}function WC(e){return ju("N",e,void 0)}function ju(e,t,r){return{kind:e,value:t,error:r}}var VC,zC=g(()=>{VC=(function(){return ju("C",void 0,void 0)})()});function $C(e){hn.useDeprecatedSynchronousErrorHandling&&qu&&(qu.errorThrown=!0,qu.error=e)}var qu,KC=g(()=>{gc();qu=null});function Ju(e,t){return rT.call(e,t)}function hc(e){hn.useDeprecatedSynchronousErrorHandling?$C(e):jC(e)}function oT(e){throw e}function Vu(e,t){var r=hn.onStoppedNotification;r&&li.setTimeout(function(){return r(e,t)})}var Yu,rT,nT,Wu,iT,zu=g(()=>{ms();fc();HC();gc();qC();JC();zC();Uu();KC();Yu=(function(e){ds(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,UC(r)&&r.add(n)):n.destination=iT,n}return t.create=function(r,n,o){return new Wu(r,n,o)},t.prototype.next=function(r){this.isStopped?Vu(WC(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?Vu(YC(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?Vu(VC,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})(pc),rT=Function.prototype.bind;nT=(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){hc(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){hc(n)}else hc(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){hc(r)}},e})(),Wu=(function(e){ds(t,e);function t(r,n,o){var i=e.call(this)||this,s;if(Dr(r)||!r)s={next:r??void 0,error:n??void 0,complete:o??void 0};else{var a;i&&hn.useDeprecatedNextContext?(a=Object.create(r),a.unsubscribe=function(){return i.unsubscribe()},s={next:r.next&&Ju(r.next,a),error:r.error&&Ju(r.error,a),complete:r.complete&&Ju(r.complete,a)}):s=r}return i.destination=new nT(s),i}return t})(Yu);iT={closed:!0,next:Hu,error:oT,complete:Hu}});function sT(e){return Dr(e?.lift)}function Cc(e){return function(t){if(sT(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 $u=g(()=>{fc()});function XC(e,t,r,n,o){return new aT(e,t,r,n,o)}var aT,ZC=g(()=>{ms();zu();aT=(function(e){ds(t,e);function t(r,n,o,i,s,a){var c=e.call(this,r)||this;return c.onFinalize=s,c.shouldUnsubscribe=a,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})(Yu)});var eE,tE=g(()=>{Ou();eE=dc(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});function Ku(e,t){var r=typeof t=="object";return new Promise(function(n,o){var i=new Wu({next:function(s){n(s),i.unsubscribe()},error:o,complete:function(){r?n(t.defaultValue):o(new eE)}});e.subscribe(i)})}var rE=g(()=>{tE();zu()});var nE=g(()=>{});function oE(e,t,r,n,o){return function(i,s){var a=r,c=t,l=0;i.subscribe(XC(s,function(A){var u=l++;c=a?e(c,A,u):(a=!0,A),n&&s.next(c)},o&&(function(){a&&s.next(c),s.complete()})))}}var iE=g(()=>{ZC()});function sE(e,t){return Cc(oE(e,t,arguments.length>=2,!1,!0))}var aE=g(()=>{iE();$u()});function Xu(){return Cc(function(e,t){sE(cT,[])(e).subscribe(t)})}var cT,cE=g(()=>{aE();$u();cT=function(e,t){return e.push(t),e}});var lE=g(()=>{rE();nE();cE()});var AE=g(()=>{});var uE=g(()=>{});function lT(){return fE||(fE=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function AT(){return dE||(dE=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}function uT(e){let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("success",i),e.removeEventListener("error",s)},i=()=>{r(oo(e.result)),o()},s=()=>{n(e.error),o()};e.addEventListener("success",i),e.addEventListener("error",s)});return Ec.set(t,e),t}function fT(e){if(rf.has(e))return;let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("complete",i),e.removeEventListener("error",s),e.removeEventListener("abort",s)},i=()=>{r(),o()},s=()=>{n(e.error||new DOMException("AbortError","AbortError")),o()};e.addEventListener("complete",i),e.addEventListener("error",s),e.addEventListener("abort",s)});rf.set(e,t)}function hE(e){nf=e(nf)}function dT(e){return AT().includes(e)?function(...t){return e.apply(of(this),t),oo(this.request)}:function(...t){return oo(e.apply(of(this),t))}}function mT(e){return typeof e=="function"?dT(e):(e instanceof IDBTransaction&&fT(e),tf(e,lT())?new Proxy(e,nf):e)}function oo(e){if(e instanceof IDBRequest)return uT(e);if(Zu.has(e))return Zu.get(e);let t=mT(e);return t!==e&&(Zu.set(e,t),Ec.set(t,e)),t}function en(e,t,{blocked:r,upgrade:n,blocking:o,terminated:i}={}){let s=indexedDB.open(e,t),a=oo(s);return n&&s.addEventListener("upgradeneeded",c=>{n(oo(s.result),c.oldVersion,c.newVersion,oo(s.transaction),c)}),r&&s.addEventListener("blocked",c=>r(c.oldVersion,c.newVersion,c)),a.then(c=>{i&&c.addEventListener("close",()=>i()),o&&c.addEventListener("versionchange",l=>o(l.oldVersion,l.newVersion,l))}).catch(()=>{}),a}function mE(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&typeof t=="string"))return;if(ef.get(t))return ef.get(t);let r=t.replace(/FromIndex$/,""),n=t!==r,o=gT.includes(r);if(!(r in(n?IDBIndex:IDBObjectStore).prototype)||!(o||pT.includes(r)))return;let i=async function(s,...a){let c=this.transaction(s,o?"readwrite":"readonly"),l=c.store;return n&&(l=l.index(a.shift())),(await Promise.all([l[r](...a),o&&c.done]))[0]};return ef.set(t,i),i}async function*ET(...e){let t=this;if(t instanceof IDBCursor||(t=await t.openCursor(...e)),!t)return;t=t;let r=new Proxy(t,CT);for(CE.set(r,t),Ec.set(r,of(t));t;)yield r,t=await(sf.get(r)||t.continue()),sf.delete(r)}function gE(e,t){return t===Symbol.asyncIterator&&tf(e,[IDBIndex,IDBObjectStore,IDBCursor])||t==="iterate"&&tf(e,[IDBIndex,IDBObjectStore])}var tf,fE,dE,rf,Zu,Ec,nf,of,pT,gT,ef,hT,pE,sf,CE,CT,Ai=g(()=>{tf=(e,t)=>t.some(r=>e instanceof r);rf=new WeakMap,Zu=new WeakMap,Ec=new WeakMap;nf={get(e,t,r){if(e instanceof IDBTransaction){if(t==="done")return rf.get(e);if(t==="store")return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return oo(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}};of=e=>Ec.get(e);pT=["get","getKey","getAll","getAllKeys","count"],gT=["put","add","delete","clear"],ef=new Map;hE(e=>({...e,get:(t,r,n)=>mE(t,r)||e.get(t,r,n),has:(t,r)=>!!mE(t,r)||e.has(t,r)}));hT=["continue","continuePrimaryKey","advance"],pE={},sf=new WeakMap,CE=new WeakMap,CT={get(e,t){if(!hT.includes(t))return e[t];let r=pE[t];return r||(r=pE[t]=function(...n){sf.set(this,CE.get(this)[t](...n))}),r}};hE(e=>({...e,get(t,r,n){return gE(t,r)?ET:e.get(t,r,n)},has(t,r){return gE(t,r)||e.has(t,r)}}))});var EE=g(()=>{Ai()});var Ic,IE=g(()=>{Ic=f(kt(),1)});function cf(e,t=10){let r=String(e),n=0;for(let o=0,i=r.length;o<i;o++)n+=yT[r.charCodeAt(o)]??wT;return n*t}function lf(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 bT(e){let{uri:t,baseUri:r=""}=e,n;try{n=new URL(t,r).href}catch{n=t}return n}function Af(e){return $t(e)?cc(e)?bT(e):JSON.stringify(e):String(e)}function xE(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 yE(e,t){let{padding:r=30,minWidth:n=80,fontSize:o=12,maxWidth:i=1e3,stripHTML:s=!1}=t||{};return uf(e.map(a=>Af(a)).map(a=>s?IC(a):a).map(a=>cf(a,o)).map(a=>Math.min(Math.max(a+r,n),i)))}function uf(e,t=Number.NEGATIVE_INFINITY){let r=t;for(let n of e)r=Math.max(n,r);return r}function $t(e){return typeof e=="object"&&e!==null}var af,ui,IT,xT,uO,fO,dO,mO,yT,wT,Cn=g(()=>{af=f(Q(),1);pC();ui=f(kt(),1),IT=f(hC(),1),xT=f(EC(),1);Du();ku();ku();bC();BC();SC();Du();NC();LC();RC();FC();AE();uE();xC();yC();IE();EE();uO=180/Math.PI,fO=Math.PI/180,dO=/electron/i.test(typeof navigator<"u"?navigator.userAgent:""),mO=typeof jest>"u"?typeof window<"u"&&window.requestIdleCallback?window.requestIdleCallback:e=>setTimeout(()=>{e()},1):e=>{e()},yT=[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],wT=.5279276315789471});function wE(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 BT(e){if(Array.isArray(e))return e}function ST(e,t){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,o,i,s,a=[],c=!0,l=!1;try{if(i=(r=r.call(e)).next,t!==0)for(;!(c=(n=i.call(r)).done)&&(a.push(n.value),a.length!==t);c=!0);}catch(A){l=!0,o=A}finally{try{if(!c&&r.return!=null&&(s=r.return(),Object(s)!==s))return}finally{if(l)throw o}}return a}}function QT(){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 MT(e,t){return BT(e)||ST(e,t)||vT(e,t)||QT()}function vT(e,t){if(e){if(typeof e=="string")return wE(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)?wE(e,t):void 0}}function Oe(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 hf(e,t,n)}}function PT(e){return function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return Cf(e,r)}}function q(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:hs;if(bE&&bE(e,null),!yt(t))return e;let n=t.length;for(;n--;){let o=t[n];if(typeof o=="string"){let i=r(o);i!==o&&(TT(t)||(t[n]=i),o=i)}e[o]=!0}return e}function OT(e){for(let t=0;t<e.length;t++)_e(e,t)||(e[t]=null);return e}function ft(e){let t=pi(null);for(let n of RE(e)){var r=MT(n,2);let o=r[0],i=r[1];_e(e,o)&&(yt(i)?t[o]=OT(i):i&&typeof i=="object"&&i.constructor===Object?t[o]=ft(i):t[o]=i)}return t}function GT(e){switch(typeof e){case"string":return e;case"number":return RT(e);case"boolean":return FT(e);case"bigint":return ME?ME(e):"0";case"symbol":return vE?vE(e):"Symbol()";case"undefined":return ps(e);case"function":case"object":{if(e===null)return ps(e);let t=e,r=Nr(t,"toString");if(typeof r=="function"){let n=r(t);return typeof n=="string"?n:ps(n)}return ps(e)}default:return ps(e)}}function Nr(e,t){for(;e!==null;){let n=DT(e,t);if(n){if(n.get)return Oe(n.get);if(typeof n.value=="function")return Oe(n.value)}e=_T(e)}function r(){return null}return r}function UT(e){try{return ct(e,""),!0}catch{return!1}}function PE(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ZT(),t=P=>PE(P);if(t.version="3.4.7",t.removed=[],!e||!e.document||e.document.nodeType!==kr.document||!e.Element)return t.isSupported=!1,t;let r=e.document,n=r,o=n.currentScript;e.DocumentFragment;let i=e.HTMLTemplateElement,s=e.Node,a=e.Element,c=e.NodeFilter,l=e.NamedNodeMap;l===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;let A=e.DOMParser,u=e.trustedTypes,d=a.prototype,m=Nr(d,"cloneNode"),h=Nr(d,"remove"),E=Nr(d,"nextSibling"),x=Nr(d,"childNodes"),I=Nr(d,"parentNode"),p=Nr(d,"shadowRoot"),y=Nr(d,"attributes"),b=s&&s.prototype?Nr(s.prototype,"nodeType"):null,w=s&&s.prototype?Nr(s.prototype,"nodeName"):null;if(typeof i=="function"){let P=r.createElement("template");P.content&&P.content.ownerDocument&&(r=P.content.ownerDocument)}let S,M="",F=r,D=F.implementation,L=F.createNodeIterator,v=F.createDocumentFragment,O=F.getElementsByTagName,U=n.importNode,H=LE();t.isSupported=typeof RE=="function"&&typeof I=="function"&&D&&D.createHTMLDocument!==void 0;let Ve=qT,ue=JT,rt=VT,vt=YT,Gn=WT,nr=zT,or=$T,ir=XT,Sr=NE,fe=null,Un=q({},[...TE,...df,...mf,...pf,..._E]),ge=null,sr=q({},[...DE,...gf,...kE,...xc]),ae=Object.seal(pi(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}})),Hn=null,jn=null,ar=Object.seal(pi(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),Zs=!0,Oi=!0,An=!1,Gi=!0,Vr=!1,K=!0,ne=!1,he=!1,Ce=!1,nt=!1,ot=!1,be=!1,Tt=!0,un=!1,fn="user-content-",yo=!0,dn=!1,Ue={},Re=null,qn=q({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),ea=null,wo=q({},["audio","video","img","source","image","track"]),Xl=null,Lm=q({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ta="http://www.w3.org/1998/Math/MathML",ra="http://www.w3.org/2000/svg",Qr="http://www.w3.org/1999/xhtml",bo=Qr,Zl=!1,eA=null,gM=q({},[ta,ra,Qr],ff),tA=q({},["mi","mo","mn","ms","mtext"]),rA=q({},["annotation-xml"]),hM=q({},["title","style","font","a","script"]),Ui=null,CM=["application/xhtml+xml","text/html"],EM="text/html",De=null,Bo=null,IM=r.createElement("form"),Rm=function(C){return C instanceof RegExp||C instanceof Function},nA=function(){let C=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Bo&&Bo===C)return;(!C||typeof C!="object")&&(C={}),C=ft(C),Ui=CM.indexOf(C.PARSER_MEDIA_TYPE)===-1?EM:C.PARSER_MEDIA_TYPE,De=Ui==="application/xhtml+xml"?ff:hs,fe=_e(C,"ALLOWED_TAGS")&&yt(C.ALLOWED_TAGS)?q({},C.ALLOWED_TAGS,De):Un,ge=_e(C,"ALLOWED_ATTR")&&yt(C.ALLOWED_ATTR)?q({},C.ALLOWED_ATTR,De):sr,eA=_e(C,"ALLOWED_NAMESPACES")&&yt(C.ALLOWED_NAMESPACES)?q({},C.ALLOWED_NAMESPACES,ff):gM,Xl=_e(C,"ADD_URI_SAFE_ATTR")&&yt(C.ADD_URI_SAFE_ATTR)?q(ft(Lm),C.ADD_URI_SAFE_ATTR,De):Lm,ea=_e(C,"ADD_DATA_URI_TAGS")&&yt(C.ADD_DATA_URI_TAGS)?q(ft(wo),C.ADD_DATA_URI_TAGS,De):wo,Re=_e(C,"FORBID_CONTENTS")&&yt(C.FORBID_CONTENTS)?q({},C.FORBID_CONTENTS,De):qn,Hn=_e(C,"FORBID_TAGS")&&yt(C.FORBID_TAGS)?q({},C.FORBID_TAGS,De):ft({}),jn=_e(C,"FORBID_ATTR")&&yt(C.FORBID_ATTR)?q({},C.FORBID_ATTR,De):ft({}),Ue=_e(C,"USE_PROFILES")?C.USE_PROFILES&&typeof C.USE_PROFILES=="object"?ft(C.USE_PROFILES):C.USE_PROFILES:!1,Zs=C.ALLOW_ARIA_ATTR!==!1,Oi=C.ALLOW_DATA_ATTR!==!1,An=C.ALLOW_UNKNOWN_PROTOCOLS||!1,Gi=C.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Vr=C.SAFE_FOR_TEMPLATES||!1,K=C.SAFE_FOR_XML!==!1,ne=C.WHOLE_DOCUMENT||!1,nt=C.RETURN_DOM||!1,ot=C.RETURN_DOM_FRAGMENT||!1,be=C.RETURN_TRUSTED_TYPE||!1,Ce=C.FORCE_BODY||!1,Tt=C.SANITIZE_DOM!==!1,un=C.SANITIZE_NAMED_PROPS||!1,yo=C.KEEP_CONTENT!==!1,dn=C.IN_PLACE||!1,Sr=UT(C.ALLOWED_URI_REGEXP)?C.ALLOWED_URI_REGEXP:NE,bo=typeof C.NAMESPACE=="string"?C.NAMESPACE:Qr,tA=_e(C,"MATHML_TEXT_INTEGRATION_POINTS")&&C.MATHML_TEXT_INTEGRATION_POINTS&&typeof C.MATHML_TEXT_INTEGRATION_POINTS=="object"?ft(C.MATHML_TEXT_INTEGRATION_POINTS):q({},["mi","mo","mn","ms","mtext"]),rA=_e(C,"HTML_INTEGRATION_POINTS")&&C.HTML_INTEGRATION_POINTS&&typeof C.HTML_INTEGRATION_POINTS=="object"?ft(C.HTML_INTEGRATION_POINTS):q({},["annotation-xml"]);let B=_e(C,"CUSTOM_ELEMENT_HANDLING")&&C.CUSTOM_ELEMENT_HANDLING&&typeof C.CUSTOM_ELEMENT_HANDLING=="object"?ft(C.CUSTOM_ELEMENT_HANDLING):pi(null);if(ae=pi(null),_e(B,"tagNameCheck")&&Rm(B.tagNameCheck)&&(ae.tagNameCheck=B.tagNameCheck),_e(B,"attributeNameCheck")&&Rm(B.attributeNameCheck)&&(ae.attributeNameCheck=B.attributeNameCheck),_e(B,"allowCustomizedBuiltInElements")&&typeof B.allowCustomizedBuiltInElements=="boolean"&&(ae.allowCustomizedBuiltInElements=B.allowCustomizedBuiltInElements),Vr&&(Oi=!1),ot&&(nt=!0),Ue&&(fe=q({},_E),ge=pi(null),Ue.html===!0&&(q(fe,TE),q(ge,DE)),Ue.svg===!0&&(q(fe,df),q(ge,gf),q(ge,xc)),Ue.svgFilters===!0&&(q(fe,mf),q(ge,gf),q(ge,xc)),Ue.mathMl===!0&&(q(fe,pf),q(ge,kE),q(ge,xc))),ar.tagCheck=null,ar.attributeCheck=null,_e(C,"ADD_TAGS")&&(typeof C.ADD_TAGS=="function"?ar.tagCheck=C.ADD_TAGS:yt(C.ADD_TAGS)&&(fe===Un&&(fe=ft(fe)),q(fe,C.ADD_TAGS,De))),_e(C,"ADD_ATTR")&&(typeof C.ADD_ATTR=="function"?ar.attributeCheck=C.ADD_ATTR:yt(C.ADD_ATTR)&&(ge===sr&&(ge=ft(ge)),q(ge,C.ADD_ATTR,De))),_e(C,"ADD_URI_SAFE_ATTR")&&yt(C.ADD_URI_SAFE_ATTR)&&q(Xl,C.ADD_URI_SAFE_ATTR,De),_e(C,"FORBID_CONTENTS")&&yt(C.FORBID_CONTENTS)&&(Re===qn&&(Re=ft(Re)),q(Re,C.FORBID_CONTENTS,De)),_e(C,"ADD_FORBID_CONTENTS")&&yt(C.ADD_FORBID_CONTENTS)&&(Re===qn&&(Re=ft(Re)),q(Re,C.ADD_FORBID_CONTENTS,De)),yo&&(fe["#text"]=!0),ne&&q(fe,["html","head","body"]),fe.table&&(q(fe,["tbody"]),delete Hn.tbody),C.TRUSTED_TYPES_POLICY){if(typeof C.TRUSTED_TYPES_POLICY.createHTML!="function")throw gs('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof C.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw gs('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');S=C.TRUSTED_TYPES_POLICY,M=S.createHTML("")}else S===void 0&&(S=e_(u,o)),S!==null&&typeof M=="string"&&(M=S.createHTML(""));(H.uponSanitizeElement.length>0||H.uponSanitizeAttribute.length>0)&&fe===Un&&(fe=ft(fe)),H.uponSanitizeAttribute.length>0&&ge===sr&&(ge=ft(ge)),wt&&wt(C),Bo=C},Fm=q({},[...df,...mf,...HT]),Pm=q({},[...pf,...jT]),xM=function(C){let B=I(C);(!B||!B.tagName)&&(B={namespaceURI:bo,tagName:"template"});let T=hs(C.tagName),ee=hs(B.tagName);return eA[C.namespaceURI]?C.namespaceURI===ra?B.namespaceURI===Qr?T==="svg":B.namespaceURI===ta?T==="svg"&&(ee==="annotation-xml"||tA[ee]):!!Fm[T]:C.namespaceURI===ta?B.namespaceURI===Qr?T==="math":B.namespaceURI===ra?T==="math"&&rA[ee]:!!Pm[T]:C.namespaceURI===Qr?B.namespaceURI===ra&&!rA[ee]||B.namespaceURI===ta&&!tA[ee]?!1:!Pm[T]&&(hM[T]||!Fm[T]):!!(Ui==="application/xhtml+xml"&&eA[C.namespaceURI]):!1},cr=function(C){di(t.removed,{element:C});try{I(C).removeChild(C)}catch{h(C)}},Jn=function(C,B){try{di(t.removed,{attribute:B.getAttributeNode(C),from:B})}catch{di(t.removed,{attribute:null,from:B})}if(B.removeAttribute(C),C==="is")if(nt||ot)try{cr(B)}catch{}else try{B.setAttribute(C,"")}catch{}},Om=function(C){let B=null,T=null;if(Ce)C="<remove></remove>"+C;else{let Ee=SE(C,/^[\r\n\t ]+/);T=Ee&&Ee[0]}Ui==="application/xhtml+xml"&&bo===Qr&&(C='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+C+"</body></html>");let ee=S?S.createHTML(C):C;if(bo===Qr)try{B=new A().parseFromString(ee,Ui)}catch{}if(!B||!B.documentElement){B=D.createDocument(bo,"template",null);try{B.documentElement.innerHTML=Zl?M:ee}catch{}}let V=B.body||B.documentElement;return C&&T&&V.insertBefore(r.createTextNode(T),V.childNodes[0]||null),bo===Qr?O.call(B,ne?"html":"body")[0]:ne?B.documentElement:V},Gm=function(C){return L.call(C.ownerDocument||C,C,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Um=function(C){C.normalize();let B=L.call(C.ownerDocument||C,C,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null),T=B.nextNode();for(;T;){let ee=T.data;fi([Ve,ue,rt],V=>{ee=mi(ee,V," ")}),T.data=ee,T=B.nextNode()}},na=function(C){let B=w?w(C):null;return typeof B!="string"||De(B)!=="form"?!1:typeof C.nodeName!="string"||typeof C.textContent!="string"||typeof C.removeChild!="function"||C.attributes!==y(C)||typeof C.removeAttribute!="function"||typeof C.setAttribute!="function"||typeof C.namespaceURI!="string"||typeof C.insertBefore!="function"||typeof C.hasChildNodes!="function"||C.nodeType!==b(C)||C.childNodes!==x(C)},Hi=function(C){if(!b||typeof C!="object"||C===null)return!1;try{return b(C)===kr.documentFragment}catch{return!1}},oa=function(C){if(!b||typeof C!="object"||C===null)return!1;try{return typeof b(C)=="number"}catch{return!1}};function Yr(P,C,B){fi(P,T=>{T.call(t,C,B,Bo)})}let Hm=function(C){let B=null;if(Yr(H.beforeSanitizeElements,C,null),na(C))return cr(C),!0;let T=De(C.nodeName);if(Yr(H.uponSanitizeElement,C,{tagName:T,allowedTags:fe}),K&&C.hasChildNodes()&&!oa(C.firstElementChild)&&ct(/<[/\w!]/g,C.innerHTML)&&ct(/<[/\w!]/g,C.textContent)||K&&C.namespaceURI===Qr&&T==="style"&&oa(C.firstElementChild)||C.nodeType===kr.progressingInstruction||K&&C.nodeType===kr.comment&&ct(/<[/\w]/g,C.data))return cr(C),!0;if(Hn[T]||!(ar.tagCheck instanceof Function&&ar.tagCheck(T))&&!fe[T]){if(!Hn[T]&&qm(T)&&(ae.tagNameCheck instanceof RegExp&&ct(ae.tagNameCheck,T)||ae.tagNameCheck instanceof Function&&ae.tagNameCheck(T)))return!1;if(yo&&!Re[T]){let V=I(C),Ee=x(C);if(Ee&&V){let jt=Ee.length;for(let Mr=jt-1;Mr>=0;--Mr){let lr=m(Ee[Mr],!0);V.insertBefore(lr,E(C))}}}return cr(C),!0}return(b?b(C):C.nodeType)===kr.element&&!xM(C)||(T==="noscript"||T==="noembed"||T==="noframes")&&ct(/<\/no(script|embed|frames)/i,C.innerHTML)?(cr(C),!0):(Vr&&C.nodeType===kr.text&&(B=C.textContent,fi([Ve,ue,rt],V=>{B=mi(B,V," ")}),C.textContent!==B&&(di(t.removed,{element:C.cloneNode()}),C.textContent=B)),Yr(H.afterSanitizeElements,C,null),!1)},jm=function(C,B,T){if(jn[B]||Tt&&(B==="id"||B==="name")&&(T in r||T in IM))return!1;let ee=ge[B]||ar.attributeCheck instanceof Function&&ar.attributeCheck(B,C);if(!(Oi&&!jn[B]&&ct(vt,B))){if(!(Zs&&ct(Gn,B))){if(!ee||jn[B]){if(!(qm(C)&&(ae.tagNameCheck instanceof RegExp&&ct(ae.tagNameCheck,C)||ae.tagNameCheck instanceof Function&&ae.tagNameCheck(C))&&(ae.attributeNameCheck instanceof RegExp&&ct(ae.attributeNameCheck,B)||ae.attributeNameCheck instanceof Function&&ae.attributeNameCheck(B,C))||B==="is"&&ae.allowCustomizedBuiltInElements&&(ae.tagNameCheck instanceof RegExp&&ct(ae.tagNameCheck,T)||ae.tagNameCheck instanceof Function&&ae.tagNameCheck(T))))return!1}else if(!Xl[B]){if(!ct(Sr,mi(T,or,""))){if(!((B==="src"||B==="xlink:href"||B==="href")&&C!=="script"&&QE(T,"data:")===0&&ea[C])){if(!(An&&!ct(nr,mi(T,or,"")))){if(T)return!1}}}}}}return!0},yM=q({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),qm=function(C){return!yM[hs(C)]&&ct(ir,C)},Jm=function(C){Yr(H.beforeSanitizeAttributes,C,null);let B=C.attributes;if(!B||na(C))return;let T={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ge,forceKeepAttr:void 0},ee=B.length;for(;ee--;){let V=B[ee],Ee=V.name,jt=V.namespaceURI,Mr=V.value,lr=De(Ee),oA=Mr,Ye=Ee==="value"?oA:LT(oA);if(T.attrName=lr,T.attrValue=Ye,T.keepAttr=!0,T.forceKeepAttr=void 0,Yr(H.uponSanitizeAttribute,C,T),Ye=T.attrValue,un&&(lr==="id"||lr==="name")&&QE(Ye,fn)!==0&&(Jn(Ee,C),Ye=fn+Ye),K&&ct(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,Ye)){Jn(Ee,C);continue}if(lr==="attributename"&&SE(Ye,"href")){Jn(Ee,C);continue}if(T.forceKeepAttr)continue;if(!T.keepAttr){Jn(Ee,C);continue}if(!Gi&&ct(/\/>/i,Ye)){Jn(Ee,C);continue}Vr&&fi([Ve,ue,rt],Ym=>{Ye=mi(Ye,Ym," ")});let Vm=De(C.nodeName);if(!jm(Vm,lr,Ye)){Jn(Ee,C);continue}if(S&&typeof u=="object"&&typeof u.getAttributeType=="function"&&!jt)switch(u.getAttributeType(Vm,lr)){case"TrustedHTML":{Ye=S.createHTML(Ye);break}case"TrustedScriptURL":{Ye=S.createScriptURL(Ye);break}}if(Ye!==oA)try{jt?C.setAttributeNS(jt,Ee,Ye):C.setAttribute(Ee,Ye),na(C)?cr(C):BE(t.removed)}catch{Jn(Ee,C)}}Yr(H.afterSanitizeAttributes,C,null)},ia=function(C){let B=null,T=Gm(C);for(Yr(H.beforeSanitizeShadowDOM,C,null);B=T.nextNode();)if(Yr(H.uponSanitizeShadowNode,B,null),Hm(B),Jm(B),Hi(B.content)&&ia(B.content),(b?b(B):B.nodeType)===kr.element){let V=p?p(B):B.shadowRoot;Hi(V)&&(So(V),ia(V))}Yr(H.afterSanitizeShadowDOM,C,null)},So=function(C){let B=b?b(C):C.nodeType;if(B===kr.element){let V=p?p(C):C.shadowRoot;Hi(V)&&(So(V),ia(V))}let T=x?x(C):C.childNodes;if(!T)return;let ee=[];fi(T,V=>{di(ee,V)});for(let V of ee)So(V);if(B===kr.element){let V=w?w(C):null;if(typeof V=="string"&&De(V)==="template"){let Ee=C.content;Hi(Ee)&&So(Ee)}}};return t.sanitize=function(P){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},B=null,T=null,ee=null,V=null;if(Zl=!P,Zl&&(P="<!-->"),typeof P!="string"&&!oa(P)&&(P=GT(P),typeof P!="string"))throw gs("dirty is not a string, aborting");if(!t.isSupported)return P;if(he||nA(C),t.removed=[],typeof P=="string"&&(dn=!1),dn){let Mr=w?w(P):P.nodeName;if(typeof Mr=="string"){let lr=De(Mr);if(!fe[lr]||Hn[lr])throw gs("root node is forbidden and cannot be sanitized in-place")}if(na(P))throw gs("root node is clobbered and cannot be sanitized in-place");So(P)}else if(oa(P))B=Om("<!---->"),T=B.ownerDocument.importNode(P,!0),T.nodeType===kr.element&&T.nodeName==="BODY"||T.nodeName==="HTML"?B=T:B.appendChild(T),So(T);else{if(!nt&&!Vr&&!ne&&P.indexOf("<")===-1)return S&&be?S.createHTML(P):P;if(B=Om(P),!B)return nt?null:be?M:""}B&&Ce&&cr(B.firstChild);let Ee=Gm(dn?P:B);for(;ee=Ee.nextNode();)Hm(ee),Jm(ee),Hi(ee.content)&&ia(ee.content);if(dn)return Vr&&Um(P),P;if(nt){if(Vr&&Um(B),ot)for(V=v.call(B.ownerDocument);B.firstChild;)V.appendChild(B.firstChild);else V=B;return(ge.shadowroot||ge.shadowrootmode)&&(V=U.call(n,V,!0)),V}let jt=ne?B.outerHTML:B.innerHTML;return ne&&fe["!doctype"]&&B.ownerDocument&&B.ownerDocument.doctype&&B.ownerDocument.doctype.name&&ct(KT,B.ownerDocument.doctype.name)&&(jt="<!DOCTYPE "+B.ownerDocument.doctype.name+`>
|
|
28
|
-
`+jt),Vr&&fi([Ve,ue,rt],Mr=>{jt=mi(jt,Mr," ")}),S&&be?S.createHTML(jt):jt},t.setConfig=function(){let P=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};nA(P),he=!0},t.clearConfig=function(){Bo=null,he=!1},t.isValidAttribute=function(P,C,B){Bo||nA({});let T=De(P),ee=De(C);return jm(T,ee,B)},t.addHook=function(P,C){typeof C=="function"&&di(H[P],C)},t.removeHook=function(P,C){if(C!==void 0){let B=kT(H[P],C);return B===-1?void 0:NT(H[P],B,1)[0]}return BE(H[P])},t.removeHooks=function(P){H[P]=[]},t.removeAllHooks=function(){H=LE()},t}var RE,bE,TT,_T,DT,wt,Kt,pi,FE,hf,Cf,fi,kT,BE,di,NT,yt,hs,ff,SE,mi,QE,LT,RT,FT,ME,vE,_e,ps,ct,gs,TE,df,mf,HT,pf,jT,_E,DE,gf,kE,xc,qT,JT,VT,YT,WT,NE,zT,$T,KT,XT,kr,ZT,e_,LE,OE,GE=g(()=>{RE=Object.entries,bE=Object.setPrototypeOf,TT=Object.isFrozen,_T=Object.getPrototypeOf,DT=Object.getOwnPropertyDescriptor,wt=Object.freeze,Kt=Object.seal,pi=Object.create,FE=typeof Reflect<"u"&&Reflect,hf=FE.apply,Cf=FE.construct;wt||(wt=function(t){return t});Kt||(Kt=function(t){return t});hf||(hf=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)});Cf||(Cf=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)});fi=Oe(Array.prototype.forEach),kT=Oe(Array.prototype.lastIndexOf),BE=Oe(Array.prototype.pop),di=Oe(Array.prototype.push),NT=Oe(Array.prototype.splice),yt=Array.isArray,hs=Oe(String.prototype.toLowerCase),ff=Oe(String.prototype.toString),SE=Oe(String.prototype.match),mi=Oe(String.prototype.replace),QE=Oe(String.prototype.indexOf),LT=Oe(String.prototype.trim),RT=Oe(Number.prototype.toString),FT=Oe(Boolean.prototype.toString),ME=typeof BigInt>"u"?null:Oe(BigInt.prototype.toString),vE=typeof Symbol>"u"?null:Oe(Symbol.prototype.toString),_e=Oe(Object.prototype.hasOwnProperty),ps=Oe(Object.prototype.toString),ct=Oe(RegExp.prototype.test),gs=PT(TypeError);TE=wt(["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"]),df=wt(["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"]),mf=wt(["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"]),HT=wt(["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"]),pf=wt(["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"]),jT=wt(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),_E=wt(["#text"]),DE=wt(["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"]),gf=wt(["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"]),kE=wt(["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"]),xc=wt(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),qT=Kt(/{{[\w\W]*|^[\w\W]*}}/g),JT=Kt(/<%[\w\W]*|^[\w\W]*%>/g),VT=Kt(/\${[\w\W]*/g),YT=Kt(/^data-[\-\w.\u00B7-\uFFFF]+$/),WT=Kt(/^aria-[\-\w]+$/),NE=Kt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),zT=Kt(/^(?:\w+script|data):/i),$T=Kt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),KT=Kt(/^html$/i),XT=Kt(/^[a-z][.\w]*(-[.\w]+)+$/i),kr={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},ZT=function(){return typeof window>"u"?null:window},e_=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(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},LE=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};OE=PE()});var jE={};We(jE,{default:()=>HE});function HE({value:e,className:t}){let r=(0,yc.useRef)(null);return(0,yc.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,UE.jsx)("span",{ref:r,className:t,dangerouslySetInnerHTML:{__html:OE.sanitize(e)}})}var UE,yc,qE=g(()=>{UE=f(R(),1),yc=f(Q(),1);GE()});function o_(e){return n_.test(e)}function i_(e){return e.includes("<")||e.includes("://")}function s_({value:e,className:t}){let r=(0,En.useRef)(null);return(0,En.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,io.jsx)("span",{ref:r,className:t})}function In({html:e,className:t}){let r=`${e}`;if(!i_(r))return(0,io.jsx)("span",{className:t,children:r});let n=xE(r),o=o_(n)?n:(0,JE.default)(n);return typeof Element<"u"&&Element.prototype.setHTML?(0,io.jsx)(s_,{value:o,className:t}):(0,io.jsx)(En.Suspense,{fallback:(0,io.jsx)("span",{className:t}),children:(0,io.jsx)(r_,{value:o,className:t})})}var io,En,JE,t_,r_,n_,Ef=g(()=>{io=f(R(),1),En=f(Q(),1),JE=f(tC(),1);Cn();t_=["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"],r_=(0,En.lazy)(()=>Promise.resolve().then(()=>(qE(),jE))),n_=new RegExp(t_.map(e=>String.raw`<${e}\b[^>]*>`).join("|"),"i")});function a_({error:e}){let{classes:t}=WE();return(0,Pt.jsx)("div",{className:t.errorBox,children:(0,Pt.jsx)(X0,{error:e})})}var Pt,VE,dt,YE,WE,c_,zE,$E=g(()=>{Pt=f(R(),1),VE=f(Q(),1);PA();dt=f(k(),1),YE=f(G(),1);_A();Z0();Ef();xt();WE=te()(e=>({closeButton:{position:"absolute",right:e.spacing(1),top:e.spacing(1),color:e.palette.grey[500]},errorBox:{width:800,margin:40}}));c_=(0,YE.observer)(function(t){let{classes:r}=WE(),{titleNode:n,...o}=t,{title:i,header:s,children:a,onClose:c}=o,l=(0,dt.useTheme)();return(0,Pt.jsx)(dt.Dialog,{...o,children:(0,Pt.jsxs)(dt.ScopedCssBaseline,{children:[(0,VE.isValidElement)(s)?s:(0,Pt.jsxs)(dt.DialogTitle,{children:[n||(0,Pt.jsx)(In,{html:i||""}),c?(0,Pt.jsx)(dt.IconButton,{className:r.closeButton,onClick:A=>{c(A,"backdropClick")},children:(0,Pt.jsx)(ba,{})}):null]}),(0,Pt.jsx)(dt.Divider,{}),(0,Pt.jsx)(ko,{FallbackComponent:a_,children:(0,Pt.jsx)(dt.ThemeProvider,{theme:(0,dt.createTheme)(l,{components:{MuiInputBase:{styleOverrides:{input:{boxSizing:"content-box!important"}}}}}),children:a})})]})})}),zE=c_});function If({onClose:e,helpText:t,label:r}){return(0,so.jsx)(zE,{open:!0,onClose:e,title:"Help",titleNode:r?(0,so.jsxs)(so.Fragment,{children:["Help: ",r]}):void 0,onClick:n=>{n.stopPropagation()},onMouseDown:n=>{n.stopPropagation()},children:(0,so.jsx)(KE.DialogContent,{children:t})})}var so,KE,XE=g(()=>{so=f(R(),1),KE=f(k(),1);$E()});function xf({helpText:e,label:t}){let[r,n]=(0,wc.useState)(!1);return(0,tn.jsxs)(tn.Fragment,{children:[(0,tn.jsx)(ZE.IconButton,{size:"small",onClick:o=>{o.stopPropagation(),n(!0)},style:{marginLeft:4,padding:4},children:(0,tn.jsx)(Lg,{fontSize:"small"})}),r?(0,tn.jsxs)(wc.Suspense,{fallback:null,children:[(0,tn.jsx)(If,{helpText:e,label:t,onClose:o=>{o.stopPropagation(),n(!1)}})," "]}):null]})}var tn,wc,ZE,eI=g(()=>{tn=f(R(),1),wc=f(Q(),1);Rg();ZE=f(k(),1);XE()});var tI,rI,nI,l_,oI,iI=g(()=>{tI=f(R(),1),rI=f(Q(),1),nI=f(k(),1),l_=rI.forwardRef(function(t,r){return(0,tI.jsx)(nI.Menu,{...t,ref:r,style:{pointerEvents:"none",...t.style},slotProps:{...t.slotProps,paper:{style:{pointerEvents:"auto"}}}})}),oI=l_});var sI,aI,cI=g(()=>{"use client";Y();sI=f(R(),1),aI=(0,_.createSvgIcon)((0,sI.jsx)("path",{d:"m10 17 5-5-5-5z"}),"ArrowRight")});var lI,AI,uI=g(()=>{"use client";Y();lI=f(R(),1),AI=(0,_.createSvgIcon)((0,lI.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 fI,dI,mI=g(()=>{"use client";Y();fI=f(R(),1),dI=(0,_.createSvgIcon)((0,fI.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 pI,gI,hI=g(()=>{"use client";Y();pI=f(R(),1),gI=(0,_.createSvgIcon)((0,pI.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 CI,EI,II=g(()=>{"use client";Y();CI=f(R(),1),EI=(0,_.createSvgIcon)((0,CI.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 xI(e){let{classes:t}=A_(),{type:r}=e,n,o;"checked"in e&&({checked:n,disabled:o}=e);let i;switch(r){case"subMenu":{i=(0,xn.jsx)(aI,{color:"action"});break}case"checkbox":{n?i=(0,xn.jsx)(AI,{color:o?"inherit":void 0}):i=(0,xn.jsx)(dI,{color:"action"});break}case"radio":{n?i=(0,xn.jsx)(gI,{color:o?"inherit":void 0}):i=(0,xn.jsx)(EI,{color:"action"});break}}return(0,xn.jsx)("div",{className:t.menuItemEndDecoration,children:i})}var xn,bc,A_,yI=g(()=>{xn=f(R(),1);cI();uI();mI();hI();II();bc=f(k(),1);xt();A_=te()({menuItemEndDecoration:{padding:0,margin:0,height:16}})});function wI(e){if(typeof e=="string")return e.toLowerCase().replace(/\s+/g,"_")}function u_({title:e,Icon:t,inset:r,menuItems:n,onMenuItemClick:o,closeAfterItemClick:i,onCloseRoot:s,isOpen:a,onOpen:c,onClose:l}){let[A,u]=(0,yf.useState)(null),d=wI(e);return(0,ce.jsxs)(ce.Fragment,{children:[(0,ce.jsxs)(bt.MenuItem,{ref:u,"data-testid":d?`cascading-submenu-${d}`:void 0,onMouseOver:c,onFocus:c,onClick:c,children:[t?(0,ce.jsx)(bt.ListItemIcon,{children:(0,ce.jsx)(t,{})}):null,(0,ce.jsx)(bt.ListItemText,{primary:e,inset:r}),(0,ce.jsx)(Dg,{})]}),(0,ce.jsx)(oI,{open:a,anchorEl:A,onClose:l,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"},children:(0,ce.jsx)(bI,{closeAfterItemClick:i,onMenuItemClick:o,menuItems:n,onCloseRoot:s})})]})}function bI({onMenuItemClick:e,closeAfterItemClick:t,menuItems:r,onCloseRoot:n}){let[o,i]=(0,yf.useState)(),s=()=>{i(void 0)},a=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,ce.jsx)(ce.Fragment,{children:l.map((A,u)=>{if("subMenu"in A)return(0,ce.jsx)(u_,{title:A.label,Icon:A.icon,inset:a&&!A.icon,onMenuItemClick:e,menuItems:A.subMenu,closeAfterItemClick:t,onCloseRoot:n,isOpen:o===u,onOpen:()=>{i(u)},onClose:s},`subMenu-${A.label}-${u}`);if(A.type==="divider")return(0,ce.jsx)(bt.Divider,{component:"li"},`divider-${u}`);if(A.type==="subHeader")return(0,ce.jsx)(bt.ListSubheader,{children:A.label},`subHeader-${A.label}-${u}`);let d=A,m=d.helpText,h=d.type==="checkbox"||d.type==="radio",E=wI(d.label);return(0,ce.jsxs)(bt.MenuItem,{"data-testid":E?`cascading-menuitem-${E}`:void 0,disabled:!!d.disabled,onClick:x=>{t&&n(),e(x,d.onClick)},onMouseOver:s,children:[d.icon?(0,ce.jsx)(bt.ListItemIcon,{children:(0,ce.jsx)(d.icon,{})}):null,(0,ce.jsx)(bt.ListItemText,{primary:d.label,secondary:d.subLabel,inset:a&&!d.icon}),(0,ce.jsx)("div",{style:{flexGrow:1,minWidth:10}}),h?(0,ce.jsx)(xI,{type:d.type,checked:d.checked,disabled:d.disabled}):null,m?(0,ce.jsx)(xf,{helpText:m,label:d.label}):h&&c?(0,ce.jsx)("div",{style:{marginLeft:4,padding:4,width:28,height:28}}):null]},`${d.label}-${u}`)})})}function wf({onMenuItemClick:e,closeAfterItemClick:t=!0,menuItems:r,open:n,onClose:o,anchorEl:i,anchorOrigin:s,transformOrigin:a,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u,style:d}){let m=Array.isArray(r)?r:r();return(0,ce.jsx)(bt.Menu,{anchorEl:i,open:n,onClose:o,anchorOrigin:s,transformOrigin:a,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u??void 0,style:d,children:(0,ce.jsx)(bI,{menuItems:m,closeAfterItemClick:t,onMenuItemClick:e,onCloseRoot:o})})}var ce,yf,bt,BI=g(()=>{ce=f(R(),1),yf=f(Q(),1);kg();bt=f(k(),1);eI();iI();yI()});function f_({children:e,menuItems:t,closeAfterItemClick:r=!0,stopPropagation:n,disabled:o,setOpen:i,ButtonComponent:s=SI.IconButton,onClick:a,anchorOrigin:c,transformOrigin:l,marginThreshold:A,...u}){let[d,m]=(0,Bc.useState)(null),h=!!d;(0,Bc.useEffect)(()=>{i?.(h)},[h,i]);let E=o??(Array.isArray(t)&&t.length===0);return(0,ao.jsxs)(ao.Fragment,{children:[(0,ao.jsx)(s,{onClick:x=>{n&&x.stopPropagation(),m(x.currentTarget),a?.(x)},...u,disabled:E,children:e}),h?(0,ao.jsx)(wf,{open:h,onClose:()=>{m(null)},anchorEl:d,anchorOrigin:c,transformOrigin:l,marginThreshold:A,menuItems:t,closeAfterItemClick:r,onMenuItemClick:(x,I)=>{I()}}):null]})}var ao,Bc,SI,Lr,gi=g(()=>{ao=f(R(),1),Bc=f(Q(),1),SI=f(k(),1);BI();Lr=f_});var QI,MI,vI=g(()=>{"use client";Y();QI=f(R(),1),MI=(0,_.createSvgIcon)((0,QI.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 d_,hi,TI=g(()=>{d_={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"},hi=d_});var m_,Cs,_I=g(()=>{m_={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"},Cs=m_});var p_,Es,DI=g(()=>{p_={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"},Es=p_});var g_,Is,kI=g(()=>{g_={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"},Is=g_});var h_,yn,NI=g(()=>{h_={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"},yn=h_});var bf=g(()=>{TI();_I();DI();kI();NI()});var C_,co,Sc=g(()=>{bf();ma();hA();mn();da([pa]);C_={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:Es[500],C:Cs[500],G:Is[500],T:hi[500],U:hi[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"}},co=To(C_,([e,t])=>[e,To(t,([r,n])=>[r,it(n).toHex()])])});var Bf,LI,E_,RI,FI=g(()=>{Bf=f(Q(),1);gi();vI();LI=f(G(),1);Sc();E_=(0,LI.observer)(function({model:e}){let{colorSchemeName:t}=e;return Bf.default.createElement(Lr,{"data-testid":"color_scheme_menu",closeAfterItemClick:!0,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:Object.keys(co).map(r=>({label:r,type:"radio",checked:t===r,onClick:()=>{e.setColorSchemeName(r)}}))},Bf.default.createElement(MI,null))}),RI=E_});var PI,OI,GI=g(()=>{"use client";Y();PI=f(R(),1),OI=(0,_.createSvgIcon)((0,PI.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 UI,Qc,Sf=g(()=>{"use client";Y();UI=f(R(),1),Qc=(0,_.createSvgIcon)((0,UI.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 HI,jI,qI=g(()=>{"use client";Y();HI=f(R(),1),jI=(0,_.createSvgIcon)((0,HI.jsx)("path",{d:"M3 18h18v-2H3zm0-5h18v-2H3zm0-7v2h18V6z"}),"Menu")});var Qf,JI,VI=g(()=>{"use client";Y();Qf=f(R(),1),JI=(0,_.createSvgIcon)([(0,Qf.jsx)("circle",{cx:"12",cy:"12",r:"3.2"},"0"),(0,Qf.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 YI,Mc,Mf=g(()=>{"use client";Y();YI=f(R(),1),Mc=(0,_.createSvgIcon)((0,YI.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 WI,zI,$I=g(()=>{"use client";Y();WI=f(R(),1),zI=(0,_.createSvgIcon)((0,WI.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 KI,XI,ZI=g(()=>{"use client";Y();KI=f(R(),1),XI=(0,_.createSvgIcon)((0,KI.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 ex,tx,rx=g(()=>{"use client";Y();ex=f(R(),1),tx=(0,_.createSvgIcon)((0,ex.jsx)("path",{d:"M3 18h6v-2H3zM3 6v2h18V6zm0 7h12v-2H3z"}),"Sort")});var nx,ox,ix=g(()=>{"use client";Y();nx=f(R(),1),ox=(0,_.createSvgIcon)((0,nx.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 sx(e){return vf[Math.min(e,vf.length-1)]}var vf,Tf,_f=g(()=>{vf=[["#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"]];Tf=vf});var cx={};We(cx,{default:()=>w_});var me,ax,xs,vc,I_,x_,y_,w_,lx=g(()=>{me=f(Q(),1),ax=f(Qe(),1),xs=f(k(),1),vc=f(G(),1);_f();I_=(0,vc.observer)(function({model:e}){let{featureFilters:t}=e;return me.default.createElement("div",null,me.default.createElement(xs.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!0)}},"Toggle all on"),me.default.createElement(xs.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!1)}},"Toggle all off"))}),x_=(0,vc.observer)(function({model:e}){let{tidyInterProAnnotationTypes:t,featureFilters:r}=e,n=[...t.values()],o=sx(n.length-1);return me.default.createElement(me.default.Fragment,null,me.default.createElement(I_,{model:e}),me.default.createElement("table",null,me.default.createElement("thead",null,me.default.createElement("tr",null,me.default.createElement("td",null),me.default.createElement("td",null,"accession"),me.default.createElement("td",null,"name"),me.default.createElement("td",null,"description"))),me.default.createElement("tbody",null,n.map(({accession:i,name:s,description:a},c)=>me.default.createElement("tr",{key:i},me.default.createElement("td",null,me.default.createElement("input",{type:"checkbox",checked:r.get(i)??!1,onChange:()=>{e.setFilter(i,!e.featureFilters.get(i))}})),me.default.createElement("td",null,i),me.default.createElement("td",null,s),me.default.createElement("td",null,a),me.default.createElement("td",null,me.default.createElement("div",{style:{width:20,height:20,background:o[c]||"black"}})))))))}),y_=(0,vc.observer)(function({onClose:e,model:t}){return me.default.createElement(ax.Dialog,{onClose:()=>{e()},open:!0,title:"Feature filters",maxWidth:"xl"},me.default.createElement(xs.DialogContent,null,me.default.createElement(x_,{model:t})))}),w_=y_});async function ys(e,t,r=Ax.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 ux(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 Df(e,t){return(await ux(e,t)).text()}async function Tc(e,t){return(await ux(e,t)).json()}function fx(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 wn(e){return e instanceof DOMException&&e.name==="AbortError"}var Ax,_c=g(()=>{Ax=f(de(),1)});var px={};We(px,{default:()=>B_});var xe,dx,kf,Me,mx,b_,B_,gx=g(()=>{xe=f(Q(),1),dx=f(Qe(),1),kf=f(de(),1),Me=f(k(),1),mx=f(G(),1);_c();b_=(0,mx.observer)(function({handleClose:e,model:t}){let[r,n]=(0,xe.useState)(),[o,i]=(0,xe.useState)("file"),[s,a]=(0,xe.useState)("");return xe.default.createElement(dx.Dialog,{maxWidth:"xl",title:"Open protein domains from file",onClose:()=>{e()},open:!0},xe.default.createElement(Me.DialogContent,null,xe.default.createElement("div",null,xe.default.createElement(Me.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(Me.FormControl,{component:"fieldset"},xe.default.createElement(Me.RadioGroup,{value:o,onChange:c=>{i(c.target.value)}},xe.default.createElement(Me.FormControlLabel,{value:"url",control:xe.default.createElement(Me.Radio,null),label:"URL"}),xe.default.createElement(Me.FormControlLabel,{value:"file",control:xe.default.createElement(Me.Radio,null),label:"File"}))),o==="url"?xe.default.createElement("div",null,xe.default.createElement(Me.Typography,null,"Open a InterProScan JSON file remote URL"),xe.default.createElement(Me.TextField,{label:"URL",value:s,onChange:c=>{a(c.target.value)}})):null,o==="file"?xe.default.createElement("div",{style:{paddingTop:20}},xe.default.createElement(Me.Typography,null,"Open a InterProScan JSON file file from your local drive"),xe.default.createElement(Me.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(Me.DialogActions,null,xe.default.createElement(Me.Button,{variant:"contained",color:"primary",onClick:()=>{(async()=>{try{let c=r?JSON.parse(await r.text()):await Tc(s);t.setDomains(Object.fromEntries(c.results.map(l=>[l.xref[0].id,l]))),(0,kf.getSession)(t).notify("Loaded interproscan results","success")}catch(c){console.error(c),(0,kf.getSession)(t).notifyError(`${c}`,c)}finally{t.setStatus()}})(),e()}},"Open results")))}),B_=b_});var hx=g(()=>{});function Ci(e,t="node",r=0){let n=`${t}-${r}`;return{...e,id:n,name:e.name||n,children:e.children?.map((o,i)=>Ci(o,`${n}-${i}`,r+1))||[]}}var Nf=g(()=>{});var Ot,Ei=g(()=>{Ot=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 Ii(e){return e>=S_&&e<=Q_}var Cx,Ex,S_,Q_,Ix,xx,rn,Lf=g(()=>{Ei();Cx=65,Ex=90,S_=97,Q_=122,Ix=45,xx=46;rn=class extends Ot{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 kd(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var $I=h(()=>{});function XI(e){return e instanceof wl||e&&"closed"in e&&Jr(e.remove)&&Jr(e.add)&&Jr(e.unsubscribe)}function KI(e){Jr(e)?e():e.unsubscribe()}var wl,WG,ZI=h(()=>{sa();El();zI();$I();wl=(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 s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=_d(s),c=a.next();!c.done;c=a.next()){var l=c.value;l.remove(this)}}catch(E){t={error:E}}finally{try{c&&!c.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var A=this.initialTeardown;if(Jr(A))try{A()}catch(E){i=E instanceof Il?E.errors:[E]}var u=this._finalizers;if(u){this._finalizers=null;try{for(var f=_d(u),d=f.next();!d.done;d=f.next()){var g=d.value;try{KI(g)}catch(E){i=i??[],E instanceof Il?i=Vi(Vi([],qi(i)),qi(E.errors)):i.push(E)}}}catch(E){n={error:E}}finally{try{d&&!d.done&&(o=f.return)&&o.call(f)}finally{if(n)throw n.error}}}if(i)throw new Il(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)KI(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)&&kd(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&kd(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=(function(){var t=new e;return t.closed=!0,t})(),e})(),WG=wl.EMPTY});var Un,yl=h(()=>{Un={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var Ji,Dd=h(()=>{sa();Ji={setTimeout:function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var o=Ji.delegate;return o?.setTimeout?o.setTimeout.apply(o,Vi([e,t],qi(r))):setTimeout.apply(void 0,Vi([e,t],qi(r)))},clearTimeout:function(e){var t=Ji.delegate;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0}});function ew(e){Ji.setTimeout(function(){var t=Un.onUnhandledError;if(t)t(e);else throw e})}var tw=h(()=>{yl();Dd()});function Nd(){}var rw=h(()=>{});function ow(e){return Ld("E",void 0,e)}function iw(e){return Ld("N",e,void 0)}function Ld(e,t,r){return{kind:e,value:t,error:r}}var nw,sw=h(()=>{nw=(function(){return Ld("C",void 0,void 0)})()});function aw(e){Un.useDeprecatedSynchronousErrorHandling&&Rd&&(Rd.errorThrown=!0,Rd.error=e)}var Rd,cw=h(()=>{yl();Rd=null});function Fd(e,t){return WD.call(e,t)}function bl(e){Un.useDeprecatedSynchronousErrorHandling?aw(e):ew(e)}function $D(e){throw e}function Pd(e,t){var r=Un.onStoppedNotification;r&&Ji.setTimeout(function(){return r(e,t)})}var Od,WD,zD,Gd,KD,Ud=h(()=>{sa();El();ZI();yl();tw();rw();sw();Dd();cw();Od=(function(e){ia(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,XI(r)&&r.add(n)):n.destination=KD,n}return t.create=function(r,n,o){return new Gd(r,n,o)},t.prototype.next=function(r){this.isStopped?Pd(iw(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?Pd(ow(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?Pd(nw,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})(wl),WD=Function.prototype.bind;zD=(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){bl(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){bl(n)}else bl(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){bl(r)}},e})(),Gd=(function(e){ia(t,e);function t(r,n,o){var i=e.call(this)||this,s;if(Jr(r)||!r)s={next:r??void 0,error:n??void 0,complete:o??void 0};else{var a;i&&Un.useDeprecatedNextContext?(a=Object.create(r),a.unsubscribe=function(){return i.unsubscribe()},s={next:r.next&&Fd(r.next,a),error:r.error&&Fd(r.error,a),complete:r.complete&&Fd(r.complete,a)}):s=r}return i.destination=new zD(s),i}return t})(Od);KD={closed:!0,next:Nd,error:$D,complete:Nd}});function XD(e){return Jr(e?.lift)}function Sl(e){return function(t){if(XD(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 Hd=h(()=>{El()});function lw(e,t,r,n,o){return new ZD(e,t,r,n,o)}var ZD,Aw=h(()=>{sa();Ud();ZD=(function(e){ia(t,e);function t(r,n,o,i,s,a){var c=e.call(this,r)||this;return c.onFinalize=s,c.shouldUnsubscribe=a,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})(Od)});var uw,fw=h(()=>{Td();uw=xl(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});function jd(e,t){var r=typeof t=="object";return new Promise(function(n,o){var i=new Gd({next:function(s){n(s),i.unsubscribe()},error:o,complete:function(){r?n(t.defaultValue):o(new uw)}});e.subscribe(i)})}var dw=h(()=>{fw();Ud()});var mw=h(()=>{});function pw(e,t,r,n,o){return function(i,s){var a=r,c=t,l=0;i.subscribe(lw(s,function(A){var u=l++;c=a?e(c,A,u):(a=!0,A),n&&s.next(c)},o&&(function(){a&&s.next(c),s.complete()})))}}var gw=h(()=>{Aw()});function hw(e,t){return Sl(pw(e,t,arguments.length>=2,!1,!0))}var Cw=h(()=>{gw();Hd()});function qd(){return Sl(function(e,t){hw(eN,[])(e).subscribe(t)})}var eN,Ew=h(()=>{Cw();Hd();eN=function(e,t){return e.push(t),e}});var xw=h(()=>{dw();mw();Ew()});var Iw=h(()=>{});var ww=h(()=>{});function tN(){return yw||(yw=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function rN(){return bw||(bw=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}function nN(e){let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("success",i),e.removeEventListener("error",s)},i=()=>{r(Do(e.result)),o()},s=()=>{n(e.error),o()};e.addEventListener("success",i),e.addEventListener("error",s)});return Bl.set(t,e),t}function oN(e){if(Wd.has(e))return;let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("complete",i),e.removeEventListener("error",s),e.removeEventListener("abort",s)},i=()=>{r(),o()},s=()=>{n(e.error||new DOMException("AbortError","AbortError")),o()};e.addEventListener("complete",i),e.addEventListener("error",s),e.addEventListener("abort",s)});Wd.set(e,t)}function vw(e){zd=e(zd)}function iN(e){return rN().includes(e)?function(...t){return e.apply($d(this),t),Do(this.request)}:function(...t){return Do(e.apply($d(this),t))}}function sN(e){return typeof e=="function"?iN(e):(e instanceof IDBTransaction&&oN(e),Yd(e,tN())?new Proxy(e,zd):e)}function Do(e){if(e instanceof IDBRequest)return nN(e);if(Vd.has(e))return Vd.get(e);let t=sN(e);return t!==e&&(Vd.set(e,t),Bl.set(t,e)),t}function In(e,t,{blocked:r,upgrade:n,blocking:o,terminated:i}={}){let s=indexedDB.open(e,t),a=Do(s);return n&&s.addEventListener("upgradeneeded",c=>{n(Do(s.result),c.oldVersion,c.newVersion,Do(s.transaction),c)}),r&&s.addEventListener("blocked",c=>r(c.oldVersion,c.newVersion,c)),a.then(c=>{i&&c.addEventListener("close",()=>i()),o&&c.addEventListener("versionchange",l=>o(l.oldVersion,l.newVersion,l))}).catch(()=>{}),a}function Sw(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&typeof t=="string"))return;if(Jd.get(t))return Jd.get(t);let r=t.replace(/FromIndex$/,""),n=t!==r,o=cN.includes(r);if(!(r in(n?IDBIndex:IDBObjectStore).prototype)||!(o||aN.includes(r)))return;let i=async function(s,...a){let c=this.transaction(s,o?"readwrite":"readonly"),l=c.store;return n&&(l=l.index(a.shift())),(await Promise.all([l[r](...a),o&&c.done]))[0]};return Jd.set(t,i),i}async function*uN(...e){let t=this;if(t instanceof IDBCursor||(t=await t.openCursor(...e)),!t)return;t=t;let r=new Proxy(t,AN);for(Mw.set(r,t),Bl.set(r,$d(t));t;)yield r,t=await(Kd.get(r)||t.continue()),Kd.delete(r)}function Qw(e,t){return t===Symbol.asyncIterator&&Yd(e,[IDBIndex,IDBObjectStore,IDBCursor])||t==="iterate"&&Yd(e,[IDBIndex,IDBObjectStore])}var Yd,yw,bw,Wd,Vd,Bl,zd,$d,aN,cN,Jd,lN,Bw,Kd,Mw,AN,Yi=h(()=>{Yd=(e,t)=>t.some(r=>e instanceof r);Wd=new WeakMap,Vd=new WeakMap,Bl=new WeakMap;zd={get(e,t,r){if(e instanceof IDBTransaction){if(t==="done")return Wd.get(e);if(t==="store")return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return Do(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}};$d=e=>Bl.get(e);aN=["get","getKey","getAll","getAllKeys","count"],cN=["put","add","delete","clear"],Jd=new Map;vw(e=>({...e,get:(t,r,n)=>Sw(t,r)||e.get(t,r,n),has:(t,r)=>!!Sw(t,r)||e.has(t,r)}));lN=["continue","continuePrimaryKey","advance"],Bw={},Kd=new WeakMap,Mw=new WeakMap,AN={get(e,t){if(!lN.includes(t))return e[t];let r=Bw[t];return r||(r=Bw[t]=function(...n){Kd.set(this,Mw.get(this)[t](...n))}),r}};vw(e=>({...e,get(t,r,n){return Qw(t,r)?uN:e.get(t,r,n)},has(t,r){return Qw(t,r)||e.has(t,r)}}))});var _w=h(()=>{Yi()});var Ql,Tw=h(()=>{Ql=m(Yt(),1)});function Zd(e,t=10){let r=String(e),n=0;for(let o=0,i=r.length;o<i;o++)n+=mN[r.charCodeAt(o)]??pN;return n*t}function em(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 gN(e){let{uri:t,baseUri:r=""}=e,n;try{n=new URL(t,r).href}catch{n=t}return n}function tm(e){return mr(e)?pl(e)?gN(e):JSON.stringify(e):String(e)}function kw(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 Dw(e,t){let{padding:r=30,minWidth:n=80,fontSize:o=12,maxWidth:i=1e3,stripHTML:s=!1}=t||{};return rm(e.map(a=>tm(a)).map(a=>s?MI(a):a).map(a=>Zd(a,o)).map(a=>Math.min(Math.max(a+r,n),i)))}function rm(e,t=Number.NEGATIVE_INFINITY){let r=t;for(let n of e)r=Math.max(n,r);return r}function mr(e){return typeof e=="object"&&e!==null}var Xd,Wi,fN,dN,KU,XU,ZU,e9,mN,pN,Hn=h(()=>{Xd=m(_(),1);ra();Wi=m(Yt(),1),fN=m(BI(),1),dN=m(vI(),1);xd();Sd();Sd();LI();RI();FI();xd();VI();JI();YI();WI();Iw();ww();_I();TI();Tw();_w();KU=180/Math.PI,XU=Math.PI/180,ZU=/electron/i.test(typeof navigator<"u"?navigator.userAgent:""),e9=typeof jest>"u"?typeof window<"u"&&window.requestIdleCallback?window.requestIdleCallback:e=>setTimeout(()=>{e()},1):e=>{e()},mN=[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],pN=.5279276315789471});function Nw(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 hN(e){if(Array.isArray(e))return e}function CN(e,t){var r=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,o,i,s,a=[],c=!0,l=!1;try{if(i=(r=r.call(e)).next,t!==0)for(;!(c=(n=i.call(r)).done)&&(a.push(n.value),a.length!==t);c=!0);}catch(A){l=!0,o=A}finally{try{if(!c&&r.return!=null&&(s=r.return(),Object(s)!==s))return}finally{if(l)throw o}}return a}}function EN(){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 xN(e,t){return hN(e)||CN(e,t)||IN(e,t)||EN()}function IN(e,t){if(e){if(typeof e=="string")return Nw(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)?Nw(e,t):void 0}}function Je(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 cm(e,t,n)}}function _N(e){return function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return lm(e,r)}}function X(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Aa;if(Lw&&Lw(e,null),!qn(t))return e;let n=t.length;for(;n--;){let o=t[n];if(typeof o=="string"){let i=r(o);i!==o&&(wN(t)||(t[n]=i),o=i)}e[o]=!0}return e}function TN(e){for(let t=0;t<e.length;t++)st(e,t)||(e[t]=null);return e}function Nt(e){let t=$i(null);for(let n of Ww(e)){var r=xN(n,2);let o=r[0],i=r[1];st(e,o)&&(qn(i)?t[o]=TN(i):i&&typeof i=="object"&&i.constructor===Object?t[o]=Nt(i):t[o]=i)}return t}function kN(e){switch(typeof e){case"string":return e;case"number":return vN(e);case"boolean":return MN(e);case"bigint":return Ow?Ow(e):"0";case"symbol":return Gw?Gw(e):"Symbol()";case"undefined":return la(e);case"function":case"object":{if(e===null)return la(e);let t=e,r=Wr(t,"toString");if(typeof r=="function"){let n=r(t);return typeof n=="string"?n:la(n)}return la(e)}default:return la(e)}}function Wr(e,t){for(;e!==null;){let n=bN(e,t);if(n){if(n.get)return Je(n.get);if(typeof n.value=="function")return Je(n.value)}e=yN(e)}function r(){return null}return r}function DN(e){try{return mt(e,""),!0}catch{return!1}}function $w(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:WN(),t=N=>$w(N);if(t.version="3.4.11",t.removed=[],!e||!e.document||e.document.nodeType!==Yr.document||!e.Element)return t.isSupported=!1,t;let r=e.document,n=r,o=n.currentScript;e.DocumentFragment;let i=e.HTMLTemplateElement,s=e.Node,a=e.Element,c=e.NodeFilter,l=e.NamedNodeMap;l===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;let A=e.DOMParser,u=e.trustedTypes,f=a.prototype,d=Wr(f,"cloneNode"),g=Wr(f,"remove"),E=Wr(f,"nextSibling"),I=Wr(f,"childNodes"),x=Wr(f,"parentNode"),p=Wr(f,"shadowRoot"),w=Wr(f,"attributes"),y=s&&s.prototype?Wr(s.prototype,"nodeType"):null,S=s&&s.prototype?Wr(s.prototype,"nodeName"):null;if(typeof i=="function"){let N=r.createElement("template");N.content&&N.content.ownerDocument&&(r=N.content.ownerDocument)}let Q,b="",k,T=!1,v=0,M=function(){if(v>0)throw No('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(),v++;try{return Q.createHTML(C)}finally{v--}},P=function(C){M(),v++;try{return Q.createScriptURL(C)}finally{v--}},V=function(){return T||(k=zN(u,o),T=!0),k},J=r,W=J.implementation,Z=J.createNodeIterator,Et=J.createDocumentFragment,Pr=J.getElementsByTagName,nr=n.importNode,ee=Yw();t.isSupported=typeof Ww=="function"&&typeof x=="function"&&W&&W.createHTMLDocument!==void 0;let Gt=RN,Ut=FN,or=PN,et=ON,Or=GN,ln=UN,kn=HN,uu=qN,ys=Vw,we=null,Ka=X({},[...Uw,...om,...im,...sm,...Hw]),Me=null,Dn=X({},[...jw,...am,...qw,...vl]),ye=Object.seal($i(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}})),Zo=null,le=null,se=Object.seal($i(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),_e=!0,be=!0,Vt=!1,vt=!0,fe=!1,At=!0,Jt=!1,An=!1,ei=null,ti=null,xt=!1,It=!1,Nn=!1,ri=!1,ni=!0,Mg=!1,_g="user-content-",fu=!0,du=!1,oi={},Gr=null,mu=X({},["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"]),Tg=null,kg=X({},["audio","video","img","source","image","track"]),pu=null,Dg=X({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Xa="http://www.w3.org/1998/Math/MathML",Za="http://www.w3.org/2000/svg",Ur="http://www.w3.org/1999/xhtml",ii=Ur,gu=!1,hu=null,T_=X({},[Xa,Za,Ur],nm),Ng=pt(["mi","mo","mn","ms","mtext"]),Cu=X({},Ng),Lg=pt(["annotation-xml"]),Eu=X({},Lg),k_=X({},["title","style","font","a","script"]),bs=null,D_=["application/xhtml+xml","text/html"],N_="text/html",Oe=null,si=null,L_=r.createElement("form"),Rg=function(C){return C instanceof RegExp||C instanceof Function},xu=function(){let C=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(si&&si===C)return;(!C||typeof C!="object")&&(C={}),C=Nt(C),bs=D_.indexOf(C.PARSER_MEDIA_TYPE)===-1?N_:C.PARSER_MEDIA_TYPE,Oe=bs==="application/xhtml+xml"?nm:Aa,we=jn(C,"ALLOWED_TAGS",Ka,{transform:Oe}),Me=jn(C,"ALLOWED_ATTR",Dn,{transform:Oe}),hu=jn(C,"ALLOWED_NAMESPACES",T_,{transform:nm}),pu=jn(C,"ADD_URI_SAFE_ATTR",Dg,{transform:Oe,base:Dg}),Tg=jn(C,"ADD_DATA_URI_TAGS",kg,{transform:Oe,base:kg}),Gr=jn(C,"FORBID_CONTENTS",mu,{transform:Oe}),Zo=jn(C,"FORBID_TAGS",Nt({}),{transform:Oe}),le=jn(C,"FORBID_ATTR",Nt({}),{transform:Oe}),oi=st(C,"USE_PROFILES")?C.USE_PROFILES&&typeof C.USE_PROFILES=="object"?Nt(C.USE_PROFILES):C.USE_PROFILES:!1,_e=C.ALLOW_ARIA_ATTR!==!1,be=C.ALLOW_DATA_ATTR!==!1,Vt=C.ALLOW_UNKNOWN_PROTOCOLS||!1,vt=C.ALLOW_SELF_CLOSE_IN_ATTR!==!1,fe=C.SAFE_FOR_TEMPLATES||!1,At=C.SAFE_FOR_XML!==!1,Jt=C.WHOLE_DOCUMENT||!1,It=C.RETURN_DOM||!1,Nn=C.RETURN_DOM_FRAGMENT||!1,ri=C.RETURN_TRUSTED_TYPE||!1,xt=C.FORCE_BODY||!1,ni=C.SANITIZE_DOM!==!1,Mg=C.SANITIZE_NAMED_PROPS||!1,fu=C.KEEP_CONTENT!==!1,du=C.IN_PLACE||!1,ys=DN(C.ALLOWED_URI_REGEXP)?C.ALLOWED_URI_REGEXP:Vw,ii=typeof C.NAMESPACE=="string"?C.NAMESPACE:Ur,Cu=st(C,"MATHML_TEXT_INTEGRATION_POINTS")&&C.MATHML_TEXT_INTEGRATION_POINTS&&typeof C.MATHML_TEXT_INTEGRATION_POINTS=="object"?Nt(C.MATHML_TEXT_INTEGRATION_POINTS):X({},Ng),Eu=st(C,"HTML_INTEGRATION_POINTS")&&C.HTML_INTEGRATION_POINTS&&typeof C.HTML_INTEGRATION_POINTS=="object"?Nt(C.HTML_INTEGRATION_POINTS):X({},Lg);let B=st(C,"CUSTOM_ELEMENT_HANDLING")&&C.CUSTOM_ELEMENT_HANDLING&&typeof C.CUSTOM_ELEMENT_HANDLING=="object"?Nt(C.CUSTOM_ELEMENT_HANDLING):$i(null);if(ye=$i(null),st(B,"tagNameCheck")&&Rg(B.tagNameCheck)&&(ye.tagNameCheck=B.tagNameCheck),st(B,"attributeNameCheck")&&Rg(B.attributeNameCheck)&&(ye.attributeNameCheck=B.attributeNameCheck),st(B,"allowCustomizedBuiltInElements")&&typeof B.allowCustomizedBuiltInElements=="boolean"&&(ye.allowCustomizedBuiltInElements=B.allowCustomizedBuiltInElements),gt(ye),fe&&(be=!1),Nn&&(It=!0),oi&&(we=X({},Hw),Me=$i(null),oi.html===!0&&(X(we,Uw),X(Me,jw)),oi.svg===!0&&(X(we,om),X(Me,am),X(Me,vl)),oi.svgFilters===!0&&(X(we,im),X(Me,am),X(Me,vl)),oi.mathMl===!0&&(X(we,sm),X(Me,qw),X(Me,vl))),se.tagCheck=null,se.attributeCheck=null,st(C,"ADD_TAGS")&&(typeof C.ADD_TAGS=="function"?se.tagCheck=C.ADD_TAGS:qn(C.ADD_TAGS)&&(we===Ka&&(we=Nt(we)),X(we,C.ADD_TAGS,Oe))),st(C,"ADD_ATTR")&&(typeof C.ADD_ATTR=="function"?se.attributeCheck=C.ADD_ATTR:qn(C.ADD_ATTR)&&(Me===Dn&&(Me=Nt(Me)),X(Me,C.ADD_ATTR,Oe))),st(C,"ADD_URI_SAFE_ATTR")&&qn(C.ADD_URI_SAFE_ATTR)&&X(pu,C.ADD_URI_SAFE_ATTR,Oe),st(C,"FORBID_CONTENTS")&&qn(C.FORBID_CONTENTS)&&(Gr===mu&&(Gr=Nt(Gr)),X(Gr,C.FORBID_CONTENTS,Oe)),st(C,"ADD_FORBID_CONTENTS")&&qn(C.ADD_FORBID_CONTENTS)&&(Gr===mu&&(Gr=Nt(Gr)),X(Gr,C.ADD_FORBID_CONTENTS,Oe)),fu&&(we["#text"]=!0),Jt&&X(we,["html","head","body"]),we.table&&(X(we,["tbody"]),delete Zo.tbody),C.TRUSTED_TYPES_POLICY){if(typeof C.TRUSTED_TYPES_POLICY.createHTML!="function")throw No('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof C.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw No('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let D=Q;Q=C.TRUSTED_TYPES_POLICY;try{b=L("")}catch(H){throw Q=D,H}}else C.TRUSTED_TYPES_POLICY===null?(Q=void 0,b=""):(Q===void 0&&(Q=V()),Q&&typeof b=="string"&&(b=L("")));pt&&pt(C),si=C},Fg=X({},[...om,...im,...NN]),Pg=X({},[...sm,...LN]),R_=function(C,B,D){return B.namespaceURI===Ur?C==="svg":B.namespaceURI===Xa?C==="svg"&&(D==="annotation-xml"||Cu[D]):!!Fg[C]},F_=function(C,B,D){return B.namespaceURI===Ur?C==="math":B.namespaceURI===Za?C==="math"&&Eu[D]:!!Pg[C]},P_=function(C,B,D){return B.namespaceURI===Za&&!Eu[D]||B.namespaceURI===Xa&&!Cu[D]?!1:!Pg[C]&&(k_[C]||!Fg[C])},O_=function(C){let B=x(C);(!B||!B.tagName)&&(B={namespaceURI:ii,tagName:"template"});let D=Aa(C.tagName),H=Aa(B.tagName);return hu[C.namespaceURI]?C.namespaceURI===Za?R_(D,B,H):C.namespaceURI===Xa?F_(D,B,H):C.namespaceURI===Ur?P_(D,B,H):!!(bs==="application/xhtml+xml"&&hu[C.namespaceURI]):!1},Ln=function(C){zi(t.removed,{element:C});try{x(C).removeChild(C)}catch{if(g(C),!x(C))throw No("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Og=function(C){let B=I(C);if(B){let H=[];aa(B,Y=>{zi(H,Y)}),aa(H,Y=>{try{g(Y)}catch{}})}let D=w(C);if(D)for(let H=D.length-1;H>=0;--H){let Y=D[H],te=Y&&Y.name;if(typeof te=="string")try{C.removeAttribute(te)}catch{}}},mo=function(C,B){try{zi(t.removed,{attribute:B.getAttributeNode(C),from:B})}catch{zi(t.removed,{attribute:null,from:B})}if(B.removeAttribute(C),C==="is")if(It||Nn)try{Ln(B)}catch{}else try{B.setAttribute(C,"")}catch{}},G_=function(C){let B=w(C);if(B)for(let D=B.length-1;D>=0;--D){let H=B[D],Y=H&&H.name;if(!(typeof Y!="string"||Me[Oe(Y)]))try{C.removeAttribute(Y)}catch{}}},U_=function(C){let B=[C];for(;B.length>0;){let D=B.pop();(y?y(D):D.nodeType)===Yr.element&&G_(D);let Y=I(D);if(Y)for(let te=Y.length-1;te>=0;--te)B.push(Y[te])}},Gg=function(C){let B=null,D=null;if(xt)C="<remove></remove>"+C;else{let te=Fw(C,/^[\r\n\t ]+/);D=te&&te[0]}bs==="application/xhtml+xml"&&ii===Ur&&(C='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+C+"</body></html>");let H=Q?L(C):C;if(ii===Ur)try{B=new A().parseFromString(H,bs)}catch{}if(!B||!B.documentElement){B=W.createDocument(ii,"template",null);try{B.documentElement.innerHTML=gu?b:H}catch{}}let Y=B.body||B.documentElement;return C&&D&&Y.insertBefore(r.createTextNode(D),Y.childNodes[0]||null),ii===Ur?Pr.call(B,Jt?"html":"body")[0]:Jt?B.documentElement:Y},Ug=function(C){return Z.call(C.ownerDocument||C,C,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},ec=function(C){return C=ca(C,Gt," "),C=ca(C,Ut," "),C=ca(C,or," "),C},Iu=function(C){var B;C.normalize();let D=Z.call(C.ownerDocument||C,C,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null),H=D.nextNode();for(;H;)H.data=ec(H.data),H=D.nextNode();let Y=(B=C.querySelectorAll)===null||B===void 0?void 0:B.call(C,"template");Y&&aa(Y,te=>{ai(te.content)&&Iu(te.content)})},tc=function(C){let B=S?S(C):null;return typeof B!="string"||Oe(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!==I(C)},ai=function(C){if(!y||typeof C!="object"||C===null)return!1;try{return y(C)===Yr.documentFragment}catch{return!1}},Ss=function(C){if(!y||typeof C!="object"||C===null)return!1;try{return typeof y(C)=="number"}catch{return!1}};function un(N,C,B){N.length!==0&&aa(N,D=>{D.call(t,C,B,si)})}let H_=function(C,B){return!!(At&&C.hasChildNodes()&&!Ss(C.firstElementChild)&&mt(Jw,C.textContent)&&mt(Jw,C.innerHTML)||At&&C.namespaceURI===Ur&&B==="style"&&Ss(C.firstElementChild)||C.nodeType===Yr.processingInstruction||At&&C.nodeType===Yr.comment&&mt(VN,C.data))},j_=function(C,B){if(!Zo[B]&&qg(B)&&(ye.tagNameCheck instanceof RegExp&&mt(ye.tagNameCheck,B)||ye.tagNameCheck instanceof Function&&ye.tagNameCheck(B)))return!1;if(fu&&!Gr[B]){let D=x(C),H=I(C);if(H&&D){let Y=H.length;for(let te=Y-1;te>=0;--te){let tt=du?H[te]:d(H[te],!0);D.insertBefore(tt,E(C))}}}return Ln(C),!0},Hg=function(C){if(un(ee.beforeSanitizeElements,C,null),tc(C))return Ln(C),!0;let B=Oe(S?S(C):C.nodeName);if(un(ee.uponSanitizeElement,C,{tagName:B,allowedTags:we}),H_(C,B))return Ln(C),!0;if(Zo[B]||!(se.tagCheck instanceof Function&&se.tagCheck(B))&&!we[B])return j_(C,B);if((y?y(C):C.nodeType)===Yr.element&&!O_(C)||(B==="noscript"||B==="noembed"||B==="noframes")&&mt(JN,C.innerHTML))return Ln(C),!0;if(fe&&C.nodeType===Yr.text){let H=ec(C.textContent);C.textContent!==H&&(zi(t.removed,{element:C.cloneNode()}),C.textContent=H)}return un(ee.afterSanitizeElements,C,null),!1},jg=function(C,B,D){if(le[B]||ni&&(B==="id"||B==="name")&&(D in r||D in L_))return!1;let H=Me[B]||se.attributeCheck instanceof Function&&se.attributeCheck(B,C);if(!(be&&mt(et,B))){if(!(_e&&mt(Or,B))){if(H){if(!pu[B]){if(!mt(ys,ca(D,kn,""))){if(!((B==="src"||B==="xlink:href"||B==="href")&&C!=="script"&&Pw(D,"data:")===0&&Tg[C])){if(!(Vt&&!mt(ln,ca(D,kn,"")))){if(D)return!1}}}}}else if(!(qg(C)&&(ye.tagNameCheck instanceof RegExp&&mt(ye.tagNameCheck,C)||ye.tagNameCheck instanceof Function&&ye.tagNameCheck(C))&&(ye.attributeNameCheck instanceof RegExp&&mt(ye.attributeNameCheck,B)||ye.attributeNameCheck instanceof Function&&ye.attributeNameCheck(B,C))||B==="is"&&ye.allowCustomizedBuiltInElements&&(ye.tagNameCheck instanceof RegExp&&mt(ye.tagNameCheck,D)||ye.tagNameCheck instanceof Function&&ye.tagNameCheck(D))))return!1}}return!0},q_=X({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),qg=function(C){return!q_[Aa(C)]&&mt(uu,C)},V_=function(C,B,D,H){if(Q&&typeof u=="object"&&typeof u.getAttributeType=="function"&&!D)switch(u.getAttributeType(C,B)){case"TrustedHTML":return L(H);case"TrustedScriptURL":return P(H)}return H},J_=function(C,B,D,H){try{D?C.setAttributeNS(D,B,H):C.setAttribute(B,H),tc(C)?Ln(C):Rw(t.removed)}catch{mo(B,C)}},Vg=function(C){un(ee.beforeSanitizeAttributes,C,null);let B=C.attributes;if(!B||tc(C))return;let D={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Me,forceKeepAttr:void 0},H=B.length,Y=Oe(C.nodeName);for(;H--;){let te=B[H],tt=te.name,je=te.namespaceURI,ir=te.value,xr=Oe(tt),yu=ir,Mt=tt==="value"?yu:QN(yu);if(D.attrName=xr,D.attrValue=Mt,D.keepAttr=!0,D.forceKeepAttr=void 0,un(ee.uponSanitizeAttribute,C,D),Mt=D.attrValue,Mg&&(xr==="id"||xr==="name")&&Pw(Mt,_g)!==0&&(mo(tt,C),Mt=_g+Mt),At&&mt(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,Mt)){mo(tt,C);continue}if(xr==="attributename"&&Fw(Mt,"href")){mo(tt,C);continue}if(!D.forceKeepAttr){if(!D.keepAttr){mo(tt,C);continue}if(!vt&&mt(YN,Mt)){mo(tt,C);continue}if(fe&&(Mt=ec(Mt)),!jg(Y,xr,Mt)){mo(tt,C);continue}Mt=V_(Y,xr,je,Mt),Mt!==yu&&J_(C,tt,je,Mt)}}un(ee.afterSanitizeAttributes,C,null)},rc=function(C){let B=null,D=Ug(C);for(un(ee.beforeSanitizeShadowDOM,C,null);B=D.nextNode();)if(un(ee.uponSanitizeShadowNode,B,null),Hg(B),Vg(B),ai(B.content)&&rc(B.content),(y?y(B):B.nodeType)===Yr.element){let Y=p(B);ai(Y)&&(wu(Y),rc(Y))}un(ee.afterSanitizeShadowDOM,C,null)},wu=function(C){let B=[{node:C,shadow:null}];for(;B.length>0;){let D=B.pop();if(D.shadow){rc(D.shadow);continue}let H=D.node,te=(y?y(H):H.nodeType)===Yr.element,tt=I(H);if(tt)for(let je=tt.length-1;je>=0;--je)B.push({node:tt[je],shadow:null});if(te){let je=S?S(H):null;if(typeof je=="string"&&Oe(je)==="template"){let ir=H.content;ai(ir)&&B.push({node:ir,shadow:null})}}if(te){let je=p(H);ai(je)&&B.push({node:null,shadow:je},{node:je,shadow:null})}}};return t.sanitize=function(N){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},B=null,D=null,H=null,Y=null;if(gu=!N,gu&&(N="<!-->"),typeof N!="string"&&!Ss(N)&&(N=kN(N),typeof N!="string"))throw No("dirty is not a string, aborting");if(!t.isSupported)return N;An?(we=ei,Me=ti):xu(C),(ee.uponSanitizeElement.length>0||ee.uponSanitizeAttribute.length>0)&&(we=Nt(we)),ee.uponSanitizeAttribute.length>0&&(Me=Nt(Me)),t.removed=[];let te=du&&typeof N!="string"&&Ss(N);if(te){let ir=S?S(N):N.nodeName;if(typeof ir=="string"){let xr=Oe(ir);if(!we[xr]||Zo[xr])throw No("root node is forbidden and cannot be sanitized in-place")}if(tc(N))throw No("root node is clobbered and cannot be sanitized in-place");try{wu(N)}catch(xr){throw Og(N),xr}}else if(Ss(N))B=Gg("<!---->"),D=B.ownerDocument.importNode(N,!0),D.nodeType===Yr.element&&D.nodeName==="BODY"||D.nodeName==="HTML"?B=D:B.appendChild(D),wu(D);else{if(!It&&!fe&&!Jt&&N.indexOf("<")===-1)return Q&&ri?L(N):N;if(B=Gg(N),!B)return It?null:ri?b:""}B&&xt&&Ln(B.firstChild);let tt=Ug(te?N:B);try{for(;H=tt.nextNode();)Hg(H),Vg(H),ai(H.content)&&rc(H.content)}catch(ir){throw te&&Og(N),ir}if(te)return aa(t.removed,ir=>{ir.element&&U_(ir.element)}),fe&&Iu(N),N;if(It){if(fe&&Iu(B),Nn)for(Y=Et.call(B.ownerDocument);B.firstChild;)Y.appendChild(B.firstChild);else Y=B;return(Me.shadowroot||Me.shadowrootmode)&&(Y=nr.call(n,Y,!0)),Y}let je=Jt?B.outerHTML:B.innerHTML;return Jt&&we["!doctype"]&&B.ownerDocument&&B.ownerDocument.doctype&&B.ownerDocument.doctype.name&&mt(jN,B.ownerDocument.doctype.name)&&(je="<!DOCTYPE "+B.ownerDocument.doctype.name+`>
|
|
28
|
+
`+je),fe&&(je=ec(je)),Q&&ri?L(je):je},t.setConfig=function(){let N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};xu(N),An=!0,ei=we,ti=Me},t.clearConfig=function(){si=null,An=!1,ei=null,ti=null,Q=k,b=""},t.isValidAttribute=function(N,C,B){si||xu({});let D=Oe(N),H=Oe(C);return jg(D,H,B)},t.addHook=function(N,C){typeof C=="function"&&st(ee,N)&&zi(ee[N],C)},t.removeHook=function(N,C){if(st(ee,N)){if(C!==void 0){let B=SN(ee[N],C);return B===-1?void 0:BN(ee[N],B,1)[0]}return Rw(ee[N])}},t.removeHooks=function(N){st(ee,N)&&(ee[N]=[])},t.removeAllHooks=function(){ee=Yw()},t}var Ww,Lw,wN,yN,bN,pt,gt,$i,zw,cm,lm,aa,SN,Rw,zi,BN,qn,Aa,nm,Fw,ca,Pw,QN,vN,MN,Ow,Gw,st,la,mt,No,Uw,om,im,NN,sm,LN,Hw,jw,am,qw,vl,RN,FN,PN,ON,GN,Vw,UN,HN,jN,qN,Jw,VN,JN,YN,Yr,WN,zN,Yw,jn,Kw,Xw=h(()=>{Ww=Object.entries,Lw=Object.setPrototypeOf,wN=Object.isFrozen,yN=Object.getPrototypeOf,bN=Object.getOwnPropertyDescriptor,pt=Object.freeze,gt=Object.seal,$i=Object.create,zw=typeof Reflect<"u"&&Reflect,cm=zw.apply,lm=zw.construct;pt||(pt=function(t){return t});gt||(gt=function(t){return t});cm||(cm=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)});lm||(lm=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)});aa=Je(Array.prototype.forEach),SN=Je(Array.prototype.lastIndexOf),Rw=Je(Array.prototype.pop),zi=Je(Array.prototype.push),BN=Je(Array.prototype.splice),qn=Array.isArray,Aa=Je(String.prototype.toLowerCase),nm=Je(String.prototype.toString),Fw=Je(String.prototype.match),ca=Je(String.prototype.replace),Pw=Je(String.prototype.indexOf),QN=Je(String.prototype.trim),vN=Je(Number.prototype.toString),MN=Je(Boolean.prototype.toString),Ow=typeof BigInt>"u"?null:Je(BigInt.prototype.toString),Gw=typeof Symbol>"u"?null:Je(Symbol.prototype.toString),st=Je(Object.prototype.hasOwnProperty),la=Je(Object.prototype.toString),mt=Je(RegExp.prototype.test),No=_N(TypeError);Uw=pt(["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"]),om=pt(["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"]),im=pt(["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"]),NN=pt(["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"]),sm=pt(["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"]),LN=pt(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Hw=pt(["#text"]),jw=pt(["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"]),am=pt(["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"]),qw=pt(["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"]),vl=pt(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),RN=gt(/{{[\w\W]*|^[\w\W]*}}/g),FN=gt(/<%[\w\W]*|^[\w\W]*%>/g),PN=gt(/\${[\w\W]*/g),ON=gt(/^data-[\-\w.\u00B7-\uFFFF]+$/),GN=gt(/^aria-[\-\w]+$/),Vw=gt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),UN=gt(/^(?:\w+script|data):/i),HN=gt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),jN=gt(/^html$/i),qN=gt(/^[a-z][.\w]*(-[.\w]+)+$/i),Jw=gt(/<[/\w!]/g),VN=gt(/<[/\w]/g),JN=gt(/<\/no(script|embed|frames)/i),YN=gt(/\/>/i),Yr={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},WN=function(){return typeof window>"u"?null:window},zN=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(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},Yw=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},jn=function(t,r,n,o){return st(t,r)&&qn(t[r])?X(o.base?Nt(o.base):{},t[r],o.transform):n};Kw=$w()});var ty={};rt(ty,{default:()=>ey});function ey({value:e,className:t}){let r=(0,Ml.useRef)(null);return(0,Ml.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,Zw.jsx)("span",{ref:r,className:t,dangerouslySetInnerHTML:{__html:Kw.sanitize(e)}})}var Zw,Ml,ry=h(()=>{Zw=m(U(),1),Ml=m(_(),1);Xw()});function ZN(e){return XN.test(e)}function eL(e){return e.includes("<")||e.includes("://")}function tL({value:e,className:t}){let r=(0,Vn.useRef)(null);return(0,Vn.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,Lo.jsx)("span",{ref:r,className:t})}function Jn({html:e,className:t}){let r=`${e}`;if(!eL(r))return(0,Lo.jsx)("span",{className:t,children:r});let n=kw(r),o=ZN(n)?n:(0,ny.default)(n);return typeof Element<"u"&&Element.prototype.setHTML?(0,Lo.jsx)(tL,{value:o,className:t}):(0,Lo.jsx)(Vn.Suspense,{fallback:(0,Lo.jsx)("span",{className:t}),children:(0,Lo.jsx)(KN,{value:o,className:t})})}var Lo,Vn,ny,$N,KN,XN,Am=h(()=>{Lo=m(U(),1),Vn=m(_(),1),ny=m(ZE(),1);Hn();$N=["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"],KN=(0,Vn.lazy)(()=>Promise.resolve().then(()=>(ry(),ty))),XN=new RegExp($N.map(e=>String.raw`<${e}\b[^>]*>`).join("|"),"i")});function rL({error:e}){let{classes:t}=sy();return(0,Xt.jsx)("div",{className:t.errorBox,children:(0,Xt.jsx)($E,{error:e})})}var Xt,oy,yt,iy,sy,nL,ay,cy=h(()=>{Xt=m(U(),1),oy=m(_(),1);nf();yt=m(O(),1),iy=m(j(),1);$u();KE();Am();Dt();sy=ae()(e=>({closeButton:{position:"absolute",right:e.spacing(1),top:e.spacing(1),color:e.palette.grey[500]},errorBox:{width:800,margin:40}}));nL=(0,iy.observer)(function(t){let{classes:r}=sy(),{titleNode:n,...o}=t,{title:i,header:s,children:a,onClose:c}=o,l=(0,yt.useTheme)();return(0,Xt.jsx)(yt.Dialog,{...o,children:(0,Xt.jsxs)(yt.ScopedCssBaseline,{children:[(0,oy.isValidElement)(s)?s:(0,Xt.jsxs)(yt.DialogTitle,{children:[n||(0,Xt.jsx)(Jn,{html:i||""}),c?(0,Xt.jsx)(yt.IconButton,{className:r.closeButton,onClick:A=>{c(A,"backdropClick")},children:(0,Xt.jsx)(Ic,{})}):null]}),(0,Xt.jsx)(yt.Divider,{}),(0,Xt.jsx)(mi,{FallbackComponent:rL,children:(0,Xt.jsx)(yt.ThemeProvider,{theme:(0,yt.createTheme)(l,{components:{MuiInputBase:{styleOverrides:{input:{boxSizing:"content-box!important"}}}}}),children:a})})]})})}),ay=nL});function um({onClose:e,helpText:t,label:r}){return(0,Ro.jsx)(ay,{open:!0,onClose:e,title:"Help",titleNode:r?(0,Ro.jsxs)(Ro.Fragment,{children:["Help: ",r]}):void 0,onClick:n=>{n.stopPropagation()},onMouseDown:n=>{n.stopPropagation()},children:(0,Ro.jsx)(ly.DialogContent,{children:t})})}var Ro,ly,Ay=h(()=>{Ro=m(U(),1),ly=m(O(),1);cy()});function fm({helpText:e,label:t}){let[r,n]=(0,_l.useState)(!1);return(0,wn.jsxs)(wn.Fragment,{children:[(0,wn.jsx)(uy.IconButton,{size:"small",onClick:o=>{o.stopPropagation(),n(!0)},style:{marginLeft:4,padding:4},children:(0,wn.jsx)(D0,{fontSize:"small"})}),r?(0,wn.jsxs)(_l.Suspense,{fallback:null,children:[(0,wn.jsx)(um,{helpText:e,label:t,onClose:o=>{o.stopPropagation(),n(!1)}})," "]}):null]})}var wn,_l,uy,fy=h(()=>{wn=m(U(),1),_l=m(_(),1);N0();uy=m(O(),1);Ay()});var dy,my,py,oL,gy,hy=h(()=>{dy=m(U(),1),my=m(_(),1),py=m(O(),1),oL=my.forwardRef(function(t,r){return(0,dy.jsx)(py.Menu,{...t,ref:r,style:{pointerEvents:"none",...t.style},slotProps:{...t.slotProps,paper:{style:{pointerEvents:"auto"}}}})}),gy=oL});var Cy,Ey,xy=h(()=>{"use client";$();Cy=m(U(),1),Ey=(0,F.createSvgIcon)((0,Cy.jsx)("path",{d:"m10 17 5-5-5-5z"}),"ArrowRight")});var Iy,wy,yy=h(()=>{"use client";$();Iy=m(U(),1),wy=(0,F.createSvgIcon)((0,Iy.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 by,Sy,By=h(()=>{"use client";$();by=m(U(),1),Sy=(0,F.createSvgIcon)((0,by.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 Qy,vy,My=h(()=>{"use client";$();Qy=m(U(),1),vy=(0,F.createSvgIcon)((0,Qy.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 _y,Ty,ky=h(()=>{"use client";$();_y=m(U(),1),Ty=(0,F.createSvgIcon)((0,_y.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 Dy(e){let{classes:t}=iL(),{type:r}=e,n,o;"checked"in e&&({checked:n,disabled:o}=e);let i;switch(r){case"subMenu":{i=(0,Yn.jsx)(Ey,{color:"action"});break}case"checkbox":{n?i=(0,Yn.jsx)(wy,{color:o?"inherit":void 0}):i=(0,Yn.jsx)(Sy,{color:"action"});break}case"radio":{n?i=(0,Yn.jsx)(vy,{color:o?"inherit":void 0}):i=(0,Yn.jsx)(Ty,{color:"action"});break}}return(0,Yn.jsx)("div",{className:t.menuItemEndDecoration,children:i})}var Yn,Tl,iL,Ny=h(()=>{Yn=m(U(),1);xy();yy();By();My();ky();Tl=m(O(),1);Dt();iL=ae()({menuItemEndDecoration:{padding:0,margin:0,height:16}})});function Ly(e){if(typeof e=="string")return e.toLowerCase().replace(/\s+/g,"_")}function sL({title:e,Icon:t,inset:r,menuItems:n,onMenuItemClick:o,closeAfterItemClick:i,onCloseRoot:s,isOpen:a,onOpen:c,onClose:l}){let[A,u]=(0,dm.useState)(null),f=Ly(e);return(0,me.jsxs)(me.Fragment,{children:[(0,me.jsxs)(Lt.MenuItem,{ref:u,"data-testid":f?`cascading-submenu-${f}`:void 0,onMouseOver:c,onFocus:c,onClick:c,children:[t?(0,me.jsx)(Lt.ListItemIcon,{children:(0,me.jsx)(t,{})}):null,(0,me.jsx)(Lt.ListItemText,{primary:e,inset:r}),(0,me.jsx)(_0,{})]}),(0,me.jsx)(gy,{open:a,anchorEl:A,onClose:l,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"},children:(0,me.jsx)(Ry,{closeAfterItemClick:i,onMenuItemClick:o,menuItems:n,onCloseRoot:s})})]})}function Ry({onMenuItemClick:e,closeAfterItemClick:t,menuItems:r,onCloseRoot:n}){let[o,i]=(0,dm.useState)(),s=()=>{i(void 0)},a=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,me.jsx)(me.Fragment,{children:l.map((A,u)=>{if("subMenu"in A)return(0,me.jsx)(sL,{title:A.label,Icon:A.icon,inset:a&&!A.icon,onMenuItemClick:e,menuItems:A.subMenu,closeAfterItemClick:t,onCloseRoot:n,isOpen:o===u,onOpen:()=>{i(u)},onClose:s},`subMenu-${A.label}-${u}`);if(A.type==="divider")return(0,me.jsx)(Lt.Divider,{component:"li"},`divider-${u}`);if(A.type==="subHeader")return(0,me.jsx)(Lt.ListSubheader,{children:A.label},`subHeader-${A.label}-${u}`);let f=A,d=f.helpText,g=f.type==="checkbox"||f.type==="radio",E=Ly(f.label);return(0,me.jsxs)(Lt.MenuItem,{"data-testid":E?`cascading-menuitem-${E}`:void 0,disabled:!!f.disabled,onClick:I=>{t&&n(),e(I,f.onClick)},onMouseOver:s,children:[f.icon?(0,me.jsx)(Lt.ListItemIcon,{children:(0,me.jsx)(f.icon,{})}):null,(0,me.jsx)(Lt.ListItemText,{primary:f.label,secondary:f.subLabel,inset:a&&!f.icon}),(0,me.jsx)("div",{style:{flexGrow:1,minWidth:10}}),g?(0,me.jsx)(Dy,{type:f.type,checked:f.checked,disabled:f.disabled}):null,d?(0,me.jsx)(fm,{helpText:d,label:f.label}):g&&c?(0,me.jsx)("div",{style:{marginLeft:4,padding:4,width:28,height:28}}):null]},`${f.label}-${u}`)})})}function mm({onMenuItemClick:e,closeAfterItemClick:t=!0,menuItems:r,open:n,onClose:o,anchorEl:i,anchorOrigin:s,transformOrigin:a,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u,style:f}){let d=Array.isArray(r)?r:r();return(0,me.jsx)(Lt.Menu,{anchorEl:i,open:n,onClose:o,anchorOrigin:s,transformOrigin:a,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u??void 0,style:f,children:(0,me.jsx)(Ry,{menuItems:d,closeAfterItemClick:t,onMenuItemClick:e,onCloseRoot:o})})}var me,dm,Lt,Fy=h(()=>{me=m(U(),1),dm=m(_(),1);T0();Lt=m(O(),1);fy();hy();Ny()});function aL({children:e,menuItems:t,closeAfterItemClick:r=!0,stopPropagation:n,disabled:o,setOpen:i,ButtonComponent:s=Py.IconButton,onClick:a,anchorOrigin:c,transformOrigin:l,marginThreshold:A,...u}){let[f,d]=(0,kl.useState)(null),g=!!f;(0,kl.useEffect)(()=>{i?.(g)},[g,i]);let E=o??(Array.isArray(t)&&t.length===0);return(0,Fo.jsxs)(Fo.Fragment,{children:[(0,Fo.jsx)(s,{onClick:I=>{n&&I.stopPropagation(),d(I.currentTarget),a?.(I)},...u,disabled:E,children:e}),g?(0,Fo.jsx)(mm,{open:g,onClose:()=>{d(null)},anchorEl:f,anchorOrigin:c,transformOrigin:l,marginThreshold:A,menuItems:t,closeAfterItemClick:r,onMenuItemClick:(I,x)=>{x()}}):null]})}var Fo,kl,Py,zr,Ki=h(()=>{Fo=m(U(),1),kl=m(_(),1),Py=m(O(),1);Fy();zr=aL});var Oy,Gy,Uy=h(()=>{"use client";$();Oy=m(U(),1),Gy=(0,F.createSvgIcon)((0,Oy.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 cL,Xi,Hy=h(()=>{cL={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"},Xi=cL});var lL,ua,jy=h(()=>{lL={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"},ua=lL});var AL,fa,qy=h(()=>{AL={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"},fa=AL});var uL,da,Vy=h(()=>{uL={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"},da=uL});var fL,Wn,Jy=h(()=>{fL={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"},Wn=fL});var pm=h(()=>{Hy();jy();qy();Vy();Jy()});var dL,Po,Dl=h(()=>{pm();uc();Ru();Rn();Ac([fc]);dL={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:fa[500],C:ua[500],G:da[500],T:Xi[500],U:Xi[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"}},Po=ui(dL,([e,t])=>[e,ui(t,([r,n])=>[r,ut(n).toHex()])])});var gm,Yy,mL,Wy,zy=h(()=>{gm=m(_(),1);Ki();Uy();Yy=m(j(),1);Dl();mL=(0,Yy.observer)(function({model:e}){let{colorSchemeName:t}=e;return gm.default.createElement(zr,{"data-testid":"color_scheme_menu",closeAfterItemClick:!0,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:Object.keys(Po).map(r=>({label:r,type:"radio",checked:t===r,onClick:()=>{e.setColorSchemeName(r)}}))},gm.default.createElement(Gy,null))}),Wy=mL});var $y,Ky,Xy=h(()=>{"use client";$();$y=m(U(),1),Ky=(0,F.createSvgIcon)((0,$y.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 Zy,Nl,hm=h(()=>{"use client";$();Zy=m(U(),1),Nl=(0,F.createSvgIcon)((0,Zy.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 eb,tb,rb=h(()=>{"use client";$();eb=m(U(),1),tb=(0,F.createSvgIcon)((0,eb.jsx)("path",{d:"M3 18h18v-2H3zm0-5h18v-2H3zm0-7v2h18V6z"}),"Menu")});var Cm,nb,ob=h(()=>{"use client";$();Cm=m(U(),1),nb=(0,F.createSvgIcon)([(0,Cm.jsx)("circle",{cx:"12",cy:"12",r:"3.2"},"0"),(0,Cm.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 ib,Ll,Em=h(()=>{"use client";$();ib=m(U(),1),Ll=(0,F.createSvgIcon)((0,ib.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 sb,ab,cb=h(()=>{"use client";$();sb=m(U(),1),ab=(0,F.createSvgIcon)((0,sb.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 lb,Ab,ub=h(()=>{"use client";$();lb=m(U(),1),Ab=(0,F.createSvgIcon)((0,lb.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 fb,db,mb=h(()=>{"use client";$();fb=m(U(),1),db=(0,F.createSvgIcon)((0,fb.jsx)("path",{d:"M3 18h6v-2H3zM3 6v2h18V6zm0 7h12v-2H3z"}),"Sort")});var pb,gb,hb=h(()=>{"use client";$();pb=m(U(),1),gb=(0,F.createSvgIcon)((0,pb.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 Cb(e){return xm[Math.min(e,xm.length-1)]}var xm,Im,wm=h(()=>{xm=[["#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"]];Im=xm});var xb={};rt(xb,{default:()=>CL});var xe,Eb,ma,Rl,pL,gL,hL,CL,Ib=h(()=>{xe=m(_(),1),Eb=m(Ne(),1),ma=m(O(),1),Rl=m(j(),1);wm();pL=(0,Rl.observer)(function({model:e}){let{featureFilters:t}=e;return xe.default.createElement("div",null,xe.default.createElement(ma.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!0)}},"Toggle all on"),xe.default.createElement(ma.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!1)}},"Toggle all off"))}),gL=(0,Rl.observer)(function({model:e}){let{tidyInterProAnnotationTypes:t,featureFilters:r}=e,n=[...t.values()],o=Cb(n.length-1);return xe.default.createElement(xe.default.Fragment,null,xe.default.createElement(pL,{model:e}),xe.default.createElement("table",null,xe.default.createElement("thead",null,xe.default.createElement("tr",null,xe.default.createElement("td",null),xe.default.createElement("td",null,"accession"),xe.default.createElement("td",null,"name"),xe.default.createElement("td",null,"description"))),xe.default.createElement("tbody",null,n.map(({accession:i,name:s,description:a},c)=>xe.default.createElement("tr",{key:i},xe.default.createElement("td",null,xe.default.createElement("input",{type:"checkbox",checked:r.get(i)??!1,onChange:()=>{e.setFilter(i,!e.featureFilters.get(i))}})),xe.default.createElement("td",null,i),xe.default.createElement("td",null,s),xe.default.createElement("td",null,a),xe.default.createElement("td",null,xe.default.createElement("div",{style:{width:20,height:20,background:o[c]||"black"}})))))))}),hL=(0,Rl.observer)(function({onClose:e,model:t}){return xe.default.createElement(Eb.Dialog,{onClose:()=>{e()},open:!0,title:"Feature filters",maxWidth:"xl"},xe.default.createElement(ma.DialogContent,null,xe.default.createElement(gL,{model:t})))}),CL=hL});async function pa(e,t,r=wb.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 yb(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 ym(e,t){return(await yb(e,t)).text()}async function Fl(e,t){return(await yb(e,t)).json()}function bb(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 zn(e){return e instanceof DOMException&&e.name==="AbortError"}var wb,Pl=h(()=>{wb=m(he(),1)});var Qb={};rt(Qb,{default:()=>xL});var Be,Sb,bm,Re,Bb,EL,xL,vb=h(()=>{Be=m(_(),1),Sb=m(Ne(),1),bm=m(he(),1),Re=m(O(),1),Bb=m(j(),1);Pl();EL=(0,Bb.observer)(function({handleClose:e,model:t}){let[r,n]=(0,Be.useState)(),[o,i]=(0,Be.useState)("file"),[s,a]=(0,Be.useState)("");return Be.default.createElement(Sb.Dialog,{maxWidth:"xl",title:"Open protein domains from file",onClose:()=>{e()},open:!0},Be.default.createElement(Re.DialogContent,null,Be.default.createElement("div",null,Be.default.createElement(Re.Typography,null,"Open a JSON file of InterProScan results that you run remotely on EBI servers or locally"),Be.default.createElement("div",{style:{display:"flex",margin:30}},Be.default.createElement(Re.FormControl,{component:"fieldset"},Be.default.createElement(Re.RadioGroup,{value:o,onChange:c=>{i(c.target.value)}},Be.default.createElement(Re.FormControlLabel,{value:"url",control:Be.default.createElement(Re.Radio,null),label:"URL"}),Be.default.createElement(Re.FormControlLabel,{value:"file",control:Be.default.createElement(Re.Radio,null),label:"File"}))),o==="url"?Be.default.createElement("div",null,Be.default.createElement(Re.Typography,null,"Open a InterProScan JSON file remote URL"),Be.default.createElement(Re.TextField,{label:"URL",value:s,onChange:c=>{a(c.target.value)}})):null,o==="file"?Be.default.createElement("div",{style:{paddingTop:20}},Be.default.createElement(Re.Typography,null,"Open a InterProScan JSON file file from your local drive"),Be.default.createElement(Re.Button,{variant:"outlined",component:"label"},"Choose File",Be.default.createElement("input",{type:"file",hidden:!0,onChange:({target:c})=>{let l=c.files?.[0];l&&n(l)}}))):null))),Be.default.createElement(Re.DialogActions,null,Be.default.createElement(Re.Button,{variant:"contained",color:"primary",onClick:()=>{(async()=>{try{let c=r?JSON.parse(await r.text()):await Fl(s);t.setDomains(Object.fromEntries(c.results.map(l=>[l.xref[0].id,l]))),(0,bm.getSession)(t).notify("Loaded interproscan results","success")}catch(c){console.error(c),(0,bm.getSession)(t).notifyError(`${c}`,c)}finally{t.setStatus()}})(),e()}},"Open results")))}),xL=EL});var Mb=h(()=>{});function Zi(e,t="node",r=0){let n=`${t}-${r}`;return{...e,id:n,name:e.name||n,children:e.children?.map((o,i)=>Zi(o,`${n}-${i}`,r+1))||[]}}var Sm=h(()=>{});var Zt,es=h(()=>{Zt=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 ts(e){return e>=IL&&e<=wL}var _b,Tb,IL,wL,kb,Db,yn,Bm=h(()=>{es();_b=65,Tb=90,IL=97,wL=122,kb=45,Db=46;yn=class extends Zt{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 s=o.slice(0,i).replace(/\r$/,""),a=s.indexOf(" "),c=a===-1?s:s.slice(0,a);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 s of t.split(">")){if(!/\S/.test(s))continue;let a=s.indexOf(`
|
|
30
|
-
`);if(a===-1)continue;let c=s.slice(a+1).replaceAll(/\s/g,"");c&&r.push(c)}if(r.length<2||new Set(r.map(s=>s.length)).size===1)return!1;let n=!1,o=-1,i=!0;for(let s of r){let a=0;for(let c=0;c<s.length;c++){let l=s.charCodeAt(c);
|
|
31
|
-
`)[Symbol.iterator]();return
|
|
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[,s,a,c,l,A,u,d
|
|
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[,s,a,c,l,A,u,d
|
|
34
|
-
`);if(i===-1)continue;let s=o.slice(0,i).replace(/\r$/,""),a=s.indexOf(" "),c=a===-1?s:s.slice(0,a);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
|
|
35
|
-
`);for(let s of i){let a;if(
|
|
36
|
-
`).map(t=>t.trim()).filter(t=>!!t&&!t.startsWith("#")).map(t=>{let r=t.split(" "),[n,o,i,s,a,c,l,A]=r,u=r[8];return{seq_id:n??"",source:o??"",type:i??"",start:Number(s)||0,end:Number(a)||0,score:Number(c)||0,strand:l??".",phase:A??".",...
|
|
30
|
+
`);if(a===-1)continue;let c=s.slice(a+1).replaceAll(/\s/g,"");c&&r.push(c)}if(r.length<2||new Set(r.map(s=>s.length)).size===1)return!1;let n=!1,o=-1,i=!0;for(let s of r){let a=0;for(let c=0;c<s.length;c++){let l=s.charCodeAt(c);ts(l)?n=!0:(l>=_b&&l<=Tb||l===kb)&&a++}o===-1?o=a:a!==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=[],f=[],d=0;for(;d<A.length;){let g=A.charCodeAt(d);if(g>=_b&&g<=Tb||g===kb){u.push(A[d]);let E="",I=d+1;for(;I<A.length;){let x=A.charCodeAt(I);if(ts(x)||x===Db)E+=A[I],I++;else break}f.push(E),d=I}else if(g===Db)d++;else if(ts(g)){let E="";for(;d<A.length&&ts(A.charCodeAt(d));)E+=A[d],d++;u.push(""),f.push(E)}else d++}o.push(u),i.push(f)}let s=Math.max(...o.map(l=>l.length),0),a=new Array(s).fill(0);for(let l=0;l<n;l++){let A=i[l];for(let u=0;u<A.length;u++){let f=0;for(let d of A[u])ts(d.charCodeAt(0))&&f++;f>a[u]&&(a[u]=f)}}let c={};for(let l=0;l<n;l++){let A=o[l],u=i[l],f=[];for(let d=0;d<s;d++){let g=a[d];if(d<A.length){let E=A[d],I=u[d]||"";f.push(E||"-");let x="";for(let w of I)ts(w.charCodeAt(0))&&(x+=w.toUpperCase());f.push(x);let p=g-x.length;p>0&&f.push(".".repeat(p))}else f.push("-"),g>0&&f.push(".".repeat(g))}c[r[l]]=f.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 yL(e){let t=/\(?(\d+(\.\d+)+)\)?/.exec(e);return t&&t.length>1?t[1]:""}function Lb(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=yL(e);return{info:e,version:r}}function Ol(e){let t=e.next();for(;!t.done&&t.value.trim()==="";)t=e.next();return t.value}function bL(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 Nb(e){let t=Ol(e),r=[],n="";if(!t)return;for(;t;)t.startsWith(" ")?n=t:r.push(t),t=e.next().value;let[o,i]=bL(r[0]),a=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:a,seqs:c,consensus:l}}function Rb(e){let t,r=Nb(e);if(r!==void 0)for(;t=Nb(e);){for(let n=0;n<t.seqs.length;n++)r.seqs[n]+=t.seqs[n];r.consensus+=t.consensus}return r}var Qm=h(()=>{});var Fb=h(()=>{Qm()});function SL(e){let t=Ol(e);if(!t)throw new Error("Empty file received");let r=Lb(t),n=Rb(e);if(n===void 0)throw new Error("No blocks parsed");let o=n.seqs.map((s,a)=>({id:n.ids[a],seq:s})),{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 Pb(e){let t=e.split(`
|
|
31
|
+
`)[Symbol.iterator]();return SL(t)}var Ob=h(()=>{Fb();Qm()});var $n,vm=h(()=>{Ob();es();$n=class extends Zt{MSA;constructor(t){super(),this.MSA=Pb(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 Gb(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[,s,a,c,l,A,u,f,d]=i.split(" ");return{species:s,protein:a,chr:c,start:+l,end:+A,strand:+u,geneId:f,unknown:d,seq:""}});for(let i of n)for(let s=0;s<r.length;s++)o[s].seq+=i[s];return o}function Gl(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[,s,a,c,l,A,u,f,d]=i.split(" ");return{species:s,protein:a,chr:c,start:+l,end:+A,strand:+u,geneId:f,unknown:d}});return{tree:n,seqs:o}}var Mm=h(()=>{});var Kn,_m=h(()=>{Mm();es();Kn=class extends Zt{MSA;constructor(t){super(),this.MSA=Gb(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 Xn,Tm=h(()=>{es();Xn=class extends Zt{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 s=o.slice(0,i).replace(/\r$/,""),a=s.indexOf(" "),c=a===-1?s:s.slice(0,a);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 Oo(e){let t=[],r=[],n=e.replace(/'((?:[^']|'')*)'/g,(s,a)=>{let c=r.length;return r.push(a.replaceAll("''","'")),`__Q${c}__`}),o={},i=n.split(/\s*(;|\(|\)|,|:)\s*/);for(let s=0;s<i.length;s++){let c=i[s].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[s-1];A===")"||A==="("||A===","?o.name=c:A===":"&&(o.length=Number.parseFloat(c))}}}return o}var km=h(()=>{});function Ub(){return{gf:{},gc:{},gs:{},gr:{},seqname:[],seqdata:{}}}function ga(e,t){if(e)return e;if(t)throw new Error("No format header: # STOCKHOLM 1.0");return Ub()}function ha(e){return Hb.test(e)}function jb(e,t){let r=t??{},n=[],o=null,i=e.split(`
|
|
35
|
+
`);for(let s of i){let a;if(Hb.test(s))o=Ub();else if(BL.test(s))o&&n.push(o),o=null;else if(a=QL.exec(s)){o=ga(o,!!r.strict);let c=a[1];o.gf[c]||(o.gf[c]=[]),o.gf[c].push(a[2])}else if(a=vL.exec(s)){o=ga(o,!!r.strict);let c=a[1];o.gc[c]||(o.gc[c]=""),o.gc[c]+=a[2]}else if(a=ML.exec(s)){o=ga(o,!!r.strict);let c=a[1],l=a[2],A=a[3];o.gs[l]||(o.gs[l]={}),o.gs[l][c]||(o.gs[l][c]=[]),o.gs[l][c].push(A)}else if(a=_L.exec(s)){o=ga(o,!!r.strict);let c=a[1],l=a[2],A=a[3];o.gr[l]||(o.gr[l]={}),o.gr[l][c]||(o.gr[l][c]=""),o.gr[l][c]+=A}else if(a=TL.exec(s)){o=ga(o,!!r.strict);let c=a[1],l=a[2];o.seqdata[c]||(o.seqdata[c]="",o.seqname.push(c)),o.seqdata[c]+=l}else if(kL.test(s)&&r.strict)throw new Error("Malformed line")}return o&&n.push(o),n}var Hb,BL,QL,vL,ML,_L,TL,kL,Dm=h(()=>{Hb=/^# STOCKHOLM 1.0/,BL=/^\/\/\s*$/,QL=/^#=GF\s+(\S+)\s+(.*?)\s*$/,vL=/^#=GC\s+(\S+)\s+(.*?)\s*$/,ML=/^#=GS\s+(\S+)\s+(\S+)\s+(.*?)\s*$/,_L=/^#=GR\s+(\S+)\s+(\S+)\s+(.*?)\s*$/,TL=/^\s*(\S+)\s+(\S+)\s*$/,kL=/\S/});var Zn,Nm=h(()=>{km();Dm();Sm();es();Dm();Zn=class extends Zt{data;MSA;constructor(t,r){super();let n=jb(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 s of i){let a=t.exec(s);a&&(n[o]??=[]).push({pdb:a[1].toLowerCase(),chain:a[2],startPos:+a[3],endPos:+a[4]})}return n}getTree(){let t=this.MSA.gf.NH?.[0];return t?Zi(Oo(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 Lm(e,t=0,r){return r==="stockholm"?new Zn(e,t):r==="a3m"?new yn(e):r==="fasta"?new Xn(e):r==="emf"?new Kn(e):r==="clustal"?new $n(e):ha(e)?new Zn(e,t):yn.sniff(e)?new yn(e):e.startsWith(">")?new Xn(e):e.startsWith("SEQ")?new Kn(e):new $n(e)}function Rm(e){return e.replaceAll(/[.-]/g,"")}var qb=h(()=>{Bm();vm();_m();Tm();Nm();Mm();km();Bm();vm();_m();Tm();Nm()});function DL(e){try{return decodeURIComponent(e)}catch{return e}}function NL(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=>DL(i).trim()).join(" "):void 0]}).filter(([t])=>t!=="")):{}}function Ul(e){return e?e.split(`
|
|
36
|
+
`).map(t=>t.trim()).filter(t=>!!t&&!t.startsWith("#")).map(t=>{let r=t.split(" "),[n,o,i,s,a,c,l,A]=r,u=r[8];return{seq_id:n??"",source:o??"",type:i??"",start:Number(s)||0,end:Number(a)||0,score:Number(c)||0,strand:l??".",phase:A??".",...NL(u)}}):[]}var Vb=h(()=>{});function Hl(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,s=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;s.has(l)||s.set(l,{name:A,description:u,accession:l});let f=i.get(l);f?f.push({start:c.start,end:c.end}):i.set(l,[{start:c.start,end:c.end}])}let a=[];for(let[c,l]of i){let A=s.get(c);a.push({signature:{entry:A},locations:l})}r[n]={matches:a,xref:[{id:n}]}}return r}var Jb=h(()=>{});var Yb=h(()=>{});var Wb=h(()=>{Vb();Jb();Yb()});var Fm=h(()=>{Mb();Sm();qb();Wb()});async function PL({seq:e,onProgress:t,onJobId:r,programs:n,model:o,signal:i}){let s=await ym(`${Pm}/iprscan5/run`,{method:"POST",body:new URLSearchParams({email:"colin.diesh@gmail.com",sequence:e,programs:n.join(",")}),signal:i});r?.(s),await GL({jobId:s,onProgress:t,signal:i}),await UL({jobId:s,model:o,onProgress:t,signal:i})}function OL(e,t){return Fl(`${Pm}/iprscan5/result/${e}/json`,{signal:t})}async function GL({onProgress:e,jobId:t,signal:r}){let n=`${Pm}/iprscan5/status/${t}`,o=360;try{let i=!1;for(let s=0;s<o&&!i;s++){for(let c=0;c<10;c++)await bb(1e3,r),e({msg:`Checking status ${10-c}`,url:n});let a=(await ym(n,{signal:r})).trim();if(a==="FINISHED")i=!0;else if(a==="FAILURE"||a==="ERROR"||a==="NOT_FOUND")throw new Error(`InterProScan job ${t} ended with status: ${a}`)}if(!i)throw new Error(`InterProScan job ${t} did not finish after ${o} status checks`)}finally{e()}}async function zb({algorithm:e,seq:t,programs:r,onJobId:n,onProgress:o,model:i,signal:s}){try{if(o({msg:`Launching ${e} MSA`}),e==="interproscan")await PL({seq:t,onJobId:n,onProgress:o,programs:r,model:i,signal:s});else throw new Error("unknown algorithm")}catch(a){if(zn(a))(0,Ca.getSession)(i).notify("Cancelled InterProScan query","info");else throw a}finally{o()}}async function UL({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 OL(e,n);t.setDomains(Object.fromEntries(o.results.map(i=>[i.xref[0]?.id,i]).filter(i=>i[0]!==void 0))),(0,Ca.getSession)(t).notify(`Loaded interproscan ${e} results`,"success")}catch(o){zn(o)?(0,Ca.getSession)(t).notify("Cancelled InterProScan query","info"):(console.error(o),(0,Ca.getSession)(t).notifyError(`${o}`,o))}finally{r()}}var Ca,Pm,$b=h(()=>{Ca=m(he(),1);Pl();Pm="https://www.ebi.ac.uk/Tools/services/rest"});var e1={};rt(e1,{default:()=>jL});var Fe,Kb,Xb,er,Zb,HL,jL,t1=h(()=>{Fe=m(_(),1),Kb=m(Ne(),1),Xb=m(he(),1),er=m(O(),1),Zb=m(j(),1);Fm();$b();HL=(0,Zb.observer)(function({handleClose:e,model:t}){let[r,n]=(0,Fe.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(a=>a.checked).map(a=>a.name),[i,s]=(0,Fe.useState)(!1);return Fe.default.createElement(Kb.Dialog,{maxWidth:"xl",title:"Query InterProScan API for domains",onClose:()=>{e()},open:!0},Fe.default.createElement(er.DialogContent,null,Fe.default.createElement(er.Typography,null,"This will run InterProScan via the InterProScan API on all rows of the current MSA"),Fe.default.createElement(er.Button,{onClick:()=>{s(!i)}},i?"Hide":"Show"," advanced options"),i?Fe.default.createElement("div",null,Fe.default.createElement(er.Typography,null,"Select algorithms for InterProScan to run"),Fe.default.createElement("div",null,Fe.default.createElement(er.Button,{variant:"contained",color:"secondary",onClick:()=>{n(r.map(a=>({...a,checked:!1})))}},"Select none"),Fe.default.createElement(er.Button,{variant:"contained",color:"primary",onClick:()=>{n(r.map(a=>({...a,checked:!0})))}},"Select all")),Fe.default.createElement("table",null,Fe.default.createElement("tbody",null,r.toSorted((a,c)=>a.category.localeCompare(c.category)).map(({name:a,checked:c,category:l})=>Fe.default.createElement("tr",{key:a},Fe.default.createElement("td",null,Fe.default.createElement("input",{type:"checkbox",key:a,checked:c,onChange:()=>{n(r.map(A=>A.name===a?{...A,checked:!A.checked}:A))}})),Fe.default.createElement("td",null,a),Fe.default.createElement("td",null,l)))))):null),Fe.default.createElement(er.DialogActions,null,Fe.default.createElement(er.Button,{variant:"contained",color:"secondary",onClick:()=>{e()}},"Cancel"),Fe.default.createElement(er.Button,{variant:"contained",color:"primary",onClick:()=>{let a=new AbortController;(async()=>{try{let{rows:c}=t;if(c.length>140)throw new Error("Too many sequences, please run InterProScan offline");await zb({algorithm:"interproscan",programs:o,seq:c.map(l=>[l[0],Rm(l[1])]).filter(l=>!!l[1]).map(l=>`>${l[0]}
|
|
37
37
|
${l[1]}`).join(`
|
|
38
|
-
`),onProgress:l=>{t.setStatus(l?{...l,onCancel:()=>{a.abort()}}:void 0)},model:t,signal:a.signal})}catch(c){console.error(c),(0,Gx.getSession)(t).notifyError(`${c}`,c)}finally{t.setStatus()}})(),e()}},"Send sequences to InterProScan")))}),W_=Y_});function qx({model:e}){let{showDomains:t,actuallyShowDomains:r,subFeatureRows:n,noDomains:o}=e;return[{label:"Open domains...",icon:Qc,onClick:()=>{e.queueDialog(i=>[$_,{handleClose:i,model:e}])}},{label:"Query InterProScan for domains...",icon:XI,onClick:()=>{e.queueDialog(i=>[K_,{handleClose:i,model:e}])}},{label:`Show domains${o?" (no domains loaded)":""}`,disabled:o,icon:ox,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:tx,type:"checkbox",onClick:()=>{e.setSubFeatureRows(!n)}},{label:`Filter domains${o?" (no domains loaded)":""}`,icon:zI,disabled:o,onClick:()=>{e.queueDialog(i=>[z_,{onClose:i,model:e}])}}]}var Rc,z_,$_,K_,Jx=g(()=>{Rc=f(Q(),1);$I();Sf();ZI();rx();ix();z_=(0,Rc.lazy)(()=>Promise.resolve().then(()=>(lx(),cx))),$_=(0,Rc.lazy)(()=>Promise.resolve().then(()=>(gx(),px))),K_=(0,Rc.lazy)(()=>Promise.resolve().then(()=>(jx(),Hx)))});var zx=j((g6,Wx)=>{"use strict";var X_=function(t){return Z_(t)&&!eD(t)};function Z_(e){return!!e&&typeof e=="object"}function eD(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||nD(e)}var tD=typeof Symbol=="function"&&Symbol.for,rD=tD?Symbol.for("react.element"):60103;function nD(e){return e.$$typeof===rD}function oD(e){return Array.isArray(e)?[]:{}}function Ss(e,t){return t.clone!==!1&&t.isMergeableObject(e)?xi(oD(e),e,t):e}function iD(e,t,r){return e.concat(t).map(function(n){return Ss(n,r)})}function sD(e,t){if(!t.customMerge)return xi;var r=t.customMerge(e);return typeof r=="function"?r:xi}function aD(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function Vx(e){return Object.keys(e).concat(aD(e))}function Yx(e,t){try{return t in e}catch{return!1}}function cD(e,t){return Yx(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function lD(e,t,r){var n={};return r.isMergeableObject(e)&&Vx(e).forEach(function(o){n[o]=Ss(e[o],r)}),Vx(t).forEach(function(o){cD(e,o)||(Yx(e,o)&&r.isMergeableObject(t[o])?n[o]=sD(o,r)(e[o],t[o],r):n[o]=Ss(t[o],r))}),n}function xi(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||iD,r.isMergeableObject=r.isMergeableObject||X_,r.cloneUnlessOtherwiseSpecified=Ss;var n=Array.isArray(t),o=Array.isArray(e),i=n===o;return i?n?r.arrayMerge(e,t,r):lD(e,t,r):Ss(t,r)}xi.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,o){return xi(n,o,r)},{})};var AD=xi;Wx.exports=AD});function Xx(){return{palette:{...Fc,mode:void 0},components:{MuiLink:{styleOverrides:{root:({theme:e})=>({color:e.palette.tertiary.main})}}}}}function BD(){return{...Xx(),name:"Default (from config)"}}function SD(){return{...Xx(),name:"Light (stock)"}}function QD(){return{name:"Dark (stock)",palette:{...Fc,mode:"dark"},components:{MuiAppBar:{defaultProps:{enableColorOnDark:!0},styleOverrides:{root:({theme:e})=>e.palette.primary.main}}}}}function MD(){return{name:"Dark (minimal)",palette:{...Fc,mode:"dark",primary:{main:yn[700]},secondary:{main:yn[800]},tertiary:Te.palette.augmentColor({color:{main:yn[900]}})}}}function vD(){return{name:"Light (minimal)",palette:{...Fc,primary:{main:yn[900]},secondary:{main:yn[800]},tertiary:Te.palette.augmentColor({color:{main:yn[900]}})}}}var Kx,uD,Te,fD,dD,mD,$x,C6,pD,gD,hD,CD,ED,ID,xD,yD,wD,bD,Fc,E6,Zx=g(()=>{Kx=f(k(),1);bf();uD=f(zx(),1),Te=(0,Kx.createTheme)(),fD=Te.palette.augmentColor({color:{main:"#0D233F"}}),dD=Te.palette.augmentColor({color:{main:"#721E63"}}),mD=Te.palette.augmentColor({color:{main:"#135560"}}),$x=Te.palette.augmentColor({color:{main:"#FFB11D"}}),C6=Te.palette.augmentColor({color:{main:"#aaa"}}),pD={A:Te.palette.augmentColor({color:Es}),C:Te.palette.augmentColor({color:Cs}),G:Te.palette.augmentColor({color:Is}),T:Te.palette.augmentColor({color:hi})},gD=[null,Te.palette.augmentColor({color:{main:"#FF8080"}}),Te.palette.augmentColor({color:{main:"#80FF80"}}),Te.palette.augmentColor({color:{main:"#8080FF"}}),Te.palette.augmentColor({color:{main:"#8080FF"}}),Te.palette.augmentColor({color:{main:"#80FF80"}}),Te.palette.augmentColor({color:{main:"#FF8080"}})],hD=[null,Te.palette.augmentColor({color:{main:"#8f8f8f"}}),Te.palette.augmentColor({color:{main:"#adadad"}}),Te.palette.augmentColor({color:{main:"#d8d8d8"}}),Te.palette.augmentColor({color:{main:"#d8d8d8"}}),Te.palette.augmentColor({color:{main:"#adadad"}}),Te.palette.augmentColor({color:{main:"#8f8f8f"}})],CD="#e22",ED="#3e3",ID="#800080",xD="#808080",yD="#f00",wD="#00f",bD="#97b8c9",Fc={primary:fD,secondary:dD,tertiary:mD,quaternary:$x,highlight:$x,stopCodon:CD,startCodon:ED,insertion:ID,deletion:xD,softclip:wD,hardclip:yD,bases:pD,frames:hD,framesCDS:gD,skip:bD};E6={default:BD(),lightStock:SD(),lightMinimal:vD(),darkMinimal:MD(),darkStock:QD()}});var ey=g(()=>{});var ty=g(()=>{});var Wf=g(()=>{Zx();Ef();ey();ty()});function Mn({value:e}){let{classes:t}=TD(),r=/^https?:\/\//.exec(`${e}`);return(0,Pc.jsx)("div",{className:t.fieldValue,children:(0,ry.isValidElement)(e)?e:r?(0,Pc.jsx)(ny.Link,{href:`${e}`,children:`${e}`}):(0,Pc.jsx)(In,{html:$t(e)?JSON.stringify(e):String(e)})})}var Pc,ry,ny,TD,Oc=g(()=>{Pc=f(R(),1),ry=f(Q(),1),ny=f(k(),1);Wf();Cn();xt();TD=te()(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}=_D(),i=[...n,t].join(".");return e?(0,Gc.jsx)(oy.Tooltip,{title:e,placement:"left",children:(0,Gc.jsx)("div",{className:za(o.fieldDescription,o.fieldName),children:i})}):(0,Gc.jsx)("div",{className:o.fieldName,style:{width:r},children:i})}var Gc,oy,_D,Qs=g(()=>{Gc=f(R(),1),oy=f(k(),1);xt();_D=te()(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 $f({name:e,value:t,description:r,formatter:n,prefix:o=[]}){let{classes:i}=DD(),[s,a]=(0,iy.useState)(!1),c=t.length>zf,l=c&&!s?t.slice(0,zf):t;return t.length===1?$t(t[0])?(0,Bt.jsx)(Fr,{formatter:n,attributes:t[0],prefix:[...o,e]}):(0,Bt.jsxs)("div",{className:i.field,children:[(0,Bt.jsx)(Rr,{prefix:o,description:r,name:e}),(0,Bt.jsx)(Mn,{value:n?n(t[0],e):t[0]})]}):t.every(A=>$t(A))?(0,Bt.jsx)(Bt.Fragment,{children:t.map((A,u)=>(0,Bt.jsx)(Fr,{formatter:n,attributes:A,prefix:[...o,`${e}-${u}`]},`${JSON.stringify(A)}-${u}`))}):(0,Bt.jsxs)("div",{className:i.field,children:[(0,Bt.jsx)(Rr,{prefix:o,description:r,name:e}),l.map((A,u)=>(0,Bt.jsx)("div",{className:i.fieldSubvalue,children:(0,Bt.jsx)(Mn,{value:n?n(A,e):A})},`${JSON.stringify(A)}-${u}`)),c?(0,Bt.jsx)("button",{type:"button",onClick:()=>{a(A=>!A)},children:s?"Show less":`Showing ${zf} of ${t.length}. Show all...`}):null]})}var Bt,iy,zf,DD,sy=g(()=>{Bt=f(R(),1),iy=f(Q(),1);Uc();Oc();Qs();Cn();xt();zf=100,DD=te()(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 cy=j((O6,ay)=>{ay.exports=JBrowseExports["@mui/x-data-grid"]});function Kf({children:e,style:t}){let{classes:r}=kD();return(0,ly.jsx)("div",{className:r.flexContainer,style:t,children:e})}var ly,kD,Ay=g(()=>{ly=f(R(),1);xt();kD=te()({flexContainer:{display:"flex",flexDirection:"column"}})});function Xf({value:e,prefix:t,name:r}){let{classes:n}=ND(),[o,i]=(0,uy.useState)(!1),s=Object.keys(e[0]).sort(),a=new Set(s),c=Object.entries(e).map(([u,d])=>{let{id:m,...h}=d;return{id:u,identifier:m,...h}});for(let u of e)for(let d of Object.keys(u))a.add(d);let l;a.has("id")?(a.delete("id"),l=["identifier",...a]):l=[...a];let A=l.map(u=>yE(c.map(d=>d[u])));return a.size<s.length+5?(0,dr.jsxs)("div",{className:n.margin,children:[(0,dr.jsx)(Rr,{prefix:t,name:r}),(0,dr.jsx)(yi.FormControlLabel,{control:(0,dr.jsx)(yi.Checkbox,{checked:o,onChange:u=>{i(u.target.checked)}}),label:(0,dr.jsx)(yi.Typography,{variant:"body2",children:"Show options"})}),(0,dr.jsx)(Kf,{children:(0,dr.jsx)(fy.DataGrid,{disableRowSelectionOnClick:!0,rows:c,rowHeight:20,columnHeaderHeight:35,hideFooter:c.length<25,showToolbar:o,columns:l.map((u,d)=>({field:u,width:A[d],renderCell:({value:m})=>(0,dr.jsx)("div",{className:n.cell,children:(0,dr.jsx)(In,{html:Af(m||"")})})}))})})]}):null}var dr,uy,yi,fy,ND,dy=g(()=>{dr=f(R(),1),uy=f(Q(),1),yi=f(k(),1),fy=f(cy(),1);Qs();Ay();Wf();Cn();xt();ND=te()(e=>({margin:{marginBottom:e.spacing(4)},cell:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}}))});function Zf({name:e,value:t,description:r,prefix:n,width:o,formatter:i}){let{classes:s}=LD();return t!=null?(0,Ms.jsxs)("div",{className:s.field,children:[(0,Ms.jsx)(Rr,{prefix:n,description:r,name:e,width:o}),(0,Ms.jsx)(Mn,{value:i?i(t,e):t})]}):null}var Ms,LD,my=g(()=>{Ms=f(R(),1);Oc();Qs();xt();LD=te()({field:{display:"flex",flexWrap:"wrap"}})});function ed({value:e,prefix:t,name:r}){let{classes:n}=RD(),{uri:o,baseUri:i=""}=e,s;try{s=new URL(o,i).href}catch{s=o}return(0,vs.jsxs)("div",{className:n.field,children:[(0,vs.jsx)(Rr,{prefix:t,name:r}),(0,vs.jsx)(Mn,{value:s})]})}var vs,RD,py=g(()=>{vs=f(R(),1);Oc();Qs();xt();RD=te()({field:{display:"flex",flexWrap:"wrap"}})});function gy(e,t){return Math.ceil(uf(e.map(r=>cf([...t,r[0]].join("."),12))))+10}function hy(e,t={}){let r=t;for(let n of e)$t(r)&&(r=r[n]);return typeof r=="string"?r:$t(r)&&typeof r.Description=="string"?r.Description:void 0}var Cy=g(()=>{Cn()});function Fr(e){let{attributes:t,omit:r=[],omitSingleLevel:n=[],descriptions:o,formatter:i,hideUris:s,prefix:a=[]}=e,c=new Set([...r,...PD,...n]),{__jbrowsefmt:l,...A}=t,u=Object.entries({...A,...l}).filter(([m,h])=>h!=null&&!c.has(m)),d=gy(u,a);return(0,nn.jsx)(nn.Fragment,{children:u.map(([m,h])=>{let E=hy([...a,m],o);if(Array.isArray(h))return h.length>1&&h.every(x=>$t(x))?(0,nn.jsx)(Xf,{name:m,prefix:a,value:h},m):(0,nn.jsx)($f,{name:m,value:h,formatter:i,description:E,prefix:a},m);if($t(h)){let{omitSingleLevel:x,...I}=e;return cc(h)?s?null:(0,nn.jsx)(ed,{name:m,prefix:a,value:h},m):(0,nn.jsx)(Fr,{...I,formatter:i,attributes:h,descriptions:o,prefix:[...a,m]},m)}else return(0,nn.jsx)(Zf,{name:m,formatter:i,value:h,description:E,prefix:a,width:Math.min(d,FD)},m)})})}var nn,FD,PD,Uc=g(()=>{nn=f(R(),1);sy();dy();my();py();Cy();Cn();FD=170,PD=["__jbrowsefmt","length","position","subfeatures","uniqueId","exonFrames","parentId","thickStart","thickEnd","_lineHash"]});var Ey,Hc,td=g(()=>{"use client";Y();Ey=f(R(),1),Hc=(0,_.createSvgIcon)((0,Ey.jsx)("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"ExpandMore")});function uo({children:e,title:t,defaultExpanded:r=!0}){let{classes:n}=OD();return(0,Ao.jsxs)(vn.Accordion,{defaultExpanded:r,children:[(0,Ao.jsx)(vn.AccordionSummary,{expandIcon:(0,Ao.jsx)(Hc,{className:n.icon}),children:(0,Ao.jsx)(vn.Typography,{variant:"button",children:t})}),(0,Ao.jsx)(vn.AccordionDetails,{className:n.expansionPanelDetails,children:e})]})}var Ao,vn,OD,rd=g(()=>{Ao=f(R(),1);td();vn=f(k(),1);xt();OD=te()(e=>({expansionPanelDetails:{display:"block",padding:e.spacing(1)},icon:{color:e.palette.tertiary.contrastText||"#fff"}}))});function mt({checked:e,label:t,disabled:r,onChange:n}){return jc.default.createElement("div",null,jc.default.createElement(qc.FormControlLabel,{control:jc.default.createElement(qc.Checkbox,{disabled:r,checked:e,onChange:()=>{n()}}),label:t}))}var jc,qc,Jc=g(()=>{jc=f(Q(),1),qc=f(k(),1)});function Ts({str:e}){let{classes:t}=GD(),[r,n]=(0,mr.useState)(!1),[o,i]=(0,mr.useState)(!1),[s,a]=(0,mr.useState)(!1),c=A=>A.replaceAll("-","").replaceAll(".",""),l=e.map(([A,u])=>[A,o?u:c(u)]).filter(([,A])=>s||!!A).map(([A,u])=>`>${A}
|
|
38
|
+
`),onProgress:l=>{t.setStatus(l?{...l,onCancel:()=>{a.abort()}}:void 0)},model:t,signal:a.signal})}catch(c){console.error(c),(0,Xb.getSession)(t).notifyError(`${c}`,c)}finally{t.setStatus()}})(),e()}},"Send sequences to InterProScan")))}),jL=HL});function r1({model:e}){let{showDomains:t,actuallyShowDomains:r,subFeatureRows:n,noDomains:o}=e;return[{label:"Open domains...",icon:Nl,onClick:()=>{e.queueDialog(i=>[VL,{handleClose:i,model:e}])}},{label:"Query InterProScan for domains...",icon:Ab,onClick:()=>{e.queueDialog(i=>[JL,{handleClose:i,model:e}])}},{label:`Show domains${o?" (no domains loaded)":""}`,disabled:o,icon:gb,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:db,type:"checkbox",onClick:()=>{e.setSubFeatureRows(!n)}},{label:`Filter domains${o?" (no domains loaded)":""}`,icon:ab,disabled:o,onClick:()=>{e.queueDialog(i=>[qL,{onClose:i,model:e}])}}]}var jl,qL,VL,JL,n1=h(()=>{jl=m(_(),1);cb();hm();ub();mb();hb();qL=(0,jl.lazy)(()=>Promise.resolve().then(()=>(Ib(),xb))),VL=(0,jl.lazy)(()=>Promise.resolve().then(()=>(vb(),Qb))),JL=(0,jl.lazy)(()=>Promise.resolve().then(()=>(t1(),e1)))});var a1=q((r7,s1)=>{"use strict";var YL=function(t){return WL(t)&&!zL(t)};function WL(e){return!!e&&typeof e=="object"}function zL(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||XL(e)}var $L=typeof Symbol=="function"&&Symbol.for,KL=$L?Symbol.for("react.element"):60103;function XL(e){return e.$$typeof===KL}function ZL(e){return Array.isArray(e)?[]:{}}function Ea(e,t){return t.clone!==!1&&t.isMergeableObject(e)?rs(ZL(e),e,t):e}function eR(e,t,r){return e.concat(t).map(function(n){return Ea(n,r)})}function tR(e,t){if(!t.customMerge)return rs;var r=t.customMerge(e);return typeof r=="function"?r:rs}function rR(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function o1(e){return Object.keys(e).concat(rR(e))}function i1(e,t){try{return t in e}catch{return!1}}function nR(e,t){return i1(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function oR(e,t,r){var n={};return r.isMergeableObject(e)&&o1(e).forEach(function(o){n[o]=Ea(e[o],r)}),o1(t).forEach(function(o){nR(e,o)||(i1(e,o)&&r.isMergeableObject(t[o])?n[o]=tR(o,r)(e[o],t[o],r):n[o]=Ea(t[o],r))}),n}function rs(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||eR,r.isMergeableObject=r.isMergeableObject||YL,r.cloneUnlessOtherwiseSpecified=Ea;var n=Array.isArray(t),o=Array.isArray(e),i=n===o;return i?n?r.arrayMerge(e,t,r):oR(e,t,r):Ea(t,r)}rs.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,o){return rs(n,o,r)},{})};var iR=rs;s1.exports=iR});function A1(){return{palette:{...ql,mode:void 0},components:{MuiLink:{styleOverrides:{root:({theme:e})=>({color:e.palette.tertiary.main})}}}}}function xR(){return{...A1(),name:"Default (from config)"}}function IR(){return{...A1(),name:"Light (stock)"}}function wR(){return{name:"Dark (stock)",palette:{...ql,mode:"dark"},components:{MuiAppBar:{defaultProps:{enableColorOnDark:!0},styleOverrides:{root:({theme:e})=>e.palette.primary.main}}}}}function yR(){return{name:"Dark (minimal)",palette:{...ql,mode:"dark",primary:{main:Wn[700]},secondary:{main:Wn[800]},tertiary:Pe.palette.augmentColor({color:{main:Wn[900]}})}}}function bR(){return{name:"Light (minimal)",palette:{...ql,primary:{main:Wn[900]},secondary:{main:Wn[800]},tertiary:Pe.palette.augmentColor({color:{main:Wn[900]}})}}}var l1,sR,Pe,aR,cR,lR,c1,o7,AR,uR,fR,dR,mR,pR,gR,hR,CR,ER,ql,i7,u1=h(()=>{l1=m(O(),1);pm();sR=m(a1(),1),Pe=(0,l1.createTheme)(),aR=Pe.palette.augmentColor({color:{main:"#0D233F"}}),cR=Pe.palette.augmentColor({color:{main:"#721E63"}}),lR=Pe.palette.augmentColor({color:{main:"#135560"}}),c1=Pe.palette.augmentColor({color:{main:"#FFB11D"}}),o7=Pe.palette.augmentColor({color:{main:"#aaa"}}),AR={A:Pe.palette.augmentColor({color:fa}),C:Pe.palette.augmentColor({color:ua}),G:Pe.palette.augmentColor({color:da}),T:Pe.palette.augmentColor({color:Xi})},uR=[null,Pe.palette.augmentColor({color:{main:"#FF8080"}}),Pe.palette.augmentColor({color:{main:"#80FF80"}}),Pe.palette.augmentColor({color:{main:"#8080FF"}}),Pe.palette.augmentColor({color:{main:"#8080FF"}}),Pe.palette.augmentColor({color:{main:"#80FF80"}}),Pe.palette.augmentColor({color:{main:"#FF8080"}})],fR=[null,Pe.palette.augmentColor({color:{main:"#8f8f8f"}}),Pe.palette.augmentColor({color:{main:"#adadad"}}),Pe.palette.augmentColor({color:{main:"#d8d8d8"}}),Pe.palette.augmentColor({color:{main:"#d8d8d8"}}),Pe.palette.augmentColor({color:{main:"#adadad"}}),Pe.palette.augmentColor({color:{main:"#8f8f8f"}})],dR="#e22",mR="#3e3",pR="#800080",gR="#808080",hR="#f00",CR="#00f",ER="#97b8c9",ql={primary:aR,secondary:cR,tertiary:lR,quaternary:c1,highlight:c1,stopCodon:dR,startCodon:mR,insertion:pR,deletion:gR,softclip:CR,hardclip:hR,bases:AR,frames:fR,framesCDS:uR,skip:ER};i7={default:xR(),lightStock:IR(),lightMinimal:bR(),darkMinimal:yR(),darkStock:wR()}});var f1=h(()=>{});var d1=h(()=>{});var Om=h(()=>{u1();Am();f1();d1()});function eo({value:e}){let{classes:t}=SR(),r=/^https?:\/\//.exec(`${e}`);return(0,Vl.jsx)("div",{className:t.fieldValue,children:(0,m1.isValidElement)(e)?e:r?(0,Vl.jsx)(p1.Link,{href:`${e}`,children:`${e}`}):(0,Vl.jsx)(Jn,{html:mr(e)?JSON.stringify(e):String(e)})})}var Vl,m1,p1,SR,Jl=h(()=>{Vl=m(U(),1),m1=m(_(),1),p1=m(O(),1);Om();Hn();Dt();SR=ae()(e=>({fieldValue:{wordBreak:"break-word",maxHeight:300,fontSize:12,padding:e.spacing(.5),overflow:"auto"}}))});function $r({description:e,name:t,width:r,prefix:n=[]}){let{classes:o}=BR(),i=[...n,t].join(".");return e?(0,Yl.jsx)(g1.Tooltip,{title:e,placement:"left",children:(0,Yl.jsx)("div",{className:Jc(o.fieldDescription,o.fieldName),children:i})}):(0,Yl.jsx)("div",{className:o.fieldName,style:{width:r},children:i})}var Yl,g1,BR,xa=h(()=>{Yl=m(U(),1),g1=m(O(),1);Dt();BR=ae()(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 Um({name:e,value:t,description:r,formatter:n,prefix:o=[]}){let{classes:i}=QR(),[s,a]=(0,h1.useState)(!1),c=t.length>Gm,l=c&&!s?t.slice(0,Gm):t;return t.length===1?mr(t[0])?(0,Rt.jsx)(Kr,{formatter:n,attributes:t[0],prefix:[...o,e]}):(0,Rt.jsxs)("div",{className:i.field,children:[(0,Rt.jsx)($r,{prefix:o,description:r,name:e}),(0,Rt.jsx)(eo,{value:n?n(t[0],e):t[0]})]}):t.every(A=>mr(A))?(0,Rt.jsx)(Rt.Fragment,{children:t.map((A,u)=>(0,Rt.jsx)(Kr,{formatter:n,attributes:A,prefix:[...o,`${e}-${u}`]},`${JSON.stringify(A)}-${u}`))}):(0,Rt.jsxs)("div",{className:i.field,children:[(0,Rt.jsx)($r,{prefix:o,description:r,name:e}),l.map((A,u)=>(0,Rt.jsx)("div",{className:i.fieldSubvalue,children:(0,Rt.jsx)(eo,{value:n?n(A,e):A})},`${JSON.stringify(A)}-${u}`)),c?(0,Rt.jsx)("button",{type:"button",onClick:()=>{a(A=>!A)},children:s?"Show less":`Showing ${Gm} of ${t.length}. Show all...`}):null]})}var Rt,h1,Gm,QR,C1=h(()=>{Rt=m(U(),1),h1=m(_(),1);Wl();Jl();xa();Hn();Dt();Gm=100,QR=ae()(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 x1=q((S7,E1)=>{E1.exports=JBrowseExports["@mui/x-data-grid"]});function Hm({children:e,style:t}){let{classes:r}=vR();return(0,I1.jsx)("div",{className:r.flexContainer,style:t,children:e})}var I1,vR,w1=h(()=>{I1=m(U(),1);Dt();vR=ae()({flexContainer:{display:"flex",flexDirection:"column"}})});function jm({value:e,prefix:t,name:r}){let{classes:n}=MR(),[o,i]=(0,y1.useState)(!1),s=Object.keys(e[0]).sort(),a=new Set(s),c=Object.entries(e).map(([u,f])=>{let{id:d,...g}=f;return{id:u,identifier:d,...g}});for(let u of e)for(let f of Object.keys(u))a.add(f);let l;a.has("id")?(a.delete("id"),l=["identifier",...a]):l=[...a];let A=l.map(u=>Dw(c.map(f=>f[u])));return a.size<s.length+5?(0,Sr.jsxs)("div",{className:n.margin,children:[(0,Sr.jsx)($r,{prefix:t,name:r}),(0,Sr.jsx)(ns.FormControlLabel,{control:(0,Sr.jsx)(ns.Checkbox,{checked:o,onChange:u=>{i(u.target.checked)}}),label:(0,Sr.jsx)(ns.Typography,{variant:"body2",children:"Show options"})}),(0,Sr.jsx)(Hm,{children:(0,Sr.jsx)(b1.DataGrid,{disableRowSelectionOnClick:!0,rows:c,rowHeight:20,columnHeaderHeight:35,hideFooter:c.length<25,showToolbar:o,columns:l.map((u,f)=>({field:u,width:A[f],renderCell:({value:d})=>(0,Sr.jsx)("div",{className:n.cell,children:(0,Sr.jsx)(Jn,{html:tm(d||"")})})}))})})]}):null}var Sr,y1,ns,b1,MR,S1=h(()=>{Sr=m(U(),1),y1=m(_(),1),ns=m(O(),1),b1=m(x1(),1);xa();w1();Om();Hn();Dt();MR=ae()(e=>({margin:{marginBottom:e.spacing(4)},cell:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}}))});function qm({name:e,value:t,description:r,prefix:n,width:o,formatter:i}){let{classes:s}=_R();return t!=null?(0,Ia.jsxs)("div",{className:s.field,children:[(0,Ia.jsx)($r,{prefix:n,description:r,name:e,width:o}),(0,Ia.jsx)(eo,{value:i?i(t,e):t})]}):null}var Ia,_R,B1=h(()=>{Ia=m(U(),1);Jl();xa();Dt();_R=ae()({field:{display:"flex",flexWrap:"wrap"}})});function Vm({value:e,prefix:t,name:r}){let{classes:n}=TR(),{uri:o,baseUri:i=""}=e,s;try{s=new URL(o,i).href}catch{s=o}return(0,wa.jsxs)("div",{className:n.field,children:[(0,wa.jsx)($r,{prefix:t,name:r}),(0,wa.jsx)(eo,{value:s})]})}var wa,TR,Q1=h(()=>{wa=m(U(),1);Jl();xa();Dt();TR=ae()({field:{display:"flex",flexWrap:"wrap"}})});function v1(e,t){return Math.ceil(rm(e.map(r=>Zd([...t,r[0]].join("."),12))))+10}function M1(e,t={}){let r=t;for(let n of e)mr(r)&&(r=r[n]);return typeof r=="string"?r:mr(r)&&typeof r.Description=="string"?r.Description:void 0}var _1=h(()=>{Hn()});function Kr(e){let{attributes:t,omit:r=[],omitSingleLevel:n=[],descriptions:o,formatter:i,hideUris:s,prefix:a=[]}=e,c=new Set([...r,...DR,...n]),{__jbrowsefmt:l,...A}=t,u=Object.entries({...A,...l}).filter(([d,g])=>g!=null&&!c.has(d)),f=v1(u,a);return(0,bn.jsx)(bn.Fragment,{children:u.map(([d,g])=>{let E=M1([...a,d],o);if(Array.isArray(g))return g.length>1&&g.every(I=>mr(I))?(0,bn.jsx)(jm,{name:d,prefix:a,value:g},d):(0,bn.jsx)(Um,{name:d,value:g,formatter:i,description:E,prefix:a},d);if(mr(g)){let{omitSingleLevel:I,...x}=e;return pl(g)?s?null:(0,bn.jsx)(Vm,{name:d,prefix:a,value:g},d):(0,bn.jsx)(Kr,{...x,formatter:i,attributes:g,descriptions:o,prefix:[...a,d]},d)}else return(0,bn.jsx)(qm,{name:d,formatter:i,value:g,description:E,prefix:a,width:Math.min(f,kR)},d)})})}var bn,kR,DR,Wl=h(()=>{bn=m(U(),1);C1();S1();B1();Q1();_1();Hn();kR=170,DR=["__jbrowsefmt","length","position","subfeatures","uniqueId","exonFrames","parentId","thickStart","thickEnd","_lineHash"]});var T1,zl,Jm=h(()=>{"use client";$();T1=m(U(),1),zl=(0,F.createSvgIcon)((0,T1.jsx)("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"ExpandMore")});function Uo({children:e,title:t,defaultExpanded:r=!0}){let{classes:n}=NR();return(0,Go.jsxs)(to.Accordion,{defaultExpanded:r,children:[(0,Go.jsx)(to.AccordionSummary,{expandIcon:(0,Go.jsx)(zl,{className:n.icon}),children:(0,Go.jsx)(to.Typography,{variant:"button",children:t})}),(0,Go.jsx)(to.AccordionDetails,{className:n.expansionPanelDetails,children:e})]})}var Go,to,NR,Ym=h(()=>{Go=m(U(),1);Jm();to=m(O(),1);Dt();NR=ae()(e=>({expansionPanelDetails:{display:"block",padding:e.spacing(1)},icon:{color:e.palette.tertiary.contrastText||"#fff"}}))});function bt({checked:e,label:t,disabled:r,onChange:n}){return $l.default.createElement("div",null,$l.default.createElement(Kl.FormControlLabel,{control:$l.default.createElement(Kl.Checkbox,{disabled:r,checked:e,onChange:()=>{n()}}),label:t}))}var $l,Kl,Xl=h(()=>{$l=m(_(),1),Kl=m(O(),1)});function ya({str:e}){let{classes:t}=LR(),[r,n]=(0,Br.useState)(!1),[o,i]=(0,Br.useState)(!1),[s,a]=(0,Br.useState)(!1),c=A=>A.replaceAll("-","").replaceAll(".",""),l=e.map(([A,u])=>[A,o?u:c(u)]).filter(([,A])=>s||!!A).map(([A,u])=>`>${A}
|
|
39
39
|
${u}`).join(`
|
|
40
|
-
`);return mr.default.createElement(mr.default.Fragment,null,mr.default.createElement(Vc.Button,{color:"primary",variant:"contained",onClick:()=>{Zi(l),n(!0),setTimeout(()=>{n(!1)},500)}},r?"Copied!":"Copy to clipboard"),mr.default.createElement(mt,{label:"Show gaps",checked:o,onChange:()=>{i(!o)}}),mr.default.createElement(mt,{label:"Show empty",checked:s,onChange:()=>{a(!s)}}),mr.default.createElement(Vc.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,Vc,Iy,GD,nd=g(()=>{mr=f(Q(),1),Vc=f(k(),1),Iy=f(Se(),1);Jc();LA();GD=(0,Iy.makeStyles)()({textAreaFont:{fontFamily:"Courier New",wordWrap:"break-word"},dialogContent:{background:"lightgrey",margin:4,minWidth:"80em"}})});var by={};We(by,{default:()=>HD});var wi,xy,yy,wy,UD,HD,By=g(()=>{wi=f(Q(),1);Uc();rd();xy=f(Qe(),1),yy=f(k(),1),wy=f(G(),1);nd();UD=(0,wy.observer)(function({model:e,onClose:t}){let{header:r}=e;return wi.default.createElement(xy.Dialog,{onClose:()=>{t()},open:!0,title:"Metadata",maxWidth:"xl"},wi.default.createElement(yy.DialogContent,null,wi.default.createElement(Fr,{attributes:r}),wi.default.createElement(uo,{title:"sequence"},wi.default.createElement(Ts,{str:e.rows}))))}),HD=UD});var Qy={};We(Qy,{default:()=>Sy});function Sy({model:e,onClose:t}){let[r,n]=(0,Be.useState)(!0),[o,i]=(0,Be.useState)(!0),[s,a]=(0,Be.useState)("viewport"),[c,l]=(0,Be.useState)(),A=(0,ye.useTheme)(),{totalWidth:u,totalHeight:d,treeAreaWidth:m,turnedOnTracks:h,totalTrackAreaHeight:E}=e,x=h.length>0,I=u+m,p=d+(o?E:0),y=s==="entire"&&(I>1e4||p>1e4);return Be.default.createElement(Yc.Dialog,{onClose:()=>{t()},open:!0,title:"Export SVG"},Be.default.createElement(ye.DialogContent,null,c?Be.default.createElement(Yc.ErrorMessage,{error:c}):null,Be.default.createElement(ye.Typography,null,"Settings:"),Be.default.createElement(mt,{label:"Include minimap?",disabled:s==="entire",checked:r,onChange:()=>{n(!r)}}),x?Be.default.createElement(mt,{label:"Include tracks?",checked:o,onChange:()=>{i(!o)}}):null,Be.default.createElement("div",null,Be.default.createElement(ye.FormControl,null,Be.default.createElement(ye.FormLabel,null,"Export type"),Be.default.createElement(ye.RadioGroup,{value:s,onChange:b=>{let{value:w}=b.target;(w==="entire"||w==="viewport")&&a(w)}},Be.default.createElement(ye.FormControlLabel,{value:"entire",control:Be.default.createElement(ye.Radio,null),label:"Entire MSA"}),Be.default.createElement(ye.FormControlLabel,{value:"viewport",control:Be.default.createElement(ye.Radio,null),label:"Current viewport only"})))),y?Be.default.createElement(ye.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),Be.default.createElement(ye.DialogActions,null,Be.default.createElement(ye.Button,{variant:"contained",color:"primary",onClick:()=>{e.exportSVG({theme:A,includeMinimap:s==="entire"?!1:r,includeTracks:x&&o,exportType:s}).then(()=>{t()}).catch(b=>{console.error(b),l(b)})}},"Submit"),Be.default.createElement(ye.Button,{variant:"contained",color:"secondary",onClick:()=>{t()}},"Cancel")))}var Be,Yc,ye,My=g(()=>{Be=f(Q(),1),Yc=f(Qe(),1),ye=f(k(),1);Jc()});var ky={};We(ky,{default:()=>YD});var z,Ty,Xe,_s,_y,Dy,vy,jD,qD,JD,VD,YD,Ny=g(()=>{z=f(Q(),1),Ty=f(Qe(),1),Xe=f(k(),1),_s=f(G(),1),_y=f(Se(),1);Sc();Jc();Dy=(0,_y.makeStyles)()(e=>({field:{margin:e.spacing(4)},flex:{display:"flex"},minw:{width:"80em"}})),vy=(e=0)=>+e.toFixed(1),jD=(0,_s.observer)(function({model:e}){return z.default.createElement(z.default.Fragment,null,z.default.createElement(qD,{model:e}),z.default.createElement(JD,{model:e}))}),qD=(0,_s.observer)(function({model:t}){let{drawTree:r,drawLabels:n,drawNodeBubbles:o,labelsAlignRight:i,showBranchLen:s}=t;return z.default.createElement("div",null,z.default.createElement("h1",null,"Tree options"),z.default.createElement(mt,{checked:s,label:"Show branch length?",onChange:()=>{t.setShowBranchLen(!s)}}),z.default.createElement(mt,{checked:o,label:"Draw clickable bubbles on tree branches?",onChange:()=>{t.setDrawNodeBubbles(!o)}}),z.default.createElement(mt,{checked:r,label:"Show tree?",onChange:()=>{t.setDrawTree(!r)}}),z.default.createElement(mt,{checked:i,label:"Tree labels align right?",onChange:()=>{t.setLabelsAlignRight(!i)}}),z.default.createElement(mt,{checked:n,label:"Draw labels",onChange:()=>{t.setDrawLabels(!n)}}))}),JD=(0,_s.observer)(function({model:t}){let{classes:r}=Dy(),{bgColor:n,colWidth:o,allowedGappyness:i,drawMsaLetters:s,colorSchemeName:a,hideGaps:c,rowHeight:l}=t;return z.default.createElement("div",null,z.default.createElement("h1",null,"MSA options"),z.default.createElement(mt,{checked:s,label:"Draw letters",onChange:()=>{t.setDrawMsaLetters(!s)}}),z.default.createElement(mt,{checked:n,label:"Color letters instead of background of tiles",onChange:()=>{t.setBgColor(!n)}}),z.default.createElement(mt,{checked:c,label:"Enable hiding gappy columns?",onChange:()=>{t.setHideGaps(!c)}}),c?z.default.createElement("div",{className:r.flex},z.default.createElement(Xe.Typography,null,"Hide columns w/ >",i,"% gaps"),z.default.createElement(Xe.Slider,{className:r.field,min:1,max:100,value:i,onChange:(A,u)=>{t.setAllowedGappyness(u)}})):null,z.default.createElement("div",{className:r.flex},z.default.createElement(Xe.Typography,null,"Column width (",vy(o),"px)"),z.default.createElement(Xe.Slider,{className:r.field,min:1,max:50,value:o,onChange:(A,u)=>{t.setColWidth(u)}})),z.default.createElement("div",{className:r.flex},z.default.createElement(Xe.Typography,null,"Row height (",vy(l),"px)"),z.default.createElement(Xe.Slider,{className:r.field,min:1,max:50,value:l,onChange:(A,u)=>{t.setRowHeight(u)}})),z.default.createElement(Xe.TextField,{select:!0,label:"Color scheme",value:a,onChange:A=>{t.setColorSchemeName(A.target.value)}},Object.keys(co).map(A=>z.default.createElement(Xe.MenuItem,{key:A,value:A},A))))}),VD=(0,_s.observer)(function({model:e,onClose:t}){let{classes:r}=Dy();return z.default.createElement(Ty.Dialog,{open:!0,title:"Settings",maxWidth:"xl",onClose:()=>{t()}},z.default.createElement(Xe.DialogContent,{className:r.minw},z.default.createElement(jD,{model:e}),z.default.createElement(Xe.DialogActions,null,z.default.createElement(Xe.Button,{variant:"contained",color:"primary",onClick:()=>{t()}},"Submit"))))}),YD=VD});var fo,Ly,WD,zD,$D,KD,Ry,Fy=g(()=>{fo=f(Q(),1);gi();GI();Sf();qI();VI();Mf();Ly=f(G(),1);Jx();WD=(0,fo.lazy)(()=>Promise.resolve().then(()=>(By(),by))),zD=(0,fo.lazy)(()=>Promise.resolve().then(()=>(My(),Qy))),$D=(0,fo.lazy)(()=>Promise.resolve().then(()=>(Ny(),ky))),KD=(0,Ly.observer)(({model:e})=>fo.default.createElement(Lr,{"data-testid":"file_menu",menuItems:[{label:"Return to import form",icon:Qc,onClick:()=>{e.reset()}},{label:"Metadata",icon:OI,onClick:()=>{e.queueDialog(t=>[WD,{model:e,onClose:t}])}},{label:"More settings",icon:Mc,onClick:()=>{e.queueDialog(t=>[$D,{model:e,onClose:t}])}},{label:"Domain settings",type:"subMenu",subMenu:qx({model:e})},{label:"Export SVG",icon:JI,onClick:()=>{e.queueDialog(t=>[zD,{onClose:t,model:e}])}}],anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"}},fo.default.createElement(jI,null))),Ry=KD});var Wc,zc,Py,XD,Oy,Gy=g(()=>{Wc=f(Q(),1),zc=f(k(),1),Py=f(G(),1),XD=(0,Py.observer)(function({model:t}){let{hideGaps:r,allowedGappyness:n}=t;return r?Wc.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:8}},Wc.default.createElement(zc.Typography,{style:{whiteSpace:"nowrap"}},"Hide columns w/ >",n,"% gaps"),Wc.default.createElement(zc.Slider,{style:{width:100},min:1,max:100,value:n,onChange:(o,i)=>{t.setAllowedGappyness(i)}})):null}),Oy=XD});var $c,Uy,Hy,jy,ZD,ek,qy,Jy=g(()=>{$c=f(Q(),1),Uy=f(k(),1),Hy=f(G(),1),jy=f(Se(),1),ZD=(0,jy.makeStyles)()({container:{display:"flex",overflow:"hidden",margin:"auto",marginLeft:10},nameFirst:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},nameRest:{whiteSpace:"nowrap",flexShrink:0}}),ek=(0,Hy.observer)(function({model:e}){let{mouseOverRowName:t,mouseCol:r}=e,{classes:n}=ZD();if(!t||r===void 0)return null;let o=Math.floor(t.length/2),i=e.visibleColToSeqPosOneBased(t,r),s=e.visibleColToRowLetter(t,r);return $c.default.createElement(Uy.Typography,{component:"div",className:n.container,title:t},$c.default.createElement("span",{className:n.nameFirst},t.slice(0,o)),$c.default.createElement("span",{className:n.nameRest},t.slice(o),":",i," (",s,")"))}),qy=ek});var Ds,Vy,Kc,Yy,Wy,tk,rk,zy,$y=g(()=>{Ds=f(Q(),1),Vy=f(Qe(),1),Kc=f(k(),1),Yy=f(G(),1),Wy=f(Se(),1),tk=(0,Wy.makeStyles)()({margin:{margin:"auto",marginLeft:10}}),rk=(0,Yy.observer)(({model:e})=>{let{status:t}=e,{classes:r}=tk();return t?Ds.default.createElement(Kc.Typography,{className:r.margin},Ds.default.createElement(Vy.LoadingEllipses,{message:t.msg,component:"span"})," ",t.url?Ds.default.createElement("a",{href:t.url,target:"_blank",rel:"noreferrer"},"(status)"):null," ",t.onCancel?Ds.default.createElement(Kc.Button,{size:"small",onClick:()=>t.onCancel?.()},"Cancel"):null):null}),zy=rk});var Ky,Xy,Zy=g(()=>{"use client";Y();Ky=f(R(),1),Xy=(0,_.createSvgIcon)((0,Ky.jsx)("path",{d:"M3 17v2h6v-2zM3 5v2h10V5zm10 16v-2h8v-2h-8v-2h-2v6zM7 9v2H3v2h4v2h2V9zm14 4v-2H11v2zm-6-4h2V7h4V5h-4V3h-2z"}),"Tune")});function ew(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 tw(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 od=g(()=>{});var id,rw,nk,nw,ow=g(()=>{id=f(Q(),1);gi();Zy();rw=f(G(),1);od();nk=(0,rw.observer)(function({model:e}){return id.default.createElement(Lr,{"data-testid":"msa_settings_menu",closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:ew(e)},id.default.createElement(Xy,null))}),nw=nk});var sd,Xc,iw,ok,sw,aw=g(()=>{sd=f(Q(),1),Xc=f(k(),1),iw=f(G(),1),ok=(0,iw.observer)(function({model:e}){let{currentAlignment:t,alignmentNames:r}=e;return r.length>0?sd.default.createElement(Xc.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)=>sd.default.createElement(Xc.MenuItem,{key:`${n}-${o}`,value:o},n))):null}),sw=ok});var cw,lw,Aw=g(()=>{"use client";Y();cw=f(R(),1),lw=(0,_.createSvgIcon)((0,cw.jsx)("path",{d:"M22 11V3h-7v3H9V3H2v8h7V8h2v10h4v3h7v-8h-7v3h-2V8h2v3z"}),"AccountTree")});var ad,uw,ik,fw,dw=g(()=>{ad=f(Q(),1);gi();Aw();uw=f(G(),1);od();ik=(0,uw.observer)(function({model:e}){let{rows:t}=e;return ad.default.createElement(Lr,{"data-testid":"tree_settings_menu",closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:[...tw(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)}}}]}]:[]]},ad.default.createElement(lw,null))}),fw=ik});var cd,mw,pw=g(()=>{"use client";Y();cd=f(R(),1),mw=(0,_.createSvgIcon)([(0,cd.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,cd.jsx)("path",{d:"M12 10h-2v2H9v-2H7V9h2V7h1v2h2z"},"1")],"ZoomIn")});var gw,hw,Cw=g(()=>{"use client";Y();gw=f(R(),1),hw=(0,_.createSvgIcon)((0,gw.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 Ew,Iw,xw=g(()=>{"use client";Y();Ew=f(R(),1),Iw=(0,_.createSvgIcon)((0,Ew.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 on,ks,yw,sk,ww,bw=g(()=>{on=f(Q(),1);pw();Cw();xw();ks=f(k(),1),yw=f(G(),1),sk=(0,yw.observer)(function({model:t}){return on.default.createElement(on.default.Fragment,null,on.default.createElement(ks.IconButton,{onClick:()=>{t.zoomIn()}},on.default.createElement(mw,null)),on.default.createElement(ks.IconButton,{onClick:()=>{t.zoomOut()}},on.default.createElement(Iw,null)),on.default.createElement(ks.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)}},on.default.createElement(hw,null)))}),ww=sk});var Bw,Sw,Qw=g(()=>{"use client";Y();Bw=f(R(),1),Sw=(0,_.createSvgIcon)((0,Bw.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 Mw,vw,Tw=g(()=>{"use client";Y();Mw=f(R(),1),vw=(0,_.createSvgIcon)((0,Mw.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 ld,_w,ak,Dw,kw=g(()=>{ld=f(Q(),1);gi();Qw();Tw();_w=f(G(),1),ak=(0,_w.observer)(function({model:e}){return ld.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:vw,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."}]},ld.default.createElement(Sw,null))}),Dw=ak});var Nw,Lw=g(()=>{Nw="5.4.1"});var Pw={};We(Pw,{default:()=>Fw});function Fw({onClose:e}){return He.default.createElement(Rw.Dialog,{open:!0,title:"About",onClose:()=>{e()}},He.default.createElement(St.DialogContent,null,He.default.createElement(St.Typography,null,"MSAView ",Nw," (",He.default.createElement(St.Link,{href:"https://github.com/gmod/react-msaview"},"Github"),")"),He.default.createElement("ul",null,He.default.createElement("li",null,He.default.createElement(St.Typography,null,"We use some color schemes from the"," ",He.default.createElement(St.Link,{href:"https://github.com/biotite-dev/biotite"},"biotite")," ","project, and their license is reproduced"," ",He.default.createElement(St.Link,{href:"https://github.com/biotite-dev/biotite/blob/master/LICENSE.rst"},"here"))),He.default.createElement("li",null,He.default.createElement(St.Typography,null,"See this page for some information on jalview colorings"," ",He.default.createElement(St.Link,{href:"https://www.jalview.org/help/html/colourSchemes/"},"here"))),He.default.createElement("li",null,He.default.createElement(St.Typography,null,"See this page for some info on the clustal, cinema, maeditor, and lesk color schemes"," ",He.default.createElement(St.Link,{href:"http://www.bioinformatics.nl/~berndb/aacolour.html"},"here"))),He.default.createElement("li",null,He.default.createElement(St.Typography,null,"See this paper about the flower color scheme"," ",He.default.createElement(St.Link,{href:"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7245768/"},"here"))))))}var He,Rw,St,Ow=g(()=>{He=f(Q(),1),Rw=f(Qe(),1),St=f(k(),1);Lw()});function Ak(){return Le.default.createElement("div",{style:{flex:1}})}var Le,Gw,Uw,ck,lk,Hw,jw=g(()=>{Le=f(Q(),1);Qg();Tg();Gw=f(k(),1),Uw=f(G(),1);FI();Fy();Gy();Jy();$y();ow();aw();dw();bw();kw();ck=(0,Le.lazy)(()=>Promise.resolve().then(()=>(Ow(),Pw))),lk=(0,Uw.observer)(function({model:e}){let[t,{height:r}]=FA();return(0,Le.useEffect)(()=>{e.setHeaderHeight(r??0)},[e,r]),Le.default.createElement("div",{ref:t,style:{display:"flex"}},Le.default.createElement(Ry,{model:e}),Le.default.createElement(RI,{model:e}),Le.default.createElement(fw,{model:e}),Le.default.createElement(nw,{model:e}),Le.default.createElement(ww,{model:e}),Le.default.createElement(Dw,{model:e}),Le.default.createElement(Oy,{model:e}),Le.default.createElement("div",{style:{paddingLeft:20,margin:"auto"}},Le.default.createElement(sw,{model:e})),Le.default.createElement(qy,{model:e}),Le.default.createElement(Ak,null),Le.default.createElement(zy,{model:e}),Le.default.createElement(Gw.IconButton,{onClick:()=>{e.queueDialog(n=>[ck,{onClose:n}])}},Le.default.createElement(vg,null)))});Hw=lk});var Pr,qw,uk,Jw,Vw=g(()=>{Pr=f(Q(),1),qw=f(G(),1);sA();xa();uk=(0,qw.observer)(function({model:e}){let[t,r]=(0,Pr.useState)(!1),{minimapHeight:n}=e,{unit:o,s:i,w:s,polygonHeight:a,polygonPoints:c}=la(e),l="rgba(66, 119, 127, 0.3)",{startDrag:A}=pn("x",(0,Pr.useCallback)((u,d)=>{e.setScrollX(d-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:s,zIndex:100},onMouseOver:()=>{r(!0)},onMouseOut:()=>{r(!1)},onMouseDown:u=>{A(u,e.scrollX)}}),Pr.default.createElement("svg",{height:a,style:{width:"100%"}},Pr.default.createElement("polygon",{fill:l,points:c})))}),Jw=uk});function Ad(){return Zc.default.createElement("div",{style:{position:"absolute",left:"50%",top:"50%"}},Zc.default.createElement(el.CircularProgress,null),Zc.default.createElement(el.Typography,null,"Loading..."))}var Zc,el,Yw=g(()=>{Zc=f(Q(),1),el=f(k(),1)});function tl(e){let t=(0,zw.useTheme)(),r=(0,Ww.useMemo)(()=>Ji(e,t),[e,t]);return{theme:t,contrastScheme:r}}var Ww,zw,ud=g(()=>{Ww=f(Q(),1),zw=f(k(),1);mn()});function $w(e,t,r,n,o,i){let{left:s,top:a}=t.getBoundingClientRect();return{col:Math.floor((e.clientX-s+r)/o),row:Math.floor((e.clientY-a+n)/i)}}var pr,Kw,Xw,Zw,fk,eb,tb=g(()=>{pr=f(Q(),1),Kw=f(Qe(),1),Xw=f(Ar(),1),Zw=f(G(),1);cA();IA();ud();fk=(0,Zw.observer)(function({model:e,offsetX:t,offsetY:r}){let{colWidth:n,rowHeight:o,scrollY:i,scrollX:s,colorScheme:a,blockSize:c,mouseClickCol:l,mouseClickRow:A,highResScaleFactor:u}=e,{theme:d,contrastScheme:m}=tl(a),h=(0,pr.useRef)(null);(0,pr.useEffect)(()=>{let p=h.current?.getContext("2d");if(p)return(0,Xw.autorun)(()=>{p.resetTransform(),p.clearRect(0,0,c*u,c*u),e.actuallyShowDomains&&ua({ctx:p,offsetX:t,offsetY:r,model:e}),ga({ctx:p,theme:d,offsetX:t,offsetY:r,contrastScheme:m,model:e})})},[e,t,r,d,c,u,m]);let[E,x]=(0,pr.useState)(),{hoveredInsertion:I}=e;return pr.default.createElement(pr.default.Fragment,null,pr.default.createElement("canvas",{ref:h,onMouseMove:p=>{if(h.current){let{col:y,row:b}=$w(p,h.current,t,r,n,o);y>=0&&y<e.numColumns&&b>=0&&b<e.numRows?e.setMousePos(y,b):e.setMousePos(void 0,void 0),x(e.hoveredInsertion?{x:p.clientX,y:p.clientY}:void 0)}},onClick:p=>{if(h.current){let{col:y,row:b}=$w(p,h.current,t,r,n,o);y===l&&b===A?e.setMouseClickPos(void 0,void 0):e.setMouseClickPos(y,b)}},onMouseLeave:()=>{e.setMousePos(),x(void 0)},width:c*u,height:c*u,style:{position:"absolute",top:i+r,left:s+t,width:c,height:c}}),I&&E?pr.default.createElement(Kw.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)}),eb=fk});var Or,rb,dk,nb,ob=g(()=>{Or=f(Q(),1),rb=f(G(),1);Yw();tb();wa();dk=(0,rb.observer)(function({model:e}){let{MSA:t,verticalScrollbarWidth:r,msaFilehandle:n,height:o,msaAreaWidth:i,blocks2d:s,scrollZoom:a}=e,c=(0,Or.useRef)(null),l=(0,Or.useCallback)(h=>{e.doScrollX(h)},[e]),A=(0,Or.useCallback)(h=>{e.doScrollY(h)},[e]),u=(0,Or.useCallback)((h,E,x)=>{e.zoomToPos(h,E,x)},[e]),{onMouseDown:d,onMouseUp:m}=Lo({ref:c,onScrollX:l,onScrollY:A,onZoom:u,scrollZoom:a});return Or.default.createElement("div",{ref:c,onMouseDown:d,onMouseUp:m,onMouseLeave:h=>{h.preventDefault()},style:{position:"relative",height:o,width:i-r,overflow:"hidden"}},!t&&!n?null:t?s.map(([h,E])=>Or.default.createElement(eb,{key:`${h}_${E}`,model:e,offsetX:h,offsetY:E})):Or.default.createElement(Ad,null))}),nb=dk});function sb({ctx:e,model:t}){let{mouseCol:r,colWidth:n,msaAreaWidth:o,verticalScrollbarWidth:i,height:s,rowHeight:a,scrollX:c,scrollY:l,mouseRow:A,mouseClickRow:u,mouseClickCol:d,relativeTo:m,hoveredTreeNode:h,highlightedColumns:E,highResScaleFactor:x}=t,I=o-i;if(e.resetTransform(),e.clearRect(0,0,I*x,s*x),e.scale(x,x),m){let p=t.rowNamesSet.get(m);p!==void 0&&(e.fillStyle=mk,e.fillRect(0,p*a+l,I,a))}if(h){e.fillStyle=pk;for(let p of h.descendantNames){let y=t.rowNamesSet.get(p);y!==void 0&&e.fillRect(0,y*a+l,I,a)}}if(E?.length){e.fillStyle=fd;for(let p of E)e.fillRect(p*n+c,0,n,s)}r!==void 0&&(e.fillStyle=ib,e.fillRect(r*n+c,0,n,s)),A!==void 0&&(e.fillStyle=ib,e.fillRect(0,A*a+l,I,a)),d!==void 0&&(e.fillStyle=fd,e.fillRect(d*n+c,0,n,s)),u!==void 0&&(e.fillStyle=fd,e.fillRect(0,u*a+l,I,a))}var ib,fd,mk,pk,ab=g(()=>{ib="rgba(0,0,0,0.15)",fd="rgba(128,128,0,0.2)",mk="rgba(0,128,255,0.3)",pk="rgba(255,165,0,0.15)"});var bi,cb,lb,Ab,gk,ub,fb=g(()=>{bi=f(Q(),1),cb=f(kt(),1),lb=f(Ar(),1),Ab=f(G(),1);ab();gk=(0,Ab.observer)(function({model:e}){let t=(0,bi.useRef)(null),{height:r,msaAreaWidth:n,verticalScrollbarWidth:o,highResScaleFactor:i}=e,s=n-o;return(0,bi.useEffect)(()=>{let a=t.current?.getContext("2d");return a?(0,lb.autorun)(()=>{(0,cb.isAlive)(e)&&sb({ctx:a,model:e})}):void 0},[e]),bi.default.createElement("canvas",{ref:t,id:"mouseover",width:s*i,height:r*i,style:{position:"absolute",top:0,left:0,width:s,height:r,zIndex:1e3,pointerEvents:"none"}})}),ub=gk});var rl,db,hk,mb,pb=g(()=>{rl=f(Q(),1),db=f(G(),1);ob();fb();hk=(0,db.observer)(function({model:e}){return rl.default.createElement("div",{style:{position:"relative"}},rl.default.createElement(nb,{model:e}),rl.default.createElement(ub,{model:e}))}),mb=hk});var Ns,gb=g(()=>{Ns=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],s=r[o],a=0,c=o>>1;for(;a<c;){let l=(a<<1)+1,A=l+1,u=l+(+(A<o)&+(r[A]<r[l]));if(r[u]>=s)break;t[a]=t[u],r[a]=r[u],a=u}t[a]=i,r[a]=s}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 Ck(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 Ek(e,t,r,n,o,i){let s=[n,o];for(;s.length;){let a=s.pop()||0,c=s.pop()||0;if(a-c<=i&&Math.floor(c/i)>=Math.floor(a/i))continue;let l=e[c],A=e[c+a>>1],u=e[a],d=l>A!=l>u?l:A<l!=A<u?A:u,m=c-1,h=a+1;for(;;){do m++;while(e[m]<d);do h--;while(e[h]>d);if(m>=h)break;Ik(e,t,r,m,h)}s.push(c,h,h+1,a)}}function Ik(e,t,r,n,o){let i=e[n];e[n]=e[o],e[o]=i;let s=4*n,a=4*o,c=t[s],l=t[s+1],A=t[s+2],u=t[s+3];t[s]=t[a],t[s+1]=t[a+1],t[s+2]=t[a+2],t[s+3]=t[a+3],t[a]=c,t[a+1]=l,t[a+2]=A,t[a+3]=u;let d=r[n];r[n]=r[o],r[o]=d}function xk(e,t){let r=e^t,n=65535^r,o=65535^(e|t),i=e&(t^65535),s=r|n>>1,a=r>>1^r,c=o^(o>>1^n&i>>1),l=i^(r&o>>1^i>>1);return r=s&s>>2^a&a>>2,n=s&a>>2^a&(s^a)>>2,o=c^(s&c>>2^a&l>>2),i=l^(a&c>>2^(s^a)&l>>2),s=r&r>>4^n&n>>4,a=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^(s&c>>8^a&l>>8),i=l^(a&c>>8^(s^a)&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,dd,Ls,Cb=g(()=>{gb();hb=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],dd=3,Ls=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!==dd)throw new Error(`Got v${i} data when expected v${dd}.`);let s=hb[o&15];if(!s)throw new Error("Unrecognized array type.");let[a]=new Uint16Array(t,r+2,1),[c]=new Uint32Array(t,r+4,1);return new e(c,a,s,void 0,t,r)}constructor(t,r=16,n=Float64Array,o=ArrayBuffer,i,s=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=s;let a=t,c=a;this._levelBounds=[a*4];do a=Math.ceil(a/this.nodeSize),c+=a,this._levelBounds.push(c*4);while(a!==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,d=this.IndexArrayType;if(i)this.data=i,this._boxes=new u(i,s+8,c*4),this._indices=new d(i,s+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 m=this.data=new o(8+A+c*this.IndexArrayType.BYTES_PER_ELEMENT);this._boxes=new u(m,8,c*4),this._indices=new d(m,8+A,c),this._pos=0,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,new Uint8Array(m,0,2).set([251,(dd<<4)+l]),new Uint16Array(m,2,1)[0]=r,new Uint32Array(m,4,1)[0]=t}this._queue=new Ns}add(t,r,n=t,o=r){let i=this._pos,s=i>>2,a=this._boxes;return this._indices[s]=s,a[i]=t,a[i+1]=r,a[i+2]=n,a[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),s}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:s,_levelBounds:a}=this,c=this.maxX-n||1,l=this.maxY-o||1,A=new Int32Array(r),u=65535,d=u/c,m=u/l;for(let E=0,x=0;E<r;E++){let I=t[x++],p=t[x++],y=t[x++],b=t[x++],w=d*((I+y)/2-n)|0,S=m*((p+b)/2-o)|0;A[E]=xk(w,S)}Ek(A,t,s,0,r-1,i);let h=r*4;for(let E=0,x=0;E<a.length-1;E++){let I=a[E];for(;x<I;){let p=x,y=t[x++],b=t[x++],w=t[x++],S=t[x++];for(let M=1;M<i&&x<I;M++)y=Math.min(y,t[x++]),b=Math.min(b,t[x++]),w=Math.max(w,t[x++]),S=Math.max(S,t[x++]);s[h>>2]=p,t[h++]=y,t[h++]=b,t[h++]=w,t[h++]=S}}this._pos=h}search(t,r,n,o,i){if(this._pos!==this._boxes.length)throw new Error("Data not yet indexed - call index.finish().");let{_boxes:s,_levelBounds:a,_indices:c,nodeSize:l}=this,A=this.numItems*4,u=s.length-4,d=a.length-1,m=[],h=[],E=!1;for(;u!==void 0;){let x=Math.min(u+l*4,a[d]),I=u>=A;if(E)this._collectContained(u,x,d,A,h,i);else for(let p=u;p<x;p+=4){let y=s[p];if(n<y)continue;let b=s[p+1];if(o<b)continue;let w=s[p+2];if(t>w)continue;let S=s[p+3];if(r>S)continue;let M=c[p>>2]|0;if(I){let F=+(t<=y&&r<=b&&n>=w&&o>=S);m.push(M|F,d-1)}else(i===void 0||i(M,y,b,w,S))&&h.push(M)}d=m.pop(),u=m.pop(),u!==void 0&&(E=(u&1)===1,u&=-2)}return h}_collectContained(t,r,n,o,i,s){let a=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(s===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;s(u,a[l],a[l+1],a[l+2],a[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:s,_levelBounds:a,_indices:c,_queue:l,nodeSize:A}=this,u=this.numItems*4,d=A*4,m=[],h=o*o,E=n===1,x=h;for(l.push(s.length-4<<1,0);l.length;){let I=l.ids[0];if(I&1){if(l.pop(),m.push(I>>1),m.length===n)break;continue}l.pop();let p=I>>1,y=p<u,b=Math.min(p+d,Ck(p,a));for(let w=p;w<b;w+=4){let S=s[w],M=s[w+1],F=s[w+2],D=s[w+3],L=Math.max(Math.max(S-t,t-F),0),v=Math.max(Math.max(M-r,r-D),0),O=L*L+v*v;if(O>x)continue;let U=c[w>>2]|0;y?(i===void 0||i(U))&&(l.push(U<<1|1,O),E&&O<x&&(x=O)):l.push(U<<1,O)}}return l.clear(),m}}});var Rs,Bi,Eb,yk,Ib,xb=g(()=>{Rs=f(Q(),1),Bi=f(k(),1),Eb=f(G(),1),yk=(0,Eb.observer)(function({node:e,model:t,onClose:r}){return Rs.default.createElement(Bi.Menu,{anchorReference:"anchorPosition",anchorPosition:{left:e.x,top:e.y},transitionDuration:0,keepMounted:!0,open:!!e,onClose:r},Rs.default.createElement(Bi.MenuItem,{dense:!0,disabled:!0},e.name),Rs.default.createElement(Bi.MenuItem,{dense:!0,onClick:()=>{t.toggleCollapsed(e.id),r()}},t.collapsed.includes(e.id)?"Expand this node":"Collapse this node"),Rs.default.createElement(Bi.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"))}),Ib=yk});var Bb={};We(Bb,{default:()=>bk});var Gr,yb,wb,bb,wk,bk,Sb=g(()=>{Gr=f(Q(),1);Uc();rd();yb=f(Qe(),1),wb=f(k(),1),bb=f(G(),1);nd();wk=(0,bb.observer)(function({info:e,model:t,nodeName:r,onClose:n}){let{treeMetadata:o,rows:i}=t,s=o[r],a=i.find(c=>c[0]===r);return Gr.default.createElement(yb.Dialog,{onClose:()=>{n()},open:!0,title:"Tree node info",maxWidth:"xl"},Gr.default.createElement(wb.DialogContent,null,Gr.default.createElement(uo,{title:"Attributes"},Gr.default.createElement(Fr,{attributes:{nodeName:r,...e}})),Gr.default.createElement(uo,{title:"Sequence"},a?Gr.default.createElement(Ts,{str:[a]}):Gr.default.createElement("div",null,"Sequence not found")),s?Gr.default.createElement(uo,{title:"Extra metadata"},Gr.default.createElement(Fr,{attributes:s})):null))}),bk=wk});var sn,Tn,Qb,Bk,Sk,Mb,vb=g(()=>{sn=f(Q(),1),Tn=f(k(),1),Qb=f(G(),1),Bk=(0,sn.lazy)(()=>Promise.resolve().then(()=>(Sb(),Bb))),Sk=(0,Qb.observer)(function({node:e,onClose:t,model:r}){let{collapsed:n}=r,{name:o,id:i}=e,s=n.includes(i);return sn.default.createElement(Tn.Menu,{anchorReference:"anchorPosition",anchorPosition:{top:e.y,left:e.x},transitionDuration:0,keepMounted:!0,open:!!e,onClose:t},sn.default.createElement(Tn.MenuItem,{dense:!0,disabled:!0},o),sn.default.createElement(Tn.MenuItem,{dense:!0,onClick:()=>{r.queueDialog(a=>[Bk,{info:r.getRowData(o),model:r,nodeName:o,onClose:a}]),t()}},"More info..."),sn.default.createElement(Tn.MenuItem,{dense:!0,onClick:()=>{r.toggleCollapsed(i),t()}},s?"Expand subtree":"Collapse subtree"),sn.default.createElement(Tn.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(e.name),t()}},"Indicate differences from this row"),r.relativeTo?sn.default.createElement(Tn.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(void 0),t()}},"Clear reference row"):null)}),Mb=Sk});var Ge,Tb,_b,Db,kb,Qk,md,Mk,Nb,Lb=g(()=>{Ge=f(Q(),1),Tb=f(k(),1);Cb();_b=f(Ar(),1),Db=f(G(),1),kb=f(Se(),1);xb();vb();Ia();Qk=(0,kb.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"}})),md=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 Ls(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])??[]}},Mk=(0,Db.observer)(function({model:e,offsetY:t}){let{classes:r}=Qk(),n=(0,Tb.useTheme)(),o=(0,Ge.useRef)(null),i=(0,Ge.useRef)(new md),s=(0,Ge.useRef)(null),[a,c]=(0,Ge.useState)(),[l,A]=(0,Ge.useState)(),[u,d]=(0,Ge.useState)(),[m,h]=(0,Ge.useState)(),{scrollY:E,treeAreaWidth:x,blockSize:I,highResScaleFactor:p}=e,y=x+Do,b=I,w=y*p,S=b*p;(0,Ge.useEffect)(()=>{let L=o.current?.getContext("2d");if(L)return(0,_b.autorun)(()=>{L.resetTransform(),L.clearRect(0,0,(x+Do)*p,I*p),Ea({ctx:L,model:e,offsetY:t,clickMap:i.current,theme:n})})},[e,I,p,x,t,n]),(0,Ge.useEffect)(()=>{let L=s.current?.getContext("2d");if(L&&(L.resetTransform(),L.clearRect(0,0,x+Do,I),L.translate(0,-t),u)){let{minX:v,maxX:O,minY:U,maxY:H}=u;L.fillStyle="rgba(0,0,0,0.1)",L.fillRect(v,U,O-v,H-U)}},[u,t,I,x]);function M(L){let v=L.nativeEvent.offsetX,O=L.nativeEvent.offsetY,[U]=i.current.search({minX:v,maxX:v+1,minY:O+t,maxY:O+1+t});return U?.branch?{...U,x:L.clientX,y:L.clientY}:void 0}function F(L){let v=L.nativeEvent.offsetX,O=L.nativeEvent.offsetY,[U]=i.current.search({minX:v,maxX:v+1,minY:O+t,maxY:O+1+t});return U&&!U.branch?{...U,x:L.clientX,y:L.clientY}:void 0}let D={width:y,height:b,top:E+t,left:0,position:"absolute"};return Ge.default.createElement(Ge.default.Fragment,null,a?.id?Ge.default.createElement(Ib,{node:a,model:e,onClose:()=>{c(void 0)}}):null,l?.id?Ge.default.createElement(Mb,{node:l,model:e,onClose:()=>{A(void 0)}}):null,Ge.default.createElement("canvas",{width:w,height:S,style:D,onMouseMove:L=>{if(!o.current)return;let v=F(L),O=M(L),U=v||O;if(o.current.style.cursor=U?"pointer":"default",d(v),h(U?{name:U.name,x:L.clientX,y:L.clientY}:void 0),U){if(e.setHoveredTreeNode(U.id),v?.name){let H=e.rowNamesSet.get(v.name);H!==void 0&&e.setMousePos(void 0,H)}}else e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},onClick:L=>{let{clientX:v,clientY:O}=L,U=M(L);U?.id&&c({x:v,y:O,id:U.id,name:U.name});let H=F(L);H?.id&&A({...H,x:v,y:O})},onMouseLeave:()=>{d(void 0),h(void 0),e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},ref:o}),Ge.default.createElement("canvas",{style:{...D,pointerEvents:"none",zIndex:100},width:y,height:b,ref:s}),m?Ge.default.createElement("div",{className:r.tooltip,style:{left:m.x+12,top:m.y+12}},m.name):null)}),Nb=Mk});var gr,Fb,Pb,Ob,vk,Rb,Tk,Gb,Ub=g(()=>{gr=f(Q(),1),Fb=f(kt(),1),Pb=f(Ar(),1),Ob=f(G(),1);Lb();Ia();wa();vk="rgba(0,128,255,0.3)",Rb="rgba(255,165,0,0.2)",Tk=(0,Ob.observer)(function({model:e}){let t=(0,gr.useRef)(null),r=(0,gr.useRef)(null),{treeWidth:n,height:o,blocksY:i,treeAreaWidth:s}=e,a=(0,gr.useCallback)(A=>{e.doScrollY(A)},[e]),{onMouseDown:c,onMouseUp:l}=Lo({ref:t,onScrollY:a});return(0,gr.useEffect)(()=>{let A=r.current?.getContext("2d");return A?(0,Pb.autorun)(()=>{if((0,Fb.isAlive)(e)){let{relativeTo:u,leaves:d,rowHeight:m,hoveredTreeNode:h,treeAreaWidth:E,height:x,scrollY:I,mouseOverRowName:p}=e;A.resetTransform(),A.clearRect(0,0,E,x);let y=new Map(d.map(w=>[w.data.name,w])),b=w=>{let S=y.get(w);S&&A.fillRect(0,S.x+I-m/2,E,m)};if(u&&(A.fillStyle=vk,b(u)),h){A.fillStyle=Rb;for(let w of h.descendantNames)b(w)}p&&p!==u&&!h?.descendantNames.includes(p)&&(A.fillStyle=Rb,b(p))}}):void 0},[e]),gr.default.createElement("div",{ref:t,onMouseDown:c,onMouseUp:l,onMouseLeave:A=>{A.preventDefault()},style:{height:o,position:"relative",width:n+Do}},i.map(A=>gr.default.createElement(Nb,{key:A,model:e,offsetY:A})),gr.default.createElement("canvas",{ref:r,width:s,height:o,style:{position:"absolute",top:0,left:0,width:s,height:o,zIndex:1e3,pointerEvents:"none"}}))}),Gb=Tk});var pd,Hb,_k,jb,qb=g(()=>{pd=f(Q(),1),Hb=f(G(),1);Ub();_k=(0,Hb.observer)(function({model:e}){let{treeAreaWidth:t}=e;return pd.default.createElement("div",{style:{overflow:"hidden",flexShrink:0,width:t}},pd.default.createElement(Gb,{model:e}))}),jb=_k});var Jb,Vb,Dk,Yb,Wb=g(()=>{Jb=f(Q(),1),Vb=f(G(),1),Dk=(0,Vb.observer)(({model:e})=>{let{treeAreaWidth:t}=e;return Jb.default.createElement("div",{style:{flexShrink:0,width:t}})}),Yb=Dk});var Z,mo,kk,Nk,Lk,Rk,Fk,Pk,zb,$b=g(()=>{Z=f(Q(),1),mo=f(G(),1);og();NA();yg();Sg();jw();Vw();pb();qb();Wb();kk=(0,mo.observer)(function({model:e}){let{showHorizontalScrollbar:t}=e;return Z.default.createElement("div",{style:{display:"flex"}},Z.default.createElement(Yb,{model:e}),t?Z.default.createElement(Jw,{model:e}):null)}),Nk=(0,mo.observer)(function({model:e}){let{mouseCol:t,mouseClickCol:r,colWidth:n,scrollX:o,treeAreaWidth:i,resizeHandleWidth:s,totalTrackAreaHeight:a,msaAreaWidth:c,verticalScrollbarWidth:l}=e,A=i+s,u=c-l;return Z.default.createElement("div",{style:{position:"absolute",left:A,top:0,width:u,height:a,overflow:"hidden",pointerEvents:"none"}},t!==void 0?Z.default.createElement("div",{style:{position:"absolute",left:t*n+o,top:0,width:n,height:a,backgroundColor:"rgba(0,0,0,0.15)",zIndex:100}}):null,r!==void 0?Z.default.createElement("div",{style:{position:"absolute",left:r*n+o,top:0,width:n,height:a,backgroundColor:"rgba(128,128,0,0.2)",zIndex:100}}):null)}),Lk=(0,mo.observer)(function({model:e}){let{turnedOnTracks:t}=e;return t.length===0?null:Z.default.createElement("div",{style:{position:"relative"}},Z.default.createElement(Nk,{model:e}),t.map(r=>Z.default.createElement(xg,{key:r.model.id,model:e,track:r})))}),Rk=(0,mo.observer)(function({model:e}){let{showVerticalScrollbar:t}=e;return Z.default.createElement("div",{style:{display:"flex"}},Z.default.createElement(jb,{model:e}),Z.default.createElement(ig,{model:e}),Z.default.createElement(mb,{model:e}),t?Z.default.createElement(Bg,{model:e}):null)}),Fk=(0,mo.observer)(function({model:e}){return Z.default.createElement("div",{style:{position:"relative"}},Z.default.createElement(kk,{model:e}),Z.default.createElement(Lk,{model:e}),Z.default.createElement(Rk,{model:e}))}),Pk=(0,mo.observer)(function({model:e}){let{height:t,viewInitialized:r,DialogComponent:n,DialogProps:o}=e,i=ng();return(0,Z.useEffect)(()=>{e.setHighResScaleFactor(i)},[e,i]),Z.default.createElement("div",null,r?Z.default.createElement(Z.default.Fragment,null,Z.default.createElement("div",{style:{height:t,overflow:"hidden"}},Z.default.createElement(Hw,{model:e}),Z.default.createElement(Fk,{model:e})),Z.default.createElement(sg,{model:e}),n?Z.default.createElement(Z.Suspense,{fallback:null},Z.default.createElement(n,{...o})):null):null)}),zb=Pk});var Kb,Xb,Zb,eB=g(()=>{Kb=`CLUSTAL O(1.2.3) multiple sequence alignment
|
|
40
|
+
`);return Br.default.createElement(Br.default.Fragment,null,Br.default.createElement(Zl.Button,{color:"primary",variant:"contained",onClick:()=>{Rs(l),n(!0),setTimeout(()=>{n(!1)},500)}},r?"Copied!":"Copy to clipboard"),Br.default.createElement(bt,{label:"Show gaps",checked:o,onChange:()=>{i(!o)}}),Br.default.createElement(bt,{label:"Show empty",checked:s,onChange:()=>{a(!s)}}),Br.default.createElement(Zl.TextField,{variant:"outlined",multiline:!0,className:t.dialogContent,minRows:5,maxRows:10,fullWidth:!0,value:l,slotProps:{input:{readOnly:!0,className:t.textAreaFont}}}))}var Br,Zl,k1,LR,Wm=h(()=>{Br=m(_(),1),Zl=m(O(),1),k1=m(De(),1);Xl();ef();LR=(0,k1.makeStyles)()({textAreaFont:{fontFamily:"Courier New",wordWrap:"break-word"},dialogContent:{background:"lightgrey",margin:4,minWidth:"80em"}})});var R1={};rt(R1,{default:()=>FR});var os,D1,N1,L1,RR,FR,F1=h(()=>{os=m(_(),1);Wl();Ym();D1=m(Ne(),1),N1=m(O(),1),L1=m(j(),1);Wm();RR=(0,L1.observer)(function({model:e,onClose:t}){let{header:r}=e;return os.default.createElement(D1.Dialog,{onClose:()=>{t()},open:!0,title:"Metadata",maxWidth:"xl"},os.default.createElement(N1.DialogContent,null,os.default.createElement(Kr,{attributes:r}),os.default.createElement(Uo,{title:"sequence"},os.default.createElement(ya,{str:e.rows}))))}),FR=RR});var O1={};rt(O1,{default:()=>P1});function P1({model:e,onClose:t}){let[r,n]=(0,ke.useState)(!0),[o,i]=(0,ke.useState)(!0),[s,a]=(0,ke.useState)("viewport"),[c,l]=(0,ke.useState)(),A=(0,Qe.useTheme)(),{totalWidth:u,totalHeight:f,treeAreaWidth:d,turnedOnTracks:g,totalTrackAreaHeight:E}=e,I=g.length>0,x=u+d,p=f+(o?E:0),w=s==="entire"&&(x>1e4||p>1e4);return ke.default.createElement(eA.Dialog,{onClose:()=>{t()},open:!0,title:"Export SVG"},ke.default.createElement(Qe.DialogContent,null,c?ke.default.createElement(eA.ErrorMessage,{error:c}):null,ke.default.createElement(Qe.Typography,null,"Settings:"),ke.default.createElement(bt,{label:"Include minimap?",disabled:s==="entire",checked:r,onChange:()=>{n(!r)}}),I?ke.default.createElement(bt,{label:"Include tracks?",checked:o,onChange:()=>{i(!o)}}):null,ke.default.createElement("div",null,ke.default.createElement(Qe.FormControl,null,ke.default.createElement(Qe.FormLabel,null,"Export type"),ke.default.createElement(Qe.RadioGroup,{value:s,onChange:y=>{let{value:S}=y.target;(S==="entire"||S==="viewport")&&a(S)}},ke.default.createElement(Qe.FormControlLabel,{value:"entire",control:ke.default.createElement(Qe.Radio,null),label:"Entire MSA"}),ke.default.createElement(Qe.FormControlLabel,{value:"viewport",control:ke.default.createElement(Qe.Radio,null),label:"Current viewport only"})))),w?ke.default.createElement(Qe.Alert,{severity:"warning",style:{marginTop:8}},"The entire MSA is very large (",Math.round(x),"x",Math.round(p)," pixels). Export may be slow or fail."):null),ke.default.createElement(Qe.DialogActions,null,ke.default.createElement(Qe.Button,{variant:"contained",color:"primary",onClick:()=>{e.exportSVG({theme:A,includeMinimap:s==="entire"?!1:r,includeTracks:I&&o,exportType:s}).then(()=>{t()}).catch(y=>{console.error(y),l(y)})}},"Submit"),ke.default.createElement(Qe.Button,{variant:"contained",color:"secondary",onClick:()=>{t()}},"Cancel")))}var ke,eA,Qe,G1=h(()=>{ke=m(_(),1),eA=m(Ne(),1),Qe=m(O(),1);Xl()});var V1={};rt(V1,{default:()=>HR});var re,H1,at,ba,j1,q1,U1,PR,OR,GR,UR,HR,J1=h(()=>{re=m(_(),1),H1=m(Ne(),1),at=m(O(),1),ba=m(j(),1),j1=m(De(),1);Dl();Xl();q1=(0,j1.makeStyles)()(e=>({field:{margin:e.spacing(4)},flex:{display:"flex"},minw:{width:"80em"}})),U1=(e=0)=>+e.toFixed(1),PR=(0,ba.observer)(function({model:e}){return re.default.createElement(re.default.Fragment,null,re.default.createElement(OR,{model:e}),re.default.createElement(GR,{model:e}))}),OR=(0,ba.observer)(function({model:t}){let{drawTree:r,drawLabels:n,drawNodeBubbles:o,labelsAlignRight:i,showBranchLen:s}=t;return re.default.createElement("div",null,re.default.createElement("h1",null,"Tree options"),re.default.createElement(bt,{checked:s,label:"Show branch length?",onChange:()=>{t.setShowBranchLen(!s)}}),re.default.createElement(bt,{checked:o,label:"Draw clickable bubbles on tree branches?",onChange:()=>{t.setDrawNodeBubbles(!o)}}),re.default.createElement(bt,{checked:r,label:"Show tree?",onChange:()=>{t.setDrawTree(!r)}}),re.default.createElement(bt,{checked:i,label:"Tree labels align right?",onChange:()=>{t.setLabelsAlignRight(!i)}}),re.default.createElement(bt,{checked:n,label:"Draw labels",onChange:()=>{t.setDrawLabels(!n)}}))}),GR=(0,ba.observer)(function({model:t}){let{classes:r}=q1(),{bgColor:n,colWidth:o,allowedGappyness:i,drawMsaLetters:s,colorSchemeName:a,hideGaps:c,rowHeight:l}=t;return re.default.createElement("div",null,re.default.createElement("h1",null,"MSA options"),re.default.createElement(bt,{checked:s,label:"Draw letters",onChange:()=>{t.setDrawMsaLetters(!s)}}),re.default.createElement(bt,{checked:n,label:"Color letters instead of background of tiles",onChange:()=>{t.setBgColor(!n)}}),re.default.createElement(bt,{checked:c,label:"Enable hiding gappy columns?",onChange:()=>{t.setHideGaps(!c)}}),c?re.default.createElement("div",{className:r.flex},re.default.createElement(at.Typography,null,"Hide columns w/ >",i,"% gaps"),re.default.createElement(at.Slider,{className:r.field,min:1,max:100,value:i,onChange:(A,u)=>{t.setAllowedGappyness(u)}})):null,re.default.createElement("div",{className:r.flex},re.default.createElement(at.Typography,null,"Column width (",U1(o),"px)"),re.default.createElement(at.Slider,{className:r.field,min:1,max:50,value:o,onChange:(A,u)=>{t.setColWidth(u)}})),re.default.createElement("div",{className:r.flex},re.default.createElement(at.Typography,null,"Row height (",U1(l),"px)"),re.default.createElement(at.Slider,{className:r.field,min:1,max:50,value:l,onChange:(A,u)=>{t.setRowHeight(u)}})),re.default.createElement(at.TextField,{select:!0,label:"Color scheme",value:a,onChange:A=>{t.setColorSchemeName(A.target.value)}},Object.keys(Po).map(A=>re.default.createElement(at.MenuItem,{key:A,value:A},A))))}),UR=(0,ba.observer)(function({model:e,onClose:t}){let{classes:r}=q1();return re.default.createElement(H1.Dialog,{open:!0,title:"Settings",maxWidth:"xl",onClose:()=>{t()}},re.default.createElement(at.DialogContent,{className:r.minw},re.default.createElement(PR,{model:e}),re.default.createElement(at.DialogActions,null,re.default.createElement(at.Button,{variant:"contained",color:"primary",onClick:()=>{t()}},"Submit"))))}),HR=UR});var Ho,Y1,jR,qR,VR,JR,W1,z1=h(()=>{Ho=m(_(),1);Ki();Xy();hm();rb();ob();Em();Y1=m(j(),1);n1();jR=(0,Ho.lazy)(()=>Promise.resolve().then(()=>(F1(),R1))),qR=(0,Ho.lazy)(()=>Promise.resolve().then(()=>(G1(),O1))),VR=(0,Ho.lazy)(()=>Promise.resolve().then(()=>(J1(),V1))),JR=(0,Y1.observer)(({model:e})=>Ho.default.createElement(zr,{"data-testid":"file_menu",menuItems:[{label:"Return to import form",icon:Nl,onClick:()=>{e.reset()}},{label:"Metadata",icon:Ky,onClick:()=>{e.queueDialog(t=>[jR,{model:e,onClose:t}])}},{label:"More settings",icon:Ll,onClick:()=>{e.queueDialog(t=>[VR,{model:e,onClose:t}])}},{label:"Domain settings",type:"subMenu",subMenu:r1({model:e})},{label:"Export SVG",icon:nb,onClick:()=>{e.queueDialog(t=>[qR,{onClose:t,model:e}])}}],anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"}},Ho.default.createElement(tb,null))),W1=JR});var tA,rA,$1,YR,K1,X1=h(()=>{tA=m(_(),1),rA=m(O(),1),$1=m(j(),1),YR=(0,$1.observer)(function({model:t}){let{hideGaps:r,allowedGappyness:n}=t;return r?tA.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:8}},tA.default.createElement(rA.Typography,{style:{whiteSpace:"nowrap"}},"Hide columns w/ >",n,"% gaps"),tA.default.createElement(rA.Slider,{style:{width:100},min:1,max:100,value:n,onChange:(o,i)=>{t.setAllowedGappyness(i)}})):null}),K1=YR});var nA,Z1,eS,tS,WR,zR,rS,nS=h(()=>{nA=m(_(),1),Z1=m(O(),1),eS=m(j(),1),tS=m(De(),1),WR=(0,tS.makeStyles)()({container:{display:"flex",overflow:"hidden",margin:"auto",marginLeft:10},nameFirst:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},nameRest:{whiteSpace:"nowrap",flexShrink:0}}),zR=(0,eS.observer)(function({model:e}){let{mouseOverRowName:t,mouseCol:r}=e,{classes:n}=WR();if(!t||r===void 0)return null;let o=Math.floor(t.length/2),i=e.visibleColToSeqPosOneBased(t,r),s=e.visibleColToRowLetter(t,r);return nA.default.createElement(Z1.Typography,{component:"div",className:n.container,title:t},nA.default.createElement("span",{className:n.nameFirst},t.slice(0,o)),nA.default.createElement("span",{className:n.nameRest},t.slice(o),":",i," (",s,")"))}),rS=zR});var Sa,oS,oA,iS,sS,$R,KR,aS,cS=h(()=>{Sa=m(_(),1),oS=m(Ne(),1),oA=m(O(),1),iS=m(j(),1),sS=m(De(),1),$R=(0,sS.makeStyles)()({margin:{margin:"auto",marginLeft:10}}),KR=(0,iS.observer)(({model:e})=>{let{status:t}=e,{classes:r}=$R();return t?Sa.default.createElement(oA.Typography,{className:r.margin},Sa.default.createElement(oS.LoadingEllipses,{message:t.msg,component:"span"})," ",t.url?Sa.default.createElement("a",{href:t.url,target:"_blank",rel:"noreferrer"},"(status)"):null," ",t.onCancel?Sa.default.createElement(oA.Button,{size:"small",onClick:()=>t.onCancel?.()},"Cancel"):null):null}),aS=KR});var lS,AS,uS=h(()=>{"use client";$();lS=m(U(),1),AS=(0,F.createSvgIcon)((0,lS.jsx)("path",{d:"M3 17v2h6v-2zM3 5v2h10V5zm10 16v-2h8v-2h-8v-2h-2v6zM7 9v2H3v2h4v2h2V9zm14 4v-2H11v2zm-6-4h2V7h4V5h-4V3h-2z"}),"Tune")});function fS(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 dS(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 zm=h(()=>{});var $m,mS,XR,pS,gS=h(()=>{$m=m(_(),1);Ki();uS();mS=m(j(),1);zm();XR=(0,mS.observer)(function({model:e}){return $m.default.createElement(zr,{"data-testid":"msa_settings_menu",closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:fS(e)},$m.default.createElement(AS,null))}),pS=XR});var Km,iA,hS,ZR,CS,ES=h(()=>{Km=m(_(),1),iA=m(O(),1),hS=m(j(),1),ZR=(0,hS.observer)(function({model:e}){let{currentAlignment:t,alignmentNames:r}=e;return r.length>0?Km.default.createElement(iA.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)=>Km.default.createElement(iA.MenuItem,{key:`${n}-${o}`,value:o},n))):null}),CS=ZR});var xS,IS,wS=h(()=>{"use client";$();xS=m(U(),1),IS=(0,F.createSvgIcon)((0,xS.jsx)("path",{d:"M22 11V3h-7v3H9V3H2v8h7V8h2v10h4v3h7v-8h-7v3h-2V8h2v3z"}),"AccountTree")});var Xm,yS,eF,bS,SS=h(()=>{Xm=m(_(),1);Ki();wS();yS=m(j(),1);zm();eF=(0,yS.observer)(function({model:e}){let{rows:t}=e;return Xm.default.createElement(zr,{"data-testid":"tree_settings_menu",closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:[...dS(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)}}}]}]:[]]},Xm.default.createElement(IS,null))}),bS=eF});var Zm,BS,QS=h(()=>{"use client";$();Zm=m(U(),1),BS=(0,F.createSvgIcon)([(0,Zm.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,Zm.jsx)("path",{d:"M12 10h-2v2H9v-2H7V9h2V7h1v2h2z"},"1")],"ZoomIn")});var vS,MS,_S=h(()=>{"use client";$();vS=m(U(),1),MS=(0,F.createSvgIcon)((0,vS.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 TS,kS,DS=h(()=>{"use client";$();TS=m(U(),1),kS=(0,F.createSvgIcon)((0,TS.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 Sn,Ba,NS,tF,LS,RS=h(()=>{Sn=m(_(),1);QS();_S();DS();Ba=m(O(),1),NS=m(j(),1),tF=(0,NS.observer)(function({model:t}){return Sn.default.createElement(Sn.default.Fragment,null,Sn.default.createElement(Ba.IconButton,{onClick:()=>{t.zoomIn()}},Sn.default.createElement(BS,null)),Sn.default.createElement(Ba.IconButton,{onClick:()=>{t.zoomOut()}},Sn.default.createElement(kS,null)),Sn.default.createElement(Ba.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)}},Sn.default.createElement(MS,null)))}),LS=tF});var FS,PS,OS=h(()=>{"use client";$();FS=m(U(),1),PS=(0,F.createSvgIcon)((0,FS.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 GS,US,HS=h(()=>{"use client";$();GS=m(U(),1),US=(0,F.createSvgIcon)((0,GS.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 ep,jS,rF,qS,VS=h(()=>{ep=m(_(),1);Ki();OS();HS();jS=m(j(),1),rF=(0,jS.observer)(function({model:e}){return ep.default.createElement(zr,{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:US,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."}]},ep.default.createElement(PS,null))}),qS=rF});var JS,YS=h(()=>{JS="5.4.1"});var $S={};rt($S,{default:()=>zS});function zS({onClose:e}){return $e.default.createElement(WS.Dialog,{open:!0,title:"About",onClose:()=>{e()}},$e.default.createElement(Ft.DialogContent,null,$e.default.createElement(Ft.Typography,null,"MSAView ",JS," (",$e.default.createElement(Ft.Link,{href:"https://github.com/gmod/react-msaview"},"Github"),")"),$e.default.createElement("ul",null,$e.default.createElement("li",null,$e.default.createElement(Ft.Typography,null,"We use some color schemes from the"," ",$e.default.createElement(Ft.Link,{href:"https://github.com/biotite-dev/biotite"},"biotite")," ","project, and their license is reproduced"," ",$e.default.createElement(Ft.Link,{href:"https://github.com/biotite-dev/biotite/blob/master/LICENSE.rst"},"here"))),$e.default.createElement("li",null,$e.default.createElement(Ft.Typography,null,"See this page for some information on jalview colorings"," ",$e.default.createElement(Ft.Link,{href:"https://www.jalview.org/help/html/colourSchemes/"},"here"))),$e.default.createElement("li",null,$e.default.createElement(Ft.Typography,null,"See this page for some info on the clustal, cinema, maeditor, and lesk color schemes"," ",$e.default.createElement(Ft.Link,{href:"http://www.bioinformatics.nl/~berndb/aacolour.html"},"here"))),$e.default.createElement("li",null,$e.default.createElement(Ft.Typography,null,"See this paper about the flower color scheme"," ",$e.default.createElement(Ft.Link,{href:"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7245768/"},"here"))))))}var $e,WS,Ft,KS=h(()=>{$e=m(_(),1),WS=m(Ne(),1),Ft=m(O(),1);YS()});function iF(){return He.default.createElement("div",{style:{flex:1}})}var He,XS,ZS,nF,oF,eB,tB=h(()=>{He=m(_(),1);S0();v0();XS=m(O(),1),ZS=m(j(),1);zy();z1();X1();nS();cS();gS();ES();SS();RS();VS();nF=(0,He.lazy)(()=>Promise.resolve().then(()=>(KS(),$S))),oF=(0,ZS.observer)(function({model:e}){let[t,{height:r}]=rf();return(0,He.useEffect)(()=>{e.setHeaderHeight(r??0)},[e,r]),He.default.createElement("div",{ref:t,style:{display:"flex"}},He.default.createElement(W1,{model:e}),He.default.createElement(Wy,{model:e}),He.default.createElement(bS,{model:e}),He.default.createElement(pS,{model:e}),He.default.createElement(LS,{model:e}),He.default.createElement(qS,{model:e}),He.default.createElement(K1,{model:e}),He.default.createElement("div",{style:{paddingLeft:20,margin:"auto"}},He.default.createElement(CS,{model:e})),He.default.createElement(rS,{model:e}),He.default.createElement(iF,null),He.default.createElement(aS,{model:e}),He.default.createElement(XS.IconButton,{onClick:()=>{e.queueDialog(n=>[nF,{onClose:n}])}},He.default.createElement(Q0,null)))});eB=oF});var Xr,rB,sF,nB,oB=h(()=>{Xr=m(_(),1),rB=m(j(),1);Su();Cc();sF=(0,rB.observer)(function({model:e}){let[t,r]=(0,Xr.useState)(!1),{minimapHeight:n}=e,{unit:o,s:i,w:s,polygonHeight:a,polygonPoints:c}=sc(e),l="rgba(66, 119, 127, 0.3)",{startDrag:A}=Fn("x",(0,Xr.useCallback)((u,f)=>{e.setScrollX(f-u/o)},[e,o]));return Xr.default.createElement("div",{style:{position:"relative",height:n,width:"100%"}},Xr.default.createElement("div",{style:{height:12,boxSizing:"border-box",border:"1px solid #555"}}),Xr.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:s,zIndex:100},onMouseOver:()=>{r(!0)},onMouseOut:()=>{r(!1)},onMouseDown:u=>{A(u,e.scrollX)}}),Xr.default.createElement("svg",{height:a,style:{width:"100%"}},Xr.default.createElement("polygon",{fill:l,points:c})))}),nB=sF});function tp(){return sA.default.createElement("div",{style:{position:"absolute",left:"50%",top:"50%"}},sA.default.createElement(aA.CircularProgress,null),sA.default.createElement(aA.Typography,null,"Loading..."))}var sA,aA,iB=h(()=>{sA=m(_(),1),aA=m(O(),1)});function cA(e){let t=(0,aB.useTheme)(),r=(0,sB.useMemo)(()=>vs(e,t),[e,t]);return{theme:t,contrastScheme:r}}var sB,aB,rp=h(()=>{sB=m(_(),1),aB=m(O(),1);Rn()});function cB(e,t,r,n,o,i){let{left:s,top:a}=t.getBoundingClientRect();return{col:Math.floor((e.clientX-s+r)/o),row:Math.floor((e.clientY-a+n)/i)}}var Qr,lB,AB,uB,aF,fB,dB=h(()=>{Qr=m(_(),1),lB=m(Ne(),1),AB=m(Ir(),1),uB=m(j(),1);Qu();Ou();rp();aF=(0,uB.observer)(function({model:e,offsetX:t,offsetY:r}){let{colWidth:n,rowHeight:o,scrollY:i,scrollX:s,colorScheme:a,blockSize:c,mouseClickCol:l,mouseClickRow:A,highResScaleFactor:u}=e,{theme:f,contrastScheme:d}=cA(a),g=(0,Qr.useRef)(null);(0,Qr.useEffect)(()=>{let p=g.current?.getContext("2d");if(p)return(0,AB.autorun)(()=>{p.resetTransform(),p.clearRect(0,0,c*u,c*u),e.actuallyShowDomains&&cc({ctx:p,offsetX:t,offsetY:r,model:e}),dc({ctx:p,theme:f,offsetX:t,offsetY:r,contrastScheme:d,model:e})})},[e,t,r,f,c,u,d]);let[E,I]=(0,Qr.useState)(),{hoveredInsertion:x}=e;return Qr.default.createElement(Qr.default.Fragment,null,Qr.default.createElement("canvas",{ref:g,onMouseMove:p=>{if(g.current){let{col:w,row:y}=cB(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),I(e.hoveredInsertion?{x:p.clientX,y:p.clientY}:void 0)}},onClick:p=>{if(g.current){let{col:w,row:y}=cB(p,g.current,t,r,n,o);w===l&&y===A?e.setMouseClickPos(void 0,void 0):e.setMouseClickPos(w,y)}},onMouseLeave:()=>{e.setMousePos(),I(void 0)},width:c*u,height:c*u,style:{position:"absolute",top:i+r,left:s+t,width:c,height:c}}),x&&E?Qr.default.createElement(lB.BaseTooltip,{clientPoint:{x:E.x,y:E.y+15}},"Insertion (",x.letters.length,e.sequenceType==="amino"?"aa":"bp","):"," ",x.letters.length>20?`${x.letters.slice(0,20)}...`:x.letters):null)}),fB=aF});var Zr,mB,cF,pB,gB=h(()=>{Zr=m(_(),1),mB=m(j(),1);iB();dB();xc();cF=(0,mB.observer)(function({model:e}){let{MSA:t,verticalScrollbarWidth:r,msaFilehandle:n,height:o,msaAreaWidth:i,blocks2d:s,scrollZoom:a}=e,c=(0,Zr.useRef)(null),l=(0,Zr.useCallback)(g=>{e.doScrollX(g)},[e]),A=(0,Zr.useCallback)(g=>{e.doScrollY(g)},[e]),u=(0,Zr.useCallback)((g,E,I)=>{e.zoomToPos(g,E,I)},[e]),{onMouseDown:f,onMouseUp:d}=gi({ref:c,onScrollX:l,onScrollY:A,onZoom:u,scrollZoom:a});return Zr.default.createElement("div",{ref:c,onMouseDown:f,onMouseUp:d,onMouseLeave:g=>{g.preventDefault()},style:{position:"relative",height:o,width:i-r,overflow:"hidden"}},!t&&!n?null:t?s.map(([g,E])=>Zr.default.createElement(fB,{key:`${g}_${E}`,model:e,offsetX:g,offsetY:E})):Zr.default.createElement(tp,null))}),pB=cF});function CB({ctx:e,model:t}){let{mouseCol:r,colWidth:n,msaAreaWidth:o,verticalScrollbarWidth:i,height:s,rowHeight:a,scrollX:c,scrollY:l,mouseRow:A,mouseClickRow:u,mouseClickCol:f,relativeTo:d,hoveredTreeNode:g,highlightedColumns:E,highResScaleFactor:I}=t,x=o-i;if(e.resetTransform(),e.clearRect(0,0,x*I,s*I),e.scale(I,I),d){let p=t.rowNamesSet.get(d);p!==void 0&&(e.fillStyle=lF,e.fillRect(0,p*a+l,x,a))}if(g){e.fillStyle=AF;for(let p of g.descendantNames){let w=t.rowNamesSet.get(p);w!==void 0&&e.fillRect(0,w*a+l,x,a)}}if(E?.length){e.fillStyle=np;for(let p of E)e.fillRect(p*n+c,0,n,s)}r!==void 0&&(e.fillStyle=hB,e.fillRect(r*n+c,0,n,s)),A!==void 0&&(e.fillStyle=hB,e.fillRect(0,A*a+l,x,a)),f!==void 0&&(e.fillStyle=np,e.fillRect(f*n+c,0,n,s)),u!==void 0&&(e.fillStyle=np,e.fillRect(0,u*a+l,x,a))}var hB,np,lF,AF,EB=h(()=>{hB="rgba(0,0,0,0.15)",np="rgba(128,128,0,0.2)",lF="rgba(0,128,255,0.3)",AF="rgba(255,165,0,0.15)"});var is,xB,IB,wB,uF,yB,bB=h(()=>{is=m(_(),1),xB=m(Yt(),1),IB=m(Ir(),1),wB=m(j(),1);EB();uF=(0,wB.observer)(function({model:e}){let t=(0,is.useRef)(null),{height:r,msaAreaWidth:n,verticalScrollbarWidth:o,highResScaleFactor:i}=e,s=n-o;return(0,is.useEffect)(()=>{let a=t.current?.getContext("2d");return a?(0,IB.autorun)(()=>{(0,xB.isAlive)(e)&&CB({ctx:a,model:e})}):void 0},[e]),is.default.createElement("canvas",{ref:t,id:"mouseover",width:s*i,height:r*i,style:{position:"absolute",top:0,left:0,width:s,height:r,zIndex:1e3,pointerEvents:"none"}})}),yB=uF});var lA,SB,fF,BB,QB=h(()=>{lA=m(_(),1),SB=m(j(),1);gB();bB();fF=(0,SB.observer)(function({model:e}){return lA.default.createElement("div",{style:{position:"relative"}},lA.default.createElement(pB,{model:e}),lA.default.createElement(yB,{model:e}))}),BB=fF});var Qa,vB=h(()=>{Qa=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],s=r[o],a=0,c=o>>1;for(;a<c;){let l=(a<<1)+1,A=l+1,u=l+(+(A<o)&+(r[A]<r[l]));if(r[u]>=s)break;t[a]=t[u],r[a]=r[u],a=u}t[a]=i,r[a]=s}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 dF(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 mF(e,t,r,n,o,i){let s=[n,o];for(;s.length;){let a=s.pop()||0,c=s.pop()||0;if(a-c<=i&&Math.floor(c/i)>=Math.floor(a/i))continue;let l=e[c],A=e[c+a>>1],u=e[a],f=l>A!=l>u?l:A<l!=A<u?A:u,d=c-1,g=a+1;for(;;){do d++;while(e[d]<f);do g--;while(e[g]>f);if(d>=g)break;pF(e,t,r,d,g)}s.push(c,g,g+1,a)}}function pF(e,t,r,n,o){let i=e[n];e[n]=e[o],e[o]=i;let s=4*n,a=4*o,c=t[s],l=t[s+1],A=t[s+2],u=t[s+3];t[s]=t[a],t[s+1]=t[a+1],t[s+2]=t[a+2],t[s+3]=t[a+3],t[a]=c,t[a+1]=l,t[a+2]=A,t[a+3]=u;let f=r[n];r[n]=r[o],r[o]=f}function gF(e,t){let r=e^t,n=65535^r,o=65535^(e|t),i=e&(t^65535),s=r|n>>1,a=r>>1^r,c=o^(o>>1^n&i>>1),l=i^(r&o>>1^i>>1);return r=s&s>>2^a&a>>2,n=s&a>>2^a&(s^a)>>2,o=c^(s&c>>2^a&l>>2),i=l^(a&c>>2^(s^a)&l>>2),s=r&r>>4^n&n>>4,a=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^(s&c>>8^a&l>>8),i=l^(a&c>>8^(s^a)&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 MB,op,va,_B=h(()=>{vB();MB=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],op=3,va=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!==op)throw new Error(`Got v${i} data when expected v${op}.`);let s=MB[o&15];if(!s)throw new Error("Unrecognized array type.");let[a]=new Uint16Array(t,r+2,1),[c]=new Uint32Array(t,r+4,1);return new e(c,a,s,void 0,t,r)}constructor(t,r=16,n=Float64Array,o=ArrayBuffer,i,s=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=s;let a=t,c=a;this._levelBounds=[a*4];do a=Math.ceil(a/this.nodeSize),c+=a,this._levelBounds.push(c*4);while(a!==1);this.ArrayType=n,this.IndexArrayType=c<16384?Uint16Array:Uint32Array;let l=MB.indexOf(n),A=c*4*n.BYTES_PER_ELEMENT;if(l<0)throw new Error(`Unexpected typed array class: ${n}.`);let u=n,f=this.IndexArrayType;if(i)this.data=i,this._boxes=new u(i,s+8,c*4),this._indices=new f(i,s+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 f(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,(op<<4)+l]),new Uint16Array(d,2,1)[0]=r,new Uint32Array(d,4,1)[0]=t}this._queue=new Qa}add(t,r,n=t,o=r){let i=this._pos,s=i>>2,a=this._boxes;return this._indices[s]=s,a[i]=t,a[i+1]=r,a[i+2]=n,a[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),s}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:s,_levelBounds:a}=this,c=this.maxX-n||1,l=this.maxY-o||1,A=new Int32Array(r),u=65535,f=u/c,d=u/l;for(let E=0,I=0;E<r;E++){let x=t[I++],p=t[I++],w=t[I++],y=t[I++],S=f*((x+w)/2-n)|0,Q=d*((p+y)/2-o)|0;A[E]=gF(S,Q)}mF(A,t,s,0,r-1,i);let g=r*4;for(let E=0,I=0;E<a.length-1;E++){let x=a[E];for(;I<x;){let p=I,w=t[I++],y=t[I++],S=t[I++],Q=t[I++];for(let b=1;b<i&&I<x;b++)w=Math.min(w,t[I++]),y=Math.min(y,t[I++]),S=Math.max(S,t[I++]),Q=Math.max(Q,t[I++]);s[g>>2]=p,t[g++]=w,t[g++]=y,t[g++]=S,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:s,_levelBounds:a,_indices:c,nodeSize:l}=this,A=this.numItems*4,u=s.length-4,f=a.length-1,d=[],g=[],E=!1;for(;u!==void 0;){let I=Math.min(u+l*4,a[f]),x=u>=A;if(E)this._collectContained(u,I,f,A,g,i);else for(let p=u;p<I;p+=4){let w=s[p];if(n<w)continue;let y=s[p+1];if(o<y)continue;let S=s[p+2];if(t>S)continue;let Q=s[p+3];if(r>Q)continue;let b=c[p>>2]|0;if(x){let k=+(t<=w&&r<=y&&n>=S&&o>=Q);d.push(b|k,f-1)}else(i===void 0||i(b,w,y,S,Q))&&g.push(b)}f=d.pop(),u=d.pop(),u!==void 0&&(E=(u&1)===1,u&=-2)}return g}_collectContained(t,r,n,o,i,s){let a=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(s===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;s(u,a[l],a[l+1],a[l+2],a[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:s,_levelBounds:a,_indices:c,_queue:l,nodeSize:A}=this,u=this.numItems*4,f=A*4,d=[],g=o*o,E=n===1,I=g;for(l.push(s.length-4<<1,0);l.length;){let x=l.ids[0];if(x&1){if(l.pop(),d.push(x>>1),d.length===n)break;continue}l.pop();let p=x>>1,w=p<u,y=Math.min(p+f,dF(p,a));for(let S=p;S<y;S+=4){let Q=s[S],b=s[S+1],k=s[S+2],T=s[S+3],v=Math.max(Math.max(Q-t,t-k),0),M=Math.max(Math.max(b-r,r-T),0),L=v*v+M*M;if(L>I)continue;let P=c[S>>2]|0;w?(i===void 0||i(P))&&(l.push(P<<1|1,L),E&&L<I&&(I=L)):l.push(P<<1,L)}}return l.clear(),d}}});var Ma,ss,TB,hF,kB,DB=h(()=>{Ma=m(_(),1),ss=m(O(),1),TB=m(j(),1),hF=(0,TB.observer)(function({node:e,model:t,onClose:r}){return Ma.default.createElement(ss.Menu,{anchorReference:"anchorPosition",anchorPosition:{left:e.x,top:e.y},transitionDuration:0,keepMounted:!0,open:!!e,onClose:r},Ma.default.createElement(ss.MenuItem,{dense:!0,disabled:!0},e.name),Ma.default.createElement(ss.MenuItem,{dense:!0,onClick:()=>{t.toggleCollapsed(e.id),r()}},t.collapsed.includes(e.id)?"Expand this node":"Collapse this node"),Ma.default.createElement(ss.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"))}),kB=hF});var FB={};rt(FB,{default:()=>EF});var en,NB,LB,RB,CF,EF,PB=h(()=>{en=m(_(),1);Wl();Ym();NB=m(Ne(),1),LB=m(O(),1),RB=m(j(),1);Wm();CF=(0,RB.observer)(function({info:e,model:t,nodeName:r,onClose:n}){let{treeMetadata:o,rows:i}=t,s=o[r],a=i.find(c=>c[0]===r);return en.default.createElement(NB.Dialog,{onClose:()=>{n()},open:!0,title:"Tree node info",maxWidth:"xl"},en.default.createElement(LB.DialogContent,null,en.default.createElement(Uo,{title:"Attributes"},en.default.createElement(Kr,{attributes:{nodeName:r,...e}})),en.default.createElement(Uo,{title:"Sequence"},a?en.default.createElement(ya,{str:[a]}):en.default.createElement("div",null,"Sequence not found")),s?en.default.createElement(Uo,{title:"Extra metadata"},en.default.createElement(Kr,{attributes:s})):null))}),EF=CF});var Bn,ro,OB,xF,IF,GB,UB=h(()=>{Bn=m(_(),1),ro=m(O(),1),OB=m(j(),1),xF=(0,Bn.lazy)(()=>Promise.resolve().then(()=>(PB(),FB))),IF=(0,OB.observer)(function({node:e,onClose:t,model:r}){let{collapsed:n}=r,{name:o,id:i}=e,s=n.includes(i);return Bn.default.createElement(ro.Menu,{anchorReference:"anchorPosition",anchorPosition:{top:e.y,left:e.x},transitionDuration:0,keepMounted:!0,open:!!e,onClose:t},Bn.default.createElement(ro.MenuItem,{dense:!0,disabled:!0},o),Bn.default.createElement(ro.MenuItem,{dense:!0,onClick:()=>{r.queueDialog(a=>[xF,{info:r.getRowData(o),model:r,nodeName:o,onClose:a}]),t()}},"More info..."),Bn.default.createElement(ro.MenuItem,{dense:!0,onClick:()=>{r.toggleCollapsed(i),t()}},s?"Expand subtree":"Collapse subtree"),Bn.default.createElement(ro.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(e.name),t()}},"Indicate differences from this row"),r.relativeTo?Bn.default.createElement(ro.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(void 0),t()}},"Clear reference row"):null)}),GB=IF});var Ye,HB,jB,qB,VB,wF,ip,yF,JB,YB=h(()=>{Ye=m(_(),1),HB=m(O(),1);_B();jB=m(Ir(),1),qB=m(j(),1),VB=m(De(),1);DB();UB();hc();wF=(0,VB.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"}})),ip=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 va(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])??[]}},yF=(0,qB.observer)(function({model:e,offsetY:t}){let{classes:r}=wF(),n=(0,HB.useTheme)(),o=(0,Ye.useRef)(null),i=(0,Ye.useRef)(new ip),s=(0,Ye.useRef)(null),[a,c]=(0,Ye.useState)(),[l,A]=(0,Ye.useState)(),[u,f]=(0,Ye.useState)(),[d,g]=(0,Ye.useState)(),{scrollY:E,treeAreaWidth:I,blockSize:x,highResScaleFactor:p}=e,w=I+di,y=x,S=w*p,Q=y*p;(0,Ye.useEffect)(()=>{let v=o.current?.getContext("2d");if(v)return(0,jB.autorun)(()=>{v.resetTransform(),v.clearRect(0,0,(I+di)*p,x*p),gc({ctx:v,model:e,offsetY:t,clickMap:i.current,theme:n})})},[e,x,p,I,t,n]),(0,Ye.useEffect)(()=>{let v=s.current?.getContext("2d");if(v&&(v.resetTransform(),v.clearRect(0,0,I+di,x),v.translate(0,-t),u)){let{minX:M,maxX:L,minY:P,maxY:V}=u;v.fillStyle="rgba(0,0,0,0.1)",v.fillRect(M,P,L-M,V-P)}},[u,t,x,I]);function b(v){let M=v.nativeEvent.offsetX,L=v.nativeEvent.offsetY,[P]=i.current.search({minX:M,maxX:M+1,minY:L+t,maxY:L+1+t});return P?.branch?{...P,x:v.clientX,y:v.clientY}:void 0}function k(v){let M=v.nativeEvent.offsetX,L=v.nativeEvent.offsetY,[P]=i.current.search({minX:M,maxX:M+1,minY:L+t,maxY:L+1+t});return P&&!P.branch?{...P,x:v.clientX,y:v.clientY}:void 0}let T={width:w,height:y,top:E+t,left:0,position:"absolute"};return Ye.default.createElement(Ye.default.Fragment,null,a?.id?Ye.default.createElement(kB,{node:a,model:e,onClose:()=>{c(void 0)}}):null,l?.id?Ye.default.createElement(GB,{node:l,model:e,onClose:()=>{A(void 0)}}):null,Ye.default.createElement("canvas",{width:S,height:Q,style:T,onMouseMove:v=>{if(!o.current)return;let M=k(v),L=b(v),P=M||L;if(o.current.style.cursor=P?"pointer":"default",f(M),g(P?{name:P.name,x:v.clientX,y:v.clientY}:void 0),P){if(e.setHoveredTreeNode(P.id),M?.name){let V=e.rowNamesSet.get(M.name);V!==void 0&&e.setMousePos(void 0,V)}}else e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},onClick:v=>{let{clientX:M,clientY:L}=v,P=b(v);P?.id&&c({x:M,y:L,id:P.id,name:P.name});let V=k(v);V?.id&&A({...V,x:M,y:L})},onMouseLeave:()=>{f(void 0),g(void 0),e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},ref:o}),Ye.default.createElement("canvas",{style:{...T,pointerEvents:"none",zIndex:100},width:w,height:y,ref:s}),d?Ye.default.createElement("div",{className:r.tooltip,style:{left:d.x+12,top:d.y+12}},d.name):null)}),JB=yF});var vr,zB,$B,KB,bF,WB,SF,XB,ZB=h(()=>{vr=m(_(),1),zB=m(Yt(),1),$B=m(Ir(),1),KB=m(j(),1);YB();hc();xc();bF="rgba(0,128,255,0.3)",WB="rgba(255,165,0,0.2)",SF=(0,KB.observer)(function({model:e}){let t=(0,vr.useRef)(null),r=(0,vr.useRef)(null),{treeWidth:n,height:o,blocksY:i,treeAreaWidth:s}=e,a=(0,vr.useCallback)(A=>{e.doScrollY(A)},[e]),{onMouseDown:c,onMouseUp:l}=gi({ref:t,onScrollY:a});return(0,vr.useEffect)(()=>{let A=r.current?.getContext("2d");return A?(0,$B.autorun)(()=>{if((0,zB.isAlive)(e)){let{relativeTo:u,leaves:f,rowHeight:d,hoveredTreeNode:g,treeAreaWidth:E,height:I,scrollY:x,mouseOverRowName:p}=e;A.resetTransform(),A.clearRect(0,0,E,I);let w=new Map(f.map(S=>[S.data.name,S])),y=S=>{let Q=w.get(S);Q&&A.fillRect(0,Q.x+x-d/2,E,d)};if(u&&(A.fillStyle=bF,y(u)),g){A.fillStyle=WB;for(let S of g.descendantNames)y(S)}p&&p!==u&&!g?.descendantNames.includes(p)&&(A.fillStyle=WB,y(p))}}):void 0},[e]),vr.default.createElement("div",{ref:t,onMouseDown:c,onMouseUp:l,onMouseLeave:A=>{A.preventDefault()},style:{height:o,position:"relative",width:n+di}},i.map(A=>vr.default.createElement(JB,{key:A,model:e,offsetY:A})),vr.default.createElement("canvas",{ref:r,width:s,height:o,style:{position:"absolute",top:0,left:0,width:s,height:o,zIndex:1e3,pointerEvents:"none"}}))}),XB=SF});var sp,eQ,BF,tQ,rQ=h(()=>{sp=m(_(),1),eQ=m(j(),1);ZB();BF=(0,eQ.observer)(function({model:e}){let{treeAreaWidth:t}=e;return sp.default.createElement("div",{style:{overflow:"hidden",flexShrink:0,width:t}},sp.default.createElement(XB,{model:e}))}),tQ=BF});var nQ,oQ,QF,iQ,sQ=h(()=>{nQ=m(_(),1),oQ=m(j(),1),QF=(0,oQ.observer)(({model:e})=>{let{treeAreaWidth:t}=e;return nQ.default.createElement("div",{style:{flexShrink:0,width:t}})}),iQ=QF});var ie,jo,vF,MF,_F,TF,kF,DF,aQ,cQ=h(()=>{ie=m(_(),1),jo=m(j(),1);r0();Zu();x0();b0();tB();oB();QB();rQ();sQ();vF=(0,jo.observer)(function({model:e}){let{showHorizontalScrollbar:t}=e;return ie.default.createElement("div",{style:{display:"flex"}},ie.default.createElement(iQ,{model:e}),t?ie.default.createElement(nB,{model:e}):null)}),MF=(0,jo.observer)(function({model:e}){let{mouseCol:t,mouseClickCol:r,colWidth:n,scrollX:o,treeAreaWidth:i,resizeHandleWidth:s,totalTrackAreaHeight:a,msaAreaWidth:c,verticalScrollbarWidth:l}=e,A=i+s,u=c-l;return ie.default.createElement("div",{style:{position:"absolute",left:A,top:0,width:u,height:a,overflow:"hidden",pointerEvents:"none"}},t!==void 0?ie.default.createElement("div",{style:{position:"absolute",left:t*n+o,top:0,width:n,height:a,backgroundColor:"rgba(0,0,0,0.15)",zIndex:100}}):null,r!==void 0?ie.default.createElement("div",{style:{position:"absolute",left:r*n+o,top:0,width:n,height:a,backgroundColor:"rgba(128,128,0,0.2)",zIndex:100}}):null)}),_F=(0,jo.observer)(function({model:e}){let{turnedOnTracks:t}=e;return t.length===0?null:ie.default.createElement("div",{style:{position:"relative"}},ie.default.createElement(MF,{model:e}),t.map(r=>ie.default.createElement(E0,{key:r.model.id,model:e,track:r})))}),TF=(0,jo.observer)(function({model:e}){let{showVerticalScrollbar:t}=e;return ie.default.createElement("div",{style:{display:"flex"}},ie.default.createElement(tQ,{model:e}),ie.default.createElement(n0,{model:e}),ie.default.createElement(BB,{model:e}),t?ie.default.createElement(y0,{model:e}):null)}),kF=(0,jo.observer)(function({model:e}){return ie.default.createElement("div",{style:{position:"relative"}},ie.default.createElement(vF,{model:e}),ie.default.createElement(_F,{model:e}),ie.default.createElement(TF,{model:e}))}),DF=(0,jo.observer)(function({model:e}){let{height:t,viewInitialized:r,DialogComponent:n,DialogProps:o}=e,i=t0();return(0,ie.useEffect)(()=>{e.setHighResScaleFactor(i)},[e,i]),ie.default.createElement("div",null,r?ie.default.createElement(ie.default.Fragment,null,ie.default.createElement("div",{style:{height:t,overflow:"hidden"}},ie.default.createElement(eB,{model:e}),ie.default.createElement(kF,{model:e})),ie.default.createElement(o0,{model:e}),n?ie.default.createElement(ie.Suspense,{fallback:null},ie.default.createElement(n,{...o})):null):null)}),aQ=DF});var lQ,AQ,uQ,fQ=h(()=>{lQ=`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
|
-
`,
|
|
53
|
+
`,AQ=`CLUSTAL O(1.2.4) multiple sequence alignment
|
|
54
54
|
|
|
55
55
|
|
|
56
56
|
sp|P69905|HBA_HUMAN MVLSPADKTNVKAAWGKVGAHAGEYGAEALERMFLSFPTTKTYFPHFDLSHGSAQVKGHG 60
|
|
@@ -66,13 +66,15 @@ 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
|
-
.**: ****: ** ***.***`,Zb="(((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 nl(e,t,r,n){e.setError(void 0),t&&e.setMSAFilehandle(t),r&&e.setTreeFilehandle(r),n&&e.setGFFFilehandle(n)}var gd=g(()=>{});function Ur({onClick:e,model:t,children:r}){return Qt.default.createElement("li",null,Qt.default.createElement(ol.Link,{onClick:n=>{t.setError(void 0),n.preventDefault(),e()},href:"#"},Qt.default.createElement(ol.Typography,{component:"span"},r)))}var Qt,ol,tB,_n,Ok,rB,nB=g(()=>{Qt=f(Q(),1),ol=f(k(),1),tB=f(G(),1);eB();gd();_n="https://jbrowse.org/genomes/multiple_sequence_alignments",Ok=(0,tB.observer)(function({model:e}){function t({msa:r,tree:n,gff:o}){(async()=>{try{await nl(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 Qt.default.createElement("ul",null,Qt.default.createElement(Ur,{model:e,onClick:()=>{t({tree:"https://jbrowse.org/genomes/newicktrees/sarscov2phylo.pub.ft.nh"})}},"230k COVID-19 samples (tree only)"),Qt.default.createElement(Ur,{model:e,onClick:()=>{e.setData({msa:Kb,tree:Zb})}},"Small protein MSA+tree"),Qt.default.createElement(Ur,{model:e,onClick:()=>{e.setData({msa:Xb})}},"Small MSA only"),Qt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${_n}/pfam-cov2.stock`})}},"PFAM SARS-CoV2 multi-stockholm"),Qt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${_n}/pfam-cov2.stock`,gff:`${_n}/pfam-cov2-domains.gff`})}},"PFAM SARS-CoV2 multi-stockholm w/ domains loaded"),Qt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${_n}/Lysine.stock`})}},"Lysine stockholm file"),Qt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${_n}/PF01601_full.txt`})}},"PF01601 stockholm file (SARS-CoV2 spike protein)"),Qt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${_n}/europe_covid.fa`})}},"Europe COVID full genomes (LR883044.1 and 199 other sequences)"),Qt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:`${_n}/rhv_test-only.aligned_with_mafft_auto.fa`,tree:`${_n}/rhv_test-only.aligned_with_mafft_auto.nh`})}},"MAFFT+VeryFastTree(17.9k samples)"),Qt.default.createElement(Ur,{model:e,onClick:()=>{t({msa:"https://jbrowse.org/demos/ttc39a.mfa"})}},"Human BLAST results mfa"))}),rB=Ok});var pe,Si,hr,oB,Gk,iB,sB=g(()=>{pe=f(Q(),1),Si=f(Qe(),1),hr=f(k(),1),oB=f(G(),1);nB();gd();Gk=(0,oB.observer)(function({model:e}){let[t,r]=(0,pe.useState)(),[n,o]=(0,pe.useState)(),[i,s]=(0,pe.useState)(),{error:a}=e;return pe.default.createElement(hr.Container,null,pe.default.createElement("div",{style:{width:"50%"}},a?pe.default.createElement(Si.ErrorMessage,{error:a}):null,pe.default.createElement(hr.Typography,null,"Open an MSA file (stockholm or clustal format) and/or a tree file (newick format)."),pe.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.")),pe.default.createElement("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",gap:40}},pe.default.createElement("div",null,pe.default.createElement("div",null,pe.default.createElement(hr.Typography,null,"MSA file or URL"),pe.default.createElement(Si.FileSelector,{location:t,setLocation:r})),pe.default.createElement("div",null,pe.default.createElement(hr.Typography,null,"Tree file or URL"),pe.default.createElement(Si.FileSelector,{location:n,setLocation:o})),pe.default.createElement("div",null,pe.default.createElement(hr.Typography,null,"InterProScan GFF file or URL (optional)"),pe.default.createElement(Si.FileSelector,{location:i,setLocation:s}))),pe.default.createElement("div",null,pe.default.createElement(hr.Button,{onClick:()=>{(async()=>{try{await nl(e,t,n,i)}catch(c){console.error(c),e.setError(c)}})()},variant:"contained",color:"primary",disabled:!t&&!n},"Open")),pe.default.createElement("div",null,pe.default.createElement(hr.Typography,null,"Examples"),pe.default.createElement(rB,{model:e}))))}),iB=Gk});var Ze,cB,Fs,il,aB,Uk,Hk,sl,hd=g(()=>{Ze=f(Q(),1),cB=f(Qe(),1);_A();Fs=f(k(),1),il=f(G(),1);$b();sB();aB=(0,il.observer)(function({model:e}){let{status:t}=e;return Ze.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:12,padding:20}},Ze.default.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Ze.default.createElement("style",null,"@keyframes spinner { to { transform: rotate(360deg); } }"),Ze.default.createElement("circle",{cx:"12",cy:"12",r:"10",stroke:"#ccc",strokeWidth:"3",fill:"none"}),Ze.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"}})),Ze.default.createElement(Fs.Typography,{variant:"h6"},t?.msg??"Loading..."),t?.onCancel?Ze.default.createElement(Fs.Button,{variant:"outlined",size:"small",onClick:()=>t.onCancel?.()},"Cancel"):null)}),Uk=(0,il.observer)(function({model:e,error:t}){return Ze.default.createElement("div",null,Ze.default.createElement(cB.ErrorMessage,{error:t}),Ze.default.createElement(Fs.Button,{variant:"contained",color:"primary",onClick:()=>{e.reset()}},"Return to import form"))}),Hk=(0,il.observer)(function({model:e}){let{isLoading:t,dataInitialized:r,msaFilehandle:n,treeFilehandle:o}=e,i=!!(n||o);return Ze.default.createElement("div",null,Ze.default.createElement(ko,{FallbackComponent:s=>Ze.default.createElement(Uk,{model:e,error:s.error})},r?t?Ze.default.createElement(aB,{model:e}):Ze.default.createElement(zb,{model:e}):i||t?Ze.default.createElement(aB,{model:e}):Ze.default.createElement(iB,{model:e})))}),sl=Hk});var AB=j((PH,lB)=>{lB.exports=JBrowseExports["@jbrowse/core/ui/theme"]});var fB=j((OH,uB)=>{uB.exports=JBrowseExports["@jbrowse/core/util/io"]});var mB=j((GH,dB)=>{dB.exports=JBrowseExports["@jbrowse/core/util/types/mst"]});function Cd({mapSize:e,blockSize:t,viewportPos:r,viewportSize:n}){let o=Math.max(0,Math.min(r,e-n)),i=Math.floor(o/t),s=Math.floor((o+n-1)/t),a=[];for(let c=i;c<=s;c++)a.push(c*t);return a}var pB=g(()=>{});function IB(e,t){let{W:r=0,L:n=0,V:o=0,I:i=0,M:s=0,A:a=0,F:c=0,C:l=0,H:A=0,P:u=0,R:d=0,K:m=0,Q:h=0,E=0,D:x=0,T:I=0,S:p=0,G:y=0,Y:b=0,N:w=0}=e,S=r+n+o+i+s+a+c+l+A+u+b,M=m+d,F=h+E,D=E+x,L=I+p,v=U=>U/t,O={};return v(S)>.6&&(O.W=Dn,O.L=Dn,O.V=Dn,O.A=Dn,O.I=Dn,O.M=Dn,O.F=Dn,O.C=Dn),(v(M)>.6||v(m)>.8||v(d)>.8||v(h)>.8)&&(O.K=gB,O.R=gB),(v(M)>.6||v(F)>.5||v(E)>.8||v(h)>.8||v(x)>.8)&&(O.E=jk),(v(M)>.6||v(D)>.5||v(m)>.8||v(d)>.8||v(h)>.8)&&(O.D=qk),(v(w)>.5||v(b)>.85)&&(O.N=hB),(v(M)>.6||v(F)>.6||v(h)>.85||v(E)>.85||v(m)>.85||v(d)>.85)&&(O.Q=hB),(v(S)>.6||v(L)>.5||v(p)>.85||v(I)>.85)&&(O.S=CB,O.T=CB),v(l)>.85&&(O.C=Jk),y>0&&(O.G=Vk),u>0&&(O.P=Yk),(v(S)>.6||v(r)>.85||v(b)>.85||v(a)>.85||v(l)>.85||v(u)>.85||v(h)>.85||v(c)>.85||v(A)>.85||v(i)>.85||v(n)>.85||v(s)>.85||v(o)>.85)&&(O.H=EB,O.Y=EB),O}var Dn,gB,jk,qk,hB,CB,Jk,Vk,Yk,EB,xB=g(()=>{Dn="rgb(128,179,230)",gB="#d88",jk="rgb(192, 72, 192)",qk="rgb(204, 77, 204)",hB="#8f8",CB="rgb(26,204,26)",Jk="rgb(240, 128, 128)",Vk="rgb(240, 144, 72)",Yk="rgb(204, 204, 0)",EB="rgb(26, 179, 179)"});var an,yB,Ed,Wk,zk,wB,bB=g(()=>{an=f(Q(),1),yB=f(Ar(),1),Ed=f(G(),1);NA();ha();Wk=(0,Ed.observer)(function({model:e,offsetX:t,trackHeight:r}){let{blockSize:n,scrollX:o,highResScaleFactor:i}=e,s=(0,an.useRef)(null);return(0,an.useEffect)(()=>{let a=s.current?.getContext("2d");if(a)return(0,yB.autorun)(()=>{let{blockSize:c,colWidth:l,highResScaleFactor:A,conservation:u}=e;a.resetTransform(),a.scale(A,A),a.clearRect(0,0,c,r),a.translate(-t,0),xA({ctx:a,conservation:u,colWidth:l,trackHeight:r,offsetX:t,blockSize:c})})},[e,t,r]),an.default.createElement("canvas",{ref:s,height:r*i,width:n*i,style:{position:"absolute",left:o+t,width:n,height:r}})}),zk=(0,Ed.observer)(function({model:e,track:t}){let{blocksX:r,msaAreaWidth:n}=e,o=t.model.height;return an.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>an.default.createElement(Wk,{key:i,model:e,offsetX:i,trackHeight:o})),an.default.createElement(ag,{model:e}))}),wB=zk});var kn,BB,Id,$k,Kk,SB,QB=g(()=>{kn=f(Q(),1),BB=f(Ar(),1),Id=f(G(),1);vo();ud();ha();$k=(0,Id.observer)(function({track:e,model:t,offsetX:r}){let{blockSize:n,scrollX:o,colorScheme:i,rowHeight:s,highResScaleFactor:a}=t,{model:{customColorScheme:c,data:l}}=e,A=c??i,u=(0,kn.useRef)(null),{contrastScheme:d}=tl(A);return(0,kn.useEffect)(()=>{let m=u.current?.getContext("2d");if(m)return(0,BB.autorun)(()=>{let{blockSize:h,bgColor:E,colWidth:x,fontSize:I,rowHeight:p,highResScaleFactor:y}=t;m.resetTransform(),m.scale(y,y),m.clearRect(0,0,h,p),m.translate(-r,0),m.textAlign="center",vr(m,I),yA({ctx:m,data:l,colorScheme:A,contrastScheme:d,bgColor:E,colWidth:x,rowHeight:p,offsetX:r,blockSize:h})})},[t,r,d,A,l]),kn.default.createElement("canvas",{ref:u,height:s*a,width:n*a,style:{position:"absolute",left:o+r,width:n,height:s}})}),Kk=(0,Id.observer)(function({track:e,model:t}){let{blocksX:r,msaAreaWidth:n,rowHeight:o}=t;return e.model.data?kn.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>kn.default.createElement($k,{key:i,track:e,model:t,offsetX:i}))):null}),SB=Kk});var Ps,al=g(()=>{Ps="maeditor"});function MB(e){let t=Math.min(e.length-1,Tf.length-1),r=Tf[t];return Object.fromEntries(e.map((n,o)=>[n,r[o]]))}var vB=g(()=>{_f()});function TB(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 _B=g(()=>{});function DB(e,t){xd||(xd=document.createElement("canvas"));let r=xd.getContext("2d");if(!r)throw new Error("no canvas context");return vr(r,t),r.measureText(e).width}var xd,kB=g(()=>{vo()});function NB(){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,LB=g(()=>{Hr=f(kt(),1)});function FB(){return RB.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 RB,PB=g(()=>{RB=f(kt(),1)});function OB(){return cl.types.model({bgColor:!0,colorSchemeName:Ps,msaFormat:cl.types.maybe(cl.types.enumeration("MSAFormat",Xk))}).actions(e=>({setColorSchemeName(t){e.colorSchemeName=t},setBgColor(t){e.bgColor=t},setMSAFormat(t){e.msaFormat=t}}))}var cl,Xk,GB=g(()=>{cl=f(kt(),1);al();Xk=["stockholm","a3m","fasta","emf","clustal"]});function UB(){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,HB=g(()=>{Qi=f(kt(),1);al()});function Td(e,t){return qB.get(e.toUpperCase())?.get(t.toUpperCase())??-4}function eN(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 d=Td(A,u);o+=d,i+=Math.max(Td(A,A),Td(u,u)),A.toUpperCase()===u.toUpperCase()?r++:n++}if(r+n===0||i<=0)return 1;let a=o/i,c=Math.max(.01,Math.min(1,a));return-Math.log(c)}function tN(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]=eN(e[n][1],e[o][1])}return r}function rN(e,t){let r=e.length;if(r<2)return{name:t[0]};if(r===2){let a=e[0][1];return{left:{name:t[0]},right:{name:t[1]},leftLength:a/2,rightLength:a/2}}let n=[];for(let a=0;a<r;a++)n[a]=[...e[a]];let o=t.map(a=>({name:a})),i=r;for(;i>2;){let a=[];for(let p=0;p<o.length;p++)o[p]!==void 0&&a.push(p);let c=new Map;for(let p of a){let y=0;for(let b of a)p!==b&&(y+=n[p][b]);c.set(p,y)}let l=1/0,A=-1,u=-1;for(let p=0;p<a.length;p++)for(let y=p+1;y<a.length;y++){let b=a[p],w=a[y],S=(i-2)*n[b][w]-c.get(b)-c.get(w);S<l&&(l=S,A=b,u=w)}let d=n[A][u],m=c.get(A),h=c.get(u),E=d/2+(m-h)/(2*(i-2)),x=d-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 a)if(p!==A&&p!==u){let y=(n[A][p]+n[u][p]-d)/2;n[A][p]=Math.max(0,y),n[p][A]=Math.max(0,y)}o[u]=void 0,o[A]=I,i--}let s=[];for(let a=0;a<o.length;a++)o[a]!==void 0&&s.push(a);if(s.length===2){let a=s[0],c=s[1],l=n[a][c];return{left:o[a],right:o[c],leftLength:l/2,rightLength:l/2}}return o[s[0]]}function jB(e,t){return t===void 0?e:`${e}:${t.toFixed(6)}`}function nN(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 s=i.left?jB(n.get(i.left),i.leftLength):"",a=i.right?jB(n.get(i.right),i.rightLength):"";n.set(i,`(${s},${a})`)}}return n.get(e)}function JB(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=tN(e),n=rN(r,t);return nN(n)+";"}var ll,Zk,qB,VB=g(()=>{ll="ARNDCQEGHILKMFPSTWYVBZX*",Zk=[[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]],qB=new Map;for(let e=0;e<ll.length;e++){let t=new Map;for(let r=0;r<ll.length;r++)t.set(ll[r],Zk[e][r]);qB.set(ll[e],t)}});function _d(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 iN(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 YB(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=sN(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(_d(n).flatMap(s=>{let a=aN(s);return a?[[a.id,oN[a.name]||a.name]]:[]}));return _d(o).flatMap(s=>{let a=cN(s);if(!a)return[];let{features:c=[],...l}=a;return[{...l,...Object.fromEntries(c.map(A=>[i[A.featureid],A.value]))}]})}function sN(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 s=1,a=n+1;for(n++;n<r.length&&s>0;)r[n]==="{"?s++:r[n]==="}"&&s--,n++;s===0&&(t[i]=r.slice(a,n-1).trim()),n=r.indexOf(",",n),n=n===-1?r.length:n+1}return t}function aN(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 cN(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?iN(e,n):void 0;return{id:parseInt(t[1],10),...r?{parent:parseInt(r[1],10)}:{},features:o?_d(o).flatMap(i=>{let s=lN(i);return s?[s]:[]}):[]}}function lN(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 oN,WB=g(()=>{oN={$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 Dd(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 zB(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 AN({seq:e,blanks:t,visibleCol:r}){let n=Dd(t,r),o=e.length;if(n<o&&Vi(e[n]))return;let i=0;for(let s=0;s<n&&s<o;s++)Vi(e[s])||i++;return n<o?i:void 0}function $B({rowName:e,visibleCol:t,rowMap:r,blanks:n}){let o=r.get(e);return o!==void 0?AN({seq:o,visibleCol:t,blanks:n}):void 0}var KB=g(()=>{mn()});function XB({row:e,seqPos:t}){let r=0,n=0;for(;n<e.length;){if(!Vi(e[n])){if(r===t)return n;r++}n++}return t===0?0:n}var ZB=g(()=>{mn()});function eS(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 tS=g(()=>{});function fN(e){return e.startsWith("BioTreeContainer")?TB(YB(e)):lo(e.startsWith("SEQ")?kc(e).tree:e)}function dN(){return $.types.compose(FB(),UB(),OB(),$.types.model("MsaView",{id:po.ElementId,showDomains:!1,hideGaps:!0,allowedGappyness:100,subFeatureRows:!1,type:$.types.literal("MsaView"),drawMsaLetters:!0,scrollZoom:!1,height:$.types.optional($.types.number,550),rowHeight:16,scrollY:0,scrollX:0,colWidth:12,treeFilehandle:$.types.maybe(po.FileLocation),msaFilehandle:$.types.maybe(po.FileLocation),treeMetadataFilehandle:$.types.maybe(po.FileLocation),gffFilehandle:$.types.maybe(po.FileLocation),currentAlignment:0,collapsed:$.types.array($.types.string),showOnly:$.types.maybe($.types.string),turnedOffTracks:$.types.map($.types.boolean),data:$.types.optional(NB(),{tree:"",msa:"",treeMetadata:""}),featureFilters:$.types.map($.types.boolean),relativeTo:$.types.maybe($.types.string),highlightColumns:$.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,$.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 co[e.colorSchemeName]??co[Ps]},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?qf(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?Ci(fN(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=kp(this.tree,r=>r.children);if(Np(t,r=>r.children.length>0?0:1),Lp(t,(r,n)=>(r.data.length??1)-(n.data.length??1)),e.showOnly){let r=Ca(t,n=>n.data.id===e.showOnly);r&&(t=r)}for(let r of e.collapsed){let n=Ca(t,o=>o.data.id===r);n&&(n.children?Pp(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,s=Math.ceil(r/100*i),a=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&&a[u]++}let c=[];for(let l=0;l<o;l++)a[l]>=s&&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 s=Tp(t,i);s.length>0&&n.set(o,s)}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?CA(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]??={},s=n[o];i[s]=(i[s]??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 s of this.colStats)for(let a of Object.keys(s))a!=="-"&&a!=="."&&t.add(a);let r=new Set(["A","C","G","T","N"]),n=new Set(["A","C","G","U","N"]),o=t.size>0&&[...t].every(s=>r.has(s)),i=t.size>0&&[...t].every(s=>n.has(s));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 s=0,a="";for(let[l,A]of Object.entries(n))A>s&&l!=="-"&&l!=="."&&(s=A,a=l);let c=s/i;return{letter:a,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)=>IB(n,r[o]))},get conservation(){let{colStats:t,colStatsSums:r,sequenceType:n}=this,i=Math.log2(n==="amino"?20:4);return t.map((s,a)=>{let c=r[a];if(!c)return 0;let l=(s["-"]??0)+(s["."]??0),A=c-l;if(A===0)return 0;let u=0;for(let[h,E]of Object.entries(s))if(h!=="-"&&h!=="."){let x=E/A;u-=x*Math.log2(x)}let d=l/c;return Math.max(0,1-u/i)*(1-d)})},get hierarchy(){let t=this.root;Fp(t,this.totalHeight,e.treeWidth),t.data.length=0;let r=Up(t),n=r?e.treeWidth/r:0;return Hp(t,0,n),Wi(t,o=>{if(o._children){let{min:i,max:s}=Op(o);o.collapsedTipXNear=(o.len??0)+i*n,o.collapsedTipXFar=(o.len??0)+s*n}}),t},get totalHeight(){return Yi(this.root).length*e.rowHeight},get leaves(){return Yi(this.hierarchy)},get maxBranchLength(){return Gp(this.hierarchy)},get maxDepthToLeaf(){return zi(this.hierarchy)},get allBranchesLength0(){return Rp(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 Cd({viewportSize:e.msaAreaWidth,viewportPos:-e.scrollX,blockSize:e.blockSize,mapSize:e.totalWidth})},get blocksY(){return Cd({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=Ca(e.hierarchy,n=>n.data.id===t);e.hoveredTreeNode=r?{nodeId:t,descendantNames:Yi(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=JB(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,Mt.transaction)(()=>{this.zoomInHorizontal(),this.zoomInVertical()})},zoomOut(){(0,Mt.transaction)(()=>{this.zoomOutHorizontal(),this.zoomOutVertical()})},zoomToPos(t,r,n){(0,Mt.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 s=n-i*e.rowHeight,a=Math.max(0,-e.maxScrollY),c=e.totalHeight-a,l=c>0?(0,je.clamp)(1-a/c,0,1):1;e.scrollY=(0,je.clamp)(s*(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=Nc(t);this.setDomains(Lc(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:s}=i.data,a=n[s]?.genome??s;return[s,DB(a,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(s=>!!s.data).map(s=>({model:{...s,data:n?CA(o,s.data):s.data,height:t},ReactComponent:SB}))},get tracks(){let t={model:{id:"conservation",name:"Conservation",height:e.conservationTrackHeight},ReactComponent:wB};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)?.[Dd(o,r)]},visibleColToSeqPos(t,r){return $B({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?zB(r,t):t},seqPosToGlobalCol(t,r){let n=e.rowMap.get(t);return n?XB({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:s,end:a})=>({id:t,name:i.name,accession:i.accession,description:i.description,start:s,end:a})):[]})).toSorted((t,r)=>EA(r)-EA(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 MB([...e.tidyInterProAnnotationTypes.keys()])},get strokePalette(){return To(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(()=>(TA(),Kp)),n=await r(e,t),o=new Blob([n],{type:"image/svg+xml"});eS(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,$.addDisposer)(e,(0,Mt.autorun)(()=>{for(let n of e.tidyInterProAnnotationTypes.keys())this.initFilter(n)}));let t=0;(0,$.addDisposer)(e,(0,Mt.autorun)(async()=>{let{treeFilehandle:n}=e;if(n){let o=++t;try{e.setLoadingTree(!0);let i=await ys((0,Os.openLocation)(n),s=>{o===t&&e.setStatus(s)});o===t&&(0,Mt.transaction)(()=>{e.setTree(i),n.locationType==="BlobLocation"&&e.setTreeFilehandle(void 0)})}catch(i){o===t&&(wn(i)?e.setTreeFilehandle(void 0):(console.error(i),e.setError(i)))}finally{o===t&&e.setLoadingTree(!1)}}})),(0,$.addDisposer)(e,(0,Mt.autorun)(async()=>{let{treeMetadataFilehandle:n}=e;if(n)try{e.setTreeMetadata(await ys((0,Os.openLocation)(n),o=>{e.setStatus(o)}))}catch(o){wn(o)||(console.error(o),e.setError(o))}})),(0,$.addDisposer)(e,(0,Mt.autorun)(()=>{let n=e.data.gff;if(n)try{e.applyGFFText(n)}catch(o){console.error(o),e.setError(o)}})),(0,$.addDisposer)(e,(0,Mt.autorun)(async()=>{let{gffFilehandle:n}=e;if(n)try{let o=await ys((0,Os.openLocation)(n),i=>{e.setStatus(i)});e.applyGFFText(o),n.locationType==="BlobLocation"&&e.setGFFFilehandle(void 0)}catch(o){wn(o)?e.setGFFFilehandle(void 0):(console.error(o),e.setError(o))}}));let r=0;(0,$.addDisposer)(e,(0,Mt.autorun)(async()=>{let{msaFilehandle:n}=e;if(n){let o=++r;try{e.setLoadingMSA(!0),e.setError(void 0);let i=await ys((0,Os.openLocation)(n),s=>{o===r&&e.setStatus(s)});o===r&&(0,Mt.transaction)(()=>{e.setMSA(i),n.locationType==="BlobLocation"&&e.setMSAFilehandle(void 0)})}catch(i){o===r&&(wn(i)?e.setMSAFilehandle(void 0):(console.error(i),e.setError(i)))}finally{o===r&&e.setLoadingMSA(!1)}}})),(0,$.addDisposer)(e,(0,Mt.autorun)(()=>{e.colorSchemeName.includes("dynamic")&&(e.colStats,e.colStatsSums),e.columns})),(0,$.addDisposer)(e,(0,Mt.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:s,allowedGappyness:a,subFeatureRows:c,drawMsaLetters:l,height:A,rowHeight:u,scrollY:d,scrollX:m,colWidth:h,currentAlignment:E,collapsed:x,showOnly:I,turnedOffTracks:p,featureFilters:y,relativeTo:b,bgColor:w,colorSchemeName:S,drawLabels:M,labelsAlignRight:F,treeAreaWidth:D,treeWidth:L,showBranchLen:v,drawTree:O,drawNodeBubbles:U,...H}=t,ue=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:Ps,drawLabels:!0,labelsAlignRight:!1,treeAreaWidth:400,treeWidth:300,showBranchLen:!0,drawTree:!0,drawNodeBubbles:!0}).filter(([rt,vt])=>t[rt]!==vt).map(([rt])=>[rt,t[rt]]));return{...H,data:{...e.treeFilehandle?{}:{tree:r},...e.msaFilehandle?{}:{msa:n},...e.treeMetadataFilehandle?{}:{treeMetadata:o}},...ue,...x?.length?{collapsed:x}:{},...I!==void 0?{showOnly:I}:{},...p&&Object.keys(p).length>0?{turnedOffTracks:p}:{},...y&&Object.keys(y).length>0?{featureFilters:y}:{},...b!==void 0?{relativeTo:b}:{}}})}var je,Os,po,$,Mt,Al,Fd=g(()=>{je=f(de(),1),Os=f(fB(),1),po=f(mB(),1),$=f(kt(),1);ma();Mt=f(Ar(),1);Vf();pB();xB();Sc();bB();QB();al();vB();_c();_B();bA();kB();LB();PB();GB();HB();VB();WB();KB();ZB();mn();tS();Al=dN});var Pd,mN,pN,uS=g(()=>{Pd=f(Q(),1),mN=f(AB(),1),pN=f(cu(),1);Fd();hd()});var Od=g(()=>{TA();hd();uS();Fd()});function HN(e){let t=e;return t.type==="ProteinView"&&Array.isArray(t.structures)}function Rn(e){return e.filter(HN)}function wl(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 js=g(()=>{"use strict"});var n1={};We(n1,{default:()=>$N});var le,Bl,e1,we,t1,r1,WN,zN,$N,o1=g(()=>{"use strict";le=f(Q()),Bl=f(Qe()),e1=f(de()),we=f(k()),t1=f(G()),r1=f(Se());js();WN=(0,r1.makeStyles)()(e=>({formControl:{marginBottom:e.spacing(2)}})),zN=(0,t1.observer)(function({model:t,handleClose:r}){let{classes:n}=WN(),o=(0,e1.getSession)(t),[i,s]=(0,le.useState)(""),[a,c]=(0,le.useState)(0),[l,A]=(0,le.useState)(t.querySeqName),[u,d]=(0,le.useState)(),m=Rn(o.views),E=m.find(p=>p.id===i)?.structures??[],x=t.rows.map(p=>p[0]),I=()=>{if(!i){d("Please select a protein view");return}try{t.connectToStructure(i,a,l),r()}catch(p){d(p instanceof Error?p.message:String(p))}};return le.default.createElement(Bl.Dialog,{maxWidth:"sm",title:"Connect to Protein Structure",open:!0,onClose:r},le.default.createElement(we.DialogContent,null,m.length===0?le.default.createElement(we.Typography,{color:"textSecondary"},"No protein views are currently open. Please open a protein structure view first."):le.default.createElement(le.default.Fragment,null,le.default.createElement(we.FormControl,{fullWidth:!0,className:n.formControl},le.default.createElement(we.InputLabel,null,"Protein View"),le.default.createElement(we.Select,{value:i,label:"Protein View",onChange:p=>{s(p.target.value),c(0)}},m.map(p=>le.default.createElement(we.MenuItem,{key:p.id,value:p.id},p.displayName??`ProteinView ${p.id}`)))),E.length>1?le.default.createElement(we.FormControl,{fullWidth:!0,className:n.formControl},le.default.createElement(we.InputLabel,null,"Structure"),le.default.createElement(we.Select,{value:a,label:"Structure",onChange:p=>{c(p.target.value)}},E.map((p,y)=>le.default.createElement(we.MenuItem,{key:y,value:y},p.url??`Structure ${y+1}`)))):null,le.default.createElement(we.FormControl,{fullWidth:!0,className:n.formControl},le.default.createElement(we.InputLabel,null,"MSA Row"),le.default.createElement(we.Select,{value:l,label:"MSA Row",onChange:p=>{A(p.target.value)}},x.map(p=>le.default.createElement(we.MenuItem,{key:p,value:p},p)))),u?le.default.createElement(Bl.ErrorMessage,{error:u}):null)),le.default.createElement(we.DialogActions,null,le.default.createElement(we.Button,{onClick:r},"Cancel"),le.default.createElement(we.Button,{onClick:I,variant:"contained",disabled:m.length===0||!i},"Connect")))}),$N=zN});var g1=j((fJ,p1)=>{p1.exports=JBrowseExports["@jbrowse/core/data_adapters/BaseAdapter"]});var E1={};We(E1,{default:()=>Sl});var h1,C1,Sl,I1=g(()=>{"use strict";h1=f(Qo()),C1=f(g1());lE();Sl=class extends C1.BaseAdapter{async configurePre(){let t=this.getSubAdapter;if(t)return(await t({...(0,h1.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 Ku(r.getFeaturesInMultipleRegions(o.map(i=>({refName:i,start:0,end:1e9,assemblyName:""}))).pipe(Xu()))}}});var N1=j(k1=>{"use strict";var Di=Q();function AL(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var uL=typeof Object.is=="function"?Object.is:AL,fL=Di.useState,dL=Di.useEffect,mL=Di.useLayoutEffect,pL=Di.useDebugValue;function gL(e,t){var r=t(),n=fL({inst:{value:r,getSnapshot:t}}),o=n[0].inst,i=n[1];return mL(function(){o.value=r,o.getSnapshot=t,tm(o)&&i({inst:o})},[e,r,t]),dL(function(){return tm(o)&&i({inst:o}),e(function(){tm(o)&&i({inst:o})})},[e]),pL(r),r}function tm(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!uL(e,r)}catch{return!0}}function hL(e,t){return t()}var CL=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?hL:gL;k1.useSyncExternalStore=Di.useSyncExternalStore!==void 0?Di.useSyncExternalStore:CL});var R1=j((vJ,L1)=>{"use strict";L1.exports=N1()});function Io(e){let{children:t,...r}=e;return Im.default.createElement(wQ.Link,{...r,target:"_blank",rel:"noreferrer"},t," ",Im.default.createElement(tc,{fontSize:"small"}))}var Im,wQ,ql=g(()=>{"use strict";Im=f(Q());bu();wQ=f(k())});var $Q=j((YV,zQ)=>{zQ.exports=JBrowseExports["@jbrowse/core/pluggableElementTypes/ViewType"]});var Xs,KQ,zl,XQ=g(()=>{"use strict";Xs=f(Q()),KQ=f(Qe()),zl=class extends Xs.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?Xs.default.createElement("div",{style:{padding:20}},Xs.default.createElement(KQ.ErrorMessage,{error:this.state.error})):this.props.children}}});function nR({baseUrl:e,rid:t}){return vm.default.createElement(ZQ.Typography,null,"RID ",t," (",vm.default.createElement(Io,{href:`${e}?CMD=Get&RID=${t}`},"see status"),")")}var vm,ZQ,Tm,eM=g(()=>{"use strict";vm=f(Q()),ZQ=f(k());ql();Tm=nR});function oR({baseUrl:e,rid:t,error:r}){return rr.default.createElement("div",null,t?rr.default.createElement(Tm,{rid:t,baseUrl:e}):null,rr.default.createElement($l.ErrorMessage,{error:r}))}function iR({baseUrl:e,rid:t,progress:r}){let{classes:n}=nM();return rr.default.createElement("div",{className:n.loading},t?rr.default.createElement(Tm,{baseUrl:e,rid:t}):null,rr.default.createElement(_m.Typography,null,r))}var rr,$l,_m,tM,rM,nM,sR,oM,iM=g(()=>{"use strict";rr=f(Q()),$l=f(Qe()),_m=f(k()),tM=f(G()),rM=f(Se());eM();nM=(0,rM.makeStyles)()(e=>({margin:{padding:20},loading:{background:e.palette.background.paper}}));sR=(0,tM.observer)(function({model:t,baseUrl:r}){let{progress:n,rid:o,error:i}=t,{classes:s}=nM();return rr.default.createElement("div",{className:s.margin},rr.default.createElement($l.LoadingEllipses,{message:"Running NCBI BLAST",variant:"h5"}),i?rr.default.createElement(oR,{baseUrl:r,rid:o,error:i}):o?rr.default.createElement(iR,{baseUrl:r,rid:o,progress:n}):rr.default.createElement(_m.Typography,null,n||"Initializing BLAST query"))}),oM=sR});var lM={};We(lM,{default:()=>lR});var xo,sM,aM,cM,aR,cR,lR,AM=g(()=>{"use strict";xo=f(Q()),sM=f(Qe()),aM=f(G());Od();cM=f(Se());XQ();iM();aR=(0,cM.makeStyles)()({loadingContainer:{padding:20}}),cR=(0,aM.observer)(function({model:t}){let{classes:r}=aR(),{blastParams:n,loadingStoredData:o}=t;return xo.default.createElement(zl,null,xo.default.createElement("div",null,n?xo.default.createElement(oM,{model:t,baseUrl:n.baseUrl}):o?xo.default.createElement("div",{className:r.loadingContainer},xo.default.createElement(sM.LoadingEllipses,{message:"Loading MSA data",variant:"h6"})):xo.default.createElement(sl,{model:t})))}),lR=cR});var uR={};We(uR,{default:()=>Kl});var mM=f($m()),km=f(Qo()),pM=f(de()),Nm=f(kt());Y();var np=f(R(),1),op=(0,_.createSvgIcon)((0,np.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 f1=f(Q()),d1=f(de());var Js=f(Q()),A1=f(G());var Jd=f(Q()),a1=f(de()),Vd=f(G());var lp=f(Se());function Vn(e){return!!e&&typeof e=="object"&&"hoverPosition"in e&&!!e.hoverPosition}function aa({assemblyManager:e,assemblyNames:t,refName:r}){let n=t?.[0];return n?e.get(n)?.getCanonicalRefName(r)??r:r}function cp(e){return/AF-([A-Z0-9]+)-F\d+/.exec(e)?.[1]}var ca=(0,lp.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 i1=f(Q()),s1=f(iA()),vi=f(de()),et=f(kt());function up(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={},s={},a={};if(o.length!==0){let l=(3-(o[0]?.phase??0))%3,A=-1;for(let u of o){let d=u.end-u.start;for(let m=0;m<d;m++){let h=t===1?u.start+m:u.end-1-m,E=Math.floor(l++/3);i[h]=E,E!==A?(s[E]=h,a[E]=[h],A=E):a[E].push(h)}}}return{g2p:i,p2g:s,p2gCodon:a,refName:r,strand:t}}var jd=f(Ar());Od();var Hd=f(de());function fS(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 dS(e){return e.replaceAll("-","")}var fl=f(de());function Xt(e){return(0,fl.getContainingView)(e)}function mS(e){return[...new Set(e.filter(t=>!!t))]}function pS(e,t){return t.filter(r=>!!r).join(e)}function gN(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 ul(e){let t=(0,fl.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 go(e){return e?.id()??""}function hN(e){return e?mS([e.id(),e.get("name"),e.get("id"),e.get("transcript_id")]):[]}function Gs(e,t){return hN(e).includes(t)}function dl(e){return e?pS(" ",[e.get("name"),e.get("id")]):""}function ho(e){return e?pS(" ",[e.get("gene_name")??e.get("name"),e.get("id")?`(${e.get("id")})`:void 0]):""}function ml(e,t){return`BLAST - ${ho(e)} - ${dl(t)}`}function gS(e){return gN(e).toSorted((r,n)=>ul(n).len-ul(r).len)}function pl(e){return e.replaceAll("*","").replaceAll("&","")}function gl(e){return mS([e.id(),e.get("id"),e.get("name"),e.get("gene_id"),e.get("gene_name")])}Ai();var CN="jbrowse-msaview-blast-cache",Nn="blast-results",EN=2;async function hl(){return en(CN,EN,{upgrade(e,t){t<2&&e.objectStoreNames.contains(Nn)&&e.deleteObjectStore(Nn),e.objectStoreNames.contains(Nn)||e.createObjectStore(Nn,{keyPath:"id"})}})}function IN(e,t,r,n){let o=n?`:${n}`:"";return`${t}:${r}${o}:${e}`}async function hS({proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:s,rid:a,geneId:c,transcriptId:l,transcriptName:A,geneName:u}){let d=await hl(),h={id:IN(e,t,r,l),proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:s,rid:a,timestamp:Date.now(),geneId:c,transcriptId:l,transcriptName:A,geneName:u};return await d.put(Nn,h),h}async function CS(){return(await(await hl()).getAll(Nn)).toSorted((r,n)=>n.timestamp-r.timestamp)}async function ES(e){await(await hl()).delete(Nn,e)}async function IS(){await(await hl()).clear(Nn)}async function xS(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 xS(e,t)).text()}async function yS(e,t){return(await xS(e,t)).json()}function wS(e){return new Promise(t=>setTimeout(t,e))}async function Cl({check:e,intervalSeconds:t,onCountdown:r}){for(;;){if(await e())return;for(let n=t;n>0;n--)r(n),await wS(1e3)}}var Il="https://www.ebi.ac.uk/Tools/services/rest",El="colin.diesh@gmail.com",xN={clustalo:{params:{email:El},msaResult:"aln-clustal_num",treeResult:"phylotree"},muscle:{params:{email:El,format:"clw",tree:"tree1"},msaResult:"fa",treeResult:"phylotree"},kalign:{params:{email:El,stype:"protein"},msaResult:"fa",treeResult:"phylotree"},mafft:{params:{email:El,stype:"protein"},msaResult:"fa",treeResult:"phylotree"}};async function yN({onProgress:e,jobId:t,algorithm:r}){await Cl({intervalSeconds:10,onCountdown:n=>{e(`Re-checking MSA status in... ${n}`)},check:async()=>{let n=await jr(`${Il}/${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 bS({algorithm:e,sequence:t,onProgress:r}){let n=xN[e];r(`Launching ${e} MSA...`);let o=await jr(`${Il}/${e}/run`,{method:"POST",body:new URLSearchParams({...n.params,sequence:t})});return await yN({jobId:o,algorithm:e,onProgress:r}),{msa:await jr(`${Il}/${e}/result/${o}/${n.msaResult}`),tree:await jr(`${Il}/${e}/result/${o}/${n.treeResult}`)}}async function Gd({rid:e,baseUrl:t,onProgress:r}){r(`Checking BLAST status for RID: ${e}...`),await bN({rid:e,onProgress:r,baseUrl:t});let n=await yS(`${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 BS({query:e,blastDatabase:t,blastProgram:r,baseUrl:n,onProgress:o,onRid:i}){o("Submitting to NCBI BLAST...");let{rid:s}=await wN({query:e,blastDatabase:t,blastProgram:r,baseUrl:n});return i(s),Gd({rid:s,baseUrl:n,onProgress:o})}async function wN({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],s=/^ {4}RTOE = (.*$)/m.exec(o)?.[1];if(!i)throw new Error("Failed to get RID from BLAST request");return{rid:i,rtoe:s}}async function bN({rid:e,onProgress:t,baseUrl:r}){await Cl({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"}`)}})}Ai();var BN="jbrowse-plugin-msaview",SN="colin.diesh@gmail.com",QN="https://eutils.ncbi.nlm.nih.gov/entrez/eutils";function xl(e){let t=new URLSearchParams({...e,tool:BN,email:SN});return`${QN}/efetch.fcgi?${t.toString()}`}var MN="jbrowse-msaview-taxonomy-cache",Us="common-names",vN=2;async function SS(){return en(MN,vN,{upgrade(e){e.objectStoreNames.contains(Us)&&e.deleteObjectStore(Us),e.createObjectStore(Us,{keyPath:"taxid"})}})}async function TN(e){let r=(await SS()).transaction(Us,"readonly"),n=await Promise.all(e.map(o=>r.store.get(o)));return await r.done,n}async function _N(e){let r=(await SS()).transaction(Us,"readwrite");for(let n of e)await r.store.put(n);await r.done}async function QS(e){let t=new Map,r=[],n=await TN(e);for(let s=0;s<e.length;s++){let a=e[s],c=n[s];c?t.set(a,{sciname:c.sciname,commonName:c.commonName}):r.push(a)}if(r.length===0)return t;let o=100,i=[];for(let s=0;s<r.length;s+=o){let a=r.slice(s,s+o),c=a.join(",");try{let A=await(await fetch(xl({db:"taxonomy",id:c,retmode:"xml"}))).text(),u=new Map,d=/<Taxon>\s*<TaxId>(\d+)<\/TaxId>/g,m;for(;(m=d.exec(A))!==null;){let h=Number(m[1]),E=m.index,x=1,I=E+m[0].length;for(;x>0&&I<A.length;){let S=A.indexOf("<Taxon>",I),M=A.indexOf("</Taxon>",I);if(M===-1)break;S!==-1&&S<M?(x++,I=S+7):(x--,I=M+8)}let p=A.slice(E,I),y=u.get(h),b=p.includes("<LineageEx>"),w=y?.includes("<LineageEx>");(!y||b&&!w)&&u.set(h,p)}for(let h of a){let E=u.get(h);if(E){let x=/<GenbankCommonName>(.*?)<\/GenbankCommonName>/.exec(E),I=/<CommonName>(.*?)<\/CommonName>/.exec(E),p=/<ScientificName>(.*?)<\/ScientificName>/.exec(E),y=x?.[1]??I?.[1],b=p?.[1]??"";t.set(h,{sciname:b,commonName:y}),i.push({taxid:h,sciname:b,commonName:y})}}}catch(l){console.error("Failed to fetch taxonomy data:",l)}}return i.length>0&&await _N(i),t}async function MS({self:e}){let{baseUrl:t,blastDatabase:r,blastProgram:n,msaAlgorithm:o,proteinSequence:i,selectedTranscript:s,rid:a}=e.blastParams,c=pl(i),l,A;if(a){e.setRid(a);let I=await Gd({rid:a,baseUrl:t,onProgress:p=>{e.setProgress(p)}});l=I.hits,A=I.rid}else{let I=await BS({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),d=await QS(u),m={},h=l.map(I=>{let p=I.description[0]??{accession:"unknown",id:"unknown",sciname:"unknown"},y=fS(p,d),b=dS(I.hsps[0]?.hseq??"");return m[y]=DN(p,d),`>${y}
|
|
70
|
-
${
|
|
71
|
-
${c}`,...
|
|
72
|
-
`),onProgress:I=>{e.setProgress(I)}}),x=JSON.stringify(m);return await hS({proteinSequence:c,blastDatabase:r,blastProgram:n,msaAlgorithm:o,msa:E.msa,tree:E.tree,treeMetadata:x,rid:A,geneId:s?.get("parentId"),transcriptId:s?.id(),transcriptName:s?.get("name")??s?.get("id"),geneName:s?.get("gene_name")??s?.get("parentId")}),{...E,treeMetadata:x}}function DN(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}var vS=f(de());function TS({model:e}){let{hovered:t}=(0,vS.getSession)(e),{querySeqName:r,transcriptToMsaMap:n,connectedView:o,mafRegion:i}=e;if(!o?.initialized||!Vn(t))return;let{coord:s,refName:a}=t.hoverPosition;if(i)return a!==i.refName||!o.assemblyNames.includes(i.assemblyName)||s<i.start||s>=i.end?void 0:e.seqPosToVisibleCol(r,s-i.start);if(n){let c=n.g2p[s];if(c!==void 0)return e.seqPosToVisibleCol(r,c)}}Ai();var kN="jbrowse-msaview-domain-cache",yl="domains",NN=1;async function _S(){return en(kN,NN,{upgrade(e){e.objectStoreNames.contains(yl)||e.createObjectStore(yl,{keyPath:"accession"})}})}async function DS(e){let r=(await _S()).transaction(yl,"readonly"),n=await Promise.all(e.map(o=>r.store.get(o)));return await r.done,n}async function kS(e){let r=(await _S()).transaction(yl,"readwrite");for(let n of e)await r.store.put(n);await r.done}function Ln(e,t){return new RegExp(`<${t}>(.*?)</${t}>`,"s").exec(e)?.[1]}function LN(e){let t={},r=/<GBQualifier>([\s\S]*?)<\/GBQualifier>/g,n;for(;(n=r.exec(e))!==null;){let o=Ln(n[1],"GBQualifier_name"),i=Ln(n[1],"GBQualifier_value");o&&i!==void 0&&t[o]===void 0&&(t[o]=i)}return t}function RN(e){let t=[],r=[],n=/<GBInterval>([\s\S]*?)<\/GBInterval>/g,o;for(;(o=n.exec(e))!==null;){let i=o[1],s=Ln(i,"GBInterval_from"),a=Ln(i,"GBInterval_to"),c=Ln(i,"GBInterval_point");s&&a?(t.push(Number(s)),r.push(Number(a))):c&&(t.push(Number(c)),r.push(Number(c)))}return t.length>0?{start:Math.min(...t),end:Math.max(...r)}:void 0}var FN=2;function PN(e){let t=Ln(e,"GBFeature_key"),r=LN(e),n=r.db_xref,o=RN(e);if((t==="Region"||t==="Site")&&n?.startsWith("CDD:")&&o&&o.end-o.start+1>=FN){let i=n.replace("CDD:",""),s=t==="Region",a=r.note?.split(/[[(]/)[0]?.trim(),c=s?r.region_name??i:a||r.site_type||"site",l=s?i:`${i}:${c}`;return{signature:{entry:{name:c,description:r.note??c,accession:l}},locations:[o]}}}function ON(e){let t=new Map,r=/<GBSeq>([\s\S]*?)<\/GBSeq>/g,n;for(;(n=r.exec(e))!==null;){let o=n[1],i=[],s=/<GBFeature>([\s\S]*?)<\/GBFeature>/g,a;for(;(a=s.exec(o))!==null;){let c=PN(a[1]);c&&i.push(c)}for(let c of[Ln(o,"GBSeq_accession-version"),Ln(o,"GBSeq_primary-accession")])c&&t.set(c,i)}return t}async function NS(e){let t=[...new Set(e)].filter(Boolean),r=new Map,n=await DS(t),o=[];t.forEach((a,c)=>{let l=n[c];l?r.set(a,l.matches):o.push(a)});let i=[],s=100;for(let a=0;a<o.length;a+=s){let c=o.slice(a,a+s),l=await jr(xl({db:"protein",id:c.join(","),rettype:"gp",retmode:"xml"})),A=ON(l);for(let u of c){let d=A.get(u)??[];r.set(u,d),i.push({accession:u,matches:d})}}return i.length>0&&await kS(i),r}async function LS(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(([s,a])=>({rowName:s,accession:a.Accession})).filter(s=>!!s.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 NS(n.map(s=>s.accession)),i={};for(let{rowName:s,accession:a}of n){let c=o.get(a);c&&c.length>0&&(i[s]={matches:c,xref:[{id:s}]})}if(Object.keys(i).length===0)throw new Error("No CDD domain annotations found for these proteins");e.setDomains(i)}Ai();var GN="jbrowse-msaview-data",UN=1,Hs="msa-data";async function Ud(){return en(GN,UN,{upgrade(e){e.objectStoreNames.contains(Hs)||e.createObjectStore(Hs,{keyPath:"id"}).createIndex("timestamp","timestamp",{unique:!1})}})}function RS(){return`msa-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}async function FS(e,t){try{let r=await Ud(),n={id:e,msa:t.msa,tree:t.tree,treeMetadata:t.treeMetadata,timestamp:Date.now()};return await r.put(Hs,n),!0}catch(r){return console.warn("Failed to store MSA data:",r),!1}}async function PS(e){try{let r=await(await Ud()).get(Hs,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 OS(e=10080*60*1e3){try{let t=await Ud(),r=Date.now()-e,i=await t.transaction(Hs,"readwrite").store.index("timestamp").openCursor(IDBKeyRange.upperBound(r)),s=0;for(;i;)await i.delete(),s++,i=await i.continue();return s}catch(t){return console.warn("Failed to cleanup old MSA data:",t),0}}js();function GS(e){let{dataStoreId:t,rows:r}=e;t&&r.length===0&&(async()=>{try{e.setLoadingStoredData(!0);let n=await PS(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 US(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 s=RS();await FS(s,{msa:o,tree:i,treeMetadata:e.data.treeMetadata})&&e.setDataStoreId(s)}catch(s){console.error("Failed to store MSA data to IndexedDB:",s)}finally{e.setIsStoringData(!1)}})())}}function HS(e){e.blastParams&&(async()=>{try{e.setProgress("Submitting query"),e.setError(void 0);let t=await MS({self:e});e.setData(t),e.setBlastParams(void 0)}catch(t){e.setError(t),console.error(t)}finally{e.setProgress("")}})()}function jS(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 LS(e)}catch(i){console.error("[msaview-domains] auto-load failed:",i)}finally{e.setProgress("")}})())}function qS(e){let{init:t}=e;t&&(async()=>{try{e.setError(void 0);let{msaData:r,msaUrl:n,treeData:o,treeUrl:i,querySeqName:s}=t;if(n){let a=cp(n);a&&(e.setUniprotId(a),e.setQuerySeqName("query"))}if(s&&e.setQuerySeqName(s),r)e.setMSA(r);else if(n){let a=await fetch(n);if(!a.ok)throw new Error(`Failed to fetch MSA: ${a.status}`);let c=await a.text();e.setMSA(c)}if(o)e.setTree(o);else if(i){let a=await fetch(i);if(!a.ok)throw new Error(`Failed to fetch tree: ${a.status}`);let c=await a.text();e.setTree(c)}e.setInit(void 0)}catch(r){e.setError(r),console.error(r)}})()}function JS(e){let t=!1;return()=>{let r=TS({model:e});r!==void 0?(e.setMousePos(r),t=!0):t&&(e.setMousePos(void 0),t=!1)}}function VS(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 s=wl(i,t);if(s===void 0){o.clearHighlightFromExternal?.();continue}let a=n.msaToStructure[s];a===void 0?o.clearHighlightFromExternal?.():o.highlightFromExternal?.(a)}}function YS(e){let{connectedViewId:t,uniprotId:r,rows:n,connectedStructures:o}=e;if(!(!r||n.length===0))for(let i of Rn((0,Hd.getSession)(e).views))for(let s=0;s<i.structures.length;s++){let a=i.structures[s];if(!(!a||a.connectedViewId!==t||a.uniprotId!==r||o.some(l=>l.proteinViewId===i.id&&l.structureIdx===s))&&a.structureSequences?.[0])try{e.connectToStructure(i.id,s)}catch(l){console.error("Failed to auto-connect to ProteinView:",l)}}}function WS(e){let{connectedViewId:t,transcriptToMsaMap:r,querySeqName:n}=e;if(!t||!r)return;let o=new Set;for(let s of Rn((0,Hd.getSession)(e).views))for(let a of s.structures){if(a.connectedViewId!==t)continue;let c=a.hoverGenomeHighlights;if(!c||c.length===0)continue;let{g2p:l}=r;for(let A of c)for(let u=A.start;u<A.end;u++){let d=l[u];if(d!==void 0){let m=e.seqPosToGlobalCol(n,d);o.add(m)}}}let i=Array.from(o).map(s=>e.globalColToVisibleCol(s)).filter(s=>s!==void 0);e.setHighlightedColumns(i.length>0?i:void 0)}function zS(){OS().catch(e=>{console.error("Failed to cleanup old MSA data:",e)})}js();function bl({model:e,coord:t}){let{querySeqName:r,transcriptToMsaMap:n,mafRegion:o}=e,i=e.rows.find(a=>a[0]===r)?.[1];if(!i)return;let s=wl(i,t);if(s!==void 0){if(o){let a=o.start+s;return a<o.end?{refName:o.refName,start:a,end:a+1}:void 0}if(n){let{refName:a,p2g:c}=n,l=c[s],A=c[s+1];return l!==void 0&&A!==void 0?{refName:a,start:Math.min(l,A),end:Math.max(l,A)}:void 0}}}var jN={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}},$S=jN;function KS(e,t){return $S[e.toUpperCase()]?.[t.toUpperCase()]??-4}var qN=-10,JN=-.5;function VN(e,t,r=qN,n=JN){let o=e.length,i=t.length,s=[],a=[],c=[];for(let p=0;p<=o;p++){s[p]=[],a[p]=[],c[p]=[];for(let y=0;y<=i;y++)s[p][y]=-1/0,a[p][y]=-1/0,c[p][y]=-1/0}s[0][0]=0;for(let p=1;p<=o;p++)a[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 y=1;y<=i;y++){let b=KS(e[p-1],t[y-1]);s[p][y]=Math.max(s[p-1][y-1],a[p-1][y-1],c[p-1][y-1])+b,a[p][y]=Math.max(s[p-1][y]+r,a[p-1][y]+n),c[p][y]=Math.max(s[p][y-1]+r,c[p][y-1]+n)}let l="",A="",u=o,d=i,m=s[o][i],h=a[o][i],E=c[o][i],x=Math.max(m,h,E),I=x===m?"M":x===h?"Ix":"Iy";for(;u>0||d>0;)if(I==="M"&&u>0&&d>0){l=e[u-1]+l,A=t[d-1]+A;let p=KS(e[u-1],t[d-1]),y=s[u-1][d-1],b=a[u-1][d-1],w=s[u][d];w===y+p?I="M":w===b+p?I="Ix":I="Iy",u--,d--}else if(I==="Ix"&&u>0){l=e[u-1]+l,A="-"+A;let p=a[u][d],y=s[u-1][d]+r;I=p===y?"M":"Ix",u--}else if(d>0){l="-"+l,A=t[d-1]+A;let p=c[u][d],y=s[u][d-1]+r;I=p===y?"M":"Iy",d--}else break;return{alignedSeq1:l,alignedSeq2:A,score:x}}function YN(e,t){let r="";for(let n=0;n<e.length;n++){let o=e[n],i=t[n],s=o!=="-"&&i!=="-"&&o.toUpperCase()===i.toUpperCase();r+=s?"|":" "}return r}function XS(e,t){let{alignedSeq1:r,alignedSeq2:n}=VN(e,t);return{consensus:YN(r,n),alns:[{id:"msa",seq:r},{id:"structure",seq:n}]}}function ZS(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,s=new Map;for(let a=0;a<t.length;a++){let c=t[a],l=r[a];c!=="-"&&l!=="-"?(i.set(n,o),s.set(o,n),n++,o++):c==="-"?o++:n++}return{seq1ToSeq2:i,seq2ToSeq1:s}}js();var KN=(0,i1.lazy)(()=>Promise.resolve().then(()=>(o1(),n1)));function qd(){return et.types.compose(s1.BaseViewModel,Al(),et.types.model("MsaView",{connectedViewId:et.types.maybe(et.types.string),connectedFeature:et.types.frozen(),blastParams:et.types.frozen(),querySeqName:"QUERY",uniprotId:et.types.maybe(et.types.string),zoomToBaseLevel:!1,init:et.types.frozen(),connectedStructures:et.types.array(et.types.frozen()),dataStoreId:et.types.maybe(et.types.string),mafRegion:et.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?up(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=Rn((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:bl({model:e,coord:t}),r===void 0?void 0:bl({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=bl({model:e,coord:t});if(!(!i||!r))if(n)r.navTo(i);else{let s=aa({assemblyManager:o,assemblyNames:r.assemblyNames,refName:i.refName});r.centerAt(i.start,s)}},connectToStructure(t,r,n){let o=n??e.querySeqName,i=e.getSequenceByRowName(o);if(!i)throw new Error(`MSA row "${o}" not found`);let s=i.replaceAll("-",""),a=Rn((0,vi.getSession)(e).views).find(m=>m.id===t);if(!a)throw new Error(`ProteinView "${t}" not found`);let c=a.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=XS(s,l),{seq1ToSeq2:u}=ZS(A),d={proteinViewId:t,structureIdx:r,msaRowName:o,msaToStructure:Object.fromEntries(u)};e.connectedStructures.push(d)},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=>[KN,{model:e,handleClose:t}])}},...e.connectedStructures.length>0?[{label:"Disconnect from protein structures",onClick:()=>{e.disconnectAllStructures()}}]:[]]}})).actions(e=>({afterCreate(){zS();for(let t of[GS,US,HS,qS,VS,YS,jS,WS])(0,et.addDisposer)(e,(0,jd.autorun)(()=>{t(e)}));(0,et.addDisposer)(e,(0,jd.autorun)(JS(e)))}}))}function Ti(e){return e.type==="MsaView"}var XN=(0,Vd.observer)(function({model:e}){let{hovered:t,views:r}=(0,a1.getSession)(e);return r.some(o=>Ti(o)&&o.connectedViewId===e.id)&&Vn(t)?Jd.default.createElement(ZN,{model:e,hovered:t}):null}),ZN=(0,Vd.observer)(function({model:e,hovered:t}){let{classes:r}=ca(),{offsetPx:n}=e,{coord:o,refName:i}=t.hoverPosition,s=e.bpToPx({refName:i,coord:o-1}),a=e.bpToPx({refName:i,coord:o});if(s&&a){let c=Math.max(Math.abs(a.offsetPx-s.offsetPx),4),l=Math.min(s.offsetPx,a.offsetPx)-n;return Jd.default.createElement("div",{className:r.highlight,style:{left:l,width:c}})}return null}),c1=XN;var qs=f(Q()),Yd=f(de()),Wd=f(G());var eL=(0,Wd.observer)(function({model:t}){let{views:r,hovered:n}=(0,Yd.getSession)(t),i=r.filter(Ti).find(s=>s.connectedViewId===t.id)?.connectedHighlights;return!Vn(n)&&i?.length?qs.default.createElement(tL,{model:t,highlights:i}):null}),tL=(0,Wd.observer)(function({model:e,highlights:t}){let{classes:r}=ca(),{assemblyManager:n}=(0,Yd.getSession)(e),{offsetPx:o}=e;return qs.default.createElement(qs.default.Fragment,null,t.map((i,s)=>{let a=aa({assemblyManager:n,assemblyNames:e.assemblyNames,refName:i.refName}),c=e.bpToPx({refName:a,coord:i.start}),l=e.bpToPx({refName:a,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 qs.default.createElement("div",{key:`${i.refName}-${i.start}-${i.end}-${s}`,className:r.highlight,style:{left:u,width:A}})}return null}))}),l1=eL;var rL=(0,A1.observer)(function({model:t}){return Js.default.createElement(Js.default.Fragment,null,Js.default.createElement(l1,{model:t}),Js.default.createElement(c1,{model:t}))}),u1=rL;function zd(e){e.addToExtensionPoint("LinearGenomeView-TracksContainerComponent",(t,{model:r})=>{let{views:n}=(0,d1.getSession)(r);return n.some(i=>Ti(i)&&i.connectedViewId===r.id)?[...t,f1.default.createElement(u1,{key:"highlight_protein_viewer_msaview",model:r})]:t})}var x1=f(iA());var m1=f(Qo());function $d(e){let t=e.getAdapterType("BgzipFastaAdapter");return(0,m1.ConfigurationSchema)("BgzipFastaMsaAdapter",{msaRegex:{type:"string",defaultValue:"_"}},{baseConfiguration:t?.configSchema})}function Kd(e){return e.addAdapterType(()=>new x1.AdapterType({name:"BgzipFastaMsaAdapter",configSchema:$d(e),adapterMetadata:{hiddenFromGUI:!0},getAdapterClass:()=>Promise.resolve().then(()=>(I1(),E1)).then(t=>t.default)}))}var Wl=f(de());Y();var y1=f(R(),1),w1=(0,_.createSvgIcon)((0,y1.jsx)("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6z"}),"Add");var Dt=f(Q()),YQ=f(Qe()),WQ=f(de()),Pi=f(k());var re=f(Q()),hm=f(Qe()),oQ=f(de()),Zt=f(k()),iQ=f(G()),sQ=f(Se());function b1({session:e,newViewTitle:t,view:r,feature:n,msaFilehandle:o,treeFilehandle:i,querySeqName:s,data:a}){e.addView("MsaView",{type:"MsaView",displayName:t,connectedViewId:r.id,connectedFeature:n.toJSON(),msaFilehandle:o,treeFilehandle:i,querySeqName:s,data:a})}var Xd=f(Q()),B1=f(k());function nL({children:e,...t}){return Xd.default.createElement("div",null,Xd.default.createElement(B1.TextField,{...t},e))}var lt=nL;var Zd=f(Q()),S1=f(Qe()),Q1=f(k()),M1=f(Se()),oL=(0,M1.makeStyles)()({dialogContent:{width:"80em"}});function Cr({error:e,children:t}){let{classes:r}=oL();return Zd.default.createElement(Q1.DialogContent,{className:r.dialogContent},e?Zd.default.createElement(S1.ErrorMessage,{error:e}):null,t)}var Ql=f(Q()),Vs=f(k());function cn({onSubmit:e,onCancel:t,submitDisabled:r,submitLabel:n="Submit",cancelLabel:o="Cancel"}){return Ql.default.createElement(Vs.DialogActions,null,Ql.default.createElement(Vs.Button,{color:"primary",variant:"contained",disabled:r,onClick:()=>{e()}},n),Ql.default.createElement(Vs.Button,{color:"secondary",variant:"contained",onClick:()=>{t()}},o))}var Er=f(Q()),_i=f(k()),_1=f(Se());var v1=f(Q()),T1=f(Se());var iL=(0,T1.makeStyles)()({textAreaFont:{fontFamily:"Courier New"}});function em({value:e}){let{classes:t}=iL();return v1.default.createElement(lt,{variant:"outlined",multiline:!0,minRows:5,maxRows:10,fullWidth:!0,value:e,slotProps:{input:{readOnly:!0,classes:{input:t.textAreaFont}}}})}var sL=(0,_1.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:s}){let{classes:a}=sL(),[c,l]=(0,Er.useState)(!1);return Er.default.createElement(Er.default.Fragment,null,Er.default.createElement("div",{className:a.flex},Er.default.createElement(_i.TextField,{variant:"outlined",label:`Choose isoform of ${ho(e)}`,select:!0,className:a.minWidth,value:r,onChange:A=>{o(A.target.value)}},t.map(A=>{let u=s?s.some(h=>Gs(A,h)):!0,{len:d,mod:m}=ul(A);return Er.default.createElement(_i.MenuItem,{value:go(A),key:A.id(),disabled:!u},dl(A)," (",d," aa)"," ",m?" (possible fragment)":"",s?u?" (has data)":" (no data)":"")})),Er.default.createElement("div",{className:a.centered},Er.default.createElement(_i.Button,{variant:"contained",color:"primary",onClick:()=>{l(!c)}},c?"Hide sequence":"Show sequence"))),c?Er.default.createElement(em,{value:i?`>${dl(n)}
|
|
73
|
-
${i}`:"Loading..."}):null)}var Gl=f(Q());var Fn=f(de());function aL(e,t){return e.map(r=>t.slice(r.start,r.end)).join("")}function cL({cds:e,sequence:t,codonTable:r}){let n=aL(e,t),o="";for(let i=0;i<n.length;i+=3)o+=r[n.slice(i,i+3)]??"&";return o}function lL(e,t){return e.map(r=>({...r,start:t-r.end,end:t-r.start})).toSorted((r,n)=>r.start-n.start)}function D1({feature:e,seq:t}){let{subfeatures:r,start:n,strand:o}=e.toJSON(),i=(0,Fn.dedupe)(r?.toSorted((s,a)=>s.start-a.start).map(s=>({...s,start:s.start-n,end:s.end-n})).filter(s=>s.type==="CDS")??[],s=>`${s.start}-${s.end}`);return cL({cds:o===-1?lL(i,t.length):i,sequence:o===-1?(0,Fn.revcom)(t):t,codonTable:(0,Fn.generateCodonTable)(Fn.defaultCodonTable)})}var tQ=f(de());var Je=f(Q(),1),gm=f(R1(),1);var At=f(Q(),1);var Pn={};We(Pn,{ERROR_REVALIDATE_EVENT:()=>EL,FOCUS_EVENT:()=>F1,MUTATE_EVENT:()=>O1,RECONNECT_EVENT:()=>P1});var F1=0,P1=1,O1=2,EL=3;var G1=Object.prototype.hasOwnProperty;function Ml(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--&&Ml(e[n],t[n]););return n===-1}if(!r||typeof e=="object"){n=0;for(r in e)if(G1.call(e,r)&&++n&&!G1.call(t,r)||!(r in t)||!Ml(e[r],t[r]))return!1;return Object.keys(t).length===n}}return e!==e&&t!==t}var xr=new WeakMap,yr=()=>{},qe=yr(),ki=Object,J=e=>e===qe,Ut=e=>typeof e=="function",wr=(e,t)=>({...e,...t}),Nl=e=>Ut(e.then),rm={},vl={},lm="undefined",Ni=typeof window!=lm,_l=typeof document!=lm,H1=Ni&&"Deno"in window,j1=()=>Ni&&typeof window.requestAnimationFrame!=lm,Ll=(e,t)=>{let r=xr.get(e);return[()=>!J(t)&&e.get(t)||rm,n=>{if(!J(t)){let o=e.get(t);t in vl||(vl[t]=o),r[5](t,wr(o,n),o||rm)}},r[6],()=>!J(t)&&t in vl?vl[t]:!J(t)&&e.get(t)||rm]},im=!0,IL=()=>im,[sm,am]=Ni&&window.addEventListener?[window.addEventListener.bind(window),window.removeEventListener.bind(window)]:[yr,yr],xL=()=>{let e=_l&&document.visibilityState;return J(e)||e!=="hidden"},yL=e=>(_l&&document.addEventListener("visibilitychange",e),sm("focus",e),()=>{_l&&document.removeEventListener("visibilitychange",e),am("focus",e)}),wL=e=>{let t=()=>{im=!0,e()},r=()=>{im=!1};return sm("online",t),sm("offline",r),()=>{am("online",t),am("offline",r)}},q1={isOnline:IL,isVisible:xL},J1={initFocus:yL,initReconnect:wL},Rl=!At.default.useId,On=!Ni||H1,Am=e=>j1()?window.requestAnimationFrame(e):setTimeout(e,1),Li=On?At.useEffect:At.useLayoutEffect,nm=typeof navigator<"u"&&navigator.connection,cm=!On&&nm&&(["slow-2g","2g"].includes(nm.effectiveType)||nm.saveData),Tl=new WeakMap,bL=e=>ki.prototype.toString.call(e),om=(e,t)=>e===`[object ${t}]`,BL=0,Dl=e=>{let t=typeof e,r=bL(e),n=om(r,"Date"),o=om(r,"RegExp"),i=om(r,"Object"),s,a;if(ki(e)===e&&!n&&!o){if(s=Tl.get(e),s)return s;if(s=++BL+"~",Tl.set(e,s),Array.isArray(e)){for(s="@",a=0;a<e.length;a++)s+=Dl(e[a])+",";Tl.set(e,s)}if(i){s="#";let c=ki.keys(e).sort();for(;!J(a=c.pop());)J(e[a])||(s+=a+":"+Dl(e[a])+",");Tl.set(e,s)}}else s=n?e.toJSON():t=="symbol"?e.toString():t=="string"?JSON.stringify(e):""+e;return s},Ws=e=>{if(Ut(e))try{e=e()}catch{e=""}let t=e;return e=typeof e=="string"?e:(Array.isArray(e)?e.length:e)?Dl(e):"",[e,t]},SL=0,Ys=()=>++SL;async function Fl(...e){let[t,r,n,o]=e,i=wr({populateCache:!0,throwOnError:!0},typeof o=="boolean"?{revalidate:o}:o||{}),s=i.populateCache,a=i.rollbackOnError,c=i.optimisticData,l=d=>typeof a=="function"?a(d):a!==!1,A=i.throwOnError;if(Ut(r)){let d=r,m=[],h=t.keys();for(let E of h)!/^\$(inf|sub)\$/.test(E)&&d(t.get(E)._k)&&m.push(E);return Promise.all(m.map(u))}return u(r);async function u(d){let[m]=Ws(d);if(!m)return;let[h,E]=Ll(t,m),[x,I,p,y]=xr.get(t),b=()=>{let H=x[m];return(Ut(i.revalidate)?i.revalidate(h().data,d):i.revalidate!==!1)&&(delete p[m],delete y[m],H&&H[0])?H[0](2).then(()=>h().data):h().data};if(e.length<3)return b();let w=n,S,M=!1,F=Ys();I[m]=[F,0];let D=!J(c),L=h(),v=L.data,O=L._c,U=J(O)?v:O;if(D&&(c=Ut(c)?c(U,v):c,E({data:c,_c:U})),Ut(w))try{w=w(U)}catch(H){S=H,M=!0}if(w&&Nl(w))if(w=await w.catch(H=>{S=H,M=!0}),F!==I[m][0]){if(M)throw S;return w}else M&&D&&l(S)&&(s=!0,E({data:U,_c:qe}));if(s&&!M)if(Ut(s)){let H=s(w,U);E({data:H,error:qe,_c:qe})}else E({data:w,error:qe,_c:qe});if(I[m][1]=Ys(),Promise.resolve(b()).then(()=>{E({_c:qe})}),M){if(A)throw S;return}return w}}var U1=(e,t)=>{for(let r in e)e[r][0]&&e[r][0](t)},um=(e,t)=>{if(!xr.has(e)){let r=wr(J1,t),n=Object.create(null),o=Fl.bind(qe,e),i=yr,s=Object.create(null),a=(A,u)=>{let d=s[A]||[];return s[A]=d,d.push(u),()=>d.splice(d.indexOf(u),1)},c=(A,u,d)=>{e.set(A,u);let m=s[A];if(m)for(let h of m)h(u,d)},l=()=>{if(!xr.has(e)&&(xr.set(e,[n,Object.create(null),Object.create(null),Object.create(null),o,c,a]),!On)){let A=r.initFocus(setTimeout.bind(qe,U1.bind(qe,n,0))),u=r.initReconnect(setTimeout.bind(qe,U1.bind(qe,n,1)));i=()=>{A&&A(),u&&u(),xr.delete(e)}}};return l(),[e,o,l,i]}return[e,xr.get(e)[4]]},QL=(e,t,r,n,o)=>{let i=r.errorRetryCount,s=o.retryCount,a=~~((Math.random()+.5)*(1<<(s<8?s:8)))*r.errorRetryInterval;!J(i)&&s>i||setTimeout(n,a,o)},V1=Ml,[Pl,Y1]=um(new Map),Ol=wr({onLoadingSlow:yr,onSuccess:yr,onError:yr,onErrorRetry:QL,onDiscarded:yr,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:cm?1e4:5e3,focusThrottleInterval:5*1e3,dedupingInterval:2*1e3,loadingTimeout:cm?5e3:3e3,compare:V1,isPaused:()=>!1,cache:Pl,mutate:Y1,fallback:{}},q1),fm=(e,t)=>{let r=wr(e,t);if(t){let{use:n,fallback:o}=e,{use:i,fallback:s}=t;n&&i&&(r.use=n.concat(i)),o&&s&&(r.fallback=wr(o,s))}return r},kl=(0,At.createContext)({}),dm=e=>{let{value:t}=e,r=(0,At.useContext)(kl),n=Ut(t),o=(0,At.useMemo)(()=>n?t(r):t,[n,r,t]),i=(0,At.useMemo)(()=>n?o:fm(r,o),[n,r,o]),s=o&&o.provider,a=(0,At.useRef)(qe);s&&!a.current&&(a.current=um(s(i.cache||Pl),o));let c=a.current;return c&&(i.cache=c[0],i.mutate=c[1]),Li(()=>{if(c)return c[2]&&c[2](),c[3]},[]),(0,At.createElement)(kl.Provider,wr(e,{value:i}))};var W1="$inf$";var Ri=f(Q(),1);var z1=Ni&&window.__SWR_DEVTOOLS_USE__,ML=z1?window.__SWR_DEVTOOLS_USE__:[],vL=()=>{z1&&(window.__SWR_DEVTOOLS_REACT__=Ri.default)},TL=e=>Ut(e[1])?[e[0],e[1],e[2]||{}]:[e[0],null,(e[1]===null?e[2]:e[1])||{}],_L=()=>{let e=(0,Ri.useContext)(kl);return(0,Ri.useMemo)(()=>wr(Ol,e),[e])};var DL=e=>(t,r,n)=>e(t,r&&((...i)=>{let[s]=Ws(t),[,,,a]=xr.get(Pl);if(s.startsWith(W1))return r(...i);let c=a[s];return J(c)?r(...i):(delete a[s],c)}),n),kL=ML.concat(DL),$1=e=>function(...r){let n=_L(),[o,i,s]=TL(r),a=fm(n,s),c=e,{use:l}=a,A=(l||[]).concat(kL);for(let u=A.length;u--;)c=A[u](c);return c(o,i||a.fetcher||null,a)},K1=(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())}};vL();var NL=()=>{},GJ=NL();var mm=Je.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}}),pm={dedupe:!0},X1=Promise.resolve(qe),LL=()=>yr,RL=(e,t,r)=>{let{cache:n,compare:o,suspense:i,fallbackData:s,revalidateOnMount:a,revalidateIfStale:c,refreshInterval:l,refreshWhenHidden:A,refreshWhenOffline:u,keepPreviousData:d,strictServerPrefetchWarning:m}=r,[h,E,x,I]=xr.get(n),[p,y]=Ws(e),b=(0,Je.useRef)(!1),w=(0,Je.useRef)(!1),S=(0,Je.useRef)(p),M=(0,Je.useRef)(t),F=(0,Je.useRef)(r),D=()=>F.current,L=()=>D().isVisible()&&D().isOnline(),[v,O,U,H]=Ll(n,p),Ve=(0,Je.useRef)({}).current,ue=J(s)?J(r.fallback)?qe:r.fallback[p]:s,rt=(K,ne)=>{for(let he in Ve){let Ce=he;if(Ce==="data"){if(!o(K[Ce],ne[Ce])&&(!J(K[Ce])||!o(ge,ne[Ce])))return!1}else if(ne[Ce]!==K[Ce])return!1}return!0},vt=!b.current,Gn=(0,Je.useMemo)(()=>{let K=v(),ne=H(),he=be=>{let Tt=wr(be);return delete Tt._k,(()=>{if(!p||!t||D().isPaused())return!1;if(vt&&!J(a))return a;let fn=J(ue)?Tt.data:ue;return i?J(fn)||c:J(fn)||c})()?{isValidating:!0,isLoading:!0,...Tt}:Tt},Ce=he(K),nt=K===ne?Ce:he(ne),ot=Ce;return[()=>{let be=he(v());return rt(be,ot)?(ot.data=be.data,ot.isLoading=be.isLoading,ot.isValidating=be.isValidating,ot.error=be.error,ot):(ot=be,be)},()=>nt]},[n,p]),nr=(0,gm.useSyncExternalStore)((0,Je.useCallback)(K=>U(p,(ne,he)=>{rt(he,ne)||K()}),[n,p]),Gn[0],Gn[1]),or=h[p]&&h[p].length>0,ir=nr.data,Sr=J(ir)?ue&&Nl(ue)?mm(ue):ue:ir,fe=nr.error,Un=(0,Je.useRef)(Sr),ge=d?J(ir)?J(Un.current)?Sr:Un.current:ir:Sr,sr=p&&J(Sr),ae=(0,Je.useRef)(null);!On&&(0,gm.useSyncExternalStore)(LL,()=>(ae.current=!1,ae),()=>(ae.current=!0,ae));let Hn=ae.current;m&&Hn&&!i&&sr&&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 jn=!p||!t||D().isPaused()||or&&!J(fe)?!1:vt&&!J(a)?a:i?J(Sr)?!1:c:J(Sr)||c,ar=vt&&jn,Zs=J(nr.isValidating)?ar:nr.isValidating,Oi=J(nr.isLoading)?ar:nr.isLoading,An=(0,Je.useCallback)(async K=>{let ne=M.current;if(!p||!ne||w.current||D().isPaused())return!1;let he,Ce,nt=!0,ot=K||{},be=!x[p]||!ot.dedupe,Tt=()=>Rl?!w.current&&p===S.current&&b.current:p===S.current,un={isValidating:!1,isLoading:!1},fn=()=>{O(un)},yo=()=>{let Ue=x[p];Ue&&Ue[1]===Ce&&delete x[p]},dn={isValidating:!0};J(v().data)&&(dn.isLoading=!0);try{if(be&&(O(dn),r.loadingTimeout&&J(v().data)&&setTimeout(()=>{nt&&Tt()&&D().onLoadingSlow(p,r)},r.loadingTimeout),x[p]=[ne(y),Ys()]),[he,Ce]=x[p],he=await he,be&&setTimeout(yo,r.dedupingInterval),!x[p]||x[p][1]!==Ce)return be&&Tt()&&D().onDiscarded(p),!1;un.error=qe;let Ue=E[p];if(!J(Ue)&&(Ce<=Ue[0]||Ce<=Ue[1]||Ue[1]===0))return fn(),be&&Tt()&&D().onDiscarded(p),!1;let Re=v().data;un.data=o(Re,he)?Re:he,be&&Tt()&&D().onSuccess(he,p,r)}catch(Ue){yo();let Re=D(),{shouldRetryOnError:qn}=Re;Re.isPaused()||(un.error=Ue,be&&Tt()&&(Re.onError(Ue,p,Re),(qn===!0||Ut(qn)&&qn(Ue))&&(!D().revalidateOnFocus||!D().revalidateOnReconnect||L())&&Re.onErrorRetry(Ue,p,Re,ea=>{let wo=h[p];wo&&wo[0]&&wo[0](Pn.ERROR_REVALIDATE_EVENT,ea)},{retryCount:(ot.retryCount||0)+1,dedupe:!0})))}return nt=!1,fn(),!0},[p,n]),Gi=(0,Je.useCallback)((...K)=>Fl(n,S.current,...K),[]);if(Li(()=>{M.current=t,F.current=r,J(ir)||(Un.current=ir)}),Li(()=>{if(!p)return;let K=An.bind(qe,pm),ne=0;D().revalidateOnFocus&&(ne=Date.now()+D().focusThrottleInterval);let Ce=K1(p,h,(nt,ot={})=>{if(nt==Pn.FOCUS_EVENT){let be=Date.now();D().revalidateOnFocus&&be>ne&&L()&&(ne=be+D().focusThrottleInterval,K())}else if(nt==Pn.RECONNECT_EVENT)D().revalidateOnReconnect&&L()&&K();else{if(nt==Pn.MUTATE_EVENT)return An();if(nt==Pn.ERROR_REVALIDATE_EVENT)return An(ot)}});return w.current=!1,S.current=p,b.current=!0,O({_k:y}),jn&&(x[p]||(J(Sr)||On?K():Am(K))),()=>{w.current=!0,Ce()}},[p]),Li(()=>{let K;function ne(){let Ce=Ut(l)?l(v().data):l;Ce&&K!==-1&&(K=setTimeout(he,Ce))}function he(){!v().error&&(A||D().isVisible())&&(u||D().isOnline())?An(pm).then(ne):ne()}return ne(),()=>{K&&(clearTimeout(K),K=-1)}},[l,A,u,p]),(0,Je.useDebugValue)(ge),i){if(!Rl&&On&&sr)throw new Error("Fallback data is required when using Suspense in SSR.");sr&&(M.current=t,F.current=r,w.current=!1);let K=I[p],ne=!J(K)&&sr?Gi(K):X1;if(mm(ne),!J(fe)&&sr)throw fe;let he=sr?An(pm):X1;!J(ge)&&sr&&(he.status="fulfilled",he.value=!0),mm(he)}return{mutate:Gi,get data(){return Ve.data=!0,ge},get error(){return Ve.error=!0,fe},get isValidating(){return Ve.isValidating=!0,Zs},get isLoading(){return Ve.isLoading=!0,Oi}}},UJ=ki.defineProperty(dm,"defaultValue",{value:Ol}),Co=$1(RL);var Z1=f(Qo());async function eQ({start:e,end:t,refName:r,session:n,assemblyName:o}){let{assemblyManager:i,rpcManager:s}=n,a=await i.waitForAssembly(o);if(!a)throw new Error("assembly not found");let c="getSequence";return(await s.call(c,"CoreGetFeatures",{adapterConfig:(0,Z1.getConf)(a,["sequence","adapter"]),sessionId:c,regions:[{start:e,end:t,refName:a.getCanonicalRefName(r),assemblyName:o}]}))[0]?.get("seq")??""}var Eo={revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1,refreshWhenHidden:!1,refreshWhenOffline:!1,shouldRetryOnError:!1};async function FL({feature:e,assemblyName:t,view:r}){let n=(0,tQ.getSession)(r),{start:o,end:i,refName:s}=e.toJSON();return{seq:await eQ({start:o,end:i,refName:s,assemblyName:t,session:n})}}function rQ({view:e,feature:t}){let r=e?.assemblyNames?.[0],n=t&&r?{feature:t,assemblyName:r,view:e}:void 0,{data:o,error:i}=Co(n?[n.feature.id(),n.assemblyName,"feature-sequence"]:null,()=>FL(n),Eo);return{sequence:o,error:i}}function nQ({view:e,feature:t}){let{sequence:r,error:n}=rQ({view:e,feature:t});return{proteinSequence:r&&t?D1({seq:r.seq,feature:t}):"",sequence:r,error:n}}function PL(e,t,r){if(r&&r.length>0){let n=t.find(i=>go(i)===e),o=n&&r.some(i=>Gs(n,i));if(n&&!o){let i=t.find(s=>r.some(a=>Gs(s,a)));return i?go(i):void 0}}}function qr({feature:e,view:t,validIds:r}){let n=(0,Gl.useMemo)(()=>gS(e),[e]),[o,i]=(0,Gl.useState)(()=>go(n[0])),s=PL(o,n,r)??o,a=n.find(A=>go(A)===s),{proteinSequence:c,error:l}=nQ({view:t,feature:a});return{options:n,selectedId:s,setSelectedId:i,selectedTranscript:a,proteinSequence:c,error:l,validIds:r}}var OL=(0,sQ.makeStyles)()({textAreaFont:{fontFamily:"Courier New"},inputContainer:{marginBottom:30},fileContainer:{maxWidth:500},msaInput:{marginBottom:20},queryNameInput:{marginTop:20},warningAlert:{marginTop:10}}),GL=(0,iQ.observer)(function({model:t,feature:r,handleClose:n}){let o=(0,oQ.getSession)(t),i=Xt(t),{classes:s}=OL(),[a,c]=(0,re.useState)(),[l,A]=(0,re.useState)("file"),[u,d]=(0,re.useState)(""),[m,h]=(0,re.useState)(""),[E,x]=(0,re.useState)(),[I,p]=(0,re.useState)(),[y,b]=(0,re.useState)(""),w=qr({feature:r,view:i}),{selectedTranscript:S,error:M}=w;return re.default.createElement(re.default.Fragment,null,re.default.createElement(Cr,{error:a??M},re.default.createElement(Zt.FormControl,{component:"fieldset"},re.default.createElement(Zt.RadioGroup,{row:!0,value:l,onChange:D=>{A(D.target.value)}},re.default.createElement(Zt.FormControlLabel,{value:"file",control:re.default.createElement(Zt.Radio,null),label:"Open files"}),re.default.createElement(Zt.FormControlLabel,{value:"text",control:re.default.createElement(Zt.Radio,null),label:"Paste text"}))),re.default.createElement("div",{className:s.inputContainer},l==="file"?re.default.createElement("div",{className:s.fileContainer},re.default.createElement(hm.FileSelector,{name:"MSA File .aln (Clustal), .fa/.mfa (aligned FASTA), .stock (Stockholm), etc)",inline:!0,location:E,setLocation:x}),re.default.createElement(hm.FileSelector,{name:"Tree file .nh (Newick) or .asn (NCBI COBALT ASN.1)",inline:!0,location:I,setLocation:p})):re.default.createElement(re.default.Fragment,null,re.default.createElement(lt,{variant:"outlined",name:"MSA",multiline:!0,minRows:5,className:s.msaInput,maxRows:10,fullWidth:!0,placeholder:"Paste MSA here",value:u,onChange:D=>{d(D.target.value)}}),re.default.createElement(lt,{variant:"outlined",name:"Tree",multiline:!0,minRows:5,maxRows:10,fullWidth:!0,placeholder:"Paste newick tree (optional)",value:m,onChange:D=>{h(D.target.value)}}))),re.default.createElement(Ir,{feature:r,...w}),re.default.createElement(lt,{variant:"outlined",name:"MSA row name",fullWidth:!0,required:!0,className:s.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:y,onChange:D=>{b(D.target.value)}}),y.trim()?null:re.default.createElement(Zt.Alert,{severity:"warning",className:s.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.")),re.default.createElement(cn,{submitDisabled:!S||l==="file"&&!E||l==="text"&&!u.trim(),onSubmit:()=>{try{S&&(c(void 0),b1({session:o,newViewTitle:ho(S),view:i,feature:S,querySeqName:y.trim(),...l==="file"?{msaFilehandle:E,treeFilehandle:I}:{data:{msa:u,tree:m}}}),n())}catch(D){console.error(D),c(D)}},onCancel:n}))}),aQ=GL;var Br=f(Q()),DQ=f(de());Mf();var kQ=f(k()),NQ=f(Se());var Ae=f(Q());td();var Ht=f(k()),IQ=f(G()),xQ=f(Se());var tt=f(Q()),fQ=f(Qe());Y();var cQ=f(R(),1),lQ=(0,_.createSvgIcon)((0,cQ.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 pt=f(k()),dQ=f(G()),mQ=f(Se());var Cm=f(de());function Ul({newViewTitle:e,view:t,feature:r,blastParams:n}){(0,Cm.getSession)(t).addView("MsaView",{type:"MsaView",displayName:e,connectedViewId:t.id,connectedFeature:r.toJSON(),drawNodeBubbles:!0,colWidth:10,rowHeight:12,blastParams:n})}function AQ({newViewTitle:e,view:t,cached:r}){(0,Cm.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 Hl(e){let{data:t,error:r,mutate:n}=Co(`cached-blast-${e.join(",")}`,async()=>(await CS()).filter(a=>a.geneId&&e.includes(a.geneId)),Eo);return{results:t??[],error:r,isLoading:!t&&!r,handleDelete:async s=>{await ES(s),await n(a=>a?.filter(c=>c.id!==s)??[],!1)},handleClearAll:async()=>{await IS(),await n([],!1)}}}var UL=(0,mQ.makeStyles)()({header:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:8},resultList:{maxHeight:300,overflow:"auto"}});function uQ(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 HL=(0,dQ.observer)(function({model:e,handleClose:t,feature:r}){let{classes:n}=UL(),o=Xt(e),[i,s]=(0,tt.useState)(),a=(0,tt.useMemo)(()=>gl(r),[r]),{results:c,error:l,isLoading:A,handleDelete:u,handleClearAll:d}=Hl(a),m=E=>{AQ({view:o,cached:E,newViewTitle:`BLAST - ${uQ(E)}`}),t()},h=l??i;return h?tt.default.createElement(fQ.ErrorMessage,{error:h}):A?tt.default.createElement(pt.Typography,null,"Loading cached results..."):c.length===0?tt.default.createElement(pt.Typography,{color:"textSecondary"},"No cached BLAST results found for this gene. Run a BLAST query to cache results."):tt.default.createElement("div",null,tt.default.createElement("div",{className:n.header},tt.default.createElement(pt.Typography,{variant:"subtitle1"},"Cached BLAST Results (",c.length,")"),tt.default.createElement(pt.Button,{size:"small",color:"error",onClick:async()=>{try{s(void 0),await d()}catch(E){s(E)}}},"Clear All")),tt.default.createElement(pt.List,{dense:!0,className:n.resultList},c.map(E=>tt.default.createElement(pt.ListItem,{key:E.id,disablePadding:!0,secondaryAction:tt.default.createElement(pt.IconButton,{edge:"end",size:"small",onClick:async x=>{x.stopPropagation();try{s(void 0),await u(E.id)}catch(I){s(I)}}},tt.default.createElement(lQ,{fontSize:"small"}))},tt.default.createElement(pt.ListItemButton,{onClick:()=>{m(E)}},tt.default.createElement(pt.ListItemText,{primary:`${uQ(E)} - ${E.blastDatabase}/${E.blastProgram} (${E.msaAlgorithm})`,secondary:`${new Date(E.timestamp).toLocaleString()} - Seq: ${E.proteinSequence.slice(0,30)}...`}))))))}),pQ=HL;var Em=f(Q()),EQ=f(k());var jl="https://blast.ncbi.nlm.nih.gov/Blast.cgi",gQ=["clustalo","muscle","kalign","mafft"],hQ=["nr","nr_cluster_seq"],CQ=["blastp","quick-blastp"];function zs({value:e,onChange:t,className:r}){return Em.default.createElement(lt,{variant:"outlined",label:"MSA Algorithm",className:r,select:!0,value:e,onChange:n=>{t(n.target.value)}},gQ.map(n=>Em.default.createElement(EQ.MenuItem,{value:n,key:n},n)))}var jL=(0,xQ.makeStyles)()({selectField:{width:150},databaseFieldContainer:{display:"flex"},clusterSeqMessage:{marginLeft:4,alignContent:"center"},cachedResultsAccordion:{marginTop:20},infoText:{marginTop:20}}),qL=(0,IQ.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=jL(),s=Xt(r),[a,c]=(0,Ae.useState)(),[l,A]=(0,Ae.useState)("nr"),[u,d]=(0,Ae.useState)("clustalo"),[m,h]=(0,Ae.useState)("quick-blastp"),E=(0,Ae.useMemo)(()=>gl(t),[t]),{results:x,error:I}=Hl(E),p=qr({feature:t,view:s}),{selectedTranscript:y,proteinSequence:b}=p,w=p.error??a??I;return Ae.default.createElement(Ae.default.Fragment,null,Ae.default.createElement(Cr,{error:w},n,Ae.default.createElement(lt,{variant:"outlined",label:"BLAST database",className:i.selectField,select:!0,value:l,onChange:S=>{let M=S.target.value;A(M),M==="nr_cluster_seq"&&h("blastp")}},hQ.map(S=>Ae.default.createElement(Ht.MenuItem,{value:S,key:S},S))),Ae.default.createElement(zs,{className:i.selectField,value:u,onChange:d}),Ae.default.createElement("div",{className:i.databaseFieldContainer},Ae.default.createElement(lt,{variant:"outlined",label:"BLAST program",disabled:l==="nr_cluster_seq",className:i.selectField,select:!0,value:m,onChange:S=>{h(S.target.value)}},CQ.map(S=>Ae.default.createElement(Ht.MenuItem,{value:S,key:S},S))),l==="nr_cluster_seq"?Ae.default.createElement(Ht.Typography,{variant:"subtitle2",className:i.clusterSeqMessage},"Can only use blastp on nr_cluster_seq"):null),Ae.default.createElement(Ir,{feature:t,...p}),Ae.default.createElement(Ht.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?Ae.default.createElement(Ht.Accordion,{className:i.cachedResultsAccordion},Ae.default.createElement(Ht.AccordionSummary,{expandIcon:Ae.default.createElement(Hc,null)},Ae.default.createElement(Ht.Typography,null,"Previous BLAST Results")),Ae.default.createElement(Ht.AccordionDetails,null,Ae.default.createElement(pQ,{model:r,handleClose:e,feature:t}))):null),Ae.default.createElement(cn,{submitDisabled:!b,onSubmit:()=>{try{y&&(c(void 0),Ul({feature:y,view:s,newViewTitle:ml(t,y),blastParams:{baseUrl:o,blastProgram:m,blastDatabase:l,msaAlgorithm:u,selectedTranscript:y,proteinSequence:b}}),e())}catch(S){console.error(S),c(S)}},onCancel:e}))}),yQ=qL;var Jr=f(Q()),bQ=f(de()),Fi=f(k()),BQ=f(G()),SQ=f(Se());ql();var JL=(0,SQ.makeStyles)()({ncbiLink:{wordBreak:"break-all",margin:30,maxWidth:600},infoText:{marginTop:20}}),VL=(0,BQ.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=JL(),s=Xt(r),a=qr({feature:t,view:s}),{proteinSequence:c,error:l}=a,A=pl(c),u=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${A}`,d=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${(0,bQ.shorten2)(A,10)}`;return Jr.default.createElement(Jr.default.Fragment,null,Jr.default.createElement(Cr,{error:l},n,Jr.default.createElement(Ir,{feature:t,...a}),c?Jr.default.createElement("div",{className:i.ncbiLink},"Link to NCBI BLAST: ",Jr.default.createElement(Io,{href:u},d)):null,Jr.default.createElement(Fi.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`)),Jr.default.createElement(Fi.DialogActions,null,Jr.default.createElement(Fi.Button,{color:"primary",variant:"contained",onClick:()=>{e()}},"Close")))}),QQ=VL;var ln=f(Q()),er=f(k());function xm({lookupMethod:e,setLookupMethod:t}){return ln.default.createElement(er.FormControl,{component:"fieldset"},ln.default.createElement(er.RadioGroup,{row:!0,value:e,onChange:r=>{t(r.target.value)}},ln.default.createElement(er.FormControlLabel,{value:"automatic",control:ln.default.createElement(er.Radio,null),label:"Automatic"}),ln.default.createElement(er.FormControlLabel,{value:"rid",control:ln.default.createElement(er.Radio,null),label:"Load from RID"}),ln.default.createElement(er.FormControlLabel,{value:"manual",control:ln.default.createElement(er.Radio,null),label:"Manual"})))}var gt=f(Q()),Jl=f(k()),MQ=f(G()),vQ=f(Se());ql();var YL=(0,vQ.makeStyles)()({marginBottom:{marginBottom:16},ridField:{width:150},infoText:{marginTop:20}}),WL=(0,MQ.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=YL(),s=Xt(r),[a,c]=(0,gt.useState)(),[l,A]=(0,gt.useState)(""),[u,d]=(0,gt.useState)("clustalo"),m=qr({feature:t,view:s}),{selectedTranscript:h,proteinSequence:E}=m,x=m.error??a,I=l.trim();return gt.default.createElement(gt.default.Fragment,null,gt.default.createElement(Cr,{error:x},n,gt.default.createElement(Jl.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."),gt.default.createElement(lt,{variant:"outlined",label:"BLAST RID",placeholder:"e.g., ABC12345",fullWidth:!0,className:i.marginBottom,value:l,onChange:p=>{A(p.target.value)}}),I?gt.default.createElement(Jl.Typography,{variant:"body2",className:i.marginBottom},gt.default.createElement(Io,{href:`${o}?CMD=Get&RID=${I}`},"View BLAST results on NCBI")):null,gt.default.createElement(zs,{className:i.ridField,value:u,onChange:d}),gt.default.createElement(Ir,{feature:t,...m}),gt.default.createElement(Jl.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.")),gt.default.createElement(cn,{submitDisabled:!E||!I,onSubmit:()=>{try{h&&I&&(c(void 0),Ul({feature:h,view:s,newViewTitle:ml(t,h),blastParams:{baseUrl:o,blastProgram:"blastp",blastDatabase:"nr",msaAlgorithm:u,selectedTranscript:h,proteinSequence:E,rid:I}}),e())}catch(p){console.error(p),c(p)}},onCancel:e}))}),TQ=WL;var br=f(Q()),tr=f(k()),_Q=f(Se());var zL=(0,_Q.makeStyles)()({urlField:{minWidth:300}});function ym({handleClose:e,baseUrl:t}){let{classes:r}=zL(),[n,o]=(0,br.useState)(t);return br.default.createElement(tr.Dialog,{open:!0,maxWidth:"lg",onClose:()=>{e()}},br.default.createElement(tr.DialogTitle,null,"BLAST Settings"),br.default.createElement(tr.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(tr.Button,{variant:"contained",onClick:()=>{o(jl)}},"Reset")),br.default.createElement(tr.DialogActions,null,br.default.createElement(tr.Button,{variant:"contained",color:"secondary",onClick:()=>{e()}},"Cancel"),br.default.createElement(tr.Button,{color:"primary",variant:"contained",onClick:()=>{e(n)}},"Save")))}var $L=(0,NQ.makeStyles)()({settingsButton:{float:"right"}}),KL={automatic:yQ,rid:TQ,manual:QQ};function wm({handleClose:e,model:t,feature:r}){let[n,o]=(0,Br.useState)("automatic"),[i,s]=(0,DQ.useLocalStorage)("msa-blastRootUrl",jl),[a,c]=(0,Br.useState)(!1),{classes:l}=$L(),A=KL[n];return Br.default.createElement(Br.default.Fragment,null,Br.default.createElement(kQ.IconButton,{className:l.settingsButton,size:"small",onClick:()=>{c(!0)}},Br.default.createElement(Mc,null)),Br.default.createElement(A,{model:t,feature:r,handleClose:e,baseUrl:i},Br.default.createElement(xm,{lookupMethod:n,setLookupMethod:o})),a?Br.default.createElement(ym,{baseUrl:i,handleClose:u=>{u&&s(u),c(!1)}}):null)}var ht=f(Q()),$s=f(Qe()),Yl=f(de()),HQ=f(k()),jQ=f(G());var qQ=f(Se());Cn();function bm(e,t="",r=5e3){let n=[e];for(;n.length;){let o=n.pop();for(let[i,s]of Object.entries(o)){if(t.length>r)return lf(t);typeof s=="object"&&s!==null?n.push(s):i==="locationType"&&s==="FileHandleLocation"?t+=`${i}-BlobLocation`:i==="handleId"?t+=`blobId-fh-blob-${s}`:t+=`${i}-${s}`}}return`adp-${lf(t)}`}function LQ(e={}){return e.type&&e.adapterId?`${e.type}-${e.adapterId}`:`${bm(e)}`}var RQ={};async function XL(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}),s=Bm.bind(null,e,t),a=await o.getAdapterClass();return{dataAdapter:new a(i,s,e),sessionIds:new Set([t])}}async function Bm(e,t,r){let n=LQ(r);RQ[n]??=XL(e,t,r);let o=await RQ[n];return o.sessionIds.add(t),o}async function FQ(e,t){return(await Bm(e,"msa",t)).dataAdapter}async function PQ({config:e,pluginManager:t}){return(await FQ(t,e)).getMSAList()}async function OQ({config:e,pluginManager:t,msaId:r}){return(await FQ(t,e)).getMSA(r)}function GQ({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 UQ=f(Qo());function Vl(e){return(0,UQ.readConfObject)(e,["msa","datasets"])}var ZL=(0,qQ.makeStyles)()({selectedContainer:{marginTop:50}}),eR=(0,jQ.observer)(function({model:e,feature:t,handleClose:r}){let n=(0,Yl.getSession)(e),o=Xt(e),{classes:i}=ZL(),{pluginManager:s}=(0,Yl.getEnv)(e),{assemblyNames:a}=o,[c,l]=(0,ht.useState)(),A=Vl(n.jbrowse),[u,d]=(0,ht.useState)(A?.[0]?.datasetId),m=A?.find(F=>F.datasetId===u),{data:h,isLoading:E,error:x}=Co(m?`${m.datasetId}-msa-list`:null,()=>PQ({config:m.adapter,pluginManager:s}),Eo),I=qr({feature:t,view:o,validIds:h}),{selectedId:p,selectedTranscript:y}=I,{data:b,isLoading:w,error:S}=Co(p&&m&&h?`${m.datasetId}-${p}-${h.length}-msa`:null,()=>OQ({msaId:p,config:m.adapter,pluginManager:s}),Eo),M=x??S??I.error??c;return ht.default.createElement(ht.default.Fragment,null,ht.default.createElement(Cr,{error:M},ht.default.createElement(lt,{select:!0,label:"Select MSA dataset",value:u,onChange:F=>{d(F.target.value)}},A?.map(F=>ht.default.createElement(HQ.MenuItem,{key:F.datasetId,value:F.datasetId},F.name))),m?ht.default.createElement("div",{className:i.selectedContainer},!E&&w?ht.default.createElement($s.LoadingEllipses,{variant:"h6",message:`Loading MSA for (${p})`}):null,E?ht.default.createElement($s.LoadingEllipses,{variant:"h6",message:`Loading available MSAs for (${m.name})`}):null,h?ht.default.createElement("div",null,ht.default.createElement($s.SanitizedHTML,{html:m.description}),ht.default.createElement(Ir,{feature:t,...I})):null):null),ht.default.createElement(cn,{submitDisabled:!y||!b?.length,onSubmit:()=>{try{if(y&&b){let F=`${p}_${a[0]}`;GQ({session:n,newViewTitle:ho(y),view:o,querySeqName:F,feature:y,data:{msa:b.map(D=>`>${D.get("refName")}
|
|
74
|
-
${D.get("seq")}`).join(`
|
|
75
|
-
`)}}),r()}}catch(F){l(F)}},onCancel:r}))}),JQ=eR;var VQ=f(Q());function Ks({children:e,value:t,index:r,...n}){return VQ.default.createElement("div",{role:"tabpanel",hidden:t!==r,...n},t===r?e:null)}function Sm({handleClose:e,feature:t,model:r}){let n=(0,WQ.getSession)(r),i=!!Vl(n.jbrowse)?.length,[s,a]=(0,Dt.useState)("ncbi_blast");return Dt.default.createElement(YQ.Dialog,{maxWidth:"xl",title:"Launch MSA view",open:!0,onClose:e},Dt.default.createElement(Pi.Tabs,{value:s,onChange:(c,l)=>{a(l)}},Dt.default.createElement(Pi.Tab,{label:"NCBI BLAST query",value:"ncbi_blast"}),i?Dt.default.createElement(Pi.Tab,{label:"Pre-loaded MSA datasets",value:"preloaded_msa"}):null,Dt.default.createElement(Pi.Tab,{label:"Manual upload",value:"manual_msa"})),Dt.default.createElement(Ks,{value:s,index:"ncbi_blast"},Dt.default.createElement(wm,{handleClose:e,feature:t,model:r})),i?Dt.default.createElement(Ks,{value:s,index:"preloaded_msa"},Dt.default.createElement(JQ,{model:r,feature:t,handleClose:e})):null,Dt.default.createElement(Ks,{value:s,index:"manual_msa"},Dt.default.createElement(aQ,{model:r,feature:t,handleClose:e})))}function tR(e){return e.name==="LinearBasicDisplay"}function rR(e){return e.views(t=>{let r=t.contextMenuItems;return{contextMenuItems(){let n=t.contextMenuFeature,o=(0,Wl.getContainingTrack)(t),i=n?.get("type"),s=n&&["gene","mRNA","transcript"].includes(i);return[...r(),...s?[{label:"Launch MSA view",icon:w1,onClick:()=>{(0,Wl.getSession)(o).queueDialog(a=>[Sm,{model:o,handleClose:a,feature:n}])}}]:[]]}}})}function Qm(e){e.addToExtensionPoint("Core-extendPluggableElement",t=>(tR(t)&&(t.stateModel=rR(t.stateModel)),t))}function Mm(e){e.addToExtensionPoint("LaunchView-MsaView",({session:t,data:r,msaFileLocation:n,treeFileLocation:o,connectedViewId:i,connectedFeature:s,displayName:a,colorSchemeName:c,colWidth:l,rowHeight:A,treeAreaWidth:u,treeWidth:d,drawNodeBubbles:m,labelsAlignRight:h,showBranchLen:E,querySeqName:x,highlightColumns:I})=>{if(!r&&!n)throw new Error("No MSA data or file location provided when launching MSA view");t.addView("MsaView",{type:"MsaView",displayName:a,connectedViewId:i,connectedFeature:s,colorSchemeName:c,colWidth:l,rowHeight:A,treeAreaWidth:u,treeWidth:d,drawNodeBubbles:m,labelsAlignRight:h,showBranchLen:E,highlightColumns:I,init:{msaData:r?.msa,treeData:r?.tree,msaUrl:n?.uri,treeUrl:o?.uri,querySeqName:x}})})}var uM=f(Q()),fM=f($Q());var AR=(0,uM.lazy)(()=>Promise.resolve().then(()=>(AM(),lM)));function Dm(e){e.addViewType(()=>new fM.default({name:"MsaView",stateModel:qd(),ReactComponent:AR}))}var dM="2.5.1";var Kl=class extends mM.default{constructor(){super(...arguments);this.name="MsaViewPlugin";this.version=dM;this.rootConfigurationSchema=r=>({msa:(0,km.ConfigurationSchema)("MSA",{datasets:Nm.types.maybe(Nm.types.array((0,km.ConfigurationSchema)("MSAEntry",{datasetId:{type:"string",defaultValue:""},description:{type:"string",defaultValue:""},name:{type:"string",defaultValue:""},adapter:r.pluggableConfigSchemaType("adapter")})))})})}install(r){Dm(r),Qm(r),Mm(r),zd(r),Kd(r)}configure(r){(0,pM.isAbstractMenuManager)(r.rootModel)&&r.rootModel.appendToSubMenu(["Add"],{label:"Multiple sequence alignment view",icon:op,onClick:n=>{n.addView("MsaView",{})}})}};return MM(uR);})();
|
|
69
|
+
.**: ****: ** ***.***`,uQ="(((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 AA(e,t,r,n){e.setError(void 0),t&&e.setMSAFilehandle(t),r&&e.setTreeFilehandle(r),n&&e.setGFFFilehandle(n)}var ap=h(()=>{});function tn({onClick:e,model:t,children:r}){return Pt.default.createElement("li",null,Pt.default.createElement(uA.Link,{onClick:n=>{t.setError(void 0),n.preventDefault(),e()},href:"#"},Pt.default.createElement(uA.Typography,{component:"span"},r)))}var Pt,uA,dQ,no,NF,mQ,pQ=h(()=>{Pt=m(_(),1),uA=m(O(),1),dQ=m(j(),1);fQ();ap();no="https://jbrowse.org/genomes/multiple_sequence_alignments",NF=(0,dQ.observer)(function({model:e}){function t({msa:r,tree:n,gff:o}){(async()=>{try{await AA(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 Pt.default.createElement("ul",null,Pt.default.createElement(tn,{model:e,onClick:()=>{t({tree:"https://jbrowse.org/genomes/newicktrees/sarscov2phylo.pub.ft.nh"})}},"230k COVID-19 samples (tree only)"),Pt.default.createElement(tn,{model:e,onClick:()=>{e.setData({msa:lQ,tree:uQ})}},"Small protein MSA+tree"),Pt.default.createElement(tn,{model:e,onClick:()=>{e.setData({msa:AQ})}},"Small MSA only"),Pt.default.createElement(tn,{model:e,onClick:()=>{t({msa:`${no}/pfam-cov2.stock`})}},"PFAM SARS-CoV2 multi-stockholm"),Pt.default.createElement(tn,{model:e,onClick:()=>{t({msa:`${no}/pfam-cov2.stock`,gff:`${no}/pfam-cov2-domains.gff`})}},"PFAM SARS-CoV2 multi-stockholm w/ domains loaded"),Pt.default.createElement(tn,{model:e,onClick:()=>{t({msa:`${no}/Lysine.stock`})}},"Lysine stockholm file"),Pt.default.createElement(tn,{model:e,onClick:()=>{t({msa:`${no}/PF01601_full.txt`})}},"PF01601 stockholm file (SARS-CoV2 spike protein)"),Pt.default.createElement(tn,{model:e,onClick:()=>{t({msa:`${no}/europe_covid.fa`})}},"Europe COVID full genomes (LR883044.1 and 199 other sequences)"),Pt.default.createElement(tn,{model:e,onClick:()=>{t({msa:`${no}/rhv_test-only.aligned_with_mafft_auto.fa`,tree:`${no}/rhv_test-only.aligned_with_mafft_auto.nh`})}},"MAFFT+VeryFastTree(17.9k samples)"),Pt.default.createElement(tn,{model:e,onClick:()=>{t({msa:"https://jbrowse.org/demos/ttc39a.mfa"})}},"Human BLAST results mfa"))}),mQ=NF});var Ie,as,Mr,gQ,LF,hQ,CQ=h(()=>{Ie=m(_(),1),as=m(Ne(),1),Mr=m(O(),1),gQ=m(j(),1);pQ();ap();LF=(0,gQ.observer)(function({model:e}){let[t,r]=(0,Ie.useState)(),[n,o]=(0,Ie.useState)(),[i,s]=(0,Ie.useState)(),{error:a}=e;return Ie.default.createElement(Mr.Container,null,Ie.default.createElement("div",{style:{width:"50%"}},a?Ie.default.createElement(as.ErrorMessage,{error:a}):null,Ie.default.createElement(Mr.Typography,null,"Open an MSA file (stockholm or clustal format) and/or a tree file (newick format)."),Ie.default.createElement(Mr.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.")),Ie.default.createElement("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",gap:40}},Ie.default.createElement("div",null,Ie.default.createElement("div",null,Ie.default.createElement(Mr.Typography,null,"MSA file or URL"),Ie.default.createElement(as.FileSelector,{location:t,setLocation:r})),Ie.default.createElement("div",null,Ie.default.createElement(Mr.Typography,null,"Tree file or URL"),Ie.default.createElement(as.FileSelector,{location:n,setLocation:o})),Ie.default.createElement("div",null,Ie.default.createElement(Mr.Typography,null,"InterProScan GFF file or URL (optional)"),Ie.default.createElement(as.FileSelector,{location:i,setLocation:s}))),Ie.default.createElement("div",null,Ie.default.createElement(Mr.Button,{onClick:()=>{(async()=>{try{await AA(e,t,n,i)}catch(c){console.error(c),e.setError(c)}})()},variant:"contained",color:"primary",disabled:!t&&!n},"Open")),Ie.default.createElement("div",null,Ie.default.createElement(Mr.Typography,null,"Examples"),Ie.default.createElement(mQ,{model:e}))))}),hQ=LF});var ct,xQ,_a,fA,EQ,RF,FF,dA,cp=h(()=>{ct=m(_(),1),xQ=m(Ne(),1);$u();_a=m(O(),1),fA=m(j(),1);cQ();CQ();EQ=(0,fA.observer)(function({model:e}){let{status:t}=e;return ct.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:12,padding:20}},ct.default.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},ct.default.createElement("style",null,"@keyframes spinner { to { transform: rotate(360deg); } }"),ct.default.createElement("circle",{cx:"12",cy:"12",r:"10",stroke:"#ccc",strokeWidth:"3",fill:"none"}),ct.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"}})),ct.default.createElement(_a.Typography,{variant:"h6"},t?.msg??"Loading..."),t?.onCancel?ct.default.createElement(_a.Button,{variant:"outlined",size:"small",onClick:()=>t.onCancel?.()},"Cancel"):null)}),RF=(0,fA.observer)(function({model:e,error:t}){return ct.default.createElement("div",null,ct.default.createElement(xQ.ErrorMessage,{error:t}),ct.default.createElement(_a.Button,{variant:"contained",color:"primary",onClick:()=>{e.reset()}},"Return to import form"))}),FF=(0,fA.observer)(function({model:e}){let{isLoading:t,dataInitialized:r,msaFilehandle:n,treeFilehandle:o}=e,i=!!(n||o);return ct.default.createElement("div",null,ct.default.createElement(mi,{FallbackComponent:s=>ct.default.createElement(RF,{model:e,error:s.error})},r?t?ct.default.createElement(EQ,{model:e}):ct.default.createElement(aQ,{model:e}):i||t?ct.default.createElement(EQ,{model:e}):ct.default.createElement(hQ,{model:e})))}),dA=FF});var wQ=q((bJ,IQ)=>{IQ.exports=JBrowseExports["@jbrowse/core/ui/theme"]});var lp=q((SJ,yQ)=>{yQ.exports=JBrowseExports["@jbrowse/core/util/io"]});var SQ=q((BJ,bQ)=>{bQ.exports=JBrowseExports["@jbrowse/core/util/types/mst"]});function Ap({mapSize:e,blockSize:t,viewportPos:r,viewportSize:n}){let o=Math.max(0,Math.min(r,e-n)),i=Math.floor(o/t),s=Math.floor((o+n-1)/t),a=[];for(let c=i;c<=s;c++)a.push(c*t);return a}var BQ=h(()=>{});function TQ(e,t){let{W:r=0,L:n=0,V:o=0,I:i=0,M:s=0,A:a=0,F:c=0,C:l=0,H:A=0,P:u=0,R:f=0,K:d=0,Q:g=0,E=0,D:I=0,T:x=0,S:p=0,G:w=0,Y:y=0,N:S=0}=e,Q=r+n+o+i+s+a+c+l+A+u+y,b=d+f,k=g+E,T=E+I,v=x+p,M=P=>P/t,L={};return M(Q)>.6&&(L.W=oo,L.L=oo,L.V=oo,L.A=oo,L.I=oo,L.M=oo,L.F=oo,L.C=oo),(M(b)>.6||M(d)>.8||M(f)>.8||M(g)>.8)&&(L.K=QQ,L.R=QQ),(M(b)>.6||M(k)>.5||M(E)>.8||M(g)>.8||M(I)>.8)&&(L.E=PF),(M(b)>.6||M(T)>.5||M(d)>.8||M(f)>.8||M(g)>.8)&&(L.D=OF),(M(S)>.5||M(y)>.85)&&(L.N=vQ),(M(b)>.6||M(k)>.6||M(g)>.85||M(E)>.85||M(d)>.85||M(f)>.85)&&(L.Q=vQ),(M(Q)>.6||M(v)>.5||M(p)>.85||M(x)>.85)&&(L.S=MQ,L.T=MQ),M(l)>.85&&(L.C=GF),w>0&&(L.G=UF),u>0&&(L.P=HF),(M(Q)>.6||M(r)>.85||M(y)>.85||M(a)>.85||M(l)>.85||M(u)>.85||M(g)>.85||M(c)>.85||M(A)>.85||M(i)>.85||M(n)>.85||M(s)>.85||M(o)>.85)&&(L.H=_Q,L.Y=_Q),L}var oo,QQ,PF,OF,vQ,MQ,GF,UF,HF,_Q,kQ=h(()=>{oo="rgb(128,179,230)",QQ="#d88",PF="rgb(192, 72, 192)",OF="rgb(204, 77, 204)",vQ="#8f8",MQ="rgb(26,204,26)",GF="rgb(240, 128, 128)",UF="rgb(240, 144, 72)",HF="rgb(204, 204, 0)",_Q="rgb(26, 179, 179)"});var Qn,DQ,up,jF,qF,NQ,LQ=h(()=>{Qn=m(_(),1),DQ=m(Ir(),1),up=m(j(),1);Zu();mc();jF=(0,up.observer)(function({model:e,offsetX:t,trackHeight:r}){let{blockSize:n,scrollX:o,highResScaleFactor:i}=e,s=(0,Qn.useRef)(null);return(0,Qn.useEffect)(()=>{let a=s.current?.getContext("2d");if(a)return(0,DQ.autorun)(()=>{let{blockSize:c,colWidth:l,highResScaleFactor:A,conservation:u}=e;a.resetTransform(),a.scale(A,A),a.clearRect(0,0,c,r),a.translate(-t,0),Gu({ctx:a,conservation:u,colWidth:l,trackHeight:r,offsetX:t,blockSize:c})})},[e,t,r]),Qn.default.createElement("canvas",{ref:s,height:r*i,width:n*i,style:{position:"absolute",left:o+t,width:n,height:r}})}),qF=(0,up.observer)(function({model:e,track:t}){let{blocksX:r,msaAreaWidth:n}=e,o=t.model.height;return Qn.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>Qn.default.createElement(jF,{key:i,model:e,offsetX:i,trackHeight:o})),Qn.default.createElement(i0,{model:e}))}),NQ=qF});var io,RQ,fp,VF,JF,FQ,PQ=h(()=>{io=m(_(),1),RQ=m(Ir(),1),fp=m(j(),1);Ai();rp();mc();VF=(0,fp.observer)(function({track:e,model:t,offsetX:r}){let{blockSize:n,scrollX:o,colorScheme:i,rowHeight:s,highResScaleFactor:a}=t,{model:{customColorScheme:c,data:l}}=e,A=c??i,u=(0,io.useRef)(null),{contrastScheme:f}=cA(A);return(0,io.useEffect)(()=>{let d=u.current?.getContext("2d");if(d)return(0,RQ.autorun)(()=>{let{blockSize:g,bgColor:E,colWidth:I,fontSize:x,rowHeight:p,highResScaleFactor:w}=t;d.resetTransform(),d.scale(w,w),d.clearRect(0,0,g,p),d.translate(-r,0),d.textAlign="center",Hr(d,x),Uu({ctx:d,data:l,colorScheme:A,contrastScheme:f,bgColor:E,colWidth:I,rowHeight:p,offsetX:r,blockSize:g})})},[t,r,f,A,l]),io.default.createElement("canvas",{ref:u,height:s*a,width:n*a,style:{position:"absolute",left:o+r,width:n,height:s}})}),JF=(0,fp.observer)(function({track:e,model:t}){let{blocksX:r,msaAreaWidth:n,rowHeight:o}=t;return e.model.data?io.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>io.default.createElement(VF,{key:i,track:e,model:t,offsetX:i}))):null}),FQ=JF});var Ta,mA=h(()=>{Ta="maeditor"});function OQ(e){let t=Math.min(e.length-1,Im.length-1),r=Im[t];return Object.fromEntries(e.map((n,o)=>[n,r[o]]))}var GQ=h(()=>{wm()});function UQ(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 HQ=h(()=>{});function jQ(e,t){dp||(dp=document.createElement("canvas"));let r=dp.getContext("2d");if(!r)throw new Error("no canvas context");return Hr(r,t),r.measureText(e).width}var dp,qQ=h(()=>{Ai()});function VQ(){return rn.types.model({tree:rn.types.maybe(rn.types.string),msa:rn.types.maybe(rn.types.string),treeMetadata:rn.types.maybe(rn.types.string),gff:rn.types.maybe(rn.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 rn,JQ=h(()=>{rn=m(Yt(),1)});function WQ(){return YQ.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 YQ,zQ=h(()=>{YQ=m(Yt(),1)});function $Q(){return pA.types.model({bgColor:!0,colorSchemeName:Ta,msaFormat:pA.types.maybe(pA.types.enumeration("MSAFormat",YF))}).actions(e=>({setColorSchemeName(t){e.colorSchemeName=t},setBgColor(t){e.bgColor=t},setMSAFormat(t){e.msaFormat=t}}))}var pA,YF,KQ=h(()=>{pA=m(Yt(),1);mA();YF=["stockholm","a3m","fasta","emf","clustal"]});function XQ(){return cs.types.model({drawLabels:!0,labelsAlignRight:!1,treeAreaWidth:cs.types.optional(cs.types.number,400),treeWidth:cs.types.optional(cs.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 cs,ZQ=h(()=>{cs=m(Yt(),1);mA()});function wp(e,t){return tv.get(e.toUpperCase())?.get(t.toUpperCase())??-4}function zF(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 f=wp(A,u);o+=f,i+=Math.max(wp(A,A),wp(u,u)),A.toUpperCase()===u.toUpperCase()?r++:n++}if(r+n===0||i<=0)return 1;let a=o/i,c=Math.max(.01,Math.min(1,a));return-Math.log(c)}function $F(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]=zF(e[n][1],e[o][1])}return r}function KF(e,t){let r=e.length;if(r<2)return{name:t[0]};if(r===2){let a=e[0][1];return{left:{name:t[0]},right:{name:t[1]},leftLength:a/2,rightLength:a/2}}let n=[];for(let a=0;a<r;a++)n[a]=[...e[a]];let o=t.map(a=>({name:a})),i=r;for(;i>2;){let a=[];for(let p=0;p<o.length;p++)o[p]!==void 0&&a.push(p);let c=new Map;for(let p of a){let w=0;for(let y of a)p!==y&&(w+=n[p][y]);c.set(p,w)}let l=1/0,A=-1,u=-1;for(let p=0;p<a.length;p++)for(let w=p+1;w<a.length;w++){let y=a[p],S=a[w],Q=(i-2)*n[y][S]-c.get(y)-c.get(S);Q<l&&(l=Q,A=y,u=S)}let f=n[A][u],d=c.get(A),g=c.get(u),E=f/2+(d-g)/(2*(i-2)),I=f-E;E=Math.max(0,E),I=Math.max(0,I);let x={left:o[A],right:o[u],leftLength:E,rightLength:I};for(let p of a)if(p!==A&&p!==u){let w=(n[A][p]+n[u][p]-f)/2;n[A][p]=Math.max(0,w),n[p][A]=Math.max(0,w)}o[u]=void 0,o[A]=x,i--}let s=[];for(let a=0;a<o.length;a++)o[a]!==void 0&&s.push(a);if(s.length===2){let a=s[0],c=s[1],l=n[a][c];return{left:o[a],right:o[c],leftLength:l/2,rightLength:l/2}}return o[s[0]]}function ev(e,t){return t===void 0?e:`${e}:${t.toFixed(6)}`}function XF(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 s=i.left?ev(n.get(i.left),i.leftLength):"",a=i.right?ev(n.get(i.right),i.rightLength):"";n.set(i,`(${s},${a})`)}}return n.get(e)}function rv(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=$F(e),n=KF(r,t);return XF(n)+";"}var gA,WF,tv,nv=h(()=>{gA="ARNDCQEGHILKMFPSTWYVBZX*",WF=[[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]],tv=new Map;for(let e=0;e<gA.length;e++){let t=new Map;for(let r=0;r<gA.length;r++)t.set(gA[r],WF[e][r]);tv.set(gA[e],t)}});function yp(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 e3(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 ov(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=t3(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(yp(n).flatMap(s=>{let a=r3(s);return a?[[a.id,ZF[a.name]||a.name]]:[]}));return yp(o).flatMap(s=>{let a=n3(s);if(!a)return[];let{features:c=[],...l}=a;return[{...l,...Object.fromEntries(c.map(A=>[i[A.featureid],A.value]))}]})}function t3(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 s=1,a=n+1;for(n++;n<r.length&&s>0;)r[n]==="{"?s++:r[n]==="}"&&s--,n++;s===0&&(t[i]=r.slice(a,n-1).trim()),n=r.indexOf(",",n),n=n===-1?r.length:n+1}return t}function r3(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 n3(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?e3(e,n):void 0;return{id:parseInt(t[1],10),...r?{parent:parseInt(r[1],10)}:{},features:o?yp(o).flatMap(i=>{let s=o3(i);return s?[s]:[]}):[]}}function o3(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 ZF,iv=h(()=>{ZF={$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 bp(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 sv(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 i3({seq:e,blanks:t,visibleCol:r}){let n=bp(t,r),o=e.length;if(n<o&&Ms(e[n]))return;let i=0;for(let s=0;s<n&&s<o;s++)Ms(e[s])||i++;return n<o?i:void 0}function av({rowName:e,visibleCol:t,rowMap:r,blanks:n}){let o=r.get(e);return o!==void 0?i3({seq:o,visibleCol:t,blanks:n}):void 0}var cv=h(()=>{Rn()});function lv({row:e,seqPos:t}){let r=0,n=0;for(;n<e.length;){if(!Ms(e[n])){if(r===t)return n;r++}n++}return t===0?0:n}var Av=h(()=>{Rn()});function uv(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 fv=h(()=>{});function a3(e){return e.startsWith("BioTreeContainer")?UQ(ov(e)):Oo(e.startsWith("SEQ")?Gl(e).tree:e)}function c3(){return ne.types.compose(WQ(),XQ(),$Q(),ne.types.model("MsaView",{id:qo.ElementId,showDomains:!1,hideGaps:!0,allowedGappyness:100,subFeatureRows:!1,type:ne.types.literal("MsaView"),drawMsaLetters:!0,scrollZoom:!1,height:ne.types.optional(ne.types.number,550),rowHeight:16,scrollY:0,scrollX:0,colWidth:12,treeFilehandle:ne.types.maybe(qo.FileLocation),msaFilehandle:ne.types.maybe(qo.FileLocation),treeMetadataFilehandle:ne.types.maybe(qo.FileLocation),gffFilehandle:ne.types.maybe(qo.FileLocation),currentAlignment:0,collapsed:ne.types.array(ne.types.string),showOnly:ne.types.maybe(ne.types.string),turnedOffTracks:ne.types.map(ne.types.boolean),data:ne.types.optional(VQ(),{tree:"",msa:"",treeMetadata:""}),featureFilters:ne.types.map(ne.types.boolean),relativeTo:ne.types.maybe(ne.types.string),highlightColumns:ne.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,ne.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 Po[e.colorSchemeName]??Po[Ta]},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?Lm(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?Zi(a3(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=Th(this.tree,r=>r.children);if(kh(t,r=>r.children.length>0?0:1),Dh(t,(r,n)=>(r.data.length??1)-(n.data.length??1)),e.showOnly){let r=pc(t,n=>n.data.id===e.showOnly);r&&(t=r)}for(let r of e.collapsed){let n=pc(t,o=>o.data.id===r);n&&(n.children?Rh(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(Ke.notEmpty);if(n.length===0)return[];let o=n[0].length,i=n.length,s=Math.ceil(r/100*i),a=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&&a[u]++}let c=[];for(let l=0;l<o;l++)a[l]>=s&&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 s=vh(t,i);s.length>0&&n.set(o,s)}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?Fu(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]??={},s=n[o];i[s]=(i[s]??0)+1}return t},get colStatsSums(){return this.colStats.map(t=>(0,Ke.sum)(Object.values(t)))},get sequenceType(){let t=new Set;for(let s of this.colStats)for(let a of Object.keys(s))a!=="-"&&a!=="."&&t.add(a);let r=new Set(["A","C","G","T","N"]),n=new Set(["A","C","G","U","N"]),o=t.size>0&&[...t].every(s=>r.has(s)),i=t.size>0&&[...t].every(s=>n.has(s));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 s=0,a="";for(let[l,A]of Object.entries(n))A>s&&l!=="-"&&l!=="."&&(s=A,a=l);let c=s/i;return{letter:a,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)=>TQ(n,r[o]))},get conservation(){let{colStats:t,colStatsSums:r,sequenceType:n}=this,i=Math.log2(n==="amino"?20:4);return t.map((s,a)=>{let c=r[a];if(!c)return 0;let l=(s["-"]??0)+(s["."]??0),A=c-l;if(A===0)return 0;let u=0;for(let[g,E]of Object.entries(s))if(g!=="-"&&g!=="."){let I=E/A;u-=I*Math.log2(I)}let f=l/c;return Math.max(0,1-u/i)*(1-f)})},get hierarchy(){let t=this.root;Lh(t,this.totalHeight,e.treeWidth),t.data.length=0;let r=Oh(t),n=r?e.treeWidth/r:0;return Gh(t,0,n),Ts(t,o=>{if(o._children){let{min:i,max:s}=Fh(o);o.collapsedTipXNear=(o.len??0)+i*n,o.collapsedTipXFar=(o.len??0)+s*n}}),t},get totalHeight(){return _s(this.root).length*e.rowHeight},get leaves(){return _s(this.hierarchy)},get maxBranchLength(){return Ph(this.hierarchy)},get maxDepthToLeaf(){return ks(this.hierarchy)},get allBranchesLength0(){return Nh(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 Ap({viewportSize:e.msaAreaWidth,viewportPos:-e.scrollX,blockSize:e.blockSize,mapSize:e.totalWidth})},get blocksY(){return Ap({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=pc(e.hierarchy,n=>n.data.id===t);e.hoveredTreeNode=r?{nodeId:t,descendantNames:_s(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=rv(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,Ke.clamp)(e.scrollX,e.maxScrollX,0)},zoomInHorizontal(){e.colWidth=Math.min(80,Math.ceil(e.colWidth*1.5)),e.scrollX=(0,Ke.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,Ot.transaction)(()=>{this.zoomInHorizontal(),this.zoomInVertical()})},zoomOut(){(0,Ot.transaction)(()=>{this.zoomOutHorizontal(),this.zoomOutVertical()})},zoomToPos(t,r,n){(0,Ot.transaction)(()=>{let o=(-e.scrollX+r)/e.colWidth,i=(-e.scrollY+n)/e.rowHeight;e.colWidth=(0,Ke.clamp)(e.colWidth*t,.2,80),e.rowHeight=(0,Ke.clamp)(e.rowHeight*t,1,80),e.scrollX=(0,Ke.clamp)(r-o*e.colWidth,e.maxScrollX,0);let s=n-i*e.rowHeight,a=Math.max(0,-e.maxScrollY),c=e.totalHeight-a,l=c>0?(0,Ke.clamp)(1-a/c,0,1):1;e.scrollY=(0,Ke.clamp)(s*(1-l),e.maxScrollY,0)})},doScrollY(t){e.scrollY=(0,Ke.clamp)(e.scrollY+t,e.maxScrollY,0)},setDomains(t){e.interProAnnotations=t,e.setShowDomains(!!t)},applyGFFText(t){let r=Ul(t);this.setDomains(Hl(r))},doScrollX(t){this.setScrollX(e.scrollX+t)},setScrollX(t){e.scrollX=(0,Ke.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:s}=i.data,a=n[s]?.genome??s;return[s,jQ(a,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(s=>!!s.data).map(s=>({model:{...s,data:n?Fu(o,s.data):s.data,height:t},ReactComponent:FQ}))},get tracks(){let t={model:{id:"conservation",name:"Conservation",height:e.conservationTrackHeight},ReactComponent:NQ};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)?.[bp(o,r)]},visibleColToSeqPos(t,r){return av({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?sv(r,t):t},seqPosToGlobalCol(t,r){let n=e.rowMap.get(t);return n?lv({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,Ke.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:s,end:a})=>({id:t,name:i.name,accession:i.accession,description:i.description,start:s,end:a})):[]})).toSorted((t,r)=>Pu(r)-Pu(t)):[]},get tidyFilteredInterProAnnotations(){return this.tidyInterProAnnotations.filter(t=>e.featureFilters.get(t.accession))},get tidyFilteredGatheredInterProAnnotations(){return(0,Ke.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 OQ([...e.tidyInterProAnnotationTypes.keys()])},get strokePalette(){return ui(this.fillPalette,([t,r])=>[t,ut(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(()=>(zu(),zh)),n=await r(e,t),o=new Blob([n],{type:"image/svg+xml"});uv(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,Ke.clamp)(e.msaAreaHeight/e.numRows,1,80)),e.scrollY=0},fitHorizontally(){e.numColumns>0&&(e.colWidth=(0,Ke.clamp)(e.msaAreaWidth/e.numColumns,.2,80)),e.scrollX=0},afterCreate(){e.highlightColumns?.length&&e.setHighlightedColumns(e.highlightColumns),(0,ne.addDisposer)(e,(0,Ot.autorun)(()=>{for(let n of e.tidyInterProAnnotationTypes.keys())this.initFilter(n)}));let t=0;(0,ne.addDisposer)(e,(0,Ot.autorun)(async()=>{let{treeFilehandle:n}=e;if(n){let o=++t;try{e.setLoadingTree(!0);let i=await pa((0,ka.openLocation)(n),s=>{o===t&&e.setStatus(s)});o===t&&(0,Ot.transaction)(()=>{e.setTree(i),n.locationType==="BlobLocation"&&e.setTreeFilehandle(void 0)})}catch(i){o===t&&(zn(i)?e.setTreeFilehandle(void 0):(console.error(i),e.setError(i)))}finally{o===t&&e.setLoadingTree(!1)}}})),(0,ne.addDisposer)(e,(0,Ot.autorun)(async()=>{let{treeMetadataFilehandle:n}=e;if(n)try{e.setTreeMetadata(await pa((0,ka.openLocation)(n),o=>{e.setStatus(o)}))}catch(o){zn(o)||(console.error(o),e.setError(o))}})),(0,ne.addDisposer)(e,(0,Ot.autorun)(()=>{let n=e.data.gff;if(n)try{e.applyGFFText(n)}catch(o){console.error(o),e.setError(o)}})),(0,ne.addDisposer)(e,(0,Ot.autorun)(async()=>{let{gffFilehandle:n}=e;if(n)try{let o=await pa((0,ka.openLocation)(n),i=>{e.setStatus(i)});e.applyGFFText(o),n.locationType==="BlobLocation"&&e.setGFFFilehandle(void 0)}catch(o){zn(o)?e.setGFFFilehandle(void 0):(console.error(o),e.setError(o))}}));let r=0;(0,ne.addDisposer)(e,(0,Ot.autorun)(async()=>{let{msaFilehandle:n}=e;if(n){let o=++r;try{e.setLoadingMSA(!0),e.setError(void 0);let i=await pa((0,ka.openLocation)(n),s=>{o===r&&e.setStatus(s)});o===r&&(0,Ot.transaction)(()=>{e.setMSA(i),n.locationType==="BlobLocation"&&e.setMSAFilehandle(void 0)})}catch(i){o===r&&(zn(i)?e.setMSAFilehandle(void 0):(console.error(i),e.setError(i)))}finally{o===r&&e.setLoadingMSA(!1)}}})),(0,ne.addDisposer)(e,(0,Ot.autorun)(()=>{e.colorSchemeName.includes("dynamic")&&(e.colStats,e.colStatsSums),e.columns})),(0,ne.addDisposer)(e,(0,Ot.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:s,allowedGappyness:a,subFeatureRows:c,drawMsaLetters:l,height:A,rowHeight:u,scrollY:f,scrollX:d,colWidth:g,currentAlignment:E,collapsed:I,showOnly:x,turnedOffTracks:p,featureFilters:w,relativeTo:y,bgColor:S,colorSchemeName:Q,drawLabels:b,labelsAlignRight:k,treeAreaWidth:T,treeWidth:v,showBranchLen:M,drawTree:L,drawNodeBubbles:P,...V}=t,W=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:Ta,drawLabels:!0,labelsAlignRight:!1,treeAreaWidth:400,treeWidth:300,showBranchLen:!0,drawTree:!0,drawNodeBubbles:!0}).filter(([Z,Et])=>t[Z]!==Et).map(([Z])=>[Z,t[Z]]));return{...V,data:{...e.treeFilehandle?{}:{tree:r},...e.msaFilehandle?{}:{msa:n},...e.treeMetadataFilehandle?{}:{treeMetadata:o}},...W,...I?.length?{collapsed:I}:{},...x!==void 0?{showOnly:x}:{},...p&&Object.keys(p).length>0?{turnedOffTracks:p}:{},...w&&Object.keys(w).length>0?{featureFilters:w}:{},...y!==void 0?{relativeTo:y}:{}}})}var Ke,ka,qo,ne,Ot,hA,Mp=h(()=>{Ke=m(he(),1),ka=m(lp(),1),qo=m(SQ(),1),ne=m(Yt(),1);uc();Ot=m(Ir(),1);Fm();BQ();kQ();Dl();LQ();PQ();mA();GQ();Pl();HQ();ju();qQ();JQ();zQ();KQ();ZQ();nv();iv();cv();Av();Rn();fv();hA=c3});var _p,l3,A3,wv=h(()=>{_p=m(_(),1),l3=m(wQ(),1),A3=m(vf(),1);Mp();cp()});var Tp=h(()=>{zu();cp();wv();Mp()});function X3(e){let t=e;return t.type==="ProteinView"&&Array.isArray(t.structures)}function lo(e){return e.filter(X3)}function NA(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 Ua=h(()=>{"use strict"});var E2={};rt(E2,{default:()=>s5});var pe,RA,g2,ve,h2,C2,o5,i5,s5,x2=h(()=>{"use strict";pe=m(_()),RA=m(Ne()),g2=m(he()),ve=m(O()),h2=m(j()),C2=m(De());Ua();o5=(0,C2.makeStyles)()(e=>({formControl:{marginBottom:e.spacing(2)}})),i5=(0,h2.observer)(function({model:t,handleClose:r}){let{classes:n}=o5(),o=(0,g2.getSession)(t),[i,s]=(0,pe.useState)(""),[a,c]=(0,pe.useState)(0),[l,A]=(0,pe.useState)(t.querySeqName),[u,f]=(0,pe.useState)(),d=lo(o.views),E=d.find(p=>p.id===i)?.structures??[],I=t.rows.map(p=>p[0]),x=()=>{if(!i){f("Please select a protein view");return}try{t.connectToStructure(i,a,l),r()}catch(p){f(p instanceof Error?p.message:String(p))}};return pe.default.createElement(RA.Dialog,{maxWidth:"sm",title:"Connect to Protein Structure",open:!0,onClose:r},pe.default.createElement(ve.DialogContent,null,d.length===0?pe.default.createElement(ve.Typography,{color:"textSecondary"},"No protein views are currently open. Please open a protein structure view first."):pe.default.createElement(pe.default.Fragment,null,pe.default.createElement(ve.FormControl,{fullWidth:!0,className:n.formControl},pe.default.createElement(ve.InputLabel,null,"Protein View"),pe.default.createElement(ve.Select,{value:i,label:"Protein View",onChange:p=>{s(p.target.value),c(0)}},d.map(p=>pe.default.createElement(ve.MenuItem,{key:p.id,value:p.id},p.displayName??`ProteinView ${p.id}`)))),E.length>1?pe.default.createElement(ve.FormControl,{fullWidth:!0,className:n.formControl},pe.default.createElement(ve.InputLabel,null,"Structure"),pe.default.createElement(ve.Select,{value:a,label:"Structure",onChange:p=>{c(p.target.value)}},E.map((p,w)=>pe.default.createElement(ve.MenuItem,{key:w,value:w},p.url??`Structure ${w+1}`)))):null,pe.default.createElement(ve.FormControl,{fullWidth:!0,className:n.formControl},pe.default.createElement(ve.InputLabel,null,"MSA Row"),pe.default.createElement(ve.Select,{value:l,label:"MSA Row",onChange:p=>{A(p.target.value)}},I.map(p=>pe.default.createElement(ve.MenuItem,{key:p,value:p},p)))),u?pe.default.createElement(RA.ErrorMessage,{error:u}):null)),pe.default.createElement(ve.DialogActions,null,pe.default.createElement(ve.Button,{onClick:r},"Cancel"),pe.default.createElement(ve.Button,{onClick:x,variant:"contained",disabled:d.length===0||!i},"Connect")))}),s5=i5});var k2=q((Kz,T2)=>{T2.exports=JBrowseExports["@jbrowse/core/data_adapters/BaseAdapter"]});var L2={};rt(L2,{default:()=>PA});var D2,N2,PA,R2=h(()=>{"use strict";D2=m(ci()),N2=m(k2());xw();PA=class extends N2.BaseAdapter{async configurePre(){let t=this.getSubAdapter;if(t)return(await t({...(0,D2.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 jd(r.getFeaturesInMultipleRegions(o.map(i=>({refName:i,start:0,end:1e9,assemblyName:""}))).pipe(qd()))}}});var $2=q(z2=>{"use strict";var gs=_();function x5(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var I5=typeof Object.is=="function"?Object.is:x5,w5=gs.useState,y5=gs.useEffect,b5=gs.useLayoutEffect,S5=gs.useDebugValue;function B5(e,t){var r=t(),n=w5({inst:{value:r,getSnapshot:t}}),o=n[0].inst,i=n[1];return b5(function(){o.value=r,o.getSnapshot=t,zp(o)&&i({inst:o})},[e,r,t]),y5(function(){return zp(o)&&i({inst:o}),e(function(){zp(o)&&i({inst:o})})},[e]),S5(r),r}function zp(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!I5(e,r)}catch{return!0}}function Q5(e,t){return t()}var v5=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?Q5:B5;z2.useSyncExternalStore=gs.useSyncExternalStore!==void 0?gs.useSyncExternalStore:v5});var X2=q((m$,K2)=>{"use strict";K2.exports=$2()});function Ko(e){let{children:t,...r}=e;return mg.default.createElement(PM.Link,{...r,target:"_blank",rel:"noreferrer"},t," ",mg.default.createElement(Xc,{fontSize:"small"}))}var mg,PM,nu=h(()=>{"use strict";mg=m(_());qf();PM=m(O())});var u_=q((kX,A_)=>{A_.exports=JBrowseExports["@jbrowse/core/pluggableElementTypes/ViewType"]});var $a,f_,cu,d_=h(()=>{"use strict";$a=m(_()),f_=m(Ne()),cu=class extends $a.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?$a.default.createElement("div",{style:{padding:20}},$a.default.createElement(f_.ErrorMessage,{error:this.state.error})):this.props.children}}});function dP({baseUrl:e,rid:t}){return yg.default.createElement(m_.Typography,null,"RID ",t," (",yg.default.createElement(Ko,{href:`${e}?CMD=Get&RID=${t}`},"see status"),")")}var yg,m_,bg,p_=h(()=>{"use strict";yg=m(_()),m_=m(O());nu();bg=dP});function mP({baseUrl:e,rid:t,error:r}){return Er.default.createElement("div",null,t?Er.default.createElement(bg,{rid:t,baseUrl:e}):null,Er.default.createElement(lu.ErrorMessage,{error:r}))}function pP({baseUrl:e,rid:t,progress:r}){let{classes:n}=C_();return Er.default.createElement("div",{className:n.loading},t?Er.default.createElement(bg,{baseUrl:e,rid:t}):null,Er.default.createElement(Sg.Typography,null,r))}var Er,lu,Sg,g_,h_,C_,gP,E_,x_=h(()=>{"use strict";Er=m(_()),lu=m(Ne()),Sg=m(O()),g_=m(j()),h_=m(De());p_();C_=(0,h_.makeStyles)()(e=>({margin:{padding:20},loading:{background:e.palette.background.paper}}));gP=(0,g_.observer)(function({model:t,baseUrl:r}){let{progress:n,rid:o,error:i}=t,{classes:s}=C_();return Er.default.createElement("div",{className:s.margin},Er.default.createElement(lu.LoadingEllipses,{message:"Running NCBI BLAST",variant:"h5"}),i?Er.default.createElement(mP,{baseUrl:r,rid:o,error:i}):o?Er.default.createElement(pP,{baseUrl:r,rid:o,progress:n}):Er.default.createElement(Sg.Typography,null,n||"Initializing BLAST query"))}),E_=gP});var b_={};rt(b_,{default:()=>EP});var Xo,I_,w_,y_,hP,CP,EP,S_=h(()=>{"use strict";Xo=m(_()),I_=m(Ne()),w_=m(j());Tp();y_=m(De());d_();x_();hP=(0,y_.makeStyles)()({loadingContainer:{padding:20}}),CP=(0,w_.observer)(function({model:t}){let{classes:r}=hP(),{blastParams:n,loadingStoredData:o}=t;return Xo.default.createElement(cu,null,Xo.default.createElement("div",null,n?Xo.default.createElement(E_,{model:t,baseUrl:n.baseUrl}):o?Xo.default.createElement("div",{className:r.loadingContainer},Xo.default.createElement(I_.LoadingEllipses,{message:"Loading MSA data",variant:"h6"})):Xo.default.createElement(dA,{model:t})))}),EP=CP});var IP={};rt(IP,{default:()=>Au});var M_=m(Wg()),Qg=m(ci()),__=m(he()),vg=m(Yt());$();var th=m(U(),1),rh=(0,F.createSvgIcon)((0,th.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 v2=m(_()),M2=m(he());var ja=m(_()),B2=m(j());var Op=m(_()),y2=m(he()),Gp=m(j());var ah=m(De());function po(e){return!!e&&typeof e=="object"&&"hoverPosition"in e&&!!e.hoverPosition}function oc({assemblyManager:e,assemblyNames:t,refName:r}){let n=t?.[0];return n?e.get(n)?.getCanonicalRefName(r)??r:r}function sh(e){return/AF-([A-Z0-9]+)-F\d+/.exec(e)?.[1]}var ic=(0,ah.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 I2=m(_()),w2=m(bu()),ds=m(he()),Xe=m(Yt());function lh(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={},s={},a={};if(o.length!==0){let l=(3-(o[0]?.phase??0))%3,A=-1;for(let u of o){let f=u.end-u.start;for(let d=0;d<f;d++){let g=t===1?u.start+d:u.end-1-d,E=Math.floor(l++/3);i[g]=E,E!==A?(s[E]=g,a[E]=[g],A=E):a[E].push(g)}}}return{g2p:i,p2g:s,p2gCodon:a,refName:r,strand:t}}var FA=m(Ir());Tp();var Fp=m(he());function yv(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 bv(e){return e.replaceAll("-","")}var EA=m(he());function pr(e){return(0,EA.getContainingView)(e)}function Sv(e){return[...new Set(e.filter(t=>!!t))]}function Bv(e,t){return t.filter(r=>!!r).join(e)}function u3(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 CA(e){let t=(0,EA.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 Vo(e){return e?.id()??""}function f3(e){return e?Sv([e.id(),e.get("name"),e.get("id"),e.get("transcript_id")]):[]}function Da(e,t){return f3(e).includes(t)}function xA(e){return e?Bv(" ",[e.get("name"),e.get("id")]):""}function Jo(e){return e?Bv(" ",[e.get("gene_name")??e.get("name"),e.get("id")?`(${e.get("id")})`:void 0]):""}function IA(e,t){return`BLAST - ${Jo(e)} - ${xA(t)}`}function Qv(e){return u3(e).toSorted((r,n)=>CA(n).len-CA(r).len)}function wA(e){return e.replaceAll("*","").replaceAll("&","")}function yA(e){return Sv([e.id(),e.get("id"),e.get("name"),e.get("gene_id"),e.get("gene_name")])}Yi();var d3="jbrowse-msaview-blast-cache",so="blast-results",m3=2;async function bA(){return In(d3,m3,{upgrade(e,t){t<2&&e.objectStoreNames.contains(so)&&e.deleteObjectStore(so),e.objectStoreNames.contains(so)||e.createObjectStore(so,{keyPath:"id"})}})}function p3(e,t,r,n){let o=n?`:${n}`:"";return`${t}:${r}${o}:${e}`}async function vv({proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:s,rid:a,geneId:c,transcriptId:l,transcriptName:A,geneName:u}){let f=await bA(),g={id:p3(e,t,r,l),proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:s,rid:a,timestamp:Date.now(),geneId:c,transcriptId:l,transcriptName:A,geneName:u};return await f.put(so,g),g}async function Mv(){return(await(await bA()).getAll(so)).toSorted((r,n)=>n.timestamp-r.timestamp)}async function _v(e){await(await bA()).delete(so,e)}async function Tv(){await(await bA()).clear(so)}async function kv(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 nn(e,t){return(await kv(e,t)).text()}async function Dv(e,t){return(await kv(e,t)).json()}function Nv(e){return new Promise(t=>setTimeout(t,e))}async function SA({check:e,intervalSeconds:t,onCountdown:r}){for(;;){if(await e())return;for(let n=t;n>0;n--)r(n),await Nv(1e3)}}var QA="https://www.ebi.ac.uk/Tools/services/rest",BA="colin.diesh@gmail.com",g3={clustalo:{params:{email:BA},msaResult:"aln-clustal_num",treeResult:"phylotree"},muscle:{params:{email:BA,format:"clw",tree:"tree1"},msaResult:"fa",treeResult:"phylotree"},kalign:{params:{email:BA,stype:"protein"},msaResult:"fa",treeResult:"phylotree"},mafft:{params:{email:BA,stype:"protein"},msaResult:"fa",treeResult:"phylotree"}};async function h3({onProgress:e,jobId:t,algorithm:r}){await SA({intervalSeconds:10,onCountdown:n=>{e(`Re-checking MSA status in... ${n}`)},check:async()=>{let n=await nn(`${QA}/${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 Lv({algorithm:e,sequence:t,onProgress:r}){let n=g3[e];r(`Launching ${e} MSA...`);let o=await nn(`${QA}/${e}/run`,{method:"POST",body:new URLSearchParams({...n.params,sequence:t})});return await h3({jobId:o,algorithm:e,onProgress:r}),{msa:await nn(`${QA}/${e}/result/${o}/${n.msaResult}`),tree:await nn(`${QA}/${e}/result/${o}/${n.treeResult}`)}}async function kp({rid:e,baseUrl:t,onProgress:r}){r(`Checking BLAST status for RID: ${e}...`),await E3({rid:e,onProgress:r,baseUrl:t});let n=await Dv(`${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 Rv({query:e,blastDatabase:t,blastProgram:r,baseUrl:n,onProgress:o,onRid:i}){o("Submitting to NCBI BLAST...");let{rid:s}=await C3({query:e,blastDatabase:t,blastProgram:r,baseUrl:n});return i(s),kp({rid:s,baseUrl:n,onProgress:o})}async function C3({query:e,blastProgram:t,blastDatabase:r,baseUrl:n}){let o=await nn(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],s=/^ {4}RTOE = (.*$)/m.exec(o)?.[1];if(!i)throw new Error("Failed to get RID from BLAST request");return{rid:i,rtoe:s}}async function E3({rid:e,onProgress:t,baseUrl:r}){await SA({intervalSeconds:20,onCountdown:n=>{t(`Re-checking BLAST status in... ${n}`)},check:async()=>{let n=await nn(`${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"}`)}})}Yi();var x3="jbrowse-plugin-msaview",I3="colin.diesh@gmail.com",w3="https://eutils.ncbi.nlm.nih.gov/entrez/eutils";function vA(e){let t=new URLSearchParams({...e,tool:x3,email:I3});return`${w3}/efetch.fcgi?${t.toString()}`}var y3="jbrowse-msaview-taxonomy-cache",Na="common-names",b3=2;async function Fv(){return In(y3,b3,{upgrade(e){e.objectStoreNames.contains(Na)&&e.deleteObjectStore(Na),e.createObjectStore(Na,{keyPath:"taxid"})}})}async function S3(e){let r=(await Fv()).transaction(Na,"readonly"),n=await Promise.all(e.map(o=>r.store.get(o)));return await r.done,n}async function B3(e){let r=(await Fv()).transaction(Na,"readwrite");for(let n of e)await r.store.put(n);await r.done}async function Pv(e){let t=new Map,r=[],n=await S3(e);for(let s=0;s<e.length;s++){let a=e[s],c=n[s];c?t.set(a,{sciname:c.sciname,commonName:c.commonName}):r.push(a)}if(r.length===0)return t;let o=100,i=[];for(let s=0;s<r.length;s+=o){let a=r.slice(s,s+o),c=a.join(",");try{let A=await(await fetch(vA({db:"taxonomy",id:c,retmode:"xml"}))).text(),u=new Map,f=/<Taxon>\s*<TaxId>(\d+)<\/TaxId>/g,d;for(;(d=f.exec(A))!==null;){let g=Number(d[1]),E=d.index,I=1,x=E+d[0].length;for(;I>0&&x<A.length;){let Q=A.indexOf("<Taxon>",x),b=A.indexOf("</Taxon>",x);if(b===-1)break;Q!==-1&&Q<b?(I++,x=Q+7):(I--,x=b+8)}let p=A.slice(E,x),w=u.get(g),y=p.includes("<LineageEx>"),S=w?.includes("<LineageEx>");(!w||y&&!S)&&u.set(g,p)}for(let g of a){let E=u.get(g);if(E){let I=/<GenbankCommonName>(.*?)<\/GenbankCommonName>/.exec(E),x=/<CommonName>(.*?)<\/CommonName>/.exec(E),p=/<ScientificName>(.*?)<\/ScientificName>/.exec(E),w=I?.[1]??x?.[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 B3(i),t}async function Ov({self:e}){let{baseUrl:t,blastDatabase:r,blastProgram:n,msaAlgorithm:o,proteinSequence:i,selectedTranscript:s,rid:a}=e.blastParams,c=wA(i),l,A;if(a){e.setRid(a);let x=await kp({rid:a,baseUrl:t,onProgress:p=>{e.setProgress(p)}});l=x.hits,A=x.rid}else{let x=await Rv({query:c,blastDatabase:r,blastProgram:n,baseUrl:t,onProgress:p=>{e.setProgress(p)},onRid:p=>{e.setRid(p)}});l=x.hits,A=x.rid}e.setProgress("Fetching species taxonomy info...");let u=l.map(x=>x.description[0]?.taxid).filter(x=>x!==void 0),f=await Pv(u),d={},g=l.map(x=>{let p=x.description[0]??{accession:"unknown",id:"unknown",sciname:"unknown"},w=yv(p,f),y=bv(x.hsps[0]?.hseq??"");return d[w]=Q3(p,f),`>${w}
|
|
70
|
+
${y}`}),E=await Lv({algorithm:o,sequence:[`>QUERY
|
|
71
|
+
${c}`,...g].join(`
|
|
72
|
+
`),onProgress:x=>{e.setProgress(x)}}),I=JSON.stringify(d);return await vv({proteinSequence:c,blastDatabase:r,blastProgram:n,msaAlgorithm:o,msa:E.msa,tree:E.tree,treeMetadata:I,rid:A,geneId:s?.get("parentId"),transcriptId:s?.id(),transcriptName:s?.get("name")??s?.get("id"),geneName:s?.get("gene_name")??s?.get("parentId")}),{...E,treeMetadata:I}}function Q3(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}var Dp=class{},La=class{constructor(){this.signals=new Set,this.abortController=new AbortController}addSignal(t=new Dp){if(this.signal.aborted)throw new Error("cannot add a signal, already aborted!");this.signals.add(t),t.aborted?this.handleAborted(t):typeof t.addEventListener=="function"&&t.addEventListener("abort",()=>{this.handleAborted(t)})}handleAborted(t){this.signals.delete(t),this.signals.size===0&&this.abortController.abort()}get signal(){return this.abortController.signal}abort(){this.abortController.abort()}};var Ra=class{constructor(){this.callbacks=new Set}addCallback(t=()=>{}){this.callbacks.add(t),this.currentMessage&&t(this.currentMessage)}callback(t){this.currentMessage=t;for(let r of this.callbacks)r(t)}};var As=class e{constructor({fill:t,cache:r}){if(typeof t!="function")throw new TypeError("must pass a fill function");if(typeof r!="object")throw new TypeError("must pass a cache object");if(typeof r.get!="function"||typeof r.set!="function"||typeof r.delete!="function")throw new TypeError("cache must implement get(key), set(key, val), and and delete(key)");this.cache=r,this.fillCallback=t}static isAbortException(t){return t.name==="AbortError"||t.code==="ERR_ABORTED"||t.message==="AbortError: aborted"||t.message==="Error: aborted"}evict(t,r){this.cache.get(t)===r&&this.cache.delete(t)}fill(t,r,n,o){let i=new La,s=new Ra;s.addCallback(o);let a={aborter:i,promise:this.fillCallback(r,i.signal,c=>{s.callback(c)}),settled:!1,statusReporter:s,get aborted(){return this.aborter.signal.aborted}};a.aborter.addSignal(n),a.aborter.signal.addEventListener("abort",()=>{a.settled||this.evict(t,a)}),a.promise.then(()=>{a.settled=!0},()=>{a.settled=!0,this.evict(t,a)}).catch(c=>{throw console.error(c),c}),this.cache.set(t,a)}static checkSinglePromise(t,r){function n(){if(r?.aborted)throw Object.assign(new Error("aborted"),{code:"ERR_ABORTED"})}return t.then(o=>(n(),o),o=>{throw n(),o})}has(t){return this.cache.has(t)}get(t,r,n,o){if(!n&&r instanceof AbortSignal)throw new TypeError("second get argument appears to be an AbortSignal, perhaps you meant to pass `null` for the fill data?");let i=this.cache.get(t);return i?i.aborted&&!i.settled?(this.evict(t,i),this.get(t,r,n,o)):i.settled?i.promise:(i.aborter.addSignal(n),i.statusReporter.addCallback(o),e.checkSinglePromise(i.promise,n)):(this.fill(t,r,n,o),e.checkSinglePromise(this.cache.get(t).promise,n))}delete(t){let r=this.cache.get(t);r&&(r.settled||r.aborter.abort(),this.cache.delete(t))}clear(){let t=this.cache.keys(),r=0;for(let n=t.next();!n.done;n=t.next())this.delete(n.value),r+=1;return r}};ra();bd();async function Fa(e){return e.bytes?e.bytes():new Uint8Array(await e.arrayBuffer())}var v3=50;async function Np(e,t){let r=e.headers.get("content-length"),n=r?parseInt(r,10):void 0,o=e.body;if(!o||n===void 0){let l=await Fa(e);return t(l.byteLength,n??l.byteLength),l}let i=o.getReader(),s=new Uint8Array(n),a=0,c=0;t(0,n);for(let l=await i.read();!l.done;l=await i.read()){if(a+l.value.byteLength>s.length){let u=new Uint8Array(Math.max(a+l.value.byteLength,s.length*2));u.set(s.subarray(0,a)),s=u}s.set(l.value,a),a+=l.value.byteLength;let A=Date.now();A-c>=v3&&(c=A,t(a,n))}return t(a,n),a===s.length?s:s.subarray(0,a)}function M3(e){return(typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string"?e.message:`${e}`).replace(/\.$/,"")}var vn=class{url;_stat;fetchImplementation;baseHeaders;baseOverrides;constructor(t,r={}){this.url=t,this.baseHeaders=r.headers??{},this.baseOverrides=r.overrides??{},this.fetchImplementation=r.fetch??globalThis.fetch.bind(globalThis)}buildRequest(t,r){return{...this.baseOverrides,...t.overrides,headers:{...this.baseHeaders,...t.headers,...r},method:"GET",redirect:"follow",mode:"cors",signal:t.signal}}async fetch(t,r){let n=i=>new Error(`${M3(i)} fetching ${t}`,{cause:i}),o;try{o=await this.fetchImplementation(t,r)}catch(i){if(`${i}`.includes("Failed to fetch")){console.warn(`generic-filehandle: refetching ${t} to attempt to work around chrome CORS header caching bug`);try{o=await this.fetchImplementation(t,{...r,cache:"reload"})}catch(s){throw n(s)}}else throw n(i)}return o}async read(t,r,n={}){if(t===0)return new Uint8Array(0);if(Number.isNaN(t)||Number.isNaN(r))throw new TypeError(`read() called with NaN length or position (length=${t}, position=${r}). The index file may be corrupt.`);let o=await this.fetch(this.url,this.buildRequest(n,{range:`bytes=${r}-${r+t-1}`}));if(o.status===416)return new Uint8Array(0);if(!o.ok)throw new Error(`HTTP ${o.status} fetching ${this.url}`);if(o.status===200&&r===0||o.status===206){let i=o.headers.get("content-range"),s=/\/(\d+)$/.exec(i??"");s?.[1]&&(this._stat={size:parseInt(s[1],10)});let a=n.onProgress?await Np(o,n.onProgress):await Fa(o);return!this._stat&&o.status===200&&(this._stat={size:a.byteLength}),a.byteLength<=t?a:a.subarray(0,t)}throw new Error(o.status===200?`${this.url} fetch returned status 200, expected 206`:`HTTP ${o.status} fetching ${this.url}`)}async readFile(t={}){let r=typeof t=="string"?t:t.encoding,n=typeof t=="string"?{}:t,o=await this.fetch(this.url,this.buildRequest(n));if(!o.ok)throw new Error(`HTTP ${o.status} fetching ${this.url}`);if(r==="utf8")return o.text();if(r)throw new Error(`unsupported encoding: ${r}`);return n.onProgress?Np(o,n.onProgress):Fa(o)}async stat(){return this._stat||await this.read(10,0),this._stat??{size:0}}close(){return Promise.resolve()}};var Yo=class{readFile(){return Promise.reject(new Error("unimplemented"))}read(){return Promise.reject(new Error("unimplemented"))}stat(){return Promise.reject(new Error("unimplemented"))}close(){return Promise.reject(new Error("unimplemented"))}};ra();var Mn=class{minv;maxv;bin;endPosition;constructor(t,r,n,o=r.blockPosition+65536){this.minv=t,this.maxv=r,this.bin=n,this.endPosition=o}toString(){return`${this.minv.toString()}..${this.maxv.toString()} (bin ${this.bin}, fetchedSize ${this.fetchedSize()})`}fetchedSize(){return this.endPosition-this.minv.blockPosition}};var Wo=class{filehandle;parseP;constructor({filehandle:t}){this.filehandle=t}async lineCount(t,r={}){let n=await this.parse(r),o=n.refNameToId[t];return o===void 0?-1:n.indices(o)?.stats?.lineCount??-1}async getMetadata(t={}){let{indices:r,...n}=await this.parse(t);return n}async parse(t={}){return this.parseP??=this._parse(t).catch(r=>{throw this.parseP=void 0,r}),this.parseP}async hasRefSeq(t,r={}){return!!(await this.parse(r)).indices(t)?.binIndex}};bd();function Gv(e,t=0){let r=e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24;return((e[t+4]|e[t+5]<<8|e[t+6]<<16|e[t+7]<<24)>>>0)*4294967296+(r>>>0)}function us(e,t){let r=e.length;if(r===0)return e;let n;if(t){let a=t.blockPosition,c=t.dataPosition;n=[];for(let l=0;l<r;l++){let A=e[l];(A.maxv.blockPosition-a||A.maxv.dataPosition-c)>0&&n.push(A)}if(n.length===0)return n}else n=e;n.sort((a,c)=>{let l=a.minv.blockPosition-c.minv.blockPosition;return l===0?a.minv.dataPosition-c.minv.dataPosition:l});let o=[n[0]],i=n[0].minv.blockPosition,s=n[0].maxv.blockPosition;for(let a=1;a<n.length;a++){let c=n[a],l=c.minv.blockPosition,A=c.maxv.blockPosition;if(l-s<65e3&&A-i<5e6){let u=o.at(-1);(A-s||c.maxv.dataPosition-u.maxv.dataPosition)>0&&(o[o.length-1]=new Mn(u.minv,c.maxv,u.bin,c.endPosition),s=A)}else o.push(c),i=l,s=A}return o}function MA(e,t=[]){let r=[...t];for(let n of e)r.push(n.minv.blockPosition,n.maxv.blockPosition);r.sort((n,o)=>n-o);for(let n of e){let o=n.maxv.blockPosition,i=0,s=r.length;for(;i<s;){let a=i+s>>>1;r[a]>o?s=a:i=a+1}i<r.length&&(n.endPosition=Math.min(n.endPosition,r[i]))}}function Pa(e,t){return!e||e.compareTo(t)>0?t:e}function _3(e){let t=new TextDecoder("utf-8"),r=[],n={},o=0,i=0;for(;i<e.length;){let s=e.indexOf(0,i);if(s===-1)break;if(s>i){let a=t.decode(e.subarray(i,s));r[o]=a,n[a]=o}i=s+1,o++}return{refNameToId:n,refIdToName:r}}var T3={0:"generic",1:"SAM",2:"VCF"};function _A(e,t){let r=new DataView(e.buffer),n=r.getInt32(t,!0),o=n&65536?"zero-based-half-open":"1-based-closed",i=T3[n&15];if(!i)throw new Error(`invalid Tabix preset format flags ${n}`);let s={ref:r.getInt32(t+4,!0),start:r.getInt32(t+8,!0),end:r.getInt32(t+12,!0)},a=r.getInt32(t+16,!0),c=a?String.fromCharCode(a):void 0,l=r.getInt32(t+20,!0),A=r.getInt32(t+24,!0),{refIdToName:u,refNameToId:f}=_3(e.subarray(t+28,t+28+A));return{refIdToName:u,refNameToId:f,skipLines:l,metaChar:c,columnNumbers:s,format:i,coordinateType:o}}function TA(e,t){return{lineCount:Gv(e,t)}}function kA(e,t=5){let r=new ko({maxSize:t});return n=>{let o=r.get(n);if(o!==void 0)return o;let i=e(n);return i!==void 0&&r.set(n,i),i}}var Oa=class{blockPosition;dataPosition;constructor(t,r){this.blockPosition=t,this.dataPosition=r}toString(){return`${this.blockPosition}:${this.dataPosition}`}compareTo(t){return this.blockPosition-t.blockPosition||this.dataPosition-t.dataPosition}};function on(e,t=0){return new Oa(e[t+7]*1099511627776+e[t+6]*4294967296+e[t+5]*16777216+e[t+4]*65536+e[t+3]*256+e[t+2],e[t+1]<<8|e[t])}var k3=21582659,D3=38359875;function N3(e,t){return e*2**t}function Uv(e,t){return Math.floor(e/2**t)}var ao=class extends Wo{maxBinNumber;depth;minShift;constructor(t){super(t),this.maxBinNumber=0,this.depth=0,this.minShift=0}indexCov(){throw new Error("CSI indexes do not support indexcov")}async _parse(t={}){let r=await this.filehandle.readFile({signal:t.signal,onProgress:t.onProgress}),n=await xn(r),o=new DataView(n.buffer),i=o.getUint32(0,!0),s;if(i===k3)s=1;else if(i===D3)s=2;else throw new Error(`Not a CSI file (magic=${i})`);this.minShift=o.getInt32(4,!0),this.depth=o.getInt32(8,!0),this.maxBinNumber=((1<<(this.depth+1)*3)-1)/7;let a=this.maxBinNumber,c=2**(this.minShift+this.depth*3),l=o.getInt32(12,!0),A=l>=30?_A(n,16):{refIdToName:[],refNameToId:{},metaChar:void 0,columnNumbers:{ref:0,start:1,end:2},coordinateType:"zero-based-half-open",format:"generic"},u=o.getInt32(16+l,!0),f=16+l+4,d,g=[];for(let I=0;I<u;I++){g.push(f);let x=o.getInt32(f,!0);f+=4;for(let p=0;p<x;p++){let w=o.getUint32(f,!0);if(f+=4,w>a)f+=44;else{d=Pa(d,on(n,f)),f+=8;let y=o.getInt32(f,!0);f+=4+16*y}}}function E(I){let x=g[I];if(x===void 0)return;let p=x,w=o.getInt32(p,!0);p+=4;let y={},S;for(let Q=0;Q<w;Q++){let b=o.getUint32(p,!0);if(p+=4,b>a)S=TA(n,p+28),p+=44;else{p+=8;let k=o.getInt32(p,!0);p+=4;let T=Array.from({length:k});for(let v=0;v<k;v++)T[v]=new Mn(on(n,p),on(n,p+8),b),p+=16;y[b]=T}}return MA(Object.values(y).flat()),{binIndex:y,stats:S}}return{...A,csi:!0,refCount:u,maxBlockSize:65536,firstDataLine:d,csiVersion:s,indices:kA(E),depth:this.depth,maxBinNumber:a,maxRefLength:c}}async blocksForRange(t,r,n,o={}){r<0&&(r=0);let i=await this.parse(o),s=i.refNameToId[t];if(s===void 0)return[];let a=i.indices(s);if(!a)return[];let c=this.reg2bins(r,n),l=[];for(let[A,u]of c)for(let f=A;f<=u;f++){let d=a.binIndex[f];if(d)for(let g of d)l.push(g)}return us(l)}reg2bins(t,r){let n=2**(this.minShift+this.depth*3);r>n&&(r=n),r-=1;let o=0,i=0,s=this.minShift+this.depth*3,a=[];for(;o<=this.depth;s-=3,i+=N3(1,o*3),o+=1){let c=i+Uv(t,s),l=i+Uv(r,s);if(l-c+a.length>this.maxBinNumber)throw new Error(`query ${t}-${r} is too large for current binning scheme (shift ${this.minShift}, depth ${this.depth}), try a smaller query or a coarser index binning scheme`);a.push([c,l])}return a}};ra();var L3=21578324;function R3(e,t){return e+=1,t-=1,[[0,0],[1+(e>>26),1+(t>>26)],[9+(e>>23),9+(t>>23)],[73+(e>>20),73+(t>>20)],[585+(e>>17),585+(t>>17)],[4681+(e>>14),4681+(t>>14)]]}var sn=class extends Wo{async _parse(t={}){let r=await this.filehandle.readFile({signal:t.signal,onProgress:t.onProgress}),n=await xn(r),o=new DataView(n.buffer);if(o.getUint32(0,!0)!==L3)throw new Error("Not a TBI file");let i=o.getUint32(4,!0),s=5,a=((1<<(s+1)*3)-1)/7,c=2**(14+s*3),{refNameToId:l,refIdToName:A,coordinateType:u,format:f,columnNumbers:d,metaChar:g,skipLines:E}=_A(n,8),x=36+o.getInt32(32,!0),p,w=[];for(let S=0;S<i;S++){w.push(x);let Q=o.getInt32(x,!0);x+=4;for(let k=0;k<Q;k++){let T=o.getUint32(x,!0);x+=4;let v=o.getInt32(x,!0);if(x+=4,T>a+1)throw new Error("tabix index contains too many bins, please use a CSI index");if(T===a+1)x+=16*v;else for(let M=0;M<v;M++)p=Pa(p,on(n,x)),x+=16}let b=o.getInt32(x,!0);x+=4;for(let k=0;k<b;k++)p=Pa(p,on(n,x)),x+=8}function y(S){let Q=w[S];if(Q===void 0)return;let b=Q,k=o.getInt32(b,!0);b+=4;let T={},v;for(let P=0;P<k;P++){let V=o.getUint32(b,!0);if(b+=4,V>a+1)throw new Error("tabix index contains too many bins, please use a CSI index");if(V===a+1){let J=o.getInt32(b,!0);b+=4,J===2&&(v=TA(n,b+16)),b+=16*J}else{let J=o.getInt32(b,!0);b+=4;let W=Array.from({length:J});for(let Z=0;Z<J;Z++)W[Z]=new Mn(on(n,b),on(n,b+8),V),b+=16;T[V]=W}}let M=o.getInt32(b,!0);b+=4;let L=Array.from({length:M});for(let P=0;P<M;P++)L[P]=on(n,b),b+=8;return MA(Object.values(T).flat(),L.map(P=>P.blockPosition)),{binIndex:T,linearIndex:L,stats:v}}return{indices:kA(y),metaChar:g,maxBinNumber:a,maxRefLength:c,skipLines:E,firstDataLine:p,columnNumbers:d,coordinateType:u,format:f,refIdToName:A,refNameToId:l,maxBlockSize:65536}}async blocksForRange(t,r,n,o={}){r<0&&(r=0);let i=await this.parse(o),s=i.refNameToId[t];if(s===void 0)return[];let a=i.indices(s);if(!a)return[];let c=a.linearIndex??[];c.length>0&&r>=2**31&&console.warn("querying outside of possible tabix range");let l=R3(r,n),A=[];for(let[f,d]of l)for(let g=f;g<=d;g++){let E=a.binIndex[g];if(E)for(let I of E)A.push(I)}let u=c[Math.min(r>>14,c.length-1)];return us(A,u)}};var F3=9,Hv=10,P3=59;function O3(e,t,r){if(e)return e;if(t)return new Yo(t);if(r)return new vn(r);throw new TypeError("must provide either filehandle, path, or url")}function G3(e,t,r,n,o){return e[r]*256+(n-t[r])+o+1}function U3(e,t,r,n,o,i){let s=n-r,a=t+s;if(e[o]===46)return a;let c=o;for(let l=o;l<=i;l++)if(l===i||e[l]===P3){let A=l-c;if(A>=10&&e[c]===83&&e[c+1]===86&&e[c+2]===84&&e[c+3]===89&&e[c+4]===80&&e[c+5]===69&&e[c+6]===61&&e[c+7]===84&&e[c+8]===82&&e[c+9]===65)return t+1;A>=4&&e[c]===69&&e[c+1]===78&&e[c+2]===68&&e[c+3]===61&&(a=Lp(e,c+4,l)),c=l+1}return a}function Lp(e,t,r){let n=0;for(let o=t;o<r;o++){let i=e[o];if(i>=48&&i<=57)n=n*10+(i-48);else break}return n}var fs=class{filehandle;index;chunkCache;constructor({path:t,filehandle:r,url:n,tbiPath:o,tbiUrl:i,tbiFilehandle:s,csiPath:a,csiUrl:c,csiFilehandle:l,chunkCacheSize:A=5*2**20}){if(this.filehandle=O3(r,t,n),s)this.index=new sn({filehandle:s});else if(l)this.index=new ao({filehandle:l});else if(o)this.index=new sn({filehandle:new Yo(o)});else if(a)this.index=new ao({filehandle:new Yo(a)});else if(t)this.index=new sn({filehandle:new Yo(`${t}.tbi`)});else if(c)this.index=new ao({filehandle:new vn(c)});else if(i)this.index=new sn({filehandle:new vn(i)});else if(n)this.index=new sn({filehandle:new vn(`${n}.tbi`)});else throw new TypeError("must provide one of tbiFilehandle, tbiPath, csiFilehandle, csiPath, tbiUrl, csiUrl");this.chunkCache=new As({cache:new ko({maxSize:Math.floor(A/65536)}),fill:(u,f)=>this.readChunk(u,{signal:f})})}async bytesForRegions(t,r={}){let n=[];for(let{refName:i,start:s,end:a}of t){let c=await this.index.blocksForRange(i,s,a,r);for(let l of c)n.push(l)}let o=0;for(let i of us(n))o+=i.fetchedSize();return o}async getLines(t,r,n,o){let i,s={},a,c;typeof o=="function"?a=o:(s=o,a=o.lineCallback,i=o.signal,c=o.onProgress);let l=await this.index.getMetadata(s),A=r??0,u=n??l.maxRefLength;if(A>u)throw new TypeError("invalid start and end coordinates. start must be less than or equal to end");if(A===u)return;let f=await this.index.blocksForRange(t,A,u,s),d=l.format==="VCF",g=l.columnNumbers.ref||0,E=l.columnNumbers.start||0,I=d?8:l.columnNumbers.end||0,x=Math.max(g,E,I),p=l.metaChar?.charCodeAt(0),w=l.coordinateType==="1-based-closed"?-1:0,y=new TextEncoder,S=new TextDecoder,Q=y.encode(t),b=new Int32Array(x+1),k=0;for(let v of f)k+=v.fetchedSize();let T=0;c?.(0,k);for(let v of f){let{buffer:M,cpositions:L,dpositions:P}=await this.chunkCache.get(v.toString(),v,i);T+=v.fetchedSize(),c?.(T,k);let V=v.minv.dataPosition,J=0,W=0;for(;J<M.length;){let Z=M.indexOf(Hv,J);if(Z===-1)break;let Et=J+V;for(;W<P.length&&Et>=P[W];)W++;if(p!==void 0&&M[J]===p){J=Z+1;continue}b[0]=J-1;for(let et=0;et<x;et++){let Or=M.indexOf(F3,b[et]+1);if(Or===-1||Or>=Z){b[et+1]=Z;break}b[et+1]=Or}let Pr=b[g-1]+1,ee=b[g]-Pr;if(ee!==Q.length){J=Z+1;continue}let Gt=!0;for(let et=0;et<ee;et++)if(M[Pr+et]!==Q[et]){Gt=!1;break}if(!Gt){J=Z+1;continue}let Ut=Lp(M,b[E-1]+1,b[E])+w;if(Ut>=u)return;let or;if(I===0||I===E?or=Ut+1:d?or=U3(M,Ut,b[3]+1,b[4],b[I-1]+1,b[I]):or=Lp(M,b[I-1]+1,b[I]),or>A){let et=S.decode(M.subarray(J,Z));a(et,G3(L,P,W,J,V),Ut,or)}J=Z+1}}}async getMetadata(t={}){return this.index.getMetadata(t)}async getHeaderBuffer(t={}){let{firstDataLine:r,metaChar:n,maxBlockSize:o}=await this.getMetadata(t),i=(r?.blockPosition??0)+o,s=await this.filehandle.read(i,0,t),a=await xn(s);if(n){let c=-1,l=n.charCodeAt(0);for(let A=0,u=a.length;A<u;A++){let f=a[A];if(A===c+1&&f!==l)break;f===Hv&&(c=A)}return a.subarray(0,c+1)}return a}async getHeader(t={}){let r=await this.getHeaderBuffer(t);return new TextDecoder().decode(r)}async getReferenceSequenceNames(t={}){return(await this.getMetadata(t)).refIdToName}async lineCount(t,r={}){return this.index.lineCount(t,r)}async readChunk(t,r={}){let n=await this.filehandle.read(t.fetchedSize(),t.minv.blockPosition,r);return Cd(n,t)}};var jv=m(lp());async function qv({location:e,indexLocation:t,msaId:r,refName:n,start:o,end:i}){let s=A=>(0,jv.openLocation)({uri:A.uri,locationType:"UriLocation"}),a=new fs({filehandle:s(e),csiFilehandle:s(t??{uri:`${e.uri}.csi`})}),c=[];await a.getLines(n,o,i,{lineCallback:A=>{c.push(A)}});let l=c.find(A=>A.split(" ")[3]===r);return l?H3(l):void 0}function H3(e){return(e.split(" ")[4]??"").split(";").filter(Boolean).map(r=>{let n=r.indexOf(":");return`>${r.slice(0,n)}
|
|
73
|
+
${r.slice(n+1)}`}).join(`
|
|
74
|
+
`)}var Vv=m(he());function Jv({model:e}){let{hovered:t}=(0,Vv.getSession)(e),{querySeqName:r,transcriptToMsaMap:n,connectedView:o,mafRegion:i}=e;if(!o?.initialized||!po(t))return;let{coord:s,refName:a}=t.hoverPosition;if(i)return a!==i.refName||!o.assemblyNames.includes(i.assemblyName)||s<i.start||s>=i.end?void 0:e.seqPosToVisibleCol(r,s-i.start);if(n){let c=n.g2p[s];if(c!==void 0)return e.seqPosToVisibleCol(r,c)}}Yi();var j3="jbrowse-msaview-domain-cache",DA="domains",q3=1;async function Yv(){return In(j3,q3,{upgrade(e){e.objectStoreNames.contains(DA)||e.createObjectStore(DA,{keyPath:"accession"})}})}async function Wv(e){let r=(await Yv()).transaction(DA,"readonly"),n=await Promise.all(e.map(o=>r.store.get(o)));return await r.done,n}async function zv(e){let r=(await Yv()).transaction(DA,"readwrite");for(let n of e)await r.store.put(n);await r.done}function co(e,t){return new RegExp(`<${t}>(.*?)</${t}>`,"s").exec(e)?.[1]}function V3(e){let t={},r=/<GBQualifier>([\s\S]*?)<\/GBQualifier>/g,n;for(;(n=r.exec(e))!==null;){let o=co(n[1],"GBQualifier_name"),i=co(n[1],"GBQualifier_value");o&&i!==void 0&&t[o]===void 0&&(t[o]=i)}return t}function J3(e){let t=[],r=[],n=/<GBInterval>([\s\S]*?)<\/GBInterval>/g,o;for(;(o=n.exec(e))!==null;){let i=o[1],s=co(i,"GBInterval_from"),a=co(i,"GBInterval_to"),c=co(i,"GBInterval_point");s&&a?(t.push(Number(s)),r.push(Number(a))):c&&(t.push(Number(c)),r.push(Number(c)))}return t.length>0?{start:Math.min(...t),end:Math.max(...r)}:void 0}var Y3=2;function W3(e){let t=co(e,"GBFeature_key"),r=V3(e),n=r.db_xref,o=J3(e);if((t==="Region"||t==="Site")&&n?.startsWith("CDD:")&&o&&o.end-o.start+1>=Y3){let i=n.replace("CDD:",""),s=t==="Region",a=r.note?.split(/[[(]/)[0]?.trim(),c=s?r.region_name??i:a||r.site_type||"site",l=s?i:`${i}:${c}`;return{signature:{entry:{name:c,description:r.note??c,accession:l}},locations:[o]}}}function z3(e){let t=new Map,r=/<GBSeq>([\s\S]*?)<\/GBSeq>/g,n;for(;(n=r.exec(e))!==null;){let o=n[1],i=[],s=/<GBFeature>([\s\S]*?)<\/GBFeature>/g,a;for(;(a=s.exec(o))!==null;){let c=W3(a[1]);c&&i.push(c)}for(let c of[co(o,"GBSeq_accession-version"),co(o,"GBSeq_primary-accession")])c&&t.set(c,i)}return t}async function $v(e){let t=[...new Set(e)].filter(Boolean),r=new Map,n=await Wv(t),o=[];t.forEach((a,c)=>{let l=n[c];l?r.set(a,l.matches):o.push(a)});let i=[],s=100;for(let a=0;a<o.length;a+=s){let c=o.slice(a,a+s),l=await nn(vA({db:"protein",id:c.join(","),rettype:"gp",retmode:"xml"})),A=z3(l);for(let u of c){let f=A.get(u)??[];r.set(u,f),i.push({accession:u,matches:f})}}return i.length>0&&await zv(i),r}async function Kv(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(([s,a])=>({rowName:s,accession:a.Accession})).filter(s=>!!s.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 $v(n.map(s=>s.accession)),i={};for(let{rowName:s,accession:a}of n){let c=o.get(a);c&&c.length>0&&(i[s]={matches:c,xref:[{id:s}]})}if(Object.keys(i).length===0)throw new Error("No CDD domain annotations found for these proteins");e.setDomains(i)}Yi();var $3="jbrowse-msaview-data",K3=1,Ga="msa-data";async function Rp(){return In($3,K3,{upgrade(e){e.objectStoreNames.contains(Ga)||e.createObjectStore(Ga,{keyPath:"id"}).createIndex("timestamp","timestamp",{unique:!1})}})}function Xv(){return`msa-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}async function Zv(e,t){try{let r=await Rp(),n={id:e,msa:t.msa,tree:t.tree,treeMetadata:t.treeMetadata,timestamp:Date.now()};return await r.put(Ga,n),!0}catch(r){return console.warn("Failed to store MSA data:",r),!1}}async function e2(e){try{let r=await(await Rp()).get(Ga,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 t2(e=10080*60*1e3){try{let t=await Rp(),r=Date.now()-e,i=await t.transaction(Ga,"readwrite").store.index("timestamp").openCursor(IDBKeyRange.upperBound(r)),s=0;for(;i;)await i.delete(),s++,i=await i.continue();return s}catch(t){return console.warn("Failed to cleanup old MSA data:",t),0}}Ua();function r2(e){let{dataStoreId:t,rows:r}=e;t&&r.length===0&&(async()=>{try{e.setLoadingStoredData(!0);let n=await e2(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 n2(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 s=Xv();await Zv(s,{msa:o,tree:i,treeMetadata:e.data.treeMetadata})&&e.setDataStoreId(s)}catch(s){console.error("Failed to store MSA data to IndexedDB:",s)}finally{e.setIsStoringData(!1)}})())}}function o2(e){e.blastParams&&(async()=>{try{e.setProgress("Submitting query"),e.setError(void 0);let t=await Ov({self:e});e.setData(t),e.setBlastParams(void 0)}catch(t){e.setError(t),console.error(t)}finally{e.setProgress("")}})()}function i2(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 Kv(e)}catch(i){console.error("[msaview-domains] auto-load failed:",i)}finally{e.setProgress("")}})())}function s2(e){let{init:t}=e;t&&(async()=>{try{e.setError(void 0);let{msaData:r,msaUrl:n,msaTabixLocation:o,msaIndexLocation:i,msaId:s,treeData:a,treeUrl:c,querySeqName:l}=t;if(n){let A=sh(n);A&&(e.setUniprotId(A),e.setQuerySeqName("query"))}if(l&&e.setQuerySeqName(l),r)e.setMSA(r);else if(n){let A=await fetch(n);if(!A.ok)throw new Error(`Failed to fetch MSA: ${A.status}`);let u=await A.text();e.setMSA(u)}else if(o){let A=e.connectedFeature;if(A){let u=await qv({location:o,indexLocation:i,msaId:s??String(A.name),refName:String(A.refName),start:Number(A.start),end:Number(A.end)});if(u)e.setMSA(u);else throw new Error(`No alignment for ${s??String(A.name)} in ${o.uri}`)}}if(a)e.setTree(a);else if(c){let A=await fetch(c);if(!A.ok)throw new Error(`Failed to fetch tree: ${A.status}`);let u=await A.text();e.setTree(u)}e.setInit(void 0)}catch(r){e.setError(r),console.error(r)}})()}function a2(e){let t=!1;return()=>{let r=Jv({model:e});r!==void 0?(e.setMousePos(r),t=!0):t&&(e.setMousePos(void 0),t=!1)}}function c2(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 s=NA(i,t);if(s===void 0){o.clearHighlightFromExternal?.();continue}let a=n.msaToStructure[s];a===void 0?o.clearHighlightFromExternal?.():o.highlightFromExternal?.(a)}}function l2(e){let{connectedViewId:t,uniprotId:r,rows:n,connectedStructures:o}=e;if(!(!r||n.length===0))for(let i of lo((0,Fp.getSession)(e).views))for(let s=0;s<i.structures.length;s++){let a=i.structures[s];if(!(!a||a.connectedViewId!==t||a.uniprotId!==r||o.some(l=>l.proteinViewId===i.id&&l.structureIdx===s))&&a.structureSequences?.[0])try{e.connectToStructure(i.id,s)}catch(l){console.error("Failed to auto-connect to ProteinView:",l)}}}function A2(e){let t=!1;return()=>{let{connectedViewId:r,transcriptToMsaMap:n,querySeqName:o}=e;if(!r||!n)return;let i=new Set;for(let a of lo((0,Fp.getSession)(e).views))for(let c of a.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 f=u.start;f<u.end;f++){let d=A[f];if(d!==void 0){let g=e.seqPosToGlobalCol(o,d);i.add(g)}}}let s=Array.from(i).map(a=>e.globalColToVisibleCol(a)).filter(a=>a!==void 0);s.length>0?(e.setHighlightedColumns(s),t=!0):t&&(e.setHighlightedColumns(e.highlightColumns?.length?e.highlightColumns:void 0),t=!1)}}function u2(){t2().catch(e=>{console.error("Failed to cleanup old MSA data:",e)})}Ua();function LA({model:e,coord:t}){let{querySeqName:r,transcriptToMsaMap:n,mafRegion:o}=e,i=e.rows.find(a=>a[0]===r)?.[1];if(!i)return;let s=NA(i,t);if(s!==void 0){if(o){let a=o.start+s;return a<o.end?{refName:o.refName,start:a,end:a+1}:void 0}if(n){let{refName:a,p2g:c}=n,l=c[s],A=c[s+1];return l!==void 0&&A!==void 0?{refName:a,start:Math.min(l,A),end:Math.max(l,A)}:void 0}}}var Z3={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}},f2=Z3;function d2(e,t){return f2[e.toUpperCase()]?.[t.toUpperCase()]??-4}var e5=-10,t5=-.5;function r5(e,t,r=e5,n=t5){let o=e.length,i=t.length,s=[],a=[],c=[];for(let p=0;p<=o;p++){s[p]=[],a[p]=[],c[p]=[];for(let w=0;w<=i;w++)s[p][w]=-1/0,a[p][w]=-1/0,c[p][w]=-1/0}s[0][0]=0;for(let p=1;p<=o;p++)a[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=d2(e[p-1],t[w-1]);s[p][w]=Math.max(s[p-1][w-1],a[p-1][w-1],c[p-1][w-1])+y,a[p][w]=Math.max(s[p-1][w]+r,a[p-1][w]+n),c[p][w]=Math.max(s[p][w-1]+r,c[p][w-1]+n)}let l="",A="",u=o,f=i,d=s[o][i],g=a[o][i],E=c[o][i],I=Math.max(d,g,E),x=I===d?"M":I===g?"Ix":"Iy";for(;u>0||f>0;)if(x==="M"&&u>0&&f>0){l=e[u-1]+l,A=t[f-1]+A;let p=d2(e[u-1],t[f-1]),w=s[u-1][f-1],y=a[u-1][f-1],S=s[u][f];S===w+p?x="M":S===y+p?x="Ix":x="Iy",u--,f--}else if(x==="Ix"&&u>0){l=e[u-1]+l,A="-"+A;let p=a[u][f],w=s[u-1][f]+r;x=p===w?"M":"Ix",u--}else if(f>0){l="-"+l,A=t[f-1]+A;let p=c[u][f],w=s[u][f-1]+r;x=p===w?"M":"Iy",f--}else break;return{alignedSeq1:l,alignedSeq2:A,score:I}}function n5(e,t){let r="";for(let n=0;n<e.length;n++){let o=e[n],i=t[n],s=o!=="-"&&i!=="-"&&o.toUpperCase()===i.toUpperCase();r+=s?"|":" "}return r}function m2(e,t){let{alignedSeq1:r,alignedSeq2:n}=r5(e,t);return{consensus:n5(r,n),alns:[{id:"msa",seq:r},{id:"structure",seq:n}]}}function p2(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,s=new Map;for(let a=0;a<t.length;a++){let c=t[a],l=r[a];c!=="-"&&l!=="-"?(i.set(n,o),s.set(o,n),n++,o++):c==="-"?o++:n++}return{seq1ToSeq2:i,seq2ToSeq1:s}}Ua();var a5=(0,I2.lazy)(()=>Promise.resolve().then(()=>(x2(),E2)));function Pp(){return Xe.types.compose(w2.BaseViewModel,hA(),Xe.types.model("MsaView",{connectedViewId:Xe.types.maybe(Xe.types.string),connectedFeature:Xe.types.frozen(),blastParams:Xe.types.frozen(),querySeqName:"QUERY",uniprotId:Xe.types.maybe(Xe.types.string),zoomToBaseLevel:!1,init:Xe.types.frozen(),connectedStructures:Xe.types.array(Xe.types.frozen()),dataStoreId:Xe.types.maybe(Xe.types.string),mafRegion:Xe.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?lh(e.connectedFeature):void 0},get connectedView(){let{views:t}=(0,ds.getSession)(e);return t.find(r=>r.id===e.connectedViewId)},get connectedProteinViews(){let t=lo((0,ds.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:LA({model:e,coord:t}),r===void 0?void 0:LA({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,ds.getSession)(e),i=LA({model:e,coord:t});if(!(!i||!r))if(n)r.navTo(i);else{let s=oc({assemblyManager:o,assemblyNames:r.assemblyNames,refName:i.refName});r.centerAt(i.start,s)}},connectToStructure(t,r,n){let o=n??e.querySeqName,i=e.getSequenceByRowName(o);if(!i)throw new Error(`MSA row "${o}" not found`);let s=i.replaceAll("-",""),a=lo((0,ds.getSession)(e).views).find(d=>d.id===t);if(!a)throw new Error(`ProteinView "${t}" not found`);let c=a.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=m2(s,l),{seq1ToSeq2:u}=p2(A),f={proteinViewId:t,structureIdx:r,msaRowName:o,msaToStructure:Object.fromEntries(u)};e.connectedStructures.push(f)},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,ds.getSession)(e).queueDialog(t=>[a5,{model:e,handleClose:t}])}},...e.connectedStructures.length>0?[{label:"Disconnect from protein structures",onClick:()=>{e.disconnectAllStructures()}}]:[]]}})).actions(e=>({afterCreate(){u2();for(let t of[r2,n2,o2,s2,c2,l2,i2])(0,Xe.addDisposer)(e,(0,FA.autorun)(()=>{t(e)}));(0,Xe.addDisposer)(e,(0,FA.autorun)(a2(e))),(0,Xe.addDisposer)(e,(0,FA.autorun)(A2(e)))}}))}function ms(e){return e.type==="MsaView"}var c5=(0,Gp.observer)(function({model:e}){let{hovered:t,views:r}=(0,y2.getSession)(e);return r.some(o=>ms(o)&&o.connectedViewId===e.id)&&po(t)?Op.default.createElement(l5,{model:e,hovered:t}):null}),l5=(0,Gp.observer)(function({model:e,hovered:t}){let{classes:r}=ic(),{offsetPx:n}=e,{coord:o,refName:i}=t.hoverPosition,s=e.bpToPx({refName:i,coord:o-1}),a=e.bpToPx({refName:i,coord:o});if(s&&a){let c=Math.max(Math.abs(a.offsetPx-s.offsetPx),4),l=Math.min(s.offsetPx,a.offsetPx)-n;return Op.default.createElement("div",{className:r.highlight,style:{left:l,width:c}})}return null}),b2=c5;var Ha=m(_()),Up=m(he()),Hp=m(j());var A5=(0,Hp.observer)(function({model:t}){let{views:r,hovered:n}=(0,Up.getSession)(t),i=r.filter(ms).find(s=>s.connectedViewId===t.id)?.connectedHighlights;return!po(n)&&i?.length?Ha.default.createElement(u5,{model:t,highlights:i}):null}),u5=(0,Hp.observer)(function({model:e,highlights:t}){let{classes:r}=ic(),{assemblyManager:n}=(0,Up.getSession)(e),{offsetPx:o}=e;return Ha.default.createElement(Ha.default.Fragment,null,t.map((i,s)=>{let a=oc({assemblyManager:n,assemblyNames:e.assemblyNames,refName:i.refName}),c=e.bpToPx({refName:a,coord:i.start}),l=e.bpToPx({refName:a,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 Ha.default.createElement("div",{key:`${i.refName}-${i.start}-${i.end}-${s}`,className:r.highlight,style:{left:u,width:A}})}return null}))}),S2=A5;var f5=(0,B2.observer)(function({model:t}){return ja.default.createElement(ja.default.Fragment,null,ja.default.createElement(S2,{model:t}),ja.default.createElement(b2,{model:t}))}),Q2=f5;function jp(e){e.addToExtensionPoint("LinearGenomeView-TracksContainerComponent",(t,{model:r})=>{let{views:n}=(0,M2.getSession)(r);return n.some(i=>ms(i)&&i.connectedViewId===r.id)?[...t,v2.default.createElement(Q2,{key:"highlight_protein_viewer_msaview",model:r})]:t})}var F2=m(bu());var _2=m(ci());function qp(e){let t=e.getAdapterType("BgzipFastaAdapter");return(0,_2.ConfigurationSchema)("BgzipFastaMsaAdapter",{msaRegex:{type:"string",defaultValue:"_"}},{baseConfiguration:t?.configSchema})}function Vp(e){return e.addAdapterType(()=>new F2.AdapterType({name:"BgzipFastaMsaAdapter",configSchema:qp(e),adapterMetadata:{hiddenFromGUI:!0},getAdapterClass:()=>Promise.resolve().then(()=>(R2(),L2)).then(t=>t.default)}))}var au=m(he());$();var P2=m(U(),1),O2=(0,F.createSvgIcon)((0,P2.jsx)("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6z"}),"Add");var qt=m(_()),c_=m(Ne()),l_=m(he()),ws=m(O());var ce=m(_()),ug=m(Ne()),EM=m(he()),gr=m(O()),xM=m(j()),IM=m(De());function G2({session:e,newViewTitle:t,view:r,feature:n,msaFilehandle:o,treeFilehandle:i,querySeqName:s,data:a}){e.addView("MsaView",{type:"MsaView",displayName:t,connectedViewId:r.id,connectedFeature:n.toJSON(),msaFilehandle:o,treeFilehandle:i,querySeqName:s,data:a})}var Jp=m(_()),U2=m(O());function d5({children:e,...t}){return Jp.default.createElement("div",null,Jp.default.createElement(U2.TextField,{...t},e))}var ht=d5;var Yp=m(_()),H2=m(Ne()),j2=m(O()),q2=m(De()),m5=(0,q2.makeStyles)()({dialogContent:{width:"80em"}});function _r({error:e,children:t}){let{classes:r}=m5();return Yp.default.createElement(j2.DialogContent,{className:r.dialogContent},e?Yp.default.createElement(H2.ErrorMessage,{error:e}):null,t)}var OA=m(_()),qa=m(O());function _n({onSubmit:e,onCancel:t,submitDisabled:r,submitLabel:n="Submit",cancelLabel:o="Cancel"}){return OA.default.createElement(qa.DialogActions,null,OA.default.createElement(qa.Button,{color:"primary",variant:"contained",disabled:r,onClick:()=>{e()}},n),OA.default.createElement(qa.Button,{color:"secondary",variant:"contained",onClick:()=>{t()}},o))}var Tr=m(_()),ps=m(O()),Y2=m(De());var V2=m(_()),J2=m(De());var p5=(0,J2.makeStyles)()({textAreaFont:{fontFamily:"Courier New"}});function Wp({value:e}){let{classes:t}=p5();return V2.default.createElement(ht,{variant:"outlined",multiline:!0,minRows:5,maxRows:10,fullWidth:!0,value:e,slotProps:{input:{readOnly:!0,classes:{input:t.textAreaFont}}}})}var g5=(0,Y2.makeStyles)()({flex:{display:"flex"},minWidth:{minWidth:300},centered:{alignContent:"center",marginLeft:20}});function kr({feature:e,options:t,selectedId:r,selectedTranscript:n,setSelectedId:o,proteinSequence:i,validIds:s}){let{classes:a}=g5(),[c,l]=(0,Tr.useState)(!1);return Tr.default.createElement(Tr.default.Fragment,null,Tr.default.createElement("div",{className:a.flex},Tr.default.createElement(ps.TextField,{variant:"outlined",label:`Choose isoform of ${Jo(e)}`,select:!0,className:a.minWidth,value:r,onChange:A=>{o(A.target.value)}},t.map(A=>{let u=s?s.some(g=>Da(A,g)):!0,{len:f,mod:d}=CA(A);return Tr.default.createElement(ps.MenuItem,{value:Vo(A),key:A.id(),disabled:!u},xA(A)," (",f," aa)"," ",d?" (possible fragment)":"",s?u?" (has data)":" (no data)":"")})),Tr.default.createElement("div",{className:a.centered},Tr.default.createElement(ps.Button,{variant:"contained",color:"primary",onClick:()=>{l(!c)}},c?"Hide sequence":"Show sequence"))),c?Tr.default.createElement(Wp,{value:i?`>${xA(n)}
|
|
75
|
+
${i}`:"Loading..."}):null)}var ZA=m(_());var Ao=m(he());function h5(e,t){return e.map(r=>t.slice(r.start,r.end)).join("")}function C5({cds:e,sequence:t,codonTable:r}){let n=h5(e,t),o="";for(let i=0;i<n.length;i+=3)o+=r[n.slice(i,i+3)]??"&";return o}function E5(e,t){return e.map(r=>({...r,start:t-r.end,end:t-r.start})).toSorted((r,n)=>r.start-n.start)}function W2({feature:e,seq:t}){let{subfeatures:r,start:n,strand:o}=e.toJSON(),i=(0,Ao.dedupe)(r?.toSorted((s,a)=>s.start-a.start).map(s=>({...s,start:s.start-n,end:s.end-n})).filter(s=>s.type==="CDS")??[],s=>`${s.start}-${s.end}`);return C5({cds:o===-1?E5(i,t.length):i,sequence:o===-1?(0,Ao.revcom)(t):t,codonTable:(0,Ao.generateCodonTable)(Ao.defaultCodonTable)})}var gM=m(he());var Ze=m(_(),1),Ag=m(X2(),1);var Ct=m(_(),1);var uo={};rt(uo,{ERROR_REVALIDATE_EVENT:()=>M5,FOCUS_EVENT:()=>Z2,MUTATE_EVENT:()=>tM,RECONNECT_EVENT:()=>eM});var Z2=0,eM=1,tM=2,M5=3;var rM=Object.prototype.hasOwnProperty;function GA(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--&&GA(e[n],t[n]););return n===-1}if(!r||typeof e=="object"){n=0;for(r in e)if(rM.call(e,r)&&++n&&!rM.call(t,r)||!(r in t)||!GA(e[r],t[r]))return!1;return Object.keys(t).length===n}}return e!==e&&t!==t}var Dr=new WeakMap,Nr=()=>{},We=Nr(),hs=Object,z=e=>e===We,tr=e=>typeof e=="function",Lr=(e,t)=>({...e,...t}),JA=e=>tr(e.then),$p={},UA={},ng="undefined",Cs=typeof window!=ng,jA=typeof document!=ng,oM=Cs&&"Deno"in window,iM=()=>Cs&&typeof window.requestAnimationFrame!=ng,YA=(e,t)=>{let r=Dr.get(e);return[()=>!z(t)&&e.get(t)||$p,n=>{if(!z(t)){let o=e.get(t);t in UA||(UA[t]=o),r[5](t,Lr(o,n),o||$p)}},r[6],()=>!z(t)&&t in UA?UA[t]:!z(t)&&e.get(t)||$p]},Zp=!0,_5=()=>Zp,[eg,tg]=Cs&&window.addEventListener?[window.addEventListener.bind(window),window.removeEventListener.bind(window)]:[Nr,Nr],T5=()=>{let e=jA&&document.visibilityState;return z(e)||e!=="hidden"},k5=e=>(jA&&document.addEventListener("visibilitychange",e),eg("focus",e),()=>{jA&&document.removeEventListener("visibilitychange",e),tg("focus",e)}),D5=e=>{let t=()=>{Zp=!0,e()},r=()=>{Zp=!1};return eg("online",t),eg("offline",r),()=>{tg("online",t),tg("offline",r)}},sM={isOnline:_5,isVisible:T5},aM={initFocus:k5,initReconnect:D5},WA=!Ct.default.useId,fo=!Cs||oM,og=e=>iM()?window.requestAnimationFrame(e):setTimeout(e,1),Es=fo?Ct.useEffect:Ct.useLayoutEffect,Kp=typeof navigator<"u"&&navigator.connection,rg=!fo&&Kp&&(["slow-2g","2g"].includes(Kp.effectiveType)||Kp.saveData),HA=new WeakMap,N5=e=>hs.prototype.toString.call(e),Xp=(e,t)=>e===`[object ${t}]`,L5=0,qA=e=>{let t=typeof e,r=N5(e),n=Xp(r,"Date"),o=Xp(r,"RegExp"),i=Xp(r,"Object"),s,a;if(hs(e)===e&&!n&&!o){if(s=HA.get(e),s)return s;if(s=++L5+"~",HA.set(e,s),Array.isArray(e)){for(s="@",a=0;a<e.length;a++)s+=qA(e[a])+",";HA.set(e,s)}if(i){s="#";let c=hs.keys(e).sort();for(;!z(a=c.pop());)z(e[a])||(s+=a+":"+qA(e[a])+",");HA.set(e,s)}}else s=n?e.toJSON():t=="symbol"?e.toString():t=="string"?JSON.stringify(e):""+e;return s},Ja=e=>{if(tr(e))try{e=e()}catch{e=""}let t=e;return e=typeof e=="string"?e:(Array.isArray(e)?e.length:e)?qA(e):"",[e,t]},R5=0,Va=()=>++R5;async function zA(...e){let[t,r,n,o]=e,i=Lr({populateCache:!0,throwOnError:!0},typeof o=="boolean"?{revalidate:o}:o||{}),s=i.populateCache,a=i.rollbackOnError,c=i.optimisticData,l=f=>typeof a=="function"?a(f):a!==!1,A=i.throwOnError;if(tr(r)){let f=r,d=[],g=t.keys();for(let E of g)!/^\$(inf|sub)\$/.test(E)&&f(t.get(E)._k)&&d.push(E);return Promise.all(d.map(u))}return u(r);async function u(f){let[d]=Ja(f);if(!d)return;let[g,E]=YA(t,d),[I,x,p,w]=Dr.get(t),y=()=>{let V=I[d];return(tr(i.revalidate)?i.revalidate(g().data,f):i.revalidate!==!1)&&(delete p[d],delete w[d],V&&V[0])?V[0](2).then(()=>g().data):g().data};if(e.length<3)return y();let S=n,Q,b=!1,k=Va();x[d]=[k,0];let T=!z(c),v=g(),M=v.data,L=v._c,P=z(L)?M:L;if(T&&(c=tr(c)?c(P,M):c,E({data:c,_c:P})),tr(S))try{S=S(P)}catch(V){Q=V,b=!0}if(S&&JA(S))if(S=await S.catch(V=>{Q=V,b=!0}),k!==x[d][0]){if(b)throw Q;return S}else b&&T&&l(Q)&&(s=!0,E({data:P,_c:We}));if(s&&!b)if(tr(s)){let V=s(S,P);E({data:V,error:We,_c:We})}else E({data:S,error:We,_c:We});if(x[d][1]=Va(),Promise.resolve(y()).then(()=>{E({_c:We})}),b){if(A)throw Q;return}return S}}var nM=(e,t)=>{for(let r in e)e[r][0]&&e[r][0](t)},ig=(e,t)=>{if(!Dr.has(e)){let r=Lr(aM,t),n=Object.create(null),o=zA.bind(We,e),i=Nr,s=Object.create(null),a=(A,u)=>{let f=s[A]||[];return s[A]=f,f.push(u),()=>{let d=f.indexOf(u);d>=0&&(f[d]=f[f.length-1],f.pop())}},c=(A,u,f)=>{e.set(A,u);let d=s[A];if(d)for(let g of d)g(u,f)},l=()=>{if(!Dr.has(e)&&(Dr.set(e,[n,Object.create(null),Object.create(null),Object.create(null),o,c,a]),!fo)){let A=r.initFocus(setTimeout.bind(We,nM.bind(We,n,0))),u=r.initReconnect(setTimeout.bind(We,nM.bind(We,n,1)));i=()=>{A&&A(),u&&u(),Dr.delete(e)}}};return l(),[e,o,l,i]}return[e,Dr.get(e)[4]]},F5=(e,t,r,n,o)=>{let i=r.errorRetryCount,s=o.retryCount,a=~~((Math.random()+.5)*(1<<(s<8?s:8)))*r.errorRetryInterval;!z(i)&&s>i||setTimeout(n,a,o)},cM=GA,[$A,lM]=ig(new Map),KA=Lr({onLoadingSlow:Nr,onSuccess:Nr,onError:Nr,onErrorRetry:F5,onDiscarded:Nr,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:rg?1e4:5e3,focusThrottleInterval:5*1e3,dedupingInterval:2*1e3,loadingTimeout:rg?5e3:3e3,compare:cM,isPaused:()=>!1,cache:$A,mutate:lM,fallback:{}},sM),sg=(e,t)=>{let r=Lr(e,t);if(t){let{use:n,fallback:o}=e,{use:i,fallback:s}=t;n&&i&&(r.use=n.concat(i)),o&&s&&(r.fallback=Lr(o,s))}return r},VA=(0,Ct.createContext)({}),ag=e=>{let{value:t}=e,r=(0,Ct.useContext)(VA),n=tr(t),o=(0,Ct.useMemo)(()=>n?t(r):t,[n,r,t]),i=(0,Ct.useMemo)(()=>n?o:sg(r,o),[n,r,o]),s=o&&o.provider,a=(0,Ct.useRef)(We);s&&!a.current&&(a.current=ig(s(i.cache||$A),o));let c=a.current;return c&&(i.cache=c[0],i.mutate=c[1]),Es(()=>{if(c)return c[2]&&c[2](),c[3]},[]),(0,Ct.createElement)(VA.Provider,Lr(e,{value:i}))};var AM="$inf$";var xs=m(_(),1);var uM=Cs&&window.__SWR_DEVTOOLS_USE__,P5=uM?window.__SWR_DEVTOOLS_USE__:[],O5=()=>{uM&&(window.__SWR_DEVTOOLS_REACT__=xs.default)},G5=e=>tr(e[1])?[e[0],e[1],e[2]||{}]:[e[0],null,(e[1]===null?e[2]:e[1])||{}],U5=()=>{let e=(0,xs.useContext)(VA);return(0,xs.useMemo)(()=>Lr(KA,e),[e])};var H5=e=>(t,r,n)=>e(t,r&&((...i)=>{let[s]=Ja(t),[,,,a]=Dr.get($A);if(s.startsWith(AM))return r(...i);let c=a[s];return z(c)?r(...i):(delete a[s],c)}),n),j5=P5.concat(H5),fM=e=>function(...r){let n=U5(),[o,i,s]=G5(r),a=sg(n,s),c=e,{use:l}=a,A=(l||[]).concat(j5);for(let u=A.length;u--;)c=A[u](c);return c(o,i||a.fetcher||null,a)},dM=(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())}};O5();var q5=()=>{},S$=q5();var cg=Ze.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}}),lg={dedupe:!0},XA=Promise.resolve(We);XA.status="fulfilled";XA.value=We;var V5=()=>Nr,J5=(e,t,r)=>{let{cache:n,compare:o,suspense:i,fallbackData:s,revalidateOnMount:a,revalidateIfStale:c,refreshInterval:l,refreshWhenHidden:A,refreshWhenOffline:u,keepPreviousData:f,strictServerPrefetchWarning:d}=r,[g,E,I,x]=Dr.get(n),[p,w]=Ja(e),y=(0,Ze.useRef)(!1),S=(0,Ze.useRef)(!1),Q=(0,Ze.useRef)(p),b=(0,Ze.useRef)(t),k=(0,Ze.useRef)(r),T=()=>k.current,v=()=>T().isVisible()&&T().isOnline(),[M,L,P,V]=YA(n,p),J=(0,Ze.useRef)({}).current,W=z(s)?z(r.fallback)?We:r.fallback[p]:s,Z=(le,se)=>{for(let _e in J){let be=_e;if(be==="data"){if(!o(le[be],se[be])&&(!z(le[be])||!o(Or,se[be])))return!1}else if(se[be]!==le[be])return!1}return!0},Et=!y.current,Pr=(0,Ze.useMemo)(()=>{let le=M(),se=V(),_e=fe=>{let At=Lr(fe);return delete At._k,(()=>{if(!p||!t||T().isPaused())return!1;if(Et&&!z(a))return a;let An=z(W)?At.data:W;return i?z(An)||c:z(An)||c})()?{isValidating:!0,isLoading:!0,...At}:At},be=_e(le),Vt=le===se?be:_e(se),vt=be;return[()=>{let fe=_e(M());return Z(fe,vt)?(vt.data=fe.data,vt.isLoading=fe.isLoading,vt.isValidating=fe.isValidating,vt.error=fe.error,vt):(vt=fe,fe)},()=>Vt]},[n,p]),nr=(0,Ag.useSyncExternalStore)((0,Ze.useCallback)(le=>P(p,(se,_e)=>{Z(_e,se)||le()}),[n,p]),Pr[0],Pr[1]),ee=g[p]&&g[p].length>0,Gt=nr.data,Ut=z(Gt)?W&&JA(W)?cg(W):W:Gt,or=nr.error,et=(0,Ze.useRef)(Ut),Or=f?z(Gt)?z(et.current)?Ut:et.current:Gt:Ut,ln=p&&z(Ut),kn=(0,Ze.useRef)(null);!fo&&(0,Ag.useSyncExternalStore)(V5,()=>(kn.current=!1,kn),()=>(kn.current=!0,kn));let uu=kn.current;d&&uu&&!i&&ln&&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 ys=!p||!t||T().isPaused()||ee&&!z(or)?!1:Et&&!z(a)?a:i?z(Ut)?!1:c:z(Ut)||c,we=Et&&ys,Ka=z(nr.isValidating)?we:nr.isValidating,Me=z(nr.isLoading)?we:nr.isLoading,Dn=(0,Ze.useCallback)(async le=>{let se=b.current;if(!p||!se||S.current||T().isPaused())return!1;let _e,be,Vt=!0,vt=le||{},fe=!I[p]||!vt.dedupe,At=()=>WA?!S.current&&p===Q.current&&y.current:p===Q.current,Jt={isValidating:!1,isLoading:!1},An=()=>{L(Jt)},ei=()=>{let xt=I[p];xt&&xt[1]===be&&delete I[p]},ti={isValidating:!0};z(M().data)&&(ti.isLoading=!0);try{if(fe&&(L(ti),r.loadingTimeout&&z(M().data)&&setTimeout(()=>{Vt&&At()&&T().onLoadingSlow(p,r)},r.loadingTimeout),I[p]=[se(w),Va()]),[_e,be]=I[p],_e=await _e,fe&&setTimeout(ei,r.dedupingInterval),!I[p]||I[p][1]!==be)return fe&&At()&&T().onDiscarded(p),!1;Jt.error=We;let xt=E[p];if(!z(xt)&&(be<=xt[0]||be<=xt[1]||xt[1]===0))return An(),fe&&At()&&T().onDiscarded(p),!1;let It=M().data;Jt.data=o(It,_e)?It:_e,fe&&At()&&T().onSuccess(_e,p,r)}catch(xt){ei();let It=T(),{shouldRetryOnError:Nn}=It;It.isPaused()||(Jt.error=xt,fe&&At()&&(It.onError(xt,p,It),(Nn===!0||tr(Nn)&&Nn(xt))&&(!T().revalidateOnFocus||!T().revalidateOnReconnect||v())&&It.onErrorRetry(xt,p,It,ri=>{let ni=g[p];ni&&ni[0]&&ni[0](uo.ERROR_REVALIDATE_EVENT,ri)},{retryCount:(vt.retryCount||0)+1,dedupe:!0})))}return Vt=!1,An(),!0},[p,n]),ye=(0,Ze.useCallback)((...le)=>zA(n,Q.current,...le),[]);if(Es(()=>{b.current=t,k.current=r,z(Gt)||(et.current=Gt)}),Es(()=>{if(!p)return;let le=Dn.bind(We,lg),se=0;T().revalidateOnFocus&&(se=Date.now()+T().focusThrottleInterval);let be=dM(p,g,(Vt,vt={})=>{if(Vt==uo.FOCUS_EVENT){let fe=Date.now();T().revalidateOnFocus&&fe>se&&v()&&(se=fe+T().focusThrottleInterval,le())}else if(Vt==uo.RECONNECT_EVENT)T().revalidateOnReconnect&&v()&&le();else{if(Vt==uo.MUTATE_EVENT)return Dn();if(Vt==uo.ERROR_REVALIDATE_EVENT)return Dn(vt)}});return S.current=!1,Q.current=p,y.current=!0,L({_k:w}),ys&&(I[p]||(z(Ut)||fo?le():og(le))),()=>{S.current=!0,be()}},[p]),Es(()=>{let le;function se(){let be=tr(l)?l(M().data):l;be&&le!==-1&&(le=setTimeout(_e,be))}function _e(){!M().error&&(A||T().isVisible())&&(u||T().isOnline())?Dn(lg).then(se):se()}return se(),()=>{le&&(clearTimeout(le),le=-1)}},[l,A,u,p]),(0,Ze.useDebugValue)(Or),i){if(!WA&&fo&&ln)throw new Error("Fallback data is required when using Suspense in SSR.");ln&&(b.current=t,k.current=r,S.current=!1);let le=x[p],se=!z(le)&&ln?ye(le):XA;if(cg(se),!z(or)&&ln)throw or;let _e=ln?Dn(lg):XA;!z(Or)&&ln&&(_e.status="fulfilled",_e.value=!0),cg(_e)}return{mutate:ye,get data(){return J.data=!0,Or},get error(){return J.error=!0,or},get isValidating(){return J.isValidating=!0,Ka},get isLoading(){return J.isLoading=!0,Me}}},B$=hs.defineProperty(ag,"defaultValue",{value:KA}),zo=fM(J5);var mM=m(ci());async function pM({start:e,end:t,refName:r,session:n,assemblyName:o}){let{assemblyManager:i,rpcManager:s}=n,a=await i.waitForAssembly(o);if(!a)throw new Error("assembly not found");let c="getSequence";return(await s.call(c,"CoreGetFeatures",{adapterConfig:(0,mM.getConf)(a,["sequence","adapter"]),sessionId:c,regions:[{start:e,end:t,refName:a.getCanonicalRefName(r),assemblyName:o}]}))[0]?.get("seq")??""}var $o={revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1,refreshWhenHidden:!1,refreshWhenOffline:!1,shouldRetryOnError:!1};async function Y5({feature:e,assemblyName:t,view:r}){let n=(0,gM.getSession)(r),{start:o,end:i,refName:s}=e.toJSON();return{seq:await pM({start:o,end:i,refName:s,assemblyName:t,session:n})}}function hM({view:e,feature:t}){let r=e?.assemblyNames?.[0],n=t&&r?{feature:t,assemblyName:r,view:e}:void 0,{data:o,error:i}=zo(n?[n.feature.id(),n.assemblyName,"feature-sequence"]:null,()=>Y5(n),$o);return{sequence:o,error:i}}function CM({view:e,feature:t}){let{sequence:r,error:n}=hM({view:e,feature:t});return{proteinSequence:r&&t?W2({seq:r.seq,feature:t}):"",sequence:r,error:n}}function W5(e,t,r){if(r&&r.length>0){let n=t.find(i=>Vo(i)===e),o=n&&r.some(i=>Da(n,i));if(n&&!o){let i=t.find(s=>r.some(a=>Da(s,a)));return i?Vo(i):void 0}}}function an({feature:e,view:t,validIds:r}){let n=(0,ZA.useMemo)(()=>Qv(e),[e]),[o,i]=(0,ZA.useState)(()=>Vo(n[0])),s=W5(o,n,r)??o,a=n.find(A=>Vo(A)===s),{proteinSequence:c,error:l}=CM({view:t,feature:a});return{options:n,selectedId:s,setSelectedId:i,selectedTranscript:a,proteinSequence:c,error:l,validIds:r}}var z5=(0,IM.makeStyles)()({textAreaFont:{fontFamily:"Courier New"},inputContainer:{marginBottom:30},fileContainer:{maxWidth:500},msaInput:{marginBottom:20},queryNameInput:{marginTop:20},warningAlert:{marginTop:10}}),$5=(0,xM.observer)(function({model:t,feature:r,handleClose:n}){let o=(0,EM.getSession)(t),i=pr(t),{classes:s}=z5(),[a,c]=(0,ce.useState)(),[l,A]=(0,ce.useState)("file"),[u,f]=(0,ce.useState)(""),[d,g]=(0,ce.useState)(""),[E,I]=(0,ce.useState)(),[x,p]=(0,ce.useState)(),[w,y]=(0,ce.useState)(""),S=an({feature:r,view:i}),{selectedTranscript:Q,error:b}=S;return ce.default.createElement(ce.default.Fragment,null,ce.default.createElement(_r,{error:a??b},ce.default.createElement(gr.FormControl,{component:"fieldset"},ce.default.createElement(gr.RadioGroup,{row:!0,value:l,onChange:T=>{A(T.target.value)}},ce.default.createElement(gr.FormControlLabel,{value:"file",control:ce.default.createElement(gr.Radio,null),label:"Open files"}),ce.default.createElement(gr.FormControlLabel,{value:"text",control:ce.default.createElement(gr.Radio,null),label:"Paste text"}))),ce.default.createElement("div",{className:s.inputContainer},l==="file"?ce.default.createElement("div",{className:s.fileContainer},ce.default.createElement(ug.FileSelector,{name:"MSA File .aln (Clustal), .fa/.mfa (aligned FASTA), .stock (Stockholm), etc)",inline:!0,location:E,setLocation:I}),ce.default.createElement(ug.FileSelector,{name:"Tree file .nh (Newick) or .asn (NCBI COBALT ASN.1)",inline:!0,location:x,setLocation:p})):ce.default.createElement(ce.default.Fragment,null,ce.default.createElement(ht,{variant:"outlined",name:"MSA",multiline:!0,minRows:5,className:s.msaInput,maxRows:10,fullWidth:!0,placeholder:"Paste MSA here",value:u,onChange:T=>{f(T.target.value)}}),ce.default.createElement(ht,{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)}}))),ce.default.createElement(kr,{feature:r,...S}),ce.default.createElement(ht,{variant:"outlined",name:"MSA row name",fullWidth:!0,required:!0,className:s.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:ce.default.createElement(gr.Alert,{severity:"warning",className:s.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.")),ce.default.createElement(_n,{submitDisabled:!Q||l==="file"&&!E||l==="text"&&!u.trim(),onSubmit:()=>{try{Q&&(c(void 0),G2({session:o,newViewTitle:Jo(Q),view:i,feature:Q,querySeqName:w.trim(),...l==="file"?{msaFilehandle:E,treeFilehandle:x}:{data:{msa:u,tree:d}}}),n())}catch(T){console.error(T),c(T)}},onCancel:n}))}),wM=$5;var Fr=m(_()),YM=m(he());Em();var WM=m(O()),zM=m(De());var ge=m(_());Jm();var rr=m(O()),LM=m(j()),RM=m(De());var lt=m(_()),QM=m(Ne());$();var yM=m(U(),1),bM=(0,F.createSvgIcon)((0,yM.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 St=m(O()),vM=m(j()),MM=m(De());var fg=m(he());function eu({newViewTitle:e,view:t,feature:r,blastParams:n}){(0,fg.getSession)(t).addView("MsaView",{type:"MsaView",displayName:e,connectedViewId:t.id,connectedFeature:r.toJSON(),drawNodeBubbles:!0,colWidth:10,rowHeight:12,blastParams:n})}function SM({newViewTitle:e,view:t,cached:r}){(0,fg.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 tu(e){let{data:t,error:r,mutate:n}=zo(`cached-blast-${e.join(",")}`,async()=>(await Mv()).filter(a=>a.geneId&&e.includes(a.geneId)),$o);return{results:t??[],error:r,isLoading:!t&&!r,handleDelete:async s=>{await _v(s),await n(a=>a?.filter(c=>c.id!==s)??[],!1)},handleClearAll:async()=>{await Tv(),await n([],!1)}}}var K5=(0,MM.makeStyles)()({header:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:8},resultList:{maxHeight:300,overflow:"auto"}});function BM(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 X5=(0,vM.observer)(function({model:e,handleClose:t,feature:r}){let{classes:n}=K5(),o=pr(e),[i,s]=(0,lt.useState)(),a=(0,lt.useMemo)(()=>yA(r),[r]),{results:c,error:l,isLoading:A,handleDelete:u,handleClearAll:f}=tu(a),d=E=>{SM({view:o,cached:E,newViewTitle:`BLAST - ${BM(E)}`}),t()},g=l??i;return g?lt.default.createElement(QM.ErrorMessage,{error:g}):A?lt.default.createElement(St.Typography,null,"Loading cached results..."):c.length===0?lt.default.createElement(St.Typography,{color:"textSecondary"},"No cached BLAST results found for this gene. Run a BLAST query to cache results."):lt.default.createElement("div",null,lt.default.createElement("div",{className:n.header},lt.default.createElement(St.Typography,{variant:"subtitle1"},"Cached BLAST Results (",c.length,")"),lt.default.createElement(St.Button,{size:"small",color:"error",onClick:async()=>{try{s(void 0),await f()}catch(E){s(E)}}},"Clear All")),lt.default.createElement(St.List,{dense:!0,className:n.resultList},c.map(E=>lt.default.createElement(St.ListItem,{key:E.id,disablePadding:!0,secondaryAction:lt.default.createElement(St.IconButton,{edge:"end",size:"small",onClick:async I=>{I.stopPropagation();try{s(void 0),await u(E.id)}catch(x){s(x)}}},lt.default.createElement(bM,{fontSize:"small"}))},lt.default.createElement(St.ListItemButton,{onClick:()=>{d(E)}},lt.default.createElement(St.ListItemText,{primary:`${BM(E)} - ${E.blastDatabase}/${E.blastProgram} (${E.msaAlgorithm})`,secondary:`${new Date(E.timestamp).toLocaleString()} - Seq: ${E.proteinSequence.slice(0,30)}...`}))))))}),_M=X5;var dg=m(_()),NM=m(O());var ru="https://blast.ncbi.nlm.nih.gov/Blast.cgi",TM=["clustalo","muscle","kalign","mafft"],kM=["nr","nr_cluster_seq"],DM=["blastp","quick-blastp"];function Ya({value:e,onChange:t,className:r}){return dg.default.createElement(ht,{variant:"outlined",label:"MSA Algorithm",className:r,select:!0,value:e,onChange:n=>{t(n.target.value)}},TM.map(n=>dg.default.createElement(NM.MenuItem,{value:n,key:n},n)))}var Z5=(0,RM.makeStyles)()({selectField:{width:150},databaseFieldContainer:{display:"flex"},clusterSeqMessage:{marginLeft:4,alignContent:"center"},cachedResultsAccordion:{marginTop:20},infoText:{marginTop:20}}),eP=(0,LM.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=Z5(),s=pr(r),[a,c]=(0,ge.useState)(),[l,A]=(0,ge.useState)("nr"),[u,f]=(0,ge.useState)("clustalo"),[d,g]=(0,ge.useState)("quick-blastp"),E=(0,ge.useMemo)(()=>yA(t),[t]),{results:I,error:x}=tu(E),p=an({feature:t,view:s}),{selectedTranscript:w,proteinSequence:y}=p,S=p.error??a??x;return ge.default.createElement(ge.default.Fragment,null,ge.default.createElement(_r,{error:S},n,ge.default.createElement(ht,{variant:"outlined",label:"BLAST database",className:i.selectField,select:!0,value:l,onChange:Q=>{let b=Q.target.value;A(b),b==="nr_cluster_seq"&&g("blastp")}},kM.map(Q=>ge.default.createElement(rr.MenuItem,{value:Q,key:Q},Q))),ge.default.createElement(Ya,{className:i.selectField,value:u,onChange:f}),ge.default.createElement("div",{className:i.databaseFieldContainer},ge.default.createElement(ht,{variant:"outlined",label:"BLAST program",disabled:l==="nr_cluster_seq",className:i.selectField,select:!0,value:d,onChange:Q=>{g(Q.target.value)}},DM.map(Q=>ge.default.createElement(rr.MenuItem,{value:Q,key:Q},Q))),l==="nr_cluster_seq"?ge.default.createElement(rr.Typography,{variant:"subtitle2",className:i.clusterSeqMessage},"Can only use blastp on nr_cluster_seq"):null),ge.default.createElement(kr,{feature:t,...p}),ge.default.createElement(rr.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"),I.length>0?ge.default.createElement(rr.Accordion,{className:i.cachedResultsAccordion},ge.default.createElement(rr.AccordionSummary,{expandIcon:ge.default.createElement(zl,null)},ge.default.createElement(rr.Typography,null,"Previous BLAST Results")),ge.default.createElement(rr.AccordionDetails,null,ge.default.createElement(_M,{model:r,handleClose:e,feature:t}))):null),ge.default.createElement(_n,{submitDisabled:!y,onSubmit:()=>{try{w&&(c(void 0),eu({feature:w,view:s,newViewTitle:IA(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}))}),FM=eP;var cn=m(_()),OM=m(he()),Is=m(O()),GM=m(j()),UM=m(De());nu();var tP=(0,UM.makeStyles)()({ncbiLink:{wordBreak:"break-all",margin:30,maxWidth:600},infoText:{marginTop:20}}),rP=(0,GM.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=tP(),s=pr(r),a=an({feature:t,view:s}),{proteinSequence:c,error:l}=a,A=wA(c),u=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${A}`,f=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${(0,OM.shorten2)(A,10)}`;return cn.default.createElement(cn.default.Fragment,null,cn.default.createElement(_r,{error:l},n,cn.default.createElement(kr,{feature:t,...a}),c?cn.default.createElement("div",{className:i.ncbiLink},"Link to NCBI BLAST: ",cn.default.createElement(Ko,{href:u},f)):null,cn.default.createElement(Is.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`)),cn.default.createElement(Is.DialogActions,null,cn.default.createElement(Is.Button,{color:"primary",variant:"contained",onClick:()=>{e()}},"Close")))}),HM=rP;var Tn=m(_()),hr=m(O());function pg({lookupMethod:e,setLookupMethod:t}){return Tn.default.createElement(hr.FormControl,{component:"fieldset"},Tn.default.createElement(hr.RadioGroup,{row:!0,value:e,onChange:r=>{t(r.target.value)}},Tn.default.createElement(hr.FormControlLabel,{value:"automatic",control:Tn.default.createElement(hr.Radio,null),label:"Automatic"}),Tn.default.createElement(hr.FormControlLabel,{value:"rid",control:Tn.default.createElement(hr.Radio,null),label:"Load from RID"}),Tn.default.createElement(hr.FormControlLabel,{value:"manual",control:Tn.default.createElement(hr.Radio,null),label:"Manual"})))}var Bt=m(_()),ou=m(O()),jM=m(j()),qM=m(De());nu();var nP=(0,qM.makeStyles)()({marginBottom:{marginBottom:16},ridField:{width:150},infoText:{marginTop:20}}),oP=(0,jM.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=nP(),s=pr(r),[a,c]=(0,Bt.useState)(),[l,A]=(0,Bt.useState)(""),[u,f]=(0,Bt.useState)("clustalo"),d=an({feature:t,view:s}),{selectedTranscript:g,proteinSequence:E}=d,I=d.error??a,x=l.trim();return Bt.default.createElement(Bt.default.Fragment,null,Bt.default.createElement(_r,{error:I},n,Bt.default.createElement(ou.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."),Bt.default.createElement(ht,{variant:"outlined",label:"BLAST RID",placeholder:"e.g., ABC12345",fullWidth:!0,className:i.marginBottom,value:l,onChange:p=>{A(p.target.value)}}),x?Bt.default.createElement(ou.Typography,{variant:"body2",className:i.marginBottom},Bt.default.createElement(Ko,{href:`${o}?CMD=Get&RID=${x}`},"View BLAST results on NCBI")):null,Bt.default.createElement(Ya,{className:i.ridField,value:u,onChange:f}),Bt.default.createElement(kr,{feature:t,...d}),Bt.default.createElement(ou.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.")),Bt.default.createElement(_n,{submitDisabled:!E||!x,onSubmit:()=>{try{g&&x&&(c(void 0),eu({feature:g,view:s,newViewTitle:IA(t,g),blastParams:{baseUrl:o,blastProgram:"blastp",blastDatabase:"nr",msaAlgorithm:u,selectedTranscript:g,proteinSequence:E,rid:x}}),e())}catch(p){console.error(p),c(p)}},onCancel:e}))}),VM=oP;var Rr=m(_()),Cr=m(O()),JM=m(De());var iP=(0,JM.makeStyles)()({urlField:{minWidth:300}});function gg({handleClose:e,baseUrl:t}){let{classes:r}=iP(),[n,o]=(0,Rr.useState)(t);return Rr.default.createElement(Cr.Dialog,{open:!0,maxWidth:"lg",onClose:()=>{e()}},Rr.default.createElement(Cr.DialogTitle,null,"BLAST Settings"),Rr.default.createElement(Cr.DialogContent,null,Rr.default.createElement(ht,{autoFocus:!0,margin:"dense",label:"BLAST Base URL",fullWidth:!0,variant:"outlined",value:n,className:r.urlField,onChange:i=>{o(i.target.value)}}),Rr.default.createElement(Cr.Button,{variant:"contained",onClick:()=>{o(ru)}},"Reset")),Rr.default.createElement(Cr.DialogActions,null,Rr.default.createElement(Cr.Button,{variant:"contained",color:"secondary",onClick:()=>{e()}},"Cancel"),Rr.default.createElement(Cr.Button,{color:"primary",variant:"contained",onClick:()=>{e(n)}},"Save")))}var sP=(0,zM.makeStyles)()({settingsButton:{float:"right"}}),aP={automatic:FM,rid:VM,manual:HM};function hg({handleClose:e,model:t,feature:r}){let[n,o]=(0,Fr.useState)("automatic"),[i,s]=(0,YM.useLocalStorage)("msa-blastRootUrl",ru),[a,c]=(0,Fr.useState)(!1),{classes:l}=sP(),A=aP[n];return Fr.default.createElement(Fr.default.Fragment,null,Fr.default.createElement(WM.IconButton,{className:l.settingsButton,size:"small",onClick:()=>{c(!0)}},Fr.default.createElement(Ll,null)),Fr.default.createElement(A,{model:t,feature:r,handleClose:e,baseUrl:i},Fr.default.createElement(pg,{lookupMethod:n,setLookupMethod:o})),a?Fr.default.createElement(gg,{baseUrl:i,handleClose:u=>{u&&s(u),c(!1)}}):null)}var Qt=m(_()),Wa=m(Ne()),su=m(he()),n_=m(O()),o_=m(j());var i_=m(De());Hn();function Cg(e,t="",r=5e3){let n=[e];for(;n.length;){let o=n.pop();for(let[i,s]of Object.entries(o)){if(t.length>r)return em(t);typeof s=="object"&&s!==null?n.push(s):i==="locationType"&&s==="FileHandleLocation"?t+=`${i}-BlobLocation`:i==="handleId"?t+=`blobId-fh-blob-${s}`:t+=`${i}-${s}`}}return`adp-${em(t)}`}function $M(e={}){return e.type&&e.adapterId?`${e.type}-${e.adapterId}`:`${Cg(e)}`}var KM={};async function cP(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}),s=Eg.bind(null,e,t),a=await o.getAdapterClass();return{dataAdapter:new a(i,s,e),sessionIds:new Set([t])}}async function Eg(e,t,r){let n=$M(r);KM[n]??=cP(e,t,r);let o=await KM[n];return o.sessionIds.add(t),o}async function XM(e,t){return(await Eg(e,"msa",t)).dataAdapter}async function ZM({config:e,pluginManager:t}){return(await XM(t,e)).getMSAList()}async function e_({config:e,pluginManager:t,msaId:r}){return(await XM(t,e)).getMSA(r)}function t_({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 r_=m(ci());function iu(e){return(0,r_.readConfObject)(e,["msa","datasets"])}var lP=(0,i_.makeStyles)()({selectedContainer:{marginTop:50}}),AP=(0,o_.observer)(function({model:e,feature:t,handleClose:r}){let n=(0,su.getSession)(e),o=pr(e),{classes:i}=lP(),{pluginManager:s}=(0,su.getEnv)(e),{assemblyNames:a}=o,[c,l]=(0,Qt.useState)(),A=iu(n.jbrowse),[u,f]=(0,Qt.useState)(A?.[0]?.datasetId),d=A?.find(k=>k.datasetId===u),{data:g,isLoading:E,error:I}=zo(d?`${d.datasetId}-msa-list`:null,()=>ZM({config:d.adapter,pluginManager:s}),$o),x=an({feature:t,view:o,validIds:g}),{selectedId:p,selectedTranscript:w}=x,{data:y,isLoading:S,error:Q}=zo(p&&d&&g?`${d.datasetId}-${p}-${g.length}-msa`:null,()=>e_({msaId:p,config:d.adapter,pluginManager:s}),$o),b=I??Q??x.error??c;return Qt.default.createElement(Qt.default.Fragment,null,Qt.default.createElement(_r,{error:b},Qt.default.createElement(ht,{select:!0,label:"Select MSA dataset",value:u,onChange:k=>{f(k.target.value)}},A?.map(k=>Qt.default.createElement(n_.MenuItem,{key:k.datasetId,value:k.datasetId},k.name))),d?Qt.default.createElement("div",{className:i.selectedContainer},!E&&S?Qt.default.createElement(Wa.LoadingEllipses,{variant:"h6",message:`Loading MSA for (${p})`}):null,E?Qt.default.createElement(Wa.LoadingEllipses,{variant:"h6",message:`Loading available MSAs for (${d.name})`}):null,g?Qt.default.createElement("div",null,Qt.default.createElement(Wa.SanitizedHTML,{html:d.description}),Qt.default.createElement(kr,{feature:t,...x})):null):null),Qt.default.createElement(_n,{submitDisabled:!w||!y?.length,onSubmit:()=>{try{if(w&&y){let k=`${p}_${a[0]}`;t_({session:n,newViewTitle:Jo(w),view:o,querySeqName:k,feature:w,data:{msa:y.map(T=>`>${T.get("refName")}
|
|
76
|
+
${T.get("seq")}`).join(`
|
|
77
|
+
`)}}),r()}}catch(k){l(k)}},onCancel:r}))}),s_=AP;var a_=m(_());function za({children:e,value:t,index:r,...n}){return a_.default.createElement("div",{role:"tabpanel",hidden:t!==r,...n},t===r?e:null)}function xg({handleClose:e,feature:t,model:r}){let n=(0,l_.getSession)(r),i=!!iu(n.jbrowse)?.length,[s,a]=(0,qt.useState)("ncbi_blast");return qt.default.createElement(c_.Dialog,{maxWidth:"xl",title:"Launch MSA view",open:!0,onClose:e},qt.default.createElement(ws.Tabs,{value:s,onChange:(c,l)=>{a(l)}},qt.default.createElement(ws.Tab,{label:"NCBI BLAST query",value:"ncbi_blast"}),i?qt.default.createElement(ws.Tab,{label:"Pre-loaded MSA datasets",value:"preloaded_msa"}):null,qt.default.createElement(ws.Tab,{label:"Manual upload",value:"manual_msa"})),qt.default.createElement(za,{value:s,index:"ncbi_blast"},qt.default.createElement(hg,{handleClose:e,feature:t,model:r})),i?qt.default.createElement(za,{value:s,index:"preloaded_msa"},qt.default.createElement(s_,{model:r,feature:t,handleClose:e})):null,qt.default.createElement(za,{value:s,index:"manual_msa"},qt.default.createElement(wM,{model:r,feature:t,handleClose:e})))}function uP(e){return e.name==="LinearBasicDisplay"}function fP(e){return e.views(t=>{let r=t.contextMenuItems;return{contextMenuItems(){let n=t.contextMenuFeature,o=(0,au.getContainingTrack)(t),i=n?.get("type"),s=n&&["gene","mRNA","transcript"].includes(i);return[...r(),...s?[{label:"Launch MSA view",icon:O2,onClick:()=>{(0,au.getSession)(o).queueDialog(a=>[xg,{model:o,handleClose:a,feature:n}])}}]:[]]}}})}function Ig(e){e.addToExtensionPoint("Core-extendPluggableElement",t=>(uP(t)&&(t.stateModel=fP(t.stateModel)),t))}function wg(e){e.addToExtensionPoint("LaunchView-MsaView",({session:t,data:r,msaFileLocation:n,msaTabixLocation:o,msaIndexLocation:i,msaId:s,treeFileLocation:a,connectedViewId:c,connectedFeature:l,displayName:A,colorSchemeName:u,colWidth:f,rowHeight:d,treeAreaWidth:g,treeWidth:E,drawNodeBubbles:I,labelsAlignRight:x,showBranchLen:p,querySeqName:w,highlightColumns:y})=>{if(!r&&!n&&!o)throw new Error("No MSA data or file location provided when launching MSA view");t.addView("MsaView",{type:"MsaView",displayName:A,connectedViewId:c,connectedFeature:l,colorSchemeName:u,colWidth:f,rowHeight:d,treeAreaWidth:g,treeWidth:E,drawNodeBubbles:I,labelsAlignRight:x,showBranchLen:p,highlightColumns:y,init:{msaData:r?.msa,treeData:r?.tree,msaUrl:n?.uri,msaTabixLocation:o,msaIndexLocation:i,msaId:s,treeUrl:a?.uri,querySeqName:w}})})}var B_=m(_()),Q_=m(u_());var xP=(0,B_.lazy)(()=>Promise.resolve().then(()=>(S_(),b_)));function Bg(e){e.addViewType(()=>new Q_.default({name:"MsaView",stateModel:Pp(),ReactComponent:xP}))}var v_="2.6.0";var Au=class extends M_.default{constructor(){super(...arguments);this.name="MsaViewPlugin";this.version=v_;this.rootConfigurationSchema=r=>({msa:(0,Qg.ConfigurationSchema)("MSA",{datasets:vg.types.maybe(vg.types.array((0,Qg.ConfigurationSchema)("MSAEntry",{datasetId:{type:"string",defaultValue:""},description:{type:"string",defaultValue:""},name:{type:"string",defaultValue:""},adapter:r.pluggableConfigSchemaType("adapter")})))})})}install(r){Bg(r),Ig(r),wg(r),jp(r),Vp(r)}configure(r){(0,__.isAbstractMenuManager)(r.rootModel)&&r.rootModel.appendToSubMenu(["Add"],{label:"Multiple sequence alignment view",icon:rh,onClick:n=>{n.addView("MsaView",{})}})}};return X_(IP);})();
|
|
76
78
|
/*! Bundled license information:
|
|
77
79
|
|
|
78
80
|
react-is/cjs/react-is.production.min.js:
|
|
@@ -95,7 +97,7 @@ escape-html/index.js:
|
|
|
95
97
|
*)
|
|
96
98
|
|
|
97
99
|
dompurify/dist/purify.es.mjs:
|
|
98
|
-
(*! @license DOMPurify 3.4.
|
|
100
|
+
(*! @license DOMPurify 3.4.11 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.11/LICENSE *)
|
|
99
101
|
|
|
100
102
|
use-sync-external-store/cjs/use-sync-external-store-shim.production.js:
|
|
101
103
|
(**
|