[{"data":1,"prerenderedAt":2541},["ShallowReactive",2],{"kscript:core-concepts/lambdas-and-reducers":3},{"slug":4,"filePath":5,"frontmatter":6,"rawMarkdown":9,"tree":10},"core-concepts/lambdas-and-reducers","core-concepts/lambdas-and-reducers.md",{"title":7,"description":8},"Lambdas & Reducers","Arrow-function lambdas, closures, and the reducer methods (map, filter, reduce, forEach, find, some, every) that replace most explicit loops.","---\ntitle: Lambdas & Reducers\ndescription: >-\n  Arrow-function lambdas, closures, and the reducer methods (map, filter,\n  reduce, forEach, find, some, every) that replace most explicit loops.\n---\n\n\u003Cdiv class=\"flex gap-3 mb-6\">\n  \u003Cspan class=\"inline-flex items-center gap-1.5 px-3 py-1 rounded-full bg-blue-50 text-blue-600 text-sm font-medium\">\n    Intermediate\n  \u003C/span>\n  \u003Cspan class=\"inline-flex items-center gap-1.5 px-3 py-1 rounded-full bg-gray-100 text-gray-600 text-sm font-medium\">\n    10 min read\n  \u003C/span>\n\u003C/div>\n\n## Introduction\n\nkScript v3 adds JavaScript-style **arrow lambdas** and a family of **reducer methods** on arrays. Together they replace most explicit `for` loops with one-line transformations, and they are the recommended way to iterate: every reducer pass is automatically protected by the runtime's iteration watchdogs, and the analyzer type-checks the callback's element types.\n\nPine Script has no lambdas at all. A transformation that takes a Pine `for` loop and manual accumulator state is typically a single expression in kScript: that conciseness is measured, not aspirational (the engine's own test suite asserts a representative transformation at half the Pine line count).\n\n## Lambda syntax\n\n```javascript\nvar double = (x) => x * 2\nvar label = (p, side) => {\n  var prefix = side > 0 ? \"bid\" : \"ask\"\n  return format(\"{0} @ {1}\", prefix, tostring(p))\n}\n\nvar y = double(21)          // 42\n```\n\nTwo forms:\n- **Expression body**: `(x) => x * 2`, the expression is the return value.\n- **Block body**: `(x) => { ... return v }`, with explicit `return`.\n\nLambdas are values. Store them in `var` variables, pass them to functions and reducers, return them from functions, and call them directly. They **close over** the surrounding scope:\n\n```javascript\nvar threshold = high * 0.99\nvar nearHigh = prices.filter((p) => p > threshold)\n```\n\n{% hint style=\"warning\" %}\n**Lambdas cannot be stored in `persist`/`static` state.** Carried state must survive the engine's snapshot-and-rollback machinery, and closures cannot be safely snapshotted. The compiler rejects `persist f = (x) => x` at the declaration with a clear error. Regular `var` lambdas are recreated each bar and are always safe.\n\n{% endhint %}\n## The reducer methods\n\nAll seven take a lambda and iterate a **snapshot** of the array (mutating the array inside the callback does not affect the active pass):\n\n| Method | Callback | Returns |\n|---|---|---|\n| `map(fn)` | `(value, index?) => newValue` | New array of transformed values |\n| `filter(fn)` | `(value, index?) => boolean` | New array of passing values |\n| `reduce(fn, initial)` | `(accumulator, value, index?) => accumulator` | The final accumulator |\n| `forEach(fn)` | `(value, index?) => void` | Nothing (side effects) |\n| `find(fn)` | `(value, index?) => boolean` | First match, or `na` |\n| `some(fn)` | `(value, index?) => boolean` | `true` if any match |\n| `every(fn)` | `(value, index?) => boolean` | `true` if all match |\n\n```javascript\nvar sizes = book.map((lvl) => lvl[1])\nvar bigLevels = book.filter((lvl) => lvl[1] > 50)\nvar totalSize = sizes.reduce((sum, s) => sum + s, 0)\nvar hasWall = book.some((lvl) => lvl[1] > 500)\n```\n### Callback arity is lenient\n\nA callback may declare fewer or more parameters than the method supplies; parameters the method does not provide are bound to `na`. Direct lambda calls (not through a reducer) keep strict arity checking. This mirrors how every mainstream language treats callbacks and keeps one-parameter lambdas clean.\n\n## The microstructure idiom\n\nReducers are how kScript turns raw order-flow rows into indicator values. The canonical pattern, from cells to metric to plot:\n\n```javascript\ntimeseries fp = source(\"footprint\", symbol=currentSymbol)\n\n// net delta for the current bar\ntimeseries delta = fp.cells.map((c) => c[2] - c[3]).reduce((s, x) => s + x, 0)\n\n// price of the largest-volume bucket\nvar top = fp.cells.reduce((best, c) =>\n  (c[2] + c[3]) > (best[2] + best[3]) ? c : best, fp.cells[0])\nplotLine(top[0], color=\"#f59e0b\")\n```\n\n\n\nEvery windowed indicator in the [TA library](../functions/ta-library.md) also accepts microstructure-derived series, so `rsi(source=delta, period=14)` is a delta-RSI in one line. None of this is expressible in Pine Script: it has neither the data nor the lambdas.\n## Loops still exist, and they are guarded\n\n`for`, `for...in`, `for...of`, and `while` remain available for logic that does not fit a reducer. Every loop body and every reducer pass is protected by the same watchdogs: a per-loop iteration ceiling, a per-run aggregate ceiling, and mid-bar interruption support, all reporting precise line/column errors. A runaway loop terminates loudly; it cannot hang a chart. The numbers live in [Limitations](../faq/limitations.md).\n\n**Rule of thumb:** reach for a reducer first, `for...in`/`for...of` second, and a manual indexed loop only when you genuinely need index arithmetic.\n",{"type":11,"children":12,"data":2534,"position":2536},"root",[13,100,101,118,119,205,206,240,241,257,258,525,526,541,542,672,673,730,731,827,828,941,942,959,960,995,997,1552,1553,1830,1831,1847,1848,1881,1882,1897,1898,1911,1912,2290,2291,2349,2350,2367,2368,2471,2472],{"type":14,"tagName":15,"properties":16,"children":21,"position":95},"element","div",{"className":17},[18,19,20],"flex","gap-3","mb-6",[22,34,63,69,88],{"type":23,"value":24,"position":25},"text","\n  ",{"start":26,"end":30},{"line":27,"column":28,"offset":29},1,30,29,{"line":31,"column":32,"offset":33},2,3,32,{"type":14,"tagName":35,"properties":36,"children":48,"position":58},"span",{"className":37},[38,39,40,41,42,43,44,45,46,47],"inline-flex","items-center","gap-1.5","px-3","py-1","rounded-full","bg-blue-50","text-blue-600","text-sm","font-medium",[49],{"type":23,"value":50,"position":51},"\n    Intermediate\n  ",{"start":52,"end":55},{"line":31,"column":53,"offset":54},118,147,{"line":56,"column":32,"offset":57},4,167,{"start":59,"end":60},{"line":31,"column":32,"offset":33},{"line":56,"column":61,"offset":62},10,174,{"type":23,"value":24,"position":64},{"start":65,"end":66},{"line":56,"column":61,"offset":62},{"line":67,"column":32,"offset":68},5,177,{"type":14,"tagName":35,"properties":70,"children":74,"position":84},{"className":71},[38,39,40,41,42,43,72,73,46,47],"bg-gray-100","text-gray-600",[75],{"type":23,"value":76,"position":77},"\n    10 min read\n  ",{"start":78,"end":81},{"line":67,"column":79,"offset":80},119,293,{"line":82,"column":32,"offset":83},7,312,{"start":85,"end":86},{"line":67,"column":32,"offset":68},{"line":82,"column":61,"offset":87},319,{"type":23,"value":89,"position":90},"\n",{"start":91,"end":92},{"line":82,"column":61,"offset":87},{"line":93,"column":27,"offset":94},8,320,{"start":96,"end":98},{"line":27,"column":27,"offset":97},0,{"line":93,"column":82,"offset":99},326,{"type":23,"value":89},{"type":14,"tagName":102,"properties":103,"children":105,"position":114},"h2",{"id":104},"introduction",[106],{"type":23,"value":107,"position":108},"Introduction",{"start":109,"end":111},{"line":61,"column":56,"offset":110},331,{"line":61,"column":112,"offset":113},16,343,{"start":115,"end":117},{"line":61,"column":27,"offset":116},328,{"line":61,"column":112,"offset":113},{"type":23,"value":89},{"type":14,"tagName":120,"properties":121,"children":122,"position":202},"p",{},[123,132,150,157,174,181,195],{"type":23,"value":124,"position":125},"kScript v3 adds JavaScript-style ",{"start":126,"end":129},{"line":127,"column":27,"offset":128},12,345,{"line":127,"column":130,"offset":131},34,378,{"type":14,"tagName":133,"properties":134,"children":135,"position":145},"strong",{},[136],{"type":23,"value":137,"position":138},"arrow lambdas",{"start":139,"end":142},{"line":127,"column":140,"offset":141},36,380,{"line":127,"column":143,"offset":144},49,393,{"start":146,"end":147},{"line":127,"column":130,"offset":131},{"line":127,"column":148,"offset":149},51,395,{"type":23,"value":151,"position":152}," and a family of ",{"start":153,"end":154},{"line":127,"column":148,"offset":149},{"line":127,"column":155,"offset":156},68,412,{"type":14,"tagName":133,"properties":158,"children":159,"position":169},{},[160],{"type":23,"value":161,"position":162},"reducer methods",{"start":163,"end":166},{"line":127,"column":164,"offset":165},70,414,{"line":127,"column":167,"offset":168},85,429,{"start":170,"end":171},{"line":127,"column":155,"offset":156},{"line":127,"column":172,"offset":173},87,431,{"type":23,"value":175,"position":176}," on arrays. Together they replace most explicit ",{"start":177,"end":178},{"line":127,"column":172,"offset":173},{"line":127,"column":179,"offset":180},135,479,{"type":14,"tagName":182,"properties":183,"children":184,"position":192},"code",{},[185],{"type":23,"value":186,"position":187},"for",{"start":188,"end":189},{"line":127,"column":179,"offset":180},{"line":127,"column":190,"offset":191},140,484,{"start":193,"end":194},{"line":127,"column":179,"offset":180},{"line":127,"column":190,"offset":191},{"type":23,"value":196,"position":197}," loops with one-line transformations, and they are the recommended way to iterate: every reducer pass is automatically protected by the runtime's iteration watchdogs, and the analyzer type-checks the callback's element types.",{"start":198,"end":199},{"line":127,"column":190,"offset":191},{"line":127,"column":200,"offset":201},365,709,{"start":203,"end":204},{"line":127,"column":27,"offset":128},{"line":127,"column":200,"offset":201},{"type":23,"value":89},{"type":14,"tagName":120,"properties":207,"children":208,"position":237},{},[209,218,230],{"type":23,"value":210,"position":211},"Pine Script has no lambdas at all. A transformation that takes a Pine ",{"start":212,"end":215},{"line":213,"column":27,"offset":214},14,711,{"line":213,"column":216,"offset":217},71,781,{"type":14,"tagName":182,"properties":219,"children":220,"position":227},{},[221],{"type":23,"value":186,"position":222},{"start":223,"end":224},{"line":213,"column":216,"offset":217},{"line":213,"column":225,"offset":226},76,786,{"start":228,"end":229},{"line":213,"column":216,"offset":217},{"line":213,"column":225,"offset":226},{"type":23,"value":231,"position":232}," loop and manual accumulator state is typically a single expression in kScript: that conciseness is measured, not aspirational (the engine's own test suite asserts a representative transformation at half the Pine line count).",{"start":233,"end":234},{"line":213,"column":225,"offset":226},{"line":213,"column":235,"offset":236},301,1011,{"start":238,"end":239},{"line":213,"column":27,"offset":214},{"line":213,"column":235,"offset":236},{"type":23,"value":89},{"type":14,"tagName":102,"properties":242,"children":244,"position":253},{"id":243},"lambda-syntax",[245],{"type":23,"value":246,"position":247},"Lambda syntax",{"start":248,"end":250},{"line":112,"column":56,"offset":249},1016,{"line":112,"column":251,"offset":252},17,1029,{"start":254,"end":256},{"line":112,"column":27,"offset":255},1013,{"line":112,"column":251,"offset":252},{"type":23,"value":89},{"type":11,"children":259},[260],{"type":14,"tagName":261,"properties":262,"children":266,"data":-1},"pre",{"class":263,"style":264,"tabindex":265},"shiki shiki-themes github-dark github-light","--shiki-dark:#e1e4e8;--shiki-light:#24292e;--shiki-dark-bg:#24292e;--shiki-light-bg:#fff","0",[267],{"type":14,"tagName":182,"properties":268,"children":269},{},[270,329,330,377,378,432,433,471,472,480,481,484,485],{"type":14,"tagName":35,"properties":271,"children":273},{"class":272},"line",[274,280,286,291,297,303,308,313,318,323],{"type":14,"tagName":35,"properties":275,"children":277},{"style":276},"--shiki-dark:#F97583;--shiki-light:#D73A49",[278],{"type":23,"value":279},"var",{"type":14,"tagName":35,"properties":281,"children":283},{"style":282},"--shiki-dark:#B392F0;--shiki-light:#6F42C1",[284],{"type":23,"value":285}," double",{"type":14,"tagName":35,"properties":287,"children":288},{"style":276},[289],{"type":23,"value":290}," =",{"type":14,"tagName":35,"properties":292,"children":294},{"style":293},"--shiki-dark:#E1E4E8;--shiki-light:#24292E",[295],{"type":23,"value":296}," (",{"type":14,"tagName":35,"properties":298,"children":300},{"style":299},"--shiki-dark:#FFAB70;--shiki-light:#E36209",[301],{"type":23,"value":302},"x",{"type":14,"tagName":35,"properties":304,"children":305},{"style":293},[306],{"type":23,"value":307},") ",{"type":14,"tagName":35,"properties":309,"children":310},{"style":276},[311],{"type":23,"value":312},"=>",{"type":14,"tagName":35,"properties":314,"children":315},{"style":293},[316],{"type":23,"value":317}," x ",{"type":14,"tagName":35,"properties":319,"children":320},{"style":276},[321],{"type":23,"value":322},"*",{"type":14,"tagName":35,"properties":324,"children":326},{"style":325},"--shiki-dark:#79B8FF;--shiki-light:#005CC5",[327],{"type":23,"value":328}," 2",{"type":23,"value":89},{"type":14,"tagName":35,"properties":331,"children":332},{"class":272},[333,337,342,346,350,354,359,364,368,372],{"type":14,"tagName":35,"properties":334,"children":335},{"style":276},[336],{"type":23,"value":279},{"type":14,"tagName":35,"properties":338,"children":339},{"style":282},[340],{"type":23,"value":341}," label",{"type":14,"tagName":35,"properties":343,"children":344},{"style":276},[345],{"type":23,"value":290},{"type":14,"tagName":35,"properties":347,"children":348},{"style":293},[349],{"type":23,"value":296},{"type":14,"tagName":35,"properties":351,"children":352},{"style":299},[353],{"type":23,"value":120},{"type":14,"tagName":35,"properties":355,"children":356},{"style":293},[357],{"type":23,"value":358},", ",{"type":14,"tagName":35,"properties":360,"children":361},{"style":299},[362],{"type":23,"value":363},"side",{"type":14,"tagName":35,"properties":365,"children":366},{"style":293},[367],{"type":23,"value":307},{"type":14,"tagName":35,"properties":369,"children":370},{"style":276},[371],{"type":23,"value":312},{"type":14,"tagName":35,"properties":373,"children":374},{"style":293},[375],{"type":23,"value":376}," {",{"type":23,"value":89},{"type":14,"tagName":35,"properties":379,"children":380},{"class":272},[381,386,391,396,401,406,411,416,422,427],{"type":14,"tagName":35,"properties":382,"children":383},{"style":276},[384],{"type":23,"value":385},"  var",{"type":14,"tagName":35,"properties":387,"children":388},{"style":293},[389],{"type":23,"value":390}," prefix ",{"type":14,"tagName":35,"properties":392,"children":393},{"style":276},[394],{"type":23,"value":395},"=",{"type":14,"tagName":35,"properties":397,"children":398},{"style":293},[399],{"type":23,"value":400}," side ",{"type":14,"tagName":35,"properties":402,"children":403},{"style":276},[404],{"type":23,"value":405},">",{"type":14,"tagName":35,"properties":407,"children":408},{"style":325},[409],{"type":23,"value":410}," 0",{"type":14,"tagName":35,"properties":412,"children":413},{"style":276},[414],{"type":23,"value":415}," ?",{"type":14,"tagName":35,"properties":417,"children":419},{"style":418},"--shiki-dark:#9ECBFF;--shiki-light:#032F62",[420],{"type":23,"value":421}," \"bid\"",{"type":14,"tagName":35,"properties":423,"children":424},{"style":276},[425],{"type":23,"value":426}," :",{"type":14,"tagName":35,"properties":428,"children":429},{"style":418},[430],{"type":23,"value":431}," \"ask\"",{"type":23,"value":89},{"type":14,"tagName":35,"properties":434,"children":435},{"class":272},[436,441,446,451,456,461,466],{"type":14,"tagName":35,"properties":437,"children":438},{"style":276},[439],{"type":23,"value":440},"  return",{"type":14,"tagName":35,"properties":442,"children":443},{"style":282},[444],{"type":23,"value":445}," format",{"type":14,"tagName":35,"properties":447,"children":448},{"style":293},[449],{"type":23,"value":450},"(",{"type":14,"tagName":35,"properties":452,"children":453},{"style":418},[454],{"type":23,"value":455},"\"{0} @ {1}\"",{"type":14,"tagName":35,"properties":457,"children":458},{"style":293},[459],{"type":23,"value":460},", prefix, ",{"type":14,"tagName":35,"properties":462,"children":463},{"style":282},[464],{"type":23,"value":465},"tostring",{"type":14,"tagName":35,"properties":467,"children":468},{"style":293},[469],{"type":23,"value":470},"(p))",{"type":23,"value":89},{"type":14,"tagName":35,"properties":473,"children":474},{"class":272},[475],{"type":14,"tagName":35,"properties":476,"children":477},{"style":293},[478],{"type":23,"value":479},"}",{"type":23,"value":89},{"type":14,"tagName":35,"properties":482,"children":483},{"class":272},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":486,"children":487},{"class":272},[488,492,497,501,505,509,514,519],{"type":14,"tagName":35,"properties":489,"children":490},{"style":276},[491],{"type":23,"value":279},{"type":14,"tagName":35,"properties":493,"children":494},{"style":293},[495],{"type":23,"value":496}," y ",{"type":14,"tagName":35,"properties":498,"children":499},{"style":276},[500],{"type":23,"value":395},{"type":14,"tagName":35,"properties":502,"children":503},{"style":282},[504],{"type":23,"value":285},{"type":14,"tagName":35,"properties":506,"children":507},{"style":293},[508],{"type":23,"value":450},{"type":14,"tagName":35,"properties":510,"children":511},{"style":325},[512],{"type":23,"value":513},"21",{"type":14,"tagName":35,"properties":515,"children":516},{"style":293},[517],{"type":23,"value":518},")          ",{"type":14,"tagName":35,"properties":520,"children":522},{"style":521},"--shiki-dark:#6A737D;--shiki-light:#6A737D",[523],{"type":23,"value":524},"// 42",{"type":23,"value":89},{"type":14,"tagName":120,"properties":527,"children":528,"position":538},{},[529],{"type":23,"value":530,"position":531},"Two forms:",{"start":532,"end":535},{"line":533,"column":27,"offset":534},28,1230,{"line":533,"column":536,"offset":537},11,1240,{"start":539,"end":540},{"line":533,"column":27,"offset":534},{"line":533,"column":536,"offset":537},{"type":23,"value":89},{"type":14,"tagName":543,"properties":544,"children":545,"position":669},"ul",{},[546,547,599,600,668],{"type":23,"value":89},{"type":14,"tagName":548,"properties":549,"children":550,"position":595},"li",{},[551,568,575,588],{"type":14,"tagName":133,"properties":552,"children":553,"position":562},{},[554],{"type":23,"value":555,"position":556},"Expression body",{"start":557,"end":559},{"line":29,"column":67,"offset":558},1245,{"line":29,"column":560,"offset":561},20,1260,{"start":563,"end":565},{"line":29,"column":32,"offset":564},1243,{"line":29,"column":566,"offset":567},22,1262,{"type":23,"value":569,"position":570},": ",{"start":571,"end":572},{"line":29,"column":566,"offset":567},{"line":29,"column":573,"offset":574},24,1264,{"type":14,"tagName":182,"properties":576,"children":577,"position":585},{},[578],{"type":23,"value":579,"position":580},"(x) => x * 2",{"start":581,"end":582},{"line":29,"column":573,"offset":574},{"line":29,"column":583,"offset":584},38,1278,{"start":586,"end":587},{"line":29,"column":573,"offset":574},{"line":29,"column":583,"offset":584},{"type":23,"value":589,"position":590},", the expression is the return value.",{"start":591,"end":592},{"line":29,"column":583,"offset":584},{"line":29,"column":593,"offset":594},75,1315,{"start":596,"end":598},{"line":29,"column":27,"offset":597},1241,{"line":29,"column":593,"offset":594},{"type":23,"value":89},{"type":14,"tagName":548,"properties":601,"children":602,"position":664},{},[603,619,625,638,645,657],{"type":14,"tagName":133,"properties":604,"children":605,"position":614},{},[606],{"type":23,"value":607,"position":608},"Block body",{"start":609,"end":611},{"line":28,"column":67,"offset":610},1320,{"line":28,"column":612,"offset":613},15,1330,{"start":615,"end":617},{"line":28,"column":32,"offset":616},1318,{"line":28,"column":251,"offset":618},1332,{"type":23,"value":569,"position":620},{"start":621,"end":622},{"line":28,"column":251,"offset":618},{"line":28,"column":623,"offset":624},19,1334,{"type":14,"tagName":182,"properties":626,"children":627,"position":635},{},[628],{"type":23,"value":629,"position":630},"(x) => { ... return v }",{"start":631,"end":632},{"line":28,"column":623,"offset":624},{"line":28,"column":633,"offset":634},44,1359,{"start":636,"end":637},{"line":28,"column":623,"offset":624},{"line":28,"column":633,"offset":634},{"type":23,"value":639,"position":640},", with explicit ",{"start":641,"end":642},{"line":28,"column":633,"offset":634},{"line":28,"column":643,"offset":644},60,1375,{"type":14,"tagName":182,"properties":646,"children":647,"position":654},{},[648],{"type":23,"value":649,"position":650},"return",{"start":651,"end":652},{"line":28,"column":643,"offset":644},{"line":28,"column":155,"offset":653},1383,{"start":655,"end":656},{"line":28,"column":643,"offset":644},{"line":28,"column":155,"offset":653},{"type":23,"value":658,"position":659},".",{"start":660,"end":661},{"line":28,"column":155,"offset":653},{"line":28,"column":662,"offset":663},69,1384,{"start":665,"end":667},{"line":28,"column":27,"offset":666},1316,{"line":28,"column":662,"offset":663},{"type":23,"value":89},{"start":670,"end":671},{"line":29,"column":27,"offset":597},{"line":28,"column":662,"offset":663},{"type":23,"value":89},{"type":14,"tagName":120,"properties":674,"children":675,"position":727},{},[676,684,696,703,720],{"type":23,"value":677,"position":678},"Lambdas are values. Store them in ",{"start":679,"end":681},{"line":33,"column":27,"offset":680},1386,{"line":33,"column":682,"offset":683},35,1420,{"type":14,"tagName":182,"properties":685,"children":686,"position":693},{},[687],{"type":23,"value":279,"position":688},{"start":689,"end":690},{"line":33,"column":682,"offset":683},{"line":33,"column":691,"offset":692},40,1425,{"start":694,"end":695},{"line":33,"column":682,"offset":683},{"line":33,"column":691,"offset":692},{"type":23,"value":697,"position":698}," variables, pass them to functions and reducers, return them from functions, and call them directly. They ",{"start":699,"end":700},{"line":33,"column":691,"offset":692},{"line":33,"column":701,"offset":702},146,1531,{"type":14,"tagName":133,"properties":704,"children":705,"position":715},{},[706],{"type":23,"value":707,"position":708},"close over",{"start":709,"end":712},{"line":33,"column":710,"offset":711},148,1533,{"line":33,"column":713,"offset":714},158,1543,{"start":716,"end":717},{"line":33,"column":701,"offset":702},{"line":33,"column":718,"offset":719},160,1545,{"type":23,"value":721,"position":722}," the surrounding scope:",{"start":723,"end":724},{"line":33,"column":718,"offset":719},{"line":33,"column":725,"offset":726},183,1568,{"start":728,"end":729},{"line":33,"column":27,"offset":680},{"line":33,"column":725,"offset":726},{"type":23,"value":89},{"type":11,"children":732},[733],{"type":14,"tagName":261,"properties":734,"children":735,"data":-1},{"class":263,"style":264,"tabindex":265},[736],{"type":14,"tagName":182,"properties":737,"children":738},{},[739,769,770],{"type":14,"tagName":35,"properties":740,"children":741},{"class":272},[742,746,751,755,760,764],{"type":14,"tagName":35,"properties":743,"children":744},{"style":276},[745],{"type":23,"value":279},{"type":14,"tagName":35,"properties":747,"children":748},{"style":293},[749],{"type":23,"value":750}," threshold ",{"type":14,"tagName":35,"properties":752,"children":753},{"style":276},[754],{"type":23,"value":395},{"type":14,"tagName":35,"properties":756,"children":757},{"style":293},[758],{"type":23,"value":759}," high ",{"type":14,"tagName":35,"properties":761,"children":762},{"style":276},[763],{"type":23,"value":322},{"type":14,"tagName":35,"properties":765,"children":766},{"style":325},[767],{"type":23,"value":768}," 0.99",{"type":23,"value":89},{"type":14,"tagName":35,"properties":771,"children":772},{"class":272},[773,777,782,786,791,796,801,805,809,813,818,822],{"type":14,"tagName":35,"properties":774,"children":775},{"style":276},[776],{"type":23,"value":279},{"type":14,"tagName":35,"properties":778,"children":779},{"style":293},[780],{"type":23,"value":781}," nearHigh ",{"type":14,"tagName":35,"properties":783,"children":784},{"style":276},[785],{"type":23,"value":395},{"type":14,"tagName":35,"properties":787,"children":788},{"style":293},[789],{"type":23,"value":790}," prices.",{"type":14,"tagName":35,"properties":792,"children":793},{"style":282},[794],{"type":23,"value":795},"filter",{"type":14,"tagName":35,"properties":797,"children":798},{"style":293},[799],{"type":23,"value":800},"((",{"type":14,"tagName":35,"properties":802,"children":803},{"style":299},[804],{"type":23,"value":120},{"type":14,"tagName":35,"properties":806,"children":807},{"style":293},[808],{"type":23,"value":307},{"type":14,"tagName":35,"properties":810,"children":811},{"style":276},[812],{"type":23,"value":312},{"type":14,"tagName":35,"properties":814,"children":815},{"style":293},[816],{"type":23,"value":817}," p ",{"type":14,"tagName":35,"properties":819,"children":820},{"style":276},[821],{"type":23,"value":405},{"type":14,"tagName":35,"properties":823,"children":824},{"style":293},[825],{"type":23,"value":826}," threshold)",{"type":23,"value":89},{"type":14,"tagName":829,"properties":830,"children":832},"hint",{"type":831},"warning",[833],{"type":14,"tagName":120,"properties":834,"children":835,"position":938},{},[836,892,899,912,919,931],{"type":14,"tagName":133,"properties":837,"children":838,"position":886},{},[839,848,860,867,879],{"type":23,"value":840,"position":841},"Lambdas cannot be stored in ",{"start":842,"end":845},{"line":843,"column":32,"offset":844},42,1699,{"line":843,"column":846,"offset":847},31,1727,{"type":14,"tagName":182,"properties":849,"children":850,"position":857},{},[851],{"type":23,"value":852,"position":853},"persist",{"start":854,"end":855},{"line":843,"column":846,"offset":847},{"line":843,"column":691,"offset":856},1736,{"start":858,"end":859},{"line":843,"column":846,"offset":847},{"line":843,"column":691,"offset":856},{"type":23,"value":861,"position":862},"/",{"start":863,"end":864},{"line":843,"column":691,"offset":856},{"line":843,"column":865,"offset":866},41,1737,{"type":14,"tagName":182,"properties":868,"children":869,"position":876},{},[870],{"type":23,"value":871,"position":872},"static",{"start":873,"end":874},{"line":843,"column":865,"offset":866},{"line":843,"column":143,"offset":875},1745,{"start":877,"end":878},{"line":843,"column":865,"offset":866},{"line":843,"column":143,"offset":875},{"type":23,"value":880,"position":881}," state.",{"start":882,"end":883},{"line":843,"column":143,"offset":875},{"line":843,"column":884,"offset":885},56,1752,{"start":887,"end":889},{"line":843,"column":27,"offset":888},1697,{"line":843,"column":890,"offset":891},58,1754,{"type":23,"value":893,"position":894}," Carried state must survive the engine's snapshot-and-rollback machinery, and closures cannot be safely snapshotted. The compiler rejects ",{"start":895,"end":896},{"line":843,"column":890,"offset":891},{"line":843,"column":897,"offset":898},196,1892,{"type":14,"tagName":182,"properties":900,"children":901,"position":909},{},[902],{"type":23,"value":903,"position":904},"persist f = (x) => x",{"start":905,"end":906},{"line":843,"column":897,"offset":898},{"line":843,"column":907,"offset":908},218,1914,{"start":910,"end":911},{"line":843,"column":897,"offset":898},{"line":843,"column":907,"offset":908},{"type":23,"value":913,"position":914}," at the declaration with a clear error. Regular ",{"start":915,"end":916},{"line":843,"column":907,"offset":908},{"line":843,"column":917,"offset":918},266,1962,{"type":14,"tagName":182,"properties":920,"children":921,"position":928},{},[922],{"type":23,"value":279,"position":923},{"start":924,"end":925},{"line":843,"column":917,"offset":918},{"line":843,"column":926,"offset":927},271,1967,{"start":929,"end":930},{"line":843,"column":917,"offset":918},{"line":843,"column":926,"offset":927},{"type":23,"value":932,"position":933}," lambdas are recreated each bar and are always safe.",{"start":934,"end":935},{"line":843,"column":926,"offset":927},{"line":843,"column":936,"offset":937},323,2019,{"start":939,"end":940},{"line":843,"column":27,"offset":888},{"line":843,"column":936,"offset":937},{"type":23,"value":89},{"type":14,"tagName":102,"properties":943,"children":945,"position":955},{"id":944},"the-reducer-methods",[946],{"type":23,"value":947,"position":948},"The reducer methods",{"start":949,"end":952},{"line":950,"column":56,"offset":951},47,2040,{"line":950,"column":953,"offset":954},23,2059,{"start":956,"end":958},{"line":950,"column":27,"offset":957},2037,{"line":950,"column":953,"offset":954},{"type":23,"value":89},{"type":14,"tagName":120,"properties":961,"children":962,"position":992},{},[963,971,985],{"type":23,"value":964,"position":965},"All seven take a lambda and iterate a ",{"start":966,"end":968},{"line":143,"column":27,"offset":967},2061,{"line":143,"column":969,"offset":970},39,2099,{"type":14,"tagName":133,"properties":972,"children":973,"position":981},{},[974],{"type":23,"value":975,"position":976},"snapshot",{"start":977,"end":979},{"line":143,"column":865,"offset":978},2101,{"line":143,"column":143,"offset":980},2109,{"start":982,"end":983},{"line":143,"column":969,"offset":970},{"line":143,"column":148,"offset":984},2111,{"type":23,"value":986,"position":987}," of the array (mutating the array inside the callback does not affect the active pass):",{"start":988,"end":989},{"line":143,"column":148,"offset":984},{"line":143,"column":990,"offset":991},138,2198,{"start":993,"end":994},{"line":143,"column":27,"offset":967},{"line":143,"column":990,"offset":991},{"type":23,"value":996},"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",{"type":14,"tagName":998,"properties":999,"children":1000,"position":1549},"table",{},[1001,1061],{"type":14,"tagName":1002,"properties":1003,"children":1004,"position":1058},"thead",{},[1005],{"type":14,"tagName":1006,"properties":1007,"children":1008,"position":1055},"tr",{},[1009,1026,1041],{"type":14,"tagName":1010,"properties":1011,"children":1012,"position":1021},"th",{},[1013],{"type":23,"value":1014,"position":1015},"Method",{"start":1016,"end":1018},{"line":148,"column":32,"offset":1017},2202,{"line":148,"column":1019,"offset":1020},9,2208,{"start":1022,"end":1024},{"line":148,"column":27,"offset":1023},2200,{"line":148,"column":61,"offset":1025},2209,{"type":14,"tagName":1010,"properties":1027,"children":1028,"position":1036},{},[1029],{"type":23,"value":1030,"position":1031},"Callback",{"start":1032,"end":1034},{"line":148,"column":127,"offset":1033},2211,{"line":148,"column":560,"offset":1035},2219,{"start":1037,"end":1038},{"line":148,"column":61,"offset":1025},{"line":148,"column":1039,"offset":1040},21,2220,{"type":14,"tagName":1010,"properties":1042,"children":1043,"position":1051},{},[1044],{"type":23,"value":1045,"position":1046},"Returns",{"start":1047,"end":1049},{"line":148,"column":953,"offset":1048},2222,{"line":148,"column":28,"offset":1050},2229,{"start":1052,"end":1053},{"line":148,"column":1039,"offset":1040},{"line":148,"column":33,"offset":1054},2231,{"start":1056,"end":1057},{"line":148,"column":27,"offset":1023},{"line":148,"column":33,"offset":1054},{"start":1059,"end":1060},{"line":148,"column":27,"offset":1023},{"line":148,"column":33,"offset":1054},{"type":14,"tagName":1062,"properties":1063,"children":1064,"position":1546},"tbody",{},[1065,1132,1196,1264,1325,1400,1473],{"type":14,"tagName":1006,"properties":1066,"children":1067,"position":1129},{},[1068,1092,1113],{"type":14,"tagName":1069,"properties":1070,"children":1071,"position":1086},"td",{},[1072],{"type":14,"tagName":182,"properties":1073,"children":1074,"position":1083},{},[1075],{"type":23,"value":1076,"position":1077},"map(fn)",{"start":1078,"end":1081},{"line":1079,"column":32,"offset":1080},53,2248,{"line":1079,"column":127,"offset":1082},2257,{"start":1084,"end":1085},{"line":1079,"column":32,"offset":1080},{"line":1079,"column":127,"offset":1082},{"start":1087,"end":1089},{"line":1079,"column":27,"offset":1088},2246,{"line":1079,"column":1090,"offset":1091},13,2258,{"type":14,"tagName":1069,"properties":1093,"children":1094,"position":1108},{},[1095],{"type":14,"tagName":182,"properties":1096,"children":1097,"position":1105},{},[1098],{"type":23,"value":1099,"position":1100},"(value, index?) => newValue",{"start":1101,"end":1103},{"line":1079,"column":612,"offset":1102},2260,{"line":1079,"column":633,"offset":1104},2289,{"start":1106,"end":1107},{"line":1079,"column":612,"offset":1102},{"line":1079,"column":633,"offset":1104},{"start":1109,"end":1110},{"line":1079,"column":1090,"offset":1091},{"line":1079,"column":1111,"offset":1112},45,2290,{"type":14,"tagName":1069,"properties":1114,"children":1115,"position":1124},{},[1116],{"type":23,"value":1117,"position":1118},"New array of transformed values",{"start":1119,"end":1121},{"line":1079,"column":950,"offset":1120},2292,{"line":1079,"column":1122,"offset":1123},78,2323,{"start":1125,"end":1126},{"line":1079,"column":1111,"offset":1112},{"line":1079,"column":1127,"offset":1128},80,2325,{"start":1130,"end":1131},{"line":1079,"column":27,"offset":1088},{"line":1079,"column":1127,"offset":1128},{"type":14,"tagName":1006,"properties":1133,"children":1134,"position":1193},{},[1135,1157,1179],{"type":14,"tagName":1069,"properties":1136,"children":1137,"position":1152},{},[1138],{"type":14,"tagName":182,"properties":1139,"children":1140,"position":1149},{},[1141],{"type":23,"value":1142,"position":1143},"filter(fn)",{"start":1144,"end":1147},{"line":1145,"column":32,"offset":1146},54,2328,{"line":1145,"column":612,"offset":1148},2340,{"start":1150,"end":1151},{"line":1145,"column":32,"offset":1146},{"line":1145,"column":612,"offset":1148},{"start":1153,"end":1155},{"line":1145,"column":27,"offset":1154},2326,{"line":1145,"column":112,"offset":1156},2341,{"type":14,"tagName":1069,"properties":1158,"children":1159,"position":1175},{},[1160],{"type":14,"tagName":182,"properties":1161,"children":1162,"position":1172},{},[1163],{"type":23,"value":1164,"position":1165},"(value, index?) => boolean",{"start":1166,"end":1169},{"line":1145,"column":1167,"offset":1168},18,2343,{"line":1145,"column":1170,"offset":1171},46,2371,{"start":1173,"end":1174},{"line":1145,"column":1167,"offset":1168},{"line":1145,"column":1170,"offset":1171},{"start":1176,"end":1177},{"line":1145,"column":112,"offset":1156},{"line":1145,"column":950,"offset":1178},2372,{"type":14,"tagName":1069,"properties":1180,"children":1181,"position":1189},{},[1182],{"type":23,"value":1183,"position":1184},"New array of passing values",{"start":1185,"end":1187},{"line":1145,"column":143,"offset":1186},2374,{"line":1145,"column":225,"offset":1188},2401,{"start":1190,"end":1191},{"line":1145,"column":950,"offset":1178},{"line":1145,"column":1122,"offset":1192},2403,{"start":1194,"end":1195},{"line":1145,"column":27,"offset":1154},{"line":1145,"column":1122,"offset":1192},{"type":14,"tagName":1006,"properties":1197,"children":1198,"position":1261},{},[1199,1222,1245],{"type":14,"tagName":1069,"properties":1200,"children":1201,"position":1216},{},[1202],{"type":14,"tagName":182,"properties":1203,"children":1204,"position":1213},{},[1205],{"type":23,"value":1206,"position":1207},"reduce(fn, initial)",{"start":1208,"end":1211},{"line":1209,"column":32,"offset":1210},55,2406,{"line":1209,"column":573,"offset":1212},2427,{"start":1214,"end":1215},{"line":1209,"column":32,"offset":1210},{"line":1209,"column":573,"offset":1212},{"start":1217,"end":1219},{"line":1209,"column":27,"offset":1218},2404,{"line":1209,"column":1220,"offset":1221},25,2428,{"type":14,"tagName":1069,"properties":1223,"children":1224,"position":1240},{},[1225],{"type":14,"tagName":182,"properties":1226,"children":1227,"position":1237},{},[1228],{"type":23,"value":1229,"position":1230},"(accumulator, value, index?) => accumulator",{"start":1231,"end":1234},{"line":1209,"column":1232,"offset":1233},27,2430,{"line":1209,"column":1235,"offset":1236},72,2475,{"start":1238,"end":1239},{"line":1209,"column":1232,"offset":1233},{"line":1209,"column":1235,"offset":1236},{"start":1241,"end":1242},{"line":1209,"column":1220,"offset":1221},{"line":1209,"column":1243,"offset":1244},73,2476,{"type":14,"tagName":1069,"properties":1246,"children":1247,"position":1256},{},[1248],{"type":23,"value":1249,"position":1250},"The final accumulator",{"start":1251,"end":1253},{"line":1209,"column":593,"offset":1252},2478,{"line":1209,"column":1254,"offset":1255},96,2499,{"start":1257,"end":1258},{"line":1209,"column":1243,"offset":1244},{"line":1209,"column":1259,"offset":1260},98,2501,{"start":1262,"end":1263},{"line":1209,"column":27,"offset":1218},{"line":1209,"column":1259,"offset":1260},{"type":14,"tagName":1006,"properties":1265,"children":1266,"position":1322},{},[1267,1288,1308],{"type":14,"tagName":1069,"properties":1268,"children":1269,"position":1283},{},[1270],{"type":14,"tagName":182,"properties":1271,"children":1272,"position":1280},{},[1273],{"type":23,"value":1274,"position":1275},"forEach(fn)",{"start":1276,"end":1278},{"line":884,"column":32,"offset":1277},2504,{"line":884,"column":112,"offset":1279},2517,{"start":1281,"end":1282},{"line":884,"column":32,"offset":1277},{"line":884,"column":112,"offset":1279},{"start":1284,"end":1286},{"line":884,"column":27,"offset":1285},2502,{"line":884,"column":251,"offset":1287},2518,{"type":14,"tagName":1069,"properties":1289,"children":1290,"position":1304},{},[1291],{"type":14,"tagName":182,"properties":1292,"children":1293,"position":1301},{},[1294],{"type":23,"value":1295,"position":1296},"(value, index?) => void",{"start":1297,"end":1299},{"line":884,"column":623,"offset":1298},2520,{"line":884,"column":633,"offset":1300},2545,{"start":1302,"end":1303},{"line":884,"column":623,"offset":1298},{"line":884,"column":633,"offset":1300},{"start":1305,"end":1306},{"line":884,"column":251,"offset":1287},{"line":884,"column":1111,"offset":1307},2546,{"type":14,"tagName":1069,"properties":1309,"children":1310,"position":1318},{},[1311],{"type":23,"value":1312,"position":1313},"Nothing (side effects)",{"start":1314,"end":1316},{"line":884,"column":950,"offset":1315},2548,{"line":884,"column":662,"offset":1317},2570,{"start":1319,"end":1320},{"line":884,"column":1111,"offset":1307},{"line":884,"column":216,"offset":1321},2572,{"start":1323,"end":1324},{"line":884,"column":27,"offset":1285},{"line":884,"column":216,"offset":1321},{"type":14,"tagName":1006,"properties":1326,"children":1327,"position":1397},{},[1328,1350,1369],{"type":14,"tagName":1069,"properties":1329,"children":1330,"position":1345},{},[1331],{"type":14,"tagName":182,"properties":1332,"children":1333,"position":1342},{},[1334],{"type":23,"value":1335,"position":1336},"find(fn)",{"start":1337,"end":1340},{"line":1338,"column":32,"offset":1339},57,2575,{"line":1338,"column":1090,"offset":1341},2585,{"start":1343,"end":1344},{"line":1338,"column":32,"offset":1339},{"line":1338,"column":1090,"offset":1341},{"start":1346,"end":1348},{"line":1338,"column":27,"offset":1347},2573,{"line":1338,"column":213,"offset":1349},2586,{"type":14,"tagName":1069,"properties":1351,"children":1352,"position":1365},{},[1353],{"type":14,"tagName":182,"properties":1354,"children":1355,"position":1362},{},[1356],{"type":23,"value":1164,"position":1357},{"start":1358,"end":1360},{"line":1338,"column":112,"offset":1359},2588,{"line":1338,"column":633,"offset":1361},2616,{"start":1363,"end":1364},{"line":1338,"column":112,"offset":1359},{"line":1338,"column":633,"offset":1361},{"start":1366,"end":1367},{"line":1338,"column":213,"offset":1349},{"line":1338,"column":1111,"offset":1368},2617,{"type":14,"tagName":1069,"properties":1370,"children":1371,"position":1393},{},[1372,1380],{"type":23,"value":1373,"position":1374},"First match, or ",{"start":1375,"end":1377},{"line":1338,"column":950,"offset":1376},2619,{"line":1338,"column":1378,"offset":1379},63,2635,{"type":14,"tagName":182,"properties":1381,"children":1382,"position":1390},{},[1383],{"type":23,"value":1384,"position":1385},"na",{"start":1386,"end":1387},{"line":1338,"column":1378,"offset":1379},{"line":1338,"column":1388,"offset":1389},67,2639,{"start":1391,"end":1392},{"line":1338,"column":1378,"offset":1379},{"line":1338,"column":1388,"offset":1389},{"start":1394,"end":1395},{"line":1338,"column":1111,"offset":1368},{"line":1338,"column":662,"offset":1396},2641,{"start":1398,"end":1399},{"line":1338,"column":27,"offset":1347},{"line":1338,"column":662,"offset":1396},{"type":14,"tagName":1006,"properties":1401,"children":1402,"position":1470},{},[1403,1424,1443],{"type":14,"tagName":1069,"properties":1404,"children":1405,"position":1419},{},[1406],{"type":14,"tagName":182,"properties":1407,"children":1408,"position":1416},{},[1409],{"type":23,"value":1410,"position":1411},"some(fn)",{"start":1412,"end":1414},{"line":890,"column":32,"offset":1413},2644,{"line":890,"column":1090,"offset":1415},2654,{"start":1417,"end":1418},{"line":890,"column":32,"offset":1413},{"line":890,"column":1090,"offset":1415},{"start":1420,"end":1422},{"line":890,"column":27,"offset":1421},2642,{"line":890,"column":213,"offset":1423},2655,{"type":14,"tagName":1069,"properties":1425,"children":1426,"position":1439},{},[1427],{"type":14,"tagName":182,"properties":1428,"children":1429,"position":1436},{},[1430],{"type":23,"value":1164,"position":1431},{"start":1432,"end":1434},{"line":890,"column":112,"offset":1433},2657,{"line":890,"column":633,"offset":1435},2685,{"start":1437,"end":1438},{"line":890,"column":112,"offset":1433},{"line":890,"column":633,"offset":1435},{"start":1440,"end":1441},{"line":890,"column":213,"offset":1423},{"line":890,"column":1111,"offset":1442},2686,{"type":14,"tagName":1069,"properties":1444,"children":1445,"position":1466},{},[1446,1459],{"type":14,"tagName":182,"properties":1447,"children":1448,"position":1456},{},[1449],{"type":23,"value":1450,"position":1451},"true",{"start":1452,"end":1454},{"line":890,"column":950,"offset":1453},2688,{"line":890,"column":1079,"offset":1455},2694,{"start":1457,"end":1458},{"line":890,"column":950,"offset":1453},{"line":890,"column":1079,"offset":1455},{"type":23,"value":1460,"position":1461}," if any match",{"start":1462,"end":1463},{"line":890,"column":1079,"offset":1455},{"line":890,"column":1464,"offset":1465},66,2707,{"start":1467,"end":1468},{"line":890,"column":1111,"offset":1442},{"line":890,"column":155,"offset":1469},2709,{"start":1471,"end":1472},{"line":890,"column":27,"offset":1421},{"line":890,"column":155,"offset":1469},{"type":14,"tagName":1006,"properties":1474,"children":1475,"position":1543},{},[1476,1498,1517],{"type":14,"tagName":1069,"properties":1477,"children":1478,"position":1493},{},[1479],{"type":14,"tagName":182,"properties":1480,"children":1481,"position":1490},{},[1482],{"type":23,"value":1483,"position":1484},"every(fn)",{"start":1485,"end":1488},{"line":1486,"column":32,"offset":1487},59,2712,{"line":1486,"column":213,"offset":1489},2723,{"start":1491,"end":1492},{"line":1486,"column":32,"offset":1487},{"line":1486,"column":213,"offset":1489},{"start":1494,"end":1496},{"line":1486,"column":27,"offset":1495},2710,{"line":1486,"column":612,"offset":1497},2724,{"type":14,"tagName":1069,"properties":1499,"children":1500,"position":1513},{},[1501],{"type":14,"tagName":182,"properties":1502,"children":1503,"position":1510},{},[1504],{"type":23,"value":1164,"position":1505},{"start":1506,"end":1508},{"line":1486,"column":251,"offset":1507},2726,{"line":1486,"column":1111,"offset":1509},2754,{"start":1511,"end":1512},{"line":1486,"column":251,"offset":1507},{"line":1486,"column":1111,"offset":1509},{"start":1514,"end":1515},{"line":1486,"column":612,"offset":1497},{"line":1486,"column":1170,"offset":1516},2755,{"type":14,"tagName":1069,"properties":1518,"children":1519,"position":1539},{},[1520,1533],{"type":14,"tagName":182,"properties":1521,"children":1522,"position":1530},{},[1523],{"type":23,"value":1450,"position":1524},{"start":1525,"end":1528},{"line":1486,"column":1526,"offset":1527},48,2757,{"line":1486,"column":1145,"offset":1529},2763,{"start":1531,"end":1532},{"line":1486,"column":1526,"offset":1527},{"line":1486,"column":1145,"offset":1529},{"type":23,"value":1534,"position":1535}," if all match",{"start":1536,"end":1537},{"line":1486,"column":1145,"offset":1529},{"line":1486,"column":1388,"offset":1538},2776,{"start":1540,"end":1541},{"line":1486,"column":1170,"offset":1516},{"line":1486,"column":662,"offset":1542},2778,{"start":1544,"end":1545},{"line":1486,"column":27,"offset":1495},{"line":1486,"column":662,"offset":1542},{"start":1547,"end":1548},{"line":1079,"column":27,"offset":1088},{"line":1486,"column":662,"offset":1542},{"start":1550,"end":1551},{"line":148,"column":27,"offset":1023},{"line":1486,"column":662,"offset":1542},{"type":23,"value":89},{"type":11,"children":1554},[1555],{"type":14,"tagName":261,"properties":1556,"children":1557,"data":-1},{"class":263,"style":264,"tabindex":265},[1558],{"type":14,"tagName":182,"properties":1559,"children":1560},{},[1561,1619,1620,1687,1688,1763,1764],{"type":14,"tagName":35,"properties":1562,"children":1563},{"class":272},[1564,1568,1573,1577,1582,1587,1591,1596,1600,1604,1609,1614],{"type":14,"tagName":35,"properties":1565,"children":1566},{"style":276},[1567],{"type":23,"value":279},{"type":14,"tagName":35,"properties":1569,"children":1570},{"style":293},[1571],{"type":23,"value":1572}," sizes ",{"type":14,"tagName":35,"properties":1574,"children":1575},{"style":276},[1576],{"type":23,"value":395},{"type":14,"tagName":35,"properties":1578,"children":1579},{"style":293},[1580],{"type":23,"value":1581}," book.",{"type":14,"tagName":35,"properties":1583,"children":1584},{"style":282},[1585],{"type":23,"value":1586},"map",{"type":14,"tagName":35,"properties":1588,"children":1589},{"style":293},[1590],{"type":23,"value":800},{"type":14,"tagName":35,"properties":1592,"children":1593},{"style":299},[1594],{"type":23,"value":1595},"lvl",{"type":14,"tagName":35,"properties":1597,"children":1598},{"style":293},[1599],{"type":23,"value":307},{"type":14,"tagName":35,"properties":1601,"children":1602},{"style":276},[1603],{"type":23,"value":312},{"type":14,"tagName":35,"properties":1605,"children":1606},{"style":293},[1607],{"type":23,"value":1608}," lvl[",{"type":14,"tagName":35,"properties":1610,"children":1611},{"style":325},[1612],{"type":23,"value":1613},"1",{"type":14,"tagName":35,"properties":1615,"children":1616},{"style":293},[1617],{"type":23,"value":1618},"])",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1621,"children":1622},{"class":272},[1623,1627,1632,1636,1640,1644,1648,1652,1656,1660,1664,1668,1673,1677,1682],{"type":14,"tagName":35,"properties":1624,"children":1625},{"style":276},[1626],{"type":23,"value":279},{"type":14,"tagName":35,"properties":1628,"children":1629},{"style":293},[1630],{"type":23,"value":1631}," bigLevels ",{"type":14,"tagName":35,"properties":1633,"children":1634},{"style":276},[1635],{"type":23,"value":395},{"type":14,"tagName":35,"properties":1637,"children":1638},{"style":293},[1639],{"type":23,"value":1581},{"type":14,"tagName":35,"properties":1641,"children":1642},{"style":282},[1643],{"type":23,"value":795},{"type":14,"tagName":35,"properties":1645,"children":1646},{"style":293},[1647],{"type":23,"value":800},{"type":14,"tagName":35,"properties":1649,"children":1650},{"style":299},[1651],{"type":23,"value":1595},{"type":14,"tagName":35,"properties":1653,"children":1654},{"style":293},[1655],{"type":23,"value":307},{"type":14,"tagName":35,"properties":1657,"children":1658},{"style":276},[1659],{"type":23,"value":312},{"type":14,"tagName":35,"properties":1661,"children":1662},{"style":293},[1663],{"type":23,"value":1608},{"type":14,"tagName":35,"properties":1665,"children":1666},{"style":325},[1667],{"type":23,"value":1613},{"type":14,"tagName":35,"properties":1669,"children":1670},{"style":293},[1671],{"type":23,"value":1672},"] ",{"type":14,"tagName":35,"properties":1674,"children":1675},{"style":276},[1676],{"type":23,"value":405},{"type":14,"tagName":35,"properties":1678,"children":1679},{"style":325},[1680],{"type":23,"value":1681}," 50",{"type":14,"tagName":35,"properties":1683,"children":1684},{"style":293},[1685],{"type":23,"value":1686},")",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1689,"children":1690},{"class":272},[1691,1695,1700,1704,1709,1714,1718,1723,1727,1732,1736,1740,1745,1750,1755,1759],{"type":14,"tagName":35,"properties":1692,"children":1693},{"style":276},[1694],{"type":23,"value":279},{"type":14,"tagName":35,"properties":1696,"children":1697},{"style":293},[1698],{"type":23,"value":1699}," totalSize ",{"type":14,"tagName":35,"properties":1701,"children":1702},{"style":276},[1703],{"type":23,"value":395},{"type":14,"tagName":35,"properties":1705,"children":1706},{"style":293},[1707],{"type":23,"value":1708}," sizes.",{"type":14,"tagName":35,"properties":1710,"children":1711},{"style":282},[1712],{"type":23,"value":1713},"reduce",{"type":14,"tagName":35,"properties":1715,"children":1716},{"style":293},[1717],{"type":23,"value":800},{"type":14,"tagName":35,"properties":1719,"children":1720},{"style":299},[1721],{"type":23,"value":1722},"sum",{"type":14,"tagName":35,"properties":1724,"children":1725},{"style":293},[1726],{"type":23,"value":358},{"type":14,"tagName":35,"properties":1728,"children":1729},{"style":299},[1730],{"type":23,"value":1731},"s",{"type":14,"tagName":35,"properties":1733,"children":1734},{"style":293},[1735],{"type":23,"value":307},{"type":14,"tagName":35,"properties":1737,"children":1738},{"style":276},[1739],{"type":23,"value":312},{"type":14,"tagName":35,"properties":1741,"children":1742},{"style":293},[1743],{"type":23,"value":1744}," sum ",{"type":14,"tagName":35,"properties":1746,"children":1747},{"style":276},[1748],{"type":23,"value":1749},"+",{"type":14,"tagName":35,"properties":1751,"children":1752},{"style":293},[1753],{"type":23,"value":1754}," s, ",{"type":14,"tagName":35,"properties":1756,"children":1757},{"style":325},[1758],{"type":23,"value":265},{"type":14,"tagName":35,"properties":1760,"children":1761},{"style":293},[1762],{"type":23,"value":1686},{"type":23,"value":89},{"type":14,"tagName":35,"properties":1765,"children":1766},{"class":272},[1767,1771,1776,1780,1784,1789,1793,1797,1801,1805,1809,1813,1817,1821,1826],{"type":14,"tagName":35,"properties":1768,"children":1769},{"style":276},[1770],{"type":23,"value":279},{"type":14,"tagName":35,"properties":1772,"children":1773},{"style":293},[1774],{"type":23,"value":1775}," hasWall ",{"type":14,"tagName":35,"properties":1777,"children":1778},{"style":276},[1779],{"type":23,"value":395},{"type":14,"tagName":35,"properties":1781,"children":1782},{"style":293},[1783],{"type":23,"value":1581},{"type":14,"tagName":35,"properties":1785,"children":1786},{"style":282},[1787],{"type":23,"value":1788},"some",{"type":14,"tagName":35,"properties":1790,"children":1791},{"style":293},[1792],{"type":23,"value":800},{"type":14,"tagName":35,"properties":1794,"children":1795},{"style":299},[1796],{"type":23,"value":1595},{"type":14,"tagName":35,"properties":1798,"children":1799},{"style":293},[1800],{"type":23,"value":307},{"type":14,"tagName":35,"properties":1802,"children":1803},{"style":276},[1804],{"type":23,"value":312},{"type":14,"tagName":35,"properties":1806,"children":1807},{"style":293},[1808],{"type":23,"value":1608},{"type":14,"tagName":35,"properties":1810,"children":1811},{"style":325},[1812],{"type":23,"value":1613},{"type":14,"tagName":35,"properties":1814,"children":1815},{"style":293},[1816],{"type":23,"value":1672},{"type":14,"tagName":35,"properties":1818,"children":1819},{"style":276},[1820],{"type":23,"value":405},{"type":14,"tagName":35,"properties":1822,"children":1823},{"style":325},[1824],{"type":23,"value":1825}," 500",{"type":14,"tagName":35,"properties":1827,"children":1828},{"style":293},[1829],{"type":23,"value":1686},{"type":23,"value":89},{"type":14,"tagName":1832,"properties":1833,"children":1835,"position":1843},"h3",{"id":1834},"callback-arity-is-lenient",[1836],{"type":23,"value":1837,"position":1838},"Callback arity is lenient",{"start":1839,"end":1841},{"line":1388,"column":67,"offset":1840},2990,{"line":1388,"column":28,"offset":1842},3015,{"start":1844,"end":1846},{"line":1388,"column":27,"offset":1845},2986,{"line":1388,"column":28,"offset":1842},{"type":23,"value":89},{"type":14,"tagName":120,"properties":1849,"children":1850,"position":1878},{},[1851,1859,1871],{"type":23,"value":1852,"position":1853},"A callback may declare fewer or more parameters than the method supplies; parameters the method does not provide are bound to ",{"start":1854,"end":1856},{"line":662,"column":27,"offset":1855},3017,{"line":662,"column":1857,"offset":1858},127,3143,{"type":14,"tagName":182,"properties":1860,"children":1861,"position":1868},{},[1862],{"type":23,"value":1384,"position":1863},{"start":1864,"end":1865},{"line":662,"column":1857,"offset":1858},{"line":662,"column":1866,"offset":1867},131,3147,{"start":1869,"end":1870},{"line":662,"column":1857,"offset":1858},{"line":662,"column":1866,"offset":1867},{"type":23,"value":1872,"position":1873},". Direct lambda calls (not through a reducer) keep strict arity checking. This mirrors how every mainstream language treats callbacks and keeps one-parameter lambdas clean.",{"start":1874,"end":1875},{"line":662,"column":1866,"offset":1867},{"line":662,"column":1876,"offset":1877},303,3319,{"start":1879,"end":1880},{"line":662,"column":27,"offset":1855},{"line":662,"column":1876,"offset":1877},{"type":23,"value":89},{"type":14,"tagName":102,"properties":1883,"children":1885,"position":1893},{"id":1884},"the-microstructure-idiom",[1886],{"type":23,"value":1887,"position":1888},"The microstructure idiom",{"start":1889,"end":1891},{"line":216,"column":56,"offset":1890},3324,{"line":216,"column":533,"offset":1892},3348,{"start":1894,"end":1896},{"line":216,"column":27,"offset":1895},3321,{"line":216,"column":533,"offset":1892},{"type":23,"value":89},{"type":14,"tagName":120,"properties":1899,"children":1900,"position":1908},{},[1901],{"type":23,"value":1902,"position":1903},"Reducers are how kScript turns raw order-flow rows into indicator values. The canonical pattern, from cells to metric to plot:",{"start":1904,"end":1906},{"line":1243,"column":27,"offset":1905},3350,{"line":1243,"column":1857,"offset":1907},3476,{"start":1909,"end":1910},{"line":1243,"column":27,"offset":1905},{"line":1243,"column":1857,"offset":1907},{"type":23,"value":89},{"type":11,"children":1913},[1914],{"type":14,"tagName":261,"properties":1915,"children":1916,"data":-1},{"class":263,"style":264,"tabindex":265},[1917],{"type":14,"tagName":182,"properties":1918,"children":1919},{},[1920,1960,1961,1964,1965,1973,1974,2095,2096,2099,2100,2108,2109,2158,2159,2254,2255],{"type":14,"tagName":35,"properties":1921,"children":1922},{"class":272},[1923,1928,1932,1937,1941,1946,1951,1955],{"type":14,"tagName":35,"properties":1924,"children":1925},{"style":293},[1926],{"type":23,"value":1927},"timeseries fp ",{"type":14,"tagName":35,"properties":1929,"children":1930},{"style":276},[1931],{"type":23,"value":395},{"type":14,"tagName":35,"properties":1933,"children":1934},{"style":282},[1935],{"type":23,"value":1936}," source",{"type":14,"tagName":35,"properties":1938,"children":1939},{"style":293},[1940],{"type":23,"value":450},{"type":14,"tagName":35,"properties":1942,"children":1943},{"style":418},[1944],{"type":23,"value":1945},"\"footprint\"",{"type":14,"tagName":35,"properties":1947,"children":1948},{"style":293},[1949],{"type":23,"value":1950},", symbol",{"type":14,"tagName":35,"properties":1952,"children":1953},{"style":276},[1954],{"type":23,"value":395},{"type":14,"tagName":35,"properties":1956,"children":1957},{"style":293},[1958],{"type":23,"value":1959},"currentSymbol)",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1962,"children":1963},{"class":272},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":1966,"children":1967},{"class":272},[1968],{"type":14,"tagName":35,"properties":1969,"children":1970},{"style":521},[1971],{"type":23,"value":1972},"// net delta for the current bar",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1975,"children":1976},{"class":272},[1977,1982,1986,1991,1995,1999,2004,2008,2012,2017,2022,2026,2031,2035,2040,2045,2049,2053,2057,2061,2065,2069,2073,2078,2082,2087,2091],{"type":14,"tagName":35,"properties":1978,"children":1979},{"style":293},[1980],{"type":23,"value":1981},"timeseries delta ",{"type":14,"tagName":35,"properties":1983,"children":1984},{"style":276},[1985],{"type":23,"value":395},{"type":14,"tagName":35,"properties":1987,"children":1988},{"style":293},[1989],{"type":23,"value":1990}," fp.cells.",{"type":14,"tagName":35,"properties":1992,"children":1993},{"style":282},[1994],{"type":23,"value":1586},{"type":14,"tagName":35,"properties":1996,"children":1997},{"style":293},[1998],{"type":23,"value":800},{"type":14,"tagName":35,"properties":2000,"children":2001},{"style":299},[2002],{"type":23,"value":2003},"c",{"type":14,"tagName":35,"properties":2005,"children":2006},{"style":293},[2007],{"type":23,"value":307},{"type":14,"tagName":35,"properties":2009,"children":2010},{"style":276},[2011],{"type":23,"value":312},{"type":14,"tagName":35,"properties":2013,"children":2014},{"style":293},[2015],{"type":23,"value":2016}," c[",{"type":14,"tagName":35,"properties":2018,"children":2019},{"style":325},[2020],{"type":23,"value":2021},"2",{"type":14,"tagName":35,"properties":2023,"children":2024},{"style":293},[2025],{"type":23,"value":1672},{"type":14,"tagName":35,"properties":2027,"children":2028},{"style":276},[2029],{"type":23,"value":2030},"-",{"type":14,"tagName":35,"properties":2032,"children":2033},{"style":293},[2034],{"type":23,"value":2016},{"type":14,"tagName":35,"properties":2036,"children":2037},{"style":325},[2038],{"type":23,"value":2039},"3",{"type":14,"tagName":35,"properties":2041,"children":2042},{"style":293},[2043],{"type":23,"value":2044},"]).",{"type":14,"tagName":35,"properties":2046,"children":2047},{"style":282},[2048],{"type":23,"value":1713},{"type":14,"tagName":35,"properties":2050,"children":2051},{"style":293},[2052],{"type":23,"value":800},{"type":14,"tagName":35,"properties":2054,"children":2055},{"style":299},[2056],{"type":23,"value":1731},{"type":14,"tagName":35,"properties":2058,"children":2059},{"style":293},[2060],{"type":23,"value":358},{"type":14,"tagName":35,"properties":2062,"children":2063},{"style":299},[2064],{"type":23,"value":302},{"type":14,"tagName":35,"properties":2066,"children":2067},{"style":293},[2068],{"type":23,"value":307},{"type":14,"tagName":35,"properties":2070,"children":2071},{"style":276},[2072],{"type":23,"value":312},{"type":14,"tagName":35,"properties":2074,"children":2075},{"style":293},[2076],{"type":23,"value":2077}," s ",{"type":14,"tagName":35,"properties":2079,"children":2080},{"style":276},[2081],{"type":23,"value":1749},{"type":14,"tagName":35,"properties":2083,"children":2084},{"style":293},[2085],{"type":23,"value":2086}," x, ",{"type":14,"tagName":35,"properties":2088,"children":2089},{"style":325},[2090],{"type":23,"value":265},{"type":14,"tagName":35,"properties":2092,"children":2093},{"style":293},[2094],{"type":23,"value":1686},{"type":23,"value":89},{"type":14,"tagName":35,"properties":2097,"children":2098},{"class":272},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":2101,"children":2102},{"class":272},[2103],{"type":14,"tagName":35,"properties":2104,"children":2105},{"style":521},[2106],{"type":23,"value":2107},"// price of the largest-volume bucket",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2110,"children":2111},{"class":272},[2112,2116,2121,2125,2129,2133,2137,2142,2146,2150,2154],{"type":14,"tagName":35,"properties":2113,"children":2114},{"style":276},[2115],{"type":23,"value":279},{"type":14,"tagName":35,"properties":2117,"children":2118},{"style":293},[2119],{"type":23,"value":2120}," top ",{"type":14,"tagName":35,"properties":2122,"children":2123},{"style":276},[2124],{"type":23,"value":395},{"type":14,"tagName":35,"properties":2126,"children":2127},{"style":293},[2128],{"type":23,"value":1990},{"type":14,"tagName":35,"properties":2130,"children":2131},{"style":282},[2132],{"type":23,"value":1713},{"type":14,"tagName":35,"properties":2134,"children":2135},{"style":293},[2136],{"type":23,"value":800},{"type":14,"tagName":35,"properties":2138,"children":2139},{"style":299},[2140],{"type":23,"value":2141},"best",{"type":14,"tagName":35,"properties":2143,"children":2144},{"style":293},[2145],{"type":23,"value":358},{"type":14,"tagName":35,"properties":2147,"children":2148},{"style":299},[2149],{"type":23,"value":2003},{"type":14,"tagName":35,"properties":2151,"children":2152},{"style":293},[2153],{"type":23,"value":307},{"type":14,"tagName":35,"properties":2155,"children":2156},{"style":276},[2157],{"type":23,"value":312},{"type":23,"value":89},{"type":14,"tagName":35,"properties":2160,"children":2161},{"class":272},[2162,2167,2171,2175,2179,2183,2187,2192,2196,2201,2205,2209,2213,2218,2222,2226,2231,2236,2241,2246,2250],{"type":14,"tagName":35,"properties":2163,"children":2164},{"style":293},[2165],{"type":23,"value":2166},"  (c[",{"type":14,"tagName":35,"properties":2168,"children":2169},{"style":325},[2170],{"type":23,"value":2021},{"type":14,"tagName":35,"properties":2172,"children":2173},{"style":293},[2174],{"type":23,"value":1672},{"type":14,"tagName":35,"properties":2176,"children":2177},{"style":276},[2178],{"type":23,"value":1749},{"type":14,"tagName":35,"properties":2180,"children":2181},{"style":293},[2182],{"type":23,"value":2016},{"type":14,"tagName":35,"properties":2184,"children":2185},{"style":325},[2186],{"type":23,"value":2039},{"type":14,"tagName":35,"properties":2188,"children":2189},{"style":293},[2190],{"type":23,"value":2191},"]) ",{"type":14,"tagName":35,"properties":2193,"children":2194},{"style":276},[2195],{"type":23,"value":405},{"type":14,"tagName":35,"properties":2197,"children":2198},{"style":293},[2199],{"type":23,"value":2200}," (best[",{"type":14,"tagName":35,"properties":2202,"children":2203},{"style":325},[2204],{"type":23,"value":2021},{"type":14,"tagName":35,"properties":2206,"children":2207},{"style":293},[2208],{"type":23,"value":1672},{"type":14,"tagName":35,"properties":2210,"children":2211},{"style":276},[2212],{"type":23,"value":1749},{"type":14,"tagName":35,"properties":2214,"children":2215},{"style":293},[2216],{"type":23,"value":2217}," best[",{"type":14,"tagName":35,"properties":2219,"children":2220},{"style":325},[2221],{"type":23,"value":2039},{"type":14,"tagName":35,"properties":2223,"children":2224},{"style":293},[2225],{"type":23,"value":2191},{"type":14,"tagName":35,"properties":2227,"children":2228},{"style":276},[2229],{"type":23,"value":2230},"?",{"type":14,"tagName":35,"properties":2232,"children":2233},{"style":293},[2234],{"type":23,"value":2235}," c ",{"type":14,"tagName":35,"properties":2237,"children":2238},{"style":276},[2239],{"type":23,"value":2240},":",{"type":14,"tagName":35,"properties":2242,"children":2243},{"style":293},[2244],{"type":23,"value":2245}," best, fp.cells[",{"type":14,"tagName":35,"properties":2247,"children":2248},{"style":325},[2249],{"type":23,"value":265},{"type":14,"tagName":35,"properties":2251,"children":2252},{"style":293},[2253],{"type":23,"value":1618},{"type":23,"value":89},{"type":14,"tagName":35,"properties":2256,"children":2257},{"class":272},[2258,2263,2268,2272,2277,2281,2286],{"type":14,"tagName":35,"properties":2259,"children":2260},{"style":282},[2261],{"type":23,"value":2262},"plotLine",{"type":14,"tagName":35,"properties":2264,"children":2265},{"style":293},[2266],{"type":23,"value":2267},"(top[",{"type":14,"tagName":35,"properties":2269,"children":2270},{"style":325},[2271],{"type":23,"value":265},{"type":14,"tagName":35,"properties":2273,"children":2274},{"style":293},[2275],{"type":23,"value":2276},"], color",{"type":14,"tagName":35,"properties":2278,"children":2279},{"style":276},[2280],{"type":23,"value":395},{"type":14,"tagName":35,"properties":2282,"children":2283},{"style":418},[2284],{"type":23,"value":2285},"\"#f59e0b\"",{"type":14,"tagName":35,"properties":2287,"children":2288},{"style":293},[2289],{"type":23,"value":1686},{"type":23,"value":89},{"type":14,"tagName":120,"properties":2292,"children":2293,"position":2346},{},[2294,2303,2319,2326,2339],{"type":23,"value":2295,"position":2296},"Every windowed indicator in the ",{"start":2297,"end":2300},{"line":2298,"column":27,"offset":2299},89,3845,{"line":2298,"column":2301,"offset":2302},33,3877,{"type":14,"tagName":2304,"properties":2305,"children":2307,"position":2315},"a",{"href":2306},"../functions/ta-library.md",[2308],{"type":23,"value":2309,"position":2310},"TA library",{"start":2311,"end":2313},{"line":2298,"column":130,"offset":2312},3878,{"line":2298,"column":633,"offset":2314},3888,{"start":2316,"end":2317},{"line":2298,"column":2301,"offset":2302},{"line":2298,"column":1243,"offset":2318},3917,{"type":23,"value":2320,"position":2321}," also accepts microstructure-derived series, so ",{"start":2322,"end":2323},{"line":2298,"column":1243,"offset":2318},{"line":2298,"column":2324,"offset":2325},121,3965,{"type":14,"tagName":182,"properties":2327,"children":2328,"position":2336},{},[2329],{"type":23,"value":2330,"position":2331},"rsi(source=delta, period=14)",{"start":2332,"end":2333},{"line":2298,"column":2324,"offset":2325},{"line":2298,"column":2334,"offset":2335},151,3995,{"start":2337,"end":2338},{"line":2298,"column":2324,"offset":2325},{"line":2298,"column":2334,"offset":2335},{"type":23,"value":2340,"position":2341}," is a delta-RSI in one line. None of this is expressible in Pine Script: it has neither the data nor the lambdas.",{"start":2342,"end":2343},{"line":2298,"column":2334,"offset":2335},{"line":2298,"column":2344,"offset":2345},264,4108,{"start":2347,"end":2348},{"line":2298,"column":27,"offset":2299},{"line":2298,"column":2344,"offset":2345},{"type":23,"value":89},{"type":14,"tagName":102,"properties":2351,"children":2353,"position":2363},{"id":2352},"loops-still-exist-and-they-are-guarded",[2354],{"type":23,"value":2355,"position":2356},"Loops still exist, and they are guarded",{"start":2357,"end":2360},{"line":2358,"column":56,"offset":2359},90,4112,{"line":2358,"column":2361,"offset":2362},43,4151,{"start":2364,"end":2366},{"line":2358,"column":27,"offset":2365},4109,{"line":2358,"column":2361,"offset":2362},{"type":23,"value":89},{"type":14,"tagName":120,"properties":2369,"children":2370,"position":2468},{},[2371,2385,2390,2402,2407,2419,2425,2437,2444,2462],{"type":14,"tagName":182,"properties":2372,"children":2373,"position":2382},{},[2374],{"type":23,"value":186,"position":2375},{"start":2376,"end":2379},{"line":2377,"column":27,"offset":2378},92,4153,{"line":2377,"column":2380,"offset":2381},6,4158,{"start":2383,"end":2384},{"line":2377,"column":27,"offset":2378},{"line":2377,"column":2380,"offset":2381},{"type":23,"value":358,"position":2386},{"start":2387,"end":2388},{"line":2377,"column":2380,"offset":2381},{"line":2377,"column":93,"offset":2389},4160,{"type":14,"tagName":182,"properties":2391,"children":2392,"position":2399},{},[2393],{"type":23,"value":2394,"position":2395},"for...in",{"start":2396,"end":2397},{"line":2377,"column":93,"offset":2389},{"line":2377,"column":1167,"offset":2398},4170,{"start":2400,"end":2401},{"line":2377,"column":93,"offset":2389},{"line":2377,"column":1167,"offset":2398},{"type":23,"value":358,"position":2403},{"start":2404,"end":2405},{"line":2377,"column":1167,"offset":2398},{"line":2377,"column":560,"offset":2406},4172,{"type":14,"tagName":182,"properties":2408,"children":2409,"position":2416},{},[2410],{"type":23,"value":2411,"position":2412},"for...of",{"start":2413,"end":2414},{"line":2377,"column":560,"offset":2406},{"line":2377,"column":28,"offset":2415},4182,{"start":2417,"end":2418},{"line":2377,"column":560,"offset":2406},{"line":2377,"column":28,"offset":2415},{"type":23,"value":2420,"position":2421},", and ",{"start":2422,"end":2423},{"line":2377,"column":28,"offset":2415},{"line":2377,"column":140,"offset":2424},4188,{"type":14,"tagName":182,"properties":2426,"children":2427,"position":2434},{},[2428],{"type":23,"value":2429,"position":2430},"while",{"start":2431,"end":2432},{"line":2377,"column":140,"offset":2424},{"line":2377,"column":2361,"offset":2433},4195,{"start":2435,"end":2436},{"line":2377,"column":140,"offset":2424},{"line":2377,"column":2361,"offset":2433},{"type":23,"value":2438,"position":2439}," remain available for logic that does not fit a reducer. Every loop body and every reducer pass is protected by the same watchdogs: a per-loop iteration ceiling, a per-run aggregate ceiling, and mid-bar interruption support, all reporting precise line/column errors. A runaway loop terminates loudly; it cannot hang a chart. The numbers live in ",{"start":2440,"end":2441},{"line":2377,"column":2361,"offset":2433},{"line":2377,"column":2442,"offset":2443},388,4540,{"type":14,"tagName":2304,"properties":2445,"children":2447,"position":2457},{"href":2446},"../faq/limitations.md",[2448],{"type":23,"value":2449,"position":2450},"Limitations",{"start":2451,"end":2454},{"line":2377,"column":2452,"offset":2453},389,4541,{"line":2377,"column":2455,"offset":2456},400,4552,{"start":2458,"end":2459},{"line":2377,"column":2442,"offset":2443},{"line":2377,"column":2460,"offset":2461},424,4576,{"type":23,"value":658,"position":2463},{"start":2464,"end":2465},{"line":2377,"column":2460,"offset":2461},{"line":2377,"column":2466,"offset":2467},425,4577,{"start":2469,"end":2470},{"line":2377,"column":27,"offset":2378},{"line":2377,"column":2466,"offset":2467},{"type":23,"value":89},{"type":14,"tagName":120,"properties":2473,"children":2474,"position":2531},{},[2475,2491,2497,2508,2513,2524],{"type":14,"tagName":133,"properties":2476,"children":2477,"position":2486},{},[2478],{"type":23,"value":2479,"position":2480},"Rule of thumb:",{"start":2481,"end":2484},{"line":2482,"column":32,"offset":2483},94,4581,{"line":2482,"column":251,"offset":2485},4595,{"start":2487,"end":2489},{"line":2482,"column":27,"offset":2488},4579,{"line":2482,"column":623,"offset":2490},4597,{"type":23,"value":2492,"position":2493}," reach for a reducer first, ",{"start":2494,"end":2495},{"line":2482,"column":623,"offset":2490},{"line":2482,"column":950,"offset":2496},4625,{"type":14,"tagName":182,"properties":2498,"children":2499,"position":2505},{},[2500],{"type":23,"value":2394,"position":2501},{"start":2502,"end":2503},{"line":2482,"column":950,"offset":2496},{"line":2482,"column":1338,"offset":2504},4635,{"start":2506,"end":2507},{"line":2482,"column":950,"offset":2496},{"line":2482,"column":1338,"offset":2504},{"type":23,"value":861,"position":2509},{"start":2510,"end":2511},{"line":2482,"column":1338,"offset":2504},{"line":2482,"column":890,"offset":2512},4636,{"type":14,"tagName":182,"properties":2514,"children":2515,"position":2521},{},[2516],{"type":23,"value":2411,"position":2517},{"start":2518,"end":2519},{"line":2482,"column":890,"offset":2512},{"line":2482,"column":155,"offset":2520},4646,{"start":2522,"end":2523},{"line":2482,"column":890,"offset":2512},{"line":2482,"column":155,"offset":2520},{"type":23,"value":2525,"position":2526}," second, and a manual indexed loop only when you genuinely need index arithmetic.",{"start":2527,"end":2528},{"line":2482,"column":155,"offset":2520},{"line":2482,"column":2529,"offset":2530},149,4727,{"start":2532,"end":2533},{"line":2482,"column":27,"offset":2488},{"line":2482,"column":2529,"offset":2530},{"quirksMode":2535},false,{"start":2537,"end":2538},{"line":27,"column":27,"offset":97},{"line":2539,"column":27,"offset":2540},95,4728,1782471841930]