jsroot
Version:
JavaScript ROOT
2 lines • 602 kB
JavaScript
// https://root.cern/js/ v7.10.1
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).JSROOT=t.JSROOT||{})}(this,function(t){"use strict";var e="undefined"!=typeof document?document.currentScript:null;const i="7.10.1 26/11/2025",n=Boolean("object"==typeof process&&process.versions?.node&&process.versions.v8),s={id_counter:1},r="undefined"==typeof document&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:"undefined"==typeof document?location.href:e&&"SCRIPT"===e.tagName.toUpperCase()&&e.src||new URL("hist2d.min.js",document.baseURI).href,a="$jsrootsys";function o(t){return t&&"object"==typeof t}function h(t){return"function"==typeof t}function l(t){return"string"==typeof t}function c(t){return o(t)&&h(t.then)}function f(t,e){return new Promise(i=>{setTimeout(()=>{const e=h(t)?t():t;i(e)},e)})}function d(t){return c(t)?t:Promise.resolve(t)}let u="";if("$"!==a[0])u=a;else if(r&&l(r)){let t=r.indexOf("modules/core.mjs");t<0&&(t=r.indexOf("build/jsroot.js")),t<0&&(t=r.indexOf("build/jsroot.min.js")),t>=0?u=r.slice(0,t):s.ignore_v6=!0}n||(u?console.log(`Set jsroot source_dir to ${u}, ${i}`):console.log(`jsroot bundle, ${i}`));let g=n;function p(){return g}function m(){return n}const x=m()?t=>Buffer.from(t,"base64").toString("latin1"):globalThis?.atob,y=m()?t=>Buffer.from(t,"latin1").toString("base64"):globalThis?.btoa,_={isFirefox:!0,isSafari:!1,isChrome:!1,isWin:!1,touches:!1,screenWidth:1200};function b(t){if(t.length<14||t.indexOf("[object "))return 0;const e=t.indexOf("Array]");return e<0||e!==t.length-6?0:14===t.length?1:2}"undefined"!=typeof document&&"undefined"!=typeof window&&"undefined"!=typeof navigator&&(navigator.userAgentData?.brands?.forEach(t=>{"HeadlessChrome"===t.brand?(_.isChromeHeadless=!0,_.chromeVersion=parseInt(t.version)):"Chromium"===t.brand&&(_.isChrome=!0,_.chromeVersion=parseInt(t.version))}),_.chromeVersion?(_.isFirefox=!1,_.isWin="Windows"===navigator.userAgentData.platform):(_.isFirefox=navigator.userAgent.indexOf("Firefox")>=0,_.isSafari=Object.prototype.toString.call(window.HTMLElement).indexOf("Constructor")>0,_.isChrome=Boolean(window.chrome),_.isChromeHeadless=navigator.userAgent.indexOf("HeadlessChrome")>=0,_.chromeVersion=_.isChrome||_.isChromeHeadless?navigator.userAgent.indexOf("Chrom")>0?parseInt(navigator.userAgent.match(/Chrom(?:e|ium)\/([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)/)[1]):134:0,_.isWin=navigator.userAgent.indexOf("Windows")>=0),_.android=/android/i.test(navigator.userAgent),_.touches="ontouchend"in document,_.screenWidth=window.screen?.width??1200);const v={Render3D:{Default:0,WebGL:1,WebGLImage:2,SVG:3,None:4,fromString(t){return"webgl"===t||"gl"===t?this.WebGL:"img"===t?this.WebGLImage:"svg"===t?this.SVG:"none"===t?this.None:this.Default}},Embed3D:{Default:0,Overlay:1,Embed:2},Latex:{Off:0,Symbols:1,Normal:2,MathJax:3,AlwaysMathJax:4}},w={Render3D:v.Render3D.Default,Render3DBatch:v.Render3D.Default,Embed3D:v.Embed3D.Default,CanvasWidth:1200,CanvasHeight:800,CanvasScale:1,Tooltip:!n,TooltipAnimation:500,ContextMenu:!n,Zooming:!n,ZoomMouse:!n,ZoomWheel:!n,ZoomTouch:!n,MoveResize:!_.touches&&!n,HandleKeys:!n,DragAndDrop:!n,DragGraphs:!0,UserSelect:"none",ProgressBox:!n,ToolBar:!n&&"popup",ToolBarSide:"left",ToolBarVert:!1,CanEnlarge:!0,CanAdjustFrame:!1,ApproxTextSize:!1,LoadSymbolTtf:!1,OptimizeDraw:1,AutoStat:!0,FrameNDC:{},SmallPad:{width:150,height:100},Palette:57,Latex:v.Latex.Normal,GeoGradPerSegm:6,GeoCompressComp:!0,IgnoreUrlOptions:!1,HierarchyLimit:250,DislpayKind:"simple",BrowserWidth:250,XValuesFormat:void 0,YValuesFormat:void 0,ZValuesFormat:void 0,HandleWrongHttpResponse:!1,UseStamp:!n,MaxRanges:200,TreeReadBunchSize:1e6,FilesTimeout:0,FilesRemap:{"https://root.cern/":"https://root-eos.web.cern.ch/"},WithCredentials:!1,SkipStreamerInfos:!1,OnlyLastCycle:!1,DarkMode:!1,PreferSavedPoints:!1,AxisTiltAngle:25,StripAxisLabels:!0,CutAxisLabels:!1,FuncAsCurve:!1,TimeZone:"",NewTabUrl:"",NewTabUrlPars:"",NewTabUrlExportSettings:!1,Debug:!1},M={fName:"Modern",fOptLogx:0,fOptLogy:0,fOptLogz:0,fOptDate:0,fOptFile:0,fDateX:.01,fDateY:.01,fOptTitle:1,fCanvasColor:0,fPadColor:0,fPadBottomMargin:.1,fPadTopMargin:.1,fPadLeftMargin:.1,fPadRightMargin:.1,fPadGridX:!1,fPadGridY:!1,fPadTickX:0,fPadTickY:0,fPadBorderSize:2,fPadBorderMode:0,fCanvasBorderSize:2,fCanvasBorderMode:0,fStatColor:0,fStatStyle:1e3,fStatTextColor:1,fStatFontSize:0,fStatFont:42,fStatBorderSize:1,fStatFormat:"6.4g",fStatX:.98,fStatY:.935,fStatW:.2,fStatH:.16,fTitleAlign:23,fTitleColor:0,fTitleTextColor:1,fTitleBorderSize:0,fTitleFont:42,fTitleFontSize:.05,fTitleStyle:0,fTitleX:.5,fTitleY:.995,fTitleW:0,fTitleH:0,fFitFormat:"5.4g",fOptStat:1111,fOptFit:0,fNumberContours:20,fGridColor:0,fGridStyle:3,fGridWidth:1,fFrameFillColor:0,fFrameFillStyle:1001,fFrameLineColor:1,fFrameLineWidth:1,fFrameLineStyle:1,fFrameBorderSize:1,fFrameBorderMode:0,fEndErrorSize:2,fErrorX:.5,fHistMinimumZero:!1,fHistTopMargin:.05,fHistFillColor:0,fHistFillStyle:1001,fHistLineColor:602,fHistLineStyle:1,fHistLineWidth:1,fPaintTextFormat:"g",fTimeOffset:788918400,fLegendBorderSize:1,fLegendFont:42,fLegendTextSize:0,fLegendFillColor:0,fLegendFillStyle:1001,fHatchesLineWidth:1,fHatchesSpacing:1,fCandleWhiskerRange:1,fCandleBoxRange:.5,fCandleScaled:!1,fViolinScaled:!0,fCandleCircleLineWidth:1,fCandleCrossLineWidth:1,fOrthoCamera:!1,fXAxisExpXOffset:0,fXAxisExpYOffset:0,fYAxisExpXOffset:0,fYAxisExpYOffset:0,fAxisMaxDigits:5,fStripDecimals:!0,fBarWidth:1,fBarOffset:0};function C(){return n?s.nodejs_document:"undefined"!=typeof document?document:"object"==typeof window?window.document:void 0}let S=null;function P(t){return 1<<t}function k(t,e,i){if(!t)return null;if(e){const i=e.obj.indexOf(t);if(i>=0)return e.clones[i]}else e={obj:[],clones:[],nofunc:i};const n=b(Object.prototype.toString.apply(t));if(1===n){const i=[];e.obj.push(t),e.clones.push(i);for(let n=0;n<t.length;++n)i.push(o(t[n])?k(t[n],e):t[n]);return i}if(2===n){const i=[];e.obj.push(t),e.clones.push(i);for(let e=0;e<t.length;++e)i.push(t[e]);return i}const s={};e.obj.push(t),e.clones.push(s);for(const i in t)o(t[i])?s[i]=k(t[i],e):e.nofunc&&h(t[i])||(s[i]=t[i]);return s}const T=Object.assign;let $=null;function z(t){if(!t)return null;const e=l(t)?JSON.parse(t):t,i=[];let n;const s=t=>{if(null==t)return;if(l(t)){if(n||t.length<6||t.indexOf("$ref:"))return;const e=parseInt(t.slice(5));if(!Number.isInteger(e)||e<0||e>=i.length)return;return n=!1,i[e]}if("object"!=typeof t)return;if(b(Object.prototype.toString.apply(t))>0){for(let e=0;e<t.length;++e){const i=s(t[e]);void 0!==i&&(t[e]=i)}return}const e=Object.keys(t),r=e.length;if(!1!==n&&1===r&&"$ref"===e[0]){const e=parseInt(t.$ref);if(!Number.isInteger(e)||e<0||e>=i.length)return;return n=!0,i[e]}if(!1!==n&&r>1&&"$arr"===e[0]&&"len"===e[1]){let i;switch(t.$arr){case"Int8":i=new Int8Array(t.len);break;case"Uint8":i=new Uint8Array(t.len);break;case"Int16":i=new Int16Array(t.len);break;case"Uint16":i=new Uint16Array(t.len);break;case"Int32":i=new Int32Array(t.len);break;case"Uint32":i=new Uint32Array(t.len);break;case"Float32":i=new Float32Array(t.len);break;case"Int64":case"Uint64":case"Float64":i=new Float64Array(t.len);break;default:i=new Array(t.len)}if(i.fill("Bool"!==t.$arr&&0),void 0!==t.b){const e=x(t.b);if(!i.buffer)throw new Error("base64 coding supported only for native arrays with binary data");{const n=new DataView(i.buffer,t.o||0),s=Math.min(e.length,n.byteLength);for(let t=0;t<s;++t)n.setUint8(t,e.charCodeAt(t))}}else{let n=2,s=0;for(;n<r;){if("p"===e[n][0]&&(s=t[e[n++]]),"v"!==e[n][0])throw new Error(`Unexpected member ${e[n]} in array decoding`);const a=t[e[n++]];if("object"==typeof a)for(let t=0;t<a.length;++t)i[s++]=a[t];else if(i[s++]=a,n<r&&"n"===e[n][0]){let r=t[e[n++]];for(;--r;)i[s++]=a}}}return i}if(!1!==n&&3===r&&"$pair"===e[0]&&"first"===e[1]&&"second"===e[2]){n=!0;const e=s(t.first),i=s(t.second);return void 0!==e&&(t.first=e),void 0!==i&&(t.second=i),t._typename=t.$pair,void delete t.$pair}if(!(i.indexOf(t)>=0)){i.push(t),t._typename&&$(t);for(let i=0;i<r;++i){const n=e[i],r=s(t[n]);void 0!==r&&(t[n]=r)}}};return s(e),e}function F(t,e){if(!o(t))return"";const i=[],n=t=>{if(h(t))return;if(null==t||!o(t))return t;if(b(Object.prototype.toString.apply(t))>0){const e=new Array(t.length);for(let i=0;i<t.length;++i)e[i]=n(t[i]);return e}const e=i.indexOf(t);if(e>=0)return{$ref:e};const s=Object.keys(t),r=s.length,a={};if(3===r&&"$pair"===s[0]&&"first"===s[1]&&"second"===s[2])return a.$pair=t.$pair,a.first=n(t.first),a.second=n(t.second),a;i.push(t);for(let e=0;e<r;++e){const i=s[e];i&&"$"!==i[0]&&(a[i]=n(t[i]))}return a},s=n(t);return JSON.stringify(s,null,e)}function O(t,e,i,s,r){function a(r){r.http_callback=h(i)?i.bind(r):()=>{},r.error_callback=h(s)?s.bind(r):function(t){console.warn(t.message),this.http_callback(null)}.bind(r),e||(e="buf");let a="GET",o=!0;const l=e.indexOf(";sync");switch(l>0&&(e=e.slice(0,l),o=!1),e){case"head":a="HEAD";break;case"posttext":a="POST",e="text";break;case"postbuf":a="POST",e="buf";break;case"post":case"multi":a="POST"}return r.kind=e,w.WithCredentials&&(r.withCredentials=!0),w.HandleWrongHttpResponse&&"GET"===a&&h(r.addEventListener)&&r.addEventListener("progress",function(t){t.lengthComputable&&this.expected_size&&t.loaded>this.expected_size&&(this.did_abort=!0,this.abort(),this.error_callback(Error(`Server sends more bytes ${t.loaded} than expected ${this.expected_size}. Abort I/O operation`),598))}.bind(r)),r.onreadystatechange=function(){if(!this.did_abort){if(2===this.readyState&&this.expected_size){const t=parseInt(this.getResponseHeader("Content-Length"));if(Number.isInteger(t)&&t>this.expected_size&&!w.HandleWrongHttpResponse)return this.did_abort="large",this.abort(),this.error_callback(Error(`Server response size ${t} larger than expected ${this.expected_size}. Abort I/O operation`),599)}if(4===this.readyState){if(200!==this.status&&206!==this.status&&!_.qt6&&(0!==this.status||0!==t.indexOf("file://")&&0!==t.indexOf("blob:")))return this.error_callback(Error(`Fail to load url ${t}`),this.status);if(this.nodejs_checkzip&&"gzip"===this.getResponseHeader("content-encoding"))return Promise.resolve().then(function(){return fu}).then(t=>{const e=t.unzipSync(Buffer.from(this.response)),i=JSON.parse(e);return this.http_callback(z(i))});switch(this.kind){case"xml":return this.http_callback(this.responseXML);case"text":return this.http_callback(this.responseText);case"object":return this.http_callback(z(this.responseText));case"multi":return this.http_callback(function(t){if(!t)return null;const e=JSON.parse(t);if(e?.length)for(let t=0;t<e.length;++t)e[t]=z(e[t]);return e}(this.responseText));case"head":return this.http_callback(this)}if(void 0===this.responseType)return this.http_callback(this.responseText);if("bin"===this.kind&&"byteLength"in this.response){const t=new Uint8Array(this.response);let e="";for(let i=0;i<t.length;++i)e+=String.fromCharCode(t[i]);return this.http_callback(e)}this.http_callback(this.response)}}},r.open(a,t,o),"bin"!==e&&"buf"!==e||(r.responseType="arraybuffer"),n&&"GET"===a&&"object"===e&&t.indexOf(".json.gz")>0&&(r.nodejs_checkzip=!0,r.responseType="arraybuffer"),r}if(m())return Promise.resolve().then(function(){return fu}).then(t=>a(new t.default));const o=a(new XMLHttpRequest);return r?Promise.resolve(o):o}async function N(t,e,i){return new Promise((i,n)=>{O(t,e,i,n,!0).then(t=>t.send(null))})}async function A(t){if(n){let e,i;return Promise.resolve().then(function(){return fu}).then(t=>(e=t.tmpNameSync()+".js",Promise.resolve().then(function(){return fu}))).then(n=>(i=n,i.writeFileSync(e,t),import("file://"+e))).finally(()=>i.unlinkSync(e))}if("undefined"!=typeof document){const e=document.getElementsByTagName("script");for(let i=0;i<e.length;++i)if(e[i].innerText===t)return!0;const i=t.indexOf("JSROOT.require")>=0,n=!i&&t.indexOf("import {")>0&&t.indexOf("} from '")>0,r=!i&&!n&&t.indexOf("JSROOT.ObjectPainter")>=0,a=i?S():Promise.resolve(!0);return r&&!globalThis.JSROOT&&(globalThis.JSROOT=s.jsroot),a.then(()=>{const e=document.createElement("script");return e.setAttribute("type",n?"module":"text/javascript"),e.innerText=t,document.head.appendChild(e),!!p()||f(!0,10)})}return!1}async function D(t){return l(t)&&(t=t.split(";")),!t.length||import(t.shift()).then(()=>D(t))}async function L(t){if(!t)return!0;if(l(t)&&t.indexOf(";")>=0&&(t=t.split(";")),!l(t)){const e=t,i=()=>!e.length||L(e.shift()).then(i,i);return i()}0===t.indexOf("$$$")&&(0===(t=t.slice(3)).indexOf("style/")&&t.indexOf(".css")<0&&(t+=".css"),t=u+t);const e=t.indexOf(".css")>0;if(n)return e?null:0===t.indexOf("http:")||0===t.indexOf("https:")?N(t,"text").then(t=>A(t)):0===t.indexOf("./")?Promise.resolve().then(function(){return fu}).then(e=>A(e.readFileSync(t))):import(t);const i=e=>{if(e===t)return!0;const i=e.indexOf(t);return i>0&&i+t.length===e.length&&"/"===e[i-1]};if(e){const t=document.getElementsByTagName("link");for(let e=0;e<t.length;++e)if(t[e].href&&"text/css"===t[e].type&&"stylesheet"===t[e].rel&&i(t[e].href))return!0}else{const t=document.getElementsByTagName("script");for(let e=0;e<t.length;++e)if(i(t[e].src))return!0}let s;return e?(s=document.createElement("link"),s.setAttribute("rel","stylesheet"),s.setAttribute("type","text/css"),s.setAttribute("href",t)):(s=document.createElement("script"),s.setAttribute("type","text/javascript"),s.setAttribute("src",t)),new Promise((e,i)=>{s.onload=()=>e(!0),s.onerror=()=>{s.remove(),i(Error(`Fail to load ${t}`))},document.head.appendChild(s)})}S=async function(){return(globalThis.JSROOT?Promise.resolve(!0):L(u+"scripts/JSRoot.core.js")).then(()=>{if(globalThis.JSROOT?._complete_loading)return globalThis.JSROOT._complete_loading()}).then(()=>globalThis.JSROOT)};const B="TObject",I="TNamed",E="TList",j="THashList",X="TObjArray",H="TAttLine",R="TAttFill",Y="TAttMarker",G="TAttText",U="THStack",W="TGraph",Z="TMultiGraph",V="TCutG",q="TGraphPolargram",K="TPave",J="TPaveText",Q="TPaveStats",tt="TPavesText",et="TPaveLabel",it="TPaveClass",nt="TDiamond",st="TLegend",rt="TLegendEntry",at="TPaletteAxis",ot="TText",ht="TLatex",lt="TColor",ct="TLine",ft="TBox",dt="TPolyLine",ut="TAttPad",gt="TPad",pt="TCanvas",mt="TFrame",xt="TAttCanvas",yt="TGaxis",_t="TAttAxis",bt="TAxis",vt="TH1",wt="TH1F",Mt="TH1D",Ct="TH2",St="TH2F",Pt="TH3",kt="TF1",Tt="TF2",$t="TF3",zt="TProfile",Ft="TProfile2D",Ot="TProfile3D",Nt="TGeoNode",At="ROOT::",Dt="http://www.w3.org/2000/svg",Lt=-1111,Bt=P(9),It="inspect",Et="title",jt="https://root.cern/doc/master/class";function Xt(t,e){const i=e||{};switch(t){case B:T(i,{fUniqueID:0,fBits:0});break;case I:T(i,{fUniqueID:0,fBits:0,fName:"",fTitle:""});break;case E:case j:T(i,{name:t,arr:[],opt:[]});break;case X:T(i,{name:t,arr:[]});break;case _t:T(i,{fNdivisions:510,fAxisColor:1,fLabelColor:1,fLabelFont:42,fLabelOffset:.005,fLabelSize:.035,fTickLength:.03,fTitleOffset:1,fTitleSize:.035,fTitleColor:1,fTitleFont:42});break;case bt:Xt(I,i),Xt(_t,i),T(i,{fNbins:1,fXmin:0,fXmax:1,fXbins:[],fFirst:0,fLast:0,fBits2:0,fTimeDisplay:!1,fTimeFormat:"",fLabels:null,fModLabs:null});break;case H:T(i,{fLineColor:1,fLineStyle:1,fLineWidth:1});break;case R:T(i,{fFillColor:0,fFillStyle:0});break;case Y:T(i,{fMarkerColor:1,fMarkerStyle:1,fMarkerSize:1});break;case ct:Xt(B,i),Xt(H,i),T(i,{fX1:0,fX2:1,fY1:0,fY2:1});break;case"TMarker":Xt(B,i),Xt(Y,i),T(i,{fX:0,fY:0});break;case ft:Xt(B,i),Xt(H,i),Xt(R,i),T(i,{fX1:0,fX2:1,fY1:0,fY2:1});break;case K:Xt(ft,i),T(i,{fX1NDC:0,fY1NDC:0,fX2NDC:0,fY2NDC:0,fBorderSize:0,fInit:1,fShadowColor:1,fCornerRadius:0,fOption:"brNDC",fName:""});break;case G:T(i,{fTextAngle:0,fTextSize:0,fTextAlign:22,fTextColor:1,fTextFont:42});break;case J:Xt(K,i),Xt(G,i),T(i,{fLabel:"",fLongest:27,fMargin:.05,fLines:Xt(E)});break;case Q:Xt(J,i),T(i,{fFillColor:M.fStatColor,fFillStyle:M.fStatStyle,fTextFont:M.fStatFont,fTextSize:M.fStatFontSize,fTextColor:M.fStatTextColor,fBorderSize:M.fStatBorderSize,fOptFit:M.fOptFit,fOptStat:M.fOptStat,fFitFormat:M.fFitFormat,fStatFormat:M.fStatFormat,fParent:null});break;case st:Xt(K,i),Xt(G,i),T(i,{fColumnSeparation:0,fEntrySeparation:.1,fMargin:.25,fNColumns:1,fPrimitives:Xt(E),fName:K,fBorderSize:M.fLegendBorderSize,fTextFont:M.fLegendFont,fTextSize:M.fLegendTextSize,fFillColor:M.fLegendFillColor,fFillStyle:M.fLegendFillStyle});break;case at:Xt(K,i),T(i,{fAxis:Xt(yt),fH:null,fName:K});break;case rt:Xt(B,i),Xt(G,i),Xt(H,i),Xt(R,i),Xt(Y,i),T(i,{fLabel:"",fObject:null,fOption:"",fTextAlign:0,fTextColor:0,fTextFont:0});break;case ot:Xt(I,i),Xt(G,i),T(i,{fX:0,fY:0});break;case ht:Xt(ot,i),Xt(H,i),T(i,{fLimitFactorSize:3,fOriginSize:.04});break;case"TObjString":Xt(B,i),T(i,{fString:""});break;case vt:Xt(I,i),Xt(H,i),Xt(R,i),Xt(Y,i),T(i,{fBits:8,fNcells:0,fXaxis:Xt(bt),fYaxis:Xt(bt),fZaxis:Xt(bt),fFillColor:M.fHistFillColor,fFillStyle:M.fHistFillStyle,fLineColor:M.fHistLineColor,fLineStyle:M.fHistLineStyle,fLineWidth:M.fHistLineWidth,fBarOffset:0,fBarWidth:1e3,fEntries:0,fTsumw:0,fTsumw2:0,fTsumwx:0,fTsumwx2:0,fMaximum:Lt,fMinimum:Lt,fNormFactor:0,fContour:[],fSumw2:[],fOption:"",fFunctions:Xt(E),fBufferSize:0,fBuffer:[],fBinStatErrOpt:0,fStatOverflows:2});break;case"TH1I":case Mt:case"TH1L64":case"TH1F":case"TH1S":case"TH1C":Xt(vt,i),i.fArray=[];break;case Ct:Xt(vt,i),T(i,{fScalefactor:1,fTsumwy:0,fTsumwy2:0,fTsumwxy:0});break;case"TH2I":case"TH2L64":case St:case"TH2D":case"TH2S":case"TH2C":Xt(Ct,i),i.fArray=[];break;case Pt:Xt(vt,i),T(i,{fTsumwy:0,fTsumwy2:0,fTsumwz:0,fTsumwz2:0,fTsumwxy:0,fTsumwxz:0,fTsumwyz:0});break;case"TH3I":case"TH3L64":case"TH3F":case"TH3D":case"TH3S":case"TH3C":Xt(Pt,i),i.fArray=[];break;case U:Xt(I,i),T(i,{fHists:Xt(E),fHistogram:null,fMaximum:Lt,fMinimum:Lt});break;case W:Xt(I,i),Xt(H,i),Xt(R,i),Xt(Y,i),T(i,{fFunctions:Xt(E),fHistogram:null,fMaxSize:0,fMaximum:Lt,fMinimum:Lt,fNpoints:0,fX:[],fY:[]});break;case"TGraphAsymmErrors":Xt(W,i),T(i,{fEXlow:[],fEXhigh:[],fEYlow:[],fEYhigh:[]});break;case Z:Xt(I,i),T(i,{fFunctions:Xt(E),fGraphs:Xt(E),fHistogram:null,fMaximum:Lt,fMinimum:Lt});break;case q:Xt(I,i),Xt(G,i),Xt(H,i),T(i,{fRadian:!1,fDegree:!1,fGrad:!1,fPolarLabelColor:1,fRadialLabelColor:1,fAxisAngle:0,fPolarOffset:.04,fPolarTextSize:.04,fRadialOffset:.025,fRadialTextSize:.035,fRwrmin:0,fRwrmax:1,fRwtmin:0,fRwtmax:2*Math.PI,fTickpolarSize:.02,fPolarLabelFont:62,fRadialLabelFont:62,fCutRadial:0,fNdivRad:508,fNdivPol:508});break;case dt:Xt(B,i),Xt(H,i),Xt(R,i),T(i,{fLastPoint:-1,fN:0,fOption:"",fX:null,fY:null});break;case yt:Xt(ct,i),Xt(G,i),T(i,{fChopt:"",fFunctionName:"",fGridLength:0,fLabelColor:1,fLabelFont:42,fLabelOffset:.005,fLabelSize:.035,fName:"",fNdiv:12,fTickSize:.02,fTimeFormat:"",fTitle:"",fTitleOffset:1,fTitleSize:.035,fWmax:100,fWmin:0});break;case ut:T(i,{fLeftMargin:M.fPadLeftMargin,fRightMargin:M.fPadRightMargin,fBottomMargin:M.fPadBottomMargin,fTopMargin:M.fPadTopMargin,fXfile:2,fYfile:2,fAfile:1,fXstat:.99,fYstat:.99,fAstat:2,fFrameFillColor:M.fFrameFillColor,fFrameFillStyle:M.fFrameFillStyle,fFrameLineColor:M.fFrameLineColor,fFrameLineWidth:M.fFrameLineWidth,fFrameLineStyle:M.fFrameLineStyle,fFrameBorderSize:M.fFrameBorderSize,fFrameBorderMode:M.fFrameBorderMode});break;case gt:Xt(B,i),Xt(H,i),Xt(R,i),Xt(ut,i),T(i,{fFillColor:M.fPadColor,fFillStyle:1001,fX1:0,fY1:0,fX2:1,fY2:1,fXtoAbsPixelk:1,fXtoPixelk:1,fXtoPixel:1,fYtoAbsPixelk:1,fYtoPixelk:1,fYtoPixel:1,fUtoAbsPixelk:1,fUtoPixelk:1,fUtoPixel:1,fVtoAbsPixelk:1,fVtoPixelk:1,fVtoPixel:1,fAbsPixeltoXk:1,fPixeltoXk:1,fPixeltoX:1,fAbsPixeltoYk:1,fPixeltoYk:1,fPixeltoY:1,fXlowNDC:0,fYlowNDC:0,fXUpNDC:0,fYUpNDC:0,fWNDC:1,fHNDC:1,fAbsXlowNDC:0,fAbsYlowNDC:0,fAbsWNDC:1,fAbsHNDC:1,fUxmin:0,fUymin:0,fUxmax:0,fUymax:0,fTheta:30,fPhi:30,fAspectRatio:0,fNumber:0,fLogx:M.fOptLogx,fLogy:M.fOptLogy,fLogz:M.fOptLogz,fTickx:M.fPadTickX,fTicky:M.fPadTickY,fPadPaint:0,fCrosshair:0,fCrosshairPos:0,fBorderSize:M.fPadBorderSize,fBorderMode:M.fPadBorderMode,fModified:!1,fGridx:M.fPadGridX,fGridy:M.fPadGridY,fAbsCoord:!1,fEditable:!0,fFixedAspectRatio:!1,fPrimitives:Xt(E),fExecs:null,fName:"pad",fTitle:"canvas"});break;case xt:T(i,{fXBetween:2,fYBetween:2,fTitleFromTop:1.2,fXdate:.2,fYdate:.3,fAdate:1});break;case pt:Xt(gt,i),T(i,{fFillColor:M.fCanvasColor,fFillStyle:1001,fNumPaletteColor:0,fNextPaletteColor:0,fDISPLAY:"$DISPLAY",fDoubleBuffer:0,fRetained:!0,fXsizeUser:0,fYsizeUser:0,fXsizeReal:20,fYsizeReal:10,fWindowTopX:0,fWindowTopY:0,fWindowWidth:0,fWindowHeight:0,fBorderSize:M.fCanvasBorderSize,fBorderMode:M.fCanvasBorderMode,fCw:w.CanvasWidth,fCh:w.CanvasHeight,fCatt:Xt(xt),kMoveOpaque:!0,kResizeOpaque:!0,fHighLightColor:5,fBatch:!0,kShowEventStatus:!1,kAutoExec:!0,kMenuBar:!0});break;case"TGeoVolume":Xt(I,i),Xt(H,i),Xt(R,i),T(i,{fGeoAtt:0,fFinder:null,fMedium:null,fNodes:null,fNtotal:0,fNumber:0,fRefCount:0,fShape:null,fVoxels:null});break;case Nt:Xt(I,i),T(i,{fGeoAtt:0,fMother:null,fNovlp:0,fNumber:0,fOverlaps:null,fVolume:null});break;case"TGeoNodeMatrix":Xt(Nt,i),T(i,{fMatrix:null});break;case"TGeoTrack":Xt(B,i),Xt(H,i),Xt(Y,i),T(i,{fGeoAtt:0,fNpoints:0,fPoints:[]});break;case"TPolyLine3D":Xt(B,i),Xt(H,i),T(i,{fLastPoint:-1,fN:0,fOption:"",fP:[]});break;case"TPolyMarker3D":Xt(B,i),Xt(Y,i),T(i,{fLastPoint:-1,fN:0,fName:"",fOption:"",fP:[]})}return i._typename=t,$(i,t),i}function Ht(t,e,i,n){const s=Xt(t);if(!s.fXaxis||!s.fYaxis||!s.fZaxis)return null;switch(s.fName="hist",s.fTitle="title",e&&T(s.fXaxis,{fNbins:e,fXmin:0,fXmax:e}),i&&T(s.fYaxis,{fNbins:i,fXmin:0,fXmax:i}),parseInt(t[2])){case 1:e&&(s.fNcells=e+2);break;case 2:e&&i&&(s.fNcells=(e+2)*(i+2))}if(s.fNcells>0){switch(t[3]){case"C":s.fArray=new Int8Array(s.fNcells);break;case"S":s.fArray=new Int16Array(s.fNcells);break;case"I":s.fArray=new Int32Array(s.fNcells);break;case"F":s.fArray=new Float32Array(s.fNcells);break;case"L":case"D":s.fArray=new Float64Array(s.fNcells);break;default:s.fArray=new Array(s.fNcells)}s.fArray.fill(0)}return s}function Rt(t,e){if(t&&l(e))if(e.indexOf(";")<0)t.fTitle=e;else{const i=e.split(";");t.fTitle=i[0],i.length>1&&(t.fXaxis.fTitle=i[1]),i.length>2&&(t.fYaxis.fTitle=i[2]),i.length>3&&(t.fZaxis.fTitle=i[3])}}function Yt(t,e){const i=Xt(dt);return i.fN=t,i.fX=new Int32Array(t),i.fY=new Int32Array(t),i}const Gt={};function Ut(t,e,i){t.prototype=e.prototype=i,i.constructor=t}function Wt(t,e){var i=Object.create(t.prototype);for(var n in e)i[n]=e[n];return i}function Zt(){}$=function(t,e){T(t,function(t,e){let i=Gt[t];const n=void 0!==i;return n||(i={}),t!==B&&t!==I&&void 0===e?.fBits||void 0===i.TestBit&&(i.TestBit=function(t){return Boolean(this.fBits&t)},i.InvertBit=function(t){this.fBits^=16777215&t},i.SetBit=function(t,e=!0){this.fBits=e?this.fBits|t:this.fBits&~t}),n||(t!==E&&t!==j||(i.Clear=function(){this.arr=[],this.opt=[]},i.Add=function(t,e){this.arr.push(t),this.opt.push(l(e)?e:"")},i.AddFirst=function(t,e){this.arr.unshift(t),this.opt.unshift(l(e)?e:"")},i.RemoveAt=function(t){this.arr.splice(t,1),this.opt.splice(t,1)}),t!==J&&t!==Q||(i.AddText=function(t){const e=Xt(ht);e.fTitle=t,e.fTextAlign=0,e.fTextColor=0,e.fTextFont=0,e.fTextSize=0,this.fLines.Add(e)},i.Clear=function(){this.fLines.Clear()}),0!==t.indexOf(kt)&&"TF12"!==t&&t!==Tt&&t!==$t||(i.addFormula=function(t){t&&(void 0===this.formulas&&(this.formulas=[]),this.formulas.push(t))},i.GetParName=function(t){if(this.fParams?.fParNames)return this.fParams.fParNames[t];if(this.fFormula?.fParams)for(let e=0,i=this.fFormula.fParams;e<i.length;++e)if(i[e].second===t)return i[e].first;return this.fNames&&this.fNames[t]?this.fNames[t]:`p${t}`},i.GetParValue=function(t){return this.fParams?.fParameters?this.fParams.fParameters[t]:this.fFormula?.fClingParameters?this.fFormula.fClingParameters[t]:this.fParams?this.fParams[t]:void 0},i.GetParError=function(t){return this.fParErrors?this.fParErrors[t]:void 0},i.GetNumPars=function(){return this.fNpar}),0!==t.indexOf(W)&&t!==V||t===q||"TGraphTime"===t||(i.IsInside=function(t,e){const i=this.fX,n=this.fY;let s=0,r=this.fNpoints-1,a=!1;for(;s<this.fNpoints;++s)(n[s]<e&&n[r]>=e||n[r]<e&&n[s]>=e)&&i[s]+(e-n[s])/(n[r]-n[s])*(i[r]-i[s])<t&&(a=!a),r=s;return a}),0!==t.indexOf(vt)&&0!==t.indexOf(Ct)&&0!==t.indexOf(Pt)||(i.getBinError=function(t){return t>=this.fNcells&&(t=this.fNcells-1),t<0&&(t=0),t<this.fSumw2.length?Math.sqrt(this.fSumw2[t]):Math.sqrt(Math.abs(this.fArray[t]))},i.setBinContent=function(t,e){this.fEntries++,this.fTsumw=0,t>=0&&t<this.fArray.length&&(this.fArray[t]=e)}),0===t.indexOf(vt)&&(i.getBin=function(t){return t},i.getBinContent=function(t){return this.fArray[t]},i.Fill=function(t,e){const i=this.fXaxis,n=Math.max(0,1+Math.min(i.fNbins,Math.floor((t-i.fXmin)/(i.fXmax-i.fXmin)*i.fNbins)));this.fArray[n]+=e??1,this.fEntries++}),0===t.indexOf(Ct)&&(i.getBin=function(t,e){return t+(this.fXaxis.fNbins+2)*e},i.getBinContent=function(t,e){return this.fArray[this.getBin(t,e)]},i.Fill=function(t,e,i){const n=this.fXaxis,s=this.fYaxis,r=Math.max(0,1+Math.min(n.fNbins,Math.floor((t-n.fXmin)/(n.fXmax-n.fXmin)*n.fNbins))),a=Math.max(0,1+Math.min(s.fNbins,Math.floor((e-s.fXmin)/(s.fXmax-s.fXmin)*s.fNbins)));this.fArray[r+(n.fNbins+2)*a]+=i??1,this.fEntries++}),0===t.indexOf(Pt)&&(i.getBin=function(t,e,i){return t+(this.fXaxis.fNbins+2)*(e+(this.fYaxis.fNbins+2)*i)},i.getBinContent=function(t,e,i){return this.fArray[this.getBin(t,e,i)]},i.Fill=function(t,e,i,n){const s=this.fXaxis,r=this.fYaxis,a=this.fZaxis,o=Math.max(0,1+Math.min(s.fNbins,Math.floor((t-s.fXmin)/(s.fXmax-s.fXmin)*s.fNbins))),h=Math.max(0,1+Math.min(r.fNbins,Math.floor((e-r.fXmin)/(r.fXmax-r.fXmin)*r.fNbins))),l=Math.max(0,1+Math.min(a.fNbins,Math.floor((i-a.fXmin)/(a.fXmax-a.fXmin)*a.fNbins)));this.fArray[o+(s.fNbins+2)*(h+(r.fNbins+2)*l)]+=n??1,this.fEntries++}),t!==gt&&t!==pt||(i.Divide=function(t,e,i=.01,n=.01,s=0){if(!e){const i=t;if(i<2)return this;(t=e=Math.round(Math.sqrt(i)))*e<i&&(t+=1)}if(t*e<2)return 0;this.fPrimitives.Clear();const r=1/e,a=1/t;let o=0;for(let h=0;h<e;h++){const e=1-h*r-n,l=Math.max(0,e-r+2*n);if(!(l>e))for(let n=0;n<t;n++){const t=n*a+i,r=t+a-2*i;if(t>r)continue;o++;const h=Xt(gt);h.fName=h.fTitle=`${this.fName}_${o}`,h.fNumber=o,this._typename!==pt?(h.fAbsWNDC=(r-t)*this.fAbsWNDC,h.fAbsHNDC=(e-l)*this.fAbsHNDC,h.fAbsXlowNDC=this.fAbsXlowNDC+t*this.fAbsWNDC,h.fAbsYlowNDC=this.fAbsYlowNDC+l*this.fAbsHNDC):(h.fAbsWNDC=r-t,h.fAbsHNDC=e-l,h.fAbsXlowNDC=t,h.fAbsYlowNDC=l),h.fFillColor=s||this.fFillColor,this.fPrimitives.Add(h)}}return t*e},i.GetPad=function(t){return this.fPrimitives.arr.find(e=>e._typename===gt&&e.fNumber===t)}),0===t.indexOf(zt)&&(t===Ot?(i.getBin=function(t,e,i){return t+(this.fXaxis.fNbins+2)*(e+(this.fYaxis.fNbins+2)*i)},i.getBinContent=function(t,e,i){const n=this.getBin(t,e,i);return n<0||n>=this.fNcells||this.fBinEntries[n]<1e-300?0:this.fArray?this.fArray[n]/this.fBinEntries[n]:0},i.getBinEntries=function(t,e,i){const n=this.getBin(t,e,i);return n<0||n>=this.fNcells?0:this.fBinEntries[n]}):t===Ft?(i.getBin=function(t,e){return t+(this.fXaxis.fNbins+2)*e},i.getBinContent=function(t,e){const i=this.getBin(t,e);return i<0||i>=this.fNcells||this.fBinEntries[i]<1e-300?0:this.fArray?this.fArray[i]/this.fBinEntries[i]:0},i.getBinEntries=function(t,e){const i=this.getBin(t,e);return i<0||i>=this.fNcells?0:this.fBinEntries[i]}):(i.getBin=function(t){return t},i.getBinContent=function(t){return t<0||t>=this.fNcells||this.fBinEntries[t]<1e-300?0:this.fArray?this.fArray[t]/this.fBinEntries[t]:0},i.getBinEntries=function(t){return t<0||t>=this.fNcells?0:this.fBinEntries[t]}),i.getBinEffectiveEntries=function(t){if(t<0||t>=this.fNcells)return 0;const e=this.fBinEntries[t];if(!this.fBinSumw2||this.fBinSumw2.length!==this.fNcells)return e;const i=this.fBinSumw2[t];return i>0?e*e/i:0},i.getBinError=function(t){if(t<0||t>=this.fNcells)return 0;const e=this.fArray[t],i=this.fBinEntries[t],n=this.fSumw2[t],s=this.getBinEffectiveEntries(t);if(i<1e-300)return 0;const r=1,a=2,o=3;if(this.fErrorMode===o)return 1/Math.sqrt(i);const h=e/i,l=Math.sqrt(Math.abs(n/i-h**2));return this.fErrorMode===a?l?l/Math.sqrt(s):1/Math.sqrt(12*s):this.fErrorMode===r?l:l/Math.sqrt(s)}),t===bt&&(i.GetBinLowEdge=function(t){return this.fNbins<=0?0:this.fXbins.length?t>0&&t<=this.fNbins+1?this.fXbins[t-1]:0===t?2*this.fXbins[0]-this.fXbins[1]:t===this.fNbins+2?2*this.fXbins[t-2]-this.fXbins[t-3]:0:this.fXmin+(t-1)*(this.fXmax-this.fXmin)/this.fNbins},i.GetBinCenter=function(t){return this.fNbins<=0?0:this.fXbins.length?t>0&&t<=this.fNbins?(this.fXbins[t-1]+this.fXbins[t])/2:0===t?1.5*this.fXbins[0]-.5*this.fXbins[1]:t===this.fNbins+1?1.5*this.fXbins[t-1]-.5*this.fXbins[t-2]:0:this.fXmin+(t-.5)*(this.fXmax-this.fXmin)/this.fNbins}),0===t.indexOf(At+"Math::LorentzVector")&&(i.Px=i.X=function(){return this.fCoordinates.Px()},i.Py=i.Y=function(){return this.fCoordinates.Py()},i.Pz=i.Z=function(){return this.fCoordinates.Pz()},i.E=i.T=function(){return this.fCoordinates.E()},i.M2=function(){return this.fCoordinates.M2()},i.M=function(){return this.fCoordinates.M()},i.R=i.P=function(){return this.fCoordinates.R()},i.P2=function(){return this.P()*this.P()},i.Pt=i.pt=function(){return Math.sqrt(this.P2())},i.Phi=i.phi=function(){return Math.atan2(this.fCoordinates.Py(),this.fCoordinates.Px())},i.Eta=i.eta=function(){return Math.atanh(this.Pz()/this.P())}),0===t.indexOf(At+"Math::PxPyPzE4D")&&(i.Px=i.X=function(){return this.fX},i.Py=i.Y=function(){return this.fY},i.Pz=i.Z=function(){return this.fZ},i.E=i.T=function(){return this.fT},i.P2=function(){return this.fX**2+this.fY**2+this.fZ**2},i.R=i.P=function(){return Math.sqrt(this.P2())},i.Mag2=i.M2=function(){return this.fT**2-this.fX**2-this.fY**2-this.fZ**2},i.Mag=i.M=function(){return this.M2()>=0?Math.sqrt(this.M2()):-Math.sqrt(-this.M2())},i.Perp2=i.Pt2=function(){return this.fX**2+this.fY**2},i.Pt=i.pt=function(){return Math.sqrt(this.P2())},i.Phi=i.phi=function(){return Math.atan2(this.fY,this.fX)},i.Eta=i.eta=function(){return Math.atanh(this.Pz/this.P())}),Gt[t]=i),i}(e||t._typename,t))},M.fXaxis=Xt(_t),M.fYaxis=Xt(_t),M.fZaxis=Xt(_t),s.jsroot={version:i,source_dir:u,settings:w,gStyle:M,parse:z,isBatchMode:p};var Vt=.7,qt=1/Vt,Kt="\\s*([+-]?\\d+)\\s*",Jt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Qt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",te=/^#([0-9a-f]{3,8})$/,ee=new RegExp(`^rgb\\(${Kt},${Kt},${Kt}\\)$`),ie=new RegExp(`^rgb\\(${Qt},${Qt},${Qt}\\)$`),ne=new RegExp(`^rgba\\(${Kt},${Kt},${Kt},${Jt}\\)$`),se=new RegExp(`^rgba\\(${Qt},${Qt},${Qt},${Jt}\\)$`),re=new RegExp(`^hsl\\(${Jt},${Qt},${Qt}\\)$`),ae=new RegExp(`^hsla\\(${Jt},${Qt},${Qt},${Jt}\\)$`),oe={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function he(){return this.rgb().formatHex()}function le(){return this.rgb().formatRgb()}function ce(t){var e,i;return t=(t+"").trim().toLowerCase(),(e=te.exec(t))?(i=e[1].length,e=parseInt(e[1],16),6===i?fe(e):3===i?new pe(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===i?de(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===i?de(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=ee.exec(t))?new pe(e[1],e[2],e[3],1):(e=ie.exec(t))?new pe(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=ne.exec(t))?de(e[1],e[2],e[3],e[4]):(e=se.exec(t))?de(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=re.exec(t))?ve(e[1],e[2]/100,e[3]/100,1):(e=ae.exec(t))?ve(e[1],e[2]/100,e[3]/100,e[4]):oe.hasOwnProperty(t)?fe(oe[t]):"transparent"===t?new pe(NaN,NaN,NaN,0):null}function fe(t){return new pe(t>>16&255,t>>8&255,255&t,1)}function de(t,e,i,n){return n<=0&&(t=e=i=NaN),new pe(t,e,i,n)}function ue(t){return t instanceof Zt||(t=ce(t)),t?new pe((t=t.rgb()).r,t.g,t.b,t.opacity):new pe}function ge(t,e,i,n){return 1===arguments.length?ue(t):new pe(t,e,i,null==n?1:n)}function pe(t,e,i,n){this.r=+t,this.g=+e,this.b=+i,this.opacity=+n}function me(){return`#${be(this.r)}${be(this.g)}${be(this.b)}`}function xe(){const t=ye(this.opacity);return`${1===t?"rgb(":"rgba("}${_e(this.r)}, ${_e(this.g)}, ${_e(this.b)}${1===t?")":`, ${t})`}`}function ye(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function _e(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function be(t){return((t=_e(t))<16?"0":"")+t.toString(16)}function ve(t,e,i,n){return n<=0?t=e=i=NaN:i<=0||i>=1?t=e=NaN:e<=0&&(t=NaN),new Me(t,e,i,n)}function we(t){if(t instanceof Me)return new Me(t.h,t.s,t.l,t.opacity);if(t instanceof Zt||(t=ce(t)),!t)return new Me;if(t instanceof Me)return t;var e=(t=t.rgb()).r/255,i=t.g/255,n=t.b/255,s=Math.min(e,i,n),r=Math.max(e,i,n),a=NaN,o=r-s,h=(r+s)/2;return o?(a=e===r?(i-n)/o+6*(i<n):i===r?(n-e)/o+2:(e-i)/o+4,o/=h<.5?r+s:2-r-s,a*=60):o=h>0&&h<1?0:a,new Me(a,o,h,t.opacity)}function Me(t,e,i,n){this.h=+t,this.s=+e,this.l=+i,this.opacity=+n}function Ce(t){return(t=(t||0)%360)<0?t+360:t}function Se(t){return Math.max(0,Math.min(1,t||0))}function Pe(t,e,i){return 255*(t<60?e+(i-e)*t/60:t<180?i:t<240?e+(i-e)*(240-t)/60:e)}Ut(Zt,ce,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:he,formatHex:he,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return we(this).formatHsl()},formatRgb:le,toString:le}),Ut(pe,ge,Wt(Zt,{brighter(t){return t=null==t?qt:Math.pow(qt,t),new pe(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?Vt:Math.pow(Vt,t),new pe(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new pe(_e(this.r),_e(this.g),_e(this.b),ye(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:me,formatHex:me,formatHex8:function(){return`#${be(this.r)}${be(this.g)}${be(this.b)}${be(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:xe,toString:xe})),Ut(Me,function(t,e,i,n){return 1===arguments.length?we(t):new Me(t,e,i,null==n?1:n)},Wt(Zt,{brighter(t){return t=null==t?qt:Math.pow(qt,t),new Me(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?Vt:Math.pow(Vt,t),new Me(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,i=this.l,n=i+(i<.5?i:1-i)*e,s=2*i-n;return new pe(Pe(t>=240?t-240:t+120,s,n),Pe(t,s,n),Pe(t<120?t+240:t-120,s,n),this.opacity)},clamp(){return new Me(Ce(this.h),Se(this.s),Se(this.l),ye(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=ye(this.opacity);return`${1===t?"hsl(":"hsla("}${Ce(this.h)}, ${100*Se(this.s)}%, ${100*Se(this.l)}%${1===t?")":`, ${t})`}`}}));const ke=Math.PI/180,Te=180/Math.PI,$e=.96422,ze=.82521,Fe=4/29,Oe=6/29,Ne=3*Oe*Oe,Ae=Oe*Oe*Oe;function De(t){if(t instanceof Le)return new Le(t.l,t.a,t.b,t.opacity);if(t instanceof Xe)return He(t);t instanceof pe||(t=ue(t));var e,i,n=je(t.r),s=je(t.g),r=je(t.b),a=Be((.2225045*n+.7168786*s+.0606169*r)/1);return n===s&&s===r?e=i=a:(e=Be((.4360747*n+.3850649*s+.1430804*r)/$e),i=Be((.0139322*n+.0971045*s+.7141733*r)/ze)),new Le(116*a-16,500*(e-a),200*(a-i),t.opacity)}function Le(t,e,i,n){this.l=+t,this.a=+e,this.b=+i,this.opacity=+n}function Be(t){return t>Ae?Math.pow(t,1/3):t/Ne+Fe}function Ie(t){return t>Oe?t*t*t:Ne*(t-Fe)}function Ee(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function je(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Xe(t,e,i,n){this.h=+t,this.c=+e,this.l=+i,this.opacity=+n}function He(t){if(isNaN(t.h))return new Le(t.l,0,0,t.opacity);var e=t.h*ke;return new Le(t.l,Math.cos(e)*t.c,Math.sin(e)*t.c,t.opacity)}Ut(Le,function(t,e,i,n){return 1===arguments.length?De(t):new Le(t,e,i,null==n?1:n)},Wt(Zt,{brighter(t){return new Le(this.l+18*(null==t?1:t),this.a,this.b,this.opacity)},darker(t){return new Le(this.l-18*(null==t?1:t),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,i=isNaN(this.b)?t:t-this.b/200;return new pe(Ee(3.1338561*(e=$e*Ie(e))-1.6168667*(t=1*Ie(t))-.4906146*(i=ze*Ie(i))),Ee(-.9787684*e+1.9161415*t+.033454*i),Ee(.0719453*e-.2289914*t+1.4052427*i),this.opacity)}})),Ut(Xe,function(t,e,i,n){return 1===arguments.length?function(t){if(t instanceof Xe)return new Xe(t.h,t.c,t.l,t.opacity);if(t instanceof Le||(t=De(t)),0===t.a&&0===t.b)return new Xe(NaN,0<t.l&&t.l<100?0:NaN,t.l,t.opacity);var e=Math.atan2(t.b,t.a)*Te;return new Xe(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}(t):new Xe(t,e,i,null==n?1:n)},Wt(Zt,{brighter(t){return new Xe(this.h,this.c,this.l+18*(null==t?1:t),this.opacity)},darker(t){return new Xe(this.h,this.c,this.l-18*(null==t?1:t),this.opacity)},rgb(){return He(this).rgb()}}));var Re=-.14861,Ye=1.78277,Ge=-.29227,Ue=-.90649,We=1.97294,Ze=We*Ue,Ve=We*Ye,qe=Ye*Ge-Ue*Re;function Ke(t,e,i,n){this.h=+t,this.s=+e,this.l=+i,this.opacity=+n}Ut(Ke,function(t,e,i,n){return 1===arguments.length?function(t){if(t instanceof Ke)return new Ke(t.h,t.s,t.l,t.opacity);t instanceof pe||(t=ue(t));var e=t.r/255,i=t.g/255,n=t.b/255,s=(qe*n+Ze*e-Ve*i)/(qe+Ze-Ve),r=n-s,a=(We*(i-s)-Ge*r)/Ue,o=Math.sqrt(a*a+r*r)/(We*s*(1-s)),h=o?Math.atan2(a,r)*Te-120:NaN;return new Ke(h<0?h+360:h,o,s,t.opacity)}(t):new Ke(t,e,i,null==n?1:n)},Wt(Zt,{brighter(t){return t=null==t?qt:Math.pow(qt,t),new Ke(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?Vt:Math.pow(Vt,t),new Ke(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=isNaN(this.h)?0:(this.h+120)*ke,e=+this.l,i=isNaN(this.s)?0:this.s*e*(1-e),n=Math.cos(t),s=Math.sin(t);return new pe(255*(e+i*(Re*n+Ye*s)),255*(e+i*(Ge*n+Ue*s)),255*(e+i*(We*n)),this.opacity)}}));var Je=Math.abs,Qe=Math.cos,ti=Math.sin,ei=Math.PI,ii=ei/2,ni=2*ei,si=Math.max,ri=1e-12;function ai(t,e){return Array.from({length:e-t},(e,i)=>t+i)}function oi(){return function(t){var e=0,i=null,n=null,s=null;function r(r){var a,o=r.length,h=new Array(o),l=ai(0,o),c=new Array(o*o),f=new Array(o),d=0;r=Float64Array.from({length:o*o},(t,e)=>r[e/o|0][e%o]);for(let e=0;e<o;++e){let i=0;for(let n=0;n<o;++n)i+=r[e*o+n]+t*r[n*o+e];d+=h[e]=i}a=(d=si(0,ni-e*o)/d)?e:ni/o;{let t=0;i&&l.sort((t,e)=>i(h[t],h[e]));for(const e of l){const i=t;{const s=ai(0,o).filter(t=>r[e*o+t]||r[t*o+e]);n&&s.sort((t,i)=>n(r[e*o+t],r[e*o+i]));for(const i of s){let n;if(e<i?(n=c[e*o+i]||(c[e*o+i]={source:null,target:null}),n.source={index:e,startAngle:t,endAngle:t+=r[e*o+i]*d,value:r[e*o+i]}):(n=c[i*o+e]||(c[i*o+e]={source:null,target:null}),n.target={index:e,startAngle:t,endAngle:t+=r[e*o+i]*d,value:r[e*o+i]},e===i&&(n.source=n.target)),n.source&&n.target&&n.source.value<n.target.value){const t=n.source;n.source=n.target,n.target=t}}f[e]={index:e,startAngle:i,endAngle:t,value:h[e]}}t+=a}}return(c=Object.values(c)).groups=f,s?c.sort(s):c}return r.padAngle=function(t){return arguments.length?(e=si(0,t),r):e},r.sortGroups=function(t){return arguments.length?(i=t,r):i},r.sortSubgroups=function(t){return arguments.length?(n=t,r):n},r.sortChords=function(t){return arguments.length?(null==t?s=null:(e=t,s=function(t,i){return e(t.source.value+t.target.value,i.source.value+i.target.value)})._=t,r):s&&s._;var e},r}(!1)}const hi=Math.PI,li=2*hi,ci=1e-6,fi=li-ci;function di(t){this._+=t[0];for(let e=1,i=t.length;e<i;++e)this._+=arguments[e]+t[e]}class ui{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=null==t?di:function(t){let e=Math.floor(t);if(!(e>=0))throw new Error(`invalid digits: ${t}`);if(e>15)return di;const i=10**e;return function(t){this._+=t[0];for(let e=1,n=t.length;e<n;++e)this._+=Math.round(arguments[e]*i)/i+t[e]}}(t)}moveTo(t,e){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,e){this._append`L${this._x1=+t},${this._y1=+e}`}quadraticCurveTo(t,e,i,n){this._append`Q${+t},${+e},${this._x1=+i},${this._y1=+n}`}bezierCurveTo(t,e,i,n,s,r){this._append`C${+t},${+e},${+i},${+n},${this._x1=+s},${this._y1=+r}`}arcTo(t,e,i,n,s){if(t=+t,e=+e,i=+i,n=+n,(s=+s)<0)throw new Error(`negative radius: ${s}`);let r=this._x1,a=this._y1,o=i-t,h=n-e,l=r-t,c=a-e,f=l*l+c*c;if(null===this._x1)this._append`M${this._x1=t},${this._y1=e}`;else if(f>ci)if(Math.abs(c*o-h*l)>ci&&s){let d=i-r,u=n-a,g=o*o+h*h,p=d*d+u*u,m=Math.sqrt(g),x=Math.sqrt(f),y=s*Math.tan((hi-Math.acos((g+f-p)/(2*m*x)))/2),_=y/x,b=y/m;Math.abs(_-1)>ci&&this._append`L${t+_*l},${e+_*c}`,this._append`A${s},${s},0,0,${+(c*d>l*u)},${this._x1=t+b*o},${this._y1=e+b*h}`}else this._append`L${this._x1=t},${this._y1=e}`;else;}arc(t,e,i,n,s,r){if(t=+t,e=+e,r=!!r,(i=+i)<0)throw new Error(`negative radius: ${i}`);let a=i*Math.cos(n),o=i*Math.sin(n),h=t+a,l=e+o,c=1^r,f=r?n-s:s-n;null===this._x1?this._append`M${h},${l}`:(Math.abs(this._x1-h)>ci||Math.abs(this._y1-l)>ci)&&this._append`L${h},${l}`,i&&(f<0&&(f=f%li+li),f>fi?this._append`A${i},${i},0,1,${c},${t-a},${e-o}A${i},${i},0,1,${c},${this._x1=h},${this._y1=l}`:f>ci&&this._append`A${i},${i},0,${+(f>=hi)},${c},${this._x1=t+i*Math.cos(s)},${this._y1=e+i*Math.sin(s)}`)}rect(t,e,i,n){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}h${i=+i}v${+n}h${-i}Z`}toString(){return this._}}function gi(){return new ui}gi.prototype=ui.prototype;var pi=Array.prototype.slice;function mi(t){return function(){return t}}function xi(t){return t.source}function yi(t){return t.target}function _i(t){return t.radius}function bi(t){return t.startAngle}function vi(t){return t.endAngle}function wi(){return 0}function Mi(){return function(){var t=xi,e=yi,i=_i,n=_i,s=bi,r=vi,a=wi,o=null;function h(){var h,l=t.apply(this,arguments),c=e.apply(this,arguments),f=a.apply(this,arguments)/2,d=pi.call(arguments),u=+i.apply(this,(d[0]=l,d)),g=s.apply(this,d)-ii,p=r.apply(this,d)-ii,m=+n.apply(this,(d[0]=c,d)),x=s.apply(this,d)-ii,y=r.apply(this,d)-ii;if(o||(o=h=gi()),f>ri&&(Je(p-g)>2*f+ri?p>g?(g+=f,p-=f):(g-=f,p+=f):g=p=(g+p)/2,Je(y-x)>2*f+ri?y>x?(x+=f,y-=f):(x-=f,y+=f):x=y=(x+y)/2),o.moveTo(u*Qe(g),u*ti(g)),o.arc(0,0,u,g,p),g===x&&p===y||(o.quadraticCurveTo(0,0,m*Qe(x),m*ti(x)),o.arc(0,0,m,x,y)),o.quadraticCurveTo(0,0,u*Qe(g),u*ti(g)),o.closePath(),h)return o=null,h+""||null}return h.radius=function(t){return arguments.length?(i=n="function"==typeof t?t:mi(+t),h):i},h.sourceRadius=function(t){return arguments.length?(i="function"==typeof t?t:mi(+t),h):i},h.targetRadius=function(t){return arguments.length?(n="function"==typeof t?t:mi(+t),h):n},h.startAngle=function(t){return arguments.length?(s="function"==typeof t?t:mi(+t),h):s},h.endAngle=function(t){return arguments.length?(r="function"==typeof t?t:mi(+t),h):r},h.padAngle=function(t){return arguments.length?(a="function"==typeof t?t:mi(+t),h):a},h.source=function(e){return arguments.length?(t=e,h):t},h.target=function(t){return arguments.length?(e=t,h):e},h.context=function(t){return arguments.length?(o=null==t?null:t,h):o},h}()}var Ci={value:()=>{}};function Si(){for(var t,e=0,i=arguments.length,n={};e<i;++e){if(!(t=arguments[e]+"")||t in n||/[\s.]/.test(t))throw new Error("illegal type: "+t);n[t]=[]}return new Pi(n)}function Pi(t){this._=t}function ki(t,e){for(var i,n=0,s=t.length;n<s;++n)if((i=t[n]).name===e)return i.value}function Ti(t,e,i){for(var n=0,s=t.length;n<s;++n)if(t[n].name===e){t[n]=Ci,t=t.slice(0,n).concat(t.slice(n+1));break}return null!=i&&t.push({name:e,value:i}),t}Pi.prototype=Si.prototype={constructor:Pi,on:function(t,e){var i,n,s=this._,r=(n=s,(t+"").trim().split(/^|\s+/).map(function(t){var e="",i=t.indexOf(".");if(i>=0&&(e=t.slice(i+1),t=t.slice(0,i)),t&&!n.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:e}})),a=-1,o=r.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++a<o;)if(i=(t=r[a]).type)s[i]=Ti(s[i],t.name,e);else if(null==e)for(i in s)s[i]=Ti(s[i],t.name,null);return this}for(;++a<o;)if((i=(t=r[a]).type)&&(i=ki(s[i],t.name)))return i},copy:function(){var t={},e=this._;for(var i in e)t[i]=e[i].slice();return new Pi(t)},call:function(t,e){if((i=arguments.length-2)>0)for(var i,n,s=new Array(i),r=0;r<i;++r)s[r]=arguments[r+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(r=0,i=(n=this._[t]).length;r<i;++r)n[r].value.apply(e,s)},apply:function(t,e,i){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var n=this._[t],s=0,r=n.length;s<r;++s)n[s].value.apply(e,i)}};var $i="http://www.w3.org/1999/xhtml",zi={svg:"http://www.w3.org/2000/svg",xhtml:$i,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Fi(t){var e=t+="",i=e.indexOf(":");return i>=0&&"xmlns"!==(e=t.slice(0,i))&&(t=t.slice(i+1)),zi.hasOwnProperty(e)?{space:zi[e],local:t}:t}function Oi(t){return function(){var e=this.ownerDocument,i=this.namespaceURI;return i===$i&&e.documentElement.namespaceURI===$i?e.createElement(t):e.createElementNS(i,t)}}function Ni(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function Ai(t){var e=Fi(t);return(e.local?Ni:Oi)(e)}function Di(){}function Li(t){return null==t?Di:function(){return this.querySelector(t)}}function Bi(){return[]}function Ii(t){return null==t?Bi:function(){return this.querySelectorAll(t)}}function Ei(t){return function(){return null==(e=t.apply(this,arguments))?[]:Array.isArray(e)?e:Array.from(e);var e}}function ji(t){return function(){return this.matches(t)}}function Xi(t){return function(e){return e.matches(t)}}var Hi=Array.prototype.find;function Ri(){return this.firstElementChild}var Yi=Array.prototype.filter;function Gi(){return Array.from(this.children)}function Ui(t){return new Array(t.length)}function Wi(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function Zi(t,e,i,n,s,r){for(var a,o=0,h=e.length,l=r.length;o<l;++o)(a=e[o])?(a.__data__=r[o],n[o]=a):i[o]=new Wi(t,r[o]);for(;o<h;++o)(a=e[o])&&(s[o]=a)}function Vi(t,e,i,n,s,r,a){var o,h,l,c=new Map,f=e.length,d=r.length,u=new Array(f);for(o=0;o<f;++o)(h=e[o])&&(u[o]=l=a.call(h,h.__data__,o,e)+"",c.has(l)?s[o]=h:c.set(l,h));for(o=0;o<d;++o)l=a.call(t,r[o],o,r)+"",(h=c.get(l))?(n[o]=h,h.__data__=r[o],c.delete(l)):i[o]=new Wi(t,r[o]);for(o=0;o<f;++o)(h=e[o])&&c.get(u[o])===h&&(s[o]=h)}function qi(t){return t.__data__}function Ki(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}function Ji(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function Qi(t){return function(){this.removeAttribute(t)}}function tn(t){return function(){this.removeAttributeNS(t.space,t.local)}}function en(t,e){return function(){this.setAttribute(t,e)}}function nn(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function sn(t,e){return function(){var i=e.apply(this,arguments);null==i?this.removeAttribute(t):this.setAttribute(t,i)}}function rn(t,e){return function(){var i=e.apply(this,arguments);null==i?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,i)}}function an(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function on(t){return function(){this.style.removeProperty(t)}}function hn(t,e,i){return function(){this.style.setProperty(t,e,i)}}function ln(t,e,i){return function(){var n=e.apply(this,arguments);null==n?this.style.removeProperty(t):this.style.setProperty(t,n,i)}}function cn(t,e){return t.st