diff --git a/Makefile b/Makefile index 287f1cdc..261bd62a 100755 --- a/Makefile +++ b/Makefile @@ -58,7 +58,7 @@ static: # Bootstrap: build cell from scratch using meson (only needed once) # Also installs core scripts to ~/.cell/core bootstrap: - meson setup build_bootstrap -Dbuildtype=debug -Db_sanitize=address + meson setup build_bootstrap -Dbuildtype=debugoptimized meson compile -C build_bootstrap cp build_bootstrap/cell . cp build_bootstrap/libcell_runtime.dylib . diff --git a/bootstrap.ce b/bootstrap.ce new file mode 100644 index 00000000..c53245ca --- /dev/null +++ b/bootstrap.ce @@ -0,0 +1,36 @@ +// bootstrap.ce — regenerate .ast.json files consumed by the mach engine +// usage: cell bootstrap.ce + +var fd = use("fd") +var json = use("json") +var tokenize = use("tokenize") +var parse = use("parse") +var fold = use("fold") + +var files = [ + {src: "tokenize.cm", out: "tokenize.ast.json"}, + {src: "parse.cm", out: "parse.ast.json"}, + {src: "fold.cm", out: "fold.ast.json"}, + {src: "internal/bootstrap.cm", out: "internal/bootstrap.ast.json"} +] + +var i = 0 +var entry = null +var src = null +var tok_result = null +var ast = null +var folded = null +var f = null + +while (i < length(files)) { + entry = files[i] + src = text(fd.slurp(entry.src)) + tok_result = tokenize(src, entry.src) + ast = parse(tok_result.tokens, src, entry.src, tokenize) + folded = fold(ast) + f = fd.open(entry.out, "w") + fd.write(f, json.encode(folded)) + fd.close(f) + print(`wrote ${entry.out}`) + i = i + 1 +} diff --git a/editors/ai/pit-context.md b/editors/ai/pit-context.md new file mode 100644 index 00000000..c1833b52 --- /dev/null +++ b/editors/ai/pit-context.md @@ -0,0 +1,251 @@ +# ƿit Language — AI Context + +ƿit (pronounced "pit") is a safe, actor-based programming language. Its syntax resembles JavaScript but with significant differences. Scripts use `.ce` (actors) and `.cm` (modules) file extensions. + +## Key Differences from JavaScript + +- **`var` / `def`** — `var` is mutable, `def` is constant. No `let` or `const`. +- **`==` is strict** — No `===` or `!==`. `==` and `!=` are always strict comparison. +- **No `undefined`** — Only `null`. Division by zero produces `null`, not `Infinity`. +- **No classes** — Use `meme()`, `proto()`, `isa()` for prototype chains. +- **No `for...in`, `for...of`, spread, rest, or default params.** +- **Variables declared at function body level only** — Not inside `if`/`while`/`for` blocks. +- **All variables must be initialized** — `var x` alone is an error; use `var x = null`. +- **`disrupt` / `disruption`** — No `try`/`catch`/`throw`. Error handling uses: + ```javascript + var fn = function() { + disrupt // raise an error (bare keyword, no value) + } disruption { + // handle the error + } + ``` +- **No arraybuffers** — Use `blob` (works with bits; `stone(blob)` before reading). +- **Identifiers can contain `?` and `!`** — e.g., `nil?`, `set!`, `is?valid`. +- **4-parameter limit** — Functions take at most 4 named parameters. +- **Everything lowercase** — Convention is all-lowercase identifiers with underscores. + +## Variable Declaration + +```javascript +var count = 0 // mutable +def MAX = 100 // constant (cannot be reassigned) +var x = null // must initialize (var x alone is an error) +``` + +## Functions + +```javascript +var greet = function(name) { + print(`hello ${name}`) +} + +// Arrow functions +var double = x => x * 2 +var add = (a, b) => a + b +``` + +## Push / Pop Syntax + +```javascript +var a = [1, 2] +a[] = 3 // push: a is now [1, 2, 3] +var v = a[] // pop: v is 3, a is [1, 2] +``` + +## Control Flow + +```javascript +if (x > 0) { + print("positive") +} else { + print("non-positive") +} + +while (i < 10) { + i = i + 1 +} + +for (var i = 0; i < 10; i = i + 1) { + print(i) +} + +// do-while +do { + i = i + 1 +} while (i < 10) +``` + +## Error Handling + +```javascript +var safe_divide = function(a, b) { + if (b == 0) { + disrupt + } + return a / b +} disruption { + return null +} +``` + +## Creator Functions (Polymorphic) + +These examine argument types to decide behavior: + +### array() +- `array(5)` — `[null, null, null, null, null]` +- `array(3, 0)` — `[0, 0, 0]` +- `array(5, i => i * 2)` — `[0, 2, 4, 6, 8]` +- `array([1,2])` — copy +- `array([1,2,3], x => x * 10)` — map: `[10, 20, 30]` +- `array([1,2], [3,4])` — concat: `[1, 2, 3, 4]` +- `array([1,2,3,4,5], 1, 4)` — slice: `[2, 3, 4]` +- `array({a: 1, b: 2})` — keys: `["a", "b"]` +- `array("hello")` — characters: `["h", "e", "l", "l", "o"]` +- `array("a,b,c", ",")` — split: `["a", "b", "c"]` + +### text() +- `text([1, 2, 3], ", ")` — join: `"1, 2, 3"` +- `text(255, 16)` — radix: `"ff"` +- `text("hello", 0, 3)` — substring: `"hel"` + +### number() +- `number("42")` — parse: `42` +- `number("ff", 16)` — radix: `255` +- `number(true)` — `1` + +### record() +- `record({a: 1})` — copy +- `record({a: 1}, {b: 2})` — merge: `{a: 1, b: 2}` +- `record(["x", "y"])` — from keys: `{x: true, y: true}` + +## All Intrinsic Functions + +**Constants:** `false`, `true`, `null`, `pi` + +**Type checks:** `is_array`, `is_blob`, `is_character`, `is_data`, `is_digit`, `is_false`, `is_fit`, `is_function`, `is_integer`, `is_letter`, `is_logical`, `is_lower`, `is_null`, `is_number`, `is_object`, `is_pattern`, `is_stone`, `is_text`, `is_true`, `is_upper`, `is_whitespace` + +**Creators:** `array`, `logical`, `number`, `record`, `text` + +**Math:** `abs`, `ceiling`, `floor`, `fraction`, `max`, `min`, `modulo`, `neg`, `remainder`, `round`, `sign`, `trunc`, `whole` + +**Text:** `character`, `codepoint`, `ends_with`, `extract`, `format`, `lower`, `normalize`, `replace`, `search`, `starts_with`, `trim`, `upper` + +**Array:** `every`, `filter`, `find`, `for`, `length`, `reduce`, `reverse`, `some`, `sort` + +**Objects:** `meme`, `proto`, `isa`, `stone` + +**Functions:** `apply`, `splat` + +**I/O:** `print` + +**Async:** `fallback`, `parallel`, `race`, `sequence` + +**Misc:** `logical`, `not`, `use` + +## Variable Scoping + +Variables are scoped to the function body in which they are declared. There is no block scoping. All declarations must be at the top level of a function body (not nested inside `if`/`while`/`for`). + +```javascript +var outer = function() { + var x = 10 + var inner = function() { + // x is visible here via closure + print(x) + } + inner() +} +``` + +## Modules (.cm files) + +Modules return a value (typically a record of exports). They are loaded with `use()`, cached, and frozen. + +```javascript +// math_utils.cm +var square = x => x * x +var cube = x => x * x * x +return {square: square, cube: cube} + +// main.ce +var utils = use('math_utils') +print(utils.square(5)) // 25 +``` + +## Standard Library (loaded with use()) + +- `blob` — binary data (works with bits, not bytes) +- `time` — time constants and conversions +- `math` — trig, logarithms, roots (sub-modules: `math/radians`, `math/turns`) +- `json` — JSON encoding/decoding (`json.encode`, `json.decode`) +- `random` — random number generation +- `fd` — file descriptor operations (`fd.read`, `fd.write`, `fd.slurp`, `fd.stat`) + +## Actor Model (.ce files) + +Actors are independent execution units that never share memory. They communicate via message passing. + +```javascript +// greeter.ce +$receiver(function(msg) { + $send(msg.from, {greeting: `hello ${msg.name}`}) +}) +``` + +### Actor Intrinsics ($ prefix) + +- `$me` — this actor's address +- `$send(address, message)` — send a message +- `$start(script, env)` — start a new actor +- `$stop()` — stop this actor +- `$delay(ms)` — delay processing +- `$receiver(fn)` — set message handler +- `$clock(interval, message)` — periodic self-message +- `$portal(name)` — create named portal +- `$contact(name)` — connect to portal +- `$couple(address)` — lifecycle coupling +- `$unneeded(fn)` — cleanup callback +- `$connection(address)` — establish connection +- `$time_limit(ms)` — execution time limit + +## Common Patterns + +### Iteration +```javascript +// Preferred: use for() intrinsic +for([1, 2, 3], function(item, index) { + print(`${text(index)}: ${text(item)}`) +}) + +// C-style for loop +for (var i = 0; i < length(items); i = i + 1) { + print(items[i]) +} +``` + +### String Building +```javascript +// Use backtick interpolation +var msg = `hello ${name}, you are ${text(age)} years old` + +// Join array +var csv = text(values, ",") +``` + +### Record Manipulation +```javascript +var obj = {name: "alice", age: 30} +var keys = array(obj) // ["name", "age"] +var copy = record(obj) // mutable copy +var merged = record(obj, {role: "admin"}) +``` + +### Error-Safe Operations +```javascript +var safe_parse = function(input) { + return number(input) +} disruption { + return null +} +``` diff --git a/editors/vscode/language-configuration.json b/editors/vscode/language-configuration.json new file mode 100644 index 00000000..fb984644 --- /dev/null +++ b/editors/vscode/language-configuration.json @@ -0,0 +1,30 @@ +{ + "comments": { + "lineComment": "//", + "blockComment": ["/*", "*/"] + }, + "brackets": [ + ["{", "}"], + ["[", "]"], + ["(", ")"] + ], + "autoClosingPairs": [ + { "open": "{", "close": "}" }, + { "open": "[", "close": "]" }, + { "open": "(", "close": ")" }, + { "open": "\"", "close": "\"", "notIn": ["string"] }, + { "open": "`", "close": "`", "notIn": ["string"] } + ], + "surroundingPairs": [ + ["{", "}"], + ["[", "]"], + ["(", ")"], + ["\"", "\""], + ["`", "`"] + ], + "indentationRules": { + "increaseIndentPattern": "^.*\\{[^}\"'`]*$", + "decreaseIndentPattern": "^\\s*\\}" + }, + "wordPattern": "[a-zA-Z_$][a-zA-Z0-9_$?!]*" +} diff --git a/editors/vscode/lsp/analysis.cm b/editors/vscode/lsp/analysis.cm new file mode 100644 index 00000000..9f3d7b4b --- /dev/null +++ b/editors/vscode/lsp/analysis.cm @@ -0,0 +1,113 @@ +// Document analysis module. +// Call make(tokenize_mod, parse_mod) to get an analysis object. + +var json = use('json') + +// Create an analysis module bound to the tokenize and parse functions. +var make = function(tokenize_mod, parse_mod) { + + // Tokenize and parse a document, storing the results. + var update = function(docs, uri, params) { + var src = params.src + var version = params.version + var tok_result = null + var ast = null + var errors = [] + var doc = null + + var do_tokenize = function() { + tok_result = tokenize_mod(src, uri) + } disruption { + errors = [{message: "Tokenize failed", line: 1, column: 1}] + } + var do_parse = function() { + ast = parse_mod(tok_result.tokens, src, uri, tokenize_mod) + } disruption { + // parse_mod may set errors on ast even on partial failure + } + + do_tokenize() + + if (tok_result != null) { + do_parse() + + if (ast != null && ast.errors != null) { + errors = ast.errors + } + } + + doc = { + uri: uri, + text: src, + version: version, + tokens: (tok_result != null) ? tok_result.tokens : [], + ast: ast, + errors: errors + } + docs[uri] = doc + return doc + } + + // Remove a document from the store. + var remove = function(docs, uri) { + delete docs[uri] + } + + // Convert parse errors to LSP diagnostics. + var diagnostics = function(doc) { + var result = [] + var _i = 0 + var e = null + var line = null + var col = null + while (_i < length(doc.errors)) { + e = doc.errors[_i] + line = (e.line != null) ? e.line - 1 : 0 + col = (e.column != null) ? e.column - 1 : 0 + result[] = { + range: { + start: {line: line, character: col}, + end: {line: line, character: col + 1} + }, + severity: 1, + source: "pit", + message: e.message + } + _i = _i + 1 + } + return result + } + + // Find the token at a given line/column (0-based). + var token_at = function(doc, line, col) { + var tokens = doc.tokens + var _i = 0 + var tok = null + while (_i < length(tokens)) { + tok = tokens[_i] + if (tok.from_row == line && tok.from_column <= col && tok.to_column >= col) { + return tok + } + if (tok.from_row < line && tok.to_row > line) { + return tok + } + if (tok.from_row < line && tok.to_row == line && tok.to_column >= col) { + return tok + } + if (tok.from_row == line && tok.to_row > line && tok.from_column <= col) { + return tok + } + _i = _i + 1 + } + return null + } + + return { + update: update, + remove: remove, + diagnostics: diagnostics, + token_at: token_at + } +} + +return make diff --git a/editors/vscode/lsp/completions.cm b/editors/vscode/lsp/completions.cm new file mode 100644 index 00000000..475cb73f --- /dev/null +++ b/editors/vscode/lsp/completions.cm @@ -0,0 +1,133 @@ +// Completion provider for the ƿit LSP. + +// CompletionItemKind constants (LSP spec) +def KIND_FUNCTION = 3 +def KIND_VARIABLE = 6 +def KIND_KEYWORD = 14 +def KIND_CONSTANT = 21 + +// All intrinsic function names +def intrinsic_functions = [ + "abs", "apply", "array", "ceiling", "character", "codepoint", + "ends_with", "every", "extract", "fallback", "filter", "find", + "floor", "format", "fraction", + "is_array", "is_blob", "is_character", "is_data", "is_digit", + "is_false", "is_fit", "is_function", "is_integer", "is_letter", + "is_logical", "is_lower", "is_null", "is_number", "is_object", + "is_pattern", "is_stone", "is_text", "is_true", "is_upper", + "is_whitespace", + "length", "logical", "lower", "max", "min", "modulo", + "neg", "normalize", "not", "number", + "parallel", "print", "race", "record", "reduce", "remainder", + "replace", "reverse", "round", + "search", "sequence", "sign", "some", "sort", "starts_with", + "stone", "text", "trim", "trunc", "upper", "whole", + "meme", "proto", "isa", "splat", "use" +] + +// Keywords that can be completed +def keywords = [ + "var", "def", "if", "else", "for", "while", "do", + "function", "return", "go", "break", "continue", + "disrupt", "disruption", "delete", "in", "this", + "null", "true", "false" +] + +// Actor intrinsics (only in .ce files) +def actor_intrinsics = [ + "$me", "$send", "$start", "$stop", "$delay", + "$receiver", "$clock", "$portal", "$contact", + "$couple", "$unneeded", "$connection", "$time_limit" +] + +// Walk AST scopes to find variables visible at a position. +var collect_scope_vars = function(doc, line, col) { + var vars = [] + var ast = doc.ast + var _i = 0 + var _j = 0 + var scope = null + var v = null + + if (ast == null || ast.scopes == null) { + return vars + } + + // Collect variables from all scopes (simplified: return all declared vars) + while (_i < length(ast.scopes)) { + scope = ast.scopes[_i] + if (scope.vars != null) { + _j = 0 + while (_j < length(scope.vars)) { + v = scope.vars[_j] + if (v.name != null) { + vars[] = { + label: v.name, + kind: (v.is_const == true) ? KIND_CONSTANT : KIND_VARIABLE, + detail: (v.is_const == true) ? "def" : "var" + } + } + _j = _j + 1 + } + } + _i = _i + 1 + } + + return vars +} + +// Provide completions for a document at a position. +var complete = function(doc, line, col) { + var items = [] + var _i = 0 + var is_actor = ends_with(doc.uri, ".ce") + + // Intrinsic functions + _i = 0 + while (_i < length(intrinsic_functions)) { + items[] = { + label: intrinsic_functions[_i], + kind: KIND_FUNCTION, + detail: "intrinsic" + } + _i = _i + 1 + } + + // Keywords + _i = 0 + while (_i < length(keywords)) { + items[] = { + label: keywords[_i], + kind: KIND_KEYWORD, + detail: "keyword" + } + _i = _i + 1 + } + + // Actor intrinsics (only for .ce files) + if (is_actor) { + _i = 0 + while (_i < length(actor_intrinsics)) { + items[] = { + label: actor_intrinsics[_i], + kind: KIND_FUNCTION, + detail: "actor intrinsic" + } + _i = _i + 1 + } + } + + // Variables from scope analysis + var scope_vars = collect_scope_vars(doc, line, col) + _i = 0 + while (_i < length(scope_vars)) { + items[] = scope_vars[_i] + _i = _i + 1 + } + + return items +} + +return { + complete: complete +} diff --git a/editors/vscode/lsp/hover.cm b/editors/vscode/lsp/hover.cm new file mode 100644 index 00000000..9f77472c --- /dev/null +++ b/editors/vscode/lsp/hover.cm @@ -0,0 +1,461 @@ +// Hover provider for the ƿit LSP. +// Shows documentation for intrinsic functions and variable info. + +// Intrinsic function documentation database. +// Each entry: {signature, description} +def intrinsic_docs = { + abs: { + signature: "abs(number)", + description: "Absolute value. Returns null for non-numbers." + }, + apply: { + signature: "apply(function, array)", + description: "Execute the function, passing array elements as input values." + }, + array: { + signature: "array(value, ...)", + description: "Create arrays. Polymorphic: array(number) creates sized array, array(array) copies, array(array, fn) maps, array(text) splits into characters, array(text, sep) splits by separator." + }, + ceiling: { + signature: "ceiling(number, place)", + description: "Round up. If place is 0 or null, round to smallest integer >= number." + }, + character: { + signature: "character(value)", + description: "If text, returns the first character. If a non-negative integer, returns the character from that codepoint." + }, + codepoint: { + signature: "codepoint(text)", + description: "Returns the codepoint number of the first character." + }, + ends_with: { + signature: "ends_with(text, suffix)", + description: "Returns true if the text ends with the given suffix." + }, + every: { + signature: "every(array, function)", + description: "Returns true if every element satisfies the predicate." + }, + extract: { + signature: "extract(text, pattern, from, to)", + description: "Match text to pattern. Returns a record of saved fields, or null if no match." + }, + fallback: { + signature: "fallback(requestor_array)", + description: "Returns a requestor that tries each requestor in order until one succeeds." + }, + filter: { + signature: "filter(array, function)", + description: "Returns a new array containing elements for which function returns true." + }, + find: { + signature: "find(array, function, reverse, from)", + description: "Returns the element number where function returns true, or null if not found. If second arg is not a function, compares directly." + }, + floor: { + signature: "floor(number, place)", + description: "Round down. If place is 0 or null, round to greatest integer <= number." + }, + format: { + signature: "format(text, collection, transformer)", + description: "Substitute {key} placeholders in text with values from a collection (array or record)." + }, + fraction: { + signature: "fraction(number)", + description: "Returns the fractional part of a number." + }, + is_array: { + signature: "is_array(value)", + description: "Returns true if the value is an array." + }, + is_blob: { + signature: "is_blob(value)", + description: "Returns true if the value is a blob." + }, + is_character: { + signature: "is_character(value)", + description: "Returns true if the value is a single character." + }, + is_data: { + signature: "is_data(value)", + description: "Returns true if the value is data (not a function)." + }, + is_digit: { + signature: "is_digit(value)", + description: "Returns true if the value is a digit character." + }, + is_false: { + signature: "is_false(value)", + description: "Returns true if the value is false." + }, + is_fit: { + signature: "is_fit(value)", + description: "Returns true if the value is a fit integer." + }, + is_function: { + signature: "is_function(value)", + description: "Returns true if the value is a function." + }, + is_integer: { + signature: "is_integer(value)", + description: "Returns true if the value is an integer." + }, + is_letter: { + signature: "is_letter(value)", + description: "Returns true if the value is a letter character." + }, + is_logical: { + signature: "is_logical(value)", + description: "Returns true if the value is a logical (boolean)." + }, + is_lower: { + signature: "is_lower(value)", + description: "Returns true if the value is a lowercase character." + }, + is_null: { + signature: "is_null(value)", + description: "Returns true if the value is null." + }, + is_number: { + signature: "is_number(value)", + description: "Returns true if the value is a number." + }, + is_object: { + signature: "is_object(value)", + description: "Returns true if the value is an object (record)." + }, + is_pattern: { + signature: "is_pattern(value)", + description: "Returns true if the value is a pattern (regex)." + }, + is_stone: { + signature: "is_stone(value)", + description: "Returns true if the value is frozen (stoned)." + }, + is_text: { + signature: "is_text(value)", + description: "Returns true if the value is text." + }, + is_true: { + signature: "is_true(value)", + description: "Returns true if the value is true." + }, + is_upper: { + signature: "is_upper(value)", + description: "Returns true if the value is an uppercase character." + }, + is_whitespace: { + signature: "is_whitespace(value)", + description: "Returns true if the value is a whitespace character." + }, + length: { + signature: "length(value)", + description: "Array: number of elements. Text: number of codepoints. Function: arity. Blob: number of bits. Record: record.length()." + }, + logical: { + signature: "logical(value)", + description: "Convert to logical. 0/false/null/\"false\" produce false; 1/true/\"true\" produce true." + }, + lower: { + signature: "lower(text)", + description: "Returns text with all uppercase characters converted to lowercase." + }, + max: { + signature: "max(number, number)", + description: "Returns the larger of two numbers." + }, + min: { + signature: "min(number, number)", + description: "Returns the smaller of two numbers." + }, + modulo: { + signature: "modulo(dividend, divisor)", + description: "Result has the sign of the divisor." + }, + neg: { + signature: "neg(number)", + description: "Negate. Reverse the sign of a number." + }, + normalize: { + signature: "normalize(text)", + description: "Unicode normalize." + }, + not: { + signature: "not(logical)", + description: "Returns the opposite logical. Returns null for non-logicals." + }, + number: { + signature: "number(value, radix_or_format)", + description: "Convert to number. Polymorphic: number(logical), number(text), number(text, radix), number(text, format)." + }, + parallel: { + signature: "parallel(requestor_array, throttle, need)", + description: "Start all requestors concurrently. Optional throttle limits concurrency; optional need specifies minimum successes." + }, + print: { + signature: "print(value)", + description: "Print a value to standard output." + }, + race: { + signature: "race(requestor_array, throttle, need)", + description: "Like parallel but returns as soon as needed results are obtained. Default need is 1." + }, + record: { + signature: "record(value, ...)", + description: "Create records. Polymorphic: record(record) copies, record(record, record) merges, record(array) creates from keys." + }, + reduce: { + signature: "reduce(array, function, initial, reverse)", + description: "Reduce an array to a single value by applying a function to pairs of elements." + }, + remainder: { + signature: "remainder(dividend, divisor)", + description: "For fit integers: dividend - ((dividend // divisor) * divisor)." + }, + replace: { + signature: "replace(text, target, replacement, limit)", + description: "Return text with target replaced. Target can be text or pattern. Replacement can be text or function." + }, + reverse: { + signature: "reverse(array)", + description: "Returns a new array with elements in the opposite order." + }, + round: { + signature: "round(number, place)", + description: "Round to nearest." + }, + search: { + signature: "search(text, target, from)", + description: "Search text for target. Returns character position or null." + }, + sequence: { + signature: "sequence(requestor_array)", + description: "Process requestors in order. Each result becomes input to the next." + }, + sign: { + signature: "sign(number)", + description: "Returns -1, 0, or 1." + }, + some: { + signature: "some(array, function)", + description: "Returns true if any element satisfies the predicate." + }, + sort: { + signature: "sort(array, select)", + description: "Returns a new sorted array. Sort keys must be all numbers or all texts. Ascending and stable." + }, + starts_with: { + signature: "starts_with(text, prefix)", + description: "Returns true if the text starts with the given prefix." + }, + stone: { + signature: "stone(value)", + description: "Petrify the value, making it permanently immutable. Deep freeze." + }, + text: { + signature: "text(value, ...)", + description: "Convert to text. Polymorphic: text(array, sep) joins, text(number, radix/format) formats, text(text, from, to) substrings." + }, + trim: { + signature: "trim(text, reject)", + description: "Remove characters from both ends. Default removes whitespace." + }, + trunc: { + signature: "trunc(number, place)", + description: "Truncate toward zero." + }, + upper: { + signature: "upper(text)", + description: "Returns text with all lowercase characters converted to uppercase." + }, + whole: { + signature: "whole(number)", + description: "Returns the whole part of a number." + }, + meme: { + signature: "meme()", + description: "Create a new meme (prototype chain marker)." + }, + proto: { + signature: "proto(object, meme)", + description: "Set the prototype meme of an object." + }, + isa: { + signature: "isa(object, meme)", + description: "Returns true if the object has the given meme in its prototype chain." + }, + splat: { + signature: "splat(function, array)", + description: "Call function with array elements as separate arguments." + }, + use: { + signature: "use(path)", + description: "Load a module. Returns the module's exported value. Modules are cached and frozen." + }, + pi: { + signature: "pi", + description: "An approximation of circumference / diameter: 3.1415926535897932." + } +} + +// Actor intrinsic documentation +def actor_docs = { + "$me": { + signature: "$me", + description: "The address of this actor." + }, + "$send": { + signature: "$send(address, message)", + description: "Send a message to another actor." + }, + "$start": { + signature: "$start(script, env)", + description: "Start a new actor from a script path." + }, + "$stop": { + signature: "$stop()", + description: "Stop this actor." + }, + "$delay": { + signature: "$delay(milliseconds)", + description: "Delay processing for a number of milliseconds." + }, + "$receiver": { + signature: "$receiver(function)", + description: "Set the message receiver function for this actor." + }, + "$clock": { + signature: "$clock(interval, message)", + description: "Send a message to self at regular intervals." + }, + "$portal": { + signature: "$portal(name)", + description: "Create a named portal for inter-actor communication." + }, + "$contact": { + signature: "$contact(portal_name)", + description: "Connect to a named portal." + }, + "$couple": { + signature: "$couple(address)", + description: "Couple with another actor for lifecycle management." + }, + "$unneeded": { + signature: "$unneeded(function)", + description: "Set a function to be called when this actor is no longer needed." + }, + "$connection": { + signature: "$connection(address)", + description: "Establish a connection with another actor." + }, + "$time_limit": { + signature: "$time_limit(milliseconds)", + description: "Set a time limit for this actor's execution." + } +} + +// Provide hover info for a token. +var hover = function(doc, line, col, token_at) { + var tok = token_at(doc, line, col) + var info = null + var name = null + var _i = 0 + var _j = 0 + var scope = null + var v = null + + if (tok == null) { + return null + } + + // Check intrinsic functions + if (tok.kind == "name" && tok.value != null) { + name = tok.value + info = intrinsic_docs[name] + if (info != null) { + return { + contents: { + kind: "markdown", + value: `**${info.signature}**\n\n${info.description}` + } + } + } + } + + // Check actor intrinsics ($name) + if (tok.value != null && starts_with(tok.value, "$")) { + info = actor_docs[tok.value] + if (info != null) { + return { + contents: { + kind: "markdown", + value: `**${info.signature}**\n\n${info.description}` + } + } + } + } + + // Check keywords + if (tok.kind == "var" || tok.kind == "def") { + return { + contents: { + kind: "markdown", + value: (tok.kind == "var") + ? "**var** — Declare a mutable variable." + : "**def** — Declare a constant." + } + } + } + + if (tok.kind == "disrupt") { + return { + contents: { + kind: "markdown", + value: "**disrupt** — Raise an error. Use with **disruption** block to handle errors." + } + } + } + + if (tok.kind == "disruption") { + return { + contents: { + kind: "markdown", + value: "**disruption** — Error handling block. Catches errors raised by **disrupt**." + } + } + } + + // User variable: show declaration info from scope + if (tok.kind == "name" && tok.value != null && doc.ast != null && doc.ast.scopes != null) { + _i = 0 + while (_i < length(doc.ast.scopes)) { + scope = doc.ast.scopes[_i] + if (scope.vars != null) { + _j = 0 + while (_j < length(scope.vars)) { + v = scope.vars[_j] + if (v.name == tok.value) { + return { + contents: { + kind: "markdown", + value: (v.is_const == true) + ? `**def** ${v.name}` + : `**var** ${v.name}` + } + } + } + _j = _j + 1 + } + } + _i = _i + 1 + } + } + + return null +} + +return { + hover: hover, + intrinsic_docs: intrinsic_docs, + actor_docs: actor_docs +} diff --git a/editors/vscode/lsp/lsp.ce b/editors/vscode/lsp/lsp.ce new file mode 100644 index 00000000..f0233091 --- /dev/null +++ b/editors/vscode/lsp/lsp.ce @@ -0,0 +1,209 @@ +// ƿit Language Server Protocol (LSP) main loop. +// Communicates via JSON-RPC over stdin/stdout. + +var fd = use('fd') +var json_mod = use('json') +var protocol = use('protocol') +var analysis_make = use('analysis') +var completions = use('completions') +var hover_mod = use('hover') +var symbols = use('symbols') + +// Get tokenize_mod and parse_mod from the environment. +// These are the same functions the compiler uses internally. +var tokenize_mod = use('tokenize') +var parse_mod = use('parse') + +// Create analysis module bound to tokenize/parse +var analysis = analysis_make(tokenize_mod, parse_mod) + +// Document store: URI -> {text, version, ast, tokens, errors} +var docs = {} + +// Log to stderr for debugging (does not interfere with protocol). +var log = function(msg) { + fd.write(2, `[pit-lsp] ${msg}\n`) +} + +// Publish diagnostics for a document. +var publish_diagnostics = function(uri, doc) { + var diags = analysis.diagnostics(doc) + protocol.notify("textDocument/publishDiagnostics", { + uri: uri, + diagnostics: diags + }) +} + +// Parse a document and publish diagnostics. +var parse_and_notify = function(uri, src, version) { + var doc = analysis.update(docs, uri, {src: src, version: version}) + publish_diagnostics(uri, doc) +} + +// Handle initialize request. +var handle_initialize = function(id, params) { + protocol.respond(id, { + capabilities: { + textDocumentSync: { + openClose: true, + change: 1, + save: {includeText: true} + }, + completionProvider: { + triggerCharacters: [".", "$"] + }, + hoverProvider: true, + definitionProvider: true, + documentSymbolProvider: true + }, + serverInfo: { + name: "pit-lsp", + version: "0.1.0" + } + }) +} + +// Handle textDocument/didOpen notification. +var handle_did_open = function(params) { + var td = params.textDocument + parse_and_notify(td.uri, td.text, td.version) +} + +// Handle textDocument/didChange notification (full text sync). +var handle_did_change = function(params) { + var td = params.textDocument + var changes = params.contentChanges + if (length(changes) > 0) { + parse_and_notify(td.uri, changes[0].text, td.version) + } +} + +// Handle textDocument/didClose notification. +var handle_did_close = function(params) { + var uri = params.textDocument.uri + analysis.remove(docs, uri) + // Clear diagnostics + protocol.notify("textDocument/publishDiagnostics", { + uri: uri, + diagnostics: [] + }) +} + +// Handle textDocument/didSave notification. +var handle_did_save = function(params) { + var td = params.textDocument + if (params.text != null) { + parse_and_notify(td.uri, params.text, td.version) + } +} + +// Handle textDocument/completion request. +var handle_completion = function(id, params) { + var uri = params.textDocument.uri + var pos = params.position + var doc = docs[uri] + var items = [] + if (doc != null) { + items = completions.complete(doc, pos.line, pos.character) + } + protocol.respond(id, items) +} + +// Handle textDocument/hover request. +var handle_hover = function(id, params) { + var uri = params.textDocument.uri + var pos = params.position + var doc = docs[uri] + var result = null + if (doc != null) { + result = hover_mod.hover(doc, pos.line, pos.character, analysis.token_at) + } + protocol.respond(id, result) +} + +// Handle textDocument/definition request. +var handle_definition = function(id, params) { + var uri = params.textDocument.uri + var pos = params.position + var doc = docs[uri] + var result = null + if (doc != null) { + result = symbols.definition(doc, pos.line, pos.character, analysis.token_at) + } + protocol.respond(id, result) +} + +// Handle textDocument/documentSymbol request. +var handle_document_symbol = function(id, params) { + var uri = params.textDocument.uri + var doc = docs[uri] + var result = [] + if (doc != null) { + result = symbols.document_symbols(doc) + } + protocol.respond(id, result) +} + +// Dispatch a single message. Wrapped in a function for disruption handling. +var dispatch_message = function(msg) { + var method = msg.method + if (method == "initialize") { + handle_initialize(msg.id, msg.params) + } else if (method == "initialized") { + // no-op + } else if (method == "textDocument/didOpen") { + handle_did_open(msg.params) + } else if (method == "textDocument/didChange") { + handle_did_change(msg.params) + } else if (method == "textDocument/didClose") { + handle_did_close(msg.params) + } else if (method == "textDocument/didSave") { + handle_did_save(msg.params) + } else if (method == "textDocument/completion") { + handle_completion(msg.id, msg.params) + } else if (method == "textDocument/hover") { + handle_hover(msg.id, msg.params) + } else if (method == "textDocument/definition") { + handle_definition(msg.id, msg.params) + } else if (method == "textDocument/documentSymbol") { + handle_document_symbol(msg.id, msg.params) + } else if (method == "shutdown") { + protocol.respond(msg.id, null) + return "shutdown" + } else if (method == "exit") { + return "exit" + } else { + if (msg.id != null) { + protocol.respond_error(msg.id, -32601, `Method not found: ${method}`) + } + } + return null +} disruption { + log(`error handling ${msg.method}`) + if (msg.id != null) { + protocol.respond_error(msg.id, -32603, `Internal error handling ${msg.method}`) + } + return null +} + +// Main loop. +log("starting") + +var running = true +var msg = null +var result = null + +while (running) { + msg = protocol.read_message() + if (msg == null) { + running = false + break + } + + result = dispatch_message(msg) + if (result == "exit") { + running = false + } +} + +log("stopped") diff --git a/editors/vscode/lsp/protocol.cm b/editors/vscode/lsp/protocol.cm new file mode 100644 index 00000000..1206afde --- /dev/null +++ b/editors/vscode/lsp/protocol.cm @@ -0,0 +1,102 @@ +// JSON-RPC protocol helpers for LSP communication over stdin/stdout. +// Reads Content-Length framed messages from stdin, writes to stdout. + +var fd = use('fd') +var json = use('json') + +// Read a single JSON-RPC message from stdin. +// Protocol: "Content-Length: N\r\n\r\n" followed by N bytes of JSON. +var read_message = function() { + var header = "" + var ch = null + var content_length = null + var body = null + var total = 0 + var chunk = null + + // Read header byte by byte until we hit \r\n\r\n + while (true) { + ch = fd.read(0, 1) + if (ch == null) { + return null + } + header = header + text(ch) + if (ends_with(header, "\r\n\r\n")) { + break + } + } + + // Parse Content-Length from header + var lines = array(header, "\r\n") + var _i = 0 + while (_i < length(lines)) { + if (starts_with(lines[_i], "Content-Length:")) { + content_length = number(trim(text(lines[_i], 16))) + } + _i = _i + 1 + } + + if (content_length == null) { + return null + } + + // Read exactly content_length bytes + body = "" + total = 0 + while (total < content_length) { + chunk = fd.read(0, content_length - total) + if (chunk == null) { + return null + } + chunk = text(chunk) + body = body + chunk + total = total + length(chunk) + } + + return json.decode(body) +} + +// Send a JSON-RPC message to stdout. +var send_message = function(msg) { + var body = json.encode(msg) + var header = `Content-Length: ${text(length(body))}\r\n\r\n` + fd.write(1, header + body) +} + +// Send a JSON-RPC response for a request. +var respond = function(id, result) { + send_message({ + jsonrpc: "2.0", + id: id, + result: result + }) +} + +// Send a JSON-RPC error response. +var respond_error = function(id, code, message) { + send_message({ + jsonrpc: "2.0", + id: id, + error: { + code: code, + message: message + } + }) +} + +// Send a JSON-RPC notification (no id). +var notify = function(method, params) { + send_message({ + jsonrpc: "2.0", + method: method, + params: params + }) +} + +return { + read_message: read_message, + send_message: send_message, + respond: respond, + respond_error: respond_error, + notify: notify +} diff --git a/editors/vscode/lsp/symbols.cm b/editors/vscode/lsp/symbols.cm new file mode 100644 index 00000000..86b95044 --- /dev/null +++ b/editors/vscode/lsp/symbols.cm @@ -0,0 +1,238 @@ +// Document symbols and go-to-definition provider for the ƿit LSP. + +// SymbolKind constants (LSP spec) +def KIND_FUNCTION = 12 +def KIND_VARIABLE = 13 +def KIND_CONSTANT = 14 + +// Walk AST to extract document symbols (top-level vars/defs and functions). +var document_symbols = function(doc) { + var symbols = [] + var ast = doc.ast + var _i = 0 + var _j = 0 + var stmt = null + var decl = null + var name = null + var kind = null + var range = null + + if (ast == null || ast.statements == null) { + return symbols + } + + while (_i < length(ast.statements)) { + stmt = ast.statements[_i] + + if (stmt.kind == "var" || stmt.kind == "def") { + name = null + kind = KIND_VARIABLE + + if (stmt.left != null && stmt.left.name != null) { + name = stmt.left.name + } + + if (stmt.kind == "def") { + kind = KIND_CONSTANT + } + + if (stmt.right != null && (stmt.right.kind == "function" || stmt.right.kind == "arrow function")) { + kind = KIND_FUNCTION + } + + if (name != null) { + range = { + start: {line: stmt.from_row, character: stmt.from_column}, + end: {line: stmt.to_row, character: stmt.to_column} + } + symbols[] = { + name: name, + kind: kind, + range: range, + selectionRange: { + start: {line: stmt.left.from_row, character: stmt.left.from_column}, + end: {line: stmt.left.to_row, character: stmt.left.to_column} + } + } + } + } + + if (stmt.kind == "var_list" && stmt.list != null) { + _j = 0 + while (_j < length(stmt.list)) { + decl = stmt.list[_j] + if (decl.left != null && decl.left.name != null) { + kind = (decl.kind == "def") ? KIND_CONSTANT : KIND_VARIABLE + if (decl.right != null && (decl.right.kind == "function" || decl.right.kind == "arrow function")) { + kind = KIND_FUNCTION + } + range = { + start: {line: decl.from_row, character: decl.from_column}, + end: {line: decl.to_row, character: decl.to_column} + } + symbols[] = { + name: decl.left.name, + kind: kind, + range: range, + selectionRange: { + start: {line: decl.left.from_row, character: decl.left.from_column}, + end: {line: decl.left.to_row, character: decl.left.to_column} + } + } + } + _j = _j + 1 + } + } + + _i = _i + 1 + } + + return symbols +} + +// Find the declaration location of a name at a given position. +var definition = function(doc, line, col, token_at) { + var tok = token_at(doc, line, col) + var ast = doc.ast + var name = null + var _i = 0 + var _j = 0 + var scope = null + var v = null + var decl = null + + if (tok == null || tok.kind != "name" || tok.value == null) { + return null + } + + name = tok.value + + if (ast == null) { + return null + } + + // Search through scopes for the variable declaration + if (ast.scopes != null) { + _i = 0 + while (_i < length(ast.scopes)) { + scope = ast.scopes[_i] + if (scope.vars != null) { + _j = 0 + while (_j < length(scope.vars)) { + v = scope.vars[_j] + if (v.name == name) { + decl = find_declaration(ast.statements, name) + if (decl != null) { + return { + uri: doc.uri, + range: { + start: {line: decl.from_row, character: decl.from_column}, + end: {line: decl.to_row, character: decl.to_column} + } + } + } + } + _j = _j + 1 + } + } + _i = _i + 1 + } + } + + // Fallback: walk statements for var/def with this name + decl = find_declaration(ast.statements, name) + if (decl != null) { + return { + uri: doc.uri, + range: { + start: {line: decl.from_row, character: decl.from_column}, + end: {line: decl.to_row, character: decl.to_column} + } + } + } + + return null +} + +// Recursively search statements for a var/def declaration of a given name. +var find_declaration = function(statements, name) { + var _i = 0 + var _j = 0 + var stmt = null + var result = null + + if (statements == null) { + return null + } + + while (_i < length(statements)) { + stmt = statements[_i] + + // Direct var/def + if ((stmt.kind == "var" || stmt.kind == "def") + && stmt.left != null && stmt.left.name == name) { + return stmt + } + + // var_list + if (stmt.kind == "var_list" && stmt.list != null) { + _j = 0 + while (_j < length(stmt.list)) { + if (stmt.list[_j].left != null && stmt.list[_j].left.name == name) { + return stmt.list[_j] + } + _j = _j + 1 + } + } + + // Recurse into blocks + if (stmt.statements != null) { + result = find_declaration(stmt.statements, name) + if (result != null) { + return result + } + } + + // if/else + if (stmt.kind == "if") { + if (stmt.then != null && stmt.then.statements != null) { + result = find_declaration(stmt.then.statements, name) + if (result != null) { + return result + } + } + if (stmt.else != null && stmt.else.statements != null) { + result = find_declaration(stmt.else.statements, name) + if (result != null) { + return result + } + } + } + + // Function body + if ((stmt.kind == "function" || stmt.kind == "arrow function") && stmt.statements != null) { + result = find_declaration(stmt.statements, name) + if (result != null) { + return result + } + } + + // var/def with function right side + if ((stmt.kind == "var" || stmt.kind == "def") && stmt.right != null) { + if ((stmt.right.kind == "function" || stmt.right.kind == "arrow function") && stmt.right.statements != null) { + result = find_declaration(stmt.right.statements, name) + if (result != null) { + return result + } + } + } + + _i = _i + 1 + } + return null +} + +return { + document_symbols: document_symbols, + definition: definition +} diff --git a/editors/vscode/package.json b/editors/vscode/package.json new file mode 100644 index 00000000..4b3e875b --- /dev/null +++ b/editors/vscode/package.json @@ -0,0 +1,62 @@ +{ + "name": "pit-language", + "displayName": "ƿit Language", + "description": "Language support for ƿit (.ce/.cm) — syntax highlighting, diagnostics, completions, hover, and go-to-definition", + "version": "0.1.0", + "publisher": "pit-lang", + "engines": { + "vscode": "^1.75.0" + }, + "categories": [ + "Programming Languages" + ], + "activationEvents": [ + "onLanguage:pit" + ], + "main": "./out/extension.js", + "contributes": { + "languages": [ + { + "id": "pit", + "aliases": [ + "ƿit", + "pit" + ], + "extensions": [ + ".ce", + ".cm" + ], + "configuration": "./language-configuration.json" + } + ], + "grammars": [ + { + "language": "pit", + "scopeName": "source.pit", + "path": "./syntaxes/pit.tmLanguage.json" + } + ], + "configuration": { + "title": "ƿit", + "properties": { + "pit.cellPath": { + "type": "string", + "default": "cell", + "description": "Path to the cell executable" + } + } + } + }, + "scripts": { + "compile": "tsc -p ./", + "watch": "tsc -watch -p ./" + }, + "dependencies": { + "vscode-languageclient": "^9.0.0", + "vscode-languageserver-protocol": "^3.17.0" + }, + "devDependencies": { + "@types/vscode": "^1.75.0", + "typescript": "^5.0.0" + } +} diff --git a/editors/vscode/src/extension.ts b/editors/vscode/src/extension.ts new file mode 100644 index 00000000..6a1fa2c2 --- /dev/null +++ b/editors/vscode/src/extension.ts @@ -0,0 +1,44 @@ +import * as path from "path"; +import { workspace, ExtensionContext } from "vscode"; +import { + LanguageClient, + LanguageClientOptions, + ServerOptions, +} from "vscode-languageclient/node"; + +let client: LanguageClient; + +export function activate(context: ExtensionContext) { + const config = workspace.getConfiguration("pit"); + const cellPath = config.get("cellPath", "cell"); + const lspDir = path.join(context.extensionPath, "lsp"); + + const serverOptions: ServerOptions = { + command: cellPath, + args: ["lsp/lsp"], + options: { cwd: lspDir }, + }; + + const clientOptions: LanguageClientOptions = { + documentSelector: [{ scheme: "file", language: "pit" }], + synchronize: { + fileEvents: workspace.createFileSystemWatcher("**/*.{ce,cm}"), + }, + }; + + client = new LanguageClient( + "pitLanguageServer", + "ƿit Language Server", + serverOptions, + clientOptions + ); + + client.start(); +} + +export function deactivate(): Thenable | undefined { + if (!client) { + return undefined; + } + return client.stop(); +} diff --git a/editors/vscode/syntaxes/pit.tmLanguage.json b/editors/vscode/syntaxes/pit.tmLanguage.json new file mode 100644 index 00000000..205d14a6 --- /dev/null +++ b/editors/vscode/syntaxes/pit.tmLanguage.json @@ -0,0 +1,160 @@ +{ + "$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json", + "name": "pit", + "scopeName": "source.pit", + "patterns": [ + { "include": "#comment-line" }, + { "include": "#comment-block" }, + { "include": "#string-template" }, + { "include": "#string-double" }, + { "include": "#regexp" }, + { "include": "#keyword-control" }, + { "include": "#keyword-error" }, + { "include": "#storage-type" }, + { "include": "#constant-language" }, + { "include": "#variable-language" }, + { "include": "#actor-intrinsic" }, + { "include": "#keyword-operator" }, + { "include": "#arrow-function" }, + { "include": "#support-function" }, + { "include": "#constant-numeric-hex" }, + { "include": "#constant-numeric-binary" }, + { "include": "#constant-numeric-octal" }, + { "include": "#constant-numeric" }, + { "include": "#punctuation" } + ], + "repository": { + "comment-line": { + "name": "comment.line.double-slash.pit", + "match": "//.*$" + }, + "comment-block": { + "name": "comment.block.pit", + "begin": "/\\*", + "end": "\\*/", + "beginCaptures": { "0": { "name": "punctuation.definition.comment.begin.pit" } }, + "endCaptures": { "0": { "name": "punctuation.definition.comment.end.pit" } } + }, + "string-double": { + "name": "string.quoted.double.pit", + "begin": "\"", + "end": "\"", + "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.pit" } }, + "endCaptures": { "0": { "name": "punctuation.definition.string.end.pit" } }, + "patterns": [ + { + "name": "constant.character.escape.pit", + "match": "\\\\(?:[\"\\\\bfnrt/]|u[0-9a-fA-F]{4})" + } + ] + }, + "string-template": { + "name": "string.template.pit", + "begin": "`", + "end": "`", + "beginCaptures": { "0": { "name": "punctuation.definition.string.template.begin.pit" } }, + "endCaptures": { "0": { "name": "punctuation.definition.string.template.end.pit" } }, + "patterns": [ + { + "name": "constant.character.escape.pit", + "match": "\\\\(?:[`\\\\bfnrt/$]|u[0-9a-fA-F]{4})" + }, + { + "name": "meta.template.expression.pit", + "begin": "\\$\\{", + "end": "\\}", + "beginCaptures": { "0": { "name": "punctuation.definition.template-expression.begin.pit" } }, + "endCaptures": { "0": { "name": "punctuation.definition.template-expression.end.pit" } }, + "patterns": [ + { "include": "source.pit" } + ] + } + ] + }, + "regexp": { + "name": "string.regexp.pit", + "begin": "(?<=[=(:,;!&|?~^>]|^|return|disrupt)\\s*(/(?![/*]))", + "end": "/([gimsuvy]*)", + "beginCaptures": { "1": { "name": "punctuation.definition.string.begin.pit" } }, + "endCaptures": { "1": { "name": "keyword.other.pit" } }, + "patterns": [ + { + "name": "constant.character.escape.pit", + "match": "\\\\." + } + ] + }, + "keyword-control": { + "name": "keyword.control.pit", + "match": "\\b(if|else|for|while|do|break|continue|return|go)\\b" + }, + "keyword-error": { + "name": "keyword.control.error.pit", + "match": "\\b(disrupt|disruption)\\b" + }, + "storage-type": { + "patterns": [ + { + "name": "storage.type.pit", + "match": "\\b(var|def)\\b" + }, + { + "name": "storage.type.function.pit", + "match": "\\bfunction\\b" + } + ] + }, + "constant-language": { + "name": "constant.language.pit", + "match": "\\b(null|true|false)\\b" + }, + "variable-language": { + "name": "variable.language.this.pit", + "match": "\\bthis\\b" + }, + "actor-intrinsic": { + "name": "variable.language.actor.pit", + "match": "\\$[a-zA-Z_][a-zA-Z0-9_]*" + }, + "keyword-operator": { + "name": "keyword.operator.pit", + "match": "\\b(delete|in|typeof)\\b" + }, + "arrow-function": { + "name": "storage.type.function.arrow.pit", + "match": "=>" + }, + "support-function": { + "name": "support.function.pit", + "match": "\\b(abs|apply|array|ceiling|character|codepoint|ends_with|every|extract|fallback|filter|find|floor|for|format|fraction|is_array|is_blob|is_character|is_data|is_digit|is_false|is_fit|is_function|is_integer|is_letter|is_logical|is_lower|is_null|is_number|is_object|is_pattern|is_stone|is_text|is_true|is_upper|is_whitespace|length|logical|lower|max|min|modulo|neg|normalize|not|number|parallel|print|race|record|reduce|remainder|replace|reverse|round|search|sequence|sign|some|sort|starts_with|stone|text|trim|trunc|upper|whole|meme|proto|isa|splat|use)(?=\\s*\\()" + }, + "constant-numeric-hex": { + "name": "constant.numeric.hex.pit", + "match": "\\b0[xX][0-9a-fA-F]+\\b" + }, + "constant-numeric-binary": { + "name": "constant.numeric.binary.pit", + "match": "\\b0[bB][01]+\\b" + }, + "constant-numeric-octal": { + "name": "constant.numeric.octal.pit", + "match": "\\b0[oO][0-7]+\\b" + }, + "constant-numeric": { + "name": "constant.numeric.pit", + "match": "\\b[0-9]+(\\.[0-9]+)?([eE][+-]?[0-9]+)?\\b" + }, + "punctuation": { + "patterns": [ + { + "name": "punctuation.separator.comma.pit", + "match": "," + }, + { + "name": "punctuation.terminator.statement.pit", + "match": ";" + } + ] + } + } +} diff --git a/editors/vscode/tsconfig.json b/editors/vscode/tsconfig.json new file mode 100644 index 00000000..6dc4da45 --- /dev/null +++ b/editors/vscode/tsconfig.json @@ -0,0 +1,13 @@ +{ + "compilerOptions": { + "module": "commonjs", + "target": "ES2020", + "outDir": "out", + "lib": ["ES2020"], + "sourceMap": true, + "rootDir": "src", + "strict": true + }, + "include": ["src"], + "exclude": ["node_modules", "out"] +} diff --git a/fold.ast.json b/fold.ast.json new file mode 100644 index 00000000..f582ab0f --- /dev/null +++ b/fold.ast.json @@ -0,0 +1,46110 @@ +{ + "functions": [], + "scopes": [ + { + "fold": { + "function_nr": 0, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 0 + }, + { + "expr": { + "function_nr": 1, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "input" + }, + "k": { + "function_nr": 1, + "nr_uses": 5, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 1 + }, + { + "expr": { + "function_nr": 2, + "nr_uses": 12, + "closure": false, + "level": 0, + "make": "input" + }, + "k": { + "function_nr": 2, + "nr_uses": 19, + "closure": false, + "level": 0, + "make": "var" + }, + "i": { + "function_nr": 2, + "nr_uses": 6, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 2 + }, + { + "to": { + "function_nr": 3, + "nr_uses": 6, + "closure": false, + "level": 0, + "make": "input" + }, + "from": { + "function_nr": 3, + "nr_uses": 5, + "closure": false, + "level": 0, + "make": "input" + }, + "function_nr": 3 + }, + { + "src": { + "function_nr": 4, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "val": { + "function_nr": 4, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "input" + }, + "function_nr": 4 + }, + { + "src": { + "function_nr": 5, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "val": { + "function_nr": 5, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "function_nr": 5 + }, + { + "src": { + "function_nr": 6, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "input" + }, + "val": { + "function_nr": 6, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "function_nr": 6 + }, + { + "src": { + "function_nr": 7, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "function_nr": 7 + }, + { + "nv": { + "function_nr": 8, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "expr": { + "function_nr": 8, + "nr_uses": 5, + "closure": false, + "level": 0, + "make": "input" + }, + "k": { + "function_nr": 8, + "nr_uses": 5, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 8 + }, + { + "fn_nr": { + "function_nr": 9, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "i": { + "function_nr": 9, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 9 + }, + { + "fn_nr": { + "function_nr": 10, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "name": { + "function_nr": 10, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "sc": { + "function_nr": 10, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 10 + }, + { + "fn_nr": { + "function_nr": 11, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "name": { + "function_nr": 11, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "sc": { + "function_nr": 11, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 11 + }, + { + "fn_nr": { + "function_nr": 12, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "name": { + "function_nr": 12, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "lit_node": { + "function_nr": 12, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "key": { + "function_nr": 12, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 12 + }, + { + "fn_nr": { + "function_nr": 13, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "name": { + "function_nr": 13, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "key": { + "function_nr": 13, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 13 + }, + { + "fn_nr": { + "function_nr": 14, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "name": { + "function_nr": 14, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "count": { + "function_nr": 14, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "key": { + "function_nr": 14, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 14 + }, + { + "node": { + "function_nr": 15, + "nr_uses": 7, + "closure": false, + "level": 0, + "make": "input" + }, + "function_nr": 15 + }, + { + "sv": { + "function_nr": 16, + "nr_uses": 6, + "closure": false, + "level": 0, + "make": "var" + }, + "item": { + "function_nr": 16, + "nr_uses": 6, + "closure": false, + "level": 0, + "make": "var" + }, + "stmt": { + "function_nr": 16, + "nr_uses": 15, + "closure": false, + "level": 0, + "make": "var" + }, + "fn_nr": { + "function_nr": 16, + "nr_uses": 7, + "closure": false, + "level": 0, + "make": "input" + }, + "function_nr": 16, + "j": { + "function_nr": 16, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "name": { + "function_nr": 16, + "nr_uses": 11, + "closure": false, + "level": 0, + "make": "var" + }, + "stmts": { + "function_nr": 16, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "input" + }, + "i": { + "function_nr": 16, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "kind": { + "function_nr": 16, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + } + }, + { + "expr": { + "function_nr": 17, + "nr_uses": 17, + "closure": false, + "level": 0, + "make": "input" + }, + "k": { + "function_nr": 17, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "i": { + "function_nr": 17, + "nr_uses": 6, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 17 + }, + { + "stmt": { + "function_nr": 18, + "nr_uses": 24, + "closure": false, + "level": 0, + "make": "var" + }, + "fn_nr": { + "function_nr": 18, + "nr_uses": 7, + "closure": false, + "level": 0, + "make": "input" + }, + "function_nr": 18, + "j": { + "function_nr": 18, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "stmts": { + "function_nr": 18, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "input" + }, + "i": { + "function_nr": 18, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "kind": { + "function_nr": 18, + "nr_uses": 13, + "closure": false, + "level": 0, + "make": "var" + } + }, + { + "function_nr": 19 + }, + { + "target": { + "function_nr": 20, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "tv": { + "function_nr": 20, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "akey": { + "function_nr": 20, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "result": { + "function_nr": 20, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "lv": { + "function_nr": 20, + "nr_uses": 24, + "closure": false, + "level": 0, + "make": "var" + }, + "fn_nr": { + "function_nr": 20, + "nr_uses": 17, + "closure": false, + "level": 0, + "make": "input" + }, + "left": { + "function_nr": 20, + "nr_uses": 18, + "closure": false, + "level": 0, + "make": "var" + }, + "ar": { + "function_nr": 20, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "lit": { + "function_nr": 20, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "expr": { + "function_nr": 20, + "nr_uses": 96, + "closure": false, + "level": 0, + "make": "input" + }, + "right": { + "function_nr": 20, + "nr_uses": 18, + "closure": false, + "level": 0, + "make": "var" + }, + "sv": { + "function_nr": 20, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 20, + "rv": { + "function_nr": 20, + "nr_uses": 22, + "closure": false, + "level": 0, + "make": "var" + }, + "k": { + "function_nr": 20, + "nr_uses": 98, + "closure": false, + "level": 0, + "make": "var" + }, + "i": { + "function_nr": 20, + "nr_uses": 16, + "closure": false, + "level": 0, + "make": "var" + }, + "ek": { + "function_nr": 20, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + } + }, + { + "ik": { + "function_nr": 21, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "stmt": { + "function_nr": 21, + "nr_uses": 83, + "closure": false, + "level": 0, + "make": "input" + }, + "fn_nr": { + "function_nr": 21, + "nr_uses": 22, + "closure": false, + "level": 0, + "make": "input" + }, + "function_nr": 21, + "k": { + "function_nr": 21, + "nr_uses": 13, + "closure": false, + "level": 0, + "make": "var" + }, + "i": { + "function_nr": 21, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "tv": { + "function_nr": 21, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + } + }, + { + "sv": { + "function_nr": 22, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "stmt": { + "function_nr": 22, + "nr_uses": 12, + "closure": false, + "level": 0, + "make": "var" + }, + "out": { + "function_nr": 22, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "fn_nr": { + "function_nr": 22, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "input" + }, + "function_nr": 22, + "name": { + "function_nr": 22, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "stmts": { + "function_nr": 22, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "input" + }, + "i": { + "function_nr": 22, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + } + }, + { + "fn_nr": { + "function_nr": 23, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "node": { + "function_nr": 23, + "nr_uses": 12, + "closure": false, + "level": 0, + "make": "input" + }, + "i": { + "function_nr": 23, + "nr_uses": 5, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 23 + }, + { + "keys": { + "function_nr": 24, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "sc": { + "function_nr": 24, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "fn_nr": { + "function_nr": 24, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "cs": { + "function_nr": 24, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 24, + "ki": { + "function_nr": 24, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "s": { + "function_nr": 24, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "ent": { + "function_nr": 24, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "node": { + "function_nr": 24, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "input" + } + }, + { + "expr": { + "function_nr": 25, + "nr_uses": 19, + "closure": false, + "level": 0, + "make": "input" + }, + "k": { + "function_nr": 25, + "nr_uses": 5, + "closure": false, + "level": 0, + "make": "var" + }, + "i": { + "function_nr": 25, + "nr_uses": 6, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 25 + }, + { + "stmt": { + "function_nr": 26, + "nr_uses": 27, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 26, + "j": { + "function_nr": 26, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "stmts": { + "function_nr": 26, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "input" + }, + "i": { + "function_nr": 26, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "k": { + "function_nr": 26, + "nr_uses": 13, + "closure": false, + "level": 0, + "make": "var" + } + }, + { + "expr": { + "function_nr": 27, + "nr_uses": 25, + "closure": false, + "level": 0, + "make": "input" + }, + "k": { + "function_nr": 27, + "nr_uses": 6, + "closure": false, + "level": 0, + "make": "var" + }, + "i": { + "function_nr": 27, + "nr_uses": 10, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 27 + }, + { + "stmt": { + "function_nr": 28, + "nr_uses": 29, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 28, + "pi": { + "function_nr": 28, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "j": { + "function_nr": 28, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "stmts": { + "function_nr": 28, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "input" + }, + "k": { + "function_nr": 28, + "nr_uses": 13, + "closure": false, + "level": 0, + "make": "var" + }, + "i": { + "function_nr": 28, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + } + }, + { + "entry": { + "function_nr": 29, + "nr_uses": 6, + "closure": false, + "level": 0, + "make": "var" + }, + "used_intrinsics": { + "function_nr": 29, + "nr_uses": 2, + "closure": true, + "level": 0, + "make": "var" + }, + "close_slots": { + "function_nr": 29, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "key": { + "function_nr": 29, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "walk_stmts_for_fns": { + "function_nr": 29, + "nr_uses": 13, + "closure": true, + "level": 0, + "make": "var" + }, + "slots": { + "function_nr": 29, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "update_fn_slots": { + "function_nr": 29, + "nr_uses": 2, + "closure": true, + "level": 0, + "make": "var" + }, + "collect_intrinsics": { + "function_nr": 29, + "nr_uses": 13, + "closure": true, + "level": 0, + "make": "var" + }, + "collect_expr_intrinsics": { + "function_nr": 29, + "nr_uses": 19, + "closure": true, + "level": 0, + "make": "var" + }, + "walk_expr_for_fns": { + "function_nr": 29, + "nr_uses": 17, + "closure": true, + "level": 0, + "make": "var" + }, + "keys": { + "function_nr": 29, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "sc": { + "function_nr": 29, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 29, + "new_intrinsics": { + "function_nr": 29, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "j": { + "function_nr": 29, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "i": { + "function_nr": 29, + "nr_uses": 7, + "closure": false, + "level": 0, + "make": "var" + } + }, + { + "register_arity": { + "function_nr": 30, + "nr_uses": 3, + "closure": true, + "level": 0, + "make": "var" + }, + "make_null": { + "function_nr": 30, + "nr_uses": 3, + "closure": true, + "level": 0, + "make": "var" + }, + "fi": { + "function_nr": 30, + "nr_uses": 6, + "closure": false, + "level": 0, + "make": "var" + }, + "scopes": { + "function_nr": 30, + "nr_uses": 4, + "closure": true, + "level": 0, + "make": "var" + }, + "copy_loc": { + "function_nr": 30, + "nr_uses": 6, + "closure": true, + "level": 0, + "make": "var" + }, + "is_pure": { + "function_nr": 30, + "nr_uses": 9, + "closure": true, + "level": 0, + "make": "var" + }, + "find_scope": { + "function_nr": 30, + "nr_uses": 3, + "closure": true, + "level": 0, + "make": "var" + }, + "make_bool": { + "function_nr": 30, + "nr_uses": 10, + "closure": true, + "level": 0, + "make": "var" + }, + "is_literal": { + "function_nr": 30, + "nr_uses": 1, + "closure": true, + "level": 0, + "make": "var" + }, + "scope_var": { + "function_nr": 30, + "nr_uses": 6, + "closure": true, + "level": 0, + "make": "var" + }, + "fold_stmt": { + "function_nr": 30, + "nr_uses": 5, + "closure": true, + "level": 0, + "make": "var" + }, + "fold_fn": { + "function_nr": 30, + "nr_uses": 3, + "closure": true, + "level": 0, + "make": "var" + }, + "fold_expr": { + "function_nr": 30, + "nr_uses": 24, + "closure": true, + "level": 0, + "make": "var" + }, + "fn": { + "function_nr": 30, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "get_const": { + "function_nr": 30, + "nr_uses": 1, + "closure": true, + "level": 0, + "make": "var" + }, + "pre_scan_expr_fns": { + "function_nr": 30, + "nr_uses": 17, + "closure": true, + "level": 0, + "make": "var" + }, + "make_number": { + "function_nr": 30, + "nr_uses": 8, + "closure": true, + "level": 0, + "make": "var" + }, + "nr_scopes": { + "function_nr": 30, + "nr_uses": 2, + "closure": true, + "level": 0, + "make": "var" + }, + "make_text": { + "function_nr": 30, + "nr_uses": 1, + "closure": true, + "level": 0, + "make": "var" + }, + "const_defs": { + "function_nr": 30, + "nr_uses": 5, + "closure": true, + "level": 0, + "make": "var" + }, + "cleanup": { + "function_nr": 30, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "live_fns": { + "function_nr": 30, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "register_const": { + "function_nr": 30, + "nr_uses": 1, + "closure": true, + "level": 0, + "make": "var" + }, + "fold_stmts": { + "function_nr": 30, + "nr_uses": 12, + "closure": true, + "level": 0, + "make": "var" + }, + "pre_scan": { + "function_nr": 30, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "is_truthy_literal": { + "function_nr": 30, + "nr_uses": 2, + "closure": true, + "level": 0, + "make": "var" + }, + "ast": { + "function_nr": 30, + "nr_uses": 21, + "closure": true, + "level": 0, + "make": "input" + }, + "function_nr": 30, + "pre_scan_stmts": { + "function_nr": 30, + "nr_uses": 4, + "closure": true, + "level": 0, + "make": "var" + }, + "pre_scan_fn": { + "function_nr": 30, + "nr_uses": 2, + "closure": true, + "level": 0, + "make": "var" + }, + "pre_scan_stmt_exprs": { + "function_nr": 30, + "nr_uses": 9, + "closure": true, + "level": 0, + "make": "var" + }, + "fn_arities": { + "function_nr": 30, + "nr_uses": 5, + "closure": true, + "level": 0, + "make": "var" + } + } + ], + "statements": [ + { + "to_column": 1, + "from_column": 0, + "right": { + "from_column": 11, + "nr_slots": 31, + "statements": [ + { + "to_column": 25, + "from_column": 2, + "right": { + "to_column": 25, + "from_column": 18, + "right": "scopes", + "left": { + "to_column": 18, + "from_column": 15, + "level": 0, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 143, + "from_row": 4, + "to_row": 4 + }, + "kind": ".", + "at": 146, + "from_row": 4, + "to_row": 4 + }, + "left": { + "to_column": 12, + "from_column": 6, + "name": "scopes", + "kind": "name", + "at": 134, + "from_row": 4, + "to_row": 4 + }, + "kind": "var", + "at": 130, + "from_row": 4, + "to_row": 4 + }, + { + "to_column": 32, + "from_column": 2, + "right": { + "list": [ + { + "to_column": 31, + "from_column": 25, + "level": 0, + "function_nr": 30, + "name": "scopes", + "kind": "name", + "at": 179, + "from_row": 5, + "to_row": 5 + } + ], + "from_column": 24, + "to_row": 5, + "to_column": 32, + "kind": "(", + "at": 178, + "from_row": 5, + "expression": { + "to_column": 24, + "from_column": 18, + "level": -1, + "name": "length", + "kind": "name", + "at": 172, + "from_row": 5, + "to_row": 5 + } + }, + "left": { + "to_column": 15, + "from_column": 6, + "name": "nr_scopes", + "kind": "name", + "at": 160, + "from_row": 5, + "to_row": 5 + }, + "kind": "var", + "at": 156, + "from_row": 5, + "to_row": 5 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 19, + "nr_slots": 2, + "statements": [ + { + "then": [ + { + "to_row": 12, + "from_column": 22, + "to_column": 34, + "kind": "return", + "at": 392, + "from_row": 12, + "expression": { + "to_column": 34, + "from_column": 29, + "kind": "false", + "at": 399, + "from_row": 12, + "to_row": 12 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 12, + "to_column": 34, + "kind": "if", + "at": 374, + "from_row": 12, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 386, + "from_row": 12, + "to_row": 12 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 1, + "name": "expr", + "kind": "name", + "at": 378, + "from_row": 12, + "to_row": 12 + }, + "kind": "==", + "at": 383, + "from_row": 12, + "to_row": 12 + } + }, + { + "to_column": 21, + "from_column": 4, + "right": { + "to_column": 21, + "from_column": 16, + "right": "kind", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 1, + "name": "expr", + "kind": "name", + "at": 417, + "from_row": 13, + "to_row": 13 + }, + "kind": ".", + "at": 421, + "from_row": 13, + "to_row": 13 + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "k", + "kind": "name", + "at": 413, + "from_row": 13, + "to_row": 13 + }, + "kind": "var", + "at": 409, + "from_row": 13, + "to_row": 13 + }, + { + "to_row": 14, + "from_column": 4, + "to_column": 85, + "kind": "return", + "at": 431, + "from_row": 14, + "expression": { + "to_column": 85, + "from_column": 71, + "right": { + "to_column": 85, + "from_column": 76, + "right": { + "to_row": 14, + "from_column": 79, + "to_column": 85, + "kind": "text", + "at": 506, + "from_row": 14, + "value": "null" + }, + "left": { + "to_column": 75, + "from_column": 74, + "level": 0, + "function_nr": 1, + "name": "k", + "kind": "name", + "at": 501, + "from_row": 14, + "to_row": 14 + }, + "kind": "==", + "at": 503, + "from_row": 14, + "to_row": 14 + }, + "left": { + "to_column": 70, + "from_column": 55, + "right": { + "to_column": 70, + "from_column": 60, + "right": { + "to_row": 14, + "from_column": 63, + "to_column": 70, + "kind": "text", + "at": 490, + "from_row": 14, + "value": "false" + }, + "left": { + "to_column": 59, + "from_column": 58, + "level": 0, + "function_nr": 1, + "name": "k", + "kind": "name", + "at": 485, + "from_row": 14, + "to_row": 14 + }, + "kind": "==", + "at": 487, + "from_row": 14, + "to_row": 14 + }, + "left": { + "to_column": 54, + "from_column": 40, + "right": { + "to_column": 54, + "from_column": 45, + "right": { + "to_row": 14, + "from_column": 48, + "to_column": 54, + "kind": "text", + "at": 475, + "from_row": 14, + "value": "true" + }, + "left": { + "to_column": 44, + "from_column": 43, + "level": 0, + "function_nr": 1, + "name": "k", + "kind": "name", + "at": 470, + "from_row": 14, + "to_row": 14 + }, + "kind": "==", + "at": 472, + "from_row": 14, + "to_row": 14 + }, + "left": { + "to_column": 39, + "from_column": 25, + "right": { + "to_column": 39, + "from_column": 30, + "right": { + "to_row": 14, + "from_column": 33, + "to_column": 39, + "kind": "text", + "at": 460, + "from_row": 14, + "value": "text" + }, + "left": { + "to_column": 29, + "from_column": 28, + "level": 0, + "function_nr": 1, + "name": "k", + "kind": "name", + "at": 455, + "from_row": 14, + "to_row": 14 + }, + "kind": "==", + "at": 457, + "from_row": 14, + "to_row": 14 + }, + "left": { + "to_column": 24, + "from_column": 13, + "right": { + "to_row": 14, + "from_column": 16, + "to_column": 24, + "kind": "text", + "at": 443, + "from_row": 14, + "value": "number" + }, + "left": { + "to_column": 12, + "from_column": 11, + "level": 0, + "function_nr": 1, + "name": "k", + "kind": "name", + "at": 438, + "from_row": 14, + "to_row": 14 + }, + "kind": "==", + "at": 440, + "from_row": 14, + "to_row": 14 + }, + "kind": "||", + "at": 452, + "from_row": 14, + "to_row": 14 + }, + "kind": "||", + "at": 467, + "from_row": 14, + "to_row": 14 + }, + "kind": "||", + "at": 482, + "from_row": 14, + "to_row": 14 + }, + "kind": "||", + "at": 498, + "from_row": 14, + "to_row": 14 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 353, + "to_row": 15, + "outer": 30, + "list": [ + { + "to_column": 32, + "from_column": 28, + "name": "expr", + "kind": "name", + "at": 362, + "from_row": 11, + "to_row": 11 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 1, + "from_row": 11 + }, + "left": { + "to_column": 16, + "from_column": 6, + "name": "is_literal", + "kind": "name", + "at": 340, + "from_row": 11, + "to_row": 11 + }, + "kind": "var", + "at": 336, + "from_row": 11, + "to_row": 15 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 16, + "nr_slots": 3, + "statements": [ + { + "then": [ + { + "to_row": 18, + "from_column": 22, + "to_column": 33, + "kind": "return", + "at": 573, + "from_row": 18, + "expression": { + "to_column": 33, + "from_column": 29, + "kind": "true", + "at": 580, + "from_row": 18, + "to_row": 18 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 18, + "to_column": 33, + "kind": "if", + "at": 555, + "from_row": 18, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 567, + "from_row": 18, + "to_row": 18 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 559, + "from_row": 18, + "to_row": 18 + }, + "kind": "==", + "at": 564, + "from_row": 18, + "to_row": 18 + } + }, + { + "to_column": 21, + "from_column": 4, + "right": { + "to_column": 21, + "from_column": 16, + "right": "kind", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 597, + "from_row": 19, + "to_row": 19 + }, + "kind": ".", + "at": 601, + "from_row": 19, + "to_row": 19 + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "k", + "kind": "name", + "at": 593, + "from_row": 19, + "to_row": 19 + }, + "kind": "var", + "at": 589, + "from_row": 19, + "to_row": 19 + }, + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 20, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 619, + "from_row": 20, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "i", + "kind": "name", + "at": 615, + "from_row": 20, + "to_row": 20 + }, + "kind": "var", + "at": 611, + "from_row": 20, + "to_row": 20 + }, + { + "then": [ + { + "to_row": 22, + "from_column": 51, + "to_column": 62, + "kind": "return", + "at": 743, + "from_row": 22, + "expression": { + "to_column": 62, + "from_column": 58, + "kind": "true", + "at": 750, + "from_row": 22, + "to_row": 22 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 22, + "to_column": 62, + "kind": "if", + "at": 625, + "from_row": 21, + "expression": { + "to_column": 49, + "from_column": 35, + "right": { + "to_column": 49, + "from_column": 40, + "right": { + "to_row": 22, + "from_column": 43, + "to_column": 49, + "kind": "text", + "at": 735, + "from_row": 22, + "value": "this" + }, + "left": { + "to_column": 39, + "from_column": 38, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 730, + "from_row": 22, + "to_row": 22 + }, + "kind": "==", + "at": 732, + "from_row": 22, + "to_row": 22 + }, + "left": { + "to_column": 34, + "from_column": 20, + "right": { + "to_column": 34, + "from_column": 25, + "right": { + "to_row": 22, + "from_column": 28, + "to_column": 34, + "kind": "text", + "at": 720, + "from_row": 22, + "value": "name" + }, + "left": { + "to_column": 24, + "from_column": 23, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 715, + "from_row": 22, + "to_row": 22 + }, + "kind": "==", + "at": 717, + "from_row": 22, + "to_row": 22 + }, + "left": { + "to_column": 19, + "from_column": 68, + "right": { + "to_column": 19, + "from_column": 10, + "right": { + "to_row": 22, + "from_column": 13, + "to_column": 19, + "kind": "text", + "at": 705, + "from_row": 22, + "value": "null" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 700, + "from_row": 22, + "to_row": 22 + }, + "kind": "==", + "at": 702, + "from_row": 22, + "to_row": 22 + }, + "left": { + "to_column": 67, + "from_column": 52, + "right": { + "to_column": 67, + "from_column": 57, + "right": { + "to_row": 21, + "from_column": 60, + "to_column": 67, + "kind": "text", + "at": 681, + "from_row": 21, + "value": "false" + }, + "left": { + "to_column": 56, + "from_column": 55, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 676, + "from_row": 21, + "to_row": 21 + }, + "kind": "==", + "at": 678, + "from_row": 21, + "to_row": 21 + }, + "left": { + "to_column": 51, + "from_column": 37, + "right": { + "to_column": 51, + "from_column": 42, + "right": { + "to_row": 21, + "from_column": 45, + "to_column": 51, + "kind": "text", + "at": 666, + "from_row": 21, + "value": "true" + }, + "left": { + "to_column": 41, + "from_column": 40, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 661, + "from_row": 21, + "to_row": 21 + }, + "kind": "==", + "at": 663, + "from_row": 21, + "to_row": 21 + }, + "left": { + "to_column": 36, + "from_column": 22, + "right": { + "to_column": 36, + "from_column": 27, + "right": { + "to_row": 21, + "from_column": 30, + "to_column": 36, + "kind": "text", + "at": 651, + "from_row": 21, + "value": "text" + }, + "left": { + "to_column": 26, + "from_column": 25, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 646, + "from_row": 21, + "to_row": 21 + }, + "kind": "==", + "at": 648, + "from_row": 21, + "to_row": 21 + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": { + "to_row": 21, + "from_column": 13, + "to_column": 21, + "kind": "text", + "at": 634, + "from_row": 21, + "value": "number" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 629, + "from_row": 21, + "to_row": 21 + }, + "kind": "==", + "at": 631, + "from_row": 21, + "to_row": 21 + }, + "kind": "||", + "at": 643, + "from_row": 21, + "to_row": 21 + }, + "kind": "||", + "at": 658, + "from_row": 21, + "to_row": 21 + }, + "kind": "||", + "at": 673, + "from_row": 21, + "to_row": 21 + }, + "kind": "||", + "at": 689, + "from_row": 21, + "to_row": 22 + }, + "kind": "||", + "at": 712, + "from_row": 22, + "to_row": 22 + }, + "kind": "||", + "at": 727, + "from_row": 22, + "to_row": 22 + } + }, + { + "then": [ + { + "to_row": 23, + "from_column": 25, + "to_column": 36, + "kind": "return", + "at": 780, + "from_row": 23, + "expression": { + "to_column": 36, + "from_column": 32, + "kind": "true", + "at": 787, + "from_row": 23, + "to_row": 23 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 23, + "to_column": 36, + "kind": "if", + "at": 759, + "from_row": 23, + "expression": { + "to_column": 23, + "from_column": 10, + "right": { + "to_row": 23, + "from_column": 13, + "to_column": 23, + "kind": "text", + "at": 768, + "from_row": 23, + "value": "function" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 763, + "from_row": 23, + "to_row": 23 + }, + "kind": "==", + "at": 765, + "from_row": 23, + "to_row": 23 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 64, + "statements": [ + { + "to_row": 25, + "from_column": 6, + "to_column": 37, + "kind": "return", + "at": 864, + "from_row": 25, + "expression": { + "list": [ + { + "to_column": 36, + "from_column": 25, + "right": "expression", + "left": { + "to_column": 25, + "from_column": 21, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 879, + "from_row": 25, + "to_row": 25 + }, + "kind": ".", + "at": 883, + "from_row": 25, + "to_row": 25 + } + ], + "from_column": 20, + "to_row": 25, + "to_column": 37, + "kind": "(", + "at": 878, + "from_row": 25, + "expression": { + "to_column": 20, + "from_column": 13, + "level": 1, + "function_nr": 30, + "name": "is_pure", + "kind": "name", + "at": 871, + "from_row": 25, + "to_row": 25 + } + } + } + ], + "kind": "block", + "at": 856, + "from_row": 24, + "to_row": 26 + } + ], + "from_column": 4, + "list": [], + "to_row": 26, + "to_column": 5, + "kind": "if", + "at": 796, + "from_row": 24, + "expression": { + "to_column": 62, + "from_column": 46, + "right": { + "to_column": 62, + "from_column": 51, + "right": { + "to_row": 24, + "from_column": 54, + "to_column": 62, + "kind": "text", + "at": 846, + "from_row": 24, + "value": "+unary" + }, + "left": { + "to_column": 50, + "from_column": 49, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 841, + "from_row": 24, + "to_row": 24 + }, + "kind": "==", + "at": 843, + "from_row": 24, + "to_row": 24 + }, + "left": { + "to_column": 45, + "from_column": 29, + "right": { + "to_column": 45, + "from_column": 34, + "right": { + "to_row": 24, + "from_column": 37, + "to_column": 45, + "kind": "text", + "at": 829, + "from_row": 24, + "value": "-unary" + }, + "left": { + "to_column": 33, + "from_column": 32, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 824, + "from_row": 24, + "to_row": 24 + }, + "kind": "==", + "at": 826, + "from_row": 24, + "to_row": 24 + }, + "left": { + "to_column": 28, + "from_column": 17, + "right": { + "to_column": 28, + "from_column": 22, + "right": { + "to_row": 24, + "from_column": 25, + "to_column": 28, + "kind": "text", + "at": 817, + "from_row": 24, + "value": "~" + }, + "left": { + "to_column": 21, + "from_column": 20, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 812, + "from_row": 24, + "to_row": 24 + }, + "kind": "==", + "at": 814, + "from_row": 24, + "to_row": 24 + }, + "left": { + "to_column": 16, + "from_column": 10, + "right": { + "to_row": 24, + "from_column": 13, + "to_column": 16, + "kind": "text", + "at": 805, + "from_row": 24, + "value": "!" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 800, + "from_row": 24, + "to_row": 24 + }, + "kind": "==", + "at": 802, + "from_row": 24, + "to_row": 24 + }, + "kind": "||", + "at": 809, + "from_row": 24, + "to_row": 24 + }, + "kind": "||", + "at": 821, + "from_row": 24, + "to_row": 24 + }, + "kind": "||", + "at": 838, + "from_row": 24, + "to_row": 24 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 22, + "statements": [ + { + "to_row": 28, + "from_column": 6, + "to_column": 11, + "kind": "call", + "at": 932, + "from_row": 28, + "expression": { + "to_column": 11, + "from_column": 8, + "right": { + "to_row": 28, + "from_column": 10, + "number": 0, + "to_column": 11, + "kind": "number", + "at": 936, + "from_row": 28, + "value": "0" + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 2, + "name": "i", + "kind": "name", + "at": 932, + "from_row": 28, + "to_row": 28 + }, + "kind": "assign", + "at": 934, + "from_row": 28, + "to_row": 28 + } + }, + { + "to_row": 32, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 36, + "statements": [ + { + "then": [ + { + "to_row": 30, + "from_column": 36, + "to_column": 48, + "kind": "return", + "at": 1012, + "from_row": 30, + "expression": { + "to_column": 48, + "from_column": 43, + "kind": "false", + "at": 1019, + "from_row": 30, + "to_row": 30 + } + } + ], + "from_column": 8, + "list": [], + "to_row": 30, + "to_column": 48, + "kind": "if", + "at": 984, + "from_row": 30, + "expression": { + "to_row": 30, + "from_column": 12, + "to_column": 34, + "kind": "!", + "at": 988, + "from_row": 30, + "expression": { + "list": [ + { + "to_column": 33, + "from_column": 30, + "right": { + "to_column": 32, + "from_column": 31, + "level": 0, + "function_nr": 2, + "name": "i", + "kind": "name", + "at": 1007, + "from_row": 30, + "to_row": 30 + }, + "left": { + "to_column": 30, + "from_column": 25, + "right": "list", + "left": { + "to_column": 25, + "from_column": 21, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 997, + "from_row": 30, + "to_row": 30 + }, + "kind": ".", + "at": 1001, + "from_row": 30, + "to_row": 30 + }, + "kind": "[", + "at": 1006, + "from_row": 30, + "to_row": 30 + } + ], + "from_column": 20, + "to_row": 30, + "to_column": 34, + "kind": "(", + "at": 996, + "from_row": 30, + "expression": { + "to_column": 20, + "from_column": 13, + "level": 1, + "function_nr": 30, + "name": "is_pure", + "kind": "name", + "at": 989, + "from_row": 30, + "to_row": 30 + } + } + } + }, + { + "to_row": 31, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 1033, + "from_row": 31, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 31, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 1041, + "from_row": 31, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 2, + "name": "i", + "kind": "name", + "at": 1037, + "from_row": 31, + "to_row": 31 + }, + "kind": "+", + "at": 1039, + "from_row": 31, + "to_row": 31 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 2, + "name": "i", + "kind": "name", + "at": 1033, + "from_row": 31, + "to_row": 31 + }, + "kind": "assign", + "at": 1035, + "from_row": 31, + "to_row": 31 + } + } + ], + "kind": "block", + "at": 974, + "from_row": 29, + "to_row": 32 + } + ], + "kind": "while", + "at": 944, + "from_row": 29, + "expression": { + "to_column": 34, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 33, + "from_column": 28, + "right": "list", + "left": { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 962, + "from_row": 29, + "to_row": 29 + }, + "kind": ".", + "at": 966, + "from_row": 29, + "to_row": 29 + } + ], + "from_column": 23, + "to_row": 29, + "to_column": 34, + "kind": "(", + "at": 961, + "from_row": 29, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 955, + "from_row": 29, + "to_row": 29 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 2, + "name": "i", + "kind": "name", + "at": 951, + "from_row": 29, + "to_row": 29 + }, + "kind": "<", + "at": 953, + "from_row": 29, + "to_row": 29 + } + }, + { + "to_row": 33, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 1057, + "from_row": 33, + "expression": { + "to_column": 17, + "from_column": 13, + "kind": "true", + "at": 1064, + "from_row": 33, + "to_row": 33 + } + } + ], + "kind": "block", + "at": 924, + "from_row": 27, + "to_row": 34 + } + ], + "from_column": 4, + "list": [], + "to_row": 34, + "to_column": 5, + "kind": "if", + "at": 906, + "from_row": 27, + "expression": { + "to_column": 20, + "from_column": 10, + "right": { + "to_row": 27, + "from_column": 13, + "to_column": 20, + "kind": "text", + "at": 915, + "from_row": 27, + "value": "array" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 910, + "from_row": 27, + "to_row": 27 + }, + "kind": "==", + "at": 912, + "from_row": 27, + "to_row": 27 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 23, + "statements": [ + { + "to_row": 36, + "from_column": 6, + "to_column": 11, + "kind": "call", + "at": 1106, + "from_row": 36, + "expression": { + "to_column": 11, + "from_column": 8, + "right": { + "to_row": 36, + "from_column": 10, + "number": 0, + "to_column": 11, + "kind": "number", + "at": 1110, + "from_row": 36, + "value": "0" + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 2, + "name": "i", + "kind": "name", + "at": 1106, + "from_row": 36, + "to_row": 36 + }, + "kind": "assign", + "at": 1108, + "from_row": 36, + "to_row": 36 + } + }, + { + "to_row": 40, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 36, + "statements": [ + { + "then": [ + { + "to_row": 38, + "from_column": 42, + "to_column": 54, + "kind": "return", + "at": 1192, + "from_row": 38, + "expression": { + "to_column": 54, + "from_column": 49, + "kind": "false", + "at": 1199, + "from_row": 38, + "to_row": 38 + } + } + ], + "from_column": 8, + "list": [], + "to_row": 38, + "to_column": 54, + "kind": "if", + "at": 1158, + "from_row": 38, + "expression": { + "to_row": 38, + "from_column": 12, + "to_column": 40, + "kind": "!", + "at": 1162, + "from_row": 38, + "expression": { + "list": [ + { + "to_column": 39, + "from_column": 33, + "right": "right", + "left": { + "to_column": 33, + "from_column": 30, + "right": { + "to_column": 32, + "from_column": 31, + "level": 0, + "function_nr": 2, + "name": "i", + "kind": "name", + "at": 1181, + "from_row": 38, + "to_row": 38 + }, + "left": { + "to_column": 30, + "from_column": 25, + "right": "list", + "left": { + "to_column": 25, + "from_column": 21, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 1171, + "from_row": 38, + "to_row": 38 + }, + "kind": ".", + "at": 1175, + "from_row": 38, + "to_row": 38 + }, + "kind": "[", + "at": 1180, + "from_row": 38, + "to_row": 38 + }, + "kind": ".", + "at": 1183, + "from_row": 38, + "to_row": 38 + } + ], + "from_column": 20, + "to_row": 38, + "to_column": 40, + "kind": "(", + "at": 1170, + "from_row": 38, + "expression": { + "to_column": 20, + "from_column": 13, + "level": 1, + "function_nr": 30, + "name": "is_pure", + "kind": "name", + "at": 1163, + "from_row": 38, + "to_row": 38 + } + } + } + }, + { + "to_row": 39, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 1213, + "from_row": 39, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 39, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 1221, + "from_row": 39, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 2, + "name": "i", + "kind": "name", + "at": 1217, + "from_row": 39, + "to_row": 39 + }, + "kind": "+", + "at": 1219, + "from_row": 39, + "to_row": 39 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 2, + "name": "i", + "kind": "name", + "at": 1213, + "from_row": 39, + "to_row": 39 + }, + "kind": "assign", + "at": 1215, + "from_row": 39, + "to_row": 39 + } + } + ], + "kind": "block", + "at": 1148, + "from_row": 37, + "to_row": 40 + } + ], + "kind": "while", + "at": 1118, + "from_row": 37, + "expression": { + "to_column": 34, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 33, + "from_column": 28, + "right": "list", + "left": { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 1136, + "from_row": 37, + "to_row": 37 + }, + "kind": ".", + "at": 1140, + "from_row": 37, + "to_row": 37 + } + ], + "from_column": 23, + "to_row": 37, + "to_column": 34, + "kind": "(", + "at": 1135, + "from_row": 37, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 1129, + "from_row": 37, + "to_row": 37 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 2, + "name": "i", + "kind": "name", + "at": 1125, + "from_row": 37, + "to_row": 37 + }, + "kind": "<", + "at": 1127, + "from_row": 37, + "to_row": 37 + } + }, + { + "to_row": 41, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 1237, + "from_row": 41, + "expression": { + "to_column": 17, + "from_column": 13, + "kind": "true", + "at": 1244, + "from_row": 41, + "to_row": 41 + } + } + ], + "kind": "block", + "at": 1098, + "from_row": 35, + "to_row": 42 + } + ], + "from_column": 4, + "list": [], + "to_row": 42, + "to_column": 5, + "kind": "if", + "at": 1079, + "from_row": 35, + "expression": { + "to_column": 21, + "from_column": 10, + "right": { + "to_row": 35, + "from_column": 13, + "to_column": 21, + "kind": "text", + "at": 1088, + "from_row": 35, + "value": "record" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 1083, + "from_row": 35, + "to_row": 35 + }, + "kind": "==", + "at": 1085, + "from_row": 35, + "to_row": 35 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 21, + "statements": [ + { + "to_row": 44, + "from_column": 6, + "to_column": 81, + "kind": "return", + "at": 1284, + "from_row": 44, + "expression": { + "to_column": 81, + "from_column": 60, + "right": { + "list": [ + { + "to_column": 80, + "from_column": 75, + "right": "else", + "left": { + "to_column": 75, + "from_column": 71, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 1349, + "from_row": 44, + "to_row": 44 + }, + "kind": ".", + "at": 1353, + "from_row": 44, + "to_row": 44 + } + ], + "from_column": 70, + "to_row": 44, + "to_column": 81, + "kind": "(", + "at": 1348, + "from_row": 44, + "expression": { + "to_column": 70, + "from_column": 63, + "level": 1, + "function_nr": 30, + "name": "is_pure", + "kind": "name", + "at": 1341, + "from_row": 44, + "to_row": 44 + } + }, + "left": { + "to_column": 59, + "from_column": 38, + "right": { + "list": [ + { + "to_column": 58, + "from_column": 53, + "right": "then", + "left": { + "to_column": 53, + "from_column": 49, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 1327, + "from_row": 44, + "to_row": 44 + }, + "kind": ".", + "at": 1331, + "from_row": 44, + "to_row": 44 + } + ], + "from_column": 48, + "to_row": 44, + "to_column": 59, + "kind": "(", + "at": 1326, + "from_row": 44, + "expression": { + "to_column": 48, + "from_column": 41, + "level": 1, + "function_nr": 30, + "name": "is_pure", + "kind": "name", + "at": 1319, + "from_row": 44, + "to_row": 44 + } + }, + "left": { + "list": [ + { + "to_column": 36, + "from_column": 25, + "right": "expression", + "left": { + "to_column": 25, + "from_column": 21, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 1299, + "from_row": 44, + "to_row": 44 + }, + "kind": ".", + "at": 1303, + "from_row": 44, + "to_row": 44 + } + ], + "from_column": 20, + "to_row": 44, + "to_column": 37, + "kind": "(", + "at": 1298, + "from_row": 44, + "expression": { + "to_column": 20, + "from_column": 13, + "level": 1, + "function_nr": 30, + "name": "is_pure", + "kind": "name", + "at": 1291, + "from_row": 44, + "to_row": 44 + } + }, + "kind": "&&", + "at": 1316, + "from_row": 44, + "to_row": 44 + }, + "kind": "&&", + "at": 1338, + "from_row": 44, + "to_row": 44 + } + } + ], + "kind": "block", + "at": 1276, + "from_row": 43, + "to_row": 45 + } + ], + "from_column": 4, + "list": [], + "to_row": 45, + "to_column": 5, + "kind": "if", + "at": 1259, + "from_row": 43, + "expression": { + "to_column": 19, + "from_column": 10, + "right": { + "to_row": 43, + "from_column": 13, + "to_column": 19, + "kind": "text", + "at": 1268, + "from_row": 43, + "value": "then" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 1263, + "from_row": 43, + "to_row": 43 + }, + "kind": "==", + "at": 1265, + "from_row": 43, + "to_row": 43 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 58, + "statements": [ + { + "to_row": 47, + "from_column": 6, + "to_column": 54, + "kind": "return", + "at": 1432, + "from_row": 47, + "expression": { + "to_column": 54, + "from_column": 32, + "right": { + "list": [ + { + "to_column": 53, + "from_column": 47, + "right": "right", + "left": { + "to_column": 47, + "from_column": 43, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 1469, + "from_row": 47, + "to_row": 47 + }, + "kind": ".", + "at": 1473, + "from_row": 47, + "to_row": 47 + } + ], + "from_column": 42, + "to_row": 47, + "to_column": 54, + "kind": "(", + "at": 1468, + "from_row": 47, + "expression": { + "to_column": 42, + "from_column": 35, + "level": 1, + "function_nr": 30, + "name": "is_pure", + "kind": "name", + "at": 1461, + "from_row": 47, + "to_row": 47 + } + }, + "left": { + "list": [ + { + "to_column": 30, + "from_column": 25, + "right": "left", + "left": { + "to_column": 25, + "from_column": 21, + "level": 0, + "function_nr": 2, + "name": "expr", + "kind": "name", + "at": 1447, + "from_row": 47, + "to_row": 47 + }, + "kind": ".", + "at": 1451, + "from_row": 47, + "to_row": 47 + } + ], + "from_column": 20, + "to_row": 47, + "to_column": 31, + "kind": "(", + "at": 1446, + "from_row": 47, + "expression": { + "to_column": 20, + "from_column": 13, + "level": 1, + "function_nr": 30, + "name": "is_pure", + "kind": "name", + "at": 1439, + "from_row": 47, + "to_row": 47 + } + }, + "kind": "&&", + "at": 1458, + "from_row": 47, + "to_row": 47 + } + } + ], + "kind": "block", + "at": 1424, + "from_row": 46, + "to_row": 48 + } + ], + "from_column": 4, + "list": [], + "to_row": 48, + "to_column": 5, + "kind": "if", + "at": 1370, + "from_row": 46, + "expression": { + "to_column": 56, + "from_column": 44, + "right": { + "to_column": 56, + "from_column": 49, + "right": { + "to_row": 46, + "from_column": 52, + "to_column": 56, + "kind": "text", + "at": 1418, + "from_row": 46, + "value": "||" + }, + "left": { + "to_column": 48, + "from_column": 47, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 1413, + "from_row": 46, + "to_row": 46 + }, + "kind": "==", + "at": 1415, + "from_row": 46, + "to_row": 46 + }, + "left": { + "to_column": 43, + "from_column": 31, + "right": { + "to_column": 43, + "from_column": 36, + "right": { + "to_row": 46, + "from_column": 39, + "to_column": 43, + "kind": "text", + "at": 1405, + "from_row": 46, + "value": "&&" + }, + "left": { + "to_column": 35, + "from_column": 34, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 1400, + "from_row": 46, + "to_row": 46 + }, + "kind": "==", + "at": 1402, + "from_row": 46, + "to_row": 46 + }, + "left": { + "to_column": 30, + "from_column": 18, + "right": { + "to_column": 30, + "from_column": 23, + "right": { + "to_row": 46, + "from_column": 26, + "to_column": 30, + "kind": "text", + "at": 1392, + "from_row": 46, + "value": "!=" + }, + "left": { + "to_column": 22, + "from_column": 21, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 1387, + "from_row": 46, + "to_row": 46 + }, + "kind": "==", + "at": 1389, + "from_row": 46, + "to_row": 46 + }, + "left": { + "to_column": 17, + "from_column": 10, + "right": { + "to_row": 46, + "from_column": 13, + "to_column": 17, + "kind": "text", + "at": 1379, + "from_row": 46, + "value": "==" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 2, + "name": "k", + "kind": "name", + "at": 1374, + "from_row": 46, + "to_row": 46 + }, + "kind": "==", + "at": 1376, + "from_row": 46, + "to_row": 46 + }, + "kind": "||", + "at": 1384, + "from_row": 46, + "to_row": 46 + }, + "kind": "||", + "at": 1397, + "from_row": 46, + "to_row": 46 + }, + "kind": "||", + "at": 1410, + "from_row": 46, + "to_row": 46 + } + }, + { + "to_row": 49, + "from_column": 4, + "to_column": 16, + "kind": "return", + "at": 1491, + "from_row": 49, + "expression": { + "to_column": 16, + "from_column": 11, + "kind": "false", + "at": 1498, + "from_row": 49, + "to_row": 49 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 534, + "to_row": 50, + "outer": 30, + "list": [ + { + "to_column": 29, + "from_column": 25, + "name": "expr", + "kind": "name", + "at": 543, + "from_row": 17, + "to_row": 17 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 2, + "from_row": 17 + }, + "left": { + "to_column": 13, + "from_column": 6, + "name": "is_pure", + "kind": "name", + "at": 524, + "from_row": 17, + "to_row": 17 + }, + "kind": "var", + "at": 520, + "from_row": 17, + "to_row": 50 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 17, + "nr_slots": 2, + "statements": [ + { + "to_row": 53, + "from_column": 4, + "to_column": 19, + "kind": "call", + "at": 1551, + "from_row": 53, + "expression": { + "to_column": 19, + "from_column": 10, + "right": { + "to_column": 19, + "from_column": 16, + "right": "at", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 3, + "name": "from", + "kind": "name", + "at": 1559, + "from_row": 53, + "to_row": 53 + }, + "kind": ".", + "at": 1563, + "from_row": 53, + "to_row": 53 + }, + "left": { + "to_column": 9, + "from_column": 6, + "right": "at", + "left": { + "to_column": 6, + "from_column": 4, + "level": 0, + "function_nr": 3, + "name": "to", + "kind": "name", + "at": 1551, + "from_row": 53, + "to_row": 53 + }, + "kind": ".", + "at": 1553, + "from_row": 53, + "to_row": 53 + }, + "kind": "assign", + "at": 1557, + "from_row": 53, + "to_row": 53 + } + }, + { + "to_row": 54, + "from_column": 4, + "to_column": 31, + "kind": "call", + "at": 1571, + "from_row": 54, + "expression": { + "to_column": 31, + "from_column": 16, + "right": { + "to_column": 31, + "from_column": 22, + "right": "from_row", + "left": { + "to_column": 22, + "from_column": 18, + "level": 0, + "function_nr": 3, + "name": "from", + "kind": "name", + "at": 1585, + "from_row": 54, + "to_row": 54 + }, + "kind": ".", + "at": 1589, + "from_row": 54, + "to_row": 54 + }, + "left": { + "to_column": 15, + "from_column": 6, + "right": "from_row", + "left": { + "to_column": 6, + "from_column": 4, + "level": 0, + "function_nr": 3, + "name": "to", + "kind": "name", + "at": 1571, + "from_row": 54, + "to_row": 54 + }, + "kind": ".", + "at": 1573, + "from_row": 54, + "to_row": 54 + }, + "kind": "assign", + "at": 1583, + "from_row": 54, + "to_row": 54 + } + }, + { + "to_row": 55, + "from_column": 4, + "to_column": 37, + "kind": "call", + "at": 1603, + "from_row": 55, + "expression": { + "to_column": 37, + "from_column": 19, + "right": { + "to_column": 37, + "from_column": 25, + "right": "from_column", + "left": { + "to_column": 25, + "from_column": 21, + "level": 0, + "function_nr": 3, + "name": "from", + "kind": "name", + "at": 1620, + "from_row": 55, + "to_row": 55 + }, + "kind": ".", + "at": 1624, + "from_row": 55, + "to_row": 55 + }, + "left": { + "to_column": 18, + "from_column": 6, + "right": "from_column", + "left": { + "to_column": 6, + "from_column": 4, + "level": 0, + "function_nr": 3, + "name": "to", + "kind": "name", + "at": 1603, + "from_row": 55, + "to_row": 55 + }, + "kind": ".", + "at": 1605, + "from_row": 55, + "to_row": 55 + }, + "kind": "assign", + "at": 1618, + "from_row": 55, + "to_row": 55 + } + }, + { + "to_row": 56, + "from_column": 4, + "to_column": 27, + "kind": "call", + "at": 1641, + "from_row": 56, + "expression": { + "to_column": 27, + "from_column": 14, + "right": { + "to_column": 27, + "from_column": 20, + "right": "to_row", + "left": { + "to_column": 20, + "from_column": 16, + "level": 0, + "function_nr": 3, + "name": "from", + "kind": "name", + "at": 1653, + "from_row": 56, + "to_row": 56 + }, + "kind": ".", + "at": 1657, + "from_row": 56, + "to_row": 56 + }, + "left": { + "to_column": 13, + "from_column": 6, + "right": "to_row", + "left": { + "to_column": 6, + "from_column": 4, + "level": 0, + "function_nr": 3, + "name": "to", + "kind": "name", + "at": 1641, + "from_row": 56, + "to_row": 56 + }, + "kind": ".", + "at": 1643, + "from_row": 56, + "to_row": 56 + }, + "kind": "assign", + "at": 1651, + "from_row": 56, + "to_row": 56 + } + }, + { + "to_row": 57, + "from_column": 4, + "to_column": 33, + "kind": "call", + "at": 1669, + "from_row": 57, + "expression": { + "to_column": 33, + "from_column": 17, + "right": { + "to_column": 33, + "from_column": 23, + "right": "to_column", + "left": { + "to_column": 23, + "from_column": 19, + "level": 0, + "function_nr": 3, + "name": "from", + "kind": "name", + "at": 1684, + "from_row": 57, + "to_row": 57 + }, + "kind": ".", + "at": 1688, + "from_row": 57, + "to_row": 57 + }, + "left": { + "to_column": 16, + "from_column": 6, + "right": "to_column", + "left": { + "to_column": 6, + "from_column": 4, + "level": 0, + "function_nr": 3, + "name": "to", + "kind": "name", + "at": 1669, + "from_row": 57, + "to_row": 57 + }, + "kind": ".", + "at": 1671, + "from_row": 57, + "to_row": 57 + }, + "kind": "assign", + "at": 1682, + "from_row": 57, + "to_row": 57 + } + }, + { + "to_row": 58, + "from_column": 4, + "to_column": 13, + "kind": "return", + "at": 1703, + "from_row": 58, + "expression": { + "to_column": 13, + "from_column": 11, + "level": 0, + "function_nr": 3, + "name": "to", + "kind": "name", + "at": 1710, + "from_row": 58, + "to_row": 58 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 1526, + "to_row": 59, + "outer": 30, + "list": [ + { + "to_column": 30, + "from_column": 26, + "name": "from", + "kind": "name", + "at": 1535, + "from_row": 52, + "to_row": 52 + }, + { + "to_column": 34, + "from_column": 32, + "name": "to", + "kind": "name", + "at": 1541, + "from_row": 52, + "to_row": 52 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 3, + "from_row": 52 + }, + "left": { + "to_column": 14, + "from_column": 6, + "name": "copy_loc", + "kind": "name", + "at": 1515, + "from_row": 52, + "to_row": 52 + }, + "kind": "var", + "at": 1511, + "from_row": 52, + "to_row": 59 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 20, + "nr_slots": 2, + "statements": [ + { + "to_row": 62, + "from_column": 4, + "to_column": 73, + "kind": "return", + "at": 1763, + "from_row": 62, + "expression": { + "list": [ + { + "to_column": 23, + "from_column": 20, + "level": 0, + "function_nr": 4, + "name": "src", + "kind": "name", + "at": 1779, + "from_row": 62, + "to_row": 62 + }, + { + "list": [ + { + "left": { + "to_column": 30, + "from_column": 26, + "name": "kind", + "kind": "name", + "at": 1785, + "from_row": 62, + "to_row": 62 + }, + "right": { + "to_row": 62, + "from_column": 32, + "to_column": 40, + "kind": "text", + "at": 1791, + "from_row": 62, + "value": "number" + } + }, + { + "left": { + "to_column": 47, + "from_column": 42, + "name": "value", + "kind": "name", + "at": 1801, + "from_row": 62, + "to_row": 62 + }, + "right": { + "list": [ + { + "to_column": 57, + "from_column": 54, + "level": 0, + "function_nr": 4, + "name": "val", + "kind": "name", + "at": 1813, + "from_row": 62, + "to_row": 62 + } + ], + "from_column": 53, + "to_row": 62, + "to_column": 58, + "kind": "(", + "at": 1812, + "from_row": 62, + "expression": { + "to_column": 53, + "from_column": 49, + "level": -1, + "name": "text", + "kind": "name", + "at": 1808, + "from_row": 62, + "to_row": 62 + } + } + }, + { + "left": { + "to_column": 66, + "from_column": 60, + "name": "number", + "kind": "name", + "at": 1819, + "from_row": 62, + "to_row": 62 + }, + "right": { + "to_column": 71, + "from_column": 68, + "level": 0, + "function_nr": 4, + "name": "val", + "kind": "name", + "at": 1827, + "from_row": 62, + "to_row": 62 + } + } + ], + "from_column": 25, + "to_column": 71, + "kind": "record", + "at": 1784, + "from_row": 62, + "to_row": 62 + } + ], + "from_column": 19, + "to_row": 62, + "to_column": 73, + "kind": "(", + "at": 1778, + "from_row": 62, + "expression": { + "to_column": 19, + "from_column": 11, + "level": 1, + "function_nr": 30, + "name": "copy_loc", + "kind": "name", + "at": 1770, + "from_row": 62, + "to_row": 62 + } + } + } + ], + "to_column": 3, + "kind": "function", + "at": 1738, + "to_row": 63, + "outer": 30, + "list": [ + { + "to_column": 32, + "from_column": 29, + "name": "val", + "kind": "name", + "at": 1747, + "from_row": 61, + "to_row": 61 + }, + { + "to_column": 37, + "from_column": 34, + "name": "src", + "kind": "name", + "at": 1752, + "from_row": 61, + "to_row": 61 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 4, + "from_row": 61 + }, + "left": { + "to_column": 17, + "from_column": 6, + "name": "make_number", + "kind": "name", + "at": 1724, + "from_row": 61, + "to_row": 61 + }, + "kind": "var", + "at": 1720, + "from_row": 61, + "to_row": 63 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 18, + "nr_slots": 2, + "statements": [ + { + "to_row": 66, + "from_column": 4, + "to_column": 52, + "kind": "return", + "at": 1881, + "from_row": 66, + "expression": { + "list": [ + { + "to_column": 23, + "from_column": 20, + "level": 0, + "function_nr": 5, + "name": "src", + "kind": "name", + "at": 1897, + "from_row": 66, + "to_row": 66 + }, + { + "list": [ + { + "left": { + "to_column": 30, + "from_column": 26, + "name": "kind", + "kind": "name", + "at": 1903, + "from_row": 66, + "to_row": 66 + }, + "right": { + "to_row": 66, + "from_column": 32, + "to_column": 38, + "kind": "text", + "at": 1909, + "from_row": 66, + "value": "text" + } + }, + { + "left": { + "to_column": 45, + "from_column": 40, + "name": "value", + "kind": "name", + "at": 1917, + "from_row": 66, + "to_row": 66 + }, + "right": { + "to_column": 50, + "from_column": 47, + "level": 0, + "function_nr": 5, + "name": "val", + "kind": "name", + "at": 1924, + "from_row": 66, + "to_row": 66 + } + } + ], + "from_column": 25, + "to_column": 50, + "kind": "record", + "at": 1902, + "from_row": 66, + "to_row": 66 + } + ], + "from_column": 19, + "to_row": 66, + "to_column": 52, + "kind": "(", + "at": 1896, + "from_row": 66, + "expression": { + "to_column": 19, + "from_column": 11, + "level": 1, + "function_nr": 30, + "name": "copy_loc", + "kind": "name", + "at": 1888, + "from_row": 66, + "to_row": 66 + } + } + } + ], + "to_column": 3, + "kind": "function", + "at": 1856, + "to_row": 67, + "outer": 30, + "list": [ + { + "to_column": 30, + "from_column": 27, + "name": "val", + "kind": "name", + "at": 1865, + "from_row": 65, + "to_row": 65 + }, + { + "to_column": 35, + "from_column": 32, + "name": "src", + "kind": "name", + "at": 1870, + "from_row": 65, + "to_row": 65 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 5, + "from_row": 65 + }, + "left": { + "to_column": 15, + "from_column": 6, + "name": "make_text", + "kind": "name", + "at": 1844, + "from_row": 65, + "to_row": 65 + }, + "kind": "var", + "at": 1840, + "from_row": 65, + "to_row": 67 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 18, + "nr_slots": 2, + "statements": [ + { + "then": [ + { + "to_row": 70, + "from_column": 13, + "to_column": 49, + "kind": "return", + "at": 1987, + "from_row": 70, + "expression": { + "list": [ + { + "to_column": 32, + "from_column": 29, + "level": 0, + "function_nr": 6, + "name": "src", + "kind": "name", + "at": 2003, + "from_row": 70, + "to_row": 70 + }, + { + "list": [ + { + "left": { + "to_column": 39, + "from_column": 35, + "name": "kind", + "kind": "name", + "at": 2009, + "from_row": 70, + "to_row": 70 + }, + "right": { + "to_row": 70, + "from_column": 41, + "to_column": 47, + "kind": "text", + "at": 2015, + "from_row": 70, + "value": "true" + } + } + ], + "from_column": 34, + "to_column": 47, + "kind": "record", + "at": 2008, + "from_row": 70, + "to_row": 70 + } + ], + "from_column": 28, + "to_row": 70, + "to_column": 49, + "kind": "(", + "at": 2002, + "from_row": 70, + "expression": { + "to_column": 28, + "from_column": 20, + "level": 1, + "function_nr": 30, + "name": "copy_loc", + "kind": "name", + "at": 1994, + "from_row": 70, + "to_row": 70 + } + } + } + ], + "from_column": 4, + "list": [], + "to_row": 70, + "to_column": 49, + "kind": "if", + "at": 1978, + "from_row": 70, + "expression": { + "to_column": 11, + "from_column": 8, + "level": 0, + "function_nr": 6, + "name": "val", + "kind": "name", + "at": 1982, + "from_row": 70, + "to_row": 70 + } + }, + { + "to_row": 71, + "from_column": 4, + "to_column": 41, + "kind": "return", + "at": 2028, + "from_row": 71, + "expression": { + "list": [ + { + "to_column": 23, + "from_column": 20, + "level": 0, + "function_nr": 6, + "name": "src", + "kind": "name", + "at": 2044, + "from_row": 71, + "to_row": 71 + }, + { + "list": [ + { + "left": { + "to_column": 30, + "from_column": 26, + "name": "kind", + "kind": "name", + "at": 2050, + "from_row": 71, + "to_row": 71 + }, + "right": { + "to_row": 71, + "from_column": 32, + "to_column": 39, + "kind": "text", + "at": 2056, + "from_row": 71, + "value": "false" + } + } + ], + "from_column": 25, + "to_column": 39, + "kind": "record", + "at": 2049, + "from_row": 71, + "to_row": 71 + } + ], + "from_column": 19, + "to_row": 71, + "to_column": 41, + "kind": "(", + "at": 2043, + "from_row": 71, + "expression": { + "to_column": 19, + "from_column": 11, + "level": 1, + "function_nr": 30, + "name": "copy_loc", + "kind": "name", + "at": 2035, + "from_row": 71, + "to_row": 71 + } + } + } + ], + "to_column": 3, + "kind": "function", + "at": 1953, + "to_row": 72, + "outer": 30, + "list": [ + { + "to_column": 30, + "from_column": 27, + "name": "val", + "kind": "name", + "at": 1962, + "from_row": 69, + "to_row": 69 + }, + { + "to_column": 35, + "from_column": 32, + "name": "src", + "kind": "name", + "at": 1967, + "from_row": 69, + "to_row": 69 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 6, + "from_row": 69 + }, + "left": { + "to_column": 15, + "from_column": 6, + "name": "make_bool", + "kind": "name", + "at": 1941, + "from_row": 69, + "to_row": 69 + }, + "kind": "var", + "at": 1937, + "from_row": 69, + "to_row": 72 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 18, + "nr_slots": 1, + "statements": [ + { + "to_row": 75, + "from_column": 4, + "to_column": 40, + "kind": "return", + "at": 2109, + "from_row": 75, + "expression": { + "list": [ + { + "to_column": 23, + "from_column": 20, + "level": 0, + "function_nr": 7, + "name": "src", + "kind": "name", + "at": 2125, + "from_row": 75, + "to_row": 75 + }, + { + "list": [ + { + "left": { + "to_column": 30, + "from_column": 26, + "name": "kind", + "kind": "name", + "at": 2131, + "from_row": 75, + "to_row": 75 + }, + "right": { + "to_row": 75, + "from_column": 32, + "to_column": 38, + "kind": "text", + "at": 2137, + "from_row": 75, + "value": "null" + } + } + ], + "from_column": 25, + "to_column": 38, + "kind": "record", + "at": 2130, + "from_row": 75, + "to_row": 75 + } + ], + "from_column": 19, + "to_row": 75, + "to_column": 40, + "kind": "(", + "at": 2124, + "from_row": 75, + "expression": { + "to_column": 19, + "from_column": 11, + "level": 1, + "function_nr": 30, + "name": "copy_loc", + "kind": "name", + "at": 2116, + "from_row": 75, + "to_row": 75 + } + } + } + ], + "to_column": 3, + "kind": "function", + "at": 2089, + "to_row": 76, + "outer": 30, + "list": [ + { + "to_column": 30, + "from_column": 27, + "name": "src", + "kind": "name", + "at": 2098, + "from_row": 74, + "to_row": 74 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 7, + "from_row": 74 + }, + "left": { + "to_column": 15, + "from_column": 6, + "name": "make_null", + "kind": "name", + "at": 2077, + "from_row": 74, + "to_row": 74 + }, + "kind": "var", + "at": 2073, + "from_row": 74, + "to_row": 76 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 26, + "nr_slots": 3, + "statements": [ + { + "then": [ + { + "to_row": 79, + "from_column": 22, + "to_column": 33, + "kind": "return", + "at": 2216, + "from_row": 79, + "expression": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 2223, + "from_row": 79, + "to_row": 79 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 79, + "to_column": 33, + "kind": "if", + "at": 2198, + "from_row": 79, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 2210, + "from_row": 79, + "to_row": 79 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 8, + "name": "expr", + "kind": "name", + "at": 2202, + "from_row": 79, + "to_row": 79 + }, + "kind": "==", + "at": 2207, + "from_row": 79, + "to_row": 79 + } + }, + { + "to_column": 21, + "from_column": 4, + "right": { + "to_column": 21, + "from_column": 16, + "right": "kind", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 8, + "name": "expr", + "kind": "name", + "at": 2240, + "from_row": 80, + "to_row": 80 + }, + "kind": ".", + "at": 2244, + "from_row": 80, + "to_row": 80 + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "k", + "kind": "name", + "at": 2236, + "from_row": 80, + "to_row": 80 + }, + "kind": "var", + "at": 2232, + "from_row": 80, + "to_row": 80 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 2263, + "from_row": 81, + "to_row": 81 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "nv", + "kind": "name", + "at": 2258, + "from_row": 81, + "to_row": 81 + }, + "kind": "var", + "at": 2254, + "from_row": 81, + "to_row": 81 + }, + { + "then": [ + { + "to_row": 82, + "from_column": 21, + "to_column": 32, + "kind": "return", + "at": 2289, + "from_row": 82, + "expression": { + "to_column": 32, + "from_column": 28, + "kind": "true", + "at": 2296, + "from_row": 82, + "to_row": 82 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 82, + "to_column": 32, + "kind": "if", + "at": 2272, + "from_row": 82, + "expression": { + "to_column": 19, + "from_column": 10, + "right": { + "to_row": 82, + "from_column": 13, + "to_column": 19, + "kind": "text", + "at": 2281, + "from_row": 82, + "value": "true" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 8, + "name": "k", + "kind": "name", + "at": 2276, + "from_row": 82, + "to_row": 82 + }, + "kind": "==", + "at": 2278, + "from_row": 82, + "to_row": 82 + } + }, + { + "then": [ + { + "to_row": 83, + "from_column": 37, + "to_column": 49, + "kind": "return", + "at": 2338, + "from_row": 83, + "expression": { + "to_column": 49, + "from_column": 44, + "kind": "false", + "at": 2345, + "from_row": 83, + "to_row": 83 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 83, + "to_column": 49, + "kind": "if", + "at": 2305, + "from_row": 83, + "expression": { + "to_column": 35, + "from_column": 21, + "right": { + "to_column": 35, + "from_column": 26, + "right": { + "to_row": 83, + "from_column": 29, + "to_column": 35, + "kind": "text", + "at": 2330, + "from_row": 83, + "value": "null" + }, + "left": { + "to_column": 25, + "from_column": 24, + "level": 0, + "function_nr": 8, + "name": "k", + "kind": "name", + "at": 2325, + "from_row": 83, + "to_row": 83 + }, + "kind": "==", + "at": 2327, + "from_row": 83, + "to_row": 83 + }, + "left": { + "to_column": 20, + "from_column": 10, + "right": { + "to_row": 83, + "from_column": 13, + "to_column": 20, + "kind": "text", + "at": 2314, + "from_row": 83, + "value": "false" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 8, + "name": "k", + "kind": "name", + "at": 2309, + "from_row": 83, + "to_row": 83 + }, + "kind": "==", + "at": 2311, + "from_row": 83, + "to_row": 83 + }, + "kind": "||", + "at": 2322, + "from_row": 83, + "to_row": 83 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 23, + "statements": [ + { + "to_row": 85, + "from_column": 6, + "to_column": 22, + "kind": "call", + "at": 2382, + "from_row": 85, + "expression": { + "to_column": 22, + "from_column": 9, + "right": { + "to_column": 22, + "from_column": 15, + "right": "number", + "left": { + "to_column": 15, + "from_column": 11, + "level": 0, + "function_nr": 8, + "name": "expr", + "kind": "name", + "at": 2387, + "from_row": 85, + "to_row": 85 + }, + "kind": ".", + "at": 2391, + "from_row": 85, + "to_row": 85 + }, + "left": { + "to_column": 8, + "from_column": 6, + "level": 0, + "function_nr": 8, + "name": "nv", + "kind": "name", + "at": 2382, + "from_row": 85, + "to_row": 85 + }, + "kind": "assign", + "at": 2385, + "from_row": 85, + "to_row": 85 + } + }, + { + "then": [ + { + "to_row": 86, + "from_column": 22, + "to_column": 45, + "kind": "call", + "at": 2421, + "from_row": 86, + "expression": { + "to_column": 45, + "from_column": 25, + "right": { + "list": [ + { + "to_column": 44, + "from_column": 38, + "right": "value", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 8, + "name": "expr", + "kind": "name", + "at": 2433, + "from_row": 86, + "to_row": 86 + }, + "kind": ".", + "at": 2437, + "from_row": 86, + "to_row": 86 + } + ], + "from_column": 33, + "to_row": 86, + "to_column": 45, + "kind": "(", + "at": 2432, + "from_row": 86, + "expression": { + "to_column": 33, + "from_column": 27, + "level": -1, + "name": "number", + "kind": "name", + "at": 2426, + "from_row": 86, + "to_row": 86 + } + }, + "left": { + "to_column": 24, + "from_column": 22, + "level": 0, + "function_nr": 8, + "name": "nv", + "kind": "name", + "at": 2421, + "from_row": 86, + "to_row": 86 + }, + "kind": "assign", + "at": 2424, + "from_row": 86, + "to_row": 86 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 86, + "to_column": 45, + "kind": "if", + "at": 2405, + "from_row": 86, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 2415, + "from_row": 86, + "to_row": 86 + }, + "left": { + "to_column": 12, + "from_column": 10, + "level": 0, + "function_nr": 8, + "name": "nv", + "kind": "name", + "at": 2409, + "from_row": 86, + "to_row": 86 + }, + "kind": "==", + "at": 2412, + "from_row": 86, + "to_row": 86 + } + }, + { + "to_row": 87, + "from_column": 6, + "to_column": 20, + "kind": "return", + "at": 2451, + "from_row": 87, + "expression": { + "to_column": 20, + "from_column": 16, + "right": { + "to_row": 87, + "from_column": 19, + "number": 0, + "to_column": 20, + "kind": "number", + "at": 2464, + "from_row": 87, + "value": "0" + }, + "left": { + "to_column": 15, + "from_column": 13, + "level": 0, + "function_nr": 8, + "name": "nv", + "kind": "name", + "at": 2458, + "from_row": 87, + "to_row": 87 + }, + "kind": "!=", + "at": 2461, + "from_row": 87, + "to_row": 87 + } + } + ], + "kind": "block", + "at": 2374, + "from_row": 84, + "to_row": 88 + } + ], + "from_column": 4, + "list": [], + "to_row": 88, + "to_column": 5, + "kind": "if", + "at": 2355, + "from_row": 84, + "expression": { + "to_column": 21, + "from_column": 10, + "right": { + "to_row": 84, + "from_column": 13, + "to_column": 21, + "kind": "text", + "at": 2364, + "from_row": 84, + "value": "number" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 8, + "name": "k", + "kind": "name", + "at": 2359, + "from_row": 84, + "to_row": 84 + }, + "kind": "==", + "at": 2361, + "from_row": 84, + "to_row": 84 + } + }, + { + "then": [ + { + "to_row": 89, + "from_column": 21, + "to_column": 50, + "kind": "return", + "at": 2493, + "from_row": 89, + "expression": { + "to_column": 50, + "from_column": 47, + "right": { + "to_row": 89, + "from_column": 49, + "number": 0, + "to_column": 50, + "kind": "number", + "at": 2521, + "from_row": 89, + "value": "0" + }, + "left": { + "list": [ + { + "to_column": 45, + "from_column": 39, + "right": "value", + "left": { + "to_column": 39, + "from_column": 35, + "level": 0, + "function_nr": 8, + "name": "expr", + "kind": "name", + "at": 2507, + "from_row": 89, + "to_row": 89 + }, + "kind": ".", + "at": 2511, + "from_row": 89, + "to_row": 89 + } + ], + "from_column": 34, + "to_row": 89, + "to_column": 46, + "kind": "(", + "at": 2506, + "from_row": 89, + "expression": { + "to_column": 34, + "from_column": 28, + "level": -1, + "name": "length", + "kind": "name", + "at": 2500, + "from_row": 89, + "to_row": 89 + } + }, + "kind": ">", + "at": 2519, + "from_row": 89, + "to_row": 89 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 89, + "to_column": 50, + "kind": "if", + "at": 2476, + "from_row": 89, + "expression": { + "to_column": 19, + "from_column": 10, + "right": { + "to_row": 89, + "from_column": 13, + "to_column": 19, + "kind": "text", + "at": 2485, + "from_row": 89, + "value": "text" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 8, + "name": "k", + "kind": "name", + "at": 2480, + "from_row": 89, + "to_row": 89 + }, + "kind": "==", + "at": 2482, + "from_row": 89, + "to_row": 89 + } + }, + { + "to_row": 90, + "from_column": 4, + "to_column": 15, + "kind": "return", + "at": 2527, + "from_row": 90, + "expression": { + "to_column": 15, + "from_column": 11, + "kind": "null", + "at": 2534, + "from_row": 90, + "to_row": 90 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 2177, + "to_row": 91, + "outer": 30, + "list": [ + { + "to_column": 39, + "from_column": 35, + "name": "expr", + "kind": "name", + "at": 2186, + "from_row": 78, + "to_row": 78 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 8, + "from_row": 78 + }, + "left": { + "to_column": 23, + "from_column": 6, + "name": "is_truthy_literal", + "kind": "name", + "at": 2157, + "from_row": 78, + "to_row": 78 + }, + "kind": "var", + "at": 2153, + "from_row": 78, + "to_row": 91 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 19, + "nr_slots": 2, + "statements": [ + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 98, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 2745, + "from_row": 98, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "i", + "kind": "name", + "at": 2741, + "from_row": 98, + "to_row": 98 + }, + "kind": "var", + "at": 2737, + "from_row": 98, + "to_row": 98 + }, + { + "to_row": 102, + "from_column": 4, + "to_column": 5, + "statements": [ + { + "to_column": 5, + "from_column": 26, + "statements": [ + { + "then": [ + { + "to_row": 100, + "from_column": 42, + "to_column": 58, + "kind": "return", + "at": 2817, + "from_row": 100, + "expression": { + "to_column": 58, + "from_column": 55, + "right": { + "to_column": 57, + "from_column": 56, + "level": 0, + "function_nr": 9, + "name": "i", + "kind": "name", + "at": 2831, + "from_row": 100, + "to_row": 100 + }, + "left": { + "to_column": 55, + "from_column": 49, + "level": 1, + "function_nr": 30, + "name": "scopes", + "kind": "name", + "at": 2824, + "from_row": 100, + "to_row": 100 + }, + "kind": "[", + "at": 2830, + "from_row": 100, + "to_row": 100 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 100, + "to_column": 58, + "kind": "if", + "at": 2781, + "from_row": 100, + "expression": { + "to_column": 40, + "from_column": 32, + "right": { + "to_column": 40, + "from_column": 35, + "level": 0, + "function_nr": 9, + "name": "fn_nr", + "kind": "name", + "at": 2810, + "from_row": 100, + "to_row": 100 + }, + "left": { + "to_column": 31, + "from_column": 19, + "right": "function_nr", + "left": { + "to_column": 19, + "from_column": 16, + "right": { + "to_column": 18, + "from_column": 17, + "level": 0, + "function_nr": 9, + "name": "i", + "kind": "name", + "at": 2792, + "from_row": 100, + "to_row": 100 + }, + "left": { + "to_column": 16, + "from_column": 10, + "level": 1, + "function_nr": 30, + "name": "scopes", + "kind": "name", + "at": 2785, + "from_row": 100, + "to_row": 100 + }, + "kind": "[", + "at": 2791, + "from_row": 100, + "to_row": 100 + }, + "kind": ".", + "at": 2794, + "from_row": 100, + "to_row": 100 + }, + "kind": "==", + "at": 2807, + "from_row": 100, + "to_row": 100 + } + }, + { + "to_row": 101, + "from_column": 6, + "to_column": 15, + "kind": "call", + "at": 2840, + "from_row": 101, + "expression": { + "to_column": 15, + "from_column": 8, + "right": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 101, + "from_column": 14, + "number": 1, + "to_column": 15, + "kind": "number", + "at": 2848, + "from_row": 101, + "value": "1" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 9, + "name": "i", + "kind": "name", + "at": 2844, + "from_row": 101, + "to_row": 101 + }, + "kind": "+", + "at": 2846, + "from_row": 101, + "to_row": 101 + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 9, + "name": "i", + "kind": "name", + "at": 2840, + "from_row": 101, + "to_row": 101 + }, + "kind": "assign", + "at": 2842, + "from_row": 101, + "to_row": 101 + } + } + ], + "kind": "block", + "at": 2773, + "from_row": 99, + "to_row": 102 + } + ], + "kind": "while", + "at": 2751, + "from_row": 99, + "expression": { + "to_column": 24, + "from_column": 13, + "right": { + "to_column": 24, + "from_column": 15, + "level": 1, + "function_nr": 30, + "name": "nr_scopes", + "kind": "name", + "at": 2762, + "from_row": 99, + "to_row": 99 + }, + "left": { + "to_column": 12, + "from_column": 11, + "level": 0, + "function_nr": 9, + "name": "i", + "kind": "name", + "at": 2758, + "from_row": 99, + "to_row": 99 + }, + "kind": "<", + "at": 2760, + "from_row": 99, + "to_row": 99 + } + }, + { + "to_row": 103, + "from_column": 4, + "to_column": 15, + "kind": "return", + "at": 2860, + "from_row": 103, + "expression": { + "to_column": 15, + "from_column": 11, + "kind": "null", + "at": 2867, + "from_row": 103, + "to_row": 103 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 2715, + "to_row": 104, + "outer": 30, + "list": [ + { + "to_column": 33, + "from_column": 28, + "name": "fn_nr", + "kind": "name", + "at": 2724, + "from_row": 97, + "to_row": 97 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 9, + "from_row": 97 + }, + "left": { + "to_column": 16, + "from_column": 6, + "name": "find_scope", + "kind": "name", + "at": 2702, + "from_row": 97, + "to_row": 97 + }, + "kind": "var", + "at": 2698, + "from_row": 97, + "to_row": 104 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 18, + "nr_slots": 3, + "statements": [ + { + "to_column": 30, + "from_column": 4, + "right": { + "list": [ + { + "to_column": 29, + "from_column": 24, + "level": 0, + "function_nr": 10, + "name": "fn_nr", + "kind": "name", + "at": 2943, + "from_row": 107, + "to_row": 107 + } + ], + "from_column": 23, + "to_row": 107, + "to_column": 30, + "kind": "(", + "at": 2942, + "from_row": 107, + "expression": { + "to_column": 23, + "from_column": 13, + "level": 1, + "function_nr": 30, + "name": "find_scope", + "kind": "name", + "at": 2932, + "from_row": 107, + "to_row": 107 + } + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "sc", + "kind": "name", + "at": 2927, + "from_row": 107, + "to_row": 107 + }, + "kind": "var", + "at": 2923, + "from_row": 107, + "to_row": 107 + }, + { + "then": [ + { + "to_row": 108, + "from_column": 20, + "to_column": 31, + "kind": "return", + "at": 2970, + "from_row": 108, + "expression": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 2977, + "from_row": 108, + "to_row": 108 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 108, + "to_column": 31, + "kind": "if", + "at": 2954, + "from_row": 108, + "expression": { + "to_column": 18, + "from_column": 11, + "right": { + "to_column": 18, + "from_column": 14, + "kind": "null", + "at": 2964, + "from_row": 108, + "to_row": 108 + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 10, + "name": "sc", + "kind": "name", + "at": 2958, + "from_row": 108, + "to_row": 108 + }, + "kind": "==", + "at": 2961, + "from_row": 108, + "to_row": 108 + } + }, + { + "to_row": 109, + "from_column": 4, + "to_column": 19, + "kind": "return", + "at": 2986, + "from_row": 109, + "expression": { + "to_column": 19, + "from_column": 13, + "right": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 10, + "name": "name", + "kind": "name", + "at": 2996, + "from_row": 109, + "to_row": 109 + }, + "left": { + "to_column": 13, + "from_column": 11, + "level": 0, + "function_nr": 10, + "name": "sc", + "kind": "name", + "at": 2993, + "from_row": 109, + "to_row": 109 + }, + "kind": "[", + "at": 2995, + "from_row": 109, + "to_row": 109 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 2895, + "to_row": 110, + "outer": 30, + "list": [ + { + "to_column": 32, + "from_column": 27, + "name": "fn_nr", + "kind": "name", + "at": 2904, + "from_row": 106, + "to_row": 106 + }, + { + "to_column": 38, + "from_column": 34, + "name": "name", + "kind": "name", + "at": 2911, + "from_row": 106, + "to_row": 106 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 10, + "from_row": 106 + }, + "left": { + "to_column": 15, + "from_column": 6, + "name": "scope_var", + "kind": "name", + "at": 2883, + "from_row": 106, + "to_row": 106 + }, + "kind": "var", + "at": 2879, + "from_row": 106, + "to_row": 110 + }, + { + "to_column": 21, + "from_column": 2, + "right": { + "list": [], + "from_column": 19, + "to_column": 20, + "kind": "record", + "at": 3353, + "from_row": 122, + "to_row": 122 + }, + "left": { + "to_column": 16, + "from_column": 6, + "name": "const_defs", + "kind": "name", + "at": 3340, + "from_row": 122, + "to_row": 122 + }, + "kind": "var", + "at": 3336, + "from_row": 122, + "to_row": 122 + }, + { + "to_column": 21, + "from_column": 2, + "right": { + "list": [], + "from_column": 19, + "to_column": 20, + "kind": "record", + "at": 3375, + "from_row": 123, + "to_row": 123 + }, + "left": { + "to_column": 16, + "from_column": 6, + "name": "fn_arities", + "kind": "name", + "at": 3362, + "from_row": 123, + "to_row": 123 + }, + "kind": "var", + "at": 3358, + "from_row": 123, + "to_row": 123 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 23, + "nr_slots": 4, + "statements": [ + { + "to_column": 25, + "from_column": 4, + "right": { + "list": [ + { + "to_column": 24, + "from_column": 19, + "level": 0, + "function_nr": 12, + "name": "fn_nr", + "kind": "name", + "at": 3455, + "from_row": 126, + "to_row": 126 + } + ], + "from_column": 18, + "to_row": 126, + "to_column": 25, + "kind": "(", + "at": 3454, + "from_row": 126, + "expression": { + "to_column": 18, + "from_column": 14, + "level": -1, + "name": "text", + "kind": "name", + "at": 3450, + "from_row": 126, + "to_row": 126 + } + }, + "left": { + "to_column": 11, + "from_column": 8, + "name": "key", + "kind": "name", + "at": 3444, + "from_row": 126, + "to_row": 126 + }, + "kind": "var", + "at": 3440, + "from_row": 126, + "to_row": 126 + }, + { + "then": [ + { + "to_row": 127, + "from_column": 33, + "to_column": 53, + "kind": "call", + "at": 3495, + "from_row": 127, + "expression": { + "to_column": 53, + "from_column": 49, + "right": { + "list": [], + "from_column": 51, + "to_column": 52, + "kind": "record", + "at": 3513, + "from_row": 127, + "to_row": 127 + }, + "left": { + "to_column": 48, + "from_column": 43, + "right": { + "to_column": 47, + "from_column": 44, + "level": 0, + "function_nr": 12, + "name": "key", + "kind": "name", + "at": 3506, + "from_row": 127, + "to_row": 127 + }, + "left": { + "to_column": 43, + "from_column": 33, + "level": 1, + "function_nr": 30, + "name": "const_defs", + "kind": "name", + "at": 3495, + "from_row": 127, + "to_row": 127 + }, + "kind": "[", + "at": 3505, + "from_row": 127, + "to_row": 127 + }, + "kind": "assign", + "at": 3511, + "from_row": 127, + "to_row": 127 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 127, + "to_column": 53, + "kind": "if", + "at": 3466, + "from_row": 127, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 3489, + "from_row": 127, + "to_row": 127 + }, + "left": { + "to_column": 23, + "from_column": 18, + "right": { + "to_column": 22, + "from_column": 19, + "level": 0, + "function_nr": 12, + "name": "key", + "kind": "name", + "at": 3481, + "from_row": 127, + "to_row": 127 + }, + "left": { + "to_column": 18, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "const_defs", + "kind": "name", + "at": 3470, + "from_row": 127, + "to_row": 127 + }, + "kind": "[", + "at": 3480, + "from_row": 127, + "to_row": 127 + }, + "kind": "==", + "at": 3486, + "from_row": 127, + "to_row": 127 + } + }, + { + "to_row": 128, + "from_column": 4, + "to_column": 36, + "kind": "call", + "at": 3520, + "from_row": 128, + "expression": { + "to_column": 36, + "from_column": 26, + "right": { + "to_column": 36, + "from_column": 28, + "level": 0, + "function_nr": 12, + "name": "lit_node", + "kind": "name", + "at": 3544, + "from_row": 128, + "to_row": 128 + }, + "left": { + "to_column": 25, + "from_column": 19, + "right": { + "to_column": 24, + "from_column": 20, + "level": 0, + "function_nr": 12, + "name": "name", + "kind": "name", + "at": 3536, + "from_row": 128, + "to_row": 128 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": { + "to_column": 18, + "from_column": 15, + "level": 0, + "function_nr": 12, + "name": "key", + "kind": "name", + "at": 3531, + "from_row": 128, + "to_row": 128 + }, + "left": { + "to_column": 14, + "from_column": 4, + "level": 1, + "function_nr": 30, + "name": "const_defs", + "kind": "name", + "at": 3520, + "from_row": 128, + "to_row": 128 + }, + "kind": "[", + "at": 3530, + "from_row": 128, + "to_row": 128 + }, + "kind": "[", + "at": 3535, + "from_row": 128, + "to_row": 128 + }, + "kind": "assign", + "at": 3542, + "from_row": 128, + "to_row": 128 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 3402, + "to_row": 129, + "outer": 30, + "list": [ + { + "to_column": 37, + "from_column": 32, + "name": "fn_nr", + "kind": "name", + "at": 3411, + "from_row": 125, + "to_row": 125 + }, + { + "to_column": 43, + "from_column": 39, + "name": "name", + "kind": "name", + "at": 3418, + "from_row": 125, + "to_row": 125 + }, + { + "to_column": 53, + "from_column": 45, + "name": "lit_node", + "kind": "name", + "at": 3424, + "from_row": 125, + "to_row": 125 + } + ], + "arity": 3, + "nr_close_slots": 0, + "function_nr": 12, + "from_row": 125 + }, + "left": { + "to_column": 20, + "from_column": 6, + "name": "register_const", + "kind": "name", + "at": 3385, + "from_row": 125, + "to_row": 125 + }, + "kind": "var", + "at": 3381, + "from_row": 125, + "to_row": 129 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 18, + "nr_slots": 3, + "statements": [ + { + "to_column": 25, + "from_column": 4, + "right": { + "list": [ + { + "to_column": 24, + "from_column": 19, + "level": 0, + "function_nr": 13, + "name": "fn_nr", + "kind": "name", + "at": 3619, + "from_row": 132, + "to_row": 132 + } + ], + "from_column": 18, + "to_row": 132, + "to_column": 25, + "kind": "(", + "at": 3618, + "from_row": 132, + "expression": { + "to_column": 18, + "from_column": 14, + "level": -1, + "name": "text", + "kind": "name", + "at": 3614, + "from_row": 132, + "to_row": 132 + } + }, + "left": { + "to_column": 11, + "from_column": 8, + "name": "key", + "kind": "name", + "at": 3608, + "from_row": 132, + "to_row": 132 + }, + "kind": "var", + "at": 3604, + "from_row": 132, + "to_row": 132 + }, + { + "then": [ + { + "to_row": 133, + "from_column": 33, + "to_column": 44, + "kind": "return", + "at": 3659, + "from_row": 133, + "expression": { + "to_column": 44, + "from_column": 40, + "kind": "null", + "at": 3666, + "from_row": 133, + "to_row": 133 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 133, + "to_column": 44, + "kind": "if", + "at": 3630, + "from_row": 133, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 3653, + "from_row": 133, + "to_row": 133 + }, + "left": { + "to_column": 23, + "from_column": 18, + "right": { + "to_column": 22, + "from_column": 19, + "level": 0, + "function_nr": 13, + "name": "key", + "kind": "name", + "at": 3645, + "from_row": 133, + "to_row": 133 + }, + "left": { + "to_column": 18, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "const_defs", + "kind": "name", + "at": 3634, + "from_row": 133, + "to_row": 133 + }, + "kind": "[", + "at": 3644, + "from_row": 133, + "to_row": 133 + }, + "kind": "==", + "at": 3650, + "from_row": 133, + "to_row": 133 + } + }, + { + "to_row": 134, + "from_column": 4, + "to_column": 32, + "kind": "return", + "at": 3675, + "from_row": 134, + "expression": { + "to_column": 32, + "from_column": 26, + "right": { + "to_column": 31, + "from_column": 27, + "level": 0, + "function_nr": 13, + "name": "name", + "kind": "name", + "at": 3698, + "from_row": 134, + "to_row": 134 + }, + "left": { + "to_column": 26, + "from_column": 21, + "right": { + "to_column": 25, + "from_column": 22, + "level": 0, + "function_nr": 13, + "name": "key", + "kind": "name", + "at": 3693, + "from_row": 134, + "to_row": 134 + }, + "left": { + "to_column": 21, + "from_column": 11, + "level": 1, + "function_nr": 30, + "name": "const_defs", + "kind": "name", + "at": 3682, + "from_row": 134, + "to_row": 134 + }, + "kind": "[", + "at": 3692, + "from_row": 134, + "to_row": 134 + }, + "kind": "[", + "at": 3697, + "from_row": 134, + "to_row": 134 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 3576, + "to_row": 135, + "outer": 30, + "list": [ + { + "to_column": 32, + "from_column": 27, + "name": "fn_nr", + "kind": "name", + "at": 3585, + "from_row": 131, + "to_row": 131 + }, + { + "to_column": 38, + "from_column": 34, + "name": "name", + "kind": "name", + "at": 3592, + "from_row": 131, + "to_row": 131 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 13, + "from_row": 131 + }, + "left": { + "to_column": 15, + "from_column": 6, + "name": "get_const", + "kind": "name", + "at": 3564, + "from_row": 131, + "to_row": 131 + }, + "kind": "var", + "at": 3560, + "from_row": 131, + "to_row": 135 + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 23, + "nr_slots": 4, + "statements": [ + { + "to_column": 25, + "from_column": 4, + "right": { + "list": [ + { + "to_column": 24, + "from_column": 19, + "level": 0, + "function_nr": 14, + "name": "fn_nr", + "kind": "name", + "at": 3782, + "from_row": 138, + "to_row": 138 + } + ], + "from_column": 18, + "to_row": 138, + "to_column": 25, + "kind": "(", + "at": 3781, + "from_row": 138, + "expression": { + "to_column": 18, + "from_column": 14, + "level": -1, + "name": "text", + "kind": "name", + "at": 3777, + "from_row": 138, + "to_row": 138 + } + }, + "left": { + "to_column": 11, + "from_column": 8, + "name": "key", + "kind": "name", + "at": 3771, + "from_row": 138, + "to_row": 138 + }, + "kind": "var", + "at": 3767, + "from_row": 138, + "to_row": 138 + }, + { + "then": [ + { + "to_row": 139, + "from_column": 33, + "to_column": 53, + "kind": "call", + "at": 3822, + "from_row": 139, + "expression": { + "to_column": 53, + "from_column": 49, + "right": { + "list": [], + "from_column": 51, + "to_column": 52, + "kind": "record", + "at": 3840, + "from_row": 139, + "to_row": 139 + }, + "left": { + "to_column": 48, + "from_column": 43, + "right": { + "to_column": 47, + "from_column": 44, + "level": 0, + "function_nr": 14, + "name": "key", + "kind": "name", + "at": 3833, + "from_row": 139, + "to_row": 139 + }, + "left": { + "to_column": 43, + "from_column": 33, + "level": 1, + "function_nr": 30, + "name": "fn_arities", + "kind": "name", + "at": 3822, + "from_row": 139, + "to_row": 139 + }, + "kind": "[", + "at": 3832, + "from_row": 139, + "to_row": 139 + }, + "kind": "assign", + "at": 3838, + "from_row": 139, + "to_row": 139 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 139, + "to_column": 53, + "kind": "if", + "at": 3793, + "from_row": 139, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 3816, + "from_row": 139, + "to_row": 139 + }, + "left": { + "to_column": 23, + "from_column": 18, + "right": { + "to_column": 22, + "from_column": 19, + "level": 0, + "function_nr": 14, + "name": "key", + "kind": "name", + "at": 3808, + "from_row": 139, + "to_row": 139 + }, + "left": { + "to_column": 18, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "fn_arities", + "kind": "name", + "at": 3797, + "from_row": 139, + "to_row": 139 + }, + "kind": "[", + "at": 3807, + "from_row": 139, + "to_row": 139 + }, + "kind": "==", + "at": 3813, + "from_row": 139, + "to_row": 139 + } + }, + { + "to_row": 140, + "from_column": 4, + "to_column": 33, + "kind": "call", + "at": 3847, + "from_row": 140, + "expression": { + "to_column": 33, + "from_column": 26, + "right": { + "to_column": 33, + "from_column": 28, + "level": 0, + "function_nr": 14, + "name": "count", + "kind": "name", + "at": 3871, + "from_row": 140, + "to_row": 140 + }, + "left": { + "to_column": 25, + "from_column": 19, + "right": { + "to_column": 24, + "from_column": 20, + "level": 0, + "function_nr": 14, + "name": "name", + "kind": "name", + "at": 3863, + "from_row": 140, + "to_row": 140 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": { + "to_column": 18, + "from_column": 15, + "level": 0, + "function_nr": 14, + "name": "key", + "kind": "name", + "at": 3858, + "from_row": 140, + "to_row": 140 + }, + "left": { + "to_column": 14, + "from_column": 4, + "level": 1, + "function_nr": 30, + "name": "fn_arities", + "kind": "name", + "at": 3847, + "from_row": 140, + "to_row": 140 + }, + "kind": "[", + "at": 3857, + "from_row": 140, + "to_row": 140 + }, + "kind": "[", + "at": 3862, + "from_row": 140, + "to_row": 140 + }, + "kind": "assign", + "at": 3869, + "from_row": 140, + "to_row": 140 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 3732, + "to_row": 141, + "outer": 30, + "list": [ + { + "to_column": 37, + "from_column": 32, + "name": "fn_nr", + "kind": "name", + "at": 3741, + "from_row": 137, + "to_row": 137 + }, + { + "to_column": 43, + "from_column": 39, + "name": "name", + "kind": "name", + "at": 3748, + "from_row": 137, + "to_row": 137 + }, + { + "to_column": 50, + "from_column": 45, + "name": "count", + "kind": "name", + "at": 3754, + "from_row": 137, + "to_row": 137 + } + ], + "arity": 3, + "nr_close_slots": 0, + "function_nr": 14, + "from_row": 137 + }, + "left": { + "to_column": 20, + "from_column": 6, + "name": "register_arity", + "kind": "name", + "at": 3715, + "from_row": 137, + "to_row": 137 + }, + "kind": "var", + "at": 3711, + "from_row": 137, + "to_row": 141 + }, + { + "to_column": 27, + "from_column": 2, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "null", + "at": 3905, + "from_row": 143, + "to_row": 143 + }, + "left": { + "to_column": 20, + "from_column": 6, + "name": "pre_scan_stmts", + "kind": "name", + "at": 3888, + "from_row": 143, + "to_row": 143 + }, + "kind": "var", + "at": 3884, + "from_row": 143, + "to_row": 143 + }, + { + "to_column": 24, + "from_column": 2, + "right": { + "to_column": 24, + "from_column": 20, + "kind": "null", + "at": 3930, + "from_row": 144, + "to_row": 144 + }, + "left": { + "to_column": 17, + "from_column": 6, + "name": "pre_scan_fn", + "kind": "name", + "at": 3916, + "from_row": 144, + "to_row": 144 + }, + "kind": "var", + "at": 3912, + "from_row": 144, + "to_row": 144 + }, + { + "to_row": 150, + "from_column": 2, + "to_column": 3, + "kind": "call", + "at": 3938, + "from_row": 146, + "expression": { + "to_column": 3, + "from_column": 14, + "right": { + "from_column": 16, + "nr_slots": 1, + "statements": [ + { + "then": [ + { + "to_row": 147, + "from_column": 22, + "to_column": 33, + "kind": "return", + "at": 3991, + "from_row": 147, + "expression": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 3998, + "from_row": 147, + "to_row": 147 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 147, + "to_column": 33, + "kind": "if", + "at": 3973, + "from_row": 147, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 3985, + "from_row": 147, + "to_row": 147 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 15, + "name": "node", + "kind": "name", + "at": 3977, + "from_row": 147, + "to_row": 147 + }, + "kind": "==", + "at": 3982, + "from_row": 147, + "to_row": 147 + } + }, + { + "then": [ + { + "to_row": 148, + "from_column": 33, + "to_column": 82, + "kind": "call", + "at": 4036, + "from_row": 148, + "expression": { + "list": [ + { + "to_column": 63, + "from_column": 52, + "right": "statements", + "left": { + "to_column": 52, + "from_column": 48, + "level": 0, + "function_nr": 15, + "name": "node", + "kind": "name", + "at": 4051, + "from_row": 148, + "to_row": 148 + }, + "kind": ".", + "at": 4055, + "from_row": 148, + "to_row": 148 + }, + { + "to_column": 81, + "from_column": 69, + "right": "function_nr", + "left": { + "to_column": 69, + "from_column": 65, + "level": 0, + "function_nr": 15, + "name": "node", + "kind": "name", + "at": 4068, + "from_row": 148, + "to_row": 148 + }, + "kind": ".", + "at": 4072, + "from_row": 148, + "to_row": 148 + } + ], + "from_column": 47, + "to_row": 148, + "to_column": 82, + "kind": "(", + "at": 4050, + "from_row": 148, + "expression": { + "to_column": 47, + "from_column": 33, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmts", + "kind": "name", + "at": 4036, + "from_row": 148, + "to_row": 148 + } + } + } + ], + "from_column": 4, + "list": [], + "to_row": 148, + "to_column": 82, + "kind": "if", + "at": 4007, + "from_row": 148, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 4030, + "from_row": 148, + "to_row": 148 + }, + "left": { + "to_column": 23, + "from_column": 12, + "right": "statements", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 15, + "name": "node", + "kind": "name", + "at": 4011, + "from_row": 148, + "to_row": 148 + }, + "kind": ".", + "at": 4015, + "from_row": 148, + "to_row": 148 + }, + "kind": "!=", + "at": 4027, + "from_row": 148, + "to_row": 148 + } + }, + { + "then": [ + { + "to_row": 149, + "from_column": 33, + "to_column": 82, + "kind": "call", + "at": 4119, + "from_row": 149, + "expression": { + "list": [ + { + "to_column": 63, + "from_column": 52, + "right": "disruption", + "left": { + "to_column": 52, + "from_column": 48, + "level": 0, + "function_nr": 15, + "name": "node", + "kind": "name", + "at": 4134, + "from_row": 149, + "to_row": 149 + }, + "kind": ".", + "at": 4138, + "from_row": 149, + "to_row": 149 + }, + { + "to_column": 81, + "from_column": 69, + "right": "function_nr", + "left": { + "to_column": 69, + "from_column": 65, + "level": 0, + "function_nr": 15, + "name": "node", + "kind": "name", + "at": 4151, + "from_row": 149, + "to_row": 149 + }, + "kind": ".", + "at": 4155, + "from_row": 149, + "to_row": 149 + } + ], + "from_column": 47, + "to_row": 149, + "to_column": 82, + "kind": "(", + "at": 4133, + "from_row": 149, + "expression": { + "to_column": 47, + "from_column": 33, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmts", + "kind": "name", + "at": 4119, + "from_row": 149, + "to_row": 149 + } + } + } + ], + "from_column": 4, + "list": [], + "to_row": 149, + "to_column": 82, + "kind": "if", + "at": 4090, + "from_row": 149, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 4113, + "from_row": 149, + "to_row": 149 + }, + "left": { + "to_column": 23, + "from_column": 12, + "right": "disruption", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 15, + "name": "node", + "kind": "name", + "at": 4094, + "from_row": 149, + "to_row": 149 + }, + "kind": ".", + "at": 4098, + "from_row": 149, + "to_row": 149 + }, + "kind": "!=", + "at": 4110, + "from_row": 149, + "to_row": 149 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 3952, + "to_row": 150, + "outer": 30, + "list": [ + { + "to_column": 29, + "from_column": 25, + "name": "node", + "kind": "name", + "at": 3961, + "from_row": 146, + "to_row": 146 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 15, + "from_row": 146 + }, + "left": { + "to_column": 13, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "pre_scan_fn", + "kind": "name", + "at": 3938, + "from_row": 146, + "to_row": 146 + }, + "kind": "assign", + "at": 3950, + "from_row": 146, + "to_row": 150 + } + }, + { + "to_row": 205, + "from_column": 2, + "to_column": 3, + "kind": "call", + "at": 4176, + "from_row": 152, + "expression": { + "to_column": 3, + "from_column": 17, + "right": { + "from_column": 19, + "nr_slots": 9, + "statements": [ + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 153, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 4230, + "from_row": 153, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "i", + "kind": "name", + "at": 4226, + "from_row": 153, + "to_row": 153 + }, + "kind": "var", + "at": 4222, + "from_row": 153, + "to_row": 153 + }, + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 154, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 4244, + "from_row": 154, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "j", + "kind": "name", + "at": 4240, + "from_row": 154, + "to_row": 154 + }, + "kind": "var", + "at": 4236, + "from_row": 154, + "to_row": 154 + }, + { + "to_column": 19, + "from_column": 4, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 4261, + "from_row": 155, + "to_row": 155 + }, + "left": { + "to_column": 12, + "from_column": 8, + "name": "stmt", + "kind": "name", + "at": 4254, + "from_row": 155, + "to_row": 155 + }, + "kind": "var", + "at": 4250, + "from_row": 155, + "to_row": 155 + }, + { + "to_column": 19, + "from_column": 4, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 4281, + "from_row": 156, + "to_row": 156 + }, + "left": { + "to_column": 12, + "from_column": 8, + "name": "kind", + "kind": "name", + "at": 4274, + "from_row": 156, + "to_row": 156 + }, + "kind": "var", + "at": 4270, + "from_row": 156, + "to_row": 156 + }, + { + "to_column": 19, + "from_column": 4, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 4301, + "from_row": 157, + "to_row": 157 + }, + "left": { + "to_column": 12, + "from_column": 8, + "name": "name", + "kind": "name", + "at": 4294, + "from_row": 157, + "to_row": 157 + }, + "kind": "var", + "at": 4290, + "from_row": 157, + "to_row": 157 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 4319, + "from_row": 158, + "to_row": 158 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "sv", + "kind": "name", + "at": 4314, + "from_row": 158, + "to_row": 158 + }, + "kind": "var", + "at": 4310, + "from_row": 158, + "to_row": 158 + }, + { + "to_column": 19, + "from_column": 4, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 4339, + "from_row": 159, + "to_row": 159 + }, + "left": { + "to_column": 12, + "from_column": 8, + "name": "item", + "kind": "name", + "at": 4332, + "from_row": 159, + "to_row": 159 + }, + "kind": "var", + "at": 4328, + "from_row": 159, + "to_row": 159 + }, + { + "to_row": 204, + "from_column": 4, + "to_column": 5, + "statements": [ + { + "to_column": 5, + "from_column": 30, + "statements": [ + { + "to_row": 161, + "from_column": 6, + "to_column": 21, + "kind": "call", + "at": 4382, + "from_row": 161, + "expression": { + "to_column": 21, + "from_column": 11, + "right": { + "to_column": 21, + "from_column": 18, + "right": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 16, + "name": "i", + "kind": "name", + "at": 4395, + "from_row": 161, + "to_row": 161 + }, + "left": { + "to_column": 18, + "from_column": 13, + "level": 0, + "function_nr": 16, + "name": "stmts", + "kind": "name", + "at": 4389, + "from_row": 161, + "to_row": 161 + }, + "kind": "[", + "at": 4394, + "from_row": 161, + "to_row": 161 + }, + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4382, + "from_row": 161, + "to_row": 161 + }, + "kind": "assign", + "at": 4387, + "from_row": 161, + "to_row": 161 + } + }, + { + "to_row": 162, + "from_column": 6, + "to_column": 22, + "kind": "call", + "at": 4404, + "from_row": 162, + "expression": { + "to_column": 22, + "from_column": 11, + "right": { + "to_column": 22, + "from_column": 17, + "right": "kind", + "left": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4411, + "from_row": 162, + "to_row": 162 + }, + "kind": ".", + "at": 4415, + "from_row": 162, + "to_row": 162 + }, + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 16, + "name": "kind", + "kind": "name", + "at": 4404, + "from_row": 162, + "to_row": 162 + }, + "kind": "assign", + "at": 4409, + "from_row": 162, + "to_row": 162 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 25, + "statements": [ + { + "to_row": 164, + "from_column": 8, + "to_column": 29, + "kind": "call", + "at": 4456, + "from_row": 164, + "expression": { + "to_column": 29, + "from_column": 13, + "right": { + "to_column": 29, + "from_column": 24, + "right": "name", + "left": { + "to_column": 24, + "from_column": 19, + "right": "left", + "left": { + "to_column": 19, + "from_column": 15, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4463, + "from_row": 164, + "to_row": 164 + }, + "kind": ".", + "at": 4467, + "from_row": 164, + "to_row": 164 + }, + "kind": ".", + "at": 4472, + "from_row": 164, + "to_row": 164 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 4456, + "from_row": 164, + "to_row": 164 + }, + "kind": "assign", + "at": 4461, + "from_row": 164, + "to_row": 164 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 52, + "statements": [ + { + "to_row": 166, + "from_column": 10, + "to_column": 37, + "kind": "call", + "at": 4542, + "from_row": 166, + "expression": { + "to_column": 37, + "from_column": 13, + "right": { + "list": [ + { + "to_column": 30, + "from_column": 25, + "level": 0, + "function_nr": 16, + "name": "fn_nr", + "kind": "name", + "at": 4557, + "from_row": 166, + "to_row": 166 + }, + { + "to_column": 36, + "from_column": 32, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 4564, + "from_row": 166, + "to_row": 166 + } + ], + "from_column": 24, + "to_row": 166, + "to_column": 37, + "kind": "(", + "at": 4556, + "from_row": 166, + "expression": { + "to_column": 24, + "from_column": 15, + "level": 1, + "function_nr": 30, + "name": "scope_var", + "kind": "name", + "at": 4547, + "from_row": 166, + "to_row": 166 + } + }, + "left": { + "to_column": 12, + "from_column": 10, + "level": 0, + "function_nr": 16, + "name": "sv", + "kind": "name", + "at": 4542, + "from_row": 166, + "to_row": 166 + }, + "kind": "assign", + "at": 4545, + "from_row": 166, + "to_row": 166 + } + }, + { + "then": [ + { + "to_column": 11, + "from_column": 41, + "statements": [ + { + "to_row": 168, + "from_column": 12, + "to_column": 51, + "kind": "call", + "at": 4625, + "from_row": 168, + "expression": { + "list": [ + { + "to_column": 32, + "from_column": 27, + "level": 0, + "function_nr": 16, + "name": "fn_nr", + "kind": "name", + "at": 4640, + "from_row": 168, + "to_row": 168 + }, + { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 4647, + "from_row": 168, + "to_row": 168 + }, + { + "to_column": 50, + "from_column": 44, + "right": "right", + "left": { + "to_column": 44, + "from_column": 40, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4653, + "from_row": 168, + "to_row": 168 + }, + "kind": ".", + "at": 4657, + "from_row": 168, + "to_row": 168 + } + ], + "from_column": 26, + "to_row": 168, + "to_column": 51, + "kind": "(", + "at": 4639, + "from_row": 168, + "expression": { + "to_column": 26, + "from_column": 12, + "level": 1, + "function_nr": 30, + "name": "register_const", + "kind": "name", + "at": 4625, + "from_row": 168, + "to_row": 168 + } + } + } + ], + "kind": "block", + "at": 4611, + "from_row": 167, + "to_row": 169 + } + ], + "from_column": 10, + "list": [], + "to_row": 169, + "to_column": 11, + "kind": "if", + "at": 4580, + "from_row": 167, + "expression": { + "to_column": 39, + "from_column": 25, + "right": { + "to_row": 167, + "from_column": 28, + "to_column": 39, + "kind": "!", + "at": 4598, + "from_row": 167, + "expression": { + "to_column": 39, + "from_column": 31, + "right": "closure", + "left": { + "to_column": 31, + "from_column": 29, + "level": 0, + "function_nr": 16, + "name": "sv", + "kind": "name", + "at": 4599, + "from_row": 167, + "to_row": 167 + }, + "kind": ".", + "at": 4601, + "from_row": 167, + "to_row": 167 + } + }, + "left": { + "to_column": 24, + "from_column": 17, + "right": { + "to_column": 24, + "from_column": 20, + "kind": "null", + "at": 4590, + "from_row": 167, + "to_row": 167 + }, + "left": { + "to_column": 16, + "from_column": 14, + "level": 0, + "function_nr": 16, + "name": "sv", + "kind": "name", + "at": 4584, + "from_row": 167, + "to_row": 167 + }, + "kind": "!=", + "at": 4587, + "from_row": 167, + "to_row": 167 + }, + "kind": "&&", + "at": 4595, + "from_row": 167, + "to_row": 167 + } + } + ], + "kind": "block", + "at": 4530, + "from_row": 165, + "to_row": 170 + } + ], + "from_column": 8, + "list": [], + "to_row": 170, + "to_column": 9, + "kind": "if", + "at": 4486, + "from_row": 165, + "expression": { + "to_column": 50, + "from_column": 25, + "right": { + "list": [ + { + "to_column": 49, + "from_column": 43, + "right": "right", + "left": { + "to_column": 43, + "from_column": 39, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4517, + "from_row": 165, + "to_row": 165 + }, + "kind": ".", + "at": 4521, + "from_row": 165, + "to_row": 165 + } + ], + "from_column": 38, + "to_row": 165, + "to_column": 50, + "kind": "(", + "at": 4516, + "from_row": 165, + "expression": { + "to_column": 38, + "from_column": 28, + "level": 1, + "function_nr": 30, + "name": "is_literal", + "kind": "name", + "at": 4506, + "from_row": 165, + "to_row": 165 + } + }, + "left": { + "to_column": 24, + "from_column": 17, + "right": { + "to_column": 24, + "from_column": 20, + "kind": "null", + "at": 4498, + "from_row": 165, + "to_row": 165 + }, + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 4490, + "from_row": 165, + "to_row": 165 + }, + "kind": "!=", + "at": 4495, + "from_row": 165, + "to_row": 165 + }, + "kind": "&&", + "at": 4503, + "from_row": 165, + "to_row": 165 + } + } + ], + "kind": "block", + "at": 4446, + "from_row": 163, + "to_row": 171 + } + ], + "from_column": 6, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 37, + "statements": [ + { + "to_row": 172, + "from_column": 8, + "to_column": 24, + "kind": "call", + "at": 4734, + "from_row": 172, + "expression": { + "to_column": 24, + "from_column": 13, + "right": { + "to_column": 24, + "from_column": 19, + "right": "name", + "left": { + "to_column": 19, + "from_column": 15, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4741, + "from_row": 172, + "to_row": 172 + }, + "kind": ".", + "at": 4745, + "from_row": 172, + "to_row": 172 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 4734, + "from_row": 172, + "to_row": 172 + }, + "kind": "assign", + "at": 4739, + "from_row": 172, + "to_row": 172 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 48, + "statements": [ + { + "to_row": 174, + "from_column": 10, + "to_column": 49, + "kind": "call", + "at": 4811, + "from_row": 174, + "expression": { + "list": [ + { + "to_column": 30, + "from_column": 25, + "level": 0, + "function_nr": 16, + "name": "fn_nr", + "kind": "name", + "at": 4826, + "from_row": 174, + "to_row": 174 + }, + { + "to_column": 36, + "from_column": 32, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 4833, + "from_row": 174, + "to_row": 174 + }, + { + "to_column": 48, + "from_column": 42, + "right": "arity", + "left": { + "to_column": 42, + "from_column": 38, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4839, + "from_row": 174, + "to_row": 174 + }, + "kind": ".", + "at": 4843, + "from_row": 174, + "to_row": 174 + } + ], + "from_column": 24, + "to_row": 174, + "to_column": 49, + "kind": "(", + "at": 4825, + "from_row": 174, + "expression": { + "to_column": 24, + "from_column": 10, + "level": 1, + "function_nr": 30, + "name": "register_arity", + "kind": "name", + "at": 4811, + "from_row": 174, + "to_row": 174 + } + } + } + ], + "kind": "block", + "at": 4799, + "from_row": 173, + "to_row": 175 + } + ], + "from_column": 8, + "list": [], + "to_row": 175, + "to_column": 9, + "kind": "if", + "at": 4759, + "from_row": 173, + "expression": { + "to_column": 46, + "from_column": 25, + "right": { + "to_column": 46, + "from_column": 39, + "right": { + "to_column": 46, + "from_column": 42, + "kind": "null", + "at": 4793, + "from_row": 173, + "to_row": 173 + }, + "left": { + "to_column": 38, + "from_column": 32, + "right": "arity", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4779, + "from_row": 173, + "to_row": 173 + }, + "kind": ".", + "at": 4783, + "from_row": 173, + "to_row": 173 + }, + "kind": "!=", + "at": 4790, + "from_row": 173, + "to_row": 173 + }, + "left": { + "to_column": 24, + "from_column": 17, + "right": { + "to_column": 24, + "from_column": 20, + "kind": "null", + "at": 4771, + "from_row": 173, + "to_row": 173 + }, + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 4763, + "from_row": 173, + "to_row": 173 + }, + "kind": "!=", + "at": 4768, + "from_row": 173, + "to_row": 173 + }, + "kind": "&&", + "at": 4776, + "from_row": 173, + "to_row": 173 + } + }, + { + "to_row": 176, + "from_column": 8, + "to_column": 25, + "kind": "call", + "at": 4869, + "from_row": 176, + "expression": { + "list": [ + { + "to_column": 24, + "from_column": 20, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4881, + "from_row": 176, + "to_row": 176 + } + ], + "from_column": 19, + "to_row": 176, + "to_column": 25, + "kind": "(", + "at": 4880, + "from_row": 176, + "expression": { + "to_column": 19, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_fn", + "kind": "name", + "at": 4869, + "from_row": 176, + "to_row": 176 + } + } + } + ], + "kind": "block", + "at": 4724, + "from_row": 171, + "to_row": 177 + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 32, + "statements": [ + { + "then": [ + { + "to_column": 9, + "from_column": 93, + "statements": [ + { + "to_row": 179, + "from_column": 10, + "to_column": 31, + "kind": "call", + "at": 5026, + "from_row": 179, + "expression": { + "to_column": 31, + "from_column": 15, + "right": { + "to_column": 31, + "from_column": 26, + "right": "name", + "left": { + "to_column": 26, + "from_column": 21, + "right": "left", + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 5033, + "from_row": 179, + "to_row": 179 + }, + "kind": ".", + "at": 5037, + "from_row": 179, + "to_row": 179 + }, + "kind": ".", + "at": 5042, + "from_row": 179, + "to_row": 179 + }, + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 5026, + "from_row": 179, + "to_row": 179 + }, + "kind": "assign", + "at": 5031, + "from_row": 179, + "to_row": 179 + } + }, + { + "then": [ + { + "to_column": 11, + "from_column": 28, + "statements": [ + { + "to_row": 181, + "from_column": 12, + "to_column": 39, + "kind": "call", + "at": 5090, + "from_row": 181, + "expression": { + "to_column": 39, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 32, + "from_column": 27, + "level": 0, + "function_nr": 16, + "name": "fn_nr", + "kind": "name", + "at": 5105, + "from_row": 181, + "to_row": 181 + }, + { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 5112, + "from_row": 181, + "to_row": 181 + } + ], + "from_column": 26, + "to_row": 181, + "to_column": 39, + "kind": "(", + "at": 5104, + "from_row": 181, + "expression": { + "to_column": 26, + "from_column": 17, + "level": 1, + "function_nr": 30, + "name": "scope_var", + "kind": "name", + "at": 5095, + "from_row": 181, + "to_row": 181 + } + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 16, + "name": "sv", + "kind": "name", + "at": 5090, + "from_row": 181, + "to_row": 181 + }, + "kind": "assign", + "at": 5093, + "from_row": 181, + "to_row": 181 + } + }, + { + "then": [ + { + "to_column": 13, + "from_column": 48, + "statements": [ + { + "to_row": 183, + "from_column": 14, + "to_column": 59, + "kind": "call", + "at": 5182, + "from_row": 183, + "expression": { + "list": [ + { + "to_column": 34, + "from_column": 29, + "level": 0, + "function_nr": 16, + "name": "fn_nr", + "kind": "name", + "at": 5197, + "from_row": 183, + "to_row": 183 + }, + { + "to_column": 40, + "from_column": 36, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 5204, + "from_row": 183, + "to_row": 183 + }, + { + "to_column": 58, + "from_column": 52, + "right": "arity", + "left": { + "to_column": 52, + "from_column": 46, + "right": "right", + "left": { + "to_column": 46, + "from_column": 42, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 5210, + "from_row": 183, + "to_row": 183 + }, + "kind": ".", + "at": 5214, + "from_row": 183, + "to_row": 183 + }, + "kind": ".", + "at": 5220, + "from_row": 183, + "to_row": 183 + } + ], + "from_column": 28, + "to_row": 183, + "to_column": 59, + "kind": "(", + "at": 5196, + "from_row": 183, + "expression": { + "to_column": 28, + "from_column": 14, + "level": 1, + "function_nr": 30, + "name": "register_arity", + "kind": "name", + "at": 5182, + "from_row": 183, + "to_row": 183 + } + } + } + ], + "kind": "block", + "at": 5166, + "from_row": 182, + "to_row": 184 + } + ], + "from_column": 12, + "list": [], + "to_row": 184, + "to_column": 13, + "kind": "if", + "at": 5130, + "from_row": 182, + "expression": { + "to_column": 46, + "from_column": 27, + "right": { + "to_column": 46, + "from_column": 38, + "right": { + "to_row": 182, + "from_column": 41, + "to_column": 46, + "kind": "text", + "at": 5159, + "from_row": 182, + "value": "var" + }, + "left": { + "to_column": 37, + "from_column": 32, + "right": "make", + "left": { + "to_column": 32, + "from_column": 30, + "level": 0, + "function_nr": 16, + "name": "sv", + "kind": "name", + "at": 5148, + "from_row": 182, + "to_row": 182 + }, + "kind": ".", + "at": 5150, + "from_row": 182, + "to_row": 182 + }, + "kind": "==", + "at": 5156, + "from_row": 182, + "to_row": 182 + }, + "left": { + "to_column": 26, + "from_column": 19, + "right": { + "to_column": 26, + "from_column": 22, + "kind": "null", + "at": 5140, + "from_row": 182, + "to_row": 182 + }, + "left": { + "to_column": 18, + "from_column": 16, + "level": 0, + "function_nr": 16, + "name": "sv", + "kind": "name", + "at": 5134, + "from_row": 182, + "to_row": 182 + }, + "kind": "!=", + "at": 5137, + "from_row": 182, + "to_row": 182 + }, + "kind": "&&", + "at": 5145, + "from_row": 182, + "to_row": 182 + } + } + ], + "kind": "block", + "at": 5076, + "from_row": 180, + "to_row": 185 + } + ], + "from_column": 10, + "list": [], + "to_row": 185, + "to_column": 11, + "kind": "if", + "at": 5058, + "from_row": 180, + "expression": { + "to_column": 26, + "from_column": 19, + "right": { + "to_column": 26, + "from_column": 22, + "kind": "null", + "at": 5070, + "from_row": 180, + "to_row": 180 + }, + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 5062, + "from_row": 180, + "to_row": 180 + }, + "kind": "!=", + "at": 5067, + "from_row": 180, + "to_row": 180 + } + } + ], + "kind": "block", + "at": 5014, + "from_row": 178, + "to_row": 186 + } + ], + "from_column": 8, + "list": [], + "to_row": 186, + "to_column": 9, + "kind": "if", + "at": 4929, + "from_row": 178, + "expression": { + "to_column": 91, + "from_column": 64, + "right": { + "to_column": 91, + "from_column": 84, + "right": { + "to_column": 91, + "from_column": 87, + "kind": "null", + "at": 5008, + "from_row": 178, + "to_row": 178 + }, + "left": { + "to_column": 83, + "from_column": 77, + "right": "arity", + "left": { + "to_column": 77, + "from_column": 71, + "right": "right", + "left": { + "to_column": 71, + "from_column": 67, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4988, + "from_row": 178, + "to_row": 178 + }, + "kind": ".", + "at": 4992, + "from_row": 178, + "to_row": 178 + }, + "kind": ".", + "at": 4998, + "from_row": 178, + "to_row": 178 + }, + "kind": "!=", + "at": 5005, + "from_row": 178, + "to_row": 178 + }, + "left": { + "to_column": 63, + "from_column": 31, + "right": { + "to_column": 63, + "from_column": 50, + "right": { + "to_row": 178, + "from_column": 53, + "to_column": 63, + "kind": "text", + "at": 4974, + "from_row": 178, + "value": "function" + }, + "left": { + "to_column": 49, + "from_column": 44, + "right": "kind", + "left": { + "to_column": 44, + "from_column": 38, + "right": "right", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4955, + "from_row": 178, + "to_row": 178 + }, + "kind": ".", + "at": 4959, + "from_row": 178, + "to_row": 178 + }, + "kind": ".", + "at": 4965, + "from_row": 178, + "to_row": 178 + }, + "kind": "==", + "at": 4971, + "from_row": 178, + "to_row": 178 + }, + "left": { + "to_column": 30, + "from_column": 23, + "right": { + "to_column": 30, + "from_column": 26, + "kind": "null", + "at": 4947, + "from_row": 178, + "to_row": 178 + }, + "left": { + "to_column": 22, + "from_column": 16, + "right": "right", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 4933, + "from_row": 178, + "to_row": 178 + }, + "kind": ".", + "at": 4937, + "from_row": 178, + "to_row": 178 + }, + "kind": "!=", + "at": 4944, + "from_row": 178, + "to_row": 178 + }, + "kind": "&&", + "at": 4952, + "from_row": 178, + "to_row": 178 + }, + "kind": "&&", + "at": 4985, + "from_row": 178, + "to_row": 178 + } + } + ], + "kind": "block", + "at": 4919, + "from_row": 177, + "to_row": 187 + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 37, + "statements": [ + { + "to_row": 188, + "from_column": 8, + "to_column": 13, + "kind": "call", + "at": 5311, + "from_row": 188, + "expression": { + "to_column": 13, + "from_column": 10, + "right": { + "to_row": 188, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 5315, + "from_row": 188, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 16, + "name": "j", + "kind": "name", + "at": 5311, + "from_row": 188, + "to_row": 188 + }, + "kind": "assign", + "at": 5313, + "from_row": 188, + "to_row": 188 + } + }, + { + "to_row": 201, + "from_column": 8, + "to_column": 9, + "statements": [ + { + "to_column": 9, + "from_column": 38, + "statements": [ + { + "to_row": 190, + "from_column": 10, + "to_column": 29, + "kind": "call", + "at": 5367, + "from_row": 190, + "expression": { + "to_column": 29, + "from_column": 15, + "right": { + "to_column": 29, + "from_column": 26, + "right": { + "to_column": 28, + "from_column": 27, + "level": 0, + "function_nr": 16, + "name": "j", + "kind": "name", + "at": 5384, + "from_row": 190, + "to_row": 190 + }, + "left": { + "to_column": 26, + "from_column": 21, + "right": "list", + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 5374, + "from_row": 190, + "to_row": 190 + }, + "kind": ".", + "at": 5378, + "from_row": 190, + "to_row": 190 + }, + "kind": "[", + "at": 5383, + "from_row": 190, + "to_row": 190 + }, + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 16, + "name": "item", + "kind": "name", + "at": 5367, + "from_row": 190, + "to_row": 190 + }, + "kind": "assign", + "at": 5372, + "from_row": 190, + "to_row": 190 + } + }, + { + "then": [ + { + "to_column": 11, + "from_column": 117, + "statements": [ + { + "to_row": 192, + "from_column": 12, + "to_column": 33, + "kind": "call", + "at": 5518, + "from_row": 192, + "expression": { + "to_column": 33, + "from_column": 17, + "right": { + "to_column": 33, + "from_column": 28, + "right": "name", + "left": { + "to_column": 28, + "from_column": 23, + "right": "left", + "left": { + "to_column": 23, + "from_column": 19, + "level": 0, + "function_nr": 16, + "name": "item", + "kind": "name", + "at": 5525, + "from_row": 192, + "to_row": 192 + }, + "kind": ".", + "at": 5529, + "from_row": 192, + "to_row": 192 + }, + "kind": ".", + "at": 5534, + "from_row": 192, + "to_row": 192 + }, + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 5518, + "from_row": 192, + "to_row": 192 + }, + "kind": "assign", + "at": 5523, + "from_row": 192, + "to_row": 192 + } + }, + { + "then": [ + { + "to_column": 13, + "from_column": 30, + "statements": [ + { + "to_row": 194, + "from_column": 14, + "to_column": 41, + "kind": "call", + "at": 5586, + "from_row": 194, + "expression": { + "to_column": 41, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 34, + "from_column": 29, + "level": 0, + "function_nr": 16, + "name": "fn_nr", + "kind": "name", + "at": 5601, + "from_row": 194, + "to_row": 194 + }, + { + "to_column": 40, + "from_column": 36, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 5608, + "from_row": 194, + "to_row": 194 + } + ], + "from_column": 28, + "to_row": 194, + "to_column": 41, + "kind": "(", + "at": 5600, + "from_row": 194, + "expression": { + "to_column": 28, + "from_column": 19, + "level": 1, + "function_nr": 30, + "name": "scope_var", + "kind": "name", + "at": 5591, + "from_row": 194, + "to_row": 194 + } + }, + "left": { + "to_column": 16, + "from_column": 14, + "level": 0, + "function_nr": 16, + "name": "sv", + "kind": "name", + "at": 5586, + "from_row": 194, + "to_row": 194 + }, + "kind": "assign", + "at": 5589, + "from_row": 194, + "to_row": 194 + } + }, + { + "then": [ + { + "to_column": 15, + "from_column": 50, + "statements": [ + { + "to_row": 196, + "from_column": 16, + "to_column": 61, + "kind": "call", + "at": 5682, + "from_row": 196, + "expression": { + "list": [ + { + "to_column": 36, + "from_column": 31, + "level": 0, + "function_nr": 16, + "name": "fn_nr", + "kind": "name", + "at": 5697, + "from_row": 196, + "to_row": 196 + }, + { + "to_column": 42, + "from_column": 38, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 5704, + "from_row": 196, + "to_row": 196 + }, + { + "to_column": 60, + "from_column": 54, + "right": "arity", + "left": { + "to_column": 54, + "from_column": 48, + "right": "right", + "left": { + "to_column": 48, + "from_column": 44, + "level": 0, + "function_nr": 16, + "name": "item", + "kind": "name", + "at": 5710, + "from_row": 196, + "to_row": 196 + }, + "kind": ".", + "at": 5714, + "from_row": 196, + "to_row": 196 + }, + "kind": ".", + "at": 5720, + "from_row": 196, + "to_row": 196 + } + ], + "from_column": 30, + "to_row": 196, + "to_column": 61, + "kind": "(", + "at": 5696, + "from_row": 196, + "expression": { + "to_column": 30, + "from_column": 16, + "level": 1, + "function_nr": 30, + "name": "register_arity", + "kind": "name", + "at": 5682, + "from_row": 196, + "to_row": 196 + } + } + } + ], + "kind": "block", + "at": 5664, + "from_row": 195, + "to_row": 197 + } + ], + "from_column": 14, + "list": [], + "to_row": 197, + "to_column": 15, + "kind": "if", + "at": 5628, + "from_row": 195, + "expression": { + "to_column": 48, + "from_column": 29, + "right": { + "to_column": 48, + "from_column": 40, + "right": { + "to_row": 195, + "from_column": 43, + "to_column": 48, + "kind": "text", + "at": 5657, + "from_row": 195, + "value": "var" + }, + "left": { + "to_column": 39, + "from_column": 34, + "right": "make", + "left": { + "to_column": 34, + "from_column": 32, + "level": 0, + "function_nr": 16, + "name": "sv", + "kind": "name", + "at": 5646, + "from_row": 195, + "to_row": 195 + }, + "kind": ".", + "at": 5648, + "from_row": 195, + "to_row": 195 + }, + "kind": "==", + "at": 5654, + "from_row": 195, + "to_row": 195 + }, + "left": { + "to_column": 28, + "from_column": 21, + "right": { + "to_column": 28, + "from_column": 24, + "kind": "null", + "at": 5638, + "from_row": 195, + "to_row": 195 + }, + "left": { + "to_column": 20, + "from_column": 18, + "level": 0, + "function_nr": 16, + "name": "sv", + "kind": "name", + "at": 5632, + "from_row": 195, + "to_row": 195 + }, + "kind": "!=", + "at": 5635, + "from_row": 195, + "to_row": 195 + }, + "kind": "&&", + "at": 5643, + "from_row": 195, + "to_row": 195 + } + } + ], + "kind": "block", + "at": 5570, + "from_row": 193, + "to_row": 198 + } + ], + "from_column": 12, + "list": [], + "to_row": 198, + "to_column": 13, + "kind": "if", + "at": 5552, + "from_row": 193, + "expression": { + "to_column": 28, + "from_column": 21, + "right": { + "to_column": 28, + "from_column": 24, + "kind": "null", + "at": 5564, + "from_row": 193, + "to_row": 193 + }, + "left": { + "to_column": 20, + "from_column": 16, + "level": 0, + "function_nr": 16, + "name": "name", + "kind": "name", + "at": 5556, + "from_row": 193, + "to_row": 193 + }, + "kind": "!=", + "at": 5561, + "from_row": 193, + "to_row": 193 + } + } + ], + "kind": "block", + "at": 5504, + "from_row": 191, + "to_row": 199 + } + ], + "from_column": 10, + "list": [], + "to_row": 199, + "to_column": 11, + "kind": "if", + "at": 5397, + "from_row": 191, + "expression": { + "to_column": 115, + "from_column": 88, + "right": { + "to_column": 115, + "from_column": 108, + "right": { + "to_column": 115, + "from_column": 111, + "kind": "null", + "at": 5498, + "from_row": 191, + "to_row": 191 + }, + "left": { + "to_column": 107, + "from_column": 101, + "right": "arity", + "left": { + "to_column": 101, + "from_column": 95, + "right": "right", + "left": { + "to_column": 95, + "from_column": 91, + "level": 0, + "function_nr": 16, + "name": "item", + "kind": "name", + "at": 5478, + "from_row": 191, + "to_row": 191 + }, + "kind": ".", + "at": 5482, + "from_row": 191, + "to_row": 191 + }, + "kind": ".", + "at": 5488, + "from_row": 191, + "to_row": 191 + }, + "kind": "!=", + "at": 5495, + "from_row": 191, + "to_row": 191 + }, + "left": { + "to_column": 87, + "from_column": 55, + "right": { + "to_column": 87, + "from_column": 74, + "right": { + "to_row": 191, + "from_column": 77, + "to_column": 87, + "kind": "text", + "at": 5464, + "from_row": 191, + "value": "function" + }, + "left": { + "to_column": 73, + "from_column": 68, + "right": "kind", + "left": { + "to_column": 68, + "from_column": 62, + "right": "right", + "left": { + "to_column": 62, + "from_column": 58, + "level": 0, + "function_nr": 16, + "name": "item", + "kind": "name", + "at": 5445, + "from_row": 191, + "to_row": 191 + }, + "kind": ".", + "at": 5449, + "from_row": 191, + "to_row": 191 + }, + "kind": ".", + "at": 5455, + "from_row": 191, + "to_row": 191 + }, + "kind": "==", + "at": 5461, + "from_row": 191, + "to_row": 191 + }, + "left": { + "to_column": 54, + "from_column": 33, + "right": { + "to_column": 54, + "from_column": 47, + "right": { + "to_column": 54, + "from_column": 50, + "kind": "null", + "at": 5437, + "from_row": 191, + "to_row": 191 + }, + "left": { + "to_column": 46, + "from_column": 40, + "right": "right", + "left": { + "to_column": 40, + "from_column": 36, + "level": 0, + "function_nr": 16, + "name": "item", + "kind": "name", + "at": 5423, + "from_row": 191, + "to_row": 191 + }, + "kind": ".", + "at": 5427, + "from_row": 191, + "to_row": 191 + }, + "kind": "!=", + "at": 5434, + "from_row": 191, + "to_row": 191 + }, + "left": { + "to_column": 32, + "from_column": 24, + "right": { + "to_row": 191, + "from_column": 27, + "to_column": 32, + "kind": "text", + "at": 5414, + "from_row": 191, + "value": "var" + }, + "left": { + "to_column": 23, + "from_column": 18, + "right": "kind", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 16, + "name": "item", + "kind": "name", + "at": 5401, + "from_row": 191, + "to_row": 191 + }, + "kind": ".", + "at": 5405, + "from_row": 191, + "to_row": 191 + }, + "kind": "==", + "at": 5411, + "from_row": 191, + "to_row": 191 + }, + "kind": "&&", + "at": 5420, + "from_row": 191, + "to_row": 191 + }, + "kind": "&&", + "at": 5442, + "from_row": 191, + "to_row": 191 + }, + "kind": "&&", + "at": 5475, + "from_row": 191, + "to_row": 191 + } + }, + { + "to_row": 200, + "from_column": 10, + "to_column": 19, + "kind": "call", + "at": 5780, + "from_row": 200, + "expression": { + "to_column": 19, + "from_column": 12, + "right": { + "to_column": 19, + "from_column": 16, + "right": { + "to_row": 200, + "from_column": 18, + "number": 1, + "to_column": 19, + "kind": "number", + "at": 5788, + "from_row": 200, + "value": "1" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 16, + "name": "j", + "kind": "name", + "at": 5784, + "from_row": 200, + "to_row": 200 + }, + "kind": "+", + "at": 5786, + "from_row": 200, + "to_row": 200 + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 16, + "name": "j", + "kind": "name", + "at": 5780, + "from_row": 200, + "to_row": 200 + }, + "kind": "assign", + "at": 5782, + "from_row": 200, + "to_row": 200 + } + } + ], + "kind": "block", + "at": 5355, + "from_row": 189, + "to_row": 201 + } + ], + "kind": "while", + "at": 5325, + "from_row": 189, + "expression": { + "to_column": 36, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 35, + "from_column": 30, + "right": "list", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 16, + "name": "stmt", + "kind": "name", + "at": 5343, + "from_row": 189, + "to_row": 189 + }, + "kind": ".", + "at": 5347, + "from_row": 189, + "to_row": 189 + } + ], + "from_column": 25, + "to_row": 189, + "to_column": 36, + "kind": "(", + "at": 5342, + "from_row": 189, + "expression": { + "to_column": 25, + "from_column": 19, + "level": -1, + "name": "length", + "kind": "name", + "at": 5336, + "from_row": 189, + "to_row": 189 + } + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 16, + "name": "j", + "kind": "name", + "at": 5332, + "from_row": 189, + "to_row": 189 + }, + "kind": "<", + "at": 5334, + "from_row": 189, + "to_row": 189 + } + } + ], + "kind": "block", + "at": 5301, + "from_row": 187, + "to_row": 202 + } + ], + "from_column": 13, + "list": [], + "to_row": 202, + "to_column": 7, + "kind": "if", + "at": 5277, + "from_row": 187, + "expression": { + "to_column": 35, + "from_column": 22, + "right": { + "to_row": 187, + "from_column": 25, + "to_column": 35, + "kind": "text", + "at": 5289, + "from_row": 187, + "value": "var_list" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 16, + "name": "kind", + "kind": "name", + "at": 5281, + "from_row": 187, + "to_row": 187 + }, + "kind": "==", + "at": 5286, + "from_row": 187, + "to_row": 187 + } + } + ], + "to_row": 202, + "to_column": 7, + "kind": "if", + "at": 4900, + "from_row": 177, + "expression": { + "to_column": 30, + "from_column": 22, + "right": { + "to_row": 177, + "from_column": 25, + "to_column": 30, + "kind": "text", + "at": 4912, + "from_row": 177, + "value": "var" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 16, + "name": "kind", + "kind": "name", + "at": 4904, + "from_row": 177, + "to_row": 177 + }, + "kind": "==", + "at": 4909, + "from_row": 177, + "to_row": 177 + } + } + ], + "to_row": 202, + "to_column": 7, + "kind": "if", + "at": 4700, + "from_row": 171, + "expression": { + "to_column": 35, + "from_column": 22, + "right": { + "to_row": 171, + "from_column": 25, + "to_column": 35, + "kind": "text", + "at": 4712, + "from_row": 171, + "value": "function" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 16, + "name": "kind", + "kind": "name", + "at": 4704, + "from_row": 171, + "to_row": 171 + }, + "kind": "==", + "at": 4709, + "from_row": 171, + "to_row": 171 + } + } + ], + "to_row": 202, + "to_column": 7, + "kind": "if", + "at": 4427, + "from_row": 163, + "expression": { + "to_column": 23, + "from_column": 15, + "right": { + "to_row": 163, + "from_column": 18, + "to_column": 23, + "kind": "text", + "at": 4439, + "from_row": 163, + "value": "def" + }, + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 16, + "name": "kind", + "kind": "name", + "at": 4431, + "from_row": 163, + "to_row": 163 + }, + "kind": "==", + "at": 4436, + "from_row": 163, + "to_row": 163 + } + }, + { + "to_row": 203, + "from_column": 6, + "to_column": 15, + "kind": "call", + "at": 5814, + "from_row": 203, + "expression": { + "to_column": 15, + "from_column": 8, + "right": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 203, + "from_column": 14, + "number": 1, + "to_column": 15, + "kind": "number", + "at": 5822, + "from_row": 203, + "value": "1" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 16, + "name": "i", + "kind": "name", + "at": 5818, + "from_row": 203, + "to_row": 203 + }, + "kind": "+", + "at": 5820, + "from_row": 203, + "to_row": 203 + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 16, + "name": "i", + "kind": "name", + "at": 5814, + "from_row": 203, + "to_row": 203 + }, + "kind": "assign", + "at": 5816, + "from_row": 203, + "to_row": 203 + } + } + ], + "kind": "block", + "at": 4374, + "from_row": 160, + "to_row": 204 + } + ], + "kind": "while", + "at": 4348, + "from_row": 160, + "expression": { + "to_column": 28, + "from_column": 13, + "right": { + "list": [ + { + "to_column": 27, + "from_column": 22, + "level": 0, + "function_nr": 16, + "name": "stmts", + "kind": "name", + "at": 4366, + "from_row": 160, + "to_row": 160 + } + ], + "from_column": 21, + "to_row": 160, + "to_column": 28, + "kind": "(", + "at": 4365, + "from_row": 160, + "expression": { + "to_column": 21, + "from_column": 15, + "level": -1, + "name": "length", + "kind": "name", + "at": 4359, + "from_row": 160, + "to_row": 160 + } + }, + "left": { + "to_column": 12, + "from_column": 11, + "level": 0, + "function_nr": 16, + "name": "i", + "kind": "name", + "at": 4355, + "from_row": 160, + "to_row": 160 + }, + "kind": "<", + "at": 4357, + "from_row": 160, + "to_row": 160 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 4193, + "to_row": 205, + "outer": 30, + "list": [ + { + "to_column": 33, + "from_column": 28, + "name": "stmts", + "kind": "name", + "at": 4202, + "from_row": 152, + "to_row": 152 + }, + { + "to_column": 40, + "from_column": 35, + "name": "fn_nr", + "kind": "name", + "at": 4209, + "from_row": 152, + "to_row": 152 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 16, + "from_row": 152 + }, + "left": { + "to_column": 16, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "pre_scan_stmts", + "kind": "name", + "at": 4176, + "from_row": 152, + "to_row": 152 + }, + "kind": "assign", + "at": 4191, + "from_row": 152, + "to_row": 205 + } + }, + { + "to_column": 30, + "from_column": 2, + "right": { + "to_column": 30, + "from_column": 26, + "kind": "null", + "at": 5861, + "from_row": 207, + "to_row": 207 + }, + "left": { + "to_column": 23, + "from_column": 6, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 5841, + "from_row": 207, + "to_row": 207 + }, + "kind": "var", + "at": 5837, + "from_row": 207, + "to_row": 207 + }, + { + "to_row": 234, + "from_column": 2, + "to_column": 3, + "kind": "call", + "at": 5868, + "from_row": 208, + "expression": { + "to_column": 3, + "from_column": 20, + "right": { + "from_column": 22, + "nr_slots": 3, + "statements": [ + { + "then": [ + { + "to_row": 209, + "from_column": 22, + "to_column": 33, + "kind": "return", + "at": 5927, + "from_row": 209, + "expression": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 5934, + "from_row": 209, + "to_row": 209 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 209, + "to_column": 33, + "kind": "if", + "at": 5909, + "from_row": 209, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 5921, + "from_row": 209, + "to_row": 209 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 5913, + "from_row": 209, + "to_row": 209 + }, + "kind": "==", + "at": 5918, + "from_row": 209, + "to_row": 209 + } + }, + { + "to_column": 21, + "from_column": 4, + "right": { + "to_column": 21, + "from_column": 16, + "right": "kind", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 5951, + "from_row": 210, + "to_row": 210 + }, + "kind": ".", + "at": 5955, + "from_row": 210, + "to_row": 210 + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "k", + "kind": "name", + "at": 5947, + "from_row": 210, + "to_row": 210 + }, + "kind": "var", + "at": 5943, + "from_row": 210, + "to_row": 210 + }, + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 211, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 5973, + "from_row": 211, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "i", + "kind": "name", + "at": 5969, + "from_row": 211, + "to_row": 211 + }, + "kind": "var", + "at": 5965, + "from_row": 211, + "to_row": 211 + }, + { + "then": [ + { + "to_column": 5, + "from_column": 25, + "statements": [ + { + "to_row": 213, + "from_column": 6, + "to_column": 23, + "kind": "call", + "at": 6008, + "from_row": 213, + "expression": { + "list": [ + { + "to_column": 22, + "from_column": 18, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6020, + "from_row": 213, + "to_row": 213 + } + ], + "from_column": 17, + "to_row": 213, + "to_column": 23, + "kind": "(", + "at": 6019, + "from_row": 213, + "expression": { + "to_column": 17, + "from_column": 6, + "level": 1, + "function_nr": 30, + "name": "pre_scan_fn", + "kind": "name", + "at": 6008, + "from_row": 213, + "to_row": 213 + } + } + } + ], + "kind": "block", + "at": 6000, + "from_row": 212, + "to_row": 214 + } + ], + "from_column": 4, + "list": [], + "to_row": 214, + "to_column": 5, + "kind": "if", + "at": 5979, + "from_row": 212, + "expression": { + "to_column": 23, + "from_column": 10, + "right": { + "to_row": 212, + "from_column": 13, + "to_column": 23, + "kind": "text", + "at": 5988, + "from_row": 212, + "value": "function" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 17, + "name": "k", + "kind": "name", + "at": 5983, + "from_row": 212, + "to_row": 212 + }, + "kind": "==", + "at": 5985, + "from_row": 212, + "to_row": 212 + } + }, + { + "then": [ + { + "to_row": 215, + "from_column": 27, + "to_column": 55, + "kind": "call", + "at": 6059, + "from_row": 215, + "expression": { + "list": [ + { + "to_column": 54, + "from_column": 49, + "right": "left", + "left": { + "to_column": 49, + "from_column": 45, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6077, + "from_row": 215, + "to_row": 215 + }, + "kind": ".", + "at": 6081, + "from_row": 215, + "to_row": 215 + } + ], + "from_column": 44, + "to_row": 215, + "to_column": 55, + "kind": "(", + "at": 6076, + "from_row": 215, + "expression": { + "to_column": 44, + "from_column": 27, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 6059, + "from_row": 215, + "to_row": 215 + } + } + } + ], + "from_column": 4, + "list": [], + "to_row": 215, + "to_column": 55, + "kind": "if", + "at": 6036, + "from_row": 215, + "expression": { + "to_column": 25, + "from_column": 18, + "right": { + "to_column": 25, + "from_column": 21, + "kind": "null", + "at": 6053, + "from_row": 215, + "to_row": 215 + }, + "left": { + "to_column": 17, + "from_column": 12, + "right": "left", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6040, + "from_row": 215, + "to_row": 215 + }, + "kind": ".", + "at": 6044, + "from_row": 215, + "to_row": 215 + }, + "kind": "!=", + "at": 6050, + "from_row": 215, + "to_row": 215 + } + }, + { + "then": [ + { + "to_row": 216, + "from_column": 28, + "to_column": 57, + "kind": "call", + "at": 6116, + "from_row": 216, + "expression": { + "list": [ + { + "to_column": 56, + "from_column": 50, + "right": "right", + "left": { + "to_column": 50, + "from_column": 46, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6134, + "from_row": 216, + "to_row": 216 + }, + "kind": ".", + "at": 6138, + "from_row": 216, + "to_row": 216 + } + ], + "from_column": 45, + "to_row": 216, + "to_column": 57, + "kind": "(", + "at": 6133, + "from_row": 216, + "expression": { + "to_column": 45, + "from_column": 28, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 6116, + "from_row": 216, + "to_row": 216 + } + } + } + ], + "from_column": 4, + "list": [], + "to_row": 216, + "to_column": 57, + "kind": "if", + "at": 6092, + "from_row": 216, + "expression": { + "to_column": 26, + "from_column": 19, + "right": { + "to_column": 26, + "from_column": 22, + "kind": "null", + "at": 6110, + "from_row": 216, + "to_row": 216 + }, + "left": { + "to_column": 18, + "from_column": 12, + "right": "right", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6096, + "from_row": 216, + "to_row": 216 + }, + "kind": ".", + "at": 6100, + "from_row": 216, + "to_row": 216 + }, + "kind": "!=", + "at": 6107, + "from_row": 216, + "to_row": 216 + } + }, + { + "then": [ + { + "to_row": 217, + "from_column": 33, + "to_column": 67, + "kind": "call", + "at": 6179, + "from_row": 217, + "expression": { + "list": [ + { + "to_column": 66, + "from_column": 55, + "right": "expression", + "left": { + "to_column": 55, + "from_column": 51, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6197, + "from_row": 217, + "to_row": 217 + }, + "kind": ".", + "at": 6201, + "from_row": 217, + "to_row": 217 + } + ], + "from_column": 50, + "to_row": 217, + "to_column": 67, + "kind": "(", + "at": 6196, + "from_row": 217, + "expression": { + "to_column": 50, + "from_column": 33, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 6179, + "from_row": 217, + "to_row": 217 + } + } + } + ], + "from_column": 4, + "list": [], + "to_row": 217, + "to_column": 67, + "kind": "if", + "at": 6150, + "from_row": 217, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 6173, + "from_row": 217, + "to_row": 217 + }, + "left": { + "to_column": 23, + "from_column": 12, + "right": "expression", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6154, + "from_row": 217, + "to_row": 217 + }, + "kind": ".", + "at": 6158, + "from_row": 217, + "to_row": 217 + }, + "kind": "!=", + "at": 6170, + "from_row": 217, + "to_row": 217 + } + }, + { + "then": [ + { + "to_row": 218, + "from_column": 27, + "to_column": 55, + "kind": "call", + "at": 6241, + "from_row": 218, + "expression": { + "list": [ + { + "to_column": 54, + "from_column": 49, + "right": "then", + "left": { + "to_column": 49, + "from_column": 45, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6259, + "from_row": 218, + "to_row": 218 + }, + "kind": ".", + "at": 6263, + "from_row": 218, + "to_row": 218 + } + ], + "from_column": 44, + "to_row": 218, + "to_column": 55, + "kind": "(", + "at": 6258, + "from_row": 218, + "expression": { + "to_column": 44, + "from_column": 27, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 6241, + "from_row": 218, + "to_row": 218 + } + } + } + ], + "from_column": 4, + "list": [], + "to_row": 218, + "to_column": 55, + "kind": "if", + "at": 6218, + "from_row": 218, + "expression": { + "to_column": 25, + "from_column": 18, + "right": { + "to_column": 25, + "from_column": 21, + "kind": "null", + "at": 6235, + "from_row": 218, + "to_row": 218 + }, + "left": { + "to_column": 17, + "from_column": 12, + "right": "then", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6222, + "from_row": 218, + "to_row": 218 + }, + "kind": ".", + "at": 6226, + "from_row": 218, + "to_row": 218 + }, + "kind": "!=", + "at": 6232, + "from_row": 218, + "to_row": 218 + } + }, + { + "then": [ + { + "to_row": 219, + "from_column": 27, + "to_column": 55, + "kind": "call", + "at": 6297, + "from_row": 219, + "expression": { + "list": [ + { + "to_column": 54, + "from_column": 49, + "right": "else", + "left": { + "to_column": 49, + "from_column": 45, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6315, + "from_row": 219, + "to_row": 219 + }, + "kind": ".", + "at": 6319, + "from_row": 219, + "to_row": 219 + } + ], + "from_column": 44, + "to_row": 219, + "to_column": 55, + "kind": "(", + "at": 6314, + "from_row": 219, + "expression": { + "to_column": 44, + "from_column": 27, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 6297, + "from_row": 219, + "to_row": 219 + } + } + } + ], + "from_column": 4, + "list": [], + "to_row": 219, + "to_column": 55, + "kind": "if", + "at": 6274, + "from_row": 219, + "expression": { + "to_column": 25, + "from_column": 18, + "right": { + "to_column": 25, + "from_column": 21, + "kind": "null", + "at": 6291, + "from_row": 219, + "to_row": 219 + }, + "left": { + "to_column": 17, + "from_column": 12, + "right": "else", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6278, + "from_row": 219, + "to_row": 219 + }, + "kind": ".", + "at": 6282, + "from_row": 219, + "to_row": 219 + }, + "kind": "!=", + "at": 6288, + "from_row": 219, + "to_row": 219 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 34, + "statements": [ + { + "to_row": 221, + "from_column": 6, + "to_column": 11, + "kind": "call", + "at": 6368, + "from_row": 221, + "expression": { + "to_column": 11, + "from_column": 8, + "right": { + "to_row": 221, + "from_column": 10, + "number": 0, + "to_column": 11, + "kind": "number", + "at": 6372, + "from_row": 221, + "value": "0" + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 17, + "name": "i", + "kind": "name", + "at": 6368, + "from_row": 221, + "to_row": 221 + }, + "kind": "assign", + "at": 6370, + "from_row": 221, + "to_row": 221 + } + }, + { + "to_row": 225, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 36, + "statements": [ + { + "to_row": 223, + "from_column": 8, + "to_column": 39, + "kind": "call", + "at": 6420, + "from_row": 223, + "expression": { + "list": [ + { + "to_column": 38, + "from_column": 35, + "right": { + "to_column": 37, + "from_column": 36, + "level": 0, + "function_nr": 17, + "name": "i", + "kind": "name", + "at": 6448, + "from_row": 223, + "to_row": 223 + }, + "left": { + "to_column": 35, + "from_column": 30, + "right": "list", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6438, + "from_row": 223, + "to_row": 223 + }, + "kind": ".", + "at": 6442, + "from_row": 223, + "to_row": 223 + }, + "kind": "[", + "at": 6447, + "from_row": 223, + "to_row": 223 + } + ], + "from_column": 25, + "to_row": 223, + "to_column": 39, + "kind": "(", + "at": 6437, + "from_row": 223, + "expression": { + "to_column": 25, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 6420, + "from_row": 223, + "to_row": 223 + } + } + }, + { + "to_row": 224, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 6460, + "from_row": 224, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 224, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 6468, + "from_row": 224, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 17, + "name": "i", + "kind": "name", + "at": 6464, + "from_row": 224, + "to_row": 224 + }, + "kind": "+", + "at": 6466, + "from_row": 224, + "to_row": 224 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 17, + "name": "i", + "kind": "name", + "at": 6460, + "from_row": 224, + "to_row": 224 + }, + "kind": "assign", + "at": 6462, + "from_row": 224, + "to_row": 224 + } + } + ], + "kind": "block", + "at": 6410, + "from_row": 222, + "to_row": 225 + } + ], + "kind": "while", + "at": 6380, + "from_row": 222, + "expression": { + "to_column": 34, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 33, + "from_column": 28, + "right": "list", + "left": { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6398, + "from_row": 222, + "to_row": 222 + }, + "kind": ".", + "at": 6402, + "from_row": 222, + "to_row": 222 + } + ], + "from_column": 23, + "to_row": 222, + "to_column": 34, + "kind": "(", + "at": 6397, + "from_row": 222, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 6391, + "from_row": 222, + "to_row": 222 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 17, + "name": "i", + "kind": "name", + "at": 6387, + "from_row": 222, + "to_row": 222 + }, + "kind": "<", + "at": 6389, + "from_row": 222, + "to_row": 222 + } + } + ], + "kind": "block", + "at": 6360, + "from_row": 220, + "to_row": 226 + } + ], + "from_column": 4, + "list": [], + "to_row": 226, + "to_column": 5, + "kind": "if", + "at": 6330, + "from_row": 220, + "expression": { + "to_column": 32, + "from_column": 17, + "right": { + "to_column": 32, + "from_column": 22, + "right": { + "to_row": 220, + "from_column": 25, + "to_column": 32, + "kind": "text", + "at": 6351, + "from_row": 220, + "value": "array" + }, + "left": { + "to_column": 21, + "from_column": 20, + "level": 0, + "function_nr": 17, + "name": "k", + "kind": "name", + "at": 6346, + "from_row": 220, + "to_row": 220 + }, + "kind": "==", + "at": 6348, + "from_row": 220, + "to_row": 220 + }, + "left": { + "to_column": 16, + "from_column": 10, + "right": { + "to_row": 220, + "from_column": 13, + "to_column": 16, + "kind": "text", + "at": 6339, + "from_row": 220, + "value": "(" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 17, + "name": "k", + "kind": "name", + "at": 6334, + "from_row": 220, + "to_row": 220 + }, + "kind": "==", + "at": 6336, + "from_row": 220, + "to_row": 220 + }, + "kind": "||", + "at": 6343, + "from_row": 220, + "to_row": 220 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 23, + "statements": [ + { + "to_row": 228, + "from_column": 6, + "to_column": 11, + "kind": "call", + "at": 6515, + "from_row": 228, + "expression": { + "to_column": 11, + "from_column": 8, + "right": { + "to_row": 228, + "from_column": 10, + "number": 0, + "to_column": 11, + "kind": "number", + "at": 6519, + "from_row": 228, + "value": "0" + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 17, + "name": "i", + "kind": "name", + "at": 6515, + "from_row": 228, + "to_row": 228 + }, + "kind": "assign", + "at": 6517, + "from_row": 228, + "to_row": 228 + } + }, + { + "to_row": 232, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 36, + "statements": [ + { + "to_row": 230, + "from_column": 8, + "to_column": 45, + "kind": "call", + "at": 6567, + "from_row": 230, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 38, + "right": "right", + "left": { + "to_column": 38, + "from_column": 35, + "right": { + "to_column": 37, + "from_column": 36, + "level": 0, + "function_nr": 17, + "name": "i", + "kind": "name", + "at": 6595, + "from_row": 230, + "to_row": 230 + }, + "left": { + "to_column": 35, + "from_column": 30, + "right": "list", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6585, + "from_row": 230, + "to_row": 230 + }, + "kind": ".", + "at": 6589, + "from_row": 230, + "to_row": 230 + }, + "kind": "[", + "at": 6594, + "from_row": 230, + "to_row": 230 + }, + "kind": ".", + "at": 6597, + "from_row": 230, + "to_row": 230 + } + ], + "from_column": 25, + "to_row": 230, + "to_column": 45, + "kind": "(", + "at": 6584, + "from_row": 230, + "expression": { + "to_column": 25, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 6567, + "from_row": 230, + "to_row": 230 + } + } + }, + { + "to_row": 231, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 6613, + "from_row": 231, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 231, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 6621, + "from_row": 231, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 17, + "name": "i", + "kind": "name", + "at": 6617, + "from_row": 231, + "to_row": 231 + }, + "kind": "+", + "at": 6619, + "from_row": 231, + "to_row": 231 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 17, + "name": "i", + "kind": "name", + "at": 6613, + "from_row": 231, + "to_row": 231 + }, + "kind": "assign", + "at": 6615, + "from_row": 231, + "to_row": 231 + } + } + ], + "kind": "block", + "at": 6557, + "from_row": 229, + "to_row": 232 + } + ], + "kind": "while", + "at": 6527, + "from_row": 229, + "expression": { + "to_column": 34, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 33, + "from_column": 28, + "right": "list", + "left": { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 17, + "name": "expr", + "kind": "name", + "at": 6545, + "from_row": 229, + "to_row": 229 + }, + "kind": ".", + "at": 6549, + "from_row": 229, + "to_row": 229 + } + ], + "from_column": 23, + "to_row": 229, + "to_column": 34, + "kind": "(", + "at": 6544, + "from_row": 229, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 6538, + "from_row": 229, + "to_row": 229 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 17, + "name": "i", + "kind": "name", + "at": 6534, + "from_row": 229, + "to_row": 229 + }, + "kind": "<", + "at": 6536, + "from_row": 229, + "to_row": 229 + } + } + ], + "kind": "block", + "at": 6507, + "from_row": 227, + "to_row": 233 + } + ], + "from_column": 4, + "list": [], + "to_row": 233, + "to_column": 5, + "kind": "if", + "at": 6488, + "from_row": 227, + "expression": { + "to_column": 21, + "from_column": 10, + "right": { + "to_row": 227, + "from_column": 13, + "to_column": 21, + "kind": "text", + "at": 6497, + "from_row": 227, + "value": "record" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 17, + "name": "k", + "kind": "name", + "at": 6492, + "from_row": 227, + "to_row": 227 + }, + "kind": "==", + "at": 6494, + "from_row": 227, + "to_row": 227 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 5888, + "to_row": 234, + "outer": 30, + "list": [ + { + "to_column": 35, + "from_column": 31, + "name": "expr", + "kind": "name", + "at": 5897, + "from_row": 208, + "to_row": 208 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 17, + "from_row": 208 + }, + "left": { + "to_column": 19, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 5868, + "from_row": 208, + "to_row": 208 + }, + "kind": "assign", + "at": 5886, + "from_row": 208, + "to_row": 234 + } + }, + { + "to_column": 32, + "from_column": 2, + "right": { + "to_column": 32, + "from_column": 28, + "kind": "null", + "at": 6670, + "from_row": 236, + "to_row": 236 + }, + "left": { + "to_column": 25, + "from_column": 6, + "name": "pre_scan_stmt_exprs", + "kind": "name", + "at": 6648, + "from_row": 236, + "to_row": 236 + }, + "kind": "var", + "at": 6644, + "from_row": 236, + "to_row": 236 + }, + { + "to_row": 288, + "from_column": 2, + "to_column": 3, + "kind": "call", + "at": 6677, + "from_row": 237, + "expression": { + "to_column": 3, + "from_column": 22, + "right": { + "from_column": 24, + "nr_slots": 6, + "statements": [ + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 238, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 6736, + "from_row": 238, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "i", + "kind": "name", + "at": 6732, + "from_row": 238, + "to_row": 238 + }, + "kind": "var", + "at": 6728, + "from_row": 238, + "to_row": 238 + }, + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 239, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 6750, + "from_row": 239, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "j", + "kind": "name", + "at": 6746, + "from_row": 239, + "to_row": 239 + }, + "kind": "var", + "at": 6742, + "from_row": 239, + "to_row": 239 + }, + { + "to_column": 19, + "from_column": 4, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 6767, + "from_row": 240, + "to_row": 240 + }, + "left": { + "to_column": 12, + "from_column": 8, + "name": "stmt", + "kind": "name", + "at": 6760, + "from_row": 240, + "to_row": 240 + }, + "kind": "var", + "at": 6756, + "from_row": 240, + "to_row": 240 + }, + { + "to_column": 19, + "from_column": 4, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 6787, + "from_row": 241, + "to_row": 241 + }, + "left": { + "to_column": 12, + "from_column": 8, + "name": "kind", + "kind": "name", + "at": 6780, + "from_row": 241, + "to_row": 241 + }, + "kind": "var", + "at": 6776, + "from_row": 241, + "to_row": 241 + }, + { + "to_row": 287, + "from_column": 4, + "to_column": 5, + "statements": [ + { + "to_column": 5, + "from_column": 30, + "statements": [ + { + "to_row": 243, + "from_column": 6, + "to_column": 21, + "kind": "call", + "at": 6830, + "from_row": 243, + "expression": { + "to_column": 21, + "from_column": 11, + "right": { + "to_column": 21, + "from_column": 18, + "right": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 18, + "name": "i", + "kind": "name", + "at": 6843, + "from_row": 243, + "to_row": 243 + }, + "left": { + "to_column": 18, + "from_column": 13, + "level": 0, + "function_nr": 18, + "name": "stmts", + "kind": "name", + "at": 6837, + "from_row": 243, + "to_row": 243 + }, + "kind": "[", + "at": 6842, + "from_row": 243, + "to_row": 243 + }, + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 6830, + "from_row": 243, + "to_row": 243 + }, + "kind": "assign", + "at": 6835, + "from_row": 243, + "to_row": 243 + } + }, + { + "to_row": 244, + "from_column": 6, + "to_column": 22, + "kind": "call", + "at": 6852, + "from_row": 244, + "expression": { + "to_column": 22, + "from_column": 11, + "right": { + "to_column": 22, + "from_column": 17, + "right": "kind", + "left": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 6859, + "from_row": 244, + "to_row": 244 + }, + "kind": ".", + "at": 6863, + "from_row": 244, + "to_row": 244 + }, + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 6852, + "from_row": 244, + "to_row": 244 + }, + "kind": "assign", + "at": 6857, + "from_row": 244, + "to_row": 244 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 42, + "statements": [ + { + "to_row": 246, + "from_column": 8, + "to_column": 37, + "kind": "call", + "at": 6921, + "from_row": 246, + "expression": { + "list": [ + { + "to_column": 36, + "from_column": 30, + "right": "right", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 6939, + "from_row": 246, + "to_row": 246 + }, + "kind": ".", + "at": 6943, + "from_row": 246, + "to_row": 246 + } + ], + "from_column": 25, + "to_row": 246, + "to_column": 37, + "kind": "(", + "at": 6938, + "from_row": 246, + "expression": { + "to_column": 25, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 6921, + "from_row": 246, + "to_row": 246 + } + } + } + ], + "kind": "block", + "at": 6911, + "from_row": 245, + "to_row": 247 + } + ], + "from_column": 6, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 37, + "statements": [ + { + "to_row": 248, + "from_column": 8, + "to_column": 13, + "kind": "call", + "at": 6998, + "from_row": 248, + "expression": { + "to_column": 13, + "from_column": 10, + "right": { + "to_row": 248, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 7002, + "from_row": 248, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 18, + "name": "j", + "kind": "name", + "at": 6998, + "from_row": 248, + "to_row": 248 + }, + "kind": "assign", + "at": 7000, + "from_row": 248, + "to_row": 248 + } + }, + { + "to_row": 252, + "from_column": 8, + "to_column": 9, + "statements": [ + { + "to_column": 9, + "from_column": 38, + "statements": [ + { + "to_row": 250, + "from_column": 10, + "to_column": 47, + "kind": "call", + "at": 7054, + "from_row": 250, + "expression": { + "list": [ + { + "to_column": 46, + "from_column": 40, + "right": "right", + "left": { + "to_column": 40, + "from_column": 37, + "right": { + "to_column": 39, + "from_column": 38, + "level": 0, + "function_nr": 18, + "name": "j", + "kind": "name", + "at": 7082, + "from_row": 250, + "to_row": 250 + }, + "left": { + "to_column": 37, + "from_column": 32, + "right": "list", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7072, + "from_row": 250, + "to_row": 250 + }, + "kind": ".", + "at": 7076, + "from_row": 250, + "to_row": 250 + }, + "kind": "[", + "at": 7081, + "from_row": 250, + "to_row": 250 + }, + "kind": ".", + "at": 7084, + "from_row": 250, + "to_row": 250 + } + ], + "from_column": 27, + "to_row": 250, + "to_column": 47, + "kind": "(", + "at": 7071, + "from_row": 250, + "expression": { + "to_column": 27, + "from_column": 10, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 7054, + "from_row": 250, + "to_row": 250 + } + } + }, + { + "to_row": 251, + "from_column": 10, + "to_column": 19, + "kind": "call", + "at": 7102, + "from_row": 251, + "expression": { + "to_column": 19, + "from_column": 12, + "right": { + "to_column": 19, + "from_column": 16, + "right": { + "to_row": 251, + "from_column": 18, + "number": 1, + "to_column": 19, + "kind": "number", + "at": 7110, + "from_row": 251, + "value": "1" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 18, + "name": "j", + "kind": "name", + "at": 7106, + "from_row": 251, + "to_row": 251 + }, + "kind": "+", + "at": 7108, + "from_row": 251, + "to_row": 251 + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 18, + "name": "j", + "kind": "name", + "at": 7102, + "from_row": 251, + "to_row": 251 + }, + "kind": "assign", + "at": 7104, + "from_row": 251, + "to_row": 251 + } + } + ], + "kind": "block", + "at": 7042, + "from_row": 249, + "to_row": 252 + } + ], + "kind": "while", + "at": 7012, + "from_row": 249, + "expression": { + "to_column": 36, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 35, + "from_column": 30, + "right": "list", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7030, + "from_row": 249, + "to_row": 249 + }, + "kind": ".", + "at": 7034, + "from_row": 249, + "to_row": 249 + } + ], + "from_column": 25, + "to_row": 249, + "to_column": 36, + "kind": "(", + "at": 7029, + "from_row": 249, + "expression": { + "to_column": 25, + "from_column": 19, + "level": -1, + "name": "length", + "kind": "name", + "at": 7023, + "from_row": 249, + "to_row": 249 + } + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 18, + "name": "j", + "kind": "name", + "at": 7019, + "from_row": 249, + "to_row": 249 + }, + "kind": "<", + "at": 7021, + "from_row": 249, + "to_row": 249 + } + } + ], + "kind": "block", + "at": 6988, + "from_row": 247, + "to_row": 253 + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 33, + "statements": [ + { + "to_row": 254, + "from_column": 8, + "to_column": 42, + "kind": "call", + "at": 7165, + "from_row": 254, + "expression": { + "list": [ + { + "to_column": 41, + "from_column": 30, + "right": "expression", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7183, + "from_row": 254, + "to_row": 254 + }, + "kind": ".", + "at": 7187, + "from_row": 254, + "to_row": 254 + } + ], + "from_column": 25, + "to_row": 254, + "to_column": 42, + "kind": "(", + "at": 7182, + "from_row": 254, + "expression": { + "to_column": 25, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 7165, + "from_row": 254, + "to_row": 254 + } + } + } + ], + "kind": "block", + "at": 7155, + "from_row": 253, + "to_row": 255 + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 31, + "statements": [ + { + "to_row": 256, + "from_column": 8, + "to_column": 42, + "kind": "call", + "at": 7241, + "from_row": 256, + "expression": { + "list": [ + { + "to_column": 41, + "from_column": 30, + "right": "expression", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7259, + "from_row": 256, + "to_row": 256 + }, + "kind": ".", + "at": 7263, + "from_row": 256, + "to_row": 256 + } + ], + "from_column": 25, + "to_row": 256, + "to_column": 42, + "kind": "(", + "at": 7258, + "from_row": 256, + "expression": { + "to_column": 25, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 7241, + "from_row": 256, + "to_row": 256 + } + } + }, + { + "to_row": 257, + "from_column": 8, + "to_column": 45, + "kind": "call", + "at": 7284, + "from_row": 257, + "expression": { + "list": [ + { + "to_column": 37, + "from_column": 32, + "right": "then", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7304, + "from_row": 257, + "to_row": 257 + }, + "kind": ".", + "at": 7308, + "from_row": 257, + "to_row": 257 + }, + { + "to_column": 44, + "from_column": 39, + "level": 0, + "function_nr": 18, + "name": "fn_nr", + "kind": "name", + "at": 7315, + "from_row": 257, + "to_row": 257 + } + ], + "from_column": 27, + "to_row": 257, + "to_column": 45, + "kind": "(", + "at": 7303, + "from_row": 257, + "expression": { + "to_column": 27, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmt_exprs", + "kind": "name", + "at": 7284, + "from_row": 257, + "to_row": 257 + } + } + }, + { + "to_row": 258, + "from_column": 8, + "to_column": 45, + "kind": "call", + "at": 7330, + "from_row": 258, + "expression": { + "list": [ + { + "to_column": 37, + "from_column": 32, + "right": "list", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7350, + "from_row": 258, + "to_row": 258 + }, + "kind": ".", + "at": 7354, + "from_row": 258, + "to_row": 258 + }, + { + "to_column": 44, + "from_column": 39, + "level": 0, + "function_nr": 18, + "name": "fn_nr", + "kind": "name", + "at": 7361, + "from_row": 258, + "to_row": 258 + } + ], + "from_column": 27, + "to_row": 258, + "to_column": 45, + "kind": "(", + "at": 7349, + "from_row": 258, + "expression": { + "to_column": 27, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmt_exprs", + "kind": "name", + "at": 7330, + "from_row": 258, + "to_row": 258 + } + } + }, + { + "then": [ + { + "to_row": 259, + "from_column": 31, + "to_column": 68, + "kind": "call", + "at": 7399, + "from_row": 259, + "expression": { + "list": [ + { + "to_column": 60, + "from_column": 55, + "right": "else", + "left": { + "to_column": 55, + "from_column": 51, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7419, + "from_row": 259, + "to_row": 259 + }, + "kind": ".", + "at": 7423, + "from_row": 259, + "to_row": 259 + }, + { + "to_column": 67, + "from_column": 62, + "level": 0, + "function_nr": 18, + "name": "fn_nr", + "kind": "name", + "at": 7430, + "from_row": 259, + "to_row": 259 + } + ], + "from_column": 50, + "to_row": 259, + "to_column": 68, + "kind": "(", + "at": 7418, + "from_row": 259, + "expression": { + "to_column": 50, + "from_column": 31, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmt_exprs", + "kind": "name", + "at": 7399, + "from_row": 259, + "to_row": 259 + } + } + } + ], + "from_column": 8, + "list": [], + "to_row": 259, + "to_column": 68, + "kind": "if", + "at": 7376, + "from_row": 259, + "expression": { + "to_column": 29, + "from_column": 22, + "right": { + "to_column": 29, + "from_column": 25, + "kind": "null", + "at": 7393, + "from_row": 259, + "to_row": 259 + }, + "left": { + "to_column": 21, + "from_column": 16, + "right": "else", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7380, + "from_row": 259, + "to_row": 259 + }, + "kind": ".", + "at": 7384, + "from_row": 259, + "to_row": 259 + }, + "kind": "!=", + "at": 7390, + "from_row": 259, + "to_row": 259 + } + } + ], + "kind": "block", + "at": 7231, + "from_row": 255, + "to_row": 260 + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 50, + "statements": [ + { + "to_row": 261, + "from_column": 8, + "to_column": 42, + "kind": "call", + "at": 7497, + "from_row": 261, + "expression": { + "list": [ + { + "to_column": 41, + "from_column": 30, + "right": "expression", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7515, + "from_row": 261, + "to_row": 261 + }, + "kind": ".", + "at": 7519, + "from_row": 261, + "to_row": 261 + } + ], + "from_column": 25, + "to_row": 261, + "to_column": 42, + "kind": "(", + "at": 7514, + "from_row": 261, + "expression": { + "to_column": 25, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 7497, + "from_row": 261, + "to_row": 261 + } + } + }, + { + "to_row": 262, + "from_column": 8, + "to_column": 51, + "kind": "call", + "at": 7540, + "from_row": 262, + "expression": { + "list": [ + { + "to_column": 43, + "from_column": 32, + "right": "statements", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7560, + "from_row": 262, + "to_row": 262 + }, + "kind": ".", + "at": 7564, + "from_row": 262, + "to_row": 262 + }, + { + "to_column": 50, + "from_column": 45, + "level": 0, + "function_nr": 18, + "name": "fn_nr", + "kind": "name", + "at": 7577, + "from_row": 262, + "to_row": 262 + } + ], + "from_column": 27, + "to_row": 262, + "to_column": 51, + "kind": "(", + "at": 7559, + "from_row": 262, + "expression": { + "to_column": 27, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmt_exprs", + "kind": "name", + "at": 7540, + "from_row": 262, + "to_row": 262 + } + } + } + ], + "kind": "block", + "at": 7487, + "from_row": 260, + "to_row": 263 + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 32, + "statements": [ + { + "then": [ + { + "to_column": 9, + "from_column": 31, + "statements": [ + { + "then": [ + { + "to_column": 11, + "from_column": 66, + "statements": [ + { + "to_row": 266, + "from_column": 12, + "to_column": 46, + "kind": "call", + "at": 7731, + "from_row": 266, + "expression": { + "list": [ + { + "to_column": 45, + "from_column": 39, + "right": "right", + "left": { + "to_column": 39, + "from_column": 34, + "right": "init", + "left": { + "to_column": 34, + "from_column": 30, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7749, + "from_row": 266, + "to_row": 266 + }, + "kind": ".", + "at": 7753, + "from_row": 266, + "to_row": 266 + }, + "kind": ".", + "at": 7758, + "from_row": 266, + "to_row": 266 + } + ], + "from_column": 29, + "to_row": 266, + "to_column": 46, + "kind": "(", + "at": 7748, + "from_row": 266, + "expression": { + "to_column": 29, + "from_column": 12, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 7731, + "from_row": 266, + "to_row": 266 + } + } + } + ], + "kind": "block", + "at": 7717, + "from_row": 265, + "to_row": 267 + } + ], + "from_column": 10, + "list": [], + "else": [ + { + "to_column": 11, + "from_column": 17, + "statements": [ + { + "to_row": 268, + "from_column": 12, + "to_column": 40, + "kind": "call", + "at": 7797, + "from_row": 268, + "expression": { + "list": [ + { + "to_column": 39, + "from_column": 34, + "right": "init", + "left": { + "to_column": 34, + "from_column": 30, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7815, + "from_row": 268, + "to_row": 268 + }, + "kind": ".", + "at": 7819, + "from_row": 268, + "to_row": 268 + } + ], + "from_column": 29, + "to_row": 268, + "to_column": 40, + "kind": "(", + "at": 7814, + "from_row": 268, + "expression": { + "to_column": 29, + "from_column": 12, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 7797, + "from_row": 268, + "to_row": 268 + } + } + } + ], + "kind": "block", + "at": 7783, + "from_row": 267, + "to_row": 269 + } + ], + "to_row": 269, + "to_column": 11, + "kind": "if", + "at": 7661, + "from_row": 265, + "expression": { + "to_column": 64, + "from_column": 38, + "right": { + "to_column": 64, + "from_column": 56, + "right": { + "to_row": 265, + "from_column": 59, + "to_column": 64, + "kind": "text", + "at": 7710, + "from_row": 265, + "value": "def" + }, + "left": { + "to_column": 55, + "from_column": 50, + "right": "kind", + "left": { + "to_column": 50, + "from_column": 45, + "right": "init", + "left": { + "to_column": 45, + "from_column": 41, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7692, + "from_row": 265, + "to_row": 265 + }, + "kind": ".", + "at": 7696, + "from_row": 265, + "to_row": 265 + }, + "kind": ".", + "at": 7701, + "from_row": 265, + "to_row": 265 + }, + "kind": "==", + "at": 7707, + "from_row": 265, + "to_row": 265 + }, + "left": { + "to_column": 37, + "from_column": 29, + "right": { + "to_row": 265, + "from_column": 32, + "to_column": 37, + "kind": "text", + "at": 7683, + "from_row": 265, + "value": "var" + }, + "left": { + "to_column": 28, + "from_column": 23, + "right": "kind", + "left": { + "to_column": 23, + "from_column": 18, + "right": "init", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7665, + "from_row": 265, + "to_row": 265 + }, + "kind": ".", + "at": 7669, + "from_row": 265, + "to_row": 265 + }, + "kind": ".", + "at": 7674, + "from_row": 265, + "to_row": 265 + }, + "kind": "==", + "at": 7680, + "from_row": 265, + "to_row": 265 + }, + "kind": "||", + "at": 7689, + "from_row": 265, + "to_row": 265 + } + } + ], + "kind": "block", + "at": 7649, + "from_row": 264, + "to_row": 270 + } + ], + "from_column": 8, + "list": [], + "to_row": 270, + "to_column": 9, + "kind": "if", + "at": 7626, + "from_row": 264, + "expression": { + "to_column": 29, + "from_column": 22, + "right": { + "to_column": 29, + "from_column": 25, + "kind": "null", + "at": 7643, + "from_row": 264, + "to_row": 264 + }, + "left": { + "to_column": 21, + "from_column": 16, + "right": "init", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7630, + "from_row": 264, + "to_row": 264 + }, + "kind": ".", + "at": 7634, + "from_row": 264, + "to_row": 264 + }, + "kind": "!=", + "at": 7640, + "from_row": 264, + "to_row": 264 + } + }, + { + "to_row": 271, + "from_column": 8, + "to_column": 36, + "kind": "call", + "at": 7856, + "from_row": 271, + "expression": { + "list": [ + { + "to_column": 35, + "from_column": 30, + "right": "test", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7874, + "from_row": 271, + "to_row": 271 + }, + "kind": ".", + "at": 7878, + "from_row": 271, + "to_row": 271 + } + ], + "from_column": 25, + "to_row": 271, + "to_column": 36, + "kind": "(", + "at": 7873, + "from_row": 271, + "expression": { + "to_column": 25, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 7856, + "from_row": 271, + "to_row": 271 + } + } + }, + { + "to_row": 272, + "from_column": 8, + "to_column": 38, + "kind": "call", + "at": 7893, + "from_row": 272, + "expression": { + "list": [ + { + "to_column": 37, + "from_column": 30, + "right": "update", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7911, + "from_row": 272, + "to_row": 272 + }, + "kind": ".", + "at": 7915, + "from_row": 272, + "to_row": 272 + } + ], + "from_column": 25, + "to_row": 272, + "to_column": 38, + "kind": "(", + "at": 7910, + "from_row": 272, + "expression": { + "to_column": 25, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 7893, + "from_row": 272, + "to_row": 272 + } + } + }, + { + "to_row": 273, + "from_column": 8, + "to_column": 51, + "kind": "call", + "at": 7932, + "from_row": 273, + "expression": { + "list": [ + { + "to_column": 43, + "from_column": 32, + "right": "statements", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 7952, + "from_row": 273, + "to_row": 273 + }, + "kind": ".", + "at": 7956, + "from_row": 273, + "to_row": 273 + }, + { + "to_column": 50, + "from_column": 45, + "level": 0, + "function_nr": 18, + "name": "fn_nr", + "kind": "name", + "at": 7969, + "from_row": 273, + "to_row": 273 + } + ], + "from_column": 27, + "to_row": 273, + "to_column": 51, + "kind": "(", + "at": 7951, + "from_row": 273, + "expression": { + "to_column": 27, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmt_exprs", + "kind": "name", + "at": 7932, + "from_row": 273, + "to_row": 273 + } + } + } + ], + "kind": "block", + "at": 7616, + "from_row": 263, + "to_row": 274 + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 51, + "statements": [ + { + "to_row": 275, + "from_column": 8, + "to_column": 42, + "kind": "call", + "at": 8037, + "from_row": 275, + "expression": { + "list": [ + { + "to_column": 41, + "from_column": 30, + "right": "expression", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 8055, + "from_row": 275, + "to_row": 275 + }, + "kind": ".", + "at": 8059, + "from_row": 275, + "to_row": 275 + } + ], + "from_column": 25, + "to_row": 275, + "to_column": 42, + "kind": "(", + "at": 8054, + "from_row": 275, + "expression": { + "to_column": 25, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_expr_fns", + "kind": "name", + "at": 8037, + "from_row": 275, + "to_row": 275 + } + } + } + ], + "kind": "block", + "at": 8027, + "from_row": 274, + "to_row": 276 + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 34, + "statements": [ + { + "to_row": 277, + "from_column": 8, + "to_column": 51, + "kind": "call", + "at": 8116, + "from_row": 277, + "expression": { + "list": [ + { + "to_column": 43, + "from_column": 32, + "right": "statements", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 8136, + "from_row": 277, + "to_row": 277 + }, + "kind": ".", + "at": 8140, + "from_row": 277, + "to_row": 277 + }, + { + "to_column": 50, + "from_column": 45, + "level": 0, + "function_nr": 18, + "name": "fn_nr", + "kind": "name", + "at": 8153, + "from_row": 277, + "to_row": 277 + } + ], + "from_column": 27, + "to_row": 277, + "to_column": 51, + "kind": "(", + "at": 8135, + "from_row": 277, + "expression": { + "to_column": 27, + "from_column": 8, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmt_exprs", + "kind": "name", + "at": 8116, + "from_row": 277, + "to_row": 277 + } + } + } + ], + "kind": "block", + "at": 8106, + "from_row": 276, + "to_row": 278 + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 34, + "statements": [ + { + "then": [ + { + "to_column": 9, + "from_column": 36, + "statements": [ + { + "to_row": 280, + "from_column": 10, + "to_column": 54, + "kind": "call", + "at": 8244, + "from_row": 280, + "expression": { + "list": [ + { + "list": [ + { + "to_column": 45, + "from_column": 35, + "right": "statement", + "left": { + "to_column": 35, + "from_column": 31, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 8265, + "from_row": 280, + "to_row": 280 + }, + "kind": ".", + "at": 8269, + "from_row": 280, + "to_row": 280 + } + ], + "from_column": 30, + "to_column": 45, + "kind": "array", + "at": 8264, + "from_row": 280, + "to_row": 280 + }, + { + "to_column": 53, + "from_column": 48, + "level": 0, + "function_nr": 18, + "name": "fn_nr", + "kind": "name", + "at": 8282, + "from_row": 280, + "to_row": 280 + } + ], + "from_column": 29, + "to_row": 280, + "to_column": 54, + "kind": "(", + "at": 8263, + "from_row": 280, + "expression": { + "to_column": 29, + "from_column": 10, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmt_exprs", + "kind": "name", + "at": 8244, + "from_row": 280, + "to_row": 280 + } + } + } + ], + "kind": "block", + "at": 8232, + "from_row": 279, + "to_row": 281 + } + ], + "from_column": 8, + "list": [], + "to_row": 281, + "to_column": 9, + "kind": "if", + "at": 8204, + "from_row": 279, + "expression": { + "to_column": 34, + "from_column": 27, + "right": { + "to_column": 34, + "from_column": 30, + "kind": "null", + "at": 8226, + "from_row": 279, + "to_row": 279 + }, + "left": { + "to_column": 26, + "from_column": 16, + "right": "statement", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 18, + "name": "stmt", + "kind": "name", + "at": 8208, + "from_row": 279, + "to_row": 279 + }, + "kind": ".", + "at": 8212, + "from_row": 279, + "to_row": 279 + }, + "kind": "!=", + "at": 8223, + "from_row": 279, + "to_row": 279 + } + } + ], + "kind": "block", + "at": 8194, + "from_row": 278, + "to_row": 282 + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_column": 7, + "from_column": 37, + "statements": [ + { + "to_row": 284, + "from_column": 8, + "to_column": 12, + "kind": "call", + "at": 8391, + "from_row": 284, + "expression": { + "to_column": 12, + "from_column": 8, + "kind": "null", + "at": 8391, + "from_row": 284, + "to_row": 284 + } + } + ], + "kind": "block", + "at": 8336, + "from_row": 282, + "to_row": 285 + } + ], + "from_column": 13, + "list": [], + "to_row": 285, + "to_column": 7, + "kind": "if", + "at": 8312, + "from_row": 282, + "expression": { + "to_column": 35, + "from_column": 22, + "right": { + "to_row": 282, + "from_column": 25, + "to_column": 35, + "kind": "text", + "at": 8324, + "from_row": 282, + "value": "function" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 8316, + "from_row": 282, + "to_row": 282 + }, + "kind": "==", + "at": 8321, + "from_row": 282, + "to_row": 282 + } + } + ], + "to_row": 285, + "to_column": 7, + "kind": "if", + "at": 8173, + "from_row": 278, + "expression": { + "to_column": 32, + "from_column": 22, + "right": { + "to_row": 278, + "from_column": 25, + "to_column": 32, + "kind": "text", + "at": 8185, + "from_row": 278, + "value": "label" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 8177, + "from_row": 278, + "to_row": 278 + }, + "kind": "==", + "at": 8182, + "from_row": 278, + "to_row": 278 + } + } + ], + "to_row": 285, + "to_column": 7, + "kind": "if", + "at": 8085, + "from_row": 276, + "expression": { + "to_column": 32, + "from_column": 22, + "right": { + "to_row": 276, + "from_column": 25, + "to_column": 32, + "kind": "text", + "at": 8097, + "from_row": 276, + "value": "block" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 8089, + "from_row": 276, + "to_row": 276 + }, + "kind": "==", + "at": 8094, + "from_row": 276, + "to_row": 276 + } + } + ], + "to_row": 285, + "to_column": 7, + "kind": "if", + "at": 7989, + "from_row": 274, + "expression": { + "to_column": 49, + "from_column": 34, + "right": { + "to_column": 49, + "from_column": 42, + "right": { + "to_row": 274, + "from_column": 45, + "to_column": 49, + "kind": "text", + "at": 8021, + "from_row": 274, + "value": "go" + }, + "left": { + "to_column": 41, + "from_column": 37, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 8013, + "from_row": 274, + "to_row": 274 + }, + "kind": "==", + "at": 8018, + "from_row": 274, + "to_row": 274 + }, + "left": { + "to_column": 33, + "from_column": 22, + "right": { + "to_row": 274, + "from_column": 25, + "to_column": 33, + "kind": "text", + "at": 8001, + "from_row": 274, + "value": "return" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 7993, + "from_row": 274, + "to_row": 274 + }, + "kind": "==", + "at": 7998, + "from_row": 274, + "to_row": 274 + }, + "kind": "||", + "at": 8010, + "from_row": 274, + "to_row": 274 + } + } + ], + "to_row": 285, + "to_column": 7, + "kind": "if", + "at": 7597, + "from_row": 263, + "expression": { + "to_column": 30, + "from_column": 22, + "right": { + "to_row": 263, + "from_column": 25, + "to_column": 30, + "kind": "text", + "at": 7609, + "from_row": 263, + "value": "for" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 7601, + "from_row": 263, + "to_row": 263 + }, + "kind": "==", + "at": 7606, + "from_row": 263, + "to_row": 263 + } + } + ], + "to_row": 285, + "to_column": 7, + "kind": "if", + "at": 7450, + "from_row": 260, + "expression": { + "to_column": 48, + "from_column": 33, + "right": { + "to_column": 48, + "from_column": 41, + "right": { + "to_row": 260, + "from_column": 44, + "to_column": 48, + "kind": "text", + "at": 7481, + "from_row": 260, + "value": "do" + }, + "left": { + "to_column": 40, + "from_column": 36, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 7473, + "from_row": 260, + "to_row": 260 + }, + "kind": "==", + "at": 7478, + "from_row": 260, + "to_row": 260 + }, + "left": { + "to_column": 32, + "from_column": 22, + "right": { + "to_row": 260, + "from_column": 25, + "to_column": 32, + "kind": "text", + "at": 7462, + "from_row": 260, + "value": "while" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 7454, + "from_row": 260, + "to_row": 260 + }, + "kind": "==", + "at": 7459, + "from_row": 260, + "to_row": 260 + }, + "kind": "||", + "at": 7470, + "from_row": 260, + "to_row": 260 + } + } + ], + "to_row": 285, + "to_column": 7, + "kind": "if", + "at": 7213, + "from_row": 255, + "expression": { + "to_column": 29, + "from_column": 22, + "right": { + "to_row": 255, + "from_column": 25, + "to_column": 29, + "kind": "text", + "at": 7225, + "from_row": 255, + "value": "if" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 7217, + "from_row": 255, + "to_row": 255 + }, + "kind": "==", + "at": 7222, + "from_row": 255, + "to_row": 255 + } + } + ], + "to_row": 285, + "to_column": 7, + "kind": "if", + "at": 7135, + "from_row": 253, + "expression": { + "to_column": 31, + "from_column": 22, + "right": { + "to_row": 253, + "from_column": 25, + "to_column": 31, + "kind": "text", + "at": 7147, + "from_row": 253, + "value": "call" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 7139, + "from_row": 253, + "to_row": 253 + }, + "kind": "==", + "at": 7144, + "from_row": 253, + "to_row": 253 + } + } + ], + "to_row": 285, + "to_column": 7, + "kind": "if", + "at": 6964, + "from_row": 247, + "expression": { + "to_column": 35, + "from_column": 22, + "right": { + "to_row": 247, + "from_column": 25, + "to_column": 35, + "kind": "text", + "at": 6976, + "from_row": 247, + "value": "var_list" + }, + "left": { + "to_column": 21, + "from_column": 17, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 6968, + "from_row": 247, + "to_row": 247 + }, + "kind": "==", + "at": 6973, + "from_row": 247, + "to_row": 247 + } + } + ], + "to_row": 285, + "to_column": 7, + "kind": "if", + "at": 6875, + "from_row": 245, + "expression": { + "to_column": 40, + "from_column": 24, + "right": { + "to_column": 40, + "from_column": 32, + "right": { + "to_row": 245, + "from_column": 35, + "to_column": 40, + "kind": "text", + "at": 6904, + "from_row": 245, + "value": "def" + }, + "left": { + "to_column": 31, + "from_column": 27, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 6896, + "from_row": 245, + "to_row": 245 + }, + "kind": "==", + "at": 6901, + "from_row": 245, + "to_row": 245 + }, + "left": { + "to_column": 23, + "from_column": 15, + "right": { + "to_row": 245, + "from_column": 18, + "to_column": 23, + "kind": "text", + "at": 6887, + "from_row": 245, + "value": "var" + }, + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 18, + "name": "kind", + "kind": "name", + "at": 6879, + "from_row": 245, + "to_row": 245 + }, + "kind": "==", + "at": 6884, + "from_row": 245, + "to_row": 245 + }, + "kind": "||", + "at": 6893, + "from_row": 245, + "to_row": 245 + } + }, + { + "to_row": 286, + "from_column": 6, + "to_column": 15, + "kind": "call", + "at": 8410, + "from_row": 286, + "expression": { + "to_column": 15, + "from_column": 8, + "right": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 286, + "from_column": 14, + "number": 1, + "to_column": 15, + "kind": "number", + "at": 8418, + "from_row": 286, + "value": "1" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 18, + "name": "i", + "kind": "name", + "at": 8414, + "from_row": 286, + "to_row": 286 + }, + "kind": "+", + "at": 8416, + "from_row": 286, + "to_row": 286 + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 18, + "name": "i", + "kind": "name", + "at": 8410, + "from_row": 286, + "to_row": 286 + }, + "kind": "assign", + "at": 8412, + "from_row": 286, + "to_row": 286 + } + } + ], + "kind": "block", + "at": 6822, + "from_row": 242, + "to_row": 287 + } + ], + "kind": "while", + "at": 6796, + "from_row": 242, + "expression": { + "to_column": 28, + "from_column": 13, + "right": { + "list": [ + { + "to_column": 27, + "from_column": 22, + "level": 0, + "function_nr": 18, + "name": "stmts", + "kind": "name", + "at": 6814, + "from_row": 242, + "to_row": 242 + } + ], + "from_column": 21, + "to_row": 242, + "to_column": 28, + "kind": "(", + "at": 6813, + "from_row": 242, + "expression": { + "to_column": 21, + "from_column": 15, + "level": -1, + "name": "length", + "kind": "name", + "at": 6807, + "from_row": 242, + "to_row": 242 + } + }, + "left": { + "to_column": 12, + "from_column": 11, + "level": 0, + "function_nr": 18, + "name": "i", + "kind": "name", + "at": 6803, + "from_row": 242, + "to_row": 242 + }, + "kind": "<", + "at": 6805, + "from_row": 242, + "to_row": 242 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 6699, + "to_row": 288, + "outer": 30, + "list": [ + { + "to_column": 38, + "from_column": 33, + "name": "stmts", + "kind": "name", + "at": 6708, + "from_row": 237, + "to_row": 237 + }, + { + "to_column": 45, + "from_column": 40, + "name": "fn_nr", + "kind": "name", + "at": 6715, + "from_row": 237, + "to_row": 237 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 18, + "from_row": 237 + }, + "left": { + "to_column": 21, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "pre_scan_stmt_exprs", + "kind": "name", + "at": 6677, + "from_row": 237, + "to_row": 237 + }, + "kind": "assign", + "at": 6697, + "from_row": 237, + "to_row": 288 + } + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 17, + "nr_slots": 0, + "statements": [ + { + "to_row": 291, + "from_column": 4, + "to_column": 37, + "kind": "call", + "at": 8465, + "from_row": 291, + "expression": { + "list": [ + { + "to_column": 33, + "from_column": 22, + "right": "statements", + "left": { + "to_column": 22, + "from_column": 19, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 8480, + "from_row": 291, + "to_row": 291 + }, + "kind": ".", + "at": 8483, + "from_row": 291, + "to_row": 291 + }, + { + "to_row": 291, + "from_column": 35, + "number": 0, + "to_column": 36, + "kind": "number", + "at": 8496, + "from_row": 291, + "value": "0" + } + ], + "from_column": 18, + "to_row": 291, + "to_column": 37, + "kind": "(", + "at": 8479, + "from_row": 291, + "expression": { + "to_column": 18, + "from_column": 4, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmts", + "kind": "name", + "at": 8465, + "from_row": 291, + "to_row": 291 + } + } + }, + { + "to_row": 292, + "from_column": 4, + "to_column": 36, + "kind": "call", + "at": 8503, + "from_row": 292, + "expression": { + "list": [ + { + "to_column": 32, + "from_column": 22, + "right": "functions", + "left": { + "to_column": 22, + "from_column": 19, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 8518, + "from_row": 292, + "to_row": 292 + }, + "kind": ".", + "at": 8521, + "from_row": 292, + "to_row": 292 + }, + { + "to_row": 292, + "from_column": 34, + "number": 0, + "to_column": 35, + "kind": "number", + "at": 8533, + "from_row": 292, + "value": "0" + } + ], + "from_column": 18, + "to_row": 292, + "to_column": 36, + "kind": "(", + "at": 8517, + "from_row": 292, + "expression": { + "to_column": 18, + "from_column": 4, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmts", + "kind": "name", + "at": 8503, + "from_row": 292, + "to_row": 292 + } + } + }, + { + "to_row": 293, + "from_column": 4, + "to_column": 42, + "kind": "call", + "at": 8540, + "from_row": 293, + "expression": { + "list": [ + { + "to_column": 38, + "from_column": 27, + "right": "statements", + "left": { + "to_column": 27, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 8560, + "from_row": 293, + "to_row": 293 + }, + "kind": ".", + "at": 8563, + "from_row": 293, + "to_row": 293 + }, + { + "to_row": 293, + "from_column": 40, + "number": 0, + "to_column": 41, + "kind": "number", + "at": 8576, + "from_row": 293, + "value": "0" + } + ], + "from_column": 23, + "to_row": 293, + "to_column": 42, + "kind": "(", + "at": 8559, + "from_row": 293, + "expression": { + "to_column": 23, + "from_column": 4, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmt_exprs", + "kind": "name", + "at": 8540, + "from_row": 293, + "to_row": 293 + } + } + }, + { + "to_row": 294, + "from_column": 4, + "to_column": 41, + "kind": "call", + "at": 8583, + "from_row": 294, + "expression": { + "list": [ + { + "to_column": 37, + "from_column": 27, + "right": "functions", + "left": { + "to_column": 27, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 8603, + "from_row": 294, + "to_row": 294 + }, + "kind": ".", + "at": 8606, + "from_row": 294, + "to_row": 294 + }, + { + "to_row": 294, + "from_column": 39, + "number": 0, + "to_column": 40, + "kind": "number", + "at": 8618, + "from_row": 294, + "value": "0" + } + ], + "from_column": 23, + "to_row": 294, + "to_column": 41, + "kind": "(", + "at": 8602, + "from_row": 294, + "expression": { + "to_column": 23, + "from_column": 4, + "level": 1, + "function_nr": 30, + "name": "pre_scan_stmt_exprs", + "kind": "name", + "at": 8583, + "from_row": 294, + "to_row": 294 + } + } + } + ], + "to_column": 3, + "kind": "function", + "at": 8448, + "to_row": 295, + "outer": 30, + "list": [], + "arity": 0, + "nr_close_slots": 0, + "function_nr": 19, + "from_row": 290 + }, + "left": { + "to_column": 14, + "from_column": 6, + "name": "pre_scan", + "kind": "name", + "at": 8437, + "from_row": 290, + "to_row": 290 + }, + "kind": "var", + "at": 8433, + "from_row": 290, + "to_row": 295 + }, + { + "to_column": 22, + "from_column": 2, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 8822, + "from_row": 301, + "to_row": 301 + }, + "left": { + "to_column": 15, + "from_column": 6, + "name": "fold_expr", + "kind": "name", + "at": 8810, + "from_row": 301, + "to_row": 301 + }, + "kind": "var", + "at": 8806, + "from_row": 301, + "to_row": 301 + }, + { + "to_column": 22, + "from_column": 2, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 8845, + "from_row": 302, + "to_row": 302 + }, + "left": { + "to_column": 15, + "from_column": 6, + "name": "fold_stmt", + "kind": "name", + "at": 8833, + "from_row": 302, + "to_row": 302 + }, + "kind": "var", + "at": 8829, + "from_row": 302, + "to_row": 302 + }, + { + "to_column": 23, + "from_column": 2, + "right": { + "to_column": 23, + "from_column": 19, + "kind": "null", + "at": 8869, + "from_row": 303, + "to_row": 303 + }, + "left": { + "to_column": 16, + "from_column": 6, + "name": "fold_stmts", + "kind": "name", + "at": 8856, + "from_row": 303, + "to_row": 303 + }, + "kind": "var", + "at": 8852, + "from_row": 303, + "to_row": 303 + }, + { + "to_row": 512, + "from_column": 2, + "to_column": 3, + "kind": "call", + "at": 8877, + "from_row": 305, + "expression": { + "to_column": 3, + "from_column": 12, + "right": { + "from_column": 14, + "nr_slots": 16, + "statements": [ + { + "then": [ + { + "to_row": 306, + "from_column": 22, + "to_column": 33, + "kind": "return", + "at": 8935, + "from_row": 306, + "expression": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 8942, + "from_row": 306, + "to_row": 306 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 306, + "to_column": 33, + "kind": "if", + "at": 8917, + "from_row": 306, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 8929, + "from_row": 306, + "to_row": 306 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 8921, + "from_row": 306, + "to_row": 306 + }, + "kind": "==", + "at": 8926, + "from_row": 306, + "to_row": 306 + } + }, + { + "to_column": 21, + "from_column": 4, + "right": { + "to_column": 21, + "from_column": 16, + "right": "kind", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 8959, + "from_row": 307, + "to_row": 307 + }, + "kind": ".", + "at": 8963, + "from_row": 307, + "to_row": 307 + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "k", + "kind": "name", + "at": 8955, + "from_row": 307, + "to_row": 307 + }, + "kind": "var", + "at": 8951, + "from_row": 307, + "to_row": 307 + }, + { + "to_column": 19, + "from_column": 4, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 8984, + "from_row": 308, + "to_row": 308 + }, + "left": { + "to_column": 12, + "from_column": 8, + "name": "left", + "kind": "name", + "at": 8977, + "from_row": 308, + "to_row": 308 + }, + "kind": "var", + "at": 8973, + "from_row": 308, + "to_row": 308 + }, + { + "to_column": 20, + "from_column": 4, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 9005, + "from_row": 309, + "to_row": 309 + }, + "left": { + "to_column": 13, + "from_column": 8, + "name": "right", + "kind": "name", + "at": 8997, + "from_row": 309, + "to_row": 309 + }, + "kind": "var", + "at": 8993, + "from_row": 309, + "to_row": 309 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 9023, + "from_row": 310, + "to_row": 310 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "lv", + "kind": "name", + "at": 9018, + "from_row": 310, + "to_row": 310 + }, + "kind": "var", + "at": 9014, + "from_row": 310, + "to_row": 310 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 9041, + "from_row": 311, + "to_row": 311 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "rv", + "kind": "name", + "at": 9036, + "from_row": 311, + "to_row": 311 + }, + "kind": "var", + "at": 9032, + "from_row": 311, + "to_row": 311 + }, + { + "to_column": 21, + "from_column": 4, + "right": { + "to_column": 21, + "from_column": 17, + "kind": "null", + "at": 9063, + "from_row": 312, + "to_row": 312 + }, + "left": { + "to_column": 14, + "from_column": 8, + "name": "result", + "kind": "name", + "at": 9054, + "from_row": 312, + "to_row": 312 + }, + "kind": "var", + "at": 9050, + "from_row": 312, + "to_row": 312 + }, + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 313, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 9080, + "from_row": 313, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "i", + "kind": "name", + "at": 9076, + "from_row": 313, + "to_row": 313 + }, + "kind": "var", + "at": 9072, + "from_row": 313, + "to_row": 313 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 9095, + "from_row": 314, + "to_row": 314 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "sv", + "kind": "name", + "at": 9090, + "from_row": 314, + "to_row": 314 + }, + "kind": "var", + "at": 9086, + "from_row": 314, + "to_row": 314 + }, + { + "to_column": 18, + "from_column": 4, + "right": { + "to_column": 18, + "from_column": 14, + "kind": "null", + "at": 9114, + "from_row": 315, + "to_row": 315 + }, + "left": { + "to_column": 11, + "from_column": 8, + "name": "lit", + "kind": "name", + "at": 9108, + "from_row": 315, + "to_row": 315 + }, + "kind": "var", + "at": 9104, + "from_row": 315, + "to_row": 315 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 9154, + "from_row": 317, + "to_row": 317 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "ek", + "kind": "name", + "at": 9149, + "from_row": 317, + "to_row": 317 + }, + "kind": "var", + "at": 9145, + "from_row": 317, + "to_row": 317 + }, + { + "to_column": 21, + "from_column": 4, + "right": { + "to_column": 21, + "from_column": 17, + "kind": "null", + "at": 9176, + "from_row": 318, + "to_row": 318 + }, + "left": { + "to_column": 14, + "from_column": 8, + "name": "target", + "kind": "name", + "at": 9167, + "from_row": 318, + "to_row": 318 + }, + "kind": "var", + "at": 9163, + "from_row": 318, + "to_row": 318 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 9194, + "from_row": 319, + "to_row": 319 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "ar", + "kind": "name", + "at": 9189, + "from_row": 319, + "to_row": 319 + }, + "kind": "var", + "at": 9185, + "from_row": 319, + "to_row": 319 + }, + { + "to_column": 19, + "from_column": 4, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 9214, + "from_row": 320, + "to_row": 320 + }, + "left": { + "to_column": 12, + "from_column": 8, + "name": "akey", + "kind": "name", + "at": 9207, + "from_row": 320, + "to_row": 320 + }, + "kind": "var", + "at": 9203, + "from_row": 320, + "to_row": 320 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 9232, + "from_row": 321, + "to_row": 321 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "tv", + "kind": "name", + "at": 9227, + "from_row": 321, + "to_row": 321 + }, + "kind": "var", + "at": 9223, + "from_row": 321, + "to_row": 321 + }, + { + "then": [ + { + "to_column": 5, + "from_column": 31, + "statements": [ + { + "to_row": 329, + "from_column": 6, + "to_column": 45, + "kind": "call", + "at": 9607, + "from_row": 329, + "expression": { + "to_column": 45, + "from_column": 16, + "right": { + "list": [ + { + "to_column": 37, + "from_column": 32, + "right": "left", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 9629, + "from_row": 329, + "to_row": 329 + }, + "kind": ".", + "at": 9633, + "from_row": 329, + "to_row": 329 + }, + { + "to_column": 44, + "from_column": 39, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 9640, + "from_row": 329, + "to_row": 329 + } + ], + "from_column": 27, + "to_row": 329, + "to_column": 45, + "kind": "(", + "at": 9628, + "from_row": 329, + "expression": { + "to_column": 27, + "from_column": 18, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 9619, + "from_row": 329, + "to_row": 329 + } + }, + "left": { + "to_column": 15, + "from_column": 10, + "right": "left", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 9607, + "from_row": 329, + "to_row": 329 + }, + "kind": ".", + "at": 9611, + "from_row": 329, + "to_row": 329 + }, + "kind": "assign", + "at": 9617, + "from_row": 329, + "to_row": 329 + } + }, + { + "to_row": 330, + "from_column": 6, + "to_column": 47, + "kind": "call", + "at": 9653, + "from_row": 330, + "expression": { + "to_column": 47, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 39, + "from_column": 33, + "right": "right", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 9676, + "from_row": 330, + "to_row": 330 + }, + "kind": ".", + "at": 9680, + "from_row": 330, + "to_row": 330 + }, + { + "to_column": 46, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 9688, + "from_row": 330, + "to_row": 330 + } + ], + "from_column": 28, + "to_row": 330, + "to_column": 47, + "kind": "(", + "at": 9675, + "from_row": 330, + "expression": { + "to_column": 28, + "from_column": 19, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 9666, + "from_row": 330, + "to_row": 330 + } + }, + "left": { + "to_column": 16, + "from_column": 10, + "right": "right", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 9653, + "from_row": 330, + "to_row": 330 + }, + "kind": ".", + "at": 9657, + "from_row": 330, + "to_row": 330 + }, + "kind": "assign", + "at": 9664, + "from_row": 330, + "to_row": 330 + } + } + ], + "kind": "block", + "at": 9599, + "from_row": 328, + "to_row": 331 + } + ], + "from_column": 4, + "list": [ + { + "then": [ + { + "to_column": 5, + "from_column": 37, + "statements": [ + { + "to_row": 332, + "from_column": 6, + "to_column": 45, + "kind": "call", + "at": 9740, + "from_row": 332, + "expression": { + "to_column": 45, + "from_column": 16, + "right": { + "list": [ + { + "to_column": 37, + "from_column": 32, + "right": "left", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 9762, + "from_row": 332, + "to_row": 332 + }, + "kind": ".", + "at": 9766, + "from_row": 332, + "to_row": 332 + }, + { + "to_column": 44, + "from_column": 39, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 9773, + "from_row": 332, + "to_row": 332 + } + ], + "from_column": 27, + "to_row": 332, + "to_column": 45, + "kind": "(", + "at": 9761, + "from_row": 332, + "expression": { + "to_column": 27, + "from_column": 18, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 9752, + "from_row": 332, + "to_row": 332 + } + }, + "left": { + "to_column": 15, + "from_column": 10, + "right": "left", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 9740, + "from_row": 332, + "to_row": 332 + }, + "kind": ".", + "at": 9744, + "from_row": 332, + "to_row": 332 + }, + "kind": "assign", + "at": 9750, + "from_row": 332, + "to_row": 332 + } + }, + { + "then": [ + { + "to_row": 333, + "from_column": 42, + "to_column": 83, + "kind": "call", + "at": 9822, + "from_row": 333, + "expression": { + "to_column": 83, + "from_column": 53, + "right": { + "list": [ + { + "to_column": 75, + "from_column": 69, + "right": "right", + "left": { + "to_column": 69, + "from_column": 65, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 9845, + "from_row": 333, + "to_row": 333 + }, + "kind": ".", + "at": 9849, + "from_row": 333, + "to_row": 333 + }, + { + "to_column": 82, + "from_column": 77, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 9857, + "from_row": 333, + "to_row": 333 + } + ], + "from_column": 64, + "to_row": 333, + "to_column": 83, + "kind": "(", + "at": 9844, + "from_row": 333, + "expression": { + "to_column": 64, + "from_column": 55, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 9835, + "from_row": 333, + "to_row": 333 + } + }, + "left": { + "to_column": 52, + "from_column": 46, + "right": "right", + "left": { + "to_column": 46, + "from_column": 42, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 9822, + "from_row": 333, + "to_row": 333 + }, + "kind": ".", + "at": 9826, + "from_row": 333, + "to_row": 333 + }, + "kind": "assign", + "at": 9833, + "from_row": 333, + "to_row": 333 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 333, + "to_column": 83, + "kind": "if", + "at": 9786, + "from_row": 333, + "expression": { + "to_column": 40, + "from_column": 19, + "right": { + "to_column": 40, + "from_column": 33, + "right": { + "to_column": 40, + "from_column": 36, + "kind": "null", + "at": 9816, + "from_row": 333, + "to_row": 333 + }, + "left": { + "to_column": 32, + "from_column": 26, + "right": "right", + "left": { + "to_column": 26, + "from_column": 22, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 9802, + "from_row": 333, + "to_row": 333 + }, + "kind": ".", + "at": 9806, + "from_row": 333, + "to_row": 333 + }, + "kind": "!=", + "at": 9813, + "from_row": 333, + "to_row": 333 + }, + "left": { + "to_column": 18, + "from_column": 12, + "right": { + "to_row": 333, + "from_column": 15, + "to_column": 18, + "kind": "text", + "at": 9795, + "from_row": 333, + "value": "[" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9790, + "from_row": 333, + "to_row": 333 + }, + "kind": "==", + "at": 9792, + "from_row": 333, + "to_row": 333 + }, + "kind": "&&", + "at": 9799, + "from_row": 333, + "to_row": 333 + } + } + ], + "kind": "block", + "at": 9732, + "from_row": 331, + "to_row": 334 + } + ], + "from_column": 11, + "list": [ + { + "then": [ + { + "to_column": 5, + "from_column": 88, + "statements": [ + { + "to_row": 335, + "from_column": 6, + "to_column": 57, + "kind": "call", + "at": 9960, + "from_row": 335, + "expression": { + "to_column": 57, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 9988, + "from_row": 335, + "to_row": 335 + }, + "kind": ".", + "at": 9992, + "from_row": 335, + "to_row": 335 + }, + { + "to_column": 56, + "from_column": 51, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 10005, + "from_row": 335, + "to_row": 335 + } + ], + "from_column": 33, + "to_row": 335, + "to_column": 57, + "kind": "(", + "at": 9987, + "from_row": 335, + "expression": { + "to_column": 33, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 9978, + "from_row": 335, + "to_row": 335 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "expression", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 9960, + "from_row": 335, + "to_row": 335 + }, + "kind": ".", + "at": 9964, + "from_row": 335, + "to_row": 335 + }, + "kind": "assign", + "at": 9976, + "from_row": 335, + "to_row": 335 + } + } + ], + "kind": "block", + "at": 9952, + "from_row": 334, + "to_row": 336 + } + ], + "from_column": 11, + "list": [ + { + "then": [ + { + "to_column": 5, + "from_column": 39, + "statements": [ + { + "to_row": 337, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 10059, + "from_row": 337, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10066, + "from_row": 337, + "to_row": 337 + } + } + ], + "kind": "block", + "at": 10051, + "from_row": 336, + "to_row": 338 + } + ], + "from_column": 11, + "list": [ + { + "then": [ + { + "to_column": 5, + "from_column": 28, + "statements": [ + { + "to_row": 339, + "from_column": 6, + "to_column": 57, + "kind": "call", + "at": 10107, + "from_row": 339, + "expression": { + "to_column": 57, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10135, + "from_row": 339, + "to_row": 339 + }, + "kind": ".", + "at": 10139, + "from_row": 339, + "to_row": 339 + }, + { + "to_column": 56, + "from_column": 51, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 10152, + "from_row": 339, + "to_row": 339 + } + ], + "from_column": 33, + "to_row": 339, + "to_column": 57, + "kind": "(", + "at": 10134, + "from_row": 339, + "expression": { + "to_column": 33, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 10125, + "from_row": 339, + "to_row": 339 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "expression", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10107, + "from_row": 339, + "to_row": 339 + }, + "kind": ".", + "at": 10111, + "from_row": 339, + "to_row": 339 + }, + "kind": "assign", + "at": 10123, + "from_row": 339, + "to_row": 339 + } + }, + { + "to_row": 340, + "from_column": 6, + "to_column": 45, + "kind": "call", + "at": 10165, + "from_row": 340, + "expression": { + "to_column": 45, + "from_column": 16, + "right": { + "list": [ + { + "to_column": 37, + "from_column": 32, + "right": "then", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10187, + "from_row": 340, + "to_row": 340 + }, + "kind": ".", + "at": 10191, + "from_row": 340, + "to_row": 340 + }, + { + "to_column": 44, + "from_column": 39, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 10198, + "from_row": 340, + "to_row": 340 + } + ], + "from_column": 27, + "to_row": 340, + "to_column": 45, + "kind": "(", + "at": 10186, + "from_row": 340, + "expression": { + "to_column": 27, + "from_column": 18, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 10177, + "from_row": 340, + "to_row": 340 + } + }, + "left": { + "to_column": 15, + "from_column": 10, + "right": "then", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10165, + "from_row": 340, + "to_row": 340 + }, + "kind": ".", + "at": 10169, + "from_row": 340, + "to_row": 340 + }, + "kind": "assign", + "at": 10175, + "from_row": 340, + "to_row": 340 + } + }, + { + "to_row": 341, + "from_column": 6, + "to_column": 45, + "kind": "call", + "at": 10211, + "from_row": 341, + "expression": { + "to_column": 45, + "from_column": 16, + "right": { + "list": [ + { + "to_column": 37, + "from_column": 32, + "right": "else", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10233, + "from_row": 341, + "to_row": 341 + }, + "kind": ".", + "at": 10237, + "from_row": 341, + "to_row": 341 + }, + { + "to_column": 44, + "from_column": 39, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 10244, + "from_row": 341, + "to_row": 341 + } + ], + "from_column": 27, + "to_row": 341, + "to_column": 45, + "kind": "(", + "at": 10232, + "from_row": 341, + "expression": { + "to_column": 27, + "from_column": 18, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 10223, + "from_row": 341, + "to_row": 341 + } + }, + "left": { + "to_column": 15, + "from_column": 10, + "right": "else", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10211, + "from_row": 341, + "to_row": 341 + }, + "kind": ".", + "at": 10215, + "from_row": 341, + "to_row": 341 + }, + "kind": "assign", + "at": 10221, + "from_row": 341, + "to_row": 341 + } + } + ], + "kind": "block", + "at": 10099, + "from_row": 338, + "to_row": 342 + } + ], + "from_column": 11, + "list": [ + { + "then": [ + { + "to_column": 5, + "from_column": 25, + "statements": [ + { + "to_row": 343, + "from_column": 6, + "to_column": 57, + "kind": "call", + "at": 10284, + "from_row": 343, + "expression": { + "to_column": 57, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10312, + "from_row": 343, + "to_row": 343 + }, + "kind": ".", + "at": 10316, + "from_row": 343, + "to_row": 343 + }, + { + "to_column": 56, + "from_column": 51, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 10329, + "from_row": 343, + "to_row": 343 + } + ], + "from_column": 33, + "to_row": 343, + "to_column": 57, + "kind": "(", + "at": 10311, + "from_row": 343, + "expression": { + "to_column": 33, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 10302, + "from_row": 343, + "to_row": 343 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "expression", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10284, + "from_row": 343, + "to_row": 343 + }, + "kind": ".", + "at": 10288, + "from_row": 343, + "to_row": 343 + }, + "kind": "assign", + "at": 10300, + "from_row": 343, + "to_row": 343 + } + }, + { + "to_row": 344, + "from_column": 6, + "to_column": 11, + "kind": "call", + "at": 10342, + "from_row": 344, + "expression": { + "to_column": 11, + "from_column": 8, + "right": { + "to_row": 344, + "from_column": 10, + "number": 0, + "to_column": 11, + "kind": "number", + "at": 10346, + "from_row": 344, + "value": "0" + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10342, + "from_row": 344, + "to_row": 344 + }, + "kind": "assign", + "at": 10344, + "from_row": 344, + "to_row": 344 + } + }, + { + "to_row": 348, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 36, + "statements": [ + { + "to_row": 346, + "from_column": 8, + "to_column": 53, + "kind": "call", + "at": 10394, + "from_row": 346, + "expression": { + "to_column": 53, + "from_column": 21, + "right": { + "list": [ + { + "to_column": 45, + "from_column": 42, + "right": { + "to_column": 44, + "from_column": 43, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10429, + "from_row": 346, + "to_row": 346 + }, + "left": { + "to_column": 42, + "from_column": 37, + "right": "list", + "left": { + "to_column": 37, + "from_column": 33, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10419, + "from_row": 346, + "to_row": 346 + }, + "kind": ".", + "at": 10423, + "from_row": 346, + "to_row": 346 + }, + "kind": "[", + "at": 10428, + "from_row": 346, + "to_row": 346 + }, + { + "to_column": 52, + "from_column": 47, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 10433, + "from_row": 346, + "to_row": 346 + } + ], + "from_column": 32, + "to_row": 346, + "to_column": 53, + "kind": "(", + "at": 10418, + "from_row": 346, + "expression": { + "to_column": 32, + "from_column": 23, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 10409, + "from_row": 346, + "to_row": 346 + } + }, + "left": { + "to_column": 20, + "from_column": 17, + "right": { + "to_column": 19, + "from_column": 18, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10404, + "from_row": 346, + "to_row": 346 + }, + "left": { + "to_column": 17, + "from_column": 12, + "right": "list", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10394, + "from_row": 346, + "to_row": 346 + }, + "kind": ".", + "at": 10398, + "from_row": 346, + "to_row": 346 + }, + "kind": "[", + "at": 10403, + "from_row": 346, + "to_row": 346 + }, + "kind": "assign", + "at": 10407, + "from_row": 346, + "to_row": 346 + } + }, + { + "to_row": 347, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 10448, + "from_row": 347, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 347, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 10456, + "from_row": 347, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10452, + "from_row": 347, + "to_row": 347 + }, + "kind": "+", + "at": 10454, + "from_row": 347, + "to_row": 347 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10448, + "from_row": 347, + "to_row": 347 + }, + "kind": "assign", + "at": 10450, + "from_row": 347, + "to_row": 347 + } + } + ], + "kind": "block", + "at": 10384, + "from_row": 345, + "to_row": 348 + } + ], + "kind": "while", + "at": 10354, + "from_row": 345, + "expression": { + "to_column": 34, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 33, + "from_column": 28, + "right": "list", + "left": { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10372, + "from_row": 345, + "to_row": 345 + }, + "kind": ".", + "at": 10376, + "from_row": 345, + "to_row": 345 + } + ], + "from_column": 23, + "to_row": 345, + "to_column": 34, + "kind": "(", + "at": 10371, + "from_row": 345, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 10365, + "from_row": 345, + "to_row": 345 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10361, + "from_row": 345, + "to_row": 345 + }, + "kind": "<", + "at": 10363, + "from_row": 345, + "to_row": 345 + } + } + ], + "kind": "block", + "at": 10276, + "from_row": 342, + "to_row": 349 + } + ], + "from_column": 11, + "list": [ + { + "then": [ + { + "to_column": 5, + "from_column": 29, + "statements": [ + { + "to_row": 350, + "from_column": 6, + "to_column": 11, + "kind": "call", + "at": 10503, + "from_row": 350, + "expression": { + "to_column": 11, + "from_column": 8, + "right": { + "to_row": 350, + "from_column": 10, + "number": 0, + "to_column": 11, + "kind": "number", + "at": 10507, + "from_row": 350, + "value": "0" + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10503, + "from_row": 350, + "to_row": 350 + }, + "kind": "assign", + "at": 10505, + "from_row": 350, + "to_row": 350 + } + }, + { + "to_row": 354, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 36, + "statements": [ + { + "to_row": 352, + "from_column": 8, + "to_column": 53, + "kind": "call", + "at": 10555, + "from_row": 352, + "expression": { + "to_column": 53, + "from_column": 21, + "right": { + "list": [ + { + "to_column": 45, + "from_column": 42, + "right": { + "to_column": 44, + "from_column": 43, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10590, + "from_row": 352, + "to_row": 352 + }, + "left": { + "to_column": 42, + "from_column": 37, + "right": "list", + "left": { + "to_column": 37, + "from_column": 33, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10580, + "from_row": 352, + "to_row": 352 + }, + "kind": ".", + "at": 10584, + "from_row": 352, + "to_row": 352 + }, + "kind": "[", + "at": 10589, + "from_row": 352, + "to_row": 352 + }, + { + "to_column": 52, + "from_column": 47, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 10594, + "from_row": 352, + "to_row": 352 + } + ], + "from_column": 32, + "to_row": 352, + "to_column": 53, + "kind": "(", + "at": 10579, + "from_row": 352, + "expression": { + "to_column": 32, + "from_column": 23, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 10570, + "from_row": 352, + "to_row": 352 + } + }, + "left": { + "to_column": 20, + "from_column": 17, + "right": { + "to_column": 19, + "from_column": 18, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10565, + "from_row": 352, + "to_row": 352 + }, + "left": { + "to_column": 17, + "from_column": 12, + "right": "list", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10555, + "from_row": 352, + "to_row": 352 + }, + "kind": ".", + "at": 10559, + "from_row": 352, + "to_row": 352 + }, + "kind": "[", + "at": 10564, + "from_row": 352, + "to_row": 352 + }, + "kind": "assign", + "at": 10568, + "from_row": 352, + "to_row": 352 + } + }, + { + "to_row": 353, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 10609, + "from_row": 353, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 353, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 10617, + "from_row": 353, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10613, + "from_row": 353, + "to_row": 353 + }, + "kind": "+", + "at": 10615, + "from_row": 353, + "to_row": 353 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10609, + "from_row": 353, + "to_row": 353 + }, + "kind": "assign", + "at": 10611, + "from_row": 353, + "to_row": 353 + } + } + ], + "kind": "block", + "at": 10545, + "from_row": 351, + "to_row": 354 + } + ], + "kind": "while", + "at": 10515, + "from_row": 351, + "expression": { + "to_column": 34, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 33, + "from_column": 28, + "right": "list", + "left": { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10533, + "from_row": 351, + "to_row": 351 + }, + "kind": ".", + "at": 10537, + "from_row": 351, + "to_row": 351 + } + ], + "from_column": 23, + "to_row": 351, + "to_column": 34, + "kind": "(", + "at": 10532, + "from_row": 351, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 10526, + "from_row": 351, + "to_row": 351 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10522, + "from_row": 351, + "to_row": 351 + }, + "kind": "<", + "at": 10524, + "from_row": 351, + "to_row": 351 + } + } + ], + "kind": "block", + "at": 10495, + "from_row": 349, + "to_row": 355 + } + ], + "from_column": 11, + "list": [ + { + "then": [ + { + "to_column": 5, + "from_column": 30, + "statements": [ + { + "to_row": 356, + "from_column": 6, + "to_column": 11, + "kind": "call", + "at": 10665, + "from_row": 356, + "expression": { + "to_column": 11, + "from_column": 8, + "right": { + "to_row": 356, + "from_column": 10, + "number": 0, + "to_column": 11, + "kind": "number", + "at": 10669, + "from_row": 356, + "value": "0" + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10665, + "from_row": 356, + "to_row": 356 + }, + "kind": "assign", + "at": 10667, + "from_row": 356, + "to_row": 356 + } + }, + { + "to_row": 360, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 36, + "statements": [ + { + "to_row": 358, + "from_column": 8, + "to_column": 65, + "kind": "call", + "at": 10717, + "from_row": 358, + "expression": { + "to_column": 65, + "from_column": 27, + "right": { + "list": [ + { + "to_column": 57, + "from_column": 51, + "right": "right", + "left": { + "to_column": 51, + "from_column": 48, + "right": { + "to_column": 50, + "from_column": 49, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10758, + "from_row": 358, + "to_row": 358 + }, + "left": { + "to_column": 48, + "from_column": 43, + "right": "list", + "left": { + "to_column": 43, + "from_column": 39, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10748, + "from_row": 358, + "to_row": 358 + }, + "kind": ".", + "at": 10752, + "from_row": 358, + "to_row": 358 + }, + "kind": "[", + "at": 10757, + "from_row": 358, + "to_row": 358 + }, + "kind": ".", + "at": 10760, + "from_row": 358, + "to_row": 358 + }, + { + "to_column": 64, + "from_column": 59, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 10768, + "from_row": 358, + "to_row": 358 + } + ], + "from_column": 38, + "to_row": 358, + "to_column": 65, + "kind": "(", + "at": 10747, + "from_row": 358, + "expression": { + "to_column": 38, + "from_column": 29, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 10738, + "from_row": 358, + "to_row": 358 + } + }, + "left": { + "to_column": 26, + "from_column": 20, + "right": "right", + "left": { + "to_column": 20, + "from_column": 17, + "right": { + "to_column": 19, + "from_column": 18, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10727, + "from_row": 358, + "to_row": 358 + }, + "left": { + "to_column": 17, + "from_column": 12, + "right": "list", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10717, + "from_row": 358, + "to_row": 358 + }, + "kind": ".", + "at": 10721, + "from_row": 358, + "to_row": 358 + }, + "kind": "[", + "at": 10726, + "from_row": 358, + "to_row": 358 + }, + "kind": ".", + "at": 10729, + "from_row": 358, + "to_row": 358 + }, + "kind": "assign", + "at": 10736, + "from_row": 358, + "to_row": 358 + } + }, + { + "to_row": 359, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 10783, + "from_row": 359, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 359, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 10791, + "from_row": 359, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10787, + "from_row": 359, + "to_row": 359 + }, + "kind": "+", + "at": 10789, + "from_row": 359, + "to_row": 359 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10783, + "from_row": 359, + "to_row": 359 + }, + "kind": "assign", + "at": 10785, + "from_row": 359, + "to_row": 359 + } + } + ], + "kind": "block", + "at": 10707, + "from_row": 357, + "to_row": 360 + } + ], + "kind": "while", + "at": 10677, + "from_row": 357, + "expression": { + "to_column": 34, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 33, + "from_column": 28, + "right": "list", + "left": { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10695, + "from_row": 357, + "to_row": 357 + }, + "kind": ".", + "at": 10699, + "from_row": 357, + "to_row": 357 + } + ], + "from_column": 23, + "to_row": 357, + "to_column": 34, + "kind": "(", + "at": 10694, + "from_row": 357, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 10688, + "from_row": 357, + "to_row": 357 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10684, + "from_row": 357, + "to_row": 357 + }, + "kind": "<", + "at": 10686, + "from_row": 357, + "to_row": 357 + } + } + ], + "kind": "block", + "at": 10657, + "from_row": 355, + "to_row": 361 + } + ], + "from_column": 11, + "list": [ + { + "then": [ + { + "to_column": 5, + "from_column": 36, + "statements": [ + { + "to_row": 362, + "from_column": 6, + "to_column": 11, + "kind": "call", + "at": 10845, + "from_row": 362, + "expression": { + "to_column": 11, + "from_column": 8, + "right": { + "to_row": 362, + "from_column": 10, + "number": 0, + "to_column": 11, + "kind": "number", + "at": 10849, + "from_row": 362, + "value": "0" + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10845, + "from_row": 362, + "to_row": 362 + }, + "kind": "assign", + "at": 10847, + "from_row": 362, + "to_row": 362 + } + }, + { + "to_row": 366, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 36, + "statements": [ + { + "to_row": 364, + "from_column": 8, + "to_column": 53, + "kind": "call", + "at": 10897, + "from_row": 364, + "expression": { + "to_column": 53, + "from_column": 21, + "right": { + "list": [ + { + "to_column": 45, + "from_column": 42, + "right": { + "to_column": 44, + "from_column": 43, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10932, + "from_row": 364, + "to_row": 364 + }, + "left": { + "to_column": 42, + "from_column": 37, + "right": "list", + "left": { + "to_column": 37, + "from_column": 33, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10922, + "from_row": 364, + "to_row": 364 + }, + "kind": ".", + "at": 10926, + "from_row": 364, + "to_row": 364 + }, + "kind": "[", + "at": 10931, + "from_row": 364, + "to_row": 364 + }, + { + "to_column": 52, + "from_column": 47, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 10936, + "from_row": 364, + "to_row": 364 + } + ], + "from_column": 32, + "to_row": 364, + "to_column": 53, + "kind": "(", + "at": 10921, + "from_row": 364, + "expression": { + "to_column": 32, + "from_column": 23, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 10912, + "from_row": 364, + "to_row": 364 + } + }, + "left": { + "to_column": 20, + "from_column": 17, + "right": { + "to_column": 19, + "from_column": 18, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10907, + "from_row": 364, + "to_row": 364 + }, + "left": { + "to_column": 17, + "from_column": 12, + "right": "list", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10897, + "from_row": 364, + "to_row": 364 + }, + "kind": ".", + "at": 10901, + "from_row": 364, + "to_row": 364 + }, + "kind": "[", + "at": 10906, + "from_row": 364, + "to_row": 364 + }, + "kind": "assign", + "at": 10910, + "from_row": 364, + "to_row": 364 + } + }, + { + "to_row": 365, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 10951, + "from_row": 365, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 365, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 10959, + "from_row": 365, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10955, + "from_row": 365, + "to_row": 365 + }, + "kind": "+", + "at": 10957, + "from_row": 365, + "to_row": 365 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10951, + "from_row": 365, + "to_row": 365 + }, + "kind": "assign", + "at": 10953, + "from_row": 365, + "to_row": 365 + } + } + ], + "kind": "block", + "at": 10887, + "from_row": 363, + "to_row": 366 + } + ], + "kind": "while", + "at": 10857, + "from_row": 363, + "expression": { + "to_column": 34, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 33, + "from_column": 28, + "right": "list", + "left": { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 10875, + "from_row": 363, + "to_row": 363 + }, + "kind": ".", + "at": 10879, + "from_row": 363, + "to_row": 363 + } + ], + "from_column": 23, + "to_row": 363, + "to_column": 34, + "kind": "(", + "at": 10874, + "from_row": 363, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 10868, + "from_row": 363, + "to_row": 363 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "i", + "kind": "name", + "at": 10864, + "from_row": 363, + "to_row": 363 + }, + "kind": "<", + "at": 10866, + "from_row": 363, + "to_row": 363 + } + } + ], + "kind": "block", + "at": 10837, + "from_row": 361, + "to_row": 367 + } + ], + "from_column": 11, + "list": [ + { + "then": [ + { + "to_column": 5, + "from_column": 32, + "statements": [ + { + "to_row": 368, + "from_column": 6, + "to_column": 19, + "kind": "call", + "at": 11009, + "from_row": 368, + "expression": { + "list": [ + { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11017, + "from_row": 368, + "to_row": 368 + } + ], + "from_column": 13, + "to_row": 368, + "to_column": 19, + "kind": "(", + "at": 11016, + "from_row": 368, + "expression": { + "to_column": 13, + "from_column": 6, + "level": 1, + "function_nr": 30, + "name": "fold_fn", + "kind": "name", + "at": 11009, + "from_row": 368, + "to_row": 368 + } + } + }, + { + "to_row": 369, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 11029, + "from_row": 369, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11036, + "from_row": 369, + "to_row": 369 + } + } + ], + "kind": "block", + "at": 11001, + "from_row": 367, + "to_row": 370 + } + ], + "from_column": 11, + "list": [ + { + "then": [ + { + "to_column": 5, + "from_column": 55, + "statements": [ + { + "to_row": 374, + "from_column": 6, + "to_column": 47, + "kind": "call", + "at": 11313, + "from_row": 374, + "expression": { + "to_column": 47, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 39, + "from_column": 33, + "right": "right", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11336, + "from_row": 374, + "to_row": 374 + }, + "kind": ".", + "at": 11340, + "from_row": 374, + "to_row": 374 + }, + { + "to_column": 46, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 11348, + "from_row": 374, + "to_row": 374 + } + ], + "from_column": 28, + "to_row": 374, + "to_column": 47, + "kind": "(", + "at": 11335, + "from_row": 374, + "expression": { + "to_column": 28, + "from_column": 19, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 11326, + "from_row": 374, + "to_row": 374 + } + }, + "left": { + "to_column": 16, + "from_column": 10, + "right": "right", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11313, + "from_row": 374, + "to_row": 374 + }, + "kind": ".", + "at": 11317, + "from_row": 374, + "to_row": 374 + }, + "kind": "assign", + "at": 11324, + "from_row": 374, + "to_row": 374 + } + }, + { + "to_row": 375, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 11361, + "from_row": 375, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11368, + "from_row": 375, + "to_row": 375 + } + } + ], + "kind": "block", + "at": 11305, + "from_row": 373, + "to_row": 376 + } + ], + "from_column": 11, + "list": [], + "to_row": 376, + "to_column": 5, + "kind": "if", + "at": 11052, + "from_row": 370, + "expression": { + "to_column": 53, + "from_column": 40, + "right": { + "to_column": 53, + "from_column": 45, + "right": { + "to_row": 373, + "from_column": 48, + "to_column": 53, + "kind": "text", + "at": 11298, + "from_row": 373, + "value": "||=" + }, + "left": { + "to_column": 44, + "from_column": 43, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11293, + "from_row": 373, + "to_row": 373 + }, + "kind": "==", + "at": 11295, + "from_row": 373, + "to_row": 373 + }, + "left": { + "to_column": 39, + "from_column": 26, + "right": { + "to_column": 39, + "from_column": 31, + "right": { + "to_row": 373, + "from_column": 34, + "to_column": 39, + "kind": "text", + "at": 11284, + "from_row": 373, + "value": "&&=" + }, + "left": { + "to_column": 30, + "from_column": 29, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11279, + "from_row": 373, + "to_row": 373 + }, + "kind": "==", + "at": 11281, + "from_row": 373, + "to_row": 373 + }, + "left": { + "to_column": 25, + "from_column": 66, + "right": { + "to_column": 25, + "from_column": 17, + "right": { + "to_row": 373, + "from_column": 20, + "to_column": 25, + "kind": "text", + "at": 11270, + "from_row": 373, + "value": "**=" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11265, + "from_row": 373, + "to_row": 373 + }, + "kind": "==", + "at": 11267, + "from_row": 373, + "to_row": 373 + }, + "left": { + "to_column": 65, + "from_column": 53, + "right": { + "to_column": 65, + "from_column": 58, + "right": { + "to_row": 372, + "from_column": 61, + "to_column": 65, + "kind": "text", + "at": 11242, + "from_row": 372, + "value": "|=" + }, + "left": { + "to_column": 57, + "from_column": 56, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11237, + "from_row": 372, + "to_row": 372 + }, + "kind": "==", + "at": 11239, + "from_row": 372, + "to_row": 372 + }, + "left": { + "to_column": 52, + "from_column": 40, + "right": { + "to_column": 52, + "from_column": 45, + "right": { + "to_row": 372, + "from_column": 48, + "to_column": 52, + "kind": "text", + "at": 11229, + "from_row": 372, + "value": "^=" + }, + "left": { + "to_column": 44, + "from_column": 43, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11224, + "from_row": 372, + "to_row": 372 + }, + "kind": "==", + "at": 11226, + "from_row": 372, + "to_row": 372 + }, + "left": { + "to_column": 39, + "from_column": 27, + "right": { + "to_column": 39, + "from_column": 32, + "right": { + "to_row": 372, + "from_column": 35, + "to_column": 39, + "kind": "text", + "at": 11216, + "from_row": 372, + "value": "&=" + }, + "left": { + "to_column": 31, + "from_column": 30, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11211, + "from_row": 372, + "to_row": 372 + }, + "kind": "==", + "at": 11213, + "from_row": 372, + "to_row": 372 + }, + "left": { + "to_column": 26, + "from_column": 66, + "right": { + "to_column": 26, + "from_column": 17, + "right": { + "to_row": 372, + "from_column": 20, + "to_column": 26, + "kind": "text", + "at": 11201, + "from_row": 372, + "value": ">>>=" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11196, + "from_row": 372, + "to_row": 372 + }, + "kind": "==", + "at": 11198, + "from_row": 372, + "to_row": 372 + }, + "left": { + "to_column": 65, + "from_column": 52, + "right": { + "to_column": 65, + "from_column": 57, + "right": { + "to_row": 371, + "from_column": 60, + "to_column": 65, + "kind": "text", + "at": 11172, + "from_row": 371, + "value": ">>=" + }, + "left": { + "to_column": 56, + "from_column": 55, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11167, + "from_row": 371, + "to_row": 371 + }, + "kind": "==", + "at": 11169, + "from_row": 371, + "to_row": 371 + }, + "left": { + "to_column": 51, + "from_column": 38, + "right": { + "to_column": 51, + "from_column": 43, + "right": { + "to_row": 371, + "from_column": 46, + "to_column": 51, + "kind": "text", + "at": 11158, + "from_row": 371, + "value": "<<=" + }, + "left": { + "to_column": 42, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11153, + "from_row": 371, + "to_row": 371 + }, + "kind": "==", + "at": 11155, + "from_row": 371, + "to_row": 371 + }, + "left": { + "to_column": 37, + "from_column": 25, + "right": { + "to_column": 37, + "from_column": 30, + "right": { + "to_row": 371, + "from_column": 33, + "to_column": 37, + "kind": "text", + "at": 11145, + "from_row": 371, + "value": "%=" + }, + "left": { + "to_column": 29, + "from_column": 28, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11140, + "from_row": 371, + "to_row": 371 + }, + "kind": "==", + "at": 11142, + "from_row": 371, + "to_row": 371 + }, + "left": { + "to_column": 24, + "from_column": 68, + "right": { + "to_column": 24, + "from_column": 17, + "right": { + "to_row": 371, + "from_column": 20, + "to_column": 24, + "kind": "text", + "at": 11132, + "from_row": 371, + "value": "/=" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11127, + "from_row": 371, + "to_row": 371 + }, + "kind": "==", + "at": 11129, + "from_row": 371, + "to_row": 371 + }, + "left": { + "to_column": 67, + "from_column": 55, + "right": { + "to_column": 67, + "from_column": 60, + "right": { + "to_row": 370, + "from_column": 63, + "to_column": 67, + "kind": "text", + "at": 11104, + "from_row": 370, + "value": "*=" + }, + "left": { + "to_column": 59, + "from_column": 58, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11099, + "from_row": 370, + "to_row": 370 + }, + "kind": "==", + "at": 11101, + "from_row": 370, + "to_row": 370 + }, + "left": { + "to_column": 54, + "from_column": 42, + "right": { + "to_column": 54, + "from_column": 47, + "right": { + "to_row": 370, + "from_column": 50, + "to_column": 54, + "kind": "text", + "at": 11091, + "from_row": 370, + "value": "-=" + }, + "left": { + "to_column": 46, + "from_column": 45, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11086, + "from_row": 370, + "to_row": 370 + }, + "kind": "==", + "at": 11088, + "from_row": 370, + "to_row": 370 + }, + "left": { + "to_column": 41, + "from_column": 29, + "right": { + "to_column": 41, + "from_column": 34, + "right": { + "to_row": 370, + "from_column": 37, + "to_column": 41, + "kind": "text", + "at": 11078, + "from_row": 370, + "value": "+=" + }, + "left": { + "to_column": 33, + "from_column": 32, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11073, + "from_row": 370, + "to_row": 370 + }, + "kind": "==", + "at": 11075, + "from_row": 370, + "to_row": 370 + }, + "left": { + "to_column": 28, + "from_column": 17, + "right": { + "to_row": 370, + "from_column": 20, + "to_column": 28, + "kind": "text", + "at": 11061, + "from_row": 370, + "value": "assign" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11056, + "from_row": 370, + "to_row": 370 + }, + "kind": "==", + "at": 11058, + "from_row": 370, + "to_row": 370 + }, + "kind": "||", + "at": 11070, + "from_row": 370, + "to_row": 370 + }, + "kind": "||", + "at": 11083, + "from_row": 370, + "to_row": 370 + }, + "kind": "||", + "at": 11096, + "from_row": 370, + "to_row": 370 + }, + "kind": "||", + "at": 11109, + "from_row": 370, + "to_row": 371 + }, + "kind": "||", + "at": 11137, + "from_row": 371, + "to_row": 371 + }, + "kind": "||", + "at": 11150, + "from_row": 371, + "to_row": 371 + }, + "kind": "||", + "at": 11164, + "from_row": 371, + "to_row": 371 + }, + "kind": "||", + "at": 11178, + "from_row": 371, + "to_row": 372 + }, + "kind": "||", + "at": 11208, + "from_row": 372, + "to_row": 372 + }, + "kind": "||", + "at": 11221, + "from_row": 372, + "to_row": 372 + }, + "kind": "||", + "at": 11234, + "from_row": 372, + "to_row": 372 + }, + "kind": "||", + "at": 11247, + "from_row": 372, + "to_row": 373 + }, + "kind": "||", + "at": 11276, + "from_row": 373, + "to_row": 373 + }, + "kind": "||", + "at": 11290, + "from_row": 373, + "to_row": 373 + } + } + ], + "to_row": 376, + "to_column": 5, + "kind": "if", + "at": 10980, + "from_row": 367, + "expression": { + "to_column": 30, + "from_column": 17, + "right": { + "to_row": 367, + "from_column": 20, + "to_column": 30, + "kind": "text", + "at": 10989, + "from_row": 367, + "value": "function" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 10984, + "from_row": 367, + "to_row": 367 + }, + "kind": "==", + "at": 10986, + "from_row": 367, + "to_row": 367 + } + } + ], + "to_row": 376, + "to_column": 5, + "kind": "if", + "at": 10812, + "from_row": 361, + "expression": { + "to_column": 34, + "from_column": 17, + "right": { + "to_row": 361, + "from_column": 20, + "to_column": 34, + "kind": "text", + "at": 10821, + "from_row": 361, + "value": "text literal" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 10816, + "from_row": 361, + "to_row": 361 + }, + "kind": "==", + "at": 10818, + "from_row": 361, + "to_row": 361 + } + } + ], + "to_row": 376, + "to_column": 5, + "kind": "if", + "at": 10638, + "from_row": 355, + "expression": { + "to_column": 28, + "from_column": 17, + "right": { + "to_row": 355, + "from_column": 20, + "to_column": 28, + "kind": "text", + "at": 10647, + "from_row": 355, + "value": "record" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 10642, + "from_row": 355, + "to_row": 355 + }, + "kind": "==", + "at": 10644, + "from_row": 355, + "to_row": 355 + } + } + ], + "to_row": 376, + "to_column": 5, + "kind": "if", + "at": 10477, + "from_row": 349, + "expression": { + "to_column": 27, + "from_column": 17, + "right": { + "to_row": 349, + "from_column": 20, + "to_column": 27, + "kind": "text", + "at": 10486, + "from_row": 349, + "value": "array" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 10481, + "from_row": 349, + "to_row": 349 + }, + "kind": "==", + "at": 10483, + "from_row": 349, + "to_row": 349 + } + } + ], + "to_row": 376, + "to_column": 5, + "kind": "if", + "at": 10262, + "from_row": 342, + "expression": { + "to_column": 23, + "from_column": 17, + "right": { + "to_row": 342, + "from_column": 20, + "to_column": 23, + "kind": "text", + "at": 10271, + "from_row": 342, + "value": "(" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 10266, + "from_row": 342, + "to_row": 342 + }, + "kind": "==", + "at": 10268, + "from_row": 342, + "to_row": 342 + } + } + ], + "to_row": 376, + "to_column": 5, + "kind": "if", + "at": 10082, + "from_row": 338, + "expression": { + "to_column": 26, + "from_column": 17, + "right": { + "to_row": 338, + "from_column": 20, + "to_column": 26, + "kind": "text", + "at": 10091, + "from_row": 338, + "value": "then" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 10086, + "from_row": 338, + "to_row": 338 + }, + "kind": "==", + "at": 10088, + "from_row": 338, + "to_row": 338 + } + } + ], + "to_row": 376, + "to_column": 5, + "kind": "if", + "at": 10023, + "from_row": 336, + "expression": { + "to_column": 37, + "from_column": 25, + "right": { + "to_column": 37, + "from_column": 30, + "right": { + "to_row": 336, + "from_column": 33, + "to_column": 37, + "kind": "text", + "at": 10045, + "from_row": 336, + "value": "--" + }, + "left": { + "to_column": 29, + "from_column": 28, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 10040, + "from_row": 336, + "to_row": 336 + }, + "kind": "==", + "at": 10042, + "from_row": 336, + "to_row": 336 + }, + "left": { + "to_column": 24, + "from_column": 17, + "right": { + "to_row": 336, + "from_column": 20, + "to_column": 24, + "kind": "text", + "at": 10032, + "from_row": 336, + "value": "++" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 10027, + "from_row": 336, + "to_row": 336 + }, + "kind": "==", + "at": 10029, + "from_row": 336, + "to_row": 336 + }, + "kind": "||", + "at": 10037, + "from_row": 336, + "to_row": 336 + } + } + ], + "to_row": 376, + "to_column": 5, + "kind": "if", + "at": 9875, + "from_row": 334, + "expression": { + "to_column": 86, + "from_column": 70, + "right": { + "to_column": 86, + "from_column": 75, + "right": { + "to_row": 334, + "from_column": 78, + "to_column": 86, + "kind": "text", + "at": 9942, + "from_row": 334, + "value": "delete" + }, + "left": { + "to_column": 74, + "from_column": 73, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9937, + "from_row": 334, + "to_row": 334 + }, + "kind": "==", + "at": 9939, + "from_row": 334, + "to_row": 334 + }, + "left": { + "to_column": 69, + "from_column": 53, + "right": { + "to_column": 69, + "from_column": 58, + "right": { + "to_row": 334, + "from_column": 61, + "to_column": 69, + "kind": "text", + "at": 9925, + "from_row": 334, + "value": "+unary" + }, + "left": { + "to_column": 57, + "from_column": 56, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9920, + "from_row": 334, + "to_row": 334 + }, + "kind": "==", + "at": 9922, + "from_row": 334, + "to_row": 334 + }, + "left": { + "to_column": 52, + "from_column": 36, + "right": { + "to_column": 52, + "from_column": 41, + "right": { + "to_row": 334, + "from_column": 44, + "to_column": 52, + "kind": "text", + "at": 9908, + "from_row": 334, + "value": "-unary" + }, + "left": { + "to_column": 40, + "from_column": 39, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9903, + "from_row": 334, + "to_row": 334 + }, + "kind": "==", + "at": 9905, + "from_row": 334, + "to_row": 334 + }, + "left": { + "to_column": 35, + "from_column": 24, + "right": { + "to_column": 35, + "from_column": 29, + "right": { + "to_row": 334, + "from_column": 32, + "to_column": 35, + "kind": "text", + "at": 9896, + "from_row": 334, + "value": "~" + }, + "left": { + "to_column": 28, + "from_column": 27, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9891, + "from_row": 334, + "to_row": 334 + }, + "kind": "==", + "at": 9893, + "from_row": 334, + "to_row": 334 + }, + "left": { + "to_column": 23, + "from_column": 17, + "right": { + "to_row": 334, + "from_column": 20, + "to_column": 23, + "kind": "text", + "at": 9884, + "from_row": 334, + "value": "!" + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9879, + "from_row": 334, + "to_row": 334 + }, + "kind": "==", + "at": 9881, + "from_row": 334, + "to_row": 334 + }, + "kind": "||", + "at": 9888, + "from_row": 334, + "to_row": 334 + }, + "kind": "||", + "at": 9900, + "from_row": 334, + "to_row": 334 + }, + "kind": "||", + "at": 9917, + "from_row": 334, + "to_row": 334 + }, + "kind": "||", + "at": 9934, + "from_row": 334, + "to_row": 334 + } + } + ], + "to_row": 376, + "to_column": 5, + "kind": "if", + "at": 9706, + "from_row": 331, + "expression": { + "to_column": 35, + "from_column": 24, + "right": { + "to_column": 35, + "from_column": 29, + "right": { + "to_row": 331, + "from_column": 32, + "to_column": 35, + "kind": "text", + "at": 9727, + "from_row": 331, + "value": "[" + }, + "left": { + "to_column": 28, + "from_column": 27, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9722, + "from_row": 331, + "to_row": 331 + }, + "kind": "==", + "at": 9724, + "from_row": 331, + "to_row": 331 + }, + "left": { + "to_column": 23, + "from_column": 17, + "right": { + "to_row": 331, + "from_column": 20, + "to_column": 23, + "kind": "text", + "at": 9715, + "from_row": 331, + "value": "." + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9710, + "from_row": 331, + "to_row": 331 + }, + "kind": "==", + "at": 9712, + "from_row": 331, + "to_row": 331 + }, + "kind": "||", + "at": 9719, + "from_row": 331, + "to_row": 331 + } + } + ], + "to_row": 376, + "to_column": 5, + "kind": "if", + "at": 9289, + "from_row": 324, + "expression": { + "to_column": 29, + "from_column": 17, + "right": { + "to_column": 29, + "from_column": 22, + "right": { + "to_row": 328, + "from_column": 25, + "to_column": 29, + "kind": "text", + "at": 9593, + "from_row": 328, + "value": "in" + }, + "left": { + "to_column": 21, + "from_column": 20, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9588, + "from_row": 328, + "to_row": 328 + }, + "kind": "==", + "at": 9590, + "from_row": 328, + "to_row": 328 + }, + "left": { + "to_column": 16, + "from_column": 71, + "right": { + "to_column": 16, + "from_column": 10, + "right": { + "to_row": 328, + "from_column": 13, + "to_column": 16, + "kind": "text", + "at": 9581, + "from_row": 328, + "value": "," + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9576, + "from_row": 328, + "to_row": 328 + }, + "kind": "==", + "at": 9578, + "from_row": 328, + "to_row": 328 + }, + "left": { + "to_column": 70, + "from_column": 58, + "right": { + "to_column": 70, + "from_column": 63, + "right": { + "to_row": 327, + "from_column": 66, + "to_column": 70, + "kind": "text", + "at": 9560, + "from_row": 327, + "value": "||" + }, + "left": { + "to_column": 62, + "from_column": 61, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9555, + "from_row": 327, + "to_row": 327 + }, + "kind": "==", + "at": 9557, + "from_row": 327, + "to_row": 327 + }, + "left": { + "to_column": 57, + "from_column": 45, + "right": { + "to_column": 57, + "from_column": 50, + "right": { + "to_row": 327, + "from_column": 53, + "to_column": 57, + "kind": "text", + "at": 9547, + "from_row": 327, + "value": "&&" + }, + "left": { + "to_column": 49, + "from_column": 48, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9542, + "from_row": 327, + "to_row": 327 + }, + "kind": "==", + "at": 9544, + "from_row": 327, + "to_row": 327 + }, + "left": { + "to_column": 44, + "from_column": 31, + "right": { + "to_column": 44, + "from_column": 36, + "right": { + "to_row": 327, + "from_column": 39, + "to_column": 44, + "kind": "text", + "at": 9533, + "from_row": 327, + "value": ">>>" + }, + "left": { + "to_column": 35, + "from_column": 34, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9528, + "from_row": 327, + "to_row": 327 + }, + "kind": "==", + "at": 9530, + "from_row": 327, + "to_row": 327 + }, + "left": { + "to_column": 30, + "from_column": 18, + "right": { + "to_column": 30, + "from_column": 23, + "right": { + "to_row": 327, + "from_column": 26, + "to_column": 30, + "kind": "text", + "at": 9520, + "from_row": 327, + "value": ">>" + }, + "left": { + "to_column": 22, + "from_column": 21, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9515, + "from_row": 327, + "to_row": 327 + }, + "kind": "==", + "at": 9517, + "from_row": 327, + "to_row": 327 + }, + "left": { + "to_column": 17, + "from_column": 67, + "right": { + "to_column": 17, + "from_column": 10, + "right": { + "to_row": 327, + "from_column": 13, + "to_column": 17, + "kind": "text", + "at": 9507, + "from_row": 327, + "value": "<<" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9502, + "from_row": 327, + "to_row": 327 + }, + "kind": "==", + "at": 9504, + "from_row": 327, + "to_row": 327 + }, + "left": { + "to_column": 66, + "from_column": 55, + "right": { + "to_column": 66, + "from_column": 60, + "right": { + "to_row": 326, + "from_column": 63, + "to_column": 66, + "kind": "text", + "at": 9487, + "from_row": 326, + "value": "^" + }, + "left": { + "to_column": 59, + "from_column": 58, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9482, + "from_row": 326, + "to_row": 326 + }, + "kind": "==", + "at": 9484, + "from_row": 326, + "to_row": 326 + }, + "left": { + "to_column": 54, + "from_column": 43, + "right": { + "to_column": 54, + "from_column": 48, + "right": { + "to_row": 326, + "from_column": 51, + "to_column": 54, + "kind": "text", + "at": 9475, + "from_row": 326, + "value": "|" + }, + "left": { + "to_column": 47, + "from_column": 46, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9470, + "from_row": 326, + "to_row": 326 + }, + "kind": "==", + "at": 9472, + "from_row": 326, + "to_row": 326 + }, + "left": { + "to_column": 42, + "from_column": 31, + "right": { + "to_column": 42, + "from_column": 36, + "right": { + "to_row": 326, + "from_column": 39, + "to_column": 42, + "kind": "text", + "at": 9463, + "from_row": 326, + "value": "&" + }, + "left": { + "to_column": 35, + "from_column": 34, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9458, + "from_row": 326, + "to_row": 326 + }, + "kind": "==", + "at": 9460, + "from_row": 326, + "to_row": 326 + }, + "left": { + "to_column": 30, + "from_column": 18, + "right": { + "to_column": 30, + "from_column": 23, + "right": { + "to_row": 326, + "from_column": 26, + "to_column": 30, + "kind": "text", + "at": 9450, + "from_row": 326, + "value": ">=" + }, + "left": { + "to_column": 22, + "from_column": 21, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9445, + "from_row": 326, + "to_row": 326 + }, + "kind": "==", + "at": 9447, + "from_row": 326, + "to_row": 326 + }, + "left": { + "to_column": 17, + "from_column": 68, + "right": { + "to_column": 17, + "from_column": 10, + "right": { + "to_row": 326, + "from_column": 13, + "to_column": 17, + "kind": "text", + "at": 9437, + "from_row": 326, + "value": "<=" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9432, + "from_row": 326, + "to_row": 326 + }, + "kind": "==", + "at": 9434, + "from_row": 326, + "to_row": 326 + }, + "left": { + "to_column": 67, + "from_column": 56, + "right": { + "to_column": 67, + "from_column": 61, + "right": { + "to_row": 325, + "from_column": 64, + "to_column": 67, + "kind": "text", + "at": 9417, + "from_row": 325, + "value": ">" + }, + "left": { + "to_column": 60, + "from_column": 59, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9412, + "from_row": 325, + "to_row": 325 + }, + "kind": "==", + "at": 9414, + "from_row": 325, + "to_row": 325 + }, + "left": { + "to_column": 55, + "from_column": 44, + "right": { + "to_column": 55, + "from_column": 49, + "right": { + "to_row": 325, + "from_column": 52, + "to_column": 55, + "kind": "text", + "at": 9405, + "from_row": 325, + "value": "<" + }, + "left": { + "to_column": 48, + "from_column": 47, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9400, + "from_row": 325, + "to_row": 325 + }, + "kind": "==", + "at": 9402, + "from_row": 325, + "to_row": 325 + }, + "left": { + "to_column": 43, + "from_column": 31, + "right": { + "to_column": 43, + "from_column": 36, + "right": { + "to_row": 325, + "from_column": 39, + "to_column": 43, + "kind": "text", + "at": 9392, + "from_row": 325, + "value": "!=" + }, + "left": { + "to_column": 35, + "from_column": 34, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9387, + "from_row": 325, + "to_row": 325 + }, + "kind": "==", + "at": 9389, + "from_row": 325, + "to_row": 325 + }, + "left": { + "to_column": 30, + "from_column": 18, + "right": { + "to_column": 30, + "from_column": 23, + "right": { + "to_row": 325, + "from_column": 26, + "to_column": 30, + "kind": "text", + "at": 9379, + "from_row": 325, + "value": "==" + }, + "left": { + "to_column": 22, + "from_column": 21, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9374, + "from_row": 325, + "to_row": 325 + }, + "kind": "==", + "at": 9376, + "from_row": 325, + "to_row": 325 + }, + "left": { + "to_column": 17, + "from_column": 65, + "right": { + "to_column": 17, + "from_column": 10, + "right": { + "to_row": 325, + "from_column": 13, + "to_column": 17, + "kind": "text", + "at": 9366, + "from_row": 325, + "value": "**" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9361, + "from_row": 325, + "to_row": 325 + }, + "kind": "==", + "at": 9363, + "from_row": 325, + "to_row": 325 + }, + "left": { + "to_column": 64, + "from_column": 53, + "right": { + "to_column": 64, + "from_column": 58, + "right": { + "to_row": 324, + "from_column": 61, + "to_column": 64, + "kind": "text", + "at": 9346, + "from_row": 324, + "value": "%" + }, + "left": { + "to_column": 57, + "from_column": 56, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9341, + "from_row": 324, + "to_row": 324 + }, + "kind": "==", + "at": 9343, + "from_row": 324, + "to_row": 324 + }, + "left": { + "to_column": 52, + "from_column": 41, + "right": { + "to_column": 52, + "from_column": 46, + "right": { + "to_row": 324, + "from_column": 49, + "to_column": 52, + "kind": "text", + "at": 9334, + "from_row": 324, + "value": "/" + }, + "left": { + "to_column": 45, + "from_column": 44, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9329, + "from_row": 324, + "to_row": 324 + }, + "kind": "==", + "at": 9331, + "from_row": 324, + "to_row": 324 + }, + "left": { + "to_column": 40, + "from_column": 29, + "right": { + "to_column": 40, + "from_column": 34, + "right": { + "to_row": 324, + "from_column": 37, + "to_column": 40, + "kind": "text", + "at": 9322, + "from_row": 324, + "value": "*" + }, + "left": { + "to_column": 33, + "from_column": 32, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9317, + "from_row": 324, + "to_row": 324 + }, + "kind": "==", + "at": 9319, + "from_row": 324, + "to_row": 324 + }, + "left": { + "to_column": 28, + "from_column": 17, + "right": { + "to_column": 28, + "from_column": 22, + "right": { + "to_row": 324, + "from_column": 25, + "to_column": 28, + "kind": "text", + "at": 9310, + "from_row": 324, + "value": "-" + }, + "left": { + "to_column": 21, + "from_column": 20, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9305, + "from_row": 324, + "to_row": 324 + }, + "kind": "==", + "at": 9307, + "from_row": 324, + "to_row": 324 + }, + "left": { + "to_column": 16, + "from_column": 10, + "right": { + "to_row": 324, + "from_column": 13, + "to_column": 16, + "kind": "text", + "at": 9298, + "from_row": 324, + "value": "+" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 9293, + "from_row": 324, + "to_row": 324 + }, + "kind": "==", + "at": 9295, + "from_row": 324, + "to_row": 324 + }, + "kind": "||", + "at": 9302, + "from_row": 324, + "to_row": 324 + }, + "kind": "||", + "at": 9314, + "from_row": 324, + "to_row": 324 + }, + "kind": "||", + "at": 9326, + "from_row": 324, + "to_row": 324 + }, + "kind": "||", + "at": 9338, + "from_row": 324, + "to_row": 324 + }, + "kind": "||", + "at": 9350, + "from_row": 324, + "to_row": 325 + }, + "kind": "||", + "at": 9371, + "from_row": 325, + "to_row": 325 + }, + "kind": "||", + "at": 9384, + "from_row": 325, + "to_row": 325 + }, + "kind": "||", + "at": 9397, + "from_row": 325, + "to_row": 325 + }, + "kind": "||", + "at": 9409, + "from_row": 325, + "to_row": 325 + }, + "kind": "||", + "at": 9421, + "from_row": 325, + "to_row": 326 + }, + "kind": "||", + "at": 9442, + "from_row": 326, + "to_row": 326 + }, + "kind": "||", + "at": 9455, + "from_row": 326, + "to_row": 326 + }, + "kind": "||", + "at": 9467, + "from_row": 326, + "to_row": 326 + }, + "kind": "||", + "at": 9479, + "from_row": 326, + "to_row": 326 + }, + "kind": "||", + "at": 9491, + "from_row": 326, + "to_row": 327 + }, + "kind": "||", + "at": 9512, + "from_row": 327, + "to_row": 327 + }, + "kind": "||", + "at": 9525, + "from_row": 327, + "to_row": 327 + }, + "kind": "||", + "at": 9539, + "from_row": 327, + "to_row": 327 + }, + "kind": "||", + "at": 9552, + "from_row": 327, + "to_row": 327 + }, + "kind": "||", + "at": 9565, + "from_row": 327, + "to_row": 328 + }, + "kind": "||", + "at": 9585, + "from_row": 328, + "to_row": 328 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 40, + "statements": [ + { + "to_row": 380, + "from_column": 6, + "to_column": 39, + "kind": "call", + "at": 11472, + "from_row": 380, + "expression": { + "to_column": 39, + "from_column": 10, + "right": { + "list": [ + { + "to_column": 27, + "from_column": 22, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 11488, + "from_row": 380, + "to_row": 380 + }, + { + "to_column": 38, + "from_column": 33, + "right": "name", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11495, + "from_row": 380, + "to_row": 380 + }, + "kind": ".", + "at": 11499, + "from_row": 380, + "to_row": 380 + } + ], + "from_column": 21, + "to_row": 380, + "to_column": 39, + "kind": "(", + "at": 11487, + "from_row": 380, + "expression": { + "to_column": 21, + "from_column": 12, + "level": 1, + "function_nr": 30, + "name": "get_const", + "kind": "name", + "at": 11478, + "from_row": 380, + "to_row": 380 + } + }, + "left": { + "to_column": 9, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "lit", + "kind": "name", + "at": 11472, + "from_row": 380, + "to_row": 380 + }, + "kind": "assign", + "at": 11476, + "from_row": 380, + "to_row": 380 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 23, + "statements": [ + { + "to_row": 382, + "from_column": 8, + "to_column": 40, + "kind": "call", + "at": 11539, + "from_row": 382, + "expression": { + "to_column": 40, + "from_column": 11, + "right": { + "list": [ + { + "to_column": 28, + "from_column": 23, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 11554, + "from_row": 382, + "to_row": 382 + }, + { + "to_column": 39, + "from_column": 34, + "right": "name", + "left": { + "to_column": 34, + "from_column": 30, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11561, + "from_row": 382, + "to_row": 382 + }, + "kind": ".", + "at": 11565, + "from_row": 382, + "to_row": 382 + } + ], + "from_column": 22, + "to_row": 382, + "to_column": 40, + "kind": "(", + "at": 11553, + "from_row": 382, + "expression": { + "to_column": 22, + "from_column": 13, + "level": 1, + "function_nr": 30, + "name": "scope_var", + "kind": "name", + "at": 11544, + "from_row": 382, + "to_row": 382 + } + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "sv", + "kind": "name", + "at": 11539, + "from_row": 382, + "to_row": 382 + }, + "kind": "assign", + "at": 11542, + "from_row": 382, + "to_row": 382 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 39, + "statements": [ + { + "to_row": 384, + "from_column": 10, + "to_column": 87, + "kind": "return", + "at": 11623, + "from_row": 384, + "expression": { + "list": [ + { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11639, + "from_row": 384, + "to_row": 384 + }, + { + "list": [ + { + "left": { + "to_column": 37, + "from_column": 33, + "name": "kind", + "kind": "name", + "at": 11646, + "from_row": 384, + "to_row": 384 + }, + "right": { + "to_column": 47, + "from_column": 42, + "right": "kind", + "left": { + "to_column": 42, + "from_column": 39, + "level": 0, + "function_nr": 20, + "name": "lit", + "kind": "name", + "at": 11652, + "from_row": 384, + "to_row": 384 + }, + "kind": ".", + "at": 11655, + "from_row": 384, + "to_row": 384 + } + }, + { + "left": { + "to_column": 54, + "from_column": 49, + "name": "value", + "kind": "name", + "at": 11662, + "from_row": 384, + "to_row": 384 + }, + "right": { + "to_column": 65, + "from_column": 59, + "right": "value", + "left": { + "to_column": 59, + "from_column": 56, + "level": 0, + "function_nr": 20, + "name": "lit", + "kind": "name", + "at": 11669, + "from_row": 384, + "to_row": 384 + }, + "kind": ".", + "at": 11672, + "from_row": 384, + "to_row": 384 + } + }, + { + "left": { + "to_column": 73, + "from_column": 67, + "name": "number", + "kind": "name", + "at": 11680, + "from_row": 384, + "to_row": 384 + }, + "right": { + "to_column": 85, + "from_column": 78, + "right": "number", + "left": { + "to_column": 78, + "from_column": 75, + "level": 0, + "function_nr": 20, + "name": "lit", + "kind": "name", + "at": 11688, + "from_row": 384, + "to_row": 384 + }, + "kind": ".", + "at": 11691, + "from_row": 384, + "to_row": 384 + } + } + ], + "from_column": 32, + "to_column": 85, + "kind": "record", + "at": 11645, + "from_row": 384, + "to_row": 384 + } + ], + "from_column": 25, + "to_row": 384, + "to_column": 87, + "kind": "(", + "at": 11638, + "from_row": 384, + "expression": { + "to_column": 25, + "from_column": 17, + "level": 1, + "function_nr": 30, + "name": "copy_loc", + "kind": "name", + "at": 11630, + "from_row": 384, + "to_row": 384 + } + } + } + ], + "kind": "block", + "at": 11611, + "from_row": 383, + "to_row": 385 + } + ], + "from_column": 8, + "list": [], + "to_row": 385, + "to_column": 9, + "kind": "if", + "at": 11580, + "from_row": 383, + "expression": { + "to_column": 37, + "from_column": 23, + "right": { + "to_row": 383, + "from_column": 26, + "to_column": 37, + "kind": "!", + "at": 11598, + "from_row": 383, + "expression": { + "to_column": 37, + "from_column": 29, + "right": "closure", + "left": { + "to_column": 29, + "from_column": 27, + "level": 0, + "function_nr": 20, + "name": "sv", + "kind": "name", + "at": 11599, + "from_row": 383, + "to_row": 383 + }, + "kind": ".", + "at": 11601, + "from_row": 383, + "to_row": 383 + } + }, + "left": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 11590, + "from_row": 383, + "to_row": 383 + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "sv", + "kind": "name", + "at": 11584, + "from_row": 383, + "to_row": 383 + }, + "kind": "!=", + "at": 11587, + "from_row": 383, + "to_row": 383 + }, + "kind": "&&", + "at": 11595, + "from_row": 383, + "to_row": 383 + } + } + ], + "kind": "block", + "at": 11529, + "from_row": 381, + "to_row": 386 + } + ], + "from_column": 6, + "list": [], + "to_row": 386, + "to_column": 7, + "kind": "if", + "at": 11512, + "from_row": 381, + "expression": { + "to_column": 21, + "from_column": 14, + "right": { + "to_column": 21, + "from_column": 17, + "kind": "null", + "at": 11523, + "from_row": 381, + "to_row": 381 + }, + "left": { + "to_column": 13, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "lit", + "kind": "name", + "at": 11516, + "from_row": 381, + "to_row": 381 + }, + "kind": "!=", + "at": 11520, + "from_row": 381, + "to_row": 381 + } + }, + { + "to_row": 387, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 11725, + "from_row": 387, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11732, + "from_row": 387, + "to_row": 387 + } + } + ], + "kind": "block", + "at": 11464, + "from_row": 379, + "to_row": 388 + } + ], + "from_column": 4, + "list": [], + "to_row": 388, + "to_column": 5, + "kind": "if", + "at": 11428, + "from_row": 379, + "expression": { + "to_column": 38, + "from_column": 20, + "right": { + "to_column": 38, + "from_column": 34, + "right": { + "to_row": 379, + "from_column": 37, + "number": 0, + "to_column": 38, + "kind": "number", + "at": 11461, + "from_row": 379, + "value": "0" + }, + "left": { + "to_column": 33, + "from_column": 27, + "right": "level", + "left": { + "to_column": 27, + "from_column": 23, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11447, + "from_row": 379, + "to_row": 379 + }, + "kind": ".", + "at": 11451, + "from_row": 379, + "to_row": 379 + }, + "kind": "==", + "at": 11458, + "from_row": 379, + "to_row": 379 + }, + "left": { + "to_column": 19, + "from_column": 10, + "right": { + "to_row": 379, + "from_column": 13, + "to_column": 19, + "kind": "text", + "at": 11437, + "from_row": 379, + "value": "name" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11432, + "from_row": 379, + "to_row": 379 + }, + "kind": "==", + "at": 11434, + "from_row": 379, + "to_row": 379 + }, + "kind": "&&", + "at": 11444, + "from_row": 379, + "to_row": 379 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 79, + "statements": [ + { + "to_row": 392, + "from_column": 6, + "to_column": 22, + "kind": "call", + "at": 11862, + "from_row": 392, + "expression": { + "to_column": 22, + "from_column": 11, + "right": { + "to_column": 22, + "from_column": 17, + "right": "left", + "left": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11869, + "from_row": 392, + "to_row": 392 + }, + "kind": ".", + "at": 11873, + "from_row": 392, + "to_row": 392 + }, + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 11862, + "from_row": 392, + "to_row": 392 + }, + "kind": "assign", + "at": 11867, + "from_row": 392, + "to_row": 392 + } + }, + { + "to_row": 393, + "from_column": 6, + "to_column": 24, + "kind": "call", + "at": 11885, + "from_row": 393, + "expression": { + "to_column": 24, + "from_column": 12, + "right": { + "to_column": 24, + "from_column": 18, + "right": "right", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 11893, + "from_row": 393, + "to_row": 393 + }, + "kind": ".", + "at": 11897, + "from_row": 393, + "to_row": 393 + }, + "left": { + "to_column": 11, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 11885, + "from_row": 393, + "to_row": 393 + }, + "kind": "assign", + "at": 11891, + "from_row": 393, + "to_row": 393 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 92, + "statements": [ + { + "to_row": 395, + "from_column": 8, + "to_column": 24, + "kind": "call", + "at": 12006, + "from_row": 395, + "expression": { + "to_column": 24, + "from_column": 11, + "right": { + "to_column": 24, + "from_column": 17, + "right": "number", + "left": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 12011, + "from_row": 395, + "to_row": 395 + }, + "kind": ".", + "at": 12015, + "from_row": 395, + "to_row": 395 + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 12006, + "from_row": 395, + "to_row": 395 + }, + "kind": "assign", + "at": 12009, + "from_row": 395, + "to_row": 395 + } + }, + { + "to_row": 396, + "from_column": 8, + "to_column": 25, + "kind": "call", + "at": 12031, + "from_row": 396, + "expression": { + "to_column": 25, + "from_column": 11, + "right": { + "to_column": 25, + "from_column": 18, + "right": "number", + "left": { + "to_column": 18, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 12036, + "from_row": 396, + "to_row": 396 + }, + "kind": ".", + "at": 12041, + "from_row": 396, + "to_row": 396 + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 12031, + "from_row": 396, + "to_row": 396 + }, + "kind": "assign", + "at": 12034, + "from_row": 396, + "to_row": 396 + } + }, + { + "then": [ + { + "to_row": 397, + "from_column": 24, + "to_column": 47, + "kind": "call", + "at": 12073, + "from_row": 397, + "expression": { + "to_column": 47, + "from_column": 27, + "right": { + "list": [ + { + "to_column": 46, + "from_column": 40, + "right": "value", + "left": { + "to_column": 40, + "from_column": 36, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 12085, + "from_row": 397, + "to_row": 397 + }, + "kind": ".", + "at": 12089, + "from_row": 397, + "to_row": 397 + } + ], + "from_column": 35, + "to_row": 397, + "to_column": 47, + "kind": "(", + "at": 12084, + "from_row": 397, + "expression": { + "to_column": 35, + "from_column": 29, + "level": -1, + "name": "number", + "kind": "name", + "at": 12078, + "from_row": 397, + "to_row": 397 + } + }, + "left": { + "to_column": 26, + "from_column": 24, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 12073, + "from_row": 397, + "to_row": 397 + }, + "kind": "assign", + "at": 12076, + "from_row": 397, + "to_row": 397 + } + } + ], + "from_column": 8, + "list": [], + "to_row": 397, + "to_column": 47, + "kind": "if", + "at": 12057, + "from_row": 397, + "expression": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 12067, + "from_row": 397, + "to_row": 397 + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 12061, + "from_row": 397, + "to_row": 397 + }, + "kind": "==", + "at": 12064, + "from_row": 397, + "to_row": 397 + } + }, + { + "then": [ + { + "to_row": 398, + "from_column": 24, + "to_column": 48, + "kind": "call", + "at": 12121, + "from_row": 398, + "expression": { + "to_column": 48, + "from_column": 27, + "right": { + "list": [ + { + "to_column": 47, + "from_column": 41, + "right": "value", + "left": { + "to_column": 41, + "from_column": 36, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 12133, + "from_row": 398, + "to_row": 398 + }, + "kind": ".", + "at": 12138, + "from_row": 398, + "to_row": 398 + } + ], + "from_column": 35, + "to_row": 398, + "to_column": 48, + "kind": "(", + "at": 12132, + "from_row": 398, + "expression": { + "to_column": 35, + "from_column": 29, + "level": -1, + "name": "number", + "kind": "name", + "at": 12126, + "from_row": 398, + "to_row": 398 + } + }, + "left": { + "to_column": 26, + "from_column": 24, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 12121, + "from_row": 398, + "to_row": 398 + }, + "kind": "assign", + "at": 12124, + "from_row": 398, + "to_row": 398 + } + } + ], + "from_column": 8, + "list": [], + "to_row": 398, + "to_column": 48, + "kind": "if", + "at": 12105, + "from_row": 398, + "expression": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 12115, + "from_row": 398, + "to_row": 398 + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 12109, + "from_row": 398, + "to_row": 398 + }, + "kind": "==", + "at": 12112, + "from_row": 398, + "to_row": 398 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 22, + "statements": [ + { + "then": [ + { + "to_row": 400, + "from_column": 23, + "to_column": 45, + "kind": "return", + "at": 12193, + "from_row": 400, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 40, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 12210, + "from_row": 400, + "to_row": 400 + } + ], + "from_column": 39, + "to_row": 400, + "to_column": 45, + "kind": "(", + "at": 12209, + "from_row": 400, + "expression": { + "to_column": 39, + "from_column": 30, + "level": 1, + "function_nr": 30, + "name": "make_null", + "kind": "name", + "at": 12200, + "from_row": 400, + "to_row": 400 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 400, + "to_column": 45, + "kind": "if", + "at": 12180, + "from_row": 400, + "expression": { + "to_column": 21, + "from_column": 17, + "right": { + "to_row": 400, + "from_column": 20, + "number": 0, + "to_column": 21, + "kind": "number", + "at": 12190, + "from_row": 400, + "value": "0" + }, + "left": { + "to_column": 16, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 12184, + "from_row": 400, + "to_row": 400 + }, + "kind": "==", + "at": 12187, + "from_row": 400, + "to_row": 400 + } + } + ], + "kind": "block", + "at": 12168, + "from_row": 399, + "to_row": 401 + } + ], + "from_column": 8, + "list": [], + "to_row": 401, + "to_column": 9, + "kind": "if", + "at": 12154, + "from_row": 399, + "expression": { + "to_column": 20, + "from_column": 14, + "right": { + "to_row": 399, + "from_column": 17, + "to_column": 20, + "kind": "text", + "at": 12163, + "from_row": 399, + "value": "/" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12158, + "from_row": 399, + "to_row": 399 + }, + "kind": "==", + "at": 12160, + "from_row": 399, + "to_row": 399 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 22, + "statements": [ + { + "then": [ + { + "to_row": 403, + "from_column": 23, + "to_column": 45, + "kind": "return", + "at": 12273, + "from_row": 403, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 40, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 12290, + "from_row": 403, + "to_row": 403 + } + ], + "from_column": 39, + "to_row": 403, + "to_column": 45, + "kind": "(", + "at": 12289, + "from_row": 403, + "expression": { + "to_column": 39, + "from_column": 30, + "level": 1, + "function_nr": 30, + "name": "make_null", + "kind": "name", + "at": 12280, + "from_row": 403, + "to_row": 403 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 403, + "to_column": 45, + "kind": "if", + "at": 12260, + "from_row": 403, + "expression": { + "to_column": 21, + "from_column": 17, + "right": { + "to_row": 403, + "from_column": 20, + "number": 0, + "to_column": 21, + "kind": "number", + "at": 12270, + "from_row": 403, + "value": "0" + }, + "left": { + "to_column": 16, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 12264, + "from_row": 403, + "to_row": 403 + }, + "kind": "==", + "at": 12267, + "from_row": 403, + "to_row": 403 + } + } + ], + "kind": "block", + "at": 12248, + "from_row": 402, + "to_row": 404 + } + ], + "from_column": 8, + "list": [], + "to_row": 404, + "to_column": 9, + "kind": "if", + "at": 12234, + "from_row": 402, + "expression": { + "to_column": 20, + "from_column": 14, + "right": { + "to_row": 402, + "from_column": 17, + "to_column": 20, + "kind": "text", + "at": 12243, + "from_row": 402, + "value": "%" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12238, + "from_row": 402, + "to_row": 402 + }, + "kind": "==", + "at": 12240, + "from_row": 402, + "to_row": 402 + } + }, + { + "to_row": 405, + "from_column": 8, + "to_column": 21, + "kind": "call", + "at": 12314, + "from_row": 405, + "expression": { + "to_column": 21, + "from_column": 15, + "right": { + "to_column": 21, + "from_column": 17, + "kind": "null", + "at": 12323, + "from_row": 405, + "to_row": 405 + }, + "left": { + "to_column": 14, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "result", + "kind": "name", + "at": 12314, + "from_row": 405, + "to_row": 405 + }, + "kind": "assign", + "at": 12321, + "from_row": 405, + "to_row": 405 + } + }, + { + "then": [ + { + "to_row": 406, + "from_column": 22, + "to_column": 38, + "kind": "call", + "at": 12350, + "from_row": 406, + "expression": { + "to_column": 38, + "from_column": 29, + "right": { + "to_column": 38, + "from_column": 34, + "right": { + "to_column": 38, + "from_column": 36, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 12364, + "from_row": 406, + "to_row": 406 + }, + "left": { + "to_column": 33, + "from_column": 31, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 12359, + "from_row": 406, + "to_row": 406 + }, + "kind": "+", + "at": 12362, + "from_row": 406, + "to_row": 406 + }, + "left": { + "to_column": 28, + "from_column": 22, + "level": 0, + "function_nr": 20, + "name": "result", + "kind": "name", + "at": 12350, + "from_row": 406, + "to_row": 406 + }, + "kind": "assign", + "at": 12357, + "from_row": 406, + "to_row": 406 + } + } + ], + "from_column": 8, + "list": [ + { + "then": [ + { + "to_row": 407, + "from_column": 27, + "to_column": 43, + "kind": "call", + "at": 12394, + "from_row": 407, + "expression": { + "to_column": 43, + "from_column": 34, + "right": { + "to_column": 43, + "from_column": 39, + "right": { + "to_column": 43, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 12408, + "from_row": 407, + "to_row": 407 + }, + "left": { + "to_column": 38, + "from_column": 36, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 12403, + "from_row": 407, + "to_row": 407 + }, + "kind": "-", + "at": 12406, + "from_row": 407, + "to_row": 407 + }, + "left": { + "to_column": 33, + "from_column": 27, + "level": 0, + "function_nr": 20, + "name": "result", + "kind": "name", + "at": 12394, + "from_row": 407, + "to_row": 407 + }, + "kind": "assign", + "at": 12401, + "from_row": 407, + "to_row": 407 + } + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_row": 408, + "from_column": 27, + "to_column": 43, + "kind": "call", + "at": 12438, + "from_row": 408, + "expression": { + "to_column": 43, + "from_column": 34, + "right": { + "to_column": 43, + "from_column": 39, + "right": { + "to_column": 43, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 12452, + "from_row": 408, + "to_row": 408 + }, + "left": { + "to_column": 38, + "from_column": 36, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 12447, + "from_row": 408, + "to_row": 408 + }, + "kind": "*", + "at": 12450, + "from_row": 408, + "to_row": 408 + }, + "left": { + "to_column": 33, + "from_column": 27, + "level": 0, + "function_nr": 20, + "name": "result", + "kind": "name", + "at": 12438, + "from_row": 408, + "to_row": 408 + }, + "kind": "assign", + "at": 12445, + "from_row": 408, + "to_row": 408 + } + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_row": 409, + "from_column": 27, + "to_column": 43, + "kind": "call", + "at": 12482, + "from_row": 409, + "expression": { + "to_column": 43, + "from_column": 34, + "right": { + "to_column": 43, + "from_column": 39, + "right": { + "to_column": 43, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 12496, + "from_row": 409, + "to_row": 409 + }, + "left": { + "to_column": 38, + "from_column": 36, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 12491, + "from_row": 409, + "to_row": 409 + }, + "kind": "/", + "at": 12494, + "from_row": 409, + "to_row": 409 + }, + "left": { + "to_column": 33, + "from_column": 27, + "level": 0, + "function_nr": 20, + "name": "result", + "kind": "name", + "at": 12482, + "from_row": 409, + "to_row": 409 + }, + "kind": "assign", + "at": 12489, + "from_row": 409, + "to_row": 409 + } + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_row": 410, + "from_column": 27, + "to_column": 43, + "kind": "call", + "at": 12526, + "from_row": 410, + "expression": { + "to_column": 43, + "from_column": 34, + "right": { + "to_column": 43, + "from_column": 39, + "right": { + "to_column": 43, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 12540, + "from_row": 410, + "to_row": 410 + }, + "left": { + "to_column": 38, + "from_column": 36, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 12535, + "from_row": 410, + "to_row": 410 + }, + "kind": "%", + "at": 12538, + "from_row": 410, + "to_row": 410 + }, + "left": { + "to_column": 33, + "from_column": 27, + "level": 0, + "function_nr": 20, + "name": "result", + "kind": "name", + "at": 12526, + "from_row": 410, + "to_row": 410 + }, + "kind": "assign", + "at": 12533, + "from_row": 410, + "to_row": 410 + } + } + ], + "from_column": 13, + "list": [ + { + "then": [ + { + "to_row": 411, + "from_column": 28, + "to_column": 45, + "kind": "call", + "at": 12571, + "from_row": 411, + "expression": { + "to_column": 45, + "from_column": 35, + "right": { + "to_column": 45, + "from_column": 40, + "right": { + "to_column": 45, + "from_column": 43, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 12586, + "from_row": 411, + "to_row": 411 + }, + "left": { + "to_column": 39, + "from_column": 37, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 12580, + "from_row": 411, + "to_row": 411 + }, + "kind": "**", + "at": 12583, + "from_row": 411, + "to_row": 411 + }, + "left": { + "to_column": 34, + "from_column": 28, + "level": 0, + "function_nr": 20, + "name": "result", + "kind": "name", + "at": 12571, + "from_row": 411, + "to_row": 411 + }, + "kind": "assign", + "at": 12578, + "from_row": 411, + "to_row": 411 + } + } + ], + "from_column": 13, + "list": [], + "to_row": 411, + "to_column": 45, + "kind": "if", + "at": 12556, + "from_row": 411, + "expression": { + "to_column": 26, + "from_column": 19, + "right": { + "to_row": 411, + "from_column": 22, + "to_column": 26, + "kind": "text", + "at": 12565, + "from_row": 411, + "value": "**" + }, + "left": { + "to_column": 18, + "from_column": 17, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12560, + "from_row": 411, + "to_row": 411 + }, + "kind": "==", + "at": 12562, + "from_row": 411, + "to_row": 411 + } + } + ], + "to_row": 411, + "to_column": 45, + "kind": "if", + "at": 12512, + "from_row": 410, + "expression": { + "to_column": 25, + "from_column": 19, + "right": { + "to_row": 410, + "from_column": 22, + "to_column": 25, + "kind": "text", + "at": 12521, + "from_row": 410, + "value": "%" + }, + "left": { + "to_column": 18, + "from_column": 17, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12516, + "from_row": 410, + "to_row": 410 + }, + "kind": "==", + "at": 12518, + "from_row": 410, + "to_row": 410 + } + } + ], + "to_row": 411, + "to_column": 45, + "kind": "if", + "at": 12468, + "from_row": 409, + "expression": { + "to_column": 25, + "from_column": 19, + "right": { + "to_row": 409, + "from_column": 22, + "to_column": 25, + "kind": "text", + "at": 12477, + "from_row": 409, + "value": "/" + }, + "left": { + "to_column": 18, + "from_column": 17, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12472, + "from_row": 409, + "to_row": 409 + }, + "kind": "==", + "at": 12474, + "from_row": 409, + "to_row": 409 + } + } + ], + "to_row": 411, + "to_column": 45, + "kind": "if", + "at": 12424, + "from_row": 408, + "expression": { + "to_column": 25, + "from_column": 19, + "right": { + "to_row": 408, + "from_column": 22, + "to_column": 25, + "kind": "text", + "at": 12433, + "from_row": 408, + "value": "*" + }, + "left": { + "to_column": 18, + "from_column": 17, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12428, + "from_row": 408, + "to_row": 408 + }, + "kind": "==", + "at": 12430, + "from_row": 408, + "to_row": 408 + } + } + ], + "to_row": 411, + "to_column": 45, + "kind": "if", + "at": 12380, + "from_row": 407, + "expression": { + "to_column": 25, + "from_column": 19, + "right": { + "to_row": 407, + "from_column": 22, + "to_column": 25, + "kind": "text", + "at": 12389, + "from_row": 407, + "value": "-" + }, + "left": { + "to_column": 18, + "from_column": 17, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12384, + "from_row": 407, + "to_row": 407 + }, + "kind": "==", + "at": 12386, + "from_row": 407, + "to_row": 407 + } + } + ], + "to_row": 411, + "to_column": 45, + "kind": "if", + "at": 12336, + "from_row": 406, + "expression": { + "to_column": 20, + "from_column": 14, + "right": { + "to_row": 406, + "from_column": 17, + "to_column": 20, + "kind": "text", + "at": 12345, + "from_row": 406, + "value": "+" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12340, + "from_row": 406, + "to_row": 406 + }, + "kind": "==", + "at": 12342, + "from_row": 406, + "to_row": 406 + } + }, + { + "then": [ + { + "to_row": 412, + "from_column": 28, + "to_column": 50, + "kind": "return", + "at": 12617, + "from_row": 412, + "expression": { + "list": [ + { + "to_column": 49, + "from_column": 45, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 12634, + "from_row": 412, + "to_row": 412 + } + ], + "from_column": 44, + "to_row": 412, + "to_column": 50, + "kind": "(", + "at": 12633, + "from_row": 412, + "expression": { + "to_column": 44, + "from_column": 35, + "level": 1, + "function_nr": 30, + "name": "make_null", + "kind": "name", + "at": 12624, + "from_row": 412, + "to_row": 412 + } + } + } + ], + "from_column": 8, + "list": [], + "to_row": 412, + "to_column": 50, + "kind": "if", + "at": 12597, + "from_row": 412, + "expression": { + "to_column": 26, + "from_column": 19, + "right": { + "to_column": 26, + "from_column": 22, + "kind": "null", + "at": 12611, + "from_row": 412, + "to_row": 412 + }, + "left": { + "to_column": 18, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "result", + "kind": "name", + "at": 12601, + "from_row": 412, + "to_row": 412 + }, + "kind": "==", + "at": 12608, + "from_row": 412, + "to_row": 412 + } + }, + { + "to_row": 413, + "from_column": 8, + "to_column": 40, + "kind": "return", + "at": 12648, + "from_row": 413, + "expression": { + "list": [ + { + "to_column": 33, + "from_column": 27, + "level": 0, + "function_nr": 20, + "name": "result", + "kind": "name", + "at": 12667, + "from_row": 413, + "to_row": 413 + }, + { + "to_column": 39, + "from_column": 35, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 12675, + "from_row": 413, + "to_row": 413 + } + ], + "from_column": 26, + "to_row": 413, + "to_column": 40, + "kind": "(", + "at": 12666, + "from_row": 413, + "expression": { + "to_column": 26, + "from_column": 15, + "level": 1, + "function_nr": 30, + "name": "make_number", + "kind": "name", + "at": 12655, + "from_row": 413, + "to_row": 413 + } + } + } + ], + "kind": "block", + "at": 11996, + "from_row": 394, + "to_row": 414 + } + ], + "from_column": 6, + "list": [], + "to_row": 414, + "to_column": 7, + "kind": "if", + "at": 11910, + "from_row": 394, + "expression": { + "to_column": 90, + "from_column": 65, + "right": { + "to_column": 90, + "from_column": 79, + "right": { + "to_row": 394, + "from_column": 82, + "to_column": 90, + "kind": "text", + "at": 11986, + "from_row": 394, + "value": "number" + }, + "left": { + "to_column": 78, + "from_column": 73, + "right": "kind", + "left": { + "to_column": 73, + "from_column": 68, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 11972, + "from_row": 394, + "to_row": 394 + }, + "kind": ".", + "at": 11977, + "from_row": 394, + "to_row": 394 + }, + "kind": "==", + "at": 11983, + "from_row": 394, + "to_row": 394 + }, + "left": { + "to_column": 64, + "from_column": 40, + "right": { + "to_column": 64, + "from_column": 53, + "right": { + "to_row": 394, + "from_column": 56, + "to_column": 64, + "kind": "text", + "at": 11960, + "from_row": 394, + "value": "number" + }, + "left": { + "to_column": 52, + "from_column": 47, + "right": "kind", + "left": { + "to_column": 47, + "from_column": 43, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 11947, + "from_row": 394, + "to_row": 394 + }, + "kind": ".", + "at": 11951, + "from_row": 394, + "to_row": 394 + }, + "kind": "==", + "at": 11957, + "from_row": 394, + "to_row": 394 + }, + "left": { + "to_column": 39, + "from_column": 23, + "right": { + "to_column": 39, + "from_column": 32, + "right": { + "to_column": 39, + "from_column": 35, + "kind": "null", + "at": 11939, + "from_row": 394, + "to_row": 394 + }, + "left": { + "to_column": 31, + "from_column": 26, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 11930, + "from_row": 394, + "to_row": 394 + }, + "kind": "!=", + "at": 11936, + "from_row": 394, + "to_row": 394 + }, + "left": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 11922, + "from_row": 394, + "to_row": 394 + }, + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 11914, + "from_row": 394, + "to_row": 394 + }, + "kind": "!=", + "at": 11919, + "from_row": 394, + "to_row": 394 + }, + "kind": "&&", + "at": 11927, + "from_row": 394, + "to_row": 394 + }, + "kind": "&&", + "at": 11944, + "from_row": 394, + "to_row": 394 + }, + "kind": "&&", + "at": 11969, + "from_row": 394, + "to_row": 394 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 100, + "statements": [ + { + "to_row": 417, + "from_column": 8, + "to_column": 56, + "kind": "return", + "at": 12820, + "from_row": 417, + "expression": { + "list": [ + { + "to_column": 49, + "from_column": 36, + "right": { + "to_column": 49, + "from_column": 43, + "right": "value", + "left": { + "to_column": 43, + "from_column": 38, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 12850, + "from_row": 417, + "to_row": 417 + }, + "kind": ".", + "at": 12855, + "from_row": 417, + "to_row": 417 + }, + "left": { + "to_column": 35, + "from_column": 29, + "right": "value", + "left": { + "to_column": 29, + "from_column": 25, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 12837, + "from_row": 417, + "to_row": 417 + }, + "kind": ".", + "at": 12841, + "from_row": 417, + "to_row": 417 + }, + "kind": "+", + "at": 12848, + "from_row": 417, + "to_row": 417 + }, + { + "to_column": 55, + "from_column": 51, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 12863, + "from_row": 417, + "to_row": 417 + } + ], + "from_column": 24, + "to_row": 417, + "to_column": 56, + "kind": "(", + "at": 12836, + "from_row": 417, + "expression": { + "to_column": 24, + "from_column": 15, + "level": 1, + "function_nr": 30, + "name": "make_text", + "kind": "name", + "at": 12827, + "from_row": 417, + "to_row": 417 + } + } + } + ], + "kind": "block", + "at": 12810, + "from_row": 416, + "to_row": 418 + } + ], + "from_column": 6, + "list": [], + "to_row": 418, + "to_column": 7, + "kind": "if", + "at": 12716, + "from_row": 416, + "expression": { + "to_column": 98, + "from_column": 75, + "right": { + "to_column": 98, + "from_column": 89, + "right": { + "to_row": 416, + "from_column": 92, + "to_column": 98, + "kind": "text", + "at": 12802, + "from_row": 416, + "value": "text" + }, + "left": { + "to_column": 88, + "from_column": 83, + "right": "kind", + "left": { + "to_column": 83, + "from_column": 78, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 12788, + "from_row": 416, + "to_row": 416 + }, + "kind": ".", + "at": 12793, + "from_row": 416, + "to_row": 416 + }, + "kind": "==", + "at": 12799, + "from_row": 416, + "to_row": 416 + }, + "left": { + "to_column": 74, + "from_column": 52, + "right": { + "to_column": 74, + "from_column": 65, + "right": { + "to_row": 416, + "from_column": 68, + "to_column": 74, + "kind": "text", + "at": 12778, + "from_row": 416, + "value": "text" + }, + "left": { + "to_column": 64, + "from_column": 59, + "right": "kind", + "left": { + "to_column": 59, + "from_column": 55, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 12765, + "from_row": 416, + "to_row": 416 + }, + "kind": ".", + "at": 12769, + "from_row": 416, + "to_row": 416 + }, + "kind": "==", + "at": 12775, + "from_row": 416, + "to_row": 416 + }, + "left": { + "to_column": 51, + "from_column": 35, + "right": { + "to_column": 51, + "from_column": 44, + "right": { + "to_column": 51, + "from_column": 47, + "kind": "null", + "at": 12757, + "from_row": 416, + "to_row": 416 + }, + "left": { + "to_column": 43, + "from_column": 38, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 12748, + "from_row": 416, + "to_row": 416 + }, + "kind": "!=", + "at": 12754, + "from_row": 416, + "to_row": 416 + }, + "left": { + "to_column": 34, + "from_column": 19, + "right": { + "to_column": 34, + "from_column": 27, + "right": { + "to_column": 34, + "from_column": 30, + "kind": "null", + "at": 12740, + "from_row": 416, + "to_row": 416 + }, + "left": { + "to_column": 26, + "from_column": 22, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 12732, + "from_row": 416, + "to_row": 416 + }, + "kind": "!=", + "at": 12737, + "from_row": 416, + "to_row": 416 + }, + "left": { + "to_column": 18, + "from_column": 12, + "right": { + "to_row": 416, + "from_column": 15, + "to_column": 18, + "kind": "text", + "at": 12725, + "from_row": 416, + "value": "+" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12720, + "from_row": 416, + "to_row": 416 + }, + "kind": "==", + "at": 12722, + "from_row": 416, + "to_row": 416 + }, + "kind": "&&", + "at": 12729, + "from_row": 416, + "to_row": 416 + }, + "kind": "&&", + "at": 12745, + "from_row": 416, + "to_row": 416 + }, + "kind": "&&", + "at": 12762, + "from_row": 416, + "to_row": 416 + }, + "kind": "&&", + "at": 12785, + "from_row": 416, + "to_row": 416 + } + }, + { + "to_row": 419, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 12883, + "from_row": 419, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 12890, + "from_row": 419, + "to_row": 419 + } + } + ], + "kind": "block", + "at": 11854, + "from_row": 391, + "to_row": 420 + } + ], + "from_column": 4, + "list": [], + "to_row": 420, + "to_column": 5, + "kind": "if", + "at": 11779, + "from_row": 391, + "expression": { + "to_column": 77, + "from_column": 65, + "right": { + "to_column": 77, + "from_column": 70, + "right": { + "to_row": 391, + "from_column": 73, + "to_column": 77, + "kind": "text", + "at": 11848, + "from_row": 391, + "value": "**" + }, + "left": { + "to_column": 69, + "from_column": 68, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11843, + "from_row": 391, + "to_row": 391 + }, + "kind": "==", + "at": 11845, + "from_row": 391, + "to_row": 391 + }, + "left": { + "to_column": 64, + "from_column": 53, + "right": { + "to_column": 64, + "from_column": 58, + "right": { + "to_row": 391, + "from_column": 61, + "to_column": 64, + "kind": "text", + "at": 11836, + "from_row": 391, + "value": "%" + }, + "left": { + "to_column": 57, + "from_column": 56, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11831, + "from_row": 391, + "to_row": 391 + }, + "kind": "==", + "at": 11833, + "from_row": 391, + "to_row": 391 + }, + "left": { + "to_column": 52, + "from_column": 41, + "right": { + "to_column": 52, + "from_column": 46, + "right": { + "to_row": 391, + "from_column": 49, + "to_column": 52, + "kind": "text", + "at": 11824, + "from_row": 391, + "value": "/" + }, + "left": { + "to_column": 45, + "from_column": 44, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11819, + "from_row": 391, + "to_row": 391 + }, + "kind": "==", + "at": 11821, + "from_row": 391, + "to_row": 391 + }, + "left": { + "to_column": 40, + "from_column": 29, + "right": { + "to_column": 40, + "from_column": 34, + "right": { + "to_row": 391, + "from_column": 37, + "to_column": 40, + "kind": "text", + "at": 11812, + "from_row": 391, + "value": "*" + }, + "left": { + "to_column": 33, + "from_column": 32, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11807, + "from_row": 391, + "to_row": 391 + }, + "kind": "==", + "at": 11809, + "from_row": 391, + "to_row": 391 + }, + "left": { + "to_column": 28, + "from_column": 17, + "right": { + "to_column": 28, + "from_column": 22, + "right": { + "to_row": 391, + "from_column": 25, + "to_column": 28, + "kind": "text", + "at": 11800, + "from_row": 391, + "value": "-" + }, + "left": { + "to_column": 21, + "from_column": 20, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11795, + "from_row": 391, + "to_row": 391 + }, + "kind": "==", + "at": 11797, + "from_row": 391, + "to_row": 391 + }, + "left": { + "to_column": 16, + "from_column": 10, + "right": { + "to_row": 391, + "from_column": 13, + "to_column": 16, + "kind": "text", + "at": 11788, + "from_row": 391, + "value": "+" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 11783, + "from_row": 391, + "to_row": 391 + }, + "kind": "==", + "at": 11785, + "from_row": 391, + "to_row": 391 + }, + "kind": "||", + "at": 11792, + "from_row": 391, + "to_row": 391 + }, + "kind": "||", + "at": 11804, + "from_row": 391, + "to_row": 391 + }, + "kind": "||", + "at": 11816, + "from_row": 391, + "to_row": 391 + }, + "kind": "||", + "at": 11828, + "from_row": 391, + "to_row": 391 + }, + "kind": "||", + "at": 11840, + "from_row": 391, + "to_row": 391 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 82, + "statements": [ + { + "to_row": 424, + "from_column": 6, + "to_column": 22, + "kind": "call", + "at": 13018, + "from_row": 424, + "expression": { + "to_column": 22, + "from_column": 11, + "right": { + "to_column": 22, + "from_column": 17, + "right": "left", + "left": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 13025, + "from_row": 424, + "to_row": 424 + }, + "kind": ".", + "at": 13029, + "from_row": 424, + "to_row": 424 + }, + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 13018, + "from_row": 424, + "to_row": 424 + }, + "kind": "assign", + "at": 13023, + "from_row": 424, + "to_row": 424 + } + }, + { + "to_row": 425, + "from_column": 6, + "to_column": 24, + "kind": "call", + "at": 13041, + "from_row": 425, + "expression": { + "to_column": 24, + "from_column": 12, + "right": { + "to_column": 24, + "from_column": 18, + "right": "right", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 13049, + "from_row": 425, + "to_row": 425 + }, + "kind": ".", + "at": 13053, + "from_row": 425, + "to_row": 425 + }, + "left": { + "to_column": 11, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 13041, + "from_row": 425, + "to_row": 425 + }, + "kind": "assign", + "at": 13047, + "from_row": 425, + "to_row": 425 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 41, + "statements": [ + { + "then": [ + { + "to_column": 9, + "from_column": 61, + "statements": [ + { + "to_row": 428, + "from_column": 10, + "to_column": 26, + "kind": "call", + "at": 13176, + "from_row": 428, + "expression": { + "to_column": 26, + "from_column": 13, + "right": { + "to_column": 26, + "from_column": 19, + "right": "number", + "left": { + "to_column": 19, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 13181, + "from_row": 428, + "to_row": 428 + }, + "kind": ".", + "at": 13185, + "from_row": 428, + "to_row": 428 + }, + "left": { + "to_column": 12, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 13176, + "from_row": 428, + "to_row": 428 + }, + "kind": "assign", + "at": 13179, + "from_row": 428, + "to_row": 428 + } + }, + { + "to_row": 429, + "from_column": 10, + "to_column": 27, + "kind": "call", + "at": 13203, + "from_row": 429, + "expression": { + "to_column": 27, + "from_column": 13, + "right": { + "to_column": 27, + "from_column": 20, + "right": "number", + "left": { + "to_column": 20, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 13208, + "from_row": 429, + "to_row": 429 + }, + "kind": ".", + "at": 13213, + "from_row": 429, + "to_row": 429 + }, + "left": { + "to_column": 12, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 13203, + "from_row": 429, + "to_row": 429 + }, + "kind": "assign", + "at": 13206, + "from_row": 429, + "to_row": 429 + } + }, + { + "then": [ + { + "to_row": 430, + "from_column": 26, + "to_column": 49, + "kind": "call", + "at": 13247, + "from_row": 430, + "expression": { + "to_column": 49, + "from_column": 29, + "right": { + "list": [ + { + "to_column": 48, + "from_column": 42, + "right": "value", + "left": { + "to_column": 42, + "from_column": 38, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 13259, + "from_row": 430, + "to_row": 430 + }, + "kind": ".", + "at": 13263, + "from_row": 430, + "to_row": 430 + } + ], + "from_column": 37, + "to_row": 430, + "to_column": 49, + "kind": "(", + "at": 13258, + "from_row": 430, + "expression": { + "to_column": 37, + "from_column": 31, + "level": -1, + "name": "number", + "kind": "name", + "at": 13252, + "from_row": 430, + "to_row": 430 + } + }, + "left": { + "to_column": 28, + "from_column": 26, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 13247, + "from_row": 430, + "to_row": 430 + }, + "kind": "assign", + "at": 13250, + "from_row": 430, + "to_row": 430 + } + } + ], + "from_column": 10, + "list": [], + "to_row": 430, + "to_column": 49, + "kind": "if", + "at": 13231, + "from_row": 430, + "expression": { + "to_column": 24, + "from_column": 17, + "right": { + "to_column": 24, + "from_column": 20, + "kind": "null", + "at": 13241, + "from_row": 430, + "to_row": 430 + }, + "left": { + "to_column": 16, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 13235, + "from_row": 430, + "to_row": 430 + }, + "kind": "==", + "at": 13238, + "from_row": 430, + "to_row": 430 + } + }, + { + "then": [ + { + "to_row": 431, + "from_column": 26, + "to_column": 50, + "kind": "call", + "at": 13297, + "from_row": 431, + "expression": { + "to_column": 50, + "from_column": 29, + "right": { + "list": [ + { + "to_column": 49, + "from_column": 43, + "right": "value", + "left": { + "to_column": 43, + "from_column": 38, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 13309, + "from_row": 431, + "to_row": 431 + }, + "kind": ".", + "at": 13314, + "from_row": 431, + "to_row": 431 + } + ], + "from_column": 37, + "to_row": 431, + "to_column": 50, + "kind": "(", + "at": 13308, + "from_row": 431, + "expression": { + "to_column": 37, + "from_column": 31, + "level": -1, + "name": "number", + "kind": "name", + "at": 13302, + "from_row": 431, + "to_row": 431 + } + }, + "left": { + "to_column": 28, + "from_column": 26, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 13297, + "from_row": 431, + "to_row": 431 + }, + "kind": "assign", + "at": 13300, + "from_row": 431, + "to_row": 431 + } + } + ], + "from_column": 10, + "list": [], + "to_row": 431, + "to_column": 50, + "kind": "if", + "at": 13281, + "from_row": 431, + "expression": { + "to_column": 24, + "from_column": 17, + "right": { + "to_column": 24, + "from_column": 20, + "kind": "null", + "at": 13291, + "from_row": 431, + "to_row": 431 + }, + "left": { + "to_column": 16, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 13285, + "from_row": 431, + "to_row": 431 + }, + "kind": "==", + "at": 13288, + "from_row": 431, + "to_row": 431 + } + }, + { + "then": [ + { + "to_row": 432, + "from_column": 25, + "to_column": 57, + "kind": "return", + "at": 13347, + "from_row": 432, + "expression": { + "list": [ + { + "to_column": 50, + "from_column": 45, + "right": { + "to_column": 50, + "from_column": 48, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 13370, + "from_row": 432, + "to_row": 432 + }, + "left": { + "to_column": 44, + "from_column": 42, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 13364, + "from_row": 432, + "to_row": 432 + }, + "kind": "==", + "at": 13367, + "from_row": 432, + "to_row": 432 + }, + { + "to_column": 56, + "from_column": 52, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 13374, + "from_row": 432, + "to_row": 432 + } + ], + "from_column": 41, + "to_row": 432, + "to_column": 57, + "kind": "(", + "at": 13363, + "from_row": 432, + "expression": { + "to_column": 41, + "from_column": 32, + "level": 1, + "function_nr": 30, + "name": "make_bool", + "kind": "name", + "at": 13354, + "from_row": 432, + "to_row": 432 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 432, + "to_column": 57, + "kind": "if", + "at": 13332, + "from_row": 432, + "expression": { + "to_column": 23, + "from_column": 16, + "right": { + "to_row": 432, + "from_column": 19, + "to_column": 23, + "kind": "text", + "at": 13341, + "from_row": 432, + "value": "==" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13336, + "from_row": 432, + "to_row": 432 + }, + "kind": "==", + "at": 13338, + "from_row": 432, + "to_row": 432 + } + }, + { + "then": [ + { + "to_row": 433, + "from_column": 25, + "to_column": 57, + "kind": "return", + "at": 13405, + "from_row": 433, + "expression": { + "list": [ + { + "to_column": 50, + "from_column": 45, + "right": { + "to_column": 50, + "from_column": 48, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 13428, + "from_row": 433, + "to_row": 433 + }, + "left": { + "to_column": 44, + "from_column": 42, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 13422, + "from_row": 433, + "to_row": 433 + }, + "kind": "!=", + "at": 13425, + "from_row": 433, + "to_row": 433 + }, + { + "to_column": 56, + "from_column": 52, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 13432, + "from_row": 433, + "to_row": 433 + } + ], + "from_column": 41, + "to_row": 433, + "to_column": 57, + "kind": "(", + "at": 13421, + "from_row": 433, + "expression": { + "to_column": 41, + "from_column": 32, + "level": 1, + "function_nr": 30, + "name": "make_bool", + "kind": "name", + "at": 13412, + "from_row": 433, + "to_row": 433 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 433, + "to_column": 57, + "kind": "if", + "at": 13390, + "from_row": 433, + "expression": { + "to_column": 23, + "from_column": 16, + "right": { + "to_row": 433, + "from_column": 19, + "to_column": 23, + "kind": "text", + "at": 13399, + "from_row": 433, + "value": "!=" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13394, + "from_row": 433, + "to_row": 433 + }, + "kind": "==", + "at": 13396, + "from_row": 433, + "to_row": 433 + } + }, + { + "then": [ + { + "to_row": 434, + "from_column": 24, + "to_column": 55, + "kind": "return", + "at": 13462, + "from_row": 434, + "expression": { + "list": [ + { + "to_column": 48, + "from_column": 44, + "right": { + "to_column": 48, + "from_column": 46, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 13484, + "from_row": 434, + "to_row": 434 + }, + "left": { + "to_column": 43, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 13479, + "from_row": 434, + "to_row": 434 + }, + "kind": "<", + "at": 13482, + "from_row": 434, + "to_row": 434 + }, + { + "to_column": 54, + "from_column": 50, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 13488, + "from_row": 434, + "to_row": 434 + } + ], + "from_column": 40, + "to_row": 434, + "to_column": 55, + "kind": "(", + "at": 13478, + "from_row": 434, + "expression": { + "to_column": 40, + "from_column": 31, + "level": 1, + "function_nr": 30, + "name": "make_bool", + "kind": "name", + "at": 13469, + "from_row": 434, + "to_row": 434 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 434, + "to_column": 55, + "kind": "if", + "at": 13448, + "from_row": 434, + "expression": { + "to_column": 22, + "from_column": 16, + "right": { + "to_row": 434, + "from_column": 19, + "to_column": 22, + "kind": "text", + "at": 13457, + "from_row": 434, + "value": "<" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13452, + "from_row": 434, + "to_row": 434 + }, + "kind": "==", + "at": 13454, + "from_row": 434, + "to_row": 434 + } + }, + { + "then": [ + { + "to_row": 435, + "from_column": 24, + "to_column": 55, + "kind": "return", + "at": 13518, + "from_row": 435, + "expression": { + "list": [ + { + "to_column": 48, + "from_column": 44, + "right": { + "to_column": 48, + "from_column": 46, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 13540, + "from_row": 435, + "to_row": 435 + }, + "left": { + "to_column": 43, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 13535, + "from_row": 435, + "to_row": 435 + }, + "kind": ">", + "at": 13538, + "from_row": 435, + "to_row": 435 + }, + { + "to_column": 54, + "from_column": 50, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 13544, + "from_row": 435, + "to_row": 435 + } + ], + "from_column": 40, + "to_row": 435, + "to_column": 55, + "kind": "(", + "at": 13534, + "from_row": 435, + "expression": { + "to_column": 40, + "from_column": 31, + "level": 1, + "function_nr": 30, + "name": "make_bool", + "kind": "name", + "at": 13525, + "from_row": 435, + "to_row": 435 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 435, + "to_column": 55, + "kind": "if", + "at": 13504, + "from_row": 435, + "expression": { + "to_column": 22, + "from_column": 16, + "right": { + "to_row": 435, + "from_column": 19, + "to_column": 22, + "kind": "text", + "at": 13513, + "from_row": 435, + "value": ">" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13508, + "from_row": 435, + "to_row": 435 + }, + "kind": "==", + "at": 13510, + "from_row": 435, + "to_row": 435 + } + }, + { + "then": [ + { + "to_row": 436, + "from_column": 25, + "to_column": 57, + "kind": "return", + "at": 13575, + "from_row": 436, + "expression": { + "list": [ + { + "to_column": 50, + "from_column": 45, + "right": { + "to_column": 50, + "from_column": 48, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 13598, + "from_row": 436, + "to_row": 436 + }, + "left": { + "to_column": 44, + "from_column": 42, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 13592, + "from_row": 436, + "to_row": 436 + }, + "kind": "<=", + "at": 13595, + "from_row": 436, + "to_row": 436 + }, + { + "to_column": 56, + "from_column": 52, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 13602, + "from_row": 436, + "to_row": 436 + } + ], + "from_column": 41, + "to_row": 436, + "to_column": 57, + "kind": "(", + "at": 13591, + "from_row": 436, + "expression": { + "to_column": 41, + "from_column": 32, + "level": 1, + "function_nr": 30, + "name": "make_bool", + "kind": "name", + "at": 13582, + "from_row": 436, + "to_row": 436 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 436, + "to_column": 57, + "kind": "if", + "at": 13560, + "from_row": 436, + "expression": { + "to_column": 23, + "from_column": 16, + "right": { + "to_row": 436, + "from_column": 19, + "to_column": 23, + "kind": "text", + "at": 13569, + "from_row": 436, + "value": "<=" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13564, + "from_row": 436, + "to_row": 436 + }, + "kind": "==", + "at": 13566, + "from_row": 436, + "to_row": 436 + } + }, + { + "then": [ + { + "to_row": 437, + "from_column": 25, + "to_column": 57, + "kind": "return", + "at": 13633, + "from_row": 437, + "expression": { + "list": [ + { + "to_column": 50, + "from_column": 45, + "right": { + "to_column": 50, + "from_column": 48, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 13656, + "from_row": 437, + "to_row": 437 + }, + "left": { + "to_column": 44, + "from_column": 42, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 13650, + "from_row": 437, + "to_row": 437 + }, + "kind": ">=", + "at": 13653, + "from_row": 437, + "to_row": 437 + }, + { + "to_column": 56, + "from_column": 52, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 13660, + "from_row": 437, + "to_row": 437 + } + ], + "from_column": 41, + "to_row": 437, + "to_column": 57, + "kind": "(", + "at": 13649, + "from_row": 437, + "expression": { + "to_column": 41, + "from_column": 32, + "level": 1, + "function_nr": 30, + "name": "make_bool", + "kind": "name", + "at": 13640, + "from_row": 437, + "to_row": 437 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 437, + "to_column": 57, + "kind": "if", + "at": 13618, + "from_row": 437, + "expression": { + "to_column": 23, + "from_column": 16, + "right": { + "to_row": 437, + "from_column": 19, + "to_column": 23, + "kind": "text", + "at": 13627, + "from_row": 437, + "value": ">=" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13622, + "from_row": 437, + "to_row": 437 + }, + "kind": "==", + "at": 13624, + "from_row": 437, + "to_row": 437 + } + } + ], + "kind": "block", + "at": 13164, + "from_row": 427, + "to_row": 438 + } + ], + "from_column": 8, + "list": [], + "to_row": 438, + "to_column": 9, + "kind": "if", + "at": 13111, + "from_row": 427, + "expression": { + "to_column": 59, + "from_column": 34, + "right": { + "to_column": 59, + "from_column": 48, + "right": { + "to_row": 427, + "from_column": 51, + "to_column": 59, + "kind": "text", + "at": 13154, + "from_row": 427, + "value": "number" + }, + "left": { + "to_column": 47, + "from_column": 42, + "right": "kind", + "left": { + "to_column": 42, + "from_column": 37, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 13140, + "from_row": 427, + "to_row": 427 + }, + "kind": ".", + "at": 13145, + "from_row": 427, + "to_row": 427 + }, + "kind": "==", + "at": 13151, + "from_row": 427, + "to_row": 427 + }, + "left": { + "to_column": 33, + "from_column": 22, + "right": { + "to_row": 427, + "from_column": 25, + "to_column": 33, + "kind": "text", + "at": 13128, + "from_row": 427, + "value": "number" + }, + "left": { + "to_column": 21, + "from_column": 16, + "right": "kind", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 13115, + "from_row": 427, + "to_row": 427 + }, + "kind": ".", + "at": 13119, + "from_row": 427, + "to_row": 427 + }, + "kind": "==", + "at": 13125, + "from_row": 427, + "to_row": 427 + }, + "kind": "&&", + "at": 13137, + "from_row": 427, + "to_row": 427 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 57, + "statements": [ + { + "then": [ + { + "to_row": 440, + "from_column": 25, + "to_column": 74, + "kind": "return", + "at": 13760, + "from_row": 440, + "expression": { + "list": [ + { + "to_column": 67, + "from_column": 53, + "right": { + "to_column": 67, + "from_column": 61, + "right": "value", + "left": { + "to_column": 61, + "from_column": 56, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 13791, + "from_row": 440, + "to_row": 440 + }, + "kind": ".", + "at": 13796, + "from_row": 440, + "to_row": 440 + }, + "left": { + "to_column": 52, + "from_column": 46, + "right": "value", + "left": { + "to_column": 46, + "from_column": 42, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 13777, + "from_row": 440, + "to_row": 440 + }, + "kind": ".", + "at": 13781, + "from_row": 440, + "to_row": 440 + }, + "kind": "==", + "at": 13788, + "from_row": 440, + "to_row": 440 + }, + { + "to_column": 73, + "from_column": 69, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 13804, + "from_row": 440, + "to_row": 440 + } + ], + "from_column": 41, + "to_row": 440, + "to_column": 74, + "kind": "(", + "at": 13776, + "from_row": 440, + "expression": { + "to_column": 41, + "from_column": 32, + "level": 1, + "function_nr": 30, + "name": "make_bool", + "kind": "name", + "at": 13767, + "from_row": 440, + "to_row": 440 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 440, + "to_column": 74, + "kind": "if", + "at": 13745, + "from_row": 440, + "expression": { + "to_column": 23, + "from_column": 16, + "right": { + "to_row": 440, + "from_column": 19, + "to_column": 23, + "kind": "text", + "at": 13754, + "from_row": 440, + "value": "==" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13749, + "from_row": 440, + "to_row": 440 + }, + "kind": "==", + "at": 13751, + "from_row": 440, + "to_row": 440 + } + }, + { + "then": [ + { + "to_row": 441, + "from_column": 25, + "to_column": 74, + "kind": "return", + "at": 13835, + "from_row": 441, + "expression": { + "list": [ + { + "to_column": 67, + "from_column": 53, + "right": { + "to_column": 67, + "from_column": 61, + "right": "value", + "left": { + "to_column": 61, + "from_column": 56, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 13866, + "from_row": 441, + "to_row": 441 + }, + "kind": ".", + "at": 13871, + "from_row": 441, + "to_row": 441 + }, + "left": { + "to_column": 52, + "from_column": 46, + "right": "value", + "left": { + "to_column": 46, + "from_column": 42, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 13852, + "from_row": 441, + "to_row": 441 + }, + "kind": ".", + "at": 13856, + "from_row": 441, + "to_row": 441 + }, + "kind": "!=", + "at": 13863, + "from_row": 441, + "to_row": 441 + }, + { + "to_column": 73, + "from_column": 69, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 13879, + "from_row": 441, + "to_row": 441 + } + ], + "from_column": 41, + "to_row": 441, + "to_column": 74, + "kind": "(", + "at": 13851, + "from_row": 441, + "expression": { + "to_column": 41, + "from_column": 32, + "level": 1, + "function_nr": 30, + "name": "make_bool", + "kind": "name", + "at": 13842, + "from_row": 441, + "to_row": 441 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 441, + "to_column": 74, + "kind": "if", + "at": 13820, + "from_row": 441, + "expression": { + "to_column": 23, + "from_column": 16, + "right": { + "to_row": 441, + "from_column": 19, + "to_column": 23, + "kind": "text", + "at": 13829, + "from_row": 441, + "value": "!=" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13824, + "from_row": 441, + "to_row": 441 + }, + "kind": "==", + "at": 13826, + "from_row": 441, + "to_row": 441 + } + } + ], + "kind": "block", + "at": 13733, + "from_row": 439, + "to_row": 442 + } + ], + "from_column": 8, + "list": [], + "to_row": 442, + "to_column": 9, + "kind": "if", + "at": 13684, + "from_row": 439, + "expression": { + "to_column": 55, + "from_column": 32, + "right": { + "to_column": 55, + "from_column": 46, + "right": { + "to_row": 439, + "from_column": 49, + "to_column": 55, + "kind": "text", + "at": 13725, + "from_row": 439, + "value": "text" + }, + "left": { + "to_column": 45, + "from_column": 40, + "right": "kind", + "left": { + "to_column": 40, + "from_column": 35, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 13711, + "from_row": 439, + "to_row": 439 + }, + "kind": ".", + "at": 13716, + "from_row": 439, + "to_row": 439 + }, + "kind": "==", + "at": 13722, + "from_row": 439, + "to_row": 439 + }, + "left": { + "to_column": 31, + "from_column": 22, + "right": { + "to_row": 439, + "from_column": 25, + "to_column": 31, + "kind": "text", + "at": 13701, + "from_row": 439, + "value": "text" + }, + "left": { + "to_column": 21, + "from_column": 16, + "right": "kind", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 13688, + "from_row": 439, + "to_row": 439 + }, + "kind": ".", + "at": 13692, + "from_row": 439, + "to_row": 439 + }, + "kind": "==", + "at": 13698, + "from_row": 439, + "to_row": 439 + }, + "kind": "&&", + "at": 13708, + "from_row": 439, + "to_row": 439 + } + } + ], + "kind": "block", + "at": 13101, + "from_row": 426, + "to_row": 443 + } + ], + "from_column": 6, + "list": [], + "to_row": 443, + "to_column": 7, + "kind": "if", + "at": 13066, + "from_row": 426, + "expression": { + "to_column": 39, + "from_column": 23, + "right": { + "to_column": 39, + "from_column": 32, + "right": { + "to_column": 39, + "from_column": 35, + "kind": "null", + "at": 13095, + "from_row": 426, + "to_row": 426 + }, + "left": { + "to_column": 31, + "from_column": 26, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 13086, + "from_row": 426, + "to_row": 426 + }, + "kind": "!=", + "at": 13092, + "from_row": 426, + "to_row": 426 + }, + "left": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 13078, + "from_row": 426, + "to_row": 426 + }, + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 13070, + "from_row": 426, + "to_row": 426 + }, + "kind": "!=", + "at": 13075, + "from_row": 426, + "to_row": 426 + }, + "kind": "&&", + "at": 13083, + "from_row": 426, + "to_row": 426 + } + }, + { + "to_row": 444, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 13909, + "from_row": 444, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 13916, + "from_row": 444, + "to_row": 444 + } + } + ], + "kind": "block", + "at": 13010, + "from_row": 423, + "to_row": 445 + } + ], + "from_column": 4, + "list": [], + "to_row": 445, + "to_column": 5, + "kind": "if", + "at": 12932, + "from_row": 423, + "expression": { + "to_column": 80, + "from_column": 68, + "right": { + "to_column": 80, + "from_column": 73, + "right": { + "to_row": 423, + "from_column": 76, + "to_column": 80, + "kind": "text", + "at": 13004, + "from_row": 423, + "value": ">=" + }, + "left": { + "to_column": 72, + "from_column": 71, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12999, + "from_row": 423, + "to_row": 423 + }, + "kind": "==", + "at": 13001, + "from_row": 423, + "to_row": 423 + }, + "left": { + "to_column": 67, + "from_column": 55, + "right": { + "to_column": 67, + "from_column": 60, + "right": { + "to_row": 423, + "from_column": 63, + "to_column": 67, + "kind": "text", + "at": 12991, + "from_row": 423, + "value": "<=" + }, + "left": { + "to_column": 59, + "from_column": 58, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12986, + "from_row": 423, + "to_row": 423 + }, + "kind": "==", + "at": 12988, + "from_row": 423, + "to_row": 423 + }, + "left": { + "to_column": 54, + "from_column": 43, + "right": { + "to_column": 54, + "from_column": 48, + "right": { + "to_row": 423, + "from_column": 51, + "to_column": 54, + "kind": "text", + "at": 12979, + "from_row": 423, + "value": ">" + }, + "left": { + "to_column": 47, + "from_column": 46, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12974, + "from_row": 423, + "to_row": 423 + }, + "kind": "==", + "at": 12976, + "from_row": 423, + "to_row": 423 + }, + "left": { + "to_column": 42, + "from_column": 31, + "right": { + "to_column": 42, + "from_column": 36, + "right": { + "to_row": 423, + "from_column": 39, + "to_column": 42, + "kind": "text", + "at": 12967, + "from_row": 423, + "value": "<" + }, + "left": { + "to_column": 35, + "from_column": 34, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12962, + "from_row": 423, + "to_row": 423 + }, + "kind": "==", + "at": 12964, + "from_row": 423, + "to_row": 423 + }, + "left": { + "to_column": 30, + "from_column": 18, + "right": { + "to_column": 30, + "from_column": 23, + "right": { + "to_row": 423, + "from_column": 26, + "to_column": 30, + "kind": "text", + "at": 12954, + "from_row": 423, + "value": "!=" + }, + "left": { + "to_column": 22, + "from_column": 21, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12949, + "from_row": 423, + "to_row": 423 + }, + "kind": "==", + "at": 12951, + "from_row": 423, + "to_row": 423 + }, + "left": { + "to_column": 17, + "from_column": 10, + "right": { + "to_row": 423, + "from_column": 13, + "to_column": 17, + "kind": "text", + "at": 12941, + "from_row": 423, + "value": "==" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 12936, + "from_row": 423, + "to_row": 423 + }, + "kind": "==", + "at": 12938, + "from_row": 423, + "to_row": 423 + }, + "kind": "||", + "at": 12946, + "from_row": 423, + "to_row": 423 + }, + "kind": "||", + "at": 12959, + "from_row": 423, + "to_row": 423 + }, + "kind": "||", + "at": 12971, + "from_row": 423, + "to_row": 423 + }, + "kind": "||", + "at": 12983, + "from_row": 423, + "to_row": 423 + }, + "kind": "||", + "at": 12996, + "from_row": 423, + "to_row": 423 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 68, + "statements": [ + { + "to_row": 449, + "from_column": 6, + "to_column": 22, + "kind": "call", + "at": 14027, + "from_row": 449, + "expression": { + "to_column": 22, + "from_column": 11, + "right": { + "to_column": 22, + "from_column": 17, + "right": "left", + "left": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14034, + "from_row": 449, + "to_row": 449 + }, + "kind": ".", + "at": 14038, + "from_row": 449, + "to_row": 449 + }, + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 14027, + "from_row": 449, + "to_row": 449 + }, + "kind": "assign", + "at": 14032, + "from_row": 449, + "to_row": 449 + } + }, + { + "to_row": 450, + "from_column": 6, + "to_column": 24, + "kind": "call", + "at": 14050, + "from_row": 450, + "expression": { + "to_column": 24, + "from_column": 12, + "right": { + "to_column": 24, + "from_column": 18, + "right": "right", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14058, + "from_row": 450, + "to_row": 450 + }, + "kind": ".", + "at": 14062, + "from_row": 450, + "to_row": 450 + }, + "left": { + "to_column": 11, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 14050, + "from_row": 450, + "to_row": 450 + }, + "kind": "assign", + "at": 14056, + "from_row": 450, + "to_row": 450 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 92, + "statements": [ + { + "to_row": 452, + "from_column": 8, + "to_column": 24, + "kind": "call", + "at": 14171, + "from_row": 452, + "expression": { + "to_column": 24, + "from_column": 11, + "right": { + "to_column": 24, + "from_column": 17, + "right": "number", + "left": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 14176, + "from_row": 452, + "to_row": 452 + }, + "kind": ".", + "at": 14180, + "from_row": 452, + "to_row": 452 + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 14171, + "from_row": 452, + "to_row": 452 + }, + "kind": "assign", + "at": 14174, + "from_row": 452, + "to_row": 452 + } + }, + { + "to_row": 453, + "from_column": 8, + "to_column": 25, + "kind": "call", + "at": 14196, + "from_row": 453, + "expression": { + "to_column": 25, + "from_column": 11, + "right": { + "to_column": 25, + "from_column": 18, + "right": "number", + "left": { + "to_column": 18, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 14201, + "from_row": 453, + "to_row": 453 + }, + "kind": ".", + "at": 14206, + "from_row": 453, + "to_row": 453 + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 14196, + "from_row": 453, + "to_row": 453 + }, + "kind": "assign", + "at": 14199, + "from_row": 453, + "to_row": 453 + } + }, + { + "then": [ + { + "to_row": 454, + "from_column": 24, + "to_column": 47, + "kind": "call", + "at": 14238, + "from_row": 454, + "expression": { + "to_column": 47, + "from_column": 27, + "right": { + "list": [ + { + "to_column": 46, + "from_column": 40, + "right": "value", + "left": { + "to_column": 40, + "from_column": 36, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 14250, + "from_row": 454, + "to_row": 454 + }, + "kind": ".", + "at": 14254, + "from_row": 454, + "to_row": 454 + } + ], + "from_column": 35, + "to_row": 454, + "to_column": 47, + "kind": "(", + "at": 14249, + "from_row": 454, + "expression": { + "to_column": 35, + "from_column": 29, + "level": -1, + "name": "number", + "kind": "name", + "at": 14243, + "from_row": 454, + "to_row": 454 + } + }, + "left": { + "to_column": 26, + "from_column": 24, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 14238, + "from_row": 454, + "to_row": 454 + }, + "kind": "assign", + "at": 14241, + "from_row": 454, + "to_row": 454 + } + } + ], + "from_column": 8, + "list": [], + "to_row": 454, + "to_column": 47, + "kind": "if", + "at": 14222, + "from_row": 454, + "expression": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 14232, + "from_row": 454, + "to_row": 454 + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 14226, + "from_row": 454, + "to_row": 454 + }, + "kind": "==", + "at": 14229, + "from_row": 454, + "to_row": 454 + } + }, + { + "then": [ + { + "to_row": 455, + "from_column": 24, + "to_column": 48, + "kind": "call", + "at": 14286, + "from_row": 455, + "expression": { + "to_column": 48, + "from_column": 27, + "right": { + "list": [ + { + "to_column": 47, + "from_column": 41, + "right": "value", + "left": { + "to_column": 41, + "from_column": 36, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 14298, + "from_row": 455, + "to_row": 455 + }, + "kind": ".", + "at": 14303, + "from_row": 455, + "to_row": 455 + } + ], + "from_column": 35, + "to_row": 455, + "to_column": 48, + "kind": "(", + "at": 14297, + "from_row": 455, + "expression": { + "to_column": 35, + "from_column": 29, + "level": -1, + "name": "number", + "kind": "name", + "at": 14291, + "from_row": 455, + "to_row": 455 + } + }, + "left": { + "to_column": 26, + "from_column": 24, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 14286, + "from_row": 455, + "to_row": 455 + }, + "kind": "assign", + "at": 14289, + "from_row": 455, + "to_row": 455 + } + } + ], + "from_column": 8, + "list": [], + "to_row": 455, + "to_column": 48, + "kind": "if", + "at": 14270, + "from_row": 455, + "expression": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 14280, + "from_row": 455, + "to_row": 455 + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 14274, + "from_row": 455, + "to_row": 455 + }, + "kind": "==", + "at": 14277, + "from_row": 455, + "to_row": 455 + } + }, + { + "then": [ + { + "to_row": 456, + "from_column": 22, + "to_column": 55, + "kind": "return", + "at": 14333, + "from_row": 456, + "expression": { + "list": [ + { + "to_column": 48, + "from_column": 44, + "right": { + "to_column": 48, + "from_column": 46, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 14357, + "from_row": 456, + "to_row": 456 + }, + "left": { + "to_column": 43, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 14352, + "from_row": 456, + "to_row": 456 + }, + "kind": "&", + "at": 14355, + "from_row": 456, + "to_row": 456 + }, + { + "to_column": 54, + "from_column": 50, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14361, + "from_row": 456, + "to_row": 456 + } + ], + "from_column": 40, + "to_row": 456, + "to_column": 55, + "kind": "(", + "at": 14351, + "from_row": 456, + "expression": { + "to_column": 40, + "from_column": 29, + "level": 1, + "function_nr": 30, + "name": "make_number", + "kind": "name", + "at": 14340, + "from_row": 456, + "to_row": 456 + } + } + } + ], + "from_column": 8, + "list": [], + "to_row": 456, + "to_column": 55, + "kind": "if", + "at": 14319, + "from_row": 456, + "expression": { + "to_column": 20, + "from_column": 14, + "right": { + "to_row": 456, + "from_column": 17, + "to_column": 20, + "kind": "text", + "at": 14328, + "from_row": 456, + "value": "&" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 14323, + "from_row": 456, + "to_row": 456 + }, + "kind": "==", + "at": 14325, + "from_row": 456, + "to_row": 456 + } + }, + { + "then": [ + { + "to_row": 457, + "from_column": 22, + "to_column": 55, + "kind": "return", + "at": 14389, + "from_row": 457, + "expression": { + "list": [ + { + "to_column": 48, + "from_column": 44, + "right": { + "to_column": 48, + "from_column": 46, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 14413, + "from_row": 457, + "to_row": 457 + }, + "left": { + "to_column": 43, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 14408, + "from_row": 457, + "to_row": 457 + }, + "kind": "|", + "at": 14411, + "from_row": 457, + "to_row": 457 + }, + { + "to_column": 54, + "from_column": 50, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14417, + "from_row": 457, + "to_row": 457 + } + ], + "from_column": 40, + "to_row": 457, + "to_column": 55, + "kind": "(", + "at": 14407, + "from_row": 457, + "expression": { + "to_column": 40, + "from_column": 29, + "level": 1, + "function_nr": 30, + "name": "make_number", + "kind": "name", + "at": 14396, + "from_row": 457, + "to_row": 457 + } + } + } + ], + "from_column": 8, + "list": [], + "to_row": 457, + "to_column": 55, + "kind": "if", + "at": 14375, + "from_row": 457, + "expression": { + "to_column": 20, + "from_column": 14, + "right": { + "to_row": 457, + "from_column": 17, + "to_column": 20, + "kind": "text", + "at": 14384, + "from_row": 457, + "value": "|" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 14379, + "from_row": 457, + "to_row": 457 + }, + "kind": "==", + "at": 14381, + "from_row": 457, + "to_row": 457 + } + }, + { + "then": [ + { + "to_row": 458, + "from_column": 22, + "to_column": 55, + "kind": "return", + "at": 14445, + "from_row": 458, + "expression": { + "list": [ + { + "to_column": 48, + "from_column": 44, + "right": { + "to_column": 48, + "from_column": 46, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 14469, + "from_row": 458, + "to_row": 458 + }, + "left": { + "to_column": 43, + "from_column": 41, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 14464, + "from_row": 458, + "to_row": 458 + }, + "kind": "^", + "at": 14467, + "from_row": 458, + "to_row": 458 + }, + { + "to_column": 54, + "from_column": 50, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14473, + "from_row": 458, + "to_row": 458 + } + ], + "from_column": 40, + "to_row": 458, + "to_column": 55, + "kind": "(", + "at": 14463, + "from_row": 458, + "expression": { + "to_column": 40, + "from_column": 29, + "level": 1, + "function_nr": 30, + "name": "make_number", + "kind": "name", + "at": 14452, + "from_row": 458, + "to_row": 458 + } + } + } + ], + "from_column": 8, + "list": [], + "to_row": 458, + "to_column": 55, + "kind": "if", + "at": 14431, + "from_row": 458, + "expression": { + "to_column": 20, + "from_column": 14, + "right": { + "to_row": 458, + "from_column": 17, + "to_column": 20, + "kind": "text", + "at": 14440, + "from_row": 458, + "value": "^" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 14435, + "from_row": 458, + "to_row": 458 + }, + "kind": "==", + "at": 14437, + "from_row": 458, + "to_row": 458 + } + }, + { + "then": [ + { + "to_row": 459, + "from_column": 23, + "to_column": 57, + "kind": "return", + "at": 14502, + "from_row": 459, + "expression": { + "list": [ + { + "to_column": 50, + "from_column": 45, + "right": { + "to_column": 50, + "from_column": 48, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 14527, + "from_row": 459, + "to_row": 459 + }, + "left": { + "to_column": 44, + "from_column": 42, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 14521, + "from_row": 459, + "to_row": 459 + }, + "kind": "<<", + "at": 14524, + "from_row": 459, + "to_row": 459 + }, + { + "to_column": 56, + "from_column": 52, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14531, + "from_row": 459, + "to_row": 459 + } + ], + "from_column": 41, + "to_row": 459, + "to_column": 57, + "kind": "(", + "at": 14520, + "from_row": 459, + "expression": { + "to_column": 41, + "from_column": 30, + "level": 1, + "function_nr": 30, + "name": "make_number", + "kind": "name", + "at": 14509, + "from_row": 459, + "to_row": 459 + } + } + } + ], + "from_column": 8, + "list": [], + "to_row": 459, + "to_column": 57, + "kind": "if", + "at": 14487, + "from_row": 459, + "expression": { + "to_column": 21, + "from_column": 14, + "right": { + "to_row": 459, + "from_column": 17, + "to_column": 21, + "kind": "text", + "at": 14496, + "from_row": 459, + "value": "<<" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 14491, + "from_row": 459, + "to_row": 459 + }, + "kind": "==", + "at": 14493, + "from_row": 459, + "to_row": 459 + } + }, + { + "then": [ + { + "to_row": 460, + "from_column": 23, + "to_column": 57, + "kind": "return", + "at": 14560, + "from_row": 460, + "expression": { + "list": [ + { + "to_column": 50, + "from_column": 45, + "right": { + "to_column": 50, + "from_column": 48, + "level": 0, + "function_nr": 20, + "name": "rv", + "kind": "name", + "at": 14585, + "from_row": 460, + "to_row": 460 + }, + "left": { + "to_column": 44, + "from_column": 42, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 14579, + "from_row": 460, + "to_row": 460 + }, + "kind": ">>", + "at": 14582, + "from_row": 460, + "to_row": 460 + }, + { + "to_column": 56, + "from_column": 52, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14589, + "from_row": 460, + "to_row": 460 + } + ], + "from_column": 41, + "to_row": 460, + "to_column": 57, + "kind": "(", + "at": 14578, + "from_row": 460, + "expression": { + "to_column": 41, + "from_column": 30, + "level": 1, + "function_nr": 30, + "name": "make_number", + "kind": "name", + "at": 14567, + "from_row": 460, + "to_row": 460 + } + } + } + ], + "from_column": 8, + "list": [], + "to_row": 460, + "to_column": 57, + "kind": "if", + "at": 14545, + "from_row": 460, + "expression": { + "to_column": 21, + "from_column": 14, + "right": { + "to_row": 460, + "from_column": 17, + "to_column": 21, + "kind": "text", + "at": 14554, + "from_row": 460, + "value": ">>" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 14549, + "from_row": 460, + "to_row": 460 + }, + "kind": "==", + "at": 14551, + "from_row": 460, + "to_row": 460 + } + } + ], + "kind": "block", + "at": 14161, + "from_row": 451, + "to_row": 461 + } + ], + "from_column": 6, + "list": [], + "to_row": 461, + "to_column": 7, + "kind": "if", + "at": 14075, + "from_row": 451, + "expression": { + "to_column": 90, + "from_column": 65, + "right": { + "to_column": 90, + "from_column": 79, + "right": { + "to_row": 451, + "from_column": 82, + "to_column": 90, + "kind": "text", + "at": 14151, + "from_row": 451, + "value": "number" + }, + "left": { + "to_column": 78, + "from_column": 73, + "right": "kind", + "left": { + "to_column": 73, + "from_column": 68, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 14137, + "from_row": 451, + "to_row": 451 + }, + "kind": ".", + "at": 14142, + "from_row": 451, + "to_row": 451 + }, + "kind": "==", + "at": 14148, + "from_row": 451, + "to_row": 451 + }, + "left": { + "to_column": 64, + "from_column": 40, + "right": { + "to_column": 64, + "from_column": 53, + "right": { + "to_row": 451, + "from_column": 56, + "to_column": 64, + "kind": "text", + "at": 14125, + "from_row": 451, + "value": "number" + }, + "left": { + "to_column": 52, + "from_column": 47, + "right": "kind", + "left": { + "to_column": 47, + "from_column": 43, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 14112, + "from_row": 451, + "to_row": 451 + }, + "kind": ".", + "at": 14116, + "from_row": 451, + "to_row": 451 + }, + "kind": "==", + "at": 14122, + "from_row": 451, + "to_row": 451 + }, + "left": { + "to_column": 39, + "from_column": 23, + "right": { + "to_column": 39, + "from_column": 32, + "right": { + "to_column": 39, + "from_column": 35, + "kind": "null", + "at": 14104, + "from_row": 451, + "to_row": 451 + }, + "left": { + "to_column": 31, + "from_column": 26, + "level": 0, + "function_nr": 20, + "name": "right", + "kind": "name", + "at": 14095, + "from_row": 451, + "to_row": 451 + }, + "kind": "!=", + "at": 14101, + "from_row": 451, + "to_row": 451 + }, + "left": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 14087, + "from_row": 451, + "to_row": 451 + }, + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "left", + "kind": "name", + "at": 14079, + "from_row": 451, + "to_row": 451 + }, + "kind": "!=", + "at": 14084, + "from_row": 451, + "to_row": 451 + }, + "kind": "&&", + "at": 14092, + "from_row": 451, + "to_row": 451 + }, + "kind": "&&", + "at": 14109, + "from_row": 451, + "to_row": 451 + }, + "kind": "&&", + "at": 14134, + "from_row": 451, + "to_row": 451 + } + }, + { + "to_row": 462, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 14609, + "from_row": 462, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14616, + "from_row": 462, + "to_row": 462 + } + } + ], + "kind": "block", + "at": 14019, + "from_row": 448, + "to_row": 463 + } + ], + "from_column": 4, + "list": [], + "to_row": 463, + "to_column": 5, + "kind": "if", + "at": 13955, + "from_row": 448, + "expression": { + "to_column": 66, + "from_column": 54, + "right": { + "to_column": 66, + "from_column": 59, + "right": { + "to_row": 448, + "from_column": 62, + "to_column": 66, + "kind": "text", + "at": 14013, + "from_row": 448, + "value": ">>" + }, + "left": { + "to_column": 58, + "from_column": 57, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 14008, + "from_row": 448, + "to_row": 448 + }, + "kind": "==", + "at": 14010, + "from_row": 448, + "to_row": 448 + }, + "left": { + "to_column": 53, + "from_column": 41, + "right": { + "to_column": 53, + "from_column": 46, + "right": { + "to_row": 448, + "from_column": 49, + "to_column": 53, + "kind": "text", + "at": 14000, + "from_row": 448, + "value": "<<" + }, + "left": { + "to_column": 45, + "from_column": 44, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13995, + "from_row": 448, + "to_row": 448 + }, + "kind": "==", + "at": 13997, + "from_row": 448, + "to_row": 448 + }, + "left": { + "to_column": 40, + "from_column": 29, + "right": { + "to_column": 40, + "from_column": 34, + "right": { + "to_row": 448, + "from_column": 37, + "to_column": 40, + "kind": "text", + "at": 13988, + "from_row": 448, + "value": "^" + }, + "left": { + "to_column": 33, + "from_column": 32, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13983, + "from_row": 448, + "to_row": 448 + }, + "kind": "==", + "at": 13985, + "from_row": 448, + "to_row": 448 + }, + "left": { + "to_column": 28, + "from_column": 17, + "right": { + "to_column": 28, + "from_column": 22, + "right": { + "to_row": 448, + "from_column": 25, + "to_column": 28, + "kind": "text", + "at": 13976, + "from_row": 448, + "value": "|" + }, + "left": { + "to_column": 21, + "from_column": 20, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13971, + "from_row": 448, + "to_row": 448 + }, + "kind": "==", + "at": 13973, + "from_row": 448, + "to_row": 448 + }, + "left": { + "to_column": 16, + "from_column": 10, + "right": { + "to_row": 448, + "from_column": 13, + "to_column": 16, + "kind": "text", + "at": 13964, + "from_row": 448, + "value": "&" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 13959, + "from_row": 448, + "to_row": 448 + }, + "kind": "==", + "at": 13961, + "from_row": 448, + "to_row": 448 + }, + "kind": "||", + "at": 13968, + "from_row": 448, + "to_row": 448 + }, + "kind": "||", + "at": 13980, + "from_row": 448, + "to_row": 448 + }, + "kind": "||", + "at": 13992, + "from_row": 448, + "to_row": 448 + }, + "kind": "||", + "at": 14005, + "from_row": 448, + "to_row": 448 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 18, + "statements": [ + { + "then": [ + { + "to_column": 7, + "from_column": 35, + "statements": [ + { + "to_row": 468, + "from_column": 8, + "to_column": 33, + "kind": "call", + "at": 14714, + "from_row": 468, + "expression": { + "to_column": 33, + "from_column": 11, + "right": { + "to_column": 33, + "from_column": 28, + "right": "kind", + "left": { + "to_column": 28, + "from_column": 17, + "right": "expression", + "left": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14719, + "from_row": 468, + "to_row": 468 + }, + "kind": ".", + "at": 14723, + "from_row": 468, + "to_row": 468 + }, + "kind": ".", + "at": 14734, + "from_row": 468, + "to_row": 468 + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "ek", + "kind": "name", + "at": 14714, + "from_row": 468, + "to_row": 468 + }, + "kind": "assign", + "at": 14717, + "from_row": 468, + "to_row": 468 + } + }, + { + "then": [ + { + "to_row": 469, + "from_column": 26, + "to_column": 55, + "kind": "return", + "at": 14766, + "from_row": 469, + "expression": { + "list": [ + { + "to_column": 48, + "from_column": 43, + "kind": "false", + "at": 14783, + "from_row": 469, + "to_row": 469 + }, + { + "to_column": 54, + "from_column": 50, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14790, + "from_row": 469, + "to_row": 469 + } + ], + "from_column": 42, + "to_row": 469, + "to_column": 55, + "kind": "(", + "at": 14782, + "from_row": 469, + "expression": { + "to_column": 42, + "from_column": 33, + "level": 1, + "function_nr": 30, + "name": "make_bool", + "kind": "name", + "at": 14773, + "from_row": 469, + "to_row": 469 + } + } + } + ], + "from_column": 8, + "list": [], + "to_row": 469, + "to_column": 55, + "kind": "if", + "at": 14748, + "from_row": 469, + "expression": { + "to_column": 24, + "from_column": 15, + "right": { + "to_row": 469, + "from_column": 18, + "to_column": 24, + "kind": "text", + "at": 14758, + "from_row": 469, + "value": "true" + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "ek", + "kind": "name", + "at": 14752, + "from_row": 469, + "to_row": 469 + }, + "kind": "==", + "at": 14755, + "from_row": 469, + "to_row": 469 + } + }, + { + "then": [ + { + "to_row": 470, + "from_column": 27, + "to_column": 55, + "kind": "return", + "at": 14823, + "from_row": 470, + "expression": { + "list": [ + { + "to_column": 48, + "from_column": 44, + "kind": "true", + "at": 14840, + "from_row": 470, + "to_row": 470 + }, + { + "to_column": 54, + "from_column": 50, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14846, + "from_row": 470, + "to_row": 470 + } + ], + "from_column": 43, + "to_row": 470, + "to_column": 55, + "kind": "(", + "at": 14839, + "from_row": 470, + "expression": { + "to_column": 43, + "from_column": 34, + "level": 1, + "function_nr": 30, + "name": "make_bool", + "kind": "name", + "at": 14830, + "from_row": 470, + "to_row": 470 + } + } + } + ], + "from_column": 8, + "list": [], + "to_row": 470, + "to_column": 55, + "kind": "if", + "at": 14804, + "from_row": 470, + "expression": { + "to_column": 25, + "from_column": 15, + "right": { + "to_row": 470, + "from_column": 18, + "to_column": 25, + "kind": "text", + "at": 14814, + "from_row": 470, + "value": "false" + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "ek", + "kind": "name", + "at": 14808, + "from_row": 470, + "to_row": 470 + }, + "kind": "==", + "at": 14811, + "from_row": 470, + "to_row": 470 + } + } + ], + "kind": "block", + "at": 14704, + "from_row": 467, + "to_row": 471 + } + ], + "from_column": 6, + "list": [], + "to_row": 471, + "to_column": 7, + "kind": "if", + "at": 14675, + "from_row": 467, + "expression": { + "to_column": 33, + "from_column": 26, + "right": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 14698, + "from_row": 467, + "to_row": 467 + }, + "left": { + "to_column": 25, + "from_column": 14, + "right": "expression", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14679, + "from_row": 467, + "to_row": 467 + }, + "kind": ".", + "at": 14683, + "from_row": 467, + "to_row": 467 + }, + "kind": "!=", + "at": 14695, + "from_row": 467, + "to_row": 467 + } + }, + { + "to_row": 472, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 14866, + "from_row": 472, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14873, + "from_row": 472, + "to_row": 472 + } + } + ], + "kind": "block", + "at": 14667, + "from_row": 466, + "to_row": 473 + } + ], + "from_column": 4, + "list": [], + "to_row": 473, + "to_column": 5, + "kind": "if", + "at": 14653, + "from_row": 466, + "expression": { + "to_column": 16, + "from_column": 10, + "right": { + "to_row": 466, + "from_column": 13, + "to_column": 16, + "kind": "text", + "at": 14662, + "from_row": 466, + "value": "!" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 14657, + "from_row": 466, + "to_row": 466 + }, + "kind": "==", + "at": 14659, + "from_row": 466, + "to_row": 466 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 18, + "statements": [ + { + "then": [ + { + "to_column": 7, + "from_column": 71, + "statements": [ + { + "to_row": 476, + "from_column": 8, + "to_column": 35, + "kind": "call", + "at": 14985, + "from_row": 476, + "expression": { + "to_column": 35, + "from_column": 11, + "right": { + "to_column": 35, + "from_column": 28, + "right": "number", + "left": { + "to_column": 28, + "from_column": 17, + "right": "expression", + "left": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14990, + "from_row": 476, + "to_row": 476 + }, + "kind": ".", + "at": 14994, + "from_row": 476, + "to_row": 476 + }, + "kind": ".", + "at": 15005, + "from_row": 476, + "to_row": 476 + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 14985, + "from_row": 476, + "to_row": 476 + }, + "kind": "assign", + "at": 14988, + "from_row": 476, + "to_row": 476 + } + }, + { + "then": [ + { + "to_row": 477, + "from_column": 24, + "to_column": 58, + "kind": "call", + "at": 15037, + "from_row": 477, + "expression": { + "to_column": 58, + "from_column": 27, + "right": { + "list": [ + { + "to_column": 57, + "from_column": 51, + "right": "value", + "left": { + "to_column": 51, + "from_column": 40, + "right": "expression", + "left": { + "to_column": 40, + "from_column": 36, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15049, + "from_row": 477, + "to_row": 477 + }, + "kind": ".", + "at": 15053, + "from_row": 477, + "to_row": 477 + }, + "kind": ".", + "at": 15064, + "from_row": 477, + "to_row": 477 + } + ], + "from_column": 35, + "to_row": 477, + "to_column": 58, + "kind": "(", + "at": 15048, + "from_row": 477, + "expression": { + "to_column": 35, + "from_column": 29, + "level": -1, + "name": "number", + "kind": "name", + "at": 15042, + "from_row": 477, + "to_row": 477 + } + }, + "left": { + "to_column": 26, + "from_column": 24, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 15037, + "from_row": 477, + "to_row": 477 + }, + "kind": "assign", + "at": 15040, + "from_row": 477, + "to_row": 477 + } + } + ], + "from_column": 8, + "list": [], + "to_row": 477, + "to_column": 58, + "kind": "if", + "at": 15021, + "from_row": 477, + "expression": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 15031, + "from_row": 477, + "to_row": 477 + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 15025, + "from_row": 477, + "to_row": 477 + }, + "kind": "==", + "at": 15028, + "from_row": 477, + "to_row": 477 + } + }, + { + "to_row": 478, + "from_column": 8, + "to_column": 37, + "kind": "return", + "at": 15080, + "from_row": 478, + "expression": { + "list": [ + { + "to_row": 478, + "from_column": 27, + "to_column": 30, + "kind": "~", + "at": 15099, + "from_row": 478, + "expression": { + "to_column": 30, + "from_column": 28, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 15100, + "from_row": 478, + "to_row": 478 + } + }, + { + "to_column": 36, + "from_column": 32, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15104, + "from_row": 478, + "to_row": 478 + } + ], + "from_column": 26, + "to_row": 478, + "to_column": 37, + "kind": "(", + "at": 15098, + "from_row": 478, + "expression": { + "to_column": 26, + "from_column": 15, + "level": 1, + "function_nr": 30, + "name": "make_number", + "kind": "name", + "at": 15087, + "from_row": 478, + "to_row": 478 + } + } + } + ], + "kind": "block", + "at": 14975, + "from_row": 475, + "to_row": 479 + } + ], + "from_column": 6, + "list": [], + "to_row": 479, + "to_column": 7, + "kind": "if", + "at": 14910, + "from_row": 475, + "expression": { + "to_column": 69, + "from_column": 34, + "right": { + "to_column": 69, + "from_column": 58, + "right": { + "to_row": 475, + "from_column": 61, + "to_column": 69, + "kind": "text", + "at": 14965, + "from_row": 475, + "value": "number" + }, + "left": { + "to_column": 57, + "from_column": 52, + "right": "kind", + "left": { + "to_column": 52, + "from_column": 41, + "right": "expression", + "left": { + "to_column": 41, + "from_column": 37, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14941, + "from_row": 475, + "to_row": 475 + }, + "kind": ".", + "at": 14945, + "from_row": 475, + "to_row": 475 + }, + "kind": ".", + "at": 14956, + "from_row": 475, + "to_row": 475 + }, + "kind": "==", + "at": 14962, + "from_row": 475, + "to_row": 475 + }, + "left": { + "to_column": 33, + "from_column": 26, + "right": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 14933, + "from_row": 475, + "to_row": 475 + }, + "left": { + "to_column": 25, + "from_column": 14, + "right": "expression", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 14914, + "from_row": 475, + "to_row": 475 + }, + "kind": ".", + "at": 14918, + "from_row": 475, + "to_row": 475 + }, + "kind": "!=", + "at": 14930, + "from_row": 475, + "to_row": 475 + }, + "kind": "&&", + "at": 14938, + "from_row": 475, + "to_row": 475 + } + }, + { + "to_row": 480, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 15124, + "from_row": 480, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15131, + "from_row": 480, + "to_row": 480 + } + } + ], + "kind": "block", + "at": 14902, + "from_row": 474, + "to_row": 481 + } + ], + "from_column": 4, + "list": [], + "to_row": 481, + "to_column": 5, + "kind": "if", + "at": 14888, + "from_row": 474, + "expression": { + "to_column": 16, + "from_column": 10, + "right": { + "to_row": 474, + "from_column": 13, + "to_column": 16, + "kind": "text", + "at": 14897, + "from_row": 474, + "value": "~" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 14892, + "from_row": 474, + "to_row": 474 + }, + "kind": "==", + "at": 14894, + "from_row": 474, + "to_row": 474 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 23, + "statements": [ + { + "then": [ + { + "to_column": 7, + "from_column": 71, + "statements": [ + { + "to_row": 484, + "from_column": 8, + "to_column": 35, + "kind": "call", + "at": 15248, + "from_row": 484, + "expression": { + "to_column": 35, + "from_column": 11, + "right": { + "to_column": 35, + "from_column": 28, + "right": "number", + "left": { + "to_column": 28, + "from_column": 17, + "right": "expression", + "left": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15253, + "from_row": 484, + "to_row": 484 + }, + "kind": ".", + "at": 15257, + "from_row": 484, + "to_row": 484 + }, + "kind": ".", + "at": 15268, + "from_row": 484, + "to_row": 484 + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 15248, + "from_row": 484, + "to_row": 484 + }, + "kind": "assign", + "at": 15251, + "from_row": 484, + "to_row": 484 + } + }, + { + "then": [ + { + "to_row": 485, + "from_column": 24, + "to_column": 58, + "kind": "call", + "at": 15300, + "from_row": 485, + "expression": { + "to_column": 58, + "from_column": 27, + "right": { + "list": [ + { + "to_column": 57, + "from_column": 51, + "right": "value", + "left": { + "to_column": 51, + "from_column": 40, + "right": "expression", + "left": { + "to_column": 40, + "from_column": 36, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15312, + "from_row": 485, + "to_row": 485 + }, + "kind": ".", + "at": 15316, + "from_row": 485, + "to_row": 485 + }, + "kind": ".", + "at": 15327, + "from_row": 485, + "to_row": 485 + } + ], + "from_column": 35, + "to_row": 485, + "to_column": 58, + "kind": "(", + "at": 15311, + "from_row": 485, + "expression": { + "to_column": 35, + "from_column": 29, + "level": -1, + "name": "number", + "kind": "name", + "at": 15305, + "from_row": 485, + "to_row": 485 + } + }, + "left": { + "to_column": 26, + "from_column": 24, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 15300, + "from_row": 485, + "to_row": 485 + }, + "kind": "assign", + "at": 15303, + "from_row": 485, + "to_row": 485 + } + } + ], + "from_column": 8, + "list": [], + "to_row": 485, + "to_column": 58, + "kind": "if", + "at": 15284, + "from_row": 485, + "expression": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 15294, + "from_row": 485, + "to_row": 485 + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 15288, + "from_row": 485, + "to_row": 485 + }, + "kind": "==", + "at": 15291, + "from_row": 485, + "to_row": 485 + } + }, + { + "to_row": 486, + "from_column": 8, + "to_column": 40, + "kind": "return", + "at": 15343, + "from_row": 486, + "expression": { + "list": [ + { + "to_column": 33, + "from_column": 29, + "right": { + "to_column": 33, + "from_column": 31, + "level": 0, + "function_nr": 20, + "name": "lv", + "kind": "name", + "at": 15366, + "from_row": 486, + "to_row": 486 + }, + "left": { + "to_row": 486, + "from_column": 27, + "number": 0, + "to_column": 28, + "kind": "number", + "at": 15362, + "from_row": 486, + "value": "0" + }, + "kind": "-", + "at": 15364, + "from_row": 486, + "to_row": 486 + }, + { + "to_column": 39, + "from_column": 35, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15370, + "from_row": 486, + "to_row": 486 + } + ], + "from_column": 26, + "to_row": 486, + "to_column": 40, + "kind": "(", + "at": 15361, + "from_row": 486, + "expression": { + "to_column": 26, + "from_column": 15, + "level": 1, + "function_nr": 30, + "name": "make_number", + "kind": "name", + "at": 15350, + "from_row": 486, + "to_row": 486 + } + } + } + ], + "kind": "block", + "at": 15238, + "from_row": 483, + "to_row": 487 + } + ], + "from_column": 6, + "list": [], + "to_row": 487, + "to_column": 7, + "kind": "if", + "at": 15173, + "from_row": 483, + "expression": { + "to_column": 69, + "from_column": 34, + "right": { + "to_column": 69, + "from_column": 58, + "right": { + "to_row": 483, + "from_column": 61, + "to_column": 69, + "kind": "text", + "at": 15228, + "from_row": 483, + "value": "number" + }, + "left": { + "to_column": 57, + "from_column": 52, + "right": "kind", + "left": { + "to_column": 52, + "from_column": 41, + "right": "expression", + "left": { + "to_column": 41, + "from_column": 37, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15204, + "from_row": 483, + "to_row": 483 + }, + "kind": ".", + "at": 15208, + "from_row": 483, + "to_row": 483 + }, + "kind": ".", + "at": 15219, + "from_row": 483, + "to_row": 483 + }, + "kind": "==", + "at": 15225, + "from_row": 483, + "to_row": 483 + }, + "left": { + "to_column": 33, + "from_column": 26, + "right": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 15196, + "from_row": 483, + "to_row": 483 + }, + "left": { + "to_column": 25, + "from_column": 14, + "right": "expression", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15177, + "from_row": 483, + "to_row": 483 + }, + "kind": ".", + "at": 15181, + "from_row": 483, + "to_row": 483 + }, + "kind": "!=", + "at": 15193, + "from_row": 483, + "to_row": 483 + }, + "kind": "&&", + "at": 15201, + "from_row": 483, + "to_row": 483 + } + }, + { + "to_row": 488, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 15390, + "from_row": 488, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15397, + "from_row": 488, + "to_row": 488 + } + } + ], + "kind": "block", + "at": 15165, + "from_row": 482, + "to_row": 489 + } + ], + "from_column": 4, + "list": [], + "to_row": 489, + "to_column": 5, + "kind": "if", + "at": 15146, + "from_row": 482, + "expression": { + "to_column": 21, + "from_column": 10, + "right": { + "to_row": 482, + "from_column": 13, + "to_column": 21, + "kind": "text", + "at": 15155, + "from_row": 482, + "value": "-unary" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 15150, + "from_row": 482, + "to_row": 482 + }, + "kind": "==", + "at": 15152, + "from_row": 482, + "to_row": 482 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 21, + "statements": [ + { + "to_row": 493, + "from_column": 6, + "to_column": 45, + "kind": "call", + "at": 15476, + "from_row": 493, + "expression": { + "to_column": 45, + "from_column": 9, + "right": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "expression", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15499, + "from_row": 493, + "to_row": 493 + }, + "kind": ".", + "at": 15503, + "from_row": 493, + "to_row": 493 + } + ], + "from_column": 28, + "to_row": 493, + "to_column": 45, + "kind": "(", + "at": 15498, + "from_row": 493, + "expression": { + "to_column": 28, + "from_column": 11, + "level": 1, + "function_nr": 30, + "name": "is_truthy_literal", + "kind": "name", + "at": 15481, + "from_row": 493, + "to_row": 493 + } + }, + "left": { + "to_column": 8, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "tv", + "kind": "name", + "at": 15476, + "from_row": 493, + "to_row": 493 + }, + "kind": "assign", + "at": 15479, + "from_row": 493, + "to_row": 493 + } + }, + { + "then": [ + { + "to_row": 494, + "from_column": 22, + "to_column": 38, + "kind": "return", + "at": 15538, + "from_row": 494, + "expression": { + "to_column": 38, + "from_column": 33, + "right": "then", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15545, + "from_row": 494, + "to_row": 494 + }, + "kind": ".", + "at": 15549, + "from_row": 494, + "to_row": 494 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 494, + "to_column": 38, + "kind": "if", + "at": 15522, + "from_row": 494, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "true", + "at": 15532, + "from_row": 494, + "to_row": 494 + }, + "left": { + "to_column": 12, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "tv", + "kind": "name", + "at": 15526, + "from_row": 494, + "to_row": 494 + }, + "kind": "==", + "at": 15529, + "from_row": 494, + "to_row": 494 + } + }, + { + "then": [ + { + "to_row": 495, + "from_column": 23, + "to_column": 39, + "kind": "return", + "at": 15578, + "from_row": 495, + "expression": { + "to_column": 39, + "from_column": 34, + "right": "else", + "left": { + "to_column": 34, + "from_column": 30, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15585, + "from_row": 495, + "to_row": 495 + }, + "kind": ".", + "at": 15589, + "from_row": 495, + "to_row": 495 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 495, + "to_column": 39, + "kind": "if", + "at": 15561, + "from_row": 495, + "expression": { + "to_column": 21, + "from_column": 13, + "right": { + "to_column": 21, + "from_column": 16, + "kind": "false", + "at": 15571, + "from_row": 495, + "to_row": 495 + }, + "left": { + "to_column": 12, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "tv", + "kind": "name", + "at": 15565, + "from_row": 495, + "to_row": 495 + }, + "kind": "==", + "at": 15568, + "from_row": 495, + "to_row": 495 + } + }, + { + "to_row": 496, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 15601, + "from_row": 496, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15608, + "from_row": 496, + "to_row": 496 + } + } + ], + "kind": "block", + "at": 15468, + "from_row": 492, + "to_row": 497 + } + ], + "from_column": 4, + "list": [], + "to_row": 497, + "to_column": 5, + "kind": "if", + "at": 15451, + "from_row": 492, + "expression": { + "to_column": 19, + "from_column": 10, + "right": { + "to_row": 492, + "from_column": 13, + "to_column": 19, + "kind": "text", + "at": 15460, + "from_row": 492, + "value": "then" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 15455, + "from_row": 492, + "to_row": 492 + }, + "kind": "==", + "at": 15457, + "from_row": 492, + "to_row": 492 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 18, + "statements": [ + { + "to_row": 501, + "from_column": 6, + "to_column": 30, + "kind": "call", + "at": 15671, + "from_row": 501, + "expression": { + "to_column": 30, + "from_column": 13, + "right": { + "to_column": 30, + "from_column": 19, + "right": "expression", + "left": { + "to_column": 19, + "from_column": 15, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15680, + "from_row": 501, + "to_row": 501 + }, + "kind": ".", + "at": 15684, + "from_row": 501, + "to_row": 501 + }, + "left": { + "to_column": 12, + "from_column": 6, + "level": 0, + "function_nr": 20, + "name": "target", + "kind": "name", + "at": 15671, + "from_row": 501, + "to_row": 501 + }, + "kind": "assign", + "at": 15678, + "from_row": 501, + "to_row": 501 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 72, + "statements": [ + { + "to_row": 503, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 15778, + "from_row": 503, + "expression": { + "to_column": 17, + "from_column": 11, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 15783, + "from_row": 503, + "to_row": 503 + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "ar", + "kind": "name", + "at": 15778, + "from_row": 503, + "to_row": 503 + }, + "kind": "assign", + "at": 15781, + "from_row": 503, + "to_row": 503 + } + }, + { + "to_row": 504, + "from_column": 8, + "to_column": 26, + "kind": "call", + "at": 15796, + "from_row": 504, + "expression": { + "to_column": 26, + "from_column": 13, + "right": { + "list": [ + { + "to_column": 25, + "from_column": 20, + "level": 0, + "function_nr": 20, + "name": "fn_nr", + "kind": "name", + "at": 15808, + "from_row": 504, + "to_row": 504 + } + ], + "from_column": 19, + "to_row": 504, + "to_column": 26, + "kind": "(", + "at": 15807, + "from_row": 504, + "expression": { + "to_column": 19, + "from_column": 15, + "level": -1, + "name": "text", + "kind": "name", + "at": 15803, + "from_row": 504, + "to_row": 504 + } + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "akey", + "kind": "name", + "at": 15796, + "from_row": 504, + "to_row": 504 + }, + "kind": "assign", + "at": 15801, + "from_row": 504, + "to_row": 504 + } + }, + { + "then": [ + { + "to_row": 505, + "from_column": 38, + "to_column": 72, + "kind": "call", + "at": 15853, + "from_row": 505, + "expression": { + "to_column": 72, + "from_column": 41, + "right": { + "to_column": 72, + "from_column": 59, + "right": { + "to_column": 71, + "from_column": 66, + "right": "name", + "left": { + "to_column": 66, + "from_column": 60, + "level": 0, + "function_nr": 20, + "name": "target", + "kind": "name", + "at": 15875, + "from_row": 505, + "to_row": 505 + }, + "kind": ".", + "at": 15881, + "from_row": 505, + "to_row": 505 + }, + "left": { + "to_column": 59, + "from_column": 53, + "right": { + "to_column": 58, + "from_column": 54, + "level": 0, + "function_nr": 20, + "name": "akey", + "kind": "name", + "at": 15869, + "from_row": 505, + "to_row": 505 + }, + "left": { + "to_column": 53, + "from_column": 43, + "level": 1, + "function_nr": 30, + "name": "fn_arities", + "kind": "name", + "at": 15858, + "from_row": 505, + "to_row": 505 + }, + "kind": "[", + "at": 15868, + "from_row": 505, + "to_row": 505 + }, + "kind": "[", + "at": 15874, + "from_row": 505, + "to_row": 505 + }, + "left": { + "to_column": 40, + "from_column": 38, + "level": 0, + "function_nr": 20, + "name": "ar", + "kind": "name", + "at": 15853, + "from_row": 505, + "to_row": 505 + }, + "kind": "assign", + "at": 15856, + "from_row": 505, + "to_row": 505 + } + } + ], + "from_column": 8, + "list": [], + "to_row": 505, + "to_column": 72, + "kind": "if", + "at": 15823, + "from_row": 505, + "expression": { + "to_column": 36, + "from_column": 29, + "right": { + "to_column": 36, + "from_column": 32, + "kind": "null", + "at": 15847, + "from_row": 505, + "to_row": 505 + }, + "left": { + "to_column": 28, + "from_column": 22, + "right": { + "to_column": 27, + "from_column": 23, + "level": 0, + "function_nr": 20, + "name": "akey", + "kind": "name", + "at": 15838, + "from_row": 505, + "to_row": 505 + }, + "left": { + "to_column": 22, + "from_column": 12, + "level": 1, + "function_nr": 30, + "name": "fn_arities", + "kind": "name", + "at": 15827, + "from_row": 505, + "to_row": 505 + }, + "kind": "[", + "at": 15837, + "from_row": 505, + "to_row": 505 + }, + "kind": "!=", + "at": 15844, + "from_row": 505, + "to_row": 505 + } + }, + { + "then": [ + { + "to_row": 506, + "from_column": 24, + "to_column": 39, + "kind": "call", + "at": 15912, + "from_row": 506, + "expression": { + "to_column": 39, + "from_column": 35, + "right": { + "to_column": 39, + "from_column": 37, + "level": 0, + "function_nr": 20, + "name": "ar", + "kind": "name", + "at": 15925, + "from_row": 506, + "to_row": 506 + }, + "left": { + "to_column": 34, + "from_column": 28, + "right": "arity", + "left": { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15912, + "from_row": 506, + "to_row": 506 + }, + "kind": ".", + "at": 15916, + "from_row": 506, + "to_row": 506 + }, + "kind": "assign", + "at": 15923, + "from_row": 506, + "to_row": 506 + } + } + ], + "from_column": 8, + "list": [], + "to_row": 506, + "to_column": 39, + "kind": "if", + "at": 15896, + "from_row": 506, + "expression": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 15906, + "from_row": 506, + "to_row": 506 + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 20, + "name": "ar", + "kind": "name", + "at": 15900, + "from_row": 506, + "to_row": 506 + }, + "kind": "!=", + "at": 15903, + "from_row": 506, + "to_row": 506 + } + } + ], + "kind": "block", + "at": 15768, + "from_row": 502, + "to_row": 507 + } + ], + "from_column": 6, + "list": [], + "to_row": 507, + "to_column": 7, + "kind": "if", + "at": 15702, + "from_row": 502, + "expression": { + "to_column": 70, + "from_column": 50, + "right": { + "to_column": 70, + "from_column": 66, + "right": { + "to_row": 502, + "from_column": 69, + "number": 0, + "to_column": 70, + "kind": "number", + "at": 15765, + "from_row": 502, + "value": "0" + }, + "left": { + "to_column": 65, + "from_column": 59, + "right": "level", + "left": { + "to_column": 59, + "from_column": 53, + "level": 0, + "function_nr": 20, + "name": "target", + "kind": "name", + "at": 15749, + "from_row": 502, + "to_row": 502 + }, + "kind": ".", + "at": 15755, + "from_row": 502, + "to_row": 502 + }, + "kind": "==", + "at": 15762, + "from_row": 502, + "to_row": 502 + }, + "left": { + "to_column": 49, + "from_column": 25, + "right": { + "to_column": 49, + "from_column": 40, + "right": { + "to_row": 502, + "from_column": 43, + "to_column": 49, + "kind": "text", + "at": 15739, + "from_row": 502, + "value": "name" + }, + "left": { + "to_column": 39, + "from_column": 34, + "right": "kind", + "left": { + "to_column": 34, + "from_column": 28, + "level": 0, + "function_nr": 20, + "name": "target", + "kind": "name", + "at": 15724, + "from_row": 502, + "to_row": 502 + }, + "kind": ".", + "at": 15730, + "from_row": 502, + "to_row": 502 + }, + "kind": "==", + "at": 15736, + "from_row": 502, + "to_row": 502 + }, + "left": { + "to_column": 24, + "from_column": 17, + "right": { + "to_column": 24, + "from_column": 20, + "kind": "null", + "at": 15716, + "from_row": 502, + "to_row": 502 + }, + "left": { + "to_column": 16, + "from_column": 10, + "level": 0, + "function_nr": 20, + "name": "target", + "kind": "name", + "at": 15706, + "from_row": 502, + "to_row": 502 + }, + "kind": "!=", + "at": 15713, + "from_row": 502, + "to_row": 502 + }, + "kind": "&&", + "at": 15721, + "from_row": 502, + "to_row": 502 + }, + "kind": "&&", + "at": 15746, + "from_row": 502, + "to_row": 502 + } + }, + { + "to_row": 508, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 15942, + "from_row": 508, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15949, + "from_row": 508, + "to_row": 508 + } + } + ], + "kind": "block", + "at": 15663, + "from_row": 500, + "to_row": 509 + } + ], + "from_column": 4, + "list": [], + "to_row": 509, + "to_column": 5, + "kind": "if", + "at": 15649, + "from_row": 500, + "expression": { + "to_column": 16, + "from_column": 10, + "right": { + "to_row": 500, + "from_column": 13, + "to_column": 16, + "kind": "text", + "at": 15658, + "from_row": 500, + "value": "(" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 20, + "name": "k", + "kind": "name", + "at": 15653, + "from_row": 500, + "to_row": 500 + }, + "kind": "==", + "at": 15655, + "from_row": 500, + "to_row": 500 + } + }, + { + "to_row": 511, + "from_column": 4, + "to_column": 15, + "kind": "return", + "at": 15965, + "from_row": 511, + "expression": { + "to_column": 15, + "from_column": 11, + "level": 0, + "function_nr": 20, + "name": "expr", + "kind": "name", + "at": 15972, + "from_row": 511, + "to_row": 511 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 8889, + "to_row": 512, + "outer": 30, + "list": [ + { + "to_column": 27, + "from_column": 23, + "name": "expr", + "kind": "name", + "at": 8898, + "from_row": 305, + "to_row": 305 + }, + { + "to_column": 34, + "from_column": 29, + "name": "fn_nr", + "kind": "name", + "at": 8904, + "from_row": 305, + "to_row": 305 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 20, + "from_row": 305 + }, + "left": { + "to_column": 11, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 8877, + "from_row": 305, + "to_row": 305 + }, + "kind": "assign", + "at": 8887, + "from_row": 305, + "to_row": 512 + } + }, + { + "to_column": 20, + "from_column": 2, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 15998, + "from_row": 514, + "to_row": 514 + }, + "left": { + "to_column": 13, + "from_column": 6, + "name": "fold_fn", + "kind": "name", + "at": 15988, + "from_row": 514, + "to_row": 514 + }, + "kind": "var", + "at": 15984, + "from_row": 514, + "to_row": 514 + }, + { + "to_row": 609, + "from_column": 2, + "to_column": 3, + "kind": "call", + "at": 16006, + "from_row": 516, + "expression": { + "to_column": 3, + "from_column": 12, + "right": { + "from_column": 14, + "nr_slots": 6, + "statements": [ + { + "then": [ + { + "to_row": 517, + "from_column": 22, + "to_column": 33, + "kind": "return", + "at": 16064, + "from_row": 517, + "expression": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 16071, + "from_row": 517, + "to_row": 517 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 517, + "to_column": 33, + "kind": "if", + "at": 16046, + "from_row": 517, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 16058, + "from_row": 517, + "to_row": 517 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16050, + "from_row": 517, + "to_row": 517 + }, + "kind": "==", + "at": 16055, + "from_row": 517, + "to_row": 517 + } + }, + { + "to_column": 21, + "from_column": 4, + "right": { + "to_column": 21, + "from_column": 16, + "right": "kind", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16088, + "from_row": 518, + "to_row": 518 + }, + "kind": ".", + "at": 16092, + "from_row": 518, + "to_row": 518 + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "k", + "kind": "name", + "at": 16084, + "from_row": 518, + "to_row": 518 + }, + "kind": "var", + "at": 16080, + "from_row": 518, + "to_row": 518 + }, + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 519, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 16110, + "from_row": 519, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "i", + "kind": "name", + "at": 16106, + "from_row": 519, + "to_row": 519 + }, + "kind": "var", + "at": 16102, + "from_row": 519, + "to_row": 519 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 16165, + "from_row": 522, + "to_row": 522 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "ik", + "kind": "name", + "at": 16160, + "from_row": 522, + "to_row": 522 + }, + "kind": "var", + "at": 16156, + "from_row": 522, + "to_row": 522 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 16183, + "from_row": 523, + "to_row": 523 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "tv", + "kind": "name", + "at": 16178, + "from_row": 523, + "to_row": 523 + }, + "kind": "var", + "at": 16174, + "from_row": 523, + "to_row": 523 + }, + { + "then": [ + { + "to_column": 5, + "from_column": 34, + "statements": [ + { + "to_row": 526, + "from_column": 6, + "to_column": 47, + "kind": "call", + "at": 16231, + "from_row": 526, + "expression": { + "to_column": 47, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 39, + "from_column": 33, + "right": "right", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16254, + "from_row": 526, + "to_row": 526 + }, + "kind": ".", + "at": 16258, + "from_row": 526, + "to_row": 526 + }, + { + "to_column": 46, + "from_column": 41, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 16266, + "from_row": 526, + "to_row": 526 + } + ], + "from_column": 28, + "to_row": 526, + "to_column": 47, + "kind": "(", + "at": 16253, + "from_row": 526, + "expression": { + "to_column": 28, + "from_column": 19, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 16244, + "from_row": 526, + "to_row": 526 + } + }, + "left": { + "to_column": 16, + "from_column": 10, + "right": "right", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16231, + "from_row": 526, + "to_row": 526 + }, + "kind": ".", + "at": 16235, + "from_row": 526, + "to_row": 526 + }, + "kind": "assign", + "at": 16242, + "from_row": 526, + "to_row": 526 + } + }, + { + "to_row": 527, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 16279, + "from_row": 527, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16286, + "from_row": 527, + "to_row": 527 + } + } + ], + "kind": "block", + "at": 16223, + "from_row": 525, + "to_row": 528 + } + ], + "from_column": 4, + "list": [], + "to_row": 528, + "to_column": 5, + "kind": "if", + "at": 16193, + "from_row": 525, + "expression": { + "to_column": 32, + "from_column": 19, + "right": { + "to_column": 32, + "from_column": 24, + "right": { + "to_row": 525, + "from_column": 27, + "to_column": 32, + "kind": "text", + "at": 16216, + "from_row": 525, + "value": "def" + }, + "left": { + "to_column": 23, + "from_column": 22, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 16211, + "from_row": 525, + "to_row": 525 + }, + "kind": "==", + "at": 16213, + "from_row": 525, + "to_row": 525 + }, + "left": { + "to_column": 18, + "from_column": 10, + "right": { + "to_row": 525, + "from_column": 13, + "to_column": 18, + "kind": "text", + "at": 16202, + "from_row": 525, + "value": "var" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 16197, + "from_row": 525, + "to_row": 525 + }, + "kind": "==", + "at": 16199, + "from_row": 525, + "to_row": 525 + }, + "kind": "||", + "at": 16208, + "from_row": 525, + "to_row": 525 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 25, + "statements": [ + { + "to_row": 530, + "from_column": 6, + "to_column": 11, + "kind": "call", + "at": 16330, + "from_row": 530, + "expression": { + "to_column": 11, + "from_column": 8, + "right": { + "to_row": 530, + "from_column": 10, + "number": 0, + "to_column": 11, + "kind": "number", + "at": 16334, + "from_row": 530, + "value": "0" + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "i", + "kind": "name", + "at": 16330, + "from_row": 530, + "to_row": 530 + }, + "kind": "assign", + "at": 16332, + "from_row": 530, + "to_row": 530 + } + }, + { + "to_row": 534, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 36, + "statements": [ + { + "to_row": 532, + "from_column": 8, + "to_column": 53, + "kind": "call", + "at": 16382, + "from_row": 532, + "expression": { + "to_column": 53, + "from_column": 21, + "right": { + "list": [ + { + "to_column": 45, + "from_column": 42, + "right": { + "to_column": 44, + "from_column": 43, + "level": 0, + "function_nr": 21, + "name": "i", + "kind": "name", + "at": 16417, + "from_row": 532, + "to_row": 532 + }, + "left": { + "to_column": 42, + "from_column": 37, + "right": "list", + "left": { + "to_column": 37, + "from_column": 33, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16407, + "from_row": 532, + "to_row": 532 + }, + "kind": ".", + "at": 16411, + "from_row": 532, + "to_row": 532 + }, + "kind": "[", + "at": 16416, + "from_row": 532, + "to_row": 532 + }, + { + "to_column": 52, + "from_column": 47, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 16421, + "from_row": 532, + "to_row": 532 + } + ], + "from_column": 32, + "to_row": 532, + "to_column": 53, + "kind": "(", + "at": 16406, + "from_row": 532, + "expression": { + "to_column": 32, + "from_column": 23, + "level": 1, + "function_nr": 30, + "name": "fold_stmt", + "kind": "name", + "at": 16397, + "from_row": 532, + "to_row": 532 + } + }, + "left": { + "to_column": 20, + "from_column": 17, + "right": { + "to_column": 19, + "from_column": 18, + "level": 0, + "function_nr": 21, + "name": "i", + "kind": "name", + "at": 16392, + "from_row": 532, + "to_row": 532 + }, + "left": { + "to_column": 17, + "from_column": 12, + "right": "list", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16382, + "from_row": 532, + "to_row": 532 + }, + "kind": ".", + "at": 16386, + "from_row": 532, + "to_row": 532 + }, + "kind": "[", + "at": 16391, + "from_row": 532, + "to_row": 532 + }, + "kind": "assign", + "at": 16395, + "from_row": 532, + "to_row": 532 + } + }, + { + "to_row": 533, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 16436, + "from_row": 533, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 533, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 16444, + "from_row": 533, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 21, + "name": "i", + "kind": "name", + "at": 16440, + "from_row": 533, + "to_row": 533 + }, + "kind": "+", + "at": 16442, + "from_row": 533, + "to_row": 533 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "i", + "kind": "name", + "at": 16436, + "from_row": 533, + "to_row": 533 + }, + "kind": "assign", + "at": 16438, + "from_row": 533, + "to_row": 533 + } + } + ], + "kind": "block", + "at": 16372, + "from_row": 531, + "to_row": 534 + } + ], + "kind": "while", + "at": 16342, + "from_row": 531, + "expression": { + "to_column": 34, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 33, + "from_column": 28, + "right": "list", + "left": { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16360, + "from_row": 531, + "to_row": 531 + }, + "kind": ".", + "at": 16364, + "from_row": 531, + "to_row": 531 + } + ], + "from_column": 23, + "to_row": 531, + "to_column": 34, + "kind": "(", + "at": 16359, + "from_row": 531, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 16353, + "from_row": 531, + "to_row": 531 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "i", + "kind": "name", + "at": 16349, + "from_row": 531, + "to_row": 531 + }, + "kind": "<", + "at": 16351, + "from_row": 531, + "to_row": 531 + } + }, + { + "to_row": 535, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 16460, + "from_row": 535, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16467, + "from_row": 535, + "to_row": 535 + } + } + ], + "kind": "block", + "at": 16322, + "from_row": 529, + "to_row": 536 + } + ], + "from_column": 4, + "list": [], + "to_row": 536, + "to_column": 5, + "kind": "if", + "at": 16301, + "from_row": 529, + "expression": { + "to_column": 23, + "from_column": 10, + "right": { + "to_row": 529, + "from_column": 13, + "to_column": 23, + "kind": "text", + "at": 16310, + "from_row": 529, + "value": "var_list" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 16305, + "from_row": 529, + "to_row": 529 + }, + "kind": "==", + "at": 16307, + "from_row": 529, + "to_row": 529 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 21, + "statements": [ + { + "to_row": 538, + "from_column": 6, + "to_column": 57, + "kind": "call", + "at": 16507, + "from_row": 538, + "expression": { + "to_column": 57, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16535, + "from_row": 538, + "to_row": 538 + }, + "kind": ".", + "at": 16539, + "from_row": 538, + "to_row": 538 + }, + { + "to_column": 56, + "from_column": 51, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 16552, + "from_row": 538, + "to_row": 538 + } + ], + "from_column": 33, + "to_row": 538, + "to_column": 57, + "kind": "(", + "at": 16534, + "from_row": 538, + "expression": { + "to_column": 33, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 16525, + "from_row": 538, + "to_row": 538 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "expression", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16507, + "from_row": 538, + "to_row": 538 + }, + "kind": ".", + "at": 16511, + "from_row": 538, + "to_row": 538 + }, + "kind": "assign", + "at": 16523, + "from_row": 538, + "to_row": 538 + } + }, + { + "to_row": 539, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 16565, + "from_row": 539, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16572, + "from_row": 539, + "to_row": 539 + } + } + ], + "kind": "block", + "at": 16499, + "from_row": 537, + "to_row": 540 + } + ], + "from_column": 4, + "list": [], + "to_row": 540, + "to_column": 5, + "kind": "if", + "at": 16482, + "from_row": 537, + "expression": { + "to_column": 19, + "from_column": 10, + "right": { + "to_row": 537, + "from_column": 13, + "to_column": 19, + "kind": "text", + "at": 16491, + "from_row": 537, + "value": "call" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 16486, + "from_row": 537, + "to_row": 537 + }, + "kind": "==", + "at": 16488, + "from_row": 537, + "to_row": 537 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 19, + "statements": [ + { + "to_row": 542, + "from_column": 6, + "to_column": 57, + "kind": "call", + "at": 16610, + "from_row": 542, + "expression": { + "to_column": 57, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16638, + "from_row": 542, + "to_row": 542 + }, + "kind": ".", + "at": 16642, + "from_row": 542, + "to_row": 542 + }, + { + "to_column": 56, + "from_column": 51, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 16655, + "from_row": 542, + "to_row": 542 + } + ], + "from_column": 33, + "to_row": 542, + "to_column": 57, + "kind": "(", + "at": 16637, + "from_row": 542, + "expression": { + "to_column": 33, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 16628, + "from_row": 542, + "to_row": 542 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "expression", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16610, + "from_row": 542, + "to_row": 542 + }, + "kind": ".", + "at": 16614, + "from_row": 542, + "to_row": 542 + }, + "kind": "assign", + "at": 16626, + "from_row": 542, + "to_row": 542 + } + }, + { + "to_row": 543, + "from_column": 6, + "to_column": 45, + "kind": "call", + "at": 16668, + "from_row": 543, + "expression": { + "to_column": 45, + "from_column": 9, + "right": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "expression", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16691, + "from_row": 543, + "to_row": 543 + }, + "kind": ".", + "at": 16695, + "from_row": 543, + "to_row": 543 + } + ], + "from_column": 28, + "to_row": 543, + "to_column": 45, + "kind": "(", + "at": 16690, + "from_row": 543, + "expression": { + "to_column": 28, + "from_column": 11, + "level": 1, + "function_nr": 30, + "name": "is_truthy_literal", + "kind": "name", + "at": 16673, + "from_row": 543, + "to_row": 543 + } + }, + "left": { + "to_column": 8, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "tv", + "kind": "name", + "at": 16668, + "from_row": 543, + "to_row": 543 + }, + "kind": "assign", + "at": 16671, + "from_row": 543, + "to_row": 543 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 22, + "statements": [ + { + "to_row": 545, + "from_column": 8, + "to_column": 48, + "kind": "call", + "at": 16740, + "from_row": 545, + "expression": { + "to_column": 48, + "from_column": 18, + "right": { + "list": [ + { + "to_column": 40, + "from_column": 35, + "right": "then", + "left": { + "to_column": 35, + "from_column": 31, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16763, + "from_row": 545, + "to_row": 545 + }, + "kind": ".", + "at": 16767, + "from_row": 545, + "to_row": 545 + }, + { + "to_column": 47, + "from_column": 42, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 16774, + "from_row": 545, + "to_row": 545 + } + ], + "from_column": 30, + "to_row": 545, + "to_column": 48, + "kind": "(", + "at": 16762, + "from_row": 545, + "expression": { + "to_column": 30, + "from_column": 20, + "level": 1, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 16752, + "from_row": 545, + "to_row": 545 + } + }, + "left": { + "to_column": 17, + "from_column": 12, + "right": "then", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16740, + "from_row": 545, + "to_row": 545 + }, + "kind": ".", + "at": 16744, + "from_row": 545, + "to_row": 545 + }, + "kind": "assign", + "at": 16750, + "from_row": 545, + "to_row": 545 + } + }, + { + "to_row": 548, + "from_column": 8, + "to_column": 57, + "kind": "return", + "at": 16789, + "from_row": 546, + "expression": { + "list": [ + { + "left": { + "to_column": 20, + "from_column": 16, + "name": "kind", + "kind": "name", + "at": 16797, + "from_row": 546, + "to_row": 546 + }, + "right": { + "to_row": 546, + "from_column": 22, + "to_column": 29, + "kind": "text", + "at": 16803, + "from_row": 546, + "value": "block" + } + }, + { + "left": { + "to_column": 41, + "from_column": 31, + "name": "statements", + "kind": "name", + "at": 16812, + "from_row": 546, + "to_row": 546 + }, + "right": { + "to_column": 52, + "from_column": 47, + "right": "then", + "left": { + "to_column": 47, + "from_column": 43, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16824, + "from_row": 546, + "to_row": 546 + }, + "kind": ".", + "at": 16828, + "from_row": 546, + "to_row": 546 + } + }, + { + "left": { + "to_column": 12, + "from_column": 10, + "name": "at", + "kind": "name", + "at": 16845, + "from_row": 547, + "to_row": 547 + }, + "right": { + "to_column": 21, + "from_column": 18, + "right": "at", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16849, + "from_row": 547, + "to_row": 547 + }, + "kind": ".", + "at": 16853, + "from_row": 547, + "to_row": 547 + } + }, + { + "left": { + "to_column": 31, + "from_column": 23, + "name": "from_row", + "kind": "name", + "at": 16858, + "from_row": 547, + "to_row": 547 + }, + "right": { + "to_column": 46, + "from_column": 37, + "right": "from_row", + "left": { + "to_column": 37, + "from_column": 33, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16868, + "from_row": 547, + "to_row": 547 + }, + "kind": ".", + "at": 16872, + "from_row": 547, + "to_row": 547 + } + }, + { + "left": { + "to_column": 59, + "from_column": 48, + "name": "from_column", + "kind": "name", + "at": 16883, + "from_row": 547, + "to_row": 547 + }, + "right": { + "to_column": 77, + "from_column": 65, + "right": "from_column", + "left": { + "to_column": 65, + "from_column": 61, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16896, + "from_row": 547, + "to_row": 547 + }, + "kind": ".", + "at": 16900, + "from_row": 547, + "to_row": 547 + } + }, + { + "left": { + "to_column": 16, + "from_column": 10, + "name": "to_row", + "kind": "name", + "at": 16924, + "from_row": 548, + "to_row": 548 + }, + "right": { + "to_column": 29, + "from_column": 22, + "right": "to_row", + "left": { + "to_column": 22, + "from_column": 18, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16932, + "from_row": 548, + "to_row": 548 + }, + "kind": ".", + "at": 16936, + "from_row": 548, + "to_row": 548 + } + }, + { + "left": { + "to_column": 40, + "from_column": 31, + "name": "to_column", + "kind": "name", + "at": 16945, + "from_row": 548, + "to_row": 548 + }, + "right": { + "to_column": 56, + "from_column": 46, + "right": "to_column", + "left": { + "to_column": 46, + "from_column": 42, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 16956, + "from_row": 548, + "to_row": 548 + }, + "kind": ".", + "at": 16960, + "from_row": 548, + "to_row": 548 + } + } + ], + "from_column": 15, + "to_column": 56, + "kind": "record", + "at": 16796, + "from_row": 546, + "to_row": 548 + } + } + ], + "kind": "block", + "at": 16730, + "from_row": 544, + "to_row": 549 + } + ], + "from_column": 6, + "list": [], + "to_row": 549, + "to_column": 7, + "kind": "if", + "at": 16714, + "from_row": 544, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "true", + "at": 16724, + "from_row": 544, + "to_row": 544 + }, + "left": { + "to_column": 12, + "from_column": 10, + "level": 0, + "function_nr": 21, + "name": "tv", + "kind": "name", + "at": 16718, + "from_row": 544, + "to_row": 544 + }, + "kind": "==", + "at": 16721, + "from_row": 544, + "to_row": 544 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 23, + "statements": [ + { + "then": [ + { + "to_column": 9, + "from_column": 56, + "statements": [ + { + "to_row": 552, + "from_column": 10, + "to_column": 50, + "kind": "call", + "at": 17073, + "from_row": 552, + "expression": { + "to_column": 50, + "from_column": 20, + "right": { + "list": [ + { + "to_column": 42, + "from_column": 37, + "right": "else", + "left": { + "to_column": 37, + "from_column": 33, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17096, + "from_row": 552, + "to_row": 552 + }, + "kind": ".", + "at": 17100, + "from_row": 552, + "to_row": 552 + }, + { + "to_column": 49, + "from_column": 44, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 17107, + "from_row": 552, + "to_row": 552 + } + ], + "from_column": 32, + "to_row": 552, + "to_column": 50, + "kind": "(", + "at": 17095, + "from_row": 552, + "expression": { + "to_column": 32, + "from_column": 22, + "level": 1, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 17085, + "from_row": 552, + "to_row": 552 + } + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "else", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17073, + "from_row": 552, + "to_row": 552 + }, + "kind": ".", + "at": 17077, + "from_row": 552, + "to_row": 552 + }, + "kind": "assign", + "at": 17083, + "from_row": 552, + "to_row": 552 + } + }, + { + "to_row": 555, + "from_column": 10, + "to_column": 59, + "kind": "return", + "at": 17124, + "from_row": 553, + "expression": { + "list": [ + { + "left": { + "to_column": 22, + "from_column": 18, + "name": "kind", + "kind": "name", + "at": 17132, + "from_row": 553, + "to_row": 553 + }, + "right": { + "to_row": 553, + "from_column": 24, + "to_column": 31, + "kind": "text", + "at": 17138, + "from_row": 553, + "value": "block" + } + }, + { + "left": { + "to_column": 43, + "from_column": 33, + "name": "statements", + "kind": "name", + "at": 17147, + "from_row": 553, + "to_row": 553 + }, + "right": { + "to_column": 54, + "from_column": 49, + "right": "else", + "left": { + "to_column": 49, + "from_column": 45, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17159, + "from_row": 553, + "to_row": 553 + }, + "kind": ".", + "at": 17163, + "from_row": 553, + "to_row": 553 + } + }, + { + "left": { + "to_column": 14, + "from_column": 12, + "name": "at", + "kind": "name", + "at": 17182, + "from_row": 554, + "to_row": 554 + }, + "right": { + "to_column": 23, + "from_column": 20, + "right": "at", + "left": { + "to_column": 20, + "from_column": 16, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17186, + "from_row": 554, + "to_row": 554 + }, + "kind": ".", + "at": 17190, + "from_row": 554, + "to_row": 554 + } + }, + { + "left": { + "to_column": 33, + "from_column": 25, + "name": "from_row", + "kind": "name", + "at": 17195, + "from_row": 554, + "to_row": 554 + }, + "right": { + "to_column": 48, + "from_column": 39, + "right": "from_row", + "left": { + "to_column": 39, + "from_column": 35, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17205, + "from_row": 554, + "to_row": 554 + }, + "kind": ".", + "at": 17209, + "from_row": 554, + "to_row": 554 + } + }, + { + "left": { + "to_column": 61, + "from_column": 50, + "name": "from_column", + "kind": "name", + "at": 17220, + "from_row": 554, + "to_row": 554 + }, + "right": { + "to_column": 79, + "from_column": 67, + "right": "from_column", + "left": { + "to_column": 67, + "from_column": 63, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17233, + "from_row": 554, + "to_row": 554 + }, + "kind": ".", + "at": 17237, + "from_row": 554, + "to_row": 554 + } + }, + { + "left": { + "to_column": 18, + "from_column": 12, + "name": "to_row", + "kind": "name", + "at": 17263, + "from_row": 555, + "to_row": 555 + }, + "right": { + "to_column": 31, + "from_column": 24, + "right": "to_row", + "left": { + "to_column": 24, + "from_column": 20, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17271, + "from_row": 555, + "to_row": 555 + }, + "kind": ".", + "at": 17275, + "from_row": 555, + "to_row": 555 + } + }, + { + "left": { + "to_column": 42, + "from_column": 33, + "name": "to_column", + "kind": "name", + "at": 17284, + "from_row": 555, + "to_row": 555 + }, + "right": { + "to_column": 58, + "from_column": 48, + "right": "to_column", + "left": { + "to_column": 48, + "from_column": 44, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17295, + "from_row": 555, + "to_row": 555 + }, + "kind": ".", + "at": 17299, + "from_row": 555, + "to_row": 555 + } + } + ], + "from_column": 17, + "to_column": 58, + "kind": "record", + "at": 17131, + "from_row": 553, + "to_row": 555 + } + } + ], + "kind": "block", + "at": 17061, + "from_row": 551, + "to_row": 556 + } + ], + "from_column": 8, + "list": [], + "to_row": 556, + "to_column": 9, + "kind": "if", + "at": 17013, + "from_row": 551, + "expression": { + "to_column": 54, + "from_column": 30, + "right": { + "to_column": 54, + "from_column": 51, + "right": { + "to_row": 551, + "from_column": 53, + "number": 0, + "to_column": 54, + "kind": "number", + "at": 17058, + "from_row": 551, + "value": "0" + }, + "left": { + "list": [ + { + "to_column": 49, + "from_column": 44, + "right": "else", + "left": { + "to_column": 44, + "from_column": 40, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17045, + "from_row": 551, + "to_row": 551 + }, + "kind": ".", + "at": 17049, + "from_row": 551, + "to_row": 551 + } + ], + "from_column": 39, + "to_row": 551, + "to_column": 50, + "kind": "(", + "at": 17044, + "from_row": 551, + "expression": { + "to_column": 39, + "from_column": 33, + "level": -1, + "name": "length", + "kind": "name", + "at": 17038, + "from_row": 551, + "to_row": 551 + } + }, + "kind": ">", + "at": 17056, + "from_row": 551, + "to_row": 551 + }, + "left": { + "to_column": 29, + "from_column": 22, + "right": { + "to_column": 29, + "from_column": 25, + "kind": "null", + "at": 17030, + "from_row": 551, + "to_row": 551 + }, + "left": { + "to_column": 21, + "from_column": 16, + "right": "else", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17017, + "from_row": 551, + "to_row": 551 + }, + "kind": ".", + "at": 17021, + "from_row": 551, + "to_row": 551 + }, + "kind": "!=", + "at": 17027, + "from_row": 551, + "to_row": 551 + }, + "kind": "&&", + "at": 17035, + "from_row": 551, + "to_row": 551 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 56, + "statements": [ + { + "to_row": 558, + "from_column": 10, + "to_column": 47, + "kind": "return", + "at": 17389, + "from_row": 558, + "expression": { + "list": [ + { + "to_column": 39, + "from_column": 36, + "right": { + "to_row": 558, + "from_column": 37, + "number": 0, + "to_column": 38, + "kind": "number", + "at": 17416, + "from_row": 558, + "value": "0" + }, + "left": { + "to_column": 36, + "from_column": 31, + "right": "list", + "left": { + "to_column": 31, + "from_column": 27, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17406, + "from_row": 558, + "to_row": 558 + }, + "kind": ".", + "at": 17410, + "from_row": 558, + "to_row": 558 + }, + "kind": "[", + "at": 17415, + "from_row": 558, + "to_row": 558 + }, + { + "to_column": 46, + "from_column": 41, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 17420, + "from_row": 558, + "to_row": 558 + } + ], + "from_column": 26, + "to_row": 558, + "to_column": 47, + "kind": "(", + "at": 17405, + "from_row": 558, + "expression": { + "to_column": 26, + "from_column": 17, + "level": 1, + "function_nr": 30, + "name": "fold_stmt", + "kind": "name", + "at": 17396, + "from_row": 558, + "to_row": 558 + } + } + } + ], + "kind": "block", + "at": 17377, + "from_row": 557, + "to_row": 559 + } + ], + "from_column": 8, + "list": [], + "to_row": 559, + "to_column": 9, + "kind": "if", + "at": 17329, + "from_row": 557, + "expression": { + "to_column": 54, + "from_column": 30, + "right": { + "to_column": 54, + "from_column": 51, + "right": { + "to_row": 557, + "from_column": 53, + "number": 0, + "to_column": 54, + "kind": "number", + "at": 17374, + "from_row": 557, + "value": "0" + }, + "left": { + "list": [ + { + "to_column": 49, + "from_column": 44, + "right": "list", + "left": { + "to_column": 44, + "from_column": 40, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17361, + "from_row": 557, + "to_row": 557 + }, + "kind": ".", + "at": 17365, + "from_row": 557, + "to_row": 557 + } + ], + "from_column": 39, + "to_row": 557, + "to_column": 50, + "kind": "(", + "at": 17360, + "from_row": 557, + "expression": { + "to_column": 39, + "from_column": 33, + "level": -1, + "name": "length", + "kind": "name", + "at": 17354, + "from_row": 557, + "to_row": 557 + } + }, + "kind": ">", + "at": 17372, + "from_row": 557, + "to_row": 557 + }, + "left": { + "to_column": 29, + "from_column": 22, + "right": { + "to_column": 29, + "from_column": 25, + "kind": "null", + "at": 17346, + "from_row": 557, + "to_row": 557 + }, + "left": { + "to_column": 21, + "from_column": 16, + "right": "list", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17333, + "from_row": 557, + "to_row": 557 + }, + "kind": ".", + "at": 17337, + "from_row": 557, + "to_row": 557 + }, + "kind": "!=", + "at": 17343, + "from_row": 557, + "to_row": 557 + }, + "kind": "&&", + "at": 17351, + "from_row": 557, + "to_row": 557 + } + }, + { + "to_row": 560, + "from_column": 8, + "to_column": 19, + "kind": "return", + "at": 17445, + "from_row": 560, + "expression": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 17452, + "from_row": 560, + "to_row": 560 + } + } + ], + "kind": "block", + "at": 17003, + "from_row": 550, + "to_row": 561 + } + ], + "from_column": 6, + "list": [], + "to_row": 561, + "to_column": 7, + "kind": "if", + "at": 16986, + "from_row": 550, + "expression": { + "to_column": 21, + "from_column": 13, + "right": { + "to_column": 21, + "from_column": 16, + "kind": "false", + "at": 16996, + "from_row": 550, + "to_row": 550 + }, + "left": { + "to_column": 12, + "from_column": 10, + "level": 0, + "function_nr": 21, + "name": "tv", + "kind": "name", + "at": 16990, + "from_row": 550, + "to_row": 550 + }, + "kind": "==", + "at": 16993, + "from_row": 550, + "to_row": 550 + } + }, + { + "to_row": 562, + "from_column": 6, + "to_column": 46, + "kind": "call", + "at": 17471, + "from_row": 562, + "expression": { + "to_column": 46, + "from_column": 16, + "right": { + "list": [ + { + "to_column": 38, + "from_column": 33, + "right": "then", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17494, + "from_row": 562, + "to_row": 562 + }, + "kind": ".", + "at": 17498, + "from_row": 562, + "to_row": 562 + }, + { + "to_column": 45, + "from_column": 40, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 17505, + "from_row": 562, + "to_row": 562 + } + ], + "from_column": 28, + "to_row": 562, + "to_column": 46, + "kind": "(", + "at": 17493, + "from_row": 562, + "expression": { + "to_column": 28, + "from_column": 18, + "level": 1, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 17483, + "from_row": 562, + "to_row": 562 + } + }, + "left": { + "to_column": 15, + "from_column": 10, + "right": "then", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17471, + "from_row": 562, + "to_row": 562 + }, + "kind": ".", + "at": 17475, + "from_row": 562, + "to_row": 562 + }, + "kind": "assign", + "at": 17481, + "from_row": 562, + "to_row": 562 + } + }, + { + "to_row": 563, + "from_column": 6, + "to_column": 46, + "kind": "call", + "at": 17518, + "from_row": 563, + "expression": { + "to_column": 46, + "from_column": 16, + "right": { + "list": [ + { + "to_column": 38, + "from_column": 33, + "right": "list", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17541, + "from_row": 563, + "to_row": 563 + }, + "kind": ".", + "at": 17545, + "from_row": 563, + "to_row": 563 + }, + { + "to_column": 45, + "from_column": 40, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 17552, + "from_row": 563, + "to_row": 563 + } + ], + "from_column": 28, + "to_row": 563, + "to_column": 46, + "kind": "(", + "at": 17540, + "from_row": 563, + "expression": { + "to_column": 28, + "from_column": 18, + "level": 1, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 17530, + "from_row": 563, + "to_row": 563 + } + }, + "left": { + "to_column": 15, + "from_column": 10, + "right": "list", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17518, + "from_row": 563, + "to_row": 563 + }, + "kind": ".", + "at": 17522, + "from_row": 563, + "to_row": 563 + }, + "kind": "assign", + "at": 17528, + "from_row": 563, + "to_row": 563 + } + }, + { + "then": [ + { + "to_row": 564, + "from_column": 29, + "to_column": 69, + "kind": "call", + "at": 17588, + "from_row": 564, + "expression": { + "to_column": 69, + "from_column": 39, + "right": { + "list": [ + { + "to_column": 61, + "from_column": 56, + "right": "else", + "left": { + "to_column": 56, + "from_column": 52, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17611, + "from_row": 564, + "to_row": 564 + }, + "kind": ".", + "at": 17615, + "from_row": 564, + "to_row": 564 + }, + { + "to_column": 68, + "from_column": 63, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 17622, + "from_row": 564, + "to_row": 564 + } + ], + "from_column": 51, + "to_row": 564, + "to_column": 69, + "kind": "(", + "at": 17610, + "from_row": 564, + "expression": { + "to_column": 51, + "from_column": 41, + "level": 1, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 17600, + "from_row": 564, + "to_row": 564 + } + }, + "left": { + "to_column": 38, + "from_column": 33, + "right": "else", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17588, + "from_row": 564, + "to_row": 564 + }, + "kind": ".", + "at": 17592, + "from_row": 564, + "to_row": 564 + }, + "kind": "assign", + "at": 17598, + "from_row": 564, + "to_row": 564 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 564, + "to_column": 69, + "kind": "if", + "at": 17565, + "from_row": 564, + "expression": { + "to_column": 27, + "from_column": 20, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "null", + "at": 17582, + "from_row": 564, + "to_row": 564 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "else", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17569, + "from_row": 564, + "to_row": 564 + }, + "kind": ".", + "at": 17573, + "from_row": 564, + "to_row": 564 + }, + "kind": "!=", + "at": 17579, + "from_row": 564, + "to_row": 564 + } + }, + { + "to_row": 565, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 17635, + "from_row": 565, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17642, + "from_row": 565, + "to_row": 565 + } + } + ], + "kind": "block", + "at": 16602, + "from_row": 541, + "to_row": 566 + } + ], + "from_column": 4, + "list": [], + "to_row": 566, + "to_column": 5, + "kind": "if", + "at": 16587, + "from_row": 541, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_row": 541, + "from_column": 13, + "to_column": 17, + "kind": "text", + "at": 16596, + "from_row": 541, + "value": "if" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 16591, + "from_row": 541, + "to_row": 541 + }, + "kind": "==", + "at": 16593, + "from_row": 541, + "to_row": 541 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 22, + "statements": [ + { + "to_row": 568, + "from_column": 6, + "to_column": 57, + "kind": "call", + "at": 17683, + "from_row": 568, + "expression": { + "to_column": 57, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17711, + "from_row": 568, + "to_row": 568 + }, + "kind": ".", + "at": 17715, + "from_row": 568, + "to_row": 568 + }, + { + "to_column": 56, + "from_column": 51, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 17728, + "from_row": 568, + "to_row": 568 + } + ], + "from_column": 33, + "to_row": 568, + "to_column": 57, + "kind": "(", + "at": 17710, + "from_row": 568, + "expression": { + "to_column": 33, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 17701, + "from_row": 568, + "to_row": 568 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "expression", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17683, + "from_row": 568, + "to_row": 568 + }, + "kind": ".", + "at": 17687, + "from_row": 568, + "to_row": 568 + }, + "kind": "assign", + "at": 17699, + "from_row": 568, + "to_row": 568 + } + }, + { + "then": [ + { + "to_row": 569, + "from_column": 77, + "to_column": 88, + "kind": "return", + "at": 17812, + "from_row": 569, + "expression": { + "to_column": 88, + "from_column": 84, + "kind": "null", + "at": 17819, + "from_row": 569, + "to_row": 569 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 569, + "to_column": 88, + "kind": "if", + "at": 17741, + "from_row": 569, + "expression": { + "to_column": 75, + "from_column": 42, + "right": { + "to_column": 75, + "from_column": 66, + "right": { + "to_row": 569, + "from_column": 69, + "to_column": 75, + "kind": "text", + "at": 17804, + "from_row": 569, + "value": "null" + }, + "left": { + "to_column": 65, + "from_column": 60, + "right": "kind", + "left": { + "to_column": 60, + "from_column": 49, + "right": "expression", + "left": { + "to_column": 49, + "from_column": 45, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17780, + "from_row": 569, + "to_row": 569 + }, + "kind": ".", + "at": 17784, + "from_row": 569, + "to_row": 569 + }, + "kind": ".", + "at": 17795, + "from_row": 569, + "to_row": 569 + }, + "kind": "==", + "at": 17801, + "from_row": 569, + "to_row": 569 + }, + "left": { + "to_column": 41, + "from_column": 31, + "right": { + "to_row": 569, + "from_column": 34, + "to_column": 41, + "kind": "text", + "at": 17769, + "from_row": 569, + "value": "false" + }, + "left": { + "to_column": 30, + "from_column": 25, + "right": "kind", + "left": { + "to_column": 25, + "from_column": 14, + "right": "expression", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17745, + "from_row": 569, + "to_row": 569 + }, + "kind": ".", + "at": 17749, + "from_row": 569, + "to_row": 569 + }, + "kind": ".", + "at": 17760, + "from_row": 569, + "to_row": 569 + }, + "kind": "==", + "at": 17766, + "from_row": 569, + "to_row": 569 + }, + "kind": "||", + "at": 17777, + "from_row": 569, + "to_row": 569 + } + }, + { + "to_row": 570, + "from_column": 6, + "to_column": 58, + "kind": "call", + "at": 17830, + "from_row": 570, + "expression": { + "to_column": 58, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 50, + "from_column": 39, + "right": "statements", + "left": { + "to_column": 39, + "from_column": 35, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17859, + "from_row": 570, + "to_row": 570 + }, + "kind": ".", + "at": 17863, + "from_row": 570, + "to_row": 570 + }, + { + "to_column": 57, + "from_column": 52, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 17876, + "from_row": 570, + "to_row": 570 + } + ], + "from_column": 34, + "to_row": 570, + "to_column": 58, + "kind": "(", + "at": 17858, + "from_row": 570, + "expression": { + "to_column": 34, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 17848, + "from_row": 570, + "to_row": 570 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "statements", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17830, + "from_row": 570, + "to_row": 570 + }, + "kind": ".", + "at": 17834, + "from_row": 570, + "to_row": 570 + }, + "kind": "assign", + "at": 17846, + "from_row": 570, + "to_row": 570 + } + }, + { + "to_row": 571, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 17889, + "from_row": 571, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17896, + "from_row": 571, + "to_row": 571 + } + } + ], + "kind": "block", + "at": 17675, + "from_row": 567, + "to_row": 572 + } + ], + "from_column": 4, + "list": [], + "to_row": 572, + "to_column": 5, + "kind": "if", + "at": 17657, + "from_row": 567, + "expression": { + "to_column": 20, + "from_column": 10, + "right": { + "to_row": 567, + "from_column": 13, + "to_column": 20, + "kind": "text", + "at": 17666, + "from_row": 567, + "value": "while" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 17661, + "from_row": 567, + "to_row": 567 + }, + "kind": "==", + "at": 17663, + "from_row": 567, + "to_row": 567 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 19, + "statements": [ + { + "to_row": 574, + "from_column": 6, + "to_column": 58, + "kind": "call", + "at": 17934, + "from_row": 574, + "expression": { + "to_column": 58, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 50, + "from_column": 39, + "right": "statements", + "left": { + "to_column": 39, + "from_column": 35, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17963, + "from_row": 574, + "to_row": 574 + }, + "kind": ".", + "at": 17967, + "from_row": 574, + "to_row": 574 + }, + { + "to_column": 57, + "from_column": 52, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 17980, + "from_row": 574, + "to_row": 574 + } + ], + "from_column": 34, + "to_row": 574, + "to_column": 58, + "kind": "(", + "at": 17962, + "from_row": 574, + "expression": { + "to_column": 34, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 17952, + "from_row": 574, + "to_row": 574 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "statements", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17934, + "from_row": 574, + "to_row": 574 + }, + "kind": ".", + "at": 17938, + "from_row": 574, + "to_row": 574 + }, + "kind": "assign", + "at": 17950, + "from_row": 574, + "to_row": 574 + } + }, + { + "to_row": 575, + "from_column": 6, + "to_column": 57, + "kind": "call", + "at": 17993, + "from_row": 575, + "expression": { + "to_column": 57, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18021, + "from_row": 575, + "to_row": 575 + }, + "kind": ".", + "at": 18025, + "from_row": 575, + "to_row": 575 + }, + { + "to_column": 56, + "from_column": 51, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 18038, + "from_row": 575, + "to_row": 575 + } + ], + "from_column": 33, + "to_row": 575, + "to_column": 57, + "kind": "(", + "at": 18020, + "from_row": 575, + "expression": { + "to_column": 33, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 18011, + "from_row": 575, + "to_row": 575 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "expression", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 17993, + "from_row": 575, + "to_row": 575 + }, + "kind": ".", + "at": 17997, + "from_row": 575, + "to_row": 575 + }, + "kind": "assign", + "at": 18009, + "from_row": 575, + "to_row": 575 + } + }, + { + "to_row": 576, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 18051, + "from_row": 576, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18058, + "from_row": 576, + "to_row": 576 + } + } + ], + "kind": "block", + "at": 17926, + "from_row": 573, + "to_row": 577 + } + ], + "from_column": 4, + "list": [], + "to_row": 577, + "to_column": 5, + "kind": "if", + "at": 17911, + "from_row": 573, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_row": 573, + "from_column": 13, + "to_column": 17, + "kind": "text", + "at": 17920, + "from_row": 573, + "value": "do" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 17915, + "from_row": 573, + "to_row": 573 + }, + "kind": "==", + "at": 17917, + "from_row": 573, + "to_row": 573 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 20, + "statements": [ + { + "then": [ + { + "to_column": 7, + "from_column": 29, + "statements": [ + { + "to_row": 580, + "from_column": 8, + "to_column": 27, + "kind": "call", + "at": 18130, + "from_row": 580, + "expression": { + "to_column": 27, + "from_column": 11, + "right": { + "to_column": 27, + "from_column": 22, + "right": "kind", + "left": { + "to_column": 22, + "from_column": 17, + "right": "init", + "left": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18135, + "from_row": 580, + "to_row": 580 + }, + "kind": ".", + "at": 18139, + "from_row": 580, + "to_row": 580 + }, + "kind": ".", + "at": 18144, + "from_row": 580, + "to_row": 580 + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "ik", + "kind": "name", + "at": 18130, + "from_row": 580, + "to_row": 580 + }, + "kind": "assign", + "at": 18133, + "from_row": 580, + "to_row": 580 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 40, + "statements": [ + { + "to_row": 582, + "from_column": 10, + "to_column": 49, + "kind": "call", + "at": 18202, + "from_row": 582, + "expression": { + "to_column": 49, + "from_column": 20, + "right": { + "list": [ + { + "to_column": 41, + "from_column": 36, + "right": "init", + "left": { + "to_column": 36, + "from_column": 32, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18224, + "from_row": 582, + "to_row": 582 + }, + "kind": ".", + "at": 18228, + "from_row": 582, + "to_row": 582 + }, + { + "to_column": 48, + "from_column": 43, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 18235, + "from_row": 582, + "to_row": 582 + } + ], + "from_column": 31, + "to_row": 582, + "to_column": 49, + "kind": "(", + "at": 18223, + "from_row": 582, + "expression": { + "to_column": 31, + "from_column": 22, + "level": 1, + "function_nr": 30, + "name": "fold_stmt", + "kind": "name", + "at": 18214, + "from_row": 582, + "to_row": 582 + } + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "init", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18202, + "from_row": 582, + "to_row": 582 + }, + "kind": ".", + "at": 18206, + "from_row": 582, + "to_row": 582 + }, + "kind": "assign", + "at": 18212, + "from_row": 582, + "to_row": 582 + } + } + ], + "kind": "block", + "at": 18190, + "from_row": 581, + "to_row": 583 + } + ], + "from_column": 8, + "list": [], + "else": [ + { + "to_column": 9, + "from_column": 15, + "statements": [ + { + "to_row": 584, + "from_column": 10, + "to_column": 49, + "kind": "call", + "at": 18269, + "from_row": 584, + "expression": { + "to_column": 49, + "from_column": 20, + "right": { + "list": [ + { + "to_column": 41, + "from_column": 36, + "right": "init", + "left": { + "to_column": 36, + "from_column": 32, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18291, + "from_row": 584, + "to_row": 584 + }, + "kind": ".", + "at": 18295, + "from_row": 584, + "to_row": 584 + }, + { + "to_column": 48, + "from_column": 43, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 18302, + "from_row": 584, + "to_row": 584 + } + ], + "from_column": 31, + "to_row": 584, + "to_column": 49, + "kind": "(", + "at": 18290, + "from_row": 584, + "expression": { + "to_column": 31, + "from_column": 22, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 18281, + "from_row": 584, + "to_row": 584 + } + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "init", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18269, + "from_row": 584, + "to_row": 584 + }, + "kind": ".", + "at": 18273, + "from_row": 584, + "to_row": 584 + }, + "kind": "assign", + "at": 18279, + "from_row": 584, + "to_row": 584 + } + } + ], + "kind": "block", + "at": 18257, + "from_row": 583, + "to_row": 585 + } + ], + "to_row": 585, + "to_column": 9, + "kind": "if", + "at": 18158, + "from_row": 581, + "expression": { + "to_column": 38, + "from_column": 24, + "right": { + "to_column": 38, + "from_column": 30, + "right": { + "to_row": 581, + "from_column": 33, + "to_column": 38, + "kind": "text", + "at": 18183, + "from_row": 581, + "value": "def" + }, + "left": { + "to_column": 29, + "from_column": 27, + "level": 0, + "function_nr": 21, + "name": "ik", + "kind": "name", + "at": 18177, + "from_row": 581, + "to_row": 581 + }, + "kind": "==", + "at": 18180, + "from_row": 581, + "to_row": 581 + }, + "left": { + "to_column": 23, + "from_column": 15, + "right": { + "to_row": 581, + "from_column": 18, + "to_column": 23, + "kind": "text", + "at": 18168, + "from_row": 581, + "value": "var" + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 21, + "name": "ik", + "kind": "name", + "at": 18162, + "from_row": 581, + "to_row": 581 + }, + "kind": "==", + "at": 18165, + "from_row": 581, + "to_row": 581 + }, + "kind": "||", + "at": 18174, + "from_row": 581, + "to_row": 581 + } + } + ], + "kind": "block", + "at": 18120, + "from_row": 579, + "to_row": 586 + } + ], + "from_column": 6, + "list": [], + "to_row": 586, + "to_column": 7, + "kind": "if", + "at": 18097, + "from_row": 579, + "expression": { + "to_column": 27, + "from_column": 20, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "null", + "at": 18114, + "from_row": 579, + "to_row": 579 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "init", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18101, + "from_row": 579, + "to_row": 579 + }, + "kind": ".", + "at": 18105, + "from_row": 579, + "to_row": 579 + }, + "kind": "!=", + "at": 18111, + "from_row": 579, + "to_row": 579 + } + }, + { + "then": [ + { + "to_row": 587, + "from_column": 29, + "to_column": 68, + "kind": "call", + "at": 18356, + "from_row": 587, + "expression": { + "to_column": 68, + "from_column": 39, + "right": { + "list": [ + { + "to_column": 60, + "from_column": 55, + "right": "test", + "left": { + "to_column": 55, + "from_column": 51, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18378, + "from_row": 587, + "to_row": 587 + }, + "kind": ".", + "at": 18382, + "from_row": 587, + "to_row": 587 + }, + { + "to_column": 67, + "from_column": 62, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 18389, + "from_row": 587, + "to_row": 587 + } + ], + "from_column": 50, + "to_row": 587, + "to_column": 68, + "kind": "(", + "at": 18377, + "from_row": 587, + "expression": { + "to_column": 50, + "from_column": 41, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 18368, + "from_row": 587, + "to_row": 587 + } + }, + "left": { + "to_column": 38, + "from_column": 33, + "right": "test", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18356, + "from_row": 587, + "to_row": 587 + }, + "kind": ".", + "at": 18360, + "from_row": 587, + "to_row": 587 + }, + "kind": "assign", + "at": 18366, + "from_row": 587, + "to_row": 587 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 587, + "to_column": 68, + "kind": "if", + "at": 18333, + "from_row": 587, + "expression": { + "to_column": 27, + "from_column": 20, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "null", + "at": 18350, + "from_row": 587, + "to_row": 587 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "test", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18337, + "from_row": 587, + "to_row": 587 + }, + "kind": ".", + "at": 18341, + "from_row": 587, + "to_row": 587 + }, + "kind": "!=", + "at": 18347, + "from_row": 587, + "to_row": 587 + } + }, + { + "then": [ + { + "to_row": 588, + "from_column": 31, + "to_column": 74, + "kind": "call", + "at": 18427, + "from_row": 588, + "expression": { + "to_column": 74, + "from_column": 43, + "right": { + "list": [ + { + "to_column": 66, + "from_column": 59, + "right": "update", + "left": { + "to_column": 59, + "from_column": 55, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18451, + "from_row": 588, + "to_row": 588 + }, + "kind": ".", + "at": 18455, + "from_row": 588, + "to_row": 588 + }, + { + "to_column": 73, + "from_column": 68, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 18464, + "from_row": 588, + "to_row": 588 + } + ], + "from_column": 54, + "to_row": 588, + "to_column": 74, + "kind": "(", + "at": 18450, + "from_row": 588, + "expression": { + "to_column": 54, + "from_column": 45, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 18441, + "from_row": 588, + "to_row": 588 + } + }, + "left": { + "to_column": 42, + "from_column": 35, + "right": "update", + "left": { + "to_column": 35, + "from_column": 31, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18427, + "from_row": 588, + "to_row": 588 + }, + "kind": ".", + "at": 18431, + "from_row": 588, + "to_row": 588 + }, + "kind": "assign", + "at": 18439, + "from_row": 588, + "to_row": 588 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 588, + "to_column": 74, + "kind": "if", + "at": 18402, + "from_row": 588, + "expression": { + "to_column": 29, + "from_column": 22, + "right": { + "to_column": 29, + "from_column": 25, + "kind": "null", + "at": 18421, + "from_row": 588, + "to_row": 588 + }, + "left": { + "to_column": 21, + "from_column": 14, + "right": "update", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18406, + "from_row": 588, + "to_row": 588 + }, + "kind": ".", + "at": 18410, + "from_row": 588, + "to_row": 588 + }, + "kind": "!=", + "at": 18418, + "from_row": 588, + "to_row": 588 + } + }, + { + "to_row": 589, + "from_column": 6, + "to_column": 58, + "kind": "call", + "at": 18477, + "from_row": 589, + "expression": { + "to_column": 58, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 50, + "from_column": 39, + "right": "statements", + "left": { + "to_column": 39, + "from_column": 35, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18506, + "from_row": 589, + "to_row": 589 + }, + "kind": ".", + "at": 18510, + "from_row": 589, + "to_row": 589 + }, + { + "to_column": 57, + "from_column": 52, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 18523, + "from_row": 589, + "to_row": 589 + } + ], + "from_column": 34, + "to_row": 589, + "to_column": 58, + "kind": "(", + "at": 18505, + "from_row": 589, + "expression": { + "to_column": 34, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 18495, + "from_row": 589, + "to_row": 589 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "statements", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18477, + "from_row": 589, + "to_row": 589 + }, + "kind": ".", + "at": 18481, + "from_row": 589, + "to_row": 589 + }, + "kind": "assign", + "at": 18493, + "from_row": 589, + "to_row": 589 + } + }, + { + "to_row": 590, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 18536, + "from_row": 590, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18543, + "from_row": 590, + "to_row": 590 + } + } + ], + "kind": "block", + "at": 18089, + "from_row": 578, + "to_row": 591 + } + ], + "from_column": 4, + "list": [], + "to_row": 591, + "to_column": 5, + "kind": "if", + "at": 18073, + "from_row": 578, + "expression": { + "to_column": 18, + "from_column": 10, + "right": { + "to_row": 578, + "from_column": 13, + "to_column": 18, + "kind": "text", + "at": 18082, + "from_row": 578, + "value": "for" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 18077, + "from_row": 578, + "to_row": 578 + }, + "kind": "==", + "at": 18079, + "from_row": 578, + "to_row": 578 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 36, + "statements": [ + { + "to_row": 593, + "from_column": 6, + "to_column": 57, + "kind": "call", + "at": 18598, + "from_row": 593, + "expression": { + "to_column": 57, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18626, + "from_row": 593, + "to_row": 593 + }, + "kind": ".", + "at": 18630, + "from_row": 593, + "to_row": 593 + }, + { + "to_column": 56, + "from_column": 51, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 18643, + "from_row": 593, + "to_row": 593 + } + ], + "from_column": 33, + "to_row": 593, + "to_column": 57, + "kind": "(", + "at": 18625, + "from_row": 593, + "expression": { + "to_column": 33, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 18616, + "from_row": 593, + "to_row": 593 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "expression", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18598, + "from_row": 593, + "to_row": 593 + }, + "kind": ".", + "at": 18602, + "from_row": 593, + "to_row": 593 + }, + "kind": "assign", + "at": 18614, + "from_row": 593, + "to_row": 593 + } + }, + { + "to_row": 594, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 18656, + "from_row": 594, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18663, + "from_row": 594, + "to_row": 594 + } + } + ], + "kind": "block", + "at": 18590, + "from_row": 592, + "to_row": 595 + } + ], + "from_column": 4, + "list": [], + "to_row": 595, + "to_column": 5, + "kind": "if", + "at": 18558, + "from_row": 592, + "expression": { + "to_column": 34, + "from_column": 22, + "right": { + "to_column": 34, + "from_column": 27, + "right": { + "to_row": 592, + "from_column": 30, + "to_column": 34, + "kind": "text", + "at": 18584, + "from_row": 592, + "value": "go" + }, + "left": { + "to_column": 26, + "from_column": 25, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 18579, + "from_row": 592, + "to_row": 592 + }, + "kind": "==", + "at": 18581, + "from_row": 592, + "to_row": 592 + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": { + "to_row": 592, + "from_column": 13, + "to_column": 21, + "kind": "text", + "at": 18567, + "from_row": 592, + "value": "return" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 18562, + "from_row": 592, + "to_row": 592 + }, + "kind": "==", + "at": 18564, + "from_row": 592, + "to_row": 592 + }, + "kind": "||", + "at": 18576, + "from_row": 592, + "to_row": 592 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 22, + "statements": [ + { + "to_row": 597, + "from_column": 6, + "to_column": 58, + "kind": "call", + "at": 18704, + "from_row": 597, + "expression": { + "to_column": 58, + "from_column": 22, + "right": { + "list": [ + { + "to_column": 50, + "from_column": 39, + "right": "statements", + "left": { + "to_column": 39, + "from_column": 35, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18733, + "from_row": 597, + "to_row": 597 + }, + "kind": ".", + "at": 18737, + "from_row": 597, + "to_row": 597 + }, + { + "to_column": 57, + "from_column": 52, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 18750, + "from_row": 597, + "to_row": 597 + } + ], + "from_column": 34, + "to_row": 597, + "to_column": 58, + "kind": "(", + "at": 18732, + "from_row": 597, + "expression": { + "to_column": 34, + "from_column": 24, + "level": 1, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 18722, + "from_row": 597, + "to_row": 597 + } + }, + "left": { + "to_column": 21, + "from_column": 10, + "right": "statements", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18704, + "from_row": 597, + "to_row": 597 + }, + "kind": ".", + "at": 18708, + "from_row": 597, + "to_row": 597 + }, + "kind": "assign", + "at": 18720, + "from_row": 597, + "to_row": 597 + } + }, + { + "to_row": 598, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 18763, + "from_row": 598, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18770, + "from_row": 598, + "to_row": 598 + } + } + ], + "kind": "block", + "at": 18696, + "from_row": 596, + "to_row": 599 + } + ], + "from_column": 4, + "list": [], + "to_row": 599, + "to_column": 5, + "kind": "if", + "at": 18678, + "from_row": 596, + "expression": { + "to_column": 20, + "from_column": 10, + "right": { + "to_row": 596, + "from_column": 13, + "to_column": 20, + "kind": "text", + "at": 18687, + "from_row": 596, + "value": "block" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 18682, + "from_row": 596, + "to_row": 596 + }, + "kind": "==", + "at": 18684, + "from_row": 596, + "to_row": 596 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 22, + "statements": [ + { + "to_row": 601, + "from_column": 6, + "to_column": 55, + "kind": "call", + "at": 18811, + "from_row": 601, + "expression": { + "to_column": 55, + "from_column": 21, + "right": { + "list": [ + { + "to_column": 47, + "from_column": 37, + "right": "statement", + "left": { + "to_column": 37, + "from_column": 33, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18838, + "from_row": 601, + "to_row": 601 + }, + "kind": ".", + "at": 18842, + "from_row": 601, + "to_row": 601 + }, + { + "to_column": 54, + "from_column": 49, + "level": 0, + "function_nr": 21, + "name": "fn_nr", + "kind": "name", + "at": 18854, + "from_row": 601, + "to_row": 601 + } + ], + "from_column": 32, + "to_row": 601, + "to_column": 55, + "kind": "(", + "at": 18837, + "from_row": 601, + "expression": { + "to_column": 32, + "from_column": 23, + "level": 1, + "function_nr": 30, + "name": "fold_stmt", + "kind": "name", + "at": 18828, + "from_row": 601, + "to_row": 601 + } + }, + "left": { + "to_column": 20, + "from_column": 10, + "right": "statement", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18811, + "from_row": 601, + "to_row": 601 + }, + "kind": ".", + "at": 18815, + "from_row": 601, + "to_row": 601 + }, + "kind": "assign", + "at": 18826, + "from_row": 601, + "to_row": 601 + } + }, + { + "to_row": 602, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 18867, + "from_row": 602, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18874, + "from_row": 602, + "to_row": 602 + } + } + ], + "kind": "block", + "at": 18803, + "from_row": 600, + "to_row": 603 + } + ], + "from_column": 4, + "list": [], + "to_row": 603, + "to_column": 5, + "kind": "if", + "at": 18785, + "from_row": 600, + "expression": { + "to_column": 20, + "from_column": 10, + "right": { + "to_row": 600, + "from_column": 13, + "to_column": 20, + "kind": "text", + "at": 18794, + "from_row": 600, + "value": "label" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 18789, + "from_row": 600, + "to_row": 600 + }, + "kind": "==", + "at": 18791, + "from_row": 600, + "to_row": 600 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 25, + "statements": [ + { + "to_row": 605, + "from_column": 6, + "to_column": 19, + "kind": "call", + "at": 18918, + "from_row": 605, + "expression": { + "list": [ + { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18926, + "from_row": 605, + "to_row": 605 + } + ], + "from_column": 13, + "to_row": 605, + "to_column": 19, + "kind": "(", + "at": 18925, + "from_row": 605, + "expression": { + "to_column": 13, + "from_column": 6, + "level": 1, + "function_nr": 30, + "name": "fold_fn", + "kind": "name", + "at": 18918, + "from_row": 605, + "to_row": 605 + } + } + }, + { + "to_row": 606, + "from_column": 6, + "to_column": 17, + "kind": "return", + "at": 18938, + "from_row": 606, + "expression": { + "to_column": 17, + "from_column": 13, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18945, + "from_row": 606, + "to_row": 606 + } + } + ], + "kind": "block", + "at": 18910, + "from_row": 604, + "to_row": 607 + } + ], + "from_column": 4, + "list": [], + "to_row": 607, + "to_column": 5, + "kind": "if", + "at": 18889, + "from_row": 604, + "expression": { + "to_column": 23, + "from_column": 10, + "right": { + "to_row": 604, + "from_column": 13, + "to_column": 23, + "kind": "text", + "at": 18898, + "from_row": 604, + "value": "function" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 21, + "name": "k", + "kind": "name", + "at": 18893, + "from_row": 604, + "to_row": 604 + }, + "kind": "==", + "at": 18895, + "from_row": 604, + "to_row": 604 + } + }, + { + "to_row": 608, + "from_column": 4, + "to_column": 15, + "kind": "return", + "at": 18960, + "from_row": 608, + "expression": { + "to_column": 15, + "from_column": 11, + "level": 0, + "function_nr": 21, + "name": "stmt", + "kind": "name", + "at": 18967, + "from_row": 608, + "to_row": 608 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 16018, + "to_row": 609, + "outer": 30, + "list": [ + { + "to_column": 27, + "from_column": 23, + "name": "stmt", + "kind": "name", + "at": 16027, + "from_row": 516, + "to_row": 516 + }, + { + "to_column": 34, + "from_column": 29, + "name": "fn_nr", + "kind": "name", + "at": 16033, + "from_row": 516, + "to_row": 516 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 21, + "from_row": 516 + }, + "left": { + "to_column": 11, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "fold_stmt", + "kind": "name", + "at": 16006, + "from_row": 516, + "to_row": 516 + }, + "kind": "assign", + "at": 16016, + "from_row": 516, + "to_row": 609 + } + }, + { + "to_row": 644, + "from_column": 2, + "to_column": 3, + "kind": "call", + "at": 18979, + "from_row": 611, + "expression": { + "to_column": 3, + "from_column": 13, + "right": { + "from_column": 15, + "nr_slots": 7, + "statements": [ + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 612, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 19029, + "from_row": 612, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "i", + "kind": "name", + "at": 19025, + "from_row": 612, + "to_row": 612 + }, + "kind": "var", + "at": 19021, + "from_row": 612, + "to_row": 612 + }, + { + "to_column": 19, + "from_column": 4, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 19046, + "from_row": 613, + "to_row": 613 + }, + "left": { + "to_column": 12, + "from_column": 8, + "name": "stmt", + "kind": "name", + "at": 19039, + "from_row": 613, + "to_row": 613 + }, + "kind": "var", + "at": 19035, + "from_row": 613, + "to_row": 613 + }, + { + "to_column": 16, + "from_column": 4, + "right": { + "list": [], + "from_column": 14, + "to_column": 15, + "kind": "array", + "at": 19065, + "from_row": 614, + "to_row": 614 + }, + "left": { + "to_column": 11, + "from_column": 8, + "name": "out", + "kind": "name", + "at": 19059, + "from_row": 614, + "to_row": 614 + }, + "kind": "var", + "at": 19055, + "from_row": 614, + "to_row": 614 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 19081, + "from_row": 615, + "to_row": 615 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "sv", + "kind": "name", + "at": 19076, + "from_row": 615, + "to_row": 615 + }, + "kind": "var", + "at": 19072, + "from_row": 615, + "to_row": 615 + }, + { + "to_column": 19, + "from_column": 4, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 19101, + "from_row": 616, + "to_row": 616 + }, + "left": { + "to_column": 12, + "from_column": 8, + "name": "name", + "kind": "name", + "at": 19094, + "from_row": 616, + "to_row": 616 + }, + "kind": "var", + "at": 19090, + "from_row": 616, + "to_row": 616 + }, + { + "to_row": 642, + "from_column": 4, + "to_column": 5, + "statements": [ + { + "to_column": 5, + "from_column": 30, + "statements": [ + { + "to_row": 618, + "from_column": 6, + "to_column": 39, + "kind": "call", + "at": 19144, + "from_row": 618, + "expression": { + "to_column": 39, + "from_column": 11, + "right": { + "list": [ + { + "to_column": 31, + "from_column": 28, + "right": { + "to_column": 30, + "from_column": 29, + "level": 0, + "function_nr": 22, + "name": "i", + "kind": "name", + "at": 19167, + "from_row": 618, + "to_row": 618 + }, + "left": { + "to_column": 28, + "from_column": 23, + "level": 0, + "function_nr": 22, + "name": "stmts", + "kind": "name", + "at": 19161, + "from_row": 618, + "to_row": 618 + }, + "kind": "[", + "at": 19166, + "from_row": 618, + "to_row": 618 + }, + { + "to_column": 38, + "from_column": 33, + "level": 0, + "function_nr": 22, + "name": "fn_nr", + "kind": "name", + "at": 19171, + "from_row": 618, + "to_row": 618 + } + ], + "from_column": 22, + "to_row": 618, + "to_column": 39, + "kind": "(", + "at": 19160, + "from_row": 618, + "expression": { + "to_column": 22, + "from_column": 13, + "level": 1, + "function_nr": 30, + "name": "fold_stmt", + "kind": "name", + "at": 19151, + "from_row": 618, + "to_row": 618 + } + }, + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19144, + "from_row": 618, + "to_row": 618 + }, + "kind": "assign", + "at": 19149, + "from_row": 618, + "to_row": 618 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 24, + "statements": [ + { + "to_row": 620, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 19212, + "from_row": 620, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 620, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 19220, + "from_row": 620, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 22, + "name": "i", + "kind": "name", + "at": 19216, + "from_row": 620, + "to_row": 620 + }, + "kind": "+", + "at": 19218, + "from_row": 620, + "to_row": 620 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 22, + "name": "i", + "kind": "name", + "at": 19212, + "from_row": 620, + "to_row": 620 + }, + "kind": "assign", + "at": 19214, + "from_row": 620, + "to_row": 620 + } + }, + { + "to_column": 16, + "from_column": 8, + "kind": "continue", + "at": 19230, + "from_row": 621, + "to_row": 621 + } + ], + "kind": "block", + "at": 19202, + "from_row": 619, + "to_row": 622 + } + ], + "from_column": 6, + "list": [], + "to_row": 622, + "to_column": 7, + "kind": "if", + "at": 19184, + "from_row": 619, + "expression": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 19196, + "from_row": 619, + "to_row": 619 + }, + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19188, + "from_row": 619, + "to_row": 619 + }, + "kind": "==", + "at": 19193, + "from_row": 619, + "to_row": 619 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 52, + "statements": [ + { + "to_row": 625, + "from_column": 8, + "to_column": 29, + "kind": "call", + "at": 19361, + "from_row": 625, + "expression": { + "to_column": 29, + "from_column": 13, + "right": { + "to_column": 29, + "from_column": 24, + "right": "name", + "left": { + "to_column": 24, + "from_column": 19, + "right": "left", + "left": { + "to_column": 19, + "from_column": 15, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19368, + "from_row": 625, + "to_row": 625 + }, + "kind": ".", + "at": 19372, + "from_row": 625, + "to_row": 625 + }, + "kind": ".", + "at": 19377, + "from_row": 625, + "to_row": 625 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 22, + "name": "name", + "kind": "name", + "at": 19361, + "from_row": 625, + "to_row": 625 + }, + "kind": "assign", + "at": 19366, + "from_row": 625, + "to_row": 625 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 26, + "statements": [ + { + "to_row": 627, + "from_column": 10, + "to_column": 37, + "kind": "call", + "at": 19421, + "from_row": 627, + "expression": { + "to_column": 37, + "from_column": 13, + "right": { + "list": [ + { + "to_column": 30, + "from_column": 25, + "level": 0, + "function_nr": 22, + "name": "fn_nr", + "kind": "name", + "at": 19436, + "from_row": 627, + "to_row": 627 + }, + { + "to_column": 36, + "from_column": 32, + "level": 0, + "function_nr": 22, + "name": "name", + "kind": "name", + "at": 19443, + "from_row": 627, + "to_row": 627 + } + ], + "from_column": 24, + "to_row": 627, + "to_column": 37, + "kind": "(", + "at": 19435, + "from_row": 627, + "expression": { + "to_column": 24, + "from_column": 15, + "level": 1, + "function_nr": 30, + "name": "scope_var", + "kind": "name", + "at": 19426, + "from_row": 627, + "to_row": 627 + } + }, + "left": { + "to_column": 12, + "from_column": 10, + "level": 0, + "function_nr": 22, + "name": "sv", + "kind": "name", + "at": 19421, + "from_row": 627, + "to_row": 627 + }, + "kind": "assign", + "at": 19424, + "from_row": 627, + "to_row": 627 + } + }, + { + "then": [ + { + "to_column": 11, + "from_column": 68, + "statements": [ + { + "to_row": 629, + "from_column": 12, + "to_column": 28, + "kind": "call", + "at": 19531, + "from_row": 629, + "expression": { + "to_column": 28, + "from_column": 22, + "right": { + "to_column": 28, + "from_column": 24, + "kind": "true", + "at": 19543, + "from_row": 629, + "to_row": 629 + }, + "left": { + "to_column": 21, + "from_column": 16, + "right": "dead", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19531, + "from_row": 629, + "to_row": 629 + }, + "kind": ".", + "at": 19535, + "from_row": 629, + "to_row": 629 + }, + "kind": "assign", + "at": 19541, + "from_row": 629, + "to_row": 629 + } + } + ], + "kind": "block", + "at": 19517, + "from_row": 628, + "to_row": 630 + } + ], + "from_column": 10, + "list": [], + "to_row": 630, + "to_column": 11, + "kind": "if", + "at": 19459, + "from_row": 628, + "expression": { + "to_column": 66, + "from_column": 44, + "right": { + "list": [ + { + "to_column": 65, + "from_column": 59, + "right": "right", + "left": { + "to_column": 59, + "from_column": 55, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19504, + "from_row": 628, + "to_row": 628 + }, + "kind": ".", + "at": 19508, + "from_row": 628, + "to_row": 628 + } + ], + "from_column": 54, + "to_row": 628, + "to_column": 66, + "kind": "(", + "at": 19503, + "from_row": 628, + "expression": { + "to_column": 54, + "from_column": 47, + "level": 1, + "function_nr": 30, + "name": "is_pure", + "kind": "name", + "at": 19496, + "from_row": 628, + "to_row": 628 + } + }, + "left": { + "to_column": 43, + "from_column": 25, + "right": { + "to_column": 43, + "from_column": 39, + "right": { + "to_row": 628, + "from_column": 42, + "number": 0, + "to_column": 43, + "kind": "number", + "at": 19491, + "from_row": 628, + "value": "0" + }, + "left": { + "to_column": 38, + "from_column": 30, + "right": "nr_uses", + "left": { + "to_column": 30, + "from_column": 28, + "level": 0, + "function_nr": 22, + "name": "sv", + "kind": "name", + "at": 19477, + "from_row": 628, + "to_row": 628 + }, + "kind": ".", + "at": 19479, + "from_row": 628, + "to_row": 628 + }, + "kind": "==", + "at": 19488, + "from_row": 628, + "to_row": 628 + }, + "left": { + "to_column": 24, + "from_column": 17, + "right": { + "to_column": 24, + "from_column": 20, + "kind": "null", + "at": 19469, + "from_row": 628, + "to_row": 628 + }, + "left": { + "to_column": 16, + "from_column": 14, + "level": 0, + "function_nr": 22, + "name": "sv", + "kind": "name", + "at": 19463, + "from_row": 628, + "to_row": 628 + }, + "kind": "!=", + "at": 19466, + "from_row": 628, + "to_row": 628 + }, + "kind": "&&", + "at": 19474, + "from_row": 628, + "to_row": 628 + }, + "kind": "&&", + "at": 19493, + "from_row": 628, + "to_row": 628 + } + } + ], + "kind": "block", + "at": 19409, + "from_row": 626, + "to_row": 631 + } + ], + "from_column": 8, + "list": [], + "to_row": 631, + "to_column": 9, + "kind": "if", + "at": 19391, + "from_row": 626, + "expression": { + "to_column": 24, + "from_column": 17, + "right": { + "to_column": 24, + "from_column": 20, + "kind": "null", + "at": 19403, + "from_row": 626, + "to_row": 626 + }, + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 22, + "name": "name", + "kind": "name", + "at": 19395, + "from_row": 626, + "to_row": 626 + }, + "kind": "!=", + "at": 19400, + "from_row": 626, + "to_row": 626 + } + } + ], + "kind": "block", + "at": 19351, + "from_row": 624, + "to_row": 632 + } + ], + "from_column": 6, + "list": [], + "to_row": 632, + "to_column": 7, + "kind": "if", + "at": 19305, + "from_row": 624, + "expression": { + "to_column": 50, + "from_column": 29, + "right": { + "to_column": 50, + "from_column": 42, + "right": { + "to_row": 624, + "from_column": 45, + "to_column": 50, + "kind": "text", + "at": 19344, + "from_row": 624, + "value": "def" + }, + "left": { + "to_column": 41, + "from_column": 36, + "right": "kind", + "left": { + "to_column": 36, + "from_column": 32, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19331, + "from_row": 624, + "to_row": 624 + }, + "kind": ".", + "at": 19335, + "from_row": 624, + "to_row": 624 + }, + "kind": "==", + "at": 19341, + "from_row": 624, + "to_row": 624 + }, + "left": { + "to_column": 28, + "from_column": 20, + "right": { + "to_row": 624, + "from_column": 23, + "to_column": 28, + "kind": "text", + "at": 19322, + "from_row": 624, + "value": "var" + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "kind", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19309, + "from_row": 624, + "to_row": 624 + }, + "kind": ".", + "at": 19313, + "from_row": 624, + "to_row": 624 + }, + "kind": "==", + "at": 19319, + "from_row": 624, + "to_row": 624 + }, + "kind": "||", + "at": 19328, + "from_row": 624, + "to_row": 624 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 56, + "statements": [ + { + "to_row": 635, + "from_column": 8, + "to_column": 40, + "kind": "call", + "at": 19679, + "from_row": 635, + "expression": { + "to_column": 40, + "from_column": 11, + "right": { + "list": [ + { + "to_column": 28, + "from_column": 23, + "level": 0, + "function_nr": 22, + "name": "fn_nr", + "kind": "name", + "at": 19694, + "from_row": 635, + "to_row": 635 + }, + { + "to_column": 39, + "from_column": 34, + "right": "name", + "left": { + "to_column": 34, + "from_column": 30, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19701, + "from_row": 635, + "to_row": 635 + }, + "kind": ".", + "at": 19705, + "from_row": 635, + "to_row": 635 + } + ], + "from_column": 22, + "to_row": 635, + "to_column": 40, + "kind": "(", + "at": 19693, + "from_row": 635, + "expression": { + "to_column": 22, + "from_column": 13, + "level": 1, + "function_nr": 30, + "name": "scope_var", + "kind": "name", + "at": 19684, + "from_row": 635, + "to_row": 635 + } + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 22, + "name": "sv", + "kind": "name", + "at": 19679, + "from_row": 635, + "to_row": 635 + }, + "kind": "assign", + "at": 19682, + "from_row": 635, + "to_row": 635 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 43, + "statements": [ + { + "to_row": 637, + "from_column": 10, + "to_column": 26, + "kind": "call", + "at": 19767, + "from_row": 637, + "expression": { + "to_column": 26, + "from_column": 20, + "right": { + "to_column": 26, + "from_column": 22, + "kind": "true", + "at": 19779, + "from_row": 637, + "to_row": 637 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "dead", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19767, + "from_row": 637, + "to_row": 637 + }, + "kind": ".", + "at": 19771, + "from_row": 637, + "to_row": 637 + }, + "kind": "assign", + "at": 19777, + "from_row": 637, + "to_row": 637 + } + } + ], + "kind": "block", + "at": 19755, + "from_row": 636, + "to_row": 638 + } + ], + "from_column": 8, + "list": [], + "to_row": 638, + "to_column": 9, + "kind": "if", + "at": 19720, + "from_row": 636, + "expression": { + "to_column": 41, + "from_column": 23, + "right": { + "to_column": 41, + "from_column": 37, + "right": { + "to_row": 636, + "from_column": 40, + "number": 0, + "to_column": 41, + "kind": "number", + "at": 19752, + "from_row": 636, + "value": "0" + }, + "left": { + "to_column": 36, + "from_column": 28, + "right": "nr_uses", + "left": { + "to_column": 28, + "from_column": 26, + "level": 0, + "function_nr": 22, + "name": "sv", + "kind": "name", + "at": 19738, + "from_row": 636, + "to_row": 636 + }, + "kind": ".", + "at": 19740, + "from_row": 636, + "to_row": 636 + }, + "kind": "==", + "at": 19749, + "from_row": 636, + "to_row": 636 + }, + "left": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 19730, + "from_row": 636, + "to_row": 636 + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 22, + "name": "sv", + "kind": "name", + "at": 19724, + "from_row": 636, + "to_row": 636 + }, + "kind": "!=", + "at": 19727, + "from_row": 636, + "to_row": 636 + }, + "kind": "&&", + "at": 19735, + "from_row": 636, + "to_row": 636 + } + } + ], + "kind": "block", + "at": 19669, + "from_row": 634, + "to_row": 639 + } + ], + "from_column": 6, + "list": [], + "to_row": 639, + "to_column": 7, + "kind": "if", + "at": 19619, + "from_row": 634, + "expression": { + "to_column": 54, + "from_column": 34, + "right": { + "to_column": 54, + "from_column": 47, + "right": { + "to_column": 54, + "from_column": 50, + "kind": "null", + "at": 19663, + "from_row": 634, + "to_row": 634 + }, + "left": { + "to_column": 46, + "from_column": 41, + "right": "name", + "left": { + "to_column": 41, + "from_column": 37, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19650, + "from_row": 634, + "to_row": 634 + }, + "kind": ".", + "at": 19654, + "from_row": 634, + "to_row": 634 + }, + "kind": "!=", + "at": 19660, + "from_row": 634, + "to_row": 634 + }, + "left": { + "to_column": 33, + "from_column": 20, + "right": { + "to_row": 634, + "from_column": 23, + "to_column": 33, + "kind": "text", + "at": 19636, + "from_row": 634, + "value": "function" + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "kind", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19623, + "from_row": 634, + "to_row": 634 + }, + "kind": ".", + "at": 19627, + "from_row": 634, + "to_row": 634 + }, + "kind": "==", + "at": 19633, + "from_row": 634, + "to_row": 634 + }, + "kind": "&&", + "at": 19647, + "from_row": 634, + "to_row": 634 + } + }, + { + "then": [ + { + "to_row": 640, + "from_column": 29, + "to_column": 44, + "kind": "call", + "at": 19831, + "from_row": 640, + "expression": { + "list": [ + { + "to_column": 37, + "from_column": 34, + "level": 0, + "function_nr": 22, + "name": "out", + "kind": "name", + "at": 19836, + "from_row": 640, + "to_row": 640 + }, + { + "to_column": 43, + "from_column": 39, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19841, + "from_row": 640, + "to_row": 640 + } + ], + "from_column": 33, + "to_row": 640, + "to_column": 44, + "kind": "(", + "at": 19835, + "from_row": 640, + "expression": { + "to_column": 33, + "from_column": 29, + "level": -1, + "name": "push", + "kind": "name", + "at": 19831, + "from_row": 640, + "to_row": 640 + } + } + } + ], + "from_column": 6, + "list": [], + "to_row": 640, + "to_column": 44, + "kind": "if", + "at": 19808, + "from_row": 640, + "expression": { + "to_column": 27, + "from_column": 20, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "true", + "at": 19825, + "from_row": 640, + "to_row": 640 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "dead", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 22, + "name": "stmt", + "kind": "name", + "at": 19812, + "from_row": 640, + "to_row": 640 + }, + "kind": ".", + "at": 19816, + "from_row": 640, + "to_row": 640 + }, + "kind": "!=", + "at": 19822, + "from_row": 640, + "to_row": 640 + } + }, + { + "to_row": 641, + "from_column": 6, + "to_column": 15, + "kind": "call", + "at": 19853, + "from_row": 641, + "expression": { + "to_column": 15, + "from_column": 8, + "right": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 641, + "from_column": 14, + "number": 1, + "to_column": 15, + "kind": "number", + "at": 19861, + "from_row": 641, + "value": "1" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 22, + "name": "i", + "kind": "name", + "at": 19857, + "from_row": 641, + "to_row": 641 + }, + "kind": "+", + "at": 19859, + "from_row": 641, + "to_row": 641 + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 22, + "name": "i", + "kind": "name", + "at": 19853, + "from_row": 641, + "to_row": 641 + }, + "kind": "assign", + "at": 19855, + "from_row": 641, + "to_row": 641 + } + } + ], + "kind": "block", + "at": 19136, + "from_row": 617, + "to_row": 642 + } + ], + "kind": "while", + "at": 19110, + "from_row": 617, + "expression": { + "to_column": 28, + "from_column": 13, + "right": { + "list": [ + { + "to_column": 27, + "from_column": 22, + "level": 0, + "function_nr": 22, + "name": "stmts", + "kind": "name", + "at": 19128, + "from_row": 617, + "to_row": 617 + } + ], + "from_column": 21, + "to_row": 617, + "to_column": 28, + "kind": "(", + "at": 19127, + "from_row": 617, + "expression": { + "to_column": 21, + "from_column": 15, + "level": -1, + "name": "length", + "kind": "name", + "at": 19121, + "from_row": 617, + "to_row": 617 + } + }, + "left": { + "to_column": 12, + "from_column": 11, + "level": 0, + "function_nr": 22, + "name": "i", + "kind": "name", + "at": 19117, + "from_row": 617, + "to_row": 617 + }, + "kind": "<", + "at": 19119, + "from_row": 617, + "to_row": 617 + } + }, + { + "to_row": 643, + "from_column": 4, + "to_column": 14, + "kind": "return", + "at": 19873, + "from_row": 643, + "expression": { + "to_column": 14, + "from_column": 11, + "level": 0, + "function_nr": 22, + "name": "out", + "kind": "name", + "at": 19880, + "from_row": 643, + "to_row": 643 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 18992, + "to_row": 644, + "outer": 30, + "list": [ + { + "to_column": 29, + "from_column": 24, + "name": "stmts", + "kind": "name", + "at": 19001, + "from_row": 611, + "to_row": 611 + }, + { + "to_column": 36, + "from_column": 31, + "name": "fn_nr", + "kind": "name", + "at": 19008, + "from_row": 611, + "to_row": 611 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 22, + "from_row": 611 + }, + "left": { + "to_column": 12, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 18979, + "from_row": 611, + "to_row": 611 + }, + "kind": "assign", + "at": 18990, + "from_row": 611, + "to_row": 644 + } + }, + { + "to_row": 660, + "from_column": 2, + "to_column": 3, + "kind": "call", + "at": 19891, + "from_row": 646, + "expression": { + "to_column": 3, + "from_column": 10, + "right": { + "from_column": 12, + "nr_slots": 3, + "statements": [ + { + "then": [ + { + "to_row": 647, + "from_column": 22, + "to_column": 33, + "kind": "return", + "at": 19940, + "from_row": 647, + "expression": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 19947, + "from_row": 647, + "to_row": 647 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 647, + "to_column": 33, + "kind": "if", + "at": 19922, + "from_row": 647, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 19934, + "from_row": 647, + "to_row": 647 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 19926, + "from_row": 647, + "to_row": 647 + }, + "kind": "==", + "at": 19931, + "from_row": 647, + "to_row": 647 + } + }, + { + "to_column": 32, + "from_column": 4, + "right": { + "to_column": 32, + "from_column": 20, + "right": "function_nr", + "left": { + "to_column": 20, + "from_column": 16, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 19968, + "from_row": 648, + "to_row": 648 + }, + "kind": ".", + "at": 19972, + "from_row": 648, + "to_row": 648 + }, + "left": { + "to_column": 13, + "from_column": 8, + "name": "fn_nr", + "kind": "name", + "at": 19960, + "from_row": 648, + "to_row": 648 + }, + "kind": "var", + "at": 19956, + "from_row": 648, + "to_row": 648 + }, + { + "then": [ + { + "to_row": 649, + "from_column": 23, + "to_column": 34, + "kind": "return", + "at": 20008, + "from_row": 649, + "expression": { + "to_column": 34, + "from_column": 30, + "kind": "null", + "at": 20015, + "from_row": 649, + "to_row": 649 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 649, + "to_column": 34, + "kind": "if", + "at": 19989, + "from_row": 649, + "expression": { + "to_column": 21, + "from_column": 14, + "right": { + "to_column": 21, + "from_column": 17, + "kind": "null", + "at": 20002, + "from_row": 649, + "to_row": 649 + }, + "left": { + "to_column": 13, + "from_column": 8, + "level": 0, + "function_nr": 23, + "name": "fn_nr", + "kind": "name", + "at": 19993, + "from_row": 649, + "to_row": 649 + }, + "kind": "==", + "at": 19999, + "from_row": 649, + "to_row": 649 + } + }, + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 651, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 20059, + "from_row": 651, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "i", + "kind": "name", + "at": 20055, + "from_row": 651, + "to_row": 651 + }, + "kind": "var", + "at": 20051, + "from_row": 651, + "to_row": 651 + }, + { + "to_row": 657, + "from_column": 4, + "to_column": 5, + "statements": [ + { + "to_column": 5, + "from_column": 34, + "statements": [ + { + "then": [ + { + "to_column": 7, + "from_column": 43, + "statements": [ + { + "to_row": 654, + "from_column": 8, + "to_column": 75, + "kind": "call", + "at": 20150, + "from_row": 654, + "expression": { + "to_column": 75, + "from_column": 32, + "right": { + "list": [ + { + "to_column": 67, + "from_column": 56, + "right": "expression", + "left": { + "to_column": 56, + "from_column": 53, + "right": { + "to_column": 55, + "from_column": 54, + "level": 0, + "function_nr": 23, + "name": "i", + "kind": "name", + "at": 20196, + "from_row": 654, + "to_row": 654 + }, + "left": { + "to_column": 53, + "from_column": 48, + "right": "list", + "left": { + "to_column": 48, + "from_column": 44, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 20186, + "from_row": 654, + "to_row": 654 + }, + "kind": ".", + "at": 20190, + "from_row": 654, + "to_row": 654 + }, + "kind": "[", + "at": 20195, + "from_row": 654, + "to_row": 654 + }, + "kind": ".", + "at": 20198, + "from_row": 654, + "to_row": 654 + }, + { + "to_column": 74, + "from_column": 69, + "level": 0, + "function_nr": 23, + "name": "fn_nr", + "kind": "name", + "at": 20211, + "from_row": 654, + "to_row": 654 + } + ], + "from_column": 43, + "to_row": 654, + "to_column": 75, + "kind": "(", + "at": 20185, + "from_row": 654, + "expression": { + "to_column": 43, + "from_column": 34, + "level": 1, + "function_nr": 30, + "name": "fold_expr", + "kind": "name", + "at": 20176, + "from_row": 654, + "to_row": 654 + } + }, + "left": { + "to_column": 31, + "from_column": 20, + "right": "expression", + "left": { + "to_column": 20, + "from_column": 17, + "right": { + "to_column": 19, + "from_column": 18, + "level": 0, + "function_nr": 23, + "name": "i", + "kind": "name", + "at": 20160, + "from_row": 654, + "to_row": 654 + }, + "left": { + "to_column": 17, + "from_column": 12, + "right": "list", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 20150, + "from_row": 654, + "to_row": 654 + }, + "kind": ".", + "at": 20154, + "from_row": 654, + "to_row": 654 + }, + "kind": "[", + "at": 20159, + "from_row": 654, + "to_row": 654 + }, + "kind": ".", + "at": 20162, + "from_row": 654, + "to_row": 654 + }, + "kind": "assign", + "at": 20174, + "from_row": 654, + "to_row": 654 + } + } + ], + "kind": "block", + "at": 20140, + "from_row": 653, + "to_row": 655 + } + ], + "from_column": 6, + "list": [], + "to_row": 655, + "to_column": 7, + "kind": "if", + "at": 20103, + "from_row": 653, + "expression": { + "to_column": 41, + "from_column": 34, + "right": { + "to_column": 41, + "from_column": 37, + "kind": "null", + "at": 20134, + "from_row": 653, + "to_row": 653 + }, + "left": { + "to_column": 33, + "from_column": 22, + "right": "expression", + "left": { + "to_column": 22, + "from_column": 19, + "right": { + "to_column": 21, + "from_column": 20, + "level": 0, + "function_nr": 23, + "name": "i", + "kind": "name", + "at": 20117, + "from_row": 653, + "to_row": 653 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "list", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 20107, + "from_row": 653, + "to_row": 653 + }, + "kind": ".", + "at": 20111, + "from_row": 653, + "to_row": 653 + }, + "kind": "[", + "at": 20116, + "from_row": 653, + "to_row": 653 + }, + "kind": ".", + "at": 20119, + "from_row": 653, + "to_row": 653 + }, + "kind": "!=", + "at": 20131, + "from_row": 653, + "to_row": 653 + } + }, + { + "to_row": 656, + "from_column": 6, + "to_column": 15, + "kind": "call", + "at": 20232, + "from_row": 656, + "expression": { + "to_column": 15, + "from_column": 8, + "right": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 656, + "from_column": 14, + "number": 1, + "to_column": 15, + "kind": "number", + "at": 20240, + "from_row": 656, + "value": "1" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 23, + "name": "i", + "kind": "name", + "at": 20236, + "from_row": 656, + "to_row": 656 + }, + "kind": "+", + "at": 20238, + "from_row": 656, + "to_row": 656 + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 23, + "name": "i", + "kind": "name", + "at": 20232, + "from_row": 656, + "to_row": 656 + }, + "kind": "assign", + "at": 20234, + "from_row": 656, + "to_row": 656 + } + } + ], + "kind": "block", + "at": 20095, + "from_row": 652, + "to_row": 657 + } + ], + "kind": "while", + "at": 20065, + "from_row": 652, + "expression": { + "to_column": 32, + "from_column": 13, + "right": { + "list": [ + { + "to_column": 31, + "from_column": 26, + "right": "list", + "left": { + "to_column": 26, + "from_column": 22, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 20083, + "from_row": 652, + "to_row": 652 + }, + "kind": ".", + "at": 20087, + "from_row": 652, + "to_row": 652 + } + ], + "from_column": 21, + "to_row": 652, + "to_column": 32, + "kind": "(", + "at": 20082, + "from_row": 652, + "expression": { + "to_column": 21, + "from_column": 15, + "level": -1, + "name": "length", + "kind": "name", + "at": 20076, + "from_row": 652, + "to_row": 652 + } + }, + "left": { + "to_column": 12, + "from_column": 11, + "level": 0, + "function_nr": 23, + "name": "i", + "kind": "name", + "at": 20072, + "from_row": 652, + "to_row": 652 + }, + "kind": "<", + "at": 20074, + "from_row": 652, + "to_row": 652 + } + }, + { + "then": [ + { + "to_row": 658, + "from_column": 33, + "to_column": 85, + "kind": "call", + "at": 20281, + "from_row": 658, + "expression": { + "to_column": 85, + "from_column": 49, + "right": { + "list": [ + { + "to_column": 77, + "from_column": 66, + "right": "statements", + "left": { + "to_column": 66, + "from_column": 62, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 20310, + "from_row": 658, + "to_row": 658 + }, + "kind": ".", + "at": 20314, + "from_row": 658, + "to_row": 658 + }, + { + "to_column": 84, + "from_column": 79, + "level": 0, + "function_nr": 23, + "name": "fn_nr", + "kind": "name", + "at": 20327, + "from_row": 658, + "to_row": 658 + } + ], + "from_column": 61, + "to_row": 658, + "to_column": 85, + "kind": "(", + "at": 20309, + "from_row": 658, + "expression": { + "to_column": 61, + "from_column": 51, + "level": 1, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 20299, + "from_row": 658, + "to_row": 658 + } + }, + "left": { + "to_column": 48, + "from_column": 37, + "right": "statements", + "left": { + "to_column": 37, + "from_column": 33, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 20281, + "from_row": 658, + "to_row": 658 + }, + "kind": ".", + "at": 20285, + "from_row": 658, + "to_row": 658 + }, + "kind": "assign", + "at": 20297, + "from_row": 658, + "to_row": 658 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 658, + "to_column": 85, + "kind": "if", + "at": 20252, + "from_row": 658, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 20275, + "from_row": 658, + "to_row": 658 + }, + "left": { + "to_column": 23, + "from_column": 12, + "right": "statements", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 20256, + "from_row": 658, + "to_row": 658 + }, + "kind": ".", + "at": 20260, + "from_row": 658, + "to_row": 658 + }, + "kind": "!=", + "at": 20272, + "from_row": 658, + "to_row": 658 + } + }, + { + "then": [ + { + "to_row": 659, + "from_column": 33, + "to_column": 85, + "kind": "call", + "at": 20367, + "from_row": 659, + "expression": { + "to_column": 85, + "from_column": 49, + "right": { + "list": [ + { + "to_column": 77, + "from_column": 66, + "right": "disruption", + "left": { + "to_column": 66, + "from_column": 62, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 20396, + "from_row": 659, + "to_row": 659 + }, + "kind": ".", + "at": 20400, + "from_row": 659, + "to_row": 659 + }, + { + "to_column": 84, + "from_column": 79, + "level": 0, + "function_nr": 23, + "name": "fn_nr", + "kind": "name", + "at": 20413, + "from_row": 659, + "to_row": 659 + } + ], + "from_column": 61, + "to_row": 659, + "to_column": 85, + "kind": "(", + "at": 20395, + "from_row": 659, + "expression": { + "to_column": 61, + "from_column": 51, + "level": 1, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 20385, + "from_row": 659, + "to_row": 659 + } + }, + "left": { + "to_column": 48, + "from_column": 37, + "right": "disruption", + "left": { + "to_column": 37, + "from_column": 33, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 20367, + "from_row": 659, + "to_row": 659 + }, + "kind": ".", + "at": 20371, + "from_row": 659, + "to_row": 659 + }, + "kind": "assign", + "at": 20383, + "from_row": 659, + "to_row": 659 + } + } + ], + "from_column": 4, + "list": [], + "to_row": 659, + "to_column": 85, + "kind": "if", + "at": 20338, + "from_row": 659, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 20361, + "from_row": 659, + "to_row": 659 + }, + "left": { + "to_column": 23, + "from_column": 12, + "right": "disruption", + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 23, + "name": "node", + "kind": "name", + "at": 20342, + "from_row": 659, + "to_row": 659 + }, + "kind": ".", + "at": 20346, + "from_row": 659, + "to_row": 659 + }, + "kind": "!=", + "at": 20358, + "from_row": 659, + "to_row": 659 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 19901, + "to_row": 660, + "outer": 30, + "list": [ + { + "to_column": 25, + "from_column": 21, + "name": "node", + "kind": "name", + "at": 19910, + "from_row": 646, + "to_row": 646 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 23, + "from_row": 646 + }, + "left": { + "to_column": 9, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "fold_fn", + "kind": "name", + "at": 19891, + "from_row": 646, + "to_row": 646 + }, + "kind": "assign", + "at": 19899, + "from_row": 646, + "to_row": 660 + } + }, + { + "to_column": 3, + "from_column": 2, + "right": { + "from_column": 16, + "nr_slots": 15, + "statements": [ + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 667, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 20627, + "from_row": 667, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "i", + "kind": "name", + "at": 20623, + "from_row": 667, + "to_row": 667 + }, + "kind": "var", + "at": 20619, + "from_row": 667, + "to_row": 667 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 20642, + "from_row": 668, + "to_row": 668 + }, + "left": { + "to_column": 10, + "from_column": 8, + "name": "sc", + "kind": "name", + "at": 20637, + "from_row": 668, + "to_row": 668 + }, + "kind": "var", + "at": 20633, + "from_row": 668, + "to_row": 668 + }, + { + "to_column": 19, + "from_column": 4, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 20662, + "from_row": 669, + "to_row": 669 + }, + "left": { + "to_column": 12, + "from_column": 8, + "name": "keys", + "kind": "name", + "at": 20655, + "from_row": 669, + "to_row": 669 + }, + "kind": "var", + "at": 20651, + "from_row": 669, + "to_row": 669 + }, + { + "to_column": 13, + "from_column": 4, + "right": { + "to_row": 670, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 20679, + "from_row": 670, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "name": "j", + "kind": "name", + "at": 20675, + "from_row": 670, + "to_row": 670 + }, + "kind": "var", + "at": 20671, + "from_row": 670, + "to_row": 670 + }, + { + "to_column": 18, + "from_column": 4, + "right": { + "to_column": 18, + "from_column": 14, + "kind": "null", + "at": 20695, + "from_row": 671, + "to_row": 671 + }, + "left": { + "to_column": 11, + "from_column": 8, + "name": "key", + "kind": "name", + "at": 20689, + "from_row": 671, + "to_row": 671 + }, + "kind": "var", + "at": 20685, + "from_row": 671, + "to_row": 671 + }, + { + "to_column": 20, + "from_column": 4, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 20716, + "from_row": 672, + "to_row": 672 + }, + "left": { + "to_column": 13, + "from_column": 8, + "name": "entry", + "kind": "name", + "at": 20708, + "from_row": 672, + "to_row": 672 + }, + "kind": "var", + "at": 20704, + "from_row": 672, + "to_row": 672 + }, + { + "to_column": 17, + "from_column": 4, + "right": { + "to_row": 673, + "from_column": 16, + "number": 0, + "to_column": 17, + "kind": "number", + "at": 20737, + "from_row": 673, + "value": "0" + }, + "left": { + "to_column": 13, + "from_column": 8, + "name": "slots", + "kind": "name", + "at": 20729, + "from_row": 673, + "to_row": 673 + }, + "kind": "var", + "at": 20725, + "from_row": 673, + "to_row": 673 + }, + { + "to_column": 23, + "from_column": 4, + "right": { + "to_row": 674, + "from_column": 22, + "number": 0, + "to_column": 23, + "kind": "number", + "at": 20761, + "from_row": 674, + "value": "0" + }, + "left": { + "to_column": 19, + "from_column": 8, + "name": "close_slots", + "kind": "name", + "at": 20747, + "from_row": 674, + "to_row": 674 + }, + "kind": "var", + "at": 20743, + "from_row": 674, + "to_row": 674 + }, + { + "to_row": 697, + "from_column": 4, + "to_column": 5, + "statements": [ + { + "to_column": 5, + "from_column": 26, + "statements": [ + { + "to_row": 678, + "from_column": 6, + "to_column": 20, + "kind": "call", + "at": 20869, + "from_row": 678, + "expression": { + "to_column": 20, + "from_column": 9, + "right": { + "to_column": 20, + "from_column": 17, + "right": { + "to_column": 19, + "from_column": 18, + "level": 0, + "function_nr": 29, + "name": "i", + "kind": "name", + "at": 20881, + "from_row": 678, + "to_row": 678 + }, + "left": { + "to_column": 17, + "from_column": 11, + "level": 1, + "function_nr": 30, + "name": "scopes", + "kind": "name", + "at": 20874, + "from_row": 678, + "to_row": 678 + }, + "kind": "[", + "at": 20880, + "from_row": 678, + "to_row": 678 + }, + "left": { + "to_column": 8, + "from_column": 6, + "level": 0, + "function_nr": 29, + "name": "sc", + "kind": "name", + "at": 20869, + "from_row": 678, + "to_row": 678 + }, + "kind": "assign", + "at": 20872, + "from_row": 678, + "to_row": 678 + } + }, + { + "to_row": 679, + "from_column": 6, + "to_column": 22, + "kind": "call", + "at": 20890, + "from_row": 679, + "expression": { + "to_column": 22, + "from_column": 11, + "right": { + "list": [ + { + "to_column": 21, + "from_column": 19, + "level": 0, + "function_nr": 29, + "name": "sc", + "kind": "name", + "at": 20903, + "from_row": 679, + "to_row": 679 + } + ], + "from_column": 18, + "to_row": 679, + "to_column": 22, + "kind": "(", + "at": 20902, + "from_row": 679, + "expression": { + "to_column": 18, + "from_column": 13, + "level": -1, + "name": "array", + "kind": "name", + "at": 20897, + "from_row": 679, + "to_row": 679 + } + }, + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 29, + "name": "keys", + "kind": "name", + "at": 20890, + "from_row": 679, + "to_row": 679 + }, + "kind": "assign", + "at": 20895, + "from_row": 679, + "to_row": 679 + } + }, + { + "to_row": 680, + "from_column": 6, + "to_column": 15, + "kind": "call", + "at": 20913, + "from_row": 680, + "expression": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 680, + "from_column": 14, + "number": 0, + "to_column": 15, + "kind": "number", + "at": 20921, + "from_row": 680, + "value": "0" + }, + "left": { + "to_column": 11, + "from_column": 6, + "level": 0, + "function_nr": 29, + "name": "slots", + "kind": "name", + "at": 20913, + "from_row": 680, + "to_row": 680 + }, + "kind": "assign", + "at": 20919, + "from_row": 680, + "to_row": 680 + } + }, + { + "to_row": 681, + "from_column": 6, + "to_column": 21, + "kind": "call", + "at": 20929, + "from_row": 681, + "expression": { + "to_column": 21, + "from_column": 18, + "right": { + "to_row": 681, + "from_column": 20, + "number": 0, + "to_column": 21, + "kind": "number", + "at": 20943, + "from_row": 681, + "value": "0" + }, + "left": { + "to_column": 17, + "from_column": 6, + "level": 0, + "function_nr": 29, + "name": "close_slots", + "kind": "name", + "at": 20929, + "from_row": 681, + "to_row": 681 + }, + "kind": "assign", + "at": 20941, + "from_row": 681, + "to_row": 681 + } + }, + { + "to_row": 682, + "from_column": 6, + "to_column": 11, + "kind": "call", + "at": 20951, + "from_row": 682, + "expression": { + "to_column": 11, + "from_column": 8, + "right": { + "to_row": 682, + "from_column": 10, + "number": 0, + "to_column": 11, + "kind": "number", + "at": 20955, + "from_row": 682, + "value": "0" + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 29, + "name": "j", + "kind": "name", + "at": 20951, + "from_row": 682, + "to_row": 682 + }, + "kind": "assign", + "at": 20953, + "from_row": 682, + "to_row": 682 + } + }, + { + "to_row": 695, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 31, + "statements": [ + { + "to_row": 684, + "from_column": 8, + "to_column": 21, + "kind": "call", + "at": 20998, + "from_row": 684, + "expression": { + "to_column": 21, + "from_column": 12, + "right": { + "to_column": 21, + "from_column": 18, + "right": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 29, + "name": "j", + "kind": "name", + "at": 21009, + "from_row": 684, + "to_row": 684 + }, + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 29, + "name": "keys", + "kind": "name", + "at": 21004, + "from_row": 684, + "to_row": 684 + }, + "kind": "[", + "at": 21008, + "from_row": 684, + "to_row": 684 + }, + "left": { + "to_column": 11, + "from_column": 8, + "level": 0, + "function_nr": 29, + "name": "key", + "kind": "name", + "at": 20998, + "from_row": 684, + "to_row": 684 + }, + "kind": "assign", + "at": 21002, + "from_row": 684, + "to_row": 684 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 34, + "statements": [ + { + "to_row": 686, + "from_column": 10, + "to_column": 25, + "kind": "call", + "at": 21058, + "from_row": 686, + "expression": { + "to_column": 25, + "from_column": 16, + "right": { + "to_column": 25, + "from_column": 20, + "right": { + "to_column": 24, + "from_column": 21, + "level": 0, + "function_nr": 29, + "name": "key", + "kind": "name", + "at": 21069, + "from_row": 686, + "to_row": 686 + }, + "left": { + "to_column": 20, + "from_column": 18, + "level": 0, + "function_nr": 29, + "name": "sc", + "kind": "name", + "at": 21066, + "from_row": 686, + "to_row": 686 + }, + "kind": "[", + "at": 21068, + "from_row": 686, + "to_row": 686 + }, + "left": { + "to_column": 15, + "from_column": 10, + "level": 0, + "function_nr": 29, + "name": "entry", + "kind": "name", + "at": 21058, + "from_row": 686, + "to_row": 686 + }, + "kind": "assign", + "at": 21064, + "from_row": 686, + "to_row": 686 + } + }, + { + "then": [ + { + "to_column": 11, + "from_column": 104, + "statements": [ + { + "to_row": 688, + "from_column": 12, + "to_column": 26, + "kind": "call", + "at": 21192, + "from_row": 688, + "expression": { + "to_row": 688, + "from_column": 12, + "to_column": 26, + "kind": "delete", + "at": 21192, + "from_row": 688, + "expression": { + "to_column": 26, + "from_column": 21, + "right": { + "to_column": 25, + "from_column": 22, + "level": 0, + "function_nr": 29, + "name": "key", + "kind": "name", + "at": 21202, + "from_row": 688, + "to_row": 688 + }, + "left": { + "to_column": 21, + "from_column": 19, + "level": 0, + "function_nr": 29, + "name": "sc", + "kind": "name", + "at": 21199, + "from_row": 688, + "to_row": 688 + }, + "kind": "[", + "at": 21201, + "from_row": 688, + "to_row": 688 + } + } + } + ], + "kind": "block", + "at": 21178, + "from_row": 687, + "to_row": 689 + } + ], + "from_column": 10, + "list": [ + { + "then": [ + { + "to_column": 11, + "from_column": 36, + "statements": [ + { + "to_row": 690, + "from_column": 12, + "to_column": 29, + "kind": "call", + "at": 21257, + "from_row": 690, + "expression": { + "to_column": 29, + "from_column": 18, + "right": { + "to_column": 29, + "from_column": 26, + "right": { + "to_row": 690, + "from_column": 28, + "number": 1, + "to_column": 29, + "kind": "number", + "at": 21273, + "from_row": 690, + "value": "1" + }, + "left": { + "to_column": 25, + "from_column": 20, + "level": 0, + "function_nr": 29, + "name": "slots", + "kind": "name", + "at": 21265, + "from_row": 690, + "to_row": 690 + }, + "kind": "+", + "at": 21271, + "from_row": 690, + "to_row": 690 + }, + "left": { + "to_column": 17, + "from_column": 12, + "level": 0, + "function_nr": 29, + "name": "slots", + "kind": "name", + "at": 21257, + "from_row": 690, + "to_row": 690 + }, + "kind": "assign", + "at": 21263, + "from_row": 690, + "to_row": 690 + } + }, + { + "then": [ + { + "to_row": 691, + "from_column": 31, + "to_column": 60, + "kind": "call", + "at": 21306, + "from_row": 691, + "expression": { + "to_column": 60, + "from_column": 43, + "right": { + "to_column": 60, + "from_column": 57, + "right": { + "to_row": 691, + "from_column": 59, + "number": 1, + "to_column": 60, + "kind": "number", + "at": 21334, + "from_row": 691, + "value": "1" + }, + "left": { + "to_column": 56, + "from_column": 45, + "level": 0, + "function_nr": 29, + "name": "close_slots", + "kind": "name", + "at": 21320, + "from_row": 691, + "to_row": 691 + }, + "kind": "+", + "at": 21332, + "from_row": 691, + "to_row": 691 + }, + "left": { + "to_column": 42, + "from_column": 31, + "level": 0, + "function_nr": 29, + "name": "close_slots", + "kind": "name", + "at": 21306, + "from_row": 691, + "to_row": 691 + }, + "kind": "assign", + "at": 21318, + "from_row": 691, + "to_row": 691 + } + } + ], + "from_column": 12, + "list": [], + "to_row": 691, + "to_column": 60, + "kind": "if", + "at": 21287, + "from_row": 691, + "expression": { + "to_column": 29, + "from_column": 21, + "right": "closure", + "left": { + "to_column": 21, + "from_column": 16, + "level": 0, + "function_nr": 29, + "name": "entry", + "kind": "name", + "at": 21291, + "from_row": 691, + "to_row": 691 + }, + "kind": ".", + "at": 21296, + "from_row": 691, + "to_row": 691 + } + } + ], + "kind": "block", + "at": 21243, + "from_row": 689, + "to_row": 692 + } + ], + "from_column": 17, + "list": [], + "to_row": 692, + "to_column": 11, + "kind": "if", + "at": 21224, + "from_row": 689, + "expression": { + "to_column": 34, + "from_column": 27, + "right": { + "to_column": 34, + "from_column": 30, + "kind": "null", + "at": 21237, + "from_row": 689, + "to_row": 689 + }, + "left": { + "to_column": 26, + "from_column": 21, + "level": 0, + "function_nr": 29, + "name": "entry", + "kind": "name", + "at": 21228, + "from_row": 689, + "to_row": 689 + }, + "kind": "!=", + "at": 21234, + "from_row": 689, + "to_row": 689 + } + } + ], + "to_row": 692, + "to_column": 11, + "kind": "if", + "at": 21084, + "from_row": 687, + "expression": { + "to_column": 102, + "from_column": 75, + "right": { + "to_column": 102, + "from_column": 89, + "right": { + "to_row": 687, + "from_column": 92, + "to_column": 102, + "kind": "text", + "at": 21166, + "from_row": 687, + "value": "function" + }, + "left": { + "to_column": 88, + "from_column": 83, + "right": "make", + "left": { + "to_column": 83, + "from_column": 78, + "level": 0, + "function_nr": 29, + "name": "entry", + "kind": "name", + "at": 21152, + "from_row": 687, + "to_row": 687 + }, + "kind": ".", + "at": 21157, + "from_row": 687, + "to_row": 687 + }, + "kind": "!=", + "at": 21163, + "from_row": 687, + "to_row": 687 + }, + "left": { + "to_column": 74, + "from_column": 50, + "right": { + "to_column": 74, + "from_column": 64, + "right": { + "to_row": 687, + "from_column": 67, + "to_column": 74, + "kind": "text", + "at": 21141, + "from_row": 687, + "value": "input" + }, + "left": { + "to_column": 63, + "from_column": 58, + "right": "make", + "left": { + "to_column": 58, + "from_column": 53, + "level": 0, + "function_nr": 29, + "name": "entry", + "kind": "name", + "at": 21127, + "from_row": 687, + "to_row": 687 + }, + "kind": ".", + "at": 21132, + "from_row": 687, + "to_row": 687 + }, + "kind": "!=", + "at": 21138, + "from_row": 687, + "to_row": 687 + }, + "left": { + "to_column": 49, + "from_column": 28, + "right": { + "to_column": 49, + "from_column": 45, + "right": { + "to_row": 687, + "from_column": 48, + "number": 0, + "to_column": 49, + "kind": "number", + "at": 21122, + "from_row": 687, + "value": "0" + }, + "left": { + "to_column": 44, + "from_column": 36, + "right": "nr_uses", + "left": { + "to_column": 36, + "from_column": 31, + "level": 0, + "function_nr": 29, + "name": "entry", + "kind": "name", + "at": 21105, + "from_row": 687, + "to_row": 687 + }, + "kind": ".", + "at": 21110, + "from_row": 687, + "to_row": 687 + }, + "kind": "==", + "at": 21119, + "from_row": 687, + "to_row": 687 + }, + "left": { + "to_column": 27, + "from_column": 20, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "null", + "at": 21097, + "from_row": 687, + "to_row": 687 + }, + "left": { + "to_column": 19, + "from_column": 14, + "level": 0, + "function_nr": 29, + "name": "entry", + "kind": "name", + "at": 21088, + "from_row": 687, + "to_row": 687 + }, + "kind": "!=", + "at": 21094, + "from_row": 687, + "to_row": 687 + }, + "kind": "&&", + "at": 21102, + "from_row": 687, + "to_row": 687 + }, + "kind": "&&", + "at": 21124, + "from_row": 687, + "to_row": 687 + }, + "kind": "&&", + "at": 21149, + "from_row": 687, + "to_row": 687 + } + } + ], + "kind": "block", + "at": 21046, + "from_row": 685, + "to_row": 693 + } + ], + "from_column": 8, + "list": [], + "to_row": 693, + "to_column": 9, + "kind": "if", + "at": 21020, + "from_row": 685, + "expression": { + "to_column": 32, + "from_column": 16, + "right": { + "to_row": 685, + "from_column": 19, + "to_column": 32, + "kind": "text", + "at": 21031, + "from_row": 685, + "value": "function_nr" + }, + "left": { + "to_column": 15, + "from_column": 12, + "level": 0, + "function_nr": 29, + "name": "key", + "kind": "name", + "at": 21024, + "from_row": 685, + "to_row": 685 + }, + "kind": "!=", + "at": 21028, + "from_row": 685, + "to_row": 685 + } + }, + { + "to_row": 694, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 21366, + "from_row": 694, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 694, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 21374, + "from_row": 694, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 29, + "name": "j", + "kind": "name", + "at": 21370, + "from_row": 694, + "to_row": 694 + }, + "kind": "+", + "at": 21372, + "from_row": 694, + "to_row": 694 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 29, + "name": "j", + "kind": "name", + "at": 21366, + "from_row": 694, + "to_row": 694 + }, + "kind": "assign", + "at": 21368, + "from_row": 694, + "to_row": 694 + } + } + ], + "kind": "block", + "at": 20988, + "from_row": 683, + "to_row": 695 + } + ], + "kind": "while", + "at": 20963, + "from_row": 683, + "expression": { + "to_column": 29, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 29, + "name": "keys", + "kind": "name", + "at": 20981, + "from_row": 683, + "to_row": 683 + } + ], + "from_column": 23, + "to_row": 683, + "to_column": 29, + "kind": "(", + "at": 20980, + "from_row": 683, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 20974, + "from_row": 683, + "to_row": 683 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 29, + "name": "j", + "kind": "name", + "at": 20970, + "from_row": 683, + "to_row": 683 + }, + "kind": "<", + "at": 20972, + "from_row": 683, + "to_row": 683 + } + }, + { + "to_row": 696, + "from_column": 6, + "to_column": 15, + "kind": "call", + "at": 21390, + "from_row": 696, + "expression": { + "to_column": 15, + "from_column": 8, + "right": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 696, + "from_column": 14, + "number": 1, + "to_column": 15, + "kind": "number", + "at": 21398, + "from_row": 696, + "value": "1" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 29, + "name": "i", + "kind": "name", + "at": 21394, + "from_row": 696, + "to_row": 696 + }, + "kind": "+", + "at": 21396, + "from_row": 696, + "to_row": 696 + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 29, + "name": "i", + "kind": "name", + "at": 21390, + "from_row": 696, + "to_row": 696 + }, + "kind": "assign", + "at": 21392, + "from_row": 696, + "to_row": 696 + } + } + ], + "kind": "block", + "at": 20861, + "from_row": 677, + "to_row": 697 + } + ], + "kind": "while", + "at": 20839, + "from_row": 677, + "expression": { + "to_column": 24, + "from_column": 13, + "right": { + "to_column": 24, + "from_column": 15, + "level": 1, + "function_nr": 30, + "name": "nr_scopes", + "kind": "name", + "at": 20850, + "from_row": 677, + "to_row": 677 + }, + "left": { + "to_column": 12, + "from_column": 11, + "level": 0, + "function_nr": 29, + "name": "i", + "kind": "name", + "at": 20846, + "from_row": 677, + "to_row": 677 + }, + "kind": "<", + "at": 20848, + "from_row": 677, + "to_row": 677 + } + }, + { + "to_column": 30, + "from_column": 4, + "right": { + "to_column": 30, + "from_column": 26, + "kind": "null", + "at": 21493, + "from_row": 700, + "to_row": 700 + }, + "left": { + "to_column": 23, + "from_column": 8, + "name": "update_fn_slots", + "kind": "name", + "at": 21475, + "from_row": 700, + "to_row": 700 + }, + "kind": "var", + "at": 21471, + "from_row": 700, + "to_row": 700 + }, + { + "to_row": 724, + "from_column": 4, + "to_column": 5, + "kind": "call", + "at": 21502, + "from_row": 701, + "expression": { + "to_column": 5, + "from_column": 20, + "right": { + "from_column": 22, + "nr_slots": 8, + "statements": [ + { + "then": [ + { + "to_row": 702, + "from_column": 24, + "to_column": 35, + "kind": "return", + "at": 21561, + "from_row": 702, + "expression": { + "to_column": 35, + "from_column": 31, + "kind": "null", + "at": 21568, + "from_row": 702, + "to_row": 702 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 702, + "to_column": 35, + "kind": "if", + "at": 21543, + "from_row": 702, + "expression": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 21555, + "from_row": 702, + "to_row": 702 + }, + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 24, + "name": "node", + "kind": "name", + "at": 21547, + "from_row": 702, + "to_row": 702 + }, + "kind": "==", + "at": 21552, + "from_row": 702, + "to_row": 702 + } + }, + { + "to_column": 34, + "from_column": 6, + "right": { + "to_column": 34, + "from_column": 22, + "right": "function_nr", + "left": { + "to_column": 22, + "from_column": 18, + "level": 0, + "function_nr": 24, + "name": "node", + "kind": "name", + "at": 21591, + "from_row": 703, + "to_row": 703 + }, + "kind": ".", + "at": 21595, + "from_row": 703, + "to_row": 703 + }, + "left": { + "to_column": 15, + "from_column": 10, + "name": "fn_nr", + "kind": "name", + "at": 21583, + "from_row": 703, + "to_row": 703 + }, + "kind": "var", + "at": 21579, + "from_row": 703, + "to_row": 703 + }, + { + "then": [ + { + "to_row": 704, + "from_column": 25, + "to_column": 36, + "kind": "return", + "at": 21633, + "from_row": 704, + "expression": { + "to_column": 36, + "from_column": 32, + "kind": "null", + "at": 21640, + "from_row": 704, + "to_row": 704 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 704, + "to_column": 36, + "kind": "if", + "at": 21614, + "from_row": 704, + "expression": { + "to_column": 23, + "from_column": 16, + "right": { + "to_column": 23, + "from_column": 19, + "kind": "null", + "at": 21627, + "from_row": 704, + "to_row": 704 + }, + "left": { + "to_column": 15, + "from_column": 10, + "level": 0, + "function_nr": 24, + "name": "fn_nr", + "kind": "name", + "at": 21618, + "from_row": 704, + "to_row": 704 + }, + "kind": "==", + "at": 21624, + "from_row": 704, + "to_row": 704 + } + }, + { + "to_column": 32, + "from_column": 6, + "right": { + "list": [ + { + "to_column": 31, + "from_column": 26, + "level": 0, + "function_nr": 24, + "name": "fn_nr", + "kind": "name", + "at": 21671, + "from_row": 705, + "to_row": 705 + } + ], + "from_column": 25, + "to_row": 705, + "to_column": 32, + "kind": "(", + "at": 21670, + "from_row": 705, + "expression": { + "to_column": 25, + "from_column": 15, + "level": 2, + "function_nr": 30, + "name": "find_scope", + "kind": "name", + "at": 21660, + "from_row": 705, + "to_row": 705 + } + }, + "left": { + "to_column": 12, + "from_column": 10, + "name": "sc", + "kind": "name", + "at": 21655, + "from_row": 705, + "to_row": 705 + }, + "kind": "var", + "at": 21651, + "from_row": 705, + "to_row": 705 + }, + { + "then": [ + { + "to_row": 706, + "from_column": 22, + "to_column": 33, + "kind": "return", + "at": 21700, + "from_row": 706, + "expression": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 21707, + "from_row": 706, + "to_row": 706 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 706, + "to_column": 33, + "kind": "if", + "at": 21684, + "from_row": 706, + "expression": { + "to_column": 20, + "from_column": 13, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 21694, + "from_row": 706, + "to_row": 706 + }, + "left": { + "to_column": 12, + "from_column": 10, + "level": 0, + "function_nr": 24, + "name": "sc", + "kind": "name", + "at": 21688, + "from_row": 706, + "to_row": 706 + }, + "kind": "==", + "at": 21691, + "from_row": 706, + "to_row": 706 + } + }, + { + "to_column": 26, + "from_column": 6, + "right": { + "list": [ + { + "to_column": 25, + "from_column": 23, + "level": 0, + "function_nr": 24, + "name": "sc", + "kind": "name", + "at": 21735, + "from_row": 707, + "to_row": 707 + } + ], + "from_column": 22, + "to_row": 707, + "to_column": 26, + "kind": "(", + "at": 21734, + "from_row": 707, + "expression": { + "to_column": 22, + "from_column": 17, + "level": -1, + "name": "array", + "kind": "name", + "at": 21729, + "from_row": 707, + "to_row": 707 + } + }, + "left": { + "to_column": 14, + "from_column": 10, + "name": "keys", + "kind": "name", + "at": 21722, + "from_row": 707, + "to_row": 707 + }, + "kind": "var", + "at": 21718, + "from_row": 707, + "to_row": 707 + }, + { + "to_column": 15, + "from_column": 6, + "right": { + "to_row": 708, + "from_column": 14, + "number": 0, + "to_column": 15, + "kind": "number", + "at": 21753, + "from_row": 708, + "value": "0" + }, + "left": { + "to_column": 11, + "from_column": 10, + "name": "s", + "kind": "name", + "at": 21749, + "from_row": 708, + "to_row": 708 + }, + "kind": "var", + "at": 21745, + "from_row": 708, + "to_row": 708 + }, + { + "to_column": 16, + "from_column": 6, + "right": { + "to_row": 709, + "from_column": 15, + "number": 0, + "to_column": 16, + "kind": "number", + "at": 21770, + "from_row": 709, + "value": "0" + }, + "left": { + "to_column": 12, + "from_column": 10, + "name": "cs", + "kind": "name", + "at": 21765, + "from_row": 709, + "to_row": 709 + }, + "kind": "var", + "at": 21761, + "from_row": 709, + "to_row": 709 + }, + { + "to_column": 16, + "from_column": 6, + "right": { + "to_row": 710, + "from_column": 15, + "number": 0, + "to_column": 16, + "kind": "number", + "at": 21787, + "from_row": 710, + "value": "0" + }, + "left": { + "to_column": 12, + "from_column": 10, + "name": "ki", + "kind": "name", + "at": 21782, + "from_row": 710, + "to_row": 710 + }, + "kind": "var", + "at": 21778, + "from_row": 710, + "to_row": 710 + }, + { + "to_column": 20, + "from_column": 6, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 21805, + "from_row": 711, + "to_row": 711 + }, + "left": { + "to_column": 13, + "from_column": 10, + "name": "ent", + "kind": "name", + "at": 21799, + "from_row": 711, + "to_row": 711 + }, + "kind": "var", + "at": 21795, + "from_row": 711, + "to_row": 711 + }, + { + "to_row": 721, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 32, + "statements": [ + { + "then": [ + { + "to_column": 9, + "from_column": 39, + "statements": [ + { + "to_row": 714, + "from_column": 10, + "to_column": 28, + "kind": "call", + "at": 21895, + "from_row": 714, + "expression": { + "to_column": 28, + "from_column": 14, + "right": { + "to_column": 28, + "from_column": 18, + "right": { + "to_column": 27, + "from_column": 23, + "right": { + "to_column": 26, + "from_column": 24, + "level": 0, + "function_nr": 24, + "name": "ki", + "kind": "name", + "at": 21909, + "from_row": 714, + "to_row": 714 + }, + "left": { + "to_column": 23, + "from_column": 19, + "level": 0, + "function_nr": 24, + "name": "keys", + "kind": "name", + "at": 21904, + "from_row": 714, + "to_row": 714 + }, + "kind": "[", + "at": 21908, + "from_row": 714, + "to_row": 714 + }, + "left": { + "to_column": 18, + "from_column": 16, + "level": 0, + "function_nr": 24, + "name": "sc", + "kind": "name", + "at": 21901, + "from_row": 714, + "to_row": 714 + }, + "kind": "[", + "at": 21903, + "from_row": 714, + "to_row": 714 + }, + "left": { + "to_column": 13, + "from_column": 10, + "level": 0, + "function_nr": 24, + "name": "ent", + "kind": "name", + "at": 21895, + "from_row": 714, + "to_row": 714 + }, + "kind": "assign", + "at": 21899, + "from_row": 714, + "to_row": 714 + } + }, + { + "then": [ + { + "to_column": 11, + "from_column": 27, + "statements": [ + { + "to_row": 716, + "from_column": 12, + "to_column": 21, + "kind": "call", + "at": 21955, + "from_row": 716, + "expression": { + "to_column": 21, + "from_column": 14, + "right": { + "to_column": 21, + "from_column": 18, + "right": { + "to_row": 716, + "from_column": 20, + "number": 1, + "to_column": 21, + "kind": "number", + "at": 21963, + "from_row": 716, + "value": "1" + }, + "left": { + "to_column": 17, + "from_column": 16, + "level": 0, + "function_nr": 24, + "name": "s", + "kind": "name", + "at": 21959, + "from_row": 716, + "to_row": 716 + }, + "kind": "+", + "at": 21961, + "from_row": 716, + "to_row": 716 + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 24, + "name": "s", + "kind": "name", + "at": 21955, + "from_row": 716, + "to_row": 716 + }, + "kind": "assign", + "at": 21957, + "from_row": 716, + "to_row": 716 + } + }, + { + "then": [ + { + "to_row": 717, + "from_column": 29, + "to_column": 40, + "kind": "call", + "at": 21994, + "from_row": 717, + "expression": { + "to_column": 40, + "from_column": 32, + "right": { + "to_column": 40, + "from_column": 37, + "right": { + "to_row": 717, + "from_column": 39, + "number": 1, + "to_column": 40, + "kind": "number", + "at": 22004, + "from_row": 717, + "value": "1" + }, + "left": { + "to_column": 36, + "from_column": 34, + "level": 0, + "function_nr": 24, + "name": "cs", + "kind": "name", + "at": 21999, + "from_row": 717, + "to_row": 717 + }, + "kind": "+", + "at": 22002, + "from_row": 717, + "to_row": 717 + }, + "left": { + "to_column": 31, + "from_column": 29, + "level": 0, + "function_nr": 24, + "name": "cs", + "kind": "name", + "at": 21994, + "from_row": 717, + "to_row": 717 + }, + "kind": "assign", + "at": 21997, + "from_row": 717, + "to_row": 717 + } + } + ], + "from_column": 12, + "list": [], + "to_row": 717, + "to_column": 40, + "kind": "if", + "at": 21977, + "from_row": 717, + "expression": { + "to_column": 27, + "from_column": 19, + "right": "closure", + "left": { + "to_column": 19, + "from_column": 16, + "level": 0, + "function_nr": 24, + "name": "ent", + "kind": "name", + "at": 21981, + "from_row": 717, + "to_row": 717 + }, + "kind": ".", + "at": 21984, + "from_row": 717, + "to_row": 717 + } + } + ], + "kind": "block", + "at": 21941, + "from_row": 715, + "to_row": 718 + } + ], + "from_column": 10, + "list": [], + "to_row": 718, + "to_column": 11, + "kind": "if", + "at": 21924, + "from_row": 715, + "expression": { + "to_column": 25, + "from_column": 18, + "right": { + "to_column": 25, + "from_column": 21, + "kind": "null", + "at": 21935, + "from_row": 715, + "to_row": 715 + }, + "left": { + "to_column": 17, + "from_column": 14, + "level": 0, + "function_nr": 24, + "name": "ent", + "kind": "name", + "at": 21928, + "from_row": 715, + "to_row": 715 + }, + "kind": "!=", + "at": 21932, + "from_row": 715, + "to_row": 715 + } + } + ], + "kind": "block", + "at": 21883, + "from_row": 713, + "to_row": 719 + } + ], + "from_column": 8, + "list": [], + "to_row": 719, + "to_column": 9, + "kind": "if", + "at": 21852, + "from_row": 713, + "expression": { + "to_column": 37, + "from_column": 21, + "right": { + "to_row": 713, + "from_column": 24, + "to_column": 37, + "kind": "text", + "at": 21868, + "from_row": 713, + "value": "function_nr" + }, + "left": { + "to_column": 20, + "from_column": 16, + "right": { + "to_column": 19, + "from_column": 17, + "level": 0, + "function_nr": 24, + "name": "ki", + "kind": "name", + "at": 21861, + "from_row": 713, + "to_row": 713 + }, + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 24, + "name": "keys", + "kind": "name", + "at": 21856, + "from_row": 713, + "to_row": 713 + }, + "kind": "[", + "at": 21860, + "from_row": 713, + "to_row": 713 + }, + "kind": "!=", + "at": 21865, + "from_row": 713, + "to_row": 713 + } + }, + { + "to_row": 720, + "from_column": 8, + "to_column": 19, + "kind": "call", + "at": 22036, + "from_row": 720, + "expression": { + "to_column": 19, + "from_column": 11, + "right": { + "to_column": 19, + "from_column": 16, + "right": { + "to_row": 720, + "from_column": 18, + "number": 1, + "to_column": 19, + "kind": "number", + "at": 22046, + "from_row": 720, + "value": "1" + }, + "left": { + "to_column": 15, + "from_column": 13, + "level": 0, + "function_nr": 24, + "name": "ki", + "kind": "name", + "at": 22041, + "from_row": 720, + "to_row": 720 + }, + "kind": "+", + "at": 22044, + "from_row": 720, + "to_row": 720 + }, + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 24, + "name": "ki", + "kind": "name", + "at": 22036, + "from_row": 720, + "to_row": 720 + }, + "kind": "assign", + "at": 22039, + "from_row": 720, + "to_row": 720 + } + } + ], + "kind": "block", + "at": 21842, + "from_row": 712, + "to_row": 721 + } + ], + "kind": "while", + "at": 21816, + "from_row": 712, + "expression": { + "to_column": 30, + "from_column": 16, + "right": { + "list": [ + { + "to_column": 29, + "from_column": 25, + "level": 0, + "function_nr": 24, + "name": "keys", + "kind": "name", + "at": 21835, + "from_row": 712, + "to_row": 712 + } + ], + "from_column": 24, + "to_row": 712, + "to_column": 30, + "kind": "(", + "at": 21834, + "from_row": 712, + "expression": { + "to_column": 24, + "from_column": 18, + "level": -1, + "name": "length", + "kind": "name", + "at": 21828, + "from_row": 712, + "to_row": 712 + } + }, + "left": { + "to_column": 15, + "from_column": 13, + "level": 0, + "function_nr": 24, + "name": "ki", + "kind": "name", + "at": 21823, + "from_row": 712, + "to_row": 712 + }, + "kind": "<", + "at": 21826, + "from_row": 712, + "to_row": 712 + } + }, + { + "to_row": 722, + "from_column": 6, + "to_column": 23, + "kind": "call", + "at": 22062, + "from_row": 722, + "expression": { + "to_column": 23, + "from_column": 20, + "right": { + "to_column": 23, + "from_column": 22, + "level": 0, + "function_nr": 24, + "name": "s", + "kind": "name", + "at": 22078, + "from_row": 722, + "to_row": 722 + }, + "left": { + "to_column": 19, + "from_column": 10, + "right": "nr_slots", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 24, + "name": "node", + "kind": "name", + "at": 22062, + "from_row": 722, + "to_row": 722 + }, + "kind": ".", + "at": 22066, + "from_row": 722, + "to_row": 722 + }, + "kind": "assign", + "at": 22076, + "from_row": 722, + "to_row": 722 + } + }, + { + "to_row": 723, + "from_column": 6, + "to_column": 30, + "kind": "call", + "at": 22086, + "from_row": 723, + "expression": { + "to_column": 30, + "from_column": 26, + "right": { + "to_column": 30, + "from_column": 28, + "level": 0, + "function_nr": 24, + "name": "cs", + "kind": "name", + "at": 22108, + "from_row": 723, + "to_row": 723 + }, + "left": { + "to_column": 25, + "from_column": 10, + "right": "nr_close_slots", + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 24, + "name": "node", + "kind": "name", + "at": 22086, + "from_row": 723, + "to_row": 723 + }, + "kind": ".", + "at": 22090, + "from_row": 723, + "to_row": 723 + }, + "kind": "assign", + "at": 22106, + "from_row": 723, + "to_row": 723 + } + } + ], + "to_column": 5, + "kind": "function", + "at": 21520, + "to_row": 724, + "outer": 29, + "list": [ + { + "to_column": 35, + "from_column": 31, + "name": "node", + "kind": "name", + "at": 21529, + "from_row": 701, + "to_row": 701 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 24, + "from_row": 701 + }, + "left": { + "to_column": 19, + "from_column": 4, + "level": 0, + "function_nr": 29, + "name": "update_fn_slots", + "kind": "name", + "at": 21502, + "from_row": 701, + "to_row": 701 + }, + "kind": "assign", + "at": 21518, + "from_row": 701, + "to_row": 724 + } + }, + { + "to_column": 33, + "from_column": 4, + "right": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 22147, + "from_row": 726, + "to_row": 726 + }, + "left": { + "to_column": 26, + "from_column": 8, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 22126, + "from_row": 726, + "to_row": 726 + }, + "kind": "var", + "at": 22122, + "from_row": 726, + "to_row": 726 + }, + { + "to_column": 32, + "from_column": 4, + "right": { + "to_column": 32, + "from_column": 28, + "kind": "null", + "at": 22180, + "from_row": 727, + "to_row": 727 + }, + "left": { + "to_column": 25, + "from_column": 8, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 22160, + "from_row": 727, + "to_row": 727 + }, + "kind": "var", + "at": 22156, + "from_row": 727, + "to_row": 727 + }, + { + "to_row": 758, + "from_column": 4, + "to_column": 5, + "kind": "call", + "at": 22190, + "from_row": 729, + "expression": { + "to_column": 5, + "from_column": 22, + "right": { + "from_column": 24, + "nr_slots": 3, + "statements": [ + { + "then": [ + { + "to_row": 730, + "from_column": 24, + "to_column": 35, + "kind": "return", + "at": 22251, + "from_row": 730, + "expression": { + "to_column": 35, + "from_column": 31, + "kind": "null", + "at": 22258, + "from_row": 730, + "to_row": 730 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 730, + "to_column": 35, + "kind": "if", + "at": 22233, + "from_row": 730, + "expression": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 22245, + "from_row": 730, + "to_row": 730 + }, + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22237, + "from_row": 730, + "to_row": 730 + }, + "kind": "==", + "at": 22242, + "from_row": 730, + "to_row": 730 + } + }, + { + "to_column": 23, + "from_column": 6, + "right": { + "to_column": 23, + "from_column": 18, + "right": "kind", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22277, + "from_row": 731, + "to_row": 731 + }, + "kind": ".", + "at": 22281, + "from_row": 731, + "to_row": 731 + }, + "left": { + "to_column": 11, + "from_column": 10, + "name": "k", + "kind": "name", + "at": 22273, + "from_row": 731, + "to_row": 731 + }, + "kind": "var", + "at": 22269, + "from_row": 731, + "to_row": 731 + }, + { + "to_column": 15, + "from_column": 6, + "right": { + "to_row": 732, + "from_column": 14, + "number": 0, + "to_column": 15, + "kind": "number", + "at": 22301, + "from_row": 732, + "value": "0" + }, + "left": { + "to_column": 11, + "from_column": 10, + "name": "i", + "kind": "name", + "at": 22297, + "from_row": 732, + "to_row": 732 + }, + "kind": "var", + "at": 22293, + "from_row": 732, + "to_row": 732 + }, + { + "then": [ + { + "to_column": 7, + "from_column": 27, + "statements": [ + { + "to_row": 734, + "from_column": 8, + "to_column": 29, + "kind": "call", + "at": 22340, + "from_row": 734, + "expression": { + "list": [ + { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22356, + "from_row": 734, + "to_row": 734 + } + ], + "from_column": 23, + "to_row": 734, + "to_column": 29, + "kind": "(", + "at": 22355, + "from_row": 734, + "expression": { + "to_column": 23, + "from_column": 8, + "level": 1, + "function_nr": 29, + "name": "update_fn_slots", + "kind": "name", + "at": 22340, + "from_row": 734, + "to_row": 734 + } + } + }, + { + "to_row": 735, + "from_column": 8, + "to_column": 43, + "kind": "call", + "at": 22370, + "from_row": 735, + "expression": { + "list": [ + { + "to_column": 42, + "from_column": 31, + "right": "statements", + "left": { + "to_column": 31, + "from_column": 27, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22389, + "from_row": 735, + "to_row": 735 + }, + "kind": ".", + "at": 22393, + "from_row": 735, + "to_row": 735 + } + ], + "from_column": 26, + "to_row": 735, + "to_column": 43, + "kind": "(", + "at": 22388, + "from_row": 735, + "expression": { + "to_column": 26, + "from_column": 8, + "level": 1, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 22370, + "from_row": 735, + "to_row": 735 + } + } + }, + { + "to_row": 736, + "from_column": 8, + "to_column": 43, + "kind": "call", + "at": 22414, + "from_row": 736, + "expression": { + "list": [ + { + "to_column": 42, + "from_column": 31, + "right": "disruption", + "left": { + "to_column": 31, + "from_column": 27, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22433, + "from_row": 736, + "to_row": 736 + }, + "kind": ".", + "at": 22437, + "from_row": 736, + "to_row": 736 + } + ], + "from_column": 26, + "to_row": 736, + "to_column": 43, + "kind": "(", + "at": 22432, + "from_row": 736, + "expression": { + "to_column": 26, + "from_column": 8, + "level": 1, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 22414, + "from_row": 736, + "to_row": 736 + } + } + }, + { + "to_row": 737, + "from_column": 8, + "to_column": 19, + "kind": "return", + "at": 22458, + "from_row": 737, + "expression": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 22465, + "from_row": 737, + "to_row": 737 + } + } + ], + "kind": "block", + "at": 22330, + "from_row": 733, + "to_row": 738 + } + ], + "from_column": 6, + "list": [], + "to_row": 738, + "to_column": 7, + "kind": "if", + "at": 22309, + "from_row": 733, + "expression": { + "to_column": 25, + "from_column": 12, + "right": { + "to_row": 733, + "from_column": 15, + "to_column": 25, + "kind": "text", + "at": 22318, + "from_row": 733, + "value": "function" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 25, + "name": "k", + "kind": "name", + "at": 22313, + "from_row": 733, + "to_row": 733 + }, + "kind": "==", + "at": 22315, + "from_row": 733, + "to_row": 733 + } + }, + { + "then": [ + { + "to_row": 739, + "from_column": 29, + "to_column": 57, + "kind": "call", + "at": 22507, + "from_row": 739, + "expression": { + "list": [ + { + "to_column": 56, + "from_column": 51, + "right": "left", + "left": { + "to_column": 51, + "from_column": 47, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22525, + "from_row": 739, + "to_row": 739 + }, + "kind": ".", + "at": 22529, + "from_row": 739, + "to_row": 739 + } + ], + "from_column": 46, + "to_row": 739, + "to_column": 57, + "kind": "(", + "at": 22524, + "from_row": 739, + "expression": { + "to_column": 46, + "from_column": 29, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 22507, + "from_row": 739, + "to_row": 739 + } + } + } + ], + "from_column": 6, + "list": [], + "to_row": 739, + "to_column": 57, + "kind": "if", + "at": 22484, + "from_row": 739, + "expression": { + "to_column": 27, + "from_column": 20, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "null", + "at": 22501, + "from_row": 739, + "to_row": 739 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "left", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22488, + "from_row": 739, + "to_row": 739 + }, + "kind": ".", + "at": 22492, + "from_row": 739, + "to_row": 739 + }, + "kind": "!=", + "at": 22498, + "from_row": 739, + "to_row": 739 + } + }, + { + "then": [ + { + "to_row": 740, + "from_column": 30, + "to_column": 59, + "kind": "call", + "at": 22566, + "from_row": 740, + "expression": { + "list": [ + { + "to_column": 58, + "from_column": 52, + "right": "right", + "left": { + "to_column": 52, + "from_column": 48, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22584, + "from_row": 740, + "to_row": 740 + }, + "kind": ".", + "at": 22588, + "from_row": 740, + "to_row": 740 + } + ], + "from_column": 47, + "to_row": 740, + "to_column": 59, + "kind": "(", + "at": 22583, + "from_row": 740, + "expression": { + "to_column": 47, + "from_column": 30, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 22566, + "from_row": 740, + "to_row": 740 + } + } + } + ], + "from_column": 6, + "list": [], + "to_row": 740, + "to_column": 59, + "kind": "if", + "at": 22542, + "from_row": 740, + "expression": { + "to_column": 28, + "from_column": 21, + "right": { + "to_column": 28, + "from_column": 24, + "kind": "null", + "at": 22560, + "from_row": 740, + "to_row": 740 + }, + "left": { + "to_column": 20, + "from_column": 14, + "right": "right", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22546, + "from_row": 740, + "to_row": 740 + }, + "kind": ".", + "at": 22550, + "from_row": 740, + "to_row": 740 + }, + "kind": "!=", + "at": 22557, + "from_row": 740, + "to_row": 740 + } + }, + { + "then": [ + { + "to_row": 741, + "from_column": 35, + "to_column": 69, + "kind": "call", + "at": 22631, + "from_row": 741, + "expression": { + "list": [ + { + "to_column": 68, + "from_column": 57, + "right": "expression", + "left": { + "to_column": 57, + "from_column": 53, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22649, + "from_row": 741, + "to_row": 741 + }, + "kind": ".", + "at": 22653, + "from_row": 741, + "to_row": 741 + } + ], + "from_column": 52, + "to_row": 741, + "to_column": 69, + "kind": "(", + "at": 22648, + "from_row": 741, + "expression": { + "to_column": 52, + "from_column": 35, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 22631, + "from_row": 741, + "to_row": 741 + } + } + } + ], + "from_column": 6, + "list": [], + "to_row": 741, + "to_column": 69, + "kind": "if", + "at": 22602, + "from_row": 741, + "expression": { + "to_column": 33, + "from_column": 26, + "right": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 22625, + "from_row": 741, + "to_row": 741 + }, + "left": { + "to_column": 25, + "from_column": 14, + "right": "expression", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22606, + "from_row": 741, + "to_row": 741 + }, + "kind": ".", + "at": 22610, + "from_row": 741, + "to_row": 741 + }, + "kind": "!=", + "at": 22622, + "from_row": 741, + "to_row": 741 + } + }, + { + "then": [ + { + "to_row": 742, + "from_column": 29, + "to_column": 57, + "kind": "call", + "at": 22695, + "from_row": 742, + "expression": { + "list": [ + { + "to_column": 56, + "from_column": 51, + "right": "then", + "left": { + "to_column": 51, + "from_column": 47, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22713, + "from_row": 742, + "to_row": 742 + }, + "kind": ".", + "at": 22717, + "from_row": 742, + "to_row": 742 + } + ], + "from_column": 46, + "to_row": 742, + "to_column": 57, + "kind": "(", + "at": 22712, + "from_row": 742, + "expression": { + "to_column": 46, + "from_column": 29, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 22695, + "from_row": 742, + "to_row": 742 + } + } + } + ], + "from_column": 6, + "list": [], + "to_row": 742, + "to_column": 57, + "kind": "if", + "at": 22672, + "from_row": 742, + "expression": { + "to_column": 27, + "from_column": 20, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "null", + "at": 22689, + "from_row": 742, + "to_row": 742 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "then", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22676, + "from_row": 742, + "to_row": 742 + }, + "kind": ".", + "at": 22680, + "from_row": 742, + "to_row": 742 + }, + "kind": "!=", + "at": 22686, + "from_row": 742, + "to_row": 742 + } + }, + { + "then": [ + { + "to_row": 743, + "from_column": 29, + "to_column": 57, + "kind": "call", + "at": 22753, + "from_row": 743, + "expression": { + "list": [ + { + "to_column": 56, + "from_column": 51, + "right": "else", + "left": { + "to_column": 51, + "from_column": 47, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22771, + "from_row": 743, + "to_row": 743 + }, + "kind": ".", + "at": 22775, + "from_row": 743, + "to_row": 743 + } + ], + "from_column": 46, + "to_row": 743, + "to_column": 57, + "kind": "(", + "at": 22770, + "from_row": 743, + "expression": { + "to_column": 46, + "from_column": 29, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 22753, + "from_row": 743, + "to_row": 743 + } + } + } + ], + "from_column": 6, + "list": [], + "to_row": 743, + "to_column": 57, + "kind": "if", + "at": 22730, + "from_row": 743, + "expression": { + "to_column": 27, + "from_column": 20, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "null", + "at": 22747, + "from_row": 743, + "to_row": 743 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "else", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22734, + "from_row": 743, + "to_row": 743 + }, + "kind": ".", + "at": 22738, + "from_row": 743, + "to_row": 743 + }, + "kind": "!=", + "at": 22744, + "from_row": 743, + "to_row": 743 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 59, + "statements": [ + { + "to_row": 745, + "from_column": 8, + "to_column": 13, + "kind": "call", + "at": 22851, + "from_row": 745, + "expression": { + "to_column": 13, + "from_column": 10, + "right": { + "to_row": 745, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 22855, + "from_row": 745, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 25, + "name": "i", + "kind": "name", + "at": 22851, + "from_row": 745, + "to_row": 745 + }, + "kind": "assign", + "at": 22853, + "from_row": 745, + "to_row": 745 + } + }, + { + "to_row": 749, + "from_column": 8, + "to_column": 9, + "statements": [ + { + "to_column": 9, + "from_column": 38, + "statements": [ + { + "to_row": 747, + "from_column": 10, + "to_column": 41, + "kind": "call", + "at": 22907, + "from_row": 747, + "expression": { + "list": [ + { + "to_column": 40, + "from_column": 37, + "right": { + "to_column": 39, + "from_column": 38, + "level": 0, + "function_nr": 25, + "name": "i", + "kind": "name", + "at": 22935, + "from_row": 747, + "to_row": 747 + }, + "left": { + "to_column": 37, + "from_column": 32, + "right": "list", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22925, + "from_row": 747, + "to_row": 747 + }, + "kind": ".", + "at": 22929, + "from_row": 747, + "to_row": 747 + }, + "kind": "[", + "at": 22934, + "from_row": 747, + "to_row": 747 + } + ], + "from_column": 27, + "to_row": 747, + "to_column": 41, + "kind": "(", + "at": 22924, + "from_row": 747, + "expression": { + "to_column": 27, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 22907, + "from_row": 747, + "to_row": 747 + } + } + }, + { + "to_row": 748, + "from_column": 10, + "to_column": 19, + "kind": "call", + "at": 22949, + "from_row": 748, + "expression": { + "to_column": 19, + "from_column": 12, + "right": { + "to_column": 19, + "from_column": 16, + "right": { + "to_row": 748, + "from_column": 18, + "number": 1, + "to_column": 19, + "kind": "number", + "at": 22957, + "from_row": 748, + "value": "1" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 25, + "name": "i", + "kind": "name", + "at": 22953, + "from_row": 748, + "to_row": 748 + }, + "kind": "+", + "at": 22955, + "from_row": 748, + "to_row": 748 + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 25, + "name": "i", + "kind": "name", + "at": 22949, + "from_row": 748, + "to_row": 748 + }, + "kind": "assign", + "at": 22951, + "from_row": 748, + "to_row": 748 + } + } + ], + "kind": "block", + "at": 22895, + "from_row": 746, + "to_row": 749 + } + ], + "kind": "while", + "at": 22865, + "from_row": 746, + "expression": { + "to_column": 36, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 35, + "from_column": 30, + "right": "list", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 22883, + "from_row": 746, + "to_row": 746 + }, + "kind": ".", + "at": 22887, + "from_row": 746, + "to_row": 746 + } + ], + "from_column": 25, + "to_row": 746, + "to_column": 36, + "kind": "(", + "at": 22882, + "from_row": 746, + "expression": { + "to_column": 25, + "from_column": 19, + "level": -1, + "name": "length", + "kind": "name", + "at": 22876, + "from_row": 746, + "to_row": 746 + } + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 25, + "name": "i", + "kind": "name", + "at": 22872, + "from_row": 746, + "to_row": 746 + }, + "kind": "<", + "at": 22874, + "from_row": 746, + "to_row": 746 + } + } + ], + "kind": "block", + "at": 22841, + "from_row": 744, + "to_row": 750 + } + ], + "from_column": 6, + "list": [], + "to_row": 750, + "to_column": 7, + "kind": "if", + "at": 22788, + "from_row": 744, + "expression": { + "to_column": 57, + "from_column": 35, + "right": { + "to_column": 57, + "from_column": 40, + "right": { + "to_row": 744, + "from_column": 43, + "to_column": 57, + "kind": "text", + "at": 22825, + "from_row": 744, + "value": "text literal" + }, + "left": { + "to_column": 39, + "from_column": 38, + "level": 0, + "function_nr": 25, + "name": "k", + "kind": "name", + "at": 22820, + "from_row": 744, + "to_row": 744 + }, + "kind": "==", + "at": 22822, + "from_row": 744, + "to_row": 744 + }, + "left": { + "to_column": 34, + "from_column": 19, + "right": { + "to_column": 34, + "from_column": 24, + "right": { + "to_row": 744, + "from_column": 27, + "to_column": 34, + "kind": "text", + "at": 22809, + "from_row": 744, + "value": "array" + }, + "left": { + "to_column": 23, + "from_column": 22, + "level": 0, + "function_nr": 25, + "name": "k", + "kind": "name", + "at": 22804, + "from_row": 744, + "to_row": 744 + }, + "kind": "==", + "at": 22806, + "from_row": 744, + "to_row": 744 + }, + "left": { + "to_column": 18, + "from_column": 12, + "right": { + "to_row": 744, + "from_column": 15, + "to_column": 18, + "kind": "text", + "at": 22797, + "from_row": 744, + "value": "(" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 25, + "name": "k", + "kind": "name", + "at": 22792, + "from_row": 744, + "to_row": 744 + }, + "kind": "==", + "at": 22794, + "from_row": 744, + "to_row": 744 + }, + "kind": "||", + "at": 22801, + "from_row": 744, + "to_row": 744 + }, + "kind": "||", + "at": 22817, + "from_row": 744, + "to_row": 744 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 25, + "statements": [ + { + "to_row": 752, + "from_column": 8, + "to_column": 13, + "kind": "call", + "at": 23012, + "from_row": 752, + "expression": { + "to_column": 13, + "from_column": 10, + "right": { + "to_row": 752, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 23016, + "from_row": 752, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 25, + "name": "i", + "kind": "name", + "at": 23012, + "from_row": 752, + "to_row": 752 + }, + "kind": "assign", + "at": 23014, + "from_row": 752, + "to_row": 752 + } + }, + { + "to_row": 756, + "from_column": 8, + "to_column": 9, + "statements": [ + { + "to_column": 9, + "from_column": 38, + "statements": [ + { + "to_row": 754, + "from_column": 10, + "to_column": 47, + "kind": "call", + "at": 23068, + "from_row": 754, + "expression": { + "list": [ + { + "to_column": 46, + "from_column": 40, + "right": "right", + "left": { + "to_column": 40, + "from_column": 37, + "right": { + "to_column": 39, + "from_column": 38, + "level": 0, + "function_nr": 25, + "name": "i", + "kind": "name", + "at": 23096, + "from_row": 754, + "to_row": 754 + }, + "left": { + "to_column": 37, + "from_column": 32, + "right": "list", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 23086, + "from_row": 754, + "to_row": 754 + }, + "kind": ".", + "at": 23090, + "from_row": 754, + "to_row": 754 + }, + "kind": "[", + "at": 23095, + "from_row": 754, + "to_row": 754 + }, + "kind": ".", + "at": 23098, + "from_row": 754, + "to_row": 754 + } + ], + "from_column": 27, + "to_row": 754, + "to_column": 47, + "kind": "(", + "at": 23085, + "from_row": 754, + "expression": { + "to_column": 27, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 23068, + "from_row": 754, + "to_row": 754 + } + } + }, + { + "to_row": 755, + "from_column": 10, + "to_column": 19, + "kind": "call", + "at": 23116, + "from_row": 755, + "expression": { + "to_column": 19, + "from_column": 12, + "right": { + "to_column": 19, + "from_column": 16, + "right": { + "to_row": 755, + "from_column": 18, + "number": 1, + "to_column": 19, + "kind": "number", + "at": 23124, + "from_row": 755, + "value": "1" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 25, + "name": "i", + "kind": "name", + "at": 23120, + "from_row": 755, + "to_row": 755 + }, + "kind": "+", + "at": 23122, + "from_row": 755, + "to_row": 755 + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 25, + "name": "i", + "kind": "name", + "at": 23116, + "from_row": 755, + "to_row": 755 + }, + "kind": "assign", + "at": 23118, + "from_row": 755, + "to_row": 755 + } + } + ], + "kind": "block", + "at": 23056, + "from_row": 753, + "to_row": 756 + } + ], + "kind": "while", + "at": 23026, + "from_row": 753, + "expression": { + "to_column": 36, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 35, + "from_column": 30, + "right": "list", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 25, + "name": "expr", + "kind": "name", + "at": 23044, + "from_row": 753, + "to_row": 753 + }, + "kind": ".", + "at": 23048, + "from_row": 753, + "to_row": 753 + } + ], + "from_column": 25, + "to_row": 753, + "to_column": 36, + "kind": "(", + "at": 23043, + "from_row": 753, + "expression": { + "to_column": 25, + "from_column": 19, + "level": -1, + "name": "length", + "kind": "name", + "at": 23037, + "from_row": 753, + "to_row": 753 + } + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 25, + "name": "i", + "kind": "name", + "at": 23033, + "from_row": 753, + "to_row": 753 + }, + "kind": "<", + "at": 23035, + "from_row": 753, + "to_row": 753 + } + } + ], + "kind": "block", + "at": 23002, + "from_row": 751, + "to_row": 757 + } + ], + "from_column": 6, + "list": [], + "to_row": 757, + "to_column": 7, + "kind": "if", + "at": 22983, + "from_row": 751, + "expression": { + "to_column": 23, + "from_column": 12, + "right": { + "to_row": 751, + "from_column": 15, + "to_column": 23, + "kind": "text", + "at": 22992, + "from_row": 751, + "value": "record" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 25, + "name": "k", + "kind": "name", + "at": 22987, + "from_row": 751, + "to_row": 751 + }, + "kind": "==", + "at": 22989, + "from_row": 751, + "to_row": 751 + } + } + ], + "to_column": 5, + "kind": "function", + "at": 22210, + "to_row": 758, + "outer": 29, + "list": [ + { + "to_column": 37, + "from_column": 33, + "name": "expr", + "kind": "name", + "at": 22219, + "from_row": 729, + "to_row": 729 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 25, + "from_row": 729 + }, + "left": { + "to_column": 21, + "from_column": 4, + "level": 0, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 22190, + "from_row": 729, + "to_row": 729 + }, + "kind": "assign", + "at": 22208, + "from_row": 729, + "to_row": 758 + } + }, + { + "to_row": 811, + "from_column": 4, + "to_column": 5, + "kind": "call", + "at": 23155, + "from_row": 760, + "expression": { + "to_column": 5, + "from_column": 23, + "right": { + "from_column": 25, + "nr_slots": 5, + "statements": [ + { + "then": [ + { + "to_row": 761, + "from_column": 25, + "to_column": 36, + "kind": "return", + "at": 23219, + "from_row": 761, + "expression": { + "to_column": 36, + "from_column": 32, + "kind": "null", + "at": 23226, + "from_row": 761, + "to_row": 761 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 761, + "to_column": 36, + "kind": "if", + "at": 23200, + "from_row": 761, + "expression": { + "to_column": 23, + "from_column": 16, + "right": { + "to_column": 23, + "from_column": 19, + "kind": "null", + "at": 23213, + "from_row": 761, + "to_row": 761 + }, + "left": { + "to_column": 15, + "from_column": 10, + "level": 0, + "function_nr": 26, + "name": "stmts", + "kind": "name", + "at": 23204, + "from_row": 761, + "to_row": 761 + }, + "kind": "==", + "at": 23210, + "from_row": 761, + "to_row": 761 + } + }, + { + "to_column": 15, + "from_column": 6, + "right": { + "to_row": 762, + "from_column": 14, + "number": 0, + "to_column": 15, + "kind": "number", + "at": 23245, + "from_row": 762, + "value": "0" + }, + "left": { + "to_column": 11, + "from_column": 10, + "name": "i", + "kind": "name", + "at": 23241, + "from_row": 762, + "to_row": 762 + }, + "kind": "var", + "at": 23237, + "from_row": 762, + "to_row": 762 + }, + { + "to_column": 15, + "from_column": 6, + "right": { + "to_row": 763, + "from_column": 14, + "number": 0, + "to_column": 15, + "kind": "number", + "at": 23261, + "from_row": 763, + "value": "0" + }, + "left": { + "to_column": 11, + "from_column": 10, + "name": "j", + "kind": "name", + "at": 23257, + "from_row": 763, + "to_row": 763 + }, + "kind": "var", + "at": 23253, + "from_row": 763, + "to_row": 763 + }, + { + "to_column": 21, + "from_column": 6, + "right": { + "to_column": 21, + "from_column": 17, + "kind": "null", + "at": 23280, + "from_row": 764, + "to_row": 764 + }, + "left": { + "to_column": 14, + "from_column": 10, + "name": "stmt", + "kind": "name", + "at": 23273, + "from_row": 764, + "to_row": 764 + }, + "kind": "var", + "at": 23269, + "from_row": 764, + "to_row": 764 + }, + { + "to_column": 18, + "from_column": 6, + "right": { + "to_column": 18, + "from_column": 14, + "kind": "null", + "at": 23299, + "from_row": 765, + "to_row": 765 + }, + "left": { + "to_column": 11, + "from_column": 10, + "name": "k", + "kind": "name", + "at": 23295, + "from_row": 765, + "to_row": 765 + }, + "kind": "var", + "at": 23291, + "from_row": 765, + "to_row": 765 + }, + { + "to_row": 810, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 32, + "statements": [ + { + "to_row": 767, + "from_column": 8, + "to_column": 23, + "kind": "call", + "at": 23346, + "from_row": 767, + "expression": { + "to_column": 23, + "from_column": 13, + "right": { + "to_column": 23, + "from_column": 20, + "right": { + "to_column": 22, + "from_column": 21, + "level": 0, + "function_nr": 26, + "name": "i", + "kind": "name", + "at": 23359, + "from_row": 767, + "to_row": 767 + }, + "left": { + "to_column": 20, + "from_column": 15, + "level": 0, + "function_nr": 26, + "name": "stmts", + "kind": "name", + "at": 23353, + "from_row": 767, + "to_row": 767 + }, + "kind": "[", + "at": 23358, + "from_row": 767, + "to_row": 767 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 23346, + "from_row": 767, + "to_row": 767 + }, + "kind": "assign", + "at": 23351, + "from_row": 767, + "to_row": 767 + } + }, + { + "to_row": 768, + "from_column": 8, + "to_column": 21, + "kind": "call", + "at": 23370, + "from_row": 768, + "expression": { + "to_column": 21, + "from_column": 10, + "right": { + "to_column": 21, + "from_column": 16, + "right": "kind", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 23374, + "from_row": 768, + "to_row": 768 + }, + "kind": ".", + "at": 23378, + "from_row": 768, + "to_row": 768 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 23370, + "from_row": 768, + "to_row": 768 + }, + "kind": "assign", + "at": 23372, + "from_row": 768, + "to_row": 768 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 29, + "statements": [ + { + "to_row": 770, + "from_column": 10, + "to_column": 31, + "kind": "call", + "at": 23425, + "from_row": 770, + "expression": { + "list": [ + { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 23441, + "from_row": 770, + "to_row": 770 + } + ], + "from_column": 25, + "to_row": 770, + "to_column": 31, + "kind": "(", + "at": 23440, + "from_row": 770, + "expression": { + "to_column": 25, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "update_fn_slots", + "kind": "name", + "at": 23425, + "from_row": 770, + "to_row": 770 + } + } + }, + { + "to_row": 771, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 23457, + "from_row": 771, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "statements", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 23476, + "from_row": 771, + "to_row": 771 + }, + "kind": ".", + "at": 23480, + "from_row": 771, + "to_row": 771 + } + ], + "from_column": 28, + "to_row": 771, + "to_column": 45, + "kind": "(", + "at": 23475, + "from_row": 771, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 23457, + "from_row": 771, + "to_row": 771 + } + } + }, + { + "to_row": 772, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 23503, + "from_row": 772, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "disruption", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 23522, + "from_row": 772, + "to_row": 772 + }, + "kind": ".", + "at": 23526, + "from_row": 772, + "to_row": 772 + } + ], + "from_column": 28, + "to_row": 772, + "to_column": 45, + "kind": "(", + "at": 23521, + "from_row": 772, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 23503, + "from_row": 772, + "to_row": 772 + } + } + } + ], + "kind": "block", + "at": 23413, + "from_row": 769, + "to_row": 773 + } + ], + "from_column": 8, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 45, + "statements": [ + { + "to_row": 774, + "from_column": 10, + "to_column": 39, + "kind": "call", + "at": 23596, + "from_row": 774, + "expression": { + "list": [ + { + "to_column": 38, + "from_column": 32, + "right": "right", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 23614, + "from_row": 774, + "to_row": 774 + }, + "kind": ".", + "at": 23618, + "from_row": 774, + "to_row": 774 + } + ], + "from_column": 27, + "to_row": 774, + "to_column": 39, + "kind": "(", + "at": 23613, + "from_row": 774, + "expression": { + "to_column": 27, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 23596, + "from_row": 774, + "to_row": 774 + } + } + } + ], + "kind": "block", + "at": 23584, + "from_row": 773, + "to_row": 775 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 36, + "statements": [ + { + "to_row": 776, + "from_column": 10, + "to_column": 15, + "kind": "call", + "at": 23674, + "from_row": 776, + "expression": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 776, + "from_column": 14, + "number": 0, + "to_column": 15, + "kind": "number", + "at": 23678, + "from_row": 776, + "value": "0" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 26, + "name": "j", + "kind": "name", + "at": 23674, + "from_row": 776, + "to_row": 776 + }, + "kind": "assign", + "at": 23676, + "from_row": 776, + "to_row": 776 + } + }, + { + "to_row": 780, + "from_column": 10, + "to_column": 11, + "statements": [ + { + "to_column": 11, + "from_column": 40, + "statements": [ + { + "to_row": 778, + "from_column": 12, + "to_column": 49, + "kind": "call", + "at": 23734, + "from_row": 778, + "expression": { + "list": [ + { + "to_column": 48, + "from_column": 42, + "right": "right", + "left": { + "to_column": 42, + "from_column": 39, + "right": { + "to_column": 41, + "from_column": 40, + "level": 0, + "function_nr": 26, + "name": "j", + "kind": "name", + "at": 23762, + "from_row": 778, + "to_row": 778 + }, + "left": { + "to_column": 39, + "from_column": 34, + "right": "list", + "left": { + "to_column": 34, + "from_column": 30, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 23752, + "from_row": 778, + "to_row": 778 + }, + "kind": ".", + "at": 23756, + "from_row": 778, + "to_row": 778 + }, + "kind": "[", + "at": 23761, + "from_row": 778, + "to_row": 778 + }, + "kind": ".", + "at": 23764, + "from_row": 778, + "to_row": 778 + } + ], + "from_column": 29, + "to_row": 778, + "to_column": 49, + "kind": "(", + "at": 23751, + "from_row": 778, + "expression": { + "to_column": 29, + "from_column": 12, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 23734, + "from_row": 778, + "to_row": 778 + } + } + }, + { + "to_row": 779, + "from_column": 12, + "to_column": 21, + "kind": "call", + "at": 23784, + "from_row": 779, + "expression": { + "to_column": 21, + "from_column": 14, + "right": { + "to_column": 21, + "from_column": 18, + "right": { + "to_row": 779, + "from_column": 20, + "number": 1, + "to_column": 21, + "kind": "number", + "at": 23792, + "from_row": 779, + "value": "1" + }, + "left": { + "to_column": 17, + "from_column": 16, + "level": 0, + "function_nr": 26, + "name": "j", + "kind": "name", + "at": 23788, + "from_row": 779, + "to_row": 779 + }, + "kind": "+", + "at": 23790, + "from_row": 779, + "to_row": 779 + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 26, + "name": "j", + "kind": "name", + "at": 23784, + "from_row": 779, + "to_row": 779 + }, + "kind": "assign", + "at": 23786, + "from_row": 779, + "to_row": 779 + } + } + ], + "kind": "block", + "at": 23720, + "from_row": 777, + "to_row": 780 + } + ], + "kind": "while", + "at": 23690, + "from_row": 777, + "expression": { + "to_column": 38, + "from_column": 19, + "right": { + "list": [ + { + "to_column": 37, + "from_column": 32, + "right": "list", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 23708, + "from_row": 777, + "to_row": 777 + }, + "kind": ".", + "at": 23712, + "from_row": 777, + "to_row": 777 + } + ], + "from_column": 27, + "to_row": 777, + "to_column": 38, + "kind": "(", + "at": 23707, + "from_row": 777, + "expression": { + "to_column": 27, + "from_column": 21, + "level": -1, + "name": "length", + "kind": "name", + "at": 23701, + "from_row": 777, + "to_row": 777 + } + }, + "left": { + "to_column": 18, + "from_column": 17, + "level": 0, + "function_nr": 26, + "name": "j", + "kind": "name", + "at": 23697, + "from_row": 777, + "to_row": 777 + }, + "kind": "<", + "at": 23699, + "from_row": 777, + "to_row": 777 + } + } + ], + "kind": "block", + "at": 23662, + "from_row": 775, + "to_row": 781 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 32, + "statements": [ + { + "to_row": 782, + "from_column": 10, + "to_column": 44, + "kind": "call", + "at": 23850, + "from_row": 782, + "expression": { + "list": [ + { + "to_column": 43, + "from_column": 32, + "right": "expression", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 23868, + "from_row": 782, + "to_row": 782 + }, + "kind": ".", + "at": 23872, + "from_row": 782, + "to_row": 782 + } + ], + "from_column": 27, + "to_row": 782, + "to_column": 44, + "kind": "(", + "at": 23867, + "from_row": 782, + "expression": { + "to_column": 27, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 23850, + "from_row": 782, + "to_row": 782 + } + } + } + ], + "kind": "block", + "at": 23838, + "from_row": 781, + "to_row": 783 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 30, + "statements": [ + { + "to_row": 784, + "from_column": 10, + "to_column": 44, + "kind": "call", + "at": 23927, + "from_row": 784, + "expression": { + "list": [ + { + "to_column": 43, + "from_column": 32, + "right": "expression", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 23945, + "from_row": 784, + "to_row": 784 + }, + "kind": ".", + "at": 23949, + "from_row": 784, + "to_row": 784 + } + ], + "from_column": 27, + "to_row": 784, + "to_column": 44, + "kind": "(", + "at": 23944, + "from_row": 784, + "expression": { + "to_column": 27, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 23927, + "from_row": 784, + "to_row": 784 + } + } + }, + { + "to_row": 785, + "from_column": 10, + "to_column": 39, + "kind": "call", + "at": 23972, + "from_row": 785, + "expression": { + "list": [ + { + "to_column": 38, + "from_column": 33, + "right": "then", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 23991, + "from_row": 785, + "to_row": 785 + }, + "kind": ".", + "at": 23995, + "from_row": 785, + "to_row": 785 + } + ], + "from_column": 28, + "to_row": 785, + "to_column": 39, + "kind": "(", + "at": 23990, + "from_row": 785, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 23972, + "from_row": 785, + "to_row": 785 + } + } + }, + { + "to_row": 786, + "from_column": 10, + "to_column": 39, + "kind": "call", + "at": 24012, + "from_row": 786, + "expression": { + "list": [ + { + "to_column": 38, + "from_column": 33, + "right": "list", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24031, + "from_row": 786, + "to_row": 786 + }, + "kind": ".", + "at": 24035, + "from_row": 786, + "to_row": 786 + } + ], + "from_column": 28, + "to_row": 786, + "to_column": 39, + "kind": "(", + "at": 24030, + "from_row": 786, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 24012, + "from_row": 786, + "to_row": 786 + } + } + }, + { + "then": [ + { + "to_row": 787, + "from_column": 33, + "to_column": 62, + "kind": "call", + "at": 24075, + "from_row": 787, + "expression": { + "list": [ + { + "to_column": 61, + "from_column": 56, + "right": "else", + "left": { + "to_column": 56, + "from_column": 52, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24094, + "from_row": 787, + "to_row": 787 + }, + "kind": ".", + "at": 24098, + "from_row": 787, + "to_row": 787 + } + ], + "from_column": 51, + "to_row": 787, + "to_column": 62, + "kind": "(", + "at": 24093, + "from_row": 787, + "expression": { + "to_column": 51, + "from_column": 33, + "level": 1, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 24075, + "from_row": 787, + "to_row": 787 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 787, + "to_column": 62, + "kind": "if", + "at": 24052, + "from_row": 787, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 24069, + "from_row": 787, + "to_row": 787 + }, + "left": { + "to_column": 23, + "from_column": 18, + "right": "else", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24056, + "from_row": 787, + "to_row": 787 + }, + "kind": ".", + "at": 24060, + "from_row": 787, + "to_row": 787 + }, + "kind": "!=", + "at": 24066, + "from_row": 787, + "to_row": 787 + } + } + ], + "kind": "block", + "at": 23915, + "from_row": 783, + "to_row": 788 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 46, + "statements": [ + { + "to_row": 789, + "from_column": 10, + "to_column": 44, + "kind": "call", + "at": 24163, + "from_row": 789, + "expression": { + "list": [ + { + "to_column": 43, + "from_column": 32, + "right": "expression", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24181, + "from_row": 789, + "to_row": 789 + }, + "kind": ".", + "at": 24185, + "from_row": 789, + "to_row": 789 + } + ], + "from_column": 27, + "to_row": 789, + "to_column": 44, + "kind": "(", + "at": 24180, + "from_row": 789, + "expression": { + "to_column": 27, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 24163, + "from_row": 789, + "to_row": 789 + } + } + }, + { + "to_row": 790, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 24208, + "from_row": 790, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "statements", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24227, + "from_row": 790, + "to_row": 790 + }, + "kind": ".", + "at": 24231, + "from_row": 790, + "to_row": 790 + } + ], + "from_column": 28, + "to_row": 790, + "to_column": 45, + "kind": "(", + "at": 24226, + "from_row": 790, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 24208, + "from_row": 790, + "to_row": 790 + } + } + } + ], + "kind": "block", + "at": 24151, + "from_row": 788, + "to_row": 791 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 31, + "statements": [ + { + "then": [ + { + "to_column": 11, + "from_column": 33, + "statements": [ + { + "then": [ + { + "to_column": 13, + "from_column": 68, + "statements": [ + { + "to_row": 794, + "from_column": 14, + "to_column": 48, + "kind": "call", + "at": 24396, + "from_row": 794, + "expression": { + "list": [ + { + "to_column": 47, + "from_column": 41, + "right": "right", + "left": { + "to_column": 41, + "from_column": 36, + "right": "init", + "left": { + "to_column": 36, + "from_column": 32, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24414, + "from_row": 794, + "to_row": 794 + }, + "kind": ".", + "at": 24418, + "from_row": 794, + "to_row": 794 + }, + "kind": ".", + "at": 24423, + "from_row": 794, + "to_row": 794 + } + ], + "from_column": 31, + "to_row": 794, + "to_column": 48, + "kind": "(", + "at": 24413, + "from_row": 794, + "expression": { + "to_column": 31, + "from_column": 14, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 24396, + "from_row": 794, + "to_row": 794 + } + } + } + ], + "kind": "block", + "at": 24380, + "from_row": 793, + "to_row": 795 + } + ], + "from_column": 12, + "list": [], + "else": [ + { + "to_column": 13, + "from_column": 19, + "statements": [ + { + "to_row": 796, + "from_column": 14, + "to_column": 42, + "kind": "call", + "at": 24466, + "from_row": 796, + "expression": { + "list": [ + { + "to_column": 41, + "from_column": 36, + "right": "init", + "left": { + "to_column": 36, + "from_column": 32, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24484, + "from_row": 796, + "to_row": 796 + }, + "kind": ".", + "at": 24488, + "from_row": 796, + "to_row": 796 + } + ], + "from_column": 31, + "to_row": 796, + "to_column": 42, + "kind": "(", + "at": 24483, + "from_row": 796, + "expression": { + "to_column": 31, + "from_column": 14, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 24466, + "from_row": 796, + "to_row": 796 + } + } + } + ], + "kind": "block", + "at": 24450, + "from_row": 795, + "to_row": 797 + } + ], + "to_row": 797, + "to_column": 13, + "kind": "if", + "at": 24324, + "from_row": 793, + "expression": { + "to_column": 66, + "from_column": 40, + "right": { + "to_column": 66, + "from_column": 58, + "right": { + "to_row": 793, + "from_column": 61, + "to_column": 66, + "kind": "text", + "at": 24373, + "from_row": 793, + "value": "def" + }, + "left": { + "to_column": 57, + "from_column": 52, + "right": "kind", + "left": { + "to_column": 52, + "from_column": 47, + "right": "init", + "left": { + "to_column": 47, + "from_column": 43, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24355, + "from_row": 793, + "to_row": 793 + }, + "kind": ".", + "at": 24359, + "from_row": 793, + "to_row": 793 + }, + "kind": ".", + "at": 24364, + "from_row": 793, + "to_row": 793 + }, + "kind": "==", + "at": 24370, + "from_row": 793, + "to_row": 793 + }, + "left": { + "to_column": 39, + "from_column": 31, + "right": { + "to_row": 793, + "from_column": 34, + "to_column": 39, + "kind": "text", + "at": 24346, + "from_row": 793, + "value": "var" + }, + "left": { + "to_column": 30, + "from_column": 25, + "right": "kind", + "left": { + "to_column": 25, + "from_column": 20, + "right": "init", + "left": { + "to_column": 20, + "from_column": 16, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24328, + "from_row": 793, + "to_row": 793 + }, + "kind": ".", + "at": 24332, + "from_row": 793, + "to_row": 793 + }, + "kind": ".", + "at": 24337, + "from_row": 793, + "to_row": 793 + }, + "kind": "==", + "at": 24343, + "from_row": 793, + "to_row": 793 + }, + "kind": "||", + "at": 24352, + "from_row": 793, + "to_row": 793 + } + } + ], + "kind": "block", + "at": 24310, + "from_row": 792, + "to_row": 798 + } + ], + "from_column": 10, + "list": [], + "to_row": 798, + "to_column": 11, + "kind": "if", + "at": 24287, + "from_row": 792, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 24304, + "from_row": 792, + "to_row": 792 + }, + "left": { + "to_column": 23, + "from_column": 18, + "right": "init", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24291, + "from_row": 792, + "to_row": 792 + }, + "kind": ".", + "at": 24295, + "from_row": 792, + "to_row": 792 + }, + "kind": "!=", + "at": 24301, + "from_row": 792, + "to_row": 792 + } + }, + { + "to_row": 799, + "from_column": 10, + "to_column": 38, + "kind": "call", + "at": 24531, + "from_row": 799, + "expression": { + "list": [ + { + "to_column": 37, + "from_column": 32, + "right": "test", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24549, + "from_row": 799, + "to_row": 799 + }, + "kind": ".", + "at": 24553, + "from_row": 799, + "to_row": 799 + } + ], + "from_column": 27, + "to_row": 799, + "to_column": 38, + "kind": "(", + "at": 24548, + "from_row": 799, + "expression": { + "to_column": 27, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 24531, + "from_row": 799, + "to_row": 799 + } + } + }, + { + "to_row": 800, + "from_column": 10, + "to_column": 40, + "kind": "call", + "at": 24570, + "from_row": 800, + "expression": { + "list": [ + { + "to_column": 39, + "from_column": 32, + "right": "update", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24588, + "from_row": 800, + "to_row": 800 + }, + "kind": ".", + "at": 24592, + "from_row": 800, + "to_row": 800 + } + ], + "from_column": 27, + "to_row": 800, + "to_column": 40, + "kind": "(", + "at": 24587, + "from_row": 800, + "expression": { + "to_column": 27, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 24570, + "from_row": 800, + "to_row": 800 + } + } + }, + { + "to_row": 801, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 24611, + "from_row": 801, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "statements", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24630, + "from_row": 801, + "to_row": 801 + }, + "kind": ".", + "at": 24634, + "from_row": 801, + "to_row": 801 + } + ], + "from_column": 28, + "to_row": 801, + "to_column": 45, + "kind": "(", + "at": 24629, + "from_row": 801, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 24611, + "from_row": 801, + "to_row": 801 + } + } + } + ], + "kind": "block", + "at": 24275, + "from_row": 791, + "to_row": 802 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 47, + "statements": [ + { + "to_row": 803, + "from_column": 10, + "to_column": 44, + "kind": "call", + "at": 24706, + "from_row": 803, + "expression": { + "list": [ + { + "to_column": 43, + "from_column": 32, + "right": "expression", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24724, + "from_row": 803, + "to_row": 803 + }, + "kind": ".", + "at": 24728, + "from_row": 803, + "to_row": 803 + } + ], + "from_column": 27, + "to_row": 803, + "to_column": 44, + "kind": "(", + "at": 24723, + "from_row": 803, + "expression": { + "to_column": 27, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_expr_for_fns", + "kind": "name", + "at": 24706, + "from_row": 803, + "to_row": 803 + } + } + } + ], + "kind": "block", + "at": 24694, + "from_row": 802, + "to_row": 804 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 33, + "statements": [ + { + "to_row": 805, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 24786, + "from_row": 805, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "statements", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24805, + "from_row": 805, + "to_row": 805 + }, + "kind": ".", + "at": 24809, + "from_row": 805, + "to_row": 805 + } + ], + "from_column": 28, + "to_row": 805, + "to_column": 45, + "kind": "(", + "at": 24804, + "from_row": 805, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 24786, + "from_row": 805, + "to_row": 805 + } + } + } + ], + "kind": "block", + "at": 24774, + "from_row": 804, + "to_row": 806 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 33, + "statements": [ + { + "then": [ + { + "to_row": 807, + "from_column": 38, + "to_column": 74, + "kind": "call", + "at": 24895, + "from_row": 807, + "expression": { + "list": [ + { + "list": [ + { + "to_column": 72, + "from_column": 62, + "right": "statement", + "left": { + "to_column": 62, + "from_column": 58, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24915, + "from_row": 807, + "to_row": 807 + }, + "kind": ".", + "at": 24919, + "from_row": 807, + "to_row": 807 + } + ], + "from_column": 57, + "to_column": 72, + "kind": "array", + "at": 24914, + "from_row": 807, + "to_row": 807 + } + ], + "from_column": 56, + "to_row": 807, + "to_column": 74, + "kind": "(", + "at": 24913, + "from_row": 807, + "expression": { + "to_column": 56, + "from_column": 38, + "level": 1, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 24895, + "from_row": 807, + "to_row": 807 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 807, + "to_column": 74, + "kind": "if", + "at": 24867, + "from_row": 807, + "expression": { + "to_column": 36, + "from_column": 29, + "right": { + "to_column": 36, + "from_column": 32, + "kind": "null", + "at": 24889, + "from_row": 807, + "to_row": 807 + }, + "left": { + "to_column": 28, + "from_column": 18, + "right": "statement", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 26, + "name": "stmt", + "kind": "name", + "at": 24871, + "from_row": 807, + "to_row": 807 + }, + "kind": ".", + "at": 24875, + "from_row": 807, + "to_row": 807 + }, + "kind": "!=", + "at": 24886, + "from_row": 807, + "to_row": 807 + } + } + ], + "kind": "block", + "at": 24855, + "from_row": 806, + "to_row": 808 + } + ], + "from_column": 15, + "list": [], + "to_row": 808, + "to_column": 9, + "kind": "if", + "at": 24837, + "from_row": 806, + "expression": { + "to_column": 31, + "from_column": 21, + "right": { + "to_row": 806, + "from_column": 24, + "to_column": 31, + "kind": "text", + "at": 24846, + "from_row": 806, + "value": "label" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 24841, + "from_row": 806, + "to_row": 806 + }, + "kind": "==", + "at": 24843, + "from_row": 806, + "to_row": 806 + } + } + ], + "to_row": 808, + "to_column": 9, + "kind": "if", + "at": 24756, + "from_row": 804, + "expression": { + "to_column": 31, + "from_column": 21, + "right": { + "to_row": 804, + "from_column": 24, + "to_column": 31, + "kind": "text", + "at": 24765, + "from_row": 804, + "value": "block" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 24760, + "from_row": 804, + "to_row": 804 + }, + "kind": "==", + "at": 24762, + "from_row": 804, + "to_row": 804 + } + } + ], + "to_row": 808, + "to_column": 9, + "kind": "if", + "at": 24662, + "from_row": 802, + "expression": { + "to_column": 45, + "from_column": 33, + "right": { + "to_column": 45, + "from_column": 38, + "right": { + "to_row": 802, + "from_column": 41, + "to_column": 45, + "kind": "text", + "at": 24688, + "from_row": 802, + "value": "go" + }, + "left": { + "to_column": 37, + "from_column": 36, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 24683, + "from_row": 802, + "to_row": 802 + }, + "kind": "==", + "at": 24685, + "from_row": 802, + "to_row": 802 + }, + "left": { + "to_column": 32, + "from_column": 21, + "right": { + "to_row": 802, + "from_column": 24, + "to_column": 32, + "kind": "text", + "at": 24671, + "from_row": 802, + "value": "return" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 24666, + "from_row": 802, + "to_row": 802 + }, + "kind": "==", + "at": 24668, + "from_row": 802, + "to_row": 802 + }, + "kind": "||", + "at": 24680, + "from_row": 802, + "to_row": 802 + } + } + ], + "to_row": 808, + "to_column": 9, + "kind": "if", + "at": 24259, + "from_row": 791, + "expression": { + "to_column": 29, + "from_column": 21, + "right": { + "to_row": 791, + "from_column": 24, + "to_column": 29, + "kind": "text", + "at": 24268, + "from_row": 791, + "value": "for" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 24263, + "from_row": 791, + "to_row": 791 + }, + "kind": "==", + "at": 24265, + "from_row": 791, + "to_row": 791 + } + } + ], + "to_row": 808, + "to_column": 9, + "kind": "if", + "at": 24120, + "from_row": 788, + "expression": { + "to_column": 44, + "from_column": 32, + "right": { + "to_column": 44, + "from_column": 37, + "right": { + "to_row": 788, + "from_column": 40, + "to_column": 44, + "kind": "text", + "at": 24145, + "from_row": 788, + "value": "do" + }, + "left": { + "to_column": 36, + "from_column": 35, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 24140, + "from_row": 788, + "to_row": 788 + }, + "kind": "==", + "at": 24142, + "from_row": 788, + "to_row": 788 + }, + "left": { + "to_column": 31, + "from_column": 21, + "right": { + "to_row": 788, + "from_column": 24, + "to_column": 31, + "kind": "text", + "at": 24129, + "from_row": 788, + "value": "while" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 24124, + "from_row": 788, + "to_row": 788 + }, + "kind": "==", + "at": 24126, + "from_row": 788, + "to_row": 788 + }, + "kind": "||", + "at": 24137, + "from_row": 788, + "to_row": 788 + } + } + ], + "to_row": 808, + "to_column": 9, + "kind": "if", + "at": 23900, + "from_row": 783, + "expression": { + "to_column": 28, + "from_column": 21, + "right": { + "to_row": 783, + "from_column": 24, + "to_column": 28, + "kind": "text", + "at": 23909, + "from_row": 783, + "value": "if" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 23904, + "from_row": 783, + "to_row": 783 + }, + "kind": "==", + "at": 23906, + "from_row": 783, + "to_row": 783 + } + } + ], + "to_row": 808, + "to_column": 9, + "kind": "if", + "at": 23821, + "from_row": 781, + "expression": { + "to_column": 30, + "from_column": 21, + "right": { + "to_row": 781, + "from_column": 24, + "to_column": 30, + "kind": "text", + "at": 23830, + "from_row": 781, + "value": "call" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 23825, + "from_row": 781, + "to_row": 781 + }, + "kind": "==", + "at": 23827, + "from_row": 781, + "to_row": 781 + } + } + ], + "to_row": 808, + "to_column": 9, + "kind": "if", + "at": 23641, + "from_row": 775, + "expression": { + "to_column": 34, + "from_column": 21, + "right": { + "to_row": 775, + "from_column": 24, + "to_column": 34, + "kind": "text", + "at": 23650, + "from_row": 775, + "value": "var_list" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 23645, + "from_row": 775, + "to_row": 775 + }, + "kind": "==", + "at": 23647, + "from_row": 775, + "to_row": 775 + } + } + ], + "to_row": 808, + "to_column": 9, + "kind": "if", + "at": 23554, + "from_row": 773, + "expression": { + "to_column": 43, + "from_column": 30, + "right": { + "to_column": 43, + "from_column": 35, + "right": { + "to_row": 773, + "from_column": 38, + "to_column": 43, + "kind": "text", + "at": 23577, + "from_row": 773, + "value": "def" + }, + "left": { + "to_column": 34, + "from_column": 33, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 23572, + "from_row": 773, + "to_row": 773 + }, + "kind": "==", + "at": 23574, + "from_row": 773, + "to_row": 773 + }, + "left": { + "to_column": 29, + "from_column": 21, + "right": { + "to_row": 773, + "from_column": 24, + "to_column": 29, + "kind": "text", + "at": 23563, + "from_row": 773, + "value": "var" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 23558, + "from_row": 773, + "to_row": 773 + }, + "kind": "==", + "at": 23560, + "from_row": 773, + "to_row": 773 + }, + "kind": "||", + "at": 23569, + "from_row": 773, + "to_row": 773 + } + } + ], + "to_row": 808, + "to_column": 9, + "kind": "if", + "at": 23392, + "from_row": 769, + "expression": { + "to_column": 27, + "from_column": 14, + "right": { + "to_row": 769, + "from_column": 17, + "to_column": 27, + "kind": "text", + "at": 23401, + "from_row": 769, + "value": "function" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 26, + "name": "k", + "kind": "name", + "at": 23396, + "from_row": 769, + "to_row": 769 + }, + "kind": "==", + "at": 23398, + "from_row": 769, + "to_row": 769 + } + }, + { + "to_row": 809, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 24950, + "from_row": 809, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 809, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 24958, + "from_row": 809, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 26, + "name": "i", + "kind": "name", + "at": 24954, + "from_row": 809, + "to_row": 809 + }, + "kind": "+", + "at": 24956, + "from_row": 809, + "to_row": 809 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 26, + "name": "i", + "kind": "name", + "at": 24950, + "from_row": 809, + "to_row": 809 + }, + "kind": "assign", + "at": 24952, + "from_row": 809, + "to_row": 809 + } + } + ], + "kind": "block", + "at": 23336, + "from_row": 766, + "to_row": 810 + } + ], + "kind": "while", + "at": 23310, + "from_row": 766, + "expression": { + "to_column": 30, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 29, + "from_column": 24, + "level": 0, + "function_nr": 26, + "name": "stmts", + "kind": "name", + "at": 23328, + "from_row": 766, + "to_row": 766 + } + ], + "from_column": 23, + "to_row": 766, + "to_column": 30, + "kind": "(", + "at": 23327, + "from_row": 766, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 23321, + "from_row": 766, + "to_row": 766 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 26, + "name": "i", + "kind": "name", + "at": 23317, + "from_row": 766, + "to_row": 766 + }, + "kind": "<", + "at": 23319, + "from_row": 766, + "to_row": 766 + } + } + ], + "to_column": 5, + "kind": "function", + "at": 23176, + "to_row": 811, + "outer": 29, + "list": [ + { + "to_column": 39, + "from_column": 34, + "name": "stmts", + "kind": "name", + "at": 23185, + "from_row": 760, + "to_row": 760 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 26, + "from_row": 760 + }, + "left": { + "to_column": 22, + "from_column": 4, + "level": 0, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 23155, + "from_row": 760, + "to_row": 760 + }, + "kind": "assign", + "at": 23174, + "from_row": 760, + "to_row": 811 + } + }, + { + "to_row": 813, + "from_column": 4, + "to_column": 38, + "kind": "call", + "at": 24979, + "from_row": 813, + "expression": { + "list": [ + { + "to_column": 37, + "from_column": 26, + "right": "statements", + "left": { + "to_column": 26, + "from_column": 23, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 24998, + "from_row": 813, + "to_row": 813 + }, + "kind": ".", + "at": 25001, + "from_row": 813, + "to_row": 813 + } + ], + "from_column": 22, + "to_row": 813, + "to_column": 38, + "kind": "(", + "at": 24997, + "from_row": 813, + "expression": { + "to_column": 22, + "from_column": 4, + "level": 0, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 24979, + "from_row": 813, + "to_row": 813 + } + } + }, + { + "to_row": 814, + "from_column": 4, + "to_column": 37, + "kind": "call", + "at": 25018, + "from_row": 814, + "expression": { + "list": [ + { + "to_column": 36, + "from_column": 26, + "right": "functions", + "left": { + "to_column": 26, + "from_column": 23, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 25037, + "from_row": 814, + "to_row": 814 + }, + "kind": ".", + "at": 25040, + "from_row": 814, + "to_row": 814 + } + ], + "from_column": 22, + "to_row": 814, + "to_column": 37, + "kind": "(", + "at": 25036, + "from_row": 814, + "expression": { + "to_column": 22, + "from_column": 4, + "level": 0, + "function_nr": 29, + "name": "walk_stmts_for_fns", + "kind": "name", + "at": 25018, + "from_row": 814, + "to_row": 814 + } + } + }, + { + "to_column": 28, + "from_column": 4, + "right": { + "list": [], + "from_column": 26, + "to_column": 27, + "kind": "record", + "at": 25137, + "from_row": 817, + "to_row": 817 + }, + "left": { + "to_column": 23, + "from_column": 8, + "name": "used_intrinsics", + "kind": "name", + "at": 25119, + "from_row": 817, + "to_row": 817 + }, + "kind": "var", + "at": 25115, + "from_row": 817, + "to_row": 817 + }, + { + "to_column": 33, + "from_column": 4, + "right": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 25169, + "from_row": 818, + "to_row": 818 + }, + "left": { + "to_column": 26, + "from_column": 8, + "name": "collect_intrinsics", + "kind": "name", + "at": 25148, + "from_row": 818, + "to_row": 818 + }, + "kind": "var", + "at": 25144, + "from_row": 818, + "to_row": 818 + }, + { + "to_column": 38, + "from_column": 4, + "right": { + "to_column": 38, + "from_column": 34, + "kind": "null", + "at": 25208, + "from_row": 819, + "to_row": 819 + }, + "left": { + "to_column": 31, + "from_column": 8, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 25182, + "from_row": 819, + "to_row": 819 + }, + "kind": "var", + "at": 25178, + "from_row": 819, + "to_row": 819 + }, + { + "to_row": 858, + "from_column": 4, + "to_column": 5, + "kind": "call", + "at": 25218, + "from_row": 821, + "expression": { + "to_column": 5, + "from_column": 28, + "right": { + "from_column": 30, + "nr_slots": 3, + "statements": [ + { + "then": [ + { + "to_row": 822, + "from_column": 24, + "to_column": 35, + "kind": "return", + "at": 25285, + "from_row": 822, + "expression": { + "to_column": 35, + "from_column": 31, + "kind": "null", + "at": 25292, + "from_row": 822, + "to_row": 822 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 822, + "to_column": 35, + "kind": "if", + "at": 25267, + "from_row": 822, + "expression": { + "to_column": 22, + "from_column": 15, + "right": { + "to_column": 22, + "from_column": 18, + "kind": "null", + "at": 25279, + "from_row": 822, + "to_row": 822 + }, + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25271, + "from_row": 822, + "to_row": 822 + }, + "kind": "==", + "at": 25276, + "from_row": 822, + "to_row": 822 + } + }, + { + "to_column": 23, + "from_column": 6, + "right": { + "to_column": 23, + "from_column": 18, + "right": "kind", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25311, + "from_row": 823, + "to_row": 823 + }, + "kind": ".", + "at": 25315, + "from_row": 823, + "to_row": 823 + }, + "left": { + "to_column": 11, + "from_column": 10, + "name": "k", + "kind": "name", + "at": 25307, + "from_row": 823, + "to_row": 823 + }, + "kind": "var", + "at": 25303, + "from_row": 823, + "to_row": 823 + }, + { + "to_column": 15, + "from_column": 6, + "right": { + "to_row": 824, + "from_column": 14, + "number": 0, + "to_column": 15, + "kind": "number", + "at": 25335, + "from_row": 824, + "value": "0" + }, + "left": { + "to_column": 11, + "from_column": 10, + "name": "i", + "kind": "name", + "at": 25331, + "from_row": 824, + "to_row": 824 + }, + "kind": "var", + "at": 25327, + "from_row": 824, + "to_row": 824 + }, + { + "then": [ + { + "to_column": 7, + "from_column": 91, + "statements": [ + { + "to_row": 826, + "from_column": 8, + "to_column": 41, + "kind": "call", + "at": 25438, + "from_row": 826, + "expression": { + "to_column": 41, + "from_column": 35, + "right": { + "to_column": 41, + "from_column": 37, + "kind": "true", + "at": 25467, + "from_row": 826, + "to_row": 826 + }, + "left": { + "to_column": 34, + "from_column": 23, + "right": { + "to_column": 33, + "from_column": 28, + "right": "name", + "left": { + "to_column": 28, + "from_column": 24, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25454, + "from_row": 826, + "to_row": 826 + }, + "kind": ".", + "at": 25458, + "from_row": 826, + "to_row": 826 + }, + "left": { + "to_column": 23, + "from_column": 8, + "level": 1, + "function_nr": 29, + "name": "used_intrinsics", + "kind": "name", + "at": 25438, + "from_row": 826, + "to_row": 826 + }, + "kind": "[", + "at": 25453, + "from_row": 826, + "to_row": 826 + }, + "kind": "assign", + "at": 25465, + "from_row": 826, + "to_row": 826 + } + } + ], + "kind": "block", + "at": 25428, + "from_row": 825, + "to_row": 827 + } + ], + "from_column": 6, + "list": [], + "to_row": 827, + "to_column": 7, + "kind": "if", + "at": 25343, + "from_row": 825, + "expression": { + "to_column": 89, + "from_column": 63, + "right": { + "to_column": 89, + "from_column": 76, + "right": { + "to_row": 825, + "from_column": 79, + "to_column": 89, + "kind": "text", + "at": 25416, + "from_row": 825, + "value": "functino" + }, + "left": { + "to_column": 75, + "from_column": 70, + "right": "make", + "left": { + "to_column": 70, + "from_column": 66, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25403, + "from_row": 825, + "to_row": 825 + }, + "kind": ".", + "at": 25407, + "from_row": 825, + "to_row": 825 + }, + "kind": "!=", + "at": 25413, + "from_row": 825, + "to_row": 825 + }, + "left": { + "to_column": 62, + "from_column": 42, + "right": { + "to_column": 62, + "from_column": 55, + "right": { + "to_column": 62, + "from_column": 58, + "kind": "null", + "at": 25395, + "from_row": 825, + "to_row": 825 + }, + "left": { + "to_column": 54, + "from_column": 49, + "right": "name", + "left": { + "to_column": 49, + "from_column": 45, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25382, + "from_row": 825, + "to_row": 825 + }, + "kind": ".", + "at": 25386, + "from_row": 825, + "to_row": 825 + }, + "kind": "!=", + "at": 25392, + "from_row": 825, + "to_row": 825 + }, + "left": { + "to_column": 41, + "from_column": 22, + "right": { + "to_column": 41, + "from_column": 36, + "right": { + "to_row": 825, + "from_column": 39, + "number": -1, + "to_column": 41, + "kind": "number", + "value": "-1", + "at": 25376, + "from_row": 825 + }, + "left": { + "to_column": 35, + "from_column": 29, + "right": "level", + "left": { + "to_column": 29, + "from_column": 25, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25362, + "from_row": 825, + "to_row": 825 + }, + "kind": ".", + "at": 25366, + "from_row": 825, + "to_row": 825 + }, + "kind": "==", + "at": 25373, + "from_row": 825, + "to_row": 825 + }, + "left": { + "to_column": 21, + "from_column": 12, + "right": { + "to_row": 825, + "from_column": 15, + "to_column": 21, + "kind": "text", + "at": 25352, + "from_row": 825, + "value": "name" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "k", + "kind": "name", + "at": 25347, + "from_row": 825, + "to_row": 825 + }, + "kind": "==", + "at": 25349, + "from_row": 825, + "to_row": 825 + }, + "kind": "&&", + "at": 25359, + "from_row": 825, + "to_row": 825 + }, + "kind": "&&", + "at": 25379, + "from_row": 825, + "to_row": 825 + }, + "kind": "&&", + "at": 25400, + "from_row": 825, + "to_row": 825 + } + }, + { + "then": [ + { + "to_row": 828, + "from_column": 29, + "to_column": 63, + "kind": "call", + "at": 25509, + "from_row": 828, + "expression": { + "list": [ + { + "to_column": 62, + "from_column": 57, + "right": "left", + "left": { + "to_column": 57, + "from_column": 53, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25533, + "from_row": 828, + "to_row": 828 + }, + "kind": ".", + "at": 25537, + "from_row": 828, + "to_row": 828 + } + ], + "from_column": 52, + "to_row": 828, + "to_column": 63, + "kind": "(", + "at": 25532, + "from_row": 828, + "expression": { + "to_column": 52, + "from_column": 29, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 25509, + "from_row": 828, + "to_row": 828 + } + } + } + ], + "from_column": 6, + "list": [], + "to_row": 828, + "to_column": 63, + "kind": "if", + "at": 25486, + "from_row": 828, + "expression": { + "to_column": 27, + "from_column": 20, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "null", + "at": 25503, + "from_row": 828, + "to_row": 828 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "left", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25490, + "from_row": 828, + "to_row": 828 + }, + "kind": ".", + "at": 25494, + "from_row": 828, + "to_row": 828 + }, + "kind": "!=", + "at": 25500, + "from_row": 828, + "to_row": 828 + } + }, + { + "then": [ + { + "to_row": 829, + "from_column": 30, + "to_column": 65, + "kind": "call", + "at": 25574, + "from_row": 829, + "expression": { + "list": [ + { + "to_column": 64, + "from_column": 58, + "right": "right", + "left": { + "to_column": 58, + "from_column": 54, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25598, + "from_row": 829, + "to_row": 829 + }, + "kind": ".", + "at": 25602, + "from_row": 829, + "to_row": 829 + } + ], + "from_column": 53, + "to_row": 829, + "to_column": 65, + "kind": "(", + "at": 25597, + "from_row": 829, + "expression": { + "to_column": 53, + "from_column": 30, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 25574, + "from_row": 829, + "to_row": 829 + } + } + } + ], + "from_column": 6, + "list": [], + "to_row": 829, + "to_column": 65, + "kind": "if", + "at": 25550, + "from_row": 829, + "expression": { + "to_column": 28, + "from_column": 21, + "right": { + "to_column": 28, + "from_column": 24, + "kind": "null", + "at": 25568, + "from_row": 829, + "to_row": 829 + }, + "left": { + "to_column": 20, + "from_column": 14, + "right": "right", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25554, + "from_row": 829, + "to_row": 829 + }, + "kind": ".", + "at": 25558, + "from_row": 829, + "to_row": 829 + }, + "kind": "!=", + "at": 25565, + "from_row": 829, + "to_row": 829 + } + }, + { + "then": [ + { + "to_row": 830, + "from_column": 35, + "to_column": 75, + "kind": "call", + "at": 25645, + "from_row": 830, + "expression": { + "list": [ + { + "to_column": 74, + "from_column": 63, + "right": "expression", + "left": { + "to_column": 63, + "from_column": 59, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25669, + "from_row": 830, + "to_row": 830 + }, + "kind": ".", + "at": 25673, + "from_row": 830, + "to_row": 830 + } + ], + "from_column": 58, + "to_row": 830, + "to_column": 75, + "kind": "(", + "at": 25668, + "from_row": 830, + "expression": { + "to_column": 58, + "from_column": 35, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 25645, + "from_row": 830, + "to_row": 830 + } + } + } + ], + "from_column": 6, + "list": [], + "to_row": 830, + "to_column": 75, + "kind": "if", + "at": 25616, + "from_row": 830, + "expression": { + "to_column": 33, + "from_column": 26, + "right": { + "to_column": 33, + "from_column": 29, + "kind": "null", + "at": 25639, + "from_row": 830, + "to_row": 830 + }, + "left": { + "to_column": 25, + "from_column": 14, + "right": "expression", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25620, + "from_row": 830, + "to_row": 830 + }, + "kind": ".", + "at": 25624, + "from_row": 830, + "to_row": 830 + }, + "kind": "!=", + "at": 25636, + "from_row": 830, + "to_row": 830 + } + }, + { + "then": [ + { + "to_row": 831, + "from_column": 29, + "to_column": 63, + "kind": "call", + "at": 25715, + "from_row": 831, + "expression": { + "list": [ + { + "to_column": 62, + "from_column": 57, + "right": "then", + "left": { + "to_column": 57, + "from_column": 53, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25739, + "from_row": 831, + "to_row": 831 + }, + "kind": ".", + "at": 25743, + "from_row": 831, + "to_row": 831 + } + ], + "from_column": 52, + "to_row": 831, + "to_column": 63, + "kind": "(", + "at": 25738, + "from_row": 831, + "expression": { + "to_column": 52, + "from_column": 29, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 25715, + "from_row": 831, + "to_row": 831 + } + } + } + ], + "from_column": 6, + "list": [], + "to_row": 831, + "to_column": 63, + "kind": "if", + "at": 25692, + "from_row": 831, + "expression": { + "to_column": 27, + "from_column": 20, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "null", + "at": 25709, + "from_row": 831, + "to_row": 831 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "then", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25696, + "from_row": 831, + "to_row": 831 + }, + "kind": ".", + "at": 25700, + "from_row": 831, + "to_row": 831 + }, + "kind": "!=", + "at": 25706, + "from_row": 831, + "to_row": 831 + } + }, + { + "then": [ + { + "to_row": 832, + "from_column": 29, + "to_column": 63, + "kind": "call", + "at": 25779, + "from_row": 832, + "expression": { + "list": [ + { + "to_column": 62, + "from_column": 57, + "right": "else", + "left": { + "to_column": 57, + "from_column": 53, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25803, + "from_row": 832, + "to_row": 832 + }, + "kind": ".", + "at": 25807, + "from_row": 832, + "to_row": 832 + } + ], + "from_column": 52, + "to_row": 832, + "to_column": 63, + "kind": "(", + "at": 25802, + "from_row": 832, + "expression": { + "to_column": 52, + "from_column": 29, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 25779, + "from_row": 832, + "to_row": 832 + } + } + } + ], + "from_column": 6, + "list": [], + "to_row": 832, + "to_column": 63, + "kind": "if", + "at": 25756, + "from_row": 832, + "expression": { + "to_column": 27, + "from_column": 20, + "right": { + "to_column": 27, + "from_column": 23, + "kind": "null", + "at": 25773, + "from_row": 832, + "to_row": 832 + }, + "left": { + "to_column": 19, + "from_column": 14, + "right": "else", + "left": { + "to_column": 14, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25760, + "from_row": 832, + "to_row": 832 + }, + "kind": ".", + "at": 25764, + "from_row": 832, + "to_row": 832 + }, + "kind": "!=", + "at": 25770, + "from_row": 832, + "to_row": 832 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 59, + "statements": [ + { + "to_row": 834, + "from_column": 8, + "to_column": 13, + "kind": "call", + "at": 25883, + "from_row": 834, + "expression": { + "to_column": 13, + "from_column": 10, + "right": { + "to_row": 834, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 25887, + "from_row": 834, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 25883, + "from_row": 834, + "to_row": 834 + }, + "kind": "assign", + "at": 25885, + "from_row": 834, + "to_row": 834 + } + }, + { + "to_row": 838, + "from_column": 8, + "to_column": 9, + "statements": [ + { + "to_column": 9, + "from_column": 38, + "statements": [ + { + "to_row": 836, + "from_column": 10, + "to_column": 47, + "kind": "call", + "at": 25939, + "from_row": 836, + "expression": { + "list": [ + { + "to_column": 46, + "from_column": 43, + "right": { + "to_column": 45, + "from_column": 44, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 25973, + "from_row": 836, + "to_row": 836 + }, + "left": { + "to_column": 43, + "from_column": 38, + "right": "list", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25963, + "from_row": 836, + "to_row": 836 + }, + "kind": ".", + "at": 25967, + "from_row": 836, + "to_row": 836 + }, + "kind": "[", + "at": 25972, + "from_row": 836, + "to_row": 836 + } + ], + "from_column": 33, + "to_row": 836, + "to_column": 47, + "kind": "(", + "at": 25962, + "from_row": 836, + "expression": { + "to_column": 33, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 25939, + "from_row": 836, + "to_row": 836 + } + } + }, + { + "to_row": 837, + "from_column": 10, + "to_column": 19, + "kind": "call", + "at": 25987, + "from_row": 837, + "expression": { + "to_column": 19, + "from_column": 12, + "right": { + "to_column": 19, + "from_column": 16, + "right": { + "to_row": 837, + "from_column": 18, + "number": 1, + "to_column": 19, + "kind": "number", + "at": 25995, + "from_row": 837, + "value": "1" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 25991, + "from_row": 837, + "to_row": 837 + }, + "kind": "+", + "at": 25993, + "from_row": 837, + "to_row": 837 + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 25987, + "from_row": 837, + "to_row": 837 + }, + "kind": "assign", + "at": 25989, + "from_row": 837, + "to_row": 837 + } + } + ], + "kind": "block", + "at": 25927, + "from_row": 835, + "to_row": 838 + } + ], + "kind": "while", + "at": 25897, + "from_row": 835, + "expression": { + "to_column": 36, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 35, + "from_column": 30, + "right": "list", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 25915, + "from_row": 835, + "to_row": 835 + }, + "kind": ".", + "at": 25919, + "from_row": 835, + "to_row": 835 + } + ], + "from_column": 25, + "to_row": 835, + "to_column": 36, + "kind": "(", + "at": 25914, + "from_row": 835, + "expression": { + "to_column": 25, + "from_column": 19, + "level": -1, + "name": "length", + "kind": "name", + "at": 25908, + "from_row": 835, + "to_row": 835 + } + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 25904, + "from_row": 835, + "to_row": 835 + }, + "kind": "<", + "at": 25906, + "from_row": 835, + "to_row": 835 + } + } + ], + "kind": "block", + "at": 25873, + "from_row": 833, + "to_row": 839 + } + ], + "from_column": 6, + "list": [], + "to_row": 839, + "to_column": 7, + "kind": "if", + "at": 25820, + "from_row": 833, + "expression": { + "to_column": 57, + "from_column": 35, + "right": { + "to_column": 57, + "from_column": 40, + "right": { + "to_row": 833, + "from_column": 43, + "to_column": 57, + "kind": "text", + "at": 25857, + "from_row": 833, + "value": "text literal" + }, + "left": { + "to_column": 39, + "from_column": 38, + "level": 0, + "function_nr": 27, + "name": "k", + "kind": "name", + "at": 25852, + "from_row": 833, + "to_row": 833 + }, + "kind": "==", + "at": 25854, + "from_row": 833, + "to_row": 833 + }, + "left": { + "to_column": 34, + "from_column": 19, + "right": { + "to_column": 34, + "from_column": 24, + "right": { + "to_row": 833, + "from_column": 27, + "to_column": 34, + "kind": "text", + "at": 25841, + "from_row": 833, + "value": "array" + }, + "left": { + "to_column": 23, + "from_column": 22, + "level": 0, + "function_nr": 27, + "name": "k", + "kind": "name", + "at": 25836, + "from_row": 833, + "to_row": 833 + }, + "kind": "==", + "at": 25838, + "from_row": 833, + "to_row": 833 + }, + "left": { + "to_column": 18, + "from_column": 12, + "right": { + "to_row": 833, + "from_column": 15, + "to_column": 18, + "kind": "text", + "at": 25829, + "from_row": 833, + "value": "(" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "k", + "kind": "name", + "at": 25824, + "from_row": 833, + "to_row": 833 + }, + "kind": "==", + "at": 25826, + "from_row": 833, + "to_row": 833 + }, + "kind": "||", + "at": 25833, + "from_row": 833, + "to_row": 833 + }, + "kind": "||", + "at": 25849, + "from_row": 833, + "to_row": 833 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 25, + "statements": [ + { + "to_row": 841, + "from_column": 8, + "to_column": 13, + "kind": "call", + "at": 26050, + "from_row": 841, + "expression": { + "to_column": 13, + "from_column": 10, + "right": { + "to_row": 841, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 26054, + "from_row": 841, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 26050, + "from_row": 841, + "to_row": 841 + }, + "kind": "assign", + "at": 26052, + "from_row": 841, + "to_row": 841 + } + }, + { + "to_row": 845, + "from_column": 8, + "to_column": 9, + "statements": [ + { + "to_column": 9, + "from_column": 38, + "statements": [ + { + "to_row": 843, + "from_column": 10, + "to_column": 53, + "kind": "call", + "at": 26106, + "from_row": 843, + "expression": { + "list": [ + { + "to_column": 52, + "from_column": 46, + "right": "right", + "left": { + "to_column": 46, + "from_column": 43, + "right": { + "to_column": 45, + "from_column": 44, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 26140, + "from_row": 843, + "to_row": 843 + }, + "left": { + "to_column": 43, + "from_column": 38, + "right": "list", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 26130, + "from_row": 843, + "to_row": 843 + }, + "kind": ".", + "at": 26134, + "from_row": 843, + "to_row": 843 + }, + "kind": "[", + "at": 26139, + "from_row": 843, + "to_row": 843 + }, + "kind": ".", + "at": 26142, + "from_row": 843, + "to_row": 843 + } + ], + "from_column": 33, + "to_row": 843, + "to_column": 53, + "kind": "(", + "at": 26129, + "from_row": 843, + "expression": { + "to_column": 33, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 26106, + "from_row": 843, + "to_row": 843 + } + } + }, + { + "to_row": 844, + "from_column": 10, + "to_column": 19, + "kind": "call", + "at": 26160, + "from_row": 844, + "expression": { + "to_column": 19, + "from_column": 12, + "right": { + "to_column": 19, + "from_column": 16, + "right": { + "to_row": 844, + "from_column": 18, + "number": 1, + "to_column": 19, + "kind": "number", + "at": 26168, + "from_row": 844, + "value": "1" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 26164, + "from_row": 844, + "to_row": 844 + }, + "kind": "+", + "at": 26166, + "from_row": 844, + "to_row": 844 + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 26160, + "from_row": 844, + "to_row": 844 + }, + "kind": "assign", + "at": 26162, + "from_row": 844, + "to_row": 844 + } + } + ], + "kind": "block", + "at": 26094, + "from_row": 842, + "to_row": 845 + } + ], + "kind": "while", + "at": 26064, + "from_row": 842, + "expression": { + "to_column": 36, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 35, + "from_column": 30, + "right": "list", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 26082, + "from_row": 842, + "to_row": 842 + }, + "kind": ".", + "at": 26086, + "from_row": 842, + "to_row": 842 + } + ], + "from_column": 25, + "to_row": 842, + "to_column": 36, + "kind": "(", + "at": 26081, + "from_row": 842, + "expression": { + "to_column": 25, + "from_column": 19, + "level": -1, + "name": "length", + "kind": "name", + "at": 26075, + "from_row": 842, + "to_row": 842 + } + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 26071, + "from_row": 842, + "to_row": 842 + }, + "kind": "<", + "at": 26073, + "from_row": 842, + "to_row": 842 + } + } + ], + "kind": "block", + "at": 26040, + "from_row": 840, + "to_row": 846 + } + ], + "from_column": 6, + "list": [], + "to_row": 846, + "to_column": 7, + "kind": "if", + "at": 26021, + "from_row": 840, + "expression": { + "to_column": 23, + "from_column": 12, + "right": { + "to_row": 840, + "from_column": 15, + "to_column": 23, + "kind": "text", + "at": 26030, + "from_row": 840, + "value": "record" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "k", + "kind": "name", + "at": 26025, + "from_row": 840, + "to_row": 840 + }, + "kind": "==", + "at": 26027, + "from_row": 840, + "to_row": 840 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 27, + "statements": [ + { + "to_row": 848, + "from_column": 8, + "to_column": 43, + "kind": "call", + "at": 26225, + "from_row": 848, + "expression": { + "list": [ + { + "to_column": 42, + "from_column": 31, + "right": "statements", + "left": { + "to_column": 31, + "from_column": 27, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 26244, + "from_row": 848, + "to_row": 848 + }, + "kind": ".", + "at": 26248, + "from_row": 848, + "to_row": 848 + } + ], + "from_column": 26, + "to_row": 848, + "to_column": 43, + "kind": "(", + "at": 26243, + "from_row": 848, + "expression": { + "to_column": 26, + "from_column": 8, + "level": 1, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 26225, + "from_row": 848, + "to_row": 848 + } + } + }, + { + "to_row": 849, + "from_column": 8, + "to_column": 43, + "kind": "call", + "at": 26269, + "from_row": 849, + "expression": { + "list": [ + { + "to_column": 42, + "from_column": 31, + "right": "disruption", + "left": { + "to_column": 31, + "from_column": 27, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 26288, + "from_row": 849, + "to_row": 849 + }, + "kind": ".", + "at": 26292, + "from_row": 849, + "to_row": 849 + } + ], + "from_column": 26, + "to_row": 849, + "to_column": 43, + "kind": "(", + "at": 26287, + "from_row": 849, + "expression": { + "to_column": 26, + "from_column": 8, + "level": 1, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 26269, + "from_row": 849, + "to_row": 849 + } + } + }, + { + "to_row": 850, + "from_column": 8, + "to_column": 13, + "kind": "call", + "at": 26313, + "from_row": 850, + "expression": { + "to_column": 13, + "from_column": 10, + "right": { + "to_row": 850, + "from_column": 12, + "number": 0, + "to_column": 13, + "kind": "number", + "at": 26317, + "from_row": 850, + "value": "0" + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 26313, + "from_row": 850, + "to_row": 850 + }, + "kind": "assign", + "at": 26315, + "from_row": 850, + "to_row": 850 + } + }, + { + "to_row": 856, + "from_column": 8, + "to_column": 9, + "statements": [ + { + "to_column": 9, + "from_column": 38, + "statements": [ + { + "then": [ + { + "to_column": 11, + "from_column": 47, + "statements": [ + { + "to_row": 853, + "from_column": 12, + "to_column": 60, + "kind": "call", + "at": 26420, + "from_row": 853, + "expression": { + "list": [ + { + "to_column": 59, + "from_column": 48, + "right": "expression", + "left": { + "to_column": 48, + "from_column": 45, + "right": { + "to_column": 47, + "from_column": 46, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 26454, + "from_row": 853, + "to_row": 853 + }, + "left": { + "to_column": 45, + "from_column": 40, + "right": "list", + "left": { + "to_column": 40, + "from_column": 36, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 26444, + "from_row": 853, + "to_row": 853 + }, + "kind": ".", + "at": 26448, + "from_row": 853, + "to_row": 853 + }, + "kind": "[", + "at": 26453, + "from_row": 853, + "to_row": 853 + }, + "kind": ".", + "at": 26456, + "from_row": 853, + "to_row": 853 + } + ], + "from_column": 35, + "to_row": 853, + "to_column": 60, + "kind": "(", + "at": 26443, + "from_row": 853, + "expression": { + "to_column": 35, + "from_column": 12, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 26420, + "from_row": 853, + "to_row": 853 + } + } + } + ], + "kind": "block", + "at": 26406, + "from_row": 852, + "to_row": 854 + } + ], + "from_column": 10, + "list": [], + "to_row": 854, + "to_column": 11, + "kind": "if", + "at": 26369, + "from_row": 852, + "expression": { + "to_column": 45, + "from_column": 38, + "right": { + "to_column": 45, + "from_column": 41, + "kind": "null", + "at": 26400, + "from_row": 852, + "to_row": 852 + }, + "left": { + "to_column": 37, + "from_column": 26, + "right": "expression", + "left": { + "to_column": 26, + "from_column": 23, + "right": { + "to_column": 25, + "from_column": 24, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 26383, + "from_row": 852, + "to_row": 852 + }, + "left": { + "to_column": 23, + "from_column": 18, + "right": "list", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 26373, + "from_row": 852, + "to_row": 852 + }, + "kind": ".", + "at": 26377, + "from_row": 852, + "to_row": 852 + }, + "kind": "[", + "at": 26382, + "from_row": 852, + "to_row": 852 + }, + "kind": ".", + "at": 26385, + "from_row": 852, + "to_row": 852 + }, + "kind": "!=", + "at": 26397, + "from_row": 852, + "to_row": 852 + } + }, + { + "to_row": 855, + "from_column": 10, + "to_column": 19, + "kind": "call", + "at": 26491, + "from_row": 855, + "expression": { + "to_column": 19, + "from_column": 12, + "right": { + "to_column": 19, + "from_column": 16, + "right": { + "to_row": 855, + "from_column": 18, + "number": 1, + "to_column": 19, + "kind": "number", + "at": 26499, + "from_row": 855, + "value": "1" + }, + "left": { + "to_column": 15, + "from_column": 14, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 26495, + "from_row": 855, + "to_row": 855 + }, + "kind": "+", + "at": 26497, + "from_row": 855, + "to_row": 855 + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 26491, + "from_row": 855, + "to_row": 855 + }, + "kind": "assign", + "at": 26493, + "from_row": 855, + "to_row": 855 + } + } + ], + "kind": "block", + "at": 26357, + "from_row": 851, + "to_row": 856 + } + ], + "kind": "while", + "at": 26327, + "from_row": 851, + "expression": { + "to_column": 36, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 35, + "from_column": 30, + "right": "list", + "left": { + "to_column": 30, + "from_column": 26, + "level": 0, + "function_nr": 27, + "name": "expr", + "kind": "name", + "at": 26345, + "from_row": 851, + "to_row": 851 + }, + "kind": ".", + "at": 26349, + "from_row": 851, + "to_row": 851 + } + ], + "from_column": 25, + "to_row": 851, + "to_column": 36, + "kind": "(", + "at": 26344, + "from_row": 851, + "expression": { + "to_column": 25, + "from_column": 19, + "level": -1, + "name": "length", + "kind": "name", + "at": 26338, + "from_row": 851, + "to_row": 851 + } + }, + "left": { + "to_column": 16, + "from_column": 15, + "level": 0, + "function_nr": 27, + "name": "i", + "kind": "name", + "at": 26334, + "from_row": 851, + "to_row": 851 + }, + "kind": "<", + "at": 26336, + "from_row": 851, + "to_row": 851 + } + } + ], + "kind": "block", + "at": 26215, + "from_row": 847, + "to_row": 857 + } + ], + "from_column": 6, + "list": [], + "to_row": 857, + "to_column": 7, + "kind": "if", + "at": 26194, + "from_row": 847, + "expression": { + "to_column": 25, + "from_column": 12, + "right": { + "to_row": 847, + "from_column": 15, + "to_column": 25, + "kind": "text", + "at": 26203, + "from_row": 847, + "value": "function" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 27, + "name": "k", + "kind": "name", + "at": 26198, + "from_row": 847, + "to_row": 847 + }, + "kind": "==", + "at": 26200, + "from_row": 847, + "to_row": 847 + } + } + ], + "to_column": 5, + "kind": "function", + "at": 25244, + "to_row": 858, + "outer": 29, + "list": [ + { + "to_column": 43, + "from_column": 39, + "name": "expr", + "kind": "name", + "at": 25253, + "from_row": 821, + "to_row": 821 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 27, + "from_row": 821 + }, + "left": { + "to_column": 27, + "from_column": 4, + "level": 0, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 25218, + "from_row": 821, + "to_row": 821 + }, + "kind": "assign", + "at": 25242, + "from_row": 821, + "to_row": 858 + } + }, + { + "to_row": 918, + "from_column": 4, + "to_column": 5, + "kind": "call", + "at": 26530, + "from_row": 860, + "expression": { + "to_column": 5, + "from_column": 23, + "right": { + "from_column": 25, + "nr_slots": 6, + "statements": [ + { + "then": [ + { + "to_row": 861, + "from_column": 25, + "to_column": 36, + "kind": "return", + "at": 26594, + "from_row": 861, + "expression": { + "to_column": 36, + "from_column": 32, + "kind": "null", + "at": 26601, + "from_row": 861, + "to_row": 861 + } + } + ], + "from_column": 6, + "list": [], + "to_row": 861, + "to_column": 36, + "kind": "if", + "at": 26575, + "from_row": 861, + "expression": { + "to_column": 23, + "from_column": 16, + "right": { + "to_column": 23, + "from_column": 19, + "kind": "null", + "at": 26588, + "from_row": 861, + "to_row": 861 + }, + "left": { + "to_column": 15, + "from_column": 10, + "level": 0, + "function_nr": 28, + "name": "stmts", + "kind": "name", + "at": 26579, + "from_row": 861, + "to_row": 861 + }, + "kind": "==", + "at": 26585, + "from_row": 861, + "to_row": 861 + } + }, + { + "to_column": 15, + "from_column": 6, + "right": { + "to_row": 862, + "from_column": 14, + "number": 0, + "to_column": 15, + "kind": "number", + "at": 26620, + "from_row": 862, + "value": "0" + }, + "left": { + "to_column": 11, + "from_column": 10, + "name": "i", + "kind": "name", + "at": 26616, + "from_row": 862, + "to_row": 862 + }, + "kind": "var", + "at": 26612, + "from_row": 862, + "to_row": 862 + }, + { + "to_column": 15, + "from_column": 6, + "right": { + "to_row": 863, + "from_column": 14, + "number": 0, + "to_column": 15, + "kind": "number", + "at": 26636, + "from_row": 863, + "value": "0" + }, + "left": { + "to_column": 11, + "from_column": 10, + "name": "j", + "kind": "name", + "at": 26632, + "from_row": 863, + "to_row": 863 + }, + "kind": "var", + "at": 26628, + "from_row": 863, + "to_row": 863 + }, + { + "to_column": 16, + "from_column": 6, + "right": { + "to_row": 864, + "from_column": 15, + "number": 0, + "to_column": 16, + "kind": "number", + "at": 26653, + "from_row": 864, + "value": "0" + }, + "left": { + "to_column": 12, + "from_column": 10, + "name": "pi", + "kind": "name", + "at": 26648, + "from_row": 864, + "to_row": 864 + }, + "kind": "var", + "at": 26644, + "from_row": 864, + "to_row": 864 + }, + { + "to_column": 21, + "from_column": 6, + "right": { + "to_column": 21, + "from_column": 17, + "kind": "null", + "at": 26672, + "from_row": 865, + "to_row": 865 + }, + "left": { + "to_column": 14, + "from_column": 10, + "name": "stmt", + "kind": "name", + "at": 26665, + "from_row": 865, + "to_row": 865 + }, + "kind": "var", + "at": 26661, + "from_row": 865, + "to_row": 865 + }, + { + "to_column": 18, + "from_column": 6, + "right": { + "to_column": 18, + "from_column": 14, + "kind": "null", + "at": 26691, + "from_row": 866, + "to_row": 866 + }, + "left": { + "to_column": 11, + "from_column": 10, + "name": "k", + "kind": "name", + "at": 26687, + "from_row": 866, + "to_row": 866 + }, + "kind": "var", + "at": 26683, + "from_row": 866, + "to_row": 866 + }, + { + "to_row": 917, + "from_column": 6, + "to_column": 7, + "statements": [ + { + "to_column": 7, + "from_column": 32, + "statements": [ + { + "to_row": 868, + "from_column": 8, + "to_column": 23, + "kind": "call", + "at": 26738, + "from_row": 868, + "expression": { + "to_column": 23, + "from_column": 13, + "right": { + "to_column": 23, + "from_column": 20, + "right": { + "to_column": 22, + "from_column": 21, + "level": 0, + "function_nr": 28, + "name": "i", + "kind": "name", + "at": 26751, + "from_row": 868, + "to_row": 868 + }, + "left": { + "to_column": 20, + "from_column": 15, + "level": 0, + "function_nr": 28, + "name": "stmts", + "kind": "name", + "at": 26745, + "from_row": 868, + "to_row": 868 + }, + "kind": "[", + "at": 26750, + "from_row": 868, + "to_row": 868 + }, + "left": { + "to_column": 12, + "from_column": 8, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 26738, + "from_row": 868, + "to_row": 868 + }, + "kind": "assign", + "at": 26743, + "from_row": 868, + "to_row": 868 + } + }, + { + "to_row": 869, + "from_column": 8, + "to_column": 21, + "kind": "call", + "at": 26762, + "from_row": 869, + "expression": { + "to_column": 21, + "from_column": 10, + "right": { + "to_column": 21, + "from_column": 16, + "right": "kind", + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 26766, + "from_row": 869, + "to_row": 869 + }, + "kind": ".", + "at": 26770, + "from_row": 869, + "to_row": 869 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 26762, + "from_row": 869, + "to_row": 869 + }, + "kind": "assign", + "at": 26764, + "from_row": 869, + "to_row": 869 + } + }, + { + "then": [ + { + "to_column": 9, + "from_column": 38, + "statements": [ + { + "to_row": 871, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 26826, + "from_row": 871, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 38, + "right": "right", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 26850, + "from_row": 871, + "to_row": 871 + }, + "kind": ".", + "at": 26854, + "from_row": 871, + "to_row": 871 + } + ], + "from_column": 33, + "to_row": 871, + "to_column": 45, + "kind": "(", + "at": 26849, + "from_row": 871, + "expression": { + "to_column": 33, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 26826, + "from_row": 871, + "to_row": 871 + } + } + } + ], + "kind": "block", + "at": 26814, + "from_row": 870, + "to_row": 872 + } + ], + "from_column": 8, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 36, + "statements": [ + { + "to_row": 873, + "from_column": 10, + "to_column": 15, + "kind": "call", + "at": 26910, + "from_row": 873, + "expression": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 873, + "from_column": 14, + "number": 0, + "to_column": 15, + "kind": "number", + "at": 26914, + "from_row": 873, + "value": "0" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 28, + "name": "j", + "kind": "name", + "at": 26910, + "from_row": 873, + "to_row": 873 + }, + "kind": "assign", + "at": 26912, + "from_row": 873, + "to_row": 873 + } + }, + { + "to_row": 877, + "from_column": 10, + "to_column": 11, + "statements": [ + { + "to_column": 11, + "from_column": 40, + "statements": [ + { + "to_row": 875, + "from_column": 12, + "to_column": 55, + "kind": "call", + "at": 26970, + "from_row": 875, + "expression": { + "list": [ + { + "to_column": 54, + "from_column": 48, + "right": "right", + "left": { + "to_column": 48, + "from_column": 45, + "right": { + "to_column": 47, + "from_column": 46, + "level": 0, + "function_nr": 28, + "name": "j", + "kind": "name", + "at": 27004, + "from_row": 875, + "to_row": 875 + }, + "left": { + "to_column": 45, + "from_column": 40, + "right": "list", + "left": { + "to_column": 40, + "from_column": 36, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 26994, + "from_row": 875, + "to_row": 875 + }, + "kind": ".", + "at": 26998, + "from_row": 875, + "to_row": 875 + }, + "kind": "[", + "at": 27003, + "from_row": 875, + "to_row": 875 + }, + "kind": ".", + "at": 27006, + "from_row": 875, + "to_row": 875 + } + ], + "from_column": 35, + "to_row": 875, + "to_column": 55, + "kind": "(", + "at": 26993, + "from_row": 875, + "expression": { + "to_column": 35, + "from_column": 12, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 26970, + "from_row": 875, + "to_row": 875 + } + } + }, + { + "to_row": 876, + "from_column": 12, + "to_column": 21, + "kind": "call", + "at": 27026, + "from_row": 876, + "expression": { + "to_column": 21, + "from_column": 14, + "right": { + "to_column": 21, + "from_column": 18, + "right": { + "to_row": 876, + "from_column": 20, + "number": 1, + "to_column": 21, + "kind": "number", + "at": 27034, + "from_row": 876, + "value": "1" + }, + "left": { + "to_column": 17, + "from_column": 16, + "level": 0, + "function_nr": 28, + "name": "j", + "kind": "name", + "at": 27030, + "from_row": 876, + "to_row": 876 + }, + "kind": "+", + "at": 27032, + "from_row": 876, + "to_row": 876 + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 28, + "name": "j", + "kind": "name", + "at": 27026, + "from_row": 876, + "to_row": 876 + }, + "kind": "assign", + "at": 27028, + "from_row": 876, + "to_row": 876 + } + } + ], + "kind": "block", + "at": 26956, + "from_row": 874, + "to_row": 877 + } + ], + "kind": "while", + "at": 26926, + "from_row": 874, + "expression": { + "to_column": 38, + "from_column": 19, + "right": { + "list": [ + { + "to_column": 37, + "from_column": 32, + "right": "list", + "left": { + "to_column": 32, + "from_column": 28, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 26944, + "from_row": 874, + "to_row": 874 + }, + "kind": ".", + "at": 26948, + "from_row": 874, + "to_row": 874 + } + ], + "from_column": 27, + "to_row": 874, + "to_column": 38, + "kind": "(", + "at": 26943, + "from_row": 874, + "expression": { + "to_column": 27, + "from_column": 21, + "level": -1, + "name": "length", + "kind": "name", + "at": 26937, + "from_row": 874, + "to_row": 874 + } + }, + "left": { + "to_column": 18, + "from_column": 17, + "level": 0, + "function_nr": 28, + "name": "j", + "kind": "name", + "at": 26933, + "from_row": 874, + "to_row": 874 + }, + "kind": "<", + "at": 26935, + "from_row": 874, + "to_row": 874 + } + } + ], + "kind": "block", + "at": 26898, + "from_row": 872, + "to_row": 878 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 32, + "statements": [ + { + "to_row": 879, + "from_column": 10, + "to_column": 50, + "kind": "call", + "at": 27092, + "from_row": 879, + "expression": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27116, + "from_row": 879, + "to_row": 879 + }, + "kind": ".", + "at": 27120, + "from_row": 879, + "to_row": 879 + } + ], + "from_column": 33, + "to_row": 879, + "to_column": 50, + "kind": "(", + "at": 27115, + "from_row": 879, + "expression": { + "to_column": 33, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 27092, + "from_row": 879, + "to_row": 879 + } + } + } + ], + "kind": "block", + "at": 27080, + "from_row": 878, + "to_row": 880 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 30, + "statements": [ + { + "to_row": 881, + "from_column": 10, + "to_column": 50, + "kind": "call", + "at": 27175, + "from_row": 881, + "expression": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27199, + "from_row": 881, + "to_row": 881 + }, + "kind": ".", + "at": 27203, + "from_row": 881, + "to_row": 881 + } + ], + "from_column": 33, + "to_row": 881, + "to_column": 50, + "kind": "(", + "at": 27198, + "from_row": 881, + "expression": { + "to_column": 33, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 27175, + "from_row": 881, + "to_row": 881 + } + } + }, + { + "to_row": 882, + "from_column": 10, + "to_column": 39, + "kind": "call", + "at": 27226, + "from_row": 882, + "expression": { + "list": [ + { + "to_column": 38, + "from_column": 33, + "right": "then", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27245, + "from_row": 882, + "to_row": 882 + }, + "kind": ".", + "at": 27249, + "from_row": 882, + "to_row": 882 + } + ], + "from_column": 28, + "to_row": 882, + "to_column": 39, + "kind": "(", + "at": 27244, + "from_row": 882, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 27226, + "from_row": 882, + "to_row": 882 + } + } + }, + { + "to_row": 883, + "from_column": 10, + "to_column": 39, + "kind": "call", + "at": 27266, + "from_row": 883, + "expression": { + "list": [ + { + "to_column": 38, + "from_column": 33, + "right": "list", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27285, + "from_row": 883, + "to_row": 883 + }, + "kind": ".", + "at": 27289, + "from_row": 883, + "to_row": 883 + } + ], + "from_column": 28, + "to_row": 883, + "to_column": 39, + "kind": "(", + "at": 27284, + "from_row": 883, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 27266, + "from_row": 883, + "to_row": 883 + } + } + }, + { + "then": [ + { + "to_row": 884, + "from_column": 33, + "to_column": 62, + "kind": "call", + "at": 27329, + "from_row": 884, + "expression": { + "list": [ + { + "to_column": 61, + "from_column": 56, + "right": "else", + "left": { + "to_column": 56, + "from_column": 52, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27348, + "from_row": 884, + "to_row": 884 + }, + "kind": ".", + "at": 27352, + "from_row": 884, + "to_row": 884 + } + ], + "from_column": 51, + "to_row": 884, + "to_column": 62, + "kind": "(", + "at": 27347, + "from_row": 884, + "expression": { + "to_column": 51, + "from_column": 33, + "level": 1, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 27329, + "from_row": 884, + "to_row": 884 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 884, + "to_column": 62, + "kind": "if", + "at": 27306, + "from_row": 884, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 27323, + "from_row": 884, + "to_row": 884 + }, + "left": { + "to_column": 23, + "from_column": 18, + "right": "else", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27310, + "from_row": 884, + "to_row": 884 + }, + "kind": ".", + "at": 27314, + "from_row": 884, + "to_row": 884 + }, + "kind": "!=", + "at": 27320, + "from_row": 884, + "to_row": 884 + } + } + ], + "kind": "block", + "at": 27163, + "from_row": 880, + "to_row": 885 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 46, + "statements": [ + { + "to_row": 886, + "from_column": 10, + "to_column": 50, + "kind": "call", + "at": 27417, + "from_row": 886, + "expression": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27441, + "from_row": 886, + "to_row": 886 + }, + "kind": ".", + "at": 27445, + "from_row": 886, + "to_row": 886 + } + ], + "from_column": 33, + "to_row": 886, + "to_column": 50, + "kind": "(", + "at": 27440, + "from_row": 886, + "expression": { + "to_column": 33, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 27417, + "from_row": 886, + "to_row": 886 + } + } + }, + { + "to_row": 887, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 27468, + "from_row": 887, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "statements", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27487, + "from_row": 887, + "to_row": 887 + }, + "kind": ".", + "at": 27491, + "from_row": 887, + "to_row": 887 + } + ], + "from_column": 28, + "to_row": 887, + "to_column": 45, + "kind": "(", + "at": 27486, + "from_row": 887, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 27468, + "from_row": 887, + "to_row": 887 + } + } + } + ], + "kind": "block", + "at": 27405, + "from_row": 885, + "to_row": 888 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 31, + "statements": [ + { + "then": [ + { + "to_column": 11, + "from_column": 33, + "statements": [ + { + "then": [ + { + "to_column": 13, + "from_column": 68, + "statements": [ + { + "to_row": 891, + "from_column": 14, + "to_column": 54, + "kind": "call", + "at": 27656, + "from_row": 891, + "expression": { + "list": [ + { + "to_column": 53, + "from_column": 47, + "right": "right", + "left": { + "to_column": 47, + "from_column": 42, + "right": "init", + "left": { + "to_column": 42, + "from_column": 38, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27680, + "from_row": 891, + "to_row": 891 + }, + "kind": ".", + "at": 27684, + "from_row": 891, + "to_row": 891 + }, + "kind": ".", + "at": 27689, + "from_row": 891, + "to_row": 891 + } + ], + "from_column": 37, + "to_row": 891, + "to_column": 54, + "kind": "(", + "at": 27679, + "from_row": 891, + "expression": { + "to_column": 37, + "from_column": 14, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 27656, + "from_row": 891, + "to_row": 891 + } + } + } + ], + "kind": "block", + "at": 27640, + "from_row": 890, + "to_row": 892 + } + ], + "from_column": 12, + "list": [], + "else": [ + { + "to_column": 13, + "from_column": 19, + "statements": [ + { + "to_row": 893, + "from_column": 14, + "to_column": 48, + "kind": "call", + "at": 27732, + "from_row": 893, + "expression": { + "list": [ + { + "to_column": 47, + "from_column": 42, + "right": "init", + "left": { + "to_column": 42, + "from_column": 38, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27756, + "from_row": 893, + "to_row": 893 + }, + "kind": ".", + "at": 27760, + "from_row": 893, + "to_row": 893 + } + ], + "from_column": 37, + "to_row": 893, + "to_column": 48, + "kind": "(", + "at": 27755, + "from_row": 893, + "expression": { + "to_column": 37, + "from_column": 14, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 27732, + "from_row": 893, + "to_row": 893 + } + } + } + ], + "kind": "block", + "at": 27716, + "from_row": 892, + "to_row": 894 + } + ], + "to_row": 894, + "to_column": 13, + "kind": "if", + "at": 27584, + "from_row": 890, + "expression": { + "to_column": 66, + "from_column": 40, + "right": { + "to_column": 66, + "from_column": 58, + "right": { + "to_row": 890, + "from_column": 61, + "to_column": 66, + "kind": "text", + "at": 27633, + "from_row": 890, + "value": "def" + }, + "left": { + "to_column": 57, + "from_column": 52, + "right": "kind", + "left": { + "to_column": 52, + "from_column": 47, + "right": "init", + "left": { + "to_column": 47, + "from_column": 43, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27615, + "from_row": 890, + "to_row": 890 + }, + "kind": ".", + "at": 27619, + "from_row": 890, + "to_row": 890 + }, + "kind": ".", + "at": 27624, + "from_row": 890, + "to_row": 890 + }, + "kind": "==", + "at": 27630, + "from_row": 890, + "to_row": 890 + }, + "left": { + "to_column": 39, + "from_column": 31, + "right": { + "to_row": 890, + "from_column": 34, + "to_column": 39, + "kind": "text", + "at": 27606, + "from_row": 890, + "value": "var" + }, + "left": { + "to_column": 30, + "from_column": 25, + "right": "kind", + "left": { + "to_column": 25, + "from_column": 20, + "right": "init", + "left": { + "to_column": 20, + "from_column": 16, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27588, + "from_row": 890, + "to_row": 890 + }, + "kind": ".", + "at": 27592, + "from_row": 890, + "to_row": 890 + }, + "kind": ".", + "at": 27597, + "from_row": 890, + "to_row": 890 + }, + "kind": "==", + "at": 27603, + "from_row": 890, + "to_row": 890 + }, + "kind": "||", + "at": 27612, + "from_row": 890, + "to_row": 890 + } + } + ], + "kind": "block", + "at": 27570, + "from_row": 889, + "to_row": 895 + } + ], + "from_column": 10, + "list": [], + "to_row": 895, + "to_column": 11, + "kind": "if", + "at": 27547, + "from_row": 889, + "expression": { + "to_column": 31, + "from_column": 24, + "right": { + "to_column": 31, + "from_column": 27, + "kind": "null", + "at": 27564, + "from_row": 889, + "to_row": 889 + }, + "left": { + "to_column": 23, + "from_column": 18, + "right": "init", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27551, + "from_row": 889, + "to_row": 889 + }, + "kind": ".", + "at": 27555, + "from_row": 889, + "to_row": 889 + }, + "kind": "!=", + "at": 27561, + "from_row": 889, + "to_row": 889 + } + }, + { + "to_row": 896, + "from_column": 10, + "to_column": 44, + "kind": "call", + "at": 27803, + "from_row": 896, + "expression": { + "list": [ + { + "to_column": 43, + "from_column": 38, + "right": "test", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27827, + "from_row": 896, + "to_row": 896 + }, + "kind": ".", + "at": 27831, + "from_row": 896, + "to_row": 896 + } + ], + "from_column": 33, + "to_row": 896, + "to_column": 44, + "kind": "(", + "at": 27826, + "from_row": 896, + "expression": { + "to_column": 33, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 27803, + "from_row": 896, + "to_row": 896 + } + } + }, + { + "to_row": 897, + "from_column": 10, + "to_column": 46, + "kind": "call", + "at": 27848, + "from_row": 897, + "expression": { + "list": [ + { + "to_column": 45, + "from_column": 38, + "right": "update", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27872, + "from_row": 897, + "to_row": 897 + }, + "kind": ".", + "at": 27876, + "from_row": 897, + "to_row": 897 + } + ], + "from_column": 33, + "to_row": 897, + "to_column": 46, + "kind": "(", + "at": 27871, + "from_row": 897, + "expression": { + "to_column": 33, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 27848, + "from_row": 897, + "to_row": 897 + } + } + }, + { + "to_row": 898, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 27895, + "from_row": 898, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "statements", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 27914, + "from_row": 898, + "to_row": 898 + }, + "kind": ".", + "at": 27918, + "from_row": 898, + "to_row": 898 + } + ], + "from_column": 28, + "to_row": 898, + "to_column": 45, + "kind": "(", + "at": 27913, + "from_row": 898, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 27895, + "from_row": 898, + "to_row": 898 + } + } + } + ], + "kind": "block", + "at": 27535, + "from_row": 888, + "to_row": 899 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 47, + "statements": [ + { + "to_row": 900, + "from_column": 10, + "to_column": 50, + "kind": "call", + "at": 27990, + "from_row": 900, + "expression": { + "list": [ + { + "to_column": 49, + "from_column": 38, + "right": "expression", + "left": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 28014, + "from_row": 900, + "to_row": 900 + }, + "kind": ".", + "at": 28018, + "from_row": 900, + "to_row": 900 + } + ], + "from_column": 33, + "to_row": 900, + "to_column": 50, + "kind": "(", + "at": 28013, + "from_row": 900, + "expression": { + "to_column": 33, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 27990, + "from_row": 900, + "to_row": 900 + } + } + } + ], + "kind": "block", + "at": 27978, + "from_row": 899, + "to_row": 901 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 36, + "statements": [ + { + "to_row": 902, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 28079, + "from_row": 902, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "statements", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 28098, + "from_row": 902, + "to_row": 902 + }, + "kind": ".", + "at": 28102, + "from_row": 902, + "to_row": 902 + } + ], + "from_column": 28, + "to_row": 902, + "to_column": 45, + "kind": "(", + "at": 28097, + "from_row": 902, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 28079, + "from_row": 902, + "to_row": 902 + } + } + }, + { + "to_row": 903, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 28125, + "from_row": 903, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "disruption", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 28144, + "from_row": 903, + "to_row": 903 + }, + "kind": ".", + "at": 28148, + "from_row": 903, + "to_row": 903 + } + ], + "from_column": 28, + "to_row": 903, + "to_column": 45, + "kind": "(", + "at": 28143, + "from_row": 903, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 28125, + "from_row": 903, + "to_row": 903 + } + } + }, + { + "to_row": 904, + "from_column": 10, + "to_column": 16, + "kind": "call", + "at": 28171, + "from_row": 904, + "expression": { + "to_column": 16, + "from_column": 13, + "right": { + "to_row": 904, + "from_column": 15, + "number": 0, + "to_column": 16, + "kind": "number", + "at": 28176, + "from_row": 904, + "value": "0" + }, + "left": { + "to_column": 12, + "from_column": 10, + "level": 0, + "function_nr": 28, + "name": "pi", + "kind": "name", + "at": 28171, + "from_row": 904, + "to_row": 904 + }, + "kind": "assign", + "at": 28174, + "from_row": 904, + "to_row": 904 + } + }, + { + "to_row": 910, + "from_column": 10, + "to_column": 11, + "statements": [ + { + "to_column": 11, + "from_column": 41, + "statements": [ + { + "then": [ + { + "to_column": 13, + "from_column": 50, + "statements": [ + { + "to_row": 907, + "from_column": 14, + "to_column": 63, + "kind": "call", + "at": 28287, + "from_row": 907, + "expression": { + "list": [ + { + "to_column": 62, + "from_column": 51, + "right": "expression", + "left": { + "to_column": 51, + "from_column": 47, + "right": { + "to_column": 50, + "from_column": 48, + "level": 0, + "function_nr": 28, + "name": "pi", + "kind": "name", + "at": 28321, + "from_row": 907, + "to_row": 907 + }, + "left": { + "to_column": 47, + "from_column": 42, + "right": "list", + "left": { + "to_column": 42, + "from_column": 38, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 28311, + "from_row": 907, + "to_row": 907 + }, + "kind": ".", + "at": 28315, + "from_row": 907, + "to_row": 907 + }, + "kind": "[", + "at": 28320, + "from_row": 907, + "to_row": 907 + }, + "kind": ".", + "at": 28324, + "from_row": 907, + "to_row": 907 + } + ], + "from_column": 37, + "to_row": 907, + "to_column": 63, + "kind": "(", + "at": 28310, + "from_row": 907, + "expression": { + "to_column": 37, + "from_column": 14, + "level": 1, + "function_nr": 29, + "name": "collect_expr_intrinsics", + "kind": "name", + "at": 28287, + "from_row": 907, + "to_row": 907 + } + } + } + ], + "kind": "block", + "at": 28271, + "from_row": 906, + "to_row": 908 + } + ], + "from_column": 12, + "list": [], + "to_row": 908, + "to_column": 13, + "kind": "if", + "at": 28233, + "from_row": 906, + "expression": { + "to_column": 48, + "from_column": 41, + "right": { + "to_column": 48, + "from_column": 44, + "kind": "null", + "at": 28265, + "from_row": 906, + "to_row": 906 + }, + "left": { + "to_column": 40, + "from_column": 29, + "right": "expression", + "left": { + "to_column": 29, + "from_column": 25, + "right": { + "to_column": 28, + "from_column": 26, + "level": 0, + "function_nr": 28, + "name": "pi", + "kind": "name", + "at": 28247, + "from_row": 906, + "to_row": 906 + }, + "left": { + "to_column": 25, + "from_column": 20, + "right": "list", + "left": { + "to_column": 20, + "from_column": 16, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 28237, + "from_row": 906, + "to_row": 906 + }, + "kind": ".", + "at": 28241, + "from_row": 906, + "to_row": 906 + }, + "kind": "[", + "at": 28246, + "from_row": 906, + "to_row": 906 + }, + "kind": ".", + "at": 28250, + "from_row": 906, + "to_row": 906 + }, + "kind": "!=", + "at": 28262, + "from_row": 906, + "to_row": 906 + } + }, + { + "to_row": 909, + "from_column": 12, + "to_column": 23, + "kind": "call", + "at": 28363, + "from_row": 909, + "expression": { + "to_column": 23, + "from_column": 15, + "right": { + "to_column": 23, + "from_column": 20, + "right": { + "to_row": 909, + "from_column": 22, + "number": 1, + "to_column": 23, + "kind": "number", + "at": 28373, + "from_row": 909, + "value": "1" + }, + "left": { + "to_column": 19, + "from_column": 17, + "level": 0, + "function_nr": 28, + "name": "pi", + "kind": "name", + "at": 28368, + "from_row": 909, + "to_row": 909 + }, + "kind": "+", + "at": 28371, + "from_row": 909, + "to_row": 909 + }, + "left": { + "to_column": 14, + "from_column": 12, + "level": 0, + "function_nr": 28, + "name": "pi", + "kind": "name", + "at": 28363, + "from_row": 909, + "to_row": 909 + }, + "kind": "assign", + "at": 28366, + "from_row": 909, + "to_row": 909 + } + } + ], + "kind": "block", + "at": 28219, + "from_row": 905, + "to_row": 910 + } + ], + "kind": "while", + "at": 28188, + "from_row": 905, + "expression": { + "to_column": 39, + "from_column": 20, + "right": { + "list": [ + { + "to_column": 38, + "from_column": 33, + "right": "list", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 28207, + "from_row": 905, + "to_row": 905 + }, + "kind": ".", + "at": 28211, + "from_row": 905, + "to_row": 905 + } + ], + "from_column": 28, + "to_row": 905, + "to_column": 39, + "kind": "(", + "at": 28206, + "from_row": 905, + "expression": { + "to_column": 28, + "from_column": 22, + "level": -1, + "name": "length", + "kind": "name", + "at": 28200, + "from_row": 905, + "to_row": 905 + } + }, + "left": { + "to_column": 19, + "from_column": 17, + "level": 0, + "function_nr": 28, + "name": "pi", + "kind": "name", + "at": 28195, + "from_row": 905, + "to_row": 905 + }, + "kind": "<", + "at": 28198, + "from_row": 905, + "to_row": 905 + } + } + ], + "kind": "block", + "at": 28067, + "from_row": 901, + "to_row": 911 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 33, + "statements": [ + { + "to_row": 912, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 28432, + "from_row": 912, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "statements", + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 28451, + "from_row": 912, + "to_row": 912 + }, + "kind": ".", + "at": 28455, + "from_row": 912, + "to_row": 912 + } + ], + "from_column": 28, + "to_row": 912, + "to_column": 45, + "kind": "(", + "at": 28450, + "from_row": 912, + "expression": { + "to_column": 28, + "from_column": 10, + "level": 1, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 28432, + "from_row": 912, + "to_row": 912 + } + } + } + ], + "kind": "block", + "at": 28420, + "from_row": 911, + "to_row": 913 + } + ], + "from_column": 15, + "list": [ + { + "then": [ + { + "to_column": 9, + "from_column": 33, + "statements": [ + { + "then": [ + { + "to_row": 914, + "from_column": 38, + "to_column": 74, + "kind": "call", + "at": 28541, + "from_row": 914, + "expression": { + "list": [ + { + "list": [ + { + "to_column": 72, + "from_column": 62, + "right": "statement", + "left": { + "to_column": 62, + "from_column": 58, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 28561, + "from_row": 914, + "to_row": 914 + }, + "kind": ".", + "at": 28565, + "from_row": 914, + "to_row": 914 + } + ], + "from_column": 57, + "to_column": 72, + "kind": "array", + "at": 28560, + "from_row": 914, + "to_row": 914 + } + ], + "from_column": 56, + "to_row": 914, + "to_column": 74, + "kind": "(", + "at": 28559, + "from_row": 914, + "expression": { + "to_column": 56, + "from_column": 38, + "level": 1, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 28541, + "from_row": 914, + "to_row": 914 + } + } + } + ], + "from_column": 10, + "list": [], + "to_row": 914, + "to_column": 74, + "kind": "if", + "at": 28513, + "from_row": 914, + "expression": { + "to_column": 36, + "from_column": 29, + "right": { + "to_column": 36, + "from_column": 32, + "kind": "null", + "at": 28535, + "from_row": 914, + "to_row": 914 + }, + "left": { + "to_column": 28, + "from_column": 18, + "right": "statement", + "left": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 28, + "name": "stmt", + "kind": "name", + "at": 28517, + "from_row": 914, + "to_row": 914 + }, + "kind": ".", + "at": 28521, + "from_row": 914, + "to_row": 914 + }, + "kind": "!=", + "at": 28532, + "from_row": 914, + "to_row": 914 + } + } + ], + "kind": "block", + "at": 28501, + "from_row": 913, + "to_row": 915 + } + ], + "from_column": 15, + "list": [], + "to_row": 915, + "to_column": 9, + "kind": "if", + "at": 28483, + "from_row": 913, + "expression": { + "to_column": 31, + "from_column": 21, + "right": { + "to_row": 913, + "from_column": 24, + "to_column": 31, + "kind": "text", + "at": 28492, + "from_row": 913, + "value": "label" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 28487, + "from_row": 913, + "to_row": 913 + }, + "kind": "==", + "at": 28489, + "from_row": 913, + "to_row": 913 + } + } + ], + "to_row": 915, + "to_column": 9, + "kind": "if", + "at": 28402, + "from_row": 911, + "expression": { + "to_column": 31, + "from_column": 21, + "right": { + "to_row": 911, + "from_column": 24, + "to_column": 31, + "kind": "text", + "at": 28411, + "from_row": 911, + "value": "block" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 28406, + "from_row": 911, + "to_row": 911 + }, + "kind": "==", + "at": 28408, + "from_row": 911, + "to_row": 911 + } + } + ], + "to_row": 915, + "to_column": 9, + "kind": "if", + "at": 28046, + "from_row": 901, + "expression": { + "to_column": 34, + "from_column": 21, + "right": { + "to_row": 901, + "from_column": 24, + "to_column": 34, + "kind": "text", + "at": 28055, + "from_row": 901, + "value": "function" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 28050, + "from_row": 901, + "to_row": 901 + }, + "kind": "==", + "at": 28052, + "from_row": 901, + "to_row": 901 + } + } + ], + "to_row": 915, + "to_column": 9, + "kind": "if", + "at": 27946, + "from_row": 899, + "expression": { + "to_column": 45, + "from_column": 33, + "right": { + "to_column": 45, + "from_column": 38, + "right": { + "to_row": 899, + "from_column": 41, + "to_column": 45, + "kind": "text", + "at": 27972, + "from_row": 899, + "value": "go" + }, + "left": { + "to_column": 37, + "from_column": 36, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 27967, + "from_row": 899, + "to_row": 899 + }, + "kind": "==", + "at": 27969, + "from_row": 899, + "to_row": 899 + }, + "left": { + "to_column": 32, + "from_column": 21, + "right": { + "to_row": 899, + "from_column": 24, + "to_column": 32, + "kind": "text", + "at": 27955, + "from_row": 899, + "value": "return" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 27950, + "from_row": 899, + "to_row": 899 + }, + "kind": "==", + "at": 27952, + "from_row": 899, + "to_row": 899 + }, + "kind": "||", + "at": 27964, + "from_row": 899, + "to_row": 899 + } + } + ], + "to_row": 915, + "to_column": 9, + "kind": "if", + "at": 27519, + "from_row": 888, + "expression": { + "to_column": 29, + "from_column": 21, + "right": { + "to_row": 888, + "from_column": 24, + "to_column": 29, + "kind": "text", + "at": 27528, + "from_row": 888, + "value": "for" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 27523, + "from_row": 888, + "to_row": 888 + }, + "kind": "==", + "at": 27525, + "from_row": 888, + "to_row": 888 + } + } + ], + "to_row": 915, + "to_column": 9, + "kind": "if", + "at": 27374, + "from_row": 885, + "expression": { + "to_column": 44, + "from_column": 32, + "right": { + "to_column": 44, + "from_column": 37, + "right": { + "to_row": 885, + "from_column": 40, + "to_column": 44, + "kind": "text", + "at": 27399, + "from_row": 885, + "value": "do" + }, + "left": { + "to_column": 36, + "from_column": 35, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 27394, + "from_row": 885, + "to_row": 885 + }, + "kind": "==", + "at": 27396, + "from_row": 885, + "to_row": 885 + }, + "left": { + "to_column": 31, + "from_column": 21, + "right": { + "to_row": 885, + "from_column": 24, + "to_column": 31, + "kind": "text", + "at": 27383, + "from_row": 885, + "value": "while" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 27378, + "from_row": 885, + "to_row": 885 + }, + "kind": "==", + "at": 27380, + "from_row": 885, + "to_row": 885 + }, + "kind": "||", + "at": 27391, + "from_row": 885, + "to_row": 885 + } + } + ], + "to_row": 915, + "to_column": 9, + "kind": "if", + "at": 27148, + "from_row": 880, + "expression": { + "to_column": 28, + "from_column": 21, + "right": { + "to_row": 880, + "from_column": 24, + "to_column": 28, + "kind": "text", + "at": 27157, + "from_row": 880, + "value": "if" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 27152, + "from_row": 880, + "to_row": 880 + }, + "kind": "==", + "at": 27154, + "from_row": 880, + "to_row": 880 + } + } + ], + "to_row": 915, + "to_column": 9, + "kind": "if", + "at": 27063, + "from_row": 878, + "expression": { + "to_column": 30, + "from_column": 21, + "right": { + "to_row": 878, + "from_column": 24, + "to_column": 30, + "kind": "text", + "at": 27072, + "from_row": 878, + "value": "call" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 27067, + "from_row": 878, + "to_row": 878 + }, + "kind": "==", + "at": 27069, + "from_row": 878, + "to_row": 878 + } + } + ], + "to_row": 915, + "to_column": 9, + "kind": "if", + "at": 26877, + "from_row": 872, + "expression": { + "to_column": 34, + "from_column": 21, + "right": { + "to_row": 872, + "from_column": 24, + "to_column": 34, + "kind": "text", + "at": 26886, + "from_row": 872, + "value": "var_list" + }, + "left": { + "to_column": 20, + "from_column": 19, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 26881, + "from_row": 872, + "to_row": 872 + }, + "kind": "==", + "at": 26883, + "from_row": 872, + "to_row": 872 + } + } + ], + "to_row": 915, + "to_column": 9, + "kind": "if", + "at": 26784, + "from_row": 870, + "expression": { + "to_column": 36, + "from_column": 23, + "right": { + "to_column": 36, + "from_column": 28, + "right": { + "to_row": 870, + "from_column": 31, + "to_column": 36, + "kind": "text", + "at": 26807, + "from_row": 870, + "value": "def" + }, + "left": { + "to_column": 27, + "from_column": 26, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 26802, + "from_row": 870, + "to_row": 870 + }, + "kind": "==", + "at": 26804, + "from_row": 870, + "to_row": 870 + }, + "left": { + "to_column": 22, + "from_column": 14, + "right": { + "to_row": 870, + "from_column": 17, + "to_column": 22, + "kind": "text", + "at": 26793, + "from_row": 870, + "value": "var" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 28, + "name": "k", + "kind": "name", + "at": 26788, + "from_row": 870, + "to_row": 870 + }, + "kind": "==", + "at": 26790, + "from_row": 870, + "to_row": 870 + }, + "kind": "||", + "at": 26799, + "from_row": 870, + "to_row": 870 + } + }, + { + "to_row": 916, + "from_column": 8, + "to_column": 17, + "kind": "call", + "at": 28596, + "from_row": 916, + "expression": { + "to_column": 17, + "from_column": 10, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 916, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 28604, + "from_row": 916, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 28, + "name": "i", + "kind": "name", + "at": 28600, + "from_row": 916, + "to_row": 916 + }, + "kind": "+", + "at": 28602, + "from_row": 916, + "to_row": 916 + }, + "left": { + "to_column": 9, + "from_column": 8, + "level": 0, + "function_nr": 28, + "name": "i", + "kind": "name", + "at": 28596, + "from_row": 916, + "to_row": 916 + }, + "kind": "assign", + "at": 28598, + "from_row": 916, + "to_row": 916 + } + } + ], + "kind": "block", + "at": 26728, + "from_row": 867, + "to_row": 917 + } + ], + "kind": "while", + "at": 26702, + "from_row": 867, + "expression": { + "to_column": 30, + "from_column": 15, + "right": { + "list": [ + { + "to_column": 29, + "from_column": 24, + "level": 0, + "function_nr": 28, + "name": "stmts", + "kind": "name", + "at": 26720, + "from_row": 867, + "to_row": 867 + } + ], + "from_column": 23, + "to_row": 867, + "to_column": 30, + "kind": "(", + "at": 26719, + "from_row": 867, + "expression": { + "to_column": 23, + "from_column": 17, + "level": -1, + "name": "length", + "kind": "name", + "at": 26713, + "from_row": 867, + "to_row": 867 + } + }, + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 28, + "name": "i", + "kind": "name", + "at": 26709, + "from_row": 867, + "to_row": 867 + }, + "kind": "<", + "at": 26711, + "from_row": 867, + "to_row": 867 + } + } + ], + "to_column": 5, + "kind": "function", + "at": 26551, + "to_row": 918, + "outer": 29, + "list": [ + { + "to_column": 39, + "from_column": 34, + "name": "stmts", + "kind": "name", + "at": 26560, + "from_row": 860, + "to_row": 860 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 28, + "from_row": 860 + }, + "left": { + "to_column": 22, + "from_column": 4, + "level": 0, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 26530, + "from_row": 860, + "to_row": 860 + }, + "kind": "assign", + "at": 26549, + "from_row": 860, + "to_row": 918 + } + }, + { + "to_row": 920, + "from_column": 4, + "to_column": 38, + "kind": "call", + "at": 28625, + "from_row": 920, + "expression": { + "list": [ + { + "to_column": 37, + "from_column": 26, + "right": "statements", + "left": { + "to_column": 26, + "from_column": 23, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 28644, + "from_row": 920, + "to_row": 920 + }, + "kind": ".", + "at": 28647, + "from_row": 920, + "to_row": 920 + } + ], + "from_column": 22, + "to_row": 920, + "to_column": 38, + "kind": "(", + "at": 28643, + "from_row": 920, + "expression": { + "to_column": 22, + "from_column": 4, + "level": 0, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 28625, + "from_row": 920, + "to_row": 920 + } + } + }, + { + "to_row": 921, + "from_column": 4, + "to_column": 37, + "kind": "call", + "at": 28664, + "from_row": 921, + "expression": { + "list": [ + { + "to_column": 36, + "from_column": 26, + "right": "functions", + "left": { + "to_column": 26, + "from_column": 23, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 28683, + "from_row": 921, + "to_row": 921 + }, + "kind": ".", + "at": 28686, + "from_row": 921, + "to_row": 921 + } + ], + "from_column": 22, + "to_row": 921, + "to_column": 37, + "kind": "(", + "at": 28682, + "from_row": 921, + "expression": { + "to_column": 22, + "from_column": 4, + "level": 0, + "function_nr": 29, + "name": "collect_intrinsics", + "kind": "name", + "at": 28664, + "from_row": 921, + "to_row": 921 + } + } + }, + { + "to_column": 27, + "from_column": 4, + "right": { + "list": [], + "from_column": 25, + "to_column": 26, + "kind": "array", + "at": 28724, + "from_row": 923, + "to_row": 923 + }, + "left": { + "to_column": 22, + "from_column": 8, + "name": "new_intrinsics", + "kind": "name", + "at": 28707, + "from_row": 923, + "to_row": 923 + }, + "kind": "var", + "at": 28703, + "from_row": 923, + "to_row": 923 + }, + { + "to_row": 924, + "from_column": 4, + "to_column": 9, + "kind": "call", + "at": 28731, + "from_row": 924, + "expression": { + "to_column": 9, + "from_column": 6, + "right": { + "to_row": 924, + "from_column": 8, + "number": 0, + "to_column": 9, + "kind": "number", + "at": 28735, + "from_row": 924, + "value": "0" + }, + "left": { + "to_column": 5, + "from_column": 4, + "level": 0, + "function_nr": 29, + "name": "i", + "kind": "name", + "at": 28731, + "from_row": 924, + "to_row": 924 + }, + "kind": "assign", + "at": 28733, + "from_row": 924, + "to_row": 924 + } + }, + { + "to_row": 930, + "from_column": 4, + "to_column": 5, + "statements": [ + { + "to_column": 5, + "from_column": 39, + "statements": [ + { + "then": [ + { + "to_column": 7, + "from_column": 54, + "statements": [ + { + "to_row": 927, + "from_column": 8, + "to_column": 47, + "kind": "call", + "at": 28842, + "from_row": 927, + "expression": { + "list": [ + { + "to_column": 27, + "from_column": 13, + "level": 0, + "function_nr": 29, + "name": "new_intrinsics", + "kind": "name", + "at": 28847, + "from_row": 927, + "to_row": 927 + }, + { + "to_column": 46, + "from_column": 43, + "right": { + "to_column": 45, + "from_column": 44, + "level": 0, + "function_nr": 29, + "name": "i", + "kind": "name", + "at": 28878, + "from_row": 927, + "to_row": 927 + }, + "left": { + "to_column": 43, + "from_column": 32, + "right": "intrinsics", + "left": { + "to_column": 32, + "from_column": 29, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 28863, + "from_row": 927, + "to_row": 927 + }, + "kind": ".", + "at": 28866, + "from_row": 927, + "to_row": 927 + }, + "kind": "[", + "at": 28877, + "from_row": 927, + "to_row": 927 + } + ], + "from_column": 12, + "to_row": 927, + "to_column": 47, + "kind": "(", + "at": 28846, + "from_row": 927, + "expression": { + "to_column": 12, + "from_column": 8, + "level": -1, + "name": "push", + "kind": "name", + "at": 28842, + "from_row": 927, + "to_row": 927 + } + } + } + ], + "kind": "block", + "at": 28832, + "from_row": 926, + "to_row": 928 + } + ], + "from_column": 6, + "list": [], + "to_row": 928, + "to_column": 7, + "kind": "if", + "at": 28784, + "from_row": 926, + "expression": { + "to_column": 52, + "from_column": 45, + "right": { + "to_column": 52, + "from_column": 48, + "kind": "true", + "at": 28826, + "from_row": 926, + "to_row": 926 + }, + "left": { + "to_column": 44, + "from_column": 25, + "right": { + "to_column": 43, + "from_column": 40, + "right": { + "to_column": 42, + "from_column": 41, + "level": 0, + "function_nr": 29, + "name": "i", + "kind": "name", + "at": 28819, + "from_row": 926, + "to_row": 926 + }, + "left": { + "to_column": 40, + "from_column": 29, + "right": "intrinsics", + "left": { + "to_column": 29, + "from_column": 26, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 28804, + "from_row": 926, + "to_row": 926 + }, + "kind": ".", + "at": 28807, + "from_row": 926, + "to_row": 926 + }, + "kind": "[", + "at": 28818, + "from_row": 926, + "to_row": 926 + }, + "left": { + "to_column": 25, + "from_column": 10, + "level": 0, + "function_nr": 29, + "name": "used_intrinsics", + "kind": "name", + "at": 28788, + "from_row": 926, + "to_row": 926 + }, + "kind": "[", + "at": 28803, + "from_row": 926, + "to_row": 926 + }, + "kind": "==", + "at": 28823, + "from_row": 926, + "to_row": 926 + } + }, + { + "to_row": 929, + "from_column": 6, + "to_column": 15, + "kind": "call", + "at": 28896, + "from_row": 929, + "expression": { + "to_column": 15, + "from_column": 8, + "right": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 929, + "from_column": 14, + "number": 1, + "to_column": 15, + "kind": "number", + "at": 28904, + "from_row": 929, + "value": "1" + }, + "left": { + "to_column": 11, + "from_column": 10, + "level": 0, + "function_nr": 29, + "name": "i", + "kind": "name", + "at": 28900, + "from_row": 929, + "to_row": 929 + }, + "kind": "+", + "at": 28902, + "from_row": 929, + "to_row": 929 + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 29, + "name": "i", + "kind": "name", + "at": 28896, + "from_row": 929, + "to_row": 929 + }, + "kind": "assign", + "at": 28898, + "from_row": 929, + "to_row": 929 + } + } + ], + "kind": "block", + "at": 28776, + "from_row": 925, + "to_row": 930 + } + ], + "kind": "while", + "at": 28741, + "from_row": 925, + "expression": { + "to_column": 37, + "from_column": 13, + "right": { + "list": [ + { + "to_column": 36, + "from_column": 25, + "right": "intrinsics", + "left": { + "to_column": 25, + "from_column": 22, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 28759, + "from_row": 925, + "to_row": 925 + }, + "kind": ".", + "at": 28762, + "from_row": 925, + "to_row": 925 + } + ], + "from_column": 21, + "to_row": 925, + "to_column": 37, + "kind": "(", + "at": 28758, + "from_row": 925, + "expression": { + "to_column": 21, + "from_column": 15, + "level": -1, + "name": "length", + "kind": "name", + "at": 28752, + "from_row": 925, + "to_row": 925 + } + }, + "left": { + "to_column": 12, + "from_column": 11, + "level": 0, + "function_nr": 29, + "name": "i", + "kind": "name", + "at": 28748, + "from_row": 925, + "to_row": 925 + }, + "kind": "<", + "at": 28750, + "from_row": 925, + "to_row": 925 + } + }, + { + "to_row": 931, + "from_column": 4, + "to_column": 35, + "kind": "call", + "at": 28916, + "from_row": 931, + "expression": { + "to_column": 35, + "from_column": 19, + "right": { + "to_column": 35, + "from_column": 21, + "level": 0, + "function_nr": 29, + "name": "new_intrinsics", + "kind": "name", + "at": 28933, + "from_row": 931, + "to_row": 931 + }, + "left": { + "to_column": 18, + "from_column": 7, + "right": "intrinsics", + "left": { + "to_column": 7, + "from_column": 4, + "level": 1, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 28916, + "from_row": 931, + "to_row": 931 + }, + "kind": ".", + "at": 28919, + "from_row": 931, + "to_row": 931 + }, + "kind": "assign", + "at": 28931, + "from_row": 931, + "to_row": 931 + } + } + ], + "to_column": 3, + "kind": "function", + "at": 20602, + "to_row": 932, + "outer": 30, + "list": [], + "arity": 0, + "nr_close_slots": 6, + "function_nr": 29, + "from_row": 666 + }, + "left": { + "to_column": 13, + "from_column": 6, + "name": "cleanup", + "kind": "name", + "at": 20592, + "from_row": 666, + "to_row": 666 + }, + "kind": "var", + "at": 20588, + "from_row": 666, + "to_row": 932 + }, + { + "to_row": 938, + "from_column": 2, + "to_column": 12, + "kind": "call", + "at": 29098, + "from_row": 938, + "expression": { + "list": [], + "from_column": 10, + "to_row": 938, + "to_column": 12, + "arity": 0, + "kind": "(", + "at": 29106, + "from_row": 938, + "expression": { + "to_column": 10, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "pre_scan", + "kind": "name", + "at": 29098, + "from_row": 938, + "to_row": 938 + } + } + }, + { + "to_row": 941, + "from_column": 2, + "to_column": 48, + "kind": "call", + "at": 29159, + "from_row": 941, + "expression": { + "to_column": 48, + "from_column": 17, + "right": { + "list": [ + { + "to_column": 44, + "from_column": 33, + "right": "statements", + "left": { + "to_column": 33, + "from_column": 30, + "level": 0, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 29187, + "from_row": 941, + "to_row": 941 + }, + "kind": ".", + "at": 29190, + "from_row": 941, + "to_row": 941 + }, + { + "to_row": 941, + "from_column": 46, + "number": 0, + "to_column": 47, + "kind": "number", + "at": 29203, + "from_row": 941, + "value": "0" + } + ], + "from_column": 29, + "to_row": 941, + "to_column": 48, + "kind": "(", + "at": 29186, + "from_row": 941, + "expression": { + "to_column": 29, + "from_column": 19, + "level": 0, + "function_nr": 30, + "name": "fold_stmts", + "kind": "name", + "at": 29176, + "from_row": 941, + "to_row": 941 + } + }, + "left": { + "to_column": 16, + "from_column": 5, + "right": "statements", + "left": { + "to_column": 5, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 29159, + "from_row": 941, + "to_row": 941 + }, + "kind": ".", + "at": 29162, + "from_row": 941, + "to_row": 941 + }, + "kind": "assign", + "at": 29174, + "from_row": 941, + "to_row": 941 + } + }, + { + "to_column": 12, + "from_column": 2, + "right": { + "to_row": 942, + "from_column": 11, + "number": 0, + "to_column": 12, + "kind": "number", + "at": 29217, + "from_row": 942, + "value": "0" + }, + "left": { + "to_column": 8, + "from_column": 6, + "name": "fi", + "kind": "name", + "at": 29212, + "from_row": 942, + "to_row": 942 + }, + "kind": "var", + "at": 29208, + "from_row": 942, + "to_row": 942 + }, + { + "to_row": 946, + "from_column": 2, + "to_column": 3, + "statements": [ + { + "to_column": 3, + "from_column": 37, + "statements": [ + { + "to_row": 944, + "from_column": 4, + "to_column": 30, + "kind": "call", + "at": 29262, + "from_row": 944, + "expression": { + "list": [ + { + "to_column": 29, + "from_column": 25, + "right": { + "to_column": 28, + "from_column": 26, + "level": 0, + "function_nr": 30, + "name": "fi", + "kind": "name", + "at": 29284, + "from_row": 944, + "to_row": 944 + }, + "left": { + "to_column": 25, + "from_column": 15, + "right": "functions", + "left": { + "to_column": 15, + "from_column": 12, + "level": 0, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 29270, + "from_row": 944, + "to_row": 944 + }, + "kind": ".", + "at": 29273, + "from_row": 944, + "to_row": 944 + }, + "kind": "[", + "at": 29283, + "from_row": 944, + "to_row": 944 + } + ], + "from_column": 11, + "to_row": 944, + "to_column": 30, + "kind": "(", + "at": 29269, + "from_row": 944, + "expression": { + "to_column": 11, + "from_column": 4, + "level": 0, + "function_nr": 30, + "name": "fold_fn", + "kind": "name", + "at": 29262, + "from_row": 944, + "to_row": 944 + } + } + }, + { + "to_row": 945, + "from_column": 4, + "to_column": 15, + "kind": "call", + "at": 29293, + "from_row": 945, + "expression": { + "to_column": 15, + "from_column": 7, + "right": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 945, + "from_column": 14, + "number": 1, + "to_column": 15, + "kind": "number", + "at": 29303, + "from_row": 945, + "value": "1" + }, + "left": { + "to_column": 11, + "from_column": 9, + "level": 0, + "function_nr": 30, + "name": "fi", + "kind": "name", + "at": 29298, + "from_row": 945, + "to_row": 945 + }, + "kind": "+", + "at": 29301, + "from_row": 945, + "to_row": 945 + }, + "left": { + "to_column": 6, + "from_column": 4, + "level": 0, + "function_nr": 30, + "name": "fi", + "kind": "name", + "at": 29293, + "from_row": 945, + "to_row": 945 + }, + "kind": "assign", + "at": 29296, + "from_row": 945, + "to_row": 945 + } + } + ], + "kind": "block", + "at": 29256, + "from_row": 943, + "to_row": 946 + } + ], + "kind": "while", + "at": 29221, + "from_row": 943, + "expression": { + "to_column": 35, + "from_column": 12, + "right": { + "list": [ + { + "to_column": 34, + "from_column": 24, + "right": "functions", + "left": { + "to_column": 24, + "from_column": 21, + "level": 0, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 29240, + "from_row": 943, + "to_row": 943 + }, + "kind": ".", + "at": 29243, + "from_row": 943, + "to_row": 943 + } + ], + "from_column": 20, + "to_row": 943, + "to_column": 35, + "kind": "(", + "at": 29239, + "from_row": 943, + "expression": { + "to_column": 20, + "from_column": 14, + "level": -1, + "name": "length", + "kind": "name", + "at": 29233, + "from_row": 943, + "to_row": 943 + } + }, + "left": { + "to_column": 11, + "from_column": 9, + "level": 0, + "function_nr": 30, + "name": "fi", + "kind": "name", + "at": 29228, + "from_row": 943, + "to_row": 943 + }, + "kind": "<", + "at": 29231, + "from_row": 943, + "to_row": 943 + } + }, + { + "to_column": 19, + "from_column": 2, + "right": { + "list": [], + "from_column": 17, + "to_column": 18, + "kind": "array", + "at": 29364, + "from_row": 949, + "to_row": 949 + }, + "left": { + "to_column": 14, + "from_column": 6, + "name": "live_fns", + "kind": "name", + "at": 29353, + "from_row": 949, + "to_row": 949 + }, + "kind": "var", + "at": 29349, + "from_row": 949, + "to_row": 949 + }, + { + "to_column": 15, + "from_column": 2, + "right": { + "to_column": 15, + "from_column": 11, + "kind": "null", + "at": 29378, + "from_row": 950, + "to_row": 950 + }, + "left": { + "to_column": 8, + "from_column": 6, + "name": "fn", + "kind": "name", + "at": 29373, + "from_row": 950, + "to_row": 950 + }, + "kind": "var", + "at": 29369, + "from_row": 950, + "to_row": 950 + }, + { + "to_row": 951, + "from_column": 2, + "to_column": 8, + "kind": "call", + "at": 29385, + "from_row": 951, + "expression": { + "to_column": 8, + "from_column": 5, + "right": { + "to_row": 951, + "from_column": 7, + "number": 0, + "to_column": 8, + "kind": "number", + "at": 29390, + "from_row": 951, + "value": "0" + }, + "left": { + "to_column": 4, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "fi", + "kind": "name", + "at": 29385, + "from_row": 951, + "to_row": 951 + }, + "kind": "assign", + "at": 29388, + "from_row": 951, + "to_row": 951 + } + }, + { + "to_row": 958, + "from_column": 2, + "to_column": 3, + "statements": [ + { + "to_column": 3, + "from_column": 37, + "statements": [ + { + "to_row": 953, + "from_column": 4, + "to_column": 26, + "kind": "call", + "at": 29435, + "from_row": 953, + "expression": { + "to_column": 26, + "from_column": 7, + "right": { + "to_column": 26, + "from_column": 22, + "right": { + "to_column": 25, + "from_column": 23, + "level": 0, + "function_nr": 30, + "name": "fi", + "kind": "name", + "at": 29454, + "from_row": 953, + "to_row": 953 + }, + "left": { + "to_column": 22, + "from_column": 12, + "right": "functions", + "left": { + "to_column": 12, + "from_column": 9, + "level": 0, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 29440, + "from_row": 953, + "to_row": 953 + }, + "kind": ".", + "at": 29443, + "from_row": 953, + "to_row": 953 + }, + "kind": "[", + "at": 29453, + "from_row": 953, + "to_row": 953 + }, + "left": { + "to_column": 6, + "from_column": 4, + "level": 0, + "function_nr": 30, + "name": "fn", + "kind": "name", + "at": 29435, + "from_row": 953, + "to_row": 953 + }, + "kind": "assign", + "at": 29438, + "from_row": 953, + "to_row": 953 + } + }, + { + "then": [ + { + "to_column": 5, + "from_column": 25, + "statements": [ + { + "to_row": 955, + "from_column": 6, + "to_column": 24, + "kind": "call", + "at": 29491, + "from_row": 955, + "expression": { + "list": [ + { + "to_column": 19, + "from_column": 11, + "level": 0, + "function_nr": 30, + "name": "live_fns", + "kind": "name", + "at": 29496, + "from_row": 955, + "to_row": 955 + }, + { + "to_column": 23, + "from_column": 21, + "level": 0, + "function_nr": 30, + "name": "fn", + "kind": "name", + "at": 29506, + "from_row": 955, + "to_row": 955 + } + ], + "from_column": 10, + "to_row": 955, + "to_column": 24, + "kind": "(", + "at": 29495, + "from_row": 955, + "expression": { + "to_column": 10, + "from_column": 6, + "level": -1, + "name": "push", + "kind": "name", + "at": 29491, + "from_row": 955, + "to_row": 955 + } + } + } + ], + "kind": "block", + "at": 29483, + "from_row": 954, + "to_row": 956 + } + ], + "from_column": 4, + "list": [], + "to_row": 956, + "to_column": 5, + "kind": "if", + "at": 29462, + "from_row": 954, + "expression": { + "to_column": 23, + "from_column": 16, + "right": { + "to_column": 23, + "from_column": 19, + "kind": "true", + "at": 29477, + "from_row": 954, + "to_row": 954 + }, + "left": { + "to_column": 15, + "from_column": 10, + "right": "dead", + "left": { + "to_column": 10, + "from_column": 8, + "level": 0, + "function_nr": 30, + "name": "fn", + "kind": "name", + "at": 29466, + "from_row": 954, + "to_row": 954 + }, + "kind": ".", + "at": 29468, + "from_row": 954, + "to_row": 954 + }, + "kind": "!=", + "at": 29474, + "from_row": 954, + "to_row": 954 + } + }, + { + "to_row": 957, + "from_column": 4, + "to_column": 15, + "kind": "call", + "at": 29520, + "from_row": 957, + "expression": { + "to_column": 15, + "from_column": 7, + "right": { + "to_column": 15, + "from_column": 12, + "right": { + "to_row": 957, + "from_column": 14, + "number": 1, + "to_column": 15, + "kind": "number", + "at": 29530, + "from_row": 957, + "value": "1" + }, + "left": { + "to_column": 11, + "from_column": 9, + "level": 0, + "function_nr": 30, + "name": "fi", + "kind": "name", + "at": 29525, + "from_row": 957, + "to_row": 957 + }, + "kind": "+", + "at": 29528, + "from_row": 957, + "to_row": 957 + }, + "left": { + "to_column": 6, + "from_column": 4, + "level": 0, + "function_nr": 30, + "name": "fi", + "kind": "name", + "at": 29520, + "from_row": 957, + "to_row": 957 + }, + "kind": "assign", + "at": 29523, + "from_row": 957, + "to_row": 957 + } + } + ], + "kind": "block", + "at": 29429, + "from_row": 952, + "to_row": 958 + } + ], + "kind": "while", + "at": 29394, + "from_row": 952, + "expression": { + "to_column": 35, + "from_column": 12, + "right": { + "list": [ + { + "to_column": 34, + "from_column": 24, + "right": "functions", + "left": { + "to_column": 24, + "from_column": 21, + "level": 0, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 29413, + "from_row": 952, + "to_row": 952 + }, + "kind": ".", + "at": 29416, + "from_row": 952, + "to_row": 952 + } + ], + "from_column": 20, + "to_row": 952, + "to_column": 35, + "kind": "(", + "at": 29412, + "from_row": 952, + "expression": { + "to_column": 20, + "from_column": 14, + "level": -1, + "name": "length", + "kind": "name", + "at": 29406, + "from_row": 952, + "to_row": 952 + } + }, + "left": { + "to_column": 11, + "from_column": 9, + "level": 0, + "function_nr": 30, + "name": "fi", + "kind": "name", + "at": 29401, + "from_row": 952, + "to_row": 952 + }, + "kind": "<", + "at": 29404, + "from_row": 952, + "to_row": 952 + } + }, + { + "to_row": 959, + "from_column": 2, + "to_column": 26, + "kind": "call", + "at": 29538, + "from_row": 959, + "expression": { + "to_column": 26, + "from_column": 16, + "right": { + "to_column": 26, + "from_column": 18, + "level": 0, + "function_nr": 30, + "name": "live_fns", + "kind": "name", + "at": 29554, + "from_row": 959, + "to_row": 959 + }, + "left": { + "to_column": 15, + "from_column": 5, + "right": "functions", + "left": { + "to_column": 5, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 29538, + "from_row": 959, + "to_row": 959 + }, + "kind": ".", + "at": 29541, + "from_row": 959, + "to_row": 959 + }, + "kind": "assign", + "at": 29552, + "from_row": 959, + "to_row": 959 + } + }, + { + "to_row": 962, + "from_column": 2, + "to_column": 11, + "kind": "call", + "at": 29587, + "from_row": 962, + "expression": { + "list": [], + "from_column": 9, + "to_row": 962, + "to_column": 11, + "arity": 0, + "kind": "(", + "at": 29594, + "from_row": 962, + "expression": { + "to_column": 9, + "from_column": 2, + "level": 0, + "function_nr": 30, + "name": "cleanup", + "kind": "name", + "at": 29587, + "from_row": 962, + "to_row": 962 + } + } + }, + { + "to_row": 964, + "from_column": 2, + "to_column": 12, + "kind": "return", + "at": 29600, + "from_row": 964, + "expression": { + "to_column": 12, + "from_column": 9, + "level": 0, + "function_nr": 30, + "name": "ast", + "kind": "name", + "at": 29607, + "from_row": 964, + "to_row": 964 + } + } + ], + "to_column": 1, + "kind": "function", + "at": 112, + "to_row": 965, + "outer": 0, + "list": [ + { + "to_column": 23, + "from_column": 20, + "name": "ast", + "kind": "name", + "at": 121, + "from_row": 3, + "to_row": 3 + } + ], + "arity": 1, + "nr_close_slots": 26, + "function_nr": 30, + "from_row": 3 + }, + "left": { + "to_column": 8, + "from_column": 4, + "name": "fold", + "kind": "name", + "at": 105, + "from_row": 3, + "to_row": 3 + }, + "kind": "var", + "at": 101, + "from_row": 3, + "to_row": 965 + }, + { + "to_row": 967, + "from_column": 0, + "to_column": 11, + "kind": "return", + "at": 29614, + "from_row": 967, + "expression": { + "to_column": 11, + "from_column": 7, + "level": 0, + "function_nr": 0, + "name": "fold", + "kind": "name", + "at": 29621, + "from_row": 967, + "to_row": 967 + } + } + ], + "filename": "fold.cm", + "kind": "program", + "intrinsics": [ + "length", + "text", + "number", + "push", + "array" + ] +} \ No newline at end of file diff --git a/fold.ce b/fold.ce new file mode 100644 index 00000000..0881f8b8 --- /dev/null +++ b/fold.ce @@ -0,0 +1,13 @@ +var fd = use("fd") +var json = use("json") + +var filename = args[0] +var src = text(fd.slurp(filename)) +var tokenize = use("tokenize") +var parse = use("parse") +var fold = use("fold") + +var tok_result = tokenize(src, filename) +var ast = parse(tok_result.tokens, src, filename, tokenize) +var folded = fold(ast) +print(json.encode(folded)) diff --git a/fold.cm b/fold.cm new file mode 100644 index 00000000..f1ed7cc9 --- /dev/null +++ b/fold.cm @@ -0,0 +1,968 @@ +// fold.cm — AST optimization pass +// Constant folding, constant propagation, dead code elimination + +var fold = function(ast) { + var scopes = ast.scopes + var nr_scopes = length(scopes) + + // ============================================================ + // Helpers + // ============================================================ + + var is_literal = function(expr) { + if (expr == null) return false + var k = expr.kind + return k == "number" || k == "text" || k == "true" || k == "false" || k == "null" + } + + var is_pure = function(expr) { + if (expr == null) return true + var k = expr.kind + var i = 0 + if (k == "number" || k == "text" || k == "true" || k == "false" || + k == "null" || k == "name" || k == "this") return true + if (k == "function") return true + if (k == "!" || k == "~" || k == "-unary" || k == "+unary") { + return is_pure(expr.expression) + } + if (k == "array") { + i = 0 + while (i < length(expr.list)) { + if (!is_pure(expr.list[i])) return false + i = i + 1 + } + return true + } + if (k == "record") { + i = 0 + while (i < length(expr.list)) { + if (!is_pure(expr.list[i].right)) return false + i = i + 1 + } + return true + } + if (k == "then") { + return is_pure(expr.expression) && is_pure(expr.then) && is_pure(expr.else) + } + if (k == "==" || k == "!=" || k == "&&" || k == "||") { + return is_pure(expr.left) && is_pure(expr.right) + } + return false + } + + var copy_loc = function(from, to) { + to.at = from.at + to.from_row = from.from_row + to.from_column = from.from_column + to.to_row = from.to_row + to.to_column = from.to_column + return to + } + + var make_number = function(val, src) { + return copy_loc(src, {kind: "number", value: text(val), number: val}) + } + + var make_text = function(val, src) { + return copy_loc(src, {kind: "text", value: val}) + } + + var make_bool = function(val, src) { + if (val) return copy_loc(src, {kind: "true"}) + return copy_loc(src, {kind: "false"}) + } + + var make_null = function(src) { + return copy_loc(src, {kind: "null"}) + } + + var is_truthy_literal = function(expr) { + if (expr == null) return null + var k = expr.kind + var nv = null + if (k == "true") return true + if (k == "false" || k == "null") return false + if (k == "number") { + nv = expr.number + if (nv == null) nv = number(expr.value) + return nv != 0 + } + if (k == "text") return length(expr.value) > 0 + return null + } + + // ============================================================ + // Scope helpers + // ============================================================ + + var find_scope = function(fn_nr) { + var i = 0 + while (i < nr_scopes) { + if (scopes[i].function_nr == fn_nr) return scopes[i] + i = i + 1 + } + return null + } + + var scope_var = function(fn_nr, name) { + var sc = find_scope(fn_nr) + if (sc == null) return null + return sc[name] + } + + var remove_scope_var = function(fn_nr, name) { + var sc = find_scope(fn_nr) + if (sc == null) return null + delete sc[name] + } + + // ============================================================ + // Pass 1: pre-scan for constants and function arities + // ============================================================ + + var const_defs = {} + var fn_arities = {} + + var register_const = function(fn_nr, name, lit_node) { + var key = text(fn_nr) + if (const_defs[key] == null) const_defs[key] = {} + const_defs[key][name] = lit_node + } + + var get_const = function(fn_nr, name) { + var key = text(fn_nr) + if (const_defs[key] == null) return null + return const_defs[key][name] + } + + var register_arity = function(fn_nr, name, count) { + var key = text(fn_nr) + if (fn_arities[key] == null) fn_arities[key] = {} + fn_arities[key][name] = count + } + + var pre_scan_stmts = null + var pre_scan_fn = null + + pre_scan_fn = function(node) { + if (node == null) return null + if (node.statements != null) pre_scan_stmts(node.statements, node.function_nr) + if (node.disruption != null) pre_scan_stmts(node.disruption, node.function_nr) + } + + pre_scan_stmts = function(stmts, fn_nr) { + var i = 0 + var j = 0 + var stmt = null + var kind = null + var name = null + var sv = null + var item = null + while (i < length(stmts)) { + stmt = stmts[i] + kind = stmt.kind + if (kind == "def") { + name = stmt.left.name + if (name != null && is_literal(stmt.right)) { + sv = scope_var(fn_nr, name) + if (sv != null && !sv.closure) { + register_const(fn_nr, name, stmt.right) + } + } + } else if (kind == "function") { + name = stmt.name + if (name != null && stmt.arity != null) { + register_arity(fn_nr, name, stmt.arity) + } + pre_scan_fn(stmt) + } else if (kind == "var") { + if (stmt.right != null && stmt.right.kind == "function" && stmt.right.arity != null) { + name = stmt.left.name + if (name != null) { + sv = scope_var(fn_nr, name) + if (sv != null && sv.make == "var") { + register_arity(fn_nr, name, stmt.right.arity) + } + } + } + } else if (kind == "var_list") { + j = 0 + while (j < length(stmt.list)) { + item = stmt.list[j] + if (item.kind == "var" && item.right != null && item.right.kind == "function" && item.right.arity != null) { + name = item.left.name + if (name != null) { + sv = scope_var(fn_nr, name) + if (sv != null && sv.make == "var") { + register_arity(fn_nr, name, item.right.arity) + } + } + } + j = j + 1 + } + } + i = i + 1 + } + } + + var pre_scan_expr_fns = null + pre_scan_expr_fns = function(expr) { + if (expr == null) return null + var k = expr.kind + var i = 0 + if (k == "function") { + pre_scan_fn(expr) + } + if (expr.left != null) pre_scan_expr_fns(expr.left) + if (expr.right != null) pre_scan_expr_fns(expr.right) + if (expr.expression != null) pre_scan_expr_fns(expr.expression) + if (expr.then != null) pre_scan_expr_fns(expr.then) + if (expr.else != null) pre_scan_expr_fns(expr.else) + if (k == "(" || k == "array") { + i = 0 + while (i < length(expr.list)) { + pre_scan_expr_fns(expr.list[i]) + i = i + 1 + } + } + if (k == "record") { + i = 0 + while (i < length(expr.list)) { + pre_scan_expr_fns(expr.list[i].right) + i = i + 1 + } + } + } + + var pre_scan_stmt_exprs = null + pre_scan_stmt_exprs = function(stmts, fn_nr) { + var i = 0 + var j = 0 + var stmt = null + var kind = null + while (i < length(stmts)) { + stmt = stmts[i] + kind = stmt.kind + if (kind == "var" || kind == "def") { + pre_scan_expr_fns(stmt.right) + } else if (kind == "var_list") { + j = 0 + while (j < length(stmt.list)) { + pre_scan_expr_fns(stmt.list[j].right) + j = j + 1 + } + } else if (kind == "call") { + pre_scan_expr_fns(stmt.expression) + } else if (kind == "if") { + pre_scan_expr_fns(stmt.expression) + pre_scan_stmt_exprs(stmt.then, fn_nr) + pre_scan_stmt_exprs(stmt.list, fn_nr) + if (stmt.else != null) pre_scan_stmt_exprs(stmt.else, fn_nr) + } else if (kind == "while" || kind == "do") { + pre_scan_expr_fns(stmt.expression) + pre_scan_stmt_exprs(stmt.statements, fn_nr) + } else if (kind == "for") { + if (stmt.init != null) { + if (stmt.init.kind == "var" || stmt.init.kind == "def") { + pre_scan_expr_fns(stmt.init.right) + } else { + pre_scan_expr_fns(stmt.init) + } + } + pre_scan_expr_fns(stmt.test) + pre_scan_expr_fns(stmt.update) + pre_scan_stmt_exprs(stmt.statements, fn_nr) + } else if (kind == "return" || kind == "go") { + pre_scan_expr_fns(stmt.expression) + } else if (kind == "block") { + pre_scan_stmt_exprs(stmt.statements, fn_nr) + } else if (kind == "label") { + if (stmt.statement != null) { + pre_scan_stmt_exprs([stmt.statement], fn_nr) + } + } else if (kind == "function") { + // already handled in pre_scan_stmts + null + } + i = i + 1 + } + } + + var pre_scan = function() { + pre_scan_stmts(ast.statements, 0) + pre_scan_stmts(ast.functions, 0) + pre_scan_stmt_exprs(ast.statements, 0) + pre_scan_stmt_exprs(ast.functions, 0) + } + + // ============================================================ + // Pass 2: fold expressions and statements + // ============================================================ + + var fold_expr = null + var fold_stmt = null + var fold_stmts = null + + fold_expr = function(expr, fn_nr) { + if (expr == null) return null + var k = expr.kind + var left = null + var right = null + var lv = null + var rv = null + var result = null + var i = 0 + var sv = null + var lit = null + var cond_k = null + var ek = null + var target = null + var ar = null + var akey = null + var tv = null + + // Recurse into children first (bottom-up) + if (k == "+" || k == "-" || k == "*" || k == "/" || k == "%" || + k == "**" || k == "==" || k == "!=" || k == "<" || k == ">" || + k == "<=" || k == ">=" || k == "&" || k == "|" || k == "^" || + k == "<<" || k == ">>" || k == ">>>" || k == "&&" || k == "||" || + k == "," || k == "in") { + expr.left = fold_expr(expr.left, fn_nr) + expr.right = fold_expr(expr.right, fn_nr) + } else if (k == "." || k == "[") { + expr.left = fold_expr(expr.left, fn_nr) + if (k == "[" && expr.right != null) expr.right = fold_expr(expr.right, fn_nr) + } else if (k == "!" || k == "~" || k == "-unary" || k == "+unary" || k == "delete") { + expr.expression = fold_expr(expr.expression, fn_nr) + } else if (k == "++" || k == "--") { + return expr + } else if (k == "then") { + expr.expression = fold_expr(expr.expression, fn_nr) + expr.then = fold_expr(expr.then, fn_nr) + expr.else = fold_expr(expr.else, fn_nr) + } else if (k == "(") { + expr.expression = fold_expr(expr.expression, fn_nr) + i = 0 + while (i < length(expr.list)) { + expr.list[i] = fold_expr(expr.list[i], fn_nr) + i = i + 1 + } + } else if (k == "array") { + i = 0 + while (i < length(expr.list)) { + expr.list[i] = fold_expr(expr.list[i], fn_nr) + i = i + 1 + } + } else if (k == "record") { + i = 0 + while (i < length(expr.list)) { + expr.list[i].right = fold_expr(expr.list[i].right, fn_nr) + i = i + 1 + } + } else if (k == "text literal") { + i = 0 + while (i < length(expr.list)) { + expr.list[i] = fold_expr(expr.list[i], fn_nr) + i = i + 1 + } + } else if (k == "function") { + fold_fn(expr) + return expr + } else if (k == "assign" || k == "+=" || k == "-=" || k == "*=" || + k == "/=" || k == "%=" || k == "<<=" || k == ">>=" || + k == ">>>=" || k == "&=" || k == "^=" || k == "|=" || + k == "**=" || k == "&&=" || k == "||=") { + expr.right = fold_expr(expr.right, fn_nr) + return expr + } + + // Constant propagation: name → literal + if (k == "name" && expr.level == 0) { + lit = get_const(fn_nr, expr.name) + if (lit != null) { + sv = scope_var(fn_nr, expr.name) + if (sv != null && !sv.closure) { + return copy_loc(expr, {kind: lit.kind, value: lit.value, number: lit.number}) + } + } + return expr + } + + // Binary constant folding + if (k == "+" || k == "-" || k == "*" || k == "/" || k == "%" || k == "**") { + left = expr.left + right = expr.right + if (left != null && right != null && left.kind == "number" && right.kind == "number") { + lv = left.number + rv = right.number + if (lv == null) lv = number(left.value) + if (rv == null) rv = number(right.value) + if (k == "/") { + if (rv == 0) return make_null(expr) + } + if (k == "%") { + if (rv == 0) return make_null(expr) + } + result = null + if (k == "+") result = lv + rv + else if (k == "-") result = lv - rv + else if (k == "*") result = lv * rv + else if (k == "/") result = lv / rv + else if (k == "%") result = lv % rv + else if (k == "**") result = lv ** rv + if (result == null) return make_null(expr) + return make_number(result, expr) + } + // text + text + if (k == "+" && left != null && right != null && left.kind == "text" && right.kind == "text") { + return make_text(left.value + right.value, expr) + } + return expr + } + + // Comparison folding + if (k == "==" || k == "!=" || k == "<" || k == ">" || k == "<=" || k == ">=") { + left = expr.left + right = expr.right + if (left != null && right != null) { + if (left.kind == "number" && right.kind == "number") { + lv = left.number + rv = right.number + if (lv == null) lv = number(left.value) + if (rv == null) rv = number(right.value) + if (k == "==") return make_bool(lv == rv, expr) + if (k == "!=") return make_bool(lv != rv, expr) + if (k == "<") return make_bool(lv < rv, expr) + if (k == ">") return make_bool(lv > rv, expr) + if (k == "<=") return make_bool(lv <= rv, expr) + if (k == ">=") return make_bool(lv >= rv, expr) + } + if (left.kind == "text" && right.kind == "text") { + if (k == "==") return make_bool(left.value == right.value, expr) + if (k == "!=") return make_bool(left.value != right.value, expr) + } + } + return expr + } + + // Bitwise folding + if (k == "&" || k == "|" || k == "^" || k == "<<" || k == ">>") { + left = expr.left + right = expr.right + if (left != null && right != null && left.kind == "number" && right.kind == "number") { + lv = left.number + rv = right.number + if (lv == null) lv = number(left.value) + if (rv == null) rv = number(right.value) + if (k == "&") return make_number(lv & rv, expr) + if (k == "|") return make_number(lv | rv, expr) + if (k == "^") return make_number(lv ^ rv, expr) + if (k == "<<") return make_number(lv << rv, expr) + if (k == ">>") return make_number(lv >> rv, expr) + } + return expr + } + + // Unary folding + if (k == "!") { + if (expr.expression != null) { + ek = expr.expression.kind + if (ek == "true") return make_bool(false, expr) + if (ek == "false") return make_bool(true, expr) + } + return expr + } + if (k == "~") { + if (expr.expression != null && expr.expression.kind == "number") { + lv = expr.expression.number + if (lv == null) lv = number(expr.expression.value) + return make_number(~lv, expr) + } + return expr + } + if (k == "-unary") { + if (expr.expression != null && expr.expression.kind == "number") { + lv = expr.expression.number + if (lv == null) lv = number(expr.expression.value) + return make_number(0 - lv, expr) + } + return expr + } + + // Ternary with literal condition + if (k == "then") { + tv = is_truthy_literal(expr.expression) + if (tv == true) return expr.then + if (tv == false) return expr.else + return expr + } + + // Call: stamp arity + if (k == "(") { + target = expr.expression + if (target != null && target.kind == "name" && target.level == 0) { + ar = null + akey = text(fn_nr) + if (fn_arities[akey] != null) ar = fn_arities[akey][target.name] + if (ar != null) expr.arity = ar + } + return expr + } + + return expr + } + + var fold_fn = null + + fold_stmt = function(stmt, fn_nr) { + if (stmt == null) return null + var k = stmt.kind + var i = 0 + var sv = null + var cond_k = null + var ik = null + var tv = null + + if (k == "var" || k == "def") { + stmt.right = fold_expr(stmt.right, fn_nr) + return stmt + } + if (k == "var_list") { + i = 0 + while (i < length(stmt.list)) { + stmt.list[i] = fold_stmt(stmt.list[i], fn_nr) + i = i + 1 + } + return stmt + } + if (k == "call") { + stmt.expression = fold_expr(stmt.expression, fn_nr) + return stmt + } + if (k == "if") { + stmt.expression = fold_expr(stmt.expression, fn_nr) + tv = is_truthy_literal(stmt.expression) + if (tv == true) { + stmt.then = fold_stmts(stmt.then, fn_nr) + return {kind: "block", statements: stmt.then, + at: stmt.at, from_row: stmt.from_row, from_column: stmt.from_column, + to_row: stmt.to_row, to_column: stmt.to_column} + } + if (tv == false) { + if (stmt.else != null && length(stmt.else) > 0) { + stmt.else = fold_stmts(stmt.else, fn_nr) + return {kind: "block", statements: stmt.else, + at: stmt.at, from_row: stmt.from_row, from_column: stmt.from_column, + to_row: stmt.to_row, to_column: stmt.to_column} + } + if (stmt.list != null && length(stmt.list) > 0) { + return fold_stmt(stmt.list[0], fn_nr) + } + return null + } + stmt.then = fold_stmts(stmt.then, fn_nr) + stmt.list = fold_stmts(stmt.list, fn_nr) + if (stmt.else != null) stmt.else = fold_stmts(stmt.else, fn_nr) + return stmt + } + if (k == "while") { + stmt.expression = fold_expr(stmt.expression, fn_nr) + if (stmt.expression.kind == "false" || stmt.expression.kind == "null") return null + stmt.statements = fold_stmts(stmt.statements, fn_nr) + return stmt + } + if (k == "do") { + stmt.statements = fold_stmts(stmt.statements, fn_nr) + stmt.expression = fold_expr(stmt.expression, fn_nr) + return stmt + } + if (k == "for") { + if (stmt.init != null) { + ik = stmt.init.kind + if (ik == "var" || ik == "def") { + stmt.init = fold_stmt(stmt.init, fn_nr) + } else { + stmt.init = fold_expr(stmt.init, fn_nr) + } + } + if (stmt.test != null) stmt.test = fold_expr(stmt.test, fn_nr) + if (stmt.update != null) stmt.update = fold_expr(stmt.update, fn_nr) + stmt.statements = fold_stmts(stmt.statements, fn_nr) + return stmt + } + if (k == "return" || k == "go") { + stmt.expression = fold_expr(stmt.expression, fn_nr) + return stmt + } + if (k == "block") { + stmt.statements = fold_stmts(stmt.statements, fn_nr) + return stmt + } + if (k == "label") { + stmt.statement = fold_stmt(stmt.statement, fn_nr) + return stmt + } + if (k == "function") { + fold_fn(stmt) + return stmt + } + return stmt + } + + fold_stmts = function(stmts, fn_nr) { + var i = 0 + var stmt = null + var out = [] + var sv = null + var name = null + while (i < length(stmts)) { + stmt = fold_stmt(stmts[i], fn_nr) + if (stmt == null) { + i = i + 1 + continue + } + // Dead code elimination: unused pure var/def + if (stmt.kind == "var" || stmt.kind == "def") { + name = stmt.left.name + if (name != null) { + sv = scope_var(fn_nr, name) + if (sv != null && sv.nr_uses == 0 && is_pure(stmt.right)) { + stmt.dead = true + } + } + } + // Dead function elimination + if (stmt.kind == "function" && stmt.name != null) { + sv = scope_var(fn_nr, stmt.name) + if (sv != null && sv.nr_uses == 0) { + stmt.dead = true + } + } + if (stmt.dead != true) push(out, stmt) + i = i + 1 + } + return out + } + + fold_fn = function(node) { + if (node == null) return null + var fn_nr = node.function_nr + if (fn_nr == null) return null + // Fold param defaults + var i = 0 + while (i < length(node.list)) { + if (node.list[i].expression != null) { + node.list[i].expression = fold_expr(node.list[i].expression, fn_nr) + } + i = i + 1 + } + if (node.statements != null) node.statements = fold_stmts(node.statements, fn_nr) + if (node.disruption != null) node.disruption = fold_stmts(node.disruption, fn_nr) + } + + // ============================================================ + // Pass 3: cleanup scopes + // ============================================================ + + var cleanup = function() { + var i = 0 + var sc = null + var keys = null + var j = 0 + var key = null + var entry = null + var slots = 0 + var close_slots = 0 + + // Remove dead vars from scope records and recalculate slot counts + while (i < nr_scopes) { + sc = scopes[i] + keys = array(sc) + slots = 0 + close_slots = 0 + j = 0 + while (j < length(keys)) { + key = keys[j] + if (key != "function_nr") { + entry = sc[key] + if (entry != null && entry.nr_uses == 0 && entry.make != "input" && entry.make != "function") { + delete sc[key] + } else if (entry != null) { + slots = slots + 1 + if (entry.closure) close_slots = close_slots + 1 + } + } + j = j + 1 + } + i = i + 1 + } + + // Update nr_slots and nr_close_slots on function nodes + var update_fn_slots = null + update_fn_slots = function(node) { + if (node == null) return null + var fn_nr = node.function_nr + if (fn_nr == null) return null + var sc = find_scope(fn_nr) + if (sc == null) return null + var keys = array(sc) + var s = 0 + var cs = 0 + var ki = 0 + var ent = null + while (ki < length(keys)) { + if (keys[ki] != "function_nr") { + ent = sc[keys[ki]] + if (ent != null) { + s = s + 1 + if (ent.closure) cs = cs + 1 + } + } + ki = ki + 1 + } + node.nr_slots = s + node.nr_close_slots = cs + } + + var walk_stmts_for_fns = null + var walk_expr_for_fns = null + + walk_expr_for_fns = function(expr) { + if (expr == null) return null + var k = expr.kind + var i = 0 + if (k == "function") { + update_fn_slots(expr) + walk_stmts_for_fns(expr.statements) + walk_stmts_for_fns(expr.disruption) + return null + } + if (expr.left != null) walk_expr_for_fns(expr.left) + if (expr.right != null) walk_expr_for_fns(expr.right) + if (expr.expression != null) walk_expr_for_fns(expr.expression) + if (expr.then != null) walk_expr_for_fns(expr.then) + if (expr.else != null) walk_expr_for_fns(expr.else) + if (k == "(" || k == "array" || k == "text literal") { + i = 0 + while (i < length(expr.list)) { + walk_expr_for_fns(expr.list[i]) + i = i + 1 + } + } + if (k == "record") { + i = 0 + while (i < length(expr.list)) { + walk_expr_for_fns(expr.list[i].right) + i = i + 1 + } + } + } + + walk_stmts_for_fns = function(stmts) { + if (stmts == null) return null + var i = 0 + var j = 0 + var stmt = null + var k = null + while (i < length(stmts)) { + stmt = stmts[i] + k = stmt.kind + if (k == "function") { + update_fn_slots(stmt) + walk_stmts_for_fns(stmt.statements) + walk_stmts_for_fns(stmt.disruption) + } else if (k == "var" || k == "def") { + walk_expr_for_fns(stmt.right) + } else if (k == "var_list") { + j = 0 + while (j < length(stmt.list)) { + walk_expr_for_fns(stmt.list[j].right) + j = j + 1 + } + } else if (k == "call") { + walk_expr_for_fns(stmt.expression) + } else if (k == "if") { + walk_expr_for_fns(stmt.expression) + walk_stmts_for_fns(stmt.then) + walk_stmts_for_fns(stmt.list) + if (stmt.else != null) walk_stmts_for_fns(stmt.else) + } else if (k == "while" || k == "do") { + walk_expr_for_fns(stmt.expression) + walk_stmts_for_fns(stmt.statements) + } else if (k == "for") { + if (stmt.init != null) { + if (stmt.init.kind == "var" || stmt.init.kind == "def") { + walk_expr_for_fns(stmt.init.right) + } else { + walk_expr_for_fns(stmt.init) + } + } + walk_expr_for_fns(stmt.test) + walk_expr_for_fns(stmt.update) + walk_stmts_for_fns(stmt.statements) + } else if (k == "return" || k == "go") { + walk_expr_for_fns(stmt.expression) + } else if (k == "block") { + walk_stmts_for_fns(stmt.statements) + } else if (k == "label") { + if (stmt.statement != null) walk_stmts_for_fns([stmt.statement]) + } + i = i + 1 + } + } + + walk_stmts_for_fns(ast.statements) + walk_stmts_for_fns(ast.functions) + + // Update intrinsics: collect what's still referenced + var used_intrinsics = {} + var collect_intrinsics = null + var collect_expr_intrinsics = null + + collect_expr_intrinsics = function(expr) { + if (expr == null) return null + var k = expr.kind + var i = 0 + if (k == "name" && expr.level == -1 && expr.name != null && expr.make != "functino") { + used_intrinsics[expr.name] = true + } + if (expr.left != null) collect_expr_intrinsics(expr.left) + if (expr.right != null) collect_expr_intrinsics(expr.right) + if (expr.expression != null) collect_expr_intrinsics(expr.expression) + if (expr.then != null) collect_expr_intrinsics(expr.then) + if (expr.else != null) collect_expr_intrinsics(expr.else) + if (k == "(" || k == "array" || k == "text literal") { + i = 0 + while (i < length(expr.list)) { + collect_expr_intrinsics(expr.list[i]) + i = i + 1 + } + } + if (k == "record") { + i = 0 + while (i < length(expr.list)) { + collect_expr_intrinsics(expr.list[i].right) + i = i + 1 + } + } + if (k == "function") { + collect_intrinsics(expr.statements) + collect_intrinsics(expr.disruption) + i = 0 + while (i < length(expr.list)) { + if (expr.list[i].expression != null) { + collect_expr_intrinsics(expr.list[i].expression) + } + i = i + 1 + } + } + } + + collect_intrinsics = function(stmts) { + if (stmts == null) return null + var i = 0 + var j = 0 + var pi = 0 + var stmt = null + var k = null + while (i < length(stmts)) { + stmt = stmts[i] + k = stmt.kind + if (k == "var" || k == "def") { + collect_expr_intrinsics(stmt.right) + } else if (k == "var_list") { + j = 0 + while (j < length(stmt.list)) { + collect_expr_intrinsics(stmt.list[j].right) + j = j + 1 + } + } else if (k == "call") { + collect_expr_intrinsics(stmt.expression) + } else if (k == "if") { + collect_expr_intrinsics(stmt.expression) + collect_intrinsics(stmt.then) + collect_intrinsics(stmt.list) + if (stmt.else != null) collect_intrinsics(stmt.else) + } else if (k == "while" || k == "do") { + collect_expr_intrinsics(stmt.expression) + collect_intrinsics(stmt.statements) + } else if (k == "for") { + if (stmt.init != null) { + if (stmt.init.kind == "var" || stmt.init.kind == "def") { + collect_expr_intrinsics(stmt.init.right) + } else { + collect_expr_intrinsics(stmt.init) + } + } + collect_expr_intrinsics(stmt.test) + collect_expr_intrinsics(stmt.update) + collect_intrinsics(stmt.statements) + } else if (k == "return" || k == "go") { + collect_expr_intrinsics(stmt.expression) + } else if (k == "function") { + collect_intrinsics(stmt.statements) + collect_intrinsics(stmt.disruption) + pi = 0 + while (pi < length(stmt.list)) { + if (stmt.list[pi].expression != null) { + collect_expr_intrinsics(stmt.list[pi].expression) + } + pi = pi + 1 + } + } else if (k == "block") { + collect_intrinsics(stmt.statements) + } else if (k == "label") { + if (stmt.statement != null) collect_intrinsics([stmt.statement]) + } + i = i + 1 + } + } + + collect_intrinsics(ast.statements) + collect_intrinsics(ast.functions) + + var new_intrinsics = [] + i = 0 + while (i < length(ast.intrinsics)) { + if (used_intrinsics[ast.intrinsics[i]] == true) { + push(new_intrinsics, ast.intrinsics[i]) + } + i = i + 1 + } + ast.intrinsics = new_intrinsics + } + + // ============================================================ + // Main + // ============================================================ + + pre_scan() + + // Pass 2: fold all statements and functions + ast.statements = fold_stmts(ast.statements, 0) + var fi = 0 + while (fi < length(ast.functions)) { + fold_fn(ast.functions[fi]) + fi = fi + 1 + } + + // Remove dead top-level functions + var live_fns = [] + var fn = null + fi = 0 + while (fi < length(ast.functions)) { + fn = ast.functions[fi] + if (fn.dead != true) { + push(live_fns, fn) + } + fi = fi + 1 + } + ast.functions = live_fns + + // Pass 3: cleanup + cleanup() + + return ast +} + +return fold diff --git a/internal/bootstrap.ast.json b/internal/bootstrap.ast.json index 3a9a9fec..8463dae9 100644 --- a/internal/bootstrap.ast.json +++ b/internal/bootstrap.ast.json @@ -1,4784 +1,5223 @@ { - "kind": "program", - "filename": "internal/bootstrap.cm", - "functions": [{ - "kind": "function", - "at": 147, - "from_row": 3, - "from_column": 0, - "name": "use_embed", - "list": [{ - "kind": "name", - "at": 166, - "from_row": 3, - "from_column": 19, - "name": "name", - "to_row": 3, - "to_column": 23 - }], - "statements": [{ - "kind": "return", - "at": 176, - "from_row": 4, - "from_column": 2, - "expression": { - "kind": "(", - "at": 196, - "from_row": 4, - "from_column": 22, - "expression": { - "kind": "name", - "at": 183, - "from_row": 4, - "from_column": 9, - "name": "load_internal", - "to_row": 4, - "to_column": 22, - "level": 1, - "function_nr": 0 - }, - "list": [{ - "kind": "+", - "at": 210, - "from_row": 4, - "from_column": 36, - "left": { - "kind": "+", - "at": 203, - "from_row": 4, - "from_column": 29, - "left": { - "kind": "text", - "at": 197, - "from_row": 4, - "from_column": 23, - "value": "js_", - "to_row": 4, - "to_column": 28 - }, - "right": { - "kind": "name", - "at": 205, - "from_row": 4, - "from_column": 31, - "name": "name", - "to_row": 4, - "to_column": 35, - "level": 0, - "function_nr": 1 - }, - "to_row": 4, - "to_column": 37 - }, - "right": { - "kind": "text", - "at": 212, - "from_row": 4, - "from_column": 38, - "value": "_use", - "to_row": 4, - "to_column": 44 - }, - "to_row": 4, - "to_column": 45 - }], - "to_row": 5, - "to_column": 1 - }, - "to_row": 5, - "to_column": 1 - }], - "function_nr": 1, - "to_row": 7, - "to_column": 3, - "outer": 0, - "nr_slots": 1, - "nr_close_slots": 0 - }, { - "kind": "function", - "at": 436, - "from_row": 16, - "from_column": 0, - "name": "use_basic", - "list": [{ - "kind": "name", - "at": 455, - "from_row": 16, - "from_column": 19, - "name": "path", - "to_row": 16, - "to_column": 23 - }], - "statements": [{ - "kind": "if", - "at": 465, - "from_row": 17, - "from_column": 2, - "expression": { - "kind": "[", - "at": 478, - "from_row": 17, - "from_column": 15, - "left": { - "kind": "name", - "at": 469, - "from_row": 17, - "from_column": 6, - "name": "use_cache", - "to_row": 17, - "to_column": 15, - "level": 1, - "function_nr": 0 - }, - "right": { - "kind": "name", - "at": 479, - "from_row": 17, - "from_column": 16, - "name": "path", - "to_row": 17, - "to_column": 20, - "level": 0, - "function_nr": 2 - }, - "to_row": 17, - "to_column": 22 - }, - "then": [{ - "kind": "return", - "at": 490, - "from_row": 18, - "from_column": 4, - "expression": { - "kind": "[", - "at": 506, - "from_row": 18, - "from_column": 20, - "left": { - "kind": "name", - "at": 497, - "from_row": 18, - "from_column": 11, - "name": "use_cache", - "to_row": 18, - "to_column": 20, - "level": 1, - "function_nr": 0 - }, - "right": { - "kind": "name", - "at": 507, - "from_row": 18, - "from_column": 21, - "name": "path", - "to_row": 18, - "to_column": 25, - "level": 0, - "function_nr": 2 - }, - "to_row": 19, - "to_column": 5 - }, - "to_row": 19, - "to_column": 5 - }], - "list": [], - "to_row": 19, - "to_column": 5 - }, { - "kind": "var", - "at": 515, - "from_row": 19, - "from_column": 2, - "left": { - "kind": "name", - "at": 519, - "from_row": 19, - "from_column": 6, - "name": "result", - "to_row": 19, - "to_column": 12 - }, - "right": { - "kind": "(", - "at": 537, - "from_row": 19, - "from_column": 24, - "expression": { - "kind": "name", - "at": 528, - "from_row": 19, - "from_column": 15, - "name": "use_embed", - "to_row": 19, - "to_column": 24, - "level": 1, - "function_nr": 0 - }, - "list": [{ - "kind": "(", - "at": 545, - "from_row": 19, - "from_column": 32, - "expression": { - "kind": "name", - "at": 538, - "from_row": 19, - "from_column": 25, - "name": "replace", - "to_row": 19, - "to_column": 32, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 546, - "from_row": 19, - "from_column": 33, - "name": "path", - "to_row": 19, - "to_column": 37, - "level": 0, - "function_nr": 2 - }, { - "kind": "text", - "at": 552, - "from_row": 19, - "from_column": 39, - "value": "/", - "to_row": 19, - "to_column": 42 - }, { - "kind": "text", - "at": 557, - "from_row": 19, - "from_column": 44, - "value": "_", - "to_row": 19, - "to_column": 47 - }], - "to_row": 19, - "to_column": 49 - }], - "to_row": 20, - "to_column": 11 - }, - "to_row": 20, - "to_column": 11 - }, { - "kind": "call", - "at": 565, - "from_row": 20, - "from_column": 2, - "expression": { - "kind": "assign", - "at": 581, - "from_row": 20, - "from_column": 18, - "left": { - "kind": "[", - "at": 574, - "from_row": 20, - "from_column": 11, - "left": { - "kind": "name", - "at": 565, - "from_row": 20, - "from_column": 2, - "name": "use_cache", - "to_row": 20, - "to_column": 11, - "level": 1, - "function_nr": 0 - }, - "right": { - "kind": "name", - "at": 575, - "from_row": 20, - "from_column": 12, - "name": "path", - "to_row": 20, - "to_column": 16, - "level": 0, - "function_nr": 2 - }, - "to_row": 20, - "to_column": 19 - }, - "right": { - "kind": "name", - "at": 583, - "from_row": 20, - "from_column": 20, - "name": "result", - "to_row": 20, - "to_column": 26, - "level": 0, - "function_nr": 2 - }, - "to_row": 21, - "to_column": 8 - }, - "to_row": 21, - "to_column": 8 - }, { - "kind": "return", - "at": 592, - "from_row": 21, - "from_column": 2, - "expression": { - "kind": "name", - "at": 599, - "from_row": 21, - "from_column": 9, - "name": "result", - "to_row": 21, - "to_column": 15, - "level": 0, - "function_nr": 2 - }, - "to_row": 22, - "to_column": 1 - }], - "function_nr": 2, - "to_row": 24, - "to_column": 3, - "outer": 0, - "nr_slots": 2, - "nr_close_slots": 0 - }, { - "kind": "function", - "at": 1158, - "from_row": 37, - "from_column": 0, - "name": "analyze", - "list": [{ - "kind": "name", - "at": 1175, - "from_row": 37, - "from_column": 17, - "name": "src", - "to_row": 37, - "to_column": 20 - }, { - "kind": "name", - "at": 1180, - "from_row": 37, - "from_column": 22, - "name": "filename", - "to_row": 37, - "to_column": 30 - }], - "statements": [{ - "kind": "var", - "at": 1194, - "from_row": 38, - "from_column": 2, - "left": { - "kind": "name", - "at": 1198, - "from_row": 38, - "from_column": 6, - "name": "tok_result", - "to_row": 38, - "to_column": 16 - }, - "right": { - "kind": "(", - "at": 1223, - "from_row": 38, - "from_column": 31, - "expression": { - "kind": "name", - "at": 1211, - "from_row": 38, - "from_column": 19, - "name": "tokenize_mod", - "to_row": 38, - "to_column": 31, - "level": 1, - "function_nr": 0 - }, - "list": [{ - "kind": "name", - "at": 1224, - "from_row": 38, - "from_column": 32, - "name": "src", - "to_row": 38, - "to_column": 35, - "level": 0, - "function_nr": 3 - }, { - "kind": "name", - "at": 1229, - "from_row": 38, - "from_column": 37, - "name": "filename", - "to_row": 38, - "to_column": 45, - "level": 0, - "function_nr": 3 - }], - "to_row": 39, - "to_column": 5 - }, - "to_row": 39, - "to_column": 5 - }, { - "kind": "var", - "at": 1241, - "from_row": 39, - "from_column": 2, - "left": { - "kind": "name", - "at": 1245, - "from_row": 39, - "from_column": 6, - "name": "ast", - "to_row": 39, - "to_column": 9 - }, - "right": { - "kind": "(", - "at": 1260, - "from_row": 39, - "from_column": 21, - "expression": { - "kind": "name", - "at": 1251, - "from_row": 39, - "from_column": 12, - "name": "parse_mod", - "to_row": 39, - "to_column": 21, - "level": 1, - "function_nr": 0 - }, - "list": [{ - "kind": ".", - "at": 1271, - "from_row": 39, - "from_column": 32, - "left": { - "kind": "name", - "at": 1261, - "from_row": 39, - "from_column": 22, - "name": "tok_result", - "to_row": 39, - "to_column": 32, - "level": 0, - "function_nr": 3 - }, - "right": "tokens", - "to_row": 39, - "to_column": 40 - }, { - "kind": "name", - "at": 1280, - "from_row": 39, - "from_column": 41, - "name": "src", - "to_row": 39, - "to_column": 44, - "level": 0, - "function_nr": 3 - }, { - "kind": "name", - "at": 1285, - "from_row": 39, - "from_column": 46, - "name": "filename", - "to_row": 39, - "to_column": 54, - "level": 0, - "function_nr": 3 - }, { - "kind": "name", - "at": 1295, - "from_row": 39, - "from_column": 56, - "name": "tokenize_mod", - "to_row": 39, - "to_column": 68, - "level": 1, - "function_nr": 0 - }], - "to_row": 40, - "to_column": 5 - }, - "to_row": 40, - "to_column": 5 - }, { - "kind": "var", - "at": 1311, - "from_row": 40, - "from_column": 2, - "left": { - "kind": "name", - "at": 1315, - "from_row": 40, - "from_column": 6, - "name": "_i", - "to_row": 40, - "to_column": 8 - }, - "right": { - "kind": "number", - "at": 1320, - "from_row": 40, - "from_column": 11, - "value": "0", - "number": 0, - "to_row": 40, - "to_column": 12 - }, - "to_row": 41, - "to_column": 5 - }, { - "kind": "var", - "at": 1324, - "from_row": 41, - "from_column": 2, - "left": { - "kind": "name", - "at": 1328, - "from_row": 41, - "from_column": 6, - "name": "prev_line", - "to_row": 41, - "to_column": 15 - }, - "right": { - "kind": "-unary", - "at": 1340, - "from_row": 41, - "from_column": 18, - "expression": { - "kind": "number", - "at": 1341, - "from_row": 41, - "from_column": 19, - "value": "1", - "number": 1, - "to_row": 41, - "to_column": 20 - }, - "to_row": 42, - "to_column": 5 - }, - "to_row": 42, - "to_column": 5 - }, { - "kind": "var", - "at": 1345, - "from_row": 42, - "from_column": 2, - "left": { - "kind": "name", - "at": 1349, - "from_row": 42, - "from_column": 6, - "name": "prev_msg", - "to_row": 42, - "to_column": 14 - }, - "right": { - "kind": "null", - "at": 1360, - "from_row": 42, - "from_column": 17, - "to_row": 42, - "to_column": 21 - }, - "to_row": 43, - "to_column": 5 - }, { - "kind": "var", - "at": 1367, - "from_row": 43, - "from_column": 2, - "left": { - "kind": "name", - "at": 1371, - "from_row": 43, - "from_column": 6, - "name": "e", - "to_row": 43, - "to_column": 7 - }, - "right": { - "kind": "null", - "at": 1375, - "from_row": 43, - "from_column": 10, - "to_row": 43, - "to_column": 14 - }, - "to_row": 44, - "to_column": 5 - }, { - "kind": "var", - "at": 1382, - "from_row": 44, - "from_column": 2, - "left": { - "kind": "name", - "at": 1386, - "from_row": 44, - "from_column": 6, - "name": "msg", - "to_row": 44, - "to_column": 9 - }, - "right": { - "kind": "null", - "at": 1392, - "from_row": 44, - "from_column": 12, - "to_row": 44, - "to_column": 16 - }, - "to_row": 45, - "to_column": 5 - }, { - "kind": "var", - "at": 1399, - "from_row": 45, - "from_column": 2, - "left": { - "kind": "name", - "at": 1403, - "from_row": 45, - "from_column": 6, - "name": "line", - "to_row": 45, - "to_column": 10 - }, - "right": { - "kind": "null", - "at": 1410, - "from_row": 45, - "from_column": 13, - "to_row": 45, - "to_column": 17 - }, - "to_row": 46, - "to_column": 5 - }, { - "kind": "var", - "at": 1417, - "from_row": 46, - "from_column": 2, - "left": { - "kind": "name", - "at": 1421, - "from_row": 46, - "from_column": 6, - "name": "col", - "to_row": 46, - "to_column": 9 - }, - "right": { - "kind": "null", - "at": 1427, - "from_row": 46, - "from_column": 12, - "to_row": 46, - "to_column": 16 - }, - "to_row": 47, - "to_column": 5 - }, { - "kind": "var", - "at": 1434, - "from_row": 47, - "from_column": 2, - "left": { - "kind": "name", - "at": 1438, - "from_row": 47, - "from_column": 6, - "name": "has_errors", - "to_row": 47, - "to_column": 16 - }, - "right": { - "kind": "&&", - "at": 1470, - "from_row": 47, - "from_column": 38, - "left": { - "kind": "!=", - "at": 1462, - "from_row": 47, - "from_column": 30, - "left": { - "kind": ".", - "at": 1454, - "from_row": 47, - "from_column": 22, - "left": { - "kind": "name", - "at": 1451, - "from_row": 47, - "from_column": 19, - "name": "ast", - "to_row": 47, - "to_column": 22, - "level": 0, - "function_nr": 3 - }, - "right": "errors", - "to_row": 47, - "to_column": 32 - }, - "right": { - "kind": "null", - "at": 1465, - "from_row": 47, - "from_column": 33, - "to_row": 47, - "to_column": 37 - }, - "to_row": 47, - "to_column": 40 - }, - "right": { - "kind": ">", - "at": 1492, - "from_row": 47, - "from_column": 60, - "left": { - "kind": "(", - "at": 1479, - "from_row": 47, - "from_column": 47, - "expression": { - "kind": "name", - "at": 1473, - "from_row": 47, - "from_column": 41, - "name": "length", - "to_row": 47, - "to_column": 47, - "level": -1 - }, - "list": [{ - "kind": ".", - "at": 1483, - "from_row": 47, - "from_column": 51, - "left": { - "kind": "name", - "at": 1480, - "from_row": 47, - "from_column": 48, - "name": "ast", - "to_row": 47, - "to_column": 51, - "level": 0, - "function_nr": 3 - }, - "right": "errors", - "to_row": 47, - "to_column": 59 - }], - "to_row": 47, - "to_column": 61 - }, - "right": { - "kind": "number", - "at": 1494, - "from_row": 47, - "from_column": 62, - "value": "0", - "number": 0, - "to_row": 47, - "to_column": 63 - }, - "to_row": 48, - "to_column": 4 - }, - "to_row": 48, - "to_column": 4 - }, - "to_row": 48, - "to_column": 4 - }, { - "kind": "if", - "at": 1498, - "from_row": 48, - "from_column": 2, - "expression": { - "kind": "name", - "at": 1502, - "from_row": 48, - "from_column": 6, - "name": "has_errors", - "to_row": 48, - "to_column": 16, - "level": 0, - "function_nr": 3 - }, - "then": [{ - "kind": "block", - "at": 1514, - "from_row": 48, - "from_column": 18, - "statements": [{ - "kind": "while", - "at": 1520, - "from_row": 49, - "from_column": 4, - "expression": { - "kind": "<", - "at": 1530, - "from_row": 49, - "from_column": 14, - "left": { - "kind": "name", - "at": 1527, - "from_row": 49, - "from_column": 11, - "name": "_i", - "to_row": 49, - "to_column": 13, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "(", - "at": 1538, - "from_row": 49, - "from_column": 22, - "expression": { - "kind": "name", - "at": 1532, - "from_row": 49, - "from_column": 16, - "name": "length", - "to_row": 49, - "to_column": 22, - "level": -1 - }, - "list": [{ - "kind": ".", - "at": 1542, - "from_row": 49, - "from_column": 26, - "left": { - "kind": "name", - "at": 1539, - "from_row": 49, - "from_column": 23, - "name": "ast", - "to_row": 49, - "to_column": 26, - "level": 0, - "function_nr": 3 - }, - "right": "errors", - "to_row": 49, - "to_column": 34 - }], - "to_row": 49, - "to_column": 35 - }, - "to_row": 49, - "to_column": 35 - }, - "statements": [{ - "kind": "block", - "at": 1552, - "from_row": 49, - "from_column": 36, - "statements": [{ - "kind": "call", - "at": 1560, - "from_row": 50, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 1562, - "from_row": 50, - "from_column": 8, - "left": { - "kind": "name", - "at": 1560, - "from_row": 50, - "from_column": 6, - "name": "e", - "to_row": 50, - "to_column": 7, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "[", - "at": 1574, - "from_row": 50, - "from_column": 20, - "left": { - "kind": ".", - "at": 1567, - "from_row": 50, - "from_column": 13, - "left": { - "kind": "name", - "at": 1564, - "from_row": 50, - "from_column": 10, - "name": "ast", - "to_row": 50, - "to_column": 13, - "level": 0, - "function_nr": 3 - }, - "right": "errors", - "to_row": 50, - "to_column": 21 - }, - "right": { - "kind": "name", - "at": 1575, - "from_row": 50, - "from_column": 21, - "name": "_i", - "to_row": 50, - "to_column": 23, - "level": 0, - "function_nr": 3 - }, - "to_row": 51, - "to_column": 9 - }, - "to_row": 51, - "to_column": 9 - }, - "to_row": 51, - "to_column": 9 - }, { - "kind": "call", - "at": 1585, - "from_row": 51, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 1589, - "from_row": 51, - "from_column": 10, - "left": { - "kind": "name", - "at": 1585, - "from_row": 51, - "from_column": 6, - "name": "msg", - "to_row": 51, - "to_column": 9, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": ".", - "at": 1592, - "from_row": 51, - "from_column": 13, - "left": { - "kind": "name", - "at": 1591, - "from_row": 51, - "from_column": 12, - "name": "e", - "to_row": 51, - "to_column": 13, - "level": 0, - "function_nr": 3 - }, - "right": "message", - "to_row": 52, - "to_column": 10 - }, - "to_row": 52, - "to_column": 10 - }, - "to_row": 52, - "to_column": 10 - }, { - "kind": "call", - "at": 1607, - "from_row": 52, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 1612, - "from_row": 52, - "from_column": 11, - "left": { - "kind": "name", - "at": 1607, - "from_row": 52, - "from_column": 6, - "name": "line", - "to_row": 52, - "to_column": 10, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": ".", - "at": 1615, - "from_row": 52, - "from_column": 14, - "left": { - "kind": "name", - "at": 1614, - "from_row": 52, - "from_column": 13, - "name": "e", - "to_row": 52, - "to_column": 14, - "level": 0, - "function_nr": 3 - }, - "right": "line", - "to_row": 53, - "to_column": 9 - }, - "to_row": 53, - "to_column": 9 - }, - "to_row": 53, - "to_column": 9 - }, { - "kind": "call", - "at": 1627, - "from_row": 53, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 1631, - "from_row": 53, - "from_column": 10, - "left": { - "kind": "name", - "at": 1627, - "from_row": 53, - "from_column": 6, - "name": "col", - "to_row": 53, - "to_column": 9, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": ".", - "at": 1634, - "from_row": 53, - "from_column": 13, - "left": { - "kind": "name", - "at": 1633, - "from_row": 53, - "from_column": 12, - "name": "e", - "to_row": 53, - "to_column": 13, - "level": 0, - "function_nr": 3 - }, - "right": "column", - "to_row": 54, - "to_column": 8 - }, - "to_row": 54, - "to_column": 8 - }, - "to_row": 54, - "to_column": 8 - }, { - "kind": "if", - "at": 1648, - "from_row": 54, - "from_column": 6, - "expression": { - "kind": "||", - "at": 1668, - "from_row": 54, - "from_column": 26, - "left": { - "kind": "!=", - "at": 1656, - "from_row": 54, - "from_column": 14, - "left": { - "kind": "name", - "at": 1652, - "from_row": 54, - "from_column": 10, - "name": "msg", - "to_row": 54, - "to_column": 13, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "name", - "at": 1659, - "from_row": 54, - "from_column": 17, - "name": "prev_msg", - "to_row": 54, - "to_column": 25, - "level": 0, - "function_nr": 3 - }, - "to_row": 54, - "to_column": 28 - }, - "right": { - "kind": "!=", - "at": 1676, - "from_row": 54, - "from_column": 34, - "left": { - "kind": "name", - "at": 1671, - "from_row": 54, - "from_column": 29, - "name": "line", - "to_row": 54, - "to_column": 33, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "name", - "at": 1679, - "from_row": 54, - "from_column": 37, - "name": "prev_line", - "to_row": 54, - "to_column": 46, - "level": 0, - "function_nr": 3 - }, - "to_row": 54, - "to_column": 47 - }, - "to_row": 54, - "to_column": 47 - }, - "then": [{ - "kind": "block", - "at": 1690, - "from_row": 54, - "from_column": 48, - "statements": [{ - "kind": "if", - "at": 1700, - "from_row": 55, - "from_column": 8, - "expression": { - "kind": "&&", - "at": 1717, - "from_row": 55, - "from_column": 25, - "left": { - "kind": "!=", - "at": 1709, - "from_row": 55, - "from_column": 17, - "left": { - "kind": "name", - "at": 1704, - "from_row": 55, - "from_column": 12, - "name": "line", - "to_row": 55, - "to_column": 16, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "null", - "at": 1712, - "from_row": 55, - "from_column": 20, - "to_row": 55, - "to_column": 24 - }, - "to_row": 55, - "to_column": 27 - }, - "right": { - "kind": "!=", - "at": 1724, - "from_row": 55, - "from_column": 32, - "left": { - "kind": "name", - "at": 1720, - "from_row": 55, - "from_column": 28, - "name": "col", - "to_row": 55, - "to_column": 31, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "null", - "at": 1727, - "from_row": 55, - "from_column": 35, - "to_row": 55, - "to_column": 39 - }, - "to_row": 55, - "to_column": 40 - }, - "to_row": 55, - "to_column": 40 - }, - "then": [{ - "kind": "block", - "at": 1733, - "from_row": 55, - "from_column": 41, - "statements": [{ - "kind": "call", - "at": 1745, - "from_row": 56, - "from_column": 10, - "expression": { - "kind": "(", - "at": 1750, - "from_row": 56, - "from_column": 15, - "expression": { - "kind": "name", - "at": 1745, - "from_row": 56, - "from_column": 10, - "name": "print", - "to_row": 56, - "to_column": 15, - "level": -1 - }, - "list": [{ - "kind": "text literal", - "at": 1751, - "from_row": 56, - "from_column": 16, - "list": [{ - "kind": "name", - "at": 1754, - "from_row": 56, - "from_column": 19, - "name": "filename", - "to_row": 56, - "to_column": 27, - "level": 0, - "function_nr": 3 - }, { - "kind": "(", - "at": 1770, - "from_row": 56, - "from_column": 35, - "expression": { - "kind": "name", - "at": 1766, - "from_row": 56, - "from_column": 31, - "name": "text", - "to_row": 56, - "to_column": 35, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 1771, - "from_row": 56, - "from_column": 36, - "name": "line", - "to_row": 56, - "to_column": 40, - "level": 0, - "function_nr": 3 - }], - "to_row": 56, - "to_column": 42 - }, { - "kind": "(", - "at": 1784, - "from_row": 56, - "from_column": 49, - "expression": { - "kind": "name", - "at": 1780, - "from_row": 56, - "from_column": 45, - "name": "text", - "to_row": 56, - "to_column": 49, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 1785, - "from_row": 56, - "from_column": 50, - "name": "col", - "to_row": 56, - "to_column": 53, - "level": 0, - "function_nr": 3 - }], - "to_row": 56, - "to_column": 55 - }, { - "kind": "name", - "at": 1801, - "from_row": 56, - "from_column": 66, - "name": "msg", - "to_row": 56, - "to_column": 69, - "level": 0, - "function_nr": 3 - }], - "value": "{0}:{1}:{2}: error: {3}", - "to_row": 56, - "to_column": 71 - }], - "to_row": 57, - "to_column": 9 - }, - "to_row": 57, - "to_column": 9 - }], - "to_row": 57, - "to_column": 14 - }], - "list": [], - "else": [{ - "kind": "block", - "at": 1823, - "from_row": 57, - "from_column": 15, - "statements": [{ - "kind": "call", - "at": 1835, - "from_row": 58, - "from_column": 10, - "expression": { - "kind": "(", - "at": 1840, - "from_row": 58, - "from_column": 15, - "expression": { - "kind": "name", - "at": 1835, - "from_row": 58, - "from_column": 10, - "name": "print", - "to_row": 58, - "to_column": 15, - "level": -1 - }, - "list": [{ - "kind": "text literal", - "at": 1841, - "from_row": 58, - "from_column": 16, - "list": [{ - "kind": "name", - "at": 1844, - "from_row": 58, - "from_column": 19, - "name": "filename", - "to_row": 58, - "to_column": 27, - "level": 0, - "function_nr": 3 - }, { - "kind": "name", - "at": 1864, - "from_row": 58, - "from_column": 39, - "name": "msg", - "to_row": 58, - "to_column": 42, - "level": 0, - "function_nr": 3 - }], - "value": "{0}: error: {1}", - "to_row": 58, - "to_column": 44 - }], - "to_row": 59, - "to_column": 9 - }, - "to_row": 59, - "to_column": 9 - }], - "to_row": 60, - "to_column": 7 - }], - "to_row": 60, - "to_column": 7 - }], - "to_row": 61, - "to_column": 15 - }], - "list": [], - "to_row": 61, - "to_column": 15 - }, { - "kind": "call", - "at": 1895, - "from_row": 61, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 1905, - "from_row": 61, - "from_column": 16, - "left": { - "kind": "name", - "at": 1895, - "from_row": 61, - "from_column": 6, - "name": "prev_line", - "to_row": 61, - "to_column": 15, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "name", - "at": 1907, - "from_row": 61, - "from_column": 18, - "name": "line", - "to_row": 61, - "to_column": 22, - "level": 0, - "function_nr": 3 - }, - "to_row": 62, - "to_column": 14 - }, - "to_row": 62, - "to_column": 14 - }, { - "kind": "call", - "at": 1918, - "from_row": 62, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 1927, - "from_row": 62, - "from_column": 15, - "left": { - "kind": "name", - "at": 1918, - "from_row": 62, - "from_column": 6, - "name": "prev_msg", - "to_row": 62, - "to_column": 14, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "name", - "at": 1929, - "from_row": 62, - "from_column": 17, - "name": "msg", - "to_row": 62, - "to_column": 20, - "level": 0, - "function_nr": 3 - }, - "to_row": 63, - "to_column": 8 - }, - "to_row": 63, - "to_column": 8 - }, { - "kind": "call", - "at": 1939, - "from_row": 63, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 1942, - "from_row": 63, - "from_column": 9, - "left": { - "kind": "name", - "at": 1939, - "from_row": 63, - "from_column": 6, - "name": "_i", - "to_row": 63, - "to_column": 8, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "+", - "at": 1947, - "from_row": 63, - "from_column": 14, - "left": { - "kind": "name", - "at": 1944, - "from_row": 63, - "from_column": 11, - "name": "_i", - "to_row": 63, - "to_column": 13, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "number", - "at": 1949, - "from_row": 63, - "from_column": 16, - "value": "1", - "number": 1, - "to_row": 63, - "to_column": 17 - }, - "to_row": 64, - "to_column": 5 - }, - "to_row": 64, - "to_column": 5 - }, - "to_row": 64, - "to_column": 5 - }], - "to_row": 65, - "to_column": 11 - }], - "to_row": 65, - "to_column": 11 - }, { - "kind": "disrupt", - "at": 1961, - "from_row": 65, - "from_column": 4, - "to_row": 66, - "to_column": 3 - }], - "to_row": 67, - "to_column": 8 - }], - "list": [], - "to_row": 67, - "to_column": 8 - }, { - "kind": "return", - "at": 1975, - "from_row": 67, - "from_column": 2, - "expression": { - "kind": "name", - "at": 1982, - "from_row": 67, - "from_column": 9, - "name": "ast", - "to_row": 67, - "to_column": 12, - "level": 0, - "function_nr": 3 - }, - "to_row": 68, - "to_column": 1 - }], - "function_nr": 3, - "to_row": 71, - "to_column": 8, - "outer": 0, - "nr_slots": 12, - "nr_close_slots": 0 - }, { - "kind": "function", - "at": 2038, - "from_row": 71, - "from_column": 0, - "name": "run_ast", - "list": [{ - "kind": "name", - "at": 2055, - "from_row": 71, - "from_column": 17, - "name": "name", - "to_row": 71, - "to_column": 21 - }, { - "kind": "name", - "at": 2061, - "from_row": 71, - "from_column": 23, - "name": "ast", - "to_row": 71, - "to_column": 26 - }, { - "kind": "name", - "at": 2066, - "from_row": 71, - "from_column": 28, - "name": "env", - "to_row": 71, - "to_column": 31 - }], - "statements": [{ - "kind": "var", - "at": 2075, - "from_row": 72, - "from_column": 2, - "left": { - "kind": "name", - "at": 2079, - "from_row": 72, - "from_column": 6, - "name": "compiled", - "to_row": 72, - "to_column": 14 - }, - "right": { - "kind": "null", - "at": 2090, - "from_row": 72, - "from_column": 17, - "to_row": 72, - "to_column": 21 - }, - "to_row": 73, - "to_column": 4 - }, { - "kind": "if", - "at": 2097, - "from_row": 73, - "from_column": 2, - "expression": { - "kind": "name", - "at": 2101, - "from_row": 73, - "from_column": 6, - "name": "use_mcode", - "to_row": 73, - "to_column": 15, - "level": -1 - }, - "then": [{ - "kind": "block", - "at": 2112, - "from_row": 73, - "from_column": 17, - "statements": [{ - "kind": "call", - "at": 2118, - "from_row": 74, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 2127, - "from_row": 74, - "from_column": 13, - "left": { - "kind": "name", - "at": 2118, - "from_row": 74, - "from_column": 4, - "name": "compiled", - "to_row": 74, - "to_column": 12, - "level": 0, - "function_nr": 4 - }, - "right": { - "kind": "(", - "at": 2138, - "from_row": 74, - "from_column": 24, - "expression": { - "kind": "name", - "at": 2129, - "from_row": 74, - "from_column": 15, - "name": "mcode_mod", - "to_row": 74, - "to_column": 24, - "level": 1, - "function_nr": 0 - }, - "list": [{ - "kind": "name", - "at": 2139, - "from_row": 74, - "from_column": 25, - "name": "ast", - "to_row": 74, - "to_column": 28, - "level": 0, - "function_nr": 4 - }], - "to_row": 75, - "to_column": 10 - }, - "to_row": 75, - "to_column": 10 - }, - "to_row": 75, - "to_column": 10 - }, { - "kind": "return", - "at": 2148, - "from_row": 75, - "from_column": 4, - "expression": { - "kind": "(", - "at": 2164, - "from_row": 75, - "from_column": 20, - "expression": { - "kind": "name", - "at": 2155, - "from_row": 75, - "from_column": 11, - "name": "mcode_run", - "to_row": 75, - "to_column": 20, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 2165, - "from_row": 75, - "from_column": 21, - "name": "name", - "to_row": 75, - "to_column": 25, - "level": 0, - "function_nr": 4 - }, { - "kind": "(", - "at": 2182, - "from_row": 75, - "from_column": 38, - "expression": { - "kind": ".", - "at": 2175, - "from_row": 75, - "from_column": 31, - "left": { - "kind": "name", - "at": 2171, - "from_row": 75, - "from_column": 27, - "name": "json", - "to_row": 75, - "to_column": 31, - "level": 1, - "function_nr": 0 - }, - "right": "encode", - "to_row": 75, - "to_column": 39 - }, - "list": [{ - "kind": "name", - "at": 2183, - "from_row": 75, - "from_column": 39, - "name": "compiled", - "to_row": 75, - "to_column": 47, - "level": 0, - "function_nr": 4 - }], - "to_row": 75, - "to_column": 49 - }, { - "kind": "name", - "at": 2194, - "from_row": 75, - "from_column": 50, - "name": "env", - "to_row": 75, - "to_column": 53, - "level": 0, - "function_nr": 4 - }], - "to_row": 76, - "to_column": 3 - }, - "to_row": 76, - "to_column": 3 - }], - "to_row": 77, - "to_column": 8 - }], - "list": [], - "to_row": 77, - "to_column": 8 - }, { - "kind": "return", - "at": 2205, - "from_row": 77, - "from_column": 2, - "expression": { - "kind": "(", - "at": 2225, - "from_row": 77, - "from_column": 22, - "expression": { - "kind": "name", - "at": 2212, - "from_row": 77, - "from_column": 9, - "name": "mach_eval_ast", - "to_row": 77, - "to_column": 22, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 2226, - "from_row": 77, - "from_column": 23, - "name": "name", - "to_row": 77, - "to_column": 27, - "level": 0, - "function_nr": 4 - }, { - "kind": "(", - "at": 2243, - "from_row": 77, - "from_column": 40, - "expression": { - "kind": ".", - "at": 2236, - "from_row": 77, - "from_column": 33, - "left": { - "kind": "name", - "at": 2232, - "from_row": 77, - "from_column": 29, - "name": "json", - "to_row": 77, - "to_column": 33, - "level": 1, - "function_nr": 0 - }, - "right": "encode", - "to_row": 77, - "to_column": 41 - }, - "list": [{ - "kind": "name", - "at": 2244, - "from_row": 77, - "from_column": 41, - "name": "ast", - "to_row": 77, - "to_column": 44, - "level": 0, - "function_nr": 4 - }], - "to_row": 77, - "to_column": 46 - }, { - "kind": "name", - "at": 2250, - "from_row": 77, - "from_column": 47, - "name": "env", - "to_row": 77, - "to_column": 50, - "level": 0, - "function_nr": 4 - }], - "to_row": 78, - "to_column": 1 - }, - "to_row": 78, - "to_column": 1 - }], - "function_nr": 4, - "to_row": 81, - "to_column": 8, - "outer": 0, - "nr_slots": 4, - "nr_close_slots": 0 - }, { - "kind": "function", - "at": 2302, - "from_row": 81, - "from_column": 0, - "name": "use", - "list": [{ - "kind": "name", - "at": 2315, - "from_row": 81, - "from_column": 13, - "name": "path", - "to_row": 81, - "to_column": 17 - }], - "statements": [{ - "kind": "var", - "at": 2325, - "from_row": 82, - "from_column": 2, - "left": { - "kind": "name", - "at": 2329, - "from_row": 82, - "from_column": 6, - "name": "file_path", - "to_row": 82, - "to_column": 15 - }, - "right": { - "kind": "+", - "at": 2346, - "from_row": 82, - "from_column": 23, - "left": { - "kind": "name", - "at": 2341, - "from_row": 82, - "from_column": 18, - "name": "path", - "to_row": 82, - "to_column": 22, - "level": 0, - "function_nr": 5 - }, - "right": { - "kind": "text", - "at": 2348, - "from_row": 82, - "from_column": 25, - "value": ".cm", - "to_row": 82, - "to_column": 30 - }, - "to_row": 83, - "to_column": 5 - }, - "to_row": 83, - "to_column": 5 - }, { - "kind": "var", - "at": 2356, - "from_row": 83, - "from_column": 2, - "left": { - "kind": "name", - "at": 2360, - "from_row": 83, - "from_column": 6, - "name": "script", - "to_row": 83, - "to_column": 12 - }, - "right": { - "kind": "null", - "at": 2369, - "from_row": 83, - "from_column": 15, - "to_row": 83, - "to_column": 19 - }, - "to_row": 84, - "to_column": 5 - }, { - "kind": "var", - "at": 2376, - "from_row": 84, - "from_column": 2, - "left": { - "kind": "name", - "at": 2380, - "from_row": 84, - "from_column": 6, - "name": "ast", - "to_row": 84, - "to_column": 9 - }, - "right": { - "kind": "null", - "at": 2386, - "from_row": 84, - "from_column": 12, - "to_row": 84, - "to_column": 16 - }, - "to_row": 85, - "to_column": 5 - }, { - "kind": "var", - "at": 2393, - "from_row": 85, - "from_column": 2, - "left": { - "kind": "name", - "at": 2397, - "from_row": 85, - "from_column": 6, - "name": "result", - "to_row": 85, - "to_column": 12 - }, - "right": { - "kind": "null", - "at": 2406, - "from_row": 85, - "from_column": 15, - "to_row": 85, - "to_column": 19 - }, - "to_row": 86, - "to_column": 4 - }, { - "kind": "if", - "at": 2413, - "from_row": 86, - "from_column": 2, - "expression": { - "kind": "[", - "at": 2426, - "from_row": 86, - "from_column": 15, - "left": { - "kind": "name", - "at": 2417, - "from_row": 86, - "from_column": 6, - "name": "use_cache", - "to_row": 86, - "to_column": 15, - "level": 1, - "function_nr": 0 - }, - "right": { - "kind": "name", - "at": 2427, - "from_row": 86, - "from_column": 16, - "name": "path", - "to_row": 86, - "to_column": 20, - "level": 0, - "function_nr": 5 - }, - "to_row": 86, - "to_column": 22 - }, - "then": [{ - "kind": "return", - "at": 2438, - "from_row": 87, - "from_column": 4, - "expression": { - "kind": "[", - "at": 2454, - "from_row": 87, - "from_column": 20, - "left": { - "kind": "name", - "at": 2445, - "from_row": 87, - "from_column": 11, - "name": "use_cache", - "to_row": 87, - "to_column": 20, - "level": 1, - "function_nr": 0 - }, - "right": { - "kind": "name", - "at": 2455, - "from_row": 87, - "from_column": 21, - "name": "path", - "to_row": 87, - "to_column": 25, - "level": 0, - "function_nr": 5 - }, - "to_row": 90, - "to_column": 4 - }, - "to_row": 90, - "to_column": 4 - }], - "list": [], - "to_row": 90, - "to_column": 4 - }, { - "kind": "if", - "at": 2501, - "from_row": 90, - "from_column": 2, - "expression": { - "kind": "!", - "at": 2505, - "from_row": 90, - "from_column": 6, - "expression": { - "kind": "(", - "at": 2516, - "from_row": 90, - "from_column": 17, - "expression": { - "kind": ".", - "at": 2508, - "from_row": 90, - "from_column": 9, - "left": { - "kind": "name", - "at": 2506, - "from_row": 90, - "from_column": 7, - "name": "fd", - "to_row": 90, - "to_column": 9, - "level": 1, - "function_nr": 0 - }, - "right": "is_file", - "to_row": 90, - "to_column": 18 - }, - "list": [{ - "kind": "name", - "at": 2517, - "from_row": 90, - "from_column": 18, - "name": "file_path", - "to_row": 90, - "to_column": 27, - "level": 0, - "function_nr": 5 - }], - "to_row": 90, - "to_column": 29 - }, - "to_row": 90, - "to_column": 29 - }, - "then": [{ - "kind": "call", - "at": 2533, - "from_row": 91, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 2543, - "from_row": 91, - "from_column": 14, - "left": { - "kind": "name", - "at": 2533, - "from_row": 91, - "from_column": 4, - "name": "file_path", - "to_row": 91, - "to_column": 13, - "level": 0, - "function_nr": 5 - }, - "right": { - "kind": "+", - "at": 2568, - "from_row": 91, - "from_column": 39, - "left": { - "kind": "+", - "at": 2561, - "from_row": 91, - "from_column": 32, - "left": { - "kind": "+", - "at": 2555, - "from_row": 91, - "from_column": 26, - "left": { - "kind": "name", - "at": 2545, - "from_row": 91, - "from_column": 16, - "name": "core_path", - "to_row": 91, - "to_column": 25, - "level": -1 - }, - "right": { - "kind": "text", - "at": 2557, - "from_row": 91, - "from_column": 28, - "value": "/", - "to_row": 91, - "to_column": 31 - }, - "to_row": 91, - "to_column": 33 - }, - "right": { - "kind": "name", - "at": 2563, - "from_row": 91, - "from_column": 34, - "name": "path", - "to_row": 91, - "to_column": 38, - "level": 0, - "function_nr": 5 - }, - "to_row": 91, - "to_column": 40 - }, - "right": { - "kind": "text", - "at": 2570, - "from_row": 91, - "from_column": 41, - "value": ".cm", - "to_row": 91, - "to_column": 46 - }, - "to_row": 93, - "to_column": 4 - }, - "to_row": 93, - "to_column": 4 - }, - "to_row": 93, - "to_column": 4 - }], - "list": [], - "to_row": 93, - "to_column": 4 - }, { - "kind": "if", - "at": 2579, - "from_row": 93, - "from_column": 2, - "expression": { - "kind": "(", - "at": 2593, - "from_row": 93, - "from_column": 16, - "expression": { - "kind": ".", - "at": 2585, - "from_row": 93, - "from_column": 8, - "left": { - "kind": "name", - "at": 2583, - "from_row": 93, - "from_column": 6, - "name": "fd", - "to_row": 93, - "to_column": 8, - "level": 1, - "function_nr": 0 - }, - "right": "is_file", - "to_row": 93, - "to_column": 17 - }, - "list": [{ - "kind": "name", - "at": 2594, - "from_row": 93, - "from_column": 17, - "name": "file_path", - "to_row": 93, - "to_column": 26, - "level": 0, - "function_nr": 5 - }], - "to_row": 93, - "to_column": 28 - }, - "then": [{ - "kind": "block", - "at": 2606, - "from_row": 93, - "from_column": 29, - "statements": [{ - "kind": "call", - "at": 2612, - "from_row": 94, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 2619, - "from_row": 94, - "from_column": 11, - "left": { - "kind": "name", - "at": 2612, - "from_row": 94, - "from_column": 4, - "name": "script", - "to_row": 94, - "to_column": 10, - "level": 0, - "function_nr": 5 - }, - "right": { - "kind": "(", - "at": 2625, - "from_row": 94, - "from_column": 17, - "expression": { - "kind": "name", - "at": 2621, - "from_row": 94, - "from_column": 13, - "name": "text", - "to_row": 94, - "to_column": 17, - "level": -1 - }, - "list": [{ - "kind": "(", - "at": 2634, - "from_row": 94, - "from_column": 26, - "expression": { - "kind": ".", - "at": 2628, - "from_row": 94, - "from_column": 20, - "left": { - "kind": "name", - "at": 2626, - "from_row": 94, - "from_column": 18, - "name": "fd", - "to_row": 94, - "to_column": 20, - "level": 1, - "function_nr": 0 - }, - "right": "slurp", - "to_row": 94, - "to_column": 27 - }, - "list": [{ - "kind": "name", - "at": 2635, - "from_row": 94, - "from_column": 27, - "name": "file_path", - "to_row": 94, - "to_column": 36, - "level": 0, - "function_nr": 5 - }], - "to_row": 94, - "to_column": 38 - }], - "to_row": 95, - "to_column": 7 - }, - "to_row": 95, - "to_column": 7 - }, - "to_row": 95, - "to_column": 7 - }, { - "kind": "call", - "at": 2651, - "from_row": 95, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 2655, - "from_row": 95, - "from_column": 8, - "left": { - "kind": "name", - "at": 2651, - "from_row": 95, - "from_column": 4, - "name": "ast", - "to_row": 95, - "to_column": 7, - "level": 0, - "function_nr": 5 - }, - "right": { - "kind": "(", - "at": 2664, - "from_row": 95, - "from_column": 17, - "expression": { - "kind": "name", - "at": 2657, - "from_row": 95, - "from_column": 10, - "name": "analyze", - "to_row": 95, - "to_column": 17, - "level": 1, - "function_nr": 0 - }, - "list": [{ - "kind": "name", - "at": 2665, - "from_row": 95, - "from_column": 18, - "name": "script", - "to_row": 95, - "to_column": 24, - "level": 0, - "function_nr": 5 - }, { - "kind": "name", - "at": 2673, - "from_row": 95, - "from_column": 26, - "name": "file_path", - "to_row": 95, - "to_column": 35, - "level": 0, - "function_nr": 5 - }], - "to_row": 96, - "to_column": 10 - }, - "to_row": 96, - "to_column": 10 - }, - "to_row": 96, - "to_column": 10 - }, { - "kind": "call", - "at": 2688, - "from_row": 96, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 2695, - "from_row": 96, - "from_column": 11, - "left": { - "kind": "name", - "at": 2688, - "from_row": 96, - "from_column": 4, - "name": "result", - "to_row": 96, - "to_column": 10, - "level": 0, - "function_nr": 5 - }, - "right": { - "kind": "(", - "at": 2704, - "from_row": 96, - "from_column": 20, - "expression": { - "kind": "name", - "at": 2697, - "from_row": 96, - "from_column": 13, - "name": "run_ast", - "to_row": 96, - "to_column": 20, - "level": 1, - "function_nr": 0 - }, - "list": [{ - "kind": "name", - "at": 2705, - "from_row": 96, - "from_column": 21, - "name": "path", - "to_row": 96, - "to_column": 25, - "level": 0, - "function_nr": 5 - }, { - "kind": "name", - "at": 2711, - "from_row": 96, - "from_column": 27, - "name": "ast", - "to_row": 96, - "to_column": 30, - "level": 0, - "function_nr": 5 - }, { - "kind": "record", - "at": 2716, - "from_row": 96, - "from_column": 32, - "list": [{ - "left": { - "kind": "name", - "at": 2717, - "from_row": 96, - "from_column": 33, - "name": "use", - "to_row": 96, - "to_column": 36 - }, - "right": { - "kind": "name", - "at": 2722, - "from_row": 96, - "from_column": 38, - "name": "use", - "to_row": 96, - "to_column": 41, - "level": 1, - "function_nr": 0 - } - }], - "to_row": 96, - "to_column": 42 - }], - "to_row": 97, - "to_column": 13 - }, - "to_row": 97, - "to_column": 13 - }, - "to_row": 97, - "to_column": 13 - }, { - "kind": "call", - "at": 2732, - "from_row": 97, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 2748, - "from_row": 97, - "from_column": 20, - "left": { - "kind": "[", - "at": 2741, - "from_row": 97, - "from_column": 13, - "left": { - "kind": "name", - "at": 2732, - "from_row": 97, - "from_column": 4, - "name": "use_cache", - "to_row": 97, - "to_column": 13, - "level": 1, - "function_nr": 0 - }, - "right": { - "kind": "name", - "at": 2742, - "from_row": 97, - "from_column": 14, - "name": "path", - "to_row": 97, - "to_column": 18, - "level": 0, - "function_nr": 5 - }, - "to_row": 97, - "to_column": 21 - }, - "right": { - "kind": "name", - "at": 2750, - "from_row": 97, - "from_column": 22, - "name": "result", - "to_row": 97, - "to_column": 28, - "level": 0, - "function_nr": 5 - }, - "to_row": 98, - "to_column": 10 - }, - "to_row": 98, - "to_column": 10 - }, { - "kind": "return", - "at": 2761, - "from_row": 98, - "from_column": 4, - "expression": { - "kind": "name", - "at": 2768, - "from_row": 98, - "from_column": 11, - "name": "result", - "to_row": 98, - "to_column": 17, - "level": 0, - "function_nr": 5 - }, - "to_row": 99, - "to_column": 3 - }], - "to_row": 102, - "to_column": 8 - }], - "list": [], - "to_row": 102, - "to_column": 8 - }, { - "kind": "call", - "at": 2817, - "from_row": 102, - "from_column": 2, - "expression": { - "kind": "assign", - "at": 2824, - "from_row": 102, - "from_column": 9, - "left": { - "kind": "name", - "at": 2817, - "from_row": 102, - "from_column": 2, - "name": "result", - "to_row": 102, - "to_column": 8, - "level": 0, - "function_nr": 5 - }, - "right": { - "kind": "(", - "at": 2835, - "from_row": 102, - "from_column": 20, - "expression": { - "kind": "name", - "at": 2826, - "from_row": 102, - "from_column": 11, - "name": "use_embed", - "to_row": 102, - "to_column": 20, - "level": 1, - "function_nr": 0 - }, - "list": [{ - "kind": "(", - "at": 2843, - "from_row": 102, - "from_column": 28, - "expression": { - "kind": "name", - "at": 2836, - "from_row": 102, - "from_column": 21, - "name": "replace", - "to_row": 102, - "to_column": 28, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 2844, - "from_row": 102, - "from_column": 29, - "name": "path", - "to_row": 102, - "to_column": 33, - "level": 0, - "function_nr": 5 - }, { - "kind": "text", - "at": 2850, - "from_row": 102, - "from_column": 35, - "value": "/", - "to_row": 102, - "to_column": 38 - }, { - "kind": "text", - "at": 2855, - "from_row": 102, - "from_column": 40, - "value": "_", - "to_row": 102, - "to_column": 43 - }], - "to_row": 102, - "to_column": 45 - }], - "to_row": 103, - "to_column": 11 - }, - "to_row": 103, - "to_column": 11 - }, - "to_row": 103, - "to_column": 11 - }, { - "kind": "call", - "at": 2863, - "from_row": 103, - "from_column": 2, - "expression": { - "kind": "assign", - "at": 2879, - "from_row": 103, - "from_column": 18, - "left": { - "kind": "[", - "at": 2872, - "from_row": 103, - "from_column": 11, - "left": { - "kind": "name", - "at": 2863, - "from_row": 103, - "from_column": 2, - "name": "use_cache", - "to_row": 103, - "to_column": 11, - "level": 1, - "function_nr": 0 - }, - "right": { - "kind": "name", - "at": 2873, - "from_row": 103, - "from_column": 12, - "name": "path", - "to_row": 103, - "to_column": 16, - "level": 0, - "function_nr": 5 - }, - "to_row": 103, - "to_column": 19 - }, - "right": { - "kind": "name", - "at": 2881, - "from_row": 103, - "from_column": 20, - "name": "result", - "to_row": 103, - "to_column": 26, - "level": 0, - "function_nr": 5 - }, - "to_row": 104, - "to_column": 8 - }, - "to_row": 104, - "to_column": 8 - }, { - "kind": "return", - "at": 2890, - "from_row": 104, - "from_column": 2, - "expression": { - "kind": "name", - "at": 2897, - "from_row": 104, - "from_column": 9, - "name": "result", - "to_row": 104, - "to_column": 15, - "level": 0, - "function_nr": 5 - }, - "to_row": 105, - "to_column": 1 - }], - "function_nr": 5, - "to_row": 108, - "to_column": 3, - "outer": 0, - "nr_slots": 5, - "nr_close_slots": 0 - }], - "statements": [{ - "kind": "var", - "at": 110, - "from_row": 2, - "from_column": 0, - "left": { - "kind": "name", - "at": 114, - "from_row": 2, - "from_column": 4, - "name": "load_internal", - "to_row": 2, - "to_column": 17 - }, - "right": { - "kind": ".", - "at": 132, - "from_row": 2, - "from_column": 22, - "left": { - "kind": "name", - "at": 130, - "from_row": 2, - "from_column": 20, - "name": "os", - "to_row": 2, - "to_column": 22, - "level": -1 - }, - "right": "load_internal", - "to_row": 3, - "to_column": 8 - }, - "to_row": 3, - "to_column": 8 - }, { - "kind": "var", - "at": 223, - "from_row": 7, - "from_column": 0, - "left": { - "kind": "name", - "at": 227, - "from_row": 7, - "from_column": 4, - "name": "fd", - "to_row": 7, - "to_column": 6 - }, - "right": { - "kind": "(", - "at": 241, - "from_row": 7, - "from_column": 18, - "expression": { - "kind": "name", - "at": 232, - "from_row": 7, - "from_column": 9, - "name": "use_embed", - "to_row": 7, - "to_column": 18, - "level": 0, - "function_nr": 0 - }, - "list": [{ - "kind": "text", - "at": 242, - "from_row": 7, - "from_column": 19, - "value": "fd", - "to_row": 7, - "to_column": 23 - }], - "to_row": 8, - "to_column": 3 - }, - "to_row": 8, - "to_column": 3 - }, { - "kind": "var", - "at": 248, - "from_row": 8, - "from_column": 0, - "left": { - "kind": "name", - "at": 252, - "from_row": 8, - "from_column": 4, - "name": "json", - "to_row": 8, - "to_column": 8 - }, - "right": { - "kind": "(", - "at": 268, - "from_row": 8, - "from_column": 20, - "expression": { - "kind": "name", - "at": 259, - "from_row": 8, - "from_column": 11, - "name": "use_embed", - "to_row": 8, - "to_column": 20, - "level": 0, - "function_nr": 0 - }, - "list": [{ - "kind": "text", - "at": 269, - "from_row": 8, - "from_column": 21, - "value": "json", - "to_row": 8, - "to_column": 27 - }], - "to_row": 10, - "to_column": 3 - }, - "to_row": 10, - "to_column": 3 - }, { - "kind": "var", - "at": 278, - "from_row": 10, - "from_column": 0, - "left": { - "kind": "name", - "at": 282, - "from_row": 10, - "from_column": 4, - "name": "use_cache", - "to_row": 10, - "to_column": 13 - }, - "right": { - "kind": "record", - "at": 294, - "from_row": 10, - "from_column": 16, - "list": [], - "to_row": 10, - "to_column": 18 - }, - "to_row": 11, - "to_column": 9 - }, { - "kind": "call", - "at": 297, - "from_row": 11, - "from_column": 0, - "expression": { - "kind": "assign", - "at": 313, - "from_row": 11, - "from_column": 16, - "left": { - "kind": "[", - "at": 306, - "from_row": 11, - "from_column": 9, - "left": { - "kind": "name", - "at": 297, - "from_row": 11, - "from_column": 0, - "name": "use_cache", - "to_row": 11, - "to_column": 9, - "level": 0, - "function_nr": 0 - }, - "right": { - "kind": "text", - "at": 307, - "from_row": 11, - "from_column": 10, - "value": "fd", - "to_row": 11, - "to_column": 14 - }, - "to_row": 11, - "to_column": 17 - }, - "right": { - "kind": "name", - "at": 315, - "from_row": 11, - "from_column": 18, - "name": "fd", - "to_row": 11, - "to_column": 20, - "level": 0, - "function_nr": 0 - }, - "to_row": 12, - "to_column": 9 - }, - "to_row": 12, - "to_column": 9 - }, { - "kind": "call", - "at": 318, - "from_row": 12, - "from_column": 0, - "expression": { - "kind": "assign", - "at": 334, - "from_row": 12, - "from_column": 16, - "left": { - "kind": "[", - "at": 327, - "from_row": 12, - "from_column": 9, - "left": { - "kind": "name", - "at": 318, - "from_row": 12, - "from_column": 0, - "name": "use_cache", - "to_row": 12, - "to_column": 9, - "level": 0, - "function_nr": 0 - }, - "right": { - "kind": "text", - "at": 328, - "from_row": 12, - "from_column": 10, - "value": "os", - "to_row": 12, - "to_column": 14 - }, - "to_row": 12, - "to_column": 17 - }, - "right": { - "kind": "name", - "at": 336, - "from_row": 12, - "from_column": 18, - "name": "os", - "to_row": 12, - "to_column": 20, - "level": -1 - }, - "to_row": 13, - "to_column": 9 - }, - "to_row": 13, - "to_column": 9 - }, { - "kind": "call", - "at": 339, - "from_row": 13, - "from_column": 0, - "expression": { - "kind": "assign", - "at": 357, - "from_row": 13, - "from_column": 18, - "left": { - "kind": "[", - "at": 348, - "from_row": 13, - "from_column": 9, - "left": { - "kind": "name", - "at": 339, - "from_row": 13, - "from_column": 0, - "name": "use_cache", - "to_row": 13, - "to_column": 9, - "level": 0, - "function_nr": 0 - }, - "right": { - "kind": "text", - "at": 349, - "from_row": 13, - "from_column": 10, - "value": "json", - "to_row": 13, - "to_column": 16 - }, - "to_row": 13, - "to_column": 19 - }, - "right": { - "kind": "name", - "at": 359, - "from_row": 13, - "from_column": 20, - "name": "json", - "to_row": 13, - "to_column": 24, - "level": 0, - "function_nr": 0 - }, - "to_row": 16, - "to_column": 8 - }, - "to_row": 16, - "to_column": 8 - }, { - "kind": "var", - "at": 609, - "from_row": 24, - "from_column": 0, - "left": { - "kind": "name", - "at": 613, - "from_row": 24, - "from_column": 4, - "name": "tok_ast_path", - "to_row": 24, - "to_column": 16 - }, - "right": { - "kind": "+", - "at": 638, - "from_row": 24, - "from_column": 29, - "left": { - "kind": "name", - "at": 628, - "from_row": 24, - "from_column": 19, - "name": "core_path", - "to_row": 24, - "to_column": 28, - "level": -1 - }, - "right": { - "kind": "text", - "at": 640, - "from_row": 24, - "from_column": 31, - "value": "/tokenize.ast.json", - "to_row": 24, - "to_column": 51 - }, - "to_row": 25, - "to_column": 3 - }, - "to_row": 25, - "to_column": 3 - }, { - "kind": "var", - "at": 661, - "from_row": 25, - "from_column": 0, - "left": { - "kind": "name", - "at": 665, - "from_row": 25, - "from_column": 4, - "name": "par_ast_path", - "to_row": 25, - "to_column": 16 - }, - "right": { - "kind": "+", - "at": 690, - "from_row": 25, - "from_column": 29, - "left": { - "kind": "name", - "at": 680, - "from_row": 25, - "from_column": 19, - "name": "core_path", - "to_row": 25, - "to_column": 28, - "level": -1 - }, - "right": { - "kind": "text", - "at": 692, - "from_row": 25, - "from_column": 31, - "value": "/parse.ast.json", - "to_row": 25, - "to_column": 48 - }, - "to_row": 26, - "to_column": 3 - }, - "to_row": 26, - "to_column": 3 - }, { - "kind": "var", - "at": 710, - "from_row": 26, - "from_column": 0, - "left": { - "kind": "name", - "at": 714, - "from_row": 26, - "from_column": 4, - "name": "tokenize_mod", - "to_row": 26, - "to_column": 16 - }, - "right": { - "kind": "(", - "at": 742, - "from_row": 26, - "from_column": 32, - "expression": { - "kind": "name", - "at": 729, - "from_row": 26, - "from_column": 19, - "name": "mach_eval_ast", - "to_row": 26, - "to_column": 32, - "level": -1 - }, - "list": [{ - "kind": "text", - "at": 743, - "from_row": 26, - "from_column": 33, - "value": "tokenize", - "to_row": 26, - "to_column": 43 - }, { - "kind": "(", - "at": 759, - "from_row": 26, - "from_column": 49, - "expression": { - "kind": "name", - "at": 755, - "from_row": 26, - "from_column": 45, - "name": "text", - "to_row": 26, - "to_column": 49, - "level": -1 - }, - "list": [{ - "kind": "(", - "at": 768, - "from_row": 26, - "from_column": 58, - "expression": { - "kind": ".", - "at": 762, - "from_row": 26, - "from_column": 52, - "left": { - "kind": "name", - "at": 760, - "from_row": 26, - "from_column": 50, - "name": "fd", - "to_row": 26, - "to_column": 52, - "level": 0, - "function_nr": 0 - }, - "right": "slurp", - "to_row": 26, - "to_column": 59 - }, - "list": [{ - "kind": "name", - "at": 769, - "from_row": 26, - "from_column": 59, - "name": "tok_ast_path", - "to_row": 26, - "to_column": 71, - "level": 0, - "function_nr": 0 - }], - "to_row": 26, - "to_column": 73 - }], - "to_row": 26, - "to_column": 74 - }, { - "kind": "record", - "at": 785, - "from_row": 26, - "from_column": 75, - "list": [{ - "left": { - "kind": "name", - "at": 786, - "from_row": 26, - "from_column": 76, - "name": "use", - "to_row": 26, - "to_column": 79 - }, - "right": { - "kind": "name", - "at": 791, - "from_row": 26, - "from_column": 81, - "name": "use_basic", - "to_row": 26, - "to_column": 90, - "level": 0, - "function_nr": 0 - } - }], - "to_row": 26, - "to_column": 91 - }], - "to_row": 27, - "to_column": 3 - }, - "to_row": 27, - "to_column": 3 - }, { - "kind": "var", - "at": 803, - "from_row": 27, - "from_column": 0, - "left": { - "kind": "name", - "at": 807, - "from_row": 27, - "from_column": 4, - "name": "parse_mod", - "to_row": 27, - "to_column": 13 - }, - "right": { - "kind": "(", - "at": 832, - "from_row": 27, - "from_column": 29, - "expression": { - "kind": "name", - "at": 819, - "from_row": 27, - "from_column": 16, - "name": "mach_eval_ast", - "to_row": 27, - "to_column": 29, - "level": -1 - }, - "list": [{ - "kind": "text", - "at": 833, - "from_row": 27, - "from_column": 30, - "value": "parse", - "to_row": 27, - "to_column": 37 - }, { - "kind": "(", - "at": 846, - "from_row": 27, - "from_column": 43, - "expression": { - "kind": "name", - "at": 842, - "from_row": 27, - "from_column": 39, - "name": "text", - "to_row": 27, - "to_column": 43, - "level": -1 - }, - "list": [{ - "kind": "(", - "at": 855, - "from_row": 27, - "from_column": 52, - "expression": { - "kind": ".", - "at": 849, - "from_row": 27, - "from_column": 46, - "left": { - "kind": "name", - "at": 847, - "from_row": 27, - "from_column": 44, - "name": "fd", - "to_row": 27, - "to_column": 46, - "level": 0, - "function_nr": 0 - }, - "right": "slurp", - "to_row": 27, - "to_column": 53 - }, - "list": [{ - "kind": "name", - "at": 856, - "from_row": 27, - "from_column": 53, - "name": "par_ast_path", - "to_row": 27, - "to_column": 65, - "level": 0, - "function_nr": 0 - }], - "to_row": 27, - "to_column": 67 - }], - "to_row": 27, - "to_column": 68 - }, { - "kind": "record", - "at": 872, - "from_row": 27, - "from_column": 69, - "list": [{ - "left": { - "kind": "name", - "at": 873, - "from_row": 27, - "from_column": 70, - "name": "use", - "to_row": 27, - "to_column": 73 - }, - "right": { - "kind": "name", - "at": 878, - "from_row": 27, - "from_column": 75, - "name": "use_basic", - "to_row": 27, - "to_column": 84, - "level": 0, - "function_nr": 0 - } - }], - "to_row": 27, - "to_column": 85 - }], - "to_row": 30, - "to_column": 3 - }, - "to_row": 30, - "to_column": 3 - }, { - "kind": "var", - "at": 932, - "from_row": 30, - "from_column": 0, - "left": { - "kind": "name", - "at": 936, - "from_row": 30, - "from_column": 4, - "name": "mcode_mod", - "to_row": 30, - "to_column": 13 - }, - "right": { - "kind": "null", - "at": 948, - "from_row": 30, - "from_column": 16, - "to_row": 30, - "to_column": 20 - }, - "to_row": 31, - "to_column": 3 - }, { - "kind": "var", - "at": 953, - "from_row": 31, - "from_column": 0, - "left": { - "kind": "name", - "at": 957, - "from_row": 31, - "from_column": 4, - "name": "mcode_ast_path", - "to_row": 31, - "to_column": 18 - }, - "right": { - "kind": "+", - "at": 984, - "from_row": 31, - "from_column": 31, - "left": { - "kind": "name", - "at": 974, - "from_row": 31, - "from_column": 21, - "name": "core_path", - "to_row": 31, - "to_column": 30, - "level": -1 - }, - "right": { - "kind": "text", - "at": 986, - "from_row": 31, - "from_column": 33, - "value": "/mcode.ast.json", - "to_row": 31, - "to_column": 50 - }, - "to_row": 32, - "to_column": 2 - }, - "to_row": 32, - "to_column": 2 - }, { - "kind": "if", - "at": 1004, - "from_row": 32, - "from_column": 0, - "expression": { - "kind": "name", - "at": 1008, - "from_row": 32, - "from_column": 4, - "name": "use_mcode", - "to_row": 32, - "to_column": 13, - "level": -1 - }, - "then": [{ - "kind": "block", - "at": 1019, - "from_row": 32, - "from_column": 15, - "statements": [{ - "kind": "call", - "at": 1023, - "from_row": 33, - "from_column": 2, - "expression": { - "kind": "assign", - "at": 1033, - "from_row": 33, - "from_column": 12, - "left": { - "kind": "name", - "at": 1023, - "from_row": 33, - "from_column": 2, - "name": "mcode_mod", - "to_row": 33, - "to_column": 11, - "level": 0, - "function_nr": 0 - }, - "right": { - "kind": "(", - "at": 1048, - "from_row": 33, - "from_column": 27, - "expression": { - "kind": "name", - "at": 1035, - "from_row": 33, - "from_column": 14, - "name": "mach_eval_ast", - "to_row": 33, - "to_column": 27, - "level": -1 - }, - "list": [{ - "kind": "text", - "at": 1049, - "from_row": 33, - "from_column": 28, - "value": "mcode", - "to_row": 33, - "to_column": 35 - }, { - "kind": "(", - "at": 1062, - "from_row": 33, - "from_column": 41, - "expression": { - "kind": "name", - "at": 1058, - "from_row": 33, - "from_column": 37, - "name": "text", - "to_row": 33, - "to_column": 41, - "level": -1 - }, - "list": [{ - "kind": "(", - "at": 1071, - "from_row": 33, - "from_column": 50, - "expression": { - "kind": ".", - "at": 1065, - "from_row": 33, - "from_column": 44, - "left": { - "kind": "name", - "at": 1063, - "from_row": 33, - "from_column": 42, - "name": "fd", - "to_row": 33, - "to_column": 44, - "level": 0, - "function_nr": 0 - }, - "right": "slurp", - "to_row": 33, - "to_column": 51 - }, - "list": [{ - "kind": "name", - "at": 1072, - "from_row": 33, - "from_column": 51, - "name": "mcode_ast_path", - "to_row": 33, - "to_column": 65, - "level": 0, - "function_nr": 0 - }], - "to_row": 33, - "to_column": 67 - }], - "to_row": 33, - "to_column": 68 - }, { - "kind": "record", - "at": 1090, - "from_row": 33, - "from_column": 69, - "list": [{ - "left": { - "kind": "name", - "at": 1091, - "from_row": 33, - "from_column": 70, - "name": "use", - "to_row": 33, - "to_column": 73 - }, - "right": { - "kind": "name", - "at": 1096, - "from_row": 33, - "from_column": 75, - "name": "use_basic", - "to_row": 33, - "to_column": 84, - "level": 0, - "function_nr": 0 - } - }], - "to_row": 33, - "to_column": 85 - }], - "to_row": 34, - "to_column": 1 - }, - "to_row": 34, - "to_column": 1 - }, - "to_row": 34, - "to_column": 1 - }], - "to_row": 37, - "to_column": 8 - }], - "list": [], - "to_row": 37, - "to_column": 8 - }, { - "kind": "var", - "at": 2942, - "from_row": 108, - "from_column": 0, - "left": { - "kind": "name", - "at": 2946, - "from_row": 108, - "from_column": 4, - "name": "program", - "to_row": 108, - "to_column": 11 - }, - "right": { - "kind": "[", - "at": 2960, - "from_row": 108, - "from_column": 18, - "left": { - "kind": "name", - "at": 2956, - "from_row": 108, - "from_column": 14, - "name": "args", - "to_row": 108, - "to_column": 18, - "level": -1 - }, - "right": { - "kind": "number", - "at": 2961, - "from_row": 108, - "from_column": 19, - "value": "0", - "number": 0, - "to_row": 108, - "to_column": 20 - }, - "to_row": 109, - "to_column": 3 - }, - "to_row": 109, - "to_column": 3 - }, { - "kind": "var", - "at": 2964, - "from_row": 109, - "from_column": 0, - "left": { - "kind": "name", - "at": 2968, - "from_row": 109, - "from_column": 4, - "name": "script_file", - "to_row": 109, - "to_column": 15 - }, - "right": { - "kind": "name", - "at": 2982, - "from_row": 109, - "from_column": 18, - "name": "program", - "to_row": 109, - "to_column": 25, - "level": 0, - "function_nr": 0 - }, - "to_row": 112, - "to_column": 2 - }, { - "kind": "if", - "at": 3035, - "from_row": 112, - "from_column": 0, - "expression": { - "kind": "&&", - "at": 3070, - "from_row": 112, - "from_column": 35, - "left": { - "kind": "!", - "at": 3039, - "from_row": 112, - "from_column": 4, - "expression": { - "kind": "(", - "at": 3049, - "from_row": 112, - "from_column": 14, - "expression": { - "kind": "name", - "at": 3040, - "from_row": 112, - "from_column": 5, - "name": "ends_with", - "to_row": 112, - "to_column": 14, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 3050, - "from_row": 112, - "from_column": 15, - "name": "script_file", - "to_row": 112, - "to_column": 26, - "level": 0, - "function_nr": 0 - }, { - "kind": "text", - "at": 3063, - "from_row": 112, - "from_column": 28, - "value": ".ce", - "to_row": 112, - "to_column": 33 - }], - "to_row": 112, - "to_column": 37 - }, - "to_row": 112, - "to_column": 37 - }, - "right": { - "kind": "!", - "at": 3073, - "from_row": 112, - "from_column": 38, - "expression": { - "kind": "(", - "at": 3083, - "from_row": 112, - "from_column": 48, - "expression": { - "kind": "name", - "at": 3074, - "from_row": 112, - "from_column": 39, - "name": "ends_with", - "to_row": 112, - "to_column": 48, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 3084, - "from_row": 112, - "from_column": 49, - "name": "script_file", - "to_row": 112, - "to_column": 60, - "level": 0, - "function_nr": 0 - }, { - "kind": "text", - "at": 3097, - "from_row": 112, - "from_column": 62, - "value": ".cm", - "to_row": 112, - "to_column": 67 - }], - "to_row": 112, - "to_column": 69 - }, - "to_row": 112, - "to_column": 69 - }, - "to_row": 112, - "to_column": 69 - }, - "then": [{ - "kind": "call", - "at": 3107, - "from_row": 113, - "from_column": 2, - "expression": { - "kind": "assign", - "at": 3119, - "from_row": 113, - "from_column": 14, - "left": { - "kind": "name", - "at": 3107, - "from_row": 113, - "from_column": 2, - "name": "script_file", - "to_row": 113, - "to_column": 13, - "level": 0, - "function_nr": 0 - }, - "right": { - "kind": "+", - "at": 3129, - "from_row": 113, - "from_column": 24, - "left": { - "kind": "name", - "at": 3121, - "from_row": 113, - "from_column": 16, - "name": "program", - "to_row": 113, - "to_column": 23, - "level": 0, - "function_nr": 0 - }, - "right": { - "kind": "text", - "at": 3131, - "from_row": 113, - "from_column": 26, - "value": ".ce", - "to_row": 113, - "to_column": 31 - }, - "to_row": 115, - "to_column": 3 - }, - "to_row": 115, - "to_column": 3 - }, - "to_row": 115, - "to_column": 3 - }], - "list": [], - "to_row": 115, - "to_column": 3 - }, { - "kind": "var", - "at": 3138, - "from_row": 115, - "from_column": 0, - "left": { - "kind": "name", - "at": 3142, - "from_row": 115, - "from_column": 4, - "name": "user_args", - "to_row": 115, - "to_column": 13 - }, - "right": { - "kind": "array", - "at": 3154, - "from_row": 115, - "from_column": 16, - "list": [], - "to_row": 115, - "to_column": 18 - }, - "to_row": 116, - "to_column": 3 - }, { - "kind": "var", - "at": 3157, - "from_row": 116, - "from_column": 0, - "left": { - "kind": "name", - "at": 3161, - "from_row": 116, - "from_column": 4, - "name": "_j", - "to_row": 116, - "to_column": 6 - }, - "right": { - "kind": "number", - "at": 3166, - "from_row": 116, - "from_column": 9, - "value": "1", - "number": 1, - "to_row": 116, - "to_column": 10 - }, - "to_row": 117, - "to_column": 5 - }, { - "kind": "while", - "at": 3168, - "from_row": 117, - "from_column": 0, - "expression": { - "kind": "<", - "at": 3178, - "from_row": 117, - "from_column": 10, - "left": { - "kind": "name", - "at": 3175, - "from_row": 117, - "from_column": 7, - "name": "_j", - "to_row": 117, - "to_column": 9, - "level": 0, - "function_nr": 0 - }, - "right": { - "kind": "(", - "at": 3186, - "from_row": 117, - "from_column": 18, - "expression": { - "kind": "name", - "at": 3180, - "from_row": 117, - "from_column": 12, - "name": "length", - "to_row": 117, - "to_column": 18, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 3187, - "from_row": 117, - "from_column": 19, - "name": "args", - "to_row": 117, - "to_column": 23, - "level": -1 - }], - "to_row": 117, - "to_column": 25 - }, - "to_row": 117, - "to_column": 25 - }, - "statements": [{ - "kind": "block", - "at": 3194, - "from_row": 117, - "from_column": 26, - "statements": [{ - "kind": "call", - "at": 3198, - "from_row": 118, - "from_column": 2, - "expression": { - "kind": "(", - "at": 3202, - "from_row": 118, - "from_column": 6, - "expression": { - "kind": "name", - "at": 3198, - "from_row": 118, - "from_column": 2, - "name": "push", - "to_row": 118, - "to_column": 6, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 3203, - "from_row": 118, - "from_column": 7, - "name": "user_args", - "to_row": 118, - "to_column": 16, - "level": 0, - "function_nr": 0 - }, { - "kind": "[", - "at": 3218, - "from_row": 118, - "from_column": 22, - "left": { - "kind": "name", - "at": 3214, - "from_row": 118, - "from_column": 18, - "name": "args", - "to_row": 118, - "to_column": 22, - "level": -1 - }, - "right": { - "kind": "name", - "at": 3219, - "from_row": 118, - "from_column": 23, - "name": "_j", - "to_row": 118, - "to_column": 25, - "level": 0, - "function_nr": 0 - }, - "to_row": 118, - "to_column": 27 - }], - "to_row": 119, - "to_column": 4 - }, - "to_row": 119, - "to_column": 4 - }, { - "kind": "call", - "at": 3226, - "from_row": 119, - "from_column": 2, - "expression": { - "kind": "assign", - "at": 3229, - "from_row": 119, - "from_column": 5, - "left": { - "kind": "name", - "at": 3226, - "from_row": 119, - "from_column": 2, - "name": "_j", - "to_row": 119, - "to_column": 4, - "level": 0, - "function_nr": 0 - }, - "right": { - "kind": "+", - "at": 3234, - "from_row": 119, - "from_column": 10, - "left": { - "kind": "name", - "at": 3231, - "from_row": 119, - "from_column": 7, - "name": "_j", - "to_row": 119, - "to_column": 9, - "level": 0, - "function_nr": 0 - }, - "right": { - "kind": "number", - "at": 3236, - "from_row": 119, - "from_column": 12, - "value": "1", - "number": 1, - "to_row": 119, - "to_column": 13 - }, - "to_row": 120, - "to_column": 1 - }, - "to_row": 120, - "to_column": 1 - }, - "to_row": 120, - "to_column": 1 - }], - "to_row": 122, - "to_column": 3 - }], - "to_row": 122, - "to_column": 3 - }, { - "kind": "var", - "at": 3241, - "from_row": 122, - "from_column": 0, - "left": { - "kind": "name", - "at": 3245, - "from_row": 122, - "from_column": 4, - "name": "script", - "to_row": 122, - "to_column": 10 - }, - "right": { - "kind": "(", - "at": 3258, - "from_row": 122, - "from_column": 17, - "expression": { - "kind": "name", - "at": 3254, - "from_row": 122, - "from_column": 13, - "name": "text", - "to_row": 122, - "to_column": 17, - "level": -1 - }, - "list": [{ - "kind": "(", - "at": 3267, - "from_row": 122, - "from_column": 26, - "expression": { - "kind": ".", - "at": 3261, - "from_row": 122, - "from_column": 20, - "left": { - "kind": "name", - "at": 3259, - "from_row": 122, - "from_column": 18, - "name": "fd", - "to_row": 122, - "to_column": 20, - "level": 0, - "function_nr": 0 - }, - "right": "slurp", - "to_row": 122, - "to_column": 27 - }, - "list": [{ - "kind": "name", - "at": 3268, - "from_row": 122, - "from_column": 27, - "name": "script_file", - "to_row": 122, - "to_column": 38, - "level": 0, - "function_nr": 0 - }], - "to_row": 122, - "to_column": 40 - }], - "to_row": 123, - "to_column": 3 - }, - "to_row": 123, - "to_column": 3 - }, { - "kind": "var", - "at": 3282, - "from_row": 123, - "from_column": 0, - "left": { - "kind": "name", - "at": 3286, - "from_row": 123, - "from_column": 4, - "name": "ast", - "to_row": 123, - "to_column": 7 - }, - "right": { - "kind": "(", - "at": 3299, - "from_row": 123, - "from_column": 17, - "expression": { - "kind": "name", - "at": 3292, - "from_row": 123, - "from_column": 10, - "name": "analyze", - "to_row": 123, - "to_column": 17, - "level": 0, - "function_nr": 0 - }, - "list": [{ - "kind": "name", - "at": 3300, - "from_row": 123, - "from_column": 18, - "name": "script", - "to_row": 123, - "to_column": 24, - "level": 0, - "function_nr": 0 - }, { - "kind": "name", - "at": 3308, - "from_row": 123, - "from_column": 26, - "name": "script_file", - "to_row": 123, - "to_column": 37, - "level": 0, - "function_nr": 0 - }], - "to_row": 124, - "to_column": 7 - }, - "to_row": 124, - "to_column": 7 - }, { - "kind": "call", - "at": 3321, - "from_row": 124, - "from_column": 0, - "expression": { - "kind": "(", - "at": 3328, - "from_row": 124, - "from_column": 7, - "expression": { - "kind": "name", - "at": 3321, - "from_row": 124, - "from_column": 0, - "name": "run_ast", - "to_row": 124, - "to_column": 7, - "level": 0, - "function_nr": 0 - }, - "list": [{ - "kind": "name", - "at": 3329, - "from_row": 124, - "from_column": 8, - "name": "program", - "to_row": 124, - "to_column": 15, - "level": 0, - "function_nr": 0 - }, { - "kind": "name", - "at": 3338, - "from_row": 124, - "from_column": 17, - "name": "ast", - "to_row": 124, - "to_column": 20, - "level": 0, - "function_nr": 0 - }, { - "kind": "record", - "at": 3343, - "from_row": 124, - "from_column": 22, - "list": [{ - "left": { - "kind": "name", - "at": 3344, - "from_row": 124, - "from_column": 23, - "name": "use", - "to_row": 124, - "to_column": 26 - }, - "right": { - "kind": "name", - "at": 3349, - "from_row": 124, - "from_column": 28, - "name": "use", - "to_row": 124, - "to_column": 31, - "level": 0, - "function_nr": 0 - } - }, { - "left": { - "kind": "name", - "at": 3354, - "from_row": 124, - "from_column": 33, - "name": "args", - "to_row": 124, - "to_column": 37 - }, - "right": { - "kind": "name", - "at": 3360, - "from_row": 124, - "from_column": 39, - "name": "user_args", - "to_row": 124, - "to_column": 48, - "level": 0, - "function_nr": 0 - } - }, { - "left": { - "kind": "name", - "at": 3371, - "from_row": 124, - "from_column": 50, - "name": "json", - "to_row": 124, - "to_column": 54 - }, - "right": { - "kind": "name", - "at": 3377, - "from_row": 124, - "from_column": 56, - "name": "json", - "to_row": 124, - "to_column": 60, - "level": 0, - "function_nr": 0 - } - }], - "to_row": 124, - "to_column": 61 - }], - "to_row": 125, - "to_column": 0 - }, - "to_row": 125, - "to_column": 0 - }], - "scopes": [{ - "function_nr": 0, - "use_embed": { - "make": "function", - "function_nr": 0, - "nr_uses": 4, - "closure": true, - "level": 0 - }, - "use_basic": { - "make": "function", - "function_nr": 0, - "nr_uses": 3, - "closure": false, - "level": 0 - }, - "analyze": { - "make": "function", - "function_nr": 0, - "nr_uses": 2, - "closure": true, - "level": 0 - }, - "run_ast": { - "make": "function", - "function_nr": 0, - "nr_uses": 2, - "closure": true, - "level": 0 - }, - "use": { - "make": "function", - "function_nr": 0, - "nr_uses": 2, - "closure": true, - "level": 0 - }, - "load_internal": { - "make": "var", - "function_nr": 0, - "nr_uses": 1, - "closure": true, - "level": 0 - }, - "fd": { - "make": "var", - "function_nr": 0, - "nr_uses": 8, - "closure": true, - "level": 0 - }, - "json": { - "make": "var", - "function_nr": 0, - "nr_uses": 4, - "closure": true, - "level": 0 - }, - "use_cache": { - "make": "var", - "function_nr": 0, - "nr_uses": 10, - "closure": true, - "level": 0 - }, - "tok_ast_path": { - "make": "var", - "function_nr": 0, - "nr_uses": 1, - "closure": false, - "level": 0 - }, - "par_ast_path": { - "make": "var", - "function_nr": 0, - "nr_uses": 1, - "closure": false, - "level": 0 - }, - "tokenize_mod": { - "make": "var", - "function_nr": 0, - "nr_uses": 2, - "closure": true, - "level": 0 - }, - "parse_mod": { - "make": "var", - "function_nr": 0, - "nr_uses": 1, - "closure": true, - "level": 0 - }, - "mcode_mod": { - "make": "var", - "function_nr": 0, - "nr_uses": 1, - "closure": true, - "level": 0 - }, - "mcode_ast_path": { - "make": "var", - "function_nr": 0, - "nr_uses": 1, - "closure": false, - "level": 0 - }, - "program": { - "make": "var", - "function_nr": 0, - "nr_uses": 3, - "closure": false, - "level": 0 - }, - "script_file": { - "make": "var", - "function_nr": 0, - "nr_uses": 4, - "closure": false, - "level": 0 - }, - "user_args": { - "make": "var", - "function_nr": 0, - "nr_uses": 2, - "closure": false, - "level": 0 - }, - "_j": { - "make": "var", - "function_nr": 0, - "nr_uses": 3, - "closure": false, - "level": 0 - }, - "script": { - "make": "var", - "function_nr": 0, - "nr_uses": 1, - "closure": false, - "level": 0 - }, - "ast": { - "make": "var", - "function_nr": 0, - "nr_uses": 1, - "closure": false, - "level": 0 - }, - "use_embed": { - "make": "function", - "function_nr": 0, - "nr_uses": 0, - "closure": false, - "level": 0 - }, - "use_basic": { - "make": "function", - "function_nr": 0, - "nr_uses": 0, - "closure": false, - "level": 0 - }, - "analyze": { - "make": "function", - "function_nr": 0, - "nr_uses": 0, - "closure": false, - "level": 0 - }, - "run_ast": { - "make": "function", - "function_nr": 0, - "nr_uses": 0, - "closure": false, - "level": 0 - }, - "use": { - "make": "function", - "function_nr": 0, - "nr_uses": 0, - "closure": false, - "level": 0 - } - }, { - "function_nr": 1, - "name": { - "make": "input", - "function_nr": 1, - "nr_uses": 1, - "closure": false, - "level": 0 - } - }, { - "function_nr": 2, - "path": { - "make": "input", - "function_nr": 2, - "nr_uses": 4, - "closure": false, - "level": 0 - }, - "result": { - "make": "var", - "function_nr": 2, - "nr_uses": 2, - "closure": false, - "level": 0 - } - }, { - "function_nr": 3, - "src": { - "make": "input", - "function_nr": 3, - "nr_uses": 2, - "closure": false, - "level": 0 - }, - "filename": { - "make": "input", - "function_nr": 3, - "nr_uses": 4, - "closure": false, - "level": 0 - }, - "tok_result": { - "make": "var", - "function_nr": 3, - "nr_uses": 1, - "closure": false, - "level": 0 - }, - "_i": { - "make": "var", - "function_nr": 3, - "nr_uses": 3, - "closure": false, - "level": 0 - }, - "prev_line": { - "make": "var", - "function_nr": 3, - "nr_uses": 1, - "closure": false, - "level": 0 - }, - "prev_msg": { - "make": "var", - "function_nr": 3, - "nr_uses": 1, - "closure": false, - "level": 0 - }, - "e": { - "make": "var", - "function_nr": 3, - "nr_uses": 3, - "closure": false, - "level": 0 - }, - "msg": { - "make": "var", - "function_nr": 3, - "nr_uses": 4, - "closure": false, - "level": 0 - }, - "line": { - "make": "var", - "function_nr": 3, - "nr_uses": 4, - "closure": false, - "level": 0 - }, - "col": { - "make": "var", - "function_nr": 3, - "nr_uses": 2, - "closure": false, - "level": 0 - }, - "has_errors": { - "make": "var", - "function_nr": 3, - "nr_uses": 1, - "closure": false, - "level": 0 - }, - "ast": { - "make": "var", - "function_nr": 3, - "nr_uses": 5, - "closure": false, - "level": 0 - } - }, { - "function_nr": 4, - "name": { - "make": "input", - "function_nr": 4, - "nr_uses": 2, - "closure": false, - "level": 0 - }, - "ast": { - "make": "input", - "function_nr": 4, - "nr_uses": 2, - "closure": false, - "level": 0 - }, - "env": { - "make": "input", - "function_nr": 4, - "nr_uses": 2, - "closure": false, - "level": 0 - }, - "compiled": { - "make": "var", - "function_nr": 4, - "nr_uses": 1, - "closure": false, - "level": 0 - } - }, { - "function_nr": 5, - "path": { - "make": "input", - "function_nr": 5, - "nr_uses": 8, - "closure": false, - "level": 0 - }, - "file_path": { - "make": "var", - "function_nr": 5, - "nr_uses": 4, - "closure": false, - "level": 0 - }, - "result": { - "make": "var", - "function_nr": 5, - "nr_uses": 4, - "closure": false, - "level": 0 - }, - "script": { - "make": "var", - "function_nr": 5, - "nr_uses": 1, - "closure": false, - "level": 0 - }, - "ast": { - "make": "var", - "function_nr": 5, - "nr_uses": 1, - "closure": false, - "level": 0 - } - }], - "intrinsics": ["os", "core_path", "mach_eval_ast", "text", "use_mcode", "args", "ends_with", "length", "push", "replace", "print", "mcode_run"] -} + "functions": [ + { + "from_column": 0, + "nr_slots": 1, + "statements": [ + { + "to_row": 4, + "from_column": 2, + "to_column": 45, + "kind": "return", + "at": 176, + "from_row": 4, + "expression": { + "list": [ + { + "to_column": 44, + "from_column": 36, + "right": { + "to_row": 4, + "from_column": 38, + "to_column": 44, + "kind": "text", + "at": 212, + "from_row": 4, + "value": "_use" + }, + "left": { + "to_column": 35, + "from_column": 29, + "right": { + "to_column": 35, + "from_column": 31, + "level": 0, + "function_nr": 1, + "name": "name", + "kind": "name", + "at": 205, + "from_row": 4, + "to_row": 4 + }, + "left": { + "to_row": 4, + "from_column": 23, + "to_column": 28, + "kind": "text", + "at": 197, + "from_row": 4, + "value": "js_" + }, + "kind": "+", + "at": 203, + "from_row": 4, + "to_row": 4 + }, + "kind": "+", + "at": 210, + "from_row": 4, + "to_row": 4 + } + ], + "from_column": 22, + "to_row": 4, + "to_column": 45, + "kind": "(", + "at": 196, + "from_row": 4, + "expression": { + "to_column": 22, + "from_column": 9, + "level": 1, + "function_nr": 0, + "name": "load_internal", + "kind": "name", + "at": 183, + "from_row": 4, + "to_row": 4 + } + } + } + ], + "name": "use_embed", + "to_column": 1, + "kind": "function", + "at": 147, + "to_row": 5, + "outer": 0, + "list": [ + { + "to_column": 23, + "from_column": 19, + "name": "name", + "kind": "name", + "at": 166, + "from_row": 3, + "to_row": 3 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 1, + "from_row": 3 + }, + { + "from_column": 0, + "nr_slots": 2, + "statements": [ + { + "then": [ + { + "to_row": 18, + "from_column": 4, + "to_column": 26, + "kind": "return", + "at": 490, + "from_row": 18, + "expression": { + "to_column": 26, + "from_column": 20, + "right": { + "to_column": 25, + "from_column": 21, + "level": 0, + "function_nr": 2, + "name": "path", + "kind": "name", + "at": 507, + "from_row": 18, + "to_row": 18 + }, + "left": { + "to_column": 20, + "from_column": 11, + "level": 1, + "function_nr": 0, + "name": "use_cache", + "kind": "name", + "at": 497, + "from_row": 18, + "to_row": 18 + }, + "kind": "[", + "at": 506, + "from_row": 18, + "to_row": 18 + } + } + ], + "from_column": 2, + "list": [], + "to_row": 18, + "to_column": 26, + "kind": "if", + "at": 465, + "from_row": 17, + "expression": { + "to_column": 21, + "from_column": 15, + "right": { + "to_column": 20, + "from_column": 16, + "level": 0, + "function_nr": 2, + "name": "path", + "kind": "name", + "at": 479, + "from_row": 17, + "to_row": 17 + }, + "left": { + "to_column": 15, + "from_column": 6, + "level": 1, + "function_nr": 0, + "name": "use_cache", + "kind": "name", + "at": 469, + "from_row": 17, + "to_row": 17 + }, + "kind": "[", + "at": 478, + "from_row": 17, + "to_row": 17 + } + }, + { + "to_column": 49, + "from_column": 2, + "right": { + "list": [ + { + "list": [ + { + "to_column": 37, + "from_column": 33, + "level": 0, + "function_nr": 2, + "name": "path", + "kind": "name", + "at": 546, + "from_row": 19, + "to_row": 19 + }, + { + "to_row": 19, + "from_column": 39, + "to_column": 42, + "kind": "text", + "at": 552, + "from_row": 19, + "value": "/" + }, + { + "to_row": 19, + "from_column": 44, + "to_column": 47, + "kind": "text", + "at": 557, + "from_row": 19, + "value": "_" + } + ], + "from_column": 32, + "to_row": 19, + "to_column": 48, + "kind": "(", + "at": 545, + "from_row": 19, + "expression": { + "to_column": 32, + "from_column": 25, + "level": -1, + "name": "replace", + "kind": "name", + "at": 538, + "from_row": 19, + "to_row": 19 + } + } + ], + "from_column": 24, + "to_row": 19, + "to_column": 49, + "kind": "(", + "at": 537, + "from_row": 19, + "expression": { + "to_column": 24, + "from_column": 15, + "level": 1, + "function_nr": 0, + "name": "use_embed", + "kind": "name", + "at": 528, + "from_row": 19, + "to_row": 19 + } + }, + "left": { + "to_column": 12, + "from_column": 6, + "name": "result", + "kind": "name", + "at": 519, + "from_row": 19, + "to_row": 19 + }, + "kind": "var", + "at": 515, + "from_row": 19, + "to_row": 19 + }, + { + "to_row": 20, + "from_column": 2, + "to_column": 26, + "kind": "call", + "at": 565, + "from_row": 20, + "expression": { + "to_column": 26, + "from_column": 18, + "right": { + "to_column": 26, + "from_column": 20, + "level": 0, + "function_nr": 2, + "name": "result", + "kind": "name", + "at": 583, + "from_row": 20, + "to_row": 20 + }, + "left": { + "to_column": 17, + "from_column": 11, + "right": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 2, + "name": "path", + "kind": "name", + "at": 575, + "from_row": 20, + "to_row": 20 + }, + "left": { + "to_column": 11, + "from_column": 2, + "level": 1, + "function_nr": 0, + "name": "use_cache", + "kind": "name", + "at": 565, + "from_row": 20, + "to_row": 20 + }, + "kind": "[", + "at": 574, + "from_row": 20, + "to_row": 20 + }, + "kind": "assign", + "at": 581, + "from_row": 20, + "to_row": 20 + } + }, + { + "to_row": 21, + "from_column": 2, + "to_column": 15, + "kind": "return", + "at": 592, + "from_row": 21, + "expression": { + "to_column": 15, + "from_column": 9, + "level": 0, + "function_nr": 2, + "name": "result", + "kind": "name", + "at": 599, + "from_row": 21, + "to_row": 21 + } + } + ], + "name": "use_basic", + "to_column": 1, + "kind": "function", + "at": 436, + "to_row": 22, + "outer": 0, + "list": [ + { + "to_column": 23, + "from_column": 19, + "name": "path", + "kind": "name", + "at": 455, + "from_row": 16, + "to_row": 16 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 2, + "from_row": 16 + }, + { + "from_column": 0, + "nr_slots": 12, + "statements": [ + { + "to_column": 46, + "from_column": 2, + "right": { + "list": [ + { + "to_column": 35, + "from_column": 32, + "level": 0, + "function_nr": 3, + "name": "src", + "kind": "name", + "at": 1307, + "from_row": 40, + "to_row": 40 + }, + { + "to_column": 45, + "from_column": 37, + "level": 0, + "function_nr": 3, + "name": "filename", + "kind": "name", + "at": 1312, + "from_row": 40, + "to_row": 40 + } + ], + "from_column": 31, + "to_row": 40, + "to_column": 46, + "kind": "(", + "at": 1306, + "from_row": 40, + "expression": { + "to_column": 31, + "from_column": 19, + "level": 1, + "function_nr": 0, + "name": "tokenize_mod", + "kind": "name", + "at": 1294, + "from_row": 40, + "to_row": 40 + } + }, + "left": { + "to_column": 16, + "from_column": 6, + "name": "tok_result", + "kind": "name", + "at": 1281, + "from_row": 40, + "to_row": 40 + }, + "kind": "var", + "at": 1277, + "from_row": 40, + "to_row": 40 + }, + { + "to_column": 69, + "from_column": 2, + "right": { + "list": [ + { + "to_column": 39, + "from_column": 32, + "right": "tokens", + "left": { + "to_column": 32, + "from_column": 22, + "level": 0, + "function_nr": 3, + "name": "tok_result", + "kind": "name", + "at": 1344, + "from_row": 41, + "to_row": 41 + }, + "kind": ".", + "at": 1354, + "from_row": 41, + "to_row": 41 + }, + { + "to_column": 44, + "from_column": 41, + "level": 0, + "function_nr": 3, + "name": "src", + "kind": "name", + "at": 1363, + "from_row": 41, + "to_row": 41 + }, + { + "to_column": 54, + "from_column": 46, + "level": 0, + "function_nr": 3, + "name": "filename", + "kind": "name", + "at": 1368, + "from_row": 41, + "to_row": 41 + }, + { + "to_column": 68, + "from_column": 56, + "level": 1, + "function_nr": 0, + "name": "tokenize_mod", + "kind": "name", + "at": 1378, + "from_row": 41, + "to_row": 41 + } + ], + "from_column": 21, + "to_row": 41, + "to_column": 69, + "kind": "(", + "at": 1343, + "from_row": 41, + "expression": { + "to_column": 21, + "from_column": 12, + "level": 1, + "function_nr": 0, + "name": "parse_mod", + "kind": "name", + "at": 1334, + "from_row": 41, + "to_row": 41 + } + }, + "left": { + "to_column": 9, + "from_column": 6, + "name": "ast", + "kind": "name", + "at": 1328, + "from_row": 41, + "to_row": 41 + }, + "kind": "var", + "at": 1324, + "from_row": 41, + "to_row": 41 + }, + { + "to_column": 12, + "from_column": 2, + "right": { + "to_row": 42, + "from_column": 11, + "number": 0, + "to_column": 12, + "kind": "number", + "at": 1403, + "from_row": 42, + "value": "0" + }, + "left": { + "to_column": 8, + "from_column": 6, + "name": "_i", + "kind": "name", + "at": 1398, + "from_row": 42, + "to_row": 42 + }, + "kind": "var", + "at": 1394, + "from_row": 42, + "to_row": 42 + }, + { + "to_column": 20, + "from_column": 2, + "right": { + "to_row": 43, + "from_column": 18, + "number": -1, + "to_column": 20, + "kind": "number", + "value": "-1", + "at": 1423, + "from_row": 43 + }, + "left": { + "to_column": 15, + "from_column": 6, + "name": "prev_line", + "kind": "name", + "at": 1411, + "from_row": 43, + "to_row": 43 + }, + "kind": "var", + "at": 1407, + "from_row": 43, + "to_row": 43 + }, + { + "to_column": 21, + "from_column": 2, + "right": { + "to_column": 21, + "from_column": 17, + "kind": "null", + "at": 1443, + "from_row": 44, + "to_row": 44 + }, + "left": { + "to_column": 14, + "from_column": 6, + "name": "prev_msg", + "kind": "name", + "at": 1432, + "from_row": 44, + "to_row": 44 + }, + "kind": "var", + "at": 1428, + "from_row": 44, + "to_row": 44 + }, + { + "to_column": 14, + "from_column": 2, + "right": { + "to_column": 14, + "from_column": 10, + "kind": "null", + "at": 1458, + "from_row": 45, + "to_row": 45 + }, + "left": { + "to_column": 7, + "from_column": 6, + "name": "e", + "kind": "name", + "at": 1454, + "from_row": 45, + "to_row": 45 + }, + "kind": "var", + "at": 1450, + "from_row": 45, + "to_row": 45 + }, + { + "to_column": 16, + "from_column": 2, + "right": { + "to_column": 16, + "from_column": 12, + "kind": "null", + "at": 1475, + "from_row": 46, + "to_row": 46 + }, + "left": { + "to_column": 9, + "from_column": 6, + "name": "msg", + "kind": "name", + "at": 1469, + "from_row": 46, + "to_row": 46 + }, + "kind": "var", + "at": 1465, + "from_row": 46, + "to_row": 46 + }, + { + "to_column": 17, + "from_column": 2, + "right": { + "to_column": 17, + "from_column": 13, + "kind": "null", + "at": 1493, + "from_row": 47, + "to_row": 47 + }, + "left": { + "to_column": 10, + "from_column": 6, + "name": "line", + "kind": "name", + "at": 1486, + "from_row": 47, + "to_row": 47 + }, + "kind": "var", + "at": 1482, + "from_row": 47, + "to_row": 47 + }, + { + "to_column": 16, + "from_column": 2, + "right": { + "to_column": 16, + "from_column": 12, + "kind": "null", + "at": 1510, + "from_row": 48, + "to_row": 48 + }, + "left": { + "to_column": 9, + "from_column": 6, + "name": "col", + "kind": "name", + "at": 1504, + "from_row": 48, + "to_row": 48 + }, + "kind": "var", + "at": 1500, + "from_row": 48, + "to_row": 48 + }, + { + "to_column": 63, + "from_column": 2, + "right": { + "to_column": 63, + "from_column": 38, + "right": { + "to_column": 63, + "from_column": 60, + "right": { + "to_row": 49, + "from_column": 62, + "number": 0, + "to_column": 63, + "kind": "number", + "at": 1577, + "from_row": 49, + "value": "0" + }, + "left": { + "list": [ + { + "to_column": 58, + "from_column": 51, + "right": "errors", + "left": { + "to_column": 51, + "from_column": 48, + "level": 0, + "function_nr": 3, + "name": "ast", + "kind": "name", + "at": 1563, + "from_row": 49, + "to_row": 49 + }, + "kind": ".", + "at": 1566, + "from_row": 49, + "to_row": 49 + } + ], + "from_column": 47, + "to_row": 49, + "to_column": 59, + "kind": "(", + "at": 1562, + "from_row": 49, + "expression": { + "to_column": 47, + "from_column": 41, + "level": -1, + "name": "length", + "kind": "name", + "at": 1556, + "from_row": 49, + "to_row": 49 + } + }, + "kind": ">", + "at": 1575, + "from_row": 49, + "to_row": 49 + }, + "left": { + "to_column": 37, + "from_column": 30, + "right": { + "to_column": 37, + "from_column": 33, + "kind": "null", + "at": 1548, + "from_row": 49, + "to_row": 49 + }, + "left": { + "to_column": 29, + "from_column": 22, + "right": "errors", + "left": { + "to_column": 22, + "from_column": 19, + "level": 0, + "function_nr": 3, + "name": "ast", + "kind": "name", + "at": 1534, + "from_row": 49, + "to_row": 49 + }, + "kind": ".", + "at": 1537, + "from_row": 49, + "to_row": 49 + }, + "kind": "!=", + "at": 1545, + "from_row": 49, + "to_row": 49 + }, + "kind": "&&", + "at": 1553, + "from_row": 49, + "to_row": 49 + }, + "left": { + "to_column": 16, + "from_column": 6, + "name": "has_errors", + "kind": "name", + "at": 1521, + "from_row": 49, + "to_row": 49 + }, + "kind": "var", + "at": 1517, + "from_row": 49, + "to_row": 49 + }, + { + "then": [ + { + "to_column": 3, + "from_column": 18, + "statements": [ + { + "to_row": 66, + "from_column": 4, + "to_column": 5, + "statements": [ + { + "to_column": 5, + "from_column": 36, + "statements": [ + { + "to_row": 52, + "from_column": 6, + "to_column": 24, + "kind": "call", + "at": 1643, + "from_row": 52, + "expression": { + "to_column": 24, + "from_column": 8, + "right": { + "to_column": 24, + "from_column": 20, + "right": { + "to_column": 23, + "from_column": 21, + "level": 0, + "function_nr": 3, + "name": "_i", + "kind": "name", + "at": 1658, + "from_row": 52, + "to_row": 52 + }, + "left": { + "to_column": 20, + "from_column": 13, + "right": "errors", + "left": { + "to_column": 13, + "from_column": 10, + "level": 0, + "function_nr": 3, + "name": "ast", + "kind": "name", + "at": 1647, + "from_row": 52, + "to_row": 52 + }, + "kind": ".", + "at": 1650, + "from_row": 52, + "to_row": 52 + }, + "kind": "[", + "at": 1657, + "from_row": 52, + "to_row": 52 + }, + "left": { + "to_column": 7, + "from_column": 6, + "level": 0, + "function_nr": 3, + "name": "e", + "kind": "name", + "at": 1643, + "from_row": 52, + "to_row": 52 + }, + "kind": "assign", + "at": 1645, + "from_row": 52, + "to_row": 52 + } + }, + { + "to_row": 53, + "from_column": 6, + "to_column": 21, + "kind": "call", + "at": 1668, + "from_row": 53, + "expression": { + "to_column": 21, + "from_column": 10, + "right": { + "to_column": 21, + "from_column": 13, + "right": "message", + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 3, + "name": "e", + "kind": "name", + "at": 1674, + "from_row": 53, + "to_row": 53 + }, + "kind": ".", + "at": 1675, + "from_row": 53, + "to_row": 53 + }, + "left": { + "to_column": 9, + "from_column": 6, + "level": 0, + "function_nr": 3, + "name": "msg", + "kind": "name", + "at": 1668, + "from_row": 53, + "to_row": 53 + }, + "kind": "assign", + "at": 1672, + "from_row": 53, + "to_row": 53 + } + }, + { + "to_row": 54, + "from_column": 6, + "to_column": 19, + "kind": "call", + "at": 1690, + "from_row": 54, + "expression": { + "to_column": 19, + "from_column": 11, + "right": { + "to_column": 19, + "from_column": 14, + "right": "line", + "left": { + "to_column": 14, + "from_column": 13, + "level": 0, + "function_nr": 3, + "name": "e", + "kind": "name", + "at": 1697, + "from_row": 54, + "to_row": 54 + }, + "kind": ".", + "at": 1698, + "from_row": 54, + "to_row": 54 + }, + "left": { + "to_column": 10, + "from_column": 6, + "level": 0, + "function_nr": 3, + "name": "line", + "kind": "name", + "at": 1690, + "from_row": 54, + "to_row": 54 + }, + "kind": "assign", + "at": 1695, + "from_row": 54, + "to_row": 54 + } + }, + { + "to_row": 55, + "from_column": 6, + "to_column": 20, + "kind": "call", + "at": 1710, + "from_row": 55, + "expression": { + "to_column": 20, + "from_column": 10, + "right": { + "to_column": 20, + "from_column": 13, + "right": "column", + "left": { + "to_column": 13, + "from_column": 12, + "level": 0, + "function_nr": 3, + "name": "e", + "kind": "name", + "at": 1716, + "from_row": 55, + "to_row": 55 + }, + "kind": ".", + "at": 1717, + "from_row": 55, + "to_row": 55 + }, + "left": { + "to_column": 9, + "from_column": 6, + "level": 0, + "function_nr": 3, + "name": "col", + "kind": "name", + "at": 1710, + "from_row": 55, + "to_row": 55 + }, + "kind": "assign", + "at": 1714, + "from_row": 55, + "to_row": 55 + } + }, + { + "then": [ + { + "to_column": 7, + "from_column": 48, + "statements": [ + { + "then": [ + { + "to_column": 9, + "from_column": 41, + "statements": [ + { + "to_row": 58, + "from_column": 10, + "to_column": 72, + "kind": "call", + "at": 1828, + "from_row": 58, + "expression": { + "list": [ + { + "list": [ + { + "to_column": 8, + "from_column": 0, + "level": 0, + "function_nr": 3, + "name": "filename", + "kind": "name", + "at": 0, + "from_row": 0, + "to_row": 0 + }, + { + "list": [ + { + "to_column": 9, + "from_column": 5, + "level": 0, + "function_nr": 3, + "name": "line", + "kind": "name", + "at": 5, + "from_row": 0, + "to_row": 0 + } + ], + "from_column": 4, + "to_row": 0, + "to_column": 10, + "kind": "(", + "at": 4, + "from_row": 0, + "expression": { + "to_column": 4, + "from_column": 0, + "level": -1, + "name": "text", + "kind": "name", + "at": 0, + "from_row": 0, + "to_row": 0 + } + }, + { + "list": [ + { + "to_column": 8, + "from_column": 5, + "level": 0, + "function_nr": 3, + "name": "col", + "kind": "name", + "at": 5, + "from_row": 0, + "to_row": 0 + } + ], + "from_column": 4, + "to_row": 0, + "to_column": 9, + "kind": "(", + "at": 4, + "from_row": 0, + "expression": { + "to_column": 4, + "from_column": 0, + "level": -1, + "name": "text", + "kind": "name", + "at": 0, + "from_row": 0, + "to_row": 0 + } + }, + { + "to_column": 3, + "from_column": 0, + "level": 0, + "function_nr": 3, + "name": "msg", + "kind": "name", + "at": 0, + "from_row": 0, + "to_row": 0 + } + ], + "from_column": 16, + "to_row": 58, + "to_column": 71, + "kind": "text literal", + "at": 1834, + "from_row": 58, + "value": "{0}:{1}:{2}: error: {3}" + } + ], + "from_column": 15, + "to_row": 58, + "to_column": 72, + "kind": "(", + "at": 1833, + "from_row": 58, + "expression": { + "to_column": 15, + "from_column": 10, + "level": -1, + "name": "print", + "kind": "name", + "at": 1828, + "from_row": 58, + "to_row": 58 + } + } + } + ], + "kind": "block", + "at": 1816, + "from_row": 57, + "to_row": 59 + } + ], + "from_column": 8, + "list": [], + "else": [ + { + "to_column": 9, + "from_column": 15, + "statements": [ + { + "to_row": 60, + "from_column": 10, + "to_column": 45, + "kind": "call", + "at": 1918, + "from_row": 60, + "expression": { + "list": [ + { + "list": [ + { + "to_column": 8, + "from_column": 0, + "level": 0, + "function_nr": 3, + "name": "filename", + "kind": "name", + "at": 0, + "from_row": 0, + "to_row": 0 + }, + { + "to_column": 3, + "from_column": 0, + "level": 0, + "function_nr": 3, + "name": "msg", + "kind": "name", + "at": 0, + "from_row": 0, + "to_row": 0 + } + ], + "from_column": 16, + "to_row": 60, + "to_column": 44, + "kind": "text literal", + "at": 1924, + "from_row": 60, + "value": "{0}: error: {1}" + } + ], + "from_column": 15, + "to_row": 60, + "to_column": 45, + "kind": "(", + "at": 1923, + "from_row": 60, + "expression": { + "to_column": 15, + "from_column": 10, + "level": -1, + "name": "print", + "kind": "name", + "at": 1918, + "from_row": 60, + "to_row": 60 + } + } + } + ], + "kind": "block", + "at": 1906, + "from_row": 59, + "to_row": 61 + } + ], + "to_row": 61, + "to_column": 9, + "kind": "if", + "at": 1783, + "from_row": 57, + "expression": { + "to_column": 39, + "from_column": 25, + "right": { + "to_column": 39, + "from_column": 32, + "right": { + "to_column": 39, + "from_column": 35, + "kind": "null", + "at": 1810, + "from_row": 57, + "to_row": 57 + }, + "left": { + "to_column": 31, + "from_column": 28, + "level": 0, + "function_nr": 3, + "name": "col", + "kind": "name", + "at": 1803, + "from_row": 57, + "to_row": 57 + }, + "kind": "!=", + "at": 1807, + "from_row": 57, + "to_row": 57 + }, + "left": { + "to_column": 24, + "from_column": 17, + "right": { + "to_column": 24, + "from_column": 20, + "kind": "null", + "at": 1795, + "from_row": 57, + "to_row": 57 + }, + "left": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 3, + "name": "line", + "kind": "name", + "at": 1787, + "from_row": 57, + "to_row": 57 + }, + "kind": "!=", + "at": 1792, + "from_row": 57, + "to_row": 57 + }, + "kind": "&&", + "at": 1800, + "from_row": 57, + "to_row": 57 + } + } + ], + "kind": "block", + "at": 1773, + "from_row": 56, + "to_row": 62 + } + ], + "from_column": 6, + "list": [], + "to_row": 62, + "to_column": 7, + "kind": "if", + "at": 1731, + "from_row": 56, + "expression": { + "to_column": 46, + "from_column": 26, + "right": { + "to_column": 46, + "from_column": 34, + "right": { + "to_column": 46, + "from_column": 37, + "level": 0, + "function_nr": 3, + "name": "prev_line", + "kind": "name", + "at": 1762, + "from_row": 56, + "to_row": 56 + }, + "left": { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 3, + "name": "line", + "kind": "name", + "at": 1754, + "from_row": 56, + "to_row": 56 + }, + "kind": "!=", + "at": 1759, + "from_row": 56, + "to_row": 56 + }, + "left": { + "to_column": 25, + "from_column": 14, + "right": { + "to_column": 25, + "from_column": 17, + "level": 0, + "function_nr": 3, + "name": "prev_msg", + "kind": "name", + "at": 1742, + "from_row": 56, + "to_row": 56 + }, + "left": { + "to_column": 13, + "from_column": 10, + "level": 0, + "function_nr": 3, + "name": "msg", + "kind": "name", + "at": 1735, + "from_row": 56, + "to_row": 56 + }, + "kind": "!=", + "at": 1739, + "from_row": 56, + "to_row": 56 + }, + "kind": "||", + "at": 1751, + "from_row": 56, + "to_row": 56 + } + }, + { + "to_row": 63, + "from_column": 6, + "to_column": 22, + "kind": "call", + "at": 1978, + "from_row": 63, + "expression": { + "to_column": 22, + "from_column": 16, + "right": { + "to_column": 22, + "from_column": 18, + "level": 0, + "function_nr": 3, + "name": "line", + "kind": "name", + "at": 1990, + "from_row": 63, + "to_row": 63 + }, + "left": { + "to_column": 15, + "from_column": 6, + "level": 0, + "function_nr": 3, + "name": "prev_line", + "kind": "name", + "at": 1978, + "from_row": 63, + "to_row": 63 + }, + "kind": "assign", + "at": 1988, + "from_row": 63, + "to_row": 63 + } + }, + { + "to_row": 64, + "from_column": 6, + "to_column": 20, + "kind": "call", + "at": 2001, + "from_row": 64, + "expression": { + "to_column": 20, + "from_column": 15, + "right": { + "to_column": 20, + "from_column": 17, + "level": 0, + "function_nr": 3, + "name": "msg", + "kind": "name", + "at": 2012, + "from_row": 64, + "to_row": 64 + }, + "left": { + "to_column": 14, + "from_column": 6, + "level": 0, + "function_nr": 3, + "name": "prev_msg", + "kind": "name", + "at": 2001, + "from_row": 64, + "to_row": 64 + }, + "kind": "assign", + "at": 2010, + "from_row": 64, + "to_row": 64 + } + }, + { + "to_row": 65, + "from_column": 6, + "to_column": 17, + "kind": "call", + "at": 2022, + "from_row": 65, + "expression": { + "to_column": 17, + "from_column": 9, + "right": { + "to_column": 17, + "from_column": 14, + "right": { + "to_row": 65, + "from_column": 16, + "number": 1, + "to_column": 17, + "kind": "number", + "at": 2032, + "from_row": 65, + "value": "1" + }, + "left": { + "to_column": 13, + "from_column": 11, + "level": 0, + "function_nr": 3, + "name": "_i", + "kind": "name", + "at": 2027, + "from_row": 65, + "to_row": 65 + }, + "kind": "+", + "at": 2030, + "from_row": 65, + "to_row": 65 + }, + "left": { + "to_column": 8, + "from_column": 6, + "level": 0, + "function_nr": 3, + "name": "_i", + "kind": "name", + "at": 2022, + "from_row": 65, + "to_row": 65 + }, + "kind": "assign", + "at": 2025, + "from_row": 65, + "to_row": 65 + } + } + ], + "kind": "block", + "at": 1635, + "from_row": 51, + "to_row": 66 + } + ], + "kind": "while", + "at": 1603, + "from_row": 51, + "expression": { + "to_column": 34, + "from_column": 14, + "right": { + "list": [ + { + "to_column": 33, + "from_column": 26, + "right": "errors", + "left": { + "to_column": 26, + "from_column": 23, + "level": 0, + "function_nr": 3, + "name": "ast", + "kind": "name", + "at": 1622, + "from_row": 51, + "to_row": 51 + }, + "kind": ".", + "at": 1625, + "from_row": 51, + "to_row": 51 + } + ], + "from_column": 22, + "to_row": 51, + "to_column": 34, + "kind": "(", + "at": 1621, + "from_row": 51, + "expression": { + "to_column": 22, + "from_column": 16, + "level": -1, + "name": "length", + "kind": "name", + "at": 1615, + "from_row": 51, + "to_row": 51 + } + }, + "left": { + "to_column": 13, + "from_column": 11, + "level": 0, + "function_nr": 3, + "name": "_i", + "kind": "name", + "at": 1610, + "from_row": 51, + "to_row": 51 + }, + "kind": "<", + "at": 1613, + "from_row": 51, + "to_row": 51 + } + }, + { + "to_column": 11, + "from_column": 4, + "kind": "disrupt", + "at": 2044, + "from_row": 67, + "to_row": 67 + } + ], + "kind": "block", + "at": 1597, + "from_row": 50, + "to_row": 68 + } + ], + "from_column": 2, + "list": [], + "to_row": 68, + "to_column": 3, + "kind": "if", + "at": 1581, + "from_row": 50, + "expression": { + "to_column": 16, + "from_column": 6, + "level": 0, + "function_nr": 3, + "name": "has_errors", + "kind": "name", + "at": 1585, + "from_row": 50, + "to_row": 50 + } + }, + { + "to_row": 69, + "from_column": 2, + "to_column": 21, + "kind": "call", + "at": 2058, + "from_row": 69, + "expression": { + "to_column": 21, + "from_column": 6, + "right": { + "list": [ + { + "to_column": 20, + "from_column": 17, + "level": 0, + "function_nr": 3, + "name": "ast", + "kind": "name", + "at": 2073, + "from_row": 69, + "to_row": 69 + } + ], + "from_column": 16, + "to_row": 69, + "to_column": 21, + "kind": "(", + "at": 2072, + "from_row": 69, + "expression": { + "to_column": 16, + "from_column": 8, + "level": 1, + "function_nr": 0, + "name": "fold_mod", + "kind": "name", + "at": 2064, + "from_row": 69, + "to_row": 69 + } + }, + "left": { + "to_column": 5, + "from_column": 2, + "level": 0, + "function_nr": 3, + "name": "ast", + "kind": "name", + "at": 2058, + "from_row": 69, + "to_row": 69 + }, + "kind": "assign", + "at": 2062, + "from_row": 69, + "to_row": 69 + } + }, + { + "to_row": 70, + "from_column": 2, + "to_column": 12, + "kind": "return", + "at": 2080, + "from_row": 70, + "expression": { + "to_column": 12, + "from_column": 9, + "level": 0, + "function_nr": 3, + "name": "ast", + "kind": "name", + "at": 2087, + "from_row": 70, + "to_row": 70 + } + } + ], + "name": "analyze", + "to_column": 1, + "kind": "function", + "at": 1241, + "to_row": 71, + "outer": 0, + "list": [ + { + "to_column": 20, + "from_column": 17, + "name": "src", + "kind": "name", + "at": 1258, + "from_row": 39, + "to_row": 39 + }, + { + "to_column": 30, + "from_column": 22, + "name": "filename", + "kind": "name", + "at": 1263, + "from_row": 39, + "to_row": 39 + } + ], + "arity": 2, + "nr_close_slots": 0, + "function_nr": 3, + "from_row": 39 + }, + { + "from_column": 0, + "nr_slots": 4, + "statements": [ + { + "to_column": 21, + "from_column": 2, + "right": { + "to_column": 21, + "from_column": 17, + "kind": "null", + "at": 2195, + "from_row": 75, + "to_row": 75 + }, + "left": { + "to_column": 14, + "from_column": 6, + "name": "compiled", + "kind": "name", + "at": 2184, + "from_row": 75, + "to_row": 75 + }, + "kind": "var", + "at": 2180, + "from_row": 75, + "to_row": 75 + }, + { + "then": [ + { + "to_column": 3, + "from_column": 17, + "statements": [ + { + "to_row": 77, + "from_column": 4, + "to_column": 29, + "kind": "call", + "at": 2223, + "from_row": 77, + "expression": { + "to_column": 29, + "from_column": 13, + "right": { + "list": [ + { + "to_column": 28, + "from_column": 25, + "level": 0, + "function_nr": 4, + "name": "ast", + "kind": "name", + "at": 2244, + "from_row": 77, + "to_row": 77 + } + ], + "from_column": 24, + "to_row": 77, + "to_column": 29, + "kind": "(", + "at": 2243, + "from_row": 77, + "expression": { + "to_column": 24, + "from_column": 15, + "level": 1, + "function_nr": 0, + "name": "mcode_mod", + "kind": "name", + "at": 2234, + "from_row": 77, + "to_row": 77 + } + }, + "left": { + "to_column": 12, + "from_column": 4, + "level": 0, + "function_nr": 4, + "name": "compiled", + "kind": "name", + "at": 2223, + "from_row": 77, + "to_row": 77 + }, + "kind": "assign", + "at": 2232, + "from_row": 77, + "to_row": 77 + } + }, + { + "to_row": 78, + "from_column": 4, + "to_column": 54, + "kind": "return", + "at": 2253, + "from_row": 78, + "expression": { + "list": [ + { + "to_column": 25, + "from_column": 21, + "level": 0, + "function_nr": 4, + "name": "name", + "kind": "name", + "at": 2270, + "from_row": 78, + "to_row": 78 + }, + { + "list": [ + { + "to_column": 47, + "from_column": 39, + "level": 0, + "function_nr": 4, + "name": "compiled", + "kind": "name", + "at": 2288, + "from_row": 78, + "to_row": 78 + } + ], + "from_column": 38, + "to_row": 78, + "to_column": 48, + "kind": "(", + "at": 2287, + "from_row": 78, + "expression": { + "to_column": 38, + "from_column": 31, + "right": "encode", + "left": { + "to_column": 31, + "from_column": 27, + "level": 1, + "function_nr": 0, + "name": "json", + "kind": "name", + "at": 2276, + "from_row": 78, + "to_row": 78 + }, + "kind": ".", + "at": 2280, + "from_row": 78, + "to_row": 78 + } + }, + { + "to_column": 53, + "from_column": 50, + "level": 0, + "function_nr": 4, + "name": "env", + "kind": "name", + "at": 2299, + "from_row": 78, + "to_row": 78 + } + ], + "from_column": 20, + "to_row": 78, + "to_column": 54, + "kind": "(", + "at": 2269, + "from_row": 78, + "expression": { + "to_column": 20, + "from_column": 11, + "level": -1, + "name": "mcode_run", + "kind": "name", + "at": 2260, + "from_row": 78, + "to_row": 78 + } + } + } + ], + "kind": "block", + "at": 2217, + "from_row": 76, + "to_row": 79 + } + ], + "from_column": 2, + "list": [], + "to_row": 79, + "to_column": 3, + "kind": "if", + "at": 2202, + "from_row": 76, + "expression": { + "to_column": 15, + "from_column": 6, + "level": -1, + "name": "use_mcode", + "kind": "name", + "at": 2206, + "from_row": 76, + "to_row": 76 + } + }, + { + "to_row": 80, + "from_column": 2, + "to_column": 51, + "kind": "return", + "at": 2310, + "from_row": 80, + "expression": { + "list": [ + { + "to_column": 27, + "from_column": 23, + "level": 0, + "function_nr": 4, + "name": "name", + "kind": "name", + "at": 2331, + "from_row": 80, + "to_row": 80 + }, + { + "list": [ + { + "to_column": 44, + "from_column": 41, + "level": 0, + "function_nr": 4, + "name": "ast", + "kind": "name", + "at": 2349, + "from_row": 80, + "to_row": 80 + } + ], + "from_column": 40, + "to_row": 80, + "to_column": 45, + "kind": "(", + "at": 2348, + "from_row": 80, + "expression": { + "to_column": 40, + "from_column": 33, + "right": "encode", + "left": { + "to_column": 33, + "from_column": 29, + "level": 1, + "function_nr": 0, + "name": "json", + "kind": "name", + "at": 2337, + "from_row": 80, + "to_row": 80 + }, + "kind": ".", + "at": 2341, + "from_row": 80, + "to_row": 80 + } + }, + { + "to_column": 50, + "from_column": 47, + "level": 0, + "function_nr": 4, + "name": "env", + "kind": "name", + "at": 2355, + "from_row": 80, + "to_row": 80 + } + ], + "from_column": 22, + "to_row": 80, + "to_column": 51, + "kind": "(", + "at": 2330, + "from_row": 80, + "expression": { + "to_column": 22, + "from_column": 9, + "level": -1, + "name": "mach_eval_ast", + "kind": "name", + "at": 2317, + "from_row": 80, + "to_row": 80 + } + } + } + ], + "name": "run_ast", + "to_column": 1, + "kind": "function", + "at": 2143, + "to_row": 81, + "outer": 0, + "list": [ + { + "to_column": 21, + "from_column": 17, + "name": "name", + "kind": "name", + "at": 2160, + "from_row": 74, + "to_row": 74 + }, + { + "to_column": 26, + "from_column": 23, + "name": "ast", + "kind": "name", + "at": 2166, + "from_row": 74, + "to_row": 74 + }, + { + "to_column": 31, + "from_column": 28, + "name": "env", + "kind": "name", + "at": 2171, + "from_row": 74, + "to_row": 74 + } + ], + "arity": 3, + "nr_close_slots": 0, + "function_nr": 4, + "from_row": 74 + }, + { + "from_column": 0, + "nr_slots": 5, + "statements": [ + { + "to_column": 30, + "from_column": 2, + "right": { + "to_column": 30, + "from_column": 23, + "right": { + "to_row": 85, + "from_column": 25, + "to_column": 30, + "kind": "text", + "at": 2452, + "from_row": 85, + "value": ".cm" + }, + "left": { + "to_column": 22, + "from_column": 18, + "level": 0, + "function_nr": 5, + "name": "path", + "kind": "name", + "at": 2445, + "from_row": 85, + "to_row": 85 + }, + "kind": "+", + "at": 2450, + "from_row": 85, + "to_row": 85 + }, + "left": { + "to_column": 15, + "from_column": 6, + "name": "file_path", + "kind": "name", + "at": 2433, + "from_row": 85, + "to_row": 85 + }, + "kind": "var", + "at": 2429, + "from_row": 85, + "to_row": 85 + }, + { + "to_column": 19, + "from_column": 2, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 2473, + "from_row": 86, + "to_row": 86 + }, + "left": { + "to_column": 12, + "from_column": 6, + "name": "script", + "kind": "name", + "at": 2464, + "from_row": 86, + "to_row": 86 + }, + "kind": "var", + "at": 2460, + "from_row": 86, + "to_row": 86 + }, + { + "to_column": 16, + "from_column": 2, + "right": { + "to_column": 16, + "from_column": 12, + "kind": "null", + "at": 2490, + "from_row": 87, + "to_row": 87 + }, + "left": { + "to_column": 9, + "from_column": 6, + "name": "ast", + "kind": "name", + "at": 2484, + "from_row": 87, + "to_row": 87 + }, + "kind": "var", + "at": 2480, + "from_row": 87, + "to_row": 87 + }, + { + "to_column": 19, + "from_column": 2, + "right": { + "to_column": 19, + "from_column": 15, + "kind": "null", + "at": 2510, + "from_row": 88, + "to_row": 88 + }, + "left": { + "to_column": 12, + "from_column": 6, + "name": "result", + "kind": "name", + "at": 2501, + "from_row": 88, + "to_row": 88 + }, + "kind": "var", + "at": 2497, + "from_row": 88, + "to_row": 88 + }, + { + "then": [ + { + "to_row": 90, + "from_column": 4, + "to_column": 26, + "kind": "return", + "at": 2542, + "from_row": 90, + "expression": { + "to_column": 26, + "from_column": 20, + "right": { + "to_column": 25, + "from_column": 21, + "level": 0, + "function_nr": 5, + "name": "path", + "kind": "name", + "at": 2559, + "from_row": 90, + "to_row": 90 + }, + "left": { + "to_column": 20, + "from_column": 11, + "level": 1, + "function_nr": 0, + "name": "use_cache", + "kind": "name", + "at": 2549, + "from_row": 90, + "to_row": 90 + }, + "kind": "[", + "at": 2558, + "from_row": 90, + "to_row": 90 + } + } + ], + "from_column": 2, + "list": [], + "to_row": 90, + "to_column": 26, + "kind": "if", + "at": 2517, + "from_row": 89, + "expression": { + "to_column": 21, + "from_column": 15, + "right": { + "to_column": 20, + "from_column": 16, + "level": 0, + "function_nr": 5, + "name": "path", + "kind": "name", + "at": 2531, + "from_row": 89, + "to_row": 89 + }, + "left": { + "to_column": 15, + "from_column": 6, + "level": 1, + "function_nr": 0, + "name": "use_cache", + "kind": "name", + "at": 2521, + "from_row": 89, + "to_row": 89 + }, + "kind": "[", + "at": 2530, + "from_row": 89, + "to_row": 89 + } + }, + { + "then": [ + { + "to_row": 94, + "from_column": 4, + "to_column": 46, + "kind": "call", + "at": 2637, + "from_row": 94, + "expression": { + "to_column": 46, + "from_column": 14, + "right": { + "to_column": 46, + "from_column": 39, + "right": { + "to_row": 94, + "from_column": 41, + "to_column": 46, + "kind": "text", + "at": 2674, + "from_row": 94, + "value": ".cm" + }, + "left": { + "to_column": 38, + "from_column": 32, + "right": { + "to_column": 38, + "from_column": 34, + "level": 0, + "function_nr": 5, + "name": "path", + "kind": "name", + "at": 2667, + "from_row": 94, + "to_row": 94 + }, + "left": { + "to_column": 31, + "from_column": 26, + "right": { + "to_row": 94, + "from_column": 28, + "to_column": 31, + "kind": "text", + "at": 2661, + "from_row": 94, + "value": "/" + }, + "left": { + "to_column": 25, + "from_column": 16, + "level": -1, + "name": "core_path", + "kind": "name", + "at": 2649, + "from_row": 94, + "to_row": 94 + }, + "kind": "+", + "at": 2659, + "from_row": 94, + "to_row": 94 + }, + "kind": "+", + "at": 2665, + "from_row": 94, + "to_row": 94 + }, + "kind": "+", + "at": 2672, + "from_row": 94, + "to_row": 94 + }, + "left": { + "to_column": 13, + "from_column": 4, + "level": 0, + "function_nr": 5, + "name": "file_path", + "kind": "name", + "at": 2637, + "from_row": 94, + "to_row": 94 + }, + "kind": "assign", + "at": 2647, + "from_row": 94, + "to_row": 94 + } + } + ], + "from_column": 2, + "list": [], + "to_row": 94, + "to_column": 46, + "kind": "if", + "at": 2605, + "from_row": 93, + "expression": { + "to_row": 93, + "from_column": 6, + "to_column": 28, + "kind": "!", + "at": 2609, + "from_row": 93, + "expression": { + "list": [ + { + "to_column": 27, + "from_column": 18, + "level": 0, + "function_nr": 5, + "name": "file_path", + "kind": "name", + "at": 2621, + "from_row": 93, + "to_row": 93 + } + ], + "from_column": 17, + "to_row": 93, + "to_column": 28, + "kind": "(", + "at": 2620, + "from_row": 93, + "expression": { + "to_column": 17, + "from_column": 9, + "right": "is_file", + "left": { + "to_column": 9, + "from_column": 7, + "level": 1, + "function_nr": 0, + "name": "fd", + "kind": "name", + "at": 2610, + "from_row": 93, + "to_row": 93 + }, + "kind": ".", + "at": 2612, + "from_row": 93, + "to_row": 93 + } + } + } + }, + { + "then": [ + { + "to_column": 3, + "from_column": 29, + "statements": [ + { + "to_row": 97, + "from_column": 4, + "to_column": 38, + "kind": "call", + "at": 2716, + "from_row": 97, + "expression": { + "to_column": 38, + "from_column": 11, + "right": { + "list": [ + { + "list": [ + { + "to_column": 36, + "from_column": 27, + "level": 0, + "function_nr": 5, + "name": "file_path", + "kind": "name", + "at": 2739, + "from_row": 97, + "to_row": 97 + } + ], + "from_column": 26, + "to_row": 97, + "to_column": 37, + "kind": "(", + "at": 2738, + "from_row": 97, + "expression": { + "to_column": 26, + "from_column": 20, + "right": "slurp", + "left": { + "to_column": 20, + "from_column": 18, + "level": 1, + "function_nr": 0, + "name": "fd", + "kind": "name", + "at": 2730, + "from_row": 97, + "to_row": 97 + }, + "kind": ".", + "at": 2732, + "from_row": 97, + "to_row": 97 + } + } + ], + "from_column": 17, + "to_row": 97, + "to_column": 38, + "kind": "(", + "at": 2729, + "from_row": 97, + "expression": { + "to_column": 17, + "from_column": 13, + "level": -1, + "name": "text", + "kind": "name", + "at": 2725, + "from_row": 97, + "to_row": 97 + } + }, + "left": { + "to_column": 10, + "from_column": 4, + "level": 0, + "function_nr": 5, + "name": "script", + "kind": "name", + "at": 2716, + "from_row": 97, + "to_row": 97 + }, + "kind": "assign", + "at": 2723, + "from_row": 97, + "to_row": 97 + } + }, + { + "to_row": 98, + "from_column": 4, + "to_column": 36, + "kind": "call", + "at": 2755, + "from_row": 98, + "expression": { + "to_column": 36, + "from_column": 8, + "right": { + "list": [ + { + "to_column": 24, + "from_column": 18, + "level": 0, + "function_nr": 5, + "name": "script", + "kind": "name", + "at": 2769, + "from_row": 98, + "to_row": 98 + }, + { + "to_column": 35, + "from_column": 26, + "level": 0, + "function_nr": 5, + "name": "file_path", + "kind": "name", + "at": 2777, + "from_row": 98, + "to_row": 98 + } + ], + "from_column": 17, + "to_row": 98, + "to_column": 36, + "kind": "(", + "at": 2768, + "from_row": 98, + "expression": { + "to_column": 17, + "from_column": 10, + "level": 1, + "function_nr": 0, + "name": "analyze", + "kind": "name", + "at": 2761, + "from_row": 98, + "to_row": 98 + } + }, + "left": { + "to_column": 7, + "from_column": 4, + "level": 0, + "function_nr": 5, + "name": "ast", + "kind": "name", + "at": 2755, + "from_row": 98, + "to_row": 98 + }, + "kind": "assign", + "at": 2759, + "from_row": 98, + "to_row": 98 + } + }, + { + "to_row": 99, + "from_column": 4, + "to_column": 43, + "kind": "call", + "at": 2792, + "from_row": 99, + "expression": { + "to_column": 43, + "from_column": 11, + "right": { + "list": [ + { + "to_column": 25, + "from_column": 21, + "level": 0, + "function_nr": 5, + "name": "path", + "kind": "name", + "at": 2809, + "from_row": 99, + "to_row": 99 + }, + { + "to_column": 30, + "from_column": 27, + "level": 0, + "function_nr": 5, + "name": "ast", + "kind": "name", + "at": 2815, + "from_row": 99, + "to_row": 99 + }, + { + "list": [ + { + "left": { + "to_column": 36, + "from_column": 33, + "name": "use", + "kind": "name", + "at": 2821, + "from_row": 99, + "to_row": 99 + }, + "right": { + "to_column": 41, + "from_column": 38, + "level": 1, + "function_nr": 0, + "name": "use", + "kind": "name", + "at": 2826, + "from_row": 99, + "to_row": 99 + } + } + ], + "from_column": 32, + "to_column": 41, + "kind": "record", + "at": 2820, + "from_row": 99, + "to_row": 99 + } + ], + "from_column": 20, + "to_row": 99, + "to_column": 43, + "kind": "(", + "at": 2808, + "from_row": 99, + "expression": { + "to_column": 20, + "from_column": 13, + "level": 1, + "function_nr": 0, + "name": "run_ast", + "kind": "name", + "at": 2801, + "from_row": 99, + "to_row": 99 + } + }, + "left": { + "to_column": 10, + "from_column": 4, + "level": 0, + "function_nr": 5, + "name": "result", + "kind": "name", + "at": 2792, + "from_row": 99, + "to_row": 99 + }, + "kind": "assign", + "at": 2799, + "from_row": 99, + "to_row": 99 + } + }, + { + "to_row": 100, + "from_column": 4, + "to_column": 28, + "kind": "call", + "at": 2836, + "from_row": 100, + "expression": { + "to_column": 28, + "from_column": 20, + "right": { + "to_column": 28, + "from_column": 22, + "level": 0, + "function_nr": 5, + "name": "result", + "kind": "name", + "at": 2854, + "from_row": 100, + "to_row": 100 + }, + "left": { + "to_column": 19, + "from_column": 13, + "right": { + "to_column": 18, + "from_column": 14, + "level": 0, + "function_nr": 5, + "name": "path", + "kind": "name", + "at": 2846, + "from_row": 100, + "to_row": 100 + }, + "left": { + "to_column": 13, + "from_column": 4, + "level": 1, + "function_nr": 0, + "name": "use_cache", + "kind": "name", + "at": 2836, + "from_row": 100, + "to_row": 100 + }, + "kind": "[", + "at": 2845, + "from_row": 100, + "to_row": 100 + }, + "kind": "assign", + "at": 2852, + "from_row": 100, + "to_row": 100 + } + }, + { + "to_row": 101, + "from_column": 4, + "to_column": 17, + "kind": "return", + "at": 2865, + "from_row": 101, + "expression": { + "to_column": 17, + "from_column": 11, + "level": 0, + "function_nr": 5, + "name": "result", + "kind": "name", + "at": 2872, + "from_row": 101, + "to_row": 101 + } + } + ], + "kind": "block", + "at": 2710, + "from_row": 96, + "to_row": 102 + } + ], + "from_column": 2, + "list": [], + "to_row": 102, + "to_column": 3, + "kind": "if", + "at": 2683, + "from_row": 96, + "expression": { + "list": [ + { + "to_column": 26, + "from_column": 17, + "level": 0, + "function_nr": 5, + "name": "file_path", + "kind": "name", + "at": 2698, + "from_row": 96, + "to_row": 96 + } + ], + "from_column": 16, + "to_row": 96, + "to_column": 27, + "kind": "(", + "at": 2697, + "from_row": 96, + "expression": { + "to_column": 16, + "from_column": 8, + "right": "is_file", + "left": { + "to_column": 8, + "from_column": 6, + "level": 1, + "function_nr": 0, + "name": "fd", + "kind": "name", + "at": 2687, + "from_row": 96, + "to_row": 96 + }, + "kind": ".", + "at": 2689, + "from_row": 96, + "to_row": 96 + } + } + }, + { + "to_row": 105, + "from_column": 2, + "to_column": 45, + "kind": "call", + "at": 2921, + "from_row": 105, + "expression": { + "to_column": 45, + "from_column": 9, + "right": { + "list": [ + { + "list": [ + { + "to_column": 33, + "from_column": 29, + "level": 0, + "function_nr": 5, + "name": "path", + "kind": "name", + "at": 2948, + "from_row": 105, + "to_row": 105 + }, + { + "to_row": 105, + "from_column": 35, + "to_column": 38, + "kind": "text", + "at": 2954, + "from_row": 105, + "value": "/" + }, + { + "to_row": 105, + "from_column": 40, + "to_column": 43, + "kind": "text", + "at": 2959, + "from_row": 105, + "value": "_" + } + ], + "from_column": 28, + "to_row": 105, + "to_column": 44, + "kind": "(", + "at": 2947, + "from_row": 105, + "expression": { + "to_column": 28, + "from_column": 21, + "level": -1, + "name": "replace", + "kind": "name", + "at": 2940, + "from_row": 105, + "to_row": 105 + } + } + ], + "from_column": 20, + "to_row": 105, + "to_column": 45, + "kind": "(", + "at": 2939, + "from_row": 105, + "expression": { + "to_column": 20, + "from_column": 11, + "level": 1, + "function_nr": 0, + "name": "use_embed", + "kind": "name", + "at": 2930, + "from_row": 105, + "to_row": 105 + } + }, + "left": { + "to_column": 8, + "from_column": 2, + "level": 0, + "function_nr": 5, + "name": "result", + "kind": "name", + "at": 2921, + "from_row": 105, + "to_row": 105 + }, + "kind": "assign", + "at": 2928, + "from_row": 105, + "to_row": 105 + } + }, + { + "to_row": 106, + "from_column": 2, + "to_column": 26, + "kind": "call", + "at": 2967, + "from_row": 106, + "expression": { + "to_column": 26, + "from_column": 18, + "right": { + "to_column": 26, + "from_column": 20, + "level": 0, + "function_nr": 5, + "name": "result", + "kind": "name", + "at": 2985, + "from_row": 106, + "to_row": 106 + }, + "left": { + "to_column": 17, + "from_column": 11, + "right": { + "to_column": 16, + "from_column": 12, + "level": 0, + "function_nr": 5, + "name": "path", + "kind": "name", + "at": 2977, + "from_row": 106, + "to_row": 106 + }, + "left": { + "to_column": 11, + "from_column": 2, + "level": 1, + "function_nr": 0, + "name": "use_cache", + "kind": "name", + "at": 2967, + "from_row": 106, + "to_row": 106 + }, + "kind": "[", + "at": 2976, + "from_row": 106, + "to_row": 106 + }, + "kind": "assign", + "at": 2983, + "from_row": 106, + "to_row": 106 + } + }, + { + "to_row": 107, + "from_column": 2, + "to_column": 15, + "kind": "return", + "at": 2994, + "from_row": 107, + "expression": { + "to_column": 15, + "from_column": 9, + "level": 0, + "function_nr": 5, + "name": "result", + "kind": "name", + "at": 3001, + "from_row": 107, + "to_row": 107 + } + } + ], + "name": "use", + "to_column": 1, + "kind": "function", + "at": 2406, + "to_row": 108, + "outer": 0, + "list": [ + { + "to_column": 17, + "from_column": 13, + "name": "path", + "kind": "name", + "at": 2419, + "from_row": 84, + "to_row": 84 + } + ], + "arity": 1, + "nr_close_slots": 0, + "function_nr": 5, + "from_row": 84 + } + ], + "scopes": [ + { + "use_basic": { + "function_nr": 0, + "nr_uses": 0, + "closure": false, + "level": 0, + "make": "function" + }, + "tok_ast_path": { + "function_nr": 0, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "script": { + "function_nr": 0, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "tokenize_mod": { + "function_nr": 0, + "nr_uses": 2, + "closure": true, + "level": 0, + "make": "var" + }, + "_j": { + "function_nr": 0, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "par_ast_path": { + "function_nr": 0, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "user_args": { + "function_nr": 0, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "mcode_mod": { + "function_nr": 0, + "nr_uses": 1, + "closure": true, + "level": 0, + "make": "var" + }, + "analyze": { + "function_nr": 0, + "nr_uses": 0, + "closure": false, + "level": 0, + "make": "function" + }, + "mcode_ast_path": { + "function_nr": 0, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "use_embed": { + "function_nr": 0, + "nr_uses": 0, + "closure": false, + "level": 0, + "make": "function" + }, + "fold_mod": { + "function_nr": 0, + "nr_uses": 1, + "closure": true, + "level": 0, + "make": "var" + }, + "fd": { + "function_nr": 0, + "nr_uses": 9, + "closure": true, + "level": 0, + "make": "var" + }, + "parse_mod": { + "function_nr": 0, + "nr_uses": 1, + "closure": true, + "level": 0, + "make": "var" + }, + "fold_ast_path": { + "function_nr": 0, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "load_internal": { + "function_nr": 0, + "nr_uses": 1, + "closure": true, + "level": 0, + "make": "var" + }, + "run_ast": { + "function_nr": 0, + "nr_uses": 0, + "closure": false, + "level": 0, + "make": "function" + }, + "use": { + "function_nr": 0, + "nr_uses": 0, + "closure": false, + "level": 0, + "make": "function" + }, + "use_cache": { + "function_nr": 0, + "nr_uses": 10, + "closure": true, + "level": 0, + "make": "var" + }, + "program": { + "function_nr": 0, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 0, + "script_file": { + "function_nr": 0, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "json": { + "function_nr": 0, + "nr_uses": 4, + "closure": true, + "level": 0, + "make": "var" + }, + "ast": { + "function_nr": 0, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + } + }, + { + "name": { + "function_nr": 1, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "input" + }, + "function_nr": 1 + }, + { + "path": { + "function_nr": 2, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "input" + }, + "result": { + "function_nr": 2, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 2 + }, + { + "msg": { + "function_nr": 3, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "tok_result": { + "function_nr": 3, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "line": { + "function_nr": 3, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "filename": { + "function_nr": 3, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "input" + }, + "col": { + "function_nr": 3, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "var" + }, + "prev_msg": { + "function_nr": 3, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "_i": { + "function_nr": 3, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + }, + "prev_line": { + "function_nr": 3, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "has_errors": { + "function_nr": 3, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 3, + "src": { + "function_nr": 3, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "input" + }, + "ast": { + "function_nr": 3, + "nr_uses": 6, + "closure": false, + "level": 0, + "make": "var" + }, + "e": { + "function_nr": 3, + "nr_uses": 3, + "closure": false, + "level": 0, + "make": "var" + } + }, + { + "name": { + "function_nr": 4, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "input" + }, + "ast": { + "function_nr": 4, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "input" + }, + "env": { + "function_nr": 4, + "nr_uses": 2, + "closure": false, + "level": 0, + "make": "input" + }, + "compiled": { + "function_nr": 4, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 4 + }, + { + "path": { + "function_nr": 5, + "nr_uses": 8, + "closure": false, + "level": 0, + "make": "input" + }, + "result": { + "function_nr": 5, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "script": { + "function_nr": 5, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + }, + "function_nr": 5, + "file_path": { + "function_nr": 5, + "nr_uses": 4, + "closure": false, + "level": 0, + "make": "var" + }, + "ast": { + "function_nr": 5, + "nr_uses": 1, + "closure": false, + "level": 0, + "make": "var" + } + } + ], + "statements": [ + { + "to_column": 36, + "from_column": 0, + "right": { + "to_column": 36, + "from_column": 22, + "right": "load_internal", + "left": { + "to_column": 22, + "from_column": 20, + "level": -1, + "name": "os", + "kind": "name", + "at": 130, + "from_row": 2, + "to_row": 2 + }, + "kind": ".", + "at": 132, + "from_row": 2, + "to_row": 2 + }, + "left": { + "to_column": 17, + "from_column": 4, + "name": "load_internal", + "kind": "name", + "at": 114, + "from_row": 2, + "to_row": 2 + }, + "kind": "var", + "at": 110, + "from_row": 2, + "to_row": 2 + }, + { + "to_column": 24, + "from_column": 0, + "right": { + "list": [ + { + "to_row": 7, + "from_column": 19, + "to_column": 23, + "kind": "text", + "at": 242, + "from_row": 7, + "value": "fd" + } + ], + "from_column": 18, + "to_row": 7, + "to_column": 24, + "arity": 1, + "kind": "(", + "at": 241, + "from_row": 7, + "expression": { + "to_column": 18, + "from_column": 9, + "level": 0, + "function_nr": 0, + "name": "use_embed", + "kind": "name", + "at": 232, + "from_row": 7, + "to_row": 7 + } + }, + "left": { + "to_column": 6, + "from_column": 4, + "name": "fd", + "kind": "name", + "at": 227, + "from_row": 7, + "to_row": 7 + }, + "kind": "var", + "at": 223, + "from_row": 7, + "to_row": 7 + }, + { + "to_column": 28, + "from_column": 0, + "right": { + "list": [ + { + "to_row": 8, + "from_column": 21, + "to_column": 27, + "kind": "text", + "at": 269, + "from_row": 8, + "value": "json" + } + ], + "from_column": 20, + "to_row": 8, + "to_column": 28, + "arity": 1, + "kind": "(", + "at": 268, + "from_row": 8, + "expression": { + "to_column": 20, + "from_column": 11, + "level": 0, + "function_nr": 0, + "name": "use_embed", + "kind": "name", + "at": 259, + "from_row": 8, + "to_row": 8 + } + }, + "left": { + "to_column": 8, + "from_column": 4, + "name": "json", + "kind": "name", + "at": 252, + "from_row": 8, + "to_row": 8 + }, + "kind": "var", + "at": 248, + "from_row": 8, + "to_row": 8 + }, + { + "to_column": 18, + "from_column": 0, + "right": { + "list": [], + "from_column": 16, + "to_column": 17, + "kind": "record", + "at": 294, + "from_row": 10, + "to_row": 10 + }, + "left": { + "to_column": 13, + "from_column": 4, + "name": "use_cache", + "kind": "name", + "at": 282, + "from_row": 10, + "to_row": 10 + }, + "kind": "var", + "at": 278, + "from_row": 10, + "to_row": 10 + }, + { + "to_row": 11, + "from_column": 0, + "to_column": 20, + "kind": "call", + "at": 297, + "from_row": 11, + "expression": { + "to_column": 20, + "from_column": 16, + "right": { + "to_column": 20, + "from_column": 18, + "level": 0, + "function_nr": 0, + "name": "fd", + "kind": "name", + "at": 315, + "from_row": 11, + "to_row": 11 + }, + "left": { + "to_column": 15, + "from_column": 9, + "right": { + "to_row": 11, + "from_column": 10, + "to_column": 14, + "kind": "text", + "at": 307, + "from_row": 11, + "value": "fd" + }, + "left": { + "to_column": 9, + "from_column": 0, + "level": 0, + "function_nr": 0, + "name": "use_cache", + "kind": "name", + "at": 297, + "from_row": 11, + "to_row": 11 + }, + "kind": "[", + "at": 306, + "from_row": 11, + "to_row": 11 + }, + "kind": "assign", + "at": 313, + "from_row": 11, + "to_row": 11 + } + }, + { + "to_row": 12, + "from_column": 0, + "to_column": 20, + "kind": "call", + "at": 318, + "from_row": 12, + "expression": { + "to_column": 20, + "from_column": 16, + "right": { + "to_column": 20, + "from_column": 18, + "level": -1, + "name": "os", + "kind": "name", + "at": 336, + "from_row": 12, + "to_row": 12 + }, + "left": { + "to_column": 15, + "from_column": 9, + "right": { + "to_row": 12, + "from_column": 10, + "to_column": 14, + "kind": "text", + "at": 328, + "from_row": 12, + "value": "os" + }, + "left": { + "to_column": 9, + "from_column": 0, + "level": 0, + "function_nr": 0, + "name": "use_cache", + "kind": "name", + "at": 318, + "from_row": 12, + "to_row": 12 + }, + "kind": "[", + "at": 327, + "from_row": 12, + "to_row": 12 + }, + "kind": "assign", + "at": 334, + "from_row": 12, + "to_row": 12 + } + }, + { + "to_row": 13, + "from_column": 0, + "to_column": 24, + "kind": "call", + "at": 339, + "from_row": 13, + "expression": { + "to_column": 24, + "from_column": 18, + "right": { + "to_column": 24, + "from_column": 20, + "level": 0, + "function_nr": 0, + "name": "json", + "kind": "name", + "at": 359, + "from_row": 13, + "to_row": 13 + }, + "left": { + "to_column": 17, + "from_column": 9, + "right": { + "to_row": 13, + "from_column": 10, + "to_column": 16, + "kind": "text", + "at": 349, + "from_row": 13, + "value": "json" + }, + "left": { + "to_column": 9, + "from_column": 0, + "level": 0, + "function_nr": 0, + "name": "use_cache", + "kind": "name", + "at": 339, + "from_row": 13, + "to_row": 13 + }, + "kind": "[", + "at": 348, + "from_row": 13, + "to_row": 13 + }, + "kind": "assign", + "at": 357, + "from_row": 13, + "to_row": 13 + } + }, + { + "to_column": 38, + "from_column": 0, + "right": { + "to_row": 24, + "from_column": 19, + "to_column": 38, + "kind": "text", + "at": 628, + "from_row": 24, + "value": "tokenize.ast.json" + }, + "left": { + "to_column": 16, + "from_column": 4, + "name": "tok_ast_path", + "kind": "name", + "at": 613, + "from_row": 24, + "to_row": 24 + }, + "kind": "var", + "at": 609, + "from_row": 24, + "to_row": 24 + }, + { + "to_column": 35, + "from_column": 0, + "right": { + "to_row": 25, + "from_column": 19, + "to_column": 35, + "kind": "text", + "at": 667, + "from_row": 25, + "value": "parse.ast.json" + }, + "left": { + "to_column": 16, + "from_column": 4, + "name": "par_ast_path", + "kind": "name", + "at": 652, + "from_row": 25, + "to_row": 25 + }, + "kind": "var", + "at": 648, + "from_row": 25, + "to_row": 25 + }, + { + "to_column": 92, + "from_column": 0, + "right": { + "list": [ + { + "to_row": 26, + "from_column": 33, + "to_column": 43, + "kind": "text", + "at": 717, + "from_row": 26, + "value": "tokenize" + }, + { + "list": [ + { + "list": [ + { + "to_column": 71, + "from_column": 59, + "level": 0, + "function_nr": 0, + "name": "tok_ast_path", + "kind": "name", + "at": 743, + "from_row": 26, + "to_row": 26 + } + ], + "from_column": 58, + "to_row": 26, + "to_column": 72, + "kind": "(", + "at": 742, + "from_row": 26, + "expression": { + "to_column": 58, + "from_column": 52, + "right": "slurp", + "left": { + "to_column": 52, + "from_column": 50, + "level": 0, + "function_nr": 0, + "name": "fd", + "kind": "name", + "at": 734, + "from_row": 26, + "to_row": 26 + }, + "kind": ".", + "at": 736, + "from_row": 26, + "to_row": 26 + } + } + ], + "from_column": 49, + "to_row": 26, + "to_column": 73, + "kind": "(", + "at": 733, + "from_row": 26, + "expression": { + "to_column": 49, + "from_column": 45, + "level": -1, + "name": "text", + "kind": "name", + "at": 729, + "from_row": 26, + "to_row": 26 + } + }, + { + "list": [ + { + "left": { + "to_column": 79, + "from_column": 76, + "name": "use", + "kind": "name", + "at": 760, + "from_row": 26, + "to_row": 26 + }, + "right": { + "to_column": 90, + "from_column": 81, + "level": 0, + "function_nr": 0, + "name": "use_basic", + "kind": "name", + "at": 765, + "from_row": 26, + "to_row": 26 + } + } + ], + "from_column": 75, + "to_column": 90, + "kind": "record", + "at": 759, + "from_row": 26, + "to_row": 26 + } + ], + "from_column": 32, + "to_row": 26, + "to_column": 92, + "kind": "(", + "at": 716, + "from_row": 26, + "expression": { + "to_column": 32, + "from_column": 19, + "level": -1, + "name": "mach_eval_ast", + "kind": "name", + "at": 703, + "from_row": 26, + "to_row": 26 + } + }, + "left": { + "to_column": 16, + "from_column": 4, + "name": "tokenize_mod", + "kind": "name", + "at": 688, + "from_row": 26, + "to_row": 26 + }, + "kind": "var", + "at": 684, + "from_row": 26, + "to_row": 26 + }, + { + "to_column": 86, + "from_column": 0, + "right": { + "list": [ + { + "to_row": 27, + "from_column": 30, + "to_column": 37, + "kind": "text", + "at": 807, + "from_row": 27, + "value": "parse" + }, + { + "list": [ + { + "list": [ + { + "to_column": 65, + "from_column": 53, + "level": 0, + "function_nr": 0, + "name": "par_ast_path", + "kind": "name", + "at": 830, + "from_row": 27, + "to_row": 27 + } + ], + "from_column": 52, + "to_row": 27, + "to_column": 66, + "kind": "(", + "at": 829, + "from_row": 27, + "expression": { + "to_column": 52, + "from_column": 46, + "right": "slurp", + "left": { + "to_column": 46, + "from_column": 44, + "level": 0, + "function_nr": 0, + "name": "fd", + "kind": "name", + "at": 821, + "from_row": 27, + "to_row": 27 + }, + "kind": ".", + "at": 823, + "from_row": 27, + "to_row": 27 + } + } + ], + "from_column": 43, + "to_row": 27, + "to_column": 67, + "kind": "(", + "at": 820, + "from_row": 27, + "expression": { + "to_column": 43, + "from_column": 39, + "level": -1, + "name": "text", + "kind": "name", + "at": 816, + "from_row": 27, + "to_row": 27 + } + }, + { + "list": [ + { + "left": { + "to_column": 73, + "from_column": 70, + "name": "use", + "kind": "name", + "at": 847, + "from_row": 27, + "to_row": 27 + }, + "right": { + "to_column": 84, + "from_column": 75, + "level": 0, + "function_nr": 0, + "name": "use_basic", + "kind": "name", + "at": 852, + "from_row": 27, + "to_row": 27 + } + } + ], + "from_column": 69, + "to_column": 84, + "kind": "record", + "at": 846, + "from_row": 27, + "to_row": 27 + } + ], + "from_column": 29, + "to_row": 27, + "to_column": 86, + "kind": "(", + "at": 806, + "from_row": 27, + "expression": { + "to_column": 29, + "from_column": 16, + "level": -1, + "name": "mach_eval_ast", + "kind": "name", + "at": 793, + "from_row": 27, + "to_row": 27 + } + }, + "left": { + "to_column": 13, + "from_column": 4, + "name": "parse_mod", + "kind": "name", + "at": 781, + "from_row": 27, + "to_row": 27 + }, + "kind": "var", + "at": 777, + "from_row": 27, + "to_row": 27 + }, + { + "to_column": 35, + "from_column": 0, + "right": { + "to_row": 28, + "from_column": 20, + "to_column": 35, + "kind": "text", + "at": 884, + "from_row": 28, + "value": "fold.ast.json" + }, + "left": { + "to_column": 17, + "from_column": 4, + "name": "fold_ast_path", + "kind": "name", + "at": 868, + "from_row": 28, + "to_row": 28 + }, + "kind": "var", + "at": 864, + "from_row": 28, + "to_row": 28 + }, + { + "to_column": 85, + "from_column": 0, + "right": { + "list": [ + { + "to_row": 29, + "from_column": 29, + "to_column": 35, + "kind": "text", + "at": 929, + "from_row": 29, + "value": "fold" + }, + { + "list": [ + { + "list": [ + { + "to_column": 64, + "from_column": 51, + "level": 0, + "function_nr": 0, + "name": "fold_ast_path", + "kind": "name", + "at": 951, + "from_row": 29, + "to_row": 29 + } + ], + "from_column": 50, + "to_row": 29, + "to_column": 65, + "kind": "(", + "at": 950, + "from_row": 29, + "expression": { + "to_column": 50, + "from_column": 44, + "right": "slurp", + "left": { + "to_column": 44, + "from_column": 42, + "level": 0, + "function_nr": 0, + "name": "fd", + "kind": "name", + "at": 942, + "from_row": 29, + "to_row": 29 + }, + "kind": ".", + "at": 944, + "from_row": 29, + "to_row": 29 + } + } + ], + "from_column": 41, + "to_row": 29, + "to_column": 66, + "kind": "(", + "at": 941, + "from_row": 29, + "expression": { + "to_column": 41, + "from_column": 37, + "level": -1, + "name": "text", + "kind": "name", + "at": 937, + "from_row": 29, + "to_row": 29 + } + }, + { + "list": [ + { + "left": { + "to_column": 72, + "from_column": 69, + "name": "use", + "kind": "name", + "at": 969, + "from_row": 29, + "to_row": 29 + }, + "right": { + "to_column": 83, + "from_column": 74, + "level": 0, + "function_nr": 0, + "name": "use_basic", + "kind": "name", + "at": 974, + "from_row": 29, + "to_row": 29 + } + } + ], + "from_column": 68, + "to_column": 83, + "kind": "record", + "at": 968, + "from_row": 29, + "to_row": 29 + } + ], + "from_column": 28, + "to_row": 29, + "to_column": 85, + "kind": "(", + "at": 928, + "from_row": 29, + "expression": { + "to_column": 28, + "from_column": 15, + "level": -1, + "name": "mach_eval_ast", + "kind": "name", + "at": 915, + "from_row": 29, + "to_row": 29 + } + }, + "left": { + "to_column": 12, + "from_column": 4, + "name": "fold_mod", + "kind": "name", + "at": 904, + "from_row": 29, + "to_row": 29 + }, + "kind": "var", + "at": 900, + "from_row": 29, + "to_row": 29 + }, + { + "to_column": 20, + "from_column": 0, + "right": { + "to_column": 20, + "from_column": 16, + "kind": "null", + "at": 1044, + "from_row": 32, + "to_row": 32 + }, + "left": { + "to_column": 13, + "from_column": 4, + "name": "mcode_mod", + "kind": "name", + "at": 1032, + "from_row": 32, + "to_row": 32 + }, + "kind": "var", + "at": 1028, + "from_row": 32, + "to_row": 32 + }, + { + "to_column": 37, + "from_column": 0, + "right": { + "to_row": 33, + "from_column": 21, + "to_column": 37, + "kind": "text", + "at": 1070, + "from_row": 33, + "value": "mcode.ast.json" + }, + "left": { + "to_column": 18, + "from_column": 4, + "name": "mcode_ast_path", + "kind": "name", + "at": 1053, + "from_row": 33, + "to_row": 33 + }, + "kind": "var", + "at": 1049, + "from_row": 33, + "to_row": 33 + }, + { + "then": [ + { + "to_column": 1, + "from_column": 15, + "statements": [ + { + "to_row": 35, + "from_column": 2, + "to_column": 86, + "kind": "call", + "at": 1106, + "from_row": 35, + "expression": { + "to_column": 86, + "from_column": 12, + "right": { + "list": [ + { + "to_row": 35, + "from_column": 28, + "to_column": 35, + "kind": "text", + "at": 1132, + "from_row": 35, + "value": "mcode" + }, + { + "list": [ + { + "list": [ + { + "to_column": 65, + "from_column": 51, + "level": 0, + "function_nr": 0, + "name": "mcode_ast_path", + "kind": "name", + "at": 1155, + "from_row": 35, + "to_row": 35 + } + ], + "from_column": 50, + "to_row": 35, + "to_column": 66, + "kind": "(", + "at": 1154, + "from_row": 35, + "expression": { + "to_column": 50, + "from_column": 44, + "right": "slurp", + "left": { + "to_column": 44, + "from_column": 42, + "level": 0, + "function_nr": 0, + "name": "fd", + "kind": "name", + "at": 1146, + "from_row": 35, + "to_row": 35 + }, + "kind": ".", + "at": 1148, + "from_row": 35, + "to_row": 35 + } + } + ], + "from_column": 41, + "to_row": 35, + "to_column": 67, + "kind": "(", + "at": 1145, + "from_row": 35, + "expression": { + "to_column": 41, + "from_column": 37, + "level": -1, + "name": "text", + "kind": "name", + "at": 1141, + "from_row": 35, + "to_row": 35 + } + }, + { + "list": [ + { + "left": { + "to_column": 73, + "from_column": 70, + "name": "use", + "kind": "name", + "at": 1174, + "from_row": 35, + "to_row": 35 + }, + "right": { + "to_column": 84, + "from_column": 75, + "level": 0, + "function_nr": 0, + "name": "use_basic", + "kind": "name", + "at": 1179, + "from_row": 35, + "to_row": 35 + } + } + ], + "from_column": 69, + "to_column": 84, + "kind": "record", + "at": 1173, + "from_row": 35, + "to_row": 35 + } + ], + "from_column": 27, + "to_row": 35, + "to_column": 86, + "kind": "(", + "at": 1131, + "from_row": 35, + "expression": { + "to_column": 27, + "from_column": 14, + "level": -1, + "name": "mach_eval_ast", + "kind": "name", + "at": 1118, + "from_row": 35, + "to_row": 35 + } + }, + "left": { + "to_column": 11, + "from_column": 2, + "level": 0, + "function_nr": 0, + "name": "mcode_mod", + "kind": "name", + "at": 1106, + "from_row": 35, + "to_row": 35 + }, + "kind": "assign", + "at": 1116, + "from_row": 35, + "to_row": 35 + } + } + ], + "kind": "block", + "at": 1102, + "from_row": 34, + "to_row": 36 + } + ], + "from_column": 0, + "list": [], + "to_row": 36, + "to_column": 1, + "kind": "if", + "at": 1087, + "from_row": 34, + "expression": { + "to_column": 13, + "from_column": 4, + "level": -1, + "name": "use_mcode", + "kind": "name", + "at": 1091, + "from_row": 34, + "to_row": 34 + } + }, + { + "to_column": 21, + "from_column": 0, + "right": { + "to_column": 21, + "from_column": 18, + "right": { + "to_row": 111, + "from_column": 19, + "number": 0, + "to_column": 20, + "kind": "number", + "at": 3065, + "from_row": 111, + "value": "0" + }, + "left": { + "to_column": 18, + "from_column": 14, + "level": -1, + "name": "args", + "kind": "name", + "at": 3060, + "from_row": 111, + "to_row": 111 + }, + "kind": "[", + "at": 3064, + "from_row": 111, + "to_row": 111 + }, + "left": { + "to_column": 11, + "from_column": 4, + "name": "program", + "kind": "name", + "at": 3050, + "from_row": 111, + "to_row": 111 + }, + "kind": "var", + "at": 3046, + "from_row": 111, + "to_row": 111 + }, + { + "to_column": 25, + "from_column": 0, + "right": { + "to_column": 25, + "from_column": 18, + "level": 0, + "function_nr": 0, + "name": "program", + "kind": "name", + "at": 3086, + "from_row": 112, + "to_row": 112 + }, + "left": { + "to_column": 15, + "from_column": 4, + "name": "script_file", + "kind": "name", + "at": 3072, + "from_row": 112, + "to_row": 112 + }, + "kind": "var", + "at": 3068, + "from_row": 112, + "to_row": 112 + }, + { + "then": [ + { + "to_row": 116, + "from_column": 2, + "to_column": 31, + "kind": "call", + "at": 3211, + "from_row": 116, + "expression": { + "to_column": 31, + "from_column": 14, + "right": { + "to_column": 31, + "from_column": 24, + "right": { + "to_row": 116, + "from_column": 26, + "to_column": 31, + "kind": "text", + "at": 3235, + "from_row": 116, + "value": ".ce" + }, + "left": { + "to_column": 23, + "from_column": 16, + "level": 0, + "function_nr": 0, + "name": "program", + "kind": "name", + "at": 3225, + "from_row": 116, + "to_row": 116 + }, + "kind": "+", + "at": 3233, + "from_row": 116, + "to_row": 116 + }, + "left": { + "to_column": 13, + "from_column": 2, + "level": 0, + "function_nr": 0, + "name": "script_file", + "kind": "name", + "at": 3211, + "from_row": 116, + "to_row": 116 + }, + "kind": "assign", + "at": 3223, + "from_row": 116, + "to_row": 116 + } + } + ], + "from_column": 0, + "list": [], + "to_row": 116, + "to_column": 31, + "kind": "if", + "at": 3139, + "from_row": 115, + "expression": { + "to_column": 68, + "from_column": 35, + "right": { + "to_row": 115, + "from_column": 38, + "to_column": 68, + "kind": "!", + "at": 3177, + "from_row": 115, + "expression": { + "list": [ + { + "to_column": 60, + "from_column": 49, + "level": 0, + "function_nr": 0, + "name": "script_file", + "kind": "name", + "at": 3188, + "from_row": 115, + "to_row": 115 + }, + { + "to_row": 115, + "from_column": 62, + "to_column": 67, + "kind": "text", + "at": 3201, + "from_row": 115, + "value": ".cm" + } + ], + "from_column": 48, + "to_row": 115, + "to_column": 68, + "kind": "(", + "at": 3187, + "from_row": 115, + "expression": { + "to_column": 48, + "from_column": 39, + "level": -1, + "name": "ends_with", + "kind": "name", + "at": 3178, + "from_row": 115, + "to_row": 115 + } + } + }, + "left": { + "to_row": 115, + "from_column": 4, + "to_column": 34, + "kind": "!", + "at": 3143, + "from_row": 115, + "expression": { + "list": [ + { + "to_column": 26, + "from_column": 15, + "level": 0, + "function_nr": 0, + "name": "script_file", + "kind": "name", + "at": 3154, + "from_row": 115, + "to_row": 115 + }, + { + "to_row": 115, + "from_column": 28, + "to_column": 33, + "kind": "text", + "at": 3167, + "from_row": 115, + "value": ".ce" + } + ], + "from_column": 14, + "to_row": 115, + "to_column": 34, + "kind": "(", + "at": 3153, + "from_row": 115, + "expression": { + "to_column": 14, + "from_column": 5, + "level": -1, + "name": "ends_with", + "kind": "name", + "at": 3144, + "from_row": 115, + "to_row": 115 + } + } + }, + "kind": "&&", + "at": 3174, + "from_row": 115, + "to_row": 115 + } + }, + { + "to_column": 18, + "from_column": 0, + "right": { + "list": [], + "from_column": 16, + "to_column": 17, + "kind": "array", + "at": 3258, + "from_row": 118, + "to_row": 118 + }, + "left": { + "to_column": 13, + "from_column": 4, + "name": "user_args", + "kind": "name", + "at": 3246, + "from_row": 118, + "to_row": 118 + }, + "kind": "var", + "at": 3242, + "from_row": 118, + "to_row": 118 + }, + { + "to_column": 10, + "from_column": 0, + "right": { + "to_row": 119, + "from_column": 9, + "number": 1, + "to_column": 10, + "kind": "number", + "at": 3270, + "from_row": 119, + "value": "1" + }, + "left": { + "to_column": 6, + "from_column": 4, + "name": "_j", + "kind": "name", + "at": 3265, + "from_row": 119, + "to_row": 119 + }, + "kind": "var", + "at": 3261, + "from_row": 119, + "to_row": 119 + }, + { + "to_row": 123, + "from_column": 0, + "to_column": 1, + "statements": [ + { + "to_column": 1, + "from_column": 26, + "statements": [ + { + "to_row": 121, + "from_column": 2, + "to_column": 27, + "kind": "call", + "at": 3302, + "from_row": 121, + "expression": { + "list": [ + { + "to_column": 16, + "from_column": 7, + "level": 0, + "function_nr": 0, + "name": "user_args", + "kind": "name", + "at": 3307, + "from_row": 121, + "to_row": 121 + }, + { + "to_column": 26, + "from_column": 22, + "right": { + "to_column": 25, + "from_column": 23, + "level": 0, + "function_nr": 0, + "name": "_j", + "kind": "name", + "at": 3323, + "from_row": 121, + "to_row": 121 + }, + "left": { + "to_column": 22, + "from_column": 18, + "level": -1, + "name": "args", + "kind": "name", + "at": 3318, + "from_row": 121, + "to_row": 121 + }, + "kind": "[", + "at": 3322, + "from_row": 121, + "to_row": 121 + } + ], + "from_column": 6, + "to_row": 121, + "to_column": 27, + "kind": "(", + "at": 3306, + "from_row": 121, + "expression": { + "to_column": 6, + "from_column": 2, + "level": -1, + "name": "push", + "kind": "name", + "at": 3302, + "from_row": 121, + "to_row": 121 + } + } + }, + { + "to_row": 122, + "from_column": 2, + "to_column": 13, + "kind": "call", + "at": 3330, + "from_row": 122, + "expression": { + "to_column": 13, + "from_column": 5, + "right": { + "to_column": 13, + "from_column": 10, + "right": { + "to_row": 122, + "from_column": 12, + "number": 1, + "to_column": 13, + "kind": "number", + "at": 3340, + "from_row": 122, + "value": "1" + }, + "left": { + "to_column": 9, + "from_column": 7, + "level": 0, + "function_nr": 0, + "name": "_j", + "kind": "name", + "at": 3335, + "from_row": 122, + "to_row": 122 + }, + "kind": "+", + "at": 3338, + "from_row": 122, + "to_row": 122 + }, + "left": { + "to_column": 4, + "from_column": 2, + "level": 0, + "function_nr": 0, + "name": "_j", + "kind": "name", + "at": 3330, + "from_row": 122, + "to_row": 122 + }, + "kind": "assign", + "at": 3333, + "from_row": 122, + "to_row": 122 + } + } + ], + "kind": "block", + "at": 3298, + "from_row": 120, + "to_row": 123 + } + ], + "kind": "while", + "at": 3272, + "from_row": 120, + "expression": { + "to_column": 24, + "from_column": 10, + "right": { + "list": [ + { + "to_column": 23, + "from_column": 19, + "level": -1, + "name": "args", + "kind": "name", + "at": 3291, + "from_row": 120, + "to_row": 120 + } + ], + "from_column": 18, + "to_row": 120, + "to_column": 24, + "kind": "(", + "at": 3290, + "from_row": 120, + "expression": { + "to_column": 18, + "from_column": 12, + "level": -1, + "name": "length", + "kind": "name", + "at": 3284, + "from_row": 120, + "to_row": 120 + } + }, + "left": { + "to_column": 9, + "from_column": 7, + "level": 0, + "function_nr": 0, + "name": "_j", + "kind": "name", + "at": 3279, + "from_row": 120, + "to_row": 120 + }, + "kind": "<", + "at": 3282, + "from_row": 120, + "to_row": 120 + } + }, + { + "to_column": 40, + "from_column": 0, + "right": { + "list": [ + { + "list": [ + { + "to_column": 38, + "from_column": 27, + "level": 0, + "function_nr": 0, + "name": "script_file", + "kind": "name", + "at": 3372, + "from_row": 125, + "to_row": 125 + } + ], + "from_column": 26, + "to_row": 125, + "to_column": 39, + "kind": "(", + "at": 3371, + "from_row": 125, + "expression": { + "to_column": 26, + "from_column": 20, + "right": "slurp", + "left": { + "to_column": 20, + "from_column": 18, + "level": 0, + "function_nr": 0, + "name": "fd", + "kind": "name", + "at": 3363, + "from_row": 125, + "to_row": 125 + }, + "kind": ".", + "at": 3365, + "from_row": 125, + "to_row": 125 + } + } + ], + "from_column": 17, + "to_row": 125, + "to_column": 40, + "kind": "(", + "at": 3362, + "from_row": 125, + "expression": { + "to_column": 17, + "from_column": 13, + "level": -1, + "name": "text", + "kind": "name", + "at": 3358, + "from_row": 125, + "to_row": 125 + } + }, + "left": { + "to_column": 10, + "from_column": 4, + "name": "script", + "kind": "name", + "at": 3349, + "from_row": 125, + "to_row": 125 + }, + "kind": "var", + "at": 3345, + "from_row": 125, + "to_row": 125 + }, + { + "to_column": 38, + "from_column": 0, + "right": { + "list": [ + { + "to_column": 24, + "from_column": 18, + "level": 0, + "function_nr": 0, + "name": "script", + "kind": "name", + "at": 3404, + "from_row": 126, + "to_row": 126 + }, + { + "to_column": 37, + "from_column": 26, + "level": 0, + "function_nr": 0, + "name": "script_file", + "kind": "name", + "at": 3412, + "from_row": 126, + "to_row": 126 + } + ], + "from_column": 17, + "to_row": 126, + "to_column": 38, + "arity": 2, + "kind": "(", + "at": 3403, + "from_row": 126, + "expression": { + "to_column": 17, + "from_column": 10, + "level": 0, + "function_nr": 0, + "name": "analyze", + "kind": "name", + "at": 3396, + "from_row": 126, + "to_row": 126 + } + }, + "left": { + "to_column": 7, + "from_column": 4, + "name": "ast", + "kind": "name", + "at": 3390, + "from_row": 126, + "to_row": 126 + }, + "kind": "var", + "at": 3386, + "from_row": 126, + "to_row": 126 + }, + { + "to_row": 127, + "from_column": 0, + "to_column": 62, + "kind": "call", + "at": 3425, + "from_row": 127, + "expression": { + "list": [ + { + "to_column": 15, + "from_column": 8, + "level": 0, + "function_nr": 0, + "name": "program", + "kind": "name", + "at": 3433, + "from_row": 127, + "to_row": 127 + }, + { + "to_column": 20, + "from_column": 17, + "level": 0, + "function_nr": 0, + "name": "ast", + "kind": "name", + "at": 3442, + "from_row": 127, + "to_row": 127 + }, + { + "list": [ + { + "left": { + "to_column": 26, + "from_column": 23, + "name": "use", + "kind": "name", + "at": 3448, + "from_row": 127, + "to_row": 127 + }, + "right": { + "to_column": 31, + "from_column": 28, + "level": 0, + "function_nr": 0, + "name": "use", + "kind": "name", + "at": 3453, + "from_row": 127, + "to_row": 127 + } + }, + { + "left": { + "to_column": 37, + "from_column": 33, + "name": "args", + "kind": "name", + "at": 3458, + "from_row": 127, + "to_row": 127 + }, + "right": { + "to_column": 48, + "from_column": 39, + "level": 0, + "function_nr": 0, + "name": "user_args", + "kind": "name", + "at": 3464, + "from_row": 127, + "to_row": 127 + } + }, + { + "left": { + "to_column": 54, + "from_column": 50, + "name": "json", + "kind": "name", + "at": 3475, + "from_row": 127, + "to_row": 127 + }, + "right": { + "to_column": 60, + "from_column": 56, + "level": 0, + "function_nr": 0, + "name": "json", + "kind": "name", + "at": 3481, + "from_row": 127, + "to_row": 127 + } + } + ], + "from_column": 22, + "to_column": 60, + "kind": "record", + "at": 3447, + "from_row": 127, + "to_row": 127 + } + ], + "from_column": 7, + "to_row": 127, + "to_column": 62, + "arity": 3, + "kind": "(", + "at": 3432, + "from_row": 127, + "expression": { + "to_column": 7, + "from_column": 0, + "level": 0, + "function_nr": 0, + "name": "run_ast", + "kind": "name", + "at": 3425, + "from_row": 127, + "to_row": 127 + } + } + } + ], + "filename": "internal/bootstrap.cm", + "kind": "program", + "intrinsics": [ + "os", + "mach_eval_ast", + "text", + "use_mcode", + "args", + "ends_with", + "length", + "push", + "replace", + "print", + "mcode_run", + "core_path" + ] +} \ No newline at end of file diff --git a/internal/bootstrap.cm b/internal/bootstrap.cm index ac648430..531ffcd4 100644 --- a/internal/bootstrap.cm +++ b/internal/bootstrap.cm @@ -22,14 +22,16 @@ function use_basic(path) { return result } -var tok_ast_path = core_path + "/tokenize.ast.json" -var par_ast_path = core_path + "/parse.ast.json" +var tok_ast_path = "tokenize.ast.json" +var par_ast_path = "parse.ast.json" var tokenize_mod = mach_eval_ast("tokenize", text(fd.slurp(tok_ast_path)), {use: use_basic}) var parse_mod = mach_eval_ast("parse", text(fd.slurp(par_ast_path)), {use: use_basic}) +var fold_ast_path = "fold.ast.json" +var fold_mod = mach_eval_ast("fold", text(fd.slurp(fold_ast_path)), {use: use_basic}) // Optionally load mcode compiler module var mcode_mod = null -var mcode_ast_path = core_path + "/mcode.ast.json" +var mcode_ast_path = "mcode.ast.json" if (use_mcode) { mcode_mod = mach_eval_ast("mcode", text(fd.slurp(mcode_ast_path)), {use: use_basic}) } @@ -65,6 +67,7 @@ function analyze(src, filename) { } disrupt } + ast = fold_mod(ast) return ast } diff --git a/parse.ast.json b/parse.ast.json index f90d9c3c..a3ec8a26 100644 --- a/parse.ast.json +++ b/parse.ast.json @@ -1,77507 +1,78559 @@ { - "kind": "program", - "filename": "parse.cm", - "functions": [], - "statements": [{ - "kind": "def", - "at": 0, - "from_row": 0, - "from_column": 0, - "left": { - "kind": "name", - "at": 4, - "from_row": 0, - "from_column": 4, - "name": "CP_SLASH", - "to_row": 0, - "to_column": 12 - }, - "right": { - "kind": "number", - "at": 15, - "from_row": 0, - "from_column": 15, - "value": "47", - "number": 47, - "to_row": 0, - "to_column": 17 - }, - "to_row": 1, - "to_column": 3 - }, { - "kind": "def", - "at": 18, - "from_row": 1, - "from_column": 0, - "left": { - "kind": "name", - "at": 22, - "from_row": 1, - "from_column": 4, - "name": "CP_BSLASH", - "to_row": 1, - "to_column": 13 - }, - "right": { - "kind": "number", - "at": 34, - "from_row": 1, - "from_column": 16, - "value": "92", - "number": 92, - "to_row": 1, - "to_column": 18 - }, - "to_row": 3, - "to_column": 3 - }, { - "kind": "var", - "at": 38, - "from_row": 3, - "from_column": 0, - "left": { - "kind": "name", - "at": 42, - "from_row": 3, - "from_column": 4, - "name": "is_alpha", - "to_row": 3, - "to_column": 12 - }, - "right": { - "kind": "function", - "at": 53, - "from_row": 3, - "from_column": 15, - "list": [{ - "kind": "name", - "at": 62, - "from_row": 3, - "from_column": 24, - "name": "c", - "to_row": 3, - "to_column": 25 - }], - "statements": [{ - "kind": "return", - "at": 69, - "from_row": 4, - "from_column": 2, - "expression": { - "kind": "||", - "at": 97, - "from_row": 4, - "from_column": 30, - "left": { - "kind": "&&", - "at": 85, - "from_row": 4, - "from_column": 18, - "left": { - "kind": ">=", - "at": 79, - "from_row": 4, - "from_column": 12, - "left": { - "kind": "name", - "at": 77, - "from_row": 4, - "from_column": 10, - "name": "c", - "to_row": 4, - "to_column": 11, - "level": 0, - "function_nr": 1 - }, - "right": { - "kind": "number", - "at": 82, - "from_row": 4, - "from_column": 15, - "value": "65", - "number": 65, - "to_row": 4, - "to_column": 17 - }, - "to_row": 4, - "to_column": 20 - }, - "right": { - "kind": "<=", - "at": 90, - "from_row": 4, - "from_column": 23, - "left": { - "kind": "name", - "at": 88, - "from_row": 4, - "from_column": 21, - "name": "c", - "to_row": 4, - "to_column": 22, - "level": 0, - "function_nr": 1 - }, - "right": { - "kind": "number", - "at": 93, - "from_row": 4, - "from_column": 26, - "value": "90", - "number": 90, - "to_row": 4, - "to_column": 28 - }, - "to_row": 4, - "to_column": 29 - }, - "to_row": 4, - "to_column": 29 - }, - "right": { - "kind": "&&", - "at": 109, - "from_row": 4, - "from_column": 42, - "left": { - "kind": ">=", - "at": 103, - "from_row": 4, - "from_column": 36, - "left": { - "kind": "name", - "at": 101, - "from_row": 4, - "from_column": 34, - "name": "c", - "to_row": 4, - "to_column": 35, - "level": 0, - "function_nr": 1 - }, - "right": { - "kind": "number", - "at": 106, - "from_row": 4, - "from_column": 39, - "value": "97", - "number": 97, - "to_row": 4, - "to_column": 41 - }, - "to_row": 4, - "to_column": 44 - }, - "right": { - "kind": "<=", - "at": 114, - "from_row": 4, - "from_column": 47, - "left": { - "kind": "name", - "at": 112, - "from_row": 4, - "from_column": 45, - "name": "c", - "to_row": 4, - "to_column": 46, - "level": 0, - "function_nr": 1 - }, - "right": { - "kind": "number", - "at": 117, - "from_row": 4, - "from_column": 50, - "value": "122", - "number": 122, - "to_row": 4, - "to_column": 53 - }, - "to_row": 4, - "to_column": 54 - }, - "to_row": 4, - "to_column": 54 - }, - "to_row": 5, - "to_column": 1 - }, - "to_row": 5, - "to_column": 1 - }], - "function_nr": 1, - "to_row": 7, - "to_column": 3, - "outer": 0, - "nr_slots": 1, - "nr_close_slots": 0 - }, - "to_row": 7, - "to_column": 3 - }, { - "kind": "var", - "at": 125, - "from_row": 7, - "from_column": 0, - "left": { - "kind": "name", - "at": 129, - "from_row": 7, - "from_column": 4, - "name": "parse", - "to_row": 7, - "to_column": 9 - }, - "right": { - "kind": "function", - "at": 137, - "from_row": 7, - "from_column": 12, - "list": [{ - "kind": "name", - "at": 146, - "from_row": 7, - "from_column": 21, - "name": "tokens", - "to_row": 7, - "to_column": 27 - }, { - "kind": "name", - "at": 154, - "from_row": 7, - "from_column": 29, - "name": "src", - "to_row": 7, - "to_column": 32 - }, { - "kind": "name", - "at": 159, - "from_row": 7, - "from_column": 34, - "name": "filename", - "to_row": 7, - "to_column": 42 - }, { - "kind": "name", - "at": 169, - "from_row": 7, - "from_column": 44, - "name": "tokenizer", - "to_row": 7, - "to_column": 53 - }], - "statements": [{ - "kind": "var", - "at": 184, - "from_row": 8, - "from_column": 2, - "left": { - "kind": "name", - "at": 188, - "from_row": 8, - "from_column": 6, - "name": "_src_len", - "to_row": 8, - "to_column": 14 - }, - "right": { - "kind": "(", - "at": 205, - "from_row": 8, - "from_column": 23, - "expression": { - "kind": "name", - "at": 199, - "from_row": 8, - "from_column": 17, - "name": "length", - "to_row": 8, - "to_column": 23, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 206, - "from_row": 8, - "from_column": 24, - "name": "src", - "to_row": 8, - "to_column": 27, - "level": 0, - "function_nr": 40 - }], - "to_row": 9, - "to_column": 5 - }, - "to_row": 9, - "to_column": 5 - }, { - "kind": "var", - "at": 213, - "from_row": 9, - "from_column": 2, - "left": { - "kind": "name", - "at": 217, - "from_row": 9, - "from_column": 6, - "name": "cp", - "to_row": 9, - "to_column": 8 - }, - "right": { - "kind": "array", - "at": 222, - "from_row": 9, - "from_column": 11, - "list": [], - "to_row": 9, - "to_column": 13 - }, - "to_row": 10, - "to_column": 5 - }, { - "kind": "var", - "at": 227, - "from_row": 10, - "from_column": 2, - "left": { - "kind": "name", - "at": 231, - "from_row": 10, - "from_column": 6, - "name": "_i", - "to_row": 10, - "to_column": 8 - }, - "right": { - "kind": "number", - "at": 236, - "from_row": 10, - "from_column": 11, - "value": "0", - "number": 0, - "to_row": 10, - "to_column": 12 - }, - "to_row": 11, - "to_column": 7 - }, { - "kind": "while", - "at": 240, - "from_row": 11, - "from_column": 2, - "expression": { - "kind": "<", - "at": 250, - "from_row": 11, - "from_column": 12, - "left": { - "kind": "name", - "at": 247, - "from_row": 11, - "from_column": 9, - "name": "_i", - "to_row": 11, - "to_column": 11, - "level": 0, - "function_nr": 40 - }, - "right": { - "kind": "name", - "at": 252, - "from_row": 11, - "from_column": 14, - "name": "_src_len", - "to_row": 11, - "to_column": 22, - "level": 0, - "function_nr": 40 - }, - "to_row": 11, - "to_column": 23 - }, - "statements": [{ - "kind": "block", - "at": 262, - "from_row": 11, - "from_column": 24, - "statements": [{ - "kind": "call", - "at": 268, - "from_row": 12, - "from_column": 4, - "expression": { - "kind": "(", - "at": 272, - "from_row": 12, - "from_column": 8, - "expression": { - "kind": "name", - "at": 268, - "from_row": 12, - "from_column": 4, - "name": "push", - "to_row": 12, - "to_column": 8, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 273, - "from_row": 12, - "from_column": 9, - "name": "cp", - "to_row": 12, - "to_column": 11, - "level": 0, - "function_nr": 40 - }, { - "kind": "(", - "at": 286, - "from_row": 12, - "from_column": 22, - "expression": { - "kind": "name", - "at": 277, - "from_row": 12, - "from_column": 13, - "name": "codepoint", - "to_row": 12, - "to_column": 22, - "level": -1 - }, - "list": [{ - "kind": "[", - "at": 290, - "from_row": 12, - "from_column": 26, - "left": { - "kind": "name", - "at": 287, - "from_row": 12, - "from_column": 23, - "name": "src", - "to_row": 12, - "to_column": 26, - "level": 0, - "function_nr": 40 - }, - "right": { - "kind": "name", - "at": 291, - "from_row": 12, - "from_column": 27, - "name": "_i", - "to_row": 12, - "to_column": 29, - "level": 0, - "function_nr": 40 - }, - "to_row": 12, - "to_column": 31 - }], - "to_row": 12, - "to_column": 32 - }], - "to_row": 13, - "to_column": 6 - }, - "to_row": 13, - "to_column": 6 - }, { - "kind": "call", - "at": 301, - "from_row": 13, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 304, - "from_row": 13, - "from_column": 7, - "left": { - "kind": "name", - "at": 301, - "from_row": 13, - "from_column": 4, - "name": "_i", - "to_row": 13, - "to_column": 6, - "level": 0, - "function_nr": 40 - }, - "right": { - "kind": "+", - "at": 309, - "from_row": 13, - "from_column": 12, - "left": { - "kind": "name", - "at": 306, - "from_row": 13, - "from_column": 9, - "name": "_i", - "to_row": 13, - "to_column": 11, - "level": 0, - "function_nr": 40 - }, - "right": { - "kind": "number", - "at": 311, - "from_row": 13, - "from_column": 14, - "value": "1", - "number": 1, - "to_row": 13, - "to_column": 15 - }, - "to_row": 14, - "to_column": 3 - }, - "to_row": 14, - "to_column": 3 - }, - "to_row": 14, - "to_column": 3 - }], - "to_row": 20, - "to_column": 5 - }], - "to_row": 20, - "to_column": 5 - }, { - "kind": "var", - "at": 472, - "from_row": 20, - "from_column": 2, - "left": { - "kind": "name", - "at": 476, - "from_row": 20, - "from_column": 6, - "name": "cursor", - "to_row": 20, - "to_column": 12 - }, - "right": { - "kind": "number", - "at": 485, - "from_row": 20, - "from_column": 15, - "value": "0", - "number": 0, - "to_row": 20, - "to_column": 16 - }, - "to_row": 21, - "to_column": 5 - }, { - "kind": "var", - "at": 489, - "from_row": 21, - "from_column": 2, - "left": { - "kind": "name", - "at": 493, - "from_row": 21, - "from_column": 6, - "name": "tok", - "to_row": 21, - "to_column": 9 - }, - "right": { - "kind": "null", - "at": 499, - "from_row": 21, - "from_column": 12, - "to_row": 21, - "to_column": 16 - }, - "to_row": 22, - "to_column": 5 - }, { - "kind": "var", - "at": 506, - "from_row": 22, - "from_column": 2, - "left": { - "kind": "name", - "at": 510, - "from_row": 22, - "from_column": 6, - "name": "got_lf", - "to_row": 22, - "to_column": 12 - }, - "right": { - "kind": "false", - "at": 519, - "from_row": 22, - "from_column": 15, - "to_row": 22, - "to_column": 20 - }, - "to_row": 23, - "to_column": 5 - }, { - "kind": "var", - "at": 527, - "from_row": 23, - "from_column": 2, - "left": { - "kind": "name", - "at": 531, - "from_row": 23, - "from_column": 6, - "name": "prev_tok", - "to_row": 23, - "to_column": 14 - }, - "right": { - "kind": "null", - "at": 542, - "from_row": 23, - "from_column": 17, - "to_row": 23, - "to_column": 21 - }, - "to_row": 25, - "to_column": 5 - }, { - "kind": "var", - "at": 550, - "from_row": 25, - "from_column": 2, - "left": { - "kind": "name", - "at": 554, - "from_row": 25, - "from_column": 6, - "name": "advance", - "to_row": 25, - "to_column": 13 - }, - "right": { - "kind": "function", - "at": 564, - "from_row": 25, - "from_column": 16, - "list": [], - "statements": [{ - "kind": "var", - "at": 581, - "from_row": 26, - "from_column": 4, - "left": { - "kind": "name", - "at": 585, - "from_row": 26, - "from_column": 8, - "name": "t", - "to_row": 26, - "to_column": 9 - }, - "right": { - "kind": "null", - "at": 589, - "from_row": 26, - "from_column": 12, - "to_row": 26, - "to_column": 16 - }, - "to_row": 27, - "to_column": 7 - }, { - "kind": "var", - "at": 598, - "from_row": 27, - "from_column": 4, - "left": { - "kind": "name", - "at": 602, - "from_row": 27, - "from_column": 8, - "name": "k", - "to_row": 27, - "to_column": 9 - }, - "right": { - "kind": "null", - "at": 606, - "from_row": 27, - "from_column": 12, - "to_row": 27, - "to_column": 16 - }, - "to_row": 28, - "to_column": 12 - }, { - "kind": "call", - "at": 615, - "from_row": 28, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 624, - "from_row": 28, - "from_column": 13, - "left": { - "kind": "name", - "at": 615, - "from_row": 28, - "from_column": 4, - "name": "prev_tok", - "to_row": 28, - "to_column": 12, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "name", - "at": 626, - "from_row": 28, - "from_column": 15, - "name": "tok", - "to_row": 28, - "to_column": 18, - "level": 1, - "function_nr": 40 - }, - "to_row": 29, - "to_column": 10 - }, - "to_row": 29, - "to_column": 10 - }, { - "kind": "call", - "at": 634, - "from_row": 29, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 641, - "from_row": 29, - "from_column": 11, - "left": { - "kind": "name", - "at": 634, - "from_row": 29, - "from_column": 4, - "name": "cursor", - "to_row": 29, - "to_column": 10, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "+", - "at": 650, - "from_row": 29, - "from_column": 20, - "left": { - "kind": "name", - "at": 643, - "from_row": 29, - "from_column": 13, - "name": "cursor", - "to_row": 29, - "to_column": 19, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "number", - "at": 652, - "from_row": 29, - "from_column": 22, - "value": "1", - "number": 1, - "to_row": 29, - "to_column": 23 - }, - "to_row": 30, - "to_column": 10 - }, - "to_row": 30, - "to_column": 10 - }, - "to_row": 30, - "to_column": 10 - }, { - "kind": "call", - "at": 658, - "from_row": 30, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 665, - "from_row": 30, - "from_column": 11, - "left": { - "kind": "name", - "at": 658, - "from_row": 30, - "from_column": 4, - "name": "got_lf", - "to_row": 30, - "to_column": 10, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "false", - "at": 667, - "from_row": 30, - "from_column": 13, - "to_row": 30, - "to_column": 18 - }, - "to_row": 31, - "to_column": 9 - }, - "to_row": 31, - "to_column": 9 - }, { - "kind": "while", - "at": 677, - "from_row": 31, - "from_column": 4, - "expression": { - "kind": "<", - "at": 691, - "from_row": 31, - "from_column": 18, - "left": { - "kind": "name", - "at": 684, - "from_row": 31, - "from_column": 11, - "name": "cursor", - "to_row": 31, - "to_column": 17, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "(", - "at": 699, - "from_row": 31, - "from_column": 26, - "expression": { - "kind": "name", - "at": 693, - "from_row": 31, - "from_column": 20, - "name": "length", - "to_row": 31, - "to_column": 26, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 700, - "from_row": 31, - "from_column": 27, - "name": "tokens", - "to_row": 31, - "to_column": 33, - "level": 1, - "function_nr": 40 - }], - "to_row": 31, - "to_column": 35 - }, - "to_row": 31, - "to_column": 35 - }, - "statements": [{ - "kind": "block", - "at": 709, - "from_row": 31, - "from_column": 36, - "statements": [{ - "kind": "call", - "at": 717, - "from_row": 32, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 719, - "from_row": 32, - "from_column": 8, - "left": { - "kind": "name", - "at": 717, - "from_row": 32, - "from_column": 6, - "name": "t", - "to_row": 32, - "to_column": 7, - "level": 0, - "function_nr": 2 - }, - "right": { - "kind": "[", - "at": 727, - "from_row": 32, - "from_column": 16, - "left": { - "kind": "name", - "at": 721, - "from_row": 32, - "from_column": 10, - "name": "tokens", - "to_row": 32, - "to_column": 16, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "name", - "at": 728, - "from_row": 32, - "from_column": 17, - "name": "cursor", - "to_row": 32, - "to_column": 23, - "level": 1, - "function_nr": 40 - }, - "to_row": 33, - "to_column": 7 - }, - "to_row": 33, - "to_column": 7 - }, - "to_row": 33, - "to_column": 7 - }, { - "kind": "call", - "at": 742, - "from_row": 33, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 744, - "from_row": 33, - "from_column": 8, - "left": { - "kind": "name", - "at": 742, - "from_row": 33, - "from_column": 6, - "name": "k", - "to_row": 33, - "to_column": 7, - "level": 0, - "function_nr": 2 - }, - "right": { - "kind": ".", - "at": 747, - "from_row": 33, - "from_column": 11, - "left": { - "kind": "name", - "at": 746, - "from_row": 33, - "from_column": 10, - "name": "t", - "to_row": 33, - "to_column": 11, - "level": 0, - "function_nr": 2 - }, - "right": "kind", - "to_row": 34, - "to_column": 8 - }, - "to_row": 34, - "to_column": 8 - }, - "to_row": 34, - "to_column": 8 - }, { - "kind": "if", - "at": 759, - "from_row": 34, - "from_column": 6, - "expression": { - "kind": "||", - "at": 776, - "from_row": 34, - "from_column": 23, - "left": { - "kind": "==", - "at": 765, - "from_row": 34, - "from_column": 12, - "left": { - "kind": "name", - "at": 763, - "from_row": 34, - "from_column": 10, - "name": "k", - "to_row": 34, - "to_column": 11, - "level": 0, - "function_nr": 2 - }, - "right": { - "kind": "text", - "at": 768, - "from_row": 34, - "from_column": 15, - "value": "space", - "to_row": 34, - "to_column": 22 - }, - "to_row": 34, - "to_column": 25 - }, - "right": { - "kind": "==", - "at": 781, - "from_row": 34, - "from_column": 28, - "left": { - "kind": "name", - "at": 779, - "from_row": 34, - "from_column": 26, - "name": "k", - "to_row": 34, - "to_column": 27, - "level": 0, - "function_nr": 2 - }, - "right": { - "kind": "text", - "at": 784, - "from_row": 34, - "from_column": 31, - "value": "comment", - "to_row": 34, - "to_column": 40 - }, - "to_row": 34, - "to_column": 41 - }, - "to_row": 34, - "to_column": 41 - }, - "then": [{ - "kind": "block", - "at": 795, - "from_row": 34, - "from_column": 42, - "statements": [{ - "kind": "call", - "at": 805, - "from_row": 35, - "from_column": 8, - "expression": { - "kind": "assign", - "at": 812, - "from_row": 35, - "from_column": 15, - "left": { - "kind": "name", - "at": 805, - "from_row": 35, - "from_column": 8, - "name": "cursor", - "to_row": 35, - "to_column": 14, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "+", - "at": 821, - "from_row": 35, - "from_column": 24, - "left": { - "kind": "name", - "at": 814, - "from_row": 35, - "from_column": 17, - "name": "cursor", - "to_row": 35, - "to_column": 23, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "number", - "at": 823, - "from_row": 35, - "from_column": 26, - "value": "1", - "number": 1, - "to_row": 35, - "to_column": 27 - }, - "to_row": 36, - "to_column": 16 - }, - "to_row": 36, - "to_column": 16 - }, - "to_row": 36, - "to_column": 16 - }, { - "kind": "continue", - "at": 833, - "from_row": 36, - "from_column": 8, - "to_row": 37, - "to_column": 7 - }], - "to_row": 38, - "to_column": 8 - }], - "list": [], - "to_row": 38, - "to_column": 8 - }, { - "kind": "if", - "at": 856, - "from_row": 38, - "from_column": 6, - "expression": { - "kind": "==", - "at": 862, - "from_row": 38, - "from_column": 12, - "left": { - "kind": "name", - "at": 860, - "from_row": 38, - "from_column": 10, - "name": "k", - "to_row": 38, - "to_column": 11, - "level": 0, - "function_nr": 2 - }, - "right": { - "kind": "text", - "at": 865, - "from_row": 38, - "from_column": 15, - "value": "newline", - "to_row": 38, - "to_column": 24 - }, - "to_row": 38, - "to_column": 25 - }, - "then": [{ - "kind": "block", - "at": 876, - "from_row": 38, - "from_column": 26, - "statements": [{ - "kind": "call", - "at": 886, - "from_row": 39, - "from_column": 8, - "expression": { - "kind": "assign", - "at": 893, - "from_row": 39, - "from_column": 15, - "left": { - "kind": "name", - "at": 886, - "from_row": 39, - "from_column": 8, - "name": "got_lf", - "to_row": 39, - "to_column": 14, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "true", - "at": 895, - "from_row": 39, - "from_column": 17, - "to_row": 39, - "to_column": 21 - }, - "to_row": 40, - "to_column": 14 - }, - "to_row": 40, - "to_column": 14 - }, { - "kind": "call", - "at": 908, - "from_row": 40, - "from_column": 8, - "expression": { - "kind": "assign", - "at": 915, - "from_row": 40, - "from_column": 15, - "left": { - "kind": "name", - "at": 908, - "from_row": 40, - "from_column": 8, - "name": "cursor", - "to_row": 40, - "to_column": 14, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "+", - "at": 924, - "from_row": 40, - "from_column": 24, - "left": { - "kind": "name", - "at": 917, - "from_row": 40, - "from_column": 17, - "name": "cursor", - "to_row": 40, - "to_column": 23, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "number", - "at": 926, - "from_row": 40, - "from_column": 26, - "value": "1", - "number": 1, - "to_row": 40, - "to_column": 27 - }, - "to_row": 41, - "to_column": 16 - }, - "to_row": 41, - "to_column": 16 - }, - "to_row": 41, - "to_column": 16 - }, { - "kind": "continue", - "at": 936, - "from_row": 41, - "from_column": 8, - "to_row": 42, - "to_column": 7 - }], - "to_row": 43, - "to_column": 9 - }], - "list": [], - "to_row": 43, - "to_column": 9 - }, { - "kind": "call", - "at": 959, - "from_row": 43, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 963, - "from_row": 43, - "from_column": 10, - "left": { - "kind": "name", - "at": 959, - "from_row": 43, - "from_column": 6, - "name": "tok", - "to_row": 43, - "to_column": 9, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "name", - "at": 965, - "from_row": 43, - "from_column": 12, - "name": "t", - "to_row": 43, - "to_column": 13, - "level": 0, - "function_nr": 2 - }, - "to_row": 44, - "to_column": 12 - }, - "to_row": 44, - "to_column": 12 - }, { - "kind": "return", - "at": 973, - "from_row": 44, - "from_column": 6, - "expression": { - "kind": "null", - "at": 980, - "from_row": 44, - "from_column": 13, - "to_row": 44, - "to_column": 17 - }, - "to_row": 45, - "to_column": 5 - }], - "to_row": 46, - "to_column": 7 - }], - "to_row": 46, - "to_column": 7 - }, { - "kind": "call", - "at": 995, - "from_row": 46, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 999, - "from_row": 46, - "from_column": 8, - "left": { - "kind": "name", - "at": 995, - "from_row": 46, - "from_column": 4, - "name": "tok", - "to_row": 46, - "to_column": 7, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "[", - "at": 1007, - "from_row": 46, - "from_column": 16, - "left": { - "kind": "name", - "at": 1001, - "from_row": 46, - "from_column": 10, - "name": "tokens", - "to_row": 46, - "to_column": 16, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "-", - "at": 1023, - "from_row": 46, - "from_column": 32, - "left": { - "kind": "(", - "at": 1014, - "from_row": 46, - "from_column": 23, - "expression": { - "kind": "name", - "at": 1008, - "from_row": 46, - "from_column": 17, - "name": "length", - "to_row": 46, - "to_column": 23, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 1015, - "from_row": 46, - "from_column": 24, - "name": "tokens", - "to_row": 46, - "to_column": 30, - "level": 1, - "function_nr": 40 - }], - "to_row": 46, - "to_column": 33 - }, - "right": { - "kind": "number", - "at": 1025, - "from_row": 46, - "from_column": 34, - "value": "1", - "number": 1, - "to_row": 46, - "to_column": 35 - }, - "to_row": 46, - "to_column": 36 - }, - "to_row": 47, - "to_column": 3 - }, - "to_row": 47, - "to_column": 3 - }, - "to_row": 47, - "to_column": 3 - }], - "function_nr": 2, - "to_row": 49, - "to_column": 5, - "outer": 40, - "nr_slots": 2, - "nr_close_slots": 0 - }, - "to_row": 49, - "to_column": 5 - }, { - "kind": "var", - "at": 1035, - "from_row": 49, - "from_column": 2, - "left": { - "kind": "name", - "at": 1039, - "from_row": 49, - "from_column": 6, - "name": "peek_ahead", - "to_row": 49, - "to_column": 16 - }, - "right": { - "kind": "function", - "at": 1052, - "from_row": 49, - "from_column": 19, - "list": [{ - "kind": "name", - "at": 1061, - "from_row": 49, - "from_column": 28, - "name": "n", - "to_row": 49, - "to_column": 29 - }], - "statements": [{ - "kind": "var", - "at": 1070, - "from_row": 50, - "from_column": 4, - "left": { - "kind": "name", - "at": 1074, - "from_row": 50, - "from_column": 8, - "name": "c", - "to_row": 50, - "to_column": 9 - }, - "right": { - "kind": "+", - "at": 1085, - "from_row": 50, - "from_column": 19, - "left": { - "kind": "name", - "at": 1078, - "from_row": 50, - "from_column": 12, - "name": "cursor", - "to_row": 50, - "to_column": 18, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "number", - "at": 1087, - "from_row": 50, - "from_column": 21, - "value": "1", - "number": 1, - "to_row": 50, - "to_column": 22 - }, - "to_row": 51, - "to_column": 7 - }, - "to_row": 51, - "to_column": 7 - }, { - "kind": "var", - "at": 1093, - "from_row": 51, - "from_column": 4, - "left": { - "kind": "name", - "at": 1097, - "from_row": 51, - "from_column": 8, - "name": "count", - "to_row": 51, - "to_column": 13 - }, - "right": { - "kind": "number", - "at": 1105, - "from_row": 51, - "from_column": 16, - "value": "0", - "number": 0, - "to_row": 51, - "to_column": 17 - }, - "to_row": 52, - "to_column": 7 - }, { - "kind": "var", - "at": 1111, - "from_row": 52, - "from_column": 4, - "left": { - "kind": "name", - "at": 1115, - "from_row": 52, - "from_column": 8, - "name": "t", - "to_row": 52, - "to_column": 9 - }, - "right": { - "kind": "null", - "at": 1119, - "from_row": 52, - "from_column": 12, - "to_row": 52, - "to_column": 16 - }, - "to_row": 53, - "to_column": 7 - }, { - "kind": "var", - "at": 1128, - "from_row": 53, - "from_column": 4, - "left": { - "kind": "name", - "at": 1132, - "from_row": 53, - "from_column": 8, - "name": "k", - "to_row": 53, - "to_column": 9 - }, - "right": { - "kind": "null", - "at": 1136, - "from_row": 53, - "from_column": 12, - "to_row": 53, - "to_column": 16 - }, - "to_row": 54, - "to_column": 9 - }, { - "kind": "while", - "at": 1145, - "from_row": 54, - "from_column": 4, - "expression": { - "kind": "<", - "at": 1154, - "from_row": 54, - "from_column": 13, - "left": { - "kind": "name", - "at": 1152, - "from_row": 54, - "from_column": 11, - "name": "c", - "to_row": 54, - "to_column": 12, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "(", - "at": 1162, - "from_row": 54, - "from_column": 21, - "expression": { - "kind": "name", - "at": 1156, - "from_row": 54, - "from_column": 15, - "name": "length", - "to_row": 54, - "to_column": 21, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 1163, - "from_row": 54, - "from_column": 22, - "name": "tokens", - "to_row": 54, - "to_column": 28, - "level": 1, - "function_nr": 40 - }], - "to_row": 54, - "to_column": 30 - }, - "to_row": 54, - "to_column": 30 - }, - "statements": [{ - "kind": "block", - "at": 1172, - "from_row": 54, - "from_column": 31, - "statements": [{ - "kind": "call", - "at": 1180, - "from_row": 55, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 1182, - "from_row": 55, - "from_column": 8, - "left": { - "kind": "name", - "at": 1180, - "from_row": 55, - "from_column": 6, - "name": "t", - "to_row": 55, - "to_column": 7, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "[", - "at": 1190, - "from_row": 55, - "from_column": 16, - "left": { - "kind": "name", - "at": 1184, - "from_row": 55, - "from_column": 10, - "name": "tokens", - "to_row": 55, - "to_column": 16, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "name", - "at": 1191, - "from_row": 55, - "from_column": 17, - "name": "c", - "to_row": 55, - "to_column": 18, - "level": 0, - "function_nr": 3 - }, - "to_row": 56, - "to_column": 7 - }, - "to_row": 56, - "to_column": 7 - }, - "to_row": 56, - "to_column": 7 - }, { - "kind": "call", - "at": 1200, - "from_row": 56, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 1202, - "from_row": 56, - "from_column": 8, - "left": { - "kind": "name", - "at": 1200, - "from_row": 56, - "from_column": 6, - "name": "k", - "to_row": 56, - "to_column": 7, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": ".", - "at": 1205, - "from_row": 56, - "from_column": 11, - "left": { - "kind": "name", - "at": 1204, - "from_row": 56, - "from_column": 10, - "name": "t", - "to_row": 56, - "to_column": 11, - "level": 0, - "function_nr": 3 - }, - "right": "kind", - "to_row": 57, - "to_column": 8 - }, - "to_row": 57, - "to_column": 8 - }, - "to_row": 57, - "to_column": 8 - }, { - "kind": "if", - "at": 1217, - "from_row": 57, - "from_column": 6, - "expression": { - "kind": "&&", - "at": 1252, - "from_row": 57, - "from_column": 41, - "left": { - "kind": "&&", - "at": 1234, - "from_row": 57, - "from_column": 23, - "left": { - "kind": "!=", - "at": 1223, - "from_row": 57, - "from_column": 12, - "left": { - "kind": "name", - "at": 1221, - "from_row": 57, - "from_column": 10, - "name": "k", - "to_row": 57, - "to_column": 11, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "text", - "at": 1226, - "from_row": 57, - "from_column": 15, - "value": "space", - "to_row": 57, - "to_column": 22 - }, - "to_row": 57, - "to_column": 25 - }, - "right": { - "kind": "!=", - "at": 1239, - "from_row": 57, - "from_column": 28, - "left": { - "kind": "name", - "at": 1237, - "from_row": 57, - "from_column": 26, - "name": "k", - "to_row": 57, - "to_column": 27, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "text", - "at": 1242, - "from_row": 57, - "from_column": 31, - "value": "comment", - "to_row": 57, - "to_column": 40 - }, - "to_row": 57, - "to_column": 43 - }, - "to_row": 57, - "to_column": 43 - }, - "right": { - "kind": "!=", - "at": 1257, - "from_row": 57, - "from_column": 46, - "left": { - "kind": "name", - "at": 1255, - "from_row": 57, - "from_column": 44, - "name": "k", - "to_row": 57, - "to_column": 45, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "text", - "at": 1260, - "from_row": 57, - "from_column": 49, - "value": "newline", - "to_row": 57, - "to_column": 58 - }, - "to_row": 57, - "to_column": 59 - }, - "to_row": 57, - "to_column": 59 - }, - "then": [{ - "kind": "block", - "at": 1271, - "from_row": 57, - "from_column": 60, - "statements": [{ - "kind": "call", - "at": 1281, - "from_row": 58, - "from_column": 8, - "expression": { - "kind": "assign", - "at": 1287, - "from_row": 58, - "from_column": 14, - "left": { - "kind": "name", - "at": 1281, - "from_row": 58, - "from_column": 8, - "name": "count", - "to_row": 58, - "to_column": 13, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "+", - "at": 1295, - "from_row": 58, - "from_column": 22, - "left": { - "kind": "name", - "at": 1289, - "from_row": 58, - "from_column": 16, - "name": "count", - "to_row": 58, - "to_column": 21, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "number", - "at": 1297, - "from_row": 58, - "from_column": 24, - "value": "1", - "number": 1, - "to_row": 58, - "to_column": 25 - }, - "to_row": 59, - "to_column": 10 - }, - "to_row": 59, - "to_column": 10 - }, - "to_row": 59, - "to_column": 10 - }, { - "kind": "if", - "at": 1307, - "from_row": 59, - "from_column": 8, - "expression": { - "kind": "==", - "at": 1317, - "from_row": 59, - "from_column": 18, - "left": { - "kind": "name", - "at": 1311, - "from_row": 59, - "from_column": 12, - "name": "count", - "to_row": 59, - "to_column": 17, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "name", - "at": 1320, - "from_row": 59, - "from_column": 21, - "name": "n", - "to_row": 59, - "to_column": 22, - "level": 0, - "function_nr": 3 - }, - "to_row": 59, - "to_column": 23 - }, - "then": [{ - "kind": "return", - "at": 1323, - "from_row": 59, - "from_column": 24, - "expression": { - "kind": "name", - "at": 1330, - "from_row": 59, - "from_column": 31, - "name": "t", - "to_row": 59, - "to_column": 32, - "level": 0, - "function_nr": 3 - }, - "to_row": 60, - "to_column": 7 - }], - "list": [], - "to_row": 60, - "to_column": 7 - }], - "to_row": 61, - "to_column": 7 - }], - "list": [], - "to_row": 61, - "to_column": 7 - }, { - "kind": "call", - "at": 1346, - "from_row": 61, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 1348, - "from_row": 61, - "from_column": 8, - "left": { - "kind": "name", - "at": 1346, - "from_row": 61, - "from_column": 6, - "name": "c", - "to_row": 61, - "to_column": 7, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "+", - "at": 1352, - "from_row": 61, - "from_column": 12, - "left": { - "kind": "name", - "at": 1350, - "from_row": 61, - "from_column": 10, - "name": "c", - "to_row": 61, - "to_column": 11, - "level": 0, - "function_nr": 3 - }, - "right": { - "kind": "number", - "at": 1354, - "from_row": 61, - "from_column": 14, - "value": "1", - "number": 1, - "to_row": 61, - "to_column": 15 - }, - "to_row": 62, - "to_column": 5 - }, - "to_row": 62, - "to_column": 5 - }, - "to_row": 62, - "to_column": 5 - }], - "to_row": 63, - "to_column": 10 - }], - "to_row": 63, - "to_column": 10 - }, { - "kind": "return", - "at": 1366, - "from_row": 63, - "from_column": 4, - "expression": { - "kind": "[", - "at": 1379, - "from_row": 63, - "from_column": 17, - "left": { - "kind": "name", - "at": 1373, - "from_row": 63, - "from_column": 11, - "name": "tokens", - "to_row": 63, - "to_column": 17, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "-", - "at": 1395, - "from_row": 63, - "from_column": 33, - "left": { - "kind": "(", - "at": 1386, - "from_row": 63, - "from_column": 24, - "expression": { - "kind": "name", - "at": 1380, - "from_row": 63, - "from_column": 18, - "name": "length", - "to_row": 63, - "to_column": 24, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 1387, - "from_row": 63, - "from_column": 25, - "name": "tokens", - "to_row": 63, - "to_column": 31, - "level": 1, - "function_nr": 40 - }], - "to_row": 63, - "to_column": 34 - }, - "right": { - "kind": "number", - "at": 1397, - "from_row": 63, - "from_column": 35, - "value": "1", - "number": 1, - "to_row": 63, - "to_column": 36 - }, - "to_row": 63, - "to_column": 37 - }, - "to_row": 64, - "to_column": 3 - }, - "to_row": 64, - "to_column": 3 - }], - "function_nr": 3, - "to_row": 66, - "to_column": 5, - "outer": 40, - "nr_slots": 5, - "nr_close_slots": 0 - }, - "to_row": 66, - "to_column": 5 - }, { - "kind": "var", - "at": 1407, - "from_row": 66, - "from_column": 2, - "left": { - "kind": "name", - "at": 1411, - "from_row": 66, - "from_column": 6, - "name": "init_cursor", - "to_row": 66, - "to_column": 17 - }, - "right": { - "kind": "function", - "at": 1425, - "from_row": 66, - "from_column": 20, - "list": [], - "statements": [{ - "kind": "call", - "at": 1442, - "from_row": 67, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 1449, - "from_row": 67, - "from_column": 11, - "left": { - "kind": "name", - "at": 1442, - "from_row": 67, - "from_column": 4, - "name": "cursor", - "to_row": 67, - "to_column": 10, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "-unary", - "at": 1451, - "from_row": 67, - "from_column": 13, - "expression": { - "kind": "number", - "at": 1452, - "from_row": 67, - "from_column": 14, - "value": "1", - "number": 1, - "to_row": 67, - "to_column": 15 - }, - "to_row": 68, - "to_column": 11 - }, - "to_row": 68, - "to_column": 11 - }, - "to_row": 68, - "to_column": 11 - }, { - "kind": "call", - "at": 1458, - "from_row": 68, - "from_column": 4, - "expression": { - "kind": "(", - "at": 1465, - "from_row": 68, - "from_column": 11, - "expression": { - "kind": "name", - "at": 1458, - "from_row": 68, - "from_column": 4, - "name": "advance", - "to_row": 68, - "to_column": 11, - "level": 1, - "function_nr": 40 - }, - "list": [], - "to_row": 69, - "to_column": 3 - }, - "to_row": 69, - "to_column": 3 - }], - "function_nr": 4, - "to_row": 75, - "to_column": 5, - "outer": 40, - "nr_slots": 0, - "nr_close_slots": 0 - }, - "to_row": 75, - "to_column": 5 - }, { - "kind": "var", - "at": 1625, - "from_row": 75, - "from_column": 2, - "left": { - "kind": "name", - "at": 1629, - "from_row": 75, - "from_column": 6, - "name": "errors", - "to_row": 75, - "to_column": 12 - }, - "right": { - "kind": "array", - "at": 1638, - "from_row": 75, - "from_column": 15, - "list": [], - "to_row": 75, - "to_column": 17 - }, - "to_row": 76, - "to_column": 5 - }, { - "kind": "var", - "at": 1643, - "from_row": 76, - "from_column": 2, - "left": { - "kind": "name", - "at": 1647, - "from_row": 76, - "from_column": 6, - "name": "error_count", - "to_row": 76, - "to_column": 17 - }, - "right": { - "kind": "number", - "at": 1661, - "from_row": 76, - "from_column": 20, - "value": "0", - "number": 0, - "to_row": 76, - "to_column": 21 - }, - "to_row": 77, - "to_column": 5 - }, { - "kind": "var", - "at": 1665, - "from_row": 77, - "from_column": 2, - "left": { - "kind": "name", - "at": 1669, - "from_row": 77, - "from_column": 6, - "name": "function_nr", - "to_row": 77, - "to_column": 17 - }, - "right": { - "kind": "number", - "at": 1683, - "from_row": 77, - "from_column": 20, - "value": "1", - "number": 1, - "to_row": 77, - "to_column": 21 - }, - "to_row": 79, - "to_column": 5 - }, { - "kind": "var", - "at": 1688, - "from_row": 79, - "from_column": 2, - "left": { - "kind": "name", - "at": 1692, - "from_row": 79, - "from_column": 6, - "name": "ast_node", - "to_row": 79, - "to_column": 14 - }, - "right": { - "kind": "function", - "at": 1703, - "from_row": 79, - "from_column": 17, - "list": [{ - "kind": "name", - "at": 1712, - "from_row": 79, - "from_column": 26, - "name": "kind", - "to_row": 79, - "to_column": 30 - }, { - "kind": "name", - "at": 1718, - "from_row": 79, - "from_column": 32, - "name": "token", - "to_row": 79, - "to_column": 37 - }], - "statements": [{ - "kind": "return", - "at": 1731, - "from_row": 80, - "from_column": 4, - "expression": { - "kind": "record", - "at": 1738, - "from_row": 80, - "from_column": 11, - "list": [{ - "left": { - "kind": "name", - "at": 1746, - "from_row": 81, - "from_column": 6, - "name": "kind", - "to_row": 81, - "to_column": 10 - }, - "right": { - "kind": "name", - "at": 1752, - "from_row": 81, - "from_column": 12, - "name": "kind", - "to_row": 81, - "to_column": 16, - "level": 0, - "function_nr": 5 - } - }, { - "left": { - "kind": "name", - "at": 1764, - "from_row": 82, - "from_column": 6, - "name": "at", - "to_row": 82, - "to_column": 8 - }, - "right": { - "kind": ".", - "at": 1773, - "from_row": 82, - "from_column": 15, - "left": { - "kind": "name", - "at": 1768, - "from_row": 82, - "from_column": 10, - "name": "token", - "to_row": 82, - "to_column": 15, - "level": 0, - "function_nr": 5 - }, - "right": "at", - "to_row": 82, - "to_column": 19 - } - }, { - "left": { - "kind": "name", - "at": 1784, - "from_row": 83, - "from_column": 6, - "name": "from_row", - "to_row": 83, - "to_column": 14 - }, - "right": { - "kind": ".", - "at": 1799, - "from_row": 83, - "from_column": 21, - "left": { - "kind": "name", - "at": 1794, - "from_row": 83, - "from_column": 16, - "name": "token", - "to_row": 83, - "to_column": 21, - "level": 0, - "function_nr": 5 - }, - "right": "from_row", - "to_row": 83, - "to_column": 31 - } - }, { - "left": { - "kind": "name", - "at": 1816, - "from_row": 84, - "from_column": 6, - "name": "from_column", - "to_row": 84, - "to_column": 17 - }, - "right": { - "kind": ".", - "at": 1834, - "from_row": 84, - "from_column": 24, - "left": { - "kind": "name", - "at": 1829, - "from_row": 84, - "from_column": 19, - "name": "token", - "to_row": 84, - "to_column": 24, - "level": 0, - "function_nr": 5 - }, - "right": "from_column", - "to_row": 85, - "to_column": 5 - } - }], - "to_row": 85, - "to_column": 5 - }, - "to_row": 86, - "to_column": 3 - }], - "function_nr": 5, - "to_row": 88, - "to_column": 5, - "outer": 40, - "nr_slots": 2, - "nr_close_slots": 0 - }, - "to_row": 88, - "to_column": 5 - }, { - "kind": "var", - "at": 1860, - "from_row": 88, - "from_column": 2, - "left": { - "kind": "name", - "at": 1864, - "from_row": 88, - "from_column": 6, - "name": "ast_node_end", - "to_row": 88, - "to_column": 18 - }, - "right": { - "kind": "function", - "at": 1879, - "from_row": 88, - "from_column": 21, - "list": [{ - "kind": "name", - "at": 1888, - "from_row": 88, - "from_column": 30, - "name": "node", - "to_row": 88, - "to_column": 34 - }], - "statements": [{ - "kind": "call", - "at": 1900, - "from_row": 89, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 1912, - "from_row": 89, - "from_column": 16, - "left": { - "kind": ".", - "at": 1904, - "from_row": 89, - "from_column": 8, - "left": { - "kind": "name", - "at": 1900, - "from_row": 89, - "from_column": 4, - "name": "node", - "to_row": 89, - "to_column": 8, - "level": 0, - "function_nr": 6 - }, - "right": "to_row", - "to_row": 89, - "to_column": 17 - }, - "right": { - "kind": ".", - "at": 1922, - "from_row": 89, - "from_column": 26, - "left": { - "kind": "name", - "at": 1914, - "from_row": 89, - "from_column": 18, - "name": "prev_tok", - "to_row": 89, - "to_column": 26, - "level": 1, - "function_nr": 40 - }, - "right": "to_row", - "to_row": 90, - "to_column": 8 - }, - "to_row": 90, - "to_column": 8 - }, - "to_row": 90, - "to_column": 8 - }, { - "kind": "call", - "at": 1934, - "from_row": 90, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 1949, - "from_row": 90, - "from_column": 19, - "left": { - "kind": ".", - "at": 1938, - "from_row": 90, - "from_column": 8, - "left": { - "kind": "name", - "at": 1934, - "from_row": 90, - "from_column": 4, - "name": "node", - "to_row": 90, - "to_column": 8, - "level": 0, - "function_nr": 6 - }, - "right": "to_column", - "to_row": 90, - "to_column": 20 - }, - "right": { - "kind": ".", - "at": 1959, - "from_row": 90, - "from_column": 29, - "left": { - "kind": "name", - "at": 1951, - "from_row": 90, - "from_column": 21, - "name": "prev_tok", - "to_row": 90, - "to_column": 29, - "level": 1, - "function_nr": 40 - }, - "right": "to_column", - "to_row": 91, - "to_column": 10 - }, - "to_row": 91, - "to_column": 10 - }, - "to_row": 91, - "to_column": 10 - }, { - "kind": "return", - "at": 1974, - "from_row": 91, - "from_column": 4, - "expression": { - "kind": "name", - "at": 1981, - "from_row": 91, - "from_column": 11, - "name": "node", - "to_row": 91, - "to_column": 15, - "level": 0, - "function_nr": 6 - }, - "to_row": 92, - "to_column": 3 - }], - "function_nr": 6, - "to_row": 94, - "to_column": 5, - "outer": 40, - "nr_slots": 1, - "nr_close_slots": 0 - }, - "to_row": 94, - "to_column": 5 - }, { - "kind": "var", - "at": 1993, - "from_row": 94, - "from_column": 2, - "left": { - "kind": "name", - "at": 1997, - "from_row": 94, - "from_column": 6, - "name": "parse_error", - "to_row": 94, - "to_column": 17 - }, - "right": { - "kind": "function", - "at": 2011, - "from_row": 94, - "from_column": 20, - "list": [{ - "kind": "name", - "at": 2020, - "from_row": 94, - "from_column": 29, - "name": "token", - "to_row": 94, - "to_column": 34 - }, { - "kind": "name", - "at": 2027, - "from_row": 94, - "from_column": 36, - "name": "msg", - "to_row": 94, - "to_column": 39 - }], - "statements": [{ - "kind": "if", - "at": 2038, - "from_row": 95, - "from_column": 4, - "expression": { - "kind": ">=", - "at": 2054, - "from_row": 95, - "from_column": 20, - "left": { - "kind": "name", - "at": 2042, - "from_row": 95, - "from_column": 8, - "name": "error_count", - "to_row": 95, - "to_column": 19, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "number", - "at": 2057, - "from_row": 95, - "from_column": 23, - "value": "5", - "number": 5, - "to_row": 95, - "to_column": 24 - }, - "to_row": 95, - "to_column": 25 - }, - "then": [{ - "kind": "return", - "at": 2060, - "from_row": 95, - "from_column": 26, - "expression": { - "kind": "null", - "at": 2067, - "from_row": 95, - "from_column": 33, - "to_row": 95, - "to_column": 37 - }, - "to_row": 96, - "to_column": 15 - }], - "list": [], - "to_row": 96, - "to_column": 15 - }, { - "kind": "call", - "at": 2076, - "from_row": 96, - "from_column": 4, - "expression": { - "kind": "assign", - "at": 2088, - "from_row": 96, - "from_column": 16, - "left": { - "kind": "name", - "at": 2076, - "from_row": 96, - "from_column": 4, - "name": "error_count", - "to_row": 96, - "to_column": 15, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "+", - "at": 2102, - "from_row": 96, - "from_column": 30, - "left": { - "kind": "name", - "at": 2090, - "from_row": 96, - "from_column": 18, - "name": "error_count", - "to_row": 96, - "to_column": 29, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "number", - "at": 2104, - "from_row": 96, - "from_column": 32, - "value": "1", - "number": 1, - "to_row": 96, - "to_column": 33 - }, - "to_row": 97, - "to_column": 8 - }, - "to_row": 97, - "to_column": 8 - }, - "to_row": 97, - "to_column": 8 - }, { - "kind": "call", - "at": 2110, - "from_row": 97, - "from_column": 4, - "expression": { - "kind": "(", - "at": 2114, - "from_row": 97, - "from_column": 8, - "expression": { - "kind": "name", - "at": 2110, - "from_row": 97, - "from_column": 4, - "name": "push", - "to_row": 97, - "to_column": 8, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 2115, - "from_row": 97, - "from_column": 9, - "name": "errors", - "to_row": 97, - "to_column": 15, - "level": 1, - "function_nr": 40 - }, { - "kind": "record", - "at": 2123, - "from_row": 97, - "from_column": 17, - "list": [{ - "left": { - "kind": "name", - "at": 2131, - "from_row": 98, - "from_column": 6, - "name": "message", - "to_row": 98, - "to_column": 13 - }, - "right": { - "kind": "name", - "at": 2140, - "from_row": 98, - "from_column": 15, - "name": "msg", - "to_row": 98, - "to_column": 18, - "level": 0, - "function_nr": 7 - } - }, { - "left": { - "kind": "name", - "at": 2151, - "from_row": 99, - "from_column": 6, - "name": "line", - "to_row": 99, - "to_column": 10 - }, - "right": { - "kind": "+", - "at": 2172, - "from_row": 99, - "from_column": 27, - "left": { - "kind": ".", - "at": 2162, - "from_row": 99, - "from_column": 17, - "left": { - "kind": "name", - "at": 2157, - "from_row": 99, - "from_column": 12, - "name": "token", - "to_row": 99, - "to_column": 17, - "level": 0, - "function_nr": 7 - }, - "right": "from_row", - "to_row": 99, - "to_column": 28 - }, - "right": { - "kind": "number", - "at": 2174, - "from_row": 99, - "from_column": 29, - "value": "1", - "number": 1, - "to_row": 99, - "to_column": 30 - }, - "to_row": 99, - "to_column": 31 - } - }, { - "left": { - "kind": "name", - "at": 2183, - "from_row": 100, - "from_column": 6, - "name": "column", - "to_row": 100, - "to_column": 12 - }, - "right": { - "kind": "+", - "at": 2209, - "from_row": 100, - "from_column": 32, - "left": { - "kind": ".", - "at": 2196, - "from_row": 100, - "from_column": 19, - "left": { - "kind": "name", - "at": 2191, - "from_row": 100, - "from_column": 14, - "name": "token", - "to_row": 100, - "to_column": 19, - "level": 0, - "function_nr": 7 - }, - "right": "from_column", - "to_row": 100, - "to_column": 33 - }, - "right": { - "kind": "number", - "at": 2211, - "from_row": 100, - "from_column": 34, - "value": "1", - "number": 1, - "to_row": 100, - "to_column": 35 - }, - "to_row": 100, - "to_column": 36 - } - }, { - "left": { - "kind": "name", - "at": 2220, - "from_row": 101, - "from_column": 6, - "name": "offset", - "to_row": 101, - "to_column": 12 - }, - "right": { - "kind": ".", - "at": 2233, - "from_row": 101, - "from_column": 19, - "left": { - "kind": "name", - "at": 2228, - "from_row": 101, - "from_column": 14, - "name": "token", - "to_row": 101, - "to_column": 19, - "level": 0, - "function_nr": 7 - }, - "right": "at", - "to_row": 102, - "to_column": 5 - } - }], - "to_row": 102, - "to_column": 5 - }], - "to_row": 103, - "to_column": 3 - }, - "to_row": 103, - "to_column": 3 - }], - "function_nr": 7, - "to_row": 105, - "to_column": 5, - "outer": 40, - "nr_slots": 2, - "nr_close_slots": 0 - }, - "to_row": 105, - "to_column": 5 - }, { - "kind": "var", - "at": 2251, - "from_row": 105, - "from_column": 2, - "left": { - "kind": "name", - "at": 2255, - "from_row": 105, - "from_column": 6, - "name": "is_keyword", - "to_row": 105, - "to_column": 16 - }, - "right": { - "kind": "function", - "at": 2268, - "from_row": 105, - "from_column": 19, - "list": [{ - "kind": "name", - "at": 2277, - "from_row": 105, - "from_column": 28, - "name": "kind", - "to_row": 105, - "to_column": 32 - }], - "statements": [{ - "kind": "return", - "at": 2289, - "from_row": 106, - "from_column": 4, - "expression": { - "kind": "||", - "at": 2672, - "from_row": 111, - "from_column": 68, - "left": { - "kind": "||", - "at": 2650, - "from_row": 111, - "from_column": 46, - "left": { - "kind": "||", - "at": 2628, - "from_row": 111, - "from_column": 24, - "left": { - "kind": "||", - "at": 2601, - "from_row": 110, - "from_column": 43, - "left": { - "kind": "||", - "at": 2581, - "from_row": 110, - "from_column": 23, - "left": { - "kind": "||", - "at": 2555, - "from_row": 109, - "from_column": 60, - "left": { - "kind": "||", - "at": 2536, - "from_row": 109, - "from_column": 41, - "left": { - "kind": "||", - "at": 2517, - "from_row": 109, - "from_column": 22, - "left": { - "kind": "||", - "at": 2492, - "from_row": 108, - "from_column": 75, - "left": { - "kind": "||", - "at": 2474, - "from_row": 108, - "from_column": 57, - "left": { - "kind": "||", - "at": 2456, - "from_row": 108, - "from_column": 39, - "left": { - "kind": "||", - "at": 2438, - "from_row": 108, - "from_column": 21, - "left": { - "kind": "||", - "at": 2414, - "from_row": 107, - "from_column": 54, - "left": { - "kind": "||", - "at": 2397, - "from_row": 107, - "from_column": 37, - "left": { - "kind": "||", - "at": 2380, - "from_row": 107, - "from_column": 20, - "left": { - "kind": "||", - "at": 2357, - "from_row": 106, - "from_column": 72, - "left": { - "kind": "||", - "at": 2341, - "from_row": 106, - "from_column": 56, - "left": { - "kind": "||", - "at": 2325, - "from_row": 106, - "from_column": 40, - "left": { - "kind": "||", - "at": 2309, - "from_row": 106, - "from_column": 24, - "left": { - "kind": "==", - "at": 2301, - "from_row": 106, - "from_column": 16, - "left": { - "kind": "name", - "at": 2296, - "from_row": 106, - "from_column": 11, - "name": "kind", - "to_row": 106, - "to_column": 15, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2304, - "from_row": 106, - "from_column": 19, - "value": "if", - "to_row": 106, - "to_column": 23 - }, - "to_row": 106, - "to_column": 26 - }, - "right": { - "kind": "==", - "at": 2317, - "from_row": 106, - "from_column": 32, - "left": { - "kind": "name", - "at": 2312, - "from_row": 106, - "from_column": 27, - "name": "kind", - "to_row": 106, - "to_column": 31, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2320, - "from_row": 106, - "from_column": 35, - "value": "in", - "to_row": 106, - "to_column": 39 - }, - "to_row": 106, - "to_column": 42 - }, - "to_row": 106, - "to_column": 42 - }, - "right": { - "kind": "==", - "at": 2333, - "from_row": 106, - "from_column": 48, - "left": { - "kind": "name", - "at": 2328, - "from_row": 106, - "from_column": 43, - "name": "kind", - "to_row": 106, - "to_column": 47, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2336, - "from_row": 106, - "from_column": 51, - "value": "do", - "to_row": 106, - "to_column": 55 - }, - "to_row": 106, - "to_column": 58 - }, - "to_row": 106, - "to_column": 58 - }, - "right": { - "kind": "==", - "at": 2349, - "from_row": 106, - "from_column": 64, - "left": { - "kind": "name", - "at": 2344, - "from_row": 106, - "from_column": 59, - "name": "kind", - "to_row": 106, - "to_column": 63, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2352, - "from_row": 106, - "from_column": 67, - "value": "go", - "to_row": 106, - "to_column": 71 - }, - "to_row": 106, - "to_column": 74 - }, - "to_row": 106, - "to_column": 74 - }, - "right": { - "kind": "==", - "at": 2371, - "from_row": 107, - "from_column": 11, - "left": { - "kind": "name", - "at": 2366, - "from_row": 107, - "from_column": 6, - "name": "kind", - "to_row": 107, - "to_column": 10, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2374, - "from_row": 107, - "from_column": 14, - "value": "var", - "to_row": 107, - "to_column": 19 - }, - "to_row": 107, - "to_column": 22 - }, - "to_row": 107, - "to_column": 22 - }, - "right": { - "kind": "==", - "at": 2388, - "from_row": 107, - "from_column": 28, - "left": { - "kind": "name", - "at": 2383, - "from_row": 107, - "from_column": 23, - "name": "kind", - "to_row": 107, - "to_column": 27, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2391, - "from_row": 107, - "from_column": 31, - "value": "def", - "to_row": 107, - "to_column": 36 - }, - "to_row": 107, - "to_column": 39 - }, - "to_row": 107, - "to_column": 39 - }, - "right": { - "kind": "==", - "at": 2405, - "from_row": 107, - "from_column": 45, - "left": { - "kind": "name", - "at": 2400, - "from_row": 107, - "from_column": 40, - "name": "kind", - "to_row": 107, - "to_column": 44, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2408, - "from_row": 107, - "from_column": 48, - "value": "for", - "to_row": 107, - "to_column": 53 - }, - "to_row": 107, - "to_column": 56 - }, - "to_row": 107, - "to_column": 56 - }, - "right": { - "kind": "==", - "at": 2428, - "from_row": 108, - "from_column": 11, - "left": { - "kind": "name", - "at": 2423, - "from_row": 108, - "from_column": 6, - "name": "kind", - "to_row": 108, - "to_column": 10, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2431, - "from_row": 108, - "from_column": 14, - "value": "else", - "to_row": 108, - "to_column": 20 - }, - "to_row": 108, - "to_column": 23 - }, - "to_row": 108, - "to_column": 23 - }, - "right": { - "kind": "==", - "at": 2446, - "from_row": 108, - "from_column": 29, - "left": { - "kind": "name", - "at": 2441, - "from_row": 108, - "from_column": 24, - "name": "kind", - "to_row": 108, - "to_column": 28, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2449, - "from_row": 108, - "from_column": 32, - "value": "this", - "to_row": 108, - "to_column": 38 - }, - "to_row": 108, - "to_column": 41 - }, - "to_row": 108, - "to_column": 41 - }, - "right": { - "kind": "==", - "at": 2464, - "from_row": 108, - "from_column": 47, - "left": { - "kind": "name", - "at": 2459, - "from_row": 108, - "from_column": 42, - "name": "kind", - "to_row": 108, - "to_column": 46, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2467, - "from_row": 108, - "from_column": 50, - "value": "null", - "to_row": 108, - "to_column": 56 - }, - "to_row": 108, - "to_column": 59 - }, - "to_row": 108, - "to_column": 59 - }, - "right": { - "kind": "==", - "at": 2482, - "from_row": 108, - "from_column": 65, - "left": { - "kind": "name", - "at": 2477, - "from_row": 108, - "from_column": 60, - "name": "kind", - "to_row": 108, - "to_column": 64, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2485, - "from_row": 108, - "from_column": 68, - "value": "true", - "to_row": 108, - "to_column": 74 - }, - "to_row": 108, - "to_column": 77 - }, - "to_row": 108, - "to_column": 77 - }, - "right": { - "kind": "==", - "at": 2506, - "from_row": 109, - "from_column": 11, - "left": { - "kind": "name", - "at": 2501, - "from_row": 109, - "from_column": 6, - "name": "kind", - "to_row": 109, - "to_column": 10, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2509, - "from_row": 109, - "from_column": 14, - "value": "false", - "to_row": 109, - "to_column": 21 - }, - "to_row": 109, - "to_column": 24 - }, - "to_row": 109, - "to_column": 24 - }, - "right": { - "kind": "==", - "at": 2525, - "from_row": 109, - "from_column": 30, - "left": { - "kind": "name", - "at": 2520, - "from_row": 109, - "from_column": 25, - "name": "kind", - "to_row": 109, - "to_column": 29, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2528, - "from_row": 109, - "from_column": 33, - "value": "while", - "to_row": 109, - "to_column": 40 - }, - "to_row": 109, - "to_column": 43 - }, - "to_row": 109, - "to_column": 43 - }, - "right": { - "kind": "==", - "at": 2544, - "from_row": 109, - "from_column": 49, - "left": { - "kind": "name", - "at": 2539, - "from_row": 109, - "from_column": 44, - "name": "kind", - "to_row": 109, - "to_column": 48, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2547, - "from_row": 109, - "from_column": 52, - "value": "break", - "to_row": 109, - "to_column": 59 - }, - "to_row": 109, - "to_column": 62 - }, - "to_row": 109, - "to_column": 62 - }, - "right": { - "kind": "==", - "at": 2569, - "from_row": 110, - "from_column": 11, - "left": { - "kind": "name", - "at": 2564, - "from_row": 110, - "from_column": 6, - "name": "kind", - "to_row": 110, - "to_column": 10, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2572, - "from_row": 110, - "from_column": 14, - "value": "return", - "to_row": 110, - "to_column": 22 - }, - "to_row": 110, - "to_column": 25 - }, - "to_row": 110, - "to_column": 25 - }, - "right": { - "kind": "==", - "at": 2589, - "from_row": 110, - "from_column": 31, - "left": { - "kind": "name", - "at": 2584, - "from_row": 110, - "from_column": 26, - "name": "kind", - "to_row": 110, - "to_column": 30, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2592, - "from_row": 110, - "from_column": 34, - "value": "delete", - "to_row": 110, - "to_column": 42 - }, - "to_row": 110, - "to_column": 45 - }, - "to_row": 110, - "to_column": 45 - }, - "right": { - "kind": "==", - "at": 2615, - "from_row": 111, - "from_column": 11, - "left": { - "kind": "name", - "at": 2610, - "from_row": 111, - "from_column": 6, - "name": "kind", - "to_row": 111, - "to_column": 10, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2618, - "from_row": 111, - "from_column": 14, - "value": "disrupt", - "to_row": 111, - "to_column": 23 - }, - "to_row": 111, - "to_column": 26 - }, - "to_row": 111, - "to_column": 26 - }, - "right": { - "kind": "==", - "at": 2636, - "from_row": 111, - "from_column": 32, - "left": { - "kind": "name", - "at": 2631, - "from_row": 111, - "from_column": 27, - "name": "kind", - "to_row": 111, - "to_column": 31, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2639, - "from_row": 111, - "from_column": 35, - "value": "function", - "to_row": 111, - "to_column": 45 - }, - "to_row": 111, - "to_column": 48 - }, - "to_row": 111, - "to_column": 48 - }, - "right": { - "kind": "==", - "at": 2658, - "from_row": 111, - "from_column": 54, - "left": { - "kind": "name", - "at": 2653, - "from_row": 111, - "from_column": 49, - "name": "kind", - "to_row": 111, - "to_column": 53, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2661, - "from_row": 111, - "from_column": 57, - "value": "continue", - "to_row": 111, - "to_column": 67 - }, - "to_row": 111, - "to_column": 70 - }, - "to_row": 111, - "to_column": 70 - }, - "right": { - "kind": "==", - "at": 2686, - "from_row": 112, - "from_column": 11, - "left": { - "kind": "name", - "at": 2681, - "from_row": 112, - "from_column": 6, - "name": "kind", - "to_row": 112, - "to_column": 10, - "level": 0, - "function_nr": 8 - }, - "right": { - "kind": "text", - "at": 2689, - "from_row": 112, - "from_column": 14, - "value": "disruption", - "to_row": 112, - "to_column": 26 - }, - "to_row": 113, - "to_column": 3 - }, - "to_row": 113, - "to_column": 3 - }, - "to_row": 113, - "to_column": 3 - }], - "function_nr": 8, - "to_row": 120, - "to_column": 5, - "outer": 40, - "nr_slots": 1, - "nr_close_slots": 0 - }, - "to_row": 120, - "to_column": 5 - }, { - "kind": "var", - "at": 2900, - "from_row": 120, - "from_column": 2, - "left": { - "kind": "name", - "at": 2904, - "from_row": 120, - "from_column": 6, - "name": "parse_expr", - "to_row": 120, - "to_column": 16 - }, - "right": { - "kind": "null", - "at": 2917, - "from_row": 120, - "from_column": 19, - "to_row": 120, - "to_column": 23 - }, - "to_row": 121, - "to_column": 5 - }, { - "kind": "var", - "at": 2924, - "from_row": 121, - "from_column": 2, - "left": { - "kind": "name", - "at": 2928, - "from_row": 121, - "from_column": 6, - "name": "parse_assign_expr", - "to_row": 121, - "to_column": 23 - }, - "right": { - "kind": "null", - "at": 2948, - "from_row": 121, - "from_column": 26, - "to_row": 121, - "to_column": 30 - }, - "to_row": 122, - "to_column": 5 - }, { - "kind": "var", - "at": 2955, - "from_row": 122, - "from_column": 2, - "left": { - "kind": "name", - "at": 2959, - "from_row": 122, - "from_column": 6, - "name": "parse_assign", - "to_row": 122, - "to_column": 18 - }, - "right": { - "kind": "null", - "at": 2974, - "from_row": 122, - "from_column": 21, - "to_row": 122, - "to_column": 25 - }, - "to_row": 123, - "to_column": 5 - }, { - "kind": "var", - "at": 2981, - "from_row": 123, - "from_column": 2, - "left": { - "kind": "name", - "at": 2985, - "from_row": 123, - "from_column": 6, - "name": "parse_statement", - "to_row": 123, - "to_column": 21 - }, - "right": { - "kind": "null", - "at": 3003, - "from_row": 123, - "from_column": 24, - "to_row": 123, - "to_column": 28 - }, - "to_row": 124, - "to_column": 5 - }, { - "kind": "var", - "at": 3010, - "from_row": 124, - "from_column": 2, - "left": { - "kind": "name", - "at": 3014, - "from_row": 124, - "from_column": 6, - "name": "parse_block_statements", - "to_row": 124, - "to_column": 28 - }, - "right": { - "kind": "null", - "at": 3039, - "from_row": 124, - "from_column": 31, - "to_row": 124, - "to_column": 35 - }, - "to_row": 125, - "to_column": 5 - }, { - "kind": "var", - "at": 3046, - "from_row": 125, - "from_column": 2, - "left": { - "kind": "name", - "at": 3050, - "from_row": 125, - "from_column": 6, - "name": "parse_function_inner", - "to_row": 125, - "to_column": 26 - }, - "right": { - "kind": "null", - "at": 3073, - "from_row": 125, - "from_column": 29, - "to_row": 125, - "to_column": 33 - }, - "to_row": 126, - "to_column": 5 - }, { - "kind": "var", - "at": 3080, - "from_row": 126, - "from_column": 2, - "left": { - "kind": "name", - "at": 3084, - "from_row": 126, - "from_column": 6, - "name": "parse_arrow_function", - "to_row": 126, - "to_column": 26 - }, - "right": { - "kind": "null", - "at": 3107, - "from_row": 126, - "from_column": 29, - "to_row": 126, - "to_column": 33 - }, - "to_row": 128, - "to_column": 5 - }, { - "kind": "var", - "at": 3115, - "from_row": 128, - "from_column": 2, - "left": { - "kind": "name", - "at": 3119, - "from_row": 128, - "from_column": 6, - "name": "is_arrow_function", - "to_row": 128, - "to_column": 23 - }, - "right": { - "kind": "function", - "at": 3139, - "from_row": 128, - "from_column": 26, - "list": [], - "statements": [{ - "kind": "if", - "at": 3156, - "from_row": 129, - "from_column": 4, - "expression": { - "kind": "!=", - "at": 3169, - "from_row": 129, - "from_column": 17, - "left": { - "kind": ".", - "at": 3163, - "from_row": 129, - "from_column": 11, - "left": { - "kind": "name", - "at": 3160, - "from_row": 129, - "from_column": 8, - "name": "tok", - "to_row": 129, - "to_column": 11, - "level": 1, - "function_nr": 40 - }, - "right": "kind", - "to_row": 129, - "to_column": 19 - }, - "right": { - "kind": "text", - "at": 3172, - "from_row": 129, - "from_column": 20, - "value": "(", - "to_row": 129, - "to_column": 23 - }, - "to_row": 129, - "to_column": 24 - }, - "then": [{ - "kind": "return", - "at": 3177, - "from_row": 129, - "from_column": 25, - "expression": { - "kind": "false", - "at": 3184, - "from_row": 129, - "from_column": 32, - "to_row": 129, - "to_column": 37 - }, - "to_row": 130, - "to_column": 7 - }], - "list": [], - "to_row": 130, - "to_column": 7 - }, { - "kind": "var", - "at": 3194, - "from_row": 130, - "from_column": 4, - "left": { - "kind": "name", - "at": 3198, - "from_row": 130, - "from_column": 8, - "name": "c", - "to_row": 130, - "to_column": 9 - }, - "right": { - "kind": "+", - "at": 3209, - "from_row": 130, - "from_column": 19, - "left": { - "kind": "name", - "at": 3202, - "from_row": 130, - "from_column": 12, - "name": "cursor", - "to_row": 130, - "to_column": 18, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "number", - "at": 3211, - "from_row": 130, - "from_column": 21, - "value": "1", - "number": 1, - "to_row": 130, - "to_column": 22 - }, - "to_row": 131, - "to_column": 7 - }, - "to_row": 131, - "to_column": 7 - }, { - "kind": "var", - "at": 3217, - "from_row": 131, - "from_column": 4, - "left": { - "kind": "name", - "at": 3221, - "from_row": 131, - "from_column": 8, - "name": "depth", - "to_row": 131, - "to_column": 13 - }, - "right": { - "kind": "number", - "at": 3229, - "from_row": 131, - "from_column": 16, - "value": "1", - "number": 1, - "to_row": 131, - "to_column": 17 - }, - "to_row": 132, - "to_column": 7 - }, { - "kind": "var", - "at": 3235, - "from_row": 132, - "from_column": 4, - "left": { - "kind": "name", - "at": 3239, - "from_row": 132, - "from_column": 8, - "name": "k", - "to_row": 132, - "to_column": 9 - }, - "right": { - "kind": "null", - "at": 3243, - "from_row": 132, - "from_column": 12, - "to_row": 132, - "to_column": 16 - }, - "to_row": 133, - "to_column": 9 - }, { - "kind": "while", - "at": 3252, - "from_row": 133, - "from_column": 4, - "expression": { - "kind": "&&", - "at": 3278, - "from_row": 133, - "from_column": 30, - "left": { - "kind": "<", - "at": 3261, - "from_row": 133, - "from_column": 13, - "left": { - "kind": "name", - "at": 3259, - "from_row": 133, - "from_column": 11, - "name": "c", - "to_row": 133, - "to_column": 12, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "(", - "at": 3269, - "from_row": 133, - "from_column": 21, - "expression": { - "kind": "name", - "at": 3263, - "from_row": 133, - "from_column": 15, - "name": "length", - "to_row": 133, - "to_column": 21, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 3270, - "from_row": 133, - "from_column": 22, - "name": "tokens", - "to_row": 133, - "to_column": 28, - "level": 1, - "function_nr": 40 - }], - "to_row": 133, - "to_column": 32 - }, - "to_row": 133, - "to_column": 32 - }, - "right": { - "kind": ">", - "at": 3287, - "from_row": 133, - "from_column": 39, - "left": { - "kind": "name", - "at": 3281, - "from_row": 133, - "from_column": 33, - "name": "depth", - "to_row": 133, - "to_column": 38, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "number", - "at": 3289, - "from_row": 133, - "from_column": 41, - "value": "0", - "number": 0, - "to_row": 133, - "to_column": 42 - }, - "to_row": 133, - "to_column": 43 - }, - "to_row": 133, - "to_column": 43 - }, - "statements": [{ - "kind": "block", - "at": 3292, - "from_row": 133, - "from_column": 44, - "statements": [{ - "kind": "call", - "at": 3300, - "from_row": 134, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 3302, - "from_row": 134, - "from_column": 8, - "left": { - "kind": "name", - "at": 3300, - "from_row": 134, - "from_column": 6, - "name": "k", - "to_row": 134, - "to_column": 7, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": ".", - "at": 3313, - "from_row": 134, - "from_column": 19, - "left": { - "kind": "[", - "at": 3310, - "from_row": 134, - "from_column": 16, - "left": { - "kind": "name", - "at": 3304, - "from_row": 134, - "from_column": 10, - "name": "tokens", - "to_row": 134, - "to_column": 16, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "name", - "at": 3311, - "from_row": 134, - "from_column": 17, - "name": "c", - "to_row": 134, - "to_column": 18, - "level": 0, - "function_nr": 9 - }, - "to_row": 134, - "to_column": 20 - }, - "right": "kind", - "to_row": 135, - "to_column": 8 - }, - "to_row": 135, - "to_column": 8 - }, - "to_row": 135, - "to_column": 8 - }, { - "kind": "if", - "at": 3325, - "from_row": 135, - "from_column": 6, - "expression": { - "kind": "==", - "at": 3331, - "from_row": 135, - "from_column": 12, - "left": { - "kind": "name", - "at": 3329, - "from_row": 135, - "from_column": 10, - "name": "k", - "to_row": 135, - "to_column": 11, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "text", - "at": 3334, - "from_row": 135, - "from_column": 15, - "value": "(", - "to_row": 135, - "to_column": 18 - }, - "to_row": 135, - "to_column": 19 - }, - "then": [{ - "kind": "block", - "at": 3339, - "from_row": 135, - "from_column": 20, - "statements": [{ - "kind": "call", - "at": 3341, - "from_row": 135, - "from_column": 22, - "expression": { - "kind": "assign", - "at": 3347, - "from_row": 135, - "from_column": 28, - "left": { - "kind": "name", - "at": 3341, - "from_row": 135, - "from_column": 22, - "name": "depth", - "to_row": 135, - "to_column": 27, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "+", - "at": 3355, - "from_row": 135, - "from_column": 36, - "left": { - "kind": "name", - "at": 3349, - "from_row": 135, - "from_column": 30, - "name": "depth", - "to_row": 135, - "to_column": 35, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "number", - "at": 3357, - "from_row": 135, - "from_column": 38, - "value": "1", - "number": 1, - "to_row": 135, - "to_column": 39 - }, - "to_row": 135, - "to_column": 41 - }, - "to_row": 135, - "to_column": 41 - }, - "to_row": 135, - "to_column": 41 - }], - "to_row": 136, - "to_column": 10 - }], - "list": [{ - "kind": "if", - "at": 3372, - "from_row": 136, - "from_column": 11, - "expression": { - "kind": "==", - "at": 3378, - "from_row": 136, - "from_column": 17, - "left": { - "kind": "name", - "at": 3376, - "from_row": 136, - "from_column": 15, - "name": "k", - "to_row": 136, - "to_column": 16, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "text", - "at": 3381, - "from_row": 136, - "from_column": 20, - "value": ")", - "to_row": 136, - "to_column": 23 - }, - "to_row": 136, - "to_column": 24 - }, - "then": [{ - "kind": "block", - "at": 3386, - "from_row": 136, - "from_column": 25, - "statements": [{ - "kind": "call", - "at": 3388, - "from_row": 136, - "from_column": 27, - "expression": { - "kind": "assign", - "at": 3394, - "from_row": 136, - "from_column": 33, - "left": { - "kind": "name", - "at": 3388, - "from_row": 136, - "from_column": 27, - "name": "depth", - "to_row": 136, - "to_column": 32, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "-", - "at": 3402, - "from_row": 136, - "from_column": 41, - "left": { - "kind": "name", - "at": 3396, - "from_row": 136, - "from_column": 35, - "name": "depth", - "to_row": 136, - "to_column": 40, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "number", - "at": 3404, - "from_row": 136, - "from_column": 43, - "value": "1", - "number": 1, - "to_row": 136, - "to_column": 44 - }, - "to_row": 136, - "to_column": 46 - }, - "to_row": 136, - "to_column": 46 - }, - "to_row": 136, - "to_column": 46 - }], - "to_row": 137, - "to_column": 10 - }], - "list": [{ - "kind": "if", - "at": 3419, - "from_row": 137, - "from_column": 11, - "expression": { - "kind": "||", - "at": 3435, - "from_row": 137, - "from_column": 27, - "left": { - "kind": "==", - "at": 3425, - "from_row": 137, - "from_column": 17, - "left": { - "kind": "name", - "at": 3423, - "from_row": 137, - "from_column": 15, - "name": "k", - "to_row": 137, - "to_column": 16, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "text", - "at": 3428, - "from_row": 137, - "from_column": 20, - "value": "text", - "to_row": 137, - "to_column": 26 - }, - "to_row": 137, - "to_column": 29 - }, - "right": { - "kind": "==", - "at": 3440, - "from_row": 137, - "from_column": 32, - "left": { - "kind": "name", - "at": 3438, - "from_row": 137, - "from_column": 30, - "name": "k", - "to_row": 137, - "to_column": 31, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "text", - "at": 3443, - "from_row": 137, - "from_column": 35, - "value": "number", - "to_row": 137, - "to_column": 43 - }, - "to_row": 137, - "to_column": 44 - }, - "to_row": 137, - "to_column": 44 - }, - "then": [{ - "kind": "block", - "at": 3453, - "from_row": 137, - "from_column": 45, - "statements": [{ - "kind": "call", - "at": 3455, - "from_row": 137, - "from_column": 47, - "expression": { - "kind": "null", - "at": 3455, - "from_row": 137, - "from_column": 47, - "to_row": 137, - "to_column": 51 - }, - "to_row": 137, - "to_column": 53 - }], - "to_row": 138, - "to_column": 7 - }], - "list": [], - "to_row": 138, - "to_column": 7 - }], - "to_row": 138, - "to_column": 7 - }], - "to_row": 138, - "to_column": 7 - }, { - "kind": "call", - "at": 3468, - "from_row": 138, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 3470, - "from_row": 138, - "from_column": 8, - "left": { - "kind": "name", - "at": 3468, - "from_row": 138, - "from_column": 6, - "name": "c", - "to_row": 138, - "to_column": 7, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "+", - "at": 3474, - "from_row": 138, - "from_column": 12, - "left": { - "kind": "name", - "at": 3472, - "from_row": 138, - "from_column": 10, - "name": "c", - "to_row": 138, - "to_column": 11, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "number", - "at": 3476, - "from_row": 138, - "from_column": 14, - "value": "1", - "number": 1, - "to_row": 138, - "to_column": 15 - }, - "to_row": 139, - "to_column": 5 - }, - "to_row": 139, - "to_column": 5 - }, - "to_row": 139, - "to_column": 5 - }], - "to_row": 140, - "to_column": 9 - }], - "to_row": 140, - "to_column": 9 - }, { - "kind": "while", - "at": 3488, - "from_row": 140, - "from_column": 4, - "expression": { - "kind": "<", - "at": 3497, - "from_row": 140, - "from_column": 13, - "left": { - "kind": "name", - "at": 3495, - "from_row": 140, - "from_column": 11, - "name": "c", - "to_row": 140, - "to_column": 12, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "(", - "at": 3505, - "from_row": 140, - "from_column": 21, - "expression": { - "kind": "name", - "at": 3499, - "from_row": 140, - "from_column": 15, - "name": "length", - "to_row": 140, - "to_column": 21, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 3506, - "from_row": 140, - "from_column": 22, - "name": "tokens", - "to_row": 140, - "to_column": 28, - "level": 1, - "function_nr": 40 - }], - "to_row": 140, - "to_column": 30 - }, - "to_row": 140, - "to_column": 30 - }, - "statements": [{ - "kind": "block", - "at": 3515, - "from_row": 140, - "from_column": 31, - "statements": [{ - "kind": "call", - "at": 3523, - "from_row": 141, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 3525, - "from_row": 141, - "from_column": 8, - "left": { - "kind": "name", - "at": 3523, - "from_row": 141, - "from_column": 6, - "name": "k", - "to_row": 141, - "to_column": 7, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": ".", - "at": 3536, - "from_row": 141, - "from_column": 19, - "left": { - "kind": "[", - "at": 3533, - "from_row": 141, - "from_column": 16, - "left": { - "kind": "name", - "at": 3527, - "from_row": 141, - "from_column": 10, - "name": "tokens", - "to_row": 141, - "to_column": 16, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "name", - "at": 3534, - "from_row": 141, - "from_column": 17, - "name": "c", - "to_row": 141, - "to_column": 18, - "level": 0, - "function_nr": 9 - }, - "to_row": 141, - "to_column": 20 - }, - "right": "kind", - "to_row": 142, - "to_column": 8 - }, - "to_row": 142, - "to_column": 8 - }, - "to_row": 142, - "to_column": 8 - }, { - "kind": "if", - "at": 3548, - "from_row": 142, - "from_column": 6, - "expression": { - "kind": "&&", - "at": 3583, - "from_row": 142, - "from_column": 41, - "left": { - "kind": "&&", - "at": 3565, - "from_row": 142, - "from_column": 23, - "left": { - "kind": "!=", - "at": 3554, - "from_row": 142, - "from_column": 12, - "left": { - "kind": "name", - "at": 3552, - "from_row": 142, - "from_column": 10, - "name": "k", - "to_row": 142, - "to_column": 11, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "text", - "at": 3557, - "from_row": 142, - "from_column": 15, - "value": "space", - "to_row": 142, - "to_column": 22 - }, - "to_row": 142, - "to_column": 25 - }, - "right": { - "kind": "!=", - "at": 3570, - "from_row": 142, - "from_column": 28, - "left": { - "kind": "name", - "at": 3568, - "from_row": 142, - "from_column": 26, - "name": "k", - "to_row": 142, - "to_column": 27, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "text", - "at": 3573, - "from_row": 142, - "from_column": 31, - "value": "newline", - "to_row": 142, - "to_column": 40 - }, - "to_row": 142, - "to_column": 43 - }, - "to_row": 142, - "to_column": 43 - }, - "right": { - "kind": "!=", - "at": 3588, - "from_row": 142, - "from_column": 46, - "left": { - "kind": "name", - "at": 3586, - "from_row": 142, - "from_column": 44, - "name": "k", - "to_row": 142, - "to_column": 45, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "text", - "at": 3591, - "from_row": 142, - "from_column": 49, - "value": "comment", - "to_row": 142, - "to_column": 58 - }, - "to_row": 142, - "to_column": 59 - }, - "to_row": 142, - "to_column": 59 - }, - "then": [{ - "kind": "break", - "at": 3602, - "from_row": 142, - "from_column": 60, - "to_row": 143, - "to_column": 7 - }], - "list": [], - "to_row": 143, - "to_column": 7 - }, { - "kind": "call", - "at": 3614, - "from_row": 143, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 3616, - "from_row": 143, - "from_column": 8, - "left": { - "kind": "name", - "at": 3614, - "from_row": 143, - "from_column": 6, - "name": "c", - "to_row": 143, - "to_column": 7, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "+", - "at": 3620, - "from_row": 143, - "from_column": 12, - "left": { - "kind": "name", - "at": 3618, - "from_row": 143, - "from_column": 10, - "name": "c", - "to_row": 143, - "to_column": 11, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "number", - "at": 3622, - "from_row": 143, - "from_column": 14, - "value": "1", - "number": 1, - "to_row": 143, - "to_column": 15 - }, - "to_row": 144, - "to_column": 5 - }, - "to_row": 144, - "to_column": 5 - }, - "to_row": 144, - "to_column": 5 - }], - "to_row": 145, - "to_column": 6 - }], - "to_row": 145, - "to_column": 6 - }, { - "kind": "if", - "at": 3634, - "from_row": 145, - "from_column": 4, - "expression": { - "kind": ">=", - "at": 3640, - "from_row": 145, - "from_column": 10, - "left": { - "kind": "name", - "at": 3638, - "from_row": 145, - "from_column": 8, - "name": "c", - "to_row": 145, - "to_column": 9, - "level": 0, - "function_nr": 9 - }, - "right": { - "kind": "(", - "at": 3649, - "from_row": 145, - "from_column": 19, - "expression": { - "kind": "name", - "at": 3643, - "from_row": 145, - "from_column": 13, - "name": "length", - "to_row": 145, - "to_column": 19, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 3650, - "from_row": 145, - "from_column": 20, - "name": "tokens", - "to_row": 145, - "to_column": 26, - "level": 1, - "function_nr": 40 - }], - "to_row": 145, - "to_column": 28 - }, - "to_row": 145, - "to_column": 28 - }, - "then": [{ - "kind": "return", - "at": 3659, - "from_row": 145, - "from_column": 29, - "expression": { - "kind": "false", - "at": 3666, - "from_row": 145, - "from_column": 36, - "to_row": 145, - "to_column": 41 - }, - "to_row": 146, - "to_column": 10 - }], - "list": [], - "to_row": 146, - "to_column": 10 - }, { - "kind": "return", - "at": 3676, - "from_row": 146, - "from_column": 4, - "expression": { - "kind": "==", - "at": 3698, - "from_row": 146, - "from_column": 26, - "left": { - "kind": ".", - "at": 3692, - "from_row": 146, - "from_column": 20, - "left": { - "kind": "[", - "at": 3689, - "from_row": 146, - "from_column": 17, - "left": { - "kind": "name", - "at": 3683, - "from_row": 146, - "from_column": 11, - "name": "tokens", - "to_row": 146, - "to_column": 17, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "name", - "at": 3690, - "from_row": 146, - "from_column": 18, - "name": "c", - "to_row": 146, - "to_column": 19, - "level": 0, - "function_nr": 9 - }, - "to_row": 146, - "to_column": 21 - }, - "right": "kind", - "to_row": 146, - "to_column": 28 - }, - "right": { - "kind": "text", - "at": 3701, - "from_row": 146, - "from_column": 29, - "value": "=>", - "to_row": 146, - "to_column": 33 - }, - "to_row": 147, - "to_column": 3 - }, - "to_row": 147, - "to_column": 3 - }], - "function_nr": 9, - "to_row": 149, - "to_column": 5, - "outer": 40, - "nr_slots": 3, - "nr_close_slots": 0 - }, - "to_row": 149, - "to_column": 5 - }, { - "kind": "var", - "at": 3713, - "from_row": 149, - "from_column": 2, - "left": { - "kind": "name", - "at": 3717, - "from_row": 149, - "from_column": 6, - "name": "parse_primary", - "to_row": 149, - "to_column": 19 - }, - "right": { - "kind": "function", - "at": 3733, - "from_row": 149, - "from_column": 22, - "list": [], - "statements": [{ - "kind": "var", - "at": 3750, - "from_row": 150, - "from_column": 4, - "left": { - "kind": "name", - "at": 3754, - "from_row": 150, - "from_column": 8, - "name": "start", - "to_row": 150, - "to_column": 13 - }, - "right": { - "kind": "name", - "at": 3762, - "from_row": 150, - "from_column": 16, - "name": "tok", - "to_row": 150, - "to_column": 19, - "level": 1, - "function_nr": 40 - }, - "to_row": 151, - "to_column": 7 - }, { - "kind": "var", - "at": 3770, - "from_row": 151, - "from_column": 4, - "left": { - "kind": "name", - "at": 3774, - "from_row": 151, - "from_column": 8, - "name": "node", - "to_row": 151, - "to_column": 12 - }, - "right": { - "kind": "null", - "at": 3781, - "from_row": 151, - "from_column": 15, - "to_row": 151, - "to_column": 19 - }, - "to_row": 152, - "to_column": 7 - }, { - "kind": "var", - "at": 3790, - "from_row": 152, - "from_column": 4, - "left": { - "kind": "name", - "at": 3794, - "from_row": 152, - "from_column": 8, - "name": "k", - "to_row": 152, - "to_column": 9 - }, - "right": { - "kind": ".", - "at": 3801, - "from_row": 152, - "from_column": 15, - "left": { - "kind": "name", - "at": 3798, - "from_row": 152, - "from_column": 12, - "name": "tok", - "to_row": 152, - "to_column": 15, - "level": 1, - "function_nr": 40 - }, - "right": "kind", - "to_row": 153, - "to_column": 7 - }, - "to_row": 153, - "to_column": 7 - }, { - "kind": "var", - "at": 3811, - "from_row": 153, - "from_column": 4, - "left": { - "kind": "name", - "at": 3815, - "from_row": 153, - "from_column": 8, - "name": "list", - "to_row": 153, - "to_column": 12 - }, - "right": { - "kind": "null", - "at": 3822, - "from_row": 153, - "from_column": 15, - "to_row": 153, - "to_column": 19 - }, - "to_row": 154, - "to_column": 7 - }, { - "kind": "var", - "at": 3831, - "from_row": 154, - "from_column": 4, - "left": { - "kind": "name", - "at": 3835, - "from_row": 154, - "from_column": 8, - "name": "pair", - "to_row": 154, - "to_column": 12 - }, - "right": { - "kind": "null", - "at": 3842, - "from_row": 154, - "from_column": 15, - "to_row": 154, - "to_column": 19 - }, - "to_row": 155, - "to_column": 7 - }, { - "kind": "var", - "at": 3851, - "from_row": 155, - "from_column": 4, - "left": { - "kind": "name", - "at": 3855, - "from_row": 155, - "from_column": 8, - "name": "left", - "to_row": 155, - "to_column": 12 - }, - "right": { - "kind": "null", - "at": 3862, - "from_row": 155, - "from_column": 15, - "to_row": 155, - "to_column": 19 - }, - "to_row": 156, - "to_column": 7 - }, { - "kind": "var", - "at": 3871, - "from_row": 156, - "from_column": 4, - "left": { - "kind": "name", - "at": 3875, - "from_row": 156, - "from_column": 8, - "name": "right", - "to_row": 156, - "to_column": 13 - }, - "right": { - "kind": "null", - "at": 3883, - "from_row": 156, - "from_column": 16, - "to_row": 156, - "to_column": 20 - }, - "to_row": 157, - "to_column": 7 - }, { - "kind": "var", - "at": 3892, - "from_row": 157, - "from_column": 4, - "left": { - "kind": "name", - "at": 3896, - "from_row": 157, - "from_column": 8, - "name": "is_ident", - "to_row": 157, - "to_column": 16 - }, - "right": { - "kind": "false", - "at": 3907, - "from_row": 157, - "from_column": 19, - "to_row": 157, - "to_column": 24 - }, - "to_row": 158, - "to_column": 7 - }, { - "kind": "var", - "at": 3917, - "from_row": 158, - "from_column": 4, - "left": { - "kind": "name", - "at": 3921, - "from_row": 158, - "from_column": 8, - "name": "is_kw", - "to_row": 158, - "to_column": 13 - }, - "right": { - "kind": "false", - "at": 3929, - "from_row": 158, - "from_column": 16, - "to_row": 158, - "to_column": 21 - }, - "to_row": 159, - "to_column": 7 - }, { - "kind": "var", - "at": 3939, - "from_row": 159, - "from_column": 4, - "left": { - "kind": "name", - "at": 3943, - "from_row": 159, - "from_column": 8, - "name": "p1", - "to_row": 159, - "to_column": 10 - }, - "right": { - "kind": "null", - "at": 3948, - "from_row": 159, - "from_column": 13, - "to_row": 159, - "to_column": 17 - }, - "to_row": 160, - "to_column": 7 - }, { - "kind": "var", - "at": 3957, - "from_row": 160, - "from_column": 4, - "left": { - "kind": "name", - "at": 3961, - "from_row": 160, - "from_column": 8, - "name": "elem", - "to_row": 160, - "to_column": 12 - }, - "right": { - "kind": "null", - "at": 3968, - "from_row": 160, - "from_column": 15, - "to_row": 160, - "to_column": 19 - }, - "to_row": 161, - "to_column": 7 - }, { - "kind": "var", - "at": 3977, - "from_row": 161, - "from_column": 4, - "left": { - "kind": "name", - "at": 3981, - "from_row": 161, - "from_column": 8, - "name": "fn_start", - "to_row": 161, - "to_column": 16 - }, - "right": { - "kind": "null", - "at": 3992, - "from_row": 161, - "from_column": 19, - "to_row": 161, - "to_column": 23 - }, - "to_row": 162, - "to_column": 7 - }, { - "kind": "var", - "at": 4001, - "from_row": 162, - "from_column": 4, - "left": { - "kind": "name", - "at": 4005, - "from_row": 162, - "from_column": 8, - "name": "fn", - "to_row": 162, - "to_column": 10 - }, - "right": { - "kind": "null", - "at": 4010, - "from_row": 162, - "from_column": 13, - "to_row": 162, - "to_column": 17 - }, - "to_row": 163, - "to_column": 7 - }, { - "kind": "var", - "at": 4019, - "from_row": 163, - "from_column": 4, - "left": { - "kind": "name", - "at": 4023, - "from_row": 163, - "from_column": 8, - "name": "name_item", - "to_row": 163, - "to_column": 17 - }, - "right": { - "kind": "null", - "at": 4035, - "from_row": 163, - "from_column": 20, - "to_row": 163, - "to_column": 24 - }, - "to_row": 164, - "to_column": 7 - }, { - "kind": "var", - "at": 4044, - "from_row": 164, - "from_column": 4, - "left": { - "kind": "name", - "at": 4048, - "from_row": 164, - "from_column": 8, - "name": "params", - "to_row": 164, - "to_column": 14 - }, - "right": { - "kind": "null", - "at": 4057, - "from_row": 164, - "from_column": 17, - "to_row": 164, - "to_column": 21 - }, - "to_row": 165, - "to_column": 7 - }, { - "kind": "var", - "at": 4066, - "from_row": 165, - "from_column": 4, - "left": { - "kind": "name", - "at": 4070, - "from_row": 165, - "from_column": 8, - "name": "param", - "to_row": 165, - "to_column": 13 - }, - "right": { - "kind": "null", - "at": 4078, - "from_row": 165, - "from_column": 16, - "to_row": 165, - "to_column": 20 - }, - "to_row": 166, - "to_column": 7 - }, { - "kind": "var", - "at": 4087, - "from_row": 166, - "from_column": 4, - "left": { - "kind": "name", - "at": 4091, - "from_row": 166, - "from_column": 8, - "name": "rpos", - "to_row": 166, - "to_column": 12 - }, - "right": { - "kind": "number", - "at": 4098, - "from_row": 166, - "from_column": 15, - "value": "0", - "number": 0, - "to_row": 166, - "to_column": 16 - }, - "to_row": 167, - "to_column": 7 - }, { - "kind": "var", - "at": 4104, - "from_row": 167, - "from_column": 4, - "left": { - "kind": "name", - "at": 4108, - "from_row": 167, - "from_column": 8, - "name": "pattern_str", - "to_row": 167, - "to_column": 19 - }, - "right": { - "kind": "text", - "at": 4122, - "from_row": 167, - "from_column": 22, - "value": "", - "to_row": 167, - "to_column": 24 - }, - "to_row": 168, - "to_column": 7 - }, { - "kind": "var", - "at": 4129, - "from_row": 168, - "from_column": 4, - "left": { - "kind": "name", - "at": 4133, - "from_row": 168, - "from_column": 8, - "name": "flags", - "to_row": 168, - "to_column": 13 - }, - "right": { - "kind": "text", - "at": 4141, - "from_row": 168, - "from_column": 16, - "value": "", - "to_row": 168, - "to_column": 18 - }, - "to_row": 169, - "to_column": 7 - }, { - "kind": "var", - "at": 4148, - "from_row": 169, - "from_column": 4, - "left": { - "kind": "name", - "at": 4152, - "from_row": 169, - "from_column": 8, - "name": "tv", - "to_row": 169, - "to_column": 10 - }, - "right": { - "kind": "null", - "at": 4157, - "from_row": 169, - "from_column": 13, - "to_row": 169, - "to_column": 17 - }, - "to_row": 170, - "to_column": 7 - }, { - "kind": "var", - "at": 4166, - "from_row": 170, - "from_column": 4, - "left": { - "kind": "name", - "at": 4170, - "from_row": 170, - "from_column": 8, - "name": "has_interp", - "to_row": 170, - "to_column": 18 - }, - "right": { - "kind": "false", - "at": 4183, - "from_row": 170, - "from_column": 21, - "to_row": 170, - "to_column": 26 - }, - "to_row": 171, - "to_column": 7 - }, { - "kind": "var", - "at": 4193, - "from_row": 171, - "from_column": 4, - "left": { - "kind": "name", - "at": 4197, - "from_row": 171, - "from_column": 8, - "name": "ti", - "to_row": 171, - "to_column": 10 - }, - "right": { - "kind": "number", - "at": 4202, - "from_row": 171, - "from_column": 13, - "value": "0", - "number": 0, - "to_row": 171, - "to_column": 14 - }, - "to_row": 172, - "to_column": 7 - }, { - "kind": "var", - "at": 4208, - "from_row": 172, - "from_column": 4, - "left": { - "kind": "name", - "at": 4212, - "from_row": 172, - "from_column": 8, - "name": "tpl_list", - "to_row": 172, - "to_column": 16 - }, - "right": { - "kind": "null", - "at": 4223, - "from_row": 172, - "from_column": 19, - "to_row": 172, - "to_column": 23 - }, - "to_row": 173, - "to_column": 7 - }, { - "kind": "var", - "at": 4232, - "from_row": 173, - "from_column": 4, - "left": { - "kind": "name", - "at": 4236, - "from_row": 173, - "from_column": 8, - "name": "fmt", - "to_row": 173, - "to_column": 11 - }, - "right": { - "kind": "null", - "at": 4242, - "from_row": 173, - "from_column": 14, - "to_row": 173, - "to_column": 18 - }, - "to_row": 174, - "to_column": 7 - }, { - "kind": "var", - "at": 4251, - "from_row": 174, - "from_column": 4, - "left": { - "kind": "name", - "at": 4255, - "from_row": 174, - "from_column": 8, - "name": "idx", - "to_row": 174, - "to_column": 11 - }, - "right": { - "kind": "number", - "at": 4261, - "from_row": 174, - "from_column": 14, - "value": "0", - "number": 0, - "to_row": 174, - "to_column": 15 - }, - "to_row": 175, - "to_column": 7 - }, { - "kind": "var", - "at": 4267, - "from_row": 175, - "from_column": 4, - "left": { - "kind": "name", - "at": 4271, - "from_row": 175, - "from_column": 8, - "name": "tvi", - "to_row": 175, - "to_column": 11 - }, - "right": { - "kind": "number", - "at": 4277, - "from_row": 175, - "from_column": 14, - "value": "0", - "number": 0, - "to_row": 175, - "to_column": 15 - }, - "to_row": 176, - "to_column": 7 - }, { - "kind": "var", - "at": 4283, - "from_row": 176, - "from_column": 4, - "left": { - "kind": "name", - "at": 4287, - "from_row": 176, - "from_column": 8, - "name": "tvlen", - "to_row": 176, - "to_column": 13 - }, - "right": { - "kind": "number", - "at": 4295, - "from_row": 176, - "from_column": 16, - "value": "0", - "number": 0, - "to_row": 176, - "to_column": 17 - }, - "to_row": 177, - "to_column": 7 - }, { - "kind": "var", - "at": 4301, - "from_row": 177, - "from_column": 4, - "left": { - "kind": "name", - "at": 4305, - "from_row": 177, - "from_column": 8, - "name": "depth", - "to_row": 177, - "to_column": 13 - }, - "right": { - "kind": "number", - "at": 4313, - "from_row": 177, - "from_column": 16, - "value": "0", - "number": 0, - "to_row": 177, - "to_column": 17 - }, - "to_row": 178, - "to_column": 7 - }, { - "kind": "var", - "at": 4319, - "from_row": 178, - "from_column": 4, - "left": { - "kind": "name", - "at": 4323, - "from_row": 178, - "from_column": 8, - "name": "expr_str", - "to_row": 178, - "to_column": 16 - }, - "right": { - "kind": "null", - "at": 4334, - "from_row": 178, - "from_column": 19, - "to_row": 178, - "to_column": 23 - }, - "to_row": 179, - "to_column": 7 - }, { - "kind": "var", - "at": 4343, - "from_row": 179, - "from_column": 4, - "left": { - "kind": "name", - "at": 4347, - "from_row": 179, - "from_column": 8, - "name": "tc", - "to_row": 179, - "to_column": 10 - }, - "right": { - "kind": "null", - "at": 4352, - "from_row": 179, - "from_column": 13, - "to_row": 179, - "to_column": 17 - }, - "to_row": 180, - "to_column": 7 - }, { - "kind": "var", - "at": 4361, - "from_row": 180, - "from_column": 4, - "left": { - "kind": "name", - "at": 4365, - "from_row": 180, - "from_column": 8, - "name": "tq", - "to_row": 180, - "to_column": 10 - }, - "right": { - "kind": "null", - "at": 4370, - "from_row": 180, - "from_column": 13, - "to_row": 180, - "to_column": 17 - }, - "to_row": 181, - "to_column": 7 - }, { - "kind": "var", - "at": 4379, - "from_row": 181, - "from_column": 4, - "left": { - "kind": "name", - "at": 4383, - "from_row": 181, - "from_column": 8, - "name": "esc_ch", - "to_row": 181, - "to_column": 14 - }, - "right": { - "kind": "null", - "at": 4392, - "from_row": 181, - "from_column": 17, - "to_row": 181, - "to_column": 21 - }, - "to_row": 182, - "to_column": 7 - }, { - "kind": "var", - "at": 4401, - "from_row": 182, - "from_column": 4, - "left": { - "kind": "name", - "at": 4405, - "from_row": 182, - "from_column": 8, - "name": "expr_tokens", - "to_row": 182, - "to_column": 19 - }, - "right": { - "kind": "null", - "at": 4419, - "from_row": 182, - "from_column": 22, - "to_row": 182, - "to_column": 26 - }, - "to_row": 183, - "to_column": 7 - }, { - "kind": "var", - "at": 4428, - "from_row": 183, - "from_column": 4, - "left": { - "kind": "name", - "at": 4432, - "from_row": 183, - "from_column": 8, - "name": "sub_ast", - "to_row": 183, - "to_column": 15 - }, - "right": { - "kind": "null", - "at": 4442, - "from_row": 183, - "from_column": 18, - "to_row": 183, - "to_column": 22 - }, - "to_row": 184, - "to_column": 7 - }, { - "kind": "var", - "at": 4451, - "from_row": 184, - "from_column": 4, - "left": { - "kind": "name", - "at": 4455, - "from_row": 184, - "from_column": 8, - "name": "sub_stmt", - "to_row": 184, - "to_column": 16 - }, - "right": { - "kind": "null", - "at": 4466, - "from_row": 184, - "from_column": 19, - "to_row": 184, - "to_column": 23 - }, - "to_row": 185, - "to_column": 7 - }, { - "kind": "var", - "at": 4475, - "from_row": 185, - "from_column": 4, - "left": { - "kind": "name", - "at": 4479, - "from_row": 185, - "from_column": 8, - "name": "sub_expr", - "to_row": 185, - "to_column": 16 - }, - "right": { - "kind": "null", - "at": 4490, - "from_row": 185, - "from_column": 19, - "to_row": 185, - "to_column": 23 - }, - "to_row": 187, - "to_column": 6 - }, { - "kind": "if", - "at": 4500, - "from_row": 187, - "from_column": 4, - "expression": { - "kind": "==", - "at": 4506, - "from_row": 187, - "from_column": 10, - "left": { - "kind": "name", - "at": 4504, - "from_row": 187, - "from_column": 8, - "name": "k", - "to_row": 187, - "to_column": 9, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 4509, - "from_row": 187, - "from_column": 13, - "value": "number", - "to_row": 187, - "to_column": 21 - }, - "to_row": 187, - "to_column": 22 - }, - "then": [{ - "kind": "block", - "at": 4519, - "from_row": 187, - "from_column": 23, - "statements": [{ - "kind": "call", - "at": 4527, - "from_row": 188, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 4532, - "from_row": 188, - "from_column": 11, - "left": { - "kind": "name", - "at": 4527, - "from_row": 188, - "from_column": 6, - "name": "node", - "to_row": 188, - "to_column": 10, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "(", - "at": 4542, - "from_row": 188, - "from_column": 21, - "expression": { - "kind": "name", - "at": 4534, - "from_row": 188, - "from_column": 13, - "name": "ast_node", - "to_row": 188, - "to_column": 21, - "level": 1, - "function_nr": 40 - }, - "list": [{ - "kind": "text", - "at": 4543, - "from_row": 188, - "from_column": 22, - "value": "number", - "to_row": 188, - "to_column": 30 - }, { - "kind": "name", - "at": 4553, - "from_row": 188, - "from_column": 32, - "name": "start", - "to_row": 188, - "to_column": 37, - "level": 0, - "function_nr": 10 - }], - "to_row": 189, - "to_column": 10 - }, - "to_row": 189, - "to_column": 10 - }, - "to_row": 189, - "to_column": 10 - }, { - "kind": "call", - "at": 4566, - "from_row": 189, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 4577, - "from_row": 189, - "from_column": 17, - "left": { - "kind": ".", - "at": 4570, - "from_row": 189, - "from_column": 10, - "left": { - "kind": "name", - "at": 4566, - "from_row": 189, - "from_column": 6, - "name": "node", - "to_row": 189, - "to_column": 10, - "level": 0, - "function_nr": 10 - }, - "right": "value", - "to_row": 189, - "to_column": 18 - }, - "right": { - "kind": ".", - "at": 4582, - "from_row": 189, - "from_column": 22, - "left": { - "kind": "name", - "at": 4579, - "from_row": 189, - "from_column": 19, - "name": "tok", - "to_row": 189, - "to_column": 22, - "level": 1, - "function_nr": 40 - }, - "right": "value", - "to_row": 190, - "to_column": 10 - }, - "to_row": 190, - "to_column": 10 - }, - "to_row": 190, - "to_column": 10 - }, { - "kind": "call", - "at": 4595, - "from_row": 190, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 4607, - "from_row": 190, - "from_column": 18, - "left": { - "kind": ".", - "at": 4599, - "from_row": 190, - "from_column": 10, - "left": { - "kind": "name", - "at": 4595, - "from_row": 190, - "from_column": 6, - "name": "node", - "to_row": 190, - "to_column": 10, - "level": 0, - "function_nr": 10 - }, - "right": "number", - "to_row": 190, - "to_column": 19 - }, - "right": { - "kind": ".", - "at": 4612, - "from_row": 190, - "from_column": 23, - "left": { - "kind": "name", - "at": 4609, - "from_row": 190, - "from_column": 20, - "name": "tok", - "to_row": 190, - "to_column": 23, - "level": 1, - "function_nr": 40 - }, - "right": "number", - "to_row": 191, - "to_column": 13 - }, - "to_row": 191, - "to_column": 13 - }, - "to_row": 191, - "to_column": 13 - }, { - "kind": "call", - "at": 4626, - "from_row": 191, - "from_column": 6, - "expression": { - "kind": "(", - "at": 4633, - "from_row": 191, - "from_column": 13, - "expression": { - "kind": "name", - "at": 4626, - "from_row": 191, - "from_column": 6, - "name": "advance", - "to_row": 191, - "to_column": 13, - "level": 1, - "function_nr": 40 - }, - "list": [], - "to_row": 192, - "to_column": 18 - }, - "to_row": 192, - "to_column": 18 - }, { - "kind": "call", - "at": 4642, - "from_row": 192, - "from_column": 6, - "expression": { - "kind": "(", - "at": 4654, - "from_row": 192, - "from_column": 18, - "expression": { - "kind": "name", - "at": 4642, - "from_row": 192, - "from_column": 6, - "name": "ast_node_end", - "to_row": 192, - "to_column": 18, - "level": 1, - "function_nr": 40 - }, - "list": [{ - "kind": "name", - "at": 4655, - "from_row": 192, - "from_column": 19, - "name": "node", - "to_row": 192, - "to_column": 23, - "level": 0, - "function_nr": 10 - }], - "to_row": 193, - "to_column": 12 - }, - "to_row": 193, - "to_column": 12 - }, { - "kind": "return", - "at": 4667, - "from_row": 193, - "from_column": 6, - "expression": { - "kind": "name", - "at": 4674, - "from_row": 193, - "from_column": 13, - "name": "node", - "to_row": 193, - "to_column": 17, - "level": 0, - "function_nr": 10 - }, - "to_row": 194, - "to_column": 5 - }], - "to_row": 195, - "to_column": 6 - }], - "list": [], - "to_row": 195, - "to_column": 6 - }, { - "kind": "if", - "at": 4689, - "from_row": 195, - "from_column": 4, - "expression": { - "kind": "==", - "at": 4695, - "from_row": 195, - "from_column": 10, - "left": { - "kind": "name", - "at": 4693, - "from_row": 195, - "from_column": 8, - "name": "k", - "to_row": 195, - "to_column": 9, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 4698, - "from_row": 195, - "from_column": 13, - "value": "text", - "to_row": 195, - "to_column": 19 - }, - "to_row": 195, - "to_column": 20 - }, - "then": [{ - "kind": "block", - "at": 4706, - "from_row": 195, - "from_column": 21, - "statements": [{ - "kind": "call", - "at": 4764, - "from_row": 197, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 4767, - "from_row": 197, - "from_column": 9, - "left": { - "kind": "name", - "at": 4764, - "from_row": 197, - "from_column": 6, - "name": "tv", - "to_row": 197, - "to_column": 8, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": ".", - "at": 4772, - "from_row": 197, - "from_column": 14, - "left": { - "kind": "name", - "at": 4769, - "from_row": 197, - "from_column": 11, - "name": "tok", - "to_row": 197, - "to_column": 14, - "level": 1, - "function_nr": 40 - }, - "right": "value", - "to_row": 198, - "to_column": 16 - }, - "to_row": 198, - "to_column": 16 - }, - "to_row": 198, - "to_column": 16 - }, { - "kind": "call", - "at": 4785, - "from_row": 198, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 4796, - "from_row": 198, - "from_column": 17, - "left": { - "kind": "name", - "at": 4785, - "from_row": 198, - "from_column": 6, - "name": "has_interp", - "to_row": 198, - "to_column": 16, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "false", - "at": 4798, - "from_row": 198, - "from_column": 19, - "to_row": 198, - "to_column": 24 - }, - "to_row": 199, - "to_column": 8 - }, - "to_row": 199, - "to_column": 8 - }, { - "kind": "call", - "at": 4810, - "from_row": 199, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 4813, - "from_row": 199, - "from_column": 9, - "left": { - "kind": "name", - "at": 4810, - "from_row": 199, - "from_column": 6, - "name": "ti", - "to_row": 199, - "to_column": 8, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 4815, - "from_row": 199, - "from_column": 11, - "value": "0", - "number": 0, - "to_row": 199, - "to_column": 12 - }, - "to_row": 200, - "to_column": 11 - }, - "to_row": 200, - "to_column": 11 - }, { - "kind": "while", - "at": 4823, - "from_row": 200, - "from_column": 6, - "expression": { - "kind": "<", - "at": 4833, - "from_row": 200, - "from_column": 16, - "left": { - "kind": "name", - "at": 4830, - "from_row": 200, - "from_column": 13, - "name": "ti", - "to_row": 200, - "to_column": 15, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "-", - "at": 4846, - "from_row": 200, - "from_column": 29, - "left": { - "kind": "(", - "at": 4841, - "from_row": 200, - "from_column": 24, - "expression": { - "kind": "name", - "at": 4835, - "from_row": 200, - "from_column": 18, - "name": "length", - "to_row": 200, - "to_column": 24, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 4842, - "from_row": 200, - "from_column": 25, - "name": "tv", - "to_row": 200, - "to_column": 27, - "level": 0, - "function_nr": 10 - }], - "to_row": 200, - "to_column": 30 - }, - "right": { - "kind": "number", - "at": 4848, - "from_row": 200, - "from_column": 31, - "value": "1", - "number": 1, - "to_row": 200, - "to_column": 32 - }, - "to_row": 200, - "to_column": 33 - }, - "to_row": 200, - "to_column": 33 - }, - "statements": [{ - "kind": "block", - "at": 4851, - "from_row": 200, - "from_column": 34, - "statements": [{ - "kind": "if", - "at": 4861, - "from_row": 201, - "from_column": 8, - "expression": { - "kind": "&&", - "at": 4879, - "from_row": 201, - "from_column": 26, - "left": { - "kind": "==", - "at": 4872, - "from_row": 201, - "from_column": 19, - "left": { - "kind": "[", - "at": 4867, - "from_row": 201, - "from_column": 14, - "left": { - "kind": "name", - "at": 4865, - "from_row": 201, - "from_column": 12, - "name": "tv", - "to_row": 201, - "to_column": 14, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 4868, - "from_row": 201, - "from_column": 15, - "name": "ti", - "to_row": 201, - "to_column": 17, - "level": 0, - "function_nr": 10 - }, - "to_row": 201, - "to_column": 21 - }, - "right": { - "kind": "text", - "at": 4875, - "from_row": 201, - "from_column": 22, - "value": "$", - "to_row": 201, - "to_column": 25 - }, - "to_row": 201, - "to_column": 28 - }, - "right": { - "kind": "==", - "at": 4893, - "from_row": 201, - "from_column": 40, - "left": { - "kind": "[", - "at": 4884, - "from_row": 201, - "from_column": 31, - "left": { - "kind": "name", - "at": 4882, - "from_row": 201, - "from_column": 29, - "name": "tv", - "to_row": 201, - "to_column": 31, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 4888, - "from_row": 201, - "from_column": 35, - "left": { - "kind": "name", - "at": 4885, - "from_row": 201, - "from_column": 32, - "name": "ti", - "to_row": 201, - "to_column": 34, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 4890, - "from_row": 201, - "from_column": 37, - "value": "1", - "number": 1, - "to_row": 201, - "to_column": 38 - }, - "to_row": 201, - "to_column": 39 - }, - "to_row": 201, - "to_column": 42 - }, - "right": { - "kind": "text", - "at": 4896, - "from_row": 201, - "from_column": 43, - "value": "{", - "to_row": 201, - "to_column": 46 - }, - "to_row": 201, - "to_column": 47 - }, - "to_row": 201, - "to_column": 47 - }, - "then": [{ - "kind": "block", - "at": 4901, - "from_row": 201, - "from_column": 48, - "statements": [{ - "kind": "if", - "at": 4913, - "from_row": 202, - "from_column": 10, - "expression": { - "kind": "||", - "at": 4925, - "from_row": 202, - "from_column": 22, - "left": { - "kind": "==", - "at": 4920, - "from_row": 202, - "from_column": 17, - "left": { - "kind": "name", - "at": 4917, - "from_row": 202, - "from_column": 14, - "name": "ti", - "to_row": 202, - "to_column": 16, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 4923, - "from_row": 202, - "from_column": 20, - "value": "0", - "number": 0, - "to_row": 202, - "to_column": 21 - }, - "to_row": 202, - "to_column": 24 - }, - "right": { - "kind": "!=", - "at": 4939, - "from_row": 202, - "from_column": 36, - "left": { - "kind": "[", - "at": 4930, - "from_row": 202, - "from_column": 27, - "left": { - "kind": "name", - "at": 4928, - "from_row": 202, - "from_column": 25, - "name": "tv", - "to_row": 202, - "to_column": 27, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "-", - "at": 4934, - "from_row": 202, - "from_column": 31, - "left": { - "kind": "name", - "at": 4931, - "from_row": 202, - "from_column": 28, - "name": "ti", - "to_row": 202, - "to_column": 30, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 4936, - "from_row": 202, - "from_column": 33, - "value": "1", - "number": 1, - "to_row": 202, - "to_column": 34 - }, - "to_row": 202, - "to_column": 35 - }, - "to_row": 202, - "to_column": 38 - }, - "right": { - "kind": "text", - "at": 4942, - "from_row": 202, - "from_column": 39, - "value": "\\", - "to_row": 202, - "to_column": 43 - }, - "to_row": 202, - "to_column": 44 - }, - "to_row": 202, - "to_column": 44 - }, - "then": [{ - "kind": "block", - "at": 4948, - "from_row": 202, - "from_column": 45, - "statements": [{ - "kind": "call", - "at": 4962, - "from_row": 203, - "from_column": 12, - "expression": { - "kind": "assign", - "at": 4973, - "from_row": 203, - "from_column": 23, - "left": { - "kind": "name", - "at": 4962, - "from_row": 203, - "from_column": 12, - "name": "has_interp", - "to_row": 203, - "to_column": 22, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "true", - "at": 4975, - "from_row": 203, - "from_column": 25, - "to_row": 203, - "to_column": 29 - }, - "to_row": 204, - "to_column": 17 - }, - "to_row": 204, - "to_column": 17 - }, { - "kind": "break", - "at": 4992, - "from_row": 204, - "from_column": 12, - "to_row": 205, - "to_column": 11 - }], - "to_row": 206, - "to_column": 9 - }], - "list": [], - "to_row": 206, - "to_column": 9 - }], - "to_row": 207, - "to_column": 10 - }], - "list": [], - "to_row": 207, - "to_column": 10 - }, { - "kind": "call", - "at": 5028, - "from_row": 207, - "from_column": 8, - "expression": { - "kind": "assign", - "at": 5031, - "from_row": 207, - "from_column": 11, - "left": { - "kind": "name", - "at": 5028, - "from_row": 207, - "from_column": 8, - "name": "ti", - "to_row": 207, - "to_column": 10, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 5036, - "from_row": 207, - "from_column": 16, - "left": { - "kind": "name", - "at": 5033, - "from_row": 207, - "from_column": 13, - "name": "ti", - "to_row": 207, - "to_column": 15, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 5038, - "from_row": 207, - "from_column": 18, - "value": "1", - "number": 1, - "to_row": 207, - "to_column": 19 - }, - "to_row": 208, - "to_column": 7 - }, - "to_row": 208, - "to_column": 7 - }, - "to_row": 208, - "to_column": 7 - }], - "to_row": 209, - "to_column": 8 - }], - "to_row": 209, - "to_column": 8 - }, { - "kind": "if", - "at": 5054, - "from_row": 209, - "from_column": 6, - "expression": { - "kind": "||", - "at": 5070, - "from_row": 209, - "from_column": 22, - "left": { - "kind": "!", - "at": 5058, - "from_row": 209, - "from_column": 10, - "expression": { - "kind": "name", - "at": 5059, - "from_row": 209, - "from_column": 11, - "name": "has_interp", - "to_row": 209, - "to_column": 21, - "level": 0, - "function_nr": 10 - }, - "to_row": 209, - "to_column": 24 - }, - "right": { - "kind": "==", - "at": 5083, - "from_row": 209, - "from_column": 35, - "left": { - "kind": "name", - "at": 5073, - "from_row": 209, - "from_column": 25, - "name": "tokenizer", - "to_row": 209, - "to_column": 34, - "level": 1, - "function_nr": 40 - }, - "right": { - "kind": "null", - "at": 5086, - "from_row": 209, - "from_column": 38, - "to_row": 209, - "to_column": 42 - }, - "to_row": 209, - "to_column": 43 - }, - "to_row": 209, - "to_column": 43 - }, - "then": [{ - "kind": "block", - "at": 5092, - "from_row": 209, - "from_column": 44, - "statements": [{ - "kind": "call", - "at": 5102, - "from_row": 210, - "from_column": 8, - "expression": { - "kind": "assign", - "at": 5107, - "from_row": 210, - "from_column": 13, - "left": { - "kind": "name", - "at": 5102, - "from_row": 210, - "from_column": 8, - "name": "node", - "to_row": 210, - "to_column": 12, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "(", - "at": 5117, - "from_row": 210, - "from_column": 23, - "expression": { - "kind": "name", - "at": 5109, - "from_row": 210, - "from_column": 15, - "name": "ast_node", - "to_row": 210, - "to_column": 23, - "level": 1, - "function_nr": 40 - }, - "list": [{ - "kind": "text", - "at": 5118, - "from_row": 210, - "from_column": 24, - "value": "text", - "to_row": 210, - "to_column": 30 - }, { - "kind": "name", - "at": 5126, - "from_row": 210, - "from_column": 32, - "name": "start", - "to_row": 210, - "to_column": 37, - "level": 0, - "function_nr": 10 - }], - "to_row": 211, - "to_column": 12 - }, - "to_row": 211, - "to_column": 12 - }, - "to_row": 211, - "to_column": 12 - }, { - "kind": "call", - "at": 5141, - "from_row": 211, - "from_column": 8, - "expression": { - "kind": "assign", - "at": 5152, - "from_row": 211, - "from_column": 19, - "left": { - "kind": ".", - "at": 5145, - "from_row": 211, - "from_column": 12, - "left": { - "kind": "name", - "at": 5141, - "from_row": 211, - "from_column": 8, - "name": "node", - "to_row": 211, - "to_column": 12, - "level": 0, - "function_nr": 10 - }, - "right": "value", - "to_row": 211, - "to_column": 20 - }, - "right": { - "kind": ".", - "at": 5157, - "from_row": 211, - "from_column": 24, - "left": { - "kind": "name", - "at": 5154, - "from_row": 211, - "from_column": 21, - "name": "tok", - "to_row": 211, - "to_column": 24, - "level": 1, - "function_nr": 40 - }, - "right": "value", - "to_row": 212, - "to_column": 15 - }, - "to_row": 212, - "to_column": 15 - }, - "to_row": 212, - "to_column": 15 - }, { - "kind": "call", - "at": 5172, - "from_row": 212, - "from_column": 8, - "expression": { - "kind": "(", - "at": 5179, - "from_row": 212, - "from_column": 15, - "expression": { - "kind": "name", - "at": 5172, - "from_row": 212, - "from_column": 8, - "name": "advance", - "to_row": 212, - "to_column": 15, - "level": 1, - "function_nr": 40 - }, - "list": [], - "to_row": 213, - "to_column": 20 - }, - "to_row": 213, - "to_column": 20 - }, { - "kind": "call", - "at": 5190, - "from_row": 213, - "from_column": 8, - "expression": { - "kind": "(", - "at": 5202, - "from_row": 213, - "from_column": 20, - "expression": { - "kind": "name", - "at": 5190, - "from_row": 213, - "from_column": 8, - "name": "ast_node_end", - "to_row": 213, - "to_column": 20, - "level": 1, - "function_nr": 40 - }, - "list": [{ - "kind": "name", - "at": 5203, - "from_row": 213, - "from_column": 21, - "name": "node", - "to_row": 213, - "to_column": 25, - "level": 0, - "function_nr": 10 - }], - "to_row": 214, - "to_column": 14 - }, - "to_row": 214, - "to_column": 14 - }, { - "kind": "return", - "at": 5217, - "from_row": 214, - "from_column": 8, - "expression": { - "kind": "name", - "at": 5224, - "from_row": 214, - "from_column": 15, - "name": "node", - "to_row": 214, - "to_column": 19, - "level": 0, - "function_nr": 10 - }, - "to_row": 215, - "to_column": 7 - }], - "to_row": 217, - "to_column": 10 - }], - "list": [], - "to_row": 217, - "to_column": 10 - }, { - "kind": "call", - "at": 5288, - "from_row": 217, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 5293, - "from_row": 217, - "from_column": 11, - "left": { - "kind": "name", - "at": 5288, - "from_row": 217, - "from_column": 6, - "name": "node", - "to_row": 217, - "to_column": 10, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "(", - "at": 5303, - "from_row": 217, - "from_column": 21, - "expression": { - "kind": "name", - "at": 5295, - "from_row": 217, - "from_column": 13, - "name": "ast_node", - "to_row": 217, - "to_column": 21, - "level": 1, - "function_nr": 40 - }, - "list": [{ - "kind": "text", - "at": 5304, - "from_row": 217, - "from_column": 22, - "value": "text literal", - "to_row": 217, - "to_column": 36 - }, { - "kind": "name", - "at": 5320, - "from_row": 217, - "from_column": 38, - "name": "start", - "to_row": 217, - "to_column": 43, - "level": 0, - "function_nr": 10 - }], - "to_row": 218, - "to_column": 14 - }, - "to_row": 218, - "to_column": 14 - }, - "to_row": 218, - "to_column": 14 - }, { - "kind": "call", - "at": 5333, - "from_row": 218, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 5342, - "from_row": 218, - "from_column": 15, - "left": { - "kind": "name", - "at": 5333, - "from_row": 218, - "from_column": 6, - "name": "tpl_list", - "to_row": 218, - "to_column": 14, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "array", - "at": 5344, - "from_row": 218, - "from_column": 17, - "list": [], - "to_row": 218, - "to_column": 19 - }, - "to_row": 219, - "to_column": 10 - }, - "to_row": 219, - "to_column": 10 - }, { - "kind": "call", - "at": 5353, - "from_row": 219, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 5363, - "from_row": 219, - "from_column": 16, - "left": { - "kind": ".", - "at": 5357, - "from_row": 219, - "from_column": 10, - "left": { - "kind": "name", - "at": 5353, - "from_row": 219, - "from_column": 6, - "name": "node", - "to_row": 219, - "to_column": 10, - "level": 0, - "function_nr": 10 - }, - "right": "list", - "to_row": 219, - "to_column": 17 - }, - "right": { - "kind": "name", - "at": 5365, - "from_row": 219, - "from_column": 18, - "name": "tpl_list", - "to_row": 219, - "to_column": 26, - "level": 0, - "function_nr": 10 - }, - "to_row": 220, - "to_column": 9 - }, - "to_row": 220, - "to_column": 9 - }, { - "kind": "call", - "at": 5380, - "from_row": 220, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 5384, - "from_row": 220, - "from_column": 10, - "left": { - "kind": "name", - "at": 5380, - "from_row": 220, - "from_column": 6, - "name": "fmt", - "to_row": 220, - "to_column": 9, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5386, - "from_row": 220, - "from_column": 12, - "value": "", - "to_row": 220, - "to_column": 14 - }, - "to_row": 221, - "to_column": 9 - }, - "to_row": 221, - "to_column": 9 - }, { - "kind": "call", - "at": 5395, - "from_row": 221, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 5399, - "from_row": 221, - "from_column": 10, - "left": { - "kind": "name", - "at": 5395, - "from_row": 221, - "from_column": 6, - "name": "idx", - "to_row": 221, - "to_column": 9, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 5401, - "from_row": 221, - "from_column": 12, - "value": "0", - "number": 0, - "to_row": 221, - "to_column": 13 - }, - "to_row": 222, - "to_column": 9 - }, - "to_row": 222, - "to_column": 9 - }, { - "kind": "call", - "at": 5409, - "from_row": 222, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 5413, - "from_row": 222, - "from_column": 10, - "left": { - "kind": "name", - "at": 5409, - "from_row": 222, - "from_column": 6, - "name": "tvi", - "to_row": 222, - "to_column": 9, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 5415, - "from_row": 222, - "from_column": 12, - "value": "0", - "number": 0, - "to_row": 222, - "to_column": 13 - }, - "to_row": 223, - "to_column": 11 - }, - "to_row": 223, - "to_column": 11 - }, { - "kind": "call", - "at": 5423, - "from_row": 223, - "from_column": 6, - "expression": { - "kind": "assign", - "at": 5429, - "from_row": 223, - "from_column": 12, - "left": { - "kind": "name", - "at": 5423, - "from_row": 223, - "from_column": 6, - "name": "tvlen", - "to_row": 223, - "to_column": 11, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "(", - "at": 5437, - "from_row": 223, - "from_column": 20, - "expression": { - "kind": "name", - "at": 5431, - "from_row": 223, - "from_column": 14, - "name": "length", - "to_row": 223, - "to_column": 20, - "level": -1 - }, - "list": [{ - "kind": "name", - "at": 5438, - "from_row": 223, - "from_column": 21, - "name": "tv", - "to_row": 223, - "to_column": 23, - "level": 0, - "function_nr": 10 - }], - "to_row": 224, - "to_column": 11 - }, - "to_row": 224, - "to_column": 11 - }, - "to_row": 224, - "to_column": 11 - }, { - "kind": "while", - "at": 5448, - "from_row": 224, - "from_column": 6, - "expression": { - "kind": "<", - "at": 5459, - "from_row": 224, - "from_column": 17, - "left": { - "kind": "name", - "at": 5455, - "from_row": 224, - "from_column": 13, - "name": "tvi", - "to_row": 224, - "to_column": 16, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 5461, - "from_row": 224, - "from_column": 19, - "name": "tvlen", - "to_row": 224, - "to_column": 24, - "level": 0, - "function_nr": 10 - }, - "to_row": 224, - "to_column": 25 - }, - "statements": [{ - "kind": "block", - "at": 5468, - "from_row": 224, - "from_column": 26, - "statements": [{ - "kind": "if", - "at": 5478, - "from_row": 225, - "from_column": 8, - "expression": { - "kind": "&&", - "at": 5498, - "from_row": 225, - "from_column": 28, - "left": { - "kind": "==", - "at": 5490, - "from_row": 225, - "from_column": 20, - "left": { - "kind": "[", - "at": 5484, - "from_row": 225, - "from_column": 14, - "left": { - "kind": "name", - "at": 5482, - "from_row": 225, - "from_column": 12, - "name": "tv", - "to_row": 225, - "to_column": 14, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 5485, - "from_row": 225, - "from_column": 15, - "name": "tvi", - "to_row": 225, - "to_column": 18, - "level": 0, - "function_nr": 10 - }, - "to_row": 225, - "to_column": 22 - }, - "right": { - "kind": "text", - "at": 5493, - "from_row": 225, - "from_column": 23, - "value": "\\", - "to_row": 225, - "to_column": 27 - }, - "to_row": 225, - "to_column": 30 - }, - "right": { - "kind": "<", - "at": 5509, - "from_row": 225, - "from_column": 39, - "left": { - "kind": "+", - "at": 5505, - "from_row": 225, - "from_column": 35, - "left": { - "kind": "name", - "at": 5501, - "from_row": 225, - "from_column": 31, - "name": "tvi", - "to_row": 225, - "to_column": 34, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 5507, - "from_row": 225, - "from_column": 37, - "value": "1", - "number": 1, - "to_row": 225, - "to_column": 38 - }, - "to_row": 225, - "to_column": 40 - }, - "right": { - "kind": "name", - "at": 5511, - "from_row": 225, - "from_column": 41, - "name": "tvlen", - "to_row": 225, - "to_column": 46, - "level": 0, - "function_nr": 10 - }, - "to_row": 225, - "to_column": 47 - }, - "to_row": 225, - "to_column": 47 - }, - "then": [{ - "kind": "block", - "at": 5518, - "from_row": 225, - "from_column": 48, - "statements": [{ - "kind": "call", - "at": 5530, - "from_row": 226, - "from_column": 10, - "expression": { - "kind": "assign", - "at": 5537, - "from_row": 226, - "from_column": 17, - "left": { - "kind": "name", - "at": 5530, - "from_row": 226, - "from_column": 10, - "name": "esc_ch", - "to_row": 226, - "to_column": 16, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "[", - "at": 5541, - "from_row": 226, - "from_column": 21, - "left": { - "kind": "name", - "at": 5539, - "from_row": 226, - "from_column": 19, - "name": "tv", - "to_row": 226, - "to_column": 21, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 5546, - "from_row": 226, - "from_column": 26, - "left": { - "kind": "name", - "at": 5542, - "from_row": 226, - "from_column": 22, - "name": "tvi", - "to_row": 226, - "to_column": 25, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 5548, - "from_row": 226, - "from_column": 28, - "value": "1", - "number": 1, - "to_row": 226, - "to_column": 29 - }, - "to_row": 226, - "to_column": 30 - }, - "to_row": 227, - "to_column": 12 - }, - "to_row": 227, - "to_column": 12 - }, - "to_row": 227, - "to_column": 12 - }, { - "kind": "if", - "at": 5561, - "from_row": 227, - "from_column": 10, - "expression": { - "kind": "==", - "at": 5572, - "from_row": 227, - "from_column": 21, - "left": { - "kind": "name", - "at": 5565, - "from_row": 227, - "from_column": 14, - "name": "esc_ch", - "to_row": 227, - "to_column": 20, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5575, - "from_row": 227, - "from_column": 24, - "value": "n", - "to_row": 227, - "to_column": 27 - }, - "to_row": 227, - "to_column": 28 - }, - "then": [{ - "kind": "block", - "at": 5580, - "from_row": 227, - "from_column": 29, - "statements": [{ - "kind": "call", - "at": 5582, - "from_row": 227, - "from_column": 31, - "expression": { - "kind": "assign", - "at": 5586, - "from_row": 227, - "from_column": 35, - "left": { - "kind": "name", - "at": 5582, - "from_row": 227, - "from_column": 31, - "name": "fmt", - "to_row": 227, - "to_column": 34, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 5592, - "from_row": 227, - "from_column": 41, - "left": { - "kind": "name", - "at": 5588, - "from_row": 227, - "from_column": 37, - "name": "fmt", - "to_row": 227, - "to_column": 40, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5594, - "from_row": 227, - "from_column": 43, - "value": "\n", - "to_row": 227, - "to_column": 47 - }, - "to_row": 227, - "to_column": 49 - }, - "to_row": 227, - "to_column": 49 - }, - "to_row": 227, - "to_column": 49 - }], - "to_row": 228, - "to_column": 14 - }], - "list": [{ - "kind": "if", - "at": 5616, - "from_row": 228, - "from_column": 15, - "expression": { - "kind": "==", - "at": 5627, - "from_row": 228, - "from_column": 26, - "left": { - "kind": "name", - "at": 5620, - "from_row": 228, - "from_column": 19, - "name": "esc_ch", - "to_row": 228, - "to_column": 25, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5630, - "from_row": 228, - "from_column": 29, - "value": "t", - "to_row": 228, - "to_column": 32 - }, - "to_row": 228, - "to_column": 33 - }, - "then": [{ - "kind": "block", - "at": 5635, - "from_row": 228, - "from_column": 34, - "statements": [{ - "kind": "call", - "at": 5637, - "from_row": 228, - "from_column": 36, - "expression": { - "kind": "assign", - "at": 5641, - "from_row": 228, - "from_column": 40, - "left": { - "kind": "name", - "at": 5637, - "from_row": 228, - "from_column": 36, - "name": "fmt", - "to_row": 228, - "to_column": 39, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 5647, - "from_row": 228, - "from_column": 46, - "left": { - "kind": "name", - "at": 5643, - "from_row": 228, - "from_column": 42, - "name": "fmt", - "to_row": 228, - "to_column": 45, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5649, - "from_row": 228, - "from_column": 48, - "value": "\t", - "to_row": 228, - "to_column": 52 - }, - "to_row": 228, - "to_column": 54 - }, - "to_row": 228, - "to_column": 54 - }, - "to_row": 228, - "to_column": 54 - }], - "to_row": 229, - "to_column": 14 - }], - "list": [{ - "kind": "if", - "at": 5671, - "from_row": 229, - "from_column": 15, - "expression": { - "kind": "==", - "at": 5682, - "from_row": 229, - "from_column": 26, - "left": { - "kind": "name", - "at": 5675, - "from_row": 229, - "from_column": 19, - "name": "esc_ch", - "to_row": 229, - "to_column": 25, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5685, - "from_row": 229, - "from_column": 29, - "value": "r", - "to_row": 229, - "to_column": 32 - }, - "to_row": 229, - "to_column": 33 - }, - "then": [{ - "kind": "block", - "at": 5690, - "from_row": 229, - "from_column": 34, - "statements": [{ - "kind": "call", - "at": 5692, - "from_row": 229, - "from_column": 36, - "expression": { - "kind": "assign", - "at": 5696, - "from_row": 229, - "from_column": 40, - "left": { - "kind": "name", - "at": 5692, - "from_row": 229, - "from_column": 36, - "name": "fmt", - "to_row": 229, - "to_column": 39, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 5702, - "from_row": 229, - "from_column": 46, - "left": { - "kind": "name", - "at": 5698, - "from_row": 229, - "from_column": 42, - "name": "fmt", - "to_row": 229, - "to_column": 45, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5704, - "from_row": 229, - "from_column": 48, - "value": "\r", - "to_row": 229, - "to_column": 52 - }, - "to_row": 229, - "to_column": 54 - }, - "to_row": 229, - "to_column": 54 - }, - "to_row": 229, - "to_column": 54 - }], - "to_row": 230, - "to_column": 14 - }], - "list": [{ - "kind": "if", - "at": 5726, - "from_row": 230, - "from_column": 15, - "expression": { - "kind": "==", - "at": 5737, - "from_row": 230, - "from_column": 26, - "left": { - "kind": "name", - "at": 5730, - "from_row": 230, - "from_column": 19, - "name": "esc_ch", - "to_row": 230, - "to_column": 25, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5740, - "from_row": 230, - "from_column": 29, - "value": "\\", - "to_row": 230, - "to_column": 33 - }, - "to_row": 230, - "to_column": 34 - }, - "then": [{ - "kind": "block", - "at": 5746, - "from_row": 230, - "from_column": 35, - "statements": [{ - "kind": "call", - "at": 5748, - "from_row": 230, - "from_column": 37, - "expression": { - "kind": "assign", - "at": 5752, - "from_row": 230, - "from_column": 41, - "left": { - "kind": "name", - "at": 5748, - "from_row": 230, - "from_column": 37, - "name": "fmt", - "to_row": 230, - "to_column": 40, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 5758, - "from_row": 230, - "from_column": 47, - "left": { - "kind": "name", - "at": 5754, - "from_row": 230, - "from_column": 43, - "name": "fmt", - "to_row": 230, - "to_column": 46, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5760, - "from_row": 230, - "from_column": 49, - "value": "\\", - "to_row": 230, - "to_column": 53 - }, - "to_row": 230, - "to_column": 55 - }, - "to_row": 230, - "to_column": 55 - }, - "to_row": 230, - "to_column": 55 - }], - "to_row": 231, - "to_column": 14 - }], - "list": [{ - "kind": "if", - "at": 5782, - "from_row": 231, - "from_column": 15, - "expression": { - "kind": "==", - "at": 5793, - "from_row": 231, - "from_column": 26, - "left": { - "kind": "name", - "at": 5786, - "from_row": 231, - "from_column": 19, - "name": "esc_ch", - "to_row": 231, - "to_column": 25, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5796, - "from_row": 231, - "from_column": 29, - "value": "`", - "to_row": 231, - "to_column": 32 - }, - "to_row": 231, - "to_column": 33 - }, - "then": [{ - "kind": "block", - "at": 5801, - "from_row": 231, - "from_column": 34, - "statements": [{ - "kind": "call", - "at": 5803, - "from_row": 231, - "from_column": 36, - "expression": { - "kind": "assign", - "at": 5807, - "from_row": 231, - "from_column": 40, - "left": { - "kind": "name", - "at": 5803, - "from_row": 231, - "from_column": 36, - "name": "fmt", - "to_row": 231, - "to_column": 39, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 5813, - "from_row": 231, - "from_column": 46, - "left": { - "kind": "name", - "at": 5809, - "from_row": 231, - "from_column": 42, - "name": "fmt", - "to_row": 231, - "to_column": 45, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5815, - "from_row": 231, - "from_column": 48, - "value": "`", - "to_row": 231, - "to_column": 51 - }, - "to_row": 231, - "to_column": 53 - }, - "to_row": 231, - "to_column": 53 - }, - "to_row": 231, - "to_column": 53 - }], - "to_row": 232, - "to_column": 14 - }], - "list": [{ - "kind": "if", - "at": 5836, - "from_row": 232, - "from_column": 15, - "expression": { - "kind": "==", - "at": 5847, - "from_row": 232, - "from_column": 26, - "left": { - "kind": "name", - "at": 5840, - "from_row": 232, - "from_column": 19, - "name": "esc_ch", - "to_row": 232, - "to_column": 25, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5850, - "from_row": 232, - "from_column": 29, - "value": "$", - "to_row": 232, - "to_column": 32 - }, - "to_row": 232, - "to_column": 33 - }, - "then": [{ - "kind": "block", - "at": 5855, - "from_row": 232, - "from_column": 34, - "statements": [{ - "kind": "call", - "at": 5857, - "from_row": 232, - "from_column": 36, - "expression": { - "kind": "assign", - "at": 5861, - "from_row": 232, - "from_column": 40, - "left": { - "kind": "name", - "at": 5857, - "from_row": 232, - "from_column": 36, - "name": "fmt", - "to_row": 232, - "to_column": 39, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 5867, - "from_row": 232, - "from_column": 46, - "left": { - "kind": "name", - "at": 5863, - "from_row": 232, - "from_column": 42, - "name": "fmt", - "to_row": 232, - "to_column": 45, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5869, - "from_row": 232, - "from_column": 48, - "value": "$", - "to_row": 232, - "to_column": 51 - }, - "to_row": 232, - "to_column": 53 - }, - "to_row": 232, - "to_column": 53 - }, - "to_row": 232, - "to_column": 53 - }], - "to_row": 233, - "to_column": 14 - }], - "list": [{ - "kind": "if", - "at": 5890, - "from_row": 233, - "from_column": 15, - "expression": { - "kind": "==", - "at": 5901, - "from_row": 233, - "from_column": 26, - "left": { - "kind": "name", - "at": 5894, - "from_row": 233, - "from_column": 19, - "name": "esc_ch", - "to_row": 233, - "to_column": 25, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 5904, - "from_row": 233, - "from_column": 29, - "value": "0", - "to_row": 233, - "to_column": 32 - }, - "to_row": 233, - "to_column": 33 - }, - "then": [{ - "kind": "block", - "at": 5909, - "from_row": 233, - "from_column": 34, - "statements": [{ - "kind": "call", - "at": 5911, - "from_row": 233, - "from_column": 36, - "expression": { - "kind": "assign", - "at": 5915, - "from_row": 233, - "from_column": 40, - "left": { - "kind": "name", - "at": 5911, - "from_row": 233, - "from_column": 36, - "name": "fmt", - "to_row": 233, - "to_column": 39, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 5921, - "from_row": 233, - "from_column": 46, - "left": { - "kind": "name", - "at": 5917, - "from_row": 233, - "from_column": 42, - "name": "fmt", - "to_row": 233, - "to_column": 45, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "(", - "at": 5932, - "from_row": 233, - "from_column": 57, - "expression": { - "kind": "name", - "at": 5923, - "from_row": 233, - "from_column": 48, - "name": "character", - "to_row": 233, - "to_column": 57, - "level": -1 - }, - "list": [{ - "kind": "number", - "at": 5933, - "from_row": 233, - "from_column": 58, - "value": "0", - "number": 0, - "to_row": 233, - "to_column": 59 - }], - "to_row": 233, - "to_column": 62 - }, - "to_row": 233, - "to_column": 62 - }, - "to_row": 233, - "to_column": 62 - }, - "to_row": 233, - "to_column": 62 - }], - "to_row": 234, - "to_column": 14 - }], - "list": [], - "else": [{ - "kind": "block", - "at": 5953, - "from_row": 234, - "from_column": 15, - "statements": [{ - "kind": "call", - "at": 5955, - "from_row": 234, - "from_column": 17, - "expression": { - "kind": "assign", - "at": 5959, - "from_row": 234, - "from_column": 21, - "left": { - "kind": "name", - "at": 5955, - "from_row": 234, - "from_column": 17, - "name": "fmt", - "to_row": 234, - "to_column": 20, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 5965, - "from_row": 234, - "from_column": 27, - "left": { - "kind": "name", - "at": 5961, - "from_row": 234, - "from_column": 23, - "name": "fmt", - "to_row": 234, - "to_column": 26, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 5967, - "from_row": 234, - "from_column": 29, - "name": "esc_ch", - "to_row": 234, - "to_column": 35, - "level": 0, - "function_nr": 10 - }, - "to_row": 234, - "to_column": 37 - }, - "to_row": 234, - "to_column": 37 - }, - "to_row": 234, - "to_column": 37 - }], - "to_row": 235, - "to_column": 13 - }], - "to_row": 235, - "to_column": 13 - }], - "to_row": 235, - "to_column": 13 - }], - "to_row": 235, - "to_column": 13 - }], - "to_row": 235, - "to_column": 13 - }], - "to_row": 235, - "to_column": 13 - }], - "to_row": 235, - "to_column": 13 - }], - "to_row": 235, - "to_column": 13 - }, { - "kind": "call", - "at": 5986, - "from_row": 235, - "from_column": 10, - "expression": { - "kind": "assign", - "at": 5990, - "from_row": 235, - "from_column": 14, - "left": { - "kind": "name", - "at": 5986, - "from_row": 235, - "from_column": 10, - "name": "tvi", - "to_row": 235, - "to_column": 13, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 5996, - "from_row": 235, - "from_column": 20, - "left": { - "kind": "name", - "at": 5992, - "from_row": 235, - "from_column": 16, - "name": "tvi", - "to_row": 235, - "to_column": 19, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 5998, - "from_row": 235, - "from_column": 22, - "value": "2", - "number": 2, - "to_row": 235, - "to_column": 23 - }, - "to_row": 236, - "to_column": 9 - }, - "to_row": 236, - "to_column": 9 - }, - "to_row": 236, - "to_column": 9 - }], - "to_row": 236, - "to_column": 14 - }], - "list": [{ - "kind": "if", - "at": 6015, - "from_row": 236, - "from_column": 15, - "expression": { - "kind": "&&", - "at": 6053, - "from_row": 236, - "from_column": 53, - "left": { - "kind": "&&", - "at": 6034, - "from_row": 236, - "from_column": 34, - "left": { - "kind": "==", - "at": 6027, - "from_row": 236, - "from_column": 27, - "left": { - "kind": "[", - "at": 6021, - "from_row": 236, - "from_column": 21, - "left": { - "kind": "name", - "at": 6019, - "from_row": 236, - "from_column": 19, - "name": "tv", - "to_row": 236, - "to_column": 21, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6022, - "from_row": 236, - "from_column": 22, - "name": "tvi", - "to_row": 236, - "to_column": 25, - "level": 0, - "function_nr": 10 - }, - "to_row": 236, - "to_column": 29 - }, - "right": { - "kind": "text", - "at": 6030, - "from_row": 236, - "from_column": 30, - "value": "$", - "to_row": 236, - "to_column": 33 - }, - "to_row": 236, - "to_column": 36 - }, - "right": { - "kind": "<", - "at": 6045, - "from_row": 236, - "from_column": 45, - "left": { - "kind": "+", - "at": 6041, - "from_row": 236, - "from_column": 41, - "left": { - "kind": "name", - "at": 6037, - "from_row": 236, - "from_column": 37, - "name": "tvi", - "to_row": 236, - "to_column": 40, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6043, - "from_row": 236, - "from_column": 43, - "value": "1", - "number": 1, - "to_row": 236, - "to_column": 44 - }, - "to_row": 236, - "to_column": 46 - }, - "right": { - "kind": "name", - "at": 6047, - "from_row": 236, - "from_column": 47, - "name": "tvlen", - "to_row": 236, - "to_column": 52, - "level": 0, - "function_nr": 10 - }, - "to_row": 236, - "to_column": 55 - }, - "to_row": 236, - "to_column": 55 - }, - "right": { - "kind": "==", - "at": 6068, - "from_row": 236, - "from_column": 68, - "left": { - "kind": "[", - "at": 6058, - "from_row": 236, - "from_column": 58, - "left": { - "kind": "name", - "at": 6056, - "from_row": 236, - "from_column": 56, - "name": "tv", - "to_row": 236, - "to_column": 58, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6063, - "from_row": 236, - "from_column": 63, - "left": { - "kind": "name", - "at": 6059, - "from_row": 236, - "from_column": 59, - "name": "tvi", - "to_row": 236, - "to_column": 62, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6065, - "from_row": 236, - "from_column": 65, - "value": "1", - "number": 1, - "to_row": 236, - "to_column": 66 - }, - "to_row": 236, - "to_column": 67 - }, - "to_row": 236, - "to_column": 70 - }, - "right": { - "kind": "text", - "at": 6071, - "from_row": 236, - "from_column": 71, - "value": "{", - "to_row": 236, - "to_column": 74 - }, - "to_row": 236, - "to_column": 75 - }, - "to_row": 236, - "to_column": 75 - }, - "then": [{ - "kind": "block", - "at": 6076, - "from_row": 236, - "from_column": 76, - "statements": [{ - "kind": "call", - "at": 6088, - "from_row": 237, - "from_column": 10, - "expression": { - "kind": "assign", - "at": 6092, - "from_row": 237, - "from_column": 14, - "left": { - "kind": "name", - "at": 6088, - "from_row": 237, - "from_column": 10, - "name": "tvi", - "to_row": 237, - "to_column": 13, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6098, - "from_row": 237, - "from_column": 20, - "left": { - "kind": "name", - "at": 6094, - "from_row": 237, - "from_column": 16, - "name": "tvi", - "to_row": 237, - "to_column": 19, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6100, - "from_row": 237, - "from_column": 22, - "value": "2", - "number": 2, - "to_row": 237, - "to_column": 23 - }, - "to_row": 238, - "to_column": 15 - }, - "to_row": 238, - "to_column": 15 - }, - "to_row": 238, - "to_column": 15 - }, { - "kind": "call", - "at": 6112, - "from_row": 238, - "from_column": 10, - "expression": { - "kind": "assign", - "at": 6118, - "from_row": 238, - "from_column": 16, - "left": { - "kind": "name", - "at": 6112, - "from_row": 238, - "from_column": 10, - "name": "depth", - "to_row": 238, - "to_column": 15, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6120, - "from_row": 238, - "from_column": 18, - "value": "1", - "number": 1, - "to_row": 238, - "to_column": 19 - }, - "to_row": 239, - "to_column": 18 - }, - "to_row": 239, - "to_column": 18 - }, { - "kind": "call", - "at": 6132, - "from_row": 239, - "from_column": 10, - "expression": { - "kind": "assign", - "at": 6141, - "from_row": 239, - "from_column": 19, - "left": { - "kind": "name", - "at": 6132, - "from_row": 239, - "from_column": 10, - "name": "expr_str", - "to_row": 239, - "to_column": 18, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 6143, - "from_row": 239, - "from_column": 21, - "value": "", - "to_row": 239, - "to_column": 23 - }, - "to_row": 240, - "to_column": 15 - }, - "to_row": 240, - "to_column": 15 - }, { - "kind": "while", - "at": 6156, - "from_row": 240, - "from_column": 10, - "expression": { - "kind": "&&", - "at": 6175, - "from_row": 240, - "from_column": 29, - "left": { - "kind": "<", - "at": 6167, - "from_row": 240, - "from_column": 21, - "left": { - "kind": "name", - "at": 6163, - "from_row": 240, - "from_column": 17, - "name": "tvi", - "to_row": 240, - "to_column": 20, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6169, - "from_row": 240, - "from_column": 23, - "name": "tvlen", - "to_row": 240, - "to_column": 28, - "level": 0, - "function_nr": 10 - }, - "to_row": 240, - "to_column": 31 - }, - "right": { - "kind": ">", - "at": 6184, - "from_row": 240, - "from_column": 38, - "left": { - "kind": "name", - "at": 6178, - "from_row": 240, - "from_column": 32, - "name": "depth", - "to_row": 240, - "to_column": 37, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6186, - "from_row": 240, - "from_column": 40, - "value": "0", - "number": 0, - "to_row": 240, - "to_column": 41 - }, - "to_row": 240, - "to_column": 42 - }, - "to_row": 240, - "to_column": 42 - }, - "statements": [{ - "kind": "block", - "at": 6189, - "from_row": 240, - "from_column": 43, - "statements": [{ - "kind": "call", - "at": 6203, - "from_row": 241, - "from_column": 12, - "expression": { - "kind": "assign", - "at": 6206, - "from_row": 241, - "from_column": 15, - "left": { - "kind": "name", - "at": 6203, - "from_row": 241, - "from_column": 12, - "name": "tc", - "to_row": 241, - "to_column": 14, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "[", - "at": 6210, - "from_row": 241, - "from_column": 19, - "left": { - "kind": "name", - "at": 6208, - "from_row": 241, - "from_column": 17, - "name": "tv", - "to_row": 241, - "to_column": 19, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6211, - "from_row": 241, - "from_column": 20, - "name": "tvi", - "to_row": 241, - "to_column": 23, - "level": 0, - "function_nr": 10 - }, - "to_row": 242, - "to_column": 14 - }, - "to_row": 242, - "to_column": 14 - }, - "to_row": 242, - "to_column": 14 - }, { - "kind": "if", - "at": 6228, - "from_row": 242, - "from_column": 12, - "expression": { - "kind": "==", - "at": 6235, - "from_row": 242, - "from_column": 19, - "left": { - "kind": "name", - "at": 6232, - "from_row": 242, - "from_column": 16, - "name": "tc", - "to_row": 242, - "to_column": 18, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 6238, - "from_row": 242, - "from_column": 22, - "value": "{", - "to_row": 242, - "to_column": 25 - }, - "to_row": 242, - "to_column": 26 - }, - "then": [{ - "kind": "block", - "at": 6243, - "from_row": 242, - "from_column": 27, - "statements": [{ - "kind": "call", - "at": 6245, - "from_row": 242, - "from_column": 29, - "expression": { - "kind": "assign", - "at": 6251, - "from_row": 242, - "from_column": 35, - "left": { - "kind": "name", - "at": 6245, - "from_row": 242, - "from_column": 29, - "name": "depth", - "to_row": 242, - "to_column": 34, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6259, - "from_row": 242, - "from_column": 43, - "left": { - "kind": "name", - "at": 6253, - "from_row": 242, - "from_column": 37, - "name": "depth", - "to_row": 242, - "to_column": 42, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6261, - "from_row": 242, - "from_column": 45, - "value": "1", - "number": 1, - "to_row": 242, - "to_column": 46 - }, - "to_row": 242, - "to_column": 47 - }, - "to_row": 242, - "to_column": 47 - }, - "to_row": 242, - "to_column": 47 - }, { - "kind": "call", - "at": 6264, - "from_row": 242, - "from_column": 48, - "expression": { - "kind": "assign", - "at": 6273, - "from_row": 242, - "from_column": 57, - "left": { - "kind": "name", - "at": 6264, - "from_row": 242, - "from_column": 48, - "name": "expr_str", - "to_row": 242, - "to_column": 56, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6284, - "from_row": 242, - "from_column": 68, - "left": { - "kind": "name", - "at": 6275, - "from_row": 242, - "from_column": 59, - "name": "expr_str", - "to_row": 242, - "to_column": 67, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6286, - "from_row": 242, - "from_column": 70, - "name": "tc", - "to_row": 242, - "to_column": 72, - "level": 0, - "function_nr": 10 - }, - "to_row": 242, - "to_column": 73 - }, - "to_row": 242, - "to_column": 73 - }, - "to_row": 242, - "to_column": 73 - }, { - "kind": "call", - "at": 6290, - "from_row": 242, - "from_column": 74, - "expression": { - "kind": "assign", - "at": 6294, - "from_row": 242, - "from_column": 78, - "left": { - "kind": "name", - "at": 6290, - "from_row": 242, - "from_column": 74, - "name": "tvi", - "to_row": 242, - "to_column": 77, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6300, - "from_row": 242, - "from_column": 84, - "left": { - "kind": "name", - "at": 6296, - "from_row": 242, - "from_column": 80, - "name": "tvi", - "to_row": 242, - "to_column": 83, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6302, - "from_row": 242, - "from_column": 86, - "value": "1", - "number": 1, - "to_row": 242, - "to_column": 87 - }, - "to_row": 242, - "to_column": 89 - }, - "to_row": 242, - "to_column": 89 - }, - "to_row": 242, - "to_column": 89 - }], - "to_row": 243, - "to_column": 16 - }], - "list": [{ - "kind": "if", - "at": 6323, - "from_row": 243, - "from_column": 17, - "expression": { - "kind": "==", - "at": 6330, - "from_row": 243, - "from_column": 24, - "left": { - "kind": "name", - "at": 6327, - "from_row": 243, - "from_column": 21, - "name": "tc", - "to_row": 243, - "to_column": 23, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 6333, - "from_row": 243, - "from_column": 27, - "value": "}", - "to_row": 243, - "to_column": 30 - }, - "to_row": 243, - "to_column": 31 - }, - "then": [{ - "kind": "block", - "at": 6338, - "from_row": 243, - "from_column": 32, - "statements": [{ - "kind": "call", - "at": 6354, - "from_row": 244, - "from_column": 14, - "expression": { - "kind": "assign", - "at": 6360, - "from_row": 244, - "from_column": 20, - "left": { - "kind": "name", - "at": 6354, - "from_row": 244, - "from_column": 14, - "name": "depth", - "to_row": 244, - "to_column": 19, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "-", - "at": 6368, - "from_row": 244, - "from_column": 28, - "left": { - "kind": "name", - "at": 6362, - "from_row": 244, - "from_column": 22, - "name": "depth", - "to_row": 244, - "to_column": 27, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6370, - "from_row": 244, - "from_column": 30, - "value": "1", - "number": 1, - "to_row": 244, - "to_column": 31 - }, - "to_row": 245, - "to_column": 16 - }, - "to_row": 245, - "to_column": 16 - }, - "to_row": 245, - "to_column": 16 - }, { - "kind": "if", - "at": 6386, - "from_row": 245, - "from_column": 14, - "expression": { - "kind": ">", - "at": 6396, - "from_row": 245, - "from_column": 24, - "left": { - "kind": "name", - "at": 6390, - "from_row": 245, - "from_column": 18, - "name": "depth", - "to_row": 245, - "to_column": 23, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6398, - "from_row": 245, - "from_column": 26, - "value": "0", - "number": 0, - "to_row": 245, - "to_column": 27 - }, - "to_row": 245, - "to_column": 28 - }, - "then": [{ - "kind": "block", - "at": 6401, - "from_row": 245, - "from_column": 29, - "statements": [{ - "kind": "call", - "at": 6403, - "from_row": 245, - "from_column": 31, - "expression": { - "kind": "assign", - "at": 6412, - "from_row": 245, - "from_column": 40, - "left": { - "kind": "name", - "at": 6403, - "from_row": 245, - "from_column": 31, - "name": "expr_str", - "to_row": 245, - "to_column": 39, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6423, - "from_row": 245, - "from_column": 51, - "left": { - "kind": "name", - "at": 6414, - "from_row": 245, - "from_column": 42, - "name": "expr_str", - "to_row": 245, - "to_column": 50, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6425, - "from_row": 245, - "from_column": 53, - "name": "tc", - "to_row": 245, - "to_column": 55, - "level": 0, - "function_nr": 10 - }, - "to_row": 245, - "to_column": 57 - }, - "to_row": 245, - "to_column": 57 - }, - "to_row": 245, - "to_column": 57 - }], - "to_row": 246, - "to_column": 17 - }], - "list": [], - "to_row": 246, - "to_column": 17 - }, { - "kind": "call", - "at": 6444, - "from_row": 246, - "from_column": 14, - "expression": { - "kind": "assign", - "at": 6448, - "from_row": 246, - "from_column": 18, - "left": { - "kind": "name", - "at": 6444, - "from_row": 246, - "from_column": 14, - "name": "tvi", - "to_row": 246, - "to_column": 17, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6454, - "from_row": 246, - "from_column": 24, - "left": { - "kind": "name", - "at": 6450, - "from_row": 246, - "from_column": 20, - "name": "tvi", - "to_row": 246, - "to_column": 23, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6456, - "from_row": 246, - "from_column": 26, - "value": "1", - "number": 1, - "to_row": 246, - "to_column": 27 - }, - "to_row": 247, - "to_column": 13 - }, - "to_row": 247, - "to_column": 13 - }, - "to_row": 247, - "to_column": 13 - }], - "to_row": 248, - "to_column": 16 - }], - "list": [{ - "kind": "if", - "at": 6489, - "from_row": 248, - "from_column": 17, - "expression": { - "kind": "||", - "at": 6517, - "from_row": 248, - "from_column": 45, - "left": { - "kind": "||", - "at": 6503, - "from_row": 248, - "from_column": 31, - "left": { - "kind": "==", - "at": 6496, - "from_row": 248, - "from_column": 24, - "left": { - "kind": "name", - "at": 6493, - "from_row": 248, - "from_column": 21, - "name": "tc", - "to_row": 248, - "to_column": 23, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 6499, - "from_row": 248, - "from_column": 27, - "value": "'", - "to_row": 248, - "to_column": 30 - }, - "to_row": 248, - "to_column": 33 - }, - "right": { - "kind": "==", - "at": 6509, - "from_row": 248, - "from_column": 37, - "left": { - "kind": "name", - "at": 6506, - "from_row": 248, - "from_column": 34, - "name": "tc", - "to_row": 248, - "to_column": 36, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 6512, - "from_row": 248, - "from_column": 40, - "value": "\"", - "to_row": 248, - "to_column": 44 - }, - "to_row": 248, - "to_column": 47 - }, - "to_row": 248, - "to_column": 47 - }, - "right": { - "kind": "==", - "at": 6523, - "from_row": 248, - "from_column": 51, - "left": { - "kind": "name", - "at": 6520, - "from_row": 248, - "from_column": 48, - "name": "tc", - "to_row": 248, - "to_column": 50, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "text", - "at": 6526, - "from_row": 248, - "from_column": 54, - "value": "`", - "to_row": 248, - "to_column": 57 - }, - "to_row": 248, - "to_column": 58 - }, - "to_row": 248, - "to_column": 58 - }, - "then": [{ - "kind": "block", - "at": 6531, - "from_row": 248, - "from_column": 59, - "statements": [{ - "kind": "call", - "at": 6547, - "from_row": 249, - "from_column": 14, - "expression": { - "kind": "assign", - "at": 6550, - "from_row": 249, - "from_column": 17, - "left": { - "kind": "name", - "at": 6547, - "from_row": 249, - "from_column": 14, - "name": "tq", - "to_row": 249, - "to_column": 16, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6552, - "from_row": 249, - "from_column": 19, - "name": "tc", - "to_row": 249, - "to_column": 21, - "level": 0, - "function_nr": 10 - }, - "to_row": 250, - "to_column": 22 - }, - "to_row": 250, - "to_column": 22 - }, { - "kind": "call", - "at": 6569, - "from_row": 250, - "from_column": 14, - "expression": { - "kind": "assign", - "at": 6578, - "from_row": 250, - "from_column": 23, - "left": { - "kind": "name", - "at": 6569, - "from_row": 250, - "from_column": 14, - "name": "expr_str", - "to_row": 250, - "to_column": 22, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6589, - "from_row": 250, - "from_column": 34, - "left": { - "kind": "name", - "at": 6580, - "from_row": 250, - "from_column": 25, - "name": "expr_str", - "to_row": 250, - "to_column": 33, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6591, - "from_row": 250, - "from_column": 36, - "name": "tc", - "to_row": 250, - "to_column": 38, - "level": 0, - "function_nr": 10 - }, - "to_row": 251, - "to_column": 17 - }, - "to_row": 251, - "to_column": 17 - }, - "to_row": 251, - "to_column": 17 - }, { - "kind": "call", - "at": 6608, - "from_row": 251, - "from_column": 14, - "expression": { - "kind": "assign", - "at": 6612, - "from_row": 251, - "from_column": 18, - "left": { - "kind": "name", - "at": 6608, - "from_row": 251, - "from_column": 14, - "name": "tvi", - "to_row": 251, - "to_column": 17, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6618, - "from_row": 251, - "from_column": 24, - "left": { - "kind": "name", - "at": 6614, - "from_row": 251, - "from_column": 20, - "name": "tvi", - "to_row": 251, - "to_column": 23, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6620, - "from_row": 251, - "from_column": 26, - "value": "1", - "number": 1, - "to_row": 251, - "to_column": 27 - }, - "to_row": 252, - "to_column": 19 - }, - "to_row": 252, - "to_column": 19 - }, - "to_row": 252, - "to_column": 19 - }, { - "kind": "while", - "at": 6636, - "from_row": 252, - "from_column": 14, - "expression": { - "kind": "&&", - "at": 6655, - "from_row": 252, - "from_column": 33, - "left": { - "kind": "<", - "at": 6647, - "from_row": 252, - "from_column": 25, - "left": { - "kind": "name", - "at": 6643, - "from_row": 252, - "from_column": 21, - "name": "tvi", - "to_row": 252, - "to_column": 24, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6649, - "from_row": 252, - "from_column": 27, - "name": "tvlen", - "to_row": 252, - "to_column": 32, - "level": 0, - "function_nr": 10 - }, - "to_row": 252, - "to_column": 35 - }, - "right": { - "kind": "!=", - "at": 6666, - "from_row": 252, - "from_column": 44, - "left": { - "kind": "[", - "at": 6660, - "from_row": 252, - "from_column": 38, - "left": { - "kind": "name", - "at": 6658, - "from_row": 252, - "from_column": 36, - "name": "tv", - "to_row": 252, - "to_column": 38, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6661, - "from_row": 252, - "from_column": 39, - "name": "tvi", - "to_row": 252, - "to_column": 42, - "level": 0, - "function_nr": 10 - }, - "to_row": 252, - "to_column": 46 - }, - "right": { - "kind": "name", - "at": 6669, - "from_row": 252, - "from_column": 47, - "name": "tq", - "to_row": 252, - "to_column": 49, - "level": 0, - "function_nr": 10 - }, - "to_row": 252, - "to_column": 50 - }, - "to_row": 252, - "to_column": 50 - }, - "statements": [{ - "kind": "block", - "at": 6673, - "from_row": 252, - "from_column": 51, - "statements": [{ - "kind": "if", - "at": 6691, - "from_row": 253, - "from_column": 16, - "expression": { - "kind": "&&", - "at": 6711, - "from_row": 253, - "from_column": 36, - "left": { - "kind": "==", - "at": 6703, - "from_row": 253, - "from_column": 28, - "left": { - "kind": "[", - "at": 6697, - "from_row": 253, - "from_column": 22, - "left": { - "kind": "name", - "at": 6695, - "from_row": 253, - "from_column": 20, - "name": "tv", - "to_row": 253, - "to_column": 22, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6698, - "from_row": 253, - "from_column": 23, - "name": "tvi", - "to_row": 253, - "to_column": 26, - "level": 0, - "function_nr": 10 - }, - "to_row": 253, - "to_column": 30 - }, - "right": { - "kind": "text", - "at": 6706, - "from_row": 253, - "from_column": 31, - "value": "\\", - "to_row": 253, - "to_column": 35 - }, - "to_row": 253, - "to_column": 38 - }, - "right": { - "kind": "<", - "at": 6722, - "from_row": 253, - "from_column": 47, - "left": { - "kind": "+", - "at": 6718, - "from_row": 253, - "from_column": 43, - "left": { - "kind": "name", - "at": 6714, - "from_row": 253, - "from_column": 39, - "name": "tvi", - "to_row": 253, - "to_column": 42, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6720, - "from_row": 253, - "from_column": 45, - "value": "1", - "number": 1, - "to_row": 253, - "to_column": 46 - }, - "to_row": 253, - "to_column": 48 - }, - "right": { - "kind": "name", - "at": 6724, - "from_row": 253, - "from_column": 49, - "name": "tvlen", - "to_row": 253, - "to_column": 54, - "level": 0, - "function_nr": 10 - }, - "to_row": 253, - "to_column": 55 - }, - "to_row": 253, - "to_column": 55 - }, - "then": [{ - "kind": "block", - "at": 6731, - "from_row": 253, - "from_column": 56, - "statements": [{ - "kind": "call", - "at": 6751, - "from_row": 254, - "from_column": 18, - "expression": { - "kind": "assign", - "at": 6760, - "from_row": 254, - "from_column": 27, - "left": { - "kind": "name", - "at": 6751, - "from_row": 254, - "from_column": 18, - "name": "expr_str", - "to_row": 254, - "to_column": 26, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6771, - "from_row": 254, - "from_column": 38, - "left": { - "kind": "name", - "at": 6762, - "from_row": 254, - "from_column": 29, - "name": "expr_str", - "to_row": 254, - "to_column": 37, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "[", - "at": 6775, - "from_row": 254, - "from_column": 42, - "left": { - "kind": "name", - "at": 6773, - "from_row": 254, - "from_column": 40, - "name": "tv", - "to_row": 254, - "to_column": 42, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6776, - "from_row": 254, - "from_column": 43, - "name": "tvi", - "to_row": 254, - "to_column": 46, - "level": 0, - "function_nr": 10 - }, - "to_row": 255, - "to_column": 21 - }, - "to_row": 255, - "to_column": 21 - }, - "to_row": 255, - "to_column": 21 - }, - "to_row": 255, - "to_column": 21 - }, { - "kind": "call", - "at": 6799, - "from_row": 255, - "from_column": 18, - "expression": { - "kind": "assign", - "at": 6803, - "from_row": 255, - "from_column": 22, - "left": { - "kind": "name", - "at": 6799, - "from_row": 255, - "from_column": 18, - "name": "tvi", - "to_row": 255, - "to_column": 21, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6809, - "from_row": 255, - "from_column": 28, - "left": { - "kind": "name", - "at": 6805, - "from_row": 255, - "from_column": 24, - "name": "tvi", - "to_row": 255, - "to_column": 27, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6811, - "from_row": 255, - "from_column": 30, - "value": "1", - "number": 1, - "to_row": 255, - "to_column": 31 - }, - "to_row": 256, - "to_column": 17 - }, - "to_row": 256, - "to_column": 17 - }, - "to_row": 256, - "to_column": 17 - }], - "to_row": 257, - "to_column": 24 - }], - "list": [], - "to_row": 257, - "to_column": 24 - }, { - "kind": "call", - "at": 6847, - "from_row": 257, - "from_column": 16, - "expression": { - "kind": "assign", - "at": 6856, - "from_row": 257, - "from_column": 25, - "left": { - "kind": "name", - "at": 6847, - "from_row": 257, - "from_column": 16, - "name": "expr_str", - "to_row": 257, - "to_column": 24, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6867, - "from_row": 257, - "from_column": 36, - "left": { - "kind": "name", - "at": 6858, - "from_row": 257, - "from_column": 27, - "name": "expr_str", - "to_row": 257, - "to_column": 35, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "[", - "at": 6871, - "from_row": 257, - "from_column": 40, - "left": { - "kind": "name", - "at": 6869, - "from_row": 257, - "from_column": 38, - "name": "tv", - "to_row": 257, - "to_column": 40, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6872, - "from_row": 257, - "from_column": 41, - "name": "tvi", - "to_row": 257, - "to_column": 44, - "level": 0, - "function_nr": 10 - }, - "to_row": 258, - "to_column": 19 - }, - "to_row": 258, - "to_column": 19 - }, - "to_row": 258, - "to_column": 19 - }, - "to_row": 258, - "to_column": 19 - }, { - "kind": "call", - "at": 6893, - "from_row": 258, - "from_column": 16, - "expression": { - "kind": "assign", - "at": 6897, - "from_row": 258, - "from_column": 20, - "left": { - "kind": "name", - "at": 6893, - "from_row": 258, - "from_column": 16, - "name": "tvi", - "to_row": 258, - "to_column": 19, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6903, - "from_row": 258, - "from_column": 26, - "left": { - "kind": "name", - "at": 6899, - "from_row": 258, - "from_column": 22, - "name": "tvi", - "to_row": 258, - "to_column": 25, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6905, - "from_row": 258, - "from_column": 28, - "value": "1", - "number": 1, - "to_row": 258, - "to_column": 29 - }, - "to_row": 259, - "to_column": 15 - }, - "to_row": 259, - "to_column": 15 - }, - "to_row": 259, - "to_column": 15 - }], - "to_row": 260, - "to_column": 16 - }], - "to_row": 260, - "to_column": 16 - }, { - "kind": "if", - "at": 6937, - "from_row": 260, - "from_column": 14, - "expression": { - "kind": "<", - "at": 6945, - "from_row": 260, - "from_column": 22, - "left": { - "kind": "name", - "at": 6941, - "from_row": 260, - "from_column": 18, - "name": "tvi", - "to_row": 260, - "to_column": 21, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6947, - "from_row": 260, - "from_column": 24, - "name": "tvlen", - "to_row": 260, - "to_column": 29, - "level": 0, - "function_nr": 10 - }, - "to_row": 260, - "to_column": 30 - }, - "then": [{ - "kind": "block", - "at": 6954, - "from_row": 260, - "from_column": 31, - "statements": [{ - "kind": "call", - "at": 6956, - "from_row": 260, - "from_column": 33, - "expression": { - "kind": "assign", - "at": 6965, - "from_row": 260, - "from_column": 42, - "left": { - "kind": "name", - "at": 6956, - "from_row": 260, - "from_column": 33, - "name": "expr_str", - "to_row": 260, - "to_column": 41, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6976, - "from_row": 260, - "from_column": 53, - "left": { - "kind": "name", - "at": 6967, - "from_row": 260, - "from_column": 44, - "name": "expr_str", - "to_row": 260, - "to_column": 52, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "[", - "at": 6980, - "from_row": 260, - "from_column": 57, - "left": { - "kind": "name", - "at": 6978, - "from_row": 260, - "from_column": 55, - "name": "tv", - "to_row": 260, - "to_column": 57, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 6981, - "from_row": 260, - "from_column": 58, - "name": "tvi", - "to_row": 260, - "to_column": 61, - "level": 0, - "function_nr": 10 - }, - "to_row": 260, - "to_column": 63 - }, - "to_row": 260, - "to_column": 63 - }, - "to_row": 260, - "to_column": 63 - }, - "to_row": 260, - "to_column": 63 - }, { - "kind": "call", - "at": 6987, - "from_row": 260, - "from_column": 64, - "expression": { - "kind": "assign", - "at": 6991, - "from_row": 260, - "from_column": 68, - "left": { - "kind": "name", - "at": 6987, - "from_row": 260, - "from_column": 64, - "name": "tvi", - "to_row": 260, - "to_column": 67, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 6997, - "from_row": 260, - "from_column": 74, - "left": { - "kind": "name", - "at": 6993, - "from_row": 260, - "from_column": 70, - "name": "tvi", - "to_row": 260, - "to_column": 73, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 6999, - "from_row": 260, - "from_column": 76, - "value": "1", - "number": 1, - "to_row": 260, - "to_column": 77 - }, - "to_row": 260, - "to_column": 79 - }, - "to_row": 260, - "to_column": 79 - }, - "to_row": 260, - "to_column": 79 - }], - "to_row": 261, - "to_column": 13 - }], - "list": [], - "to_row": 261, - "to_column": 13 - }], - "to_row": 261, - "to_column": 18 - }], - "list": [], - "else": [{ - "kind": "block", - "at": 7022, - "from_row": 261, - "from_column": 19, - "statements": [{ - "kind": "call", - "at": 7038, - "from_row": 262, - "from_column": 14, - "expression": { - "kind": "assign", - "at": 7047, - "from_row": 262, - "from_column": 23, - "left": { - "kind": "name", - "at": 7038, - "from_row": 262, - "from_column": 14, - "name": "expr_str", - "to_row": 262, - "to_column": 22, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 7058, - "from_row": 262, - "from_column": 34, - "left": { - "kind": "name", - "at": 7049, - "from_row": 262, - "from_column": 25, - "name": "expr_str", - "to_row": 262, - "to_column": 33, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "name", - "at": 7060, - "from_row": 262, - "from_column": 36, - "name": "tc", - "to_row": 262, - "to_column": 38, - "level": 0, - "function_nr": 10 - }, - "to_row": 263, - "to_column": 17 - }, - "to_row": 263, - "to_column": 17 - }, - "to_row": 263, - "to_column": 17 - }, { - "kind": "call", - "at": 7077, - "from_row": 263, - "from_column": 14, - "expression": { - "kind": "assign", - "at": 7081, - "from_row": 263, - "from_column": 18, - "left": { - "kind": "name", - "at": 7077, - "from_row": 263, - "from_column": 14, - "name": "tvi", - "to_row": 263, - "to_column": 17, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "+", - "at": 7087, - "from_row": 263, - "from_column": 24, - "left": { - "kind": "name", - "at": 7083, - "from_row": 263, - "from_column": 20, - "name": "tvi", - "to_row": 263, - "to_column": 23, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": "number", - "at": 7089, - "from_row": 263, - "from_column": 26, - "value": "1", - "number": 1, - "to_row": 263, - "to_column": 27 - }, - "to_row": 264, - "to_column": 13 - }, - "to_row": 264, - "to_column": 13 - }, - "to_row": 264, - "to_column": 13 - }], - "to_row": 265, - "to_column": 11 - }], - "to_row": 265, - "to_column": 11 - }], - "to_row": 265, - "to_column": 11 - }], - "to_row": 265, - "to_column": 11 - }], - "to_row": 266, - "to_column": 21 - }], - "to_row": 266, - "to_column": 21 - }, { - "kind": "call", - "at": 7127, - "from_row": 266, - "from_column": 10, - "expression": { - "kind": "assign", - "at": 7139, - "from_row": 266, - "from_column": 22, - "left": { - "kind": "name", - "at": 7127, - "from_row": 266, - "from_column": 10, - "name": "expr_tokens", - "to_row": 266, - "to_column": 21, - "level": 0, - "function_nr": 10 - }, - "right": { - "kind": ".", - "at": 7174, - "from_row": 266, - "from_column": 57, - "left": { - "kind": "(", - "at": 7150, - "from_row": 266, - "from_column": 33, - "expression": { - "kind": "name", - "at": 7141, - "from_row": 266, - "from_column": 24, - "name": "tokenizer", - "to_row": 266, - "to_column": 33, - "level": 1, - "function_nr": 40 - }, - "list": [{ - "kind": "name", - "at": 7151, - "from_row": 266, - "from_column": 34, - "name": "expr_str", - "to_row": 266, - "to_column": 42, - "level": 0, - "function_nr": 10 - }, { - "kind": "text", - "at": 7161, - "from_row": 266, - "from_column": 44, - "value": "