statements.length, which counts BLOCK-BODY statements too — see
ExplainStructure.statements. Not the number of top-level statements.
Every statement the analyzer read, in discovery order.
A do={…} body's statements are flattened in after their parent (which is
what RouterOS IL does to them), so a body statement's span is CONTAINED by
its parent's rather than following it, and spans may overlap. A consumer
that wants only the top level filters on containment; one that wants "every
command in this script" — the common case, and the reason to flatten — reads
the list as it stands.
The Q16 tristate.
"unknown"is a real value, not a missing one: a write-shaped command outside the small version-stable write table (/disk format-drive) must never reportfalse.