@backtest-kit/ui 14.1.0 → 15.0.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/README.md +273 -273
- package/build/index.cjs +28 -8
- package/build/index.mjs +28 -8
- package/build/modules/frontend/build/3rdparty/ace_1.4.12/ace.js +21337 -21337
- package/build/modules/frontend/build/3rdparty/ace_1.4.12/mode-javascript.js +797 -797
- package/build/modules/frontend/build/3rdparty/ace_1.4.12/theme-chrome.js +137 -137
- package/build/modules/frontend/build/3rdparty/ace_1.4.12/theme-twilight.js +115 -115
- package/build/modules/frontend/build/3rdparty/ace_1.4.12/worker-javascript.js +15012 -15012
- package/build/modules/frontend/build/3rdparty/qfchart_0.8.7/echarts.min.js +45 -45
- package/build/modules/frontend/build/assets/{Article-CpU7DBcT.js → Article-BFa1r6-4.js} +1 -1
- package/build/modules/frontend/build/assets/{Background-DISIt7NA.js → Background-C0snDG25.js} +1 -1
- package/build/modules/frontend/build/assets/{IconPhoto-Czod_jkW.js → IconPhoto-CTTANJQT.js} +1 -1
- package/build/modules/frontend/build/assets/{KeyboardArrowLeft-BUZ_pXI5.js → KeyboardArrowLeft-vg5fS39b.js} +1 -1
- package/build/modules/frontend/build/assets/{PictureAsPdfOutlined-BgifaQ0L.js → PictureAsPdfOutlined-B1bBHTk-.js} +1 -1
- package/build/modules/frontend/build/assets/{Refresh-3cixHjvW.js → Refresh-BrRXF_OY.js} +1 -1
- package/build/modules/frontend/build/assets/emitters-CzPcqIDz.js +1 -0
- package/build/modules/frontend/build/assets/{hasRouteMatch-CqJJG3sx.js → hasRouteMatch-D81_5Zia.js} +1 -1
- package/build/modules/frontend/build/assets/{html2canvas-Ds2vwzb-.js → html2canvas-CeYsQ7Ia.js} +1 -1
- package/build/modules/frontend/build/assets/{index-pxXO4P81.js → index-B8jbArE_.js} +1 -1
- package/build/modules/frontend/build/assets/{index-B1plXuf6.js → index-BGch4vTY.js} +1 -1
- package/build/modules/frontend/build/assets/index-BNHew1fQ.js +1 -0
- package/build/modules/frontend/build/assets/index-BUbFRdFe.js +1 -0
- package/build/modules/frontend/build/assets/{index-C8oIDQdm.js → index-CYxbx7rx.js} +1 -1
- package/build/modules/frontend/build/assets/{index-BI3k7b1T.js → index-Cgx-XS5d.js} +10 -10
- package/build/modules/frontend/build/assets/index-DKA1GI73.js +1 -0
- package/build/modules/frontend/build/assets/{index-DwO4-4_F.js → index-DR-YErQ2.js} +1 -1
- package/build/modules/frontend/build/assets/{index-BMq2INDq.js → index-D_qcRzkR.js} +1 -1
- package/build/modules/frontend/build/assets/{index-VxkdhxAi.js → index-DwTK5Bv3.js} +1 -1
- package/build/modules/frontend/build/assets/{index-DJ7B8Och.js → index-JWp04bbN.js} +1 -1
- package/build/modules/frontend/build/assets/{index-BYnSX2YX.js → index-lJLcrenO.js} +1 -1
- package/build/modules/frontend/build/assets/{index-CA19hrNH.js → index-xjrsOJPu.js} +1 -1
- package/build/modules/frontend/build/assets/{index.es-DPOJOdbj.js → index.es-CjcEW2lH.js} +1 -1
- package/build/modules/frontend/build/assets/{markdownit-C4X6Sysk.js → markdownit-D4PDy3DR.js} +1 -1
- package/build/modules/frontend/build/index.html +87 -87
- package/build/modules/frontend/build/manifest.json +23 -23
- package/package.json +118 -118
- package/build/modules/frontend/build/assets/emitters-DmNf0ttF.js +0 -1
- package/build/modules/frontend/build/assets/index-BYiuApxW.js +0 -1
- package/build/modules/frontend/build/assets/index-Cqt7co-7.js +0 -1
- package/build/modules/frontend/build/assets/index-ruSh1u75.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as e,f as t,x as i,i as n,X as a,a8 as o,O as r,R as l,Z as s,Y as d,$ as c,a0 as p,a2 as m,W as g,w as f,a9 as u,T as _,l as h,B as y,aa as C,P as E,ab as A,ac as x,a4 as b,D as w,ad as S,ae as M,af as R,ag as v,a7 as T,ah as O,ai as D,aj as N}from"./index-BI3k7b1T.js";import{h as L}from"./hasRouteMatch-CqJJG3sx.js";import{P as k}from"./PictureAsPdfOutlined-BgifaQ0L.js";import{C as I,R as B}from"./Refresh-3cixHjvW.js";import{K as P}from"./KeyboardArrowLeft-BUZ_pXI5.js";const W=e(t("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-.61l-2.01-1.58zM12 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.6z"}),"Settings"),F=e(t("path",{d:"M9.78 18.65l.28-4.23 7.68-6.92c.34-.31-.07-.46-.52-.19L7.74 13.3 3.64 12c-.88-.25-.89-.86.2-1.3l15.97-6.16c.73-.33 1.43.18 1.15 1.3l-2.72 12.81c-.19.91-.74 1.13-1.5.71L12.6 16.3l-1.99 1.93c-.23.23-.42.42-.83.42z"}),"Telegram"),V=144,G=[{type:l.Link,action:"back-action",label:t(P,{sx:{display:"block"}})},{type:l.Link,action:"back-action",label:"Dashboard"},{type:l.Link,action:"back-action",label:"Performance"},{type:l.Button,action:"download-pdf",label:"Download PDF",icon:k},{type:l.Fab,action:"setup-action",label:"Settings",icon:W}],K=[{action:"setup-action",label:"Settings",icon:()=>t(s,{icon:W,color:"#4caf50"})},{divider:!0},{action:"download-json",label:"Download JSON",icon:()=>t(s,{icon:d,color:"#4caf50"})},{action:"download-markdown",label:"Download Markdown",icon:()=>t(s,{icon:c,color:"#4caf50"})},{action:"download-pdf",label:"Download PDF",icon:()=>t(s,{icon:p,color:"#4caf50"})},{divider:!0},{action:"update-now",label:"Refresh",icon:()=>t(s,{icon:B,color:"#4caf50"})}],X=({name:e,title:t})=>({type:m.Box,sx:{display:"grid",gridTemplateColumns:"auto 1fr auto",paddingBottom:"8px",alignItems:"center"},fields:[{type:m.Typography,fieldBottomMargin:"0",typoVariant:"body1",placeholder:t},{type:m.Div},{type:m.Typography,typoVariant:"h6",style:{textAlign:"right",fontWeight:"bold"},fieldBottomMargin:"0",fieldRightMargin:"0",compute:({[e]:t})=>t||0===t?"totalEvents"===e?Number(t).toFixed(2):"totalDuration"===e||"avgDuration"===e?`${Number(t).toFixed(2)} ${C("ms")}`:t:"-",name:e}]}),H=({name:e,title:i})=>({type:m.Box,sx:{display:"grid",gridTemplateColumns:"auto 1fr auto",paddingBottom:"8px",alignItems:"center"},fields:[{type:m.Typography,fieldBottomMargin:"0",typoVariant:"body1",placeholder:i},{type:m.Div},{type:m.Component,style:{textAlign:"right",fontWeight:"bold"},fieldBottomMargin:"0",fieldRightMargin:"0",element:({[e]:i})=>{const n="github"===e,a=n?"#6A1B9A":"#24A1DE";return t(b,{size:"medium",disabled:!i,startIcon:t(u,{sx:{background:"#eee",height:"25px",width:"25px"},children:t(n?x:F,{sx:{color:a,fontSize:"16px !important",transform:"translate(-0.5px, 0px)"}})}),sx:{background:"white",color:a,"&:hover":{background:"white",color:a}},onClick:()=>{if(n)A(String(i));else{const e=String(i).replaceAll("@","");A(`https://t.me/${e}`)}},children:C(i?"Open":"Not configured")})},name:e}]}),U=[{type:m.Box,sx:{display:"flex",alignItems:"center",justifyContent:"center",height:"80vh"},child:{type:m.Layout,customLayout:({children:e})=>t(E,{sx:{width:"335px"},children:e}),fields:[{type:m.Component,element:()=>t(y,{sx:{background:e=>h(e.palette.background.paper,.13),display:"flex",alignItems:"center",flexDirection:"column",gap:1,p:1},children:[t(u,{sx:{height:V,width:V,marginTop:"36px",marginBottom:"36px"},src:"/logo/icon512_maskable.png"}),t(_,{variant:"subtitle2",sx:{opacity:.5},children:"Backtest Kit"})]})},{type:m.Layout,customLayout:({children:e})=>t(y,{p:1,children:e}),fields:[{type:m.Div,style:{height:"2px"}},{type:m.Div,style:{height:"12px"}},X({name:"totalEvents",title:C("Total events")}),X({name:"totalDuration",title:C("Total time")}),X({name:"avgDuration",title:C("Average time")}),H({name:"channel",title:C("Channel")}),H({name:"github",title:"GitHub"})]}]}}],Y=new o,j=new o,z=({title:e,name:t,idx:i})=>({type:m.Box,sx:{display:"grid",gridTemplateColumns:"auto 1fr 125px",pointerEvents:"none",alignItems:"center",background:e=>i%2==0?O(e.palette.getContrastText(e.palette.background.paper),.04):"transparent",padding:"8px",paddingLeft:"8px",paddingRight:"8px"},fields:[{type:m.Typography,style:{fontSize:"12px"},typoVariant:"subtitle2",fieldBottomMargin:"0",placeholder:e},{type:m.Box,sx:{minWidth:"8px"}},{type:m.Text,readonly:!0,outlined:i%2==0,name:t,compute(e){const i=D.get(e,t);return String(i)},title:"",fieldBottomMargin:"0",fieldRightMargin:"0"}]}),$=[{type:m.Box,sx:{maxWidth:420,minWidth:340},fields:[{type:m.Box,sx:{display:"grid",gridTemplateColumns:"auto 1fr auto auto",alignItems:"center",paddingTop:"4px",paddingBottom:"4px",paddingLeft:"8px",paddingRight:"4px"},fields:[{type:m.Typography,style:{opacity:.5},fieldBottomMargin:"0",typoVariant:"subtitle2",placeholder:"Runtime Configuration"},{type:m.Box},{type:m.Icon,fieldBottomMargin:"0",fieldRightMargin:"0",icon:w,async click(e,t,i,n){await j.next(),await n.handleDownloadConfig()}},{type:m.Icon,fieldBottomMargin:"0",fieldRightMargin:"0",icon:S,click:()=>j.next()}]},{type:m.Layout,customLayout:({children:e})=>t(y,{sx:{overflow:"clip",overflowY:"auto",marginBottom:"16px",maxHeight:{xs:"min(365px, 80vh - 235px)",sm:"min(475px, 80vh - 235px)"},width:"100%"},children:e}),fields:[z({idx:0,title:"CC_SCHEDULE_AWAIT_MINUTES",name:"config.CC_SCHEDULE_AWAIT_MINUTES",description:T.newline("Time to wait for scheduled signal to activate (in minutes).","If signal does not activate within this time, it will be cancelled.")}),z({idx:1,title:"CC_AVG_PRICE_CANDLES_COUNT",name:"config.CC_AVG_PRICE_CANDLES_COUNT",description:T.newline("Number of candles to use for average price calculation (VWAP).","Default: 5 candles (last 5 minutes when using 1m interval).")}),z({idx:2,title:"CC_PERCENT_SLIPPAGE",name:"config.CC_PERCENT_SLIPPAGE",description:T.newline("Slippage percentage applied to entry and exit prices.","Simulates market impact and order book depth.","Applied twice (entry and exit) for realistic execution simulation.","Default: 0.1% per transaction.")}),z({idx:3,title:"CC_PERCENT_FEE",name:"config.CC_PERCENT_FEE",description:T.newline("Fee percentage charged per transaction.","Applied twice (entry and exit) for total fee calculation.","Default: 0.1% per transaction (total 0.2%).")}),z({idx:4,title:"CC_MIN_TAKEPROFIT_DISTANCE_PERCENT",name:"config.CC_MIN_TAKEPROFIT_DISTANCE_PERCENT",description:T.newline("Minimum TakeProfit distance from priceOpen (percentage).","Must be greater than (slippage + fees) to ensure profitable trades.","Default: 0.5% (covers all costs + minimum profit margin).")}),z({idx:5,title:"CC_MIN_STOPLOSS_DISTANCE_PERCENT",name:"config.CC_MIN_STOPLOSS_DISTANCE_PERCENT",description:T.newline("Minimum StopLoss distance from priceOpen (percentage).","Prevents signals from being immediately stopped out due to price volatility.","Default: 0.5% (buffer to avoid instant stop loss on normal market fluctuations).")}),z({idx:6,title:"CC_MAX_STOPLOSS_DISTANCE_PERCENT",name:"config.CC_MAX_STOPLOSS_DISTANCE_PERCENT",description:T.newline("Maximum StopLoss distance from priceOpen (percentage).","Prevents catastrophic losses from extreme StopLoss values.","Default: 20% (one signal cannot lose more than 20% of position).")}),z({idx:7,title:"CC_MAX_SIGNAL_LIFETIME_MINUTES",name:"config.CC_MAX_SIGNAL_LIFETIME_MINUTES",description:T.newline("Maximum signal lifetime in minutes.","Also used as the default when minuteEstimatedTime is not provided in ISignalDto.","Prevents eternal signals that block risk limits for weeks/months.","Use Infinity to allow signals to live indefinitely (until TP/SL or explicit close).","Default: 1440 minutes (1 day).")}),z({idx:8,title:"CC_MAX_SIGNAL_GENERATION_SECONDS",name:"config.CC_MAX_SIGNAL_GENERATION_SECONDS",description:T.newline("Maximum time allowed for signal generation (in seconds).","Prevents long-running or stuck signal generation routines from blocking execution or consuming resources indefinitely.","If generation exceeds this threshold the attempt should be aborted, logged and optionally retried.","Default: 180 seconds (3 minutes).")}),z({idx:9,title:"CC_GET_CANDLES_RETRY_COUNT",name:"config.CC_GET_CANDLES_RETRY_COUNT",description:T.newline("Number of retries for getCandles function.","Default: 3 retries.")}),z({idx:10,title:"CC_GET_CANDLES_RETRY_DELAY_MS",name:"config.CC_GET_CANDLES_RETRY_DELAY_MS",description:T.newline("Delay between retries for getCandles function (in milliseconds).","Default: 5000 ms (5 seconds).")}),z({idx:11,title:"CC_MAX_CANDLES_PER_REQUEST",name:"config.CC_MAX_CANDLES_PER_REQUEST",description:T.newline("Maximum number of candles to request per single API call.","If a request exceeds this limit, data will be fetched using pagination.","Default: 1000 candles per request.")}),z({idx:12,title:"CC_GET_CANDLES_PRICE_ANOMALY_THRESHOLD_FACTOR",name:"config.CC_GET_CANDLES_PRICE_ANOMALY_THRESHOLD_FACTOR",description:T.newline("Maximum allowed deviation factor for price anomaly detection.","Price should not be more than this factor lower than reference price.","Example: BTC at $50,000 median → threshold $50 (catches $0.01-1 anomalies).")}),z({idx:13,title:"CC_GET_CANDLES_MIN_CANDLES_FOR_MEDIAN",name:"config.CC_GET_CANDLES_MIN_CANDLES_FOR_MEDIAN",description:T.newline("Minimum number of candles required for reliable median calculation.","Below this threshold, use simple average instead of median.","Example: 3 candles = 12 points (use average), 5 candles = 20 points (use median).")}),z({idx:14,title:"CC_REPORT_SHOW_SIGNAL_NOTE",name:"config.CC_REPORT_SHOW_SIGNAL_NOTE",description:T.newline("Controls visibility of signal notes in markdown report tables.",'When enabled, the "Note" column will be displayed in all markdown reports (backtest, live, schedule, risk, etc.)',"Default: false (notes are hidden to reduce table width and improve readability).")}),z({idx:15,title:"CC_BREAKEVEN_THRESHOLD",name:"config.CC_BREAKEVEN_THRESHOLD",description:T.newline("Breakeven threshold percentage - minimum profit distance from entry to enable breakeven.","When price moves this percentage in profit direction, stop-loss can be moved to entry (breakeven).","Default: 0.2% (additional buffer above costs to ensure no loss when moving to breakeven).")}),z({idx:16,title:"CC_ORDER_BOOK_TIME_OFFSET_MINUTES",name:"config.CC_ORDER_BOOK_TIME_OFFSET_MINUTES",description:T.newline("Time offset in minutes for order book fetching.","Subtracts this amount from the current time when fetching order book data.","This helps get a more stable snapshot of the order book by avoiding real-time volatility.","Default: 10 minutes.")}),z({idx:17,title:"CC_ORDER_BOOK_MAX_DEPTH_LEVELS",name:"config.CC_ORDER_BOOK_MAX_DEPTH_LEVELS",description:T.newline("Maximum depth levels for order book fetching.","Specifies how many price levels to fetch from both bids and asks.","Default: 20 levels.")}),z({idx:18,title:"CC_AGGREGATED_TRADES_MAX_MINUTES",name:"config.CC_AGGREGATED_TRADES_MAX_MINUTES",description:T.newline("Maximum minutes of aggregated trades to fetch when no limit is provided.","If limit is not specified, the system will fetch aggregated trades for this many minutes starting from the current time minus the offset.","Binance requirement.")}),z({idx:19,title:"CC_MAX_BACKTEST_MARKDOWN_ROWS",name:"config.CC_MAX_BACKTEST_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in backtest markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:20,title:"CC_MAX_BREAKEVEN_MARKDOWN_ROWS",name:"config.CC_MAX_BREAKEVEN_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in breakeven markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:21,title:"CC_MAX_HEATMAP_MARKDOWN_ROWS",name:"config.CC_MAX_HEATMAP_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in heatmap markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:22,title:"CC_MAX_HIGHEST_PROFIT_MARKDOWN_ROWS",name:"config.CC_MAX_HIGHEST_PROFIT_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in highest profit markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:23,title:"CC_MAX_MAX_DRAWDOWN_MARKDOWN_ROWS",name:"config.CC_MAX_MAX_DRAWDOWN_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in max drawdown markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:24,title:"CC_MAX_LIVE_MARKDOWN_ROWS",name:"config.CC_MAX_LIVE_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in live markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:25,title:"CC_MAX_PARTIAL_MARKDOWN_ROWS",name:"config.CC_MAX_PARTIAL_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in partial markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:26,title:"CC_MAX_RISK_MARKDOWN_ROWS",name:"config.CC_MAX_RISK_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in risk markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:27,title:"CC_MAX_SCHEDULE_MARKDOWN_ROWS",name:"config.CC_MAX_SCHEDULE_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in schedule markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:28,title:"CC_MAX_STRATEGY_MARKDOWN_ROWS",name:"config.CC_MAX_STRATEGY_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in strategy markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:29,title:"CC_MAX_SYNC_MARKDOWN_ROWS",name:"config.CC_MAX_SYNC_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in sync markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:30,title:"CC_WALKER_MARKDOWN_TOP_N",name:"config.CC_WALKER_MARKDOWN_TOP_N",description:T.newline("Number of top strategies to include in the walker comparison table.","Default: 10 strategies.")}),z({idx:31,title:"CC_MAX_PERFORMANCE_MARKDOWN_ROWS",name:"config.CC_MAX_PERFORMANCE_MARKDOWN_ROWS",description:T.newline("Maximum number of performance metric events to keep in storage.","Older events are removed when this limit is exceeded.","Higher than other report event limits because performance metrics are lightweight and benefit from larger sample sizes for accurate statistical analysis.","Default: 10000 events.")}),z({idx:32,title:"CC_MAX_NOTIFICATIONS",name:"config.CC_MAX_NOTIFICATIONS",description:T.newline("Maximum number of notifications to keep in storage.","Older notifications are removed when this limit is exceeded.","Default: 500 notifications.")}),z({idx:33,title:"CC_MAX_SIGNALS",name:"config.CC_MAX_SIGNALS",description:T.newline("Maximum number of signals to keep in storage.","Older signals are removed when this limit is exceeded.","Default: 50 signals.")}),z({idx:34,title:"CC_MAX_LOG_LINES",name:"config.CC_MAX_LOG_LINES",description:T.newline("Maximum number of log lines to keep in storage.","Older log lines are removed when this limit is exceeded.","This helps prevent unbounded log growth which can consume memory and degrade performance over time.","Default: 1000 log lines.")}),z({idx:35,title:"CC_ENABLE_CANDLE_FETCH_MUTEX",name:"config.CC_ENABLE_CANDLE_FETCH_MUTEX",description:T.newline("Enables mutex locking for candle fetching to prevent concurrent fetches of the same candles.","This can help avoid redundant API calls and ensure data consistency when multiple processes/threads attempt to fetch candles simultaneously.","Default: true (mutex locking enabled for candle fetching).")}),z({idx:36,title:"CC_ENABLE_BACKTEST_PARALLEL_SPIN",name:"config.CC_ENABLE_BACKTEST_PARALLEL_SPIN",description:T.newline("Enables cooperative interleaving of concurrently running backtests after each candle fetch.","Hands the event loop to a peer backtest waiting on the same mutex, so multiple parallel Backtest.run / Walker workloads progress in round-robin fashion instead of one monopolizing the event loop until completion.","Default: true (parallel backtests are interleaved on each candle fetch boundary).")}),z({idx:37,title:"CC_ENABLE_DCA_EVERYWHERE",name:"config.CC_ENABLE_DCA_EVERYWHERE",description:T.newline("Enables DCA (Dollar-Cost Averaging) logic even if antirecord is not broken.","Allows to commitAverageBuy if currentPrice is not the lowest price since entry, but still lower than priceOpen.","Default: false (DCA logic enabled only when antirecord is broken).")}),z({idx:38,title:"CC_ENABLE_PPPL_EVERYWHERE",name:"config.CC_ENABLE_PPPL_EVERYWHERE",description:T.newline("Enables PPPL (Partial Profit, Partial Loss) logic even if this breaks a direction of exits.","Allows to take partial profit or loss on a position even if it results in a mix of profit and loss exits.","Default: false (PPPL logic is only applied when it does not break the direction of exits, ensuring clearer profit/loss outcomes).")}),z({idx:39,title:"CC_ENABLE_LONG_SIGNAL",name:"config.CC_ENABLE_LONG_SIGNAL",description:T.newline("Enables long signals in strategies that are primarily designed for short signals.","This allows the strategy to generate and manage long signals in addition to short signals, even if the original design was focused on short trading.","Default: false (long signals are only enabled in strategies that are designed for them, ensuring strategy logic is aligned with signal types).")}),z({idx:40,title:"CC_ENABLE_SHORT_SIGNAL",name:"config.CC_ENABLE_SHORT_SIGNAL",description:T.newline("Enables short signals in strategies that are primarily designed for long signals.","This allows the strategy to generate and manage short signals in addition to long signals, even if the original design was focused on long trading.")}),z({idx:41,title:"CC_ENABLE_TRAILING_EVERYWHERE",name:"config.CC_ENABLE_TRAILING_EVERYWHERE",description:T.newline("Enables trailing logic (Trailing Take / Trailing Stop) without requiring absorption conditions.","Allows trailing mechanisms to be activated regardless of whether absorption has been detected.","Default: false (trailing logic is applied only when absorption conditions are met).")}),z({idx:42,title:"CC_POSITION_ENTRY_COST",name:"config.CC_POSITION_ENTRY_COST",description:T.newline("Cost of entering a position (in USD).","This is used as a default value for calculating position size and risk management when cost data is not provided by the strategy.","Default: $100 per position.")})]},{type:m.Box,sx:{p:1},child:{type:m.Button,fieldBottomMargin:"0",fieldRightMargin:"0",buttonVariant:"contained",title:"Download",click:async(e,t,i,n)=>{await j.next(),await n.handleDownloadConfig()},icon:w}}]}],q=[{type:m.Group,fieldRightMargin:"1",phoneColumns:"12",tabletColumns:"12",desktopColumns:"6",fields:[{type:m.Paper,fieldBottomMargin:"1",fields:[{type:m.Box,sx:{display:"grid",gridTemplateColumns:"auto 1fr auto",alignItems:"center"},fields:[{type:m.Box,sx:{display:"grid",gridTemplateColumns:"1fr"},fields:[{type:m.Typography,fieldBottomMargin:"1",typoVariant:"h6",placeholder:"Running mode"},{type:m.Typography,fieldBottomMargin:"1",isVisible:({running_mode:e})=>"backtest"===e,style:{color:"orange"},typoVariant:"body1",placeholder:"Historical data processing"},{type:m.Typography,fieldBottomMargin:"1",isVisible:({running_mode:e})=>"live"===e,style:{color:"green"},typoVariant:"body1",placeholder:"Real-time exchange integration"},{type:m.Typography,fieldBottomMargin:"1",isVisible:({running_mode:e})=>"none"===e,style:{color:"red"},typoVariant:"body1",placeholder:"UI only"}]},{type:m.Box},{type:m.Component,fieldBottomMargin:"0",element:({_fieldData:e,payload:i})=>t(M,{noBadge:!0,size:"small",sx:{transform:"translate(10px, -28px)",opacity:"0.5",transition:"opacity 500ms","&:hover":{opacity:"1.0"}},oneSx:{padding:"0 !important"},fields:$,closeSubject:j,payload:i,handler:()=>e,children:t(W,{})})}]},{type:m.Radio,readonly:!0,fieldBottomMargin:"0",name:"running_mode",radioValue:"backtest",title:"Historical data"},{type:m.Radio,readonly:!0,fieldBottomMargin:"0",name:"running_mode",radioValue:"live",title:"Real-time"},{type:m.Radio,readonly:!0,fieldBottomMargin:"0",name:"running_mode",radioValue:"none",title:"Frontend only"}]},{type:m.Paper,fieldBottomMargin:"1",innerPadding:"0px",fields:[{type:m.Box,sx:{paddingTop:"16px",paddingLeft:"16px",paddingRight:"16px"},fields:[{type:m.Typography,fieldBottomMargin:"1",typoVariant:"h6",placeholder:"Log mode"},{type:m.Typography,fieldBottomMargin:"2",style:{opacity:.5},typoVariant:"caption",placeholder:"Logs take up disk space but are needed for debugging"}]},...[{title:"JSONL files",description:"Files processed by Claude Code, HuggingFace, Parquet",name:"recent_enabled"},{title:"Markdown files",description:"Human-readable files. Useful when running without a GUI",name:"markdown_enabled"},{title:"Dump files",description:"Conversation dump with the AI agent used for trading signals",name:"dump_enabled"}].map(({name:e,title:t,description:i},n)=>(({title:e,description:t,name:i,idx:n})=>({type:m.Box,sx:{display:"grid",alignItems:"center",gridTemplateColumns:"1fr auto",paddingLeft:"16px",paddingRight:"16px",paddingTop:"4px",paddingBottom:"4px",background:e=>n%2==0?O(e.palette.getContrastText(e.palette.background.paper),.04):"transparent"},fields:[{type:m.Box,fields:[{type:m.Typography,fieldBottomMargin:"0",typoVariant:"body1",placeholder:e},{type:m.Typography,fieldBottomMargin:"0",style:{opacity:.5},typoVariant:"caption",placeholder:t}]},{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",fieldRightMargin:"0",title:"",name:i}]}))({name:e,title:t,description:i,idx:n}))]},{type:m.Paper,fieldBottomMargin:"1",fields:[{type:m.Typography,fieldBottomMargin:"1",typoVariant:"h6",placeholder:"User interface"},{type:m.Switch,readonly:!0,fieldBottomMargin:"0",title:"Save notifications",name:"notification_enabled"},{type:m.Typography,fieldBottomMargin:"1",style:{opacity:.5},typoVariant:"caption",placeholder:"Event history is saved to disk"},{type:m.Switch,readonly:!0,fieldBottomMargin:"0",title:"Save signals",name:"storage_enabled"},{type:m.Typography,fieldBottomMargin:"0",style:{opacity:.5},typoVariant:"caption",placeholder:"Latest signal state is saved to disk"}]}]},{type:m.Group,fieldRightMargin:"1",fieldBottomMargin:"2",phoneColumns:"12",tabletColumns:"12",desktopColumns:"6",fields:[{type:m.Paper,fieldBottomMargin:"1",fields:[{type:m.Typography,fieldBottomMargin:"3",typoVariant:"h6",placeholder:"Strategy"},{type:m.Typography,placeholder:"Broker"},{type:m.Outline,fieldBottomMargin:"3",fields:[{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",title:"Connected to mainnet (production)",name:"broker_enabled"}]},{type:m.Typography,placeholder:"Market signals"},{type:m.Outline,fieldBottomMargin:"4",fields:[{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",title:"Use BM25 for RAG",name:"memory_enabled"},{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",title:"Use stateful strategies",name:"state_enabled"},{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",title:"Save previous signal",name:"recent_enabled"}]}]},{type:m.Paper,fieldBottomMargin:"1",fields:[{type:m.Typography,fieldBottomMargin:"2",typoVariant:"h6",placeholder:"Risk management"},{type:m.Typography,fieldBottomMargin:"3",style:{opacity:.5},typoVariant:"body1",placeholder:"Use LONG or SHORT positions depending on market conditions"},{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",title:"Enable LONG",name:"enable_long"},{type:m.Checkbox,readonly:!0,fieldBottomMargin:"1",title:"Enable SHORT",name:"enable_short"}]}]},{type:m.Component,desktopHidden:!0,fieldBottomMargin:"5",fieldRightMargin:"1",element:({payload:e})=>{const i=R();return t(v,{variant:"contained",size:"large",startIcon:t(B,{}),onClick:async()=>{await e.handleReload(),i()},children:"Refresh"})}}],J=[{type:l.Link,action:"back-action",label:t(P,{sx:{display:"block"}})},{type:l.Link,action:"back-action",label:"Dashboard"},{type:l.Link,action:"back-action",label:"Performance"},{type:l.Link,action:"back-action",label:"Settings"},{type:l.Button,action:"update-now",label:"Refresh",icon:B}],Q=[{action:"update-now",label:"Refresh",icon:()=>t(s,{icon:B,color:"#4caf50"})}],Z=new o,ee=async()=>{n.setupViewService.getSetupData.clear(),await Z.next()},te=async()=>{const{config:e}=await n.setupViewService.getSetupData(),t=new Blob([JSON.stringify(e,null,2)],{type:"application/json"}),i=URL.createObjectURL(t);n.layoutService.downloadFile(i,`config_${Date.now()}.json`)},ie=[{id:"search",element:()=>{const[e,{execute:o,loading:l}]=i(async()=>await n.performanceViewService.getPerformanceData(),{onLoadStart:()=>n.layoutService.setAppbarLoader(!0),onLoadEnd:()=>n.layoutService.setAppbarLoader(!1)});a(()=>Y.subscribe(o));const[s,{execute:d,loading:c}]=i(async()=>await n.environmentViewService.getEnvironmentData());a(()=>Y.subscribe(d));return t(I,{children:[t(r,{items:G,actions:K,onAction:async e=>{"back-action"===e&&n.routerService.push("/main"),"setup-action"===e&&n.routerService.push("/about/setup"),"update-now"===e&&await(async()=>{n.performanceViewService.getPerformanceData.clear(),n.performanceViewService.getPerformanceReport.clear(),n.environmentViewService.getEnvironmentData.clear(),await Y.next()})(),"download-markdown"===e&&await(async()=>{const e=await n.performanceViewService.getPerformanceReport(),t=new Blob([e],{type:"text/plain"}),i=URL.createObjectURL(t);n.layoutService.downloadFile(i,`performance_${Date.now()}.md`)})(),"download-pdf"===e&&await(async()=>{const e=await n.performanceViewService.getPerformanceReport();await f(e)})(),"download-json"===e&&await(async()=>{const e=await n.performanceViewService.getPerformanceData(),t=JSON.stringify(e,null,2),i=new Blob([t],{type:"text/plain"}),a=URL.createObjectURL(i);n.layoutService.downloadFile(a,`performance_${Date.now()}.json`)})()}}),e&&s?l||c?null:t(g,{handler:()=>{const t=e.totalEvents>0?e.totalDuration/e.totalEvents:0;return{channel:s.telegram_channel,github:"https://github.com/tripolskypetr/backtest-kit",totalEvents:e.totalEvents,totalDuration:e.totalDuration,avgDuration:t}},fields:U}):null]})},isActive:e=>L(["/about"],e)},{id:"main",element:()=>{const[e,{execute:o,loading:l}]=i(async()=>await n.setupViewService.getSetupData(),{onLoadStart:()=>n.layoutService.setAppbarLoader(!0),onLoadEnd:()=>n.layoutService.setAppbarLoader(!1)});a(()=>Z.subscribe(o));return t(I,{children:[t(r,{items:J,actions:Q,onAction:async e=>{"back-action"===e&&n.routerService.push("/about"),"update-now"===e&&await ee()}}),e?l?null:t(g,{handler:e,payload:()=>({handleReload:ee,handleDownloadConfig:te}),fields:q}):null]})},isActive:e=>L(["/about/setup"],e)}],ne=()=>t(N,{history:n.routerService,onLoadStart:()=>n.layoutService.setAppbarLoader(!0),onLoadEnd:()=>n.layoutService.setAppbarLoader(!1),routes:ie});export{ne as AboutPage,ne as default};
|
|
1
|
+
import{b as e,f as t,x as i,i as n,X as a,a8 as o,O as r,R as l,Z as s,Y as d,$ as c,a0 as p,a2 as m,W as g,w as f,a9 as u,T as _,l as h,B as y,aa as C,P as E,ab as A,ac as x,a4 as b,D as w,ad as S,ae as M,af as R,ag as v,a7 as T,ah as O,ai as D,aj as N}from"./index-Cgx-XS5d.js";import{h as L}from"./hasRouteMatch-D81_5Zia.js";import{P as k}from"./PictureAsPdfOutlined-B1bBHTk-.js";import{C as I,R as B}from"./Refresh-BrRXF_OY.js";import{K as P}from"./KeyboardArrowLeft-vg5fS39b.js";const W=e(t("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-.61l-2.01-1.58zM12 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.6z"}),"Settings"),F=e(t("path",{d:"M9.78 18.65l.28-4.23 7.68-6.92c.34-.31-.07-.46-.52-.19L7.74 13.3 3.64 12c-.88-.25-.89-.86.2-1.3l15.97-6.16c.73-.33 1.43.18 1.15 1.3l-2.72 12.81c-.19.91-.74 1.13-1.5.71L12.6 16.3l-1.99 1.93c-.23.23-.42.42-.83.42z"}),"Telegram"),V=144,G=[{type:l.Link,action:"back-action",label:t(P,{sx:{display:"block"}})},{type:l.Link,action:"back-action",label:"Dashboard"},{type:l.Link,action:"back-action",label:"Performance"},{type:l.Button,action:"download-pdf",label:"Download PDF",icon:k},{type:l.Fab,action:"setup-action",label:"Settings",icon:W}],K=[{action:"setup-action",label:"Settings",icon:()=>t(s,{icon:W,color:"#4caf50"})},{divider:!0},{action:"download-json",label:"Download JSON",icon:()=>t(s,{icon:d,color:"#4caf50"})},{action:"download-markdown",label:"Download Markdown",icon:()=>t(s,{icon:c,color:"#4caf50"})},{action:"download-pdf",label:"Download PDF",icon:()=>t(s,{icon:p,color:"#4caf50"})},{divider:!0},{action:"update-now",label:"Refresh",icon:()=>t(s,{icon:B,color:"#4caf50"})}],X=({name:e,title:t})=>({type:m.Box,sx:{display:"grid",gridTemplateColumns:"auto 1fr auto",paddingBottom:"8px",alignItems:"center"},fields:[{type:m.Typography,fieldBottomMargin:"0",typoVariant:"body1",placeholder:t},{type:m.Div},{type:m.Typography,typoVariant:"h6",style:{textAlign:"right",fontWeight:"bold"},fieldBottomMargin:"0",fieldRightMargin:"0",compute:({[e]:t})=>t||0===t?"totalEvents"===e?Number(t).toFixed(2):"totalDuration"===e||"avgDuration"===e?`${Number(t).toFixed(2)} ${C("ms")}`:t:"-",name:e}]}),H=({name:e,title:i})=>({type:m.Box,sx:{display:"grid",gridTemplateColumns:"auto 1fr auto",paddingBottom:"8px",alignItems:"center"},fields:[{type:m.Typography,fieldBottomMargin:"0",typoVariant:"body1",placeholder:i},{type:m.Div},{type:m.Component,style:{textAlign:"right",fontWeight:"bold"},fieldBottomMargin:"0",fieldRightMargin:"0",element:({[e]:i})=>{const n="github"===e,a=n?"#6A1B9A":"#24A1DE";return t(b,{size:"medium",disabled:!i,startIcon:t(u,{sx:{background:"#eee",height:"25px",width:"25px"},children:t(n?x:F,{sx:{color:a,fontSize:"16px !important",transform:"translate(-0.5px, 0px)"}})}),sx:{background:"white",color:a,"&:hover":{background:"white",color:a}},onClick:()=>{if(n)A(String(i));else{const e=String(i).replaceAll("@","");A(`https://t.me/${e}`)}},children:C(i?"Open":"Not configured")})},name:e}]}),U=[{type:m.Box,sx:{display:"flex",alignItems:"center",justifyContent:"center",height:"80vh"},child:{type:m.Layout,customLayout:({children:e})=>t(E,{sx:{width:"335px"},children:e}),fields:[{type:m.Component,element:()=>t(y,{sx:{background:e=>h(e.palette.background.paper,.13),display:"flex",alignItems:"center",flexDirection:"column",gap:1,p:1},children:[t(u,{sx:{height:V,width:V,marginTop:"36px",marginBottom:"36px"},src:"/logo/icon512_maskable.png"}),t(_,{variant:"subtitle2",sx:{opacity:.5},children:"Backtest Kit"})]})},{type:m.Layout,customLayout:({children:e})=>t(y,{p:1,children:e}),fields:[{type:m.Div,style:{height:"2px"}},{type:m.Div,style:{height:"12px"}},X({name:"totalEvents",title:C("Total events")}),X({name:"totalDuration",title:C("Total time")}),X({name:"avgDuration",title:C("Average time")}),H({name:"channel",title:C("Channel")}),H({name:"github",title:"GitHub"})]}]}}],Y=new o,j=new o,z=({title:e,name:t,idx:i})=>({type:m.Box,sx:{display:"grid",gridTemplateColumns:"auto 1fr 125px",pointerEvents:"none",alignItems:"center",background:e=>i%2==0?O(e.palette.getContrastText(e.palette.background.paper),.04):"transparent",padding:"8px",paddingLeft:"8px",paddingRight:"8px"},fields:[{type:m.Typography,style:{fontSize:"12px"},typoVariant:"subtitle2",fieldBottomMargin:"0",placeholder:e},{type:m.Box,sx:{minWidth:"8px"}},{type:m.Text,readonly:!0,outlined:i%2==0,name:t,compute(e){const i=D.get(e,t);return String(i)},title:"",fieldBottomMargin:"0",fieldRightMargin:"0"}]}),$=[{type:m.Box,sx:{maxWidth:420,minWidth:340},fields:[{type:m.Box,sx:{display:"grid",gridTemplateColumns:"auto 1fr auto auto",alignItems:"center",paddingTop:"4px",paddingBottom:"4px",paddingLeft:"8px",paddingRight:"4px"},fields:[{type:m.Typography,style:{opacity:.5},fieldBottomMargin:"0",typoVariant:"subtitle2",placeholder:"Runtime Configuration"},{type:m.Box},{type:m.Icon,fieldBottomMargin:"0",fieldRightMargin:"0",icon:w,async click(e,t,i,n){await j.next(),await n.handleDownloadConfig()}},{type:m.Icon,fieldBottomMargin:"0",fieldRightMargin:"0",icon:S,click:()=>j.next()}]},{type:m.Layout,customLayout:({children:e})=>t(y,{sx:{overflow:"clip",overflowY:"auto",marginBottom:"16px",maxHeight:{xs:"min(365px, 80vh - 235px)",sm:"min(475px, 80vh - 235px)"},width:"100%"},children:e}),fields:[z({idx:0,title:"CC_SCHEDULE_AWAIT_MINUTES",name:"config.CC_SCHEDULE_AWAIT_MINUTES",description:T.newline("Time to wait for scheduled signal to activate (in minutes).","If signal does not activate within this time, it will be cancelled.")}),z({idx:1,title:"CC_AVG_PRICE_CANDLES_COUNT",name:"config.CC_AVG_PRICE_CANDLES_COUNT",description:T.newline("Number of candles to use for average price calculation (VWAP).","Default: 5 candles (last 5 minutes when using 1m interval).")}),z({idx:2,title:"CC_PERCENT_SLIPPAGE",name:"config.CC_PERCENT_SLIPPAGE",description:T.newline("Slippage percentage applied to entry and exit prices.","Simulates market impact and order book depth.","Applied twice (entry and exit) for realistic execution simulation.","Default: 0.1% per transaction.")}),z({idx:3,title:"CC_PERCENT_FEE",name:"config.CC_PERCENT_FEE",description:T.newline("Fee percentage charged per transaction.","Applied twice (entry and exit) for total fee calculation.","Default: 0.1% per transaction (total 0.2%).")}),z({idx:4,title:"CC_MIN_TAKEPROFIT_DISTANCE_PERCENT",name:"config.CC_MIN_TAKEPROFIT_DISTANCE_PERCENT",description:T.newline("Minimum TakeProfit distance from priceOpen (percentage).","Must be greater than (slippage + fees) to ensure profitable trades.","Default: 0.5% (covers all costs + minimum profit margin).")}),z({idx:5,title:"CC_MIN_STOPLOSS_DISTANCE_PERCENT",name:"config.CC_MIN_STOPLOSS_DISTANCE_PERCENT",description:T.newline("Minimum StopLoss distance from priceOpen (percentage).","Prevents signals from being immediately stopped out due to price volatility.","Default: 0.5% (buffer to avoid instant stop loss on normal market fluctuations).")}),z({idx:6,title:"CC_MAX_STOPLOSS_DISTANCE_PERCENT",name:"config.CC_MAX_STOPLOSS_DISTANCE_PERCENT",description:T.newline("Maximum StopLoss distance from priceOpen (percentage).","Prevents catastrophic losses from extreme StopLoss values.","Default: 20% (one signal cannot lose more than 20% of position).")}),z({idx:7,title:"CC_MAX_SIGNAL_LIFETIME_MINUTES",name:"config.CC_MAX_SIGNAL_LIFETIME_MINUTES",description:T.newline("Maximum signal lifetime in minutes.","Also used as the default when minuteEstimatedTime is not provided in ISignalDto.","Prevents eternal signals that block risk limits for weeks/months.","Use Infinity to allow signals to live indefinitely (until TP/SL or explicit close).","Default: 1440 minutes (1 day).")}),z({idx:8,title:"CC_MAX_SIGNAL_GENERATION_SECONDS",name:"config.CC_MAX_SIGNAL_GENERATION_SECONDS",description:T.newline("Maximum time allowed for signal generation (in seconds).","Prevents long-running or stuck signal generation routines from blocking execution or consuming resources indefinitely.","If generation exceeds this threshold the attempt should be aborted, logged and optionally retried.","Default: 180 seconds (3 minutes).")}),z({idx:9,title:"CC_GET_CANDLES_RETRY_COUNT",name:"config.CC_GET_CANDLES_RETRY_COUNT",description:T.newline("Number of retries for getCandles function.","Default: 3 retries.")}),z({idx:10,title:"CC_GET_CANDLES_RETRY_DELAY_MS",name:"config.CC_GET_CANDLES_RETRY_DELAY_MS",description:T.newline("Delay between retries for getCandles function (in milliseconds).","Default: 5000 ms (5 seconds).")}),z({idx:11,title:"CC_MAX_CANDLES_PER_REQUEST",name:"config.CC_MAX_CANDLES_PER_REQUEST",description:T.newline("Maximum number of candles to request per single API call.","If a request exceeds this limit, data will be fetched using pagination.","Default: 1000 candles per request.")}),z({idx:12,title:"CC_GET_CANDLES_PRICE_ANOMALY_THRESHOLD_FACTOR",name:"config.CC_GET_CANDLES_PRICE_ANOMALY_THRESHOLD_FACTOR",description:T.newline("Maximum allowed deviation factor for price anomaly detection.","Price should not be more than this factor lower than reference price.","Example: BTC at $50,000 median → threshold $50 (catches $0.01-1 anomalies).")}),z({idx:13,title:"CC_GET_CANDLES_MIN_CANDLES_FOR_MEDIAN",name:"config.CC_GET_CANDLES_MIN_CANDLES_FOR_MEDIAN",description:T.newline("Minimum number of candles required for reliable median calculation.","Below this threshold, use simple average instead of median.","Example: 3 candles = 12 points (use average), 5 candles = 20 points (use median).")}),z({idx:14,title:"CC_REPORT_SHOW_SIGNAL_NOTE",name:"config.CC_REPORT_SHOW_SIGNAL_NOTE",description:T.newline("Controls visibility of signal notes in markdown report tables.",'When enabled, the "Note" column will be displayed in all markdown reports (backtest, live, schedule, risk, etc.)',"Default: false (notes are hidden to reduce table width and improve readability).")}),z({idx:15,title:"CC_BREAKEVEN_THRESHOLD",name:"config.CC_BREAKEVEN_THRESHOLD",description:T.newline("Breakeven threshold percentage - minimum profit distance from entry to enable breakeven.","When price moves this percentage in profit direction, stop-loss can be moved to entry (breakeven).","Default: 0.2% (additional buffer above costs to ensure no loss when moving to breakeven).")}),z({idx:16,title:"CC_ORDER_BOOK_TIME_OFFSET_MINUTES",name:"config.CC_ORDER_BOOK_TIME_OFFSET_MINUTES",description:T.newline("Time offset in minutes for order book fetching.","Subtracts this amount from the current time when fetching order book data.","This helps get a more stable snapshot of the order book by avoiding real-time volatility.","Default: 10 minutes.")}),z({idx:17,title:"CC_ORDER_BOOK_MAX_DEPTH_LEVELS",name:"config.CC_ORDER_BOOK_MAX_DEPTH_LEVELS",description:T.newline("Maximum depth levels for order book fetching.","Specifies how many price levels to fetch from both bids and asks.","Default: 20 levels.")}),z({idx:18,title:"CC_AGGREGATED_TRADES_MAX_MINUTES",name:"config.CC_AGGREGATED_TRADES_MAX_MINUTES",description:T.newline("Maximum minutes of aggregated trades to fetch when no limit is provided.","If limit is not specified, the system will fetch aggregated trades for this many minutes starting from the current time minus the offset.","Binance requirement.")}),z({idx:19,title:"CC_MAX_BACKTEST_MARKDOWN_ROWS",name:"config.CC_MAX_BACKTEST_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in backtest markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:20,title:"CC_MAX_BREAKEVEN_MARKDOWN_ROWS",name:"config.CC_MAX_BREAKEVEN_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in breakeven markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:21,title:"CC_MAX_HEATMAP_MARKDOWN_ROWS",name:"config.CC_MAX_HEATMAP_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in heatmap markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:22,title:"CC_MAX_HIGHEST_PROFIT_MARKDOWN_ROWS",name:"config.CC_MAX_HIGHEST_PROFIT_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in highest profit markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:23,title:"CC_MAX_MAX_DRAWDOWN_MARKDOWN_ROWS",name:"config.CC_MAX_MAX_DRAWDOWN_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in max drawdown markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:24,title:"CC_MAX_LIVE_MARKDOWN_ROWS",name:"config.CC_MAX_LIVE_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in live markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:25,title:"CC_MAX_PARTIAL_MARKDOWN_ROWS",name:"config.CC_MAX_PARTIAL_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in partial markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:26,title:"CC_MAX_RISK_MARKDOWN_ROWS",name:"config.CC_MAX_RISK_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in risk markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:27,title:"CC_MAX_SCHEDULE_MARKDOWN_ROWS",name:"config.CC_MAX_SCHEDULE_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in schedule markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:28,title:"CC_MAX_STRATEGY_MARKDOWN_ROWS",name:"config.CC_MAX_STRATEGY_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in strategy markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:29,title:"CC_MAX_SYNC_MARKDOWN_ROWS",name:"config.CC_MAX_SYNC_MARKDOWN_ROWS",description:T.newline("Maximum number of events to keep in sync markdown report storage.","Older events are removed (FIFO) when this limit is exceeded.","Default: 250 events.")}),z({idx:30,title:"CC_WALKER_MARKDOWN_TOP_N",name:"config.CC_WALKER_MARKDOWN_TOP_N",description:T.newline("Number of top strategies to include in the walker comparison table.","Default: 10 strategies.")}),z({idx:31,title:"CC_MAX_PERFORMANCE_MARKDOWN_ROWS",name:"config.CC_MAX_PERFORMANCE_MARKDOWN_ROWS",description:T.newline("Maximum number of performance metric events to keep in storage.","Older events are removed when this limit is exceeded.","Higher than other report event limits because performance metrics are lightweight and benefit from larger sample sizes for accurate statistical analysis.","Default: 10000 events.")}),z({idx:32,title:"CC_MAX_NOTIFICATIONS",name:"config.CC_MAX_NOTIFICATIONS",description:T.newline("Maximum number of notifications to keep in storage.","Older notifications are removed when this limit is exceeded.","Default: 500 notifications.")}),z({idx:33,title:"CC_MAX_SIGNALS",name:"config.CC_MAX_SIGNALS",description:T.newline("Maximum number of signals to keep in storage.","Older signals are removed when this limit is exceeded.","Default: 50 signals.")}),z({idx:34,title:"CC_MAX_LOG_LINES",name:"config.CC_MAX_LOG_LINES",description:T.newline("Maximum number of log lines to keep in storage.","Older log lines are removed when this limit is exceeded.","This helps prevent unbounded log growth which can consume memory and degrade performance over time.","Default: 1000 log lines.")}),z({idx:35,title:"CC_ENABLE_CANDLE_FETCH_MUTEX",name:"config.CC_ENABLE_CANDLE_FETCH_MUTEX",description:T.newline("Enables mutex locking for candle fetching to prevent concurrent fetches of the same candles.","This can help avoid redundant API calls and ensure data consistency when multiple processes/threads attempt to fetch candles simultaneously.","Default: true (mutex locking enabled for candle fetching).")}),z({idx:36,title:"CC_ENABLE_BACKTEST_PARALLEL_SPIN",name:"config.CC_ENABLE_BACKTEST_PARALLEL_SPIN",description:T.newline("Enables cooperative interleaving of concurrently running backtests after each candle fetch.","Hands the event loop to a peer backtest waiting on the same mutex, so multiple parallel Backtest.run / Walker workloads progress in round-robin fashion instead of one monopolizing the event loop until completion.","Default: true (parallel backtests are interleaved on each candle fetch boundary).")}),z({idx:37,title:"CC_ENABLE_DCA_EVERYWHERE",name:"config.CC_ENABLE_DCA_EVERYWHERE",description:T.newline("Enables DCA (Dollar-Cost Averaging) logic even if antirecord is not broken.","Allows to commitAverageBuy if currentPrice is not the lowest price since entry, but still lower than priceOpen.","Default: false (DCA logic enabled only when antirecord is broken).")}),z({idx:38,title:"CC_ENABLE_PPPL_EVERYWHERE",name:"config.CC_ENABLE_PPPL_EVERYWHERE",description:T.newline("Enables PPPL (Partial Profit, Partial Loss) logic even if this breaks a direction of exits.","Allows to take partial profit or loss on a position even if it results in a mix of profit and loss exits.","Default: false (PPPL logic is only applied when it does not break the direction of exits, ensuring clearer profit/loss outcomes).")}),z({idx:39,title:"CC_ENABLE_LONG_SIGNAL",name:"config.CC_ENABLE_LONG_SIGNAL",description:T.newline("Enables long signals in strategies that are primarily designed for short signals.","This allows the strategy to generate and manage long signals in addition to short signals, even if the original design was focused on short trading.","Default: false (long signals are only enabled in strategies that are designed for them, ensuring strategy logic is aligned with signal types).")}),z({idx:40,title:"CC_ENABLE_SHORT_SIGNAL",name:"config.CC_ENABLE_SHORT_SIGNAL",description:T.newline("Enables short signals in strategies that are primarily designed for long signals.","This allows the strategy to generate and manage short signals in addition to long signals, even if the original design was focused on long trading.")}),z({idx:41,title:"CC_ENABLE_TRAILING_EVERYWHERE",name:"config.CC_ENABLE_TRAILING_EVERYWHERE",description:T.newline("Enables trailing logic (Trailing Take / Trailing Stop) without requiring absorption conditions.","Allows trailing mechanisms to be activated regardless of whether absorption has been detected.","Default: false (trailing logic is applied only when absorption conditions are met).")}),z({idx:42,title:"CC_POSITION_ENTRY_COST",name:"config.CC_POSITION_ENTRY_COST",description:T.newline("Cost of entering a position (in USD).","This is used as a default value for calculating position size and risk management when cost data is not provided by the strategy.","Default: $100 per position.")})]},{type:m.Box,sx:{p:1},child:{type:m.Button,fieldBottomMargin:"0",fieldRightMargin:"0",buttonVariant:"contained",title:"Download",click:async(e,t,i,n)=>{await j.next(),await n.handleDownloadConfig()},icon:w}}]}],q=[{type:m.Group,fieldRightMargin:"1",phoneColumns:"12",tabletColumns:"12",desktopColumns:"6",fields:[{type:m.Paper,fieldBottomMargin:"1",fields:[{type:m.Box,sx:{display:"grid",gridTemplateColumns:"auto 1fr auto",alignItems:"center"},fields:[{type:m.Box,sx:{display:"grid",gridTemplateColumns:"1fr"},fields:[{type:m.Typography,fieldBottomMargin:"1",typoVariant:"h6",placeholder:"Running mode"},{type:m.Typography,fieldBottomMargin:"1",isVisible:({running_mode:e})=>"backtest"===e,style:{color:"orange"},typoVariant:"body1",placeholder:"Historical data processing"},{type:m.Typography,fieldBottomMargin:"1",isVisible:({running_mode:e})=>"live"===e,style:{color:"green"},typoVariant:"body1",placeholder:"Real-time exchange integration"},{type:m.Typography,fieldBottomMargin:"1",isVisible:({running_mode:e})=>"none"===e,style:{color:"red"},typoVariant:"body1",placeholder:"UI only"}]},{type:m.Box},{type:m.Component,fieldBottomMargin:"0",element:({_fieldData:e,payload:i})=>t(M,{noBadge:!0,size:"small",sx:{transform:"translate(10px, -28px)",opacity:"0.5",transition:"opacity 500ms","&:hover":{opacity:"1.0"}},oneSx:{padding:"0 !important"},fields:$,closeSubject:j,payload:i,handler:()=>e,children:t(W,{})})}]},{type:m.Radio,readonly:!0,fieldBottomMargin:"0",name:"running_mode",radioValue:"backtest",title:"Historical data"},{type:m.Radio,readonly:!0,fieldBottomMargin:"0",name:"running_mode",radioValue:"live",title:"Real-time"},{type:m.Radio,readonly:!0,fieldBottomMargin:"0",name:"running_mode",radioValue:"none",title:"Frontend only"}]},{type:m.Paper,fieldBottomMargin:"1",innerPadding:"0px",fields:[{type:m.Box,sx:{paddingTop:"16px",paddingLeft:"16px",paddingRight:"16px"},fields:[{type:m.Typography,fieldBottomMargin:"1",typoVariant:"h6",placeholder:"Log mode"},{type:m.Typography,fieldBottomMargin:"2",style:{opacity:.5},typoVariant:"caption",placeholder:"Logs take up disk space but are needed for debugging"}]},...[{title:"JSONL files",description:"Files processed by Claude Code, HuggingFace, Parquet",name:"recent_enabled"},{title:"Markdown files",description:"Human-readable files. Useful when running without a GUI",name:"markdown_enabled"},{title:"Dump files",description:"Conversation dump with the AI agent used for trading signals",name:"dump_enabled"}].map(({name:e,title:t,description:i},n)=>(({title:e,description:t,name:i,idx:n})=>({type:m.Box,sx:{display:"grid",alignItems:"center",gridTemplateColumns:"1fr auto",paddingLeft:"16px",paddingRight:"16px",paddingTop:"4px",paddingBottom:"4px",background:e=>n%2==0?O(e.palette.getContrastText(e.palette.background.paper),.04):"transparent"},fields:[{type:m.Box,fields:[{type:m.Typography,fieldBottomMargin:"0",typoVariant:"body1",placeholder:e},{type:m.Typography,fieldBottomMargin:"0",style:{opacity:.5},typoVariant:"caption",placeholder:t}]},{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",fieldRightMargin:"0",title:"",name:i}]}))({name:e,title:t,description:i,idx:n}))]},{type:m.Paper,fieldBottomMargin:"1",fields:[{type:m.Typography,fieldBottomMargin:"1",typoVariant:"h6",placeholder:"User interface"},{type:m.Switch,readonly:!0,fieldBottomMargin:"0",title:"Save notifications",name:"notification_enabled"},{type:m.Typography,fieldBottomMargin:"1",style:{opacity:.5},typoVariant:"caption",placeholder:"Event history is saved to disk"},{type:m.Switch,readonly:!0,fieldBottomMargin:"0",title:"Save signals",name:"storage_enabled"},{type:m.Typography,fieldBottomMargin:"0",style:{opacity:.5},typoVariant:"caption",placeholder:"Latest signal state is saved to disk"}]}]},{type:m.Group,fieldRightMargin:"1",fieldBottomMargin:"2",phoneColumns:"12",tabletColumns:"12",desktopColumns:"6",fields:[{type:m.Paper,fieldBottomMargin:"1",fields:[{type:m.Typography,fieldBottomMargin:"3",typoVariant:"h6",placeholder:"Strategy"},{type:m.Typography,placeholder:"Broker"},{type:m.Outline,fieldBottomMargin:"3",fields:[{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",title:"Connected to mainnet (production)",name:"broker_enabled"}]},{type:m.Typography,placeholder:"Market signals"},{type:m.Outline,fieldBottomMargin:"4",fields:[{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",title:"Use BM25 for RAG",name:"memory_enabled"},{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",title:"Use stateful strategies",name:"state_enabled"},{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",title:"Save previous signal",name:"recent_enabled"}]}]},{type:m.Paper,fieldBottomMargin:"1",fields:[{type:m.Typography,fieldBottomMargin:"2",typoVariant:"h6",placeholder:"Risk management"},{type:m.Typography,fieldBottomMargin:"3",style:{opacity:.5},typoVariant:"body1",placeholder:"Use LONG or SHORT positions depending on market conditions"},{type:m.Checkbox,readonly:!0,fieldBottomMargin:"0",title:"Enable LONG",name:"enable_long"},{type:m.Checkbox,readonly:!0,fieldBottomMargin:"1",title:"Enable SHORT",name:"enable_short"}]}]},{type:m.Component,desktopHidden:!0,fieldBottomMargin:"5",fieldRightMargin:"1",element:({payload:e})=>{const i=R();return t(v,{variant:"contained",size:"large",startIcon:t(B,{}),onClick:async()=>{await e.handleReload(),i()},children:"Refresh"})}}],J=[{type:l.Link,action:"back-action",label:t(P,{sx:{display:"block"}})},{type:l.Link,action:"back-action",label:"Dashboard"},{type:l.Link,action:"back-action",label:"Performance"},{type:l.Link,action:"back-action",label:"Settings"},{type:l.Button,action:"update-now",label:"Refresh",icon:B}],Q=[{action:"update-now",label:"Refresh",icon:()=>t(s,{icon:B,color:"#4caf50"})}],Z=new o,ee=async()=>{n.setupViewService.getSetupData.clear(),await Z.next()},te=async()=>{const{config:e}=await n.setupViewService.getSetupData(),t=new Blob([JSON.stringify(e,null,2)],{type:"application/json"}),i=URL.createObjectURL(t);n.layoutService.downloadFile(i,`config_${Date.now()}.json`)},ie=[{id:"search",element:()=>{const[e,{execute:o,loading:l}]=i(async()=>await n.performanceViewService.getPerformanceData(),{onLoadStart:()=>n.layoutService.setAppbarLoader(!0),onLoadEnd:()=>n.layoutService.setAppbarLoader(!1)});a(()=>Y.subscribe(o));const[s,{execute:d,loading:c}]=i(async()=>await n.environmentViewService.getEnvironmentData());a(()=>Y.subscribe(d));return t(I,{children:[t(r,{items:G,actions:K,onAction:async e=>{"back-action"===e&&n.routerService.push("/main"),"setup-action"===e&&n.routerService.push("/about/setup"),"update-now"===e&&await(async()=>{n.performanceViewService.getPerformanceData.clear(),n.performanceViewService.getPerformanceReport.clear(),n.environmentViewService.getEnvironmentData.clear(),await Y.next()})(),"download-markdown"===e&&await(async()=>{const e=await n.performanceViewService.getPerformanceReport(),t=new Blob([e],{type:"text/plain"}),i=URL.createObjectURL(t);n.layoutService.downloadFile(i,`performance_${Date.now()}.md`)})(),"download-pdf"===e&&await(async()=>{const e=await n.performanceViewService.getPerformanceReport();await f(e)})(),"download-json"===e&&await(async()=>{const e=await n.performanceViewService.getPerformanceData(),t=JSON.stringify(e,null,2),i=new Blob([t],{type:"text/plain"}),a=URL.createObjectURL(i);n.layoutService.downloadFile(a,`performance_${Date.now()}.json`)})()}}),e&&s?l||c?null:t(g,{handler:()=>{const t=e.totalEvents>0?e.totalDuration/e.totalEvents:0;return{channel:s.telegram_channel,github:"https://github.com/tripolskypetr/backtest-kit",totalEvents:e.totalEvents,totalDuration:e.totalDuration,avgDuration:t}},fields:U}):null]})},isActive:e=>L(["/about"],e)},{id:"main",element:()=>{const[e,{execute:o,loading:l}]=i(async()=>await n.setupViewService.getSetupData(),{onLoadStart:()=>n.layoutService.setAppbarLoader(!0),onLoadEnd:()=>n.layoutService.setAppbarLoader(!1)});a(()=>Z.subscribe(o));return t(I,{children:[t(r,{items:J,actions:Q,onAction:async e=>{"back-action"===e&&n.routerService.push("/about"),"update-now"===e&&await ee()}}),e?l?null:t(g,{handler:e,payload:()=>({handleReload:ee,handleDownloadConfig:te}),fields:q}):null]})},isActive:e=>L(["/about/setup"],e)}],ne=()=>t(N,{history:n.routerService,onLoadStart:()=>n.layoutService.setAppbarLoader(!0),onLoadEnd:()=>n.layoutService.setAppbarLoader(!1),routes:ie});export{ne as AboutPage,ne as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{bP as t,bQ as e,bR as r,bM as i}from"./index-BI3k7b1T.js";var n=function(t){return t&&t.Math===Math&&t},a=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||n("object"==typeof t&&t)||function(){return this}()||Function("return this")(),s={},o=function(t){try{return!!t()}catch(e){return!0}},h=!o(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}),u=!o(function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")}),l=u,c=Function.prototype.call,f=l?c.bind(c):function(){return c.apply(c,arguments)},g={},p={}.propertyIsEnumerable,d=Object.getOwnPropertyDescriptor,y=d&&!p.call({1:2},1);g.f=y?function(t){var e=d(this,t);return!!e&&e.enumerable}:p;var v,m,x=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},b=u,w=Function.prototype,S=w.call,T=b&&w.bind.bind(S,S),O=b?T:function(t){return function(){return S.apply(t,arguments)}},A=O,C=A({}.toString),P=A("".slice),E=function(t){return P(C(t),8,-1)},N=o,M=E,R=Object,_=O("".split),V=N(function(){return!R("z").propertyIsEnumerable(0)})?function(t){return"String"===M(t)?_(t,""):R(t)}:R,I=function(t){return null==t},k=I,L=TypeError,D=function(t){if(k(t))throw new L("Can't call method on "+t);return t},j=V,B=D,z=function(t){return j(B(t))},U="object"==typeof document&&document.all,F=void 0===U&&void 0!==U?function(t){return"function"==typeof t||t===U}:function(t){return"function"==typeof t},H=F,X=function(t){return"object"==typeof t?null!==t:H(t)},Y=a,W=F,q=function(t,e){return arguments.length<2?(r=Y[t],W(r)?r:void 0):Y[t]&&Y[t][e];var r},$=O({}.isPrototypeOf),Q=a.navigator,G=Q&&Q.userAgent,Z=G?String(G):"",K=a,J=Z,tt=K.process,et=K.Deno,rt=tt&&tt.versions||et&&et.version,it=rt&&rt.v8;it&&(m=(v=it.split("."))[0]>0&&v[0]<4?1:+(v[0]+v[1])),!m&&J&&(!(v=J.match(/Edge\/(\d+)/))||v[1]>=74)&&(v=J.match(/Chrome\/(\d+)/))&&(m=+v[1]);var nt=m,at=nt,st=o,ot=a.String,ht=!!Object.getOwnPropertySymbols&&!st(function(){var t=Symbol("symbol detection");return!ot(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&at&&at<41}),ut=ht&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,lt=q,ct=F,ft=$,gt=Object,pt=ut?function(t){return"symbol"==typeof t}:function(t){var e=lt("Symbol");return ct(e)&&ft(e.prototype,gt(t))},dt=String,yt=function(t){try{return dt(t)}catch(e){return"Object"}},vt=F,mt=yt,xt=TypeError,bt=function(t){if(vt(t))return t;throw new xt(mt(t)+" is not a function")},wt=bt,St=I,Tt=function(t,e){var r=t[e];return St(r)?void 0:wt(r)},Ot=f,At=F,Ct=X,Pt=TypeError,Et={exports:{}},Nt=a,Mt=Object.defineProperty,Rt=function(t,e){try{Mt(Nt,t,{value:e,configurable:!0,writable:!0})}catch(r){Nt[t]=e}return e},_t=a,Vt=Rt,It="__core-js_shared__",kt=Et.exports=_t[It]||Vt(It,{});(kt.versions||(kt.versions=[])).push({version:"3.48.0",mode:"global",copyright:"© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.",license:"https://github.com/zloirock/core-js/blob/v3.48.0/LICENSE",source:"https://github.com/zloirock/core-js"});var Lt=Et.exports,Dt=Lt,jt=function(t,e){return Dt[t]||(Dt[t]=e||{})},Bt=D,zt=Object,Ut=function(t){return zt(Bt(t))},Ft=Ut,Ht=O({}.hasOwnProperty),Xt=Object.hasOwn||function(t,e){return Ht(Ft(t),e)},Yt=O,Wt=0,qt=Math.random(),$t=Yt(1.1.toString),Qt=function(t){return"Symbol("+(void 0===t?"":t)+")_"+$t(++Wt+qt,36)},Gt=jt,Zt=Xt,Kt=Qt,Jt=ht,te=ut,ee=a.Symbol,re=Gt("wks"),ie=te?ee.for||ee:ee&&ee.withoutSetter||Kt,ne=function(t){return Zt(re,t)||(re[t]=Jt&&Zt(ee,t)?ee[t]:ie("Symbol."+t)),re[t]},ae=f,se=X,oe=pt,he=Tt,ue=function(t,e){var r,i;if("string"===e&&At(r=t.toString)&&!Ct(i=Ot(r,t)))return i;if(At(r=t.valueOf)&&!Ct(i=Ot(r,t)))return i;if("string"!==e&&At(r=t.toString)&&!Ct(i=Ot(r,t)))return i;throw new Pt("Can't convert object to primitive value")},le=TypeError,ce=ne("toPrimitive"),fe=function(t,e){if(!se(t)||oe(t))return t;var r,i=he(t,ce);if(i){if(void 0===e&&(e="default"),r=ae(i,t,e),!se(r)||oe(r))return r;throw new le("Can't convert object to primitive value")}return void 0===e&&(e="number"),ue(t,e)},ge=pt,pe=function(t){var e=fe(t,"string");return ge(e)?e:e+""},de=X,ye=a.document,ve=de(ye)&&de(ye.createElement),me=function(t){return ve?ye.createElement(t):{}},xe=me,be=!h&&!o(function(){return 7!==Object.defineProperty(xe("div"),"a",{get:function(){return 7}}).a}),we=h,Se=f,Te=g,Oe=x,Ae=z,Ce=pe,Pe=Xt,Ee=be,Ne=Object.getOwnPropertyDescriptor;s.f=we?Ne:function(t,e){if(t=Ae(t),e=Ce(e),Ee)try{return Ne(t,e)}catch(r){}if(Pe(t,e))return Oe(!Se(Te.f,t,e),t[e])};var Me={},Re=h&&o(function(){return 42!==Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype}),_e=X,Ve=String,Ie=TypeError,ke=function(t){if(_e(t))return t;throw new Ie(Ve(t)+" is not an object")},Le=h,De=be,je=Re,Be=ke,ze=pe,Ue=TypeError,Fe=Object.defineProperty,He=Object.getOwnPropertyDescriptor,Xe="enumerable",Ye="configurable",We="writable";Me.f=Le?je?function(t,e,r){if(Be(t),e=ze(e),Be(r),"function"==typeof t&&"prototype"===e&&"value"in r&&We in r&&!r[We]){var i=He(t,e);i&&i[We]&&(t[e]=r.value,r={configurable:Ye in r?r[Ye]:i[Ye],enumerable:Xe in r?r[Xe]:i[Xe],writable:!1})}return Fe(t,e,r)}:Fe:function(t,e,r){if(Be(t),e=ze(e),Be(r),De)try{return Fe(t,e,r)}catch(i){}if("get"in r||"set"in r)throw new Ue("Accessors not supported");return"value"in r&&(t[e]=r.value),t};var qe=Me,$e=x,Qe=h?function(t,e,r){return qe.f(t,e,$e(1,r))}:function(t,e,r){return t[e]=r,t},Ge={exports:{}},Ze=h,Ke=Xt,Je=Function.prototype,tr=Ze&&Object.getOwnPropertyDescriptor,er=Ke(Je,"name"),rr={PROPER:er&&"something"===function(){}.name,CONFIGURABLE:er&&(!Ze||Ze&&tr(Je,"name").configurable)},ir=F,nr=Lt,ar=O(Function.toString);ir(nr.inspectSource)||(nr.inspectSource=function(t){return ar(t)});var sr,or,hr,ur=nr.inspectSource,lr=F,cr=a.WeakMap,fr=lr(cr)&&/native code/.test(String(cr)),gr=Qt,pr=jt("keys"),dr=function(t){return pr[t]||(pr[t]=gr(t))},yr={},vr=fr,mr=a,xr=X,br=Qe,wr=Xt,Sr=Lt,Tr=dr,Or=yr,Ar="Object already initialized",Cr=mr.TypeError,Pr=mr.WeakMap;if(vr||Sr.state){var Er=Sr.state||(Sr.state=new Pr);Er.get=Er.get,Er.has=Er.has,Er.set=Er.set,sr=function(t,e){if(Er.has(t))throw new Cr(Ar);return e.facade=t,Er.set(t,e),e},or=function(t){return Er.get(t)||{}},hr=function(t){return Er.has(t)}}else{var Nr=Tr("state");Or[Nr]=!0,sr=function(t,e){if(wr(t,Nr))throw new Cr(Ar);return e.facade=t,br(t,Nr,e),e},or=function(t){return wr(t,Nr)?t[Nr]:{}},hr=function(t){return wr(t,Nr)}}var Mr={set:sr,get:or,has:hr,enforce:function(t){return hr(t)?or(t):sr(t,{})},getterFor:function(t){return function(e){var r;if(!xr(e)||(r=or(e)).type!==t)throw new Cr("Incompatible receiver, "+t+" required");return r}}},Rr=O,_r=o,Vr=F,Ir=Xt,kr=h,Lr=rr.CONFIGURABLE,Dr=ur,jr=Mr.enforce,Br=Mr.get,zr=String,Ur=Object.defineProperty,Fr=Rr("".slice),Hr=Rr("".replace),Xr=Rr([].join),Yr=kr&&!_r(function(){return 8!==Ur(function(){},"length",{value:8}).length}),Wr=String(String).split("String"),qr=Ge.exports=function(t,e,r){"Symbol("===Fr(zr(e),0,7)&&(e="["+Hr(zr(e),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),r&&r.getter&&(e="get "+e),r&&r.setter&&(e="set "+e),(!Ir(t,"name")||Lr&&t.name!==e)&&(kr?Ur(t,"name",{value:e,configurable:!0}):t.name=e),Yr&&r&&Ir(r,"arity")&&t.length!==r.arity&&Ur(t,"length",{value:r.arity});try{r&&Ir(r,"constructor")&&r.constructor?kr&&Ur(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch(n){}var i=jr(t);return Ir(i,"source")||(i.source=Xr(Wr,"string"==typeof e?e:"")),t};Function.prototype.toString=qr(function(){return Vr(this)&&Br(this).source||Dr(this)},"toString");var $r,Qr=Ge.exports,Gr=F,Zr=Me,Kr=Qr,Jr=Rt,ti=function(t,e,r,i){i||(i={});var n=i.enumerable,a=void 0!==i.name?i.name:e;if(Gr(r)&&Kr(r,a,i),i.global)n?t[e]=r:Jr(e,r);else{try{i.unsafe?t[e]&&(n=!0):delete t[e]}catch(s){}n?t[e]=r:Zr.f(t,e,{value:r,enumerable:!1,configurable:!i.nonConfigurable,writable:!i.nonWritable})}return t},ei={},ri=Math.ceil,ii=Math.floor,ni=Math.trunc||function(t){var e=+t;return(e>0?ii:ri)(e)},ai=function(t){var e=+t;return e!=e||0===e?0:ni(e)},si=ai,oi=Math.max,hi=Math.min,ui=ai,li=Math.min,ci=function(t){var e=ui(t);return e>0?li(e,9007199254740991):0},fi=ci,gi=function(t){return fi(t.length)},pi=z,di=function(t,e){var r=si(t);return r<0?oi(r+e,0):hi(r,e)},yi=gi,vi={indexOf:($r=!1,function(t,e,r){var i=pi(t),n=yi(i);if(0===n)return!$r&&-1;var a,s=di(r,n);if($r&&e!=e){for(;n>s;)if((a=i[s++])!=a)return!0}else for(;n>s;s++)if(($r||s in i)&&i[s]===e)return $r||s||0;return!$r&&-1})},mi=Xt,xi=z,bi=vi.indexOf,wi=yr,Si=O([].push),Ti=function(t,e){var r,i=xi(t),n=0,a=[];for(r in i)!mi(wi,r)&&mi(i,r)&&Si(a,r);for(;e.length>n;)mi(i,r=e[n++])&&(~bi(a,r)||Si(a,r));return a},Oi=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Ai=Ti,Ci=Oi.concat("length","prototype");ei.f=Object.getOwnPropertyNames||function(t){return Ai(t,Ci)};var Pi={};Pi.f=Object.getOwnPropertySymbols;var Ei=q,Ni=ei,Mi=Pi,Ri=ke,_i=O([].concat),Vi=Ei("Reflect","ownKeys")||function(t){var e=Ni.f(Ri(t)),r=Mi.f;return r?_i(e,r(t)):e},Ii=Xt,ki=Vi,Li=s,Di=Me,ji=o,Bi=F,zi=/#|\.prototype\./,Ui=function(t,e){var r=Hi[Fi(t)];return r===Yi||r!==Xi&&(Bi(e)?ji(e):!!e)},Fi=Ui.normalize=function(t){return String(t).replace(zi,".").toLowerCase()},Hi=Ui.data={},Xi=Ui.NATIVE="N",Yi=Ui.POLYFILL="P",Wi=Ui,qi=a,$i=s.f,Qi=Qe,Gi=ti,Zi=Rt,Ki=function(t,e,r){for(var i=ki(e),n=Di.f,a=Li.f,s=0;s<i.length;s++){var o=i[s];Ii(t,o)||r&&Ii(r,o)||n(t,o,a(e,o))}},Ji=Wi,tn=function(t,e){var r,i,n,a,s,o=t.target,h=t.global,u=t.stat;if(r=h?qi:u?qi[o]||Zi(o,{}):qi[o]&&qi[o].prototype)for(i in e){if(a=e[i],n=t.dontCallGetSet?(s=$i(r,i))&&s.value:r[i],!Ji(h?i:o+(u?".":"#")+i,t.forced)&&void 0!==n){if(typeof a==typeof n)continue;Ki(a,n)}(t.sham||n&&n.sham)&&Qi(a,"sham",!0),Gi(r,i,a,t)}},en=a,rn=Z,nn=E,an=function(t){return rn.slice(0,t.length)===t},sn=an("Bun/")?"BUN":an("Cloudflare-Workers")?"CLOUDFLARE":an("Deno/")?"DENO":an("Node.js/")?"NODE":en.Bun&&"string"==typeof Bun.version?"BUN":en.Deno&&"object"==typeof Deno.version?"DENO":"process"===nn(en.process)?"NODE":en.window&&en.document?"BROWSER":"REST",on="NODE"===sn,hn=a,un=O,ln=bt,cn=X,fn=function(t){return cn(t)||null===t},gn=String,pn=TypeError,dn=function(t,e,r){try{return un(ln(Object.getOwnPropertyDescriptor(t,e)[r]))}catch(i){}},yn=X,vn=D,mn=function(t){if(fn(t))return t;throw new pn("Can't set "+gn(t)+" as a prototype")},xn=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,r={};try{(t=dn(Object.prototype,"__proto__","set"))(r,[]),e=r instanceof Array}catch(i){}return function(r,i){return vn(r),mn(i),yn(r)?(e?t(r,i):r.__proto__=i,r):r}}():void 0),bn=Me.f,wn=Xt,Sn=ne("toStringTag"),Tn=function(t,e,r){t&&!r&&(t=t.prototype),t&&!wn(t,Sn)&&bn(t,Sn,{configurable:!0,value:e})},On=Qr,An=Me,Cn=q,Pn=function(t,e,r){return r.get&&On(r.get,e,{getter:!0}),r.set&&On(r.set,e,{setter:!0}),An.f(t,e,r)},En=h,Nn=ne("species"),Mn=$,Rn=TypeError,_n={};_n[ne("toStringTag")]="z";var Vn="[object z]"===String(_n),In=F,kn=E,Ln=ne("toStringTag"),Dn=Object,jn="Arguments"===kn(function(){return arguments}()),Bn=Vn?kn:function(t){var e,r,i;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(r){}}(e=Dn(t),Ln))?r:jn?kn(e):"Object"===(i=kn(e))&&In(e.callee)?"Arguments":i},zn=O,Un=o,Fn=F,Hn=Bn,Xn=ur,Yn=function(){},Wn=q("Reflect","construct"),qn=/^\s*(?:class|function)\b/,$n=zn(qn.exec),Qn=!qn.test(Yn),Gn=function(t){if(!Fn(t))return!1;try{return Wn(Yn,[],t),!0}catch(e){return!1}},Zn=function(t){if(!Fn(t))return!1;switch(Hn(t)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Qn||!!$n(qn,Xn(t))}catch(e){return!0}};Zn.sham=!0;var Kn,Jn,ta,ea,ra=!Wn||Un(function(){var t;return Gn(Gn.call)||!Gn(Object)||!Gn(function(){t=!0})||t})?Zn:Gn,ia=ra,na=yt,aa=TypeError,sa=ke,oa=function(t){if(ia(t))return t;throw new aa(na(t)+" is not a constructor")},ha=I,ua=ne("species"),la=function(t,e){var r,i=sa(t).constructor;return void 0===i||ha(r=sa(i)[ua])?e:oa(r)},ca=u,fa=Function.prototype,ga=fa.apply,pa=fa.call,da="object"==typeof Reflect&&Reflect.apply||(ca?pa.bind(ga):function(){return pa.apply(ga,arguments)}),ya=E,va=O,ma=function(t){if("Function"===ya(t))return va(t)},xa=bt,ba=u,wa=ma(ma.bind),Sa=function(t,e){return xa(t),void 0===e?t:ba?wa(t,e):function(){return t.apply(e,arguments)}},Ta=q("document","documentElement"),Oa=O([].slice),Aa=TypeError,Ca=/(?:ipad|iphone|ipod).*applewebkit/i.test(Z),Pa=a,Ea=da,Na=Sa,Ma=F,Ra=Xt,_a=o,Va=Ta,Ia=Oa,ka=me,La=function(t,e){if(t<e)throw new Aa("Not enough arguments");return t},Da=Ca,ja=on,Ba=Pa.setImmediate,za=Pa.clearImmediate,Ua=Pa.process,Fa=Pa.Dispatch,Ha=Pa.Function,Xa=Pa.MessageChannel,Ya=Pa.String,Wa=0,qa={},$a="onreadystatechange";_a(function(){Kn=Pa.location});var Qa=function(t){if(Ra(qa,t)){var e=qa[t];delete qa[t],e()}},Ga=function(t){return function(){Qa(t)}},Za=function(t){Qa(t.data)},Ka=function(t){Pa.postMessage(Ya(t),Kn.protocol+"//"+Kn.host)};Ba&&za||(Ba=function(t){La(arguments.length,1);var e=Ma(t)?t:Ha(t),r=Ia(arguments,1);return qa[++Wa]=function(){Ea(e,void 0,r)},Jn(Wa),Wa},za=function(t){delete qa[t]},ja?Jn=function(t){Ua.nextTick(Ga(t))}:Fa&&Fa.now?Jn=function(t){Fa.now(Ga(t))}:Xa&&!Da?(ea=(ta=new Xa).port2,ta.port1.onmessage=Za,Jn=Na(ea.postMessage,ea)):Pa.addEventListener&&Ma(Pa.postMessage)&&!Pa.importScripts&&Kn&&"file:"!==Kn.protocol&&!_a(Ka)?(Jn=Ka,Pa.addEventListener("message",Za,!1)):Jn=$a in ka("script")?function(t){Va.appendChild(ka("script"))[$a]=function(){Va.removeChild(this),Qa(t)}}:function(t){setTimeout(Ga(t),0)});var Ja={set:Ba},ts=a,es=h,rs=Object.getOwnPropertyDescriptor,is=function(){this.head=null,this.tail=null};is.prototype={add:function(t){var e={item:t,next:null},r=this.tail;r?r.next=e:this.head=e,this.tail=e},get:function(){var t=this.head;if(t)return null===(this.head=t.next)&&(this.tail=null),t.item}};var ns,as,ss,os,hs,us=is,ls=/ipad|iphone|ipod/i.test(Z)&&"undefined"!=typeof Pebble,cs=/web0s(?!.*chrome)/i.test(Z),fs=a,gs=function(t){if(!es)return ts[t];var e=rs(ts,t);return e&&e.value},ps=Sa,ds=Ja.set,ys=us,vs=Ca,ms=ls,xs=cs,bs=on,ws=fs.MutationObserver||fs.WebKitMutationObserver,Ss=fs.document,Ts=fs.process,Os=fs.Promise,As=gs("queueMicrotask");if(!As){var Cs=new ys,Ps=function(){var t,e;for(bs&&(t=Ts.domain)&&t.exit();e=Cs.get();)try{e()}catch(r){throw Cs.head&&ns(),r}t&&t.enter()};vs||bs||xs||!ws||!Ss?!ms&&Os&&Os.resolve?((os=Os.resolve(void 0)).constructor=Os,hs=ps(os.then,os),ns=function(){hs(Ps)}):bs?ns=function(){Ts.nextTick(Ps)}:(ds=ps(ds,fs),ns=function(){ds(Ps)}):(as=!0,ss=Ss.createTextNode(""),new ws(Ps).observe(ss,{characterData:!0}),ns=function(){ss.data=as=!as}),As=function(t){Cs.head||ns(),Cs.add(t)}}var Es=As,Ns=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}},Ms=a.Promise,Rs=a,_s=Ms,Vs=F,Is=Wi,ks=ur,Ls=ne,Ds=sn,js=nt;_s&&_s.prototype;var Bs=Ls("species"),zs=!1,Us=Vs(Rs.PromiseRejectionEvent),Fs={CONSTRUCTOR:Is("Promise",function(){var t=ks(_s),e=t!==String(_s);if(!e&&66===js)return!0;if(!js||js<51||!/native code/.test(t)){var r=new _s(function(t){t(1)}),i=function(t){t(function(){},function(){})};if((r.constructor={})[Bs]=i,!(zs=r.then(function(){})instanceof i))return!0}return!(e||"BROWSER"!==Ds&&"DENO"!==Ds||Us)}),REJECTION_EVENT:Us,SUBCLASSING:zs},Hs={},Xs=bt,Ys=TypeError,Ws=function(t){var e,r;this.promise=new t(function(t,i){if(void 0!==e||void 0!==r)throw new Ys("Bad Promise constructor");e=t,r=i}),this.resolve=Xs(e),this.reject=Xs(r)};Hs.f=function(t){return new Ws(t)};var qs,$s,Qs,Gs,Zs=tn,Ks=on,Js=a,to=hn,eo=f,ro=ti,io=xn,no=Tn,ao=function(t){var e=Cn(t);En&&e&&!e[Nn]&&Pn(e,Nn,{configurable:!0,get:function(){return this}})},so=bt,oo=F,ho=X,uo=function(t,e){if(Mn(e,t))return t;throw new Rn("Incorrect invocation")},lo=la,co=Ja.set,fo=Es,go=function(t,e){try{1===arguments.length?console.error(t):console.error(t,e)}catch(r){}},po=Ns,yo=us,vo=Mr,mo=Ms,xo=Hs,bo="Promise",wo=Fs.CONSTRUCTOR,So=Fs.REJECTION_EVENT,To=Fs.SUBCLASSING,Oo=vo.getterFor(bo),Ao=vo.set,Co=mo&&mo.prototype,Po=mo,Eo=Co,No=Js.TypeError,Mo=Js.document,Ro=Js.process,_o=xo.f,Vo=_o,Io=!!(Mo&&Mo.createEvent&&Js.dispatchEvent),ko="unhandledrejection",Lo=function(t){var e;return!(!ho(t)||!oo(e=t.then))&&e},Do=function(t,e){var r,i,n,a=e.value,s=1===e.state,o=s?t.ok:t.fail,h=t.resolve,u=t.reject,l=t.domain;try{o?(s||(2===e.rejection&&Fo(e),e.rejection=1),!0===o?r=a:(l&&l.enter(),r=o(a),l&&(l.exit(),n=!0)),r===t.promise?u(new No("Promise-chain cycle")):(i=Lo(r))?eo(i,r,h,u):h(r)):u(a)}catch(c){l&&!n&&l.exit(),u(c)}},jo=function(t,e){t.notified||(t.notified=!0,fo(function(){for(var r,i=t.reactions;r=i.get();)Do(r,t);t.notified=!1,e&&!t.rejection&&zo(t)}))},Bo=function(t,e,r){var i,n;Io?((i=Mo.createEvent("Event")).promise=e,i.reason=r,i.initEvent(t,!1,!0),Js.dispatchEvent(i)):i={promise:e,reason:r},!So&&(n=Js["on"+t])?n(i):t===ko&&go("Unhandled promise rejection",r)},zo=function(t){eo(co,Js,function(){var e,r=t.facade,i=t.value;if(Uo(t)&&(e=po(function(){Ks?Ro.emit("unhandledRejection",i,r):Bo(ko,r,i)}),t.rejection=Ks||Uo(t)?2:1,e.error))throw e.value})},Uo=function(t){return 1!==t.rejection&&!t.parent},Fo=function(t){eo(co,Js,function(){var e=t.facade;Ks?Ro.emit("rejectionHandled",e):Bo("rejectionhandled",e,t.value)})},Ho=function(t,e,r){return function(i){t(e,i,r)}},Xo=function(t,e,r){t.done||(t.done=!0,r&&(t=r),t.value=e,t.state=2,jo(t,!0))},Yo=function(t,e,r){if(!t.done){t.done=!0,r&&(t=r);try{if(t.facade===e)throw new No("Promise can't be resolved itself");var i=Lo(e);i?fo(function(){var r={done:!1};try{eo(i,e,Ho(Yo,r,t),Ho(Xo,r,t))}catch(n){Xo(r,n,t)}}):(t.value=e,t.state=1,jo(t,!1))}catch(n){Xo({done:!1},n,t)}}};if(wo&&(Eo=(Po=function(t){uo(this,Eo),so(t),eo(qs,this);var e=Oo(this);try{t(Ho(Yo,e),Ho(Xo,e))}catch(r){Xo(e,r)}}).prototype,(qs=function(t){Ao(this,{type:bo,done:!1,notified:!1,parent:!1,reactions:new yo,rejection:!1,state:0,value:null})}).prototype=ro(Eo,"then",function(t,e){var r=Oo(this),i=_o(lo(this,Po));return r.parent=!0,i.ok=!oo(t)||t,i.fail=oo(e)&&e,i.domain=Ks?Ro.domain:void 0,0===r.state?r.reactions.add(i):fo(function(){Do(i,r)}),i.promise}),$s=function(){var t=new qs,e=Oo(t);this.promise=t,this.resolve=Ho(Yo,e),this.reject=Ho(Xo,e)},xo.f=_o=function(t){return t===Po||t===Qs?new $s(t):Vo(t)},oo(mo)&&Co!==Object.prototype)){Gs=Co.then,To||ro(Co,"then",function(t,e){var r=this;return new Po(function(t,e){eo(Gs,r,t,e)}).then(t,e)},{unsafe:!0});try{delete Co.constructor}catch(Jv){}io&&io(Co,Eo)}Zs({global:!0,constructor:!0,wrap:!0,forced:wo},{Promise:Po}),Qs=to.Promise,no(Po,bo,!1),ao(bo);var Wo={},qo=Wo,$o=ne("iterator"),Qo=Array.prototype,Go=Bn,Zo=Tt,Ko=I,Jo=Wo,th=ne("iterator"),eh=function(t){if(!Ko(t))return Zo(t,th)||Zo(t,"@@iterator")||Jo[Go(t)]},rh=f,ih=bt,nh=ke,ah=yt,sh=eh,oh=TypeError,hh=f,uh=ke,lh=Tt,ch=Sa,fh=f,gh=ke,ph=yt,dh=function(t){return void 0!==t&&(qo.Array===t||Qo[$o]===t)},yh=gi,vh=$,mh=function(t,e){var r=arguments.length<2?sh(t):e;if(ih(r))return nh(rh(r,t));throw new oh(ah(t)+" is not iterable")},xh=eh,bh=function(t,e,r){var i,n;uh(t);try{if(!(i=lh(t,"return"))){if("throw"===e)throw r;return r}i=hh(i,t)}catch(Jv){n=!0,i=Jv}if("throw"===e)throw r;if(n)throw i;return uh(i),r},wh=TypeError,Sh=function(t,e){this.stopped=t,this.result=e},Th=Sh.prototype,Oh=function(t,e,r){var i,n,a,s,o,h,u,l=r&&r.that,c=!(!r||!r.AS_ENTRIES),f=!(!r||!r.IS_RECORD),g=!(!r||!r.IS_ITERATOR),p=!(!r||!r.INTERRUPTED),d=ch(e,l),y=function(t){return i&&bh(i,"normal"),new Sh(!0,t)},v=function(t){return c?(gh(t),p?d(t[0],t[1],y):d(t[0],t[1])):p?d(t,y):d(t)};if(f)i=t.iterator;else if(g)i=t;else{if(!(n=xh(t)))throw new wh(ph(t)+" is not iterable");if(dh(n)){for(a=0,s=yh(t);s>a;a++)if((o=v(t[a]))&&vh(Th,o))return o;return new Sh(!1)}i=mh(t,n)}for(h=f?t.next:i.next;!(u=fh(h,i)).done;){try{o=v(u.value)}catch(Jv){bh(i,"throw",Jv)}if("object"==typeof o&&o&&vh(Th,o))return o}return new Sh(!1)},Ah=ne("iterator"),Ch=!1;try{var Ph=0,Eh={next:function(){return{done:!!Ph++}},return:function(){Ch=!0}};Eh[Ah]=function(){return this},Array.from(Eh,function(){throw 2})}catch(Jv){}var Nh=Ms,Mh=Fs.CONSTRUCTOR||!function(t,e){try{if(!e&&!Ch)return!1}catch(Jv){return!1}var r=!1;try{var i={};i[Ah]=function(){return{next:function(){return{done:r=!0}}}},t(i)}catch(Jv){}return r}(function(t){Nh.all(t).then(void 0,function(){})}),Rh=f,_h=bt,Vh=Hs,Ih=Ns,kh=Oh;tn({target:"Promise",stat:!0,forced:Mh},{all:function(t){var e=this,r=Vh.f(e),i=r.resolve,n=r.reject,a=Ih(function(){var r=_h(e.resolve),a=[],s=0,o=1;kh(t,function(t){var h=s++,u=!1;o++,Rh(r,e,t).then(function(t){u||(u=!0,a[h]=t,--o||i(a))},n)}),--o||i(a)});return a.error&&n(a.value),r.promise}});var Lh=tn,Dh=Fs.CONSTRUCTOR,jh=Ms,Bh=q,zh=F,Uh=ti,Fh=jh&&jh.prototype;if(Lh({target:"Promise",proto:!0,forced:Dh,real:!0},{catch:function(t){return this.then(void 0,t)}}),zh(jh)){var Hh=Bh("Promise").prototype.catch;Fh.catch!==Hh&&Uh(Fh,"catch",Hh,{unsafe:!0})}var Xh=f,Yh=bt,Wh=Hs,qh=Ns,$h=Oh;tn({target:"Promise",stat:!0,forced:Mh},{race:function(t){var e=this,r=Wh.f(e),i=r.reject,n=qh(function(){var n=Yh(e.resolve);$h(t,function(t){Xh(n,e,t).then(r.resolve,i)})});return n.error&&i(n.value),r.promise}});var Qh=Hs;tn({target:"Promise",stat:!0,forced:Fs.CONSTRUCTOR},{reject:function(t){var e=Qh.f(this);return(0,e.reject)(t),e.promise}});var Gh=ke,Zh=X,Kh=Hs,Jh=tn,tu=Fs.CONSTRUCTOR,eu=function(t,e){if(Gh(t),Zh(e)&&e.constructor===t)return e;var r=Kh.f(t);return(0,r.resolve)(e),r.promise};function ru(t,e,r,i,n,a,s){try{var o=t[a](s),h=o.value}catch(u){return void r(u)}o.done?e(h):Promise.resolve(h).then(i,n)}function iu(t){return function(){var e=this,r=arguments;return new Promise(function(i,n){var a=t.apply(e,r);function s(t){ru(a,i,n,s,o,"next",t)}function o(t){ru(a,i,n,s,o,"throw",t)}s(void 0)})}}q("Promise"),Jh({target:"Promise",stat:!0,forced:tu},{resolve:function(t){return eu(this,t)}});var nu=Bn,au=String,su=function(t){if("Symbol"===nu(t))throw new TypeError("Cannot convert a Symbol value to a string");return au(t)},ou=ke,hu=function(){var t=ou(this),e="";return t.hasIndices&&(e+="d"),t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.unicodeSets&&(e+="v"),t.sticky&&(e+="y"),e},uu=o,lu=a.RegExp,cu=uu(function(){var t=lu("a","y");return t.lastIndex=2,null!==t.exec("abcd")});cu||uu(function(){return!lu("a","y").sticky});var fu={BROKEN_CARET:cu||uu(function(){var t=lu("^r","gy");return t.lastIndex=2,null!==t.exec("str")}),UNSUPPORTED_Y:cu},gu={},pu=Ti,du=Oi,yu=Object.keys||function(t){return pu(t,du)},vu=h,mu=Re,xu=Me,bu=ke,wu=z,Su=yu;gu.f=vu&&!mu?Object.defineProperties:function(t,e){bu(t);for(var r,i=wu(e),n=Su(e),a=n.length,s=0;a>s;)xu.f(t,r=n[s++],i[r]);return t};var Tu,Ou=ke,Au=gu,Cu=Oi,Pu=yr,Eu=Ta,Nu=me,Mu="prototype",Ru="script",_u=dr("IE_PROTO"),Vu=function(){},Iu=function(t){return"<"+Ru+">"+t+"</"+Ru+">"},ku=function(t){t.write(Iu("")),t.close();var e=t.parentWindow.Object;return t=null,e},Lu=function(){try{Tu=new ActiveXObject("htmlfile")}catch(Jv){}var t,e,r;Lu="undefined"!=typeof document?document.domain&&Tu?ku(Tu):(e=Nu("iframe"),r="java"+Ru+":",e.style.display="none",Eu.appendChild(e),e.src=String(r),(t=e.contentWindow.document).open(),t.write(Iu("document.F=Object")),t.close(),t.F):ku(Tu);for(var i=Cu.length;i--;)delete Lu[Mu][Cu[i]];return Lu()};Pu[_u]=!0;var Du,ju,Bu=Object.create||function(t,e){var r;return null!==t?(Vu[Mu]=Ou(t),r=new Vu,Vu[Mu]=null,r[_u]=t):r=Lu(),void 0===e?r:Au.f(r,e)},zu=o,Uu=a.RegExp,Fu=zu(function(){var t=Uu(".","s");return!(t.dotAll&&t.test("\n")&&"s"===t.flags)}),Hu=o,Xu=a.RegExp,Yu=Hu(function(){var t=Xu("(?<a>b)","g");return"b"!==t.exec("b").groups.a||"bc"!=="b".replace(t,"$<a>c")}),Wu=f,qu=O,$u=su,Qu=hu,Gu=fu,Zu=Bu,Ku=Mr.get,Ju=Fu,tl=Yu,el=jt("native-string-replace",String.prototype.replace),rl=RegExp.prototype.exec,il=rl,nl=qu("".charAt),al=qu("".indexOf),sl=qu("".replace),ol=qu("".slice),hl=(ju=/b*/g,Wu(rl,Du=/a/,"a"),Wu(rl,ju,"a"),0!==Du.lastIndex||0!==ju.lastIndex),ul=Gu.BROKEN_CARET,ll=void 0!==/()??/.exec("")[1];(hl||ll||ul||Ju||tl)&&(il=function(t){var e,r,i,n,a,s,o,h=this,u=Ku(h),l=$u(t),c=u.raw;if(c)return c.lastIndex=h.lastIndex,e=Wu(il,c,l),h.lastIndex=c.lastIndex,e;var f=u.groups,g=ul&&h.sticky,p=Wu(Qu,h),d=h.source,y=0,v=l;if(g&&(p=sl(p,"y",""),-1===al(p,"g")&&(p+="g"),v=ol(l,h.lastIndex),h.lastIndex>0&&(!h.multiline||h.multiline&&"\n"!==nl(l,h.lastIndex-1))&&(d="(?: "+d+")",v=" "+v,y++),r=new RegExp("^(?:"+d+")",p)),ll&&(r=new RegExp("^"+d+"$(?!\\s)",p)),hl&&(i=h.lastIndex),n=Wu(rl,g?r:h,v),g?n?(n.input=ol(n.input,y),n[0]=ol(n[0],y),n.index=h.lastIndex,h.lastIndex+=n[0].length):h.lastIndex=0:hl&&n&&(h.lastIndex=h.global?n.index+n[0].length:i),ll&&n&&n.length>1&&Wu(el,n[0],r,function(){for(a=1;a<arguments.length-2;a++)void 0===arguments[a]&&(n[a]=void 0)}),n&&f)for(n.groups=s=Zu(null),a=0;a<f.length;a++)s[(o=f[a])[0]]=n[o[1]];return n});var cl=il;tn({target:"RegExp",proto:!0,forced:/./.exec!==cl},{exec:cl});var fl,gl=f,pl=ti,dl=cl,yl=o,vl=ne,ml=Qe,xl=vl("species"),bl=RegExp.prototype,wl=function(t,e,r,i){var n=vl(t),a=!yl(function(){var e={};return e[n]=function(){return 7},7!==""[t](e)}),s=a&&!yl(function(){var e=!1,r=/a/;if("split"===t){var i={};i[xl]=function(){return r},(r={constructor:i,flags:""})[n]=/./[n]}return r.exec=function(){return e=!0,null},r[n](""),!e});if(!a||!s||r){var o=/./[n],h=e(n,""[t],function(t,e,r,i,n){var s=e.exec;return s===dl||s===bl.exec?a&&!n?{done:!0,value:gl(o,e,r,i)}:{done:!0,value:gl(t,r,e,i)}:{done:!1}});pl(String.prototype,t,h[0]),pl(bl,n,h[1])}i&&ml(bl[n],"sham",!0)},Sl=O,Tl=ai,Ol=su,Al=D,Cl=Sl("".charAt),Pl=Sl("".charCodeAt),El=Sl("".slice),Nl={charAt:(fl=!0,function(t,e){var r,i,n=Ol(Al(t)),a=Tl(e),s=n.length;return a<0||a>=s?fl?"":void 0:(r=Pl(n,a))<55296||r>56319||a+1===s||(i=Pl(n,a+1))<56320||i>57343?fl?Cl(n,a):r:fl?El(n,a,a+2):i-56320+(r-55296<<10)+65536})}.charAt,Ml=function(t,e,r){return e+(r?Nl(t,e).length:1)},Rl=o,_l=a.RegExp,Vl=!Rl(function(){var t=!0;try{_l(".","d")}catch(Jv){t=!1}var e={},r="",i=t?"dgimsy":"gimsy",n=function(t,i){Object.defineProperty(e,t,{get:function(){return r+=i,!0}})},a={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};for(var s in t&&(a.hasIndices="d"),a)n(s,a[s]);return Object.getOwnPropertyDescriptor(_l.prototype,"flags").get.call(e)!==i||r!==i}),Il=f,kl=Xt,Ll=$,Dl={correct:Vl},jl=hu,Bl=RegExp.prototype,zl=Dl.correct?function(t){return t.flags}:function(t){return Dl.correct||!Ll(Bl,t)||kl(t,"flags")?t.flags:Il(jl,t)},Ul=f,Fl=ke,Hl=F,Xl=E,Yl=cl,Wl=TypeError,ql=function(t,e){var r=t.exec;if(Hl(r)){var i=Ul(r,t,e);return null!==i&&Fl(i),i}if("RegExp"===Xl(t))return Ul(Yl,t,e);throw new Wl("RegExp#exec called on incompatible receiver")},$l=f,Ql=wl,Gl=ke,Zl=X,Kl=ci,Jl=su,tc=D,ec=Tt,rc=Ml,ic=zl,nc=ql,ac=O("".indexOf);Ql("match",function(t,e,r){return[function(e){var r=tc(this),i=Zl(e)?ec(e,t):void 0;return i?$l(i,e,r):new RegExp(e)[t](Jl(r))},function(t){var i=Gl(this),n=Jl(t),a=r(e,i,n);if(a.done)return a.value;var s=Jl(ic(i));if(-1===ac(s,"g"))return nc(i,n);var o=-1!==ac(s,"u");i.lastIndex=0;for(var h,u=[],l=0;null!==(h=nc(i,n));){var c=Jl(h[0]);u[l]=c,""===c&&(i.lastIndex=rc(n,Kl(i.lastIndex),o)),l++}return 0===l?null:u}]});var sc=O,oc=Ut,hc=Math.floor,uc=sc("".charAt),lc=sc("".replace),cc=sc("".slice),fc=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,gc=/\$([$&'`]|\d{1,2})/g,pc=da,dc=f,yc=O,vc=wl,mc=o,xc=ke,bc=F,wc=X,Sc=ai,Tc=ci,Oc=su,Ac=D,Cc=Ml,Pc=Tt,Ec=function(t,e,r,i,n,a){var s=r+t.length,o=i.length,h=gc;return void 0!==n&&(n=oc(n),h=fc),lc(a,h,function(a,h){var u;switch(uc(h,0)){case"$":return"$";case"&":return t;case"`":return cc(e,0,r);case"'":return cc(e,s);case"<":u=n[cc(h,1,-1)];break;default:var l=+h;if(0===l)return a;if(l>o){var c=hc(l/10);return 0===c?a:c<=o?void 0===i[c-1]?uc(h,1):i[c-1]+uc(h,1):a}u=i[l-1]}return void 0===u?"":u})},Nc=zl,Mc=ql,Rc=ne("replace"),_c=Math.max,Vc=Math.min,Ic=yc([].concat),kc=yc([].push),Lc=yc("".indexOf),Dc=yc("".slice),jc=function(t){return void 0===t?t:String(t)},Bc="$0"==="a".replace(/./,"$0"),zc=!!/./[Rc]&&""===/./[Rc]("a","$0");vc("replace",function(t,e,r){var i=zc?"$":"$0";return[function(t,r){var i=Ac(this),n=wc(t)?Pc(t,Rc):void 0;return n?dc(n,t,i,r):dc(e,Oc(i),t,r)},function(t,n){var a=xc(this),s=Oc(t);if("string"==typeof n&&-1===Lc(n,i)&&-1===Lc(n,"$<")){var o=r(e,a,s,n);if(o.done)return o.value}var h=bc(n);h||(n=Oc(n));var u,l=Oc(Nc(a)),c=-1!==Lc(l,"g");c&&(u=-1!==Lc(l,"u"),a.lastIndex=0);for(var f,g=[];null!==(f=Mc(a,s))&&(kc(g,f),c);){""===Oc(f[0])&&(a.lastIndex=Cc(s,Tc(a.lastIndex),u))}for(var p="",d=0,y=0;y<g.length;y++){for(var v,m=Oc((f=g[y])[0]),x=_c(Vc(Sc(f.index),s.length),0),b=[],w=1;w<f.length;w++)kc(b,jc(f[w]));var S=f.groups;if(h){var T=Ic([m],b,x,s);void 0!==S&&kc(T,S),v=Oc(pc(n,void 0,T))}else v=Ec(m,s,x,b,S,n);x>=d&&(p+=Dc(s,d,x)+v,d=x+m.length)}return p+Dc(s,d)}]},!!mc(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})||!Bc||zc);var Uc,Fc=X,Hc=E,Xc=ne("match"),Yc=function(t){var e;return Fc(t)&&(void 0!==(e=t[Xc])?!!e:"RegExp"===Hc(t))},Wc=TypeError,qc=function(t){if(Yc(t))throw new Wc("The method doesn't accept regular expressions");return t},$c=ne("match"),Qc=function(t){var e=/./;try{"/./"[t](e)}catch(r){try{return e[$c]=!1,"/./"[t](e)}catch(i){}}return!1},Gc=tn,Zc=ma,Kc=s.f,Jc=ci,tf=su,ef=qc,rf=D,nf=Qc,af=Zc("".slice),sf=Math.min,of=nf("startsWith");Gc({target:"String",proto:!0,forced:!!(of||(Uc=Kc(String.prototype,"startsWith"),!Uc||Uc.writable))&&!of},{startsWith:function(t){var e=tf(rf(this));ef(t);var r=Jc(sf(arguments.length>1?arguments[1]:void 0,e.length)),i=tf(t);return af(e,r,r+i.length)===i}});var hf=ne,uf=Bu,lf=Me.f,cf=hf("unscopables"),ff=Array.prototype;void 0===ff[cf]&&lf(ff,cf,{configurable:!0,value:uf(null)});var gf,pf,df,yf=!o(function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}),vf=Xt,mf=F,xf=Ut,bf=yf,wf=dr("IE_PROTO"),Sf=Object,Tf=Sf.prototype,Of=bf?Sf.getPrototypeOf:function(t){var e=xf(t);if(vf(e,wf))return e[wf];var r=e.constructor;return mf(r)&&e instanceof r?r.prototype:e instanceof Sf?Tf:null},Af=o,Cf=F,Pf=X,Ef=Of,Nf=ti,Mf=ne("iterator"),Rf=!1;[].keys&&("next"in(df=[].keys())?(pf=Ef(Ef(df)))!==Object.prototype&&(gf=pf):Rf=!0),(!Pf(gf)||Af(function(){var t={};return gf[Mf].call(t)!==t}))&&(gf={}),Cf(gf[Mf])||Nf(gf,Mf,function(){return this});var _f={IteratorPrototype:gf,BUGGY_SAFARI_ITERATORS:Rf},Vf=_f.IteratorPrototype,If=Bu,kf=x,Lf=Tn,Df=Wo,jf=function(){return this},Bf=tn,zf=f,Uf=F,Ff=function(t,e,r,i){var n=e+" Iterator";return t.prototype=If(Vf,{next:kf(+!i,r)}),Lf(t,n,!1),Df[n]=jf,t},Hf=Of,Xf=xn,Yf=Tn,Wf=Qe,qf=ti,$f=Wo,Qf=rr.PROPER,Gf=rr.CONFIGURABLE,Zf=_f.IteratorPrototype,Kf=_f.BUGGY_SAFARI_ITERATORS,Jf=ne("iterator"),tg="keys",eg="values",rg="entries",ig=function(){return this},ng=z,ag=function(t){ff[cf][t]=!0},sg=Wo,og=Mr,hg=Me.f,ug=function(t,e,r,i,n,a,s){Ff(r,e,i);var o,h,u,l=function(t){if(t===n&&d)return d;if(!Kf&&t&&t in g)return g[t];switch(t){case tg:case eg:case rg:return function(){return new r(this,t)}}return function(){return new r(this)}},c=e+" Iterator",f=!1,g=t.prototype,p=g[Jf]||g["@@iterator"]||n&&g[n],d=!Kf&&p||l(n),y="Array"===e&&g.entries||p;if(y&&(o=Hf(y.call(new t)))!==Object.prototype&&o.next&&(Hf(o)!==Zf&&(Xf?Xf(o,Zf):Uf(o[Jf])||qf(o,Jf,ig)),Yf(o,c,!0)),Qf&&n===eg&&p&&p.name!==eg&&(Gf?Wf(g,"name",eg):(f=!0,d=function(){return zf(p,this)})),n)if(h={values:l(eg),keys:a?d:l(tg),entries:l(rg)},s)for(u in h)(Kf||f||!(u in g))&&qf(g,u,h[u]);else Bf({target:e,proto:!0,forced:Kf||f},h);return g[Jf]!==d&&qf(g,Jf,d,{name:n}),$f[e]=d,h},lg=function(t,e){return{value:t,done:e}},cg=h,fg="Array Iterator",gg=og.set,pg=og.getterFor(fg),dg=ug(Array,"Array",function(t,e){gg(this,{type:fg,target:ng(t),index:0,kind:e})},function(){var t=pg(this),e=t.target,r=t.index++;if(!e||r>=e.length)return t.target=null,lg(void 0,!0);switch(t.kind){case"keys":return lg(r,!1);case"values":return lg(e[r],!1)}return lg([r,e[r]],!1)},"values"),yg=sg.Arguments=sg.Array;if(ag("keys"),ag("values"),ag("entries"),cg&&"values"!==yg.name)try{hg(yg,"name",{value:"values"})}catch(Jv){}var vg=me("span").classList,mg=vg&&vg.constructor&&vg.constructor.prototype,xg=mg===Object.prototype?void 0:mg,bg=a,wg={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},Sg=xg,Tg=dg,Og=Qe,Ag=Tn,Cg=ne("iterator"),Pg=Tg.values,Eg=function(t,e){if(t){if(t[Cg]!==Pg)try{Og(t,Cg,Pg)}catch(Jv){t[Cg]=Pg}if(Ag(t,e,!0),wg[e])for(var r in Tg)if(t[r]!==Tg[r])try{Og(t,r,Tg[r])}catch(Jv){t[r]=Tg[r]}}};for(var Ng in wg)Eg(bg[Ng]&&bg[Ng].prototype,Ng);function Mg(t){var r=function(t,r){if("object"!=e(t)||!t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,r);if("object"!=e(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}(t,"string");return"symbol"==e(r)?r:r+""}function Rg(t,e,r){return(e=Mg(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}Eg(Sg,"DOMTokenList");var _g,Vg=bt,Ig=Ut,kg=V,Lg=gi,Dg=TypeError,jg="Reduce of empty array with no initial value",Bg={left:(_g=!1,function(t,e,r,i){var n=Ig(t),a=kg(n),s=Lg(n);if(Vg(e),0===s&&r<2)throw new Dg(jg);var o=_g?s-1:0,h=_g?-1:1;if(r<2)for(;;){if(o in a){i=a[o],o+=h;break}if(o+=h,_g?o<0:s<=o)throw new Dg(jg)}for(;_g?o>=0:s>o;o+=h)o in a&&(i=e(i,a[o],o,n));return i})},zg=o,Ug=function(t,e){var r=[][t];return!!r&&zg(function(){r.call(null,e||function(){return 1},1)})},Fg=Bg.left;tn({target:"Array",proto:!0,forced:!on&&nt>79&&nt<83||!Ug("reduce")},{reduce:function(t){var e=arguments.length;return Fg(this,t,e,e>1?arguments[1]:void 0)}});var Hg=tn,Xg=ma,Yg=s.f,Wg=ci,qg=su,$g=qc,Qg=D,Gg=Qc,Zg=Xg("".slice),Kg=Math.min,Jg=Gg("endsWith"),tp=!Jg&&!!function(){var t=Yg(String.prototype,"endsWith");return t&&!t.writable}();Hg({target:"String",proto:!0,forced:!tp&&!Jg},{endsWith:function(t){var e=qg(Qg(this));$g(t);var r=arguments.length>1?arguments[1]:void 0,i=e.length,n=void 0===r?i:Kg(Wg(r),i),a=qg(t);return Zg(e,n-a.length,n)===a}});var ep=f,rp=O,ip=wl,np=ke,ap=X,sp=D,op=la,hp=Ml,up=ci,lp=su,cp=Tt,fp=ql,gp=o,pp=fu.UNSUPPORTED_Y,dp=Math.min,yp=rp([].push),vp=rp("".slice),mp=!gp(function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r="ab".split(t);return 2!==r.length||"a"!==r[0]||"b"!==r[1]}),xp="c"==="abbc".split(/(b)*/)[1]||4!=="test".split(/(?:)/,-1).length||2!=="ab".split(/(?:ab)*/).length||4!==".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length;ip("split",function(t,e,r){var i="0".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:ep(e,this,t,r)}:e;return[function(e,r){var n=sp(this),a=ap(e)?cp(e,t):void 0;return a?ep(a,e,n,r):ep(i,lp(n),e,r)},function(t,n){var a=np(this),s=lp(t);if(!xp){var o=r(i,a,s,n,i!==e);if(o.done)return o.value}var h=op(a,RegExp),u=a.unicode,l=(a.ignoreCase?"i":"")+(a.multiline?"m":"")+(a.unicode?"u":"")+(pp?"g":"y"),c=new h(pp?"^(?:"+a.source+")":a,l),f=void 0===n?4294967295:n>>>0;if(0===f)return[];if(0===s.length)return null===fp(c,s)?[s]:[];for(var g=0,p=0,d=[];p<s.length;){c.lastIndex=pp?0:p;var y,v=fp(c,pp?vp(s,p):s);if(null===v||(y=dp(up(c.lastIndex+(pp?p:0)),s.length))===g)p=hp(s,p,u);else{if(yp(d,vp(s,g,p)),d.length===f)return d;for(var m=1;m<=v.length-1;m++)if(yp(d,v[m]),d.length===f)return d;p=g=y}}return yp(d,vp(s,g)),d}]},xp||!mp,pp);var bp={exports:{}},wp={exports:{}};(function(){var t,e,i,n,a,s;"undefined"!=typeof performance&&null!==performance&&performance.now?wp.exports=function(){return performance.now()}:null!=r&&r.hrtime?(wp.exports=function(){return(t()-a)/1e6},e=r.hrtime,n=(t=function(){var t;return 1e9*(t=e())[0]+t[1]})(),s=1e9*r.uptime(),a=n-s):Date.now?(wp.exports=function(){return Date.now()-i},i=Date.now()):(wp.exports=function(){return(new Date).getTime()-i},i=(new Date).getTime())}).call(t);for(var Sp=wp.exports,Tp="undefined"==typeof window?t:window,Op=["moz","webkit"],Ap="AnimationFrame",Cp=Tp["request"+Ap],Pp=Tp["cancel"+Ap]||Tp["cancelRequest"+Ap],Ep=0;!Cp&&Ep<Op.length;Ep++)Cp=Tp[Op[Ep]+"Request"+Ap],Pp=Tp[Op[Ep]+"Cancel"+Ap]||Tp[Op[Ep]+"CancelRequest"+Ap];if(!Cp||!Pp){var Np=0,Mp=0,Rp=[],_p=1e3/60;Cp=function(t){if(0===Rp.length){var e=Sp(),r=Math.max(0,_p-(e-Np));Np=r+e,setTimeout(function(){var t=Rp.slice(0);Rp.length=0;for(var e=0;e<t.length;e++)if(!t[e].cancelled)try{t[e].callback(Np)}catch(r){setTimeout(function(){throw r},0)}},Math.round(r))}return Rp.push({handle:++Mp,callback:t,cancelled:!1}),Mp},Pp=function(t){for(var e=0;e<Rp.length;e++)Rp[e].handle===t&&(Rp[e].cancelled=!0)}}bp.exports=function(t){return Cp.call(Tp,t)},bp.exports.cancel=function(){Pp.apply(Tp,arguments)},bp.exports.polyfill=function(t){t||(t=Tp),t.requestAnimationFrame=Cp,t.cancelAnimationFrame=Pp};const Vp=i(bp.exports);var Ip,kp="\t\n\v\f\r \u2028\u2029\ufeff",Lp=D,Dp=su,jp=kp,Bp=O("".replace),zp=RegExp("^["+jp+"]+"),Up=RegExp("(^|[^"+jp+"])["+jp+"]+$"),Fp={trim:(Ip=3,function(t){var e=Dp(Lp(t));return 1&Ip&&(e=Bp(e,zp,"")),2&Ip&&(e=Bp(e,Up,"$1")),e})},Hp=rr.PROPER,Xp=o,Yp=kp,Wp=Fp.trim;tn({target:"String",proto:!0,forced:function(t){return Xp(function(){return!!Yp[t]()||"
"!=="
"[t]()||Hp&&Yp[t].name!==t})}("trim")},{trim:function(){return Wp(this)}});const qp=i(function(t){this.ok=!1,this.alpha=1,"#"==t.charAt(0)&&(t=t.substr(1,6)),t=(t=t.replace(/ /g,"")).toLowerCase();var e={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};t=e[t]||t;for(var r=[{re:/^rgba\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3}),\s*((?:\d?\.)?\d)\)$/,example:["rgba(123, 234, 45, 0.8)","rgba(255,234,245,1.0)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3]),parseFloat(t[4])]}},{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3])]}},{re:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,example:["#00ff00","336699"],process:function(t){return[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]}},{re:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,example:["#fb0","f0f"],process:function(t){return[parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)]}}],i=0;i<r.length;i++){var n=r[i].re,a=r[i].process,s=n.exec(t);if(s){var o=a(s);this.r=o[0],this.g=o[1],this.b=o[2],o.length>3&&(this.alpha=o[3]),this.ok=!0}}this.r=this.r<0||isNaN(this.r)?0:this.r>255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b,this.alpha=this.alpha<0?0:this.alpha>1||isNaN(this.alpha)?1:this.alpha,this.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},this.toRGBA=function(){return"rgba("+this.r+", "+this.g+", "+this.b+", "+this.alpha+")"},this.toHex=function(){var t=this.r.toString(16),e=this.g.toString(16),r=this.b.toString(16);return 1==t.length&&(t="0"+t),1==e.length&&(e="0"+e),1==r.length&&(r="0"+r),"#"+t+e+r},this.getHelpXML=function(){for(var t=new Array,i=0;i<r.length;i++)for(var n=r[i].example,a=0;a<n.length;a++)t[t.length]=n[a];for(var s in e)t[t.length]=s;var o=document.createElement("ul");o.setAttribute("id","rgbcolor-examples");for(i=0;i<t.length;i++)try{var h=document.createElement("li"),u=new RGBColor(t[i]),l=document.createElement("div");l.style.cssText="margin: 3px; border: 1px solid black; background:"+u.toHex()+"; color:"+u.toHex(),l.appendChild(document.createTextNode("test"));var c=document.createTextNode(" "+t[i]+" -> "+u.toRGB()+" -> "+u.toHex());h.appendChild(l),h.appendChild(c),o.appendChild(h)}catch(f){}return o}});var $p=tn,Qp=vi.indexOf,Gp=Ug,Zp=ma([].indexOf),Kp=!!Zp&&1/Zp([1],1,-0)<0;$p({target:"Array",proto:!0,forced:Kp||!Gp("indexOf")},{indexOf:function(t){var e=arguments.length>1?arguments[1]:void 0;return Kp?Zp(this,t,e)||0:Qp(this,t,e)}});var Jp=tn,td=qc,ed=D,rd=su,id=Qc,nd=O("".indexOf);Jp({target:"String",proto:!0,forced:!id("includes")},{includes:function(t){return!!~nd(rd(ed(this)),rd(td(t)),arguments.length>1?arguments[1]:void 0)}});var ad=E,sd=tn,od=Array.isArray||function(t){return"Array"===ad(t)},hd=O([].reverse),ud=[1,2];sd({target:"Array",proto:!0,forced:String(ud)===String(ud.reverse())},{reverse:function(){return od(this)&&(this.length=this.length),hd(this)}});
|
|
1
|
+
import{bP as t,bQ as e,bR as r,bM as i}from"./index-Cgx-XS5d.js";var n=function(t){return t&&t.Math===Math&&t},a=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||n("object"==typeof t&&t)||function(){return this}()||Function("return this")(),s={},o=function(t){try{return!!t()}catch(e){return!0}},h=!o(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}),u=!o(function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")}),l=u,c=Function.prototype.call,f=l?c.bind(c):function(){return c.apply(c,arguments)},g={},p={}.propertyIsEnumerable,d=Object.getOwnPropertyDescriptor,y=d&&!p.call({1:2},1);g.f=y?function(t){var e=d(this,t);return!!e&&e.enumerable}:p;var v,m,x=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},b=u,w=Function.prototype,S=w.call,T=b&&w.bind.bind(S,S),O=b?T:function(t){return function(){return S.apply(t,arguments)}},A=O,C=A({}.toString),P=A("".slice),E=function(t){return P(C(t),8,-1)},N=o,M=E,R=Object,_=O("".split),V=N(function(){return!R("z").propertyIsEnumerable(0)})?function(t){return"String"===M(t)?_(t,""):R(t)}:R,I=function(t){return null==t},k=I,L=TypeError,D=function(t){if(k(t))throw new L("Can't call method on "+t);return t},j=V,B=D,z=function(t){return j(B(t))},U="object"==typeof document&&document.all,F=void 0===U&&void 0!==U?function(t){return"function"==typeof t||t===U}:function(t){return"function"==typeof t},H=F,X=function(t){return"object"==typeof t?null!==t:H(t)},Y=a,W=F,q=function(t,e){return arguments.length<2?(r=Y[t],W(r)?r:void 0):Y[t]&&Y[t][e];var r},$=O({}.isPrototypeOf),Q=a.navigator,G=Q&&Q.userAgent,Z=G?String(G):"",K=a,J=Z,tt=K.process,et=K.Deno,rt=tt&&tt.versions||et&&et.version,it=rt&&rt.v8;it&&(m=(v=it.split("."))[0]>0&&v[0]<4?1:+(v[0]+v[1])),!m&&J&&(!(v=J.match(/Edge\/(\d+)/))||v[1]>=74)&&(v=J.match(/Chrome\/(\d+)/))&&(m=+v[1]);var nt=m,at=nt,st=o,ot=a.String,ht=!!Object.getOwnPropertySymbols&&!st(function(){var t=Symbol("symbol detection");return!ot(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&at&&at<41}),ut=ht&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,lt=q,ct=F,ft=$,gt=Object,pt=ut?function(t){return"symbol"==typeof t}:function(t){var e=lt("Symbol");return ct(e)&&ft(e.prototype,gt(t))},dt=String,yt=function(t){try{return dt(t)}catch(e){return"Object"}},vt=F,mt=yt,xt=TypeError,bt=function(t){if(vt(t))return t;throw new xt(mt(t)+" is not a function")},wt=bt,St=I,Tt=function(t,e){var r=t[e];return St(r)?void 0:wt(r)},Ot=f,At=F,Ct=X,Pt=TypeError,Et={exports:{}},Nt=a,Mt=Object.defineProperty,Rt=function(t,e){try{Mt(Nt,t,{value:e,configurable:!0,writable:!0})}catch(r){Nt[t]=e}return e},_t=a,Vt=Rt,It="__core-js_shared__",kt=Et.exports=_t[It]||Vt(It,{});(kt.versions||(kt.versions=[])).push({version:"3.48.0",mode:"global",copyright:"© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.",license:"https://github.com/zloirock/core-js/blob/v3.48.0/LICENSE",source:"https://github.com/zloirock/core-js"});var Lt=Et.exports,Dt=Lt,jt=function(t,e){return Dt[t]||(Dt[t]=e||{})},Bt=D,zt=Object,Ut=function(t){return zt(Bt(t))},Ft=Ut,Ht=O({}.hasOwnProperty),Xt=Object.hasOwn||function(t,e){return Ht(Ft(t),e)},Yt=O,Wt=0,qt=Math.random(),$t=Yt(1.1.toString),Qt=function(t){return"Symbol("+(void 0===t?"":t)+")_"+$t(++Wt+qt,36)},Gt=jt,Zt=Xt,Kt=Qt,Jt=ht,te=ut,ee=a.Symbol,re=Gt("wks"),ie=te?ee.for||ee:ee&&ee.withoutSetter||Kt,ne=function(t){return Zt(re,t)||(re[t]=Jt&&Zt(ee,t)?ee[t]:ie("Symbol."+t)),re[t]},ae=f,se=X,oe=pt,he=Tt,ue=function(t,e){var r,i;if("string"===e&&At(r=t.toString)&&!Ct(i=Ot(r,t)))return i;if(At(r=t.valueOf)&&!Ct(i=Ot(r,t)))return i;if("string"!==e&&At(r=t.toString)&&!Ct(i=Ot(r,t)))return i;throw new Pt("Can't convert object to primitive value")},le=TypeError,ce=ne("toPrimitive"),fe=function(t,e){if(!se(t)||oe(t))return t;var r,i=he(t,ce);if(i){if(void 0===e&&(e="default"),r=ae(i,t,e),!se(r)||oe(r))return r;throw new le("Can't convert object to primitive value")}return void 0===e&&(e="number"),ue(t,e)},ge=pt,pe=function(t){var e=fe(t,"string");return ge(e)?e:e+""},de=X,ye=a.document,ve=de(ye)&&de(ye.createElement),me=function(t){return ve?ye.createElement(t):{}},xe=me,be=!h&&!o(function(){return 7!==Object.defineProperty(xe("div"),"a",{get:function(){return 7}}).a}),we=h,Se=f,Te=g,Oe=x,Ae=z,Ce=pe,Pe=Xt,Ee=be,Ne=Object.getOwnPropertyDescriptor;s.f=we?Ne:function(t,e){if(t=Ae(t),e=Ce(e),Ee)try{return Ne(t,e)}catch(r){}if(Pe(t,e))return Oe(!Se(Te.f,t,e),t[e])};var Me={},Re=h&&o(function(){return 42!==Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype}),_e=X,Ve=String,Ie=TypeError,ke=function(t){if(_e(t))return t;throw new Ie(Ve(t)+" is not an object")},Le=h,De=be,je=Re,Be=ke,ze=pe,Ue=TypeError,Fe=Object.defineProperty,He=Object.getOwnPropertyDescriptor,Xe="enumerable",Ye="configurable",We="writable";Me.f=Le?je?function(t,e,r){if(Be(t),e=ze(e),Be(r),"function"==typeof t&&"prototype"===e&&"value"in r&&We in r&&!r[We]){var i=He(t,e);i&&i[We]&&(t[e]=r.value,r={configurable:Ye in r?r[Ye]:i[Ye],enumerable:Xe in r?r[Xe]:i[Xe],writable:!1})}return Fe(t,e,r)}:Fe:function(t,e,r){if(Be(t),e=ze(e),Be(r),De)try{return Fe(t,e,r)}catch(i){}if("get"in r||"set"in r)throw new Ue("Accessors not supported");return"value"in r&&(t[e]=r.value),t};var qe=Me,$e=x,Qe=h?function(t,e,r){return qe.f(t,e,$e(1,r))}:function(t,e,r){return t[e]=r,t},Ge={exports:{}},Ze=h,Ke=Xt,Je=Function.prototype,tr=Ze&&Object.getOwnPropertyDescriptor,er=Ke(Je,"name"),rr={PROPER:er&&"something"===function(){}.name,CONFIGURABLE:er&&(!Ze||Ze&&tr(Je,"name").configurable)},ir=F,nr=Lt,ar=O(Function.toString);ir(nr.inspectSource)||(nr.inspectSource=function(t){return ar(t)});var sr,or,hr,ur=nr.inspectSource,lr=F,cr=a.WeakMap,fr=lr(cr)&&/native code/.test(String(cr)),gr=Qt,pr=jt("keys"),dr=function(t){return pr[t]||(pr[t]=gr(t))},yr={},vr=fr,mr=a,xr=X,br=Qe,wr=Xt,Sr=Lt,Tr=dr,Or=yr,Ar="Object already initialized",Cr=mr.TypeError,Pr=mr.WeakMap;if(vr||Sr.state){var Er=Sr.state||(Sr.state=new Pr);Er.get=Er.get,Er.has=Er.has,Er.set=Er.set,sr=function(t,e){if(Er.has(t))throw new Cr(Ar);return e.facade=t,Er.set(t,e),e},or=function(t){return Er.get(t)||{}},hr=function(t){return Er.has(t)}}else{var Nr=Tr("state");Or[Nr]=!0,sr=function(t,e){if(wr(t,Nr))throw new Cr(Ar);return e.facade=t,br(t,Nr,e),e},or=function(t){return wr(t,Nr)?t[Nr]:{}},hr=function(t){return wr(t,Nr)}}var Mr={set:sr,get:or,has:hr,enforce:function(t){return hr(t)?or(t):sr(t,{})},getterFor:function(t){return function(e){var r;if(!xr(e)||(r=or(e)).type!==t)throw new Cr("Incompatible receiver, "+t+" required");return r}}},Rr=O,_r=o,Vr=F,Ir=Xt,kr=h,Lr=rr.CONFIGURABLE,Dr=ur,jr=Mr.enforce,Br=Mr.get,zr=String,Ur=Object.defineProperty,Fr=Rr("".slice),Hr=Rr("".replace),Xr=Rr([].join),Yr=kr&&!_r(function(){return 8!==Ur(function(){},"length",{value:8}).length}),Wr=String(String).split("String"),qr=Ge.exports=function(t,e,r){"Symbol("===Fr(zr(e),0,7)&&(e="["+Hr(zr(e),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),r&&r.getter&&(e="get "+e),r&&r.setter&&(e="set "+e),(!Ir(t,"name")||Lr&&t.name!==e)&&(kr?Ur(t,"name",{value:e,configurable:!0}):t.name=e),Yr&&r&&Ir(r,"arity")&&t.length!==r.arity&&Ur(t,"length",{value:r.arity});try{r&&Ir(r,"constructor")&&r.constructor?kr&&Ur(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch(n){}var i=jr(t);return Ir(i,"source")||(i.source=Xr(Wr,"string"==typeof e?e:"")),t};Function.prototype.toString=qr(function(){return Vr(this)&&Br(this).source||Dr(this)},"toString");var $r,Qr=Ge.exports,Gr=F,Zr=Me,Kr=Qr,Jr=Rt,ti=function(t,e,r,i){i||(i={});var n=i.enumerable,a=void 0!==i.name?i.name:e;if(Gr(r)&&Kr(r,a,i),i.global)n?t[e]=r:Jr(e,r);else{try{i.unsafe?t[e]&&(n=!0):delete t[e]}catch(s){}n?t[e]=r:Zr.f(t,e,{value:r,enumerable:!1,configurable:!i.nonConfigurable,writable:!i.nonWritable})}return t},ei={},ri=Math.ceil,ii=Math.floor,ni=Math.trunc||function(t){var e=+t;return(e>0?ii:ri)(e)},ai=function(t){var e=+t;return e!=e||0===e?0:ni(e)},si=ai,oi=Math.max,hi=Math.min,ui=ai,li=Math.min,ci=function(t){var e=ui(t);return e>0?li(e,9007199254740991):0},fi=ci,gi=function(t){return fi(t.length)},pi=z,di=function(t,e){var r=si(t);return r<0?oi(r+e,0):hi(r,e)},yi=gi,vi={indexOf:($r=!1,function(t,e,r){var i=pi(t),n=yi(i);if(0===n)return!$r&&-1;var a,s=di(r,n);if($r&&e!=e){for(;n>s;)if((a=i[s++])!=a)return!0}else for(;n>s;s++)if(($r||s in i)&&i[s]===e)return $r||s||0;return!$r&&-1})},mi=Xt,xi=z,bi=vi.indexOf,wi=yr,Si=O([].push),Ti=function(t,e){var r,i=xi(t),n=0,a=[];for(r in i)!mi(wi,r)&&mi(i,r)&&Si(a,r);for(;e.length>n;)mi(i,r=e[n++])&&(~bi(a,r)||Si(a,r));return a},Oi=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Ai=Ti,Ci=Oi.concat("length","prototype");ei.f=Object.getOwnPropertyNames||function(t){return Ai(t,Ci)};var Pi={};Pi.f=Object.getOwnPropertySymbols;var Ei=q,Ni=ei,Mi=Pi,Ri=ke,_i=O([].concat),Vi=Ei("Reflect","ownKeys")||function(t){var e=Ni.f(Ri(t)),r=Mi.f;return r?_i(e,r(t)):e},Ii=Xt,ki=Vi,Li=s,Di=Me,ji=o,Bi=F,zi=/#|\.prototype\./,Ui=function(t,e){var r=Hi[Fi(t)];return r===Yi||r!==Xi&&(Bi(e)?ji(e):!!e)},Fi=Ui.normalize=function(t){return String(t).replace(zi,".").toLowerCase()},Hi=Ui.data={},Xi=Ui.NATIVE="N",Yi=Ui.POLYFILL="P",Wi=Ui,qi=a,$i=s.f,Qi=Qe,Gi=ti,Zi=Rt,Ki=function(t,e,r){for(var i=ki(e),n=Di.f,a=Li.f,s=0;s<i.length;s++){var o=i[s];Ii(t,o)||r&&Ii(r,o)||n(t,o,a(e,o))}},Ji=Wi,tn=function(t,e){var r,i,n,a,s,o=t.target,h=t.global,u=t.stat;if(r=h?qi:u?qi[o]||Zi(o,{}):qi[o]&&qi[o].prototype)for(i in e){if(a=e[i],n=t.dontCallGetSet?(s=$i(r,i))&&s.value:r[i],!Ji(h?i:o+(u?".":"#")+i,t.forced)&&void 0!==n){if(typeof a==typeof n)continue;Ki(a,n)}(t.sham||n&&n.sham)&&Qi(a,"sham",!0),Gi(r,i,a,t)}},en=a,rn=Z,nn=E,an=function(t){return rn.slice(0,t.length)===t},sn=an("Bun/")?"BUN":an("Cloudflare-Workers")?"CLOUDFLARE":an("Deno/")?"DENO":an("Node.js/")?"NODE":en.Bun&&"string"==typeof Bun.version?"BUN":en.Deno&&"object"==typeof Deno.version?"DENO":"process"===nn(en.process)?"NODE":en.window&&en.document?"BROWSER":"REST",on="NODE"===sn,hn=a,un=O,ln=bt,cn=X,fn=function(t){return cn(t)||null===t},gn=String,pn=TypeError,dn=function(t,e,r){try{return un(ln(Object.getOwnPropertyDescriptor(t,e)[r]))}catch(i){}},yn=X,vn=D,mn=function(t){if(fn(t))return t;throw new pn("Can't set "+gn(t)+" as a prototype")},xn=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,r={};try{(t=dn(Object.prototype,"__proto__","set"))(r,[]),e=r instanceof Array}catch(i){}return function(r,i){return vn(r),mn(i),yn(r)?(e?t(r,i):r.__proto__=i,r):r}}():void 0),bn=Me.f,wn=Xt,Sn=ne("toStringTag"),Tn=function(t,e,r){t&&!r&&(t=t.prototype),t&&!wn(t,Sn)&&bn(t,Sn,{configurable:!0,value:e})},On=Qr,An=Me,Cn=q,Pn=function(t,e,r){return r.get&&On(r.get,e,{getter:!0}),r.set&&On(r.set,e,{setter:!0}),An.f(t,e,r)},En=h,Nn=ne("species"),Mn=$,Rn=TypeError,_n={};_n[ne("toStringTag")]="z";var Vn="[object z]"===String(_n),In=F,kn=E,Ln=ne("toStringTag"),Dn=Object,jn="Arguments"===kn(function(){return arguments}()),Bn=Vn?kn:function(t){var e,r,i;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(r){}}(e=Dn(t),Ln))?r:jn?kn(e):"Object"===(i=kn(e))&&In(e.callee)?"Arguments":i},zn=O,Un=o,Fn=F,Hn=Bn,Xn=ur,Yn=function(){},Wn=q("Reflect","construct"),qn=/^\s*(?:class|function)\b/,$n=zn(qn.exec),Qn=!qn.test(Yn),Gn=function(t){if(!Fn(t))return!1;try{return Wn(Yn,[],t),!0}catch(e){return!1}},Zn=function(t){if(!Fn(t))return!1;switch(Hn(t)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Qn||!!$n(qn,Xn(t))}catch(e){return!0}};Zn.sham=!0;var Kn,Jn,ta,ea,ra=!Wn||Un(function(){var t;return Gn(Gn.call)||!Gn(Object)||!Gn(function(){t=!0})||t})?Zn:Gn,ia=ra,na=yt,aa=TypeError,sa=ke,oa=function(t){if(ia(t))return t;throw new aa(na(t)+" is not a constructor")},ha=I,ua=ne("species"),la=function(t,e){var r,i=sa(t).constructor;return void 0===i||ha(r=sa(i)[ua])?e:oa(r)},ca=u,fa=Function.prototype,ga=fa.apply,pa=fa.call,da="object"==typeof Reflect&&Reflect.apply||(ca?pa.bind(ga):function(){return pa.apply(ga,arguments)}),ya=E,va=O,ma=function(t){if("Function"===ya(t))return va(t)},xa=bt,ba=u,wa=ma(ma.bind),Sa=function(t,e){return xa(t),void 0===e?t:ba?wa(t,e):function(){return t.apply(e,arguments)}},Ta=q("document","documentElement"),Oa=O([].slice),Aa=TypeError,Ca=/(?:ipad|iphone|ipod).*applewebkit/i.test(Z),Pa=a,Ea=da,Na=Sa,Ma=F,Ra=Xt,_a=o,Va=Ta,Ia=Oa,ka=me,La=function(t,e){if(t<e)throw new Aa("Not enough arguments");return t},Da=Ca,ja=on,Ba=Pa.setImmediate,za=Pa.clearImmediate,Ua=Pa.process,Fa=Pa.Dispatch,Ha=Pa.Function,Xa=Pa.MessageChannel,Ya=Pa.String,Wa=0,qa={},$a="onreadystatechange";_a(function(){Kn=Pa.location});var Qa=function(t){if(Ra(qa,t)){var e=qa[t];delete qa[t],e()}},Ga=function(t){return function(){Qa(t)}},Za=function(t){Qa(t.data)},Ka=function(t){Pa.postMessage(Ya(t),Kn.protocol+"//"+Kn.host)};Ba&&za||(Ba=function(t){La(arguments.length,1);var e=Ma(t)?t:Ha(t),r=Ia(arguments,1);return qa[++Wa]=function(){Ea(e,void 0,r)},Jn(Wa),Wa},za=function(t){delete qa[t]},ja?Jn=function(t){Ua.nextTick(Ga(t))}:Fa&&Fa.now?Jn=function(t){Fa.now(Ga(t))}:Xa&&!Da?(ea=(ta=new Xa).port2,ta.port1.onmessage=Za,Jn=Na(ea.postMessage,ea)):Pa.addEventListener&&Ma(Pa.postMessage)&&!Pa.importScripts&&Kn&&"file:"!==Kn.protocol&&!_a(Ka)?(Jn=Ka,Pa.addEventListener("message",Za,!1)):Jn=$a in ka("script")?function(t){Va.appendChild(ka("script"))[$a]=function(){Va.removeChild(this),Qa(t)}}:function(t){setTimeout(Ga(t),0)});var Ja={set:Ba},ts=a,es=h,rs=Object.getOwnPropertyDescriptor,is=function(){this.head=null,this.tail=null};is.prototype={add:function(t){var e={item:t,next:null},r=this.tail;r?r.next=e:this.head=e,this.tail=e},get:function(){var t=this.head;if(t)return null===(this.head=t.next)&&(this.tail=null),t.item}};var ns,as,ss,os,hs,us=is,ls=/ipad|iphone|ipod/i.test(Z)&&"undefined"!=typeof Pebble,cs=/web0s(?!.*chrome)/i.test(Z),fs=a,gs=function(t){if(!es)return ts[t];var e=rs(ts,t);return e&&e.value},ps=Sa,ds=Ja.set,ys=us,vs=Ca,ms=ls,xs=cs,bs=on,ws=fs.MutationObserver||fs.WebKitMutationObserver,Ss=fs.document,Ts=fs.process,Os=fs.Promise,As=gs("queueMicrotask");if(!As){var Cs=new ys,Ps=function(){var t,e;for(bs&&(t=Ts.domain)&&t.exit();e=Cs.get();)try{e()}catch(r){throw Cs.head&&ns(),r}t&&t.enter()};vs||bs||xs||!ws||!Ss?!ms&&Os&&Os.resolve?((os=Os.resolve(void 0)).constructor=Os,hs=ps(os.then,os),ns=function(){hs(Ps)}):bs?ns=function(){Ts.nextTick(Ps)}:(ds=ps(ds,fs),ns=function(){ds(Ps)}):(as=!0,ss=Ss.createTextNode(""),new ws(Ps).observe(ss,{characterData:!0}),ns=function(){ss.data=as=!as}),As=function(t){Cs.head||ns(),Cs.add(t)}}var Es=As,Ns=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}},Ms=a.Promise,Rs=a,_s=Ms,Vs=F,Is=Wi,ks=ur,Ls=ne,Ds=sn,js=nt;_s&&_s.prototype;var Bs=Ls("species"),zs=!1,Us=Vs(Rs.PromiseRejectionEvent),Fs={CONSTRUCTOR:Is("Promise",function(){var t=ks(_s),e=t!==String(_s);if(!e&&66===js)return!0;if(!js||js<51||!/native code/.test(t)){var r=new _s(function(t){t(1)}),i=function(t){t(function(){},function(){})};if((r.constructor={})[Bs]=i,!(zs=r.then(function(){})instanceof i))return!0}return!(e||"BROWSER"!==Ds&&"DENO"!==Ds||Us)}),REJECTION_EVENT:Us,SUBCLASSING:zs},Hs={},Xs=bt,Ys=TypeError,Ws=function(t){var e,r;this.promise=new t(function(t,i){if(void 0!==e||void 0!==r)throw new Ys("Bad Promise constructor");e=t,r=i}),this.resolve=Xs(e),this.reject=Xs(r)};Hs.f=function(t){return new Ws(t)};var qs,$s,Qs,Gs,Zs=tn,Ks=on,Js=a,to=hn,eo=f,ro=ti,io=xn,no=Tn,ao=function(t){var e=Cn(t);En&&e&&!e[Nn]&&Pn(e,Nn,{configurable:!0,get:function(){return this}})},so=bt,oo=F,ho=X,uo=function(t,e){if(Mn(e,t))return t;throw new Rn("Incorrect invocation")},lo=la,co=Ja.set,fo=Es,go=function(t,e){try{1===arguments.length?console.error(t):console.error(t,e)}catch(r){}},po=Ns,yo=us,vo=Mr,mo=Ms,xo=Hs,bo="Promise",wo=Fs.CONSTRUCTOR,So=Fs.REJECTION_EVENT,To=Fs.SUBCLASSING,Oo=vo.getterFor(bo),Ao=vo.set,Co=mo&&mo.prototype,Po=mo,Eo=Co,No=Js.TypeError,Mo=Js.document,Ro=Js.process,_o=xo.f,Vo=_o,Io=!!(Mo&&Mo.createEvent&&Js.dispatchEvent),ko="unhandledrejection",Lo=function(t){var e;return!(!ho(t)||!oo(e=t.then))&&e},Do=function(t,e){var r,i,n,a=e.value,s=1===e.state,o=s?t.ok:t.fail,h=t.resolve,u=t.reject,l=t.domain;try{o?(s||(2===e.rejection&&Fo(e),e.rejection=1),!0===o?r=a:(l&&l.enter(),r=o(a),l&&(l.exit(),n=!0)),r===t.promise?u(new No("Promise-chain cycle")):(i=Lo(r))?eo(i,r,h,u):h(r)):u(a)}catch(c){l&&!n&&l.exit(),u(c)}},jo=function(t,e){t.notified||(t.notified=!0,fo(function(){for(var r,i=t.reactions;r=i.get();)Do(r,t);t.notified=!1,e&&!t.rejection&&zo(t)}))},Bo=function(t,e,r){var i,n;Io?((i=Mo.createEvent("Event")).promise=e,i.reason=r,i.initEvent(t,!1,!0),Js.dispatchEvent(i)):i={promise:e,reason:r},!So&&(n=Js["on"+t])?n(i):t===ko&&go("Unhandled promise rejection",r)},zo=function(t){eo(co,Js,function(){var e,r=t.facade,i=t.value;if(Uo(t)&&(e=po(function(){Ks?Ro.emit("unhandledRejection",i,r):Bo(ko,r,i)}),t.rejection=Ks||Uo(t)?2:1,e.error))throw e.value})},Uo=function(t){return 1!==t.rejection&&!t.parent},Fo=function(t){eo(co,Js,function(){var e=t.facade;Ks?Ro.emit("rejectionHandled",e):Bo("rejectionhandled",e,t.value)})},Ho=function(t,e,r){return function(i){t(e,i,r)}},Xo=function(t,e,r){t.done||(t.done=!0,r&&(t=r),t.value=e,t.state=2,jo(t,!0))},Yo=function(t,e,r){if(!t.done){t.done=!0,r&&(t=r);try{if(t.facade===e)throw new No("Promise can't be resolved itself");var i=Lo(e);i?fo(function(){var r={done:!1};try{eo(i,e,Ho(Yo,r,t),Ho(Xo,r,t))}catch(n){Xo(r,n,t)}}):(t.value=e,t.state=1,jo(t,!1))}catch(n){Xo({done:!1},n,t)}}};if(wo&&(Eo=(Po=function(t){uo(this,Eo),so(t),eo(qs,this);var e=Oo(this);try{t(Ho(Yo,e),Ho(Xo,e))}catch(r){Xo(e,r)}}).prototype,(qs=function(t){Ao(this,{type:bo,done:!1,notified:!1,parent:!1,reactions:new yo,rejection:!1,state:0,value:null})}).prototype=ro(Eo,"then",function(t,e){var r=Oo(this),i=_o(lo(this,Po));return r.parent=!0,i.ok=!oo(t)||t,i.fail=oo(e)&&e,i.domain=Ks?Ro.domain:void 0,0===r.state?r.reactions.add(i):fo(function(){Do(i,r)}),i.promise}),$s=function(){var t=new qs,e=Oo(t);this.promise=t,this.resolve=Ho(Yo,e),this.reject=Ho(Xo,e)},xo.f=_o=function(t){return t===Po||t===Qs?new $s(t):Vo(t)},oo(mo)&&Co!==Object.prototype)){Gs=Co.then,To||ro(Co,"then",function(t,e){var r=this;return new Po(function(t,e){eo(Gs,r,t,e)}).then(t,e)},{unsafe:!0});try{delete Co.constructor}catch(Jv){}io&&io(Co,Eo)}Zs({global:!0,constructor:!0,wrap:!0,forced:wo},{Promise:Po}),Qs=to.Promise,no(Po,bo,!1),ao(bo);var Wo={},qo=Wo,$o=ne("iterator"),Qo=Array.prototype,Go=Bn,Zo=Tt,Ko=I,Jo=Wo,th=ne("iterator"),eh=function(t){if(!Ko(t))return Zo(t,th)||Zo(t,"@@iterator")||Jo[Go(t)]},rh=f,ih=bt,nh=ke,ah=yt,sh=eh,oh=TypeError,hh=f,uh=ke,lh=Tt,ch=Sa,fh=f,gh=ke,ph=yt,dh=function(t){return void 0!==t&&(qo.Array===t||Qo[$o]===t)},yh=gi,vh=$,mh=function(t,e){var r=arguments.length<2?sh(t):e;if(ih(r))return nh(rh(r,t));throw new oh(ah(t)+" is not iterable")},xh=eh,bh=function(t,e,r){var i,n;uh(t);try{if(!(i=lh(t,"return"))){if("throw"===e)throw r;return r}i=hh(i,t)}catch(Jv){n=!0,i=Jv}if("throw"===e)throw r;if(n)throw i;return uh(i),r},wh=TypeError,Sh=function(t,e){this.stopped=t,this.result=e},Th=Sh.prototype,Oh=function(t,e,r){var i,n,a,s,o,h,u,l=r&&r.that,c=!(!r||!r.AS_ENTRIES),f=!(!r||!r.IS_RECORD),g=!(!r||!r.IS_ITERATOR),p=!(!r||!r.INTERRUPTED),d=ch(e,l),y=function(t){return i&&bh(i,"normal"),new Sh(!0,t)},v=function(t){return c?(gh(t),p?d(t[0],t[1],y):d(t[0],t[1])):p?d(t,y):d(t)};if(f)i=t.iterator;else if(g)i=t;else{if(!(n=xh(t)))throw new wh(ph(t)+" is not iterable");if(dh(n)){for(a=0,s=yh(t);s>a;a++)if((o=v(t[a]))&&vh(Th,o))return o;return new Sh(!1)}i=mh(t,n)}for(h=f?t.next:i.next;!(u=fh(h,i)).done;){try{o=v(u.value)}catch(Jv){bh(i,"throw",Jv)}if("object"==typeof o&&o&&vh(Th,o))return o}return new Sh(!1)},Ah=ne("iterator"),Ch=!1;try{var Ph=0,Eh={next:function(){return{done:!!Ph++}},return:function(){Ch=!0}};Eh[Ah]=function(){return this},Array.from(Eh,function(){throw 2})}catch(Jv){}var Nh=Ms,Mh=Fs.CONSTRUCTOR||!function(t,e){try{if(!e&&!Ch)return!1}catch(Jv){return!1}var r=!1;try{var i={};i[Ah]=function(){return{next:function(){return{done:r=!0}}}},t(i)}catch(Jv){}return r}(function(t){Nh.all(t).then(void 0,function(){})}),Rh=f,_h=bt,Vh=Hs,Ih=Ns,kh=Oh;tn({target:"Promise",stat:!0,forced:Mh},{all:function(t){var e=this,r=Vh.f(e),i=r.resolve,n=r.reject,a=Ih(function(){var r=_h(e.resolve),a=[],s=0,o=1;kh(t,function(t){var h=s++,u=!1;o++,Rh(r,e,t).then(function(t){u||(u=!0,a[h]=t,--o||i(a))},n)}),--o||i(a)});return a.error&&n(a.value),r.promise}});var Lh=tn,Dh=Fs.CONSTRUCTOR,jh=Ms,Bh=q,zh=F,Uh=ti,Fh=jh&&jh.prototype;if(Lh({target:"Promise",proto:!0,forced:Dh,real:!0},{catch:function(t){return this.then(void 0,t)}}),zh(jh)){var Hh=Bh("Promise").prototype.catch;Fh.catch!==Hh&&Uh(Fh,"catch",Hh,{unsafe:!0})}var Xh=f,Yh=bt,Wh=Hs,qh=Ns,$h=Oh;tn({target:"Promise",stat:!0,forced:Mh},{race:function(t){var e=this,r=Wh.f(e),i=r.reject,n=qh(function(){var n=Yh(e.resolve);$h(t,function(t){Xh(n,e,t).then(r.resolve,i)})});return n.error&&i(n.value),r.promise}});var Qh=Hs;tn({target:"Promise",stat:!0,forced:Fs.CONSTRUCTOR},{reject:function(t){var e=Qh.f(this);return(0,e.reject)(t),e.promise}});var Gh=ke,Zh=X,Kh=Hs,Jh=tn,tu=Fs.CONSTRUCTOR,eu=function(t,e){if(Gh(t),Zh(e)&&e.constructor===t)return e;var r=Kh.f(t);return(0,r.resolve)(e),r.promise};function ru(t,e,r,i,n,a,s){try{var o=t[a](s),h=o.value}catch(u){return void r(u)}o.done?e(h):Promise.resolve(h).then(i,n)}function iu(t){return function(){var e=this,r=arguments;return new Promise(function(i,n){var a=t.apply(e,r);function s(t){ru(a,i,n,s,o,"next",t)}function o(t){ru(a,i,n,s,o,"throw",t)}s(void 0)})}}q("Promise"),Jh({target:"Promise",stat:!0,forced:tu},{resolve:function(t){return eu(this,t)}});var nu=Bn,au=String,su=function(t){if("Symbol"===nu(t))throw new TypeError("Cannot convert a Symbol value to a string");return au(t)},ou=ke,hu=function(){var t=ou(this),e="";return t.hasIndices&&(e+="d"),t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.unicodeSets&&(e+="v"),t.sticky&&(e+="y"),e},uu=o,lu=a.RegExp,cu=uu(function(){var t=lu("a","y");return t.lastIndex=2,null!==t.exec("abcd")});cu||uu(function(){return!lu("a","y").sticky});var fu={BROKEN_CARET:cu||uu(function(){var t=lu("^r","gy");return t.lastIndex=2,null!==t.exec("str")}),UNSUPPORTED_Y:cu},gu={},pu=Ti,du=Oi,yu=Object.keys||function(t){return pu(t,du)},vu=h,mu=Re,xu=Me,bu=ke,wu=z,Su=yu;gu.f=vu&&!mu?Object.defineProperties:function(t,e){bu(t);for(var r,i=wu(e),n=Su(e),a=n.length,s=0;a>s;)xu.f(t,r=n[s++],i[r]);return t};var Tu,Ou=ke,Au=gu,Cu=Oi,Pu=yr,Eu=Ta,Nu=me,Mu="prototype",Ru="script",_u=dr("IE_PROTO"),Vu=function(){},Iu=function(t){return"<"+Ru+">"+t+"</"+Ru+">"},ku=function(t){t.write(Iu("")),t.close();var e=t.parentWindow.Object;return t=null,e},Lu=function(){try{Tu=new ActiveXObject("htmlfile")}catch(Jv){}var t,e,r;Lu="undefined"!=typeof document?document.domain&&Tu?ku(Tu):(e=Nu("iframe"),r="java"+Ru+":",e.style.display="none",Eu.appendChild(e),e.src=String(r),(t=e.contentWindow.document).open(),t.write(Iu("document.F=Object")),t.close(),t.F):ku(Tu);for(var i=Cu.length;i--;)delete Lu[Mu][Cu[i]];return Lu()};Pu[_u]=!0;var Du,ju,Bu=Object.create||function(t,e){var r;return null!==t?(Vu[Mu]=Ou(t),r=new Vu,Vu[Mu]=null,r[_u]=t):r=Lu(),void 0===e?r:Au.f(r,e)},zu=o,Uu=a.RegExp,Fu=zu(function(){var t=Uu(".","s");return!(t.dotAll&&t.test("\n")&&"s"===t.flags)}),Hu=o,Xu=a.RegExp,Yu=Hu(function(){var t=Xu("(?<a>b)","g");return"b"!==t.exec("b").groups.a||"bc"!=="b".replace(t,"$<a>c")}),Wu=f,qu=O,$u=su,Qu=hu,Gu=fu,Zu=Bu,Ku=Mr.get,Ju=Fu,tl=Yu,el=jt("native-string-replace",String.prototype.replace),rl=RegExp.prototype.exec,il=rl,nl=qu("".charAt),al=qu("".indexOf),sl=qu("".replace),ol=qu("".slice),hl=(ju=/b*/g,Wu(rl,Du=/a/,"a"),Wu(rl,ju,"a"),0!==Du.lastIndex||0!==ju.lastIndex),ul=Gu.BROKEN_CARET,ll=void 0!==/()??/.exec("")[1];(hl||ll||ul||Ju||tl)&&(il=function(t){var e,r,i,n,a,s,o,h=this,u=Ku(h),l=$u(t),c=u.raw;if(c)return c.lastIndex=h.lastIndex,e=Wu(il,c,l),h.lastIndex=c.lastIndex,e;var f=u.groups,g=ul&&h.sticky,p=Wu(Qu,h),d=h.source,y=0,v=l;if(g&&(p=sl(p,"y",""),-1===al(p,"g")&&(p+="g"),v=ol(l,h.lastIndex),h.lastIndex>0&&(!h.multiline||h.multiline&&"\n"!==nl(l,h.lastIndex-1))&&(d="(?: "+d+")",v=" "+v,y++),r=new RegExp("^(?:"+d+")",p)),ll&&(r=new RegExp("^"+d+"$(?!\\s)",p)),hl&&(i=h.lastIndex),n=Wu(rl,g?r:h,v),g?n?(n.input=ol(n.input,y),n[0]=ol(n[0],y),n.index=h.lastIndex,h.lastIndex+=n[0].length):h.lastIndex=0:hl&&n&&(h.lastIndex=h.global?n.index+n[0].length:i),ll&&n&&n.length>1&&Wu(el,n[0],r,function(){for(a=1;a<arguments.length-2;a++)void 0===arguments[a]&&(n[a]=void 0)}),n&&f)for(n.groups=s=Zu(null),a=0;a<f.length;a++)s[(o=f[a])[0]]=n[o[1]];return n});var cl=il;tn({target:"RegExp",proto:!0,forced:/./.exec!==cl},{exec:cl});var fl,gl=f,pl=ti,dl=cl,yl=o,vl=ne,ml=Qe,xl=vl("species"),bl=RegExp.prototype,wl=function(t,e,r,i){var n=vl(t),a=!yl(function(){var e={};return e[n]=function(){return 7},7!==""[t](e)}),s=a&&!yl(function(){var e=!1,r=/a/;if("split"===t){var i={};i[xl]=function(){return r},(r={constructor:i,flags:""})[n]=/./[n]}return r.exec=function(){return e=!0,null},r[n](""),!e});if(!a||!s||r){var o=/./[n],h=e(n,""[t],function(t,e,r,i,n){var s=e.exec;return s===dl||s===bl.exec?a&&!n?{done:!0,value:gl(o,e,r,i)}:{done:!0,value:gl(t,r,e,i)}:{done:!1}});pl(String.prototype,t,h[0]),pl(bl,n,h[1])}i&&ml(bl[n],"sham",!0)},Sl=O,Tl=ai,Ol=su,Al=D,Cl=Sl("".charAt),Pl=Sl("".charCodeAt),El=Sl("".slice),Nl={charAt:(fl=!0,function(t,e){var r,i,n=Ol(Al(t)),a=Tl(e),s=n.length;return a<0||a>=s?fl?"":void 0:(r=Pl(n,a))<55296||r>56319||a+1===s||(i=Pl(n,a+1))<56320||i>57343?fl?Cl(n,a):r:fl?El(n,a,a+2):i-56320+(r-55296<<10)+65536})}.charAt,Ml=function(t,e,r){return e+(r?Nl(t,e).length:1)},Rl=o,_l=a.RegExp,Vl=!Rl(function(){var t=!0;try{_l(".","d")}catch(Jv){t=!1}var e={},r="",i=t?"dgimsy":"gimsy",n=function(t,i){Object.defineProperty(e,t,{get:function(){return r+=i,!0}})},a={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};for(var s in t&&(a.hasIndices="d"),a)n(s,a[s]);return Object.getOwnPropertyDescriptor(_l.prototype,"flags").get.call(e)!==i||r!==i}),Il=f,kl=Xt,Ll=$,Dl={correct:Vl},jl=hu,Bl=RegExp.prototype,zl=Dl.correct?function(t){return t.flags}:function(t){return Dl.correct||!Ll(Bl,t)||kl(t,"flags")?t.flags:Il(jl,t)},Ul=f,Fl=ke,Hl=F,Xl=E,Yl=cl,Wl=TypeError,ql=function(t,e){var r=t.exec;if(Hl(r)){var i=Ul(r,t,e);return null!==i&&Fl(i),i}if("RegExp"===Xl(t))return Ul(Yl,t,e);throw new Wl("RegExp#exec called on incompatible receiver")},$l=f,Ql=wl,Gl=ke,Zl=X,Kl=ci,Jl=su,tc=D,ec=Tt,rc=Ml,ic=zl,nc=ql,ac=O("".indexOf);Ql("match",function(t,e,r){return[function(e){var r=tc(this),i=Zl(e)?ec(e,t):void 0;return i?$l(i,e,r):new RegExp(e)[t](Jl(r))},function(t){var i=Gl(this),n=Jl(t),a=r(e,i,n);if(a.done)return a.value;var s=Jl(ic(i));if(-1===ac(s,"g"))return nc(i,n);var o=-1!==ac(s,"u");i.lastIndex=0;for(var h,u=[],l=0;null!==(h=nc(i,n));){var c=Jl(h[0]);u[l]=c,""===c&&(i.lastIndex=rc(n,Kl(i.lastIndex),o)),l++}return 0===l?null:u}]});var sc=O,oc=Ut,hc=Math.floor,uc=sc("".charAt),lc=sc("".replace),cc=sc("".slice),fc=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,gc=/\$([$&'`]|\d{1,2})/g,pc=da,dc=f,yc=O,vc=wl,mc=o,xc=ke,bc=F,wc=X,Sc=ai,Tc=ci,Oc=su,Ac=D,Cc=Ml,Pc=Tt,Ec=function(t,e,r,i,n,a){var s=r+t.length,o=i.length,h=gc;return void 0!==n&&(n=oc(n),h=fc),lc(a,h,function(a,h){var u;switch(uc(h,0)){case"$":return"$";case"&":return t;case"`":return cc(e,0,r);case"'":return cc(e,s);case"<":u=n[cc(h,1,-1)];break;default:var l=+h;if(0===l)return a;if(l>o){var c=hc(l/10);return 0===c?a:c<=o?void 0===i[c-1]?uc(h,1):i[c-1]+uc(h,1):a}u=i[l-1]}return void 0===u?"":u})},Nc=zl,Mc=ql,Rc=ne("replace"),_c=Math.max,Vc=Math.min,Ic=yc([].concat),kc=yc([].push),Lc=yc("".indexOf),Dc=yc("".slice),jc=function(t){return void 0===t?t:String(t)},Bc="$0"==="a".replace(/./,"$0"),zc=!!/./[Rc]&&""===/./[Rc]("a","$0");vc("replace",function(t,e,r){var i=zc?"$":"$0";return[function(t,r){var i=Ac(this),n=wc(t)?Pc(t,Rc):void 0;return n?dc(n,t,i,r):dc(e,Oc(i),t,r)},function(t,n){var a=xc(this),s=Oc(t);if("string"==typeof n&&-1===Lc(n,i)&&-1===Lc(n,"$<")){var o=r(e,a,s,n);if(o.done)return o.value}var h=bc(n);h||(n=Oc(n));var u,l=Oc(Nc(a)),c=-1!==Lc(l,"g");c&&(u=-1!==Lc(l,"u"),a.lastIndex=0);for(var f,g=[];null!==(f=Mc(a,s))&&(kc(g,f),c);){""===Oc(f[0])&&(a.lastIndex=Cc(s,Tc(a.lastIndex),u))}for(var p="",d=0,y=0;y<g.length;y++){for(var v,m=Oc((f=g[y])[0]),x=_c(Vc(Sc(f.index),s.length),0),b=[],w=1;w<f.length;w++)kc(b,jc(f[w]));var S=f.groups;if(h){var T=Ic([m],b,x,s);void 0!==S&&kc(T,S),v=Oc(pc(n,void 0,T))}else v=Ec(m,s,x,b,S,n);x>=d&&(p+=Dc(s,d,x)+v,d=x+m.length)}return p+Dc(s,d)}]},!!mc(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})||!Bc||zc);var Uc,Fc=X,Hc=E,Xc=ne("match"),Yc=function(t){var e;return Fc(t)&&(void 0!==(e=t[Xc])?!!e:"RegExp"===Hc(t))},Wc=TypeError,qc=function(t){if(Yc(t))throw new Wc("The method doesn't accept regular expressions");return t},$c=ne("match"),Qc=function(t){var e=/./;try{"/./"[t](e)}catch(r){try{return e[$c]=!1,"/./"[t](e)}catch(i){}}return!1},Gc=tn,Zc=ma,Kc=s.f,Jc=ci,tf=su,ef=qc,rf=D,nf=Qc,af=Zc("".slice),sf=Math.min,of=nf("startsWith");Gc({target:"String",proto:!0,forced:!!(of||(Uc=Kc(String.prototype,"startsWith"),!Uc||Uc.writable))&&!of},{startsWith:function(t){var e=tf(rf(this));ef(t);var r=Jc(sf(arguments.length>1?arguments[1]:void 0,e.length)),i=tf(t);return af(e,r,r+i.length)===i}});var hf=ne,uf=Bu,lf=Me.f,cf=hf("unscopables"),ff=Array.prototype;void 0===ff[cf]&&lf(ff,cf,{configurable:!0,value:uf(null)});var gf,pf,df,yf=!o(function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}),vf=Xt,mf=F,xf=Ut,bf=yf,wf=dr("IE_PROTO"),Sf=Object,Tf=Sf.prototype,Of=bf?Sf.getPrototypeOf:function(t){var e=xf(t);if(vf(e,wf))return e[wf];var r=e.constructor;return mf(r)&&e instanceof r?r.prototype:e instanceof Sf?Tf:null},Af=o,Cf=F,Pf=X,Ef=Of,Nf=ti,Mf=ne("iterator"),Rf=!1;[].keys&&("next"in(df=[].keys())?(pf=Ef(Ef(df)))!==Object.prototype&&(gf=pf):Rf=!0),(!Pf(gf)||Af(function(){var t={};return gf[Mf].call(t)!==t}))&&(gf={}),Cf(gf[Mf])||Nf(gf,Mf,function(){return this});var _f={IteratorPrototype:gf,BUGGY_SAFARI_ITERATORS:Rf},Vf=_f.IteratorPrototype,If=Bu,kf=x,Lf=Tn,Df=Wo,jf=function(){return this},Bf=tn,zf=f,Uf=F,Ff=function(t,e,r,i){var n=e+" Iterator";return t.prototype=If(Vf,{next:kf(+!i,r)}),Lf(t,n,!1),Df[n]=jf,t},Hf=Of,Xf=xn,Yf=Tn,Wf=Qe,qf=ti,$f=Wo,Qf=rr.PROPER,Gf=rr.CONFIGURABLE,Zf=_f.IteratorPrototype,Kf=_f.BUGGY_SAFARI_ITERATORS,Jf=ne("iterator"),tg="keys",eg="values",rg="entries",ig=function(){return this},ng=z,ag=function(t){ff[cf][t]=!0},sg=Wo,og=Mr,hg=Me.f,ug=function(t,e,r,i,n,a,s){Ff(r,e,i);var o,h,u,l=function(t){if(t===n&&d)return d;if(!Kf&&t&&t in g)return g[t];switch(t){case tg:case eg:case rg:return function(){return new r(this,t)}}return function(){return new r(this)}},c=e+" Iterator",f=!1,g=t.prototype,p=g[Jf]||g["@@iterator"]||n&&g[n],d=!Kf&&p||l(n),y="Array"===e&&g.entries||p;if(y&&(o=Hf(y.call(new t)))!==Object.prototype&&o.next&&(Hf(o)!==Zf&&(Xf?Xf(o,Zf):Uf(o[Jf])||qf(o,Jf,ig)),Yf(o,c,!0)),Qf&&n===eg&&p&&p.name!==eg&&(Gf?Wf(g,"name",eg):(f=!0,d=function(){return zf(p,this)})),n)if(h={values:l(eg),keys:a?d:l(tg),entries:l(rg)},s)for(u in h)(Kf||f||!(u in g))&&qf(g,u,h[u]);else Bf({target:e,proto:!0,forced:Kf||f},h);return g[Jf]!==d&&qf(g,Jf,d,{name:n}),$f[e]=d,h},lg=function(t,e){return{value:t,done:e}},cg=h,fg="Array Iterator",gg=og.set,pg=og.getterFor(fg),dg=ug(Array,"Array",function(t,e){gg(this,{type:fg,target:ng(t),index:0,kind:e})},function(){var t=pg(this),e=t.target,r=t.index++;if(!e||r>=e.length)return t.target=null,lg(void 0,!0);switch(t.kind){case"keys":return lg(r,!1);case"values":return lg(e[r],!1)}return lg([r,e[r]],!1)},"values"),yg=sg.Arguments=sg.Array;if(ag("keys"),ag("values"),ag("entries"),cg&&"values"!==yg.name)try{hg(yg,"name",{value:"values"})}catch(Jv){}var vg=me("span").classList,mg=vg&&vg.constructor&&vg.constructor.prototype,xg=mg===Object.prototype?void 0:mg,bg=a,wg={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},Sg=xg,Tg=dg,Og=Qe,Ag=Tn,Cg=ne("iterator"),Pg=Tg.values,Eg=function(t,e){if(t){if(t[Cg]!==Pg)try{Og(t,Cg,Pg)}catch(Jv){t[Cg]=Pg}if(Ag(t,e,!0),wg[e])for(var r in Tg)if(t[r]!==Tg[r])try{Og(t,r,Tg[r])}catch(Jv){t[r]=Tg[r]}}};for(var Ng in wg)Eg(bg[Ng]&&bg[Ng].prototype,Ng);function Mg(t){var r=function(t,r){if("object"!=e(t)||!t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,r);if("object"!=e(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}(t,"string");return"symbol"==e(r)?r:r+""}function Rg(t,e,r){return(e=Mg(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}Eg(Sg,"DOMTokenList");var _g,Vg=bt,Ig=Ut,kg=V,Lg=gi,Dg=TypeError,jg="Reduce of empty array with no initial value",Bg={left:(_g=!1,function(t,e,r,i){var n=Ig(t),a=kg(n),s=Lg(n);if(Vg(e),0===s&&r<2)throw new Dg(jg);var o=_g?s-1:0,h=_g?-1:1;if(r<2)for(;;){if(o in a){i=a[o],o+=h;break}if(o+=h,_g?o<0:s<=o)throw new Dg(jg)}for(;_g?o>=0:s>o;o+=h)o in a&&(i=e(i,a[o],o,n));return i})},zg=o,Ug=function(t,e){var r=[][t];return!!r&&zg(function(){r.call(null,e||function(){return 1},1)})},Fg=Bg.left;tn({target:"Array",proto:!0,forced:!on&&nt>79&&nt<83||!Ug("reduce")},{reduce:function(t){var e=arguments.length;return Fg(this,t,e,e>1?arguments[1]:void 0)}});var Hg=tn,Xg=ma,Yg=s.f,Wg=ci,qg=su,$g=qc,Qg=D,Gg=Qc,Zg=Xg("".slice),Kg=Math.min,Jg=Gg("endsWith"),tp=!Jg&&!!function(){var t=Yg(String.prototype,"endsWith");return t&&!t.writable}();Hg({target:"String",proto:!0,forced:!tp&&!Jg},{endsWith:function(t){var e=qg(Qg(this));$g(t);var r=arguments.length>1?arguments[1]:void 0,i=e.length,n=void 0===r?i:Kg(Wg(r),i),a=qg(t);return Zg(e,n-a.length,n)===a}});var ep=f,rp=O,ip=wl,np=ke,ap=X,sp=D,op=la,hp=Ml,up=ci,lp=su,cp=Tt,fp=ql,gp=o,pp=fu.UNSUPPORTED_Y,dp=Math.min,yp=rp([].push),vp=rp("".slice),mp=!gp(function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r="ab".split(t);return 2!==r.length||"a"!==r[0]||"b"!==r[1]}),xp="c"==="abbc".split(/(b)*/)[1]||4!=="test".split(/(?:)/,-1).length||2!=="ab".split(/(?:ab)*/).length||4!==".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length;ip("split",function(t,e,r){var i="0".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:ep(e,this,t,r)}:e;return[function(e,r){var n=sp(this),a=ap(e)?cp(e,t):void 0;return a?ep(a,e,n,r):ep(i,lp(n),e,r)},function(t,n){var a=np(this),s=lp(t);if(!xp){var o=r(i,a,s,n,i!==e);if(o.done)return o.value}var h=op(a,RegExp),u=a.unicode,l=(a.ignoreCase?"i":"")+(a.multiline?"m":"")+(a.unicode?"u":"")+(pp?"g":"y"),c=new h(pp?"^(?:"+a.source+")":a,l),f=void 0===n?4294967295:n>>>0;if(0===f)return[];if(0===s.length)return null===fp(c,s)?[s]:[];for(var g=0,p=0,d=[];p<s.length;){c.lastIndex=pp?0:p;var y,v=fp(c,pp?vp(s,p):s);if(null===v||(y=dp(up(c.lastIndex+(pp?p:0)),s.length))===g)p=hp(s,p,u);else{if(yp(d,vp(s,g,p)),d.length===f)return d;for(var m=1;m<=v.length-1;m++)if(yp(d,v[m]),d.length===f)return d;p=g=y}}return yp(d,vp(s,g)),d}]},xp||!mp,pp);var bp={exports:{}},wp={exports:{}};(function(){var t,e,i,n,a,s;"undefined"!=typeof performance&&null!==performance&&performance.now?wp.exports=function(){return performance.now()}:null!=r&&r.hrtime?(wp.exports=function(){return(t()-a)/1e6},e=r.hrtime,n=(t=function(){var t;return 1e9*(t=e())[0]+t[1]})(),s=1e9*r.uptime(),a=n-s):Date.now?(wp.exports=function(){return Date.now()-i},i=Date.now()):(wp.exports=function(){return(new Date).getTime()-i},i=(new Date).getTime())}).call(t);for(var Sp=wp.exports,Tp="undefined"==typeof window?t:window,Op=["moz","webkit"],Ap="AnimationFrame",Cp=Tp["request"+Ap],Pp=Tp["cancel"+Ap]||Tp["cancelRequest"+Ap],Ep=0;!Cp&&Ep<Op.length;Ep++)Cp=Tp[Op[Ep]+"Request"+Ap],Pp=Tp[Op[Ep]+"Cancel"+Ap]||Tp[Op[Ep]+"CancelRequest"+Ap];if(!Cp||!Pp){var Np=0,Mp=0,Rp=[],_p=1e3/60;Cp=function(t){if(0===Rp.length){var e=Sp(),r=Math.max(0,_p-(e-Np));Np=r+e,setTimeout(function(){var t=Rp.slice(0);Rp.length=0;for(var e=0;e<t.length;e++)if(!t[e].cancelled)try{t[e].callback(Np)}catch(r){setTimeout(function(){throw r},0)}},Math.round(r))}return Rp.push({handle:++Mp,callback:t,cancelled:!1}),Mp},Pp=function(t){for(var e=0;e<Rp.length;e++)Rp[e].handle===t&&(Rp[e].cancelled=!0)}}bp.exports=function(t){return Cp.call(Tp,t)},bp.exports.cancel=function(){Pp.apply(Tp,arguments)},bp.exports.polyfill=function(t){t||(t=Tp),t.requestAnimationFrame=Cp,t.cancelAnimationFrame=Pp};const Vp=i(bp.exports);var Ip,kp="\t\n\v\f\r \u2028\u2029\ufeff",Lp=D,Dp=su,jp=kp,Bp=O("".replace),zp=RegExp("^["+jp+"]+"),Up=RegExp("(^|[^"+jp+"])["+jp+"]+$"),Fp={trim:(Ip=3,function(t){var e=Dp(Lp(t));return 1&Ip&&(e=Bp(e,zp,"")),2&Ip&&(e=Bp(e,Up,"$1")),e})},Hp=rr.PROPER,Xp=o,Yp=kp,Wp=Fp.trim;tn({target:"String",proto:!0,forced:function(t){return Xp(function(){return!!Yp[t]()||"
"!=="
"[t]()||Hp&&Yp[t].name!==t})}("trim")},{trim:function(){return Wp(this)}});const qp=i(function(t){this.ok=!1,this.alpha=1,"#"==t.charAt(0)&&(t=t.substr(1,6)),t=(t=t.replace(/ /g,"")).toLowerCase();var e={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};t=e[t]||t;for(var r=[{re:/^rgba\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3}),\s*((?:\d?\.)?\d)\)$/,example:["rgba(123, 234, 45, 0.8)","rgba(255,234,245,1.0)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3]),parseFloat(t[4])]}},{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3])]}},{re:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,example:["#00ff00","336699"],process:function(t){return[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]}},{re:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,example:["#fb0","f0f"],process:function(t){return[parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)]}}],i=0;i<r.length;i++){var n=r[i].re,a=r[i].process,s=n.exec(t);if(s){var o=a(s);this.r=o[0],this.g=o[1],this.b=o[2],o.length>3&&(this.alpha=o[3]),this.ok=!0}}this.r=this.r<0||isNaN(this.r)?0:this.r>255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b,this.alpha=this.alpha<0?0:this.alpha>1||isNaN(this.alpha)?1:this.alpha,this.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},this.toRGBA=function(){return"rgba("+this.r+", "+this.g+", "+this.b+", "+this.alpha+")"},this.toHex=function(){var t=this.r.toString(16),e=this.g.toString(16),r=this.b.toString(16);return 1==t.length&&(t="0"+t),1==e.length&&(e="0"+e),1==r.length&&(r="0"+r),"#"+t+e+r},this.getHelpXML=function(){for(var t=new Array,i=0;i<r.length;i++)for(var n=r[i].example,a=0;a<n.length;a++)t[t.length]=n[a];for(var s in e)t[t.length]=s;var o=document.createElement("ul");o.setAttribute("id","rgbcolor-examples");for(i=0;i<t.length;i++)try{var h=document.createElement("li"),u=new RGBColor(t[i]),l=document.createElement("div");l.style.cssText="margin: 3px; border: 1px solid black; background:"+u.toHex()+"; color:"+u.toHex(),l.appendChild(document.createTextNode("test"));var c=document.createTextNode(" "+t[i]+" -> "+u.toRGB()+" -> "+u.toHex());h.appendChild(l),h.appendChild(c),o.appendChild(h)}catch(f){}return o}});var $p=tn,Qp=vi.indexOf,Gp=Ug,Zp=ma([].indexOf),Kp=!!Zp&&1/Zp([1],1,-0)<0;$p({target:"Array",proto:!0,forced:Kp||!Gp("indexOf")},{indexOf:function(t){var e=arguments.length>1?arguments[1]:void 0;return Kp?Zp(this,t,e)||0:Qp(this,t,e)}});var Jp=tn,td=qc,ed=D,rd=su,id=Qc,nd=O("".indexOf);Jp({target:"String",proto:!0,forced:!id("includes")},{includes:function(t){return!!~nd(rd(ed(this)),rd(td(t)),arguments.length>1?arguments[1]:void 0)}});var ad=E,sd=tn,od=Array.isArray||function(t){return"Array"===ad(t)},hd=O([].reverse),ud=[1,2];sd({target:"Array",proto:!0,forced:String(ud)===String(ud.reverse())},{reverse:function(){return od(this)&&(this.length=this.length),hd(this)}});
|
|
2
2
|
/*! *****************************************************************************
|
|
3
3
|
Copyright (c) Microsoft Corporation.
|
|
4
4
|
|
package/build/modules/frontend/build/assets/{markdownit-C4X6Sysk.js → markdownit-D4PDy3DR.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{bM as e,bN as t}from"./index-
|
|
1
|
+
import{bM as e,bN as t}from"./index-Cgx-XS5d.js";function r(e,t){for(var r=0;r<t.length;r++){const o=t[r];if("string"!=typeof o&&!Array.isArray(o))for(const t in o)if("default"!==t&&!(t in e)){const r=Object.getOwnPropertyDescriptor(o,t);r&&Object.defineProperty(e,t,r.get?r:{enumerable:!0,get:()=>o[t]})}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}var o=t();const n=r({__proto__:null,default:e(o)},[o]);export{n as m};
|
|
@@ -1,72 +1,72 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="ru" translate="no">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="utf-8" />
|
|
5
|
-
<title>BacktestKit</title>
|
|
6
|
-
<meta
|
|
7
|
-
name="viewport"
|
|
8
|
-
content="width=device-width, user-scalable=no, initial-scale=1, maximum-scale=1, minimal-ui"
|
|
9
|
-
/>
|
|
10
|
-
<link rel="stylesheet" href="/3rdparty/typeface-roboto_0.0.75/typeface-roboto.css" />
|
|
11
|
-
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
|
|
12
|
-
<meta name="apple-mobile-web-app-title" content="BacktestKit" />
|
|
13
|
-
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
14
|
-
<meta name="mobile-web-app-capable" content="yes" />
|
|
15
|
-
<script src="/3rdparty/ace_1.4.12/ace.js"></script>
|
|
16
|
-
<script src="/3rdparty/ace_1.4.12/mode-javascript.js"></script>
|
|
17
|
-
<script src="/3rdparty/ace_1.4.12/theme-twilight.js"></script>
|
|
18
|
-
<script src="/3rdparty/ace_1.4.12/theme-chrome.js"></script>
|
|
19
|
-
<script src="/3rdparty/ace_1.4.12/worker-javascript.js"></script>
|
|
20
|
-
<script src="/3rdparty/qfchart_0.8.7/echarts.min.js"></script>
|
|
21
|
-
<script src="/3rdparty/qfchart_0.8.7/qfchart.js"></script>
|
|
22
|
-
<script src="/3rdparty/qfchart_0.8.7/pinets.js"></script>
|
|
23
|
-
<link
|
|
24
|
-
rel="apple-touch-icon"
|
|
25
|
-
sizes="512x512"
|
|
26
|
-
href="/logo/icon512_maskable.png"
|
|
27
|
-
/>
|
|
28
|
-
<link
|
|
29
|
-
rel="icon"
|
|
30
|
-
type="image/png"
|
|
31
|
-
sizes="512x512"
|
|
32
|
-
href="/logo/icon512_maskable.png"
|
|
33
|
-
/>
|
|
34
|
-
<link rel="manifest" href="/manifest.json" />
|
|
35
|
-
<link
|
|
36
|
-
rel="prefetch"
|
|
37
|
-
href="/images/cubes.png"
|
|
38
|
-
as="image"
|
|
39
|
-
type="image/png"
|
|
40
|
-
/>
|
|
41
|
-
<link
|
|
42
|
-
rel="prefetch"
|
|
43
|
-
href="/images/snow.png"
|
|
44
|
-
as="image"
|
|
45
|
-
type="image/png"
|
|
46
|
-
/>
|
|
47
|
-
<link
|
|
48
|
-
rel="prefetch"
|
|
49
|
-
href="/images/square.png"
|
|
50
|
-
as="image"
|
|
51
|
-
type="image/png"
|
|
52
|
-
/>
|
|
53
|
-
<link
|
|
54
|
-
rel="prefetch"
|
|
55
|
-
href="/images/triangle.png"
|
|
56
|
-
as="image"
|
|
57
|
-
type="image/png"
|
|
58
|
-
/>
|
|
59
|
-
<link
|
|
60
|
-
rel="prefetch"
|
|
61
|
-
href="/images/dots.png"
|
|
62
|
-
as="image"
|
|
63
|
-
type="image/png"
|
|
64
|
-
/>
|
|
65
|
-
<link
|
|
66
|
-
rel="prefetch"
|
|
67
|
-
href="/logo/icon512_maskable.png"
|
|
68
|
-
as="image/png"
|
|
69
|
-
/>
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="ru" translate="no">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<title>BacktestKit</title>
|
|
6
|
+
<meta
|
|
7
|
+
name="viewport"
|
|
8
|
+
content="width=device-width, user-scalable=no, initial-scale=1, maximum-scale=1, minimal-ui"
|
|
9
|
+
/>
|
|
10
|
+
<link rel="stylesheet" href="/3rdparty/typeface-roboto_0.0.75/typeface-roboto.css" />
|
|
11
|
+
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
|
|
12
|
+
<meta name="apple-mobile-web-app-title" content="BacktestKit" />
|
|
13
|
+
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
14
|
+
<meta name="mobile-web-app-capable" content="yes" />
|
|
15
|
+
<script src="/3rdparty/ace_1.4.12/ace.js"></script>
|
|
16
|
+
<script src="/3rdparty/ace_1.4.12/mode-javascript.js"></script>
|
|
17
|
+
<script src="/3rdparty/ace_1.4.12/theme-twilight.js"></script>
|
|
18
|
+
<script src="/3rdparty/ace_1.4.12/theme-chrome.js"></script>
|
|
19
|
+
<script src="/3rdparty/ace_1.4.12/worker-javascript.js"></script>
|
|
20
|
+
<script src="/3rdparty/qfchart_0.8.7/echarts.min.js"></script>
|
|
21
|
+
<script src="/3rdparty/qfchart_0.8.7/qfchart.js"></script>
|
|
22
|
+
<script src="/3rdparty/qfchart_0.8.7/pinets.js"></script>
|
|
23
|
+
<link
|
|
24
|
+
rel="apple-touch-icon"
|
|
25
|
+
sizes="512x512"
|
|
26
|
+
href="/logo/icon512_maskable.png"
|
|
27
|
+
/>
|
|
28
|
+
<link
|
|
29
|
+
rel="icon"
|
|
30
|
+
type="image/png"
|
|
31
|
+
sizes="512x512"
|
|
32
|
+
href="/logo/icon512_maskable.png"
|
|
33
|
+
/>
|
|
34
|
+
<link rel="manifest" href="/manifest.json" />
|
|
35
|
+
<link
|
|
36
|
+
rel="prefetch"
|
|
37
|
+
href="/images/cubes.png"
|
|
38
|
+
as="image"
|
|
39
|
+
type="image/png"
|
|
40
|
+
/>
|
|
41
|
+
<link
|
|
42
|
+
rel="prefetch"
|
|
43
|
+
href="/images/snow.png"
|
|
44
|
+
as="image"
|
|
45
|
+
type="image/png"
|
|
46
|
+
/>
|
|
47
|
+
<link
|
|
48
|
+
rel="prefetch"
|
|
49
|
+
href="/images/square.png"
|
|
50
|
+
as="image"
|
|
51
|
+
type="image/png"
|
|
52
|
+
/>
|
|
53
|
+
<link
|
|
54
|
+
rel="prefetch"
|
|
55
|
+
href="/images/triangle.png"
|
|
56
|
+
as="image"
|
|
57
|
+
type="image/png"
|
|
58
|
+
/>
|
|
59
|
+
<link
|
|
60
|
+
rel="prefetch"
|
|
61
|
+
href="/images/dots.png"
|
|
62
|
+
as="image"
|
|
63
|
+
type="image/png"
|
|
64
|
+
/>
|
|
65
|
+
<link
|
|
66
|
+
rel="prefetch"
|
|
67
|
+
href="/logo/icon512_maskable.png"
|
|
68
|
+
as="image/png"
|
|
69
|
+
/>
|
|
70
70
|
<style>
|
|
71
71
|
html,
|
|
72
72
|
body {
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
scrollbar-width: none;
|
|
79
79
|
background: #eee !important;
|
|
80
80
|
}
|
|
81
|
-
</style>
|
|
81
|
+
</style>
|
|
82
82
|
<style>
|
|
83
83
|
.loader_wraper {
|
|
84
84
|
display: flex;
|
|
@@ -143,21 +143,21 @@
|
|
|
143
143
|
* {
|
|
144
144
|
font-family: "Roboto", sans-serif !important;
|
|
145
145
|
}
|
|
146
|
-
</style>
|
|
147
|
-
<link
|
|
148
|
-
href="https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap"
|
|
149
|
-
rel="stylesheet"
|
|
150
|
-
/>
|
|
151
|
-
<script type="module" crossorigin src="/assets/index-
|
|
146
|
+
</style>
|
|
147
|
+
<link
|
|
148
|
+
href="https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap"
|
|
149
|
+
rel="stylesheet"
|
|
150
|
+
/>
|
|
151
|
+
<script type="module" crossorigin src="/assets/index-Cgx-XS5d.js"></script>
|
|
152
152
|
<link rel="stylesheet" crossorigin href="/assets/index-DrRm3Jka.css">
|
|
153
|
-
</head>
|
|
154
|
-
|
|
155
|
-
<body>
|
|
156
|
-
<div id="root">
|
|
157
|
-
<div class="loader_wraper">
|
|
158
|
-
<div class="loader"></div>
|
|
159
|
-
</div>
|
|
160
|
-
</div>
|
|
161
|
-
<noscript>You need to enable JavaScript to run this app.</noscript>
|
|
162
|
-
</body>
|
|
163
|
-
</html>
|
|
153
|
+
</head>
|
|
154
|
+
|
|
155
|
+
<body>
|
|
156
|
+
<div id="root">
|
|
157
|
+
<div class="loader_wraper">
|
|
158
|
+
<div class="loader"></div>
|
|
159
|
+
</div>
|
|
160
|
+
</div>
|
|
161
|
+
<noscript>You need to enable JavaScript to run this app.</noscript>
|
|
162
|
+
</body>
|
|
163
|
+
</html>
|