[{"data":1,"prerenderedAt":3811},["ShallowReactive",2],{"wrun-open-editor-url":3,"indicators:cookbook/book-heat":4},"https://openmarket.xyz/chart/#wrun-open=v1",{"slug":5,"filePath":6,"frontmatter":7,"rawMarkdown":12,"tree":13},"cookbook/book-heat","cookbook/book-heat.md",{"title":8,"description":9,"order":10,"section":11},"Book Heat","The chart market's resting order book painted behind the candles, bar by bar: every price level the book held when the bar closed is a cell, and the deeper its…",86,"cookbook","---\ntitle: \"Book Heat\"\ndescription: \"The chart market's resting order book painted behind the candles, bar by bar: every price level the book held when the bar closed is a cell, and the deeper its…\"\norder: 86\nsection: \"cookbook\"\n---\n\n\u003C!-- source: docs/indicators/cookbook/book-heat.md; generated by packages/cli/scripts/gen-indicator-docs.ts, do not edit -->\n\n# Book Heat\n\n![Resting order book painted behind the candles as a heatmap, with a bid-ask imbalance pane](/wrun/images/book-heat.png)\n\nThe chart market's resting order book painted behind the candles, bar by bar: every price level the book held when the bar closed is a cell, and the deeper its shade the more size rested there, bids below the price and asks above it on one square-root scale, so a wall reads as a bright band the price has to trade through and a thin book as a faint wash. The heatmap sits under the candles, so the bars stay readable on top of it. Below the chart, the bid-ask imbalance inside a depth window around the mid price, sky while the bids outweigh the asks and orange while they do not.\n\nThe parts are a celled `book.cells` input ([Order book functions](../functions/order-flow-kit.md)), a `plot.heatmap` declaration that paints that input's block without any output carrying it ([Price canvases](../presentation/price-canvases.md)), one histogram output read off the same block ([Plotting](../presentation/plotting.md)), and a label handle for the one sentence shown on a market without a book ([Drawing objects](../presentation/drawing-objects.md)). This is also the `book-heat` template: the **Book Heat** card under **Order flow** in the editor's starter list, and it compiles as written.\n\n## The wrun indicator\n\n```typescript sample=book-heat\n// Book Heat: the chart market's resting order book painted behind the candles as a heatmap of resting size by price,\n// bar by bar: the deeper the shade, the more size rested at that price when the bar closed, bids below the price and\n// asks above it on one scale, so a wall reads as a bright band the price has to trade through. Below the chart, the\n// bid-ask imbalance inside a depth window around the mid: sky while the bids outweigh the asks, orange while they do not.\n\nparam.number(\"depth_pct\", 1.0, { min: 0.1, max: 10, step: 0.1, label: \"Depth window in percent\", description: \"Depth window for the imbalance: percent around the mid price, each side\" });\ninput(\"close\", ohlcv.close); // the primary input: the chart's own candles define the grid\ninput(\"book\", book.cells, { max_cells: 1000, block_size: 10, description: \"The resting book at the bar's close, one [price, size, side] level per tuple\" }); // side +1 bid, -1 ask; the chart serves its own market's book, up to 500 levels a side\noutput(\"imbalance\", histogram, lower, { colors: [\"#38bdf8\", \"#f86800\"], format: \"%\", label: \"Book imbalance\", description: \"Bid size minus ask size inside the depth window, as a percent of both\" }); // sky above zero, orange below\nplot.heatmap({ name: \"book_heat\", cells: \"book\", value: \"size\", behind_candles: true, palette: [\"theme.bg\", \"#2563eb\", \"#22d3ee\", \"#facc15\"], scale: \"sqrt\", auto_quantile: 0.98, opacity: 0.85, label: \"Resting size\", tooltip: \"{{value:si}} resting at {{price}}\" }); // the host paints the block the input already delivers; no output carries it\nstring(\"note\", { max_bytes: 40 }); // the one sentence shown when the market serves no order book\nhandles.label({ anchor: \"top_right\", align: \"right\", color: \"#94a3b8\", size: 12, style: \"plain\", safe_area: true }); // that sentence: plain slate words at the pane's top right, clear of the chart's buttons\n\nconst TUPLE = 3; // f64s per level: price, size, side\nconst note = draw.label(0); // the one slate sentence; a handle allocates once at module load\nlet depth = 0.01; // the setting, read in onStart()\nlet bookSeen = false; // the market served a book on some bar\n\nfunction onStart(): void {\n  depth = p_depth_pct() / 100.0;\n}\n\n// onBar() runs once per bar: the host paints the block itself; the module reads the same block for the imbalance.\nfunction onBar(): void {\n  const n = in_book_cells();\n  if (n > 0) bookSeen = true;\n  if (bar.isLast() && !bookSeen) { // no book on any bar (FX, stocks): one sentence in place of an empty map and pane\n    sb_clear();\n    sb_text(\"No order book on this market\");\n    note.set(16.0, 12.0).text(str_note_sb);\n  }\n  if (n \u003C TUPLE * 2) { // an empty block (no book served for this bar) or one level alone: no reading\n    out_imbalance(NaN);\n    return;\n  }\n  const cells = in_book_view(); // this bar's levels in place: the first n values of the build's own buffer\n  let bestBid = -Infinity;\n  let bestAsk = Infinity;\n  for (let i = 0; i + TUPLE - 1 \u003C n; i += TUPLE) {\n    if (cells[i + 2] > 0.0) {\n      if (cells[i] > bestBid) bestBid = cells[i];\n    } else if (cells[i] \u003C bestAsk) bestAsk = cells[i];\n  }\n  if (!isFinite(bestBid) || !isFinite(bestAsk)) { // one side only: no mid to measure around\n    out_imbalance(NaN);\n    return;\n  }\n  const mid = (bestBid + bestAsk) * 0.5;\n  let bids = 0.0;\n  let asks = 0.0;\n  for (let i = 0; i + TUPLE - 1 \u003C n; i += TUPLE) {\n    if (Math.abs(cells[i] - mid) > mid * depth) continue; // outside the window\n    if (cells[i + 2] > 0.0) bids += cells[i + 1];\n    else asks += cells[i + 1];\n  }\n  const total = bids + asks;\n  out_imbalance(total > 0.0 ? (100.0 * (bids - asks)) / total : NaN);\n}\n```\n\n## How it works\n\n**The block is the canvas.** `input(\"book\", book.cells, { max_cells: 1000, block_size: 10 })` delivers the resting book at each bar's close as `[price, size, side]` tuples, side `+1` for a bid level and `-1` for an ask level, up to 500 levels a side. `plot.heatmap({ name: \"book_heat\", cells: \"book\", value: \"size\" })` tells the host to paint that block: one cell per level, one column per bar, the cell's height the book's own price grouping (`row_height` overrides it), its colour the level's size on the palette. The module never copies or forwards the block; the host reads the same rows the input already delivered.\n\n**The scale.** `palette` runs from the chart's background (`theme.bg`) through blue and cyan to yellow, low to high; `scale: \"sqrt\"` keeps the many small levels visible beside the walls; `auto_quantile: 0.98` sets the top of the scale at the 98th percentile of every cell in the run, so a single outsized order does not flatten the rest. `value` picks what a cell reads: `\"size\"` (both sides), `\"bid\"`, `\"ask\"`, or `\"signed\"` (bids positive, asks negative, which centres the palette on zero). `behind_candles: true` is the default; `false` paints over the candles instead. `opacity: 0.85` leaves the grid visible through the cells.\n\n**The reading beside it.** The histogram sums bid and ask size inside `depth_pct` (1%) of the mid, the mid being the best bid and the best ask averaged, and prints their difference as a percent of both: sky above zero, orange below (the two `colors` of a histogram are its sign colours). A bar whose block is empty reads NaN and draws nothing, in the pane and on the canvas alike.\n\n**The hover.** `tooltip: \"{{value:si}} resting at {{price}}\"` puts a readout under the cursor over any cell, `label` its title; drop `tooltip` for a heatmap with no hover.\n\n## Where it runs\n\nAny market the chart serves an order book for: crypto spot and perpetual venues, Polymarket markets. The chart serves the book snapshots its own order book lane fetches for the chart's market; `block_size` is required by the declaration but the chart reads neither it nor `max_depth`. The heatmap paints as far back as the book history the chart holds; older bars carry an empty block.\n\n## When data is missing\n\nA market with no book lane is refused by name before any fetch, naming the input and the way out. A market whose bars all arrive without a book (FX and stocks, where the lane answers empty) runs: the map stays empty, the histogram reads NaN, and one line of words shows at the top right of the chart, `No order book on this market`, in plain slate: the `note` label handle, written on the live bar while no bar has brought a book, pinned to the pane's top right corner, right-aligned and `safe_area: true`, so it clears the chart's own buttons. A bar with no snapshot carries an empty block: the column is blank and the histogram reads NaN. A book that lists one side only (a halted market, a one-sided prediction market) has no mid, so the histogram reads NaN while the heatmap still paints the side it has.\n\n## Customize it\n\n- **Read one side.** Change `value: \"size\"` to `\"bid\"` or `\"ask\"` to paint one side of the book, or to `\"signed\"` for a diverging map (bids warm, asks cold) with the palette `[\"theme.down\", \"theme.bg\", \"theme.up\"]`.\n- **Fix the scale.** Set `min` and `max` in size units to compare days on one scale; `auto_quantile` then goes away.\n- **Coarser rows.** `row_height: 50` groups the book into 50-unit price rows on a market whose levels are finer than the chart can show.\n- **Over the candles.** `behind_candles: false` paints the cells over the bars, with `opacity: 0.5` to keep them visible.\n\n## Run it\n\n1. In the editor's Explorer, press the **Templates** icon (\"Browse starter templates\") and pick **Book Heat** under **Order flow**.\n2. Press **Run** on a liquid crypto chart (Binance Futures BTCUSDT, for example): the book paints behind the candles as the snapshots arrive and the imbalance pane fills below.\n3. Hover a cell for its resting size; at the editor's Console prompt, type `imbalance` to read the live bar's reading.\n4. Open the indicator's settings: on the **Style** page, the heatmap's **Sensitivity** slider recolours it live, toward Vivid to light up thinner levels, toward Subtle to keep the brightest colours for the walls ([The Style page](../settings/style-page.md#the-sensitivity-row)).\n\n## Concepts used\n\n- [Order book functions](../functions/order-flow-kit.md) for the `book` celled class, its tuple and the depth-window scans\n- [Price canvases](../presentation/price-canvases.md) for `plot.heatmap`, the `value` words, the colour scale and the hover readout\n- [Plotting](../presentation/plotting.md) for histogram outputs and their sign colours\n",{"type":14,"children":15,"data":3804,"position":3806},"root",[16,26,29,30,51,52,67,68,293,294,312,313,2266,2267,2283,2284,2435,2436,2702,2703,2772,2773,2857,2858,2874,2875,2928,2929,2944,2945,3018,3019,3034,3035,3377,3378,3394,3395,3638,3639,3654,3655],{"type":17,"value":18,"position":19},"comment"," source: docs/indicators/cookbook/book-heat.md; generated by packages/cli/scripts/gen-indicator-docs.ts, do not edit ",{"start":20,"end":23},{"line":21,"column":21,"offset":22},1,0,{"line":21,"column":24,"offset":25},125,124,{"type":27,"value":28},"text","\n",{"type":27,"value":28},{"type":31,"tagName":32,"properties":33,"children":34,"position":48},"element","p",{},[35],{"type":31,"tagName":36,"properties":37,"children":40,"position":41},"img",{"src":38,"alt":39},"/wrun/images/book-heat.png","Resting order book painted behind the candles as a heatmap, with a bid-ask imbalance pane",[],{"start":42,"end":45},{"line":43,"column":21,"offset":44},5,139,{"line":43,"column":46,"offset":47},121,259,{"start":49,"end":50},{"line":43,"column":21,"offset":44},{"line":43,"column":46,"offset":47},{"type":27,"value":28},{"type":31,"tagName":32,"properties":53,"children":54,"position":64},{},[55],{"type":27,"value":56,"position":57},"The chart market's resting order book painted behind the candles, bar by bar: every price level the book held when the bar closed is a cell, and the deeper its shade the more size rested there, bids below the price and asks above it on one square-root scale, so a wall reads as a bright band the price has to trade through and a thin book as a faint wash. The heatmap sits under the candles, so the bars stay readable on top of it. Below the chart, the bid-ask imbalance inside a depth window around the mid price, sky while the bids outweigh the asks and orange while they do not.",{"start":58,"end":61},{"line":59,"column":21,"offset":60},7,261,{"line":59,"column":62,"offset":63},582,842,{"start":65,"end":66},{"line":59,"column":21,"offset":60},{"line":59,"column":62,"offset":63},{"type":27,"value":28},{"type":31,"tagName":32,"properties":69,"children":70,"position":290},{},[71,80,94,101,120,127,140,147,165,172,190,197,215,222,235,242,259,266,283],{"type":27,"value":72,"position":73},"The parts are a celled ",{"start":74,"end":77},{"line":75,"column":21,"offset":76},9,844,{"line":75,"column":78,"offset":79},24,867,{"type":31,"tagName":81,"properties":82,"children":83,"position":91},"code",{},[84],{"type":27,"value":85,"position":86},"book.cells",{"start":87,"end":88},{"line":75,"column":78,"offset":79},{"line":75,"column":89,"offset":90},36,879,{"start":92,"end":93},{"line":75,"column":78,"offset":79},{"line":75,"column":89,"offset":90},{"type":27,"value":95,"position":96}," input (",{"start":97,"end":98},{"line":75,"column":89,"offset":90},{"line":75,"column":99,"offset":100},44,887,{"type":31,"tagName":102,"properties":103,"children":105,"position":115},"a",{"href":104},"../functions/order-flow-kit.md",[106],{"type":27,"value":107,"position":108},"Order book functions",{"start":109,"end":112},{"line":75,"column":110,"offset":111},45,888,{"line":75,"column":113,"offset":114},65,908,{"start":116,"end":117},{"line":75,"column":99,"offset":100},{"line":75,"column":118,"offset":119},98,941,{"type":27,"value":121,"position":122},"), a ",{"start":123,"end":124},{"line":75,"column":118,"offset":119},{"line":75,"column":125,"offset":126},103,946,{"type":31,"tagName":81,"properties":128,"children":129,"position":137},{},[130],{"type":27,"value":131,"position":132},"plot.heatmap",{"start":133,"end":134},{"line":75,"column":125,"offset":126},{"line":75,"column":135,"offset":136},117,960,{"start":138,"end":139},{"line":75,"column":125,"offset":126},{"line":75,"column":135,"offset":136},{"type":27,"value":141,"position":142}," declaration that paints that input's block without any output carrying it (",{"start":143,"end":144},{"line":75,"column":135,"offset":136},{"line":75,"column":145,"offset":146},193,1036,{"type":31,"tagName":102,"properties":148,"children":150,"position":160},{"href":149},"../presentation/price-canvases.md",[151],{"type":27,"value":152,"position":153},"Price canvases",{"start":154,"end":157},{"line":75,"column":155,"offset":156},194,1037,{"line":75,"column":158,"offset":159},208,1051,{"start":161,"end":162},{"line":75,"column":145,"offset":146},{"line":75,"column":163,"offset":164},244,1087,{"type":27,"value":166,"position":167},"), one histogram output read off the same block (",{"start":168,"end":169},{"line":75,"column":163,"offset":164},{"line":75,"column":170,"offset":171},293,1136,{"type":31,"tagName":102,"properties":173,"children":175,"position":185},{"href":174},"../presentation/plotting.md",[176],{"type":27,"value":177,"position":178},"Plotting",{"start":179,"end":182},{"line":75,"column":180,"offset":181},294,1137,{"line":75,"column":183,"offset":184},302,1145,{"start":186,"end":187},{"line":75,"column":170,"offset":171},{"line":75,"column":188,"offset":189},332,1175,{"type":27,"value":191,"position":192},"), and a label handle for the one sentence shown on a market without a book (",{"start":193,"end":194},{"line":75,"column":188,"offset":189},{"line":75,"column":195,"offset":196},409,1252,{"type":31,"tagName":102,"properties":198,"children":200,"position":210},{"href":199},"../presentation/drawing-objects.md",[201],{"type":27,"value":202,"position":203},"Drawing objects",{"start":204,"end":207},{"line":75,"column":205,"offset":206},410,1253,{"line":75,"column":208,"offset":209},425,1268,{"start":211,"end":212},{"line":75,"column":195,"offset":196},{"line":75,"column":213,"offset":214},462,1305,{"type":27,"value":216,"position":217},"). This is also the ",{"start":218,"end":219},{"line":75,"column":213,"offset":214},{"line":75,"column":220,"offset":221},482,1325,{"type":31,"tagName":81,"properties":223,"children":224,"position":232},{},[225],{"type":27,"value":226,"position":227},"book-heat",{"start":228,"end":229},{"line":75,"column":220,"offset":221},{"line":75,"column":230,"offset":231},493,1336,{"start":233,"end":234},{"line":75,"column":220,"offset":221},{"line":75,"column":230,"offset":231},{"type":27,"value":236,"position":237}," template: the ",{"start":238,"end":239},{"line":75,"column":230,"offset":231},{"line":75,"column":240,"offset":241},508,1351,{"type":31,"tagName":243,"properties":244,"children":245,"position":254},"strong",{},[246],{"type":27,"value":8,"position":247},{"start":248,"end":251},{"line":75,"column":249,"offset":250},510,1353,{"line":75,"column":252,"offset":253},519,1362,{"start":255,"end":256},{"line":75,"column":240,"offset":241},{"line":75,"column":257,"offset":258},521,1364,{"type":27,"value":260,"position":261}," card under ",{"start":262,"end":263},{"line":75,"column":257,"offset":258},{"line":75,"column":264,"offset":265},533,1376,{"type":31,"tagName":243,"properties":267,"children":268,"position":278},{},[269],{"type":27,"value":270,"position":271},"Order flow",{"start":272,"end":275},{"line":75,"column":273,"offset":274},535,1378,{"line":75,"column":276,"offset":277},545,1388,{"start":279,"end":280},{"line":75,"column":264,"offset":265},{"line":75,"column":281,"offset":282},547,1390,{"type":27,"value":284,"position":285}," in the editor's starter list, and it compiles as written.",{"start":286,"end":287},{"line":75,"column":281,"offset":282},{"line":75,"column":288,"offset":289},605,1448,{"start":291,"end":292},{"line":75,"column":21,"offset":76},{"line":75,"column":288,"offset":289},{"type":27,"value":28},{"type":31,"tagName":295,"properties":296,"children":297,"position":308},"h2",{},[298],{"type":27,"value":299,"position":300},"The wrun indicator",{"start":301,"end":305},{"line":302,"column":303,"offset":304},11,4,1453,{"line":302,"column":306,"offset":307},22,1471,{"start":309,"end":311},{"line":302,"column":21,"offset":310},1450,{"line":302,"column":306,"offset":307},{"type":27,"value":28},{"type":14,"children":314},[315],{"type":31,"tagName":316,"properties":317,"children":321,"data":-1},"pre",{"class":318,"style":319,"tabindex":320,"data-sample":226},"shiki shiki-themes github-dark github-light","--shiki-dark:#e1e4e8;--shiki-light:#24292e;--shiki-dark-bg:#24292e;--shiki-light-bg:#fff","0",[322],{"type":31,"tagName":81,"properties":323,"children":326},{"class":324},[325],"language-typescript",[327,338,339,347,348,356,357,365,366,369,370,461,462,489,490,544,545,618,619,766,767,803,804,885,886,889,890,924,925,968,969,1001,1002,1032,1033,1036,1037,1070,1071,1108,1109,1117,1118,1121,1122,1130,1131,1159,1160,1187,1188,1229,1230,1271,1272,1284,1285,1307,1308,1353,1354,1362,1363,1403,1404,1425,1426,1438,1439,1446,1447,1478,1479,1510,1511,1536,1537,1614,1615,1654,1655,1686,1687,1726,1727,1734,1735,1784,1785,1804,1805,1816,1817,1824,1825,1869,1870,1894,1895,1919,1920,1987,1988,2052,2053,2111,2112,2144,2145,2152,2153,2182,2183,2258,2259],{"type":31,"tagName":328,"properties":329,"children":331},"span",{"class":330},"line",[332],{"type":31,"tagName":328,"properties":333,"children":335},{"style":334},"--shiki-dark:#6A737D;--shiki-light:#6A737D",[336],{"type":27,"value":337},"// Book Heat: the chart market's resting order book painted behind the candles as a heatmap of resting size by price,",{"type":27,"value":28},{"type":31,"tagName":328,"properties":340,"children":341},{"class":330},[342],{"type":31,"tagName":328,"properties":343,"children":344},{"style":334},[345],{"type":27,"value":346},"// bar by bar: the deeper the shade, the more size rested at that price when the bar closed, bids below the price and",{"type":27,"value":28},{"type":31,"tagName":328,"properties":349,"children":350},{"class":330},[351],{"type":31,"tagName":328,"properties":352,"children":353},{"style":334},[354],{"type":27,"value":355},"// asks above it on one scale, so a wall reads as a bright band the price has to trade through. Below the chart, the",{"type":27,"value":28},{"type":31,"tagName":328,"properties":358,"children":359},{"class":330},[360],{"type":31,"tagName":328,"properties":361,"children":362},{"style":334},[363],{"type":27,"value":364},"// bid-ask imbalance inside a depth window around the mid: sky while the bids outweigh the asks, orange while they do not.",{"type":27,"value":28},{"type":31,"tagName":328,"properties":367,"children":368},{"class":330},[],{"type":27,"value":28},{"type":31,"tagName":328,"properties":371,"children":372},{"class":330},[373,379,385,390,396,401,407,412,417,422,427,432,436,441,446,451,456],{"type":31,"tagName":328,"properties":374,"children":376},{"style":375},"--shiki-dark:#E1E4E8;--shiki-light:#24292E",[377],{"type":27,"value":378},"param.",{"type":31,"tagName":328,"properties":380,"children":382},{"style":381},"--shiki-dark:#B392F0;--shiki-light:#6F42C1",[383],{"type":27,"value":384},"number",{"type":31,"tagName":328,"properties":386,"children":387},{"style":375},[388],{"type":27,"value":389},"(",{"type":31,"tagName":328,"properties":391,"children":393},{"style":392},"--shiki-dark:#9ECBFF;--shiki-light:#032F62",[394],{"type":27,"value":395},"\"depth_pct\"",{"type":31,"tagName":328,"properties":397,"children":398},{"style":375},[399],{"type":27,"value":400},", ",{"type":31,"tagName":328,"properties":402,"children":404},{"style":403},"--shiki-dark:#79B8FF;--shiki-light:#005CC5",[405],{"type":27,"value":406},"1.0",{"type":31,"tagName":328,"properties":408,"children":409},{"style":375},[410],{"type":27,"value":411},", { min: ",{"type":31,"tagName":328,"properties":413,"children":414},{"style":403},[415],{"type":27,"value":416},"0.1",{"type":31,"tagName":328,"properties":418,"children":419},{"style":375},[420],{"type":27,"value":421},", max: ",{"type":31,"tagName":328,"properties":423,"children":424},{"style":403},[425],{"type":27,"value":426},"10",{"type":31,"tagName":328,"properties":428,"children":429},{"style":375},[430],{"type":27,"value":431},", step: ",{"type":31,"tagName":328,"properties":433,"children":434},{"style":403},[435],{"type":27,"value":416},{"type":31,"tagName":328,"properties":437,"children":438},{"style":375},[439],{"type":27,"value":440},", label: ",{"type":31,"tagName":328,"properties":442,"children":443},{"style":392},[444],{"type":27,"value":445},"\"Depth window in percent\"",{"type":31,"tagName":328,"properties":447,"children":448},{"style":375},[449],{"type":27,"value":450},", description: ",{"type":31,"tagName":328,"properties":452,"children":453},{"style":392},[454],{"type":27,"value":455},"\"Depth window for the imbalance: percent around the mid price, each side\"",{"type":31,"tagName":328,"properties":457,"children":458},{"style":375},[459],{"type":27,"value":460}," });",{"type":27,"value":28},{"type":31,"tagName":328,"properties":463,"children":464},{"class":330},[465,470,474,479,484],{"type":31,"tagName":328,"properties":466,"children":467},{"style":381},[468],{"type":27,"value":469},"input",{"type":31,"tagName":328,"properties":471,"children":472},{"style":375},[473],{"type":27,"value":389},{"type":31,"tagName":328,"properties":475,"children":476},{"style":392},[477],{"type":27,"value":478},"\"close\"",{"type":31,"tagName":328,"properties":480,"children":481},{"style":375},[482],{"type":27,"value":483},", ohlcv.close); ",{"type":31,"tagName":328,"properties":485,"children":486},{"style":334},[487],{"type":27,"value":488},"// the primary input: the chart's own candles define the grid",{"type":27,"value":28},{"type":31,"tagName":328,"properties":491,"children":492},{"class":330},[493,497,501,506,511,516,521,525,529,534,539],{"type":31,"tagName":328,"properties":494,"children":495},{"style":381},[496],{"type":27,"value":469},{"type":31,"tagName":328,"properties":498,"children":499},{"style":375},[500],{"type":27,"value":389},{"type":31,"tagName":328,"properties":502,"children":503},{"style":392},[504],{"type":27,"value":505},"\"book\"",{"type":31,"tagName":328,"properties":507,"children":508},{"style":375},[509],{"type":27,"value":510},", book.cells, { max_cells: ",{"type":31,"tagName":328,"properties":512,"children":513},{"style":403},[514],{"type":27,"value":515},"1000",{"type":31,"tagName":328,"properties":517,"children":518},{"style":375},[519],{"type":27,"value":520},", block_size: ",{"type":31,"tagName":328,"properties":522,"children":523},{"style":403},[524],{"type":27,"value":426},{"type":31,"tagName":328,"properties":526,"children":527},{"style":375},[528],{"type":27,"value":450},{"type":31,"tagName":328,"properties":530,"children":531},{"style":392},[532],{"type":27,"value":533},"\"The resting book at the bar's close, one [price, size, side] level per tuple\"",{"type":31,"tagName":328,"properties":535,"children":536},{"style":375},[537],{"type":27,"value":538}," }); ",{"type":31,"tagName":328,"properties":540,"children":541},{"style":334},[542],{"type":27,"value":543},"// side +1 bid, -1 ask; the chart serves its own market's book, up to 500 levels a side",{"type":27,"value":28},{"type":31,"tagName":328,"properties":546,"children":547},{"class":330},[548,553,557,562,567,572,576,581,586,591,595,600,604,609,613],{"type":31,"tagName":328,"properties":549,"children":550},{"style":381},[551],{"type":27,"value":552},"output",{"type":31,"tagName":328,"properties":554,"children":555},{"style":375},[556],{"type":27,"value":389},{"type":31,"tagName":328,"properties":558,"children":559},{"style":392},[560],{"type":27,"value":561},"\"imbalance\"",{"type":31,"tagName":328,"properties":563,"children":564},{"style":375},[565],{"type":27,"value":566},", histogram, lower, { colors: [",{"type":31,"tagName":328,"properties":568,"children":569},{"style":392},[570],{"type":27,"value":571},"\"#38bdf8\"",{"type":31,"tagName":328,"properties":573,"children":574},{"style":375},[575],{"type":27,"value":400},{"type":31,"tagName":328,"properties":577,"children":578},{"style":392},[579],{"type":27,"value":580},"\"#f86800\"",{"type":31,"tagName":328,"properties":582,"children":583},{"style":375},[584],{"type":27,"value":585},"], format: ",{"type":31,"tagName":328,"properties":587,"children":588},{"style":392},[589],{"type":27,"value":590},"\"%\"",{"type":31,"tagName":328,"properties":592,"children":593},{"style":375},[594],{"type":27,"value":440},{"type":31,"tagName":328,"properties":596,"children":597},{"style":392},[598],{"type":27,"value":599},"\"Book imbalance\"",{"type":31,"tagName":328,"properties":601,"children":602},{"style":375},[603],{"type":27,"value":450},{"type":31,"tagName":328,"properties":605,"children":606},{"style":392},[607],{"type":27,"value":608},"\"Bid size minus ask size inside the depth window, as a percent of both\"",{"type":31,"tagName":328,"properties":610,"children":611},{"style":375},[612],{"type":27,"value":538},{"type":31,"tagName":328,"properties":614,"children":615},{"style":334},[616],{"type":27,"value":617},"// sky above zero, orange below",{"type":27,"value":28},{"type":31,"tagName":328,"properties":620,"children":621},{"class":330},[622,627,632,637,642,647,651,656,661,666,671,676,681,685,690,694,699,703,708,713,718,723,728,733,738,742,747,752,757,761],{"type":31,"tagName":328,"properties":623,"children":624},{"style":375},[625],{"type":27,"value":626},"plot.",{"type":31,"tagName":328,"properties":628,"children":629},{"style":381},[630],{"type":27,"value":631},"heatmap",{"type":31,"tagName":328,"properties":633,"children":634},{"style":375},[635],{"type":27,"value":636},"({ name: ",{"type":31,"tagName":328,"properties":638,"children":639},{"style":392},[640],{"type":27,"value":641},"\"book_heat\"",{"type":31,"tagName":328,"properties":643,"children":644},{"style":375},[645],{"type":27,"value":646},", cells: ",{"type":31,"tagName":328,"properties":648,"children":649},{"style":392},[650],{"type":27,"value":505},{"type":31,"tagName":328,"properties":652,"children":653},{"style":375},[654],{"type":27,"value":655},", value: ",{"type":31,"tagName":328,"properties":657,"children":658},{"style":392},[659],{"type":27,"value":660},"\"size\"",{"type":31,"tagName":328,"properties":662,"children":663},{"style":375},[664],{"type":27,"value":665},", behind_candles: ",{"type":31,"tagName":328,"properties":667,"children":668},{"style":403},[669],{"type":27,"value":670},"true",{"type":31,"tagName":328,"properties":672,"children":673},{"style":375},[674],{"type":27,"value":675},", palette: [",{"type":31,"tagName":328,"properties":677,"children":678},{"style":392},[679],{"type":27,"value":680},"\"theme.bg\"",{"type":31,"tagName":328,"properties":682,"children":683},{"style":375},[684],{"type":27,"value":400},{"type":31,"tagName":328,"properties":686,"children":687},{"style":392},[688],{"type":27,"value":689},"\"#2563eb\"",{"type":31,"tagName":328,"properties":691,"children":692},{"style":375},[693],{"type":27,"value":400},{"type":31,"tagName":328,"properties":695,"children":696},{"style":392},[697],{"type":27,"value":698},"\"#22d3ee\"",{"type":31,"tagName":328,"properties":700,"children":701},{"style":375},[702],{"type":27,"value":400},{"type":31,"tagName":328,"properties":704,"children":705},{"style":392},[706],{"type":27,"value":707},"\"#facc15\"",{"type":31,"tagName":328,"properties":709,"children":710},{"style":375},[711],{"type":27,"value":712},"], scale: ",{"type":31,"tagName":328,"properties":714,"children":715},{"style":392},[716],{"type":27,"value":717},"\"sqrt\"",{"type":31,"tagName":328,"properties":719,"children":720},{"style":375},[721],{"type":27,"value":722},", auto_quantile: ",{"type":31,"tagName":328,"properties":724,"children":725},{"style":403},[726],{"type":27,"value":727},"0.98",{"type":31,"tagName":328,"properties":729,"children":730},{"style":375},[731],{"type":27,"value":732},", opacity: ",{"type":31,"tagName":328,"properties":734,"children":735},{"style":403},[736],{"type":27,"value":737},"0.85",{"type":31,"tagName":328,"properties":739,"children":740},{"style":375},[741],{"type":27,"value":440},{"type":31,"tagName":328,"properties":743,"children":744},{"style":392},[745],{"type":27,"value":746},"\"Resting size\"",{"type":31,"tagName":328,"properties":748,"children":749},{"style":375},[750],{"type":27,"value":751},", tooltip: ",{"type":31,"tagName":328,"properties":753,"children":754},{"style":392},[755],{"type":27,"value":756},"\"{{value:si}} resting at {{price}}\"",{"type":31,"tagName":328,"properties":758,"children":759},{"style":375},[760],{"type":27,"value":538},{"type":31,"tagName":328,"properties":762,"children":763},{"style":334},[764],{"type":27,"value":765},"// the host paints the block the input already delivers; no output carries it",{"type":27,"value":28},{"type":31,"tagName":328,"properties":768,"children":769},{"class":330},[770,775,779,784,789,794,798],{"type":31,"tagName":328,"properties":771,"children":772},{"style":381},[773],{"type":27,"value":774},"string",{"type":31,"tagName":328,"properties":776,"children":777},{"style":375},[778],{"type":27,"value":389},{"type":31,"tagName":328,"properties":780,"children":781},{"style":392},[782],{"type":27,"value":783},"\"note\"",{"type":31,"tagName":328,"properties":785,"children":786},{"style":375},[787],{"type":27,"value":788},", { max_bytes: ",{"type":31,"tagName":328,"properties":790,"children":791},{"style":403},[792],{"type":27,"value":793},"40",{"type":31,"tagName":328,"properties":795,"children":796},{"style":375},[797],{"type":27,"value":538},{"type":31,"tagName":328,"properties":799,"children":800},{"style":334},[801],{"type":27,"value":802},"// the one sentence shown when the market serves no order book",{"type":27,"value":28},{"type":31,"tagName":328,"properties":805,"children":806},{"class":330},[807,812,817,822,827,832,837,842,847,852,857,862,867,872,876,880],{"type":31,"tagName":328,"properties":808,"children":809},{"style":375},[810],{"type":27,"value":811},"handles.",{"type":31,"tagName":328,"properties":813,"children":814},{"style":381},[815],{"type":27,"value":816},"label",{"type":31,"tagName":328,"properties":818,"children":819},{"style":375},[820],{"type":27,"value":821},"({ anchor: ",{"type":31,"tagName":328,"properties":823,"children":824},{"style":392},[825],{"type":27,"value":826},"\"top_right\"",{"type":31,"tagName":328,"properties":828,"children":829},{"style":375},[830],{"type":27,"value":831},", align: ",{"type":31,"tagName":328,"properties":833,"children":834},{"style":392},[835],{"type":27,"value":836},"\"right\"",{"type":31,"tagName":328,"properties":838,"children":839},{"style":375},[840],{"type":27,"value":841},", color: ",{"type":31,"tagName":328,"properties":843,"children":844},{"style":392},[845],{"type":27,"value":846},"\"#94a3b8\"",{"type":31,"tagName":328,"properties":848,"children":849},{"style":375},[850],{"type":27,"value":851},", size: ",{"type":31,"tagName":328,"properties":853,"children":854},{"style":403},[855],{"type":27,"value":856},"12",{"type":31,"tagName":328,"properties":858,"children":859},{"style":375},[860],{"type":27,"value":861},", style: ",{"type":31,"tagName":328,"properties":863,"children":864},{"style":392},[865],{"type":27,"value":866},"\"plain\"",{"type":31,"tagName":328,"properties":868,"children":869},{"style":375},[870],{"type":27,"value":871},", safe_area: ",{"type":31,"tagName":328,"properties":873,"children":874},{"style":403},[875],{"type":27,"value":670},{"type":31,"tagName":328,"properties":877,"children":878},{"style":375},[879],{"type":27,"value":538},{"type":31,"tagName":328,"properties":881,"children":882},{"style":334},[883],{"type":27,"value":884},"// that sentence: plain slate words at the pane's top right, clear of the chart's buttons",{"type":27,"value":28},{"type":31,"tagName":328,"properties":887,"children":888},{"class":330},[],{"type":27,"value":28},{"type":31,"tagName":328,"properties":891,"children":892},{"class":330},[893,899,904,909,914,919],{"type":31,"tagName":328,"properties":894,"children":896},{"style":895},"--shiki-dark:#F97583;--shiki-light:#D73A49",[897],{"type":27,"value":898},"const",{"type":31,"tagName":328,"properties":900,"children":901},{"style":403},[902],{"type":27,"value":903}," TUPLE",{"type":31,"tagName":328,"properties":905,"children":906},{"style":895},[907],{"type":27,"value":908}," =",{"type":31,"tagName":328,"properties":910,"children":911},{"style":403},[912],{"type":27,"value":913}," 3",{"type":31,"tagName":328,"properties":915,"children":916},{"style":375},[917],{"type":27,"value":918},"; ",{"type":31,"tagName":328,"properties":920,"children":921},{"style":334},[922],{"type":27,"value":923},"// f64s per level: price, size, side",{"type":27,"value":28},{"type":31,"tagName":328,"properties":926,"children":927},{"class":330},[928,932,937,941,946,950,954,958,963],{"type":31,"tagName":328,"properties":929,"children":930},{"style":895},[931],{"type":27,"value":898},{"type":31,"tagName":328,"properties":933,"children":934},{"style":403},[935],{"type":27,"value":936}," note",{"type":31,"tagName":328,"properties":938,"children":939},{"style":895},[940],{"type":27,"value":908},{"type":31,"tagName":328,"properties":942,"children":943},{"style":375},[944],{"type":27,"value":945}," draw.",{"type":31,"tagName":328,"properties":947,"children":948},{"style":381},[949],{"type":27,"value":816},{"type":31,"tagName":328,"properties":951,"children":952},{"style":375},[953],{"type":27,"value":389},{"type":31,"tagName":328,"properties":955,"children":956},{"style":403},[957],{"type":27,"value":320},{"type":31,"tagName":328,"properties":959,"children":960},{"style":375},[961],{"type":27,"value":962},"); ",{"type":31,"tagName":328,"properties":964,"children":965},{"style":334},[966],{"type":27,"value":967},"// the one slate sentence; a handle allocates once at module load",{"type":27,"value":28},{"type":31,"tagName":328,"properties":970,"children":971},{"class":330},[972,977,982,987,992,996],{"type":31,"tagName":328,"properties":973,"children":974},{"style":895},[975],{"type":27,"value":976},"let",{"type":31,"tagName":328,"properties":978,"children":979},{"style":375},[980],{"type":27,"value":981}," depth ",{"type":31,"tagName":328,"properties":983,"children":984},{"style":895},[985],{"type":27,"value":986},"=",{"type":31,"tagName":328,"properties":988,"children":989},{"style":403},[990],{"type":27,"value":991}," 0.01",{"type":31,"tagName":328,"properties":993,"children":994},{"style":375},[995],{"type":27,"value":918},{"type":31,"tagName":328,"properties":997,"children":998},{"style":334},[999],{"type":27,"value":1000},"// the setting, read in onStart()",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1003,"children":1004},{"class":330},[1005,1009,1014,1018,1023,1027],{"type":31,"tagName":328,"properties":1006,"children":1007},{"style":895},[1008],{"type":27,"value":976},{"type":31,"tagName":328,"properties":1010,"children":1011},{"style":375},[1012],{"type":27,"value":1013}," bookSeen ",{"type":31,"tagName":328,"properties":1015,"children":1016},{"style":895},[1017],{"type":27,"value":986},{"type":31,"tagName":328,"properties":1019,"children":1020},{"style":403},[1021],{"type":27,"value":1022}," false",{"type":31,"tagName":328,"properties":1024,"children":1025},{"style":375},[1026],{"type":27,"value":918},{"type":31,"tagName":328,"properties":1028,"children":1029},{"style":334},[1030],{"type":27,"value":1031},"// the market served a book on some bar",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1034,"children":1035},{"class":330},[],{"type":27,"value":28},{"type":31,"tagName":328,"properties":1038,"children":1039},{"class":330},[1040,1045,1050,1055,1060,1065],{"type":31,"tagName":328,"properties":1041,"children":1042},{"style":895},[1043],{"type":27,"value":1044},"function",{"type":31,"tagName":328,"properties":1046,"children":1047},{"style":381},[1048],{"type":27,"value":1049}," onStart",{"type":31,"tagName":328,"properties":1051,"children":1052},{"style":375},[1053],{"type":27,"value":1054},"()",{"type":31,"tagName":328,"properties":1056,"children":1057},{"style":895},[1058],{"type":27,"value":1059},":",{"type":31,"tagName":328,"properties":1061,"children":1062},{"style":403},[1063],{"type":27,"value":1064}," void",{"type":31,"tagName":328,"properties":1066,"children":1067},{"style":375},[1068],{"type":27,"value":1069}," {",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1072,"children":1073},{"class":330},[1074,1079,1083,1088,1093,1098,1103],{"type":31,"tagName":328,"properties":1075,"children":1076},{"style":375},[1077],{"type":27,"value":1078},"  depth ",{"type":31,"tagName":328,"properties":1080,"children":1081},{"style":895},[1082],{"type":27,"value":986},{"type":31,"tagName":328,"properties":1084,"children":1085},{"style":381},[1086],{"type":27,"value":1087}," p_depth_pct",{"type":31,"tagName":328,"properties":1089,"children":1090},{"style":375},[1091],{"type":27,"value":1092},"() ",{"type":31,"tagName":328,"properties":1094,"children":1095},{"style":895},[1096],{"type":27,"value":1097},"/",{"type":31,"tagName":328,"properties":1099,"children":1100},{"style":403},[1101],{"type":27,"value":1102}," 100.0",{"type":31,"tagName":328,"properties":1104,"children":1105},{"style":375},[1106],{"type":27,"value":1107},";",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1110,"children":1111},{"class":330},[1112],{"type":31,"tagName":328,"properties":1113,"children":1114},{"style":375},[1115],{"type":27,"value":1116},"}",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1119,"children":1120},{"class":330},[],{"type":27,"value":28},{"type":31,"tagName":328,"properties":1123,"children":1124},{"class":330},[1125],{"type":31,"tagName":328,"properties":1126,"children":1127},{"style":334},[1128],{"type":27,"value":1129},"// onBar() runs once per bar: the host paints the block itself; the module reads the same block for the imbalance.",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1132,"children":1133},{"class":330},[1134,1138,1143,1147,1151,1155],{"type":31,"tagName":328,"properties":1135,"children":1136},{"style":895},[1137],{"type":27,"value":1044},{"type":31,"tagName":328,"properties":1139,"children":1140},{"style":381},[1141],{"type":27,"value":1142}," onBar",{"type":31,"tagName":328,"properties":1144,"children":1145},{"style":375},[1146],{"type":27,"value":1054},{"type":31,"tagName":328,"properties":1148,"children":1149},{"style":895},[1150],{"type":27,"value":1059},{"type":31,"tagName":328,"properties":1152,"children":1153},{"style":403},[1154],{"type":27,"value":1064},{"type":31,"tagName":328,"properties":1156,"children":1157},{"style":375},[1158],{"type":27,"value":1069},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1161,"children":1162},{"class":330},[1163,1168,1173,1177,1182],{"type":31,"tagName":328,"properties":1164,"children":1165},{"style":895},[1166],{"type":27,"value":1167},"  const",{"type":31,"tagName":328,"properties":1169,"children":1170},{"style":403},[1171],{"type":27,"value":1172}," n",{"type":31,"tagName":328,"properties":1174,"children":1175},{"style":895},[1176],{"type":27,"value":908},{"type":31,"tagName":328,"properties":1178,"children":1179},{"style":381},[1180],{"type":27,"value":1181}," in_book_cells",{"type":31,"tagName":328,"properties":1183,"children":1184},{"style":375},[1185],{"type":27,"value":1186},"();",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1189,"children":1190},{"class":330},[1191,1196,1201,1206,1211,1216,1220,1225],{"type":31,"tagName":328,"properties":1192,"children":1193},{"style":895},[1194],{"type":27,"value":1195},"  if",{"type":31,"tagName":328,"properties":1197,"children":1198},{"style":375},[1199],{"type":27,"value":1200}," (n ",{"type":31,"tagName":328,"properties":1202,"children":1203},{"style":895},[1204],{"type":27,"value":1205},">",{"type":31,"tagName":328,"properties":1207,"children":1208},{"style":403},[1209],{"type":27,"value":1210}," 0",{"type":31,"tagName":328,"properties":1212,"children":1213},{"style":375},[1214],{"type":27,"value":1215},") bookSeen ",{"type":31,"tagName":328,"properties":1217,"children":1218},{"style":895},[1219],{"type":27,"value":986},{"type":31,"tagName":328,"properties":1221,"children":1222},{"style":403},[1223],{"type":27,"value":1224}," true",{"type":31,"tagName":328,"properties":1226,"children":1227},{"style":375},[1228],{"type":27,"value":1107},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1231,"children":1232},{"class":330},[1233,1237,1242,1247,1251,1256,1261,1266],{"type":31,"tagName":328,"properties":1234,"children":1235},{"style":895},[1236],{"type":27,"value":1195},{"type":31,"tagName":328,"properties":1238,"children":1239},{"style":375},[1240],{"type":27,"value":1241}," (bar.",{"type":31,"tagName":328,"properties":1243,"children":1244},{"style":381},[1245],{"type":27,"value":1246},"isLast",{"type":31,"tagName":328,"properties":1248,"children":1249},{"style":375},[1250],{"type":27,"value":1092},{"type":31,"tagName":328,"properties":1252,"children":1253},{"style":895},[1254],{"type":27,"value":1255},"&&",{"type":31,"tagName":328,"properties":1257,"children":1258},{"style":895},[1259],{"type":27,"value":1260}," !",{"type":31,"tagName":328,"properties":1262,"children":1263},{"style":375},[1264],{"type":27,"value":1265},"bookSeen) { ",{"type":31,"tagName":328,"properties":1267,"children":1268},{"style":334},[1269],{"type":27,"value":1270},"// no book on any bar (FX, stocks): one sentence in place of an empty map and pane",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1273,"children":1274},{"class":330},[1275,1280],{"type":31,"tagName":328,"properties":1276,"children":1277},{"style":381},[1278],{"type":27,"value":1279},"    sb_clear",{"type":31,"tagName":328,"properties":1281,"children":1282},{"style":375},[1283],{"type":27,"value":1186},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1286,"children":1287},{"class":330},[1288,1293,1297,1302],{"type":31,"tagName":328,"properties":1289,"children":1290},{"style":381},[1291],{"type":27,"value":1292},"    sb_text",{"type":31,"tagName":328,"properties":1294,"children":1295},{"style":375},[1296],{"type":27,"value":389},{"type":31,"tagName":328,"properties":1298,"children":1299},{"style":392},[1300],{"type":27,"value":1301},"\"No order book on this market\"",{"type":31,"tagName":328,"properties":1303,"children":1304},{"style":375},[1305],{"type":27,"value":1306},");",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1309,"children":1310},{"class":330},[1311,1316,1321,1325,1330,1334,1339,1344,1348],{"type":31,"tagName":328,"properties":1312,"children":1313},{"style":375},[1314],{"type":27,"value":1315},"    note.",{"type":31,"tagName":328,"properties":1317,"children":1318},{"style":381},[1319],{"type":27,"value":1320},"set",{"type":31,"tagName":328,"properties":1322,"children":1323},{"style":375},[1324],{"type":27,"value":389},{"type":31,"tagName":328,"properties":1326,"children":1327},{"style":403},[1328],{"type":27,"value":1329},"16.0",{"type":31,"tagName":328,"properties":1331,"children":1332},{"style":375},[1333],{"type":27,"value":400},{"type":31,"tagName":328,"properties":1335,"children":1336},{"style":403},[1337],{"type":27,"value":1338},"12.0",{"type":31,"tagName":328,"properties":1340,"children":1341},{"style":375},[1342],{"type":27,"value":1343},").",{"type":31,"tagName":328,"properties":1345,"children":1346},{"style":381},[1347],{"type":27,"value":27},{"type":31,"tagName":328,"properties":1349,"children":1350},{"style":375},[1351],{"type":27,"value":1352},"(str_note_sb);",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1355,"children":1356},{"class":330},[1357],{"type":31,"tagName":328,"properties":1358,"children":1359},{"style":375},[1360],{"type":27,"value":1361},"  }",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1364,"children":1365},{"class":330},[1366,1370,1374,1379,1383,1388,1393,1398],{"type":31,"tagName":328,"properties":1367,"children":1368},{"style":895},[1369],{"type":27,"value":1195},{"type":31,"tagName":328,"properties":1371,"children":1372},{"style":375},[1373],{"type":27,"value":1200},{"type":31,"tagName":328,"properties":1375,"children":1376},{"style":895},[1377],{"type":27,"value":1378},"\u003C",{"type":31,"tagName":328,"properties":1380,"children":1381},{"style":403},[1382],{"type":27,"value":903},{"type":31,"tagName":328,"properties":1384,"children":1385},{"style":895},[1386],{"type":27,"value":1387}," *",{"type":31,"tagName":328,"properties":1389,"children":1390},{"style":403},[1391],{"type":27,"value":1392}," 2",{"type":31,"tagName":328,"properties":1394,"children":1395},{"style":375},[1396],{"type":27,"value":1397},") { ",{"type":31,"tagName":328,"properties":1399,"children":1400},{"style":334},[1401],{"type":27,"value":1402},"// an empty block (no book served for this bar) or one level alone: no reading",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1405,"children":1406},{"class":330},[1407,1412,1416,1421],{"type":31,"tagName":328,"properties":1408,"children":1409},{"style":381},[1410],{"type":27,"value":1411},"    out_imbalance",{"type":31,"tagName":328,"properties":1413,"children":1414},{"style":375},[1415],{"type":27,"value":389},{"type":31,"tagName":328,"properties":1417,"children":1418},{"style":403},[1419],{"type":27,"value":1420},"NaN",{"type":31,"tagName":328,"properties":1422,"children":1423},{"style":375},[1424],{"type":27,"value":1306},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1427,"children":1428},{"class":330},[1429,1434],{"type":31,"tagName":328,"properties":1430,"children":1431},{"style":895},[1432],{"type":27,"value":1433},"    return",{"type":31,"tagName":328,"properties":1435,"children":1436},{"style":375},[1437],{"type":27,"value":1107},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1440,"children":1441},{"class":330},[1442],{"type":31,"tagName":328,"properties":1443,"children":1444},{"style":375},[1445],{"type":27,"value":1361},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1448,"children":1449},{"class":330},[1450,1454,1459,1463,1468,1473],{"type":31,"tagName":328,"properties":1451,"children":1452},{"style":895},[1453],{"type":27,"value":1167},{"type":31,"tagName":328,"properties":1455,"children":1456},{"style":403},[1457],{"type":27,"value":1458}," cells",{"type":31,"tagName":328,"properties":1460,"children":1461},{"style":895},[1462],{"type":27,"value":908},{"type":31,"tagName":328,"properties":1464,"children":1465},{"style":381},[1466],{"type":27,"value":1467}," in_book_view",{"type":31,"tagName":328,"properties":1469,"children":1470},{"style":375},[1471],{"type":27,"value":1472},"(); ",{"type":31,"tagName":328,"properties":1474,"children":1475},{"style":334},[1476],{"type":27,"value":1477},"// this bar's levels in place: the first n values of the build's own buffer",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1480,"children":1481},{"class":330},[1482,1487,1492,1496,1501,1506],{"type":31,"tagName":328,"properties":1483,"children":1484},{"style":895},[1485],{"type":27,"value":1486},"  let",{"type":31,"tagName":328,"properties":1488,"children":1489},{"style":375},[1490],{"type":27,"value":1491}," bestBid ",{"type":31,"tagName":328,"properties":1493,"children":1494},{"style":895},[1495],{"type":27,"value":986},{"type":31,"tagName":328,"properties":1497,"children":1498},{"style":895},[1499],{"type":27,"value":1500}," -",{"type":31,"tagName":328,"properties":1502,"children":1503},{"style":403},[1504],{"type":27,"value":1505},"Infinity",{"type":31,"tagName":328,"properties":1507,"children":1508},{"style":375},[1509],{"type":27,"value":1107},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1512,"children":1513},{"class":330},[1514,1518,1523,1527,1532],{"type":31,"tagName":328,"properties":1515,"children":1516},{"style":895},[1517],{"type":27,"value":1486},{"type":31,"tagName":328,"properties":1519,"children":1520},{"style":375},[1521],{"type":27,"value":1522}," bestAsk ",{"type":31,"tagName":328,"properties":1524,"children":1525},{"style":895},[1526],{"type":27,"value":986},{"type":31,"tagName":328,"properties":1528,"children":1529},{"style":403},[1530],{"type":27,"value":1531}," Infinity",{"type":31,"tagName":328,"properties":1533,"children":1534},{"style":375},[1535],{"type":27,"value":1107},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1538,"children":1539},{"class":330},[1540,1545,1550,1554,1559,1563,1567,1572,1577,1581,1585,1590,1595,1600,1605,1609],{"type":31,"tagName":328,"properties":1541,"children":1542},{"style":895},[1543],{"type":27,"value":1544},"  for",{"type":31,"tagName":328,"properties":1546,"children":1547},{"style":375},[1548],{"type":27,"value":1549}," (",{"type":31,"tagName":328,"properties":1551,"children":1552},{"style":895},[1553],{"type":27,"value":976},{"type":31,"tagName":328,"properties":1555,"children":1556},{"style":375},[1557],{"type":27,"value":1558}," i ",{"type":31,"tagName":328,"properties":1560,"children":1561},{"style":895},[1562],{"type":27,"value":986},{"type":31,"tagName":328,"properties":1564,"children":1565},{"style":403},[1566],{"type":27,"value":1210},{"type":31,"tagName":328,"properties":1568,"children":1569},{"style":375},[1570],{"type":27,"value":1571},"; i ",{"type":31,"tagName":328,"properties":1573,"children":1574},{"style":895},[1575],{"type":27,"value":1576},"+",{"type":31,"tagName":328,"properties":1578,"children":1579},{"style":403},[1580],{"type":27,"value":903},{"type":31,"tagName":328,"properties":1582,"children":1583},{"style":895},[1584],{"type":27,"value":1500},{"type":31,"tagName":328,"properties":1586,"children":1587},{"style":403},[1588],{"type":27,"value":1589}," 1",{"type":31,"tagName":328,"properties":1591,"children":1592},{"style":895},[1593],{"type":27,"value":1594}," \u003C",{"type":31,"tagName":328,"properties":1596,"children":1597},{"style":375},[1598],{"type":27,"value":1599}," n; i ",{"type":31,"tagName":328,"properties":1601,"children":1602},{"style":895},[1603],{"type":27,"value":1604},"+=",{"type":31,"tagName":328,"properties":1606,"children":1607},{"style":403},[1608],{"type":27,"value":903},{"type":31,"tagName":328,"properties":1610,"children":1611},{"style":375},[1612],{"type":27,"value":1613},") {",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1616,"children":1617},{"class":330},[1618,1623,1628,1632,1636,1641,1645,1650],{"type":31,"tagName":328,"properties":1619,"children":1620},{"style":895},[1621],{"type":27,"value":1622},"    if",{"type":31,"tagName":328,"properties":1624,"children":1625},{"style":375},[1626],{"type":27,"value":1627}," (cells[i ",{"type":31,"tagName":328,"properties":1629,"children":1630},{"style":895},[1631],{"type":27,"value":1576},{"type":31,"tagName":328,"properties":1633,"children":1634},{"style":403},[1635],{"type":27,"value":1392},{"type":31,"tagName":328,"properties":1637,"children":1638},{"style":375},[1639],{"type":27,"value":1640},"] ",{"type":31,"tagName":328,"properties":1642,"children":1643},{"style":895},[1644],{"type":27,"value":1205},{"type":31,"tagName":328,"properties":1646,"children":1647},{"style":403},[1648],{"type":27,"value":1649}," 0.0",{"type":31,"tagName":328,"properties":1651,"children":1652},{"style":375},[1653],{"type":27,"value":1613},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1656,"children":1657},{"class":330},[1658,1663,1668,1672,1677,1681],{"type":31,"tagName":328,"properties":1659,"children":1660},{"style":895},[1661],{"type":27,"value":1662},"      if",{"type":31,"tagName":328,"properties":1664,"children":1665},{"style":375},[1666],{"type":27,"value":1667}," (cells[i] ",{"type":31,"tagName":328,"properties":1669,"children":1670},{"style":895},[1671],{"type":27,"value":1205},{"type":31,"tagName":328,"properties":1673,"children":1674},{"style":375},[1675],{"type":27,"value":1676}," bestBid) bestBid ",{"type":31,"tagName":328,"properties":1678,"children":1679},{"style":895},[1680],{"type":27,"value":986},{"type":31,"tagName":328,"properties":1682,"children":1683},{"style":375},[1684],{"type":27,"value":1685}," cells[i];",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1688,"children":1689},{"class":330},[1690,1695,1700,1705,1709,1713,1718,1722],{"type":31,"tagName":328,"properties":1691,"children":1692},{"style":375},[1693],{"type":27,"value":1694},"    } ",{"type":31,"tagName":328,"properties":1696,"children":1697},{"style":895},[1698],{"type":27,"value":1699},"else",{"type":31,"tagName":328,"properties":1701,"children":1702},{"style":895},[1703],{"type":27,"value":1704}," if",{"type":31,"tagName":328,"properties":1706,"children":1707},{"style":375},[1708],{"type":27,"value":1667},{"type":31,"tagName":328,"properties":1710,"children":1711},{"style":895},[1712],{"type":27,"value":1378},{"type":31,"tagName":328,"properties":1714,"children":1715},{"style":375},[1716],{"type":27,"value":1717}," bestAsk) bestAsk ",{"type":31,"tagName":328,"properties":1719,"children":1720},{"style":895},[1721],{"type":27,"value":986},{"type":31,"tagName":328,"properties":1723,"children":1724},{"style":375},[1725],{"type":27,"value":1685},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1728,"children":1729},{"class":330},[1730],{"type":31,"tagName":328,"properties":1731,"children":1732},{"style":375},[1733],{"type":27,"value":1361},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1736,"children":1737},{"class":330},[1738,1742,1746,1751,1756,1761,1766,1770,1774,1779],{"type":31,"tagName":328,"properties":1739,"children":1740},{"style":895},[1741],{"type":27,"value":1195},{"type":31,"tagName":328,"properties":1743,"children":1744},{"style":375},[1745],{"type":27,"value":1549},{"type":31,"tagName":328,"properties":1747,"children":1748},{"style":895},[1749],{"type":27,"value":1750},"!",{"type":31,"tagName":328,"properties":1752,"children":1753},{"style":381},[1754],{"type":27,"value":1755},"isFinite",{"type":31,"tagName":328,"properties":1757,"children":1758},{"style":375},[1759],{"type":27,"value":1760},"(bestBid) ",{"type":31,"tagName":328,"properties":1762,"children":1763},{"style":895},[1764],{"type":27,"value":1765},"||",{"type":31,"tagName":328,"properties":1767,"children":1768},{"style":895},[1769],{"type":27,"value":1260},{"type":31,"tagName":328,"properties":1771,"children":1772},{"style":381},[1773],{"type":27,"value":1755},{"type":31,"tagName":328,"properties":1775,"children":1776},{"style":375},[1777],{"type":27,"value":1778},"(bestAsk)) { ",{"type":31,"tagName":328,"properties":1780,"children":1781},{"style":334},[1782],{"type":27,"value":1783},"// one side only: no mid to measure around",{"type":27,"value":28},{"type":31,"tagName":328,"properties":1786,"children":1787},{"class":330},[1788,1792,1796,1800],{"type":31,"tagName":328,"properties":1789,"children":1790},{"style":381},[1791],{"type":27,"value":1411},{"type":31,"tagName":328,"properties":1793,"children":1794},{"style":375},[1795],{"type":27,"value":389},{"type":31,"tagName":328,"properties":1797,"children":1798},{"style":403},[1799],{"type":27,"value":1420},{"type":31,"tagName":328,"properties":1801,"children":1802},{"style":375},[1803],{"type":27,"value":1306},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1806,"children":1807},{"class":330},[1808,1812],{"type":31,"tagName":328,"properties":1809,"children":1810},{"style":895},[1811],{"type":27,"value":1433},{"type":31,"tagName":328,"properties":1813,"children":1814},{"style":375},[1815],{"type":27,"value":1107},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1818,"children":1819},{"class":330},[1820],{"type":31,"tagName":328,"properties":1821,"children":1822},{"style":375},[1823],{"type":27,"value":1361},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1826,"children":1827},{"class":330},[1828,1832,1837,1841,1846,1850,1855,1860,1865],{"type":31,"tagName":328,"properties":1829,"children":1830},{"style":895},[1831],{"type":27,"value":1167},{"type":31,"tagName":328,"properties":1833,"children":1834},{"style":403},[1835],{"type":27,"value":1836}," mid",{"type":31,"tagName":328,"properties":1838,"children":1839},{"style":895},[1840],{"type":27,"value":908},{"type":31,"tagName":328,"properties":1842,"children":1843},{"style":375},[1844],{"type":27,"value":1845}," (bestBid ",{"type":31,"tagName":328,"properties":1847,"children":1848},{"style":895},[1849],{"type":27,"value":1576},{"type":31,"tagName":328,"properties":1851,"children":1852},{"style":375},[1853],{"type":27,"value":1854}," bestAsk) ",{"type":31,"tagName":328,"properties":1856,"children":1857},{"style":895},[1858],{"type":27,"value":1859},"*",{"type":31,"tagName":328,"properties":1861,"children":1862},{"style":403},[1863],{"type":27,"value":1864}," 0.5",{"type":31,"tagName":328,"properties":1866,"children":1867},{"style":375},[1868],{"type":27,"value":1107},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1871,"children":1872},{"class":330},[1873,1877,1882,1886,1890],{"type":31,"tagName":328,"properties":1874,"children":1875},{"style":895},[1876],{"type":27,"value":1486},{"type":31,"tagName":328,"properties":1878,"children":1879},{"style":375},[1880],{"type":27,"value":1881}," bids ",{"type":31,"tagName":328,"properties":1883,"children":1884},{"style":895},[1885],{"type":27,"value":986},{"type":31,"tagName":328,"properties":1887,"children":1888},{"style":403},[1889],{"type":27,"value":1649},{"type":31,"tagName":328,"properties":1891,"children":1892},{"style":375},[1893],{"type":27,"value":1107},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1896,"children":1897},{"class":330},[1898,1902,1907,1911,1915],{"type":31,"tagName":328,"properties":1899,"children":1900},{"style":895},[1901],{"type":27,"value":1486},{"type":31,"tagName":328,"properties":1903,"children":1904},{"style":375},[1905],{"type":27,"value":1906}," asks ",{"type":31,"tagName":328,"properties":1908,"children":1909},{"style":895},[1910],{"type":27,"value":986},{"type":31,"tagName":328,"properties":1912,"children":1913},{"style":403},[1914],{"type":27,"value":1649},{"type":31,"tagName":328,"properties":1916,"children":1917},{"style":375},[1918],{"type":27,"value":1107},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1921,"children":1922},{"class":330},[1923,1927,1931,1935,1939,1943,1947,1951,1955,1959,1963,1967,1971,1975,1979,1983],{"type":31,"tagName":328,"properties":1924,"children":1925},{"style":895},[1926],{"type":27,"value":1544},{"type":31,"tagName":328,"properties":1928,"children":1929},{"style":375},[1930],{"type":27,"value":1549},{"type":31,"tagName":328,"properties":1932,"children":1933},{"style":895},[1934],{"type":27,"value":976},{"type":31,"tagName":328,"properties":1936,"children":1937},{"style":375},[1938],{"type":27,"value":1558},{"type":31,"tagName":328,"properties":1940,"children":1941},{"style":895},[1942],{"type":27,"value":986},{"type":31,"tagName":328,"properties":1944,"children":1945},{"style":403},[1946],{"type":27,"value":1210},{"type":31,"tagName":328,"properties":1948,"children":1949},{"style":375},[1950],{"type":27,"value":1571},{"type":31,"tagName":328,"properties":1952,"children":1953},{"style":895},[1954],{"type":27,"value":1576},{"type":31,"tagName":328,"properties":1956,"children":1957},{"style":403},[1958],{"type":27,"value":903},{"type":31,"tagName":328,"properties":1960,"children":1961},{"style":895},[1962],{"type":27,"value":1500},{"type":31,"tagName":328,"properties":1964,"children":1965},{"style":403},[1966],{"type":27,"value":1589},{"type":31,"tagName":328,"properties":1968,"children":1969},{"style":895},[1970],{"type":27,"value":1594},{"type":31,"tagName":328,"properties":1972,"children":1973},{"style":375},[1974],{"type":27,"value":1599},{"type":31,"tagName":328,"properties":1976,"children":1977},{"style":895},[1978],{"type":27,"value":1604},{"type":31,"tagName":328,"properties":1980,"children":1981},{"style":403},[1982],{"type":27,"value":903},{"type":31,"tagName":328,"properties":1984,"children":1985},{"style":375},[1986],{"type":27,"value":1613},{"type":27,"value":28},{"type":31,"tagName":328,"properties":1989,"children":1990},{"class":330},[1991,1995,2000,2005,2010,2015,2020,2024,2029,2033,2038,2043,2047],{"type":31,"tagName":328,"properties":1992,"children":1993},{"style":895},[1994],{"type":27,"value":1622},{"type":31,"tagName":328,"properties":1996,"children":1997},{"style":375},[1998],{"type":27,"value":1999}," (Math.",{"type":31,"tagName":328,"properties":2001,"children":2002},{"style":381},[2003],{"type":27,"value":2004},"abs",{"type":31,"tagName":328,"properties":2006,"children":2007},{"style":375},[2008],{"type":27,"value":2009},"(cells[i] ",{"type":31,"tagName":328,"properties":2011,"children":2012},{"style":895},[2013],{"type":27,"value":2014},"-",{"type":31,"tagName":328,"properties":2016,"children":2017},{"style":375},[2018],{"type":27,"value":2019}," mid) ",{"type":31,"tagName":328,"properties":2021,"children":2022},{"style":895},[2023],{"type":27,"value":1205},{"type":31,"tagName":328,"properties":2025,"children":2026},{"style":375},[2027],{"type":27,"value":2028}," mid ",{"type":31,"tagName":328,"properties":2030,"children":2031},{"style":895},[2032],{"type":27,"value":1859},{"type":31,"tagName":328,"properties":2034,"children":2035},{"style":375},[2036],{"type":27,"value":2037}," depth) ",{"type":31,"tagName":328,"properties":2039,"children":2040},{"style":895},[2041],{"type":27,"value":2042},"continue",{"type":31,"tagName":328,"properties":2044,"children":2045},{"style":375},[2046],{"type":27,"value":918},{"type":31,"tagName":328,"properties":2048,"children":2049},{"style":334},[2050],{"type":27,"value":2051},"// outside the window",{"type":27,"value":28},{"type":31,"tagName":328,"properties":2054,"children":2055},{"class":330},[2056,2060,2064,2068,2072,2076,2080,2084,2089,2093,2098,2102,2106],{"type":31,"tagName":328,"properties":2057,"children":2058},{"style":895},[2059],{"type":27,"value":1622},{"type":31,"tagName":328,"properties":2061,"children":2062},{"style":375},[2063],{"type":27,"value":1627},{"type":31,"tagName":328,"properties":2065,"children":2066},{"style":895},[2067],{"type":27,"value":1576},{"type":31,"tagName":328,"properties":2069,"children":2070},{"style":403},[2071],{"type":27,"value":1392},{"type":31,"tagName":328,"properties":2073,"children":2074},{"style":375},[2075],{"type":27,"value":1640},{"type":31,"tagName":328,"properties":2077,"children":2078},{"style":895},[2079],{"type":27,"value":1205},{"type":31,"tagName":328,"properties":2081,"children":2082},{"style":403},[2083],{"type":27,"value":1649},{"type":31,"tagName":328,"properties":2085,"children":2086},{"style":375},[2087],{"type":27,"value":2088},") bids ",{"type":31,"tagName":328,"properties":2090,"children":2091},{"style":895},[2092],{"type":27,"value":1604},{"type":31,"tagName":328,"properties":2094,"children":2095},{"style":375},[2096],{"type":27,"value":2097}," cells[i ",{"type":31,"tagName":328,"properties":2099,"children":2100},{"style":895},[2101],{"type":27,"value":1576},{"type":31,"tagName":328,"properties":2103,"children":2104},{"style":403},[2105],{"type":27,"value":1589},{"type":31,"tagName":328,"properties":2107,"children":2108},{"style":375},[2109],{"type":27,"value":2110},"];",{"type":27,"value":28},{"type":31,"tagName":328,"properties":2113,"children":2114},{"class":330},[2115,2120,2124,2128,2132,2136,2140],{"type":31,"tagName":328,"properties":2116,"children":2117},{"style":895},[2118],{"type":27,"value":2119},"    else",{"type":31,"tagName":328,"properties":2121,"children":2122},{"style":375},[2123],{"type":27,"value":1906},{"type":31,"tagName":328,"properties":2125,"children":2126},{"style":895},[2127],{"type":27,"value":1604},{"type":31,"tagName":328,"properties":2129,"children":2130},{"style":375},[2131],{"type":27,"value":2097},{"type":31,"tagName":328,"properties":2133,"children":2134},{"style":895},[2135],{"type":27,"value":1576},{"type":31,"tagName":328,"properties":2137,"children":2138},{"style":403},[2139],{"type":27,"value":1589},{"type":31,"tagName":328,"properties":2141,"children":2142},{"style":375},[2143],{"type":27,"value":2110},{"type":27,"value":28},{"type":31,"tagName":328,"properties":2146,"children":2147},{"class":330},[2148],{"type":31,"tagName":328,"properties":2149,"children":2150},{"style":375},[2151],{"type":27,"value":1361},{"type":27,"value":28},{"type":31,"tagName":328,"properties":2154,"children":2155},{"class":330},[2156,2160,2165,2169,2173,2177],{"type":31,"tagName":328,"properties":2157,"children":2158},{"style":895},[2159],{"type":27,"value":1167},{"type":31,"tagName":328,"properties":2161,"children":2162},{"style":403},[2163],{"type":27,"value":2164}," total",{"type":31,"tagName":328,"properties":2166,"children":2167},{"style":895},[2168],{"type":27,"value":908},{"type":31,"tagName":328,"properties":2170,"children":2171},{"style":375},[2172],{"type":27,"value":1881},{"type":31,"tagName":328,"properties":2174,"children":2175},{"style":895},[2176],{"type":27,"value":1576},{"type":31,"tagName":328,"properties":2178,"children":2179},{"style":375},[2180],{"type":27,"value":2181}," asks;",{"type":27,"value":28},{"type":31,"tagName":328,"properties":2184,"children":2185},{"class":330},[2186,2191,2196,2200,2204,2209,2213,2218,2222,2227,2231,2236,2240,2245,2249,2254],{"type":31,"tagName":328,"properties":2187,"children":2188},{"style":381},[2189],{"type":27,"value":2190},"  out_imbalance",{"type":31,"tagName":328,"properties":2192,"children":2193},{"style":375},[2194],{"type":27,"value":2195},"(total ",{"type":31,"tagName":328,"properties":2197,"children":2198},{"style":895},[2199],{"type":27,"value":1205},{"type":31,"tagName":328,"properties":2201,"children":2202},{"style":403},[2203],{"type":27,"value":1649},{"type":31,"tagName":328,"properties":2205,"children":2206},{"style":895},[2207],{"type":27,"value":2208}," ?",{"type":31,"tagName":328,"properties":2210,"children":2211},{"style":375},[2212],{"type":27,"value":1549},{"type":31,"tagName":328,"properties":2214,"children":2215},{"style":403},[2216],{"type":27,"value":2217},"100.0",{"type":31,"tagName":328,"properties":2219,"children":2220},{"style":895},[2221],{"type":27,"value":1387},{"type":31,"tagName":328,"properties":2223,"children":2224},{"style":375},[2225],{"type":27,"value":2226}," (bids ",{"type":31,"tagName":328,"properties":2228,"children":2229},{"style":895},[2230],{"type":27,"value":2014},{"type":31,"tagName":328,"properties":2232,"children":2233},{"style":375},[2234],{"type":27,"value":2235}," asks)) ",{"type":31,"tagName":328,"properties":2237,"children":2238},{"style":895},[2239],{"type":27,"value":1097},{"type":31,"tagName":328,"properties":2241,"children":2242},{"style":375},[2243],{"type":27,"value":2244}," total ",{"type":31,"tagName":328,"properties":2246,"children":2247},{"style":895},[2248],{"type":27,"value":1059},{"type":31,"tagName":328,"properties":2250,"children":2251},{"style":403},[2252],{"type":27,"value":2253}," NaN",{"type":31,"tagName":328,"properties":2255,"children":2256},{"style":375},[2257],{"type":27,"value":1306},{"type":27,"value":28},{"type":31,"tagName":328,"properties":2260,"children":2261},{"class":330},[2262],{"type":31,"tagName":328,"properties":2263,"children":2264},{"style":375},[2265],{"type":27,"value":1116},{"type":27,"value":28},{"type":31,"tagName":295,"properties":2268,"children":2269,"position":2279},{},[2270],{"type":27,"value":2271,"position":2272},"How it works",{"start":2273,"end":2276},{"line":2274,"column":303,"offset":2275},74,5165,{"line":2274,"column":2277,"offset":2278},16,5177,{"start":2280,"end":2282},{"line":2274,"column":21,"offset":2281},5162,{"line":2274,"column":2277,"offset":2278},{"type":27,"value":28},{"type":31,"tagName":32,"properties":2285,"children":2286,"position":2432},{},[2287,2306,2313,2326,2333,2346,2353,2366,2373,2385,2392,2405,2412,2425],{"type":31,"tagName":243,"properties":2288,"children":2289,"position":2300},{},[2290],{"type":27,"value":2291,"position":2292},"The block is the canvas.",{"start":2293,"end":2297},{"line":2294,"column":2295,"offset":2296},76,3,5181,{"line":2294,"column":2298,"offset":2299},27,5205,{"start":2301,"end":2303},{"line":2294,"column":21,"offset":2302},5179,{"line":2294,"column":2304,"offset":2305},29,5207,{"type":27,"value":2307,"position":2308}," ",{"start":2309,"end":2310},{"line":2294,"column":2304,"offset":2305},{"line":2294,"column":2311,"offset":2312},30,5208,{"type":31,"tagName":81,"properties":2314,"children":2315,"position":2323},{},[2316],{"type":27,"value":2317,"position":2318},"input(\"book\", book.cells, { max_cells: 1000, block_size: 10 })",{"start":2319,"end":2320},{"line":2294,"column":2311,"offset":2312},{"line":2294,"column":2321,"offset":2322},94,5272,{"start":2324,"end":2325},{"line":2294,"column":2311,"offset":2312},{"line":2294,"column":2321,"offset":2322},{"type":27,"value":2327,"position":2328}," delivers the resting book at each bar's close as ",{"start":2329,"end":2330},{"line":2294,"column":2321,"offset":2322},{"line":2294,"column":2331,"offset":2332},144,5322,{"type":31,"tagName":81,"properties":2334,"children":2335,"position":2343},{},[2336],{"type":27,"value":2337,"position":2338},"[price, size, side]",{"start":2339,"end":2340},{"line":2294,"column":2331,"offset":2332},{"line":2294,"column":2341,"offset":2342},165,5343,{"start":2344,"end":2345},{"line":2294,"column":2331,"offset":2332},{"line":2294,"column":2341,"offset":2342},{"type":27,"value":2347,"position":2348}," tuples, side ",{"start":2349,"end":2350},{"line":2294,"column":2341,"offset":2342},{"line":2294,"column":2351,"offset":2352},179,5357,{"type":31,"tagName":81,"properties":2354,"children":2355,"position":2363},{},[2356],{"type":27,"value":2357,"position":2358},"+1",{"start":2359,"end":2360},{"line":2294,"column":2351,"offset":2352},{"line":2294,"column":2361,"offset":2362},183,5361,{"start":2364,"end":2365},{"line":2294,"column":2351,"offset":2352},{"line":2294,"column":2361,"offset":2362},{"type":27,"value":2367,"position":2368}," for a bid level and ",{"start":2369,"end":2370},{"line":2294,"column":2361,"offset":2362},{"line":2294,"column":2371,"offset":2372},204,5382,{"type":31,"tagName":81,"properties":2374,"children":2375,"position":2382},{},[2376],{"type":27,"value":2377,"position":2378},"-1",{"start":2379,"end":2380},{"line":2294,"column":2371,"offset":2372},{"line":2294,"column":158,"offset":2381},5386,{"start":2383,"end":2384},{"line":2294,"column":2371,"offset":2372},{"line":2294,"column":158,"offset":2381},{"type":27,"value":2386,"position":2387}," for an ask level, up to 500 levels a side. ",{"start":2388,"end":2389},{"line":2294,"column":158,"offset":2381},{"line":2294,"column":2390,"offset":2391},252,5430,{"type":31,"tagName":81,"properties":2393,"children":2394,"position":2402},{},[2395],{"type":27,"value":2396,"position":2397},"plot.heatmap({ name: \"book_heat\", cells: \"book\", value: \"size\" })",{"start":2398,"end":2399},{"line":2294,"column":2390,"offset":2391},{"line":2294,"column":2400,"offset":2401},319,5497,{"start":2403,"end":2404},{"line":2294,"column":2390,"offset":2391},{"line":2294,"column":2400,"offset":2401},{"type":27,"value":2406,"position":2407}," tells the host to paint that block: one cell per level, one column per bar, the cell's height the book's own price grouping (",{"start":2408,"end":2409},{"line":2294,"column":2400,"offset":2401},{"line":2294,"column":2410,"offset":2411},445,5623,{"type":31,"tagName":81,"properties":2413,"children":2414,"position":2422},{},[2415],{"type":27,"value":2416,"position":2417},"row_height",{"start":2418,"end":2419},{"line":2294,"column":2410,"offset":2411},{"line":2294,"column":2420,"offset":2421},457,5635,{"start":2423,"end":2424},{"line":2294,"column":2410,"offset":2411},{"line":2294,"column":2420,"offset":2421},{"type":27,"value":2426,"position":2427}," overrides it), its colour the level's size on the palette. The module never copies or forwards the block; the host reads the same rows the input already delivered.",{"start":2428,"end":2429},{"line":2294,"column":2420,"offset":2421},{"line":2294,"column":2430,"offset":2431},621,5799,{"start":2433,"end":2434},{"line":2294,"column":21,"offset":2302},{"line":2294,"column":2430,"offset":2431},{"type":27,"value":28},{"type":31,"tagName":32,"properties":2437,"children":2438,"position":2699},{},[2439,2457,2462,2475,2482,2495,2502,2515,2522,2535,2542,2555,2562,2574,2581,2594,2600,2613,2620,2633,2640,2653,2659,2672,2679,2692],{"type":31,"tagName":243,"properties":2440,"children":2441,"position":2451},{},[2442],{"type":27,"value":2443,"position":2444},"The scale.",{"start":2445,"end":2448},{"line":2446,"column":2295,"offset":2447},78,5803,{"line":2446,"column":2449,"offset":2450},13,5813,{"start":2452,"end":2454},{"line":2446,"column":21,"offset":2453},5801,{"line":2446,"column":2455,"offset":2456},15,5815,{"type":27,"value":2307,"position":2458},{"start":2459,"end":2460},{"line":2446,"column":2455,"offset":2456},{"line":2446,"column":2277,"offset":2461},5816,{"type":31,"tagName":81,"properties":2463,"children":2464,"position":2472},{},[2465],{"type":27,"value":2466,"position":2467},"palette",{"start":2468,"end":2469},{"line":2446,"column":2277,"offset":2461},{"line":2446,"column":2470,"offset":2471},25,5825,{"start":2473,"end":2474},{"line":2446,"column":2277,"offset":2461},{"line":2446,"column":2470,"offset":2471},{"type":27,"value":2476,"position":2477}," runs from the chart's background (",{"start":2478,"end":2479},{"line":2446,"column":2470,"offset":2471},{"line":2446,"column":2480,"offset":2481},60,5860,{"type":31,"tagName":81,"properties":2483,"children":2484,"position":2492},{},[2485],{"type":27,"value":2486,"position":2487},"theme.bg",{"start":2488,"end":2489},{"line":2446,"column":2480,"offset":2481},{"line":2446,"column":2490,"offset":2491},70,5870,{"start":2493,"end":2494},{"line":2446,"column":2480,"offset":2481},{"line":2446,"column":2490,"offset":2491},{"type":27,"value":2496,"position":2497},") through blue and cyan to yellow, low to high; ",{"start":2498,"end":2499},{"line":2446,"column":2490,"offset":2491},{"line":2446,"column":2500,"offset":2501},118,5918,{"type":31,"tagName":81,"properties":2503,"children":2504,"position":2512},{},[2505],{"type":27,"value":2506,"position":2507},"scale: \"sqrt\"",{"start":2508,"end":2509},{"line":2446,"column":2500,"offset":2501},{"line":2446,"column":2510,"offset":2511},133,5933,{"start":2513,"end":2514},{"line":2446,"column":2500,"offset":2501},{"line":2446,"column":2510,"offset":2511},{"type":27,"value":2516,"position":2517}," keeps the many small levels visible beside the walls; ",{"start":2518,"end":2519},{"line":2446,"column":2510,"offset":2511},{"line":2446,"column":2520,"offset":2521},188,5988,{"type":31,"tagName":81,"properties":2523,"children":2524,"position":2532},{},[2525],{"type":27,"value":2526,"position":2527},"auto_quantile: 0.98",{"start":2528,"end":2529},{"line":2446,"column":2520,"offset":2521},{"line":2446,"column":2530,"offset":2531},209,6009,{"start":2533,"end":2534},{"line":2446,"column":2520,"offset":2521},{"line":2446,"column":2530,"offset":2531},{"type":27,"value":2536,"position":2537}," sets the top of the scale at the 98th percentile of every cell in the run, so a single outsized order does not flatten the rest. ",{"start":2538,"end":2539},{"line":2446,"column":2530,"offset":2531},{"line":2446,"column":2540,"offset":2541},339,6139,{"type":31,"tagName":81,"properties":2543,"children":2544,"position":2552},{},[2545],{"type":27,"value":2546,"position":2547},"value",{"start":2548,"end":2549},{"line":2446,"column":2540,"offset":2541},{"line":2446,"column":2550,"offset":2551},346,6146,{"start":2553,"end":2554},{"line":2446,"column":2540,"offset":2541},{"line":2446,"column":2550,"offset":2551},{"type":27,"value":2556,"position":2557}," picks what a cell reads: ",{"start":2558,"end":2559},{"line":2446,"column":2550,"offset":2551},{"line":2446,"column":2560,"offset":2561},372,6172,{"type":31,"tagName":81,"properties":2563,"children":2564,"position":2571},{},[2565],{"type":27,"value":660,"position":2566},{"start":2567,"end":2568},{"line":2446,"column":2560,"offset":2561},{"line":2446,"column":2569,"offset":2570},380,6180,{"start":2572,"end":2573},{"line":2446,"column":2560,"offset":2561},{"line":2446,"column":2569,"offset":2570},{"type":27,"value":2575,"position":2576}," (both sides), ",{"start":2577,"end":2578},{"line":2446,"column":2569,"offset":2570},{"line":2446,"column":2579,"offset":2580},395,6195,{"type":31,"tagName":81,"properties":2582,"children":2583,"position":2591},{},[2584],{"type":27,"value":2585,"position":2586},"\"bid\"",{"start":2587,"end":2588},{"line":2446,"column":2579,"offset":2580},{"line":2446,"column":2589,"offset":2590},402,6202,{"start":2592,"end":2593},{"line":2446,"column":2579,"offset":2580},{"line":2446,"column":2589,"offset":2590},{"type":27,"value":400,"position":2595},{"start":2596,"end":2597},{"line":2446,"column":2589,"offset":2590},{"line":2446,"column":2598,"offset":2599},404,6204,{"type":31,"tagName":81,"properties":2601,"children":2602,"position":2610},{},[2603],{"type":27,"value":2604,"position":2605},"\"ask\"",{"start":2606,"end":2607},{"line":2446,"column":2598,"offset":2599},{"line":2446,"column":2608,"offset":2609},411,6211,{"start":2611,"end":2612},{"line":2446,"column":2598,"offset":2599},{"line":2446,"column":2608,"offset":2609},{"type":27,"value":2614,"position":2615},", or ",{"start":2616,"end":2617},{"line":2446,"column":2608,"offset":2609},{"line":2446,"column":2618,"offset":2619},416,6216,{"type":31,"tagName":81,"properties":2621,"children":2622,"position":2630},{},[2623],{"type":27,"value":2624,"position":2625},"\"signed\"",{"start":2626,"end":2627},{"line":2446,"column":2618,"offset":2619},{"line":2446,"column":2628,"offset":2629},426,6226,{"start":2631,"end":2632},{"line":2446,"column":2618,"offset":2619},{"line":2446,"column":2628,"offset":2629},{"type":27,"value":2634,"position":2635}," (bids positive, asks negative, which centres the palette on zero). ",{"start":2636,"end":2637},{"line":2446,"column":2628,"offset":2629},{"line":2446,"column":2638,"offset":2639},494,6294,{"type":31,"tagName":81,"properties":2641,"children":2642,"position":2650},{},[2643],{"type":27,"value":2644,"position":2645},"behind_candles: true",{"start":2646,"end":2647},{"line":2446,"column":2638,"offset":2639},{"line":2446,"column":2648,"offset":2649},516,6316,{"start":2651,"end":2652},{"line":2446,"column":2638,"offset":2639},{"line":2446,"column":2648,"offset":2649},{"type":27,"value":2654,"position":2655}," is the default; ",{"start":2656,"end":2657},{"line":2446,"column":2648,"offset":2649},{"line":2446,"column":264,"offset":2658},6333,{"type":31,"tagName":81,"properties":2660,"children":2661,"position":2669},{},[2662],{"type":27,"value":2663,"position":2664},"false",{"start":2665,"end":2666},{"line":2446,"column":264,"offset":2658},{"line":2446,"column":2667,"offset":2668},540,6340,{"start":2670,"end":2671},{"line":2446,"column":264,"offset":2658},{"line":2446,"column":2667,"offset":2668},{"type":27,"value":2673,"position":2674}," paints over the candles instead. ",{"start":2675,"end":2676},{"line":2446,"column":2667,"offset":2668},{"line":2446,"column":2677,"offset":2678},574,6374,{"type":31,"tagName":81,"properties":2680,"children":2681,"position":2689},{},[2682],{"type":27,"value":2683,"position":2684},"opacity: 0.85",{"start":2685,"end":2686},{"line":2446,"column":2677,"offset":2678},{"line":2446,"column":2687,"offset":2688},589,6389,{"start":2690,"end":2691},{"line":2446,"column":2677,"offset":2678},{"line":2446,"column":2687,"offset":2688},{"type":27,"value":2693,"position":2694}," leaves the grid visible through the cells.",{"start":2695,"end":2696},{"line":2446,"column":2687,"offset":2688},{"line":2446,"column":2697,"offset":2698},632,6432,{"start":2700,"end":2701},{"line":2446,"column":21,"offset":2453},{"line":2446,"column":2697,"offset":2698},{"type":27,"value":28},{"type":31,"tagName":32,"properties":2704,"children":2705,"position":2769},{},[2706,2722,2729,2742,2749,2762],{"type":31,"tagName":243,"properties":2707,"children":2708,"position":2717},{},[2709],{"type":27,"value":2710,"position":2711},"The reading beside it.",{"start":2712,"end":2715},{"line":2713,"column":2295,"offset":2714},80,6436,{"line":2713,"column":2470,"offset":2716},6458,{"start":2718,"end":2720},{"line":2713,"column":21,"offset":2719},6434,{"line":2713,"column":2298,"offset":2721},6460,{"type":27,"value":2723,"position":2724}," The histogram sums bid and ask size inside ",{"start":2725,"end":2726},{"line":2713,"column":2298,"offset":2721},{"line":2713,"column":2727,"offset":2728},71,6504,{"type":31,"tagName":81,"properties":2730,"children":2731,"position":2739},{},[2732],{"type":27,"value":2733,"position":2734},"depth_pct",{"start":2735,"end":2736},{"line":2713,"column":2727,"offset":2728},{"line":2713,"column":2737,"offset":2738},82,6515,{"start":2740,"end":2741},{"line":2713,"column":2727,"offset":2728},{"line":2713,"column":2737,"offset":2738},{"type":27,"value":2743,"position":2744}," (1%) of the mid, the mid being the best bid and the best ask averaged, and prints their difference as a percent of both: sky above zero, orange below (the two ",{"start":2745,"end":2746},{"line":2713,"column":2737,"offset":2738},{"line":2713,"column":2747,"offset":2748},242,6675,{"type":31,"tagName":81,"properties":2750,"children":2751,"position":2759},{},[2752],{"type":27,"value":2753,"position":2754},"colors",{"start":2755,"end":2756},{"line":2713,"column":2747,"offset":2748},{"line":2713,"column":2757,"offset":2758},250,6683,{"start":2760,"end":2761},{"line":2713,"column":2747,"offset":2748},{"line":2713,"column":2757,"offset":2758},{"type":27,"value":2763,"position":2764}," of a histogram are its sign colours). A bar whose block is empty reads NaN and draws nothing, in the pane and on the canvas alike.",{"start":2765,"end":2766},{"line":2713,"column":2757,"offset":2758},{"line":2713,"column":2767,"offset":2768},381,6814,{"start":2770,"end":2771},{"line":2713,"column":21,"offset":2719},{"line":2713,"column":2767,"offset":2768},{"type":27,"value":28},{"type":31,"tagName":32,"properties":2774,"children":2775,"position":2854},{},[2776,2791,2796,2809,2816,2827,2834,2847],{"type":31,"tagName":243,"properties":2777,"children":2778,"position":2786},{},[2779],{"type":27,"value":2780,"position":2781},"The hover.",{"start":2782,"end":2784},{"line":2737,"column":2295,"offset":2783},6818,{"line":2737,"column":2449,"offset":2785},6828,{"start":2787,"end":2789},{"line":2737,"column":21,"offset":2788},6816,{"line":2737,"column":2455,"offset":2790},6830,{"type":27,"value":2307,"position":2792},{"start":2793,"end":2794},{"line":2737,"column":2455,"offset":2790},{"line":2737,"column":2277,"offset":2795},6831,{"type":31,"tagName":81,"properties":2797,"children":2798,"position":2806},{},[2799],{"type":27,"value":2800,"position":2801},"tooltip: \"{{value:si}} resting at {{price}}\"",{"start":2802,"end":2803},{"line":2737,"column":2277,"offset":2795},{"line":2737,"column":2804,"offset":2805},62,6877,{"start":2807,"end":2808},{"line":2737,"column":2277,"offset":2795},{"line":2737,"column":2804,"offset":2805},{"type":27,"value":2810,"position":2811}," puts a readout under the cursor over any cell, ",{"start":2812,"end":2813},{"line":2737,"column":2804,"offset":2805},{"line":2737,"column":2814,"offset":2815},110,6925,{"type":31,"tagName":81,"properties":2817,"children":2818,"position":2824},{},[2819],{"type":27,"value":816,"position":2820},{"start":2821,"end":2822},{"line":2737,"column":2814,"offset":2815},{"line":2737,"column":135,"offset":2823},6932,{"start":2825,"end":2826},{"line":2737,"column":2814,"offset":2815},{"line":2737,"column":135,"offset":2823},{"type":27,"value":2828,"position":2829}," its title; drop ",{"start":2830,"end":2831},{"line":2737,"column":135,"offset":2823},{"line":2737,"column":2832,"offset":2833},134,6949,{"type":31,"tagName":81,"properties":2835,"children":2836,"position":2844},{},[2837],{"type":27,"value":2838,"position":2839},"tooltip",{"start":2840,"end":2841},{"line":2737,"column":2832,"offset":2833},{"line":2737,"column":2842,"offset":2843},143,6958,{"start":2845,"end":2846},{"line":2737,"column":2832,"offset":2833},{"line":2737,"column":2842,"offset":2843},{"type":27,"value":2848,"position":2849}," for a heatmap with no hover.",{"start":2850,"end":2851},{"line":2737,"column":2842,"offset":2843},{"line":2737,"column":2852,"offset":2853},172,6987,{"start":2855,"end":2856},{"line":2737,"column":21,"offset":2788},{"line":2737,"column":2852,"offset":2853},{"type":27,"value":28},{"type":31,"tagName":295,"properties":2859,"children":2860,"position":2870},{},[2861],{"type":27,"value":2862,"position":2863},"Where it runs",{"start":2864,"end":2867},{"line":2865,"column":303,"offset":2866},84,6992,{"line":2865,"column":2868,"offset":2869},17,7005,{"start":2871,"end":2873},{"line":2865,"column":21,"offset":2872},6989,{"line":2865,"column":2868,"offset":2869},{"type":27,"value":28},{"type":31,"tagName":32,"properties":2876,"children":2877,"position":2925},{},[2878,2885,2898,2905,2918],{"type":27,"value":2879,"position":2880},"Any market the chart serves an order book for: crypto spot and perpetual venues, Polymarket markets. The chart serves the book snapshots its own order book lane fetches for the chart's market; ",{"start":2881,"end":2883},{"line":10,"column":21,"offset":2882},7007,{"line":10,"column":155,"offset":2884},7200,{"type":31,"tagName":81,"properties":2886,"children":2887,"position":2895},{},[2888],{"type":27,"value":2889,"position":2890},"block_size",{"start":2891,"end":2892},{"line":10,"column":155,"offset":2884},{"line":10,"column":2893,"offset":2894},206,7212,{"start":2896,"end":2897},{"line":10,"column":155,"offset":2884},{"line":10,"column":2893,"offset":2894},{"type":27,"value":2899,"position":2900}," is required by the declaration but the chart reads neither it nor ",{"start":2901,"end":2902},{"line":10,"column":2893,"offset":2894},{"line":10,"column":2903,"offset":2904},273,7279,{"type":31,"tagName":81,"properties":2906,"children":2907,"position":2915},{},[2908],{"type":27,"value":2909,"position":2910},"max_depth",{"start":2911,"end":2912},{"line":10,"column":2903,"offset":2904},{"line":10,"column":2913,"offset":2914},284,7290,{"start":2916,"end":2917},{"line":10,"column":2903,"offset":2904},{"line":10,"column":2913,"offset":2914},{"type":27,"value":2919,"position":2920},". The heatmap paints as far back as the book history the chart holds; older bars carry an empty block.",{"start":2921,"end":2922},{"line":10,"column":2913,"offset":2914},{"line":10,"column":2923,"offset":2924},386,7392,{"start":2926,"end":2927},{"line":10,"column":21,"offset":2882},{"line":10,"column":2923,"offset":2924},{"type":27,"value":28},{"type":31,"tagName":295,"properties":2930,"children":2931,"position":2940},{},[2932],{"type":27,"value":2933,"position":2934},"When data is missing",{"start":2935,"end":2938},{"line":2936,"column":303,"offset":2937},88,7397,{"line":2936,"column":78,"offset":2939},7417,{"start":2941,"end":2943},{"line":2936,"column":21,"offset":2942},7394,{"line":2936,"column":78,"offset":2939},{"type":27,"value":28},{"type":31,"tagName":32,"properties":2946,"children":2947,"position":3015},{},[2948,2956,2968,2975,2988,2995,3008],{"type":27,"value":2949,"position":2950},"A market with no book lane is refused by name before any fetch, naming the input and the way out. A market whose bars all arrive without a book (FX and stocks, where the lane answers empty) runs: the map stays empty, the histogram reads NaN, and one line of words shows at the top right of the chart, ",{"start":2951,"end":2954},{"line":2952,"column":21,"offset":2953},90,7419,{"line":2952,"column":183,"offset":2955},7720,{"type":31,"tagName":81,"properties":2957,"children":2958,"position":2965},{},[2959],{"type":27,"value":2960,"position":2961},"No order book on this market",{"start":2962,"end":2963},{"line":2952,"column":183,"offset":2955},{"line":2952,"column":188,"offset":2964},7750,{"start":2966,"end":2967},{"line":2952,"column":183,"offset":2955},{"line":2952,"column":188,"offset":2964},{"type":27,"value":2969,"position":2970},", in plain slate: the ",{"start":2971,"end":2972},{"line":2952,"column":188,"offset":2964},{"line":2952,"column":2973,"offset":2974},354,7772,{"type":31,"tagName":81,"properties":2976,"children":2977,"position":2985},{},[2978],{"type":27,"value":2979,"position":2980},"note",{"start":2981,"end":2982},{"line":2952,"column":2973,"offset":2974},{"line":2952,"column":2983,"offset":2984},360,7778,{"start":2986,"end":2987},{"line":2952,"column":2973,"offset":2974},{"line":2952,"column":2983,"offset":2984},{"type":27,"value":2989,"position":2990}," label handle, written on the live bar while no bar has brought a book, pinned to the pane's top right corner, right-aligned and ",{"start":2991,"end":2992},{"line":2952,"column":2983,"offset":2984},{"line":2952,"column":2993,"offset":2994},489,7907,{"type":31,"tagName":81,"properties":2996,"children":2997,"position":3005},{},[2998],{"type":27,"value":2999,"position":3000},"safe_area: true",{"start":3001,"end":3002},{"line":2952,"column":2993,"offset":2994},{"line":2952,"column":3003,"offset":3004},506,7924,{"start":3006,"end":3007},{"line":2952,"column":2993,"offset":2994},{"line":2952,"column":3003,"offset":3004},{"type":27,"value":3009,"position":3010},", so it clears the chart's own buttons. A bar with no snapshot carries an empty block: the column is blank and the histogram reads NaN. A book that lists one side only (a halted market, a one-sided prediction market) has no mid, so the histogram reads NaN while the heatmap still paints the side it has.",{"start":3011,"end":3012},{"line":2952,"column":3003,"offset":3004},{"line":2952,"column":3013,"offset":3014},809,8227,{"start":3016,"end":3017},{"line":2952,"column":21,"offset":2953},{"line":2952,"column":3013,"offset":3014},{"type":27,"value":28},{"type":31,"tagName":295,"properties":3020,"children":3021,"position":3030},{},[3022],{"type":27,"value":3023,"position":3024},"Customize it",{"start":3025,"end":3028},{"line":3026,"column":303,"offset":3027},92,8232,{"line":3026,"column":2277,"offset":3029},8244,{"start":3031,"end":3033},{"line":3026,"column":21,"offset":3032},8229,{"line":3026,"column":2277,"offset":3029},{"type":27,"value":28},{"type":31,"tagName":3036,"properties":3037,"children":3038,"position":3374},"ul",{},[3039,3040,3167,3168,3255,3256,3306,3307,3373],{"type":27,"value":28},{"type":31,"tagName":3041,"properties":3042,"children":3043,"position":3163},"li",{},[3044,3061,3067,3079,3086,3098,3105,3117,3124,3136,3143,3156],{"type":31,"tagName":243,"properties":3045,"children":3046,"position":3055},{},[3047],{"type":27,"value":3048,"position":3049},"Read one side.",{"start":3050,"end":3052},{"line":2321,"column":43,"offset":3051},8250,{"line":2321,"column":3053,"offset":3054},19,8264,{"start":3056,"end":3058},{"line":2321,"column":2295,"offset":3057},8248,{"line":2321,"column":3059,"offset":3060},21,8266,{"type":27,"value":3062,"position":3063}," Change ",{"start":3064,"end":3065},{"line":2321,"column":3059,"offset":3060},{"line":2321,"column":2304,"offset":3066},8274,{"type":31,"tagName":81,"properties":3068,"children":3069,"position":3076},{},[3070],{"type":27,"value":3071,"position":3072},"value: \"size\"",{"start":3073,"end":3074},{"line":2321,"column":2304,"offset":3066},{"line":2321,"column":99,"offset":3075},8289,{"start":3077,"end":3078},{"line":2321,"column":2304,"offset":3066},{"line":2321,"column":99,"offset":3075},{"type":27,"value":3080,"position":3081}," to ",{"start":3082,"end":3083},{"line":2321,"column":99,"offset":3075},{"line":2321,"column":3084,"offset":3085},48,8293,{"type":31,"tagName":81,"properties":3087,"children":3088,"position":3095},{},[3089],{"type":27,"value":2585,"position":3090},{"start":3091,"end":3092},{"line":2321,"column":3084,"offset":3085},{"line":2321,"column":3093,"offset":3094},55,8300,{"start":3096,"end":3097},{"line":2321,"column":3084,"offset":3085},{"line":2321,"column":3093,"offset":3094},{"type":27,"value":3099,"position":3100}," or ",{"start":3101,"end":3102},{"line":2321,"column":3093,"offset":3094},{"line":2321,"column":3103,"offset":3104},59,8304,{"type":31,"tagName":81,"properties":3106,"children":3107,"position":3114},{},[3108],{"type":27,"value":2604,"position":3109},{"start":3110,"end":3111},{"line":2321,"column":3103,"offset":3104},{"line":2321,"column":3112,"offset":3113},66,8311,{"start":3115,"end":3116},{"line":2321,"column":3103,"offset":3104},{"line":2321,"column":3112,"offset":3113},{"type":27,"value":3118,"position":3119}," to paint one side of the book, or to ",{"start":3120,"end":3121},{"line":2321,"column":3112,"offset":3113},{"line":2321,"column":3122,"offset":3123},104,8349,{"type":31,"tagName":81,"properties":3125,"children":3126,"position":3133},{},[3127],{"type":27,"value":2624,"position":3128},{"start":3129,"end":3130},{"line":2321,"column":3122,"offset":3123},{"line":2321,"column":3131,"offset":3132},114,8359,{"start":3134,"end":3135},{"line":2321,"column":3122,"offset":3123},{"line":2321,"column":3131,"offset":3132},{"type":27,"value":3137,"position":3138}," for a diverging map (bids warm, asks cold) with the palette ",{"start":3139,"end":3140},{"line":2321,"column":3131,"offset":3132},{"line":2321,"column":3141,"offset":3142},175,8420,{"type":31,"tagName":81,"properties":3144,"children":3145,"position":3153},{},[3146],{"type":27,"value":3147,"position":3148},"[\"theme.down\", \"theme.bg\", \"theme.up\"]",{"start":3149,"end":3150},{"line":2321,"column":3141,"offset":3142},{"line":2321,"column":3151,"offset":3152},215,8460,{"start":3154,"end":3155},{"line":2321,"column":3141,"offset":3142},{"line":2321,"column":3151,"offset":3152},{"type":27,"value":3157,"position":3158},".",{"start":3159,"end":3160},{"line":2321,"column":3151,"offset":3152},{"line":2321,"column":3161,"offset":3162},216,8461,{"start":3164,"end":3166},{"line":2321,"column":21,"offset":3165},8246,{"line":2321,"column":3161,"offset":3162},{"type":27,"value":28},{"type":31,"tagName":3041,"properties":3169,"children":3170,"position":3251},{},[3171,3187,3194,3207,3213,3226,3232,3245],{"type":31,"tagName":243,"properties":3172,"children":3173,"position":3182},{},[3174],{"type":27,"value":3175,"position":3176},"Fix the scale.",{"start":3177,"end":3180},{"line":3178,"column":43,"offset":3179},95,8466,{"line":3178,"column":3053,"offset":3181},8480,{"start":3183,"end":3185},{"line":3178,"column":2295,"offset":3184},8464,{"line":3178,"column":3059,"offset":3186},8482,{"type":27,"value":3188,"position":3189}," Set ",{"start":3190,"end":3191},{"line":3178,"column":3059,"offset":3186},{"line":3178,"column":3192,"offset":3193},26,8487,{"type":31,"tagName":81,"properties":3195,"children":3196,"position":3204},{},[3197],{"type":27,"value":3198,"position":3199},"min",{"start":3200,"end":3201},{"line":3178,"column":3192,"offset":3193},{"line":3178,"column":3202,"offset":3203},31,8492,{"start":3205,"end":3206},{"line":3178,"column":3192,"offset":3193},{"line":3178,"column":3202,"offset":3203},{"type":27,"value":3208,"position":3209}," and ",{"start":3210,"end":3211},{"line":3178,"column":3202,"offset":3203},{"line":3178,"column":89,"offset":3212},8497,{"type":31,"tagName":81,"properties":3214,"children":3215,"position":3223},{},[3216],{"type":27,"value":3217,"position":3218},"max",{"start":3219,"end":3220},{"line":3178,"column":89,"offset":3212},{"line":3178,"column":3221,"offset":3222},41,8502,{"start":3224,"end":3225},{"line":3178,"column":89,"offset":3212},{"line":3178,"column":3221,"offset":3222},{"type":27,"value":3227,"position":3228}," in size units to compare days on one scale; ",{"start":3229,"end":3230},{"line":3178,"column":3221,"offset":3222},{"line":3178,"column":10,"offset":3231},8547,{"type":31,"tagName":81,"properties":3233,"children":3234,"position":3242},{},[3235],{"type":27,"value":3236,"position":3237},"auto_quantile",{"start":3238,"end":3239},{"line":3178,"column":10,"offset":3231},{"line":3178,"column":3240,"offset":3241},101,8562,{"start":3243,"end":3244},{"line":3178,"column":10,"offset":3231},{"line":3178,"column":3240,"offset":3241},{"type":27,"value":3246,"position":3247}," then goes away.",{"start":3248,"end":3249},{"line":3178,"column":3240,"offset":3241},{"line":3178,"column":135,"offset":3250},8578,{"start":3252,"end":3254},{"line":3178,"column":21,"offset":3253},8462,{"line":3178,"column":135,"offset":3250},{"type":27,"value":28},{"type":31,"tagName":3041,"properties":3257,"children":3258,"position":3302},{},[3259,3277,3282,3295],{"type":31,"tagName":243,"properties":3260,"children":3261,"position":3271},{},[3262],{"type":27,"value":3263,"position":3264},"Coarser rows.",{"start":3265,"end":3268},{"line":3266,"column":43,"offset":3267},96,8583,{"line":3266,"column":3269,"offset":3270},18,8596,{"start":3272,"end":3274},{"line":3266,"column":2295,"offset":3273},8581,{"line":3266,"column":3275,"offset":3276},20,8598,{"type":27,"value":2307,"position":3278},{"start":3279,"end":3280},{"line":3266,"column":3275,"offset":3276},{"line":3266,"column":3059,"offset":3281},8599,{"type":31,"tagName":81,"properties":3283,"children":3284,"position":3292},{},[3285],{"type":27,"value":3286,"position":3287},"row_height: 50",{"start":3288,"end":3289},{"line":3266,"column":3059,"offset":3281},{"line":3266,"column":3290,"offset":3291},37,8615,{"start":3293,"end":3294},{"line":3266,"column":3059,"offset":3281},{"line":3266,"column":3290,"offset":3291},{"type":27,"value":3296,"position":3297}," groups the book into 50-unit price rows on a market whose levels are finer than the chart can show.",{"start":3298,"end":3299},{"line":3266,"column":3290,"offset":3291},{"line":3266,"column":3300,"offset":3301},137,8715,{"start":3303,"end":3305},{"line":3266,"column":21,"offset":3304},8579,{"line":3266,"column":3300,"offset":3301},{"type":27,"value":28},{"type":31,"tagName":3041,"properties":3308,"children":3309,"position":3369},{},[3310,3326,3331,3343,3349,3362],{"type":31,"tagName":243,"properties":3311,"children":3312,"position":3321},{},[3313],{"type":27,"value":3314,"position":3315},"Over the candles.",{"start":3316,"end":3319},{"line":3317,"column":43,"offset":3318},97,8720,{"line":3317,"column":306,"offset":3320},8737,{"start":3322,"end":3324},{"line":3317,"column":2295,"offset":3323},8718,{"line":3317,"column":78,"offset":3325},8739,{"type":27,"value":2307,"position":3327},{"start":3328,"end":3329},{"line":3317,"column":78,"offset":3325},{"line":3317,"column":2470,"offset":3330},8740,{"type":31,"tagName":81,"properties":3332,"children":3333,"position":3340},{},[3334],{"type":27,"value":3335,"position":3336},"behind_candles: false",{"start":3337,"end":3338},{"line":3317,"column":2470,"offset":3330},{"line":3317,"column":3084,"offset":3339},8763,{"start":3341,"end":3342},{"line":3317,"column":2470,"offset":3330},{"line":3317,"column":3084,"offset":3339},{"type":27,"value":3344,"position":3345}," paints the cells over the bars, with ",{"start":3346,"end":3347},{"line":3317,"column":3084,"offset":3339},{"line":3317,"column":10,"offset":3348},8801,{"type":31,"tagName":81,"properties":3350,"children":3351,"position":3359},{},[3352],{"type":27,"value":3353,"position":3354},"opacity: 0.5",{"start":3355,"end":3356},{"line":3317,"column":10,"offset":3348},{"line":3317,"column":3357,"offset":3358},100,8815,{"start":3360,"end":3361},{"line":3317,"column":10,"offset":3348},{"line":3317,"column":3357,"offset":3358},{"type":27,"value":3363,"position":3364}," to keep them visible.",{"start":3365,"end":3366},{"line":3317,"column":3357,"offset":3358},{"line":3317,"column":3367,"offset":3368},122,8837,{"start":3370,"end":3372},{"line":3317,"column":21,"offset":3371},8716,{"line":3317,"column":3367,"offset":3368},{"type":27,"value":28},{"start":3375,"end":3376},{"line":2321,"column":21,"offset":3165},{"line":3317,"column":3367,"offset":3368},{"type":27,"value":28},{"type":31,"tagName":295,"properties":3379,"children":3380,"position":3390},{},[3381],{"type":27,"value":3382,"position":3383},"Run it",{"start":3384,"end":3387},{"line":3385,"column":303,"offset":3386},99,8842,{"line":3385,"column":3388,"offset":3389},10,8848,{"start":3391,"end":3393},{"line":3385,"column":21,"offset":3392},8839,{"line":3385,"column":3388,"offset":3389},{"type":27,"value":28},{"type":31,"tagName":3396,"properties":3397,"children":3398,"position":3635},"ol",{},[3399,3400,3480,3481,3518,3519,3552,3553,3634],{"type":27,"value":28},{"type":31,"tagName":3041,"properties":3401,"children":3402,"position":3476},{},[3403,3411,3428,3434,3448,3454,3470],{"type":27,"value":3404,"position":3405},"In the editor's Explorer, press the ",{"start":3406,"end":3408},{"line":3240,"column":303,"offset":3407},8853,{"line":3240,"column":3409,"offset":3410},40,8889,{"type":31,"tagName":243,"properties":3412,"children":3413,"position":3423},{},[3414],{"type":27,"value":3415,"position":3416},"Templates",{"start":3417,"end":3420},{"line":3240,"column":3418,"offset":3419},42,8891,{"line":3240,"column":3421,"offset":3422},51,8900,{"start":3424,"end":3425},{"line":3240,"column":3409,"offset":3410},{"line":3240,"column":3426,"offset":3427},53,8902,{"type":27,"value":3429,"position":3430}," icon (\"Browse starter templates\") and pick ",{"start":3431,"end":3432},{"line":3240,"column":3426,"offset":3427},{"line":3240,"column":3317,"offset":3433},8946,{"type":31,"tagName":243,"properties":3435,"children":3436,"position":3444},{},[3437],{"type":27,"value":8,"position":3438},{"start":3439,"end":3441},{"line":3240,"column":3385,"offset":3440},8948,{"line":3240,"column":3442,"offset":3443},108,8957,{"start":3445,"end":3446},{"line":3240,"column":3317,"offset":3433},{"line":3240,"column":2814,"offset":3447},8959,{"type":27,"value":3449,"position":3450}," under ",{"start":3451,"end":3452},{"line":3240,"column":2814,"offset":3447},{"line":3240,"column":135,"offset":3453},8966,{"type":31,"tagName":243,"properties":3455,"children":3456,"position":3465},{},[3457],{"type":27,"value":270,"position":3458},{"start":3459,"end":3462},{"line":3240,"column":3460,"offset":3461},119,8968,{"line":3240,"column":3463,"offset":3464},129,8978,{"start":3466,"end":3467},{"line":3240,"column":135,"offset":3453},{"line":3240,"column":3468,"offset":3469},131,8980,{"type":27,"value":3157,"position":3471},{"start":3472,"end":3473},{"line":3240,"column":3468,"offset":3469},{"line":3240,"column":3474,"offset":3475},132,8981,{"start":3477,"end":3479},{"line":3240,"column":21,"offset":3478},8850,{"line":3240,"column":3474,"offset":3475},{"type":27,"value":28},{"type":31,"tagName":3041,"properties":3482,"children":3483,"position":3514},{},[3484,3492,3507],{"type":27,"value":3485,"position":3486},"Press ",{"start":3487,"end":3490},{"line":3488,"column":303,"offset":3489},102,8985,{"line":3488,"column":3388,"offset":3491},8991,{"type":31,"tagName":243,"properties":3493,"children":3494,"position":3503},{},[3495],{"type":27,"value":3496,"position":3497},"Run",{"start":3498,"end":3501},{"line":3488,"column":3499,"offset":3500},12,8993,{"line":3488,"column":2455,"offset":3502},8996,{"start":3504,"end":3505},{"line":3488,"column":3388,"offset":3491},{"line":3488,"column":2868,"offset":3506},8998,{"type":27,"value":3508,"position":3509}," on a liquid crypto chart (Binance Futures BTCUSDT, for example): the book paints behind the candles as the snapshots arrive and the imbalance pane fills below.",{"start":3510,"end":3511},{"line":3488,"column":2868,"offset":3506},{"line":3488,"column":3512,"offset":3513},177,9158,{"start":3515,"end":3517},{"line":3488,"column":21,"offset":3516},8982,{"line":3488,"column":3512,"offset":3513},{"type":27,"value":28},{"type":31,"tagName":3041,"properties":3520,"children":3521,"position":3548},{},[3522,3529,3542],{"type":27,"value":3523,"position":3524},"Hover a cell for its resting size; at the editor's Console prompt, type ",{"start":3525,"end":3527},{"line":125,"column":303,"offset":3526},9162,{"line":125,"column":2294,"offset":3528},9234,{"type":31,"tagName":81,"properties":3530,"children":3531,"position":3539},{},[3532],{"type":27,"value":3533,"position":3534},"imbalance",{"start":3535,"end":3536},{"line":125,"column":2294,"offset":3528},{"line":125,"column":3537,"offset":3538},87,9245,{"start":3540,"end":3541},{"line":125,"column":2294,"offset":3528},{"line":125,"column":3537,"offset":3538},{"type":27,"value":3543,"position":3544}," to read the live bar's reading.",{"start":3545,"end":3546},{"line":125,"column":3537,"offset":3538},{"line":125,"column":3460,"offset":3547},9277,{"start":3549,"end":3551},{"line":125,"column":21,"offset":3550},9159,{"line":125,"column":3460,"offset":3547},{"type":27,"value":28},{"type":31,"tagName":3041,"properties":3554,"children":3555,"position":3630},{},[3556,3563,3578,3585,3600,3607,3624],{"type":27,"value":3557,"position":3558},"Open the indicator's settings: on the ",{"start":3559,"end":3561},{"line":3122,"column":303,"offset":3560},9281,{"line":3122,"column":3418,"offset":3562},9319,{"type":31,"tagName":243,"properties":3564,"children":3565,"position":3574},{},[3566],{"type":27,"value":3567,"position":3568},"Style",{"start":3569,"end":3571},{"line":3122,"column":99,"offset":3570},9321,{"line":3122,"column":3572,"offset":3573},49,9326,{"start":3575,"end":3576},{"line":3122,"column":3418,"offset":3562},{"line":3122,"column":3421,"offset":3577},9328,{"type":27,"value":3579,"position":3580}," page, the heatmap's ",{"start":3581,"end":3582},{"line":3122,"column":3421,"offset":3577},{"line":3122,"column":3583,"offset":3584},72,9349,{"type":31,"tagName":243,"properties":3586,"children":3587,"position":3596},{},[3588],{"type":27,"value":3589,"position":3590},"Sensitivity",{"start":3591,"end":3593},{"line":3122,"column":2274,"offset":3592},9351,{"line":3122,"column":3594,"offset":3595},85,9362,{"start":3597,"end":3598},{"line":3122,"column":3583,"offset":3584},{"line":3122,"column":3537,"offset":3599},9364,{"type":27,"value":3601,"position":3602}," slider recolours it live, toward Vivid to light up thinner levels, toward Subtle to keep the brightest colours for the walls (",{"start":3603,"end":3604},{"line":3122,"column":3537,"offset":3599},{"line":3122,"column":3605,"offset":3606},214,9491,{"type":31,"tagName":102,"properties":3608,"children":3610,"position":3619},{"href":3609},"../settings/style-page.md#the-sensitivity-row",[3611],{"type":27,"value":3612,"position":3613},"The Style page",{"start":3614,"end":3616},{"line":3122,"column":3151,"offset":3615},9492,{"line":3122,"column":3617,"offset":3618},229,9506,{"start":3620,"end":3621},{"line":3122,"column":3605,"offset":3606},{"line":3122,"column":3622,"offset":3623},277,9554,{"type":27,"value":1343,"position":3625},{"start":3626,"end":3627},{"line":3122,"column":3622,"offset":3623},{"line":3122,"column":3628,"offset":3629},279,9556,{"start":3631,"end":3633},{"line":3122,"column":21,"offset":3632},9278,{"line":3122,"column":3628,"offset":3629},{"type":27,"value":28},{"start":3636,"end":3637},{"line":3240,"column":21,"offset":3478},{"line":3122,"column":3628,"offset":3629},{"type":27,"value":28},{"type":31,"tagName":295,"properties":3640,"children":3641,"position":3650},{},[3642],{"type":27,"value":3643,"position":3644},"Concepts used",{"start":3645,"end":3648},{"line":3646,"column":303,"offset":3647},106,9561,{"line":3646,"column":2868,"offset":3649},9574,{"start":3651,"end":3653},{"line":3646,"column":21,"offset":3652},9558,{"line":3646,"column":2868,"offset":3649},{"type":27,"value":28},{"type":31,"tagName":3036,"properties":3656,"children":3657,"position":3801},{},[3658,3659,3706,3707,3772,3773,3800],{"type":27,"value":28},{"type":31,"tagName":3041,"properties":3660,"children":3661,"position":3702},{},[3662,3677,3683,3695],{"type":31,"tagName":102,"properties":3663,"children":3664,"position":3671},{"href":104},[3665],{"type":27,"value":107,"position":3666},{"start":3667,"end":3669},{"line":3442,"column":303,"offset":3668},9579,{"line":3442,"column":78,"offset":3670},9599,{"start":3672,"end":3674},{"line":3442,"column":2295,"offset":3673},9578,{"line":3442,"column":3675,"offset":3676},57,9632,{"type":27,"value":3678,"position":3679}," for the ",{"start":3680,"end":3681},{"line":3442,"column":3675,"offset":3676},{"line":3442,"column":3112,"offset":3682},9641,{"type":31,"tagName":81,"properties":3684,"children":3685,"position":3692},{},[3686],{"type":27,"value":3687,"position":3688},"book",{"start":3689,"end":3690},{"line":3442,"column":3112,"offset":3682},{"line":3442,"column":3583,"offset":3691},9647,{"start":3693,"end":3694},{"line":3442,"column":3112,"offset":3682},{"line":3442,"column":3583,"offset":3691},{"type":27,"value":3696,"position":3697}," celled class, its tuple and the depth-window scans",{"start":3698,"end":3699},{"line":3442,"column":3583,"offset":3691},{"line":3442,"column":3700,"offset":3701},123,9698,{"start":3703,"end":3705},{"line":3442,"column":21,"offset":3704},9576,{"line":3442,"column":3700,"offset":3701},{"type":27,"value":28},{"type":31,"tagName":3041,"properties":3708,"children":3709,"position":3768},{},[3710,3726,3732,3744,3751,3762],{"type":31,"tagName":102,"properties":3711,"children":3712,"position":3720},{"href":149},[3713],{"type":27,"value":152,"position":3714},{"start":3715,"end":3718},{"line":3716,"column":303,"offset":3717},109,9702,{"line":3716,"column":3269,"offset":3719},9716,{"start":3721,"end":3723},{"line":3716,"column":2295,"offset":3722},9701,{"line":3716,"column":3724,"offset":3725},54,9752,{"type":27,"value":3727,"position":3728}," for ",{"start":3729,"end":3730},{"line":3716,"column":3724,"offset":3725},{"line":3716,"column":3103,"offset":3731},9757,{"type":31,"tagName":81,"properties":3733,"children":3734,"position":3741},{},[3735],{"type":27,"value":131,"position":3736},{"start":3737,"end":3738},{"line":3716,"column":3103,"offset":3731},{"line":3716,"column":3739,"offset":3740},73,9771,{"start":3742,"end":3743},{"line":3716,"column":3103,"offset":3731},{"line":3716,"column":3739,"offset":3740},{"type":27,"value":3745,"position":3746},", the ",{"start":3747,"end":3748},{"line":3716,"column":3739,"offset":3740},{"line":3716,"column":3749,"offset":3750},79,9777,{"type":31,"tagName":81,"properties":3752,"children":3753,"position":3759},{},[3754],{"type":27,"value":2546,"position":3755},{"start":3756,"end":3757},{"line":3716,"column":3749,"offset":3750},{"line":3716,"column":10,"offset":3758},9784,{"start":3760,"end":3761},{"line":3716,"column":3749,"offset":3750},{"line":3716,"column":10,"offset":3758},{"type":27,"value":3763,"position":3764}," words, the colour scale and the hover readout",{"start":3765,"end":3766},{"line":3716,"column":10,"offset":3758},{"line":3716,"column":3474,"offset":3767},9830,{"start":3769,"end":3771},{"line":3716,"column":21,"offset":3770},9699,{"line":3716,"column":3474,"offset":3767},{"type":27,"value":28},{"type":31,"tagName":3041,"properties":3774,"children":3775,"position":3796},{},[3776,3790],{"type":31,"tagName":102,"properties":3777,"children":3778,"position":3785},{"href":174},[3779],{"type":27,"value":177,"position":3780},{"start":3781,"end":3783},{"line":2814,"column":303,"offset":3782},9834,{"line":2814,"column":3499,"offset":3784},9842,{"start":3786,"end":3788},{"line":2814,"column":2295,"offset":3787},9833,{"line":2814,"column":3418,"offset":3789},9872,{"type":27,"value":3791,"position":3792}," for histogram outputs and their sign colours",{"start":3793,"end":3794},{"line":2814,"column":3418,"offset":3789},{"line":2814,"column":3537,"offset":3795},9917,{"start":3797,"end":3799},{"line":2814,"column":21,"offset":3798},9831,{"line":2814,"column":3537,"offset":3795},{"type":27,"value":28},{"start":3802,"end":3803},{"line":3442,"column":21,"offset":3704},{"line":2814,"column":3537,"offset":3795},{"quirksMode":3805},false,{"start":3807,"end":3808},{"line":21,"column":21,"offset":22},{"line":3809,"column":21,"offset":3810},111,9918,1791265156594]